diff --git a/TTS/.DS_Store b/TTS/.DS_Store deleted file mode 100644 index 90084cf00e0c4db2958f273ac4ad1ba876ef6607..0000000000000000000000000000000000000000 Binary files a/TTS/.DS_Store and /dev/null differ diff --git a/TTS/.cardboardlint.yml b/TTS/.cardboardlint.yml deleted file mode 100644 index 4a115a37cddb065c76afebc905476e650f53d085..0000000000000000000000000000000000000000 --- a/TTS/.cardboardlint.yml +++ /dev/null @@ -1,5 +0,0 @@ -linters: -- pylint: - # pylintrc: pylintrc - filefilter: ['- test_*.py', '+ *.py', '- *.npy'] - # exclude: \ No newline at end of file diff --git a/TTS/.dockerignore b/TTS/.dockerignore deleted file mode 100644 index 8d8ad918c964012d81e3913af1a9ba76afa50140..0000000000000000000000000000000000000000 --- a/TTS/.dockerignore +++ /dev/null @@ -1,9 +0,0 @@ -.git/ -Dockerfile -build/ -dist/ -TTS.egg-info/ -tests/outputs/* -tests/train_outputs/* -__pycache__/ -*.pyc \ No newline at end of file diff --git a/TTS/.github/ISSUE_TEMPLATE/bug_report.yaml b/TTS/.github/ISSUE_TEMPLATE/bug_report.yaml deleted file mode 100644 index 34cde7e8448cf817dc00bdc3a116e64fed079284..0000000000000000000000000000000000000000 --- a/TTS/.github/ISSUE_TEMPLATE/bug_report.yaml +++ /dev/null @@ -1,85 +0,0 @@ -name: "🐛 Bug report" -description: Create a bug report to help 🐸 improve -title: '[Bug] ' -labels: [ "bug" ] -body: - - type: markdown - attributes: - value: | - Welcome to the 🐸TTS! Thanks for taking the time to fill out this bug report! - - - type: textarea - id: bug-description - attributes: - label: Describe the bug - description: A clear and concise description of what the bug is. If you intend to submit a PR for this issue, tell us in the description. Thanks! - placeholder: Bug description - validations: - required: true - - - type: textarea - id: reproduction - attributes: - label: To Reproduce - description: | - Please share your code to reproduce the error. - - Issues are fixed faster if you can provide a working example. - - The best place for sharing code is colab. https://colab.research.google.com/ - So we can directly run your code and reproduce the issue. - - In the worse case, provide steps to reproduce the behavior. - - 1. Run the following command '...' - 2. ... - 3. See error - placeholder: Reproduction - validations: - required: true - - - type: textarea - id: expected-behavior - attributes: - label: Expected behavior - description: "Write down what the expected behaviour" - - - type: textarea - id: logs - attributes: - label: Logs - description: "Please include the relevant logs if you can." - render: shell - - - type: textarea - id: system-info - attributes: - label: Environment - description: | - You can either run `TTS/bin/collect_env_info.py` - - ```bash - wget https://raw.githubusercontent.com/coqui-ai/TTS/main/TTS/bin/collect_env_info.py - python collect_env_info.py - ``` - - or fill in the fields below manually. - render: shell - placeholder: | - - 🐸TTS Version (e.g., 1.3.0): - - PyTorch Version (e.g., 1.8) - - Python version: - - OS (e.g., Linux): - - CUDA/cuDNN version: - - GPU models and configuration: - - How you installed PyTorch (`conda`, `pip`, source): - - Any other relevant information: - validations: - required: true - - type: textarea - id: context - attributes: - label: Additional context - description: Add any other context about the problem here. - validations: - required: false diff --git a/TTS/.github/ISSUE_TEMPLATE/config.yml b/TTS/.github/ISSUE_TEMPLATE/config.yml deleted file mode 100644 index 05ca7db6bd1c24907a0aeeb95d9ecec5271e7351..0000000000000000000000000000000000000000 --- a/TTS/.github/ISSUE_TEMPLATE/config.yml +++ /dev/null @@ -1,8 +0,0 @@ -blank_issues_enabled: false -contact_links: - - name: CoquiTTS GitHub Discussions - url: https://github.com/coqui-ai/TTS/discussions - about: Please ask and answer questions here. - - name: Coqui Security issue disclosure - url: mailto:info@coqui.ai - about: Please report security vulnerabilities here. diff --git a/TTS/.github/ISSUE_TEMPLATE/feature_request.md b/TTS/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index 941ab9b143c748eb1aea6237c09bfc08b675bce8..0000000000000000000000000000000000000000 --- a/TTS/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,25 +0,0 @@ ---- -name: 🚀 Feature request -about: Suggest a feature or an idea for this project -title: '[Feature request] ' -labels: feature request -assignees: '' - ---- - -**🚀 Feature Description** - - - -**Solution** - - - -**Alternative Solutions** - - - -**Additional context** - - diff --git a/TTS/.github/PR_TEMPLATE.md b/TTS/.github/PR_TEMPLATE.md deleted file mode 100644 index 330109c3bc1c99134587537a0e8165ce63ca8103..0000000000000000000000000000000000000000 --- a/TTS/.github/PR_TEMPLATE.md +++ /dev/null @@ -1,15 +0,0 @@ -# Pull request guidelines - -Welcome to the 🐸TTS project! We are excited to see your interest, and appreciate your support! - -This repository is governed by the Contributor Covenant Code of Conduct. For more details, see the [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md) file. - -In order to make a good pull request, please see our [CONTRIBUTING.md](CONTRIBUTING.md) file. - -Before accepting your pull request, you will be asked to sign a [Contributor License Agreement](https://cla-assistant.io/coqui-ai/TTS). - -This [Contributor License Agreement](https://cla-assistant.io/coqui-ai/TTS): - -- Protects you, Coqui, and the users of the code. -- Does not change your rights to use your contributions for any purpose. -- Does not change the license of the 🐸TTS project. It just makes the terms of your contribution clearer and lets us know you are OK to contribute. diff --git a/TTS/.github/stale.yml b/TTS/.github/stale.yml deleted file mode 100644 index e05eaf0b571573cc505ab46eacd5cd87d05b6c60..0000000000000000000000000000000000000000 --- a/TTS/.github/stale.yml +++ /dev/null @@ -1,18 +0,0 @@ -# Number of days of inactivity before an issue becomes stale -daysUntilStale: 30 -# Number of days of inactivity before a stale issue is closed -daysUntilClose: 7 -# Issues with these labels will never be considered stale -exemptLabels: - - pinned - - security -# Label to use when marking an issue as stale -staleLabel: wontfix -# Comment to post when marking an issue as stale. Set to `false` to disable -markComment: > - This issue has been automatically marked as stale because it has not had - recent activity. It will be closed if no further activity occurs. Thank you - for your contributions. You might also look our discussion channels. -# Comment to post when closing a stale issue. Set to `false` to disable -closeComment: false - diff --git a/TTS/.github/workflows/api_tests.yml b/TTS/.github/workflows/api_tests.yml deleted file mode 100644 index 5a3baaad9ee9ebaaa84bf292b8be826063cfed53..0000000000000000000000000000000000000000 --- a/TTS/.github/workflows/api_tests.yml +++ /dev/null @@ -1,53 +0,0 @@ -name: api_tests - -on: - push: - branches: - - main -jobs: - check_skip: - runs-on: ubuntu-latest - if: "! contains(github.event.head_commit.message, '[ci skip]')" - steps: - - run: echo "${{ github.event.head_commit.message }}" - - test: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python-version: [3.9, "3.10", "3.11"] - experimental: [false] - steps: - - uses: actions/checkout@v3 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - architecture: x64 - cache: 'pip' - cache-dependency-path: 'requirements*' - - name: check OS - run: cat /etc/os-release - - name: set ENV - run: | - export TRAINER_TELEMETRY=0 - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y --no-install-recommends git make gcc - sudo apt-get install espeak-ng - make system-deps - - name: Install/upgrade Python setup deps - run: python3 -m pip install --upgrade pip setuptools wheel - - name: Replace scarf urls - run: | - sed -i 's/https:\/\/coqui.gateway.scarf.sh\//https:\/\/github.com\/coqui-ai\/TTS\/releases\/download\//g' TTS/.models.json - - name: Install TTS - run: | - python3 -m pip install .[all] - python3 setup.py egg_info - - name: Unit tests - run: make api_tests - env: - COQUI_STUDIO_TOKEN: ${{ secrets.COQUI_STUDIO_TOKEN }} diff --git a/TTS/.github/workflows/aux_tests.yml b/TTS/.github/workflows/aux_tests.yml deleted file mode 100644 index f4cb3ecfe1ba25ac24ff395f690e334a394d9acc..0000000000000000000000000000000000000000 --- a/TTS/.github/workflows/aux_tests.yml +++ /dev/null @@ -1,51 +0,0 @@ -name: aux-tests - -on: - push: - branches: - - main - pull_request: - types: [opened, synchronize, reopened] -jobs: - check_skip: - runs-on: ubuntu-latest - if: "! contains(github.event.head_commit.message, '[ci skip]')" - steps: - - run: echo "${{ github.event.head_commit.message }}" - - test: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python-version: [3.9, "3.10", "3.11"] - experimental: [false] - steps: - - uses: actions/checkout@v3 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - architecture: x64 - cache: 'pip' - cache-dependency-path: 'requirements*' - - name: check OS - run: cat /etc/os-release - - name: set ENV - run: export TRAINER_TELEMETRY=0 - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y git make gcc - make system-deps - - name: Install/upgrade Python setup deps - run: python3 -m pip install --upgrade pip setuptools wheel - - name: Replace scarf urls - run: | - sed -i 's/https:\/\/coqui.gateway.scarf.sh\//https:\/\/github.com\/coqui-ai\/TTS\/releases\/download\//g' TTS/.models.json - - name: Install TTS - run: | - python3 -m pip install .[all] - python3 setup.py egg_info - - name: Unit tests - run: make test_aux diff --git a/TTS/.github/workflows/data_tests.yml b/TTS/.github/workflows/data_tests.yml deleted file mode 100644 index 3d1e3f8c4d43669afe82810b46cd7b6babe59eef..0000000000000000000000000000000000000000 --- a/TTS/.github/workflows/data_tests.yml +++ /dev/null @@ -1,51 +0,0 @@ -name: data-tests - -on: - push: - branches: - - main - pull_request: - types: [opened, synchronize, reopened] -jobs: - check_skip: - runs-on: ubuntu-latest - if: "! contains(github.event.head_commit.message, '[ci skip]')" - steps: - - run: echo "${{ github.event.head_commit.message }}" - - test: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python-version: [3.9, "3.10", "3.11"] - experimental: [false] - steps: - - uses: actions/checkout@v3 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - architecture: x64 - cache: 'pip' - cache-dependency-path: 'requirements*' - - name: check OS - run: cat /etc/os-release - - name: set ENV - run: export TRAINER_TELEMETRY=0 - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y --no-install-recommends git make gcc - make system-deps - - name: Install/upgrade Python setup deps - run: python3 -m pip install --upgrade pip setuptools wheel - - name: Replace scarf urls - run: | - sed -i 's/https:\/\/coqui.gateway.scarf.sh\//https:\/\/github.com\/coqui-ai\/TTS\/releases\/download\//g' TTS/.models.json - - name: Install TTS - run: | - python3 -m pip install .[all] - python3 setup.py egg_info - - name: Unit tests - run: make data_tests diff --git a/TTS/.github/workflows/docker.yaml b/TTS/.github/workflows/docker.yaml deleted file mode 100644 index 1f15159b42e8bf3d5077b1efbf81518b0dd13688..0000000000000000000000000000000000000000 --- a/TTS/.github/workflows/docker.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: "Docker build and push" -on: - pull_request: - push: - branches: - - main - - dev - tags: - - v* -jobs: - docker-build: - name: "Build and push Docker image" - runs-on: ubuntu-20.04 - strategy: - matrix: - arch: ["amd64"] - base: - - "nvidia/cuda:11.8.0-base-ubuntu22.04" # GPU enabled - - "python:3.10.8-slim" # CPU only - steps: - - uses: actions/checkout@v2 - - name: Log in to the Container registry - uses: docker/login-action@v1 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - name: Compute Docker tags, check VERSION file matches tag - id: compute-tag - run: | - set -ex - base="ghcr.io/coqui-ai/tts" - tags="" # PR build - - if [[ ${{ matrix.base }} = "python:3.10.8-slim" ]]; then - base="ghcr.io/coqui-ai/tts-cpu" - fi - - if [[ "${{ startsWith(github.ref, 'refs/heads/') }}" = "true" ]]; then - # Push to branch - github_ref="${{ github.ref }}" - branch=${github_ref#*refs/heads/} # strip prefix to get branch name - tags="${base}:${branch},${base}:${{ github.sha }}," - elif [[ "${{ startsWith(github.ref, 'refs/tags/') }}" = "true" ]]; then - VERSION="v$(cat TTS/VERSION)" - if [[ "${{ github.ref }}" != "refs/tags/${VERSION}" ]]; then - echo "Pushed tag does not match VERSION file. Aborting push." - exit 1 - fi - tags="${base}:${VERSION},${base}:latest,${base}:${{ github.sha }}" - fi - echo "::set-output name=tags::${tags}" - - name: Set up QEMU - uses: docker/setup-qemu-action@v1 - - name: Set up Docker Buildx - id: buildx - uses: docker/setup-buildx-action@v1 - - name: Build and push - uses: docker/build-push-action@v2 - with: - context: . - platforms: linux/${{ matrix.arch }} - push: ${{ github.event_name == 'push' }} - build-args: "BASE=${{ matrix.base }}" - tags: ${{ steps.compute-tag.outputs.tags }} diff --git a/TTS/.github/workflows/inference_tests.yml b/TTS/.github/workflows/inference_tests.yml deleted file mode 100644 index d2159027b6ce983d0806c02dbc8dbd21cbcdf3d3..0000000000000000000000000000000000000000 --- a/TTS/.github/workflows/inference_tests.yml +++ /dev/null @@ -1,53 +0,0 @@ -name: inference_tests - -on: - push: - branches: - - main - pull_request: - types: [opened, synchronize, reopened] -jobs: - check_skip: - runs-on: ubuntu-latest - if: "! contains(github.event.head_commit.message, '[ci skip]')" - steps: - - run: echo "${{ github.event.head_commit.message }}" - - test: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python-version: [3.9, "3.10", "3.11"] - experimental: [false] - steps: - - uses: actions/checkout@v3 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - architecture: x64 - cache: 'pip' - cache-dependency-path: 'requirements*' - - name: check OS - run: cat /etc/os-release - - name: set ENV - run: | - export TRAINER_TELEMETRY=0 - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y --no-install-recommends git make gcc - sudo apt-get install espeak-ng - make system-deps - - name: Install/upgrade Python setup deps - run: python3 -m pip install --upgrade pip setuptools wheel - - name: Replace scarf urls - run: | - sed -i 's/https:\/\/coqui.gateway.scarf.sh\//https:\/\/github.com\/coqui-ai\/TTS\/releases\/download\//g' TTS/.models.json - - name: Install TTS - run: | - python3 -m pip install .[all] - python3 setup.py egg_info - - name: Unit tests - run: make inference_tests diff --git a/TTS/.github/workflows/pypi-release.yml b/TTS/.github/workflows/pypi-release.yml deleted file mode 100644 index 49a5b3004e7ed657b7edfcf1da27a4beb2285e97..0000000000000000000000000000000000000000 --- a/TTS/.github/workflows/pypi-release.yml +++ /dev/null @@ -1,94 +0,0 @@ -name: Publish Python 🐍 distributions 📦 to PyPI -on: - release: - types: [published] -defaults: - run: - shell: - bash -jobs: - build-sdist: - runs-on: ubuntu-20.04 - steps: - - uses: actions/checkout@v2 - - name: Verify tag matches version - run: | - set -ex - version=$(cat TTS/VERSION) - tag="${GITHUB_REF/refs\/tags\/}" - if [[ "v$version" != "$tag" ]]; then - exit 1 - fi - - uses: actions/setup-python@v2 - with: - python-version: 3.9 - - run: | - python -m pip install -U pip setuptools wheel build - - run: | - python -m build - - run: | - pip install dist/*.tar.gz - - uses: actions/upload-artifact@v2 - with: - name: sdist - path: dist/*.tar.gz - build-wheels: - runs-on: ubuntu-20.04 - strategy: - matrix: - python-version: ["3.9", "3.10", "3.11"] - steps: - - uses: actions/checkout@v2 - - uses: actions/setup-python@v2 - with: - python-version: ${{ matrix.python-version }} - - name: Install pip requirements - run: | - python -m pip install -U pip setuptools wheel build - python -m pip install -r requirements.txt - - name: Setup and install manylinux1_x86_64 wheel - run: | - python setup.py bdist_wheel --plat-name=manylinux1_x86_64 - python -m pip install dist/*-manylinux*.whl - - uses: actions/upload-artifact@v2 - with: - name: wheel-${{ matrix.python-version }} - path: dist/*-manylinux*.whl - publish-artifacts: - runs-on: ubuntu-20.04 - needs: [build-sdist, build-wheels] - steps: - - run: | - mkdir dist - - uses: actions/download-artifact@v2 - with: - name: "sdist" - path: "dist/" - - uses: actions/download-artifact@v2 - with: - name: "wheel-3.9" - path: "dist/" - - uses: actions/download-artifact@v2 - with: - name: "wheel-3.10" - path: "dist/" - - uses: actions/download-artifact@v2 - with: - name: "wheel-3.11" - path: "dist/" - - run: | - ls -lh dist/ - - name: Setup PyPI config - run: | - cat << EOF > ~/.pypirc - [pypi] - username=__token__ - password=${{ secrets.PYPI_TOKEN }} - EOF - - uses: actions/setup-python@v2 - with: - python-version: 3.9 - - run: | - python -m pip install twine - - run: | - twine upload --repository pypi dist/* diff --git a/TTS/.github/workflows/style_check.yml b/TTS/.github/workflows/style_check.yml deleted file mode 100644 index c167f7ca444c7c4376e71d43c16b470138cb7d37..0000000000000000000000000000000000000000 --- a/TTS/.github/workflows/style_check.yml +++ /dev/null @@ -1,47 +0,0 @@ -name: style-check - -on: - push: - branches: - - main - pull_request: - types: [opened, synchronize, reopened] -jobs: - check_skip: - runs-on: ubuntu-latest - if: "! contains(github.event.head_commit.message, '[ci skip]')" - steps: - - run: echo "${{ github.event.head_commit.message }}" - - test: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python-version: [3.9] - experimental: [false] - steps: - - uses: actions/checkout@v3 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - architecture: x64 - cache: 'pip' - cache-dependency-path: 'requirements*' - - name: check OS - run: cat /etc/os-release - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y git make gcc - make system-deps - - name: Install/upgrade Python setup deps - run: python3 -m pip install --upgrade pip setuptools wheel - - name: Install TTS - run: | - python3 -m pip install .[all] - python3 setup.py egg_info - # - name: Lint check - # run: | - # make lint \ No newline at end of file diff --git a/TTS/.github/workflows/text_tests.yml b/TTS/.github/workflows/text_tests.yml deleted file mode 100644 index 78d3026d7f155d905786ae037376e99b21dce153..0000000000000000000000000000000000000000 --- a/TTS/.github/workflows/text_tests.yml +++ /dev/null @@ -1,50 +0,0 @@ -name: text-tests - -on: - push: - branches: - - main - pull_request: - types: [opened, synchronize, reopened] -jobs: - check_skip: - runs-on: ubuntu-latest - if: "! contains(github.event.head_commit.message, '[ci skip]')" - steps: - - run: echo "${{ github.event.head_commit.message }}" - - test: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python-version: [3.9, "3.10", "3.11"] - experimental: [false] - steps: - - uses: actions/checkout@v3 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - architecture: x64 - cache: 'pip' - cache-dependency-path: 'requirements*' - - name: check OS - run: cat /etc/os-release - - name: set ENV - run: export TRAINER_TELEMETRY=0 - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y --no-install-recommends git make gcc - sudo apt-get install espeak - sudo apt-get install espeak-ng - make system-deps - - name: Install/upgrade Python setup deps - run: python3 -m pip install --upgrade pip setuptools wheel - - name: Install TTS - run: | - python3 -m pip install .[all] - python3 setup.py egg_info - - name: Unit tests - run: make test_text diff --git a/TTS/.github/workflows/tts_tests.yml b/TTS/.github/workflows/tts_tests.yml deleted file mode 100644 index 5074cded6d0b7ffab940261cd904b5d2da586480..0000000000000000000000000000000000000000 --- a/TTS/.github/workflows/tts_tests.yml +++ /dev/null @@ -1,53 +0,0 @@ -name: tts-tests - -on: - push: - branches: - - main - pull_request: - types: [opened, synchronize, reopened] -jobs: - check_skip: - runs-on: ubuntu-latest - if: "! contains(github.event.head_commit.message, '[ci skip]')" - steps: - - run: echo "${{ github.event.head_commit.message }}" - - test: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python-version: [3.9, "3.10", "3.11"] - experimental: [false] - steps: - - uses: actions/checkout@v3 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - architecture: x64 - cache: 'pip' - cache-dependency-path: 'requirements*' - - name: check OS - run: cat /etc/os-release - - name: set ENV - run: export TRAINER_TELEMETRY=0 - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y --no-install-recommends git make gcc - sudo apt-get install espeak - sudo apt-get install espeak-ng - make system-deps - - name: Install/upgrade Python setup deps - run: python3 -m pip install --upgrade pip setuptools wheel - - name: Replace scarf urls - run: | - sed -i 's/https:\/\/coqui.gateway.scarf.sh\//https:\/\/github.com\/coqui-ai\/TTS\/releases\/download\//g' TTS/.models.json - - name: Install TTS - run: | - python3 -m pip install .[all] - python3 setup.py egg_info - - name: Unit tests - run: make test_tts diff --git a/TTS/.github/workflows/tts_tests2.yml b/TTS/.github/workflows/tts_tests2.yml deleted file mode 100644 index f64433f8df6197dae1573e371f9c6e823990e312..0000000000000000000000000000000000000000 --- a/TTS/.github/workflows/tts_tests2.yml +++ /dev/null @@ -1,53 +0,0 @@ -name: tts-tests2 - -on: - push: - branches: - - main - pull_request: - types: [opened, synchronize, reopened] -jobs: - check_skip: - runs-on: ubuntu-latest - if: "! contains(github.event.head_commit.message, '[ci skip]')" - steps: - - run: echo "${{ github.event.head_commit.message }}" - - test: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python-version: [3.9, "3.10", "3.11"] - experimental: [false] - steps: - - uses: actions/checkout@v3 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - architecture: x64 - cache: 'pip' - cache-dependency-path: 'requirements*' - - name: check OS - run: cat /etc/os-release - - name: set ENV - run: export TRAINER_TELEMETRY=0 - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y --no-install-recommends git make gcc - sudo apt-get install espeak - sudo apt-get install espeak-ng - make system-deps - - name: Install/upgrade Python setup deps - run: python3 -m pip install --upgrade pip setuptools wheel - - name: Replace scarf urls - run: | - sed -i 's/https:\/\/coqui.gateway.scarf.sh\//https:\/\/github.com\/coqui-ai\/TTS\/releases\/download\//g' TTS/.models.json - - name: Install TTS - run: | - python3 -m pip install .[all] - python3 setup.py egg_info - - name: Unit tests - run: make test_tts2 diff --git a/TTS/.github/workflows/vocoder_tests.yml b/TTS/.github/workflows/vocoder_tests.yml deleted file mode 100644 index 6519ee3fefea171c22dc4eb7da58e0322afda1ed..0000000000000000000000000000000000000000 --- a/TTS/.github/workflows/vocoder_tests.yml +++ /dev/null @@ -1,48 +0,0 @@ -name: vocoder-tests - -on: - push: - branches: - - main - pull_request: - types: [opened, synchronize, reopened] -jobs: - check_skip: - runs-on: ubuntu-latest - if: "! contains(github.event.head_commit.message, '[ci skip]')" - steps: - - run: echo "${{ github.event.head_commit.message }}" - - test: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python-version: [3.9, "3.10", "3.11"] - experimental: [false] - steps: - - uses: actions/checkout@v3 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - architecture: x64 - cache: 'pip' - cache-dependency-path: 'requirements*' - - name: check OS - run: cat /etc/os-release - - name: set ENV - run: export TRAINER_TELEMETRY=0 - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y git make gcc - make system-deps - - name: Install/upgrade Python setup deps - run: python3 -m pip install --upgrade pip setuptools wheel - - name: Install TTS - run: | - python3 -m pip install .[all] - python3 setup.py egg_info - - name: Unit tests - run: make test_vocoder diff --git a/TTS/.github/workflows/zoo_tests0.yml b/TTS/.github/workflows/zoo_tests0.yml deleted file mode 100644 index 13f47a938baff80f290af65fff78a4d792f7c3a8..0000000000000000000000000000000000000000 --- a/TTS/.github/workflows/zoo_tests0.yml +++ /dev/null @@ -1,54 +0,0 @@ -name: zoo-tests-0 - -on: - push: - branches: - - main - pull_request: - types: [opened, synchronize, reopened] -jobs: - check_skip: - runs-on: ubuntu-latest - if: "! contains(github.event.head_commit.message, '[ci skip]')" - steps: - - run: echo "${{ github.event.head_commit.message }}" - - test: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python-version: [3.9, "3.10", "3.11"] - experimental: [false] - steps: - - uses: actions/checkout@v3 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - architecture: x64 - cache: 'pip' - cache-dependency-path: 'requirements*' - - name: check OS - run: cat /etc/os-release - - name: set ENV - run: export TRAINER_TELEMETRY=0 - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y git make gcc - sudo apt-get install espeak espeak-ng - make system-deps - - name: Install/upgrade Python setup deps - run: python3 -m pip install --upgrade pip setuptools wheel - - name: Replace scarf urls - run: | - sed -i 's/https:\/\/coqui.gateway.scarf.sh\//https:\/\/github.com\/coqui-ai\/TTS\/releases\/download\//g' TTS/.models.json - - name: Install TTS - run: | - python3 -m pip install .[all] - python3 setup.py egg_info - - name: Unit tests - run: | - nose2 -F -v -B TTS tests.zoo_tests.test_models.test_models_offset_0_step_3 - nose2 -F -v -B TTS tests.zoo_tests.test_models.test_voice_conversion diff --git a/TTS/.github/workflows/zoo_tests1.yml b/TTS/.github/workflows/zoo_tests1.yml deleted file mode 100644 index 00f13397fa2509e2cbe57c2365462606bc6aad0f..0000000000000000000000000000000000000000 --- a/TTS/.github/workflows/zoo_tests1.yml +++ /dev/null @@ -1,53 +0,0 @@ -name: zoo-tests-1 - -on: - push: - branches: - - main - pull_request: - types: [opened, synchronize, reopened] -jobs: - check_skip: - runs-on: ubuntu-latest - if: "! contains(github.event.head_commit.message, '[ci skip]')" - steps: - - run: echo "${{ github.event.head_commit.message }}" - - test: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python-version: [3.9, "3.10", "3.11"] - experimental: [false] - steps: - - uses: actions/checkout@v3 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - architecture: x64 - cache: 'pip' - cache-dependency-path: 'requirements*' - - name: check OS - run: cat /etc/os-release - - name: set ENV - run: export TRAINER_TELEMETRY=0 - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y git make gcc - sudo apt-get install espeak espeak-ng - make system-deps - - name: Install/upgrade Python setup deps - run: python3 -m pip install --upgrade pip setuptools wheel - - name: Replace scarf urls - run: | - sed -i 's/https:\/\/coqui.gateway.scarf.sh\/hf\/bark\//https:\/\/huggingface.co\/erogol\/bark\/resolve\/main\//g' TTS/.models.json - sed -i 's/https:\/\/coqui.gateway.scarf.sh\//https:\/\/github.com\/coqui-ai\/TTS\/releases\/download\//g' TTS/.models.json - - name: Install TTS - run: | - python3 -m pip install .[all] - python3 setup.py egg_info - - name: Unit tests - run: nose2 -F -v -B --with-coverage --coverage TTS tests.zoo_tests.test_models.test_models_offset_1_step_3 diff --git a/TTS/.github/workflows/zoo_tests2.yml b/TTS/.github/workflows/zoo_tests2.yml deleted file mode 100644 index 310a831a8b1a6c17c55524a84ffd7425d75ea2e7..0000000000000000000000000000000000000000 --- a/TTS/.github/workflows/zoo_tests2.yml +++ /dev/null @@ -1,52 +0,0 @@ -name: zoo-tests-2 - -on: - push: - branches: - - main - pull_request: - types: [opened, synchronize, reopened] -jobs: - check_skip: - runs-on: ubuntu-latest - if: "! contains(github.event.head_commit.message, '[ci skip]')" - steps: - - run: echo "${{ github.event.head_commit.message }}" - - test: - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python-version: [3.9, "3.10", "3.11"] - experimental: [false] - steps: - - uses: actions/checkout@v3 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - architecture: x64 - cache: 'pip' - cache-dependency-path: 'requirements*' - - name: check OS - run: cat /etc/os-release - - name: set ENV - run: export TRAINER_TELEMETRY=0 - - name: Install dependencies - run: | - sudo apt-get update - sudo apt-get install -y git make gcc - sudo apt-get install espeak espeak-ng - make system-deps - - name: Install/upgrade Python setup deps - run: python3 -m pip install --upgrade pip setuptools wheel - - name: Replace scarf urls - run: | - sed -i 's/https:\/\/coqui.gateway.scarf.sh\//https:\/\/github.com\/coqui-ai\/TTS\/releases\/download\//g' TTS/.models.json - - name: Install TTS - run: | - python3 -m pip install .[all] - python3 setup.py egg_info - - name: Unit tests - run: nose2 -F -v -B --with-coverage --coverage TTS tests.zoo_tests.test_models.test_models_offset_2_step_3 diff --git a/TTS/.gitignore b/TTS/.gitignore deleted file mode 100644 index 563040e8dac9d86ecde0ccfc43691ccff420e87d..0000000000000000000000000000000000000000 --- a/TTS/.gitignore +++ /dev/null @@ -1,171 +0,0 @@ -WadaSNR/ -.idea/ -*.pyc -.DS_Store -./__init__.py -# Byte-compiled / optimized / DLL files -__pycache__/ -*.py[cod] -*$py.class - -# C extensions -*.so - -# Distribution / packaging -.Python -build/ -develop-eggs/ -dist/ -downloads/ -eggs/ -.eggs/ -lib/ -lib64/ -parts/ -sdist/ -var/ -wheels/ -*.egg-info/ -.installed.cfg -*.egg -MANIFEST - -# PyInstaller -# Usually these files are written by a python script from a template -# before PyInstaller builds the exe, so as to inject date/other infos into it. -*.manifest -*.spec - -# Installer logs -pip-log.txt -pip-delete-this-directory.txt - -# Unit test / coverage reports -htmlcov/ -.tox/ -.coverage -.coverage.* -.cache -nosetests.xml -coverage.xml -*.cover -.hypothesis/ - -# Translations -*.mo -*.pot - -# Django stuff: -*.log -.static_storage/ -.media/ -local_settings.py - -# Flask stuff: -instance/ -.webassets-cache - -# Scrapy stuff: -.scrapy - -# Sphinx documentation -docs/_build/ - -# PyBuilder -target/ - -# Jupyter Notebook -.ipynb_checkpoints - -# pyenv -.python-version - -# celery beat schedule file -celerybeat-schedule - -# SageMath parsed files -*.sage.py - -# Environments -.env -.venv -env/ -venv/ -ENV/ -env.bak/ -venv.bak/ - -# Spyder project settings -.spyderproject -.spyproject - -# Rope project settings -.ropeproject - -# mkdocs documentation -/site - -# mypy -.mypy_cache/ - -# vim -*.swp -*.swm -*.swn -*.swo - -# pytorch models -*.pth -*.pth.tar -!dummy_speakers.pth -result/ - -# setup.py -version.py - -# jupyter dummy files -core - -# ignore local datasets -recipes/WIP/* -recipes/ljspeech/LJSpeech-1.1/* -recipes/vctk/VCTK/* -recipes/**/*.npy -recipes/**/*.json -VCTK-Corpus-removed-silence/* - -# ignore training logs -trainer_*_log.txt - -# files used internally for dev, test etc. -tests/outputs/* -tests/train_outputs/* -TODO.txt -.vscode/* -data/* -notebooks/data/* -TTS/tts/utils/monotonic_align/core.c -.vscode-upload.json -temp_build/* -events.out* -old_configs/* -model_importers/* -model_profiling/* -docs/source/TODO/* -.noseids -.dccache -log.txt -umap.png -*.out -SocialMedia.txt -output.wav -tts_output.wav -deps.json -speakers.json -internal/* -*_pitch.npy -*_phoneme.npy -wandb -depot/* -coqui_recipes/* -local_scripts/* diff --git a/TTS/.models.json b/TTS/.models.json deleted file mode 100644 index c97c6a383a89976b704e34474739540a88717e3a..0000000000000000000000000000000000000000 --- a/TTS/.models.json +++ /dev/null @@ -1,882 +0,0 @@ -{ - "tts_models": { - "multilingual": { - "multi-dataset": { - "your_tts": { - "description": "Your TTS model accompanying the paper https://arxiv.org/abs/2112.02418", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.10.1_models/tts_models--multilingual--multi-dataset--your_tts.zip", - "default_vocoder": null, - "commit": "e9a1953e", - "license": "CC BY-NC-ND 4.0", - "contact": "egolge@coqui.ai" - }, - "bark": { - "description": "🐶 Bark TTS model released by suno-ai. You can find the original implementation in https://github.com/suno-ai/bark.", - "hf_url": [ - "https://coqui.gateway.scarf.sh/hf/bark/coarse_2.pt", - "https://coqui.gateway.scarf.sh/hf/bark/fine_2.pt", - "https://coqui.gateway.scarf.sh/hf/bark/text_2.pt", - "https://coqui.gateway.scarf.sh/hf/bark/config.json" - ], - "default_vocoder": null, - "commit": "e9a1953e", - "license": "MIT", - "contact": "https://www.suno.ai/" - } - } - }, - "bg": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--bg--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "cs": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--cs--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "da": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--da--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "et": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--et--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "ga": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--ga--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "en": { - "ek1": { - "tacotron2": { - "description": "EK1 en-rp tacotron2 by NMStoker", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ek1--tacotron2.zip", - "default_vocoder": "vocoder_models/en/ek1/wavegrad", - "commit": "c802255", - "license": "apache 2.0" - } - }, - "ljspeech": { - "tacotron2-DDC": { - "description": "Tacotron2 with Double Decoder Consistency.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ljspeech--tacotron2-DDC.zip", - "default_vocoder": "vocoder_models/en/ljspeech/hifigan_v2", - "commit": "bae2ad0f", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.com" - }, - "tacotron2-DDC_ph": { - "description": "Tacotron2 with Double Decoder Consistency with phonemes.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ljspeech--tacotron2-DDC_ph.zip", - "default_vocoder": "vocoder_models/en/ljspeech/univnet", - "commit": "3900448", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.com" - }, - "glow-tts": { - "description": "", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ljspeech--glow-tts.zip", - "stats_file": null, - "default_vocoder": "vocoder_models/en/ljspeech/multiband-melgan", - "commit": "", - "author": "Eren Gölge @erogol", - "license": "MPL", - "contact": "egolge@coqui.com" - }, - "speedy-speech": { - "description": "Speedy Speech model trained on LJSpeech dataset using the Alignment Network for learning the durations.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ljspeech--speedy-speech.zip", - "stats_file": null, - "default_vocoder": "vocoder_models/en/ljspeech/hifigan_v2", - "commit": "4581e3d", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.com" - }, - "tacotron2-DCA": { - "description": "", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ljspeech--tacotron2-DCA.zip", - "default_vocoder": "vocoder_models/en/ljspeech/multiband-melgan", - "commit": "", - "author": "Eren Gölge @erogol", - "license": "MPL", - "contact": "egolge@coqui.com" - }, - "vits": { - "description": "VITS is an End2End TTS model trained on LJSpeech dataset with phonemes.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ljspeech--vits.zip", - "default_vocoder": null, - "commit": "3900448", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.com" - }, - "vits--neon": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--en--ljspeech--vits.zip", - "default_vocoder": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause", - "contact": null, - "commit": null - }, - "fast_pitch": { - "description": "FastPitch model trained on LJSpeech using the Aligner Network", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ljspeech--fast_pitch.zip", - "default_vocoder": "vocoder_models/en/ljspeech/hifigan_v2", - "commit": "b27b3ba", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.com" - }, - "overflow": { - "description": "Overflow model trained on LJSpeech", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.10.0_models/tts_models--en--ljspeech--overflow.zip", - "default_vocoder": "vocoder_models/en/ljspeech/hifigan_v2", - "commit": "3b1a28f", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.ai" - }, - "neural_hmm": { - "description": "Neural HMM model trained on LJSpeech", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.11.0_models/tts_models--en--ljspeech--neural_hmm.zip", - "default_vocoder": "vocoder_models/en/ljspeech/hifigan_v2", - "commit": "3b1a28f", - "author": "Shivam Metha @shivammehta25", - "license": "apache 2.0", - "contact": "d83ee8fe45e3c0d776d4a865aca21d7c2ac324c4" - } - }, - "vctk": { - "vits": { - "description": "VITS End2End TTS model trained on VCTK dataset with 109 different speakers with EN accent.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--vctk--vits.zip", - "default_vocoder": null, - "commit": "3900448", - "author": "Eren @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.ai" - }, - "fast_pitch": { - "description": "FastPitch model trained on VCTK dataseset.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--vctk--fast_pitch.zip", - "default_vocoder": null, - "commit": "bdab788d", - "author": "Eren @erogol", - "license": "CC BY-NC-ND 4.0", - "contact": "egolge@coqui.ai" - } - }, - "sam": { - "tacotron-DDC": { - "description": "Tacotron2 with Double Decoder Consistency trained with Aceenture's Sam dataset.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--sam--tacotron-DDC.zip", - "default_vocoder": "vocoder_models/en/sam/hifigan_v2", - "commit": "bae2ad0f", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.com" - } - }, - "blizzard2013": { - "capacitron-t2-c50": { - "description": "Capacitron additions to Tacotron 2 with Capacity at 50 as in https://arxiv.org/pdf/1906.03402.pdf", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.7.0_models/tts_models--en--blizzard2013--capacitron-t2-c50.zip", - "commit": "d6284e7", - "default_vocoder": "vocoder_models/en/blizzard2013/hifigan_v2", - "author": "Adam Froghyar @a-froghyar", - "license": "apache 2.0", - "contact": "adamfroghyar@gmail.com" - }, - "capacitron-t2-c150_v2": { - "description": "Capacitron additions to Tacotron 2 with Capacity at 150 as in https://arxiv.org/pdf/1906.03402.pdf", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.7.1_models/tts_models--en--blizzard2013--capacitron-t2-c150_v2.zip", - "commit": "a67039d", - "default_vocoder": "vocoder_models/en/blizzard2013/hifigan_v2", - "author": "Adam Froghyar @a-froghyar", - "license": "apache 2.0", - "contact": "adamfroghyar@gmail.com" - } - }, - "multi-dataset": { - "tortoise-v2": { - "description": "Tortoise tts model https://github.com/neonbjb/tortoise-tts", - "github_rls_url": [ - "https://coqui.gateway.scarf.sh/v0.14.1_models/autoregressive.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/clvp2.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/cvvp.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/diffusion_decoder.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/rlg_auto.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/rlg_diffuser.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/vocoder.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/mel_norms.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/config.json" - ], - "commit": "c1875f6", - "default_vocoder": null, - "author": "@neonbjb - James Betker, @manmay-nakhashi Manmay Nakhashi", - "license": "apache 2.0" - } - }, - "jenny": { - "jenny": { - "description": "VITS model trained with Jenny(Dioco) dataset. Named as Jenny as demanded by the license. Original URL for the model https://www.kaggle.com/datasets/noml4u/tts-models--en--jenny-dioco--vits", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.14.0_models/tts_models--en--jenny--jenny.zip", - "default_vocoder": null, - "commit": "ba40a1c", - "license": "custom - see https://github.com/dioco-group/jenny-tts-dataset#important", - "author": "@noml4u" - } - } - }, - "es": { - "mai": { - "tacotron2-DDC": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--es--mai--tacotron2-DDC.zip", - "default_vocoder": "vocoder_models/universal/libri-tts/fullband-melgan", - "commit": "", - "author": "Eren Gölge @erogol", - "license": "MPL", - "contact": "egolge@coqui.com" - } - }, - "css10": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--es--css10--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "fr": { - "mai": { - "tacotron2-DDC": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--fr--mai--tacotron2-DDC.zip", - "default_vocoder": "vocoder_models/universal/libri-tts/fullband-melgan", - "commit": null, - "author": "Eren Gölge @erogol", - "license": "MPL", - "contact": "egolge@coqui.com" - } - }, - "css10": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--fr--css10--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "uk": { - "mai": { - "glow-tts": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--uk--mai--glow-tts.zip", - "author": "@robinhad", - "commit": "bdab788d", - "license": "MIT", - "contact": "", - "default_vocoder": "vocoder_models/uk/mai/multiband-melgan" - }, - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--uk--mai--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "zh-CN": { - "baker": { - "tacotron2-DDC-GST": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--zh-CN--baker--tacotron2-DDC-GST.zip", - "commit": "unknown", - "author": "@kirianguiller", - "license": "apache 2.0", - "default_vocoder": null - } - } - }, - "nl": { - "mai": { - "tacotron2-DDC": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--nl--mai--tacotron2-DDC.zip", - "author": "@r-dh", - "license": "apache 2.0", - "default_vocoder": "vocoder_models/nl/mai/parallel-wavegan", - "stats_file": null, - "commit": "540d811" - } - }, - "css10": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--nl--css10--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "de": { - "thorsten": { - "tacotron2-DCA": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--de--thorsten--tacotron2-DCA.zip", - "default_vocoder": "vocoder_models/de/thorsten/fullband-melgan", - "author": "@thorstenMueller", - "license": "apache 2.0", - "commit": "unknown" - }, - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.7.0_models/tts_models--de--thorsten--vits.zip", - "default_vocoder": null, - "author": "@thorstenMueller", - "license": "apache 2.0", - "commit": "unknown" - }, - "tacotron2-DDC": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--de--thorsten--tacotron2-DDC.zip", - "default_vocoder": "vocoder_models/de/thorsten/hifigan_v1", - "description": "Thorsten-Dec2021-22k-DDC", - "author": "@thorstenMueller", - "license": "apache 2.0", - "commit": "unknown" - } - }, - "css10": { - "vits-neon": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--de--css10--vits.zip", - "default_vocoder": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause", - "commit": null - } - } - }, - "ja": { - "kokoro": { - "tacotron2-DDC": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--ja--kokoro--tacotron2-DDC.zip", - "default_vocoder": "vocoder_models/ja/kokoro/hifigan_v1", - "description": "Tacotron2 with Double Decoder Consistency trained with Kokoro Speech Dataset.", - "author": "@kaiidams", - "license": "apache 2.0", - "commit": "401fbd89" - } - } - }, - "tr": { - "common-voice": { - "glow-tts": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--tr--common-voice--glow-tts.zip", - "default_vocoder": "vocoder_models/tr/common-voice/hifigan", - "license": "MIT", - "description": "Turkish GlowTTS model using an unknown speaker from the Common-Voice dataset.", - "author": "Fatih Akademi", - "commit": null - } - } - }, - "it": { - "mai_female": { - "glow-tts": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--it--mai_female--glow-tts.zip", - "default_vocoder": null, - "description": "GlowTTS model as explained on https://github.com/coqui-ai/TTS/issues/1148.", - "author": "@nicolalandro", - "license": "apache 2.0", - "commit": null - }, - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--it--mai_female--vits.zip", - "default_vocoder": null, - "description": "GlowTTS model as explained on https://github.com/coqui-ai/TTS/issues/1148.", - "author": "@nicolalandro", - "license": "apache 2.0", - "commit": null - } - }, - "mai_male": { - "glow-tts": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--it--mai_male--glow-tts.zip", - "default_vocoder": null, - "description": "GlowTTS model as explained on https://github.com/coqui-ai/TTS/issues/1148.", - "author": "@nicolalandro", - "license": "apache 2.0", - "commit": null - }, - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--it--mai_male--vits.zip", - "default_vocoder": null, - "description": "GlowTTS model as explained on https://github.com/coqui-ai/TTS/issues/1148.", - "author": "@nicolalandro", - "license": "apache 2.0", - "commit": null - } - } - }, - "ewe": { - "openbible": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.2_models/tts_models--ewe--openbible--vits.zip", - "default_vocoder": null, - "license": "CC-BY-SA 4.0", - "description": "Original work (audio and text) by Biblica available for free at www.biblica.com and open.bible.", - "author": "@coqui_ai", - "commit": "1b22f03" - } - } - }, - "hau": { - "openbible": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.2_models/tts_models--hau--openbible--vits.zip", - "default_vocoder": null, - "license": "CC-BY-SA 4.0", - "description": "Original work (audio and text) by Biblica available for free at www.biblica.com and open.bible.", - "author": "@coqui_ai", - "commit": "1b22f03" - } - } - }, - "lin": { - "openbible": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.2_models/tts_models--lin--openbible--vits.zip", - "default_vocoder": null, - "license": "CC-BY-SA 4.0", - "description": "Original work (audio and text) by Biblica available for free at www.biblica.com and open.bible.", - "author": "@coqui_ai", - "commit": "1b22f03" - } - } - }, - "tw_akuapem": { - "openbible": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.2_models/tts_models--tw_akuapem--openbible--vits.zip", - "default_vocoder": null, - "license": "CC-BY-SA 4.0", - "description": "Original work (audio and text) by Biblica available for free at www.biblica.com and open.bible.", - "author": "@coqui_ai", - "commit": "1b22f03" - } - } - }, - "tw_asante": { - "openbible": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.2_models/tts_models--tw_asante--openbible--vits.zip", - "default_vocoder": null, - "license": "CC-BY-SA 4.0", - "description": "Original work (audio and text) by Biblica available for free at www.biblica.com and open.bible.", - "author": "@coqui_ai", - "commit": "1b22f03" - } - } - }, - "yor": { - "openbible": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.2_models/tts_models--yor--openbible--vits.zip", - "default_vocoder": null, - "license": "CC-BY-SA 4.0", - "description": "Original work (audio and text) by Biblica available for free at www.biblica.com and open.bible.", - "author": "@coqui_ai", - "commit": "1b22f03" - } - } - }, - "hu": { - "css10": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--hu--css10--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "el": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--el--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "fi": { - "css10": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--fi--css10--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "hr": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--hr--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "lt": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--lt--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "lv": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--lv--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "mt": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--mt--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "pl": { - "mai_female": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--pl--mai_female--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "pt": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--pt--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "ro": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--ro--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "sk": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--sk--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "sl": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--sl--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "sv": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--sv--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "ca": { - "custom": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.10.1_models/tts_models--ca--custom--vits.zip", - "default_vocoder": null, - "commit": null, - "description": " It is trained from zero with 101460 utterances consisting of 257 speakers, approx 138 hours of speech. We used three datasets;\nFestcat and Google Catalan TTS (both TTS datasets) and also a part of Common Voice 8. It is trained with TTS v0.8.0.\nhttps://github.com/coqui-ai/TTS/discussions/930#discussioncomment-4466345", - "author": "@gullabi", - "license": "CC-BY-4.0" - } - } - }, - "fa": { - "custom": { - "glow-tts": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.10.1_models/tts_models--fa--custom--glow-tts.zip", - "default_vocoder": null, - "commit": null, - "description": "persian-tts-female-glow_tts model for text to speech purposes. Single-speaker female voice Trained on persian-tts-dataset-famale. \nThis model has no compatible vocoder thus the output quality is not very good. \nDataset: https://www.kaggle.com/datasets/magnoliasis/persian-tts-dataset-famale.", - "author": "@karim23657", - "license": "CC-BY-4.0" - } - } - }, - "bn": { - "custom": { - "vits-male": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.13.3_models/tts_models--bn--custom--vits_male.zip", - "default_vocoder": null, - "commit": null, - "description": "Single speaker Bangla male model. For more information -> https://github.com/mobassir94/comprehensive-bangla-tts", - "author": "@mobassir94", - "license": "Apache 2.0" - }, - "vits-female": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.13.3_models/tts_models--bn--custom--vits_female.zip", - "default_vocoder": null, - "commit": null, - "description": "Single speaker Bangla female model. For more information -> https://github.com/mobassir94/comprehensive-bangla-tts", - "author": "@mobassir94", - "license": "Apache 2.0" - } - } - } - }, - "vocoder_models": { - "universal": { - "libri-tts": { - "wavegrad": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--universal--libri-tts--wavegrad.zip", - "commit": "ea976b0", - "author": "Eren Gölge @erogol", - "license": "MPL", - "contact": "egolge@coqui.com" - }, - "fullband-melgan": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--universal--libri-tts--fullband-melgan.zip", - "commit": "4132240", - "author": "Eren Gölge @erogol", - "license": "MPL", - "contact": "egolge@coqui.com" - } - } - }, - "en": { - "ek1": { - "wavegrad": { - "description": "EK1 en-rp wavegrad by NMStoker", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--en--ek1--wavegrad.zip", - "commit": "c802255", - "license": "apache 2.0" - } - }, - "ljspeech": { - "multiband-melgan": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--en--ljspeech--multiband-melgan.zip", - "commit": "ea976b0", - "author": "Eren Gölge @erogol", - "license": "MPL", - "contact": "egolge@coqui.com" - }, - "hifigan_v2": { - "description": "HiFiGAN_v2 LJSpeech vocoder from https://arxiv.org/abs/2010.05646.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--en--ljspeech--hifigan_v2.zip", - "commit": "bae2ad0f", - "author": "@erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.ai" - }, - "univnet": { - "description": "UnivNet model finetuned on TacotronDDC_ph spectrograms for better compatibility.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--en--ljspeech--univnet_v2.zip", - "commit": "4581e3d", - "author": "Eren @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.ai" - } - }, - "blizzard2013": { - "hifigan_v2": { - "description": "HiFiGAN_v2 LJSpeech vocoder from https://arxiv.org/abs/2010.05646.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.7.0_models/vocoder_models--en--blizzard2013--hifigan_v2.zip", - "commit": "d6284e7", - "author": "Adam Froghyar @a-froghyar", - "license": "apache 2.0", - "contact": "adamfroghyar@gmail.com" - } - }, - "vctk": { - "hifigan_v2": { - "description": "Finetuned and intended to be used with tts_models/en/vctk/sc-glow-tts", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--en--vctk--hifigan_v2.zip", - "commit": "2f07160", - "author": "Edresson Casanova", - "license": "apache 2.0", - "contact": "" - } - }, - "sam": { - "hifigan_v2": { - "description": "Finetuned and intended to be used with tts_models/en/sam/tacotron_DDC", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--en--sam--hifigan_v2.zip", - "commit": "2f07160", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.ai" - } - } - }, - "nl": { - "mai": { - "parallel-wavegan": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--nl--mai--parallel-wavegan.zip", - "author": "@r-dh", - "license": "apache 2.0", - "commit": "unknown" - } - } - }, - "de": { - "thorsten": { - "wavegrad": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--de--thorsten--wavegrad.zip", - "author": "@thorstenMueller", - "license": "apache 2.0", - "commit": "unknown" - }, - "fullband-melgan": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--de--thorsten--fullband-melgan.zip", - "author": "@thorstenMueller", - "license": "apache 2.0", - "commit": "unknown" - }, - "hifigan_v1": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/vocoder_models--de--thorsten--hifigan_v1.zip", - "description": "HifiGAN vocoder model for Thorsten Neutral Dec2021 22k Samplerate Tacotron2 DDC model", - "author": "@thorstenMueller", - "license": "apache 2.0", - "commit": "unknown" - } - } - }, - "ja": { - "kokoro": { - "hifigan_v1": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--ja--kokoro--hifigan_v1.zip", - "description": "HifiGAN model trained for kokoro dataset by @kaiidams", - "author": "@kaiidams", - "license": "apache 2.0", - "commit": "3900448" - } - } - }, - "uk": { - "mai": { - "multiband-melgan": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--uk--mai--multiband-melgan.zip", - "author": "@robinhad", - "commit": "bdab788d", - "license": "MIT", - "contact": "" - } - } - }, - "tr": { - "common-voice": { - "hifigan": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--tr--common-voice--hifigan.zip", - "description": "HifiGAN model using an unknown speaker from the Common-Voice dataset.", - "author": "Fatih Akademi", - "license": "MIT", - "commit": null - } - } - } - }, - "voice_conversion_models": { - "multilingual": { - "vctk": { - "freevc24": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.13.0_models/voice_conversion_models--multilingual--vctk--freevc24.zip", - "description": "FreeVC model trained on VCTK dataset from https://github.com/OlaWod/FreeVC", - "author": "Jing-Yi Li @OlaWod", - "license": "MIT", - "commit": null - } - } - } - } -} \ No newline at end of file diff --git a/TTS/.pre-commit-config.yaml b/TTS/.pre-commit-config.yaml deleted file mode 100644 index 911f2a838ea4c598f83a415da5fd58e83dfc3659..0000000000000000000000000000000000000000 --- a/TTS/.pre-commit-config.yaml +++ /dev/null @@ -1,27 +0,0 @@ -repos: - - repo: 'https://github.com/pre-commit/pre-commit-hooks' - rev: v2.3.0 - hooks: - - id: check-yaml - - id: end-of-file-fixer - - id: trailing-whitespace - - repo: 'https://github.com/psf/black' - rev: 22.3.0 - hooks: - - id: black - language_version: python3 - - repo: https://github.com/pycqa/isort - rev: 5.8.0 - hooks: - - id: isort - name: isort (python) - - id: isort - name: isort (cython) - types: [cython] - - id: isort - name: isort (pyi) - types: [pyi] - - repo: https://github.com/pycqa/pylint - rev: v2.8.2 - hooks: - - id: pylint diff --git a/TTS/.pylintrc b/TTS/.pylintrc deleted file mode 100644 index 49a9dbdd2cb2c8d10173ea3e184788290480378c..0000000000000000000000000000000000000000 --- a/TTS/.pylintrc +++ /dev/null @@ -1,599 +0,0 @@ -[MASTER] - -# A comma-separated list of package or module names from where C extensions may -# be loaded. Extensions are loading into the active Python interpreter and may -# run arbitrary code. -extension-pkg-whitelist= - -# Add files or directories to the blacklist. They should be base names, not -# paths. -ignore=CVS - -# Add files or directories matching the regex patterns to the blacklist. The -# regex matches against base names, not paths. -ignore-patterns= - -# Python code to execute, usually for sys.path manipulation such as -# pygtk.require(). -#init-hook= - -# Use multiple processes to speed up Pylint. Specifying 0 will auto-detect the -# number of processors available to use. -jobs=1 - -# Control the amount of potential inferred values when inferring a single -# object. This can help the performance when dealing with large functions or -# complex, nested conditions. -limit-inference-results=100 - -# List of plugins (as comma separated values of python modules names) to load, -# usually to register additional checkers. -load-plugins= - -# Pickle collected data for later comparisons. -persistent=yes - -# Specify a configuration file. -#rcfile= - -# When enabled, pylint would attempt to guess common misconfiguration and emit -# user-friendly hints instead of false-positive error messages. -suggestion-mode=yes - -# Allow loading of arbitrary C extensions. Extensions are imported into the -# active Python interpreter and may run arbitrary code. -unsafe-load-any-extension=no - - -[MESSAGES CONTROL] - -# Only show warnings with the listed confidence levels. Leave empty to show -# all. Valid levels: HIGH, INFERENCE, INFERENCE_FAILURE, UNDEFINED. -confidence= - -# Disable the message, report, category or checker with the given id(s). You -# can either give multiple identifiers separated by comma (,) or put this -# option multiple times (only on the command line, not in the configuration -# file where it should appear only once). You can also use "--disable=all" to -# disable everything first and then reenable specific checks. For example, if -# you want to run only the similarities checker, you can use "--disable=all -# --enable=similarities". If you want to run only the classes checker, but have -# no Warning level messages displayed, use "--disable=all --enable=classes -# --disable=W". -disable=missing-docstring, - too-many-public-methods, - too-many-lines, - bare-except, - ## for avoiding weird p3.6 CI linter error - ## TODO: see later if we can remove this - assigning-non-slot, - unsupported-assignment-operation, - ## end - line-too-long, - fixme, - wrong-import-order, - ungrouped-imports, - wrong-import-position, - import-error, - invalid-name, - too-many-instance-attributes, - arguments-differ, - arguments-renamed, - no-name-in-module, - no-member, - unsubscriptable-object, - print-statement, - parameter-unpacking, - unpacking-in-except, - old-raise-syntax, - backtick, - long-suffix, - old-ne-operator, - old-octal-literal, - import-star-module-level, - non-ascii-bytes-literal, - raw-checker-failed, - bad-inline-option, - locally-disabled, - file-ignored, - suppressed-message, - useless-suppression, - deprecated-pragma, - use-symbolic-message-instead, - useless-object-inheritance, - too-few-public-methods, - too-many-branches, - too-many-arguments, - too-many-locals, - too-many-statements, - apply-builtin, - basestring-builtin, - buffer-builtin, - cmp-builtin, - coerce-builtin, - execfile-builtin, - file-builtin, - long-builtin, - raw_input-builtin, - reduce-builtin, - standarderror-builtin, - unicode-builtin, - xrange-builtin, - coerce-method, - delslice-method, - getslice-method, - setslice-method, - no-absolute-import, - old-division, - dict-iter-method, - dict-view-method, - next-method-called, - metaclass-assignment, - indexing-exception, - raising-string, - reload-builtin, - oct-method, - hex-method, - nonzero-method, - cmp-method, - input-builtin, - round-builtin, - intern-builtin, - unichr-builtin, - map-builtin-not-iterating, - zip-builtin-not-iterating, - range-builtin-not-iterating, - filter-builtin-not-iterating, - using-cmp-argument, - eq-without-hash, - div-method, - idiv-method, - rdiv-method, - exception-message-attribute, - invalid-str-codec, - sys-max-int, - bad-python3-import, - deprecated-string-function, - deprecated-str-translate-call, - deprecated-itertools-function, - deprecated-types-field, - next-method-defined, - dict-items-not-iterating, - dict-keys-not-iterating, - dict-values-not-iterating, - deprecated-operator-function, - deprecated-urllib-function, - xreadlines-attribute, - deprecated-sys-function, - exception-escape, - comprehension-escape, - duplicate-code, - not-callable, - import-outside-toplevel, - logging-fstring-interpolation, - logging-not-lazy - -# Enable the message, report, category or checker with the given id(s). You can -# either give multiple identifier separated by comma (,) or put this option -# multiple time (only on the command line, not in the configuration file where -# it should appear only once). See also the "--disable" option for examples. -enable=c-extension-no-member - - -[REPORTS] - -# Python expression which should return a note less than 10 (10 is the highest -# note). You have access to the variables errors warning, statement which -# respectively contain the number of errors / warnings messages and the total -# number of statements analyzed. This is used by the global evaluation report -# (RP0004). -evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10) - -# Template used to display messages. This is a python new-style format string -# used to format the message information. See doc for all details. -#msg-template= - -# Set the output format. Available formats are text, parseable, colorized, json -# and msvs (visual studio). You can also give a reporter class, e.g. -# mypackage.mymodule.MyReporterClass. -output-format=text - -# Tells whether to display a full report or only the messages. -reports=no - -# Activate the evaluation score. -score=yes - - -[REFACTORING] - -# Maximum number of nested blocks for function / method body -max-nested-blocks=5 - -# Complete name of functions that never returns. When checking for -# inconsistent-return-statements if a never returning function is called then -# it will be considered as an explicit return statement and no message will be -# printed. -never-returning-functions=sys.exit - - -[LOGGING] - -# Format style used to check logging format string. `old` means using % -# formatting, while `new` is for `{}` formatting. -logging-format-style=old - -# Logging modules to check that the string format arguments are in logging -# function parameter format. -logging-modules=logging - - -[SPELLING] - -# Limits count of emitted suggestions for spelling mistakes. -max-spelling-suggestions=4 - -# Spelling dictionary name. Available dictionaries: none. To make it working -# install python-enchant package.. -spelling-dict= - -# List of comma separated words that should not be checked. -spelling-ignore-words= - -# A path to a file that contains private dictionary; one word per line. -spelling-private-dict-file= - -# Tells whether to store unknown words to indicated private dictionary in -# --spelling-private-dict-file option instead of raising a message. -spelling-store-unknown-words=no - - -[MISCELLANEOUS] - -# List of note tags to take in consideration, separated by a comma. -notes=FIXME, - XXX, - TODO - - -[TYPECHECK] - -# List of decorators that produce context managers, such as -# contextlib.contextmanager. Add to this list to register other decorators that -# produce valid context managers. -contextmanager-decorators=contextlib.contextmanager - -# List of members which are set dynamically and missed by pylint inference -# system, and so shouldn't trigger E1101 when accessed. Python regular -# expressions are accepted. -generated-members=numpy.*,torch.* - -# Tells whether missing members accessed in mixin class should be ignored. A -# mixin class is detected if its name ends with "mixin" (case insensitive). -ignore-mixin-members=yes - -# Tells whether to warn about missing members when the owner of the attribute -# is inferred to be None. -ignore-none=yes - -# This flag controls whether pylint should warn about no-member and similar -# checks whenever an opaque object is returned when inferring. The inference -# can return multiple potential results while evaluating a Python object, but -# some branches might not be evaluated, which results in partial inference. In -# that case, it might be useful to still emit no-member and other checks for -# the rest of the inferred objects. -ignore-on-opaque-inference=yes - -# List of class names for which member attributes should not be checked (useful -# for classes with dynamically set attributes). This supports the use of -# qualified names. -ignored-classes=optparse.Values,thread._local,_thread._local - -# List of module names for which member attributes should not be checked -# (useful for modules/projects where namespaces are manipulated during runtime -# and thus existing member attributes cannot be deduced by static analysis. It -# supports qualified module names, as well as Unix pattern matching. -ignored-modules= - -# Show a hint with possible names when a member name was not found. The aspect -# of finding the hint is based on edit distance. -missing-member-hint=yes - -# The minimum edit distance a name should have in order to be considered a -# similar match for a missing member name. -missing-member-hint-distance=1 - -# The total number of similar names that should be taken in consideration when -# showing a hint for a missing member. -missing-member-max-choices=1 - - -[VARIABLES] - -# List of additional names supposed to be defined in builtins. Remember that -# you should avoid defining new builtins when possible. -additional-builtins= - -# Tells whether unused global variables should be treated as a violation. -allow-global-unused-variables=yes - -# List of strings which can identify a callback function by name. A callback -# name must start or end with one of those strings. -callbacks=cb_, - _cb - -# A regular expression matching the name of dummy variables (i.e. expected to -# not be used). -dummy-variables-rgx=_+$|(_[a-zA-Z0-9_]*[a-zA-Z0-9]+?$)|dummy|^ignored_|^unused_ - -# Argument names that match this expression will be ignored. Default to name -# with leading underscore. -ignored-argument-names=_.*|^ignored_|^unused_ - -# Tells whether we should check for unused import in __init__ files. -init-import=no - -# List of qualified module names which can have objects that can redefine -# builtins. -redefining-builtins-modules=six.moves,past.builtins,future.builtins,builtins,io - - -[FORMAT] - -# Expected format of line ending, e.g. empty (any line ending), LF or CRLF. -expected-line-ending-format= - -# Regexp for a line that is allowed to be longer than the limit. -ignore-long-lines=^\s*(# )??$ - -# Number of spaces of indent required inside a hanging or continued line. -indent-after-paren=4 - -# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1 -# tab). -indent-string=' ' - -# Maximum number of characters on a single line. -max-line-length=120 - -# Maximum number of lines in a module. -max-module-lines=1000 - -# List of optional constructs for which whitespace checking is disabled. `dict- -# separator` is used to allow tabulation in dicts, etc.: {1 : 1,\n222: 2}. -# `trailing-comma` allows a space between comma and closing bracket: (a, ). -# `empty-line` allows space-only lines. -no-space-check=trailing-comma, - dict-separator - -# Allow the body of a class to be on the same line as the declaration if body -# contains single statement. -single-line-class-stmt=no - -# Allow the body of an if to be on the same line as the test if there is no -# else. -single-line-if-stmt=no - - -[SIMILARITIES] - -# Ignore comments when computing similarities. -ignore-comments=yes - -# Ignore docstrings when computing similarities. -ignore-docstrings=yes - -# Ignore imports when computing similarities. -ignore-imports=no - -# Minimum lines number of a similarity. -min-similarity-lines=4 - - -[BASIC] - -# Naming style matching correct argument names. -argument-naming-style=snake_case - -# Regular expression matching correct argument names. Overrides argument- -# naming-style. -argument-rgx=[a-z_][a-z0-9_]{0,30}$ - -# Naming style matching correct attribute names. -attr-naming-style=snake_case - -# Regular expression matching correct attribute names. Overrides attr-naming- -# style. -#attr-rgx= - -# Bad variable names which should always be refused, separated by a comma. -bad-names= - -# Naming style matching correct class attribute names. -class-attribute-naming-style=any - -# Regular expression matching correct class attribute names. Overrides class- -# attribute-naming-style. -#class-attribute-rgx= - -# Naming style matching correct class names. -class-naming-style=PascalCase - -# Regular expression matching correct class names. Overrides class-naming- -# style. -#class-rgx= - -# Naming style matching correct constant names. -const-naming-style=UPPER_CASE - -# Regular expression matching correct constant names. Overrides const-naming- -# style. -#const-rgx= - -# Minimum line length for functions/classes that require docstrings, shorter -# ones are exempt. -docstring-min-length=-1 - -# Naming style matching correct function names. -function-naming-style=snake_case - -# Regular expression matching correct function names. Overrides function- -# naming-style. -#function-rgx= - -# Good variable names which should always be accepted, separated by a comma. -good-names=i, - j, - k, - x, - ex, - Run, - _ - -# Include a hint for the correct naming format with invalid-name. -include-naming-hint=no - -# Naming style matching correct inline iteration names. -inlinevar-naming-style=any - -# Regular expression matching correct inline iteration names. Overrides -# inlinevar-naming-style. -#inlinevar-rgx= - -# Naming style matching correct method names. -method-naming-style=snake_case - -# Regular expression matching correct method names. Overrides method-naming- -# style. -#method-rgx= - -# Naming style matching correct module names. -module-naming-style=snake_case - -# Regular expression matching correct module names. Overrides module-naming- -# style. -#module-rgx= - -# Colon-delimited sets of names that determine each other's naming style when -# the name regexes allow several styles. -name-group= - -# Regular expression which should only match function or class names that do -# not require a docstring. -no-docstring-rgx=^_ - -# List of decorators that produce properties, such as abc.abstractproperty. Add -# to this list to register other decorators that produce valid properties. -# These decorators are taken in consideration only for invalid-name. -property-classes=abc.abstractproperty - -# Naming style matching correct variable names. -variable-naming-style=snake_case - -# Regular expression matching correct variable names. Overrides variable- -# naming-style. -variable-rgx=[a-z_][a-z0-9_]{0,30}$ - - -[STRING] - -# This flag controls whether the implicit-str-concat-in-sequence should -# generate a warning on implicit string concatenation in sequences defined over -# several lines. -check-str-concat-over-line-jumps=no - - -[IMPORTS] - -# Allow wildcard imports from modules that define __all__. -allow-wildcard-with-all=no - -# Analyse import fallback blocks. This can be used to support both Python 2 and -# 3 compatible code, which means that the block might have code that exists -# only in one or another interpreter, leading to false positives when analysed. -analyse-fallback-blocks=no - -# Deprecated modules which should not be used, separated by a comma. -deprecated-modules=optparse,tkinter.tix - -# Create a graph of external dependencies in the given file (report RP0402 must -# not be disabled). -ext-import-graph= - -# Create a graph of every (i.e. internal and external) dependencies in the -# given file (report RP0402 must not be disabled). -import-graph= - -# Create a graph of internal dependencies in the given file (report RP0402 must -# not be disabled). -int-import-graph= - -# Force import order to recognize a module as part of the standard -# compatibility libraries. -known-standard-library= - -# Force import order to recognize a module as part of a third party library. -known-third-party=enchant - - -[CLASSES] - -# List of method names used to declare (i.e. assign) instance attributes. -defining-attr-methods=__init__, - __new__, - setUp - -# List of member names, which should be excluded from the protected access -# warning. -exclude-protected=_asdict, - _fields, - _replace, - _source, - _make - -# List of valid names for the first argument in a class method. -valid-classmethod-first-arg=cls - -# List of valid names for the first argument in a metaclass class method. -valid-metaclass-classmethod-first-arg=cls - - -[DESIGN] - -# Maximum number of arguments for function / method. -max-args=5 - -# Maximum number of attributes for a class (see R0902). -max-attributes=7 - -# Maximum number of boolean expressions in an if statement. -max-bool-expr=5 - -# Maximum number of branch for function / method body. -max-branches=12 - -# Maximum number of locals for function / method body. -max-locals=15 - -# Maximum number of parents for a class (see R0901). -max-parents=15 - -# Maximum number of public methods for a class (see R0904). -max-public-methods=20 - -# Maximum number of return / yield for function / method body. -max-returns=6 - -# Maximum number of statements in function / method body. -max-statements=50 - -# Minimum number of public methods for a class (see R0903). -min-public-methods=2 - - -[EXCEPTIONS] - -# Exceptions that will emit a warning when being caught. Defaults to -# "BaseException, Exception". -overgeneral-exceptions=BaseException, - Exception diff --git a/TTS/.readthedocs.yml b/TTS/.readthedocs.yml deleted file mode 100644 index 266a2cdeb23d721424aa55c45d9f09440f9df11b..0000000000000000000000000000000000000000 --- a/TTS/.readthedocs.yml +++ /dev/null @@ -1,23 +0,0 @@ -# .readthedocs.yml -# Read the Docs configuration file -# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details - -# Required -version: 2 - -# Set the version of Python and other tools you might need -build: - os: ubuntu-22.04 - tools: - python: "3.11" - -# Optionally set the version of Python and requirements required to build your docs -python: - install: - - requirements: docs/requirements.txt - - requirements: requirements.txt - -# Build documentation in the docs/ directory with Sphinx -sphinx: - builder: html - configuration: docs/source/conf.py diff --git a/TTS/CITATION.cff b/TTS/CITATION.cff deleted file mode 100644 index 6b0c8f19af1b37607c3994abe28b8d362cbcb564..0000000000000000000000000000000000000000 --- a/TTS/CITATION.cff +++ /dev/null @@ -1,20 +0,0 @@ -cff-version: 1.2.0 -message: "If you want to cite 🐸💬, feel free to use this (but only if you loved it 😊)" -title: "Coqui TTS" -abstract: "A deep learning toolkit for Text-to-Speech, battle-tested in research and production" -date-released: 2021-01-01 -authors: - - family-names: "Eren" - given-names: "Gölge" - - name: "The Coqui TTS Team" -version: 1.4 -doi: 10.5281/zenodo.6334862 -license: "MPL-2.0" -url: "https://www.coqui.ai" -repository-code: "https://github.com/coqui-ai/TTS" -keywords: - - machine learning - - deep learning - - artificial intelligence - - text to speech - - TTS \ No newline at end of file diff --git a/TTS/CODE_OF_CONDUCT.md b/TTS/CODE_OF_CONDUCT.md deleted file mode 100644 index b80639d63c29e902c547de347806651bcc9ad3b2..0000000000000000000000000000000000000000 --- a/TTS/CODE_OF_CONDUCT.md +++ /dev/null @@ -1,133 +0,0 @@ - -# Contributor Covenant Code of Conduct - -## Our Pledge - -We as members, contributors, and leaders pledge to make participation in our -community a harassment-free experience for everyone, regardless of age, body -size, visible or invisible disability, ethnicity, sex characteristics, gender -identity and expression, level of experience, education, socio-economic status, -nationality, personal appearance, race, caste, color, religion, or sexual identity -and orientation. - -We pledge to act and interact in ways that contribute to an open, welcoming, -diverse, inclusive, and healthy community. - -## Our Standards - -Examples of behavior that contributes to a positive environment for our -community include: - -* Demonstrating empathy and kindness toward other people -* Being respectful of differing opinions, viewpoints, and experiences -* Giving and gracefully accepting constructive feedback -* Accepting responsibility and apologizing to those affected by our mistakes, - and learning from the experience -* Focusing on what is best not just for us as individuals, but for the - overall community - -Examples of unacceptable behavior include: - -* The use of sexualized language or imagery, and sexual attention or - advances of any kind -* Trolling, insulting or derogatory comments, and personal or political attacks -* Public or private harassment -* Publishing others' private information, such as a physical or email - address, without their explicit permission -* Other conduct which could reasonably be considered inappropriate in a - professional setting - -## Enforcement Responsibilities - -Community leaders are responsible for clarifying and enforcing our standards of -acceptable behavior and will take appropriate and fair corrective action in -response to any behavior that they deem inappropriate, threatening, offensive, -or harmful. - -Community leaders have the right and responsibility to remove, edit, or reject -comments, commits, code, wiki edits, issues, and other contributions that are -not aligned to this Code of Conduct, and will communicate reasons for moderation -decisions when appropriate. - -## Scope - -This Code of Conduct applies within all community spaces, and also applies when -an individual is officially representing the community in public spaces. -Examples of representing our community include using an official e-mail address, -posting via an official social media account, or acting as an appointed -representative at an online or offline event. - -## Enforcement - -Instances of abusive, harassing, or otherwise unacceptable behavior may be -reported to the community leaders responsible for enforcement at -coc-report@coqui.ai. -All complaints will be reviewed and investigated promptly and fairly. - -All community leaders are obligated to respect the privacy and security of the -reporter of any incident. - -## Enforcement Guidelines - -Community leaders will follow these Community Impact Guidelines in determining -the consequences for any action they deem in violation of this Code of Conduct: - -### 1. Correction - -**Community Impact**: Use of inappropriate language or other behavior deemed -unprofessional or unwelcome in the community. - -**Consequence**: A private, written warning from community leaders, providing -clarity around the nature of the violation and an explanation of why the -behavior was inappropriate. A public apology may be requested. - -### 2. Warning - -**Community Impact**: A violation through a single incident or series -of actions. - -**Consequence**: A warning with consequences for continued behavior. No -interaction with the people involved, including unsolicited interaction with -those enforcing the Code of Conduct, for a specified period of time. This -includes avoiding interactions in community spaces as well as external channels -like social media. Violating these terms may lead to a temporary or -permanent ban. - -### 3. Temporary Ban - -**Community Impact**: A serious violation of community standards, including -sustained inappropriate behavior. - -**Consequence**: A temporary ban from any sort of interaction or public -communication with the community for a specified period of time. No public or -private interaction with the people involved, including unsolicited interaction -with those enforcing the Code of Conduct, is allowed during this period. -Violating these terms may lead to a permanent ban. - -### 4. Permanent Ban - -**Community Impact**: Demonstrating a pattern of violation of community -standards, including sustained inappropriate behavior, harassment of an -individual, or aggression toward or disparagement of classes of individuals. - -**Consequence**: A permanent ban from any sort of public interaction within -the community. - -## Attribution - -This Code of Conduct is adapted from the [Contributor Covenant][homepage], -version 2.0, available at -[https://www.contributor-covenant.org/version/2/0/code_of_conduct.html][v2.0]. - -Community Impact Guidelines were inspired by -[Mozilla's code of conduct enforcement ladder][Mozilla CoC]. - -For answers to common questions about this code of conduct, see the FAQ at -[https://www.contributor-covenant.org/faq][FAQ]. Translations are available -at [https://www.contributor-covenant.org/translations][translations]. - -[homepage]: https://www.contributor-covenant.org -[v2.0]: https://www.contributor-covenant.org/version/2/0/code_of_conduct.html -[Mozilla CoC]: https://github.com/mozilla/diversity -[FAQ]: https://www.contributor-covenant.org/faq -[translations]: https://www.contributor-covenant.org/translations diff --git a/TTS/CODE_OWNERS.rst b/TTS/CODE_OWNERS.rst deleted file mode 100644 index 768b573911eae8aeb229de6f56039deb9a64ce27..0000000000000000000000000000000000000000 --- a/TTS/CODE_OWNERS.rst +++ /dev/null @@ -1,75 +0,0 @@ -TTS code owners / governance system -========================================== - -TTS is run under a governance system inspired (and partially copied from) by the `Mozilla module ownership system `_. The project is roughly divided into modules, and each module has its owners, which are responsible for reviewing pull requests and deciding on technical direction for their modules. Module ownership authority is given to people who have worked extensively on areas of the project. - -Module owners also have the authority of naming other module owners or appointing module peers, which are people with authority to review pull requests in that module. They can also sub-divide their module into sub-modules with their owners. - -Module owners are not tyrants. They are chartered to make decisions with input from the community and in the best interest of the community. Module owners are not required to make code changes or additions solely because the community wants them to do so. (Like anyone else, the module owners may write code because they want to, because their employers want them to, because the community wants them to, or for some other reason.) Module owners do need to pay attention to patches submitted to that module. However “pay attention” does not mean agreeing to every patch. Some patches may not make sense for the WebThings project; some may be poorly implemented. Module owners have the authority to decline a patch; this is a necessary part of the role. We ask the module owners to describe in the relevant issue their reasons for wanting changes to a patch, for declining it altogether, or for postponing review for some period. We don’t ask or expect them to rewrite patches to make them acceptable. Similarly, module owners may need to delay review of a promising patch due to an upcoming deadline. For example, a patch may be of interest, but not for the next milestone. In such a case it may make sense for the module owner to postpone review of a patch until after matters needed for a milestone have been finalized. Again, we expect this to be described in the relevant issue. And of course, it shouldn’t go on very often or for very long or escalation and review is likely. - -The work of the various module owners and peers is overseen by the global owners, which are responsible for making final decisions in case there's conflict between owners as well as set the direction for the project as a whole. - -This file describes module owners who are active on the project and which parts of the code they have expertise on (and interest in). If you're making changes to the code and are wondering who's an appropriate person to talk to, this list will tell you who to ping. - -There's overlap in the areas of expertise of each owner, and in particular when looking at which files are covered by each area, there is a lot of overlap. Don't worry about getting it exactly right when requesting review, any code owner will be happy to redirect the request to a more appropriate person. - -Global owners ----------------- - -These are people who have worked on the project extensively and are familiar with all or most parts of it. Their expertise and review guidance is trusted by other code owners to cover their own areas of expertise. In case of conflicting opinions from other owners, global owners will make a final decision. - -- Eren Gölge (@erogol) -- Reuben Morais (@reuben) - -Training, feeding ------------------ - -- Eren Gölge (@erogol) - -Model exporting ---------------- - -- Eren Gölge (@erogol) - -Multi-Speaker TTS ------------------ - -- Eren Gölge (@erogol) -- Edresson Casanova (@edresson) - -TTS ---- - -- Eren Gölge (@erogol) - -Vocoders --------- - -- Eren Gölge (@erogol) - -Speaker Encoder ---------------- - -- Eren Gölge (@erogol) - -Testing & CI ------------- - -- Eren Gölge (@erogol) -- Reuben Morais (@reuben) - -Python bindings ---------------- - -- Eren Gölge (@erogol) -- Reuben Morais (@reuben) - -Documentation -------------- - -- Eren Gölge (@erogol) - -Third party bindings --------------------- - -Owned by the author. diff --git a/TTS/CONTRIBUTING.md b/TTS/CONTRIBUTING.md deleted file mode 100644 index ade35507d25415d657243709f12df00fd52686be..0000000000000000000000000000000000000000 --- a/TTS/CONTRIBUTING.md +++ /dev/null @@ -1,136 +0,0 @@ -# Contribution guidelines - -Welcome to the 🐸TTS! - -This repository is governed by [the Contributor Covenant Code of Conduct](https://github.com/coqui-ai/TTS/blob/main/CODE_OF_CONDUCT.md). - -## Where to start. -We welcome everyone who likes to contribute to 🐸TTS. - -You can contribute not only with code but with bug reports, comments, questions, answers, or just a simple tweet to spread the word. - -If you like to contribute code, squash a bug but if you don't know where to start, here are some pointers. - -- [Development Road Map](https://github.com/coqui-ai/TTS/issues/378) - - You can pick something out of our road map. We keep the progess of the project in this simple issue thread. It has new model proposals or developmental updates etc. - -- [Github Issues Tracker](https://github.com/coqui-ai/TTS/issues) - - This is a place to find feature requests, bugs. - - Issues with the ```good first issue``` tag are good place for beginners to take on. - -- ✨**PR**✨ [pages](https://github.com/coqui-ai/TTS/pulls) with the ```🚀new version``` tag. - - We list all the target improvements for the next version. You can pick one of them and start contributing. - -- Also feel free to suggest new features, ideas and models. We're always open for new things. - -## Call for sharing language models -If possible, please consider sharing your pre-trained models in any language (if the licences allow for you to do so). We will include them in our model catalogue for public use and give the proper attribution, whether it be your name, company, website or any other source specified. - -This model can be shared in two ways: -1. Share the model files with us and we serve them with the next 🐸 TTS release. -2. Upload your models on GDrive and share the link. - -Models are served under `.models.json` file and any model is available under TTS CLI or Server end points. - -Either way you choose, please make sure you send the models [here](https://github.com/coqui-ai/TTS/discussions/930). - -## Sending a ✨**PR**✨ - -If you have a new feature, a model to implement, or a bug to squash, go ahead and send a ✨**PR**✨. -Please use the following steps to send a ✨**PR**✨. -Let us know if you encounter a problem along the way. - -The following steps are tested on an Ubuntu system. - -1. Fork 🐸TTS[https://github.com/coqui-ai/TTS] by clicking the fork button at the top right corner of the project page. - -2. Clone 🐸TTS and add the main repo as a new remote named ```upsteam```. - - ```bash - $ git clone git@github.com:/TTS.git - $ cd TTS - $ git remote add upstream https://github.com/coqui-ai/TTS.git - ``` - -3. Install 🐸TTS for development. - - ```bash - $ make system-deps # intended to be used on Ubuntu (Debian). Let us know if you have a different OS. - $ make install - ``` - -4. Create a new branch with an informative name for your goal. - - ```bash - $ git checkout -b an_informative_name_for_my_branch - ``` - -5. Implement your changes on your new branch. - -6. Explain your code using [Google Style](https://google.github.io/styleguide/pyguide.html#381-docstrings) docstrings. - -7. Add your tests to our test suite under ```tests``` folder. It is important to show that your code works, edge cases are considered, and inform others about the intended use. - -8. Run the tests to see how your updates work with the rest of the project. You can repeat this step multiple times as you implement your changes to make sure you are on the right direction. - - ```bash - $ make test # stop at the first error - $ make test_all # run all the tests, report all the errors - ``` - -9. Format your code. We use ```black``` for code and ```isort``` for ```import``` formatting. - - ```bash - $ make style - ``` - -10. Run the linter and correct the issues raised. We use ```pylint``` for linting. It helps to enforce a coding standard, offers simple refactoring suggestions. - - ```bash - $ make lint - ``` - -11. When things are good, add new files and commit your changes. - - ```bash - $ git add my_file1.py my_file2.py ... - $ git commit - ``` - - It's a good practice to regularly sync your local copy of the project with the upstream code to keep up with the recent updates. - - ```bash - $ git fetch upstream - $ git rebase upstream/master - # or for the development version - $ git rebase upstream/dev - ``` - -12. Send a PR to ```dev``` branch. - - Push your branch to your fork. - - ```bash - $ git push -u origin an_informative_name_for_my_branch - ``` - - Then go to your fork's Github page and click on 'Pull request' to send your ✨**PR**✨. - - Please set ✨**PR**✨'s target branch to ```dev``` as we use ```dev``` to work on the next version. - -13. Let's discuss until it is perfect. 💪 - - We might ask you for certain changes that would appear in the ✨**PR**✨'s page under 🐸TTS[https://github.com/coqui-ai/TTS/pulls]. - -14. Once things look perfect, We merge it to the ```dev``` branch and make it ready for the next version. - -Feel free to ping us at any step you need help using our communication channels. - -If you are new to Github or open-source contribution, These are good resources. - -- [Github Docs](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/proposing-changes-to-your-work-with-pull-requests) -- [First-Contribution](https://github.com/firstcontributions/first-contributions) diff --git a/TTS/Dockerfile b/TTS/Dockerfile deleted file mode 100644 index 30dfb23d0d1270cbb9991856585a8258b5cd4962..0000000000000000000000000000000000000000 --- a/TTS/Dockerfile +++ /dev/null @@ -1,13 +0,0 @@ -ARG BASE=nvidia/cuda:11.8.0-base-ubuntu22.04 -FROM ${BASE} -RUN apt-get update && apt-get upgrade -y -RUN apt-get install -y --no-install-recommends gcc g++ make python3 python3-dev python3-pip python3-venv python3-wheel espeak-ng libsndfile1-dev && rm -rf /var/lib/apt/lists/* -RUN pip3 install llvmlite --ignore-installed - -WORKDIR /root -COPY . /root -RUN pip3 install torch torchaudio --extra-index-url https://download.pytorch.org/whl/cu118 -RUN rm -rf /root/.cache/pip -RUN make install -ENTRYPOINT ["tts"] -CMD ["--help"] diff --git a/TTS/LICENSE.txt b/TTS/LICENSE.txt deleted file mode 100644 index 14e2f777f6c395e7e04ab4aa306bbcc4b0c1120e..0000000000000000000000000000000000000000 --- a/TTS/LICENSE.txt +++ /dev/null @@ -1,373 +0,0 @@ -Mozilla Public License Version 2.0 -================================== - -1. Definitions --------------- - -1.1. "Contributor" - means each individual or legal entity that creates, contributes to - the creation of, or owns Covered Software. - -1.2. "Contributor Version" - means the combination of the Contributions of others (if any) used - by a Contributor and that particular Contributor's Contribution. - -1.3. "Contribution" - means Covered Software of a particular Contributor. - -1.4. "Covered Software" - means Source Code Form to which the initial Contributor has attached - the notice in Exhibit A, the Executable Form of such Source Code - Form, and Modifications of such Source Code Form, in each case - including portions thereof. - -1.5. "Incompatible With Secondary Licenses" - means - - (a) that the initial Contributor has attached the notice described - in Exhibit B to the Covered Software; or - - (b) that the Covered Software was made available under the terms of - version 1.1 or earlier of the License, but not also under the - terms of a Secondary License. - -1.6. "Executable Form" - means any form of the work other than Source Code Form. - -1.7. "Larger Work" - means a work that combines Covered Software with other material, in - a separate file or files, that is not Covered Software. - -1.8. "License" - means this document. - -1.9. "Licensable" - means having the right to grant, to the maximum extent possible, - whether at the time of the initial grant or subsequently, any and - all of the rights conveyed by this License. - -1.10. "Modifications" - means any of the following: - - (a) any file in Source Code Form that results from an addition to, - deletion from, or modification of the contents of Covered - Software; or - - (b) any new file in Source Code Form that contains any Covered - Software. - -1.11. "Patent Claims" of a Contributor - means any patent claim(s), including without limitation, method, - process, and apparatus claims, in any patent Licensable by such - Contributor that would be infringed, but for the grant of the - License, by the making, using, selling, offering for sale, having - made, import, or transfer of either its Contributions or its - Contributor Version. - -1.12. "Secondary License" - means either the GNU General Public License, Version 2.0, the GNU - Lesser General Public License, Version 2.1, the GNU Affero General - Public License, Version 3.0, or any later versions of those - licenses. - -1.13. "Source Code Form" - means the form of the work preferred for making modifications. - -1.14. "You" (or "Your") - means an individual or a legal entity exercising rights under this - License. For legal entities, "You" includes any entity that - controls, is controlled by, or is under common control with You. For - purposes of this definition, "control" means (a) the power, direct - or indirect, to cause the direction or management of such entity, - whether by contract or otherwise, or (b) ownership of more than - fifty percent (50%) of the outstanding shares or beneficial - ownership of such entity. - -2. License Grants and Conditions --------------------------------- - -2.1. Grants - -Each Contributor hereby grants You a world-wide, royalty-free, -non-exclusive license: - -(a) under intellectual property rights (other than patent or trademark) - Licensable by such Contributor to use, reproduce, make available, - modify, display, perform, distribute, and otherwise exploit its - Contributions, either on an unmodified basis, with Modifications, or - as part of a Larger Work; and - -(b) under Patent Claims of such Contributor to make, use, sell, offer - for sale, have made, import, and otherwise transfer either its - Contributions or its Contributor Version. - -2.2. Effective Date - -The licenses granted in Section 2.1 with respect to any Contribution -become effective for each Contribution on the date the Contributor first -distributes such Contribution. - -2.3. Limitations on Grant Scope - -The licenses granted in this Section 2 are the only rights granted under -this License. No additional rights or licenses will be implied from the -distribution or licensing of Covered Software under this License. -Notwithstanding Section 2.1(b) above, no patent license is granted by a -Contributor: - -(a) for any code that a Contributor has removed from Covered Software; - or - -(b) for infringements caused by: (i) Your and any other third party's - modifications of Covered Software, or (ii) the combination of its - Contributions with other software (except as part of its Contributor - Version); or - -(c) under Patent Claims infringed by Covered Software in the absence of - its Contributions. - -This License does not grant any rights in the trademarks, service marks, -or logos of any Contributor (except as may be necessary to comply with -the notice requirements in Section 3.4). - -2.4. Subsequent Licenses - -No Contributor makes additional grants as a result of Your choice to -distribute the Covered Software under a subsequent version of this -License (see Section 10.2) or under the terms of a Secondary License (if -permitted under the terms of Section 3.3). - -2.5. Representation - -Each Contributor represents that the Contributor believes its -Contributions are its original creation(s) or it has sufficient rights -to grant the rights to its Contributions conveyed by this License. - -2.6. Fair Use - -This License is not intended to limit any rights You have under -applicable copyright doctrines of fair use, fair dealing, or other -equivalents. - -2.7. Conditions - -Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted -in Section 2.1. - -3. Responsibilities -------------------- - -3.1. Distribution of Source Form - -All distribution of Covered Software in Source Code Form, including any -Modifications that You create or to which You contribute, must be under -the terms of this License. You must inform recipients that the Source -Code Form of the Covered Software is governed by the terms of this -License, and how they can obtain a copy of this License. You may not -attempt to alter or restrict the recipients' rights in the Source Code -Form. - -3.2. Distribution of Executable Form - -If You distribute Covered Software in Executable Form then: - -(a) such Covered Software must also be made available in Source Code - Form, as described in Section 3.1, and You must inform recipients of - the Executable Form how they can obtain a copy of such Source Code - Form by reasonable means in a timely manner, at a charge no more - than the cost of distribution to the recipient; and - -(b) You may distribute such Executable Form under the terms of this - License, or sublicense it under different terms, provided that the - license for the Executable Form does not attempt to limit or alter - the recipients' rights in the Source Code Form under this License. - -3.3. Distribution of a Larger Work - -You may create and distribute a Larger Work under terms of Your choice, -provided that You also comply with the requirements of this License for -the Covered Software. If the Larger Work is a combination of Covered -Software with a work governed by one or more Secondary Licenses, and the -Covered Software is not Incompatible With Secondary Licenses, this -License permits You to additionally distribute such Covered Software -under the terms of such Secondary License(s), so that the recipient of -the Larger Work may, at their option, further distribute the Covered -Software under the terms of either this License or such Secondary -License(s). - -3.4. Notices - -You may not remove or alter the substance of any license notices -(including copyright notices, patent notices, disclaimers of warranty, -or limitations of liability) contained within the Source Code Form of -the Covered Software, except that You may alter any license notices to -the extent required to remedy known factual inaccuracies. - -3.5. Application of Additional Terms - -You may choose to offer, and to charge a fee for, warranty, support, -indemnity or liability obligations to one or more recipients of Covered -Software. However, You may do so only on Your own behalf, and not on -behalf of any Contributor. You must make it absolutely clear that any -such warranty, support, indemnity, or liability obligation is offered by -You alone, and You hereby agree to indemnify every Contributor for any -liability incurred by such Contributor as a result of warranty, support, -indemnity or liability terms You offer. You may include additional -disclaimers of warranty and limitations of liability specific to any -jurisdiction. - -4. Inability to Comply Due to Statute or Regulation ---------------------------------------------------- - -If it is impossible for You to comply with any of the terms of this -License with respect to some or all of the Covered Software due to -statute, judicial order, or regulation then You must: (a) comply with -the terms of this License to the maximum extent possible; and (b) -describe the limitations and the code they affect. Such description must -be placed in a text file included with all distributions of the Covered -Software under this License. Except to the extent prohibited by statute -or regulation, such description must be sufficiently detailed for a -recipient of ordinary skill to be able to understand it. - -5. Termination --------------- - -5.1. The rights granted under this License will terminate automatically -if You fail to comply with any of its terms. However, if You become -compliant, then the rights granted under this License from a particular -Contributor are reinstated (a) provisionally, unless and until such -Contributor explicitly and finally terminates Your grants, and (b) on an -ongoing basis, if such Contributor fails to notify You of the -non-compliance by some reasonable means prior to 60 days after You have -come back into compliance. Moreover, Your grants from a particular -Contributor are reinstated on an ongoing basis if such Contributor -notifies You of the non-compliance by some reasonable means, this is the -first time You have received notice of non-compliance with this License -from such Contributor, and You become compliant prior to 30 days after -Your receipt of the notice. - -5.2. If You initiate litigation against any entity by asserting a patent -infringement claim (excluding declaratory judgment actions, -counter-claims, and cross-claims) alleging that a Contributor Version -directly or indirectly infringes any patent, then the rights granted to -You by any and all Contributors for the Covered Software under Section -2.1 of this License shall terminate. - -5.3. In the event of termination under Sections 5.1 or 5.2 above, all -end user license agreements (excluding distributors and resellers) which -have been validly granted by You or Your distributors under this License -prior to termination shall survive termination. - -************************************************************************ -* * -* 6. Disclaimer of Warranty * -* ------------------------- * -* * -* Covered Software is provided under this License on an "as is" * -* basis, without warranty of any kind, either expressed, implied, or * -* statutory, including, without limitation, warranties that the * -* Covered Software is free of defects, merchantable, fit for a * -* particular purpose or non-infringing. The entire risk as to the * -* quality and performance of the Covered Software is with You. * -* Should any Covered Software prove defective in any respect, You * -* (not any Contributor) assume the cost of any necessary servicing, * -* repair, or correction. This disclaimer of warranty constitutes an * -* essential part of this License. No use of any Covered Software is * -* authorized under this License except under this disclaimer. * -* * -************************************************************************ - -************************************************************************ -* * -* 7. Limitation of Liability * -* -------------------------- * -* * -* Under no circumstances and under no legal theory, whether tort * -* (including negligence), contract, or otherwise, shall any * -* Contributor, or anyone who distributes Covered Software as * -* permitted above, be liable to You for any direct, indirect, * -* special, incidental, or consequential damages of any character * -* including, without limitation, damages for lost profits, loss of * -* goodwill, work stoppage, computer failure or malfunction, or any * -* and all other commercial damages or losses, even if such party * -* shall have been informed of the possibility of such damages. This * -* limitation of liability shall not apply to liability for death or * -* personal injury resulting from such party's negligence to the * -* extent applicable law prohibits such limitation. Some * -* jurisdictions do not allow the exclusion or limitation of * -* incidental or consequential damages, so this exclusion and * -* limitation may not apply to You. * -* * -************************************************************************ - -8. Litigation -------------- - -Any litigation relating to this License may be brought only in the -courts of a jurisdiction where the defendant maintains its principal -place of business and such litigation shall be governed by laws of that -jurisdiction, without reference to its conflict-of-law provisions. -Nothing in this Section shall prevent a party's ability to bring -cross-claims or counter-claims. - -9. Miscellaneous ----------------- - -This License represents the complete agreement concerning the subject -matter hereof. If any provision of this License is held to be -unenforceable, such provision shall be reformed only to the extent -necessary to make it enforceable. Any law or regulation which provides -that the language of a contract shall be construed against the drafter -shall not be used to construe this License against a Contributor. - -10. Versions of the License ---------------------------- - -10.1. New Versions - -Mozilla Foundation is the license steward. Except as provided in Section -10.3, no one other than the license steward has the right to modify or -publish new versions of this License. Each version will be given a -distinguishing version number. - -10.2. Effect of New Versions - -You may distribute the Covered Software under the terms of the version -of the License under which You originally received the Covered Software, -or under the terms of any subsequent version published by the license -steward. - -10.3. Modified Versions - -If you create software not governed by this License, and you want to -create a new license for such software, you may create and use a -modified version of this License if you rename the license and remove -any references to the name of the license steward (except to note that -such modified license differs from this License). - -10.4. Distributing Source Code Form that is Incompatible With Secondary -Licenses - -If You choose to distribute Source Code Form that is Incompatible With -Secondary Licenses under the terms of this version of the License, the -notice described in Exhibit B of this License must be attached. - -Exhibit A - Source Code Form License Notice -------------------------------------------- - - This Source Code Form is subject to the terms of the Mozilla Public - 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/. - -If it is not possible or desirable to put the notice in a particular -file, then You may include the notice in a location (such as a LICENSE -file in a relevant directory) where a recipient would be likely to look -for such a notice. - -You may add additional accurate notices of copyright ownership. - -Exhibit B - "Incompatible With Secondary Licenses" Notice ---------------------------------------------------------- - - This Source Code Form is "Incompatible With Secondary Licenses", as - defined by the Mozilla Public License, v. 2.0. diff --git a/TTS/MANIFEST.in b/TTS/MANIFEST.in deleted file mode 100644 index 321d3999c185a326a9d300451a3e732e4225f2e6..0000000000000000000000000000000000000000 --- a/TTS/MANIFEST.in +++ /dev/null @@ -1,15 +0,0 @@ -include README.md -include LICENSE.txt -include requirements.*.txt -include *.cff -include requirements.txt -include TTS/VERSION -recursive-include TTS *.json -recursive-include TTS *.html -recursive-include TTS *.png -recursive-include TTS *.md -recursive-include TTS *.py -recursive-include TTS *.pyx -recursive-include images *.png -recursive-exclude tests * -prune tests* diff --git a/TTS/Makefile b/TTS/Makefile deleted file mode 100644 index ab992ec52e53363a5935f5d4e05524c6333319f7..0000000000000000000000000000000000000000 --- a/TTS/Makefile +++ /dev/null @@ -1,78 +0,0 @@ -.DEFAULT_GOAL := help -.PHONY: test system-deps dev-deps deps style lint install help docs - -help: - @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' - -target_dirs := tests TTS notebooks recipes - -test_all: ## run tests and don't stop on an error. - nose2 --with-coverage --coverage TTS tests - ./run_bash_tests.sh - -test: ## run tests. - nose2 -F -v -B --with-coverage --coverage TTS tests - -test_vocoder: ## run vocoder tests. - nose2 -F -v -B --with-coverage --coverage TTS tests.vocoder_tests - -test_tts: ## run tts tests. - nose2 -F -v -B --with-coverage --coverage TTS tests.tts_tests - -test_tts2: ## run tts tests. - nose2 -F -v -B --with-coverage --coverage TTS tests.tts_tests2 - -test_aux: ## run aux tests. - nose2 -F -v -B --with-coverage --coverage TTS tests.aux_tests - ./run_bash_tests.sh - -test_zoo: ## run zoo tests. - nose2 -F -v -B --with-coverage --coverage TTS tests.zoo_tests - -inference_tests: ## run inference tests. - nose2 -F -v -B --with-coverage --coverage TTS tests.inference_tests - -api_tests: ## run api tests. - nose2 -F -v -B --with-coverage --coverage TTS tests.api_tests - -data_tests: ## run data tests. - nose2 -F -v -B --with-coverage --coverage TTS tests.data_tests - -test_text: ## run text tests. - nose2 -F -v -B --with-coverage --coverage TTS tests.text_tests - -test_failed: ## only run tests failed the last time. - nose2 -F -v -B --with-coverage --coverage TTS tests - -style: ## update code style. - black ${target_dirs} - isort ${target_dirs} - -lint: ## run pylint linter. - pylint ${target_dirs} - black ${target_dirs} --check - isort ${target_dirs} --check-only - -system-deps: ## install linux system deps - sudo apt-get install -y libsndfile1-dev - -dev-deps: ## install development deps - pip install -r requirements.dev.txt - -doc-deps: ## install docs dependencies - pip install -r docs/requirements.txt - -build-docs: ## build the docs - cd docs && make clean && make build - -hub-deps: ## install deps for torch hub use - pip install -r requirements.hub.txt - -deps: ## install 🐸 requirements. - pip install -r requirements.txt - -install: ## install 🐸 TTS for development. - pip install -e .[all] - -docs: ## build the docs - $(MAKE) -C docs clean && $(MAKE) -C docs html diff --git a/TTS/README.md b/TTS/README.md deleted file mode 100644 index 9d82eca62a93fa4bc443aab99604b484b8391278..0000000000000000000000000000000000000000 --- a/TTS/README.md +++ /dev/null @@ -1,402 +0,0 @@ - -## 🐸Coqui.ai News -- 📣 [🐶Bark](https://github.com/suno-ai/bark) is now available for inference with uncontrained voice cloning. [Docs](https://tts.readthedocs.io/en/dev/models/bark.html) -- 📣 You can use [~1100 Fairseq models](https://github.com/facebookresearch/fairseq/tree/main/examples/mms) with 🐸TTS. -- 📣 🐸TTS now supports 🐢Tortoise with faster inference. [Docs](https://tts.readthedocs.io/en/dev/models/tortoise.html) -- 📣 **Coqui Studio API** is landed on 🐸TTS. - [Example](https://github.com/coqui-ai/TTS/blob/dev/README.md#-python-api) -- 📣 [**Coqui Studio API**](https://docs.coqui.ai/docs) is live. -- 📣 Voice generation with prompts - **Prompt to Voice** - is live on [**Coqui Studio**](https://app.coqui.ai/auth/signin)!! - [Blog Post](https://coqui.ai/blog/tts/prompt-to-voice) -- 📣 Voice generation with fusion - **Voice fusion** - is live on [**Coqui Studio**](https://app.coqui.ai/auth/signin). -- 📣 Voice cloning is live on [**Coqui Studio**](https://app.coqui.ai/auth/signin). - -
- - -## - - -**🐸TTS is a library for advanced Text-to-Speech generation.** - -🚀 Pretrained models in +1100 languages. - -🛠️ Tools for training new models and fine-tuning existing models in any language. - -📚 Utilities for dataset analysis and curation. -______________________________________________________________________ - -[![Dicord](https://img.shields.io/discord/1037326658807533628?color=%239B59B6&label=chat%20on%20discord)](https://discord.gg/5eXr5seRrv) -[![License]()](https://opensource.org/licenses/MPL-2.0) -[![PyPI version](https://badge.fury.io/py/TTS.svg)](https://badge.fury.io/py/TTS) -[![Covenant](https://camo.githubusercontent.com/7d620efaa3eac1c5b060ece5d6aacfcc8b81a74a04d05cd0398689c01c4463bb/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f436f6e7472696275746f72253230436f76656e616e742d76322e3025323061646f707465642d6666363962342e737667)](https://github.com/coqui-ai/TTS/blob/master/CODE_OF_CONDUCT.md) -[![Downloads](https://pepy.tech/badge/tts)](https://pepy.tech/project/tts) -[![DOI](https://zenodo.org/badge/265612440.svg)](https://zenodo.org/badge/latestdoi/265612440) - -![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/aux_tests.yml/badge.svg) -![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/data_tests.yml/badge.svg) -![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/docker.yaml/badge.svg) -![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/inference_tests.yml/badge.svg) -![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/style_check.yml/badge.svg) -![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/text_tests.yml/badge.svg) -![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/tts_tests.yml/badge.svg) -![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/vocoder_tests.yml/badge.svg) -![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/zoo_tests0.yml/badge.svg) -![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/zoo_tests1.yml/badge.svg) -![GithubActions](https://github.com/coqui-ai/TTS/actions/workflows/zoo_tests2.yml/badge.svg) -[![Docs]()](https://tts.readthedocs.io/en/latest/) - -
- -______________________________________________________________________ - -## 💬 Where to ask questions -Please use our dedicated channels for questions and discussion. Help is much more valuable if it's shared publicly so that more people can benefit from it. - -| Type | Platforms | -| ------------------------------- | --------------------------------------- | -| 🚨 **Bug Reports** | [GitHub Issue Tracker] | -| 🎁 **Feature Requests & Ideas** | [GitHub Issue Tracker] | -| 👩‍💻 **Usage Questions** | [GitHub Discussions] | -| 🗯 **General Discussion** | [GitHub Discussions] or [Discord] | - -[github issue tracker]: https://github.com/coqui-ai/tts/issues -[github discussions]: https://github.com/coqui-ai/TTS/discussions -[discord]: https://discord.gg/5eXr5seRrv -[Tutorials and Examples]: https://github.com/coqui-ai/TTS/wiki/TTS-Notebooks-and-Tutorials - - -## 🔗 Links and Resources -| Type | Links | -| ------------------------------- | --------------------------------------- | -| 💼 **Documentation** | [ReadTheDocs](https://tts.readthedocs.io/en/latest/) -| 💾 **Installation** | [TTS/README.md](https://github.com/coqui-ai/TTS/tree/dev#install-tts)| -| 👩‍💻 **Contributing** | [CONTRIBUTING.md](https://github.com/coqui-ai/TTS/blob/main/CONTRIBUTING.md)| -| 📌 **Road Map** | [Main Development Plans](https://github.com/coqui-ai/TTS/issues/378) -| 🚀 **Released Models** | [TTS Releases](https://github.com/coqui-ai/TTS/releases) and [Experimental Models](https://github.com/coqui-ai/TTS/wiki/Experimental-Released-Models)| -| 📰 **Papers** | [TTS Papers](https://github.com/erogol/TTS-papers)| - - -## 🥇 TTS Performance -

- -Underlined "TTS*" and "Judy*" are **internal** 🐸TTS models that are not released open-source. They are here to show the potential. Models prefixed with a dot (.Jofish .Abe and .Janice) are real human voices. - -## Features -- High-performance Deep Learning models for Text2Speech tasks. - - Text2Spec models (Tacotron, Tacotron2, Glow-TTS, SpeedySpeech). - - Speaker Encoder to compute speaker embeddings efficiently. - - Vocoder models (MelGAN, Multiband-MelGAN, GAN-TTS, ParallelWaveGAN, WaveGrad, WaveRNN) -- Fast and efficient model training. -- Detailed training logs on the terminal and Tensorboard. -- Support for Multi-speaker TTS. -- Efficient, flexible, lightweight but feature complete `Trainer API`. -- Released and ready-to-use models. -- Tools to curate Text2Speech datasets under```dataset_analysis```. -- Utilities to use and test your models. -- Modular (but not too much) code base enabling easy implementation of new ideas. - -## Model Implementations -### Spectrogram models -- Tacotron: [paper](https://arxiv.org/abs/1703.10135) -- Tacotron2: [paper](https://arxiv.org/abs/1712.05884) -- Glow-TTS: [paper](https://arxiv.org/abs/2005.11129) -- Speedy-Speech: [paper](https://arxiv.org/abs/2008.03802) -- Align-TTS: [paper](https://arxiv.org/abs/2003.01950) -- FastPitch: [paper](https://arxiv.org/pdf/2006.06873.pdf) -- FastSpeech: [paper](https://arxiv.org/abs/1905.09263) -- FastSpeech2: [paper](https://arxiv.org/abs/2006.04558) -- SC-GlowTTS: [paper](https://arxiv.org/abs/2104.05557) -- Capacitron: [paper](https://arxiv.org/abs/1906.03402) -- OverFlow: [paper](https://arxiv.org/abs/2211.06892) -- Neural HMM TTS: [paper](https://arxiv.org/abs/2108.13320) -- Delightful TTS: [paper](https://arxiv.org/abs/2110.12612) - -### End-to-End Models -- VITS: [paper](https://arxiv.org/pdf/2106.06103) -- 🐸 YourTTS: [paper](https://arxiv.org/abs/2112.02418) -- 🐢 Tortoise: [orig. repo](https://github.com/neonbjb/tortoise-tts) -- 🐶 Bark: [orig. repo](https://github.com/suno-ai/bark) - -### Attention Methods -- Guided Attention: [paper](https://arxiv.org/abs/1710.08969) -- Forward Backward Decoding: [paper](https://arxiv.org/abs/1907.09006) -- Graves Attention: [paper](https://arxiv.org/abs/1910.10288) -- Double Decoder Consistency: [blog](https://erogol.com/solving-attention-problems-of-tts-models-with-double-decoder-consistency/) -- Dynamic Convolutional Attention: [paper](https://arxiv.org/pdf/1910.10288.pdf) -- Alignment Network: [paper](https://arxiv.org/abs/2108.10447) - -### Speaker Encoder -- GE2E: [paper](https://arxiv.org/abs/1710.10467) -- Angular Loss: [paper](https://arxiv.org/pdf/2003.11982.pdf) - -### Vocoders -- MelGAN: [paper](https://arxiv.org/abs/1910.06711) -- MultiBandMelGAN: [paper](https://arxiv.org/abs/2005.05106) -- ParallelWaveGAN: [paper](https://arxiv.org/abs/1910.11480) -- GAN-TTS discriminators: [paper](https://arxiv.org/abs/1909.11646) -- WaveRNN: [origin](https://github.com/fatchord/WaveRNN/) -- WaveGrad: [paper](https://arxiv.org/abs/2009.00713) -- HiFiGAN: [paper](https://arxiv.org/abs/2010.05646) -- UnivNet: [paper](https://arxiv.org/abs/2106.07889) - -### Voice Conversion -- FreeVC: [paper](https://arxiv.org/abs/2210.15418) - -You can also help us implement more models. - -## Installation -🐸TTS is tested on Ubuntu 18.04 with **python >= 3.7, < 3.11.**. - -If you are only interested in [synthesizing speech](https://tts.readthedocs.io/en/latest/inference.html) with the released 🐸TTS models, installing from PyPI is the easiest option. - -```bash -pip install TTS -``` - -If you plan to code or train models, clone 🐸TTS and install it locally. - -```bash -git clone https://github.com/coqui-ai/TTS -pip install -e .[all,dev,notebooks] # Select the relevant extras -``` - -If you are on Ubuntu (Debian), you can also run following commands for installation. - -```bash -$ make system-deps # intended to be used on Ubuntu (Debian). Let us know if you have a different OS. -$ make install -``` - -If you are on Windows, 👑@GuyPaddock wrote installation instructions [here](https://stackoverflow.com/questions/66726331/how-can-i-run-mozilla-tts-coqui-tts-training-with-cuda-on-a-windows-system). - - -## Docker Image -You can also try TTS without install with the docker image. -Simply run the following command and you will be able to run TTS without installing it. - -```bash -docker run --rm -it -p 5002:5002 --entrypoint /bin/bash ghcr.io/coqui-ai/tts-cpu -python3 TTS/server/server.py --list_models #To get the list of available models -python3 TTS/server/server.py --model_name tts_models/en/vctk/vits # To start a server -``` - -You can then enjoy the TTS server [here](http://[::1]:5002/) -More details about the docker images (like GPU support) can be found [here](https://tts.readthedocs.io/en/latest/docker_images.html) - - -## Synthesizing speech by 🐸TTS - -### 🐍 Python API - -```python -from TTS.api import TTS - -# Running a multi-speaker and multi-lingual model - -# List available 🐸TTS models and choose the first one -model_name = TTS.list_models()[0] -# Init TTS -tts = TTS(model_name) - -# Run TTS - -# ❗ Since this model is multi-speaker and multi-lingual, we must set the target speaker and the language -# Text to speech with a numpy output -wav = tts.tts("This is a test! This is also a test!!", speaker=tts.speakers[0], language=tts.languages[0]) -# Text to speech to a file -tts.tts_to_file(text="Hello world!", speaker=tts.speakers[0], language=tts.languages[0], file_path="output.wav") -``` - -#### Running a single speaker model - -```python -# Init TTS with the target model name -tts = TTS(model_name="tts_models/de/thorsten/tacotron2-DDC", progress_bar=False, gpu=False) -# Run TTS -tts.tts_to_file(text="Ich bin eine Testnachricht.", file_path=OUTPUT_PATH) - -# Example voice cloning with YourTTS in English, French and Portuguese - -tts = TTS(model_name="tts_models/multilingual/multi-dataset/your_tts", progress_bar=False, gpu=True) -tts.tts_to_file("This is voice cloning.", speaker_wav="my/cloning/audio.wav", language="en", file_path="output.wav") -tts.tts_to_file("C'est le clonage de la voix.", speaker_wav="my/cloning/audio.wav", language="fr-fr", file_path="output.wav") -tts.tts_to_file("Isso é clonagem de voz.", speaker_wav="my/cloning/audio.wav", language="pt-br", file_path="output.wav") -``` - -#### Example voice conversion - -Converting the voice in `source_wav` to the voice of `target_wav` - -```python -tts = TTS(model_name="voice_conversion_models/multilingual/vctk/freevc24", progress_bar=False, gpu=True) -tts.voice_conversion_to_file(source_wav="my/source.wav", target_wav="my/target.wav", file_path="output.wav") -``` - -#### Example voice cloning together with the voice conversion model. -This way, you can clone voices by using any model in 🐸TTS. - -```python - -tts = TTS("tts_models/de/thorsten/tacotron2-DDC") -tts.tts_with_vc_to_file( - "Wie sage ich auf Italienisch, dass ich dich liebe?", - speaker_wav="target/speaker.wav", - file_path="output.wav" -) -``` - -#### Example using [🐸Coqui Studio](https://coqui.ai) voices. -You access all of your cloned voices and built-in speakers in [🐸Coqui Studio](https://coqui.ai). -To do this, you'll need an API token, which you can obtain from the [account page](https://coqui.ai/account). -After obtaining the API token, you'll need to configure the COQUI_STUDIO_TOKEN environment variable. - -Once you have a valid API token in place, the studio speakers will be displayed as distinct models within the list. -These models will follow the naming convention `coqui_studio/en//coqui_studio` - -```python -# XTTS model -models = TTS(cs_api_model="XTTS").list_models() -# Init TTS with the target studio speaker -tts = TTS(model_name="coqui_studio/en/Torcull Diarmuid/coqui_studio", progress_bar=False, gpu=False) -# Run TTS -tts.tts_to_file(text="This is a test.", file_path=OUTPUT_PATH) - -# V1 model -models = TTS(cs_api_model="V1").list_models() -# Run TTS with emotion and speed control -# Emotion control only works with V1 model -tts.tts_to_file(text="This is a test.", file_path=OUTPUT_PATH, emotion="Happy", speed=1.5) - -# XTTS-multilingual -models = TTS(cs_api_model="XTTS-multilingual").list_models() -# Run TTS with emotion and speed control -# Emotion control only works with V1 model -tts.tts_to_file(text="Das ist ein Test.", file_path=OUTPUT_PATH, language="de", speed=1.0) -``` - -#### Example text to speech using **Fairseq models in ~1100 languages** 🤯. -For Fairseq models, use the following name format: `tts_models//fairseq/vits`. -You can find the language ISO codes [here](https://dl.fbaipublicfiles.com/mms/tts/all-tts-languages.html) -and learn about the Fairseq models [here](https://github.com/facebookresearch/fairseq/tree/main/examples/mms). - -```python -# TTS with on the fly voice conversion -api = TTS("tts_models/deu/fairseq/vits") -api.tts_with_vc_to_file( - "Wie sage ich auf Italienisch, dass ich dich liebe?", - speaker_wav="target/speaker.wav", - file_path="output.wav" -) -``` - -### Command-line `tts` -#### Single Speaker Models - -- List provided models: - - ``` - $ tts --list_models - ``` -- Get model info (for both tts_models and vocoder_models): - - Query by type/name: - The model_info_by_name uses the name as it from the --list_models. - ``` - $ tts --model_info_by_name "///" - ``` - For example: - - ``` - $ tts --model_info_by_name tts_models/tr/common-voice/glow-tts - ``` - ``` - $ tts --model_info_by_name vocoder_models/en/ljspeech/hifigan_v2 - ``` - - Query by type/idx: - The model_query_idx uses the corresponding idx from --list_models. - ``` - $ tts --model_info_by_idx "/" - ``` - For example: - - ``` - $ tts --model_info_by_idx tts_models/3 - ``` - -- Run TTS with default models: - - ``` - $ tts --text "Text for TTS" --out_path output/path/speech.wav - ``` - -- Run a TTS model with its default vocoder model: - - ``` - $ tts --text "Text for TTS" --model_name "///" --out_path output/path/speech.wav - ``` - For example: - - ``` - $ tts --text "Text for TTS" --model_name "tts_models/en/ljspeech/glow-tts" --out_path output/path/speech.wav - ``` - -- Run with specific TTS and vocoder models from the list: - - ``` - $ tts --text "Text for TTS" --model_name "///" --vocoder_name "///" --out_path output/path/speech.wav - ``` - - For example: - - ``` - $ tts --text "Text for TTS" --model_name "tts_models/en/ljspeech/glow-tts" --vocoder_name "vocoder_models/en/ljspeech/univnet" --out_path output/path/speech.wav - ``` - - -- Run your own TTS model (Using Griffin-Lim Vocoder): - - ``` - $ tts --text "Text for TTS" --model_path path/to/model.pth --config_path path/to/config.json --out_path output/path/speech.wav - ``` - -- Run your own TTS and Vocoder models: - ``` - $ tts --text "Text for TTS" --model_path path/to/model.pth --config_path path/to/config.json --out_path output/path/speech.wav - --vocoder_path path/to/vocoder.pth --vocoder_config_path path/to/vocoder_config.json - ``` - -#### Multi-speaker Models - -- List the available speakers and choose a among them: - - ``` - $ tts --model_name "//" --list_speaker_idxs - ``` - -- Run the multi-speaker TTS model with the target speaker ID: - - ``` - $ tts --text "Text for TTS." --out_path output/path/speech.wav --model_name "//" --speaker_idx - ``` - -- Run your own multi-speaker TTS model: - - ``` - $ tts --text "Text for TTS" --out_path output/path/speech.wav --model_path path/to/model.pth --config_path path/to/config.json --speakers_file_path path/to/speaker.json --speaker_idx - ``` - -## Directory Structure -``` -|- notebooks/ (Jupyter Notebooks for model evaluation, parameter selection and data analysis.) -|- utils/ (common utilities.) -|- TTS - |- bin/ (folder for all the executables.) - |- train*.py (train your target model.) - |- ... - |- tts/ (text to speech models) - |- layers/ (model layer definitions) - |- models/ (model definitions) - |- utils/ (model specific utilities.) - |- speaker_encoder/ (Speaker Encoder models.) - |- (same) - |- vocoder/ (Vocoder models.) - |- (same) -``` diff --git a/TTS/TTS/.models.json b/TTS/TTS/.models.json deleted file mode 100644 index c97c6a383a89976b704e34474739540a88717e3a..0000000000000000000000000000000000000000 --- a/TTS/TTS/.models.json +++ /dev/null @@ -1,882 +0,0 @@ -{ - "tts_models": { - "multilingual": { - "multi-dataset": { - "your_tts": { - "description": "Your TTS model accompanying the paper https://arxiv.org/abs/2112.02418", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.10.1_models/tts_models--multilingual--multi-dataset--your_tts.zip", - "default_vocoder": null, - "commit": "e9a1953e", - "license": "CC BY-NC-ND 4.0", - "contact": "egolge@coqui.ai" - }, - "bark": { - "description": "🐶 Bark TTS model released by suno-ai. You can find the original implementation in https://github.com/suno-ai/bark.", - "hf_url": [ - "https://coqui.gateway.scarf.sh/hf/bark/coarse_2.pt", - "https://coqui.gateway.scarf.sh/hf/bark/fine_2.pt", - "https://coqui.gateway.scarf.sh/hf/bark/text_2.pt", - "https://coqui.gateway.scarf.sh/hf/bark/config.json" - ], - "default_vocoder": null, - "commit": "e9a1953e", - "license": "MIT", - "contact": "https://www.suno.ai/" - } - } - }, - "bg": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--bg--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "cs": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--cs--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "da": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--da--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "et": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--et--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "ga": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--ga--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "en": { - "ek1": { - "tacotron2": { - "description": "EK1 en-rp tacotron2 by NMStoker", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ek1--tacotron2.zip", - "default_vocoder": "vocoder_models/en/ek1/wavegrad", - "commit": "c802255", - "license": "apache 2.0" - } - }, - "ljspeech": { - "tacotron2-DDC": { - "description": "Tacotron2 with Double Decoder Consistency.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ljspeech--tacotron2-DDC.zip", - "default_vocoder": "vocoder_models/en/ljspeech/hifigan_v2", - "commit": "bae2ad0f", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.com" - }, - "tacotron2-DDC_ph": { - "description": "Tacotron2 with Double Decoder Consistency with phonemes.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ljspeech--tacotron2-DDC_ph.zip", - "default_vocoder": "vocoder_models/en/ljspeech/univnet", - "commit": "3900448", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.com" - }, - "glow-tts": { - "description": "", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ljspeech--glow-tts.zip", - "stats_file": null, - "default_vocoder": "vocoder_models/en/ljspeech/multiband-melgan", - "commit": "", - "author": "Eren Gölge @erogol", - "license": "MPL", - "contact": "egolge@coqui.com" - }, - "speedy-speech": { - "description": "Speedy Speech model trained on LJSpeech dataset using the Alignment Network for learning the durations.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ljspeech--speedy-speech.zip", - "stats_file": null, - "default_vocoder": "vocoder_models/en/ljspeech/hifigan_v2", - "commit": "4581e3d", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.com" - }, - "tacotron2-DCA": { - "description": "", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ljspeech--tacotron2-DCA.zip", - "default_vocoder": "vocoder_models/en/ljspeech/multiband-melgan", - "commit": "", - "author": "Eren Gölge @erogol", - "license": "MPL", - "contact": "egolge@coqui.com" - }, - "vits": { - "description": "VITS is an End2End TTS model trained on LJSpeech dataset with phonemes.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ljspeech--vits.zip", - "default_vocoder": null, - "commit": "3900448", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.com" - }, - "vits--neon": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--en--ljspeech--vits.zip", - "default_vocoder": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause", - "contact": null, - "commit": null - }, - "fast_pitch": { - "description": "FastPitch model trained on LJSpeech using the Aligner Network", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--ljspeech--fast_pitch.zip", - "default_vocoder": "vocoder_models/en/ljspeech/hifigan_v2", - "commit": "b27b3ba", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.com" - }, - "overflow": { - "description": "Overflow model trained on LJSpeech", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.10.0_models/tts_models--en--ljspeech--overflow.zip", - "default_vocoder": "vocoder_models/en/ljspeech/hifigan_v2", - "commit": "3b1a28f", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.ai" - }, - "neural_hmm": { - "description": "Neural HMM model trained on LJSpeech", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.11.0_models/tts_models--en--ljspeech--neural_hmm.zip", - "default_vocoder": "vocoder_models/en/ljspeech/hifigan_v2", - "commit": "3b1a28f", - "author": "Shivam Metha @shivammehta25", - "license": "apache 2.0", - "contact": "d83ee8fe45e3c0d776d4a865aca21d7c2ac324c4" - } - }, - "vctk": { - "vits": { - "description": "VITS End2End TTS model trained on VCTK dataset with 109 different speakers with EN accent.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--vctk--vits.zip", - "default_vocoder": null, - "commit": "3900448", - "author": "Eren @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.ai" - }, - "fast_pitch": { - "description": "FastPitch model trained on VCTK dataseset.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--vctk--fast_pitch.zip", - "default_vocoder": null, - "commit": "bdab788d", - "author": "Eren @erogol", - "license": "CC BY-NC-ND 4.0", - "contact": "egolge@coqui.ai" - } - }, - "sam": { - "tacotron-DDC": { - "description": "Tacotron2 with Double Decoder Consistency trained with Aceenture's Sam dataset.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--en--sam--tacotron-DDC.zip", - "default_vocoder": "vocoder_models/en/sam/hifigan_v2", - "commit": "bae2ad0f", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.com" - } - }, - "blizzard2013": { - "capacitron-t2-c50": { - "description": "Capacitron additions to Tacotron 2 with Capacity at 50 as in https://arxiv.org/pdf/1906.03402.pdf", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.7.0_models/tts_models--en--blizzard2013--capacitron-t2-c50.zip", - "commit": "d6284e7", - "default_vocoder": "vocoder_models/en/blizzard2013/hifigan_v2", - "author": "Adam Froghyar @a-froghyar", - "license": "apache 2.0", - "contact": "adamfroghyar@gmail.com" - }, - "capacitron-t2-c150_v2": { - "description": "Capacitron additions to Tacotron 2 with Capacity at 150 as in https://arxiv.org/pdf/1906.03402.pdf", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.7.1_models/tts_models--en--blizzard2013--capacitron-t2-c150_v2.zip", - "commit": "a67039d", - "default_vocoder": "vocoder_models/en/blizzard2013/hifigan_v2", - "author": "Adam Froghyar @a-froghyar", - "license": "apache 2.0", - "contact": "adamfroghyar@gmail.com" - } - }, - "multi-dataset": { - "tortoise-v2": { - "description": "Tortoise tts model https://github.com/neonbjb/tortoise-tts", - "github_rls_url": [ - "https://coqui.gateway.scarf.sh/v0.14.1_models/autoregressive.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/clvp2.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/cvvp.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/diffusion_decoder.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/rlg_auto.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/rlg_diffuser.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/vocoder.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/mel_norms.pth", - "https://coqui.gateway.scarf.sh/v0.14.1_models/config.json" - ], - "commit": "c1875f6", - "default_vocoder": null, - "author": "@neonbjb - James Betker, @manmay-nakhashi Manmay Nakhashi", - "license": "apache 2.0" - } - }, - "jenny": { - "jenny": { - "description": "VITS model trained with Jenny(Dioco) dataset. Named as Jenny as demanded by the license. Original URL for the model https://www.kaggle.com/datasets/noml4u/tts-models--en--jenny-dioco--vits", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.14.0_models/tts_models--en--jenny--jenny.zip", - "default_vocoder": null, - "commit": "ba40a1c", - "license": "custom - see https://github.com/dioco-group/jenny-tts-dataset#important", - "author": "@noml4u" - } - } - }, - "es": { - "mai": { - "tacotron2-DDC": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--es--mai--tacotron2-DDC.zip", - "default_vocoder": "vocoder_models/universal/libri-tts/fullband-melgan", - "commit": "", - "author": "Eren Gölge @erogol", - "license": "MPL", - "contact": "egolge@coqui.com" - } - }, - "css10": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--es--css10--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "fr": { - "mai": { - "tacotron2-DDC": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--fr--mai--tacotron2-DDC.zip", - "default_vocoder": "vocoder_models/universal/libri-tts/fullband-melgan", - "commit": null, - "author": "Eren Gölge @erogol", - "license": "MPL", - "contact": "egolge@coqui.com" - } - }, - "css10": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--fr--css10--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "uk": { - "mai": { - "glow-tts": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--uk--mai--glow-tts.zip", - "author": "@robinhad", - "commit": "bdab788d", - "license": "MIT", - "contact": "", - "default_vocoder": "vocoder_models/uk/mai/multiband-melgan" - }, - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--uk--mai--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "zh-CN": { - "baker": { - "tacotron2-DDC-GST": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--zh-CN--baker--tacotron2-DDC-GST.zip", - "commit": "unknown", - "author": "@kirianguiller", - "license": "apache 2.0", - "default_vocoder": null - } - } - }, - "nl": { - "mai": { - "tacotron2-DDC": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--nl--mai--tacotron2-DDC.zip", - "author": "@r-dh", - "license": "apache 2.0", - "default_vocoder": "vocoder_models/nl/mai/parallel-wavegan", - "stats_file": null, - "commit": "540d811" - } - }, - "css10": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--nl--css10--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "de": { - "thorsten": { - "tacotron2-DCA": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--de--thorsten--tacotron2-DCA.zip", - "default_vocoder": "vocoder_models/de/thorsten/fullband-melgan", - "author": "@thorstenMueller", - "license": "apache 2.0", - "commit": "unknown" - }, - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.7.0_models/tts_models--de--thorsten--vits.zip", - "default_vocoder": null, - "author": "@thorstenMueller", - "license": "apache 2.0", - "commit": "unknown" - }, - "tacotron2-DDC": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--de--thorsten--tacotron2-DDC.zip", - "default_vocoder": "vocoder_models/de/thorsten/hifigan_v1", - "description": "Thorsten-Dec2021-22k-DDC", - "author": "@thorstenMueller", - "license": "apache 2.0", - "commit": "unknown" - } - }, - "css10": { - "vits-neon": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--de--css10--vits.zip", - "default_vocoder": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause", - "commit": null - } - } - }, - "ja": { - "kokoro": { - "tacotron2-DDC": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--ja--kokoro--tacotron2-DDC.zip", - "default_vocoder": "vocoder_models/ja/kokoro/hifigan_v1", - "description": "Tacotron2 with Double Decoder Consistency trained with Kokoro Speech Dataset.", - "author": "@kaiidams", - "license": "apache 2.0", - "commit": "401fbd89" - } - } - }, - "tr": { - "common-voice": { - "glow-tts": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--tr--common-voice--glow-tts.zip", - "default_vocoder": "vocoder_models/tr/common-voice/hifigan", - "license": "MIT", - "description": "Turkish GlowTTS model using an unknown speaker from the Common-Voice dataset.", - "author": "Fatih Akademi", - "commit": null - } - } - }, - "it": { - "mai_female": { - "glow-tts": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--it--mai_female--glow-tts.zip", - "default_vocoder": null, - "description": "GlowTTS model as explained on https://github.com/coqui-ai/TTS/issues/1148.", - "author": "@nicolalandro", - "license": "apache 2.0", - "commit": null - }, - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--it--mai_female--vits.zip", - "default_vocoder": null, - "description": "GlowTTS model as explained on https://github.com/coqui-ai/TTS/issues/1148.", - "author": "@nicolalandro", - "license": "apache 2.0", - "commit": null - } - }, - "mai_male": { - "glow-tts": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--it--mai_male--glow-tts.zip", - "default_vocoder": null, - "description": "GlowTTS model as explained on https://github.com/coqui-ai/TTS/issues/1148.", - "author": "@nicolalandro", - "license": "apache 2.0", - "commit": null - }, - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/tts_models--it--mai_male--vits.zip", - "default_vocoder": null, - "description": "GlowTTS model as explained on https://github.com/coqui-ai/TTS/issues/1148.", - "author": "@nicolalandro", - "license": "apache 2.0", - "commit": null - } - } - }, - "ewe": { - "openbible": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.2_models/tts_models--ewe--openbible--vits.zip", - "default_vocoder": null, - "license": "CC-BY-SA 4.0", - "description": "Original work (audio and text) by Biblica available for free at www.biblica.com and open.bible.", - "author": "@coqui_ai", - "commit": "1b22f03" - } - } - }, - "hau": { - "openbible": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.2_models/tts_models--hau--openbible--vits.zip", - "default_vocoder": null, - "license": "CC-BY-SA 4.0", - "description": "Original work (audio and text) by Biblica available for free at www.biblica.com and open.bible.", - "author": "@coqui_ai", - "commit": "1b22f03" - } - } - }, - "lin": { - "openbible": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.2_models/tts_models--lin--openbible--vits.zip", - "default_vocoder": null, - "license": "CC-BY-SA 4.0", - "description": "Original work (audio and text) by Biblica available for free at www.biblica.com and open.bible.", - "author": "@coqui_ai", - "commit": "1b22f03" - } - } - }, - "tw_akuapem": { - "openbible": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.2_models/tts_models--tw_akuapem--openbible--vits.zip", - "default_vocoder": null, - "license": "CC-BY-SA 4.0", - "description": "Original work (audio and text) by Biblica available for free at www.biblica.com and open.bible.", - "author": "@coqui_ai", - "commit": "1b22f03" - } - } - }, - "tw_asante": { - "openbible": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.2_models/tts_models--tw_asante--openbible--vits.zip", - "default_vocoder": null, - "license": "CC-BY-SA 4.0", - "description": "Original work (audio and text) by Biblica available for free at www.biblica.com and open.bible.", - "author": "@coqui_ai", - "commit": "1b22f03" - } - } - }, - "yor": { - "openbible": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.2_models/tts_models--yor--openbible--vits.zip", - "default_vocoder": null, - "license": "CC-BY-SA 4.0", - "description": "Original work (audio and text) by Biblica available for free at www.biblica.com and open.bible.", - "author": "@coqui_ai", - "commit": "1b22f03" - } - } - }, - "hu": { - "css10": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--hu--css10--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "el": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--el--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "fi": { - "css10": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--fi--css10--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "hr": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--hr--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "lt": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--lt--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "lv": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--lv--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "mt": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--mt--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "pl": { - "mai_female": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--pl--mai_female--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "pt": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--pt--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "ro": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--ro--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "sk": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--sk--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "sl": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--sl--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "sv": { - "cv": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/tts_models--sv--cv--vits.zip", - "default_vocoder": null, - "commit": null, - "author": "@NeonGeckoCom", - "license": "bsd-3-clause" - } - } - }, - "ca": { - "custom": { - "vits": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.10.1_models/tts_models--ca--custom--vits.zip", - "default_vocoder": null, - "commit": null, - "description": " It is trained from zero with 101460 utterances consisting of 257 speakers, approx 138 hours of speech. We used three datasets;\nFestcat and Google Catalan TTS (both TTS datasets) and also a part of Common Voice 8. It is trained with TTS v0.8.0.\nhttps://github.com/coqui-ai/TTS/discussions/930#discussioncomment-4466345", - "author": "@gullabi", - "license": "CC-BY-4.0" - } - } - }, - "fa": { - "custom": { - "glow-tts": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.10.1_models/tts_models--fa--custom--glow-tts.zip", - "default_vocoder": null, - "commit": null, - "description": "persian-tts-female-glow_tts model for text to speech purposes. Single-speaker female voice Trained on persian-tts-dataset-famale. \nThis model has no compatible vocoder thus the output quality is not very good. \nDataset: https://www.kaggle.com/datasets/magnoliasis/persian-tts-dataset-famale.", - "author": "@karim23657", - "license": "CC-BY-4.0" - } - } - }, - "bn": { - "custom": { - "vits-male": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.13.3_models/tts_models--bn--custom--vits_male.zip", - "default_vocoder": null, - "commit": null, - "description": "Single speaker Bangla male model. For more information -> https://github.com/mobassir94/comprehensive-bangla-tts", - "author": "@mobassir94", - "license": "Apache 2.0" - }, - "vits-female": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.13.3_models/tts_models--bn--custom--vits_female.zip", - "default_vocoder": null, - "commit": null, - "description": "Single speaker Bangla female model. For more information -> https://github.com/mobassir94/comprehensive-bangla-tts", - "author": "@mobassir94", - "license": "Apache 2.0" - } - } - } - }, - "vocoder_models": { - "universal": { - "libri-tts": { - "wavegrad": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--universal--libri-tts--wavegrad.zip", - "commit": "ea976b0", - "author": "Eren Gölge @erogol", - "license": "MPL", - "contact": "egolge@coqui.com" - }, - "fullband-melgan": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--universal--libri-tts--fullband-melgan.zip", - "commit": "4132240", - "author": "Eren Gölge @erogol", - "license": "MPL", - "contact": "egolge@coqui.com" - } - } - }, - "en": { - "ek1": { - "wavegrad": { - "description": "EK1 en-rp wavegrad by NMStoker", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--en--ek1--wavegrad.zip", - "commit": "c802255", - "license": "apache 2.0" - } - }, - "ljspeech": { - "multiband-melgan": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--en--ljspeech--multiband-melgan.zip", - "commit": "ea976b0", - "author": "Eren Gölge @erogol", - "license": "MPL", - "contact": "egolge@coqui.com" - }, - "hifigan_v2": { - "description": "HiFiGAN_v2 LJSpeech vocoder from https://arxiv.org/abs/2010.05646.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--en--ljspeech--hifigan_v2.zip", - "commit": "bae2ad0f", - "author": "@erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.ai" - }, - "univnet": { - "description": "UnivNet model finetuned on TacotronDDC_ph spectrograms for better compatibility.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--en--ljspeech--univnet_v2.zip", - "commit": "4581e3d", - "author": "Eren @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.ai" - } - }, - "blizzard2013": { - "hifigan_v2": { - "description": "HiFiGAN_v2 LJSpeech vocoder from https://arxiv.org/abs/2010.05646.", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.7.0_models/vocoder_models--en--blizzard2013--hifigan_v2.zip", - "commit": "d6284e7", - "author": "Adam Froghyar @a-froghyar", - "license": "apache 2.0", - "contact": "adamfroghyar@gmail.com" - } - }, - "vctk": { - "hifigan_v2": { - "description": "Finetuned and intended to be used with tts_models/en/vctk/sc-glow-tts", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--en--vctk--hifigan_v2.zip", - "commit": "2f07160", - "author": "Edresson Casanova", - "license": "apache 2.0", - "contact": "" - } - }, - "sam": { - "hifigan_v2": { - "description": "Finetuned and intended to be used with tts_models/en/sam/tacotron_DDC", - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--en--sam--hifigan_v2.zip", - "commit": "2f07160", - "author": "Eren Gölge @erogol", - "license": "apache 2.0", - "contact": "egolge@coqui.ai" - } - } - }, - "nl": { - "mai": { - "parallel-wavegan": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--nl--mai--parallel-wavegan.zip", - "author": "@r-dh", - "license": "apache 2.0", - "commit": "unknown" - } - } - }, - "de": { - "thorsten": { - "wavegrad": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--de--thorsten--wavegrad.zip", - "author": "@thorstenMueller", - "license": "apache 2.0", - "commit": "unknown" - }, - "fullband-melgan": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--de--thorsten--fullband-melgan.zip", - "author": "@thorstenMueller", - "license": "apache 2.0", - "commit": "unknown" - }, - "hifigan_v1": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.8.0_models/vocoder_models--de--thorsten--hifigan_v1.zip", - "description": "HifiGAN vocoder model for Thorsten Neutral Dec2021 22k Samplerate Tacotron2 DDC model", - "author": "@thorstenMueller", - "license": "apache 2.0", - "commit": "unknown" - } - } - }, - "ja": { - "kokoro": { - "hifigan_v1": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--ja--kokoro--hifigan_v1.zip", - "description": "HifiGAN model trained for kokoro dataset by @kaiidams", - "author": "@kaiidams", - "license": "apache 2.0", - "commit": "3900448" - } - } - }, - "uk": { - "mai": { - "multiband-melgan": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--uk--mai--multiband-melgan.zip", - "author": "@robinhad", - "commit": "bdab788d", - "license": "MIT", - "contact": "" - } - } - }, - "tr": { - "common-voice": { - "hifigan": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.6.1_models/vocoder_models--tr--common-voice--hifigan.zip", - "description": "HifiGAN model using an unknown speaker from the Common-Voice dataset.", - "author": "Fatih Akademi", - "license": "MIT", - "commit": null - } - } - } - }, - "voice_conversion_models": { - "multilingual": { - "vctk": { - "freevc24": { - "github_rls_url": "https://coqui.gateway.scarf.sh/v0.13.0_models/voice_conversion_models--multilingual--vctk--freevc24.zip", - "description": "FreeVC model trained on VCTK dataset from https://github.com/OlaWod/FreeVC", - "author": "Jing-Yi Li @OlaWod", - "license": "MIT", - "commit": null - } - } - } - } -} \ No newline at end of file diff --git a/TTS/TTS/VERSION b/TTS/TTS/VERSION deleted file mode 100644 index 7eb3095a3295f649df230c168c0e4fa1ae63456c..0000000000000000000000000000000000000000 --- a/TTS/TTS/VERSION +++ /dev/null @@ -1 +0,0 @@ -0.16.3 diff --git a/TTS/TTS/__init__.py b/TTS/TTS/__init__.py deleted file mode 100644 index eaf05db1b950d82bfd7e20857e09a0fef45b430a..0000000000000000000000000000000000000000 --- a/TTS/TTS/__init__.py +++ /dev/null @@ -1,6 +0,0 @@ -import os - -with open(os.path.join(os.path.dirname(__file__), "VERSION"), "r", encoding="utf-8") as f: - version = f.read().strip() - -__version__ = version diff --git a/TTS/TTS/api.py b/TTS/TTS/api.py deleted file mode 100644 index 2ee108ba70ab60196dad4259ccca48cff04c33a9..0000000000000000000000000000000000000000 --- a/TTS/TTS/api.py +++ /dev/null @@ -1,473 +0,0 @@ -import tempfile -import warnings -from pathlib import Path -from typing import Union - -import numpy as np -from torch import nn - -from TTS.cs_api import CS_API -from TTS.utils.audio.numpy_transforms import save_wav -from TTS.utils.manage import ModelManager -from TTS.utils.synthesizer import Synthesizer - - -class TTS(nn.Module): - """TODO: Add voice conversion and Capacitron support.""" - - def __init__( - self, - model_name: str = None, - model_path: str = None, - config_path: str = None, - vocoder_path: str = None, - vocoder_config_path: str = None, - progress_bar: bool = True, - cs_api_model: str = "XTTS", - gpu=False, - ): - """🐸TTS python interface that allows to load and use the released models. - - Example with a multi-speaker model: - >>> from TTS.api import TTS - >>> tts = TTS(TTS.list_models()[0]) - >>> wav = tts.tts("This is a test! This is also a test!!", speaker=tts.speakers[0], language=tts.languages[0]) - >>> tts.tts_to_file(text="Hello world!", speaker=tts.speakers[0], language=tts.languages[0], file_path="output.wav") - - Example with a single-speaker model: - >>> tts = TTS(model_name="tts_models/de/thorsten/tacotron2-DDC", progress_bar=False, gpu=False) - >>> tts.tts_to_file(text="Ich bin eine Testnachricht.", file_path="output.wav") - - Example loading a model from a path: - >>> tts = TTS(model_path="/path/to/checkpoint_100000.pth", config_path="/path/to/config.json", progress_bar=False, gpu=False) - >>> tts.tts_to_file(text="Ich bin eine Testnachricht.", file_path="output.wav") - - Example voice cloning with YourTTS in English, French and Portuguese: - >>> tts = TTS(model_name="tts_models/multilingual/multi-dataset/your_tts", progress_bar=False, gpu=True) - >>> tts.tts_to_file("This is voice cloning.", speaker_wav="my/cloning/audio.wav", language="en", file_path="thisisit.wav") - >>> tts.tts_to_file("C'est le clonage de la voix.", speaker_wav="my/cloning/audio.wav", language="fr", file_path="thisisit.wav") - >>> tts.tts_to_file("Isso é clonagem de voz.", speaker_wav="my/cloning/audio.wav", language="pt", file_path="thisisit.wav") - - Example Fairseq TTS models (uses ISO language codes in https://dl.fbaipublicfiles.com/mms/tts/all-tts-languages.html): - >>> tts = TTS(model_name="tts_models/eng/fairseq/vits", progress_bar=False, gpu=True) - >>> tts.tts_to_file("This is a test.", file_path="output.wav") - - Args: - model_name (str, optional): Model name to load. You can list models by ```tts.models```. Defaults to None. - model_path (str, optional): Path to the model checkpoint. Defaults to None. - config_path (str, optional): Path to the model config. Defaults to None. - vocoder_path (str, optional): Path to the vocoder checkpoint. Defaults to None. - vocoder_config_path (str, optional): Path to the vocoder config. Defaults to None. - progress_bar (bool, optional): Whether to pring a progress bar while downloading a model. Defaults to True. - cs_api_model (str, optional): Name of the model to use for the Coqui Studio API. Available models are - "XTTS", "XTTS-multilingual", "V1". You can also use `TTS.cs_api.CS_API" for more control. - Defaults to "XTTS". - gpu (bool, optional): Enable/disable GPU. Some models might be too slow on CPU. Defaults to False. - """ - super().__init__() - self.manager = ModelManager(models_file=self.get_models_file_path(), progress_bar=progress_bar, verbose=False) - - self.synthesizer = None - self.voice_converter = None - self.csapi = None - self.cs_api_model = cs_api_model - self.model_name = None - - if gpu: - warnings.warn("`gpu` will be deprecated. Please use `tts.to(device)` instead.") - - if model_name is not None: - if "tts_models" in model_name or "coqui_studio" in model_name: - self.load_tts_model_by_name(model_name, gpu) - elif "voice_conversion_models" in model_name: - self.load_vc_model_by_name(model_name, gpu) - - if model_path: - self.load_tts_model_by_path( - model_path, config_path, vocoder_path=vocoder_path, vocoder_config=vocoder_config_path, gpu=gpu - ) - - @property - def models(self): - return self.manager.list_tts_models() - - @property - def is_multi_speaker(self): - if hasattr(self.synthesizer.tts_model, "speaker_manager") and self.synthesizer.tts_model.speaker_manager: - return self.synthesizer.tts_model.speaker_manager.num_speakers > 1 - return False - - @property - def is_coqui_studio(self): - if self.model_name is None: - return False - return "coqui_studio" in self.model_name - - @property - def is_multi_lingual(self): - if hasattr(self.synthesizer.tts_model, "language_manager") and self.synthesizer.tts_model.language_manager: - return self.synthesizer.tts_model.language_manager.num_languages > 1 - return False - - @property - def speakers(self): - if not self.is_multi_speaker: - return None - return self.synthesizer.tts_model.speaker_manager.speaker_names - - @property - def languages(self): - if not self.is_multi_lingual: - return None - return self.synthesizer.tts_model.language_manager.language_names - - @staticmethod - def get_models_file_path(): - return Path(__file__).parent / ".models.json" - - def list_models(self): - try: - csapi = CS_API(model=self.cs_api_model) - models = csapi.list_speakers_as_tts_models() - except ValueError as e: - print(e) - models = [] - manager = ModelManager(models_file=TTS.get_models_file_path(), progress_bar=False, verbose=False) - return manager.list_tts_models() + models - - def download_model_by_name(self, model_name: str): - model_path, config_path, model_item = self.manager.download_model(model_name) - if "fairseq" in model_name or (model_item is not None and isinstance(model_item["model_url"], list)): - # return model directory if there are multiple files - # we assume that the model knows how to load itself - return None, None, None, None, model_path - if model_item.get("default_vocoder") is None: - return model_path, config_path, None, None, None - vocoder_path, vocoder_config_path, _ = self.manager.download_model(model_item["default_vocoder"]) - return model_path, config_path, vocoder_path, vocoder_config_path, None - - def load_vc_model_by_name(self, model_name: str, gpu: bool = False): - """Load one of the voice conversion models by name. - - Args: - model_name (str): Model name to load. You can list models by ```tts.models```. - gpu (bool, optional): Enable/disable GPU. Some models might be too slow on CPU. Defaults to False. - """ - self.model_name = model_name - model_path, config_path, _, _, _ = self.download_model_by_name(model_name) - self.voice_converter = Synthesizer(vc_checkpoint=model_path, vc_config=config_path, use_cuda=gpu) - - def load_tts_model_by_name(self, model_name: str, gpu: bool = False): - """Load one of 🐸TTS models by name. - - Args: - model_name (str): Model name to load. You can list models by ```tts.models```. - gpu (bool, optional): Enable/disable GPU. Some models might be too slow on CPU. Defaults to False. - - TODO: Add tests - """ - self.synthesizer = None - self.csapi = None - self.model_name = model_name - - if "coqui_studio" in model_name: - self.csapi = CS_API() - else: - model_path, config_path, vocoder_path, vocoder_config_path, model_dir = self.download_model_by_name( - model_name - ) - - # init synthesizer - # None values are fetch from the model - self.synthesizer = Synthesizer( - tts_checkpoint=model_path, - tts_config_path=config_path, - tts_speakers_file=None, - tts_languages_file=None, - vocoder_checkpoint=vocoder_path, - vocoder_config=vocoder_config_path, - encoder_checkpoint=None, - encoder_config=None, - model_dir=model_dir, - use_cuda=gpu, - ) - - def load_tts_model_by_path( - self, model_path: str, config_path: str, vocoder_path: str = None, vocoder_config: str = None, gpu: bool = False - ): - """Load a model from a path. - - Args: - model_path (str): Path to the model checkpoint. - config_path (str): Path to the model config. - vocoder_path (str, optional): Path to the vocoder checkpoint. Defaults to None. - vocoder_config (str, optional): Path to the vocoder config. Defaults to None. - gpu (bool, optional): Enable/disable GPU. Some models might be too slow on CPU. Defaults to False. - """ - - self.synthesizer = Synthesizer( - tts_checkpoint=model_path, - tts_config_path=config_path, - tts_speakers_file=None, - tts_languages_file=None, - vocoder_checkpoint=vocoder_path, - vocoder_config=vocoder_config, - encoder_checkpoint=None, - encoder_config=None, - use_cuda=gpu, - ) - - def _check_arguments( - self, - speaker: str = None, - language: str = None, - speaker_wav: str = None, - emotion: str = None, - speed: float = None, - **kwargs, - ) -> None: - """Check if the arguments are valid for the model.""" - if not self.is_coqui_studio: - # check for the coqui tts models - if self.is_multi_speaker and (speaker is None and speaker_wav is None): - raise ValueError("Model is multi-speaker but no `speaker` is provided.") - if self.is_multi_lingual and language is None: - raise ValueError("Model is multi-lingual but no `language` is provided.") - if not self.is_multi_speaker and speaker is not None and "voice_dir" not in kwargs: - raise ValueError("Model is not multi-speaker but `speaker` is provided.") - if not self.is_multi_lingual and language is not None: - raise ValueError("Model is not multi-lingual but `language` is provided.") - if not emotion is None and not speed is None: - raise ValueError("Emotion and speed can only be used with Coqui Studio models.") - else: - if emotion is None: - emotion = "Neutral" - if speed is None: - speed = 1.0 - # check for the studio models - if speaker_wav is not None: - raise ValueError("Coqui Studio models do not support `speaker_wav` argument.") - if speaker is not None: - raise ValueError("Coqui Studio models do not support `speaker` argument.") - if language is not None and language != "en": - raise ValueError("Coqui Studio models currently support only `language=en` argument.") - if emotion not in ["Neutral", "Happy", "Sad", "Angry", "Dull"]: - raise ValueError(f"Emotion - `{emotion}` - must be one of `Neutral`, `Happy`, `Sad`, `Angry`, `Dull`.") - - def tts_coqui_studio( - self, - text: str, - speaker_name: str = None, - language: str = None, - emotion: str = None, - speed: float = 1.0, - file_path: str = None, - ) -> Union[np.ndarray, str]: - """Convert text to speech using Coqui Studio models. Use `CS_API` class if you are only interested in the API. - - Args: - text (str): - Input text to synthesize. - speaker_name (str, optional): - Speaker name from Coqui Studio. Defaults to None. - language (str): Language of the text. If None, the default language of the speaker is used. Language is only - supported by `XTTS-multilang` model. Currently supports en, de, es, fr, it, pt, pl. Defaults to "en". - emotion (str, optional): - Emotion of the speaker. One of "Neutral", "Happy", "Sad", "Angry", "Dull". Emotions are only available - with "V1" model. Defaults to None. - speed (float, optional): - Speed of the speech. Defaults to 1.0. - file_path (str, optional): - Path to save the output file. When None it returns the `np.ndarray` of waveform. Defaults to None. - - Returns: - Union[np.ndarray, str]: Waveform of the synthesized speech or path to the output file. - """ - speaker_name = self.model_name.split("/")[2] - if file_path is not None: - return self.csapi.tts_to_file( - text=text, - speaker_name=speaker_name, - language=language, - speed=speed, - emotion=emotion, - file_path=file_path, - )[0] - return self.csapi.tts(text=text, speaker_name=speaker_name, language=language, speed=speed, emotion=emotion)[0] - - def tts( - self, - text: str, - speaker: str = None, - language: str = None, - speaker_wav: str = None, - emotion: str = None, - speed: float = None, - **kwargs, - ): - """Convert text to speech. - - Args: - text (str): - Input text to synthesize. - speaker (str, optional): - Speaker name for multi-speaker. You can check whether loaded model is multi-speaker by - `tts.is_multi_speaker` and list speakers by `tts.speakers`. Defaults to None. - language (str): Language of the text. If None, the default language of the speaker is used. Language is only - supported by `XTTS-multilang` model. Currently supports en, de, es, fr, it, pt, pl. Defaults to "en". - speaker_wav (str, optional): - Path to a reference wav file to use for voice cloning with supporting models like YourTTS. - Defaults to None. - emotion (str, optional): - Emotion to use for 🐸Coqui Studio models. If None, Studio models use "Neutral". Defaults to None. - speed (float, optional): - Speed factor to use for 🐸Coqui Studio models, between 0 and 2.0. If None, Studio models use 1.0. - Defaults to None. - """ - self._check_arguments( - speaker=speaker, language=language, speaker_wav=speaker_wav, emotion=emotion, speed=speed, **kwargs - ) - if self.csapi is not None: - return self.tts_coqui_studio( - text=text, speaker_name=speaker, language=language, emotion=emotion, speed=speed - ) - wav = self.synthesizer.tts( - text=text, - speaker_name=speaker, - language_name=language, - speaker_wav=speaker_wav, - reference_wav=None, - style_wav=None, - style_text=None, - reference_speaker_name=None, - **kwargs, - ) - return wav - - def tts_to_file( - self, - text: str, - speaker: str = None, - language: str = None, - speaker_wav: str = None, - emotion: str = None, - speed: float = 1.0, - file_path: str = "output.wav", - **kwargs, - ): - """Convert text to speech. - - Args: - text (str): - Input text to synthesize. - speaker (str, optional): - Speaker name for multi-speaker. You can check whether loaded model is multi-speaker by - `tts.is_multi_speaker` and list speakers by `tts.speakers`. Defaults to None. - language (str, optional): - Language code for multi-lingual models. You can check whether loaded model is multi-lingual - `tts.is_multi_lingual` and list available languages by `tts.languages`. Defaults to None. - speaker_wav (str, optional): - Path to a reference wav file to use for voice cloning with supporting models like YourTTS. - Defaults to None. - emotion (str, optional): - Emotion to use for 🐸Coqui Studio models. Defaults to "Neutral". - speed (float, optional): - Speed factor to use for 🐸Coqui Studio models, between 0.0 and 2.0. Defaults to None. - file_path (str, optional): - Output file path. Defaults to "output.wav". - kwargs (dict, optional): - Additional arguments for the model. - """ - self._check_arguments(speaker=speaker, language=language, speaker_wav=speaker_wav, **kwargs) - - if self.csapi is not None: - return self.tts_coqui_studio( - text=text, speaker_name=speaker, language=language, emotion=emotion, speed=speed, file_path=file_path - ) - wav = self.tts(text=text, speaker=speaker, language=language, speaker_wav=speaker_wav, **kwargs) - self.synthesizer.save_wav(wav=wav, path=file_path) - return file_path - - def voice_conversion( - self, - source_wav: str, - target_wav: str, - ): - """Voice conversion with FreeVC. Convert source wav to target speaker. - - Args:`` - source_wav (str): - Path to the source wav file. - target_wav (str):` - Path to the target wav file. - """ - wav = self.voice_converter.voice_conversion(source_wav=source_wav, target_wav=target_wav) - return wav - - def voice_conversion_to_file( - self, - source_wav: str, - target_wav: str, - file_path: str = "output.wav", - ): - """Voice conversion with FreeVC. Convert source wav to target speaker. - - Args: - source_wav (str): - Path to the source wav file. - target_wav (str): - Path to the target wav file. - file_path (str, optional): - Output file path. Defaults to "output.wav". - """ - wav = self.voice_conversion(source_wav=source_wav, target_wav=target_wav) - save_wav(wav=wav, path=file_path, sample_rate=self.voice_converter.vc_config.audio.output_sample_rate) - return file_path - - def tts_with_vc(self, text: str, language: str = None, speaker_wav: str = None): - """Convert text to speech with voice conversion. - - It combines tts with voice conversion to fake voice cloning. - - - Convert text to speech with tts. - - Convert the output wav to target speaker with voice conversion. - - Args: - text (str): - Input text to synthesize. - language (str, optional): - Language code for multi-lingual models. You can check whether loaded model is multi-lingual - `tts.is_multi_lingual` and list available languages by `tts.languages`. Defaults to None. - speaker_wav (str, optional): - Path to a reference wav file to use for voice cloning with supporting models like YourTTS. - Defaults to None. - """ - with tempfile.NamedTemporaryFile(suffix=".wav", delete=False) as fp: - # Lazy code... save it to a temp file to resample it while reading it for VC - self.tts_to_file(text=text, speaker=None, language=language, file_path=fp.name) - if self.voice_converter is None: - self.load_vc_model_by_name("voice_conversion_models/multilingual/vctk/freevc24") - wav = self.voice_converter.voice_conversion(source_wav=fp.name, target_wav=speaker_wav) - return wav - - def tts_with_vc_to_file( - self, text: str, language: str = None, speaker_wav: str = None, file_path: str = "output.wav" - ): - """Convert text to speech with voice conversion and save to file. - - Check `tts_with_vc` for more details. - - Args: - text (str): - Input text to synthesize. - language (str, optional): - Language code for multi-lingual models. You can check whether loaded model is multi-lingual - `tts.is_multi_lingual` and list available languages by `tts.languages`. Defaults to None. - speaker_wav (str, optional): - Path to a reference wav file to use for voice cloning with supporting models like YourTTS. - Defaults to None. - file_path (str, optional): - Output file path. Defaults to "output.wav". - """ - wav = self.tts_with_vc(text=text, language=language, speaker_wav=speaker_wav) - save_wav(wav=wav, path=file_path, sample_rate=self.voice_converter.vc_config.audio.output_sample_rate) diff --git a/TTS/TTS/bin/__init__.py b/TTS/TTS/bin/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/bin/collect_env_info.py b/TTS/TTS/bin/collect_env_info.py deleted file mode 100644 index 662fcd02ece0fad387b6bfc4bad9316c7e2a0bad..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/collect_env_info.py +++ /dev/null @@ -1,48 +0,0 @@ -"""Get detailed info about the working environment.""" -import os -import platform -import sys - -import numpy -import torch - -sys.path += [os.path.abspath(".."), os.path.abspath(".")] -import json - -import TTS - - -def system_info(): - return { - "OS": platform.system(), - "architecture": platform.architecture(), - "version": platform.version(), - "processor": platform.processor(), - "python": platform.python_version(), - } - - -def cuda_info(): - return { - "GPU": [torch.cuda.get_device_name(i) for i in range(torch.cuda.device_count())], - "available": torch.cuda.is_available(), - "version": torch.version.cuda, - } - - -def package_info(): - return { - "numpy": numpy.__version__, - "PyTorch_version": torch.__version__, - "PyTorch_debug": torch.version.debug, - "TTS": TTS.__version__, - } - - -def main(): - details = {"System": system_info(), "CUDA": cuda_info(), "Packages": package_info()} - print(json.dumps(details, indent=4, sort_keys=True)) - - -if __name__ == "__main__": - main() diff --git a/TTS/TTS/bin/compute_attention_masks.py b/TTS/TTS/bin/compute_attention_masks.py deleted file mode 100644 index 9ab520be7d9f41ecf4f124446400b5e1b597ae8b..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/compute_attention_masks.py +++ /dev/null @@ -1,165 +0,0 @@ -import argparse -import importlib -import os -from argparse import RawTextHelpFormatter - -import numpy as np -import torch -from torch.utils.data import DataLoader -from tqdm import tqdm - -from TTS.config import load_config -from TTS.tts.datasets.TTSDataset import TTSDataset -from TTS.tts.models import setup_model -from TTS.tts.utils.text.characters import make_symbols, phonemes, symbols -from TTS.utils.audio import AudioProcessor -from TTS.utils.io import load_checkpoint - -if __name__ == "__main__": - # pylint: disable=bad-option-value - parser = argparse.ArgumentParser( - description="""Extract attention masks from trained Tacotron/Tacotron2 models. -These masks can be used for different purposes including training a TTS model with a Duration Predictor.\n\n""" - """Each attention mask is written to the same path as the input wav file with ".npy" file extension. -(e.g. path/bla.wav (wav file) --> path/bla.npy (attention mask))\n""" - """ -Example run: - CUDA_VISIBLE_DEVICE="0" python TTS/bin/compute_attention_masks.py - --model_path /data/rw/home/Models/ljspeech-dcattn-December-14-2020_11+10AM-9d0e8c7/checkpoint_200000.pth - --config_path /data/rw/home/Models/ljspeech-dcattn-December-14-2020_11+10AM-9d0e8c7/config.json - --dataset_metafile metadata.csv - --data_path /root/LJSpeech-1.1/ - --batch_size 32 - --dataset ljspeech - --use_cuda True -""", - formatter_class=RawTextHelpFormatter, - ) - parser.add_argument("--model_path", type=str, required=True, help="Path to Tacotron/Tacotron2 model file ") - parser.add_argument( - "--config_path", - type=str, - required=True, - help="Path to Tacotron/Tacotron2 config file.", - ) - parser.add_argument( - "--dataset", - type=str, - default="", - required=True, - help="Target dataset processor name from TTS.tts.dataset.preprocess.", - ) - - parser.add_argument( - "--dataset_metafile", - type=str, - default="", - required=True, - help="Dataset metafile inclusing file paths with transcripts.", - ) - parser.add_argument("--data_path", type=str, default="", help="Defines the data path. It overwrites config.json.") - parser.add_argument("--use_cuda", type=bool, default=False, help="enable/disable cuda.") - - parser.add_argument( - "--batch_size", default=16, type=int, help="Batch size for the model. Use batch_size=1 if you have no CUDA." - ) - args = parser.parse_args() - - C = load_config(args.config_path) - ap = AudioProcessor(**C.audio) - - # if the vocabulary was passed, replace the default - if "characters" in C.keys(): - symbols, phonemes = make_symbols(**C.characters) - - # load the model - num_chars = len(phonemes) if C.use_phonemes else len(symbols) - # TODO: handle multi-speaker - model = setup_model(C) - model, _ = load_checkpoint(model, args.model_path, args.use_cuda, True) - - # data loader - preprocessor = importlib.import_module("TTS.tts.datasets.formatters") - preprocessor = getattr(preprocessor, args.dataset) - meta_data = preprocessor(args.data_path, args.dataset_metafile) - dataset = TTSDataset( - model.decoder.r, - C.text_cleaner, - compute_linear_spec=False, - ap=ap, - meta_data=meta_data, - characters=C.characters if "characters" in C.keys() else None, - add_blank=C["add_blank"] if "add_blank" in C.keys() else False, - use_phonemes=C.use_phonemes, - phoneme_cache_path=C.phoneme_cache_path, - phoneme_language=C.phoneme_language, - enable_eos_bos=C.enable_eos_bos_chars, - ) - - dataset.sort_and_filter_items(C.get("sort_by_audio_len", default=False)) - loader = DataLoader( - dataset, - batch_size=args.batch_size, - num_workers=4, - collate_fn=dataset.collate_fn, - shuffle=False, - drop_last=False, - ) - - # compute attentions - file_paths = [] - with torch.no_grad(): - for data in tqdm(loader): - # setup input data - text_input = data[0] - text_lengths = data[1] - linear_input = data[3] - mel_input = data[4] - mel_lengths = data[5] - stop_targets = data[6] - item_idxs = data[7] - - # dispatch data to GPU - if args.use_cuda: - text_input = text_input.cuda() - text_lengths = text_lengths.cuda() - mel_input = mel_input.cuda() - mel_lengths = mel_lengths.cuda() - - model_outputs = model.forward(text_input, text_lengths, mel_input) - - alignments = model_outputs["alignments"].detach() - for idx, alignment in enumerate(alignments): - item_idx = item_idxs[idx] - # interpolate if r > 1 - alignment = ( - torch.nn.functional.interpolate( - alignment.transpose(0, 1).unsqueeze(0), - size=None, - scale_factor=model.decoder.r, - mode="nearest", - align_corners=None, - recompute_scale_factor=None, - ) - .squeeze(0) - .transpose(0, 1) - ) - # remove paddings - alignment = alignment[: mel_lengths[idx], : text_lengths[idx]].cpu().numpy() - # set file paths - wav_file_name = os.path.basename(item_idx) - align_file_name = os.path.splitext(wav_file_name)[0] + "_attn.npy" - file_path = item_idx.replace(wav_file_name, align_file_name) - # save output - wav_file_abs_path = os.path.abspath(item_idx) - file_abs_path = os.path.abspath(file_path) - file_paths.append([wav_file_abs_path, file_abs_path]) - np.save(file_path, alignment) - - # ourput metafile - metafile = os.path.join(args.data_path, "metadata_attn_mask.txt") - - with open(metafile, "w", encoding="utf-8") as f: - for p in file_paths: - f.write(f"{p[0]}|{p[1]}\n") - print(f" >> Metafile created: {metafile}") diff --git a/TTS/TTS/bin/compute_embeddings.py b/TTS/TTS/bin/compute_embeddings.py deleted file mode 100644 index 5b5a37df736fd75c8228ceefd818c6ec4a63867f..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/compute_embeddings.py +++ /dev/null @@ -1,197 +0,0 @@ -import argparse -import os -from argparse import RawTextHelpFormatter - -import torch -from tqdm import tqdm - -from TTS.config import load_config -from TTS.config.shared_configs import BaseDatasetConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.utils.managers import save_file -from TTS.tts.utils.speakers import SpeakerManager - - -def compute_embeddings( - model_path, - config_path, - output_path, - old_speakers_file=None, - old_append=False, - config_dataset_path=None, - formatter_name=None, - dataset_name=None, - dataset_path=None, - meta_file_train=None, - meta_file_val=None, - disable_cuda=False, - no_eval=False, -): - use_cuda = torch.cuda.is_available() and not disable_cuda - - if config_dataset_path is not None: - c_dataset = load_config(config_dataset_path) - meta_data_train, meta_data_eval = load_tts_samples(c_dataset.datasets, eval_split=not no_eval) - else: - c_dataset = BaseDatasetConfig() - c_dataset.formatter = formatter_name - c_dataset.dataset_name = dataset_name - c_dataset.path = dataset_path - if meta_file_train is not None: - c_dataset.meta_file_train = meta_file_train - if meta_file_val is not None: - c_dataset.meta_file_val = meta_file_val - meta_data_train, meta_data_eval = load_tts_samples(c_dataset, eval_split=not no_eval) - - if meta_data_eval is None: - samples = meta_data_train - else: - samples = meta_data_train + meta_data_eval - - encoder_manager = SpeakerManager( - encoder_model_path=model_path, - encoder_config_path=config_path, - d_vectors_file_path=old_speakers_file, - use_cuda=use_cuda, - ) - - class_name_key = encoder_manager.encoder_config.class_name_key - - # compute speaker embeddings - if old_speakers_file is not None and old_append: - speaker_mapping = encoder_manager.embeddings - else: - speaker_mapping = {} - - for fields in tqdm(samples): - class_name = fields[class_name_key] - audio_file = fields["audio_file"] - embedding_key = fields["audio_unique_name"] - - # Only update the speaker name when the embedding is already in the old file. - if embedding_key in speaker_mapping: - speaker_mapping[embedding_key]["name"] = class_name - continue - - if old_speakers_file is not None and embedding_key in encoder_manager.clip_ids: - # get the embedding from the old file - embedd = encoder_manager.get_embedding_by_clip(embedding_key) - else: - # extract the embedding - embedd = encoder_manager.compute_embedding_from_clip(audio_file) - - # create speaker_mapping if target dataset is defined - speaker_mapping[embedding_key] = {} - speaker_mapping[embedding_key]["name"] = class_name - speaker_mapping[embedding_key]["embedding"] = embedd - - if speaker_mapping: - # save speaker_mapping if target dataset is defined - if os.path.isdir(output_path): - mapping_file_path = os.path.join(output_path, "speakers.pth") - else: - mapping_file_path = output_path - - if os.path.dirname(mapping_file_path) != "": - os.makedirs(os.path.dirname(mapping_file_path), exist_ok=True) - - save_file(speaker_mapping, mapping_file_path) - print("Speaker embeddings saved at:", mapping_file_path) - - -if __name__ == "__main__": - parser = argparse.ArgumentParser( - description="""Compute embedding vectors for each audio file in a dataset and store them keyed by `{dataset_name}#{file_path}` in a .pth file\n\n""" - """ - Example runs: - python TTS/bin/compute_embeddings.py --model_path speaker_encoder_model.pth --config_path speaker_encoder_config.json --config_dataset_path dataset_config.json - - python TTS/bin/compute_embeddings.py --model_path speaker_encoder_model.pth --config_path speaker_encoder_config.json --formatter_name coqui --dataset_path /path/to/vctk/dataset --dataset_name my_vctk --meta_file_train /path/to/vctk/metafile_train.csv --meta_file_val /path/to/vctk/metafile_eval.csv - """, - formatter_class=RawTextHelpFormatter, - ) - parser.add_argument( - "--model_path", - type=str, - help="Path to model checkpoint file. It defaults to the released speaker encoder.", - default="https://github.com/coqui-ai/TTS/releases/download/speaker_encoder_model/model_se.pth.tar", - ) - parser.add_argument( - "--config_path", - type=str, - help="Path to model config file. It defaults to the released speaker encoder config.", - default="https://github.com/coqui-ai/TTS/releases/download/speaker_encoder_model/config_se.json", - ) - parser.add_argument( - "--config_dataset_path", - type=str, - help="Path to dataset config file. You either need to provide this or `formatter_name`, `dataset_name` and `dataset_path` arguments.", - default=None, - ) - parser.add_argument( - "--output_path", - type=str, - help="Path for output `pth` or `json` file.", - default="speakers.pth", - ) - parser.add_argument( - "--old_file", - type=str, - help="The old existing embedding file, from which the embeddings will be directly loaded for already computed audio clips.", - default=None, - ) - parser.add_argument( - "--old_append", - help="Append new audio clip embeddings to the old embedding file, generate a new non-duplicated merged embedding file. Default False", - default=False, - action="store_true", - ) - parser.add_argument("--disable_cuda", type=bool, help="Flag to disable cuda.", default=False) - parser.add_argument("--no_eval", help="Do not compute eval?. Default False", default=False, action="store_true") - parser.add_argument( - "--formatter_name", - type=str, - help="Name of the formatter to use. You either need to provide this or `config_dataset_path`", - default=None, - ) - parser.add_argument( - "--dataset_name", - type=str, - help="Name of the dataset to use. You either need to provide this or `config_dataset_path`", - default=None, - ) - parser.add_argument( - "--dataset_path", - type=str, - help="Path to the dataset. You either need to provide this or `config_dataset_path`", - default=None, - ) - parser.add_argument( - "--meta_file_train", - type=str, - help="Path to the train meta file. If not set, dataset formatter uses the default metafile if it is defined in the formatter. You either need to provide this or `config_dataset_path`", - default=None, - ) - parser.add_argument( - "--meta_file_val", - type=str, - help="Path to the evaluation meta file. If not set, dataset formatter uses the default metafile if it is defined in the formatter. You either need to provide this or `config_dataset_path`", - default=None, - ) - args = parser.parse_args() - - compute_embeddings( - args.model_path, - args.config_path, - args.output_path, - old_speakers_file=args.old_file, - old_append=args.old_append, - config_dataset_path=args.config_dataset_path, - formatter_name=args.formatter_name, - dataset_name=args.dataset_name, - dataset_path=args.dataset_path, - meta_file_train=args.meta_file_train, - meta_file_val=args.meta_file_val, - disable_cuda=args.disable_cuda, - no_eval=args.no_eval, - ) diff --git a/TTS/TTS/bin/compute_statistics.py b/TTS/TTS/bin/compute_statistics.py deleted file mode 100644 index 3ab7ea7a3b10ec3cc23d8a744c7bdc79de52dbf2..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/compute_statistics.py +++ /dev/null @@ -1,96 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- - -import argparse -import glob -import os - -import numpy as np -from tqdm import tqdm - -# from TTS.utils.io import load_config -from TTS.config import load_config -from TTS.tts.datasets import load_tts_samples -from TTS.utils.audio import AudioProcessor - - -def main(): - """Run preprocessing process.""" - parser = argparse.ArgumentParser(description="Compute mean and variance of spectrogtram features.") - parser.add_argument("config_path", type=str, help="TTS config file path to define audio processin parameters.") - parser.add_argument("out_path", type=str, help="save path (directory and filename).") - parser.add_argument( - "--data_path", - type=str, - required=False, - help="folder including the target set of wavs overriding dataset config.", - ) - args, overrides = parser.parse_known_args() - - CONFIG = load_config(args.config_path) - CONFIG.parse_known_args(overrides, relaxed_parser=True) - - # load config - CONFIG.audio.signal_norm = False # do not apply earlier normalization - CONFIG.audio.stats_path = None # discard pre-defined stats - - # load audio processor - ap = AudioProcessor(**CONFIG.audio.to_dict()) - - # load the meta data of target dataset - if args.data_path: - dataset_items = glob.glob(os.path.join(args.data_path, "**", "*.wav"), recursive=True) - else: - dataset_items = load_tts_samples(CONFIG.datasets)[0] # take only train data - print(f" > There are {len(dataset_items)} files.") - - mel_sum = 0 - mel_square_sum = 0 - linear_sum = 0 - linear_square_sum = 0 - N = 0 - for item in tqdm(dataset_items): - # compute features - wav = ap.load_wav(item if isinstance(item, str) else item["audio_file"]) - linear = ap.spectrogram(wav) - mel = ap.melspectrogram(wav) - - # compute stats - N += mel.shape[1] - mel_sum += mel.sum(1) - linear_sum += linear.sum(1) - mel_square_sum += (mel**2).sum(axis=1) - linear_square_sum += (linear**2).sum(axis=1) - - mel_mean = mel_sum / N - mel_scale = np.sqrt(mel_square_sum / N - mel_mean**2) - linear_mean = linear_sum / N - linear_scale = np.sqrt(linear_square_sum / N - linear_mean**2) - - output_file_path = args.out_path - stats = {} - stats["mel_mean"] = mel_mean - stats["mel_std"] = mel_scale - stats["linear_mean"] = linear_mean - stats["linear_std"] = linear_scale - - print(f" > Avg mel spec mean: {mel_mean.mean()}") - print(f" > Avg mel spec scale: {mel_scale.mean()}") - print(f" > Avg linear spec mean: {linear_mean.mean()}") - print(f" > Avg linear spec scale: {linear_scale.mean()}") - - # set default config values for mean-var scaling - CONFIG.audio.stats_path = output_file_path - CONFIG.audio.signal_norm = True - # remove redundant values - del CONFIG.audio.max_norm - del CONFIG.audio.min_level_db - del CONFIG.audio.symmetric_norm - del CONFIG.audio.clip_norm - stats["audio_config"] = CONFIG.audio.to_dict() - np.save(output_file_path, stats, allow_pickle=True) - print(f" > stats saved to {output_file_path}") - - -if __name__ == "__main__": - main() diff --git a/TTS/TTS/bin/eval_encoder.py b/TTS/TTS/bin/eval_encoder.py deleted file mode 100644 index 60fed1393215cd5e2e349795b585ae12f2e227fa..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/eval_encoder.py +++ /dev/null @@ -1,88 +0,0 @@ -import argparse -from argparse import RawTextHelpFormatter - -import torch -from tqdm import tqdm - -from TTS.config import load_config -from TTS.tts.datasets import load_tts_samples -from TTS.tts.utils.speakers import SpeakerManager - - -def compute_encoder_accuracy(dataset_items, encoder_manager): - class_name_key = encoder_manager.encoder_config.class_name_key - map_classid_to_classname = getattr(encoder_manager.encoder_config, "map_classid_to_classname", None) - - class_acc_dict = {} - - # compute embeddings for all wav_files - for item in tqdm(dataset_items): - class_name = item[class_name_key] - wav_file = item["audio_file"] - - # extract the embedding - embedd = encoder_manager.compute_embedding_from_clip(wav_file) - if encoder_manager.encoder_criterion is not None and map_classid_to_classname is not None: - embedding = torch.FloatTensor(embedd).unsqueeze(0) - if encoder_manager.use_cuda: - embedding = embedding.cuda() - - class_id = encoder_manager.encoder_criterion.softmax.inference(embedding).item() - predicted_label = map_classid_to_classname[str(class_id)] - else: - predicted_label = None - - if class_name is not None and predicted_label is not None: - is_equal = int(class_name == predicted_label) - if class_name not in class_acc_dict: - class_acc_dict[class_name] = [is_equal] - else: - class_acc_dict[class_name].append(is_equal) - else: - raise RuntimeError("Error: class_name or/and predicted_label are None") - - acc_avg = 0 - for key, values in class_acc_dict.items(): - acc = sum(values) / len(values) - print("Class", key, "Accuracy:", acc) - acc_avg += acc - - print("Average Accuracy:", acc_avg / len(class_acc_dict)) - - -if __name__ == "__main__": - parser = argparse.ArgumentParser( - description="""Compute the accuracy of the encoder.\n\n""" - """ - Example runs: - python TTS/bin/eval_encoder.py emotion_encoder_model.pth emotion_encoder_config.json dataset_config.json - """, - formatter_class=RawTextHelpFormatter, - ) - parser.add_argument("model_path", type=str, help="Path to model checkpoint file.") - parser.add_argument( - "config_path", - type=str, - help="Path to model config file.", - ) - - parser.add_argument( - "config_dataset_path", - type=str, - help="Path to dataset config file.", - ) - parser.add_argument("--use_cuda", type=bool, help="flag to set cuda.", default=True) - parser.add_argument("--eval", type=bool, help="compute eval.", default=True) - - args = parser.parse_args() - - c_dataset = load_config(args.config_dataset_path) - - meta_data_train, meta_data_eval = load_tts_samples(c_dataset.datasets, eval_split=args.eval) - items = meta_data_train + meta_data_eval - - enc_manager = SpeakerManager( - encoder_model_path=args.model_path, encoder_config_path=args.config_path, use_cuda=args.use_cuda - ) - - compute_encoder_accuracy(items, enc_manager) diff --git a/TTS/TTS/bin/extract_tts_spectrograms.py b/TTS/TTS/bin/extract_tts_spectrograms.py deleted file mode 100644 index 9eadee070ed15283e4460331cbb48927392a2b12..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/extract_tts_spectrograms.py +++ /dev/null @@ -1,286 +0,0 @@ -#!/usr/bin/env python3 -"""Extract Mel spectrograms with teacher forcing.""" - -import argparse -import os - -import numpy as np -import torch -from torch.utils.data import DataLoader -from tqdm import tqdm - -from TTS.config import load_config -from TTS.tts.datasets import TTSDataset, load_tts_samples -from TTS.tts.models import setup_model -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor -from TTS.utils.generic_utils import count_parameters - -use_cuda = torch.cuda.is_available() - - -def setup_loader(ap, r, verbose=False): - tokenizer, _ = TTSTokenizer.init_from_config(c) - dataset = TTSDataset( - outputs_per_step=r, - compute_linear_spec=False, - samples=meta_data, - tokenizer=tokenizer, - ap=ap, - batch_group_size=0, - min_text_len=c.min_text_len, - max_text_len=c.max_text_len, - min_audio_len=c.min_audio_len, - max_audio_len=c.max_audio_len, - phoneme_cache_path=c.phoneme_cache_path, - precompute_num_workers=0, - use_noise_augment=False, - verbose=verbose, - speaker_id_mapping=speaker_manager.name_to_id if c.use_speaker_embedding else None, - d_vector_mapping=speaker_manager.embeddings if c.use_d_vector_file else None, - ) - - if c.use_phonemes and c.compute_input_seq_cache: - # precompute phonemes to have a better estimate of sequence lengths. - dataset.compute_input_seq(c.num_loader_workers) - dataset.preprocess_samples() - - loader = DataLoader( - dataset, - batch_size=c.batch_size, - shuffle=False, - collate_fn=dataset.collate_fn, - drop_last=False, - sampler=None, - num_workers=c.num_loader_workers, - pin_memory=False, - ) - return loader - - -def set_filename(wav_path, out_path): - wav_file = os.path.basename(wav_path) - file_name = wav_file.split(".")[0] - os.makedirs(os.path.join(out_path, "quant"), exist_ok=True) - os.makedirs(os.path.join(out_path, "mel"), exist_ok=True) - os.makedirs(os.path.join(out_path, "wav_gl"), exist_ok=True) - os.makedirs(os.path.join(out_path, "wav"), exist_ok=True) - wavq_path = os.path.join(out_path, "quant", file_name) - mel_path = os.path.join(out_path, "mel", file_name) - wav_gl_path = os.path.join(out_path, "wav_gl", file_name + ".wav") - wav_path = os.path.join(out_path, "wav", file_name + ".wav") - return file_name, wavq_path, mel_path, wav_gl_path, wav_path - - -def format_data(data): - # setup input data - text_input = data["token_id"] - text_lengths = data["token_id_lengths"] - mel_input = data["mel"] - mel_lengths = data["mel_lengths"] - item_idx = data["item_idxs"] - d_vectors = data["d_vectors"] - speaker_ids = data["speaker_ids"] - attn_mask = data["attns"] - avg_text_length = torch.mean(text_lengths.float()) - avg_spec_length = torch.mean(mel_lengths.float()) - - # dispatch data to GPU - if use_cuda: - text_input = text_input.cuda(non_blocking=True) - text_lengths = text_lengths.cuda(non_blocking=True) - mel_input = mel_input.cuda(non_blocking=True) - mel_lengths = mel_lengths.cuda(non_blocking=True) - if speaker_ids is not None: - speaker_ids = speaker_ids.cuda(non_blocking=True) - if d_vectors is not None: - d_vectors = d_vectors.cuda(non_blocking=True) - if attn_mask is not None: - attn_mask = attn_mask.cuda(non_blocking=True) - return ( - text_input, - text_lengths, - mel_input, - mel_lengths, - speaker_ids, - d_vectors, - avg_text_length, - avg_spec_length, - attn_mask, - item_idx, - ) - - -@torch.no_grad() -def inference( - model_name, - model, - ap, - text_input, - text_lengths, - mel_input, - mel_lengths, - speaker_ids=None, - d_vectors=None, -): - if model_name == "glow_tts": - speaker_c = None - if speaker_ids is not None: - speaker_c = speaker_ids - elif d_vectors is not None: - speaker_c = d_vectors - outputs = model.inference_with_MAS( - text_input, - text_lengths, - mel_input, - mel_lengths, - aux_input={"d_vectors": speaker_c, "speaker_ids": speaker_ids}, - ) - model_output = outputs["model_outputs"] - model_output = model_output.detach().cpu().numpy() - - elif "tacotron" in model_name: - aux_input = {"speaker_ids": speaker_ids, "d_vectors": d_vectors} - outputs = model(text_input, text_lengths, mel_input, mel_lengths, aux_input) - postnet_outputs = outputs["model_outputs"] - # normalize tacotron output - if model_name == "tacotron": - mel_specs = [] - postnet_outputs = postnet_outputs.data.cpu().numpy() - for b in range(postnet_outputs.shape[0]): - postnet_output = postnet_outputs[b] - mel_specs.append(torch.FloatTensor(ap.out_linear_to_mel(postnet_output.T).T)) - model_output = torch.stack(mel_specs).cpu().numpy() - - elif model_name == "tacotron2": - model_output = postnet_outputs.detach().cpu().numpy() - return model_output - - -def extract_spectrograms( - data_loader, model, ap, output_path, quantized_wav=False, save_audio=False, debug=False, metada_name="metada.txt" -): - model.eval() - export_metadata = [] - for _, data in tqdm(enumerate(data_loader), total=len(data_loader)): - # format data - ( - text_input, - text_lengths, - mel_input, - mel_lengths, - speaker_ids, - d_vectors, - _, - _, - _, - item_idx, - ) = format_data(data) - - model_output = inference( - c.model.lower(), - model, - ap, - text_input, - text_lengths, - mel_input, - mel_lengths, - speaker_ids, - d_vectors, - ) - - for idx in range(text_input.shape[0]): - wav_file_path = item_idx[idx] - wav = ap.load_wav(wav_file_path) - _, wavq_path, mel_path, wav_gl_path, wav_path = set_filename(wav_file_path, output_path) - - # quantize and save wav - if quantized_wav: - wavq = ap.quantize(wav) - np.save(wavq_path, wavq) - - # save TTS mel - mel = model_output[idx] - mel_length = mel_lengths[idx] - mel = mel[:mel_length, :].T - np.save(mel_path, mel) - - export_metadata.append([wav_file_path, mel_path]) - if save_audio: - ap.save_wav(wav, wav_path) - - if debug: - print("Audio for debug saved at:", wav_gl_path) - wav = ap.inv_melspectrogram(mel) - ap.save_wav(wav, wav_gl_path) - - with open(os.path.join(output_path, metada_name), "w", encoding="utf-8") as f: - for data in export_metadata: - f.write(f"{data[0]}|{data[1]+'.npy'}\n") - - -def main(args): # pylint: disable=redefined-outer-name - # pylint: disable=global-variable-undefined - global meta_data, speaker_manager - - # Audio processor - ap = AudioProcessor(**c.audio) - - # load data instances - meta_data_train, meta_data_eval = load_tts_samples( - c.datasets, eval_split=args.eval, eval_split_max_size=c.eval_split_max_size, eval_split_size=c.eval_split_size - ) - - # use eval and training partitions - meta_data = meta_data_train + meta_data_eval - - # init speaker manager - if c.use_speaker_embedding: - speaker_manager = SpeakerManager(data_items=meta_data) - elif c.use_d_vector_file: - speaker_manager = SpeakerManager(d_vectors_file_path=c.d_vector_file) - else: - speaker_manager = None - - # setup model - model = setup_model(c) - - # restore model - model.load_checkpoint(c, args.checkpoint_path, eval=True) - - if use_cuda: - model.cuda() - - num_params = count_parameters(model) - print("\n > Model has {} parameters".format(num_params), flush=True) - # set r - r = 1 if c.model.lower() == "glow_tts" else model.decoder.r - own_loader = setup_loader(ap, r, verbose=True) - - extract_spectrograms( - own_loader, - model, - ap, - args.output_path, - quantized_wav=args.quantized, - save_audio=args.save_audio, - debug=args.debug, - metada_name="metada.txt", - ) - - -if __name__ == "__main__": - parser = argparse.ArgumentParser() - parser.add_argument("--config_path", type=str, help="Path to config file for training.", required=True) - parser.add_argument("--checkpoint_path", type=str, help="Model file to be restored.", required=True) - parser.add_argument("--output_path", type=str, help="Path to save mel specs", required=True) - parser.add_argument("--debug", default=False, action="store_true", help="Save audio files for debug") - parser.add_argument("--save_audio", default=False, action="store_true", help="Save audio files") - parser.add_argument("--quantized", action="store_true", help="Save quantized audio files") - parser.add_argument("--eval", type=bool, help="compute eval.", default=True) - args = parser.parse_args() - - c = load_config(args.config_path) - c.audio.trim_silence = False - main(args) diff --git a/TTS/TTS/bin/find_unique_chars.py b/TTS/TTS/bin/find_unique_chars.py deleted file mode 100644 index ea16974839df6cf9942ef24a5535597940fde5b2..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/find_unique_chars.py +++ /dev/null @@ -1,45 +0,0 @@ -"""Find all the unique characters in a dataset""" -import argparse -from argparse import RawTextHelpFormatter - -from TTS.config import load_config -from TTS.tts.datasets import load_tts_samples - - -def main(): - # pylint: disable=bad-option-value - parser = argparse.ArgumentParser( - description="""Find all the unique characters or phonemes in a dataset.\n\n""" - """ - Example runs: - - python TTS/bin/find_unique_chars.py --config_path config.json - """, - formatter_class=RawTextHelpFormatter, - ) - parser.add_argument("--config_path", type=str, help="Path to dataset config file.", required=True) - args = parser.parse_args() - - c = load_config(args.config_path) - - # load all datasets - train_items, eval_items = load_tts_samples( - c.datasets, eval_split=True, eval_split_max_size=c.eval_split_max_size, eval_split_size=c.eval_split_size - ) - - items = train_items + eval_items - - texts = "".join(item["text"] for item in items) - chars = set(texts) - lower_chars = filter(lambda c: c.islower(), chars) - chars_force_lower = [c.lower() for c in chars] - chars_force_lower = set(chars_force_lower) - - print(f" > Number of unique characters: {len(chars)}") - print(f" > Unique characters: {''.join(sorted(chars))}") - print(f" > Unique lower characters: {''.join(sorted(lower_chars))}") - print(f" > Unique all forced to lower characters: {''.join(sorted(chars_force_lower))}") - - -if __name__ == "__main__": - main() diff --git a/TTS/TTS/bin/find_unique_phonemes.py b/TTS/TTS/bin/find_unique_phonemes.py deleted file mode 100644 index 4bd7a78eef2c4850bca9369def55d68336cd53aa..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/find_unique_phonemes.py +++ /dev/null @@ -1,74 +0,0 @@ -"""Find all the unique characters in a dataset""" -import argparse -import multiprocessing -from argparse import RawTextHelpFormatter - -from tqdm.contrib.concurrent import process_map - -from TTS.config import load_config -from TTS.tts.datasets import load_tts_samples -from TTS.tts.utils.text.phonemizers import Gruut - - -def compute_phonemes(item): - text = item["text"] - ph = phonemizer.phonemize(text).replace("|", "") - return set(list(ph)) - - -def main(): - # pylint: disable=W0601 - global c, phonemizer - # pylint: disable=bad-option-value - parser = argparse.ArgumentParser( - description="""Find all the unique characters or phonemes in a dataset.\n\n""" - """ - Example runs: - - python TTS/bin/find_unique_phonemes.py --config_path config.json - """, - formatter_class=RawTextHelpFormatter, - ) - parser.add_argument("--config_path", type=str, help="Path to dataset config file.", required=True) - args = parser.parse_args() - - c = load_config(args.config_path) - - # load all datasets - train_items, eval_items = load_tts_samples( - c.datasets, eval_split=True, eval_split_max_size=c.eval_split_max_size, eval_split_size=c.eval_split_size - ) - items = train_items + eval_items - print("Num items:", len(items)) - - language_list = [item["language"] for item in items] - is_lang_def = all(language_list) - - if not c.phoneme_language or not is_lang_def: - raise ValueError("Phoneme language must be defined in config.") - - if not language_list.count(language_list[0]) == len(language_list): - raise ValueError( - "Currently, just one phoneme language per config file is supported !! Please split the dataset config into different configs and run it individually for each language !!" - ) - - phonemizer = Gruut(language=language_list[0], keep_puncs=True) - - phonemes = process_map(compute_phonemes, items, max_workers=multiprocessing.cpu_count(), chunksize=15) - phones = [] - for ph in phonemes: - phones.extend(ph) - - phones = set(phones) - lower_phones = filter(lambda c: c.islower(), phones) - phones_force_lower = [c.lower() for c in phones] - phones_force_lower = set(phones_force_lower) - - print(f" > Number of unique phonemes: {len(phones)}") - print(f" > Unique phonemes: {''.join(sorted(phones))}") - print(f" > Unique lower phonemes: {''.join(sorted(lower_phones))}") - print(f" > Unique all forced to lower phonemes: {''.join(sorted(phones_force_lower))}") - - -if __name__ == "__main__": - main() diff --git a/TTS/TTS/bin/remove_silence_using_vad.py b/TTS/TTS/bin/remove_silence_using_vad.py deleted file mode 100644 index a1eaf4c9a713e2e72a9e8434397ac430ff10aef1..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/remove_silence_using_vad.py +++ /dev/null @@ -1,124 +0,0 @@ -import argparse -import glob -import multiprocessing -import os -import pathlib - -import torch -from tqdm import tqdm - -from TTS.utils.vad import get_vad_model_and_utils, remove_silence - -torch.set_num_threads(1) - - -def adjust_path_and_remove_silence(audio_path): - output_path = audio_path.replace(os.path.join(args.input_dir, ""), os.path.join(args.output_dir, "")) - # ignore if the file exists - if os.path.exists(output_path) and not args.force: - return output_path, False - - # create all directory structure - pathlib.Path(output_path).parent.mkdir(parents=True, exist_ok=True) - # remove the silence and save the audio - output_path, is_speech = remove_silence( - model_and_utils, - audio_path, - output_path, - trim_just_beginning_and_end=args.trim_just_beginning_and_end, - use_cuda=args.use_cuda, - ) - return output_path, is_speech - - -def preprocess_audios(): - files = sorted(glob.glob(os.path.join(args.input_dir, args.glob), recursive=True)) - print("> Number of files: ", len(files)) - if not args.force: - print("> Ignoring files that already exist in the output idrectory.") - - if args.trim_just_beginning_and_end: - print("> Trimming just the beginning and the end with nonspeech parts.") - else: - print("> Trimming all nonspeech parts.") - - filtered_files = [] - if files: - # create threads - # num_threads = multiprocessing.cpu_count() - # process_map(adjust_path_and_remove_silence, files, max_workers=num_threads, chunksize=15) - - if args.num_processes > 1: - with multiprocessing.Pool(processes=args.num_processes) as pool: - results = list( - tqdm( - pool.imap_unordered(adjust_path_and_remove_silence, files), - total=len(files), - desc="Processing audio files", - ) - ) - for output_path, is_speech in results: - if not is_speech: - filtered_files.append(output_path) - else: - for f in tqdm(files): - output_path, is_speech = adjust_path_and_remove_silence(f) - if not is_speech: - filtered_files.append(output_path) - - # write files that do not have speech - with open(os.path.join(args.output_dir, "filtered_files.txt"), "w", encoding="utf-8") as f: - for file in filtered_files: - f.write(str(file) + "\n") - else: - print("> No files Found !") - - -if __name__ == "__main__": - parser = argparse.ArgumentParser( - description="python TTS/bin/remove_silence_using_vad.py -i=VCTK-Corpus/ -o=VCTK-Corpus-removed-silence/ -g=wav48_silence_trimmed/*/*_mic1.flac --trim_just_beginning_and_end True" - ) - parser.add_argument("-i", "--input_dir", type=str, help="Dataset root dir", required=True) - parser.add_argument("-o", "--output_dir", type=str, help="Output Dataset dir", default="") - parser.add_argument("-f", "--force", default=False, action="store_true", help="Force the replace of exists files") - parser.add_argument( - "-g", - "--glob", - type=str, - default="**/*.wav", - help="path in glob format for acess wavs from input_dir. ex: wav48/*/*.wav", - ) - parser.add_argument( - "-t", - "--trim_just_beginning_and_end", - type=bool, - default=True, - help="If True this script will trim just the beginning and end nonspeech parts. If False all nonspeech parts will be trim. Default True", - ) - parser.add_argument( - "-c", - "--use_cuda", - type=bool, - default=False, - help="If True use cuda", - ) - parser.add_argument( - "--use_onnx", - type=bool, - default=False, - help="If True use onnx", - ) - parser.add_argument( - "--num_processes", - type=int, - default=1, - help="Number of processes to use", - ) - args = parser.parse_args() - - if args.output_dir == "": - args.output_dir = args.input_dir - - # load the model and utils - model_and_utils = get_vad_model_and_utils(use_cuda=args.use_cuda, use_onnx=args.use_onnx) - preprocess_audios() diff --git a/TTS/TTS/bin/resample.py b/TTS/TTS/bin/resample.py deleted file mode 100644 index a3f28485d1fb235ab0d521ee30318c64b48fbd5a..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/resample.py +++ /dev/null @@ -1,90 +0,0 @@ -import argparse -import glob -import os -from argparse import RawTextHelpFormatter -from multiprocessing import Pool -from shutil import copytree - -import librosa -import soundfile as sf -from tqdm import tqdm - - -def resample_file(func_args): - filename, output_sr = func_args - y, sr = librosa.load(filename, sr=output_sr) - sf.write(filename, y, sr) - - -def resample_files(input_dir, output_sr, output_dir=None, file_ext="wav", n_jobs=10): - if output_dir: - print("Recursively copying the input folder...") - copytree(input_dir, output_dir) - input_dir = output_dir - - print("Resampling the audio files...") - audio_files = glob.glob(os.path.join(input_dir, f"**/*.{file_ext}"), recursive=True) - print(f"Found {len(audio_files)} files...") - audio_files = list(zip(audio_files, len(audio_files) * [output_sr])) - with Pool(processes=n_jobs) as p: - with tqdm(total=len(audio_files)) as pbar: - for _, _ in enumerate(p.imap_unordered(resample_file, audio_files)): - pbar.update() - - print("Done !") - - -if __name__ == "__main__": - parser = argparse.ArgumentParser( - description="""Resample a folder recusively with librosa - Can be used in place or create a copy of the folder as an output.\n\n - Example run: - python TTS/bin/resample.py - --input_dir /root/LJSpeech-1.1/ - --output_sr 22050 - --output_dir /root/resampled_LJSpeech-1.1/ - --file_ext wav - --n_jobs 24 - """, - formatter_class=RawTextHelpFormatter, - ) - - parser.add_argument( - "--input_dir", - type=str, - default=None, - required=True, - help="Path of the folder containing the audio files to resample", - ) - - parser.add_argument( - "--output_sr", - type=int, - default=22050, - required=False, - help="Samlple rate to which the audio files should be resampled", - ) - - parser.add_argument( - "--output_dir", - type=str, - default=None, - required=False, - help="Path of the destination folder. If not defined, the operation is done in place", - ) - - parser.add_argument( - "--file_ext", - type=str, - default="wav", - required=False, - help="Extension of the audio files to resample", - ) - - parser.add_argument( - "--n_jobs", type=int, default=None, help="Number of threads to use, by default it uses all cores" - ) - - args = parser.parse_args() - - resample_files(args.input_dir, args.output_sr, args.output_dir, args.file_ext, args.n_jobs) diff --git a/TTS/TTS/bin/synthesize.py b/TTS/TTS/bin/synthesize.py deleted file mode 100644 index d4350cd5e8f52edcdbf296fa2d9e3ee4d9228b35..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/synthesize.py +++ /dev/null @@ -1,466 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- - -import argparse -import sys -from argparse import RawTextHelpFormatter - -# pylint: disable=redefined-outer-name, unused-argument -from pathlib import Path - -from TTS.api import TTS -from TTS.utils.manage import ModelManager -from TTS.utils.synthesizer import Synthesizer - - -def str2bool(v): - if isinstance(v, bool): - return v - if v.lower() in ("yes", "true", "t", "y", "1"): - return True - if v.lower() in ("no", "false", "f", "n", "0"): - return False - raise argparse.ArgumentTypeError("Boolean value expected.") - - -def main(): - description = """Synthesize speech on command line. - -You can either use your trained model or choose a model from the provided list. - -If you don't specify any models, then it uses LJSpeech based English model. - -## Example Runs - -### Single Speaker Models - -- List provided models: - - ``` - $ tts --list_models - ``` - -- Query info for model info by idx: - - ``` - $ tts --model_info_by_idx "/" - ``` - -- Query info for model info by full name: - - ``` - $ tts --model_info_by_name "///" - ``` - -- Run TTS with default models: - - ``` - $ tts --text "Text for TTS" - ``` - -- Run a TTS model with its default vocoder model: - - ``` - $ tts --text "Text for TTS" --model_name "/// - ``` - -- Run with specific TTS and vocoder models from the list: - - ``` - $ tts --text "Text for TTS" --model_name "///" --vocoder_name "///" --output_path - ``` - -- Run your own TTS model (Using Griffin-Lim Vocoder): - - ``` - $ tts --text "Text for TTS" --model_path path/to/model.pth --config_path path/to/config.json --out_path output/path/speech.wav - ``` - -- Run your own TTS and Vocoder models: - ``` - $ tts --text "Text for TTS" --model_path path/to/config.json --config_path path/to/model.pth --out_path output/path/speech.wav - --vocoder_path path/to/vocoder.pth --vocoder_config_path path/to/vocoder_config.json - ``` - -### Multi-speaker Models - -- List the available speakers and choose as among them: - - ``` - $ tts --model_name "//" --list_speaker_idxs - ``` - -- Run the multi-speaker TTS model with the target speaker ID: - - ``` - $ tts --text "Text for TTS." --out_path output/path/speech.wav --model_name "//" --speaker_idx - ``` - -- Run your own multi-speaker TTS model: - - ``` - $ tts --text "Text for TTS" --out_path output/path/speech.wav --model_path path/to/config.json --config_path path/to/model.pth --speakers_file_path path/to/speaker.json --speaker_idx - ``` - -### Voice Conversion Models - - ``` - $ tts --out_path output/path/speech.wav --model_name "//" --source_wav --target_wav - ``` - """ - # We remove Markdown code formatting programmatically here to allow us to copy-and-paste from main README to keep - # documentation in sync more easily. - parser = argparse.ArgumentParser( - description=description.replace(" ```\n", ""), - formatter_class=RawTextHelpFormatter, - ) - - parser.add_argument( - "--list_models", - type=str2bool, - nargs="?", - const=True, - default=False, - help="list available pre-trained TTS and vocoder models.", - ) - - parser.add_argument( - "--model_info_by_idx", - type=str, - default=None, - help="model info using query format: /", - ) - - parser.add_argument( - "--model_info_by_name", - type=str, - default=None, - help="model info using query format: ///", - ) - - parser.add_argument("--text", type=str, default=None, help="Text to generate speech.") - - # Args for running pre-trained TTS models. - parser.add_argument( - "--model_name", - type=str, - default="tts_models/en/ljspeech/tacotron2-DDC", - help="Name of one of the pre-trained TTS models in format //", - ) - parser.add_argument( - "--vocoder_name", - type=str, - default=None, - help="Name of one of the pre-trained vocoder models in format //", - ) - - # Args for running custom models - parser.add_argument("--config_path", default=None, type=str, help="Path to model config file.") - parser.add_argument( - "--model_path", - type=str, - default=None, - help="Path to model file.", - ) - parser.add_argument( - "--out_path", - type=str, - default="tts_output.wav", - help="Output wav file path.", - ) - parser.add_argument("--use_cuda", type=bool, help="Run model on CUDA.", default=False) - parser.add_argument( - "--vocoder_path", - type=str, - help="Path to vocoder model file. If it is not defined, model uses GL as vocoder. Please make sure that you installed vocoder library before (WaveRNN).", - default=None, - ) - parser.add_argument("--vocoder_config_path", type=str, help="Path to vocoder model config file.", default=None) - parser.add_argument( - "--encoder_path", - type=str, - help="Path to speaker encoder model file.", - default=None, - ) - parser.add_argument("--encoder_config_path", type=str, help="Path to speaker encoder config file.", default=None) - - # args for coqui studio - parser.add_argument( - "--cs_model", - type=str, - help="Name of the 🐸Coqui Studio model. Available models are `XTTS`, `XTTS-multilingual`, `V1`.", - ) - parser.add_argument( - "--emotion", - type=str, - help="Emotion to condition the model with. Only available for 🐸Coqui Studio `V1` model.", - default=None, - ) - parser.add_argument( - "--language", - type=str, - help="Language to condition the model with. Only available for 🐸Coqui Studio `XTTS-multilingual` model.", - default=None, - ) - - # args for multi-speaker synthesis - parser.add_argument("--speakers_file_path", type=str, help="JSON file for multi-speaker model.", default=None) - parser.add_argument("--language_ids_file_path", type=str, help="JSON file for multi-lingual model.", default=None) - parser.add_argument( - "--speaker_idx", - type=str, - help="Target speaker ID for a multi-speaker TTS model.", - default=None, - ) - parser.add_argument( - "--language_idx", - type=str, - help="Target language ID for a multi-lingual TTS model.", - default=None, - ) - parser.add_argument( - "--speaker_wav", - nargs="+", - help="wav file(s) to condition a multi-speaker TTS model with a Speaker Encoder. You can give multiple file paths. The d_vectors is computed as their average.", - default=None, - ) - parser.add_argument("--gst_style", help="Wav path file for GST style reference.", default=None) - parser.add_argument( - "--capacitron_style_wav", type=str, help="Wav path file for Capacitron prosody reference.", default=None - ) - parser.add_argument("--capacitron_style_text", type=str, help="Transcription of the reference.", default=None) - parser.add_argument( - "--list_speaker_idxs", - help="List available speaker ids for the defined multi-speaker model.", - type=str2bool, - nargs="?", - const=True, - default=False, - ) - parser.add_argument( - "--list_language_idxs", - help="List available language ids for the defined multi-lingual model.", - type=str2bool, - nargs="?", - const=True, - default=False, - ) - # aux args - parser.add_argument( - "--save_spectogram", - type=bool, - help="If true save raw spectogram for further (vocoder) processing in out_path.", - default=False, - ) - parser.add_argument( - "--reference_wav", - type=str, - help="Reference wav file to convert in the voice of the speaker_idx or speaker_wav", - default=None, - ) - parser.add_argument( - "--reference_speaker_idx", - type=str, - help="speaker ID of the reference_wav speaker (If not provided the embedding will be computed using the Speaker Encoder).", - default=None, - ) - parser.add_argument( - "--progress_bar", - type=str2bool, - help="If true shows a progress bar for the model download. Defaults to True", - default=True, - ) - - # voice conversion args - parser.add_argument( - "--source_wav", - type=str, - default=None, - help="Original audio file to convert in the voice of the target_wav", - ) - parser.add_argument( - "--target_wav", - type=str, - default=None, - help="Target audio file to convert in the voice of the source_wav", - ) - - parser.add_argument( - "--voice_dir", - type=str, - default=None, - help="Voice dir for tortoise model", - ) - - args = parser.parse_args() - - # print the description if either text or list_models is not set - check_args = [ - args.text, - args.list_models, - args.list_speaker_idxs, - args.list_language_idxs, - args.reference_wav, - args.model_info_by_idx, - args.model_info_by_name, - args.source_wav, - args.target_wav, - ] - if not any(check_args): - parser.parse_args(["-h"]) - - # load model manager - path = Path(__file__).parent / "../.models.json" - manager = ModelManager(path, progress_bar=args.progress_bar) - api = TTS() - - tts_path = None - tts_config_path = None - speakers_file_path = None - language_ids_file_path = None - vocoder_path = None - vocoder_config_path = None - encoder_path = None - encoder_config_path = None - vc_path = None - vc_config_path = None - model_dir = None - - # CASE1 #list : list pre-trained TTS models - if args.list_models: - manager.add_cs_api_models(api.list_models()) - manager.list_models() - sys.exit() - - # CASE2 #info : model info for pre-trained TTS models - if args.model_info_by_idx: - model_query = args.model_info_by_idx - manager.model_info_by_idx(model_query) - sys.exit() - - if args.model_info_by_name: - model_query_full_name = args.model_info_by_name - manager.model_info_by_full_name(model_query_full_name) - sys.exit() - - # CASE3: TTS with coqui studio models - if "coqui_studio" in args.model_name: - print(" > Using 🐸Coqui Studio model: ", args.model_name) - api = TTS(model_name=args.model_name, cs_api_model=args.cs_model) - api.tts_to_file(text=args.text, emotion=args.emotion, file_path=args.out_path, language=args.language) - print(" > Saving output to ", args.out_path) - return - - # CASE4: load pre-trained model paths - if args.model_name is not None and not args.model_path: - model_path, config_path, model_item = manager.download_model(args.model_name) - # tts model - if model_item["model_type"] == "tts_models": - tts_path = model_path - tts_config_path = config_path - if "default_vocoder" in model_item: - args.vocoder_name = model_item["default_vocoder"] if args.vocoder_name is None else args.vocoder_name - - # voice conversion model - if model_item["model_type"] == "voice_conversion_models": - vc_path = model_path - vc_config_path = config_path - - # tts model with multiple files to be loaded from the directory path - if model_item.get("author", None) == "fairseq" or isinstance(model_item["model_url"], list): - model_dir = model_path - tts_path = None - tts_config_path = None - args.vocoder_name = None - - # load vocoder - if args.vocoder_name is not None and not args.vocoder_path: - vocoder_path, vocoder_config_path, _ = manager.download_model(args.vocoder_name) - - # CASE5: set custom model paths - if args.model_path is not None: - tts_path = args.model_path - tts_config_path = args.config_path - speakers_file_path = args.speakers_file_path - language_ids_file_path = args.language_ids_file_path - - if args.vocoder_path is not None: - vocoder_path = args.vocoder_path - vocoder_config_path = args.vocoder_config_path - - if args.encoder_path is not None: - encoder_path = args.encoder_path - encoder_config_path = args.encoder_config_path - - # load models - synthesizer = Synthesizer( - tts_path, - tts_config_path, - speakers_file_path, - language_ids_file_path, - vocoder_path, - vocoder_config_path, - encoder_path, - encoder_config_path, - vc_path, - vc_config_path, - model_dir, - args.voice_dir, - args.use_cuda, - ) - - # query speaker ids of a multi-speaker model. - if args.list_speaker_idxs: - print( - " > Available speaker ids: (Set --speaker_idx flag to one of these values to use the multi-speaker model." - ) - print(synthesizer.tts_model.speaker_manager.name_to_id) - return - - # query langauge ids of a multi-lingual model. - if args.list_language_idxs: - print( - " > Available language ids: (Set --language_idx flag to one of these values to use the multi-lingual model." - ) - print(synthesizer.tts_model.language_manager.name_to_id) - return - - # check the arguments against a multi-speaker model. - if synthesizer.tts_speakers_file and (not args.speaker_idx and not args.speaker_wav): - print( - " [!] Looks like you use a multi-speaker model. Define `--speaker_idx` to " - "select the target speaker. You can list the available speakers for this model by `--list_speaker_idxs`." - ) - return - - # RUN THE SYNTHESIS - if args.text: - print(" > Text: {}".format(args.text)) - - # kick it - if tts_path is not None: - wav = synthesizer.tts( - args.text, - speaker_name=args.speaker_idx, - language_name=args.language_idx, - speaker_wav=args.speaker_wav, - reference_wav=args.reference_wav, - style_wav=args.capacitron_style_wav, - style_text=args.capacitron_style_text, - reference_speaker_name=args.reference_speaker_idx, - ) - elif vc_path is not None: - wav = synthesizer.voice_conversion( - source_wav=args.source_wav, - target_wav=args.target_wav, - ) - elif model_dir is not None: - wav = synthesizer.tts(args.text, speaker_name=args.speaker_idx) - - # save the results - print(" > Saving output to {}".format(args.out_path)) - synthesizer.save_wav(wav, args.out_path) - - -if __name__ == "__main__": - main() diff --git a/TTS/TTS/bin/train_encoder.py b/TTS/TTS/bin/train_encoder.py deleted file mode 100644 index f2e7779c0c109a3ec78f1972ebf1147ec436048a..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/train_encoder.py +++ /dev/null @@ -1,319 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- - -import os -import sys -import time -import traceback - -import torch -from torch.utils.data import DataLoader -from trainer.torch import NoamLR -from trainer.trainer_utils import get_optimizer - -from TTS.encoder.dataset import EncoderDataset -from TTS.encoder.utils.generic_utils import save_best_model, save_checkpoint, setup_encoder_model -from TTS.encoder.utils.training import init_training -from TTS.encoder.utils.visual import plot_embeddings -from TTS.tts.datasets import load_tts_samples -from TTS.utils.audio import AudioProcessor -from TTS.utils.generic_utils import count_parameters, remove_experiment_folder -from TTS.utils.io import copy_model_files -from TTS.utils.samplers import PerfectBatchSampler -from TTS.utils.training import check_update - -torch.backends.cudnn.enabled = True -torch.backends.cudnn.benchmark = True -torch.manual_seed(54321) -use_cuda = torch.cuda.is_available() -num_gpus = torch.cuda.device_count() -print(" > Using CUDA: ", use_cuda) -print(" > Number of GPUs: ", num_gpus) - - -def setup_loader(ap: AudioProcessor, is_val: bool = False, verbose: bool = False): - num_utter_per_class = c.num_utter_per_class if not is_val else c.eval_num_utter_per_class - num_classes_in_batch = c.num_classes_in_batch if not is_val else c.eval_num_classes_in_batch - - dataset = EncoderDataset( - c, - ap, - meta_data_eval if is_val else meta_data_train, - voice_len=c.voice_len, - num_utter_per_class=num_utter_per_class, - num_classes_in_batch=num_classes_in_batch, - verbose=verbose, - augmentation_config=c.audio_augmentation if not is_val else None, - use_torch_spec=c.model_params.get("use_torch_spec", False), - ) - # get classes list - classes = dataset.get_class_list() - - sampler = PerfectBatchSampler( - dataset.items, - classes, - batch_size=num_classes_in_batch * num_utter_per_class, # total batch size - num_classes_in_batch=num_classes_in_batch, - num_gpus=1, - shuffle=not is_val, - drop_last=True, - ) - - if len(classes) < num_classes_in_batch: - if is_val: - raise RuntimeError( - f"config.eval_num_classes_in_batch ({num_classes_in_batch}) need to be <= {len(classes)} (Number total of Classes in the Eval dataset) !" - ) - raise RuntimeError( - f"config.num_classes_in_batch ({num_classes_in_batch}) need to be <= {len(classes)} (Number total of Classes in the Train dataset) !" - ) - - # set the classes to avoid get wrong class_id when the number of training and eval classes are not equal - if is_val: - dataset.set_classes(train_classes) - - loader = DataLoader( - dataset, - num_workers=c.num_loader_workers, - batch_sampler=sampler, - collate_fn=dataset.collate_fn, - ) - - return loader, classes, dataset.get_map_classid_to_classname() - - -def evaluation(model, criterion, data_loader, global_step): - eval_loss = 0 - for _, data in enumerate(data_loader): - with torch.no_grad(): - # setup input data - inputs, labels = data - - # agroup samples of each class in the batch. perfect sampler produces [3,2,1,3,2,1] we need [3,3,2,2,1,1] - labels = torch.transpose( - labels.view(c.eval_num_utter_per_class, c.eval_num_classes_in_batch), 0, 1 - ).reshape(labels.shape) - inputs = torch.transpose( - inputs.view(c.eval_num_utter_per_class, c.eval_num_classes_in_batch, -1), 0, 1 - ).reshape(inputs.shape) - - # dispatch data to GPU - if use_cuda: - inputs = inputs.cuda(non_blocking=True) - labels = labels.cuda(non_blocking=True) - - # forward pass model - outputs = model(inputs) - - # loss computation - loss = criterion( - outputs.view(c.eval_num_classes_in_batch, outputs.shape[0] // c.eval_num_classes_in_batch, -1), labels - ) - - eval_loss += loss.item() - - eval_avg_loss = eval_loss / len(data_loader) - # save stats - dashboard_logger.eval_stats(global_step, {"loss": eval_avg_loss}) - # plot the last batch in the evaluation - figures = { - "UMAP Plot": plot_embeddings(outputs.detach().cpu().numpy(), c.num_classes_in_batch), - } - dashboard_logger.eval_figures(global_step, figures) - return eval_avg_loss - - -def train(model, optimizer, scheduler, criterion, data_loader, eval_data_loader, global_step): - model.train() - best_loss = float("inf") - avg_loader_time = 0 - end_time = time.time() - for epoch in range(c.epochs): - tot_loss = 0 - epoch_time = 0 - for _, data in enumerate(data_loader): - start_time = time.time() - - # setup input data - inputs, labels = data - # agroup samples of each class in the batch. perfect sampler produces [3,2,1,3,2,1] we need [3,3,2,2,1,1] - labels = torch.transpose(labels.view(c.num_utter_per_class, c.num_classes_in_batch), 0, 1).reshape( - labels.shape - ) - inputs = torch.transpose(inputs.view(c.num_utter_per_class, c.num_classes_in_batch, -1), 0, 1).reshape( - inputs.shape - ) - # ToDo: move it to a unit test - # labels_converted = torch.transpose(labels.view(c.num_utter_per_class, c.num_classes_in_batch), 0, 1).reshape(labels.shape) - # inputs_converted = torch.transpose(inputs.view(c.num_utter_per_class, c.num_classes_in_batch, -1), 0, 1).reshape(inputs.shape) - # idx = 0 - # for j in range(0, c.num_classes_in_batch, 1): - # for i in range(j, len(labels), c.num_classes_in_batch): - # if not torch.all(labels[i].eq(labels_converted[idx])) or not torch.all(inputs[i].eq(inputs_converted[idx])): - # print("Invalid") - # print(labels) - # exit() - # idx += 1 - # labels = labels_converted - # inputs = inputs_converted - - loader_time = time.time() - end_time - global_step += 1 - - # setup lr - if c.lr_decay: - scheduler.step() - optimizer.zero_grad() - - # dispatch data to GPU - if use_cuda: - inputs = inputs.cuda(non_blocking=True) - labels = labels.cuda(non_blocking=True) - - # forward pass model - outputs = model(inputs) - - # loss computation - loss = criterion( - outputs.view(c.num_classes_in_batch, outputs.shape[0] // c.num_classes_in_batch, -1), labels - ) - loss.backward() - grad_norm, _ = check_update(model, c.grad_clip) - optimizer.step() - - step_time = time.time() - start_time - epoch_time += step_time - - # acumulate the total epoch loss - tot_loss += loss.item() - - # Averaged Loader Time - num_loader_workers = c.num_loader_workers if c.num_loader_workers > 0 else 1 - avg_loader_time = ( - 1 / num_loader_workers * loader_time + (num_loader_workers - 1) / num_loader_workers * avg_loader_time - if avg_loader_time != 0 - else loader_time - ) - current_lr = optimizer.param_groups[0]["lr"] - - if global_step % c.steps_plot_stats == 0: - # Plot Training Epoch Stats - train_stats = { - "loss": loss.item(), - "lr": current_lr, - "grad_norm": grad_norm, - "step_time": step_time, - "avg_loader_time": avg_loader_time, - } - dashboard_logger.train_epoch_stats(global_step, train_stats) - figures = { - "UMAP Plot": plot_embeddings(outputs.detach().cpu().numpy(), c.num_classes_in_batch), - } - dashboard_logger.train_figures(global_step, figures) - - if global_step % c.print_step == 0: - print( - " | > Step:{} Loss:{:.5f} GradNorm:{:.5f} " - "StepTime:{:.2f} LoaderTime:{:.2f} AvGLoaderTime:{:.2f} LR:{:.6f}".format( - global_step, loss.item(), grad_norm, step_time, loader_time, avg_loader_time, current_lr - ), - flush=True, - ) - - if global_step % c.save_step == 0: - # save model - save_checkpoint(model, optimizer, criterion, loss.item(), OUT_PATH, global_step, epoch) - - end_time = time.time() - - print("") - print( - ">>> Epoch:{} AvgLoss: {:.5f} GradNorm:{:.5f} " - "EpochTime:{:.2f} AvGLoaderTime:{:.2f} ".format( - epoch, tot_loss / len(data_loader), grad_norm, epoch_time, avg_loader_time - ), - flush=True, - ) - # evaluation - if c.run_eval: - model.eval() - eval_loss = evaluation(model, criterion, eval_data_loader, global_step) - print("\n\n") - print("--> EVAL PERFORMANCE") - print( - " | > Epoch:{} AvgLoss: {:.5f} ".format(epoch, eval_loss), - flush=True, - ) - # save the best checkpoint - best_loss = save_best_model(model, optimizer, criterion, eval_loss, best_loss, OUT_PATH, global_step, epoch) - model.train() - - return best_loss, global_step - - -def main(args): # pylint: disable=redefined-outer-name - # pylint: disable=global-variable-undefined - global meta_data_train - global meta_data_eval - global train_classes - - ap = AudioProcessor(**c.audio) - model = setup_encoder_model(c) - - optimizer = get_optimizer(c.optimizer, c.optimizer_params, c.lr, model) - - # pylint: disable=redefined-outer-name - meta_data_train, meta_data_eval = load_tts_samples(c.datasets, eval_split=True) - - train_data_loader, train_classes, map_classid_to_classname = setup_loader(ap, is_val=False, verbose=True) - if c.run_eval: - eval_data_loader, _, _ = setup_loader(ap, is_val=True, verbose=True) - else: - eval_data_loader = None - - num_classes = len(train_classes) - criterion = model.get_criterion(c, num_classes) - - if c.loss == "softmaxproto" and c.model != "speaker_encoder": - c.map_classid_to_classname = map_classid_to_classname - copy_model_files(c, OUT_PATH) - - if args.restore_path: - criterion, args.restore_step = model.load_checkpoint( - c, args.restore_path, eval=False, use_cuda=use_cuda, criterion=criterion - ) - print(" > Model restored from step %d" % args.restore_step, flush=True) - else: - args.restore_step = 0 - - if c.lr_decay: - scheduler = NoamLR(optimizer, warmup_steps=c.warmup_steps, last_epoch=args.restore_step - 1) - else: - scheduler = None - - num_params = count_parameters(model) - print("\n > Model has {} parameters".format(num_params), flush=True) - - if use_cuda: - model = model.cuda() - criterion.cuda() - - global_step = args.restore_step - _, global_step = train(model, optimizer, scheduler, criterion, train_data_loader, eval_data_loader, global_step) - - -if __name__ == "__main__": - args, c, OUT_PATH, AUDIO_PATH, c_logger, dashboard_logger = init_training() - - try: - main(args) - except KeyboardInterrupt: - remove_experiment_folder(OUT_PATH) - try: - sys.exit(0) - except SystemExit: - os._exit(0) # pylint: disable=protected-access - except Exception: # pylint: disable=broad-except - remove_experiment_folder(OUT_PATH) - traceback.print_exc() - sys.exit(1) diff --git a/TTS/TTS/bin/train_tts.py b/TTS/TTS/bin/train_tts.py deleted file mode 100644 index bdb4f6f69122a4a9aa4e07695f1816ce9727f323..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/train_tts.py +++ /dev/null @@ -1,71 +0,0 @@ -import os -from dataclasses import dataclass, field - -from trainer import Trainer, TrainerArgs - -from TTS.config import load_config, register_config -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models import setup_model - - -@dataclass -class TrainTTSArgs(TrainerArgs): - config_path: str = field(default=None, metadata={"help": "Path to the config file."}) - - -def main(): - """Run `tts` model training directly by a `config.json` file.""" - # init trainer args - train_args = TrainTTSArgs() - parser = train_args.init_argparse(arg_prefix="") - - # override trainer args from comman-line args - args, config_overrides = parser.parse_known_args() - train_args.parse_args(args) - - # load config.json and register - if args.config_path or args.continue_path: - if args.config_path: - # init from a file - config = load_config(args.config_path) - if len(config_overrides) > 0: - config.parse_known_args(config_overrides, relaxed_parser=True) - elif args.continue_path: - # continue from a prev experiment - config = load_config(os.path.join(args.continue_path, "config.json")) - if len(config_overrides) > 0: - config.parse_known_args(config_overrides, relaxed_parser=True) - else: - # init from console args - from TTS.config.shared_configs import BaseTrainingConfig # pylint: disable=import-outside-toplevel - - config_base = BaseTrainingConfig() - config_base.parse_known_args(config_overrides) - config = register_config(config_base.model)() - - # load training samples - train_samples, eval_samples = load_tts_samples( - config.datasets, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, - ) - - # init the model from config - model = setup_model(config, train_samples + eval_samples) - - # init the trainer and 🚀 - trainer = Trainer( - train_args, - model.config, - config.output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, - parse_command_line_args=False, - ) - trainer.fit() - - -if __name__ == "__main__": - main() diff --git a/TTS/TTS/bin/train_vocoder.py b/TTS/TTS/bin/train_vocoder.py deleted file mode 100644 index 32ecd7bdc3652b3683be846bdd9518e937aee904..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/train_vocoder.py +++ /dev/null @@ -1,77 +0,0 @@ -import os -from dataclasses import dataclass, field - -from trainer import Trainer, TrainerArgs - -from TTS.config import load_config, register_config -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.datasets.preprocess import load_wav_data, load_wav_feat_data -from TTS.vocoder.models import setup_model - - -@dataclass -class TrainVocoderArgs(TrainerArgs): - config_path: str = field(default=None, metadata={"help": "Path to the config file."}) - - -def main(): - """Run `tts` model training directly by a `config.json` file.""" - # init trainer args - train_args = TrainVocoderArgs() - parser = train_args.init_argparse(arg_prefix="") - - # override trainer args from comman-line args - args, config_overrides = parser.parse_known_args() - train_args.parse_args(args) - - # load config.json and register - if args.config_path or args.continue_path: - if args.config_path: - # init from a file - config = load_config(args.config_path) - if len(config_overrides) > 0: - config.parse_known_args(config_overrides, relaxed_parser=True) - elif args.continue_path: - # continue from a prev experiment - config = load_config(os.path.join(args.continue_path, "config.json")) - if len(config_overrides) > 0: - config.parse_known_args(config_overrides, relaxed_parser=True) - else: - # init from console args - from TTS.config.shared_configs import BaseTrainingConfig # pylint: disable=import-outside-toplevel - - config_base = BaseTrainingConfig() - config_base.parse_known_args(config_overrides) - config = register_config(config_base.model)() - - # load training samples - if "feature_path" in config and config.feature_path: - # load pre-computed features - print(f" > Loading features from: {config.feature_path}") - eval_samples, train_samples = load_wav_feat_data(config.data_path, config.feature_path, config.eval_split_size) - else: - # load data raw wav files - eval_samples, train_samples = load_wav_data(config.data_path, config.eval_split_size) - - # setup audio processor - ap = AudioProcessor(**config.audio) - - # init the model from config - model = setup_model(config) - - # init the trainer and 🚀 - trainer = Trainer( - train_args, - config, - config.output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, - training_assets={"audio_processor": ap}, - parse_command_line_args=False, - ) - trainer.fit() - - -if __name__ == "__main__": - main() diff --git a/TTS/TTS/bin/tune_wavegrad.py b/TTS/TTS/bin/tune_wavegrad.py deleted file mode 100644 index 09582cea7c7962b098efcde5754a02573d18264a..0000000000000000000000000000000000000000 --- a/TTS/TTS/bin/tune_wavegrad.py +++ /dev/null @@ -1,103 +0,0 @@ -"""Search a good noise schedule for WaveGrad for a given number of inference iterations""" -import argparse -from itertools import product as cartesian_product - -import numpy as np -import torch -from torch.utils.data import DataLoader -from tqdm import tqdm - -from TTS.config import load_config -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.datasets.preprocess import load_wav_data -from TTS.vocoder.datasets.wavegrad_dataset import WaveGradDataset -from TTS.vocoder.models import setup_model - -if __name__ == "__main__": - parser = argparse.ArgumentParser() - parser.add_argument("--model_path", type=str, help="Path to model checkpoint.") - parser.add_argument("--config_path", type=str, help="Path to model config file.") - parser.add_argument("--data_path", type=str, help="Path to data directory.") - parser.add_argument("--output_path", type=str, help="path for output file including file name and extension.") - parser.add_argument( - "--num_iter", - type=int, - help="Number of model inference iterations that you like to optimize noise schedule for.", - ) - parser.add_argument("--use_cuda", action="store_true", help="enable CUDA.") - parser.add_argument("--num_samples", type=int, default=1, help="Number of datasamples used for inference.") - parser.add_argument( - "--search_depth", - type=int, - default=3, - help="Search granularity. Increasing this increases the run-time exponentially.", - ) - - # load config - args = parser.parse_args() - config = load_config(args.config_path) - - # setup audio processor - ap = AudioProcessor(**config.audio) - - # load dataset - _, train_data = load_wav_data(args.data_path, 0) - train_data = train_data[: args.num_samples] - dataset = WaveGradDataset( - ap=ap, - items=train_data, - seq_len=-1, - hop_len=ap.hop_length, - pad_short=config.pad_short, - conv_pad=config.conv_pad, - is_training=True, - return_segments=False, - use_noise_augment=False, - use_cache=False, - verbose=True, - ) - loader = DataLoader( - dataset, - batch_size=1, - shuffle=False, - collate_fn=dataset.collate_full_clips, - drop_last=False, - num_workers=config.num_loader_workers, - pin_memory=False, - ) - - # setup the model - model = setup_model(config) - if args.use_cuda: - model.cuda() - - # setup optimization parameters - base_values = sorted(10 * np.random.uniform(size=args.search_depth)) - print(f" > base values: {base_values}") - exponents = 10 ** np.linspace(-6, -1, num=args.num_iter) - best_error = float("inf") - best_schedule = None # pylint: disable=C0103 - total_search_iter = len(base_values) ** args.num_iter - for base in tqdm(cartesian_product(base_values, repeat=args.num_iter), total=total_search_iter): - beta = exponents * base - model.compute_noise_level(beta) - for data in loader: - mel, audio = data - y_hat = model.inference(mel.cuda() if args.use_cuda else mel) - - if args.use_cuda: - y_hat = y_hat.cpu() - y_hat = y_hat.numpy() - - mel_hat = [] - for i in range(y_hat.shape[0]): - m = ap.melspectrogram(y_hat[i, 0])[:, :-1] - mel_hat.append(torch.from_numpy(m)) - - mel_hat = torch.stack(mel_hat) - mse = torch.sum((mel - mel_hat) ** 2).mean() - if mse.item() < best_error: - best_error = mse.item() - best_schedule = {"beta": beta} - print(f" > Found a better schedule. - MSE: {mse.item()}") - np.save(args.output_path, best_schedule) diff --git a/TTS/TTS/config/__init__.py b/TTS/TTS/config/__init__.py deleted file mode 100644 index 49ac8f4ade11c14ec339c5bcf5a682aa560b942d..0000000000000000000000000000000000000000 --- a/TTS/TTS/config/__init__.py +++ /dev/null @@ -1,132 +0,0 @@ -import json -import os -import re -from typing import Dict - -import fsspec -import yaml -from coqpit import Coqpit - -from TTS.config.shared_configs import * -from TTS.utils.generic_utils import find_module - - -def read_json_with_comments(json_path): - """for backward compat.""" - # fallback to json - with fsspec.open(json_path, "r", encoding="utf-8") as f: - input_str = f.read() - # handle comments - input_str = re.sub(r"\\\n", "", input_str) - input_str = re.sub(r"//.*\n", "\n", input_str) - data = json.loads(input_str) - return data - - -def register_config(model_name: str) -> Coqpit: - """Find the right config for the given model name. - - Args: - model_name (str): Model name. - - Raises: - ModuleNotFoundError: No matching config for the model name. - - Returns: - Coqpit: config class. - """ - config_class = None - config_name = model_name + "_config" - paths = ["TTS.tts.configs", "TTS.vocoder.configs", "TTS.encoder.configs", "TTS.vc.configs"] - for path in paths: - try: - config_class = find_module(path, config_name) - except ModuleNotFoundError: - pass - if config_class is None: - raise ModuleNotFoundError(f" [!] Config for {model_name} cannot be found.") - return config_class - - -def _process_model_name(config_dict: Dict) -> str: - """Format the model name as expected. It is a band-aid for the old `vocoder` model names. - - Args: - config_dict (Dict): A dictionary including the config fields. - - Returns: - str: Formatted modelname. - """ - model_name = config_dict["model"] if "model" in config_dict else config_dict["generator_model"] - model_name = model_name.replace("_generator", "").replace("_discriminator", "") - return model_name - - -def load_config(config_path: str) -> Coqpit: - """Import `json` or `yaml` files as TTS configs. First, load the input file as a `dict` and check the model name - to find the corresponding Config class. Then initialize the Config. - - Args: - config_path (str): path to the config file. - - Raises: - TypeError: given config file has an unknown type. - - Returns: - Coqpit: TTS config object. - """ - config_dict = {} - ext = os.path.splitext(config_path)[1] - if ext in (".yml", ".yaml"): - with fsspec.open(config_path, "r", encoding="utf-8") as f: - data = yaml.safe_load(f) - elif ext == ".json": - try: - with fsspec.open(config_path, "r", encoding="utf-8") as f: - data = json.load(f) - except json.decoder.JSONDecodeError: - # backwards compat. - data = read_json_with_comments(config_path) - else: - raise TypeError(f" [!] Unknown config file type {ext}") - config_dict.update(data) - model_name = _process_model_name(config_dict) - config_class = register_config(model_name.lower()) - config = config_class() - config.from_dict(config_dict) - return config - - -def check_config_and_model_args(config, arg_name, value): - """Check the give argument in `config.model_args` if exist or in `config` for - the given value. - - Return False if the argument does not exist in `config.model_args` or `config`. - This is to patch up the compatibility between models with and without `model_args`. - - TODO: Remove this in the future with a unified approach. - """ - if hasattr(config, "model_args"): - if arg_name in config.model_args: - return config.model_args[arg_name] == value - if hasattr(config, arg_name): - return config[arg_name] == value - return False - - -def get_from_config_or_model_args(config, arg_name): - """Get the given argument from `config.model_args` if exist or in `config`.""" - if hasattr(config, "model_args"): - if arg_name in config.model_args: - return config.model_args[arg_name] - return config[arg_name] - - -def get_from_config_or_model_args_with_default(config, arg_name, def_val): - """Get the given argument from `config.model_args` if exist or in `config`.""" - if hasattr(config, "model_args"): - if arg_name in config.model_args: - return config.model_args[arg_name] - if hasattr(config, arg_name): - return config[arg_name] - return def_val diff --git a/TTS/TTS/config/shared_configs.py b/TTS/TTS/config/shared_configs.py deleted file mode 100644 index 7fae77d61361eff8c8fa521a0f4a90dc46f63c75..0000000000000000000000000000000000000000 --- a/TTS/TTS/config/shared_configs.py +++ /dev/null @@ -1,268 +0,0 @@ -from dataclasses import asdict, dataclass -from typing import List - -from coqpit import Coqpit, check_argument -from trainer import TrainerConfig - - -@dataclass -class BaseAudioConfig(Coqpit): - """Base config to definge audio processing parameters. It is used to initialize - ```TTS.utils.audio.AudioProcessor.``` - - Args: - fft_size (int): - Number of STFT frequency levels aka.size of the linear spectogram frame. Defaults to 1024. - - win_length (int): - Each frame of audio is windowed by window of length ```win_length``` and then padded with zeros to match - ```fft_size```. Defaults to 1024. - - hop_length (int): - Number of audio samples between adjacent STFT columns. Defaults to 1024. - - frame_shift_ms (int): - Set ```hop_length``` based on milliseconds and sampling rate. - - frame_length_ms (int): - Set ```win_length``` based on milliseconds and sampling rate. - - stft_pad_mode (str): - Padding method used in STFT. 'reflect' or 'center'. Defaults to 'reflect'. - - sample_rate (int): - Audio sampling rate. Defaults to 22050. - - resample (bool): - Enable / Disable resampling audio to ```sample_rate```. Defaults to ```False```. - - preemphasis (float): - Preemphasis coefficient. Defaults to 0.0. - - ref_level_db (int): 20 - Reference Db level to rebase the audio signal and ignore the level below. 20Db is assumed the sound of air. - Defaults to 20. - - do_sound_norm (bool): - Enable / Disable sound normalization to reconcile the volume differences among samples. Defaults to False. - - log_func (str): - Numpy log function used for amplitude to DB conversion. Defaults to 'np.log10'. - - do_trim_silence (bool): - Enable / Disable trimming silences at the beginning and the end of the audio clip. Defaults to ```True```. - - do_amp_to_db_linear (bool, optional): - enable/disable amplitude to dB conversion of linear spectrograms. Defaults to True. - - do_amp_to_db_mel (bool, optional): - enable/disable amplitude to dB conversion of mel spectrograms. Defaults to True. - - pitch_fmax (float, optional): - Maximum frequency of the F0 frames. Defaults to ```640```. - - pitch_fmin (float, optional): - Minimum frequency of the F0 frames. Defaults to ```1```. - - trim_db (int): - Silence threshold used for silence trimming. Defaults to 45. - - do_rms_norm (bool, optional): - enable/disable RMS volume normalization when loading an audio file. Defaults to False. - - db_level (int, optional): - dB level used for rms normalization. The range is -99 to 0. Defaults to None. - - power (float): - Exponent used for expanding spectrogra levels before running Griffin Lim. It helps to reduce the - artifacts in the synthesized voice. Defaults to 1.5. - - griffin_lim_iters (int): - Number of Griffing Lim iterations. Defaults to 60. - - num_mels (int): - Number of mel-basis frames that defines the frame lengths of each mel-spectrogram frame. Defaults to 80. - - mel_fmin (float): Min frequency level used for the mel-basis filters. ~50 for male and ~95 for female voices. - It needs to be adjusted for a dataset. Defaults to 0. - - mel_fmax (float): - Max frequency level used for the mel-basis filters. It needs to be adjusted for a dataset. - - spec_gain (int): - Gain applied when converting amplitude to DB. Defaults to 20. - - signal_norm (bool): - enable/disable signal normalization. Defaults to True. - - min_level_db (int): - minimum db threshold for the computed melspectrograms. Defaults to -100. - - symmetric_norm (bool): - enable/disable symmetric normalization. If set True normalization is performed in the range [-k, k] else - [0, k], Defaults to True. - - max_norm (float): - ```k``` defining the normalization range. Defaults to 4.0. - - clip_norm (bool): - enable/disable clipping the our of range values in the normalized audio signal. Defaults to True. - - stats_path (str): - Path to the computed stats file. Defaults to None. - """ - - # stft parameters - fft_size: int = 1024 - win_length: int = 1024 - hop_length: int = 256 - frame_shift_ms: int = None - frame_length_ms: int = None - stft_pad_mode: str = "reflect" - # audio processing parameters - sample_rate: int = 22050 - resample: bool = False - preemphasis: float = 0.0 - ref_level_db: int = 20 - do_sound_norm: bool = False - log_func: str = "np.log10" - # silence trimming - do_trim_silence: bool = True - trim_db: int = 45 - # rms volume normalization - do_rms_norm: bool = False - db_level: float = None - # griffin-lim params - power: float = 1.5 - griffin_lim_iters: int = 60 - # mel-spec params - num_mels: int = 80 - mel_fmin: float = 0.0 - mel_fmax: float = None - spec_gain: int = 20 - do_amp_to_db_linear: bool = True - do_amp_to_db_mel: bool = True - # f0 params - pitch_fmax: float = 640.0 - pitch_fmin: float = 1.0 - # normalization params - signal_norm: bool = True - min_level_db: int = -100 - symmetric_norm: bool = True - max_norm: float = 4.0 - clip_norm: bool = True - stats_path: str = None - - def check_values( - self, - ): - """Check config fields""" - c = asdict(self) - check_argument("num_mels", c, restricted=True, min_val=10, max_val=2056) - check_argument("fft_size", c, restricted=True, min_val=128, max_val=4058) - check_argument("sample_rate", c, restricted=True, min_val=512, max_val=100000) - check_argument( - "frame_length_ms", - c, - restricted=True, - min_val=10, - max_val=1000, - alternative="win_length", - ) - check_argument("frame_shift_ms", c, restricted=True, min_val=1, max_val=1000, alternative="hop_length") - check_argument("preemphasis", c, restricted=True, min_val=0, max_val=1) - check_argument("min_level_db", c, restricted=True, min_val=-1000, max_val=10) - check_argument("ref_level_db", c, restricted=True, min_val=0, max_val=1000) - check_argument("power", c, restricted=True, min_val=1, max_val=5) - check_argument("griffin_lim_iters", c, restricted=True, min_val=10, max_val=1000) - - # normalization parameters - check_argument("signal_norm", c, restricted=True) - check_argument("symmetric_norm", c, restricted=True) - check_argument("max_norm", c, restricted=True, min_val=0.1, max_val=1000) - check_argument("clip_norm", c, restricted=True) - check_argument("mel_fmin", c, restricted=True, min_val=0.0, max_val=1000) - check_argument("mel_fmax", c, restricted=True, min_val=500.0, allow_none=True) - check_argument("spec_gain", c, restricted=True, min_val=1, max_val=100) - check_argument("do_trim_silence", c, restricted=True) - check_argument("trim_db", c, restricted=True) - - -@dataclass -class BaseDatasetConfig(Coqpit): - """Base config for TTS datasets. - - Args: - formatter (str): - Formatter name that defines used formatter in ```TTS.tts.datasets.formatter```. Defaults to `""`. - - dataset_name (str): - Unique name for the dataset. Defaults to `""`. - - path (str): - Root path to the dataset files. Defaults to `""`. - - meta_file_train (str): - Name of the dataset meta file. Or a list of speakers to be ignored at training for multi-speaker datasets. - Defaults to `""`. - - ignored_speakers (List): - List of speakers IDs that are not used at the training. Default None. - - language (str): - Language code of the dataset. If defined, it overrides `phoneme_language`. Defaults to `""`. - - phonemizer (str): - Phonemizer used for that dataset's language. By default it uses `DEF_LANG_TO_PHONEMIZER`. Defaults to `""`. - - meta_file_val (str): - Name of the dataset meta file that defines the instances used at validation. - - meta_file_attn_mask (str): - Path to the file that lists the attention mask files used with models that require attention masks to - train the duration predictor. - """ - - formatter: str = "" - dataset_name: str = "" - path: str = "" - meta_file_train: str = "" - ignored_speakers: List[str] = None - language: str = "" - phonemizer: str = "" - meta_file_val: str = "" - meta_file_attn_mask: str = "" - - def check_values( - self, - ): - """Check config fields""" - c = asdict(self) - check_argument("formatter", c, restricted=True) - check_argument("path", c, restricted=True) - check_argument("meta_file_train", c, restricted=True) - check_argument("meta_file_val", c, restricted=False) - check_argument("meta_file_attn_mask", c, restricted=False) - - -@dataclass -class BaseTrainingConfig(TrainerConfig): - """Base config to define the basic 🐸TTS training parameters that are shared - among all the models. It is based on ```Trainer.TrainingConfig```. - - Args: - model (str): - Name of the model that is used in the training. - - num_loader_workers (int): - Number of workers for training time dataloader. - - num_eval_loader_workers (int): - Number of workers for evaluation time dataloader. - """ - - model: str = None - # dataloading - num_loader_workers: int = 0 - num_eval_loader_workers: int = 0 - use_noise_augment: bool = False diff --git a/TTS/TTS/cs_api.py b/TTS/TTS/cs_api.py deleted file mode 100644 index a36452abc95b1c250f514bbe180504372f21383f..0000000000000000000000000000000000000000 --- a/TTS/TTS/cs_api.py +++ /dev/null @@ -1,338 +0,0 @@ -import http.client -import json -import os -import tempfile -import urllib.request -from typing import Tuple - -import numpy as np -import requests -from scipy.io import wavfile - - -class Speaker(object): - """Convert dict to object.""" - - def __init__(self, d, is_voice=False): - self.is_voice = is_voice - for k, v in d.items(): - if isinstance(k, (list, tuple)): - setattr(self, k, [Speaker(x) if isinstance(x, dict) else x for x in v]) - else: - setattr(self, k, Speaker(v) if isinstance(v, dict) else v) - - def __repr__(self): - return str(self.__dict__) - - -class CS_API: - """🐸Coqui Studio API Wrapper. - - 🐸Coqui Studio is the most advanced voice generation platform. You can generate new voices by voice cloning, voice - interpolation, or our unique prompt to voice technology. It also provides a set of built-in voices with different - characteristics. You can use these voices to generate new audio files or use them in your applications. - You can use all the built-in and your own 🐸Coqui Studio speakers with this API with an API token. - You can signup to 🐸Coqui Studio from https://app.coqui.ai/auth/signup and get an API token from - https://app.coqui.ai/account. We can either enter the token as an environment variable as - `export COQUI_STUDIO_TOKEN=` or pass it as `CS_API(api_token=)`. - Visit https://app.coqui.ai/api for more information. - - - Args: - api_token (str): 🐸Coqui Studio API token. If not provided, it will be read from the environment variable - `COQUI_STUDIO_TOKEN`. - model (str): 🐸Coqui Studio model. It can be either `V1`, `XTTS`, or `XTTS-multilang`. Default is `XTTS`. - - - Example listing all available speakers: - >>> from TTS.api import CS_API - >>> tts = CS_API() - >>> tts.speakers - - Example listing all emotions: - >>> # emotions are only available for `V1` model - >>> from TTS.api import CS_API - >>> tts = CS_API(model="V1") - >>> tts.emotions - - Example with a built-in 🐸 speaker: - >>> from TTS.api import CS_API - >>> tts = CS_API() - >>> wav, sr = api.tts("Hello world", speaker_name=tts.speakers[0].name) - >>> filepath = tts.tts_to_file(text="Hello world!", speaker_name=tts.speakers[0].name, file_path="output.wav") - - Example with multi-language model: - >>> from TTS.api import CS_API - >>> tts = CS_API(model="XTTS-multilang") - >>> wav, sr = api.tts("Hello world", speaker_name=tts.speakers[0].name, language="en") - """ - - MODEL_ENDPOINTS = { - "V1": { - "list_speakers": "https://app.coqui.ai/api/v2/speakers", - "synthesize": "https://app.coqui.ai/api/v2/samples", - "list_voices": "https://app.coqui.ai/api/v2/voices", - }, - "XTTS": { - "list_speakers": "https://app.coqui.ai/api/v2/speakers", - "synthesize": "https://app.coqui.ai/api/v2/samples/xtts/render/", - "list_voices": "https://app.coqui.ai/api/v2/voices/xtts/", - }, - "XTTS-multilang": { - "list_speakers": "https://app.coqui.ai/api/v2/speakers", - "synthesize": "https://app.coqui.ai/api/v2/samples/multilingual/render/", - "list_voices": "https://app.coqui.ai/api/v2/voices/xtts/", - }, - } - - SUPPORTED_LANGUAGES = ["en", "es", "de", "fr", "it", "pt", "pl"] - - def __init__(self, api_token=None, model="XTTS"): - self.api_token = api_token - self.model = model - self.headers = None - self._speakers = None - self._check_token() - - @staticmethod - def ping_api(): - URL = "https://coqui.gateway.scarf.sh/tts/api" - _ = requests.get(URL) - - @property - def speakers(self): - if self._speakers is None: - self._speakers = self.list_all_speakers() - return self._speakers - - @property - def emotions(self): - """Return a list of available emotions. - - TODO: Get this from the API endpoint. - """ - if self.model == "V1": - return ["Neutral", "Happy", "Sad", "Angry", "Dull"] - else: - raise ValueError(f"❗ Emotions are not available for {self.model}.") - - def _check_token(self): - if self.api_token is None: - self.api_token = os.environ.get("COQUI_STUDIO_TOKEN") - self.headers = {"Content-Type": "application/json", "Authorization": f"Bearer {self.api_token}"} - if not self.api_token: - raise ValueError( - "No API token found for 🐸Coqui Studio voices - https://coqui.ai \n" - "Visit 🔗https://app.coqui.ai/account to get one.\n" - "Set it as an environment variable `export COQUI_STUDIO_TOKEN=`\n" - "" - ) - - def list_all_speakers(self): - """Return both built-in Coqui Studio speakers and custom voices created by the user.""" - return self.list_speakers() + self.list_voices() - - def list_speakers(self): - """List built-in Coqui Studio speakers.""" - self._check_token() - conn = http.client.HTTPSConnection("app.coqui.ai") - url = self.MODEL_ENDPOINTS[self.model]["list_speakers"] - conn.request("GET", f"{url}?per_page=100", headers=self.headers) - res = conn.getresponse() - data = res.read() - return [Speaker(s) for s in json.loads(data)["result"]] - - def list_voices(self): - """List custom voices created by the user.""" - conn = http.client.HTTPSConnection("app.coqui.ai") - url = self.MODEL_ENDPOINTS[self.model]["list_voices"] - conn.request("GET", f"{url}", headers=self.headers) - res = conn.getresponse() - data = res.read() - return [Speaker(s, True) for s in json.loads(data)["result"]] - - def list_speakers_as_tts_models(self): - """List speakers in ModelManager format.""" - models = [] - for speaker in self.speakers: - model = f"coqui_studio/multilingual/{speaker.name}/{self.model}" - models.append(model) - return models - - def name_to_speaker(self, name): - for speaker in self.speakers: - if speaker.name == name: - return speaker - raise ValueError(f"Speaker {name} not found in {self.speakers}") - - def id_to_speaker(self, speaker_id): - for speaker in self.speakers: - if speaker.id == speaker_id: - return speaker - raise ValueError(f"Speaker {speaker_id} not found.") - - @staticmethod - def url_to_np(url): - tmp_file, _ = urllib.request.urlretrieve(url) - rate, data = wavfile.read(tmp_file) - return data, rate - - @staticmethod - def _create_payload(model, text, speaker, speed, emotion, language): - payload = {} - # if speaker.is_voice: - payload["voice_id"] = speaker.id - # else: - payload["speaker_id"] = speaker.id - - if model == "V1": - payload.update( - { - "emotion": emotion, - "name": speaker.name, - "text": text, - "speed": speed, - } - ) - elif model == "XTTS": - payload.update( - { - "name": speaker.name, - "text": text, - "speed": speed, - } - ) - elif model == "XTTS-multilang": - payload.update( - { - "name": speaker.name, - "text": text, - "speed": speed, - "language": language, - } - ) - else: - raise ValueError(f"❗ Unknown model {model}") - return payload - - def _check_tts_args(self, text, speaker_name, speaker_id, emotion, speed, language): - assert text is not None, "❗ text is required for V1 model." - assert speaker_name is not None, "❗ speaker_name is required for V1 model." - if self.model == "V1": - if emotion is None: - emotion = "Neutral" - assert language is None, "❗ language is not supported for V1 model." - elif self.model == "XTTS": - assert emotion is None, f"❗ Emotions are not supported for XTTS model. Use V1 model." - assert language is None, "❗ Language is not supported for XTTS model. Use XTTS-multilang model." - elif self.model == "XTTS-multilang": - assert emotion is None, f"❗ Emotions are not supported for XTTS-multilang model. Use V1 model." - assert language is not None, "❗ Language is required for XTTS-multilang model." - assert ( - language in self.SUPPORTED_LANGUAGES - ), f"❗ Language {language} is not yet supported. Use one of: en, es, de, fr, it, pt, pl" - return text, speaker_name, speaker_id, emotion, speed, language - - def tts( - self, - text: str, - speaker_name: str = None, - speaker_id=None, - emotion=None, - speed=1.0, - language=None, # pylint: disable=unused-argument - ) -> Tuple[np.ndarray, int]: - """Synthesize speech from text. - - Args: - text (str): Text to synthesize. - speaker_name (str): Name of the speaker. You can get the list of speakers with `list_speakers()` and - voices (user generated speakers) with `list_voices()`. - speaker_id (str): Speaker ID. If None, the speaker name is used. - emotion (str): Emotion of the speaker. One of "Neutral", "Happy", "Sad", "Angry", "Dull". Emotions are only - supported by `V1` model. Defaults to None. - speed (float): Speed of the speech. 1.0 is normal speed. - language (str): Language of the text. If None, the default language of the speaker is used. Language is only - supported by `XTTS-multilang` model. Currently supports en, de, es, fr, it, pt, pl. Defaults to "en". - """ - self._check_token() - self.ping_api() - - if speaker_name is None and speaker_id is None: - raise ValueError(" [!] Please provide either a `speaker_name` or a `speaker_id`.") - if speaker_id is None: - speaker = self.name_to_speaker(speaker_name) - else: - speaker = self.id_to_speaker(speaker_id) - - text, speaker_name, speaker_id, emotion, speed, language = self._check_tts_args( - text, speaker_name, speaker_id, emotion, speed, language - ) - - conn = http.client.HTTPSConnection("app.coqui.ai") - payload = self._create_payload(self.model, text, speaker, speed, emotion, language) - url = self.MODEL_ENDPOINTS[self.model]["synthesize"] - conn.request("POST", url, json.dumps(payload), self.headers) - res = conn.getresponse() - data = res.read() - try: - wav, sr = self.url_to_np(json.loads(data)["audio_url"]) - except KeyError as e: - raise ValueError(f" [!] 🐸 API returned error: {data}") from e - return wav, sr - - def tts_to_file( - self, - text: str, - speaker_name: str, - speaker_id=None, - emotion=None, - speed=1.0, - language=None, - file_path: str = None, - ) -> str: - """Synthesize speech from text and save it to a file. - - Args: - text (str): Text to synthesize. - speaker_name (str): Name of the speaker. You can get the list of speakers with `list_speakers()` and - voices (user generated speakers) with `list_voices()`. - speaker_id (str): Speaker ID. If None, the speaker name is used. - emotion (str): Emotion of the speaker. One of "Neutral", "Happy", "Sad", "Angry", "Dull". - speed (float): Speed of the speech. 1.0 is normal speed. - language (str): Language of the text. If None, the default language of the speaker is used. Language is only - supported by `XTTS-multilang` model. Currently supports en, de, es, fr, it, pt, pl. Defaults to "en". - file_path (str): Path to save the file. If None, a temporary file is created. - """ - if file_path is None: - file_path = tempfile.mktemp(".wav") - wav, sr = self.tts(text, speaker_name, speaker_id, emotion, speed, language) - wavfile.write(file_path, sr, wav) - return file_path - - -if __name__ == "__main__": - import time - - api = CS_API() - print(api.speakers) - print(api.list_speakers_as_tts_models()) - - ts = time.time() - wav, sr = api.tts("It took me quite a long time to develop a voice.", speaker_name=api.speakers[0].name) - print(f" [i] XTTS took {time.time() - ts:.2f}s") - - filepath = api.tts_to_file(text="Hello world!", speaker_name=api.speakers[0].name, file_path="output.wav") - - api = CS_API(model="XTTS-multilang") - print(api.speakers) - - ts = time.time() - wav, sr = api.tts( - "It took me quite a long time to develop a voice.", speaker_name=api.speakers[0].name, language="en" - ) - print(f" [i] XTTS took {time.time() - ts:.2f}s") - - filepath = api.tts_to_file( - text="Hello world!", speaker_name=api.speakers[0].name, file_path="output.wav", language="en" - ) diff --git a/TTS/TTS/encoder/README.md b/TTS/TTS/encoder/README.md deleted file mode 100644 index b38b20052b707b0358068bc0ce58bc300a149def..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/README.md +++ /dev/null @@ -1,18 +0,0 @@ -### Speaker Encoder - -This is an implementation of https://arxiv.org/abs/1710.10467. This model can be used for voice and speaker embedding. - -With the code here you can generate d-vectors for both multi-speaker and single-speaker TTS datasets, then visualise and explore them along with the associated audio files in an interactive chart. - -Below is an example showing embedding results of various speakers. You can generate the same plot with the provided notebook as demonstrated in [this video](https://youtu.be/KW3oO7JVa7Q). - -![](umap.png) - -Download a pretrained model from [Released Models](https://github.com/mozilla/TTS/wiki/Released-Models) page. - -To run the code, you need to follow the same flow as in TTS. - -- Define 'config.json' for your needs. Note that, audio parameters should match your TTS model. -- Example training call ```python speaker_encoder/train.py --config_path speaker_encoder/config.json --data_path ~/Data/Libri-TTS/train-clean-360``` -- Generate embedding vectors ```python speaker_encoder/compute_embeddings.py --use_cuda true /model/path/best_model.pth model/config/path/config.json dataset/path/ output_path``` . This code parses all .wav files at the given dataset path and generates the same folder structure under the output path with the generated embedding files. -- Watch training on Tensorboard as in TTS diff --git a/TTS/TTS/encoder/__init__.py b/TTS/TTS/encoder/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/encoder/configs/base_encoder_config.py b/TTS/TTS/encoder/configs/base_encoder_config.py deleted file mode 100644 index ebbaa0457bb55aef70d54dd36fd9b2b7f7c702bb..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/configs/base_encoder_config.py +++ /dev/null @@ -1,61 +0,0 @@ -from dataclasses import asdict, dataclass, field -from typing import Dict, List - -from coqpit import MISSING - -from TTS.config.shared_configs import BaseAudioConfig, BaseDatasetConfig, BaseTrainingConfig - - -@dataclass -class BaseEncoderConfig(BaseTrainingConfig): - """Defines parameters for a Generic Encoder model.""" - - model: str = None - audio: BaseAudioConfig = field(default_factory=BaseAudioConfig) - datasets: List[BaseDatasetConfig] = field(default_factory=lambda: [BaseDatasetConfig()]) - # model params - model_params: Dict = field( - default_factory=lambda: { - "model_name": "lstm", - "input_dim": 80, - "proj_dim": 256, - "lstm_dim": 768, - "num_lstm_layers": 3, - "use_lstm_with_projection": True, - } - ) - - audio_augmentation: Dict = field(default_factory=lambda: {}) - - # training params - epochs: int = 10000 - loss: str = "angleproto" - grad_clip: float = 3.0 - lr: float = 0.0001 - optimizer: str = "radam" - optimizer_params: Dict = field(default_factory=lambda: {"betas": [0.9, 0.999], "weight_decay": 0}) - lr_decay: bool = False - warmup_steps: int = 4000 - - # logging params - tb_model_param_stats: bool = False - steps_plot_stats: int = 10 - save_step: int = 1000 - print_step: int = 20 - run_eval: bool = False - - # data loader - num_classes_in_batch: int = MISSING - num_utter_per_class: int = MISSING - eval_num_classes_in_batch: int = None - eval_num_utter_per_class: int = None - - num_loader_workers: int = MISSING - voice_len: float = 1.6 - - def check_values(self): - super().check_values() - c = asdict(self) - assert ( - c["model_params"]["input_dim"] == self.audio.num_mels - ), " [!] model input dimendion must be equal to melspectrogram dimension." diff --git a/TTS/TTS/encoder/configs/emotion_encoder_config.py b/TTS/TTS/encoder/configs/emotion_encoder_config.py deleted file mode 100644 index 5eda2671be980abce4a0506a075387b601a1596c..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/configs/emotion_encoder_config.py +++ /dev/null @@ -1,12 +0,0 @@ -from dataclasses import asdict, dataclass - -from TTS.encoder.configs.base_encoder_config import BaseEncoderConfig - - -@dataclass -class EmotionEncoderConfig(BaseEncoderConfig): - """Defines parameters for Emotion Encoder model.""" - - model: str = "emotion_encoder" - map_classid_to_classname: dict = None - class_name_key: str = "emotion_name" diff --git a/TTS/TTS/encoder/configs/speaker_encoder_config.py b/TTS/TTS/encoder/configs/speaker_encoder_config.py deleted file mode 100644 index 6dceb00277ba68efe128936ff7f9456338f9753f..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/configs/speaker_encoder_config.py +++ /dev/null @@ -1,11 +0,0 @@ -from dataclasses import asdict, dataclass - -from TTS.encoder.configs.base_encoder_config import BaseEncoderConfig - - -@dataclass -class SpeakerEncoderConfig(BaseEncoderConfig): - """Defines parameters for Speaker Encoder model.""" - - model: str = "speaker_encoder" - class_name_key: str = "speaker_name" diff --git a/TTS/TTS/encoder/dataset.py b/TTS/TTS/encoder/dataset.py deleted file mode 100644 index 582b1fe9ca35cb9afbc20b8f72b6173282201272..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/dataset.py +++ /dev/null @@ -1,147 +0,0 @@ -import random - -import torch -from torch.utils.data import Dataset - -from TTS.encoder.utils.generic_utils import AugmentWAV - - -class EncoderDataset(Dataset): - def __init__( - self, - config, - ap, - meta_data, - voice_len=1.6, - num_classes_in_batch=64, - num_utter_per_class=10, - verbose=False, - augmentation_config=None, - use_torch_spec=None, - ): - """ - Args: - ap (TTS.tts.utils.AudioProcessor): audio processor object. - meta_data (list): list of dataset instances. - seq_len (int): voice segment length in seconds. - verbose (bool): print diagnostic information. - """ - super().__init__() - self.config = config - self.items = meta_data - self.sample_rate = ap.sample_rate - self.seq_len = int(voice_len * self.sample_rate) - self.num_utter_per_class = num_utter_per_class - self.ap = ap - self.verbose = verbose - self.use_torch_spec = use_torch_spec - self.classes, self.items = self.__parse_items() - - self.classname_to_classid = {key: i for i, key in enumerate(self.classes)} - - # Data Augmentation - self.augmentator = None - self.gaussian_augmentation_config = None - if augmentation_config: - self.data_augmentation_p = augmentation_config["p"] - if self.data_augmentation_p and ("additive" in augmentation_config or "rir" in augmentation_config): - self.augmentator = AugmentWAV(ap, augmentation_config) - - if "gaussian" in augmentation_config.keys(): - self.gaussian_augmentation_config = augmentation_config["gaussian"] - - if self.verbose: - print("\n > DataLoader initialization") - print(f" | > Classes per Batch: {num_classes_in_batch}") - print(f" | > Number of instances : {len(self.items)}") - print(f" | > Sequence length: {self.seq_len}") - print(f" | > Num Classes: {len(self.classes)}") - print(f" | > Classes: {self.classes}") - - def load_wav(self, filename): - audio = self.ap.load_wav(filename, sr=self.ap.sample_rate) - return audio - - def __parse_items(self): - class_to_utters = {} - for item in self.items: - path_ = item["audio_file"] - class_name = item[self.config.class_name_key] - if class_name in class_to_utters.keys(): - class_to_utters[class_name].append(path_) - else: - class_to_utters[class_name] = [ - path_, - ] - - # skip classes with number of samples >= self.num_utter_per_class - class_to_utters = {k: v for (k, v) in class_to_utters.items() if len(v) >= self.num_utter_per_class} - - classes = list(class_to_utters.keys()) - classes.sort() - - new_items = [] - for item in self.items: - path_ = item["audio_file"] - class_name = item["emotion_name"] if self.config.model == "emotion_encoder" else item["speaker_name"] - # ignore filtered classes - if class_name not in classes: - continue - # ignore small audios - if self.load_wav(path_).shape[0] - self.seq_len <= 0: - continue - - new_items.append({"wav_file_path": path_, "class_name": class_name}) - - return classes, new_items - - def __len__(self): - return len(self.items) - - def get_num_classes(self): - return len(self.classes) - - def get_class_list(self): - return self.classes - - def set_classes(self, classes): - self.classes = classes - self.classname_to_classid = {key: i for i, key in enumerate(self.classes)} - - def get_map_classid_to_classname(self): - return dict((c_id, c_n) for c_n, c_id in self.classname_to_classid.items()) - - def __getitem__(self, idx): - return self.items[idx] - - def collate_fn(self, batch): - # get the batch class_ids - labels = [] - feats = [] - for item in batch: - utter_path = item["wav_file_path"] - class_name = item["class_name"] - - # get classid - class_id = self.classname_to_classid[class_name] - # load wav file - wav = self.load_wav(utter_path) - offset = random.randint(0, wav.shape[0] - self.seq_len) - wav = wav[offset : offset + self.seq_len] - - if self.augmentator is not None and self.data_augmentation_p: - if random.random() < self.data_augmentation_p: - wav = self.augmentator.apply_one(wav) - - if not self.use_torch_spec: - mel = self.ap.melspectrogram(wav) - feats.append(torch.FloatTensor(mel)) - else: - feats.append(torch.FloatTensor(wav)) - - labels.append(class_id) - - feats = torch.stack(feats) - labels = torch.LongTensor(labels) - - return feats, labels diff --git a/TTS/TTS/encoder/losses.py b/TTS/TTS/encoder/losses.py deleted file mode 100644 index 5b5aa0fc48fe00aeedeff28ba48ed2af498ce582..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/losses.py +++ /dev/null @@ -1,226 +0,0 @@ -import torch -import torch.nn.functional as F -from torch import nn - - -# adapted from https://github.com/cvqluu/GE2E-Loss -class GE2ELoss(nn.Module): - def __init__(self, init_w=10.0, init_b=-5.0, loss_method="softmax"): - """ - Implementation of the Generalized End-to-End loss defined in https://arxiv.org/abs/1710.10467 [1] - Accepts an input of size (N, M, D) - where N is the number of speakers in the batch, - M is the number of utterances per speaker, - and D is the dimensionality of the embedding vector (e.g. d-vector) - Args: - - init_w (float): defines the initial value of w in Equation (5) of [1] - - init_b (float): definies the initial value of b in Equation (5) of [1] - """ - super().__init__() - # pylint: disable=E1102 - self.w = nn.Parameter(torch.tensor(init_w)) - # pylint: disable=E1102 - self.b = nn.Parameter(torch.tensor(init_b)) - self.loss_method = loss_method - - print(" > Initialized Generalized End-to-End loss") - - assert self.loss_method in ["softmax", "contrast"] - - if self.loss_method == "softmax": - self.embed_loss = self.embed_loss_softmax - if self.loss_method == "contrast": - self.embed_loss = self.embed_loss_contrast - - # pylint: disable=R0201 - def calc_new_centroids(self, dvecs, centroids, spkr, utt): - """ - Calculates the new centroids excluding the reference utterance - """ - excl = torch.cat((dvecs[spkr, :utt], dvecs[spkr, utt + 1 :])) - excl = torch.mean(excl, 0) - new_centroids = [] - for i, centroid in enumerate(centroids): - if i == spkr: - new_centroids.append(excl) - else: - new_centroids.append(centroid) - return torch.stack(new_centroids) - - def calc_cosine_sim(self, dvecs, centroids): - """ - Make the cosine similarity matrix with dims (N,M,N) - """ - cos_sim_matrix = [] - for spkr_idx, speaker in enumerate(dvecs): - cs_row = [] - for utt_idx, utterance in enumerate(speaker): - new_centroids = self.calc_new_centroids(dvecs, centroids, spkr_idx, utt_idx) - # vector based cosine similarity for speed - cs_row.append( - torch.clamp( - torch.mm( - utterance.unsqueeze(1).transpose(0, 1), - new_centroids.transpose(0, 1), - ) - / (torch.norm(utterance) * torch.norm(new_centroids, dim=1)), - 1e-6, - ) - ) - cs_row = torch.cat(cs_row, dim=0) - cos_sim_matrix.append(cs_row) - return torch.stack(cos_sim_matrix) - - # pylint: disable=R0201 - def embed_loss_softmax(self, dvecs, cos_sim_matrix): - """ - Calculates the loss on each embedding $L(e_{ji})$ by taking softmax - """ - N, M, _ = dvecs.shape - L = [] - for j in range(N): - L_row = [] - for i in range(M): - L_row.append(-F.log_softmax(cos_sim_matrix[j, i], 0)[j]) - L_row = torch.stack(L_row) - L.append(L_row) - return torch.stack(L) - - # pylint: disable=R0201 - def embed_loss_contrast(self, dvecs, cos_sim_matrix): - """ - Calculates the loss on each embedding $L(e_{ji})$ by contrast loss with closest centroid - """ - N, M, _ = dvecs.shape - L = [] - for j in range(N): - L_row = [] - for i in range(M): - centroids_sigmoids = torch.sigmoid(cos_sim_matrix[j, i]) - excl_centroids_sigmoids = torch.cat((centroids_sigmoids[:j], centroids_sigmoids[j + 1 :])) - L_row.append(1.0 - torch.sigmoid(cos_sim_matrix[j, i, j]) + torch.max(excl_centroids_sigmoids)) - L_row = torch.stack(L_row) - L.append(L_row) - return torch.stack(L) - - def forward(self, x, _label=None): - """ - Calculates the GE2E loss for an input of dimensions (num_speakers, num_utts_per_speaker, dvec_feats) - """ - - assert x.size()[1] >= 2 - - centroids = torch.mean(x, 1) - cos_sim_matrix = self.calc_cosine_sim(x, centroids) - torch.clamp(self.w, 1e-6) - cos_sim_matrix = self.w * cos_sim_matrix + self.b - L = self.embed_loss(x, cos_sim_matrix) - return L.mean() - - -# adapted from https://github.com/clovaai/voxceleb_trainer/blob/master/loss/angleproto.py -class AngleProtoLoss(nn.Module): - """ - Implementation of the Angular Prototypical loss defined in https://arxiv.org/abs/2003.11982 - Accepts an input of size (N, M, D) - where N is the number of speakers in the batch, - M is the number of utterances per speaker, - and D is the dimensionality of the embedding vector - Args: - - init_w (float): defines the initial value of w - - init_b (float): definies the initial value of b - """ - - def __init__(self, init_w=10.0, init_b=-5.0): - super().__init__() - # pylint: disable=E1102 - self.w = nn.Parameter(torch.tensor(init_w)) - # pylint: disable=E1102 - self.b = nn.Parameter(torch.tensor(init_b)) - self.criterion = torch.nn.CrossEntropyLoss() - - print(" > Initialized Angular Prototypical loss") - - def forward(self, x, _label=None): - """ - Calculates the AngleProto loss for an input of dimensions (num_speakers, num_utts_per_speaker, dvec_feats) - """ - - assert x.size()[1] >= 2 - - out_anchor = torch.mean(x[:, 1:, :], 1) - out_positive = x[:, 0, :] - num_speakers = out_anchor.size()[0] - - cos_sim_matrix = F.cosine_similarity( - out_positive.unsqueeze(-1).expand(-1, -1, num_speakers), - out_anchor.unsqueeze(-1).expand(-1, -1, num_speakers).transpose(0, 2), - ) - torch.clamp(self.w, 1e-6) - cos_sim_matrix = cos_sim_matrix * self.w + self.b - label = torch.arange(num_speakers).to(cos_sim_matrix.device) - L = self.criterion(cos_sim_matrix, label) - return L - - -class SoftmaxLoss(nn.Module): - """ - Implementation of the Softmax loss as defined in https://arxiv.org/abs/2003.11982 - Args: - - embedding_dim (float): speaker embedding dim - - n_speakers (float): number of speakers - """ - - def __init__(self, embedding_dim, n_speakers): - super().__init__() - - self.criterion = torch.nn.CrossEntropyLoss() - self.fc = nn.Linear(embedding_dim, n_speakers) - - print("Initialised Softmax Loss") - - def forward(self, x, label=None): - # reshape for compatibility - x = x.reshape(-1, x.size()[-1]) - label = label.reshape(-1) - - x = self.fc(x) - L = self.criterion(x, label) - - return L - - def inference(self, embedding): - x = self.fc(embedding) - activations = torch.nn.functional.softmax(x, dim=1).squeeze(0) - class_id = torch.argmax(activations) - return class_id - - -class SoftmaxAngleProtoLoss(nn.Module): - """ - Implementation of the Softmax AnglePrototypical loss as defined in https://arxiv.org/abs/2009.14153 - Args: - - embedding_dim (float): speaker embedding dim - - n_speakers (float): number of speakers - - init_w (float): defines the initial value of w - - init_b (float): definies the initial value of b - """ - - def __init__(self, embedding_dim, n_speakers, init_w=10.0, init_b=-5.0): - super().__init__() - - self.softmax = SoftmaxLoss(embedding_dim, n_speakers) - self.angleproto = AngleProtoLoss(init_w, init_b) - - print("Initialised SoftmaxAnglePrototypical Loss") - - def forward(self, x, label=None): - """ - Calculates the SoftmaxAnglePrototypical loss for an input of dimensions (num_speakers, num_utts_per_speaker, dvec_feats) - """ - - Lp = self.angleproto(x) - - Ls = self.softmax(x, label) - - return Ls + Lp diff --git a/TTS/TTS/encoder/models/base_encoder.py b/TTS/TTS/encoder/models/base_encoder.py deleted file mode 100644 index 957ea3c4ca719c2a054c93382787909e418288b2..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/models/base_encoder.py +++ /dev/null @@ -1,161 +0,0 @@ -import numpy as np -import torch -import torchaudio -from coqpit import Coqpit -from torch import nn - -from TTS.encoder.losses import AngleProtoLoss, GE2ELoss, SoftmaxAngleProtoLoss -from TTS.utils.generic_utils import set_init_dict -from TTS.utils.io import load_fsspec - - -class PreEmphasis(nn.Module): - def __init__(self, coefficient=0.97): - super().__init__() - self.coefficient = coefficient - self.register_buffer("filter", torch.FloatTensor([-self.coefficient, 1.0]).unsqueeze(0).unsqueeze(0)) - - def forward(self, x): - assert len(x.size()) == 2 - - x = torch.nn.functional.pad(x.unsqueeze(1), (1, 0), "reflect") - return torch.nn.functional.conv1d(x, self.filter).squeeze(1) - - -class BaseEncoder(nn.Module): - """Base `encoder` class. Every new `encoder` model must inherit this. - - It defines common `encoder` specific functions. - """ - - # pylint: disable=W0102 - def __init__(self): - super(BaseEncoder, self).__init__() - - def get_torch_mel_spectrogram_class(self, audio_config): - return torch.nn.Sequential( - PreEmphasis(audio_config["preemphasis"]), - # TorchSTFT( - # n_fft=audio_config["fft_size"], - # hop_length=audio_config["hop_length"], - # win_length=audio_config["win_length"], - # sample_rate=audio_config["sample_rate"], - # window="hamming_window", - # mel_fmin=0.0, - # mel_fmax=None, - # use_htk=True, - # do_amp_to_db=False, - # n_mels=audio_config["num_mels"], - # power=2.0, - # use_mel=True, - # mel_norm=None, - # ) - torchaudio.transforms.MelSpectrogram( - sample_rate=audio_config["sample_rate"], - n_fft=audio_config["fft_size"], - win_length=audio_config["win_length"], - hop_length=audio_config["hop_length"], - window_fn=torch.hamming_window, - n_mels=audio_config["num_mels"], - ), - ) - - @torch.no_grad() - def inference(self, x, l2_norm=True): - return self.forward(x, l2_norm) - - @torch.no_grad() - def compute_embedding(self, x, num_frames=250, num_eval=10, return_mean=True, l2_norm=True): - """ - Generate embeddings for a batch of utterances - x: 1xTxD - """ - # map to the waveform size - if self.use_torch_spec: - num_frames = num_frames * self.audio_config["hop_length"] - - max_len = x.shape[1] - - if max_len < num_frames: - num_frames = max_len - - offsets = np.linspace(0, max_len - num_frames, num=num_eval) - - frames_batch = [] - for offset in offsets: - offset = int(offset) - end_offset = int(offset + num_frames) - frames = x[:, offset:end_offset] - frames_batch.append(frames) - - frames_batch = torch.cat(frames_batch, dim=0) - embeddings = self.inference(frames_batch, l2_norm=l2_norm) - - if return_mean: - embeddings = torch.mean(embeddings, dim=0, keepdim=True) - return embeddings - - def get_criterion(self, c: Coqpit, num_classes=None): - if c.loss == "ge2e": - criterion = GE2ELoss(loss_method="softmax") - elif c.loss == "angleproto": - criterion = AngleProtoLoss() - elif c.loss == "softmaxproto": - criterion = SoftmaxAngleProtoLoss(c.model_params["proj_dim"], num_classes) - else: - raise Exception("The %s not is a loss supported" % c.loss) - return criterion - - def load_checkpoint( - self, - config: Coqpit, - checkpoint_path: str, - eval: bool = False, - use_cuda: bool = False, - criterion=None, - cache=False, - ): - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - try: - self.load_state_dict(state["model"]) - print(" > Model fully restored. ") - except (KeyError, RuntimeError) as error: - # If eval raise the error - if eval: - raise error - - print(" > Partial model initialization.") - model_dict = self.state_dict() - model_dict = set_init_dict(model_dict, state["model"], c) - self.load_state_dict(model_dict) - del model_dict - - # load the criterion for restore_path - if criterion is not None and "criterion" in state: - try: - criterion.load_state_dict(state["criterion"]) - except (KeyError, RuntimeError) as error: - print(" > Criterion load ignored because of:", error) - - # instance and load the criterion for the encoder classifier in inference time - if ( - eval - and criterion is None - and "criterion" in state - and getattr(config, "map_classid_to_classname", None) is not None - ): - criterion = self.get_criterion(config, len(config.map_classid_to_classname)) - criterion.load_state_dict(state["criterion"]) - - if use_cuda: - self.cuda() - if criterion is not None: - criterion = criterion.cuda() - - if eval: - self.eval() - assert not self.training - - if not eval: - return criterion, state["step"] - return criterion diff --git a/TTS/TTS/encoder/models/lstm.py b/TTS/TTS/encoder/models/lstm.py deleted file mode 100644 index 51852b5b820d181824b0db1a205cd5d7bd4fb20d..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/models/lstm.py +++ /dev/null @@ -1,99 +0,0 @@ -import torch -from torch import nn - -from TTS.encoder.models.base_encoder import BaseEncoder - - -class LSTMWithProjection(nn.Module): - def __init__(self, input_size, hidden_size, proj_size): - super().__init__() - self.input_size = input_size - self.hidden_size = hidden_size - self.proj_size = proj_size - self.lstm = nn.LSTM(input_size, hidden_size, batch_first=True) - self.linear = nn.Linear(hidden_size, proj_size, bias=False) - - def forward(self, x): - self.lstm.flatten_parameters() - o, (_, _) = self.lstm(x) - return self.linear(o) - - -class LSTMWithoutProjection(nn.Module): - def __init__(self, input_dim, lstm_dim, proj_dim, num_lstm_layers): - super().__init__() - self.lstm = nn.LSTM(input_size=input_dim, hidden_size=lstm_dim, num_layers=num_lstm_layers, batch_first=True) - self.linear = nn.Linear(lstm_dim, proj_dim, bias=True) - self.relu = nn.ReLU() - - def forward(self, x): - _, (hidden, _) = self.lstm(x) - return self.relu(self.linear(hidden[-1])) - - -class LSTMSpeakerEncoder(BaseEncoder): - def __init__( - self, - input_dim, - proj_dim=256, - lstm_dim=768, - num_lstm_layers=3, - use_lstm_with_projection=True, - use_torch_spec=False, - audio_config=None, - ): - super().__init__() - self.use_lstm_with_projection = use_lstm_with_projection - self.use_torch_spec = use_torch_spec - self.audio_config = audio_config - self.proj_dim = proj_dim - - layers = [] - # choise LSTM layer - if use_lstm_with_projection: - layers.append(LSTMWithProjection(input_dim, lstm_dim, proj_dim)) - for _ in range(num_lstm_layers - 1): - layers.append(LSTMWithProjection(proj_dim, lstm_dim, proj_dim)) - self.layers = nn.Sequential(*layers) - else: - self.layers = LSTMWithoutProjection(input_dim, lstm_dim, proj_dim, num_lstm_layers) - - self.instancenorm = nn.InstanceNorm1d(input_dim) - - if self.use_torch_spec: - self.torch_spec = self.get_torch_mel_spectrogram_class(audio_config) - else: - self.torch_spec = None - - self._init_layers() - - def _init_layers(self): - for name, param in self.layers.named_parameters(): - if "bias" in name: - nn.init.constant_(param, 0.0) - elif "weight" in name: - nn.init.xavier_normal_(param) - - def forward(self, x, l2_norm=True): - """Forward pass of the model. - - Args: - x (Tensor): Raw waveform signal or spectrogram frames. If input is a waveform, `torch_spec` must be `True` - to compute the spectrogram on-the-fly. - l2_norm (bool): Whether to L2-normalize the outputs. - - Shapes: - - x: :math:`(N, 1, T_{in})` or :math:`(N, D_{spec}, T_{in})` - """ - with torch.no_grad(): - with torch.cuda.amp.autocast(enabled=False): - if self.use_torch_spec: - x.squeeze_(1) - x = self.torch_spec(x) - x = self.instancenorm(x).transpose(1, 2) - d = self.layers(x) - if self.use_lstm_with_projection: - d = d[:, -1] - if l2_norm: - d = torch.nn.functional.normalize(d, p=2, dim=1) - return d diff --git a/TTS/TTS/encoder/models/resnet.py b/TTS/TTS/encoder/models/resnet.py deleted file mode 100644 index 5eafcd6005739fcdc454fb20def3e66791766a53..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/models/resnet.py +++ /dev/null @@ -1,198 +0,0 @@ -import torch -from torch import nn - -# from TTS.utils.audio.torch_transforms import TorchSTFT -from TTS.encoder.models.base_encoder import BaseEncoder - - -class SELayer(nn.Module): - def __init__(self, channel, reduction=8): - super(SELayer, self).__init__() - self.avg_pool = nn.AdaptiveAvgPool2d(1) - self.fc = nn.Sequential( - nn.Linear(channel, channel // reduction), - nn.ReLU(inplace=True), - nn.Linear(channel // reduction, channel), - nn.Sigmoid(), - ) - - def forward(self, x): - b, c, _, _ = x.size() - y = self.avg_pool(x).view(b, c) - y = self.fc(y).view(b, c, 1, 1) - return x * y - - -class SEBasicBlock(nn.Module): - expansion = 1 - - def __init__(self, inplanes, planes, stride=1, downsample=None, reduction=8): - super(SEBasicBlock, self).__init__() - self.conv1 = nn.Conv2d(inplanes, planes, kernel_size=3, stride=stride, padding=1, bias=False) - self.bn1 = nn.BatchNorm2d(planes) - self.conv2 = nn.Conv2d(planes, planes, kernel_size=3, padding=1, bias=False) - self.bn2 = nn.BatchNorm2d(planes) - self.relu = nn.ReLU(inplace=True) - self.se = SELayer(planes, reduction) - self.downsample = downsample - self.stride = stride - - def forward(self, x): - residual = x - - out = self.conv1(x) - out = self.relu(out) - out = self.bn1(out) - - out = self.conv2(out) - out = self.bn2(out) - out = self.se(out) - - if self.downsample is not None: - residual = self.downsample(x) - - out += residual - out = self.relu(out) - return out - - -class ResNetSpeakerEncoder(BaseEncoder): - """Implementation of the model H/ASP without batch normalization in speaker embedding. This model was proposed in: https://arxiv.org/abs/2009.14153 - Adapted from: https://github.com/clovaai/voxceleb_trainer - """ - - # pylint: disable=W0102 - def __init__( - self, - input_dim=64, - proj_dim=512, - layers=[3, 4, 6, 3], - num_filters=[32, 64, 128, 256], - encoder_type="ASP", - log_input=False, - use_torch_spec=False, - audio_config=None, - ): - super(ResNetSpeakerEncoder, self).__init__() - - self.encoder_type = encoder_type - self.input_dim = input_dim - self.log_input = log_input - self.use_torch_spec = use_torch_spec - self.audio_config = audio_config - self.proj_dim = proj_dim - - self.conv1 = nn.Conv2d(1, num_filters[0], kernel_size=3, stride=1, padding=1) - self.relu = nn.ReLU(inplace=True) - self.bn1 = nn.BatchNorm2d(num_filters[0]) - - self.inplanes = num_filters[0] - self.layer1 = self.create_layer(SEBasicBlock, num_filters[0], layers[0]) - self.layer2 = self.create_layer(SEBasicBlock, num_filters[1], layers[1], stride=(2, 2)) - self.layer3 = self.create_layer(SEBasicBlock, num_filters[2], layers[2], stride=(2, 2)) - self.layer4 = self.create_layer(SEBasicBlock, num_filters[3], layers[3], stride=(2, 2)) - - self.instancenorm = nn.InstanceNorm1d(input_dim) - - if self.use_torch_spec: - self.torch_spec = self.get_torch_mel_spectrogram_class(audio_config) - else: - self.torch_spec = None - - outmap_size = int(self.input_dim / 8) - - self.attention = nn.Sequential( - nn.Conv1d(num_filters[3] * outmap_size, 128, kernel_size=1), - nn.ReLU(), - nn.BatchNorm1d(128), - nn.Conv1d(128, num_filters[3] * outmap_size, kernel_size=1), - nn.Softmax(dim=2), - ) - - if self.encoder_type == "SAP": - out_dim = num_filters[3] * outmap_size - elif self.encoder_type == "ASP": - out_dim = num_filters[3] * outmap_size * 2 - else: - raise ValueError("Undefined encoder") - - self.fc = nn.Linear(out_dim, proj_dim) - - self._init_layers() - - def _init_layers(self): - for m in self.modules(): - if isinstance(m, nn.Conv2d): - nn.init.kaiming_normal_(m.weight, mode="fan_out", nonlinearity="relu") - elif isinstance(m, nn.BatchNorm2d): - nn.init.constant_(m.weight, 1) - nn.init.constant_(m.bias, 0) - - def create_layer(self, block, planes, blocks, stride=1): - downsample = None - if stride != 1 or self.inplanes != planes * block.expansion: - downsample = nn.Sequential( - nn.Conv2d(self.inplanes, planes * block.expansion, kernel_size=1, stride=stride, bias=False), - nn.BatchNorm2d(planes * block.expansion), - ) - - layers = [] - layers.append(block(self.inplanes, planes, stride, downsample)) - self.inplanes = planes * block.expansion - for _ in range(1, blocks): - layers.append(block(self.inplanes, planes)) - - return nn.Sequential(*layers) - - # pylint: disable=R0201 - def new_parameter(self, *size): - out = nn.Parameter(torch.FloatTensor(*size)) - nn.init.xavier_normal_(out) - return out - - def forward(self, x, l2_norm=False): - """Forward pass of the model. - - Args: - x (Tensor): Raw waveform signal or spectrogram frames. If input is a waveform, `torch_spec` must be `True` - to compute the spectrogram on-the-fly. - l2_norm (bool): Whether to L2-normalize the outputs. - - Shapes: - - x: :math:`(N, 1, T_{in})` or :math:`(N, D_{spec}, T_{in})` - """ - x.squeeze_(1) - # if you torch spec compute it otherwise use the mel spec computed by the AP - if self.use_torch_spec: - x = self.torch_spec(x) - - if self.log_input: - x = (x + 1e-6).log() - x = self.instancenorm(x).unsqueeze(1) - - x = self.conv1(x) - x = self.relu(x) - x = self.bn1(x) - - x = self.layer1(x) - x = self.layer2(x) - x = self.layer3(x) - x = self.layer4(x) - - x = x.reshape(x.size()[0], -1, x.size()[-1]) - - w = self.attention(x) - - if self.encoder_type == "SAP": - x = torch.sum(x * w, dim=2) - elif self.encoder_type == "ASP": - mu = torch.sum(x * w, dim=2) - sg = torch.sqrt((torch.sum((x**2) * w, dim=2) - mu**2).clamp(min=1e-5)) - x = torch.cat((mu, sg), 1) - - x = x.view(x.size()[0], -1) - x = self.fc(x) - - if l2_norm: - x = torch.nn.functional.normalize(x, p=2, dim=1) - return x diff --git a/TTS/TTS/encoder/requirements.txt b/TTS/TTS/encoder/requirements.txt deleted file mode 100644 index a486cc45ddb44591bd03c9c0df294fbe98c13884..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/requirements.txt +++ /dev/null @@ -1,2 +0,0 @@ -umap-learn -numpy>=1.17.0 diff --git a/TTS/TTS/encoder/utils/__init__.py b/TTS/TTS/encoder/utils/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/encoder/utils/generic_utils.py b/TTS/TTS/encoder/utils/generic_utils.py deleted file mode 100644 index 1da029611b5c9bd59b05d61189674832d50ed634..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/utils/generic_utils.py +++ /dev/null @@ -1,182 +0,0 @@ -import datetime -import glob -import os -import random -import re - -import numpy as np -from scipy import signal - -from TTS.encoder.models.lstm import LSTMSpeakerEncoder -from TTS.encoder.models.resnet import ResNetSpeakerEncoder -from TTS.utils.io import save_fsspec - - -class AugmentWAV(object): - def __init__(self, ap, augmentation_config): - self.ap = ap - self.use_additive_noise = False - - if "additive" in augmentation_config.keys(): - self.additive_noise_config = augmentation_config["additive"] - additive_path = self.additive_noise_config["sounds_path"] - if additive_path: - self.use_additive_noise = True - # get noise types - self.additive_noise_types = [] - for key in self.additive_noise_config.keys(): - if isinstance(self.additive_noise_config[key], dict): - self.additive_noise_types.append(key) - - additive_files = glob.glob(os.path.join(additive_path, "**/*.wav"), recursive=True) - - self.noise_list = {} - - for wav_file in additive_files: - noise_dir = wav_file.replace(additive_path, "").split(os.sep)[0] - # ignore not listed directories - if noise_dir not in self.additive_noise_types: - continue - if not noise_dir in self.noise_list: - self.noise_list[noise_dir] = [] - self.noise_list[noise_dir].append(wav_file) - - print( - f" | > Using Additive Noise Augmentation: with {len(additive_files)} audios instances from {self.additive_noise_types}" - ) - - self.use_rir = False - - if "rir" in augmentation_config.keys(): - self.rir_config = augmentation_config["rir"] - if self.rir_config["rir_path"]: - self.rir_files = glob.glob(os.path.join(self.rir_config["rir_path"], "**/*.wav"), recursive=True) - self.use_rir = True - - print(f" | > Using RIR Noise Augmentation: with {len(self.rir_files)} audios instances") - - self.create_augmentation_global_list() - - def create_augmentation_global_list(self): - if self.use_additive_noise: - self.global_noise_list = self.additive_noise_types - else: - self.global_noise_list = [] - if self.use_rir: - self.global_noise_list.append("RIR_AUG") - - def additive_noise(self, noise_type, audio): - clean_db = 10 * np.log10(np.mean(audio**2) + 1e-4) - - noise_list = random.sample( - self.noise_list[noise_type], - random.randint( - self.additive_noise_config[noise_type]["min_num_noises"], - self.additive_noise_config[noise_type]["max_num_noises"], - ), - ) - - audio_len = audio.shape[0] - noises_wav = None - for noise in noise_list: - noiseaudio = self.ap.load_wav(noise, sr=self.ap.sample_rate)[:audio_len] - - if noiseaudio.shape[0] < audio_len: - continue - - noise_snr = random.uniform( - self.additive_noise_config[noise_type]["min_snr_in_db"], - self.additive_noise_config[noise_type]["max_num_noises"], - ) - noise_db = 10 * np.log10(np.mean(noiseaudio**2) + 1e-4) - noise_wav = np.sqrt(10 ** ((clean_db - noise_db - noise_snr) / 10)) * noiseaudio - - if noises_wav is None: - noises_wav = noise_wav - else: - noises_wav += noise_wav - - # if all possible files is less than audio, choose other files - if noises_wav is None: - return self.additive_noise(noise_type, audio) - - return audio + noises_wav - - def reverberate(self, audio): - audio_len = audio.shape[0] - - rir_file = random.choice(self.rir_files) - rir = self.ap.load_wav(rir_file, sr=self.ap.sample_rate) - rir = rir / np.sqrt(np.sum(rir**2)) - return signal.convolve(audio, rir, mode=self.rir_config["conv_mode"])[:audio_len] - - def apply_one(self, audio): - noise_type = random.choice(self.global_noise_list) - if noise_type == "RIR_AUG": - return self.reverberate(audio) - - return self.additive_noise(noise_type, audio) - - -def to_camel(text): - text = text.capitalize() - return re.sub(r"(?!^)_([a-zA-Z])", lambda m: m.group(1).upper(), text) - - -def setup_encoder_model(config: "Coqpit"): - if config.model_params["model_name"].lower() == "lstm": - model = LSTMSpeakerEncoder( - config.model_params["input_dim"], - config.model_params["proj_dim"], - config.model_params["lstm_dim"], - config.model_params["num_lstm_layers"], - use_torch_spec=config.model_params.get("use_torch_spec", False), - audio_config=config.audio, - ) - elif config.model_params["model_name"].lower() == "resnet": - model = ResNetSpeakerEncoder( - input_dim=config.model_params["input_dim"], - proj_dim=config.model_params["proj_dim"], - log_input=config.model_params.get("log_input", False), - use_torch_spec=config.model_params.get("use_torch_spec", False), - audio_config=config.audio, - ) - return model - - -def save_checkpoint(model, optimizer, criterion, model_loss, out_path, current_step, epoch): - checkpoint_path = "checkpoint_{}.pth".format(current_step) - checkpoint_path = os.path.join(out_path, checkpoint_path) - print(" | | > Checkpoint saving : {}".format(checkpoint_path)) - - new_state_dict = model.state_dict() - state = { - "model": new_state_dict, - "optimizer": optimizer.state_dict() if optimizer is not None else None, - "criterion": criterion.state_dict(), - "step": current_step, - "epoch": epoch, - "loss": model_loss, - "date": datetime.date.today().strftime("%B %d, %Y"), - } - save_fsspec(state, checkpoint_path) - - -def save_best_model(model, optimizer, criterion, model_loss, best_loss, out_path, current_step, epoch): - if model_loss < best_loss: - new_state_dict = model.state_dict() - state = { - "model": new_state_dict, - "optimizer": optimizer.state_dict(), - "criterion": criterion.state_dict(), - "step": current_step, - "epoch": epoch, - "loss": model_loss, - "date": datetime.date.today().strftime("%B %d, %Y"), - } - best_loss = model_loss - bestmodel_path = "best_model.pth" - bestmodel_path = os.path.join(out_path, bestmodel_path) - print("\n > BEST MODEL ({0:.5f}) : {1:}".format(model_loss, bestmodel_path)) - save_fsspec(state, bestmodel_path) - return best_loss diff --git a/TTS/TTS/encoder/utils/io.py b/TTS/TTS/encoder/utils/io.py deleted file mode 100644 index d1dad3e24d234cdcb9616fb14bc87919c7e20291..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/utils/io.py +++ /dev/null @@ -1,38 +0,0 @@ -import datetime -import os - -from TTS.utils.io import save_fsspec - - -def save_checkpoint(model, optimizer, model_loss, out_path, current_step): - checkpoint_path = "checkpoint_{}.pth".format(current_step) - checkpoint_path = os.path.join(out_path, checkpoint_path) - print(" | | > Checkpoint saving : {}".format(checkpoint_path)) - - new_state_dict = model.state_dict() - state = { - "model": new_state_dict, - "optimizer": optimizer.state_dict() if optimizer is not None else None, - "step": current_step, - "loss": model_loss, - "date": datetime.date.today().strftime("%B %d, %Y"), - } - save_fsspec(state, checkpoint_path) - - -def save_best_model(model, optimizer, model_loss, best_loss, out_path, current_step): - if model_loss < best_loss: - new_state_dict = model.state_dict() - state = { - "model": new_state_dict, - "optimizer": optimizer.state_dict(), - "step": current_step, - "loss": model_loss, - "date": datetime.date.today().strftime("%B %d, %Y"), - } - best_loss = model_loss - bestmodel_path = "best_model.pth" - bestmodel_path = os.path.join(out_path, bestmodel_path) - print("\n > BEST MODEL ({0:.5f}) : {1:}".format(model_loss, bestmodel_path)) - save_fsspec(state, bestmodel_path) - return best_loss diff --git a/TTS/TTS/encoder/utils/prepare_voxceleb.py b/TTS/TTS/encoder/utils/prepare_voxceleb.py deleted file mode 100644 index b93baf9e60f0d5c35a4e86f6746e29f6097174b5..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/utils/prepare_voxceleb.py +++ /dev/null @@ -1,219 +0,0 @@ -# coding=utf-8 -# Copyright (C) 2020 ATHENA AUTHORS; Yiping Peng; Ne Luo -# All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -# Only support eager mode and TF>=2.0.0 -# pylint: disable=no-member, invalid-name, relative-beyond-top-level -# pylint: disable=too-many-locals, too-many-statements, too-many-arguments, too-many-instance-attributes -""" voxceleb 1 & 2 """ - -import hashlib -import os -import subprocess -import sys -import zipfile - -import pandas -import soundfile as sf -from absl import logging - -SUBSETS = { - "vox1_dev_wav": [ - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox1_dev_wav_partaa", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox1_dev_wav_partab", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox1_dev_wav_partac", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox1_dev_wav_partad", - ], - "vox1_test_wav": ["https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox1_test_wav.zip"], - "vox2_dev_aac": [ - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partaa", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partab", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partac", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partad", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partae", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partaf", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partag", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partah", - ], - "vox2_test_aac": ["https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_test_aac.zip"], -} - -MD5SUM = { - "vox1_dev_wav": "ae63e55b951748cc486645f532ba230b", - "vox2_dev_aac": "bbc063c46078a602ca71605645c2a402", - "vox1_test_wav": "185fdc63c3c739954633d50379a3d102", - "vox2_test_aac": "0d2b3ea430a821c33263b5ea37ede312", -} - -USER = {"user": "", "password": ""} - -speaker_id_dict = {} - - -def download_and_extract(directory, subset, urls): - """Download and extract the given split of dataset. - - Args: - directory: the directory where to put the downloaded data. - subset: subset name of the corpus. - urls: the list of urls to download the data file. - """ - os.makedirs(directory, exist_ok=True) - - try: - for url in urls: - zip_filepath = os.path.join(directory, url.split("/")[-1]) - if os.path.exists(zip_filepath): - continue - logging.info("Downloading %s to %s" % (url, zip_filepath)) - subprocess.call( - "wget %s --user %s --password %s -O %s" % (url, USER["user"], USER["password"], zip_filepath), - shell=True, - ) - - statinfo = os.stat(zip_filepath) - logging.info("Successfully downloaded %s, size(bytes): %d" % (url, statinfo.st_size)) - - # concatenate all parts into zip files - if ".zip" not in zip_filepath: - zip_filepath = "_".join(zip_filepath.split("_")[:-1]) - subprocess.call("cat %s* > %s.zip" % (zip_filepath, zip_filepath), shell=True) - zip_filepath += ".zip" - extract_path = zip_filepath.strip(".zip") - - # check zip file md5sum - with open(zip_filepath, "rb") as f_zip: - md5 = hashlib.md5(f_zip.read()).hexdigest() - if md5 != MD5SUM[subset]: - raise ValueError("md5sum of %s mismatch" % zip_filepath) - - with zipfile.ZipFile(zip_filepath, "r") as zfile: - zfile.extractall(directory) - extract_path_ori = os.path.join(directory, zfile.infolist()[0].filename) - subprocess.call("mv %s %s" % (extract_path_ori, extract_path), shell=True) - finally: - # os.remove(zip_filepath) - pass - - -def exec_cmd(cmd): - """Run a command in a subprocess. - Args: - cmd: command line to be executed. - Return: - int, the return code. - """ - try: - retcode = subprocess.call(cmd, shell=True) - if retcode < 0: - logging.info(f"Child was terminated by signal {retcode}") - except OSError as e: - logging.info(f"Execution failed: {e}") - retcode = -999 - return retcode - - -def decode_aac_with_ffmpeg(aac_file, wav_file): - """Decode a given AAC file into WAV using ffmpeg. - Args: - aac_file: file path to input AAC file. - wav_file: file path to output WAV file. - Return: - bool, True if success. - """ - cmd = f"ffmpeg -i {aac_file} {wav_file}" - logging.info(f"Decoding aac file using command line: {cmd}") - ret = exec_cmd(cmd) - if ret != 0: - logging.error(f"Failed to decode aac file with retcode {ret}") - logging.error("Please check your ffmpeg installation.") - return False - return True - - -def convert_audio_and_make_label(input_dir, subset, output_dir, output_file): - """Optionally convert AAC to WAV and make speaker labels. - Args: - input_dir: the directory which holds the input dataset. - subset: the name of the specified subset. e.g. vox1_dev_wav - output_dir: the directory to place the newly generated csv files. - output_file: the name of the newly generated csv file. e.g. vox1_dev_wav.csv - """ - - logging.info("Preprocessing audio and label for subset %s" % subset) - source_dir = os.path.join(input_dir, subset) - - files = [] - # Convert all AAC file into WAV format. At the same time, generate the csv - for root, _, filenames in os.walk(source_dir): - for filename in filenames: - name, ext = os.path.splitext(filename) - if ext.lower() == ".wav": - _, ext2 = os.path.splitext(name) - if ext2: - continue - wav_file = os.path.join(root, filename) - elif ext.lower() == ".m4a": - # Convert AAC to WAV. - aac_file = os.path.join(root, filename) - wav_file = aac_file + ".wav" - if not os.path.exists(wav_file): - if not decode_aac_with_ffmpeg(aac_file, wav_file): - raise RuntimeError("Audio decoding failed.") - else: - continue - speaker_name = root.split(os.path.sep)[-2] - if speaker_name not in speaker_id_dict: - num = len(speaker_id_dict) - speaker_id_dict[speaker_name] = num - # wav_filesize = os.path.getsize(wav_file) - wav_length = len(sf.read(wav_file)[0]) - files.append((os.path.abspath(wav_file), wav_length, speaker_id_dict[speaker_name], speaker_name)) - - # Write to CSV file which contains four columns: - # "wav_filename", "wav_length_ms", "speaker_id", "speaker_name". - csv_file_path = os.path.join(output_dir, output_file) - df = pandas.DataFrame(data=files, columns=["wav_filename", "wav_length_ms", "speaker_id", "speaker_name"]) - df.to_csv(csv_file_path, index=False, sep="\t") - logging.info("Successfully generated csv file {}".format(csv_file_path)) - - -def processor(directory, subset, force_process): - """download and process""" - urls = SUBSETS - if subset not in urls: - raise ValueError(subset, "is not in voxceleb") - - subset_csv = os.path.join(directory, subset + ".csv") - if not force_process and os.path.exists(subset_csv): - return subset_csv - - logging.info("Downloading and process the voxceleb in %s", directory) - logging.info("Preparing subset %s", subset) - download_and_extract(directory, subset, urls[subset]) - convert_audio_and_make_label(directory, subset, directory, subset + ".csv") - logging.info("Finished downloading and processing") - return subset_csv - - -if __name__ == "__main__": - logging.set_verbosity(logging.INFO) - if len(sys.argv) != 4: - print("Usage: python prepare_data.py save_directory user password") - sys.exit() - - DIR, USER["user"], USER["password"] = sys.argv[1], sys.argv[2], sys.argv[3] - for SUBSET in SUBSETS: - processor(DIR, SUBSET, False) diff --git a/TTS/TTS/encoder/utils/training.py b/TTS/TTS/encoder/utils/training.py deleted file mode 100644 index 7c58a232e7a146bb24718700527ab80e62a1ab1a..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/utils/training.py +++ /dev/null @@ -1,99 +0,0 @@ -import os -from dataclasses import dataclass, field - -from coqpit import Coqpit -from trainer import TrainerArgs, get_last_checkpoint -from trainer.logging import logger_factory -from trainer.logging.console_logger import ConsoleLogger - -from TTS.config import load_config, register_config -from TTS.tts.utils.text.characters import parse_symbols -from TTS.utils.generic_utils import get_experiment_folder_path, get_git_branch -from TTS.utils.io import copy_model_files - - -@dataclass -class TrainArgs(TrainerArgs): - config_path: str = field(default=None, metadata={"help": "Path to the config file."}) - - -def getarguments(): - train_config = TrainArgs() - parser = train_config.init_argparse(arg_prefix="") - return parser - - -def process_args(args, config=None): - """Process parsed comand line arguments and initialize the config if not provided. - Args: - args (argparse.Namespace or dict like): Parsed input arguments. - config (Coqpit): Model config. If none, it is generated from `args`. Defaults to None. - Returns: - c (TTS.utils.io.AttrDict): Config paramaters. - out_path (str): Path to save models and logging. - audio_path (str): Path to save generated test audios. - c_logger (TTS.utils.console_logger.ConsoleLogger): Class that does - logging to the console. - dashboard_logger (WandbLogger or TensorboardLogger): Class that does the dashboard Logging - TODO: - - Interactive config definition. - """ - if isinstance(args, tuple): - args, coqpit_overrides = args - if args.continue_path: - # continue a previous training from its output folder - experiment_path = args.continue_path - args.config_path = os.path.join(args.continue_path, "config.json") - args.restore_path, best_model = get_last_checkpoint(args.continue_path) - if not args.best_path: - args.best_path = best_model - # init config if not already defined - if config is None: - if args.config_path: - # init from a file - config = load_config(args.config_path) - else: - # init from console args - from TTS.config.shared_configs import BaseTrainingConfig # pylint: disable=import-outside-toplevel - - config_base = BaseTrainingConfig() - config_base.parse_known_args(coqpit_overrides) - config = register_config(config_base.model)() - # override values from command-line args - config.parse_known_args(coqpit_overrides, relaxed_parser=True) - experiment_path = args.continue_path - if not experiment_path: - experiment_path = get_experiment_folder_path(config.output_path, config.run_name) - audio_path = os.path.join(experiment_path, "test_audios") - config.output_log_path = experiment_path - # setup rank 0 process in distributed training - dashboard_logger = None - if args.rank == 0: - new_fields = {} - if args.restore_path: - new_fields["restore_path"] = args.restore_path - new_fields["github_branch"] = get_git_branch() - # if model characters are not set in the config file - # save the default set to the config file for future - # compatibility. - if config.has("characters") and config.characters is None: - used_characters = parse_symbols() - new_fields["characters"] = used_characters - copy_model_files(config, experiment_path, new_fields) - dashboard_logger = logger_factory(config, experiment_path) - c_logger = ConsoleLogger() - return config, experiment_path, audio_path, c_logger, dashboard_logger - - -def init_arguments(): - train_config = TrainArgs() - parser = train_config.init_argparse(arg_prefix="") - return parser - - -def init_training(config: Coqpit = None): - """Initialization of a training run.""" - parser = init_arguments() - args = parser.parse_known_args() - config, OUT_PATH, AUDIO_PATH, c_logger, dashboard_logger = process_args(args, config) - return args[0], config, OUT_PATH, AUDIO_PATH, c_logger, dashboard_logger diff --git a/TTS/TTS/encoder/utils/visual.py b/TTS/TTS/encoder/utils/visual.py deleted file mode 100644 index 6575b86ec22818fe1dc0c1e6336a7fd255855330..0000000000000000000000000000000000000000 --- a/TTS/TTS/encoder/utils/visual.py +++ /dev/null @@ -1,50 +0,0 @@ -import matplotlib -import matplotlib.pyplot as plt -import numpy as np -import umap - -matplotlib.use("Agg") - - -colormap = ( - np.array( - [ - [76, 255, 0], - [0, 127, 70], - [255, 0, 0], - [255, 217, 38], - [0, 135, 255], - [165, 0, 165], - [255, 167, 255], - [0, 255, 255], - [255, 96, 38], - [142, 76, 0], - [33, 0, 127], - [0, 0, 0], - [183, 183, 183], - ], - dtype=float, - ) - / 255 -) - - -def plot_embeddings(embeddings, num_classes_in_batch): - num_utter_per_class = embeddings.shape[0] // num_classes_in_batch - - # if necessary get just the first 10 classes - if num_classes_in_batch > 10: - num_classes_in_batch = 10 - embeddings = embeddings[: num_classes_in_batch * num_utter_per_class] - - model = umap.UMAP() - projection = model.fit_transform(embeddings) - ground_truth = np.repeat(np.arange(num_classes_in_batch), num_utter_per_class) - colors = [colormap[i] for i in ground_truth] - fig, ax = plt.subplots(figsize=(16, 10)) - _ = ax.scatter(projection[:, 0], projection[:, 1], c=colors) - plt.gca().set_aspect("equal", "datalim") - plt.title("UMAP projection") - plt.tight_layout() - plt.savefig("umap") - return fig diff --git a/TTS/TTS/model.py b/TTS/TTS/model.py deleted file mode 100644 index ae6be7b444695756c00c4faa8f2f6c787dfcf9d8..0000000000000000000000000000000000000000 --- a/TTS/TTS/model.py +++ /dev/null @@ -1,59 +0,0 @@ -from abc import abstractmethod -from typing import Dict - -import torch -from coqpit import Coqpit -from trainer import TrainerModel - -# pylint: skip-file - - -class BaseTrainerModel(TrainerModel): - """BaseTrainerModel model expanding TrainerModel with required functions by 🐸TTS. - - Every new 🐸TTS model must inherit it. - """ - - @staticmethod - @abstractmethod - def init_from_config(config: Coqpit): - """Init the model and all its attributes from the given config. - - Override this depending on your model. - """ - ... - - @abstractmethod - def inference(self, input: torch.Tensor, aux_input={}) -> Dict: - """Forward pass for inference. - - It must return a dictionary with the main model output and all the auxiliary outputs. The key ```model_outputs``` - is considered to be the main output and you can add any other auxiliary outputs as you want. - - We don't use `*kwargs` since it is problematic with the TorchScript API. - - Args: - input (torch.Tensor): [description] - aux_input (Dict): Auxiliary inputs like speaker embeddings, durations etc. - - Returns: - Dict: [description] - """ - outputs_dict = {"model_outputs": None} - ... - return outputs_dict - - @abstractmethod - def load_checkpoint( - self, config: Coqpit, checkpoint_path: str, eval: bool = False, strict: bool = True, cache=False - ) -> None: - """Load a model checkpoint gile and get ready for training or inference. - - Args: - config (Coqpit): Model configuration. - checkpoint_path (str): Path to the model checkpoint file. - eval (bool, optional): If true, init model for inference else for training. Defaults to False. - strict (bool, optional): Match all checkpoint keys to model's keys. Defaults to True. - cache (bool, optional): If True, cache the file locally for subsequent calls. It is cached under `get_user_data_dir()/tts_cache`. Defaults to False. - """ - ... diff --git a/TTS/TTS/server/README.md b/TTS/TTS/server/README.md deleted file mode 100644 index 270656c4e39dc11636efbb1ba51eba7c9b4a8f04..0000000000000000000000000000000000000000 --- a/TTS/TTS/server/README.md +++ /dev/null @@ -1,18 +0,0 @@ -# :frog: TTS demo server -Before you use the server, make sure you [install](https://github.com/coqui-ai/TTS/tree/dev#install-tts)) :frog: TTS properly. Then, you can follow the steps below. - -**Note:** If you install :frog:TTS using ```pip```, you can also use the ```tts-server``` end point on the terminal. - -Examples runs: - -List officially released models. -```python TTS/server/server.py --list_models ``` - -Run the server with the official models. -```python TTS/server/server.py --model_name tts_models/en/ljspeech/tacotron2-DCA --vocoder_name vocoder_models/en/ljspeech/multiband-melgan``` - -Run the server with the official models on a GPU. -```CUDA_VISIBLE_DEVICES="0" python TTS/server/server.py --model_name tts_models/en/ljspeech/tacotron2-DCA --vocoder_name vocoder_models/en/ljspeech/multiband-melgan --use_cuda True``` - -Run the server with a custom models. -```python TTS/server/server.py --tts_checkpoint /path/to/tts/model.pth --tts_config /path/to/tts/config.json --vocoder_checkpoint /path/to/vocoder/model.pth --vocoder_config /path/to/vocoder/config.json``` diff --git a/TTS/TTS/server/__init__.py b/TTS/TTS/server/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/server/conf.json b/TTS/TTS/server/conf.json deleted file mode 100644 index 49b6c09c3848a224dfb39a1f653aa1b289a4b6e5..0000000000000000000000000000000000000000 --- a/TTS/TTS/server/conf.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "tts_path":"/media/erogol/data_ssd/Models/libri_tts/5049/", // tts model root folder - "tts_file":"best_model.pth", // tts checkpoint file - "tts_config":"config.json", // tts config.json file - "tts_speakers": null, // json file listing speaker ids. null if no speaker embedding. - "vocoder_config":null, - "vocoder_file": null, - "is_wavernn_batched":true, - "port": 5002, - "use_cuda": true, - "debug": true -} diff --git a/TTS/TTS/server/server.py b/TTS/TTS/server/server.py deleted file mode 100644 index 6b2141a9aa419b9095956ccae317621fa3a604da..0000000000000000000000000000000000000000 --- a/TTS/TTS/server/server.py +++ /dev/null @@ -1,258 +0,0 @@ -#!flask/bin/python -import argparse -import io -import json -import os -import sys -from pathlib import Path -from threading import Lock -from typing import Union -from urllib.parse import parse_qs - -from flask import Flask, render_template, render_template_string, request, send_file - -from TTS.config import load_config -from TTS.utils.manage import ModelManager -from TTS.utils.synthesizer import Synthesizer - - -def create_argparser(): - def convert_boolean(x): - return x.lower() in ["true", "1", "yes"] - - parser = argparse.ArgumentParser() - parser.add_argument( - "--list_models", - type=convert_boolean, - nargs="?", - const=True, - default=False, - help="list available pre-trained tts and vocoder models.", - ) - parser.add_argument( - "--model_name", - type=str, - default="tts_models/en/ljspeech/tacotron2-DDC", - help="Name of one of the pre-trained tts models in format //", - ) - parser.add_argument("--vocoder_name", type=str, default=None, help="name of one of the released vocoder models.") - - # Args for running custom models - parser.add_argument("--config_path", default=None, type=str, help="Path to model config file.") - parser.add_argument( - "--model_path", - type=str, - default=None, - help="Path to model file.", - ) - parser.add_argument( - "--vocoder_path", - type=str, - help="Path to vocoder model file. If it is not defined, model uses GL as vocoder. Please make sure that you installed vocoder library before (WaveRNN).", - default=None, - ) - parser.add_argument("--vocoder_config_path", type=str, help="Path to vocoder model config file.", default=None) - parser.add_argument("--speakers_file_path", type=str, help="JSON file for multi-speaker model.", default=None) - parser.add_argument("--port", type=int, default=5002, help="port to listen on.") - parser.add_argument("--use_cuda", type=convert_boolean, default=False, help="true to use CUDA.") - parser.add_argument("--debug", type=convert_boolean, default=False, help="true to enable Flask debug mode.") - parser.add_argument("--show_details", type=convert_boolean, default=False, help="Generate model detail page.") - return parser - - -# parse the args -args = create_argparser().parse_args() - -path = Path(__file__).parent / "../.models.json" -manager = ModelManager(path) - -if args.list_models: - manager.list_models() - sys.exit() - -# update in-use models to the specified released models. -model_path = None -config_path = None -speakers_file_path = None -vocoder_path = None -vocoder_config_path = None - -# CASE1: list pre-trained TTS models -if args.list_models: - manager.list_models() - sys.exit() - -# CASE2: load pre-trained model paths -if args.model_name is not None and not args.model_path: - model_path, config_path, model_item = manager.download_model(args.model_name) - args.vocoder_name = model_item["default_vocoder"] if args.vocoder_name is None else args.vocoder_name - -if args.vocoder_name is not None and not args.vocoder_path: - vocoder_path, vocoder_config_path, _ = manager.download_model(args.vocoder_name) - -# CASE3: set custom model paths -if args.model_path is not None: - model_path = args.model_path - config_path = args.config_path - speakers_file_path = args.speakers_file_path - -if args.vocoder_path is not None: - vocoder_path = args.vocoder_path - vocoder_config_path = args.vocoder_config_path - -# load models -synthesizer = Synthesizer( - tts_checkpoint=model_path, - tts_config_path=config_path, - tts_speakers_file=speakers_file_path, - tts_languages_file=None, - vocoder_checkpoint=vocoder_path, - vocoder_config=vocoder_config_path, - encoder_checkpoint="", - encoder_config="", - use_cuda=args.use_cuda, -) - -use_multi_speaker = hasattr(synthesizer.tts_model, "num_speakers") and ( - synthesizer.tts_model.num_speakers > 1 or synthesizer.tts_speakers_file is not None -) -speaker_manager = getattr(synthesizer.tts_model, "speaker_manager", None) - -use_multi_language = hasattr(synthesizer.tts_model, "num_languages") and ( - synthesizer.tts_model.num_languages > 1 or synthesizer.tts_languages_file is not None -) -language_manager = getattr(synthesizer.tts_model, "language_manager", None) - -# TODO: set this from SpeakerManager -use_gst = synthesizer.tts_config.get("use_gst", False) -app = Flask(__name__) - - -def style_wav_uri_to_dict(style_wav: str) -> Union[str, dict]: - """Transform an uri style_wav, in either a string (path to wav file to be use for style transfer) - or a dict (gst tokens/values to be use for styling) - - Args: - style_wav (str): uri - - Returns: - Union[str, dict]: path to file (str) or gst style (dict) - """ - if style_wav: - if os.path.isfile(style_wav) and style_wav.endswith(".wav"): - return style_wav # style_wav is a .wav file located on the server - - style_wav = json.loads(style_wav) - return style_wav # style_wav is a gst dictionary with {token1_id : token1_weigth, ...} - return None - - -@app.route("/") -def index(): - return render_template( - "index.html", - show_details=args.show_details, - use_multi_speaker=use_multi_speaker, - use_multi_language=use_multi_language, - speaker_ids=speaker_manager.name_to_id if speaker_manager is not None else None, - language_ids=language_manager.name_to_id if language_manager is not None else None, - use_gst=use_gst, - ) - - -@app.route("/details") -def details(): - if args.config_path is not None and os.path.isfile(args.config_path): - model_config = load_config(args.config_path) - else: - if args.model_name is not None: - model_config = load_config(config_path) - - if args.vocoder_config_path is not None and os.path.isfile(args.vocoder_config_path): - vocoder_config = load_config(args.vocoder_config_path) - else: - if args.vocoder_name is not None: - vocoder_config = load_config(vocoder_config_path) - else: - vocoder_config = None - - return render_template( - "details.html", - show_details=args.show_details, - model_config=model_config, - vocoder_config=vocoder_config, - args=args.__dict__, - ) - - -lock = Lock() - - -@app.route("/api/tts", methods=["GET", "POST"]) -def tts(): - with lock: - text = request.headers.get("text") or request.values.get("text", "") - speaker_idx = request.headers.get("speaker-id") or request.values.get("speaker_id", "") - language_idx = request.headers.get("language-id") or request.values.get("language_id", "") - style_wav = request.headers.get("style-wav") or request.values.get("style_wav", "") - style_wav = style_wav_uri_to_dict(style_wav) - - print(f" > Model input: {text}") - print(f" > Speaker Idx: {speaker_idx}") - print(f" > Language Idx: {language_idx}") - wavs = synthesizer.tts(text, speaker_name=speaker_idx, language_name=language_idx, style_wav=style_wav) - out = io.BytesIO() - synthesizer.save_wav(wavs, out) - return send_file(out, mimetype="audio/wav") - - -# Basic MaryTTS compatibility layer - - -@app.route("/locales", methods=["GET"]) -def mary_tts_api_locales(): - """MaryTTS-compatible /locales endpoint""" - # NOTE: We currently assume there is only one model active at the same time - if args.model_name is not None: - model_details = args.model_name.split("/") - else: - model_details = ["", "en", "", "default"] - return render_template_string("{{ locale }}\n", locale=model_details[1]) - - -@app.route("/voices", methods=["GET"]) -def mary_tts_api_voices(): - """MaryTTS-compatible /voices endpoint""" - # NOTE: We currently assume there is only one model active at the same time - if args.model_name is not None: - model_details = args.model_name.split("/") - else: - model_details = ["", "en", "", "default"] - return render_template_string( - "{{ name }} {{ locale }} {{ gender }}\n", name=model_details[3], locale=model_details[1], gender="u" - ) - - -@app.route("/process", methods=["GET", "POST"]) -def mary_tts_api_process(): - """MaryTTS-compatible /process endpoint""" - with lock: - if request.method == "POST": - data = parse_qs(request.get_data(as_text=True)) - # NOTE: we ignore param. LOCALE and VOICE for now since we have only one active model - text = data.get("INPUT_TEXT", [""])[0] - else: - text = request.args.get("INPUT_TEXT", "") - print(f" > Model input: {text}") - wavs = synthesizer.tts(text) - out = io.BytesIO() - synthesizer.save_wav(wavs, out) - return send_file(out, mimetype="audio/wav") - - -def main(): - app.run(debug=args.debug, host="::", port=args.port) - - -if __name__ == "__main__": - main() diff --git a/TTS/TTS/server/static/coqui-log-green-TTS.png b/TTS/TTS/server/static/coqui-log-green-TTS.png deleted file mode 100644 index 6ad188b8c03a170097c0393c6769996f03cf9054..0000000000000000000000000000000000000000 Binary files a/TTS/TTS/server/static/coqui-log-green-TTS.png and /dev/null differ diff --git a/TTS/TTS/server/templates/details.html b/TTS/TTS/server/templates/details.html deleted file mode 100644 index 51c9ed85a83ac0aab045623ee1e6c430fbe51b9d..0000000000000000000000000000000000000000 --- a/TTS/TTS/server/templates/details.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - - - - - - TTS engine - - - - - - - - - - Fork me on GitHub - - {% if show_details == true %} - -
- Model details -
- -
-
- CLI arguments: - - - - - - - {% for key, value in args.items() %} - - - - - - - {% endfor %} -
CLI key Value
{{ key }}{{ value }}
-
-

- -
- - {% if model_config != None %} - -
- Model config: - - - - - - - - - {% for key, value in model_config.items() %} - - - - - - - {% endfor %} - -
Key Value
{{ key }}{{ value }}
-
- - {% endif %} - -

- - - -
- {% if vocoder_config != None %} -
- Vocoder model config: - - - - - - - - - {% for key, value in vocoder_config.items() %} - - - - - - - {% endfor %} - - -
Key Value
{{ key }}{{ value }}
-
- {% endif %} -

- - {% else %} -
- Please start server with --show_details=true to see details. -
- - {% endif %} - - - - \ No newline at end of file diff --git a/TTS/TTS/server/templates/index.html b/TTS/TTS/server/templates/index.html deleted file mode 100644 index 6354d3919d9a1e9c1e22e9866c84c4eb8284bc13..0000000000000000000000000000000000000000 --- a/TTS/TTS/server/templates/index.html +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - - - - - - TTS engine - - - - - - - - - - Fork me on GitHub - - - - - -
-
-
- - -
    -
- - {%if use_gst%} - - {%endif%} - - -

- - {%if use_multi_speaker%} - Choose a speaker: -

- {%endif%} - - {%if use_multi_language%} - Choose a language: -

- {%endif%} - - - {%if show_details%} -

- {%endif%} - -

-
-
-
- - - - - - - \ No newline at end of file diff --git a/TTS/TTS/tts/__init__.py b/TTS/TTS/tts/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/configs/__init__.py b/TTS/TTS/tts/configs/__init__.py deleted file mode 100644 index 3146ac1c116cb807a81889b7a9ab223b9a051036..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -import importlib -import os -from inspect import isclass - -# import all files under configs/ -# configs_dir = os.path.dirname(__file__) -# for file in os.listdir(configs_dir): -# path = os.path.join(configs_dir, file) -# if not file.startswith("_") and not file.startswith(".") and (file.endswith(".py") or os.path.isdir(path)): -# config_name = file[: file.find(".py")] if file.endswith(".py") else file -# module = importlib.import_module("TTS.tts.configs." + config_name) -# for attribute_name in dir(module): -# attribute = getattr(module, attribute_name) - -# if isclass(attribute): -# # Add the class to this package's variables -# globals()[attribute_name] = attribute diff --git a/TTS/TTS/tts/configs/align_tts_config.py b/TTS/TTS/tts/configs/align_tts_config.py deleted file mode 100644 index 317a01af53ce26914d83610a913eb44b5836dac2..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/align_tts_config.py +++ /dev/null @@ -1,107 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.align_tts import AlignTTSArgs - - -@dataclass -class AlignTTSConfig(BaseTTSConfig): - """Defines parameters for AlignTTS model. - Example: - - >>> from TTS.tts.configs.align_tts_config import AlignTTSConfig - >>> config = AlignTTSConfig() - - Args: - model(str): - Model name used for selecting the right model at initialization. Defaults to `align_tts`. - positional_encoding (bool): - enable / disable positional encoding applied to the encoder output. Defaults to True. - hidden_channels (int): - Base number of hidden channels. Defines all the layers expect ones defined by the specific encoder or decoder - parameters. Defaults to 256. - hidden_channels_dp (int): - Number of hidden channels of the duration predictor's layers. Defaults to 256. - encoder_type (str): - Type of the encoder used by the model. Look at `TTS.tts.layers.feed_forward.encoder` for more details. - Defaults to `fftransformer`. - encoder_params (dict): - Parameters used to define the encoder network. Look at `TTS.tts.layers.feed_forward.encoder` for more details. - Defaults to `{"hidden_channels_ffn": 1024, "num_heads": 2, "num_layers": 6, "dropout_p": 0.1}`. - decoder_type (str): - Type of the decoder used by the model. Look at `TTS.tts.layers.feed_forward.decoder` for more details. - Defaults to `fftransformer`. - decoder_params (dict): - Parameters used to define the decoder network. Look at `TTS.tts.layers.feed_forward.decoder` for more details. - Defaults to `{"hidden_channels_ffn": 1024, "num_heads": 2, "num_layers": 6, "dropout_p": 0.1}`. - phase_start_steps (List[int]): - A list of number of steps required to start the next training phase. AlignTTS has 4 different training - phases. Thus you need to define 4 different values to enable phase based training. If None, it - trains the whole model together. Defaults to None. - ssim_alpha (float): - Weight for the SSIM loss. If set <= 0, disables the SSIM loss. Defaults to 1.0. - duration_loss_alpha (float): - Weight for the duration predictor's loss. Defaults to 1.0. - mdn_alpha (float): - Weight for the MDN loss. Defaults to 1.0. - spec_loss_alpha (float): - Weight for the MSE spectrogram loss. If set <= 0, disables the L1 loss. Defaults to 1.0. - use_speaker_embedding (bool): - enable / disable using speaker embeddings for multi-speaker models. If set True, the model is - in the multi-speaker mode. Defaults to False. - use_d_vector_file (bool): - enable /disable using external speaker embeddings in place of the learned embeddings. Defaults to False. - d_vector_file (str): - Path to the file including pre-computed speaker embeddings. Defaults to None. - noam_schedule (bool): - enable / disable the use of Noam LR scheduler. Defaults to False. - warmup_steps (int): - Number of warm-up steps for the Noam scheduler. Defaults 4000. - lr (float): - Initial learning rate. Defaults to `1e-3`. - wd (float): - Weight decay coefficient. Defaults to `1e-7`. - min_seq_len (int): - Minimum input sequence length to be used at training. - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage.""" - - model: str = "align_tts" - # model specific params - model_args: AlignTTSArgs = field(default_factory=AlignTTSArgs) - phase_start_steps: List[int] = None - - ssim_alpha: float = 1.0 - spec_loss_alpha: float = 1.0 - dur_loss_alpha: float = 1.0 - mdn_alpha: float = 1.0 - - # multi-speaker settings - use_speaker_embedding: bool = False - use_d_vector_file: bool = False - d_vector_file: str = False - - # optimizer parameters - optimizer: str = "Adam" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.9, 0.998], "weight_decay": 1e-6}) - lr_scheduler: str = None - lr_scheduler_params: dict = None - lr: float = 1e-4 - grad_clip: float = 5.0 - - # overrides - min_seq_len: int = 13 - max_seq_len: int = 200 - r: int = 1 - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "Be a voice, not an echo.", - "I'm sorry Dave. I'm afraid I can't do that.", - "This cake is great. It's so delicious and moist.", - "Prior to November 22, 1963.", - ] - ) diff --git a/TTS/TTS/tts/configs/bark_config.py b/TTS/TTS/tts/configs/bark_config.py deleted file mode 100644 index 4d1cd1374afe8d5f0b9e87ed81db25d7e4032af9..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/bark_config.py +++ /dev/null @@ -1,105 +0,0 @@ -import os -from dataclasses import dataclass, field -from typing import Dict - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.layers.bark.model import GPTConfig -from TTS.tts.layers.bark.model_fine import FineGPTConfig -from TTS.tts.models.bark import BarkAudioConfig -from TTS.utils.generic_utils import get_user_data_dir - - -@dataclass -class BarkConfig(BaseTTSConfig): - """Bark TTS configuration - - Args: - model (str): model name that registers the model. - audio (BarkAudioConfig): audio configuration. Defaults to BarkAudioConfig(). - num_chars (int): number of characters in the alphabet. Defaults to 0. - semantic_config (GPTConfig): semantic configuration. Defaults to GPTConfig(). - fine_config (FineGPTConfig): fine configuration. Defaults to FineGPTConfig(). - coarse_config (GPTConfig): coarse configuration. Defaults to GPTConfig(). - CONTEXT_WINDOW_SIZE (int): GPT context window size. Defaults to 1024. - SEMANTIC_RATE_HZ (float): semantic tokens rate in Hz. Defaults to 49.9. - SEMANTIC_VOCAB_SIZE (int): semantic vocabulary size. Defaults to 10_000. - CODEBOOK_SIZE (int): encodec codebook size. Defaults to 1024. - N_COARSE_CODEBOOKS (int): number of coarse codebooks. Defaults to 2. - N_FINE_CODEBOOKS (int): number of fine codebooks. Defaults to 8. - COARSE_RATE_HZ (int): coarse tokens rate in Hz. Defaults to 75. - SAMPLE_RATE (int): sample rate. Defaults to 24_000. - USE_SMALLER_MODELS (bool): use smaller models. Defaults to False. - TEXT_ENCODING_OFFSET (int): text encoding offset. Defaults to 10_048. - SEMANTIC_PAD_TOKEN (int): semantic pad token. Defaults to 10_000. - TEXT_PAD_TOKEN ([type]): text pad token. Defaults to 10_048. - TEXT_EOS_TOKEN ([type]): text end of sentence token. Defaults to 10_049. - TEXT_SOS_TOKEN ([type]): text start of sentence token. Defaults to 10_050. - SEMANTIC_INFER_TOKEN (int): semantic infer token. Defaults to 10_051. - COARSE_SEMANTIC_PAD_TOKEN (int): coarse semantic pad token. Defaults to 12_048. - COARSE_INFER_TOKEN (int): coarse infer token. Defaults to 12_050. - REMOTE_BASE_URL ([type]): remote base url. Defaults to "https://huggingface.co/erogol/bark/tree". - REMOTE_MODEL_PATHS (Dict): remote model paths. Defaults to None. - LOCAL_MODEL_PATHS (Dict): local model paths. Defaults to None. - SMALL_REMOTE_MODEL_PATHS (Dict): small remote model paths. Defaults to None. - CACHE_DIR (str): local cache directory. Defaults to get_user_data_dir(). - DEF_SPEAKER_DIR (str): default speaker directory to stoke speaker values for voice cloning. Defaults to get_user_data_dir(). - """ - - model: str = "bark" - audio: BarkAudioConfig = field(default_factory=BarkAudioConfig) - num_chars: int = 0 - semantic_config: GPTConfig = field(default_factory=GPTConfig) - fine_config: FineGPTConfig = field(default_factory=FineGPTConfig) - coarse_config: GPTConfig = field(default_factory=GPTConfig) - CONTEXT_WINDOW_SIZE: int = 1024 - SEMANTIC_RATE_HZ: float = 49.9 - SEMANTIC_VOCAB_SIZE: int = 10_000 - CODEBOOK_SIZE: int = 1024 - N_COARSE_CODEBOOKS: int = 2 - N_FINE_CODEBOOKS: int = 8 - COARSE_RATE_HZ: int = 75 - SAMPLE_RATE: int = 24_000 - USE_SMALLER_MODELS: bool = False - - TEXT_ENCODING_OFFSET: int = 10_048 - SEMANTIC_PAD_TOKEN: int = 10_000 - TEXT_PAD_TOKEN: int = 129_595 - SEMANTIC_INFER_TOKEN: int = 129_599 - COARSE_SEMANTIC_PAD_TOKEN: int = 12_048 - COARSE_INFER_TOKEN: int = 12_050 - - REMOTE_BASE_URL = "https://huggingface.co/erogol/bark/tree/main/" - REMOTE_MODEL_PATHS: Dict = None - LOCAL_MODEL_PATHS: Dict = None - SMALL_REMOTE_MODEL_PATHS: Dict = None - CACHE_DIR: str = str(get_user_data_dir("tts/suno/bark_v0")) - DEF_SPEAKER_DIR: str = str(get_user_data_dir("tts/bark_v0/speakers")) - - def __post_init__(self): - self.REMOTE_MODEL_PATHS = { - "text": { - "path": os.path.join(self.REMOTE_BASE_URL, "text_2.pt"), - "checksum": "54afa89d65e318d4f5f80e8e8799026a", - }, - "coarse": { - "path": os.path.join(self.REMOTE_BASE_URL, "coarse_2.pt"), - "checksum": "8a98094e5e3a255a5c9c0ab7efe8fd28", - }, - "fine": { - "path": os.path.join(self.REMOTE_BASE_URL, "fine_2.pt"), - "checksum": "59d184ed44e3650774a2f0503a48a97b", - }, - } - self.LOCAL_MODEL_PATHS = { - "text": os.path.join(self.CACHE_DIR, "text_2.pt"), - "coarse": os.path.join(self.CACHE_DIR, "coarse_2.pt"), - "fine": os.path.join(self.CACHE_DIR, "fine_2.pt"), - "hubert_tokenizer": os.path.join(self.CACHE_DIR, "tokenizer.pth"), - "hubert": os.path.join(self.CACHE_DIR, "hubert.pt"), - } - self.SMALL_REMOTE_MODEL_PATHS = { - "text": {"path": os.path.join(self.REMOTE_BASE_URL, "text.pt")}, - "coarse": {"path": os.path.join(self.REMOTE_BASE_URL, "coarse.pt")}, - "fine": {"path": os.path.join(self.REMOTE_BASE_URL, "fine.pt")}, - } - self.sample_rate = self.SAMPLE_RATE # pylint: disable=attribute-defined-outside-init diff --git a/TTS/TTS/tts/configs/delightful_tts_config.py b/TTS/TTS/tts/configs/delightful_tts_config.py deleted file mode 100644 index 805d995369e29fce7d6aa87750356b21458cd64a..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/delightful_tts_config.py +++ /dev/null @@ -1,170 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.delightful_tts import DelightfulTtsArgs, DelightfulTtsAudioConfig, VocoderConfig - - -@dataclass -class DelightfulTTSConfig(BaseTTSConfig): - """ - Configuration class for the DelightfulTTS model. - - Attributes: - model (str): Name of the model ("delightful_tts"). - audio (DelightfulTtsAudioConfig): Configuration for audio settings. - model_args (DelightfulTtsArgs): Configuration for model arguments. - use_attn_priors (bool): Whether to use attention priors. - vocoder (VocoderConfig): Configuration for the vocoder. - init_discriminator (bool): Whether to initialize the discriminator. - steps_to_start_discriminator (int): Number of steps to start the discriminator. - grad_clip (List[float]): Gradient clipping values. - lr_gen (float): Learning rate for the gan generator. - lr_disc (float): Learning rate for the gan discriminator. - lr_scheduler_gen (str): Name of the learning rate scheduler for the generator. - lr_scheduler_gen_params (dict): Parameters for the learning rate scheduler for the generator. - lr_scheduler_disc (str): Name of the learning rate scheduler for the discriminator. - lr_scheduler_disc_params (dict): Parameters for the learning rate scheduler for the discriminator. - scheduler_after_epoch (bool): Whether to schedule after each epoch. - optimizer (str): Name of the optimizer. - optimizer_params (dict): Parameters for the optimizer. - ssim_loss_alpha (float): Alpha value for the SSIM loss. - mel_loss_alpha (float): Alpha value for the mel loss. - aligner_loss_alpha (float): Alpha value for the aligner loss. - pitch_loss_alpha (float): Alpha value for the pitch loss. - energy_loss_alpha (float): Alpha value for the energy loss. - u_prosody_loss_alpha (float): Alpha value for the utterance prosody loss. - p_prosody_loss_alpha (float): Alpha value for the phoneme prosody loss. - dur_loss_alpha (float): Alpha value for the duration loss. - char_dur_loss_alpha (float): Alpha value for the character duration loss. - binary_align_loss_alpha (float): Alpha value for the binary alignment loss. - binary_loss_warmup_epochs (int): Number of warm-up epochs for the binary loss. - disc_loss_alpha (float): Alpha value for the discriminator loss. - gen_loss_alpha (float): Alpha value for the generator loss. - feat_loss_alpha (float): Alpha value for the feature loss. - vocoder_mel_loss_alpha (float): Alpha value for the vocoder mel loss. - multi_scale_stft_loss_alpha (float): Alpha value for the multi-scale STFT loss. - multi_scale_stft_loss_params (dict): Parameters for the multi-scale STFT loss. - return_wav (bool): Whether to return audio waveforms. - use_weighted_sampler (bool): Whether to use a weighted sampler. - weighted_sampler_attrs (dict): Attributes for the weighted sampler. - weighted_sampler_multipliers (dict): Multipliers for the weighted sampler. - r (int): Value for the `r` override. - compute_f0 (bool): Whether to compute F0 values. - f0_cache_path (str): Path to the F0 cache. - attn_prior_cache_path (str): Path to the attention prior cache. - num_speakers (int): Number of speakers. - use_speaker_embedding (bool): Whether to use speaker embedding. - speakers_file (str): Path to the speaker file. - speaker_embedding_channels (int): Number of channels for the speaker embedding. - language_ids_file (str): Path to the language IDs file. - """ - - model: str = "delightful_tts" - - # model specific params - audio: DelightfulTtsAudioConfig = field(default_factory=DelightfulTtsAudioConfig) - model_args: DelightfulTtsArgs = field(default_factory=DelightfulTtsArgs) - use_attn_priors: bool = True - - # vocoder - vocoder: VocoderConfig = field(default_factory=VocoderConfig) - init_discriminator: bool = True - - # optimizer - steps_to_start_discriminator: int = 200000 - grad_clip: List[float] = field(default_factory=lambda: [1000, 1000]) - lr_gen: float = 0.0002 - lr_disc: float = 0.0002 - lr_scheduler_gen: str = "ExponentialLR" - lr_scheduler_gen_params: dict = field(default_factory=lambda: {"gamma": 0.999875, "last_epoch": -1}) - lr_scheduler_disc: str = "ExponentialLR" - lr_scheduler_disc_params: dict = field(default_factory=lambda: {"gamma": 0.999875, "last_epoch": -1}) - scheduler_after_epoch: bool = True - optimizer: str = "AdamW" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.8, 0.99], "eps": 1e-9, "weight_decay": 0.01}) - - # acoustic model loss params - ssim_loss_alpha: float = 1.0 - mel_loss_alpha: float = 1.0 - aligner_loss_alpha: float = 1.0 - pitch_loss_alpha: float = 1.0 - energy_loss_alpha: float = 1.0 - u_prosody_loss_alpha: float = 0.5 - p_prosody_loss_alpha: float = 0.5 - dur_loss_alpha: float = 1.0 - char_dur_loss_alpha: float = 0.01 - binary_align_loss_alpha: float = 0.1 - binary_loss_warmup_epochs: int = 10 - - # vocoder loss params - disc_loss_alpha: float = 1.0 - gen_loss_alpha: float = 1.0 - feat_loss_alpha: float = 1.0 - vocoder_mel_loss_alpha: float = 10.0 - multi_scale_stft_loss_alpha: float = 2.5 - multi_scale_stft_loss_params: dict = field( - default_factory=lambda: { - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240], - } - ) - - # data loader params - return_wav: bool = True - use_weighted_sampler: bool = False - weighted_sampler_attrs: dict = field(default_factory=lambda: {}) - weighted_sampler_multipliers: dict = field(default_factory=lambda: {}) - - # overrides - r: int = 1 - - # dataset configs - compute_f0: bool = True - f0_cache_path: str = None - attn_prior_cache_path: str = None - - # multi-speaker settings - # use speaker embedding layer - num_speakers: int = 0 - use_speaker_embedding: bool = False - speakers_file: str = None - speaker_embedding_channels: int = 256 - language_ids_file: str = None - use_language_embedding: bool = False - - # use d-vectors - use_d_vector_file: bool = False - d_vector_file: str = None - d_vector_dim: int = None - - # testing - test_sentences: List[List[str]] = field( - default_factory=lambda: [ - ["It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent."], - ["Be a voice, not an echo."], - ["I'm sorry Dave. I'm afraid I can't do that."], - ["This cake is great. It's so delicious and moist."], - ["Prior to November 22, 1963."], - ] - ) - - def __post_init__(self): - # Pass multi-speaker parameters to the model args as `model.init_multispeaker()` looks for it there. - if self.num_speakers > 0: - self.model_args.num_speakers = self.num_speakers - - # speaker embedding settings - if self.use_speaker_embedding: - self.model_args.use_speaker_embedding = True - if self.speakers_file: - self.model_args.speakers_file = self.speakers_file - - # d-vector settings - if self.use_d_vector_file: - self.model_args.use_d_vector_file = True - if self.d_vector_dim is not None and self.d_vector_dim > 0: - self.model_args.d_vector_dim = self.d_vector_dim - if self.d_vector_file: - self.model_args.d_vector_file = self.d_vector_file diff --git a/TTS/TTS/tts/configs/fast_pitch_config.py b/TTS/TTS/tts/configs/fast_pitch_config.py deleted file mode 100644 index d086d26564450c60fa04a7f3a068506f4147d3be..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/fast_pitch_config.py +++ /dev/null @@ -1,183 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.forward_tts import ForwardTTSArgs - - -@dataclass -class FastPitchConfig(BaseTTSConfig): - """Configure `ForwardTTS` as FastPitch model. - - Example: - - >>> from TTS.tts.configs.fast_pitch_config import FastPitchConfig - >>> config = FastPitchConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `fast_pitch`. - - base_model (str): - Name of the base model being configured as this model so that 🐸 TTS knows it needs to initiate - the base model rather than searching for the `model` implementation. Defaults to `forward_tts`. - - model_args (Coqpit): - Model class arguments. Check `FastPitchArgs` for more details. Defaults to `FastPitchArgs()`. - - data_dep_init_steps (int): - Number of steps used for computing normalization parameters at the beginning of the training. GlowTTS uses - Activation Normalization that pre-computes normalization stats at the beginning and use the same values - for the rest. Defaults to 10. - - speakers_file (str): - Path to the file containing the list of speakers. Needed at inference for loading matching speaker ids to - speaker names. Defaults to `None`. - - use_speaker_embedding (bool): - enable / disable using speaker embeddings for multi-speaker models. If set True, the model is - in the multi-speaker mode. Defaults to False. - - use_d_vector_file (bool): - enable /disable using external speaker embeddings in place of the learned embeddings. Defaults to False. - - d_vector_file (str): - Path to the file including pre-computed speaker embeddings. Defaults to None. - - d_vector_dim (int): - Dimension of the external speaker embeddings. Defaults to 0. - - optimizer (str): - Name of the model optimizer. Defaults to `Adam`. - - optimizer_params (dict): - Arguments of the model optimizer. Defaults to `{"betas": [0.9, 0.998], "weight_decay": 1e-6}`. - - lr_scheduler (str): - Name of the learning rate scheduler. Defaults to `Noam`. - - lr_scheduler_params (dict): - Arguments of the learning rate scheduler. Defaults to `{"warmup_steps": 4000}`. - - lr (float): - Initial learning rate. Defaults to `1e-3`. - - grad_clip (float): - Gradient norm clipping value. Defaults to `5.0`. - - spec_loss_type (str): - Type of the spectrogram loss. Check `ForwardTTSLoss` for possible values. Defaults to `mse`. - - duration_loss_type (str): - Type of the duration loss. Check `ForwardTTSLoss` for possible values. Defaults to `mse`. - - use_ssim_loss (bool): - Enable/disable the use of SSIM (Structural Similarity) loss. Defaults to True. - - wd (float): - Weight decay coefficient. Defaults to `1e-7`. - - ssim_loss_alpha (float): - Weight for the SSIM loss. If set 0, disables the SSIM loss. Defaults to 1.0. - - dur_loss_alpha (float): - Weight for the duration predictor's loss. If set 0, disables the huber loss. Defaults to 1.0. - - spec_loss_alpha (float): - Weight for the L1 spectrogram loss. If set 0, disables the L1 loss. Defaults to 1.0. - - pitch_loss_alpha (float): - Weight for the pitch predictor's loss. If set 0, disables the pitch predictor. Defaults to 1.0. - - binary_align_loss_alpha (float): - Weight for the binary loss. If set 0, disables the binary loss. Defaults to 1.0. - - binary_loss_warmup_epochs (float): - Number of epochs to gradually increase the binary loss impact. Defaults to 150. - - min_seq_len (int): - Minimum input sequence length to be used at training. - - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage. - - # dataset configs - compute_f0(bool): - Compute pitch. defaults to True - - f0_cache_path(str): - pith cache path. defaults to None - """ - - model: str = "fast_pitch" - base_model: str = "forward_tts" - - # model specific params - model_args: ForwardTTSArgs = field(default_factory=ForwardTTSArgs) - - # multi-speaker settings - num_speakers: int = 0 - speakers_file: str = None - use_speaker_embedding: bool = False - use_d_vector_file: bool = False - d_vector_file: str = False - d_vector_dim: int = 0 - - # optimizer parameters - optimizer: str = "Adam" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.9, 0.998], "weight_decay": 1e-6}) - lr_scheduler: str = "NoamLR" - lr_scheduler_params: dict = field(default_factory=lambda: {"warmup_steps": 4000}) - lr: float = 1e-4 - grad_clip: float = 5.0 - - # loss params - spec_loss_type: str = "mse" - duration_loss_type: str = "mse" - use_ssim_loss: bool = True - ssim_loss_alpha: float = 1.0 - spec_loss_alpha: float = 1.0 - aligner_loss_alpha: float = 1.0 - pitch_loss_alpha: float = 0.1 - dur_loss_alpha: float = 0.1 - binary_align_loss_alpha: float = 0.1 - binary_loss_warmup_epochs: int = 150 - - # overrides - min_seq_len: int = 13 - max_seq_len: int = 200 - r: int = 1 # DO NOT CHANGE - - # dataset configs - compute_f0: bool = True - f0_cache_path: str = None - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "Be a voice, not an echo.", - "I'm sorry Dave. I'm afraid I can't do that.", - "This cake is great. It's so delicious and moist.", - "Prior to November 22, 1963.", - ] - ) - - def __post_init__(self): - # Pass multi-speaker parameters to the model args as `model.init_multispeaker()` looks for it there. - if self.num_speakers > 0: - self.model_args.num_speakers = self.num_speakers - - # speaker embedding settings - if self.use_speaker_embedding: - self.model_args.use_speaker_embedding = True - if self.speakers_file: - self.model_args.speakers_file = self.speakers_file - - # d-vector settings - if self.use_d_vector_file: - self.model_args.use_d_vector_file = True - if self.d_vector_dim is not None and self.d_vector_dim > 0: - self.model_args.d_vector_dim = self.d_vector_dim - if self.d_vector_file: - self.model_args.d_vector_file = self.d_vector_file diff --git a/TTS/TTS/tts/configs/fast_speech_config.py b/TTS/TTS/tts/configs/fast_speech_config.py deleted file mode 100644 index af6c2db6faf55ee2b15047fff86281d42dab1b87..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/fast_speech_config.py +++ /dev/null @@ -1,177 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.forward_tts import ForwardTTSArgs - - -@dataclass -class FastSpeechConfig(BaseTTSConfig): - """Configure `ForwardTTS` as FastSpeech model. - - Example: - - >>> from TTS.tts.configs.fast_speech_config import FastSpeechConfig - >>> config = FastSpeechConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `fast_pitch`. - - base_model (str): - Name of the base model being configured as this model so that 🐸 TTS knows it needs to initiate - the base model rather than searching for the `model` implementation. Defaults to `forward_tts`. - - model_args (Coqpit): - Model class arguments. Check `FastSpeechArgs` for more details. Defaults to `FastSpeechArgs()`. - - data_dep_init_steps (int): - Number of steps used for computing normalization parameters at the beginning of the training. GlowTTS uses - Activation Normalization that pre-computes normalization stats at the beginning and use the same values - for the rest. Defaults to 10. - - speakers_file (str): - Path to the file containing the list of speakers. Needed at inference for loading matching speaker ids to - speaker names. Defaults to `None`. - - - use_speaker_embedding (bool): - enable / disable using speaker embeddings for multi-speaker models. If set True, the model is - in the multi-speaker mode. Defaults to False. - - use_d_vector_file (bool): - enable /disable using external speaker embeddings in place of the learned embeddings. Defaults to False. - - d_vector_file (str): - Path to the file including pre-computed speaker embeddings. Defaults to None. - - d_vector_dim (int): - Dimension of the external speaker embeddings. Defaults to 0. - - optimizer (str): - Name of the model optimizer. Defaults to `Adam`. - - optimizer_params (dict): - Arguments of the model optimizer. Defaults to `{"betas": [0.9, 0.998], "weight_decay": 1e-6}`. - - lr_scheduler (str): - Name of the learning rate scheduler. Defaults to `Noam`. - - lr_scheduler_params (dict): - Arguments of the learning rate scheduler. Defaults to `{"warmup_steps": 4000}`. - - lr (float): - Initial learning rate. Defaults to `1e-3`. - - grad_clip (float): - Gradient norm clipping value. Defaults to `5.0`. - - spec_loss_type (str): - Type of the spectrogram loss. Check `ForwardTTSLoss` for possible values. Defaults to `mse`. - - duration_loss_type (str): - Type of the duration loss. Check `ForwardTTSLoss` for possible values. Defaults to `mse`. - - use_ssim_loss (bool): - Enable/disable the use of SSIM (Structural Similarity) loss. Defaults to True. - - wd (float): - Weight decay coefficient. Defaults to `1e-7`. - - ssim_loss_alpha (float): - Weight for the SSIM loss. If set 0, disables the SSIM loss. Defaults to 1.0. - - dur_loss_alpha (float): - Weight for the duration predictor's loss. If set 0, disables the huber loss. Defaults to 1.0. - - spec_loss_alpha (float): - Weight for the L1 spectrogram loss. If set 0, disables the L1 loss. Defaults to 1.0. - - pitch_loss_alpha (float): - Weight for the pitch predictor's loss. If set 0, disables the pitch predictor. Defaults to 1.0. - - binary_loss_alpha (float): - Weight for the binary loss. If set 0, disables the binary loss. Defaults to 1.0. - - binary_loss_warmup_epochs (float): - Number of epochs to gradually increase the binary loss impact. Defaults to 150. - - min_seq_len (int): - Minimum input sequence length to be used at training. - - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage. - """ - - model: str = "fast_speech" - base_model: str = "forward_tts" - - # model specific params - model_args: ForwardTTSArgs = field(default_factory=lambda: ForwardTTSArgs(use_pitch=False)) - - # multi-speaker settings - num_speakers: int = 0 - speakers_file: str = None - use_speaker_embedding: bool = False - use_d_vector_file: bool = False - d_vector_file: str = False - d_vector_dim: int = 0 - - # optimizer parameters - optimizer: str = "Adam" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.9, 0.998], "weight_decay": 1e-6}) - lr_scheduler: str = "NoamLR" - lr_scheduler_params: dict = field(default_factory=lambda: {"warmup_steps": 4000}) - lr: float = 1e-4 - grad_clip: float = 5.0 - - # loss params - spec_loss_type: str = "mse" - duration_loss_type: str = "mse" - use_ssim_loss: bool = True - ssim_loss_alpha: float = 1.0 - dur_loss_alpha: float = 1.0 - spec_loss_alpha: float = 1.0 - pitch_loss_alpha: float = 0.0 - aligner_loss_alpha: float = 1.0 - binary_align_loss_alpha: float = 1.0 - binary_loss_warmup_epochs: int = 150 - - # overrides - min_seq_len: int = 13 - max_seq_len: int = 200 - r: int = 1 # DO NOT CHANGE - - # dataset configs - compute_f0: bool = False - f0_cache_path: str = None - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "Be a voice, not an echo.", - "I'm sorry Dave. I'm afraid I can't do that.", - "This cake is great. It's so delicious and moist.", - "Prior to November 22, 1963.", - ] - ) - - def __post_init__(self): - # Pass multi-speaker parameters to the model args as `model.init_multispeaker()` looks for it there. - if self.num_speakers > 0: - self.model_args.num_speakers = self.num_speakers - - # speaker embedding settings - if self.use_speaker_embedding: - self.model_args.use_speaker_embedding = True - if self.speakers_file: - self.model_args.speakers_file = self.speakers_file - - # d-vector settings - if self.use_d_vector_file: - self.model_args.use_d_vector_file = True - if self.d_vector_dim is not None and self.d_vector_dim > 0: - self.model_args.d_vector_dim = self.d_vector_dim - if self.d_vector_file: - self.model_args.d_vector_file = self.d_vector_file diff --git a/TTS/TTS/tts/configs/fastspeech2_config.py b/TTS/TTS/tts/configs/fastspeech2_config.py deleted file mode 100644 index d179617fb034fff269355ce7e3d78b67db90aacd..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/fastspeech2_config.py +++ /dev/null @@ -1,198 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.forward_tts import ForwardTTSArgs - - -@dataclass -class Fastspeech2Config(BaseTTSConfig): - """Configure `ForwardTTS` as FastPitch model. - - Example: - - >>> from TTS.tts.configs.fastspeech2_config import FastSpeech2Config - >>> config = FastSpeech2Config() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `fast_pitch`. - - base_model (str): - Name of the base model being configured as this model so that 🐸 TTS knows it needs to initiate - the base model rather than searching for the `model` implementation. Defaults to `forward_tts`. - - model_args (Coqpit): - Model class arguments. Check `FastPitchArgs` for more details. Defaults to `FastPitchArgs()`. - - data_dep_init_steps (int): - Number of steps used for computing normalization parameters at the beginning of the training. GlowTTS uses - Activation Normalization that pre-computes normalization stats at the beginning and use the same values - for the rest. Defaults to 10. - - speakers_file (str): - Path to the file containing the list of speakers. Needed at inference for loading matching speaker ids to - speaker names. Defaults to `None`. - - use_speaker_embedding (bool): - enable / disable using speaker embeddings for multi-speaker models. If set True, the model is - in the multi-speaker mode. Defaults to False. - - use_d_vector_file (bool): - enable /disable using external speaker embeddings in place of the learned embeddings. Defaults to False. - - d_vector_file (str): - Path to the file including pre-computed speaker embeddings. Defaults to None. - - d_vector_dim (int): - Dimension of the external speaker embeddings. Defaults to 0. - - optimizer (str): - Name of the model optimizer. Defaults to `Adam`. - - optimizer_params (dict): - Arguments of the model optimizer. Defaults to `{"betas": [0.9, 0.998], "weight_decay": 1e-6}`. - - lr_scheduler (str): - Name of the learning rate scheduler. Defaults to `Noam`. - - lr_scheduler_params (dict): - Arguments of the learning rate scheduler. Defaults to `{"warmup_steps": 4000}`. - - lr (float): - Initial learning rate. Defaults to `1e-3`. - - grad_clip (float): - Gradient norm clipping value. Defaults to `5.0`. - - spec_loss_type (str): - Type of the spectrogram loss. Check `ForwardTTSLoss` for possible values. Defaults to `mse`. - - duration_loss_type (str): - Type of the duration loss. Check `ForwardTTSLoss` for possible values. Defaults to `mse`. - - use_ssim_loss (bool): - Enable/disable the use of SSIM (Structural Similarity) loss. Defaults to True. - - wd (float): - Weight decay coefficient. Defaults to `1e-7`. - - ssim_loss_alpha (float): - Weight for the SSIM loss. If set 0, disables the SSIM loss. Defaults to 1.0. - - dur_loss_alpha (float): - Weight for the duration predictor's loss. If set 0, disables the huber loss. Defaults to 1.0. - - spec_loss_alpha (float): - Weight for the L1 spectrogram loss. If set 0, disables the L1 loss. Defaults to 1.0. - - pitch_loss_alpha (float): - Weight for the pitch predictor's loss. If set 0, disables the pitch predictor. Defaults to 1.0. - - energy_loss_alpha (float): - Weight for the energy predictor's loss. If set 0, disables the energy predictor. Defaults to 1.0. - - binary_align_loss_alpha (float): - Weight for the binary loss. If set 0, disables the binary loss. Defaults to 1.0. - - binary_loss_warmup_epochs (float): - Number of epochs to gradually increase the binary loss impact. Defaults to 150. - - min_seq_len (int): - Minimum input sequence length to be used at training. - - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage. - - # dataset configs - compute_f0(bool): - Compute pitch. defaults to True - - f0_cache_path(str): - pith cache path. defaults to None - - # dataset configs - compute_energy(bool): - Compute energy. defaults to True - - energy_cache_path(str): - energy cache path. defaults to None - """ - - model: str = "fastspeech2" - base_model: str = "forward_tts" - - # model specific params - model_args: ForwardTTSArgs = field(default_factory=lambda: ForwardTTSArgs(use_pitch=True, use_energy=True)) - - # multi-speaker settings - num_speakers: int = 0 - speakers_file: str = None - use_speaker_embedding: bool = False - use_d_vector_file: bool = False - d_vector_file: str = False - d_vector_dim: int = 0 - - # optimizer parameters - optimizer: str = "Adam" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.9, 0.998], "weight_decay": 1e-6}) - lr_scheduler: str = "NoamLR" - lr_scheduler_params: dict = field(default_factory=lambda: {"warmup_steps": 4000}) - lr: float = 1e-4 - grad_clip: float = 5.0 - - # loss params - spec_loss_type: str = "mse" - duration_loss_type: str = "mse" - use_ssim_loss: bool = True - ssim_loss_alpha: float = 1.0 - spec_loss_alpha: float = 1.0 - aligner_loss_alpha: float = 1.0 - pitch_loss_alpha: float = 0.1 - energy_loss_alpha: float = 0.1 - dur_loss_alpha: float = 0.1 - binary_align_loss_alpha: float = 0.1 - binary_loss_warmup_epochs: int = 150 - - # overrides - min_seq_len: int = 13 - max_seq_len: int = 200 - r: int = 1 # DO NOT CHANGE - - # dataset configs - compute_f0: bool = True - f0_cache_path: str = None - - # dataset configs - compute_energy: bool = True - energy_cache_path: str = None - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "Be a voice, not an echo.", - "I'm sorry Dave. I'm afraid I can't do that.", - "This cake is great. It's so delicious and moist.", - "Prior to November 22, 1963.", - ] - ) - - def __post_init__(self): - # Pass multi-speaker parameters to the model args as `model.init_multispeaker()` looks for it there. - if self.num_speakers > 0: - self.model_args.num_speakers = self.num_speakers - - # speaker embedding settings - if self.use_speaker_embedding: - self.model_args.use_speaker_embedding = True - if self.speakers_file: - self.model_args.speakers_file = self.speakers_file - - # d-vector settings - if self.use_d_vector_file: - self.model_args.use_d_vector_file = True - if self.d_vector_dim is not None and self.d_vector_dim > 0: - self.model_args.d_vector_dim = self.d_vector_dim - if self.d_vector_file: - self.model_args.d_vector_file = self.d_vector_file diff --git a/TTS/TTS/tts/configs/glow_tts_config.py b/TTS/TTS/tts/configs/glow_tts_config.py deleted file mode 100644 index f42f3e5a510bacf1b2312ccea7d46201bbcb774f..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/glow_tts_config.py +++ /dev/null @@ -1,182 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig - - -@dataclass -class GlowTTSConfig(BaseTTSConfig): - """Defines parameters for GlowTTS model. - - Example: - - >>> from TTS.tts.configs.glow_tts_config import GlowTTSConfig - >>> config = GlowTTSConfig() - - Args: - model(str): - Model name used for selecting the right model at initialization. Defaults to `glow_tts`. - encoder_type (str): - Type of the encoder used by the model. Look at `TTS.tts.layers.glow_tts.encoder` for more details. - Defaults to `rel_pos_transformers`. - encoder_params (dict): - Parameters used to define the encoder network. Look at `TTS.tts.layers.glow_tts.encoder` for more details. - Defaults to `{"kernel_size": 3, "dropout_p": 0.1, "num_layers": 6, "num_heads": 2, "hidden_channels_ffn": 768}` - use_encoder_prenet (bool): - enable / disable the use of a prenet for the encoder. Defaults to True. - hidden_channels_enc (int): - Number of base hidden channels used by the encoder network. It defines the input and the output channel sizes, - and for some encoder types internal hidden channels sizes too. Defaults to 192. - hidden_channels_dec (int): - Number of base hidden channels used by the decoder WaveNet network. Defaults to 192 as in the original work. - hidden_channels_dp (int): - Number of layer channels of the duration predictor network. Defaults to 256 as in the original work. - mean_only (bool): - If true predict only the mean values by the decoder flow. Defaults to True. - out_channels (int): - Number of channels of the model output tensor. Defaults to 80. - num_flow_blocks_dec (int): - Number of decoder blocks. Defaults to 12. - inference_noise_scale (float): - Noise scale used at inference. Defaults to 0.33. - kernel_size_dec (int): - Decoder kernel size. Defaults to 5 - dilation_rate (int): - Rate to increase dilation by each layer in a decoder block. Defaults to 1. - num_block_layers (int): - Number of decoder layers in each decoder block. Defaults to 4. - dropout_p_dec (float): - Dropout rate for decoder. Defaults to 0.1. - num_speaker (int): - Number of speaker to define the size of speaker embedding layer. Defaults to 0. - c_in_channels (int): - Number of speaker embedding channels. It is set to 512 if embeddings are learned. Defaults to 0. - num_splits (int): - Number of split levels in inversible conv1x1 operation. Defaults to 4. - num_squeeze (int): - Number of squeeze levels. When squeezing channels increases and time steps reduces by the factor - 'num_squeeze'. Defaults to 2. - sigmoid_scale (bool): - enable/disable sigmoid scaling in decoder. Defaults to False. - mean_only (bool): - If True, encoder only computes mean value and uses constant variance for each time step. Defaults to true. - encoder_type (str): - Encoder module type. Possible values are`["rel_pos_transformer", "gated_conv", "residual_conv_bn", "time_depth_separable"]` - Check `TTS.tts.layers.glow_tts.encoder` for more details. Defaults to `rel_pos_transformers` as in the original paper. - encoder_params (dict): - Encoder module parameters. Defaults to None. - d_vector_dim (int): - Channels of external speaker embedding vectors. Defaults to 0. - data_dep_init_steps (int): - Number of steps used for computing normalization parameters at the beginning of the training. GlowTTS uses - Activation Normalization that pre-computes normalization stats at the beginning and use the same values - for the rest. Defaults to 10. - style_wav_for_test (str): - Path to the wav file used for changing the style of the speech. Defaults to None. - inference_noise_scale (float): - Variance used for sampling the random noise added to the decoder's input at inference. Defaults to 0.0. - length_scale (float): - Multiply the predicted durations with this value to change the speech speed. Defaults to 1. - use_speaker_embedding (bool): - enable / disable using speaker embeddings for multi-speaker models. If set True, the model is - in the multi-speaker mode. Defaults to False. - use_d_vector_file (bool): - enable /disable using external speaker embeddings in place of the learned embeddings. Defaults to False. - d_vector_file (str): - Path to the file including pre-computed speaker embeddings. Defaults to None. - noam_schedule (bool): - enable / disable the use of Noam LR scheduler. Defaults to False. - warmup_steps (int): - Number of warm-up steps for the Noam scheduler. Defaults 4000. - lr (float): - Initial learning rate. Defaults to `1e-3`. - wd (float): - Weight decay coefficient. Defaults to `1e-7`. - min_seq_len (int): - Minimum input sequence length to be used at training. - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage. - """ - - model: str = "glow_tts" - - # model params - num_chars: int = None - encoder_type: str = "rel_pos_transformer" - encoder_params: dict = field( - default_factory=lambda: { - "kernel_size": 3, - "dropout_p": 0.1, - "num_layers": 6, - "num_heads": 2, - "hidden_channels_ffn": 768, - } - ) - use_encoder_prenet: bool = True - hidden_channels_enc: int = 192 - hidden_channels_dec: int = 192 - hidden_channels_dp: int = 256 - dropout_p_dp: float = 0.1 - dropout_p_dec: float = 0.05 - mean_only: bool = True - out_channels: int = 80 - num_flow_blocks_dec: int = 12 - inference_noise_scale: float = 0.33 - kernel_size_dec: int = 5 - dilation_rate: int = 1 - num_block_layers: int = 4 - num_speakers: int = 0 - c_in_channels: int = 0 - num_splits: int = 4 - num_squeeze: int = 2 - sigmoid_scale: bool = False - encoder_type: str = "rel_pos_transformer" - encoder_params: dict = field( - default_factory=lambda: { - "kernel_size": 3, - "dropout_p": 0.1, - "num_layers": 6, - "num_heads": 2, - "hidden_channels_ffn": 768, - "input_length": None, - } - ) - d_vector_dim: int = 0 - - # training params - data_dep_init_steps: int = 10 - - # inference params - style_wav_for_test: str = None - inference_noise_scale: float = 0.0 - length_scale: float = 1.0 - - # multi-speaker settings - use_speaker_embedding: bool = False - speakers_file: str = None - use_d_vector_file: bool = False - d_vector_file: str = False - - # optimizer parameters - optimizer: str = "RAdam" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.9, 0.998], "weight_decay": 1e-6}) - lr_scheduler: str = "NoamLR" - lr_scheduler_params: dict = field(default_factory=lambda: {"warmup_steps": 4000}) - grad_clip: float = 5.0 - lr: float = 1e-3 - - # overrides - min_seq_len: int = 3 - max_seq_len: int = 500 - r: int = 1 # DO NOT CHANGE - TODO: make this immutable once coqpit implements it. - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "Be a voice, not an echo.", - "I'm sorry Dave. I'm afraid I can't do that.", - "This cake is great. It's so delicious and moist.", - "Prior to November 22, 1963.", - ] - ) diff --git a/TTS/TTS/tts/configs/neuralhmm_tts_config.py b/TTS/TTS/tts/configs/neuralhmm_tts_config.py deleted file mode 100644 index 50f72847ed3e1c7089915ef8fd77ae5775c5b260..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/neuralhmm_tts_config.py +++ /dev/null @@ -1,170 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig - - -@dataclass -class NeuralhmmTTSConfig(BaseTTSConfig): - """ - Define parameters for Neural HMM TTS model. - - Example: - - >>> from TTS.tts.configs.overflow_config import OverflowConfig - >>> config = OverflowConfig() - - Args: - model (str): - Model name used to select the right model class to initilize. Defaults to `Overflow`. - run_eval_steps (int): - Run evalulation epoch after N steps. If None, waits until training epoch is completed. Defaults to None. - save_step (int): - Save local checkpoint every save_step steps. Defaults to 500. - plot_step (int): - Plot training stats on the logger every plot_step steps. Defaults to 1. - model_param_stats (bool): - Log model parameters stats on the logger dashboard. Defaults to False. - force_generate_statistics (bool): - Force generate mel normalization statistics. Defaults to False. - mel_statistics_parameter_path (str): - Path to the mel normalization statistics.If the model doesn't finds a file there it will generate statistics. - Defaults to None. - num_chars (int): - Number of characters used by the model. It must be defined before initializing the model. Defaults to None. - state_per_phone (int): - Generates N states per phone. Similar, to `add_blank` parameter in GlowTTS but in Overflow it is upsampled by model's encoder. Defaults to 2. - encoder_in_out_features (int): - Channels of encoder input and character embedding tensors. Defaults to 512. - encoder_n_convolutions (int): - Number of convolution layers in the encoder. Defaults to 3. - out_channels (int): - Channels of the final model output. It must match the spectragram size. Defaults to 80. - ar_order (int): - Autoregressive order of the model. Defaults to 1. In ablations of Neural HMM it was found that more autoregression while giving more variation hurts naturalness of the synthesised audio. - sampling_temp (float): - Variation added to the sample from the latent space of neural HMM. Defaults to 0.334. - deterministic_transition (bool): - deterministic duration generation based on duration quantiles as defiend in "S. Ronanki, O. Watts, S. King, and G. E. Henter, “Medianbased generation of synthetic speech durations using a nonparametric approach,” in Proc. SLT, 2016.". Defaults to True. - duration_threshold (float): - Threshold for duration quantiles. Defaults to 0.55. Tune this to change the speaking rate of the synthesis, where lower values defines a slower speaking rate and higher values defines a faster speaking rate. - use_grad_checkpointing (bool): - Use gradient checkpointing to save memory. In a multi-GPU setting currently pytorch does not supports gradient checkpoint inside a loop so we will have to turn it off then.Adjust depending on whatever get more batch size either by using a single GPU or multi-GPU. Defaults to True. - max_sampling_time (int): - Maximum sampling time while synthesising latents from neural HMM. Defaults to 1000. - prenet_type (str): - `original` or `bn`. `original` sets the default Prenet and `bn` uses Batch Normalization version of the - Prenet. Defaults to `original`. - prenet_dim (int): - Dimension of the Prenet. Defaults to 256. - prenet_n_layers (int): - Number of layers in the Prenet. Defaults to 2. - prenet_dropout (float): - Dropout rate of the Prenet. Defaults to 0.5. - prenet_dropout_at_inference (bool): - Use dropout at inference time. Defaults to False. - memory_rnn_dim (int): - Dimension of the memory LSTM to process the prenet output. Defaults to 1024. - outputnet_size (list[int]): - Size of the output network inside the neural HMM. Defaults to [1024]. - flat_start_params (dict): - Parameters for the flat start initialization of the neural HMM. Defaults to `{"mean": 0.0, "std": 1.0, "transition_p": 0.14}`. - It will be recomputed when you pass the dataset. - std_floor (float): - Floor value for the standard deviation of the neural HMM. Prevents model cheating by putting point mass and getting infinite likelihood at any datapoint. Defaults to 0.01. - It is called `variance flooring` in standard HMM literature. - optimizer (str): - Optimizer to use for training. Defaults to `adam`. - optimizer_params (dict): - Parameters for the optimizer. Defaults to `{"weight_decay": 1e-6}`. - grad_clip (float): - Gradient clipping threshold. Defaults to 40_000. - lr (float): - Learning rate. Defaults to 1e-3. - lr_scheduler (str): - Learning rate scheduler for the training. Use one from `torch.optim.Scheduler` schedulers or - `TTS.utils.training`. Defaults to `None`. - min_seq_len (int): - Minimum input sequence length to be used at training. - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage. - """ - - model: str = "NeuralHMM_TTS" - - # Training and Checkpoint configs - run_eval_steps: int = 100 - save_step: int = 500 - plot_step: int = 1 - model_param_stats: bool = False - - # data parameters - force_generate_statistics: bool = False - mel_statistics_parameter_path: str = None - - # Encoder parameters - num_chars: int = None - state_per_phone: int = 2 - encoder_in_out_features: int = 512 - encoder_n_convolutions: int = 3 - - # HMM parameters - out_channels: int = 80 - ar_order: int = 1 - sampling_temp: float = 0 - deterministic_transition: bool = True - duration_threshold: float = 0.43 - use_grad_checkpointing: bool = True - max_sampling_time: int = 1000 - - ## Prenet parameters - prenet_type: str = "original" - prenet_dim: int = 256 - prenet_n_layers: int = 2 - prenet_dropout: float = 0.5 - prenet_dropout_at_inference: bool = True - memory_rnn_dim: int = 1024 - - ## Outputnet parameters - outputnet_size: List[int] = field(default_factory=lambda: [1024]) - flat_start_params: dict = field(default_factory=lambda: {"mean": 0.0, "std": 1.0, "transition_p": 0.14}) - std_floor: float = 0.001 - - # optimizer parameters - optimizer: str = "Adam" - optimizer_params: dict = field(default_factory=lambda: {"weight_decay": 1e-6}) - grad_clip: float = 40000.0 - lr: float = 1e-3 - lr_scheduler: str = None - - # overrides - min_text_len: int = 10 - max_text_len: int = 500 - min_audio_len: int = 512 - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "Be a voice, not an echo.", - ] - ) - - # Extra needed config - r: int = 1 - use_d_vector_file: bool = False - use_speaker_embedding: bool = False - - def check_values(self): - """Validate the hyperparameters. - - Raises: - AssertionError: when the parameters network is not defined - AssertionError: transition probability is not between 0 and 1 - """ - assert self.ar_order > 0, "AR order must be greater than 0 it is an autoregressive model." - assert ( - len(self.outputnet_size) >= 1 - ), f"Parameter Network must have atleast one layer check the config file for parameter network. Provided: {self.parameternetwork}" - assert ( - 0 < self.flat_start_params["transition_p"] < 1 - ), f"Transition probability must be between 0 and 1. Provided: {self.flat_start_params['transition_p']}" diff --git a/TTS/TTS/tts/configs/overflow_config.py b/TTS/TTS/tts/configs/overflow_config.py deleted file mode 100644 index dc3e5548b8f62f76c88acca85d19e2cee8687ebd..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/overflow_config.py +++ /dev/null @@ -1,201 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig - - -@dataclass -class OverflowConfig(BaseTTSConfig): # The classname has to be camel case - """ - Define parameters for OverFlow model. - - Example: - - >>> from TTS.tts.configs.overflow_config import OverflowConfig - >>> config = OverflowConfig() - - Args: - model (str): - Model name used to select the right model class to initilize. Defaults to `Overflow`. - run_eval_steps (int): - Run evalulation epoch after N steps. If None, waits until training epoch is completed. Defaults to None. - save_step (int): - Save local checkpoint every save_step steps. Defaults to 500. - plot_step (int): - Plot training stats on the logger every plot_step steps. Defaults to 1. - model_param_stats (bool): - Log model parameters stats on the logger dashboard. Defaults to False. - force_generate_statistics (bool): - Force generate mel normalization statistics. Defaults to False. - mel_statistics_parameter_path (str): - Path to the mel normalization statistics.If the model doesn't finds a file there it will generate statistics. - Defaults to None. - num_chars (int): - Number of characters used by the model. It must be defined before initializing the model. Defaults to None. - state_per_phone (int): - Generates N states per phone. Similar, to `add_blank` parameter in GlowTTS but in Overflow it is upsampled by model's encoder. Defaults to 2. - encoder_in_out_features (int): - Channels of encoder input and character embedding tensors. Defaults to 512. - encoder_n_convolutions (int): - Number of convolution layers in the encoder. Defaults to 3. - out_channels (int): - Channels of the final model output. It must match the spectragram size. Defaults to 80. - ar_order (int): - Autoregressive order of the model. Defaults to 1. In ablations of Neural HMM it was found that more autoregression while giving more variation hurts naturalness of the synthesised audio. - sampling_temp (float): - Variation added to the sample from the latent space of neural HMM. Defaults to 0.334. - deterministic_transition (bool): - deterministic duration generation based on duration quantiles as defiend in "S. Ronanki, O. Watts, S. King, and G. E. Henter, “Medianbased generation of synthetic speech durations using a nonparametric approach,” in Proc. SLT, 2016.". Defaults to True. - duration_threshold (float): - Threshold for duration quantiles. Defaults to 0.55. Tune this to change the speaking rate of the synthesis, where lower values defines a slower speaking rate and higher values defines a faster speaking rate. - use_grad_checkpointing (bool): - Use gradient checkpointing to save memory. In a multi-GPU setting currently pytorch does not supports gradient checkpoint inside a loop so we will have to turn it off then.Adjust depending on whatever get more batch size either by using a single GPU or multi-GPU. Defaults to True. - max_sampling_time (int): - Maximum sampling time while synthesising latents from neural HMM. Defaults to 1000. - prenet_type (str): - `original` or `bn`. `original` sets the default Prenet and `bn` uses Batch Normalization version of the - Prenet. Defaults to `original`. - prenet_dim (int): - Dimension of the Prenet. Defaults to 256. - prenet_n_layers (int): - Number of layers in the Prenet. Defaults to 2. - prenet_dropout (float): - Dropout rate of the Prenet. Defaults to 0.5. - prenet_dropout_at_inference (bool): - Use dropout at inference time. Defaults to False. - memory_rnn_dim (int): - Dimension of the memory LSTM to process the prenet output. Defaults to 1024. - outputnet_size (list[int]): - Size of the output network inside the neural HMM. Defaults to [1024]. - flat_start_params (dict): - Parameters for the flat start initialization of the neural HMM. Defaults to `{"mean": 0.0, "std": 1.0, "transition_p": 0.14}`. - It will be recomputed when you pass the dataset. - std_floor (float): - Floor value for the standard deviation of the neural HMM. Prevents model cheating by putting point mass and getting infinite likelihood at any datapoint. Defaults to 0.01. - It is called `variance flooring` in standard HMM literature. - hidden_channels_dec (int): - Number of base hidden channels used by the decoder WaveNet network. Defaults to 150. - kernel_size_dec (int): - Decoder kernel size. Defaults to 5 - dilation_rate (int): - Rate to increase dilation by each layer in a decoder block. Defaults to 1. - num_flow_blocks_dec (int): - Number of decoder layers in each decoder block. Defaults to 4. - dropout_p_dec (float): - Dropout rate of the decoder. Defaults to 0.05. - num_splits (int): - Number of split levels in inversible conv1x1 operation. Defaults to 4. - num_squeeze (int): - Number of squeeze levels. When squeezing channels increases and time steps reduces by the factor - 'num_squeeze'. Defaults to 2. - sigmoid_scale (bool): - enable/disable sigmoid scaling in decoder. Defaults to False. - c_in_channels (int): - Unused parameter from GlowTTS's decoder. Defaults to 0. - optimizer (str): - Optimizer to use for training. Defaults to `adam`. - optimizer_params (dict): - Parameters for the optimizer. Defaults to `{"weight_decay": 1e-6}`. - grad_clip (float): - Gradient clipping threshold. Defaults to 40_000. - lr (float): - Learning rate. Defaults to 1e-3. - lr_scheduler (str): - Learning rate scheduler for the training. Use one from `torch.optim.Scheduler` schedulers or - `TTS.utils.training`. Defaults to `None`. - min_seq_len (int): - Minimum input sequence length to be used at training. - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage. - """ - - model: str = "Overflow" - - # Training and Checkpoint configs - run_eval_steps: int = 100 - save_step: int = 500 - plot_step: int = 1 - model_param_stats: bool = False - - # data parameters - force_generate_statistics: bool = False - mel_statistics_parameter_path: str = None - - # Encoder parameters - num_chars: int = None - state_per_phone: int = 2 - encoder_in_out_features: int = 512 - encoder_n_convolutions: int = 3 - - # HMM parameters - out_channels: int = 80 - ar_order: int = 1 - sampling_temp: float = 0.334 - deterministic_transition: bool = True - duration_threshold: float = 0.55 - use_grad_checkpointing: bool = True - max_sampling_time: int = 1000 - - ## Prenet parameters - prenet_type: str = "original" - prenet_dim: int = 256 - prenet_n_layers: int = 2 - prenet_dropout: float = 0.5 - prenet_dropout_at_inference: bool = False - memory_rnn_dim: int = 1024 - - ## Outputnet parameters - outputnet_size: List[int] = field(default_factory=lambda: [1024]) - flat_start_params: dict = field(default_factory=lambda: {"mean": 0.0, "std": 1.0, "transition_p": 0.14}) - std_floor: float = 0.01 - - # Decoder parameters - hidden_channels_dec: int = 150 - kernel_size_dec: int = 5 - dilation_rate: int = 1 - num_flow_blocks_dec: int = 12 - num_block_layers: int = 4 - dropout_p_dec: float = 0.05 - num_splits: int = 4 - num_squeeze: int = 2 - sigmoid_scale: bool = False - c_in_channels: int = 0 - - # optimizer parameters - optimizer: str = "Adam" - optimizer_params: dict = field(default_factory=lambda: {"weight_decay": 1e-6}) - grad_clip: float = 40000.0 - lr: float = 1e-3 - lr_scheduler: str = None - - # overrides - min_text_len: int = 10 - max_text_len: int = 500 - min_audio_len: int = 512 - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "Be a voice, not an echo.", - ] - ) - - # Extra needed config - r: int = 1 - use_d_vector_file: bool = False - use_speaker_embedding: bool = False - - def check_values(self): - """Validate the hyperparameters. - - Raises: - AssertionError: when the parameters network is not defined - AssertionError: transition probability is not between 0 and 1 - """ - assert self.ar_order > 0, "AR order must be greater than 0 it is an autoregressive model." - assert ( - len(self.outputnet_size) >= 1 - ), f"Parameter Network must have atleast one layer check the config file for parameter network. Provided: {self.parameternetwork}" - assert ( - 0 < self.flat_start_params["transition_p"] < 1 - ), f"Transition probability must be between 0 and 1. Provided: {self.flat_start_params['transition_p']}" diff --git a/TTS/TTS/tts/configs/shared_configs.py b/TTS/TTS/tts/configs/shared_configs.py deleted file mode 100644 index bf17322c190bb234d4e27c6196e53b276fb5f09d..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/shared_configs.py +++ /dev/null @@ -1,344 +0,0 @@ -from dataclasses import asdict, dataclass, field -from typing import Dict, List - -from coqpit import Coqpit, check_argument - -from TTS.config import BaseAudioConfig, BaseDatasetConfig, BaseTrainingConfig - - -@dataclass -class GSTConfig(Coqpit): - """Defines the Global Style Token Module - - Args: - gst_style_input_wav (str): - Path to the wav file used to define the style of the output speech at inference. Defaults to None. - - gst_style_input_weights (dict): - Defines the weights for each style token used at inference. Defaults to None. - - gst_embedding_dim (int): - Defines the size of the GST embedding vector dimensions. Defaults to 256. - - gst_num_heads (int): - Number of attention heads used by the multi-head attention. Defaults to 4. - - gst_num_style_tokens (int): - Number of style token vectors. Defaults to 10. - """ - - gst_style_input_wav: str = None - gst_style_input_weights: dict = None - gst_embedding_dim: int = 256 - gst_use_speaker_embedding: bool = False - gst_num_heads: int = 4 - gst_num_style_tokens: int = 10 - - def check_values( - self, - ): - """Check config fields""" - c = asdict(self) - super().check_values() - check_argument("gst_style_input_weights", c, restricted=False) - check_argument("gst_style_input_wav", c, restricted=False) - check_argument("gst_embedding_dim", c, restricted=True, min_val=0, max_val=1000) - check_argument("gst_use_speaker_embedding", c, restricted=False) - check_argument("gst_num_heads", c, restricted=True, min_val=2, max_val=10) - check_argument("gst_num_style_tokens", c, restricted=True, min_val=1, max_val=1000) - - -@dataclass -class CapacitronVAEConfig(Coqpit): - """Defines the capacitron VAE Module - Args: - capacitron_capacity (int): - Defines the variational capacity limit of the prosody embeddings. Defaults to 150. - capacitron_VAE_embedding_dim (int): - Defines the size of the Capacitron embedding vector dimension. Defaults to 128. - capacitron_use_text_summary_embeddings (bool): - If True, use a text summary embedding in Capacitron. Defaults to True. - capacitron_text_summary_embedding_dim (int): - Defines the size of the capacitron text embedding vector dimension. Defaults to 128. - capacitron_use_speaker_embedding (bool): - if True use speaker embeddings in Capacitron. Defaults to False. - capacitron_VAE_loss_alpha (float): - Weight for the VAE loss of the Tacotron model. If set less than or equal to zero, it disables the - corresponding loss function. Defaults to 0.25 - capacitron_grad_clip (float): - Gradient clipping value for all gradients except beta. Defaults to 5.0 - """ - - capacitron_loss_alpha: int = 1 - capacitron_capacity: int = 150 - capacitron_VAE_embedding_dim: int = 128 - capacitron_use_text_summary_embeddings: bool = True - capacitron_text_summary_embedding_dim: int = 128 - capacitron_use_speaker_embedding: bool = False - capacitron_VAE_loss_alpha: float = 0.25 - capacitron_grad_clip: float = 5.0 - - def check_values( - self, - ): - """Check config fields""" - c = asdict(self) - super().check_values() - check_argument("capacitron_capacity", c, restricted=True, min_val=10, max_val=500) - check_argument("capacitron_VAE_embedding_dim", c, restricted=True, min_val=16, max_val=1024) - check_argument("capacitron_use_speaker_embedding", c, restricted=False) - check_argument("capacitron_text_summary_embedding_dim", c, restricted=False, min_val=16, max_val=512) - check_argument("capacitron_VAE_loss_alpha", c, restricted=False) - check_argument("capacitron_grad_clip", c, restricted=False) - - -@dataclass -class CharactersConfig(Coqpit): - """Defines arguments for the `BaseCharacters` or `BaseVocabulary` and their subclasses. - - Args: - characters_class (str): - Defines the class of the characters used. If None, we pick ```Phonemes``` or ```Graphemes``` based on - the configuration. Defaults to None. - - vocab_dict (dict): - Defines the vocabulary dictionary used to encode the characters. Defaults to None. - - pad (str): - characters in place of empty padding. Defaults to None. - - eos (str): - characters showing the end of a sentence. Defaults to None. - - bos (str): - characters showing the beginning of a sentence. Defaults to None. - - blank (str): - Optional character used between characters by some models for better prosody. Defaults to `_blank`. - - characters (str): - character set used by the model. Characters not in this list are ignored when converting input text to - a list of sequence IDs. Defaults to None. - - punctuations (str): - characters considered as punctuation as parsing the input sentence. Defaults to None. - - phonemes (str): - characters considered as parsing phonemes. This is only for backwards compat. Use `characters` for new - models. Defaults to None. - - is_unique (bool): - remove any duplicate characters in the character lists. It is a bandaid for compatibility with the old - models trained with character lists with duplicates. Defaults to True. - - is_sorted (bool): - Sort the characters in alphabetical order. Defaults to True. - """ - - characters_class: str = None - - # using BaseVocabulary - vocab_dict: Dict = None - - # using on BaseCharacters - pad: str = None - eos: str = None - bos: str = None - blank: str = None - characters: str = None - punctuations: str = None - phonemes: str = None - is_unique: bool = True # for backwards compatibility of models trained with char sets with duplicates - is_sorted: bool = True - - -@dataclass -class BaseTTSConfig(BaseTrainingConfig): - """Shared parameters among all the tts models. - - Args: - - audio (BaseAudioConfig): - Audio processor config object instance. - - use_phonemes (bool): - enable / disable phoneme use. - - phonemizer (str): - Name of the phonemizer to use. If set None, the phonemizer will be selected by `phoneme_language`. - Defaults to None. - - phoneme_language (str): - Language code for the phonemizer. You can check the list of supported languages by running - `python TTS/tts/utils/text/phonemizers/__init__.py`. Defaults to None. - - compute_input_seq_cache (bool): - enable / disable precomputation of the phoneme sequences. At the expense of some delay at the beginning of - the training, It allows faster data loader time and precise limitation with `max_seq_len` and - `min_seq_len`. - - text_cleaner (str): - Name of the text cleaner used for cleaning and formatting transcripts. - - enable_eos_bos_chars (bool): - enable / disable the use of eos and bos characters. - - test_senteces_file (str): - Path to a txt file that has sentences used at test time. The file must have a sentence per line. - - phoneme_cache_path (str): - Path to the output folder caching the computed phonemes for each sample. - - characters (CharactersConfig): - Instance of a CharactersConfig class. - - batch_group_size (int): - Size of the batch groups used for bucketing. By default, the dataloader orders samples by the sequence - length for a more efficient and stable training. If `batch_group_size > 1` then it performs bucketing to - prevent using the same batches for each epoch. - - loss_masking (bool): - enable / disable masking loss values against padded segments of samples in a batch. - - min_text_len (int): - Minimum length of input text to be used. All shorter samples will be ignored. Defaults to 0. - - max_text_len (int): - Maximum length of input text to be used. All longer samples will be ignored. Defaults to float("inf"). - - min_audio_len (int): - Minimum length of input audio to be used. All shorter samples will be ignored. Defaults to 0. - - max_audio_len (int): - Maximum length of input audio to be used. All longer samples will be ignored. The maximum length in the - dataset defines the VRAM used in the training. Hence, pay attention to this value if you encounter an - OOM error in training. Defaults to float("inf"). - - compute_f0 (int): - (Not in use yet). - - compute_energy (int): - (Not in use yet). - - compute_linear_spec (bool): - If True data loader computes and returns linear spectrograms alongside the other data. - - precompute_num_workers (int): - Number of workers to precompute features. Defaults to 0. - - use_noise_augment (bool): - Augment the input audio with random noise. - - start_by_longest (bool): - If True, the data loader will start loading the longest batch first. It is useful for checking OOM issues. - Defaults to False. - - shuffle (bool): - If True, the data loader will shuffle the dataset when there is not sampler defined. Defaults to True. - - drop_last (bool): - If True, the data loader will drop the last batch if it is not complete. It helps to prevent - issues that emerge from the partial batch statistics. Defaults to True. - - add_blank (bool): - Add blank characters between each other two characters. It improves performance for some models at expense - of slower run-time due to the longer input sequence. - - datasets (List[BaseDatasetConfig]): - List of datasets used for training. If multiple datasets are provided, they are merged and used together - for training. - - optimizer (str): - Optimizer used for the training. Set one from `torch.optim.Optimizer` or `TTS.utils.training`. - Defaults to ``. - - optimizer_params (dict): - Optimizer kwargs. Defaults to `{"betas": [0.8, 0.99], "weight_decay": 0.0}` - - lr_scheduler (str): - Learning rate scheduler for the training. Use one from `torch.optim.Scheduler` schedulers or - `TTS.utils.training`. Defaults to ``. - - lr_scheduler_params (dict): - Parameters for the generator learning rate scheduler. Defaults to `{"warmup": 4000}`. - - test_sentences (List[str]): - List of sentences to be used at testing. Defaults to '[]' - - eval_split_max_size (int): - Number maximum of samples to be used for evaluation in proportion split. Defaults to None (Disabled). - - eval_split_size (float): - If between 0.0 and 1.0 represents the proportion of the dataset to include in the evaluation set. - If > 1, represents the absolute number of evaluation samples. Defaults to 0.01 (1%). - - use_speaker_weighted_sampler (bool): - Enable / Disable the batch balancer by speaker. Defaults to ```False```. - - speaker_weighted_sampler_alpha (float): - Number that control the influence of the speaker sampler weights. Defaults to ```1.0```. - - use_language_weighted_sampler (bool): - Enable / Disable the batch balancer by language. Defaults to ```False```. - - language_weighted_sampler_alpha (float): - Number that control the influence of the language sampler weights. Defaults to ```1.0```. - - use_length_weighted_sampler (bool): - Enable / Disable the batch balancer by audio length. If enabled the dataset will be divided - into 10 buckets considering the min and max audio of the dataset. The sampler weights will be - computed forcing to have the same quantity of data for each bucket in each training batch. Defaults to ```False```. - - length_weighted_sampler_alpha (float): - Number that control the influence of the length sampler weights. Defaults to ```1.0```. - """ - - audio: BaseAudioConfig = field(default_factory=BaseAudioConfig) - # phoneme settings - use_phonemes: bool = False - phonemizer: str = None - phoneme_language: str = None - compute_input_seq_cache: bool = False - text_cleaner: str = None - enable_eos_bos_chars: bool = False - test_sentences_file: str = "" - phoneme_cache_path: str = None - # vocabulary parameters - characters: CharactersConfig = None - add_blank: bool = False - # training params - batch_group_size: int = 0 - loss_masking: bool = None - # dataloading - min_audio_len: int = 1 - max_audio_len: int = float("inf") - min_text_len: int = 1 - max_text_len: int = float("inf") - compute_f0: bool = False - compute_energy: bool = False - compute_linear_spec: bool = False - precompute_num_workers: int = 0 - use_noise_augment: bool = False - start_by_longest: bool = False - shuffle: bool = False - drop_last: bool = False - # dataset - datasets: List[BaseDatasetConfig] = field(default_factory=lambda: [BaseDatasetConfig()]) - # optimizer - optimizer: str = "radam" - optimizer_params: dict = None - # scheduler - lr_scheduler: str = None - lr_scheduler_params: dict = field(default_factory=lambda: {}) - # testing - test_sentences: List[str] = field(default_factory=lambda: []) - # evaluation - eval_split_max_size: int = None - eval_split_size: float = 0.01 - # weighted samplers - use_speaker_weighted_sampler: bool = False - speaker_weighted_sampler_alpha: float = 1.0 - use_language_weighted_sampler: bool = False - language_weighted_sampler_alpha: float = 1.0 - use_length_weighted_sampler: bool = False - length_weighted_sampler_alpha: float = 1.0 diff --git a/TTS/TTS/tts/configs/speedy_speech_config.py b/TTS/TTS/tts/configs/speedy_speech_config.py deleted file mode 100644 index bf8517dfc478a135978df19f3126313a616c14c2..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/speedy_speech_config.py +++ /dev/null @@ -1,194 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.forward_tts import ForwardTTSArgs - - -@dataclass -class SpeedySpeechConfig(BaseTTSConfig): - """Configure `ForwardTTS` as SpeedySpeech model. - - Example: - - >>> from TTS.tts.configs.speedy_speech_config import SpeedySpeechConfig - >>> config = SpeedySpeechConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `speedy_speech`. - - base_model (str): - Name of the base model being configured as this model so that 🐸 TTS knows it needs to initiate - the base model rather than searching for the `model` implementation. Defaults to `forward_tts`. - - model_args (Coqpit): - Model class arguments. Check `FastPitchArgs` for more details. Defaults to `FastPitchArgs()`. - - data_dep_init_steps (int): - Number of steps used for computing normalization parameters at the beginning of the training. GlowTTS uses - Activation Normalization that pre-computes normalization stats at the beginning and use the same values - for the rest. Defaults to 10. - - speakers_file (str): - Path to the file containing the list of speakers. Needed at inference for loading matching speaker ids to - speaker names. Defaults to `None`. - - use_speaker_embedding (bool): - enable / disable using speaker embeddings for multi-speaker models. If set True, the model is - in the multi-speaker mode. Defaults to False. - - use_d_vector_file (bool): - enable /disable using external speaker embeddings in place of the learned embeddings. Defaults to False. - - d_vector_file (str): - Path to the file including pre-computed speaker embeddings. Defaults to None. - - d_vector_dim (int): - Dimension of the external speaker embeddings. Defaults to 0. - - optimizer (str): - Name of the model optimizer. Defaults to `RAdam`. - - optimizer_params (dict): - Arguments of the model optimizer. Defaults to `{"betas": [0.9, 0.998], "weight_decay": 1e-6}`. - - lr_scheduler (str): - Name of the learning rate scheduler. Defaults to `Noam`. - - lr_scheduler_params (dict): - Arguments of the learning rate scheduler. Defaults to `{"warmup_steps": 4000}`. - - lr (float): - Initial learning rate. Defaults to `1e-3`. - - grad_clip (float): - Gradient norm clipping value. Defaults to `5.0`. - - spec_loss_type (str): - Type of the spectrogram loss. Check `ForwardTTSLoss` for possible values. Defaults to `l1`. - - duration_loss_type (str): - Type of the duration loss. Check `ForwardTTSLoss` for possible values. Defaults to `huber`. - - use_ssim_loss (bool): - Enable/disable the use of SSIM (Structural Similarity) loss. Defaults to True. - - wd (float): - Weight decay coefficient. Defaults to `1e-7`. - - ssim_loss_alpha (float): - Weight for the SSIM loss. If set 0, disables the SSIM loss. Defaults to 1.0. - - dur_loss_alpha (float): - Weight for the duration predictor's loss. If set 0, disables the huber loss. Defaults to 1.0. - - spec_loss_alpha (float): - Weight for the L1 spectrogram loss. If set 0, disables the L1 loss. Defaults to 1.0. - - binary_loss_alpha (float): - Weight for the binary loss. If set 0, disables the binary loss. Defaults to 1.0. - - binary_loss_warmup_epochs (float): - Number of epochs to gradually increase the binary loss impact. Defaults to 150. - - min_seq_len (int): - Minimum input sequence length to be used at training. - - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage. - """ - - model: str = "speedy_speech" - base_model: str = "forward_tts" - - # set model args as SpeedySpeech - model_args: ForwardTTSArgs = field( - default_factory=lambda: ForwardTTSArgs( - use_pitch=False, - encoder_type="residual_conv_bn", - encoder_params={ - "kernel_size": 4, - "dilations": 4 * [1, 2, 4] + [1], - "num_conv_blocks": 2, - "num_res_blocks": 13, - }, - decoder_type="residual_conv_bn", - decoder_params={ - "kernel_size": 4, - "dilations": 4 * [1, 2, 4, 8] + [1], - "num_conv_blocks": 2, - "num_res_blocks": 17, - }, - out_channels=80, - hidden_channels=128, - positional_encoding=True, - detach_duration_predictor=True, - ) - ) - - # multi-speaker settings - num_speakers: int = 0 - speakers_file: str = None - use_speaker_embedding: bool = False - use_d_vector_file: bool = False - d_vector_file: str = False - d_vector_dim: int = 0 - - # optimizer parameters - optimizer: str = "Adam" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.9, 0.998], "weight_decay": 1e-6}) - lr_scheduler: str = "NoamLR" - lr_scheduler_params: dict = field(default_factory=lambda: {"warmup_steps": 4000}) - lr: float = 1e-4 - grad_clip: float = 5.0 - - # loss params - spec_loss_type: str = "l1" - duration_loss_type: str = "huber" - use_ssim_loss: bool = False - ssim_loss_alpha: float = 1.0 - dur_loss_alpha: float = 1.0 - spec_loss_alpha: float = 1.0 - aligner_loss_alpha: float = 1.0 - binary_align_loss_alpha: float = 0.3 - binary_loss_warmup_epochs: int = 150 - - # overrides - min_seq_len: int = 13 - max_seq_len: int = 200 - r: int = 1 # DO NOT CHANGE - - # dataset configs - compute_f0: bool = False - f0_cache_path: str = None - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "Be a voice, not an echo.", - "I'm sorry Dave. I'm afraid I can't do that.", - "This cake is great. It's so delicious and moist.", - "Prior to November 22, 1963.", - ] - ) - - def __post_init__(self): - # Pass multi-speaker parameters to the model args as `model.init_multispeaker()` looks for it there. - if self.num_speakers > 0: - self.model_args.num_speakers = self.num_speakers - - # speaker embedding settings - if self.use_speaker_embedding: - self.model_args.use_speaker_embedding = True - if self.speakers_file: - self.model_args.speakers_file = self.speakers_file - - # d-vector settings - if self.use_d_vector_file: - self.model_args.use_d_vector_file = True - if self.d_vector_dim is not None and self.d_vector_dim > 0: - self.model_args.d_vector_dim = self.d_vector_dim - if self.d_vector_file: - self.model_args.d_vector_file = self.d_vector_file diff --git a/TTS/TTS/tts/configs/tacotron2_config.py b/TTS/TTS/tts/configs/tacotron2_config.py deleted file mode 100644 index 95b65202218cf3aa0dd70c8d8cd55a3f913ed308..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/tacotron2_config.py +++ /dev/null @@ -1,21 +0,0 @@ -from dataclasses import dataclass - -from TTS.tts.configs.tacotron_config import TacotronConfig - - -@dataclass -class Tacotron2Config(TacotronConfig): - """Defines parameters for Tacotron2 based models. - - Example: - - >>> from TTS.tts.configs.tacotron2_config import Tacotron2Config - >>> config = Tacotron2Config() - - Check `TacotronConfig` for argument descriptions. - """ - - model: str = "tacotron2" - out_channels: int = 80 - encoder_in_features: int = 512 - decoder_in_features: int = 512 diff --git a/TTS/TTS/tts/configs/tacotron_config.py b/TTS/TTS/tts/configs/tacotron_config.py deleted file mode 100644 index 350b5ea99633569d6977851875d5d8d83175ac36..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/tacotron_config.py +++ /dev/null @@ -1,235 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig, CapacitronVAEConfig, GSTConfig - - -@dataclass -class TacotronConfig(BaseTTSConfig): - """Defines parameters for Tacotron based models. - - Example: - - >>> from TTS.tts.configs.tacotron_config import TacotronConfig - >>> config = TacotronConfig() - - Args: - model (str): - Model name used to select the right model class to initilize. Defaults to `Tacotron`. - use_gst (bool): - enable / disable the use of Global Style Token modules. Defaults to False. - gst (GSTConfig): - Instance of `GSTConfig` class. - gst_style_input (str): - Path to the wav file used at inference to set the speech style through GST. If `GST` is enabled and - this is not defined, the model uses a zero vector as an input. Defaults to None. - use_capacitron_vae (bool): - enable / disable the use of Capacitron modules. Defaults to False. - capacitron_vae (CapacitronConfig): - Instance of `CapacitronConfig` class. - num_chars (int): - Number of characters used by the model. It must be defined before initializing the model. Defaults to None. - num_speakers (int): - Number of speakers for multi-speaker models. Defaults to 1. - r (int): - Initial number of output frames that the decoder computed per iteration. Larger values makes training and inference - faster but reduces the quality of the output frames. This must be equal to the largest `r` value used in - `gradual_training` schedule. Defaults to 1. - gradual_training (List[List]): - Parameters for the gradual training schedule. It is in the form `[[a, b, c], [d ,e ,f] ..]` where `a` is - the step number to start using the rest of the values, `b` is the `r` value and `c` is the batch size. - If sets None, no gradual training is used. Defaults to None. - memory_size (int): - Defines the number of previous frames used by the Prenet. If set to < 0, then it uses only the last frame. - Defaults to -1. - prenet_type (str): - `original` or `bn`. `original` sets the default Prenet and `bn` uses Batch Normalization version of the - Prenet. Defaults to `original`. - prenet_dropout (bool): - enables / disables the use of dropout in the Prenet. Defaults to True. - prenet_dropout_at_inference (bool): - enable / disable the use of dropout in the Prenet at the inference time. Defaults to False. - stopnet (bool): - enable /disable the Stopnet that predicts the end of the decoder sequence. Defaults to True. - stopnet_pos_weight (float): - Weight that is applied to over-weight positive instances in the Stopnet loss. Use larger values with - datasets with longer sentences. Defaults to 0.2. - max_decoder_steps (int): - Max number of steps allowed for the decoder. Defaults to 50. - encoder_in_features (int): - Channels of encoder input and character embedding tensors. Defaults to 256. - decoder_in_features (int): - Channels of decoder input and encoder output tensors. Defaults to 256. - out_channels (int): - Channels of the final model output. It must match the spectragram size. Defaults to 80. - separate_stopnet (bool): - Use a distinct Stopnet which is trained separately from the rest of the model. Defaults to True. - attention_type (str): - attention type. Check ```TTS.tts.layers.attentions.init_attn```. Defaults to 'original'. - attention_heads (int): - Number of attention heads for GMM attention. Defaults to 5. - windowing (bool): - It especially useful at inference to keep attention alignment diagonal. Defaults to False. - use_forward_attn (bool): - It is only valid if ```attn_type``` is ```original```. Defaults to False. - forward_attn_mask (bool): - enable/disable extra masking over forward attention. It is useful at inference to prevent - possible attention failures. Defaults to False. - transition_agent (bool): - enable/disable transition agent in forward attention. Defaults to False. - location_attn (bool): - enable/disable location sensitive attention as in the original Tacotron2 paper. - It is only valid if ```attn_type``` is ```original```. Defaults to True. - bidirectional_decoder (bool): - enable/disable bidirectional decoding. Defaults to False. - double_decoder_consistency (bool): - enable/disable double decoder consistency. Defaults to False. - ddc_r (int): - reduction rate used by the coarse decoder when `double_decoder_consistency` is in use. Set this - as a multiple of the `r` value. Defaults to 6. - speakers_file (str): - Path to the speaker mapping file for the Speaker Manager. Defaults to None. - use_speaker_embedding (bool): - enable / disable using speaker embeddings for multi-speaker models. If set True, the model is - in the multi-speaker mode. Defaults to False. - use_d_vector_file (bool): - enable /disable using external speaker embeddings in place of the learned embeddings. Defaults to False. - d_vector_file (str): - Path to the file including pre-computed speaker embeddings. Defaults to None. - optimizer (str): - Optimizer used for the training. Set one from `torch.optim.Optimizer` or `TTS.utils.training`. - Defaults to `RAdam`. - optimizer_params (dict): - Optimizer kwargs. Defaults to `{"betas": [0.8, 0.99], "weight_decay": 0.0}` - lr_scheduler (str): - Learning rate scheduler for the training. Use one from `torch.optim.Scheduler` schedulers or - `TTS.utils.training`. Defaults to `NoamLR`. - lr_scheduler_params (dict): - Parameters for the generator learning rate scheduler. Defaults to `{"warmup": 4000}`. - lr (float): - Initial learning rate. Defaults to `1e-4`. - wd (float): - Weight decay coefficient. Defaults to `1e-6`. - grad_clip (float): - Gradient clipping threshold. Defaults to `5`. - seq_len_norm (bool): - enable / disable the sequnce length normalization in the loss functions. If set True, loss of a sample - is divided by the sequence length. Defaults to False. - loss_masking (bool): - enable / disable masking the paddings of the samples in loss computation. Defaults to True. - decoder_loss_alpha (float): - Weight for the decoder loss of the Tacotron model. If set less than or equal to zero, it disables the - corresponding loss function. Defaults to 0.25 - postnet_loss_alpha (float): - Weight for the postnet loss of the Tacotron model. If set less than or equal to zero, it disables the - corresponding loss function. Defaults to 0.25 - postnet_diff_spec_alpha (float): - Weight for the postnet differential loss of the Tacotron model. If set less than or equal to zero, it disables the - corresponding loss function. Defaults to 0.25 - decoder_diff_spec_alpha (float): - - Weight for the decoder differential loss of the Tacotron model. If set less than or equal to zero, it disables the - corresponding loss function. Defaults to 0.25 - decoder_ssim_alpha (float): - Weight for the decoder SSIM loss of the Tacotron model. If set less than or equal to zero, it disables the - corresponding loss function. Defaults to 0.25 - postnet_ssim_alpha (float): - Weight for the postnet SSIM loss of the Tacotron model. If set less than or equal to zero, it disables the - corresponding loss function. Defaults to 0.25 - ga_alpha (float): - Weight for the guided attention loss. If set less than or equal to zero, it disables the corresponding loss - function. Defaults to 5. - """ - - model: str = "tacotron" - # model_params: TacotronArgs = field(default_factory=lambda: TacotronArgs()) - use_gst: bool = False - gst: GSTConfig = None - gst_style_input: str = None - - use_capacitron_vae: bool = False - capacitron_vae: CapacitronVAEConfig = None - - # model specific params - num_speakers: int = 1 - num_chars: int = 0 - r: int = 2 - gradual_training: List[List[int]] = None - memory_size: int = -1 - prenet_type: str = "original" - prenet_dropout: bool = True - prenet_dropout_at_inference: bool = False - stopnet: bool = True - separate_stopnet: bool = True - stopnet_pos_weight: float = 0.2 - max_decoder_steps: int = 10000 - encoder_in_features: int = 256 - decoder_in_features: int = 256 - decoder_output_dim: int = 80 - out_channels: int = 513 - - # attention layers - attention_type: str = "original" - attention_heads: int = None - attention_norm: str = "sigmoid" - attention_win: bool = False - windowing: bool = False - use_forward_attn: bool = False - forward_attn_mask: bool = False - transition_agent: bool = False - location_attn: bool = True - - # advance methods - bidirectional_decoder: bool = False - double_decoder_consistency: bool = False - ddc_r: int = 6 - - # multi-speaker settings - speakers_file: str = None - use_speaker_embedding: bool = False - speaker_embedding_dim: int = 512 - use_d_vector_file: bool = False - d_vector_file: str = False - d_vector_dim: int = None - - # optimizer parameters - optimizer: str = "RAdam" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.9, 0.998], "weight_decay": 1e-6}) - lr_scheduler: str = "NoamLR" - lr_scheduler_params: dict = field(default_factory=lambda: {"warmup_steps": 4000}) - lr: float = 1e-4 - grad_clip: float = 5.0 - seq_len_norm: bool = False - loss_masking: bool = True - - # loss params - decoder_loss_alpha: float = 0.25 - postnet_loss_alpha: float = 0.25 - postnet_diff_spec_alpha: float = 0.25 - decoder_diff_spec_alpha: float = 0.25 - decoder_ssim_alpha: float = 0.25 - postnet_ssim_alpha: float = 0.25 - ga_alpha: float = 5.0 - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "Be a voice, not an echo.", - "I'm sorry Dave. I'm afraid I can't do that.", - "This cake is great. It's so delicious and moist.", - "Prior to November 22, 1963.", - ] - ) - - def check_values(self): - if self.gradual_training: - assert ( - self.gradual_training[0][1] == self.r - ), f"[!] the first scheduled gradual training `r` must be equal to the model's `r` value. {self.gradual_training[0][1]} vs {self.r}" - if self.model == "tacotron" and self.audio is not None: - assert self.out_channels == ( - self.audio.fft_size // 2 + 1 - ), f"{self.out_channels} vs {self.audio.fft_size // 2 + 1}" - if self.model == "tacotron2" and self.audio is not None: - assert self.out_channels == self.audio.num_mels diff --git a/TTS/TTS/tts/configs/tortoise_config.py b/TTS/TTS/tts/configs/tortoise_config.py deleted file mode 100644 index d60e43d71280bfa085988e31a52acfeef015c5f0..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/tortoise_config.py +++ /dev/null @@ -1,87 +0,0 @@ -from dataclasses import dataclass, field - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.tortoise import TortoiseArgs, TortoiseAudioConfig - - -@dataclass -class TortoiseConfig(BaseTTSConfig): - """Defines parameters for Tortoise TTS model. - - Args: - model (str): - Model name. Do not change unless you know what you are doing. - - model_args (TortoiseArgs): - Model architecture arguments. Defaults to `TortoiseArgs()`. - - audio (TortoiseAudioConfig): - Audio processing configuration. Defaults to `TortoiseAudioConfig()`. - - model_dir (str): - Path to the folder that has all the Tortoise models. Defaults to None. - - temperature (float): - Temperature for the autoregressive model inference. Larger values makes predictions more creative sacrificing stability. Defaults to `0.2`. - - length_penalty (float): - Exponential penalty to the length that is used with beam-based generation. It is applied as an exponent to the sequence length, - which in turn is used to divide the score of the sequence. Since the score is the log likelihood of the sequence (i.e. negative), - length_penalty > 0.0 promotes longer sequences, while length_penalty < 0.0 encourages shorter sequences. - - reperation_penalty (float): - The parameter for repetition penalty. 1.0 means no penalty. Defaults to `2.0`. - - top_p (float): - If set to float < 1, only the smallest set of most probable tokens with probabilities that add up to top_p or higher are kept for generation. - Defaults to `0.8`. - - cond_free_k (float): - Knob that determines how to balance the conditioning free signal with the conditioning-present signal. [0,inf]. - As cond_free_k increases, the output becomes dominated by the conditioning-free signal. - Formula is: output=cond_present_output*(cond_free_k+1)-cond_absenct_output*cond_free_k. Defaults to `2.0`. - - diffusion_temperature (float): - Controls the variance of the noise fed into the diffusion model. [0,1]. Values at 0 - are the "mean" prediction of the diffusion network and will sound bland and smeared. - Defaults to `1.0`. - - num_autoregressive_samples (int): - Number of samples taken from the autoregressive model, all of which are filtered using CLVP. - As Tortoise is a probabilistic model, more samples means a higher probability of creating something "great". - Defaults to `16`. - - diffusion_iterations (int): - Number of diffusion steps to perform. [0,4000]. More steps means the network has more chances to iteratively refine - the output, which should theoretically mean a higher quality output. Generally a value above 250 is not noticeably better, - however. Defaults to `30`. - - sampler (str): - Diffusion sampler to be used. `ddim` or `dpm++2m`. Defaults to `ddim`. - Note: - Check :class:`TTS.tts.configs.shared_configs.BaseTTSConfig` for the inherited parameters. - - Example: - - >>> from TTS.tts.configs.tortoise_config import TortoiseConfig - >>> config = TortoiseConfig() - """ - - model: str = "tortoise" - # model specific params - model_args: TortoiseArgs = field(default_factory=TortoiseArgs) - audio: TortoiseAudioConfig = field(default_factory=TortoiseAudioConfig) - model_dir: str = None - - # settings - temperature: float = 0.2 - length_penalty: float = 1.0 - repetition_penalty: float = 2.0 - top_p: float = 0.8 - cond_free_k: float = 2.0 - diffusion_temperature: float = 1.0 - - # inference params - num_autoregressive_samples: int = 16 - diffusion_iterations: int = 30 - sampler: str = "ddim" diff --git a/TTS/TTS/tts/configs/vits_config.py b/TTS/TTS/tts/configs/vits_config.py deleted file mode 100644 index 2d0242bf131a25d6b2cef7a297a3c32b283f908a..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/configs/vits_config.py +++ /dev/null @@ -1,176 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.vits import VitsArgs, VitsAudioConfig - - -@dataclass -class VitsConfig(BaseTTSConfig): - """Defines parameters for VITS End2End TTS model. - - Args: - model (str): - Model name. Do not change unless you know what you are doing. - - model_args (VitsArgs): - Model architecture arguments. Defaults to `VitsArgs()`. - - audio (VitsAudioConfig): - Audio processing configuration. Defaults to `VitsAudioConfig()`. - - grad_clip (List): - Gradient clipping thresholds for each optimizer. Defaults to `[1000.0, 1000.0]`. - - lr_gen (float): - Initial learning rate for the generator. Defaults to 0.0002. - - lr_disc (float): - Initial learning rate for the discriminator. Defaults to 0.0002. - - lr_scheduler_gen (str): - Name of the learning rate scheduler for the generator. One of the `torch.optim.lr_scheduler.*`. Defaults to - `ExponentialLR`. - - lr_scheduler_gen_params (dict): - Parameters for the learning rate scheduler of the generator. Defaults to `{'gamma': 0.999875, "last_epoch":-1}`. - - lr_scheduler_disc (str): - Name of the learning rate scheduler for the discriminator. One of the `torch.optim.lr_scheduler.*`. Defaults to - `ExponentialLR`. - - lr_scheduler_disc_params (dict): - Parameters for the learning rate scheduler of the discriminator. Defaults to `{'gamma': 0.999875, "last_epoch":-1}`. - - scheduler_after_epoch (bool): - If true, step the schedulers after each epoch else after each step. Defaults to `False`. - - optimizer (str): - Name of the optimizer to use with both the generator and the discriminator networks. One of the - `torch.optim.*`. Defaults to `AdamW`. - - kl_loss_alpha (float): - Loss weight for KL loss. Defaults to 1.0. - - disc_loss_alpha (float): - Loss weight for the discriminator loss. Defaults to 1.0. - - gen_loss_alpha (float): - Loss weight for the generator loss. Defaults to 1.0. - - feat_loss_alpha (float): - Loss weight for the feature matching loss. Defaults to 1.0. - - mel_loss_alpha (float): - Loss weight for the mel loss. Defaults to 45.0. - - return_wav (bool): - If true, data loader returns the waveform as well as the other outputs. Do not change. Defaults to `True`. - - compute_linear_spec (bool): - If true, the linear spectrogram is computed and returned alongside the mel output. Do not change. Defaults to `True`. - - use_weighted_sampler (bool): - If true, use weighted sampler with bucketing for balancing samples between datasets used in training. Defaults to `False`. - - weighted_sampler_attrs (dict): - Key retuned by the formatter to be used for weighted sampler. For example `{"root_path": 2.0, "speaker_name": 1.0}` sets sample probabilities - by overweighting `root_path` by 2.0. Defaults to `{}`. - - weighted_sampler_multipliers (dict): - Weight each unique value of a key returned by the formatter for weighted sampling. - For example `{"root_path":{"/raid/datasets/libritts-clean-16khz-bwe-coqui_44khz/LibriTTS/train-clean-100/":1.0, "/raid/datasets/libritts-clean-16khz-bwe-coqui_44khz/LibriTTS/train-clean-360/": 0.5}`. - It will sample instances from `train-clean-100` 2 times more than `train-clean-360`. Defaults to `{}`. - - r (int): - Number of spectrogram frames to be generated at a time. Do not change. Defaults to `1`. - - add_blank (bool): - If true, a blank token is added in between every character. Defaults to `True`. - - test_sentences (List[List]): - List of sentences with speaker and language information to be used for testing. - - language_ids_file (str): - Path to the language ids file. - - use_language_embedding (bool): - If true, language embedding is used. Defaults to `False`. - - Note: - Check :class:`TTS.tts.configs.shared_configs.BaseTTSConfig` for the inherited parameters. - - Example: - - >>> from TTS.tts.configs.vits_config import VitsConfig - >>> config = VitsConfig() - """ - - model: str = "vits" - # model specific params - model_args: VitsArgs = field(default_factory=VitsArgs) - audio: VitsAudioConfig = field(default_factory=VitsAudioConfig) - - # optimizer - grad_clip: List[float] = field(default_factory=lambda: [1000, 1000]) - lr_gen: float = 0.0002 - lr_disc: float = 0.0002 - lr_scheduler_gen: str = "ExponentialLR" - lr_scheduler_gen_params: dict = field(default_factory=lambda: {"gamma": 0.999875, "last_epoch": -1}) - lr_scheduler_disc: str = "ExponentialLR" - lr_scheduler_disc_params: dict = field(default_factory=lambda: {"gamma": 0.999875, "last_epoch": -1}) - scheduler_after_epoch: bool = True - optimizer: str = "AdamW" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.8, 0.99], "eps": 1e-9, "weight_decay": 0.01}) - - # loss params - kl_loss_alpha: float = 1.0 - disc_loss_alpha: float = 1.0 - gen_loss_alpha: float = 1.0 - feat_loss_alpha: float = 1.0 - mel_loss_alpha: float = 45.0 - dur_loss_alpha: float = 1.0 - speaker_encoder_loss_alpha: float = 1.0 - - # data loader params - return_wav: bool = True - compute_linear_spec: bool = True - - # sampler params - use_weighted_sampler: bool = False # TODO: move it to the base config - weighted_sampler_attrs: dict = field(default_factory=lambda: {}) - weighted_sampler_multipliers: dict = field(default_factory=lambda: {}) - - # overrides - r: int = 1 # DO NOT CHANGE - add_blank: bool = True - - # testing - test_sentences: List[List] = field( - default_factory=lambda: [ - ["It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent."], - ["Be a voice, not an echo."], - ["I'm sorry Dave. I'm afraid I can't do that."], - ["This cake is great. It's so delicious and moist."], - ["Prior to November 22, 1963."], - ] - ) - - # multi-speaker settings - # use speaker embedding layer - num_speakers: int = 0 - use_speaker_embedding: bool = False - speakers_file: str = None - speaker_embedding_channels: int = 256 - language_ids_file: str = None - use_language_embedding: bool = False - - # use d-vectors - use_d_vector_file: bool = False - d_vector_file: List[str] = None - d_vector_dim: int = None - - def __post_init__(self): - for key, val in self.model_args.items(): - if hasattr(self, key): - self[key] = val diff --git a/TTS/TTS/tts/datasets/__init__.py b/TTS/TTS/tts/datasets/__init__.py deleted file mode 100644 index 192138561fdb4e85978fe8beb52eae2edf73888e..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/datasets/__init__.py +++ /dev/null @@ -1,181 +0,0 @@ -import os -import sys -from collections import Counter -from pathlib import Path -from typing import Callable, Dict, List, Tuple, Union - -import numpy as np - -from TTS.tts.datasets.dataset import * -from TTS.tts.datasets.formatters import * - - -def split_dataset(items, eval_split_max_size=None, eval_split_size=0.01): - """Split a dataset into train and eval. Consider speaker distribution in multi-speaker training. - - Args: - items (List[List]): - A list of samples. Each sample is a list of `[audio_path, text, speaker_id]`. - - eval_split_max_size (int): - Number maximum of samples to be used for evaluation in proportion split. Defaults to None (Disabled). - - eval_split_size (float): - If between 0.0 and 1.0 represents the proportion of the dataset to include in the evaluation set. - If > 1, represents the absolute number of evaluation samples. Defaults to 0.01 (1%). - """ - speakers = [item["speaker_name"] for item in items] - is_multi_speaker = len(set(speakers)) > 1 - if eval_split_size > 1: - eval_split_size = int(eval_split_size) - else: - if eval_split_max_size: - eval_split_size = min(eval_split_max_size, int(len(items) * eval_split_size)) - else: - eval_split_size = int(len(items) * eval_split_size) - - assert ( - eval_split_size > 0 - ), " [!] You do not have enough samples for the evaluation set. You can work around this setting the 'eval_split_size' parameter to a minimum of {}".format( - 1 / len(items) - ) - np.random.seed(0) - np.random.shuffle(items) - if is_multi_speaker: - items_eval = [] - speakers = [item["speaker_name"] for item in items] - speaker_counter = Counter(speakers) - while len(items_eval) < eval_split_size: - item_idx = np.random.randint(0, len(items)) - speaker_to_be_removed = items[item_idx]["speaker_name"] - if speaker_counter[speaker_to_be_removed] > 1: - items_eval.append(items[item_idx]) - speaker_counter[speaker_to_be_removed] -= 1 - del items[item_idx] - return items_eval, items - return items[:eval_split_size], items[eval_split_size:] - - -def add_extra_keys(metadata, language, dataset_name): - for item in metadata: - # add language name - item["language"] = language - # add unique audio name - relfilepath = os.path.splitext(os.path.relpath(item["audio_file"], item["root_path"]))[0] - audio_unique_name = f"{dataset_name}#{relfilepath}" - item["audio_unique_name"] = audio_unique_name - return metadata - - -def load_tts_samples( - datasets: Union[List[Dict], Dict], - eval_split=True, - formatter: Callable = None, - eval_split_max_size=None, - eval_split_size=0.01, -) -> Tuple[List[List], List[List]]: - """Parse the dataset from the datasets config, load the samples as a List and load the attention alignments if provided. - If `formatter` is not None, apply the formatter to the samples else pick the formatter from the available ones based - on the dataset name. - - Args: - datasets (List[Dict], Dict): A list of datasets or a single dataset dictionary. If multiple datasets are - in the list, they are all merged. - - eval_split (bool, optional): If true, create a evaluation split. If an eval split provided explicitly, generate - an eval split automatically. Defaults to True. - - formatter (Callable, optional): The preprocessing function to be applied to create the list of samples. It - must take the root_path and the meta_file name and return a list of samples in the format of - `[[text, audio_path, speaker_id], ...]]`. See the available formatters in `TTS.tts.dataset.formatter` as - example. Defaults to None. - - eval_split_max_size (int): - Number maximum of samples to be used for evaluation in proportion split. Defaults to None (Disabled). - - eval_split_size (float): - If between 0.0 and 1.0 represents the proportion of the dataset to include in the evaluation set. - If > 1, represents the absolute number of evaluation samples. Defaults to 0.01 (1%). - - Returns: - Tuple[List[List], List[List]: training and evaluation splits of the dataset. - """ - meta_data_train_all = [] - meta_data_eval_all = [] if eval_split else None - if not isinstance(datasets, list): - datasets = [datasets] - for dataset in datasets: - formatter_name = dataset["formatter"] - dataset_name = dataset["dataset_name"] - root_path = dataset["path"] - meta_file_train = dataset["meta_file_train"] - meta_file_val = dataset["meta_file_val"] - ignored_speakers = dataset["ignored_speakers"] - language = dataset["language"] - - # setup the right data processor - if formatter is None: - formatter = _get_formatter_by_name(formatter_name) - # load train set - meta_data_train = formatter(root_path, meta_file_train, ignored_speakers=ignored_speakers) - assert len(meta_data_train) > 0, f" [!] No training samples found in {root_path}/{meta_file_train}" - - meta_data_train = add_extra_keys(meta_data_train, language, dataset_name) - - print(f" | > Found {len(meta_data_train)} files in {Path(root_path).resolve()}") - # load evaluation split if set - if eval_split: - if meta_file_val: - meta_data_eval = formatter(root_path, meta_file_val, ignored_speakers=ignored_speakers) - meta_data_eval = add_extra_keys(meta_data_eval, language, dataset_name) - else: - eval_size_per_dataset = eval_split_max_size // len(datasets) if eval_split_max_size else None - meta_data_eval, meta_data_train = split_dataset(meta_data_train, eval_size_per_dataset, eval_split_size) - meta_data_eval_all += meta_data_eval - meta_data_train_all += meta_data_train - # load attention masks for the duration predictor training - if dataset.meta_file_attn_mask: - meta_data = dict(load_attention_mask_meta_data(dataset["meta_file_attn_mask"])) - for idx, ins in enumerate(meta_data_train_all): - attn_file = meta_data[ins["audio_file"]].strip() - meta_data_train_all[idx].update({"alignment_file": attn_file}) - if meta_data_eval_all: - for idx, ins in enumerate(meta_data_eval_all): - attn_file = meta_data[ins["audio_file"]].strip() - meta_data_eval_all[idx].update({"alignment_file": attn_file}) - # set none for the next iter - formatter = None - return meta_data_train_all, meta_data_eval_all - - -def load_attention_mask_meta_data(metafile_path): - """Load meta data file created by compute_attention_masks.py""" - with open(metafile_path, "r", encoding="utf-8") as f: - lines = f.readlines() - - meta_data = [] - for line in lines: - wav_file, attn_file = line.split("|") - meta_data.append([wav_file, attn_file]) - return meta_data - - -def _get_formatter_by_name(name): - """Returns the respective preprocessing function.""" - thismodule = sys.modules[__name__] - return getattr(thismodule, name.lower()) - - -def find_unique_chars(data_samples, verbose=True): - texts = "".join(item[0] for item in data_samples) - chars = set(texts) - lower_chars = filter(lambda c: c.islower(), chars) - chars_force_lower = [c.lower() for c in chars] - chars_force_lower = set(chars_force_lower) - - if verbose: - print(f" > Number of unique characters: {len(chars)}") - print(f" > Unique characters: {''.join(sorted(chars))}") - print(f" > Unique lower characters: {''.join(sorted(lower_chars))}") - print(f" > Unique all forced to lower characters: {''.join(sorted(chars_force_lower))}") - return chars_force_lower diff --git a/TTS/TTS/tts/datasets/dataset.py b/TTS/TTS/tts/datasets/dataset.py deleted file mode 100644 index c673c963b65398b624688b630962efa0baf71732..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/datasets/dataset.py +++ /dev/null @@ -1,962 +0,0 @@ -import base64 -import collections -import os -import random -from typing import Dict, List, Union - -import numpy as np -import torch -import tqdm -from torch.utils.data import Dataset - -from TTS.tts.utils.data import prepare_data, prepare_stop_target, prepare_tensor -from TTS.utils.audio import AudioProcessor -from TTS.utils.audio.numpy_transforms import compute_energy as calculate_energy - -# to prevent too many open files error as suggested here -# https://github.com/pytorch/pytorch/issues/11201#issuecomment-421146936 -torch.multiprocessing.set_sharing_strategy("file_system") - - -def _parse_sample(item): - language_name = None - attn_file = None - if len(item) == 5: - text, wav_file, speaker_name, language_name, attn_file = item - elif len(item) == 4: - text, wav_file, speaker_name, language_name = item - elif len(item) == 3: - text, wav_file, speaker_name = item - else: - raise ValueError(" [!] Dataset cannot parse the sample.") - return text, wav_file, speaker_name, language_name, attn_file - - -def noise_augment_audio(wav): - return wav + (1.0 / 32768.0) * np.random.rand(*wav.shape) - - -def string2filename(string): - # generate a safe and reversible filename based on a string - filename = base64.urlsafe_b64encode(string.encode("utf-8")).decode("utf-8", "ignore") - return filename - - -class TTSDataset(Dataset): - def __init__( - self, - outputs_per_step: int = 1, - compute_linear_spec: bool = False, - ap: AudioProcessor = None, - samples: List[Dict] = None, - tokenizer: "TTSTokenizer" = None, - compute_f0: bool = False, - compute_energy: bool = False, - f0_cache_path: str = None, - energy_cache_path: str = None, - return_wav: bool = False, - batch_group_size: int = 0, - min_text_len: int = 0, - max_text_len: int = float("inf"), - min_audio_len: int = 0, - max_audio_len: int = float("inf"), - phoneme_cache_path: str = None, - precompute_num_workers: int = 0, - speaker_id_mapping: Dict = None, - d_vector_mapping: Dict = None, - language_id_mapping: Dict = None, - use_noise_augment: bool = False, - start_by_longest: bool = False, - verbose: bool = False, - ): - """Generic 📂 data loader for `tts` models. It is configurable for different outputs and needs. - - If you need something different, you can subclass and override. - - Args: - outputs_per_step (int): Number of time frames predicted per step. - - compute_linear_spec (bool): compute linear spectrogram if True. - - ap (TTS.tts.utils.AudioProcessor): Audio processor object. - - samples (list): List of dataset samples. - - tokenizer (TTSTokenizer): tokenizer to convert text to sequence IDs. If None init internally else - use the given. Defaults to None. - - compute_f0 (bool): compute f0 if True. Defaults to False. - - compute_energy (bool): compute energy if True. Defaults to False. - - f0_cache_path (str): Path to store f0 cache. Defaults to None. - - energy_cache_path (str): Path to store energy cache. Defaults to None. - - return_wav (bool): Return the waveform of the sample. Defaults to False. - - batch_group_size (int): Range of batch randomization after sorting - sequences by length. It shuffles each batch with bucketing to gather similar lenght sequences in a - batch. Set 0 to disable. Defaults to 0. - - min_text_len (int): Minimum length of input text to be used. All shorter samples will be ignored. - Defaults to 0. - - max_text_len (int): Maximum length of input text to be used. All longer samples will be ignored. - Defaults to float("inf"). - - min_audio_len (int): Minimum length of input audio to be used. All shorter samples will be ignored. - Defaults to 0. - - max_audio_len (int): Maximum length of input audio to be used. All longer samples will be ignored. - The maximum length in the dataset defines the VRAM used in the training. Hence, pay attention to - this value if you encounter an OOM error in training. Defaults to float("inf"). - - phoneme_cache_path (str): Path to cache computed phonemes. It writes phonemes of each sample to a - separate file. Defaults to None. - - precompute_num_workers (int): Number of workers to precompute features. Defaults to 0. - - speaker_id_mapping (dict): Mapping of speaker names to IDs used to compute embedding vectors by the - embedding layer. Defaults to None. - - d_vector_mapping (dict): Mapping of wav files to computed d-vectors. Defaults to None. - - use_noise_augment (bool): Enable adding random noise to wav for augmentation. Defaults to False. - - start_by_longest (bool): Start by longest sequence. It is especially useful to check OOM. Defaults to False. - - verbose (bool): Print diagnostic information. Defaults to false. - """ - super().__init__() - self.batch_group_size = batch_group_size - self._samples = samples - self.outputs_per_step = outputs_per_step - self.compute_linear_spec = compute_linear_spec - self.return_wav = return_wav - self.compute_f0 = compute_f0 - self.compute_energy = compute_energy - self.f0_cache_path = f0_cache_path - self.energy_cache_path = energy_cache_path - self.min_audio_len = min_audio_len - self.max_audio_len = max_audio_len - self.min_text_len = min_text_len - self.max_text_len = max_text_len - self.ap = ap - self.phoneme_cache_path = phoneme_cache_path - self.speaker_id_mapping = speaker_id_mapping - self.d_vector_mapping = d_vector_mapping - self.language_id_mapping = language_id_mapping - self.use_noise_augment = use_noise_augment - self.start_by_longest = start_by_longest - - self.verbose = verbose - self.rescue_item_idx = 1 - self.pitch_computed = False - self.tokenizer = tokenizer - - if self.tokenizer.use_phonemes: - self.phoneme_dataset = PhonemeDataset( - self.samples, self.tokenizer, phoneme_cache_path, precompute_num_workers=precompute_num_workers - ) - - if compute_f0: - self.f0_dataset = F0Dataset( - self.samples, self.ap, cache_path=f0_cache_path, precompute_num_workers=precompute_num_workers - ) - if compute_energy: - self.energy_dataset = EnergyDataset( - self.samples, self.ap, cache_path=energy_cache_path, precompute_num_workers=precompute_num_workers - ) - if self.verbose: - self.print_logs() - - @property - def lengths(self): - lens = [] - for item in self.samples: - _, wav_file, *_ = _parse_sample(item) - audio_len = os.path.getsize(wav_file) / 16 * 8 # assuming 16bit audio - lens.append(audio_len) - return lens - - @property - def samples(self): - return self._samples - - @samples.setter - def samples(self, new_samples): - self._samples = new_samples - if hasattr(self, "f0_dataset"): - self.f0_dataset.samples = new_samples - if hasattr(self, "energy_dataset"): - self.energy_dataset.samples = new_samples - if hasattr(self, "phoneme_dataset"): - self.phoneme_dataset.samples = new_samples - - def __len__(self): - return len(self.samples) - - def __getitem__(self, idx): - return self.load_data(idx) - - def print_logs(self, level: int = 0) -> None: - indent = "\t" * level - print("\n") - print(f"{indent}> DataLoader initialization") - print(f"{indent}| > Tokenizer:") - self.tokenizer.print_logs(level + 1) - print(f"{indent}| > Number of instances : {len(self.samples)}") - - def load_wav(self, filename): - waveform = self.ap.load_wav(filename) - assert waveform.size > 0 - return waveform - - def get_phonemes(self, idx, text): - out_dict = self.phoneme_dataset[idx] - assert text == out_dict["text"], f"{text} != {out_dict['text']}" - assert len(out_dict["token_ids"]) > 0 - return out_dict - - def get_f0(self, idx): - out_dict = self.f0_dataset[idx] - item = self.samples[idx] - assert item["audio_unique_name"] == out_dict["audio_unique_name"] - return out_dict - - def get_energy(self, idx): - out_dict = self.energy_dataset[idx] - item = self.samples[idx] - assert item["audio_unique_name"] == out_dict["audio_unique_name"] - return out_dict - - @staticmethod - def get_attn_mask(attn_file): - return np.load(attn_file) - - def get_token_ids(self, idx, text): - if self.tokenizer.use_phonemes: - token_ids = self.get_phonemes(idx, text)["token_ids"] - else: - token_ids = self.tokenizer.text_to_ids(text) - return np.array(token_ids, dtype=np.int32) - - def load_data(self, idx): - item = self.samples[idx] - - raw_text = item["text"] - - wav = np.asarray(self.load_wav(item["audio_file"]), dtype=np.float32) - - # apply noise for augmentation - if self.use_noise_augment: - wav = noise_augment_audio(wav) - - # get token ids - token_ids = self.get_token_ids(idx, item["text"]) - - # get pre-computed attention maps - attn = None - if "alignment_file" in item: - attn = self.get_attn_mask(item["alignment_file"]) - - # after phonemization the text length may change - # this is a shareful 🤭 hack to prevent longer phonemes - # TODO: find a better fix - if len(token_ids) > self.max_text_len or len(wav) < self.min_audio_len: - self.rescue_item_idx += 1 - return self.load_data(self.rescue_item_idx) - - # get f0 values - f0 = None - if self.compute_f0: - f0 = self.get_f0(idx)["f0"] - energy = None - if self.compute_energy: - energy = self.get_energy(idx)["energy"] - - sample = { - "raw_text": raw_text, - "token_ids": token_ids, - "wav": wav, - "pitch": f0, - "energy": energy, - "attn": attn, - "item_idx": item["audio_file"], - "speaker_name": item["speaker_name"], - "language_name": item["language"], - "wav_file_name": os.path.basename(item["audio_file"]), - "audio_unique_name": item["audio_unique_name"], - } - return sample - - @staticmethod - def _compute_lengths(samples): - new_samples = [] - for item in samples: - audio_length = os.path.getsize(item["audio_file"]) / 16 * 8 # assuming 16bit audio - text_lenght = len(item["text"]) - item["audio_length"] = audio_length - item["text_length"] = text_lenght - new_samples += [item] - return new_samples - - @staticmethod - def filter_by_length(lengths: List[int], min_len: int, max_len: int): - idxs = np.argsort(lengths) # ascending order - ignore_idx = [] - keep_idx = [] - for idx in idxs: - length = lengths[idx] - if length < min_len or length > max_len: - ignore_idx.append(idx) - else: - keep_idx.append(idx) - return ignore_idx, keep_idx - - @staticmethod - def sort_by_length(samples: List[List]): - audio_lengths = [s["audio_length"] for s in samples] - idxs = np.argsort(audio_lengths) # ascending order - return idxs - - @staticmethod - def create_buckets(samples, batch_group_size: int): - assert batch_group_size > 0 - for i in range(len(samples) // batch_group_size): - offset = i * batch_group_size - end_offset = offset + batch_group_size - temp_items = samples[offset:end_offset] - random.shuffle(temp_items) - samples[offset:end_offset] = temp_items - return samples - - @staticmethod - def _select_samples_by_idx(idxs, samples): - samples_new = [] - for idx in idxs: - samples_new.append(samples[idx]) - return samples_new - - def preprocess_samples(self): - r"""Sort `items` based on text length or audio length in ascending order. Filter out samples out or the length - range. - """ - samples = self._compute_lengths(self.samples) - - # sort items based on the sequence length in ascending order - text_lengths = [i["text_length"] for i in samples] - audio_lengths = [i["audio_length"] for i in samples] - text_ignore_idx, text_keep_idx = self.filter_by_length(text_lengths, self.min_text_len, self.max_text_len) - audio_ignore_idx, audio_keep_idx = self.filter_by_length(audio_lengths, self.min_audio_len, self.max_audio_len) - keep_idx = list(set(audio_keep_idx) & set(text_keep_idx)) - ignore_idx = list(set(audio_ignore_idx) | set(text_ignore_idx)) - - samples = self._select_samples_by_idx(keep_idx, samples) - - sorted_idxs = self.sort_by_length(samples) - - if self.start_by_longest: - longest_idxs = sorted_idxs[-1] - sorted_idxs[-1] = sorted_idxs[0] - sorted_idxs[0] = longest_idxs - - samples = self._select_samples_by_idx(sorted_idxs, samples) - - if len(samples) == 0: - raise RuntimeError(" [!] No samples left") - - # shuffle batch groups - # create batches with similar length items - # the larger the `batch_group_size`, the higher the length variety in a batch. - if self.batch_group_size > 0: - samples = self.create_buckets(samples, self.batch_group_size) - - # update items to the new sorted items - audio_lengths = [s["audio_length"] for s in samples] - text_lengths = [s["text_length"] for s in samples] - self.samples = samples - - if self.verbose: - print(" | > Preprocessing samples") - print(" | > Max text length: {}".format(np.max(text_lengths))) - print(" | > Min text length: {}".format(np.min(text_lengths))) - print(" | > Avg text length: {}".format(np.mean(text_lengths))) - print(" | ") - print(" | > Max audio length: {}".format(np.max(audio_lengths))) - print(" | > Min audio length: {}".format(np.min(audio_lengths))) - print(" | > Avg audio length: {}".format(np.mean(audio_lengths))) - print(f" | > Num. instances discarded samples: {len(ignore_idx)}") - print(" | > Batch group size: {}.".format(self.batch_group_size)) - - @staticmethod - def _sort_batch(batch, text_lengths): - """Sort the batch by the input text length for RNN efficiency. - - Args: - batch (Dict): Batch returned by `__getitem__`. - text_lengths (List[int]): Lengths of the input character sequences. - """ - text_lengths, ids_sorted_decreasing = torch.sort(torch.LongTensor(text_lengths), dim=0, descending=True) - batch = [batch[idx] for idx in ids_sorted_decreasing] - return batch, text_lengths, ids_sorted_decreasing - - def collate_fn(self, batch): - r""" - Perform preprocessing and create a final data batch: - 1. Sort batch instances by text-length - 2. Convert Audio signal to features. - 3. PAD sequences wrt r. - 4. Load to Torch. - """ - - # Puts each data field into a tensor with outer dimension batch size - if isinstance(batch[0], collections.abc.Mapping): - token_ids_lengths = np.array([len(d["token_ids"]) for d in batch]) - - # sort items with text input length for RNN efficiency - batch, token_ids_lengths, ids_sorted_decreasing = self._sort_batch(batch, token_ids_lengths) - - # convert list of dicts to dict of lists - batch = {k: [dic[k] for dic in batch] for k in batch[0]} - - # get language ids from language names - if self.language_id_mapping is not None: - language_ids = [self.language_id_mapping[ln] for ln in batch["language_name"]] - else: - language_ids = None - # get pre-computed d-vectors - if self.d_vector_mapping is not None: - embedding_keys = list(batch["audio_unique_name"]) - d_vectors = [self.d_vector_mapping[w]["embedding"] for w in embedding_keys] - else: - d_vectors = None - - # get numerical speaker ids from speaker names - if self.speaker_id_mapping: - speaker_ids = [self.speaker_id_mapping[sn] for sn in batch["speaker_name"]] - else: - speaker_ids = None - # compute features - mel = [self.ap.melspectrogram(w).astype("float32") for w in batch["wav"]] - - mel_lengths = [m.shape[1] for m in mel] - - # lengths adjusted by the reduction factor - mel_lengths_adjusted = [ - m.shape[1] + (self.outputs_per_step - (m.shape[1] % self.outputs_per_step)) - if m.shape[1] % self.outputs_per_step - else m.shape[1] - for m in mel - ] - - # compute 'stop token' targets - stop_targets = [np.array([0.0] * (mel_len - 1) + [1.0]) for mel_len in mel_lengths] - - # PAD stop targets - stop_targets = prepare_stop_target(stop_targets, self.outputs_per_step) - - # PAD sequences with longest instance in the batch - token_ids = prepare_data(batch["token_ids"]).astype(np.int32) - - # PAD features with longest instance - mel = prepare_tensor(mel, self.outputs_per_step) - - # B x D x T --> B x T x D - mel = mel.transpose(0, 2, 1) - - # convert things to pytorch - token_ids_lengths = torch.LongTensor(token_ids_lengths) - token_ids = torch.LongTensor(token_ids) - mel = torch.FloatTensor(mel).contiguous() - mel_lengths = torch.LongTensor(mel_lengths) - stop_targets = torch.FloatTensor(stop_targets) - - # speaker vectors - if d_vectors is not None: - d_vectors = torch.FloatTensor(d_vectors) - - if speaker_ids is not None: - speaker_ids = torch.LongTensor(speaker_ids) - - if language_ids is not None: - language_ids = torch.LongTensor(language_ids) - - # compute linear spectrogram - linear = None - if self.compute_linear_spec: - linear = [self.ap.spectrogram(w).astype("float32") for w in batch["wav"]] - linear = prepare_tensor(linear, self.outputs_per_step) - linear = linear.transpose(0, 2, 1) - assert mel.shape[1] == linear.shape[1] - linear = torch.FloatTensor(linear).contiguous() - - # format waveforms - wav_padded = None - if self.return_wav: - wav_lengths = [w.shape[0] for w in batch["wav"]] - max_wav_len = max(mel_lengths_adjusted) * self.ap.hop_length - wav_lengths = torch.LongTensor(wav_lengths) - wav_padded = torch.zeros(len(batch["wav"]), 1, max_wav_len) - for i, w in enumerate(batch["wav"]): - mel_length = mel_lengths_adjusted[i] - w = np.pad(w, (0, self.ap.hop_length * self.outputs_per_step), mode="edge") - w = w[: mel_length * self.ap.hop_length] - wav_padded[i, :, : w.shape[0]] = torch.from_numpy(w) - wav_padded.transpose_(1, 2) - - # format F0 - if self.compute_f0: - pitch = prepare_data(batch["pitch"]) - assert mel.shape[1] == pitch.shape[1], f"[!] {mel.shape} vs {pitch.shape}" - pitch = torch.FloatTensor(pitch)[:, None, :].contiguous() # B x 1 xT - else: - pitch = None - # format energy - if self.compute_energy: - energy = prepare_data(batch["energy"]) - assert mel.shape[1] == energy.shape[1], f"[!] {mel.shape} vs {energy.shape}" - energy = torch.FloatTensor(energy)[:, None, :].contiguous() # B x 1 xT - else: - energy = None - # format attention masks - attns = None - if batch["attn"][0] is not None: - attns = [batch["attn"][idx].T for idx in ids_sorted_decreasing] - for idx, attn in enumerate(attns): - pad2 = mel.shape[1] - attn.shape[1] - pad1 = token_ids.shape[1] - attn.shape[0] - assert pad1 >= 0 and pad2 >= 0, f"[!] Negative padding - {pad1} and {pad2}" - attn = np.pad(attn, [[0, pad1], [0, pad2]]) - attns[idx] = attn - attns = prepare_tensor(attns, self.outputs_per_step) - attns = torch.FloatTensor(attns).unsqueeze(1) - - return { - "token_id": token_ids, - "token_id_lengths": token_ids_lengths, - "speaker_names": batch["speaker_name"], - "linear": linear, - "mel": mel, - "mel_lengths": mel_lengths, - "stop_targets": stop_targets, - "item_idxs": batch["item_idx"], - "d_vectors": d_vectors, - "speaker_ids": speaker_ids, - "attns": attns, - "waveform": wav_padded, - "raw_text": batch["raw_text"], - "pitch": pitch, - "energy": energy, - "language_ids": language_ids, - "audio_unique_names": batch["audio_unique_name"], - } - - raise TypeError( - ( - "batch must contain tensors, numbers, dicts or lists;\ - found {}".format( - type(batch[0]) - ) - ) - ) - - -class PhonemeDataset(Dataset): - """Phoneme Dataset for converting input text to phonemes and then token IDs - - At initialization, it pre-computes the phonemes under `cache_path` and loads them in training to reduce data - loading latency. If `cache_path` is already present, it skips the pre-computation. - - Args: - samples (Union[List[List], List[Dict]]): - List of samples. Each sample is a list or a dict. - - tokenizer (TTSTokenizer): - Tokenizer to convert input text to phonemes. - - cache_path (str): - Path to cache phonemes. If `cache_path` is already present or None, it skips the pre-computation. - - precompute_num_workers (int): - Number of workers used for pre-computing the phonemes. Defaults to 0. - """ - - def __init__( - self, - samples: Union[List[Dict], List[List]], - tokenizer: "TTSTokenizer", - cache_path: str, - precompute_num_workers=0, - ): - self.samples = samples - self.tokenizer = tokenizer - self.cache_path = cache_path - if cache_path is not None and not os.path.exists(cache_path): - os.makedirs(cache_path) - self.precompute(precompute_num_workers) - - def __getitem__(self, index): - item = self.samples[index] - ids = self.compute_or_load(string2filename(item["audio_unique_name"]), item["text"], item["language"]) - ph_hat = self.tokenizer.ids_to_text(ids) - return {"text": item["text"], "ph_hat": ph_hat, "token_ids": ids, "token_ids_len": len(ids)} - - def __len__(self): - return len(self.samples) - - def compute_or_load(self, file_name, text, language): - """Compute phonemes for the given text. - - If the phonemes are already cached, load them from cache. - """ - file_ext = "_phoneme.npy" - cache_path = os.path.join(self.cache_path, file_name + file_ext) - try: - ids = np.load(cache_path) - except FileNotFoundError: - ids = self.tokenizer.text_to_ids(text, language=language) - np.save(cache_path, ids) - return ids - - def get_pad_id(self): - """Get pad token ID for sequence padding""" - return self.tokenizer.pad_id - - def precompute(self, num_workers=1): - """Precompute phonemes for all samples. - - We use pytorch dataloader because we are lazy. - """ - print("[*] Pre-computing phonemes...") - with tqdm.tqdm(total=len(self)) as pbar: - batch_size = num_workers if num_workers > 0 else 1 - dataloder = torch.utils.data.DataLoader( - batch_size=batch_size, dataset=self, shuffle=False, num_workers=num_workers, collate_fn=self.collate_fn - ) - for _ in dataloder: - pbar.update(batch_size) - - def collate_fn(self, batch): - ids = [item["token_ids"] for item in batch] - ids_lens = [item["token_ids_len"] for item in batch] - texts = [item["text"] for item in batch] - texts_hat = [item["ph_hat"] for item in batch] - ids_lens_max = max(ids_lens) - ids_torch = torch.LongTensor(len(ids), ids_lens_max).fill_(self.get_pad_id()) - for i, ids_len in enumerate(ids_lens): - ids_torch[i, :ids_len] = torch.LongTensor(ids[i]) - return {"text": texts, "ph_hat": texts_hat, "token_ids": ids_torch} - - def print_logs(self, level: int = 0) -> None: - indent = "\t" * level - print("\n") - print(f"{indent}> PhonemeDataset ") - print(f"{indent}| > Tokenizer:") - self.tokenizer.print_logs(level + 1) - print(f"{indent}| > Number of instances : {len(self.samples)}") - - -class F0Dataset: - """F0 Dataset for computing F0 from wav files in CPU - - Pre-compute F0 values for all the samples at initialization if `cache_path` is not None or already present. It - also computes the mean and std of F0 values if `normalize_f0` is True. - - Args: - samples (Union[List[List], List[Dict]]): - List of samples. Each sample is a list or a dict. - - ap (AudioProcessor): - AudioProcessor to compute F0 from wav files. - - cache_path (str): - Path to cache F0 values. If `cache_path` is already present or None, it skips the pre-computation. - Defaults to None. - - precompute_num_workers (int): - Number of workers used for pre-computing the F0 values. Defaults to 0. - - normalize_f0 (bool): - Whether to normalize F0 values by mean and std. Defaults to True. - """ - - def __init__( - self, - samples: Union[List[List], List[Dict]], - ap: "AudioProcessor", - audio_config=None, # pylint: disable=unused-argument - verbose=False, - cache_path: str = None, - precompute_num_workers=0, - normalize_f0=True, - ): - self.samples = samples - self.ap = ap - self.verbose = verbose - self.cache_path = cache_path - self.normalize_f0 = normalize_f0 - self.pad_id = 0.0 - self.mean = None - self.std = None - if cache_path is not None and not os.path.exists(cache_path): - os.makedirs(cache_path) - self.precompute(precompute_num_workers) - if normalize_f0: - self.load_stats(cache_path) - - def __getitem__(self, idx): - item = self.samples[idx] - f0 = self.compute_or_load(item["audio_file"], string2filename(item["audio_unique_name"])) - if self.normalize_f0: - assert self.mean is not None and self.std is not None, " [!] Mean and STD is not available" - f0 = self.normalize(f0) - return {"audio_unique_name": item["audio_unique_name"], "f0": f0} - - def __len__(self): - return len(self.samples) - - def precompute(self, num_workers=0): - print("[*] Pre-computing F0s...") - with tqdm.tqdm(total=len(self)) as pbar: - batch_size = num_workers if num_workers > 0 else 1 - # we do not normalize at preproessing - normalize_f0 = self.normalize_f0 - self.normalize_f0 = False - dataloder = torch.utils.data.DataLoader( - batch_size=batch_size, dataset=self, shuffle=False, num_workers=num_workers, collate_fn=self.collate_fn - ) - computed_data = [] - for batch in dataloder: - f0 = batch["f0"] - computed_data.append(f for f in f0) - pbar.update(batch_size) - self.normalize_f0 = normalize_f0 - - if self.normalize_f0: - computed_data = [tensor for batch in computed_data for tensor in batch] # flatten - pitch_mean, pitch_std = self.compute_pitch_stats(computed_data) - pitch_stats = {"mean": pitch_mean, "std": pitch_std} - np.save(os.path.join(self.cache_path, "pitch_stats"), pitch_stats, allow_pickle=True) - - def get_pad_id(self): - return self.pad_id - - @staticmethod - def create_pitch_file_path(file_name, cache_path): - pitch_file = os.path.join(cache_path, file_name + "_pitch.npy") - return pitch_file - - @staticmethod - def _compute_and_save_pitch(ap, wav_file, pitch_file=None): - wav = ap.load_wav(wav_file) - pitch = ap.compute_f0(wav) - if pitch_file: - np.save(pitch_file, pitch) - return pitch - - @staticmethod - def compute_pitch_stats(pitch_vecs): - nonzeros = np.concatenate([v[np.where(v != 0.0)[0]] for v in pitch_vecs]) - mean, std = np.mean(nonzeros), np.std(nonzeros) - return mean, std - - def load_stats(self, cache_path): - stats_path = os.path.join(cache_path, "pitch_stats.npy") - stats = np.load(stats_path, allow_pickle=True).item() - self.mean = stats["mean"].astype(np.float32) - self.std = stats["std"].astype(np.float32) - - def normalize(self, pitch): - zero_idxs = np.where(pitch == 0.0)[0] - pitch = pitch - self.mean - pitch = pitch / self.std - pitch[zero_idxs] = 0.0 - return pitch - - def denormalize(self, pitch): - zero_idxs = np.where(pitch == 0.0)[0] - pitch *= self.std - pitch += self.mean - pitch[zero_idxs] = 0.0 - return pitch - - def compute_or_load(self, wav_file, audio_unique_name): - """ - compute pitch and return a numpy array of pitch values - """ - pitch_file = self.create_pitch_file_path(audio_unique_name, self.cache_path) - if not os.path.exists(pitch_file): - pitch = self._compute_and_save_pitch(self.ap, wav_file, pitch_file) - else: - pitch = np.load(pitch_file) - return pitch.astype(np.float32) - - def collate_fn(self, batch): - audio_unique_name = [item["audio_unique_name"] for item in batch] - f0s = [item["f0"] for item in batch] - f0_lens = [len(item["f0"]) for item in batch] - f0_lens_max = max(f0_lens) - f0s_torch = torch.LongTensor(len(f0s), f0_lens_max).fill_(self.get_pad_id()) - for i, f0_len in enumerate(f0_lens): - f0s_torch[i, :f0_len] = torch.LongTensor(f0s[i]) - return {"audio_unique_name": audio_unique_name, "f0": f0s_torch, "f0_lens": f0_lens} - - def print_logs(self, level: int = 0) -> None: - indent = "\t" * level - print("\n") - print(f"{indent}> F0Dataset ") - print(f"{indent}| > Number of instances : {len(self.samples)}") - - -class EnergyDataset: - """Energy Dataset for computing Energy from wav files in CPU - - Pre-compute Energy values for all the samples at initialization if `cache_path` is not None or already present. It - also computes the mean and std of Energy values if `normalize_Energy` is True. - - Args: - samples (Union[List[List], List[Dict]]): - List of samples. Each sample is a list or a dict. - - ap (AudioProcessor): - AudioProcessor to compute Energy from wav files. - - cache_path (str): - Path to cache Energy values. If `cache_path` is already present or None, it skips the pre-computation. - Defaults to None. - - precompute_num_workers (int): - Number of workers used for pre-computing the Energy values. Defaults to 0. - - normalize_Energy (bool): - Whether to normalize Energy values by mean and std. Defaults to True. - """ - - def __init__( - self, - samples: Union[List[List], List[Dict]], - ap: "AudioProcessor", - verbose=False, - cache_path: str = None, - precompute_num_workers=0, - normalize_energy=True, - ): - self.samples = samples - self.ap = ap - self.verbose = verbose - self.cache_path = cache_path - self.normalize_energy = normalize_energy - self.pad_id = 0.0 - self.mean = None - self.std = None - if cache_path is not None and not os.path.exists(cache_path): - os.makedirs(cache_path) - self.precompute(precompute_num_workers) - if normalize_energy: - self.load_stats(cache_path) - - def __getitem__(self, idx): - item = self.samples[idx] - energy = self.compute_or_load(item["audio_file"], string2filename(item["audio_unique_name"])) - if self.normalize_energy: - assert self.mean is not None and self.std is not None, " [!] Mean and STD is not available" - energy = self.normalize(energy) - return {"audio_unique_name": item["audio_unique_name"], "energy": energy} - - def __len__(self): - return len(self.samples) - - def precompute(self, num_workers=0): - print("[*] Pre-computing energys...") - with tqdm.tqdm(total=len(self)) as pbar: - batch_size = num_workers if num_workers > 0 else 1 - # we do not normalize at preproessing - normalize_energy = self.normalize_energy - self.normalize_energy = False - dataloder = torch.utils.data.DataLoader( - batch_size=batch_size, dataset=self, shuffle=False, num_workers=num_workers, collate_fn=self.collate_fn - ) - computed_data = [] - for batch in dataloder: - energy = batch["energy"] - computed_data.append(e for e in energy) - pbar.update(batch_size) - self.normalize_energy = normalize_energy - - if self.normalize_energy: - computed_data = [tensor for batch in computed_data for tensor in batch] # flatten - energy_mean, energy_std = self.compute_energy_stats(computed_data) - energy_stats = {"mean": energy_mean, "std": energy_std} - np.save(os.path.join(self.cache_path, "energy_stats"), energy_stats, allow_pickle=True) - - def get_pad_id(self): - return self.pad_id - - @staticmethod - def create_energy_file_path(wav_file, cache_path): - file_name = os.path.splitext(os.path.basename(wav_file))[0] - energy_file = os.path.join(cache_path, file_name + "_energy.npy") - return energy_file - - @staticmethod - def _compute_and_save_energy(ap, wav_file, energy_file=None): - wav = ap.load_wav(wav_file) - energy = calculate_energy(wav, fft_size=ap.fft_size, hop_length=ap.hop_length, win_length=ap.win_length) - if energy_file: - np.save(energy_file, energy) - return energy - - @staticmethod - def compute_energy_stats(energy_vecs): - nonzeros = np.concatenate([v[np.where(v != 0.0)[0]] for v in energy_vecs]) - mean, std = np.mean(nonzeros), np.std(nonzeros) - return mean, std - - def load_stats(self, cache_path): - stats_path = os.path.join(cache_path, "energy_stats.npy") - stats = np.load(stats_path, allow_pickle=True).item() - self.mean = stats["mean"].astype(np.float32) - self.std = stats["std"].astype(np.float32) - - def normalize(self, energy): - zero_idxs = np.where(energy == 0.0)[0] - energy = energy - self.mean - energy = energy / self.std - energy[zero_idxs] = 0.0 - return energy - - def denormalize(self, energy): - zero_idxs = np.where(energy == 0.0)[0] - energy *= self.std - energy += self.mean - energy[zero_idxs] = 0.0 - return energy - - def compute_or_load(self, wav_file, audio_unique_name): - """ - compute energy and return a numpy array of energy values - """ - energy_file = self.create_energy_file_path(audio_unique_name, self.cache_path) - if not os.path.exists(energy_file): - energy = self._compute_and_save_energy(self.ap, wav_file, energy_file) - else: - energy = np.load(energy_file) - return energy.astype(np.float32) - - def collate_fn(self, batch): - audio_unique_name = [item["audio_unique_name"] for item in batch] - energys = [item["energy"] for item in batch] - energy_lens = [len(item["energy"]) for item in batch] - energy_lens_max = max(energy_lens) - energys_torch = torch.LongTensor(len(energys), energy_lens_max).fill_(self.get_pad_id()) - for i, energy_len in enumerate(energy_lens): - energys_torch[i, :energy_len] = torch.LongTensor(energys[i]) - return {"audio_unique_name": audio_unique_name, "energy": energys_torch, "energy_lens": energy_lens} - - def print_logs(self, level: int = 0) -> None: - indent = "\t" * level - print("\n") - print(f"{indent}> energyDataset ") - print(f"{indent}| > Number of instances : {len(self.samples)}") diff --git a/TTS/TTS/tts/datasets/formatters.py b/TTS/TTS/tts/datasets/formatters.py deleted file mode 100644 index 0eac29c8f7b6af90b5bfcff6c59a7f4597709633..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/datasets/formatters.py +++ /dev/null @@ -1,616 +0,0 @@ -import os -import re -import xml.etree.ElementTree as ET -from glob import glob -from pathlib import Path -from typing import List - -import pandas as pd -from tqdm import tqdm - -######################## -# DATASETS -######################## - - -def coqui(root_path, meta_file, ignored_speakers=None): - """Interal dataset formatter.""" - filepath = os.path.join(root_path, meta_file) - # ensure there are 4 columns for every line - with open(filepath, "r", encoding="utf8") as f: - lines = f.readlines() - num_cols = len(lines[0].split("|")) # take the first row as reference - for idx, line in enumerate(lines[1:]): - if len(line.split("|")) != num_cols: - print(f" > Missing column in line {idx + 1} -> {line.strip()}") - # load metadata - metadata = pd.read_csv(os.path.join(root_path, meta_file), sep="|") - assert all(x in metadata.columns for x in ["audio_file", "text"]) - speaker_name = None if "speaker_name" in metadata.columns else "coqui" - emotion_name = None if "emotion_name" in metadata.columns else "neutral" - items = [] - not_found_counter = 0 - for row in metadata.itertuples(): - if speaker_name is None and ignored_speakers is not None and row.speaker_name in ignored_speakers: - continue - audio_path = os.path.join(root_path, row.audio_file) - if not os.path.exists(audio_path): - not_found_counter += 1 - continue - items.append( - { - "text": row.text, - "audio_file": audio_path, - "speaker_name": speaker_name if speaker_name is not None else row.speaker_name, - "emotion_name": emotion_name if emotion_name is not None else row.emotion_name, - "root_path": root_path, - } - ) - if not_found_counter > 0: - print(f" | > [!] {not_found_counter} files not found") - return items - - -def tweb(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalize TWEB dataset. - https://www.kaggle.com/bryanpark/the-world-english-bible-speech-dataset - """ - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "tweb" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("\t") - wav_file = os.path.join(root_path, cols[0] + ".wav") - text = cols[1] - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def mozilla(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes Mozilla meta data files to TTS format""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "mozilla" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = cols[1].strip() - text = cols[0].strip() - wav_file = os.path.join(root_path, "wavs", wav_file) - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def mozilla_de(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes Mozilla meta data files to TTS format""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "mozilla" - with open(txt_file, "r", encoding="ISO 8859-1") as ttf: - for line in ttf: - cols = line.strip().split("|") - wav_file = cols[0].strip() - text = cols[1].strip() - folder_name = f"BATCH_{wav_file.split('_')[0]}_FINAL" - wav_file = os.path.join(root_path, folder_name, wav_file) - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def mailabs(root_path, meta_files=None, ignored_speakers=None): - """Normalizes M-AI-Labs meta data files to TTS format - - Args: - root_path (str): root folder of the MAILAB language folder. - meta_files (str): list of meta files to be used in the training. If None, finds all the csv files - recursively. Defaults to None - """ - speaker_regex = re.compile(f"by_book{os.sep}(male|female){os.sep}(?P[^{os.sep}]+){os.sep}") - if not meta_files: - csv_files = glob(root_path + f"{os.sep}**{os.sep}metadata.csv", recursive=True) - else: - csv_files = meta_files - - # meta_files = [f.strip() for f in meta_files.split(",")] - items = [] - for csv_file in csv_files: - if os.path.isfile(csv_file): - txt_file = csv_file - else: - txt_file = os.path.join(root_path, csv_file) - - folder = os.path.dirname(txt_file) - # determine speaker based on folder structure... - speaker_name_match = speaker_regex.search(txt_file) - if speaker_name_match is None: - continue - speaker_name = speaker_name_match.group("speaker_name") - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_name in ignored_speakers: - continue - print(" | > {}".format(csv_file)) - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - if not meta_files: - wav_file = os.path.join(folder, "wavs", cols[0] + ".wav") - else: - wav_file = os.path.join(root_path, folder.replace("metadata.csv", ""), "wavs", cols[0] + ".wav") - if os.path.isfile(wav_file): - text = cols[1].strip() - items.append( - {"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path} - ) - else: - # M-AI-Labs have some missing samples, so just print the warning - print("> File %s does not exist!" % (wav_file)) - return items - - -def ljspeech(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes the LJSpeech meta data file to TTS format - https://keithito.com/LJ-Speech-Dataset/""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "ljspeech" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, "wavs", cols[0] + ".wav") - text = cols[2] - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def ljspeech_test(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes the LJSpeech meta data file for TTS testing - https://keithito.com/LJ-Speech-Dataset/""" - txt_file = os.path.join(root_path, meta_file) - items = [] - with open(txt_file, "r", encoding="utf-8") as ttf: - speaker_id = 0 - for idx, line in enumerate(ttf): - # 2 samples per speaker to avoid eval split issues - if idx % 2 == 0: - speaker_id += 1 - cols = line.split("|") - wav_file = os.path.join(root_path, "wavs", cols[0] + ".wav") - text = cols[2] - items.append( - {"text": text, "audio_file": wav_file, "speaker_name": f"ljspeech-{speaker_id}", "root_path": root_path} - ) - return items - - -def thorsten(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes the thorsten meta data file to TTS format - https://github.com/thorstenMueller/deep-learning-german-tts/""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "thorsten" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, "wavs", cols[0] + ".wav") - text = cols[1] - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def sam_accenture(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes the sam-accenture meta data file to TTS format - https://github.com/Sam-Accenture-Non-Binary-Voice/non-binary-voice-files""" - xml_file = os.path.join(root_path, "voice_over_recordings", meta_file) - xml_root = ET.parse(xml_file).getroot() - items = [] - speaker_name = "sam_accenture" - for item in xml_root.findall("./fileid"): - text = item.text - wav_file = os.path.join(root_path, "vo_voice_quality_transformation", item.get("id") + ".wav") - if not os.path.exists(wav_file): - print(f" [!] {wav_file} in metafile does not exist. Skipping...") - continue - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def ruslan(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes the RUSLAN meta data file to TTS format - https://ruslan-corpus.github.io/""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "ruslan" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, "RUSLAN", cols[0] + ".wav") - text = cols[1] - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def css10(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes the CSS10 dataset file to TTS format""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "css10" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, cols[0]) - text = cols[1] - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name}) - return items - - -def nancy(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes the Nancy meta data file to TTS format""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "nancy" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - utt_id = line.split()[1] - text = line[line.find('"') + 1 : line.rfind('"') - 1] - wav_file = os.path.join(root_path, "wavn", utt_id + ".wav") - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name}) - return items - - -def common_voice(root_path, meta_file, ignored_speakers=None): - """Normalize the common voice meta data file to TTS format.""" - txt_file = os.path.join(root_path, meta_file) - items = [] - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - if line.startswith("client_id"): - continue - cols = line.split("\t") - text = cols[2] - speaker_name = cols[0] - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_name in ignored_speakers: - continue - wav_file = os.path.join(root_path, "clips", cols[1].replace(".mp3", ".wav")) - items.append( - {"text": text, "audio_file": wav_file, "speaker_name": "MCV_" + speaker_name, "root_path": root_path} - ) - return items - - -def libri_tts(root_path, meta_files=None, ignored_speakers=None): - """https://ai.google/tools/datasets/libri-tts/""" - items = [] - if not meta_files: - meta_files = glob(f"{root_path}/**/*trans.tsv", recursive=True) - else: - if isinstance(meta_files, str): - meta_files = [os.path.join(root_path, meta_files)] - - for meta_file in meta_files: - _meta_file = os.path.basename(meta_file).split(".")[0] - with open(meta_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("\t") - file_name = cols[0] - speaker_name, chapter_id, *_ = cols[0].split("_") - _root_path = os.path.join(root_path, f"{speaker_name}/{chapter_id}") - wav_file = os.path.join(_root_path, file_name + ".wav") - text = cols[2] - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_name in ignored_speakers: - continue - items.append( - { - "text": text, - "audio_file": wav_file, - "speaker_name": f"LTTS_{speaker_name}", - "root_path": root_path, - } - ) - for item in items: - assert os.path.exists(item["audio_file"]), f" [!] wav files don't exist - {item['audio_file']}" - return items - - -def custom_turkish(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "turkish-female" - skipped_files = [] - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, "wavs", cols[0].strip() + ".wav") - if not os.path.exists(wav_file): - skipped_files.append(wav_file) - continue - text = cols[1].strip() - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - print(f" [!] {len(skipped_files)} files skipped. They don't exist...") - return items - - -# ToDo: add the dataset link when the dataset is released publicly -def brspeech(root_path, meta_file, ignored_speakers=None): - """BRSpeech 3.0 beta""" - txt_file = os.path.join(root_path, meta_file) - items = [] - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - if line.startswith("wav_filename"): - continue - cols = line.split("|") - wav_file = os.path.join(root_path, cols[0]) - text = cols[2] - speaker_id = cols[3] - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_id in ignored_speakers: - continue - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_id, "root_path": root_path}) - return items - - -def vctk(root_path, meta_files=None, wavs_path="wav48_silence_trimmed", mic="mic1", ignored_speakers=None): - """VCTK dataset v0.92. - - URL: - https://datashare.ed.ac.uk/bitstream/handle/10283/3443/VCTK-Corpus-0.92.zip - - This dataset has 2 recordings per speaker that are annotated with ```mic1``` and ```mic2```. - It is believed that (😄 ) ```mic1``` files are the same as the previous version of the dataset. - - mic1: - Audio recorded using an omni-directional microphone (DPA 4035). - Contains very low frequency noises. - This is the same audio released in previous versions of VCTK: - https://doi.org/10.7488/ds/1994 - - mic2: - Audio recorded using a small diaphragm condenser microphone with - very wide bandwidth (Sennheiser MKH 800). - Two speakers, p280 and p315 had technical issues of the audio - recordings using MKH 800. - """ - file_ext = "flac" - items = [] - meta_files = glob(f"{os.path.join(root_path,'txt')}/**/*.txt", recursive=True) - for meta_file in meta_files: - _, speaker_id, txt_file = os.path.relpath(meta_file, root_path).split(os.sep) - file_id = txt_file.split(".")[0] - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_id in ignored_speakers: - continue - with open(meta_file, "r", encoding="utf-8") as file_text: - text = file_text.readlines()[0] - # p280 has no mic2 recordings - if speaker_id == "p280": - wav_file = os.path.join(root_path, wavs_path, speaker_id, file_id + f"_mic1.{file_ext}") - else: - wav_file = os.path.join(root_path, wavs_path, speaker_id, file_id + f"_{mic}.{file_ext}") - if os.path.exists(wav_file): - items.append( - {"text": text, "audio_file": wav_file, "speaker_name": "VCTK_" + speaker_id, "root_path": root_path} - ) - else: - print(f" [!] wav files don't exist - {wav_file}") - return items - - -def vctk_old(root_path, meta_files=None, wavs_path="wav48", ignored_speakers=None): - """homepages.inf.ed.ac.uk/jyamagis/release/VCTK-Corpus.tar.gz""" - items = [] - meta_files = glob(f"{os.path.join(root_path,'txt')}/**/*.txt", recursive=True) - for meta_file in meta_files: - _, speaker_id, txt_file = os.path.relpath(meta_file, root_path).split(os.sep) - file_id = txt_file.split(".")[0] - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_id in ignored_speakers: - continue - with open(meta_file, "r", encoding="utf-8") as file_text: - text = file_text.readlines()[0] - wav_file = os.path.join(root_path, wavs_path, speaker_id, file_id + ".wav") - items.append( - {"text": text, "audio_file": wav_file, "speaker_name": "VCTK_old_" + speaker_id, "root_path": root_path} - ) - return items - - -def synpaflex(root_path, metafiles=None, **kwargs): # pylint: disable=unused-argument - items = [] - speaker_name = "synpaflex" - root_path = os.path.join(root_path, "") - wav_files = glob(f"{root_path}**/*.wav", recursive=True) - for wav_file in wav_files: - if os.sep + "wav" + os.sep in wav_file: - txt_file = wav_file.replace("wav", "txt") - else: - txt_file = os.path.join( - os.path.dirname(wav_file), "txt", os.path.basename(wav_file).replace(".wav", ".txt") - ) - if os.path.exists(txt_file) and os.path.exists(wav_file): - with open(txt_file, "r", encoding="utf-8") as file_text: - text = file_text.readlines()[0] - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def open_bible(root_path, meta_files="train", ignore_digits_sentences=True, ignored_speakers=None): - """ToDo: Refer the paper when available""" - items = [] - split_dir = meta_files - meta_files = glob(f"{os.path.join(root_path, split_dir)}/**/*.txt", recursive=True) - for meta_file in meta_files: - _, speaker_id, txt_file = os.path.relpath(meta_file, root_path).split(os.sep) - file_id = txt_file.split(".")[0] - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_id in ignored_speakers: - continue - with open(meta_file, "r", encoding="utf-8") as file_text: - text = file_text.readline().replace("\n", "") - # ignore sentences that contains digits - if ignore_digits_sentences and any(map(str.isdigit, text)): - continue - wav_file = os.path.join(root_path, split_dir, speaker_id, file_id + ".flac") - items.append({"text": text, "audio_file": wav_file, "speaker_name": "OB_" + speaker_id, "root_path": root_path}) - return items - - -def mls(root_path, meta_files=None, ignored_speakers=None): - """http://www.openslr.org/94/""" - items = [] - with open(os.path.join(root_path, meta_files), "r", encoding="utf-8") as meta: - for line in meta: - file, text = line.split("\t") - text = text[:-1] - speaker, book, *_ = file.split("_") - wav_file = os.path.join(root_path, os.path.dirname(meta_files), "audio", speaker, book, file + ".wav") - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker in ignored_speakers: - continue - items.append( - {"text": text, "audio_file": wav_file, "speaker_name": "MLS_" + speaker, "root_path": root_path} - ) - return items - - -# ======================================== VOX CELEB =========================================== -def voxceleb2(root_path, meta_file=None, **kwargs): # pylint: disable=unused-argument - """ - :param meta_file Used only for consistency with load_tts_samples api - """ - return _voxcel_x(root_path, meta_file, voxcel_idx="2") - - -def voxceleb1(root_path, meta_file=None, **kwargs): # pylint: disable=unused-argument - """ - :param meta_file Used only for consistency with load_tts_samples api - """ - return _voxcel_x(root_path, meta_file, voxcel_idx="1") - - -def _voxcel_x(root_path, meta_file, voxcel_idx): - assert voxcel_idx in ["1", "2"] - expected_count = 148_000 if voxcel_idx == "1" else 1_000_000 - voxceleb_path = Path(root_path) - cache_to = voxceleb_path / f"metafile_voxceleb{voxcel_idx}.csv" - cache_to.parent.mkdir(exist_ok=True) - - # if not exists meta file, crawl recursively for 'wav' files - if meta_file is not None: - with open(str(meta_file), "r", encoding="utf-8") as f: - return [x.strip().split("|") for x in f.readlines()] - - elif not cache_to.exists(): - cnt = 0 - meta_data = [] - wav_files = voxceleb_path.rglob("**/*.wav") - for path in tqdm( - wav_files, - desc=f"Building VoxCeleb {voxcel_idx} Meta file ... this needs to be done only once.", - total=expected_count, - ): - speaker_id = str(Path(path).parent.parent.stem) - assert speaker_id.startswith("id") - text = None # VoxCel does not provide transciptions, and they are not needed for training the SE - meta_data.append(f"{text}|{path}|voxcel{voxcel_idx}_{speaker_id}\n") - cnt += 1 - with open(str(cache_to), "w", encoding="utf-8") as f: - f.write("".join(meta_data)) - if cnt < expected_count: - raise ValueError(f"Found too few instances for Voxceleb. Should be around {expected_count}, is: {cnt}") - - with open(str(cache_to), "r", encoding="utf-8") as f: - return [x.strip().split("|") for x in f.readlines()] - - -def emotion(root_path, meta_file, ignored_speakers=None): - """Generic emotion dataset""" - txt_file = os.path.join(root_path, meta_file) - items = [] - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - if line.startswith("file_path"): - continue - cols = line.split(",") - wav_file = os.path.join(root_path, cols[0]) - speaker_id = cols[1] - emotion_id = cols[2].replace("\n", "") - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_id in ignored_speakers: - continue - items.append( - {"audio_file": wav_file, "speaker_name": speaker_id, "emotion_name": emotion_id, "root_path": root_path} - ) - return items - - -def baker(root_path: str, meta_file: str, **kwargs) -> List[List[str]]: # pylint: disable=unused-argument - """Normalizes the Baker meta data file to TTS format - - Args: - root_path (str): path to the baker dataset - meta_file (str): name of the meta dataset containing names of wav to select and the transcript of the sentence - Returns: - List[List[str]]: List of (text, wav_path, speaker_name) associated with each sentences - """ - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "baker" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - wav_name, text = line.rstrip("\n").split("|") - wav_path = os.path.join(root_path, "clips_22", wav_name) - items.append({"text": text, "audio_file": wav_path, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def kokoro(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Japanese single-speaker dataset from https://github.com/kaiidams/Kokoro-Speech-Dataset""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "kokoro" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, "wavs", cols[0] + ".wav") - text = cols[2].replace(" ", "") - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def kss(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Korean single-speaker dataset from https://www.kaggle.com/datasets/bryanpark/korean-single-speaker-speech-dataset""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "kss" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, cols[0]) - text = cols[2] # cols[1] => 6월, cols[2] => 유월 - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def bel_tts_formatter(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "bel_tts" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, cols[0]) - text = cols[1] - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items diff --git a/TTS/TTS/tts/layers/__init__.py b/TTS/TTS/tts/layers/__init__.py deleted file mode 100644 index f93efdb7fc41109ec3497d8e5e37ba05b0a4315e..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from TTS.tts.layers.losses import * diff --git a/TTS/TTS/tts/layers/align_tts/__init__.py b/TTS/TTS/tts/layers/align_tts/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/layers/align_tts/duration_predictor.py b/TTS/TTS/tts/layers/align_tts/duration_predictor.py deleted file mode 100644 index b2b83894cc3f87575a89ea8fd7bf4a584ca22c28..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/align_tts/duration_predictor.py +++ /dev/null @@ -1,21 +0,0 @@ -from torch import nn - -from TTS.tts.layers.generic.pos_encoding import PositionalEncoding -from TTS.tts.layers.generic.transformer import FFTransformerBlock - - -class DurationPredictor(nn.Module): - def __init__(self, num_chars, hidden_channels, hidden_channels_ffn, num_heads): - super().__init__() - self.embed = nn.Embedding(num_chars, hidden_channels) - self.pos_enc = PositionalEncoding(hidden_channels, dropout_p=0.1) - self.FFT = FFTransformerBlock(hidden_channels, num_heads, hidden_channels_ffn, 2, 0.1) - self.out_layer = nn.Conv1d(hidden_channels, 1, 1) - - def forward(self, text, text_lengths): - # B, L -> B, L - emb = self.embed(text) - emb = self.pos_enc(emb.transpose(1, 2)) - x = self.FFT(emb, text_lengths) - x = self.out_layer(x).squeeze(-1) - return x diff --git a/TTS/TTS/tts/layers/align_tts/mdn.py b/TTS/TTS/tts/layers/align_tts/mdn.py deleted file mode 100644 index cdb332524bf7a5fec6a23da9e7977de6325a0324..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/align_tts/mdn.py +++ /dev/null @@ -1,30 +0,0 @@ -from torch import nn - - -class MDNBlock(nn.Module): - """Mixture of Density Network implementation - https://arxiv.org/pdf/2003.01950.pdf - """ - - def __init__(self, in_channels, out_channels): - super().__init__() - self.out_channels = out_channels - self.conv1 = nn.Conv1d(in_channels, in_channels, 1) - self.norm = nn.LayerNorm(in_channels) - self.relu = nn.ReLU() - self.dropout = nn.Dropout(0.1) - self.conv2 = nn.Conv1d(in_channels, out_channels, 1) - - def forward(self, x): - o = self.conv1(x) - o = o.transpose(1, 2) - o = self.norm(o) - o = o.transpose(1, 2) - o = self.relu(o) - o = self.dropout(o) - mu_sigma = self.conv2(o) - # TODO: check this sigmoid - # mu = torch.sigmoid(mu_sigma[:, :self.out_channels//2, :]) - mu = mu_sigma[:, : self.out_channels // 2, :] - log_sigma = mu_sigma[:, self.out_channels // 2 :, :] - return mu, log_sigma diff --git a/TTS/TTS/tts/layers/bark/__init__.py b/TTS/TTS/tts/layers/bark/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/layers/bark/hubert/__init__.py b/TTS/TTS/tts/layers/bark/hubert/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/layers/bark/hubert/hubert_manager.py b/TTS/TTS/tts/layers/bark/hubert/hubert_manager.py deleted file mode 100644 index 4bc199294164da0e8c480e292dd5a478e72f4daf..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/bark/hubert/hubert_manager.py +++ /dev/null @@ -1,35 +0,0 @@ -# From https://github.com/gitmylo/bark-voice-cloning-HuBERT-quantizer - -import os.path -import shutil -import urllib.request - -import huggingface_hub - - -class HubertManager: - @staticmethod - def make_sure_hubert_installed( - download_url: str = "https://dl.fbaipublicfiles.com/hubert/hubert_base_ls960.pt", model_path: str = "" - ): - if not os.path.isfile(model_path): - print("Downloading HuBERT base model") - urllib.request.urlretrieve(download_url, model_path) - print("Downloaded HuBERT") - return model_path - return None - - @staticmethod - def make_sure_tokenizer_installed( - model: str = "quantifier_hubert_base_ls960_14.pth", - repo: str = "GitMylo/bark-voice-cloning", - model_path: str = "", - ): - model_dir = os.path.dirname(model_path) - if not os.path.isfile(model_path): - print("Downloading HuBERT custom tokenizer") - huggingface_hub.hf_hub_download(repo, model, local_dir=model_dir, local_dir_use_symlinks=False) - shutil.move(os.path.join(model_dir, model), model_path) - print("Downloaded tokenizer") - return model_path - return None diff --git a/TTS/TTS/tts/layers/bark/hubert/kmeans_hubert.py b/TTS/TTS/tts/layers/bark/hubert/kmeans_hubert.py deleted file mode 100644 index a6a3b9aeb1111ca0abeccb6142007ecc5b39d78d..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/bark/hubert/kmeans_hubert.py +++ /dev/null @@ -1,82 +0,0 @@ -""" -Modified HuBERT model without kmeans. -Original author: https://github.com/lucidrains/ -Modified by: https://www.github.com/gitmylo/ -License: MIT -""" - -# Modified code from https://github.com/lucidrains/audiolm-pytorch/blob/main/audiolm_pytorch/hubert_kmeans.py - -import logging -from pathlib import Path - -import torch -from einops import pack, unpack -from torch import nn -from torchaudio.functional import resample -from transformers import HubertModel - - -def round_down_nearest_multiple(num, divisor): - return num // divisor * divisor - - -def curtail_to_multiple(t, mult, from_left=False): - data_len = t.shape[-1] - rounded_seq_len = round_down_nearest_multiple(data_len, mult) - seq_slice = slice(None, rounded_seq_len) if not from_left else slice(-rounded_seq_len, None) - return t[..., seq_slice] - - -def exists(val): - return val is not None - - -def default(val, d): - return val if exists(val) else d - - -class CustomHubert(nn.Module): - """ - checkpoint and kmeans can be downloaded at https://github.com/facebookresearch/fairseq/tree/main/examples/hubert - or you can train your own - """ - - def __init__(self, checkpoint_path, target_sample_hz=16000, seq_len_multiple_of=None, output_layer=9, device=None): - super().__init__() - self.target_sample_hz = target_sample_hz - self.seq_len_multiple_of = seq_len_multiple_of - self.output_layer = output_layer - if device is not None: - self.to(device) - self.model = HubertModel.from_pretrained("facebook/hubert-base-ls960") - if device is not None: - self.model.to(device) - self.model.eval() - - @property - def groups(self): - return 1 - - @torch.no_grad() - def forward(self, wav_input, flatten=True, input_sample_hz=None): - device = wav_input.device - - if exists(input_sample_hz): - wav_input = resample(wav_input, input_sample_hz, self.target_sample_hz) - - if exists(self.seq_len_multiple_of): - wav_input = curtail_to_multiple(wav_input, self.seq_len_multiple_of) - - outputs = self.model.forward( - wav_input, - output_hidden_states=True, - ) - embed = outputs["hidden_states"][self.output_layer] - embed, packed_shape = pack([embed], "* d") - codebook_indices = torch.from_numpy(embed.cpu().detach().numpy()).to(device) - if flatten: - return codebook_indices - - (codebook_indices,) = unpack(codebook_indices, packed_shape, "*") - return codebook_indices diff --git a/TTS/TTS/tts/layers/bark/hubert/tokenizer.py b/TTS/TTS/tts/layers/bark/hubert/tokenizer.py deleted file mode 100644 index 3070241f1cc1ac95867f2d4173495b9a7047a15e..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/bark/hubert/tokenizer.py +++ /dev/null @@ -1,195 +0,0 @@ -""" -Custom tokenizer model. -Author: https://www.github.com/gitmylo/ -License: MIT -""" - -import json -import os.path -from zipfile import ZipFile - -import numpy -import torch -from torch import nn, optim - - -class HubertTokenizer(nn.Module): - def __init__(self, hidden_size=1024, input_size=768, output_size=10000, version=0): - super().__init__() - next_size = input_size - if version == 0: - self.lstm = nn.LSTM(input_size, hidden_size, 2, batch_first=True) - next_size = hidden_size - if version == 1: - self.lstm = nn.LSTM(input_size, hidden_size, 2, batch_first=True) - self.intermediate = nn.Linear(hidden_size, 4096) - next_size = 4096 - - self.fc = nn.Linear(next_size, output_size) - self.softmax = nn.LogSoftmax(dim=1) - self.optimizer: optim.Optimizer = None - self.lossfunc = nn.CrossEntropyLoss() - self.input_size = input_size - self.hidden_size = hidden_size - self.output_size = output_size - self.version = version - - def forward(self, x): - x, _ = self.lstm(x) - if self.version == 1: - x = self.intermediate(x) - x = self.fc(x) - x = self.softmax(x) - return x - - @torch.no_grad() - def get_token(self, x): - """ - Used to get the token for the first - :param x: An array with shape (N, input_size) where N is a whole number greater or equal to 1, and input_size is the input size used when creating the model. - :return: An array with shape (N,) where N is the same as N from the input. Every number in the array is a whole number in range 0...output_size - 1 where output_size is the output size used when creating the model. - """ - return torch.argmax(self(x), dim=1) - - def prepare_training(self): - self.optimizer = optim.Adam(self.parameters(), 0.001) - - def train_step(self, x_train, y_train, log_loss=False): - # y_train = y_train[:-1] - # y_train = y_train[1:] - - optimizer = self.optimizer - lossfunc = self.lossfunc - # Zero the gradients - self.zero_grad() - - # Forward pass - y_pred = self(x_train) - - y_train_len = len(y_train) - y_pred_len = y_pred.shape[0] - - if y_train_len > y_pred_len: - diff = y_train_len - y_pred_len - y_train = y_train[diff:] - elif y_train_len < y_pred_len: - diff = y_pred_len - y_train_len - y_pred = y_pred[:-diff, :] - - y_train_hot = torch.zeros(len(y_train), self.output_size) - y_train_hot[range(len(y_train)), y_train] = 1 - y_train_hot = y_train_hot.to("cuda") - - # Calculate the loss - loss = lossfunc(y_pred, y_train_hot) - - # Print loss - if log_loss: - print("Loss", loss.item()) - - # Backward pass - loss.backward() - - # Update the weights - optimizer.step() - - def save(self, path): - info_path = ".".join(os.path.basename(path).split(".")[:-1]) + "/.info" - torch.save(self.state_dict(), path) - data_from_model = Data(self.input_size, self.hidden_size, self.output_size, self.version) - with ZipFile(path, "a") as model_zip: - model_zip.writestr(info_path, data_from_model.save()) - model_zip.close() - - @staticmethod - def load_from_checkpoint(path, map_location=None): - old = True - with ZipFile(path) as model_zip: - filesMatch = [file for file in model_zip.namelist() if file.endswith("/.info")] - file = filesMatch[0] if filesMatch else None - if file: - old = False - data_from_model = Data.load(model_zip.read(file).decode("utf-8")) - model_zip.close() - if old: - model = HubertTokenizer() - else: - model = HubertTokenizer( - data_from_model.hidden_size, - data_from_model.input_size, - data_from_model.output_size, - data_from_model.version, - ) - model.load_state_dict(torch.load(path, map_location=map_location)) - if map_location: - model = model.to(map_location) - return model - - -class Data: - input_size: int - hidden_size: int - output_size: int - version: int - - def __init__(self, input_size=768, hidden_size=1024, output_size=10000, version=0): - self.input_size = input_size - self.hidden_size = hidden_size - self.output_size = output_size - self.version = version - - @staticmethod - def load(string): - data = json.loads(string) - return Data(data["input_size"], data["hidden_size"], data["output_size"], data["version"]) - - def save(self): - data = { - "input_size": self.input_size, - "hidden_size": self.hidden_size, - "output_size": self.output_size, - "version": self.version, - } - return json.dumps(data) - - -def auto_train(data_path, save_path="model.pth", load_model: str = None, save_epochs=1): - data_x, data_y = [], [] - - if load_model and os.path.isfile(load_model): - print("Loading model from", load_model) - model_training = HubertTokenizer.load_from_checkpoint(load_model, "cuda") - else: - print("Creating new model.") - model_training = HubertTokenizer(version=1).to("cuda") # Settings for the model to run without lstm - save_path = os.path.join(data_path, save_path) - base_save_path = ".".join(save_path.split(".")[:-1]) - - sem_string = "_semantic.npy" - feat_string = "_semantic_features.npy" - - ready = os.path.join(data_path, "ready") - for input_file in os.listdir(ready): - full_path = os.path.join(ready, input_file) - if input_file.endswith(sem_string): - data_y.append(numpy.load(full_path)) - elif input_file.endswith(feat_string): - data_x.append(numpy.load(full_path)) - model_training.prepare_training() - - epoch = 1 - - while 1: - for _ in range(save_epochs): - j = 0 - for x, y in zip(data_x, data_y): - model_training.train_step( - torch.tensor(x).to("cuda"), torch.tensor(y).to("cuda"), j % 50 == 0 - ) # Print loss every 50 steps - j += 1 - save_p = save_path - save_p_2 = f"{base_save_path}_epoch_{epoch}.pth" - model_training.save(save_p) - model_training.save(save_p_2) - print(f"Epoch {epoch} completed") - epoch += 1 diff --git a/TTS/TTS/tts/layers/bark/inference_funcs.py b/TTS/TTS/tts/layers/bark/inference_funcs.py deleted file mode 100644 index f3d3fee9371fae0cd06187c967a5b0028940138e..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/bark/inference_funcs.py +++ /dev/null @@ -1,606 +0,0 @@ -import logging -import os -import re -from glob import glob -from typing import Dict, List - -import librosa -import numpy as np -import torch -import torchaudio -import tqdm -from encodec.utils import convert_audio -from scipy.special import softmax -from torch.nn import functional as F - -from TTS.tts.layers.bark.hubert.hubert_manager import HubertManager -from TTS.tts.layers.bark.hubert.kmeans_hubert import CustomHubert -from TTS.tts.layers.bark.hubert.tokenizer import HubertTokenizer -from TTS.tts.layers.bark.load_model import clear_cuda_cache, inference_mode - -logger = logging.getLogger(__name__) - - -def _tokenize(tokenizer, text): - return tokenizer.encode(text, add_special_tokens=False) - - -def _detokenize(tokenizer, enc_text): - return tokenizer.decode(enc_text) - - -def _normalize_whitespace(text): - return re.sub(r"\s+", " ", text).strip() - - -def get_voices(extra_voice_dirs: List[str] = []): # pylint: disable=dangerous-default-value - dirs = extra_voice_dirs - voices: Dict[str, List[str]] = {} - for d in dirs: - subs = os.listdir(d) - for sub in subs: - subj = os.path.join(d, sub) - if os.path.isdir(subj): - voices[sub] = list(glob(f"{subj}/*.npz")) - # fetch audio files if no npz files are found - if len(voices[sub]) == 0: - voices[sub] = list(glob(f"{subj}/*.wav")) + list(glob(f"{subj}/*.mp3")) - return voices - - -def load_npz(npz_file): - x_history = np.load(npz_file) - semantic = x_history["semantic_prompt"] - coarse = x_history["coarse_prompt"] - fine = x_history["fine_prompt"] - return semantic, coarse, fine - - -def load_voice(model, voice: str, extra_voice_dirs: List[str] = []): # pylint: disable=dangerous-default-value - if voice == "random": - return None, None, None - - voices = get_voices(extra_voice_dirs) - paths = voices[voice] - - # bark only uses a single sample for cloning - if len(paths) > 1: - raise ValueError(f"Voice {voice} has multiple paths: {paths}") - - try: - path = voices[voice] - except KeyError as e: - raise KeyError(f"Voice {voice} not found in {extra_voice_dirs}") from e - - if len(paths) == 1 and paths[0].endswith(".npz"): - return load_npz(path[0]) - - audio_path = paths[0] - # replace the file extension with .npz - output_path = os.path.splitext(audio_path)[0] + ".npz" - generate_voice(audio=audio_path, model=model, output_path=output_path) - return load_voice(model, voice, extra_voice_dirs) - - -def zero_crossing_rate(audio, frame_length=1024, hop_length=512): - zero_crossings = np.sum(np.abs(np.diff(np.sign(audio))) / 2) - total_frames = 1 + int((len(audio) - frame_length) / hop_length) - return zero_crossings / total_frames - - -def compute_spectral_contrast(audio_data, sample_rate, n_bands=6, fmin=200.0): - spectral_contrast = librosa.feature.spectral_contrast(y=audio_data, sr=sample_rate, n_bands=n_bands, fmin=fmin) - return np.mean(spectral_contrast) - - -def compute_average_bass_energy(audio_data, sample_rate, max_bass_freq=250): - stft = librosa.stft(audio_data) - power_spectrogram = np.abs(stft) ** 2 - frequencies = librosa.fft_frequencies(sr=sample_rate, n_fft=stft.shape[0]) - bass_mask = frequencies <= max_bass_freq - bass_energy = power_spectrogram[np.ix_(bass_mask, np.arange(power_spectrogram.shape[1]))].mean() - return bass_energy - - -def generate_voice( - audio, - model, - output_path, -): - """Generate a new voice from a given audio and text prompt. - - Args: - audio (np.ndarray): The audio to use as a base for the new voice. - text (str): Transcription of the audio you are clonning. - model (BarkModel): The BarkModel to use for generating the new voice. - output_path (str): The path to save the generated voice to. - """ - if isinstance(audio, str): - audio, sr = torchaudio.load(audio) - audio = convert_audio(audio, sr, model.config.sample_rate, model.encodec.channels) - audio = audio.unsqueeze(0).to(model.device) - - with torch.no_grad(): - encoded_frames = model.encodec.encode(audio) - codes = torch.cat([encoded[0] for encoded in encoded_frames], dim=-1).squeeze() # [n_q, T] - - # move codes to cpu - codes = codes.cpu().numpy() - - # generate semantic tokens - # Load the HuBERT model - hubert_manager = HubertManager() - # hubert_manager.make_sure_hubert_installed(model_path=model.config.LOCAL_MODEL_PATHS["hubert"]) - hubert_manager.make_sure_tokenizer_installed(model_path=model.config.LOCAL_MODEL_PATHS["hubert_tokenizer"]) - - hubert_model = CustomHubert(checkpoint_path=model.config.LOCAL_MODEL_PATHS["hubert"]).to(model.device) - - # Load the CustomTokenizer model - tokenizer = HubertTokenizer.load_from_checkpoint( - model.config.LOCAL_MODEL_PATHS["hubert_tokenizer"], map_location=model.device - ) - # semantic_tokens = model.text_to_semantic( - # text, max_gen_duration_s=seconds, top_k=50, top_p=0.95, temp=0.7 - # ) # not 100% - semantic_vectors = hubert_model.forward(audio[0], input_sample_hz=model.config.sample_rate) - semantic_tokens = tokenizer.get_token(semantic_vectors) - semantic_tokens = semantic_tokens.cpu().numpy() - - np.savez(output_path, fine_prompt=codes, coarse_prompt=codes[:2, :], semantic_prompt=semantic_tokens) - - -def generate_text_semantic( - text, - model, - history_prompt=None, - temp=0.7, - top_k=None, - top_p=None, - silent=False, - min_eos_p=0.2, - max_gen_duration_s=None, - allow_early_stop=True, - base=None, - use_kv_caching=True, - **kwargs, # pylint: disable=unused-argument -): - """Generate semantic tokens from text. - - Args: - text (str): The text to generate semantic tokens from. - model (BarkModel): The BarkModel to use for generating the semantic tokens. - history_prompt (tuple): A tuple of (semantic_history, coarse_history, fine_history) to use as a prompt for the generation. - temp (float): The temperature to use for the generation. - top_k (int): The number of top tokens to consider for the generation. - top_p (float): The cumulative probability to consider for the generation. - silent (bool): Whether to silence the tqdm progress bar. - min_eos_p (float): The minimum probability to consider for the end of sentence token. - max_gen_duration_s (float): The maximum duration in seconds to generate for. - allow_early_stop (bool): Whether to allow the generation to stop early. - base (tuple): A tuple of (semantic_history, coarse_history, fine_history) to use as a base for the generation. - use_kv_caching (bool): Whether to use key-value caching for the generation. - **kwargs: Additional keyword arguments. They are ignored. - - Returns: - np.ndarray: The generated semantic tokens. - """ - assert isinstance(text, str) - text = _normalize_whitespace(text) - assert len(text.strip()) > 0 - if all(v is not None for v in history_prompt) or base is not None: - if history_prompt is not None: - semantic_history = history_prompt[0] - if base is not None: - semantic_history = base[0] - assert ( - isinstance(semantic_history, np.ndarray) - and len(semantic_history.shape) == 1 - and len(semantic_history) > 0 - and semantic_history.min() >= 0 - and semantic_history.max() <= model.config.SEMANTIC_VOCAB_SIZE - 1 - ) - else: - semantic_history = None - encoded_text = np.array(_tokenize(model.tokenizer, text)) + model.config.TEXT_ENCODING_OFFSET - if len(encoded_text) > 256: - p = round((len(encoded_text) - 256) / len(encoded_text) * 100, 1) - logger.warning(f"warning, text too long, lopping of last {p}%") - encoded_text = encoded_text[:256] - encoded_text = np.pad( - encoded_text, - (0, 256 - len(encoded_text)), - constant_values=model.config.TEXT_PAD_TOKEN, - mode="constant", - ) - if semantic_history is not None: - semantic_history = semantic_history.astype(np.int64) - # lop off if history is too long, pad if needed - semantic_history = semantic_history[-256:] - semantic_history = np.pad( - semantic_history, - (0, 256 - len(semantic_history)), - constant_values=model.config.SEMANTIC_PAD_TOKEN, - mode="constant", - ) - else: - semantic_history = np.array([model.config.SEMANTIC_PAD_TOKEN] * 256) - x = torch.from_numpy( - np.hstack([encoded_text, semantic_history, np.array([model.config.SEMANTIC_INFER_TOKEN])]).astype(np.int64) - )[None] - assert x.shape[1] == 256 + 256 + 1 - with inference_mode(): - x = x.to(model.device) - n_tot_steps = 768 - # custom tqdm updates since we don't know when eos will occur - pbar = tqdm.tqdm(disable=silent, total=100) - pbar_state = 0 - tot_generated_duration_s = 0 - kv_cache = None - for n in range(n_tot_steps): - if use_kv_caching and kv_cache is not None: - x_input = x[:, [-1]] - else: - x_input = x - logits, kv_cache = model.semantic_model( - x_input, merge_context=True, use_cache=use_kv_caching, past_kv=kv_cache - ) - relevant_logits = logits[0, 0, : model.config.SEMANTIC_VOCAB_SIZE] - if allow_early_stop: - relevant_logits = torch.hstack( - (relevant_logits, logits[0, 0, [model.config.SEMANTIC_PAD_TOKEN]]) - ) # eos - if top_p is not None: - # faster to convert to numpy - logits_device = relevant_logits.device - logits_dtype = relevant_logits.type() - relevant_logits = relevant_logits.detach().cpu().type(torch.float32).numpy() - sorted_indices = np.argsort(relevant_logits)[::-1] - sorted_logits = relevant_logits[sorted_indices] - cumulative_probs = np.cumsum(softmax(sorted_logits)) - sorted_indices_to_remove = cumulative_probs > top_p - sorted_indices_to_remove[1:] = sorted_indices_to_remove[:-1].copy() - sorted_indices_to_remove[0] = False - relevant_logits[sorted_indices[sorted_indices_to_remove]] = -np.inf - relevant_logits = torch.from_numpy(relevant_logits) - relevant_logits = relevant_logits.to(logits_device).type(logits_dtype) - if top_k is not None: - v, _ = torch.topk(relevant_logits, min(top_k, relevant_logits.size(-1))) - relevant_logits[relevant_logits < v[-1]] = -float("Inf") - probs = torch.softmax(relevant_logits / temp, dim=-1) - item_next = torch.multinomial(probs, num_samples=1) - if allow_early_stop and ( - item_next == model.config.SEMANTIC_VOCAB_SIZE or (min_eos_p is not None and probs[-1] >= min_eos_p) - ): - # eos found, so break - pbar.update(100 - pbar_state) - break - x = torch.cat((x, item_next[None]), dim=1) - tot_generated_duration_s += 1 / model.config.SEMANTIC_RATE_HZ - if max_gen_duration_s is not None and tot_generated_duration_s > max_gen_duration_s: - pbar.update(100 - pbar_state) - break - if n == n_tot_steps - 1: - pbar.update(100 - pbar_state) - break - del logits, relevant_logits, probs, item_next - req_pbar_state = np.min([100, int(round(100 * n / n_tot_steps))]) - if req_pbar_state > pbar_state: - pbar.update(req_pbar_state - pbar_state) - pbar_state = req_pbar_state - pbar.close() - out = x.detach().cpu().numpy().squeeze()[256 + 256 + 1 :] - assert all(out >= 0) and all(out < model.config.SEMANTIC_VOCAB_SIZE) - clear_cuda_cache() - return out - - -def _flatten_codebooks(arr, offset_size): - assert len(arr.shape) == 2 - arr = arr.copy() - if offset_size is not None: - for n in range(1, arr.shape[0]): - arr[n, :] += offset_size * n - flat_arr = arr.ravel("F") - return flat_arr - - -def generate_coarse( - x_semantic, - model, - history_prompt=None, - temp=0.7, - top_k=None, - top_p=None, - silent=False, - max_coarse_history=630, # min 60 (faster), max 630 (more context) - sliding_window_len=60, - base=None, - use_kv_caching=True, -): - """Generate coarse audio codes from semantic tokens. - - Args: - x_semantic (np.ndarray): The semantic tokens to generate coarse audio codes from. - model (BarkModel): The BarkModel to use for generating the coarse audio codes. - history_prompt (tuple): A tuple of (semantic_history, coarse_history, fine_history) to use as a prompt for the generation. - temp (float): The temperature to use for the generation. - top_k (int): The number of top tokens to consider for the generation. - top_p (float): The cumulative probability to consider for the generation. - silent (bool): Whether to silence the tqdm progress bar. - max_coarse_history (int): The maximum number of coarse audio codes to use as history. - sliding_window_len (int): The length of the sliding window to use for the generation. - base (tuple): A tuple of (semantic_history, coarse_history, fine_history) to use as a base for the generation. - use_kv_caching (bool): Whether to use key-value caching for the generation. - - Returns: - np.ndarray: The generated coarse audio codes. - """ - assert ( - isinstance(x_semantic, np.ndarray) - and len(x_semantic.shape) == 1 - and len(x_semantic) > 0 - and x_semantic.min() >= 0 - and x_semantic.max() <= model.config.SEMANTIC_VOCAB_SIZE - 1 - ) - assert 60 <= max_coarse_history <= 630 - assert max_coarse_history + sliding_window_len <= 1024 - 256 - semantic_to_coarse_ratio = ( - model.config.COARSE_RATE_HZ / model.config.SEMANTIC_RATE_HZ * model.config.N_COARSE_CODEBOOKS - ) - max_semantic_history = int(np.floor(max_coarse_history / semantic_to_coarse_ratio)) - if all(v is not None for v in history_prompt) or base is not None: - if history_prompt is not None: - x_history = history_prompt - x_semantic_history = x_history[0] - x_coarse_history = x_history[1] - if base is not None: - x_semantic_history = base[0] - x_coarse_history = base[1] - assert ( - isinstance(x_semantic_history, np.ndarray) - and len(x_semantic_history.shape) == 1 - and len(x_semantic_history) > 0 - and x_semantic_history.min() >= 0 - and x_semantic_history.max() <= model.config.SEMANTIC_VOCAB_SIZE - 1 - and isinstance(x_coarse_history, np.ndarray) - and len(x_coarse_history.shape) == 2 - and x_coarse_history.shape[0] == model.config.N_COARSE_CODEBOOKS - and x_coarse_history.shape[-1] >= 0 - and x_coarse_history.min() >= 0 - and x_coarse_history.max() <= model.config.CODEBOOK_SIZE - 1 - and ( - round(x_coarse_history.shape[-1] / len(x_semantic_history), 1) - == round(semantic_to_coarse_ratio / model.config.N_COARSE_CODEBOOKS, 1) - ) - ) - x_coarse_history = ( - _flatten_codebooks(x_coarse_history, model.config.CODEBOOK_SIZE) + model.config.SEMANTIC_VOCAB_SIZE - ) - # trim histories correctly - n_semantic_hist_provided = np.min( - [ - max_semantic_history, - len(x_semantic_history) - len(x_semantic_history) % 2, - int(np.floor(len(x_coarse_history) / semantic_to_coarse_ratio)), - ] - ) - n_coarse_hist_provided = int(round(n_semantic_hist_provided * semantic_to_coarse_ratio)) - x_semantic_history = x_semantic_history[-n_semantic_hist_provided:].astype(np.int32) - x_coarse_history = x_coarse_history[-n_coarse_hist_provided:].astype(np.int32) - # TODO: bit of a hack for time alignment (sounds better) - x_coarse_history = x_coarse_history[:-2] - else: - x_semantic_history = np.array([], dtype=np.int32) - x_coarse_history = np.array([], dtype=np.int32) - # start loop - n_steps = int( - round( - np.floor(len(x_semantic) * semantic_to_coarse_ratio / model.config.N_COARSE_CODEBOOKS) - * model.config.N_COARSE_CODEBOOKS - ) - ) - assert n_steps > 0 and n_steps % model.config.N_COARSE_CODEBOOKS == 0 - x_semantic = np.hstack([x_semantic_history, x_semantic]).astype(np.int32) - x_coarse = x_coarse_history.astype(np.int32) - base_semantic_idx = len(x_semantic_history) - with inference_mode(): - x_semantic_in = torch.from_numpy(x_semantic)[None].to(model.device) - x_coarse_in = torch.from_numpy(x_coarse)[None].to(model.device) - n_window_steps = int(np.ceil(n_steps / sliding_window_len)) - n_step = 0 - for _ in tqdm.tqdm(range(n_window_steps), total=n_window_steps, disable=silent): - semantic_idx = base_semantic_idx + int(round(n_step / semantic_to_coarse_ratio)) - # pad from right side - x_in = x_semantic_in[:, np.max([0, semantic_idx - max_semantic_history]) :] - x_in = x_in[:, :256] - x_in = F.pad( - x_in, - (0, 256 - x_in.shape[-1]), - "constant", - model.config.COARSE_SEMANTIC_PAD_TOKEN, - ) - x_in = torch.hstack( - [ - x_in, - torch.tensor([model.config.COARSE_INFER_TOKEN])[None].to(model.device), - x_coarse_in[:, -max_coarse_history:], - ] - ) - kv_cache = None - for _ in range(sliding_window_len): - if n_step >= n_steps: - continue - is_major_step = n_step % model.config.N_COARSE_CODEBOOKS == 0 - - if use_kv_caching and kv_cache is not None: - x_input = x_in[:, [-1]] - else: - x_input = x_in - - logits, kv_cache = model.coarse_model(x_input, use_cache=use_kv_caching, past_kv=kv_cache) - logit_start_idx = ( - model.config.SEMANTIC_VOCAB_SIZE + (1 - int(is_major_step)) * model.config.CODEBOOK_SIZE - ) - logit_end_idx = model.config.SEMANTIC_VOCAB_SIZE + (2 - int(is_major_step)) * model.config.CODEBOOK_SIZE - relevant_logits = logits[0, 0, logit_start_idx:logit_end_idx] - if top_p is not None: - # faster to convert to numpy - logits_device = relevant_logits.device - logits_dtype = relevant_logits.type() - relevant_logits = relevant_logits.detach().cpu().type(torch.float32).numpy() - sorted_indices = np.argsort(relevant_logits)[::-1] - sorted_logits = relevant_logits[sorted_indices] - cumulative_probs = np.cumsum(torch.nn.functional.softmax(sorted_logits)) - sorted_indices_to_remove = cumulative_probs > top_p - sorted_indices_to_remove[1:] = sorted_indices_to_remove[:-1].copy() - sorted_indices_to_remove[0] = False - relevant_logits[sorted_indices[sorted_indices_to_remove]] = -np.inf - relevant_logits = torch.from_numpy(relevant_logits) - relevant_logits = relevant_logits.to(logits_device).type(logits_dtype) - if top_k is not None: - v, _ = torch.topk(relevant_logits, min(top_k, relevant_logits.size(-1))) - relevant_logits[relevant_logits < v[-1]] = -float("Inf") - probs = torch.nn.functional.softmax(relevant_logits / temp, dim=-1) - item_next = torch.multinomial(probs, num_samples=1) - item_next += logit_start_idx - x_coarse_in = torch.cat((x_coarse_in, item_next[None]), dim=1) - x_in = torch.cat((x_in, item_next[None]), dim=1) - del logits, relevant_logits, probs, item_next - n_step += 1 - del x_in - del x_semantic_in - gen_coarse_arr = x_coarse_in.detach().cpu().numpy().squeeze()[len(x_coarse_history) :] - del x_coarse_in - assert len(gen_coarse_arr) == n_steps - gen_coarse_audio_arr = ( - gen_coarse_arr.reshape(-1, model.config.N_COARSE_CODEBOOKS).T - model.config.SEMANTIC_VOCAB_SIZE - ) - for n in range(1, model.config.N_COARSE_CODEBOOKS): - gen_coarse_audio_arr[n, :] -= n * model.config.CODEBOOK_SIZE - clear_cuda_cache() - return gen_coarse_audio_arr - - -def generate_fine( - x_coarse_gen, - model, - history_prompt=None, - temp=0.5, - silent=True, - base=None, -): - """Generate full audio codes from coarse audio codes. - - Args: - x_coarse_gen (np.ndarray): The coarse audio codes to generate full audio codes from. - model (BarkModel): The BarkModel to use for generating the full audio codes. - history_prompt (tuple): A tuple of (semantic_history, coarse_history, fine_history) to use as a prompt for the generation. - temp (float): The temperature to use for the generation. - silent (bool): Whether to silence the tqdm progress bar. - base (tuple): A tuple of (semantic_history, coarse_history, fine_history) to use as a base for the generation. - - Returns: - np.ndarray: The generated full audio codes. - """ - assert ( - isinstance(x_coarse_gen, np.ndarray) - and len(x_coarse_gen.shape) == 2 - and 1 <= x_coarse_gen.shape[0] <= model.config.N_FINE_CODEBOOKS - 1 - and x_coarse_gen.shape[1] > 0 - and x_coarse_gen.min() >= 0 - and x_coarse_gen.max() <= model.config.CODEBOOK_SIZE - 1 - ) - if all(v is not None for v in history_prompt) or base is not None: - if history_prompt is not None: - x_fine_history = history_prompt[2] - if base is not None: - x_fine_history = base[2] - assert ( - isinstance(x_fine_history, np.ndarray) - and len(x_fine_history.shape) == 2 - and x_fine_history.shape[0] == model.config.N_FINE_CODEBOOKS - and x_fine_history.shape[1] >= 0 - and x_fine_history.min() >= 0 - and x_fine_history.max() <= model.config.CODEBOOK_SIZE - 1 - ) - else: - x_fine_history = None - n_coarse = x_coarse_gen.shape[0] - # make input arr - in_arr = np.vstack( - [ - x_coarse_gen, - np.zeros((model.config.N_FINE_CODEBOOKS - n_coarse, x_coarse_gen.shape[1])) - + model.config.CODEBOOK_SIZE, # padding - ] - ).astype(np.int32) - # prepend history if available (max 512) - if x_fine_history is not None: - x_fine_history = x_fine_history.astype(np.int32) - in_arr = np.hstack( - [ - x_fine_history[:, -512:].astype(np.int32), - in_arr, - ] - ) - n_history = x_fine_history[:, -512:].shape[1] - else: - n_history = 0 - n_remove_from_end = 0 - # need to pad if too short (since non-causal model) - if in_arr.shape[1] < 1024: - n_remove_from_end = 1024 - in_arr.shape[1] - in_arr = np.hstack( - [ - in_arr, - np.zeros((model.config.N_FINE_CODEBOOKS, n_remove_from_end), dtype=np.int32) - + model.config.CODEBOOK_SIZE, - ] - ) - # we can be lazy about fractional loop and just keep overwriting codebooks - n_loops = np.max([0, int(np.ceil((x_coarse_gen.shape[1] - (1024 - n_history)) / 512))]) + 1 - with inference_mode(): - in_arr = torch.tensor(in_arr.T).to(model.device) - for n in tqdm.tqdm(range(n_loops), disable=silent): - start_idx = np.min([n * 512, in_arr.shape[0] - 1024]) - start_fill_idx = np.min([n_history + n * 512, in_arr.shape[0] - 512]) - rel_start_fill_idx = start_fill_idx - start_idx - in_buffer = in_arr[start_idx : start_idx + 1024, :][None] - for nn in range(n_coarse, model.config.N_FINE_CODEBOOKS): - logits = model.fine_model(nn, in_buffer) - if temp is None: - relevant_logits = logits[0, rel_start_fill_idx:, : model.config.CODEBOOK_SIZE] - codebook_preds = torch.argmax(relevant_logits, -1) - else: - relevant_logits = logits[0, :, : model.config.CODEBOOK_SIZE] / temp - probs = F.softmax(relevant_logits, dim=-1) - codebook_preds = torch.hstack( - [torch.multinomial(probs[n], num_samples=1) for n in range(rel_start_fill_idx, 1024)] - ) - in_buffer[0, rel_start_fill_idx:, nn] = codebook_preds - del logits, codebook_preds - # transfer over info into model_in and convert to numpy - for nn in range(n_coarse, model.config.N_FINE_CODEBOOKS): - in_arr[start_fill_idx : start_fill_idx + (1024 - rel_start_fill_idx), nn] = in_buffer[ - 0, rel_start_fill_idx:, nn - ] - del in_buffer - gen_fine_arr = in_arr.detach().cpu().numpy().squeeze().T - del in_arr - gen_fine_arr = gen_fine_arr[:, n_history:] - if n_remove_from_end > 0: - gen_fine_arr = gen_fine_arr[:, :-n_remove_from_end] - assert gen_fine_arr.shape[-1] == x_coarse_gen.shape[-1] - clear_cuda_cache() - return gen_fine_arr - - -def codec_decode(fine_tokens, model): - """Turn quantized audio codes into audio array using encodec.""" - arr = torch.from_numpy(fine_tokens)[None] - arr = arr.to(model.device) - arr = arr.transpose(0, 1) - emb = model.encodec.quantizer.decode(arr) - out = model.encodec.decoder(emb) - audio_arr = out.detach().cpu().numpy().squeeze() - return audio_arr diff --git a/TTS/TTS/tts/layers/bark/load_model.py b/TTS/TTS/tts/layers/bark/load_model.py deleted file mode 100644 index ce6b757f054ce98b91601b494854ef8e7b56b131..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/bark/load_model.py +++ /dev/null @@ -1,160 +0,0 @@ -import contextlib -import functools -import hashlib -import logging -import os - -import requests -import torch -import tqdm - -from TTS.tts.layers.bark.model import GPT, GPTConfig -from TTS.tts.layers.bark.model_fine import FineGPT, FineGPTConfig - -if ( - torch.cuda.is_available() - and hasattr(torch.cuda, "amp") - and hasattr(torch.cuda.amp, "autocast") - and torch.cuda.is_bf16_supported() -): - autocast = functools.partial(torch.cuda.amp.autocast, dtype=torch.bfloat16) -else: - - @contextlib.contextmanager - def autocast(): - yield - - -# hold models in global scope to lazy load - -logger = logging.getLogger(__name__) - - -if not hasattr(torch.nn.functional, "scaled_dot_product_attention"): - logger.warning( - "torch version does not support flash attention. You will get significantly faster" - + " inference speed by upgrade torch to newest version / nightly." - ) - - -def _md5(fname): - hash_md5 = hashlib.md5() - with open(fname, "rb") as f: - for chunk in iter(lambda: f.read(4096), b""): - hash_md5.update(chunk) - return hash_md5.hexdigest() - - -def _download(from_s3_path, to_local_path, CACHE_DIR): - os.makedirs(CACHE_DIR, exist_ok=True) - response = requests.get(from_s3_path, stream=True) - total_size_in_bytes = int(response.headers.get("content-length", 0)) - block_size = 1024 # 1 Kibibyte - progress_bar = tqdm.tqdm(total=total_size_in_bytes, unit="iB", unit_scale=True) - with open(to_local_path, "wb") as file: - for data in response.iter_content(block_size): - progress_bar.update(len(data)) - file.write(data) - progress_bar.close() - if total_size_in_bytes not in [0, progress_bar.n]: - raise ValueError("ERROR, something went wrong") - - -class InferenceContext: - def __init__(self, benchmark=False): - # we can't expect inputs to be the same length, so disable benchmarking by default - self._chosen_cudnn_benchmark = benchmark - self._cudnn_benchmark = None - - def __enter__(self): - self._cudnn_benchmark = torch.backends.cudnn.benchmark - torch.backends.cudnn.benchmark = self._chosen_cudnn_benchmark - - def __exit__(self, exc_type, exc_value, exc_traceback): - torch.backends.cudnn.benchmark = self._cudnn_benchmark - - -if torch.cuda.is_available(): - torch.backends.cuda.matmul.allow_tf32 = True - torch.backends.cudnn.allow_tf32 = True - - -@contextlib.contextmanager -def inference_mode(): - with InferenceContext(), torch.inference_mode(), torch.no_grad(), autocast(): - yield - - -def clear_cuda_cache(): - if torch.cuda.is_available(): - torch.cuda.empty_cache() - torch.cuda.synchronize() - - -def load_model(ckpt_path, device, config, model_type="text"): - logger.info(f"loading {model_type} model from {ckpt_path}...") - - if device == "cpu": - logger.warning("No GPU being used. Careful, Inference might be extremely slow!") - if model_type == "text": - ConfigClass = GPTConfig - ModelClass = GPT - elif model_type == "coarse": - ConfigClass = GPTConfig - ModelClass = GPT - elif model_type == "fine": - ConfigClass = FineGPTConfig - ModelClass = FineGPT - else: - raise NotImplementedError() - if ( - not config.USE_SMALLER_MODELS - and os.path.exists(ckpt_path) - and _md5(ckpt_path) != config.REMOTE_MODEL_PATHS[model_type]["checksum"] - ): - logger.warning(f"found outdated {model_type} model, removing...") - os.remove(ckpt_path) - if not os.path.exists(ckpt_path): - logger.info(f"{model_type} model not found, downloading...") - _download(config.REMOTE_MODEL_PATHS[model_type]["path"], ckpt_path, config.CACHE_DIR) - - checkpoint = torch.load(ckpt_path, map_location=device) - # this is a hack - model_args = checkpoint["model_args"] - if "input_vocab_size" not in model_args: - model_args["input_vocab_size"] = model_args["vocab_size"] - model_args["output_vocab_size"] = model_args["vocab_size"] - del model_args["vocab_size"] - - gptconf = ConfigClass(**checkpoint["model_args"]) - if model_type == "text": - config.semantic_config = gptconf - elif model_type == "coarse": - config.coarse_config = gptconf - elif model_type == "fine": - config.fine_config = gptconf - - model = ModelClass(gptconf) - state_dict = checkpoint["model"] - # fixup checkpoint - unwanted_prefix = "_orig_mod." - for k, _ in list(state_dict.items()): - if k.startswith(unwanted_prefix): - state_dict[k[len(unwanted_prefix) :]] = state_dict.pop(k) - extra_keys = set(state_dict.keys()) - set(model.state_dict().keys()) - extra_keys = set(k for k in extra_keys if not k.endswith(".attn.bias")) - missing_keys = set(model.state_dict().keys()) - set(state_dict.keys()) - missing_keys = set(k for k in missing_keys if not k.endswith(".attn.bias")) - if len(extra_keys) != 0: - raise ValueError(f"extra keys found: {extra_keys}") - if len(missing_keys) != 0: - raise ValueError(f"missing keys: {missing_keys}") - model.load_state_dict(state_dict, strict=False) - n_params = model.get_num_params() - val_loss = checkpoint["best_val_loss"].item() - logger.info(f"model loaded: {round(n_params/1e6,1)}M params, {round(val_loss,3)} loss") - model.eval() - model.to(device) - del checkpoint, state_dict - clear_cuda_cache() - return model, config diff --git a/TTS/TTS/tts/layers/bark/model.py b/TTS/TTS/tts/layers/bark/model.py deleted file mode 100644 index c84022bd08bcdd2f3f9f3caadfc15a7bf80ddaf3..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/bark/model.py +++ /dev/null @@ -1,233 +0,0 @@ -""" -Much of this code is adapted from Andrej Karpathy's NanoGPT -(https://github.com/karpathy/nanoGPT) -""" -import math -from dataclasses import dataclass - -import torch -from coqpit import Coqpit -from torch import nn -from torch.nn import functional as F - - -class LayerNorm(nn.Module): - """LayerNorm but with an optional bias. PyTorch doesn't support simply bias=False""" - - def __init__(self, ndim, bias): - super().__init__() - self.weight = nn.Parameter(torch.ones(ndim)) - self.bias = nn.Parameter(torch.zeros(ndim)) if bias else None - - def forward(self, x): - return F.layer_norm(x, self.weight.shape, self.weight, self.bias, 1e-5) - - -class CausalSelfAttention(nn.Module): - def __init__(self, config): - super().__init__() - assert config.n_embd % config.n_head == 0 - # key, query, value projections for all heads, but in a batch - self.c_attn = nn.Linear(config.n_embd, 3 * config.n_embd, bias=config.bias) - # output projection - self.c_proj = nn.Linear(config.n_embd, config.n_embd, bias=config.bias) - # regularization - self.attn_dropout = nn.Dropout(config.dropout) - self.resid_dropout = nn.Dropout(config.dropout) - self.n_head = config.n_head - self.n_embd = config.n_embd - self.dropout = config.dropout - # flash attention make GPU go brrrrr but support is only in PyTorch nightly and still a bit scary - self.flash = hasattr(torch.nn.functional, "scaled_dot_product_attention") - if not self.flash: - # print("WARNING: using slow attention. Flash Attention atm needs PyTorch nightly and dropout=0.0") - # causal mask to ensure that attention is only applied to the left in the input sequence - self.register_buffer( - "bias", - torch.tril(torch.ones(config.block_size, config.block_size)).view( - 1, 1, config.block_size, config.block_size - ), - ) - - def forward(self, x, past_kv=None, use_cache=False): - B, T, C = x.size() # batch size, sequence length, embedding dimensionality (n_embd) - - # calculate query, key, values for all heads in batch and move head forward to be the batch dim - q, k, v = self.c_attn(x).split(self.n_embd, dim=2) - k = k.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs) - q = q.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs) - v = v.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs) - - if past_kv is not None: - past_key = past_kv[0] - past_value = past_kv[1] - k = torch.cat((past_key, k), dim=-2) - v = torch.cat((past_value, v), dim=-2) - - FULL_T = k.shape[-2] - - if use_cache is True: - present = (k, v) - else: - present = None - - # causal self-attention; Self-attend: (B, nh, T, hs) x (B, nh, hs, T) -> (B, nh, T, T) - if self.flash: - # efficient attention using Flash Attention CUDA kernels - if past_kv is not None: - # When `past_kv` is provided, we're doing incremental decoding and `q.shape[2] == 1`: q only contains - # the query for the last token. scaled_dot_product_attention interprets this as the first token in the - # sequence, so if is_causal=True it will mask out all attention from it. This is not what we want, so - # to work around this we set is_causal=False. - is_causal = False - else: - is_causal = True - - # efficient attention using Flash Attention CUDA kernels - y = torch.nn.functional.scaled_dot_product_attention(q, k, v, dropout_p=self.dropout, is_causal=is_causal) - else: - # manual implementation of attention - att = (q @ k.transpose(-2, -1)) * (1.0 / math.sqrt(k.size(-1))) - att = att.masked_fill(self.bias[:, :, FULL_T - T : FULL_T, :FULL_T] == 0, float("-inf")) - att = F.softmax(att, dim=-1) - att = self.attn_dropout(att) - y = att @ v # (B, nh, T, T) x (B, nh, T, hs) -> (B, nh, T, hs) - y = y.transpose(1, 2).contiguous().view(B, T, C) # re-assemble all head outputs side by side - - # output projection - y = self.resid_dropout(self.c_proj(y)) - return (y, present) - - -class MLP(nn.Module): - def __init__(self, config): - super().__init__() - self.c_fc = nn.Linear(config.n_embd, 4 * config.n_embd, bias=config.bias) - self.c_proj = nn.Linear(4 * config.n_embd, config.n_embd, bias=config.bias) - self.dropout = nn.Dropout(config.dropout) - self.gelu = nn.GELU() - - def forward(self, x): - x = self.c_fc(x) - x = self.gelu(x) - x = self.c_proj(x) - x = self.dropout(x) - return x - - -class Block(nn.Module): - def __init__(self, config, layer_idx): - super().__init__() - self.ln_1 = LayerNorm(config.n_embd, bias=config.bias) - self.attn = CausalSelfAttention(config) - self.ln_2 = LayerNorm(config.n_embd, bias=config.bias) - self.mlp = MLP(config) - self.layer_idx = layer_idx - - def forward(self, x, past_kv=None, use_cache=False): - attn_output, prev_kvs = self.attn(self.ln_1(x), past_kv=past_kv, use_cache=use_cache) - x = x + attn_output - x = x + self.mlp(self.ln_2(x)) - return (x, prev_kvs) - - -@dataclass -class GPTConfig(Coqpit): - block_size: int = 1024 - input_vocab_size: int = 10_048 - output_vocab_size: int = 10_048 - n_layer: int = 12 - n_head: int = 12 - n_embd: int = 768 - dropout: float = 0.0 - bias: bool = True # True: bias in Linears and LayerNorms, like GPT-2. False: a bit better and faster - - -class GPT(nn.Module): - def __init__(self, config): - super().__init__() - assert config.input_vocab_size is not None - assert config.output_vocab_size is not None - assert config.block_size is not None - self.config = config - - self.transformer = nn.ModuleDict( - dict( - wte=nn.Embedding(config.input_vocab_size, config.n_embd), - wpe=nn.Embedding(config.block_size, config.n_embd), - drop=nn.Dropout(config.dropout), - h=nn.ModuleList([Block(config, idx) for idx in range(config.n_layer)]), - ln_f=LayerNorm(config.n_embd, bias=config.bias), - ) - ) - self.lm_head = nn.Linear(config.n_embd, config.output_vocab_size, bias=False) - - def get_num_params(self, non_embedding=True): - """ - Return the number of parameters in the model. - For non-embedding count (default), the position embeddings get subtracted. - The token embeddings would too, except due to the parameter sharing these - params are actually used as weights in the final layer, so we include them. - """ - n_params = sum(p.numel() for p in self.parameters()) - if non_embedding: - n_params -= self.transformer.wte.weight.numel() - n_params -= self.transformer.wpe.weight.numel() - return n_params - - def forward(self, idx, merge_context=False, past_kv=None, position_ids=None, use_cache=False): - device = idx.device - _, t = idx.size() - if past_kv is not None: - assert t == 1 - tok_emb = self.transformer.wte(idx) # token embeddings of shape (b, t, n_embd) - else: - if merge_context: - assert idx.shape[1] >= 256 + 256 + 1 - t = idx.shape[1] - 256 - else: - assert ( - t <= self.config.block_size - ), f"Cannot forward sequence of length {t}, block size is only {self.config.block_size}" - - # forward the GPT model itself - if merge_context: - tok_emb = torch.cat( - [ - self.transformer.wte(idx[:, :256]) + self.transformer.wte(idx[:, 256 : 256 + 256]), - self.transformer.wte(idx[:, 256 + 256 :]), - ], - dim=1, - ) - else: - tok_emb = self.transformer.wte(idx) # token embeddings of shape (b, t, n_embd) - - if past_kv is None: - past_length = 0 - past_kv = tuple([None] * len(self.transformer.h)) - else: - past_length = past_kv[0][0].size(-2) - - if position_ids is None: - position_ids = torch.arange(past_length, t + past_length, dtype=torch.long, device=device) - position_ids = position_ids.unsqueeze(0) # shape (1, t) - assert position_ids.shape == (1, t) - - pos_emb = self.transformer.wpe(position_ids) # position embeddings of shape (1, t, n_embd) - - x = self.transformer.drop(tok_emb + pos_emb) - - new_kv = () if use_cache else None - - for _, (block, past_layer_kv) in enumerate(zip(self.transformer.h, past_kv)): - x, kv = block(x, past_kv=past_layer_kv, use_cache=use_cache) - - if use_cache: - new_kv = new_kv + (kv,) - - x = self.transformer.ln_f(x) - - # inference-time mini-optimization: only forward the lm_head on the very last position - logits = self.lm_head(x[:, [-1], :]) # note: using list [-1] to preserve the time dim - - return (logits, new_kv) diff --git a/TTS/TTS/tts/layers/bark/model_fine.py b/TTS/TTS/tts/layers/bark/model_fine.py deleted file mode 100644 index 09e5f4765dce8743db2a3ed879e7811d2b9d23d6..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/bark/model_fine.py +++ /dev/null @@ -1,142 +0,0 @@ -""" -Much of this code is adapted from Andrej Karpathy's NanoGPT -(https://github.com/karpathy/nanoGPT) -""" -import math -from dataclasses import dataclass - -import torch -from torch import nn -from torch.nn import functional as F - -from .model import GPT, MLP, GPTConfig - - -class NonCausalSelfAttention(nn.Module): - def __init__(self, config): - super().__init__() - assert config.n_embd % config.n_head == 0 - # key, query, value projections for all heads, but in a batch - self.c_attn = nn.Linear(config.n_embd, 3 * config.n_embd, bias=config.bias) - # output projection - self.c_proj = nn.Linear(config.n_embd, config.n_embd, bias=config.bias) - # regularization - self.attn_dropout = nn.Dropout(config.dropout) - self.resid_dropout = nn.Dropout(config.dropout) - self.n_head = config.n_head - self.n_embd = config.n_embd - self.dropout = config.dropout - # flash attention make GPU go brrrrr but support is only in PyTorch nightly and still a bit scary - self.flash = hasattr(torch.nn.functional, "scaled_dot_product_attention") and self.dropout == 0.0 - - def forward(self, x): - B, T, C = x.size() # batch size, sequence length, embedding dimensionality (n_embd) - - # calculate query, key, values for all heads in batch and move head forward to be the batch dim - q, k, v = self.c_attn(x).split(self.n_embd, dim=2) - k = k.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs) - q = q.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs) - v = v.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs) - - # causal self-attention; Self-attend: (B, nh, T, hs) x (B, nh, hs, T) -> (B, nh, T, T) - if self.flash: - # efficient attention using Flash Attention CUDA kernels - y = torch.nn.functional.scaled_dot_product_attention( - q, k, v, attn_mask=None, dropout_p=self.dropout, is_causal=False - ) - else: - # manual implementation of attention - att = (q @ k.transpose(-2, -1)) * (1.0 / math.sqrt(k.size(-1))) - att = F.softmax(att, dim=-1) - att = self.attn_dropout(att) - y = att @ v # (B, nh, T, T) x (B, nh, T, hs) -> (B, nh, T, hs) - y = y.transpose(1, 2).contiguous().view(B, T, C) # re-assemble all head outputs side by side - - # output projection - y = self.resid_dropout(self.c_proj(y)) - return y - - -class FineBlock(nn.Module): - def __init__(self, config): - super().__init__() - self.ln_1 = nn.LayerNorm(config.n_embd) - self.attn = NonCausalSelfAttention(config) - self.ln_2 = nn.LayerNorm(config.n_embd) - self.mlp = MLP(config) - - def forward(self, x): - x = x + self.attn(self.ln_1(x)) - x = x + self.mlp(self.ln_2(x)) - return x - - -class FineGPT(GPT): - def __init__(self, config): - super().__init__(config) - del self.lm_head - self.config = config - self.n_codes_total = config.n_codes_total - self.transformer = nn.ModuleDict( - dict( - wtes=nn.ModuleList( - [nn.Embedding(config.input_vocab_size, config.n_embd) for _ in range(config.n_codes_total)] - ), - wpe=nn.Embedding(config.block_size, config.n_embd), - drop=nn.Dropout(config.dropout), - h=nn.ModuleList([FineBlock(config) for _ in range(config.n_layer)]), - ln_f=nn.LayerNorm(config.n_embd), - ) - ) - self.lm_heads = nn.ModuleList( - [ - nn.Linear(config.n_embd, config.output_vocab_size, bias=False) - for _ in range(config.n_codes_given, self.n_codes_total) - ] - ) - for i in range(self.n_codes_total - config.n_codes_given): - self.transformer.wtes[i + 1].weight = self.lm_heads[i].weight - - def forward(self, pred_idx, idx): - device = idx.device - b, t, codes = idx.size() - assert ( - t <= self.config.block_size - ), f"Cannot forward sequence of length {t}, block size is only {self.config.block_size}" - assert pred_idx > 0, "cannot predict 0th codebook" - assert codes == self.n_codes_total, (b, t, codes) - pos = torch.arange(0, t, dtype=torch.long, device=device).unsqueeze(0) # shape (1, t) - - # forward the GPT model itself - tok_embs = [ - wte(idx[:, :, i]).unsqueeze(-1) for i, wte in enumerate(self.transformer.wtes) - ] # token embeddings of shape (b, t, n_embd) - tok_emb = torch.cat(tok_embs, dim=-1) - pos_emb = self.transformer.wpe(pos) # position embeddings of shape (1, t, n_embd) - x = tok_emb[:, :, :, : pred_idx + 1].sum(dim=-1) - x = self.transformer.drop(x + pos_emb) - for block in self.transformer.h: - x = block(x) - x = self.transformer.ln_f(x) - logits = self.lm_heads[pred_idx - self.config.n_codes_given](x) - return logits - - def get_num_params(self, non_embedding=True): - """ - Return the number of parameters in the model. - For non-embedding count (default), the position embeddings get subtracted. - The token embeddings would too, except due to the parameter sharing these - params are actually used as weights in the final layer, so we include them. - """ - n_params = sum(p.numel() for p in self.parameters()) - if non_embedding: - for wte in self.transformer.wtes: - n_params -= wte.weight.numel() - n_params -= self.transformer.wpe.weight.numel() - return n_params - - -@dataclass -class FineGPTConfig(GPTConfig): - n_codes_total: int = 8 - n_codes_given: int = 1 diff --git a/TTS/TTS/tts/layers/delightful_tts/__init__.py b/TTS/TTS/tts/layers/delightful_tts/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/layers/delightful_tts/acoustic_model.py b/TTS/TTS/tts/layers/delightful_tts/acoustic_model.py deleted file mode 100644 index c906b882e567fade64139a8b932c71d554117547..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/delightful_tts/acoustic_model.py +++ /dev/null @@ -1,563 +0,0 @@ -### credit: https://github.com/dunky11/voicesmith -from typing import Callable, Dict, Tuple - -import torch -import torch.nn.functional as F -from coqpit import Coqpit -from torch import nn - -from TTS.tts.layers.delightful_tts.conformer import Conformer -from TTS.tts.layers.delightful_tts.encoders import ( - PhonemeLevelProsodyEncoder, - UtteranceLevelProsodyEncoder, - get_mask_from_lengths, -) -from TTS.tts.layers.delightful_tts.energy_adaptor import EnergyAdaptor -from TTS.tts.layers.delightful_tts.networks import EmbeddingPadded, positional_encoding -from TTS.tts.layers.delightful_tts.phoneme_prosody_predictor import PhonemeProsodyPredictor -from TTS.tts.layers.delightful_tts.pitch_adaptor import PitchAdaptor -from TTS.tts.layers.delightful_tts.variance_predictor import VariancePredictor -from TTS.tts.layers.generic.aligner import AlignmentNetwork -from TTS.tts.utils.helpers import generate_path, maximum_path, sequence_mask - - -class AcousticModel(torch.nn.Module): - def __init__( - self, - args: "ModelArgs", - tokenizer: "TTSTokenizer" = None, - speaker_manager: "SpeakerManager" = None, - ): - super().__init__() - self.args = args - self.tokenizer = tokenizer - self.speaker_manager = speaker_manager - - self.init_multispeaker(args) - # self.set_embedding_dims() - - self.length_scale = ( - float(self.args.length_scale) if isinstance(self.args.length_scale, int) else self.args.length_scale - ) - - self.emb_dim = args.n_hidden_conformer_encoder - self.encoder = Conformer( - dim=self.args.n_hidden_conformer_encoder, - n_layers=self.args.n_layers_conformer_encoder, - n_heads=self.args.n_heads_conformer_encoder, - speaker_embedding_dim=self.embedded_speaker_dim, - p_dropout=self.args.dropout_conformer_encoder, - kernel_size_conv_mod=self.args.kernel_size_conv_mod_conformer_encoder, - lrelu_slope=self.args.lrelu_slope, - ) - self.pitch_adaptor = PitchAdaptor( - n_input=self.args.n_hidden_conformer_encoder, - n_hidden=self.args.n_hidden_variance_adaptor, - n_out=1, - kernel_size=self.args.kernel_size_variance_adaptor, - emb_kernel_size=self.args.emb_kernel_size_variance_adaptor, - p_dropout=self.args.dropout_variance_adaptor, - lrelu_slope=self.args.lrelu_slope, - ) - self.energy_adaptor = EnergyAdaptor( - channels_in=self.args.n_hidden_conformer_encoder, - channels_hidden=self.args.n_hidden_variance_adaptor, - channels_out=1, - kernel_size=self.args.kernel_size_variance_adaptor, - emb_kernel_size=self.args.emb_kernel_size_variance_adaptor, - dropout=self.args.dropout_variance_adaptor, - lrelu_slope=self.args.lrelu_slope, - ) - - self.aligner = AlignmentNetwork( - in_query_channels=self.args.out_channels, - in_key_channels=self.args.n_hidden_conformer_encoder, - ) - - self.duration_predictor = VariancePredictor( - channels_in=self.args.n_hidden_conformer_encoder, - channels=self.args.n_hidden_variance_adaptor, - channels_out=1, - kernel_size=self.args.kernel_size_variance_adaptor, - p_dropout=self.args.dropout_variance_adaptor, - lrelu_slope=self.args.lrelu_slope, - ) - - self.utterance_prosody_encoder = UtteranceLevelProsodyEncoder( - num_mels=self.args.num_mels, - ref_enc_filters=self.args.ref_enc_filters_reference_encoder, - ref_enc_size=self.args.ref_enc_size_reference_encoder, - ref_enc_gru_size=self.args.ref_enc_gru_size_reference_encoder, - ref_enc_strides=self.args.ref_enc_strides_reference_encoder, - n_hidden=self.args.n_hidden_conformer_encoder, - dropout=self.args.dropout_conformer_encoder, - bottleneck_size_u=self.args.bottleneck_size_u_reference_encoder, - token_num=self.args.token_num_reference_encoder, - ) - - self.utterance_prosody_predictor = PhonemeProsodyPredictor( - hidden_size=self.args.n_hidden_conformer_encoder, - kernel_size=self.args.predictor_kernel_size_reference_encoder, - dropout=self.args.dropout_conformer_encoder, - bottleneck_size=self.args.bottleneck_size_u_reference_encoder, - lrelu_slope=self.args.lrelu_slope, - ) - - self.phoneme_prosody_encoder = PhonemeLevelProsodyEncoder( - num_mels=self.args.num_mels, - ref_enc_filters=self.args.ref_enc_filters_reference_encoder, - ref_enc_size=self.args.ref_enc_size_reference_encoder, - ref_enc_gru_size=self.args.ref_enc_gru_size_reference_encoder, - ref_enc_strides=self.args.ref_enc_strides_reference_encoder, - n_hidden=self.args.n_hidden_conformer_encoder, - dropout=self.args.dropout_conformer_encoder, - bottleneck_size_p=self.args.bottleneck_size_p_reference_encoder, - n_heads=self.args.n_heads_conformer_encoder, - ) - - self.phoneme_prosody_predictor = PhonemeProsodyPredictor( - hidden_size=self.args.n_hidden_conformer_encoder, - kernel_size=self.args.predictor_kernel_size_reference_encoder, - dropout=self.args.dropout_conformer_encoder, - bottleneck_size=self.args.bottleneck_size_p_reference_encoder, - lrelu_slope=self.args.lrelu_slope, - ) - - self.u_bottle_out = nn.Linear( - self.args.bottleneck_size_u_reference_encoder, - self.args.n_hidden_conformer_encoder, - ) - - self.u_norm = nn.InstanceNorm1d(self.args.bottleneck_size_u_reference_encoder) - self.p_bottle_out = nn.Linear( - self.args.bottleneck_size_p_reference_encoder, - self.args.n_hidden_conformer_encoder, - ) - self.p_norm = nn.InstanceNorm1d( - self.args.bottleneck_size_p_reference_encoder, - ) - self.decoder = Conformer( - dim=self.args.n_hidden_conformer_decoder, - n_layers=self.args.n_layers_conformer_decoder, - n_heads=self.args.n_heads_conformer_decoder, - speaker_embedding_dim=self.embedded_speaker_dim, - p_dropout=self.args.dropout_conformer_decoder, - kernel_size_conv_mod=self.args.kernel_size_conv_mod_conformer_decoder, - lrelu_slope=self.args.lrelu_slope, - ) - - padding_idx = self.tokenizer.characters.pad_id - self.src_word_emb = EmbeddingPadded( - self.args.num_chars, self.args.n_hidden_conformer_encoder, padding_idx=padding_idx - ) - self.to_mel = nn.Linear( - self.args.n_hidden_conformer_decoder, - self.args.num_mels, - ) - - self.energy_scaler = torch.nn.BatchNorm1d(1, affine=False, track_running_stats=True, momentum=None) - self.energy_scaler.requires_grad_(False) - - def init_multispeaker(self, args: Coqpit): # pylint: disable=unused-argument - """Init for multi-speaker training.""" - self.embedded_speaker_dim = 0 - self.num_speakers = self.args.num_speakers - self.audio_transform = None - - if self.speaker_manager: - self.num_speakers = self.speaker_manager.num_speakers - - if self.args.use_speaker_embedding: - self._init_speaker_embedding() - - if self.args.use_d_vector_file: - self._init_d_vector() - - @staticmethod - def _set_cond_input(aux_input: Dict): - """Set the speaker conditioning input based on the multi-speaker mode.""" - sid, g, lid, durations = None, None, None, None - if "speaker_ids" in aux_input and aux_input["speaker_ids"] is not None: - sid = aux_input["speaker_ids"] - if sid.ndim == 0: - sid = sid.unsqueeze_(0) - if "d_vectors" in aux_input and aux_input["d_vectors"] is not None: - g = F.normalize(aux_input["d_vectors"]) # .unsqueeze_(-1) - if g.ndim == 2: - g = g # .unsqueeze_(0) # pylint: disable=self-assigning-variable - - if "durations" in aux_input and aux_input["durations"] is not None: - durations = aux_input["durations"] - - return sid, g, lid, durations - - def get_aux_input(self, aux_input: Dict): - sid, g, lid, _ = self._set_cond_input(aux_input) - return {"speaker_ids": sid, "style_wav": None, "d_vectors": g, "language_ids": lid} - - def _set_speaker_input(self, aux_input: Dict): - d_vectors = aux_input.get("d_vectors", None) - speaker_ids = aux_input.get("speaker_ids", None) - - if d_vectors is not None and speaker_ids is not None: - raise ValueError("[!] Cannot use d-vectors and speaker-ids together.") - - if speaker_ids is not None and not hasattr(self, "emb_g"): - raise ValueError("[!] Cannot use speaker-ids without enabling speaker embedding.") - - g = speaker_ids if speaker_ids is not None else d_vectors - return g - - # def set_embedding_dims(self): - # if self.embedded_speaker_dim > 0: - # self.embedding_dims = self.embedded_speaker_dim - # else: - # self.embedding_dims = 0 - - def _init_speaker_embedding(self): - # pylint: disable=attribute-defined-outside-init - if self.num_speakers > 0: - print(" > initialization of speaker-embedding layers.") - self.embedded_speaker_dim = self.args.speaker_embedding_channels - self.emb_g = nn.Embedding(self.num_speakers, self.embedded_speaker_dim) - - def _init_d_vector(self): - # pylint: disable=attribute-defined-outside-init - if hasattr(self, "emb_g"): - raise ValueError("[!] Speaker embedding layer already initialized before d_vector settings.") - self.embedded_speaker_dim = self.args.d_vector_dim - - @staticmethod - def generate_attn(dr, x_mask, y_mask=None): - """Generate an attention mask from the linear scale durations. - - Args: - dr (Tensor): Linear scale durations. - x_mask (Tensor): Mask for the input (character) sequence. - y_mask (Tensor): Mask for the output (spectrogram) sequence. Compute it from the predicted durations - if None. Defaults to None. - - Shapes - - dr: :math:`(B, T_{en})` - - x_mask: :math:`(B, T_{en})` - - y_mask: :math:`(B, T_{de})` - """ - # compute decode mask from the durations - if y_mask is None: - y_lengths = dr.sum(1).long() - y_lengths[y_lengths < 1] = 1 - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(dr.dtype) - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - attn = generate_path(dr, attn_mask.squeeze(1)).to(dr.dtype) - return attn - - def _expand_encoder_with_durations( - self, - o_en: torch.FloatTensor, - dr: torch.IntTensor, - x_mask: torch.IntTensor, - y_lengths: torch.IntTensor, - ): - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(o_en.dtype) - attn = self.generate_attn(dr, x_mask, y_mask) - o_en_ex = torch.einsum("kmn, kjm -> kjn", [attn.float(), o_en]) - return y_mask, o_en_ex, attn.transpose(1, 2) - - def _forward_aligner( - self, - x: torch.FloatTensor, - y: torch.FloatTensor, - x_mask: torch.IntTensor, - y_mask: torch.IntTensor, - attn_priors: torch.FloatTensor, - ) -> Tuple[torch.IntTensor, torch.FloatTensor, torch.FloatTensor, torch.FloatTensor]: - """Aligner forward pass. - - 1. Compute a mask to apply to the attention map. - 2. Run the alignment network. - 3. Apply MAS to compute the hard alignment map. - 4. Compute the durations from the hard alignment map. - - Args: - x (torch.FloatTensor): Input sequence. - y (torch.FloatTensor): Output sequence. - x_mask (torch.IntTensor): Input sequence mask. - y_mask (torch.IntTensor): Output sequence mask. - attn_priors (torch.FloatTensor): Prior for the aligner network map. - - Returns: - Tuple[torch.IntTensor, torch.FloatTensor, torch.FloatTensor, torch.FloatTensor]: - Durations from the hard alignment map, soft alignment potentials, log scale alignment potentials, - hard alignment map. - - Shapes: - - x: :math:`[B, T_en, C_en]` - - y: :math:`[B, T_de, C_de]` - - x_mask: :math:`[B, 1, T_en]` - - y_mask: :math:`[B, 1, T_de]` - - attn_priors: :math:`[B, T_de, T_en]` - - - aligner_durations: :math:`[B, T_en]` - - aligner_soft: :math:`[B, T_de, T_en]` - - aligner_logprob: :math:`[B, 1, T_de, T_en]` - - aligner_mas: :math:`[B, T_de, T_en]` - """ - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) # [B, 1, T_en, T_de] - aligner_soft, aligner_logprob = self.aligner(y.transpose(1, 2), x.transpose(1, 2), x_mask, attn_priors) - aligner_mas = maximum_path( - aligner_soft.squeeze(1).transpose(1, 2).contiguous(), attn_mask.squeeze(1).contiguous() - ) - aligner_durations = torch.sum(aligner_mas, -1).int() - aligner_soft = aligner_soft.squeeze(1) # [B, T_max2, T_max] - aligner_mas = aligner_mas.transpose(1, 2) # [B, T_max, T_max2] -> [B, T_max2, T_max] - return aligner_durations, aligner_soft, aligner_logprob, aligner_mas - - def average_utterance_prosody( # pylint: disable=no-self-use - self, u_prosody_pred: torch.Tensor, src_mask: torch.Tensor - ) -> torch.Tensor: - lengths = ((~src_mask) * 1.0).sum(1) - u_prosody_pred = u_prosody_pred.sum(1, keepdim=True) / lengths.view(-1, 1, 1) - return u_prosody_pred - - def forward( - self, - tokens: torch.Tensor, - src_lens: torch.Tensor, - mels: torch.Tensor, - mel_lens: torch.Tensor, - pitches: torch.Tensor, - energies: torch.Tensor, - attn_priors: torch.Tensor, - use_ground_truth: bool = True, - d_vectors: torch.Tensor = None, - speaker_idx: torch.Tensor = None, - ) -> Dict[str, torch.Tensor]: - sid, g, lid, _ = self._set_cond_input( # pylint: disable=unused-variable - {"d_vectors": d_vectors, "speaker_ids": speaker_idx} - ) # pylint: disable=unused-variable - - src_mask = get_mask_from_lengths(src_lens) # [B, T_src] - mel_mask = get_mask_from_lengths(mel_lens) # [B, T_mel] - - # Token embeddings - token_embeddings = self.src_word_emb(tokens) # [B, T_src, C_hidden] - token_embeddings = token_embeddings.masked_fill(src_mask.unsqueeze(-1), 0.0) - - # Alignment network and durations - aligner_durations, aligner_soft, aligner_logprob, aligner_mas = self._forward_aligner( - x=token_embeddings, - y=mels.transpose(1, 2), - x_mask=~src_mask[:, None], - y_mask=~mel_mask[:, None], - attn_priors=attn_priors, - ) - dr = aligner_durations # [B, T_en] - - # Embeddings - speaker_embedding = None - if d_vectors is not None: - speaker_embedding = g - elif speaker_idx is not None: - speaker_embedding = F.normalize(self.emb_g(sid)) - - pos_encoding = positional_encoding( - self.emb_dim, - max(token_embeddings.shape[1], max(mel_lens)), - device=token_embeddings.device, - ) - encoder_outputs = self.encoder( - token_embeddings, - src_mask, - speaker_embedding=speaker_embedding, - encoding=pos_encoding, - ) - - u_prosody_ref = self.u_norm(self.utterance_prosody_encoder(mels=mels, mel_lens=mel_lens)) - u_prosody_pred = self.u_norm( - self.average_utterance_prosody( - u_prosody_pred=self.utterance_prosody_predictor(x=encoder_outputs, mask=src_mask), - src_mask=src_mask, - ) - ) - - if use_ground_truth: - encoder_outputs = encoder_outputs + self.u_bottle_out(u_prosody_ref) - else: - encoder_outputs = encoder_outputs + self.u_bottle_out(u_prosody_pred) - - p_prosody_ref = self.p_norm( - self.phoneme_prosody_encoder( - x=encoder_outputs, src_mask=src_mask, mels=mels, mel_lens=mel_lens, encoding=pos_encoding - ) - ) - p_prosody_pred = self.p_norm(self.phoneme_prosody_predictor(x=encoder_outputs, mask=src_mask)) - - if use_ground_truth: - encoder_outputs = encoder_outputs + self.p_bottle_out(p_prosody_ref) - else: - encoder_outputs = encoder_outputs + self.p_bottle_out(p_prosody_pred) - - encoder_outputs_res = encoder_outputs - - pitch_pred, avg_pitch_target, pitch_emb = self.pitch_adaptor.get_pitch_embedding_train( - x=encoder_outputs, - target=pitches, - dr=dr, - mask=src_mask, - ) - - energy_pred, avg_energy_target, energy_emb = self.energy_adaptor.get_energy_embedding_train( - x=encoder_outputs, - target=energies, - dr=dr, - mask=src_mask, - ) - - encoder_outputs = encoder_outputs.transpose(1, 2) + pitch_emb + energy_emb - log_duration_prediction = self.duration_predictor(x=encoder_outputs_res.detach(), mask=src_mask) - - mel_pred_mask, encoder_outputs_ex, alignments = self._expand_encoder_with_durations( - o_en=encoder_outputs, y_lengths=mel_lens, dr=dr, x_mask=~src_mask[:, None] - ) - - x = self.decoder( - encoder_outputs_ex.transpose(1, 2), - mel_mask, - speaker_embedding=speaker_embedding, - encoding=pos_encoding, - ) - x = self.to_mel(x) - - dr = torch.log(dr + 1) - - dr_pred = torch.exp(log_duration_prediction) - 1 - alignments_dp = self.generate_attn(dr_pred, src_mask.unsqueeze(1), mel_pred_mask) # [B, T_max, T_max2'] - - return { - "model_outputs": x, - "pitch_pred": pitch_pred, - "pitch_target": avg_pitch_target, - "energy_pred": energy_pred, - "energy_target": avg_energy_target, - "u_prosody_pred": u_prosody_pred, - "u_prosody_ref": u_prosody_ref, - "p_prosody_pred": p_prosody_pred, - "p_prosody_ref": p_prosody_ref, - "alignments_dp": alignments_dp, - "alignments": alignments, # [B, T_de, T_en] - "aligner_soft": aligner_soft, - "aligner_mas": aligner_mas, - "aligner_durations": aligner_durations, - "aligner_logprob": aligner_logprob, - "dr_log_pred": log_duration_prediction.squeeze(1), # [B, T] - "dr_log_target": dr.squeeze(1), # [B, T] - "spk_emb": speaker_embedding, - } - - @torch.no_grad() - def inference( - self, - tokens: torch.Tensor, - speaker_idx: torch.Tensor, - p_control: float = None, # TODO # pylint: disable=unused-argument - d_control: float = None, # TODO # pylint: disable=unused-argument - d_vectors: torch.Tensor = None, - pitch_transform: Callable = None, - energy_transform: Callable = None, - ) -> torch.Tensor: - src_mask = get_mask_from_lengths(torch.tensor([tokens.shape[1]], dtype=torch.int64, device=tokens.device)) - src_lens = torch.tensor(tokens.shape[1:2]).to(tokens.device) # pylint: disable=unused-variable - sid, g, lid, _ = self._set_cond_input( # pylint: disable=unused-variable - {"d_vectors": d_vectors, "speaker_ids": speaker_idx} - ) # pylint: disable=unused-variable - - token_embeddings = self.src_word_emb(tokens) - token_embeddings = token_embeddings.masked_fill(src_mask.unsqueeze(-1), 0.0) - - # Embeddings - speaker_embedding = None - if d_vectors is not None: - speaker_embedding = g - elif speaker_idx is not None: - speaker_embedding = F.normalize(self.emb_g(sid)) - - pos_encoding = positional_encoding( - self.emb_dim, - token_embeddings.shape[1], - device=token_embeddings.device, - ) - encoder_outputs = self.encoder( - token_embeddings, - src_mask, - speaker_embedding=speaker_embedding, - encoding=pos_encoding, - ) - - u_prosody_pred = self.u_norm( - self.average_utterance_prosody( - u_prosody_pred=self.utterance_prosody_predictor(x=encoder_outputs, mask=src_mask), - src_mask=src_mask, - ) - ) - encoder_outputs = encoder_outputs + self.u_bottle_out(u_prosody_pred).expand_as(encoder_outputs) - - p_prosody_pred = self.p_norm( - self.phoneme_prosody_predictor( - x=encoder_outputs, - mask=src_mask, - ) - ) - encoder_outputs = encoder_outputs + self.p_bottle_out(p_prosody_pred).expand_as(encoder_outputs) - - encoder_outputs_res = encoder_outputs - - pitch_emb_pred, pitch_pred = self.pitch_adaptor.get_pitch_embedding( - x=encoder_outputs, - mask=src_mask, - pitch_transform=pitch_transform, - pitch_mean=self.pitch_mean if hasattr(self, "pitch_mean") else None, - pitch_std=self.pitch_std if hasattr(self, "pitch_std") else None, - ) - - energy_emb_pred, energy_pred = self.energy_adaptor.get_energy_embedding( - x=encoder_outputs, mask=src_mask, energy_transform=energy_transform - ) - encoder_outputs = encoder_outputs.transpose(1, 2) + pitch_emb_pred + energy_emb_pred - - log_duration_pred = self.duration_predictor( - x=encoder_outputs_res.detach(), mask=src_mask - ) # [B, C_hidden, T_src] -> [B, T_src] - duration_pred = (torch.exp(log_duration_pred) - 1) * (~src_mask) * self.length_scale # -> [B, T_src] - duration_pred[duration_pred < 1] = 1.0 # -> [B, T_src] - duration_pred = torch.round(duration_pred) # -> [B, T_src] - mel_lens = duration_pred.sum(1) # -> [B,] - - _, encoder_outputs_ex, alignments = self._expand_encoder_with_durations( - o_en=encoder_outputs, y_lengths=mel_lens, dr=duration_pred.squeeze(1), x_mask=~src_mask[:, None] - ) - - mel_mask = get_mask_from_lengths( - torch.tensor([encoder_outputs_ex.shape[2]], dtype=torch.int64, device=encoder_outputs_ex.device) - ) - - if encoder_outputs_ex.shape[1] > pos_encoding.shape[1]: - encoding = positional_encoding(self.emb_dim, encoder_outputs_ex.shape[2], device=tokens.device) - - # [B, C_hidden, T_src], [B, 1, T_src], [B, C_emb], [B, T_src, C_hidden] -> [B, C_hidden, T_src] - x = self.decoder( - encoder_outputs_ex.transpose(1, 2), - mel_mask, - speaker_embedding=speaker_embedding, - encoding=encoding, - ) - x = self.to_mel(x) - outputs = { - "model_outputs": x, - "alignments": alignments, - # "pitch": pitch_emb_pred, - "durations": duration_pred, - "pitch": pitch_pred, - "energy": energy_pred, - "spk_emb": speaker_embedding, - } - return outputs diff --git a/TTS/TTS/tts/layers/delightful_tts/conformer.py b/TTS/TTS/tts/layers/delightful_tts/conformer.py deleted file mode 100644 index b2175b3b965c6b100846e87d405a753dc272c9e7..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/delightful_tts/conformer.py +++ /dev/null @@ -1,450 +0,0 @@ -### credit: https://github.com/dunky11/voicesmith -import math -from typing import Tuple - -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import -import torch.nn.functional as F - -from TTS.tts.layers.delightful_tts.conv_layers import Conv1dGLU, DepthWiseConv1d, PointwiseConv1d -from TTS.tts.layers.delightful_tts.networks import GLUActivation - - -def calc_same_padding(kernel_size: int) -> Tuple[int, int]: - pad = kernel_size // 2 - return (pad, pad - (kernel_size + 1) % 2) - - -class Conformer(nn.Module): - def __init__( - self, - dim: int, - n_layers: int, - n_heads: int, - speaker_embedding_dim: int, - p_dropout: float, - kernel_size_conv_mod: int, - lrelu_slope: float, - ): - """ - A Transformer variant that integrates both CNNs and Transformers components. - Conformer proposes a novel combination of self-attention and convolution, in which self-attention - learns the global interaction while the convolutions efficiently capture the local correlations. - - Args: - dim (int): Number of the dimensions for the model. - n_layers (int): Number of model layers. - n_heads (int): The number of attention heads. - speaker_embedding_dim (int): Number of speaker embedding dimensions. - p_dropout (float): Probabilty of dropout. - kernel_size_conv_mod (int): Size of kernels for convolution modules. - - Inputs: inputs, mask - - **inputs** (batch, time, dim): Tensor containing input vector - - **encoding** (batch, time, dim): Positional embedding tensor - - **mask** (batch, 1, time2) or (batch, time1, time2): Tensor containing indices to be masked - Returns: - - **outputs** (batch, time, dim): Tensor produced by Conformer Encoder. - """ - super().__init__() - d_k = d_v = dim // n_heads - self.layer_stack = nn.ModuleList( - [ - ConformerBlock( - dim, - n_heads, - d_k, - d_v, - kernel_size_conv_mod=kernel_size_conv_mod, - dropout=p_dropout, - speaker_embedding_dim=speaker_embedding_dim, - lrelu_slope=lrelu_slope, - ) - for _ in range(n_layers) - ] - ) - - def forward( - self, - x: torch.Tensor, - mask: torch.Tensor, - speaker_embedding: torch.Tensor, - encoding: torch.Tensor, - ) -> torch.Tensor: - """ - Shapes: - - x: :math:`[B, T_src, C]` - - mask: :math: `[B]` - - speaker_embedding: :math: `[B, C]` - - encoding: :math: `[B, T_max2, C]` - """ - - attn_mask = mask.view((mask.shape[0], 1, 1, mask.shape[1])) - for enc_layer in self.layer_stack: - x = enc_layer( - x, - mask=mask, - slf_attn_mask=attn_mask, - speaker_embedding=speaker_embedding, - encoding=encoding, - ) - return x - - -class ConformerBlock(torch.nn.Module): - def __init__( - self, - d_model: int, - n_head: int, - d_k: int, # pylint: disable=unused-argument - d_v: int, # pylint: disable=unused-argument - kernel_size_conv_mod: int, - speaker_embedding_dim: int, - dropout: float, - lrelu_slope: float = 0.3, - ): - """ - A Conformer block is composed of four modules stacked together, - A feed-forward module, a self-attention module, a convolution module, - and a second feed-forward module in the end. The block starts with two Feed forward - modules sandwiching the Multi-Headed Self-Attention module and the Conv module. - - Args: - d_model (int): The dimension of model - n_head (int): The number of attention heads. - kernel_size_conv_mod (int): Size of kernels for convolution modules. - speaker_embedding_dim (int): Number of speaker embedding dimensions. - emotion_embedding_dim (int): Number of emotion embedding dimensions. - dropout (float): Probabilty of dropout. - - Inputs: inputs, mask - - **inputs** (batch, time, dim): Tensor containing input vector - - **encoding** (batch, time, dim): Positional embedding tensor - - **slf_attn_mask** (batch, 1, 1, time1): Tensor containing indices to be masked in self attention module - - **mask** (batch, 1, time2) or (batch, time1, time2): Tensor containing indices to be masked - Returns: - - **outputs** (batch, time, dim): Tensor produced by the Conformer Block. - """ - super().__init__() - if isinstance(speaker_embedding_dim, int): - self.conditioning = Conv1dGLU( - d_model=d_model, - kernel_size=kernel_size_conv_mod, - padding=kernel_size_conv_mod // 2, - embedding_dim=speaker_embedding_dim, - ) - - self.ff = FeedForward(d_model=d_model, dropout=dropout, kernel_size=3, lrelu_slope=lrelu_slope) - self.conformer_conv_1 = ConformerConvModule( - d_model, kernel_size=kernel_size_conv_mod, dropout=dropout, lrelu_slope=lrelu_slope - ) - self.ln = nn.LayerNorm(d_model) - self.slf_attn = ConformerMultiHeadedSelfAttention(d_model=d_model, num_heads=n_head, dropout_p=dropout) - self.conformer_conv_2 = ConformerConvModule( - d_model, kernel_size=kernel_size_conv_mod, dropout=dropout, lrelu_slope=lrelu_slope - ) - - def forward( - self, - x: torch.Tensor, - speaker_embedding: torch.Tensor, - mask: torch.Tensor, - slf_attn_mask: torch.Tensor, - encoding: torch.Tensor, - ) -> torch.Tensor: - """ - Shapes: - - x: :math:`[B, T_src, C]` - - mask: :math: `[B]` - - slf_attn_mask: :math: `[B, 1, 1, T_src]` - - speaker_embedding: :math: `[B, C]` - - emotion_embedding: :math: `[B, C]` - - encoding: :math: `[B, T_max2, C]` - """ - if speaker_embedding is not None: - x = self.conditioning(x, embeddings=speaker_embedding) - x = self.ff(x) + x - x = self.conformer_conv_1(x) + x - res = x - x = self.ln(x) - x, _ = self.slf_attn(query=x, key=x, value=x, mask=slf_attn_mask, encoding=encoding) - x = x + res - x = x.masked_fill(mask.unsqueeze(-1), 0) - - x = self.conformer_conv_2(x) + x - return x - - -class FeedForward(nn.Module): - def __init__( - self, - d_model: int, - kernel_size: int, - dropout: float, - lrelu_slope: float, - expansion_factor: int = 4, - ): - """ - Feed Forward module for conformer block. - - Args: - d_model (int): The dimension of model. - kernel_size (int): Size of the kernels for conv layers. - dropout (float): probability of dropout. - expansion_factor (int): The factor by which to project the number of channels. - lrelu_slope (int): the negative slope factor for the leaky relu activation. - - Inputs: inputs - - **inputs** (batch, time, dim): Tensor containing input vector - Returns: - - **outputs** (batch, time, dim): Tensor produced by the feed forward module. - """ - super().__init__() - self.dropout = nn.Dropout(dropout) - self.ln = nn.LayerNorm(d_model) - self.conv_1 = nn.Conv1d( - d_model, - d_model * expansion_factor, - kernel_size=kernel_size, - padding=kernel_size // 2, - ) - self.act = nn.LeakyReLU(lrelu_slope) - self.conv_2 = nn.Conv1d(d_model * expansion_factor, d_model, kernel_size=1) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - """ - Shapes: - x: :math: `[B, T, C]` - """ - x = self.ln(x) - x = x.permute((0, 2, 1)) - x = self.conv_1(x) - x = x.permute((0, 2, 1)) - x = self.act(x) - x = self.dropout(x) - x = x.permute((0, 2, 1)) - x = self.conv_2(x) - x = x.permute((0, 2, 1)) - x = self.dropout(x) - x = 0.5 * x - return x - - -class ConformerConvModule(nn.Module): - def __init__( - self, - d_model: int, - expansion_factor: int = 2, - kernel_size: int = 7, - dropout: float = 0.1, - lrelu_slope: float = 0.3, - ): - """ - Convolution module for conformer. Starts with a gating machanism. - a pointwise convolution and a gated linear unit (GLU). This is followed - by a single 1-D depthwise convolution layer. Batchnorm is deployed just after the convolution - to help with training. it also contains an expansion factor to project the number of channels. - - Args: - d_model (int): The dimension of model. - expansion_factor (int): The factor by which to project the number of channels. - kernel_size (int): Size of kernels for convolution modules. - dropout (float): Probabilty of dropout. - lrelu_slope (float): The slope coefficient for leaky relu activation. - - Inputs: inputs - - **inputs** (batch, time, dim): Tensor containing input vector - Returns: - - **outputs** (batch, time, dim): Tensor produced by the conv module. - - """ - super().__init__() - inner_dim = d_model * expansion_factor - self.ln_1 = nn.LayerNorm(d_model) - self.conv_1 = PointwiseConv1d(d_model, inner_dim * 2) - self.conv_act = GLUActivation(slope=lrelu_slope) - self.depthwise = DepthWiseConv1d( - inner_dim, - inner_dim, - kernel_size=kernel_size, - padding=calc_same_padding(kernel_size)[0], - ) - self.ln_2 = nn.GroupNorm(1, inner_dim) - self.activation = nn.LeakyReLU(lrelu_slope) - self.conv_2 = PointwiseConv1d(inner_dim, d_model) - self.dropout = nn.Dropout(dropout) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - """ - Shapes: - x: :math: `[B, T, C]` - """ - x = self.ln_1(x) - x = x.permute(0, 2, 1) - x = self.conv_1(x) - x = self.conv_act(x) - x = self.depthwise(x) - x = self.ln_2(x) - x = self.activation(x) - x = self.conv_2(x) - x = x.permute(0, 2, 1) - x = self.dropout(x) - return x - - -class ConformerMultiHeadedSelfAttention(nn.Module): - """ - Conformer employ multi-headed self-attention (MHSA) while integrating an important technique from Transformer-XL, - the relative sinusoidal positional encoding scheme. The relative positional encoding allows the self-attention - module to generalize better on different input length and the resulting encoder is more robust to the variance of - the utterance length. Conformer use prenorm residual units with dropout which helps training - and regularizing deeper models. - Args: - d_model (int): The dimension of model - num_heads (int): The number of attention heads. - dropout_p (float): probability of dropout - Inputs: inputs, mask - - **inputs** (batch, time, dim): Tensor containing input vector - - **mask** (batch, 1, time2) or (batch, time1, time2): Tensor containing indices to be masked - Returns: - - **outputs** (batch, time, dim): Tensor produces by relative multi headed self attention module. - """ - - def __init__(self, d_model: int, num_heads: int, dropout_p: float): - super().__init__() - self.attention = RelativeMultiHeadAttention(d_model=d_model, num_heads=num_heads) - self.dropout = nn.Dropout(p=dropout_p) - - def forward( - self, - query: torch.Tensor, - key: torch.Tensor, - value: torch.Tensor, - mask: torch.Tensor, - encoding: torch.Tensor, - ) -> Tuple[torch.Tensor, torch.Tensor]: - batch_size, seq_length, _ = key.size() # pylint: disable=unused-variable - encoding = encoding[:, : key.shape[1]] - encoding = encoding.repeat(batch_size, 1, 1) - outputs, attn = self.attention(query, key, value, pos_embedding=encoding, mask=mask) - outputs = self.dropout(outputs) - return outputs, attn - - -class RelativeMultiHeadAttention(nn.Module): - """ - Multi-head attention with relative positional encoding. - This concept was proposed in the "Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context" - Args: - d_model (int): The dimension of model - num_heads (int): The number of attention heads. - Inputs: query, key, value, pos_embedding, mask - - **query** (batch, time, dim): Tensor containing query vector - - **key** (batch, time, dim): Tensor containing key vector - - **value** (batch, time, dim): Tensor containing value vector - - **pos_embedding** (batch, time, dim): Positional embedding tensor - - **mask** (batch, 1, time2) or (batch, time1, time2): Tensor containing indices to be masked - Returns: - - **outputs**: Tensor produces by relative multi head attention module. - """ - - def __init__( - self, - d_model: int = 512, - num_heads: int = 16, - ): - super().__init__() - assert d_model % num_heads == 0, "d_model % num_heads should be zero." - self.d_model = d_model - self.d_head = int(d_model / num_heads) - self.num_heads = num_heads - self.sqrt_dim = math.sqrt(d_model) - - self.query_proj = nn.Linear(d_model, d_model) - self.key_proj = nn.Linear(d_model, d_model, bias=False) - self.value_proj = nn.Linear(d_model, d_model, bias=False) - self.pos_proj = nn.Linear(d_model, d_model, bias=False) - - self.u_bias = nn.Parameter(torch.Tensor(self.num_heads, self.d_head)) - self.v_bias = nn.Parameter(torch.Tensor(self.num_heads, self.d_head)) - torch.nn.init.xavier_uniform_(self.u_bias) - torch.nn.init.xavier_uniform_(self.v_bias) - self.out_proj = nn.Linear(d_model, d_model) - - def forward( - self, - query: torch.Tensor, - key: torch.Tensor, - value: torch.Tensor, - pos_embedding: torch.Tensor, - mask: torch.Tensor, - ) -> Tuple[torch.Tensor, torch.Tensor]: - batch_size = query.shape[0] - query = self.query_proj(query).view(batch_size, -1, self.num_heads, self.d_head) - key = self.key_proj(key).view(batch_size, -1, self.num_heads, self.d_head).permute(0, 2, 1, 3) - value = self.value_proj(value).view(batch_size, -1, self.num_heads, self.d_head).permute(0, 2, 1, 3) - pos_embedding = self.pos_proj(pos_embedding).view(batch_size, -1, self.num_heads, self.d_head) - u_bias = self.u_bias.expand_as(query) - v_bias = self.v_bias.expand_as(query) - a = (query + u_bias).transpose(1, 2) - content_score = a @ key.transpose(2, 3) - b = (query + v_bias).transpose(1, 2) - pos_score = b @ pos_embedding.permute(0, 2, 3, 1) - pos_score = self._relative_shift(pos_score) - - score = content_score + pos_score - score = score * (1.0 / self.sqrt_dim) - - score.masked_fill_(mask, -1e9) - - attn = F.softmax(score, -1) - - context = (attn @ value).transpose(1, 2) - context = context.contiguous().view(batch_size, -1, self.d_model) - - return self.out_proj(context), attn - - def _relative_shift(self, pos_score: torch.Tensor) -> torch.Tensor: # pylint: disable=no-self-use - batch_size, num_heads, seq_length1, seq_length2 = pos_score.size() - zeros = torch.zeros((batch_size, num_heads, seq_length1, 1), device=pos_score.device) - padded_pos_score = torch.cat([zeros, pos_score], dim=-1) - padded_pos_score = padded_pos_score.view(batch_size, num_heads, seq_length2 + 1, seq_length1) - pos_score = padded_pos_score[:, :, 1:].view_as(pos_score) - return pos_score - - -class MultiHeadAttention(nn.Module): - """ - input: - query --- [N, T_q, query_dim] - key --- [N, T_k, key_dim] - output: - out --- [N, T_q, num_units] - """ - - def __init__(self, query_dim: int, key_dim: int, num_units: int, num_heads: int): - super().__init__() - self.num_units = num_units - self.num_heads = num_heads - self.key_dim = key_dim - - self.W_query = nn.Linear(in_features=query_dim, out_features=num_units, bias=False) - self.W_key = nn.Linear(in_features=key_dim, out_features=num_units, bias=False) - self.W_value = nn.Linear(in_features=key_dim, out_features=num_units, bias=False) - - def forward(self, query: torch.Tensor, key: torch.Tensor) -> torch.Tensor: - querys = self.W_query(query) # [N, T_q, num_units] - keys = self.W_key(key) # [N, T_k, num_units] - values = self.W_value(key) - split_size = self.num_units // self.num_heads - querys = torch.stack(torch.split(querys, split_size, dim=2), dim=0) # [h, N, T_q, num_units/h] - keys = torch.stack(torch.split(keys, split_size, dim=2), dim=0) # [h, N, T_k, num_units/h] - values = torch.stack(torch.split(values, split_size, dim=2), dim=0) # [h, N, T_k, num_units/h] - # score = softmax(QK^T / (d_k ** 0.5)) - scores = torch.matmul(querys, keys.transpose(2, 3)) # [h, N, T_q, T_k] - scores = scores / (self.key_dim**0.5) - scores = F.softmax(scores, dim=3) - # out = score * V - out = torch.matmul(scores, values) # [h, N, T_q, num_units/h] - out = torch.cat(torch.split(out, 1, dim=0), dim=3).squeeze(0) # [N, T_q, num_units] - return out diff --git a/TTS/TTS/tts/layers/delightful_tts/conv_layers.py b/TTS/TTS/tts/layers/delightful_tts/conv_layers.py deleted file mode 100644 index 354a0336a1f031edc839c103cc01b45fb7642025..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/delightful_tts/conv_layers.py +++ /dev/null @@ -1,670 +0,0 @@ -from typing import Tuple - -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import -import torch.nn.functional as F - -from TTS.tts.layers.delightful_tts.kernel_predictor import KernelPredictor - - -def calc_same_padding(kernel_size: int) -> Tuple[int, int]: - pad = kernel_size // 2 - return (pad, pad - (kernel_size + 1) % 2) - - -class ConvNorm(nn.Module): - """A 1-dimensional convolutional layer with optional weight normalization. - - This layer wraps a 1D convolutional layer from PyTorch and applies - optional weight normalization. The layer can be used in a similar way to - the convolutional layers in PyTorch's `torch.nn` module. - - Args: - in_channels (int): The number of channels in the input signal. - out_channels (int): The number of channels in the output signal. - kernel_size (int, optional): The size of the convolving kernel. - Defaults to 1. - stride (int, optional): The stride of the convolution. Defaults to 1. - padding (int, optional): Zero-padding added to both sides of the input. - If `None`, the padding will be calculated so that the output has - the same length as the input. Defaults to `None`. - dilation (int, optional): Spacing between kernel elements. Defaults to 1. - bias (bool, optional): If `True`, add bias after convolution. Defaults to `True`. - w_init_gain (str, optional): The weight initialization function to use. - Can be either 'linear' or 'relu'. Defaults to 'linear'. - use_weight_norm (bool, optional): If `True`, apply weight normalization - to the convolutional weights. Defaults to `False`. - - Shapes: - - Input: :math:`[N, D, T]` - - - Output: :math:`[N, out_dim, T]` where `out_dim` is the number of output dimensions. - - """ - - def __init__( - self, - in_channels, - out_channels, - kernel_size=1, - stride=1, - padding=None, - dilation=1, - bias=True, - w_init_gain="linear", - use_weight_norm=False, - ): - super(ConvNorm, self).__init__() # pylint: disable=super-with-arguments - if padding is None: - assert kernel_size % 2 == 1 - padding = int(dilation * (kernel_size - 1) / 2) - self.kernel_size = kernel_size - self.dilation = dilation - self.use_weight_norm = use_weight_norm - conv_fn = nn.Conv1d - self.conv = conv_fn( - in_channels, - out_channels, - kernel_size=kernel_size, - stride=stride, - padding=padding, - dilation=dilation, - bias=bias, - ) - nn.init.xavier_uniform_(self.conv.weight, gain=nn.init.calculate_gain(w_init_gain)) - if self.use_weight_norm: - self.conv = nn.utils.weight_norm(self.conv) - - def forward(self, signal, mask=None): - conv_signal = self.conv(signal) - if mask is not None: - # always re-zero output if mask is - # available to match zero-padding - conv_signal = conv_signal * mask - return conv_signal - - -class ConvLSTMLinear(nn.Module): - def __init__( - self, - in_dim, - out_dim, - n_layers=2, - n_channels=256, - kernel_size=3, - p_dropout=0.1, - lstm_type="bilstm", - use_linear=True, - ): - super(ConvLSTMLinear, self).__init__() # pylint: disable=super-with-arguments - self.out_dim = out_dim - self.lstm_type = lstm_type - self.use_linear = use_linear - self.dropout = nn.Dropout(p=p_dropout) - - convolutions = [] - for i in range(n_layers): - conv_layer = ConvNorm( - in_dim if i == 0 else n_channels, - n_channels, - kernel_size=kernel_size, - stride=1, - padding=int((kernel_size - 1) / 2), - dilation=1, - w_init_gain="relu", - ) - conv_layer = nn.utils.weight_norm(conv_layer.conv, name="weight") - convolutions.append(conv_layer) - - self.convolutions = nn.ModuleList(convolutions) - - if not self.use_linear: - n_channels = out_dim - - if self.lstm_type != "": - use_bilstm = False - lstm_channels = n_channels - if self.lstm_type == "bilstm": - use_bilstm = True - lstm_channels = int(n_channels // 2) - - self.bilstm = nn.LSTM(n_channels, lstm_channels, 1, batch_first=True, bidirectional=use_bilstm) - lstm_norm_fn_pntr = nn.utils.spectral_norm - self.bilstm = lstm_norm_fn_pntr(self.bilstm, "weight_hh_l0") - if self.lstm_type == "bilstm": - self.bilstm = lstm_norm_fn_pntr(self.bilstm, "weight_hh_l0_reverse") - - if self.use_linear: - self.dense = nn.Linear(n_channels, out_dim) - - def run_padded_sequence(self, context, lens): - context_embedded = [] - for b_ind in range(context.size()[0]): # TODO: speed up - curr_context = context[b_ind : b_ind + 1, :, : lens[b_ind]].clone() - for conv in self.convolutions: - curr_context = self.dropout(F.relu(conv(curr_context))) - context_embedded.append(curr_context[0].transpose(0, 1)) - context = nn.utils.rnn.pad_sequence(context_embedded, batch_first=True) - return context - - def run_unsorted_inputs(self, fn, context, lens): # pylint: disable=no-self-use - lens_sorted, ids_sorted = torch.sort(lens, descending=True) - unsort_ids = [0] * lens.size(0) - for i in range(len(ids_sorted)): # pylint: disable=consider-using-enumerate - unsort_ids[ids_sorted[i]] = i - lens_sorted = lens_sorted.long().cpu() - - context = context[ids_sorted] - context = nn.utils.rnn.pack_padded_sequence(context, lens_sorted, batch_first=True) - context = fn(context)[0] - context = nn.utils.rnn.pad_packed_sequence(context, batch_first=True)[0] - - # map back to original indices - context = context[unsort_ids] - return context - - def forward(self, context, lens): - if context.size()[0] > 1: - context = self.run_padded_sequence(context, lens) - # to B, D, T - context = context.transpose(1, 2) - else: - for conv in self.convolutions: - context = self.dropout(F.relu(conv(context))) - - if self.lstm_type != "": - context = context.transpose(1, 2) - self.bilstm.flatten_parameters() - if lens is not None: - context = self.run_unsorted_inputs(self.bilstm, context, lens) - else: - context = self.bilstm(context)[0] - context = context.transpose(1, 2) - - x_hat = context - if self.use_linear: - x_hat = self.dense(context.transpose(1, 2)).transpose(1, 2) - - return x_hat - - -class DepthWiseConv1d(nn.Module): - def __init__(self, in_channels: int, out_channels: int, kernel_size: int, padding: int): - super().__init__() - self.conv = nn.Conv1d(in_channels, out_channels, kernel_size, padding=padding, groups=in_channels) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - return self.conv(x) - - -class PointwiseConv1d(nn.Module): - def __init__( - self, - in_channels: int, - out_channels: int, - stride: int = 1, - padding: int = 0, - bias: bool = True, - ): - super().__init__() - self.conv = nn.Conv1d( - in_channels=in_channels, - out_channels=out_channels, - kernel_size=1, - stride=stride, - padding=padding, - bias=bias, - ) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - return self.conv(x) - - -class BSConv1d(nn.Module): - """https://arxiv.org/pdf/2003.13549.pdf""" - - def __init__(self, channels_in: int, channels_out: int, kernel_size: int, padding: int): - super().__init__() - self.pointwise = nn.Conv1d(channels_in, channels_out, kernel_size=1) - self.depthwise = nn.Conv1d( - channels_out, - channels_out, - kernel_size=kernel_size, - padding=padding, - groups=channels_out, - ) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x1 = self.pointwise(x) - x2 = self.depthwise(x1) - return x2 - - -class BSConv2d(nn.Module): - """https://arxiv.org/pdf/2003.13549.pdf""" - - def __init__(self, channels_in: int, channels_out: int, kernel_size: int, padding: int): - super().__init__() - self.pointwise = nn.Conv2d(channels_in, channels_out, kernel_size=1) - self.depthwise = nn.Conv2d( - channels_out, - channels_out, - kernel_size=kernel_size, - padding=padding, - groups=channels_out, - ) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x1 = self.pointwise(x) - x2 = self.depthwise(x1) - return x2 - - -class Conv1dGLU(nn.Module): - """From DeepVoice 3""" - - def __init__(self, d_model: int, kernel_size: int, padding: int, embedding_dim: int): - super().__init__() - self.conv = BSConv1d(d_model, 2 * d_model, kernel_size=kernel_size, padding=padding) - self.embedding_proj = nn.Linear(embedding_dim, d_model) - self.register_buffer("sqrt", torch.sqrt(torch.FloatTensor([0.5])).squeeze(0)) - self.softsign = torch.nn.Softsign() - - def forward(self, x: torch.Tensor, embeddings: torch.Tensor) -> torch.Tensor: - x = x.permute((0, 2, 1)) - residual = x - x = self.conv(x) - splitdim = 1 - a, b = x.split(x.size(splitdim) // 2, dim=splitdim) - embeddings = self.embedding_proj(embeddings).unsqueeze(2) - softsign = self.softsign(embeddings) - softsign = softsign.expand_as(a) - a = a + softsign - x = a * torch.sigmoid(b) - x = x + residual - x = x * self.sqrt - x = x.permute((0, 2, 1)) - return x - - -class ConvTransposed(nn.Module): - """ - A 1D convolutional transposed layer for PyTorch. - This layer applies a 1D convolutional transpose operation to its input tensor, - where the number of channels of the input tensor is the same as the number of channels of the output tensor. - - Attributes: - in_channels (int): The number of channels in the input tensor. - out_channels (int): The number of channels in the output tensor. - kernel_size (int): The size of the convolutional kernel. Default: 1. - padding (int): The number of padding elements to add to the input tensor. Default: 0. - conv (BSConv1d): The 1D convolutional transpose layer. - """ - - def __init__( - self, - in_channels: int, - out_channels: int, - kernel_size: int = 1, - padding: int = 0, - ): - super().__init__() - self.conv = BSConv1d( - in_channels, - out_channels, - kernel_size=kernel_size, - padding=padding, - ) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x = x.contiguous().transpose(1, 2) - x = self.conv(x) - x = x.contiguous().transpose(1, 2) - return x - - -class DepthwiseConvModule(nn.Module): - def __init__(self, dim: int, kernel_size: int = 7, expansion: int = 4, lrelu_slope: float = 0.3): - super().__init__() - padding = calc_same_padding(kernel_size) - self.depthwise = nn.Conv1d( - dim, - dim * expansion, - kernel_size=kernel_size, - padding=padding[0], - groups=dim, - ) - self.act = nn.LeakyReLU(lrelu_slope) - self.out = nn.Conv1d(dim * expansion, dim, 1, 1, 0) - self.ln = nn.LayerNorm(dim) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x = self.ln(x) - x = x.permute((0, 2, 1)) - x = self.depthwise(x) - x = self.act(x) - x = self.out(x) - x = x.permute((0, 2, 1)) - return x - - -class AddCoords(nn.Module): - def __init__(self, rank: int, with_r: bool = False): - super().__init__() - self.rank = rank - self.with_r = with_r - - def forward(self, x: torch.Tensor) -> torch.Tensor: - if self.rank == 1: - batch_size_shape, channel_in_shape, dim_x = x.shape # pylint: disable=unused-variable - xx_range = torch.arange(dim_x, dtype=torch.int32) - xx_channel = xx_range[None, None, :] - - xx_channel = xx_channel.float() / (dim_x - 1) - xx_channel = xx_channel * 2 - 1 - xx_channel = xx_channel.repeat(batch_size_shape, 1, 1) - - xx_channel = xx_channel.to(x.device) - out = torch.cat([x, xx_channel], dim=1) - - if self.with_r: - rr = torch.sqrt(torch.pow(xx_channel - 0.5, 2)) - out = torch.cat([out, rr], dim=1) - - elif self.rank == 2: - batch_size_shape, channel_in_shape, dim_y, dim_x = x.shape - xx_ones = torch.ones([1, 1, 1, dim_x], dtype=torch.int32) - yy_ones = torch.ones([1, 1, 1, dim_y], dtype=torch.int32) - - xx_range = torch.arange(dim_y, dtype=torch.int32) - yy_range = torch.arange(dim_x, dtype=torch.int32) - xx_range = xx_range[None, None, :, None] - yy_range = yy_range[None, None, :, None] - - xx_channel = torch.matmul(xx_range, xx_ones) - yy_channel = torch.matmul(yy_range, yy_ones) - - # transpose y - yy_channel = yy_channel.permute(0, 1, 3, 2) - - xx_channel = xx_channel.float() / (dim_y - 1) - yy_channel = yy_channel.float() / (dim_x - 1) - - xx_channel = xx_channel * 2 - 1 - yy_channel = yy_channel * 2 - 1 - - xx_channel = xx_channel.repeat(batch_size_shape, 1, 1, 1) - yy_channel = yy_channel.repeat(batch_size_shape, 1, 1, 1) - - xx_channel = xx_channel.to(x.device) - yy_channel = yy_channel.to(x.device) - - out = torch.cat([x, xx_channel, yy_channel], dim=1) - - if self.with_r: - rr = torch.sqrt(torch.pow(xx_channel - 0.5, 2) + torch.pow(yy_channel - 0.5, 2)) - out = torch.cat([out, rr], dim=1) - - elif self.rank == 3: - batch_size_shape, channel_in_shape, dim_z, dim_y, dim_x = x.shape - xx_ones = torch.ones([1, 1, 1, 1, dim_x], dtype=torch.int32) - yy_ones = torch.ones([1, 1, 1, 1, dim_y], dtype=torch.int32) - zz_ones = torch.ones([1, 1, 1, 1, dim_z], dtype=torch.int32) - - xy_range = torch.arange(dim_y, dtype=torch.int32) - xy_range = xy_range[None, None, None, :, None] - - yz_range = torch.arange(dim_z, dtype=torch.int32) - yz_range = yz_range[None, None, None, :, None] - - zx_range = torch.arange(dim_x, dtype=torch.int32) - zx_range = zx_range[None, None, None, :, None] - - xy_channel = torch.matmul(xy_range, xx_ones) - xx_channel = torch.cat([xy_channel + i for i in range(dim_z)], dim=2) - - yz_channel = torch.matmul(yz_range, yy_ones) - yz_channel = yz_channel.permute(0, 1, 3, 4, 2) - yy_channel = torch.cat([yz_channel + i for i in range(dim_x)], dim=4) - - zx_channel = torch.matmul(zx_range, zz_ones) - zx_channel = zx_channel.permute(0, 1, 4, 2, 3) - zz_channel = torch.cat([zx_channel + i for i in range(dim_y)], dim=3) - - xx_channel = xx_channel.to(x.device) - yy_channel = yy_channel.to(x.device) - zz_channel = zz_channel.to(x.device) - out = torch.cat([x, xx_channel, yy_channel, zz_channel], dim=1) - - if self.with_r: - rr = torch.sqrt( - torch.pow(xx_channel - 0.5, 2) + torch.pow(yy_channel - 0.5, 2) + torch.pow(zz_channel - 0.5, 2) - ) - out = torch.cat([out, rr], dim=1) - else: - raise NotImplementedError - - return out - - -class CoordConv1d(nn.modules.conv.Conv1d): - def __init__( - self, - in_channels: int, - out_channels: int, - kernel_size: int, - stride: int = 1, - padding: int = 0, - dilation: int = 1, - groups: int = 1, - bias: bool = True, - with_r: bool = False, - ): - super().__init__( - in_channels, - out_channels, - kernel_size, - stride, - padding, - dilation, - groups, - bias, - ) - self.rank = 1 - self.addcoords = AddCoords(self.rank, with_r) - self.conv = nn.Conv1d( - in_channels + self.rank + int(with_r), - out_channels, - kernel_size, - stride, - padding, - dilation, - groups, - bias, - ) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x = self.addcoords(x) - x = self.conv(x) - return x - - -class CoordConv2d(nn.modules.conv.Conv2d): - def __init__( - self, - in_channels: int, - out_channels: int, - kernel_size: int, - stride: int = 1, - padding: int = 0, - dilation: int = 1, - groups: int = 1, - bias: bool = True, - with_r: bool = False, - ): - super().__init__( - in_channels, - out_channels, - kernel_size, - stride, - padding, - dilation, - groups, - bias, - ) - self.rank = 2 - self.addcoords = AddCoords(self.rank, with_r) - self.conv = nn.Conv2d( - in_channels + self.rank + int(with_r), - out_channels, - kernel_size, - stride, - padding, - dilation, - groups, - bias, - ) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x = self.addcoords(x) - x = self.conv(x) - return x - - -class LVCBlock(torch.nn.Module): - """the location-variable convolutions""" - - def __init__( # pylint: disable=dangerous-default-value - self, - in_channels, - cond_channels, - stride, - dilations=[1, 3, 9, 27], - lReLU_slope=0.2, - conv_kernel_size=3, - cond_hop_length=256, - kpnet_hidden_channels=64, - kpnet_conv_size=3, - kpnet_dropout=0.0, - ): - super().__init__() - - self.cond_hop_length = cond_hop_length - self.conv_layers = len(dilations) - self.conv_kernel_size = conv_kernel_size - - self.kernel_predictor = KernelPredictor( - cond_channels=cond_channels, - conv_in_channels=in_channels, - conv_out_channels=2 * in_channels, - conv_layers=len(dilations), - conv_kernel_size=conv_kernel_size, - kpnet_hidden_channels=kpnet_hidden_channels, - kpnet_conv_size=kpnet_conv_size, - kpnet_dropout=kpnet_dropout, - kpnet_nonlinear_activation_params={"negative_slope": lReLU_slope}, - ) - - self.convt_pre = nn.Sequential( - nn.LeakyReLU(lReLU_slope), - nn.utils.weight_norm( - nn.ConvTranspose1d( - in_channels, - in_channels, - 2 * stride, - stride=stride, - padding=stride // 2 + stride % 2, - output_padding=stride % 2, - ) - ), - ) - - self.conv_blocks = nn.ModuleList() - for dilation in dilations: - self.conv_blocks.append( - nn.Sequential( - nn.LeakyReLU(lReLU_slope), - nn.utils.weight_norm( - nn.Conv1d( - in_channels, - in_channels, - conv_kernel_size, - padding=dilation * (conv_kernel_size - 1) // 2, - dilation=dilation, - ) - ), - nn.LeakyReLU(lReLU_slope), - ) - ) - - def forward(self, x, c): - """forward propagation of the location-variable convolutions. - Args: - x (Tensor): the input sequence (batch, in_channels, in_length) - c (Tensor): the conditioning sequence (batch, cond_channels, cond_length) - - Returns: - Tensor: the output sequence (batch, in_channels, in_length) - """ - _, in_channels, _ = x.shape # (B, c_g, L') - - x = self.convt_pre(x) # (B, c_g, stride * L') - kernels, bias = self.kernel_predictor(c) - - for i, conv in enumerate(self.conv_blocks): - output = conv(x) # (B, c_g, stride * L') - - k = kernels[:, i, :, :, :, :] # (B, 2 * c_g, c_g, kernel_size, cond_length) - b = bias[:, i, :, :] # (B, 2 * c_g, cond_length) - - output = self.location_variable_convolution( - output, k, b, hop_size=self.cond_hop_length - ) # (B, 2 * c_g, stride * L'): LVC - x = x + torch.sigmoid(output[:, :in_channels, :]) * torch.tanh( - output[:, in_channels:, :] - ) # (B, c_g, stride * L'): GAU - - return x - - def location_variable_convolution(self, x, kernel, bias, dilation=1, hop_size=256): # pylint: disable=no-self-use - """perform location-variable convolution operation on the input sequence (x) using the local convolution kernl. - Time: 414 μs ± 309 ns per loop (mean ± std. dev. of 7 runs, 1000 loops each), test on NVIDIA V100. - Args: - x (Tensor): the input sequence (batch, in_channels, in_length). - kernel (Tensor): the local convolution kernel (batch, in_channel, out_channels, kernel_size, kernel_length) - bias (Tensor): the bias for the local convolution (batch, out_channels, kernel_length) - dilation (int): the dilation of convolution. - hop_size (int): the hop_size of the conditioning sequence. - Returns: - (Tensor): the output sequence after performing local convolution. (batch, out_channels, in_length). - """ - batch, _, in_length = x.shape - batch, _, out_channels, kernel_size, kernel_length = kernel.shape - assert in_length == (kernel_length * hop_size), "length of (x, kernel) is not matched" - - padding = dilation * int((kernel_size - 1) / 2) - x = F.pad(x, (padding, padding), "constant", 0) # (batch, in_channels, in_length + 2*padding) - x = x.unfold(2, hop_size + 2 * padding, hop_size) # (batch, in_channels, kernel_length, hop_size + 2*padding) - - if hop_size < dilation: - x = F.pad(x, (0, dilation), "constant", 0) - x = x.unfold( - 3, dilation, dilation - ) # (batch, in_channels, kernel_length, (hop_size + 2*padding)/dilation, dilation) - x = x[:, :, :, :, :hop_size] - x = x.transpose(3, 4) # (batch, in_channels, kernel_length, dilation, (hop_size + 2*padding)/dilation) - x = x.unfold(4, kernel_size, 1) # (batch, in_channels, kernel_length, dilation, _, kernel_size) - - o = torch.einsum("bildsk,biokl->bolsd", x, kernel) - o = o.to(memory_format=torch.channels_last_3d) - bias = bias.unsqueeze(-1).unsqueeze(-1).to(memory_format=torch.channels_last_3d) - o = o + bias - o = o.contiguous().view(batch, out_channels, -1) - - return o - - def remove_weight_norm(self): - self.kernel_predictor.remove_weight_norm() - nn.utils.remove_weight_norm(self.convt_pre[1]) - for block in self.conv_blocks: - nn.utils.remove_weight_norm(block[1]) diff --git a/TTS/TTS/tts/layers/delightful_tts/encoders.py b/TTS/TTS/tts/layers/delightful_tts/encoders.py deleted file mode 100644 index 0878f0677a29d092597a46e8a3b11e4a521769b8..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/delightful_tts/encoders.py +++ /dev/null @@ -1,261 +0,0 @@ -from typing import List, Tuple, Union - -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import -import torch.nn.functional as F - -from TTS.tts.layers.delightful_tts.conformer import ConformerMultiHeadedSelfAttention -from TTS.tts.layers.delightful_tts.conv_layers import CoordConv1d -from TTS.tts.layers.delightful_tts.networks import STL - - -def get_mask_from_lengths(lengths: torch.Tensor) -> torch.Tensor: - batch_size = lengths.shape[0] - max_len = torch.max(lengths).item() - ids = torch.arange(0, max_len, device=lengths.device).unsqueeze(0).expand(batch_size, -1) - mask = ids >= lengths.unsqueeze(1).expand(-1, max_len) - return mask - - -def stride_lens(lens: torch.Tensor, stride: int = 2) -> torch.Tensor: - return torch.ceil(lens / stride).int() - - -class ReferenceEncoder(nn.Module): - """ - Referance encoder for utterance and phoneme prosody encoders. Reference encoder - made up of convolution and RNN layers. - - Args: - num_mels (int): Number of mel frames to produce. - ref_enc_filters (list[int]): List of channel sizes for encoder layers. - ref_enc_size (int): Size of the kernel for the conv layers. - ref_enc_strides (List[int]): List of strides to use for conv layers. - ref_enc_gru_size (int): Number of hidden features for the gated recurrent unit. - - Inputs: inputs, mask - - **inputs** (batch, dim, time): Tensor containing mel vector - - **lengths** (batch): Tensor containing the mel lengths. - Returns: - - **outputs** (batch, time, dim): Tensor produced by Reference Encoder. - """ - - def __init__( - self, - num_mels: int, - ref_enc_filters: List[Union[int, int, int, int, int, int]], - ref_enc_size: int, - ref_enc_strides: List[Union[int, int, int, int, int]], - ref_enc_gru_size: int, - ): - super().__init__() - - n_mel_channels = num_mels - self.n_mel_channels = n_mel_channels - K = len(ref_enc_filters) - filters = [self.n_mel_channels] + ref_enc_filters - strides = [1] + ref_enc_strides - # Use CoordConv at the first layer to better preserve positional information: https://arxiv.org/pdf/1811.02122.pdf - convs = [ - CoordConv1d( - in_channels=filters[0], - out_channels=filters[0 + 1], - kernel_size=ref_enc_size, - stride=strides[0], - padding=ref_enc_size // 2, - with_r=True, - ) - ] - convs2 = [ - nn.Conv1d( - in_channels=filters[i], - out_channels=filters[i + 1], - kernel_size=ref_enc_size, - stride=strides[i], - padding=ref_enc_size // 2, - ) - for i in range(1, K) - ] - convs.extend(convs2) - self.convs = nn.ModuleList(convs) - - self.norms = nn.ModuleList([nn.InstanceNorm1d(num_features=ref_enc_filters[i], affine=True) for i in range(K)]) - - self.gru = nn.GRU( - input_size=ref_enc_filters[-1], - hidden_size=ref_enc_gru_size, - batch_first=True, - ) - - def forward(self, x: torch.Tensor, mel_lens: torch.Tensor) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: - """ - inputs --- [N, n_mels, timesteps] - outputs --- [N, E//2] - """ - - mel_masks = get_mask_from_lengths(mel_lens).unsqueeze(1) - x = x.masked_fill(mel_masks, 0) - for conv, norm in zip(self.convs, self.norms): - x = conv(x) - x = F.leaky_relu(x, 0.3) # [N, 128, Ty//2^K, n_mels//2^K] - x = norm(x) - - for _ in range(2): - mel_lens = stride_lens(mel_lens) - - mel_masks = get_mask_from_lengths(mel_lens) - - x = x.masked_fill(mel_masks.unsqueeze(1), 0) - x = x.permute((0, 2, 1)) - x = torch.nn.utils.rnn.pack_padded_sequence(x, mel_lens.cpu().int(), batch_first=True, enforce_sorted=False) - - self.gru.flatten_parameters() - x, memory = self.gru(x) # memory --- [N, Ty, E//2], out --- [1, N, E//2] - x, _ = torch.nn.utils.rnn.pad_packed_sequence(x, batch_first=True) - - return x, memory, mel_masks - - def calculate_channels( # pylint: disable=no-self-use - self, L: int, kernel_size: int, stride: int, pad: int, n_convs: int - ) -> int: - for _ in range(n_convs): - L = (L - kernel_size + 2 * pad) // stride + 1 - return L - - -class UtteranceLevelProsodyEncoder(nn.Module): - def __init__( - self, - num_mels: int, - ref_enc_filters: List[Union[int, int, int, int, int, int]], - ref_enc_size: int, - ref_enc_strides: List[Union[int, int, int, int, int]], - ref_enc_gru_size: int, - dropout: float, - n_hidden: int, - bottleneck_size_u: int, - token_num: int, - ): - """ - Encoder to extract prosody from utterance. it is made up of a reference encoder - with a couple of linear layers and style token layer with dropout. - - Args: - num_mels (int): Number of mel frames to produce. - ref_enc_filters (list[int]): List of channel sizes for ref encoder layers. - ref_enc_size (int): Size of the kernel for the ref encoder conv layers. - ref_enc_strides (List[int]): List of strides to use for teh ref encoder conv layers. - ref_enc_gru_size (int): Number of hidden features for the gated recurrent unit. - dropout (float): Probability of dropout. - n_hidden (int): Size of hidden layers. - bottleneck_size_u (int): Size of the bottle neck layer. - - Inputs: inputs, mask - - **inputs** (batch, dim, time): Tensor containing mel vector - - **lengths** (batch): Tensor containing the mel lengths. - Returns: - - **outputs** (batch, 1, dim): Tensor produced by Utterance Level Prosody Encoder. - """ - super().__init__() - - self.E = n_hidden - self.d_q = self.d_k = n_hidden - bottleneck_size = bottleneck_size_u - - self.encoder = ReferenceEncoder( - ref_enc_filters=ref_enc_filters, - ref_enc_gru_size=ref_enc_gru_size, - ref_enc_size=ref_enc_size, - ref_enc_strides=ref_enc_strides, - num_mels=num_mels, - ) - self.encoder_prj = nn.Linear(ref_enc_gru_size, self.E // 2) - self.stl = STL(n_hidden=n_hidden, token_num=token_num) - self.encoder_bottleneck = nn.Linear(self.E, bottleneck_size) - self.dropout = nn.Dropout(dropout) - - def forward(self, mels: torch.Tensor, mel_lens: torch.Tensor) -> torch.Tensor: - """ - Shapes: - mels: :math: `[B, C, T]` - mel_lens: :math: `[B]` - - out --- [N, seq_len, E] - """ - _, embedded_prosody, _ = self.encoder(mels, mel_lens) - - # Bottleneck - embedded_prosody = self.encoder_prj(embedded_prosody) - - # Style Token - out = self.encoder_bottleneck(self.stl(embedded_prosody)) - out = self.dropout(out) - - out = out.view((-1, 1, out.shape[3])) - return out - - -class PhonemeLevelProsodyEncoder(nn.Module): - def __init__( - self, - num_mels: int, - ref_enc_filters: List[Union[int, int, int, int, int, int]], - ref_enc_size: int, - ref_enc_strides: List[Union[int, int, int, int, int]], - ref_enc_gru_size: int, - dropout: float, - n_hidden: int, - n_heads: int, - bottleneck_size_p: int, - ): - super().__init__() - - self.E = n_hidden - self.d_q = self.d_k = n_hidden - bottleneck_size = bottleneck_size_p - - self.encoder = ReferenceEncoder( - ref_enc_filters=ref_enc_filters, - ref_enc_gru_size=ref_enc_gru_size, - ref_enc_size=ref_enc_size, - ref_enc_strides=ref_enc_strides, - num_mels=num_mels, - ) - self.encoder_prj = nn.Linear(ref_enc_gru_size, n_hidden) - self.attention = ConformerMultiHeadedSelfAttention( - d_model=n_hidden, - num_heads=n_heads, - dropout_p=dropout, - ) - self.encoder_bottleneck = nn.Linear(n_hidden, bottleneck_size) - - def forward( - self, - x: torch.Tensor, - src_mask: torch.Tensor, - mels: torch.Tensor, - mel_lens: torch.Tensor, - encoding: torch.Tensor, - ) -> torch.Tensor: - """ - x --- [N, seq_len, encoder_embedding_dim] - mels --- [N, Ty/r, n_mels*r], r=1 - out --- [N, seq_len, bottleneck_size] - attn --- [N, seq_len, ref_len], Ty/r = ref_len - """ - embedded_prosody, _, mel_masks = self.encoder(mels, mel_lens) - - # Bottleneck - embedded_prosody = self.encoder_prj(embedded_prosody) - - attn_mask = mel_masks.view((mel_masks.shape[0], 1, 1, -1)) - x, _ = self.attention( - query=x, - key=embedded_prosody, - value=embedded_prosody, - mask=attn_mask, - encoding=encoding, - ) - x = self.encoder_bottleneck(x) - x = x.masked_fill(src_mask.unsqueeze(-1), 0.0) - return x diff --git a/TTS/TTS/tts/layers/delightful_tts/energy_adaptor.py b/TTS/TTS/tts/layers/delightful_tts/energy_adaptor.py deleted file mode 100644 index ea0d1e47214d81a42b934bbaaa4b3ebb9f63bcc6..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/delightful_tts/energy_adaptor.py +++ /dev/null @@ -1,82 +0,0 @@ -from typing import Callable, Tuple - -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import - -from TTS.tts.layers.delightful_tts.variance_predictor import VariancePredictor -from TTS.tts.utils.helpers import average_over_durations - - -class EnergyAdaptor(nn.Module): # pylint: disable=abstract-method - """Variance Adaptor with an added 1D conv layer. Used to - get energy embeddings. - - Args: - channels_in (int): Number of in channels for conv layers. - channels_out (int): Number of out channels. - kernel_size (int): Size the kernel for the conv layers. - dropout (float): Probability of dropout. - lrelu_slope (float): Slope for the leaky relu. - emb_kernel_size (int): Size the kernel for the pitch embedding. - - Inputs: inputs, mask - - **inputs** (batch, time1, dim): Tensor containing input vector - - **target** (batch, 1, time2): Tensor containing the energy target - - **dr** (batch, time1): Tensor containing aligner durations vector - - **mask** (batch, time1): Tensor containing indices to be masked - Returns: - - **energy prediction** (batch, 1, time1): Tensor produced by energy predictor - - **energy embedding** (batch, channels, time1): Tensor produced energy adaptor - - **average energy target(train only)** (batch, 1, time1): Tensor produced after averaging over durations - - """ - - def __init__( - self, - channels_in: int, - channels_hidden: int, - channels_out: int, - kernel_size: int, - dropout: float, - lrelu_slope: float, - emb_kernel_size: int, - ): - super().__init__() - self.energy_predictor = VariancePredictor( - channels_in=channels_in, - channels=channels_hidden, - channels_out=channels_out, - kernel_size=kernel_size, - p_dropout=dropout, - lrelu_slope=lrelu_slope, - ) - self.energy_emb = nn.Conv1d( - 1, - channels_hidden, - kernel_size=emb_kernel_size, - padding=int((emb_kernel_size - 1) / 2), - ) - - def get_energy_embedding_train( - self, x: torch.Tensor, target: torch.Tensor, dr: torch.IntTensor, mask: torch.Tensor - ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: - """ - Shapes: - x: :math: `[B, T_src, C]` - target: :math: `[B, 1, T_max2]` - dr: :math: `[B, T_src]` - mask: :math: `[B, T_src]` - """ - energy_pred = self.energy_predictor(x, mask) - energy_pred.unsqueeze_(1) - avg_energy_target = average_over_durations(target, dr) - energy_emb = self.energy_emb(avg_energy_target) - return energy_pred, avg_energy_target, energy_emb - - def get_energy_embedding(self, x: torch.Tensor, mask: torch.Tensor, energy_transform: Callable) -> torch.Tensor: - energy_pred = self.energy_predictor(x, mask) - energy_pred.unsqueeze_(1) - if energy_transform is not None: - energy_pred = energy_transform(energy_pred, (~mask).sum(dim=(1, 2)), self.pitch_mean, self.pitch_std) - energy_emb_pred = self.energy_emb(energy_pred) - return energy_emb_pred, energy_pred diff --git a/TTS/TTS/tts/layers/delightful_tts/kernel_predictor.py b/TTS/TTS/tts/layers/delightful_tts/kernel_predictor.py deleted file mode 100644 index 19dfd57e7bbb018494aa00ca22f0ae70f1b2e71d..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/delightful_tts/kernel_predictor.py +++ /dev/null @@ -1,125 +0,0 @@ -import torch.nn as nn # pylint: disable=consider-using-from-import - - -class KernelPredictor(nn.Module): - """Kernel predictor for the location-variable convolutions - - Args: - cond_channels (int): number of channel for the conditioning sequence, - conv_in_channels (int): number of channel for the input sequence, - conv_out_channels (int): number of channel for the output sequence, - conv_layers (int): number of layers - - """ - - def __init__( # pylint: disable=dangerous-default-value - self, - cond_channels, - conv_in_channels, - conv_out_channels, - conv_layers, - conv_kernel_size=3, - kpnet_hidden_channels=64, - kpnet_conv_size=3, - kpnet_dropout=0.0, - kpnet_nonlinear_activation="LeakyReLU", - kpnet_nonlinear_activation_params={"negative_slope": 0.1}, - ): - super().__init__() - - self.conv_in_channels = conv_in_channels - self.conv_out_channels = conv_out_channels - self.conv_kernel_size = conv_kernel_size - self.conv_layers = conv_layers - - kpnet_kernel_channels = conv_in_channels * conv_out_channels * conv_kernel_size * conv_layers # l_w - kpnet_bias_channels = conv_out_channels * conv_layers # l_b - - self.input_conv = nn.Sequential( - nn.utils.weight_norm(nn.Conv1d(cond_channels, kpnet_hidden_channels, 5, padding=2, bias=True)), - getattr(nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - ) - - self.residual_convs = nn.ModuleList() - padding = (kpnet_conv_size - 1) // 2 - for _ in range(3): - self.residual_convs.append( - nn.Sequential( - nn.Dropout(kpnet_dropout), - nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_hidden_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ), - getattr(nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_hidden_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ), - getattr(nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - ) - ) - self.kernel_conv = nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_kernel_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ) - self.bias_conv = nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_bias_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ) - - def forward(self, c): - """ - Args: - c (Tensor): the conditioning sequence (batch, cond_channels, cond_length) - """ - batch, _, cond_length = c.shape - c = self.input_conv(c) - for residual_conv in self.residual_convs: - residual_conv.to(c.device) - c = c + residual_conv(c) - k = self.kernel_conv(c) - b = self.bias_conv(c) - kernels = k.contiguous().view( - batch, - self.conv_layers, - self.conv_in_channels, - self.conv_out_channels, - self.conv_kernel_size, - cond_length, - ) - bias = b.contiguous().view( - batch, - self.conv_layers, - self.conv_out_channels, - cond_length, - ) - - return kernels, bias - - def remove_weight_norm(self): - nn.utils.remove_weight_norm(self.input_conv[0]) - nn.utils.remove_weight_norm(self.kernel_conv) - nn.utils.remove_weight_norm(self.bias_conv) - for block in self.residual_convs: - nn.utils.remove_weight_norm(block[1]) - nn.utils.remove_weight_norm(block[3]) diff --git a/TTS/TTS/tts/layers/delightful_tts/networks.py b/TTS/TTS/tts/layers/delightful_tts/networks.py deleted file mode 100644 index 4305022f18cf95565b2da2553740276818fb486c..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/delightful_tts/networks.py +++ /dev/null @@ -1,219 +0,0 @@ -import math -from typing import Tuple - -import numpy as np -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import -import torch.nn.functional as F - -from TTS.tts.layers.delightful_tts.conv_layers import ConvNorm - - -def initialize_embeddings(shape: Tuple[int]) -> torch.Tensor: - assert len(shape) == 2, "Can only initialize 2-D embedding matrices ..." - # Kaiming initialization - return torch.randn(shape) * np.sqrt(2 / shape[1]) - - -def positional_encoding(d_model: int, length: int, device: torch.device) -> torch.Tensor: - pe = torch.zeros(length, d_model, device=device) - position = torch.arange(0, length, dtype=torch.float, device=device).unsqueeze(1) - div_term = torch.exp(torch.arange(0, d_model, 2, device=device).float() * -(math.log(10000.0) / d_model)) - pe[:, 0::2] = torch.sin(position * div_term) - pe[:, 1::2] = torch.cos(position * div_term) - pe = pe.unsqueeze(0) - return pe - - -class BottleneckLayer(nn.Module): - """ - Bottleneck layer for reducing the dimensionality of a tensor. - - Args: - in_dim: The number of input dimensions. - reduction_factor: The factor by which to reduce the number of dimensions. - norm: The normalization method to use. Can be "weightnorm" or "instancenorm". - non_linearity: The non-linearity to use. Can be "relu" or "leakyrelu". - kernel_size: The size of the convolutional kernel. - use_partial_padding: Whether to use partial padding with the convolutional kernel. - - Shape: - - Input: :math:`[N, in_dim]` where `N` is the batch size and `in_dim` is the number of input dimensions. - - - Output: :math:`[N, out_dim]` where `out_dim` is the number of output dimensions. - """ - - def __init__( - self, - in_dim, - reduction_factor, - norm="weightnorm", - non_linearity="relu", - kernel_size=3, - use_partial_padding=False, # pylint: disable=unused-argument - ): - super(BottleneckLayer, self).__init__() # pylint: disable=super-with-arguments - - self.reduction_factor = reduction_factor - reduced_dim = int(in_dim / reduction_factor) - self.out_dim = reduced_dim - if self.reduction_factor > 1: - fn = ConvNorm(in_dim, reduced_dim, kernel_size=kernel_size, use_weight_norm=(norm == "weightnorm")) - if norm == "instancenorm": - fn = nn.Sequential(fn, nn.InstanceNorm1d(reduced_dim, affine=True)) - - self.projection_fn = fn - self.non_linearity = nn.ReLU() - if non_linearity == "leakyrelu": - self.non_linearity = nn.LeakyReLU() - - def forward(self, x): - if self.reduction_factor > 1: - x = self.projection_fn(x) - x = self.non_linearity(x) - return x - - -class GLUActivation(nn.Module): - """Class that implements the Gated Linear Unit (GLU) activation function. - - The GLU activation function is a variant of the Leaky ReLU activation function, - where the output of the activation function is gated by an input tensor. - - """ - - def __init__(self, slope: float): - super().__init__() - self.lrelu = nn.LeakyReLU(slope) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - out, gate = x.chunk(2, dim=1) - x = out * self.lrelu(gate) - return x - - -class StyleEmbedAttention(nn.Module): - def __init__(self, query_dim: int, key_dim: int, num_units: int, num_heads: int): - super().__init__() - self.num_units = num_units - self.num_heads = num_heads - self.key_dim = key_dim - - self.W_query = nn.Linear(in_features=query_dim, out_features=num_units, bias=False) - self.W_key = nn.Linear(in_features=key_dim, out_features=num_units, bias=False) - self.W_value = nn.Linear(in_features=key_dim, out_features=num_units, bias=False) - - def forward(self, query: torch.Tensor, key_soft: torch.Tensor) -> torch.Tensor: - values = self.W_value(key_soft) - split_size = self.num_units // self.num_heads - values = torch.stack(torch.split(values, split_size, dim=2), dim=0) - - out_soft = scores_soft = None - querys = self.W_query(query) # [N, T_q, num_units] - keys = self.W_key(key_soft) # [N, T_k, num_units] - - # [h, N, T_q, num_units/h] - querys = torch.stack(torch.split(querys, split_size, dim=2), dim=0) - # [h, N, T_k, num_units/h] - keys = torch.stack(torch.split(keys, split_size, dim=2), dim=0) - # [h, N, T_k, num_units/h] - - # score = softmax(QK^T / (d_k ** 0.5)) - scores_soft = torch.matmul(querys, keys.transpose(2, 3)) # [h, N, T_q, T_k] - scores_soft = scores_soft / (self.key_dim**0.5) - scores_soft = F.softmax(scores_soft, dim=3) - - # out = score * V - # [h, N, T_q, num_units/h] - out_soft = torch.matmul(scores_soft, values) - out_soft = torch.cat(torch.split(out_soft, 1, dim=0), dim=3).squeeze(0) # [N, T_q, num_units] - - return out_soft # , scores_soft - - -class EmbeddingPadded(nn.Module): - def __init__(self, num_embeddings: int, embedding_dim: int, padding_idx: int): - super().__init__() - padding_mult = torch.ones((num_embeddings, 1), dtype=torch.int64) - padding_mult[padding_idx] = 0 - self.register_buffer("padding_mult", padding_mult) - self.embeddings = nn.parameter.Parameter(initialize_embeddings((num_embeddings, embedding_dim))) - - def forward(self, idx: torch.Tensor) -> torch.Tensor: - embeddings_zeroed = self.embeddings * self.padding_mult - x = F.embedding(idx, embeddings_zeroed) - return x - - -class EmbeddingProjBlock(nn.Module): - def __init__(self, embedding_dim: int): - super().__init__() - self.layers = nn.ModuleList( - [ - nn.Linear(embedding_dim, embedding_dim), - nn.LeakyReLU(0.3), - nn.Linear(embedding_dim, embedding_dim), - nn.LeakyReLU(0.3), - ] - ) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - res = x - for layer in self.layers: - x = layer(x) - x = x + res - return x - - -class LinearNorm(nn.Module): - def __init__(self, in_features: int, out_features: int, bias: bool = False): - super().__init__() - self.linear = nn.Linear(in_features, out_features, bias) - - nn.init.xavier_uniform_(self.linear.weight) - if bias: - nn.init.constant_(self.linear.bias, 0.0) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x = self.linear(x) - return x - - -class STL(nn.Module): - """ - A PyTorch module for the Style Token Layer (STL) as described in - "A Style-Based Generator Architecture for Generative Adversarial Networks" - (https://arxiv.org/abs/1812.04948) - - The STL applies a multi-headed attention mechanism over the learned style tokens, - using the text input as the query and the style tokens as the keys and values. - The output of the attention mechanism is used as the text's style embedding. - - Args: - token_num (int): The number of style tokens. - n_hidden (int): Number of hidden dimensions. - """ - - def __init__(self, n_hidden: int, token_num: int): - super(STL, self).__init__() # pylint: disable=super-with-arguments - - num_heads = 1 - E = n_hidden - self.token_num = token_num - self.embed = nn.Parameter(torch.FloatTensor(self.token_num, E // num_heads)) - d_q = E // 2 - d_k = E // num_heads - self.attention = StyleEmbedAttention(query_dim=d_q, key_dim=d_k, num_units=E, num_heads=num_heads) - - torch.nn.init.normal_(self.embed, mean=0, std=0.5) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - N = x.size(0) - query = x.unsqueeze(1) # [N, 1, E//2] - - keys_soft = torch.tanh(self.embed).unsqueeze(0).expand(N, -1, -1) # [N, token_num, E // num_heads] - - # Weighted sum - emotion_embed_soft = self.attention(query, keys_soft) - - return emotion_embed_soft diff --git a/TTS/TTS/tts/layers/delightful_tts/phoneme_prosody_predictor.py b/TTS/TTS/tts/layers/delightful_tts/phoneme_prosody_predictor.py deleted file mode 100644 index 28418f7163361120914f277446f76ac9f0363254..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/delightful_tts/phoneme_prosody_predictor.py +++ /dev/null @@ -1,65 +0,0 @@ -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import - -from TTS.tts.layers.delightful_tts.conv_layers import ConvTransposed - - -class PhonemeProsodyPredictor(nn.Module): - """Non-parallel Prosody Predictor inspired by: https://arxiv.org/pdf/2102.00851.pdf - It consists of 2 layers of 1D convolutions each followed by a relu activation, layer norm - and dropout, then finally a linear layer. - - Args: - hidden_size (int): Size of hidden channels. - kernel_size (int): Kernel size for the conv layers. - dropout: (float): Probability of dropout. - bottleneck_size (int): bottleneck size for last linear layer. - lrelu_slope (float): Slope of the leaky relu. - """ - - def __init__( - self, - hidden_size: int, - kernel_size: int, - dropout: float, - bottleneck_size: int, - lrelu_slope: float, - ): - super().__init__() - self.d_model = hidden_size - self.layers = nn.ModuleList( - [ - ConvTransposed( - self.d_model, - self.d_model, - kernel_size=kernel_size, - padding=(kernel_size - 1) // 2, - ), - nn.LeakyReLU(lrelu_slope), - nn.LayerNorm(self.d_model), - nn.Dropout(dropout), - ConvTransposed( - self.d_model, - self.d_model, - kernel_size=kernel_size, - padding=(kernel_size - 1) // 2, - ), - nn.LeakyReLU(lrelu_slope), - nn.LayerNorm(self.d_model), - nn.Dropout(dropout), - ] - ) - self.predictor_bottleneck = nn.Linear(self.d_model, bottleneck_size) - - def forward(self, x: torch.Tensor, mask: torch.Tensor) -> torch.Tensor: - """ - Shapes: - x: :math: `[B, T, D]` - mask: :math: `[B, T]` - """ - mask = mask.unsqueeze(2) - for layer in self.layers: - x = layer(x) - x = x.masked_fill(mask, 0.0) - x = self.predictor_bottleneck(x) - return x diff --git a/TTS/TTS/tts/layers/delightful_tts/pitch_adaptor.py b/TTS/TTS/tts/layers/delightful_tts/pitch_adaptor.py deleted file mode 100644 index 9031369e0f019cf115d0d43b288bb97d9db48467..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/delightful_tts/pitch_adaptor.py +++ /dev/null @@ -1,88 +0,0 @@ -from typing import Callable, Tuple - -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import - -from TTS.tts.layers.delightful_tts.variance_predictor import VariancePredictor -from TTS.tts.utils.helpers import average_over_durations - - -class PitchAdaptor(nn.Module): # pylint: disable=abstract-method - """Module to get pitch embeddings via pitch predictor - - Args: - n_input (int): Number of pitch predictor input channels. - n_hidden (int): Number of pitch predictor hidden channels. - n_out (int): Number of pitch predictor out channels. - kernel size (int): Size of the kernel for conv layers. - emb_kernel_size (int): Size the kernel for the pitch embedding. - p_dropout (float): Probability of dropout. - lrelu_slope (float): Slope for the leaky relu. - - Inputs: inputs, mask - - **inputs** (batch, time1, dim): Tensor containing input vector - - **target** (batch, 1, time2): Tensor containing the pitch target - - **dr** (batch, time1): Tensor containing aligner durations vector - - **mask** (batch, time1): Tensor containing indices to be masked - Returns: - - **pitch prediction** (batch, 1, time1): Tensor produced by pitch predictor - - **pitch embedding** (batch, channels, time1): Tensor produced pitch pitch adaptor - - **average pitch target(train only)** (batch, 1, time1): Tensor produced after averaging over durations - """ - - def __init__( - self, - n_input: int, - n_hidden: int, - n_out: int, - kernel_size: int, - emb_kernel_size: int, - p_dropout: float, - lrelu_slope: float, - ): - super().__init__() - self.pitch_predictor = VariancePredictor( - channels_in=n_input, - channels=n_hidden, - channels_out=n_out, - kernel_size=kernel_size, - p_dropout=p_dropout, - lrelu_slope=lrelu_slope, - ) - self.pitch_emb = nn.Conv1d( - 1, - n_input, - kernel_size=emb_kernel_size, - padding=int((emb_kernel_size - 1) / 2), - ) - - def get_pitch_embedding_train( - self, x: torch.Tensor, target: torch.Tensor, dr: torch.IntTensor, mask: torch.Tensor - ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: - """ - Shapes: - x: :math: `[B, T_src, C]` - target: :math: `[B, 1, T_max2]` - dr: :math: `[B, T_src]` - mask: :math: `[B, T_src]` - """ - pitch_pred = self.pitch_predictor(x, mask) # [B, T_src, C_hidden], [B, T_src] --> [B, T_src] - pitch_pred.unsqueeze_(1) # --> [B, 1, T_src] - avg_pitch_target = average_over_durations(target, dr) # [B, 1, T_mel], [B, T_src] --> [B, 1, T_src] - pitch_emb = self.pitch_emb(avg_pitch_target) # [B, 1, T_src] --> [B, C_hidden, T_src] - return pitch_pred, avg_pitch_target, pitch_emb - - def get_pitch_embedding( - self, - x: torch.Tensor, - mask: torch.Tensor, - pitch_transform: Callable, - pitch_mean: torch.Tensor, - pitch_std: torch.Tensor, - ) -> torch.Tensor: - pitch_pred = self.pitch_predictor(x, mask) - if pitch_transform is not None: - pitch_pred = pitch_transform(pitch_pred, (~mask).sum(), pitch_mean, pitch_std) - pitch_pred.unsqueeze_(1) - pitch_emb_pred = self.pitch_emb(pitch_pred) - return pitch_emb_pred, pitch_pred diff --git a/TTS/TTS/tts/layers/delightful_tts/variance_predictor.py b/TTS/TTS/tts/layers/delightful_tts/variance_predictor.py deleted file mode 100644 index 68303a1bd1148089eab7ee8be12d4f37ddf420e1..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/delightful_tts/variance_predictor.py +++ /dev/null @@ -1,68 +0,0 @@ -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import - -from TTS.tts.layers.delightful_tts.conv_layers import ConvTransposed - - -class VariancePredictor(nn.Module): - """ - Network is 2-layer 1D convolutions with leaky relu activation and then - followed by layer normalization then a dropout layer and finally an - extra linear layer to project the hidden states into the output sequence. - - Args: - channels_in (int): Number of in channels for conv layers. - channels_out (int): Number of out channels for the last linear layer. - kernel_size (int): Size the kernel for the conv layers. - p_dropout (float): Probability of dropout. - lrelu_slope (float): Slope for the leaky relu. - - Inputs: inputs, mask - - **inputs** (batch, time, dim): Tensor containing input vector - - **mask** (batch, time): Tensor containing indices to be masked - Returns: - - **outputs** (batch, time): Tensor produced by last linear layer. - """ - - def __init__( - self, channels_in: int, channels: int, channels_out: int, kernel_size: int, p_dropout: float, lrelu_slope: float - ): - super().__init__() - - self.layers = nn.ModuleList( - [ - ConvTransposed( - channels_in, - channels, - kernel_size=kernel_size, - padding=(kernel_size - 1) // 2, - ), - nn.LeakyReLU(lrelu_slope), - nn.LayerNorm(channels), - nn.Dropout(p_dropout), - ConvTransposed( - channels, - channels, - kernel_size=kernel_size, - padding=(kernel_size - 1) // 2, - ), - nn.LeakyReLU(lrelu_slope), - nn.LayerNorm(channels), - nn.Dropout(p_dropout), - ] - ) - - self.linear_layer = nn.Linear(channels, channels_out) - - def forward(self, x: torch.Tensor, mask: torch.Tensor) -> torch.Tensor: - """ - Shapes: - x: :math: `[B, T_src, C]` - mask: :math: `[B, T_src]` - """ - for layer in self.layers: - x = layer(x) - x = self.linear_layer(x) - x = x.squeeze(-1) - x = x.masked_fill(mask, 0.0) - return x diff --git a/TTS/TTS/tts/layers/feed_forward/__init__.py b/TTS/TTS/tts/layers/feed_forward/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/layers/feed_forward/decoder.py b/TTS/TTS/tts/layers/feed_forward/decoder.py deleted file mode 100644 index 0376e2e3926e65254c3a81d085d48c97df033958..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/feed_forward/decoder.py +++ /dev/null @@ -1,228 +0,0 @@ -import torch -from torch import nn - -from TTS.tts.layers.generic.res_conv_bn import Conv1dBN, Conv1dBNBlock, ResidualConv1dBNBlock -from TTS.tts.layers.generic.transformer import FFTransformerBlock -from TTS.tts.layers.generic.wavenet import WNBlocks -from TTS.tts.layers.glow_tts.transformer import RelativePositionTransformer - - -class WaveNetDecoder(nn.Module): - """WaveNet based decoder with a prenet and a postnet. - - prenet: conv1d_1x1 - postnet: 3 x [conv1d_1x1 -> relu] -> conv1d_1x1 - - TODO: Integrate speaker conditioning vector. - - Note: - default wavenet parameters; - params = { - "num_blocks": 12, - "hidden_channels":192, - "kernel_size": 5, - "dilation_rate": 1, - "num_layers": 4, - "dropout_p": 0.05 - } - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of hidden channels for prenet and postnet. - params (dict): dictionary for residual convolutional blocks. - """ - - def __init__(self, in_channels, out_channels, hidden_channels, c_in_channels, params): - super().__init__() - # prenet - self.prenet = torch.nn.Conv1d(in_channels, params["hidden_channels"], 1) - # wavenet layers - self.wn = WNBlocks(params["hidden_channels"], c_in_channels=c_in_channels, **params) - # postnet - self.postnet = [ - torch.nn.Conv1d(params["hidden_channels"], hidden_channels, 1), - torch.nn.ReLU(), - torch.nn.Conv1d(hidden_channels, hidden_channels, 1), - torch.nn.ReLU(), - torch.nn.Conv1d(hidden_channels, hidden_channels, 1), - torch.nn.ReLU(), - torch.nn.Conv1d(hidden_channels, out_channels, 1), - ] - self.postnet = nn.Sequential(*self.postnet) - - def forward(self, x, x_mask=None, g=None): - x = self.prenet(x) * x_mask - x = self.wn(x, x_mask, g) - o = self.postnet(x) * x_mask - return o - - -class RelativePositionTransformerDecoder(nn.Module): - """Decoder with Relative Positional Transformer. - - Note: - Default params - params={ - 'hidden_channels_ffn': 128, - 'num_heads': 2, - "kernel_size": 3, - "dropout_p": 0.1, - "num_layers": 8, - "rel_attn_window_size": 4, - "input_length": None - } - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of hidden channels including Transformer layers. - params (dict): dictionary for residual convolutional blocks. - """ - - def __init__(self, in_channels, out_channels, hidden_channels, params): - super().__init__() - self.prenet = Conv1dBN(in_channels, hidden_channels, 1, 1) - self.rel_pos_transformer = RelativePositionTransformer(in_channels, out_channels, hidden_channels, **params) - - def forward(self, x, x_mask=None, g=None): # pylint: disable=unused-argument - o = self.prenet(x) * x_mask - o = self.rel_pos_transformer(o, x_mask) - return o - - -class FFTransformerDecoder(nn.Module): - """Decoder with FeedForwardTransformer. - - Default params - params={ - 'hidden_channels_ffn': 1024, - 'num_heads': 2, - "dropout_p": 0.1, - "num_layers": 6, - } - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of hidden channels including Transformer layers. - params (dict): dictionary for residual convolutional blocks. - """ - - def __init__(self, in_channels, out_channels, params): - super().__init__() - self.transformer_block = FFTransformerBlock(in_channels, **params) - self.postnet = nn.Conv1d(in_channels, out_channels, 1) - - def forward(self, x, x_mask=None, g=None): # pylint: disable=unused-argument - # TODO: handle multi-speaker - x_mask = 1 if x_mask is None else x_mask - o = self.transformer_block(x) * x_mask - o = self.postnet(o) * x_mask - return o - - -class ResidualConv1dBNDecoder(nn.Module): - """Residual Convolutional Decoder as in the original Speedy Speech paper - - TODO: Integrate speaker conditioning vector. - - Note: - Default params - params = { - "kernel_size": 4, - "dilations": 4 * [1, 2, 4, 8] + [1], - "num_conv_blocks": 2, - "num_res_blocks": 17 - } - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of hidden channels including ResidualConv1dBNBlock layers. - params (dict): dictionary for residual convolutional blocks. - """ - - def __init__(self, in_channels, out_channels, hidden_channels, params): - super().__init__() - self.res_conv_block = ResidualConv1dBNBlock(in_channels, hidden_channels, hidden_channels, **params) - self.post_conv = nn.Conv1d(hidden_channels, hidden_channels, 1) - self.postnet = nn.Sequential( - Conv1dBNBlock( - hidden_channels, hidden_channels, hidden_channels, params["kernel_size"], 1, num_conv_blocks=2 - ), - nn.Conv1d(hidden_channels, out_channels, 1), - ) - - def forward(self, x, x_mask=None, g=None): # pylint: disable=unused-argument - o = self.res_conv_block(x, x_mask) - o = self.post_conv(o) + x - return self.postnet(o) * x_mask - - -class Decoder(nn.Module): - """Decodes the expanded phoneme encoding into spectrograms - Args: - out_channels (int): number of output channels. - in_hidden_channels (int): input and hidden channels. Model keeps the input channels for the intermediate layers. - decoder_type (str): decoder layer types. 'transformers' or 'residual_conv_bn'. Default 'residual_conv_bn'. - decoder_params (dict): model parameters for specified decoder type. - c_in_channels (int): number of channels for conditional input. - - Shapes: - - input: (B, C, T) - """ - - # pylint: disable=dangerous-default-value - def __init__( - self, - out_channels, - in_hidden_channels, - decoder_type="residual_conv_bn", - decoder_params={ - "kernel_size": 4, - "dilations": 4 * [1, 2, 4, 8] + [1], - "num_conv_blocks": 2, - "num_res_blocks": 17, - }, - c_in_channels=0, - ): - super().__init__() - - if decoder_type.lower() == "relative_position_transformer": - self.decoder = RelativePositionTransformerDecoder( - in_channels=in_hidden_channels, - out_channels=out_channels, - hidden_channels=in_hidden_channels, - params=decoder_params, - ) - elif decoder_type.lower() == "residual_conv_bn": - self.decoder = ResidualConv1dBNDecoder( - in_channels=in_hidden_channels, - out_channels=out_channels, - hidden_channels=in_hidden_channels, - params=decoder_params, - ) - elif decoder_type.lower() == "wavenet": - self.decoder = WaveNetDecoder( - in_channels=in_hidden_channels, - out_channels=out_channels, - hidden_channels=in_hidden_channels, - c_in_channels=c_in_channels, - params=decoder_params, - ) - elif decoder_type.lower() == "fftransformer": - self.decoder = FFTransformerDecoder(in_hidden_channels, out_channels, decoder_params) - else: - raise ValueError(f"[!] Unknown decoder type - {decoder_type}") - - def forward(self, x, x_mask, g=None): # pylint: disable=unused-argument - """ - Args: - x: [B, C, T] - x_mask: [B, 1, T] - g: [B, C_g, 1] - """ - # TODO: implement multi-speaker - o = self.decoder(x, x_mask, g) - return o diff --git a/TTS/TTS/tts/layers/feed_forward/duration_predictor.py b/TTS/TTS/tts/layers/feed_forward/duration_predictor.py deleted file mode 100644 index 4422648f4337e48aab39671836fcfb5e12ff4be7..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/feed_forward/duration_predictor.py +++ /dev/null @@ -1,41 +0,0 @@ -from torch import nn - -from TTS.tts.layers.generic.res_conv_bn import Conv1dBN - - -class DurationPredictor(nn.Module): - """Speedy Speech duration predictor model. - Predicts phoneme durations from encoder outputs. - - Note: - Outputs interpreted as log(durations) - To get actual durations, do exp transformation - - conv_BN_4x1 -> conv_BN_3x1 -> conv_BN_1x1 -> conv_1x1 - - Args: - hidden_channels (int): number of channels in the inner layers. - """ - - def __init__(self, hidden_channels): - super().__init__() - - self.layers = nn.ModuleList( - [ - Conv1dBN(hidden_channels, hidden_channels, 4, 1), - Conv1dBN(hidden_channels, hidden_channels, 3, 1), - Conv1dBN(hidden_channels, hidden_channels, 1, 1), - nn.Conv1d(hidden_channels, 1, 1), - ] - ) - - def forward(self, x, x_mask): - """ - Shapes: - x: [B, C, T] - x_mask: [B, 1, T] - """ - o = x - for layer in self.layers: - o = layer(o) * x_mask - return o diff --git a/TTS/TTS/tts/layers/feed_forward/encoder.py b/TTS/TTS/tts/layers/feed_forward/encoder.py deleted file mode 100644 index caf939ffc73fedac299228e090b2df3bb4cc553c..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/feed_forward/encoder.py +++ /dev/null @@ -1,162 +0,0 @@ -from torch import nn - -from TTS.tts.layers.generic.res_conv_bn import ResidualConv1dBNBlock -from TTS.tts.layers.generic.transformer import FFTransformerBlock -from TTS.tts.layers.glow_tts.transformer import RelativePositionTransformer - - -class RelativePositionTransformerEncoder(nn.Module): - """Speedy speech encoder built on Transformer with Relative Position encoding. - - TODO: Integrate speaker conditioning vector. - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of hidden channels - params (dict): dictionary for residual convolutional blocks. - """ - - def __init__(self, in_channels, out_channels, hidden_channels, params): - super().__init__() - self.prenet = ResidualConv1dBNBlock( - in_channels, - hidden_channels, - hidden_channels, - kernel_size=5, - num_res_blocks=3, - num_conv_blocks=1, - dilations=[1, 1, 1], - ) - self.rel_pos_transformer = RelativePositionTransformer(hidden_channels, out_channels, hidden_channels, **params) - - def forward(self, x, x_mask=None, g=None): # pylint: disable=unused-argument - if x_mask is None: - x_mask = 1 - o = self.prenet(x) * x_mask - o = self.rel_pos_transformer(o, x_mask) - return o - - -class ResidualConv1dBNEncoder(nn.Module): - """Residual Convolutional Encoder as in the original Speedy Speech paper - - TODO: Integrate speaker conditioning vector. - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of hidden channels - params (dict): dictionary for residual convolutional blocks. - """ - - def __init__(self, in_channels, out_channels, hidden_channels, params): - super().__init__() - self.prenet = nn.Sequential(nn.Conv1d(in_channels, hidden_channels, 1), nn.ReLU()) - self.res_conv_block = ResidualConv1dBNBlock(hidden_channels, hidden_channels, hidden_channels, **params) - - self.postnet = nn.Sequential( - *[ - nn.Conv1d(hidden_channels, hidden_channels, 1), - nn.ReLU(), - nn.BatchNorm1d(hidden_channels), - nn.Conv1d(hidden_channels, out_channels, 1), - ] - ) - - def forward(self, x, x_mask=None, g=None): # pylint: disable=unused-argument - if x_mask is None: - x_mask = 1 - o = self.prenet(x) * x_mask - o = self.res_conv_block(o, x_mask) - o = self.postnet(o + x) * x_mask - return o * x_mask - - -class Encoder(nn.Module): - # pylint: disable=dangerous-default-value - """Factory class for Speedy Speech encoder enables different encoder types internally. - - Args: - num_chars (int): number of characters. - out_channels (int): number of output channels. - in_hidden_channels (int): input and hidden channels. Model keeps the input channels for the intermediate layers. - encoder_type (str): encoder layer types. 'transformers' or 'residual_conv_bn'. Default 'residual_conv_bn'. - encoder_params (dict): model parameters for specified encoder type. - c_in_channels (int): number of channels for conditional input. - - Note: - Default encoder_params to be set in config.json... - - ```python - # for 'relative_position_transformer' - encoder_params={ - 'hidden_channels_ffn': 128, - 'num_heads': 2, - "kernel_size": 3, - "dropout_p": 0.1, - "num_layers": 6, - "rel_attn_window_size": 4, - "input_length": None - }, - - # for 'residual_conv_bn' - encoder_params = { - "kernel_size": 4, - "dilations": 4 * [1, 2, 4] + [1], - "num_conv_blocks": 2, - "num_res_blocks": 13 - } - - # for 'fftransformer' - encoder_params = { - "hidden_channels_ffn": 1024 , - "num_heads": 2, - "num_layers": 6, - "dropout_p": 0.1 - } - ``` - """ - - def __init__( - self, - in_hidden_channels, - out_channels, - encoder_type="residual_conv_bn", - encoder_params={"kernel_size": 4, "dilations": 4 * [1, 2, 4] + [1], "num_conv_blocks": 2, "num_res_blocks": 13}, - c_in_channels=0, - ): - super().__init__() - self.out_channels = out_channels - self.in_channels = in_hidden_channels - self.hidden_channels = in_hidden_channels - self.encoder_type = encoder_type - self.c_in_channels = c_in_channels - - # init encoder - if encoder_type.lower() == "relative_position_transformer": - # text encoder - # pylint: disable=unexpected-keyword-arg - self.encoder = RelativePositionTransformerEncoder( - in_hidden_channels, out_channels, in_hidden_channels, encoder_params - ) - elif encoder_type.lower() == "residual_conv_bn": - self.encoder = ResidualConv1dBNEncoder(in_hidden_channels, out_channels, in_hidden_channels, encoder_params) - elif encoder_type.lower() == "fftransformer": - assert ( - in_hidden_channels == out_channels - ), "[!] must be `in_channels` == `out_channels` when encoder type is 'fftransformer'" - # pylint: disable=unexpected-keyword-arg - self.encoder = FFTransformerBlock(in_hidden_channels, **encoder_params) - else: - raise NotImplementedError(" [!] unknown encoder type.") - - def forward(self, x, x_mask, g=None): # pylint: disable=unused-argument - """ - Shapes: - x: [B, C, T] - x_mask: [B, 1, T] - g: [B, C, 1] - """ - o = self.encoder(x, x_mask) - return o * x_mask diff --git a/TTS/TTS/tts/layers/generic/__init__.py b/TTS/TTS/tts/layers/generic/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/layers/generic/aligner.py b/TTS/TTS/tts/layers/generic/aligner.py deleted file mode 100644 index baa6f0e9c4879207695b2de1193c9147b5a3fa4b..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/generic/aligner.py +++ /dev/null @@ -1,92 +0,0 @@ -from typing import Tuple - -import torch -from torch import nn - - -class AlignmentNetwork(torch.nn.Module): - """Aligner Network for learning alignment between the input text and the model output with Gaussian Attention. - - :: - - query -> conv1d -> relu -> conv1d -> relu -> conv1d -> L2_dist -> softmax -> alignment - key -> conv1d -> relu -> conv1d -----------------------^ - - Args: - in_query_channels (int): Number of channels in the query network. Defaults to 80. - in_key_channels (int): Number of channels in the key network. Defaults to 512. - attn_channels (int): Number of inner channels in the attention layers. Defaults to 80. - temperature (float): Temperature for the softmax. Defaults to 0.0005. - """ - - def __init__( - self, - in_query_channels=80, - in_key_channels=512, - attn_channels=80, - temperature=0.0005, - ): - super().__init__() - self.temperature = temperature - self.softmax = torch.nn.Softmax(dim=3) - self.log_softmax = torch.nn.LogSoftmax(dim=3) - - self.key_layer = nn.Sequential( - nn.Conv1d( - in_key_channels, - in_key_channels * 2, - kernel_size=3, - padding=1, - bias=True, - ), - torch.nn.ReLU(), - nn.Conv1d(in_key_channels * 2, attn_channels, kernel_size=1, padding=0, bias=True), - ) - - self.query_layer = nn.Sequential( - nn.Conv1d( - in_query_channels, - in_query_channels * 2, - kernel_size=3, - padding=1, - bias=True, - ), - torch.nn.ReLU(), - nn.Conv1d(in_query_channels * 2, in_query_channels, kernel_size=1, padding=0, bias=True), - torch.nn.ReLU(), - nn.Conv1d(in_query_channels, attn_channels, kernel_size=1, padding=0, bias=True), - ) - - self.init_layers() - - def init_layers(self): - torch.nn.init.xavier_uniform_(self.key_layer[0].weight, gain=torch.nn.init.calculate_gain("relu")) - torch.nn.init.xavier_uniform_(self.key_layer[2].weight, gain=torch.nn.init.calculate_gain("linear")) - torch.nn.init.xavier_uniform_(self.query_layer[0].weight, gain=torch.nn.init.calculate_gain("relu")) - torch.nn.init.xavier_uniform_(self.query_layer[2].weight, gain=torch.nn.init.calculate_gain("linear")) - torch.nn.init.xavier_uniform_(self.query_layer[4].weight, gain=torch.nn.init.calculate_gain("linear")) - - def forward( - self, queries: torch.tensor, keys: torch.tensor, mask: torch.tensor = None, attn_prior: torch.tensor = None - ) -> Tuple[torch.tensor, torch.tensor]: - """Forward pass of the aligner encoder. - Shapes: - - queries: :math:`[B, C, T_de]` - - keys: :math:`[B, C_emb, T_en]` - - mask: :math:`[B, T_de]` - Output: - attn (torch.tensor): :math:`[B, 1, T_en, T_de]` soft attention mask. - attn_logp (torch.tensor): :math:`[ßB, 1, T_en , T_de]` log probabilities. - """ - key_out = self.key_layer(keys) - query_out = self.query_layer(queries) - attn_factor = (query_out[:, :, :, None] - key_out[:, :, None]) ** 2 - attn_logp = -self.temperature * attn_factor.sum(1, keepdim=True) - if attn_prior is not None: - attn_logp = self.log_softmax(attn_logp) + torch.log(attn_prior[:, None] + 1e-8) - - if mask is not None: - attn_logp.data.masked_fill_(~mask.bool().unsqueeze(2), -float("inf")) - - attn = self.softmax(attn_logp) - return attn, attn_logp diff --git a/TTS/TTS/tts/layers/generic/gated_conv.py b/TTS/TTS/tts/layers/generic/gated_conv.py deleted file mode 100644 index 9a29c4499f970db538a4b99c3c05cba22576195f..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/generic/gated_conv.py +++ /dev/null @@ -1,37 +0,0 @@ -from torch import nn - -from .normalization import LayerNorm - - -class GatedConvBlock(nn.Module): - """Gated convolutional block as in https://arxiv.org/pdf/1612.08083.pdf - Args: - in_out_channels (int): number of input/output channels. - kernel_size (int): convolution kernel size. - dropout_p (float): dropout rate. - """ - - def __init__(self, in_out_channels, kernel_size, dropout_p, num_layers): - super().__init__() - # class arguments - self.dropout_p = dropout_p - self.num_layers = num_layers - # define layers - self.conv_layers = nn.ModuleList() - self.norm_layers = nn.ModuleList() - self.layers = nn.ModuleList() - for _ in range(num_layers): - self.conv_layers += [nn.Conv1d(in_out_channels, 2 * in_out_channels, kernel_size, padding=kernel_size // 2)] - self.norm_layers += [LayerNorm(2 * in_out_channels)] - - def forward(self, x, x_mask): - o = x - res = x - for idx in range(self.num_layers): - o = nn.functional.dropout(o, p=self.dropout_p, training=self.training) - o = self.conv_layers[idx](o * x_mask) - o = self.norm_layers[idx](o) - o = nn.functional.glu(o, dim=1) - o = res + o - res = o - return o diff --git a/TTS/TTS/tts/layers/generic/normalization.py b/TTS/TTS/tts/layers/generic/normalization.py deleted file mode 100644 index c0270e405e4246e47b7bc0787e4cd4b069533f92..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/generic/normalization.py +++ /dev/null @@ -1,123 +0,0 @@ -import torch -from torch import nn - - -class LayerNorm(nn.Module): - def __init__(self, channels, eps=1e-4): - """Layer norm for the 2nd dimension of the input. - Args: - channels (int): number of channels (2nd dimension) of the input. - eps (float): to prevent 0 division - - Shapes: - - input: (B, C, T) - - output: (B, C, T) - """ - super().__init__() - self.channels = channels - self.eps = eps - - self.gamma = nn.Parameter(torch.ones(1, channels, 1) * 0.1) - self.beta = nn.Parameter(torch.zeros(1, channels, 1)) - - def forward(self, x): - mean = torch.mean(x, 1, keepdim=True) - variance = torch.mean((x - mean) ** 2, 1, keepdim=True) - x = (x - mean) * torch.rsqrt(variance + self.eps) - x = x * self.gamma + self.beta - return x - - -class LayerNorm2(nn.Module): - """Layer norm for the 2nd dimension of the input using torch primitive. - Args: - channels (int): number of channels (2nd dimension) of the input. - eps (float): to prevent 0 division - - Shapes: - - input: (B, C, T) - - output: (B, C, T) - """ - - def __init__(self, channels, eps=1e-5): - super().__init__() - self.channels = channels - self.eps = eps - - self.gamma = nn.Parameter(torch.ones(channels)) - self.beta = nn.Parameter(torch.zeros(channels)) - - def forward(self, x): - x = x.transpose(1, -1) - x = torch.nn.functional.layer_norm(x, (self.channels,), self.gamma, self.beta, self.eps) - return x.transpose(1, -1) - - -class TemporalBatchNorm1d(nn.BatchNorm1d): - """Normalize each channel separately over time and batch.""" - - def __init__(self, channels, affine=True, track_running_stats=True, momentum=0.1): - super().__init__(channels, affine=affine, track_running_stats=track_running_stats, momentum=momentum) - - def forward(self, x): - return super().forward(x.transpose(2, 1)).transpose(2, 1) - - -class ActNorm(nn.Module): - """Activation Normalization bijector as an alternative to Batch Norm. It computes - mean and std from a sample data in advance and it uses these values - for normalization at training. - - Args: - channels (int): input channels. - ddi (False): data depended initialization flag. - - Shapes: - - inputs: (B, C, T) - - outputs: (B, C, T) - """ - - def __init__(self, channels, ddi=False, **kwargs): # pylint: disable=unused-argument - super().__init__() - self.channels = channels - self.initialized = not ddi - - self.logs = nn.Parameter(torch.zeros(1, channels, 1)) - self.bias = nn.Parameter(torch.zeros(1, channels, 1)) - - def forward(self, x, x_mask=None, reverse=False, **kwargs): # pylint: disable=unused-argument - if x_mask is None: - x_mask = torch.ones(x.size(0), 1, x.size(2)).to(device=x.device, dtype=x.dtype) - x_len = torch.sum(x_mask, [1, 2]) - if not self.initialized: - self.initialize(x, x_mask) - self.initialized = True - - if reverse: - z = (x - self.bias) * torch.exp(-self.logs) * x_mask - logdet = None - else: - z = (self.bias + torch.exp(self.logs) * x) * x_mask - logdet = torch.sum(self.logs) * x_len # [b] - - return z, logdet - - def store_inverse(self): - pass - - def set_ddi(self, ddi): - self.initialized = not ddi - - def initialize(self, x, x_mask): - with torch.no_grad(): - denom = torch.sum(x_mask, [0, 2]) - m = torch.sum(x * x_mask, [0, 2]) / denom - m_sq = torch.sum(x * x * x_mask, [0, 2]) / denom - v = m_sq - (m**2) - logs = 0.5 * torch.log(torch.clamp_min(v, 1e-6)) - - bias_init = (-m * torch.exp(-logs)).view(*self.bias.shape).to(dtype=self.bias.dtype) - logs_init = (-logs).view(*self.logs.shape).to(dtype=self.logs.dtype) - - self.bias.data.copy_(bias_init) - self.logs.data.copy_(logs_init) diff --git a/TTS/TTS/tts/layers/generic/pos_encoding.py b/TTS/TTS/tts/layers/generic/pos_encoding.py deleted file mode 100644 index 913add0d14332bf70c3ecd2a95869d0071310bd4..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/generic/pos_encoding.py +++ /dev/null @@ -1,69 +0,0 @@ -import math - -import torch -from torch import nn - - -class PositionalEncoding(nn.Module): - """Sinusoidal positional encoding for non-recurrent neural networks. - Implementation based on "Attention Is All You Need" - - Args: - channels (int): embedding size - dropout_p (float): dropout rate applied to the output. - max_len (int): maximum sequence length. - use_scale (bool): whether to use a learnable scaling coefficient. - """ - - def __init__(self, channels, dropout_p=0.0, max_len=5000, use_scale=False): - super().__init__() - if channels % 2 != 0: - raise ValueError( - "Cannot use sin/cos positional encoding with " "odd channels (got channels={:d})".format(channels) - ) - self.use_scale = use_scale - if use_scale: - self.scale = torch.nn.Parameter(torch.ones(1)) - pe = torch.zeros(max_len, channels) - position = torch.arange(0, max_len).unsqueeze(1) - div_term = torch.pow(10000, torch.arange(0, channels, 2).float() / channels) - pe[:, 0::2] = torch.sin(position.float() * div_term) - pe[:, 1::2] = torch.cos(position.float() * div_term) - pe = pe.unsqueeze(0).transpose(1, 2) - self.register_buffer("pe", pe) - if dropout_p > 0: - self.dropout = nn.Dropout(p=dropout_p) - self.channels = channels - - def forward(self, x, mask=None, first_idx=None, last_idx=None): - """ - Shapes: - x: [B, C, T] - mask: [B, 1, T] - first_idx: int - last_idx: int - """ - - x = x * math.sqrt(self.channels) - if first_idx is None: - if self.pe.size(2) < x.size(2): - raise RuntimeError( - f"Sequence is {x.size(2)} but PositionalEncoding is" - f" limited to {self.pe.size(2)}. See max_len argument." - ) - if mask is not None: - pos_enc = self.pe[:, :, : x.size(2)] * mask - else: - pos_enc = self.pe[:, :, : x.size(2)] - if self.use_scale: - x = x + self.scale * pos_enc - else: - x = x + pos_enc - else: - if self.use_scale: - x = x + self.scale * self.pe[:, :, first_idx:last_idx] - else: - x = x + self.pe[:, :, first_idx:last_idx] - if hasattr(self, "dropout"): - x = self.dropout(x) - return x diff --git a/TTS/TTS/tts/layers/generic/res_conv_bn.py b/TTS/TTS/tts/layers/generic/res_conv_bn.py deleted file mode 100644 index 4beda291aa15398024b5b16cd6bf12b88898a0a9..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/generic/res_conv_bn.py +++ /dev/null @@ -1,127 +0,0 @@ -from torch import nn - - -class ZeroTemporalPad(nn.Module): - """Pad sequences to equal lentgh in the temporal dimension""" - - def __init__(self, kernel_size, dilation): - super().__init__() - total_pad = dilation * (kernel_size - 1) - begin = total_pad // 2 - end = total_pad - begin - self.pad_layer = nn.ZeroPad2d((0, 0, begin, end)) - - def forward(self, x): - return self.pad_layer(x) - - -class Conv1dBN(nn.Module): - """1d convolutional with batch norm. - conv1d -> relu -> BN blocks. - - Note: - Batch normalization is applied after ReLU regarding the original implementation. - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - kernel_size (int): kernel size for convolutional filters. - dilation (int): dilation for convolution layers. - """ - - def __init__(self, in_channels, out_channels, kernel_size, dilation): - super().__init__() - padding = dilation * (kernel_size - 1) - pad_s = padding // 2 - pad_e = padding - pad_s - self.conv1d = nn.Conv1d(in_channels, out_channels, kernel_size, dilation=dilation) - self.pad = nn.ZeroPad2d((pad_s, pad_e, 0, 0)) # uneven left and right padding - self.norm = nn.BatchNorm1d(out_channels) - - def forward(self, x): - o = self.conv1d(x) - o = self.pad(o) - o = nn.functional.relu(o) - o = self.norm(o) - return o - - -class Conv1dBNBlock(nn.Module): - """1d convolutional block with batch norm. It is a set of conv1d -> relu -> BN blocks. - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of inner convolution channels. - kernel_size (int): kernel size for convolutional filters. - dilation (int): dilation for convolution layers. - num_conv_blocks (int, optional): number of convolutional blocks. Defaults to 2. - """ - - def __init__(self, in_channels, out_channels, hidden_channels, kernel_size, dilation, num_conv_blocks=2): - super().__init__() - self.conv_bn_blocks = [] - for idx in range(num_conv_blocks): - layer = Conv1dBN( - in_channels if idx == 0 else hidden_channels, - out_channels if idx == (num_conv_blocks - 1) else hidden_channels, - kernel_size, - dilation, - ) - self.conv_bn_blocks.append(layer) - self.conv_bn_blocks = nn.Sequential(*self.conv_bn_blocks) - - def forward(self, x): - """ - Shapes: - x: (B, D, T) - """ - return self.conv_bn_blocks(x) - - -class ResidualConv1dBNBlock(nn.Module): - """Residual Convolutional Blocks with BN - Each block has 'num_conv_block' conv layers and 'num_res_blocks' such blocks are connected - with residual connections. - - conv_block = (conv1d -> relu -> bn) x 'num_conv_blocks' - residuak_conv_block = (x -> conv_block -> + ->) x 'num_res_blocks' - ' - - - - - - - - - ^ - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of inner convolution channels. - kernel_size (int): kernel size for convolutional filters. - dilations (list): dilations for each convolution layer. - num_res_blocks (int, optional): number of residual blocks. Defaults to 13. - num_conv_blocks (int, optional): number of convolutional blocks in each residual block. Defaults to 2. - """ - - def __init__( - self, in_channels, out_channels, hidden_channels, kernel_size, dilations, num_res_blocks=13, num_conv_blocks=2 - ): - super().__init__() - assert len(dilations) == num_res_blocks - self.res_blocks = nn.ModuleList() - for idx, dilation in enumerate(dilations): - block = Conv1dBNBlock( - in_channels if idx == 0 else hidden_channels, - out_channels if (idx + 1) == len(dilations) else hidden_channels, - hidden_channels, - kernel_size, - dilation, - num_conv_blocks, - ) - self.res_blocks.append(block) - - def forward(self, x, x_mask=None): - if x_mask is None: - x_mask = 1.0 - o = x * x_mask - for block in self.res_blocks: - res = o - o = block(o) - o = o + res - if x_mask is not None: - o = o * x_mask - return o diff --git a/TTS/TTS/tts/layers/generic/time_depth_sep_conv.py b/TTS/TTS/tts/layers/generic/time_depth_sep_conv.py deleted file mode 100644 index 186cea02e75e156c40923de91086c369a9ea02ee..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/generic/time_depth_sep_conv.py +++ /dev/null @@ -1,84 +0,0 @@ -import torch -from torch import nn - - -class TimeDepthSeparableConv(nn.Module): - """Time depth separable convolution as in https://arxiv.org/pdf/1904.02619.pdf - It shows competative results with less computation and memory footprint.""" - - def __init__(self, in_channels, hid_channels, out_channels, kernel_size, bias=True): - super().__init__() - - self.in_channels = in_channels - self.out_channels = out_channels - self.hid_channels = hid_channels - self.kernel_size = kernel_size - - self.time_conv = nn.Conv1d( - in_channels, - 2 * hid_channels, - kernel_size=1, - stride=1, - padding=0, - bias=bias, - ) - self.norm1 = nn.BatchNorm1d(2 * hid_channels) - self.depth_conv = nn.Conv1d( - hid_channels, - hid_channels, - kernel_size, - stride=1, - padding=(kernel_size - 1) // 2, - groups=hid_channels, - bias=bias, - ) - self.norm2 = nn.BatchNorm1d(hid_channels) - self.time_conv2 = nn.Conv1d( - hid_channels, - out_channels, - kernel_size=1, - stride=1, - padding=0, - bias=bias, - ) - self.norm3 = nn.BatchNorm1d(out_channels) - - def forward(self, x): - x_res = x - x = self.time_conv(x) - x = self.norm1(x) - x = nn.functional.glu(x, dim=1) - x = self.depth_conv(x) - x = self.norm2(x) - x = x * torch.sigmoid(x) - x = self.time_conv2(x) - x = self.norm3(x) - x = x_res + x - return x - - -class TimeDepthSeparableConvBlock(nn.Module): - def __init__(self, in_channels, hid_channels, out_channels, num_layers, kernel_size, bias=True): - super().__init__() - assert (kernel_size - 1) % 2 == 0 - assert num_layers > 1 - - self.layers = nn.ModuleList() - layer = TimeDepthSeparableConv( - in_channels, hid_channels, out_channels if num_layers == 1 else hid_channels, kernel_size, bias - ) - self.layers.append(layer) - for idx in range(num_layers - 1): - layer = TimeDepthSeparableConv( - hid_channels, - hid_channels, - out_channels if (idx + 1) == (num_layers - 1) else hid_channels, - kernel_size, - bias, - ) - self.layers.append(layer) - - def forward(self, x, mask): - for layer in self.layers: - x = layer(x * mask) - return x diff --git a/TTS/TTS/tts/layers/generic/transformer.py b/TTS/TTS/tts/layers/generic/transformer.py deleted file mode 100644 index 9b7ecee2bacb68cd330e18630531c97bc6f2e6a3..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/generic/transformer.py +++ /dev/null @@ -1,89 +0,0 @@ -import torch -import torch.nn.functional as F -from torch import nn - - -class FFTransformer(nn.Module): - def __init__(self, in_out_channels, num_heads, hidden_channels_ffn=1024, kernel_size_fft=3, dropout_p=0.1): - super().__init__() - self.self_attn = nn.MultiheadAttention(in_out_channels, num_heads, dropout=dropout_p) - - padding = (kernel_size_fft - 1) // 2 - self.conv1 = nn.Conv1d(in_out_channels, hidden_channels_ffn, kernel_size=kernel_size_fft, padding=padding) - self.conv2 = nn.Conv1d(hidden_channels_ffn, in_out_channels, kernel_size=kernel_size_fft, padding=padding) - - self.norm1 = nn.LayerNorm(in_out_channels) - self.norm2 = nn.LayerNorm(in_out_channels) - - self.dropout1 = nn.Dropout(dropout_p) - self.dropout2 = nn.Dropout(dropout_p) - - def forward(self, src, src_mask=None, src_key_padding_mask=None): - """😦 ugly looking with all the transposing""" - src = src.permute(2, 0, 1) - src2, enc_align = self.self_attn(src, src, src, attn_mask=src_mask, key_padding_mask=src_key_padding_mask) - src = src + self.dropout1(src2) - src = self.norm1(src + src2) - # T x B x D -> B x D x T - src = src.permute(1, 2, 0) - src2 = self.conv2(F.relu(self.conv1(src))) - src2 = self.dropout2(src2) - src = src + src2 - src = src.transpose(1, 2) - src = self.norm2(src) - src = src.transpose(1, 2) - return src, enc_align - - -class FFTransformerBlock(nn.Module): - def __init__(self, in_out_channels, num_heads, hidden_channels_ffn, num_layers, dropout_p): - super().__init__() - self.fft_layers = nn.ModuleList( - [ - FFTransformer( - in_out_channels=in_out_channels, - num_heads=num_heads, - hidden_channels_ffn=hidden_channels_ffn, - dropout_p=dropout_p, - ) - for _ in range(num_layers) - ] - ) - - def forward(self, x, mask=None, g=None): # pylint: disable=unused-argument - """ - TODO: handle multi-speaker - Shapes: - - x: :math:`[B, C, T]` - - mask: :math:`[B, 1, T] or [B, T]` - """ - if mask is not None and mask.ndim == 3: - mask = mask.squeeze(1) - # mask is negated, torch uses 1s and 0s reversely. - mask = ~mask.bool() - alignments = [] - for layer in self.fft_layers: - x, align = layer(x, src_key_padding_mask=mask) - alignments.append(align.unsqueeze(1)) - alignments = torch.cat(alignments, 1) - return x - - -class FFTDurationPredictor: - def __init__( - self, in_channels, hidden_channels, num_heads, num_layers, dropout_p=0.1, cond_channels=None - ): # pylint: disable=unused-argument - self.fft = FFTransformerBlock(in_channels, num_heads, hidden_channels, num_layers, dropout_p) - self.proj = nn.Linear(in_channels, 1) - - def forward(self, x, mask=None, g=None): # pylint: disable=unused-argument - """ - Shapes: - - x: :math:`[B, C, T]` - - mask: :math:`[B, 1, T]` - - TODO: Handle the cond input - """ - x = self.fft(x, mask=mask) - x = self.proj(x) - return x diff --git a/TTS/TTS/tts/layers/generic/wavenet.py b/TTS/TTS/tts/layers/generic/wavenet.py deleted file mode 100644 index bc89da4fbe6b2425f2a39a578b8fad105a18da38..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/generic/wavenet.py +++ /dev/null @@ -1,175 +0,0 @@ -import torch -from torch import nn - - -@torch.jit.script -def fused_add_tanh_sigmoid_multiply(input_a, input_b, n_channels): - n_channels_int = n_channels[0] - in_act = input_a + input_b - t_act = torch.tanh(in_act[:, :n_channels_int, :]) - s_act = torch.sigmoid(in_act[:, n_channels_int:, :]) - acts = t_act * s_act - return acts - - -class WN(torch.nn.Module): - """Wavenet layers with weight norm and no input conditioning. - - |-----------------------------------------------------------------------------| - | |-> tanh -| | - res -|- conv1d(dilation) -> dropout -> + -| * -> conv1d1x1 -> split -|- + -> res - g -------------------------------------| |-> sigmoid -| | - o --------------------------------------------------------------------------- + --------- o - - Args: - in_channels (int): number of input channels. - hidden_channes (int): number of hidden channels. - kernel_size (int): filter kernel size for the first conv layer. - dilation_rate (int): dilations rate to increase dilation per layer. - If it is 2, dilations are 1, 2, 4, 8 for the next 4 layers. - num_layers (int): number of wavenet layers. - c_in_channels (int): number of channels of conditioning input. - dropout_p (float): dropout rate. - weight_norm (bool): enable/disable weight norm for convolution layers. - """ - - def __init__( - self, - in_channels, - hidden_channels, - kernel_size, - dilation_rate, - num_layers, - c_in_channels=0, - dropout_p=0, - weight_norm=True, - ): - super().__init__() - assert kernel_size % 2 == 1 - assert hidden_channels % 2 == 0 - self.in_channels = in_channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.num_layers = num_layers - self.c_in_channels = c_in_channels - self.dropout_p = dropout_p - - self.in_layers = torch.nn.ModuleList() - self.res_skip_layers = torch.nn.ModuleList() - self.dropout = nn.Dropout(dropout_p) - - # init conditioning layer - if c_in_channels > 0: - cond_layer = torch.nn.Conv1d(c_in_channels, 2 * hidden_channels * num_layers, 1) - self.cond_layer = torch.nn.utils.weight_norm(cond_layer, name="weight") - # intermediate layers - for i in range(num_layers): - dilation = dilation_rate**i - padding = int((kernel_size * dilation - dilation) / 2) - if i == 0: - in_layer = torch.nn.Conv1d( - in_channels, 2 * hidden_channels, kernel_size, dilation=dilation, padding=padding - ) - else: - in_layer = torch.nn.Conv1d( - hidden_channels, 2 * hidden_channels, kernel_size, dilation=dilation, padding=padding - ) - in_layer = torch.nn.utils.weight_norm(in_layer, name="weight") - self.in_layers.append(in_layer) - - if i < num_layers - 1: - res_skip_channels = 2 * hidden_channels - else: - res_skip_channels = hidden_channels - - res_skip_layer = torch.nn.Conv1d(hidden_channels, res_skip_channels, 1) - res_skip_layer = torch.nn.utils.weight_norm(res_skip_layer, name="weight") - self.res_skip_layers.append(res_skip_layer) - # setup weight norm - if not weight_norm: - self.remove_weight_norm() - - def forward(self, x, x_mask=None, g=None, **kwargs): # pylint: disable=unused-argument - output = torch.zeros_like(x) - n_channels_tensor = torch.IntTensor([self.hidden_channels]) - x_mask = 1.0 if x_mask is None else x_mask - if g is not None: - g = self.cond_layer(g) - for i in range(self.num_layers): - x_in = self.in_layers[i](x) - x_in = self.dropout(x_in) - if g is not None: - cond_offset = i * 2 * self.hidden_channels - g_l = g[:, cond_offset : cond_offset + 2 * self.hidden_channels, :] - else: - g_l = torch.zeros_like(x_in) - acts = fused_add_tanh_sigmoid_multiply(x_in, g_l, n_channels_tensor) - res_skip_acts = self.res_skip_layers[i](acts) - if i < self.num_layers - 1: - x = (x + res_skip_acts[:, : self.hidden_channels, :]) * x_mask - output = output + res_skip_acts[:, self.hidden_channels :, :] - else: - output = output + res_skip_acts - return output * x_mask - - def remove_weight_norm(self): - if self.c_in_channels != 0: - torch.nn.utils.remove_weight_norm(self.cond_layer) - for l in self.in_layers: - torch.nn.utils.remove_weight_norm(l) - for l in self.res_skip_layers: - torch.nn.utils.remove_weight_norm(l) - - -class WNBlocks(nn.Module): - """Wavenet blocks. - - Note: After each block dilation resets to 1 and it increases in each block - along the dilation rate. - - Args: - in_channels (int): number of input channels. - hidden_channes (int): number of hidden channels. - kernel_size (int): filter kernel size for the first conv layer. - dilation_rate (int): dilations rate to increase dilation per layer. - If it is 2, dilations are 1, 2, 4, 8 for the next 4 layers. - num_blocks (int): number of wavenet blocks. - num_layers (int): number of wavenet layers. - c_in_channels (int): number of channels of conditioning input. - dropout_p (float): dropout rate. - weight_norm (bool): enable/disable weight norm for convolution layers. - """ - - def __init__( - self, - in_channels, - hidden_channels, - kernel_size, - dilation_rate, - num_blocks, - num_layers, - c_in_channels=0, - dropout_p=0, - weight_norm=True, - ): - super().__init__() - self.wn_blocks = nn.ModuleList() - for idx in range(num_blocks): - layer = WN( - in_channels=in_channels if idx == 0 else hidden_channels, - hidden_channels=hidden_channels, - kernel_size=kernel_size, - dilation_rate=dilation_rate, - num_layers=num_layers, - c_in_channels=c_in_channels, - dropout_p=dropout_p, - weight_norm=weight_norm, - ) - self.wn_blocks.append(layer) - - def forward(self, x, x_mask=None, g=None): - o = x - for layer in self.wn_blocks: - o = layer(o, x_mask, g) - return o diff --git a/TTS/TTS/tts/layers/glow_tts/__init__.py b/TTS/TTS/tts/layers/glow_tts/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/layers/glow_tts/decoder.py b/TTS/TTS/tts/layers/glow_tts/decoder.py deleted file mode 100644 index 61c5174ac5e67885288043885290c2906656c99c..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/glow_tts/decoder.py +++ /dev/null @@ -1,141 +0,0 @@ -import torch -from torch import nn - -from TTS.tts.layers.generic.normalization import ActNorm -from TTS.tts.layers.glow_tts.glow import CouplingBlock, InvConvNear - - -def squeeze(x, x_mask=None, num_sqz=2): - """GlowTTS squeeze operation - Increase number of channels and reduce number of time steps - by the same factor. - - Note: - each 's' is a n-dimensional vector. - ``[s1,s2,s3,s4,s5,s6] --> [[s1, s3, s5], [s2, s4, s6]]`` - """ - b, c, t = x.size() - - t = (t // num_sqz) * num_sqz - x = x[:, :, :t] - x_sqz = x.view(b, c, t // num_sqz, num_sqz) - x_sqz = x_sqz.permute(0, 3, 1, 2).contiguous().view(b, c * num_sqz, t // num_sqz) - - if x_mask is not None: - x_mask = x_mask[:, :, num_sqz - 1 :: num_sqz] - else: - x_mask = torch.ones(b, 1, t // num_sqz).to(device=x.device, dtype=x.dtype) - return x_sqz * x_mask, x_mask - - -def unsqueeze(x, x_mask=None, num_sqz=2): - """GlowTTS unsqueeze operation (revert the squeeze) - - Note: - each 's' is a n-dimensional vector. - ``[[s1, s3, s5], [s2, s4, s6]] --> [[s1, s3, s5, s2, s4, s6]]`` - """ - b, c, t = x.size() - - x_unsqz = x.view(b, num_sqz, c // num_sqz, t) - x_unsqz = x_unsqz.permute(0, 2, 3, 1).contiguous().view(b, c // num_sqz, t * num_sqz) - - if x_mask is not None: - x_mask = x_mask.unsqueeze(-1).repeat(1, 1, 1, num_sqz).view(b, 1, t * num_sqz) - else: - x_mask = torch.ones(b, 1, t * num_sqz).to(device=x.device, dtype=x.dtype) - return x_unsqz * x_mask, x_mask - - -class Decoder(nn.Module): - """Stack of Glow Decoder Modules. - - :: - - Squeeze -> ActNorm -> InvertibleConv1x1 -> AffineCoupling -> Unsqueeze - - Args: - in_channels (int): channels of input tensor. - hidden_channels (int): hidden decoder channels. - kernel_size (int): Coupling block kernel size. (Wavenet filter kernel size.) - dilation_rate (int): rate to increase dilation by each layer in a decoder block. - num_flow_blocks (int): number of decoder blocks. - num_coupling_layers (int): number coupling layers. (number of wavenet layers.) - dropout_p (float): wavenet dropout rate. - sigmoid_scale (bool): enable/disable sigmoid scaling in coupling layer. - """ - - def __init__( - self, - in_channels, - hidden_channels, - kernel_size, - dilation_rate, - num_flow_blocks, - num_coupling_layers, - dropout_p=0.0, - num_splits=4, - num_squeeze=2, - sigmoid_scale=False, - c_in_channels=0, - ): - super().__init__() - - self.in_channels = in_channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.num_flow_blocks = num_flow_blocks - self.num_coupling_layers = num_coupling_layers - self.dropout_p = dropout_p - self.num_splits = num_splits - self.num_squeeze = num_squeeze - self.sigmoid_scale = sigmoid_scale - self.c_in_channels = c_in_channels - - self.flows = nn.ModuleList() - for _ in range(num_flow_blocks): - self.flows.append(ActNorm(channels=in_channels * num_squeeze)) - self.flows.append(InvConvNear(channels=in_channels * num_squeeze, num_splits=num_splits)) - self.flows.append( - CouplingBlock( - in_channels * num_squeeze, - hidden_channels, - kernel_size=kernel_size, - dilation_rate=dilation_rate, - num_layers=num_coupling_layers, - c_in_channels=c_in_channels, - dropout_p=dropout_p, - sigmoid_scale=sigmoid_scale, - ) - ) - - def forward(self, x, x_mask, g=None, reverse=False): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1 ,T]` - - g: :math:`[B, C]` - """ - if not reverse: - flows = self.flows - logdet_tot = 0 - else: - flows = reversed(self.flows) - logdet_tot = None - - if self.num_squeeze > 1: - x, x_mask = squeeze(x, x_mask, self.num_squeeze) - for f in flows: - if not reverse: - x, logdet = f(x, x_mask, g=g, reverse=reverse) - logdet_tot += logdet - else: - x, logdet = f(x, x_mask, g=g, reverse=reverse) - if self.num_squeeze > 1: - x, x_mask = unsqueeze(x, x_mask, self.num_squeeze) - return x, logdet_tot - - def store_inverse(self): - for f in self.flows: - f.store_inverse() diff --git a/TTS/TTS/tts/layers/glow_tts/duration_predictor.py b/TTS/TTS/tts/layers/glow_tts/duration_predictor.py deleted file mode 100644 index e766ed6ab5a0348eaca8d1482be124003d8b8c68..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/glow_tts/duration_predictor.py +++ /dev/null @@ -1,69 +0,0 @@ -import torch -from torch import nn - -from ..generic.normalization import LayerNorm - - -class DurationPredictor(nn.Module): - """Glow-TTS duration prediction model. - - :: - - [2 x (conv1d_kxk -> relu -> layer_norm -> dropout)] -> conv1d_1x1 -> durs - - Args: - in_channels (int): Number of channels of the input tensor. - hidden_channels (int): Number of hidden channels of the network. - kernel_size (int): Kernel size for the conv layers. - dropout_p (float): Dropout rate used after each conv layer. - """ - - def __init__(self, in_channels, hidden_channels, kernel_size, dropout_p, cond_channels=None, language_emb_dim=None): - super().__init__() - - # add language embedding dim in the input - if language_emb_dim: - in_channels += language_emb_dim - - # class arguments - self.in_channels = in_channels - self.filter_channels = hidden_channels - self.kernel_size = kernel_size - self.dropout_p = dropout_p - # layers - self.drop = nn.Dropout(dropout_p) - self.conv_1 = nn.Conv1d(in_channels, hidden_channels, kernel_size, padding=kernel_size // 2) - self.norm_1 = LayerNorm(hidden_channels) - self.conv_2 = nn.Conv1d(hidden_channels, hidden_channels, kernel_size, padding=kernel_size // 2) - self.norm_2 = LayerNorm(hidden_channels) - # output layer - self.proj = nn.Conv1d(hidden_channels, 1, 1) - if cond_channels is not None and cond_channels != 0: - self.cond = nn.Conv1d(cond_channels, in_channels, 1) - - if language_emb_dim != 0 and language_emb_dim is not None: - self.cond_lang = nn.Conv1d(language_emb_dim, in_channels, 1) - - def forward(self, x, x_mask, g=None, lang_emb=None): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - - g: :math:`[B, C, 1]` - """ - if g is not None: - x = x + self.cond(g) - - if lang_emb is not None: - x = x + self.cond_lang(lang_emb) - - x = self.conv_1(x * x_mask) - x = torch.relu(x) - x = self.norm_1(x) - x = self.drop(x) - x = self.conv_2(x * x_mask) - x = torch.relu(x) - x = self.norm_2(x) - x = self.drop(x) - x = self.proj(x * x_mask) - return x * x_mask diff --git a/TTS/TTS/tts/layers/glow_tts/encoder.py b/TTS/TTS/tts/layers/glow_tts/encoder.py deleted file mode 100644 index 3b43e527f5e9ca2bd0880bf204e04a1526bc8dfb..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/glow_tts/encoder.py +++ /dev/null @@ -1,179 +0,0 @@ -import math - -import torch -from torch import nn - -from TTS.tts.layers.generic.gated_conv import GatedConvBlock -from TTS.tts.layers.generic.res_conv_bn import ResidualConv1dBNBlock -from TTS.tts.layers.generic.time_depth_sep_conv import TimeDepthSeparableConvBlock -from TTS.tts.layers.glow_tts.duration_predictor import DurationPredictor -from TTS.tts.layers.glow_tts.glow import ResidualConv1dLayerNormBlock -from TTS.tts.layers.glow_tts.transformer import RelativePositionTransformer -from TTS.tts.utils.helpers import sequence_mask - - -class Encoder(nn.Module): - """Glow-TTS encoder module. - - :: - - embedding -> -> encoder_module -> --> proj_mean - | - |-> proj_var - | - |-> concat -> duration_predictor - ↑ - speaker_embed - - Args: - num_chars (int): number of characters. - out_channels (int): number of output channels. - hidden_channels (int): encoder's embedding size. - hidden_channels_ffn (int): transformer's feed-forward channels. - kernel_size (int): kernel size for conv layers and duration predictor. - dropout_p (float): dropout rate for any dropout layer. - mean_only (bool): if True, output only mean values and use constant std. - use_prenet (bool): if True, use pre-convolutional layers before transformer layers. - c_in_channels (int): number of channels in conditional input. - - Shapes: - - input: (B, T, C) - - :: - - suggested encoder params... - - for encoder_type == 'rel_pos_transformer' - encoder_params={ - 'kernel_size':3, - 'dropout_p': 0.1, - 'num_layers': 6, - 'num_heads': 2, - 'hidden_channels_ffn': 768, # 4 times the hidden_channels - 'input_length': None - } - - for encoder_type == 'gated_conv' - encoder_params={ - 'kernel_size':5, - 'dropout_p': 0.1, - 'num_layers': 9, - } - - for encoder_type == 'residual_conv_bn' - encoder_params={ - "kernel_size": 4, - "dilations": [1, 2, 4, 1, 2, 4, 1, 2, 4, 1, 2, 4, 1], - "num_conv_blocks": 2, - "num_res_blocks": 13 - } - - for encoder_type == 'time_depth_separable' - encoder_params={ - "kernel_size": 5, - 'num_layers': 9, - } - """ - - def __init__( - self, - num_chars, - out_channels, - hidden_channels, - hidden_channels_dp, - encoder_type, - encoder_params, - dropout_p_dp=0.1, - mean_only=False, - use_prenet=True, - c_in_channels=0, - ): - super().__init__() - # class arguments - self.num_chars = num_chars - self.out_channels = out_channels - self.hidden_channels = hidden_channels - self.hidden_channels_dp = hidden_channels_dp - self.dropout_p_dp = dropout_p_dp - self.mean_only = mean_only - self.use_prenet = use_prenet - self.c_in_channels = c_in_channels - self.encoder_type = encoder_type - # embedding layer - self.emb = nn.Embedding(num_chars, hidden_channels) - nn.init.normal_(self.emb.weight, 0.0, hidden_channels**-0.5) - # init encoder module - if encoder_type.lower() == "rel_pos_transformer": - if use_prenet: - self.prenet = ResidualConv1dLayerNormBlock( - hidden_channels, hidden_channels, hidden_channels, kernel_size=5, num_layers=3, dropout_p=0.5 - ) - self.encoder = RelativePositionTransformer( - hidden_channels, hidden_channels, hidden_channels, **encoder_params - ) - elif encoder_type.lower() == "gated_conv": - self.encoder = GatedConvBlock(hidden_channels, **encoder_params) - elif encoder_type.lower() == "residual_conv_bn": - if use_prenet: - self.prenet = nn.Sequential(nn.Conv1d(hidden_channels, hidden_channels, 1), nn.ReLU()) - self.encoder = ResidualConv1dBNBlock(hidden_channels, hidden_channels, hidden_channels, **encoder_params) - self.postnet = nn.Sequential( - nn.Conv1d(self.hidden_channels, self.hidden_channels, 1), nn.BatchNorm1d(self.hidden_channels) - ) - elif encoder_type.lower() == "time_depth_separable": - if use_prenet: - self.prenet = ResidualConv1dLayerNormBlock( - hidden_channels, hidden_channels, hidden_channels, kernel_size=5, num_layers=3, dropout_p=0.5 - ) - self.encoder = TimeDepthSeparableConvBlock( - hidden_channels, hidden_channels, hidden_channels, **encoder_params - ) - else: - raise ValueError(" [!] Unkown encoder type.") - - # final projection layers - self.proj_m = nn.Conv1d(hidden_channels, out_channels, 1) - if not mean_only: - self.proj_s = nn.Conv1d(hidden_channels, out_channels, 1) - # duration predictor - self.duration_predictor = DurationPredictor( - hidden_channels + c_in_channels, hidden_channels_dp, 3, dropout_p_dp - ) - - def forward(self, x, x_lengths, g=None): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_lengths: :math:`[B]` - - g (optional): :math:`[B, 1, T]` - """ - # embedding layer - # [B ,T, D] - x = self.emb(x) * math.sqrt(self.hidden_channels) - # [B, D, T] - x = torch.transpose(x, 1, -1) - # compute input sequence mask - x_mask = torch.unsqueeze(sequence_mask(x_lengths, x.size(2)), 1).to(x.dtype) - # prenet - if hasattr(self, "prenet") and self.use_prenet: - x = self.prenet(x, x_mask) - # encoder - x = self.encoder(x, x_mask) - # postnet - if hasattr(self, "postnet"): - x = self.postnet(x) * x_mask - # set duration predictor input - if g is not None: - g_exp = g.expand(-1, -1, x.size(-1)) - x_dp = torch.cat([x.detach(), g_exp], 1) - else: - x_dp = x.detach() - # final projection layer - x_m = self.proj_m(x) * x_mask - if not self.mean_only: - x_logs = self.proj_s(x) * x_mask - else: - x_logs = torch.zeros_like(x_m) - # duration predictor - logw = self.duration_predictor(x_dp, x_mask) - return x_m, x_logs, logw, x_mask diff --git a/TTS/TTS/tts/layers/glow_tts/glow.py b/TTS/TTS/tts/layers/glow_tts/glow.py deleted file mode 100644 index 273c62a5c055dcfd79b748092b37a7e8dacb0082..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/glow_tts/glow.py +++ /dev/null @@ -1,233 +0,0 @@ -import torch -from packaging.version import Version -from torch import nn -from torch.nn import functional as F - -from TTS.tts.layers.generic.wavenet import WN - -from ..generic.normalization import LayerNorm - - -class ResidualConv1dLayerNormBlock(nn.Module): - """Conv1d with Layer Normalization and residual connection as in GlowTTS paper. - https://arxiv.org/pdf/1811.00002.pdf - - :: - - x |-> conv1d -> layer_norm -> relu -> dropout -> + -> o - |---------------> conv1d_1x1 ------------------| - - Args: - in_channels (int): number of input tensor channels. - hidden_channels (int): number of inner layer channels. - out_channels (int): number of output tensor channels. - kernel_size (int): kernel size of conv1d filter. - num_layers (int): number of blocks. - dropout_p (float): dropout rate for each block. - """ - - def __init__(self, in_channels, hidden_channels, out_channels, kernel_size, num_layers, dropout_p): - super().__init__() - self.in_channels = in_channels - self.hidden_channels = hidden_channels - self.out_channels = out_channels - self.kernel_size = kernel_size - self.num_layers = num_layers - self.dropout_p = dropout_p - assert num_layers > 1, " [!] number of layers should be > 0." - assert kernel_size % 2 == 1, " [!] kernel size should be odd number." - - self.conv_layers = nn.ModuleList() - self.norm_layers = nn.ModuleList() - - for idx in range(num_layers): - self.conv_layers.append( - nn.Conv1d( - in_channels if idx == 0 else hidden_channels, hidden_channels, kernel_size, padding=kernel_size // 2 - ) - ) - self.norm_layers.append(LayerNorm(hidden_channels)) - - self.proj = nn.Conv1d(hidden_channels, out_channels, 1) - self.proj.weight.data.zero_() - self.proj.bias.data.zero_() - - def forward(self, x, x_mask): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - """ - x_res = x - for i in range(self.num_layers): - x = self.conv_layers[i](x * x_mask) - x = self.norm_layers[i](x * x_mask) - x = F.dropout(F.relu(x), self.dropout_p, training=self.training) - x = x_res + self.proj(x) - return x * x_mask - - -class InvConvNear(nn.Module): - """Invertible Convolution with input splitting as in GlowTTS paper. - https://arxiv.org/pdf/1811.00002.pdf - - Args: - channels (int): input and output channels. - num_splits (int): number of splits, also H and W of conv layer. - no_jacobian (bool): enable/disable jacobian computations. - - Note: - Split the input into groups of size self.num_splits and - perform 1x1 convolution separately. Cast 1x1 conv operation - to 2d by reshaping the input for efficiency. - """ - - def __init__(self, channels, num_splits=4, no_jacobian=False, **kwargs): # pylint: disable=unused-argument - super().__init__() - assert num_splits % 2 == 0 - self.channels = channels - self.num_splits = num_splits - self.no_jacobian = no_jacobian - self.weight_inv = None - - if Version(torch.__version__) < Version("1.9"): - w_init = torch.qr(torch.FloatTensor(self.num_splits, self.num_splits).normal_())[0] - else: - w_init = torch.linalg.qr(torch.FloatTensor(self.num_splits, self.num_splits).normal_(), "complete")[0] - - if torch.det(w_init) < 0: - w_init[:, 0] = -1 * w_init[:, 0] - self.weight = nn.Parameter(w_init) - - def forward(self, x, x_mask=None, reverse=False, **kwargs): # pylint: disable=unused-argument - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - """ - b, c, t = x.size() - assert c % self.num_splits == 0 - if x_mask is None: - x_mask = 1 - x_len = torch.ones((b,), dtype=x.dtype, device=x.device) * t - else: - x_len = torch.sum(x_mask, [1, 2]) - - x = x.view(b, 2, c // self.num_splits, self.num_splits // 2, t) - x = x.permute(0, 1, 3, 2, 4).contiguous().view(b, self.num_splits, c // self.num_splits, t) - - if reverse: - if self.weight_inv is not None: - weight = self.weight_inv - else: - weight = torch.inverse(self.weight.float()).to(dtype=self.weight.dtype) - logdet = None - else: - weight = self.weight - if self.no_jacobian: - logdet = 0 - else: - logdet = torch.logdet(self.weight) * (c / self.num_splits) * x_len # [b] - - weight = weight.view(self.num_splits, self.num_splits, 1, 1) - z = F.conv2d(x, weight) - - z = z.view(b, 2, self.num_splits // 2, c // self.num_splits, t) - z = z.permute(0, 1, 3, 2, 4).contiguous().view(b, c, t) * x_mask - return z, logdet - - def store_inverse(self): - weight_inv = torch.inverse(self.weight.float()).to(dtype=self.weight.dtype) - self.weight_inv = nn.Parameter(weight_inv, requires_grad=False) - - -class CouplingBlock(nn.Module): - """Glow Affine Coupling block as in GlowTTS paper. - https://arxiv.org/pdf/1811.00002.pdf - - :: - - x --> x0 -> conv1d -> wavenet -> conv1d --> t, s -> concat(s*x1 + t, x0) -> o - '-> x1 - - - - - - - - - - - - - - - - - - - - - - - - - ^ - - Args: - in_channels (int): number of input tensor channels. - hidden_channels (int): number of hidden channels. - kernel_size (int): WaveNet filter kernel size. - dilation_rate (int): rate to increase dilation by each layer in a decoder block. - num_layers (int): number of WaveNet layers. - c_in_channels (int): number of conditioning input channels. - dropout_p (int): wavenet dropout rate. - sigmoid_scale (bool): enable/disable sigmoid scaling for output scale. - - Note: - It does not use the conditional inputs differently from WaveGlow. - """ - - def __init__( - self, - in_channels, - hidden_channels, - kernel_size, - dilation_rate, - num_layers, - c_in_channels=0, - dropout_p=0, - sigmoid_scale=False, - ): - super().__init__() - self.in_channels = in_channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.num_layers = num_layers - self.c_in_channels = c_in_channels - self.dropout_p = dropout_p - self.sigmoid_scale = sigmoid_scale - # input layer - start = torch.nn.Conv1d(in_channels // 2, hidden_channels, 1) - start = torch.nn.utils.weight_norm(start) - self.start = start - # output layer - # Initializing last layer to 0 makes the affine coupling layers - # do nothing at first. This helps with training stability - end = torch.nn.Conv1d(hidden_channels, in_channels, 1) - end.weight.data.zero_() - end.bias.data.zero_() - self.end = end - # coupling layers - self.wn = WN(hidden_channels, hidden_channels, kernel_size, dilation_rate, num_layers, c_in_channels, dropout_p) - - def forward(self, x, x_mask=None, reverse=False, g=None, **kwargs): # pylint: disable=unused-argument - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - - g: :math:`[B, C, 1]` - """ - if x_mask is None: - x_mask = 1 - x_0, x_1 = x[:, : self.in_channels // 2], x[:, self.in_channels // 2 :] - - x = self.start(x_0) * x_mask - x = self.wn(x, x_mask, g) - out = self.end(x) - - z_0 = x_0 - t = out[:, : self.in_channels // 2, :] - s = out[:, self.in_channels // 2 :, :] - if self.sigmoid_scale: - s = torch.log(1e-6 + torch.sigmoid(s + 2)) - - if reverse: - z_1 = (x_1 - t) * torch.exp(-s) * x_mask - logdet = None - else: - z_1 = (t + torch.exp(s) * x_1) * x_mask - logdet = torch.sum(s * x_mask, [1, 2]) - - z = torch.cat([z_0, z_1], 1) - return z, logdet - - def store_inverse(self): - self.wn.remove_weight_norm() diff --git a/TTS/TTS/tts/layers/glow_tts/transformer.py b/TTS/TTS/tts/layers/glow_tts/transformer.py deleted file mode 100644 index 02688d611fe41394e8e1fedbc5742845eae85cfd..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/glow_tts/transformer.py +++ /dev/null @@ -1,432 +0,0 @@ -import math - -import torch -from torch import nn -from torch.nn import functional as F - -from TTS.tts.layers.generic.normalization import LayerNorm, LayerNorm2 - - -class RelativePositionMultiHeadAttention(nn.Module): - """Multi-head attention with Relative Positional embedding. - https://arxiv.org/pdf/1809.04281.pdf - - It learns positional embeddings for a window of neighbours. For keys and values, - it learns different set of embeddings. Key embeddings are agregated with the attention - scores and value embeddings are aggregated with the output. - - Note: - Example with relative attention window size 2 - - - input = [a, b, c, d, e] - - rel_attn_embeddings = [e(t-2), e(t-1), e(t+1), e(t+2)] - - So it learns 4 embedding vectors (in total 8) separately for key and value vectors. - - Considering the input c - - - e(t-2) corresponds to c -> a - - e(t-2) corresponds to c -> b - - e(t-2) corresponds to c -> d - - e(t-2) corresponds to c -> e - - These embeddings are shared among different time steps. So input a, b, d and e also uses - the same embeddings. - - Embeddings are ignored when the relative window is out of limit for the first and the last - n items. - - Args: - channels (int): input and inner layer channels. - out_channels (int): output channels. - num_heads (int): number of attention heads. - rel_attn_window_size (int, optional): relation attention window size. - If 4, for each time step next and previous 4 time steps are attended. - If default, relative encoding is disabled and it is a regular transformer. - Defaults to None. - heads_share (bool, optional): [description]. Defaults to True. - dropout_p (float, optional): dropout rate. Defaults to 0.. - input_length (int, optional): intput length for positional encoding. Defaults to None. - proximal_bias (bool, optional): enable/disable proximal bias as in the paper. Defaults to False. - proximal_init (bool, optional): enable/disable poximal init as in the paper. - Init key and query layer weights the same. Defaults to False. - """ - - def __init__( - self, - channels, - out_channels, - num_heads, - rel_attn_window_size=None, - heads_share=True, - dropout_p=0.0, - input_length=None, - proximal_bias=False, - proximal_init=False, - ): - super().__init__() - assert channels % num_heads == 0, " [!] channels should be divisible by num_heads." - # class attributes - self.channels = channels - self.out_channels = out_channels - self.num_heads = num_heads - self.rel_attn_window_size = rel_attn_window_size - self.heads_share = heads_share - self.input_length = input_length - self.proximal_bias = proximal_bias - self.dropout_p = dropout_p - self.attn = None - # query, key, value layers - self.k_channels = channels // num_heads - self.conv_q = nn.Conv1d(channels, channels, 1) - self.conv_k = nn.Conv1d(channels, channels, 1) - self.conv_v = nn.Conv1d(channels, channels, 1) - # output layers - self.conv_o = nn.Conv1d(channels, out_channels, 1) - self.dropout = nn.Dropout(dropout_p) - # relative positional encoding layers - if rel_attn_window_size is not None: - n_heads_rel = 1 if heads_share else num_heads - rel_stddev = self.k_channels**-0.5 - emb_rel_k = nn.Parameter( - torch.randn(n_heads_rel, rel_attn_window_size * 2 + 1, self.k_channels) * rel_stddev - ) - emb_rel_v = nn.Parameter( - torch.randn(n_heads_rel, rel_attn_window_size * 2 + 1, self.k_channels) * rel_stddev - ) - self.register_parameter("emb_rel_k", emb_rel_k) - self.register_parameter("emb_rel_v", emb_rel_v) - - # init layers - nn.init.xavier_uniform_(self.conv_q.weight) - nn.init.xavier_uniform_(self.conv_k.weight) - # proximal bias - if proximal_init: - self.conv_k.weight.data.copy_(self.conv_q.weight.data) - self.conv_k.bias.data.copy_(self.conv_q.bias.data) - nn.init.xavier_uniform_(self.conv_v.weight) - - def forward(self, x, c, attn_mask=None): - """ - Shapes: - - x: :math:`[B, C, T]` - - c: :math:`[B, C, T]` - - attn_mask: :math:`[B, 1, T, T]` - """ - q = self.conv_q(x) - k = self.conv_k(c) - v = self.conv_v(c) - x, self.attn = self.attention(q, k, v, mask=attn_mask) - x = self.conv_o(x) - return x - - def attention(self, query, key, value, mask=None): - # reshape [b, d, t] -> [b, n_h, t, d_k] - b, d, t_s, t_t = (*key.size(), query.size(2)) - query = query.view(b, self.num_heads, self.k_channels, t_t).transpose(2, 3) - key = key.view(b, self.num_heads, self.k_channels, t_s).transpose(2, 3) - value = value.view(b, self.num_heads, self.k_channels, t_s).transpose(2, 3) - # compute raw attention scores - scores = torch.matmul(query, key.transpose(-2, -1)) / math.sqrt(self.k_channels) - # relative positional encoding for scores - if self.rel_attn_window_size is not None: - assert t_s == t_t, "Relative attention is only available for self-attention." - # get relative key embeddings - key_relative_embeddings = self._get_relative_embeddings(self.emb_rel_k, t_s) - rel_logits = self._matmul_with_relative_keys(query, key_relative_embeddings) - rel_logits = self._relative_position_to_absolute_position(rel_logits) - scores_local = rel_logits / math.sqrt(self.k_channels) - scores = scores + scores_local - # proximan bias - if self.proximal_bias: - assert t_s == t_t, "Proximal bias is only available for self-attention." - scores = scores + self._attn_proximity_bias(t_s).to(device=scores.device, dtype=scores.dtype) - # attention score masking - if mask is not None: - # add small value to prevent oor error. - scores = scores.masked_fill(mask == 0, -1e4) - if self.input_length is not None: - block_mask = torch.ones_like(scores).triu(-1 * self.input_length).tril(self.input_length) - scores = scores * block_mask + -1e4 * (1 - block_mask) - # attention score normalization - p_attn = F.softmax(scores, dim=-1) # [b, n_h, t_t, t_s] - # apply dropout to attention weights - p_attn = self.dropout(p_attn) - # compute output - output = torch.matmul(p_attn, value) - # relative positional encoding for values - if self.rel_attn_window_size is not None: - relative_weights = self._absolute_position_to_relative_position(p_attn) - value_relative_embeddings = self._get_relative_embeddings(self.emb_rel_v, t_s) - output = output + self._matmul_with_relative_values(relative_weights, value_relative_embeddings) - output = output.transpose(2, 3).contiguous().view(b, d, t_t) # [b, n_h, t_t, d_k] -> [b, d, t_t] - return output, p_attn - - @staticmethod - def _matmul_with_relative_values(p_attn, re): - """ - Args: - p_attn (Tensor): attention weights. - re (Tensor): relative value embedding vector. (a_(i,j)^V) - - Shapes: - -p_attn: :math:`[B, H, T, V]` - -re: :math:`[H or 1, V, D]` - -logits: :math:`[B, H, T, D]` - """ - logits = torch.matmul(p_attn, re.unsqueeze(0)) - return logits - - @staticmethod - def _matmul_with_relative_keys(query, re): - """ - Args: - query (Tensor): batch of query vectors. (x*W^Q) - re (Tensor): relative key embedding vector. (a_(i,j)^K) - - Shapes: - - query: :math:`[B, H, T, D]` - - re: :math:`[H or 1, V, D]` - - logits: :math:`[B, H, T, V]` - """ - # logits = torch.einsum('bhld, kmd -> bhlm', [query, re.to(query.dtype)]) - logits = torch.matmul(query, re.unsqueeze(0).transpose(-2, -1)) - return logits - - def _get_relative_embeddings(self, relative_embeddings, length): - """Convert embedding vestors to a tensor of embeddings""" - # Pad first before slice to avoid using cond ops. - pad_length = max(length - (self.rel_attn_window_size + 1), 0) - slice_start_position = max((self.rel_attn_window_size + 1) - length, 0) - slice_end_position = slice_start_position + 2 * length - 1 - if pad_length > 0: - padded_relative_embeddings = F.pad(relative_embeddings, [0, 0, pad_length, pad_length, 0, 0]) - else: - padded_relative_embeddings = relative_embeddings - used_relative_embeddings = padded_relative_embeddings[:, slice_start_position:slice_end_position] - return used_relative_embeddings - - @staticmethod - def _relative_position_to_absolute_position(x): - """Converts tensor from relative to absolute indexing for local attention. - Shapes: - x: :math:`[B, C, T, 2 * T - 1]` - Returns: - A Tensor of shape :math:`[B, C, T, T]` - """ - batch, heads, length, _ = x.size() - # Pad to shift from relative to absolute indexing. - x = F.pad(x, [0, 1, 0, 0, 0, 0, 0, 0]) - # Pad extra elements so to add up to shape (len+1, 2*len-1). - x_flat = x.view([batch, heads, length * 2 * length]) - x_flat = F.pad(x_flat, [0, length - 1, 0, 0, 0, 0]) - # Reshape and slice out the padded elements. - x_final = x_flat.view([batch, heads, length + 1, 2 * length - 1])[:, :, :length, length - 1 :] - return x_final - - @staticmethod - def _absolute_position_to_relative_position(x): - """ - Shapes: - - x: :math:`[B, C, T, T]` - - ret: :math:`[B, C, T, 2*T-1]` - """ - batch, heads, length, _ = x.size() - # padd along column - x = F.pad(x, [0, length - 1, 0, 0, 0, 0, 0, 0]) - x_flat = x.view([batch, heads, length**2 + length * (length - 1)]) - # add 0's in the beginning that will skew the elements after reshape - x_flat = F.pad(x_flat, [length, 0, 0, 0, 0, 0]) - x_final = x_flat.view([batch, heads, length, 2 * length])[:, :, :, 1:] - return x_final - - @staticmethod - def _attn_proximity_bias(length): - """Produce an attention mask that discourages distant - attention values. - Args: - length (int): an integer scalar. - Returns: - a Tensor with shape :math:`[1, 1, T, T]` - """ - # L - r = torch.arange(length, dtype=torch.float32) - # L x L - diff = torch.unsqueeze(r, 0) - torch.unsqueeze(r, 1) - # scale mask values - diff = -torch.log1p(torch.abs(diff)) - # 1 x 1 x L x L - return diff.unsqueeze(0).unsqueeze(0) - - -class FeedForwardNetwork(nn.Module): - """Feed Forward Inner layers for Transformer. - - Args: - in_channels (int): input tensor channels. - out_channels (int): output tensor channels. - hidden_channels (int): inner layers hidden channels. - kernel_size (int): conv1d filter kernel size. - dropout_p (float, optional): dropout rate. Defaults to 0. - """ - - def __init__(self, in_channels, out_channels, hidden_channels, kernel_size, dropout_p=0.0, causal=False): - super().__init__() - self.in_channels = in_channels - self.out_channels = out_channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dropout_p = dropout_p - - if causal: - self.padding = self._causal_padding - else: - self.padding = self._same_padding - - self.conv_1 = nn.Conv1d(in_channels, hidden_channels, kernel_size) - self.conv_2 = nn.Conv1d(hidden_channels, out_channels, kernel_size) - self.dropout = nn.Dropout(dropout_p) - - def forward(self, x, x_mask): - x = self.conv_1(self.padding(x * x_mask)) - x = torch.relu(x) - x = self.dropout(x) - x = self.conv_2(self.padding(x * x_mask)) - return x * x_mask - - def _causal_padding(self, x): - if self.kernel_size == 1: - return x - pad_l = self.kernel_size - 1 - pad_r = 0 - padding = [[0, 0], [0, 0], [pad_l, pad_r]] - x = F.pad(x, self._pad_shape(padding)) - return x - - def _same_padding(self, x): - if self.kernel_size == 1: - return x - pad_l = (self.kernel_size - 1) // 2 - pad_r = self.kernel_size // 2 - padding = [[0, 0], [0, 0], [pad_l, pad_r]] - x = F.pad(x, self._pad_shape(padding)) - return x - - @staticmethod - def _pad_shape(padding): - l = padding[::-1] - pad_shape = [item for sublist in l for item in sublist] - return pad_shape - - -class RelativePositionTransformer(nn.Module): - """Transformer with Relative Potional Encoding. - https://arxiv.org/abs/1803.02155 - - Args: - in_channels (int): number of channels of the input tensor. - out_chanels (int): number of channels of the output tensor. - hidden_channels (int): model hidden channels. - hidden_channels_ffn (int): hidden channels of FeedForwardNetwork. - num_heads (int): number of attention heads. - num_layers (int): number of transformer layers. - kernel_size (int, optional): kernel size of feed-forward inner layers. Defaults to 1. - dropout_p (float, optional): dropout rate for self-attention and feed-forward inner layers_per_stack. Defaults to 0. - rel_attn_window_size (int, optional): relation attention window size. - If 4, for each time step next and previous 4 time steps are attended. - If default, relative encoding is disabled and it is a regular transformer. - Defaults to None. - input_length (int, optional): input lenght to limit position encoding. Defaults to None. - layer_norm_type (str, optional): type "1" uses torch tensor operations and type "2" uses torch layer_norm - primitive. Use type "2", type "1: is for backward compat. Defaults to "1". - """ - - def __init__( - self, - in_channels: int, - out_channels: int, - hidden_channels: int, - hidden_channels_ffn: int, - num_heads: int, - num_layers: int, - kernel_size=1, - dropout_p=0.0, - rel_attn_window_size: int = None, - input_length: int = None, - layer_norm_type: str = "1", - ): - super().__init__() - self.hidden_channels = hidden_channels - self.hidden_channels_ffn = hidden_channels_ffn - self.num_heads = num_heads - self.num_layers = num_layers - self.kernel_size = kernel_size - self.dropout_p = dropout_p - self.rel_attn_window_size = rel_attn_window_size - - self.dropout = nn.Dropout(dropout_p) - self.attn_layers = nn.ModuleList() - self.norm_layers_1 = nn.ModuleList() - self.ffn_layers = nn.ModuleList() - self.norm_layers_2 = nn.ModuleList() - - for idx in range(self.num_layers): - self.attn_layers.append( - RelativePositionMultiHeadAttention( - hidden_channels if idx != 0 else in_channels, - hidden_channels, - num_heads, - rel_attn_window_size=rel_attn_window_size, - dropout_p=dropout_p, - input_length=input_length, - ) - ) - if layer_norm_type == "1": - self.norm_layers_1.append(LayerNorm(hidden_channels)) - elif layer_norm_type == "2": - self.norm_layers_1.append(LayerNorm2(hidden_channels)) - else: - raise ValueError(" [!] Unknown layer norm type") - - if hidden_channels != out_channels and (idx + 1) == self.num_layers: - self.proj = nn.Conv1d(hidden_channels, out_channels, 1) - - self.ffn_layers.append( - FeedForwardNetwork( - hidden_channels, - hidden_channels if (idx + 1) != self.num_layers else out_channels, - hidden_channels_ffn, - kernel_size, - dropout_p=dropout_p, - ) - ) - - if layer_norm_type == "1": - self.norm_layers_2.append(LayerNorm(hidden_channels if (idx + 1) != self.num_layers else out_channels)) - elif layer_norm_type == "2": - self.norm_layers_2.append(LayerNorm2(hidden_channels if (idx + 1) != self.num_layers else out_channels)) - else: - raise ValueError(" [!] Unknown layer norm type") - - def forward(self, x, x_mask): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - """ - attn_mask = x_mask.unsqueeze(2) * x_mask.unsqueeze(-1) - for i in range(self.num_layers): - x = x * x_mask - y = self.attn_layers[i](x, x, attn_mask) - y = self.dropout(y) - x = self.norm_layers_1[i](x + y) - - y = self.ffn_layers[i](x, x_mask) - y = self.dropout(y) - - if (i + 1) == self.num_layers and hasattr(self, "proj"): - x = self.proj(x) - - x = self.norm_layers_2[i](x + y) - x = x * x_mask - return x diff --git a/TTS/TTS/tts/layers/losses.py b/TTS/TTS/tts/layers/losses.py deleted file mode 100644 index de5f408c48cf9183dfb14c30a6248a2b300bde4d..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/losses.py +++ /dev/null @@ -1,889 +0,0 @@ -import math - -import numpy as np -import torch -from coqpit import Coqpit -from torch import nn -from torch.nn import functional - -from TTS.tts.utils.helpers import sequence_mask -from TTS.tts.utils.ssim import SSIMLoss as _SSIMLoss -from TTS.utils.audio.torch_transforms import TorchSTFT - - -# pylint: disable=abstract-method -# relates https://github.com/pytorch/pytorch/issues/42305 -class L1LossMasked(nn.Module): - def __init__(self, seq_len_norm): - super().__init__() - self.seq_len_norm = seq_len_norm - - def forward(self, x, target, length): - """ - Args: - x: A Variable containing a FloatTensor of size - (batch, max_len, dim) which contains the - unnormalized probability for each class. - target: A Variable containing a LongTensor of size - (batch, max_len, dim) which contains the index of the true - class for each corresponding step. - length: A Variable containing a LongTensor of size (batch,) - which contains the length of each data in a batch. - Shapes: - x: B x T X D - target: B x T x D - length: B - Returns: - loss: An average loss value in range [0, 1] masked by the length. - """ - # mask: (batch, max_len, 1) - target.requires_grad = False - mask = sequence_mask(sequence_length=length, max_len=target.size(1)).unsqueeze(2).float() - if self.seq_len_norm: - norm_w = mask / mask.sum(dim=1, keepdim=True) - out_weights = norm_w.div(target.shape[0] * target.shape[2]) - mask = mask.expand_as(x) - loss = functional.l1_loss(x * mask, target * mask, reduction="none") - loss = loss.mul(out_weights.to(loss.device)).sum() - else: - mask = mask.expand_as(x) - loss = functional.l1_loss(x * mask, target * mask, reduction="sum") - loss = loss / mask.sum() - return loss - - -class MSELossMasked(nn.Module): - def __init__(self, seq_len_norm): - super().__init__() - self.seq_len_norm = seq_len_norm - - def forward(self, x, target, length): - """ - Args: - x: A Variable containing a FloatTensor of size - (batch, max_len, dim) which contains the - unnormalized probability for each class. - target: A Variable containing a LongTensor of size - (batch, max_len, dim) which contains the index of the true - class for each corresponding step. - length: A Variable containing a LongTensor of size (batch,) - which contains the length of each data in a batch. - Shapes: - - x: :math:`[B, T, D]` - - target: :math:`[B, T, D]` - - length: :math:`B` - Returns: - loss: An average loss value in range [0, 1] masked by the length. - """ - # mask: (batch, max_len, 1) - target.requires_grad = False - mask = sequence_mask(sequence_length=length, max_len=target.size(1)).unsqueeze(2).float() - if self.seq_len_norm: - norm_w = mask / mask.sum(dim=1, keepdim=True) - out_weights = norm_w.div(target.shape[0] * target.shape[2]) - mask = mask.expand_as(x) - loss = functional.mse_loss(x * mask, target * mask, reduction="none") - loss = loss.mul(out_weights.to(loss.device)).sum() - else: - mask = mask.expand_as(x) - loss = functional.mse_loss(x * mask, target * mask, reduction="sum") - loss = loss / mask.sum() - return loss - - -def sample_wise_min_max(x: torch.Tensor, mask: torch.Tensor) -> torch.Tensor: - """Min-Max normalize tensor through first dimension - Shapes: - - x: :math:`[B, D1, D2]` - - m: :math:`[B, D1, 1]` - """ - maximum = torch.amax(x.masked_fill(~mask, 0), dim=(1, 2), keepdim=True) - minimum = torch.amin(x.masked_fill(~mask, np.inf), dim=(1, 2), keepdim=True) - return (x - minimum) / (maximum - minimum + 1e-8) - - -class SSIMLoss(torch.nn.Module): - """SSIM loss as (1 - SSIM) - SSIM is explained here https://en.wikipedia.org/wiki/Structural_similarity - """ - - def __init__(self): - super().__init__() - self.loss_func = _SSIMLoss() - - def forward(self, y_hat, y, length): - """ - Args: - y_hat (tensor): model prediction values. - y (tensor): target values. - length (tensor): length of each sample in a batch for masking. - - Shapes: - y_hat: B x T X D - y: B x T x D - length: B - - Returns: - loss: An average loss value in range [0, 1] masked by the length. - """ - mask = sequence_mask(sequence_length=length, max_len=y.size(1)).unsqueeze(2) - y_norm = sample_wise_min_max(y, mask) - y_hat_norm = sample_wise_min_max(y_hat, mask) - ssim_loss = self.loss_func((y_norm * mask).unsqueeze(1), (y_hat_norm * mask).unsqueeze(1)) - - if ssim_loss.item() > 1.0: - print(f" > SSIM loss is out-of-range {ssim_loss.item()}, setting it 1.0") - ssim_loss = torch.tensor(1.0, device=ssim_loss.device) - - if ssim_loss.item() < 0.0: - print(f" > SSIM loss is out-of-range {ssim_loss.item()}, setting it 0.0") - ssim_loss = torch.tensor(0.0, device=ssim_loss.device) - - return ssim_loss - - -class AttentionEntropyLoss(nn.Module): - # pylint: disable=R0201 - def forward(self, align): - """ - Forces attention to be more decisive by penalizing - soft attention weights - """ - entropy = torch.distributions.Categorical(probs=align).entropy() - loss = (entropy / np.log(align.shape[1])).mean() - return loss - - -class BCELossMasked(nn.Module): - """BCE loss with masking. - - Used mainly for stopnet in autoregressive models. - - Args: - pos_weight (float): weight for positive samples. If set < 1, penalize early stopping. Defaults to None. - """ - - def __init__(self, pos_weight: float = None): - super().__init__() - self.register_buffer("pos_weight", torch.tensor([pos_weight])) - - def forward(self, x, target, length): - """ - Args: - x: A Variable containing a FloatTensor of size - (batch, max_len) which contains the - unnormalized probability for each class. - target: A Variable containing a LongTensor of size - (batch, max_len) which contains the index of the true - class for each corresponding step. - length: A Variable containing a LongTensor of size (batch,) - which contains the length of each data in a batch. - Shapes: - x: B x T - target: B x T - length: B - Returns: - loss: An average loss value in range [0, 1] masked by the length. - """ - target.requires_grad = False - if length is not None: - # mask: (batch, max_len, 1) - mask = sequence_mask(sequence_length=length, max_len=target.size(1)) - num_items = mask.sum() - loss = functional.binary_cross_entropy_with_logits( - x.masked_select(mask), - target.masked_select(mask), - pos_weight=self.pos_weight.to(x.device), - reduction="sum", - ) - else: - loss = functional.binary_cross_entropy_with_logits( - x, target, pos_weight=self.pos_weight.to(x.device), reduction="sum" - ) - num_items = torch.numel(x) - loss = loss / num_items - return loss - - -class DifferentialSpectralLoss(nn.Module): - """Differential Spectral Loss - https://arxiv.org/ftp/arxiv/papers/1909/1909.10302.pdf""" - - def __init__(self, loss_func): - super().__init__() - self.loss_func = loss_func - - def forward(self, x, target, length=None): - """ - Shapes: - x: B x T - target: B x T - length: B - Returns: - loss: An average loss value in range [0, 1] masked by the length. - """ - x_diff = x[:, 1:] - x[:, :-1] - target_diff = target[:, 1:] - target[:, :-1] - if length is None: - return self.loss_func(x_diff, target_diff) - return self.loss_func(x_diff, target_diff, length - 1) - - -class GuidedAttentionLoss(torch.nn.Module): - def __init__(self, sigma=0.4): - super().__init__() - self.sigma = sigma - - def _make_ga_masks(self, ilens, olens): - B = len(ilens) - max_ilen = max(ilens) - max_olen = max(olens) - ga_masks = torch.zeros((B, max_olen, max_ilen)) - for idx, (ilen, olen) in enumerate(zip(ilens, olens)): - ga_masks[idx, :olen, :ilen] = self._make_ga_mask(ilen, olen, self.sigma) - return ga_masks - - def forward(self, att_ws, ilens, olens): - ga_masks = self._make_ga_masks(ilens, olens).to(att_ws.device) - seq_masks = self._make_masks(ilens, olens).to(att_ws.device) - losses = ga_masks * att_ws - loss = torch.mean(losses.masked_select(seq_masks)) - return loss - - @staticmethod - def _make_ga_mask(ilen, olen, sigma): - grid_x, grid_y = torch.meshgrid(torch.arange(olen).to(olen), torch.arange(ilen).to(ilen)) - grid_x, grid_y = grid_x.float(), grid_y.float() - return 1.0 - torch.exp(-((grid_y / ilen - grid_x / olen) ** 2) / (2 * (sigma**2))) - - @staticmethod - def _make_masks(ilens, olens): - in_masks = sequence_mask(ilens) - out_masks = sequence_mask(olens) - return out_masks.unsqueeze(-1) & in_masks.unsqueeze(-2) - - -class Huber(nn.Module): - # pylint: disable=R0201 - def forward(self, x, y, length=None): - """ - Shapes: - x: B x T - y: B x T - length: B - """ - mask = sequence_mask(sequence_length=length, max_len=y.size(1)).unsqueeze(2).float() - return torch.nn.functional.smooth_l1_loss(x * mask, y * mask, reduction="sum") / mask.sum() - - -class ForwardSumLoss(nn.Module): - def __init__(self, blank_logprob=-1): - super().__init__() - self.log_softmax = torch.nn.LogSoftmax(dim=3) - self.ctc_loss = torch.nn.CTCLoss(zero_infinity=True) - self.blank_logprob = blank_logprob - - def forward(self, attn_logprob, in_lens, out_lens): - key_lens = in_lens - query_lens = out_lens - attn_logprob_padded = torch.nn.functional.pad(input=attn_logprob, pad=(1, 0), value=self.blank_logprob) - - total_loss = 0.0 - for bid in range(attn_logprob.shape[0]): - target_seq = torch.arange(1, key_lens[bid] + 1).unsqueeze(0) - curr_logprob = attn_logprob_padded[bid].permute(1, 0, 2)[: query_lens[bid], :, : key_lens[bid] + 1] - - curr_logprob = self.log_softmax(curr_logprob[None])[0] - loss = self.ctc_loss( - curr_logprob, - target_seq, - input_lengths=query_lens[bid : bid + 1], - target_lengths=key_lens[bid : bid + 1], - ) - total_loss = total_loss + loss - - total_loss = total_loss / attn_logprob.shape[0] - return total_loss - - -######################## -# MODEL LOSS LAYERS -######################## - - -class TacotronLoss(torch.nn.Module): - """Collection of Tacotron set-up based on provided config.""" - - def __init__(self, c, ga_sigma=0.4): - super().__init__() - self.stopnet_pos_weight = c.stopnet_pos_weight - self.use_capacitron_vae = c.use_capacitron_vae - if self.use_capacitron_vae: - self.capacitron_capacity = c.capacitron_vae.capacitron_capacity - self.capacitron_vae_loss_alpha = c.capacitron_vae.capacitron_VAE_loss_alpha - self.ga_alpha = c.ga_alpha - self.decoder_diff_spec_alpha = c.decoder_diff_spec_alpha - self.postnet_diff_spec_alpha = c.postnet_diff_spec_alpha - self.decoder_alpha = c.decoder_loss_alpha - self.postnet_alpha = c.postnet_loss_alpha - self.decoder_ssim_alpha = c.decoder_ssim_alpha - self.postnet_ssim_alpha = c.postnet_ssim_alpha - self.config = c - - # postnet and decoder loss - if c.loss_masking: - self.criterion = L1LossMasked(c.seq_len_norm) if c.model in ["Tacotron"] else MSELossMasked(c.seq_len_norm) - else: - self.criterion = nn.L1Loss() if c.model in ["Tacotron"] else nn.MSELoss() - # guided attention loss - if c.ga_alpha > 0: - self.criterion_ga = GuidedAttentionLoss(sigma=ga_sigma) - # differential spectral loss - if c.postnet_diff_spec_alpha > 0 or c.decoder_diff_spec_alpha > 0: - self.criterion_diff_spec = DifferentialSpectralLoss(loss_func=self.criterion) - # ssim loss - if c.postnet_ssim_alpha > 0 or c.decoder_ssim_alpha > 0: - self.criterion_ssim = SSIMLoss() - # stopnet loss - # pylint: disable=not-callable - self.criterion_st = BCELossMasked(pos_weight=torch.tensor(self.stopnet_pos_weight)) if c.stopnet else None - - # For dev pruposes only - self.criterion_capacitron_reconstruction_loss = nn.L1Loss(reduction="sum") - - def forward( - self, - postnet_output, - decoder_output, - mel_input, - linear_input, - stopnet_output, - stopnet_target, - stop_target_length, - capacitron_vae_outputs, - output_lens, - decoder_b_output, - alignments, - alignment_lens, - alignments_backwards, - input_lens, - ): - # decoder outputs linear or mel spectrograms for Tacotron and Tacotron2 - # the target should be set acccordingly - postnet_target = linear_input if self.config.model.lower() in ["tacotron"] else mel_input - - return_dict = {} - # remove lengths if no masking is applied - if not self.config.loss_masking: - output_lens = None - # decoder and postnet losses - if self.config.loss_masking: - if self.decoder_alpha > 0: - decoder_loss = self.criterion(decoder_output, mel_input, output_lens) - if self.postnet_alpha > 0: - postnet_loss = self.criterion(postnet_output, postnet_target, output_lens) - else: - if self.decoder_alpha > 0: - decoder_loss = self.criterion(decoder_output, mel_input) - if self.postnet_alpha > 0: - postnet_loss = self.criterion(postnet_output, postnet_target) - loss = self.decoder_alpha * decoder_loss + self.postnet_alpha * postnet_loss - return_dict["decoder_loss"] = decoder_loss - return_dict["postnet_loss"] = postnet_loss - - if self.use_capacitron_vae: - # extract capacitron vae infos - posterior_distribution, prior_distribution, beta = capacitron_vae_outputs - - # KL divergence term between the posterior and the prior - kl_term = torch.mean(torch.distributions.kl_divergence(posterior_distribution, prior_distribution)) - - # Limit the mutual information between the data and latent space by the variational capacity limit - kl_capacity = kl_term - self.capacitron_capacity - - # pass beta through softplus to keep it positive - beta = torch.nn.functional.softplus(beta)[0] - - # This is the term going to the main ADAM optimiser, we detach beta because - # beta is optimised by a separate, SGD optimiser below - capacitron_vae_loss = beta.detach() * kl_capacity - - # normalize the capacitron_vae_loss as in L1Loss or MSELoss. - # After this, both the standard loss and capacitron_vae_loss will be in the same scale. - # For this reason we don't need use L1Loss and MSELoss in "sum" reduction mode. - # Note: the batch is not considered because the L1Loss was calculated in "sum" mode - # divided by the batch size, So not dividing the capacitron_vae_loss by B is legitimate. - - # get B T D dimension from input - B, T, D = mel_input.size() - # normalize - if self.config.loss_masking: - # if mask loss get T using the mask - T = output_lens.sum() / B - - # Only for dev purposes to be able to compare the reconstruction loss with the values in the - # original Capacitron paper - return_dict["capaciton_reconstruction_loss"] = ( - self.criterion_capacitron_reconstruction_loss(decoder_output, mel_input) / decoder_output.size(0) - ) + kl_capacity - - capacitron_vae_loss = capacitron_vae_loss / (T * D) - capacitron_vae_loss = capacitron_vae_loss * self.capacitron_vae_loss_alpha - - # This is the term to purely optimise beta and to pass into the SGD optimizer - beta_loss = torch.negative(beta) * kl_capacity.detach() - - loss += capacitron_vae_loss - - return_dict["capacitron_vae_loss"] = capacitron_vae_loss - return_dict["capacitron_vae_beta_loss"] = beta_loss - return_dict["capacitron_vae_kl_term"] = kl_term - return_dict["capacitron_beta"] = beta - - stop_loss = ( - self.criterion_st(stopnet_output, stopnet_target, stop_target_length) - if self.config.stopnet - else torch.zeros(1) - ) - loss += stop_loss - return_dict["stopnet_loss"] = stop_loss - - # backward decoder loss (if enabled) - if self.config.bidirectional_decoder: - if self.config.loss_masking: - decoder_b_loss = self.criterion(torch.flip(decoder_b_output, dims=(1,)), mel_input, output_lens) - else: - decoder_b_loss = self.criterion(torch.flip(decoder_b_output, dims=(1,)), mel_input) - decoder_c_loss = torch.nn.functional.l1_loss(torch.flip(decoder_b_output, dims=(1,)), decoder_output) - loss += self.decoder_alpha * (decoder_b_loss + decoder_c_loss) - return_dict["decoder_b_loss"] = decoder_b_loss - return_dict["decoder_c_loss"] = decoder_c_loss - - # double decoder consistency loss (if enabled) - if self.config.double_decoder_consistency: - if self.config.loss_masking: - decoder_b_loss = self.criterion(decoder_b_output, mel_input, output_lens) - else: - decoder_b_loss = self.criterion(decoder_b_output, mel_input) - # decoder_c_loss = torch.nn.functional.l1_loss(decoder_b_output, decoder_output) - attention_c_loss = torch.nn.functional.l1_loss(alignments, alignments_backwards) - loss += self.decoder_alpha * (decoder_b_loss + attention_c_loss) - return_dict["decoder_coarse_loss"] = decoder_b_loss - return_dict["decoder_ddc_loss"] = attention_c_loss - - # guided attention loss (if enabled) - if self.config.ga_alpha > 0: - ga_loss = self.criterion_ga(alignments, input_lens, alignment_lens) - loss += ga_loss * self.ga_alpha - return_dict["ga_loss"] = ga_loss - - # decoder differential spectral loss - if self.config.decoder_diff_spec_alpha > 0: - decoder_diff_spec_loss = self.criterion_diff_spec(decoder_output, mel_input, output_lens) - loss += decoder_diff_spec_loss * self.decoder_diff_spec_alpha - return_dict["decoder_diff_spec_loss"] = decoder_diff_spec_loss - - # postnet differential spectral loss - if self.config.postnet_diff_spec_alpha > 0: - postnet_diff_spec_loss = self.criterion_diff_spec(postnet_output, postnet_target, output_lens) - loss += postnet_diff_spec_loss * self.postnet_diff_spec_alpha - return_dict["postnet_diff_spec_loss"] = postnet_diff_spec_loss - - # decoder ssim loss - if self.config.decoder_ssim_alpha > 0: - decoder_ssim_loss = self.criterion_ssim(decoder_output, mel_input, output_lens) - loss += decoder_ssim_loss * self.postnet_ssim_alpha - return_dict["decoder_ssim_loss"] = decoder_ssim_loss - - # postnet ssim loss - if self.config.postnet_ssim_alpha > 0: - postnet_ssim_loss = self.criterion_ssim(postnet_output, postnet_target, output_lens) - loss += postnet_ssim_loss * self.postnet_ssim_alpha - return_dict["postnet_ssim_loss"] = postnet_ssim_loss - - return_dict["loss"] = loss - return return_dict - - -class GlowTTSLoss(torch.nn.Module): - def __init__(self): - super().__init__() - self.constant_factor = 0.5 * math.log(2 * math.pi) - - def forward(self, z, means, scales, log_det, y_lengths, o_dur_log, o_attn_dur, x_lengths): - return_dict = {} - # flow loss - neg log likelihood - pz = torch.sum(scales) + 0.5 * torch.sum(torch.exp(-2 * scales) * (z - means) ** 2) - log_mle = self.constant_factor + (pz - torch.sum(log_det)) / (torch.sum(y_lengths) * z.shape[2]) - # duration loss - MSE - loss_dur = torch.sum((o_dur_log - o_attn_dur) ** 2) / torch.sum(x_lengths) - # duration loss - huber loss - # loss_dur = torch.nn.functional.smooth_l1_loss(o_dur_log, o_attn_dur, reduction="sum") / torch.sum(x_lengths) - return_dict["loss"] = log_mle + loss_dur - return_dict["log_mle"] = log_mle - return_dict["loss_dur"] = loss_dur - - # check if any loss is NaN - for key, loss in return_dict.items(): - if torch.isnan(loss): - raise RuntimeError(f" [!] NaN loss with {key}.") - return return_dict - - -def mse_loss_custom(x, y): - """MSE loss using the torch back-end without reduction. - It uses less VRAM than the raw code""" - expanded_x, expanded_y = torch.broadcast_tensors(x, y) - return torch._C._nn.mse_loss(expanded_x, expanded_y, 0) # pylint: disable=protected-access, c-extension-no-member - - -class MDNLoss(nn.Module): - """Mixture of Density Network Loss as described in https://arxiv.org/pdf/2003.01950.pdf.""" - - def forward(self, logp, text_lengths, mel_lengths): # pylint: disable=no-self-use - """ - Shapes: - mu: [B, D, T] - log_sigma: [B, D, T] - mel_spec: [B, D, T] - """ - B, T_seq, T_mel = logp.shape - log_alpha = logp.new_ones(B, T_seq, T_mel) * (-1e4) - log_alpha[:, 0, 0] = logp[:, 0, 0] - for t in range(1, T_mel): - prev_step = torch.cat( - [log_alpha[:, :, t - 1 : t], functional.pad(log_alpha[:, :, t - 1 : t], (0, 0, 1, -1), value=-1e4)], - dim=-1, - ) - log_alpha[:, :, t] = torch.logsumexp(prev_step + 1e-4, dim=-1) + logp[:, :, t] - alpha_last = log_alpha[torch.arange(B), text_lengths - 1, mel_lengths - 1] - mdn_loss = -alpha_last.mean() / T_seq - return mdn_loss # , log_prob_matrix - - -class AlignTTSLoss(nn.Module): - """Modified AlignTTS Loss. - Computes - - L1 and SSIM losses from output spectrograms. - - Huber loss for duration predictor. - - MDNLoss for Mixture of Density Network. - - All loss values are aggregated by a weighted sum of the alpha values. - - Args: - c (dict): TTS model configuration. - """ - - def __init__(self, c): - super().__init__() - self.mdn_loss = MDNLoss() - self.spec_loss = MSELossMasked(False) - self.ssim = SSIMLoss() - self.dur_loss = MSELossMasked(False) - - self.ssim_alpha = c.ssim_alpha - self.dur_loss_alpha = c.dur_loss_alpha - self.spec_loss_alpha = c.spec_loss_alpha - self.mdn_alpha = c.mdn_alpha - - def forward( - self, logp, decoder_output, decoder_target, decoder_output_lens, dur_output, dur_target, input_lens, phase - ): - # ssim_alpha, dur_loss_alpha, spec_loss_alpha, mdn_alpha = self.set_alphas(step) - spec_loss, ssim_loss, dur_loss, mdn_loss = 0, 0, 0, 0 - if phase == 0: - mdn_loss = self.mdn_loss(logp, input_lens, decoder_output_lens) - elif phase == 1: - spec_loss = self.spec_loss(decoder_output, decoder_target, decoder_output_lens) - ssim_loss = self.ssim(decoder_output, decoder_target, decoder_output_lens) - elif phase == 2: - mdn_loss = self.mdn_loss(logp, input_lens, decoder_output_lens) - spec_loss = self.spec_lossX(decoder_output, decoder_target, decoder_output_lens) - ssim_loss = self.ssim(decoder_output, decoder_target, decoder_output_lens) - elif phase == 3: - dur_loss = self.dur_loss(dur_output.unsqueeze(2), dur_target.unsqueeze(2), input_lens) - else: - mdn_loss = self.mdn_loss(logp, input_lens, decoder_output_lens) - spec_loss = self.spec_loss(decoder_output, decoder_target, decoder_output_lens) - ssim_loss = self.ssim(decoder_output, decoder_target, decoder_output_lens) - dur_loss = self.dur_loss(dur_output.unsqueeze(2), dur_target.unsqueeze(2), input_lens) - loss = ( - self.spec_loss_alpha * spec_loss - + self.ssim_alpha * ssim_loss - + self.dur_loss_alpha * dur_loss - + self.mdn_alpha * mdn_loss - ) - return {"loss": loss, "loss_l1": spec_loss, "loss_ssim": ssim_loss, "loss_dur": dur_loss, "mdn_loss": mdn_loss} - - -class VitsGeneratorLoss(nn.Module): - def __init__(self, c: Coqpit): - super().__init__() - self.kl_loss_alpha = c.kl_loss_alpha - self.gen_loss_alpha = c.gen_loss_alpha - self.feat_loss_alpha = c.feat_loss_alpha - self.dur_loss_alpha = c.dur_loss_alpha - self.mel_loss_alpha = c.mel_loss_alpha - self.spk_encoder_loss_alpha = c.speaker_encoder_loss_alpha - self.stft = TorchSTFT( - c.audio.fft_size, - c.audio.hop_length, - c.audio.win_length, - sample_rate=c.audio.sample_rate, - mel_fmin=c.audio.mel_fmin, - mel_fmax=c.audio.mel_fmax, - n_mels=c.audio.num_mels, - use_mel=True, - do_amp_to_db=True, - ) - - @staticmethod - def feature_loss(feats_real, feats_generated): - loss = 0 - for dr, dg in zip(feats_real, feats_generated): - for rl, gl in zip(dr, dg): - rl = rl.float().detach() - gl = gl.float() - loss += torch.mean(torch.abs(rl - gl)) - return loss * 2 - - @staticmethod - def generator_loss(scores_fake): - loss = 0 - gen_losses = [] - for dg in scores_fake: - dg = dg.float() - l = torch.mean((1 - dg) ** 2) - gen_losses.append(l) - loss += l - - return loss, gen_losses - - @staticmethod - def kl_loss(z_p, logs_q, m_p, logs_p, z_mask): - """ - z_p, logs_q: [b, h, t_t] - m_p, logs_p: [b, h, t_t] - """ - z_p = z_p.float() - logs_q = logs_q.float() - m_p = m_p.float() - logs_p = logs_p.float() - z_mask = z_mask.float() - - kl = logs_p - logs_q - 0.5 - kl += 0.5 * ((z_p - m_p) ** 2) * torch.exp(-2.0 * logs_p) - kl = torch.sum(kl * z_mask) - l = kl / torch.sum(z_mask) - return l - - @staticmethod - def cosine_similarity_loss(gt_spk_emb, syn_spk_emb): - return -torch.nn.functional.cosine_similarity(gt_spk_emb, syn_spk_emb).mean() - - def forward( - self, - mel_slice, - mel_slice_hat, - z_p, - logs_q, - m_p, - logs_p, - z_len, - scores_disc_fake, - feats_disc_fake, - feats_disc_real, - loss_duration, - use_speaker_encoder_as_loss=False, - gt_spk_emb=None, - syn_spk_emb=None, - ): - """ - Shapes: - - mel_slice : :math:`[B, 1, T]` - - mel_slice_hat: :math:`[B, 1, T]` - - z_p: :math:`[B, C, T]` - - logs_q: :math:`[B, C, T]` - - m_p: :math:`[B, C, T]` - - logs_p: :math:`[B, C, T]` - - z_len: :math:`[B]` - - scores_disc_fake[i]: :math:`[B, C]` - - feats_disc_fake[i][j]: :math:`[B, C, T', P]` - - feats_disc_real[i][j]: :math:`[B, C, T', P]` - """ - loss = 0.0 - return_dict = {} - z_mask = sequence_mask(z_len).float() - # compute losses - loss_kl = ( - self.kl_loss(z_p=z_p, logs_q=logs_q, m_p=m_p, logs_p=logs_p, z_mask=z_mask.unsqueeze(1)) - * self.kl_loss_alpha - ) - loss_feat = ( - self.feature_loss(feats_real=feats_disc_real, feats_generated=feats_disc_fake) * self.feat_loss_alpha - ) - loss_gen = self.generator_loss(scores_fake=scores_disc_fake)[0] * self.gen_loss_alpha - loss_mel = torch.nn.functional.l1_loss(mel_slice, mel_slice_hat) * self.mel_loss_alpha - loss_duration = torch.sum(loss_duration.float()) * self.dur_loss_alpha - loss = loss_kl + loss_feat + loss_mel + loss_gen + loss_duration - - if use_speaker_encoder_as_loss: - loss_se = self.cosine_similarity_loss(gt_spk_emb, syn_spk_emb) * self.spk_encoder_loss_alpha - loss = loss + loss_se - return_dict["loss_spk_encoder"] = loss_se - # pass losses to the dict - return_dict["loss_gen"] = loss_gen - return_dict["loss_kl"] = loss_kl - return_dict["loss_feat"] = loss_feat - return_dict["loss_mel"] = loss_mel - return_dict["loss_duration"] = loss_duration - return_dict["loss"] = loss - return return_dict - - -class VitsDiscriminatorLoss(nn.Module): - def __init__(self, c: Coqpit): - super().__init__() - self.disc_loss_alpha = c.disc_loss_alpha - - @staticmethod - def discriminator_loss(scores_real, scores_fake): - loss = 0 - real_losses = [] - fake_losses = [] - for dr, dg in zip(scores_real, scores_fake): - dr = dr.float() - dg = dg.float() - real_loss = torch.mean((1 - dr) ** 2) - fake_loss = torch.mean(dg**2) - loss += real_loss + fake_loss - real_losses.append(real_loss.item()) - fake_losses.append(fake_loss.item()) - return loss, real_losses, fake_losses - - def forward(self, scores_disc_real, scores_disc_fake): - loss = 0.0 - return_dict = {} - loss_disc, loss_disc_real, _ = self.discriminator_loss( - scores_real=scores_disc_real, scores_fake=scores_disc_fake - ) - return_dict["loss_disc"] = loss_disc * self.disc_loss_alpha - loss = loss + return_dict["loss_disc"] - return_dict["loss"] = loss - - for i, ldr in enumerate(loss_disc_real): - return_dict[f"loss_disc_real_{i}"] = ldr - return return_dict - - -class ForwardTTSLoss(nn.Module): - """Generic configurable ForwardTTS loss.""" - - def __init__(self, c): - super().__init__() - if c.spec_loss_type == "mse": - self.spec_loss = MSELossMasked(False) - elif c.spec_loss_type == "l1": - self.spec_loss = L1LossMasked(False) - else: - raise ValueError(" [!] Unknown spec_loss_type {}".format(c.spec_loss_type)) - - if c.duration_loss_type == "mse": - self.dur_loss = MSELossMasked(False) - elif c.duration_loss_type == "l1": - self.dur_loss = L1LossMasked(False) - elif c.duration_loss_type == "huber": - self.dur_loss = Huber() - else: - raise ValueError(" [!] Unknown duration_loss_type {}".format(c.duration_loss_type)) - - if c.model_args.use_aligner: - self.aligner_loss = ForwardSumLoss() - self.aligner_loss_alpha = c.aligner_loss_alpha - - if c.model_args.use_pitch: - self.pitch_loss = MSELossMasked(False) - self.pitch_loss_alpha = c.pitch_loss_alpha - - if c.model_args.use_energy: - self.energy_loss = MSELossMasked(False) - self.energy_loss_alpha = c.energy_loss_alpha - - if c.use_ssim_loss: - self.ssim = SSIMLoss() if c.use_ssim_loss else None - self.ssim_loss_alpha = c.ssim_loss_alpha - - self.spec_loss_alpha = c.spec_loss_alpha - self.dur_loss_alpha = c.dur_loss_alpha - self.binary_alignment_loss_alpha = c.binary_align_loss_alpha - - @staticmethod - def _binary_alignment_loss(alignment_hard, alignment_soft): - """Binary loss that forces soft alignments to match the hard alignments as - explained in `https://arxiv.org/pdf/2108.10447.pdf`. - """ - log_sum = torch.log(torch.clamp(alignment_soft[alignment_hard == 1], min=1e-12)).sum() - return -log_sum / alignment_hard.sum() - - def forward( - self, - decoder_output, - decoder_target, - decoder_output_lens, - dur_output, - dur_target, - pitch_output, - pitch_target, - energy_output, - energy_target, - input_lens, - alignment_logprob=None, - alignment_hard=None, - alignment_soft=None, - binary_loss_weight=None, - ): - loss = 0 - return_dict = {} - if hasattr(self, "ssim_loss") and self.ssim_loss_alpha > 0: - ssim_loss = self.ssim(decoder_output, decoder_target, decoder_output_lens) - loss = loss + self.ssim_loss_alpha * ssim_loss - return_dict["loss_ssim"] = self.ssim_loss_alpha * ssim_loss - - if self.spec_loss_alpha > 0: - spec_loss = self.spec_loss(decoder_output, decoder_target, decoder_output_lens) - loss = loss + self.spec_loss_alpha * spec_loss - return_dict["loss_spec"] = self.spec_loss_alpha * spec_loss - - if self.dur_loss_alpha > 0: - log_dur_tgt = torch.log(dur_target.float() + 1) - dur_loss = self.dur_loss(dur_output[:, :, None], log_dur_tgt[:, :, None], input_lens) - loss = loss + self.dur_loss_alpha * dur_loss - return_dict["loss_dur"] = self.dur_loss_alpha * dur_loss - - if hasattr(self, "pitch_loss") and self.pitch_loss_alpha > 0: - pitch_loss = self.pitch_loss(pitch_output.transpose(1, 2), pitch_target.transpose(1, 2), input_lens) - loss = loss + self.pitch_loss_alpha * pitch_loss - return_dict["loss_pitch"] = self.pitch_loss_alpha * pitch_loss - - if hasattr(self, "energy_loss") and self.energy_loss_alpha > 0: - energy_loss = self.energy_loss(energy_output.transpose(1, 2), energy_target.transpose(1, 2), input_lens) - loss = loss + self.energy_loss_alpha * energy_loss - return_dict["loss_energy"] = self.energy_loss_alpha * energy_loss - - if hasattr(self, "aligner_loss") and self.aligner_loss_alpha > 0: - aligner_loss = self.aligner_loss(alignment_logprob, input_lens, decoder_output_lens) - loss = loss + self.aligner_loss_alpha * aligner_loss - return_dict["loss_aligner"] = self.aligner_loss_alpha * aligner_loss - - if self.binary_alignment_loss_alpha > 0 and alignment_hard is not None: - binary_alignment_loss = self._binary_alignment_loss(alignment_hard, alignment_soft) - loss = loss + self.binary_alignment_loss_alpha * binary_alignment_loss - if binary_loss_weight: - return_dict["loss_binary_alignment"] = ( - self.binary_alignment_loss_alpha * binary_alignment_loss * binary_loss_weight - ) - else: - return_dict["loss_binary_alignment"] = self.binary_alignment_loss_alpha * binary_alignment_loss - - return_dict["loss"] = loss - return return_dict diff --git a/TTS/TTS/tts/layers/overflow/__init__.py b/TTS/TTS/tts/layers/overflow/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/layers/overflow/common_layers.py b/TTS/TTS/tts/layers/overflow/common_layers.py deleted file mode 100644 index b036dd1bda92fb709f0cce796cf5a668a1c081df..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/overflow/common_layers.py +++ /dev/null @@ -1,323 +0,0 @@ -from typing import List, Tuple - -import torch -import torch.nn.functional as F -from torch import nn -from tqdm.auto import tqdm - -from TTS.tts.layers.tacotron.common_layers import Linear -from TTS.tts.layers.tacotron.tacotron2 import ConvBNBlock - - -class Encoder(nn.Module): - r"""Neural HMM Encoder - - Same as Tacotron 2 encoder but increases the input length by states per phone - - Args: - num_chars (int): Number of characters in the input. - state_per_phone (int): Number of states per phone. - in_out_channels (int): number of input and output channels. - n_convolutions (int): number of convolutional layers. - """ - - def __init__(self, num_chars, state_per_phone, in_out_channels=512, n_convolutions=3): - super().__init__() - - self.state_per_phone = state_per_phone - self.in_out_channels = in_out_channels - - self.emb = nn.Embedding(num_chars, in_out_channels) - self.convolutions = nn.ModuleList() - for _ in range(n_convolutions): - self.convolutions.append(ConvBNBlock(in_out_channels, in_out_channels, 5, "relu")) - self.lstm = nn.LSTM( - in_out_channels, - int(in_out_channels / 2) * state_per_phone, - num_layers=1, - batch_first=True, - bias=True, - bidirectional=True, - ) - self.rnn_state = None - - def forward(self, x: torch.FloatTensor, x_len: torch.LongTensor) -> Tuple[torch.FloatTensor, torch.LongTensor]: - """Forward pass to the encoder. - - Args: - x (torch.FloatTensor): input text indices. - - shape: :math:`(b, T_{in})` - x_len (torch.LongTensor): input text lengths. - - shape: :math:`(b,)` - - Returns: - Tuple[torch.FloatTensor, torch.LongTensor]: encoder outputs and output lengths. - -shape: :math:`((b, T_{in} * states_per_phone, in_out_channels), (b,))` - """ - b, T = x.shape - o = self.emb(x).transpose(1, 2) - for layer in self.convolutions: - o = layer(o) - o = o.transpose(1, 2) - o = nn.utils.rnn.pack_padded_sequence(o, x_len.cpu(), batch_first=True) - self.lstm.flatten_parameters() - o, _ = self.lstm(o) - o, _ = nn.utils.rnn.pad_packed_sequence(o, batch_first=True) - o = o.reshape(b, T * self.state_per_phone, self.in_out_channels) - x_len = x_len * self.state_per_phone - return o, x_len - - def inference(self, x, x_len): - """Inference to the encoder. - - Args: - x (torch.FloatTensor): input text indices. - - shape: :math:`(b, T_{in})` - x_len (torch.LongTensor): input text lengths. - - shape: :math:`(b,)` - - Returns: - Tuple[torch.FloatTensor, torch.LongTensor]: encoder outputs and output lengths. - -shape: :math:`((b, T_{in} * states_per_phone, in_out_channels), (b,))` - """ - b, T = x.shape - o = self.emb(x).transpose(1, 2) - for layer in self.convolutions: - o = layer(o) - o = o.transpose(1, 2) - # self.lstm.flatten_parameters() - o, _ = self.lstm(o) - o = o.reshape(b, T * self.state_per_phone, self.in_out_channels) - x_len = x_len * self.state_per_phone - return o, x_len - - -class ParameterModel(nn.Module): - r"""Main neural network of the outputnet - - Note: Do not put dropout layers here, the model will not converge. - - Args: - outputnet_size (List[int]): the architecture of the parameter model - input_size (int): size of input for the first layer - output_size (int): size of output i.e size of the feature dim - frame_channels (int): feature dim to set the flat start bias - flat_start_params (dict): flat start parameters to set the bias - """ - - def __init__( - self, - outputnet_size: List[int], - input_size: int, - output_size: int, - frame_channels: int, - flat_start_params: dict, - ): - super().__init__() - self.frame_channels = frame_channels - - self.layers = nn.ModuleList( - [Linear(inp, out) for inp, out in zip([input_size] + outputnet_size[:-1], outputnet_size)] - ) - self.last_layer = nn.Linear(outputnet_size[-1], output_size) - self.flat_start_output_layer( - flat_start_params["mean"], flat_start_params["std"], flat_start_params["transition_p"] - ) - - def flat_start_output_layer(self, mean, std, transition_p): - self.last_layer.weight.data.zero_() - self.last_layer.bias.data[0 : self.frame_channels] = mean - self.last_layer.bias.data[self.frame_channels : 2 * self.frame_channels] = OverflowUtils.inverse_softplus(std) - self.last_layer.bias.data[2 * self.frame_channels :] = OverflowUtils.inverse_sigmod(transition_p) - - def forward(self, x): - for layer in self.layers: - x = F.relu(layer(x)) - x = self.last_layer(x) - return x - - -class Outputnet(nn.Module): - r""" - This network takes current state and previous observed values as input - and returns its parameters, mean, standard deviation and probability - of transition to the next state - """ - - def __init__( - self, - encoder_dim: int, - memory_rnn_dim: int, - frame_channels: int, - outputnet_size: List[int], - flat_start_params: dict, - std_floor: float = 1e-2, - ): - super().__init__() - - self.frame_channels = frame_channels - self.flat_start_params = flat_start_params - self.std_floor = std_floor - - input_size = memory_rnn_dim + encoder_dim - output_size = 2 * frame_channels + 1 - - self.parametermodel = ParameterModel( - outputnet_size=outputnet_size, - input_size=input_size, - output_size=output_size, - flat_start_params=flat_start_params, - frame_channels=frame_channels, - ) - - def forward(self, ar_mels, inputs): - r"""Inputs observation and returns the means, stds and transition probability for the current state - - Args: - ar_mel_inputs (torch.FloatTensor): shape (batch, prenet_dim) - states (torch.FloatTensor): (batch, hidden_states, hidden_state_dim) - - Returns: - means: means for the emission observation for each feature - - shape: (B, hidden_states, feature_size) - stds: standard deviations for the emission observation for each feature - - shape: (batch, hidden_states, feature_size) - transition_vectors: transition vector for the current hidden state - - shape: (batch, hidden_states) - """ - batch_size, prenet_dim = ar_mels.shape[0], ar_mels.shape[1] - N = inputs.shape[1] - - ar_mels = ar_mels.unsqueeze(1).expand(batch_size, N, prenet_dim) - ar_mels = torch.cat((ar_mels, inputs), dim=2) - ar_mels = self.parametermodel(ar_mels) - - mean, std, transition_vector = ( - ar_mels[:, :, 0 : self.frame_channels], - ar_mels[:, :, self.frame_channels : 2 * self.frame_channels], - ar_mels[:, :, 2 * self.frame_channels :].squeeze(2), - ) - std = F.softplus(std) - std = self._floor_std(std) - return mean, std, transition_vector - - def _floor_std(self, std): - r""" - It clamps the standard deviation to not to go below some level - This removes the problem when the model tries to cheat for higher likelihoods by converting - one of the gaussians to a point mass. - - Args: - std (float Tensor): tensor containing the standard deviation to be - """ - original_tensor = std.clone().detach() - std = torch.clamp(std, min=self.std_floor) - if torch.any(original_tensor != std): - print( - "[*] Standard deviation was floored! The model is preventing overfitting, nothing serious to worry about" - ) - return std - - -class OverflowUtils: - @staticmethod - def get_data_parameters_for_flat_start( - data_loader: torch.utils.data.DataLoader, out_channels: int, states_per_phone: int - ): - """Generates data parameters for flat starting the HMM. - - Args: - data_loader (torch.utils.data.Dataloader): _description_ - out_channels (int): mel spectrogram channels - states_per_phone (_type_): HMM states per phone - """ - - # State related information for transition_p - total_state_len = 0 - total_mel_len = 0 - - # Useful for data mean an std - total_mel_sum = 0 - total_mel_sq_sum = 0 - - for batch in tqdm(data_loader, leave=False): - text_lengths = batch["token_id_lengths"] - mels = batch["mel"] - mel_lengths = batch["mel_lengths"] - - total_state_len += torch.sum(text_lengths) - total_mel_len += torch.sum(mel_lengths) - total_mel_sum += torch.sum(mels) - total_mel_sq_sum += torch.sum(torch.pow(mels, 2)) - - data_mean = total_mel_sum / (total_mel_len * out_channels) - data_std = torch.sqrt((total_mel_sq_sum / (total_mel_len * out_channels)) - torch.pow(data_mean, 2)) - average_num_states = total_state_len / len(data_loader.dataset) - average_mel_len = total_mel_len / len(data_loader.dataset) - average_duration_each_state = average_mel_len / average_num_states - init_transition_prob = 1 / average_duration_each_state - - return data_mean, data_std, (init_transition_prob * states_per_phone) - - @staticmethod - @torch.no_grad() - def update_flat_start_transition(model, transition_p): - model.neural_hmm.output_net.parametermodel.flat_start_output_layer(0.0, 1.0, transition_p) - - @staticmethod - def log_clamped(x, eps=1e-04): - """ - Avoids the log(0) problem - - Args: - x (torch.tensor): input tensor - eps (float, optional): lower bound. Defaults to 1e-04. - - Returns: - torch.tensor: :math:`log(x)` - """ - clamped_x = torch.clamp(x, min=eps) - return torch.log(clamped_x) - - @staticmethod - def inverse_sigmod(x): - r""" - Inverse of the sigmoid function - """ - if not torch.is_tensor(x): - x = torch.tensor(x) - return OverflowUtils.log_clamped(x / (1.0 - x)) - - @staticmethod - def inverse_softplus(x): - r""" - Inverse of the softplus function - """ - if not torch.is_tensor(x): - x = torch.tensor(x) - return OverflowUtils.log_clamped(torch.exp(x) - 1.0) - - @staticmethod - def logsumexp(x, dim): - r""" - Differentiable LogSumExp: Does not creates nan gradients - when all the inputs are -inf yeilds 0 gradients. - Args: - x : torch.Tensor - The input tensor - dim: int - The dimension on which the log sum exp has to be applied - """ - - m, _ = x.max(dim=dim) - mask = m == -float("inf") - s = (x - m.masked_fill_(mask, 0).unsqueeze(dim=dim)).exp().sum(dim=dim) - return s.masked_fill_(mask, 1).log() + m.masked_fill_(mask, -float("inf")) - - @staticmethod - def double_pad(list_of_different_shape_tensors): - r""" - Pads the list of tensors in 2 dimensions - """ - second_dim_lens = [len(a) for a in [i[0] for i in list_of_different_shape_tensors]] - second_dim_max = max(second_dim_lens) - padded_x = [F.pad(x, (0, second_dim_max - len(x[0]))) for x in list_of_different_shape_tensors] - return nn.utils.rnn.pad_sequence(padded_x, batch_first=True) diff --git a/TTS/TTS/tts/layers/overflow/decoder.py b/TTS/TTS/tts/layers/overflow/decoder.py deleted file mode 100644 index 4cd7ae88068cfaffe179f2e61354cc7eb760268c..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/overflow/decoder.py +++ /dev/null @@ -1,81 +0,0 @@ -import torch -from torch import nn - -from TTS.tts.layers.glow_tts.decoder import Decoder as GlowDecoder -from TTS.tts.utils.helpers import sequence_mask - - -class Decoder(nn.Module): - """Uses glow decoder with some modifications. - :: - - Squeeze -> ActNorm -> InvertibleConv1x1 -> AffineCoupling -> Unsqueeze - - Args: - in_channels (int): channels of input tensor. - hidden_channels (int): hidden decoder channels. - kernel_size (int): Coupling block kernel size. (Wavenet filter kernel size.) - dilation_rate (int): rate to increase dilation by each layer in a decoder block. - num_flow_blocks (int): number of decoder blocks. - num_coupling_layers (int): number coupling layers. (number of wavenet layers.) - dropout_p (float): wavenet dropout rate. - sigmoid_scale (bool): enable/disable sigmoid scaling in coupling layer. - """ - - def __init__( - self, - in_channels, - hidden_channels, - kernel_size, - dilation_rate, - num_flow_blocks, - num_coupling_layers, - dropout_p=0.0, - num_splits=4, - num_squeeze=2, - sigmoid_scale=False, - c_in_channels=0, - ): - super().__init__() - - self.glow_decoder = GlowDecoder( - in_channels, - hidden_channels, - kernel_size, - dilation_rate, - num_flow_blocks, - num_coupling_layers, - dropout_p, - num_splits, - num_squeeze, - sigmoid_scale, - c_in_channels, - ) - self.n_sqz = num_squeeze - - def forward(self, x, x_len, g=None, reverse=False): - """ - Input shapes: - - x: :math:`[B, C, T]` - - x_len :math:`[B]` - - g: :math:`[B, C]` - - Output shapes: - - x: :math:`[B, C, T]` - - x_len :math:`[B]` - - logget_tot :math:`[B]` - """ - x, x_len, x_max_len = self.preprocess(x, x_len, x_len.max()) - x_mask = torch.unsqueeze(sequence_mask(x_len, x_max_len), 1).to(x.dtype) - x, logdet_tot = self.glow_decoder(x, x_mask, g, reverse) - return x, x_len, logdet_tot - - def preprocess(self, y, y_lengths, y_max_length): - if y_max_length is not None: - y_max_length = torch.div(y_max_length, self.n_sqz, rounding_mode="floor") * self.n_sqz - y = y[:, :, :y_max_length] - y_lengths = torch.div(y_lengths, self.n_sqz, rounding_mode="floor") * self.n_sqz - return y, y_lengths, y_max_length - - def store_inverse(self): - self.glow_decoder.store_inverse() diff --git a/TTS/TTS/tts/layers/overflow/neural_hmm.py b/TTS/TTS/tts/layers/overflow/neural_hmm.py deleted file mode 100644 index 0631ba98c00029e9871c965e4c7f465aa32bc406..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/overflow/neural_hmm.py +++ /dev/null @@ -1,553 +0,0 @@ -from typing import List - -import torch -import torch.distributions as tdist -import torch.nn.functional as F -from torch import nn -from torch.utils.checkpoint import checkpoint - -from TTS.tts.layers.overflow.common_layers import Outputnet, OverflowUtils -from TTS.tts.layers.tacotron.common_layers import Prenet -from TTS.tts.utils.helpers import sequence_mask - - -class NeuralHMM(nn.Module): - """Autoregressive left to right HMM model primarily used in "Neural HMMs are all you need (for high-quality attention-free TTS)" - - Paper:: - https://arxiv.org/abs/2108.13320 - - Paper abstract:: - Neural sequence-to-sequence TTS has achieved significantly better output quality than statistical speech synthesis using - HMMs. However, neural TTS is generally not probabilistic and uses non-monotonic attention. Attention failures increase - training time and can make synthesis babble incoherently. This paper describes how the old and new paradigms can be - combined to obtain the advantages of both worlds, by replacing attention in neural TTS with an autoregressive left-right - no-skip hidden Markov model defined by a neural network. Based on this proposal, we modify Tacotron 2 to obtain an - HMM-based neural TTS model with monotonic alignment, trained to maximise the full sequence likelihood without - approximation. We also describe how to combine ideas from classical and contemporary TTS for best results. The resulting - example system is smaller and simpler than Tacotron 2, and learns to speak with fewer iterations and less data, whilst - achieving comparable naturalness prior to the post-net. Our approach also allows easy control over speaking rate. - - Args: - frame_channels (int): Output dimension to generate. - ar_order (int): Autoregressive order of the model. In ablations of Neural HMM it was found that more autoregression while giving more variation hurts naturalness of the synthesised audio. - deterministic_transition (bool): deterministic duration generation based on duration quantiles as defiend in "S. Ronanki, O. Watts, S. King, and G. E. Henter, “Medianbased generation of synthetic speech durations using a nonparametric approach,” in Proc. SLT, 2016.". Defaults to True. - encoder_dim (int): Channels of encoder input and character embedding tensors. Defaults to 512. - prenet_type (str): `original` or `bn`. `original` sets the default Prenet and `bn` uses Batch Normalization version of the Prenet. - prenet_dim (int): Dimension of the Prenet. - prenet_n_layers (int): Number of layers in the Prenet. - prenet_dropout (float): Dropout probability of the Prenet. - prenet_dropout_at_inference (bool): If True, dropout is applied at inference time. - memory_rnn_dim (int): Size of the memory RNN to process output of prenet. - outputnet_size (List[int]): Size of the output network inside the neural HMM. - flat_start_params (dict): Parameters for the flat start initialization of the neural HMM. - std_floor (float): Floor value for the standard deviation of the neural HMM. Prevents model cheating by putting point mass and getting infinite likelihood at any datapoint. - use_grad_checkpointing (bool, optional): Use gradient checkpointing to save memory. Defaults to True. - """ - - def __init__( - self, - frame_channels: int, - ar_order: int, - deterministic_transition: bool, - encoder_dim: int, - prenet_type: str, - prenet_dim: int, - prenet_n_layers: int, - prenet_dropout: float, - prenet_dropout_at_inference: bool, - memory_rnn_dim: int, - outputnet_size: List[int], - flat_start_params: dict, - std_floor: float, - use_grad_checkpointing: bool = True, - ): - super().__init__() - - self.frame_channels = frame_channels - self.ar_order = ar_order - self.deterministic_transition = deterministic_transition - self.prenet_dim = prenet_dim - self.memory_rnn_dim = memory_rnn_dim - self.use_grad_checkpointing = use_grad_checkpointing - - self.transition_model = TransitionModel() - self.emission_model = EmissionModel() - - assert ar_order > 0, f"AR order must be greater than 0 provided {ar_order}" - - self.ar_order = ar_order - self.prenet = Prenet( - in_features=frame_channels * ar_order, - prenet_type=prenet_type, - prenet_dropout=prenet_dropout, - dropout_at_inference=prenet_dropout_at_inference, - out_features=[self.prenet_dim for _ in range(prenet_n_layers)], - bias=False, - ) - self.memory_rnn = nn.LSTMCell(input_size=prenet_dim, hidden_size=memory_rnn_dim) - self.output_net = Outputnet( - encoder_dim, memory_rnn_dim, frame_channels, outputnet_size, flat_start_params, std_floor - ) - self.register_buffer("go_tokens", torch.zeros(ar_order, 1)) - - def forward(self, inputs, inputs_len, mels, mel_lens): - r"""HMM forward algorithm for training uses logarithmic version of Rabiner (1989) forward algorithm. - - Args: - inputs (torch.FloatTensor): Encoder outputs - inputs_len (torch.LongTensor): Encoder output lengths - mels (torch.FloatTensor): Mel inputs - mel_lens (torch.LongTensor): Length of mel inputs - - Shapes: - - inputs: (B, T, D_out_enc) - - inputs_len: (B) - - mels: (B, D_mel, T_mel) - - mel_lens: (B) - - Returns: - log_prob (torch.FloatTensor): Log probability of the sequence - """ - # Get dimensions of inputs - batch_size, N, _ = inputs.shape - T_max = torch.max(mel_lens) - mels = mels.permute(0, 2, 1) - - # Intialize forward algorithm - log_state_priors = self._initialize_log_state_priors(inputs) - log_c, log_alpha_scaled, transition_matrix, means = self._initialize_forward_algorithm_variables(mels, N) - - # Initialize autoregression elements - ar_inputs = self._add_go_token(mels) - h_memory, c_memory = self._init_lstm_states(batch_size, self.memory_rnn_dim, mels) - - for t in range(T_max): - # Process Autoregression - h_memory, c_memory = self._process_ar_timestep(t, ar_inputs, h_memory, c_memory) - # Get mean, std and transition vector from decoder for this timestep - # Note: Gradient checkpointing currently doesn't works with multiple gpus inside a loop - if self.use_grad_checkpointing and self.training: - mean, std, transition_vector = checkpoint(self.output_net, h_memory, inputs) - else: - mean, std, transition_vector = self.output_net(h_memory, inputs) - - if t == 0: - log_alpha_temp = log_state_priors + self.emission_model(mels[:, 0], mean, std, inputs_len) - else: - log_alpha_temp = self.emission_model(mels[:, t], mean, std, inputs_len) + self.transition_model( - log_alpha_scaled[:, t - 1, :], transition_vector, inputs_len - ) - log_c[:, t] = torch.logsumexp(log_alpha_temp, dim=1) - log_alpha_scaled[:, t, :] = log_alpha_temp - log_c[:, t].unsqueeze(1) - transition_matrix[:, t] = transition_vector # needed for absorption state calculation - - # Save for plotting - means.append(mean.detach()) - - log_c, log_alpha_scaled = self._mask_lengths(mel_lens, log_c, log_alpha_scaled) - - sum_final_log_c = self.get_absorption_state_scaling_factor( - mel_lens, log_alpha_scaled, inputs_len, transition_matrix - ) - - log_probs = torch.sum(log_c, dim=1) + sum_final_log_c - - return log_probs, log_alpha_scaled, transition_matrix, means - - @staticmethod - def _mask_lengths(mel_lens, log_c, log_alpha_scaled): - """ - Mask the lengths of the forward variables so that the variable lenghts - do not contribute in the loss calculation - Args: - mel_inputs (torch.FloatTensor): (batch, T, frame_channels) - mel_inputs_lengths (torch.IntTensor): (batch) - log_c (torch.FloatTensor): (batch, T) - Returns: - log_c (torch.FloatTensor) : scaled probabilities (batch, T) - log_alpha_scaled (torch.FloatTensor): forward probabilities (batch, T, N) - """ - mask_log_c = sequence_mask(mel_lens) - log_c = log_c * mask_log_c - mask_log_alpha_scaled = mask_log_c.unsqueeze(2) - log_alpha_scaled = log_alpha_scaled * mask_log_alpha_scaled - return log_c, log_alpha_scaled - - def _process_ar_timestep( - self, - t, - ar_inputs, - h_memory, - c_memory, - ): - """ - Process autoregression in timestep - 1. At a specific t timestep - 2. Perform data dropout if applied (we did not use it) - 3. Run the autoregressive frame through the prenet (has dropout) - 4. Run the prenet output through the post prenet rnn - - Args: - t (int): mel-spec timestep - ar_inputs (torch.FloatTensor): go-token appended mel-spectrograms - - shape: (b, D_out, T_out) - h_post_prenet (torch.FloatTensor): previous timestep rnn hidden state - - shape: (b, memory_rnn_dim) - c_post_prenet (torch.FloatTensor): previous timestep rnn cell state - - shape: (b, memory_rnn_dim) - - Returns: - h_post_prenet (torch.FloatTensor): rnn hidden state of the current timestep - c_post_prenet (torch.FloatTensor): rnn cell state of the current timestep - """ - prenet_input = ar_inputs[:, t : t + self.ar_order].flatten(1) - memory_inputs = self.prenet(prenet_input) - h_memory, c_memory = self.memory_rnn(memory_inputs, (h_memory, c_memory)) - return h_memory, c_memory - - def _add_go_token(self, mel_inputs): - """Append the go token to create the autoregressive input - Args: - mel_inputs (torch.FloatTensor): (batch_size, T, n_mel_channel) - Returns: - ar_inputs (torch.FloatTensor): (batch_size, T, n_mel_channel) - """ - batch_size, T, _ = mel_inputs.shape - go_tokens = self.go_tokens.unsqueeze(0).expand(batch_size, self.ar_order, self.frame_channels) - ar_inputs = torch.cat((go_tokens, mel_inputs), dim=1)[:, :T] - return ar_inputs - - @staticmethod - def _initialize_forward_algorithm_variables(mel_inputs, N): - r"""Initialize placeholders for forward algorithm variables, to use a stable - version we will use log_alpha_scaled and the scaling constant - - Args: - mel_inputs (torch.FloatTensor): (b, T_max, frame_channels) - N (int): number of states - Returns: - log_c (torch.FloatTensor): Scaling constant (b, T_max) - """ - b, T_max, _ = mel_inputs.shape - log_alpha_scaled = mel_inputs.new_zeros((b, T_max, N)) - log_c = mel_inputs.new_zeros(b, T_max) - transition_matrix = mel_inputs.new_zeros((b, T_max, N)) - - # Saving for plotting later, will not have gradient tapes - means = [] - return log_c, log_alpha_scaled, transition_matrix, means - - @staticmethod - def _init_lstm_states(batch_size, hidden_state_dim, device_tensor): - r""" - Initialize Hidden and Cell states for LSTM Cell - - Args: - batch_size (Int): batch size - hidden_state_dim (Int): dimensions of the h and c - device_tensor (torch.FloatTensor): useful for the device and type - - Returns: - (torch.FloatTensor): shape (batch_size, hidden_state_dim) - can be hidden state for LSTM - (torch.FloatTensor): shape (batch_size, hidden_state_dim) - can be the cell state for LSTM - """ - return ( - device_tensor.new_zeros(batch_size, hidden_state_dim), - device_tensor.new_zeros(batch_size, hidden_state_dim), - ) - - def get_absorption_state_scaling_factor(self, mels_len, log_alpha_scaled, inputs_len, transition_vector): - """Returns the final scaling factor of absorption state - - Args: - mels_len (torch.IntTensor): Input size of mels to - get the last timestep of log_alpha_scaled - log_alpha_scaled (torch.FloatTEnsor): State probabilities - text_lengths (torch.IntTensor): length of the states to - mask the values of states lengths - ( - Useful when the batch has very different lengths, - when the length of an observation is less than - the number of max states, then the log alpha after - the state value is filled with -infs. So we mask - those values so that it only consider the states - which are needed for that length - ) - transition_vector (torch.FloatTensor): transtiion vector for each state per timestep - - Shapes: - - mels_len: (batch_size) - - log_alpha_scaled: (batch_size, N, T) - - text_lengths: (batch_size) - - transition_vector: (batch_size, N, T) - - Returns: - sum_final_log_c (torch.FloatTensor): (batch_size) - - """ - N = torch.max(inputs_len) - max_inputs_len = log_alpha_scaled.shape[2] - state_lengths_mask = sequence_mask(inputs_len, max_len=max_inputs_len) - - last_log_alpha_scaled_index = ( - (mels_len - 1).unsqueeze(-1).expand(-1, N).unsqueeze(1) - ) # Batch X Hidden State Size - last_log_alpha_scaled = torch.gather(log_alpha_scaled, 1, last_log_alpha_scaled_index).squeeze(1) - last_log_alpha_scaled = last_log_alpha_scaled.masked_fill(~state_lengths_mask, -float("inf")) - - last_transition_vector = torch.gather(transition_vector, 1, last_log_alpha_scaled_index).squeeze(1) - last_transition_probability = torch.sigmoid(last_transition_vector) - log_probability_of_transitioning = OverflowUtils.log_clamped(last_transition_probability) - - last_transition_probability_index = self.get_mask_for_last_item(inputs_len, inputs_len.device) - log_probability_of_transitioning = log_probability_of_transitioning.masked_fill( - ~last_transition_probability_index, -float("inf") - ) - final_log_c = last_log_alpha_scaled + log_probability_of_transitioning - - # If the length of the mel is less than the number of states it will select the -inf values leading to nan gradients - # Ideally, we should clean the dataset otherwise this is a little hack uncomment the line below - final_log_c = final_log_c.clamp(min=torch.finfo(final_log_c.dtype).min) - - sum_final_log_c = torch.logsumexp(final_log_c, dim=1) - return sum_final_log_c - - @staticmethod - def get_mask_for_last_item(lengths, device, out_tensor=None): - """Returns n-1 mask for the last item in the sequence. - - Args: - lengths (torch.IntTensor): lengths in a batch - device (str, optional): Defaults to "cpu". - out_tensor (torch.Tensor, optional): uses the memory of a specific tensor. - Defaults to None. - - Returns: - - Shape: :math:`(b, max_len)` - """ - max_len = torch.max(lengths).item() - ids = ( - torch.arange(0, max_len, device=device) if out_tensor is None else torch.arange(0, max_len, out=out_tensor) - ) - mask = ids == lengths.unsqueeze(1) - 1 - return mask - - @torch.inference_mode() - def inference( - self, - inputs: torch.FloatTensor, - input_lens: torch.LongTensor, - sampling_temp: float, - max_sampling_time: int, - duration_threshold: float, - ): - """Inference from autoregressive neural HMM - - Args: - inputs (torch.FloatTensor): input states - - shape: :math:`(b, T, d)` - input_lens (torch.LongTensor): input state lengths - - shape: :math:`(b)` - sampling_temp (float): sampling temperature - max_sampling_temp (int): max sampling temperature - duration_threshold (float): duration threshold to switch to next state - - Use this to change the spearking rate of the synthesised audio - """ - - b = inputs.shape[0] - outputs = { - "hmm_outputs": [], - "hmm_outputs_len": [], - "alignments": [], - "input_parameters": [], - "output_parameters": [], - } - for i in range(b): - neural_hmm_outputs, states_travelled, input_parameters, output_parameters = self.sample( - inputs[i : i + 1], input_lens[i], sampling_temp, max_sampling_time, duration_threshold - ) - - outputs["hmm_outputs"].append(neural_hmm_outputs) - outputs["hmm_outputs_len"].append(neural_hmm_outputs.shape[0]) - outputs["alignments"].append(states_travelled) - outputs["input_parameters"].append(input_parameters) - outputs["output_parameters"].append(output_parameters) - - outputs["hmm_outputs"] = nn.utils.rnn.pad_sequence(outputs["hmm_outputs"], batch_first=True) - outputs["hmm_outputs_len"] = torch.tensor( - outputs["hmm_outputs_len"], dtype=input_lens.dtype, device=input_lens.device - ) - return outputs - - @torch.inference_mode() - def sample(self, inputs, input_lens, sampling_temp, max_sampling_time, duration_threshold): - """Samples an output from the parameter models - - Args: - inputs (torch.FloatTensor): input states - - shape: :math:`(1, T, d)` - input_lens (torch.LongTensor): input state lengths - - shape: :math:`(1)` - sampling_temp (float): sampling temperature - max_sampling_time (int): max sampling time - duration_threshold (float): duration threshold to switch to next state - - Returns: - outputs (torch.FloatTensor): Output Observations - - Shape: :math:`(T, output_dim)` - states_travelled (list[int]): Hidden states travelled - - Shape: :math:`(T)` - input_parameters (list[torch.FloatTensor]): Input parameters - output_parameters (list[torch.FloatTensor]): Output parameters - """ - states_travelled, outputs, t = [], [], 0 - - # Sample initial state - current_state = 0 - states_travelled.append(current_state) - - # Prepare autoregression - prenet_input = self.go_tokens.unsqueeze(0).expand(1, self.ar_order, self.frame_channels) - h_memory, c_memory = self._init_lstm_states(1, self.memory_rnn_dim, prenet_input) - - input_parameter_values = [] - output_parameter_values = [] - quantile = 1 - while True: - memory_input = self.prenet(prenet_input.flatten(1).unsqueeze(0)) - # will be 1 while sampling - h_memory, c_memory = self.memory_rnn(memory_input.squeeze(0), (h_memory, c_memory)) - - z_t = inputs[:, current_state].unsqueeze(0) # Add fake time dimension - mean, std, transition_vector = self.output_net(h_memory, z_t) - - transition_probability = torch.sigmoid(transition_vector.flatten()) - staying_probability = torch.sigmoid(-transition_vector.flatten()) - - # Save for plotting - input_parameter_values.append([prenet_input, current_state]) - output_parameter_values.append([mean, std, transition_probability]) - - x_t = self.emission_model.sample(mean, std, sampling_temp=sampling_temp) - - # Prepare autoregressive input for next iteration - prenet_input = torch.cat((prenet_input, x_t), dim=1)[:, 1:] - - outputs.append(x_t.flatten()) - - transition_matrix = torch.cat((staying_probability, transition_probability)) - quantile *= staying_probability - if not self.deterministic_transition: - switch = transition_matrix.multinomial(1)[0].item() - else: - switch = quantile < duration_threshold - - if switch: - current_state += 1 - quantile = 1 - - states_travelled.append(current_state) - - if (current_state == input_lens) or (max_sampling_time and t == max_sampling_time - 1): - break - - t += 1 - - return ( - torch.stack(outputs, dim=0), - F.one_hot(input_lens.new_tensor(states_travelled)), - input_parameter_values, - output_parameter_values, - ) - - @staticmethod - def _initialize_log_state_priors(text_embeddings): - """Creates the log pi in forward algorithm. - - Args: - text_embeddings (torch.FloatTensor): used to create the log pi - on current device - - Shapes: - - text_embeddings: (B, T, D_out_enc) - """ - N = text_embeddings.shape[1] - log_state_priors = text_embeddings.new_full([N], -float("inf")) - log_state_priors[0] = 0.0 - return log_state_priors - - -class TransitionModel(nn.Module): - """Transition Model of the HMM, it represents the probability of transitioning - form current state to all other states""" - - def forward(self, log_alpha_scaled, transition_vector, inputs_len): # pylint: disable=no-self-use - r""" - product of the past state with transitional probabilities in log space - - Args: - log_alpha_scaled (torch.Tensor): Multiply previous timestep's alphas by - transition matrix (in log domain) - - shape: (batch size, N) - transition_vector (torch.tensor): transition vector for each state - - shape: (N) - inputs_len (int tensor): Lengths of states in a batch - - shape: (batch) - - Returns: - out (torch.FloatTensor): log probability of transitioning to each state - """ - transition_p = torch.sigmoid(transition_vector) - staying_p = torch.sigmoid(-transition_vector) - - log_staying_probability = OverflowUtils.log_clamped(staying_p) - log_transition_probability = OverflowUtils.log_clamped(transition_p) - - staying = log_alpha_scaled + log_staying_probability - leaving = log_alpha_scaled + log_transition_probability - leaving = leaving.roll(1, dims=1) - leaving[:, 0] = -float("inf") - inputs_len_mask = sequence_mask(inputs_len) - out = OverflowUtils.logsumexp(torch.stack((staying, leaving), dim=2), dim=2) - out = out.masked_fill(~inputs_len_mask, -float("inf")) # There are no states to contribute to the loss - return out - - -class EmissionModel(nn.Module): - """Emission Model of the HMM, it represents the probability of - emitting an observation based on the current state""" - - def __init__(self) -> None: - super().__init__() - self.distribution_function: tdist.Distribution = tdist.normal.Normal - - def sample(self, means, stds, sampling_temp): - return self.distribution_function(means, stds * sampling_temp).sample() if sampling_temp > 0 else means - - def forward(self, x_t, means, stds, state_lengths): - r"""Calculates the log probability of the the given data (x_t) - being observed from states with given means and stds - Args: - x_t (float tensor) : observation at current time step - - shape: (batch, feature_dim) - means (float tensor): means of the distributions of hidden states - - shape: (batch, hidden_state, feature_dim) - stds (float tensor): standard deviations of the distributions of the hidden states - - shape: (batch, hidden_state, feature_dim) - state_lengths (int tensor): Lengths of states in a batch - - shape: (batch) - - Returns: - out (float tensor): observation log likelihoods, - expressing the probability of an observation - being generated from a state i - shape: (batch, hidden_state) - """ - emission_dists = self.distribution_function(means, stds) - out = emission_dists.log_prob(x_t.unsqueeze(1)) - state_lengths_mask = sequence_mask(state_lengths).unsqueeze(2) - out = torch.sum(out * state_lengths_mask, dim=2) - return out diff --git a/TTS/TTS/tts/layers/overflow/plotting_utils.py b/TTS/TTS/tts/layers/overflow/plotting_utils.py deleted file mode 100644 index a63aeb370a38a29660dc93267f4be138381c7df6..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/overflow/plotting_utils.py +++ /dev/null @@ -1,79 +0,0 @@ -from typing import Any - -import matplotlib.pyplot as plt -import numpy as np -import torch - - -def validate_numpy_array(value: Any): - r""" - Validates the input and makes sure it returns a numpy array (i.e on CPU) - - Args: - value (Any): the input value - - Raises: - TypeError: if the value is not a numpy array or torch tensor - - Returns: - np.ndarray: numpy array of the value - """ - if isinstance(value, np.ndarray): - pass - elif isinstance(value, list): - value = np.array(value) - elif torch.is_tensor(value): - value = value.cpu().numpy() - else: - raise TypeError("Value must be a numpy array, a torch tensor or a list") - - return value - - -def get_spec_from_most_probable_state(log_alpha_scaled, means, decoder=None): - """Get the most probable state means from the log_alpha_scaled. - - Args: - log_alpha_scaled (torch.Tensor): Log alpha scaled values. - - Shape: :math:`(T, N)` - means (torch.Tensor): Means of the states. - - Shape: :math:`(N, T, D_out)` - decoder (torch.nn.Module): Decoder module to decode the latent to melspectrogram. Defaults to None. - """ - max_state_numbers = torch.max(log_alpha_scaled, dim=1)[1] - max_len = means.shape[0] - n_mel_channels = means.shape[2] - max_state_numbers = max_state_numbers.unsqueeze(1).unsqueeze(1).expand(max_len, 1, n_mel_channels) - means = torch.gather(means, 1, max_state_numbers).squeeze(1).to(log_alpha_scaled.dtype) - if decoder is not None: - mel = ( - decoder(means.T.unsqueeze(0), torch.tensor([means.shape[0]], device=means.device), reverse=True)[0] - .squeeze(0) - .T - ) - else: - mel = means - return mel - - -def plot_transition_probabilities_to_numpy(states, transition_probabilities, output_fig=False): - """Generates trainsition probabilities plot for the states and the probability of transition. - - Args: - states (torch.IntTensor): the states - transition_probabilities (torch.FloatTensor): the transition probabilities - """ - states = validate_numpy_array(states) - transition_probabilities = validate_numpy_array(transition_probabilities) - - fig, ax = plt.subplots(figsize=(30, 3)) - ax.plot(transition_probabilities, "o") - ax.set_title("Transition probability of state") - ax.set_xlabel("hidden state") - ax.set_ylabel("probability") - ax.set_xticks([i for i in range(len(transition_probabilities))]) # pylint: disable=unnecessary-comprehension - ax.set_xticklabels([int(x) for x in states], rotation=90) - plt.tight_layout() - if not output_fig: - plt.close() - return fig diff --git a/TTS/TTS/tts/layers/tacotron/__init__.py b/TTS/TTS/tts/layers/tacotron/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/layers/tacotron/attentions.py b/TTS/TTS/tts/layers/tacotron/attentions.py deleted file mode 100644 index 25c3798e6b8f5fbc66224af66c9955e245b94097..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tacotron/attentions.py +++ /dev/null @@ -1,486 +0,0 @@ -import torch -from scipy.stats import betabinom -from torch import nn -from torch.nn import functional as F - -from TTS.tts.layers.tacotron.common_layers import Linear - - -class LocationLayer(nn.Module): - """Layers for Location Sensitive Attention - - Args: - attention_dim (int): number of channels in the input tensor. - attention_n_filters (int, optional): number of filters in convolution. Defaults to 32. - attention_kernel_size (int, optional): kernel size of convolution filter. Defaults to 31. - """ - - def __init__(self, attention_dim, attention_n_filters=32, attention_kernel_size=31): - super().__init__() - self.location_conv1d = nn.Conv1d( - in_channels=2, - out_channels=attention_n_filters, - kernel_size=attention_kernel_size, - stride=1, - padding=(attention_kernel_size - 1) // 2, - bias=False, - ) - self.location_dense = Linear(attention_n_filters, attention_dim, bias=False, init_gain="tanh") - - def forward(self, attention_cat): - """ - Shapes: - attention_cat: [B, 2, C] - """ - processed_attention = self.location_conv1d(attention_cat) - processed_attention = self.location_dense(processed_attention.transpose(1, 2)) - return processed_attention - - -class GravesAttention(nn.Module): - """Graves Attention as is ref1 with updates from ref2. - ref1: https://arxiv.org/abs/1910.10288 - ref2: https://arxiv.org/pdf/1906.01083.pdf - - Args: - query_dim (int): number of channels in query tensor. - K (int): number of Gaussian heads to be used for computing attention. - """ - - COEF = 0.3989422917366028 # numpy.sqrt(1/(2*numpy.pi)) - - def __init__(self, query_dim, K): - super().__init__() - self._mask_value = 1e-8 - self.K = K - # self.attention_alignment = 0.05 - self.eps = 1e-5 - self.J = None - self.N_a = nn.Sequential( - nn.Linear(query_dim, query_dim, bias=True), nn.ReLU(), nn.Linear(query_dim, 3 * K, bias=True) - ) - self.attention_weights = None - self.mu_prev = None - self.init_layers() - - def init_layers(self): - torch.nn.init.constant_(self.N_a[2].bias[(2 * self.K) : (3 * self.K)], 1.0) # bias mean - torch.nn.init.constant_(self.N_a[2].bias[self.K : (2 * self.K)], 10) # bias std - - def init_states(self, inputs): - if self.J is None or inputs.shape[1] + 1 > self.J.shape[-1]: - self.J = torch.arange(0, inputs.shape[1] + 2.0).to(inputs.device) + 0.5 - self.attention_weights = torch.zeros(inputs.shape[0], inputs.shape[1]).to(inputs.device) - self.mu_prev = torch.zeros(inputs.shape[0], self.K).to(inputs.device) - - # pylint: disable=R0201 - # pylint: disable=unused-argument - def preprocess_inputs(self, inputs): - return None - - def forward(self, query, inputs, processed_inputs, mask): - """ - Shapes: - query: [B, C_attention_rnn] - inputs: [B, T_in, C_encoder] - processed_inputs: place_holder - mask: [B, T_in] - """ - gbk_t = self.N_a(query) - gbk_t = gbk_t.view(gbk_t.size(0), -1, self.K) - - # attention model parameters - # each B x K - g_t = gbk_t[:, 0, :] - b_t = gbk_t[:, 1, :] - k_t = gbk_t[:, 2, :] - - # dropout to decorrelate attention heads - g_t = torch.nn.functional.dropout(g_t, p=0.5, training=self.training) - - # attention GMM parameters - sig_t = torch.nn.functional.softplus(b_t) + self.eps - - mu_t = self.mu_prev + torch.nn.functional.softplus(k_t) - g_t = torch.softmax(g_t, dim=-1) + self.eps - - j = self.J[: inputs.size(1) + 1] - - # attention weights - phi_t = g_t.unsqueeze(-1) * (1 / (1 + torch.sigmoid((mu_t.unsqueeze(-1) - j) / sig_t.unsqueeze(-1)))) - - # discritize attention weights - alpha_t = torch.sum(phi_t, 1) - alpha_t = alpha_t[:, 1:] - alpha_t[:, :-1] - alpha_t[alpha_t == 0] = 1e-8 - - # apply masking - if mask is not None: - alpha_t.data.masked_fill_(~mask, self._mask_value) - - context = torch.bmm(alpha_t.unsqueeze(1), inputs).squeeze(1) - self.attention_weights = alpha_t - self.mu_prev = mu_t - return context - - -class OriginalAttention(nn.Module): - """Bahdanau Attention with various optional modifications. - - Location sensitive attnetion: https://arxiv.org/abs/1712.05884 - - Forward Attention: https://arxiv.org/abs/1807.06736 + state masking at inference - - Using sigmoid instead of softmax normalization - - Attention windowing at inference time - - Note: - Location Sensitive Attention extends the additive attention mechanism - to use cumulative attention weights from previous decoder time steps with the current time step features. - - Forward attention computes most probable monotonic alignment. The modified attention probabilities at each - timestep are computed recursively by the forward algorithm. - - Transition agent in the forward attention explicitly gates the attention mechanism whether to move forward or - stay at each decoder timestep. - - Attention windowing is a inductive prior that prevents the model from attending to previous and future timesteps - beyond a certain window. - - Args: - query_dim (int): number of channels in the query tensor. - embedding_dim (int): number of channels in the vakue tensor. In general, the value tensor is the output of the encoder layer. - attention_dim (int): number of channels of the inner attention layers. - location_attention (bool): enable/disable location sensitive attention. - attention_location_n_filters (int): number of location attention filters. - attention_location_kernel_size (int): filter size of location attention convolution layer. - windowing (int): window size for attention windowing. if it is 5, for computing the attention, it only considers the time steps [(t-5), ..., (t+5)] of the input. - norm (str): normalization method applied to the attention weights. 'softmax' or 'sigmoid' - forward_attn (bool): enable/disable forward attention. - trans_agent (bool): enable/disable transition agent in the forward attention. - forward_attn_mask (int): enable/disable an explicit masking in forward attention. It is useful to set at especially inference time. - """ - - # Pylint gets confused by PyTorch conventions here - # pylint: disable=attribute-defined-outside-init - def __init__( - self, - query_dim, - embedding_dim, - attention_dim, - location_attention, - attention_location_n_filters, - attention_location_kernel_size, - windowing, - norm, - forward_attn, - trans_agent, - forward_attn_mask, - ): - super().__init__() - self.query_layer = Linear(query_dim, attention_dim, bias=False, init_gain="tanh") - self.inputs_layer = Linear(embedding_dim, attention_dim, bias=False, init_gain="tanh") - self.v = Linear(attention_dim, 1, bias=True) - if trans_agent: - self.ta = nn.Linear(query_dim + embedding_dim, 1, bias=True) - if location_attention: - self.location_layer = LocationLayer( - attention_dim, - attention_location_n_filters, - attention_location_kernel_size, - ) - self._mask_value = -float("inf") - self.windowing = windowing - self.win_idx = None - self.norm = norm - self.forward_attn = forward_attn - self.trans_agent = trans_agent - self.forward_attn_mask = forward_attn_mask - self.location_attention = location_attention - - def init_win_idx(self): - self.win_idx = -1 - self.win_back = 2 - self.win_front = 6 - - def init_forward_attn(self, inputs): - B = inputs.shape[0] - T = inputs.shape[1] - self.alpha = torch.cat([torch.ones([B, 1]), torch.zeros([B, T])[:, :-1] + 1e-7], dim=1).to(inputs.device) - self.u = (0.5 * torch.ones([B, 1])).to(inputs.device) - - def init_location_attention(self, inputs): - B = inputs.size(0) - T = inputs.size(1) - self.attention_weights_cum = torch.zeros([B, T], device=inputs.device) - - def init_states(self, inputs): - B = inputs.size(0) - T = inputs.size(1) - self.attention_weights = torch.zeros([B, T], device=inputs.device) - if self.location_attention: - self.init_location_attention(inputs) - if self.forward_attn: - self.init_forward_attn(inputs) - if self.windowing: - self.init_win_idx() - - def preprocess_inputs(self, inputs): - return self.inputs_layer(inputs) - - def update_location_attention(self, alignments): - self.attention_weights_cum += alignments - - def get_location_attention(self, query, processed_inputs): - attention_cat = torch.cat((self.attention_weights.unsqueeze(1), self.attention_weights_cum.unsqueeze(1)), dim=1) - processed_query = self.query_layer(query.unsqueeze(1)) - processed_attention_weights = self.location_layer(attention_cat) - energies = self.v(torch.tanh(processed_query + processed_attention_weights + processed_inputs)) - energies = energies.squeeze(-1) - return energies, processed_query - - def get_attention(self, query, processed_inputs): - processed_query = self.query_layer(query.unsqueeze(1)) - energies = self.v(torch.tanh(processed_query + processed_inputs)) - energies = energies.squeeze(-1) - return energies, processed_query - - def apply_windowing(self, attention, inputs): - back_win = self.win_idx - self.win_back - front_win = self.win_idx + self.win_front - if back_win > 0: - attention[:, :back_win] = -float("inf") - if front_win < inputs.shape[1]: - attention[:, front_win:] = -float("inf") - # this is a trick to solve a special problem. - # but it does not hurt. - if self.win_idx == -1: - attention[:, 0] = attention.max() - # Update the window - self.win_idx = torch.argmax(attention, 1).long()[0].item() - return attention - - def apply_forward_attention(self, alignment): - # forward attention - fwd_shifted_alpha = F.pad(self.alpha[:, :-1].clone().to(alignment.device), (1, 0, 0, 0)) - # compute transition potentials - alpha = ((1 - self.u) * self.alpha + self.u * fwd_shifted_alpha + 1e-8) * alignment - # force incremental alignment - if not self.training and self.forward_attn_mask: - _, n = fwd_shifted_alpha.max(1) - val, _ = alpha.max(1) - for b in range(alignment.shape[0]): - alpha[b, n[b] + 3 :] = 0 - alpha[b, : (n[b] - 1)] = 0 # ignore all previous states to prevent repetition. - alpha[b, (n[b] - 2)] = 0.01 * val[b] # smoothing factor for the prev step - # renormalize attention weights - alpha = alpha / alpha.sum(dim=1, keepdim=True) - return alpha - - def forward(self, query, inputs, processed_inputs, mask): - """ - shapes: - query: [B, C_attn_rnn] - inputs: [B, T_en, D_en] - processed_inputs: [B, T_en, D_attn] - mask: [B, T_en] - """ - if self.location_attention: - attention, _ = self.get_location_attention(query, processed_inputs) - else: - attention, _ = self.get_attention(query, processed_inputs) - # apply masking - if mask is not None: - attention.data.masked_fill_(~mask, self._mask_value) - # apply windowing - only in eval mode - if not self.training and self.windowing: - attention = self.apply_windowing(attention, inputs) - - # normalize attention values - if self.norm == "softmax": - alignment = torch.softmax(attention, dim=-1) - elif self.norm == "sigmoid": - alignment = torch.sigmoid(attention) / torch.sigmoid(attention).sum(dim=1, keepdim=True) - else: - raise ValueError("Unknown value for attention norm type") - - if self.location_attention: - self.update_location_attention(alignment) - - # apply forward attention if enabled - if self.forward_attn: - alignment = self.apply_forward_attention(alignment) - self.alpha = alignment - - context = torch.bmm(alignment.unsqueeze(1), inputs) - context = context.squeeze(1) - self.attention_weights = alignment - - # compute transition agent - if self.forward_attn and self.trans_agent: - ta_input = torch.cat([context, query.squeeze(1)], dim=-1) - self.u = torch.sigmoid(self.ta(ta_input)) - return context - - -class MonotonicDynamicConvolutionAttention(nn.Module): - """Dynamic convolution attention from - https://arxiv.org/pdf/1910.10288.pdf - - - query -> linear -> tanh -> linear ->| - | mask values - v | | - atten_w(t-1) -|-> conv1d_dynamic -> linear -|-> tanh -> + -> softmax -> * -> * -> context - |-> conv1d_static -> linear -| | - |-> conv1d_prior -> log ----------------| - - query: attention rnn output. - - Note: - Dynamic convolution attention is an alternation of the location senstive attention with - dynamically computed convolution filters from the previous attention scores and a set of - constraints to keep the attention alignment diagonal. - DCA is sensitive to mixed precision training and might cause instable training. - - Args: - query_dim (int): number of channels in the query tensor. - embedding_dim (int): number of channels in the value tensor. - static_filter_dim (int): number of channels in the convolution layer computing the static filters. - static_kernel_size (int): kernel size for the convolution layer computing the static filters. - dynamic_filter_dim (int): number of channels in the convolution layer computing the dynamic filters. - dynamic_kernel_size (int): kernel size for the convolution layer computing the dynamic filters. - prior_filter_len (int, optional): [description]. Defaults to 11 from the paper. - alpha (float, optional): [description]. Defaults to 0.1 from the paper. - beta (float, optional): [description]. Defaults to 0.9 from the paper. - """ - - def __init__( - self, - query_dim, - embedding_dim, # pylint: disable=unused-argument - attention_dim, - static_filter_dim, - static_kernel_size, - dynamic_filter_dim, - dynamic_kernel_size, - prior_filter_len=11, - alpha=0.1, - beta=0.9, - ): - super().__init__() - self._mask_value = 1e-8 - self.dynamic_filter_dim = dynamic_filter_dim - self.dynamic_kernel_size = dynamic_kernel_size - self.prior_filter_len = prior_filter_len - self.attention_weights = None - # setup key and query layers - self.query_layer = nn.Linear(query_dim, attention_dim) - self.key_layer = nn.Linear(attention_dim, dynamic_filter_dim * dynamic_kernel_size, bias=False) - self.static_filter_conv = nn.Conv1d( - 1, - static_filter_dim, - static_kernel_size, - padding=(static_kernel_size - 1) // 2, - bias=False, - ) - self.static_filter_layer = nn.Linear(static_filter_dim, attention_dim, bias=False) - self.dynamic_filter_layer = nn.Linear(dynamic_filter_dim, attention_dim) - self.v = nn.Linear(attention_dim, 1, bias=False) - - prior = betabinom.pmf(range(prior_filter_len), prior_filter_len - 1, alpha, beta) - self.register_buffer("prior", torch.FloatTensor(prior).flip(0)) - - # pylint: disable=unused-argument - def forward(self, query, inputs, processed_inputs, mask): - """ - query: [B, C_attn_rnn] - inputs: [B, T_en, D_en] - processed_inputs: place holder. - mask: [B, T_en] - """ - # compute prior filters - prior_filter = F.conv1d( - F.pad(self.attention_weights.unsqueeze(1), (self.prior_filter_len - 1, 0)), self.prior.view(1, 1, -1) - ) - prior_filter = torch.log(prior_filter.clamp_min_(1e-6)).squeeze(1) - G = self.key_layer(torch.tanh(self.query_layer(query))) - # compute dynamic filters - dynamic_filter = F.conv1d( - self.attention_weights.unsqueeze(0), - G.view(-1, 1, self.dynamic_kernel_size), - padding=(self.dynamic_kernel_size - 1) // 2, - groups=query.size(0), - ) - dynamic_filter = dynamic_filter.view(query.size(0), self.dynamic_filter_dim, -1).transpose(1, 2) - # compute static filters - static_filter = self.static_filter_conv(self.attention_weights.unsqueeze(1)).transpose(1, 2) - alignment = ( - self.v( - torch.tanh(self.static_filter_layer(static_filter) + self.dynamic_filter_layer(dynamic_filter)) - ).squeeze(-1) - + prior_filter - ) - # compute attention weights - attention_weights = F.softmax(alignment, dim=-1) - # apply masking - if mask is not None: - attention_weights.data.masked_fill_(~mask, self._mask_value) - self.attention_weights = attention_weights - # compute context - context = torch.bmm(attention_weights.unsqueeze(1), inputs).squeeze(1) - return context - - def preprocess_inputs(self, inputs): # pylint: disable=no-self-use - return None - - def init_states(self, inputs): - B = inputs.size(0) - T = inputs.size(1) - self.attention_weights = torch.zeros([B, T], device=inputs.device) - self.attention_weights[:, 0] = 1.0 - - -def init_attn( - attn_type, - query_dim, - embedding_dim, - attention_dim, - location_attention, - attention_location_n_filters, - attention_location_kernel_size, - windowing, - norm, - forward_attn, - trans_agent, - forward_attn_mask, - attn_K, -): - if attn_type == "original": - return OriginalAttention( - query_dim, - embedding_dim, - attention_dim, - location_attention, - attention_location_n_filters, - attention_location_kernel_size, - windowing, - norm, - forward_attn, - trans_agent, - forward_attn_mask, - ) - if attn_type == "graves": - return GravesAttention(query_dim, attn_K) - if attn_type == "dynamic_convolution": - return MonotonicDynamicConvolutionAttention( - query_dim, - embedding_dim, - attention_dim, - static_filter_dim=8, - static_kernel_size=21, - dynamic_filter_dim=8, - dynamic_kernel_size=21, - prior_filter_len=11, - alpha=0.1, - beta=0.9, - ) - - raise RuntimeError(f" [!] Given Attention Type '{attn_type}' is not exist.") diff --git a/TTS/TTS/tts/layers/tacotron/capacitron_layers.py b/TTS/TTS/tts/layers/tacotron/capacitron_layers.py deleted file mode 100644 index 2181ffa7ec4e1f54d86cc5865a8fa7f6b6e362af..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tacotron/capacitron_layers.py +++ /dev/null @@ -1,205 +0,0 @@ -import torch -from torch import nn -from torch.distributions.multivariate_normal import MultivariateNormal as MVN -from torch.nn import functional as F - - -class CapacitronVAE(nn.Module): - """Effective Use of Variational Embedding Capacity for prosody transfer. - - See https://arxiv.org/abs/1906.03402""" - - def __init__( - self, - num_mel, - capacitron_VAE_embedding_dim, - encoder_output_dim=256, - reference_encoder_out_dim=128, - speaker_embedding_dim=None, - text_summary_embedding_dim=None, - ): - super().__init__() - # Init distributions - self.prior_distribution = MVN( - torch.zeros(capacitron_VAE_embedding_dim), torch.eye(capacitron_VAE_embedding_dim) - ) - self.approximate_posterior_distribution = None - # define output ReferenceEncoder dim to the capacitron_VAE_embedding_dim - self.encoder = ReferenceEncoder(num_mel, out_dim=reference_encoder_out_dim) - - # Init beta, the lagrange-like term for the KL distribution - self.beta = torch.nn.Parameter(torch.log(torch.exp(torch.Tensor([1.0])) - 1), requires_grad=True) - mlp_input_dimension = reference_encoder_out_dim - - if text_summary_embedding_dim is not None: - self.text_summary_net = TextSummary(text_summary_embedding_dim, encoder_output_dim=encoder_output_dim) - mlp_input_dimension += text_summary_embedding_dim - if speaker_embedding_dim is not None: - # TODO: Test a multispeaker model! - mlp_input_dimension += speaker_embedding_dim - self.post_encoder_mlp = PostEncoderMLP(mlp_input_dimension, capacitron_VAE_embedding_dim) - - def forward(self, reference_mel_info=None, text_info=None, speaker_embedding=None): - # Use reference - if reference_mel_info is not None: - reference_mels = reference_mel_info[0] # [batch_size, num_frames, num_mels] - mel_lengths = reference_mel_info[1] # [batch_size] - enc_out = self.encoder(reference_mels, mel_lengths) - - # concat speaker_embedding and/or text summary embedding - if text_info is not None: - text_inputs = text_info[0] # [batch_size, num_characters, num_embedding] - input_lengths = text_info[1] - text_summary_out = self.text_summary_net(text_inputs, input_lengths).to(reference_mels.device) - enc_out = torch.cat([enc_out, text_summary_out], dim=-1) - if speaker_embedding is not None: - speaker_embedding = torch.squeeze(speaker_embedding) - enc_out = torch.cat([enc_out, speaker_embedding], dim=-1) - - # Feed the output of the ref encoder and information about text/speaker into - # an MLP to produce the parameteres for the approximate poterior distributions - mu, sigma = self.post_encoder_mlp(enc_out) - # convert to cpu because prior_distribution was created on cpu - mu = mu.cpu() - sigma = sigma.cpu() - - # Sample from the posterior: z ~ q(z|x) - self.approximate_posterior_distribution = MVN(mu, torch.diag_embed(sigma)) - VAE_embedding = self.approximate_posterior_distribution.rsample() - # Infer from the model, bypasses encoding - else: - # Sample from the prior: z ~ p(z) - VAE_embedding = self.prior_distribution.sample().unsqueeze(0) - - # reshape to [batch_size, 1, capacitron_VAE_embedding_dim] - return VAE_embedding.unsqueeze(1), self.approximate_posterior_distribution, self.prior_distribution, self.beta - - -class ReferenceEncoder(nn.Module): - """NN module creating a fixed size prosody embedding from a spectrogram. - - inputs: mel spectrograms [batch_size, num_spec_frames, num_mel] - outputs: [batch_size, embedding_dim] - """ - - def __init__(self, num_mel, out_dim): - super().__init__() - self.num_mel = num_mel - filters = [1] + [32, 32, 64, 64, 128, 128] - num_layers = len(filters) - 1 - convs = [ - nn.Conv2d( - in_channels=filters[i], out_channels=filters[i + 1], kernel_size=(3, 3), stride=(2, 2), padding=(2, 2) - ) - for i in range(num_layers) - ] - self.convs = nn.ModuleList(convs) - self.training = False - self.bns = nn.ModuleList([nn.BatchNorm2d(num_features=filter_size) for filter_size in filters[1:]]) - - post_conv_height = self.calculate_post_conv_height(num_mel, 3, 2, 2, num_layers) - self.recurrence = nn.LSTM( - input_size=filters[-1] * post_conv_height, hidden_size=out_dim, batch_first=True, bidirectional=False - ) - - def forward(self, inputs, input_lengths): - batch_size = inputs.size(0) - x = inputs.view(batch_size, 1, -1, self.num_mel) # [batch_size, num_channels==1, num_frames, num_mel] - valid_lengths = input_lengths.float() # [batch_size] - for conv, bn in zip(self.convs, self.bns): - x = conv(x) - x = bn(x) - x = F.relu(x) - - # Create the post conv width mask based on the valid lengths of the output of the convolution. - # The valid lengths for the output of a convolution on varying length inputs is - # ceil(input_length/stride) + 1 for stride=3 and padding=2 - # For example (kernel_size=3, stride=2, padding=2): - # 0 0 x x x x x 0 0 -> Input = 5, 0 is zero padding, x is valid values coming from padding=2 in conv2d - # _____ - # x _____ - # x _____ - # x ____ - # x - # x x x x -> Output valid length = 4 - # Since every example in te batch is zero padded and therefore have separate valid_lengths, - # we need to mask off all the values AFTER the valid length for each example in the batch. - # Otherwise, the convolutions create noise and a lot of not real information - valid_lengths = (valid_lengths / 2).float() - valid_lengths = torch.ceil(valid_lengths).to(dtype=torch.int64) + 1 # 2 is stride -- size: [batch_size] - post_conv_max_width = x.size(2) - - mask = torch.arange(post_conv_max_width).to(inputs.device).expand( - len(valid_lengths), post_conv_max_width - ) < valid_lengths.unsqueeze(1) - mask = mask.expand(1, 1, -1, -1).transpose(2, 0).transpose(-1, 2) # [batch_size, 1, post_conv_max_width, 1] - x = x * mask - - x = x.transpose(1, 2) - # x: 4D tensor [batch_size, post_conv_width, - # num_channels==128, post_conv_height] - - post_conv_width = x.size(1) - x = x.contiguous().view(batch_size, post_conv_width, -1) - # x: 3D tensor [batch_size, post_conv_width, - # num_channels*post_conv_height] - - # Routine for fetching the last valid output of a dynamic LSTM with varying input lengths and padding - post_conv_input_lengths = valid_lengths - packed_seqs = nn.utils.rnn.pack_padded_sequence( - x, post_conv_input_lengths.tolist(), batch_first=True, enforce_sorted=False - ) # dynamic rnn sequence padding - self.recurrence.flatten_parameters() - _, (ht, _) = self.recurrence(packed_seqs) - last_output = ht[-1] - - return last_output.to(inputs.device) # [B, 128] - - @staticmethod - def calculate_post_conv_height(height, kernel_size, stride, pad, n_convs): - """Height of spec after n convolutions with fixed kernel/stride/pad.""" - for _ in range(n_convs): - height = (height - kernel_size + 2 * pad) // stride + 1 - return height - - -class TextSummary(nn.Module): - def __init__(self, embedding_dim, encoder_output_dim): - super().__init__() - self.lstm = nn.LSTM( - encoder_output_dim, # text embedding dimension from the text encoder - embedding_dim, # fixed length output summary the lstm creates from the input - batch_first=True, - bidirectional=False, - ) - - def forward(self, inputs, input_lengths): - # Routine for fetching the last valid output of a dynamic LSTM with varying input lengths and padding - packed_seqs = nn.utils.rnn.pack_padded_sequence( - inputs, input_lengths.tolist(), batch_first=True, enforce_sorted=False - ) # dynamic rnn sequence padding - self.lstm.flatten_parameters() - _, (ht, _) = self.lstm(packed_seqs) - last_output = ht[-1] - return last_output - - -class PostEncoderMLP(nn.Module): - def __init__(self, input_size, hidden_size): - super().__init__() - self.hidden_size = hidden_size - modules = [ - nn.Linear(input_size, hidden_size), # Hidden Layer - nn.Tanh(), - nn.Linear(hidden_size, hidden_size * 2), - ] # Output layer twice the size for mean and variance - self.net = nn.Sequential(*modules) - self.softplus = nn.Softplus() - - def forward(self, _input): - mlp_output = self.net(_input) - # The mean parameter is unconstrained - mu = mlp_output[:, : self.hidden_size] - # The standard deviation must be positive. Parameterise with a softplus - sigma = self.softplus(mlp_output[:, self.hidden_size :]) - return mu, sigma diff --git a/TTS/TTS/tts/layers/tacotron/common_layers.py b/TTS/TTS/tts/layers/tacotron/common_layers.py deleted file mode 100644 index f78ff1e75f6c23eb1a0fe827247a1127bc8f9958..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tacotron/common_layers.py +++ /dev/null @@ -1,119 +0,0 @@ -import torch -from torch import nn -from torch.nn import functional as F - - -class Linear(nn.Module): - """Linear layer with a specific initialization. - - Args: - in_features (int): number of channels in the input tensor. - out_features (int): number of channels in the output tensor. - bias (bool, optional): enable/disable bias in the layer. Defaults to True. - init_gain (str, optional): method to compute the gain in the weight initializtion based on the nonlinear activation used afterwards. Defaults to 'linear'. - """ - - def __init__(self, in_features, out_features, bias=True, init_gain="linear"): - super().__init__() - self.linear_layer = torch.nn.Linear(in_features, out_features, bias=bias) - self._init_w(init_gain) - - def _init_w(self, init_gain): - torch.nn.init.xavier_uniform_(self.linear_layer.weight, gain=torch.nn.init.calculate_gain(init_gain)) - - def forward(self, x): - return self.linear_layer(x) - - -class LinearBN(nn.Module): - """Linear layer with Batch Normalization. - - x -> linear -> BN -> o - - Args: - in_features (int): number of channels in the input tensor. - out_features (int ): number of channels in the output tensor. - bias (bool, optional): enable/disable bias in the linear layer. Defaults to True. - init_gain (str, optional): method to set the gain for weight initialization. Defaults to 'linear'. - """ - - def __init__(self, in_features, out_features, bias=True, init_gain="linear"): - super().__init__() - self.linear_layer = torch.nn.Linear(in_features, out_features, bias=bias) - self.batch_normalization = nn.BatchNorm1d(out_features, momentum=0.1, eps=1e-5) - self._init_w(init_gain) - - def _init_w(self, init_gain): - torch.nn.init.xavier_uniform_(self.linear_layer.weight, gain=torch.nn.init.calculate_gain(init_gain)) - - def forward(self, x): - """ - Shapes: - x: [T, B, C] or [B, C] - """ - out = self.linear_layer(x) - if len(out.shape) == 3: - out = out.permute(1, 2, 0) - out = self.batch_normalization(out) - if len(out.shape) == 3: - out = out.permute(2, 0, 1) - return out - - -class Prenet(nn.Module): - """Tacotron specific Prenet with an optional Batch Normalization. - - Note: - Prenet with BN improves the model performance significantly especially - if it is enabled after learning a diagonal attention alignment with the original - prenet. However, if the target dataset is high quality then it also works from - the start. It is also suggested to disable dropout if BN is in use. - - prenet_type == "original" - x -> [linear -> ReLU -> Dropout]xN -> o - - prenet_type == "bn" - x -> [linear -> BN -> ReLU -> Dropout]xN -> o - - Args: - in_features (int): number of channels in the input tensor and the inner layers. - prenet_type (str, optional): prenet type "original" or "bn". Defaults to "original". - prenet_dropout (bool, optional): dropout rate. Defaults to True. - dropout_at_inference (bool, optional): use dropout at inference. It leads to a better quality for some models. - out_features (list, optional): List of output channels for each prenet block. - It also defines number of the prenet blocks based on the length of argument list. - Defaults to [256, 256]. - bias (bool, optional): enable/disable bias in prenet linear layers. Defaults to True. - """ - - # pylint: disable=dangerous-default-value - def __init__( - self, - in_features, - prenet_type="original", - prenet_dropout=True, - dropout_at_inference=False, - out_features=[256, 256], - bias=True, - ): - super().__init__() - self.prenet_type = prenet_type - self.prenet_dropout = prenet_dropout - self.dropout_at_inference = dropout_at_inference - in_features = [in_features] + out_features[:-1] - if prenet_type == "bn": - self.linear_layers = nn.ModuleList( - [LinearBN(in_size, out_size, bias=bias) for (in_size, out_size) in zip(in_features, out_features)] - ) - elif prenet_type == "original": - self.linear_layers = nn.ModuleList( - [Linear(in_size, out_size, bias=bias) for (in_size, out_size) in zip(in_features, out_features)] - ) - - def forward(self, x): - for linear in self.linear_layers: - if self.prenet_dropout: - x = F.dropout(F.relu(linear(x)), p=0.5, training=self.training or self.dropout_at_inference) - else: - x = F.relu(linear(x)) - return x diff --git a/TTS/TTS/tts/layers/tacotron/gst_layers.py b/TTS/TTS/tts/layers/tacotron/gst_layers.py deleted file mode 100644 index 05dba7084ff5533b68779d46238530f4988db934..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tacotron/gst_layers.py +++ /dev/null @@ -1,149 +0,0 @@ -import torch -import torch.nn.functional as F -from torch import nn - - -class GST(nn.Module): - """Global Style Token Module for factorizing prosody in speech. - - See https://arxiv.org/pdf/1803.09017""" - - def __init__(self, num_mel, num_heads, num_style_tokens, gst_embedding_dim, embedded_speaker_dim=None): - super().__init__() - self.encoder = ReferenceEncoder(num_mel, gst_embedding_dim) - self.style_token_layer = StyleTokenLayer(num_heads, num_style_tokens, gst_embedding_dim, embedded_speaker_dim) - - def forward(self, inputs, speaker_embedding=None): - enc_out = self.encoder(inputs) - # concat speaker_embedding - if speaker_embedding is not None: - enc_out = torch.cat([enc_out, speaker_embedding], dim=-1) - style_embed = self.style_token_layer(enc_out) - - return style_embed - - -class ReferenceEncoder(nn.Module): - """NN module creating a fixed size prosody embedding from a spectrogram. - - inputs: mel spectrograms [batch_size, num_spec_frames, num_mel] - outputs: [batch_size, embedding_dim] - """ - - def __init__(self, num_mel, embedding_dim): - super().__init__() - self.num_mel = num_mel - filters = [1] + [32, 32, 64, 64, 128, 128] - num_layers = len(filters) - 1 - convs = [ - nn.Conv2d( - in_channels=filters[i], out_channels=filters[i + 1], kernel_size=(3, 3), stride=(2, 2), padding=(1, 1) - ) - for i in range(num_layers) - ] - self.convs = nn.ModuleList(convs) - self.bns = nn.ModuleList([nn.BatchNorm2d(num_features=filter_size) for filter_size in filters[1:]]) - - post_conv_height = self.calculate_post_conv_height(num_mel, 3, 2, 1, num_layers) - self.recurrence = nn.GRU( - input_size=filters[-1] * post_conv_height, hidden_size=embedding_dim // 2, batch_first=True - ) - - def forward(self, inputs): - batch_size = inputs.size(0) - x = inputs.view(batch_size, 1, -1, self.num_mel) - # x: 4D tensor [batch_size, num_channels==1, num_frames, num_mel] - for conv, bn in zip(self.convs, self.bns): - x = conv(x) - x = bn(x) - x = F.relu(x) - - x = x.transpose(1, 2) - # x: 4D tensor [batch_size, post_conv_width, - # num_channels==128, post_conv_height] - post_conv_width = x.size(1) - x = x.contiguous().view(batch_size, post_conv_width, -1) - # x: 3D tensor [batch_size, post_conv_width, - # num_channels*post_conv_height] - self.recurrence.flatten_parameters() - _, out = self.recurrence(x) - # out: 3D tensor [seq_len==1, batch_size, encoding_size=128] - - return out.squeeze(0) - - @staticmethod - def calculate_post_conv_height(height, kernel_size, stride, pad, n_convs): - """Height of spec after n convolutions with fixed kernel/stride/pad.""" - for _ in range(n_convs): - height = (height - kernel_size + 2 * pad) // stride + 1 - return height - - -class StyleTokenLayer(nn.Module): - """NN Module attending to style tokens based on prosody encodings.""" - - def __init__(self, num_heads, num_style_tokens, gst_embedding_dim, d_vector_dim=None): - super().__init__() - - self.query_dim = gst_embedding_dim // 2 - - if d_vector_dim: - self.query_dim += d_vector_dim - - self.key_dim = gst_embedding_dim // num_heads - self.style_tokens = nn.Parameter(torch.FloatTensor(num_style_tokens, self.key_dim)) - nn.init.normal_(self.style_tokens, mean=0, std=0.5) - self.attention = MultiHeadAttention( - query_dim=self.query_dim, key_dim=self.key_dim, num_units=gst_embedding_dim, num_heads=num_heads - ) - - def forward(self, inputs): - batch_size = inputs.size(0) - prosody_encoding = inputs.unsqueeze(1) - # prosody_encoding: 3D tensor [batch_size, 1, encoding_size==128] - tokens = torch.tanh(self.style_tokens).unsqueeze(0).expand(batch_size, -1, -1) - # tokens: 3D tensor [batch_size, num tokens, token embedding size] - style_embed = self.attention(prosody_encoding, tokens) - - return style_embed - - -class MultiHeadAttention(nn.Module): - """ - input: - query --- [N, T_q, query_dim] - key --- [N, T_k, key_dim] - output: - out --- [N, T_q, num_units] - """ - - def __init__(self, query_dim, key_dim, num_units, num_heads): - super().__init__() - self.num_units = num_units - self.num_heads = num_heads - self.key_dim = key_dim - - self.W_query = nn.Linear(in_features=query_dim, out_features=num_units, bias=False) - self.W_key = nn.Linear(in_features=key_dim, out_features=num_units, bias=False) - self.W_value = nn.Linear(in_features=key_dim, out_features=num_units, bias=False) - - def forward(self, query, key): - queries = self.W_query(query) # [N, T_q, num_units] - keys = self.W_key(key) # [N, T_k, num_units] - values = self.W_value(key) - - split_size = self.num_units // self.num_heads - queries = torch.stack(torch.split(queries, split_size, dim=2), dim=0) # [h, N, T_q, num_units/h] - keys = torch.stack(torch.split(keys, split_size, dim=2), dim=0) # [h, N, T_k, num_units/h] - values = torch.stack(torch.split(values, split_size, dim=2), dim=0) # [h, N, T_k, num_units/h] - - # score = softmax(QK^T / (d_k**0.5)) - scores = torch.matmul(queries, keys.transpose(2, 3)) # [h, N, T_q, T_k] - scores = scores / (self.key_dim**0.5) - scores = F.softmax(scores, dim=3) - - # out = score * V - out = torch.matmul(scores, values) # [h, N, T_q, num_units/h] - out = torch.cat(torch.split(out, 1, dim=0), dim=3).squeeze(0) # [N, T_q, num_units] - - return out diff --git a/TTS/TTS/tts/layers/tacotron/tacotron.py b/TTS/TTS/tts/layers/tacotron/tacotron.py deleted file mode 100644 index 7a47c35ef67852456d7211f32502ffb84509d61f..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tacotron/tacotron.py +++ /dev/null @@ -1,503 +0,0 @@ -# coding: utf-8 -# adapted from https://github.com/r9y9/tacotron_pytorch - -import torch -from torch import nn - -from .attentions import init_attn -from .common_layers import Prenet - - -class BatchNormConv1d(nn.Module): - r"""A wrapper for Conv1d with BatchNorm. It sets the activation - function between Conv and BatchNorm layers. BatchNorm layer - is initialized with the TF default values for momentum and eps. - - Args: - in_channels: size of each input sample - out_channels: size of each output samples - kernel_size: kernel size of conv filters - stride: stride of conv filters - padding: padding of conv filters - activation: activation function set b/w Conv1d and BatchNorm - - Shapes: - - input: (B, D) - - output: (B, D) - """ - - def __init__(self, in_channels, out_channels, kernel_size, stride, padding, activation=None): - super().__init__() - self.padding = padding - self.padder = nn.ConstantPad1d(padding, 0) - self.conv1d = nn.Conv1d( - in_channels, out_channels, kernel_size=kernel_size, stride=stride, padding=0, bias=False - ) - # Following tensorflow's default parameters - self.bn = nn.BatchNorm1d(out_channels, momentum=0.99, eps=1e-3) - self.activation = activation - # self.init_layers() - - def init_layers(self): - if isinstance(self.activation, torch.nn.ReLU): - w_gain = "relu" - elif isinstance(self.activation, torch.nn.Tanh): - w_gain = "tanh" - elif self.activation is None: - w_gain = "linear" - else: - raise RuntimeError("Unknown activation function") - torch.nn.init.xavier_uniform_(self.conv1d.weight, gain=torch.nn.init.calculate_gain(w_gain)) - - def forward(self, x): - x = self.padder(x) - x = self.conv1d(x) - x = self.bn(x) - if self.activation is not None: - x = self.activation(x) - return x - - -class Highway(nn.Module): - r"""Highway layers as explained in https://arxiv.org/abs/1505.00387 - - Args: - in_features (int): size of each input sample - out_feature (int): size of each output sample - - Shapes: - - input: (B, *, H_in) - - output: (B, *, H_out) - """ - - # TODO: Try GLU layer - def __init__(self, in_features, out_feature): - super().__init__() - self.H = nn.Linear(in_features, out_feature) - self.H.bias.data.zero_() - self.T = nn.Linear(in_features, out_feature) - self.T.bias.data.fill_(-1) - self.relu = nn.ReLU() - self.sigmoid = nn.Sigmoid() - # self.init_layers() - - def init_layers(self): - torch.nn.init.xavier_uniform_(self.H.weight, gain=torch.nn.init.calculate_gain("relu")) - torch.nn.init.xavier_uniform_(self.T.weight, gain=torch.nn.init.calculate_gain("sigmoid")) - - def forward(self, inputs): - H = self.relu(self.H(inputs)) - T = self.sigmoid(self.T(inputs)) - return H * T + inputs * (1.0 - T) - - -class CBHG(nn.Module): - """CBHG module: a recurrent neural network composed of: - - 1-d convolution banks - - Highway networks + residual connections - - Bidirectional gated recurrent units - - Args: - in_features (int): sample size - K (int): max filter size in conv bank - projections (list): conv channel sizes for conv projections - num_highways (int): number of highways layers - - Shapes: - - input: (B, C, T_in) - - output: (B, T_in, C*2) - """ - - # pylint: disable=dangerous-default-value - def __init__( - self, - in_features, - K=16, - conv_bank_features=128, - conv_projections=[128, 128], - highway_features=128, - gru_features=128, - num_highways=4, - ): - super().__init__() - self.in_features = in_features - self.conv_bank_features = conv_bank_features - self.highway_features = highway_features - self.gru_features = gru_features - self.conv_projections = conv_projections - self.relu = nn.ReLU() - # list of conv1d bank with filter size k=1...K - # TODO: try dilational layers instead - self.conv1d_banks = nn.ModuleList( - [ - BatchNormConv1d( - in_features, - conv_bank_features, - kernel_size=k, - stride=1, - padding=[(k - 1) // 2, k // 2], - activation=self.relu, - ) - for k in range(1, K + 1) - ] - ) - # max pooling of conv bank, with padding - # TODO: try average pooling OR larger kernel size - out_features = [K * conv_bank_features] + conv_projections[:-1] - activations = [self.relu] * (len(conv_projections) - 1) - activations += [None] - # setup conv1d projection layers - layer_set = [] - for in_size, out_size, ac in zip(out_features, conv_projections, activations): - layer = BatchNormConv1d(in_size, out_size, kernel_size=3, stride=1, padding=[1, 1], activation=ac) - layer_set.append(layer) - self.conv1d_projections = nn.ModuleList(layer_set) - # setup Highway layers - if self.highway_features != conv_projections[-1]: - self.pre_highway = nn.Linear(conv_projections[-1], highway_features, bias=False) - self.highways = nn.ModuleList([Highway(highway_features, highway_features) for _ in range(num_highways)]) - # bi-directional GPU layer - self.gru = nn.GRU(gru_features, gru_features, 1, batch_first=True, bidirectional=True) - - def forward(self, inputs): - # (B, in_features, T_in) - x = inputs - # (B, hid_features*K, T_in) - # Concat conv1d bank outputs - outs = [] - for conv1d in self.conv1d_banks: - out = conv1d(x) - outs.append(out) - x = torch.cat(outs, dim=1) - assert x.size(1) == self.conv_bank_features * len(self.conv1d_banks) - for conv1d in self.conv1d_projections: - x = conv1d(x) - x += inputs - x = x.transpose(1, 2) - if self.highway_features != self.conv_projections[-1]: - x = self.pre_highway(x) - # Residual connection - # TODO: try residual scaling as in Deep Voice 3 - # TODO: try plain residual layers - for highway in self.highways: - x = highway(x) - # (B, T_in, hid_features*2) - # TODO: replace GRU with convolution as in Deep Voice 3 - self.gru.flatten_parameters() - outputs, _ = self.gru(x) - return outputs - - -class EncoderCBHG(nn.Module): - r"""CBHG module with Encoder specific arguments""" - - def __init__(self): - super().__init__() - self.cbhg = CBHG( - 128, - K=16, - conv_bank_features=128, - conv_projections=[128, 128], - highway_features=128, - gru_features=128, - num_highways=4, - ) - - def forward(self, x): - return self.cbhg(x) - - -class Encoder(nn.Module): - r"""Stack Prenet and CBHG module for encoder - Args: - inputs (FloatTensor): embedding features - - Shapes: - - inputs: (B, T, D_in) - - outputs: (B, T, 128 * 2) - """ - - def __init__(self, in_features): - super().__init__() - self.prenet = Prenet(in_features, out_features=[256, 128]) - self.cbhg = EncoderCBHG() - - def forward(self, inputs): - # B x T x prenet_dim - outputs = self.prenet(inputs) - outputs = self.cbhg(outputs.transpose(1, 2)) - return outputs - - -class PostCBHG(nn.Module): - def __init__(self, mel_dim): - super().__init__() - self.cbhg = CBHG( - mel_dim, - K=8, - conv_bank_features=128, - conv_projections=[256, mel_dim], - highway_features=128, - gru_features=128, - num_highways=4, - ) - - def forward(self, x): - return self.cbhg(x) - - -class Decoder(nn.Module): - """Tacotron decoder. - - Args: - in_channels (int): number of input channels. - frame_channels (int): number of feature frame channels. - r (int): number of outputs per time step (reduction rate). - memory_size (int): size of the past window. if <= 0 memory_size = r - attn_type (string): type of attention used in decoder. - attn_windowing (bool): if true, define an attention window centered to maximum - attention response. It provides more robust attention alignment especially - at interence time. - attn_norm (string): attention normalization function. 'sigmoid' or 'softmax'. - prenet_type (string): 'original' or 'bn'. - prenet_dropout (float): prenet dropout rate. - forward_attn (bool): if true, use forward attention method. https://arxiv.org/abs/1807.06736 - trans_agent (bool): if true, use transition agent. https://arxiv.org/abs/1807.06736 - forward_attn_mask (bool): if true, mask attention values smaller than a threshold. - location_attn (bool): if true, use location sensitive attention. - attn_K (int): number of attention heads for GravesAttention. - separate_stopnet (bool): if true, detach stopnet input to prevent gradient flow. - d_vector_dim (int): size of speaker embedding vector, for multi-speaker training. - max_decoder_steps (int): Maximum number of steps allowed for the decoder. Defaults to 500. - """ - - # Pylint gets confused by PyTorch conventions here - # pylint: disable=attribute-defined-outside-init - - def __init__( - self, - in_channels, - frame_channels, - r, - memory_size, - attn_type, - attn_windowing, - attn_norm, - prenet_type, - prenet_dropout, - forward_attn, - trans_agent, - forward_attn_mask, - location_attn, - attn_K, - separate_stopnet, - max_decoder_steps, - ): - super().__init__() - self.r_init = r - self.r = r - self.in_channels = in_channels - self.max_decoder_steps = max_decoder_steps - self.use_memory_queue = memory_size > 0 - self.memory_size = memory_size if memory_size > 0 else r - self.frame_channels = frame_channels - self.separate_stopnet = separate_stopnet - self.query_dim = 256 - # memory -> |Prenet| -> processed_memory - prenet_dim = frame_channels * self.memory_size if self.use_memory_queue else frame_channels - self.prenet = Prenet(prenet_dim, prenet_type, prenet_dropout, out_features=[256, 128]) - # processed_inputs, processed_memory -> |Attention| -> Attention, attention, RNN_State - # attention_rnn generates queries for the attention mechanism - self.attention_rnn = nn.GRUCell(in_channels + 128, self.query_dim) - self.attention = init_attn( - attn_type=attn_type, - query_dim=self.query_dim, - embedding_dim=in_channels, - attention_dim=128, - location_attention=location_attn, - attention_location_n_filters=32, - attention_location_kernel_size=31, - windowing=attn_windowing, - norm=attn_norm, - forward_attn=forward_attn, - trans_agent=trans_agent, - forward_attn_mask=forward_attn_mask, - attn_K=attn_K, - ) - # (processed_memory | attention context) -> |Linear| -> decoder_RNN_input - self.project_to_decoder_in = nn.Linear(256 + in_channels, 256) - # decoder_RNN_input -> |RNN| -> RNN_state - self.decoder_rnns = nn.ModuleList([nn.GRUCell(256, 256) for _ in range(2)]) - # RNN_state -> |Linear| -> mel_spec - self.proj_to_mel = nn.Linear(256, frame_channels * self.r_init) - # learn init values instead of zero init. - self.stopnet = StopNet(256 + frame_channels * self.r_init) - - def set_r(self, new_r): - self.r = new_r - - def _reshape_memory(self, memory): - """ - Reshape the spectrograms for given 'r' - """ - # Grouping multiple frames if necessary - if memory.size(-1) == self.frame_channels: - memory = memory.view(memory.shape[0], memory.size(1) // self.r, -1) - # Time first (T_decoder, B, frame_channels) - memory = memory.transpose(0, 1) - return memory - - def _init_states(self, inputs): - """ - Initialization of decoder states - """ - B = inputs.size(0) - # go frame as zeros matrix - if self.use_memory_queue: - self.memory_input = torch.zeros(1, device=inputs.device).repeat(B, self.frame_channels * self.memory_size) - else: - self.memory_input = torch.zeros(1, device=inputs.device).repeat(B, self.frame_channels) - # decoder states - self.attention_rnn_hidden = torch.zeros(1, device=inputs.device).repeat(B, 256) - self.decoder_rnn_hiddens = [ - torch.zeros(1, device=inputs.device).repeat(B, 256) for idx in range(len(self.decoder_rnns)) - ] - self.context_vec = inputs.data.new(B, self.in_channels).zero_() - # cache attention inputs - self.processed_inputs = self.attention.preprocess_inputs(inputs) - - def _parse_outputs(self, outputs, attentions, stop_tokens): - # Back to batch first - attentions = torch.stack(attentions).transpose(0, 1) - stop_tokens = torch.stack(stop_tokens).transpose(0, 1) - outputs = torch.stack(outputs).transpose(0, 1).contiguous() - outputs = outputs.view(outputs.size(0), -1, self.frame_channels) - outputs = outputs.transpose(1, 2) - return outputs, attentions, stop_tokens - - def decode(self, inputs, mask=None): - # Prenet - processed_memory = self.prenet(self.memory_input) - # Attention RNN - self.attention_rnn_hidden = self.attention_rnn( - torch.cat((processed_memory, self.context_vec), -1), self.attention_rnn_hidden - ) - self.context_vec = self.attention(self.attention_rnn_hidden, inputs, self.processed_inputs, mask) - # Concat RNN output and attention context vector - decoder_input = self.project_to_decoder_in(torch.cat((self.attention_rnn_hidden, self.context_vec), -1)) - - # Pass through the decoder RNNs - for idx, decoder_rnn in enumerate(self.decoder_rnns): - self.decoder_rnn_hiddens[idx] = decoder_rnn(decoder_input, self.decoder_rnn_hiddens[idx]) - # Residual connection - decoder_input = self.decoder_rnn_hiddens[idx] + decoder_input - decoder_output = decoder_input - - # predict mel vectors from decoder vectors - output = self.proj_to_mel(decoder_output) - # output = torch.sigmoid(output) - # predict stop token - stopnet_input = torch.cat([decoder_output, output], -1) - if self.separate_stopnet: - stop_token = self.stopnet(stopnet_input.detach()) - else: - stop_token = self.stopnet(stopnet_input) - output = output[:, : self.r * self.frame_channels] - return output, stop_token, self.attention.attention_weights - - def _update_memory_input(self, new_memory): - if self.use_memory_queue: - if self.memory_size > self.r: - # memory queue size is larger than number of frames per decoder iter - self.memory_input = torch.cat( - [new_memory, self.memory_input[:, : (self.memory_size - self.r) * self.frame_channels].clone()], - dim=-1, - ) - else: - # memory queue size smaller than number of frames per decoder iter - self.memory_input = new_memory[:, : self.memory_size * self.frame_channels] - else: - # use only the last frame prediction - # assert new_memory.shape[-1] == self.r * self.frame_channels - self.memory_input = new_memory[:, self.frame_channels * (self.r - 1) :] - - def forward(self, inputs, memory, mask): - """ - Args: - inputs: Encoder outputs. - memory: Decoder memory (autoregression. If None (at eval-time), - decoder outputs are used as decoder inputs. If None, it uses the last - output as the input. - mask: Attention mask for sequence padding. - - Shapes: - - inputs: (B, T, D_out_enc) - - memory: (B, T_mel, D_mel) - """ - # Run greedy decoding if memory is None - memory = self._reshape_memory(memory) - outputs = [] - attentions = [] - stop_tokens = [] - t = 0 - self._init_states(inputs) - self.attention.init_states(inputs) - while len(outputs) < memory.size(0): - if t > 0: - new_memory = memory[t - 1] - self._update_memory_input(new_memory) - - output, stop_token, attention = self.decode(inputs, mask) - outputs += [output] - attentions += [attention] - stop_tokens += [stop_token.squeeze(1)] - t += 1 - return self._parse_outputs(outputs, attentions, stop_tokens) - - def inference(self, inputs): - """ - Args: - inputs: encoder outputs. - Shapes: - - inputs: batch x time x encoder_out_dim - """ - outputs = [] - attentions = [] - stop_tokens = [] - t = 0 - self._init_states(inputs) - self.attention.init_states(inputs) - while True: - if t > 0: - new_memory = outputs[-1] - self._update_memory_input(new_memory) - output, stop_token, attention = self.decode(inputs, None) - stop_token = torch.sigmoid(stop_token.data) - outputs += [output] - attentions += [attention] - stop_tokens += [stop_token] - t += 1 - if t > inputs.shape[1] / 4 and (stop_token > 0.6 or attention[:, -1].item() > 0.6): - break - if t > self.max_decoder_steps: - print(" | > Decoder stopped with 'max_decoder_steps") - break - return self._parse_outputs(outputs, attentions, stop_tokens) - - -class StopNet(nn.Module): - r"""Stopnet signalling decoder to stop inference. - Args: - in_features (int): feature dimension of input. - """ - - def __init__(self, in_features): - super().__init__() - self.dropout = nn.Dropout(0.1) - self.linear = nn.Linear(in_features, 1) - torch.nn.init.xavier_uniform_(self.linear.weight, gain=torch.nn.init.calculate_gain("linear")) - - def forward(self, inputs): - outputs = self.dropout(inputs) - outputs = self.linear(outputs) - return outputs diff --git a/TTS/TTS/tts/layers/tacotron/tacotron2.py b/TTS/TTS/tts/layers/tacotron/tacotron2.py deleted file mode 100644 index c79b70997249efc94cbac630bcc7d6c571f5743e..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tacotron/tacotron2.py +++ /dev/null @@ -1,414 +0,0 @@ -import torch -from torch import nn -from torch.nn import functional as F - -from .attentions import init_attn -from .common_layers import Linear, Prenet - - -# pylint: disable=no-value-for-parameter -# pylint: disable=unexpected-keyword-arg -class ConvBNBlock(nn.Module): - r"""Convolutions with Batch Normalization and non-linear activation. - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - kernel_size (int): convolution kernel size. - activation (str): 'relu', 'tanh', None (linear). - - Shapes: - - input: (B, C_in, T) - - output: (B, C_out, T) - """ - - def __init__(self, in_channels, out_channels, kernel_size, activation=None): - super().__init__() - assert (kernel_size - 1) % 2 == 0 - padding = (kernel_size - 1) // 2 - self.convolution1d = nn.Conv1d(in_channels, out_channels, kernel_size, padding=padding) - self.batch_normalization = nn.BatchNorm1d(out_channels, momentum=0.1, eps=1e-5) - self.dropout = nn.Dropout(p=0.5) - if activation == "relu": - self.activation = nn.ReLU() - elif activation == "tanh": - self.activation = nn.Tanh() - else: - self.activation = nn.Identity() - - def forward(self, x): - o = self.convolution1d(x) - o = self.batch_normalization(o) - o = self.activation(o) - o = self.dropout(o) - return o - - -class Postnet(nn.Module): - r"""Tacotron2 Postnet - - Args: - in_out_channels (int): number of output channels. - - Shapes: - - input: (B, C_in, T) - - output: (B, C_in, T) - """ - - def __init__(self, in_out_channels, num_convs=5): - super().__init__() - self.convolutions = nn.ModuleList() - self.convolutions.append(ConvBNBlock(in_out_channels, 512, kernel_size=5, activation="tanh")) - for _ in range(1, num_convs - 1): - self.convolutions.append(ConvBNBlock(512, 512, kernel_size=5, activation="tanh")) - self.convolutions.append(ConvBNBlock(512, in_out_channels, kernel_size=5, activation=None)) - - def forward(self, x): - o = x - for layer in self.convolutions: - o = layer(o) - return o - - -class Encoder(nn.Module): - r"""Tacotron2 Encoder - - Args: - in_out_channels (int): number of input and output channels. - - Shapes: - - input: (B, C_in, T) - - output: (B, C_in, T) - """ - - def __init__(self, in_out_channels=512): - super().__init__() - self.convolutions = nn.ModuleList() - for _ in range(3): - self.convolutions.append(ConvBNBlock(in_out_channels, in_out_channels, 5, "relu")) - self.lstm = nn.LSTM( - in_out_channels, int(in_out_channels / 2), num_layers=1, batch_first=True, bias=True, bidirectional=True - ) - self.rnn_state = None - - def forward(self, x, input_lengths): - o = x - for layer in self.convolutions: - o = layer(o) - o = o.transpose(1, 2) - o = nn.utils.rnn.pack_padded_sequence(o, input_lengths.cpu(), batch_first=True) - self.lstm.flatten_parameters() - o, _ = self.lstm(o) - o, _ = nn.utils.rnn.pad_packed_sequence(o, batch_first=True) - return o - - def inference(self, x): - o = x - for layer in self.convolutions: - o = layer(o) - o = o.transpose(1, 2) - # self.lstm.flatten_parameters() - o, _ = self.lstm(o) - return o - - -# adapted from https://github.com/NVIDIA/tacotron2/ -class Decoder(nn.Module): - """Tacotron2 decoder. We don't use Zoneout but Dropout between RNN layers. - - Args: - in_channels (int): number of input channels. - frame_channels (int): number of feature frame channels. - r (int): number of outputs per time step (reduction rate). - memory_size (int): size of the past window. if <= 0 memory_size = r - attn_type (string): type of attention used in decoder. - attn_win (bool): if true, define an attention window centered to maximum - attention response. It provides more robust attention alignment especially - at interence time. - attn_norm (string): attention normalization function. 'sigmoid' or 'softmax'. - prenet_type (string): 'original' or 'bn'. - prenet_dropout (float): prenet dropout rate. - forward_attn (bool): if true, use forward attention method. https://arxiv.org/abs/1807.06736 - trans_agent (bool): if true, use transition agent. https://arxiv.org/abs/1807.06736 - forward_attn_mask (bool): if true, mask attention values smaller than a threshold. - location_attn (bool): if true, use location sensitive attention. - attn_K (int): number of attention heads for GravesAttention. - separate_stopnet (bool): if true, detach stopnet input to prevent gradient flow. - max_decoder_steps (int): Maximum number of steps allowed for the decoder. Defaults to 10000. - """ - - # Pylint gets confused by PyTorch conventions here - # pylint: disable=attribute-defined-outside-init - def __init__( - self, - in_channels, - frame_channels, - r, - attn_type, - attn_win, - attn_norm, - prenet_type, - prenet_dropout, - forward_attn, - trans_agent, - forward_attn_mask, - location_attn, - attn_K, - separate_stopnet, - max_decoder_steps, - ): - super().__init__() - self.frame_channels = frame_channels - self.r_init = r - self.r = r - self.encoder_embedding_dim = in_channels - self.separate_stopnet = separate_stopnet - self.max_decoder_steps = max_decoder_steps - self.stop_threshold = 0.5 - - # model dimensions - self.query_dim = 1024 - self.decoder_rnn_dim = 1024 - self.prenet_dim = 256 - self.attn_dim = 128 - self.p_attention_dropout = 0.1 - self.p_decoder_dropout = 0.1 - - # memory -> |Prenet| -> processed_memory - prenet_dim = self.frame_channels - self.prenet = Prenet( - prenet_dim, prenet_type, prenet_dropout, out_features=[self.prenet_dim, self.prenet_dim], bias=False - ) - - self.attention_rnn = nn.LSTMCell(self.prenet_dim + in_channels, self.query_dim, bias=True) - - self.attention = init_attn( - attn_type=attn_type, - query_dim=self.query_dim, - embedding_dim=in_channels, - attention_dim=128, - location_attention=location_attn, - attention_location_n_filters=32, - attention_location_kernel_size=31, - windowing=attn_win, - norm=attn_norm, - forward_attn=forward_attn, - trans_agent=trans_agent, - forward_attn_mask=forward_attn_mask, - attn_K=attn_K, - ) - - self.decoder_rnn = nn.LSTMCell(self.query_dim + in_channels, self.decoder_rnn_dim, bias=True) - - self.linear_projection = Linear(self.decoder_rnn_dim + in_channels, self.frame_channels * self.r_init) - - self.stopnet = nn.Sequential( - nn.Dropout(0.1), - Linear(self.decoder_rnn_dim + self.frame_channels * self.r_init, 1, bias=True, init_gain="sigmoid"), - ) - self.memory_truncated = None - - def set_r(self, new_r): - self.r = new_r - - def get_go_frame(self, inputs): - B = inputs.size(0) - memory = torch.zeros(1, device=inputs.device).repeat(B, self.frame_channels * self.r) - return memory - - def _init_states(self, inputs, mask, keep_states=False): - B = inputs.size(0) - # T = inputs.size(1) - if not keep_states: - self.query = torch.zeros(1, device=inputs.device).repeat(B, self.query_dim) - self.attention_rnn_cell_state = torch.zeros(1, device=inputs.device).repeat(B, self.query_dim) - self.decoder_hidden = torch.zeros(1, device=inputs.device).repeat(B, self.decoder_rnn_dim) - self.decoder_cell = torch.zeros(1, device=inputs.device).repeat(B, self.decoder_rnn_dim) - self.context = torch.zeros(1, device=inputs.device).repeat(B, self.encoder_embedding_dim) - self.inputs = inputs - self.processed_inputs = self.attention.preprocess_inputs(inputs) - self.mask = mask - - def _reshape_memory(self, memory): - """ - Reshape the spectrograms for given 'r' - """ - # Grouping multiple frames if necessary - if memory.size(-1) == self.frame_channels: - memory = memory.view(memory.shape[0], memory.size(1) // self.r, -1) - # Time first (T_decoder, B, frame_channels) - memory = memory.transpose(0, 1) - return memory - - def _parse_outputs(self, outputs, stop_tokens, alignments): - alignments = torch.stack(alignments).transpose(0, 1) - stop_tokens = torch.stack(stop_tokens).transpose(0, 1) - outputs = torch.stack(outputs).transpose(0, 1).contiguous() - outputs = outputs.view(outputs.size(0), -1, self.frame_channels) - outputs = outputs.transpose(1, 2) - return outputs, stop_tokens, alignments - - def _update_memory(self, memory): - if len(memory.shape) == 2: - return memory[:, self.frame_channels * (self.r - 1) :] - return memory[:, :, self.frame_channels * (self.r - 1) :] - - def decode(self, memory): - """ - shapes: - - memory: B x r * self.frame_channels - """ - # self.context: B x D_en - # query_input: B x D_en + (r * self.frame_channels) - query_input = torch.cat((memory, self.context), -1) - # self.query and self.attention_rnn_cell_state : B x D_attn_rnn - self.query, self.attention_rnn_cell_state = self.attention_rnn( - query_input, (self.query, self.attention_rnn_cell_state) - ) - self.query = F.dropout(self.query, self.p_attention_dropout, self.training) - self.attention_rnn_cell_state = F.dropout( - self.attention_rnn_cell_state, self.p_attention_dropout, self.training - ) - # B x D_en - self.context = self.attention(self.query, self.inputs, self.processed_inputs, self.mask) - # B x (D_en + D_attn_rnn) - decoder_rnn_input = torch.cat((self.query, self.context), -1) - # self.decoder_hidden and self.decoder_cell: B x D_decoder_rnn - self.decoder_hidden, self.decoder_cell = self.decoder_rnn( - decoder_rnn_input, (self.decoder_hidden, self.decoder_cell) - ) - self.decoder_hidden = F.dropout(self.decoder_hidden, self.p_decoder_dropout, self.training) - # B x (D_decoder_rnn + D_en) - decoder_hidden_context = torch.cat((self.decoder_hidden, self.context), dim=1) - # B x (self.r * self.frame_channels) - decoder_output = self.linear_projection(decoder_hidden_context) - # B x (D_decoder_rnn + (self.r * self.frame_channels)) - stopnet_input = torch.cat((self.decoder_hidden, decoder_output), dim=1) - if self.separate_stopnet: - stop_token = self.stopnet(stopnet_input.detach()) - else: - stop_token = self.stopnet(stopnet_input) - # select outputs for the reduction rate self.r - decoder_output = decoder_output[:, : self.r * self.frame_channels] - return decoder_output, self.attention.attention_weights, stop_token - - def forward(self, inputs, memories, mask): - r"""Train Decoder with teacher forcing. - Args: - inputs: Encoder outputs. - memories: Feature frames for teacher-forcing. - mask: Attention mask for sequence padding. - - Shapes: - - inputs: (B, T, D_out_enc) - - memory: (B, T_mel, D_mel) - - outputs: (B, T_mel, D_mel) - - alignments: (B, T_in, T_out) - - stop_tokens: (B, T_out) - """ - memory = self.get_go_frame(inputs).unsqueeze(0) - memories = self._reshape_memory(memories) - memories = torch.cat((memory, memories), dim=0) - memories = self._update_memory(memories) - memories = self.prenet(memories) - - self._init_states(inputs, mask=mask) - self.attention.init_states(inputs) - - outputs, stop_tokens, alignments = [], [], [] - while len(outputs) < memories.size(0) - 1: - memory = memories[len(outputs)] - decoder_output, attention_weights, stop_token = self.decode(memory) - outputs += [decoder_output.squeeze(1)] - stop_tokens += [stop_token.squeeze(1)] - alignments += [attention_weights] - - outputs, stop_tokens, alignments = self._parse_outputs(outputs, stop_tokens, alignments) - return outputs, alignments, stop_tokens - - def inference(self, inputs): - r"""Decoder inference without teacher forcing and use - Stopnet to stop decoder. - Args: - inputs: Encoder outputs. - - Shapes: - - inputs: (B, T, D_out_enc) - - outputs: (B, T_mel, D_mel) - - alignments: (B, T_in, T_out) - - stop_tokens: (B, T_out) - """ - memory = self.get_go_frame(inputs) - memory = self._update_memory(memory) - - self._init_states(inputs, mask=None) - self.attention.init_states(inputs) - - outputs, stop_tokens, alignments, t = [], [], [], 0 - while True: - memory = self.prenet(memory) - decoder_output, alignment, stop_token = self.decode(memory) - stop_token = torch.sigmoid(stop_token.data) - outputs += [decoder_output.squeeze(1)] - stop_tokens += [stop_token] - alignments += [alignment] - - if stop_token > self.stop_threshold and t > inputs.shape[0] // 2: - break - if len(outputs) == self.max_decoder_steps: - print(f" > Decoder stopped with `max_decoder_steps` {self.max_decoder_steps}") - break - - memory = self._update_memory(decoder_output) - t += 1 - - outputs, stop_tokens, alignments = self._parse_outputs(outputs, stop_tokens, alignments) - - return outputs, alignments, stop_tokens - - def inference_truncated(self, inputs): - """ - Preserve decoder states for continuous inference - """ - if self.memory_truncated is None: - self.memory_truncated = self.get_go_frame(inputs) - self._init_states(inputs, mask=None, keep_states=False) - else: - self._init_states(inputs, mask=None, keep_states=True) - - self.attention.init_states(inputs) - outputs, stop_tokens, alignments, t = [], [], [], 0 - while True: - memory = self.prenet(self.memory_truncated) - decoder_output, alignment, stop_token = self.decode(memory) - stop_token = torch.sigmoid(stop_token.data) - outputs += [decoder_output.squeeze(1)] - stop_tokens += [stop_token] - alignments += [alignment] - - if stop_token > 0.7: - break - if len(outputs) == self.max_decoder_steps: - print(" | > Decoder stopped with 'max_decoder_steps") - break - - self.memory_truncated = decoder_output - t += 1 - - outputs, stop_tokens, alignments = self._parse_outputs(outputs, stop_tokens, alignments) - - return outputs, alignments, stop_tokens - - def inference_step(self, inputs, t, memory=None): - """ - For debug purposes - """ - if t == 0: - memory = self.get_go_frame(inputs) - self._init_states(inputs, mask=None) - - memory = self.prenet(memory) - decoder_output, stop_token, alignment = self.decode(memory) - stop_token = torch.sigmoid(stop_token.data) - memory = decoder_output - return decoder_output, stop_token, alignment diff --git a/TTS/TTS/tts/layers/tortoise/arch_utils.py b/TTS/TTS/tts/layers/tortoise/arch_utils.py deleted file mode 100644 index dad1814369599f0bc637a92624a73dfab99dc1a1..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/arch_utils.py +++ /dev/null @@ -1,433 +0,0 @@ -import functools -import math -import os - -import fsspec -import torch -import torch.nn as nn -import torch.nn.functional as F -import torchaudio -from transformers import LogitsWarper - -from TTS.tts.layers.tortoise.xtransformers import ContinuousTransformerWrapper, RelativePositionBias - - -def zero_module(module): - """ - Zero out the parameters of a module and return it. - """ - for p in module.parameters(): - p.detach().zero_() - return module - - -class GroupNorm32(nn.GroupNorm): - def forward(self, x): - return super().forward(x.float()).type(x.dtype) - - -def normalization(channels): - """ - Make a standard normalization layer. - - :param channels: number of input channels. - :return: an nn.Module for normalization. - """ - groups = 32 - if channels <= 16: - groups = 8 - elif channels <= 64: - groups = 16 - while channels % groups != 0: - groups = int(groups / 2) - assert groups > 2 - return GroupNorm32(groups, channels) - - -class QKVAttentionLegacy(nn.Module): - """ - A module which performs QKV attention. Matches legacy QKVAttention + input/output heads shaping - """ - - def __init__(self, n_heads): - super().__init__() - self.n_heads = n_heads - - def forward(self, qkv, mask=None, rel_pos=None): - """ - Apply QKV attention. - - :param qkv: an [N x (H * 3 * C) x T] tensor of Qs, Ks, and Vs. - :return: an [N x (H * C) x T] tensor after attention. - """ - bs, width, length = qkv.shape - assert width % (3 * self.n_heads) == 0 - ch = width // (3 * self.n_heads) - q, k, v = qkv.reshape(bs * self.n_heads, ch * 3, length).split(ch, dim=1) - scale = 1 / math.sqrt(math.sqrt(ch)) - weight = torch.einsum("bct,bcs->bts", q * scale, k * scale) # More stable with f16 than dividing afterwards - if rel_pos is not None: - weight = rel_pos(weight.reshape(bs, self.n_heads, weight.shape[-2], weight.shape[-1])).reshape( - bs * self.n_heads, weight.shape[-2], weight.shape[-1] - ) - weight = torch.softmax(weight.float(), dim=-1).type(weight.dtype) - if mask is not None: - # The proper way to do this is to mask before the softmax using -inf, but that doesn't work properly on CPUs. - mask = mask.repeat(self.n_heads, 1).unsqueeze(1) - weight = weight * mask - a = torch.einsum("bts,bcs->bct", weight, v) - - return a.reshape(bs, -1, length) - - -class AttentionBlock(nn.Module): - """ - An attention block that allows spatial positions to attend to each other. - - Originally ported from here, but adapted to the N-d case. - https://github.com/hojonathanho/diffusion/blob/1e0dceb3b3495bbe19116a5e1b3596cd0706c543/diffusion_tf/models/unet.py#L66. - """ - - def __init__( - self, - channels, - num_heads=1, - num_head_channels=-1, - do_checkpoint=True, - relative_pos_embeddings=False, - ): - super().__init__() - self.channels = channels - self.do_checkpoint = do_checkpoint - if num_head_channels == -1: - self.num_heads = num_heads - else: - assert ( - channels % num_head_channels == 0 - ), f"q,k,v channels {channels} is not divisible by num_head_channels {num_head_channels}" - self.num_heads = channels // num_head_channels - self.norm = normalization(channels) - self.qkv = nn.Conv1d(channels, channels * 3, 1) - # split heads before split qkv - self.attention = QKVAttentionLegacy(self.num_heads) - - self.proj_out = zero_module(nn.Conv1d(channels, channels, 1)) - if relative_pos_embeddings: - self.relative_pos_embeddings = RelativePositionBias( - scale=(channels // self.num_heads) ** 0.5, - causal=False, - heads=num_heads, - num_buckets=32, - max_distance=64, - ) - else: - self.relative_pos_embeddings = None - - def forward(self, x, mask=None): - b, c, *spatial = x.shape - x = x.reshape(b, c, -1) - qkv = self.qkv(self.norm(x)) - h = self.attention(qkv, mask, self.relative_pos_embeddings) - h = self.proj_out(h) - return (x + h).reshape(b, c, *spatial) - - -class Upsample(nn.Module): - """ - An upsampling layer with an optional convolution. - - :param channels: channels in the inputs and outputs. - :param use_conv: a bool determining if a convolution is applied. - """ - - def __init__(self, channels, use_conv, out_channels=None, factor=4): - super().__init__() - self.channels = channels - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.factor = factor - if use_conv: - ksize = 5 - pad = 2 - self.conv = nn.Conv1d(self.channels, self.out_channels, ksize, padding=pad) - - def forward(self, x): - assert x.shape[1] == self.channels - x = F.interpolate(x, scale_factor=self.factor, mode="nearest") - if self.use_conv: - x = self.conv(x) - return x - - -class Downsample(nn.Module): - """ - A downsampling layer with an optional convolution. - - :param channels: channels in the inputs and outputs. - :param use_conv: a bool determining if a convolution is applied. - """ - - def __init__(self, channels, use_conv, out_channels=None, factor=4, ksize=5, pad=2): - super().__init__() - self.channels = channels - self.out_channels = out_channels or channels - self.use_conv = use_conv - - stride = factor - if use_conv: - self.op = nn.Conv1d(self.channels, self.out_channels, ksize, stride=stride, padding=pad) - else: - assert self.channels == self.out_channels - self.op = nn.AvgPool1d(kernel_size=stride, stride=stride) - - def forward(self, x): - assert x.shape[1] == self.channels - return self.op(x) - - -class ResBlock(nn.Module): - def __init__( - self, - channels, - dropout, - out_channels=None, - use_conv=False, - use_scale_shift_norm=False, - up=False, - down=False, - kernel_size=3, - ): - super().__init__() - self.channels = channels - self.dropout = dropout - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.use_scale_shift_norm = use_scale_shift_norm - padding = 1 if kernel_size == 3 else 2 - - self.in_layers = nn.Sequential( - normalization(channels), - nn.SiLU(), - nn.Conv1d(channels, self.out_channels, kernel_size, padding=padding), - ) - - self.updown = up or down - - if up: - self.h_upd = Upsample(channels, False) - self.x_upd = Upsample(channels, False) - elif down: - self.h_upd = Downsample(channels, False) - self.x_upd = Downsample(channels, False) - else: - self.h_upd = self.x_upd = nn.Identity() - - self.out_layers = nn.Sequential( - normalization(self.out_channels), - nn.SiLU(), - nn.Dropout(p=dropout), - zero_module(nn.Conv1d(self.out_channels, self.out_channels, kernel_size, padding=padding)), - ) - - if self.out_channels == channels: - self.skip_connection = nn.Identity() - elif use_conv: - self.skip_connection = nn.Conv1d(channels, self.out_channels, kernel_size, padding=padding) - else: - self.skip_connection = nn.Conv1d(channels, self.out_channels, 1) - - def forward(self, x): - if self.updown: - in_rest, in_conv = self.in_layers[:-1], self.in_layers[-1] - h = in_rest(x) - h = self.h_upd(h) - x = self.x_upd(x) - h = in_conv(h) - else: - h = self.in_layers(x) - h = self.out_layers(h) - return self.skip_connection(x) + h - - -class AudioMiniEncoder(nn.Module): - def __init__( - self, - spec_dim, - embedding_dim, - base_channels=128, - depth=2, - resnet_blocks=2, - attn_blocks=4, - num_attn_heads=4, - dropout=0, - downsample_factor=2, - kernel_size=3, - ): - super().__init__() - self.init = nn.Sequential(nn.Conv1d(spec_dim, base_channels, 3, padding=1)) - ch = base_channels - res = [] - for l in range(depth): - for r in range(resnet_blocks): - res.append(ResBlock(ch, dropout, kernel_size=kernel_size)) - res.append(Downsample(ch, use_conv=True, out_channels=ch * 2, factor=downsample_factor)) - ch *= 2 - self.res = nn.Sequential(*res) - self.final = nn.Sequential(normalization(ch), nn.SiLU(), nn.Conv1d(ch, embedding_dim, 1)) - attn = [] - for a in range(attn_blocks): - attn.append( - AttentionBlock( - embedding_dim, - num_attn_heads, - ) - ) - self.attn = nn.Sequential(*attn) - self.dim = embedding_dim - - def forward(self, x): - h = self.init(x) - h = self.res(h) - h = self.final(h) - h = self.attn(h) - return h[:, :, 0] - - -DEFAULT_MEL_NORM_FILE = "https://coqui.gateway.scarf.sh/v0.14.1_models/mel_norms.pth" - - -class TorchMelSpectrogram(nn.Module): - def __init__( - self, - filter_length=1024, - hop_length=256, - win_length=1024, - n_mel_channels=80, - mel_fmin=0, - mel_fmax=8000, - sampling_rate=22050, - normalize=False, - mel_norm_file=DEFAULT_MEL_NORM_FILE, - ): - super().__init__() - # These are the default tacotron values for the MEL spectrogram. - self.filter_length = filter_length - self.hop_length = hop_length - self.win_length = win_length - self.n_mel_channels = n_mel_channels - self.mel_fmin = mel_fmin - self.mel_fmax = mel_fmax - self.sampling_rate = sampling_rate - self.mel_stft = torchaudio.transforms.MelSpectrogram( - n_fft=self.filter_length, - hop_length=self.hop_length, - win_length=self.win_length, - power=2, - normalized=normalize, - sample_rate=self.sampling_rate, - f_min=self.mel_fmin, - f_max=self.mel_fmax, - n_mels=self.n_mel_channels, - norm="slaney", - ) - self.mel_norm_file = mel_norm_file - if self.mel_norm_file is not None: - with fsspec.open(self.mel_norm_file) as f: - self.mel_norms = torch.load(f) - else: - self.mel_norms = None - - def forward(self, inp): - if ( - len(inp.shape) == 3 - ): # Automatically squeeze out the channels dimension if it is present (assuming mono-audio) - inp = inp.squeeze(1) - assert len(inp.shape) == 2 - self.mel_stft = self.mel_stft.to(inp.device) - mel = self.mel_stft(inp) - # Perform dynamic range compression - mel = torch.log(torch.clamp(mel, min=1e-5)) - if self.mel_norms is not None: - self.mel_norms = self.mel_norms.to(mel.device) - mel = mel / self.mel_norms.unsqueeze(0).unsqueeze(-1) - return mel - - -class CheckpointedLayer(nn.Module): - """ - Wraps a module. When forward() is called, passes kwargs that require_grad through torch.checkpoint() and bypasses - checkpoint for all other args. - """ - - def __init__(self, wrap): - super().__init__() - self.wrap = wrap - - def forward(self, x, *args, **kwargs): - for k, v in kwargs.items(): - assert not (isinstance(v, torch.Tensor) and v.requires_grad) # This would screw up checkpointing. - partial = functools.partial(self.wrap, **kwargs) - return partial(x, *args) - - -class CheckpointedXTransformerEncoder(nn.Module): - """ - Wraps a ContinuousTransformerWrapper and applies CheckpointedLayer to each layer and permutes from channels-mid - to channels-last that XTransformer expects. - """ - - def __init__(self, needs_permute=True, exit_permute=True, checkpoint=True, **xtransformer_kwargs): - super().__init__() - self.transformer = ContinuousTransformerWrapper(**xtransformer_kwargs) - self.needs_permute = needs_permute - self.exit_permute = exit_permute - - if not checkpoint: - return - for i in range(len(self.transformer.attn_layers.layers)): - n, b, r = self.transformer.attn_layers.layers[i] - self.transformer.attn_layers.layers[i] = nn.ModuleList([n, CheckpointedLayer(b), r]) - - def forward(self, x, **kwargs): - if self.needs_permute: - x = x.permute(0, 2, 1) - h = self.transformer(x, **kwargs) - if self.exit_permute: - h = h.permute(0, 2, 1) - return h - - -class TypicalLogitsWarper(LogitsWarper): - def __init__( - self, - mass: float = 0.9, - filter_value: float = -float("Inf"), - min_tokens_to_keep: int = 1, - ): - self.filter_value = filter_value - self.mass = mass - self.min_tokens_to_keep = min_tokens_to_keep - - def __call__(self, input_ids: torch.LongTensor, scores: torch.FloatTensor) -> torch.FloatTensor: - # calculate entropy - normalized = torch.nn.functional.log_softmax(scores, dim=-1) - p = torch.exp(normalized) - ent = -(normalized * p).nansum(-1, keepdim=True) - - # shift and sort - shifted_scores = torch.abs((-normalized) - ent) - sorted_scores, sorted_indices = torch.sort(shifted_scores, descending=False) - sorted_logits = scores.gather(-1, sorted_indices) - cumulative_probs = sorted_logits.softmax(dim=-1).cumsum(dim=-1) - - # Remove tokens with cumulative mass above the threshold - last_ind = (cumulative_probs < self.mass).sum(dim=1) - last_ind[last_ind < 0] = 0 - sorted_indices_to_remove = sorted_scores > sorted_scores.gather(1, last_ind.view(-1, 1)) - if self.min_tokens_to_keep > 1: - # Keep at least min_tokens_to_keep (set to min_tokens_to_keep-1 because we add the first one below) - sorted_indices_to_remove[..., : self.min_tokens_to_keep] = 0 - indices_to_remove = sorted_indices_to_remove.scatter(1, sorted_indices, sorted_indices_to_remove) - - scores = scores.masked_fill(indices_to_remove, self.filter_value) - return scores diff --git a/TTS/TTS/tts/layers/tortoise/audio_utils.py b/TTS/TTS/tts/layers/tortoise/audio_utils.py deleted file mode 100644 index 70711ed7a485ecd4a8c8eb8ab6c338aa79871de7..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/audio_utils.py +++ /dev/null @@ -1,177 +0,0 @@ -import os -from glob import glob -from typing import Dict, List - -import librosa -import numpy as np -import torch -import torchaudio -from scipy.io.wavfile import read - -from TTS.utils.audio.torch_transforms import TorchSTFT - - -def load_wav_to_torch(full_path): - sampling_rate, data = read(full_path) - if data.dtype == np.int32: - norm_fix = 2**31 - elif data.dtype == np.int16: - norm_fix = 2**15 - elif data.dtype == np.float16 or data.dtype == np.float32: - norm_fix = 1.0 - else: - raise NotImplementedError(f"Provided data dtype not supported: {data.dtype}") - return (torch.FloatTensor(data.astype(np.float32)) / norm_fix, sampling_rate) - - -def check_audio(audio, audiopath: str): - # Check some assumptions about audio range. This should be automatically fixed in load_wav_to_torch, but might not be in some edge cases, where we should squawk. - # '2' is arbitrarily chosen since it seems like audio will often "overdrive" the [-1,1] bounds. - if torch.any(audio > 2) or not torch.any(audio < 0): - print(f"Error with {audiopath}. Max={audio.max()} min={audio.min()}") - audio.clip_(-1, 1) - - -def read_audio_file(audiopath: str): - if audiopath[-4:] == ".wav": - audio, lsr = load_wav_to_torch(audiopath) - elif audiopath[-4:] == ".mp3": - audio, lsr = librosa.load(audiopath, sr=None) - audio = torch.FloatTensor(audio) - else: - assert False, f"Unsupported audio format provided: {audiopath[-4:]}" - - # Remove any channel data. - if len(audio.shape) > 1: - if audio.shape[0] < 5: - audio = audio[0] - else: - assert audio.shape[1] < 5 - audio = audio[:, 0] - - return audio, lsr - - -def load_required_audio(audiopath: str): - audio, lsr = read_audio_file(audiopath) - - audios = [torchaudio.functional.resample(audio, lsr, sampling_rate) for sampling_rate in (22050, 24000)] - for audio in audios: - check_audio(audio, audiopath) - - return [audio.unsqueeze(0) for audio in audios] - - -def load_audio(audiopath, sampling_rate): - audio, lsr = read_audio_file(audiopath) - - if lsr != sampling_rate: - audio = torchaudio.functional.resample(audio, lsr, sampling_rate) - check_audio(audio, audiopath) - - return audio.unsqueeze(0) - - -TACOTRON_MEL_MAX = 2.3143386840820312 -TACOTRON_MEL_MIN = -11.512925148010254 - - -def denormalize_tacotron_mel(norm_mel): - return ((norm_mel + 1) / 2) * (TACOTRON_MEL_MAX - TACOTRON_MEL_MIN) + TACOTRON_MEL_MIN - - -def normalize_tacotron_mel(mel): - return 2 * ((mel - TACOTRON_MEL_MIN) / (TACOTRON_MEL_MAX - TACOTRON_MEL_MIN)) - 1 - - -def dynamic_range_compression(x, C=1, clip_val=1e-5): - """ - PARAMS - ------ - C: compression factor - """ - return torch.log(torch.clamp(x, min=clip_val) * C) - - -def dynamic_range_decompression(x, C=1): - """ - PARAMS - ------ - C: compression factor used to compress - """ - return torch.exp(x) / C - - -def get_voices(extra_voice_dirs: List[str] = []): - dirs = extra_voice_dirs - voices: Dict[str, List[str]] = {} - for d in dirs: - subs = os.listdir(d) - for sub in subs: - subj = os.path.join(d, sub) - if os.path.isdir(subj): - voices[sub] = list(glob(f"{subj}/*.wav")) + list(glob(f"{subj}/*.mp3")) + list(glob(f"{subj}/*.pth")) - return voices - - -def load_voice(voice: str, extra_voice_dirs: List[str] = []): - if voice == "random": - return None, None - - voices = get_voices(extra_voice_dirs) - paths = voices[voice] - if len(paths) == 1 and paths[0].endswith(".pth"): - return None, torch.load(paths[0]) - else: - conds = [] - for cond_path in paths: - c = load_required_audio(cond_path) - conds.append(c) - return conds, None - - -def load_voices(voices: List[str], extra_voice_dirs: List[str] = []): - latents = [] - clips = [] - for voice in voices: - if voice == "random": - if len(voices) > 1: - print("Cannot combine a random voice with a non-random voice. Just using a random voice.") - return None, None - clip, latent = load_voice(voice, extra_voice_dirs) - if latent is None: - assert ( - len(latents) == 0 - ), "Can only combine raw audio voices or latent voices, not both. Do it yourself if you want this." - clips.extend(clip) - elif clip is None: - assert ( - len(clips) == 0 - ), "Can only combine raw audio voices or latent voices, not both. Do it yourself if you want this." - latents.append(latent) - if len(latents) == 0: - return clips, None - else: - latents_0 = torch.stack([l[0] for l in latents], dim=0).mean(dim=0) - latents_1 = torch.stack([l[1] for l in latents], dim=0).mean(dim=0) - latents = (latents_0, latents_1) - return None, latents - - -def wav_to_univnet_mel(wav, do_normalization=False, device="cuda"): - stft = TorchSTFT( - n_fft=1024, - hop_length=256, - win_length=1024, - use_mel=True, - n_mels=100, - sample_rate=24000, - mel_fmin=0, - mel_fmax=12000, - ) - stft = stft.to(device) - mel = stft(wav) - mel = dynamic_range_compression(mel) - if do_normalization: - mel = normalize_tacotron_mel(mel) - return mel diff --git a/TTS/TTS/tts/layers/tortoise/autoregressive.py b/TTS/TTS/tts/layers/tortoise/autoregressive.py deleted file mode 100644 index 14d881bc1029ef577f24ae28f9414e431661142a..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/autoregressive.py +++ /dev/null @@ -1,631 +0,0 @@ -# AGPL: a notification must be added stating that changes have been made to that file. -import functools - -import torch -import torch.nn as nn -import torch.nn.functional as F -from transformers import GPT2Config, GPT2PreTrainedModel, LogitsProcessorList -from transformers.modeling_outputs import CausalLMOutputWithCrossAttentions - -from TTS.tts.layers.tortoise.arch_utils import AttentionBlock, TypicalLogitsWarper - - -def null_position_embeddings(range, dim): - return torch.zeros((range.shape[0], range.shape[1], dim), device=range.device) - - -def _p(t): - return t and (len(t), len(t[0]), t[0][0].shape) # kv_cache debug - - -class ResBlock(nn.Module): - """ - Basic residual convolutional block that uses GroupNorm. - """ - - def __init__(self, chan): - super().__init__() - self.net = nn.Sequential( - nn.Conv1d(chan, chan, kernel_size=3, padding=1), - nn.GroupNorm(chan // 8, chan), - nn.ReLU(), - nn.Conv1d(chan, chan, kernel_size=3, padding=1), - nn.GroupNorm(chan // 8, chan), - ) - - def forward(self, x): - return F.relu(self.net(x) + x) - - -class GPT2InferenceModel(GPT2PreTrainedModel): - def __init__(self, config, gpt, text_pos_emb, embeddings, norm, linear, kv_cache): - super().__init__(config) - self.transformer = gpt - self.text_pos_embedding = text_pos_emb - self.embeddings = embeddings - self.lm_head = nn.Sequential(norm, linear) - self.kv_cache = kv_cache - - def store_mel_emb(self, mel_emb): - self.cached_mel_emb = mel_emb - - def prepare_inputs_for_generation(self, input_ids, past_key_values=None, **kwargs): - token_type_ids = kwargs.get("token_type_ids", None) # usually None - if not self.kv_cache: - past_key_values = None - # only last token for inputs_ids if past is defined in kwargs - if past_key_values: - input_ids = input_ids[:, -1].unsqueeze(-1) - if token_type_ids is not None: - token_type_ids = token_type_ids[:, -1].unsqueeze(-1) - - attention_mask = kwargs.get("attention_mask", None) - position_ids = kwargs.get("position_ids", None) - - if attention_mask is not None and position_ids is None: - # create position_ids on the fly for batch generation - position_ids = attention_mask.long().cumsum(-1) - 1 - position_ids.masked_fill_(attention_mask == 0, 1) - if past_key_values: - position_ids = position_ids[:, -1].unsqueeze(-1) - else: - position_ids = None - return { - "input_ids": input_ids, - "past_key_values": past_key_values, - "use_cache": kwargs.get("use_cache"), - "position_ids": position_ids, - "attention_mask": attention_mask, - "token_type_ids": token_type_ids, - } - - def forward( - self, - input_ids=None, - past_key_values=None, - attention_mask=None, - token_type_ids=None, - position_ids=None, - head_mask=None, - inputs_embeds=None, - encoder_hidden_states=None, - encoder_attention_mask=None, - labels=None, - use_cache=None, - output_attentions=None, - output_hidden_states=None, - return_dict=None, - ): - assert self.cached_mel_emb is not None - assert inputs_embeds is None # Not supported by this inference model. - assert labels is None # Training not supported by this inference model. - return_dict = return_dict if return_dict is not None else self.config.use_return_dict - - # Create embedding - mel_len = self.cached_mel_emb.shape[1] - if input_ids.shape[1] != 1: - text_inputs = input_ids[:, mel_len:] - text_emb = self.embeddings(text_inputs) - text_emb = text_emb + self.text_pos_embedding(text_emb) - if self.cached_mel_emb.shape[0] != text_emb.shape[0]: - mel_emb = self.cached_mel_emb.repeat_interleave(text_emb.shape[0] // self.cached_mel_emb.shape[0], 0) - else: # this outcome only occurs once per loop in most cases - mel_emb = self.cached_mel_emb - emb = torch.cat([mel_emb, text_emb], dim=1) - else: - emb = self.embeddings(input_ids) - emb = emb + self.text_pos_embedding.get_fixed_embedding( - attention_mask.shape[1] - mel_len, attention_mask.device - ) - - transformer_outputs = self.transformer( - inputs_embeds=emb, - past_key_values=past_key_values, - attention_mask=attention_mask, - token_type_ids=token_type_ids, - position_ids=position_ids, - head_mask=head_mask, - encoder_hidden_states=encoder_hidden_states, - encoder_attention_mask=encoder_attention_mask, - use_cache=use_cache, - output_attentions=output_attentions, - output_hidden_states=output_hidden_states, - return_dict=return_dict, - ) - hidden_states = transformer_outputs[0] - lm_logits = self.lm_head(hidden_states) - - if not return_dict: - return (lm_logits,) + transformer_outputs[1:] - - return CausalLMOutputWithCrossAttentions( - loss=None, - logits=lm_logits, - past_key_values=transformer_outputs.past_key_values, - hidden_states=transformer_outputs.hidden_states, - attentions=transformer_outputs.attentions, - cross_attentions=transformer_outputs.cross_attentions, - ) - - @staticmethod - def _reorder_cache(past, beam_idx): - """ - This function is used to re-order the :obj:`past_key_values` cache if - :meth:`~transformers.PreTrainedModel.beam_search` or :meth:`~transformers.PreTrainedModel.beam_sample` is - called. This is required to match :obj:`past_key_values` with the correct beam_idx at every generation step. - """ - return tuple( - tuple(past_state.index_select(0, beam_idx.to(past_state.device)) for past_state in layer_past) - for layer_past in past - ) - - -class ConditioningEncoder(nn.Module): - def __init__( - self, - spec_dim, - embedding_dim, - attn_blocks=6, - num_attn_heads=4, - do_checkpointing=False, - mean=False, - ): - super().__init__() - attn = [] - self.init = nn.Conv1d(spec_dim, embedding_dim, kernel_size=1) - for a in range(attn_blocks): - attn.append(AttentionBlock(embedding_dim, num_attn_heads)) - self.attn = nn.Sequential(*attn) - self.dim = embedding_dim - self.do_checkpointing = do_checkpointing - self.mean = mean - - def forward(self, x): - h = self.init(x) - h = self.attn(h) - if self.mean: - return h.mean(dim=2) - else: - return h[:, :, 0] - - -class LearnedPositionEmbeddings(nn.Module): - def __init__(self, seq_len, model_dim, init=0.02): - super().__init__() - self.emb = nn.Embedding(seq_len, model_dim) - # Initializing this way is standard for GPT-2 - self.emb.weight.data.normal_(mean=0.0, std=init) - - def forward(self, x): - sl = x.shape[1] - return self.emb(torch.arange(0, sl, device=x.device)) - - def get_fixed_embedding(self, ind, dev): - return self.emb(torch.arange(0, ind, device=dev))[ind - 1 : ind] - - -def build_hf_gpt_transformer(layers, model_dim, heads, max_mel_seq_len, max_text_seq_len, checkpointing): - """ - GPT-2 implemented by the HuggingFace library. - """ - from transformers import GPT2Config, GPT2Model - - gpt_config = GPT2Config( - vocab_size=256, # Unused. - n_positions=max_mel_seq_len + max_text_seq_len, - n_ctx=max_mel_seq_len + max_text_seq_len, - n_embd=model_dim, - n_layer=layers, - n_head=heads, - gradient_checkpointing=checkpointing, - use_cache=not checkpointing, - ) - gpt = GPT2Model(gpt_config) - # Override the built in positional embeddings - del gpt.wpe # TODO: figure out relevance in fixing exported model definition: Embedding(1012, 1024) - gpt.wpe = functools.partial(null_position_embeddings, dim=model_dim) - # Built-in token embeddings are unused. - del gpt.wte - return ( - gpt, - LearnedPositionEmbeddings(max_mel_seq_len, model_dim), - LearnedPositionEmbeddings(max_text_seq_len, model_dim), - None, - None, - ) - - -class MelEncoder(nn.Module): - def __init__(self, channels, mel_channels=80, resblocks_per_reduction=2): - super().__init__() - self.channels = channels - self.encoder = nn.Sequential( - nn.Conv1d(mel_channels, channels // 4, kernel_size=3, padding=1), - nn.Sequential(*[ResBlock(channels // 4) for _ in range(resblocks_per_reduction)]), - nn.Conv1d(channels // 4, channels // 2, kernel_size=3, stride=2, padding=1), - nn.GroupNorm(channels // 16, channels // 2), - nn.ReLU(), - nn.Sequential(*[ResBlock(channels // 2) for _ in range(resblocks_per_reduction)]), - nn.Conv1d(channels // 2, channels, kernel_size=3, stride=2, padding=1), - nn.GroupNorm(channels // 8, channels), - nn.ReLU(), - nn.Sequential(*[ResBlock(channels) for _ in range(resblocks_per_reduction)]), - ) - self.reduction = 4 - - def forward(self, x): - for e in self.encoder: - x = e(x) - return x.permute(0, 2, 1) - - -class UnifiedVoice(nn.Module): - def __init__( - self, - layers=8, - model_dim=512, - heads=8, - max_text_tokens=120, - max_mel_tokens=250, - max_conditioning_inputs=1, - mel_length_compression=1024, - number_text_tokens=256, - start_text_token=None, - number_mel_codes=8194, - start_mel_token=8192, - stop_mel_token=8193, - train_solo_embeddings=False, - use_mel_codes_as_input=True, - checkpointing=True, - types=1, - ): - """ - Args: - layers: Number of layers in transformer stack. - model_dim: Operating dimensions of the transformer - heads: Number of transformer heads. Must be divisible by model_dim. Recommend model_dim//64 - max_text_tokens: Maximum number of text tokens that will be encountered by model. - max_mel_tokens: Maximum number of MEL tokens that will be encountered by model. - max_conditioning_inputs: Maximum number of conditioning inputs provided to the model. If (1), conditioning input can be of format (b,80,s), otherwise (b,n,80,s). - mel_length_compression: The factor between and . Used to compute MEL code padding given wav input length. - number_text_tokens: - start_text_token: - stop_text_token: - number_mel_codes: - start_mel_token: - stop_mel_token: - train_solo_embeddings: - use_mel_codes_as_input: - checkpointing: - """ - super().__init__() - - self.number_text_tokens = number_text_tokens - self.start_text_token = number_text_tokens * types if start_text_token is None else start_text_token - self.stop_text_token = 0 - self.number_mel_codes = number_mel_codes - self.start_mel_token = start_mel_token - self.stop_mel_token = stop_mel_token - self.layers = layers - self.heads = heads - self.max_mel_tokens = max_mel_tokens - self.max_text_tokens = max_text_tokens - self.model_dim = model_dim - self.max_conditioning_inputs = max_conditioning_inputs - self.mel_length_compression = mel_length_compression - self.conditioning_encoder = ConditioningEncoder(80, model_dim, num_attn_heads=heads) - self.text_embedding = nn.Embedding(self.number_text_tokens * types + 1, model_dim) - if use_mel_codes_as_input: - self.mel_embedding = nn.Embedding(self.number_mel_codes, model_dim) - else: - self.mel_embedding = MelEncoder(model_dim, resblocks_per_reduction=1) - ( - self.gpt, - self.mel_pos_embedding, - self.text_pos_embedding, - self.mel_layer_pos_embedding, - self.text_layer_pos_embedding, - ) = build_hf_gpt_transformer( - layers, - model_dim, - heads, - self.max_mel_tokens + 2 + self.max_conditioning_inputs, - self.max_text_tokens + 2, - checkpointing, - ) - if train_solo_embeddings: - self.mel_solo_embedding = nn.Parameter(torch.randn(1, 1, model_dim) * 0.02, requires_grad=True) - self.text_solo_embedding = nn.Parameter(torch.randn(1, 1, model_dim) * 0.02, requires_grad=True) - else: - self.mel_solo_embedding = 0 - self.text_solo_embedding = 0 - - self.final_norm = nn.LayerNorm(model_dim) - self.text_head = nn.Linear(model_dim, self.number_text_tokens * types + 1) - self.mel_head = nn.Linear(model_dim, self.number_mel_codes) - - # Initialize the embeddings per the GPT-2 scheme - embeddings = [self.text_embedding] - if use_mel_codes_as_input: - embeddings.append(self.mel_embedding) - for module in embeddings: - module.weight.data.normal_(mean=0.0, std=0.02) - - def post_init_gpt2_config(self, kv_cache=True): - seq_length = self.max_mel_tokens + self.max_text_tokens + 2 - gpt_config = GPT2Config( - vocab_size=self.max_mel_tokens, - n_positions=seq_length, - n_ctx=seq_length, - n_embd=self.model_dim, - n_layer=self.layers, - n_head=self.heads, - gradient_checkpointing=False, - use_cache=True, - ) - self.inference_model = GPT2InferenceModel( - gpt_config, - self.gpt, - self.mel_pos_embedding, - self.mel_embedding, - self.final_norm, - self.mel_head, - kv_cache=kv_cache, - ) - # self.inference_model = PrunedGPT2InferenceModel(gpt_config, self.gpt, self.mel_pos_embedding, self.mel_embedding, self.final_norm, self.mel_head) - self.gpt.wte = self.mel_embedding - # self.inference_model.save_pretrained("") - - def build_aligned_inputs_and_targets(self, input, start_token, stop_token): - inp = F.pad(input, (1, 0), value=start_token) - tar = F.pad(input, (0, 1), value=stop_token) - return inp, tar - - def set_mel_padding(self, mel_input_tokens, wav_lengths): - """ - Given mel tokens that are derived from a padded audio clip and the actual lengths of each batch element in - that audio clip, reformats the tokens with STOP_MEL_TOKEN in place of the zero padding. This is required - preformatting to create a working TTS model. - """ - # Set padding areas within MEL (currently it is coded with the MEL code for ). - mel_lengths = torch.div(wav_lengths, self.mel_length_compression, rounding_mode="trunc") - for b in range(len(mel_lengths)): - actual_end = ( - mel_lengths[b] + 1 - ) # Due to the convolutional nature of how these tokens are generated, it would be best if the model predicts a token past the actual last token. - if actual_end < mel_input_tokens.shape[-1]: - mel_input_tokens[b, actual_end:] = self.stop_mel_token - return mel_input_tokens - - def get_logits( - self, - speech_conditioning_inputs, - first_inputs, - first_head, - second_inputs=None, - second_head=None, - get_attns=False, - return_latent=False, - ): - if second_inputs is not None: - emb = torch.cat([speech_conditioning_inputs, first_inputs, second_inputs], dim=1) - else: - emb = torch.cat([speech_conditioning_inputs, first_inputs], dim=1) - - gpt_out = self.gpt(inputs_embeds=emb, return_dict=True, output_attentions=get_attns) - if get_attns: - return gpt_out.attentions - - enc = gpt_out.last_hidden_state[:, 1:] # The first logit is tied to the speech_conditioning_input - enc = self.final_norm(enc) - - if return_latent: - return ( - enc[ - :, - speech_conditioning_inputs.shape[1] : speech_conditioning_inputs.shape[1] + first_inputs.shape[1], - ], - enc[:, -second_inputs.shape[1] :], - ) - - first_logits = enc[:, : first_inputs.shape[1]] - first_logits = first_head(first_logits) - first_logits = first_logits.permute(0, 2, 1) - if second_inputs is not None: - second_logits = enc[:, -second_inputs.shape[1] :] - second_logits = second_head(second_logits) - second_logits = second_logits.permute(0, 2, 1) - return first_logits, second_logits - else: - return first_logits - - def get_conditioning(self, speech_conditioning_input): - speech_conditioning_input = ( - speech_conditioning_input.unsqueeze(1) - if len(speech_conditioning_input.shape) == 3 - else speech_conditioning_input - ) - conds = [] - for j in range(speech_conditioning_input.shape[1]): - conds.append(self.conditioning_encoder(speech_conditioning_input[:, j])) - conds = torch.stack(conds, dim=1) - conds = conds.mean(dim=1) - return conds - - def forward( - self, - speech_conditioning_latent, - text_inputs, - text_lengths, - mel_codes, - wav_lengths, - types=None, - text_first=True, - raw_mels=None, - return_attentions=False, - return_latent=False, - clip_inputs=True, - ): - """ - Forward pass that uses both text and voice in either text conditioning mode or voice conditioning mode - (actuated by `text_first`). - - speech_conditioning_input: MEL float tensor, (b,1024) - text_inputs: long tensor, (b,t) - text_lengths: long tensor, (b,) - mel_inputs: long tensor, (b,m) - wav_lengths: long tensor, (b,) - raw_mels: MEL float tensor (b,80,s) - - If return_attentions is specified, only logits are returned. - If return_latent is specified, loss & logits are not computed or returned. Only the predicted latents are returned. - If clip_inputs is True, the inputs will be clipped to the smallest input size across each input modality. - """ - # Types are expressed by expanding the text embedding space. - if types is not None: - text_inputs = text_inputs * (1 + types).unsqueeze(-1) - - if clip_inputs: - # This model will receive micro-batches with a ton of padding for both the text and MELs. Ameliorate this by - # chopping the inputs by the maximum actual length. - max_text_len = text_lengths.max() - text_inputs = text_inputs[:, :max_text_len] - max_mel_len = wav_lengths.max() // self.mel_length_compression - mel_codes = mel_codes[:, :max_mel_len] - if raw_mels is not None: - raw_mels = raw_mels[:, :, : max_mel_len * 4] - mel_codes = self.set_mel_padding(mel_codes, wav_lengths) - text_inputs = F.pad(text_inputs, (0, 1), value=self.stop_text_token) - mel_codes = F.pad(mel_codes, (0, 1), value=self.stop_mel_token) - - conds = speech_conditioning_latent.unsqueeze(1) - text_inputs, text_targets = self.build_aligned_inputs_and_targets( - text_inputs, self.start_text_token, self.stop_text_token - ) - text_emb = self.text_embedding(text_inputs) + self.text_pos_embedding(text_inputs) - mel_codes, mel_targets = self.build_aligned_inputs_and_targets( - mel_codes, self.start_mel_token, self.stop_mel_token - ) - if raw_mels is not None: - mel_inp = F.pad(raw_mels, (0, 8)) - else: - mel_inp = mel_codes - mel_emb = self.mel_embedding(mel_inp) - mel_emb = mel_emb + self.mel_pos_embedding(mel_codes) - - if text_first: - text_logits, mel_logits = self.get_logits( - conds, - text_emb, - self.text_head, - mel_emb, - self.mel_head, - get_attns=return_attentions, - return_latent=return_latent, - ) - if return_latent: - return mel_logits[ - :, :-2 - ] # Despite the name, these are not logits. Strip off the two tokens added by this forward pass. - else: - mel_logits, text_logits = self.get_logits( - conds, - mel_emb, - self.mel_head, - text_emb, - self.text_head, - get_attns=return_attentions, - return_latent=return_latent, - ) - if return_latent: - return text_logits[ - :, :-2 - ] # Despite the name, these are not logits. Strip off the two tokens added by this forward pass. - - if return_attentions: - return mel_logits - loss_text = F.cross_entropy(text_logits, text_targets.long()) - loss_mel = F.cross_entropy(mel_logits, mel_targets.long()) - return loss_text.mean(), loss_mel.mean(), mel_logits - - def inference_speech( - self, - speech_conditioning_latent, - text_inputs, - input_tokens=None, - num_return_sequences=1, - max_generate_length=None, - typical_sampling=False, - typical_mass=0.9, - **hf_generate_kwargs, - ): - text_inputs = F.pad(text_inputs, (0, 1), value=self.stop_text_token) - text_inputs, text_targets = self.build_aligned_inputs_and_targets( - text_inputs, self.start_text_token, self.stop_text_token - ) - text_emb = self.text_embedding(text_inputs) + self.text_pos_embedding(text_inputs) - - conds = speech_conditioning_latent.unsqueeze(1) - emb = torch.cat([conds, text_emb], dim=1) - self.inference_model.store_mel_emb(emb) - - fake_inputs = torch.full( - ( - emb.shape[0], - conds.shape[1] + emb.shape[1], - ), - fill_value=1, - dtype=torch.long, - device=text_inputs.device, - ) - fake_inputs[:, -1] = self.start_mel_token - trunc_index = fake_inputs.shape[1] - if input_tokens is None: - inputs = fake_inputs - else: - assert ( - num_return_sequences % input_tokens.shape[0] == 0 - ), "The number of return sequences must be divisible by the number of input sequences" - fake_inputs = fake_inputs.repeat(num_return_sequences, 1) - input_tokens = input_tokens.repeat(num_return_sequences // input_tokens.shape[0], 1) - inputs = torch.cat([fake_inputs, input_tokens], dim=1) - - logits_processor = ( - LogitsProcessorList([TypicalLogitsWarper(mass=typical_mass)]) if typical_sampling else LogitsProcessorList() - ) # TODO disable this - max_length = ( - trunc_index + self.max_mel_tokens - 1 if max_generate_length is None else trunc_index + max_generate_length - ) - gen = self.inference_model.generate( - inputs, - bos_token_id=self.start_mel_token, - pad_token_id=self.stop_mel_token, - eos_token_id=self.stop_mel_token, - max_length=max_length, - logits_processor=logits_processor, - num_return_sequences=num_return_sequences, - **hf_generate_kwargs, - ) - return gen[:, trunc_index:] - - -if __name__ == "__main__": - gpt = UnifiedVoice( - model_dim=256, - heads=4, - train_solo_embeddings=True, - use_mel_codes_as_input=True, - max_conditioning_inputs=4, - ) - l = gpt( - torch.randn(2, 3, 80, 800), - torch.randint(high=120, size=(2, 120)), - torch.tensor([32, 120]), - torch.randint(high=8192, size=(2, 250)), - torch.tensor([250 * 256, 195 * 256]), - ) - gpt.text_forward( - torch.randn(2, 80, 800), - torch.randint(high=50, size=(2, 80)), - torch.tensor([32, 80]), - ) diff --git a/TTS/TTS/tts/layers/tortoise/classifier.py b/TTS/TTS/tts/layers/tortoise/classifier.py deleted file mode 100644 index 8764bb070b5ad8267ee2992ccc33f5bb65bad005..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/classifier.py +++ /dev/null @@ -1,144 +0,0 @@ -import torch -import torch.nn as nn - -from TTS.tts.layers.tortoise.arch_utils import AttentionBlock, Downsample, Upsample, normalization, zero_module - - -class ResBlock(nn.Module): - def __init__( - self, - channels, - dropout, - out_channels=None, - use_conv=False, - use_scale_shift_norm=False, - dims=2, - up=False, - down=False, - kernel_size=3, - do_checkpoint=True, - ): - super().__init__() - self.channels = channels - self.dropout = dropout - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.use_scale_shift_norm = use_scale_shift_norm - self.do_checkpoint = do_checkpoint - padding = 1 if kernel_size == 3 else 2 - - self.in_layers = nn.Sequential( - normalization(channels), - nn.SiLU(), - nn.Conv1d(channels, self.out_channels, kernel_size, padding=padding), - ) - - self.updown = up or down - - if up: - self.h_upd = Upsample(channels, False, dims) - self.x_upd = Upsample(channels, False, dims) - elif down: - self.h_upd = Downsample(channels, False, dims) - self.x_upd = Downsample(channels, False, dims) - else: - self.h_upd = self.x_upd = nn.Identity() - - self.out_layers = nn.Sequential( - normalization(self.out_channels), - nn.SiLU(), - nn.Dropout(p=dropout), - zero_module(nn.Conv1d(self.out_channels, self.out_channels, kernel_size, padding=padding)), - ) - - if self.out_channels == channels: - self.skip_connection = nn.Identity() - elif use_conv: - self.skip_connection = nn.Conv1d(dims, channels, self.out_channels, kernel_size, padding=padding) - else: - self.skip_connection = nn.Conv1d(dims, channels, self.out_channels, 1) - - def forward(self, x): - if self.updown: - in_rest, in_conv = self.in_layers[:-1], self.in_layers[-1] - h = in_rest(x) - h = self.h_upd(h) - x = self.x_upd(x) - h = in_conv(h) - else: - h = self.in_layers(x) - h = self.out_layers(h) - return self.skip_connection(x) + h - - -class AudioMiniEncoder(nn.Module): - def __init__( - self, - spec_dim, - embedding_dim, - base_channels=128, - depth=2, - resnet_blocks=2, - attn_blocks=4, - num_attn_heads=4, - dropout=0, - downsample_factor=2, - kernel_size=3, - ): - super().__init__() - self.init = nn.Sequential(nn.Conv1d(spec_dim, base_channels, 3, padding=1)) - ch = base_channels - res = [] - self.layers = depth - for l in range(depth): - for r in range(resnet_blocks): - res.append(ResBlock(ch, dropout, do_checkpoint=False, kernel_size=kernel_size)) - res.append(Downsample(ch, use_conv=True, out_channels=ch * 2, factor=downsample_factor)) - ch *= 2 - self.res = nn.Sequential(*res) - self.final = nn.Sequential(normalization(ch), nn.SiLU(), nn.Conv1d(ch, embedding_dim, 1)) - attn = [] - for a in range(attn_blocks): - attn.append(AttentionBlock(embedding_dim, num_attn_heads, do_checkpoint=False)) - self.attn = nn.Sequential(*attn) - self.dim = embedding_dim - - def forward(self, x): - h = self.init(x) - h = self.res(h) - h = self.final(h) - for blk in self.attn: - h = blk(h) - return h[:, :, 0] - - -class AudioMiniEncoderWithClassifierHead(nn.Module): - def __init__(self, classes, distribute_zero_label=True, **kwargs): - super().__init__() - self.enc = AudioMiniEncoder(**kwargs) - self.head = nn.Linear(self.enc.dim, classes) - self.num_classes = classes - self.distribute_zero_label = distribute_zero_label - - def forward(self, x, labels=None): - h = self.enc(x) - logits = self.head(h) - if labels is None: - return logits - else: - if self.distribute_zero_label: - oh_labels = nn.functional.one_hot(labels, num_classes=self.num_classes) - zeros_indices = (labels == 0).unsqueeze(-1) - # Distribute 20% of the probability mass on all classes when zero is specified, to compensate for dataset noise. - zero_extra_mass = torch.full_like( - oh_labels, - dtype=torch.float, - fill_value=0.2 / (self.num_classes - 1), - ) - zero_extra_mass[:, 0] = -0.2 - zero_extra_mass = zero_extra_mass * zeros_indices - oh_labels = oh_labels + zero_extra_mass - else: - oh_labels = labels - loss = nn.functional.cross_entropy(logits, oh_labels) - return loss diff --git a/TTS/TTS/tts/layers/tortoise/clvp.py b/TTS/TTS/tts/layers/tortoise/clvp.py deleted file mode 100644 index 69b8c17c3fe71f55be12b728fa3c8f0e85cefb89..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/clvp.py +++ /dev/null @@ -1,159 +0,0 @@ -import torch -import torch.nn as nn -import torch.nn.functional as F -from torch import einsum - -from TTS.tts.layers.tortoise.arch_utils import CheckpointedXTransformerEncoder -from TTS.tts.layers.tortoise.transformer import Transformer -from TTS.tts.layers.tortoise.xtransformers import Encoder - - -def exists(val): - return val is not None - - -def masked_mean(t, mask, dim=1): - t = t.masked_fill(~mask[:, :, None], 0.0) - return t.sum(dim=1) / mask.sum(dim=1)[..., None] - - -class CLVP(nn.Module): - """ - CLIP model retrofitted for performing contrastive evaluation between tokenized audio data and the corresponding - transcribed text. - - Originally from https://github.com/lucidrains/DALLE-pytorch/blob/main/dalle_pytorch/dalle_pytorch.py - """ - - def __init__( - self, - *, - dim_text=512, - dim_speech=512, - dim_latent=512, - num_text_tokens=256, - text_enc_depth=6, - text_seq_len=120, - text_heads=8, - num_speech_tokens=8192, - speech_enc_depth=6, - speech_heads=8, - speech_seq_len=250, - text_mask_percentage=0, - voice_mask_percentage=0, - wav_token_compression=1024, - use_xformers=False, - ): - super().__init__() - self.text_emb = nn.Embedding(num_text_tokens, dim_text) - self.to_text_latent = nn.Linear(dim_text, dim_latent, bias=False) - - self.speech_emb = nn.Embedding(num_speech_tokens, dim_speech) - self.to_speech_latent = nn.Linear(dim_speech, dim_latent, bias=False) - - if use_xformers: - self.text_transformer = CheckpointedXTransformerEncoder( - needs_permute=False, - exit_permute=False, - max_seq_len=-1, - attn_layers=Encoder( - dim=dim_text, - depth=text_enc_depth, - heads=text_heads, - ff_dropout=0.1, - ff_mult=2, - attn_dropout=0.1, - use_rmsnorm=True, - ff_glu=True, - rotary_pos_emb=True, - ), - ) - self.speech_transformer = CheckpointedXTransformerEncoder( - needs_permute=False, - exit_permute=False, - max_seq_len=-1, - attn_layers=Encoder( - dim=dim_speech, - depth=speech_enc_depth, - heads=speech_heads, - ff_dropout=0.1, - ff_mult=2, - attn_dropout=0.1, - use_rmsnorm=True, - ff_glu=True, - rotary_pos_emb=True, - ), - ) - else: - self.text_transformer = Transformer( - causal=False, seq_len=text_seq_len, dim=dim_text, depth=text_enc_depth, heads=text_heads - ) - self.speech_transformer = Transformer( - causal=False, seq_len=speech_seq_len, dim=dim_speech, depth=speech_enc_depth, heads=speech_heads - ) - - self.temperature = nn.Parameter(torch.tensor(1.0)) - self.text_mask_percentage = text_mask_percentage - self.voice_mask_percentage = voice_mask_percentage - self.wav_token_compression = wav_token_compression - self.xformers = use_xformers - if not use_xformers: - self.text_pos_emb = nn.Embedding(text_seq_len, dim_text) - self.speech_pos_emb = nn.Embedding(num_speech_tokens, dim_speech) - - def forward(self, text, speech_tokens, return_loss=False): - b, device = text.shape[0], text.device - if self.training: - text_mask = torch.rand_like(text.float()) > self.text_mask_percentage - voice_mask = torch.rand_like(speech_tokens.float()) > self.voice_mask_percentage - else: - text_mask = torch.ones_like(text.float()).bool() - voice_mask = torch.ones_like(speech_tokens.float()).bool() - - text_emb = self.text_emb(text) - speech_emb = self.speech_emb(speech_tokens) - - if not self.xformers: - text_emb += self.text_pos_emb(torch.arange(text.shape[1], device=device)) - speech_emb += self.speech_pos_emb(torch.arange(speech_emb.shape[1], device=device)) - - enc_text = self.text_transformer(text_emb, mask=text_mask) - enc_speech = self.speech_transformer(speech_emb, mask=voice_mask) - - text_latents = masked_mean(enc_text, text_mask, dim=1) - speech_latents = masked_mean(enc_speech, voice_mask, dim=1) - - text_latents = self.to_text_latent(text_latents) - speech_latents = self.to_speech_latent(speech_latents) - - text_latents, speech_latents = map(lambda t: F.normalize(t, p=2, dim=-1), (text_latents, speech_latents)) - - temp = self.temperature.exp() - - if not return_loss: - sim = einsum("n d, n d -> n", text_latents, speech_latents) * temp - return sim - - sim = einsum("i d, j d -> i j", text_latents, speech_latents) * temp - labels = torch.arange(b, device=device) - loss = (F.cross_entropy(sim, labels) + F.cross_entropy(sim.t(), labels)) / 2 - return loss - - -if __name__ == "__main__": - clip = CLVP(text_mask_percentage=0.2, voice_mask_percentage=0.2) - clip( - torch.randint(0, 256, (2, 120)), - torch.tensor([50, 100]), - torch.randint(0, 8192, (2, 250)), - torch.tensor([101, 102]), - return_loss=True, - ) - nonloss = clip( - torch.randint(0, 256, (2, 120)), - torch.tensor([50, 100]), - torch.randint(0, 8192, (2, 250)), - torch.tensor([101, 102]), - return_loss=False, - ) - print(nonloss.shape) diff --git a/TTS/TTS/tts/layers/tortoise/diffusion.py b/TTS/TTS/tts/layers/tortoise/diffusion.py deleted file mode 100644 index eb9e90df51c80335321d34c6f26bf1f4307478f5..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/diffusion.py +++ /dev/null @@ -1,1259 +0,0 @@ -""" -This is an almost carbon copy of gaussian_diffusion.py from OpenAI's ImprovedDiffusion repo, which itself: - -This code started out as a PyTorch port of Ho et al's diffusion models: -https://github.com/hojonathanho/diffusion/blob/1e0dceb3b3495bbe19116a5e1b3596cd0706c543/diffusion_tf/diffusion_utils_2.py - -Docstrings have been added, as well as DDIM sampling and a new collection of beta schedules. -""" - -import enum -import math - -import numpy as np -import torch -import torch as th -from k_diffusion.sampling import sample_dpmpp_2m, sample_euler_ancestral -from tqdm import tqdm - -from TTS.tts.layers.tortoise.dpm_solver import DPM_Solver, NoiseScheduleVP, model_wrapper - -K_DIFFUSION_SAMPLERS = {"k_euler_a": sample_euler_ancestral, "dpm++2m": sample_dpmpp_2m} -SAMPLERS = ["dpm++2m", "p", "ddim"] - - -def normal_kl(mean1, logvar1, mean2, logvar2): - """ - Compute the KL divergence between two gaussians. - - Shapes are automatically broadcasted, so batches can be compared to - scalars, among other use cases. - """ - tensor = None - for obj in (mean1, logvar1, mean2, logvar2): - if isinstance(obj, th.Tensor): - tensor = obj - break - assert tensor is not None, "at least one argument must be a Tensor" - - # Force variances to be Tensors. Broadcasting helps convert scalars to - # Tensors, but it does not work for th.exp(). - logvar1, logvar2 = [x if isinstance(x, th.Tensor) else th.tensor(x).to(tensor) for x in (logvar1, logvar2)] - - return 0.5 * (-1.0 + logvar2 - logvar1 + th.exp(logvar1 - logvar2) + ((mean1 - mean2) ** 2) * th.exp(-logvar2)) - - -def approx_standard_normal_cdf(x): - """ - A fast approximation of the cumulative distribution function of the - standard normal. - """ - return 0.5 * (1.0 + th.tanh(np.sqrt(2.0 / np.pi) * (x + 0.044715 * th.pow(x, 3)))) - - -def discretized_gaussian_log_likelihood(x, *, means, log_scales): - """ - Compute the log-likelihood of a Gaussian distribution discretizing to a - given image. - - :param x: the target images. It is assumed that this was uint8 values, - rescaled to the range [-1, 1]. - :param means: the Gaussian mean Tensor. - :param log_scales: the Gaussian log stddev Tensor. - :return: a tensor like x of log probabilities (in nats). - """ - assert x.shape == means.shape == log_scales.shape - centered_x = x - means - inv_stdv = th.exp(-log_scales) - plus_in = inv_stdv * (centered_x + 1.0 / 255.0) - cdf_plus = approx_standard_normal_cdf(plus_in) - min_in = inv_stdv * (centered_x - 1.0 / 255.0) - cdf_min = approx_standard_normal_cdf(min_in) - log_cdf_plus = th.log(cdf_plus.clamp(min=1e-12)) - log_one_minus_cdf_min = th.log((1.0 - cdf_min).clamp(min=1e-12)) - cdf_delta = cdf_plus - cdf_min - log_probs = th.where( - x < -0.999, - log_cdf_plus, - th.where(x > 0.999, log_one_minus_cdf_min, th.log(cdf_delta.clamp(min=1e-12))), - ) - assert log_probs.shape == x.shape - return log_probs - - -def mean_flat(tensor): - """ - Take the mean over all non-batch dimensions. - """ - return tensor.mean(dim=list(range(1, len(tensor.shape)))) - - -def get_named_beta_schedule(schedule_name, num_diffusion_timesteps): - """ - Get a pre-defined beta schedule for the given name. - - The beta schedule library consists of beta schedules which remain similar - in the limit of num_diffusion_timesteps. - Beta schedules may be added, but should not be removed or changed once - they are committed to maintain backwards compatibility. - """ - if schedule_name == "linear": - # Linear schedule from Ho et al, extended to work for any number of - # diffusion steps. - scale = 1000 / num_diffusion_timesteps - beta_start = scale * 0.0001 - beta_end = scale * 0.02 - return np.linspace(beta_start, beta_end, num_diffusion_timesteps, dtype=np.float64) - elif schedule_name == "cosine": - return betas_for_alpha_bar( - num_diffusion_timesteps, - lambda t: math.cos((t + 0.008) / 1.008 * math.pi / 2) ** 2, - ) - else: - raise NotImplementedError(f"unknown beta schedule: {schedule_name}") - - -def betas_for_alpha_bar(num_diffusion_timesteps, alpha_bar, max_beta=0.999): - """ - Create a beta schedule that discretizes the given alpha_t_bar function, - which defines the cumulative product of (1-beta) over time from t = [0,1]. - - :param num_diffusion_timesteps: the number of betas to produce. - :param alpha_bar: a lambda that takes an argument t from 0 to 1 and - produces the cumulative product of (1-beta) up to that - part of the diffusion process. - :param max_beta: the maximum beta to use; use values lower than 1 to - prevent singularities. - """ - betas = [] - for i in range(num_diffusion_timesteps): - t1 = i / num_diffusion_timesteps - t2 = (i + 1) / num_diffusion_timesteps - betas.append(min(1 - alpha_bar(t2) / alpha_bar(t1), max_beta)) - return np.array(betas) - - -class ModelMeanType(enum.Enum): - """ - Which type of output the model predicts. - """ - - PREVIOUS_X = "previous_x" # the model predicts x_{t-1} - START_X = "start_x" # the model predicts x_0 - EPSILON = "epsilon" # the model predicts epsilon - - -class ModelVarType(enum.Enum): - """ - What is used as the model's output variance. - - The LEARNED_RANGE option has been added to allow the model to predict - values between FIXED_SMALL and FIXED_LARGE, making its job easier. - """ - - LEARNED = "learned" - FIXED_SMALL = "fixed_small" - FIXED_LARGE = "fixed_large" - LEARNED_RANGE = "learned_range" - - -class LossType(enum.Enum): - MSE = "mse" # use raw MSE loss (and KL when learning variances) - RESCALED_MSE = "rescaled_mse" # use raw MSE loss (with RESCALED_KL when learning variances) - KL = "kl" # use the variational lower-bound - RESCALED_KL = "rescaled_kl" # like KL, but rescale to estimate the full VLB - - def is_vb(self): - return self == LossType.KL or self == LossType.RESCALED_KL - - -class GaussianDiffusion: - """ - Utilities for training and sampling diffusion models. - - Ported directly from here, and then adapted over time to further experimentation. - https://github.com/hojonathanho/diffusion/blob/1e0dceb3b3495bbe19116a5e1b3596cd0706c543/diffusion_tf/diffusion_utils_2.py#L42 - - :param betas: a 1-D numpy array of betas for each diffusion timestep, - starting at T and going to 1. - :param model_mean_type: a ModelMeanType determining what the model outputs. - :param model_var_type: a ModelVarType determining how variance is output. - :param loss_type: a LossType determining the loss function to use. - :param rescale_timesteps: if True, pass floating point timesteps into the - model so that they are always scaled like in the - original paper (0 to 1000). - """ - - def __init__( - self, - *, - betas, - model_mean_type, - model_var_type, - loss_type, - rescale_timesteps=False, - conditioning_free=False, - conditioning_free_k=1, - ramp_conditioning_free=True, - sampler="p", - ): - self.sampler = sampler - self.model_mean_type = ModelMeanType(model_mean_type) - self.model_var_type = ModelVarType(model_var_type) - self.loss_type = LossType(loss_type) - self.rescale_timesteps = rescale_timesteps - self.conditioning_free = conditioning_free - self.conditioning_free_k = conditioning_free_k - self.ramp_conditioning_free = ramp_conditioning_free - - # Use float64 for accuracy. - betas = np.array(betas, dtype=np.float64) - self.betas = betas - assert len(betas.shape) == 1, "betas must be 1-D" - assert (betas > 0).all() and (betas <= 1).all() - - self.num_timesteps = int(betas.shape[0]) - - alphas = 1.0 - betas - self.alphas_cumprod = np.cumprod(alphas, axis=0) - self.alphas_cumprod_prev = np.append(1.0, self.alphas_cumprod[:-1]) - self.alphas_cumprod_next = np.append(self.alphas_cumprod[1:], 0.0) - assert self.alphas_cumprod_prev.shape == (self.num_timesteps,) - - # calculations for diffusion q(x_t | x_{t-1}) and others - self.sqrt_alphas_cumprod = np.sqrt(self.alphas_cumprod) - self.sqrt_one_minus_alphas_cumprod = np.sqrt(1.0 - self.alphas_cumprod) - self.log_one_minus_alphas_cumprod = np.log(1.0 - self.alphas_cumprod) - self.sqrt_recip_alphas_cumprod = np.sqrt(1.0 / self.alphas_cumprod) - self.sqrt_recipm1_alphas_cumprod = np.sqrt(1.0 / self.alphas_cumprod - 1) - - # calculations for posterior q(x_{t-1} | x_t, x_0) - self.posterior_variance = betas * (1.0 - self.alphas_cumprod_prev) / (1.0 - self.alphas_cumprod) - # log calculation clipped because the posterior variance is 0 at the - # beginning of the diffusion chain. - self.posterior_log_variance_clipped = np.log(np.append(self.posterior_variance[1], self.posterior_variance[1:])) - self.posterior_mean_coef1 = betas * np.sqrt(self.alphas_cumprod_prev) / (1.0 - self.alphas_cumprod) - self.posterior_mean_coef2 = (1.0 - self.alphas_cumprod_prev) * np.sqrt(alphas) / (1.0 - self.alphas_cumprod) - - def q_mean_variance(self, x_start, t): - """ - Get the distribution q(x_t | x_0). - - :param x_start: the [N x C x ...] tensor of noiseless inputs. - :param t: the number of diffusion steps (minus 1). Here, 0 means one step. - :return: A tuple (mean, variance, log_variance), all of x_start's shape. - """ - mean = _extract_into_tensor(self.sqrt_alphas_cumprod, t, x_start.shape) * x_start - variance = _extract_into_tensor(1.0 - self.alphas_cumprod, t, x_start.shape) - log_variance = _extract_into_tensor(self.log_one_minus_alphas_cumprod, t, x_start.shape) - return mean, variance, log_variance - - def q_sample(self, x_start, t, noise=None): - """ - Diffuse the data for a given number of diffusion steps. - - In other words, sample from q(x_t | x_0). - - :param x_start: the initial data batch. - :param t: the number of diffusion steps (minus 1). Here, 0 means one step. - :param noise: if specified, the split-out normal noise. - :return: A noisy version of x_start. - """ - if noise is None: - noise = th.randn_like(x_start) - assert noise.shape == x_start.shape - return ( - _extract_into_tensor(self.sqrt_alphas_cumprod, t, x_start.shape) * x_start - + _extract_into_tensor(self.sqrt_one_minus_alphas_cumprod, t, x_start.shape) * noise - ) - - def q_posterior_mean_variance(self, x_start, x_t, t): - """ - Compute the mean and variance of the diffusion posterior: - - q(x_{t-1} | x_t, x_0) - - """ - assert x_start.shape == x_t.shape - posterior_mean = ( - _extract_into_tensor(self.posterior_mean_coef1, t, x_t.shape) * x_start - + _extract_into_tensor(self.posterior_mean_coef2, t, x_t.shape) * x_t - ) - posterior_variance = _extract_into_tensor(self.posterior_variance, t, x_t.shape) - posterior_log_variance_clipped = _extract_into_tensor(self.posterior_log_variance_clipped, t, x_t.shape) - assert ( - posterior_mean.shape[0] - == posterior_variance.shape[0] - == posterior_log_variance_clipped.shape[0] - == x_start.shape[0] - ) - return posterior_mean, posterior_variance, posterior_log_variance_clipped - - def p_mean_variance(self, model, x, t, clip_denoised=True, denoised_fn=None, model_kwargs=None): - """ - Apply the model to get p(x_{t-1} | x_t), as well as a prediction of - the initial x, x_0. - - :param model: the model, which takes a signal and a batch of timesteps - as input. - :param x: the [N x C x ...] tensor at time t. - :param t: a 1-D Tensor of timesteps. - :param clip_denoised: if True, clip the denoised signal into [-1, 1]. - :param denoised_fn: if not None, a function which applies to the - x_start prediction before it is used to sample. Applies before - clip_denoised. - :param model_kwargs: if not None, a dict of extra keyword arguments to - pass to the model. This can be used for conditioning. - :return: a dict with the following keys: - - 'mean': the model mean output. - - 'variance': the model variance output. - - 'log_variance': the log of 'variance'. - - 'pred_xstart': the prediction for x_0. - """ - if model_kwargs is None: - model_kwargs = {} - - B, C = x.shape[:2] - assert t.shape == (B,) - model_output = model(x, self._scale_timesteps(t), **model_kwargs) - if self.conditioning_free: - model_output_no_conditioning = model(x, self._scale_timesteps(t), conditioning_free=True, **model_kwargs) - - if self.model_var_type in [ModelVarType.LEARNED, ModelVarType.LEARNED_RANGE]: - assert model_output.shape == (B, C * 2, *x.shape[2:]) - model_output, model_var_values = th.split(model_output, C, dim=1) - if self.conditioning_free: - model_output_no_conditioning, _ = th.split(model_output_no_conditioning, C, dim=1) - if self.model_var_type == ModelVarType.LEARNED: - model_log_variance = model_var_values - model_variance = th.exp(model_log_variance) - else: - min_log = _extract_into_tensor(self.posterior_log_variance_clipped, t, x.shape) - max_log = _extract_into_tensor(np.log(self.betas), t, x.shape) - # The model_var_values is [-1, 1] for [min_var, max_var]. - frac = (model_var_values + 1) / 2 - model_log_variance = frac * max_log + (1 - frac) * min_log - model_variance = th.exp(model_log_variance) - else: - model_variance, model_log_variance = { - # for fixedlarge, we set the initial (log-)variance like so - # to get a better decoder log likelihood. - ModelVarType.FIXED_LARGE: ( - np.append(self.posterior_variance[1], self.betas[1:]), - np.log(np.append(self.posterior_variance[1], self.betas[1:])), - ), - ModelVarType.FIXED_SMALL: ( - self.posterior_variance, - self.posterior_log_variance_clipped, - ), - }[self.model_var_type] - model_variance = _extract_into_tensor(model_variance, t, x.shape) - model_log_variance = _extract_into_tensor(model_log_variance, t, x.shape) - - if self.conditioning_free: - if self.ramp_conditioning_free: - assert t.shape[0] == 1 # This should only be used in inference. - cfk = self.conditioning_free_k * (1 - self._scale_timesteps(t)[0].item() / self.num_timesteps) - else: - cfk = self.conditioning_free_k - model_output = (1 + cfk) * model_output - cfk * model_output_no_conditioning - - def process_xstart(x): - if denoised_fn is not None: - x = denoised_fn(x) - if clip_denoised: - return x.clamp(-1, 1) - return x - - if self.model_mean_type == ModelMeanType.PREVIOUS_X: - pred_xstart = process_xstart(self._predict_xstart_from_xprev(x_t=x, t=t, xprev=model_output)) - model_mean = model_output - elif self.model_mean_type in [ModelMeanType.START_X, ModelMeanType.EPSILON]: - if self.model_mean_type == ModelMeanType.START_X: - pred_xstart = process_xstart(model_output) - else: - pred_xstart = process_xstart(self._predict_xstart_from_eps(x_t=x, t=t, eps=model_output)) - model_mean, _, _ = self.q_posterior_mean_variance(x_start=pred_xstart, x_t=x, t=t) - else: - raise NotImplementedError(self.model_mean_type) - - assert model_mean.shape == model_log_variance.shape == pred_xstart.shape == x.shape - return { - "mean": model_mean, - "variance": model_variance, - "log_variance": model_log_variance, - "pred_xstart": pred_xstart, - } - - def _predict_xstart_from_eps(self, x_t, t, eps): - assert x_t.shape == eps.shape - return ( - _extract_into_tensor(self.sqrt_recip_alphas_cumprod, t, x_t.shape) * x_t - - _extract_into_tensor(self.sqrt_recipm1_alphas_cumprod, t, x_t.shape) * eps - ) - - def _predict_xstart_from_xprev(self, x_t, t, xprev): - assert x_t.shape == xprev.shape - return ( # (xprev - coef2*x_t) / coef1 - _extract_into_tensor(1.0 / self.posterior_mean_coef1, t, x_t.shape) * xprev - - _extract_into_tensor(self.posterior_mean_coef2 / self.posterior_mean_coef1, t, x_t.shape) * x_t - ) - - def _predict_eps_from_xstart(self, x_t, t, pred_xstart): - return ( - _extract_into_tensor(self.sqrt_recip_alphas_cumprod, t, x_t.shape) * x_t - pred_xstart - ) / _extract_into_tensor(self.sqrt_recipm1_alphas_cumprod, t, x_t.shape) - - def _scale_timesteps(self, t): - if self.rescale_timesteps: - return t.float() * (1000.0 / self.num_timesteps) - return t - - def condition_mean(self, cond_fn, p_mean_var, x, t, model_kwargs=None): - """ - Compute the mean for the previous step, given a function cond_fn that - computes the gradient of a conditional log probability with respect to - x. In particular, cond_fn computes grad(log(p(y|x))), and we want to - condition on y. - - This uses the conditioning strategy from Sohl-Dickstein et al. (2015). - """ - gradient = cond_fn(x, self._scale_timesteps(t), **model_kwargs) - new_mean = p_mean_var["mean"].float() + p_mean_var["variance"] * gradient.float() - return new_mean - - def condition_score(self, cond_fn, p_mean_var, x, t, model_kwargs=None): - """ - Compute what the p_mean_variance output would have been, should the - model's score function be conditioned by cond_fn. - - See condition_mean() for details on cond_fn. - - Unlike condition_mean(), this instead uses the conditioning strategy - from Song et al (2020). - """ - alpha_bar = _extract_into_tensor(self.alphas_cumprod, t, x.shape) - - eps = self._predict_eps_from_xstart(x, t, p_mean_var["pred_xstart"]) - eps = eps - (1 - alpha_bar).sqrt() * cond_fn(x, self._scale_timesteps(t), **model_kwargs) - - out = p_mean_var.copy() - out["pred_xstart"] = self._predict_xstart_from_eps(x, t, eps) - out["mean"], _, _ = self.q_posterior_mean_variance(x_start=out["pred_xstart"], x_t=x, t=t) - return out - - def k_diffusion_sample_loop( - self, - k_sampler, - pbar, - model, - shape, - noise=None, # all given - clip_denoised=True, - denoised_fn=None, - cond_fn=None, - device=None, # ALL UNUSED - model_kwargs=None, # {'precomputed_aligned_embeddings': precomputed_embeddings}, - progress=False, # unused as well - ): - assert isinstance(model_kwargs, dict) - if device is None: - device = next(model.parameters()).device - s_in = noise.new_ones([noise.shape[0]]) - - def model_split(*args, **kwargs): - model_output = model(*args, **kwargs) - model_epsilon, model_var = th.split(model_output, model_output.shape[1] // 2, dim=1) - return model_epsilon, model_var - - # - """ - print(self.betas) - print(th.tensor(self.betas)) - noise_schedule = NoiseScheduleVP(schedule='discrete', betas=th.tensor(self.betas)) - """ - noise_schedule = NoiseScheduleVP(schedule="linear", continuous_beta_0=0.1 / 4, continuous_beta_1=20.0 / 4) - - def model_fn_prewrap(x, t, *args, **kwargs): - """ - x_in = torch.cat([x] * 2) - t_in = torch.cat([t_continuous] * 2) - c_in = torch.cat([unconditional_condition, condition]) - noise_uncond, noise = noise_pred_fn(x_in, t_in, cond=c_in).chunk(2) - print(t) - print(self.timestep_map) - exit() - """ - """ - model_output = model(x, self._scale_timesteps(t*4000), **model_kwargs) - out = self.p_mean_variance(model, x, t*4000, model_kwargs=model_kwargs) - return out['pred_xstart'] - """ - x, _ = x.chunk(2) - t, _ = (t * 1000).chunk(2) - res = torch.cat( - [ - model_split(x, t, conditioning_free=True, **model_kwargs)[0], - model_split(x, t, **model_kwargs)[0], - ] - ) - pbar.update(1) - return res - - model_fn = model_wrapper( - model_fn_prewrap, - noise_schedule, - model_type="noise", # "noise" or "x_start" or "v" or "score" - model_kwargs=model_kwargs, - guidance_type="classifier-free", - condition=th.Tensor(1), - unconditional_condition=th.Tensor(1), - guidance_scale=self.conditioning_free_k, - ) - dpm_solver = DPM_Solver(model_fn, noise_schedule, algorithm_type="dpmsolver++") - x_sample = dpm_solver.sample( - noise, - steps=self.num_timesteps, - order=2, - skip_type="time_uniform", - method="multistep", - ) - #''' - return x_sample - - def sample_loop(self, *args, **kwargs): - s = self.sampler - if s == "p": - return self.p_sample_loop(*args, **kwargs) - elif s == "ddim": - return self.ddim_sample_loop(*args, **kwargs) - elif s == "dpm++2m": - if self.conditioning_free is not True: - raise RuntimeError("cond_free must be true") - with tqdm(total=self.num_timesteps) as pbar: - return self.k_diffusion_sample_loop(K_DIFFUSION_SAMPLERS[s], pbar, *args, **kwargs) - else: - raise RuntimeError("sampler not impl") - - def p_sample( - self, - model, - x, - t, - clip_denoised=True, - denoised_fn=None, - cond_fn=None, - model_kwargs=None, - ): - """ - Sample x_{t-1} from the model at the given timestep. - - :param model: the model to sample from. - :param x: the current tensor at x_{t-1}. - :param t: the value of t, starting at 0 for the first diffusion step. - :param clip_denoised: if True, clip the x_start prediction to [-1, 1]. - :param denoised_fn: if not None, a function which applies to the - x_start prediction before it is used to sample. - :param cond_fn: if not None, this is a gradient function that acts - similarly to the model. - :param model_kwargs: if not None, a dict of extra keyword arguments to - pass to the model. This can be used for conditioning. - :return: a dict containing the following keys: - - 'sample': a random sample from the model. - - 'pred_xstart': a prediction of x_0. - """ - out = self.p_mean_variance( - model, - x, - t, - clip_denoised=clip_denoised, - denoised_fn=denoised_fn, - model_kwargs=model_kwargs, - ) - noise = th.randn_like(x) - nonzero_mask = (t != 0).float().view(-1, *([1] * (len(x.shape) - 1))) # no noise when t == 0 - if cond_fn is not None: - out["mean"] = self.condition_mean(cond_fn, out, x, t, model_kwargs=model_kwargs) - sample = out["mean"] + nonzero_mask * th.exp(0.5 * out["log_variance"]) * noise - return {"sample": sample, "pred_xstart": out["pred_xstart"]} - - def p_sample_loop( - self, - model, - shape, - noise=None, - clip_denoised=True, - denoised_fn=None, - cond_fn=None, - model_kwargs=None, - device=None, - progress=False, - ): - """ - Generate samples from the model. - - :param model: the model module. - :param shape: the shape of the samples, (N, C, H, W). - :param noise: if specified, the noise from the encoder to sample. - Should be of the same shape as `shape`. - :param clip_denoised: if True, clip x_start predictions to [-1, 1]. - :param denoised_fn: if not None, a function which applies to the - x_start prediction before it is used to sample. - :param cond_fn: if not None, this is a gradient function that acts - similarly to the model. - :param model_kwargs: if not None, a dict of extra keyword arguments to - pass to the model. This can be used for conditioning. - :param device: if specified, the device to create the samples on. - If not specified, use a model parameter's device. - :param progress: if True, show a tqdm progress bar. - :return: a non-differentiable batch of samples. - """ - final = None - for sample in self.p_sample_loop_progressive( - model, - shape, - noise=noise, - clip_denoised=clip_denoised, - denoised_fn=denoised_fn, - cond_fn=cond_fn, - model_kwargs=model_kwargs, - device=device, - progress=progress, - ): - final = sample - return final["sample"] - - def p_sample_loop_progressive( - self, - model, - shape, - noise=None, - clip_denoised=True, - denoised_fn=None, - cond_fn=None, - model_kwargs=None, - device=None, - progress=False, - ): - """ - Generate samples from the model and yield intermediate samples from - each timestep of diffusion. - - Arguments are the same as p_sample_loop(). - Returns a generator over dicts, where each dict is the return value of - p_sample(). - """ - if device is None: - device = next(model.parameters()).device - assert isinstance(shape, (tuple, list)) - if noise is not None: - img = noise - else: - img = th.randn(*shape, device=device) - indices = list(range(self.num_timesteps))[::-1] - - for i in tqdm(indices, disable=not progress): - t = th.tensor([i] * shape[0], device=device) - with th.no_grad(): - out = self.p_sample( - model, - img, - t, - clip_denoised=clip_denoised, - denoised_fn=denoised_fn, - cond_fn=cond_fn, - model_kwargs=model_kwargs, - ) - yield out - img = out["sample"] - - def ddim_sample( - self, - model, - x, - t, - clip_denoised=True, - denoised_fn=None, - cond_fn=None, - model_kwargs=None, - eta=0.0, - ): - """ - Sample x_{t-1} from the model using DDIM. - - Same usage as p_sample(). - """ - out = self.p_mean_variance( - model, - x, - t, - clip_denoised=clip_denoised, - denoised_fn=denoised_fn, - model_kwargs=model_kwargs, - ) - if cond_fn is not None: - out = self.condition_score(cond_fn, out, x, t, model_kwargs=model_kwargs) - - # Usually our model outputs epsilon, but we re-derive it - # in case we used x_start or x_prev prediction. - eps = self._predict_eps_from_xstart(x, t, out["pred_xstart"]) - - alpha_bar = _extract_into_tensor(self.alphas_cumprod, t, x.shape) - alpha_bar_prev = _extract_into_tensor(self.alphas_cumprod_prev, t, x.shape) - sigma = eta * th.sqrt((1 - alpha_bar_prev) / (1 - alpha_bar)) * th.sqrt(1 - alpha_bar / alpha_bar_prev) - # Equation 12. - noise = th.randn_like(x) - mean_pred = out["pred_xstart"] * th.sqrt(alpha_bar_prev) + th.sqrt(1 - alpha_bar_prev - sigma**2) * eps - nonzero_mask = (t != 0).float().view(-1, *([1] * (len(x.shape) - 1))) # no noise when t == 0 - sample = mean_pred + nonzero_mask * sigma * noise - return {"sample": sample, "pred_xstart": out["pred_xstart"]} - - def ddim_reverse_sample( - self, - model, - x, - t, - clip_denoised=True, - denoised_fn=None, - model_kwargs=None, - eta=0.0, - ): - """ - Sample x_{t+1} from the model using DDIM reverse ODE. - """ - assert eta == 0.0, "Reverse ODE only for deterministic path" - out = self.p_mean_variance( - model, - x, - t, - clip_denoised=clip_denoised, - denoised_fn=denoised_fn, - model_kwargs=model_kwargs, - ) - # Usually our model outputs epsilon, but we re-derive it - # in case we used x_start or x_prev prediction. - eps = ( - _extract_into_tensor(self.sqrt_recip_alphas_cumprod, t, x.shape) * x - out["pred_xstart"] - ) / _extract_into_tensor(self.sqrt_recipm1_alphas_cumprod, t, x.shape) - alpha_bar_next = _extract_into_tensor(self.alphas_cumprod_next, t, x.shape) - - # Equation 12. reversed - mean_pred = out["pred_xstart"] * th.sqrt(alpha_bar_next) + th.sqrt(1 - alpha_bar_next) * eps - - return {"sample": mean_pred, "pred_xstart": out["pred_xstart"]} - - def ddim_sample_loop( - self, - model, - shape, - noise=None, - clip_denoised=True, - denoised_fn=None, - cond_fn=None, - model_kwargs=None, - device=None, - progress=False, - eta=0.0, - ): - """ - Generate samples from the model using DDIM. - - Same usage as p_sample_loop(). - """ - final = None - for sample in self.ddim_sample_loop_progressive( - model, - shape, - noise=noise, - clip_denoised=clip_denoised, - denoised_fn=denoised_fn, - cond_fn=cond_fn, - model_kwargs=model_kwargs, - device=device, - progress=progress, - eta=eta, - ): - final = sample - return final["sample"] - - def ddim_sample_loop_progressive( - self, - model, - shape, - noise=None, - clip_denoised=True, - denoised_fn=None, - cond_fn=None, - model_kwargs=None, - device=None, - progress=False, - eta=0.0, - ): - """ - Use DDIM to sample from the model and yield intermediate samples from - each timestep of DDIM. - - Same usage as p_sample_loop_progressive(). - """ - if device is None: - device = next(model.parameters()).device - assert isinstance(shape, (tuple, list)) - if noise is not None: - img = noise - else: - img = th.randn(*shape, device=device) - indices = list(range(self.num_timesteps))[::-1] - - if progress: - # Lazy import so that we don't depend on tqdm. - from tqdm.auto import tqdm - - indices = tqdm(indices, disable=not progress) - - for i in indices: - t = th.tensor([i] * shape[0], device=device) - with th.no_grad(): - out = self.ddim_sample( - model, - img, - t, - clip_denoised=clip_denoised, - denoised_fn=denoised_fn, - cond_fn=cond_fn, - model_kwargs=model_kwargs, - eta=eta, - ) - yield out - img = out["sample"] - - def _vb_terms_bpd(self, model, x_start, x_t, t, clip_denoised=True, model_kwargs=None): - """ - Get a term for the variational lower-bound. - - The resulting units are bits (rather than nats, as one might expect). - This allows for comparison to other papers. - - :return: a dict with the following keys: - - 'output': a shape [N] tensor of NLLs or KLs. - - 'pred_xstart': the x_0 predictions. - """ - true_mean, _, true_log_variance_clipped = self.q_posterior_mean_variance(x_start=x_start, x_t=x_t, t=t) - out = self.p_mean_variance(model, x_t, t, clip_denoised=clip_denoised, model_kwargs=model_kwargs) - kl = normal_kl(true_mean, true_log_variance_clipped, out["mean"], out["log_variance"]) - kl = mean_flat(kl) / np.log(2.0) - - decoder_nll = -discretized_gaussian_log_likelihood( - x_start, means=out["mean"], log_scales=0.5 * out["log_variance"] - ) - assert decoder_nll.shape == x_start.shape - decoder_nll = mean_flat(decoder_nll) / np.log(2.0) - - # At the first timestep return the decoder NLL, - # otherwise return KL(q(x_{t-1}|x_t,x_0) || p(x_{t-1}|x_t)) - output = th.where((t == 0), decoder_nll, kl) - return {"output": output, "pred_xstart": out["pred_xstart"]} - - def training_losses(self, model, x_start, t, model_kwargs=None, noise=None): - """ - Compute training losses for a single timestep. - - :param model: the model to evaluate loss on. - :param x_start: the [N x C x ...] tensor of inputs. - :param t: a batch of timestep indices. - :param model_kwargs: if not None, a dict of extra keyword arguments to - pass to the model. This can be used for conditioning. - :param noise: if specified, the specific Gaussian noise to try to remove. - :return: a dict with the key "loss" containing a tensor of shape [N]. - Some mean or variance settings may also have other keys. - """ - if model_kwargs is None: - model_kwargs = {} - if noise is None: - noise = th.randn_like(x_start) - x_t = self.q_sample(x_start, t, noise=noise) - - terms = {} - - if self.loss_type == LossType.KL or self.loss_type == LossType.RESCALED_KL: - # TODO: support multiple model outputs for this mode. - terms["loss"] = self._vb_terms_bpd( - model=model, - x_start=x_start, - x_t=x_t, - t=t, - clip_denoised=False, - model_kwargs=model_kwargs, - )["output"] - if self.loss_type == LossType.RESCALED_KL: - terms["loss"] *= self.num_timesteps - elif self.loss_type == LossType.MSE or self.loss_type == LossType.RESCALED_MSE: - model_outputs = model(x_t, self._scale_timesteps(t), **model_kwargs) - if isinstance(model_outputs, tuple): - model_output = model_outputs[0] - terms["extra_outputs"] = model_outputs[1:] - else: - model_output = model_outputs - - if self.model_var_type in [ - ModelVarType.LEARNED, - ModelVarType.LEARNED_RANGE, - ]: - B, C = x_t.shape[:2] - assert model_output.shape == (B, C * 2, *x_t.shape[2:]) - model_output, model_var_values = th.split(model_output, C, dim=1) - # Learn the variance using the variational bound, but don't let - # it affect our mean prediction. - frozen_out = th.cat([model_output.detach(), model_var_values], dim=1) - terms["vb"] = self._vb_terms_bpd( - model=lambda *args, r=frozen_out: r, - x_start=x_start, - x_t=x_t, - t=t, - clip_denoised=False, - )["output"] - if self.loss_type == LossType.RESCALED_MSE: - # Divide by 1000 for equivalence with initial implementation. - # Without a factor of 1/1000, the VB term hurts the MSE term. - terms["vb"] *= self.num_timesteps / 1000.0 - - if self.model_mean_type == ModelMeanType.PREVIOUS_X: - target = self.q_posterior_mean_variance(x_start=x_start, x_t=x_t, t=t)[0] - x_start_pred = torch.zeros(x_start) # Not supported. - elif self.model_mean_type == ModelMeanType.START_X: - target = x_start - x_start_pred = model_output - elif self.model_mean_type == ModelMeanType.EPSILON: - target = noise - x_start_pred = self._predict_xstart_from_eps(x_t, t, model_output) - else: - raise NotImplementedError(self.model_mean_type) - assert model_output.shape == target.shape == x_start.shape - terms["mse"] = mean_flat((target - model_output) ** 2) - terms["x_start_predicted"] = x_start_pred - if "vb" in terms: - terms["loss"] = terms["mse"] + terms["vb"] - else: - terms["loss"] = terms["mse"] - else: - raise NotImplementedError(self.loss_type) - - return terms - - def autoregressive_training_losses( - self, model, x_start, t, model_output_keys, gd_out_key, model_kwargs=None, noise=None - ): - """ - Compute training losses for a single timestep. - - :param model: the model to evaluate loss on. - :param x_start: the [N x C x ...] tensor of inputs. - :param t: a batch of timestep indices. - :param model_kwargs: if not None, a dict of extra keyword arguments to - pass to the model. This can be used for conditioning. - :param noise: if specified, the specific Gaussian noise to try to remove. - :return: a dict with the key "loss" containing a tensor of shape [N]. - Some mean or variance settings may also have other keys. - """ - if model_kwargs is None: - model_kwargs = {} - if noise is None: - noise = th.randn_like(x_start) - x_t = self.q_sample(x_start, t, noise=noise) - terms = {} - if self.loss_type == LossType.KL or self.loss_type == LossType.RESCALED_KL: - assert False # not currently supported for this type of diffusion. - elif self.loss_type == LossType.MSE or self.loss_type == LossType.RESCALED_MSE: - model_outputs = model(x_t, x_start, self._scale_timesteps(t), **model_kwargs) - terms.update({k: o for k, o in zip(model_output_keys, model_outputs)}) - model_output = terms[gd_out_key] - if self.model_var_type in [ - ModelVarType.LEARNED, - ModelVarType.LEARNED_RANGE, - ]: - B, C = x_t.shape[:2] - assert model_output.shape == (B, C, 2, *x_t.shape[2:]) - model_output, model_var_values = model_output[:, :, 0], model_output[:, :, 1] - # Learn the variance using the variational bound, but don't let - # it affect our mean prediction. - frozen_out = th.cat([model_output.detach(), model_var_values], dim=1) - terms["vb"] = self._vb_terms_bpd( - model=lambda *args, r=frozen_out: r, - x_start=x_start, - x_t=x_t, - t=t, - clip_denoised=False, - )["output"] - if self.loss_type == LossType.RESCALED_MSE: - # Divide by 1000 for equivalence with initial implementation. - # Without a factor of 1/1000, the VB term hurts the MSE term. - terms["vb"] *= self.num_timesteps / 1000.0 - - if self.model_mean_type == ModelMeanType.PREVIOUS_X: - target = self.q_posterior_mean_variance(x_start=x_start, x_t=x_t, t=t)[0] - x_start_pred = torch.zeros(x_start) # Not supported. - elif self.model_mean_type == ModelMeanType.START_X: - target = x_start - x_start_pred = model_output - elif self.model_mean_type == ModelMeanType.EPSILON: - target = noise - x_start_pred = self._predict_xstart_from_eps(x_t, t, model_output) - else: - raise NotImplementedError(self.model_mean_type) - assert model_output.shape == target.shape == x_start.shape - terms["mse"] = mean_flat((target - model_output) ** 2) - terms["x_start_predicted"] = x_start_pred - if "vb" in terms: - terms["loss"] = terms["mse"] + terms["vb"] - else: - terms["loss"] = terms["mse"] - else: - raise NotImplementedError(self.loss_type) - - return terms - - def _prior_bpd(self, x_start): - """ - Get the prior KL term for the variational lower-bound, measured in - bits-per-dim. - - This term can't be optimized, as it only depends on the encoder. - - :param x_start: the [N x C x ...] tensor of inputs. - :return: a batch of [N] KL values (in bits), one per batch element. - """ - batch_size = x_start.shape[0] - t = th.tensor([self.num_timesteps - 1] * batch_size, device=x_start.device) - qt_mean, _, qt_log_variance = self.q_mean_variance(x_start, t) - kl_prior = normal_kl(mean1=qt_mean, logvar1=qt_log_variance, mean2=0.0, logvar2=0.0) - return mean_flat(kl_prior) / np.log(2.0) - - def calc_bpd_loop(self, model, x_start, clip_denoised=True, model_kwargs=None): - """ - Compute the entire variational lower-bound, measured in bits-per-dim, - as well as other related quantities. - - :param model: the model to evaluate loss on. - :param x_start: the [N x C x ...] tensor of inputs. - :param clip_denoised: if True, clip denoised samples. - :param model_kwargs: if not None, a dict of extra keyword arguments to - pass to the model. This can be used for conditioning. - - :return: a dict containing the following keys: - - total_bpd: the total variational lower-bound, per batch element. - - prior_bpd: the prior term in the lower-bound. - - vb: an [N x T] tensor of terms in the lower-bound. - - xstart_mse: an [N x T] tensor of x_0 MSEs for each timestep. - - mse: an [N x T] tensor of epsilon MSEs for each timestep. - """ - device = x_start.device - batch_size = x_start.shape[0] - - vb = [] - xstart_mse = [] - mse = [] - for t in list(range(self.num_timesteps))[::-1]: - t_batch = th.tensor([t] * batch_size, device=device) - noise = th.randn_like(x_start) - x_t = self.q_sample(x_start=x_start, t=t_batch, noise=noise) - # Calculate VLB term at the current timestep - with th.no_grad(): - out = self._vb_terms_bpd( - model, - x_start=x_start, - x_t=x_t, - t=t_batch, - clip_denoised=clip_denoised, - model_kwargs=model_kwargs, - ) - vb.append(out["output"]) - xstart_mse.append(mean_flat((out["pred_xstart"] - x_start) ** 2)) - eps = self._predict_eps_from_xstart(x_t, t_batch, out["pred_xstart"]) - mse.append(mean_flat((eps - noise) ** 2)) - - vb = th.stack(vb, dim=1) - xstart_mse = th.stack(xstart_mse, dim=1) - mse = th.stack(mse, dim=1) - - prior_bpd = self._prior_bpd(x_start) - total_bpd = vb.sum(dim=1) + prior_bpd - return { - "total_bpd": total_bpd, - "prior_bpd": prior_bpd, - "vb": vb, - "xstart_mse": xstart_mse, - "mse": mse, - } - - -def get_named_beta_schedule(schedule_name, num_diffusion_timesteps): - """ - Get a pre-defined beta schedule for the given name. - - The beta schedule library consists of beta schedules which remain similar - in the limit of num_diffusion_timesteps. - Beta schedules may be added, but should not be removed or changed once - they are committed to maintain backwards compatibility. - """ - if schedule_name == "linear": - # Linear schedule from Ho et al, extended to work for any number of - # diffusion steps. - scale = 1000 / num_diffusion_timesteps - beta_start = scale * 0.0001 - beta_end = scale * 0.02 - return np.linspace(beta_start, beta_end, num_diffusion_timesteps, dtype=np.float64) - elif schedule_name == "cosine": - return betas_for_alpha_bar( - num_diffusion_timesteps, - lambda t: math.cos((t + 0.008) / 1.008 * math.pi / 2) ** 2, - ) - else: - raise NotImplementedError(f"unknown beta schedule: {schedule_name}") - - -class SpacedDiffusion(GaussianDiffusion): - """ - A diffusion process which can skip steps in a base diffusion process. - - :param use_timesteps: a collection (sequence or set) of timesteps from the - original diffusion process to retain. - :param kwargs: the kwargs to create the base diffusion process. - """ - - def __init__(self, use_timesteps, **kwargs): - self.use_timesteps = set(use_timesteps) - self.timestep_map = [] - self.original_num_steps = len(kwargs["betas"]) - base_diffusion = GaussianDiffusion(**kwargs) # pylint: disable=missing-kwoa - last_alpha_cumprod = 1.0 - new_betas = [] - for i, alpha_cumprod in enumerate(base_diffusion.alphas_cumprod): - if i in self.use_timesteps: - new_betas.append(1 - alpha_cumprod / last_alpha_cumprod) - last_alpha_cumprod = alpha_cumprod - self.timestep_map.append(i) - kwargs["betas"] = np.array(new_betas) - super().__init__(**kwargs) - - def p_mean_variance(self, model, *args, **kwargs): # pylint: disable=signature-differs - return super().p_mean_variance(self._wrap_model(model), *args, **kwargs) - - def training_losses(self, model, *args, **kwargs): # pylint: disable=signature-differs - return super().training_losses(self._wrap_model(model), *args, **kwargs) - - def autoregressive_training_losses(self, model, *args, **kwargs): # pylint: disable=signature-differs - return super().autoregressive_training_losses(self._wrap_model(model, True), *args, **kwargs) - - def condition_mean(self, cond_fn, *args, **kwargs): - return super().condition_mean(self._wrap_model(cond_fn), *args, **kwargs) - - def condition_score(self, cond_fn, *args, **kwargs): - return super().condition_score(self._wrap_model(cond_fn), *args, **kwargs) - - def _wrap_model(self, model, autoregressive=False): - if isinstance(model, _WrappedModel) or isinstance(model, _WrappedAutoregressiveModel): - return model - mod = _WrappedAutoregressiveModel if autoregressive else _WrappedModel - return mod(model, self.timestep_map, self.rescale_timesteps, self.original_num_steps) - - def _scale_timesteps(self, t): - # Scaling is done by the wrapped model. - return t - - -def space_timesteps(num_timesteps, section_counts): - """ - Create a list of timesteps to use from an original diffusion process, - given the number of timesteps we want to take from equally-sized portions - of the original process. - - For example, if there's 300 timesteps and the section counts are [10,15,20] - then the first 100 timesteps are strided to be 10 timesteps, the second 100 - are strided to be 15 timesteps, and the final 100 are strided to be 20. - - If the stride is a string starting with "ddim", then the fixed striding - from the DDIM paper is used, and only one section is allowed. - - :param num_timesteps: the number of diffusion steps in the original - process to divide up. - :param section_counts: either a list of numbers, or a string containing - comma-separated numbers, indicating the step count - per section. As a special case, use "ddimN" where N - is a number of steps to use the striding from the - DDIM paper. - :return: a set of diffusion steps from the original process to use. - """ - if isinstance(section_counts, str): - if section_counts.startswith("ddim"): - desired_count = int(section_counts[len("ddim") :]) - for i in range(1, num_timesteps): - if len(range(0, num_timesteps, i)) == desired_count: - return set(range(0, num_timesteps, i)) - raise ValueError(f"cannot create exactly {num_timesteps} steps with an integer stride") - section_counts = [int(x) for x in section_counts.split(",")] - size_per = num_timesteps // len(section_counts) - extra = num_timesteps % len(section_counts) - start_idx = 0 - all_steps = [] - for i, section_count in enumerate(section_counts): - size = size_per + (1 if i < extra else 0) - if size < section_count: - raise ValueError(f"cannot divide section of {size} steps into {section_count}") - if section_count <= 1: - frac_stride = 1 - else: - frac_stride = (size - 1) / (section_count - 1) - cur_idx = 0.0 - taken_steps = [] - for _ in range(section_count): - taken_steps.append(start_idx + round(cur_idx)) - cur_idx += frac_stride - all_steps += taken_steps - start_idx += size - return set(all_steps) - - -class _WrappedModel: - def __init__(self, model, timestep_map, rescale_timesteps, original_num_steps): - self.model = model - self.timestep_map = timestep_map - self.rescale_timesteps = rescale_timesteps - self.original_num_steps = original_num_steps - - def __call__(self, x, ts, **kwargs): - map_tensor = th.tensor(self.timestep_map, device=ts.device, dtype=ts.dtype) - new_ts = map_tensor[ts] - if self.rescale_timesteps: - new_ts = new_ts.float() * (1000.0 / self.original_num_steps) - model_output = self.model(x, new_ts, **kwargs) - return model_output - - -class _WrappedAutoregressiveModel: - def __init__(self, model, timestep_map, rescale_timesteps, original_num_steps): - self.model = model - self.timestep_map = timestep_map - self.rescale_timesteps = rescale_timesteps - self.original_num_steps = original_num_steps - - def __call__(self, x, x0, ts, **kwargs): - map_tensor = th.tensor(self.timestep_map, device=ts.device, dtype=ts.dtype) - new_ts = map_tensor[ts] - if self.rescale_timesteps: - new_ts = new_ts.float() * (1000.0 / self.original_num_steps) - return self.model(x, x0, new_ts, **kwargs) - - -def _extract_into_tensor(arr, timesteps, broadcast_shape): - """ - Extract values from a 1-D numpy array for a batch of indices. - - :param arr: the 1-D numpy array. - :param timesteps: a tensor of indices into the array to extract. - :param broadcast_shape: a larger shape of K dimensions with the batch - dimension equal to the length of timesteps. - :return: a tensor of shape [batch_size, 1, ...] where the shape has K dims. - """ - res = th.from_numpy(arr).to(device=timesteps.device)[timesteps].float() - while len(res.shape) < len(broadcast_shape): - res = res[..., None] - return res.expand(broadcast_shape) diff --git a/TTS/TTS/tts/layers/tortoise/diffusion_decoder.py b/TTS/TTS/tts/layers/tortoise/diffusion_decoder.py deleted file mode 100644 index 0d3cf7698a7334b4cfc8d9bdd0f5f6ee3059189d..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/diffusion_decoder.py +++ /dev/null @@ -1,415 +0,0 @@ -import math -import random -from abc import abstractmethod - -import torch -import torch.nn as nn -import torch.nn.functional as F -from torch import autocast - -from TTS.tts.layers.tortoise.arch_utils import AttentionBlock, normalization - - -def is_latent(t): - return t.dtype == torch.float - - -def is_sequence(t): - return t.dtype == torch.long - - -def timestep_embedding(timesteps, dim, max_period=10000): - """ - Create sinusoidal timestep embeddings. - - :param timesteps: a 1-D Tensor of N indices, one per batch element. - These may be fractional. - :param dim: the dimension of the output. - :param max_period: controls the minimum frequency of the embeddings. - :return: an [N x dim] Tensor of positional embeddings. - """ - half = dim // 2 - freqs = torch.exp(-math.log(max_period) * torch.arange(start=0, end=half, dtype=torch.float32) / half).to( - device=timesteps.device - ) - args = timesteps[:, None].float() * freqs[None] - embedding = torch.cat([torch.cos(args), torch.sin(args)], dim=-1) - if dim % 2: - embedding = torch.cat([embedding, torch.zeros_like(embedding[:, :1])], dim=-1) - return embedding - - -class TimestepBlock(nn.Module): - @abstractmethod - def forward(self, x, emb): - """ - Apply the module to `x` given `emb` timestep embeddings. - """ - - -class TimestepEmbedSequential(nn.Sequential, TimestepBlock): - def forward(self, x, emb): - for layer in self: - if isinstance(layer, TimestepBlock): - x = layer(x, emb) - else: - x = layer(x) - return x - - -class ResBlock(TimestepBlock): - def __init__( - self, - channels, - emb_channels, - dropout, - out_channels=None, - dims=2, - kernel_size=3, - efficient_config=True, - use_scale_shift_norm=False, - ): - super().__init__() - self.channels = channels - self.emb_channels = emb_channels - self.dropout = dropout - self.out_channels = out_channels or channels - self.use_scale_shift_norm = use_scale_shift_norm - padding = {1: 0, 3: 1, 5: 2}[kernel_size] - eff_kernel = 1 if efficient_config else 3 - eff_padding = 0 if efficient_config else 1 - - self.in_layers = nn.Sequential( - normalization(channels), - nn.SiLU(), - nn.Conv1d(channels, self.out_channels, eff_kernel, padding=eff_padding), - ) - - self.emb_layers = nn.Sequential( - nn.SiLU(), - nn.Linear( - emb_channels, - 2 * self.out_channels if use_scale_shift_norm else self.out_channels, - ), - ) - self.out_layers = nn.Sequential( - normalization(self.out_channels), - nn.SiLU(), - nn.Dropout(p=dropout), - nn.Conv1d(self.out_channels, self.out_channels, kernel_size, padding=padding), - ) - - if self.out_channels == channels: - self.skip_connection = nn.Identity() - else: - self.skip_connection = nn.Conv1d(channels, self.out_channels, eff_kernel, padding=eff_padding) - - def forward(self, x, emb): - h = self.in_layers(x) - emb_out = self.emb_layers(emb).type(h.dtype) - while len(emb_out.shape) < len(h.shape): - emb_out = emb_out[..., None] - if self.use_scale_shift_norm: - out_norm, out_rest = self.out_layers[0], self.out_layers[1:] - scale, shift = torch.chunk(emb_out, 2, dim=1) - h = out_norm(h) * (1 + scale) + shift - h = out_rest(h) - else: - h = h + emb_out - h = self.out_layers(h) - return self.skip_connection(x) + h - - -class DiffusionLayer(TimestepBlock): - def __init__(self, model_channels, dropout, num_heads): - super().__init__() - self.resblk = ResBlock( - model_channels, - model_channels, - dropout, - model_channels, - dims=1, - use_scale_shift_norm=True, - ) - self.attn = AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True) - - def forward(self, x, time_emb): - y = self.resblk(x, time_emb) - return self.attn(y) - - -class DiffusionTts(nn.Module): - def __init__( - self, - model_channels=512, - num_layers=8, - in_channels=100, - in_latent_channels=512, - in_tokens=8193, - out_channels=200, # mean and variance - dropout=0, - use_fp16=False, - num_heads=16, - # Parameters for regularization. - layer_drop=0.1, - unconditioned_percentage=0.1, # This implements a mechanism similar to what is used in classifier-free training. - ): - super().__init__() - - self.in_channels = in_channels - self.model_channels = model_channels - self.out_channels = out_channels - self.dropout = dropout - self.num_heads = num_heads - self.unconditioned_percentage = unconditioned_percentage - self.enable_fp16 = use_fp16 - self.layer_drop = layer_drop - - self.inp_block = nn.Conv1d(in_channels, model_channels, 3, 1, 1) - self.time_embed = nn.Sequential( - nn.Linear(model_channels, model_channels), - nn.SiLU(), - nn.Linear(model_channels, model_channels), - ) - - # Either code_converter or latent_converter is used, depending on what type of conditioning data is fed. - # This model is meant to be able to be trained on both for efficiency purposes - it is far less computationally - # complex to generate tokens, while generating latents will normally mean propagating through a deep autoregressive - # transformer network. - self.code_embedding = nn.Embedding(in_tokens, model_channels) - self.code_converter = nn.Sequential( - AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True), - AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True), - AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True), - ) - self.code_norm = normalization(model_channels) - self.latent_conditioner = nn.Sequential( - nn.Conv1d(in_latent_channels, model_channels, 3, padding=1), - AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True), - AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True), - AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True), - AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True), - ) - self.contextual_embedder = nn.Sequential( - nn.Conv1d(in_channels, model_channels, 3, padding=1, stride=2), - nn.Conv1d(model_channels, model_channels * 2, 3, padding=1, stride=2), - AttentionBlock( - model_channels * 2, - num_heads, - relative_pos_embeddings=True, - do_checkpoint=False, - ), - AttentionBlock( - model_channels * 2, - num_heads, - relative_pos_embeddings=True, - do_checkpoint=False, - ), - AttentionBlock( - model_channels * 2, - num_heads, - relative_pos_embeddings=True, - do_checkpoint=False, - ), - AttentionBlock( - model_channels * 2, - num_heads, - relative_pos_embeddings=True, - do_checkpoint=False, - ), - AttentionBlock( - model_channels * 2, - num_heads, - relative_pos_embeddings=True, - do_checkpoint=False, - ), - ) - self.unconditioned_embedding = nn.Parameter(torch.randn(1, model_channels, 1)) - self.conditioning_timestep_integrator = TimestepEmbedSequential( - DiffusionLayer(model_channels, dropout, num_heads), - DiffusionLayer(model_channels, dropout, num_heads), - DiffusionLayer(model_channels, dropout, num_heads), - ) - - self.integrating_conv = nn.Conv1d(model_channels * 2, model_channels, kernel_size=1) - self.mel_head = nn.Conv1d(model_channels, in_channels, kernel_size=3, padding=1) - - self.layers = nn.ModuleList( - [DiffusionLayer(model_channels, dropout, num_heads) for _ in range(num_layers)] - + [ - ResBlock( - model_channels, - model_channels, - dropout, - dims=1, - use_scale_shift_norm=True, - ) - for _ in range(3) - ] - ) - - self.out = nn.Sequential( - normalization(model_channels), - nn.SiLU(), - nn.Conv1d(model_channels, out_channels, 3, padding=1), - ) - - def get_grad_norm_parameter_groups(self): - groups = { - "minicoder": list(self.contextual_embedder.parameters()), - "layers": list(self.layers.parameters()), - "code_converters": list(self.code_embedding.parameters()) - + list(self.code_converter.parameters()) - + list(self.latent_conditioner.parameters()) - + list(self.latent_conditioner.parameters()), - "timestep_integrator": list(self.conditioning_timestep_integrator.parameters()) - + list(self.integrating_conv.parameters()), - "time_embed": list(self.time_embed.parameters()), - } - return groups - - def get_conditioning(self, conditioning_input): - speech_conditioning_input = ( - conditioning_input.unsqueeze(1) if len(conditioning_input.shape) == 3 else conditioning_input - ) - conds = [] - for j in range(speech_conditioning_input.shape[1]): - conds.append(self.contextual_embedder(speech_conditioning_input[:, j])) - conds = torch.cat(conds, dim=-1) - conds = conds.mean(dim=-1) - return conds - - def timestep_independent( - self, - aligned_conditioning, - conditioning_latent, - expected_seq_len, - return_code_pred, - ): - # Shuffle aligned_latent to BxCxS format - if is_latent(aligned_conditioning): - aligned_conditioning = aligned_conditioning.permute(0, 2, 1) - - cond_scale, cond_shift = torch.chunk(conditioning_latent, 2, dim=1) - if is_latent(aligned_conditioning): - code_emb = self.latent_conditioner(aligned_conditioning) - else: - code_emb = self.code_embedding(aligned_conditioning).permute(0, 2, 1) - code_emb = self.code_converter(code_emb) - code_emb = self.code_norm(code_emb) * (1 + cond_scale.unsqueeze(-1)) + cond_shift.unsqueeze(-1) - - unconditioned_batches = torch.zeros((code_emb.shape[0], 1, 1), device=code_emb.device) - # Mask out the conditioning branch for whole batch elements, implementing something similar to classifier-free guidance. - if self.training and self.unconditioned_percentage > 0: - unconditioned_batches = ( - torch.rand((code_emb.shape[0], 1, 1), device=code_emb.device) < self.unconditioned_percentage - ) - code_emb = torch.where( - unconditioned_batches, - self.unconditioned_embedding.repeat(aligned_conditioning.shape[0], 1, 1), - code_emb, - ) - expanded_code_emb = F.interpolate(code_emb, size=expected_seq_len, mode="nearest") - - if not return_code_pred: - return expanded_code_emb - else: - mel_pred = self.mel_head(expanded_code_emb) - # Multiply mel_pred by !unconditioned_branches, which drops the gradient on unconditioned branches. This is because we don't want that gradient being used to train parameters through the codes_embedder as it unbalances contributions to that network from the MSE loss. - mel_pred = mel_pred * unconditioned_batches.logical_not() - return expanded_code_emb, mel_pred - - def forward( - self, - x, - timesteps, - aligned_conditioning=None, - conditioning_latent=None, - precomputed_aligned_embeddings=None, - conditioning_free=False, - return_code_pred=False, - ): - """ - Apply the model to an input batch. - - :param x: an [N x C x ...] Tensor of inputs. - :param timesteps: a 1-D batch of timesteps. - :param aligned_conditioning: an aligned latent or sequence of tokens providing useful data about the sample to be produced. - :param conditioning_latent: a pre-computed conditioning latent; see get_conditioning(). - :param precomputed_aligned_embeddings: Embeddings returned from self.timestep_independent() - :param conditioning_free: When set, all conditioning inputs (including tokens and conditioning_input) will not be considered. - :return: an [N x C x ...] Tensor of outputs. - """ - assert precomputed_aligned_embeddings is not None or ( - aligned_conditioning is not None and conditioning_latent is not None - ) - assert not ( - return_code_pred and precomputed_aligned_embeddings is not None - ) # These two are mutually exclusive. - - unused_params = [] - if conditioning_free: - code_emb = self.unconditioned_embedding.repeat(x.shape[0], 1, x.shape[-1]) - unused_params.extend(list(self.code_converter.parameters()) + list(self.code_embedding.parameters())) - unused_params.extend(list(self.latent_conditioner.parameters())) - else: - if precomputed_aligned_embeddings is not None: - code_emb = precomputed_aligned_embeddings - else: - code_emb, mel_pred = self.timestep_independent( - aligned_conditioning, conditioning_latent, x.shape[-1], True - ) - if is_latent(aligned_conditioning): - unused_params.extend( - list(self.code_converter.parameters()) + list(self.code_embedding.parameters()) - ) - else: - unused_params.extend(list(self.latent_conditioner.parameters())) - - unused_params.append(self.unconditioned_embedding) - - time_emb = self.time_embed(timestep_embedding(timesteps, self.model_channels)) - code_emb = self.conditioning_timestep_integrator(code_emb, time_emb) - x = self.inp_block(x) - x = torch.cat([x, code_emb], dim=1) - x = self.integrating_conv(x) - for i, lyr in enumerate(self.layers): - # Do layer drop where applicable. Do not drop first and last layers. - if ( - self.training - and self.layer_drop > 0 - and i != 0 - and i != (len(self.layers) - 1) - and random.random() < self.layer_drop - ): - unused_params.extend(list(lyr.parameters())) - else: - # First and last blocks will have autocast disabled for improved precision. - with autocast(x.device.type, enabled=self.enable_fp16 and i != 0): - x = lyr(x, time_emb) - - x = x.float() - out = self.out(x) - - # Involve probabilistic or possibly unused parameters in loss so we don't get DDP errors. - extraneous_addition = 0 - for p in unused_params: - extraneous_addition = extraneous_addition + p.mean() - out = out + extraneous_addition * 0 - - if return_code_pred: - return out, mel_pred - return out - - -if __name__ == "__main__": - clip = torch.randn(2, 100, 400) - aligned_latent = torch.randn(2, 388, 512) - aligned_sequence = torch.randint(0, 8192, (2, 100)) - cond = torch.randn(2, 100, 400) - ts = torch.LongTensor([600, 600]) - model = DiffusionTts(512, layer_drop=0.3, unconditioned_percentage=0.5) - # Test with latent aligned conditioning - # o = model(clip, ts, aligned_latent, cond) - # Test with sequence aligned conditioning - o = model(clip, ts, aligned_sequence, cond) diff --git a/TTS/TTS/tts/layers/tortoise/dpm_solver.py b/TTS/TTS/tts/layers/tortoise/dpm_solver.py deleted file mode 100644 index c70888df42063e65dabf50eadb9a78813effa4e9..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/dpm_solver.py +++ /dev/null @@ -1,1562 +0,0 @@ -import math - -import torch - - -class NoiseScheduleVP: - def __init__( - self, - schedule="discrete", - betas=None, - alphas_cumprod=None, - continuous_beta_0=0.1, - continuous_beta_1=20.0, - dtype=torch.float32, - ): - """Create a wrapper class for the forward SDE (VP type). - - *** - Update: We support discrete-time diffusion models by implementing a picewise linear interpolation for log_alpha_t. - We recommend to use schedule='discrete' for the discrete-time diffusion models, especially for high-resolution images. - *** - - The forward SDE ensures that the condition distribution q_{t|0}(x_t | x_0) = N ( alpha_t * x_0, sigma_t^2 * I ). - We further define lambda_t = log(alpha_t) - log(sigma_t), which is the half-logSNR (described in the DPM-Solver paper). - Therefore, we implement the functions for computing alpha_t, sigma_t and lambda_t. For t in [0, T], we have: - - log_alpha_t = self.marginal_log_mean_coeff(t) - sigma_t = self.marginal_std(t) - lambda_t = self.marginal_lambda(t) - - Moreover, as lambda(t) is an invertible function, we also support its inverse function: - - t = self.inverse_lambda(lambda_t) - - =============================================================== - - We support both discrete-time DPMs (trained on n = 0, 1, ..., N-1) and continuous-time DPMs (trained on t in [t_0, T]). - - 1. For discrete-time DPMs: - - For discrete-time DPMs trained on n = 0, 1, ..., N-1, we convert the discrete steps to continuous time steps by: - t_i = (i + 1) / N - e.g. for N = 1000, we have t_0 = 1e-3 and T = t_{N-1} = 1. - We solve the corresponding diffusion ODE from time T = 1 to time t_0 = 1e-3. - - Args: - betas: A `torch.Tensor`. The beta array for the discrete-time DPM. (See the original DDPM paper for details) - alphas_cumprod: A `torch.Tensor`. The cumprod alphas for the discrete-time DPM. (See the original DDPM paper for details) - - Note that we always have alphas_cumprod = cumprod(1 - betas). Therefore, we only need to set one of `betas` and `alphas_cumprod`. - - **Important**: Please pay special attention for the args for `alphas_cumprod`: - The `alphas_cumprod` is the \hat{alpha_n} arrays in the notations of DDPM. Specifically, DDPMs assume that - q_{t_n | 0}(x_{t_n} | x_0) = N ( \sqrt{\hat{alpha_n}} * x_0, (1 - \hat{alpha_n}) * I ). - Therefore, the notation \hat{alpha_n} is different from the notation alpha_t in DPM-Solver. In fact, we have - alpha_{t_n} = \sqrt{\hat{alpha_n}}, - and - log(alpha_{t_n}) = 0.5 * log(\hat{alpha_n}). - - - 2. For continuous-time DPMs: - - We support two types of VPSDEs: linear (DDPM) and cosine (improved-DDPM). The hyperparameters for the noise - schedule are the default settings in DDPM and improved-DDPM: - - Args: - beta_min: A `float` number. The smallest beta for the linear schedule. - beta_max: A `float` number. The largest beta for the linear schedule. - cosine_s: A `float` number. The hyperparameter in the cosine schedule. - cosine_beta_max: A `float` number. The hyperparameter in the cosine schedule. - T: A `float` number. The ending time of the forward process. - - =============================================================== - - Args: - schedule: A `str`. The noise schedule of the forward SDE. 'discrete' for discrete-time DPMs, - 'linear' or 'cosine' for continuous-time DPMs. - Returns: - A wrapper object of the forward SDE (VP type). - - =============================================================== - - Example: - - # For discrete-time DPMs, given betas (the beta array for n = 0, 1, ..., N - 1): - >>> ns = NoiseScheduleVP('discrete', betas=betas) - - # For discrete-time DPMs, given alphas_cumprod (the \hat{alpha_n} array for n = 0, 1, ..., N - 1): - >>> ns = NoiseScheduleVP('discrete', alphas_cumprod=alphas_cumprod) - - # For continuous-time DPMs (VPSDE), linear schedule: - >>> ns = NoiseScheduleVP('linear', continuous_beta_0=0.1, continuous_beta_1=20.) - - """ - - if schedule not in ["discrete", "linear", "cosine"]: - raise ValueError( - "Unsupported noise schedule {}. The schedule needs to be 'discrete' or 'linear' or 'cosine'".format( - schedule - ) - ) - - self.schedule = schedule - if schedule == "discrete": - if betas is not None: - log_alphas = 0.5 * torch.log(1 - betas).cumsum(dim=0) - else: - assert alphas_cumprod is not None - log_alphas = 0.5 * torch.log(alphas_cumprod) - self.total_N = len(log_alphas) - self.T = 1.0 - self.t_array = torch.linspace(0.0, 1.0, self.total_N + 1)[1:].reshape((1, -1)).to(dtype=dtype) - self.log_alpha_array = log_alphas.reshape( - ( - 1, - -1, - ) - ).to(dtype=dtype) - else: - self.total_N = 1000 - self.beta_0 = continuous_beta_0 - self.beta_1 = continuous_beta_1 - self.cosine_s = 0.008 - self.cosine_beta_max = 999.0 - self.cosine_t_max = ( - math.atan(self.cosine_beta_max * (1.0 + self.cosine_s) / math.pi) - * 2.0 - * (1.0 + self.cosine_s) - / math.pi - - self.cosine_s - ) - self.cosine_log_alpha_0 = math.log(math.cos(self.cosine_s / (1.0 + self.cosine_s) * math.pi / 2.0)) - self.schedule = schedule - if schedule == "cosine": - # For the cosine schedule, T = 1 will have numerical issues. So we manually set the ending time T. - # Note that T = 0.9946 may be not the optimal setting. However, we find it works well. - self.T = 0.9946 - else: - self.T = 1.0 - - def marginal_log_mean_coeff(self, t): - """ - Compute log(alpha_t) of a given continuous-time label t in [0, T]. - """ - if self.schedule == "discrete": - return interpolate_fn( - t.reshape((-1, 1)), - self.t_array.to(t.device), - self.log_alpha_array.to(t.device), - ).reshape((-1)) - elif self.schedule == "linear": - return -0.25 * t**2 * (self.beta_1 - self.beta_0) - 0.5 * t * self.beta_0 - elif self.schedule == "cosine": - - def log_alpha_fn(s): - return torch.log(torch.cos((s + self.cosine_s) / (1.0 + self.cosine_s) * math.pi / 2.0)) - - log_alpha_t = log_alpha_fn(t) - self.cosine_log_alpha_0 - return log_alpha_t - - def marginal_alpha(self, t): - """ - Compute alpha_t of a given continuous-time label t in [0, T]. - """ - return torch.exp(self.marginal_log_mean_coeff(t)) - - def marginal_std(self, t): - """ - Compute sigma_t of a given continuous-time label t in [0, T]. - """ - return torch.sqrt(1.0 - torch.exp(2.0 * self.marginal_log_mean_coeff(t))) - - def marginal_lambda(self, t): - """ - Compute lambda_t = log(alpha_t) - log(sigma_t) of a given continuous-time label t in [0, T]. - """ - log_mean_coeff = self.marginal_log_mean_coeff(t) - log_std = 0.5 * torch.log(1.0 - torch.exp(2.0 * log_mean_coeff)) - return log_mean_coeff - log_std - - def inverse_lambda(self, lamb): - """ - Compute the continuous-time label t in [0, T] of a given half-logSNR lambda_t. - """ - if self.schedule == "linear": - tmp = 2.0 * (self.beta_1 - self.beta_0) * torch.logaddexp(-2.0 * lamb, torch.zeros((1,)).to(lamb)) - Delta = self.beta_0**2 + tmp - return tmp / (torch.sqrt(Delta) + self.beta_0) / (self.beta_1 - self.beta_0) - elif self.schedule == "discrete": - log_alpha = -0.5 * torch.logaddexp(torch.zeros((1,)).to(lamb.device), -2.0 * lamb) - t = interpolate_fn( - log_alpha.reshape((-1, 1)), - torch.flip(self.log_alpha_array.to(lamb.device), [1]), - torch.flip(self.t_array.to(lamb.device), [1]), - ) - return t.reshape((-1,)) - else: - log_alpha = -0.5 * torch.logaddexp(-2.0 * lamb, torch.zeros((1,)).to(lamb)) - - def t_fn(log_alpha_t): - return ( - torch.arccos(torch.exp(log_alpha_t + self.cosine_log_alpha_0)) - * 2.0 - * (1.0 + self.cosine_s) - / math.pi - - self.cosine_s - ) - - t = t_fn(log_alpha) - return t - - -def model_wrapper( - model, - noise_schedule, - model_type="noise", - model_kwargs={}, - guidance_type="uncond", - condition=None, - unconditional_condition=None, - guidance_scale=1.0, - classifier_fn=None, - classifier_kwargs={}, -): - """Create a wrapper function for the noise prediction model. - - DPM-Solver needs to solve the continuous-time diffusion ODEs. For DPMs trained on discrete-time labels, we need to - firstly wrap the model function to a noise prediction model that accepts the continuous time as the input. - - We support four types of the diffusion model by setting `model_type`: - - 1. "noise": noise prediction model. (Trained by predicting noise). - - 2. "x_start": data prediction model. (Trained by predicting the data x_0 at time 0). - - 3. "v": velocity prediction model. (Trained by predicting the velocity). - The "v" prediction is derivation detailed in Appendix D of [1], and is used in Imagen-Video [2]. - - [1] Salimans, Tim, and Jonathan Ho. "Progressive distillation for fast sampling of diffusion models." - arXiv preprint arXiv:2202.00512 (2022). - [2] Ho, Jonathan, et al. "Imagen Video: High Definition Video Generation with Diffusion Models." - arXiv preprint arXiv:2210.02303 (2022). - - 4. "score": marginal score function. (Trained by denoising score matching). - Note that the score function and the noise prediction model follows a simple relationship: - ``` - noise(x_t, t) = -sigma_t * score(x_t, t) - ``` - - We support three types of guided sampling by DPMs by setting `guidance_type`: - 1. "uncond": unconditional sampling by DPMs. - The input `model` has the following format: - `` - model(x, t_input, **model_kwargs) -> noise | x_start | v | score - `` - - 2. "classifier": classifier guidance sampling [3] by DPMs and another classifier. - The input `model` has the following format: - `` - model(x, t_input, **model_kwargs) -> noise | x_start | v | score - `` - - The input `classifier_fn` has the following format: - `` - classifier_fn(x, t_input, cond, **classifier_kwargs) -> logits(x, t_input, cond) - `` - - [3] P. Dhariwal and A. Q. Nichol, "Diffusion models beat GANs on image synthesis," - in Advances in Neural Information Processing Systems, vol. 34, 2021, pp. 8780-8794. - - 3. "classifier-free": classifier-free guidance sampling by conditional DPMs. - The input `model` has the following format: - `` - model(x, t_input, cond, **model_kwargs) -> noise | x_start | v | score - `` - And if cond == `unconditional_condition`, the model output is the unconditional DPM output. - - [4] Ho, Jonathan, and Tim Salimans. "Classifier-free diffusion guidance." - arXiv preprint arXiv:2207.12598 (2022). - - - The `t_input` is the time label of the model, which may be discrete-time labels (i.e. 0 to 999) - or continuous-time labels (i.e. epsilon to T). - - We wrap the model function to accept only `x` and `t_continuous` as inputs, and outputs the predicted noise: - `` - def model_fn(x, t_continuous) -> noise: - t_input = get_model_input_time(t_continuous) - return noise_pred(model, x, t_input, **model_kwargs) - `` - where `t_continuous` is the continuous time labels (i.e. epsilon to T). And we use `model_fn` for DPM-Solver. - - =============================================================== - - Args: - model: A diffusion model with the corresponding format described above. - noise_schedule: A noise schedule object, such as NoiseScheduleVP. - model_type: A `str`. The parameterization type of the diffusion model. - "noise" or "x_start" or "v" or "score". - model_kwargs: A `dict`. A dict for the other inputs of the model function. - guidance_type: A `str`. The type of the guidance for sampling. - "uncond" or "classifier" or "classifier-free". - condition: A pytorch tensor. The condition for the guided sampling. - Only used for "classifier" or "classifier-free" guidance type. - unconditional_condition: A pytorch tensor. The condition for the unconditional sampling. - Only used for "classifier-free" guidance type. - guidance_scale: A `float`. The scale for the guided sampling. - classifier_fn: A classifier function. Only used for the classifier guidance. - classifier_kwargs: A `dict`. A dict for the other inputs of the classifier function. - Returns: - A noise prediction model that accepts the noised data and the continuous time as the inputs. - """ - - def get_model_input_time(t_continuous): - """ - Convert the continuous-time `t_continuous` (in [epsilon, T]) to the model input time. - For discrete-time DPMs, we convert `t_continuous` in [1 / N, 1] to `t_input` in [0, 1000 * (N - 1) / N]. - For continuous-time DPMs, we just use `t_continuous`. - """ - if noise_schedule.schedule == "discrete": - return (t_continuous - 1.0 / noise_schedule.total_N) * 1000.0 - else: - return t_continuous - - def noise_pred_fn(x, t_continuous, cond=None): - t_input = get_model_input_time(t_continuous) - if cond is None: - output = model(x, t_input, **model_kwargs) - else: - output = model(x, t_input, cond, **model_kwargs) - if model_type == "noise": - return output - elif model_type == "x_start": - alpha_t, sigma_t = noise_schedule.marginal_alpha(t_continuous), noise_schedule.marginal_std(t_continuous) - return (x - alpha_t * output) / sigma_t - elif model_type == "v": - alpha_t, sigma_t = noise_schedule.marginal_alpha(t_continuous), noise_schedule.marginal_std(t_continuous) - return alpha_t * output + sigma_t * x - elif model_type == "score": - sigma_t = noise_schedule.marginal_std(t_continuous) - return -sigma_t * output - - def cond_grad_fn(x, t_input): - """ - Compute the gradient of the classifier, i.e. nabla_{x} log p_t(cond | x_t). - """ - with torch.enable_grad(): - x_in = x.detach().requires_grad_(True) - log_prob = classifier_fn(x_in, t_input, condition, **classifier_kwargs) - return torch.autograd.grad(log_prob.sum(), x_in)[0] - - def model_fn(x, t_continuous): - """ - The noise predicition model function that is used for DPM-Solver. - """ - if guidance_type == "uncond": - return noise_pred_fn(x, t_continuous) - elif guidance_type == "classifier": - assert classifier_fn is not None - t_input = get_model_input_time(t_continuous) - cond_grad = cond_grad_fn(x, t_input) - sigma_t = noise_schedule.marginal_std(t_continuous) - noise = noise_pred_fn(x, t_continuous) - return noise - guidance_scale * sigma_t * cond_grad - elif guidance_type == "classifier-free": - if guidance_scale == 1.0 or unconditional_condition is None: - return noise_pred_fn(x, t_continuous, cond=condition) - else: - x_in = torch.cat([x] * 2) - t_in = torch.cat([t_continuous] * 2) - c_in = torch.cat([unconditional_condition, condition]) - noise_uncond, noise = noise_pred_fn(x_in, t_in, cond=c_in).chunk(2) - return noise_uncond + guidance_scale * (noise - noise_uncond) - - assert model_type in ["noise", "x_start", "v", "score"] - assert guidance_type in ["uncond", "classifier", "classifier-free"] - return model_fn - - -class DPM_Solver: - def __init__( - self, - model_fn, - noise_schedule, - algorithm_type="dpmsolver++", - correcting_x0_fn=None, - correcting_xt_fn=None, - thresholding_max_val=1.0, - dynamic_thresholding_ratio=0.995, - ): - """Construct a DPM-Solver. - - We support both DPM-Solver (`algorithm_type="dpmsolver"`) and DPM-Solver++ (`algorithm_type="dpmsolver++"`). - - We also support the "dynamic thresholding" method in Imagen[1]. For pixel-space diffusion models, you - can set both `algorithm_type="dpmsolver++"` and `correcting_x0_fn="dynamic_thresholding"` to use the - dynamic thresholding. The "dynamic thresholding" can greatly improve the sample quality for pixel-space - DPMs with large guidance scales. Note that the thresholding method is **unsuitable** for latent-space - DPMs (such as stable-diffusion). - - To support advanced algorithms in image-to-image applications, we also support corrector functions for - both x0 and xt. - - Args: - model_fn: A noise prediction model function which accepts the continuous-time input (t in [epsilon, T]): - `` - def model_fn(x, t_continuous): - return noise - `` - The shape of `x` is `(batch_size, **shape)`, and the shape of `t_continuous` is `(batch_size,)`. - noise_schedule: A noise schedule object, such as NoiseScheduleVP. - algorithm_type: A `str`. Either "dpmsolver" or "dpmsolver++". - correcting_x0_fn: A `str` or a function with the following format: - ``` - def correcting_x0_fn(x0, t): - x0_new = ... - return x0_new - ``` - This function is to correct the outputs of the data prediction model at each sampling step. e.g., - ``` - x0_pred = data_pred_model(xt, t) - if correcting_x0_fn is not None: - x0_pred = correcting_x0_fn(x0_pred, t) - xt_1 = update(x0_pred, xt, t) - ``` - If `correcting_x0_fn="dynamic_thresholding"`, we use the dynamic thresholding proposed in Imagen[1]. - correcting_xt_fn: A function with the following format: - ``` - def correcting_xt_fn(xt, t, step): - x_new = ... - return x_new - ``` - This function is to correct the intermediate samples xt at each sampling step. e.g., - ``` - xt = ... - xt = correcting_xt_fn(xt, t, step) - ``` - thresholding_max_val: A `float`. The max value for thresholding. - Valid only when use `dpmsolver++` and `correcting_x0_fn="dynamic_thresholding"`. - dynamic_thresholding_ratio: A `float`. The ratio for dynamic thresholding (see Imagen[1] for details). - Valid only when use `dpmsolver++` and `correcting_x0_fn="dynamic_thresholding"`. - - [1] Chitwan Saharia, William Chan, Saurabh Saxena, Lala Li, Jay Whang, Emily Denton, Seyed Kamyar Seyed Ghasemipour, - Burcu Karagol Ayan, S Sara Mahdavi, Rapha Gontijo Lopes, et al. Photorealistic text-to-image diffusion models - with deep language understanding. arXiv preprint arXiv:2205.11487, 2022b. - """ - self.model = lambda x, t: model_fn(x, t.expand((x.shape[0]))) - self.noise_schedule = noise_schedule - assert algorithm_type in ["dpmsolver", "dpmsolver++"] - self.algorithm_type = algorithm_type - if correcting_x0_fn == "dynamic_thresholding": - self.correcting_x0_fn = self.dynamic_thresholding_fn - else: - self.correcting_x0_fn = correcting_x0_fn - self.correcting_xt_fn = correcting_xt_fn - self.dynamic_thresholding_ratio = dynamic_thresholding_ratio - self.thresholding_max_val = thresholding_max_val - - def dynamic_thresholding_fn(self, x0, t): - """ - The dynamic thresholding method. - """ - dims = x0.dim() - p = self.dynamic_thresholding_ratio - s = torch.quantile(torch.abs(x0).reshape((x0.shape[0], -1)), p, dim=1) - s = expand_dims( - torch.maximum(s, self.thresholding_max_val * torch.ones_like(s).to(s.device)), - dims, - ) - x0 = torch.clamp(x0, -s, s) / s - return x0 - - def noise_prediction_fn(self, x, t): - """ - Return the noise prediction model. - """ - return self.model(x, t) - - def data_prediction_fn(self, x, t): - """ - Return the data prediction model (with corrector). - """ - noise = self.noise_prediction_fn(x, t) - alpha_t, sigma_t = self.noise_schedule.marginal_alpha(t), self.noise_schedule.marginal_std(t) - x0 = (x - sigma_t * noise) / alpha_t - if self.correcting_x0_fn is not None: - x0 = self.correcting_x0_fn(x0, t) - return x0 - - def model_fn(self, x, t): - """ - Convert the model to the noise prediction model or the data prediction model. - """ - if self.algorithm_type == "dpmsolver++": - return self.data_prediction_fn(x, t) - else: - return self.noise_prediction_fn(x, t) - - def get_time_steps(self, skip_type, t_T, t_0, N, device): - """Compute the intermediate time steps for sampling. - - Args: - skip_type: A `str`. The type for the spacing of the time steps. We support three types: - - 'logSNR': uniform logSNR for the time steps. - - 'time_uniform': uniform time for the time steps. (**Recommended for high-resolutional data**.) - - 'time_quadratic': quadratic time for the time steps. (Used in DDIM for low-resolutional data.) - t_T: A `float`. The starting time of the sampling (default is T). - t_0: A `float`. The ending time of the sampling (default is epsilon). - N: A `int`. The total number of the spacing of the time steps. - device: A torch device. - Returns: - A pytorch tensor of the time steps, with the shape (N + 1,). - """ - if skip_type == "logSNR": - lambda_T = self.noise_schedule.marginal_lambda(torch.tensor(t_T).to(device)) - lambda_0 = self.noise_schedule.marginal_lambda(torch.tensor(t_0).to(device)) - logSNR_steps = torch.linspace(lambda_T.cpu().item(), lambda_0.cpu().item(), N + 1).to(device) - return self.noise_schedule.inverse_lambda(logSNR_steps) - elif skip_type == "time_uniform": - return torch.linspace(t_T, t_0, N + 1).to(device) - elif skip_type == "time_quadratic": - t_order = 2 - t = torch.linspace(t_T ** (1.0 / t_order), t_0 ** (1.0 / t_order), N + 1).pow(t_order).to(device) - return t - else: - raise ValueError( - "Unsupported skip_type {}, need to be 'logSNR' or 'time_uniform' or 'time_quadratic'".format(skip_type) - ) - - def get_orders_and_timesteps_for_singlestep_solver(self, steps, order, skip_type, t_T, t_0, device): - """ - Get the order of each step for sampling by the singlestep DPM-Solver. - - We combine both DPM-Solver-1,2,3 to use all the function evaluations, which is named as "DPM-Solver-fast". - Given a fixed number of function evaluations by `steps`, the sampling procedure by DPM-Solver-fast is: - - If order == 1: - We take `steps` of DPM-Solver-1 (i.e. DDIM). - - If order == 2: - - Denote K = (steps // 2). We take K or (K + 1) intermediate time steps for sampling. - - If steps % 2 == 0, we use K steps of DPM-Solver-2. - - If steps % 2 == 1, we use K steps of DPM-Solver-2 and 1 step of DPM-Solver-1. - - If order == 3: - - Denote K = (steps // 3 + 1). We take K intermediate time steps for sampling. - - If steps % 3 == 0, we use (K - 2) steps of DPM-Solver-3, and 1 step of DPM-Solver-2 and 1 step of DPM-Solver-1. - - If steps % 3 == 1, we use (K - 1) steps of DPM-Solver-3 and 1 step of DPM-Solver-1. - - If steps % 3 == 2, we use (K - 1) steps of DPM-Solver-3 and 1 step of DPM-Solver-2. - - ============================================ - Args: - order: A `int`. The max order for the solver (2 or 3). - steps: A `int`. The total number of function evaluations (NFE). - skip_type: A `str`. The type for the spacing of the time steps. We support three types: - - 'logSNR': uniform logSNR for the time steps. - - 'time_uniform': uniform time for the time steps. (**Recommended for high-resolutional data**.) - - 'time_quadratic': quadratic time for the time steps. (Used in DDIM for low-resolutional data.) - t_T: A `float`. The starting time of the sampling (default is T). - t_0: A `float`. The ending time of the sampling (default is epsilon). - device: A torch device. - Returns: - orders: A list of the solver order of each step. - """ - if order == 3: - K = steps // 3 + 1 - if steps % 3 == 0: - orders = [ - 3, - ] * ( - K - 2 - ) + [2, 1] - elif steps % 3 == 1: - orders = [ - 3, - ] * ( - K - 1 - ) + [1] - else: - orders = [ - 3, - ] * ( - K - 1 - ) + [2] - elif order == 2: - if steps % 2 == 0: - K = steps // 2 - orders = [ - 2, - ] * K - else: - K = steps // 2 + 1 - orders = [ - 2, - ] * ( - K - 1 - ) + [1] - elif order == 1: - K = 1 - orders = [ - 1, - ] * steps - else: - raise ValueError("'order' must be '1' or '2' or '3'.") - if skip_type == "logSNR": - # To reproduce the results in DPM-Solver paper - timesteps_outer = self.get_time_steps(skip_type, t_T, t_0, K, device) - else: - timesteps_outer = self.get_time_steps(skip_type, t_T, t_0, steps, device)[ - torch.cumsum( - torch.tensor( - [ - 0, - ] - + orders - ), - 0, - ).to(device) - ] - return timesteps_outer, orders - - def denoise_to_zero_fn(self, x, s): - """ - Denoise at the final step, which is equivalent to solve the ODE from lambda_s to infty by first-order discretization. - """ - return self.data_prediction_fn(x, s) - - def dpm_solver_first_update(self, x, s, t, model_s=None, return_intermediate=False): - """ - DPM-Solver-1 (equivalent to DDIM) from time `s` to time `t`. - - Args: - x: A pytorch tensor. The initial value at time `s`. - s: A pytorch tensor. The starting time, with the shape (1,). - t: A pytorch tensor. The ending time, with the shape (1,). - model_s: A pytorch tensor. The model function evaluated at time `s`. - If `model_s` is None, we evaluate the model by `x` and `s`; otherwise we directly use it. - return_intermediate: A `bool`. If true, also return the model value at time `s`. - Returns: - x_t: A pytorch tensor. The approximated solution at time `t`. - """ - ns = self.noise_schedule - dims = x.dim() - lambda_s, lambda_t = ns.marginal_lambda(s), ns.marginal_lambda(t) - h = lambda_t - lambda_s - log_alpha_s, log_alpha_t = ns.marginal_log_mean_coeff(s), ns.marginal_log_mean_coeff(t) - sigma_s, sigma_t = ns.marginal_std(s), ns.marginal_std(t) - alpha_t = torch.exp(log_alpha_t) - - if self.algorithm_type == "dpmsolver++": - phi_1 = torch.expm1(-h) - if model_s is None: - model_s = self.model_fn(x, s) - x_t = sigma_t / sigma_s * x - alpha_t * phi_1 * model_s - if return_intermediate: - return x_t, {"model_s": model_s} - else: - return x_t - else: - phi_1 = torch.expm1(h) - if model_s is None: - model_s = self.model_fn(x, s) - x_t = torch.exp(log_alpha_t - log_alpha_s) * x - (sigma_t * phi_1) * model_s - if return_intermediate: - return x_t, {"model_s": model_s} - else: - return x_t - - def singlestep_dpm_solver_second_update( - self, - x, - s, - t, - r1=0.5, - model_s=None, - return_intermediate=False, - solver_type="dpmsolver", - ): - """ - Singlestep solver DPM-Solver-2 from time `s` to time `t`. - - Args: - x: A pytorch tensor. The initial value at time `s`. - s: A pytorch tensor. The starting time, with the shape (1,). - t: A pytorch tensor. The ending time, with the shape (1,). - r1: A `float`. The hyperparameter of the second-order solver. - model_s: A pytorch tensor. The model function evaluated at time `s`. - If `model_s` is None, we evaluate the model by `x` and `s`; otherwise we directly use it. - return_intermediate: A `bool`. If true, also return the model value at time `s` and `s1` (the intermediate time). - solver_type: either 'dpmsolver' or 'taylor'. The type for the high-order solvers. - The type slightly impacts the performance. We recommend to use 'dpmsolver' type. - Returns: - x_t: A pytorch tensor. The approximated solution at time `t`. - """ - if solver_type not in ["dpmsolver", "taylor"]: - raise ValueError("'solver_type' must be either 'dpmsolver' or 'taylor', got {}".format(solver_type)) - if r1 is None: - r1 = 0.5 - ns = self.noise_schedule - lambda_s, lambda_t = ns.marginal_lambda(s), ns.marginal_lambda(t) - h = lambda_t - lambda_s - lambda_s1 = lambda_s + r1 * h - s1 = ns.inverse_lambda(lambda_s1) - log_alpha_s, log_alpha_s1, log_alpha_t = ( - ns.marginal_log_mean_coeff(s), - ns.marginal_log_mean_coeff(s1), - ns.marginal_log_mean_coeff(t), - ) - sigma_s, sigma_s1, sigma_t = ( - ns.marginal_std(s), - ns.marginal_std(s1), - ns.marginal_std(t), - ) - alpha_s1, alpha_t = torch.exp(log_alpha_s1), torch.exp(log_alpha_t) - - if self.algorithm_type == "dpmsolver++": - phi_11 = torch.expm1(-r1 * h) - phi_1 = torch.expm1(-h) - - if model_s is None: - model_s = self.model_fn(x, s) - x_s1 = (sigma_s1 / sigma_s) * x - (alpha_s1 * phi_11) * model_s - model_s1 = self.model_fn(x_s1, s1) - if solver_type == "dpmsolver": - x_t = ( - (sigma_t / sigma_s) * x - - (alpha_t * phi_1) * model_s - - (0.5 / r1) * (alpha_t * phi_1) * (model_s1 - model_s) - ) - elif solver_type == "taylor": - x_t = ( - (sigma_t / sigma_s) * x - - (alpha_t * phi_1) * model_s - + (1.0 / r1) * (alpha_t * (phi_1 / h + 1.0)) * (model_s1 - model_s) - ) - else: - phi_11 = torch.expm1(r1 * h) - phi_1 = torch.expm1(h) - - if model_s is None: - model_s = self.model_fn(x, s) - x_s1 = torch.exp(log_alpha_s1 - log_alpha_s) * x - (sigma_s1 * phi_11) * model_s - model_s1 = self.model_fn(x_s1, s1) - if solver_type == "dpmsolver": - x_t = ( - torch.exp(log_alpha_t - log_alpha_s) * x - - (sigma_t * phi_1) * model_s - - (0.5 / r1) * (sigma_t * phi_1) * (model_s1 - model_s) - ) - elif solver_type == "taylor": - x_t = ( - torch.exp(log_alpha_t - log_alpha_s) * x - - (sigma_t * phi_1) * model_s - - (1.0 / r1) * (sigma_t * (phi_1 / h - 1.0)) * (model_s1 - model_s) - ) - if return_intermediate: - return x_t, {"model_s": model_s, "model_s1": model_s1} - else: - return x_t - - def singlestep_dpm_solver_third_update( - self, - x, - s, - t, - r1=1.0 / 3.0, - r2=2.0 / 3.0, - model_s=None, - model_s1=None, - return_intermediate=False, - solver_type="dpmsolver", - ): - """ - Singlestep solver DPM-Solver-3 from time `s` to time `t`. - - Args: - x: A pytorch tensor. The initial value at time `s`. - s: A pytorch tensor. The starting time, with the shape (1,). - t: A pytorch tensor. The ending time, with the shape (1,). - r1: A `float`. The hyperparameter of the third-order solver. - r2: A `float`. The hyperparameter of the third-order solver. - model_s: A pytorch tensor. The model function evaluated at time `s`. - If `model_s` is None, we evaluate the model by `x` and `s`; otherwise we directly use it. - model_s1: A pytorch tensor. The model function evaluated at time `s1` (the intermediate time given by `r1`). - If `model_s1` is None, we evaluate the model at `s1`; otherwise we directly use it. - return_intermediate: A `bool`. If true, also return the model value at time `s`, `s1` and `s2` (the intermediate times). - solver_type: either 'dpmsolver' or 'taylor'. The type for the high-order solvers. - The type slightly impacts the performance. We recommend to use 'dpmsolver' type. - Returns: - x_t: A pytorch tensor. The approximated solution at time `t`. - """ - if solver_type not in ["dpmsolver", "taylor"]: - raise ValueError("'solver_type' must be either 'dpmsolver' or 'taylor', got {}".format(solver_type)) - if r1 is None: - r1 = 1.0 / 3.0 - if r2 is None: - r2 = 2.0 / 3.0 - ns = self.noise_schedule - lambda_s, lambda_t = ns.marginal_lambda(s), ns.marginal_lambda(t) - h = lambda_t - lambda_s - lambda_s1 = lambda_s + r1 * h - lambda_s2 = lambda_s + r2 * h - s1 = ns.inverse_lambda(lambda_s1) - s2 = ns.inverse_lambda(lambda_s2) - log_alpha_s, log_alpha_s1, log_alpha_s2, log_alpha_t = ( - ns.marginal_log_mean_coeff(s), - ns.marginal_log_mean_coeff(s1), - ns.marginal_log_mean_coeff(s2), - ns.marginal_log_mean_coeff(t), - ) - sigma_s, sigma_s1, sigma_s2, sigma_t = ( - ns.marginal_std(s), - ns.marginal_std(s1), - ns.marginal_std(s2), - ns.marginal_std(t), - ) - alpha_s1, alpha_s2, alpha_t = ( - torch.exp(log_alpha_s1), - torch.exp(log_alpha_s2), - torch.exp(log_alpha_t), - ) - - if self.algorithm_type == "dpmsolver++": - phi_11 = torch.expm1(-r1 * h) - phi_12 = torch.expm1(-r2 * h) - phi_1 = torch.expm1(-h) - phi_22 = torch.expm1(-r2 * h) / (r2 * h) + 1.0 - phi_2 = phi_1 / h + 1.0 - phi_3 = phi_2 / h - 0.5 - - if model_s is None: - model_s = self.model_fn(x, s) - if model_s1 is None: - x_s1 = (sigma_s1 / sigma_s) * x - (alpha_s1 * phi_11) * model_s - model_s1 = self.model_fn(x_s1, s1) - x_s2 = ( - (sigma_s2 / sigma_s) * x - - (alpha_s2 * phi_12) * model_s - + r2 / r1 * (alpha_s2 * phi_22) * (model_s1 - model_s) - ) - model_s2 = self.model_fn(x_s2, s2) - if solver_type == "dpmsolver": - x_t = ( - (sigma_t / sigma_s) * x - - (alpha_t * phi_1) * model_s - + (1.0 / r2) * (alpha_t * phi_2) * (model_s2 - model_s) - ) - elif solver_type == "taylor": - D1_0 = (1.0 / r1) * (model_s1 - model_s) - D1_1 = (1.0 / r2) * (model_s2 - model_s) - D1 = (r2 * D1_0 - r1 * D1_1) / (r2 - r1) - D2 = 2.0 * (D1_1 - D1_0) / (r2 - r1) - x_t = ( - (sigma_t / sigma_s) * x - - (alpha_t * phi_1) * model_s - + (alpha_t * phi_2) * D1 - - (alpha_t * phi_3) * D2 - ) - else: - phi_11 = torch.expm1(r1 * h) - phi_12 = torch.expm1(r2 * h) - phi_1 = torch.expm1(h) - phi_22 = torch.expm1(r2 * h) / (r2 * h) - 1.0 - phi_2 = phi_1 / h - 1.0 - phi_3 = phi_2 / h - 0.5 - - if model_s is None: - model_s = self.model_fn(x, s) - if model_s1 is None: - x_s1 = (torch.exp(log_alpha_s1 - log_alpha_s)) * x - (sigma_s1 * phi_11) * model_s - model_s1 = self.model_fn(x_s1, s1) - x_s2 = ( - (torch.exp(log_alpha_s2 - log_alpha_s)) * x - - (sigma_s2 * phi_12) * model_s - - r2 / r1 * (sigma_s2 * phi_22) * (model_s1 - model_s) - ) - model_s2 = self.model_fn(x_s2, s2) - if solver_type == "dpmsolver": - x_t = ( - (torch.exp(log_alpha_t - log_alpha_s)) * x - - (sigma_t * phi_1) * model_s - - (1.0 / r2) * (sigma_t * phi_2) * (model_s2 - model_s) - ) - elif solver_type == "taylor": - D1_0 = (1.0 / r1) * (model_s1 - model_s) - D1_1 = (1.0 / r2) * (model_s2 - model_s) - D1 = (r2 * D1_0 - r1 * D1_1) / (r2 - r1) - D2 = 2.0 * (D1_1 - D1_0) / (r2 - r1) - x_t = ( - (torch.exp(log_alpha_t - log_alpha_s)) * x - - (sigma_t * phi_1) * model_s - - (sigma_t * phi_2) * D1 - - (sigma_t * phi_3) * D2 - ) - - if return_intermediate: - return x_t, {"model_s": model_s, "model_s1": model_s1, "model_s2": model_s2} - else: - return x_t - - def multistep_dpm_solver_second_update(self, x, model_prev_list, t_prev_list, t, solver_type="dpmsolver"): - """ - Multistep solver DPM-Solver-2 from time `t_prev_list[-1]` to time `t`. - - Args: - x: A pytorch tensor. The initial value at time `s`. - model_prev_list: A list of pytorch tensor. The previous computed model values. - t_prev_list: A list of pytorch tensor. The previous times, each time has the shape (1,) - t: A pytorch tensor. The ending time, with the shape (1,). - solver_type: either 'dpmsolver' or 'taylor'. The type for the high-order solvers. - The type slightly impacts the performance. We recommend to use 'dpmsolver' type. - Returns: - x_t: A pytorch tensor. The approximated solution at time `t`. - """ - if solver_type not in ["dpmsolver", "taylor"]: - raise ValueError("'solver_type' must be either 'dpmsolver' or 'taylor', got {}".format(solver_type)) - ns = self.noise_schedule - model_prev_1, model_prev_0 = model_prev_list[-2], model_prev_list[-1] - t_prev_1, t_prev_0 = t_prev_list[-2], t_prev_list[-1] - lambda_prev_1, lambda_prev_0, lambda_t = ( - ns.marginal_lambda(t_prev_1), - ns.marginal_lambda(t_prev_0), - ns.marginal_lambda(t), - ) - log_alpha_prev_0, log_alpha_t = ns.marginal_log_mean_coeff(t_prev_0), ns.marginal_log_mean_coeff(t) - sigma_prev_0, sigma_t = ns.marginal_std(t_prev_0), ns.marginal_std(t) - alpha_t = torch.exp(log_alpha_t) - - h_0 = lambda_prev_0 - lambda_prev_1 - h = lambda_t - lambda_prev_0 - r0 = h_0 / h - D1_0 = (1.0 / r0) * (model_prev_0 - model_prev_1) - if self.algorithm_type == "dpmsolver++": - phi_1 = torch.expm1(-h) - if solver_type == "dpmsolver": - x_t = (sigma_t / sigma_prev_0) * x - (alpha_t * phi_1) * model_prev_0 - 0.5 * (alpha_t * phi_1) * D1_0 - elif solver_type == "taylor": - x_t = ( - (sigma_t / sigma_prev_0) * x - - (alpha_t * phi_1) * model_prev_0 - + (alpha_t * (phi_1 / h + 1.0)) * D1_0 - ) - else: - phi_1 = torch.expm1(h) - if solver_type == "dpmsolver": - x_t = ( - (torch.exp(log_alpha_t - log_alpha_prev_0)) * x - - (sigma_t * phi_1) * model_prev_0 - - 0.5 * (sigma_t * phi_1) * D1_0 - ) - elif solver_type == "taylor": - x_t = ( - (torch.exp(log_alpha_t - log_alpha_prev_0)) * x - - (sigma_t * phi_1) * model_prev_0 - - (sigma_t * (phi_1 / h - 1.0)) * D1_0 - ) - return x_t - - def multistep_dpm_solver_third_update(self, x, model_prev_list, t_prev_list, t, solver_type="dpmsolver"): - """ - Multistep solver DPM-Solver-3 from time `t_prev_list[-1]` to time `t`. - - Args: - x: A pytorch tensor. The initial value at time `s`. - model_prev_list: A list of pytorch tensor. The previous computed model values. - t_prev_list: A list of pytorch tensor. The previous times, each time has the shape (1,) - t: A pytorch tensor. The ending time, with the shape (1,). - solver_type: either 'dpmsolver' or 'taylor'. The type for the high-order solvers. - The type slightly impacts the performance. We recommend to use 'dpmsolver' type. - Returns: - x_t: A pytorch tensor. The approximated solution at time `t`. - """ - ns = self.noise_schedule - model_prev_2, model_prev_1, model_prev_0 = model_prev_list - t_prev_2, t_prev_1, t_prev_0 = t_prev_list - lambda_prev_2, lambda_prev_1, lambda_prev_0, lambda_t = ( - ns.marginal_lambda(t_prev_2), - ns.marginal_lambda(t_prev_1), - ns.marginal_lambda(t_prev_0), - ns.marginal_lambda(t), - ) - log_alpha_prev_0, log_alpha_t = ns.marginal_log_mean_coeff(t_prev_0), ns.marginal_log_mean_coeff(t) - sigma_prev_0, sigma_t = ns.marginal_std(t_prev_0), ns.marginal_std(t) - alpha_t = torch.exp(log_alpha_t) - - h_1 = lambda_prev_1 - lambda_prev_2 - h_0 = lambda_prev_0 - lambda_prev_1 - h = lambda_t - lambda_prev_0 - r0, r1 = h_0 / h, h_1 / h - D1_0 = (1.0 / r0) * (model_prev_0 - model_prev_1) - D1_1 = (1.0 / r1) * (model_prev_1 - model_prev_2) - D1 = D1_0 + (r0 / (r0 + r1)) * (D1_0 - D1_1) - D2 = (1.0 / (r0 + r1)) * (D1_0 - D1_1) - if self.algorithm_type == "dpmsolver++": - phi_1 = torch.expm1(-h) - phi_2 = phi_1 / h + 1.0 - phi_3 = phi_2 / h - 0.5 - x_t = ( - (sigma_t / sigma_prev_0) * x - - (alpha_t * phi_1) * model_prev_0 - + (alpha_t * phi_2) * D1 - - (alpha_t * phi_3) * D2 - ) - else: - phi_1 = torch.expm1(h) - phi_2 = phi_1 / h - 1.0 - phi_3 = phi_2 / h - 0.5 - x_t = ( - (torch.exp(log_alpha_t - log_alpha_prev_0)) * x - - (sigma_t * phi_1) * model_prev_0 - - (sigma_t * phi_2) * D1 - - (sigma_t * phi_3) * D2 - ) - return x_t - - def singlestep_dpm_solver_update( - self, - x, - s, - t, - order, - return_intermediate=False, - solver_type="dpmsolver", - r1=None, - r2=None, - ): - """ - Singlestep DPM-Solver with the order `order` from time `s` to time `t`. - - Args: - x: A pytorch tensor. The initial value at time `s`. - s: A pytorch tensor. The starting time, with the shape (1,). - t: A pytorch tensor. The ending time, with the shape (1,). - order: A `int`. The order of DPM-Solver. We only support order == 1 or 2 or 3. - return_intermediate: A `bool`. If true, also return the model value at time `s`, `s1` and `s2` (the intermediate times). - solver_type: either 'dpmsolver' or 'taylor'. The type for the high-order solvers. - The type slightly impacts the performance. We recommend to use 'dpmsolver' type. - r1: A `float`. The hyperparameter of the second-order or third-order solver. - r2: A `float`. The hyperparameter of the third-order solver. - Returns: - x_t: A pytorch tensor. The approximated solution at time `t`. - """ - if order == 1: - return self.dpm_solver_first_update(x, s, t, return_intermediate=return_intermediate) - elif order == 2: - return self.singlestep_dpm_solver_second_update( - x, - s, - t, - return_intermediate=return_intermediate, - solver_type=solver_type, - r1=r1, - ) - elif order == 3: - return self.singlestep_dpm_solver_third_update( - x, - s, - t, - return_intermediate=return_intermediate, - solver_type=solver_type, - r1=r1, - r2=r2, - ) - else: - raise ValueError("Solver order must be 1 or 2 or 3, got {}".format(order)) - - def multistep_dpm_solver_update(self, x, model_prev_list, t_prev_list, t, order, solver_type="dpmsolver"): - """ - Multistep DPM-Solver with the order `order` from time `t_prev_list[-1]` to time `t`. - - Args: - x: A pytorch tensor. The initial value at time `s`. - model_prev_list: A list of pytorch tensor. The previous computed model values. - t_prev_list: A list of pytorch tensor. The previous times, each time has the shape (1,) - t: A pytorch tensor. The ending time, with the shape (1,). - order: A `int`. The order of DPM-Solver. We only support order == 1 or 2 or 3. - solver_type: either 'dpmsolver' or 'taylor'. The type for the high-order solvers. - The type slightly impacts the performance. We recommend to use 'dpmsolver' type. - Returns: - x_t: A pytorch tensor. The approximated solution at time `t`. - """ - if order == 1: - return self.dpm_solver_first_update(x, t_prev_list[-1], t, model_s=model_prev_list[-1]) - elif order == 2: - return self.multistep_dpm_solver_second_update(x, model_prev_list, t_prev_list, t, solver_type=solver_type) - elif order == 3: - return self.multistep_dpm_solver_third_update(x, model_prev_list, t_prev_list, t, solver_type=solver_type) - else: - raise ValueError("Solver order must be 1 or 2 or 3, got {}".format(order)) - - def dpm_solver_adaptive( - self, - x, - order, - t_T, - t_0, - h_init=0.05, - atol=0.0078, - rtol=0.05, - theta=0.9, - t_err=1e-5, - solver_type="dpmsolver", - ): - """ - The adaptive step size solver based on singlestep DPM-Solver. - - Args: - x: A pytorch tensor. The initial value at time `t_T`. - order: A `int`. The (higher) order of the solver. We only support order == 2 or 3. - t_T: A `float`. The starting time of the sampling (default is T). - t_0: A `float`. The ending time of the sampling (default is epsilon). - h_init: A `float`. The initial step size (for logSNR). - atol: A `float`. The absolute tolerance of the solver. For image data, the default setting is 0.0078, followed [1]. - rtol: A `float`. The relative tolerance of the solver. The default setting is 0.05. - theta: A `float`. The safety hyperparameter for adapting the step size. The default setting is 0.9, followed [1]. - t_err: A `float`. The tolerance for the time. We solve the diffusion ODE until the absolute error between the - current time and `t_0` is less than `t_err`. The default setting is 1e-5. - solver_type: either 'dpmsolver' or 'taylor'. The type for the high-order solvers. - The type slightly impacts the performance. We recommend to use 'dpmsolver' type. - Returns: - x_0: A pytorch tensor. The approximated solution at time `t_0`. - - [1] A. Jolicoeur-Martineau, K. Li, R. Piché-Taillefer, T. Kachman, and I. Mitliagkas, "Gotta go fast when generating data with score-based models," arXiv preprint arXiv:2105.14080, 2021. - """ - ns = self.noise_schedule - s = t_T * torch.ones((1,)).to(x) - lambda_s = ns.marginal_lambda(s) - lambda_0 = ns.marginal_lambda(t_0 * torch.ones_like(s).to(x)) - h = h_init * torch.ones_like(s).to(x) - x_prev = x - nfe = 0 - if order == 2: - r1 = 0.5 - - def lower_update(x, s, t): - return self.dpm_solver_first_update(x, s, t, return_intermediate=True) - - def higher_update(x, s, t, **kwargs): - return self.singlestep_dpm_solver_second_update(x, s, t, r1=r1, solver_type=solver_type, **kwargs) - - elif order == 3: - r1, r2 = 1.0 / 3.0, 2.0 / 3.0 - - def lower_update(x, s, t): - return self.singlestep_dpm_solver_second_update( - x, s, t, r1=r1, return_intermediate=True, solver_type=solver_type - ) - - def higher_update(x, s, t, **kwargs): - return self.singlestep_dpm_solver_third_update(x, s, t, r1=r1, r2=r2, solver_type=solver_type, **kwargs) - - else: - raise ValueError("For adaptive step size solver, order must be 2 or 3, got {}".format(order)) - while torch.abs((s - t_0)).mean() > t_err: - t = ns.inverse_lambda(lambda_s + h) - x_lower, lower_noise_kwargs = lower_update(x, s, t) - x_higher = higher_update(x, s, t, **lower_noise_kwargs) - delta = torch.max( - torch.ones_like(x).to(x) * atol, - rtol * torch.max(torch.abs(x_lower), torch.abs(x_prev)), - ) - - def norm_fn(v): - return torch.sqrt(torch.square(v.reshape((v.shape[0], -1))).mean(dim=-1, keepdim=True)) - - E = norm_fn((x_higher - x_lower) / delta).max() - if torch.all(E <= 1.0): - x = x_higher - s = t - x_prev = x_lower - lambda_s = ns.marginal_lambda(s) - h = torch.min( - theta * h * torch.float_power(E, -1.0 / order).float(), - lambda_0 - lambda_s, - ) - nfe += order - print("adaptive solver nfe", nfe) - return x - - def add_noise(self, x, t, noise=None): - """ - Compute the noised input xt = alpha_t * x + sigma_t * noise. - - Args: - x: A `torch.Tensor` with shape `(batch_size, *shape)`. - t: A `torch.Tensor` with shape `(t_size,)`. - Returns: - xt with shape `(t_size, batch_size, *shape)`. - """ - alpha_t, sigma_t = self.noise_schedule.marginal_alpha(t), self.noise_schedule.marginal_std(t) - if noise is None: - noise = torch.randn((t.shape[0], *x.shape), device=x.device) - x = x.reshape((-1, *x.shape)) - xt = expand_dims(alpha_t, x.dim()) * x + expand_dims(sigma_t, x.dim()) * noise - if t.shape[0] == 1: - return xt.squeeze(0) - else: - return xt - - def inverse( - self, - x, - steps=20, - t_start=None, - t_end=None, - order=2, - skip_type="time_uniform", - method="multistep", - lower_order_final=True, - denoise_to_zero=False, - solver_type="dpmsolver", - atol=0.0078, - rtol=0.05, - return_intermediate=False, - ): - """ - Inverse the sample `x` from time `t_start` to `t_end` by DPM-Solver. - For discrete-time DPMs, we use `t_start=1/N`, where `N` is the total time steps during training. - """ - t_0 = 1.0 / self.noise_schedule.total_N if t_start is None else t_start - t_T = self.noise_schedule.T if t_end is None else t_end - assert ( - t_0 > 0 and t_T > 0 - ), "Time range needs to be greater than 0. For discrete-time DPMs, it needs to be in [1 / N, 1], where N is the length of betas array" - return self.sample( - x, - steps=steps, - t_start=t_0, - t_end=t_T, - order=order, - skip_type=skip_type, - method=method, - lower_order_final=lower_order_final, - denoise_to_zero=denoise_to_zero, - solver_type=solver_type, - atol=atol, - rtol=rtol, - return_intermediate=return_intermediate, - ) - - def sample( - self, - x, - steps=20, - t_start=None, - t_end=None, - order=2, - skip_type="time_uniform", - method="multistep", - lower_order_final=True, - denoise_to_zero=False, - solver_type="dpmsolver", - atol=0.0078, - rtol=0.05, - return_intermediate=False, - ): - """ - Compute the sample at time `t_end` by DPM-Solver, given the initial `x` at time `t_start`. - - ===================================================== - - We support the following algorithms for both noise prediction model and data prediction model: - - 'singlestep': - Singlestep DPM-Solver (i.e. "DPM-Solver-fast" in the paper), which combines different orders of singlestep DPM-Solver. - We combine all the singlestep solvers with order <= `order` to use up all the function evaluations (steps). - The total number of function evaluations (NFE) == `steps`. - Given a fixed NFE == `steps`, the sampling procedure is: - - If `order` == 1: - - Denote K = steps. We use K steps of DPM-Solver-1 (i.e. DDIM). - - If `order` == 2: - - Denote K = (steps // 2) + (steps % 2). We take K intermediate time steps for sampling. - - If steps % 2 == 0, we use K steps of singlestep DPM-Solver-2. - - If steps % 2 == 1, we use (K - 1) steps of singlestep DPM-Solver-2 and 1 step of DPM-Solver-1. - - If `order` == 3: - - Denote K = (steps // 3 + 1). We take K intermediate time steps for sampling. - - If steps % 3 == 0, we use (K - 2) steps of singlestep DPM-Solver-3, and 1 step of singlestep DPM-Solver-2 and 1 step of DPM-Solver-1. - - If steps % 3 == 1, we use (K - 1) steps of singlestep DPM-Solver-3 and 1 step of DPM-Solver-1. - - If steps % 3 == 2, we use (K - 1) steps of singlestep DPM-Solver-3 and 1 step of singlestep DPM-Solver-2. - - 'multistep': - Multistep DPM-Solver with the order of `order`. The total number of function evaluations (NFE) == `steps`. - We initialize the first `order` values by lower order multistep solvers. - Given a fixed NFE == `steps`, the sampling procedure is: - Denote K = steps. - - If `order` == 1: - - We use K steps of DPM-Solver-1 (i.e. DDIM). - - If `order` == 2: - - We firstly use 1 step of DPM-Solver-1, then use (K - 1) step of multistep DPM-Solver-2. - - If `order` == 3: - - We firstly use 1 step of DPM-Solver-1, then 1 step of multistep DPM-Solver-2, then (K - 2) step of multistep DPM-Solver-3. - - 'singlestep_fixed': - Fixed order singlestep DPM-Solver (i.e. DPM-Solver-1 or singlestep DPM-Solver-2 or singlestep DPM-Solver-3). - We use singlestep DPM-Solver-`order` for `order`=1 or 2 or 3, with total [`steps` // `order`] * `order` NFE. - - 'adaptive': - Adaptive step size DPM-Solver (i.e. "DPM-Solver-12" and "DPM-Solver-23" in the paper). - We ignore `steps` and use adaptive step size DPM-Solver with a higher order of `order`. - You can adjust the absolute tolerance `atol` and the relative tolerance `rtol` to balance the computatation costs - (NFE) and the sample quality. - - If `order` == 2, we use DPM-Solver-12 which combines DPM-Solver-1 and singlestep DPM-Solver-2. - - If `order` == 3, we use DPM-Solver-23 which combines singlestep DPM-Solver-2 and singlestep DPM-Solver-3. - - ===================================================== - - Some advices for choosing the algorithm: - - For **unconditional sampling** or **guided sampling with small guidance scale** by DPMs: - Use singlestep DPM-Solver or DPM-Solver++ ("DPM-Solver-fast" in the paper) with `order = 3`. - e.g., DPM-Solver: - >>> dpm_solver = DPM_Solver(model_fn, noise_schedule, algorithm_type="dpmsolver") - >>> x_sample = dpm_solver.sample(x, steps=steps, t_start=t_start, t_end=t_end, order=3, - skip_type='time_uniform', method='singlestep') - e.g., DPM-Solver++: - >>> dpm_solver = DPM_Solver(model_fn, noise_schedule, algorithm_type="dpmsolver++") - >>> x_sample = dpm_solver.sample(x, steps=steps, t_start=t_start, t_end=t_end, order=3, - skip_type='time_uniform', method='singlestep') - - For **guided sampling with large guidance scale** by DPMs: - Use multistep DPM-Solver with `algorithm_type="dpmsolver++"` and `order = 2`. - e.g. - >>> dpm_solver = DPM_Solver(model_fn, noise_schedule, algorithm_type="dpmsolver++") - >>> x_sample = dpm_solver.sample(x, steps=steps, t_start=t_start, t_end=t_end, order=2, - skip_type='time_uniform', method='multistep') - - We support three types of `skip_type`: - - 'logSNR': uniform logSNR for the time steps. **Recommended for low-resolutional images** - - 'time_uniform': uniform time for the time steps. **Recommended for high-resolutional images**. - - 'time_quadratic': quadratic time for the time steps. - - ===================================================== - Args: - x: A pytorch tensor. The initial value at time `t_start` - e.g. if `t_start` == T, then `x` is a sample from the standard normal distribution. - steps: A `int`. The total number of function evaluations (NFE). - t_start: A `float`. The starting time of the sampling. - If `T` is None, we use self.noise_schedule.T (default is 1.0). - t_end: A `float`. The ending time of the sampling. - If `t_end` is None, we use 1. / self.noise_schedule.total_N. - e.g. if total_N == 1000, we have `t_end` == 1e-3. - For discrete-time DPMs: - - We recommend `t_end` == 1. / self.noise_schedule.total_N. - For continuous-time DPMs: - - We recommend `t_end` == 1e-3 when `steps` <= 15; and `t_end` == 1e-4 when `steps` > 15. - order: A `int`. The order of DPM-Solver. - skip_type: A `str`. The type for the spacing of the time steps. 'time_uniform' or 'logSNR' or 'time_quadratic'. - method: A `str`. The method for sampling. 'singlestep' or 'multistep' or 'singlestep_fixed' or 'adaptive'. - denoise_to_zero: A `bool`. Whether to denoise to time 0 at the final step. - Default is `False`. If `denoise_to_zero` is `True`, the total NFE is (`steps` + 1). - - This trick is firstly proposed by DDPM (https://arxiv.org/abs/2006.11239) and - score_sde (https://arxiv.org/abs/2011.13456). Such trick can improve the FID - for diffusion models sampling by diffusion SDEs for low-resolutional images - (such as CIFAR-10). However, we observed that such trick does not matter for - high-resolutional images. As it needs an additional NFE, we do not recommend - it for high-resolutional images. - lower_order_final: A `bool`. Whether to use lower order solvers at the final steps. - Only valid for `method=multistep` and `steps < 15`. We empirically find that - this trick is a key to stabilizing the sampling by DPM-Solver with very few steps - (especially for steps <= 10). So we recommend to set it to be `True`. - solver_type: A `str`. The taylor expansion type for the solver. `dpmsolver` or `taylor`. We recommend `dpmsolver`. - atol: A `float`. The absolute tolerance of the adaptive step size solver. Valid when `method` == 'adaptive'. - rtol: A `float`. The relative tolerance of the adaptive step size solver. Valid when `method` == 'adaptive'. - return_intermediate: A `bool`. Whether to save the xt at each step. - When set to `True`, method returns a tuple (x0, intermediates); when set to False, method returns only x0. - Returns: - x_end: A pytorch tensor. The approximated solution at time `t_end`. - - """ - t_0 = 1.0 / self.noise_schedule.total_N if t_end is None else t_end - t_T = self.noise_schedule.T if t_start is None else t_start - assert ( - t_0 > 0 and t_T > 0 - ), "Time range needs to be greater than 0. For discrete-time DPMs, it needs to be in [1 / N, 1], where N is the length of betas array" - if return_intermediate: - assert method in [ - "multistep", - "singlestep", - "singlestep_fixed", - ], "Cannot use adaptive solver when saving intermediate values" - if self.correcting_xt_fn is not None: - assert method in [ - "multistep", - "singlestep", - "singlestep_fixed", - ], "Cannot use adaptive solver when correcting_xt_fn is not None" - device = x.device - intermediates = [] - with torch.no_grad(): - if method == "adaptive": - x = self.dpm_solver_adaptive( - x, - order=order, - t_T=t_T, - t_0=t_0, - atol=atol, - rtol=rtol, - solver_type=solver_type, - ) - elif method == "multistep": - assert steps >= order - timesteps = self.get_time_steps(skip_type=skip_type, t_T=t_T, t_0=t_0, N=steps, device=device) - assert timesteps.shape[0] - 1 == steps - # Init the initial values. - step = 0 - t = timesteps[step] - t_prev_list = [t] - model_prev_list = [self.model_fn(x, t)] - if self.correcting_xt_fn is not None: - x = self.correcting_xt_fn(x, t, step) - if return_intermediate: - intermediates.append(x) - # Init the first `order` values by lower order multistep DPM-Solver. - for step in range(1, order): - t = timesteps[step] - x = self.multistep_dpm_solver_update( - x, - model_prev_list, - t_prev_list, - t, - step, - solver_type=solver_type, - ) - if self.correcting_xt_fn is not None: - x = self.correcting_xt_fn(x, t, step) - if return_intermediate: - intermediates.append(x) - t_prev_list.append(t) - model_prev_list.append(self.model_fn(x, t)) - # Compute the remaining values by `order`-th order multistep DPM-Solver. - for step in range(order, steps + 1): - t = timesteps[step] - # We only use lower order for steps < 10 - if lower_order_final and steps < 10: - step_order = min(order, steps + 1 - step) - else: - step_order = order - x = self.multistep_dpm_solver_update( - x, - model_prev_list, - t_prev_list, - t, - step_order, - solver_type=solver_type, - ) - if self.correcting_xt_fn is not None: - x = self.correcting_xt_fn(x, t, step) - if return_intermediate: - intermediates.append(x) - for i in range(order - 1): - t_prev_list[i] = t_prev_list[i + 1] - model_prev_list[i] = model_prev_list[i + 1] - t_prev_list[-1] = t - # We do not need to evaluate the final model value. - if step < steps: - model_prev_list[-1] = self.model_fn(x, t) - elif method in ["singlestep", "singlestep_fixed"]: - if method == "singlestep": - ( - timesteps_outer, - orders, - ) = self.get_orders_and_timesteps_for_singlestep_solver( - steps=steps, - order=order, - skip_type=skip_type, - t_T=t_T, - t_0=t_0, - device=device, - ) - elif method == "singlestep_fixed": - K = steps // order - orders = [ - order, - ] * K - timesteps_outer = self.get_time_steps(skip_type=skip_type, t_T=t_T, t_0=t_0, N=K, device=device) - for step, order in enumerate(orders): - s, t = timesteps_outer[step], timesteps_outer[step + 1] - timesteps_inner = self.get_time_steps( - skip_type=skip_type, - t_T=s.item(), - t_0=t.item(), - N=order, - device=device, - ) - lambda_inner = self.noise_schedule.marginal_lambda(timesteps_inner) - h = lambda_inner[-1] - lambda_inner[0] - r1 = None if order <= 1 else (lambda_inner[1] - lambda_inner[0]) / h - r2 = None if order <= 2 else (lambda_inner[2] - lambda_inner[0]) / h - x = self.singlestep_dpm_solver_update(x, s, t, order, solver_type=solver_type, r1=r1, r2=r2) - if self.correcting_xt_fn is not None: - x = self.correcting_xt_fn(x, t, step) - if return_intermediate: - intermediates.append(x) - else: - raise ValueError("Got wrong method {}".format(method)) - if denoise_to_zero: - t = torch.ones((1,)).to(device) * t_0 - x = self.denoise_to_zero_fn(x, t) - if self.correcting_xt_fn is not None: - x = self.correcting_xt_fn(x, t, step + 1) - if return_intermediate: - intermediates.append(x) - if return_intermediate: - return x, intermediates - else: - return x - - -############################################################# -# other utility functions -############################################################# - - -def interpolate_fn(x, xp, yp): - """ - A piecewise linear function y = f(x), using xp and yp as keypoints. - We implement f(x) in a differentiable way (i.e. applicable for autograd). - The function f(x) is well-defined for all x-axis. (For x beyond the bounds of xp, we use the outmost points of xp to define the linear function.) - - Args: - x: PyTorch tensor with shape [N, C], where N is the batch size, C is the number of channels (we use C = 1 for DPM-Solver). - xp: PyTorch tensor with shape [C, K], where K is the number of keypoints. - yp: PyTorch tensor with shape [C, K]. - Returns: - The function values f(x), with shape [N, C]. - """ - N, K = x.shape[0], xp.shape[1] - all_x = torch.cat([x.unsqueeze(2), xp.unsqueeze(0).repeat((N, 1, 1))], dim=2) - sorted_all_x, x_indices = torch.sort(all_x, dim=2) - x_idx = torch.argmin(x_indices, dim=2) - cand_start_idx = x_idx - 1 - start_idx = torch.where( - torch.eq(x_idx, 0), - torch.tensor(1, device=x.device), - torch.where( - torch.eq(x_idx, K), - torch.tensor(K - 2, device=x.device), - cand_start_idx, - ), - ) - end_idx = torch.where(torch.eq(start_idx, cand_start_idx), start_idx + 2, start_idx + 1) - start_x = torch.gather(sorted_all_x, dim=2, index=start_idx.unsqueeze(2)).squeeze(2) - end_x = torch.gather(sorted_all_x, dim=2, index=end_idx.unsqueeze(2)).squeeze(2) - start_idx2 = torch.where( - torch.eq(x_idx, 0), - torch.tensor(0, device=x.device), - torch.where( - torch.eq(x_idx, K), - torch.tensor(K - 2, device=x.device), - cand_start_idx, - ), - ) - y_positions_expanded = yp.unsqueeze(0).expand(N, -1, -1) - start_y = torch.gather(y_positions_expanded, dim=2, index=start_idx2.unsqueeze(2)).squeeze(2) - end_y = torch.gather(y_positions_expanded, dim=2, index=(start_idx2 + 1).unsqueeze(2)).squeeze(2) - cand = start_y + (x - start_x) * (end_y - start_y) / (end_x - start_x) - return cand - - -def expand_dims(v, dims): - """ - Expand the tensor `v` to the dim `dims`. - - Args: - `v`: a PyTorch tensor with shape [N]. - `dim`: a `int`. - Returns: - a PyTorch tensor with shape [N, 1, 1, ..., 1] and the total dimension is `dims`. - """ - return v[(...,) + (None,) * (dims - 1)] diff --git a/TTS/TTS/tts/layers/tortoise/random_latent_generator.py b/TTS/TTS/tts/layers/tortoise/random_latent_generator.py deleted file mode 100644 index 9b39c1e4b22ee5a9ad84a1711a08a8530c4d76b7..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/random_latent_generator.py +++ /dev/null @@ -1,55 +0,0 @@ -import math - -import torch -import torch.nn as nn -import torch.nn.functional as F - - -def fused_leaky_relu(input, bias=None, negative_slope=0.2, scale=2**0.5): - if bias is not None: - rest_dim = [1] * (input.ndim - bias.ndim - 1) - return ( - F.leaky_relu( - input + bias.view(1, bias.shape[0], *rest_dim), - negative_slope=negative_slope, - ) - * scale - ) - else: - return F.leaky_relu(input, negative_slope=0.2) * scale - - -class EqualLinear(nn.Module): - def __init__(self, in_dim, out_dim, bias=True, bias_init=0, lr_mul=1): - super().__init__() - self.weight = nn.Parameter(torch.randn(out_dim, in_dim).div_(lr_mul)) - if bias: - self.bias = nn.Parameter(torch.zeros(out_dim).fill_(bias_init)) - else: - self.bias = None - self.scale = (1 / math.sqrt(in_dim)) * lr_mul - self.lr_mul = lr_mul - - def forward(self, input): - out = F.linear(input, self.weight * self.scale) - out = fused_leaky_relu(out, self.bias * self.lr_mul) - return out - - -class RandomLatentConverter(nn.Module): - def __init__(self, channels): - super().__init__() - self.layers = nn.Sequential( - *[EqualLinear(channels, channels, lr_mul=0.1) for _ in range(5)], nn.Linear(channels, channels) - ) - self.channels = channels - - def forward(self, ref): - r = torch.randn(ref.shape[0], self.channels, device=ref.device) - y = self.layers(r) - return y - - -if __name__ == "__main__": - model = RandomLatentConverter(512) - model(torch.randn(5, 512)) diff --git a/TTS/TTS/tts/layers/tortoise/tokenizer.py b/TTS/TTS/tts/layers/tortoise/tokenizer.py deleted file mode 100644 index 3e544ee7e2b76137dc2de2b0e10e53aa04d90827..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/tokenizer.py +++ /dev/null @@ -1,34 +0,0 @@ -import os - -import torch -from tokenizers import Tokenizer - -from TTS.tts.utils.text.cleaners import english_cleaners - -DEFAULT_VOCAB_FILE = os.path.join( - os.path.dirname(os.path.realpath(__file__)), "../../utils/assets/tortoise/tokenizer.json" -) - - -class VoiceBpeTokenizer: - def __init__(self, vocab_file=DEFAULT_VOCAB_FILE): - if vocab_file is not None: - self.tokenizer = Tokenizer.from_file(vocab_file) - - def preprocess_text(self, txt): - txt = english_cleaners(txt) - return txt - - def encode(self, txt): - txt = self.preprocess_text(txt) - txt = txt.replace(" ", "[SPACE]") - return self.tokenizer.encode(txt).ids - - def decode(self, seq): - if isinstance(seq, torch.Tensor): - seq = seq.cpu().numpy() - txt = self.tokenizer.decode(seq, skip_special_tokens=False).replace(" ", "") - txt = txt.replace("[SPACE]", " ") - txt = txt.replace("[STOP]", "") - txt = txt.replace("[UNK]", "") - return txt diff --git a/TTS/TTS/tts/layers/tortoise/transformer.py b/TTS/TTS/tts/layers/tortoise/transformer.py deleted file mode 100644 index 70d46aa3e03626d8123700a5c2541d2d1a7314b4..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/transformer.py +++ /dev/null @@ -1,229 +0,0 @@ -import torch -import torch.nn.functional as F -from einops import rearrange -from torch import nn - -# helpers - - -def exists(val): - return val is not None - - -def default(val, d): - return val if exists(val) else d - - -def cast_tuple(val, depth=1): - if isinstance(val, list): - val = tuple(val) - return val if isinstance(val, tuple) else (val,) * depth - - -def max_neg_value(t): - return -torch.finfo(t.dtype).max - - -def stable_softmax(t, dim=-1, alpha=32**2): - t = t / alpha - t = t - torch.amax(t, dim=dim, keepdim=True).detach() - return (t * alpha).softmax(dim=dim) - - -def route_args(router, args, depth): - routed_args = [(dict(), dict()) for _ in range(depth)] - matched_keys = [key for key in args.keys() if key in router] - - for key in matched_keys: - val = args[key] - for depth, ((f_args, g_args), routes) in enumerate(zip(routed_args, router[key])): - new_f_args, new_g_args = map(lambda route: ({key: val} if route else {}), routes) - routed_args[depth] = ({**f_args, **new_f_args}, {**g_args, **new_g_args}) - return routed_args - - -# classes -class SequentialSequence(nn.Module): - def __init__(self, layers, args_route={}, layer_dropout=0.0): - super().__init__() - assert all( - len(route) == len(layers) for route in args_route.values() - ), "each argument route map must have the same depth as the number of sequential layers" - self.layers = layers - self.args_route = args_route - self.layer_dropout = layer_dropout - - def forward(self, x, **kwargs): - args = route_args(self.args_route, kwargs, len(self.layers)) - layers_and_args = list(zip(self.layers, args)) - - for (f, g), (f_args, g_args) in layers_and_args: - x = x + f(x, **f_args) - x = x + g(x, **g_args) - return x - - -class DivideMax(nn.Module): - def __init__(self, dim): - super().__init__() - self.dim = dim - - def forward(self, x): - maxes = x.amax(dim=self.dim, keepdim=True).detach() - return x / maxes - - -# https://arxiv.org/abs/2103.17239 -class LayerScale(nn.Module): - def __init__(self, dim, depth, fn): - super().__init__() - if depth <= 18: - init_eps = 0.1 - elif depth > 18 and depth <= 24: - init_eps = 1e-5 - else: - init_eps = 1e-6 - - scale = torch.zeros(1, 1, dim).fill_(init_eps) - self.scale = nn.Parameter(scale) - self.fn = fn - - def forward(self, x, **kwargs): - return self.fn(x, **kwargs) * self.scale - - -# layer norm - - -class PreNorm(nn.Module): - def __init__(self, dim, fn, sandwich=False): - super().__init__() - self.norm = nn.LayerNorm(dim) - self.norm_out = nn.LayerNorm(dim) if sandwich else nn.Identity() - self.fn = fn - - def forward(self, x, **kwargs): - x = self.norm(x) - x = self.fn(x, **kwargs) - return self.norm_out(x) - - -# feed forward - - -class GEGLU(nn.Module): - def forward(self, x): - x, gates = x.chunk(2, dim=-1) - return x * F.gelu(gates) - - -class FeedForward(nn.Module): - def __init__(self, dim, dropout=0.0, mult=4.0): - super().__init__() - self.net = nn.Sequential( - nn.Linear(dim, dim * mult * 2), - GEGLU(), - nn.Dropout(dropout), - nn.Linear(dim * mult, dim), - ) - - def forward(self, x): - return self.net(x) - - -# Attention - - -class Attention(nn.Module): - def __init__(self, dim, seq_len, causal=True, heads=8, dim_head=64, dropout=0.0): - super().__init__() - inner_dim = dim_head * heads - self.heads = heads - self.seq_len = seq_len - self.scale = dim_head**-0.5 - - self.causal = causal - - self.to_qkv = nn.Linear(dim, inner_dim * 3, bias=False) - self.to_out = nn.Sequential(nn.Linear(inner_dim, dim), nn.Dropout(dropout)) - - def forward(self, x, mask=None): - b, n, _, h, device = *x.shape, self.heads, x.device - softmax = torch.softmax - - qkv = self.to_qkv(x).chunk(3, dim=-1) - q, k, v = map(lambda t: rearrange(t, "b n (h d) -> b h n d", h=h), qkv) - - q = q * self.scale - - dots = torch.einsum("b h i d, b h j d -> b h i j", q, k) - mask_value = max_neg_value(dots) - - if exists(mask): - mask = rearrange(mask, "b j -> b () () j") - dots.masked_fill_(~mask, mask_value) - del mask - - if self.causal: - i, j = dots.shape[-2:] - mask = torch.ones(i, j, device=device).triu_(j - i + 1).bool() - dots.masked_fill_(mask, mask_value) - - attn = softmax(dots, dim=-1) - - out = torch.einsum("b h i j, b h j d -> b h i d", attn, v) - out = rearrange(out, "b h n d -> b n (h d)") - out = self.to_out(out) - return out - - -# main transformer class -class Transformer(nn.Module): - def __init__( - self, - *, - dim, - depth, - seq_len, - causal=True, - heads=8, - dim_head=64, - ff_mult=4, - attn_dropout=0.0, - ff_dropout=0.0, - sparse_attn=False, - sandwich_norm=False, - ): - super().__init__() - layers = nn.ModuleList([]) - sparse_layer = cast_tuple(sparse_attn, depth) - - for ind, sparse_attn in zip(range(depth), sparse_layer): - attn = Attention( - dim, - causal=causal, - seq_len=seq_len, - heads=heads, - dim_head=dim_head, - dropout=attn_dropout, - ) - - ff = FeedForward(dim, mult=ff_mult, dropout=ff_dropout) - - layers.append( - nn.ModuleList( - [ - LayerScale(dim, ind + 1, PreNorm(dim, attn, sandwich=sandwich_norm)), - LayerScale(dim, ind + 1, PreNorm(dim, ff, sandwich=sandwich_norm)), - ] - ) - ) - - execute_type = SequentialSequence - route_attn = ((True, False),) * depth - attn_route_map = {"mask": route_attn} - - self.layers = execute_type(layers, args_route=attn_route_map) - - def forward(self, x, **kwargs): - return self.layers(x, **kwargs) diff --git a/TTS/TTS/tts/layers/tortoise/utils.py b/TTS/TTS/tts/layers/tortoise/utils.py deleted file mode 100644 index 810a9e7f7a8ab4a6a48974367020961f9a9967f4..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/utils.py +++ /dev/null @@ -1,46 +0,0 @@ -import os -from urllib import request - -from tqdm import tqdm - -DEFAULT_MODELS_DIR = os.path.join(os.path.expanduser("~"), ".cache", "tortoise", "models") -MODELS_DIR = os.environ.get("TORTOISE_MODELS_DIR", DEFAULT_MODELS_DIR) -MODELS_DIR = "/data/speech_synth/models/" -MODELS = { - "autoregressive.pth": "https://huggingface.co/jbetker/tortoise-tts-v2/resolve/main/.models/autoregressive.pth", - "classifier.pth": "https://huggingface.co/jbetker/tortoise-tts-v2/resolve/main/.models/classifier.pth", - "clvp2.pth": "https://huggingface.co/jbetker/tortoise-tts-v2/resolve/main/.models/clvp2.pth", - "diffusion_decoder.pth": "https://huggingface.co/jbetker/tortoise-tts-v2/resolve/main/.models/diffusion_decoder.pth", - "vocoder.pth": "https://huggingface.co/jbetker/tortoise-tts-v2/resolve/main/.models/vocoder.pth", - "rlg_auto.pth": "https://huggingface.co/jbetker/tortoise-tts-v2/resolve/main/.models/rlg_auto.pth", - "rlg_diffuser.pth": "https://huggingface.co/jbetker/tortoise-tts-v2/resolve/main/.models/rlg_diffuser.pth", -} - - -def download_models(specific_models=None): - """ - Call to download all the models that Tortoise uses. - """ - os.makedirs(MODELS_DIR, exist_ok=True) - for model_name, url in MODELS.items(): - if specific_models is not None and model_name not in specific_models: - continue - model_path = os.path.join(MODELS_DIR, model_name) - if os.path.exists(model_path): - continue - print(f"Downloading {model_name} from {url}...") - with tqdm(unit="B", unit_scale=True, unit_divisor=1024, miniters=1) as t: - request.urlretrieve(url, model_path, lambda nb, bs, fs, t=t: t.update(nb * bs - t.n)) - print("Done.") - - -def get_model_path(model_name, models_dir=MODELS_DIR): - """ - Get path to given model, download it if it doesn't exist. - """ - if model_name not in MODELS: - raise ValueError(f"Model {model_name} not found in available models.") - model_path = os.path.join(models_dir, model_name) - if not os.path.exists(model_path) and models_dir == MODELS_DIR: - download_models([model_name]) - return model_path diff --git a/TTS/TTS/tts/layers/tortoise/vocoder.py b/TTS/TTS/tts/layers/tortoise/vocoder.py deleted file mode 100644 index 47365eb58d4d8ab563fe4785fc99cb4f5493b37f..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/vocoder.py +++ /dev/null @@ -1,401 +0,0 @@ -import json -from dataclasses import dataclass -from enum import Enum -from typing import Callable, Optional - -import torch -import torch.nn as nn -import torch.nn.functional as F - -MAX_WAV_VALUE = 32768.0 - - -class KernelPredictor(torch.nn.Module): - """Kernel predictor for the location-variable convolutions""" - - def __init__( - self, - cond_channels, - conv_in_channels, - conv_out_channels, - conv_layers, - conv_kernel_size=3, - kpnet_hidden_channels=64, - kpnet_conv_size=3, - kpnet_dropout=0.0, - kpnet_nonlinear_activation="LeakyReLU", - kpnet_nonlinear_activation_params={"negative_slope": 0.1}, - ): - """ - Args: - cond_channels (int): number of channel for the conditioning sequence, - conv_in_channels (int): number of channel for the input sequence, - conv_out_channels (int): number of channel for the output sequence, - conv_layers (int): number of layers - """ - super().__init__() - - self.conv_in_channels = conv_in_channels - self.conv_out_channels = conv_out_channels - self.conv_kernel_size = conv_kernel_size - self.conv_layers = conv_layers - - kpnet_kernel_channels = conv_in_channels * conv_out_channels * conv_kernel_size * conv_layers # l_w - kpnet_bias_channels = conv_out_channels * conv_layers # l_b - - self.input_conv = nn.Sequential( - nn.utils.weight_norm(nn.Conv1d(cond_channels, kpnet_hidden_channels, 5, padding=2, bias=True)), - getattr(nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - ) - - self.residual_convs = nn.ModuleList() - padding = (kpnet_conv_size - 1) // 2 - for _ in range(3): - self.residual_convs.append( - nn.Sequential( - nn.Dropout(kpnet_dropout), - nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_hidden_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ), - getattr(nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_hidden_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ), - getattr(nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - ) - ) - self.kernel_conv = nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_kernel_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ) - self.bias_conv = nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_bias_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ) - - def forward(self, c): - """ - Args: - c (Tensor): the conditioning sequence (batch, cond_channels, cond_length) - """ - batch, _, cond_length = c.shape - c = self.input_conv(c) - for residual_conv in self.residual_convs: - residual_conv.to(c.device) - c = c + residual_conv(c) - k = self.kernel_conv(c) - b = self.bias_conv(c) - kernels = k.contiguous().view( - batch, - self.conv_layers, - self.conv_in_channels, - self.conv_out_channels, - self.conv_kernel_size, - cond_length, - ) - bias = b.contiguous().view( - batch, - self.conv_layers, - self.conv_out_channels, - cond_length, - ) - - return kernels, bias - - def remove_weight_norm(self): - nn.utils.remove_weight_norm(self.input_conv[0]) - nn.utils.remove_weight_norm(self.kernel_conv) - nn.utils.remove_weight_norm(self.bias_conv) - for block in self.residual_convs: - nn.utils.remove_weight_norm(block[1]) - nn.utils.remove_weight_norm(block[3]) - - -class LVCBlock(torch.nn.Module): - """the location-variable convolutions""" - - def __init__( - self, - in_channels, - cond_channels, - stride, - dilations=[1, 3, 9, 27], - lReLU_slope=0.2, - conv_kernel_size=3, - cond_hop_length=256, - kpnet_hidden_channels=64, - kpnet_conv_size=3, - kpnet_dropout=0.0, - ): - super().__init__() - - self.cond_hop_length = cond_hop_length - self.conv_layers = len(dilations) - self.conv_kernel_size = conv_kernel_size - - self.kernel_predictor = KernelPredictor( - cond_channels=cond_channels, - conv_in_channels=in_channels, - conv_out_channels=2 * in_channels, - conv_layers=len(dilations), - conv_kernel_size=conv_kernel_size, - kpnet_hidden_channels=kpnet_hidden_channels, - kpnet_conv_size=kpnet_conv_size, - kpnet_dropout=kpnet_dropout, - kpnet_nonlinear_activation_params={"negative_slope": lReLU_slope}, - ) - - self.convt_pre = nn.Sequential( - nn.LeakyReLU(lReLU_slope), - nn.utils.weight_norm( - nn.ConvTranspose1d( - in_channels, - in_channels, - 2 * stride, - stride=stride, - padding=stride // 2 + stride % 2, - output_padding=stride % 2, - ) - ), - ) - - self.conv_blocks = nn.ModuleList() - for dilation in dilations: - self.conv_blocks.append( - nn.Sequential( - nn.LeakyReLU(lReLU_slope), - nn.utils.weight_norm( - nn.Conv1d( - in_channels, - in_channels, - conv_kernel_size, - padding=dilation * (conv_kernel_size - 1) // 2, - dilation=dilation, - ) - ), - nn.LeakyReLU(lReLU_slope), - ) - ) - - def forward(self, x, c): - """forward propagation of the location-variable convolutions. - Args: - x (Tensor): the input sequence (batch, in_channels, in_length) - c (Tensor): the conditioning sequence (batch, cond_channels, cond_length) - - Returns: - Tensor: the output sequence (batch, in_channels, in_length) - """ - _, in_channels, _ = x.shape # (B, c_g, L') - - x = self.convt_pre(x) # (B, c_g, stride * L') - kernels, bias = self.kernel_predictor(c) - - for i, conv in enumerate(self.conv_blocks): - output = conv(x) # (B, c_g, stride * L') - - k = kernels[:, i, :, :, :, :] # (B, 2 * c_g, c_g, kernel_size, cond_length) - b = bias[:, i, :, :] # (B, 2 * c_g, cond_length) - - output = self.location_variable_convolution( - output, k, b, hop_size=self.cond_hop_length - ) # (B, 2 * c_g, stride * L'): LVC - x = x + torch.sigmoid(output[:, :in_channels, :]) * torch.tanh( - output[:, in_channels:, :] - ) # (B, c_g, stride * L'): GAU - - return x - - def location_variable_convolution(self, x, kernel, bias, dilation=1, hop_size=256): - """perform location-variable convolution operation on the input sequence (x) using the local convolution kernl. - Time: 414 μs ± 309 ns per loop (mean ± std. dev. of 7 runs, 1000 loops each), test on NVIDIA V100. - Args: - x (Tensor): the input sequence (batch, in_channels, in_length). - kernel (Tensor): the local convolution kernel (batch, in_channel, out_channels, kernel_size, kernel_length) - bias (Tensor): the bias for the local convolution (batch, out_channels, kernel_length) - dilation (int): the dilation of convolution. - hop_size (int): the hop_size of the conditioning sequence. - Returns: - (Tensor): the output sequence after performing local convolution. (batch, out_channels, in_length). - """ - batch, _, in_length = x.shape - batch, _, out_channels, kernel_size, kernel_length = kernel.shape - assert in_length == (kernel_length * hop_size), "length of (x, kernel) is not matched" - - padding = dilation * int((kernel_size - 1) / 2) - x = F.pad(x, (padding, padding), "constant", 0) # (batch, in_channels, in_length + 2*padding) - x = x.unfold(2, hop_size + 2 * padding, hop_size) # (batch, in_channels, kernel_length, hop_size + 2*padding) - - if hop_size < dilation: - x = F.pad(x, (0, dilation), "constant", 0) - x = x.unfold( - 3, dilation, dilation - ) # (batch, in_channels, kernel_length, (hop_size + 2*padding)/dilation, dilation) - x = x[:, :, :, :, :hop_size] - x = x.transpose(3, 4) # (batch, in_channels, kernel_length, dilation, (hop_size + 2*padding)/dilation) - x = x.unfold(4, kernel_size, 1) # (batch, in_channels, kernel_length, dilation, _, kernel_size) - - o = torch.einsum("bildsk,biokl->bolsd", x, kernel) - o = o.to(memory_format=torch.channels_last_3d) - bias = bias.unsqueeze(-1).unsqueeze(-1).to(memory_format=torch.channels_last_3d) - o = o + bias - o = o.contiguous().view(batch, out_channels, -1) - - return o - - def remove_weight_norm(self): - self.kernel_predictor.remove_weight_norm() - nn.utils.remove_weight_norm(self.convt_pre[1]) - for block in self.conv_blocks: - nn.utils.remove_weight_norm(block[1]) - - -class UnivNetGenerator(nn.Module): - """ - UnivNet Generator - - Originally from https://github.com/mindslab-ai/univnet/blob/master/model/generator.py. - """ - - def __init__( - self, - noise_dim=64, - channel_size=32, - dilations=[1, 3, 9, 27], - strides=[8, 8, 4], - lReLU_slope=0.2, - kpnet_conv_size=3, - # Below are MEL configurations options that this generator requires. - hop_length=256, - n_mel_channels=100, - ): - super(UnivNetGenerator, self).__init__() - self.mel_channel = n_mel_channels - self.noise_dim = noise_dim - self.hop_length = hop_length - channel_size = channel_size - kpnet_conv_size = kpnet_conv_size - - self.res_stack = nn.ModuleList() - hop_length = 1 - for stride in strides: - hop_length = stride * hop_length - self.res_stack.append( - LVCBlock( - channel_size, - n_mel_channels, - stride=stride, - dilations=dilations, - lReLU_slope=lReLU_slope, - cond_hop_length=hop_length, - kpnet_conv_size=kpnet_conv_size, - ) - ) - - self.conv_pre = nn.utils.weight_norm(nn.Conv1d(noise_dim, channel_size, 7, padding=3, padding_mode="reflect")) - - self.conv_post = nn.Sequential( - nn.LeakyReLU(lReLU_slope), - nn.utils.weight_norm(nn.Conv1d(channel_size, 1, 7, padding=3, padding_mode="reflect")), - nn.Tanh(), - ) - - def forward(self, c, z): - """ - Args: - c (Tensor): the conditioning sequence of mel-spectrogram (batch, mel_channels, in_length) - z (Tensor): the noise sequence (batch, noise_dim, in_length) - - """ - z = self.conv_pre(z) # (B, c_g, L) - - for res_block in self.res_stack: - res_block.to(z.device) - z = res_block(z, c) # (B, c_g, L * s_0 * ... * s_i) - - z = self.conv_post(z) # (B, 1, L * 256) - - return z - - def eval(self, inference=False): - super(UnivNetGenerator, self).eval() - # don't remove weight norm while validation in training loop - if inference: - self.remove_weight_norm() - - def remove_weight_norm(self): - nn.utils.remove_weight_norm(self.conv_pre) - - for layer in self.conv_post: - if len(layer.state_dict()) != 0: - nn.utils.remove_weight_norm(layer) - - for res_block in self.res_stack: - res_block.remove_weight_norm() - - def inference(self, c, z=None): - # pad input mel with zeros to cut artifact - # see https://github.com/seungwonpark/melgan/issues/8 - zero = torch.full((c.shape[0], self.mel_channel, 10), -11.5129).to(c.device) - mel = torch.cat((c, zero), dim=2) - - if z is None: - z = torch.randn(c.shape[0], self.noise_dim, mel.size(2)).to(mel.device) - - audio = self.forward(mel, z) - audio = audio[:, :, : -(self.hop_length * 10)] - audio = audio.clamp(min=-1, max=1) - return audio - - -@dataclass -class VocType: - constructor: Callable[[], nn.Module] - model_path: str - subkey: Optional[str] = None - - def optionally_index(self, model_dict): - if self.subkey is not None: - return model_dict[self.subkey] - return model_dict - - -class VocConf(Enum): - Univnet = VocType(UnivNetGenerator, "vocoder.pth", "model_g") - - -if __name__ == "__main__": - model = UnivNetGenerator() - - c = torch.randn(3, 100, 10) - z = torch.randn(3, 64, 10) - print(c.shape) - - y = model(c, z) - print(y.shape) - assert y.shape == torch.Size([3, 1, 2560]) - - pytorch_total_params = sum(p.numel() for p in model.parameters() if p.requires_grad) - print(pytorch_total_params) diff --git a/TTS/TTS/tts/layers/tortoise/wav2vec_alignment.py b/TTS/TTS/tts/layers/tortoise/wav2vec_alignment.py deleted file mode 100644 index 47456cc5ac41b7ed9522fe543affc8482218730c..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/wav2vec_alignment.py +++ /dev/null @@ -1,150 +0,0 @@ -import torch -import torchaudio -from transformers import Wav2Vec2CTCTokenizer, Wav2Vec2FeatureExtractor, Wav2Vec2ForCTC - - -def max_alignment(s1, s2, skip_character="~", record=None): - """ - A clever function that aligns s1 to s2 as best it can. Wherever a character from s1 is not found in s2, a '~' is - used to replace that character. - - Finally got to use my DP skills! - """ - if record is None: - record = {} - assert skip_character not in s1, f"Found the skip character {skip_character} in the provided string, {s1}" - if len(s1) == 0: - return "" - if len(s2) == 0: - return skip_character * len(s1) - if s1 == s2: - return s1 - if s1[0] == s2[0]: - return s1[0] + max_alignment(s1[1:], s2[1:], skip_character, record) - - take_s1_key = (len(s1), len(s2) - 1) - if take_s1_key in record: - take_s1, take_s1_score = record[take_s1_key] - else: - take_s1 = max_alignment(s1, s2[1:], skip_character, record) - take_s1_score = len(take_s1.replace(skip_character, "")) - record[take_s1_key] = (take_s1, take_s1_score) - - take_s2_key = (len(s1) - 1, len(s2)) - if take_s2_key in record: - take_s2, take_s2_score = record[take_s2_key] - else: - take_s2 = max_alignment(s1[1:], s2, skip_character, record) - take_s2_score = len(take_s2.replace(skip_character, "")) - record[take_s2_key] = (take_s2, take_s2_score) - - return take_s1 if take_s1_score > take_s2_score else skip_character + take_s2 - - -class Wav2VecAlignment: - """ - Uses wav2vec2 to perform audio<->text alignment. - """ - - def __init__(self, device="cuda"): - self.model = Wav2Vec2ForCTC.from_pretrained("jbetker/wav2vec2-large-robust-ft-libritts-voxpopuli").cpu() - self.feature_extractor = Wav2Vec2FeatureExtractor.from_pretrained("facebook/wav2vec2-large-960h") - self.tokenizer = Wav2Vec2CTCTokenizer.from_pretrained("jbetker/tacotron-symbols") - self.device = device - - def align(self, audio, expected_text, audio_sample_rate=24000): - orig_len = audio.shape[-1] - - with torch.no_grad(): - self.model = self.model.to(self.device) - audio = audio.to(self.device) - audio = torchaudio.functional.resample(audio, audio_sample_rate, 16000) - clip_norm = (audio - audio.mean()) / torch.sqrt(audio.var() + 1e-7) - logits = self.model(clip_norm).logits - self.model = self.model.cpu() - - logits = logits[0] - pred_string = self.tokenizer.decode(logits.argmax(-1).tolist()) - - fixed_expectation = max_alignment(expected_text.lower(), pred_string) - w2v_compression = orig_len // logits.shape[0] - expected_tokens = self.tokenizer.encode(fixed_expectation) - expected_chars = list(fixed_expectation) - if len(expected_tokens) == 1: - return [0] # The alignment is simple; there is only one token. - expected_tokens.pop(0) # The first token is a given. - expected_chars.pop(0) - - alignments = [0] - - def pop_till_you_win(): - if len(expected_tokens) == 0: - return None - popped = expected_tokens.pop(0) - popped_char = expected_chars.pop(0) - while popped_char == "~": - alignments.append(-1) - if len(expected_tokens) == 0: - return None - popped = expected_tokens.pop(0) - popped_char = expected_chars.pop(0) - return popped - - next_expected_token = pop_till_you_win() - for i, logit in enumerate(logits): - top = logit.argmax() - if next_expected_token == top: - alignments.append(i * w2v_compression) - if len(expected_tokens) > 0: - next_expected_token = pop_till_you_win() - else: - break - - pop_till_you_win() - if not (len(expected_tokens) == 0 and len(alignments) == len(expected_text)): - torch.save([audio, expected_text], "alignment_debug.pth") - assert False, ( - "Something went wrong with the alignment algorithm. I've dumped a file, 'alignment_debug.pth' to" - "your current working directory. Please report this along with the file so it can get fixed." - ) - - # Now fix up alignments. Anything with -1 should be interpolated. - alignments.append(orig_len) # This'll get removed but makes the algorithm below more readable. - for i in range(len(alignments)): - if alignments[i] == -1: - for j in range(i + 1, len(alignments)): - if alignments[j] != -1: - next_found_token = j - break - for j in range(i, next_found_token): - gap = alignments[next_found_token] - alignments[i - 1] - alignments[j] = (j - i + 1) * gap // (next_found_token - i + 1) + alignments[i - 1] - - return alignments[:-1] - - def redact(self, audio, expected_text, audio_sample_rate=24000): - if "[" not in expected_text: - return audio - splitted = expected_text.split("[") - fully_split = [splitted[0]] - for spl in splitted[1:]: - assert "]" in spl, 'Every "[" character must be paired with a "]" with no nesting.' - fully_split.extend(spl.split("]")) - - # At this point, fully_split is a list of strings, with every other string being something that should be redacted. - non_redacted_intervals = [] - last_point = 0 - for i in range(len(fully_split)): - if i % 2 == 0: - end_interval = max(0, last_point + len(fully_split[i]) - 1) - non_redacted_intervals.append((last_point, end_interval)) - last_point += len(fully_split[i]) - - bare_text = "".join(fully_split) - alignments = self.align(audio, bare_text, audio_sample_rate) - - output_audio = [] - for nri in non_redacted_intervals: - start, stop = nri - output_audio.append(audio[:, alignments[start] : alignments[stop]]) - return torch.cat(output_audio, dim=-1) diff --git a/TTS/TTS/tts/layers/tortoise/xtransformers.py b/TTS/TTS/tts/layers/tortoise/xtransformers.py deleted file mode 100644 index 1eb3f77269c0e7b718d350217796ec704543c681..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/tortoise/xtransformers.py +++ /dev/null @@ -1,1259 +0,0 @@ -import math -from collections import namedtuple -from functools import partial -from inspect import isfunction - -import torch -import torch.nn.functional as F -from einops import rearrange, repeat -from torch import einsum, nn - -DEFAULT_DIM_HEAD = 64 - -Intermediates = namedtuple("Intermediates", ["pre_softmax_attn", "post_softmax_attn"]) - -LayerIntermediates = namedtuple( - "Intermediates", - [ - "hiddens", - "attn_intermediates", - "past_key_values", - ], -) - - -# helpers - - -def exists(val): - return val is not None - - -def default(val, d): - if exists(val): - return val - return d() if isfunction(d) else d - - -def cast_tuple(val, depth): - return val if isinstance(val, tuple) else (val,) * depth - - -class always: - def __init__(self, val): - self.val = val - - def __call__(self, *args, **kwargs): - return self.val - - -class not_equals: - def __init__(self, val): - self.val = val - - def __call__(self, x, *args, **kwargs): - return x != self.val - - -class equals: - def __init__(self, val): - self.val = val - - def __call__(self, x, *args, **kwargs): - return x == self.val - - -def max_neg_value(tensor): - return -torch.finfo(tensor.dtype).max - - -def l2norm(t): - return F.normalize(t, p=2, dim=-1) - - -# init helpers - - -def init_zero_(layer): - nn.init.constant_(layer.weight, 0.0) - if exists(layer.bias): - nn.init.constant_(layer.bias, 0.0) - - -# keyword argument helpers - - -def pick_and_pop(keys, d): - values = list(map(lambda key: d.pop(key), keys)) - return dict(zip(keys, values)) - - -def group_dict_by_key(cond, d): - return_val = [dict(), dict()] - for key in d.keys(): - match = bool(cond(key)) - ind = int(not match) - return_val[ind][key] = d[key] - return (*return_val,) - - -def string_begins_with(prefix, str): - return str.startswith(prefix) - - -def group_by_key_prefix(prefix, d): - return group_dict_by_key(partial(string_begins_with, prefix), d) - - -def groupby_prefix_and_trim(prefix, d): - kwargs_with_prefix, kwargs = group_dict_by_key(partial(string_begins_with, prefix), d) - kwargs_without_prefix = dict(map(lambda x: (x[0][len(prefix) :], x[1]), tuple(kwargs_with_prefix.items()))) - return kwargs_without_prefix, kwargs - - -# activations - - -class ReluSquared(nn.Module): - def forward(self, x): - return F.relu(x) ** 2 - - -# positional embeddings - - -class AbsolutePositionalEmbedding(nn.Module): - def __init__(self, dim, max_seq_len): - super().__init__() - self.scale = dim**-0.5 - self.emb = nn.Embedding(max_seq_len, dim) - - def forward(self, x): - n = torch.arange(x.shape[1], device=x.device) - pos_emb = self.emb(n) - pos_emb = rearrange(pos_emb, "n d -> () n d") - return pos_emb * self.scale - - -class FixedPositionalEmbedding(nn.Module): - def __init__(self, dim): - super().__init__() - inv_freq = 1.0 / (10000 ** (torch.arange(0, dim, 2).float() / dim)) - self.register_buffer("inv_freq", inv_freq) - - def forward(self, x, seq_dim=1, offset=0): - t = torch.arange(x.shape[seq_dim], device=x.device).type_as(self.inv_freq) + offset - sinusoid_inp = torch.einsum("i , j -> i j", t, self.inv_freq) - emb = torch.cat((sinusoid_inp.sin(), sinusoid_inp.cos()), dim=-1) - return rearrange(emb, "n d -> () n d") - - -class RelativePositionBias(nn.Module): - def __init__(self, scale, causal=False, num_buckets=32, max_distance=128, heads=8): - super().__init__() - self.scale = scale - self.causal = causal - self.num_buckets = num_buckets - self.max_distance = max_distance - self.relative_attention_bias = nn.Embedding(num_buckets, heads) - - @staticmethod - def _relative_position_bucket(relative_position, causal=True, num_buckets=32, max_distance=128): - ret = 0 - n = -relative_position - if not causal: - num_buckets //= 2 - ret += (n < 0).long() * num_buckets - n = torch.abs(n) - else: - n = torch.max(n, torch.zeros_like(n)) - - max_exact = num_buckets // 2 - is_small = n < max_exact - - val_if_large = ( - max_exact - + (torch.log(n.float() / max_exact) / math.log(max_distance / max_exact) * (num_buckets - max_exact)).long() - ) - val_if_large = torch.min(val_if_large, torch.full_like(val_if_large, num_buckets - 1)) - - ret += torch.where(is_small, n, val_if_large) - return ret - - def forward(self, qk_dots): - i, j, device = *qk_dots.shape[-2:], qk_dots.device - q_pos = torch.arange(i, dtype=torch.long, device=device) - k_pos = torch.arange(j, dtype=torch.long, device=device) - rel_pos = k_pos[None, :] - q_pos[:, None] - rp_bucket = self._relative_position_bucket( - rel_pos, causal=self.causal, num_buckets=self.num_buckets, max_distance=self.max_distance - ) - values = self.relative_attention_bias(rp_bucket) - bias = rearrange(values, "i j h -> () h i j") - return qk_dots + (bias * self.scale) - - -class AlibiPositionalBias(nn.Module): - def __init__(self, heads, **kwargs): - super().__init__() - self.heads = heads - slopes = torch.Tensor(self._get_slopes(heads)) - slopes = rearrange(slopes, "h -> () h () ()") - self.register_buffer("slopes", slopes, persistent=False) - self.register_buffer("bias", None, persistent=False) - - @staticmethod - def _get_slopes(heads): - def get_slopes_power_of_2(n): - start = 2 ** (-(2 ** -(math.log2(n) - 3))) - ratio = start - return [start * ratio**i for i in range(n)] - - if math.log2(heads).is_integer(): - return get_slopes_power_of_2(heads) - - closest_power_of_2 = 2 ** math.floor(math.log2(heads)) - return ( - get_slopes_power_of_2(closest_power_of_2) - + get_slopes_power_of_2(2 * closest_power_of_2)[0::2][: heads - closest_power_of_2] - ) - - def forward(self, qk_dots): - h, i, j, device = *qk_dots.shape[-3:], qk_dots.device - - if exists(self.bias) and self.bias.shape[-1] >= j: - return qk_dots + self.bias[..., :j] - - bias = torch.arange(j, device=device) - bias = rearrange(bias, "j -> () () () j") - bias = bias * self.slopes - - num_heads_unalibied = h - bias.shape[1] - bias = F.pad(bias, (0, 0, 0, 0, 0, num_heads_unalibied)) - - self.register_buffer("bias", bias, persistent=False) - return qk_dots + self.bias - - -class LearnedAlibiPositionalBias(AlibiPositionalBias): - def __init__(self, heads, bidirectional=False): - super().__init__(heads) - los_slopes = torch.log(self.slopes) - self.learned_logslopes = nn.Parameter(los_slopes) - - self.bidirectional = bidirectional - if self.bidirectional: - self.learned_logslopes_future = nn.Parameter(los_slopes) - - def forward(self, qk_dots): - h, i, j, device = *qk_dots.shape[-3:], qk_dots.device - - def get_slopes(param): - return F.pad(param.exp(), (0, 0, 0, 0, 0, h - param.shape[1])) - - if exists(self.bias) and self.bias.shape[-1] >= j: - bias = self.bias[..., :i, :j] - else: - i_arange = torch.arange(i, device=device) - j_arange = torch.arange(j, device=device) - bias = rearrange(j_arange, "j -> 1 1 1 j") - rearrange(i_arange, "i -> 1 1 i 1") - self.register_buffer("bias", bias, persistent=False) - - if self.bidirectional: - past_slopes = get_slopes(self.learned_logslopes) - future_slopes = get_slopes(self.learned_logslopes_future) - bias = torch.tril(bias * past_slopes) + torch.triu(bias * future_slopes) - else: - slopes = get_slopes(self.learned_logslopes) - bias = bias * slopes - - return qk_dots + bias - - -class RotaryEmbedding(nn.Module): - def __init__(self, dim): - super().__init__() - inv_freq = 1.0 / (10000 ** (torch.arange(0, dim, 2).float() / dim)) - self.register_buffer("inv_freq", inv_freq) - - def forward(self, max_seq_len, device): - t = torch.arange(max_seq_len, device=device).type_as(self.inv_freq) - freqs = torch.einsum("i , j -> i j", t, self.inv_freq) - emb = torch.cat((freqs, freqs), dim=-1) - return rearrange(emb, "n d -> () () n d") - - -def rotate_half(x): - x = rearrange(x, "... (j d) -> ... j d", j=2) - x1, x2 = x.unbind(dim=-2) - return torch.cat((-x2, x1), dim=-1) - - -def apply_rotary_pos_emb(t, freqs): - seq_len = t.shape[-2] - freqs = freqs[:, :, -seq_len:] - return (t * freqs.cos()) + (rotate_half(t) * freqs.sin()) - - -# norms - - -class Scale(nn.Module): - def __init__(self, value, fn): - super().__init__() - self.value = value - self.fn = fn - - def forward(self, x, **kwargs): - out = self.fn(x, **kwargs) - scale_fn = lambda t: t * self.value - - if not isinstance(out, tuple): - return scale_fn(out) - - return (scale_fn(out[0]), *out[1:]) - - -class Rezero(nn.Module): - def __init__(self, fn): - super().__init__() - self.fn = fn - self.g = nn.Parameter(torch.zeros(1)) - - def forward(self, x, **kwargs): - out = self.fn(x, **kwargs) - rezero_fn = lambda t: t * self.g - - if not isinstance(out, tuple): - return rezero_fn(out) - - return (rezero_fn(out[0]), *out[1:]) - - -class ScaleNorm(nn.Module): - def __init__(self, dim, eps=1e-5): - super().__init__() - self.scale = dim**-0.5 - self.eps = eps - self.g = nn.Parameter(torch.ones(1)) - - def forward(self, x): - norm = torch.norm(x, dim=-1, keepdim=True) * self.scale - return x / norm.clamp(min=self.eps) * self.g - - -class RMSNorm(nn.Module): - def __init__(self, dim, eps=1e-8): - super().__init__() - self.scale = dim**-0.5 - self.eps = eps - self.g = nn.Parameter(torch.ones(dim)) - - def forward(self, x): - norm = torch.norm(x, dim=-1, keepdim=True) * self.scale - return x / norm.clamp(min=self.eps) * self.g - - -class RMSScaleShiftNorm(nn.Module): - def __init__(self, dim, eps=1e-8): - super().__init__() - self.scale = dim**-0.5 - self.eps = eps - self.g = nn.Parameter(torch.ones(dim)) - self.scale_shift_process = nn.Linear(dim * 2, dim * 2) - - def forward(self, x, norm_scale_shift_inp): - norm = torch.norm(x, dim=-1, keepdim=True) * self.scale - norm = x / norm.clamp(min=self.eps) * self.g - - ss_emb = self.scale_shift_process(norm_scale_shift_inp) - scale, shift = torch.chunk(ss_emb, 2, dim=1) - h = norm * (1 + scale.unsqueeze(1)) + shift.unsqueeze(1) - return h - - -# residual and residual gates - - -class Residual(nn.Module): - def __init__(self, dim, scale_residual=False): - super().__init__() - self.residual_scale = nn.Parameter(torch.ones(dim)) if scale_residual else None - - def forward(self, x, residual): - if exists(self.residual_scale): - residual = residual * self.residual_scale - - return x + residual - - -class GRUGating(nn.Module): - def __init__(self, dim, scale_residual=False): - super().__init__() - self.gru = nn.GRUCell(dim, dim) - self.residual_scale = nn.Parameter(torch.ones(dim)) if scale_residual else None - - def forward(self, x, residual): - if exists(self.residual_scale): - residual = residual * self.residual_scale - - gated_output = self.gru(rearrange(x, "b n d -> (b n) d"), rearrange(residual, "b n d -> (b n) d")) - - return gated_output.reshape_as(x) - - -# token shifting - - -def shift(t, amount, mask=None): - if amount == 0: - return t - - if exists(mask): - t = t.masked_fill(~mask[..., None], 0.0) - - return F.pad(t, (0, 0, amount, -amount), value=0.0) - - -class ShiftTokens(nn.Module): - def __init__(self, shifts, fn): - super().__init__() - self.fn = fn - self.shifts = tuple(shifts) - - def forward(self, x, **kwargs): - mask = kwargs.get("mask", None) - shifts = self.shifts - segments = len(shifts) - feats_per_shift = x.shape[-1] // segments - splitted = x.split(feats_per_shift, dim=-1) - segments_to_shift, rest = splitted[:segments], splitted[segments:] - segments_to_shift = list(map(lambda args: shift(*args, mask=mask), zip(segments_to_shift, shifts))) - x = torch.cat((*segments_to_shift, *rest), dim=-1) - return self.fn(x, **kwargs) - - -# feedforward - - -class GLU(nn.Module): - def __init__(self, dim_in, dim_out, activation): - super().__init__() - self.act = activation - self.proj = nn.Linear(dim_in, dim_out * 2) - - def forward(self, x): - x, gate = self.proj(x).chunk(2, dim=-1) - return x * self.act(gate) - - -class FeedForward(nn.Module): - def __init__( - self, - dim, - dim_out=None, - mult=4, - glu=False, - relu_squared=False, - post_act_ln=False, - dropout=0.0, - zero_init_output=False, - ): - super().__init__() - inner_dim = int(dim * mult) - dim_out = default(dim_out, dim) - activation = ReluSquared() if relu_squared else nn.GELU() - - project_in = ( - nn.Sequential(nn.Linear(dim, inner_dim), activation) if not glu else GLU(dim, inner_dim, activation) - ) - - self.net = nn.Sequential( - project_in, - nn.LayerNorm(inner_dim) if post_act_ln else nn.Identity(), - nn.Dropout(dropout), - nn.Linear(inner_dim, dim_out), - ) - - # init last linear layer to 0 - if zero_init_output: - init_zero_(self.net[-1]) - - def forward(self, x): - return self.net(x) - - -# attention. - - -class Attention(nn.Module): - def __init__( - self, - dim, - dim_head=DEFAULT_DIM_HEAD, - heads=8, - causal=False, - talking_heads=False, - head_scale=False, - collab_heads=False, - collab_compression=0.3, - sparse_topk=None, - use_entmax15=False, - num_mem_kv=0, - dropout=0.0, - on_attn=False, - gate_values=False, - zero_init_output=False, - max_attend_past=None, - qk_norm=False, - scale_init_value=None, - rel_pos_bias=False, - rel_pos_num_buckets=32, - rel_pos_max_distance=128, - ): - super().__init__() - self.scale = dim_head**-0.5 - - self.heads = heads - self.causal = causal - self.max_attend_past = max_attend_past - - qk_dim = v_dim = dim_head * heads - - # collaborative heads - self.collab_heads = collab_heads - if self.collab_heads: - qk_dim = int(collab_compression * qk_dim) - self.collab_mixing = nn.Parameter(torch.randn(heads, qk_dim)) - - self.to_q = nn.Linear(dim, qk_dim, bias=False) - self.to_k = nn.Linear(dim, qk_dim, bias=False) - self.to_v = nn.Linear(dim, v_dim, bias=False) - - self.dropout = nn.Dropout(dropout) - - # add GLU gating for aggregated values, from alphafold2 - self.to_v_gate = None - if gate_values: - self.to_v_gate = nn.Linear(dim, v_dim) - nn.init.constant_(self.to_v_gate.weight, 0) - nn.init.constant_(self.to_v_gate.bias, 1) - - # cosine sim attention - self.qk_norm = qk_norm - if qk_norm: - scale_init_value = default( - scale_init_value, -3 - ) # if not provided, initialize as though it were sequence length of 1024 - self.scale = nn.Parameter(torch.ones(1, heads, 1, 1) * scale_init_value) - - # talking heads - self.talking_heads = talking_heads - if talking_heads: - self.pre_softmax_proj = nn.Parameter(torch.randn(heads, heads)) - self.post_softmax_proj = nn.Parameter(torch.randn(heads, heads)) - - # head scaling - self.head_scale = head_scale - if head_scale: - self.head_scale_params = nn.Parameter(torch.ones(1, heads, 1, 1)) - - # explicit topk sparse attention - self.sparse_topk = sparse_topk - - # entmax - self.attn_fn = F.softmax - - # add memory key / values - self.num_mem_kv = num_mem_kv - if num_mem_kv > 0: - self.mem_k = nn.Parameter(torch.randn(heads, num_mem_kv, dim_head)) - self.mem_v = nn.Parameter(torch.randn(heads, num_mem_kv, dim_head)) - - # attention on attention - self.attn_on_attn = on_attn - self.to_out = nn.Sequential(nn.Linear(v_dim, dim * 2), nn.GLU()) if on_attn else nn.Linear(v_dim, dim) - - self.rel_pos_bias = rel_pos_bias - if rel_pos_bias: - assert ( - rel_pos_num_buckets <= rel_pos_max_distance - ), "number of relative position buckets must be less than the relative position max distance" - self.rel_pos = RelativePositionBias( - scale=dim_head**0.5, - causal=causal, - heads=heads, - num_buckets=rel_pos_num_buckets, - max_distance=rel_pos_max_distance, - ) - - # init output projection 0 - if zero_init_output: - init_zero_(self.to_out) - - def forward( - self, - x, - context=None, - mask=None, - context_mask=None, - attn_mask=None, - sinusoidal_emb=None, - rotary_pos_emb=None, - prev_attn=None, - mem=None, - layer_past=None, - ): - b, n, _, h, talking_heads, collab_heads, head_scale, scale, device, has_context = ( - *x.shape, - self.heads, - self.talking_heads, - self.collab_heads, - self.head_scale, - self.scale, - x.device, - exists(context), - ) - kv_input = default(context, x) - - q_input = x - k_input = kv_input - v_input = kv_input - - if exists(mem): - k_input = torch.cat((mem, k_input), dim=-2) - v_input = torch.cat((mem, v_input), dim=-2) - - if exists(sinusoidal_emb): - # in shortformer, the query would start at a position offset depending on the past cached memory - offset = k_input.shape[-2] - q_input.shape[-2] - q_input = q_input + sinusoidal_emb(q_input, offset=offset) - k_input = k_input + sinusoidal_emb(k_input) - - q = self.to_q(q_input) - k = self.to_k(k_input) - v = self.to_v(v_input) - - if not collab_heads: - q, k, v = map(lambda t: rearrange(t, "b n (h d) -> b h n d", h=h), (q, k, v)) - else: - q = einsum("b i d, h d -> b h i d", q, self.collab_mixing) - k = rearrange(k, "b n d -> b () n d") - v = rearrange(v, "b n (h d) -> b h n d", h=h) - - if layer_past is not None: - past_key, past_value = layer_past - k = torch.cat([past_key, k], dim=-2) - v = torch.cat([past_value, v], dim=-2) - k_cache = k - v_cache = v - - if exists(rotary_pos_emb) and not has_context: - l = rotary_pos_emb.shape[-1] - (ql, qr), (kl, kr), (vl, vr) = map(lambda t: (t[..., :l], t[..., l:]), (q, k, v)) - ql, kl, vl = map(lambda t: apply_rotary_pos_emb(t, rotary_pos_emb), (ql, kl, vl)) - q, k, v = map(lambda t: torch.cat(t, dim=-1), ((ql, qr), (kl, kr), (vl, vr))) - - input_mask = None - if any(map(exists, (mask, context_mask))): - q_mask = default(mask, lambda: torch.ones((b, n), device=device).bool()) - k_mask = q_mask if not exists(context) else context_mask - k_mask = default(k_mask, lambda: torch.ones((b, k.shape[-2]), device=device).bool()) - q_mask = rearrange(q_mask, "b i -> b () i ()") - k_mask = rearrange(k_mask, "b j -> b () () j") - input_mask = q_mask * k_mask - - if self.num_mem_kv > 0: - mem_k, mem_v = map(lambda t: repeat(t, "h n d -> b h n d", b=b), (self.mem_k, self.mem_v)) - k = torch.cat((mem_k, k), dim=-2) - v = torch.cat((mem_v, v), dim=-2) - if exists(input_mask): - input_mask = F.pad(input_mask, (self.num_mem_kv, 0), value=True) - - if collab_heads: - k = k.expand(-1, h, -1, -1) - - if self.qk_norm: - q, k = map(l2norm, (q, k)) - scale = 1 / (self.scale.exp().clamp(min=1e-2)) - - dots = einsum("b h i d, b h j d -> b h i j", q, k) * scale - mask_value = max_neg_value(dots) - - if exists(prev_attn): - dots = dots + prev_attn - - pre_softmax_attn = dots.clone() - - if talking_heads: - dots = einsum("b h i j, h k -> b k i j", dots, self.pre_softmax_proj).contiguous() - - if self.rel_pos_bias: - dots = self.rel_pos(dots) - - if exists(input_mask): - dots.masked_fill_(~input_mask, mask_value) - del input_mask - - if exists(attn_mask): - assert ( - 2 <= attn_mask.ndim <= 4 - ), "attention mask must have greater than 2 dimensions but less than or equal to 4" - if attn_mask.ndim == 2: - attn_mask = rearrange(attn_mask, "i j -> () () i j") - elif attn_mask.ndim == 3: - attn_mask = rearrange(attn_mask, "h i j -> () h i j") - dots.masked_fill_(~attn_mask, mask_value) - - if exists(self.max_attend_past): - i, j = dots.shape[-2:] - range_q = torch.arange(j - i, j, device=device) - range_k = torch.arange(j, device=device) - dist = rearrange(range_q, "i -> () () i ()") - rearrange(range_k, "j -> () () () j") - mask = dist > self.max_attend_past - dots.masked_fill_(mask, mask_value) - del mask - - if self.causal: - i, j = dots.shape[-2:] - r = torch.arange(i, device=device) - mask = rearrange(r, "i -> () () i ()") < rearrange(r, "j -> () () () j") - mask = F.pad(mask, (j - i, 0), value=False) - dots.masked_fill_(mask, mask_value) - del mask - - if exists(self.sparse_topk) and self.sparse_topk < dots.shape[-1]: - top, _ = dots.topk(self.sparse_topk, dim=-1) - vk = top[..., -1].unsqueeze(-1).expand_as(dots) - mask = dots < vk - dots.masked_fill_(mask, mask_value) - del mask - - attn = self.attn_fn(dots, dim=-1) - post_softmax_attn = attn.clone() - - attn = self.dropout(attn) - - if talking_heads: - attn = einsum("b h i j, h k -> b k i j", attn, self.post_softmax_proj).contiguous() - - out = einsum("b h i j, b h j d -> b h i d", attn, v) - - if head_scale: - out = out * self.head_scale_params - - out = rearrange(out, "b h n d -> b n (h d)") - - if exists(self.to_v_gate): - gates = self.to_v_gate(x) - out = out * gates.sigmoid() - - intermediates = Intermediates(pre_softmax_attn=pre_softmax_attn, post_softmax_attn=post_softmax_attn) - - return self.to_out(out), intermediates, k_cache, v_cache - - -class AttentionLayers(nn.Module): - def __init__( - self, - dim, - depth, - heads=8, - causal=False, - cross_attend=False, - only_cross=False, - use_scalenorm=False, - use_rms_scaleshift_norm=False, - use_rmsnorm=False, - use_rezero=False, - alibi_pos_bias=False, - alibi_num_heads=None, - alibi_learned=False, - position_infused_attn=False, - rotary_pos_emb=False, - rotary_emb_dim=None, - custom_layers=None, - sandwich_coef=None, - par_ratio=None, - residual_attn=False, - cross_residual_attn=False, - macaron=False, - pre_norm=True, - gate_residual=False, - scale_residual=False, - shift_tokens=0, - sandwich_norm=False, - use_qk_norm_attn=False, - qk_norm_attn_seq_len=None, - zero_init_branch_output=False, - **kwargs, - ): - super().__init__() - ff_kwargs, kwargs = groupby_prefix_and_trim("ff_", kwargs) - attn_kwargs, _ = groupby_prefix_and_trim("attn_", kwargs) - - dim_head = attn_kwargs.get("dim_head", DEFAULT_DIM_HEAD) - - self.dim = dim - self.depth = depth - self.layers = nn.ModuleList([]) - self.causal = causal - - rel_pos_bias = "rel_pos_bias" in attn_kwargs - self.has_pos_emb = position_infused_attn or rel_pos_bias or rotary_pos_emb - self.pia_pos_emb = FixedPositionalEmbedding(dim) if position_infused_attn else None - - rotary_emb_dim = max(default(rotary_emb_dim, dim_head // 2), 32) - self.rotary_pos_emb = RotaryEmbedding(rotary_emb_dim) if rotary_pos_emb else None - - assert not ( - alibi_pos_bias and rel_pos_bias - ), "you can only choose Alibi positional bias or T5 relative positional bias, not both" - - if alibi_pos_bias: - alibi_num_heads = default(alibi_num_heads, heads) - assert alibi_num_heads <= heads, "number of ALiBi heads must be less than the total number of heads" - alibi_pos_klass = LearnedAlibiPositionalBias if alibi_learned or not causal else AlibiPositionalBias - self.rel_pos = alibi_pos_klass(heads=alibi_num_heads, bidirectional=not causal) - else: - self.rel_pos = None - - assert not (not pre_norm and sandwich_norm), "sandwich norm cannot be used when not using prenorm" - self.pre_norm = pre_norm - self.sandwich_norm = sandwich_norm - - self.residual_attn = residual_attn - self.cross_residual_attn = cross_residual_attn - self.cross_attend = cross_attend - - norm_class = ScaleNorm if use_scalenorm else nn.LayerNorm - norm_class = RMSNorm if use_rmsnorm else norm_class - norm_class = RMSScaleShiftNorm if use_rms_scaleshift_norm else norm_class - norm_fn = partial(norm_class, dim) - - norm_fn = nn.Identity if use_rezero else norm_fn - branch_fn = Rezero if use_rezero else None - - if cross_attend and not only_cross: - default_block = ("a", "c", "f") - elif cross_attend and only_cross: - default_block = ("c", "f") - else: - default_block = ("a", "f") - - if macaron: - default_block = ("f",) + default_block - - # qk normalization - - if use_qk_norm_attn: - attn_scale_init_value = ( - -math.log(math.log2(qk_norm_attn_seq_len**2 - qk_norm_attn_seq_len)) - if exists(qk_norm_attn_seq_len) - else None - ) - attn_kwargs = {**attn_kwargs, "qk_norm": True, "scale_init_value": attn_scale_init_value} - - # zero init - - if zero_init_branch_output: - attn_kwargs = {**attn_kwargs, "zero_init_output": True} - ff_kwargs = {**ff_kwargs, "zero_init_output": True} - - # calculate layer block order - - if exists(custom_layers): - layer_types = custom_layers - elif exists(par_ratio): - par_depth = depth * len(default_block) - assert 1 < par_ratio <= par_depth, "par ratio out of range" - default_block = tuple(filter(not_equals("f"), default_block)) - par_attn = par_depth // par_ratio - depth_cut = par_depth * 2 // 3 # 2 / 3 attention layer cutoff suggested by PAR paper - par_width = (depth_cut + depth_cut // par_attn) // par_attn - assert len(default_block) <= par_width, "default block is too large for par_ratio" - par_block = default_block + ("f",) * (par_width - len(default_block)) - par_head = par_block * par_attn - layer_types = par_head + ("f",) * (par_depth - len(par_head)) - elif exists(sandwich_coef): - assert sandwich_coef > 0 and sandwich_coef <= depth, "sandwich coefficient should be less than the depth" - layer_types = ("a",) * sandwich_coef + default_block * (depth - sandwich_coef) + ("f",) * sandwich_coef - else: - layer_types = default_block * depth - - self.layer_types = layer_types - self.num_attn_layers = len(list(filter(equals("a"), layer_types))) - - # calculate token shifting - - shift_tokens = cast_tuple(shift_tokens, len(layer_types)) - - # iterate and construct layers - - for ind, (layer_type, layer_shift_tokens) in enumerate(zip(self.layer_types, shift_tokens)): - is_last_layer = ind == (len(self.layer_types) - 1) - - if layer_type == "a": - layer = Attention(dim, heads=heads, causal=causal, **attn_kwargs) - elif layer_type == "c": - layer = Attention(dim, heads=heads, **attn_kwargs) - elif layer_type == "f": - layer = FeedForward(dim, **ff_kwargs) - layer = layer if not macaron else Scale(0.5, layer) - else: - raise Exception(f"invalid layer type {layer_type}") - - if layer_shift_tokens > 0: - shift_range_upper = layer_shift_tokens + 1 - shift_range_lower = -layer_shift_tokens if not causal else 0 - layer = ShiftTokens(range(shift_range_lower, shift_range_upper), layer) - - if exists(branch_fn): - layer = branch_fn(layer) - - residual_fn = GRUGating if gate_residual else Residual - residual = residual_fn(dim, scale_residual=scale_residual) - - layer_uses_qk_norm = use_qk_norm_attn and layer_type in ("a", "c") - - pre_branch_norm = norm_fn() if pre_norm and not layer_uses_qk_norm else None - post_branch_norm = norm_fn() if sandwich_norm or layer_uses_qk_norm else None - post_main_norm = norm_fn() if not pre_norm and not is_last_layer else None - - norms = nn.ModuleList([pre_branch_norm, post_branch_norm, post_main_norm]) - - self.layers.append(nn.ModuleList([norms, layer, residual])) - - def forward( - self, - x, - context=None, - full_context=None, # for passing a list of hidden states from an encoder - mask=None, - context_mask=None, - attn_mask=None, - mems=None, - return_hiddens=False, - norm_scale_shift_inp=None, - past_key_values=None, - expected_seq_len=None, - ): - assert not ( - self.cross_attend ^ (exists(context) or exists(full_context)) - ), "context must be passed in if cross_attend is set to True" - assert context is None or full_context is None, "only one of full_context or context can be provided" - - hiddens = [] - intermediates = [] - prev_attn = None - prev_cross_attn = None - - mems = mems.copy() if exists(mems) else [None] * self.num_attn_layers - norm_args = {} - if exists(norm_scale_shift_inp): - norm_args["norm_scale_shift_inp"] = norm_scale_shift_inp - - rotary_pos_emb = None - if exists(self.rotary_pos_emb): - if not self.training and self.causal: - assert ( - expected_seq_len is not None - ), "To decode a transformer with rotary embeddings, you must specify an `expected_seq_len`" - elif expected_seq_len is None: - expected_seq_len = 0 - seq_len = x.shape[1] - if past_key_values is not None: - seq_len += past_key_values[0][0].shape[-2] - max_rotary_emb_length = max( - list(map(lambda m: (m.shape[1] if exists(m) else 0) + seq_len, mems)) + [expected_seq_len] - ) - rotary_pos_emb = self.rotary_pos_emb(max_rotary_emb_length, x.device) - - present_key_values = [] - cross_attn_count = 0 - for ind, (layer_type, (norm, block, residual_fn)) in enumerate(zip(self.layer_types, self.layers)): - if layer_type == "a": - layer_mem = mems.pop(0) if mems else None - - residual = x - - pre_branch_norm, post_branch_norm, post_main_norm = norm - - if exists(pre_branch_norm): - x = pre_branch_norm(x, **norm_args) - - if layer_type == "a" or layer_type == "c": - if past_key_values is not None: - layer_kv = past_key_values.pop(0) - layer_past = tuple(s.to(x.device) for s in layer_kv) - else: - layer_past = None - - if layer_type == "a": - out, inter, k, v = block( - x, None, mask, None, attn_mask, self.pia_pos_emb, rotary_pos_emb, prev_attn, layer_mem, layer_past - ) - elif layer_type == "c": - if exists(full_context): - out, inter, k, v = block( - x, - full_context[cross_attn_count], - mask, - context_mask, - None, - None, - None, - prev_attn, - None, - layer_past, - ) - else: - out, inter, k, v = block( - x, context, mask, context_mask, None, None, None, prev_attn, None, layer_past - ) - elif layer_type == "f": - out = block(x) - - if layer_type == "a" or layer_type == "c" and present_key_values is not None: - present_key_values.append((k.detach(), v.detach())) - - if exists(post_branch_norm): - out = post_branch_norm(out, **norm_args) - - x = residual_fn(out, residual) - - if layer_type in ("a", "c"): - intermediates.append(inter) - - if layer_type == "a" and self.residual_attn: - prev_attn = inter.pre_softmax_attn - elif layer_type == "c" and self.cross_residual_attn: - prev_cross_attn = inter.pre_softmax_attn - - if exists(post_main_norm): - x = post_main_norm(x, **norm_args) - - if layer_type == "c": - cross_attn_count += 1 - - if layer_type == "f": - hiddens.append(x) - - if return_hiddens: - intermediates = LayerIntermediates( - hiddens=hiddens, attn_intermediates=intermediates, past_key_values=present_key_values - ) - - return x, intermediates - - return x - - -class Encoder(AttentionLayers): - def __init__(self, **kwargs): - assert "causal" not in kwargs, "cannot set causality on encoder" - super().__init__(causal=False, **kwargs) - - -class Decoder(AttentionLayers): - def __init__(self, **kwargs): - assert "causal" not in kwargs, "cannot set causality on decoder" - super().__init__(causal=True, **kwargs) - - -class CrossAttender(AttentionLayers): - def __init__(self, **kwargs): - super().__init__(cross_attend=True, only_cross=True, **kwargs) - - -class ViTransformerWrapper(nn.Module): - def __init__(self, *, image_size, patch_size, attn_layers, num_classes=None, dropout=0.0, emb_dropout=0.0): - super().__init__() - assert isinstance(attn_layers, Encoder), "attention layers must be an Encoder" - assert image_size % patch_size == 0, "image dimensions must be divisible by the patch size" - dim = attn_layers.dim - num_patches = (image_size // patch_size) ** 2 - patch_dim = 3 * patch_size**2 - - self.patch_size = patch_size - - self.pos_embedding = nn.Parameter(torch.randn(1, num_patches + 1, dim)) - self.patch_to_embedding = nn.Linear(patch_dim, dim) - self.cls_token = nn.Parameter(torch.randn(1, 1, dim)) - self.dropout = nn.Dropout(emb_dropout) - - self.attn_layers = attn_layers - self.norm = nn.LayerNorm(dim) - self.mlp_head = FeedForward(dim, dim_out=num_classes, dropout=dropout) if exists(num_classes) else None - - def forward(self, img, return_embeddings=False): - p = self.patch_size - - x = rearrange(img, "b c (h p1) (w p2) -> b (h w) (p1 p2 c)", p1=p, p2=p) - x = self.patch_to_embedding(x) - b, n, _ = x.shape - - cls_tokens = repeat(self.cls_token, "() n d -> b n d", b=b) - x = torch.cat((cls_tokens, x), dim=1) - x = x + self.pos_embedding[:, : (n + 1)] - x = self.dropout(x) - - x = self.attn_layers(x) - x = self.norm(x) - - if not exists(self.mlp_head) or return_embeddings: - return x - - return self.mlp_head(x[:, 0]) - - -class TransformerWrapper(nn.Module): - def __init__( - self, - *, - num_tokens, - max_seq_len, - attn_layers, - emb_dim=None, - max_mem_len=0.0, - shift_mem_down=0, - emb_dropout=0.0, - num_memory_tokens=None, - tie_embedding=False, - use_pos_emb=True, - ): - super().__init__() - assert isinstance(attn_layers, AttentionLayers), "attention layers must be one of Encoder or Decoder" - - dim = attn_layers.dim - emb_dim = default(emb_dim, dim) - - self.max_seq_len = max_seq_len - self.max_mem_len = max_mem_len - self.shift_mem_down = shift_mem_down - - self.token_emb = nn.Embedding(num_tokens, emb_dim) - self.pos_emb = ( - AbsolutePositionalEmbedding(emb_dim, max_seq_len) - if (use_pos_emb and not attn_layers.has_pos_emb) - else always(0) - ) - self.emb_dropout = nn.Dropout(emb_dropout) - - self.project_emb = nn.Linear(emb_dim, dim) if emb_dim != dim else nn.Identity() - self.attn_layers = attn_layers - self.norm = nn.LayerNorm(dim) - - self.init_() - - self.to_logits = nn.Linear(dim, num_tokens) if not tie_embedding else lambda t: t @ self.token_emb.weight.t() - - # memory tokens (like [cls]) from Memory Transformers paper - num_memory_tokens = default(num_memory_tokens, 0) - self.num_memory_tokens = num_memory_tokens - if num_memory_tokens > 0: - self.memory_tokens = nn.Parameter(torch.randn(num_memory_tokens, dim)) - - def init_(self): - nn.init.kaiming_normal_(self.token_emb.weight) - - def forward( - self, - x, - return_embeddings=False, - mask=None, - return_hiddens=False, - return_attn=False, - mems=None, - use_cache=False, - **kwargs, - ): - b, n, device, num_mem = *x.shape, x.device, self.num_memory_tokens - x = self.token_emb(x) - x = x + self.pos_emb(x) - x = self.emb_dropout(x) - - x = self.project_emb(x) - - if num_mem > 0: - mem = repeat(self.memory_tokens, "n d -> b n d", b=b) - x = torch.cat((mem, x), dim=1) - - # auto-handle masking after appending memory tokens - if exists(mask): - mask = F.pad(mask, (num_mem, 0), value=True) - - if self.shift_mem_down and exists(mems): - mems_l, mems_r = mems[: self.shift_mem_down], mems[self.shift_mem_down :] - mems = [*mems_r, *mems_l] - - x, intermediates = self.attn_layers(x, mask=mask, mems=mems, return_hiddens=True, **kwargs) - x = self.norm(x) - - mem, x = x[:, :num_mem], x[:, num_mem:] - - out = self.to_logits(x) if not return_embeddings else x - - if return_hiddens: - hiddens = intermediates.hiddens - return out, hiddens - - res = [out] - if return_attn: - attn_maps = list(map(lambda t: t.post_softmax_attn, intermediates.attn_intermediates)) - res.append(attn_maps) - if use_cache: - res.append(intermediates.past_key_values) - - if len(res) > 1: - return tuple(res) - return res[0] - - -class ContinuousTransformerWrapper(nn.Module): - def __init__( - self, *, max_seq_len, attn_layers, dim_in=None, dim_out=None, emb_dim=None, emb_dropout=0.0, use_pos_emb=True - ): - super().__init__() - assert isinstance(attn_layers, AttentionLayers), "attention layers must be one of Encoder or Decoder" - - dim = attn_layers.dim - - self.max_seq_len = max_seq_len - - self.pos_emb = ( - AbsolutePositionalEmbedding(dim, max_seq_len) - if (use_pos_emb and not attn_layers.has_pos_emb) - else always(0) - ) - self.emb_dropout = nn.Dropout(emb_dropout) - - self.project_in = nn.Linear(dim_in, dim) if exists(dim_in) else nn.Identity() - - self.attn_layers = attn_layers - self.norm = nn.LayerNorm(dim) - - self.project_out = nn.Linear(dim, dim_out) if exists(dim_out) else nn.Identity() - - def forward(self, x, return_embeddings=False, mask=None, return_attn=False, mems=None, use_cache=False, **kwargs): - b, n, _, device = *x.shape, x.device - - x = self.project_in(x) - x = x + self.pos_emb(x) - x = self.emb_dropout(x) - - x, intermediates = self.attn_layers(x, mask=mask, mems=mems, return_hiddens=True, **kwargs) - x = self.norm(x) - - out = self.project_out(x) if not return_embeddings else x - - res = [out] - if return_attn: - attn_maps = list(map(lambda t: t.post_softmax_attn, intermediates.attn_intermediates)) - res.append(attn_maps) - if use_cache: - res.append(intermediates.past_key_values) - - if len(res) > 1: - return tuple(res) - return res[0] diff --git a/TTS/TTS/tts/layers/vits/discriminator.py b/TTS/TTS/tts/layers/vits/discriminator.py deleted file mode 100644 index 148f283c9010e522c49ad2595860ab859ba6aa48..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/vits/discriminator.py +++ /dev/null @@ -1,89 +0,0 @@ -import torch -from torch import nn -from torch.nn.modules.conv import Conv1d - -from TTS.vocoder.models.hifigan_discriminator import DiscriminatorP, MultiPeriodDiscriminator - - -class DiscriminatorS(torch.nn.Module): - """HiFiGAN Scale Discriminator. Channel sizes are different from the original HiFiGAN. - - Args: - use_spectral_norm (bool): if `True` swith to spectral norm instead of weight norm. - """ - - def __init__(self, use_spectral_norm=False): - super().__init__() - norm_f = nn.utils.spectral_norm if use_spectral_norm else nn.utils.weight_norm - self.convs = nn.ModuleList( - [ - norm_f(Conv1d(1, 16, 15, 1, padding=7)), - norm_f(Conv1d(16, 64, 41, 4, groups=4, padding=20)), - norm_f(Conv1d(64, 256, 41, 4, groups=16, padding=20)), - norm_f(Conv1d(256, 1024, 41, 4, groups=64, padding=20)), - norm_f(Conv1d(1024, 1024, 41, 4, groups=256, padding=20)), - norm_f(Conv1d(1024, 1024, 5, 1, padding=2)), - ] - ) - self.conv_post = norm_f(Conv1d(1024, 1, 3, 1, padding=1)) - - def forward(self, x): - """ - Args: - x (Tensor): input waveform. - - Returns: - Tensor: discriminator scores. - List[Tensor]: list of features from the convolutiona layers. - """ - feat = [] - for l in self.convs: - x = l(x) - x = torch.nn.functional.leaky_relu(x, 0.1) - feat.append(x) - x = self.conv_post(x) - feat.append(x) - x = torch.flatten(x, 1, -1) - return x, feat - - -class VitsDiscriminator(nn.Module): - """VITS discriminator wrapping one Scale Discriminator and a stack of Period Discriminator. - - :: - waveform -> ScaleDiscriminator() -> scores_sd, feats_sd --> append() -> scores, feats - |--> MultiPeriodDiscriminator() -> scores_mpd, feats_mpd ^ - - Args: - use_spectral_norm (bool): if `True` swith to spectral norm instead of weight norm. - """ - - def __init__(self, periods=(2, 3, 5, 7, 11), use_spectral_norm=False): - super().__init__() - self.nets = nn.ModuleList() - self.nets.append(DiscriminatorS(use_spectral_norm=use_spectral_norm)) - self.nets.extend([DiscriminatorP(i, use_spectral_norm=use_spectral_norm) for i in periods]) - - def forward(self, x, x_hat=None): - """ - Args: - x (Tensor): ground truth waveform. - x_hat (Tensor): predicted waveform. - - Returns: - List[Tensor]: discriminator scores. - List[List[Tensor]]: list of list of features from each layers of each discriminator. - """ - x_scores = [] - x_hat_scores = [] if x_hat is not None else None - x_feats = [] - x_hat_feats = [] if x_hat is not None else None - for net in self.nets: - x_score, x_feat = net(x) - x_scores.append(x_score) - x_feats.append(x_feat) - if x_hat is not None: - x_hat_score, x_hat_feat = net(x_hat) - x_hat_scores.append(x_hat_score) - x_hat_feats.append(x_hat_feat) - return x_scores, x_feats, x_hat_scores, x_hat_feats diff --git a/TTS/TTS/tts/layers/vits/networks.py b/TTS/TTS/tts/layers/vits/networks.py deleted file mode 100644 index f97b584fe6ed311127a8c01a089b159946219cb2..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/vits/networks.py +++ /dev/null @@ -1,288 +0,0 @@ -import math - -import torch -from torch import nn - -from TTS.tts.layers.glow_tts.glow import WN -from TTS.tts.layers.glow_tts.transformer import RelativePositionTransformer -from TTS.tts.utils.helpers import sequence_mask - -LRELU_SLOPE = 0.1 - - -def convert_pad_shape(pad_shape): - l = pad_shape[::-1] - pad_shape = [item for sublist in l for item in sublist] - return pad_shape - - -def init_weights(m, mean=0.0, std=0.01): - classname = m.__class__.__name__ - if classname.find("Conv") != -1: - m.weight.data.normal_(mean, std) - - -def get_padding(kernel_size, dilation=1): - return int((kernel_size * dilation - dilation) / 2) - - -class TextEncoder(nn.Module): - def __init__( - self, - n_vocab: int, - out_channels: int, - hidden_channels: int, - hidden_channels_ffn: int, - num_heads: int, - num_layers: int, - kernel_size: int, - dropout_p: float, - language_emb_dim: int = None, - ): - """Text Encoder for VITS model. - - Args: - n_vocab (int): Number of characters for the embedding layer. - out_channels (int): Number of channels for the output. - hidden_channels (int): Number of channels for the hidden layers. - hidden_channels_ffn (int): Number of channels for the convolutional layers. - num_heads (int): Number of attention heads for the Transformer layers. - num_layers (int): Number of Transformer layers. - kernel_size (int): Kernel size for the FFN layers in Transformer network. - dropout_p (float): Dropout rate for the Transformer layers. - """ - super().__init__() - self.out_channels = out_channels - self.hidden_channels = hidden_channels - - self.emb = nn.Embedding(n_vocab, hidden_channels) - - nn.init.normal_(self.emb.weight, 0.0, hidden_channels**-0.5) - - if language_emb_dim: - hidden_channels += language_emb_dim - - self.encoder = RelativePositionTransformer( - in_channels=hidden_channels, - out_channels=hidden_channels, - hidden_channels=hidden_channels, - hidden_channels_ffn=hidden_channels_ffn, - num_heads=num_heads, - num_layers=num_layers, - kernel_size=kernel_size, - dropout_p=dropout_p, - layer_norm_type="2", - rel_attn_window_size=4, - ) - - self.proj = nn.Conv1d(hidden_channels, out_channels * 2, 1) - - def forward(self, x, x_lengths, lang_emb=None): - """ - Shapes: - - x: :math:`[B, T]` - - x_length: :math:`[B]` - """ - assert x.shape[0] == x_lengths.shape[0] - x = self.emb(x) * math.sqrt(self.hidden_channels) # [b, t, h] - - # concat the lang emb in embedding chars - if lang_emb is not None: - x = torch.cat((x, lang_emb.transpose(2, 1).expand(x.size(0), x.size(1), -1)), dim=-1) - - x = torch.transpose(x, 1, -1) # [b, h, t] - x_mask = torch.unsqueeze(sequence_mask(x_lengths, x.size(2)), 1).to(x.dtype) # [b, 1, t] - - x = self.encoder(x * x_mask, x_mask) - stats = self.proj(x) * x_mask - - m, logs = torch.split(stats, self.out_channels, dim=1) - return x, m, logs, x_mask - - -class ResidualCouplingBlock(nn.Module): - def __init__( - self, - channels, - hidden_channels, - kernel_size, - dilation_rate, - num_layers, - dropout_p=0, - cond_channels=0, - mean_only=False, - ): - assert channels % 2 == 0, "channels should be divisible by 2" - super().__init__() - self.half_channels = channels // 2 - self.mean_only = mean_only - # input layer - self.pre = nn.Conv1d(self.half_channels, hidden_channels, 1) - # coupling layers - self.enc = WN( - hidden_channels, - hidden_channels, - kernel_size, - dilation_rate, - num_layers, - dropout_p=dropout_p, - c_in_channels=cond_channels, - ) - # output layer - # Initializing last layer to 0 makes the affine coupling layers - # do nothing at first. This helps with training stability - self.post = nn.Conv1d(hidden_channels, self.half_channels * (2 - mean_only), 1) - self.post.weight.data.zero_() - self.post.bias.data.zero_() - - def forward(self, x, x_mask, g=None, reverse=False): - """ - Note: - Set `reverse` to True for inference. - - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - - g: :math:`[B, C, 1]` - """ - x0, x1 = torch.split(x, [self.half_channels] * 2, 1) - h = self.pre(x0) * x_mask - h = self.enc(h, x_mask, g=g) - stats = self.post(h) * x_mask - if not self.mean_only: - m, log_scale = torch.split(stats, [self.half_channels] * 2, 1) - else: - m = stats - log_scale = torch.zeros_like(m) - - if not reverse: - x1 = m + x1 * torch.exp(log_scale) * x_mask - x = torch.cat([x0, x1], 1) - logdet = torch.sum(log_scale, [1, 2]) - return x, logdet - else: - x1 = (x1 - m) * torch.exp(-log_scale) * x_mask - x = torch.cat([x0, x1], 1) - return x - - -class ResidualCouplingBlocks(nn.Module): - def __init__( - self, - channels: int, - hidden_channels: int, - kernel_size: int, - dilation_rate: int, - num_layers: int, - num_flows=4, - cond_channels=0, - ): - """Redisual Coupling blocks for VITS flow layers. - - Args: - channels (int): Number of input and output tensor channels. - hidden_channels (int): Number of hidden network channels. - kernel_size (int): Kernel size of the WaveNet layers. - dilation_rate (int): Dilation rate of the WaveNet layers. - num_layers (int): Number of the WaveNet layers. - num_flows (int, optional): Number of Residual Coupling blocks. Defaults to 4. - cond_channels (int, optional): Number of channels of the conditioning tensor. Defaults to 0. - """ - super().__init__() - self.channels = channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.num_layers = num_layers - self.num_flows = num_flows - self.cond_channels = cond_channels - - self.flows = nn.ModuleList() - for _ in range(num_flows): - self.flows.append( - ResidualCouplingBlock( - channels, - hidden_channels, - kernel_size, - dilation_rate, - num_layers, - cond_channels=cond_channels, - mean_only=True, - ) - ) - - def forward(self, x, x_mask, g=None, reverse=False): - """ - Note: - Set `reverse` to True for inference. - - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - - g: :math:`[B, C, 1]` - """ - if not reverse: - for flow in self.flows: - x, _ = flow(x, x_mask, g=g, reverse=reverse) - x = torch.flip(x, [1]) - else: - for flow in reversed(self.flows): - x = torch.flip(x, [1]) - x = flow(x, x_mask, g=g, reverse=reverse) - return x - - -class PosteriorEncoder(nn.Module): - def __init__( - self, - in_channels: int, - out_channels: int, - hidden_channels: int, - kernel_size: int, - dilation_rate: int, - num_layers: int, - cond_channels=0, - ): - """Posterior Encoder of VITS model. - - :: - x -> conv1x1() -> WaveNet() (non-causal) -> conv1x1() -> split() -> [m, s] -> sample(m, s) -> z - - Args: - in_channels (int): Number of input tensor channels. - out_channels (int): Number of output tensor channels. - hidden_channels (int): Number of hidden channels. - kernel_size (int): Kernel size of the WaveNet convolution layers. - dilation_rate (int): Dilation rate of the WaveNet layers. - num_layers (int): Number of the WaveNet layers. - cond_channels (int, optional): Number of conditioning tensor channels. Defaults to 0. - """ - super().__init__() - self.in_channels = in_channels - self.out_channels = out_channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.num_layers = num_layers - self.cond_channels = cond_channels - - self.pre = nn.Conv1d(in_channels, hidden_channels, 1) - self.enc = WN( - hidden_channels, hidden_channels, kernel_size, dilation_rate, num_layers, c_in_channels=cond_channels - ) - self.proj = nn.Conv1d(hidden_channels, out_channels * 2, 1) - - def forward(self, x, x_lengths, g=None): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_lengths: :math:`[B, 1]` - - g: :math:`[B, C, 1]` - """ - x_mask = torch.unsqueeze(sequence_mask(x_lengths, x.size(2)), 1).to(x.dtype) - x = self.pre(x) * x_mask - x = self.enc(x, x_mask, g=g) - stats = self.proj(x) * x_mask - mean, log_scale = torch.split(stats, self.out_channels, dim=1) - z = (mean + torch.randn_like(mean) * torch.exp(log_scale)) * x_mask - return z, mean, log_scale, x_mask diff --git a/TTS/TTS/tts/layers/vits/stochastic_duration_predictor.py b/TTS/TTS/tts/layers/vits/stochastic_duration_predictor.py deleted file mode 100644 index 98dbf0935ca0f6cd6e92fe6ecf063dde2ee4138f..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/vits/stochastic_duration_predictor.py +++ /dev/null @@ -1,294 +0,0 @@ -import math - -import torch -from torch import nn -from torch.nn import functional as F - -from TTS.tts.layers.generic.normalization import LayerNorm2 -from TTS.tts.layers.vits.transforms import piecewise_rational_quadratic_transform - - -class DilatedDepthSeparableConv(nn.Module): - def __init__(self, channels, kernel_size, num_layers, dropout_p=0.0) -> torch.tensor: - """Dilated Depth-wise Separable Convolution module. - - :: - x |-> DDSConv(x) -> LayerNorm(x) -> GeLU(x) -> Conv1x1(x) -> LayerNorm(x) -> GeLU(x) -> + -> o - |-------------------------------------------------------------------------------------^ - - Args: - channels ([type]): [description] - kernel_size ([type]): [description] - num_layers ([type]): [description] - dropout_p (float, optional): [description]. Defaults to 0.0. - - Returns: - torch.tensor: Network output masked by the input sequence mask. - """ - super().__init__() - self.num_layers = num_layers - - self.convs_sep = nn.ModuleList() - self.convs_1x1 = nn.ModuleList() - self.norms_1 = nn.ModuleList() - self.norms_2 = nn.ModuleList() - for i in range(num_layers): - dilation = kernel_size**i - padding = (kernel_size * dilation - dilation) // 2 - self.convs_sep.append( - nn.Conv1d(channels, channels, kernel_size, groups=channels, dilation=dilation, padding=padding) - ) - self.convs_1x1.append(nn.Conv1d(channels, channels, 1)) - self.norms_1.append(LayerNorm2(channels)) - self.norms_2.append(LayerNorm2(channels)) - self.dropout = nn.Dropout(dropout_p) - - def forward(self, x, x_mask, g=None): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - """ - if g is not None: - x = x + g - for i in range(self.num_layers): - y = self.convs_sep[i](x * x_mask) - y = self.norms_1[i](y) - y = F.gelu(y) - y = self.convs_1x1[i](y) - y = self.norms_2[i](y) - y = F.gelu(y) - y = self.dropout(y) - x = x + y - return x * x_mask - - -class ElementwiseAffine(nn.Module): - """Element-wise affine transform like no-population stats BatchNorm alternative. - - Args: - channels (int): Number of input tensor channels. - """ - - def __init__(self, channels): - super().__init__() - self.translation = nn.Parameter(torch.zeros(channels, 1)) - self.log_scale = nn.Parameter(torch.zeros(channels, 1)) - - def forward(self, x, x_mask, reverse=False, **kwargs): # pylint: disable=unused-argument - if not reverse: - y = (x * torch.exp(self.log_scale) + self.translation) * x_mask - logdet = torch.sum(self.log_scale * x_mask, [1, 2]) - return y, logdet - x = (x - self.translation) * torch.exp(-self.log_scale) * x_mask - return x - - -class ConvFlow(nn.Module): - """Dilated depth separable convolutional based spline flow. - - Args: - in_channels (int): Number of input tensor channels. - hidden_channels (int): Number of in network channels. - kernel_size (int): Convolutional kernel size. - num_layers (int): Number of convolutional layers. - num_bins (int, optional): Number of spline bins. Defaults to 10. - tail_bound (float, optional): Tail bound for PRQT. Defaults to 5.0. - """ - - def __init__( - self, - in_channels: int, - hidden_channels: int, - kernel_size: int, - num_layers: int, - num_bins=10, - tail_bound=5.0, - ): - super().__init__() - self.num_bins = num_bins - self.tail_bound = tail_bound - self.hidden_channels = hidden_channels - self.half_channels = in_channels // 2 - - self.pre = nn.Conv1d(self.half_channels, hidden_channels, 1) - self.convs = DilatedDepthSeparableConv(hidden_channels, kernel_size, num_layers, dropout_p=0.0) - self.proj = nn.Conv1d(hidden_channels, self.half_channels * (num_bins * 3 - 1), 1) - self.proj.weight.data.zero_() - self.proj.bias.data.zero_() - - def forward(self, x, x_mask, g=None, reverse=False): - x0, x1 = torch.split(x, [self.half_channels] * 2, 1) - h = self.pre(x0) - h = self.convs(h, x_mask, g=g) - h = self.proj(h) * x_mask - - b, c, t = x0.shape - h = h.reshape(b, c, -1, t).permute(0, 1, 3, 2) # [b, cx?, t] -> [b, c, t, ?] - - unnormalized_widths = h[..., : self.num_bins] / math.sqrt(self.hidden_channels) - unnormalized_heights = h[..., self.num_bins : 2 * self.num_bins] / math.sqrt(self.hidden_channels) - unnormalized_derivatives = h[..., 2 * self.num_bins :] - - x1, logabsdet = piecewise_rational_quadratic_transform( - x1, - unnormalized_widths, - unnormalized_heights, - unnormalized_derivatives, - inverse=reverse, - tails="linear", - tail_bound=self.tail_bound, - ) - - x = torch.cat([x0, x1], 1) * x_mask - logdet = torch.sum(logabsdet * x_mask, [1, 2]) - if not reverse: - return x, logdet - return x - - -class StochasticDurationPredictor(nn.Module): - """Stochastic duration predictor with Spline Flows. - - It applies Variational Dequantization and Variational Data Augmentation. - - Paper: - SDP: https://arxiv.org/pdf/2106.06103.pdf - Spline Flow: https://arxiv.org/abs/1906.04032 - - :: - ## Inference - - x -> TextCondEncoder() -> Flow() -> dr_hat - noise ----------------------^ - - ## Training - |---------------------| - x -> TextCondEncoder() -> + -> PosteriorEncoder() -> split() -> z_u, z_v -> (d - z_u) -> concat() -> Flow() -> noise - d -> DurCondEncoder() -> ^ | - |------------------------------------------------------------------------------| - - Args: - in_channels (int): Number of input tensor channels. - hidden_channels (int): Number of hidden channels. - kernel_size (int): Kernel size of convolutional layers. - dropout_p (float): Dropout rate. - num_flows (int, optional): Number of flow blocks. Defaults to 4. - cond_channels (int, optional): Number of channels of conditioning tensor. Defaults to 0. - """ - - def __init__( - self, - in_channels: int, - hidden_channels: int, - kernel_size: int, - dropout_p: float, - num_flows=4, - cond_channels=0, - language_emb_dim=0, - ): - super().__init__() - - # add language embedding dim in the input - if language_emb_dim: - in_channels += language_emb_dim - - # condition encoder text - self.pre = nn.Conv1d(in_channels, hidden_channels, 1) - self.convs = DilatedDepthSeparableConv(hidden_channels, kernel_size, num_layers=3, dropout_p=dropout_p) - self.proj = nn.Conv1d(hidden_channels, hidden_channels, 1) - - # posterior encoder - self.flows = nn.ModuleList() - self.flows.append(ElementwiseAffine(2)) - self.flows += [ConvFlow(2, hidden_channels, kernel_size, num_layers=3) for _ in range(num_flows)] - - # condition encoder duration - self.post_pre = nn.Conv1d(1, hidden_channels, 1) - self.post_convs = DilatedDepthSeparableConv(hidden_channels, kernel_size, num_layers=3, dropout_p=dropout_p) - self.post_proj = nn.Conv1d(hidden_channels, hidden_channels, 1) - - # flow layers - self.post_flows = nn.ModuleList() - self.post_flows.append(ElementwiseAffine(2)) - self.post_flows += [ConvFlow(2, hidden_channels, kernel_size, num_layers=3) for _ in range(num_flows)] - - if cond_channels != 0 and cond_channels is not None: - self.cond = nn.Conv1d(cond_channels, hidden_channels, 1) - - if language_emb_dim != 0 and language_emb_dim is not None: - self.cond_lang = nn.Conv1d(language_emb_dim, hidden_channels, 1) - - def forward(self, x, x_mask, dr=None, g=None, lang_emb=None, reverse=False, noise_scale=1.0): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - - dr: :math:`[B, 1, T]` - - g: :math:`[B, C]` - """ - # condition encoder text - x = self.pre(x) - if g is not None: - x = x + self.cond(g) - - if lang_emb is not None: - x = x + self.cond_lang(lang_emb) - - x = self.convs(x, x_mask) - x = self.proj(x) * x_mask - - if not reverse: - flows = self.flows - assert dr is not None - - # condition encoder duration - h = self.post_pre(dr) - h = self.post_convs(h, x_mask) - h = self.post_proj(h) * x_mask - noise = torch.randn(dr.size(0), 2, dr.size(2)).to(device=x.device, dtype=x.dtype) * x_mask - z_q = noise - - # posterior encoder - logdet_tot_q = 0.0 - for idx, flow in enumerate(self.post_flows): - z_q, logdet_q = flow(z_q, x_mask, g=(x + h)) - logdet_tot_q = logdet_tot_q + logdet_q - if idx > 0: - z_q = torch.flip(z_q, [1]) - - z_u, z_v = torch.split(z_q, [1, 1], 1) - u = torch.sigmoid(z_u) * x_mask - z0 = (dr - u) * x_mask - - # posterior encoder - neg log likelihood - logdet_tot_q += torch.sum((F.logsigmoid(z_u) + F.logsigmoid(-z_u)) * x_mask, [1, 2]) - nll_posterior_encoder = ( - torch.sum(-0.5 * (math.log(2 * math.pi) + (noise**2)) * x_mask, [1, 2]) - logdet_tot_q - ) - - z0 = torch.log(torch.clamp_min(z0, 1e-5)) * x_mask - logdet_tot = torch.sum(-z0, [1, 2]) - z = torch.cat([z0, z_v], 1) - - # flow layers - for idx, flow in enumerate(flows): - z, logdet = flow(z, x_mask, g=x, reverse=reverse) - logdet_tot = logdet_tot + logdet - if idx > 0: - z = torch.flip(z, [1]) - - # flow layers - neg log likelihood - nll_flow_layers = torch.sum(0.5 * (math.log(2 * math.pi) + (z**2)) * x_mask, [1, 2]) - logdet_tot - return nll_flow_layers + nll_posterior_encoder - - flows = list(reversed(self.flows)) - flows = flows[:-2] + [flows[-1]] # remove a useless vflow - z = torch.randn(x.size(0), 2, x.size(2)).to(device=x.device, dtype=x.dtype) * noise_scale - for flow in flows: - z = torch.flip(z, [1]) - z = flow(z, x_mask, g=x, reverse=reverse) - - z0, _ = torch.split(z, [1, 1], 1) - logw = z0 - return logw diff --git a/TTS/TTS/tts/layers/vits/transforms.py b/TTS/TTS/tts/layers/vits/transforms.py deleted file mode 100644 index 3cac1b8d6d12fe98123ca554899978782cf3b4c5..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/layers/vits/transforms.py +++ /dev/null @@ -1,202 +0,0 @@ -# adopted from https://github.com/bayesiains/nflows - -import numpy as np -import torch -from torch.nn import functional as F - -DEFAULT_MIN_BIN_WIDTH = 1e-3 -DEFAULT_MIN_BIN_HEIGHT = 1e-3 -DEFAULT_MIN_DERIVATIVE = 1e-3 - - -def piecewise_rational_quadratic_transform( - inputs, - unnormalized_widths, - unnormalized_heights, - unnormalized_derivatives, - inverse=False, - tails=None, - tail_bound=1.0, - min_bin_width=DEFAULT_MIN_BIN_WIDTH, - min_bin_height=DEFAULT_MIN_BIN_HEIGHT, - min_derivative=DEFAULT_MIN_DERIVATIVE, -): - if tails is None: - spline_fn = rational_quadratic_spline - spline_kwargs = {} - else: - spline_fn = unconstrained_rational_quadratic_spline - spline_kwargs = {"tails": tails, "tail_bound": tail_bound} - - outputs, logabsdet = spline_fn( - inputs=inputs, - unnormalized_widths=unnormalized_widths, - unnormalized_heights=unnormalized_heights, - unnormalized_derivatives=unnormalized_derivatives, - inverse=inverse, - min_bin_width=min_bin_width, - min_bin_height=min_bin_height, - min_derivative=min_derivative, - **spline_kwargs, - ) - return outputs, logabsdet - - -def searchsorted(bin_locations, inputs, eps=1e-6): - bin_locations[..., -1] += eps - return torch.sum(inputs[..., None] >= bin_locations, dim=-1) - 1 - - -def unconstrained_rational_quadratic_spline( - inputs, - unnormalized_widths, - unnormalized_heights, - unnormalized_derivatives, - inverse=False, - tails="linear", - tail_bound=1.0, - min_bin_width=DEFAULT_MIN_BIN_WIDTH, - min_bin_height=DEFAULT_MIN_BIN_HEIGHT, - min_derivative=DEFAULT_MIN_DERIVATIVE, -): - inside_interval_mask = (inputs >= -tail_bound) & (inputs <= tail_bound) - outside_interval_mask = ~inside_interval_mask - - outputs = torch.zeros_like(inputs) - logabsdet = torch.zeros_like(inputs) - - if tails == "linear": - unnormalized_derivatives = F.pad(unnormalized_derivatives, pad=(1, 1)) - constant = np.log(np.exp(1 - min_derivative) - 1) - unnormalized_derivatives[..., 0] = constant - unnormalized_derivatives[..., -1] = constant - - outputs[outside_interval_mask] = inputs[outside_interval_mask] - logabsdet[outside_interval_mask] = 0 - else: - raise RuntimeError("{} tails are not implemented.".format(tails)) - - outputs[inside_interval_mask], logabsdet[inside_interval_mask] = rational_quadratic_spline( - inputs=inputs[inside_interval_mask], - unnormalized_widths=unnormalized_widths[inside_interval_mask, :], - unnormalized_heights=unnormalized_heights[inside_interval_mask, :], - unnormalized_derivatives=unnormalized_derivatives[inside_interval_mask, :], - inverse=inverse, - left=-tail_bound, - right=tail_bound, - bottom=-tail_bound, - top=tail_bound, - min_bin_width=min_bin_width, - min_bin_height=min_bin_height, - min_derivative=min_derivative, - ) - - return outputs, logabsdet - - -def rational_quadratic_spline( - inputs, - unnormalized_widths, - unnormalized_heights, - unnormalized_derivatives, - inverse=False, - left=0.0, - right=1.0, - bottom=0.0, - top=1.0, - min_bin_width=DEFAULT_MIN_BIN_WIDTH, - min_bin_height=DEFAULT_MIN_BIN_HEIGHT, - min_derivative=DEFAULT_MIN_DERIVATIVE, -): - if torch.min(inputs) < left or torch.max(inputs) > right: - raise ValueError("Input to a transform is not within its domain") - - num_bins = unnormalized_widths.shape[-1] - - if min_bin_width * num_bins > 1.0: - raise ValueError("Minimal bin width too large for the number of bins") - if min_bin_height * num_bins > 1.0: - raise ValueError("Minimal bin height too large for the number of bins") - - widths = F.softmax(unnormalized_widths, dim=-1) - widths = min_bin_width + (1 - min_bin_width * num_bins) * widths - cumwidths = torch.cumsum(widths, dim=-1) - cumwidths = F.pad(cumwidths, pad=(1, 0), mode="constant", value=0.0) - cumwidths = (right - left) * cumwidths + left - cumwidths[..., 0] = left - cumwidths[..., -1] = right - widths = cumwidths[..., 1:] - cumwidths[..., :-1] - - derivatives = min_derivative + F.softplus(unnormalized_derivatives) - - heights = F.softmax(unnormalized_heights, dim=-1) - heights = min_bin_height + (1 - min_bin_height * num_bins) * heights - cumheights = torch.cumsum(heights, dim=-1) - cumheights = F.pad(cumheights, pad=(1, 0), mode="constant", value=0.0) - cumheights = (top - bottom) * cumheights + bottom - cumheights[..., 0] = bottom - cumheights[..., -1] = top - heights = cumheights[..., 1:] - cumheights[..., :-1] - - if inverse: - bin_idx = searchsorted(cumheights, inputs)[..., None] - else: - bin_idx = searchsorted(cumwidths, inputs)[..., None] - - input_cumwidths = cumwidths.gather(-1, bin_idx)[..., 0] - input_bin_widths = widths.gather(-1, bin_idx)[..., 0] - - input_cumheights = cumheights.gather(-1, bin_idx)[..., 0] - delta = heights / widths - input_delta = delta.gather(-1, bin_idx)[..., 0] - - input_derivatives = derivatives.gather(-1, bin_idx)[..., 0] - input_derivatives_plus_one = derivatives[..., 1:].gather(-1, bin_idx)[..., 0] - - input_heights = heights.gather(-1, bin_idx)[..., 0] - - if inverse: - a = (inputs - input_cumheights) * ( - input_derivatives + input_derivatives_plus_one - 2 * input_delta - ) + input_heights * (input_delta - input_derivatives) - b = input_heights * input_derivatives - (inputs - input_cumheights) * ( - input_derivatives + input_derivatives_plus_one - 2 * input_delta - ) - c = -input_delta * (inputs - input_cumheights) - - discriminant = b.pow(2) - 4 * a * c - assert (discriminant >= 0).all() - - root = (2 * c) / (-b - torch.sqrt(discriminant)) - outputs = root * input_bin_widths + input_cumwidths - - theta_one_minus_theta = root * (1 - root) - denominator = input_delta + ( - (input_derivatives + input_derivatives_plus_one - 2 * input_delta) * theta_one_minus_theta - ) - derivative_numerator = input_delta.pow(2) * ( - input_derivatives_plus_one * root.pow(2) - + 2 * input_delta * theta_one_minus_theta - + input_derivatives * (1 - root).pow(2) - ) - logabsdet = torch.log(derivative_numerator) - 2 * torch.log(denominator) - - return outputs, -logabsdet - else: - theta = (inputs - input_cumwidths) / input_bin_widths - theta_one_minus_theta = theta * (1 - theta) - - numerator = input_heights * (input_delta * theta.pow(2) + input_derivatives * theta_one_minus_theta) - denominator = input_delta + ( - (input_derivatives + input_derivatives_plus_one - 2 * input_delta) * theta_one_minus_theta - ) - outputs = input_cumheights + numerator / denominator - - derivative_numerator = input_delta.pow(2) * ( - input_derivatives_plus_one * theta.pow(2) - + 2 * input_delta * theta_one_minus_theta - + input_derivatives * (1 - theta).pow(2) - ) - logabsdet = torch.log(derivative_numerator) - 2 * torch.log(denominator) - - return outputs, logabsdet diff --git a/TTS/TTS/tts/models/__init__.py b/TTS/TTS/tts/models/__init__.py deleted file mode 100644 index 2bd2e5f0875a84633e707702cd7d628409b12057..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/models/__init__.py +++ /dev/null @@ -1,14 +0,0 @@ -from typing import Dict, List, Union - -from TTS.utils.generic_utils import find_module - - -def setup_model(config: "Coqpit", samples: Union[List[List], List[Dict]] = None) -> "BaseTTS": - print(" > Using model: {}".format(config.model)) - # fetch the right model implementation. - if "base_model" in config and config["base_model"] is not None: - MyModel = find_module("TTS.tts.models", config.base_model.lower()) - else: - MyModel = find_module("TTS.tts.models", config.model.lower()) - model = MyModel.init_from_config(config=config, samples=samples) - return model diff --git a/TTS/TTS/tts/models/align_tts.py b/TTS/TTS/tts/models/align_tts.py deleted file mode 100644 index b2e51de7d6ab37951e3838e6804ca8e9b71338cf..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/models/align_tts.py +++ /dev/null @@ -1,448 +0,0 @@ -from dataclasses import dataclass, field -from typing import Dict, List, Union - -import torch -from coqpit import Coqpit -from torch import nn - -from TTS.tts.layers.align_tts.mdn import MDNBlock -from TTS.tts.layers.feed_forward.decoder import Decoder -from TTS.tts.layers.feed_forward.duration_predictor import DurationPredictor -from TTS.tts.layers.feed_forward.encoder import Encoder -from TTS.tts.layers.generic.pos_encoding import PositionalEncoding -from TTS.tts.models.base_tts import BaseTTS -from TTS.tts.utils.helpers import generate_path, maximum_path, sequence_mask -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram -from TTS.utils.io import load_fsspec - - -@dataclass -class AlignTTSArgs(Coqpit): - """ - Args: - num_chars (int): - number of unique input to characters - out_channels (int): - number of output tensor channels. It is equal to the expected spectrogram size. - hidden_channels (int): - number of channels in all the model layers. - hidden_channels_ffn (int): - number of channels in transformer's conv layers. - hidden_channels_dp (int): - number of channels in duration predictor network. - num_heads (int): - number of attention heads in transformer networks. - num_transformer_layers (int): - number of layers in encoder and decoder transformer blocks. - dropout_p (int): - dropout rate in transformer layers. - length_scale (int, optional): - coefficient to set the speech speed. <1 slower, >1 faster. Defaults to 1. - num_speakers (int, optional): - number of speakers for multi-speaker training. Defaults to 0. - external_c (bool, optional): - enable external speaker embeddings. Defaults to False. - c_in_channels (int, optional): - number of channels in speaker embedding vectors. Defaults to 0. - """ - - num_chars: int = None - out_channels: int = 80 - hidden_channels: int = 256 - hidden_channels_dp: int = 256 - encoder_type: str = "fftransformer" - encoder_params: dict = field( - default_factory=lambda: {"hidden_channels_ffn": 1024, "num_heads": 2, "num_layers": 6, "dropout_p": 0.1} - ) - decoder_type: str = "fftransformer" - decoder_params: dict = field( - default_factory=lambda: {"hidden_channels_ffn": 1024, "num_heads": 2, "num_layers": 6, "dropout_p": 0.1} - ) - length_scale: float = 1.0 - num_speakers: int = 0 - use_speaker_embedding: bool = False - use_d_vector_file: bool = False - d_vector_dim: int = 0 - - -class AlignTTS(BaseTTS): - """AlignTTS with modified duration predictor. - https://arxiv.org/pdf/2003.01950.pdf - - Encoder -> DurationPredictor -> Decoder - - Check :class:`AlignTTSArgs` for the class arguments. - - Paper Abstract: - Targeting at both high efficiency and performance, we propose AlignTTS to predict the - mel-spectrum in parallel. AlignTTS is based on a Feed-Forward Transformer which generates mel-spectrum from a - sequence of characters, and the duration of each character is determined by a duration predictor.Instead of - adopting the attention mechanism in Transformer TTS to align text to mel-spectrum, the alignment loss is presented - to consider all possible alignments in training by use of dynamic programming. Experiments on the LJSpeech dataset s - how that our model achieves not only state-of-the-art performance which outperforms Transformer TTS by 0.03 in mean - option score (MOS), but also a high efficiency which is more than 50 times faster than real-time. - - Note: - Original model uses a separate character embedding layer for duration predictor. However, it causes the - duration predictor to overfit and prevents learning higher level interactions among characters. Therefore, - we predict durations based on encoder outputs which has higher level information about input characters. This - enables training without phases as in the original paper. - - Original model uses Transormers in encoder and decoder layers. However, here you can set the architecture - differently based on your requirements using ```encoder_type``` and ```decoder_type``` parameters. - - Examples: - >>> from TTS.tts.configs.align_tts_config import AlignTTSConfig - >>> config = AlignTTSConfig() - >>> model = AlignTTS(config) - - """ - - # pylint: disable=dangerous-default-value - - def __init__( - self, - config: "AlignTTSConfig", - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - self.speaker_manager = speaker_manager - self.phase = -1 - self.length_scale = ( - float(config.model_args.length_scale) - if isinstance(config.model_args.length_scale, int) - else config.model_args.length_scale - ) - - self.emb = nn.Embedding(self.config.model_args.num_chars, self.config.model_args.hidden_channels) - - self.embedded_speaker_dim = 0 - self.init_multispeaker(config) - - self.pos_encoder = PositionalEncoding(config.model_args.hidden_channels) - self.encoder = Encoder( - config.model_args.hidden_channels, - config.model_args.hidden_channels, - config.model_args.encoder_type, - config.model_args.encoder_params, - self.embedded_speaker_dim, - ) - self.decoder = Decoder( - config.model_args.out_channels, - config.model_args.hidden_channels, - config.model_args.decoder_type, - config.model_args.decoder_params, - ) - self.duration_predictor = DurationPredictor(config.model_args.hidden_channels_dp) - - self.mod_layer = nn.Conv1d(config.model_args.hidden_channels, config.model_args.hidden_channels, 1) - - self.mdn_block = MDNBlock(config.model_args.hidden_channels, 2 * config.model_args.out_channels) - - if self.embedded_speaker_dim > 0 and self.embedded_speaker_dim != config.model_args.hidden_channels: - self.proj_g = nn.Conv1d(self.embedded_speaker_dim, config.model_args.hidden_channels, 1) - - @staticmethod - def compute_log_probs(mu, log_sigma, y): - # pylint: disable=protected-access, c-extension-no-member - y = y.transpose(1, 2).unsqueeze(1) # [B, 1, T1, D] - mu = mu.transpose(1, 2).unsqueeze(2) # [B, T2, 1, D] - log_sigma = log_sigma.transpose(1, 2).unsqueeze(2) # [B, T2, 1, D] - expanded_y, expanded_mu = torch.broadcast_tensors(y, mu) - exponential = -0.5 * torch.mean( - torch._C._nn.mse_loss(expanded_y, expanded_mu, 0) / torch.pow(log_sigma.exp(), 2), dim=-1 - ) # B, L, T - logp = exponential - 0.5 * log_sigma.mean(dim=-1) - return logp - - def compute_align_path(self, mu, log_sigma, y, x_mask, y_mask): - # find the max alignment path - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - log_p = self.compute_log_probs(mu, log_sigma, y) - # [B, T_en, T_dec] - attn = maximum_path(log_p, attn_mask.squeeze(1)).unsqueeze(1) - dr_mas = torch.sum(attn, -1) - return dr_mas.squeeze(1), log_p - - @staticmethod - def generate_attn(dr, x_mask, y_mask=None): - # compute decode mask from the durations - if y_mask is None: - y_lengths = dr.sum(1).long() - y_lengths[y_lengths < 1] = 1 - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(dr.dtype) - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - attn = generate_path(dr, attn_mask.squeeze(1)).to(dr.dtype) - return attn - - def expand_encoder_outputs(self, en, dr, x_mask, y_mask): - """Generate attention alignment map from durations and - expand encoder outputs - - Examples:: - - encoder output: [a,b,c,d] - - durations: [1, 3, 2, 1] - - - expanded: [a, b, b, b, c, c, d] - - attention map: [[0, 0, 0, 0, 0, 0, 1], - [0, 0, 0, 0, 1, 1, 0], - [0, 1, 1, 1, 0, 0, 0], - [1, 0, 0, 0, 0, 0, 0]] - """ - attn = self.generate_attn(dr, x_mask, y_mask) - o_en_ex = torch.matmul(attn.squeeze(1).transpose(1, 2), en.transpose(1, 2)).transpose(1, 2) - return o_en_ex, attn - - def format_durations(self, o_dr_log, x_mask): - o_dr = (torch.exp(o_dr_log) - 1) * x_mask * self.length_scale - o_dr[o_dr < 1] = 1.0 - o_dr = torch.round(o_dr) - return o_dr - - @staticmethod - def _concat_speaker_embedding(o_en, g): - g_exp = g.expand(-1, -1, o_en.size(-1)) # [B, C, T_en] - o_en = torch.cat([o_en, g_exp], 1) - return o_en - - def _sum_speaker_embedding(self, x, g): - # project g to decoder dim. - if hasattr(self, "proj_g"): - g = self.proj_g(g) - - return x + g - - def _forward_encoder(self, x, x_lengths, g=None): - if hasattr(self, "emb_g"): - g = nn.functional.normalize(self.speaker_embedding(g)) # [B, C, 1] - - if g is not None: - g = g.unsqueeze(-1) - - # [B, T, C] - x_emb = self.emb(x) - # [B, C, T] - x_emb = torch.transpose(x_emb, 1, -1) - - # compute sequence masks - x_mask = torch.unsqueeze(sequence_mask(x_lengths, x.shape[1]), 1).to(x.dtype) - - # encoder pass - o_en = self.encoder(x_emb, x_mask) - - # speaker conditioning for duration predictor - if g is not None: - o_en_dp = self._concat_speaker_embedding(o_en, g) - else: - o_en_dp = o_en - return o_en, o_en_dp, x_mask, g - - def _forward_decoder(self, o_en, o_en_dp, dr, x_mask, y_lengths, g): - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(o_en_dp.dtype) - # expand o_en with durations - o_en_ex, attn = self.expand_encoder_outputs(o_en, dr, x_mask, y_mask) - # positional encoding - if hasattr(self, "pos_encoder"): - o_en_ex = self.pos_encoder(o_en_ex, y_mask) - # speaker embedding - if g is not None: - o_en_ex = self._sum_speaker_embedding(o_en_ex, g) - # decoder pass - o_de = self.decoder(o_en_ex, y_mask, g=g) - return o_de, attn.transpose(1, 2) - - def _forward_mdn(self, o_en, y, y_lengths, x_mask): - # MAS potentials and alignment - mu, log_sigma = self.mdn_block(o_en) - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(o_en.dtype) - dr_mas, logp = self.compute_align_path(mu, log_sigma, y, x_mask, y_mask) - return dr_mas, mu, log_sigma, logp - - def forward( - self, x, x_lengths, y, y_lengths, aux_input={"d_vectors": None}, phase=None - ): # pylint: disable=unused-argument - """ - Shapes: - - x: :math:`[B, T_max]` - - x_lengths: :math:`[B]` - - y_lengths: :math:`[B]` - - dr: :math:`[B, T_max]` - - g: :math:`[B, C]` - """ - y = y.transpose(1, 2) - g = aux_input["d_vectors"] if "d_vectors" in aux_input else None - o_de, o_dr_log, dr_mas_log, attn, mu, log_sigma, logp = None, None, None, None, None, None, None - if phase == 0: - # train encoder and MDN - o_en, o_en_dp, x_mask, g = self._forward_encoder(x, x_lengths, g) - dr_mas, mu, log_sigma, logp = self._forward_mdn(o_en, y, y_lengths, x_mask) - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(o_en_dp.dtype) - attn = self.generate_attn(dr_mas, x_mask, y_mask) - elif phase == 1: - # train decoder - o_en, o_en_dp, x_mask, g = self._forward_encoder(x, x_lengths, g) - dr_mas, _, _, _ = self._forward_mdn(o_en, y, y_lengths, x_mask) - o_de, attn = self._forward_decoder(o_en.detach(), o_en_dp.detach(), dr_mas.detach(), x_mask, y_lengths, g=g) - elif phase == 2: - # train the whole except duration predictor - o_en, o_en_dp, x_mask, g = self._forward_encoder(x, x_lengths, g) - dr_mas, mu, log_sigma, logp = self._forward_mdn(o_en, y, y_lengths, x_mask) - o_de, attn = self._forward_decoder(o_en, o_en_dp, dr_mas, x_mask, y_lengths, g=g) - elif phase == 3: - # train duration predictor - o_en, o_en_dp, x_mask, g = self._forward_encoder(x, x_lengths, g) - o_dr_log = self.duration_predictor(x, x_mask) - dr_mas, mu, log_sigma, logp = self._forward_mdn(o_en, y, y_lengths, x_mask) - o_de, attn = self._forward_decoder(o_en, o_en_dp, dr_mas, x_mask, y_lengths, g=g) - o_dr_log = o_dr_log.squeeze(1) - else: - o_en, o_en_dp, x_mask, g = self._forward_encoder(x, x_lengths, g) - o_dr_log = self.duration_predictor(o_en_dp.detach(), x_mask) - dr_mas, mu, log_sigma, logp = self._forward_mdn(o_en, y, y_lengths, x_mask) - o_de, attn = self._forward_decoder(o_en, o_en_dp, dr_mas, x_mask, y_lengths, g=g) - o_dr_log = o_dr_log.squeeze(1) - dr_mas_log = torch.log(dr_mas + 1).squeeze(1) - outputs = { - "model_outputs": o_de.transpose(1, 2), - "alignments": attn, - "durations_log": o_dr_log, - "durations_mas_log": dr_mas_log, - "mu": mu, - "log_sigma": log_sigma, - "logp": logp, - } - return outputs - - @torch.no_grad() - def inference(self, x, aux_input={"d_vectors": None}): # pylint: disable=unused-argument - """ - Shapes: - - x: :math:`[B, T_max]` - - x_lengths: :math:`[B]` - - g: :math:`[B, C]` - """ - g = aux_input["d_vectors"] if "d_vectors" in aux_input else None - x_lengths = torch.tensor(x.shape[1:2]).to(x.device) - # pad input to prevent dropping the last word - # x = torch.nn.functional.pad(x, pad=(0, 5), mode='constant', value=0) - o_en, o_en_dp, x_mask, g = self._forward_encoder(x, x_lengths, g) - # o_dr_log = self.duration_predictor(x, x_mask) - o_dr_log = self.duration_predictor(o_en_dp, x_mask) - # duration predictor pass - o_dr = self.format_durations(o_dr_log, x_mask).squeeze(1) - y_lengths = o_dr.sum(1) - o_de, attn = self._forward_decoder(o_en, o_en_dp, o_dr, x_mask, y_lengths, g=g) - outputs = {"model_outputs": o_de.transpose(1, 2), "alignments": attn} - return outputs - - def train_step(self, batch: dict, criterion: nn.Module): - text_input = batch["text_input"] - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - mel_lengths = batch["mel_lengths"] - d_vectors = batch["d_vectors"] - speaker_ids = batch["speaker_ids"] - - aux_input = {"d_vectors": d_vectors, "speaker_ids": speaker_ids} - outputs = self.forward(text_input, text_lengths, mel_input, mel_lengths, aux_input, self.phase) - loss_dict = criterion( - outputs["logp"], - outputs["model_outputs"], - mel_input, - mel_lengths, - outputs["durations_log"], - outputs["durations_mas_log"], - text_lengths, - phase=self.phase, - ) - - return outputs, loss_dict - - def _create_logs(self, batch, outputs, ap): # pylint: disable=no-self-use - model_outputs = outputs["model_outputs"] - alignments = outputs["alignments"] - mel_input = batch["mel_input"] - - pred_spec = model_outputs[0].data.cpu().numpy() - gt_spec = mel_input[0].data.cpu().numpy() - align_img = alignments[0].data.cpu().numpy() - - figures = { - "prediction": plot_spectrogram(pred_spec, ap, output_fig=False), - "ground_truth": plot_spectrogram(gt_spec, ap, output_fig=False), - "alignment": plot_alignment(align_img, output_fig=False), - } - - # Sample audio - train_audio = ap.inv_melspectrogram(pred_spec.T) - return figures, {"audio": train_audio} - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ) -> None: # pylint: disable=no-self-use - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - def eval_step(self, batch: dict, criterion: nn.Module): - return self.train_step(batch, criterion) - - def eval_log(self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int) -> None: - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - - def get_criterion(self): - from TTS.tts.layers.losses import AlignTTSLoss # pylint: disable=import-outside-toplevel - - return AlignTTSLoss(self.config) - - @staticmethod - def _set_phase(config, global_step): - """Decide AlignTTS training phase""" - if isinstance(config.phase_start_steps, list): - vals = [i < global_step for i in config.phase_start_steps] - if not True in vals: - phase = 0 - else: - phase = ( - len(config.phase_start_steps) - - [i < global_step for i in config.phase_start_steps][::-1].index(True) - - 1 - ) - else: - phase = None - return phase - - def on_epoch_start(self, trainer): - """Set AlignTTS training phase on epoch start.""" - self.phase = self._set_phase(trainer.config, trainer.total_steps_done) - - @staticmethod - def init_from_config(config: "AlignTTSConfig", samples: Union[List[List], List[Dict]] = None): - """Initiate model from config - - Args: - config (AlignTTSConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - """ - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config, samples) - return AlignTTS(new_config, ap, tokenizer, speaker_manager) diff --git a/TTS/TTS/tts/models/bark.py b/TTS/TTS/tts/models/bark.py deleted file mode 100644 index 23b76b4171e47607bd81fbc682d929ccdb88aa93..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/models/bark.py +++ /dev/null @@ -1,282 +0,0 @@ -import os -from dataclasses import dataclass -from typing import Optional - -import numpy as np -from coqpit import Coqpit -from encodec import EncodecModel -from transformers import BertTokenizer - -from TTS.tts.layers.bark.inference_funcs import ( - codec_decode, - generate_coarse, - generate_fine, - generate_text_semantic, - generate_voice, - load_voice, -) -from TTS.tts.layers.bark.load_model import load_model -from TTS.tts.layers.bark.model import GPT -from TTS.tts.layers.bark.model_fine import FineGPT -from TTS.tts.models.base_tts import BaseTTS - - -@dataclass -class BarkAudioConfig(Coqpit): - sample_rate: int = 24000 - output_sample_rate: int = 24000 - - -class Bark(BaseTTS): - def __init__( - self, - config: Coqpit, - tokenizer: BertTokenizer = BertTokenizer.from_pretrained("bert-base-multilingual-cased"), - ) -> None: - super().__init__(config=config, ap=None, tokenizer=None, speaker_manager=None, language_manager=None) - self.config.num_chars = len(tokenizer) - self.tokenizer = tokenizer - self.semantic_model = GPT(config.semantic_config) - self.coarse_model = GPT(config.coarse_config) - self.fine_model = FineGPT(config.fine_config) - self.encodec = EncodecModel.encodec_model_24khz() - self.encodec.set_target_bandwidth(6.0) - - @property - def device(self): - return next(self.parameters()).device - - def load_bark_models(self): - self.semantic_model, self.config = load_model( - ckpt_path=self.config.LOCAL_MODEL_PATHS["text"], device=self.device, config=self.config, model_type="text" - ) - self.coarse_model, self.config = load_model( - ckpt_path=self.config.LOCAL_MODEL_PATHS["coarse"], - device=self.device, - config=self.config, - model_type="coarse", - ) - self.fine_model, self.config = load_model( - ckpt_path=self.config.LOCAL_MODEL_PATHS["fine"], device=self.device, config=self.config, model_type="fine" - ) - - def train_step( - self, - ): - pass - - def text_to_semantic( - self, - text: str, - history_prompt: Optional[str] = None, - temp: float = 0.7, - base=None, - allow_early_stop=True, - **kwargs, - ): - """Generate semantic array from text. - - Args: - text: text to be turned into audio - history_prompt: history choice for audio cloning - temp: generation temperature (1.0 more diverse, 0.0 more conservative) - - Returns: - numpy semantic array to be fed into `semantic_to_waveform` - """ - x_semantic = generate_text_semantic( - text, - self, - history_prompt=history_prompt, - temp=temp, - base=base, - allow_early_stop=allow_early_stop, - **kwargs, - ) - return x_semantic - - def semantic_to_waveform( - self, - semantic_tokens: np.ndarray, - history_prompt: Optional[str] = None, - temp: float = 0.7, - base=None, - ): - """Generate audio array from semantic input. - - Args: - semantic_tokens: semantic token output from `text_to_semantic` - history_prompt: history choice for audio cloning - temp: generation temperature (1.0 more diverse, 0.0 more conservative) - - Returns: - numpy audio array at sample frequency 24khz - """ - x_coarse_gen = generate_coarse( - semantic_tokens, - self, - history_prompt=history_prompt, - temp=temp, - base=base, - ) - x_fine_gen = generate_fine( - x_coarse_gen, - self, - history_prompt=history_prompt, - temp=0.5, - base=base, - ) - audio_arr = codec_decode(x_fine_gen, self) - return audio_arr, x_coarse_gen, x_fine_gen - - def generate_audio( - self, - text: str, - history_prompt: Optional[str] = None, - text_temp: float = 0.7, - waveform_temp: float = 0.7, - base=None, - allow_early_stop=True, - **kwargs, - ): - """Generate audio array from input text. - - Args: - text: text to be turned into audio - history_prompt: history choice for audio cloning - text_temp: generation temperature (1.0 more diverse, 0.0 more conservative) - waveform_temp: generation temperature (1.0 more diverse, 0.0 more conservative) - - Returns: - numpy audio array at sample frequency 24khz - """ - x_semantic = self.text_to_semantic( - text, - history_prompt=history_prompt, - temp=text_temp, - base=base, - allow_early_stop=allow_early_stop, - **kwargs, - ) - audio_arr, c, f = self.semantic_to_waveform( - x_semantic, history_prompt=history_prompt, temp=waveform_temp, base=base - ) - return audio_arr, [x_semantic, c, f] - - def generate_voice(self, audio, speaker_id, voice_dir): - """Generate a voice from the given audio and text. - - Args: - audio (str): Path to the audio file. - speaker_id (str): Speaker name. - voice_dir (str): Path to the directory to save the generate voice. - """ - if voice_dir is not None: - voice_dirs = [voice_dir] - try: - _ = load_voice(speaker_id, voice_dirs) - except (KeyError, FileNotFoundError): - output_path = os.path.join(voice_dir, speaker_id + ".npz") - os.makedirs(voice_dir, exist_ok=True) - generate_voice(audio, self, output_path) - - def _set_voice_dirs(self, voice_dirs): - def_voice_dir = None - if isinstance(self.config.DEF_SPEAKER_DIR, str): - os.makedirs(self.config.DEF_SPEAKER_DIR, exist_ok=True) - if os.path.isdir(self.config.DEF_SPEAKER_DIR): - def_voice_dir = self.config.DEF_SPEAKER_DIR - _voice_dirs = [def_voice_dir] if def_voice_dir is not None else [] - if voice_dirs is not None: - if isinstance(voice_dirs, str): - voice_dirs = [voice_dirs] - _voice_dirs = voice_dirs + _voice_dirs - return _voice_dirs - - # TODO: remove config from synthesize - def synthesize( - self, text, config, speaker_id="random", voice_dirs=None, **kwargs - ): # pylint: disable=unused-argument - """Synthesize speech with the given input text. - - Args: - text (str): Input text. - config (BarkConfig): Config with inference parameters. - speaker_id (str): One of the available speaker names. If `random`, it generates a random speaker. - speaker_wav (str): Path to the speaker audio file for cloning a new voice. It is cloned and saved in - `voice_dirs` with the name `speaker_id`. Defaults to None. - voice_dirs (List[str]): List of paths that host reference audio files for speakers. Defaults to None. - **kwargs: Model specific inference settings used by `generate_audio()` and `TTS.tts.layers.bark.inference_funcs.generate_text_semantic(). - - Returns: - A dictionary of the output values with `wav` as output waveform, `deterministic_seed` as seed used at inference, - `text_input` as text token IDs after tokenizer, `voice_samples` as samples used for cloning, `conditioning_latents` - as latents used at inference. - - """ - speaker_id = "random" if speaker_id is None else speaker_id - voice_dirs = self._set_voice_dirs(voice_dirs) - history_prompt = load_voice(self, speaker_id, voice_dirs) - outputs = self.generate_audio(text, history_prompt=history_prompt, **kwargs) - return_dict = { - "wav": outputs[0], - "text_inputs": text, - } - - return return_dict - - def eval_step(self): - ... - - def forward(self): - ... - - def inference(self): - ... - - @staticmethod - def init_from_config(config: "BarkConfig", **kwargs): # pylint: disable=unused-argument - return Bark(config) - - # pylint: disable=unused-argument, redefined-builtin - def load_checkpoint( - self, - config, - checkpoint_dir, - text_model_path=None, - coarse_model_path=None, - fine_model_path=None, - eval=False, - strict=True, - **kwargs, - ): - """Load a model checkpoints from a directory. This model is with multiple checkpoint files and it - expects to have all the files to be under the given `checkpoint_dir` with the rigth names. - If eval is True, set the model to eval mode. - - Args: - config (TortoiseConfig): The model config. - checkpoint_dir (str): The directory where the checkpoints are stored. - ar_checkpoint_path (str, optional): The path to the autoregressive checkpoint. Defaults to None. - diff_checkpoint_path (str, optional): The path to the diffusion checkpoint. Defaults to None. - clvp_checkpoint_path (str, optional): The path to the CLVP checkpoint. Defaults to None. - vocoder_checkpoint_path (str, optional): The path to the vocoder checkpoint. Defaults to None. - eval (bool, optional): Whether to set the model to eval mode. Defaults to False. - strict (bool, optional): Whether to load the model strictly. Defaults to True. - """ - text_model_path = text_model_path or os.path.join(checkpoint_dir, "text_2.pt") - coarse_model_path = coarse_model_path or os.path.join(checkpoint_dir, "coarse_2.pt") - fine_model_path = fine_model_path or os.path.join(checkpoint_dir, "fine_2.pt") - - self.config.LOCAL_MODEL_PATHS["text"] = text_model_path - self.config.LOCAL_MODEL_PATHS["coarse"] = coarse_model_path - self.config.LOCAL_MODEL_PATHS["fine"] = fine_model_path - - # This is workaround I found. I know this is not good solution, but it works for now - self.config.LOCAL_MODEL_PATHS["hubert_tokenizer"] = os.path.join(checkpoint_dir, "hubert_tokenizer.pth") - self.config.LOCAL_MODEL_PATHS["hubert"] = os.path.join(checkpoint_dir, "hubert.pt") - - self.load_bark_models() - - if eval: - self.eval() diff --git a/TTS/TTS/tts/models/base_tacotron.py b/TTS/TTS/tts/models/base_tacotron.py deleted file mode 100644 index f38dace23559d9940b9a57cab479686f42172540..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/models/base_tacotron.py +++ /dev/null @@ -1,305 +0,0 @@ -import copy -from abc import abstractmethod -from typing import Dict, Tuple - -import torch -from coqpit import Coqpit -from torch import nn - -from TTS.tts.layers.losses import TacotronLoss -from TTS.tts.models.base_tts import BaseTTS -from TTS.tts.utils.helpers import sequence_mask -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.synthesis import synthesis -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram -from TTS.utils.generic_utils import format_aux_input -from TTS.utils.io import load_fsspec -from TTS.utils.training import gradual_training_scheduler - - -class BaseTacotron(BaseTTS): - """Base class shared by Tacotron and Tacotron2""" - - def __init__( - self, - config: "TacotronConfig", - ap: "AudioProcessor", - tokenizer: "TTSTokenizer", - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - - # pass all config fields as class attributes - for key in config: - setattr(self, key, config[key]) - - # layers - self.embedding = None - self.encoder = None - self.decoder = None - self.postnet = None - - # init tensors - self.embedded_speakers = None - self.embedded_speakers_projected = None - - # global style token - if self.gst and self.use_gst: - self.decoder_in_features += self.gst.gst_embedding_dim # add gst embedding dim - self.gst_layer = None - - # Capacitron - if self.capacitron_vae and self.use_capacitron_vae: - self.decoder_in_features += self.capacitron_vae.capacitron_VAE_embedding_dim # add capacitron embedding dim - self.capacitron_vae_layer = None - - # additional layers - self.decoder_backward = None - self.coarse_decoder = None - - @staticmethod - def _format_aux_input(aux_input: Dict) -> Dict: - """Set missing fields to their default values""" - if aux_input: - return format_aux_input({"d_vectors": None, "speaker_ids": None}, aux_input) - return None - - ############################# - # INIT FUNCTIONS - ############################# - - def _init_backward_decoder(self): - """Init the backward decoder for Forward-Backward decoding.""" - self.decoder_backward = copy.deepcopy(self.decoder) - - def _init_coarse_decoder(self): - """Init the coarse decoder for Double-Decoder Consistency.""" - self.coarse_decoder = copy.deepcopy(self.decoder) - self.coarse_decoder.r_init = self.ddc_r - self.coarse_decoder.set_r(self.ddc_r) - - ############################# - # CORE FUNCTIONS - ############################# - - @abstractmethod - def forward(self): - pass - - @abstractmethod - def inference(self): - pass - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - """Load model checkpoint and set up internals. - - Args: - config (Coqpi): model configuration. - checkpoint_path (str): path to checkpoint file. - eval (bool, optional): whether to load model for evaluation. - cache (bool, optional): If True, cache the file locally for subsequent calls. It is cached under `get_user_data_dir()/tts_cache`. Defaults to False. - """ - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - # TODO: set r in run-time by taking it from the new config - if "r" in state: - # set r from the state (for compatibility with older checkpoints) - self.decoder.set_r(state["r"]) - elif "config" in state: - # set r from config used at training time (for inference) - self.decoder.set_r(state["config"]["r"]) - else: - # set r from the new config (for new-models) - self.decoder.set_r(config.r) - if eval: - self.eval() - print(f" > Model's reduction rate `r` is set to: {self.decoder.r}") - assert not self.training - - def get_criterion(self) -> nn.Module: - """Get the model criterion used in training.""" - return TacotronLoss(self.config) - - @staticmethod - def init_from_config(config: Coqpit): - """Initialize model from config.""" - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config) - tokenizer = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config) - return BaseTacotron(config, ap, tokenizer, speaker_manager) - - ########################## - # TEST AND LOG FUNCTIONS # - ########################## - - def test_run(self, assets: Dict) -> Tuple[Dict, Dict]: - """Generic test run for `tts` models used by `Trainer`. - - You can override this for a different behaviour. - - Args: - assets (dict): A dict of training assets. For `tts` models, it must include `{'audio_processor': ap}`. - - Returns: - Tuple[Dict, Dict]: Test figures and audios to be projected to Tensorboard. - """ - print(" | > Synthesizing test sentences.") - test_audios = {} - test_figures = {} - test_sentences = self.config.test_sentences - aux_inputs = self._get_test_aux_input() - for idx, sen in enumerate(test_sentences): - outputs_dict = synthesis( - self, - sen, - self.config, - "cuda" in str(next(self.parameters()).device), - speaker_id=aux_inputs["speaker_id"], - d_vector=aux_inputs["d_vector"], - style_wav=aux_inputs["style_wav"], - use_griffin_lim=True, - do_trim_silence=False, - ) - test_audios["{}-audio".format(idx)] = outputs_dict["wav"] - test_figures["{}-prediction".format(idx)] = plot_spectrogram( - outputs_dict["outputs"]["model_outputs"], self.ap, output_fig=False - ) - test_figures["{}-alignment".format(idx)] = plot_alignment( - outputs_dict["outputs"]["alignments"], output_fig=False - ) - return {"figures": test_figures, "audios": test_audios} - - def test_log( - self, outputs: dict, logger: "Logger", assets: dict, steps: int # pylint: disable=unused-argument - ) -> None: - logger.test_audios(steps, outputs["audios"], self.ap.sample_rate) - logger.test_figures(steps, outputs["figures"]) - - ############################# - # COMMON COMPUTE FUNCTIONS - ############################# - - def compute_masks(self, text_lengths, mel_lengths): - """Compute masks against sequence paddings.""" - # B x T_in_max (boolean) - input_mask = sequence_mask(text_lengths) - output_mask = None - if mel_lengths is not None: - max_len = mel_lengths.max() - r = self.decoder.r - max_len = max_len + (r - (max_len % r)) if max_len % r > 0 else max_len - output_mask = sequence_mask(mel_lengths, max_len=max_len) - return input_mask, output_mask - - def _backward_pass(self, mel_specs, encoder_outputs, mask): - """Run backwards decoder""" - decoder_outputs_b, alignments_b, _ = self.decoder_backward( - encoder_outputs, torch.flip(mel_specs, dims=(1,)), mask - ) - decoder_outputs_b = decoder_outputs_b.transpose(1, 2).contiguous() - return decoder_outputs_b, alignments_b - - def _coarse_decoder_pass(self, mel_specs, encoder_outputs, alignments, input_mask): - """Double Decoder Consistency""" - T = mel_specs.shape[1] - if T % self.coarse_decoder.r > 0: - padding_size = self.coarse_decoder.r - (T % self.coarse_decoder.r) - mel_specs = torch.nn.functional.pad(mel_specs, (0, 0, 0, padding_size, 0, 0)) - decoder_outputs_backward, alignments_backward, _ = self.coarse_decoder( - encoder_outputs.detach(), mel_specs, input_mask - ) - # scale_factor = self.decoder.r_init / self.decoder.r - alignments_backward = torch.nn.functional.interpolate( - alignments_backward.transpose(1, 2), - size=alignments.shape[1], - mode="nearest", - ).transpose(1, 2) - decoder_outputs_backward = decoder_outputs_backward.transpose(1, 2) - decoder_outputs_backward = decoder_outputs_backward[:, :T, :] - return decoder_outputs_backward, alignments_backward - - ############################# - # EMBEDDING FUNCTIONS - ############################# - - def compute_gst(self, inputs, style_input, speaker_embedding=None): - """Compute global style token""" - if isinstance(style_input, dict): - # multiply each style token with a weight - query = torch.zeros(1, 1, self.gst.gst_embedding_dim // 2).type_as(inputs) - if speaker_embedding is not None: - query = torch.cat([query, speaker_embedding.reshape(1, 1, -1)], dim=-1) - - _GST = torch.tanh(self.gst_layer.style_token_layer.style_tokens) - gst_outputs = torch.zeros(1, 1, self.gst.gst_embedding_dim).type_as(inputs) - for k_token, v_amplifier in style_input.items(): - key = _GST[int(k_token)].unsqueeze(0).expand(1, -1, -1) - gst_outputs_att = self.gst_layer.style_token_layer.attention(query, key) - gst_outputs = gst_outputs + gst_outputs_att * v_amplifier - elif style_input is None: - # ignore style token and return zero tensor - gst_outputs = torch.zeros(1, 1, self.gst.gst_embedding_dim).type_as(inputs) - else: - # compute style tokens - gst_outputs = self.gst_layer(style_input, speaker_embedding) # pylint: disable=not-callable - inputs = self._concat_speaker_embedding(inputs, gst_outputs) - return inputs - - def compute_capacitron_VAE_embedding(self, inputs, reference_mel_info, text_info=None, speaker_embedding=None): - """Capacitron Variational Autoencoder""" - ( - VAE_outputs, - posterior_distribution, - prior_distribution, - capacitron_beta, - ) = self.capacitron_vae_layer( - reference_mel_info, - text_info, - speaker_embedding, # pylint: disable=not-callable - ) - - VAE_outputs = VAE_outputs.to(inputs.device) - encoder_output = self._concat_speaker_embedding( - inputs, VAE_outputs - ) # concatenate to the output of the basic tacotron encoder - return ( - encoder_output, - posterior_distribution, - prior_distribution, - capacitron_beta, - ) - - @staticmethod - def _add_speaker_embedding(outputs, embedded_speakers): - embedded_speakers_ = embedded_speakers.expand(outputs.size(0), outputs.size(1), -1) - outputs = outputs + embedded_speakers_ - return outputs - - @staticmethod - def _concat_speaker_embedding(outputs, embedded_speakers): - embedded_speakers_ = embedded_speakers.expand(outputs.size(0), outputs.size(1), -1) - outputs = torch.cat([outputs, embedded_speakers_], dim=-1) - return outputs - - ############################# - # CALLBACKS - ############################# - - def on_epoch_start(self, trainer): - """Callback for setting values wrt gradual training schedule. - - Args: - trainer (TrainerTTS): TTS trainer object that is used to train this model. - """ - if self.gradual_training: - r, trainer.config.batch_size = gradual_training_scheduler(trainer.total_steps_done, trainer.config) - trainer.config.r = r - self.decoder.set_r(r) - if trainer.config.bidirectional_decoder: - trainer.model.decoder_backward.set_r(r) - print(f"\n > Number of output frames: {self.decoder.r}") diff --git a/TTS/TTS/tts/models/base_tts.py b/TTS/TTS/tts/models/base_tts.py deleted file mode 100644 index 7871cc38c327f59a70b6695fded64e34ff7d7626..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/models/base_tts.py +++ /dev/null @@ -1,459 +0,0 @@ -import os -import random -from typing import Dict, List, Tuple, Union - -import torch -import torch.distributed as dist -from coqpit import Coqpit -from torch import nn -from torch.utils.data import DataLoader -from torch.utils.data.sampler import WeightedRandomSampler -from trainer.torch import DistributedSampler, DistributedSamplerWrapper - -from TTS.model import BaseTrainerModel -from TTS.tts.datasets.dataset import TTSDataset -from TTS.tts.utils.data import get_length_balancer_weights -from TTS.tts.utils.languages import LanguageManager, get_language_balancer_weights -from TTS.tts.utils.speakers import SpeakerManager, get_speaker_balancer_weights, get_speaker_manager -from TTS.tts.utils.synthesis import synthesis -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram - -# pylint: skip-file - - -class BaseTTS(BaseTrainerModel): - """Base `tts` class. Every new `tts` model must inherit this. - - It defines common `tts` specific functions on top of `Model` implementation. - """ - - MODEL_TYPE = "tts" - - def __init__( - self, - config: Coqpit, - ap: "AudioProcessor", - tokenizer: "TTSTokenizer", - speaker_manager: SpeakerManager = None, - language_manager: LanguageManager = None, - ): - super().__init__() - self.config = config - self.ap = ap - self.tokenizer = tokenizer - self.speaker_manager = speaker_manager - self.language_manager = language_manager - self._set_model_args(config) - - def _set_model_args(self, config: Coqpit): - """Setup model args based on the config type (`ModelConfig` or `ModelArgs`). - - `ModelArgs` has all the fields reuqired to initialize the model architecture. - - `ModelConfig` has all the fields required for training, inference and containes `ModelArgs`. - - If the config is for training with a name like "*Config", then the model args are embeded in the - config.model_args - - If the config is for the model with a name like "*Args", then we assign the directly. - """ - # don't use isintance not to import recursively - if "Config" in config.__class__.__name__: - config_num_chars = ( - self.config.model_args.num_chars if hasattr(self.config, "model_args") else self.config.num_chars - ) - num_chars = config_num_chars if self.tokenizer is None else self.tokenizer.characters.num_chars - if "characters" in config: - self.config.num_chars = num_chars - if hasattr(self.config, "model_args"): - config.model_args.num_chars = num_chars - self.args = self.config.model_args - else: - self.config = config - self.args = config.model_args - elif "Args" in config.__class__.__name__: - self.args = config - else: - raise ValueError("config must be either a *Config or *Args") - - def init_multispeaker(self, config: Coqpit, data: List = None): - """Initialize a speaker embedding layer if needen and define expected embedding channel size for defining - `in_channels` size of the connected layers. - - This implementation yields 3 possible outcomes: - - 1. If `config.use_speaker_embedding` and `config.use_d_vector_file are False, do nothing. - 2. If `config.use_d_vector_file` is True, set expected embedding channel size to `config.d_vector_dim` or 512. - 3. If `config.use_speaker_embedding`, initialize a speaker embedding layer with channel size of - `config.d_vector_dim` or 512. - - You can override this function for new models. - - Args: - config (Coqpit): Model configuration. - """ - # set number of speakers - if self.speaker_manager is not None: - self.num_speakers = self.speaker_manager.num_speakers - elif hasattr(config, "num_speakers"): - self.num_speakers = config.num_speakers - - # set ultimate speaker embedding size - if config.use_speaker_embedding or config.use_d_vector_file: - self.embedded_speaker_dim = ( - config.d_vector_dim if "d_vector_dim" in config and config.d_vector_dim is not None else 512 - ) - # init speaker embedding layer - if config.use_speaker_embedding and not config.use_d_vector_file: - print(" > Init speaker_embedding layer.") - self.speaker_embedding = nn.Embedding(self.num_speakers, self.embedded_speaker_dim) - self.speaker_embedding.weight.data.normal_(0, 0.3) - - def get_aux_input(self, **kwargs) -> Dict: - """Prepare and return `aux_input` used by `forward()`""" - return {"speaker_id": None, "style_wav": None, "d_vector": None, "language_id": None} - - def get_aux_input_from_test_sentences(self, sentence_info): - if hasattr(self.config, "model_args"): - config = self.config.model_args - else: - config = self.config - - # extract speaker and language info - text, speaker_name, style_wav, language_name = None, None, None, None - - if isinstance(sentence_info, list): - if len(sentence_info) == 1: - text = sentence_info[0] - elif len(sentence_info) == 2: - text, speaker_name = sentence_info - elif len(sentence_info) == 3: - text, speaker_name, style_wav = sentence_info - elif len(sentence_info) == 4: - text, speaker_name, style_wav, language_name = sentence_info - else: - text = sentence_info - - # get speaker id/d_vector - speaker_id, d_vector, language_id = None, None, None - if self.speaker_manager is not None: - if config.use_d_vector_file: - if speaker_name is None: - d_vector = self.speaker_manager.get_random_embedding() - else: - d_vector = self.speaker_manager.get_d_vector_by_name(speaker_name) - elif config.use_speaker_embedding: - if speaker_name is None: - speaker_id = self.speaker_manager.get_random_id() - else: - speaker_id = self.speaker_manager.name_to_id[speaker_name] - - # get language id - if self.language_manager is not None and config.use_language_embedding and language_name is not None: - language_id = self.language_manager.name_to_id[language_name] - - return { - "text": text, - "speaker_id": speaker_id, - "style_wav": style_wav, - "d_vector": d_vector, - "language_id": language_id, - } - - def format_batch(self, batch: Dict) -> Dict: - """Generic batch formatting for `TTSDataset`. - - You must override this if you use a custom dataset. - - Args: - batch (Dict): [description] - - Returns: - Dict: [description] - """ - # setup input batch - text_input = batch["token_id"] - text_lengths = batch["token_id_lengths"] - speaker_names = batch["speaker_names"] - linear_input = batch["linear"] - mel_input = batch["mel"] - mel_lengths = batch["mel_lengths"] - stop_targets = batch["stop_targets"] - item_idx = batch["item_idxs"] - d_vectors = batch["d_vectors"] - speaker_ids = batch["speaker_ids"] - attn_mask = batch["attns"] - waveform = batch["waveform"] - pitch = batch["pitch"] - energy = batch["energy"] - language_ids = batch["language_ids"] - max_text_length = torch.max(text_lengths.float()) - max_spec_length = torch.max(mel_lengths.float()) - - # compute durations from attention masks - durations = None - if attn_mask is not None: - durations = torch.zeros(attn_mask.shape[0], attn_mask.shape[2]) - for idx, am in enumerate(attn_mask): - # compute raw durations - c_idxs = am[:, : text_lengths[idx], : mel_lengths[idx]].max(1)[1] - # c_idxs, counts = torch.unique_consecutive(c_idxs, return_counts=True) - c_idxs, counts = torch.unique(c_idxs, return_counts=True) - dur = torch.ones([text_lengths[idx]]).to(counts.dtype) - dur[c_idxs] = counts - # smooth the durations and set any 0 duration to 1 - # by cutting off from the largest duration indeces. - extra_frames = dur.sum() - mel_lengths[idx] - largest_idxs = torch.argsort(-dur)[:extra_frames] - dur[largest_idxs] -= 1 - assert ( - dur.sum() == mel_lengths[idx] - ), f" [!] total duration {dur.sum()} vs spectrogram length {mel_lengths[idx]}" - durations[idx, : text_lengths[idx]] = dur - - # set stop targets wrt reduction factor - stop_targets = stop_targets.view(text_input.shape[0], stop_targets.size(1) // self.config.r, -1) - stop_targets = (stop_targets.sum(2) > 0.0).unsqueeze(2).float().squeeze(2) - stop_target_lengths = torch.divide(mel_lengths, self.config.r).ceil_() - - return { - "text_input": text_input, - "text_lengths": text_lengths, - "speaker_names": speaker_names, - "mel_input": mel_input, - "mel_lengths": mel_lengths, - "linear_input": linear_input, - "stop_targets": stop_targets, - "stop_target_lengths": stop_target_lengths, - "attn_mask": attn_mask, - "durations": durations, - "speaker_ids": speaker_ids, - "d_vectors": d_vectors, - "max_text_length": float(max_text_length), - "max_spec_length": float(max_spec_length), - "item_idx": item_idx, - "waveform": waveform, - "pitch": pitch, - "energy": energy, - "language_ids": language_ids, - "audio_unique_names": batch["audio_unique_names"], - } - - def get_sampler(self, config: Coqpit, dataset: TTSDataset, num_gpus=1): - weights = None - data_items = dataset.samples - - if getattr(config, "use_language_weighted_sampler", False): - alpha = getattr(config, "language_weighted_sampler_alpha", 1.0) - print(" > Using Language weighted sampler with alpha:", alpha) - weights = get_language_balancer_weights(data_items) * alpha - - if getattr(config, "use_speaker_weighted_sampler", False): - alpha = getattr(config, "speaker_weighted_sampler_alpha", 1.0) - print(" > Using Speaker weighted sampler with alpha:", alpha) - if weights is not None: - weights += get_speaker_balancer_weights(data_items) * alpha - else: - weights = get_speaker_balancer_weights(data_items) * alpha - - if getattr(config, "use_length_weighted_sampler", False): - alpha = getattr(config, "length_weighted_sampler_alpha", 1.0) - print(" > Using Length weighted sampler with alpha:", alpha) - if weights is not None: - weights += get_length_balancer_weights(data_items) * alpha - else: - weights = get_length_balancer_weights(data_items) * alpha - - if weights is not None: - sampler = WeightedRandomSampler(weights, len(weights)) - else: - sampler = None - - # sampler for DDP - if sampler is None: - sampler = DistributedSampler(dataset) if num_gpus > 1 else None - else: # If a sampler is already defined use this sampler and DDP sampler together - sampler = DistributedSamplerWrapper(sampler) if num_gpus > 1 else sampler - - return sampler - - def get_data_loader( - self, - config: Coqpit, - assets: Dict, - is_eval: bool, - samples: Union[List[Dict], List[List]], - verbose: bool, - num_gpus: int, - rank: int = None, - ) -> "DataLoader": - if is_eval and not config.run_eval: - loader = None - else: - # setup multi-speaker attributes - if self.speaker_manager is not None: - if hasattr(config, "model_args"): - speaker_id_mapping = ( - self.speaker_manager.name_to_id if config.model_args.use_speaker_embedding else None - ) - d_vector_mapping = self.speaker_manager.embeddings if config.model_args.use_d_vector_file else None - config.use_d_vector_file = config.model_args.use_d_vector_file - else: - speaker_id_mapping = self.speaker_manager.name_to_id if config.use_speaker_embedding else None - d_vector_mapping = self.speaker_manager.embeddings if config.use_d_vector_file else None - else: - speaker_id_mapping = None - d_vector_mapping = None - - # setup multi-lingual attributes - if self.language_manager is not None: - language_id_mapping = self.language_manager.name_to_id if self.args.use_language_embedding else None - else: - language_id_mapping = None - - # init dataloader - dataset = TTSDataset( - outputs_per_step=config.r if "r" in config else 1, - compute_linear_spec=config.model.lower() == "tacotron" or config.compute_linear_spec, - compute_f0=config.get("compute_f0", False), - f0_cache_path=config.get("f0_cache_path", None), - compute_energy=config.get("compute_energy", False), - energy_cache_path=config.get("energy_cache_path", None), - samples=samples, - ap=self.ap, - return_wav=config.return_wav if "return_wav" in config else False, - batch_group_size=0 if is_eval else config.batch_group_size * config.batch_size, - min_text_len=config.min_text_len, - max_text_len=config.max_text_len, - min_audio_len=config.min_audio_len, - max_audio_len=config.max_audio_len, - phoneme_cache_path=config.phoneme_cache_path, - precompute_num_workers=config.precompute_num_workers, - use_noise_augment=False if is_eval else config.use_noise_augment, - verbose=verbose, - speaker_id_mapping=speaker_id_mapping, - d_vector_mapping=d_vector_mapping if config.use_d_vector_file else None, - tokenizer=self.tokenizer, - start_by_longest=config.start_by_longest, - language_id_mapping=language_id_mapping, - ) - - # wait all the DDP process to be ready - if num_gpus > 1: - dist.barrier() - - # sort input sequences from short to long - dataset.preprocess_samples() - - # get samplers - sampler = self.get_sampler(config, dataset, num_gpus) - - loader = DataLoader( - dataset, - batch_size=config.eval_batch_size if is_eval else config.batch_size, - shuffle=config.shuffle if sampler is None else False, # if there is no other sampler - collate_fn=dataset.collate_fn, - drop_last=config.drop_last, # setting this False might cause issues in AMP training. - sampler=sampler, - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=False, - ) - return loader - - def _get_test_aux_input( - self, - ) -> Dict: - d_vector = None - if self.config.use_d_vector_file: - d_vector = [self.speaker_manager.embeddings[name]["embedding"] for name in self.speaker_manager.embeddings] - d_vector = (random.sample(sorted(d_vector), 1),) - - aux_inputs = { - "speaker_id": None - if not self.config.use_speaker_embedding - else random.sample(sorted(self.speaker_manager.name_to_id.values()), 1), - "d_vector": d_vector, - "style_wav": None, # TODO: handle GST style input - } - return aux_inputs - - def test_run(self, assets: Dict) -> Tuple[Dict, Dict]: - """Generic test run for `tts` models used by `Trainer`. - - You can override this for a different behaviour. - - Args: - assets (dict): A dict of training assets. For `tts` models, it must include `{'audio_processor': ap}`. - - Returns: - Tuple[Dict, Dict]: Test figures and audios to be projected to Tensorboard. - """ - print(" | > Synthesizing test sentences.") - test_audios = {} - test_figures = {} - test_sentences = self.config.test_sentences - aux_inputs = self._get_test_aux_input() - for idx, sen in enumerate(test_sentences): - if isinstance(sen, list): - aux_inputs = self.get_aux_input_from_test_sentences(sen) - sen = aux_inputs["text"] - outputs_dict = synthesis( - self, - sen, - self.config, - "cuda" in str(next(self.parameters()).device), - speaker_id=aux_inputs["speaker_id"], - d_vector=aux_inputs["d_vector"], - style_wav=aux_inputs["style_wav"], - use_griffin_lim=True, - do_trim_silence=False, - ) - test_audios["{}-audio".format(idx)] = outputs_dict["wav"] - test_figures["{}-prediction".format(idx)] = plot_spectrogram( - outputs_dict["outputs"]["model_outputs"], self.ap, output_fig=False - ) - test_figures["{}-alignment".format(idx)] = plot_alignment( - outputs_dict["outputs"]["alignments"], output_fig=False - ) - return test_figures, test_audios - - def on_init_start(self, trainer): - """Save the speaker.pth and language_ids.json at the beginning of the training. Also update both paths.""" - if self.speaker_manager is not None: - output_path = os.path.join(trainer.output_path, "speakers.pth") - self.speaker_manager.save_ids_to_file(output_path) - trainer.config.speakers_file = output_path - # some models don't have `model_args` set - if hasattr(trainer.config, "model_args"): - trainer.config.model_args.speakers_file = output_path - trainer.config.save_json(os.path.join(trainer.output_path, "config.json")) - print(f" > `speakers.pth` is saved to {output_path}.") - print(" > `speakers_file` is updated in the config.json.") - - if self.language_manager is not None: - output_path = os.path.join(trainer.output_path, "language_ids.json") - self.language_manager.save_ids_to_file(output_path) - trainer.config.language_ids_file = output_path - if hasattr(trainer.config, "model_args"): - trainer.config.model_args.language_ids_file = output_path - trainer.config.save_json(os.path.join(trainer.output_path, "config.json")) - print(f" > `language_ids.json` is saved to {output_path}.") - print(" > `language_ids_file` is updated in the config.json.") - - -class BaseTTSE2E(BaseTTS): - def _set_model_args(self, config: Coqpit): - self.config = config - if "Config" in config.__class__.__name__: - num_chars = ( - self.config.model_args.num_chars if self.tokenizer is None else self.tokenizer.characters.num_chars - ) - self.config.model_args.num_chars = num_chars - self.config.num_chars = num_chars - self.args = config.model_args - self.args.num_chars = num_chars - elif "Args" in config.__class__.__name__: - self.args = config - self.args.num_chars = self.args.num_chars - else: - raise ValueError("config must be either a *Config or *Args") diff --git a/TTS/TTS/tts/models/delightful_tts.py b/TTS/TTS/tts/models/delightful_tts.py deleted file mode 100644 index c0a00c6623a8dad937a787e9b9ca84c636812359..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/models/delightful_tts.py +++ /dev/null @@ -1,1773 +0,0 @@ -import os -from dataclasses import dataclass, field -from itertools import chain -from pathlib import Path -from typing import Dict, List, Optional, Tuple, Union - -import numpy as np -import torch -import torch.distributed as dist -import torchaudio -from coqpit import Coqpit -from librosa.filters import mel as librosa_mel_fn -from torch import nn -from torch.cuda.amp.autocast_mode import autocast -from torch.nn import functional as F -from torch.utils.data import DataLoader -from torch.utils.data.sampler import WeightedRandomSampler -from trainer.torch import DistributedSampler, DistributedSamplerWrapper -from trainer.trainer_utils import get_optimizer, get_scheduler - -from TTS.tts.datasets.dataset import F0Dataset, TTSDataset, _parse_sample -from TTS.tts.layers.delightful_tts.acoustic_model import AcousticModel -from TTS.tts.layers.losses import ForwardSumLoss, VitsDiscriminatorLoss -from TTS.tts.layers.vits.discriminator import VitsDiscriminator -from TTS.tts.models.base_tts import BaseTTSE2E -from TTS.tts.utils.helpers import average_over_durations, compute_attn_prior, rand_segments, segment, sequence_mask -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_avg_pitch, plot_pitch, plot_spectrogram -from TTS.utils.audio.numpy_transforms import build_mel_basis, compute_f0 -from TTS.utils.audio.numpy_transforms import db_to_amp as db_to_amp_numpy -from TTS.utils.audio.numpy_transforms import mel_to_wav as mel_to_wav_numpy -from TTS.utils.audio.processor import AudioProcessor -from TTS.utils.io import load_fsspec -from TTS.vocoder.layers.losses import MultiScaleSTFTLoss -from TTS.vocoder.models.hifigan_generator import HifiganGenerator -from TTS.vocoder.utils.generic_utils import plot_results - - -def id_to_torch(aux_id, cuda=False): - if aux_id is not None: - aux_id = np.asarray(aux_id) - aux_id = torch.from_numpy(aux_id) - if cuda: - return aux_id.cuda() - return aux_id - - -def embedding_to_torch(d_vector, cuda=False): - if d_vector is not None: - d_vector = np.asarray(d_vector) - d_vector = torch.from_numpy(d_vector).float() - d_vector = d_vector.squeeze().unsqueeze(0) - if cuda: - return d_vector.cuda() - return d_vector - - -def numpy_to_torch(np_array, dtype, cuda=False): - if np_array is None: - return None - tensor = torch.as_tensor(np_array, dtype=dtype) - if cuda: - return tensor.cuda() - return tensor - - -def get_mask_from_lengths(lengths: torch.Tensor) -> torch.Tensor: - batch_size = lengths.shape[0] - max_len = torch.max(lengths).item() - ids = torch.arange(0, max_len, device=lengths.device).unsqueeze(0).expand(batch_size, -1) - mask = ids >= lengths.unsqueeze(1).expand(-1, max_len) - return mask - - -def pad(input_ele: List[torch.Tensor], max_len: int) -> torch.Tensor: - out_list = torch.jit.annotate(List[torch.Tensor], []) - for batch in input_ele: - if len(batch.shape) == 1: - one_batch_padded = F.pad(batch, (0, max_len - batch.size(0)), "constant", 0.0) - else: - one_batch_padded = F.pad(batch, (0, 0, 0, max_len - batch.size(0)), "constant", 0.0) - out_list.append(one_batch_padded) - out_padded = torch.stack(out_list) - return out_padded - - -def init_weights(m: nn.Module, mean: float = 0.0, std: float = 0.01): - classname = m.__class__.__name__ - if classname.find("Conv") != -1: - m.weight.data.normal_(mean, std) - - -def stride_lens(lens: torch.Tensor, stride: int = 2) -> torch.Tensor: - return torch.ceil(lens / stride).int() - - -def initialize_embeddings(shape: Tuple[int]) -> torch.Tensor: - assert len(shape) == 2, "Can only initialize 2-D embedding matrices ..." - return torch.randn(shape) * np.sqrt(2 / shape[1]) - - -# pylint: disable=redefined-outer-name -def calc_same_padding(kernel_size: int) -> Tuple[int, int]: - pad = kernel_size // 2 - return (pad, pad - (kernel_size + 1) % 2) - - -hann_window = {} -mel_basis = {} - - -@torch.no_grad() -def weights_reset(m: nn.Module): - # check if the current module has reset_parameters and if it is reset the weight - reset_parameters = getattr(m, "reset_parameters", None) - if callable(reset_parameters): - m.reset_parameters() - - -def get_module_weights_sum(mdl: nn.Module): - dict_sums = {} - for name, w in mdl.named_parameters(): - if "weight" in name: - value = w.data.sum().item() - dict_sums[name] = value - return dict_sums - - -def load_audio(file_path: str): - """Load the audio file normalized in [-1, 1] - - Return Shapes: - - x: :math:`[1, T]` - """ - x, sr = torchaudio.load( - file_path, - ) - assert (x > 1).sum() + (x < -1).sum() == 0 - return x, sr - - -def _amp_to_db(x, C=1, clip_val=1e-5): - return torch.log(torch.clamp(x, min=clip_val) * C) - - -def _db_to_amp(x, C=1): - return torch.exp(x) / C - - -def amp_to_db(magnitudes): - output = _amp_to_db(magnitudes) - return output - - -def db_to_amp(magnitudes): - output = _db_to_amp(magnitudes) - return output - - -def _wav_to_spec(y, n_fft, hop_length, win_length, center=False): - y = y.squeeze(1) - - if torch.min(y) < -1.0: - print("min value is ", torch.min(y)) - if torch.max(y) > 1.0: - print("max value is ", torch.max(y)) - - global hann_window # pylint: disable=global-statement - dtype_device = str(y.dtype) + "_" + str(y.device) - wnsize_dtype_device = str(win_length) + "_" + dtype_device - if wnsize_dtype_device not in hann_window: - hann_window[wnsize_dtype_device] = torch.hann_window(win_length).to(dtype=y.dtype, device=y.device) - - y = torch.nn.functional.pad( - y.unsqueeze(1), - (int((n_fft - hop_length) / 2), int((n_fft - hop_length) / 2)), - mode="reflect", - ) - y = y.squeeze(1) - - spec = torch.stft( - y, - n_fft, - hop_length=hop_length, - win_length=win_length, - window=hann_window[wnsize_dtype_device], - center=center, - pad_mode="reflect", - normalized=False, - onesided=True, - return_complex=False, - ) - - return spec - - -def wav_to_spec(y, n_fft, hop_length, win_length, center=False): - """ - Args Shapes: - - y : :math:`[B, 1, T]` - - Return Shapes: - - spec : :math:`[B,C,T]` - """ - spec = _wav_to_spec(y, n_fft, hop_length, win_length, center=center) - spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) - return spec - - -def wav_to_energy(y, n_fft, hop_length, win_length, center=False): - spec = _wav_to_spec(y, n_fft, hop_length, win_length, center=center) - - spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) - return torch.norm(spec, dim=1, keepdim=True) - - -def name_mel_basis(spec, n_fft, fmax): - n_fft_len = f"{n_fft}_{fmax}_{spec.dtype}_{spec.device}" - return n_fft_len - - -def spec_to_mel(spec, n_fft, num_mels, sample_rate, fmin, fmax): - """ - Args Shapes: - - spec : :math:`[B,C,T]` - - Return Shapes: - - mel : :math:`[B,C,T]` - """ - global mel_basis # pylint: disable=global-statement - mel_basis_key = name_mel_basis(spec, n_fft, fmax) - # pylint: disable=too-many-function-args - if mel_basis_key not in mel_basis: - # pylint: disable=missing-kwoa - mel = librosa_mel_fn(sample_rate, n_fft, num_mels, fmin, fmax) - mel_basis[mel_basis_key] = torch.from_numpy(mel).to(dtype=spec.dtype, device=spec.device) - mel = torch.matmul(mel_basis[mel_basis_key], spec) - mel = amp_to_db(mel) - return mel - - -def wav_to_mel(y, n_fft, num_mels, sample_rate, hop_length, win_length, fmin, fmax, center=False): - """ - Args Shapes: - - y : :math:`[B, 1, T_y]` - - Return Shapes: - - spec : :math:`[B,C,T_spec]` - """ - y = y.squeeze(1) - - if torch.min(y) < -1.0: - print("min value is ", torch.min(y)) - if torch.max(y) > 1.0: - print("max value is ", torch.max(y)) - - global mel_basis, hann_window # pylint: disable=global-statement - mel_basis_key = name_mel_basis(y, n_fft, fmax) - wnsize_dtype_device = str(win_length) + "_" + str(y.dtype) + "_" + str(y.device) - if mel_basis_key not in mel_basis: - # pylint: disable=missing-kwoa - mel = librosa_mel_fn( - sr=sample_rate, n_fft=n_fft, n_mels=num_mels, fmin=fmin, fmax=fmax - ) # pylint: disable=too-many-function-args - mel_basis[mel_basis_key] = torch.from_numpy(mel).to(dtype=y.dtype, device=y.device) - if wnsize_dtype_device not in hann_window: - hann_window[wnsize_dtype_device] = torch.hann_window(win_length).to(dtype=y.dtype, device=y.device) - - y = torch.nn.functional.pad( - y.unsqueeze(1), - (int((n_fft - hop_length) / 2), int((n_fft - hop_length) / 2)), - mode="reflect", - ) - y = y.squeeze(1) - - spec = torch.stft( - y, - n_fft, - hop_length=hop_length, - win_length=win_length, - window=hann_window[wnsize_dtype_device], - center=center, - pad_mode="reflect", - normalized=False, - onesided=True, - return_complex=False, - ) - - spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) - spec = torch.matmul(mel_basis[mel_basis_key], spec) - spec = amp_to_db(spec) - return spec - - -############################## -# DATASET -############################## - - -def get_attribute_balancer_weights(items: list, attr_name: str, multi_dict: dict = None): - """Create balancer weight for torch WeightedSampler""" - attr_names_samples = np.array([item[attr_name] for item in items]) - unique_attr_names = np.unique(attr_names_samples).tolist() - attr_idx = [unique_attr_names.index(l) for l in attr_names_samples] - attr_count = np.array([len(np.where(attr_names_samples == l)[0]) for l in unique_attr_names]) - weight_attr = 1.0 / attr_count - dataset_samples_weight = np.array([weight_attr[l] for l in attr_idx]) - dataset_samples_weight = dataset_samples_weight / np.linalg.norm(dataset_samples_weight) - if multi_dict is not None: - multiplier_samples = np.array([multi_dict.get(item[attr_name], 1.0) for item in items]) - dataset_samples_weight *= multiplier_samples - return ( - torch.from_numpy(dataset_samples_weight).float(), - unique_attr_names, - np.unique(dataset_samples_weight).tolist(), - ) - - -class ForwardTTSE2eF0Dataset(F0Dataset): - """Override F0Dataset to avoid slow computing of pitches""" - - def __init__( - self, - ap, - samples: Union[List[List], List[Dict]], - verbose=False, - cache_path: str = None, - precompute_num_workers=0, - normalize_f0=True, - ): - super().__init__( - samples=samples, - ap=ap, - verbose=verbose, - cache_path=cache_path, - precompute_num_workers=precompute_num_workers, - normalize_f0=normalize_f0, - ) - - def _compute_and_save_pitch(self, wav_file, pitch_file=None): - wav, _ = load_audio(wav_file) - f0 = compute_f0( - x=wav.numpy()[0], - sample_rate=self.ap.sample_rate, - hop_length=self.ap.hop_length, - pitch_fmax=self.ap.pitch_fmax, - pitch_fmin=self.ap.pitch_fmin, - win_length=self.ap.win_length, - ) - # skip the last F0 value to align with the spectrogram - if wav.shape[1] % self.ap.hop_length != 0: - f0 = f0[:-1] - if pitch_file: - np.save(pitch_file, f0) - return f0 - - def compute_or_load(self, wav_file, audio_name): - """ - compute pitch and return a numpy array of pitch values - """ - pitch_file = self.create_pitch_file_path(audio_name, self.cache_path) - if not os.path.exists(pitch_file): - pitch = self._compute_and_save_pitch(wav_file=wav_file, pitch_file=pitch_file) - else: - pitch = np.load(pitch_file) - return pitch.astype(np.float32) - - -class ForwardTTSE2eDataset(TTSDataset): - def __init__(self, *args, **kwargs): - # don't init the default F0Dataset in TTSDataset - compute_f0 = kwargs.pop("compute_f0", False) - kwargs["compute_f0"] = False - self.attn_prior_cache_path = kwargs.pop("attn_prior_cache_path") - - super().__init__(*args, **kwargs) - - self.compute_f0 = compute_f0 - self.pad_id = self.tokenizer.characters.pad_id - self.ap = kwargs["ap"] - - if self.compute_f0: - self.f0_dataset = ForwardTTSE2eF0Dataset( - ap=self.ap, - samples=self.samples, - cache_path=kwargs["f0_cache_path"], - precompute_num_workers=kwargs["precompute_num_workers"], - ) - - if self.attn_prior_cache_path is not None: - os.makedirs(self.attn_prior_cache_path, exist_ok=True) - - def __getitem__(self, idx): - item = self.samples[idx] - - rel_wav_path = Path(item["audio_file"]).relative_to(item["root_path"]).with_suffix("") - rel_wav_path = str(rel_wav_path).replace("/", "_") - - raw_text = item["text"] - wav, _ = load_audio(item["audio_file"]) - wav_filename = os.path.basename(item["audio_file"]) - - try: - token_ids = self.get_token_ids(idx, item["text"]) - except: - print(idx, item) - # pylint: disable=raise-missing-from - raise OSError - f0 = None - if self.compute_f0: - f0 = self.get_f0(idx)["f0"] - - # after phonemization the text length may change - # this is a shameful 🤭 hack to prevent longer phonemes - # TODO: find a better fix - if len(token_ids) > self.max_text_len or wav.shape[1] < self.min_audio_len: - self.rescue_item_idx += 1 - return self.__getitem__(self.rescue_item_idx) - - attn_prior = None - if self.attn_prior_cache_path is not None: - attn_prior = self.load_or_compute_attn_prior(token_ids, wav, rel_wav_path) - - return { - "raw_text": raw_text, - "token_ids": token_ids, - "token_len": len(token_ids), - "wav": wav, - "pitch": f0, - "wav_file": wav_filename, - "speaker_name": item["speaker_name"], - "language_name": item["language"], - "attn_prior": attn_prior, - "audio_unique_name": item["audio_unique_name"], - } - - def load_or_compute_attn_prior(self, token_ids, wav, rel_wav_path): - """Load or compute and save the attention prior.""" - attn_prior_file = os.path.join(self.attn_prior_cache_path, f"{rel_wav_path}.npy") - # pylint: disable=no-else-return - if os.path.exists(attn_prior_file): - return np.load(attn_prior_file) - else: - token_len = len(token_ids) - mel_len = wav.shape[1] // self.ap.hop_length - attn_prior = compute_attn_prior(token_len, mel_len) - np.save(attn_prior_file, attn_prior) - return attn_prior - - @property - def lengths(self): - lens = [] - for item in self.samples: - _, wav_file, *_ = _parse_sample(item) - audio_len = os.path.getsize(wav_file) / 16 * 8 # assuming 16bit audio - lens.append(audio_len) - return lens - - def collate_fn(self, batch): - """ - Return Shapes: - - tokens: :math:`[B, T]` - - token_lens :math:`[B]` - - token_rel_lens :math:`[B]` - - pitch :math:`[B, T]` - - waveform: :math:`[B, 1, T]` - - waveform_lens: :math:`[B]` - - waveform_rel_lens: :math:`[B]` - - speaker_names: :math:`[B]` - - language_names: :math:`[B]` - - audiofile_paths: :math:`[B]` - - raw_texts: :math:`[B]` - - attn_prior: :math:`[[T_token, T_mel]]` - """ - B = len(batch) - batch = {k: [dic[k] for dic in batch] for k in batch[0]} - - max_text_len = max([len(x) for x in batch["token_ids"]]) - token_lens = torch.LongTensor(batch["token_len"]) - token_rel_lens = token_lens / token_lens.max() - - wav_lens = [w.shape[1] for w in batch["wav"]] - wav_lens = torch.LongTensor(wav_lens) - wav_lens_max = torch.max(wav_lens) - wav_rel_lens = wav_lens / wav_lens_max - - pitch_padded = None - if self.compute_f0: - pitch_lens = [p.shape[0] for p in batch["pitch"]] - pitch_lens = torch.LongTensor(pitch_lens) - pitch_lens_max = torch.max(pitch_lens) - pitch_padded = torch.FloatTensor(B, 1, pitch_lens_max) - pitch_padded = pitch_padded.zero_() + self.pad_id - - token_padded = torch.LongTensor(B, max_text_len) - wav_padded = torch.FloatTensor(B, 1, wav_lens_max) - - token_padded = token_padded.zero_() + self.pad_id - wav_padded = wav_padded.zero_() + self.pad_id - - for i in range(B): - token_ids = batch["token_ids"][i] - token_padded[i, : batch["token_len"][i]] = torch.LongTensor(token_ids) - - wav = batch["wav"][i] - wav_padded[i, :, : wav.size(1)] = torch.FloatTensor(wav) - - if self.compute_f0: - pitch = batch["pitch"][i] - pitch_padded[i, 0, : len(pitch)] = torch.FloatTensor(pitch) - - return { - "text_input": token_padded, - "text_lengths": token_lens, - "text_rel_lens": token_rel_lens, - "pitch": pitch_padded, - "waveform": wav_padded, # (B x T) - "waveform_lens": wav_lens, # (B) - "waveform_rel_lens": wav_rel_lens, - "speaker_names": batch["speaker_name"], - "language_names": batch["language_name"], - "audio_unique_names": batch["audio_unique_name"], - "audio_files": batch["wav_file"], - "raw_text": batch["raw_text"], - "attn_priors": batch["attn_prior"] if batch["attn_prior"][0] is not None else None, - } - - -############################## -# CONFIG DEFINITIONS -############################## - - -@dataclass -class VocoderConfig(Coqpit): - resblock_type_decoder: str = "1" - resblock_kernel_sizes_decoder: List[int] = field(default_factory=lambda: [3, 7, 11]) - resblock_dilation_sizes_decoder: List[List[int]] = field(default_factory=lambda: [[1, 3, 5], [1, 3, 5], [1, 3, 5]]) - upsample_rates_decoder: List[int] = field(default_factory=lambda: [8, 8, 2, 2]) - upsample_initial_channel_decoder: int = 512 - upsample_kernel_sizes_decoder: List[int] = field(default_factory=lambda: [16, 16, 4, 4]) - use_spectral_norm_discriminator: bool = False - upsampling_rates_discriminator: List[int] = field(default_factory=lambda: [4, 4, 4, 4]) - periods_discriminator: List[int] = field(default_factory=lambda: [2, 3, 5, 7, 11]) - pretrained_model_path: Optional[str] = None - - -@dataclass -class DelightfulTtsAudioConfig(Coqpit): - sample_rate: int = 22050 - hop_length: int = 256 - win_length: int = 1024 - fft_size: int = 1024 - mel_fmin: float = 0.0 - mel_fmax: float = 8000 - num_mels: int = 100 - pitch_fmax: float = 640.0 - pitch_fmin: float = 1.0 - resample: bool = False - preemphasis: float = 0.0 - ref_level_db: int = 20 - do_sound_norm: bool = False - log_func: str = "np.log10" - do_trim_silence: bool = True - trim_db: int = 45 - do_rms_norm: bool = False - db_level: float = None - power: float = 1.5 - griffin_lim_iters: int = 60 - spec_gain: int = 20 - do_amp_to_db_linear: bool = True - do_amp_to_db_mel: bool = True - min_level_db: int = -100 - max_norm: float = 4.0 - - -@dataclass -class DelightfulTtsArgs(Coqpit): - num_chars: int = 100 - spec_segment_size: int = 32 - n_hidden_conformer_encoder: int = 512 - n_layers_conformer_encoder: int = 6 - n_heads_conformer_encoder: int = 8 - dropout_conformer_encoder: float = 0.1 - kernel_size_conv_mod_conformer_encoder: int = 7 - kernel_size_depthwise_conformer_encoder: int = 7 - lrelu_slope: float = 0.3 - n_hidden_conformer_decoder: int = 512 - n_layers_conformer_decoder: int = 6 - n_heads_conformer_decoder: int = 8 - dropout_conformer_decoder: float = 0.1 - kernel_size_conv_mod_conformer_decoder: int = 11 - kernel_size_depthwise_conformer_decoder: int = 11 - bottleneck_size_p_reference_encoder: int = 4 - bottleneck_size_u_reference_encoder: int = 512 - ref_enc_filters_reference_encoder = [32, 32, 64, 64, 128, 128] - ref_enc_size_reference_encoder: int = 3 - ref_enc_strides_reference_encoder = [1, 2, 1, 2, 1] - ref_enc_pad_reference_encoder = [1, 1] - ref_enc_gru_size_reference_encoder: int = 32 - ref_attention_dropout_reference_encoder: float = 0.2 - token_num_reference_encoder: int = 32 - predictor_kernel_size_reference_encoder: int = 5 - n_hidden_variance_adaptor: int = 512 - kernel_size_variance_adaptor: int = 5 - dropout_variance_adaptor: float = 0.5 - n_bins_variance_adaptor: int = 256 - emb_kernel_size_variance_adaptor: int = 3 - use_speaker_embedding: bool = False - num_speakers: int = 0 - speakers_file: str = None - d_vector_file: str = None - speaker_embedding_channels: int = 384 - use_d_vector_file: bool = False - d_vector_dim: int = 0 - freeze_vocoder: bool = False - freeze_text_encoder: bool = False - freeze_duration_predictor: bool = False - freeze_pitch_predictor: bool = False - freeze_energy_predictor: bool = False - freeze_basis_vectors_predictor: bool = False - freeze_decoder: bool = False - length_scale: float = 1.0 - - -############################## -# MODEL DEFINITION -############################## -class DelightfulTTS(BaseTTSE2E): - """ - Paper:: - https://arxiv.org/pdf/2110.12612.pdf - - Paper Abstract:: - This paper describes the Microsoft end-to-end neural text to speech (TTS) system: DelightfulTTS for Blizzard Challenge 2021. - The goal of this challenge is to synthesize natural and high-quality speech from text, and we approach this goal in two perspectives: - The first is to directly model and generate waveform in 48 kHz sampling rate, which brings higher perception quality than previous systems - with 16 kHz or 24 kHz sampling rate; The second is to model the variation information in speech through a systematic design, which improves - the prosody and naturalness. Specifically, for 48 kHz modeling, we predict 16 kHz mel-spectrogram in acoustic model, and - propose a vocoder called HiFiNet to directly generate 48 kHz waveform from predicted 16 kHz mel-spectrogram, which can better trade off training - efficiency, modelling stability and voice quality. We model variation information systematically from both explicit (speaker ID, language ID, pitch and duration) and - implicit (utterance-level and phoneme-level prosody) perspectives: 1) For speaker and language ID, we use lookup embedding in training and - inference; 2) For pitch and duration, we extract the values from paired text-speech data in training and use two predictors to predict the values in inference; 3) - For utterance-level and phoneme-level prosody, we use two reference encoders to extract the values in training, and use two separate predictors to predict the values in inference. - Additionally, we introduce an improved Conformer block to better model the local and global dependency in acoustic model. For task SH1, DelightfulTTS achieves 4.17 mean score in MOS test - and 4.35 in SMOS test, which indicates the effectiveness of our proposed system - - - Model training:: - text --> ForwardTTS() --> spec_hat --> rand_seg_select()--> GANVocoder() --> waveform_seg - spec --------^ - - Examples: - >>> from TTS.tts.models.forward_tts_e2e import ForwardTTSE2e, ForwardTTSE2eConfig - >>> config = ForwardTTSE2eConfig() - >>> model = ForwardTTSE2e(config) - """ - - # pylint: disable=dangerous-default-value - def __init__( - self, - config: Coqpit, - ap, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config=config, ap=ap, tokenizer=tokenizer, speaker_manager=speaker_manager) - self.ap = ap - - self._set_model_args(config) - self.init_multispeaker(config) - self.binary_loss_weight = None - - self.args.out_channels = self.config.audio.num_mels - self.args.num_mels = self.config.audio.num_mels - self.acoustic_model = AcousticModel(args=self.args, tokenizer=tokenizer, speaker_manager=speaker_manager) - - self.waveform_decoder = HifiganGenerator( - self.config.audio.num_mels, - 1, - self.config.vocoder.resblock_type_decoder, - self.config.vocoder.resblock_dilation_sizes_decoder, - self.config.vocoder.resblock_kernel_sizes_decoder, - self.config.vocoder.upsample_kernel_sizes_decoder, - self.config.vocoder.upsample_initial_channel_decoder, - self.config.vocoder.upsample_rates_decoder, - inference_padding=0, - # cond_channels=self.embedded_speaker_dim, - conv_pre_weight_norm=False, - conv_post_weight_norm=False, - conv_post_bias=False, - ) - - if self.config.init_discriminator: - self.disc = VitsDiscriminator( - use_spectral_norm=self.config.vocoder.use_spectral_norm_discriminator, - periods=self.config.vocoder.periods_discriminator, - ) - - @property - def device(self): - return next(self.parameters()).device - - @property - def energy_scaler(self): - return self.acoustic_model.energy_scaler - - @property - def length_scale(self): - return self.acoustic_model.length_scale - - @length_scale.setter - def length_scale(self, value): - self.acoustic_model.length_scale = value - - @property - def pitch_mean(self): - return self.acoustic_model.pitch_mean - - @pitch_mean.setter - def pitch_mean(self, value): - self.acoustic_model.pitch_mean = value - - @property - def pitch_std(self): - return self.acoustic_model.pitch_std - - @pitch_mean.setter - def pitch_std(self, value): # pylint: disable=function-redefined - self.acoustic_model.pitch_std = value - - @property - def mel_basis(self): - return build_mel_basis( - sample_rate=self.ap.sample_rate, - fft_size=self.ap.fft_size, - num_mels=self.ap.num_mels, - mel_fmax=self.ap.mel_fmax, - mel_fmin=self.ap.mel_fmin, - ) # pylint: disable=function-redefined - - def init_for_training(self) -> None: - self.train_disc = ( # pylint: disable=attribute-defined-outside-init - self.config.steps_to_start_discriminator <= 0 - ) # pylint: disable=attribute-defined-outside-init - self.update_energy_scaler = True # pylint: disable=attribute-defined-outside-init - - def init_multispeaker(self, config: Coqpit): - """Init for multi-speaker training. - - Args: - config (Coqpit): Model configuration. - """ - self.embedded_speaker_dim = 0 - self.num_speakers = self.args.num_speakers - self.audio_transform = None - - if self.speaker_manager: - self.num_speakers = self.speaker_manager.num_speakers - self.args.num_speakers = self.speaker_manager.num_speakers - - if self.args.use_speaker_embedding: - self._init_speaker_embedding() - - if self.args.use_d_vector_file: - self._init_d_vector() - - def _init_speaker_embedding(self): - # pylint: disable=attribute-defined-outside-init - if self.num_speakers > 0: - print(" > initialization of speaker-embedding layers.") - self.embedded_speaker_dim = self.args.speaker_embedding_channels - self.args.embedded_speaker_dim = self.args.speaker_embedding_channels - - def _init_d_vector(self): - # pylint: disable=attribute-defined-outside-init - if hasattr(self, "emb_g"): - raise ValueError("[!] Speaker embedding layer already initialized before d_vector settings.") - self.embedded_speaker_dim = self.args.d_vector_dim - self.args.embedded_speaker_dim = self.args.d_vector_dim - - def _freeze_layers(self): - if self.args.freeze_vocoder: - for param in self.vocoder.paramseters(): - param.requires_grad = False - - if self.args.freeze_text_encoder: - for param in self.text_encoder.parameters(): - param.requires_grad = False - - if self.args.freeze_duration_predictor: - for param in self.durarion_predictor.parameters(): - param.requires_grad = False - - if self.args.freeze_pitch_predictor: - for param in self.pitch_predictor.parameters(): - param.requires_grad = False - - if self.args.freeze_energy_predictor: - for param in self.energy_predictor.parameters(): - param.requires_grad = False - - if self.args.freeze_decoder: - for param in self.decoder.parameters(): - param.requires_grad = False - - def forward( - self, - x: torch.LongTensor, - x_lengths: torch.LongTensor, - spec_lengths: torch.LongTensor, - spec: torch.FloatTensor, - waveform: torch.FloatTensor, - pitch: torch.FloatTensor = None, - energy: torch.FloatTensor = None, - attn_priors: torch.FloatTensor = None, - d_vectors: torch.FloatTensor = None, - speaker_idx: torch.LongTensor = None, - ) -> Dict: - """Model's forward pass. - - Args: - x (torch.LongTensor): Input character sequences. - x_lengths (torch.LongTensor): Input sequence lengths. - spec_lengths (torch.LongTensor): Spectrogram sequnce lengths. Defaults to None. - spec (torch.FloatTensor): Spectrogram frames. Only used when the alignment network is on. Defaults to None. - waveform (torch.FloatTensor): Waveform. Defaults to None. - pitch (torch.FloatTensor): Pitch values for each spectrogram frame. Only used when the pitch predictor is on. Defaults to None. - energy (torch.FloatTensor): Spectral energy values for each spectrogram frame. Only used when the energy predictor is on. Defaults to None. - attn_priors (torch.FloatTentrasor): Attention priors for the aligner network. Defaults to None. - aux_input (Dict): Auxiliary model inputs for multi-speaker training. Defaults to `{"d_vectors": 0, "speaker_ids": None}`. - - Shapes: - - x: :math:`[B, T_max]` - - x_lengths: :math:`[B]` - - spec_lengths: :math:`[B]` - - spec: :math:`[B, T_max2, C_spec]` - - waveform: :math:`[B, 1, T_max2 * hop_length]` - - g: :math:`[B, C]` - - pitch: :math:`[B, 1, T_max2]` - - energy: :math:`[B, 1, T_max2]` - """ - encoder_outputs = self.acoustic_model( - tokens=x, - src_lens=x_lengths, - mel_lens=spec_lengths, - mels=spec, - pitches=pitch, - energies=energy, - attn_priors=attn_priors, - d_vectors=d_vectors, - speaker_idx=speaker_idx, - ) - - # use mel-spec from the decoder - vocoder_input = encoder_outputs["model_outputs"] # [B, T_max2, C_mel] - - vocoder_input_slices, slice_ids = rand_segments( - x=vocoder_input.transpose(1, 2), - x_lengths=spec_lengths, - segment_size=self.args.spec_segment_size, - let_short_samples=True, - pad_short=True, - ) - if encoder_outputs["spk_emb"] is not None: - g = encoder_outputs["spk_emb"].unsqueeze(-1) - else: - g = None - - vocoder_output = self.waveform_decoder(x=vocoder_input_slices.detach(), g=g) - wav_seg = segment( - waveform, - slice_ids * self.ap.hop_length, - self.args.spec_segment_size * self.ap.hop_length, - pad_short=True, - ) - model_outputs = {**encoder_outputs} - model_outputs["acoustic_model_outputs"] = encoder_outputs["model_outputs"] - model_outputs["model_outputs"] = vocoder_output - model_outputs["waveform_seg"] = wav_seg - model_outputs["slice_ids"] = slice_ids - return model_outputs - - @torch.no_grad() - def inference( - self, x, aux_input={"d_vectors": None, "speaker_ids": None}, pitch_transform=None, energy_transform=None - ): - encoder_outputs = self.acoustic_model.inference( - tokens=x, - d_vectors=aux_input["d_vectors"], - speaker_idx=aux_input["speaker_ids"], - pitch_transform=pitch_transform, - energy_transform=energy_transform, - p_control=None, - d_control=None, - ) - vocoder_input = encoder_outputs["model_outputs"].transpose(1, 2) # [B, T_max2, C_mel] -> [B, C_mel, T_max2] - if encoder_outputs["spk_emb"] is not None: - g = encoder_outputs["spk_emb"].unsqueeze(-1) - else: - g = None - - vocoder_output = self.waveform_decoder(x=vocoder_input, g=g) - model_outputs = {**encoder_outputs} - model_outputs["model_outputs"] = vocoder_output - return model_outputs - - @torch.no_grad() - def inference_spec_decoder(self, x, aux_input={"d_vectors": None, "speaker_ids": None}): - encoder_outputs = self.acoustic_model.inference( - tokens=x, - d_vectors=aux_input["d_vectors"], - speaker_idx=aux_input["speaker_ids"], - ) - model_outputs = {**encoder_outputs} - return model_outputs - - def train_step(self, batch: dict, criterion: nn.Module, optimizer_idx: int): - if optimizer_idx == 0: - tokens = batch["text_input"] - token_lenghts = batch["text_lengths"] - mel = batch["mel_input"] - mel_lens = batch["mel_lengths"] - waveform = batch["waveform"] # [B, T, C] -> [B, C, T] - pitch = batch["pitch"] - d_vectors = batch["d_vectors"] - speaker_ids = batch["speaker_ids"] - attn_priors = batch["attn_priors"] - energy = batch["energy"] - - # generator pass - outputs = self.forward( - x=tokens, - x_lengths=token_lenghts, - spec_lengths=mel_lens, - spec=mel, - waveform=waveform, - pitch=pitch, - energy=energy, - attn_priors=attn_priors, - d_vectors=d_vectors, - speaker_idx=speaker_ids, - ) - - # cache tensors for the generator pass - self.model_outputs_cache = outputs # pylint: disable=attribute-defined-outside-init - - if self.train_disc: - # compute scores and features - scores_d_fake, _, scores_d_real, _ = self.disc( - outputs["model_outputs"].detach(), outputs["waveform_seg"] - ) - - # compute loss - with autocast(enabled=False): # use float32 for the criterion - loss_dict = criterion[optimizer_idx]( - scores_disc_fake=scores_d_fake, - scores_disc_real=scores_d_real, - ) - return outputs, loss_dict - return None, None - - if optimizer_idx == 1: - mel = batch["mel_input"] - # compute melspec segment - with autocast(enabled=False): - mel_slice = segment( - mel.float(), self.model_outputs_cache["slice_ids"], self.args.spec_segment_size, pad_short=True - ) - - mel_slice_hat = wav_to_mel( - y=self.model_outputs_cache["model_outputs"].float(), - n_fft=self.ap.fft_size, - sample_rate=self.ap.sample_rate, - num_mels=self.ap.num_mels, - hop_length=self.ap.hop_length, - win_length=self.ap.win_length, - fmin=self.ap.mel_fmin, - fmax=self.ap.mel_fmax, - center=False, - ) - - scores_d_fake = None - feats_d_fake = None - feats_d_real = None - - if self.train_disc: - # compute discriminator scores and features - scores_d_fake, feats_d_fake, _, feats_d_real = self.disc( - self.model_outputs_cache["model_outputs"], self.model_outputs_cache["waveform_seg"] - ) - - # compute losses - with autocast(enabled=True): # use float32 for the criterion - loss_dict = criterion[optimizer_idx]( - mel_output=self.model_outputs_cache["acoustic_model_outputs"].transpose(1, 2), - mel_target=batch["mel_input"], - mel_lens=batch["mel_lengths"], - dur_output=self.model_outputs_cache["dr_log_pred"], - dur_target=self.model_outputs_cache["dr_log_target"].detach(), - pitch_output=self.model_outputs_cache["pitch_pred"], - pitch_target=self.model_outputs_cache["pitch_target"], - energy_output=self.model_outputs_cache["energy_pred"], - energy_target=self.model_outputs_cache["energy_target"], - src_lens=batch["text_lengths"], - waveform=self.model_outputs_cache["waveform_seg"], - waveform_hat=self.model_outputs_cache["model_outputs"], - p_prosody_ref=self.model_outputs_cache["p_prosody_ref"], - p_prosody_pred=self.model_outputs_cache["p_prosody_pred"], - u_prosody_ref=self.model_outputs_cache["u_prosody_ref"], - u_prosody_pred=self.model_outputs_cache["u_prosody_pred"], - aligner_logprob=self.model_outputs_cache["aligner_logprob"], - aligner_hard=self.model_outputs_cache["aligner_mas"], - aligner_soft=self.model_outputs_cache["aligner_soft"], - binary_loss_weight=self.binary_loss_weight, - feats_fake=feats_d_fake, - feats_real=feats_d_real, - scores_fake=scores_d_fake, - spec_slice=mel_slice, - spec_slice_hat=mel_slice_hat, - skip_disc=not self.train_disc, - ) - - loss_dict["avg_text_length"] = batch["text_lengths"].float().mean() - loss_dict["avg_mel_length"] = batch["mel_lengths"].float().mean() - loss_dict["avg_text_batch_occupancy"] = ( - batch["text_lengths"].float() / batch["text_lengths"].float().max() - ).mean() - loss_dict["avg_mel_batch_occupancy"] = ( - batch["mel_lengths"].float() / batch["mel_lengths"].float().max() - ).mean() - - return self.model_outputs_cache, loss_dict - raise ValueError(" [!] Unexpected `optimizer_idx`.") - - def eval_step(self, batch: dict, criterion: nn.Module, optimizer_idx: int): - return self.train_step(batch, criterion, optimizer_idx) - - def _log(self, batch, outputs, name_prefix="train"): - figures, audios = {}, {} - - # encoder outputs - model_outputs = outputs[1]["acoustic_model_outputs"] - alignments = outputs[1]["alignments"] - mel_input = batch["mel_input"] - - pred_spec = model_outputs[0].data.cpu().numpy() - gt_spec = mel_input[0].data.cpu().numpy() - align_img = alignments[0].data.cpu().numpy() - - figures = { - "prediction": plot_spectrogram(pred_spec, None, output_fig=False), - "ground_truth": plot_spectrogram(gt_spec.T, None, output_fig=False), - "alignment": plot_alignment(align_img, output_fig=False), - } - - # plot pitch figures - pitch_avg = abs(outputs[1]["pitch_target"][0, 0].data.cpu().numpy()) - pitch_avg_hat = abs(outputs[1]["pitch_pred"][0, 0].data.cpu().numpy()) - chars = self.tokenizer.decode(batch["text_input"][0].data.cpu().numpy()) - pitch_figures = { - "pitch_ground_truth": plot_avg_pitch(pitch_avg, chars, output_fig=False), - "pitch_avg_predicted": plot_avg_pitch(pitch_avg_hat, chars, output_fig=False), - } - figures.update(pitch_figures) - - # plot energy figures - energy_avg = abs(outputs[1]["energy_target"][0, 0].data.cpu().numpy()) - energy_avg_hat = abs(outputs[1]["energy_pred"][0, 0].data.cpu().numpy()) - chars = self.tokenizer.decode(batch["text_input"][0].data.cpu().numpy()) - energy_figures = { - "energy_ground_truth": plot_avg_pitch(energy_avg, chars, output_fig=False), - "energy_avg_predicted": plot_avg_pitch(energy_avg_hat, chars, output_fig=False), - } - figures.update(energy_figures) - - # plot the attention mask computed from the predicted durations - alignments_hat = outputs[1]["alignments_dp"][0].data.cpu().numpy() - figures["alignment_hat"] = plot_alignment(alignments_hat.T, output_fig=False) - - # Sample audio - encoder_audio = mel_to_wav_numpy( - mel=db_to_amp_numpy(x=pred_spec.T, gain=1, base=None), mel_basis=self.mel_basis, **self.config.audio - ) - audios[f"{name_prefix}/encoder_audio"] = encoder_audio - - # vocoder outputs - y_hat = outputs[1]["model_outputs"] - y = outputs[1]["waveform_seg"] - - vocoder_figures = plot_results(y_hat=y_hat, y=y, ap=self.ap, name_prefix=name_prefix) - figures.update(vocoder_figures) - - sample_voice = y_hat[0].squeeze(0).detach().cpu().numpy() - audios[f"{name_prefix}/vocoder_audio"] = sample_voice - return figures, audios - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ): # pylint: disable=no-self-use, unused-argument - """Create visualizations and waveform examples. - - For example, here you can plot spectrograms and generate sample sample waveforms from these spectrograms to - be projected onto Tensorboard. - - Args: - batch (Dict): Model inputs used at the previous training step. - outputs (Dict): Model outputs generated at the previous training step. - - Returns: - Tuple[Dict, np.ndarray]: training plots and output waveform. - """ - figures, audios = self._log(batch=batch, outputs=outputs, name_prefix="vocoder/") - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - def eval_log(self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int) -> None: - figures, audios = self._log(batch=batch, outputs=outputs, name_prefix="vocoder/") - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - def get_aux_input_from_test_sentences(self, sentence_info): - if hasattr(self.config, "model_args"): - config = self.config.model_args - else: - config = self.config - - # extract speaker and language info - text, speaker_name, style_wav = None, None, None - - if isinstance(sentence_info, list): - if len(sentence_info) == 1: - text = sentence_info[0] - elif len(sentence_info) == 2: - text, speaker_name = sentence_info - elif len(sentence_info) == 3: - text, speaker_name, style_wav = sentence_info - else: - text = sentence_info - - # get speaker id/d_vector - speaker_id, d_vector = None, None - if hasattr(self, "speaker_manager"): - if config.use_d_vector_file: - if speaker_name is None: - d_vector = self.speaker_manager.get_random_embedding() - else: - d_vector = self.speaker_manager.get_mean_embedding(speaker_name, num_samples=None, randomize=False) - elif config.use_speaker_embedding: - if speaker_name is None: - speaker_id = self.speaker_manager.get_random_id() - else: - speaker_id = self.speaker_manager.name_to_id[speaker_name] - - return {"text": text, "speaker_id": speaker_id, "style_wav": style_wav, "d_vector": d_vector} - - def plot_outputs(self, text, wav, alignment, outputs): - figures = {} - pitch_avg_pred = outputs["pitch"].cpu() - energy_avg_pred = outputs["energy"].cpu() - spec = wav_to_mel( - y=torch.from_numpy(wav[None, :]), - n_fft=self.ap.fft_size, - sample_rate=self.ap.sample_rate, - num_mels=self.ap.num_mels, - hop_length=self.ap.hop_length, - win_length=self.ap.win_length, - fmin=self.ap.mel_fmin, - fmax=self.ap.mel_fmax, - center=False, - )[0].transpose(0, 1) - pitch = compute_f0( - x=wav[0], - sample_rate=self.ap.sample_rate, - hop_length=self.ap.hop_length, - pitch_fmax=self.ap.pitch_fmax, - ) - input_text = self.tokenizer.ids_to_text(self.tokenizer.text_to_ids(text, language="en")) - input_text = input_text.replace("", "_") - durations = outputs["durations"] - pitch_avg = average_over_durations(torch.from_numpy(pitch)[None, None, :], durations.cpu()) # [1, 1, n_frames] - pitch_avg_pred_denorm = (pitch_avg_pred * self.pitch_std) + self.pitch_mean - figures["alignment"] = plot_alignment(alignment.transpose(1, 2), output_fig=False) - figures["spectrogram"] = plot_spectrogram(spec) - figures["pitch_from_wav"] = plot_pitch(pitch, spec) - figures["pitch_avg_from_wav"] = plot_avg_pitch(pitch_avg.squeeze(), input_text) - figures["pitch_avg_pred"] = plot_avg_pitch(pitch_avg_pred_denorm.squeeze(), input_text) - figures["energy_avg_pred"] = plot_avg_pitch(energy_avg_pred.squeeze(), input_text) - return figures - - def synthesize( - self, - text: str, - speaker_id: str = None, - d_vector: torch.tensor = None, - pitch_transform=None, - **kwargs, - ): # pylint: disable=unused-argument - # TODO: add cloning support with ref_waveform - is_cuda = next(self.parameters()).is_cuda - - # convert text to sequence of token IDs - text_inputs = np.asarray( - self.tokenizer.text_to_ids(text, language=None), - dtype=np.int32, - ) - - # set speaker inputs - _speaker_id = None - if speaker_id is not None and self.args.use_speaker_embedding: - if isinstance(speaker_id, str) and self.args.use_speaker_embedding: - # get the speaker id for the speaker embedding layer - _speaker_id = self.speaker_manager.name_to_id[speaker_id] - _speaker_id = id_to_torch(_speaker_id, cuda=is_cuda) - - if speaker_id is not None and self.args.use_d_vector_file: - # get the average d_vector for the speaker - d_vector = self.speaker_manager.get_mean_embedding(speaker_id, num_samples=None, randomize=False) - d_vector = embedding_to_torch(d_vector, cuda=is_cuda) - - text_inputs = numpy_to_torch(text_inputs, torch.long, cuda=is_cuda) - text_inputs = text_inputs.unsqueeze(0) - - # synthesize voice - outputs = self.inference( - text_inputs, - aux_input={"d_vectors": d_vector, "speaker_ids": _speaker_id}, - pitch_transform=pitch_transform, - # energy_transform=energy_transform - ) - - # collect outputs - wav = outputs["model_outputs"][0].data.cpu().numpy() - alignments = outputs["alignments"] - return_dict = { - "wav": wav, - "alignments": alignments, - "text_inputs": text_inputs, - "outputs": outputs, - } - return return_dict - - def synthesize_with_gl(self, text: str, speaker_id, d_vector): - is_cuda = next(self.parameters()).is_cuda - - # convert text to sequence of token IDs - text_inputs = np.asarray( - self.tokenizer.text_to_ids(text, language=None), - dtype=np.int32, - ) - # pass tensors to backend - if speaker_id is not None: - speaker_id = id_to_torch(speaker_id, cuda=is_cuda) - - if d_vector is not None: - d_vector = embedding_to_torch(d_vector, cuda=is_cuda) - - text_inputs = numpy_to_torch(text_inputs, torch.long, cuda=is_cuda) - text_inputs = text_inputs.unsqueeze(0) - - # synthesize voice - outputs = self.inference_spec_decoder( - x=text_inputs, - aux_input={"d_vectors": d_vector, "speaker_ids": speaker_id}, - ) - - # collect outputs - S = outputs["model_outputs"].cpu().numpy()[0].T - S = db_to_amp_numpy(x=S, gain=1, base=None) - wav = mel_to_wav_numpy(mel=S, mel_basis=self.mel_basis, **self.config.audio) - alignments = outputs["alignments"] - return_dict = { - "wav": wav[None, :], - "alignments": alignments, - "text_inputs": text_inputs, - "outputs": outputs, - } - return return_dict - - @torch.no_grad() - def test_run(self, assets) -> Tuple[Dict, Dict]: - """Generic test run for `tts` models used by `Trainer`. - - You can override this for a different behaviour. - - Returns: - Tuple[Dict, Dict]: Test figures and audios to be projected to Tensorboard. - """ - print(" | > Synthesizing test sentences.") - test_audios = {} - test_figures = {} - test_sentences = self.config.test_sentences - for idx, s_info in enumerate(test_sentences): - aux_inputs = self.get_aux_input_from_test_sentences(s_info) - outputs = self.synthesize( - aux_inputs["text"], - config=self.config, - speaker_id=aux_inputs["speaker_id"], - d_vector=aux_inputs["d_vector"], - ) - outputs_gl = self.synthesize_with_gl( - aux_inputs["text"], - speaker_id=aux_inputs["speaker_id"], - d_vector=aux_inputs["d_vector"], - ) - # speaker_name = self.speaker_manager.speaker_names[aux_inputs["speaker_id"]] - test_audios["{}-audio".format(idx)] = outputs["wav"].T - test_audios["{}-audio_encoder".format(idx)] = outputs_gl["wav"].T - test_figures["{}-alignment".format(idx)] = plot_alignment(outputs["alignments"], output_fig=False) - return {"figures": test_figures, "audios": test_audios} - - def test_log( - self, outputs: dict, logger: "Logger", assets: dict, steps: int # pylint: disable=unused-argument - ) -> None: - logger.test_audios(steps, outputs["audios"], self.config.audio.sample_rate) - logger.test_figures(steps, outputs["figures"]) - - def format_batch(self, batch: Dict) -> Dict: - """Compute speaker, langugage IDs and d_vector for the batch if necessary.""" - speaker_ids = None - d_vectors = None - - # get numerical speaker ids from speaker names - if self.speaker_manager is not None and self.speaker_manager.speaker_names and self.args.use_speaker_embedding: - speaker_ids = [self.speaker_manager.name_to_id[sn] for sn in batch["speaker_names"]] - - if speaker_ids is not None: - speaker_ids = torch.LongTensor(speaker_ids) - batch["speaker_ids"] = speaker_ids - - # get d_vectors from audio file names - if self.speaker_manager is not None and self.speaker_manager.embeddings and self.args.use_d_vector_file: - d_vector_mapping = self.speaker_manager.embeddings - d_vectors = [d_vector_mapping[w]["embedding"] for w in batch["audio_unique_names"]] - d_vectors = torch.FloatTensor(d_vectors) - - batch["d_vectors"] = d_vectors - batch["speaker_ids"] = speaker_ids - return batch - - def format_batch_on_device(self, batch): - """Compute spectrograms on the device.""" - - ac = self.ap - - # compute spectrograms - batch["mel_input"] = wav_to_mel( - batch["waveform"], - hop_length=ac.hop_length, - win_length=ac.win_length, - n_fft=ac.fft_size, - num_mels=ac.num_mels, - sample_rate=ac.sample_rate, - fmin=ac.mel_fmin, - fmax=ac.mel_fmax, - center=False, - ) - - # TODO: Align pitch properly - # assert ( - # batch["pitch"].shape[2] == batch["mel_input"].shape[2] - # ), f"{batch['pitch'].shape[2]}, {batch['mel_input'].shape[2]}" - batch["pitch"] = batch["pitch"][:, :, : batch["mel_input"].shape[2]] if batch["pitch"] is not None else None - batch["mel_lengths"] = (batch["mel_input"].shape[2] * batch["waveform_rel_lens"]).int() - - # zero the padding frames - batch["mel_input"] = batch["mel_input"] * sequence_mask(batch["mel_lengths"]).unsqueeze(1) - - # format attn priors as we now the max mel length - # TODO: fix 1 diff b/w mel_lengths and attn_priors - - if self.config.use_attn_priors: - attn_priors_np = batch["attn_priors"] - - batch["attn_priors"] = torch.zeros( - batch["mel_input"].shape[0], - batch["mel_lengths"].max(), - batch["text_lengths"].max(), - device=batch["mel_input"].device, - ) - - for i in range(batch["mel_input"].shape[0]): - batch["attn_priors"][i, : attn_priors_np[i].shape[0], : attn_priors_np[i].shape[1]] = torch.from_numpy( - attn_priors_np[i] - ) - - batch["energy"] = None - batch["energy"] = wav_to_energy( # [B, 1, T_max2] - batch["waveform"], - hop_length=ac.hop_length, - win_length=ac.win_length, - n_fft=ac.fft_size, - center=False, - ) - batch["energy"] = self.energy_scaler(batch["energy"]) - return batch - - def get_sampler(self, config: Coqpit, dataset: TTSDataset, num_gpus=1): - weights = None - data_items = dataset.samples - if getattr(config, "use_weighted_sampler", False): - for attr_name, alpha in config.weighted_sampler_attrs.items(): - print(f" > Using weighted sampler for attribute '{attr_name}' with alpha '{alpha}'") - multi_dict = config.weighted_sampler_multipliers.get(attr_name, None) - print(multi_dict) - weights, attr_names, attr_weights = get_attribute_balancer_weights( - attr_name=attr_name, items=data_items, multi_dict=multi_dict - ) - weights = weights * alpha - print(f" > Attribute weights for '{attr_names}' \n | > {attr_weights}") - - if weights is not None: - sampler = WeightedRandomSampler(weights, len(weights)) - else: - sampler = None - # sampler for DDP - if sampler is None: - sampler = DistributedSampler(dataset) if num_gpus > 1 else None - else: # If a sampler is already defined use this sampler and DDP sampler together - sampler = DistributedSamplerWrapper(sampler) if num_gpus > 1 else sampler - return sampler - - def get_data_loader( - self, - config: Coqpit, - assets: Dict, - is_eval: bool, - samples: Union[List[Dict], List[List]], - verbose: bool, - num_gpus: int, - rank: int = None, - ) -> "DataLoader": - if is_eval and not config.run_eval: - loader = None - else: - # init dataloader - dataset = ForwardTTSE2eDataset( - samples=samples, - ap=self.ap, - batch_group_size=0 if is_eval else config.batch_group_size * config.batch_size, - min_text_len=config.min_text_len, - max_text_len=config.max_text_len, - min_audio_len=config.min_audio_len, - max_audio_len=config.max_audio_len, - phoneme_cache_path=config.phoneme_cache_path, - precompute_num_workers=config.precompute_num_workers, - compute_f0=config.compute_f0, - f0_cache_path=config.f0_cache_path, - attn_prior_cache_path=config.attn_prior_cache_path if config.use_attn_priors else None, - verbose=verbose, - tokenizer=self.tokenizer, - start_by_longest=config.start_by_longest, - ) - - # wait all the DDP process to be ready - if num_gpus > 1: - dist.barrier() - - # sort input sequences ascendingly by length - dataset.preprocess_samples() - - # get samplers - sampler = self.get_sampler(config, dataset, num_gpus) - - loader = DataLoader( - dataset, - batch_size=config.eval_batch_size if is_eval else config.batch_size, - shuffle=False, # shuffle is done in the dataset. - drop_last=False, # setting this False might cause issues in AMP training. - sampler=sampler, - collate_fn=dataset.collate_fn, - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=True, - ) - - # get pitch mean and std - self.pitch_mean = dataset.f0_dataset.mean - self.pitch_std = dataset.f0_dataset.std - return loader - - def get_criterion(self): - return [VitsDiscriminatorLoss(self.config), DelightfulTTSLoss(self.config)] - - def get_optimizer(self) -> List: - """Initiate and return the GAN optimizers based on the config parameters. - It returnes 2 optimizers in a list. First one is for the generator and the second one is for the discriminator. - Returns: - List: optimizers. - """ - optimizer_disc = get_optimizer( - self.config.optimizer, self.config.optimizer_params, self.config.lr_disc, self.disc - ) - gen_parameters = chain(params for k, params in self.named_parameters() if not k.startswith("disc.")) - optimizer_gen = get_optimizer( - self.config.optimizer, self.config.optimizer_params, self.config.lr_gen, parameters=gen_parameters - ) - return [optimizer_disc, optimizer_gen] - - def get_lr(self) -> List: - """Set the initial learning rates for each optimizer. - - Returns: - List: learning rates for each optimizer. - """ - return [self.config.lr_disc, self.config.lr_gen] - - def get_scheduler(self, optimizer) -> List: - """Set the schedulers for each optimizer. - - Args: - optimizer (List[`torch.optim.Optimizer`]): List of optimizers. - - Returns: - List: Schedulers, one for each optimizer. - """ - scheduler_D = get_scheduler(self.config.lr_scheduler_gen, self.config.lr_scheduler_gen_params, optimizer[0]) - scheduler_G = get_scheduler(self.config.lr_scheduler_disc, self.config.lr_scheduler_disc_params, optimizer[1]) - return [scheduler_D, scheduler_G] - - def on_train_step_start(self, trainer): - """Schedule binary loss weight.""" - self.binary_loss_weight = min(trainer.epochs_done / self.config.binary_loss_warmup_epochs, 1.0) * 1.0 - - def on_epoch_end(self, trainer): # pylint: disable=unused-argument - # stop updating mean and var - # TODO: do the same for F0 - self.energy_scaler.eval() - - @staticmethod - def init_from_config( - config: "DelightfulTTSConfig", samples: Union[List[List], List[Dict]] = None, verbose=False - ): # pylint: disable=unused-argument - """Initiate model from config - - Args: - config (ForwardTTSE2eConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - """ - - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config.model_args, samples) - ap = AudioProcessor.init_from_config(config=config) - return DelightfulTTS(config=new_config, tokenizer=tokenizer, speaker_manager=speaker_manager, ap=ap) - - def load_checkpoint(self, config, checkpoint_path, eval=False): - """Load model from a checkpoint created by the 👟""" - # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu")) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - - def get_state_dict(self): - """Custom state dict of the model with all the necessary components for inference.""" - save_state = {"config": self.config.to_dict(), "args": self.args.to_dict(), "model": self.state_dict} - - if hasattr(self, "emb_g"): - save_state["speaker_ids"] = self.speaker_manager.speaker_names - - if self.args.use_d_vector_file: - # TODO: implement saving of d_vectors - ... - return save_state - - def save(self, config, checkpoint_path): - """Save model to a file.""" - save_state = self.get_state_dict(config, checkpoint_path) # pylint: disable=too-many-function-args - save_state["pitch_mean"] = self.pitch_mean - save_state["pitch_std"] = self.pitch_std - torch.save(save_state, checkpoint_path) - - def on_train_step_start(self, trainer) -> None: - """Enable the discriminator training based on `steps_to_start_discriminator` - - Args: - trainer (Trainer): Trainer object. - """ - self.train_disc = ( # pylint: disable=attribute-defined-outside-init - trainer.total_steps_done >= self.config.steps_to_start_discriminator - ) - - -class DelightfulTTSLoss(nn.Module): - def __init__(self, config): - super().__init__() - - self.mse_loss = nn.MSELoss() - self.mae_loss = nn.L1Loss() - self.forward_sum_loss = ForwardSumLoss() - self.multi_scale_stft_loss = MultiScaleSTFTLoss(**config.multi_scale_stft_loss_params) - - self.mel_loss_alpha = config.mel_loss_alpha - self.aligner_loss_alpha = config.aligner_loss_alpha - self.pitch_loss_alpha = config.pitch_loss_alpha - self.energy_loss_alpha = config.energy_loss_alpha - self.u_prosody_loss_alpha = config.u_prosody_loss_alpha - self.p_prosody_loss_alpha = config.p_prosody_loss_alpha - self.dur_loss_alpha = config.dur_loss_alpha - self.char_dur_loss_alpha = config.char_dur_loss_alpha - self.binary_alignment_loss_alpha = config.binary_align_loss_alpha - - self.vocoder_mel_loss_alpha = config.vocoder_mel_loss_alpha - self.feat_loss_alpha = config.feat_loss_alpha - self.gen_loss_alpha = config.gen_loss_alpha - self.multi_scale_stft_loss_alpha = config.multi_scale_stft_loss_alpha - - @staticmethod - def _binary_alignment_loss(alignment_hard, alignment_soft): - """Binary loss that forces soft alignments to match the hard alignments as - explained in `https://arxiv.org/pdf/2108.10447.pdf`. - """ - log_sum = torch.log(torch.clamp(alignment_soft[alignment_hard == 1], min=1e-12)).sum() - return -log_sum / alignment_hard.sum() - - @staticmethod - def feature_loss(feats_real, feats_generated): - loss = 0 - for dr, dg in zip(feats_real, feats_generated): - for rl, gl in zip(dr, dg): - rl = rl.float().detach() - gl = gl.float() - loss += torch.mean(torch.abs(rl - gl)) - return loss * 2 - - @staticmethod - def generator_loss(scores_fake): - loss = 0 - gen_losses = [] - for dg in scores_fake: - dg = dg.float() - l = torch.mean((1 - dg) ** 2) - gen_losses.append(l) - loss += l - - return loss, gen_losses - - def forward( - self, - mel_output, - mel_target, - mel_lens, - dur_output, - dur_target, - pitch_output, - pitch_target, - energy_output, - energy_target, - src_lens, - waveform, - waveform_hat, - p_prosody_ref, - p_prosody_pred, - u_prosody_ref, - u_prosody_pred, - aligner_logprob, - aligner_hard, - aligner_soft, - binary_loss_weight=None, - feats_fake=None, - feats_real=None, - scores_fake=None, - spec_slice=None, - spec_slice_hat=None, - skip_disc=False, - ): - """ - Shapes: - - mel_output: :math:`(B, C_mel, T_mel)` - - mel_target: :math:`(B, C_mel, T_mel)` - - mel_lens: :math:`(B)` - - dur_output: :math:`(B, T_src)` - - dur_target: :math:`(B, T_src)` - - pitch_output: :math:`(B, 1, T_src)` - - pitch_target: :math:`(B, 1, T_src)` - - energy_output: :math:`(B, 1, T_src)` - - energy_target: :math:`(B, 1, T_src)` - - src_lens: :math:`(B)` - - waveform: :math:`(B, 1, T_wav)` - - waveform_hat: :math:`(B, 1, T_wav)` - - p_prosody_ref: :math:`(B, T_src, 4)` - - p_prosody_pred: :math:`(B, T_src, 4)` - - u_prosody_ref: :math:`(B, 1, 256) - - u_prosody_pred: :math:`(B, 1, 256) - - aligner_logprob: :math:`(B, 1, T_mel, T_src)` - - aligner_hard: :math:`(B, T_mel, T_src)` - - aligner_soft: :math:`(B, T_mel, T_src)` - - spec_slice: :math:`(B, C_mel, T_mel)` - - spec_slice_hat: :math:`(B, C_mel, T_mel)` - """ - loss_dict = {} - src_mask = sequence_mask(src_lens).to(mel_output.device) # (B, T_src) - mel_mask = sequence_mask(mel_lens).to(mel_output.device) # (B, T_mel) - - dur_target.requires_grad = False - mel_target.requires_grad = False - pitch_target.requires_grad = False - - masked_mel_predictions = mel_output.masked_select(mel_mask[:, None]) - mel_targets = mel_target.masked_select(mel_mask[:, None]) - mel_loss = self.mae_loss(masked_mel_predictions, mel_targets) - - p_prosody_ref = p_prosody_ref.detach() - p_prosody_loss = 0.5 * self.mae_loss( - p_prosody_ref.masked_select(src_mask.unsqueeze(-1)), - p_prosody_pred.masked_select(src_mask.unsqueeze(-1)), - ) - - u_prosody_ref = u_prosody_ref.detach() - u_prosody_loss = 0.5 * self.mae_loss(u_prosody_ref, u_prosody_pred) - - duration_loss = self.mse_loss(dur_output, dur_target) - - pitch_output = pitch_output.masked_select(src_mask[:, None]) - pitch_target = pitch_target.masked_select(src_mask[:, None]) - pitch_loss = self.mse_loss(pitch_output, pitch_target) - - energy_output = energy_output.masked_select(src_mask[:, None]) - energy_target = energy_target.masked_select(src_mask[:, None]) - energy_loss = self.mse_loss(energy_output, energy_target) - - forward_sum_loss = self.forward_sum_loss(aligner_logprob, src_lens, mel_lens) - - total_loss = ( - (mel_loss * self.mel_loss_alpha) - + (duration_loss * self.dur_loss_alpha) - + (u_prosody_loss * self.u_prosody_loss_alpha) - + (p_prosody_loss * self.p_prosody_loss_alpha) - + (pitch_loss * self.pitch_loss_alpha) - + (energy_loss * self.energy_loss_alpha) - + (forward_sum_loss * self.aligner_loss_alpha) - ) - - if self.binary_alignment_loss_alpha > 0 and aligner_hard is not None: - binary_alignment_loss = self._binary_alignment_loss(aligner_hard, aligner_soft) - total_loss = total_loss + self.binary_alignment_loss_alpha * binary_alignment_loss * binary_loss_weight - if binary_loss_weight: - loss_dict["loss_binary_alignment"] = ( - self.binary_alignment_loss_alpha * binary_alignment_loss * binary_loss_weight - ) - else: - loss_dict["loss_binary_alignment"] = self.binary_alignment_loss_alpha * binary_alignment_loss - - loss_dict["loss_aligner"] = self.aligner_loss_alpha * forward_sum_loss - loss_dict["loss_mel"] = self.mel_loss_alpha * mel_loss - loss_dict["loss_duration"] = self.dur_loss_alpha * duration_loss - loss_dict["loss_u_prosody"] = self.u_prosody_loss_alpha * u_prosody_loss - loss_dict["loss_p_prosody"] = self.p_prosody_loss_alpha * p_prosody_loss - loss_dict["loss_pitch"] = self.pitch_loss_alpha * pitch_loss - loss_dict["loss_energy"] = self.energy_loss_alpha * energy_loss - loss_dict["loss"] = total_loss - - # vocoder losses - if not skip_disc: - loss_feat = self.feature_loss(feats_real=feats_real, feats_generated=feats_fake) * self.feat_loss_alpha - loss_gen = self.generator_loss(scores_fake=scores_fake)[0] * self.gen_loss_alpha - loss_dict["vocoder_loss_feat"] = loss_feat - loss_dict["vocoder_loss_gen"] = loss_gen - loss_dict["loss"] = loss_dict["loss"] + loss_feat + loss_gen - - loss_mel = torch.nn.functional.l1_loss(spec_slice, spec_slice_hat) * self.vocoder_mel_loss_alpha - loss_stft_mg, loss_stft_sc = self.multi_scale_stft_loss(y_hat=waveform_hat, y=waveform) - loss_stft_mg = loss_stft_mg * self.multi_scale_stft_loss_alpha - loss_stft_sc = loss_stft_sc * self.multi_scale_stft_loss_alpha - - loss_dict["vocoder_loss_mel"] = loss_mel - loss_dict["vocoder_loss_stft_mg"] = loss_stft_mg - loss_dict["vocoder_loss_stft_sc"] = loss_stft_sc - - loss_dict["loss"] = loss_dict["loss"] + loss_mel + loss_stft_sc + loss_stft_mg - return loss_dict diff --git a/TTS/TTS/tts/models/forward_tts.py b/TTS/TTS/tts/models/forward_tts.py deleted file mode 100644 index 6d1e90ca5fd1b1ae675e46da6fc1a674009ce432..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/models/forward_tts.py +++ /dev/null @@ -1,856 +0,0 @@ -from dataclasses import dataclass, field -from typing import Dict, List, Tuple, Union - -import torch -from coqpit import Coqpit -from torch import nn -from torch.cuda.amp.autocast_mode import autocast - -from TTS.tts.layers.feed_forward.decoder import Decoder -from TTS.tts.layers.feed_forward.encoder import Encoder -from TTS.tts.layers.generic.aligner import AlignmentNetwork -from TTS.tts.layers.generic.pos_encoding import PositionalEncoding -from TTS.tts.layers.glow_tts.duration_predictor import DurationPredictor -from TTS.tts.models.base_tts import BaseTTS -from TTS.tts.utils.helpers import average_over_durations, generate_path, maximum_path, sequence_mask -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_avg_energy, plot_avg_pitch, plot_spectrogram -from TTS.utils.io import load_fsspec - - -@dataclass -class ForwardTTSArgs(Coqpit): - """ForwardTTS Model arguments. - - Args: - - num_chars (int): - Number of characters in the vocabulary. Defaults to 100. - - out_channels (int): - Number of output channels. Defaults to 80. - - hidden_channels (int): - Number of base hidden channels of the model. Defaults to 512. - - use_aligner (bool): - Whether to use aligner network to learn the text to speech alignment or use pre-computed durations. - If set False, durations should be computed by `TTS/bin/compute_attention_masks.py` and path to the - pre-computed durations must be provided to `config.datasets[0].meta_file_attn_mask`. Defaults to True. - - use_pitch (bool): - Use pitch predictor to learn the pitch. Defaults to True. - - use_energy (bool): - Use energy predictor to learn the energy. Defaults to True. - - duration_predictor_hidden_channels (int): - Number of hidden channels in the duration predictor. Defaults to 256. - - duration_predictor_dropout_p (float): - Dropout rate for the duration predictor. Defaults to 0.1. - - duration_predictor_kernel_size (int): - Kernel size of conv layers in the duration predictor. Defaults to 3. - - pitch_predictor_hidden_channels (int): - Number of hidden channels in the pitch predictor. Defaults to 256. - - pitch_predictor_dropout_p (float): - Dropout rate for the pitch predictor. Defaults to 0.1. - - pitch_predictor_kernel_size (int): - Kernel size of conv layers in the pitch predictor. Defaults to 3. - - pitch_embedding_kernel_size (int): - Kernel size of the projection layer in the pitch predictor. Defaults to 3. - - energy_predictor_hidden_channels (int): - Number of hidden channels in the energy predictor. Defaults to 256. - - energy_predictor_dropout_p (float): - Dropout rate for the energy predictor. Defaults to 0.1. - - energy_predictor_kernel_size (int): - Kernel size of conv layers in the energy predictor. Defaults to 3. - - energy_embedding_kernel_size (int): - Kernel size of the projection layer in the energy predictor. Defaults to 3. - - positional_encoding (bool): - Whether to use positional encoding. Defaults to True. - - positional_encoding_use_scale (bool): - Whether to use a learnable scale coeff in the positional encoding. Defaults to True. - - length_scale (int): - Length scale that multiplies the predicted durations. Larger values result slower speech. Defaults to 1.0. - - encoder_type (str): - Type of the encoder module. One of the encoders available in :class:`TTS.tts.layers.feed_forward.encoder`. - Defaults to `fftransformer` as in the paper. - - encoder_params (dict): - Parameters of the encoder module. Defaults to ```{"hidden_channels_ffn": 1024, "num_heads": 1, "num_layers": 6, "dropout_p": 0.1}``` - - decoder_type (str): - Type of the decoder module. One of the decoders available in :class:`TTS.tts.layers.feed_forward.decoder`. - Defaults to `fftransformer` as in the paper. - - decoder_params (str): - Parameters of the decoder module. Defaults to ```{"hidden_channels_ffn": 1024, "num_heads": 1, "num_layers": 6, "dropout_p": 0.1}``` - - detach_duration_predictor (bool): - Detach the input to the duration predictor from the earlier computation graph so that the duraiton loss - does not pass to the earlier layers. Defaults to True. - - max_duration (int): - Maximum duration accepted by the model. Defaults to 75. - - num_speakers (int): - Number of speakers for the speaker embedding layer. Defaults to 0. - - speakers_file (str): - Path to the speaker mapping file for the Speaker Manager. Defaults to None. - - speaker_embedding_channels (int): - Number of speaker embedding channels. Defaults to 256. - - use_d_vector_file (bool): - Enable/Disable the use of d-vectors for multi-speaker training. Defaults to False. - - d_vector_dim (int): - Number of d-vector channels. Defaults to 0. - - """ - - num_chars: int = None - out_channels: int = 80 - hidden_channels: int = 384 - use_aligner: bool = True - # pitch params - use_pitch: bool = True - pitch_predictor_hidden_channels: int = 256 - pitch_predictor_kernel_size: int = 3 - pitch_predictor_dropout_p: float = 0.1 - pitch_embedding_kernel_size: int = 3 - - # energy params - use_energy: bool = False - energy_predictor_hidden_channels: int = 256 - energy_predictor_kernel_size: int = 3 - energy_predictor_dropout_p: float = 0.1 - energy_embedding_kernel_size: int = 3 - - # duration params - duration_predictor_hidden_channels: int = 256 - duration_predictor_kernel_size: int = 3 - duration_predictor_dropout_p: float = 0.1 - - positional_encoding: bool = True - poisitonal_encoding_use_scale: bool = True - length_scale: int = 1 - encoder_type: str = "fftransformer" - encoder_params: dict = field( - default_factory=lambda: {"hidden_channels_ffn": 1024, "num_heads": 1, "num_layers": 6, "dropout_p": 0.1} - ) - decoder_type: str = "fftransformer" - decoder_params: dict = field( - default_factory=lambda: {"hidden_channels_ffn": 1024, "num_heads": 1, "num_layers": 6, "dropout_p": 0.1} - ) - detach_duration_predictor: bool = False - max_duration: int = 75 - num_speakers: int = 1 - use_speaker_embedding: bool = False - speakers_file: str = None - use_d_vector_file: bool = False - d_vector_dim: int = None - d_vector_file: str = None - - -class ForwardTTS(BaseTTS): - """General forward TTS model implementation that uses an encoder-decoder architecture with an optional alignment - network and a pitch predictor. - - If the alignment network is used, the model learns the text-to-speech alignment - from the data instead of using pre-computed durations. - - If the pitch predictor is used, the model trains a pitch predictor that predicts average pitch value for each - input character as in the FastPitch model. - - `ForwardTTS` can be configured to one of these architectures, - - - FastPitch - - SpeedySpeech - - FastSpeech - - FastSpeech2 (requires average speech energy predictor) - - Args: - config (Coqpit): Model coqpit class. - speaker_manager (SpeakerManager): Speaker manager for multi-speaker training. Only used for multi-speaker models. - Defaults to None. - - Examples: - >>> from TTS.tts.models.fast_pitch import ForwardTTS, ForwardTTSArgs - >>> config = ForwardTTSArgs() - >>> model = ForwardTTS(config) - """ - - # pylint: disable=dangerous-default-value - def __init__( - self, - config: Coqpit, - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - self._set_model_args(config) - - self.init_multispeaker(config) - - self.max_duration = self.args.max_duration - self.use_aligner = self.args.use_aligner - self.use_pitch = self.args.use_pitch - self.use_energy = self.args.use_energy - self.binary_loss_weight = 0.0 - - self.length_scale = ( - float(self.args.length_scale) if isinstance(self.args.length_scale, int) else self.args.length_scale - ) - - self.emb = nn.Embedding(self.args.num_chars, self.args.hidden_channels) - - self.encoder = Encoder( - self.args.hidden_channels, - self.args.hidden_channels, - self.args.encoder_type, - self.args.encoder_params, - self.embedded_speaker_dim, - ) - - if self.args.positional_encoding: - self.pos_encoder = PositionalEncoding(self.args.hidden_channels) - - self.decoder = Decoder( - self.args.out_channels, - self.args.hidden_channels, - self.args.decoder_type, - self.args.decoder_params, - ) - - self.duration_predictor = DurationPredictor( - self.args.hidden_channels + self.embedded_speaker_dim, - self.args.duration_predictor_hidden_channels, - self.args.duration_predictor_kernel_size, - self.args.duration_predictor_dropout_p, - ) - - if self.args.use_pitch: - self.pitch_predictor = DurationPredictor( - self.args.hidden_channels + self.embedded_speaker_dim, - self.args.pitch_predictor_hidden_channels, - self.args.pitch_predictor_kernel_size, - self.args.pitch_predictor_dropout_p, - ) - self.pitch_emb = nn.Conv1d( - 1, - self.args.hidden_channels, - kernel_size=self.args.pitch_embedding_kernel_size, - padding=int((self.args.pitch_embedding_kernel_size - 1) / 2), - ) - - if self.args.use_energy: - self.energy_predictor = DurationPredictor( - self.args.hidden_channels + self.embedded_speaker_dim, - self.args.energy_predictor_hidden_channels, - self.args.energy_predictor_kernel_size, - self.args.energy_predictor_dropout_p, - ) - self.energy_emb = nn.Conv1d( - 1, - self.args.hidden_channels, - kernel_size=self.args.energy_embedding_kernel_size, - padding=int((self.args.energy_embedding_kernel_size - 1) / 2), - ) - - if self.args.use_aligner: - self.aligner = AlignmentNetwork( - in_query_channels=self.args.out_channels, in_key_channels=self.args.hidden_channels - ) - - def init_multispeaker(self, config: Coqpit): - """Init for multi-speaker training. - - Args: - config (Coqpit): Model configuration. - """ - self.embedded_speaker_dim = 0 - # init speaker manager - if self.speaker_manager is None and (config.use_d_vector_file or config.use_speaker_embedding): - raise ValueError( - " > SpeakerManager is not provided. You must provide the SpeakerManager before initializing a multi-speaker model." - ) - # set number of speakers - if self.speaker_manager is not None: - self.num_speakers = self.speaker_manager.num_speakers - # init d-vector embedding - if config.use_d_vector_file: - self.embedded_speaker_dim = config.d_vector_dim - if self.args.d_vector_dim != self.args.hidden_channels: - self.proj_g = nn.Conv1d(self.args.d_vector_dim, self.args.hidden_channels, 1) - # init speaker embedding layer - if config.use_speaker_embedding and not config.use_d_vector_file: - print(" > Init speaker_embedding layer.") - self.emb_g = nn.Embedding(self.num_speakers, self.args.hidden_channels) - nn.init.uniform_(self.emb_g.weight, -0.1, 0.1) - - @staticmethod - def generate_attn(dr, x_mask, y_mask=None): - """Generate an attention mask from the durations. - - Shapes - - dr: :math:`(B, T_{en})` - - x_mask: :math:`(B, T_{en})` - - y_mask: :math:`(B, T_{de})` - """ - # compute decode mask from the durations - if y_mask is None: - y_lengths = dr.sum(1).long() - y_lengths[y_lengths < 1] = 1 - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(dr.dtype) - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - attn = generate_path(dr, attn_mask.squeeze(1)).to(dr.dtype) - return attn - - def expand_encoder_outputs(self, en, dr, x_mask, y_mask): - """Generate attention alignment map from durations and - expand encoder outputs - - Shapes: - - en: :math:`(B, D_{en}, T_{en})` - - dr: :math:`(B, T_{en})` - - x_mask: :math:`(B, T_{en})` - - y_mask: :math:`(B, T_{de})` - - Examples:: - - encoder output: [a,b,c,d] - durations: [1, 3, 2, 1] - - expanded: [a, b, b, b, c, c, d] - attention map: [[0, 0, 0, 0, 0, 0, 1], - [0, 0, 0, 0, 1, 1, 0], - [0, 1, 1, 1, 0, 0, 0], - [1, 0, 0, 0, 0, 0, 0]] - """ - attn = self.generate_attn(dr, x_mask, y_mask) - o_en_ex = torch.matmul(attn.squeeze(1).transpose(1, 2).to(en.dtype), en.transpose(1, 2)).transpose(1, 2) - return o_en_ex, attn - - def format_durations(self, o_dr_log, x_mask): - """Format predicted durations. - 1. Convert to linear scale from log scale - 2. Apply the length scale for speed adjustment - 3. Apply masking. - 4. Cast 0 durations to 1. - 5. Round the duration values. - - Args: - o_dr_log: Log scale durations. - x_mask: Input text mask. - - Shapes: - - o_dr_log: :math:`(B, T_{de})` - - x_mask: :math:`(B, T_{en})` - """ - o_dr = (torch.exp(o_dr_log) - 1) * x_mask * self.length_scale - o_dr[o_dr < 1] = 1.0 - o_dr = torch.round(o_dr) - return o_dr - - def _forward_encoder( - self, x: torch.LongTensor, x_mask: torch.FloatTensor, g: torch.FloatTensor = None - ) -> Tuple[torch.FloatTensor, torch.FloatTensor, torch.FloatTensor, torch.FloatTensor, torch.FloatTensor]: - """Encoding forward pass. - - 1. Embed speaker IDs if multi-speaker mode. - 2. Embed character sequences. - 3. Run the encoder network. - 4. Sum encoder outputs and speaker embeddings - - Args: - x (torch.LongTensor): Input sequence IDs. - x_mask (torch.FloatTensor): Input squence mask. - g (torch.FloatTensor, optional): Conditioning vectors. In general speaker embeddings. Defaults to None. - - Returns: - Tuple[torch.tensor, torch.tensor, torch.tensor, torch.tensor, torch.tensor]: - encoder output, encoder output for the duration predictor, input sequence mask, speaker embeddings, - character embeddings - - Shapes: - - x: :math:`(B, T_{en})` - - x_mask: :math:`(B, 1, T_{en})` - - g: :math:`(B, C)` - """ - if hasattr(self, "emb_g"): - g = self.emb_g(g) # [B, C, 1] - if g is not None: - g = g.unsqueeze(-1) - # [B, T, C] - x_emb = self.emb(x) - # encoder pass - o_en = self.encoder(torch.transpose(x_emb, 1, -1), x_mask) - # speaker conditioning - # TODO: try different ways of conditioning - if g is not None: - o_en = o_en + g - return o_en, x_mask, g, x_emb - - def _forward_decoder( - self, - o_en: torch.FloatTensor, - dr: torch.IntTensor, - x_mask: torch.FloatTensor, - y_lengths: torch.IntTensor, - g: torch.FloatTensor, - ) -> Tuple[torch.FloatTensor, torch.FloatTensor]: - """Decoding forward pass. - - 1. Compute the decoder output mask - 2. Expand encoder output with the durations. - 3. Apply position encoding. - 4. Add speaker embeddings if multi-speaker mode. - 5. Run the decoder. - - Args: - o_en (torch.FloatTensor): Encoder output. - dr (torch.IntTensor): Ground truth durations or alignment network durations. - x_mask (torch.IntTensor): Input sequence mask. - y_lengths (torch.IntTensor): Output sequence lengths. - g (torch.FloatTensor): Conditioning vectors. In general speaker embeddings. - - Returns: - Tuple[torch.FloatTensor, torch.FloatTensor]: Decoder output, attention map from durations. - """ - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(o_en.dtype) - # expand o_en with durations - o_en_ex, attn = self.expand_encoder_outputs(o_en, dr, x_mask, y_mask) - # positional encoding - if hasattr(self, "pos_encoder"): - o_en_ex = self.pos_encoder(o_en_ex, y_mask) - # decoder pass - o_de = self.decoder(o_en_ex, y_mask, g=g) - return o_de.transpose(1, 2), attn.transpose(1, 2) - - def _forward_pitch_predictor( - self, - o_en: torch.FloatTensor, - x_mask: torch.IntTensor, - pitch: torch.FloatTensor = None, - dr: torch.IntTensor = None, - ) -> Tuple[torch.FloatTensor, torch.FloatTensor]: - """Pitch predictor forward pass. - - 1. Predict pitch from encoder outputs. - 2. In training - Compute average pitch values for each input character from the ground truth pitch values. - 3. Embed average pitch values. - - Args: - o_en (torch.FloatTensor): Encoder output. - x_mask (torch.IntTensor): Input sequence mask. - pitch (torch.FloatTensor, optional): Ground truth pitch values. Defaults to None. - dr (torch.IntTensor, optional): Ground truth durations. Defaults to None. - - Returns: - Tuple[torch.FloatTensor, torch.FloatTensor]: Pitch embedding, pitch prediction. - - Shapes: - - o_en: :math:`(B, C, T_{en})` - - x_mask: :math:`(B, 1, T_{en})` - - pitch: :math:`(B, 1, T_{de})` - - dr: :math:`(B, T_{en})` - """ - o_pitch = self.pitch_predictor(o_en, x_mask) - if pitch is not None: - avg_pitch = average_over_durations(pitch, dr) - o_pitch_emb = self.pitch_emb(avg_pitch) - return o_pitch_emb, o_pitch, avg_pitch - o_pitch_emb = self.pitch_emb(o_pitch) - return o_pitch_emb, o_pitch - - def _forward_energy_predictor( - self, - o_en: torch.FloatTensor, - x_mask: torch.IntTensor, - energy: torch.FloatTensor = None, - dr: torch.IntTensor = None, - ) -> Tuple[torch.FloatTensor, torch.FloatTensor]: - """Energy predictor forward pass. - - 1. Predict energy from encoder outputs. - 2. In training - Compute average pitch values for each input character from the ground truth pitch values. - 3. Embed average energy values. - - Args: - o_en (torch.FloatTensor): Encoder output. - x_mask (torch.IntTensor): Input sequence mask. - energy (torch.FloatTensor, optional): Ground truth energy values. Defaults to None. - dr (torch.IntTensor, optional): Ground truth durations. Defaults to None. - - Returns: - Tuple[torch.FloatTensor, torch.FloatTensor]: Energy embedding, energy prediction. - - Shapes: - - o_en: :math:`(B, C, T_{en})` - - x_mask: :math:`(B, 1, T_{en})` - - pitch: :math:`(B, 1, T_{de})` - - dr: :math:`(B, T_{en})` - """ - o_energy = self.energy_predictor(o_en, x_mask) - if energy is not None: - avg_energy = average_over_durations(energy, dr) - o_energy_emb = self.energy_emb(avg_energy) - return o_energy_emb, o_energy, avg_energy - o_energy_emb = self.energy_emb(o_energy) - return o_energy_emb, o_energy - - def _forward_aligner( - self, x: torch.FloatTensor, y: torch.FloatTensor, x_mask: torch.IntTensor, y_mask: torch.IntTensor - ) -> Tuple[torch.IntTensor, torch.FloatTensor, torch.FloatTensor, torch.FloatTensor]: - """Aligner forward pass. - - 1. Compute a mask to apply to the attention map. - 2. Run the alignment network. - 3. Apply MAS to compute the hard alignment map. - 4. Compute the durations from the hard alignment map. - - Args: - x (torch.FloatTensor): Input sequence. - y (torch.FloatTensor): Output sequence. - x_mask (torch.IntTensor): Input sequence mask. - y_mask (torch.IntTensor): Output sequence mask. - - Returns: - Tuple[torch.IntTensor, torch.FloatTensor, torch.FloatTensor, torch.FloatTensor]: - Durations from the hard alignment map, soft alignment potentials, log scale alignment potentials, - hard alignment map. - - Shapes: - - x: :math:`[B, T_en, C_en]` - - y: :math:`[B, T_de, C_de]` - - x_mask: :math:`[B, 1, T_en]` - - y_mask: :math:`[B, 1, T_de]` - - - o_alignment_dur: :math:`[B, T_en]` - - alignment_soft: :math:`[B, T_en, T_de]` - - alignment_logprob: :math:`[B, 1, T_de, T_en]` - - alignment_mas: :math:`[B, T_en, T_de]` - """ - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - alignment_soft, alignment_logprob = self.aligner(y.transpose(1, 2), x.transpose(1, 2), x_mask, None) - alignment_mas = maximum_path( - alignment_soft.squeeze(1).transpose(1, 2).contiguous(), attn_mask.squeeze(1).contiguous() - ) - o_alignment_dur = torch.sum(alignment_mas, -1).int() - alignment_soft = alignment_soft.squeeze(1).transpose(1, 2) - return o_alignment_dur, alignment_soft, alignment_logprob, alignment_mas - - def _set_speaker_input(self, aux_input: Dict): - d_vectors = aux_input.get("d_vectors", None) - speaker_ids = aux_input.get("speaker_ids", None) - - if d_vectors is not None and speaker_ids is not None: - raise ValueError("[!] Cannot use d-vectors and speaker-ids together.") - - if speaker_ids is not None and not hasattr(self, "emb_g"): - raise ValueError("[!] Cannot use speaker-ids without enabling speaker embedding.") - - g = speaker_ids if speaker_ids is not None else d_vectors - return g - - def forward( - self, - x: torch.LongTensor, - x_lengths: torch.LongTensor, - y_lengths: torch.LongTensor, - y: torch.FloatTensor = None, - dr: torch.IntTensor = None, - pitch: torch.FloatTensor = None, - energy: torch.FloatTensor = None, - aux_input: Dict = {"d_vectors": None, "speaker_ids": None}, # pylint: disable=unused-argument - ) -> Dict: - """Model's forward pass. - - Args: - x (torch.LongTensor): Input character sequences. - x_lengths (torch.LongTensor): Input sequence lengths. - y_lengths (torch.LongTensor): Output sequnce lengths. Defaults to None. - y (torch.FloatTensor): Spectrogram frames. Only used when the alignment network is on. Defaults to None. - dr (torch.IntTensor): Character durations over the spectrogram frames. Only used when the alignment network is off. Defaults to None. - pitch (torch.FloatTensor): Pitch values for each spectrogram frame. Only used when the pitch predictor is on. Defaults to None. - energy (torch.FloatTensor): energy values for each spectrogram frame. Only used when the energy predictor is on. Defaults to None. - aux_input (Dict): Auxiliary model inputs for multi-speaker training. Defaults to `{"d_vectors": 0, "speaker_ids": None}`. - - Shapes: - - x: :math:`[B, T_max]` - - x_lengths: :math:`[B]` - - y_lengths: :math:`[B]` - - y: :math:`[B, T_max2]` - - dr: :math:`[B, T_max]` - - g: :math:`[B, C]` - - pitch: :math:`[B, 1, T]` - """ - g = self._set_speaker_input(aux_input) - # compute sequence masks - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).float() - x_mask = torch.unsqueeze(sequence_mask(x_lengths, x.shape[1]), 1).float() - # encoder pass - o_en, x_mask, g, x_emb = self._forward_encoder(x, x_mask, g) - # duration predictor pass - if self.args.detach_duration_predictor: - o_dr_log = self.duration_predictor(o_en.detach(), x_mask) - else: - o_dr_log = self.duration_predictor(o_en, x_mask) - o_dr = torch.clamp(torch.exp(o_dr_log) - 1, 0, self.max_duration) - # generate attn mask from predicted durations - o_attn = self.generate_attn(o_dr.squeeze(1), x_mask) - # aligner - o_alignment_dur = None - alignment_soft = None - alignment_logprob = None - alignment_mas = None - if self.use_aligner: - o_alignment_dur, alignment_soft, alignment_logprob, alignment_mas = self._forward_aligner( - x_emb, y, x_mask, y_mask - ) - alignment_soft = alignment_soft.transpose(1, 2) - alignment_mas = alignment_mas.transpose(1, 2) - dr = o_alignment_dur - # pitch predictor pass - o_pitch = None - avg_pitch = None - if self.args.use_pitch: - o_pitch_emb, o_pitch, avg_pitch = self._forward_pitch_predictor(o_en, x_mask, pitch, dr) - o_en = o_en + o_pitch_emb - # energy predictor pass - o_energy = None - avg_energy = None - if self.args.use_energy: - o_energy_emb, o_energy, avg_energy = self._forward_energy_predictor(o_en, x_mask, energy, dr) - o_en = o_en + o_energy_emb - # decoder pass - o_de, attn = self._forward_decoder( - o_en, dr, x_mask, y_lengths, g=None - ) # TODO: maybe pass speaker embedding (g) too - outputs = { - "model_outputs": o_de, # [B, T, C] - "durations_log": o_dr_log.squeeze(1), # [B, T] - "durations": o_dr.squeeze(1), # [B, T] - "attn_durations": o_attn, # for visualization [B, T_en, T_de'] - "pitch_avg": o_pitch, - "pitch_avg_gt": avg_pitch, - "energy_avg": o_energy, - "energy_avg_gt": avg_energy, - "alignments": attn, # [B, T_de, T_en] - "alignment_soft": alignment_soft, - "alignment_mas": alignment_mas, - "o_alignment_dur": o_alignment_dur, - "alignment_logprob": alignment_logprob, - "x_mask": x_mask, - "y_mask": y_mask, - } - return outputs - - @torch.no_grad() - def inference(self, x, aux_input={"d_vectors": None, "speaker_ids": None}): # pylint: disable=unused-argument - """Model's inference pass. - - Args: - x (torch.LongTensor): Input character sequence. - aux_input (Dict): Auxiliary model inputs. Defaults to `{"d_vectors": None, "speaker_ids": None}`. - - Shapes: - - x: [B, T_max] - - x_lengths: [B] - - g: [B, C] - """ - g = self._set_speaker_input(aux_input) - x_lengths = torch.tensor(x.shape[1:2]).to(x.device) - x_mask = torch.unsqueeze(sequence_mask(x_lengths, x.shape[1]), 1).to(x.dtype).float() - # encoder pass - o_en, x_mask, g, _ = self._forward_encoder(x, x_mask, g) - # duration predictor pass - o_dr_log = self.duration_predictor(o_en, x_mask) - o_dr = self.format_durations(o_dr_log, x_mask).squeeze(1) - y_lengths = o_dr.sum(1) - # pitch predictor pass - o_pitch = None - if self.args.use_pitch: - o_pitch_emb, o_pitch = self._forward_pitch_predictor(o_en, x_mask) - o_en = o_en + o_pitch_emb - # energy predictor pass - o_energy = None - if self.args.use_energy: - o_energy_emb, o_energy = self._forward_energy_predictor(o_en, x_mask) - o_en = o_en + o_energy_emb - # decoder pass - o_de, attn = self._forward_decoder(o_en, o_dr, x_mask, y_lengths, g=None) - outputs = { - "model_outputs": o_de, - "alignments": attn, - "pitch": o_pitch, - "energy": o_energy, - "durations_log": o_dr_log, - } - return outputs - - def train_step(self, batch: dict, criterion: nn.Module): - text_input = batch["text_input"] - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - mel_lengths = batch["mel_lengths"] - pitch = batch["pitch"] if self.args.use_pitch else None - energy = batch["energy"] if self.args.use_energy else None - d_vectors = batch["d_vectors"] - speaker_ids = batch["speaker_ids"] - durations = batch["durations"] - aux_input = {"d_vectors": d_vectors, "speaker_ids": speaker_ids} - - # forward pass - outputs = self.forward( - text_input, - text_lengths, - mel_lengths, - y=mel_input, - dr=durations, - pitch=pitch, - energy=energy, - aux_input=aux_input, - ) - # use aligner's output as the duration target - if self.use_aligner: - durations = outputs["o_alignment_dur"] - # use float32 in AMP - with autocast(enabled=False): - # compute loss - loss_dict = criterion( - decoder_output=outputs["model_outputs"], - decoder_target=mel_input, - decoder_output_lens=mel_lengths, - dur_output=outputs["durations_log"], - dur_target=durations, - pitch_output=outputs["pitch_avg"] if self.use_pitch else None, - pitch_target=outputs["pitch_avg_gt"] if self.use_pitch else None, - energy_output=outputs["energy_avg"] if self.use_energy else None, - energy_target=outputs["energy_avg_gt"] if self.use_energy else None, - input_lens=text_lengths, - alignment_logprob=outputs["alignment_logprob"] if self.use_aligner else None, - alignment_soft=outputs["alignment_soft"], - alignment_hard=outputs["alignment_mas"], - binary_loss_weight=self.binary_loss_weight, - ) - # compute duration error - durations_pred = outputs["durations"] - duration_error = torch.abs(durations - durations_pred).sum() / text_lengths.sum() - loss_dict["duration_error"] = duration_error - - return outputs, loss_dict - - def _create_logs(self, batch, outputs, ap): - """Create common logger outputs.""" - model_outputs = outputs["model_outputs"] - alignments = outputs["alignments"] - mel_input = batch["mel_input"] - - pred_spec = model_outputs[0].data.cpu().numpy() - gt_spec = mel_input[0].data.cpu().numpy() - align_img = alignments[0].data.cpu().numpy() - - figures = { - "prediction": plot_spectrogram(pred_spec, ap, output_fig=False), - "ground_truth": plot_spectrogram(gt_spec, ap, output_fig=False), - "alignment": plot_alignment(align_img, output_fig=False), - } - - # plot pitch figures - if self.args.use_pitch: - pitch_avg = abs(outputs["pitch_avg_gt"][0, 0].data.cpu().numpy()) - pitch_avg_hat = abs(outputs["pitch_avg"][0, 0].data.cpu().numpy()) - chars = self.tokenizer.decode(batch["text_input"][0].data.cpu().numpy()) - pitch_figures = { - "pitch_ground_truth": plot_avg_pitch(pitch_avg, chars, output_fig=False), - "pitch_avg_predicted": plot_avg_pitch(pitch_avg_hat, chars, output_fig=False), - } - figures.update(pitch_figures) - - # plot energy figures - if self.args.use_energy: - energy_avg = abs(outputs["energy_avg_gt"][0, 0].data.cpu().numpy()) - energy_avg_hat = abs(outputs["energy_avg"][0, 0].data.cpu().numpy()) - chars = self.tokenizer.decode(batch["text_input"][0].data.cpu().numpy()) - energy_figures = { - "energy_ground_truth": plot_avg_energy(energy_avg, chars, output_fig=False), - "energy_avg_predicted": plot_avg_energy(energy_avg_hat, chars, output_fig=False), - } - figures.update(energy_figures) - - # plot the attention mask computed from the predicted durations - if "attn_durations" in outputs: - alignments_hat = outputs["attn_durations"][0].data.cpu().numpy() - figures["alignment_hat"] = plot_alignment(alignments_hat.T, output_fig=False) - - # Sample audio - train_audio = ap.inv_melspectrogram(pred_spec.T) - return figures, {"audio": train_audio} - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ) -> None: # pylint: disable=no-self-use - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - def eval_step(self, batch: dict, criterion: nn.Module): - return self.train_step(batch, criterion) - - def eval_log(self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int) -> None: - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - - def get_criterion(self): - from TTS.tts.layers.losses import ForwardTTSLoss # pylint: disable=import-outside-toplevel - - return ForwardTTSLoss(self.config) - - def on_train_step_start(self, trainer): - """Schedule binary loss weight.""" - self.binary_loss_weight = min(trainer.epochs_done / self.config.binary_loss_warmup_epochs, 1.0) * 1.0 - - @staticmethod - def init_from_config(config: "ForwardTTSConfig", samples: Union[List[List], List[Dict]] = None): - """Initiate model from config - - Args: - config (ForwardTTSConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - """ - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config, samples) - return ForwardTTS(new_config, ap, tokenizer, speaker_manager) diff --git a/TTS/TTS/tts/models/glow_tts.py b/TTS/TTS/tts/models/glow_tts.py deleted file mode 100644 index bfd1a2b618bd9bfdc7d12dd4eb16a6febcaf8cde..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/models/glow_tts.py +++ /dev/null @@ -1,557 +0,0 @@ -import math -from typing import Dict, List, Tuple, Union - -import torch -from coqpit import Coqpit -from torch import nn -from torch.cuda.amp.autocast_mode import autocast -from torch.nn import functional as F - -from TTS.tts.configs.glow_tts_config import GlowTTSConfig -from TTS.tts.layers.glow_tts.decoder import Decoder -from TTS.tts.layers.glow_tts.encoder import Encoder -from TTS.tts.models.base_tts import BaseTTS -from TTS.tts.utils.helpers import generate_path, maximum_path, sequence_mask -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.synthesis import synthesis -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram -from TTS.utils.io import load_fsspec - - -class GlowTTS(BaseTTS): - """GlowTTS model. - - Paper:: - https://arxiv.org/abs/2005.11129 - - Paper abstract:: - Recently, text-to-speech (TTS) models such as FastSpeech and ParaNet have been proposed to generate - mel-spectrograms from text in parallel. Despite the advantage, the parallel TTS models cannot be trained - without guidance from autoregressive TTS models as their external aligners. In this work, we propose Glow-TTS, - a flow-based generative model for parallel TTS that does not require any external aligner. By combining the - properties of flows and dynamic programming, the proposed model searches for the most probable monotonic - alignment between text and the latent representation of speech on its own. We demonstrate that enforcing hard - monotonic alignments enables robust TTS, which generalizes to long utterances, and employing generative flows - enables fast, diverse, and controllable speech synthesis. Glow-TTS obtains an order-of-magnitude speed-up over - the autoregressive model, Tacotron 2, at synthesis with comparable speech quality. We further show that our - model can be easily extended to a multi-speaker setting. - - Check :class:`TTS.tts.configs.glow_tts_config.GlowTTSConfig` for class arguments. - - Examples: - Init only model layers. - - >>> from TTS.tts.configs.glow_tts_config import GlowTTSConfig - >>> from TTS.tts.models.glow_tts import GlowTTS - >>> config = GlowTTSConfig(num_chars=2) - >>> model = GlowTTS(config) - - Fully init a model ready for action. All the class attributes and class members - (e.g Tokenizer, AudioProcessor, etc.). are initialized internally based on config values. - - >>> from TTS.tts.configs.glow_tts_config import GlowTTSConfig - >>> from TTS.tts.models.glow_tts import GlowTTS - >>> config = GlowTTSConfig() - >>> model = GlowTTS.init_from_config(config, verbose=False) - """ - - def __init__( - self, - config: GlowTTSConfig, - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - - # pass all config fields to `self` - # for fewer code change - self.config = config - for key in config: - setattr(self, key, config[key]) - - self.decoder_output_dim = config.out_channels - - # init multi-speaker layers if necessary - self.init_multispeaker(config) - - self.run_data_dep_init = config.data_dep_init_steps > 0 - self.encoder = Encoder( - self.num_chars, - out_channels=self.out_channels, - hidden_channels=self.hidden_channels_enc, - hidden_channels_dp=self.hidden_channels_dp, - encoder_type=self.encoder_type, - encoder_params=self.encoder_params, - mean_only=self.mean_only, - use_prenet=self.use_encoder_prenet, - dropout_p_dp=self.dropout_p_dp, - c_in_channels=self.c_in_channels, - ) - - self.decoder = Decoder( - self.out_channels, - self.hidden_channels_dec, - self.kernel_size_dec, - self.dilation_rate, - self.num_flow_blocks_dec, - self.num_block_layers, - dropout_p=self.dropout_p_dec, - num_splits=self.num_splits, - num_squeeze=self.num_squeeze, - sigmoid_scale=self.sigmoid_scale, - c_in_channels=self.c_in_channels, - ) - - def init_multispeaker(self, config: Coqpit): - """Init speaker embedding layer if `use_speaker_embedding` is True and set the expected speaker embedding - vector dimension to the encoder layer channel size. If model uses d-vectors, then it only sets - speaker embedding vector dimension to the d-vector dimension from the config. - - Args: - config (Coqpit): Model configuration. - """ - self.embedded_speaker_dim = 0 - # set number of speakers - if num_speakers is set in config, use it, otherwise use speaker_manager - if self.speaker_manager is not None: - self.num_speakers = self.speaker_manager.num_speakers - # set ultimate speaker embedding size - if config.use_d_vector_file: - self.embedded_speaker_dim = ( - config.d_vector_dim if "d_vector_dim" in config and config.d_vector_dim is not None else 512 - ) - if self.speaker_manager is not None: - assert ( - config.d_vector_dim == self.speaker_manager.embedding_dim - ), " [!] d-vector dimension mismatch b/w config and speaker manager." - # init speaker embedding layer - if config.use_speaker_embedding and not config.use_d_vector_file: - print(" > Init speaker_embedding layer.") - self.embedded_speaker_dim = self.hidden_channels_enc - self.emb_g = nn.Embedding(self.num_speakers, self.hidden_channels_enc) - nn.init.uniform_(self.emb_g.weight, -0.1, 0.1) - # set conditioning dimensions - self.c_in_channels = self.embedded_speaker_dim - - @staticmethod - def compute_outputs(attn, o_mean, o_log_scale, x_mask): - """Compute and format the mode outputs with the given alignment map""" - y_mean = torch.matmul(attn.squeeze(1).transpose(1, 2), o_mean.transpose(1, 2)).transpose( - 1, 2 - ) # [b, t', t], [b, t, d] -> [b, d, t'] - y_log_scale = torch.matmul(attn.squeeze(1).transpose(1, 2), o_log_scale.transpose(1, 2)).transpose( - 1, 2 - ) # [b, t', t], [b, t, d] -> [b, d, t'] - # compute total duration with adjustment - o_attn_dur = torch.log(1 + torch.sum(attn, -1)) * x_mask - return y_mean, y_log_scale, o_attn_dur - - def unlock_act_norm_layers(self): - """Unlock activation normalization layers for data depended initalization.""" - for f in self.decoder.flows: - if getattr(f, "set_ddi", False): - f.set_ddi(True) - - def lock_act_norm_layers(self): - """Lock activation normalization layers.""" - for f in self.decoder.flows: - if getattr(f, "set_ddi", False): - f.set_ddi(False) - - def _set_speaker_input(self, aux_input: Dict): - if aux_input is None: - d_vectors = None - speaker_ids = None - else: - d_vectors = aux_input.get("d_vectors", None) - speaker_ids = aux_input.get("speaker_ids", None) - - if d_vectors is not None and speaker_ids is not None: - raise ValueError("[!] Cannot use d-vectors and speaker-ids together.") - - if speaker_ids is not None and not hasattr(self, "emb_g"): - raise ValueError("[!] Cannot use speaker-ids without enabling speaker embedding.") - - g = speaker_ids if speaker_ids is not None else d_vectors - return g - - def _speaker_embedding(self, aux_input: Dict) -> Union[torch.tensor, None]: - g = self._set_speaker_input(aux_input) - # speaker embedding - if g is not None: - if hasattr(self, "emb_g"): - # use speaker embedding layer - if not g.size(): # if is a scalar - g = g.unsqueeze(0) # unsqueeze - g = F.normalize(self.emb_g(g)).unsqueeze(-1) # [b, h, 1] - else: - # use d-vector - g = F.normalize(g).unsqueeze(-1) # [b, h, 1] - return g - - def forward( - self, x, x_lengths, y, y_lengths=None, aux_input={"d_vectors": None, "speaker_ids": None} - ): # pylint: disable=dangerous-default-value - """ - Args: - x (torch.Tensor): - Input text sequence ids. :math:`[B, T_en]` - - x_lengths (torch.Tensor): - Lengths of input text sequences. :math:`[B]` - - y (torch.Tensor): - Target mel-spectrogram frames. :math:`[B, T_de, C_mel]` - - y_lengths (torch.Tensor): - Lengths of target mel-spectrogram frames. :math:`[B]` - - aux_input (Dict): - Auxiliary inputs. `d_vectors` is speaker embedding vectors for a multi-speaker model. - :math:`[B, D_vec]`. `speaker_ids` is speaker ids for a multi-speaker model usind speaker-embedding - layer. :math:`B` - - Returns: - Dict: - - z: :math: `[B, T_de, C]` - - logdet: :math:`B` - - y_mean: :math:`[B, T_de, C]` - - y_log_scale: :math:`[B, T_de, C]` - - alignments: :math:`[B, T_en, T_de]` - - durations_log: :math:`[B, T_en, 1]` - - total_durations_log: :math:`[B, T_en, 1]` - """ - # [B, T, C] -> [B, C, T] - y = y.transpose(1, 2) - y_max_length = y.size(2) - # norm speaker embeddings - g = self._speaker_embedding(aux_input) - # embedding pass - o_mean, o_log_scale, o_dur_log, x_mask = self.encoder(x, x_lengths, g=g) - # drop redisual frames wrt num_squeeze and set y_lengths. - y, y_lengths, y_max_length, attn = self.preprocess(y, y_lengths, y_max_length, None) - # create masks - y_mask = torch.unsqueeze(sequence_mask(y_lengths, y_max_length), 1).to(x_mask.dtype) - # [B, 1, T_en, T_de] - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - # decoder pass - z, logdet = self.decoder(y, y_mask, g=g, reverse=False) - # find the alignment path - with torch.no_grad(): - o_scale = torch.exp(-2 * o_log_scale) - logp1 = torch.sum(-0.5 * math.log(2 * math.pi) - o_log_scale, [1]).unsqueeze(-1) # [b, t, 1] - logp2 = torch.matmul(o_scale.transpose(1, 2), -0.5 * (z**2)) # [b, t, d] x [b, d, t'] = [b, t, t'] - logp3 = torch.matmul((o_mean * o_scale).transpose(1, 2), z) # [b, t, d] x [b, d, t'] = [b, t, t'] - logp4 = torch.sum(-0.5 * (o_mean**2) * o_scale, [1]).unsqueeze(-1) # [b, t, 1] - logp = logp1 + logp2 + logp3 + logp4 # [b, t, t'] - attn = maximum_path(logp, attn_mask.squeeze(1)).unsqueeze(1).detach() - y_mean, y_log_scale, o_attn_dur = self.compute_outputs(attn, o_mean, o_log_scale, x_mask) - attn = attn.squeeze(1).permute(0, 2, 1) - outputs = { - "z": z.transpose(1, 2), - "logdet": logdet, - "y_mean": y_mean.transpose(1, 2), - "y_log_scale": y_log_scale.transpose(1, 2), - "alignments": attn, - "durations_log": o_dur_log.transpose(1, 2), - "total_durations_log": o_attn_dur.transpose(1, 2), - } - return outputs - - @torch.no_grad() - def inference_with_MAS( - self, x, x_lengths, y=None, y_lengths=None, aux_input={"d_vectors": None, "speaker_ids": None} - ): # pylint: disable=dangerous-default-value - """ - It's similar to the teacher forcing in Tacotron. - It was proposed in: https://arxiv.org/abs/2104.05557 - - Shapes: - - x: :math:`[B, T]` - - x_lenghts: :math:`B` - - y: :math:`[B, T, C]` - - y_lengths: :math:`B` - - g: :math:`[B, C] or B` - """ - y = y.transpose(1, 2) - y_max_length = y.size(2) - # norm speaker embeddings - g = self._speaker_embedding(aux_input) - # embedding pass - o_mean, o_log_scale, o_dur_log, x_mask = self.encoder(x, x_lengths, g=g) - # drop redisual frames wrt num_squeeze and set y_lengths. - y, y_lengths, y_max_length, attn = self.preprocess(y, y_lengths, y_max_length, None) - # create masks - y_mask = torch.unsqueeze(sequence_mask(y_lengths, y_max_length), 1).to(x_mask.dtype) - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - # decoder pass - z, logdet = self.decoder(y, y_mask, g=g, reverse=False) - # find the alignment path between z and encoder output - o_scale = torch.exp(-2 * o_log_scale) - logp1 = torch.sum(-0.5 * math.log(2 * math.pi) - o_log_scale, [1]).unsqueeze(-1) # [b, t, 1] - logp2 = torch.matmul(o_scale.transpose(1, 2), -0.5 * (z**2)) # [b, t, d] x [b, d, t'] = [b, t, t'] - logp3 = torch.matmul((o_mean * o_scale).transpose(1, 2), z) # [b, t, d] x [b, d, t'] = [b, t, t'] - logp4 = torch.sum(-0.5 * (o_mean**2) * o_scale, [1]).unsqueeze(-1) # [b, t, 1] - logp = logp1 + logp2 + logp3 + logp4 # [b, t, t'] - attn = maximum_path(logp, attn_mask.squeeze(1)).unsqueeze(1).detach() - - y_mean, y_log_scale, o_attn_dur = self.compute_outputs(attn, o_mean, o_log_scale, x_mask) - attn = attn.squeeze(1).permute(0, 2, 1) - - # get predited aligned distribution - z = y_mean * y_mask - - # reverse the decoder and predict using the aligned distribution - y, logdet = self.decoder(z, y_mask, g=g, reverse=True) - outputs = { - "model_outputs": z.transpose(1, 2), - "logdet": logdet, - "y_mean": y_mean.transpose(1, 2), - "y_log_scale": y_log_scale.transpose(1, 2), - "alignments": attn, - "durations_log": o_dur_log.transpose(1, 2), - "total_durations_log": o_attn_dur.transpose(1, 2), - } - return outputs - - @torch.no_grad() - def decoder_inference( - self, y, y_lengths=None, aux_input={"d_vectors": None, "speaker_ids": None} - ): # pylint: disable=dangerous-default-value - """ - Shapes: - - y: :math:`[B, T, C]` - - y_lengths: :math:`B` - - g: :math:`[B, C] or B` - """ - y = y.transpose(1, 2) - y_max_length = y.size(2) - g = self._speaker_embedding(aux_input) - y_mask = torch.unsqueeze(sequence_mask(y_lengths, y_max_length), 1).to(y.dtype) - # decoder pass - z, logdet = self.decoder(y, y_mask, g=g, reverse=False) - # reverse decoder and predict - y, logdet = self.decoder(z, y_mask, g=g, reverse=True) - outputs = {} - outputs["model_outputs"] = y.transpose(1, 2) - outputs["logdet"] = logdet - return outputs - - @torch.no_grad() - def inference( - self, x, aux_input={"x_lengths": None, "d_vectors": None, "speaker_ids": None} - ): # pylint: disable=dangerous-default-value - x_lengths = aux_input["x_lengths"] - g = self._speaker_embedding(aux_input) - # embedding pass - o_mean, o_log_scale, o_dur_log, x_mask = self.encoder(x, x_lengths, g=g) - # compute output durations - w = (torch.exp(o_dur_log) - 1) * x_mask * self.length_scale - w_ceil = torch.clamp_min(torch.ceil(w), 1) - y_lengths = torch.clamp_min(torch.sum(w_ceil, [1, 2]), 1).long() - y_max_length = None - # compute masks - y_mask = torch.unsqueeze(sequence_mask(y_lengths, y_max_length), 1).to(x_mask.dtype) - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - # compute attention mask - attn = generate_path(w_ceil.squeeze(1), attn_mask.squeeze(1)).unsqueeze(1) - y_mean, y_log_scale, o_attn_dur = self.compute_outputs(attn, o_mean, o_log_scale, x_mask) - - z = (y_mean + torch.exp(y_log_scale) * torch.randn_like(y_mean) * self.inference_noise_scale) * y_mask - # decoder pass - y, logdet = self.decoder(z, y_mask, g=g, reverse=True) - attn = attn.squeeze(1).permute(0, 2, 1) - outputs = { - "model_outputs": y.transpose(1, 2), - "logdet": logdet, - "y_mean": y_mean.transpose(1, 2), - "y_log_scale": y_log_scale.transpose(1, 2), - "alignments": attn, - "durations_log": o_dur_log.transpose(1, 2), - "total_durations_log": o_attn_dur.transpose(1, 2), - } - return outputs - - def train_step(self, batch: dict, criterion: nn.Module): - """A single training step. Forward pass and loss computation. Run data depended initialization for the - first `config.data_dep_init_steps` steps. - - Args: - batch (dict): [description] - criterion (nn.Module): [description] - """ - text_input = batch["text_input"] - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - mel_lengths = batch["mel_lengths"] - d_vectors = batch["d_vectors"] - speaker_ids = batch["speaker_ids"] - - if self.run_data_dep_init and self.training: - # compute data-dependent initialization of activation norm layers - self.unlock_act_norm_layers() - with torch.no_grad(): - _ = self.forward( - text_input, - text_lengths, - mel_input, - mel_lengths, - aux_input={"d_vectors": d_vectors, "speaker_ids": speaker_ids}, - ) - outputs = None - loss_dict = None - self.lock_act_norm_layers() - else: - # normal training step - outputs = self.forward( - text_input, - text_lengths, - mel_input, - mel_lengths, - aux_input={"d_vectors": d_vectors, "speaker_ids": speaker_ids}, - ) - - with autocast(enabled=False): # avoid mixed_precision in criterion - loss_dict = criterion( - outputs["z"].float(), - outputs["y_mean"].float(), - outputs["y_log_scale"].float(), - outputs["logdet"].float(), - mel_lengths, - outputs["durations_log"].float(), - outputs["total_durations_log"].float(), - text_lengths, - ) - return outputs, loss_dict - - def _create_logs(self, batch, outputs, ap): - alignments = outputs["alignments"] - text_input = batch["text_input"][:1] if batch["text_input"] is not None else None - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - d_vectors = batch["d_vectors"][:1] if batch["d_vectors"] is not None else None - speaker_ids = batch["speaker_ids"][:1] if batch["speaker_ids"] is not None else None - - # model runs reverse flow to predict spectrograms - pred_outputs = self.inference( - text_input, - aux_input={"x_lengths": text_lengths[:1], "d_vectors": d_vectors, "speaker_ids": speaker_ids}, - ) - model_outputs = pred_outputs["model_outputs"] - - pred_spec = model_outputs[0].data.cpu().numpy() - gt_spec = mel_input[0].data.cpu().numpy() - align_img = alignments[0].data.cpu().numpy() - - figures = { - "prediction": plot_spectrogram(pred_spec, ap, output_fig=False), - "ground_truth": plot_spectrogram(gt_spec, ap, output_fig=False), - "alignment": plot_alignment(align_img, output_fig=False), - } - - # Sample audio - train_audio = ap.inv_melspectrogram(pred_spec.T) - return figures, {"audio": train_audio} - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ) -> None: # pylint: disable=no-self-use - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - @torch.no_grad() - def eval_step(self, batch: dict, criterion: nn.Module): - return self.train_step(batch, criterion) - - def eval_log(self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int) -> None: - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - @torch.no_grad() - def test_run(self, assets: Dict) -> Tuple[Dict, Dict]: - """Generic test run for `tts` models used by `Trainer`. - - You can override this for a different behaviour. - - Returns: - Tuple[Dict, Dict]: Test figures and audios to be projected to Tensorboard. - """ - print(" | > Synthesizing test sentences.") - test_audios = {} - test_figures = {} - test_sentences = self.config.test_sentences - aux_inputs = self._get_test_aux_input() - if len(test_sentences) == 0: - print(" | [!] No test sentences provided.") - else: - for idx, sen in enumerate(test_sentences): - outputs = synthesis( - self, - sen, - self.config, - "cuda" in str(next(self.parameters()).device), - speaker_id=aux_inputs["speaker_id"], - d_vector=aux_inputs["d_vector"], - style_wav=aux_inputs["style_wav"], - use_griffin_lim=True, - do_trim_silence=False, - ) - - test_audios["{}-audio".format(idx)] = outputs["wav"] - test_figures["{}-prediction".format(idx)] = plot_spectrogram( - outputs["outputs"]["model_outputs"], self.ap, output_fig=False - ) - test_figures["{}-alignment".format(idx)] = plot_alignment(outputs["alignments"], output_fig=False) - return test_figures, test_audios - - def preprocess(self, y, y_lengths, y_max_length, attn=None): - if y_max_length is not None: - y_max_length = (y_max_length // self.num_squeeze) * self.num_squeeze - y = y[:, :, :y_max_length] - if attn is not None: - attn = attn[:, :, :, :y_max_length] - y_lengths = torch.div(y_lengths, self.num_squeeze, rounding_mode="floor") * self.num_squeeze - return y, y_lengths, y_max_length, attn - - def store_inverse(self): - self.decoder.store_inverse() - - def load_checkpoint( - self, config, checkpoint_path, eval=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu")) - self.load_state_dict(state["model"]) - if eval: - self.eval() - self.store_inverse() - assert not self.training - - @staticmethod - def get_criterion(): - from TTS.tts.layers.losses import GlowTTSLoss # pylint: disable=import-outside-toplevel - - return GlowTTSLoss() - - def on_train_step_start(self, trainer): - """Decide on every training step wheter enable/disable data depended initialization.""" - self.run_data_dep_init = trainer.total_steps_done < self.data_dep_init_steps - - @staticmethod - def init_from_config(config: "GlowTTSConfig", samples: Union[List[List], List[Dict]] = None, verbose=True): - """Initiate model from config - - Args: - config (VitsConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - verbose (bool): If True, print init messages. Defaults to True. - """ - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config, verbose) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config, samples) - return GlowTTS(new_config, ap, tokenizer, speaker_manager) diff --git a/TTS/TTS/tts/models/neuralhmm_tts.py b/TTS/TTS/tts/models/neuralhmm_tts.py deleted file mode 100644 index e2414108721571c9a1cf143fdca2fa74174a9684..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/models/neuralhmm_tts.py +++ /dev/null @@ -1,385 +0,0 @@ -import os -from typing import Dict, List, Union - -import torch -from coqpit import Coqpit -from torch import nn -from trainer.logging.tensorboard_logger import TensorboardLogger - -from TTS.tts.layers.overflow.common_layers import Encoder, OverflowUtils -from TTS.tts.layers.overflow.neural_hmm import NeuralHMM -from TTS.tts.layers.overflow.plotting_utils import ( - get_spec_from_most_probable_state, - plot_transition_probabilities_to_numpy, -) -from TTS.tts.models.base_tts import BaseTTS -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram -from TTS.utils.generic_utils import format_aux_input -from TTS.utils.io import load_fsspec - - -class NeuralhmmTTS(BaseTTS): - """Neural HMM TTS model. - - Paper:: - https://arxiv.org/abs/2108.13320 - - Paper abstract:: - Neural sequence-to-sequence TTS has achieved significantly better output quality - than statistical speech synthesis using HMMs.However, neural TTS is generally not probabilistic - and uses non-monotonic attention. Attention failures increase training time and can make - synthesis babble incoherently. This paper describes how the old and new paradigms can be - combined to obtain the advantages of both worlds, by replacing attention in neural TTS with - an autoregressive left-right no-skip hidden Markov model defined by a neural network. - Based on this proposal, we modify Tacotron 2 to obtain an HMM-based neural TTS model with - monotonic alignment, trained to maximise the full sequence likelihood without approximation. - We also describe how to combine ideas from classical and contemporary TTS for best results. - The resulting example system is smaller and simpler than Tacotron 2, and learns to speak with - fewer iterations and less data, whilst achieving comparable naturalness prior to the post-net. - Our approach also allows easy control over speaking rate. Audio examples and code - are available at https://shivammehta25.github.io/Neural-HMM/ . - - Note: - - This is a parameter efficient version of OverFlow (15.3M vs 28.6M). Since it has half the - number of parameters as OverFlow the synthesis output quality is suboptimal (but comparable to Tacotron2 - without Postnet), but it learns to speak with even lesser amount of data and is still significantly faster - than other attention-based methods. - - - Neural HMMs uses flat start initialization i.e it computes the means and std and transition probabilities - of the dataset and uses them to initialize the model. This benefits the model and helps with faster learning - If you change the dataset or want to regenerate the parameters change the `force_generate_statistics` and - `mel_statistics_parameter_path` accordingly. - - - To enable multi-GPU training, set the `use_grad_checkpointing=False` in config. - This will significantly increase the memory usage. This is because to compute - the actual data likelihood (not an approximation using MAS/Viterbi) we must use - all the states at the previous time step during the forward pass to decide the - probability distribution at the current step i.e the difference between the forward - algorithm and viterbi approximation. - - Check :class:`TTS.tts.configs.neuralhmm_tts_config.NeuralhmmTTSConfig` for class arguments. - """ - - def __init__( - self, - config: "NeuralhmmTTSConfig", - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - - # pass all config fields to `self` - # for fewer code change - self.config = config - for key in config: - setattr(self, key, config[key]) - - self.encoder = Encoder(config.num_chars, config.state_per_phone, config.encoder_in_out_features) - self.neural_hmm = NeuralHMM( - frame_channels=self.out_channels, - ar_order=self.ar_order, - deterministic_transition=self.deterministic_transition, - encoder_dim=self.encoder_in_out_features, - prenet_type=self.prenet_type, - prenet_dim=self.prenet_dim, - prenet_n_layers=self.prenet_n_layers, - prenet_dropout=self.prenet_dropout, - prenet_dropout_at_inference=self.prenet_dropout_at_inference, - memory_rnn_dim=self.memory_rnn_dim, - outputnet_size=self.outputnet_size, - flat_start_params=self.flat_start_params, - std_floor=self.std_floor, - use_grad_checkpointing=self.use_grad_checkpointing, - ) - - self.register_buffer("mean", torch.tensor(0)) - self.register_buffer("std", torch.tensor(1)) - - def update_mean_std(self, statistics_dict: Dict): - self.mean.data = torch.tensor(statistics_dict["mean"]) - self.std.data = torch.tensor(statistics_dict["std"]) - - def preprocess_batch(self, text, text_len, mels, mel_len): - if self.mean.item() == 0 or self.std.item() == 1: - statistics_dict = torch.load(self.mel_statistics_parameter_path) - self.update_mean_std(statistics_dict) - - mels = self.normalize(mels) - return text, text_len, mels, mel_len - - def normalize(self, x): - return x.sub(self.mean).div(self.std) - - def inverse_normalize(self, x): - return x.mul(self.std).add(self.mean) - - def forward(self, text, text_len, mels, mel_len): - """ - Forward pass for training and computing the log likelihood of a given batch. - - Shapes: - Shapes: - text: :math:`[B, T_in]` - text_len: :math:`[B]` - mels: :math:`[B, T_out, C]` - mel_len: :math:`[B]` - """ - text, text_len, mels, mel_len = self.preprocess_batch(text, text_len, mels, mel_len) - encoder_outputs, encoder_output_len = self.encoder(text, text_len) - - log_probs, fwd_alignments, transition_vectors, means = self.neural_hmm( - encoder_outputs, encoder_output_len, mels.transpose(1, 2), mel_len - ) - - outputs = { - "log_probs": log_probs, - "alignments": fwd_alignments, - "transition_vectors": transition_vectors, - "means": means, - } - - return outputs - - @staticmethod - def _training_stats(batch): - stats = {} - stats["avg_text_length"] = batch["text_lengths"].float().mean() - stats["avg_spec_length"] = batch["mel_lengths"].float().mean() - stats["avg_text_batch_occupancy"] = (batch["text_lengths"].float() / batch["text_lengths"].float().max()).mean() - stats["avg_spec_batch_occupancy"] = (batch["mel_lengths"].float() / batch["mel_lengths"].float().max()).mean() - return stats - - def train_step(self, batch: dict, criterion: nn.Module): - text_input = batch["text_input"] - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - mel_lengths = batch["mel_lengths"] - - outputs = self.forward( - text=text_input, - text_len=text_lengths, - mels=mel_input, - mel_len=mel_lengths, - ) - loss_dict = criterion(outputs["log_probs"] / (mel_lengths.sum() + text_lengths.sum())) - - # for printing useful statistics on terminal - loss_dict.update(self._training_stats(batch)) - return outputs, loss_dict - - def eval_step(self, batch: Dict, criterion: nn.Module): - return self.train_step(batch, criterion) - - def _format_aux_input(self, aux_input: Dict, default_input_dict): - """Set missing fields to their default value. - - Args: - aux_inputs (Dict): Dictionary containing the auxiliary inputs. - """ - default_input_dict = default_input_dict.copy() - default_input_dict.update( - { - "sampling_temp": self.sampling_temp, - "max_sampling_time": self.max_sampling_time, - "duration_threshold": self.duration_threshold, - } - ) - if aux_input: - return format_aux_input(default_input_dict, aux_input) - return default_input_dict - - @torch.no_grad() - def inference( - self, - text: torch.Tensor, - aux_input={"x_lengths": None, "sampling_temp": None, "max_sampling_time": None, "duration_threshold": None}, - ): # pylint: disable=dangerous-default-value - """Sampling from the model - - Args: - text (torch.Tensor): :math:`[B, T_in]` - aux_inputs (_type_, optional): _description_. Defaults to None. - - Returns: - outputs: Dictionary containing the following - - mel (torch.Tensor): :math:`[B, T_out, C]` - - hmm_outputs_len (torch.Tensor): :math:`[B]` - - state_travelled (List[List[int]]): List of lists containing the state travelled for each sample in the batch. - - input_parameters (list[torch.FloatTensor]): Input parameters to the neural HMM. - - output_parameters (list[torch.FloatTensor]): Output parameters to the neural HMM. - """ - default_input_dict = { - "x_lengths": torch.sum(text != 0, dim=1), - } - aux_input = self._format_aux_input(aux_input, default_input_dict) - encoder_outputs, encoder_output_len = self.encoder.inference(text, aux_input["x_lengths"]) - outputs = self.neural_hmm.inference( - encoder_outputs, - encoder_output_len, - sampling_temp=aux_input["sampling_temp"], - max_sampling_time=aux_input["max_sampling_time"], - duration_threshold=aux_input["duration_threshold"], - ) - mels, mel_outputs_len = outputs["hmm_outputs"], outputs["hmm_outputs_len"] - - mels = self.inverse_normalize(mels) - outputs.update({"model_outputs": mels, "model_outputs_len": mel_outputs_len}) - outputs["alignments"] = OverflowUtils.double_pad(outputs["alignments"]) - return outputs - - @staticmethod - def get_criterion(): - return NLLLoss() - - @staticmethod - def init_from_config(config: "NeuralhmmTTSConfig", samples: Union[List[List], List[Dict]] = None, verbose=True): - """Initiate model from config - - Args: - config (VitsConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - verbose (bool): If True, print init messages. Defaults to True. - """ - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config, verbose) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config, samples) - return NeuralhmmTTS(new_config, ap, tokenizer, speaker_manager) - - def load_checkpoint( - self, config: Coqpit, checkpoint_path: str, eval: bool = False, strict: bool = True, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu")) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - - def on_init_start(self, trainer): - """If the current dataset does not have normalisation statistics and initialisation transition_probability it computes them otherwise loads.""" - if not os.path.isfile(trainer.config.mel_statistics_parameter_path) or trainer.config.force_generate_statistics: - dataloader = trainer.get_train_dataloader( - training_assets=None, samples=trainer.train_samples, verbose=False - ) - print( - f" | > Data parameters not found for: {trainer.config.mel_statistics_parameter_path}. Computing mel normalization parameters..." - ) - data_mean, data_std, init_transition_prob = OverflowUtils.get_data_parameters_for_flat_start( - dataloader, trainer.config.out_channels, trainer.config.state_per_phone - ) - print( - f" | > Saving data parameters to: {trainer.config.mel_statistics_parameter_path}: value: {data_mean, data_std, init_transition_prob}" - ) - statistics = { - "mean": data_mean.item(), - "std": data_std.item(), - "init_transition_prob": init_transition_prob.item(), - } - torch.save(statistics, trainer.config.mel_statistics_parameter_path) - - else: - print( - f" | > Data parameters found for: {trainer.config.mel_statistics_parameter_path}. Loading mel normalization parameters..." - ) - statistics = torch.load(trainer.config.mel_statistics_parameter_path) - data_mean, data_std, init_transition_prob = ( - statistics["mean"], - statistics["std"], - statistics["init_transition_prob"], - ) - print(f" | > Data parameters loaded with value: {data_mean, data_std, init_transition_prob}") - - trainer.config.flat_start_params["transition_p"] = ( - init_transition_prob.item() if torch.is_tensor(init_transition_prob) else init_transition_prob - ) - OverflowUtils.update_flat_start_transition(trainer.model, init_transition_prob) - trainer.model.update_mean_std(statistics) - - @torch.inference_mode() - def _create_logs(self, batch, outputs, ap): # pylint: disable=no-self-use, unused-argument - alignments, transition_vectors = outputs["alignments"], outputs["transition_vectors"] - means = torch.stack(outputs["means"], dim=1) - - figures = { - "alignment": plot_alignment(alignments[0].exp(), title="Forward alignment", fig_size=(20, 20)), - "log_alignment": plot_alignment( - alignments[0].exp(), title="Forward log alignment", plot_log=True, fig_size=(20, 20) - ), - "transition_vectors": plot_alignment(transition_vectors[0], title="Transition vectors", fig_size=(20, 20)), - "mel_from_most_probable_state": plot_spectrogram( - get_spec_from_most_probable_state(alignments[0], means[0]), fig_size=(12, 3) - ), - "mel_target": plot_spectrogram(batch["mel_input"][0], fig_size=(12, 3)), - } - - # sample one item from the batch -1 will give the smalles item - print(" | > Synthesising audio from the model...") - inference_output = self.inference( - batch["text_input"][-1].unsqueeze(0), aux_input={"x_lengths": batch["text_lengths"][-1].unsqueeze(0)} - ) - figures["synthesised"] = plot_spectrogram(inference_output["model_outputs"][0], fig_size=(12, 3)) - - states = [p[1] for p in inference_output["input_parameters"][0]] - transition_probability_synthesising = [p[2].cpu().numpy() for p in inference_output["output_parameters"][0]] - - for i in range((len(transition_probability_synthesising) // 200) + 1): - start = i * 200 - end = (i + 1) * 200 - figures[f"synthesised_transition_probabilities/{i}"] = plot_transition_probabilities_to_numpy( - states[start:end], transition_probability_synthesising[start:end] - ) - - audio = ap.inv_melspectrogram(inference_output["model_outputs"][0].T.cpu().numpy()) - return figures, {"audios": audio} - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ): # pylint: disable=unused-argument - """Log training progress.""" - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - def eval_log( - self, batch: Dict, outputs: Dict, logger: "Logger", assets: Dict, steps: int - ): # pylint: disable=unused-argument - """Compute and log evaluation metrics.""" - # Plot model parameters histograms - if isinstance(logger, TensorboardLogger): - # I don't know if any other loggers supports this - for tag, value in self.named_parameters(): - tag = tag.replace(".", "/") - logger.writer.add_histogram(tag, value.data.cpu().numpy(), steps) - - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - def test_log( - self, outputs: dict, logger: "Logger", assets: dict, steps: int # pylint: disable=unused-argument - ) -> None: - logger.test_audios(steps, outputs[1], self.ap.sample_rate) - logger.test_figures(steps, outputs[0]) - - -class NLLLoss(nn.Module): - """Negative log likelihood loss.""" - - def forward(self, log_prob: torch.Tensor) -> dict: # pylint: disable=no-self-use - """Compute the loss. - - Args: - logits (Tensor): [B, T, D] - - Returns: - Tensor: [1] - - """ - return_dict = {} - return_dict["loss"] = -log_prob.mean() - return return_dict diff --git a/TTS/TTS/tts/models/overflow.py b/TTS/TTS/tts/models/overflow.py deleted file mode 100644 index 92b3c767de4cb5180df4a58d6cfdc1ed194caad7..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/models/overflow.py +++ /dev/null @@ -1,401 +0,0 @@ -import os -from typing import Dict, List, Union - -import torch -from coqpit import Coqpit -from torch import nn -from trainer.logging.tensorboard_logger import TensorboardLogger - -from TTS.tts.layers.overflow.common_layers import Encoder, OverflowUtils -from TTS.tts.layers.overflow.decoder import Decoder -from TTS.tts.layers.overflow.neural_hmm import NeuralHMM -from TTS.tts.layers.overflow.plotting_utils import ( - get_spec_from_most_probable_state, - plot_transition_probabilities_to_numpy, -) -from TTS.tts.models.base_tts import BaseTTS -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram -from TTS.utils.generic_utils import format_aux_input -from TTS.utils.io import load_fsspec - - -class Overflow(BaseTTS): - """OverFlow TTS model. - - Paper:: - https://arxiv.org/abs/2211.06892 - - Paper abstract:: - Neural HMMs are a type of neural transducer recently proposed for - sequence-to-sequence modelling in text-to-speech. They combine the best features - of classic statistical speech synthesis and modern neural TTS, requiring less - data and fewer training updates, and are less prone to gibberish output caused - by neural attention failures. In this paper, we combine neural HMM TTS with - normalising flows for describing the highly non-Gaussian distribution of speech - acoustics. The result is a powerful, fully probabilistic model of durations and - acoustics that can be trained using exact maximum likelihood. Compared to - dominant flow-based acoustic models, our approach integrates autoregression for - improved modelling of long-range dependences such as utterance-level prosody. - Experiments show that a system based on our proposal gives more accurate - pronunciations and better subjective speech quality than comparable methods, - whilst retaining the original advantages of neural HMMs. Audio examples and code - are available at https://shivammehta25.github.io/OverFlow/. - - Note: - - Neural HMMs uses flat start initialization i.e it computes the means and std and transition probabilities - of the dataset and uses them to initialize the model. This benefits the model and helps with faster learning - If you change the dataset or want to regenerate the parameters change the `force_generate_statistics` and - `mel_statistics_parameter_path` accordingly. - - - To enable multi-GPU training, set the `use_grad_checkpointing=False` in config. - This will significantly increase the memory usage. This is because to compute - the actual data likelihood (not an approximation using MAS/Viterbi) we must use - all the states at the previous time step during the forward pass to decide the - probability distribution at the current step i.e the difference between the forward - algorithm and viterbi approximation. - - Check :class:`TTS.tts.configs.overflow.OverFlowConfig` for class arguments. - """ - - def __init__( - self, - config: "OverFlowConfig", - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - - # pass all config fields to `self` - # for fewer code change - self.config = config - for key in config: - setattr(self, key, config[key]) - - self.decoder_output_dim = config.out_channels - - self.encoder = Encoder(config.num_chars, config.state_per_phone, config.encoder_in_out_features) - self.neural_hmm = NeuralHMM( - frame_channels=self.out_channels, - ar_order=self.ar_order, - deterministic_transition=self.deterministic_transition, - encoder_dim=self.encoder_in_out_features, - prenet_type=self.prenet_type, - prenet_dim=self.prenet_dim, - prenet_n_layers=self.prenet_n_layers, - prenet_dropout=self.prenet_dropout, - prenet_dropout_at_inference=self.prenet_dropout_at_inference, - memory_rnn_dim=self.memory_rnn_dim, - outputnet_size=self.outputnet_size, - flat_start_params=self.flat_start_params, - std_floor=self.std_floor, - use_grad_checkpointing=self.use_grad_checkpointing, - ) - - self.decoder = Decoder( - self.out_channels, - self.hidden_channels_dec, - self.kernel_size_dec, - self.dilation_rate, - self.num_flow_blocks_dec, - self.num_block_layers, - dropout_p=self.dropout_p_dec, - num_splits=self.num_splits, - num_squeeze=self.num_squeeze, - sigmoid_scale=self.sigmoid_scale, - c_in_channels=self.c_in_channels, - ) - - self.register_buffer("mean", torch.tensor(0)) - self.register_buffer("std", torch.tensor(1)) - - def update_mean_std(self, statistics_dict: Dict): - self.mean.data = torch.tensor(statistics_dict["mean"]) - self.std.data = torch.tensor(statistics_dict["std"]) - - def preprocess_batch(self, text, text_len, mels, mel_len): - if self.mean.item() == 0 or self.std.item() == 1: - statistics_dict = torch.load(self.mel_statistics_parameter_path) - self.update_mean_std(statistics_dict) - - mels = self.normalize(mels) - return text, text_len, mels, mel_len - - def normalize(self, x): - return x.sub(self.mean).div(self.std) - - def inverse_normalize(self, x): - return x.mul(self.std).add(self.mean) - - def forward(self, text, text_len, mels, mel_len): - """ - Forward pass for training and computing the log likelihood of a given batch. - - Shapes: - Shapes: - text: :math:`[B, T_in]` - text_len: :math:`[B]` - mels: :math:`[B, T_out, C]` - mel_len: :math:`[B]` - """ - text, text_len, mels, mel_len = self.preprocess_batch(text, text_len, mels, mel_len) - encoder_outputs, encoder_output_len = self.encoder(text, text_len) - z, z_lengths, logdet = self.decoder(mels.transpose(1, 2), mel_len) - log_probs, fwd_alignments, transition_vectors, means = self.neural_hmm( - encoder_outputs, encoder_output_len, z, z_lengths - ) - - outputs = { - "log_probs": log_probs + logdet, - "alignments": fwd_alignments, - "transition_vectors": transition_vectors, - "means": means, - } - - return outputs - - @staticmethod - def _training_stats(batch): - stats = {} - stats["avg_text_length"] = batch["text_lengths"].float().mean() - stats["avg_spec_length"] = batch["mel_lengths"].float().mean() - stats["avg_text_batch_occupancy"] = (batch["text_lengths"].float() / batch["text_lengths"].float().max()).mean() - stats["avg_spec_batch_occupancy"] = (batch["mel_lengths"].float() / batch["mel_lengths"].float().max()).mean() - return stats - - def train_step(self, batch: dict, criterion: nn.Module): - text_input = batch["text_input"] - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - mel_lengths = batch["mel_lengths"] - - outputs = self.forward( - text=text_input, - text_len=text_lengths, - mels=mel_input, - mel_len=mel_lengths, - ) - loss_dict = criterion(outputs["log_probs"] / (mel_lengths.sum() + text_lengths.sum())) - - # for printing useful statistics on terminal - loss_dict.update(self._training_stats(batch)) - return outputs, loss_dict - - def eval_step(self, batch: Dict, criterion: nn.Module): - return self.train_step(batch, criterion) - - def _format_aux_input(self, aux_input: Dict, default_input_dict): - """Set missing fields to their default value. - - Args: - aux_inputs (Dict): Dictionary containing the auxiliary inputs. - """ - default_input_dict = default_input_dict.copy() - default_input_dict.update( - { - "sampling_temp": self.sampling_temp, - "max_sampling_time": self.max_sampling_time, - "duration_threshold": self.duration_threshold, - } - ) - if aux_input: - return format_aux_input(default_input_dict, aux_input) - return default_input_dict - - @torch.no_grad() - def inference( - self, - text: torch.Tensor, - aux_input={"x_lengths": None, "sampling_temp": None, "max_sampling_time": None, "duration_threshold": None}, - ): # pylint: disable=dangerous-default-value - """Sampling from the model - - Args: - text (torch.Tensor): :math:`[B, T_in]` - aux_inputs (_type_, optional): _description_. Defaults to None. - - Returns: - outputs: Dictionary containing the following - - mel (torch.Tensor): :math:`[B, T_out, C]` - - hmm_outputs_len (torch.Tensor): :math:`[B]` - - state_travelled (List[List[int]]): List of lists containing the state travelled for each sample in the batch. - - input_parameters (list[torch.FloatTensor]): Input parameters to the neural HMM. - - output_parameters (list[torch.FloatTensor]): Output parameters to the neural HMM. - """ - default_input_dict = { - "x_lengths": torch.sum(text != 0, dim=1), - } - aux_input = self._format_aux_input(aux_input, default_input_dict) - encoder_outputs, encoder_output_len = self.encoder.inference(text, aux_input["x_lengths"]) - outputs = self.neural_hmm.inference( - encoder_outputs, - encoder_output_len, - sampling_temp=aux_input["sampling_temp"], - max_sampling_time=aux_input["max_sampling_time"], - duration_threshold=aux_input["duration_threshold"], - ) - - mels, mel_outputs_len, _ = self.decoder( - outputs["hmm_outputs"].transpose(1, 2), outputs["hmm_outputs_len"], reverse=True - ) - mels = self.inverse_normalize(mels.transpose(1, 2)) - outputs.update({"model_outputs": mels, "model_outputs_len": mel_outputs_len}) - outputs["alignments"] = OverflowUtils.double_pad(outputs["alignments"]) - return outputs - - @staticmethod - def get_criterion(): - return NLLLoss() - - @staticmethod - def init_from_config(config: "OverFlowConfig", samples: Union[List[List], List[Dict]] = None, verbose=True): - """Initiate model from config - - Args: - config (VitsConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - verbose (bool): If True, print init messages. Defaults to True. - """ - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config, verbose) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config, samples) - return Overflow(new_config, ap, tokenizer, speaker_manager) - - def load_checkpoint( - self, config: Coqpit, checkpoint_path: str, eval: bool = False, strict: bool = True, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu")) - self.load_state_dict(state["model"]) - if eval: - self.eval() - self.decoder.store_inverse() - assert not self.training - - def on_init_start(self, trainer): - """If the current dataset does not have normalisation statistics and initialisation transition_probability it computes them otherwise loads.""" - if not os.path.isfile(trainer.config.mel_statistics_parameter_path) or trainer.config.force_generate_statistics: - dataloader = trainer.get_train_dataloader( - training_assets=None, samples=trainer.train_samples, verbose=False - ) - print( - f" | > Data parameters not found for: {trainer.config.mel_statistics_parameter_path}. Computing mel normalization parameters..." - ) - data_mean, data_std, init_transition_prob = OverflowUtils.get_data_parameters_for_flat_start( - dataloader, trainer.config.out_channels, trainer.config.state_per_phone - ) - print( - f" | > Saving data parameters to: {trainer.config.mel_statistics_parameter_path}: value: {data_mean, data_std, init_transition_prob}" - ) - statistics = { - "mean": data_mean.item(), - "std": data_std.item(), - "init_transition_prob": init_transition_prob.item(), - } - torch.save(statistics, trainer.config.mel_statistics_parameter_path) - - else: - print( - f" | > Data parameters found for: {trainer.config.mel_statistics_parameter_path}. Loading mel normalization parameters..." - ) - statistics = torch.load(trainer.config.mel_statistics_parameter_path) - data_mean, data_std, init_transition_prob = ( - statistics["mean"], - statistics["std"], - statistics["init_transition_prob"], - ) - print(f" | > Data parameters loaded with value: {data_mean, data_std, init_transition_prob}") - - trainer.config.flat_start_params["transition_p"] = ( - init_transition_prob.item() if torch.is_tensor(init_transition_prob) else init_transition_prob - ) - OverflowUtils.update_flat_start_transition(trainer.model, init_transition_prob) - trainer.model.update_mean_std(statistics) - - @torch.inference_mode() - def _create_logs(self, batch, outputs, ap): # pylint: disable=no-self-use, unused-argument - alignments, transition_vectors = outputs["alignments"], outputs["transition_vectors"] - means = torch.stack(outputs["means"], dim=1) - - figures = { - "alignment": plot_alignment(alignments[0].exp(), title="Forward alignment", fig_size=(20, 20)), - "log_alignment": plot_alignment( - alignments[0].exp(), title="Forward log alignment", plot_log=True, fig_size=(20, 20) - ), - "transition_vectors": plot_alignment(transition_vectors[0], title="Transition vectors", fig_size=(20, 20)), - "mel_from_most_probable_state": plot_spectrogram( - get_spec_from_most_probable_state(alignments[0], means[0], self.decoder), fig_size=(12, 3) - ), - "mel_target": plot_spectrogram(batch["mel_input"][0], fig_size=(12, 3)), - } - - # sample one item from the batch -1 will give the smalles item - print(" | > Synthesising audio from the model...") - inference_output = self.inference( - batch["text_input"][-1].unsqueeze(0), aux_input={"x_lengths": batch["text_lengths"][-1].unsqueeze(0)} - ) - figures["synthesised"] = plot_spectrogram(inference_output["model_outputs"][0], fig_size=(12, 3)) - - states = [p[1] for p in inference_output["input_parameters"][0]] - transition_probability_synthesising = [p[2].cpu().numpy() for p in inference_output["output_parameters"][0]] - - for i in range((len(transition_probability_synthesising) // 200) + 1): - start = i * 200 - end = (i + 1) * 200 - figures[f"synthesised_transition_probabilities/{i}"] = plot_transition_probabilities_to_numpy( - states[start:end], transition_probability_synthesising[start:end] - ) - - audio = ap.inv_melspectrogram(inference_output["model_outputs"][0].T.cpu().numpy()) - return figures, {"audios": audio} - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ): # pylint: disable=unused-argument - """Log training progress.""" - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - def eval_log( - self, batch: Dict, outputs: Dict, logger: "Logger", assets: Dict, steps: int - ): # pylint: disable=unused-argument - """Compute and log evaluation metrics.""" - # Plot model parameters histograms - if isinstance(logger, TensorboardLogger): - # I don't know if any other loggers supports this - for tag, value in self.named_parameters(): - tag = tag.replace(".", "/") - logger.writer.add_histogram(tag, value.data.cpu().numpy(), steps) - - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - def test_log( - self, outputs: dict, logger: "Logger", assets: dict, steps: int # pylint: disable=unused-argument - ) -> None: - logger.test_audios(steps, outputs[1], self.ap.sample_rate) - logger.test_figures(steps, outputs[0]) - - -class NLLLoss(nn.Module): - """Negative log likelihood loss.""" - - def forward(self, log_prob: torch.Tensor) -> dict: # pylint: disable=no-self-use - """Compute the loss. - - Args: - logits (Tensor): [B, T, D] - - Returns: - Tensor: [1] - - """ - return_dict = {} - return_dict["loss"] = -log_prob.mean() - return return_dict diff --git a/TTS/TTS/tts/models/tacotron.py b/TTS/TTS/tts/models/tacotron.py deleted file mode 100644 index 474ec4641d0a569fc1938442ab9f7ce4bb980119..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/models/tacotron.py +++ /dev/null @@ -1,409 +0,0 @@ -# coding: utf-8 - -from typing import Dict, List, Tuple, Union - -import torch -from torch import nn -from torch.cuda.amp.autocast_mode import autocast -from trainer.trainer_utils import get_optimizer, get_scheduler - -from TTS.tts.layers.tacotron.capacitron_layers import CapacitronVAE -from TTS.tts.layers.tacotron.gst_layers import GST -from TTS.tts.layers.tacotron.tacotron import Decoder, Encoder, PostCBHG -from TTS.tts.models.base_tacotron import BaseTacotron -from TTS.tts.utils.measures import alignment_diagonal_score -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram -from TTS.utils.capacitron_optimizer import CapacitronOptimizer - - -class Tacotron(BaseTacotron): - """Tacotron as in https://arxiv.org/abs/1703.10135 - It's an autoregressive encoder-attention-decoder-postnet architecture. - Check `TacotronConfig` for the arguments. - - Args: - config (TacotronConfig): Configuration for the Tacotron model. - speaker_manager (SpeakerManager): Speaker manager to handle multi-speaker settings. Only use if the model is - a multi-speaker model. Defaults to None. - """ - - def __init__( - self, - config: "TacotronConfig", - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - - # pass all config fields to `self` - # for fewer code change - for key in config: - setattr(self, key, config[key]) - - # set speaker embedding channel size for determining `in_channels` for the connected layers. - # `init_multispeaker` needs to be called once more in training to initialize the speaker embedding layer based - # on the number of speakers infered from the dataset. - if self.use_speaker_embedding or self.use_d_vector_file: - self.init_multispeaker(config) - self.decoder_in_features += self.embedded_speaker_dim # add speaker embedding dim - - if self.use_gst: - self.decoder_in_features += self.gst.gst_embedding_dim - - if self.use_capacitron_vae: - self.decoder_in_features += self.capacitron_vae.capacitron_VAE_embedding_dim - - # embedding layer - self.embedding = nn.Embedding(self.num_chars, 256, padding_idx=0) - self.embedding.weight.data.normal_(0, 0.3) - - # base model layers - self.encoder = Encoder(self.encoder_in_features) - self.decoder = Decoder( - self.decoder_in_features, - self.decoder_output_dim, - self.r, - self.memory_size, - self.attention_type, - self.windowing, - self.attention_norm, - self.prenet_type, - self.prenet_dropout, - self.use_forward_attn, - self.transition_agent, - self.forward_attn_mask, - self.location_attn, - self.attention_heads, - self.separate_stopnet, - self.max_decoder_steps, - ) - self.postnet = PostCBHG(self.decoder_output_dim) - self.last_linear = nn.Linear(self.postnet.cbhg.gru_features * 2, self.out_channels) - - # setup prenet dropout - self.decoder.prenet.dropout_at_inference = self.prenet_dropout_at_inference - - # global style token layers - if self.gst and self.use_gst: - self.gst_layer = GST( - num_mel=self.decoder_output_dim, - num_heads=self.gst.gst_num_heads, - num_style_tokens=self.gst.gst_num_style_tokens, - gst_embedding_dim=self.gst.gst_embedding_dim, - ) - - # Capacitron layers - if self.capacitron_vae and self.use_capacitron_vae: - self.capacitron_vae_layer = CapacitronVAE( - num_mel=self.decoder_output_dim, - encoder_output_dim=self.encoder_in_features, - capacitron_VAE_embedding_dim=self.capacitron_vae.capacitron_VAE_embedding_dim, - speaker_embedding_dim=self.embedded_speaker_dim - if self.use_speaker_embedding and self.capacitron_vae.capacitron_use_speaker_embedding - else None, - text_summary_embedding_dim=self.capacitron_vae.capacitron_text_summary_embedding_dim - if self.capacitron_vae.capacitron_use_text_summary_embeddings - else None, - ) - - # backward pass decoder - if self.bidirectional_decoder: - self._init_backward_decoder() - # setup DDC - if self.double_decoder_consistency: - self.coarse_decoder = Decoder( - self.decoder_in_features, - self.decoder_output_dim, - self.ddc_r, - self.memory_size, - self.attention_type, - self.windowing, - self.attention_norm, - self.prenet_type, - self.prenet_dropout, - self.use_forward_attn, - self.transition_agent, - self.forward_attn_mask, - self.location_attn, - self.attention_heads, - self.separate_stopnet, - self.max_decoder_steps, - ) - - def forward( # pylint: disable=dangerous-default-value - self, text, text_lengths, mel_specs=None, mel_lengths=None, aux_input={"speaker_ids": None, "d_vectors": None} - ): - """ - Shapes: - text: [B, T_in] - text_lengths: [B] - mel_specs: [B, T_out, C] - mel_lengths: [B] - aux_input: 'speaker_ids': [B, 1] and 'd_vectors':[B, C] - """ - aux_input = self._format_aux_input(aux_input) - outputs = {"alignments_backward": None, "decoder_outputs_backward": None} - inputs = self.embedding(text) - input_mask, output_mask = self.compute_masks(text_lengths, mel_lengths) - # B x T_in x encoder_in_features - encoder_outputs = self.encoder(inputs) - # sequence masking - encoder_outputs = encoder_outputs * input_mask.unsqueeze(2).expand_as(encoder_outputs) - # global style token - if self.gst and self.use_gst: - # B x gst_dim - encoder_outputs = self.compute_gst(encoder_outputs, mel_specs) - # speaker embedding - if self.use_speaker_embedding or self.use_d_vector_file: - if not self.use_d_vector_file: - # B x 1 x speaker_embed_dim - embedded_speakers = self.speaker_embedding(aux_input["speaker_ids"])[:, None] - else: - # B x 1 x speaker_embed_dim - embedded_speakers = torch.unsqueeze(aux_input["d_vectors"], 1) - encoder_outputs = self._concat_speaker_embedding(encoder_outputs, embedded_speakers) - # Capacitron - if self.capacitron_vae and self.use_capacitron_vae: - # B x capacitron_VAE_embedding_dim - encoder_outputs, *capacitron_vae_outputs = self.compute_capacitron_VAE_embedding( - encoder_outputs, - reference_mel_info=[mel_specs, mel_lengths], - text_info=[inputs, text_lengths] - if self.capacitron_vae.capacitron_use_text_summary_embeddings - else None, - speaker_embedding=embedded_speakers if self.capacitron_vae.capacitron_use_speaker_embedding else None, - ) - else: - capacitron_vae_outputs = None - # decoder_outputs: B x decoder_in_features x T_out - # alignments: B x T_in x encoder_in_features - # stop_tokens: B x T_in - decoder_outputs, alignments, stop_tokens = self.decoder(encoder_outputs, mel_specs, input_mask) - # sequence masking - if output_mask is not None: - decoder_outputs = decoder_outputs * output_mask.unsqueeze(1).expand_as(decoder_outputs) - # B x T_out x decoder_in_features - postnet_outputs = self.postnet(decoder_outputs) - # sequence masking - if output_mask is not None: - postnet_outputs = postnet_outputs * output_mask.unsqueeze(2).expand_as(postnet_outputs) - # B x T_out x posnet_dim - postnet_outputs = self.last_linear(postnet_outputs) - # B x T_out x decoder_in_features - decoder_outputs = decoder_outputs.transpose(1, 2).contiguous() - if self.bidirectional_decoder: - decoder_outputs_backward, alignments_backward = self._backward_pass(mel_specs, encoder_outputs, input_mask) - outputs["alignments_backward"] = alignments_backward - outputs["decoder_outputs_backward"] = decoder_outputs_backward - if self.double_decoder_consistency: - decoder_outputs_backward, alignments_backward = self._coarse_decoder_pass( - mel_specs, encoder_outputs, alignments, input_mask - ) - outputs["alignments_backward"] = alignments_backward - outputs["decoder_outputs_backward"] = decoder_outputs_backward - outputs.update( - { - "model_outputs": postnet_outputs, - "decoder_outputs": decoder_outputs, - "alignments": alignments, - "stop_tokens": stop_tokens, - "capacitron_vae_outputs": capacitron_vae_outputs, - } - ) - return outputs - - @torch.no_grad() - def inference(self, text_input, aux_input=None): - aux_input = self._format_aux_input(aux_input) - inputs = self.embedding(text_input) - encoder_outputs = self.encoder(inputs) - if self.gst and self.use_gst: - # B x gst_dim - encoder_outputs = self.compute_gst(encoder_outputs, aux_input["style_mel"], aux_input["d_vectors"]) - if self.capacitron_vae and self.use_capacitron_vae: - if aux_input["style_text"] is not None: - style_text_embedding = self.embedding(aux_input["style_text"]) - style_text_length = torch.tensor([style_text_embedding.size(1)], dtype=torch.int64).to( - encoder_outputs.device - ) # pylint: disable=not-callable - reference_mel_length = ( - torch.tensor([aux_input["style_mel"].size(1)], dtype=torch.int64).to(encoder_outputs.device) - if aux_input["style_mel"] is not None - else None - ) # pylint: disable=not-callable - # B x capacitron_VAE_embedding_dim - encoder_outputs, *_ = self.compute_capacitron_VAE_embedding( - encoder_outputs, - reference_mel_info=[aux_input["style_mel"], reference_mel_length] - if aux_input["style_mel"] is not None - else None, - text_info=[style_text_embedding, style_text_length] if aux_input["style_text"] is not None else None, - speaker_embedding=aux_input["d_vectors"] - if self.capacitron_vae.capacitron_use_speaker_embedding - else None, - ) - if self.num_speakers > 1: - if not self.use_d_vector_file: - # B x 1 x speaker_embed_dim - embedded_speakers = self.speaker_embedding(aux_input["speaker_ids"]) - # reshape embedded_speakers - if embedded_speakers.ndim == 1: - embedded_speakers = embedded_speakers[None, None, :] - elif embedded_speakers.ndim == 2: - embedded_speakers = embedded_speakers[None, :] - else: - # B x 1 x speaker_embed_dim - embedded_speakers = torch.unsqueeze(aux_input["d_vectors"], 1) - encoder_outputs = self._concat_speaker_embedding(encoder_outputs, embedded_speakers) - decoder_outputs, alignments, stop_tokens = self.decoder.inference(encoder_outputs) - postnet_outputs = self.postnet(decoder_outputs) - postnet_outputs = self.last_linear(postnet_outputs) - decoder_outputs = decoder_outputs.transpose(1, 2) - outputs = { - "model_outputs": postnet_outputs, - "decoder_outputs": decoder_outputs, - "alignments": alignments, - "stop_tokens": stop_tokens, - } - return outputs - - def before_backward_pass(self, loss_dict, optimizer) -> None: - # Extracting custom training specific operations for capacitron - # from the trainer - if self.use_capacitron_vae: - loss_dict["capacitron_vae_beta_loss"].backward() - optimizer.first_step() - - def train_step(self, batch: Dict, criterion: torch.nn.Module) -> Tuple[Dict, Dict]: - """Perform a single training step by fetching the right set of samples from the batch. - - Args: - batch ([Dict]): A dictionary of input tensors. - criterion ([torch.nn.Module]): Callable criterion to compute model loss. - """ - text_input = batch["text_input"] - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - mel_lengths = batch["mel_lengths"] - linear_input = batch["linear_input"] - stop_targets = batch["stop_targets"] - stop_target_lengths = batch["stop_target_lengths"] - speaker_ids = batch["speaker_ids"] - d_vectors = batch["d_vectors"] - - aux_input = {"speaker_ids": speaker_ids, "d_vectors": d_vectors} - outputs = self.forward(text_input, text_lengths, mel_input, mel_lengths, aux_input) - - # set the [alignment] lengths wrt reduction factor for guided attention - if mel_lengths.max() % self.decoder.r != 0: - alignment_lengths = ( - mel_lengths + (self.decoder.r - (mel_lengths.max() % self.decoder.r)) - ) // self.decoder.r - else: - alignment_lengths = mel_lengths // self.decoder.r - - # compute loss - with autocast(enabled=False): # use float32 for the criterion - loss_dict = criterion( - outputs["model_outputs"].float(), - outputs["decoder_outputs"].float(), - mel_input.float(), - linear_input.float(), - outputs["stop_tokens"].float(), - stop_targets.float(), - stop_target_lengths, - outputs["capacitron_vae_outputs"] if self.capacitron_vae else None, - mel_lengths, - None if outputs["decoder_outputs_backward"] is None else outputs["decoder_outputs_backward"].float(), - outputs["alignments"].float(), - alignment_lengths, - None if outputs["alignments_backward"] is None else outputs["alignments_backward"].float(), - text_lengths, - ) - - # compute alignment error (the lower the better ) - align_error = 1 - alignment_diagonal_score(outputs["alignments"]) - loss_dict["align_error"] = align_error - return outputs, loss_dict - - def get_optimizer(self) -> List: - if self.use_capacitron_vae: - return CapacitronOptimizer(self.config, self.named_parameters()) - return get_optimizer(self.config.optimizer, self.config.optimizer_params, self.config.lr, self) - - def get_scheduler(self, optimizer: object): - opt = optimizer.primary_optimizer if self.use_capacitron_vae else optimizer - return get_scheduler(self.config.lr_scheduler, self.config.lr_scheduler_params, opt) - - def before_gradient_clipping(self): - if self.use_capacitron_vae: - # Capacitron model specific gradient clipping - model_params_to_clip = [] - for name, param in self.named_parameters(): - if param.requires_grad: - if name != "capacitron_vae_layer.beta": - model_params_to_clip.append(param) - torch.nn.utils.clip_grad_norm_(model_params_to_clip, self.capacitron_vae.capacitron_grad_clip) - - def _create_logs(self, batch, outputs, ap): - postnet_outputs = outputs["model_outputs"] - decoder_outputs = outputs["decoder_outputs"] - alignments = outputs["alignments"] - alignments_backward = outputs["alignments_backward"] - mel_input = batch["mel_input"] - linear_input = batch["linear_input"] - - pred_linear_spec = postnet_outputs[0].data.cpu().numpy() - pred_mel_spec = decoder_outputs[0].data.cpu().numpy() - gt_linear_spec = linear_input[0].data.cpu().numpy() - gt_mel_spec = mel_input[0].data.cpu().numpy() - align_img = alignments[0].data.cpu().numpy() - - figures = { - "pred_linear_spec": plot_spectrogram(pred_linear_spec, ap, output_fig=False), - "real_linear_spec": plot_spectrogram(gt_linear_spec, ap, output_fig=False), - "pred_mel_spec": plot_spectrogram(pred_mel_spec, ap, output_fig=False), - "real_mel_spec": plot_spectrogram(gt_mel_spec, ap, output_fig=False), - "alignment": plot_alignment(align_img, output_fig=False), - } - - if self.bidirectional_decoder or self.double_decoder_consistency: - figures["alignment_backward"] = plot_alignment(alignments_backward[0].data.cpu().numpy(), output_fig=False) - - # Sample audio - audio = ap.inv_spectrogram(pred_linear_spec.T) - return figures, {"audio": audio} - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ) -> None: # pylint: disable=no-self-use - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - def eval_step(self, batch: dict, criterion: nn.Module): - return self.train_step(batch, criterion) - - def eval_log(self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int) -> None: - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - @staticmethod - def init_from_config(config: "TacotronConfig", samples: Union[List[List], List[Dict]] = None): - """Initiate model from config - - Args: - config (TacotronConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - """ - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config, samples) - return Tacotron(new_config, ap, tokenizer, speaker_manager) diff --git a/TTS/TTS/tts/models/tacotron2.py b/TTS/TTS/tts/models/tacotron2.py deleted file mode 100644 index 71ab1eac37aa70900a795cf8aa3df7a9ce77c49c..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/models/tacotron2.py +++ /dev/null @@ -1,433 +0,0 @@ -# coding: utf-8 - -from typing import Dict, List, Union - -import torch -from torch import nn -from torch.cuda.amp.autocast_mode import autocast -from trainer.trainer_utils import get_optimizer, get_scheduler - -from TTS.tts.layers.tacotron.capacitron_layers import CapacitronVAE -from TTS.tts.layers.tacotron.gst_layers import GST -from TTS.tts.layers.tacotron.tacotron2 import Decoder, Encoder, Postnet -from TTS.tts.models.base_tacotron import BaseTacotron -from TTS.tts.utils.measures import alignment_diagonal_score -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram -from TTS.utils.capacitron_optimizer import CapacitronOptimizer - - -class Tacotron2(BaseTacotron): - """Tacotron2 model implementation inherited from :class:`TTS.tts.models.base_tacotron.BaseTacotron`. - - Paper:: - https://arxiv.org/abs/1712.05884 - - Paper abstract:: - This paper describes Tacotron 2, a neural network architecture for speech synthesis directly from text. - The system is composed of a recurrent sequence-to-sequence feature prediction network that maps character - embeddings to mel-scale spectrograms, followed by a modified WaveNet model acting as a vocoder to synthesize - timedomain waveforms from those spectrograms. Our model achieves a mean opinion score (MOS) of 4.53 comparable - to a MOS of 4.58 for professionally recorded speech. To validate our design choices, we present ablation - studies of key components of our system and evaluate the impact of using mel spectrograms as the input to - WaveNet instead of linguistic, duration, and F0 features. We further demonstrate that using a compact acoustic - intermediate representation enables significant simplification of the WaveNet architecture. - - Check :class:`TTS.tts.configs.tacotron2_config.Tacotron2Config` for model arguments. - - Args: - config (TacotronConfig): - Configuration for the Tacotron2 model. - speaker_manager (SpeakerManager): - Speaker manager for multi-speaker training. Uuse only for multi-speaker training. Defaults to None. - """ - - def __init__( - self, - config: "Tacotron2Config", - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - - self.decoder_output_dim = config.out_channels - - # pass all config fields to `self` - # for fewer code change - for key in config: - setattr(self, key, config[key]) - - # init multi-speaker layers - if self.use_speaker_embedding or self.use_d_vector_file: - self.init_multispeaker(config) - self.decoder_in_features += self.embedded_speaker_dim # add speaker embedding dim - - if self.use_gst: - self.decoder_in_features += self.gst.gst_embedding_dim - - if self.use_capacitron_vae: - self.decoder_in_features += self.capacitron_vae.capacitron_VAE_embedding_dim - - # embedding layer - self.embedding = nn.Embedding(self.num_chars, 512, padding_idx=0) - - # base model layers - self.encoder = Encoder(self.encoder_in_features) - - self.decoder = Decoder( - self.decoder_in_features, - self.decoder_output_dim, - self.r, - self.attention_type, - self.attention_win, - self.attention_norm, - self.prenet_type, - self.prenet_dropout, - self.use_forward_attn, - self.transition_agent, - self.forward_attn_mask, - self.location_attn, - self.attention_heads, - self.separate_stopnet, - self.max_decoder_steps, - ) - self.postnet = Postnet(self.out_channels) - - # setup prenet dropout - self.decoder.prenet.dropout_at_inference = self.prenet_dropout_at_inference - - # global style token layers - if self.gst and self.use_gst: - self.gst_layer = GST( - num_mel=self.decoder_output_dim, - num_heads=self.gst.gst_num_heads, - num_style_tokens=self.gst.gst_num_style_tokens, - gst_embedding_dim=self.gst.gst_embedding_dim, - ) - - # Capacitron VAE Layers - if self.capacitron_vae and self.use_capacitron_vae: - self.capacitron_vae_layer = CapacitronVAE( - num_mel=self.decoder_output_dim, - encoder_output_dim=self.encoder_in_features, - capacitron_VAE_embedding_dim=self.capacitron_vae.capacitron_VAE_embedding_dim, - speaker_embedding_dim=self.embedded_speaker_dim - if self.capacitron_vae.capacitron_use_speaker_embedding - else None, - text_summary_embedding_dim=self.capacitron_vae.capacitron_text_summary_embedding_dim - if self.capacitron_vae.capacitron_use_text_summary_embeddings - else None, - ) - - # backward pass decoder - if self.bidirectional_decoder: - self._init_backward_decoder() - # setup DDC - if self.double_decoder_consistency: - self.coarse_decoder = Decoder( - self.decoder_in_features, - self.decoder_output_dim, - self.ddc_r, - self.attention_type, - self.attention_win, - self.attention_norm, - self.prenet_type, - self.prenet_dropout, - self.use_forward_attn, - self.transition_agent, - self.forward_attn_mask, - self.location_attn, - self.attention_heads, - self.separate_stopnet, - self.max_decoder_steps, - ) - - @staticmethod - def shape_outputs(mel_outputs, mel_outputs_postnet, alignments): - """Final reshape of the model output tensors.""" - mel_outputs = mel_outputs.transpose(1, 2) - mel_outputs_postnet = mel_outputs_postnet.transpose(1, 2) - return mel_outputs, mel_outputs_postnet, alignments - - def forward( # pylint: disable=dangerous-default-value - self, text, text_lengths, mel_specs=None, mel_lengths=None, aux_input={"speaker_ids": None, "d_vectors": None} - ): - """Forward pass for training with Teacher Forcing. - - Shapes: - text: :math:`[B, T_in]` - text_lengths: :math:`[B]` - mel_specs: :math:`[B, T_out, C]` - mel_lengths: :math:`[B]` - aux_input: 'speaker_ids': :math:`[B, 1]` and 'd_vectors': :math:`[B, C]` - """ - aux_input = self._format_aux_input(aux_input) - outputs = {"alignments_backward": None, "decoder_outputs_backward": None} - # compute mask for padding - # B x T_in_max (boolean) - input_mask, output_mask = self.compute_masks(text_lengths, mel_lengths) - # B x D_embed x T_in_max - embedded_inputs = self.embedding(text).transpose(1, 2) - # B x T_in_max x D_en - encoder_outputs = self.encoder(embedded_inputs, text_lengths) - if self.gst and self.use_gst: - # B x gst_dim - encoder_outputs = self.compute_gst(encoder_outputs, mel_specs) - - if self.use_speaker_embedding or self.use_d_vector_file: - if not self.use_d_vector_file: - # B x 1 x speaker_embed_dim - embedded_speakers = self.speaker_embedding(aux_input["speaker_ids"])[:, None] - else: - # B x 1 x speaker_embed_dim - embedded_speakers = torch.unsqueeze(aux_input["d_vectors"], 1) - encoder_outputs = self._concat_speaker_embedding(encoder_outputs, embedded_speakers) - - # capacitron - if self.capacitron_vae and self.use_capacitron_vae: - # B x capacitron_VAE_embedding_dim - encoder_outputs, *capacitron_vae_outputs = self.compute_capacitron_VAE_embedding( - encoder_outputs, - reference_mel_info=[mel_specs, mel_lengths], - text_info=[embedded_inputs.transpose(1, 2), text_lengths] - if self.capacitron_vae.capacitron_use_text_summary_embeddings - else None, - speaker_embedding=embedded_speakers if self.capacitron_vae.capacitron_use_speaker_embedding else None, - ) - else: - capacitron_vae_outputs = None - - encoder_outputs = encoder_outputs * input_mask.unsqueeze(2).expand_as(encoder_outputs) - - # B x mel_dim x T_out -- B x T_out//r x T_in -- B x T_out//r - decoder_outputs, alignments, stop_tokens = self.decoder(encoder_outputs, mel_specs, input_mask) - # sequence masking - if mel_lengths is not None: - decoder_outputs = decoder_outputs * output_mask.unsqueeze(1).expand_as(decoder_outputs) - # B x mel_dim x T_out - postnet_outputs = self.postnet(decoder_outputs) - postnet_outputs = decoder_outputs + postnet_outputs - # sequence masking - if output_mask is not None: - postnet_outputs = postnet_outputs * output_mask.unsqueeze(1).expand_as(postnet_outputs) - # B x T_out x mel_dim -- B x T_out x mel_dim -- B x T_out//r x T_in - decoder_outputs, postnet_outputs, alignments = self.shape_outputs(decoder_outputs, postnet_outputs, alignments) - if self.bidirectional_decoder: - decoder_outputs_backward, alignments_backward = self._backward_pass(mel_specs, encoder_outputs, input_mask) - outputs["alignments_backward"] = alignments_backward - outputs["decoder_outputs_backward"] = decoder_outputs_backward - if self.double_decoder_consistency: - decoder_outputs_backward, alignments_backward = self._coarse_decoder_pass( - mel_specs, encoder_outputs, alignments, input_mask - ) - outputs["alignments_backward"] = alignments_backward - outputs["decoder_outputs_backward"] = decoder_outputs_backward - outputs.update( - { - "model_outputs": postnet_outputs, - "decoder_outputs": decoder_outputs, - "alignments": alignments, - "stop_tokens": stop_tokens, - "capacitron_vae_outputs": capacitron_vae_outputs, - } - ) - return outputs - - @torch.no_grad() - def inference(self, text, aux_input=None): - """Forward pass for inference with no Teacher-Forcing. - - Shapes: - text: :math:`[B, T_in]` - text_lengths: :math:`[B]` - """ - aux_input = self._format_aux_input(aux_input) - embedded_inputs = self.embedding(text).transpose(1, 2) - encoder_outputs = self.encoder.inference(embedded_inputs) - - if self.gst and self.use_gst: - # B x gst_dim - encoder_outputs = self.compute_gst(encoder_outputs, aux_input["style_mel"], aux_input["d_vectors"]) - - if self.capacitron_vae and self.use_capacitron_vae: - if aux_input["style_text"] is not None: - style_text_embedding = self.embedding(aux_input["style_text"]) - style_text_length = torch.tensor([style_text_embedding.size(1)], dtype=torch.int64).to( - encoder_outputs.device - ) # pylint: disable=not-callable - reference_mel_length = ( - torch.tensor([aux_input["style_mel"].size(1)], dtype=torch.int64).to(encoder_outputs.device) - if aux_input["style_mel"] is not None - else None - ) # pylint: disable=not-callable - # B x capacitron_VAE_embedding_dim - encoder_outputs, *_ = self.compute_capacitron_VAE_embedding( - encoder_outputs, - reference_mel_info=[aux_input["style_mel"], reference_mel_length] - if aux_input["style_mel"] is not None - else None, - text_info=[style_text_embedding, style_text_length] if aux_input["style_text"] is not None else None, - speaker_embedding=aux_input["d_vectors"] - if self.capacitron_vae.capacitron_use_speaker_embedding - else None, - ) - - if self.num_speakers > 1: - if not self.use_d_vector_file: - embedded_speakers = self.speaker_embedding(aux_input["speaker_ids"])[None] - # reshape embedded_speakers - if embedded_speakers.ndim == 1: - embedded_speakers = embedded_speakers[None, None, :] - elif embedded_speakers.ndim == 2: - embedded_speakers = embedded_speakers[None, :] - else: - embedded_speakers = aux_input["d_vectors"] - - encoder_outputs = self._concat_speaker_embedding(encoder_outputs, embedded_speakers) - - decoder_outputs, alignments, stop_tokens = self.decoder.inference(encoder_outputs) - postnet_outputs = self.postnet(decoder_outputs) - postnet_outputs = decoder_outputs + postnet_outputs - decoder_outputs, postnet_outputs, alignments = self.shape_outputs(decoder_outputs, postnet_outputs, alignments) - outputs = { - "model_outputs": postnet_outputs, - "decoder_outputs": decoder_outputs, - "alignments": alignments, - "stop_tokens": stop_tokens, - } - return outputs - - def before_backward_pass(self, loss_dict, optimizer) -> None: - # Extracting custom training specific operations for capacitron - # from the trainer - if self.use_capacitron_vae: - loss_dict["capacitron_vae_beta_loss"].backward() - optimizer.first_step() - - def train_step(self, batch: Dict, criterion: torch.nn.Module): - """A single training step. Forward pass and loss computation. - - Args: - batch ([Dict]): A dictionary of input tensors. - criterion ([type]): Callable criterion to compute model loss. - """ - text_input = batch["text_input"] - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - mel_lengths = batch["mel_lengths"] - stop_targets = batch["stop_targets"] - stop_target_lengths = batch["stop_target_lengths"] - speaker_ids = batch["speaker_ids"] - d_vectors = batch["d_vectors"] - - aux_input = {"speaker_ids": speaker_ids, "d_vectors": d_vectors} - outputs = self.forward(text_input, text_lengths, mel_input, mel_lengths, aux_input) - - # set the [alignment] lengths wrt reduction factor for guided attention - if mel_lengths.max() % self.decoder.r != 0: - alignment_lengths = ( - mel_lengths + (self.decoder.r - (mel_lengths.max() % self.decoder.r)) - ) // self.decoder.r - else: - alignment_lengths = mel_lengths // self.decoder.r - - # compute loss - with autocast(enabled=False): # use float32 for the criterion - loss_dict = criterion( - outputs["model_outputs"].float(), - outputs["decoder_outputs"].float(), - mel_input.float(), - None, - outputs["stop_tokens"].float(), - stop_targets.float(), - stop_target_lengths, - outputs["capacitron_vae_outputs"] if self.capacitron_vae else None, - mel_lengths, - None if outputs["decoder_outputs_backward"] is None else outputs["decoder_outputs_backward"].float(), - outputs["alignments"].float(), - alignment_lengths, - None if outputs["alignments_backward"] is None else outputs["alignments_backward"].float(), - text_lengths, - ) - - # compute alignment error (the lower the better ) - align_error = 1 - alignment_diagonal_score(outputs["alignments"]) - loss_dict["align_error"] = align_error - return outputs, loss_dict - - def get_optimizer(self) -> List: - if self.use_capacitron_vae: - return CapacitronOptimizer(self.config, self.named_parameters()) - return get_optimizer(self.config.optimizer, self.config.optimizer_params, self.config.lr, self) - - def get_scheduler(self, optimizer: object): - opt = optimizer.primary_optimizer if self.use_capacitron_vae else optimizer - return get_scheduler(self.config.lr_scheduler, self.config.lr_scheduler_params, opt) - - def before_gradient_clipping(self): - if self.use_capacitron_vae: - # Capacitron model specific gradient clipping - model_params_to_clip = [] - for name, param in self.named_parameters(): - if param.requires_grad: - if name != "capacitron_vae_layer.beta": - model_params_to_clip.append(param) - torch.nn.utils.clip_grad_norm_(model_params_to_clip, self.capacitron_vae.capacitron_grad_clip) - - def _create_logs(self, batch, outputs, ap): - """Create dashboard log information.""" - postnet_outputs = outputs["model_outputs"] - alignments = outputs["alignments"] - alignments_backward = outputs["alignments_backward"] - mel_input = batch["mel_input"] - - pred_spec = postnet_outputs[0].data.cpu().numpy() - gt_spec = mel_input[0].data.cpu().numpy() - align_img = alignments[0].data.cpu().numpy() - - figures = { - "prediction": plot_spectrogram(pred_spec, ap, output_fig=False), - "ground_truth": plot_spectrogram(gt_spec, ap, output_fig=False), - "alignment": plot_alignment(align_img, output_fig=False), - } - - if self.bidirectional_decoder or self.double_decoder_consistency: - figures["alignment_backward"] = plot_alignment(alignments_backward[0].data.cpu().numpy(), output_fig=False) - - # Sample audio - audio = ap.inv_melspectrogram(pred_spec.T) - return figures, {"audio": audio} - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ) -> None: # pylint: disable=no-self-use - """Log training progress.""" - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - def eval_step(self, batch: dict, criterion: nn.Module): - return self.train_step(batch, criterion) - - def eval_log(self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int) -> None: - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - @staticmethod - def init_from_config(config: "Tacotron2Config", samples: Union[List[List], List[Dict]] = None): - """Initiate model from config - - Args: - config (Tacotron2Config): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - """ - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(new_config, samples) - return Tacotron2(new_config, ap, tokenizer, speaker_manager) diff --git a/TTS/TTS/tts/models/tortoise.py b/TTS/TTS/tts/models/tortoise.py deleted file mode 100644 index 16644ff95eee6799f5e78603e2011f63b05a1011..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/models/tortoise.py +++ /dev/null @@ -1,911 +0,0 @@ -import os -import random -from contextlib import contextmanager -from dataclasses import dataclass -from time import time - -import torch -import torch.nn.functional as F -import torchaudio -from coqpit import Coqpit -from tqdm import tqdm - -from TTS.tts.layers.tortoise.arch_utils import TorchMelSpectrogram -from TTS.tts.layers.tortoise.audio_utils import denormalize_tacotron_mel, load_voice, wav_to_univnet_mel -from TTS.tts.layers.tortoise.autoregressive import UnifiedVoice -from TTS.tts.layers.tortoise.classifier import AudioMiniEncoderWithClassifierHead -from TTS.tts.layers.tortoise.clvp import CLVP -from TTS.tts.layers.tortoise.diffusion import SpacedDiffusion, get_named_beta_schedule, space_timesteps -from TTS.tts.layers.tortoise.diffusion_decoder import DiffusionTts -from TTS.tts.layers.tortoise.random_latent_generator import RandomLatentConverter -from TTS.tts.layers.tortoise.tokenizer import VoiceBpeTokenizer -from TTS.tts.layers.tortoise.vocoder import VocConf, VocType -from TTS.tts.layers.tortoise.wav2vec_alignment import Wav2VecAlignment -from TTS.tts.models.base_tts import BaseTTS - - -def pad_or_truncate(t, length): - """ - Utility function for forcing to have the specified sequence length, whether by clipping it or padding it with 0s. - """ - tp = t[..., :length] - if t.shape[-1] == length: - tp = t - elif t.shape[-1] < length: - tp = F.pad(t, (0, length - t.shape[-1])) - return tp - - -def deterministic_state(seed=None): - """ - Sets the random seeds that tortoise uses to the current time() and returns that seed so results can be - reproduced. - """ - seed = int(time()) if seed is None else seed - torch.manual_seed(seed) - random.seed(seed) - # Can't currently set this because of CUBLAS. TODO: potentially enable it if necessary. - # torch.use_deterministic_algorithms(True) - - return seed - - -def load_discrete_vocoder_diffuser( - trained_diffusion_steps=4000, - desired_diffusion_steps=200, - cond_free=True, - cond_free_k=1, - sampler="ddim", -): - """ - Helper function to load a GaussianDiffusion instance configured for use as a vocoder. - """ - return SpacedDiffusion( - use_timesteps=space_timesteps(trained_diffusion_steps, [desired_diffusion_steps]), - model_mean_type="epsilon", - model_var_type="learned_range", - loss_type="mse", - betas=get_named_beta_schedule("linear", trained_diffusion_steps), - conditioning_free=cond_free, - conditioning_free_k=cond_free_k, - sampler=sampler, - ) - - -def format_conditioning(clip, cond_length=132300, device="cuda", **kwargs): - """ - Converts the given conditioning signal to a MEL spectrogram and clips it as expected by the models. - """ - gap = clip.shape[-1] - cond_length - if gap < 0: - clip = F.pad(clip, pad=(0, abs(gap))) - elif gap > 0: - rand_start = random.randint(0, gap) - clip = clip[:, rand_start : rand_start + cond_length] - mel_clip = TorchMelSpectrogram(**kwargs)(clip.unsqueeze(0)).squeeze(0) - return mel_clip.unsqueeze(0).to(device) - - -def fix_autoregressive_output(codes, stop_token, complain=True): - """ - This function performs some padding on coded audio that fixes a mismatch issue between what the diffusion model was - trained on and what the autoregressive code generator creates (which has no padding or end). - This is highly specific to the DVAE being used, so this particular coding will not necessarily work if used with - a different DVAE. This can be inferred by feeding a audio clip padded with lots of zeros on the end through the DVAE - and copying out the last few codes. - - Failing to do this padding will produce speech with a harsh end that sounds like "BLAH" or similar. - """ - # Strip off the autoregressive stop token and add padding. - stop_token_indices = (codes == stop_token).nonzero() - if len(stop_token_indices) == 0: - if complain: - print( - "No stop tokens found in one of the generated voice clips. This typically means the spoken audio is " - "too long. In some cases, the output will still be good, though. Listen to it and if it is missing words, " - "try breaking up your input text." - ) - return codes - codes[stop_token_indices] = 83 - stm = stop_token_indices.min().item() - codes[stm:] = 83 - if stm - 3 < codes.shape[0]: - codes[-3] = 45 - codes[-2] = 45 - codes[-1] = 248 - return codes - - -def do_spectrogram_diffusion( - diffusion_model, - diffuser, - latents, - conditioning_latents, - temperature=1, - verbose=True, -): - """ - Uses the specified diffusion model to convert discrete codes into a spectrogram. - """ - with torch.no_grad(): - output_seq_len = ( - latents.shape[1] * 4 * 24000 // 22050 - ) # This diffusion model converts from 22kHz spectrogram codes to a 24kHz spectrogram signal. - output_shape = (latents.shape[0], 100, output_seq_len) - precomputed_embeddings = diffusion_model.timestep_independent( - latents, conditioning_latents, output_seq_len, False - ) - - noise = torch.randn(output_shape, device=latents.device) * temperature - mel = diffuser.sample_loop( - diffusion_model, - output_shape, - noise=noise, - model_kwargs={"precomputed_aligned_embeddings": precomputed_embeddings}, - progress=verbose, - ) - return denormalize_tacotron_mel(mel)[:, :, :output_seq_len] - - -def classify_audio_clip(clip, model_dir): - """ - Returns whether or not Tortoises' classifier thinks the given clip came from Tortoise. - :param clip: torch tensor containing audio waveform data (get it from load_audio) - :return: True if the clip was classified as coming from Tortoise and false if it was classified as real. - """ - classifier = AudioMiniEncoderWithClassifierHead( - 2, - spec_dim=1, - embedding_dim=512, - depth=5, - downsample_factor=4, - resnet_blocks=2, - attn_blocks=4, - num_attn_heads=4, - base_channels=32, - dropout=0, - kernel_size=5, - distribute_zero_label=False, - ) - classifier.load_state_dict(torch.load(os.path.join(model_dir, "classifier.pth"), map_location=torch.device("cpu"))) - clip = clip.cpu().unsqueeze(0) - results = F.softmax(classifier(clip), dim=-1) - return results[0][0] - - -def pick_best_batch_size_for_gpu(): - """ - Tries to pick a batch size that will fit in your GPU. These sizes aren't guaranteed to work, but they should give - you a good shot. - """ - if torch.cuda.is_available(): - _, available = torch.cuda.mem_get_info() - availableGb = available / (1024**3) - batch_size = 1 - if availableGb > 14: - batch_size = 16 - elif availableGb > 10: - batch_size = 8 - elif availableGb > 7: - batch_size = 4 - return batch_size - - -@dataclass -class TortoiseAudioConfig(Coqpit): - sample_rate: int = 22050 - diffusion_sample_rate: int = 24000 - output_sample_rate: int = 24000 - - -@dataclass -class TortoiseArgs(Coqpit): - """A dataclass to represent Tortoise model arguments that define the model structure. - - Args: - autoregressive_batch_size (int): The size of the auto-regressive batch. - enable_redaction (bool, optional): Whether to enable redaction. Defaults to True. - high_vram (bool, optional): Whether to use high VRAM. Defaults to False. - kv_cache (bool, optional): Whether to use the kv_cache. Defaults to True. - ar_checkpoint (str, optional): The checkpoint for the autoregressive model. Defaults to None. - clvp_checkpoint (str, optional): The checkpoint for the ConditionalLatentVariablePerseq model. Defaults to None. - diff_checkpoint (str, optional): The checkpoint for the DiffTTS model. Defaults to None. - num_chars (int, optional): The maximum number of characters to generate. Defaults to 255. - vocoder (VocType, optional): The vocoder to use for synthesis. Defaults to VocConf.Univnet. - - For UnifiedVoice model: - ar_max_mel_tokens (int, optional): The maximum mel tokens for the autoregressive model. Defaults to 604. - ar_max_text_tokens (int, optional): The maximum text tokens for the autoregressive model. Defaults to 402. - ar_max_conditioning_inputs (int, optional): The maximum conditioning inputs for the autoregressive model. Defaults to 2. - ar_layers (int, optional): The number of layers for the autoregressive model. Defaults to 30. - ar_model_dim (int, optional): The model dimension for the autoregressive model. Defaults to 1024. - ar_heads (int, optional): The number of heads for the autoregressive model. Defaults to 16. - ar_number_text_tokens (int, optional): The number of text tokens for the autoregressive model. Defaults to 255. - ar_start_text_token (int, optional): The start text token for the autoregressive model. Defaults to 255. - ar_checkpointing (bool, optional): Whether to use checkpointing for the autoregressive model. Defaults to False. - ar_train_solo_embeddings (bool, optional): Whether to train embeddings for the autoregressive model. Defaults to False. - - For DiffTTS model: - diff_model_channels (int, optional): The number of channels for the DiffTTS model. Defaults to 1024. - diff_num_layers (int, optional): The number of layers for the DiffTTS model. Defaults to 10. - diff_in_channels (int, optional): The input channels for the DiffTTS model. Defaults to 100. - diff_out_channels (int, optional): The output channels for the DiffTTS model. Defaults to 200. - diff_in_latent_channels (int, optional): The input latent channels for the DiffTTS model. Defaults to 1024. - diff_in_tokens (int, optional): The input tokens for the DiffTTS model. Defaults to 8193. - diff_dropout (int, optional): The dropout percentage for the DiffTTS model. Defaults to 0. - diff_use_fp16 (bool, optional): Whether to use fp16 for the DiffTTS model. Defaults to False. - diff_num_heads (int, optional): The number of heads for the DiffTTS model. Defaults to 16. - diff_layer_drop (int, optional): The layer dropout percentage for the DiffTTS model. Defaults to 0. - diff_unconditioned_percentage (int, optional): The percentage of unconditioned inputs for the DiffTTS model. Defaults to 0. - - For ConditionalLatentVariablePerseq model: - clvp_dim_text (int): The dimension of the text input for the CLVP module. Defaults to 768. - clvp_dim_speech (int): The dimension of the speech input for the CLVP module. Defaults to 768. - clvp_dim_latent (int): The dimension of the latent representation for the CLVP module. Defaults to 768. - clvp_num_text_tokens (int): The number of text tokens used by the CLVP module. Defaults to 256. - clvp_text_enc_depth (int): The depth of the text encoder in the CLVP module. Defaults to 20. - clvp_text_seq_len (int): The maximum sequence length of the text input for the CLVP module. Defaults to 350. - clvp_text_heads (int): The number of attention heads used by the text encoder in the CLVP module. Defaults to 12. - clvp_num_speech_tokens (int): The number of speech tokens used by the CLVP module. Defaults to 8192. - clvp_speech_enc_depth (int): The depth of the speech encoder in the CLVP module. Defaults to 20. - clvp_speech_heads (int): The number of attention heads used by the speech encoder in the CLVP module. Defaults to 12. - clvp_speech_seq_len (int): The maximum sequence length of the speech input for the CLVP module. Defaults to 430. - clvp_use_xformers (bool): A flag indicating whether the model uses transformers in the CLVP module. Defaults to True. - duration_const (int): A constant value used in the model. Defaults to 102400. - """ - - autoregressive_batch_size: int = 1 - enable_redaction: bool = False - high_vram: bool = False - kv_cache: bool = True - ar_checkpoint: str = None - clvp_checkpoint: str = None - diff_checkpoint: str = None - num_chars: int = 255 - vocoder: VocType = VocConf.Univnet - - # UnifiedVoice params - ar_max_mel_tokens: int = 604 - ar_max_text_tokens: int = 402 - ar_max_conditioning_inputs: int = 2 - ar_layers: int = 30 - ar_model_dim: int = 1024 - ar_heads: int = 16 - ar_number_text_tokens: int = 255 - ar_start_text_token: int = 255 - ar_checkpointing: bool = False - ar_train_solo_embeddings: bool = False - - # DiffTTS params - diff_model_channels: int = 1024 - diff_num_layers: int = 10 - diff_in_channels: int = 100 - diff_out_channels: int = 200 - diff_in_latent_channels: int = 1024 - diff_in_tokens: int = 8193 - diff_dropout: int = 0 - diff_use_fp16: bool = False - diff_num_heads: int = 16 - diff_layer_drop: int = 0 - diff_unconditioned_percentage: int = 0 - - # clvp params - clvp_dim_text: int = 768 - clvp_dim_speech: int = 768 - clvp_dim_latent: int = 768 - clvp_num_text_tokens: int = 256 - clvp_text_enc_depth: int = 20 - clvp_text_seq_len: int = 350 - clvp_text_heads: int = 12 - clvp_num_speech_tokens: int = 8192 - clvp_speech_enc_depth: int = 20 - clvp_speech_heads: int = 12 - clvp_speech_seq_len: int = 430 - clvp_use_xformers: bool = True - # constants - duration_const: int = 102400 - - -class Tortoise(BaseTTS): - """Tortoise model class. - - Currently only supports inference. - - Examples: - >>> from TTS.tts.configs.tortoise_config import TortoiseConfig - >>> from TTS.tts.models.tortoise import Tortoise - >>> config = TortoiseConfig() - >>> model = Tortoise.inif_from_config(config) - >>> model.load_checkpoint(config, checkpoint_dir="paths/to/models_dir/", eval=True) - """ - - def __init__(self, config: Coqpit): - super().__init__(config, ap=None, tokenizer=None) - self.mel_norm_path = None - self.config = config - self.ar_checkpoint = self.args.ar_checkpoint - self.diff_checkpoint = self.args.diff_checkpoint # TODO: check if this is even needed - self.models_dir = config.model_dir - self.autoregressive_batch_size = ( - pick_best_batch_size_for_gpu() - if self.args.autoregressive_batch_size is None - else self.args.autoregressive_batch_size - ) - self.enable_redaction = self.args.enable_redaction - self.device = torch.device("cuda" if torch.cuda.is_available() else "cpu") - if self.enable_redaction: - self.aligner = Wav2VecAlignment() - - self.tokenizer = VoiceBpeTokenizer() - - self.autoregressive = UnifiedVoice( - max_mel_tokens=self.args.ar_max_mel_tokens, - max_text_tokens=self.args.ar_max_text_tokens, - max_conditioning_inputs=self.args.ar_max_conditioning_inputs, - layers=self.args.ar_layers, - model_dim=self.args.ar_model_dim, - heads=self.args.ar_heads, - number_text_tokens=self.args.ar_number_text_tokens, - start_text_token=self.args.ar_start_text_token, - checkpointing=self.args.ar_checkpointing, - train_solo_embeddings=self.args.ar_train_solo_embeddings, - ).cpu() - - self.diffusion = DiffusionTts( - model_channels=self.args.diff_model_channels, - num_layers=self.args.diff_num_layers, - in_channels=self.args.diff_in_channels, - out_channels=self.args.diff_out_channels, - in_latent_channels=self.args.diff_in_latent_channels, - in_tokens=self.args.diff_in_tokens, - dropout=self.args.diff_dropout, - use_fp16=self.args.diff_use_fp16, - num_heads=self.args.diff_num_heads, - layer_drop=self.args.diff_layer_drop, - unconditioned_percentage=self.args.diff_unconditioned_percentage, - ).cpu() - - self.clvp = CLVP( - dim_text=self.args.clvp_dim_text, - dim_speech=self.args.clvp_dim_speech, - dim_latent=self.args.clvp_dim_latent, - num_text_tokens=self.args.clvp_num_text_tokens, - text_enc_depth=self.args.clvp_text_enc_depth, - text_seq_len=self.args.clvp_text_seq_len, - text_heads=self.args.clvp_text_heads, - num_speech_tokens=self.args.clvp_num_speech_tokens, - speech_enc_depth=self.args.clvp_speech_enc_depth, - speech_heads=self.args.clvp_speech_heads, - speech_seq_len=self.args.clvp_speech_seq_len, - use_xformers=self.args.clvp_use_xformers, - ).cpu() - - self.vocoder = self.args.vocoder.value.constructor().cpu() - - # Random latent generators (RLGs) are loaded lazily. - self.rlg_auto = None - self.rlg_diffusion = None - - if self.args.high_vram: - self.autoregressive = self.autoregressive.to(self.device) - self.diffusion = self.diffusion.to(self.device) - self.clvp = self.clvp.to(self.device) - self.vocoder = self.vocoder.to(self.device) - self.high_vram = self.args.high_vram - - @contextmanager - def temporary_cuda(self, model): - if self.high_vram: - yield model - else: - m = model.to(self.device) - yield m - m = model.cpu() - - def get_conditioning_latents( - self, - voice_samples, - return_mels=False, - latent_averaging_mode=0, - original_tortoise=False, - ): - """ - Transforms one or more voice_samples into a tuple (autoregressive_conditioning_latent, diffusion_conditioning_latent). - These are expressive learned latents that encode aspects of the provided clips like voice, intonation, and acoustic - properties. - :param voice_samples: List of arbitrary reference clips, which should be *pairs* of torch tensors containing arbitrary kHz waveform data. - :param latent_averaging_mode: 0/1/2 for following modes: - 0 - latents will be generated as in original tortoise, using ~4.27s from each voice sample, averaging latent across all samples - 1 - latents will be generated using (almost) entire voice samples, averaged across all the ~4.27s chunks - 2 - latents will be generated using (almost) entire voice samples, averaged per voice sample - """ - assert latent_averaging_mode in [ - 0, - 1, - 2, - ], "latent_averaging mode has to be one of (0, 1, 2)" - - with torch.no_grad(): - voice_samples = [[v.to(self.device) for v in ls] for ls in voice_samples] - - auto_conds = [] - for ls in voice_samples: - auto_conds.append(format_conditioning(ls[0], device=self.device, mel_norm_file=self.mel_norm_path)) - auto_conds = torch.stack(auto_conds, dim=1) - with self.temporary_cuda(self.autoregressive) as ar: - auto_latent = ar.get_conditioning(auto_conds) - - diffusion_conds = [] - - DURS_CONST = self.args.duration_const - for ls in voice_samples: - # The diffuser operates at a sample rate of 24000 (except for the latent inputs) - sample = torchaudio.functional.resample(ls[0], 22050, 24000) if original_tortoise else ls[1] - if latent_averaging_mode == 0: - sample = pad_or_truncate(sample, DURS_CONST) - cond_mel = wav_to_univnet_mel( - sample.to(self.device), - do_normalization=False, - device=self.device, - ) - diffusion_conds.append(cond_mel) - else: - from math import ceil - - if latent_averaging_mode == 2: - temp_diffusion_conds = [] - for chunk in range(ceil(sample.shape[1] / DURS_CONST)): - current_sample = sample[:, chunk * DURS_CONST : (chunk + 1) * DURS_CONST] - current_sample = pad_or_truncate(current_sample, DURS_CONST) - cond_mel = wav_to_univnet_mel( - current_sample.to(self.device), - do_normalization=False, - device=self.device, - ) - if latent_averaging_mode == 1: - diffusion_conds.append(cond_mel) - elif latent_averaging_mode == 2: - temp_diffusion_conds.append(cond_mel) - if latent_averaging_mode == 2: - diffusion_conds.append(torch.stack(temp_diffusion_conds).mean(0)) - diffusion_conds = torch.stack(diffusion_conds, dim=1) - - with self.temporary_cuda(self.diffusion) as diffusion: - diffusion_latent = diffusion.get_conditioning(diffusion_conds) - - if return_mels: - return auto_latent, diffusion_latent, auto_conds, diffusion_conds - return auto_latent, diffusion_latent - - def get_random_conditioning_latents(self): - # Lazy-load the RLG models. - if self.rlg_auto is None: - self.rlg_auto = RandomLatentConverter(1024).eval() - self.rlg_auto.load_state_dict( - torch.load( - os.path.join(self.models_dir, "rlg_auto.pth"), - map_location=torch.device("cpu"), - ) - ) - self.rlg_diffusion = RandomLatentConverter(2048).eval() - self.rlg_diffusion.load_state_dict( - torch.load( - os.path.join(self.models_dir, "rlg_diffuser.pth"), - map_location=torch.device("cpu"), - ) - ) - with torch.no_grad(): - return self.rlg_auto(torch.tensor([0.0])), self.rlg_diffusion(torch.tensor([0.0])) - - def synthesize(self, text, config, speaker_id="random", voice_dirs=None, **kwargs): - """Synthesize speech with the given input text. - - Args: - text (str): Input text. - config (TortoiseConfig): Config with inference parameters. - speaker_id (str): One of the available speaker names. If `random`, it generates a random speaker. - voice_dirs (List[str]): List of paths that host reference audio files for speakers. Defaults to None. - **kwargs: Inference settings. See `inference()`. - - Returns: - A dictionary of the output values with `wav` as output waveform, `deterministic_seed` as seed used at inference, - `text_input` as text token IDs after tokenizer, `voice_samples` as samples used for cloning, `conditioning_latents` - as latents used at inference. - - """ - - speaker_id = "random" if speaker_id is None else speaker_id - - if voice_dirs is not None: - voice_dirs = [voice_dirs] - voice_samples, conditioning_latents = load_voice(speaker_id, voice_dirs) - - else: - voice_samples, conditioning_latents = load_voice(speaker_id) - - outputs = self.inference_with_config( - text, config, voice_samples=voice_samples, conditioning_latents=conditioning_latents, **kwargs - ) - - return_dict = { - "wav": outputs["wav"], - "deterministic_seed": outputs["deterministic_seed"], - "text_inputs": outputs["text"], - "voice_samples": outputs["voice_samples"], - "conditioning_latents": outputs["conditioning_latents"], - } - - return return_dict - - def inference_with_config(self, text, config, **kwargs): - """ - inference with config - #TODO describe in detail - """ - # Use generally found best tuning knobs for generation. - settings = { - "temperature": config.temperature, - "length_penalty": config.length_penalty, - "repetition_penalty": config.repetition_penalty, - "top_p": config.top_p, - "cond_free_k": config.cond_free_k, - "diffusion_temperature": config.diffusion_temperature, - "sampler": config.sampler, - } - # Presets are defined here. - presets = { - "single_sample": { - "num_autoregressive_samples": 8, - "diffusion_iterations": 10, - "sampler": "ddim", - }, - "ultra_fast": { - "num_autoregressive_samples": 16, - "diffusion_iterations": 10, - "sampler": "ddim", - }, - "ultra_fast_old": { - "num_autoregressive_samples": 16, - "diffusion_iterations": 30, - "cond_free": False, - }, - "very_fast": { - "num_autoregressive_samples": 32, - "diffusion_iterations": 30, - "sampler": "dpm++2m", - }, - "fast": { - "num_autoregressive_samples": 5, - "diffusion_iterations": 50, - "sampler": "ddim", - }, - "fast_old": {"num_autoregressive_samples": 96, "diffusion_iterations": 80}, - "standard": { - "num_autoregressive_samples": 5, - "diffusion_iterations": 200, - }, - "high_quality": { - "num_autoregressive_samples": 256, - "diffusion_iterations": 400, - }, - } - if "preset" in kwargs: - settings.update(presets[kwargs["preset"]]) - kwargs.pop("preset") - settings.update(kwargs) # allow overriding of preset settings with kwargs - return self.inference(text, **settings) - - def inference( - self, - text, - voice_samples=None, - conditioning_latents=None, - k=1, - verbose=True, - use_deterministic_seed=None, - return_deterministic_state=False, - latent_averaging_mode=0, - # autoregressive generation parameters follow - num_autoregressive_samples=16, - temperature=0.8, - length_penalty=1, - repetition_penalty=2.0, - top_p=0.8, - max_mel_tokens=500, - # diffusion generation parameters follow - diffusion_iterations=100, - cond_free=True, - cond_free_k=2, - diffusion_temperature=1.0, - sampler="ddim", - half=True, - original_tortoise=False, - **hf_generate_kwargs, - ): - """ - This function produces an audio clip of the given text being spoken with the given reference voice. - - Args: - text: (str) Text to be spoken. - voice_samples: (List[Tuple[torch.Tensor]]) List of an arbitrary number of reference clips, which should be tuple-pairs - of torch tensors containing arbitrary kHz waveform data. - conditioning_latents: (Tuple[autoregressive_conditioning_latent, diffusion_conditioning_latent]) A tuple of - (autoregressive_conditioning_latent, diffusion_conditioning_latent), which can be provided in lieu - of voice_samples. This is ignored unless `voice_samples=None`. Conditioning latents can be retrieved - via `get_conditioning_latents()`. - k: (int) The number of returned clips. The most likely (as determined by Tortoises' CLVP model) clips are returned. - latent_averaging_mode: (int) 0/1/2 for following modes: - 0 - latents will be generated as in original tortoise, using ~4.27s from each voice sample, averaging latent across all samples - 1 - latents will be generated using (almost) entire voice samples, averaged across all the ~4.27s chunks - 2 - latents will be generated using (almost) entire voice samples, averaged per voice sample - verbose: (bool) Whether or not to print log messages indicating the progress of creating a clip. Default=true. - num_autoregressive_samples: (int) Number of samples taken from the autoregressive model, all of which are filtered using CLVP. - As Tortoise is a probabilistic model, more samples means a higher probability of creating something "great". - temperature: (float) The softmax temperature of the autoregressive model. - length_penalty: (float) A length penalty applied to the autoregressive decoder. Higher settings causes the model to produce more terse outputs. - repetition_penalty: (float) A penalty that prevents the autoregressive decoder from repeating itself during decoding. Can be used to reduce - the incidence of long silences or "uhhhhhhs", etc. - top_p: (float) P value used in nucleus sampling. (0,1]. Lower values mean the decoder produces more "likely" (aka boring) outputs. - max_mel_tokens: (int) Restricts the output length. (0,600] integer. Each unit is 1/20 of a second. - typical_sampling: (bool) Turns typical sampling on or off. This sampling mode is discussed in this paper: https://arxiv.org/abs/2202.00666 - I was interested in the premise, but the results were not as good as I was hoping. This is off by default, but could use some tuning. - typical_mass: (float) The typical_mass parameter from the typical_sampling algorithm. - diffusion_iterations: (int) Number of diffusion steps to perform. [0,4000]. More steps means the network has more chances to iteratively - refine the output, which should theoretically mean a higher quality output. Generally a value above 250 is not noticeably better, however. - cond_free: (bool) Whether or not to perform conditioning-free diffusion. Conditioning-free diffusion performs two forward passes for - each diffusion step: one with the outputs of the autoregressive model and one with no conditioning priors. The output of the two - is blended according to the cond_free_k value below. Conditioning-free diffusion is the real deal, and dramatically improves realism. - cond_free_k: (float) Knob that determines how to balance the conditioning free signal with the conditioning-present signal. [0,inf]. - As cond_free_k increases, the output becomes dominated by the conditioning-free signal. - diffusion_temperature: (float) Controls the variance of the noise fed into the diffusion model. [0,1]. Values at 0 - are the "mean" prediction of the diffusion network and will sound bland and smeared. - hf_generate_kwargs: (**kwargs) The huggingface Transformers generate API is used for the autoregressive transformer. - Extra keyword args fed to this function get forwarded directly to that API. Documentation - here: https://huggingface.co/docs/transformers/internal/generation_utils - - Returns: - Generated audio clip(s) as a torch tensor. Shape 1,S if k=1 else, (k,1,S) where S is the sample length. - Sample rate is 24kHz. - """ - deterministic_seed = deterministic_state(seed=use_deterministic_seed) - - text_tokens = torch.IntTensor(self.tokenizer.encode(text)).unsqueeze(0).to(self.device) - text_tokens = F.pad(text_tokens, (0, 1)) # This may not be necessary. - assert ( - text_tokens.shape[-1] < 400 - ), "Too much text provided. Break the text up into separate segments and re-try inference." - - if voice_samples is not None: - ( - auto_conditioning, - diffusion_conditioning, - _, - _, - ) = self.get_conditioning_latents( - voice_samples, - return_mels=True, - latent_averaging_mode=latent_averaging_mode, - original_tortoise=original_tortoise, - ) - elif conditioning_latents is not None: - auto_conditioning, diffusion_conditioning = conditioning_latents - else: - ( - auto_conditioning, - diffusion_conditioning, - ) = self.get_random_conditioning_latents() - auto_conditioning = auto_conditioning.to(self.device) - diffusion_conditioning = diffusion_conditioning.to(self.device) - - diffuser = load_discrete_vocoder_diffuser( - desired_diffusion_steps=diffusion_iterations, cond_free=cond_free, cond_free_k=cond_free_k, sampler=sampler - ) - - # in the case of single_sample, - orig_batch_size = self.autoregressive_batch_size - while num_autoregressive_samples % self.autoregressive_batch_size: - self.autoregressive_batch_size //= 2 - with torch.no_grad(): - samples = [] - num_batches = num_autoregressive_samples // self.autoregressive_batch_size - stop_mel_token = self.autoregressive.stop_mel_token - calm_token = ( - 83 # This is the token for coding silence, which is fixed in place with "fix_autoregressive_output" - ) - self.autoregressive = self.autoregressive.to(self.device) - if verbose: - print("Generating autoregressive samples..") - with self.temporary_cuda(self.autoregressive) as autoregressive, torch.autocast( - device_type="cuda", dtype=torch.float16, enabled=half - ): - for b in tqdm(range(num_batches), disable=not verbose): - codes = autoregressive.inference_speech( - auto_conditioning, - text_tokens, - do_sample=True, - top_p=top_p, - temperature=temperature, - num_return_sequences=self.autoregressive_batch_size, - length_penalty=length_penalty, - repetition_penalty=repetition_penalty, - max_generate_length=max_mel_tokens, - **hf_generate_kwargs, - ) - padding_needed = max_mel_tokens - codes.shape[1] - codes = F.pad(codes, (0, padding_needed), value=stop_mel_token) - samples.append(codes) - self.autoregressive_batch_size = orig_batch_size # in the case of single_sample - - clip_results = [] - with self.temporary_cuda(self.clvp) as clvp, torch.autocast( - device_type="cuda", dtype=torch.float16, enabled=half - ): - for batch in tqdm(samples, disable=not verbose): - for i in range(batch.shape[0]): - batch[i] = fix_autoregressive_output(batch[i], stop_mel_token) - clvp_res = clvp( - text_tokens.repeat(batch.shape[0], 1), - batch, - return_loss=False, - ) - clip_results.append(clvp_res) - - clip_results = torch.cat(clip_results, dim=0) - samples = torch.cat(samples, dim=0) - best_results = samples[torch.topk(clip_results, k=k).indices] - del samples - - # The diffusion model actually wants the last hidden layer from the autoregressive model as conditioning - # inputs. Re-produce those for the top results. This could be made more efficient by storing all of these - # results, but will increase memory usage. - with self.temporary_cuda(self.autoregressive) as autoregressive: - best_latents = autoregressive( - auto_conditioning.repeat(k, 1), - text_tokens.repeat(k, 1), - torch.tensor([text_tokens.shape[-1]], device=text_tokens.device), - best_results, - torch.tensor( - [best_results.shape[-1] * self.autoregressive.mel_length_compression], - device=text_tokens.device, - ), - return_latent=True, - clip_inputs=False, - ) - del auto_conditioning - - if verbose: - print("Transforming autoregressive outputs into audio..") - wav_candidates = [] - for b in range(best_results.shape[0]): - codes = best_results[b].unsqueeze(0) - latents = best_latents[b].unsqueeze(0) - - # Find the first occurrence of the "calm" token and trim the codes to that. - ctokens = 0 - for code in range(codes.shape[-1]): - if codes[0, code] == calm_token: - ctokens += 1 - else: - ctokens = 0 - if ctokens > 8: # 8 tokens gives the diffusion model some "breathing room" to terminate speech. - latents = latents[:, :code] - break - with self.temporary_cuda(self.diffusion) as diffusion: - mel = do_spectrogram_diffusion( - diffusion, - diffuser, - latents, - diffusion_conditioning, - temperature=diffusion_temperature, - verbose=verbose, - ) - with self.temporary_cuda(self.vocoder) as vocoder: - wav = vocoder.inference(mel) - wav_candidates.append(wav.cpu()) - - def potentially_redact(clip, text): - if self.enable_redaction: - return self.aligner.redact(clip.squeeze(1), text).unsqueeze(1) - return clip - - wav_candidates = [potentially_redact(wav_candidate, text) for wav_candidate in wav_candidates] - - if len(wav_candidates) > 1: - res = wav_candidates - else: - res = wav_candidates[0] - - return_dict = { - "wav": res, - "deterministic_seed": None, - "text": None, - "voice_samples": None, - "conditioning_latents": None, - } - if return_deterministic_state: - return_dict = { - "wav": res, - "deterministic_seed": deterministic_seed, - "text": text, - "voice_samples": voice_samples, - "conditioning_latents": conditioning_latents, - } - return return_dict - - def forward(self): - raise NotImplementedError("Tortoise Training is not implemented") - - def eval_step(self): - raise NotImplementedError("Tortoise Training is not implemented") - - @staticmethod - def init_from_config(config: "TortoiseConfig", **kwargs): # pylint: disable=unused-argument - return Tortoise(config) - - def load_checkpoint( - self, - config, - checkpoint_dir, - ar_checkpoint_path=None, - diff_checkpoint_path=None, - clvp_checkpoint_path=None, - vocoder_checkpoint_path=None, - eval=False, - strict=True, - **kwargs, - ): # pylint: disable=unused-argument, redefined-builtin - """Load a model checkpoints from a directory. This model is with multiple checkpoint files and it - expects to have all the files to be under the given `checkpoint_dir` with the rigth names. - If eval is True, set the model to eval mode. - - Args: - config (TortoiseConfig): The model config. - checkpoint_dir (str): The directory where the checkpoints are stored. - ar_checkpoint_path (str, optional): The path to the autoregressive checkpoint. Defaults to None. - diff_checkpoint_path (str, optional): The path to the diffusion checkpoint. Defaults to None. - clvp_checkpoint_path (str, optional): The path to the CLVP checkpoint. Defaults to None. - vocoder_checkpoint_path (str, optional): The path to the vocoder checkpoint. Defaults to None. - eval (bool, optional): Whether to set the model to eval mode. Defaults to False. - strict (bool, optional): Whether to load the model strictly. Defaults to True. - """ - if self.models_dir is None: - self.models_dir = checkpoint_dir - ar_path = ar_checkpoint_path or os.path.join(checkpoint_dir, "autoregressive.pth") - diff_path = diff_checkpoint_path or os.path.join(checkpoint_dir, "diffusion_decoder.pth") - clvp_path = clvp_checkpoint_path or os.path.join(checkpoint_dir, "clvp2.pth") - vocoder_checkpoint_path = vocoder_checkpoint_path or os.path.join(checkpoint_dir, "vocoder.pth") - self.mel_norm_path = os.path.join(checkpoint_dir, "mel_norms.pth") - - if os.path.exists(ar_path): - # remove keys from the checkpoint that are not in the model - checkpoint = torch.load(ar_path, map_location=torch.device("cpu")) - - # strict set False - # due to removed `bias` and `masked_bias` changes in Transformers - self.autoregressive.load_state_dict(checkpoint, strict=False) - - if os.path.exists(diff_path): - self.diffusion.load_state_dict(torch.load(diff_path), strict=strict) - - if os.path.exists(clvp_path): - self.clvp.load_state_dict(torch.load(clvp_path), strict=strict) - - if os.path.exists(vocoder_checkpoint_path): - self.vocoder.load_state_dict( - config.model_args.vocoder.value.optionally_index( - torch.load( - vocoder_checkpoint_path, - map_location=torch.device("cpu"), - ) - ) - ) - - if eval: - self.autoregressive.post_init_gpt2_config(self.args.kv_cache) - self.autoregressive.eval() - self.diffusion.eval() - self.clvp.eval() - self.vocoder.eval() - - def train_step(self): - raise NotImplementedError("Tortoise Training is not implemented") diff --git a/TTS/TTS/tts/models/vits.py b/TTS/TTS/tts/models/vits.py deleted file mode 100644 index d9b1f59618ab7e0ebc4cabc9a9ac40fdb9843d99..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/models/vits.py +++ /dev/null @@ -1,1999 +0,0 @@ -import math -import os -from dataclasses import dataclass, field, replace -from itertools import chain -from typing import Dict, List, Tuple, Union - -import numpy as np -import torch -import torch.distributed as dist -import torchaudio -from coqpit import Coqpit -from librosa.filters import mel as librosa_mel_fn -from torch import nn -from torch.cuda.amp.autocast_mode import autocast -from torch.nn import functional as F -from torch.utils.data import DataLoader -from torch.utils.data.sampler import WeightedRandomSampler -from trainer.torch import DistributedSampler, DistributedSamplerWrapper -from trainer.trainer_utils import get_optimizer, get_scheduler - -from TTS.tts.configs.shared_configs import CharactersConfig -from TTS.tts.datasets.dataset import TTSDataset, _parse_sample -from TTS.tts.layers.glow_tts.duration_predictor import DurationPredictor -from TTS.tts.layers.vits.discriminator import VitsDiscriminator -from TTS.tts.layers.vits.networks import PosteriorEncoder, ResidualCouplingBlocks, TextEncoder -from TTS.tts.layers.vits.stochastic_duration_predictor import StochasticDurationPredictor -from TTS.tts.models.base_tts import BaseTTS -from TTS.tts.utils.fairseq import rehash_fairseq_vits_checkpoint -from TTS.tts.utils.helpers import generate_path, maximum_path, rand_segments, segment, sequence_mask -from TTS.tts.utils.languages import LanguageManager -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.synthesis import synthesis -from TTS.tts.utils.text.characters import BaseCharacters, BaseVocabulary, _characters, _pad, _phonemes, _punctuations -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment -from TTS.utils.io import load_fsspec -from TTS.utils.samplers import BucketBatchSampler -from TTS.vocoder.models.hifigan_generator import HifiganGenerator -from TTS.vocoder.utils.generic_utils import plot_results - -############################## -# IO / Feature extraction -############################## - -# pylint: disable=global-statement -hann_window = {} -mel_basis = {} - - -@torch.no_grad() -def weights_reset(m: nn.Module): - # check if the current module has reset_parameters and if it is reset the weight - reset_parameters = getattr(m, "reset_parameters", None) - if callable(reset_parameters): - m.reset_parameters() - - -def get_module_weights_sum(mdl: nn.Module): - dict_sums = {} - for name, w in mdl.named_parameters(): - if "weight" in name: - value = w.data.sum().item() - dict_sums[name] = value - return dict_sums - - -def load_audio(file_path): - """Load the audio file normalized in [-1, 1] - - Return Shapes: - - x: :math:`[1, T]` - """ - x, sr = torchaudio.load(file_path) - assert (x > 1).sum() + (x < -1).sum() == 0 - return x, sr - - -def _amp_to_db(x, C=1, clip_val=1e-5): - return torch.log(torch.clamp(x, min=clip_val) * C) - - -def _db_to_amp(x, C=1): - return torch.exp(x) / C - - -def amp_to_db(magnitudes): - output = _amp_to_db(magnitudes) - return output - - -def db_to_amp(magnitudes): - output = _db_to_amp(magnitudes) - return output - - -def wav_to_spec(y, n_fft, hop_length, win_length, center=False): - """ - Args Shapes: - - y : :math:`[B, 1, T]` - - Return Shapes: - - spec : :math:`[B,C,T]` - """ - y = y.squeeze(1) - - if torch.min(y) < -1.0: - print("min value is ", torch.min(y)) - if torch.max(y) > 1.0: - print("max value is ", torch.max(y)) - - global hann_window - dtype_device = str(y.dtype) + "_" + str(y.device) - wnsize_dtype_device = str(win_length) + "_" + dtype_device - if wnsize_dtype_device not in hann_window: - hann_window[wnsize_dtype_device] = torch.hann_window(win_length).to(dtype=y.dtype, device=y.device) - - y = torch.nn.functional.pad( - y.unsqueeze(1), - (int((n_fft - hop_length) / 2), int((n_fft - hop_length) / 2)), - mode="reflect", - ) - y = y.squeeze(1) - - spec = torch.stft( - y, - n_fft, - hop_length=hop_length, - win_length=win_length, - window=hann_window[wnsize_dtype_device], - center=center, - pad_mode="reflect", - normalized=False, - onesided=True, - return_complex=False, - ) - - spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) - return spec - - -def spec_to_mel(spec, n_fft, num_mels, sample_rate, fmin, fmax): - """ - Args Shapes: - - spec : :math:`[B,C,T]` - - Return Shapes: - - mel : :math:`[B,C,T]` - """ - global mel_basis - dtype_device = str(spec.dtype) + "_" + str(spec.device) - fmax_dtype_device = str(fmax) + "_" + dtype_device - if fmax_dtype_device not in mel_basis: - mel = librosa_mel_fn(sr=sample_rate, n_fft=n_fft, n_mels=num_mels, fmin=fmin, fmax=fmax) - mel_basis[fmax_dtype_device] = torch.from_numpy(mel).to(dtype=spec.dtype, device=spec.device) - mel = torch.matmul(mel_basis[fmax_dtype_device], spec) - mel = amp_to_db(mel) - return mel - - -def wav_to_mel(y, n_fft, num_mels, sample_rate, hop_length, win_length, fmin, fmax, center=False): - """ - Args Shapes: - - y : :math:`[B, 1, T]` - - Return Shapes: - - spec : :math:`[B,C,T]` - """ - y = y.squeeze(1) - - if torch.min(y) < -1.0: - print("min value is ", torch.min(y)) - if torch.max(y) > 1.0: - print("max value is ", torch.max(y)) - - global mel_basis, hann_window - dtype_device = str(y.dtype) + "_" + str(y.device) - fmax_dtype_device = str(fmax) + "_" + dtype_device - wnsize_dtype_device = str(win_length) + "_" + dtype_device - if fmax_dtype_device not in mel_basis: - mel = librosa_mel_fn(sr=sample_rate, n_fft=n_fft, n_mels=num_mels, fmin=fmin, fmax=fmax) - mel_basis[fmax_dtype_device] = torch.from_numpy(mel).to(dtype=y.dtype, device=y.device) - if wnsize_dtype_device not in hann_window: - hann_window[wnsize_dtype_device] = torch.hann_window(win_length).to(dtype=y.dtype, device=y.device) - - y = torch.nn.functional.pad( - y.unsqueeze(1), - (int((n_fft - hop_length) / 2), int((n_fft - hop_length) / 2)), - mode="reflect", - ) - y = y.squeeze(1) - - spec = torch.stft( - y, - n_fft, - hop_length=hop_length, - win_length=win_length, - window=hann_window[wnsize_dtype_device], - center=center, - pad_mode="reflect", - normalized=False, - onesided=True, - return_complex=False, - ) - - spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) - spec = torch.matmul(mel_basis[fmax_dtype_device], spec) - spec = amp_to_db(spec) - return spec - - -############################# -# CONFIGS -############################# - - -@dataclass -class VitsAudioConfig(Coqpit): - fft_size: int = 1024 - sample_rate: int = 22050 - win_length: int = 1024 - hop_length: int = 256 - num_mels: int = 80 - mel_fmin: int = 0 - mel_fmax: int = None - - -############################## -# DATASET -############################## - - -def get_attribute_balancer_weights(items: list, attr_name: str, multi_dict: dict = None): - """Create inverse frequency weights for balancing the dataset. - Use `multi_dict` to scale relative weights.""" - attr_names_samples = np.array([item[attr_name] for item in items]) - unique_attr_names = np.unique(attr_names_samples).tolist() - attr_idx = [unique_attr_names.index(l) for l in attr_names_samples] - attr_count = np.array([len(np.where(attr_names_samples == l)[0]) for l in unique_attr_names]) - weight_attr = 1.0 / attr_count - dataset_samples_weight = np.array([weight_attr[l] for l in attr_idx]) - dataset_samples_weight = dataset_samples_weight / np.linalg.norm(dataset_samples_weight) - if multi_dict is not None: - # check if all keys are in the multi_dict - for k in multi_dict: - assert k in unique_attr_names, f"{k} not in {unique_attr_names}" - # scale weights - multiplier_samples = np.array([multi_dict.get(item[attr_name], 1.0) for item in items]) - dataset_samples_weight *= multiplier_samples - return ( - torch.from_numpy(dataset_samples_weight).float(), - unique_attr_names, - np.unique(dataset_samples_weight).tolist(), - ) - - -class VitsDataset(TTSDataset): - def __init__(self, model_args, *args, **kwargs): - super().__init__(*args, **kwargs) - self.pad_id = self.tokenizer.characters.pad_id - self.model_args = model_args - - def __getitem__(self, idx): - item = self.samples[idx] - raw_text = item["text"] - - wav, _ = load_audio(item["audio_file"]) - if self.model_args.encoder_sample_rate is not None: - if wav.size(1) % self.model_args.encoder_sample_rate != 0: - wav = wav[:, : -int(wav.size(1) % self.model_args.encoder_sample_rate)] - - wav_filename = os.path.basename(item["audio_file"]) - - token_ids = self.get_token_ids(idx, item["text"]) - - # after phonemization the text length may change - # this is a shameful 🤭 hack to prevent longer phonemes - # TODO: find a better fix - if len(token_ids) > self.max_text_len or wav.shape[1] < self.min_audio_len: - self.rescue_item_idx += 1 - return self.__getitem__(self.rescue_item_idx) - - return { - "raw_text": raw_text, - "token_ids": token_ids, - "token_len": len(token_ids), - "wav": wav, - "wav_file": wav_filename, - "speaker_name": item["speaker_name"], - "language_name": item["language"], - "audio_unique_name": item["audio_unique_name"], - } - - @property - def lengths(self): - lens = [] - for item in self.samples: - _, wav_file, *_ = _parse_sample(item) - audio_len = os.path.getsize(wav_file) / 16 * 8 # assuming 16bit audio - lens.append(audio_len) - return lens - - def collate_fn(self, batch): - """ - Return Shapes: - - tokens: :math:`[B, T]` - - token_lens :math:`[B]` - - token_rel_lens :math:`[B]` - - waveform: :math:`[B, 1, T]` - - waveform_lens: :math:`[B]` - - waveform_rel_lens: :math:`[B]` - - speaker_names: :math:`[B]` - - language_names: :math:`[B]` - - audiofile_paths: :math:`[B]` - - raw_texts: :math:`[B]` - - audio_unique_names: :math:`[B]` - """ - # convert list of dicts to dict of lists - B = len(batch) - batch = {k: [dic[k] for dic in batch] for k in batch[0]} - - _, ids_sorted_decreasing = torch.sort( - torch.LongTensor([x.size(1) for x in batch["wav"]]), dim=0, descending=True - ) - - max_text_len = max([len(x) for x in batch["token_ids"]]) - token_lens = torch.LongTensor(batch["token_len"]) - token_rel_lens = token_lens / token_lens.max() - - wav_lens = [w.shape[1] for w in batch["wav"]] - wav_lens = torch.LongTensor(wav_lens) - wav_lens_max = torch.max(wav_lens) - wav_rel_lens = wav_lens / wav_lens_max - - token_padded = torch.LongTensor(B, max_text_len) - wav_padded = torch.FloatTensor(B, 1, wav_lens_max) - token_padded = token_padded.zero_() + self.pad_id - wav_padded = wav_padded.zero_() + self.pad_id - for i in range(len(ids_sorted_decreasing)): - token_ids = batch["token_ids"][i] - token_padded[i, : batch["token_len"][i]] = torch.LongTensor(token_ids) - - wav = batch["wav"][i] - wav_padded[i, :, : wav.size(1)] = torch.FloatTensor(wav) - - return { - "tokens": token_padded, - "token_lens": token_lens, - "token_rel_lens": token_rel_lens, - "waveform": wav_padded, # (B x T) - "waveform_lens": wav_lens, # (B) - "waveform_rel_lens": wav_rel_lens, - "speaker_names": batch["speaker_name"], - "language_names": batch["language_name"], - "audio_files": batch["wav_file"], - "raw_text": batch["raw_text"], - "audio_unique_names": batch["audio_unique_name"], - } - - -############################## -# MODEL DEFINITION -############################## - - -@dataclass -class VitsArgs(Coqpit): - """VITS model arguments. - - Args: - - num_chars (int): - Number of characters in the vocabulary. Defaults to 100. - - out_channels (int): - Number of output channels of the decoder. Defaults to 513. - - spec_segment_size (int): - Decoder input segment size. Defaults to 32 `(32 * hoplength = waveform length)`. - - hidden_channels (int): - Number of hidden channels of the model. Defaults to 192. - - hidden_channels_ffn_text_encoder (int): - Number of hidden channels of the feed-forward layers of the text encoder transformer. Defaults to 256. - - num_heads_text_encoder (int): - Number of attention heads of the text encoder transformer. Defaults to 2. - - num_layers_text_encoder (int): - Number of transformer layers in the text encoder. Defaults to 6. - - kernel_size_text_encoder (int): - Kernel size of the text encoder transformer FFN layers. Defaults to 3. - - dropout_p_text_encoder (float): - Dropout rate of the text encoder. Defaults to 0.1. - - dropout_p_duration_predictor (float): - Dropout rate of the duration predictor. Defaults to 0.1. - - kernel_size_posterior_encoder (int): - Kernel size of the posterior encoder's WaveNet layers. Defaults to 5. - - dilatation_posterior_encoder (int): - Dilation rate of the posterior encoder's WaveNet layers. Defaults to 1. - - num_layers_posterior_encoder (int): - Number of posterior encoder's WaveNet layers. Defaults to 16. - - kernel_size_flow (int): - Kernel size of the Residual Coupling layers of the flow network. Defaults to 5. - - dilatation_flow (int): - Dilation rate of the Residual Coupling WaveNet layers of the flow network. Defaults to 1. - - num_layers_flow (int): - Number of Residual Coupling WaveNet layers of the flow network. Defaults to 6. - - resblock_type_decoder (str): - Type of the residual block in the decoder network. Defaults to "1". - - resblock_kernel_sizes_decoder (List[int]): - Kernel sizes of the residual blocks in the decoder network. Defaults to `[3, 7, 11]`. - - resblock_dilation_sizes_decoder (List[List[int]]): - Dilation sizes of the residual blocks in the decoder network. Defaults to `[[1, 3, 5], [1, 3, 5], [1, 3, 5]]`. - - upsample_rates_decoder (List[int]): - Upsampling rates for each concecutive upsampling layer in the decoder network. The multiply of these - values must be equal to the kop length used for computing spectrograms. Defaults to `[8, 8, 2, 2]`. - - upsample_initial_channel_decoder (int): - Number of hidden channels of the first upsampling convolution layer of the decoder network. Defaults to 512. - - upsample_kernel_sizes_decoder (List[int]): - Kernel sizes for each upsampling layer of the decoder network. Defaults to `[16, 16, 4, 4]`. - - periods_multi_period_discriminator (List[int]): - Periods values for Vits Multi-Period Discriminator. Defaults to `[2, 3, 5, 7, 11]`. - - use_sdp (bool): - Use Stochastic Duration Predictor. Defaults to True. - - noise_scale (float): - Noise scale used for the sample noise tensor in training. Defaults to 1.0. - - inference_noise_scale (float): - Noise scale used for the sample noise tensor in inference. Defaults to 0.667. - - length_scale (float): - Scale factor for the predicted duration values. Smaller values result faster speech. Defaults to 1. - - noise_scale_dp (float): - Noise scale used by the Stochastic Duration Predictor sample noise in training. Defaults to 1.0. - - inference_noise_scale_dp (float): - Noise scale for the Stochastic Duration Predictor in inference. Defaults to 0.8. - - max_inference_len (int): - Maximum inference length to limit the memory use. Defaults to None. - - init_discriminator (bool): - Initialize the disciminator network if set True. Set False for inference. Defaults to True. - - use_spectral_norm_disriminator (bool): - Use spectral normalization over weight norm in the discriminator. Defaults to False. - - use_speaker_embedding (bool): - Enable/Disable speaker embedding for multi-speaker models. Defaults to False. - - num_speakers (int): - Number of speakers for the speaker embedding layer. Defaults to 0. - - speakers_file (str): - Path to the speaker mapping file for the Speaker Manager. Defaults to None. - - speaker_embedding_channels (int): - Number of speaker embedding channels. Defaults to 256. - - use_d_vector_file (bool): - Enable/Disable the use of d-vectors for multi-speaker training. Defaults to False. - - d_vector_file (List[str]): - List of paths to the files including pre-computed speaker embeddings. Defaults to None. - - d_vector_dim (int): - Number of d-vector channels. Defaults to 0. - - detach_dp_input (bool): - Detach duration predictor's input from the network for stopping the gradients. Defaults to True. - - use_language_embedding (bool): - Enable/Disable language embedding for multilingual models. Defaults to False. - - embedded_language_dim (int): - Number of language embedding channels. Defaults to 4. - - num_languages (int): - Number of languages for the language embedding layer. Defaults to 0. - - language_ids_file (str): - Path to the language mapping file for the Language Manager. Defaults to None. - - use_speaker_encoder_as_loss (bool): - Enable/Disable Speaker Consistency Loss (SCL). Defaults to False. - - speaker_encoder_config_path (str): - Path to the file speaker encoder config file, to use for SCL. Defaults to "". - - speaker_encoder_model_path (str): - Path to the file speaker encoder checkpoint file, to use for SCL. Defaults to "". - - condition_dp_on_speaker (bool): - Condition the duration predictor on the speaker embedding. Defaults to True. - - freeze_encoder (bool): - Freeze the encoder weigths during training. Defaults to False. - - freeze_DP (bool): - Freeze the duration predictor weigths during training. Defaults to False. - - freeze_PE (bool): - Freeze the posterior encoder weigths during training. Defaults to False. - - freeze_flow_encoder (bool): - Freeze the flow encoder weigths during training. Defaults to False. - - freeze_waveform_decoder (bool): - Freeze the waveform decoder weigths during training. Defaults to False. - - encoder_sample_rate (int): - If not None this sample rate will be used for training the Posterior Encoder, - flow, text_encoder and duration predictor. The decoder part (vocoder) will be - trained with the `config.audio.sample_rate`. Defaults to None. - - interpolate_z (bool): - If `encoder_sample_rate` not None and this parameter True the nearest interpolation - will be used to upsampling the latent variable z with the sampling rate `encoder_sample_rate` - to the `config.audio.sample_rate`. If it is False you will need to add extra - `upsample_rates_decoder` to match the shape. Defaults to True. - - """ - - num_chars: int = 100 - out_channels: int = 513 - spec_segment_size: int = 32 - hidden_channels: int = 192 - hidden_channels_ffn_text_encoder: int = 768 - num_heads_text_encoder: int = 2 - num_layers_text_encoder: int = 6 - kernel_size_text_encoder: int = 3 - dropout_p_text_encoder: float = 0.1 - dropout_p_duration_predictor: float = 0.5 - kernel_size_posterior_encoder: int = 5 - dilation_rate_posterior_encoder: int = 1 - num_layers_posterior_encoder: int = 16 - kernel_size_flow: int = 5 - dilation_rate_flow: int = 1 - num_layers_flow: int = 4 - resblock_type_decoder: str = "1" - resblock_kernel_sizes_decoder: List[int] = field(default_factory=lambda: [3, 7, 11]) - resblock_dilation_sizes_decoder: List[List[int]] = field(default_factory=lambda: [[1, 3, 5], [1, 3, 5], [1, 3, 5]]) - upsample_rates_decoder: List[int] = field(default_factory=lambda: [8, 8, 2, 2]) - upsample_initial_channel_decoder: int = 512 - upsample_kernel_sizes_decoder: List[int] = field(default_factory=lambda: [16, 16, 4, 4]) - periods_multi_period_discriminator: List[int] = field(default_factory=lambda: [2, 3, 5, 7, 11]) - use_sdp: bool = True - noise_scale: float = 1.0 - inference_noise_scale: float = 0.667 - length_scale: float = 1 - noise_scale_dp: float = 1.0 - inference_noise_scale_dp: float = 1.0 - max_inference_len: int = None - init_discriminator: bool = True - use_spectral_norm_disriminator: bool = False - use_speaker_embedding: bool = False - num_speakers: int = 0 - speakers_file: str = None - d_vector_file: List[str] = None - speaker_embedding_channels: int = 256 - use_d_vector_file: bool = False - d_vector_dim: int = 0 - detach_dp_input: bool = True - use_language_embedding: bool = False - embedded_language_dim: int = 4 - num_languages: int = 0 - language_ids_file: str = None - use_speaker_encoder_as_loss: bool = False - speaker_encoder_config_path: str = "" - speaker_encoder_model_path: str = "" - condition_dp_on_speaker: bool = True - freeze_encoder: bool = False - freeze_DP: bool = False - freeze_PE: bool = False - freeze_flow_decoder: bool = False - freeze_waveform_decoder: bool = False - encoder_sample_rate: int = None - interpolate_z: bool = True - reinit_DP: bool = False - reinit_text_encoder: bool = False - - -class Vits(BaseTTS): - """VITS TTS model - - Paper:: - https://arxiv.org/pdf/2106.06103.pdf - - Paper Abstract:: - Several recent end-to-end text-to-speech (TTS) models enabling single-stage training and parallel - sampling have been proposed, but their sample quality does not match that of two-stage TTS systems. - In this work, we present a parallel endto-end TTS method that generates more natural sounding audio than - current two-stage models. Our method adopts variational inference augmented with normalizing flows and - an adversarial training process, which improves the expressive power of generative modeling. We also propose a - stochastic duration predictor to synthesize speech with diverse rhythms from input text. With the - uncertainty modeling over latent variables and the stochastic duration predictor, our method expresses the - natural one-to-many relationship in which a text input can be spoken in multiple ways - with different pitches and rhythms. A subjective human evaluation (mean opinion score, or MOS) - on the LJ Speech, a single speaker dataset, shows that our method outperforms the best publicly - available TTS systems and achieves a MOS comparable to ground truth. - - Check :class:`TTS.tts.configs.vits_config.VitsConfig` for class arguments. - - Examples: - >>> from TTS.tts.configs.vits_config import VitsConfig - >>> from TTS.tts.models.vits import Vits - >>> config = VitsConfig() - >>> model = Vits(config) - """ - - def __init__( - self, - config: Coqpit, - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - language_manager: LanguageManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager, language_manager) - - self.init_multispeaker(config) - self.init_multilingual(config) - self.init_upsampling() - - self.length_scale = self.args.length_scale - self.noise_scale = self.args.noise_scale - self.inference_noise_scale = self.args.inference_noise_scale - self.inference_noise_scale_dp = self.args.inference_noise_scale_dp - self.noise_scale_dp = self.args.noise_scale_dp - self.max_inference_len = self.args.max_inference_len - self.spec_segment_size = self.args.spec_segment_size - - self.text_encoder = TextEncoder( - self.args.num_chars, - self.args.hidden_channels, - self.args.hidden_channels, - self.args.hidden_channels_ffn_text_encoder, - self.args.num_heads_text_encoder, - self.args.num_layers_text_encoder, - self.args.kernel_size_text_encoder, - self.args.dropout_p_text_encoder, - language_emb_dim=self.embedded_language_dim, - ) - - self.posterior_encoder = PosteriorEncoder( - self.args.out_channels, - self.args.hidden_channels, - self.args.hidden_channels, - kernel_size=self.args.kernel_size_posterior_encoder, - dilation_rate=self.args.dilation_rate_posterior_encoder, - num_layers=self.args.num_layers_posterior_encoder, - cond_channels=self.embedded_speaker_dim, - ) - - self.flow = ResidualCouplingBlocks( - self.args.hidden_channels, - self.args.hidden_channels, - kernel_size=self.args.kernel_size_flow, - dilation_rate=self.args.dilation_rate_flow, - num_layers=self.args.num_layers_flow, - cond_channels=self.embedded_speaker_dim, - ) - - if self.args.use_sdp: - self.duration_predictor = StochasticDurationPredictor( - self.args.hidden_channels, - 192, - 3, - self.args.dropout_p_duration_predictor, - 4, - cond_channels=self.embedded_speaker_dim if self.args.condition_dp_on_speaker else 0, - language_emb_dim=self.embedded_language_dim, - ) - else: - self.duration_predictor = DurationPredictor( - self.args.hidden_channels, - 256, - 3, - self.args.dropout_p_duration_predictor, - cond_channels=self.embedded_speaker_dim, - language_emb_dim=self.embedded_language_dim, - ) - - self.waveform_decoder = HifiganGenerator( - self.args.hidden_channels, - 1, - self.args.resblock_type_decoder, - self.args.resblock_dilation_sizes_decoder, - self.args.resblock_kernel_sizes_decoder, - self.args.upsample_kernel_sizes_decoder, - self.args.upsample_initial_channel_decoder, - self.args.upsample_rates_decoder, - inference_padding=0, - cond_channels=self.embedded_speaker_dim, - conv_pre_weight_norm=False, - conv_post_weight_norm=False, - conv_post_bias=False, - ) - - if self.args.init_discriminator: - self.disc = VitsDiscriminator( - periods=self.args.periods_multi_period_discriminator, - use_spectral_norm=self.args.use_spectral_norm_disriminator, - ) - - @property - def device(self): - return next(self.parameters()).device - - def init_multispeaker(self, config: Coqpit): - """Initialize multi-speaker modules of a model. A model can be trained either with a speaker embedding layer - or with external `d_vectors` computed from a speaker encoder model. - - You must provide a `speaker_manager` at initialization to set up the multi-speaker modules. - - Args: - config (Coqpit): Model configuration. - data (List, optional): Dataset items to infer number of speakers. Defaults to None. - """ - self.embedded_speaker_dim = 0 - self.num_speakers = self.args.num_speakers - self.audio_transform = None - - if self.speaker_manager: - self.num_speakers = self.speaker_manager.num_speakers - - if self.args.use_speaker_embedding: - self._init_speaker_embedding() - - if self.args.use_d_vector_file: - self._init_d_vector() - - # TODO: make this a function - if self.args.use_speaker_encoder_as_loss: - if self.speaker_manager.encoder is None and ( - not self.args.speaker_encoder_model_path or not self.args.speaker_encoder_config_path - ): - raise RuntimeError( - " [!] To use the speaker consistency loss (SCL) you need to specify speaker_encoder_model_path and speaker_encoder_config_path !!" - ) - - self.speaker_manager.encoder.eval() - print(" > External Speaker Encoder Loaded !!") - - if ( - hasattr(self.speaker_manager.encoder, "audio_config") - and self.config.audio.sample_rate != self.speaker_manager.encoder.audio_config["sample_rate"] - ): - self.audio_transform = torchaudio.transforms.Resample( - orig_freq=self.config.audio.sample_rate, - new_freq=self.speaker_manager.encoder.audio_config["sample_rate"], - ) - - def _init_speaker_embedding(self): - # pylint: disable=attribute-defined-outside-init - if self.num_speakers > 0: - print(" > initialization of speaker-embedding layers.") - self.embedded_speaker_dim = self.args.speaker_embedding_channels - self.emb_g = nn.Embedding(self.num_speakers, self.embedded_speaker_dim) - - def _init_d_vector(self): - # pylint: disable=attribute-defined-outside-init - if hasattr(self, "emb_g"): - raise ValueError("[!] Speaker embedding layer already initialized before d_vector settings.") - self.embedded_speaker_dim = self.args.d_vector_dim - - def init_multilingual(self, config: Coqpit): - """Initialize multilingual modules of a model. - - Args: - config (Coqpit): Model configuration. - """ - if self.args.language_ids_file is not None: - self.language_manager = LanguageManager(language_ids_file_path=config.language_ids_file) - - if self.args.use_language_embedding and self.language_manager: - print(" > initialization of language-embedding layers.") - self.num_languages = self.language_manager.num_languages - self.embedded_language_dim = self.args.embedded_language_dim - self.emb_l = nn.Embedding(self.num_languages, self.embedded_language_dim) - torch.nn.init.xavier_uniform_(self.emb_l.weight) - else: - self.embedded_language_dim = 0 - - def init_upsampling(self): - """ - Initialize upsampling modules of a model. - """ - if self.args.encoder_sample_rate: - self.interpolate_factor = self.config.audio["sample_rate"] / self.args.encoder_sample_rate - self.audio_resampler = torchaudio.transforms.Resample( - orig_freq=self.config.audio["sample_rate"], new_freq=self.args.encoder_sample_rate - ) # pylint: disable=W0201 - - def on_epoch_start(self, trainer): # pylint: disable=W0613 - """Freeze layers at the beginning of an epoch""" - self._freeze_layers() - # set the device of speaker encoder - if self.args.use_speaker_encoder_as_loss: - self.speaker_manager.encoder = self.speaker_manager.encoder.to(self.device) - - def on_init_end(self, trainer): # pylint: disable=W0613 - """Reinit layes if needed""" - if self.args.reinit_DP: - before_dict = get_module_weights_sum(self.duration_predictor) - # Applies weights_reset recursively to every submodule of the duration predictor - self.duration_predictor.apply(fn=weights_reset) - after_dict = get_module_weights_sum(self.duration_predictor) - for key, value in after_dict.items(): - if value == before_dict[key]: - raise RuntimeError(" [!] The weights of Duration Predictor was not reinit check it !") - print(" > Duration Predictor was reinit.") - - if self.args.reinit_text_encoder: - before_dict = get_module_weights_sum(self.text_encoder) - # Applies weights_reset recursively to every submodule of the duration predictor - self.text_encoder.apply(fn=weights_reset) - after_dict = get_module_weights_sum(self.text_encoder) - for key, value in after_dict.items(): - if value == before_dict[key]: - raise RuntimeError(" [!] The weights of Text Encoder was not reinit check it !") - print(" > Text Encoder was reinit.") - - def get_aux_input(self, aux_input: Dict): - sid, g, lid, _ = self._set_cond_input(aux_input) - return {"speaker_ids": sid, "style_wav": None, "d_vectors": g, "language_ids": lid} - - def _freeze_layers(self): - if self.args.freeze_encoder: - for param in self.text_encoder.parameters(): - param.requires_grad = False - - if hasattr(self, "emb_l"): - for param in self.emb_l.parameters(): - param.requires_grad = False - - if self.args.freeze_PE: - for param in self.posterior_encoder.parameters(): - param.requires_grad = False - - if self.args.freeze_DP: - for param in self.duration_predictor.parameters(): - param.requires_grad = False - - if self.args.freeze_flow_decoder: - for param in self.flow.parameters(): - param.requires_grad = False - - if self.args.freeze_waveform_decoder: - for param in self.waveform_decoder.parameters(): - param.requires_grad = False - - @staticmethod - def _set_cond_input(aux_input: Dict): - """Set the speaker conditioning input based on the multi-speaker mode.""" - sid, g, lid, durations = None, None, None, None - if "speaker_ids" in aux_input and aux_input["speaker_ids"] is not None: - sid = aux_input["speaker_ids"] - if sid.ndim == 0: - sid = sid.unsqueeze_(0) - if "d_vectors" in aux_input and aux_input["d_vectors"] is not None: - g = F.normalize(aux_input["d_vectors"]).unsqueeze(-1) - if g.ndim == 2: - g = g.unsqueeze_(0) - - if "language_ids" in aux_input and aux_input["language_ids"] is not None: - lid = aux_input["language_ids"] - if lid.ndim == 0: - lid = lid.unsqueeze_(0) - - if "durations" in aux_input and aux_input["durations"] is not None: - durations = aux_input["durations"] - - return sid, g, lid, durations - - def _set_speaker_input(self, aux_input: Dict): - d_vectors = aux_input.get("d_vectors", None) - speaker_ids = aux_input.get("speaker_ids", None) - - if d_vectors is not None and speaker_ids is not None: - raise ValueError("[!] Cannot use d-vectors and speaker-ids together.") - - if speaker_ids is not None and not hasattr(self, "emb_g"): - raise ValueError("[!] Cannot use speaker-ids without enabling speaker embedding.") - - g = speaker_ids if speaker_ids is not None else d_vectors - return g - - def forward_mas(self, outputs, z_p, m_p, logs_p, x, x_mask, y_mask, g, lang_emb): - # find the alignment path - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - with torch.no_grad(): - o_scale = torch.exp(-2 * logs_p) - logp1 = torch.sum(-0.5 * math.log(2 * math.pi) - logs_p, [1]).unsqueeze(-1) # [b, t, 1] - logp2 = torch.einsum("klm, kln -> kmn", [o_scale, -0.5 * (z_p**2)]) - logp3 = torch.einsum("klm, kln -> kmn", [m_p * o_scale, z_p]) - logp4 = torch.sum(-0.5 * (m_p**2) * o_scale, [1]).unsqueeze(-1) # [b, t, 1] - logp = logp2 + logp3 + logp1 + logp4 - attn = maximum_path(logp, attn_mask.squeeze(1)).unsqueeze(1).detach() # [b, 1, t, t'] - - # duration predictor - attn_durations = attn.sum(3) - if self.args.use_sdp: - loss_duration = self.duration_predictor( - x.detach() if self.args.detach_dp_input else x, - x_mask, - attn_durations, - g=g.detach() if self.args.detach_dp_input and g is not None else g, - lang_emb=lang_emb.detach() if self.args.detach_dp_input and lang_emb is not None else lang_emb, - ) - loss_duration = loss_duration / torch.sum(x_mask) - else: - attn_log_durations = torch.log(attn_durations + 1e-6) * x_mask - log_durations = self.duration_predictor( - x.detach() if self.args.detach_dp_input else x, - x_mask, - g=g.detach() if self.args.detach_dp_input and g is not None else g, - lang_emb=lang_emb.detach() if self.args.detach_dp_input and lang_emb is not None else lang_emb, - ) - loss_duration = torch.sum((log_durations - attn_log_durations) ** 2, [1, 2]) / torch.sum(x_mask) - outputs["loss_duration"] = loss_duration - return outputs, attn - - def upsampling_z(self, z, slice_ids=None, y_lengths=None, y_mask=None): - spec_segment_size = self.spec_segment_size - if self.args.encoder_sample_rate: - # recompute the slices and spec_segment_size if needed - slice_ids = slice_ids * int(self.interpolate_factor) if slice_ids is not None else slice_ids - spec_segment_size = spec_segment_size * int(self.interpolate_factor) - # interpolate z if needed - if self.args.interpolate_z: - z = torch.nn.functional.interpolate(z, scale_factor=[self.interpolate_factor], mode="linear").squeeze(0) - # recompute the mask if needed - if y_lengths is not None and y_mask is not None: - y_mask = ( - sequence_mask(y_lengths * self.interpolate_factor, None).to(y_mask.dtype).unsqueeze(1) - ) # [B, 1, T_dec_resampled] - - return z, spec_segment_size, slice_ids, y_mask - - def forward( # pylint: disable=dangerous-default-value - self, - x: torch.tensor, - x_lengths: torch.tensor, - y: torch.tensor, - y_lengths: torch.tensor, - waveform: torch.tensor, - aux_input={"d_vectors": None, "speaker_ids": None, "language_ids": None}, - ) -> Dict: - """Forward pass of the model. - - Args: - x (torch.tensor): Batch of input character sequence IDs. - x_lengths (torch.tensor): Batch of input character sequence lengths. - y (torch.tensor): Batch of input spectrograms. - y_lengths (torch.tensor): Batch of input spectrogram lengths. - waveform (torch.tensor): Batch of ground truth waveforms per sample. - aux_input (dict, optional): Auxiliary inputs for multi-speaker and multi-lingual training. - Defaults to {"d_vectors": None, "speaker_ids": None, "language_ids": None}. - - Returns: - Dict: model outputs keyed by the output name. - - Shapes: - - x: :math:`[B, T_seq]` - - x_lengths: :math:`[B]` - - y: :math:`[B, C, T_spec]` - - y_lengths: :math:`[B]` - - waveform: :math:`[B, 1, T_wav]` - - d_vectors: :math:`[B, C, 1]` - - speaker_ids: :math:`[B]` - - language_ids: :math:`[B]` - - Return Shapes: - - model_outputs: :math:`[B, 1, T_wav]` - - alignments: :math:`[B, T_seq, T_dec]` - - z: :math:`[B, C, T_dec]` - - z_p: :math:`[B, C, T_dec]` - - m_p: :math:`[B, C, T_dec]` - - logs_p: :math:`[B, C, T_dec]` - - m_q: :math:`[B, C, T_dec]` - - logs_q: :math:`[B, C, T_dec]` - - waveform_seg: :math:`[B, 1, spec_seg_size * hop_length]` - - gt_spk_emb: :math:`[B, 1, speaker_encoder.proj_dim]` - - syn_spk_emb: :math:`[B, 1, speaker_encoder.proj_dim]` - """ - outputs = {} - sid, g, lid, _ = self._set_cond_input(aux_input) - # speaker embedding - if self.args.use_speaker_embedding and sid is not None: - g = self.emb_g(sid).unsqueeze(-1) # [b, h, 1] - - # language embedding - lang_emb = None - if self.args.use_language_embedding and lid is not None: - lang_emb = self.emb_l(lid).unsqueeze(-1) - - x, m_p, logs_p, x_mask = self.text_encoder(x, x_lengths, lang_emb=lang_emb) - - # posterior encoder - z, m_q, logs_q, y_mask = self.posterior_encoder(y, y_lengths, g=g) - - # flow layers - z_p = self.flow(z, y_mask, g=g) - - # duration predictor - outputs, attn = self.forward_mas(outputs, z_p, m_p, logs_p, x, x_mask, y_mask, g=g, lang_emb=lang_emb) - - # expand prior - m_p = torch.einsum("klmn, kjm -> kjn", [attn, m_p]) - logs_p = torch.einsum("klmn, kjm -> kjn", [attn, logs_p]) - - # select a random feature segment for the waveform decoder - z_slice, slice_ids = rand_segments(z, y_lengths, self.spec_segment_size, let_short_samples=True, pad_short=True) - - # interpolate z if needed - z_slice, spec_segment_size, slice_ids, _ = self.upsampling_z(z_slice, slice_ids=slice_ids) - - o = self.waveform_decoder(z_slice, g=g) - - wav_seg = segment( - waveform, - slice_ids * self.config.audio.hop_length, - spec_segment_size * self.config.audio.hop_length, - pad_short=True, - ) - - if self.args.use_speaker_encoder_as_loss and self.speaker_manager.encoder is not None: - # concate generated and GT waveforms - wavs_batch = torch.cat((wav_seg, o), dim=0) - - # resample audio to speaker encoder sample_rate - # pylint: disable=W0105 - if self.audio_transform is not None: - wavs_batch = self.audio_transform(wavs_batch) - - pred_embs = self.speaker_manager.encoder.forward(wavs_batch, l2_norm=True) - - # split generated and GT speaker embeddings - gt_spk_emb, syn_spk_emb = torch.chunk(pred_embs, 2, dim=0) - else: - gt_spk_emb, syn_spk_emb = None, None - - outputs.update( - { - "model_outputs": o, - "alignments": attn.squeeze(1), - "m_p": m_p, - "logs_p": logs_p, - "z": z, - "z_p": z_p, - "m_q": m_q, - "logs_q": logs_q, - "waveform_seg": wav_seg, - "gt_spk_emb": gt_spk_emb, - "syn_spk_emb": syn_spk_emb, - "slice_ids": slice_ids, - } - ) - return outputs - - @staticmethod - def _set_x_lengths(x, aux_input): - if "x_lengths" in aux_input and aux_input["x_lengths"] is not None: - return aux_input["x_lengths"] - return torch.tensor(x.shape[1:2]).to(x.device) - - @torch.no_grad() - def inference( - self, - x, - aux_input={"x_lengths": None, "d_vectors": None, "speaker_ids": None, "language_ids": None, "durations": None}, - ): # pylint: disable=dangerous-default-value - """ - Note: - To run in batch mode, provide `x_lengths` else model assumes that the batch size is 1. - - Shapes: - - x: :math:`[B, T_seq]` - - x_lengths: :math:`[B]` - - d_vectors: :math:`[B, C]` - - speaker_ids: :math:`[B]` - - Return Shapes: - - model_outputs: :math:`[B, 1, T_wav]` - - alignments: :math:`[B, T_seq, T_dec]` - - z: :math:`[B, C, T_dec]` - - z_p: :math:`[B, C, T_dec]` - - m_p: :math:`[B, C, T_dec]` - - logs_p: :math:`[B, C, T_dec]` - """ - sid, g, lid, durations = self._set_cond_input(aux_input) - x_lengths = self._set_x_lengths(x, aux_input) - - # speaker embedding - if self.args.use_speaker_embedding and sid is not None: - g = self.emb_g(sid).unsqueeze(-1) - - # language embedding - lang_emb = None - if self.args.use_language_embedding and lid is not None: - lang_emb = self.emb_l(lid).unsqueeze(-1) - - x, m_p, logs_p, x_mask = self.text_encoder(x, x_lengths, lang_emb=lang_emb) - - if durations is None: - if self.args.use_sdp: - logw = self.duration_predictor( - x, - x_mask, - g=g if self.args.condition_dp_on_speaker else None, - reverse=True, - noise_scale=self.inference_noise_scale_dp, - lang_emb=lang_emb, - ) - else: - logw = self.duration_predictor( - x, x_mask, g=g if self.args.condition_dp_on_speaker else None, lang_emb=lang_emb - ) - w = torch.exp(logw) * x_mask * self.length_scale - else: - assert durations.shape[-1] == x.shape[-1] - w = durations.unsqueeze(0) - - w_ceil = torch.ceil(w) - y_lengths = torch.clamp_min(torch.sum(w_ceil, [1, 2]), 1).long() - y_mask = sequence_mask(y_lengths, None).to(x_mask.dtype).unsqueeze(1) # [B, 1, T_dec] - - attn_mask = x_mask * y_mask.transpose(1, 2) # [B, 1, T_enc] * [B, T_dec, 1] - attn = generate_path(w_ceil.squeeze(1), attn_mask.squeeze(1).transpose(1, 2)) - - m_p = torch.matmul(attn.transpose(1, 2), m_p.transpose(1, 2)).transpose(1, 2) - logs_p = torch.matmul(attn.transpose(1, 2), logs_p.transpose(1, 2)).transpose(1, 2) - - z_p = m_p + torch.randn_like(m_p) * torch.exp(logs_p) * self.inference_noise_scale - z = self.flow(z_p, y_mask, g=g, reverse=True) - - # upsampling if needed - z, _, _, y_mask = self.upsampling_z(z, y_lengths=y_lengths, y_mask=y_mask) - - o = self.waveform_decoder((z * y_mask)[:, :, : self.max_inference_len], g=g) - - outputs = { - "model_outputs": o, - "alignments": attn.squeeze(1), - "durations": w_ceil, - "z": z, - "z_p": z_p, - "m_p": m_p, - "logs_p": logs_p, - "y_mask": y_mask, - } - return outputs - - @torch.no_grad() - def inference_voice_conversion( - self, reference_wav, speaker_id=None, d_vector=None, reference_speaker_id=None, reference_d_vector=None - ): - """Inference for voice conversion - - Args: - reference_wav (Tensor): Reference wavform. Tensor of shape [B, T] - speaker_id (Tensor): speaker_id of the target speaker. Tensor of shape [B] - d_vector (Tensor): d_vector embedding of target speaker. Tensor of shape `[B, C]` - reference_speaker_id (Tensor): speaker_id of the reference_wav speaker. Tensor of shape [B] - reference_d_vector (Tensor): d_vector embedding of the reference_wav speaker. Tensor of shape `[B, C]` - """ - # compute spectrograms - y = wav_to_spec( - reference_wav, - self.config.audio.fft_size, - self.config.audio.hop_length, - self.config.audio.win_length, - center=False, - ) - y_lengths = torch.tensor([y.size(-1)]).to(y.device) - speaker_cond_src = reference_speaker_id if reference_speaker_id is not None else reference_d_vector - speaker_cond_tgt = speaker_id if speaker_id is not None else d_vector - wav, _, _ = self.voice_conversion(y, y_lengths, speaker_cond_src, speaker_cond_tgt) - return wav - - def voice_conversion(self, y, y_lengths, speaker_cond_src, speaker_cond_tgt): - """Forward pass for voice conversion - - TODO: create an end-point for voice conversion - - Args: - y (Tensor): Reference spectrograms. Tensor of shape [B, T, C] - y_lengths (Tensor): Length of each reference spectrogram. Tensor of shape [B] - speaker_cond_src (Tensor): Reference speaker ID. Tensor of shape [B,] - speaker_cond_tgt (Tensor): Target speaker ID. Tensor of shape [B,] - """ - assert self.num_speakers > 0, "num_speakers have to be larger than 0." - # speaker embedding - if self.args.use_speaker_embedding and not self.args.use_d_vector_file: - g_src = self.emb_g(torch.from_numpy((np.array(speaker_cond_src))).unsqueeze(0)).unsqueeze(-1) - g_tgt = self.emb_g(torch.from_numpy((np.array(speaker_cond_tgt))).unsqueeze(0)).unsqueeze(-1) - elif not self.args.use_speaker_embedding and self.args.use_d_vector_file: - g_src = F.normalize(speaker_cond_src).unsqueeze(-1) - g_tgt = F.normalize(speaker_cond_tgt).unsqueeze(-1) - else: - raise RuntimeError(" [!] Voice conversion is only supported on multi-speaker models.") - - z, _, _, y_mask = self.posterior_encoder(y, y_lengths, g=g_src) - z_p = self.flow(z, y_mask, g=g_src) - z_hat = self.flow(z_p, y_mask, g=g_tgt, reverse=True) - o_hat = self.waveform_decoder(z_hat * y_mask, g=g_tgt) - return o_hat, y_mask, (z, z_p, z_hat) - - def train_step(self, batch: dict, criterion: nn.Module, optimizer_idx: int) -> Tuple[Dict, Dict]: - """Perform a single training step. Run the model forward pass and compute losses. - - Args: - batch (Dict): Input tensors. - criterion (nn.Module): Loss layer designed for the model. - optimizer_idx (int): Index of optimizer to use. 0 for the generator and 1 for the discriminator networks. - - Returns: - Tuple[Dict, Dict]: Model ouputs and computed losses. - """ - - spec_lens = batch["spec_lens"] - - if optimizer_idx == 0: - tokens = batch["tokens"] - token_lenghts = batch["token_lens"] - spec = batch["spec"] - - d_vectors = batch["d_vectors"] - speaker_ids = batch["speaker_ids"] - language_ids = batch["language_ids"] - waveform = batch["waveform"] - - # generator pass - outputs = self.forward( - tokens, - token_lenghts, - spec, - spec_lens, - waveform, - aux_input={"d_vectors": d_vectors, "speaker_ids": speaker_ids, "language_ids": language_ids}, - ) - - # cache tensors for the generator pass - self.model_outputs_cache = outputs # pylint: disable=attribute-defined-outside-init - - # compute scores and features - scores_disc_fake, _, scores_disc_real, _ = self.disc( - outputs["model_outputs"].detach(), outputs["waveform_seg"] - ) - - # compute loss - with autocast(enabled=False): # use float32 for the criterion - loss_dict = criterion[optimizer_idx]( - scores_disc_real, - scores_disc_fake, - ) - return outputs, loss_dict - - if optimizer_idx == 1: - mel = batch["mel"] - - # compute melspec segment - with autocast(enabled=False): - if self.args.encoder_sample_rate: - spec_segment_size = self.spec_segment_size * int(self.interpolate_factor) - else: - spec_segment_size = self.spec_segment_size - - mel_slice = segment( - mel.float(), self.model_outputs_cache["slice_ids"], spec_segment_size, pad_short=True - ) - mel_slice_hat = wav_to_mel( - y=self.model_outputs_cache["model_outputs"].float(), - n_fft=self.config.audio.fft_size, - sample_rate=self.config.audio.sample_rate, - num_mels=self.config.audio.num_mels, - hop_length=self.config.audio.hop_length, - win_length=self.config.audio.win_length, - fmin=self.config.audio.mel_fmin, - fmax=self.config.audio.mel_fmax, - center=False, - ) - - # compute discriminator scores and features - scores_disc_fake, feats_disc_fake, _, feats_disc_real = self.disc( - self.model_outputs_cache["model_outputs"], self.model_outputs_cache["waveform_seg"] - ) - - # compute losses - with autocast(enabled=False): # use float32 for the criterion - loss_dict = criterion[optimizer_idx]( - mel_slice_hat=mel_slice.float(), - mel_slice=mel_slice_hat.float(), - z_p=self.model_outputs_cache["z_p"].float(), - logs_q=self.model_outputs_cache["logs_q"].float(), - m_p=self.model_outputs_cache["m_p"].float(), - logs_p=self.model_outputs_cache["logs_p"].float(), - z_len=spec_lens, - scores_disc_fake=scores_disc_fake, - feats_disc_fake=feats_disc_fake, - feats_disc_real=feats_disc_real, - loss_duration=self.model_outputs_cache["loss_duration"], - use_speaker_encoder_as_loss=self.args.use_speaker_encoder_as_loss, - gt_spk_emb=self.model_outputs_cache["gt_spk_emb"], - syn_spk_emb=self.model_outputs_cache["syn_spk_emb"], - ) - - return self.model_outputs_cache, loss_dict - - raise ValueError(" [!] Unexpected `optimizer_idx`.") - - def _log(self, ap, batch, outputs, name_prefix="train"): # pylint: disable=unused-argument,no-self-use - y_hat = outputs[1]["model_outputs"] - y = outputs[1]["waveform_seg"] - figures = plot_results(y_hat, y, ap, name_prefix) - sample_voice = y_hat[0].squeeze(0).detach().cpu().numpy() - audios = {f"{name_prefix}/audio": sample_voice} - - alignments = outputs[1]["alignments"] - align_img = alignments[0].data.cpu().numpy().T - - figures.update( - { - "alignment": plot_alignment(align_img, output_fig=False), - } - ) - return figures, audios - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ): # pylint: disable=no-self-use - """Create visualizations and waveform examples. - - For example, here you can plot spectrograms and generate sample sample waveforms from these spectrograms to - be projected onto Tensorboard. - - Args: - ap (AudioProcessor): audio processor used at training. - batch (Dict): Model inputs used at the previous training step. - outputs (Dict): Model outputs generated at the previoud training step. - - Returns: - Tuple[Dict, np.ndarray]: training plots and output waveform. - """ - figures, audios = self._log(self.ap, batch, outputs, "train") - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - @torch.no_grad() - def eval_step(self, batch: dict, criterion: nn.Module, optimizer_idx: int): - return self.train_step(batch, criterion, optimizer_idx) - - def eval_log(self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int) -> None: - figures, audios = self._log(self.ap, batch, outputs, "eval") - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - def get_aux_input_from_test_sentences(self, sentence_info): - if hasattr(self.config, "model_args"): - config = self.config.model_args - else: - config = self.config - - # extract speaker and language info - text, speaker_name, style_wav, language_name = None, None, None, None - - if isinstance(sentence_info, list): - if len(sentence_info) == 1: - text = sentence_info[0] - elif len(sentence_info) == 2: - text, speaker_name = sentence_info - elif len(sentence_info) == 3: - text, speaker_name, style_wav = sentence_info - elif len(sentence_info) == 4: - text, speaker_name, style_wav, language_name = sentence_info - else: - text = sentence_info - - # get speaker id/d_vector - speaker_id, d_vector, language_id = None, None, None - if hasattr(self, "speaker_manager"): - if config.use_d_vector_file: - if speaker_name is None: - d_vector = self.speaker_manager.get_random_embedding() - else: - d_vector = self.speaker_manager.get_mean_embedding(speaker_name, num_samples=None, randomize=False) - elif config.use_speaker_embedding: - if speaker_name is None: - speaker_id = self.speaker_manager.get_random_id() - else: - speaker_id = self.speaker_manager.name_to_id[speaker_name] - - # get language id - if hasattr(self, "language_manager") and config.use_language_embedding and language_name is not None: - language_id = self.language_manager.name_to_id[language_name] - - return { - "text": text, - "speaker_id": speaker_id, - "style_wav": style_wav, - "d_vector": d_vector, - "language_id": language_id, - "language_name": language_name, - } - - @torch.no_grad() - def test_run(self, assets) -> Tuple[Dict, Dict]: - """Generic test run for `tts` models used by `Trainer`. - - You can override this for a different behaviour. - - Returns: - Tuple[Dict, Dict]: Test figures and audios to be projected to Tensorboard. - """ - print(" | > Synthesizing test sentences.") - test_audios = {} - test_figures = {} - test_sentences = self.config.test_sentences - for idx, s_info in enumerate(test_sentences): - aux_inputs = self.get_aux_input_from_test_sentences(s_info) - wav, alignment, _, _ = synthesis( - self, - aux_inputs["text"], - self.config, - "cuda" in str(next(self.parameters()).device), - speaker_id=aux_inputs["speaker_id"], - d_vector=aux_inputs["d_vector"], - style_wav=aux_inputs["style_wav"], - language_id=aux_inputs["language_id"], - use_griffin_lim=True, - do_trim_silence=False, - ).values() - test_audios["{}-audio".format(idx)] = wav - test_figures["{}-alignment".format(idx)] = plot_alignment(alignment.T, output_fig=False) - return {"figures": test_figures, "audios": test_audios} - - def test_log( - self, outputs: dict, logger: "Logger", assets: dict, steps: int # pylint: disable=unused-argument - ) -> None: - logger.test_audios(steps, outputs["audios"], self.ap.sample_rate) - logger.test_figures(steps, outputs["figures"]) - - def format_batch(self, batch: Dict) -> Dict: - """Compute speaker, langugage IDs and d_vector for the batch if necessary.""" - speaker_ids = None - language_ids = None - d_vectors = None - - # get numerical speaker ids from speaker names - if self.speaker_manager is not None and self.speaker_manager.name_to_id and self.args.use_speaker_embedding: - speaker_ids = [self.speaker_manager.name_to_id[sn] for sn in batch["speaker_names"]] - - if speaker_ids is not None: - speaker_ids = torch.LongTensor(speaker_ids) - - # get d_vectors from audio file names - if self.speaker_manager is not None and self.speaker_manager.embeddings and self.args.use_d_vector_file: - d_vector_mapping = self.speaker_manager.embeddings - d_vectors = [d_vector_mapping[w]["embedding"] for w in batch["audio_unique_names"]] - d_vectors = torch.FloatTensor(d_vectors) - - # get language ids from language names - if self.language_manager is not None and self.language_manager.name_to_id and self.args.use_language_embedding: - language_ids = [self.language_manager.name_to_id[ln] for ln in batch["language_names"]] - - if language_ids is not None: - language_ids = torch.LongTensor(language_ids) - - batch["language_ids"] = language_ids - batch["d_vectors"] = d_vectors - batch["speaker_ids"] = speaker_ids - return batch - - def format_batch_on_device(self, batch): - """Compute spectrograms on the device.""" - ac = self.config.audio - - if self.args.encoder_sample_rate: - wav = self.audio_resampler(batch["waveform"]) - else: - wav = batch["waveform"] - - # compute spectrograms - batch["spec"] = wav_to_spec(wav, ac.fft_size, ac.hop_length, ac.win_length, center=False) - - if self.args.encoder_sample_rate: - # recompute spec with high sampling rate to the loss - spec_mel = wav_to_spec(batch["waveform"], ac.fft_size, ac.hop_length, ac.win_length, center=False) - # remove extra stft frames if needed - if spec_mel.size(2) > int(batch["spec"].size(2) * self.interpolate_factor): - spec_mel = spec_mel[:, :, : int(batch["spec"].size(2) * self.interpolate_factor)] - else: - batch["spec"] = batch["spec"][:, :, : int(spec_mel.size(2) / self.interpolate_factor)] - else: - spec_mel = batch["spec"] - - batch["mel"] = spec_to_mel( - spec=spec_mel, - n_fft=ac.fft_size, - num_mels=ac.num_mels, - sample_rate=ac.sample_rate, - fmin=ac.mel_fmin, - fmax=ac.mel_fmax, - ) - - if self.args.encoder_sample_rate: - assert batch["spec"].shape[2] == int( - batch["mel"].shape[2] / self.interpolate_factor - ), f"{batch['spec'].shape[2]}, {batch['mel'].shape[2]}" - else: - assert batch["spec"].shape[2] == batch["mel"].shape[2], f"{batch['spec'].shape[2]}, {batch['mel'].shape[2]}" - - # compute spectrogram frame lengths - batch["spec_lens"] = (batch["spec"].shape[2] * batch["waveform_rel_lens"]).int() - batch["mel_lens"] = (batch["mel"].shape[2] * batch["waveform_rel_lens"]).int() - - if self.args.encoder_sample_rate: - assert (batch["spec_lens"] - (batch["mel_lens"] / self.interpolate_factor).int()).sum() == 0 - else: - assert (batch["spec_lens"] - batch["mel_lens"]).sum() == 0 - - # zero the padding frames - batch["spec"] = batch["spec"] * sequence_mask(batch["spec_lens"]).unsqueeze(1) - batch["mel"] = batch["mel"] * sequence_mask(batch["mel_lens"]).unsqueeze(1) - return batch - - def get_sampler(self, config: Coqpit, dataset: TTSDataset, num_gpus=1, is_eval=False): - weights = None - data_items = dataset.samples - if getattr(config, "use_weighted_sampler", False): - for attr_name, alpha in config.weighted_sampler_attrs.items(): - print(f" > Using weighted sampler for attribute '{attr_name}' with alpha '{alpha}'") - multi_dict = config.weighted_sampler_multipliers.get(attr_name, None) - print(multi_dict) - weights, attr_names, attr_weights = get_attribute_balancer_weights( - attr_name=attr_name, items=data_items, multi_dict=multi_dict - ) - weights = weights * alpha - print(f" > Attribute weights for '{attr_names}' \n | > {attr_weights}") - - # input_audio_lenghts = [os.path.getsize(x["audio_file"]) for x in data_items] - - if weights is not None: - w_sampler = WeightedRandomSampler(weights, len(weights)) - batch_sampler = BucketBatchSampler( - w_sampler, - data=data_items, - batch_size=config.eval_batch_size if is_eval else config.batch_size, - sort_key=lambda x: os.path.getsize(x["audio_file"]), - drop_last=True, - ) - else: - batch_sampler = None - # sampler for DDP - if batch_sampler is None: - batch_sampler = DistributedSampler(dataset) if num_gpus > 1 else None - else: # If a sampler is already defined use this sampler and DDP sampler together - batch_sampler = ( - DistributedSamplerWrapper(batch_sampler) if num_gpus > 1 else batch_sampler - ) # TODO: check batch_sampler with multi-gpu - return batch_sampler - - def get_data_loader( - self, - config: Coqpit, - assets: Dict, - is_eval: bool, - samples: Union[List[Dict], List[List]], - verbose: bool, - num_gpus: int, - rank: int = None, - ) -> "DataLoader": - if is_eval and not config.run_eval: - loader = None - else: - # init dataloader - dataset = VitsDataset( - model_args=self.args, - samples=samples, - batch_group_size=0 if is_eval else config.batch_group_size * config.batch_size, - min_text_len=config.min_text_len, - max_text_len=config.max_text_len, - min_audio_len=config.min_audio_len, - max_audio_len=config.max_audio_len, - phoneme_cache_path=config.phoneme_cache_path, - precompute_num_workers=config.precompute_num_workers, - verbose=verbose, - tokenizer=self.tokenizer, - start_by_longest=config.start_by_longest, - ) - - # wait all the DDP process to be ready - if num_gpus > 1: - dist.barrier() - - # sort input sequences from short to long - dataset.preprocess_samples() - - # get samplers - sampler = self.get_sampler(config, dataset, num_gpus) - if sampler is None: - loader = DataLoader( - dataset, - batch_size=config.eval_batch_size if is_eval else config.batch_size, - shuffle=False, # shuffle is done in the dataset. - collate_fn=dataset.collate_fn, - drop_last=False, # setting this False might cause issues in AMP training. - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=False, - ) - else: - if num_gpus > 1: - loader = DataLoader( - dataset, - sampler=sampler, - batch_size=config.eval_batch_size if is_eval else config.batch_size, - collate_fn=dataset.collate_fn, - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=False, - ) - else: - loader = DataLoader( - dataset, - batch_sampler=sampler, - collate_fn=dataset.collate_fn, - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=False, - ) - return loader - - def get_optimizer(self) -> List: - """Initiate and return the GAN optimizers based on the config parameters. - It returnes 2 optimizers in a list. First one is for the generator and the second one is for the discriminator. - Returns: - List: optimizers. - """ - # select generator parameters - optimizer0 = get_optimizer(self.config.optimizer, self.config.optimizer_params, self.config.lr_disc, self.disc) - - gen_parameters = chain(params for k, params in self.named_parameters() if not k.startswith("disc.")) - optimizer1 = get_optimizer( - self.config.optimizer, self.config.optimizer_params, self.config.lr_gen, parameters=gen_parameters - ) - return [optimizer0, optimizer1] - - def get_lr(self) -> List: - """Set the initial learning rates for each optimizer. - - Returns: - List: learning rates for each optimizer. - """ - return [self.config.lr_disc, self.config.lr_gen] - - def get_scheduler(self, optimizer) -> List: - """Set the schedulers for each optimizer. - - Args: - optimizer (List[`torch.optim.Optimizer`]): List of optimizers. - - Returns: - List: Schedulers, one for each optimizer. - """ - scheduler_D = get_scheduler(self.config.lr_scheduler_disc, self.config.lr_scheduler_disc_params, optimizer[0]) - scheduler_G = get_scheduler(self.config.lr_scheduler_gen, self.config.lr_scheduler_gen_params, optimizer[1]) - return [scheduler_D, scheduler_G] - - def get_criterion(self): - """Get criterions for each optimizer. The index in the output list matches the optimizer idx used in - `train_step()`""" - from TTS.tts.layers.losses import ( # pylint: disable=import-outside-toplevel - VitsDiscriminatorLoss, - VitsGeneratorLoss, - ) - - return [VitsDiscriminatorLoss(self.config), VitsGeneratorLoss(self.config)] - - def load_checkpoint( - self, config, checkpoint_path, eval=False, strict=True, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - """Load the model checkpoint and setup for training or inference""" - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - # compat band-aid for the pre-trained models to not use the encoder baked into the model - # TODO: consider baking the speaker encoder into the model and call it from there. - # as it is probably easier for model distribution. - state["model"] = {k: v for k, v in state["model"].items() if "speaker_encoder" not in k} - - if self.args.encoder_sample_rate is not None and eval: - # audio resampler is not used in inference time - self.audio_resampler = None - - # handle fine-tuning from a checkpoint with additional speakers - if hasattr(self, "emb_g") and state["model"]["emb_g.weight"].shape != self.emb_g.weight.shape: - num_new_speakers = self.emb_g.weight.shape[0] - state["model"]["emb_g.weight"].shape[0] - print(f" > Loading checkpoint with {num_new_speakers} additional speakers.") - emb_g = state["model"]["emb_g.weight"] - new_row = torch.randn(num_new_speakers, emb_g.shape[1]) - emb_g = torch.cat([emb_g, new_row], axis=0) - state["model"]["emb_g.weight"] = emb_g - # load the model weights - self.load_state_dict(state["model"], strict=strict) - - if eval: - self.eval() - assert not self.training - - def load_fairseq_checkpoint( - self, config, checkpoint_dir, eval=False, strict=True - ): # pylint: disable=unused-argument, redefined-builtin - """Load VITS checkpoints released by fairseq here: https://github.com/facebookresearch/fairseq/tree/main/examples/mms - Performs some changes for compatibility. - - Args: - config (Coqpit): 🐸TTS model config. - checkpoint_dir (str): Path to the checkpoint directory. - eval (bool, optional): Set to True for evaluation. Defaults to False. - """ - import json - - from TTS.tts.utils.text.cleaners import basic_cleaners - - self.disc = None - # set paths - config_file = os.path.join(checkpoint_dir, "config.json") - checkpoint_file = os.path.join(checkpoint_dir, "G_100000.pth") - vocab_file = os.path.join(checkpoint_dir, "vocab.txt") - # set config params - with open(config_file, "r", encoding="utf-8") as file: - # Load the JSON data as a dictionary - config_org = json.load(file) - self.config.audio.sample_rate = config_org["data"]["sampling_rate"] - # self.config.add_blank = config['add_blank'] - # set tokenizer - vocab = FairseqVocab(vocab_file) - self.text_encoder.emb = nn.Embedding(vocab.num_chars, config.model_args.hidden_channels) - self.tokenizer = TTSTokenizer( - use_phonemes=False, - text_cleaner=basic_cleaners, - characters=vocab, - phonemizer=None, - add_blank=config_org["data"]["add_blank"], - use_eos_bos=False, - ) - # load fairseq checkpoint - new_chk = rehash_fairseq_vits_checkpoint(checkpoint_file) - self.load_state_dict(new_chk, strict=strict) - if eval: - self.eval() - assert not self.training - - @staticmethod - def init_from_config(config: "VitsConfig", samples: Union[List[List], List[Dict]] = None, verbose=True): - """Initiate model from config - - Args: - config (VitsConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - """ - from TTS.utils.audio import AudioProcessor - - upsample_rate = torch.prod(torch.as_tensor(config.model_args.upsample_rates_decoder)).item() - - if not config.model_args.encoder_sample_rate: - assert ( - upsample_rate == config.audio.hop_length - ), f" [!] Product of upsample rates must be equal to the hop length - {upsample_rate} vs {config.audio.hop_length}" - else: - encoder_to_vocoder_upsampling_factor = config.audio.sample_rate / config.model_args.encoder_sample_rate - effective_hop_length = config.audio.hop_length * encoder_to_vocoder_upsampling_factor - assert ( - upsample_rate == effective_hop_length - ), f" [!] Product of upsample rates must be equal to the hop length - {upsample_rate} vs {effective_hop_length}" - - ap = AudioProcessor.init_from_config(config, verbose=verbose) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config, samples) - language_manager = LanguageManager.init_from_config(config) - - if config.model_args.speaker_encoder_model_path: - speaker_manager.init_encoder( - config.model_args.speaker_encoder_model_path, config.model_args.speaker_encoder_config_path - ) - return Vits(new_config, ap, tokenizer, speaker_manager, language_manager) - - def export_onnx(self, output_path: str = "coqui_vits.onnx", verbose: bool = True): - """Export model to ONNX format for inference - - Args: - output_path (str): Path to save the exported model. - verbose (bool): Print verbose information. Defaults to True. - """ - - # rollback values - _forward = self.forward - disc = None - if hasattr(self, "disc"): - disc = self.disc - training = self.training - - # set export mode - self.disc = None - self.eval() - - def onnx_inference(text, text_lengths, scales, sid=None, langid=None): - noise_scale = scales[0] - length_scale = scales[1] - noise_scale_dp = scales[2] - self.noise_scale = noise_scale - self.length_scale = length_scale - self.noise_scale_dp = noise_scale_dp - return self.inference( - text, - aux_input={ - "x_lengths": text_lengths, - "d_vectors": None, - "speaker_ids": sid, - "language_ids": langid, - "durations": None, - }, - )["model_outputs"] - - self.forward = onnx_inference - - # set dummy inputs - dummy_input_length = 100 - sequences = torch.randint(low=0, high=2, size=(1, dummy_input_length), dtype=torch.long) - sequence_lengths = torch.LongTensor([sequences.size(1)]) - scales = torch.FloatTensor([self.inference_noise_scale, self.length_scale, self.inference_noise_scale_dp]) - dummy_input = (sequences, sequence_lengths, scales) - input_names = ["input", "input_lengths", "scales"] - - if self.num_speakers > 0: - speaker_id = torch.LongTensor([0]) - dummy_input += (speaker_id,) - input_names.append("sid") - - if hasattr(self, "num_languages") and self.num_languages > 0 and self.embedded_language_dim > 0: - language_id = torch.LongTensor([0]) - dummy_input += (language_id,) - input_names.append("langid") - - # export to ONNX - torch.onnx.export( - model=self, - args=dummy_input, - opset_version=15, - f=output_path, - verbose=verbose, - input_names=input_names, - output_names=["output"], - dynamic_axes={ - "input": {0: "batch_size", 1: "phonemes"}, - "input_lengths": {0: "batch_size"}, - "output": {0: "batch_size", 1: "time1", 2: "time2"}, - }, - ) - - # rollback - self.forward = _forward - if training: - self.train() - if not disc is None: - self.disc = disc - - def load_onnx(self, model_path: str, cuda=False): - import onnxruntime as ort - - providers = [ - "CPUExecutionProvider" - if cuda is False - else ("CUDAExecutionProvider", {"cudnn_conv_algo_search": "DEFAULT"}) - ] - sess_options = ort.SessionOptions() - self.onnx_sess = ort.InferenceSession( - model_path, - sess_options=sess_options, - providers=providers, - ) - - def inference_onnx(self, x, x_lengths=None, speaker_id=None, language_id=None): - """ONNX inference""" - - if isinstance(x, torch.Tensor): - x = x.cpu().numpy() - - if x_lengths is None: - x_lengths = np.array([x.shape[1]], dtype=np.int64) - - if isinstance(x_lengths, torch.Tensor): - x_lengths = x_lengths.cpu().numpy() - scales = np.array( - [self.inference_noise_scale, self.length_scale, self.inference_noise_scale_dp], - dtype=np.float32, - ) - input_params = {"input": x, "input_lengths": x_lengths, "scales": scales} - if not speaker_id is None: - input_params["sid"] = torch.tensor([speaker_id]).cpu().numpy() - if not language_id is None: - input_params["langid"] = torch.tensor([language_id]).cpu().numpy() - - audio = self.onnx_sess.run( - ["output"], - input_params, - ) - return audio[0][0] - - -################################## -# VITS CHARACTERS -################################## - - -class VitsCharacters(BaseCharacters): - """Characters class for VITs model for compatibility with pre-trained models""" - - def __init__( - self, - graphemes: str = _characters, - punctuations: str = _punctuations, - pad: str = _pad, - ipa_characters: str = _phonemes, - ) -> None: - if ipa_characters is not None: - graphemes += ipa_characters - super().__init__(graphemes, punctuations, pad, None, None, "", is_unique=False, is_sorted=True) - - def _create_vocab(self): - self._vocab = [self._pad] + list(self._punctuations) + list(self._characters) + [self._blank] - self._char_to_id = {char: idx for idx, char in enumerate(self.vocab)} - # pylint: disable=unnecessary-comprehension - self._id_to_char = {idx: char for idx, char in enumerate(self.vocab)} - - @staticmethod - def init_from_config(config: Coqpit): - if config.characters is not None: - _pad = config.characters["pad"] - _punctuations = config.characters["punctuations"] - _letters = config.characters["characters"] - _letters_ipa = config.characters["phonemes"] - return ( - VitsCharacters(graphemes=_letters, ipa_characters=_letters_ipa, punctuations=_punctuations, pad=_pad), - config, - ) - characters = VitsCharacters() - new_config = replace(config, characters=characters.to_config()) - return characters, new_config - - def to_config(self) -> "CharactersConfig": - return CharactersConfig( - characters=self._characters, - punctuations=self._punctuations, - pad=self._pad, - eos=None, - bos=None, - blank=self._blank, - is_unique=False, - is_sorted=True, - ) - - -class FairseqVocab(BaseVocabulary): - def __init__(self, vocab: str): - super(FairseqVocab).__init__() - self.vocab = vocab - - @property - def vocab(self): - """Return the vocabulary dictionary.""" - return self._vocab - - @vocab.setter - def vocab(self, vocab_file): - with open(vocab_file, encoding="utf-8") as f: - self._vocab = [x.replace("\n", "") for x in f.readlines()] - self.blank = self._vocab[0] - self.pad = " " - self._char_to_id = {s: i for i, s in enumerate(self._vocab)} # pylint: disable=unnecessary-comprehension - self._id_to_char = {i: s for i, s in enumerate(self._vocab)} # pylint: disable=unnecessary-comprehension diff --git a/TTS/TTS/tts/utils/__init__.py b/TTS/TTS/tts/utils/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/utils/assets/tortoise/tokenizer.json b/TTS/TTS/tts/utils/assets/tortoise/tokenizer.json deleted file mode 100644 index a128f273053e465a15c488e48d8106e0c8b0898e..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/assets/tortoise/tokenizer.json +++ /dev/null @@ -1 +0,0 @@ -{"version":"1.0","truncation":null,"padding":null,"added_tokens":[{"id":0,"special":true,"content":"[STOP]","single_word":false,"lstrip":false,"rstrip":false,"normalized":false},{"id":1,"special":true,"content":"[UNK]","single_word":false,"lstrip":false,"rstrip":false,"normalized":false},{"id":2,"special":true,"content":"[SPACE]","single_word":false,"lstrip":false,"rstrip":false,"normalized":false}],"normalizer":null,"pre_tokenizer":{"type":"Whitespace"},"post_processor":null,"decoder":null,"model":{"type":"BPE","dropout":null,"unk_token":"[UNK]","continuing_subword_prefix":null,"end_of_word_suffix":null,"fuse_unk":false,"vocab":{"[STOP]":0,"[UNK]":1,"[SPACE]":2,"!":3,"'":4,"(":5,")":6,",":7,"-":8,".":9,"/":10,":":11,";":12,"?":13,"a":14,"b":15,"c":16,"d":17,"e":18,"f":19,"g":20,"h":21,"i":22,"j":23,"k":24,"l":25,"m":26,"n":27,"o":28,"p":29,"q":30,"r":31,"s":32,"t":33,"u":34,"v":35,"w":36,"x":37,"y":38,"z":39,"th":40,"in":41,"the":42,"an":43,"er":44,"ou":45,"re":46,"on":47,"at":48,"ed":49,"en":50,"to":51,"ing":52,"and":53,"is":54,"as":55,"al":56,"or":57,"of":58,"ar":59,"it":60,"es":61,"he":62,"st":63,"le":64,"om":65,"se":66,"be":67,"ad":68,"ow":69,"ly":70,"ch":71,"wh":72,"that":73,"you":74,"li":75,"ve":76,"ac":77,"ti":78,"ld":79,"me":80,"was":81,"gh":82,"id":83,"ll":84,"wi":85,"ent":86,"for":87,"ay":88,"ro":89,"ver":90,"ic":91,"her":92,"ke":93,"his":94,"no":95,"ut":96,"un":97,"ir":98,"lo":99,"we":100,"ri":101,"ha":102,"with":103,"ght":104,"out":105,"im":106,"ion":107,"all":108,"ab":109,"one":110,"ne":111,"ge":112,"ould":113,"ter":114,"mo":115,"had":116,"ce":117,"she":118,"go":119,"sh":120,"ur":121,"am":122,"so":123,"pe":124,"my":125,"de":126,"are":127,"but":128,"ome":129,"fr":130,"ther":131,"fe":132,"su":133,"do":134,"con":135,"te":136,"ain":137,"ere":138,"po":139,"if":140,"they":141,"us":142,"ag":143,"tr":144,"now":145,"oun":146,"this":147,"have":148,"not":149,"sa":150,"il":151,"up":152,"thing":153,"from":154,"ap":155,"him":156,"ack":157,"ation":158,"ant":159,"our":160,"op":161,"like":162,"ust":163,"ess":164,"bo":165,"ok":166,"ul":167,"ind":168,"ex":169,"com":170,"some":171,"there":172,"ers":173,"co":174,"res":175,"man":176,"ard":177,"pl":178,"wor":179,"way":180,"tion":181,"fo":182,"ca":183,"were":184,"by":185,"ate":186,"pro":187,"ted":188,"ound":189,"own":190,"would":191,"ts":192,"what":193,"qu":194,"ally":195,"ight":196,"ck":197,"gr":198,"when":199,"ven":200,"can":201,"ough":202,"ine":203,"end":204,"per":205,"ous":206,"od":207,"ide":208,"know":209,"ty":210,"very":211,"si":212,"ak":213,"who":214,"about":215,"ill":216,"them":217,"est":218,"red":219,"ye":220,"could":221,"ong":222,"your":223,"their":224,"em":225,"just":226,"other":227,"into":228,"any":229,"whi":230,"um":231,"tw":232,"ast":233,"der":234,"did":235,"ie":236,"been":237,"ace":238,"ink":239,"ity":240,"back":241,"ting":242,"br":243,"more":244,"ake":245,"pp":246,"then":247,"sp":248,"el":249,"use":250,"bl":251,"said":252,"over":253,"get":254},"merges":["t h","i n","th e","a n","e r","o u","r e","o n","a t","e d","e n","t o","in g","an d","i s","a s","a l","o r","o f","a r","i t","e s","h e","s t","l e","o m","s e","b e","a d","o w","l y","c h","w h","th at","y ou","l i","v e","a c","t i","l d","m e","w as","g h","i d","l l","w i","en t","f or","a y","r o","v er","i c","h er","k e","h is","n o","u t","u n","i r","l o","w e","r i","h a","wi th","gh t","ou t","i m","i on","al l","a b","on e","n e","g e","ou ld","t er","m o","h ad","c e","s he","g o","s h","u r","a m","s o","p e","m y","d e","a re","b ut","om e","f r","the r","f e","s u","d o","c on","t e","a in","er e","p o","i f","the y","u s","a g","t r","n ow","ou n","th is","ha ve","no t","s a","i l","u p","th ing","fr om","a p","h im","ac k","at ion","an t","ou r","o p","li ke","u st","es s","b o","o k","u l","in d","e x","c om","s ome","the re","er s","c o","re s","m an","ar d","p l","w or","w ay","ti on","f o","c a","w ere","b y","at e","p ro","t ed","oun d","ow n","w ould","t s","wh at","q u","al ly","i ght","c k","g r","wh en","v en","c an","ou gh","in e","en d","p er","ou s","o d","id e","k now","t y","ver y","s i","a k","wh o","ab out","i ll","the m","es t","re d","y e","c ould","on g","you r","the ir","e m","j ust","o ther","in to","an y","wh i","u m","t w","as t","d er","d id","i e","be en","ac e","in k","it y","b ack","t ing","b r","mo re","a ke","p p","the n","s p","e l","u se","b l","sa id","o ver","ge t"]}} \ No newline at end of file diff --git a/TTS/TTS/tts/utils/data.py b/TTS/TTS/tts/utils/data.py deleted file mode 100644 index 22e46b683adfc7f6c7c8a57fb5b697e422cd915c..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/data.py +++ /dev/null @@ -1,79 +0,0 @@ -import bisect - -import numpy as np -import torch - - -def _pad_data(x, length): - _pad = 0 - assert x.ndim == 1 - return np.pad(x, (0, length - x.shape[0]), mode="constant", constant_values=_pad) - - -def prepare_data(inputs): - max_len = max((len(x) for x in inputs)) - return np.stack([_pad_data(x, max_len) for x in inputs]) - - -def _pad_tensor(x, length): - _pad = 0.0 - assert x.ndim == 2 - x = np.pad(x, [[0, 0], [0, length - x.shape[1]]], mode="constant", constant_values=_pad) - return x - - -def prepare_tensor(inputs, out_steps): - max_len = max((x.shape[1] for x in inputs)) - remainder = max_len % out_steps - pad_len = max_len + (out_steps - remainder) if remainder > 0 else max_len - return np.stack([_pad_tensor(x, pad_len) for x in inputs]) - - -def _pad_stop_target(x: np.ndarray, length: int, pad_val=1) -> np.ndarray: - """Pad stop target array. - - Args: - x (np.ndarray): Stop target array. - length (int): Length after padding. - pad_val (int, optional): Padding value. Defaults to 1. - - Returns: - np.ndarray: Padded stop target array. - """ - assert x.ndim == 1 - return np.pad(x, (0, length - x.shape[0]), mode="constant", constant_values=pad_val) - - -def prepare_stop_target(inputs, out_steps): - """Pad row vectors with 1.""" - max_len = max((x.shape[0] for x in inputs)) - remainder = max_len % out_steps - pad_len = max_len + (out_steps - remainder) if remainder > 0 else max_len - return np.stack([_pad_stop_target(x, pad_len) for x in inputs]) - - -def pad_per_step(inputs, pad_len): - return np.pad(inputs, [[0, 0], [0, 0], [0, pad_len]], mode="constant", constant_values=0.0) - - -def get_length_balancer_weights(items: list, num_buckets=10): - # get all durations - audio_lengths = np.array([item["audio_length"] for item in items]) - # create the $num_buckets buckets classes based in the dataset max and min length - max_length = int(max(audio_lengths)) - min_length = int(min(audio_lengths)) - step = int((max_length - min_length) / num_buckets) + 1 - buckets_classes = [i + step for i in range(min_length, (max_length - step) + num_buckets + 1, step)] - # add each sample in their respective length bucket - buckets_names = np.array( - [buckets_classes[bisect.bisect_left(buckets_classes, item["audio_length"])] for item in items] - ) - # count and compute the weights_bucket for each sample - unique_buckets_names = np.unique(buckets_names).tolist() - bucket_ids = [unique_buckets_names.index(l) for l in buckets_names] - bucket_count = np.array([len(np.where(buckets_names == l)[0]) for l in unique_buckets_names]) - weight_bucket = 1.0 / bucket_count - dataset_samples_weight = np.array([weight_bucket[l] for l in bucket_ids]) - # normalize - dataset_samples_weight = dataset_samples_weight / np.linalg.norm(dataset_samples_weight) - return torch.from_numpy(dataset_samples_weight).float() diff --git a/TTS/TTS/tts/utils/fairseq.py b/TTS/TTS/tts/utils/fairseq.py deleted file mode 100644 index 3d8eec2b4ee0d7b0c79e368616d4b75fb2e551d4..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/fairseq.py +++ /dev/null @@ -1,48 +0,0 @@ -import torch - - -def rehash_fairseq_vits_checkpoint(checkpoint_file): - chk = torch.load(checkpoint_file, map_location=torch.device("cpu"))["model"] - new_chk = {} - for k, v in chk.items(): - if "enc_p." in k: - new_chk[k.replace("enc_p.", "text_encoder.")] = v - elif "dec." in k: - new_chk[k.replace("dec.", "waveform_decoder.")] = v - elif "enc_q." in k: - new_chk[k.replace("enc_q.", "posterior_encoder.")] = v - elif "flow.flows.2." in k: - new_chk[k.replace("flow.flows.2.", "flow.flows.1.")] = v - elif "flow.flows.4." in k: - new_chk[k.replace("flow.flows.4.", "flow.flows.2.")] = v - elif "flow.flows.6." in k: - new_chk[k.replace("flow.flows.6.", "flow.flows.3.")] = v - elif "dp.flows.0.m" in k: - new_chk[k.replace("dp.flows.0.m", "duration_predictor.flows.0.translation")] = v - elif "dp.flows.0.logs" in k: - new_chk[k.replace("dp.flows.0.logs", "duration_predictor.flows.0.log_scale")] = v - elif "dp.flows.1" in k: - new_chk[k.replace("dp.flows.1", "duration_predictor.flows.1")] = v - elif "dp.flows.3" in k: - new_chk[k.replace("dp.flows.3", "duration_predictor.flows.2")] = v - elif "dp.flows.5" in k: - new_chk[k.replace("dp.flows.5", "duration_predictor.flows.3")] = v - elif "dp.flows.7" in k: - new_chk[k.replace("dp.flows.7", "duration_predictor.flows.4")] = v - elif "dp.post_flows.0.m" in k: - new_chk[k.replace("dp.post_flows.0.m", "duration_predictor.post_flows.0.translation")] = v - elif "dp.post_flows.0.logs" in k: - new_chk[k.replace("dp.post_flows.0.logs", "duration_predictor.post_flows.0.log_scale")] = v - elif "dp.post_flows.1" in k: - new_chk[k.replace("dp.post_flows.1", "duration_predictor.post_flows.1")] = v - elif "dp.post_flows.3" in k: - new_chk[k.replace("dp.post_flows.3", "duration_predictor.post_flows.2")] = v - elif "dp.post_flows.5" in k: - new_chk[k.replace("dp.post_flows.5", "duration_predictor.post_flows.3")] = v - elif "dp.post_flows.7" in k: - new_chk[k.replace("dp.post_flows.7", "duration_predictor.post_flows.4")] = v - elif "dp." in k: - new_chk[k.replace("dp.", "duration_predictor.")] = v - else: - new_chk[k] = v - return new_chk diff --git a/TTS/TTS/tts/utils/helpers.py b/TTS/TTS/tts/utils/helpers.py deleted file mode 100644 index 7b37201f8410eb34300d8bb2b1a595d5c5cfc42f..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/helpers.py +++ /dev/null @@ -1,258 +0,0 @@ -import numpy as np -import torch -from scipy.stats import betabinom -from torch.nn import functional as F - -try: - from TTS.tts.utils.monotonic_align.core import maximum_path_c - - CYTHON = True -except ModuleNotFoundError: - CYTHON = False - - -class StandardScaler: - """StandardScaler for mean-scale normalization with the given mean and scale values.""" - - def __init__(self, mean: np.ndarray = None, scale: np.ndarray = None) -> None: - self.mean_ = mean - self.scale_ = scale - - def set_stats(self, mean, scale): - self.mean_ = mean - self.scale_ = scale - - def reset_stats(self): - delattr(self, "mean_") - delattr(self, "scale_") - - def transform(self, X): - X = np.asarray(X) - X -= self.mean_ - X /= self.scale_ - return X - - def inverse_transform(self, X): - X = np.asarray(X) - X *= self.scale_ - X += self.mean_ - return X - - -# from https://gist.github.com/jihunchoi/f1434a77df9db1bb337417854b398df1 -def sequence_mask(sequence_length, max_len=None): - """Create a sequence mask for filtering padding in a sequence tensor. - - Args: - sequence_length (torch.tensor): Sequence lengths. - max_len (int, Optional): Maximum sequence length. Defaults to None. - - Shapes: - - mask: :math:`[B, T_max]` - """ - if max_len is None: - max_len = sequence_length.max() - seq_range = torch.arange(max_len, dtype=sequence_length.dtype, device=sequence_length.device) - # B x T_max - return seq_range.unsqueeze(0) < sequence_length.unsqueeze(1) - - -def segment(x: torch.tensor, segment_indices: torch.tensor, segment_size=4, pad_short=False): - """Segment each sample in a batch based on the provided segment indices - - Args: - x (torch.tensor): Input tensor. - segment_indices (torch.tensor): Segment indices. - segment_size (int): Expected output segment size. - pad_short (bool): Pad the end of input tensor with zeros if shorter than the segment size. - """ - # pad the input tensor if it is shorter than the segment size - if pad_short and x.shape[-1] < segment_size: - x = torch.nn.functional.pad(x, (0, segment_size - x.size(2))) - - segments = torch.zeros_like(x[:, :, :segment_size]) - - for i in range(x.size(0)): - index_start = segment_indices[i] - index_end = index_start + segment_size - x_i = x[i] - if pad_short and index_end >= x.size(2): - # pad the sample if it is shorter than the segment size - x_i = torch.nn.functional.pad(x_i, (0, (index_end + 1) - x.size(2))) - segments[i] = x_i[:, index_start:index_end] - return segments - - -def rand_segments( - x: torch.tensor, x_lengths: torch.tensor = None, segment_size=4, let_short_samples=False, pad_short=False -): - """Create random segments based on the input lengths. - - Args: - x (torch.tensor): Input tensor. - x_lengths (torch.tensor): Input lengths. - segment_size (int): Expected output segment size. - let_short_samples (bool): Allow shorter samples than the segment size. - pad_short (bool): Pad the end of input tensor with zeros if shorter than the segment size. - - Shapes: - - x: :math:`[B, C, T]` - - x_lengths: :math:`[B]` - """ - _x_lenghts = x_lengths.clone() - B, _, T = x.size() - if pad_short: - if T < segment_size: - x = torch.nn.functional.pad(x, (0, segment_size - T)) - T = segment_size - if _x_lenghts is None: - _x_lenghts = T - len_diff = _x_lenghts - segment_size - if let_short_samples: - _x_lenghts[len_diff < 0] = segment_size - len_diff = _x_lenghts - segment_size - else: - assert all( - len_diff > 0 - ), f" [!] At least one sample is shorter than the segment size ({segment_size}). \n {_x_lenghts}" - segment_indices = (torch.rand([B]).type_as(x) * (len_diff + 1)).long() - ret = segment(x, segment_indices, segment_size, pad_short=pad_short) - return ret, segment_indices - - -def average_over_durations(values, durs): - """Average values over durations. - - Shapes: - - values: :math:`[B, 1, T_de]` - - durs: :math:`[B, T_en]` - - avg: :math:`[B, 1, T_en]` - """ - durs_cums_ends = torch.cumsum(durs, dim=1).long() - durs_cums_starts = torch.nn.functional.pad(durs_cums_ends[:, :-1], (1, 0)) - values_nonzero_cums = torch.nn.functional.pad(torch.cumsum(values != 0.0, dim=2), (1, 0)) - values_cums = torch.nn.functional.pad(torch.cumsum(values, dim=2), (1, 0)) - - bs, l = durs_cums_ends.size() - n_formants = values.size(1) - dcs = durs_cums_starts[:, None, :].expand(bs, n_formants, l) - dce = durs_cums_ends[:, None, :].expand(bs, n_formants, l) - - values_sums = (torch.gather(values_cums, 2, dce) - torch.gather(values_cums, 2, dcs)).float() - values_nelems = (torch.gather(values_nonzero_cums, 2, dce) - torch.gather(values_nonzero_cums, 2, dcs)).float() - - avg = torch.where(values_nelems == 0.0, values_nelems, values_sums / values_nelems) - return avg - - -def convert_pad_shape(pad_shape): - l = pad_shape[::-1] - pad_shape = [item for sublist in l for item in sublist] - return pad_shape - - -def generate_path(duration, mask): - """ - Shapes: - - duration: :math:`[B, T_en]` - - mask: :math:'[B, T_en, T_de]` - - path: :math:`[B, T_en, T_de]` - """ - b, t_x, t_y = mask.shape - cum_duration = torch.cumsum(duration, 1) - - cum_duration_flat = cum_duration.view(b * t_x) - path = sequence_mask(cum_duration_flat, t_y).to(mask.dtype) - path = path.view(b, t_x, t_y) - path = path - F.pad(path, convert_pad_shape([[0, 0], [1, 0], [0, 0]]))[:, :-1] - path = path * mask - return path - - -def maximum_path(value, mask): - if CYTHON: - return maximum_path_cython(value, mask) - return maximum_path_numpy(value, mask) - - -def maximum_path_cython(value, mask): - """Cython optimised version. - Shapes: - - value: :math:`[B, T_en, T_de]` - - mask: :math:`[B, T_en, T_de]` - """ - value = value * mask - device = value.device - dtype = value.dtype - value = value.data.cpu().numpy().astype(np.float32) - path = np.zeros_like(value).astype(np.int32) - mask = mask.data.cpu().numpy() - - t_x_max = mask.sum(1)[:, 0].astype(np.int32) - t_y_max = mask.sum(2)[:, 0].astype(np.int32) - maximum_path_c(path, value, t_x_max, t_y_max) - return torch.from_numpy(path).to(device=device, dtype=dtype) - - -def maximum_path_numpy(value, mask, max_neg_val=None): - """ - Monotonic alignment search algorithm - Numpy-friendly version. It's about 4 times faster than torch version. - value: [b, t_x, t_y] - mask: [b, t_x, t_y] - """ - if max_neg_val is None: - max_neg_val = -np.inf # Patch for Sphinx complaint - value = value * mask - - device = value.device - dtype = value.dtype - value = value.cpu().detach().numpy() - mask = mask.cpu().detach().numpy().astype(bool) - - b, t_x, t_y = value.shape - direction = np.zeros(value.shape, dtype=np.int64) - v = np.zeros((b, t_x), dtype=np.float32) - x_range = np.arange(t_x, dtype=np.float32).reshape(1, -1) - for j in range(t_y): - v0 = np.pad(v, [[0, 0], [1, 0]], mode="constant", constant_values=max_neg_val)[:, :-1] - v1 = v - max_mask = v1 >= v0 - v_max = np.where(max_mask, v1, v0) - direction[:, :, j] = max_mask - - index_mask = x_range <= j - v = np.where(index_mask, v_max + value[:, :, j], max_neg_val) - direction = np.where(mask, direction, 1) - - path = np.zeros(value.shape, dtype=np.float32) - index = mask[:, :, 0].sum(1).astype(np.int64) - 1 - index_range = np.arange(b) - for j in reversed(range(t_y)): - path[index_range, index, j] = 1 - index = index + direction[index_range, index, j] - 1 - path = path * mask.astype(np.float32) - path = torch.from_numpy(path).to(device=device, dtype=dtype) - return path - - -def beta_binomial_prior_distribution(phoneme_count, mel_count, scaling_factor=1.0): - P, M = phoneme_count, mel_count - x = np.arange(0, P) - mel_text_probs = [] - for i in range(1, M + 1): - a, b = scaling_factor * i, scaling_factor * (M + 1 - i) - rv = betabinom(P, a, b) - mel_i_prob = rv.pmf(x) - mel_text_probs.append(mel_i_prob) - return np.array(mel_text_probs) - - -def compute_attn_prior(x_len, y_len, scaling_factor=1.0): - """Compute attention priors for the alignment network.""" - attn_prior = beta_binomial_prior_distribution( - x_len, - y_len, - scaling_factor, - ) - return attn_prior # [y_len, x_len] diff --git a/TTS/TTS/tts/utils/languages.py b/TTS/TTS/tts/utils/languages.py deleted file mode 100644 index 1e1836b32ce2010ad55a0253849f2e59c61dad82..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/languages.py +++ /dev/null @@ -1,125 +0,0 @@ -import os -from typing import Any, Dict, List - -import fsspec -import numpy as np -import torch -from coqpit import Coqpit - -from TTS.config import check_config_and_model_args -from TTS.tts.utils.managers import BaseIDManager - - -class LanguageManager(BaseIDManager): - """Manage the languages for multi-lingual 🐸TTS models. Load a datafile and parse the information - in a way that can be queried by language. - - Args: - language_ids_file_path (str, optional): Path to the metafile that maps language names to ids used by - TTS models. Defaults to "". - config (Coqpit, optional): Coqpit config that contains the language information in the datasets filed. - Defaults to None. - - Examples: - >>> manager = LanguageManager(language_ids_file_path=language_ids_file_path) - >>> language_id_mapper = manager.language_ids - """ - - def __init__( - self, - language_ids_file_path: str = "", - config: Coqpit = None, - ): - super().__init__(id_file_path=language_ids_file_path) - - if config: - self.set_language_ids_from_config(config) - - @property - def num_languages(self) -> int: - return len(list(self.name_to_id.keys())) - - @property - def language_names(self) -> List: - return list(self.name_to_id.keys()) - - @staticmethod - def parse_language_ids_from_config(c: Coqpit) -> Dict: - """Set language id from config. - - Args: - c (Coqpit): Config - - Returns: - Tuple[Dict, int]: Language ID mapping and the number of languages. - """ - languages = set({}) - for dataset in c.datasets: - if "language" in dataset: - languages.add(dataset["language"]) - else: - raise ValueError(f"Dataset {dataset['name']} has no language specified.") - return {name: i for i, name in enumerate(sorted(list(languages)))} - - def set_language_ids_from_config(self, c: Coqpit) -> None: - """Set language IDs from config samples. - - Args: - c (Coqpit): Config. - """ - self.name_to_id = self.parse_language_ids_from_config(c) - - @staticmethod - def parse_ids_from_data(items: List, parse_key: str) -> Any: - raise NotImplementedError - - def set_ids_from_data(self, items: List, parse_key: str) -> Any: - raise NotImplementedError - - def save_ids_to_file(self, file_path: str) -> None: - """Save language IDs to a json file. - - Args: - file_path (str): Path to the output file. - """ - self._save_json(file_path, self.name_to_id) - - @staticmethod - def init_from_config(config: Coqpit) -> "LanguageManager": - """Initialize the language manager from a Coqpit config. - - Args: - config (Coqpit): Coqpit config. - """ - language_manager = None - if check_config_and_model_args(config, "use_language_embedding", True): - if config.get("language_ids_file", None): - language_manager = LanguageManager(language_ids_file_path=config.language_ids_file) - language_manager = LanguageManager(config=config) - return language_manager - - -def _set_file_path(path): - """Find the language_ids.json under the given path or the above it. - Intended to band aid the different paths returned in restored and continued training.""" - path_restore = os.path.join(os.path.dirname(path), "language_ids.json") - path_continue = os.path.join(path, "language_ids.json") - fs = fsspec.get_mapper(path).fs - if fs.exists(path_restore): - return path_restore - if fs.exists(path_continue): - return path_continue - return None - - -def get_language_balancer_weights(items: list): - language_names = np.array([item["language"] for item in items]) - unique_language_names = np.unique(language_names).tolist() - language_ids = [unique_language_names.index(l) for l in language_names] - language_count = np.array([len(np.where(language_names == l)[0]) for l in unique_language_names]) - weight_language = 1.0 / language_count - # get weight for each sample - dataset_samples_weight = np.array([weight_language[l] for l in language_ids]) - # normalize - dataset_samples_weight = dataset_samples_weight / np.linalg.norm(dataset_samples_weight) - return torch.from_numpy(dataset_samples_weight).float() diff --git a/TTS/TTS/tts/utils/managers.py b/TTS/TTS/tts/utils/managers.py deleted file mode 100644 index 1f94c5332df1e2774955eb263c3b688c5ad6e827..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/managers.py +++ /dev/null @@ -1,383 +0,0 @@ -import json -import random -from typing import Any, Dict, List, Tuple, Union - -import fsspec -import numpy as np -import torch - -from TTS.config import load_config -from TTS.encoder.utils.generic_utils import setup_encoder_model -from TTS.utils.audio import AudioProcessor - - -def load_file(path: str): - if path.endswith(".json"): - with fsspec.open(path, "r") as f: - return json.load(f) - elif path.endswith(".pth"): - with fsspec.open(path, "rb") as f: - return torch.load(f, map_location="cpu") - else: - raise ValueError("Unsupported file type") - - -def save_file(obj: Any, path: str): - if path.endswith(".json"): - with fsspec.open(path, "w") as f: - json.dump(obj, f, indent=4) - elif path.endswith(".pth"): - with fsspec.open(path, "wb") as f: - torch.save(obj, f) - else: - raise ValueError("Unsupported file type") - - -class BaseIDManager: - """Base `ID` Manager class. Every new `ID` manager must inherit this. - It defines common `ID` manager specific functions. - """ - - def __init__(self, id_file_path: str = ""): - self.name_to_id = {} - - if id_file_path: - self.load_ids_from_file(id_file_path) - - @staticmethod - def _load_json(json_file_path: str) -> Dict: - with fsspec.open(json_file_path, "r") as f: - return json.load(f) - - @staticmethod - def _save_json(json_file_path: str, data: dict) -> None: - with fsspec.open(json_file_path, "w") as f: - json.dump(data, f, indent=4) - - def set_ids_from_data(self, items: List, parse_key: str) -> None: - """Set IDs from data samples. - - Args: - items (List): Data sampled returned by `load_tts_samples()`. - """ - self.name_to_id = self.parse_ids_from_data(items, parse_key=parse_key) - - def load_ids_from_file(self, file_path: str) -> None: - """Set IDs from a file. - - Args: - file_path (str): Path to the file. - """ - self.name_to_id = load_file(file_path) - - def save_ids_to_file(self, file_path: str) -> None: - """Save IDs to a json file. - - Args: - file_path (str): Path to the output file. - """ - save_file(self.name_to_id, file_path) - - def get_random_id(self) -> Any: - """Get a random embedding. - - Args: - - Returns: - np.ndarray: embedding. - """ - if self.name_to_id: - return self.name_to_id[random.choices(list(self.name_to_id.keys()))[0]] - - return None - - @staticmethod - def parse_ids_from_data(items: List, parse_key: str) -> Tuple[Dict]: - """Parse IDs from data samples retured by `load_tts_samples()`. - - Args: - items (list): Data sampled returned by `load_tts_samples()`. - parse_key (str): The key to being used to parse the data. - Returns: - Tuple[Dict]: speaker IDs. - """ - classes = sorted({item[parse_key] for item in items}) - ids = {name: i for i, name in enumerate(classes)} - return ids - - -class EmbeddingManager(BaseIDManager): - """Base `Embedding` Manager class. Every new `Embedding` manager must inherit this. - It defines common `Embedding` manager specific functions. - - It expects embeddings files in the following format: - - :: - - { - 'audio_file_key':{ - 'name': 'category_name', - 'embedding'[] - }, - ... - } - - `audio_file_key` is a unique key to the audio file in the dataset. It can be the path to the file or any other unique key. - `embedding` is the embedding vector of the audio file. - `name` can be name of the speaker of the audio file. - """ - - def __init__( - self, - embedding_file_path: Union[str, List[str]] = "", - id_file_path: str = "", - encoder_model_path: str = "", - encoder_config_path: str = "", - use_cuda: bool = False, - ): - super().__init__(id_file_path=id_file_path) - - self.embeddings = {} - self.embeddings_by_names = {} - self.clip_ids = [] - self.encoder = None - self.encoder_ap = None - self.use_cuda = use_cuda - - if embedding_file_path: - if isinstance(embedding_file_path, list): - self.load_embeddings_from_list_of_files(embedding_file_path) - else: - self.load_embeddings_from_file(embedding_file_path) - - if encoder_model_path and encoder_config_path: - self.init_encoder(encoder_model_path, encoder_config_path, use_cuda) - - @property - def num_embeddings(self): - """Get number of embeddings.""" - return len(self.embeddings) - - @property - def num_names(self): - """Get number of embeddings.""" - return len(self.embeddings_by_names) - - @property - def embedding_dim(self): - """Dimensionality of embeddings. If embeddings are not loaded, returns zero.""" - if self.embeddings: - return len(self.embeddings[list(self.embeddings.keys())[0]]["embedding"]) - return 0 - - @property - def embedding_names(self): - """Get embedding names.""" - return list(self.embeddings_by_names.keys()) - - def save_embeddings_to_file(self, file_path: str) -> None: - """Save embeddings to a json file. - - Args: - file_path (str): Path to the output file. - """ - save_file(self.embeddings, file_path) - - @staticmethod - def read_embeddings_from_file(file_path: str): - """Load embeddings from a json file. - - Args: - file_path (str): Path to the file. - """ - embeddings = load_file(file_path) - speakers = sorted({x["name"] for x in embeddings.values()}) - name_to_id = {name: i for i, name in enumerate(speakers)} - clip_ids = list(set(sorted(clip_name for clip_name in embeddings.keys()))) - # cache embeddings_by_names for fast inference using a bigger speakers.json - embeddings_by_names = {} - for x in embeddings.values(): - if x["name"] not in embeddings_by_names.keys(): - embeddings_by_names[x["name"]] = [x["embedding"]] - else: - embeddings_by_names[x["name"]].append(x["embedding"]) - return name_to_id, clip_ids, embeddings, embeddings_by_names - - def load_embeddings_from_file(self, file_path: str) -> None: - """Load embeddings from a json file. - - Args: - file_path (str): Path to the target json file. - """ - self.name_to_id, self.clip_ids, self.embeddings, self.embeddings_by_names = self.read_embeddings_from_file( - file_path - ) - - def load_embeddings_from_list_of_files(self, file_paths: List[str]) -> None: - """Load embeddings from a list of json files and don't allow duplicate keys. - - Args: - file_paths (List[str]): List of paths to the target json files. - """ - self.name_to_id = {} - self.clip_ids = [] - self.embeddings_by_names = {} - self.embeddings = {} - for file_path in file_paths: - ids, clip_ids, embeddings, embeddings_by_names = self.read_embeddings_from_file(file_path) - # check colliding keys - duplicates = set(self.embeddings.keys()) & set(embeddings.keys()) - if duplicates: - raise ValueError(f" [!] Duplicate embedding names <{duplicates}> in {file_path}") - # store values - self.name_to_id.update(ids) - self.clip_ids.extend(clip_ids) - self.embeddings_by_names.update(embeddings_by_names) - self.embeddings.update(embeddings) - - # reset name_to_id to get the right speaker ids - self.name_to_id = {name: i for i, name in enumerate(self.name_to_id)} - - def get_embedding_by_clip(self, clip_idx: str) -> List: - """Get embedding by clip ID. - - Args: - clip_idx (str): Target clip ID. - - Returns: - List: embedding as a list. - """ - return self.embeddings[clip_idx]["embedding"] - - def get_embeddings_by_name(self, idx: str) -> List[List]: - """Get all embeddings of a speaker. - - Args: - idx (str): Target name. - - Returns: - List[List]: all the embeddings of the given speaker. - """ - return self.embeddings_by_names[idx] - - def get_embeddings_by_names(self) -> Dict: - """Get all embeddings by names. - - Returns: - Dict: all the embeddings of each speaker. - """ - embeddings_by_names = {} - for x in self.embeddings.values(): - if x["name"] not in embeddings_by_names.keys(): - embeddings_by_names[x["name"]] = [x["embedding"]] - else: - embeddings_by_names[x["name"]].append(x["embedding"]) - return embeddings_by_names - - def get_mean_embedding(self, idx: str, num_samples: int = None, randomize: bool = False) -> np.ndarray: - """Get mean embedding of a idx. - - Args: - idx (str): Target name. - num_samples (int, optional): Number of samples to be averaged. Defaults to None. - randomize (bool, optional): Pick random `num_samples` of embeddings. Defaults to False. - - Returns: - np.ndarray: Mean embedding. - """ - embeddings = self.get_embeddings_by_name(idx) - if num_samples is None: - embeddings = np.stack(embeddings).mean(0) - else: - assert len(embeddings) >= num_samples, f" [!] {idx} has number of samples < {num_samples}" - if randomize: - embeddings = np.stack(random.choices(embeddings, k=num_samples)).mean(0) - else: - embeddings = np.stack(embeddings[:num_samples]).mean(0) - return embeddings - - def get_random_embedding(self) -> Any: - """Get a random embedding. - - Args: - - Returns: - np.ndarray: embedding. - """ - if self.embeddings: - return self.embeddings[random.choices(list(self.embeddings.keys()))[0]]["embedding"] - - return None - - def get_clips(self) -> List: - return sorted(self.embeddings.keys()) - - def init_encoder(self, model_path: str, config_path: str, use_cuda=False) -> None: - """Initialize a speaker encoder model. - - Args: - model_path (str): Model file path. - config_path (str): Model config file path. - use_cuda (bool, optional): Use CUDA. Defaults to False. - """ - self.use_cuda = use_cuda - self.encoder_config = load_config(config_path) - self.encoder = setup_encoder_model(self.encoder_config) - self.encoder_criterion = self.encoder.load_checkpoint( - self.encoder_config, model_path, eval=True, use_cuda=use_cuda, cache=True - ) - self.encoder_ap = AudioProcessor(**self.encoder_config.audio) - - def compute_embedding_from_clip(self, wav_file: Union[str, List[str]]) -> list: - """Compute a embedding from a given audio file. - - Args: - wav_file (Union[str, List[str]]): Target file path. - - Returns: - list: Computed embedding. - """ - - def _compute(wav_file: str): - waveform = self.encoder_ap.load_wav(wav_file, sr=self.encoder_ap.sample_rate) - if not self.encoder_config.model_params.get("use_torch_spec", False): - m_input = self.encoder_ap.melspectrogram(waveform) - m_input = torch.from_numpy(m_input) - else: - m_input = torch.from_numpy(waveform) - - if self.use_cuda: - m_input = m_input.cuda() - m_input = m_input.unsqueeze(0) - embedding = self.encoder.compute_embedding(m_input) - return embedding - - if isinstance(wav_file, list): - # compute the mean embedding - embeddings = None - for wf in wav_file: - embedding = _compute(wf) - if embeddings is None: - embeddings = embedding - else: - embeddings += embedding - return (embeddings / len(wav_file))[0].tolist() - embedding = _compute(wav_file) - return embedding[0].tolist() - - def compute_embeddings(self, feats: Union[torch.Tensor, np.ndarray]) -> List: - """Compute embedding from features. - - Args: - feats (Union[torch.Tensor, np.ndarray]): Input features. - - Returns: - List: computed embedding. - """ - if isinstance(feats, np.ndarray): - feats = torch.from_numpy(feats) - if feats.ndim == 2: - feats = feats.unsqueeze(0) - if self.use_cuda: - feats = feats.cuda() - return self.encoder.compute_embedding(feats) diff --git a/TTS/TTS/tts/utils/measures.py b/TTS/TTS/tts/utils/measures.py deleted file mode 100644 index 90e862e1190bdb8443933580b3ff47321f70cecd..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/measures.py +++ /dev/null @@ -1,15 +0,0 @@ -def alignment_diagonal_score(alignments, binary=False): - """ - Compute how diagonal alignment predictions are. It is useful - to measure the alignment consistency of a model - Args: - alignments (torch.Tensor): batch of alignments. - binary (bool): if True, ignore scores and consider attention - as a binary mask. - Shape: - - alignments : :math:`[B, T_de, T_en]` - """ - maxs = alignments.max(dim=1)[0] - if binary: - maxs[maxs > 0] = 1 - return maxs.mean(dim=1).mean(dim=0).item() diff --git a/TTS/TTS/tts/utils/monotonic_align/__init__.py b/TTS/TTS/tts/utils/monotonic_align/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/utils/monotonic_align/core.pyx b/TTS/TTS/tts/utils/monotonic_align/core.pyx deleted file mode 100644 index 091fcc3a50a51f3d3fee47a70825260757e6d885..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/monotonic_align/core.pyx +++ /dev/null @@ -1,47 +0,0 @@ -import numpy as np - -cimport cython -cimport numpy as np - -from cython.parallel import prange - - -@cython.boundscheck(False) -@cython.wraparound(False) -cdef void maximum_path_each(int[:,::1] path, float[:,::1] value, int t_x, int t_y, float max_neg_val) nogil: - cdef int x - cdef int y - cdef float v_prev - cdef float v_cur - cdef float tmp - cdef int index = t_x - 1 - - for y in range(t_y): - for x in range(max(0, t_x + y - t_y), min(t_x, y + 1)): - if x == y: - v_cur = max_neg_val - else: - v_cur = value[x, y-1] - if x == 0: - if y == 0: - v_prev = 0. - else: - v_prev = max_neg_val - else: - v_prev = value[x-1, y-1] - value[x, y] = max(v_cur, v_prev) + value[x, y] - - for y in range(t_y - 1, -1, -1): - path[index, y] = 1 - if index != 0 and (index == y or value[index, y-1] < value[index-1, y-1]): - index = index - 1 - - -@cython.boundscheck(False) -@cython.wraparound(False) -cpdef void maximum_path_c(int[:,:,::1] paths, float[:,:,::1] values, int[::1] t_xs, int[::1] t_ys, float max_neg_val=-1e9) nogil: - cdef int b = values.shape[0] - - cdef int i - for i in prange(b, nogil=True): - maximum_path_each(paths[i], values[i], t_xs[i], t_ys[i], max_neg_val) diff --git a/TTS/TTS/tts/utils/monotonic_align/setup.py b/TTS/TTS/tts/utils/monotonic_align/setup.py deleted file mode 100644 index f22bc6a35a5a04c9e6d7b82040973722c9b770c9..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/monotonic_align/setup.py +++ /dev/null @@ -1,7 +0,0 @@ -# from distutils.core import setup -# from Cython.Build import cythonize -# import numpy - -# setup(name='monotonic_align', -# ext_modules=cythonize("core.pyx"), -# include_dirs=[numpy.get_include()]) diff --git a/TTS/TTS/tts/utils/speakers.py b/TTS/TTS/tts/utils/speakers.py deleted file mode 100644 index e49695268d6a4a3ac8e5f41df8954f07b16b5566..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/speakers.py +++ /dev/null @@ -1,222 +0,0 @@ -import json -import os -from typing import Any, Dict, List, Union - -import fsspec -import numpy as np -import torch -from coqpit import Coqpit - -from TTS.config import get_from_config_or_model_args_with_default -from TTS.tts.utils.managers import EmbeddingManager - - -class SpeakerManager(EmbeddingManager): - """Manage the speakers for multi-speaker 🐸TTS models. Load a datafile and parse the information - in a way that can be queried by speaker or clip. - - There are 3 different scenarios considered: - - 1. Models using speaker embedding layers. The datafile only maps speaker names to ids used by the embedding layer. - 2. Models using d-vectors. The datafile includes a dictionary in the following format. - - :: - - { - 'clip_name.wav':{ - 'name': 'speakerA', - 'embedding'[] - }, - ... - } - - - 3. Computing the d-vectors by the speaker encoder. It loads the speaker encoder model and - computes the d-vectors for a given clip or speaker. - - Args: - d_vectors_file_path (str, optional): Path to the metafile including x vectors. Defaults to "". - speaker_id_file_path (str, optional): Path to the metafile that maps speaker names to ids used by - TTS models. Defaults to "". - encoder_model_path (str, optional): Path to the speaker encoder model file. Defaults to "". - encoder_config_path (str, optional): Path to the spealer encoder config file. Defaults to "". - - Examples: - >>> # load audio processor and speaker encoder - >>> ap = AudioProcessor(**config.audio) - >>> manager = SpeakerManager(encoder_model_path=encoder_model_path, encoder_config_path=encoder_config_path) - >>> # load a sample audio and compute embedding - >>> waveform = ap.load_wav(sample_wav_path) - >>> mel = ap.melspectrogram(waveform) - >>> d_vector = manager.compute_embeddings(mel.T) - """ - - def __init__( - self, - data_items: List[List[Any]] = None, - d_vectors_file_path: str = "", - speaker_id_file_path: str = "", - encoder_model_path: str = "", - encoder_config_path: str = "", - use_cuda: bool = False, - ): - super().__init__( - embedding_file_path=d_vectors_file_path, - id_file_path=speaker_id_file_path, - encoder_model_path=encoder_model_path, - encoder_config_path=encoder_config_path, - use_cuda=use_cuda, - ) - - if data_items: - self.set_ids_from_data(data_items, parse_key="speaker_name") - - @property - def num_speakers(self): - return len(self.name_to_id) - - @property - def speaker_names(self): - return list(self.name_to_id.keys()) - - def get_speakers(self) -> List: - return self.name_to_id - - @staticmethod - def init_from_config(config: "Coqpit", samples: Union[List[List], List[Dict]] = None) -> "SpeakerManager": - """Initialize a speaker manager from config - - Args: - config (Coqpit): Config object. - samples (Union[List[List], List[Dict]], optional): List of data samples to parse out the speaker names. - Defaults to None. - - Returns: - SpeakerEncoder: Speaker encoder object. - """ - speaker_manager = None - if get_from_config_or_model_args_with_default(config, "use_speaker_embedding", False): - if samples: - speaker_manager = SpeakerManager(data_items=samples) - if get_from_config_or_model_args_with_default(config, "speaker_file", None): - speaker_manager = SpeakerManager( - speaker_id_file_path=get_from_config_or_model_args_with_default(config, "speaker_file", None) - ) - if get_from_config_or_model_args_with_default(config, "speakers_file", None): - speaker_manager = SpeakerManager( - speaker_id_file_path=get_from_config_or_model_args_with_default(config, "speakers_file", None) - ) - - if get_from_config_or_model_args_with_default(config, "use_d_vector_file", False): - speaker_manager = SpeakerManager() - if get_from_config_or_model_args_with_default(config, "d_vector_file", None): - speaker_manager = SpeakerManager( - d_vectors_file_path=get_from_config_or_model_args_with_default(config, "d_vector_file", None) - ) - return speaker_manager - - -def _set_file_path(path): - """Find the speakers.json under the given path or the above it. - Intended to band aid the different paths returned in restored and continued training.""" - path_restore = os.path.join(os.path.dirname(path), "speakers.json") - path_continue = os.path.join(path, "speakers.json") - fs = fsspec.get_mapper(path).fs - if fs.exists(path_restore): - return path_restore - if fs.exists(path_continue): - return path_continue - raise FileNotFoundError(f" [!] `speakers.json` not found in {path}") - - -def load_speaker_mapping(out_path): - """Loads speaker mapping if already present.""" - if os.path.splitext(out_path)[1] == ".json": - json_file = out_path - else: - json_file = _set_file_path(out_path) - with fsspec.open(json_file, "r") as f: - return json.load(f) - - -def save_speaker_mapping(out_path, speaker_mapping): - """Saves speaker mapping if not yet present.""" - if out_path is not None: - speakers_json_path = _set_file_path(out_path) - with fsspec.open(speakers_json_path, "w") as f: - json.dump(speaker_mapping, f, indent=4) - - -def get_speaker_manager(c: Coqpit, data: List = None, restore_path: str = None, out_path: str = None) -> SpeakerManager: - """Initiate a `SpeakerManager` instance by the provided config. - - Args: - c (Coqpit): Model configuration. - restore_path (str): Path to a previous training folder. - data (List): Data samples used in training to infer speakers from. It must be provided if speaker embedding - layers is used. Defaults to None. - out_path (str, optional): Save the generated speaker IDs to a output path. Defaults to None. - - Returns: - SpeakerManager: initialized and ready to use instance. - """ - speaker_manager = SpeakerManager() - if c.use_speaker_embedding: - if data is not None: - speaker_manager.set_ids_from_data(data, parse_key="speaker_name") - if restore_path: - speakers_file = _set_file_path(restore_path) - # restoring speaker manager from a previous run. - if c.use_d_vector_file: - # restore speaker manager with the embedding file - if not os.path.exists(speakers_file): - print("WARNING: speakers.json was not found in restore_path, trying to use CONFIG.d_vector_file") - if not os.path.exists(c.d_vector_file): - raise RuntimeError( - "You must copy the file speakers.json to restore_path, or set a valid file in CONFIG.d_vector_file" - ) - speaker_manager.load_embeddings_from_file(c.d_vector_file) - speaker_manager.load_embeddings_from_file(speakers_file) - elif not c.use_d_vector_file: # restor speaker manager with speaker ID file. - speaker_ids_from_data = speaker_manager.name_to_id - speaker_manager.load_ids_from_file(speakers_file) - assert all( - speaker in speaker_manager.name_to_id for speaker in speaker_ids_from_data - ), " [!] You cannot introduce new speakers to a pre-trained model." - elif c.use_d_vector_file and c.d_vector_file: - # new speaker manager with external speaker embeddings. - speaker_manager.load_embeddings_from_file(c.d_vector_file) - elif c.use_d_vector_file and not c.d_vector_file: - raise "use_d_vector_file is True, so you need pass a external speaker embedding file." - elif c.use_speaker_embedding and "speakers_file" in c and c.speakers_file: - # new speaker manager with speaker IDs file. - speaker_manager.load_ids_from_file(c.speakers_file) - - if speaker_manager.num_speakers > 0: - print( - " > Speaker manager is loaded with {} speakers: {}".format( - speaker_manager.num_speakers, ", ".join(speaker_manager.name_to_id) - ) - ) - - # save file if path is defined - if out_path: - out_file_path = os.path.join(out_path, "speakers.json") - print(f" > Saving `speakers.json` to {out_file_path}.") - if c.use_d_vector_file and c.d_vector_file: - speaker_manager.save_embeddings_to_file(out_file_path) - else: - speaker_manager.save_ids_to_file(out_file_path) - return speaker_manager - - -def get_speaker_balancer_weights(items: list): - speaker_names = np.array([item["speaker_name"] for item in items]) - unique_speaker_names = np.unique(speaker_names).tolist() - speaker_ids = [unique_speaker_names.index(l) for l in speaker_names] - speaker_count = np.array([len(np.where(speaker_names == l)[0]) for l in unique_speaker_names]) - weight_speaker = 1.0 / speaker_count - dataset_samples_weight = np.array([weight_speaker[l] for l in speaker_ids]) - # normalize - dataset_samples_weight = dataset_samples_weight / np.linalg.norm(dataset_samples_weight) - return torch.from_numpy(dataset_samples_weight).float() diff --git a/TTS/TTS/tts/utils/ssim.py b/TTS/TTS/tts/utils/ssim.py deleted file mode 100644 index 4bc3befc5bd3fb154cd48b4458184a4d8f3dca78..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/ssim.py +++ /dev/null @@ -1,383 +0,0 @@ -# Adopted from https://github.com/photosynthesis-team/piq - -from typing import List, Optional, Tuple, Union - -import torch -import torch.nn.functional as F -from torch.nn.modules.loss import _Loss - - -def _reduce(x: torch.Tensor, reduction: str = "mean") -> torch.Tensor: - r"""Reduce input in batch dimension if needed. - Args: - x: Tensor with shape (N, *). - reduction: Specifies the reduction type: - ``'none'`` | ``'mean'`` | ``'sum'``. Default: ``'mean'`` - """ - if reduction == "none": - return x - if reduction == "mean": - return x.mean(dim=0) - if reduction == "sum": - return x.sum(dim=0) - raise ValueError("Unknown reduction. Expected one of {'none', 'mean', 'sum'}") - - -def _validate_input( - tensors: List[torch.Tensor], - dim_range: Tuple[int, int] = (0, -1), - data_range: Tuple[float, float] = (0.0, -1.0), - # size_dim_range: Tuple[float, float] = (0., -1.), - size_range: Optional[Tuple[int, int]] = None, -) -> None: - r"""Check that input(-s) satisfies the requirements - Args: - tensors: Tensors to check - dim_range: Allowed number of dimensions. (min, max) - data_range: Allowed range of values in tensors. (min, max) - size_range: Dimensions to include in size comparison. (start_dim, end_dim + 1) - """ - - if not __debug__: - return - - x = tensors[0] - - for t in tensors: - assert torch.is_tensor(t), f"Expected torch.Tensor, got {type(t)}" - assert t.device == x.device, f"Expected tensors to be on {x.device}, got {t.device}" - - if size_range is None: - assert t.size() == x.size(), f"Expected tensors with same size, got {t.size()} and {x.size()}" - else: - assert ( - t.size()[size_range[0] : size_range[1]] == x.size()[size_range[0] : size_range[1]] - ), f"Expected tensors with same size at given dimensions, got {t.size()} and {x.size()}" - - if dim_range[0] == dim_range[1]: - assert t.dim() == dim_range[0], f"Expected number of dimensions to be {dim_range[0]}, got {t.dim()}" - elif dim_range[0] < dim_range[1]: - assert ( - dim_range[0] <= t.dim() <= dim_range[1] - ), f"Expected number of dimensions to be between {dim_range[0]} and {dim_range[1]}, got {t.dim()}" - - if data_range[0] < data_range[1]: - assert data_range[0] <= t.min(), f"Expected values to be greater or equal to {data_range[0]}, got {t.min()}" - assert t.max() <= data_range[1], f"Expected values to be lower or equal to {data_range[1]}, got {t.max()}" - - -def gaussian_filter(kernel_size: int, sigma: float) -> torch.Tensor: - r"""Returns 2D Gaussian kernel N(0,`sigma`^2) - Args: - size: Size of the kernel - sigma: Std of the distribution - Returns: - gaussian_kernel: Tensor with shape (1, kernel_size, kernel_size) - """ - coords = torch.arange(kernel_size, dtype=torch.float32) - coords -= (kernel_size - 1) / 2.0 - - g = coords**2 - g = (-(g.unsqueeze(0) + g.unsqueeze(1)) / (2 * sigma**2)).exp() - - g /= g.sum() - return g.unsqueeze(0) - - -def ssim( - x: torch.Tensor, - y: torch.Tensor, - kernel_size: int = 11, - kernel_sigma: float = 1.5, - data_range: Union[int, float] = 1.0, - reduction: str = "mean", - full: bool = False, - downsample: bool = True, - k1: float = 0.01, - k2: float = 0.03, -) -> List[torch.Tensor]: - r"""Interface of Structural Similarity (SSIM) index. - Inputs supposed to be in range ``[0, data_range]``. - To match performance with skimage and tensorflow set ``'downsample' = True``. - - Args: - x: An input tensor. Shape :math:`(N, C, H, W)` or :math:`(N, C, H, W, 2)`. - y: A target tensor. Shape :math:`(N, C, H, W)` or :math:`(N, C, H, W, 2)`. - kernel_size: The side-length of the sliding window used in comparison. Must be an odd value. - kernel_sigma: Sigma of normal distribution. - data_range: Maximum value range of images (usually 1.0 or 255). - reduction: Specifies the reduction type: - ``'none'`` | ``'mean'`` | ``'sum'``. Default:``'mean'`` - full: Return cs map or not. - downsample: Perform average pool before SSIM computation. Default: True - k1: Algorithm parameter, K1 (small constant). - k2: Algorithm parameter, K2 (small constant). - Try a larger K2 constant (e.g. 0.4) if you get a negative or NaN results. - - Returns: - Value of Structural Similarity (SSIM) index. In case of 5D input tensors, complex value is returned - as a tensor of size 2. - - References: - Wang, Z., Bovik, A. C., Sheikh, H. R., & Simoncelli, E. P. (2004). - Image quality assessment: From error visibility to structural similarity. - IEEE Transactions on Image Processing, 13, 600-612. - https://ece.uwaterloo.ca/~z70wang/publications/ssim.pdf, - DOI: `10.1109/TIP.2003.819861` - """ - assert kernel_size % 2 == 1, f"Kernel size must be odd, got [{kernel_size}]" - _validate_input([x, y], dim_range=(4, 5), data_range=(0, data_range)) - - x = x / float(data_range) - y = y / float(data_range) - - # Averagepool image if the size is large enough - f = max(1, round(min(x.size()[-2:]) / 256)) - if (f > 1) and downsample: - x = F.avg_pool2d(x, kernel_size=f) - y = F.avg_pool2d(y, kernel_size=f) - - kernel = gaussian_filter(kernel_size, kernel_sigma).repeat(x.size(1), 1, 1, 1).to(y) - _compute_ssim_per_channel = _ssim_per_channel_complex if x.dim() == 5 else _ssim_per_channel - ssim_map, cs_map = _compute_ssim_per_channel(x=x, y=y, kernel=kernel, k1=k1, k2=k2) - ssim_val = ssim_map.mean(1) - cs = cs_map.mean(1) - - ssim_val = _reduce(ssim_val, reduction) - cs = _reduce(cs, reduction) - - if full: - return [ssim_val, cs] - - return ssim_val - - -class SSIMLoss(_Loss): - r"""Creates a criterion that measures the structural similarity index error between - each element in the input :math:`x` and target :math:`y`. - - To match performance with skimage and tensorflow set ``'downsample' = True``. - - The unreduced (i.e. with :attr:`reduction` set to ``'none'``) loss can be described as: - - .. math:: - SSIM = \{ssim_1,\dots,ssim_{N \times C}\}\\ - ssim_{l}(x, y) = \frac{(2 \mu_x \mu_y + c_1) (2 \sigma_{xy} + c_2)} - {(\mu_x^2 +\mu_y^2 + c_1)(\sigma_x^2 +\sigma_y^2 + c_2)}, - - where :math:`N` is the batch size, `C` is the channel size. If :attr:`reduction` is not ``'none'`` - (default ``'mean'``), then: - - .. math:: - SSIMLoss(x, y) = - \begin{cases} - \operatorname{mean}(1 - SSIM), & \text{if reduction} = \text{'mean';}\\ - \operatorname{sum}(1 - SSIM), & \text{if reduction} = \text{'sum'.} - \end{cases} - - :math:`x` and :math:`y` are tensors of arbitrary shapes with a total - of :math:`n` elements each. - - The sum operation still operates over all the elements, and divides by :math:`n`. - The division by :math:`n` can be avoided if one sets ``reduction = 'sum'``. - In case of 5D input tensors, complex value is returned as a tensor of size 2. - - Args: - kernel_size: By default, the mean and covariance of a pixel is obtained - by convolution with given filter_size. - kernel_sigma: Standard deviation for Gaussian kernel. - k1: Coefficient related to c1 in the above equation. - k2: Coefficient related to c2 in the above equation. - downsample: Perform average pool before SSIM computation. Default: True - reduction: Specifies the reduction type: - ``'none'`` | ``'mean'`` | ``'sum'``. Default:``'mean'`` - data_range: Maximum value range of images (usually 1.0 or 255). - - Examples: - >>> loss = SSIMLoss() - >>> x = torch.rand(3, 3, 256, 256, requires_grad=True) - >>> y = torch.rand(3, 3, 256, 256) - >>> output = loss(x, y) - >>> output.backward() - - References: - Wang, Z., Bovik, A. C., Sheikh, H. R., & Simoncelli, E. P. (2004). - Image quality assessment: From error visibility to structural similarity. - IEEE Transactions on Image Processing, 13, 600-612. - https://ece.uwaterloo.ca/~z70wang/publications/ssim.pdf, - DOI:`10.1109/TIP.2003.819861` - """ - __constants__ = ["kernel_size", "k1", "k2", "sigma", "kernel", "reduction"] - - def __init__( - self, - kernel_size: int = 11, - kernel_sigma: float = 1.5, - k1: float = 0.01, - k2: float = 0.03, - downsample: bool = True, - reduction: str = "mean", - data_range: Union[int, float] = 1.0, - ) -> None: - super().__init__() - - # Generic loss parameters. - self.reduction = reduction - - # Loss-specific parameters. - self.kernel_size = kernel_size - - # This check might look redundant because kernel size is checked within the ssim function anyway. - # However, this check allows to fail fast when the loss is being initialised and training has not been started. - assert kernel_size % 2 == 1, f"Kernel size must be odd, got [{kernel_size}]" - self.kernel_sigma = kernel_sigma - self.k1 = k1 - self.k2 = k2 - self.downsample = downsample - self.data_range = data_range - - def forward(self, x: torch.Tensor, y: torch.Tensor) -> torch.Tensor: - r"""Computation of Structural Similarity (SSIM) index as a loss function. - - Args: - x: An input tensor. Shape :math:`(N, C, H, W)` or :math:`(N, C, H, W, 2)`. - y: A target tensor. Shape :math:`(N, C, H, W)` or :math:`(N, C, H, W, 2)`. - - Returns: - Value of SSIM loss to be minimized, i.e ``1 - ssim`` in [0, 1] range. In case of 5D input tensors, - complex value is returned as a tensor of size 2. - """ - - score = ssim( - x=x, - y=y, - kernel_size=self.kernel_size, - kernel_sigma=self.kernel_sigma, - downsample=self.downsample, - data_range=self.data_range, - reduction=self.reduction, - full=False, - k1=self.k1, - k2=self.k2, - ) - return torch.ones_like(score) - score - - -def _ssim_per_channel( - x: torch.Tensor, - y: torch.Tensor, - kernel: torch.Tensor, - k1: float = 0.01, - k2: float = 0.03, -) -> Union[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]]: - r"""Calculate Structural Similarity (SSIM) index for X and Y per channel. - - Args: - x: An input tensor. Shape :math:`(N, C, H, W)`. - y: A target tensor. Shape :math:`(N, C, H, W)`. - kernel: 2D Gaussian kernel. - k1: Algorithm parameter, K1 (small constant, see [1]). - k2: Algorithm parameter, K2 (small constant, see [1]). - Try a larger K2 constant (e.g. 0.4) if you get a negative or NaN results. - - Returns: - Full Value of Structural Similarity (SSIM) index. - """ - if x.size(-1) < kernel.size(-1) or x.size(-2) < kernel.size(-2): - raise ValueError( - f"Kernel size can't be greater than actual input size. Input size: {x.size()}. " - f"Kernel size: {kernel.size()}" - ) - - c1 = k1**2 - c2 = k2**2 - n_channels = x.size(1) - mu_x = F.conv2d(x, weight=kernel, stride=1, padding=0, groups=n_channels) - mu_y = F.conv2d(y, weight=kernel, stride=1, padding=0, groups=n_channels) - - mu_xx = mu_x**2 - mu_yy = mu_y**2 - mu_xy = mu_x * mu_y - - sigma_xx = F.conv2d(x**2, weight=kernel, stride=1, padding=0, groups=n_channels) - mu_xx - sigma_yy = F.conv2d(y**2, weight=kernel, stride=1, padding=0, groups=n_channels) - mu_yy - sigma_xy = F.conv2d(x * y, weight=kernel, stride=1, padding=0, groups=n_channels) - mu_xy - - # Contrast sensitivity (CS) with alpha = beta = gamma = 1. - cs = (2.0 * sigma_xy + c2) / (sigma_xx + sigma_yy + c2) - - # Structural similarity (SSIM) - ss = (2.0 * mu_xy + c1) / (mu_xx + mu_yy + c1) * cs - - ssim_val = ss.mean(dim=(-1, -2)) - cs = cs.mean(dim=(-1, -2)) - return ssim_val, cs - - -def _ssim_per_channel_complex( - x: torch.Tensor, - y: torch.Tensor, - kernel: torch.Tensor, - k1: float = 0.01, - k2: float = 0.03, -) -> Union[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]]: - r"""Calculate Structural Similarity (SSIM) index for Complex X and Y per channel. - - Args: - x: An input tensor. Shape :math:`(N, C, H, W, 2)`. - y: A target tensor. Shape :math:`(N, C, H, W, 2)`. - kernel: 2-D gauss kernel. - k1: Algorithm parameter, K1 (small constant, see [1]). - k2: Algorithm parameter, K2 (small constant, see [1]). - Try a larger K2 constant (e.g. 0.4) if you get a negative or NaN results. - - Returns: - Full Value of Complex Structural Similarity (SSIM) index. - """ - n_channels = x.size(1) - if x.size(-2) < kernel.size(-1) or x.size(-3) < kernel.size(-2): - raise ValueError( - f"Kernel size can't be greater than actual input size. Input size: {x.size()}. " - f"Kernel size: {kernel.size()}" - ) - - c1 = k1**2 - c2 = k2**2 - - x_real = x[..., 0] - x_imag = x[..., 1] - y_real = y[..., 0] - y_imag = y[..., 1] - - mu1_real = F.conv2d(x_real, weight=kernel, stride=1, padding=0, groups=n_channels) - mu1_imag = F.conv2d(x_imag, weight=kernel, stride=1, padding=0, groups=n_channels) - mu2_real = F.conv2d(y_real, weight=kernel, stride=1, padding=0, groups=n_channels) - mu2_imag = F.conv2d(y_imag, weight=kernel, stride=1, padding=0, groups=n_channels) - - mu1_sq = mu1_real.pow(2) + mu1_imag.pow(2) - mu2_sq = mu2_real.pow(2) + mu2_imag.pow(2) - mu1_mu2_real = mu1_real * mu2_real - mu1_imag * mu2_imag - mu1_mu2_imag = mu1_real * mu2_imag + mu1_imag * mu2_real - - compensation = 1.0 - - x_sq = x_real.pow(2) + x_imag.pow(2) - y_sq = y_real.pow(2) + y_imag.pow(2) - x_y_real = x_real * y_real - x_imag * y_imag - x_y_imag = x_real * y_imag + x_imag * y_real - - sigma1_sq = F.conv2d(x_sq, weight=kernel, stride=1, padding=0, groups=n_channels) - mu1_sq - sigma2_sq = F.conv2d(y_sq, weight=kernel, stride=1, padding=0, groups=n_channels) - mu2_sq - sigma12_real = F.conv2d(x_y_real, weight=kernel, stride=1, padding=0, groups=n_channels) - mu1_mu2_real - sigma12_imag = F.conv2d(x_y_imag, weight=kernel, stride=1, padding=0, groups=n_channels) - mu1_mu2_imag - sigma12 = torch.stack((sigma12_imag, sigma12_real), dim=-1) - mu1_mu2 = torch.stack((mu1_mu2_real, mu1_mu2_imag), dim=-1) - # Set alpha = beta = gamma = 1. - cs_map = (sigma12 * 2 + c2 * compensation) / (sigma1_sq.unsqueeze(-1) + sigma2_sq.unsqueeze(-1) + c2 * compensation) - ssim_map = (mu1_mu2 * 2 + c1 * compensation) / (mu1_sq.unsqueeze(-1) + mu2_sq.unsqueeze(-1) + c1 * compensation) - ssim_map = ssim_map * cs_map - - ssim_val = ssim_map.mean(dim=(-2, -3)) - cs = cs_map.mean(dim=(-2, -3)) - - return ssim_val, cs diff --git a/TTS/TTS/tts/utils/synthesis.py b/TTS/TTS/tts/utils/synthesis.py deleted file mode 100644 index d3c29f93467ae2a06753e5eae1699b4b87e049ba..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/synthesis.py +++ /dev/null @@ -1,342 +0,0 @@ -from typing import Dict - -import numpy as np -import torch -from torch import nn - - -def numpy_to_torch(np_array, dtype, cuda=False, device="cpu"): - if cuda: - device = "cuda" - if np_array is None: - return None - tensor = torch.as_tensor(np_array, dtype=dtype, device=device) - return tensor - - -def compute_style_mel(style_wav, ap, cuda=False, device="cpu"): - if cuda: - device = "cuda" - style_mel = torch.FloatTensor( - ap.melspectrogram(ap.load_wav(style_wav, sr=ap.sample_rate)), device=device, - ).unsqueeze(0) - return style_mel - - -def run_model_torch( - model: nn.Module, - inputs: torch.Tensor, - speaker_id: int = None, - style_mel: torch.Tensor = None, - style_text: str = None, - d_vector: torch.Tensor = None, - language_id: torch.Tensor = None, -) -> Dict: - """Run a torch model for inference. It does not support batch inference. - - Args: - model (nn.Module): The model to run inference. - inputs (torch.Tensor): Input tensor with character ids. - speaker_id (int, optional): Input speaker ids for multi-speaker models. Defaults to None. - style_mel (torch.Tensor, optional): Spectrograms used for voice styling . Defaults to None. - d_vector (torch.Tensor, optional): d-vector for multi-speaker models . Defaults to None. - - Returns: - Dict: model outputs. - """ - input_lengths = torch.tensor(inputs.shape[1:2]).to(inputs.device) - if hasattr(model, "module"): - _func = model.module.inference - else: - _func = model.inference - outputs = _func( - inputs, - aux_input={ - "x_lengths": input_lengths, - "speaker_ids": speaker_id, - "d_vectors": d_vector, - "style_mel": style_mel, - "style_text": style_text, - "language_ids": language_id, - }, - ) - return outputs - - -def trim_silence(wav, ap): - return wav[: ap.find_endpoint(wav)] - - -def inv_spectrogram(postnet_output, ap, CONFIG): - if CONFIG.model.lower() in ["tacotron"]: - wav = ap.inv_spectrogram(postnet_output.T) - else: - wav = ap.inv_melspectrogram(postnet_output.T) - return wav - - -def id_to_torch(aux_id, cuda=False, device="cpu"): - if cuda: - device = "cuda" - if aux_id is not None: - aux_id = np.asarray(aux_id) - aux_id = torch.from_numpy(aux_id).to(device) - return aux_id - - -def embedding_to_torch(d_vector, cuda=False, device="cpu"): - if cuda: - device = "cuda" - if d_vector is not None: - d_vector = np.asarray(d_vector) - d_vector = torch.from_numpy(d_vector).type(torch.FloatTensor) - d_vector = d_vector.squeeze().unsqueeze(0).to(device) - return d_vector - - -# TODO: perform GL with pytorch for batching -def apply_griffin_lim(inputs, input_lens, CONFIG, ap): - """Apply griffin-lim to each sample iterating throught the first dimension. - Args: - inputs (Tensor or np.Array): Features to be converted by GL. First dimension is the batch size. - input_lens (Tensor or np.Array): 1D array of sample lengths. - CONFIG (Dict): TTS config. - ap (AudioProcessor): TTS audio processor. - """ - wavs = [] - for idx, spec in enumerate(inputs): - wav_len = (input_lens[idx] * ap.hop_length) - ap.hop_length # inverse librosa padding - wav = inv_spectrogram(spec, ap, CONFIG) - # assert len(wav) == wav_len, f" [!] wav lenght: {len(wav)} vs expected: {wav_len}" - wavs.append(wav[:wav_len]) - return wavs - - -def synthesis( - model, - text, - CONFIG, - use_cuda, - speaker_id=None, - style_wav=None, - style_text=None, - use_griffin_lim=False, - do_trim_silence=False, - d_vector=None, - language_id=None, -): - """Synthesize voice for the given text using Griffin-Lim vocoder or just compute output features to be passed to - the vocoder model. - - Args: - model (TTS.tts.models): - The TTS model to synthesize audio with. - - text (str): - The input text to convert to speech. - - CONFIG (Coqpit): - Model configuration. - - use_cuda (bool): - Enable/disable CUDA. - - speaker_id (int): - Speaker ID passed to the speaker embedding layer in multi-speaker model. Defaults to None. - - style_wav (str | Dict[str, float]): - Path or tensor to/of a waveform used for computing the style embedding based on GST or Capacitron. - Defaults to None, meaning that Capacitron models will sample from the prior distribution to - generate random but realistic prosody. - - style_text (str): - Transcription of style_wav for Capacitron models. Defaults to None. - - enable_eos_bos_chars (bool): - enable special chars for end of sentence and start of sentence. Defaults to False. - - do_trim_silence (bool): - trim silence after synthesis. Defaults to False. - - d_vector (torch.Tensor): - d-vector for multi-speaker models in share :math:`[1, D]`. Defaults to None. - - language_id (int): - Language ID passed to the language embedding layer in multi-langual model. Defaults to None. - """ - # device - device = next(model.parameters()).device - if use_cuda: - device = "cuda" - - # GST or Capacitron processing - # TODO: need to handle the case of setting both gst and capacitron to true somewhere - style_mel = None - if CONFIG.has("gst") and CONFIG.gst and style_wav is not None: - if isinstance(style_wav, dict): - style_mel = style_wav - else: - style_mel = compute_style_mel(style_wav, model.ap, device=device) - - if CONFIG.has("capacitron_vae") and CONFIG.use_capacitron_vae and style_wav is not None: - style_mel = compute_style_mel(style_wav, model.ap, device=device) - style_mel = style_mel.transpose(1, 2) # [1, time, depth] - - language_name = None - if language_id is not None: - language = [k for k, v in model.language_manager.name_to_id.items() if v == language_id] - assert len(language) == 1, "language_id must be a valid language" - language_name = language[0] - - # convert text to sequence of token IDs - text_inputs = np.asarray( - model.tokenizer.text_to_ids(text, language=language_name), - dtype=np.int32, - ) - # pass tensors to backend - if speaker_id is not None: - speaker_id = id_to_torch(speaker_id, device=device) - - if d_vector is not None: - d_vector = embedding_to_torch(d_vector, device=device) - - if language_id is not None: - language_id = id_to_torch(language_id, device=device) - - if not isinstance(style_mel, dict): - # GST or Capacitron style mel - style_mel = numpy_to_torch(style_mel, torch.float, device=device) - if style_text is not None: - style_text = np.asarray( - model.tokenizer.text_to_ids(style_text, language=language_id), - dtype=np.int32, - ) - style_text = numpy_to_torch(style_text, torch.long, device=device) - style_text = style_text.unsqueeze(0) - - text_inputs = numpy_to_torch(text_inputs, torch.long, device=device) - text_inputs = text_inputs.unsqueeze(0) - # synthesize voice - outputs = run_model_torch( - model, - text_inputs, - speaker_id, - style_mel, - style_text, - d_vector=d_vector, - language_id=language_id, - ) - model_outputs = outputs["model_outputs"] - model_outputs = model_outputs[0].data.cpu().numpy() - alignments = outputs["alignments"] - - # convert outputs to numpy - # plot results - wav = None - model_outputs = model_outputs.squeeze() - if model_outputs.ndim == 2: # [T, C_spec] - if use_griffin_lim: - wav = inv_spectrogram(model_outputs, model.ap, CONFIG) - # trim silence - if do_trim_silence: - wav = trim_silence(wav, model.ap) - else: # [T,] - wav = model_outputs - return_dict = { - "wav": wav, - "alignments": alignments, - "text_inputs": text_inputs, - "outputs": outputs, - } - return return_dict - - -def transfer_voice( - model, - CONFIG, - use_cuda, - reference_wav, - speaker_id=None, - d_vector=None, - reference_speaker_id=None, - reference_d_vector=None, - do_trim_silence=False, - use_griffin_lim=False, -): - """Synthesize voice for the given text using Griffin-Lim vocoder or just compute output features to be passed to - the vocoder model. - - Args: - model (TTS.tts.models): - The TTS model to synthesize audio with. - - CONFIG (Coqpit): - Model configuration. - - use_cuda (bool): - Enable/disable CUDA. - - reference_wav (str): - Path of reference_wav to be used to voice conversion. - - speaker_id (int): - Speaker ID passed to the speaker embedding layer in multi-speaker model. Defaults to None. - - d_vector (torch.Tensor): - d-vector for multi-speaker models in share :math:`[1, D]`. Defaults to None. - - reference_speaker_id (int): - Reference Speaker ID passed to the speaker embedding layer in multi-speaker model. Defaults to None. - - reference_d_vector (torch.Tensor): - Reference d-vector for multi-speaker models in share :math:`[1, D]`. Defaults to None. - - enable_eos_bos_chars (bool): - enable special chars for end of sentence and start of sentence. Defaults to False. - - do_trim_silence (bool): - trim silence after synthesis. Defaults to False. - """ - # device - device = next(model.parameters()).device - if use_cuda: - device = "cuda" - - # pass tensors to backend - if speaker_id is not None: - speaker_id = id_to_torch(speaker_id, device=device) - - if d_vector is not None: - d_vector = embedding_to_torch(d_vector, device=device) - - if reference_d_vector is not None: - reference_d_vector = embedding_to_torch(reference_d_vector, device=device) - - # load reference_wav audio - reference_wav = embedding_to_torch( - model.ap.load_wav( - reference_wav, sr=model.args.encoder_sample_rate if model.args.encoder_sample_rate else model.ap.sample_rate - ), - device=device, - ) - - if hasattr(model, "module"): - _func = model.module.inference_voice_conversion - else: - _func = model.inference_voice_conversion - model_outputs = _func(reference_wav, speaker_id, d_vector, reference_speaker_id, reference_d_vector) - - # convert outputs to numpy - # plot results - wav = None - model_outputs = model_outputs.squeeze() - if model_outputs.ndim == 2: # [T, C_spec] - if use_griffin_lim: - wav = inv_spectrogram(model_outputs, model.ap, CONFIG) - # trim silence - if do_trim_silence: - wav = trim_silence(wav, model.ap) - else: # [T,] - wav = model_outputs - - return wav diff --git a/TTS/TTS/tts/utils/text/__init__.py b/TTS/TTS/tts/utils/text/__init__.py deleted file mode 100644 index 593372dc7cb2fba240eb5f08e8e2cfae5a4b4e45..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from TTS.tts.utils.text.tokenizer import TTSTokenizer diff --git a/TTS/TTS/tts/utils/text/bangla/__init__.py b/TTS/TTS/tts/utils/text/bangla/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/utils/text/bangla/phonemizer.py b/TTS/TTS/tts/utils/text/bangla/phonemizer.py deleted file mode 100644 index e15830fe8af6cd08ea03fb4f8e40a9ddbe70f1f6..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/bangla/phonemizer.py +++ /dev/null @@ -1,121 +0,0 @@ -import re - -import bangla -from bnnumerizer import numerize -from bnunicodenormalizer import Normalizer - -# initialize -bnorm = Normalizer() - - -attribution_dict = { - "সাঃ": "সাল্লাল্লাহু আলাইহি ওয়া সাল্লাম", - "আঃ": "আলাইহিস সালাম", - "রাঃ": "রাদিআল্লাহু আনহু", - "রহঃ": "রহমাতুল্লাহি আলাইহি", - "রহিঃ": "রহিমাহুল্লাহ", - "হাফিঃ": "হাফিযাহুল্লাহ", - "বায়ান": "বাইআন", - "দাঃবাঃ": "দামাত বারাকাতুহুম,দামাত বারাকাতুল্লাহ", - # "আয়াত" : "আইআত",#আইআত - # "ওয়া" : "ওআ", - # "ওয়াসাল্লাম" : "ওআসাল্লাম", - # "কেন" : "কেনো", - # "কোন" : "কোনো", - # "বল" : "বলো", - # "চল" : "চলো", - # "কর" : "করো", - # "রাখ" : "রাখো", - "’": "", - "‘": "", - # "য়" : "অ", - # "সম্প্রদায়" : "সম্প্রদাই", - # "রয়েছে" : "রইছে", - # "রয়েছ" : "রইছ", - "/": " বাই ", -} - - -def tag_text(text: str): - # remove multiple spaces - text = re.sub(" +", " ", text) - # create start and end - text = "start" + text + "end" - # tag text - parts = re.split("[\u0600-\u06FF]+", text) - # remove non chars - parts = [p for p in parts if p.strip()] - # unique parts - parts = set(parts) - # tag the text - for m in parts: - if len(m.strip()) > 1: - text = text.replace(m, f"{m}") - # clean-tags - text = text.replace("start", "") - text = text.replace("end", "") - return text - - -def normalize(sen): - global bnorm # pylint: disable=global-statement - _words = [bnorm(word)["normalized"] for word in sen.split()] - return " ".join([word for word in _words if word is not None]) - - -def expand_full_attribution(text): - for word, attr in attribution_dict.items(): - if word in text: - text = text.replace(word, normalize(attr)) - return text - - -def collapse_whitespace(text): - # Regular expression matching whitespace: - _whitespace_re = re.compile(r"\s+") - return re.sub(_whitespace_re, " ", text) - - -def bangla_text_to_phonemes(text: str) -> str: - # english numbers to bangla conversion - res = re.search("[0-9]", text) - if res is not None: - text = bangla.convert_english_digit_to_bangla_digit(text) - - # replace ':' in between two bangla numbers with ' এর ' - pattern = r"[০, ১, ২, ৩, ৪, ৫, ৬, ৭, ৮, ৯]:[০, ১, ২, ৩, ৪, ৫, ৬, ৭, ৮, ৯]" - matches = re.findall(pattern, text) - for m in matches: - r = m.replace(":", " এর ") - text = text.replace(m, r) - - # numerize text - text = numerize(text) - - # tag sections - text = tag_text(text) - - # text blocks - # blocks = text.split("") - # blocks = [b for b in blocks if b.strip()] - - # create tuple of (lang,text) - if "" in text: - text = text.replace("", "").replace("", "") - # Split based on sentence ending Characters - bn_text = text.strip() - - sentenceEnders = re.compile("[।!?]") - sentences = sentenceEnders.split(str(bn_text)) - - data = "" - for sent in sentences: - res = re.sub("\n", "", sent) - res = normalize(res) - # expand attributes - res = expand_full_attribution(res) - - res = collapse_whitespace(res) - res += "।" - data += res - return data diff --git a/TTS/TTS/tts/utils/text/characters.py b/TTS/TTS/tts/utils/text/characters.py deleted file mode 100644 index 8fa45ed84bef4aa7953bd365b025d38f82b717d2..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/characters.py +++ /dev/null @@ -1,501 +0,0 @@ -from dataclasses import replace -from typing import Dict - -from TTS.tts.configs.shared_configs import CharactersConfig - - -def parse_symbols(): - return { - "pad": _pad, - "eos": _eos, - "bos": _bos, - "characters": _characters, - "punctuations": _punctuations, - "phonemes": _phonemes, - } - - -# DEFAULT SET OF GRAPHEMES -_pad = "" -_eos = "" -_bos = "" -_blank = "" # TODO: check if we need this alongside with PAD -_characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" -_punctuations = "!'(),-.:;? " - - -# DEFAULT SET OF IPA PHONEMES -# Phonemes definition (All IPA characters) -_vowels = "iyɨʉɯuɪʏʊeøɘəɵɤoɛœɜɞʌɔæɐaɶɑɒᵻ" -_non_pulmonic_consonants = "ʘɓǀɗǃʄǂɠǁʛ" -_pulmonic_consonants = "pbtdʈɖcɟkɡqɢʔɴŋɲɳnɱmʙrʀⱱɾɽɸβfvθðszʃʒʂʐçʝxɣχʁħʕhɦɬɮʋɹɻjɰlɭʎʟ" -_suprasegmentals = "ˈˌːˑ" -_other_symbols = "ʍwɥʜʢʡɕʑɺɧʲ" -_diacrilics = "ɚ˞ɫ" -_phonemes = _vowels + _non_pulmonic_consonants + _pulmonic_consonants + _suprasegmentals + _other_symbols + _diacrilics - - -class BaseVocabulary: - """Base Vocabulary class. - - This class only needs a vocabulary dictionary without specifying the characters. - - Args: - vocab (Dict): A dictionary of characters and their corresponding indices. - """ - - def __init__(self, vocab: Dict, pad: str = None, blank: str = None, bos: str = None, eos: str = None): - self.vocab = vocab - self.pad = pad - self.blank = blank - self.bos = bos - self.eos = eos - - @property - def pad_id(self) -> int: - """Return the index of the padding character. If the padding character is not specified, return the length - of the vocabulary.""" - return self.char_to_id(self.pad) if self.pad else len(self.vocab) - - @property - def blank_id(self) -> int: - """Return the index of the blank character. If the blank character is not specified, return the length of - the vocabulary.""" - return self.char_to_id(self.blank) if self.blank else len(self.vocab) - - @property - def bos_id(self) -> int: - """Return the index of the bos character. If the bos character is not specified, return the length of the - vocabulary.""" - return self.char_to_id(self.bos) if self.bos else len(self.vocab) - - @property - def eos_id(self) -> int: - """Return the index of the eos character. If the eos character is not specified, return the length of the - vocabulary.""" - return self.char_to_id(self.eos) if self.eos else len(self.vocab) - - @property - def vocab(self): - """Return the vocabulary dictionary.""" - return self._vocab - - @vocab.setter - def vocab(self, vocab): - """Set the vocabulary dictionary and character mapping dictionaries.""" - self._vocab, self._char_to_id, self._id_to_char = None, None, None - if vocab is not None: - self._vocab = vocab - self._char_to_id = {char: idx for idx, char in enumerate(self._vocab)} - self._id_to_char = { - idx: char for idx, char in enumerate(self._vocab) # pylint: disable=unnecessary-comprehension - } - - @staticmethod - def init_from_config(config, **kwargs): - """Initialize from the given config.""" - if config.characters is not None and "vocab_dict" in config.characters and config.characters.vocab_dict: - return ( - BaseVocabulary( - config.characters.vocab_dict, - config.characters.pad, - config.characters.blank, - config.characters.bos, - config.characters.eos, - ), - config, - ) - return BaseVocabulary(**kwargs), config - - def to_config(self) -> "CharactersConfig": - return CharactersConfig( - vocab_dict=self._vocab, - pad=self.pad, - eos=self.eos, - bos=self.bos, - blank=self.blank, - is_unique=False, - is_sorted=False, - ) - - @property - def num_chars(self): - """Return number of tokens in the vocabulary.""" - return len(self._vocab) - - def char_to_id(self, char: str) -> int: - """Map a character to an token ID.""" - try: - return self._char_to_id[char] - except KeyError as e: - raise KeyError(f" [!] {repr(char)} is not in the vocabulary.") from e - - def id_to_char(self, idx: int) -> str: - """Map an token ID to a character.""" - return self._id_to_char[idx] - - -class BaseCharacters: - """🐸BaseCharacters class - - Every new character class should inherit from this. - - Characters are oredered as follows ```[PAD, EOS, BOS, BLANK, CHARACTERS, PUNCTUATIONS]```. - - If you need a custom order, you need to define inherit from this class and override the ```_create_vocab``` method. - - Args: - characters (str): - Main set of characters to be used in the vocabulary. - - punctuations (str): - Characters to be treated as punctuation. - - pad (str): - Special padding character that would be ignored by the model. - - eos (str): - End of the sentence character. - - bos (str): - Beginning of the sentence character. - - blank (str): - Optional character used between characters by some models for better prosody. - - is_unique (bool): - Remove duplicates from the provided characters. Defaults to True. - el - is_sorted (bool): - Sort the characters in alphabetical order. Only applies to `self.characters`. Defaults to True. - """ - - def __init__( - self, - characters: str = None, - punctuations: str = None, - pad: str = None, - eos: str = None, - bos: str = None, - blank: str = None, - is_unique: bool = False, - is_sorted: bool = True, - ) -> None: - self._characters = characters - self._punctuations = punctuations - self._pad = pad - self._eos = eos - self._bos = bos - self._blank = blank - self.is_unique = is_unique - self.is_sorted = is_sorted - self._create_vocab() - - @property - def pad_id(self) -> int: - return self.char_to_id(self.pad) if self.pad else len(self.vocab) - - @property - def blank_id(self) -> int: - return self.char_to_id(self.blank) if self.blank else len(self.vocab) - - @property - def eos_id(self) -> int: - return self.char_to_id(self.eos) if self.eos else len(self.vocab) - - @property - def bos_id(self) -> int: - return self.char_to_id(self.bos) if self.bos else len(self.vocab) - - @property - def characters(self): - return self._characters - - @characters.setter - def characters(self, characters): - self._characters = characters - self._create_vocab() - - @property - def punctuations(self): - return self._punctuations - - @punctuations.setter - def punctuations(self, punctuations): - self._punctuations = punctuations - self._create_vocab() - - @property - def pad(self): - return self._pad - - @pad.setter - def pad(self, pad): - self._pad = pad - self._create_vocab() - - @property - def eos(self): - return self._eos - - @eos.setter - def eos(self, eos): - self._eos = eos - self._create_vocab() - - @property - def bos(self): - return self._bos - - @bos.setter - def bos(self, bos): - self._bos = bos - self._create_vocab() - - @property - def blank(self): - return self._blank - - @blank.setter - def blank(self, blank): - self._blank = blank - self._create_vocab() - - @property - def vocab(self): - return self._vocab - - @vocab.setter - def vocab(self, vocab): - self._vocab = vocab - self._char_to_id = {char: idx for idx, char in enumerate(self.vocab)} - self._id_to_char = { - idx: char for idx, char in enumerate(self.vocab) # pylint: disable=unnecessary-comprehension - } - - @property - def num_chars(self): - return len(self._vocab) - - def _create_vocab(self): - _vocab = self._characters - if self.is_unique: - _vocab = list(set(_vocab)) - if self.is_sorted: - _vocab = sorted(_vocab) - _vocab = list(_vocab) - _vocab = [self._blank] + _vocab if self._blank is not None and len(self._blank) > 0 else _vocab - _vocab = [self._bos] + _vocab if self._bos is not None and len(self._bos) > 0 else _vocab - _vocab = [self._eos] + _vocab if self._eos is not None and len(self._eos) > 0 else _vocab - _vocab = [self._pad] + _vocab if self._pad is not None and len(self._pad) > 0 else _vocab - self.vocab = _vocab + list(self._punctuations) - if self.is_unique: - duplicates = {x for x in self.vocab if self.vocab.count(x) > 1} - assert ( - len(self.vocab) == len(self._char_to_id) == len(self._id_to_char) - ), f" [!] There are duplicate characters in the character set. {duplicates}" - - def char_to_id(self, char: str) -> int: - try: - return self._char_to_id[char] - except KeyError as e: - raise KeyError(f" [!] {repr(char)} is not in the vocabulary.") from e - - def id_to_char(self, idx: int) -> str: - return self._id_to_char[idx] - - def print_log(self, level: int = 0): - """ - Prints the vocabulary in a nice format. - """ - indent = "\t" * level - print(f"{indent}| > Characters: {self._characters}") - print(f"{indent}| > Punctuations: {self._punctuations}") - print(f"{indent}| > Pad: {self._pad}") - print(f"{indent}| > EOS: {self._eos}") - print(f"{indent}| > BOS: {self._bos}") - print(f"{indent}| > Blank: {self._blank}") - print(f"{indent}| > Vocab: {self.vocab}") - print(f"{indent}| > Num chars: {self.num_chars}") - - @staticmethod - def init_from_config(config: "Coqpit"): # pylint: disable=unused-argument - """Init your character class from a config. - - Implement this method for your subclass. - """ - # use character set from config - if config.characters is not None: - return BaseCharacters(**config.characters), config - # return default character set - characters = BaseCharacters() - new_config = replace(config, characters=characters.to_config()) - return characters, new_config - - def to_config(self) -> "CharactersConfig": - return CharactersConfig( - characters=self._characters, - punctuations=self._punctuations, - pad=self._pad, - eos=self._eos, - bos=self._bos, - blank=self._blank, - is_unique=self.is_unique, - is_sorted=self.is_sorted, - ) - - -class IPAPhonemes(BaseCharacters): - """🐸IPAPhonemes class to manage `TTS.tts` model vocabulary - - Intended to be used with models using IPAPhonemes as input. - It uses system defaults for the undefined class arguments. - - Args: - characters (str): - Main set of case-sensitive characters to be used in the vocabulary. Defaults to `_phonemes`. - - punctuations (str): - Characters to be treated as punctuation. Defaults to `_punctuations`. - - pad (str): - Special padding character that would be ignored by the model. Defaults to `_pad`. - - eos (str): - End of the sentence character. Defaults to `_eos`. - - bos (str): - Beginning of the sentence character. Defaults to `_bos`. - - blank (str): - Optional character used between characters by some models for better prosody. Defaults to `_blank`. - - is_unique (bool): - Remove duplicates from the provided characters. Defaults to True. - - is_sorted (bool): - Sort the characters in alphabetical order. Defaults to True. - """ - - def __init__( - self, - characters: str = _phonemes, - punctuations: str = _punctuations, - pad: str = _pad, - eos: str = _eos, - bos: str = _bos, - blank: str = _blank, - is_unique: bool = False, - is_sorted: bool = True, - ) -> None: - super().__init__(characters, punctuations, pad, eos, bos, blank, is_unique, is_sorted) - - @staticmethod - def init_from_config(config: "Coqpit"): - """Init a IPAPhonemes object from a model config - - If characters are not defined in the config, it will be set to the default characters and the config - will be updated. - """ - # band-aid for compatibility with old models - if "characters" in config and config.characters is not None: - if "phonemes" in config.characters and config.characters.phonemes is not None: - config.characters["characters"] = config.characters["phonemes"] - return ( - IPAPhonemes( - characters=config.characters["characters"], - punctuations=config.characters["punctuations"], - pad=config.characters["pad"], - eos=config.characters["eos"], - bos=config.characters["bos"], - blank=config.characters["blank"], - is_unique=config.characters["is_unique"], - is_sorted=config.characters["is_sorted"], - ), - config, - ) - # use character set from config - if config.characters is not None: - return IPAPhonemes(**config.characters), config - # return default character set - characters = IPAPhonemes() - new_config = replace(config, characters=characters.to_config()) - return characters, new_config - - -class Graphemes(BaseCharacters): - """🐸Graphemes class to manage `TTS.tts` model vocabulary - - Intended to be used with models using graphemes as input. - It uses system defaults for the undefined class arguments. - - Args: - characters (str): - Main set of case-sensitive characters to be used in the vocabulary. Defaults to `_characters`. - - punctuations (str): - Characters to be treated as punctuation. Defaults to `_punctuations`. - - pad (str): - Special padding character that would be ignored by the model. Defaults to `_pad`. - - eos (str): - End of the sentence character. Defaults to `_eos`. - - bos (str): - Beginning of the sentence character. Defaults to `_bos`. - - is_unique (bool): - Remove duplicates from the provided characters. Defaults to True. - - is_sorted (bool): - Sort the characters in alphabetical order. Defaults to True. - """ - - def __init__( - self, - characters: str = _characters, - punctuations: str = _punctuations, - pad: str = _pad, - eos: str = _eos, - bos: str = _bos, - blank: str = _blank, - is_unique: bool = False, - is_sorted: bool = True, - ) -> None: - super().__init__(characters, punctuations, pad, eos, bos, blank, is_unique, is_sorted) - - @staticmethod - def init_from_config(config: "Coqpit"): - """Init a Graphemes object from a model config - - If characters are not defined in the config, it will be set to the default characters and the config - will be updated. - """ - if config.characters is not None: - # band-aid for compatibility with old models - if "phonemes" in config.characters: - return ( - Graphemes( - characters=config.characters["characters"], - punctuations=config.characters["punctuations"], - pad=config.characters["pad"], - eos=config.characters["eos"], - bos=config.characters["bos"], - blank=config.characters["blank"], - is_unique=config.characters["is_unique"], - is_sorted=config.characters["is_sorted"], - ), - config, - ) - return Graphemes(**config.characters), config - characters = Graphemes() - new_config = replace(config, characters=characters.to_config()) - return characters, new_config - - -if __name__ == "__main__": - gr = Graphemes() - ph = IPAPhonemes() - gr.print_log() - ph.print_log() diff --git a/TTS/TTS/tts/utils/text/chinese_mandarin/__init__.py b/TTS/TTS/tts/utils/text/chinese_mandarin/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/utils/text/chinese_mandarin/numbers.py b/TTS/TTS/tts/utils/text/chinese_mandarin/numbers.py deleted file mode 100644 index 4787ea61007656819eb57d52d5865b38c7afa915..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/chinese_mandarin/numbers.py +++ /dev/null @@ -1,127 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- - -# Licensed under WTFPL or the Unlicense or CC0. -# This uses Python 3, but it's easy to port to Python 2 by changing -# strings to u'xx'. - -import itertools -import re - - -def _num2chinese(num: str, big=False, simp=True, o=False, twoalt=False) -> str: - """Convert numerical arabic numbers (0->9) to chinese hanzi numbers (〇 -> 九) - - Args: - num (str): arabic number to convert - big (bool, optional): use financial characters. Defaults to False. - simp (bool, optional): use simplified characters instead of tradictional characters. Defaults to True. - o (bool, optional): use 〇 for 'zero'. Defaults to False. - twoalt (bool, optional): use 两/兩 for 'two' when appropriate. Defaults to False. - - Raises: - ValueError: if number is more than 1e48 - ValueError: if 'e' exposent in number - - Returns: - str: converted number as hanzi characters - """ - - # check num first - nd = str(num) - if abs(float(nd)) >= 1e48: - raise ValueError("number out of range") - if "e" in nd: - raise ValueError("scientific notation is not supported") - c_symbol = "正负点" if simp else "正負點" - if o: # formal - twoalt = False - if big: - c_basic = "零壹贰叁肆伍陆柒捌玖" if simp else "零壹貳參肆伍陸柒捌玖" - c_unit1 = "拾佰仟" - c_twoalt = "贰" if simp else "貳" - else: - c_basic = "〇一二三四五六七八九" if o else "零一二三四五六七八九" - c_unit1 = "十百千" - if twoalt: - c_twoalt = "两" if simp else "兩" - else: - c_twoalt = "二" - c_unit2 = "万亿兆京垓秭穰沟涧正载" if simp else "萬億兆京垓秭穰溝澗正載" - revuniq = lambda l: "".join(k for k, g in itertools.groupby(reversed(l))) - nd = str(num) - result = [] - if nd[0] == "+": - result.append(c_symbol[0]) - elif nd[0] == "-": - result.append(c_symbol[1]) - if "." in nd: - integer, remainder = nd.lstrip("+-").split(".") - else: - integer, remainder = nd.lstrip("+-"), None - if int(integer): - splitted = [integer[max(i - 4, 0) : i] for i in range(len(integer), 0, -4)] - intresult = [] - for nu, unit in enumerate(splitted): - # special cases - if int(unit) == 0: # 0000 - intresult.append(c_basic[0]) - continue - if nu > 0 and int(unit) == 2: # 0002 - intresult.append(c_twoalt + c_unit2[nu - 1]) - continue - ulist = [] - unit = unit.zfill(4) - for nc, ch in enumerate(reversed(unit)): - if ch == "0": - if ulist: # ???0 - ulist.append(c_basic[0]) - elif nc == 0: - ulist.append(c_basic[int(ch)]) - elif nc == 1 and ch == "1" and unit[1] == "0": - # special case for tens - # edit the 'elif' if you don't like - # 十四, 三千零十四, 三千三百一十四 - ulist.append(c_unit1[0]) - elif nc > 1 and ch == "2": - ulist.append(c_twoalt + c_unit1[nc - 1]) - else: - ulist.append(c_basic[int(ch)] + c_unit1[nc - 1]) - ustr = revuniq(ulist) - if nu == 0: - intresult.append(ustr) - else: - intresult.append(ustr + c_unit2[nu - 1]) - result.append(revuniq(intresult).strip(c_basic[0])) - else: - result.append(c_basic[0]) - if remainder: - result.append(c_symbol[2]) - result.append("".join(c_basic[int(ch)] for ch in remainder)) - return "".join(result) - - -def _number_replace(match) -> str: - """function to apply in a match, transform all numbers in a match by chinese characters - - Args: - match (re.Match): numbers regex matches - - Returns: - str: replaced characters for the numbers - """ - match_str: str = match.group() - return _num2chinese(match_str) - - -def replace_numbers_to_characters_in_text(text: str) -> str: - """Replace all arabic numbers in a text by their equivalent in chinese characters (simplified) - - Args: - text (str): input text to transform - - Returns: - str: output text - """ - text = re.sub(r"[0-9]+", _number_replace, text) - return text diff --git a/TTS/TTS/tts/utils/text/chinese_mandarin/phonemizer.py b/TTS/TTS/tts/utils/text/chinese_mandarin/phonemizer.py deleted file mode 100644 index 727c881e1062badc57df7418aa07e7434d57335c..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/chinese_mandarin/phonemizer.py +++ /dev/null @@ -1,37 +0,0 @@ -from typing import List - -import jieba -import pypinyin - -from .pinyinToPhonemes import PINYIN_DICT - - -def _chinese_character_to_pinyin(text: str) -> List[str]: - pinyins = pypinyin.pinyin(text, style=pypinyin.Style.TONE3, heteronym=False, neutral_tone_with_five=True) - pinyins_flat_list = [item for sublist in pinyins for item in sublist] - return pinyins_flat_list - - -def _chinese_pinyin_to_phoneme(pinyin: str) -> str: - segment = pinyin[:-1] - tone = pinyin[-1] - phoneme = PINYIN_DICT.get(segment, [""])[0] - return phoneme + tone - - -def chinese_text_to_phonemes(text: str, seperator: str = "|") -> str: - tokenized_text = jieba.cut(text, HMM=False) - tokenized_text = " ".join(tokenized_text) - pinyined_text: List[str] = _chinese_character_to_pinyin(tokenized_text) - - results: List[str] = [] - - for token in pinyined_text: - if token[-1] in "12345": # TODO transform to is_pinyin() - pinyin_phonemes = _chinese_pinyin_to_phoneme(token) - - results += list(pinyin_phonemes) - else: # is ponctuation or other - results += list(token) - - return seperator.join(results) diff --git a/TTS/TTS/tts/utils/text/chinese_mandarin/pinyinToPhonemes.py b/TTS/TTS/tts/utils/text/chinese_mandarin/pinyinToPhonemes.py deleted file mode 100644 index 4e25c3a4c91cddd0bf0e5d6e273262e3dbd3a2dd..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/chinese_mandarin/pinyinToPhonemes.py +++ /dev/null @@ -1,419 +0,0 @@ -PINYIN_DICT = { - "a": ["a"], - "ai": ["ai"], - "an": ["an"], - "ang": ["ɑŋ"], - "ao": ["aʌ"], - "ba": ["ba"], - "bai": ["bai"], - "ban": ["ban"], - "bang": ["bɑŋ"], - "bao": ["baʌ"], - # "be": ["be"], doesnt exist - "bei": ["bɛi"], - "ben": ["bœn"], - "beng": ["bɵŋ"], - "bi": ["bi"], - "bian": ["biɛn"], - "biao": ["biaʌ"], - "bie": ["bie"], - "bin": ["bin"], - "bing": ["bɨŋ"], - "bo": ["bo"], - "bu": ["bu"], - "ca": ["tsa"], - "cai": ["tsai"], - "can": ["tsan"], - "cang": ["tsɑŋ"], - "cao": ["tsaʌ"], - "ce": ["tsø"], - "cen": ["tsœn"], - "ceng": ["tsɵŋ"], - "cha": ["ʈʂa"], - "chai": ["ʈʂai"], - "chan": ["ʈʂan"], - "chang": ["ʈʂɑŋ"], - "chao": ["ʈʂaʌ"], - "che": ["ʈʂø"], - "chen": ["ʈʂœn"], - "cheng": ["ʈʂɵŋ"], - "chi": ["ʈʂʏ"], - "chong": ["ʈʂoŋ"], - "chou": ["ʈʂou"], - "chu": ["ʈʂu"], - "chua": ["ʈʂua"], - "chuai": ["ʈʂuai"], - "chuan": ["ʈʂuan"], - "chuang": ["ʈʂuɑŋ"], - "chui": ["ʈʂuei"], - "chun": ["ʈʂun"], - "chuo": ["ʈʂuo"], - "ci": ["tsɪ"], - "cong": ["tsoŋ"], - "cou": ["tsou"], - "cu": ["tsu"], - "cuan": ["tsuan"], - "cui": ["tsuei"], - "cun": ["tsun"], - "cuo": ["tsuo"], - "da": ["da"], - "dai": ["dai"], - "dan": ["dan"], - "dang": ["dɑŋ"], - "dao": ["daʌ"], - "de": ["dø"], - "dei": ["dei"], - # "den": ["dœn"], - "deng": ["dɵŋ"], - "di": ["di"], - "dia": ["dia"], - "dian": ["diɛn"], - "diao": ["diaʌ"], - "die": ["die"], - "ding": ["dɨŋ"], - "diu": ["dio"], - "dong": ["doŋ"], - "dou": ["dou"], - "du": ["du"], - "duan": ["duan"], - "dui": ["duei"], - "dun": ["dun"], - "duo": ["duo"], - "e": ["ø"], - "ei": ["ei"], - "en": ["œn"], - # "ng": ["œn"], - # "eng": ["ɵŋ"], - "er": ["er"], - "fa": ["fa"], - "fan": ["fan"], - "fang": ["fɑŋ"], - "fei": ["fei"], - "fen": ["fœn"], - "feng": ["fɵŋ"], - "fo": ["fo"], - "fou": ["fou"], - "fu": ["fu"], - "ga": ["ga"], - "gai": ["gai"], - "gan": ["gan"], - "gang": ["gɑŋ"], - "gao": ["gaʌ"], - "ge": ["gø"], - "gei": ["gei"], - "gen": ["gœn"], - "geng": ["gɵŋ"], - "gong": ["goŋ"], - "gou": ["gou"], - "gu": ["gu"], - "gua": ["gua"], - "guai": ["guai"], - "guan": ["guan"], - "guang": ["guɑŋ"], - "gui": ["guei"], - "gun": ["gun"], - "guo": ["guo"], - "ha": ["xa"], - "hai": ["xai"], - "han": ["xan"], - "hang": ["xɑŋ"], - "hao": ["xaʌ"], - "he": ["xø"], - "hei": ["xei"], - "hen": ["xœn"], - "heng": ["xɵŋ"], - "hong": ["xoŋ"], - "hou": ["xou"], - "hu": ["xu"], - "hua": ["xua"], - "huai": ["xuai"], - "huan": ["xuan"], - "huang": ["xuɑŋ"], - "hui": ["xuei"], - "hun": ["xun"], - "huo": ["xuo"], - "ji": ["dʑi"], - "jia": ["dʑia"], - "jian": ["dʑiɛn"], - "jiang": ["dʑiɑŋ"], - "jiao": ["dʑiaʌ"], - "jie": ["dʑie"], - "jin": ["dʑin"], - "jing": ["dʑɨŋ"], - "jiong": ["dʑioŋ"], - "jiu": ["dʑio"], - "ju": ["dʑy"], - "juan": ["dʑyɛn"], - "jue": ["dʑye"], - "jun": ["dʑyn"], - "ka": ["ka"], - "kai": ["kai"], - "kan": ["kan"], - "kang": ["kɑŋ"], - "kao": ["kaʌ"], - "ke": ["kø"], - "kei": ["kei"], - "ken": ["kœn"], - "keng": ["kɵŋ"], - "kong": ["koŋ"], - "kou": ["kou"], - "ku": ["ku"], - "kua": ["kua"], - "kuai": ["kuai"], - "kuan": ["kuan"], - "kuang": ["kuɑŋ"], - "kui": ["kuei"], - "kun": ["kun"], - "kuo": ["kuo"], - "la": ["la"], - "lai": ["lai"], - "lan": ["lan"], - "lang": ["lɑŋ"], - "lao": ["laʌ"], - "le": ["lø"], - "lei": ["lei"], - "leng": ["lɵŋ"], - "li": ["li"], - "lia": ["lia"], - "lian": ["liɛn"], - "liang": ["liɑŋ"], - "liao": ["liaʌ"], - "lie": ["lie"], - "lin": ["lin"], - "ling": ["lɨŋ"], - "liu": ["lio"], - "lo": ["lo"], - "long": ["loŋ"], - "lou": ["lou"], - "lu": ["lu"], - "lv": ["ly"], - "luan": ["luan"], - "lve": ["lye"], - "lue": ["lue"], - "lun": ["lun"], - "luo": ["luo"], - "ma": ["ma"], - "mai": ["mai"], - "man": ["man"], - "mang": ["mɑŋ"], - "mao": ["maʌ"], - "me": ["mø"], - "mei": ["mei"], - "men": ["mœn"], - "meng": ["mɵŋ"], - "mi": ["mi"], - "mian": ["miɛn"], - "miao": ["miaʌ"], - "mie": ["mie"], - "min": ["min"], - "ming": ["mɨŋ"], - "miu": ["mio"], - "mo": ["mo"], - "mou": ["mou"], - "mu": ["mu"], - "na": ["na"], - "nai": ["nai"], - "nan": ["nan"], - "nang": ["nɑŋ"], - "nao": ["naʌ"], - "ne": ["nø"], - "nei": ["nei"], - "nen": ["nœn"], - "neng": ["nɵŋ"], - "ni": ["ni"], - "nia": ["nia"], - "nian": ["niɛn"], - "niang": ["niɑŋ"], - "niao": ["niaʌ"], - "nie": ["nie"], - "nin": ["nin"], - "ning": ["nɨŋ"], - "niu": ["nio"], - "nong": ["noŋ"], - "nou": ["nou"], - "nu": ["nu"], - "nv": ["ny"], - "nuan": ["nuan"], - "nve": ["nye"], - "nue": ["nye"], - "nuo": ["nuo"], - "o": ["o"], - "ou": ["ou"], - "pa": ["pa"], - "pai": ["pai"], - "pan": ["pan"], - "pang": ["pɑŋ"], - "pao": ["paʌ"], - "pe": ["pø"], - "pei": ["pei"], - "pen": ["pœn"], - "peng": ["pɵŋ"], - "pi": ["pi"], - "pian": ["piɛn"], - "piao": ["piaʌ"], - "pie": ["pie"], - "pin": ["pin"], - "ping": ["pɨŋ"], - "po": ["po"], - "pou": ["pou"], - "pu": ["pu"], - "qi": ["tɕi"], - "qia": ["tɕia"], - "qian": ["tɕiɛn"], - "qiang": ["tɕiɑŋ"], - "qiao": ["tɕiaʌ"], - "qie": ["tɕie"], - "qin": ["tɕin"], - "qing": ["tɕɨŋ"], - "qiong": ["tɕioŋ"], - "qiu": ["tɕio"], - "qu": ["tɕy"], - "quan": ["tɕyɛn"], - "que": ["tɕye"], - "qun": ["tɕyn"], - "ran": ["ʐan"], - "rang": ["ʐɑŋ"], - "rao": ["ʐaʌ"], - "re": ["ʐø"], - "ren": ["ʐœn"], - "reng": ["ʐɵŋ"], - "ri": ["ʐʏ"], - "rong": ["ʐoŋ"], - "rou": ["ʐou"], - "ru": ["ʐu"], - "rua": ["ʐua"], - "ruan": ["ʐuan"], - "rui": ["ʐuei"], - "run": ["ʐun"], - "ruo": ["ʐuo"], - "sa": ["sa"], - "sai": ["sai"], - "san": ["san"], - "sang": ["sɑŋ"], - "sao": ["saʌ"], - "se": ["sø"], - "sen": ["sœn"], - "seng": ["sɵŋ"], - "sha": ["ʂa"], - "shai": ["ʂai"], - "shan": ["ʂan"], - "shang": ["ʂɑŋ"], - "shao": ["ʂaʌ"], - "she": ["ʂø"], - "shei": ["ʂei"], - "shen": ["ʂœn"], - "sheng": ["ʂɵŋ"], - "shi": ["ʂʏ"], - "shou": ["ʂou"], - "shu": ["ʂu"], - "shua": ["ʂua"], - "shuai": ["ʂuai"], - "shuan": ["ʂuan"], - "shuang": ["ʂuɑŋ"], - "shui": ["ʂuei"], - "shun": ["ʂun"], - "shuo": ["ʂuo"], - "si": ["sɪ"], - "song": ["soŋ"], - "sou": ["sou"], - "su": ["su"], - "suan": ["suan"], - "sui": ["suei"], - "sun": ["sun"], - "suo": ["suo"], - "ta": ["ta"], - "tai": ["tai"], - "tan": ["tan"], - "tang": ["tɑŋ"], - "tao": ["taʌ"], - "te": ["tø"], - "tei": ["tei"], - "teng": ["tɵŋ"], - "ti": ["ti"], - "tian": ["tiɛn"], - "tiao": ["tiaʌ"], - "tie": ["tie"], - "ting": ["tɨŋ"], - "tong": ["toŋ"], - "tou": ["tou"], - "tu": ["tu"], - "tuan": ["tuan"], - "tui": ["tuei"], - "tun": ["tun"], - "tuo": ["tuo"], - "wa": ["wa"], - "wai": ["wai"], - "wan": ["wan"], - "wang": ["wɑŋ"], - "wei": ["wei"], - "wen": ["wœn"], - "weng": ["wɵŋ"], - "wo": ["wo"], - "wu": ["wu"], - "xi": ["ɕi"], - "xia": ["ɕia"], - "xian": ["ɕiɛn"], - "xiang": ["ɕiɑŋ"], - "xiao": ["ɕiaʌ"], - "xie": ["ɕie"], - "xin": ["ɕin"], - "xing": ["ɕɨŋ"], - "xiong": ["ɕioŋ"], - "xiu": ["ɕio"], - "xu": ["ɕy"], - "xuan": ["ɕyɛn"], - "xue": ["ɕye"], - "xun": ["ɕyn"], - "ya": ["ia"], - "yan": ["iɛn"], - "yang": ["iɑŋ"], - "yao": ["iaʌ"], - "ye": ["ie"], - "yi": ["i"], - "yin": ["in"], - "ying": ["ɨŋ"], - "yo": ["io"], - "yong": ["ioŋ"], - "you": ["io"], - "yu": ["y"], - "yuan": ["yɛn"], - "yue": ["ye"], - "yun": ["yn"], - "za": ["dza"], - "zai": ["dzai"], - "zan": ["dzan"], - "zang": ["dzɑŋ"], - "zao": ["dzaʌ"], - "ze": ["dzø"], - "zei": ["dzei"], - "zen": ["dzœn"], - "zeng": ["dzɵŋ"], - "zha": ["dʒa"], - "zhai": ["dʒai"], - "zhan": ["dʒan"], - "zhang": ["dʒɑŋ"], - "zhao": ["dʒaʌ"], - "zhe": ["dʒø"], - # "zhei": ["dʒei"], it doesn't exist - "zhen": ["dʒœn"], - "zheng": ["dʒɵŋ"], - "zhi": ["dʒʏ"], - "zhong": ["dʒoŋ"], - "zhou": ["dʒou"], - "zhu": ["dʒu"], - "zhua": ["dʒua"], - "zhuai": ["dʒuai"], - "zhuan": ["dʒuan"], - "zhuang": ["dʒuɑŋ"], - "zhui": ["dʒuei"], - "zhun": ["dʒun"], - "zhuo": ["dʒuo"], - "zi": ["dzɪ"], - "zong": ["dzoŋ"], - "zou": ["dzou"], - "zu": ["dzu"], - "zuan": ["dzuan"], - "zui": ["dzuei"], - "zun": ["dzun"], - "zuo": ["dzuo"], -} diff --git a/TTS/TTS/tts/utils/text/cleaners.py b/TTS/TTS/tts/utils/text/cleaners.py deleted file mode 100644 index 74d3910b516ae1dc856509d62aca52a01cc2088b..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/cleaners.py +++ /dev/null @@ -1,171 +0,0 @@ -"""Set of default text cleaners""" -# TODO: pick the cleaner for languages dynamically - -import re - -from anyascii import anyascii - -from TTS.tts.utils.text.chinese_mandarin.numbers import replace_numbers_to_characters_in_text - -from .english.abbreviations import abbreviations_en -from .english.number_norm import normalize_numbers as en_normalize_numbers -from .english.time_norm import expand_time_english -from .french.abbreviations import abbreviations_fr - -# Regular expression matching whitespace: -_whitespace_re = re.compile(r"\s+") - - -def expand_abbreviations(text, lang="en"): - if lang == "en": - _abbreviations = abbreviations_en - elif lang == "fr": - _abbreviations = abbreviations_fr - for regex, replacement in _abbreviations: - text = re.sub(regex, replacement, text) - return text - - -def lowercase(text): - return text.lower() - - -def collapse_whitespace(text): - return re.sub(_whitespace_re, " ", text).strip() - - -def convert_to_ascii(text): - return anyascii(text) - - -def remove_aux_symbols(text): - text = re.sub(r"[\<\>\(\)\[\]\"]+", "", text) - return text - - -def replace_symbols(text, lang="en"): - """Replace symbols based on the lenguage tag. - - Args: - text: - Input text. - lang: - Lenguage identifier. ex: "en", "fr", "pt", "ca". - - Returns: - The modified text - example: - input args: - text: "si l'avi cau, diguem-ho" - lang: "ca" - Output: - text: "si lavi cau, diguemho" - """ - text = text.replace(";", ",") - text = text.replace("-", " ") if lang != "ca" else text.replace("-", "") - text = text.replace(":", ",") - if lang == "en": - text = text.replace("&", " and ") - elif lang == "fr": - text = text.replace("&", " et ") - elif lang == "pt": - text = text.replace("&", " e ") - elif lang == "ca": - text = text.replace("&", " i ") - text = text.replace("'", "") - return text - - -def basic_cleaners(text): - """Basic pipeline that lowercases and collapses whitespace without transliteration.""" - text = lowercase(text) - text = collapse_whitespace(text) - return text - - -def transliteration_cleaners(text): - """Pipeline for non-English text that transliterates to ASCII.""" - # text = convert_to_ascii(text) - text = lowercase(text) - text = collapse_whitespace(text) - return text - - -def basic_german_cleaners(text): - """Pipeline for German text""" - text = lowercase(text) - text = collapse_whitespace(text) - return text - - -# TODO: elaborate it -def basic_turkish_cleaners(text): - """Pipeline for Turkish text""" - text = text.replace("I", "ı") - text = lowercase(text) - text = collapse_whitespace(text) - return text - - -def english_cleaners(text): - """Pipeline for English text, including number and abbreviation expansion.""" - # text = convert_to_ascii(text) - text = lowercase(text) - text = expand_time_english(text) - text = en_normalize_numbers(text) - text = expand_abbreviations(text) - text = replace_symbols(text) - text = remove_aux_symbols(text) - text = collapse_whitespace(text) - return text - - -def phoneme_cleaners(text): - """Pipeline for phonemes mode, including number and abbreviation expansion.""" - text = en_normalize_numbers(text) - text = expand_abbreviations(text) - text = replace_symbols(text) - text = remove_aux_symbols(text) - text = collapse_whitespace(text) - return text - - -def french_cleaners(text): - """Pipeline for French text. There is no need to expand numbers, phonemizer already does that""" - text = expand_abbreviations(text, lang="fr") - text = lowercase(text) - text = replace_symbols(text, lang="fr") - text = remove_aux_symbols(text) - text = collapse_whitespace(text) - return text - - -def portuguese_cleaners(text): - """Basic pipeline for Portuguese text. There is no need to expand abbreviation and - numbers, phonemizer already does that""" - text = lowercase(text) - text = replace_symbols(text, lang="pt") - text = remove_aux_symbols(text) - text = collapse_whitespace(text) - return text - - -def chinese_mandarin_cleaners(text: str) -> str: - """Basic pipeline for chinese""" - text = replace_numbers_to_characters_in_text(text) - return text - - -def multilingual_cleaners(text): - """Pipeline for multilingual text""" - text = lowercase(text) - text = replace_symbols(text, lang=None) - text = remove_aux_symbols(text) - text = collapse_whitespace(text) - return text - - -def no_cleaners(text): - # remove newline characters - text = text.replace("\n", "") - return text diff --git a/TTS/TTS/tts/utils/text/cmudict.py b/TTS/TTS/tts/utils/text/cmudict.py deleted file mode 100644 index f206fb043be1d478fa6ace36fefdefa30b0acb02..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/cmudict.py +++ /dev/null @@ -1,151 +0,0 @@ -# -*- coding: utf-8 -*- - -import re - -VALID_SYMBOLS = [ - "AA", - "AA0", - "AA1", - "AA2", - "AE", - "AE0", - "AE1", - "AE2", - "AH", - "AH0", - "AH1", - "AH2", - "AO", - "AO0", - "AO1", - "AO2", - "AW", - "AW0", - "AW1", - "AW2", - "AY", - "AY0", - "AY1", - "AY2", - "B", - "CH", - "D", - "DH", - "EH", - "EH0", - "EH1", - "EH2", - "ER", - "ER0", - "ER1", - "ER2", - "EY", - "EY0", - "EY1", - "EY2", - "F", - "G", - "HH", - "IH", - "IH0", - "IH1", - "IH2", - "IY", - "IY0", - "IY1", - "IY2", - "JH", - "K", - "L", - "M", - "N", - "NG", - "OW", - "OW0", - "OW1", - "OW2", - "OY", - "OY0", - "OY1", - "OY2", - "P", - "R", - "S", - "SH", - "T", - "TH", - "UH", - "UH0", - "UH1", - "UH2", - "UW", - "UW0", - "UW1", - "UW2", - "V", - "W", - "Y", - "Z", - "ZH", -] - - -class CMUDict: - """Thin wrapper around CMUDict data. http://www.speech.cs.cmu.edu/cgi-bin/cmudict""" - - def __init__(self, file_or_path, keep_ambiguous=True): - if isinstance(file_or_path, str): - with open(file_or_path, encoding="latin-1") as f: - entries = _parse_cmudict(f) - else: - entries = _parse_cmudict(file_or_path) - if not keep_ambiguous: - entries = {word: pron for word, pron in entries.items() if len(pron) == 1} - self._entries = entries - - def __len__(self): - return len(self._entries) - - def lookup(self, word): - """Returns list of ARPAbet pronunciations of the given word.""" - return self._entries.get(word.upper()) - - @staticmethod - def get_arpabet(word, cmudict, punctuation_symbols): - first_symbol, last_symbol = "", "" - if word and word[0] in punctuation_symbols: - first_symbol = word[0] - word = word[1:] - if word and word[-1] in punctuation_symbols: - last_symbol = word[-1] - word = word[:-1] - arpabet = cmudict.lookup(word) - if arpabet is not None: - return first_symbol + "{%s}" % arpabet[0] + last_symbol - return first_symbol + word + last_symbol - - -_alt_re = re.compile(r"\([0-9]+\)") - - -def _parse_cmudict(file): - cmudict = {} - for line in file: - if line and (line[0] >= "A" and line[0] <= "Z" or line[0] == "'"): - parts = line.split(" ") - word = re.sub(_alt_re, "", parts[0]) - pronunciation = _get_pronunciation(parts[1]) - if pronunciation: - if word in cmudict: - cmudict[word].append(pronunciation) - else: - cmudict[word] = [pronunciation] - return cmudict - - -def _get_pronunciation(s): - parts = s.strip().split(" ") - for part in parts: - if part not in VALID_SYMBOLS: - return None - return " ".join(parts) diff --git a/TTS/TTS/tts/utils/text/english/__init__.py b/TTS/TTS/tts/utils/text/english/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/utils/text/english/abbreviations.py b/TTS/TTS/tts/utils/text/english/abbreviations.py deleted file mode 100644 index cd93c13c8ecfbc0df2d0c6d2fa348388940c213a..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/english/abbreviations.py +++ /dev/null @@ -1,26 +0,0 @@ -import re - -# List of (regular expression, replacement) pairs for abbreviations in english: -abbreviations_en = [ - (re.compile("\\b%s\\." % x[0], re.IGNORECASE), x[1]) - for x in [ - ("mrs", "misess"), - ("mr", "mister"), - ("dr", "doctor"), - ("st", "saint"), - ("co", "company"), - ("jr", "junior"), - ("maj", "major"), - ("gen", "general"), - ("drs", "doctors"), - ("rev", "reverend"), - ("lt", "lieutenant"), - ("hon", "honorable"), - ("sgt", "sergeant"), - ("capt", "captain"), - ("esq", "esquire"), - ("ltd", "limited"), - ("col", "colonel"), - ("ft", "fort"), - ] -] diff --git a/TTS/TTS/tts/utils/text/english/number_norm.py b/TTS/TTS/tts/utils/text/english/number_norm.py deleted file mode 100644 index e8377ede87ebc9d1bb9cffbbb290aa7787caea4f..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/english/number_norm.py +++ /dev/null @@ -1,97 +0,0 @@ -""" from https://github.com/keithito/tacotron """ - -import re -from typing import Dict - -import inflect - -_inflect = inflect.engine() -_comma_number_re = re.compile(r"([0-9][0-9\,]+[0-9])") -_decimal_number_re = re.compile(r"([0-9]+\.[0-9]+)") -_currency_re = re.compile(r"(£|\$|¥)([0-9\,\.]*[0-9]+)") -_ordinal_re = re.compile(r"[0-9]+(st|nd|rd|th)") -_number_re = re.compile(r"-?[0-9]+") - - -def _remove_commas(m): - return m.group(1).replace(",", "") - - -def _expand_decimal_point(m): - return m.group(1).replace(".", " point ") - - -def __expand_currency(value: str, inflection: Dict[float, str]) -> str: - parts = value.replace(",", "").split(".") - if len(parts) > 2: - return f"{value} {inflection[2]}" # Unexpected format - text = [] - integer = int(parts[0]) if parts[0] else 0 - if integer > 0: - integer_unit = inflection.get(integer, inflection[2]) - text.append(f"{integer} {integer_unit}") - fraction = int(parts[1]) if len(parts) > 1 and parts[1] else 0 - if fraction > 0: - fraction_unit = inflection.get(fraction / 100, inflection[0.02]) - text.append(f"{fraction} {fraction_unit}") - if len(text) == 0: - return f"zero {inflection[2]}" - return " ".join(text) - - -def _expand_currency(m: "re.Match") -> str: - currencies = { - "$": { - 0.01: "cent", - 0.02: "cents", - 1: "dollar", - 2: "dollars", - }, - "€": { - 0.01: "cent", - 0.02: "cents", - 1: "euro", - 2: "euros", - }, - "£": { - 0.01: "penny", - 0.02: "pence", - 1: "pound sterling", - 2: "pounds sterling", - }, - "¥": { - # TODO rin - 0.02: "sen", - 2: "yen", - }, - } - unit = m.group(1) - currency = currencies[unit] - value = m.group(2) - return __expand_currency(value, currency) - - -def _expand_ordinal(m): - return _inflect.number_to_words(m.group(0)) - - -def _expand_number(m): - num = int(m.group(0)) - if 1000 < num < 3000: - if num == 2000: - return "two thousand" - if 2000 < num < 2010: - return "two thousand " + _inflect.number_to_words(num % 100) - if num % 100 == 0: - return _inflect.number_to_words(num // 100) + " hundred" - return _inflect.number_to_words(num, andword="", zero="oh", group=2).replace(", ", " ") - return _inflect.number_to_words(num, andword="") - - -def normalize_numbers(text): - text = re.sub(_comma_number_re, _remove_commas, text) - text = re.sub(_currency_re, _expand_currency, text) - text = re.sub(_decimal_number_re, _expand_decimal_point, text) - text = re.sub(_ordinal_re, _expand_ordinal, text) - text = re.sub(_number_re, _expand_number, text) - return text diff --git a/TTS/TTS/tts/utils/text/english/time_norm.py b/TTS/TTS/tts/utils/text/english/time_norm.py deleted file mode 100644 index c8ac09e79db4a239a7f72f101503dbf0d6feb3ae..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/english/time_norm.py +++ /dev/null @@ -1,47 +0,0 @@ -import re - -import inflect - -_inflect = inflect.engine() - -_time_re = re.compile( - r"""\b - ((0?[0-9])|(1[0-1])|(1[2-9])|(2[0-3])) # hours - : - ([0-5][0-9]) # minutes - \s*(a\\.m\\.|am|pm|p\\.m\\.|a\\.m|p\\.m)? # am/pm - \b""", - re.IGNORECASE | re.X, -) - - -def _expand_num(n: int) -> str: - return _inflect.number_to_words(n) - - -def _expand_time_english(match: "re.Match") -> str: - hour = int(match.group(1)) - past_noon = hour >= 12 - time = [] - if hour > 12: - hour -= 12 - elif hour == 0: - hour = 12 - past_noon = True - time.append(_expand_num(hour)) - - minute = int(match.group(6)) - if minute > 0: - if minute < 10: - time.append("oh") - time.append(_expand_num(minute)) - am_pm = match.group(7) - if am_pm is None: - time.append("p m" if past_noon else "a m") - else: - time.extend(list(am_pm.replace(".", ""))) - return " ".join(time) - - -def expand_time_english(text: str) -> str: - return re.sub(_time_re, _expand_time_english, text) diff --git a/TTS/TTS/tts/utils/text/french/__init__.py b/TTS/TTS/tts/utils/text/french/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/utils/text/french/abbreviations.py b/TTS/TTS/tts/utils/text/french/abbreviations.py deleted file mode 100644 index f580dfed7b4576a9f87b0a4145cb729e70050d50..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/french/abbreviations.py +++ /dev/null @@ -1,48 +0,0 @@ -import re - -# List of (regular expression, replacement) pairs for abbreviations in french: -abbreviations_fr = [ - (re.compile("\\b%s\\." % x[0], re.IGNORECASE), x[1]) - for x in [ - ("M", "monsieur"), - ("Mlle", "mademoiselle"), - ("Mlles", "mesdemoiselles"), - ("Mme", "Madame"), - ("Mmes", "Mesdames"), - ("N.B", "nota bene"), - ("M", "monsieur"), - ("p.c.q", "parce que"), - ("Pr", "professeur"), - ("qqch", "quelque chose"), - ("rdv", "rendez-vous"), - ("max", "maximum"), - ("min", "minimum"), - ("no", "numéro"), - ("adr", "adresse"), - ("dr", "docteur"), - ("st", "saint"), - ("co", "companie"), - ("jr", "junior"), - ("sgt", "sergent"), - ("capt", "capitain"), - ("col", "colonel"), - ("av", "avenue"), - ("av. J.-C", "avant Jésus-Christ"), - ("apr. J.-C", "après Jésus-Christ"), - ("art", "article"), - ("boul", "boulevard"), - ("c.-à-d", "c’est-à-dire"), - ("etc", "et cetera"), - ("ex", "exemple"), - ("excl", "exclusivement"), - ("boul", "boulevard"), - ] -] + [ - (re.compile("\\b%s" % x[0]), x[1]) - for x in [ - ("Mlle", "mademoiselle"), - ("Mlles", "mesdemoiselles"), - ("Mme", "Madame"), - ("Mmes", "Mesdames"), - ] -] diff --git a/TTS/TTS/tts/utils/text/japanese/__init__.py b/TTS/TTS/tts/utils/text/japanese/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/utils/text/japanese/phonemizer.py b/TTS/TTS/tts/utils/text/japanese/phonemizer.py deleted file mode 100644 index c3111067e140903b301696c59b67f090995c1f59..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/japanese/phonemizer.py +++ /dev/null @@ -1,470 +0,0 @@ -# Convert Japanese text to phonemes which is -# compatible with Julius https://github.com/julius-speech/segmentation-kit - -import re -import unicodedata - -try: - import MeCab -except ImportError as e: - raise ImportError("Japanese requires mecab-python3 and unidic-lite.") from e -from num2words import num2words - -_CONVRULES = [ - # Conversion of 2 letters - "アァ/ a a", - "イィ/ i i", - "イェ/ i e", - "イャ/ y a", - "ウゥ/ u:", - "エェ/ e e", - "オォ/ o:", - "カァ/ k a:", - "キィ/ k i:", - "クゥ/ k u:", - "クャ/ ky a", - "クュ/ ky u", - "クョ/ ky o", - "ケェ/ k e:", - "コォ/ k o:", - "ガァ/ g a:", - "ギィ/ g i:", - "グゥ/ g u:", - "グャ/ gy a", - "グュ/ gy u", - "グョ/ gy o", - "ゲェ/ g e:", - "ゴォ/ g o:", - "サァ/ s a:", - "シィ/ sh i:", - "スゥ/ s u:", - "スャ/ sh a", - "スュ/ sh u", - "スョ/ sh o", - "セェ/ s e:", - "ソォ/ s o:", - "ザァ/ z a:", - "ジィ/ j i:", - "ズゥ/ z u:", - "ズャ/ zy a", - "ズュ/ zy u", - "ズョ/ zy o", - "ゼェ/ z e:", - "ゾォ/ z o:", - "タァ/ t a:", - "チィ/ ch i:", - "ツァ/ ts a", - "ツィ/ ts i", - "ツゥ/ ts u:", - "ツャ/ ch a", - "ツュ/ ch u", - "ツョ/ ch o", - "ツェ/ ts e", - "ツォ/ ts o", - "テェ/ t e:", - "トォ/ t o:", - "ダァ/ d a:", - "ヂィ/ j i:", - "ヅゥ/ d u:", - "ヅャ/ zy a", - "ヅュ/ zy u", - "ヅョ/ zy o", - "デェ/ d e:", - "ドォ/ d o:", - "ナァ/ n a:", - "ニィ/ n i:", - "ヌゥ/ n u:", - "ヌャ/ ny a", - "ヌュ/ ny u", - "ヌョ/ ny o", - "ネェ/ n e:", - "ノォ/ n o:", - "ハァ/ h a:", - "ヒィ/ h i:", - "フゥ/ f u:", - "フャ/ hy a", - "フュ/ hy u", - "フョ/ hy o", - "ヘェ/ h e:", - "ホォ/ h o:", - "バァ/ b a:", - "ビィ/ b i:", - "ブゥ/ b u:", - "フャ/ hy a", - "ブュ/ by u", - "フョ/ hy o", - "ベェ/ b e:", - "ボォ/ b o:", - "パァ/ p a:", - "ピィ/ p i:", - "プゥ/ p u:", - "プャ/ py a", - "プュ/ py u", - "プョ/ py o", - "ペェ/ p e:", - "ポォ/ p o:", - "マァ/ m a:", - "ミィ/ m i:", - "ムゥ/ m u:", - "ムャ/ my a", - "ムュ/ my u", - "ムョ/ my o", - "メェ/ m e:", - "モォ/ m o:", - "ヤァ/ y a:", - "ユゥ/ y u:", - "ユャ/ y a:", - "ユュ/ y u:", - "ユョ/ y o:", - "ヨォ/ y o:", - "ラァ/ r a:", - "リィ/ r i:", - "ルゥ/ r u:", - "ルャ/ ry a", - "ルュ/ ry u", - "ルョ/ ry o", - "レェ/ r e:", - "ロォ/ r o:", - "ワァ/ w a:", - "ヲォ/ o:", - "ディ/ d i", - "デェ/ d e:", - "デャ/ dy a", - "デュ/ dy u", - "デョ/ dy o", - "ティ/ t i", - "テェ/ t e:", - "テャ/ ty a", - "テュ/ ty u", - "テョ/ ty o", - "スィ/ s i", - "ズァ/ z u a", - "ズィ/ z i", - "ズゥ/ z u", - "ズャ/ zy a", - "ズュ/ zy u", - "ズョ/ zy o", - "ズェ/ z e", - "ズォ/ z o", - "キャ/ ky a", - "キュ/ ky u", - "キョ/ ky o", - "シャ/ sh a", - "シュ/ sh u", - "シェ/ sh e", - "ショ/ sh o", - "チャ/ ch a", - "チュ/ ch u", - "チェ/ ch e", - "チョ/ ch o", - "トゥ/ t u", - "トャ/ ty a", - "トュ/ ty u", - "トョ/ ty o", - "ドァ/ d o a", - "ドゥ/ d u", - "ドャ/ dy a", - "ドュ/ dy u", - "ドョ/ dy o", - "ドォ/ d o:", - "ニャ/ ny a", - "ニュ/ ny u", - "ニョ/ ny o", - "ヒャ/ hy a", - "ヒュ/ hy u", - "ヒョ/ hy o", - "ミャ/ my a", - "ミュ/ my u", - "ミョ/ my o", - "リャ/ ry a", - "リュ/ ry u", - "リョ/ ry o", - "ギャ/ gy a", - "ギュ/ gy u", - "ギョ/ gy o", - "ヂェ/ j e", - "ヂャ/ j a", - "ヂュ/ j u", - "ヂョ/ j o", - "ジェ/ j e", - "ジャ/ j a", - "ジュ/ j u", - "ジョ/ j o", - "ビャ/ by a", - "ビュ/ by u", - "ビョ/ by o", - "ピャ/ py a", - "ピュ/ py u", - "ピョ/ py o", - "ウァ/ u a", - "ウィ/ w i", - "ウェ/ w e", - "ウォ/ w o", - "ファ/ f a", - "フィ/ f i", - "フゥ/ f u", - "フャ/ hy a", - "フュ/ hy u", - "フョ/ hy o", - "フェ/ f e", - "フォ/ f o", - "ヴァ/ b a", - "ヴィ/ b i", - "ヴェ/ b e", - "ヴォ/ b o", - "ヴュ/ by u", - # Conversion of 1 letter - "ア/ a", - "イ/ i", - "ウ/ u", - "エ/ e", - "オ/ o", - "カ/ k a", - "キ/ k i", - "ク/ k u", - "ケ/ k e", - "コ/ k o", - "サ/ s a", - "シ/ sh i", - "ス/ s u", - "セ/ s e", - "ソ/ s o", - "タ/ t a", - "チ/ ch i", - "ツ/ ts u", - "テ/ t e", - "ト/ t o", - "ナ/ n a", - "ニ/ n i", - "ヌ/ n u", - "ネ/ n e", - "ノ/ n o", - "ハ/ h a", - "ヒ/ h i", - "フ/ f u", - "ヘ/ h e", - "ホ/ h o", - "マ/ m a", - "ミ/ m i", - "ム/ m u", - "メ/ m e", - "モ/ m o", - "ラ/ r a", - "リ/ r i", - "ル/ r u", - "レ/ r e", - "ロ/ r o", - "ガ/ g a", - "ギ/ g i", - "グ/ g u", - "ゲ/ g e", - "ゴ/ g o", - "ザ/ z a", - "ジ/ j i", - "ズ/ z u", - "ゼ/ z e", - "ゾ/ z o", - "ダ/ d a", - "ヂ/ j i", - "ヅ/ z u", - "デ/ d e", - "ド/ d o", - "バ/ b a", - "ビ/ b i", - "ブ/ b u", - "ベ/ b e", - "ボ/ b o", - "パ/ p a", - "ピ/ p i", - "プ/ p u", - "ペ/ p e", - "ポ/ p o", - "ヤ/ y a", - "ユ/ y u", - "ヨ/ y o", - "ワ/ w a", - "ヰ/ i", - "ヱ/ e", - "ヲ/ o", - "ン/ N", - "ッ/ q", - "ヴ/ b u", - "ー/:", - # Try converting broken text - "ァ/ a", - "ィ/ i", - "ゥ/ u", - "ェ/ e", - "ォ/ o", - "ヮ/ w a", - "ォ/ o", - # Symbols - "、/ ,", - "。/ .", - "!/ !", - "?/ ?", - "・/ ,", -] - -_COLON_RX = re.compile(":+") -_REJECT_RX = re.compile("[^ a-zA-Z:,.?]") - - -def _makerulemap(): - l = [tuple(x.split("/")) for x in _CONVRULES] - return tuple({k: v for k, v in l if len(k) == i} for i in (1, 2)) - - -_RULEMAP1, _RULEMAP2 = _makerulemap() - - -def kata2phoneme(text: str) -> str: - """Convert katakana text to phonemes.""" - text = text.strip() - res = "" - while text: - if len(text) >= 2: - x = _RULEMAP2.get(text[:2]) - if x is not None: - text = text[2:] - res += x - continue - x = _RULEMAP1.get(text[0]) - if x is not None: - text = text[1:] - res += x - continue - res += " " + text[0] - text = text[1:] - res = _COLON_RX.sub(":", res) - return res[1:] - - -_KATAKANA = "".join(chr(ch) for ch in range(ord("ァ"), ord("ン") + 1)) -_HIRAGANA = "".join(chr(ch) for ch in range(ord("ぁ"), ord("ん") + 1)) -_HIRA2KATATRANS = str.maketrans(_HIRAGANA, _KATAKANA) - - -def hira2kata(text: str) -> str: - text = text.translate(_HIRA2KATATRANS) - return text.replace("う゛", "ヴ") - - -_SYMBOL_TOKENS = set(list("・、。?!")) -_NO_YOMI_TOKENS = set(list("「」『』―()[][] …")) -_TAGGER = MeCab.Tagger() - - -def text2kata(text: str) -> str: - parsed = _TAGGER.parse(text) - res = [] - for line in parsed.split("\n"): - if line == "EOS": - break - parts = line.split("\t") - - word, yomi = parts[0], parts[1] - if yomi: - res.append(yomi) - else: - if word in _SYMBOL_TOKENS: - res.append(word) - elif word in ("っ", "ッ"): - res.append("ッ") - elif word in _NO_YOMI_TOKENS: - pass - else: - res.append(word) - return hira2kata("".join(res)) - - -_ALPHASYMBOL_YOMI = { - "#": "シャープ", - "%": "パーセント", - "&": "アンド", - "+": "プラス", - "-": "マイナス", - ":": "コロン", - ";": "セミコロン", - "<": "小なり", - "=": "イコール", - ">": "大なり", - "@": "アット", - "a": "エー", - "b": "ビー", - "c": "シー", - "d": "ディー", - "e": "イー", - "f": "エフ", - "g": "ジー", - "h": "エイチ", - "i": "アイ", - "j": "ジェー", - "k": "ケー", - "l": "エル", - "m": "エム", - "n": "エヌ", - "o": "オー", - "p": "ピー", - "q": "キュー", - "r": "アール", - "s": "エス", - "t": "ティー", - "u": "ユー", - "v": "ブイ", - "w": "ダブリュー", - "x": "エックス", - "y": "ワイ", - "z": "ゼット", - "α": "アルファ", - "β": "ベータ", - "γ": "ガンマ", - "δ": "デルタ", - "ε": "イプシロン", - "ζ": "ゼータ", - "η": "イータ", - "θ": "シータ", - "ι": "イオタ", - "κ": "カッパ", - "λ": "ラムダ", - "μ": "ミュー", - "ν": "ニュー", - "ξ": "クサイ", - "ο": "オミクロン", - "π": "パイ", - "ρ": "ロー", - "σ": "シグマ", - "τ": "タウ", - "υ": "ウプシロン", - "φ": "ファイ", - "χ": "カイ", - "ψ": "プサイ", - "ω": "オメガ", -} - - -_NUMBER_WITH_SEPARATOR_RX = re.compile("[0-9]{1,3}(,[0-9]{3})+") -_CURRENCY_MAP = {"$": "ドル", "¥": "円", "£": "ポンド", "€": "ユーロ"} -_CURRENCY_RX = re.compile(r"([$¥£€])([0-9.]*[0-9])") -_NUMBER_RX = re.compile(r"[0-9]+(\.[0-9]+)?") - - -def japanese_convert_numbers_to_words(text: str) -> str: - res = _NUMBER_WITH_SEPARATOR_RX.sub(lambda m: m[0].replace(",", ""), text) - res = _CURRENCY_RX.sub(lambda m: m[2] + _CURRENCY_MAP.get(m[1], m[1]), res) - res = _NUMBER_RX.sub(lambda m: num2words(m[0], lang="ja"), res) - return res - - -def japanese_convert_alpha_symbols_to_words(text: str) -> str: - return "".join([_ALPHASYMBOL_YOMI.get(ch, ch) for ch in text.lower()]) - - -def japanese_text_to_phonemes(text: str) -> str: - """Convert Japanese text to phonemes.""" - res = unicodedata.normalize("NFKC", text) - res = japanese_convert_numbers_to_words(res) - res = japanese_convert_alpha_symbols_to_words(res) - res = text2kata(res) - res = kata2phoneme(res) - return res.replace(" ", "") diff --git a/TTS/TTS/tts/utils/text/korean/__init__.py b/TTS/TTS/tts/utils/text/korean/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/tts/utils/text/korean/ko_dictionary.py b/TTS/TTS/tts/utils/text/korean/ko_dictionary.py deleted file mode 100644 index 5d2a148234be297cca12417964b191f1f521280d..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/korean/ko_dictionary.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding: utf-8 -# Add the word you want to the dictionary. -etc_dictionary = {"1+1": "원플러스원", "2+1": "투플러스원"} - - -english_dictionary = { - "KOREA": "코리아", - "IDOL": "아이돌", - "IT": "아이티", - "IQ": "아이큐", - "UP": "업", - "DOWN": "다운", - "PC": "피씨", - "CCTV": "씨씨티비", - "SNS": "에스엔에스", - "AI": "에이아이", - "CEO": "씨이오", - "A": "에이", - "B": "비", - "C": "씨", - "D": "디", - "E": "이", - "F": "에프", - "G": "지", - "H": "에이치", - "I": "아이", - "J": "제이", - "K": "케이", - "L": "엘", - "M": "엠", - "N": "엔", - "O": "오", - "P": "피", - "Q": "큐", - "R": "알", - "S": "에스", - "T": "티", - "U": "유", - "V": "브이", - "W": "더블유", - "X": "엑스", - "Y": "와이", - "Z": "제트", -} diff --git a/TTS/TTS/tts/utils/text/korean/korean.py b/TTS/TTS/tts/utils/text/korean/korean.py deleted file mode 100644 index 1f39a9e4da52be75f4fbf6838da1824d7d488a47..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/korean/korean.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding: utf-8 -# Code based on https://github.com/carpedm20/multi-speaker-tacotron-tensorflow/blob/master/text/korean.py -import re - -from TTS.tts.utils.text.korean.ko_dictionary import english_dictionary, etc_dictionary - - -def normalize(text): - text = text.strip() - text = re.sub("[⺀-⺙⺛-⻳⼀-⿕々〇〡-〩〸-〺〻㐀-䶵一-鿃豈-鶴侮-頻並-龎]", "", text) - text = normalize_with_dictionary(text, etc_dictionary) - text = normalize_english(text) - text = text.lower() - return text - - -def normalize_with_dictionary(text, dic): - if any(key in text for key in dic.keys()): - pattern = re.compile("|".join(re.escape(key) for key in dic.keys())) - return pattern.sub(lambda x: dic[x.group()], text) - return text - - -def normalize_english(text): - def fn(m): - word = m.group() - if word in english_dictionary: - return english_dictionary.get(word) - return word - - text = re.sub("([A-Za-z]+)", fn, text) - return text diff --git a/TTS/TTS/tts/utils/text/korean/phonemizer.py b/TTS/TTS/tts/utils/text/korean/phonemizer.py deleted file mode 100644 index ed70fc35f6950b98ec715577a3303c5a271fbb0e..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/korean/phonemizer.py +++ /dev/null @@ -1,36 +0,0 @@ -from jamo import hangul_to_jamo - -from TTS.tts.utils.text.korean.korean import normalize - -g2p = None - - -def korean_text_to_phonemes(text, character: str = "hangeul") -> str: - """ - - The input and output values look the same, but they are different in Unicode. - - example : - - input = '하늘' (Unicode : \ud558\ub298), (하 + 늘) - output = '하늘' (Unicode :\u1112\u1161\u1102\u1173\u11af), (ᄒ + ᅡ + ᄂ + ᅳ + ᆯ) - - """ - global g2p # pylint: disable=global-statement - if g2p is None: - from g2pkk import G2p - - g2p = G2p() - - if character == "english": - from anyascii import anyascii - - text = normalize(text) - text = g2p(text) - text = anyascii(text) - return text - - text = normalize(text) - text = g2p(text) - text = list(hangul_to_jamo(text)) # '하늘' --> ['ᄒ', 'ᅡ', 'ᄂ', 'ᅳ', 'ᆯ'] - return "".join(text) diff --git a/TTS/TTS/tts/utils/text/phonemizers/__init__.py b/TTS/TTS/tts/utils/text/phonemizers/__init__.py deleted file mode 100644 index dbc087367b41a05756bf47944b0e44d74dd2fd9e..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/phonemizers/__init__.py +++ /dev/null @@ -1,75 +0,0 @@ -from TTS.tts.utils.text.phonemizers.bangla_phonemizer import BN_Phonemizer -from TTS.tts.utils.text.phonemizers.base import BasePhonemizer -from TTS.tts.utils.text.phonemizers.espeak_wrapper import ESpeak -from TTS.tts.utils.text.phonemizers.gruut_wrapper import Gruut -from TTS.tts.utils.text.phonemizers.ko_kr_phonemizer import KO_KR_Phonemizer -from TTS.tts.utils.text.phonemizers.zh_cn_phonemizer import ZH_CN_Phonemizer - -try: - from TTS.tts.utils.text.phonemizers.ja_jp_phonemizer import JA_JP_Phonemizer -except ImportError: - JA_JP_Phonemizer = None - pass - -PHONEMIZERS = {b.name(): b for b in (ESpeak, Gruut, KO_KR_Phonemizer, BN_Phonemizer)} - - -ESPEAK_LANGS = list(ESpeak.supported_languages().keys()) -GRUUT_LANGS = list(Gruut.supported_languages()) - - -# Dict setting default phonemizers for each language -# Add Gruut languages -_ = [Gruut.name()] * len(GRUUT_LANGS) -DEF_LANG_TO_PHONEMIZER = dict(list(zip(GRUUT_LANGS, _))) - - -# Add ESpeak languages and override any existing ones -_ = [ESpeak.name()] * len(ESPEAK_LANGS) -_new_dict = dict(list(zip(list(ESPEAK_LANGS), _))) -DEF_LANG_TO_PHONEMIZER.update(_new_dict) - - -# Force default for some languages -DEF_LANG_TO_PHONEMIZER["en"] = DEF_LANG_TO_PHONEMIZER["en-us"] -DEF_LANG_TO_PHONEMIZER["zh-cn"] = ZH_CN_Phonemizer.name() -DEF_LANG_TO_PHONEMIZER["ko-kr"] = KO_KR_Phonemizer.name() -DEF_LANG_TO_PHONEMIZER["bn"] = BN_Phonemizer.name() - - -# JA phonemizer has deal breaking dependencies like MeCab for some systems. -# So we only have it when we have it. -if JA_JP_Phonemizer is not None: - PHONEMIZERS[JA_JP_Phonemizer.name()] = JA_JP_Phonemizer - DEF_LANG_TO_PHONEMIZER["ja-jp"] = JA_JP_Phonemizer.name() - - -def get_phonemizer_by_name(name: str, **kwargs) -> BasePhonemizer: - """Initiate a phonemizer by name - - Args: - name (str): - Name of the phonemizer that should match `phonemizer.name()`. - - kwargs (dict): - Extra keyword arguments that should be passed to the phonemizer. - """ - if name == "espeak": - return ESpeak(**kwargs) - if name == "gruut": - return Gruut(**kwargs) - if name == "zh_cn_phonemizer": - return ZH_CN_Phonemizer(**kwargs) - if name == "ja_jp_phonemizer": - if JA_JP_Phonemizer is None: - raise ValueError(" ❗ You need to install JA phonemizer dependencies. Try `pip install TTS[ja]`.") - return JA_JP_Phonemizer(**kwargs) - if name == "ko_kr_phonemizer": - return KO_KR_Phonemizer(**kwargs) - if name == "bn_phonemizer": - return BN_Phonemizer(**kwargs) - raise ValueError(f"Phonemizer {name} not found") - - -if __name__ == "__main__": - print(DEF_LANG_TO_PHONEMIZER) diff --git a/TTS/TTS/tts/utils/text/phonemizers/bangla_phonemizer.py b/TTS/TTS/tts/utils/text/phonemizers/bangla_phonemizer.py deleted file mode 100644 index 3c4a35bbfa4fc63a7cbb2a2caa152ef59b4afa63..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/phonemizers/bangla_phonemizer.py +++ /dev/null @@ -1,62 +0,0 @@ -from typing import Dict - -from TTS.tts.utils.text.bangla.phonemizer import bangla_text_to_phonemes -from TTS.tts.utils.text.phonemizers.base import BasePhonemizer - -_DEF_ZH_PUNCS = "、.,[]()?!〽~『』「」【】" - - -class BN_Phonemizer(BasePhonemizer): - """🐸TTS bn phonemizer using functions in `TTS.tts.utils.text.bangla.phonemizer` - - Args: - punctuations (str): - Set of characters to be treated as punctuation. Defaults to `_DEF_ZH_PUNCS`. - - keep_puncs (bool): - If True, keep the punctuations after phonemization. Defaults to False. - - Example :: - - "这是,样本中文。" -> `d|ʒ|ø|4| |ʂ|ʏ|4| |,| |i|ɑ|ŋ|4|b|œ|n|3| |d|ʒ|o|ŋ|1|w|œ|n|2| |。` - - TODO: someone with Bangla knowledge should check this implementation - """ - - language = "bn" - - def __init__(self, punctuations=_DEF_ZH_PUNCS, keep_puncs=False, **kwargs): # pylint: disable=unused-argument - super().__init__(self.language, punctuations=punctuations, keep_puncs=keep_puncs) - - @staticmethod - def name(): - return "bn_phonemizer" - - @staticmethod - def phonemize_bn(text: str, separator: str = "|") -> str: # pylint: disable=unused-argument - ph = bangla_text_to_phonemes(text) - return ph - - def _phonemize(self, text, separator): - return self.phonemize_bn(text, separator) - - @staticmethod - def supported_languages() -> Dict: - return {"bn": "Bangla"} - - def version(self) -> str: - return "0.0.1" - - def is_available(self) -> bool: - return True - - -if __name__ == "__main__": - txt = "রাসূলুল্লাহ সাল্লাল্লাহু আলাইহি ওয়া সাল্লাম শিক্ষা দিয়েছেন যে, কেউ যদি কোন খারাপ কিছুর সম্মুখীন হয়, তখনও যেন বলে." - e = BN_Phonemizer() - print(e.supported_languages()) - print(e.version()) - print(e.language) - print(e.name()) - print(e.is_available()) - print("`" + e.phonemize(txt) + "`") diff --git a/TTS/TTS/tts/utils/text/phonemizers/base.py b/TTS/TTS/tts/utils/text/phonemizers/base.py deleted file mode 100644 index 4fc79874159aad40ce27f34671907a25d7e39a94..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/phonemizers/base.py +++ /dev/null @@ -1,140 +0,0 @@ -import abc -from typing import List, Tuple - -from TTS.tts.utils.text.punctuation import Punctuation - - -class BasePhonemizer(abc.ABC): - """Base phonemizer class - - Phonemization follows the following steps: - 1. Preprocessing: - - remove empty lines - - remove punctuation - - keep track of punctuation marks - - 2. Phonemization: - - convert text to phonemes - - 3. Postprocessing: - - join phonemes - - restore punctuation marks - - Args: - language (str): - Language used by the phonemizer. - - punctuations (List[str]): - List of punctuation marks to be preserved. - - keep_puncs (bool): - Whether to preserve punctuation marks or not. - """ - - def __init__(self, language, punctuations=Punctuation.default_puncs(), keep_puncs=False): - # ensure the backend is installed on the system - if not self.is_available(): - raise RuntimeError("{} not installed on your system".format(self.name())) # pragma: nocover - - # ensure the backend support the requested language - self._language = self._init_language(language) - - # setup punctuation processing - self._keep_puncs = keep_puncs - self._punctuator = Punctuation(punctuations) - - def _init_language(self, language): - """Language initialization - - This method may be overloaded in child classes (see Segments backend) - - """ - if not self.is_supported_language(language): - raise RuntimeError(f'language "{language}" is not supported by the ' f"{self.name()} backend") - return language - - @property - def language(self): - """The language code configured to be used for phonemization""" - return self._language - - @staticmethod - @abc.abstractmethod - def name(): - """The name of the backend""" - ... - - @classmethod - @abc.abstractmethod - def is_available(cls): - """Returns True if the backend is installed, False otherwise""" - ... - - @classmethod - @abc.abstractmethod - def version(cls): - """Return the backend version as a tuple (major, minor, patch)""" - ... - - @staticmethod - @abc.abstractmethod - def supported_languages(): - """Return a dict of language codes -> name supported by the backend""" - ... - - def is_supported_language(self, language): - """Returns True if `language` is supported by the backend""" - return language in self.supported_languages() - - @abc.abstractmethod - def _phonemize(self, text, separator): - """The main phonemization method""" - - def _phonemize_preprocess(self, text) -> Tuple[List[str], List]: - """Preprocess the text before phonemization - - 1. remove spaces - 2. remove punctuation - - Override this if you need a different behaviour - """ - text = text.strip() - if self._keep_puncs: - # a tuple (text, punctuation marks) - return self._punctuator.strip_to_restore(text) - return [self._punctuator.strip(text)], [] - - def _phonemize_postprocess(self, phonemized, punctuations) -> str: - """Postprocess the raw phonemized output - - Override this if you need a different behaviour - """ - if self._keep_puncs: - return self._punctuator.restore(phonemized, punctuations)[0] - return phonemized[0] - - def phonemize(self, text: str, separator="|", language: str = None) -> str: # pylint: disable=unused-argument - """Returns the `text` phonemized for the given language - - Args: - text (str): - Text to be phonemized. - - separator (str): - string separator used between phonemes. Default to '_'. - - Returns: - (str): Phonemized text - """ - text, punctuations = self._phonemize_preprocess(text) - phonemized = [] - for t in text: - p = self._phonemize(t, separator) - phonemized.append(p) - phonemized = self._phonemize_postprocess(phonemized, punctuations) - return phonemized - - def print_logs(self, level: int = 0): - indent = "\t" * level - print(f"{indent}| > phoneme language: {self.language}") - print(f"{indent}| > phoneme backend: {self.name()}") diff --git a/TTS/TTS/tts/utils/text/phonemizers/espeak_wrapper.py b/TTS/TTS/tts/utils/text/phonemizers/espeak_wrapper.py deleted file mode 100644 index 8982a893779495cc4d8187040546706fdcc9d11b..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/phonemizers/espeak_wrapper.py +++ /dev/null @@ -1,268 +0,0 @@ -import logging -import re -import subprocess -from typing import Dict, List - -from packaging.version import Version - -from TTS.tts.utils.text.phonemizers.base import BasePhonemizer -from TTS.tts.utils.text.punctuation import Punctuation - - -def is_tool(name): - from shutil import which - - return which(name) is not None - - -# Use a regex pattern to match the espeak version, because it may be -# symlinked to espeak-ng, which moves the version bits to another spot. -espeak_version_pattern = re.compile(r"text-to-speech:\s(?P\d+\.\d+(\.\d+)?)") - - -def get_espeak_version(): - output = subprocess.getoutput("espeak --version") - match = espeak_version_pattern.search(output) - - return match.group("version") - - -def get_espeakng_version(): - output = subprocess.getoutput("espeak-ng --version") - return output.split()[3] - - -# priority: espeakng > espeak -if is_tool("espeak-ng"): - _DEF_ESPEAK_LIB = "espeak-ng" - _DEF_ESPEAK_VER = get_espeakng_version() -elif is_tool("espeak"): - _DEF_ESPEAK_LIB = "espeak" - _DEF_ESPEAK_VER = get_espeak_version() -else: - _DEF_ESPEAK_LIB = None - _DEF_ESPEAK_VER = None - - -def _espeak_exe(espeak_lib: str, args: List, sync=False) -> List[str]: - """Run espeak with the given arguments.""" - cmd = [ - espeak_lib, - "-q", - "-b", - "1", # UTF8 text encoding - ] - cmd.extend(args) - logging.debug("espeakng: executing %s", repr(cmd)) - - with subprocess.Popen( - cmd, - stdout=subprocess.PIPE, - stderr=subprocess.STDOUT, - ) as p: - res = iter(p.stdout.readline, b"") - if not sync: - p.stdout.close() - if p.stderr: - p.stderr.close() - if p.stdin: - p.stdin.close() - return res - res2 = [] - for line in res: - res2.append(line) - p.stdout.close() - if p.stderr: - p.stderr.close() - if p.stdin: - p.stdin.close() - p.wait() - return res2 - - -class ESpeak(BasePhonemizer): - """ESpeak wrapper calling `espeak` or `espeak-ng` from the command-line the perform G2P - - Args: - language (str): - Valid language code for the used backend. - - backend (str): - Name of the backend library to use. `espeak` or `espeak-ng`. If None, set automatically - prefering `espeak-ng` over `espeak`. Defaults to None. - - punctuations (str): - Characters to be treated as punctuation. Defaults to Punctuation.default_puncs(). - - keep_puncs (bool): - If True, keep the punctuations after phonemization. Defaults to True. - - Example: - - >>> from TTS.tts.utils.text.phonemizers import ESpeak - >>> phonemizer = ESpeak("tr") - >>> phonemizer.phonemize("Bu Türkçe, bir örnektir.", separator="|") - 'b|ʊ t|ˈø|r|k|tʃ|ɛ, b|ɪ|r œ|r|n|ˈɛ|c|t|ɪ|r.' - - """ - - _ESPEAK_LIB = _DEF_ESPEAK_LIB - _ESPEAK_VER = _DEF_ESPEAK_VER - - def __init__(self, language: str, backend=None, punctuations=Punctuation.default_puncs(), keep_puncs=True): - if self._ESPEAK_LIB is None: - raise Exception(" [!] No espeak backend found. Install espeak-ng or espeak to your system.") - self.backend = self._ESPEAK_LIB - - # band-aid for backwards compatibility - if language == "en": - language = "en-us" - if language == "zh-cn": - language = "cmn" - - super().__init__(language, punctuations=punctuations, keep_puncs=keep_puncs) - if backend is not None: - self.backend = backend - - @property - def backend(self): - return self._ESPEAK_LIB - - @property - def backend_version(self): - return self._ESPEAK_VER - - @backend.setter - def backend(self, backend): - if backend not in ["espeak", "espeak-ng"]: - raise Exception("Unknown backend: %s" % backend) - self._ESPEAK_LIB = backend - self._ESPEAK_VER = get_espeakng_version() if backend == "espeak-ng" else get_espeak_version() - - def auto_set_espeak_lib(self) -> None: - if is_tool("espeak-ng"): - self._ESPEAK_LIB = "espeak-ng" - self._ESPEAK_VER = get_espeakng_version() - elif is_tool("espeak"): - self._ESPEAK_LIB = "espeak" - self._ESPEAK_VER = get_espeak_version() - else: - raise Exception("Cannot set backend automatically. espeak-ng or espeak not found") - - @staticmethod - def name(): - return "espeak" - - def phonemize_espeak(self, text: str, separator: str = "|", tie=False) -> str: - """Convert input text to phonemes. - - Args: - text (str): - Text to be converted to phonemes. - - tie (bool, optional) : When True use a '͡' character between - consecutive characters of a single phoneme. Else separate phoneme - with '_'. This option requires espeak>=1.49. Default to False. - """ - # set arguments - args = ["-v", f"{self._language}"] - # espeak and espeak-ng parses `ipa` differently - if tie: - # use '͡' between phonemes - if self.backend == "espeak": - args.append("--ipa=1") - else: - args.append("--ipa=3") - else: - # split with '_' - if self.backend == "espeak": - if Version(self.backend_version) >= Version("1.48.15"): - args.append("--ipa=1") - else: - args.append("--ipa=3") - else: - args.append("--ipa=1") - if tie: - args.append("--tie=%s" % tie) - - args.append('"' + text + '"') - # compute phonemes - phonemes = "" - for line in _espeak_exe(self._ESPEAK_LIB, args, sync=True): - logging.debug("line: %s", repr(line)) - ph_decoded = line.decode("utf8").strip() - # espeak need to skip first two characters of the retuned text: - # version 1.48.03: "_ p_ɹ_ˈaɪ_ɚ t_ə n_oʊ_v_ˈɛ_m_b_ɚ t_w_ˈɛ_n_t_i t_ˈuː\n" - # version 1.48.15: " p_ɹ_ˈaɪ_ɚ t_ə n_oʊ_v_ˈɛ_m_b_ɚ t_w_ˈɛ_n_t_i t_ˈuː\n" - # espeak-ng need to skip the first character of the retuned text: - # "_p_ɹ_ˈaɪ_ɚ t_ə n_oʊ_v_ˈɛ_m_b_ɚ t_w_ˈɛ_n_t_i t_ˈuː\n" - - # dealing with the conditions descrived above - ph_decoded = ph_decoded[:1].replace("_", "") + ph_decoded[1:] - - # espeak-ng backend can add language flags that need to be removed: - # "sɛʁtˈɛ̃ mˈo kɔm (en)fˈʊtbɔːl(fr) ʒenˈɛʁ de- flˈaɡ də- lˈɑ̃ɡ." - # phonemize needs to remove the language flags of the returned text: - # "sɛʁtˈɛ̃ mˈo kɔm fˈʊtbɔːl ʒenˈɛʁ de- flˈaɡ də- lˈɑ̃ɡ." - ph_decoded = re.sub(r"\(.+?\)", "", ph_decoded) - - phonemes += ph_decoded.strip() - return phonemes.replace("_", separator) - - def _phonemize(self, text, separator=None): - return self.phonemize_espeak(text, separator, tie=False) - - @staticmethod - def supported_languages() -> Dict: - """Get a dictionary of supported languages. - - Returns: - Dict: Dictionary of language codes. - """ - if _DEF_ESPEAK_LIB is None: - return {} - args = ["--voices"] - langs = {} - count = 0 - for line in _espeak_exe(_DEF_ESPEAK_LIB, args, sync=True): - line = line.decode("utf8").strip() - if count > 0: - cols = line.split() - lang_code = cols[1] - lang_name = cols[3] - langs[lang_code] = lang_name - logging.debug("line: %s", repr(line)) - count += 1 - return langs - - def version(self) -> str: - """Get the version of the used backend. - - Returns: - str: Version of the used backend. - """ - args = ["--version"] - for line in _espeak_exe(self.backend, args, sync=True): - version = line.decode("utf8").strip().split()[2] - logging.debug("line: %s", repr(line)) - return version - - @classmethod - def is_available(cls): - """Return true if ESpeak is available else false""" - return is_tool("espeak") or is_tool("espeak-ng") - - -if __name__ == "__main__": - e = ESpeak(language="en-us") - print(e.supported_languages()) - print(e.version()) - print(e.language) - print(e.name()) - print(e.is_available()) - - e = ESpeak(language="en-us", keep_puncs=False) - print("`" + e.phonemize("hello how are you today?") + "`") - - e = ESpeak(language="en-us", keep_puncs=True) - print("`" + e.phonemize("hello how are you today?") + "`") diff --git a/TTS/TTS/tts/utils/text/phonemizers/gruut_wrapper.py b/TTS/TTS/tts/utils/text/phonemizers/gruut_wrapper.py deleted file mode 100644 index f3e9c9abd4c41935ed07ec10ed883d75b42a6bc8..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/phonemizers/gruut_wrapper.py +++ /dev/null @@ -1,151 +0,0 @@ -import importlib -from typing import List - -import gruut -from gruut_ipa import IPA - -from TTS.tts.utils.text.phonemizers.base import BasePhonemizer -from TTS.tts.utils.text.punctuation import Punctuation - -# Table for str.translate to fix gruut/TTS phoneme mismatch -GRUUT_TRANS_TABLE = str.maketrans("g", "ɡ") - - -class Gruut(BasePhonemizer): - """Gruut wrapper for G2P - - Args: - language (str): - Valid language code for the used backend. - - punctuations (str): - Characters to be treated as punctuation. Defaults to `Punctuation.default_puncs()`. - - keep_puncs (bool): - If true, keep the punctuations after phonemization. Defaults to True. - - use_espeak_phonemes (bool): - If true, use espeak lexicons instead of default Gruut lexicons. Defaults to False. - - keep_stress (bool): - If true, keep the stress characters after phonemization. Defaults to False. - - Example: - - >>> from TTS.tts.utils.text.phonemizers.gruut_wrapper import Gruut - >>> phonemizer = Gruut('en-us') - >>> phonemizer.phonemize("Be a voice, not an! echo?", separator="|") - 'b|i| ə| v|ɔ|ɪ|s, n|ɑ|t| ə|n! ɛ|k|o|ʊ?' - """ - - def __init__( - self, - language: str, - punctuations=Punctuation.default_puncs(), - keep_puncs=True, - use_espeak_phonemes=False, - keep_stress=False, - ): - super().__init__(language, punctuations=punctuations, keep_puncs=keep_puncs) - self.use_espeak_phonemes = use_espeak_phonemes - self.keep_stress = keep_stress - - @staticmethod - def name(): - return "gruut" - - def phonemize_gruut(self, text: str, separator: str = "|", tie=False) -> str: # pylint: disable=unused-argument - """Convert input text to phonemes. - - Gruut phonemizes the given `str` by seperating each phoneme character with `separator`, even for characters - that constitude a single sound. - - It doesn't affect 🐸TTS since it individually converts each character to token IDs. - - Examples:: - "hello how are you today?" -> `h|ɛ|l|o|ʊ| h|a|ʊ| ɑ|ɹ| j|u| t|ə|d|e|ɪ` - - Args: - text (str): - Text to be converted to phonemes. - - tie (bool, optional) : When True use a '͡' character between - consecutive characters of a single phoneme. Else separate phoneme - with '_'. This option requires espeak>=1.49. Default to False. - """ - ph_list = [] - for sentence in gruut.sentences(text, lang=self.language, espeak=self.use_espeak_phonemes): - for word in sentence: - if word.is_break: - # Use actual character for break phoneme (e.g., comma) - if ph_list: - # Join with previous word - ph_list[-1].append(word.text) - else: - # First word is punctuation - ph_list.append([word.text]) - elif word.phonemes: - # Add phonemes for word - word_phonemes = [] - - for word_phoneme in word.phonemes: - if not self.keep_stress: - # Remove primary/secondary stress - word_phoneme = IPA.without_stress(word_phoneme) - - word_phoneme = word_phoneme.translate(GRUUT_TRANS_TABLE) - - if word_phoneme: - # Flatten phonemes - word_phonemes.extend(word_phoneme) - - if word_phonemes: - ph_list.append(word_phonemes) - - ph_words = [separator.join(word_phonemes) for word_phonemes in ph_list] - ph = f"{separator} ".join(ph_words) - return ph - - def _phonemize(self, text, separator): - return self.phonemize_gruut(text, separator, tie=False) - - def is_supported_language(self, language): - """Returns True if `language` is supported by the backend""" - return gruut.is_language_supported(language) - - @staticmethod - def supported_languages() -> List: - """Get a dictionary of supported languages. - - Returns: - List: List of language codes. - """ - return list(gruut.get_supported_languages()) - - def version(self): - """Get the version of the used backend. - - Returns: - str: Version of the used backend. - """ - return gruut.__version__ - - @classmethod - def is_available(cls): - """Return true if ESpeak is available else false""" - return importlib.util.find_spec("gruut") is not None - - -if __name__ == "__main__": - e = Gruut(language="en-us") - print(e.supported_languages()) - print(e.version()) - print(e.language) - print(e.name()) - print(e.is_available()) - - e = Gruut(language="en-us", keep_puncs=False) - print("`" + e.phonemize("hello how are you today?") + "`") - - e = Gruut(language="en-us", keep_puncs=True) - print("`" + e.phonemize("hello how, are you today?") + "`") diff --git a/TTS/TTS/tts/utils/text/phonemizers/ja_jp_phonemizer.py b/TTS/TTS/tts/utils/text/phonemizers/ja_jp_phonemizer.py deleted file mode 100644 index 878e5e52969f740ae74d875c91294666095e89ac..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/phonemizers/ja_jp_phonemizer.py +++ /dev/null @@ -1,72 +0,0 @@ -from typing import Dict - -from TTS.tts.utils.text.japanese.phonemizer import japanese_text_to_phonemes -from TTS.tts.utils.text.phonemizers.base import BasePhonemizer - -_DEF_JA_PUNCS = "、.,[]()?!〽~『』「」【】" - -_TRANS_TABLE = {"、": ","} - - -def trans(text): - for i, j in _TRANS_TABLE.items(): - text = text.replace(i, j) - return text - - -class JA_JP_Phonemizer(BasePhonemizer): - """🐸TTS Ja-Jp phonemizer using functions in `TTS.tts.utils.text.japanese.phonemizer` - - TODO: someone with JA knowledge should check this implementation - - Example: - - >>> from TTS.tts.utils.text.phonemizers import JA_JP_Phonemizer - >>> phonemizer = JA_JP_Phonemizer() - >>> phonemizer.phonemize("どちらに行きますか?", separator="|") - 'd|o|c|h|i|r|a|n|i|i|k|i|m|a|s|u|k|a|?' - - """ - - language = "ja-jp" - - def __init__(self, punctuations=_DEF_JA_PUNCS, keep_puncs=True, **kwargs): # pylint: disable=unused-argument - super().__init__(self.language, punctuations=punctuations, keep_puncs=keep_puncs) - - @staticmethod - def name(): - return "ja_jp_phonemizer" - - def _phonemize(self, text: str, separator: str = "|") -> str: - ph = japanese_text_to_phonemes(text) - if separator is not None or separator != "": - return separator.join(ph) - return ph - - def phonemize(self, text: str, separator="|", language=None) -> str: - """Custom phonemize for JP_JA - - Skip pre-post processing steps used by the other phonemizers. - """ - return self._phonemize(text, separator) - - @staticmethod - def supported_languages() -> Dict: - return {"ja-jp": "Japanese (Japan)"} - - def version(self) -> str: - return "0.0.1" - - def is_available(self) -> bool: - return True - - -# if __name__ == "__main__": -# text = "これは、電話をかけるための私の日本語の例のテキストです。" -# e = JA_JP_Phonemizer() -# print(e.supported_languages()) -# print(e.version()) -# print(e.language) -# print(e.name()) -# print(e.is_available()) -# print("`" + e.phonemize(text) + "`") diff --git a/TTS/TTS/tts/utils/text/phonemizers/ko_kr_phonemizer.py b/TTS/TTS/tts/utils/text/phonemizers/ko_kr_phonemizer.py deleted file mode 100644 index 84f24c75ca9eca094e3bc2bf36fc93b56812b59f..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/phonemizers/ko_kr_phonemizer.py +++ /dev/null @@ -1,65 +0,0 @@ -from typing import Dict - -from TTS.tts.utils.text.korean.phonemizer import korean_text_to_phonemes -from TTS.tts.utils.text.phonemizers.base import BasePhonemizer - -_DEF_KO_PUNCS = "、.,[]()?!〽~『』「」【】" - - -class KO_KR_Phonemizer(BasePhonemizer): - """🐸TTS ko_kr_phonemizer using functions in `TTS.tts.utils.text.korean.phonemizer` - - TODO: Add Korean to character (ᄀᄁᄂᄃᄄᄅᄆᄇᄈᄉᄊᄋᄌᄍᄎᄏᄐᄑ하ᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵᆨᆩᆪᆫᆬᆭᆮᆯᆰᆱᆲᆳᆴᆵᆶᆷᆸᆹᆺᆻᆼᆽᆾᆿᇀᇁᇂ) - - Example: - - >>> from TTS.tts.utils.text.phonemizers import KO_KR_Phonemizer - >>> phonemizer = KO_KR_Phonemizer() - >>> phonemizer.phonemize("이 문장은 음성합성 테스트를 위한 문장입니다.", separator="|") - 'ᄋ|ᅵ| |ᄆ|ᅮ|ᆫ|ᄌ|ᅡ|ᆼ|ᄋ|ᅳ| |ᄂ|ᅳ|ᆷ|ᄉ|ᅥ|ᆼ|ᄒ|ᅡ|ᆸ|ᄊ|ᅥ|ᆼ| |ᄐ|ᅦ|ᄉ|ᅳ|ᄐ|ᅳ|ᄅ|ᅳ| |ᄅ|ᅱ|ᄒ|ᅡ|ᆫ| |ᄆ|ᅮ|ᆫ|ᄌ|ᅡ|ᆼ|ᄋ|ᅵ|ᆷ|ᄂ|ᅵ|ᄃ|ᅡ|.' - - >>> from TTS.tts.utils.text.phonemizers import KO_KR_Phonemizer - >>> phonemizer = KO_KR_Phonemizer() - >>> phonemizer.phonemize("이 문장은 음성합성 테스트를 위한 문장입니다.", separator="|", character='english') - 'I| |M|u|n|J|a|n|g|E|u| |N|e|u|m|S|e|o|n|g|H|a|b|S|s|e|o|n|g| |T|e|S|e|u|T|e|u|L|e|u| |L|w|i|H|a|n| |M|u|n|J|a|n|g|I|m|N|i|D|a|.' - - """ - - language = "ko-kr" - - def __init__(self, punctuations=_DEF_KO_PUNCS, keep_puncs=True, **kwargs): # pylint: disable=unused-argument - super().__init__(self.language, punctuations=punctuations, keep_puncs=keep_puncs) - - @staticmethod - def name(): - return "ko_kr_phonemizer" - - def _phonemize(self, text: str, separator: str = "", character: str = "hangeul") -> str: - ph = korean_text_to_phonemes(text, character=character) - if separator is not None or separator != "": - return separator.join(ph) - return ph - - def phonemize(self, text: str, separator: str = "", character: str = "hangeul", language=None) -> str: - return self._phonemize(text, separator, character) - - @staticmethod - def supported_languages() -> Dict: - return {"ko-kr": "hangeul(korean)"} - - def version(self) -> str: - return "0.0.2" - - def is_available(self) -> bool: - return True - - -if __name__ == "__main__": - texts = "이 문장은 음성합성 테스트를 위한 문장입니다." - e = KO_KR_Phonemizer() - print(e.supported_languages()) - print(e.version()) - print(e.language) - print(e.name()) - print(e.is_available()) - print(e.phonemize(texts)) diff --git a/TTS/TTS/tts/utils/text/phonemizers/multi_phonemizer.py b/TTS/TTS/tts/utils/text/phonemizers/multi_phonemizer.py deleted file mode 100644 index 62a9c39322e051124d8c2d816cbc7d479df69dfe..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/phonemizers/multi_phonemizer.py +++ /dev/null @@ -1,65 +0,0 @@ -from typing import Dict, List - -from TTS.tts.utils.text.phonemizers import DEF_LANG_TO_PHONEMIZER, get_phonemizer_by_name - - -class MultiPhonemizer: - """🐸TTS multi-phonemizer that operates phonemizers for multiple langugages - - Args: - custom_lang_to_phonemizer (Dict): - Custom phonemizer mapping if you want to change the defaults. In the format of - `{"lang_code", "phonemizer_name"}`. When it is None, `DEF_LANG_TO_PHONEMIZER` is used. Defaults to `{}`. - - TODO: find a way to pass custom kwargs to the phonemizers - """ - - lang_to_phonemizer = {} - - def __init__(self, lang_to_phonemizer_name: Dict = {}) -> None: # pylint: disable=dangerous-default-value - for k, v in lang_to_phonemizer_name.items(): - if v == "" and k in DEF_LANG_TO_PHONEMIZER.keys(): - lang_to_phonemizer_name[k] = DEF_LANG_TO_PHONEMIZER[k] - elif v == "": - raise ValueError(f"Phonemizer wasn't set for language {k} and doesn't have a default.") - self.lang_to_phonemizer_name = lang_to_phonemizer_name - self.lang_to_phonemizer = self.init_phonemizers(self.lang_to_phonemizer_name) - - @staticmethod - def init_phonemizers(lang_to_phonemizer_name: Dict) -> Dict: - lang_to_phonemizer = {} - for k, v in lang_to_phonemizer_name.items(): - lang_to_phonemizer[k] = get_phonemizer_by_name(v, language=k) - return lang_to_phonemizer - - @staticmethod - def name(): - return "multi-phonemizer" - - def phonemize(self, text, separator="|", language=""): - if language == "": - raise ValueError("Language must be set for multi-phonemizer to phonemize.") - return self.lang_to_phonemizer[language].phonemize(text, separator) - - def supported_languages(self) -> List: - return list(self.lang_to_phonemizer.keys()) - - def print_logs(self, level: int = 0): - indent = "\t" * level - print(f"{indent}| > phoneme language: {self.supported_languages()}") - print(f"{indent}| > phoneme backend: {self.name()}") - - -# if __name__ == "__main__": -# texts = { -# "tr": "Merhaba, bu Türkçe bit örnek!", -# "en-us": "Hello, this is English example!", -# "de": "Hallo, das ist ein Deutches Beipiel!", -# "zh-cn": "这是中国的例子", -# } -# phonemes = {} -# ph = MultiPhonemizer({"tr": "espeak", "en-us": "", "de": "gruut", "zh-cn": ""}) -# for lang, text in texts.items(): -# phoneme = ph.phonemize(text, lang) -# phonemes[lang] = phoneme -# print(phonemes) diff --git a/TTS/TTS/tts/utils/text/phonemizers/zh_cn_phonemizer.py b/TTS/TTS/tts/utils/text/phonemizers/zh_cn_phonemizer.py deleted file mode 100644 index 41480c417356fd941e71e3eff0099eb38ac7296a..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/phonemizers/zh_cn_phonemizer.py +++ /dev/null @@ -1,62 +0,0 @@ -from typing import Dict - -from TTS.tts.utils.text.chinese_mandarin.phonemizer import chinese_text_to_phonemes -from TTS.tts.utils.text.phonemizers.base import BasePhonemizer - -_DEF_ZH_PUNCS = "、.,[]()?!〽~『』「」【】" - - -class ZH_CN_Phonemizer(BasePhonemizer): - """🐸TTS Zh-Cn phonemizer using functions in `TTS.tts.utils.text.chinese_mandarin.phonemizer` - - Args: - punctuations (str): - Set of characters to be treated as punctuation. Defaults to `_DEF_ZH_PUNCS`. - - keep_puncs (bool): - If True, keep the punctuations after phonemization. Defaults to False. - - Example :: - - "这是,样本中文。" -> `d|ʒ|ø|4| |ʂ|ʏ|4| |,| |i|ɑ|ŋ|4|b|œ|n|3| |d|ʒ|o|ŋ|1|w|œ|n|2| |。` - - TODO: someone with Mandarin knowledge should check this implementation - """ - - language = "zh-cn" - - def __init__(self, punctuations=_DEF_ZH_PUNCS, keep_puncs=False, **kwargs): # pylint: disable=unused-argument - super().__init__(self.language, punctuations=punctuations, keep_puncs=keep_puncs) - - @staticmethod - def name(): - return "zh_cn_phonemizer" - - @staticmethod - def phonemize_zh_cn(text: str, separator: str = "|") -> str: - ph = chinese_text_to_phonemes(text, separator) - return ph - - def _phonemize(self, text, separator): - return self.phonemize_zh_cn(text, separator) - - @staticmethod - def supported_languages() -> Dict: - return {"zh-cn": "Chinese (China)"} - - def version(self) -> str: - return "0.0.1" - - def is_available(self) -> bool: - return True - - -# if __name__ == "__main__": -# text = "这是,样本中文。" -# e = ZH_CN_Phonemizer() -# print(e.supported_languages()) -# print(e.version()) -# print(e.language) -# print(e.name()) -# print(e.is_available()) -# print("`" + e.phonemize(text) + "`") diff --git a/TTS/TTS/tts/utils/text/punctuation.py b/TTS/TTS/tts/utils/text/punctuation.py deleted file mode 100644 index 8d199cc545b36f6089056d904fd0a03670012c4d..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/punctuation.py +++ /dev/null @@ -1,172 +0,0 @@ -import collections -import re -from enum import Enum - -import six - -_DEF_PUNCS = ';:,.!?¡¿—…"«»“”' - -_PUNC_IDX = collections.namedtuple("_punc_index", ["punc", "position"]) - - -class PuncPosition(Enum): - """Enum for the punctuations positions""" - - BEGIN = 0 - END = 1 - MIDDLE = 2 - ALONE = 3 - - -class Punctuation: - """Handle punctuations in text. - - Just strip punctuations from text or strip and restore them later. - - Args: - puncs (str): The punctuations to be processed. Defaults to `_DEF_PUNCS`. - - Example: - >>> punc = Punctuation() - >>> punc.strip("This is. example !") - 'This is example' - - >>> text_striped, punc_map = punc.strip_to_restore("This is. example !") - >>> ' '.join(text_striped) - 'This is example' - - >>> text_restored = punc.restore(text_striped, punc_map) - >>> text_restored[0] - 'This is. example !' - """ - - def __init__(self, puncs: str = _DEF_PUNCS): - self.puncs = puncs - - @staticmethod - def default_puncs(): - """Return default set of punctuations.""" - return _DEF_PUNCS - - @property - def puncs(self): - return self._puncs - - @puncs.setter - def puncs(self, value): - if not isinstance(value, six.string_types): - raise ValueError("[!] Punctuations must be of type str.") - self._puncs = "".join(list(dict.fromkeys(list(value)))) # remove duplicates without changing the oreder - self.puncs_regular_exp = re.compile(rf"(\s*[{re.escape(self._puncs)}]+\s*)+") - - def strip(self, text): - """Remove all the punctuations by replacing with `space`. - - Args: - text (str): The text to be processed. - - Example:: - - "This is. example !" -> "This is example " - """ - return re.sub(self.puncs_regular_exp, " ", text).rstrip().lstrip() - - def strip_to_restore(self, text): - """Remove punctuations from text to restore them later. - - Args: - text (str): The text to be processed. - - Examples :: - - "This is. example !" -> [["This is", "example"], [".", "!"]] - - """ - text, puncs = self._strip_to_restore(text) - return text, puncs - - def _strip_to_restore(self, text): - """Auxiliary method for Punctuation.preserve()""" - matches = list(re.finditer(self.puncs_regular_exp, text)) - if not matches: - return [text], [] - # the text is only punctuations - if len(matches) == 1 and matches[0].group() == text: - return [], [_PUNC_IDX(text, PuncPosition.ALONE)] - # build a punctuation map to be used later to restore punctuations - puncs = [] - for match in matches: - position = PuncPosition.MIDDLE - if match == matches[0] and text.startswith(match.group()): - position = PuncPosition.BEGIN - elif match == matches[-1] and text.endswith(match.group()): - position = PuncPosition.END - puncs.append(_PUNC_IDX(match.group(), position)) - # convert str text to a List[str], each item is separated by a punctuation - splitted_text = [] - for idx, punc in enumerate(puncs): - split = text.split(punc.punc) - prefix, suffix = split[0], punc.punc.join(split[1:]) - splitted_text.append(prefix) - # if the text does not end with a punctuation, add it to the last item - if idx == len(puncs) - 1 and len(suffix) > 0: - splitted_text.append(suffix) - text = suffix - return splitted_text, puncs - - @classmethod - def restore(cls, text, puncs): - """Restore punctuation in a text. - - Args: - text (str): The text to be processed. - puncs (List[str]): The list of punctuations map to be used for restoring. - - Examples :: - - ['This is', 'example'], ['.', '!'] -> "This is. example!" - - """ - return cls._restore(text, puncs, 0) - - @classmethod - def _restore(cls, text, puncs, num): # pylint: disable=too-many-return-statements - """Auxiliary method for Punctuation.restore()""" - if not puncs: - return text - - # nothing have been phonemized, returns the puncs alone - if not text: - return ["".join(m.punc for m in puncs)] - - current = puncs[0] - - if current.position == PuncPosition.BEGIN: - return cls._restore([current.punc + text[0]] + text[1:], puncs[1:], num) - - if current.position == PuncPosition.END: - return [text[0] + current.punc] + cls._restore(text[1:], puncs[1:], num + 1) - - if current.position == PuncPosition.ALONE: - return [current.mark] + cls._restore(text, puncs[1:], num + 1) - - # POSITION == MIDDLE - if len(text) == 1: # pragma: nocover - # a corner case where the final part of an intermediate - # mark (I) has not been phonemized - return cls._restore([text[0] + current.punc], puncs[1:], num) - - return cls._restore([text[0] + current.punc + text[1]] + text[2:], puncs[1:], num) - - -# if __name__ == "__main__": -# punc = Punctuation() -# text = "This is. This is, example!" - -# print(punc.strip(text)) - -# split_text, puncs = punc.strip_to_restore(text) -# print(split_text, " ---- ", puncs) - -# restored_text = punc.restore(split_text, puncs) -# print(restored_text) diff --git a/TTS/TTS/tts/utils/text/tokenizer.py b/TTS/TTS/tts/utils/text/tokenizer.py deleted file mode 100644 index b7faf86e8a3120ee39171de0caa40bbc85614ddb..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/text/tokenizer.py +++ /dev/null @@ -1,216 +0,0 @@ -from typing import Callable, Dict, List, Union - -from TTS.tts.utils.text import cleaners -from TTS.tts.utils.text.characters import Graphemes, IPAPhonemes -from TTS.tts.utils.text.phonemizers import DEF_LANG_TO_PHONEMIZER, get_phonemizer_by_name -from TTS.tts.utils.text.phonemizers.multi_phonemizer import MultiPhonemizer -from TTS.utils.generic_utils import get_import_path, import_class - - -class TTSTokenizer: - """🐸TTS tokenizer to convert input characters to token IDs and back. - - Token IDs for OOV chars are discarded but those are stored in `self.not_found_characters` for later. - - Args: - use_phonemes (bool): - Whether to use phonemes instead of characters. Defaults to False. - - characters (Characters): - A Characters object to use for character-to-ID and ID-to-character mappings. - - text_cleaner (callable): - A function to pre-process the text before tokenization and phonemization. Defaults to None. - - phonemizer (Phonemizer): - A phonemizer object or a dict that maps language codes to phonemizer objects. Defaults to None. - - Example: - - >>> from TTS.tts.utils.text.tokenizer import TTSTokenizer - >>> tokenizer = TTSTokenizer(use_phonemes=False, characters=Graphemes()) - >>> text = "Hello world!" - >>> ids = tokenizer.text_to_ids(text) - >>> text_hat = tokenizer.ids_to_text(ids) - >>> assert text == text_hat - """ - - def __init__( - self, - use_phonemes=False, - text_cleaner: Callable = None, - characters: "BaseCharacters" = None, - phonemizer: Union["Phonemizer", Dict] = None, - add_blank: bool = False, - use_eos_bos=False, - ): - self.text_cleaner = text_cleaner - self.use_phonemes = use_phonemes - self.add_blank = add_blank - self.use_eos_bos = use_eos_bos - self.characters = characters - self.not_found_characters = [] - self.phonemizer = phonemizer - - @property - def characters(self): - return self._characters - - @characters.setter - def characters(self, new_characters): - self._characters = new_characters - self.pad_id = self.characters.char_to_id(self.characters.pad) if self.characters.pad else None - self.blank_id = self.characters.char_to_id(self.characters.blank) if self.characters.blank else None - - def encode(self, text: str) -> List[int]: - """Encodes a string of text as a sequence of IDs.""" - token_ids = [] - for char in text: - try: - idx = self.characters.char_to_id(char) - token_ids.append(idx) - except KeyError: - # discard but store not found characters - if char not in self.not_found_characters: - self.not_found_characters.append(char) - print(text) - print(f" [!] Character {repr(char)} not found in the vocabulary. Discarding it.") - return token_ids - - def decode(self, token_ids: List[int]) -> str: - """Decodes a sequence of IDs to a string of text.""" - text = "" - for token_id in token_ids: - text += self.characters.id_to_char(token_id) - return text - - def text_to_ids(self, text: str, language: str = None) -> List[int]: # pylint: disable=unused-argument - """Converts a string of text to a sequence of token IDs. - - Args: - text(str): - The text to convert to token IDs. - - language(str): - The language code of the text. Defaults to None. - - TODO: - - Add support for language-specific processing. - - 1. Text normalizatin - 2. Phonemization (if use_phonemes is True) - 3. Add blank char between characters - 4. Add BOS and EOS characters - 5. Text to token IDs - """ - # TODO: text cleaner should pick the right routine based on the language - if self.text_cleaner is not None: - text = self.text_cleaner(text) - if self.use_phonemes: - text = self.phonemizer.phonemize(text, separator="", language=language) - text = self.encode(text) - if self.add_blank: - text = self.intersperse_blank_char(text, True) - if self.use_eos_bos: - text = self.pad_with_bos_eos(text) - return text - - def ids_to_text(self, id_sequence: List[int]) -> str: - """Converts a sequence of token IDs to a string of text.""" - return self.decode(id_sequence) - - def pad_with_bos_eos(self, char_sequence: List[str]): - """Pads a sequence with the special BOS and EOS characters.""" - return [self.characters.bos_id] + list(char_sequence) + [self.characters.eos_id] - - def intersperse_blank_char(self, char_sequence: List[str], use_blank_char: bool = False): - """Intersperses the blank character between characters in a sequence. - - Use the ```blank``` character if defined else use the ```pad``` character. - """ - char_to_use = self.characters.blank_id if use_blank_char else self.characters.pad - result = [char_to_use] * (len(char_sequence) * 2 + 1) - result[1::2] = char_sequence - return result - - def print_logs(self, level: int = 0): - indent = "\t" * level - print(f"{indent}| > add_blank: {self.add_blank}") - print(f"{indent}| > use_eos_bos: {self.use_eos_bos}") - print(f"{indent}| > use_phonemes: {self.use_phonemes}") - if self.use_phonemes: - print(f"{indent}| > phonemizer:") - self.phonemizer.print_logs(level + 1) - if len(self.not_found_characters) > 0: - print(f"{indent}| > {len(self.not_found_characters)} not found characters:") - for char in self.not_found_characters: - print(f"{indent}| > {char}") - - @staticmethod - def init_from_config(config: "Coqpit", characters: "BaseCharacters" = None): - """Init Tokenizer object from config - - Args: - config (Coqpit): Coqpit model config. - characters (BaseCharacters): Defines the model character set. If not set, use the default options based on - the config values. Defaults to None. - """ - # init cleaners - text_cleaner = None - if isinstance(config.text_cleaner, (str, list)): - text_cleaner = getattr(cleaners, config.text_cleaner) - - # init characters - if characters is None: - # set characters based on defined characters class - if config.characters and config.characters.characters_class: - CharactersClass = import_class(config.characters.characters_class) - characters, new_config = CharactersClass.init_from_config(config) - # set characters based on config - else: - if config.use_phonemes: - # init phoneme set - characters, new_config = IPAPhonemes().init_from_config(config) - else: - # init character set - characters, new_config = Graphemes().init_from_config(config) - - else: - characters, new_config = characters.init_from_config(config) - - # set characters class - new_config.characters.characters_class = get_import_path(characters) - - # init phonemizer - phonemizer = None - if config.use_phonemes: - if "phonemizer" in config and config.phonemizer == "multi_phonemizer": - lang_to_phonemizer_name = {} - for dataset in config.datasets: - if dataset.language != "": - lang_to_phonemizer_name[dataset.language] = dataset.phonemizer - else: - raise ValueError("Multi phonemizer requires language to be set for each dataset.") - phonemizer = MultiPhonemizer(lang_to_phonemizer_name) - else: - phonemizer_kwargs = {"language": config.phoneme_language} - if "phonemizer" in config and config.phonemizer: - phonemizer = get_phonemizer_by_name(config.phonemizer, **phonemizer_kwargs) - else: - try: - phonemizer = get_phonemizer_by_name( - DEF_LANG_TO_PHONEMIZER[config.phoneme_language], **phonemizer_kwargs - ) - new_config.phonemizer = phonemizer.name() - except KeyError as e: - raise ValueError( - f"""No phonemizer found for language {config.phoneme_language}. - You may need to install a third party library for this language.""" - ) from e - - return ( - TTSTokenizer( - config.use_phonemes, text_cleaner, characters, phonemizer, config.add_blank, config.enable_eos_bos_chars - ), - new_config, - ) diff --git a/TTS/TTS/tts/utils/visual.py b/TTS/TTS/tts/utils/visual.py deleted file mode 100644 index fba7bc508ef962d5a93c794ca868acd46d07ec16..0000000000000000000000000000000000000000 --- a/TTS/TTS/tts/utils/visual.py +++ /dev/null @@ -1,238 +0,0 @@ -import librosa -import matplotlib -import matplotlib.pyplot as plt -import numpy as np -import torch -from matplotlib.colors import LogNorm - -matplotlib.use("Agg") - - -def plot_alignment(alignment, info=None, fig_size=(16, 10), title=None, output_fig=False, plot_log=False): - if isinstance(alignment, torch.Tensor): - alignment_ = alignment.detach().cpu().numpy().squeeze() - else: - alignment_ = alignment - alignment_ = alignment_.astype(np.float32) if alignment_.dtype == np.float16 else alignment_ - fig, ax = plt.subplots(figsize=fig_size) - im = ax.imshow( - alignment_.T, aspect="auto", origin="lower", interpolation="none", norm=LogNorm() if plot_log else None - ) - fig.colorbar(im, ax=ax) - xlabel = "Decoder timestep" - if info is not None: - xlabel += "\n\n" + info - plt.xlabel(xlabel) - plt.ylabel("Encoder timestep") - # plt.yticks(range(len(text)), list(text)) - plt.tight_layout() - if title is not None: - plt.title(title) - if not output_fig: - plt.close() - return fig - - -def plot_spectrogram(spectrogram, ap=None, fig_size=(16, 10), output_fig=False): - if isinstance(spectrogram, torch.Tensor): - spectrogram_ = spectrogram.detach().cpu().numpy().squeeze().T - else: - spectrogram_ = spectrogram.T - spectrogram_ = spectrogram_.astype(np.float32) if spectrogram_.dtype == np.float16 else spectrogram_ - if ap is not None: - spectrogram_ = ap.denormalize(spectrogram_) # pylint: disable=protected-access - fig = plt.figure(figsize=fig_size) - plt.imshow(spectrogram_, aspect="auto", origin="lower") - plt.colorbar() - plt.tight_layout() - if not output_fig: - plt.close() - return fig - - -def plot_pitch(pitch, spectrogram, ap=None, fig_size=(30, 10), output_fig=False): - """Plot pitch curves on top of the spectrogram. - - Args: - pitch (np.array): Pitch values. - spectrogram (np.array): Spectrogram values. - - Shapes: - pitch: :math:`(T,)` - spec: :math:`(C, T)` - """ - - if isinstance(spectrogram, torch.Tensor): - spectrogram_ = spectrogram.detach().cpu().numpy().squeeze().T - else: - spectrogram_ = spectrogram.T - spectrogram_ = spectrogram_.astype(np.float32) if spectrogram_.dtype == np.float16 else spectrogram_ - if ap is not None: - spectrogram_ = ap.denormalize(spectrogram_) # pylint: disable=protected-access - - old_fig_size = plt.rcParams["figure.figsize"] - if fig_size is not None: - plt.rcParams["figure.figsize"] = fig_size - - fig, ax = plt.subplots() - - ax.imshow(spectrogram_, aspect="auto", origin="lower") - ax.set_xlabel("time") - ax.set_ylabel("spec_freq") - - ax2 = ax.twinx() - ax2.plot(pitch, linewidth=5.0, color="red") - ax2.set_ylabel("F0") - - plt.rcParams["figure.figsize"] = old_fig_size - if not output_fig: - plt.close() - return fig - - -def plot_avg_pitch(pitch, chars, fig_size=(30, 10), output_fig=False): - """Plot pitch curves on top of the input characters. - - Args: - pitch (np.array): Pitch values. - chars (str): Characters to place to the x-axis. - - Shapes: - pitch: :math:`(T,)` - """ - old_fig_size = plt.rcParams["figure.figsize"] - if fig_size is not None: - plt.rcParams["figure.figsize"] = fig_size - - fig, ax = plt.subplots() - - x = np.array(range(len(chars))) - my_xticks = chars - plt.xticks(x, my_xticks) - - ax.set_xlabel("characters") - ax.set_ylabel("freq") - - ax2 = ax.twinx() - ax2.plot(pitch, linewidth=5.0, color="red") - ax2.set_ylabel("F0") - - plt.rcParams["figure.figsize"] = old_fig_size - if not output_fig: - plt.close() - return fig - - -def plot_avg_energy(energy, chars, fig_size=(30, 10), output_fig=False): - """Plot energy curves on top of the input characters. - - Args: - energy (np.array): energy values. - chars (str): Characters to place to the x-axis. - - Shapes: - energy: :math:`(T,)` - """ - old_fig_size = plt.rcParams["figure.figsize"] - if fig_size is not None: - plt.rcParams["figure.figsize"] = fig_size - - fig, ax = plt.subplots() - - x = np.array(range(len(chars))) - my_xticks = chars - plt.xticks(x, my_xticks) - - ax.set_xlabel("characters") - ax.set_ylabel("freq") - - ax2 = ax.twinx() - ax2.plot(energy, linewidth=5.0, color="red") - ax2.set_ylabel("energy") - - plt.rcParams["figure.figsize"] = old_fig_size - if not output_fig: - plt.close() - return fig - - -def visualize( - alignment, - postnet_output, - text, - hop_length, - CONFIG, - tokenizer, - stop_tokens=None, - decoder_output=None, - output_path=None, - figsize=(8, 24), - output_fig=False, -): - """Intended to be used in Notebooks.""" - - if decoder_output is not None: - num_plot = 4 - else: - num_plot = 3 - - label_fontsize = 16 - fig = plt.figure(figsize=figsize) - - plt.subplot(num_plot, 1, 1) - plt.imshow(alignment.T, aspect="auto", origin="lower", interpolation=None) - plt.xlabel("Decoder timestamp", fontsize=label_fontsize) - plt.ylabel("Encoder timestamp", fontsize=label_fontsize) - # compute phoneme representation and back - if CONFIG.use_phonemes: - seq = tokenizer.text_to_ids(text) - text = tokenizer.ids_to_text(seq) - print(text) - plt.yticks(range(len(text)), list(text)) - plt.colorbar() - - if stop_tokens is not None: - # plot stopnet predictions - plt.subplot(num_plot, 1, 2) - plt.plot(range(len(stop_tokens)), list(stop_tokens)) - - # plot postnet spectrogram - plt.subplot(num_plot, 1, 3) - librosa.display.specshow( - postnet_output.T, - sr=CONFIG.audio["sample_rate"], - hop_length=hop_length, - x_axis="time", - y_axis="linear", - fmin=CONFIG.audio["mel_fmin"], - fmax=CONFIG.audio["mel_fmax"], - ) - - plt.xlabel("Time", fontsize=label_fontsize) - plt.ylabel("Hz", fontsize=label_fontsize) - plt.tight_layout() - plt.colorbar() - - if decoder_output is not None: - plt.subplot(num_plot, 1, 4) - librosa.display.specshow( - decoder_output.T, - sr=CONFIG.audio["sample_rate"], - hop_length=hop_length, - x_axis="time", - y_axis="linear", - fmin=CONFIG.audio["mel_fmin"], - fmax=CONFIG.audio["mel_fmax"], - ) - plt.xlabel("Time", fontsize=label_fontsize) - plt.ylabel("Hz", fontsize=label_fontsize) - plt.tight_layout() - plt.colorbar() - - if output_path: - print(output_path) - fig.savefig(output_path) - plt.close() - - if not output_fig: - plt.close() diff --git a/TTS/TTS/utils/__init__.py b/TTS/TTS/utils/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/utils/audio/__init__.py b/TTS/TTS/utils/audio/__init__.py deleted file mode 100644 index f18f22199908ee0dd5445e34527f5fddb65cfed8..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/audio/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from TTS.utils.audio.processor import AudioProcessor diff --git a/TTS/TTS/utils/audio/numpy_transforms.py b/TTS/TTS/utils/audio/numpy_transforms.py deleted file mode 100644 index ae44472f05384bae383fe2d64ab2a32983c5c4e7..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/audio/numpy_transforms.py +++ /dev/null @@ -1,477 +0,0 @@ -from typing import Tuple - -import librosa -import numpy as np -import scipy -import soundfile as sf -from librosa import magphase, pyin - -# For using kwargs -# pylint: disable=unused-argument - - -def build_mel_basis( - *, - sample_rate: int = None, - fft_size: int = None, - num_mels: int = None, - mel_fmax: int = None, - mel_fmin: int = None, - **kwargs, -) -> np.ndarray: - """Build melspectrogram basis. - - Returns: - np.ndarray: melspectrogram basis. - """ - if mel_fmax is not None: - assert mel_fmax <= sample_rate // 2 - assert mel_fmax - mel_fmin > 0 - return librosa.filters.mel(sr=sample_rate, n_fft=fft_size, n_mels=num_mels, fmin=mel_fmin, fmax=mel_fmax) - - -def millisec_to_length( - *, frame_length_ms: int = None, frame_shift_ms: int = None, sample_rate: int = None, **kwargs -) -> Tuple[int, int]: - """Compute hop and window length from milliseconds. - - Returns: - Tuple[int, int]: hop length and window length for STFT. - """ - factor = frame_length_ms / frame_shift_ms - assert (factor).is_integer(), " [!] frame_shift_ms should divide frame_length_ms" - win_length = int(frame_length_ms / 1000.0 * sample_rate) - hop_length = int(win_length / float(factor)) - return win_length, hop_length - - -def _log(x, base): - if base == 10: - return np.log10(x) - return np.log(x) - - -def _exp(x, base): - if base == 10: - return np.power(10, x) - return np.exp(x) - - -def amp_to_db(*, x: np.ndarray = None, gain: float = 1, base: int = 10, **kwargs) -> np.ndarray: - """Convert amplitude values to decibels. - - Args: - x (np.ndarray): Amplitude spectrogram. - gain (float): Gain factor. Defaults to 1. - base (int): Logarithm base. Defaults to 10. - - Returns: - np.ndarray: Decibels spectrogram. - """ - assert (x < 0).sum() == 0, " [!] Input values must be non-negative." - return gain * _log(np.maximum(1e-8, x), base) - - -# pylint: disable=no-self-use -def db_to_amp(*, x: np.ndarray = None, gain: float = 1, base: int = 10, **kwargs) -> np.ndarray: - """Convert decibels spectrogram to amplitude spectrogram. - - Args: - x (np.ndarray): Decibels spectrogram. - gain (float): Gain factor. Defaults to 1. - base (int): Logarithm base. Defaults to 10. - - Returns: - np.ndarray: Amplitude spectrogram. - """ - return _exp(x / gain, base) - - -def preemphasis(*, x: np.ndarray, coef: float = 0.97, **kwargs) -> np.ndarray: - """Apply pre-emphasis to the audio signal. Useful to reduce the correlation between neighbouring signal values. - - Args: - x (np.ndarray): Audio signal. - - Raises: - RuntimeError: Preemphasis coeff is set to 0. - - Returns: - np.ndarray: Decorrelated audio signal. - """ - if coef == 0: - raise RuntimeError(" [!] Preemphasis is set 0.0.") - return scipy.signal.lfilter([1, -coef], [1], x) - - -def deemphasis(*, x: np.ndarray = None, coef: float = 0.97, **kwargs) -> np.ndarray: - """Reverse pre-emphasis.""" - if coef == 0: - raise RuntimeError(" [!] Preemphasis is set 0.0.") - return scipy.signal.lfilter([1], [1, -coef], x) - - -def spec_to_mel(*, spec: np.ndarray, mel_basis: np.ndarray = None, **kwargs) -> np.ndarray: - """Convert a full scale linear spectrogram output of a network to a melspectrogram. - - Args: - spec (np.ndarray): Normalized full scale linear spectrogram. - - Shapes: - - spec: :math:`[C, T]` - - Returns: - np.ndarray: Normalized melspectrogram. - """ - return np.dot(mel_basis, spec) - - -def mel_to_spec(*, mel: np.ndarray = None, mel_basis: np.ndarray = None, **kwargs) -> np.ndarray: - """Convert a melspectrogram to full scale spectrogram.""" - assert (mel < 0).sum() == 0, " [!] Input values must be non-negative." - inv_mel_basis = np.linalg.pinv(mel_basis) - return np.maximum(1e-10, np.dot(inv_mel_basis, mel)) - - -def wav_to_spec(*, wav: np.ndarray = None, **kwargs) -> np.ndarray: - """Compute a spectrogram from a waveform. - - Args: - wav (np.ndarray): Waveform. Shape :math:`[T_wav,]` - - Returns: - np.ndarray: Spectrogram. Shape :math:`[C, T_spec]`. :math:`T_spec == T_wav / hop_length` - """ - D = stft(y=wav, **kwargs) - S = np.abs(D) - return S.astype(np.float32) - - -def wav_to_mel(*, wav: np.ndarray = None, mel_basis=None, **kwargs) -> np.ndarray: - """Compute a melspectrogram from a waveform.""" - D = stft(y=wav, **kwargs) - S = spec_to_mel(spec=np.abs(D), mel_basis=mel_basis, **kwargs) - return S.astype(np.float32) - - -def spec_to_wav(*, spec: np.ndarray, power: float = 1.5, **kwargs) -> np.ndarray: - """Convert a spectrogram to a waveform using Griffi-Lim vocoder.""" - S = spec.copy() - return griffin_lim(spec=S**power, **kwargs) - - -def mel_to_wav(*, mel: np.ndarray = None, power: float = 1.5, **kwargs) -> np.ndarray: - """Convert a melspectrogram to a waveform using Griffi-Lim vocoder.""" - S = mel.copy() - S = mel_to_spec(mel=S, mel_basis=kwargs["mel_basis"]) # Convert back to linear - return griffin_lim(spec=S**power, **kwargs) - - -### STFT and ISTFT ### -def stft( - *, - y: np.ndarray = None, - fft_size: int = None, - hop_length: int = None, - win_length: int = None, - pad_mode: str = "reflect", - window: str = "hann", - center: bool = True, - **kwargs, -) -> np.ndarray: - """Librosa STFT wrapper. - - Check http://librosa.org/doc/main/generated/librosa.stft.html argument details. - - Returns: - np.ndarray: Complex number array. - """ - return librosa.stft( - y=y, - n_fft=fft_size, - hop_length=hop_length, - win_length=win_length, - pad_mode=pad_mode, - window=window, - center=center, - ) - - -def istft( - *, - y: np.ndarray = None, - fft_size: int = None, - hop_length: int = None, - win_length: int = None, - window: str = "hann", - center: bool = True, - **kwargs, -) -> np.ndarray: - """Librosa iSTFT wrapper. - - Check http://librosa.org/doc/main/generated/librosa.istft.html argument details. - - Returns: - np.ndarray: Complex number array. - """ - return librosa.istft(y, hop_length=hop_length, win_length=win_length, center=center, window=window) - - -def griffin_lim(*, spec: np.ndarray = None, num_iter=60, **kwargs) -> np.ndarray: - angles = np.exp(2j * np.pi * np.random.rand(*spec.shape)) - S_complex = np.abs(spec).astype(complex) - y = istft(y=S_complex * angles, **kwargs) - if not np.isfinite(y).all(): - print(" [!] Waveform is not finite everywhere. Skipping the GL.") - return np.array([0.0]) - for _ in range(num_iter): - angles = np.exp(1j * np.angle(stft(y=y, **kwargs))) - y = istft(y=S_complex * angles, **kwargs) - return y - - -def compute_stft_paddings( - *, x: np.ndarray = None, hop_length: int = None, pad_two_sides: bool = False, **kwargs -) -> Tuple[int, int]: - """Compute paddings used by Librosa's STFT. Compute right padding (final frame) or both sides padding - (first and final frames)""" - pad = (x.shape[0] // hop_length + 1) * hop_length - x.shape[0] - if not pad_two_sides: - return 0, pad - return pad // 2, pad // 2 + pad % 2 - - -def compute_f0( - *, - x: np.ndarray = None, - pitch_fmax: float = None, - pitch_fmin: float = None, - hop_length: int = None, - win_length: int = None, - sample_rate: int = None, - stft_pad_mode: str = "reflect", - center: bool = True, - **kwargs, -) -> np.ndarray: - """Compute pitch (f0) of a waveform using the same parameters used for computing melspectrogram. - - Args: - x (np.ndarray): Waveform. Shape :math:`[T_wav,]` - pitch_fmax (float): Pitch max value. - pitch_fmin (float): Pitch min value. - hop_length (int): Number of frames between STFT columns. - win_length (int): STFT window length. - sample_rate (int): Audio sampling rate. - stft_pad_mode (str): Padding mode for STFT. - center (bool): Centered padding. - - Returns: - np.ndarray: Pitch. Shape :math:`[T_pitch,]`. :math:`T_pitch == T_wav / hop_length` - - Examples: - >>> WAV_FILE = filename = librosa.example('vibeace') - >>> from TTS.config import BaseAudioConfig - >>> from TTS.utils.audio import AudioProcessor - >>> conf = BaseAudioConfig(pitch_fmax=640, pitch_fmin=1) - >>> ap = AudioProcessor(**conf) - >>> wav = ap.load_wav(WAV_FILE, sr=ap.sample_rate)[:5 * ap.sample_rate] - >>> pitch = ap.compute_f0(wav) - """ - assert pitch_fmax is not None, " [!] Set `pitch_fmax` before caling `compute_f0`." - assert pitch_fmin is not None, " [!] Set `pitch_fmin` before caling `compute_f0`." - - f0, voiced_mask, _ = pyin( - y=x.astype(np.double), - fmin=pitch_fmin, - fmax=pitch_fmax, - sr=sample_rate, - frame_length=win_length, - win_length=win_length // 2, - hop_length=hop_length, - pad_mode=stft_pad_mode, - center=center, - n_thresholds=100, - beta_parameters=(2, 18), - boltzmann_parameter=2, - resolution=0.1, - max_transition_rate=35.92, - switch_prob=0.01, - no_trough_prob=0.01, - ) - f0[~voiced_mask] = 0.0 - - return f0 - - -def compute_energy(y: np.ndarray, **kwargs) -> np.ndarray: - """Compute energy of a waveform using the same parameters used for computing melspectrogram. - Args: - x (np.ndarray): Waveform. Shape :math:`[T_wav,]` - Returns: - np.ndarray: energy. Shape :math:`[T_energy,]`. :math:`T_energy == T_wav / hop_length` - Examples: - >>> WAV_FILE = filename = librosa.example('vibeace') - >>> from TTS.config import BaseAudioConfig - >>> from TTS.utils.audio import AudioProcessor - >>> conf = BaseAudioConfig() - >>> ap = AudioProcessor(**conf) - >>> wav = ap.load_wav(WAV_FILE, sr=ap.sample_rate)[:5 * ap.sample_rate] - >>> energy = ap.compute_energy(wav) - """ - x = stft(y=y, **kwargs) - mag, _ = magphase(x) - energy = np.sqrt(np.sum(mag**2, axis=0)) - return energy - - -### Audio Processing ### -def find_endpoint( - *, - wav: np.ndarray = None, - trim_db: float = -40, - sample_rate: int = None, - min_silence_sec=0.8, - gain: float = None, - base: int = None, - **kwargs, -) -> int: - """Find the last point without silence at the end of a audio signal. - - Args: - wav (np.ndarray): Audio signal. - threshold_db (int, optional): Silence threshold in decibels. Defaults to -40. - min_silence_sec (float, optional): Ignore silences that are shorter then this in secs. Defaults to 0.8. - gian (float, optional): Gain to be used to convert trim_db to trim_amp. Defaults to None. - base (int, optional): Base of the logarithm used to convert trim_db to trim_amp. Defaults to 10. - - Returns: - int: Last point without silence. - """ - window_length = int(sample_rate * min_silence_sec) - hop_length = int(window_length / 4) - threshold = db_to_amp(x=-trim_db, gain=gain, base=base) - for x in range(hop_length, len(wav) - window_length, hop_length): - if np.max(wav[x : x + window_length]) < threshold: - return x + hop_length - return len(wav) - - -def trim_silence( - *, - wav: np.ndarray = None, - sample_rate: int = None, - trim_db: float = None, - win_length: int = None, - hop_length: int = None, - **kwargs, -) -> np.ndarray: - """Trim silent parts with a threshold and 0.01 sec margin""" - margin = int(sample_rate * 0.01) - wav = wav[margin:-margin] - return librosa.effects.trim(wav, top_db=trim_db, frame_length=win_length, hop_length=hop_length)[0] - - -def volume_norm(*, x: np.ndarray = None, coef: float = 0.95, **kwargs) -> np.ndarray: - """Normalize the volume of an audio signal. - - Args: - x (np.ndarray): Raw waveform. - coef (float): Coefficient to rescale the maximum value. Defaults to 0.95. - - Returns: - np.ndarray: Volume normalized waveform. - """ - return x / abs(x).max() * coef - - -def rms_norm(*, wav: np.ndarray = None, db_level: float = -27.0, **kwargs) -> np.ndarray: - r = 10 ** (db_level / 20) - a = np.sqrt((len(wav) * (r**2)) / np.sum(wav**2)) - return wav * a - - -def rms_volume_norm(*, x: np.ndarray, db_level: float = -27.0, **kwargs) -> np.ndarray: - """Normalize the volume based on RMS of the signal. - - Args: - x (np.ndarray): Raw waveform. - db_level (float): Target dB level in RMS. Defaults to -27.0. - - Returns: - np.ndarray: RMS normalized waveform. - """ - assert -99 <= db_level <= 0, " [!] db_level should be between -99 and 0" - wav = rms_norm(wav=x, db_level=db_level) - return wav - - -def load_wav(*, filename: str, sample_rate: int = None, resample: bool = False, **kwargs) -> np.ndarray: - """Read a wav file using Librosa and optionally resample, silence trim, volume normalize. - - Resampling slows down loading the file significantly. Therefore it is recommended to resample the file before. - - Args: - filename (str): Path to the wav file. - sr (int, optional): Sampling rate for resampling. Defaults to None. - resample (bool, optional): Resample the audio file when loading. Slows down the I/O time. Defaults to False. - - Returns: - np.ndarray: Loaded waveform. - """ - if resample: - # loading with resampling. It is significantly slower. - x, _ = librosa.load(filename, sr=sample_rate) - else: - # SF is faster than librosa for loading files - x, _ = sf.read(filename) - return x - - -def save_wav(*, wav: np.ndarray, path: str, sample_rate: int = None, **kwargs) -> None: - """Save float waveform to a file using Scipy. - - Args: - wav (np.ndarray): Waveform with float values in range [-1, 1] to save. - path (str): Path to a output file. - sr (int, optional): Sampling rate used for saving to the file. Defaults to None. - """ - wav_norm = wav * (32767 / max(0.01, np.max(np.abs(wav)))) - scipy.io.wavfile.write(path, sample_rate, wav_norm.astype(np.int16)) - - -def mulaw_encode(*, wav: np.ndarray, mulaw_qc: int, **kwargs) -> np.ndarray: - mu = 2**mulaw_qc - 1 - signal = np.sign(wav) * np.log(1 + mu * np.abs(wav)) / np.log(1.0 + mu) - signal = (signal + 1) / 2 * mu + 0.5 - return np.floor( - signal, - ) - - -def mulaw_decode(*, wav, mulaw_qc: int, **kwargs) -> np.ndarray: - """Recovers waveform from quantized values.""" - mu = 2**mulaw_qc - 1 - x = np.sign(wav) / mu * ((1 + mu) ** np.abs(wav) - 1) - return x - - -def encode_16bits(*, x: np.ndarray, **kwargs) -> np.ndarray: - return np.clip(x * 2**15, -(2**15), 2**15 - 1).astype(np.int16) - - -def quantize(*, x: np.ndarray, quantize_bits: int, **kwargs) -> np.ndarray: - """Quantize a waveform to a given number of bits. - - Args: - x (np.ndarray): Waveform to quantize. Must be normalized into the range `[-1, 1]`. - quantize_bits (int): Number of quantization bits. - - Returns: - np.ndarray: Quantized waveform. - """ - return (x + 1.0) * (2**quantize_bits - 1) / 2 - - -def dequantize(*, x, quantize_bits, **kwargs) -> np.ndarray: - """Dequantize a waveform from the given number of bits.""" - return 2 * x / (2**quantize_bits - 1) - 1 diff --git a/TTS/TTS/utils/audio/processor.py b/TTS/TTS/utils/audio/processor.py deleted file mode 100644 index b0920dc9eb903e0c8bba0fca42c719f07e6f61e1..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/audio/processor.py +++ /dev/null @@ -1,769 +0,0 @@ -from typing import Dict, Tuple - -import librosa -import numpy as np -import scipy.io.wavfile -import scipy.signal -import soundfile as sf - -from TTS.tts.utils.helpers import StandardScaler -from TTS.utils.audio.numpy_transforms import compute_f0 - -# pylint: disable=too-many-public-methods - - -class AudioProcessor(object): - """Audio Processor for TTS. - - Note: - All the class arguments are set to default values to enable a flexible initialization - of the class with the model config. They are not meaningful for all the arguments. - - Args: - sample_rate (int, optional): - target audio sampling rate. Defaults to None. - - resample (bool, optional): - enable/disable resampling of the audio clips when the target sampling rate does not match the original sampling rate. Defaults to False. - - num_mels (int, optional): - number of melspectrogram dimensions. Defaults to None. - - log_func (int, optional): - log exponent used for converting spectrogram aplitude to DB. - - min_level_db (int, optional): - minimum db threshold for the computed melspectrograms. Defaults to None. - - frame_shift_ms (int, optional): - milliseconds of frames between STFT columns. Defaults to None. - - frame_length_ms (int, optional): - milliseconds of STFT window length. Defaults to None. - - hop_length (int, optional): - number of frames between STFT columns. Used if ```frame_shift_ms``` is None. Defaults to None. - - win_length (int, optional): - STFT window length. Used if ```frame_length_ms``` is None. Defaults to None. - - ref_level_db (int, optional): - reference DB level to avoid background noise. In general <20DB corresponds to the air noise. Defaults to None. - - fft_size (int, optional): - FFT window size for STFT. Defaults to 1024. - - power (int, optional): - Exponent value applied to the spectrogram before GriffinLim. Defaults to None. - - preemphasis (float, optional): - Preemphasis coefficient. Preemphasis is disabled if == 0.0. Defaults to 0.0. - - signal_norm (bool, optional): - enable/disable signal normalization. Defaults to None. - - symmetric_norm (bool, optional): - enable/disable symmetric normalization. If set True normalization is performed in the range [-k, k] else [0, k], Defaults to None. - - max_norm (float, optional): - ```k``` defining the normalization range. Defaults to None. - - mel_fmin (int, optional): - minimum filter frequency for computing melspectrograms. Defaults to None. - - mel_fmax (int, optional): - maximum filter frequency for computing melspectrograms. Defaults to None. - - pitch_fmin (int, optional): - minimum filter frequency for computing pitch. Defaults to None. - - pitch_fmax (int, optional): - maximum filter frequency for computing pitch. Defaults to None. - - spec_gain (int, optional): - gain applied when converting amplitude to DB. Defaults to 20. - - stft_pad_mode (str, optional): - Padding mode for STFT. Defaults to 'reflect'. - - clip_norm (bool, optional): - enable/disable clipping the our of range values in the normalized audio signal. Defaults to True. - - griffin_lim_iters (int, optional): - Number of GriffinLim iterations. Defaults to None. - - do_trim_silence (bool, optional): - enable/disable silence trimming when loading the audio signal. Defaults to False. - - trim_db (int, optional): - DB threshold used for silence trimming. Defaults to 60. - - do_sound_norm (bool, optional): - enable/disable signal normalization. Defaults to False. - - do_amp_to_db_linear (bool, optional): - enable/disable amplitude to dB conversion of linear spectrograms. Defaults to True. - - do_amp_to_db_mel (bool, optional): - enable/disable amplitude to dB conversion of mel spectrograms. Defaults to True. - - do_rms_norm (bool, optional): - enable/disable RMS volume normalization when loading an audio file. Defaults to False. - - db_level (int, optional): - dB level used for rms normalization. The range is -99 to 0. Defaults to None. - - stats_path (str, optional): - Path to the computed stats file. Defaults to None. - - verbose (bool, optional): - enable/disable logging. Defaults to True. - - """ - - def __init__( - self, - sample_rate=None, - resample=False, - num_mels=None, - log_func="np.log10", - min_level_db=None, - frame_shift_ms=None, - frame_length_ms=None, - hop_length=None, - win_length=None, - ref_level_db=None, - fft_size=1024, - power=None, - preemphasis=0.0, - signal_norm=None, - symmetric_norm=None, - max_norm=None, - mel_fmin=None, - mel_fmax=None, - pitch_fmax=None, - pitch_fmin=None, - spec_gain=20, - stft_pad_mode="reflect", - clip_norm=True, - griffin_lim_iters=None, - do_trim_silence=False, - trim_db=60, - do_sound_norm=False, - do_amp_to_db_linear=True, - do_amp_to_db_mel=True, - do_rms_norm=False, - db_level=None, - stats_path=None, - verbose=True, - **_, - ): - # setup class attributed - self.sample_rate = sample_rate - self.resample = resample - self.num_mels = num_mels - self.log_func = log_func - self.min_level_db = min_level_db or 0 - self.frame_shift_ms = frame_shift_ms - self.frame_length_ms = frame_length_ms - self.ref_level_db = ref_level_db - self.fft_size = fft_size - self.power = power - self.preemphasis = preemphasis - self.griffin_lim_iters = griffin_lim_iters - self.signal_norm = signal_norm - self.symmetric_norm = symmetric_norm - self.mel_fmin = mel_fmin or 0 - self.mel_fmax = mel_fmax - self.pitch_fmin = pitch_fmin - self.pitch_fmax = pitch_fmax - self.spec_gain = float(spec_gain) - self.stft_pad_mode = stft_pad_mode - self.max_norm = 1.0 if max_norm is None else float(max_norm) - self.clip_norm = clip_norm - self.do_trim_silence = do_trim_silence - self.trim_db = trim_db - self.do_sound_norm = do_sound_norm - self.do_amp_to_db_linear = do_amp_to_db_linear - self.do_amp_to_db_mel = do_amp_to_db_mel - self.do_rms_norm = do_rms_norm - self.db_level = db_level - self.stats_path = stats_path - # setup exp_func for db to amp conversion - if log_func == "np.log": - self.base = np.e - elif log_func == "np.log10": - self.base = 10 - else: - raise ValueError(" [!] unknown `log_func` value.") - # setup stft parameters - if hop_length is None: - # compute stft parameters from given time values - self.hop_length, self.win_length = self._stft_parameters() - else: - # use stft parameters from config file - self.hop_length = hop_length - self.win_length = win_length - assert min_level_db != 0.0, " [!] min_level_db is 0" - assert ( - self.win_length <= self.fft_size - ), f" [!] win_length cannot be larger than fft_size - {self.win_length} vs {self.fft_size}" - members = vars(self) - if verbose: - print(" > Setting up Audio Processor...") - for key, value in members.items(): - print(" | > {}:{}".format(key, value)) - # create spectrogram utils - self.mel_basis = self._build_mel_basis() - self.inv_mel_basis = np.linalg.pinv(self._build_mel_basis()) - # setup scaler - if stats_path and signal_norm: - mel_mean, mel_std, linear_mean, linear_std, _ = self.load_stats(stats_path) - self.setup_scaler(mel_mean, mel_std, linear_mean, linear_std) - self.signal_norm = True - self.max_norm = None - self.clip_norm = None - self.symmetric_norm = None - - @staticmethod - def init_from_config(config: "Coqpit", verbose=True): - if "audio" in config: - return AudioProcessor(verbose=verbose, **config.audio) - return AudioProcessor(verbose=verbose, **config) - - ### setting up the parameters ### - def _build_mel_basis( - self, - ) -> np.ndarray: - """Build melspectrogram basis. - - Returns: - np.ndarray: melspectrogram basis. - """ - if self.mel_fmax is not None: - assert self.mel_fmax <= self.sample_rate // 2 - return librosa.filters.mel( - sr=self.sample_rate, n_fft=self.fft_size, n_mels=self.num_mels, fmin=self.mel_fmin, fmax=self.mel_fmax - ) - - def _stft_parameters( - self, - ) -> Tuple[int, int]: - """Compute the real STFT parameters from the time values. - - Returns: - Tuple[int, int]: hop length and window length for STFT. - """ - factor = self.frame_length_ms / self.frame_shift_ms - assert (factor).is_integer(), " [!] frame_shift_ms should divide frame_length_ms" - hop_length = int(self.frame_shift_ms / 1000.0 * self.sample_rate) - win_length = int(hop_length * factor) - return hop_length, win_length - - ### normalization ### - def normalize(self, S: np.ndarray) -> np.ndarray: - """Normalize values into `[0, self.max_norm]` or `[-self.max_norm, self.max_norm]` - - Args: - S (np.ndarray): Spectrogram to normalize. - - Raises: - RuntimeError: Mean and variance is computed from incompatible parameters. - - Returns: - np.ndarray: Normalized spectrogram. - """ - # pylint: disable=no-else-return - S = S.copy() - if self.signal_norm: - # mean-var scaling - if hasattr(self, "mel_scaler"): - if S.shape[0] == self.num_mels: - return self.mel_scaler.transform(S.T).T - elif S.shape[0] == self.fft_size / 2: - return self.linear_scaler.transform(S.T).T - else: - raise RuntimeError(" [!] Mean-Var stats does not match the given feature dimensions.") - # range normalization - S -= self.ref_level_db # discard certain range of DB assuming it is air noise - S_norm = (S - self.min_level_db) / (-self.min_level_db) - if self.symmetric_norm: - S_norm = ((2 * self.max_norm) * S_norm) - self.max_norm - if self.clip_norm: - S_norm = np.clip( - S_norm, -self.max_norm, self.max_norm # pylint: disable=invalid-unary-operand-type - ) - return S_norm - else: - S_norm = self.max_norm * S_norm - if self.clip_norm: - S_norm = np.clip(S_norm, 0, self.max_norm) - return S_norm - else: - return S - - def denormalize(self, S: np.ndarray) -> np.ndarray: - """Denormalize spectrogram values. - - Args: - S (np.ndarray): Spectrogram to denormalize. - - Raises: - RuntimeError: Mean and variance are incompatible. - - Returns: - np.ndarray: Denormalized spectrogram. - """ - # pylint: disable=no-else-return - S_denorm = S.copy() - if self.signal_norm: - # mean-var scaling - if hasattr(self, "mel_scaler"): - if S_denorm.shape[0] == self.num_mels: - return self.mel_scaler.inverse_transform(S_denorm.T).T - elif S_denorm.shape[0] == self.fft_size / 2: - return self.linear_scaler.inverse_transform(S_denorm.T).T - else: - raise RuntimeError(" [!] Mean-Var stats does not match the given feature dimensions.") - if self.symmetric_norm: - if self.clip_norm: - S_denorm = np.clip( - S_denorm, -self.max_norm, self.max_norm # pylint: disable=invalid-unary-operand-type - ) - S_denorm = ((S_denorm + self.max_norm) * -self.min_level_db / (2 * self.max_norm)) + self.min_level_db - return S_denorm + self.ref_level_db - else: - if self.clip_norm: - S_denorm = np.clip(S_denorm, 0, self.max_norm) - S_denorm = (S_denorm * -self.min_level_db / self.max_norm) + self.min_level_db - return S_denorm + self.ref_level_db - else: - return S_denorm - - ### Mean-STD scaling ### - def load_stats(self, stats_path: str) -> Tuple[np.array, np.array, np.array, np.array, Dict]: - """Loading mean and variance statistics from a `npy` file. - - Args: - stats_path (str): Path to the `npy` file containing - - Returns: - Tuple[np.array, np.array, np.array, np.array, Dict]: loaded statistics and the config used to - compute them. - """ - stats = np.load(stats_path, allow_pickle=True).item() # pylint: disable=unexpected-keyword-arg - mel_mean = stats["mel_mean"] - mel_std = stats["mel_std"] - linear_mean = stats["linear_mean"] - linear_std = stats["linear_std"] - stats_config = stats["audio_config"] - # check all audio parameters used for computing stats - skip_parameters = ["griffin_lim_iters", "stats_path", "do_trim_silence", "ref_level_db", "power"] - for key in stats_config.keys(): - if key in skip_parameters: - continue - if key not in ["sample_rate", "trim_db"]: - assert ( - stats_config[key] == self.__dict__[key] - ), f" [!] Audio param {key} does not match the value used for computing mean-var stats. {stats_config[key]} vs {self.__dict__[key]}" - return mel_mean, mel_std, linear_mean, linear_std, stats_config - - # pylint: disable=attribute-defined-outside-init - def setup_scaler( - self, mel_mean: np.ndarray, mel_std: np.ndarray, linear_mean: np.ndarray, linear_std: np.ndarray - ) -> None: - """Initialize scaler objects used in mean-std normalization. - - Args: - mel_mean (np.ndarray): Mean for melspectrograms. - mel_std (np.ndarray): STD for melspectrograms. - linear_mean (np.ndarray): Mean for full scale spectrograms. - linear_std (np.ndarray): STD for full scale spectrograms. - """ - self.mel_scaler = StandardScaler() - self.mel_scaler.set_stats(mel_mean, mel_std) - self.linear_scaler = StandardScaler() - self.linear_scaler.set_stats(linear_mean, linear_std) - - ### DB and AMP conversion ### - # pylint: disable=no-self-use - def _amp_to_db(self, x: np.ndarray) -> np.ndarray: - """Convert amplitude values to decibels. - - Args: - x (np.ndarray): Amplitude spectrogram. - - Returns: - np.ndarray: Decibels spectrogram. - """ - return self.spec_gain * _log(np.maximum(1e-5, x), self.base) - - # pylint: disable=no-self-use - def _db_to_amp(self, x: np.ndarray) -> np.ndarray: - """Convert decibels spectrogram to amplitude spectrogram. - - Args: - x (np.ndarray): Decibels spectrogram. - - Returns: - np.ndarray: Amplitude spectrogram. - """ - return _exp(x / self.spec_gain, self.base) - - ### Preemphasis ### - def apply_preemphasis(self, x: np.ndarray) -> np.ndarray: - """Apply pre-emphasis to the audio signal. Useful to reduce the correlation between neighbouring signal values. - - Args: - x (np.ndarray): Audio signal. - - Raises: - RuntimeError: Preemphasis coeff is set to 0. - - Returns: - np.ndarray: Decorrelated audio signal. - """ - if self.preemphasis == 0: - raise RuntimeError(" [!] Preemphasis is set 0.0.") - return scipy.signal.lfilter([1, -self.preemphasis], [1], x) - - def apply_inv_preemphasis(self, x: np.ndarray) -> np.ndarray: - """Reverse pre-emphasis.""" - if self.preemphasis == 0: - raise RuntimeError(" [!] Preemphasis is set 0.0.") - return scipy.signal.lfilter([1], [1, -self.preemphasis], x) - - ### SPECTROGRAMs ### - def _linear_to_mel(self, spectrogram: np.ndarray) -> np.ndarray: - """Project a full scale spectrogram to a melspectrogram. - - Args: - spectrogram (np.ndarray): Full scale spectrogram. - - Returns: - np.ndarray: Melspectrogram - """ - return np.dot(self.mel_basis, spectrogram) - - def _mel_to_linear(self, mel_spec: np.ndarray) -> np.ndarray: - """Convert a melspectrogram to full scale spectrogram.""" - return np.maximum(1e-10, np.dot(self.inv_mel_basis, mel_spec)) - - def spectrogram(self, y: np.ndarray) -> np.ndarray: - """Compute a spectrogram from a waveform. - - Args: - y (np.ndarray): Waveform. - - Returns: - np.ndarray: Spectrogram. - """ - if self.preemphasis != 0: - D = self._stft(self.apply_preemphasis(y)) - else: - D = self._stft(y) - if self.do_amp_to_db_linear: - S = self._amp_to_db(np.abs(D)) - else: - S = np.abs(D) - return self.normalize(S).astype(np.float32) - - def melspectrogram(self, y: np.ndarray) -> np.ndarray: - """Compute a melspectrogram from a waveform.""" - if self.preemphasis != 0: - D = self._stft(self.apply_preemphasis(y)) - else: - D = self._stft(y) - if self.do_amp_to_db_mel: - S = self._amp_to_db(self._linear_to_mel(np.abs(D))) - else: - S = self._linear_to_mel(np.abs(D)) - return self.normalize(S).astype(np.float32) - - def inv_spectrogram(self, spectrogram: np.ndarray) -> np.ndarray: - """Convert a spectrogram to a waveform using Griffi-Lim vocoder.""" - S = self.denormalize(spectrogram) - S = self._db_to_amp(S) - # Reconstruct phase - if self.preemphasis != 0: - return self.apply_inv_preemphasis(self._griffin_lim(S**self.power)) - return self._griffin_lim(S**self.power) - - def inv_melspectrogram(self, mel_spectrogram: np.ndarray) -> np.ndarray: - """Convert a melspectrogram to a waveform using Griffi-Lim vocoder.""" - D = self.denormalize(mel_spectrogram) - S = self._db_to_amp(D) - S = self._mel_to_linear(S) # Convert back to linear - if self.preemphasis != 0: - return self.apply_inv_preemphasis(self._griffin_lim(S**self.power)) - return self._griffin_lim(S**self.power) - - def out_linear_to_mel(self, linear_spec: np.ndarray) -> np.ndarray: - """Convert a full scale linear spectrogram output of a network to a melspectrogram. - - Args: - linear_spec (np.ndarray): Normalized full scale linear spectrogram. - - Returns: - np.ndarray: Normalized melspectrogram. - """ - S = self.denormalize(linear_spec) - S = self._db_to_amp(S) - S = self._linear_to_mel(np.abs(S)) - S = self._amp_to_db(S) - mel = self.normalize(S) - return mel - - ### STFT and ISTFT ### - def _stft(self, y: np.ndarray) -> np.ndarray: - """Librosa STFT wrapper. - - Args: - y (np.ndarray): Audio signal. - - Returns: - np.ndarray: Complex number array. - """ - return librosa.stft( - y=y, - n_fft=self.fft_size, - hop_length=self.hop_length, - win_length=self.win_length, - pad_mode=self.stft_pad_mode, - window="hann", - center=True, - ) - - def _istft(self, y: np.ndarray) -> np.ndarray: - """Librosa iSTFT wrapper.""" - return librosa.istft(y, hop_length=self.hop_length, win_length=self.win_length) - - def _griffin_lim(self, S): - angles = np.exp(2j * np.pi * np.random.rand(*S.shape)) - try: - S_complex = np.abs(S).astype(np.complex) - except AttributeError: # np.complex is deprecated since numpy 1.20.0 - S_complex = np.abs(S).astype(complex) - y = self._istft(S_complex * angles) - if not np.isfinite(y).all(): - print(" [!] Waveform is not finite everywhere. Skipping the GL.") - return np.array([0.0]) - for _ in range(self.griffin_lim_iters): - angles = np.exp(1j * np.angle(self._stft(y))) - y = self._istft(S_complex * angles) - return y - - def compute_stft_paddings(self, x, pad_sides=1): - """Compute paddings used by Librosa's STFT. Compute right padding (final frame) or both sides padding - (first and final frames)""" - assert pad_sides in (1, 2) - pad = (x.shape[0] // self.hop_length + 1) * self.hop_length - x.shape[0] - if pad_sides == 1: - return 0, pad - return pad // 2, pad // 2 + pad % 2 - - def compute_f0(self, x: np.ndarray) -> np.ndarray: - """Compute pitch (f0) of a waveform using the same parameters used for computing melspectrogram. - - Args: - x (np.ndarray): Waveform. - - Returns: - np.ndarray: Pitch. - - Examples: - >>> WAV_FILE = filename = librosa.example('vibeace') - >>> from TTS.config import BaseAudioConfig - >>> from TTS.utils.audio import AudioProcessor - >>> conf = BaseAudioConfig(pitch_fmax=640, pitch_fmin=1) - >>> ap = AudioProcessor(**conf) - >>> wav = ap.load_wav(WAV_FILE, sr=ap.sample_rate)[:5 * ap.sample_rate] - >>> pitch = ap.compute_f0(wav) - """ - assert self.pitch_fmax is not None, " [!] Set `pitch_fmax` before caling `compute_f0`." - assert self.pitch_fmin is not None, " [!] Set `pitch_fmin` before caling `compute_f0`." - # align F0 length to the spectrogram length - if len(x) % self.hop_length == 0: - x = np.pad(x, (0, self.hop_length // 2), mode=self.stft_pad_mode) - - f0 = compute_f0( - x=x, - pitch_fmax=self.pitch_fmax, - pitch_fmin=self.pitch_fmin, - hop_length=self.hop_length, - win_length=self.win_length, - sample_rate=self.sample_rate, - stft_pad_mode=self.stft_pad_mode, - center=True, - ) - - return f0 - - ### Audio Processing ### - def find_endpoint(self, wav: np.ndarray, min_silence_sec=0.8) -> int: - """Find the last point without silence at the end of a audio signal. - - Args: - wav (np.ndarray): Audio signal. - threshold_db (int, optional): Silence threshold in decibels. Defaults to -40. - min_silence_sec (float, optional): Ignore silences that are shorter then this in secs. Defaults to 0.8. - - Returns: - int: Last point without silence. - """ - window_length = int(self.sample_rate * min_silence_sec) - hop_length = int(window_length / 4) - threshold = self._db_to_amp(-self.trim_db) - for x in range(hop_length, len(wav) - window_length, hop_length): - if np.max(wav[x : x + window_length]) < threshold: - return x + hop_length - return len(wav) - - def trim_silence(self, wav): - """Trim silent parts with a threshold and 0.01 sec margin""" - margin = int(self.sample_rate * 0.01) - wav = wav[margin:-margin] - return librosa.effects.trim(wav, top_db=self.trim_db, frame_length=self.win_length, hop_length=self.hop_length)[ - 0 - ] - - @staticmethod - def sound_norm(x: np.ndarray) -> np.ndarray: - """Normalize the volume of an audio signal. - - Args: - x (np.ndarray): Raw waveform. - - Returns: - np.ndarray: Volume normalized waveform. - """ - return x / abs(x).max() * 0.95 - - @staticmethod - def _rms_norm(wav, db_level=-27): - r = 10 ** (db_level / 20) - a = np.sqrt((len(wav) * (r**2)) / np.sum(wav**2)) - return wav * a - - def rms_volume_norm(self, x: np.ndarray, db_level: float = None) -> np.ndarray: - """Normalize the volume based on RMS of the signal. - - Args: - x (np.ndarray): Raw waveform. - - Returns: - np.ndarray: RMS normalized waveform. - """ - if db_level is None: - db_level = self.db_level - assert -99 <= db_level <= 0, " [!] db_level should be between -99 and 0" - wav = self._rms_norm(x, db_level) - return wav - - ### save and load ### - def load_wav(self, filename: str, sr: int = None) -> np.ndarray: - """Read a wav file using Librosa and optionally resample, silence trim, volume normalize. - - Resampling slows down loading the file significantly. Therefore it is recommended to resample the file before. - - Args: - filename (str): Path to the wav file. - sr (int, optional): Sampling rate for resampling. Defaults to None. - - Returns: - np.ndarray: Loaded waveform. - """ - if self.resample: - # loading with resampling. It is significantly slower. - x, sr = librosa.load(filename, sr=self.sample_rate) - elif sr is None: - # SF is faster than librosa for loading files - x, sr = sf.read(filename) - assert self.sample_rate == sr, "%s vs %s" % (self.sample_rate, sr) - else: - x, sr = librosa.load(filename, sr=sr) - if self.do_trim_silence: - try: - x = self.trim_silence(x) - except ValueError: - print(f" [!] File cannot be trimmed for silence - {filename}") - if self.do_sound_norm: - x = self.sound_norm(x) - if self.do_rms_norm: - x = self.rms_volume_norm(x, self.db_level) - return x - - def save_wav(self, wav: np.ndarray, path: str, sr: int = None) -> None: - """Save a waveform to a file using Scipy. - - Args: - wav (np.ndarray): Waveform to save. - path (str): Path to a output file. - sr (int, optional): Sampling rate used for saving to the file. Defaults to None. - """ - if self.do_rms_norm: - wav_norm = self.rms_volume_norm(wav, self.db_level) * 32767 - else: - wav_norm = wav * (32767 / max(0.01, np.max(np.abs(wav)))) - - scipy.io.wavfile.write(path, sr if sr else self.sample_rate, wav_norm.astype(np.int16)) - - def get_duration(self, filename: str) -> float: - """Get the duration of a wav file using Librosa. - - Args: - filename (str): Path to the wav file. - """ - return librosa.get_duration(filename=filename) - - @staticmethod - def mulaw_encode(wav: np.ndarray, qc: int) -> np.ndarray: - mu = 2**qc - 1 - # wav_abs = np.minimum(np.abs(wav), 1.0) - signal = np.sign(wav) * np.log(1 + mu * np.abs(wav)) / np.log(1.0 + mu) - # Quantize signal to the specified number of levels. - signal = (signal + 1) / 2 * mu + 0.5 - return np.floor( - signal, - ) - - @staticmethod - def mulaw_decode(wav, qc): - """Recovers waveform from quantized values.""" - mu = 2**qc - 1 - x = np.sign(wav) / mu * ((1 + mu) ** np.abs(wav) - 1) - return x - - @staticmethod - def encode_16bits(x): - return np.clip(x * 2**15, -(2**15), 2**15 - 1).astype(np.int16) - - @staticmethod - def quantize(x: np.ndarray, bits: int) -> np.ndarray: - """Quantize a waveform to a given number of bits. - - Args: - x (np.ndarray): Waveform to quantize. Must be normalized into the range `[-1, 1]`. - bits (int): Number of quantization bits. - - Returns: - np.ndarray: Quantized waveform. - """ - return (x + 1.0) * (2**bits - 1) / 2 - - @staticmethod - def dequantize(x, bits): - """Dequantize a waveform from the given number of bits.""" - return 2 * x / (2**bits - 1) - 1 - - -def _log(x, base): - if base == 10: - return np.log10(x) - return np.log(x) - - -def _exp(x, base): - if base == 10: - return np.power(10, x) - return np.exp(x) diff --git a/TTS/TTS/utils/audio/torch_transforms.py b/TTS/TTS/utils/audio/torch_transforms.py deleted file mode 100644 index fd40ebb048b915a836ba0d84dc22054d23b1d886..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/audio/torch_transforms.py +++ /dev/null @@ -1,165 +0,0 @@ -import librosa -import torch -from torch import nn - - -class TorchSTFT(nn.Module): # pylint: disable=abstract-method - """Some of the audio processing funtions using Torch for faster batch processing. - - Args: - - n_fft (int): - FFT window size for STFT. - - hop_length (int): - number of frames between STFT columns. - - win_length (int, optional): - STFT window length. - - pad_wav (bool, optional): - If True pad the audio with (n_fft - hop_length) / 2). Defaults to False. - - window (str, optional): - The name of a function to create a window tensor that is applied/multiplied to each frame/window. Defaults to "hann_window" - - sample_rate (int, optional): - target audio sampling rate. Defaults to None. - - mel_fmin (int, optional): - minimum filter frequency for computing melspectrograms. Defaults to None. - - mel_fmax (int, optional): - maximum filter frequency for computing melspectrograms. Defaults to None. - - n_mels (int, optional): - number of melspectrogram dimensions. Defaults to None. - - use_mel (bool, optional): - If True compute the melspectrograms otherwise. Defaults to False. - - do_amp_to_db_linear (bool, optional): - enable/disable amplitude to dB conversion of linear spectrograms. Defaults to False. - - spec_gain (float, optional): - gain applied when converting amplitude to DB. Defaults to 1.0. - - power (float, optional): - Exponent for the magnitude spectrogram, e.g., 1 for energy, 2 for power, etc. Defaults to None. - - use_htk (bool, optional): - Use HTK formula in mel filter instead of Slaney. - - mel_norm (None, 'slaney', or number, optional): - If 'slaney', divide the triangular mel weights by the width of the mel band - (area normalization). - - If numeric, use `librosa.util.normalize` to normalize each filter by to unit l_p norm. - See `librosa.util.normalize` for a full description of supported norm values - (including `+-np.inf`). - - Otherwise, leave all the triangles aiming for a peak value of 1.0. Defaults to "slaney". - """ - - def __init__( - self, - n_fft, - hop_length, - win_length, - pad_wav=False, - window="hann_window", - sample_rate=None, - mel_fmin=0, - mel_fmax=None, - n_mels=80, - use_mel=False, - do_amp_to_db=False, - spec_gain=1.0, - power=None, - use_htk=False, - mel_norm="slaney", - normalized=False, - ): - super().__init__() - self.n_fft = n_fft - self.hop_length = hop_length - self.win_length = win_length - self.pad_wav = pad_wav - self.sample_rate = sample_rate - self.mel_fmin = mel_fmin - self.mel_fmax = mel_fmax - self.n_mels = n_mels - self.use_mel = use_mel - self.do_amp_to_db = do_amp_to_db - self.spec_gain = spec_gain - self.power = power - self.use_htk = use_htk - self.mel_norm = mel_norm - self.window = nn.Parameter(getattr(torch, window)(win_length), requires_grad=False) - self.mel_basis = None - self.normalized = normalized - if use_mel: - self._build_mel_basis() - - def __call__(self, x): - """Compute spectrogram frames by torch based stft. - - Args: - x (Tensor): input waveform - - Returns: - Tensor: spectrogram frames. - - Shapes: - x: [B x T] or [:math:`[B, 1, T]`] - """ - if x.ndim == 2: - x = x.unsqueeze(1) - if self.pad_wav: - padding = int((self.n_fft - self.hop_length) / 2) - x = torch.nn.functional.pad(x, (padding, padding), mode="reflect") - # B x D x T x 2 - o = torch.stft( - x.squeeze(1), - self.n_fft, - self.hop_length, - self.win_length, - self.window, - center=True, - pad_mode="reflect", # compatible with audio.py - normalized=self.normalized, - onesided=True, - return_complex=False, - ) - M = o[:, :, :, 0] - P = o[:, :, :, 1] - S = torch.sqrt(torch.clamp(M**2 + P**2, min=1e-8)) - - if self.power is not None: - S = S**self.power - - if self.use_mel: - S = torch.matmul(self.mel_basis.to(x), S) - if self.do_amp_to_db: - S = self._amp_to_db(S, spec_gain=self.spec_gain) - return S - - def _build_mel_basis(self): - mel_basis = librosa.filters.mel( - sr=self.sample_rate, - n_fft=self.n_fft, - n_mels=self.n_mels, - fmin=self.mel_fmin, - fmax=self.mel_fmax, - htk=self.use_htk, - norm=self.mel_norm, - ) - self.mel_basis = torch.from_numpy(mel_basis).float() - - @staticmethod - def _amp_to_db(x, spec_gain=1.0): - return torch.log(torch.clamp(x, min=1e-5) * spec_gain) - - @staticmethod - def _db_to_amp(x, spec_gain=1.0): - return torch.exp(x) / spec_gain diff --git a/TTS/TTS/utils/callbacks.py b/TTS/TTS/utils/callbacks.py deleted file mode 100644 index 511d215c656f1ce3ed31484963db64fae4dc77d4..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/callbacks.py +++ /dev/null @@ -1,105 +0,0 @@ -class TrainerCallback: - @staticmethod - def on_init_start(trainer) -> None: - if hasattr(trainer.model, "module"): - if hasattr(trainer.model.module, "on_init_start"): - trainer.model.module.on_init_start(trainer) - else: - if hasattr(trainer.model, "on_init_start"): - trainer.model.on_init_start(trainer) - - if hasattr(trainer.criterion, "on_init_start"): - trainer.criterion.on_init_start(trainer) - - if hasattr(trainer.optimizer, "on_init_start"): - trainer.optimizer.on_init_start(trainer) - - @staticmethod - def on_init_end(trainer) -> None: - if hasattr(trainer.model, "module"): - if hasattr(trainer.model.module, "on_init_end"): - trainer.model.module.on_init_end(trainer) - else: - if hasattr(trainer.model, "on_init_end"): - trainer.model.on_init_end(trainer) - - if hasattr(trainer.criterion, "on_init_end"): - trainer.criterion.on_init_end(trainer) - - if hasattr(trainer.optimizer, "on_init_end"): - trainer.optimizer.on_init_end(trainer) - - @staticmethod - def on_epoch_start(trainer) -> None: - if hasattr(trainer.model, "module"): - if hasattr(trainer.model.module, "on_epoch_start"): - trainer.model.module.on_epoch_start(trainer) - else: - if hasattr(trainer.model, "on_epoch_start"): - trainer.model.on_epoch_start(trainer) - - if hasattr(trainer.criterion, "on_epoch_start"): - trainer.criterion.on_epoch_start(trainer) - - if hasattr(trainer.optimizer, "on_epoch_start"): - trainer.optimizer.on_epoch_start(trainer) - - @staticmethod - def on_epoch_end(trainer) -> None: - if hasattr(trainer.model, "module"): - if hasattr(trainer.model.module, "on_epoch_end"): - trainer.model.module.on_epoch_end(trainer) - else: - if hasattr(trainer.model, "on_epoch_end"): - trainer.model.on_epoch_end(trainer) - - if hasattr(trainer.criterion, "on_epoch_end"): - trainer.criterion.on_epoch_end(trainer) - - if hasattr(trainer.optimizer, "on_epoch_end"): - trainer.optimizer.on_epoch_end(trainer) - - @staticmethod - def on_train_step_start(trainer) -> None: - if hasattr(trainer.model, "module"): - if hasattr(trainer.model.module, "on_train_step_start"): - trainer.model.module.on_train_step_start(trainer) - else: - if hasattr(trainer.model, "on_train_step_start"): - trainer.model.on_train_step_start(trainer) - - if hasattr(trainer.criterion, "on_train_step_start"): - trainer.criterion.on_train_step_start(trainer) - - if hasattr(trainer.optimizer, "on_train_step_start"): - trainer.optimizer.on_train_step_start(trainer) - - @staticmethod - def on_train_step_end(trainer) -> None: - if hasattr(trainer.model, "module"): - if hasattr(trainer.model.module, "on_train_step_end"): - trainer.model.module.on_train_step_end(trainer) - else: - if hasattr(trainer.model, "on_train_step_end"): - trainer.model.on_train_step_end(trainer) - - if hasattr(trainer.criterion, "on_train_step_end"): - trainer.criterion.on_train_step_end(trainer) - - if hasattr(trainer.optimizer, "on_train_step_end"): - trainer.optimizer.on_train_step_end(trainer) - - @staticmethod - def on_keyboard_interrupt(trainer) -> None: - if hasattr(trainer.model, "module"): - if hasattr(trainer.model.module, "on_keyboard_interrupt"): - trainer.model.module.on_keyboard_interrupt(trainer) - else: - if hasattr(trainer.model, "on_keyboard_interrupt"): - trainer.model.on_keyboard_interrupt(trainer) - - if hasattr(trainer.criterion, "on_keyboard_interrupt"): - trainer.criterion.on_keyboard_interrupt(trainer) - - if hasattr(trainer.optimizer, "on_keyboard_interrupt"): - trainer.optimizer.on_keyboard_interrupt(trainer) diff --git a/TTS/TTS/utils/capacitron_optimizer.py b/TTS/TTS/utils/capacitron_optimizer.py deleted file mode 100644 index 7206ffd508896cab96a22288f33a93e999c5f009..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/capacitron_optimizer.py +++ /dev/null @@ -1,67 +0,0 @@ -from typing import Generator - -from trainer.trainer_utils import get_optimizer - - -class CapacitronOptimizer: - """Double optimizer class for the Capacitron model.""" - - def __init__(self, config: dict, model_params: Generator) -> None: - self.primary_params, self.secondary_params = self.split_model_parameters(model_params) - - optimizer_names = list(config.optimizer_params.keys()) - optimizer_parameters = list(config.optimizer_params.values()) - - self.primary_optimizer = get_optimizer( - optimizer_names[0], - optimizer_parameters[0], - config.lr, - parameters=self.primary_params, - ) - - self.secondary_optimizer = get_optimizer( - optimizer_names[1], - self.extract_optimizer_parameters(optimizer_parameters[1]), - optimizer_parameters[1]["lr"], - parameters=self.secondary_params, - ) - - self.param_groups = self.primary_optimizer.param_groups - - def first_step(self): - self.secondary_optimizer.step() - self.secondary_optimizer.zero_grad() - self.primary_optimizer.zero_grad() - - def step(self): - # Update param groups to display the correct learning rate - self.param_groups = self.primary_optimizer.param_groups - self.primary_optimizer.step() - - def zero_grad(self, set_to_none=False): - self.primary_optimizer.zero_grad(set_to_none) - self.secondary_optimizer.zero_grad(set_to_none) - - def load_state_dict(self, state_dict): - self.primary_optimizer.load_state_dict(state_dict[0]) - self.secondary_optimizer.load_state_dict(state_dict[1]) - - def state_dict(self): - return [self.primary_optimizer.state_dict(), self.secondary_optimizer.state_dict()] - - @staticmethod - def split_model_parameters(model_params: Generator) -> list: - primary_params = [] - secondary_params = [] - for name, param in model_params: - if param.requires_grad: - if name == "capacitron_vae_layer.beta": - secondary_params.append(param) - else: - primary_params.append(param) - return [iter(primary_params), iter(secondary_params)] - - @staticmethod - def extract_optimizer_parameters(params: dict) -> dict: - """Extract parameters that are not the learning rate""" - return {k: v for k, v in params.items() if k != "lr"} diff --git a/TTS/TTS/utils/distribute.py b/TTS/TTS/utils/distribute.py deleted file mode 100644 index a51ef7661ece97c87c165ad1aba4c9d9700379dc..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/distribute.py +++ /dev/null @@ -1,20 +0,0 @@ -# edited from https://github.com/fastai/imagenet-fast/blob/master/imagenet_nv/distributed.py -import torch -import torch.distributed as dist - - -def reduce_tensor(tensor, num_gpus): - rt = tensor.clone() - dist.all_reduce(rt, op=dist.reduce_op.SUM) - rt /= num_gpus - return rt - - -def init_distributed(rank, num_gpus, group_name, dist_backend, dist_url): - assert torch.cuda.is_available(), "Distributed mode requires CUDA." - - # Set cuda device so everything is done on the right GPU. - torch.cuda.set_device(rank % torch.cuda.device_count()) - - # Initialize distributed communication - dist.init_process_group(dist_backend, init_method=dist_url, world_size=num_gpus, rank=rank, group_name=group_name) diff --git a/TTS/TTS/utils/download.py b/TTS/TTS/utils/download.py deleted file mode 100644 index 3f06b578248441d9951bf0ee62e2764ffd9ff9d7..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/download.py +++ /dev/null @@ -1,206 +0,0 @@ -# Adapted from https://github.com/pytorch/audio/ - -import hashlib -import logging -import os -import tarfile -import urllib -import urllib.request -import zipfile -from os.path import expanduser -from typing import Any, Iterable, List, Optional - -from torch.utils.model_zoo import tqdm - - -def stream_url( - url: str, start_byte: Optional[int] = None, block_size: int = 32 * 1024, progress_bar: bool = True -) -> Iterable: - """Stream url by chunk - - Args: - url (str): Url. - start_byte (int or None, optional): Start streaming at that point (Default: ``None``). - block_size (int, optional): Size of chunks to stream (Default: ``32 * 1024``). - progress_bar (bool, optional): Display a progress bar (Default: ``True``). - """ - - # If we already have the whole file, there is no need to download it again - req = urllib.request.Request(url, method="HEAD") - with urllib.request.urlopen(req) as response: - url_size = int(response.info().get("Content-Length", -1)) - if url_size == start_byte: - return - - req = urllib.request.Request(url) - if start_byte: - req.headers["Range"] = "bytes={}-".format(start_byte) - - with urllib.request.urlopen(req) as upointer, tqdm( - unit="B", - unit_scale=True, - unit_divisor=1024, - total=url_size, - disable=not progress_bar, - ) as pbar: - num_bytes = 0 - while True: - chunk = upointer.read(block_size) - if not chunk: - break - yield chunk - num_bytes += len(chunk) - pbar.update(len(chunk)) - - -def download_url( - url: str, - download_folder: str, - filename: Optional[str] = None, - hash_value: Optional[str] = None, - hash_type: str = "sha256", - progress_bar: bool = True, - resume: bool = False, -) -> None: - """Download file to disk. - - Args: - url (str): Url. - download_folder (str): Folder to download file. - filename (str or None, optional): Name of downloaded file. If None, it is inferred from the url - (Default: ``None``). - hash_value (str or None, optional): Hash for url (Default: ``None``). - hash_type (str, optional): Hash type, among "sha256" and "md5" (Default: ``"sha256"``). - progress_bar (bool, optional): Display a progress bar (Default: ``True``). - resume (bool, optional): Enable resuming download (Default: ``False``). - """ - - req = urllib.request.Request(url, method="HEAD") - req_info = urllib.request.urlopen(req).info() # pylint: disable=consider-using-with - - # Detect filename - filename = filename or req_info.get_filename() or os.path.basename(url) - filepath = os.path.join(download_folder, filename) - if resume and os.path.exists(filepath): - mode = "ab" - local_size: Optional[int] = os.path.getsize(filepath) - - elif not resume and os.path.exists(filepath): - raise RuntimeError("{} already exists. Delete the file manually and retry.".format(filepath)) - else: - mode = "wb" - local_size = None - - if hash_value and local_size == int(req_info.get("Content-Length", -1)): - with open(filepath, "rb") as file_obj: - if validate_file(file_obj, hash_value, hash_type): - return - raise RuntimeError("The hash of {} does not match. Delete the file manually and retry.".format(filepath)) - - with open(filepath, mode) as fpointer: - for chunk in stream_url(url, start_byte=local_size, progress_bar=progress_bar): - fpointer.write(chunk) - - with open(filepath, "rb") as file_obj: - if hash_value and not validate_file(file_obj, hash_value, hash_type): - raise RuntimeError("The hash of {} does not match. Delete the file manually and retry.".format(filepath)) - - -def validate_file(file_obj: Any, hash_value: str, hash_type: str = "sha256") -> bool: - """Validate a given file object with its hash. - - Args: - file_obj: File object to read from. - hash_value (str): Hash for url. - hash_type (str, optional): Hash type, among "sha256" and "md5" (Default: ``"sha256"``). - - Returns: - bool: return True if its a valid file, else False. - """ - - if hash_type == "sha256": - hash_func = hashlib.sha256() - elif hash_type == "md5": - hash_func = hashlib.md5() - else: - raise ValueError - - while True: - # Read by chunk to avoid filling memory - chunk = file_obj.read(1024**2) - if not chunk: - break - hash_func.update(chunk) - - return hash_func.hexdigest() == hash_value - - -def extract_archive(from_path: str, to_path: Optional[str] = None, overwrite: bool = False) -> List[str]: - """Extract archive. - Args: - from_path (str): the path of the archive. - to_path (str or None, optional): the root path of the extraced files (directory of from_path) - (Default: ``None``) - overwrite (bool, optional): overwrite existing files (Default: ``False``) - - Returns: - list: List of paths to extracted files even if not overwritten. - """ - - if to_path is None: - to_path = os.path.dirname(from_path) - - try: - with tarfile.open(from_path, "r") as tar: - logging.info("Opened tar file %s.", from_path) - files = [] - for file_ in tar: # type: Any - file_path = os.path.join(to_path, file_.name) - if file_.isfile(): - files.append(file_path) - if os.path.exists(file_path): - logging.info("%s already extracted.", file_path) - if not overwrite: - continue - tar.extract(file_, to_path) - return files - except tarfile.ReadError: - pass - - try: - with zipfile.ZipFile(from_path, "r") as zfile: - logging.info("Opened zip file %s.", from_path) - files = zfile.namelist() - for file_ in files: - file_path = os.path.join(to_path, file_) - if os.path.exists(file_path): - logging.info("%s already extracted.", file_path) - if not overwrite: - continue - zfile.extract(file_, to_path) - return files - except zipfile.BadZipFile: - pass - - raise NotImplementedError(" > [!] only supports tar.gz, tgz, and zip achives.") - - -def download_kaggle_dataset(dataset_path: str, dataset_name: str, output_path: str): - """Download dataset from kaggle. - Args: - dataset_path (str): - This the kaggle link to the dataset. for example vctk is 'mfekadu/english-multispeaker-corpus-for-voice-cloning' - dataset_name (str): Name of the folder the dataset will be saved in. - output_path (str): Path of the location you want the dataset folder to be saved to. - """ - data_path = os.path.join(output_path, dataset_name) - try: - import kaggle # pylint: disable=import-outside-toplevel - - kaggle.api.authenticate() - print(f"""\nDownloading {dataset_name}...""") - kaggle.api.dataset_download_files(dataset_path, path=data_path, unzip=True) - except OSError: - print( - f"""[!] in order to download kaggle datasets, you need to have a kaggle api token stored in your {os.path.join(expanduser('~'), '.kaggle/kaggle.json')}""" - ) diff --git a/TTS/TTS/utils/downloaders.py b/TTS/TTS/utils/downloaders.py deleted file mode 100644 index 104dc7b94e17b1d7f828103d2396d6c5115b628a..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/downloaders.py +++ /dev/null @@ -1,126 +0,0 @@ -import os -from typing import Optional - -from TTS.utils.download import download_kaggle_dataset, download_url, extract_archive - - -def download_ljspeech(path: str): - """Download and extract LJSpeech dataset - - Args: - path (str): path to the directory where the dataset will be stored. - """ - os.makedirs(path, exist_ok=True) - url = "https://data.keithito.com/data/speech/LJSpeech-1.1.tar.bz2" - download_url(url, path) - basename = os.path.basename(url) - archive = os.path.join(path, basename) - print(" > Extracting archive file...") - extract_archive(archive) - - -def download_vctk(path: str, use_kaggle: Optional[bool] = False): - """Download and extract VCTK dataset. - - Args: - path (str): path to the directory where the dataset will be stored. - - use_kaggle (bool, optional): Downloads vctk dataset from kaggle. Is generally faster. Defaults to False. - """ - if use_kaggle: - download_kaggle_dataset("mfekadu/english-multispeaker-corpus-for-voice-cloning", "VCTK", path) - else: - os.makedirs(path, exist_ok=True) - url = "https://datashare.ed.ac.uk/bitstream/handle/10283/3443/VCTK-Corpus-0.92.zip" - download_url(url, path) - basename = os.path.basename(url) - archive = os.path.join(path, basename) - print(" > Extracting archive file...") - extract_archive(archive) - - -def download_tweb(path: str): - """Download and extract Tweb dataset - - Args: - path (str): Path to the directory where the dataset will be stored. - """ - download_kaggle_dataset("bryanpark/the-world-english-bible-speech-dataset", "TWEB", path) - - -def download_libri_tts(path: str, subset: Optional[str] = "all"): - """Download and extract libri tts dataset. - - Args: - path (str): Path to the directory where the dataset will be stored. - - subset (str, optional): Name of the subset to download. If you only want to download a certain - portion specify it here. Defaults to 'all'. - """ - - subset_dict = { - "libri-tts-clean-100": "http://www.openslr.org/resources/60/train-clean-100.tar.gz", - "libri-tts-clean-360": "http://www.openslr.org/resources/60/train-clean-360.tar.gz", - "libri-tts-other-500": "http://www.openslr.org/resources/60/train-other-500.tar.gz", - "libri-tts-dev-clean": "http://www.openslr.org/resources/60/dev-clean.tar.gz", - "libri-tts-dev-other": "http://www.openslr.org/resources/60/dev-other.tar.gz", - "libri-tts-test-clean": "http://www.openslr.org/resources/60/test-clean.tar.gz", - "libri-tts-test-other": "http://www.openslr.org/resources/60/test-other.tar.gz", - } - - os.makedirs(path, exist_ok=True) - if subset == "all": - for sub, val in subset_dict.items(): - print(f" > Downloading {sub}...") - download_url(val, path) - basename = os.path.basename(val) - archive = os.path.join(path, basename) - print(" > Extracting archive file...") - extract_archive(archive) - print(" > All subsets downloaded") - else: - url = subset_dict[subset] - download_url(url, path) - basename = os.path.basename(url) - archive = os.path.join(path, basename) - print(" > Extracting archive file...") - extract_archive(archive) - - -def download_thorsten_de(path: str): - """Download and extract Thorsten german male voice dataset. - - Args: - path (str): Path to the directory where the dataset will be stored. - """ - os.makedirs(path, exist_ok=True) - url = "https://www.openslr.org/resources/95/thorsten-de_v02.tgz" - download_url(url, path) - basename = os.path.basename(url) - archive = os.path.join(path, basename) - print(" > Extracting archive file...") - extract_archive(archive) - - -def download_mailabs(path: str, language: str = "english"): - """Download and extract Mailabs dataset. - - Args: - path (str): Path to the directory where the dataset will be stored. - - language (str): Language subset to download. Defaults to english. - """ - language_dict = { - "english": "https://data.solak.de/data/Training/stt_tts/en_US.tgz", - "german": "https://data.solak.de/data/Training/stt_tts/de_DE.tgz", - "french": "https://data.solak.de/data/Training/stt_tts/fr_FR.tgz", - "italian": "https://data.solak.de/data/Training/stt_tts/it_IT.tgz", - "spanish": "https://data.solak.de/data/Training/stt_tts/es_ES.tgz", - } - os.makedirs(path, exist_ok=True) - url = language_dict[language] - download_url(url, path) - basename = os.path.basename(url) - archive = os.path.join(path, basename) - print(" > Extracting archive file...") - extract_archive(archive) diff --git a/TTS/TTS/utils/generic_utils.py b/TTS/TTS/utils/generic_utils.py deleted file mode 100644 index f8a11ac53531df4516c066701ed2fd09412f48a1..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/generic_utils.py +++ /dev/null @@ -1,221 +0,0 @@ -# -*- coding: utf-8 -*- -import datetime -import importlib -import os -import re -import subprocess -import sys -from pathlib import Path -from typing import Dict - -import fsspec -import torch - - -def to_cuda(x: torch.Tensor) -> torch.Tensor: - if x is None: - return None - if torch.is_tensor(x): - x = x.contiguous() - if torch.cuda.is_available(): - x = x.cuda(non_blocking=True) - return x - - -def get_cuda(): - use_cuda = torch.cuda.is_available() - device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") - return use_cuda, device - - -def get_git_branch(): - try: - out = subprocess.check_output(["git", "branch"]).decode("utf8") - current = next(line for line in out.split("\n") if line.startswith("*")) - current.replace("* ", "") - except subprocess.CalledProcessError: - current = "inside_docker" - except FileNotFoundError: - current = "unknown" - except StopIteration: - current = "unknown" - return current - - -def get_commit_hash(): - """https://stackoverflow.com/questions/14989858/get-the-current-git-hash-in-a-python-script""" - # try: - # subprocess.check_output(['git', 'diff-index', '--quiet', - # 'HEAD']) # Verify client is clean - # except: - # raise RuntimeError( - # " !! Commit before training to get the commit hash.") - try: - commit = subprocess.check_output(["git", "rev-parse", "--short", "HEAD"]).decode().strip() - # Not copying .git folder into docker container - except (subprocess.CalledProcessError, FileNotFoundError): - commit = "0000000" - return commit - - -def get_experiment_folder_path(root_path, model_name): - """Get an experiment folder path with the current date and time""" - date_str = datetime.datetime.now().strftime("%B-%d-%Y_%I+%M%p") - commit_hash = get_commit_hash() - output_folder = os.path.join(root_path, model_name + "-" + date_str + "-" + commit_hash) - return output_folder - - -def remove_experiment_folder(experiment_path): - """Check folder if there is a checkpoint, otherwise remove the folder""" - fs = fsspec.get_mapper(experiment_path).fs - checkpoint_files = fs.glob(experiment_path + "/*.pth") - if not checkpoint_files: - if fs.exists(experiment_path): - fs.rm(experiment_path, recursive=True) - print(" ! Run is removed from {}".format(experiment_path)) - else: - print(" ! Run is kept in {}".format(experiment_path)) - - -def count_parameters(model): - r"""Count number of trainable parameters in a network""" - return sum(p.numel() for p in model.parameters() if p.requires_grad) - - -def to_camel(text): - text = text.capitalize() - text = re.sub(r"(?!^)_([a-zA-Z])", lambda m: m.group(1).upper(), text) - text = text.replace("Tts", "TTS") - text = text.replace("vc", "VC") - return text - - -def find_module(module_path: str, module_name: str) -> object: - module_name = module_name.lower() - module = importlib.import_module(module_path + "." + module_name) - class_name = to_camel(module_name) - return getattr(module, class_name) - - -def import_class(module_path: str) -> object: - """Import a class from a module path. - - Args: - module_path (str): The module path of the class. - - Returns: - object: The imported class. - """ - class_name = module_path.split(".")[-1] - module_path = ".".join(module_path.split(".")[:-1]) - module = importlib.import_module(module_path) - return getattr(module, class_name) - - -def get_import_path(obj: object) -> str: - """Get the import path of a class. - - Args: - obj (object): The class object. - - Returns: - str: The import path of the class. - """ - return ".".join([type(obj).__module__, type(obj).__name__]) - - -def get_user_data_dir(appname): - TTS_HOME = os.environ.get("TTS_HOME") - XDG_DATA_HOME = os.environ.get("XDG_DATA_HOME") - if TTS_HOME is not None: - ans = Path(TTS_HOME).expanduser().resolve(strict=False) - elif XDG_DATA_HOME is not None: - ans = Path(XDG_DATA_HOME).expanduser().resolve(strict=False) - elif sys.platform == "win32": - import winreg # pylint: disable=import-outside-toplevel - - key = winreg.OpenKey( - winreg.HKEY_CURRENT_USER, r"Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" - ) - dir_, _ = winreg.QueryValueEx(key, "Local AppData") - ans = Path(dir_).resolve(strict=False) - elif sys.platform == "darwin": - ans = Path("~/Library/Application Support/").expanduser() - else: - ans = Path.home().joinpath(".local/share") - return ans.joinpath(appname) - - -def set_init_dict(model_dict, checkpoint_state, c): - # Partial initialization: if there is a mismatch with new and old layer, it is skipped. - for k, v in checkpoint_state.items(): - if k not in model_dict: - print(" | > Layer missing in the model definition: {}".format(k)) - # 1. filter out unnecessary keys - pretrained_dict = {k: v for k, v in checkpoint_state.items() if k in model_dict} - # 2. filter out different size layers - pretrained_dict = {k: v for k, v in pretrained_dict.items() if v.numel() == model_dict[k].numel()} - # 3. skip reinit layers - if c.has("reinit_layers") and c.reinit_layers is not None: - for reinit_layer_name in c.reinit_layers: - pretrained_dict = {k: v for k, v in pretrained_dict.items() if reinit_layer_name not in k} - # 4. overwrite entries in the existing state dict - model_dict.update(pretrained_dict) - print(" | > {} / {} layers are restored.".format(len(pretrained_dict), len(model_dict))) - return model_dict - - -def format_aux_input(def_args: Dict, kwargs: Dict) -> Dict: - """Format kwargs to hande auxilary inputs to models. - - Args: - def_args (Dict): A dictionary of argument names and their default values if not defined in `kwargs`. - kwargs (Dict): A `dict` or `kwargs` that includes auxilary inputs to the model. - - Returns: - Dict: arguments with formatted auxilary inputs. - """ - kwargs = kwargs.copy() - for name in def_args: - if name not in kwargs or kwargs[name] is None: - kwargs[name] = def_args[name] - return kwargs - - -class KeepAverage: - def __init__(self): - self.avg_values = {} - self.iters = {} - - def __getitem__(self, key): - return self.avg_values[key] - - def items(self): - return self.avg_values.items() - - def add_value(self, name, init_val=0, init_iter=0): - self.avg_values[name] = init_val - self.iters[name] = init_iter - - def update_value(self, name, value, weighted_avg=False): - if name not in self.avg_values: - # add value if not exist before - self.add_value(name, init_val=value) - else: - # else update existing value - if weighted_avg: - self.avg_values[name] = 0.99 * self.avg_values[name] + 0.01 * value - self.iters[name] += 1 - else: - self.avg_values[name] = self.avg_values[name] * self.iters[name] + value - self.iters[name] += 1 - self.avg_values[name] /= self.iters[name] - - def add_values(self, name_dict): - for key, value in name_dict.items(): - self.add_value(key, init_val=value) - - def update_values(self, value_dict): - for key, value in value_dict.items(): - self.update_value(key, value) diff --git a/TTS/TTS/utils/io.py b/TTS/TTS/utils/io.py deleted file mode 100644 index e9bdf3e68620052c15f7f5b2d0c00c8ad426f85f..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/io.py +++ /dev/null @@ -1,216 +0,0 @@ -import datetime -import json -import os -import pickle as pickle_tts -import shutil -from typing import Any, Callable, Dict, Union - -import fsspec -import torch -from coqpit import Coqpit - -from TTS.utils.generic_utils import get_user_data_dir - - -class RenamingUnpickler(pickle_tts.Unpickler): - """Overload default pickler to solve module renaming problem""" - - def find_class(self, module, name): - return super().find_class(module.replace("mozilla_voice_tts", "TTS"), name) - - -class AttrDict(dict): - """A custom dict which converts dict keys - to class attributes""" - - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - self.__dict__ = self - - -def copy_model_files(config: Coqpit, out_path, new_fields=None): - """Copy config.json and other model files to training folder and add - new fields. - - Args: - config (Coqpit): Coqpit config defining the training run. - out_path (str): output path to copy the file. - new_fields (dict): new fileds to be added or edited - in the config file. - """ - copy_config_path = os.path.join(out_path, "config.json") - # add extra information fields - if new_fields: - config.update(new_fields, allow_new=True) - # TODO: Revert to config.save_json() once Coqpit supports arbitrary paths. - with fsspec.open(copy_config_path, "w", encoding="utf8") as f: - json.dump(config.to_dict(), f, indent=4) - - # copy model stats file if available - if config.audio.stats_path is not None: - copy_stats_path = os.path.join(out_path, "scale_stats.npy") - filesystem = fsspec.get_mapper(copy_stats_path).fs - if not filesystem.exists(copy_stats_path): - with fsspec.open(config.audio.stats_path, "rb") as source_file: - with fsspec.open(copy_stats_path, "wb") as target_file: - shutil.copyfileobj(source_file, target_file) - - -def load_fsspec( - path: str, - map_location: Union[str, Callable, torch.device, Dict[Union[str, torch.device], Union[str, torch.device]]] = None, - cache: bool = True, - **kwargs, -) -> Any: - """Like torch.load but can load from other locations (e.g. s3:// , gs://). - - Args: - path: Any path or url supported by fsspec. - map_location: torch.device or str. - cache: If True, cache a remote file locally for subsequent calls. It is cached under `get_user_data_dir()/tts_cache`. Defaults to True. - **kwargs: Keyword arguments forwarded to torch.load. - - Returns: - Object stored in path. - """ - is_local = os.path.isdir(path) or os.path.isfile(path) - if cache and not is_local: - with fsspec.open( - f"filecache::{path}", - filecache={"cache_storage": str(get_user_data_dir("tts_cache"))}, - mode="rb", - ) as f: - return torch.load(f, map_location=map_location, **kwargs) - else: - with fsspec.open(path, "rb") as f: - return torch.load(f, map_location=map_location, **kwargs) - - -def load_checkpoint( - model, checkpoint_path, use_cuda=False, eval=False, cache=False -): # pylint: disable=redefined-builtin - try: - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - except ModuleNotFoundError: - pickle_tts.Unpickler = RenamingUnpickler - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), pickle_module=pickle_tts, cache=cache) - model.load_state_dict(state["model"]) - if use_cuda: - model.cuda() - if eval: - model.eval() - return model, state - - -def save_fsspec(state: Any, path: str, **kwargs): - """Like torch.save but can save to other locations (e.g. s3:// , gs://). - - Args: - state: State object to save - path: Any path or url supported by fsspec. - **kwargs: Keyword arguments forwarded to torch.save. - """ - with fsspec.open(path, "wb") as f: - torch.save(state, f, **kwargs) - - -def save_model(config, model, optimizer, scaler, current_step, epoch, output_path, **kwargs): - if hasattr(model, "module"): - model_state = model.module.state_dict() - else: - model_state = model.state_dict() - if isinstance(optimizer, list): - optimizer_state = [optim.state_dict() for optim in optimizer] - elif optimizer.__class__.__name__ == "CapacitronOptimizer": - optimizer_state = [optimizer.primary_optimizer.state_dict(), optimizer.secondary_optimizer.state_dict()] - else: - optimizer_state = optimizer.state_dict() if optimizer is not None else None - - if isinstance(scaler, list): - scaler_state = [s.state_dict() for s in scaler] - else: - scaler_state = scaler.state_dict() if scaler is not None else None - - if isinstance(config, Coqpit): - config = config.to_dict() - - state = { - "config": config, - "model": model_state, - "optimizer": optimizer_state, - "scaler": scaler_state, - "step": current_step, - "epoch": epoch, - "date": datetime.date.today().strftime("%B %d, %Y"), - } - state.update(kwargs) - save_fsspec(state, output_path) - - -def save_checkpoint( - config, - model, - optimizer, - scaler, - current_step, - epoch, - output_folder, - **kwargs, -): - file_name = "checkpoint_{}.pth".format(current_step) - checkpoint_path = os.path.join(output_folder, file_name) - print("\n > CHECKPOINT : {}".format(checkpoint_path)) - save_model( - config, - model, - optimizer, - scaler, - current_step, - epoch, - checkpoint_path, - **kwargs, - ) - - -def save_best_model( - current_loss, - best_loss, - config, - model, - optimizer, - scaler, - current_step, - epoch, - out_path, - keep_all_best=False, - keep_after=10000, - **kwargs, -): - if current_loss < best_loss: - best_model_name = f"best_model_{current_step}.pth" - checkpoint_path = os.path.join(out_path, best_model_name) - print(" > BEST MODEL : {}".format(checkpoint_path)) - save_model( - config, - model, - optimizer, - scaler, - current_step, - epoch, - checkpoint_path, - model_loss=current_loss, - **kwargs, - ) - fs = fsspec.get_mapper(out_path).fs - # only delete previous if current is saved successfully - if not keep_all_best or (current_step < keep_after): - model_names = fs.glob(os.path.join(out_path, "best_model*.pth")) - for model_name in model_names: - if os.path.basename(model_name) != best_model_name: - fs.rm(model_name) - # create a shortcut which always points to the currently best model - shortcut_name = "best_model.pth" - shortcut_path = os.path.join(out_path, shortcut_name) - fs.copy(checkpoint_path, shortcut_path) - best_loss = current_loss - return best_loss diff --git a/TTS/TTS/utils/manage.py b/TTS/TTS/utils/manage.py deleted file mode 100644 index d6fbfb16248f8a884cc1ed7e9cfbabff407c1437..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/manage.py +++ /dev/null @@ -1,538 +0,0 @@ -import json -import os -import tarfile -import zipfile -from pathlib import Path -from shutil import copyfile, rmtree -from typing import Dict, List, Tuple - -import requests -from tqdm import tqdm - -from TTS.config import load_config -from TTS.utils.generic_utils import get_user_data_dir - -LICENSE_URLS = { - "cc by-nc-nd 4.0": "https://creativecommons.org/licenses/by-nc-nd/4.0/", - "mpl": "https://www.mozilla.org/en-US/MPL/2.0/", - "mpl2": "https://www.mozilla.org/en-US/MPL/2.0/", - "mpl 2.0": "https://www.mozilla.org/en-US/MPL/2.0/", - "mit": "https://choosealicense.com/licenses/mit/", - "apache 2.0": "https://choosealicense.com/licenses/apache-2.0/", - "apache2": "https://choosealicense.com/licenses/apache-2.0/", - "cc-by-sa 4.0": "https://creativecommons.org/licenses/by-sa/4.0/", -} - - -class ModelManager(object): - """Manage TTS models defined in .models.json. - It provides an interface to list and download - models defines in '.model.json' - - Models are downloaded under '.TTS' folder in the user's - home path. - - Args: - models_file (str): path to .model.json file. Defaults to None. - output_prefix (str): prefix to `tts` to download models. Defaults to None - progress_bar (bool): print a progress bar when donwloading a file. Defaults to False. - verbose (bool): print info. Defaults to True. - """ - - def __init__(self, models_file=None, output_prefix=None, progress_bar=False, verbose=True): - super().__init__() - self.progress_bar = progress_bar - self.verbose = verbose - if output_prefix is None: - self.output_prefix = get_user_data_dir("tts") - else: - self.output_prefix = os.path.join(output_prefix, "tts") - self.models_dict = None - if models_file is not None: - self.read_models_file(models_file) - else: - # try the default location - path = Path(__file__).parent / "../.models.json" - self.read_models_file(path) - - def read_models_file(self, file_path): - """Read .models.json as a dict - - Args: - file_path (str): path to .models.json. - """ - with open(file_path, "r", encoding="utf-8") as json_file: - self.models_dict = json.load(json_file) - - def add_cs_api_models(self, model_list: List[str]): - """Add list of Coqui Studio model names that are returned from the api - - Each has the following format `/en//` - """ - - def _add_model(model_name: str): - if not "coqui_studio" in model_name: - return - model_type, lang, dataset, model = model_name.split("/") - if model_type not in self.models_dict: - self.models_dict[model_type] = {} - if lang not in self.models_dict[model_type]: - self.models_dict[model_type][lang] = {} - if dataset not in self.models_dict[model_type][lang]: - self.models_dict[model_type][lang][dataset] = {} - if model not in self.models_dict[model_type][lang][dataset]: - self.models_dict[model_type][lang][dataset][model] = {} - - for model_name in model_list: - _add_model(model_name) - - def _list_models(self, model_type, model_count=0): - if self.verbose: - print("\n Name format: type/language/dataset/model") - model_list = [] - for lang in self.models_dict[model_type]: - for dataset in self.models_dict[model_type][lang]: - for model in self.models_dict[model_type][lang][dataset]: - model_full_name = f"{model_type}--{lang}--{dataset}--{model}" - output_path = os.path.join(self.output_prefix, model_full_name) - if self.verbose: - if os.path.exists(output_path): - print(f" {model_count}: {model_type}/{lang}/{dataset}/{model} [already downloaded]") - else: - print(f" {model_count}: {model_type}/{lang}/{dataset}/{model}") - model_list.append(f"{model_type}/{lang}/{dataset}/{model}") - model_count += 1 - return model_list - - def _list_for_model_type(self, model_type): - models_name_list = [] - model_count = 1 - model_type = "tts_models" - models_name_list.extend(self._list_models(model_type, model_count)) - return models_name_list - - def list_models(self): - models_name_list = [] - model_count = 1 - for model_type in self.models_dict: - model_list = self._list_models(model_type, model_count) - models_name_list.extend(model_list) - return models_name_list - - def model_info_by_idx(self, model_query): - """Print the description of the model from .models.json file using model_idx - - Args: - model_query (str): / - """ - model_name_list = [] - model_type, model_query_idx = model_query.split("/") - try: - model_query_idx = int(model_query_idx) - if model_query_idx <= 0: - print("> model_query_idx should be a positive integer!") - return - except: - print("> model_query_idx should be an integer!") - return - model_count = 0 - if model_type in self.models_dict: - for lang in self.models_dict[model_type]: - for dataset in self.models_dict[model_type][lang]: - for model in self.models_dict[model_type][lang][dataset]: - model_name_list.append(f"{model_type}/{lang}/{dataset}/{model}") - model_count += 1 - else: - print(f"> model_type {model_type} does not exist in the list.") - return - if model_query_idx > model_count: - print(f"model query idx exceeds the number of available models [{model_count}] ") - else: - model_type, lang, dataset, model = model_name_list[model_query_idx - 1].split("/") - print(f"> model type : {model_type}") - print(f"> language supported : {lang}") - print(f"> dataset used : {dataset}") - print(f"> model name : {model}") - if "description" in self.models_dict[model_type][lang][dataset][model]: - print(f"> description : {self.models_dict[model_type][lang][dataset][model]['description']}") - else: - print("> description : coming soon") - if "default_vocoder" in self.models_dict[model_type][lang][dataset][model]: - print(f"> default_vocoder : {self.models_dict[model_type][lang][dataset][model]['default_vocoder']}") - - def model_info_by_full_name(self, model_query_name): - """Print the description of the model from .models.json file using model_full_name - - Args: - model_query_name (str): Format is /// - """ - model_type, lang, dataset, model = model_query_name.split("/") - if model_type in self.models_dict: - if lang in self.models_dict[model_type]: - if dataset in self.models_dict[model_type][lang]: - if model in self.models_dict[model_type][lang][dataset]: - print(f"> model type : {model_type}") - print(f"> language supported : {lang}") - print(f"> dataset used : {dataset}") - print(f"> model name : {model}") - if "description" in self.models_dict[model_type][lang][dataset][model]: - print( - f"> description : {self.models_dict[model_type][lang][dataset][model]['description']}" - ) - else: - print("> description : coming soon") - if "default_vocoder" in self.models_dict[model_type][lang][dataset][model]: - print( - f"> default_vocoder : {self.models_dict[model_type][lang][dataset][model]['default_vocoder']}" - ) - else: - print(f"> model {model} does not exist for {model_type}/{lang}/{dataset}.") - else: - print(f"> dataset {dataset} does not exist for {model_type}/{lang}.") - else: - print(f"> lang {lang} does not exist for {model_type}.") - else: - print(f"> model_type {model_type} does not exist in the list.") - - def list_tts_models(self): - """Print all `TTS` models and return a list of model names - - Format is `language/dataset/model` - """ - return self._list_for_model_type("tts_models") - - def list_vocoder_models(self): - """Print all the `vocoder` models and return a list of model names - - Format is `language/dataset/model` - """ - return self._list_for_model_type("vocoder_models") - - def list_vc_models(self): - """Print all the voice conversion models and return a list of model names - - Format is `language/dataset/model` - """ - return self._list_for_model_type("voice_conversion_models") - - def list_langs(self): - """Print all the available languages""" - print(" Name format: type/language") - for model_type in self.models_dict: - for lang in self.models_dict[model_type]: - print(f" >: {model_type}/{lang} ") - - def list_datasets(self): - """Print all the datasets""" - print(" Name format: type/language/dataset") - for model_type in self.models_dict: - for lang in self.models_dict[model_type]: - for dataset in self.models_dict[model_type][lang]: - print(f" >: {model_type}/{lang}/{dataset}") - - @staticmethod - def print_model_license(model_item: Dict): - """Print the license of a model - - Args: - model_item (dict): model item in the models.json - """ - if "license" in model_item and model_item["license"].strip() != "": - print(f" > Model's license - {model_item['license']}") - if model_item["license"].lower() in LICENSE_URLS: - print(f" > Check {LICENSE_URLS[model_item['license'].lower()]} for more info.") - else: - print(" > Check https://opensource.org/licenses for more info.") - else: - print(" > Model's license - No license information available") - - def _download_github_model(self, model_item: Dict, output_path: str): - if isinstance(model_item["github_rls_url"], list): - self._download_model_files(model_item["github_rls_url"], output_path, self.progress_bar) - else: - self._download_zip_file(model_item["github_rls_url"], output_path, self.progress_bar) - - def _download_hf_model(self, model_item: Dict, output_path: str): - if isinstance(model_item["hf_url"], list): - self._download_model_files(model_item["hf_url"], output_path, self.progress_bar) - else: - self._download_zip_file(model_item["hf_url"], output_path, self.progress_bar) - - def download_fairseq_model(self, model_name, output_path): - URI_PREFIX = "https://coqui.gateway.scarf.sh/fairseq/" - _, lang, _, _ = model_name.split("/") - model_download_uri = os.path.join(URI_PREFIX, f"{lang}.tar.gz") - self._download_tar_file(model_download_uri, output_path, self.progress_bar) - - @staticmethod - def set_model_url(model_item: Dict): - model_item["model_url"] = None - if "github_rls_url" in model_item: - model_item["model_url"] = model_item["github_rls_url"] - elif "hf_url" in model_item: - model_item["model_url"] = model_item["hf_url"] - elif "fairseq" in model_item["model_name"]: - model_item["model_url"] = "https://coqui.gateway.scarf.sh/fairseq/" - return model_item - - def _set_model_item(self, model_name): - # fetch model info from the dict - model_type, lang, dataset, model = model_name.split("/") - model_full_name = f"{model_type}--{lang}--{dataset}--{model}" - if "fairseq" in model_name: - model_item = { - "model_type": "tts_models", - "license": "CC BY-NC 4.0", - "default_vocoder": None, - "author": "fairseq", - "description": "this model is released by Meta under Fairseq repo. Visit https://github.com/facebookresearch/fairseq/tree/main/examples/mms for more info.", - } - model_item["model_name"] = model_name - else: - # get model from models.json - model_item = self.models_dict[model_type][lang][dataset][model] - model_item["model_type"] = model_type - model_item = self.set_model_url(model_item) - return model_item, model_full_name, model - - def download_model(self, model_name): - """Download model files given the full model name. - Model name is in the format - 'type/language/dataset/model' - e.g. 'tts_model/en/ljspeech/tacotron' - - Every model must have the following files: - - *.pth : pytorch model checkpoint file. - - config.json : model config file. - - scale_stats.npy (if exist): scale values for preprocessing. - - Args: - model_name (str): model name as explained above. - """ - model_item, model_full_name, model = self._set_model_item(model_name) - # set the model specific output path - output_path = os.path.join(self.output_prefix, model_full_name) - if os.path.exists(output_path): - print(f" > {model_name} is already downloaded.") - else: - os.makedirs(output_path, exist_ok=True) - print(f" > Downloading model to {output_path}") - try: - if "fairseq" in model_name: - self.download_fairseq_model(model_name, output_path) - elif "github_rls_url" in model_item: - self._download_github_model(model_item, output_path) - elif "hf_url" in model_item: - self._download_hf_model(model_item, output_path) - - except requests.Exception.RequestException as e: - print(f" > Failed to download the model file to {output_path}") - rmtree(output_path) - raise e - self.print_model_license(model_item=model_item) - # find downloaded files - output_model_path = output_path - output_config_path = None - if ( - model not in ["tortoise-v2", "bark"] and "fairseq" not in model_name - ): # TODO:This is stupid but don't care for now. - output_model_path, output_config_path = self._find_files(output_path) - # update paths in the config.json - self._update_paths(output_path, output_config_path) - return output_model_path, output_config_path, model_item - - @staticmethod - def _find_files(output_path: str) -> Tuple[str, str]: - """Find the model and config files in the output path - - Args: - output_path (str): path to the model files - - Returns: - Tuple[str, str]: path to the model file and config file - """ - model_file = None - config_file = None - for file_name in os.listdir(output_path): - if file_name in ["model_file.pth", "model_file.pth.tar", "model.pth"]: - model_file = os.path.join(output_path, file_name) - elif file_name == "config.json": - config_file = os.path.join(output_path, file_name) - if model_file is None: - raise ValueError(" [!] Model file not found in the output path") - if config_file is None: - raise ValueError(" [!] Config file not found in the output path") - return model_file, config_file - - @staticmethod - def _find_speaker_encoder(output_path: str) -> str: - """Find the speaker encoder file in the output path - - Args: - output_path (str): path to the model files - - Returns: - str: path to the speaker encoder file - """ - speaker_encoder_file = None - for file_name in os.listdir(output_path): - if file_name in ["model_se.pth", "model_se.pth.tar"]: - speaker_encoder_file = os.path.join(output_path, file_name) - return speaker_encoder_file - - def _update_paths(self, output_path: str, config_path: str) -> None: - """Update paths for certain files in config.json after download. - - Args: - output_path (str): local path the model is downloaded to. - config_path (str): local config.json path. - """ - output_stats_path = os.path.join(output_path, "scale_stats.npy") - output_d_vector_file_path = os.path.join(output_path, "speakers.json") - output_d_vector_file_pth_path = os.path.join(output_path, "speakers.pth") - output_speaker_ids_file_path = os.path.join(output_path, "speaker_ids.json") - output_speaker_ids_file_pth_path = os.path.join(output_path, "speaker_ids.pth") - speaker_encoder_config_path = os.path.join(output_path, "config_se.json") - speaker_encoder_model_path = self._find_speaker_encoder(output_path) - - # update the scale_path.npy file path in the model config.json - self._update_path("audio.stats_path", output_stats_path, config_path) - - # update the speakers.json file path in the model config.json to the current path - self._update_path("d_vector_file", output_d_vector_file_path, config_path) - self._update_path("d_vector_file", output_d_vector_file_pth_path, config_path) - self._update_path("model_args.d_vector_file", output_d_vector_file_path, config_path) - self._update_path("model_args.d_vector_file", output_d_vector_file_pth_path, config_path) - - # update the speaker_ids.json file path in the model config.json to the current path - self._update_path("speakers_file", output_speaker_ids_file_path, config_path) - self._update_path("speakers_file", output_speaker_ids_file_pth_path, config_path) - self._update_path("model_args.speakers_file", output_speaker_ids_file_path, config_path) - self._update_path("model_args.speakers_file", output_speaker_ids_file_pth_path, config_path) - - # update the speaker_encoder file path in the model config.json to the current path - self._update_path("speaker_encoder_model_path", speaker_encoder_model_path, config_path) - self._update_path("model_args.speaker_encoder_model_path", speaker_encoder_model_path, config_path) - self._update_path("speaker_encoder_config_path", speaker_encoder_config_path, config_path) - self._update_path("model_args.speaker_encoder_config_path", speaker_encoder_config_path, config_path) - - @staticmethod - def _update_path(field_name, new_path, config_path): - """Update the path in the model config.json for the current environment after download""" - if new_path and os.path.exists(new_path): - config = load_config(config_path) - field_names = field_name.split(".") - if len(field_names) > 1: - # field name points to a sub-level field - sub_conf = config - for fd in field_names[:-1]: - if fd in sub_conf: - sub_conf = sub_conf[fd] - else: - return - if isinstance(sub_conf[field_names[-1]], list): - sub_conf[field_names[-1]] = [new_path] - else: - sub_conf[field_names[-1]] = new_path - else: - # field name points to a top-level field - if not field_name in config: - return - if isinstance(config[field_name], list): - config[field_name] = [new_path] - else: - config[field_name] = new_path - config.save_json(config_path) - - @staticmethod - def _download_zip_file(file_url, output_folder, progress_bar): - """Download the github releases""" - # download the file - r = requests.get(file_url, stream=True) - # extract the file - try: - total_size_in_bytes = int(r.headers.get("content-length", 0)) - block_size = 1024 # 1 Kibibyte - if progress_bar: - progress_bar = tqdm(total=total_size_in_bytes, unit="iB", unit_scale=True) - temp_zip_name = os.path.join(output_folder, file_url.split("/")[-1]) - with open(temp_zip_name, "wb") as file: - for data in r.iter_content(block_size): - if progress_bar: - progress_bar.update(len(data)) - file.write(data) - with zipfile.ZipFile(temp_zip_name) as z: - z.extractall(output_folder) - os.remove(temp_zip_name) # delete zip after extract - except zipfile.BadZipFile: - print(f" > Error: Bad zip file - {file_url}") - raise zipfile.BadZipFile # pylint: disable=raise-missing-from - # move the files to the outer path - for file_path in z.namelist()[1:]: - src_path = os.path.join(output_folder, file_path) - dst_path = os.path.join(output_folder, os.path.basename(file_path)) - if src_path != dst_path: - copyfile(src_path, dst_path) - # remove the extracted folder - rmtree(os.path.join(output_folder, z.namelist()[0])) - - @staticmethod - def _download_tar_file(file_url, output_folder, progress_bar): - """Download the github releases""" - # download the file - r = requests.get(file_url, stream=True) - # extract the file - try: - total_size_in_bytes = int(r.headers.get("content-length", 0)) - block_size = 1024 # 1 Kibibyte - if progress_bar: - progress_bar = tqdm(total=total_size_in_bytes, unit="iB", unit_scale=True) - temp_tar_name = os.path.join(output_folder, file_url.split("/")[-1]) - with open(temp_tar_name, "wb") as file: - for data in r.iter_content(block_size): - if progress_bar: - progress_bar.update(len(data)) - file.write(data) - with tarfile.open(temp_tar_name) as t: - t.extractall(output_folder) - tar_names = t.getnames() - os.remove(temp_tar_name) # delete tar after extract - except tarfile.ReadError: - print(f" > Error: Bad tar file - {file_url}") - raise tarfile.ReadError # pylint: disable=raise-missing-from - # move the files to the outer path - for file_path in os.listdir(os.path.join(output_folder, tar_names[0])): - src_path = os.path.join(output_folder, tar_names[0], file_path) - dst_path = os.path.join(output_folder, os.path.basename(file_path)) - if src_path != dst_path: - copyfile(src_path, dst_path) - # remove the extracted folder - rmtree(os.path.join(output_folder, tar_names[0])) - - @staticmethod - def _download_model_files(file_urls, output_folder, progress_bar): - """Download the github releases""" - for file_url in file_urls: - # download the file - r = requests.get(file_url, stream=True) - # extract the file - bease_filename = file_url.split("/")[-1] - temp_zip_name = os.path.join(output_folder, bease_filename) - total_size_in_bytes = int(r.headers.get("content-length", 0)) - block_size = 1024 # 1 Kibibyte - with open(temp_zip_name, "wb") as file: - if progress_bar: - progress_bar = tqdm(total=total_size_in_bytes, unit="iB", unit_scale=True) - for data in r.iter_content(block_size): - if progress_bar: - progress_bar.update(len(data)) - file.write(data) - - @staticmethod - def _check_dict_key(my_dict, key): - if key in my_dict.keys() and my_dict[key] is not None: - if not isinstance(key, str): - return True - if isinstance(key, str) and len(my_dict[key]) > 0: - return True - return False diff --git a/TTS/TTS/utils/radam.py b/TTS/TTS/utils/radam.py deleted file mode 100644 index cbd14990f33cb671f030e401a3a2f9b96c2710cd..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/radam.py +++ /dev/null @@ -1,105 +0,0 @@ -# modified from https://github.com/LiyuanLucasLiu/RAdam - -import math - -import torch -from torch.optim.optimizer import Optimizer - - -class RAdam(Optimizer): - def __init__(self, params, lr=1e-3, betas=(0.9, 0.999), eps=1e-8, weight_decay=0, degenerated_to_sgd=True): - if lr < 0.0: - raise ValueError("Invalid learning rate: {}".format(lr)) - if eps < 0.0: - raise ValueError("Invalid epsilon value: {}".format(eps)) - if not 0.0 <= betas[0] < 1.0: - raise ValueError("Invalid beta parameter at index 0: {}".format(betas[0])) - if not 0.0 <= betas[1] < 1.0: - raise ValueError("Invalid beta parameter at index 1: {}".format(betas[1])) - - self.degenerated_to_sgd = degenerated_to_sgd - if isinstance(params, (list, tuple)) and len(params) > 0 and isinstance(params[0], dict): - for param in params: - if "betas" in param and (param["betas"][0] != betas[0] or param["betas"][1] != betas[1]): - param["buffer"] = [[None, None, None] for _ in range(10)] - defaults = dict( - lr=lr, betas=betas, eps=eps, weight_decay=weight_decay, buffer=[[None, None, None] for _ in range(10)] - ) - super().__init__(params, defaults) - - def __setstate__(self, state): # pylint: disable=useless-super-delegation - super().__setstate__(state) - - def step(self, closure=None): - loss = None - if closure is not None: - loss = closure() - - for group in self.param_groups: - for p in group["params"]: - if p.grad is None: - continue - grad = p.grad.data.float() - if grad.is_sparse: - raise RuntimeError("RAdam does not support sparse gradients") - - p_data_fp32 = p.data.float() - - state = self.state[p] - - if len(state) == 0: - state["step"] = 0 - state["exp_avg"] = torch.zeros_like(p_data_fp32) - state["exp_avg_sq"] = torch.zeros_like(p_data_fp32) - else: - state["exp_avg"] = state["exp_avg"].type_as(p_data_fp32) - state["exp_avg_sq"] = state["exp_avg_sq"].type_as(p_data_fp32) - - exp_avg, exp_avg_sq = state["exp_avg"], state["exp_avg_sq"] - beta1, beta2 = group["betas"] - - exp_avg_sq.mul_(beta2).addcmul_(grad, grad, value=1 - beta2) - exp_avg.mul_(beta1).add_(grad, alpha=1 - beta1) - - state["step"] += 1 - buffered = group["buffer"][int(state["step"] % 10)] - if state["step"] == buffered[0]: - N_sma, step_size = buffered[1], buffered[2] - else: - buffered[0] = state["step"] - beta2_t = beta2 ** state["step"] - N_sma_max = 2 / (1 - beta2) - 1 - N_sma = N_sma_max - 2 * state["step"] * beta2_t / (1 - beta2_t) - buffered[1] = N_sma - - # more conservative since it's an approximated value - if N_sma >= 5: - step_size = math.sqrt( - (1 - beta2_t) - * (N_sma - 4) - / (N_sma_max - 4) - * (N_sma - 2) - / N_sma - * N_sma_max - / (N_sma_max - 2) - ) / (1 - beta1 ** state["step"]) - elif self.degenerated_to_sgd: - step_size = 1.0 / (1 - beta1 ** state["step"]) - else: - step_size = -1 - buffered[2] = step_size - - # more conservative since it's an approximated value - if N_sma >= 5: - if group["weight_decay"] != 0: - p_data_fp32.add_(p_data_fp32, alpha=-group["weight_decay"] * group["lr"]) - denom = exp_avg_sq.sqrt().add_(group["eps"]) - p_data_fp32.addcdiv_(exp_avg, denom, value=-step_size * group["lr"]) - p.data.copy_(p_data_fp32) - elif step_size > 0: - if group["weight_decay"] != 0: - p_data_fp32.add_(p_data_fp32, alpha=-group["weight_decay"] * group["lr"]) - p_data_fp32.add_(exp_avg, alpha=-step_size * group["lr"]) - p.data.copy_(p_data_fp32) - - return loss diff --git a/TTS/TTS/utils/samplers.py b/TTS/TTS/utils/samplers.py deleted file mode 100644 index b08a763a33e40d00a32577e31ffc12b8e228bc46..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/samplers.py +++ /dev/null @@ -1,201 +0,0 @@ -import math -import random -from typing import Callable, List, Union - -from torch.utils.data.sampler import BatchSampler, Sampler, SubsetRandomSampler - - -class SubsetSampler(Sampler): - """ - Samples elements sequentially from a given list of indices. - - Args: - indices (list): a sequence of indices - """ - - def __init__(self, indices): - super().__init__(indices) - self.indices = indices - - def __iter__(self): - return (self.indices[i] for i in range(len(self.indices))) - - def __len__(self): - return len(self.indices) - - -class PerfectBatchSampler(Sampler): - """ - Samples a mini-batch of indices for a balanced class batching - - Args: - dataset_items(list): dataset items to sample from. - classes (list): list of classes of dataset_items to sample from. - batch_size (int): total number of samples to be sampled in a mini-batch. - num_gpus (int): number of GPU in the data parallel mode. - shuffle (bool): if True, samples randomly, otherwise samples sequentially. - drop_last (bool): if True, drops last incomplete batch. - """ - - def __init__( - self, - dataset_items, - classes, - batch_size, - num_classes_in_batch, - num_gpus=1, - shuffle=True, - drop_last=False, - label_key="class_name", - ): - super().__init__(dataset_items) - assert ( - batch_size % (num_classes_in_batch * num_gpus) == 0 - ), "Batch size must be divisible by number of classes times the number of data parallel devices (if enabled)." - - label_indices = {} - for idx, item in enumerate(dataset_items): - label = item[label_key] - if label not in label_indices.keys(): - label_indices[label] = [idx] - else: - label_indices[label].append(idx) - - if shuffle: - self._samplers = [SubsetRandomSampler(label_indices[key]) for key in classes] - else: - self._samplers = [SubsetSampler(label_indices[key]) for key in classes] - - self._batch_size = batch_size - self._drop_last = drop_last - self._dp_devices = num_gpus - self._num_classes_in_batch = num_classes_in_batch - - def __iter__(self): - batch = [] - if self._num_classes_in_batch != len(self._samplers): - valid_samplers_idx = random.sample(range(len(self._samplers)), self._num_classes_in_batch) - else: - valid_samplers_idx = None - - iters = [iter(s) for s in self._samplers] - done = False - - while True: - b = [] - for i, it in enumerate(iters): - if valid_samplers_idx is not None and i not in valid_samplers_idx: - continue - idx = next(it, None) - if idx is None: - done = True - break - b.append(idx) - if done: - break - batch += b - if len(batch) == self._batch_size: - yield batch - batch = [] - if valid_samplers_idx is not None: - valid_samplers_idx = random.sample(range(len(self._samplers)), self._num_classes_in_batch) - - if not self._drop_last: - if len(batch) > 0: - groups = len(batch) // self._num_classes_in_batch - if groups % self._dp_devices == 0: - yield batch - else: - batch = batch[: (groups // self._dp_devices) * self._dp_devices * self._num_classes_in_batch] - if len(batch) > 0: - yield batch - - def __len__(self): - class_batch_size = self._batch_size // self._num_classes_in_batch - return min(((len(s) + class_batch_size - 1) // class_batch_size) for s in self._samplers) - - -def identity(x): - return x - - -class SortedSampler(Sampler): - """Samples elements sequentially, always in the same order. - - Taken from https://github.com/PetrochukM/PyTorch-NLP - - Args: - data (iterable): Iterable data. - sort_key (callable): Specifies a function of one argument that is used to extract a - numerical comparison key from each list element. - - Example: - >>> list(SortedSampler(range(10), sort_key=lambda i: -i)) - [9, 8, 7, 6, 5, 4, 3, 2, 1, 0] - - """ - - def __init__(self, data, sort_key: Callable = identity): - super().__init__(data) - self.data = data - self.sort_key = sort_key - zip_ = [(i, self.sort_key(row)) for i, row in enumerate(self.data)] - zip_ = sorted(zip_, key=lambda r: r[1]) - self.sorted_indexes = [item[0] for item in zip_] - - def __iter__(self): - return iter(self.sorted_indexes) - - def __len__(self): - return len(self.data) - - -class BucketBatchSampler(BatchSampler): - """Bucket batch sampler - - Adapted from https://github.com/PetrochukM/PyTorch-NLP - - Args: - sampler (torch.data.utils.sampler.Sampler): - batch_size (int): Size of mini-batch. - drop_last (bool): If `True` the sampler will drop the last batch if its size would be less - than `batch_size`. - data (list): List of data samples. - sort_key (callable, optional): Callable to specify a comparison key for sorting. - bucket_size_multiplier (int, optional): Buckets are of size - `batch_size * bucket_size_multiplier`. - - Example: - >>> sampler = WeightedRandomSampler(weights, len(weights)) - >>> sampler = BucketBatchSampler(sampler, data=data_items, batch_size=32, drop_last=True) - """ - - def __init__( - self, - sampler, - data, - batch_size, - drop_last, - sort_key: Union[Callable, List] = identity, - bucket_size_multiplier=100, - ): - super().__init__(sampler, batch_size, drop_last) - self.data = data - self.sort_key = sort_key - _bucket_size = batch_size * bucket_size_multiplier - if hasattr(sampler, "__len__"): - _bucket_size = min(_bucket_size, len(sampler)) - self.bucket_sampler = BatchSampler(sampler, _bucket_size, False) - - def __iter__(self): - for idxs in self.bucket_sampler: - bucket_data = [self.data[idx] for idx in idxs] - sorted_sampler = SortedSampler(bucket_data, self.sort_key) - for batch_idx in SubsetRandomSampler(list(BatchSampler(sorted_sampler, self.batch_size, self.drop_last))): - sorted_idxs = [idxs[i] for i in batch_idx] - yield sorted_idxs - - def __len__(self): - if self.drop_last: - return len(self.sampler) // self.batch_size - return math.ceil(len(self.sampler) / self.batch_size) diff --git a/TTS/TTS/utils/synthesizer.py b/TTS/TTS/utils/synthesizer.py deleted file mode 100644 index fbae32162d95952b5d46c293855a1110e49f1923..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/synthesizer.py +++ /dev/null @@ -1,488 +0,0 @@ -import os -import time -from typing import List - -import numpy as np -import pysbd -import torch -from torch import nn - -from TTS.config import load_config -from TTS.tts.configs.vits_config import VitsConfig -from TTS.tts.models import setup_model as setup_tts_model -from TTS.tts.models.vits import Vits - -# pylint: disable=unused-wildcard-import -# pylint: disable=wildcard-import -from TTS.tts.utils.synthesis import synthesis, transfer_voice, trim_silence -from TTS.utils.audio import AudioProcessor -from TTS.utils.audio.numpy_transforms import save_wav -from TTS.vc.models import setup_model as setup_vc_model -from TTS.vocoder.models import setup_model as setup_vocoder_model -from TTS.vocoder.utils.generic_utils import interpolate_vocoder_input - - -class Synthesizer(nn.Module): - def __init__( - self, - tts_checkpoint: str = "", - tts_config_path: str = "", - tts_speakers_file: str = "", - tts_languages_file: str = "", - vocoder_checkpoint: str = "", - vocoder_config: str = "", - encoder_checkpoint: str = "", - encoder_config: str = "", - vc_checkpoint: str = "", - vc_config: str = "", - model_dir: str = "", - voice_dir: str = None, - use_cuda: bool = False, - ) -> None: - """General 🐸 TTS interface for inference. It takes a tts and a vocoder - model and synthesize speech from the provided text. - - The text is divided into a list of sentences using `pysbd` and synthesize - speech on each sentence separately. - - If you have certain special characters in your text, you need to handle - them before providing the text to Synthesizer. - - TODO: set the segmenter based on the source language - - Args: - tts_checkpoint (str, optional): path to the tts model file. - tts_config_path (str, optional): path to the tts config file. - vocoder_checkpoint (str, optional): path to the vocoder model file. Defaults to None. - vocoder_config (str, optional): path to the vocoder config file. Defaults to None. - encoder_checkpoint (str, optional): path to the speaker encoder model file. Defaults to `""`, - encoder_config (str, optional): path to the speaker encoder config file. Defaults to `""`, - vc_checkpoint (str, optional): path to the voice conversion model file. Defaults to `""`, - vc_config (str, optional): path to the voice conversion config file. Defaults to `""`, - use_cuda (bool, optional): enable/disable cuda. Defaults to False. - """ - super().__init__() - self.tts_checkpoint = tts_checkpoint - self.tts_config_path = tts_config_path - self.tts_speakers_file = tts_speakers_file - self.tts_languages_file = tts_languages_file - self.vocoder_checkpoint = vocoder_checkpoint - self.vocoder_config = vocoder_config - self.encoder_checkpoint = encoder_checkpoint - self.encoder_config = encoder_config - self.vc_checkpoint = vc_checkpoint - self.vc_config = vc_config - self.use_cuda = use_cuda - - self.tts_model = None - self.vocoder_model = None - self.vc_model = None - self.speaker_manager = None - self.tts_speakers = {} - self.language_manager = None - self.num_languages = 0 - self.tts_languages = {} - self.d_vector_dim = 0 - self.seg = self._get_segmenter("en") - self.use_cuda = use_cuda - self.voice_dir = voice_dir - if self.use_cuda: - assert torch.cuda.is_available(), "CUDA is not availabe on this machine." - - if tts_checkpoint: - self._load_tts(tts_checkpoint, tts_config_path, use_cuda) - self.output_sample_rate = self.tts_config.audio["sample_rate"] - - if vocoder_checkpoint: - self._load_vocoder(vocoder_checkpoint, vocoder_config, use_cuda) - self.output_sample_rate = self.vocoder_config.audio["sample_rate"] - - if vc_checkpoint: - self._load_vc(vc_checkpoint, vc_config, use_cuda) - self.output_sample_rate = self.vc_config.audio["output_sample_rate"] - - if model_dir: - if "fairseq" in model_dir: - self._load_fairseq_from_dir(model_dir, use_cuda) - self.output_sample_rate = self.tts_config.audio["sample_rate"] - else: - self._load_tts_from_dir(model_dir, use_cuda) - self.output_sample_rate = self.tts_config.audio["output_sample_rate"] - - @staticmethod - def _get_segmenter(lang: str): - """get the sentence segmenter for the given language. - - Args: - lang (str): target language code. - - Returns: - [type]: [description] - """ - return pysbd.Segmenter(language=lang, clean=True) - - def _load_vc(self, vc_checkpoint: str, vc_config_path: str, use_cuda: bool) -> None: - """Load the voice conversion model. - - 1. Load the model config. - 2. Init the model from the config. - 3. Load the model weights. - 4. Move the model to the GPU if CUDA is enabled. - - Args: - vc_checkpoint (str): path to the model checkpoint. - tts_config_path (str): path to the model config file. - use_cuda (bool): enable/disable CUDA use. - """ - # pylint: disable=global-statement - self.vc_config = load_config(vc_config_path) - self.vc_model = setup_vc_model(config=self.vc_config) - self.vc_model.load_checkpoint(self.vc_config, vc_checkpoint) - if use_cuda: - self.vc_model.cuda() - - def _load_fairseq_from_dir(self, model_dir: str, use_cuda: bool) -> None: - """Load the fairseq model from a directory. - - We assume it is VITS and the model knows how to load itself from the directory and there is a config.json file in the directory. - """ - self.tts_config = VitsConfig() - self.tts_model = Vits.init_from_config(self.tts_config) - self.tts_model.load_fairseq_checkpoint(self.tts_config, checkpoint_dir=model_dir, eval=True) - self.tts_config = self.tts_model.config - if use_cuda: - self.tts_model.cuda() - - def _load_tts_from_dir(self, model_dir: str, use_cuda: bool) -> None: - """Load the TTS model from a directory. - - We assume the model knows how to load itself from the directory and there is a config.json file in the directory. - """ - config = load_config(os.path.join(model_dir, "config.json")) - self.tts_config = config - self.tts_model = setup_tts_model(config) - self.tts_model.load_checkpoint(config, checkpoint_dir=model_dir, eval=True) - if use_cuda: - self.tts_model.cuda() - - def _load_tts(self, tts_checkpoint: str, tts_config_path: str, use_cuda: bool) -> None: - """Load the TTS model. - - 1. Load the model config. - 2. Init the model from the config. - 3. Load the model weights. - 4. Move the model to the GPU if CUDA is enabled. - 5. Init the speaker manager in the model. - - Args: - tts_checkpoint (str): path to the model checkpoint. - tts_config_path (str): path to the model config file. - use_cuda (bool): enable/disable CUDA use. - """ - # pylint: disable=global-statement - self.tts_config = load_config(tts_config_path) - if self.tts_config["use_phonemes"] and self.tts_config["phonemizer"] is None: - raise ValueError("Phonemizer is not defined in the TTS config.") - - self.tts_model = setup_tts_model(config=self.tts_config) - - if not self.encoder_checkpoint: - self._set_speaker_encoder_paths_from_tts_config() - - self.tts_model.load_checkpoint(self.tts_config, tts_checkpoint, eval=True) - if use_cuda: - self.tts_model.cuda() - - if self.encoder_checkpoint and hasattr(self.tts_model, "speaker_manager"): - self.tts_model.speaker_manager.init_encoder(self.encoder_checkpoint, self.encoder_config, use_cuda) - - def _set_speaker_encoder_paths_from_tts_config(self): - """Set the encoder paths from the tts model config for models with speaker encoders.""" - if hasattr(self.tts_config, "model_args") and hasattr( - self.tts_config.model_args, "speaker_encoder_config_path" - ): - self.encoder_checkpoint = self.tts_config.model_args.speaker_encoder_model_path - self.encoder_config = self.tts_config.model_args.speaker_encoder_config_path - - def _load_vocoder(self, model_file: str, model_config: str, use_cuda: bool) -> None: - """Load the vocoder model. - - 1. Load the vocoder config. - 2. Init the AudioProcessor for the vocoder. - 3. Init the vocoder model from the config. - 4. Move the model to the GPU if CUDA is enabled. - - Args: - model_file (str): path to the model checkpoint. - model_config (str): path to the model config file. - use_cuda (bool): enable/disable CUDA use. - """ - self.vocoder_config = load_config(model_config) - self.vocoder_ap = AudioProcessor(verbose=False, **self.vocoder_config.audio) - self.vocoder_model = setup_vocoder_model(self.vocoder_config) - self.vocoder_model.load_checkpoint(self.vocoder_config, model_file, eval=True) - if use_cuda: - self.vocoder_model.cuda() - - def split_into_sentences(self, text) -> List[str]: - """Split give text into sentences. - - Args: - text (str): input text in string format. - - Returns: - List[str]: list of sentences. - """ - return self.seg.segment(text) - - def save_wav(self, wav: List[int], path: str) -> None: - """Save the waveform as a file. - - Args: - wav (List[int]): waveform as a list of values. - path (str): output path to save the waveform. - """ - wav = np.array(wav) - save_wav(wav=wav, path=path, sample_rate=self.output_sample_rate) - - def voice_conversion(self, source_wav: str, target_wav: str) -> List[int]: - output_wav = self.vc_model.voice_conversion(source_wav, target_wav) - return output_wav - - def tts( - self, - text: str = "", - speaker_name: str = "", - language_name: str = "", - speaker_wav=None, - style_wav=None, - style_text=None, - reference_wav=None, - reference_speaker_name=None, - **kwargs, - ) -> List[int]: - """🐸 TTS magic. Run all the models and generate speech. - - Args: - text (str): input text. - speaker_name (str, optional): speaker id for multi-speaker models. Defaults to "". - language_name (str, optional): language id for multi-language models. Defaults to "". - speaker_wav (Union[str, List[str]], optional): path to the speaker wav for voice cloning. Defaults to None. - style_wav ([type], optional): style waveform for GST. Defaults to None. - style_text ([type], optional): transcription of style_wav for Capacitron. Defaults to None. - reference_wav ([type], optional): reference waveform for voice conversion. Defaults to None. - reference_speaker_name ([type], optional): speaker id of reference waveform. Defaults to None. - Returns: - List[int]: [description] - """ - start_time = time.time() - wavs = [] - - if not text and not reference_wav: - raise ValueError( - "You need to define either `text` (for sythesis) or a `reference_wav` (for voice conversion) to use the Coqui TTS API." - ) - - if text: - sens = self.split_into_sentences(text) - print(" > Text splitted to sentences.") - print(sens) - - # handle multi-speaker - if "voice_dir" in kwargs: - self.voice_dir = kwargs["voice_dir"] - kwargs.pop("voice_dir") - speaker_embedding = None - speaker_id = None - if self.tts_speakers_file or hasattr(self.tts_model.speaker_manager, "name_to_id"): - # handle Neon models with single speaker. - if len(self.tts_model.speaker_manager.name_to_id) == 1: - speaker_id = list(self.tts_model.speaker_manager.name_to_id.values())[0] - - elif speaker_name and isinstance(speaker_name, str): - if self.tts_config.use_d_vector_file: - # get the average speaker embedding from the saved d_vectors. - speaker_embedding = self.tts_model.speaker_manager.get_mean_embedding( - speaker_name, num_samples=None, randomize=False - ) - speaker_embedding = np.array(speaker_embedding)[None, :] # [1 x embedding_dim] - else: - # get speaker idx from the speaker name - speaker_id = self.tts_model.speaker_manager.name_to_id[speaker_name] - - elif not speaker_name and not speaker_wav: - raise ValueError( - " [!] Looks like you are using a multi-speaker model. " - "You need to define either a `speaker_idx` or a `speaker_wav` to use a multi-speaker model." - ) - else: - speaker_embedding = None - else: - if speaker_name and self.voice_dir is None: - raise ValueError( - f" [!] Missing speakers.json file path for selecting speaker {speaker_name}." - "Define path for speaker.json if it is a multi-speaker model or remove defined speaker idx. " - ) - - # handle multi-lingual - language_id = None - if self.tts_languages_file or ( - hasattr(self.tts_model, "language_manager") and self.tts_model.language_manager is not None - ): - if len(self.tts_model.language_manager.name_to_id) == 1: - language_id = list(self.tts_model.language_manager.name_to_id.values())[0] - - elif language_name and isinstance(language_name, str): - try: - language_id = self.tts_model.language_manager.name_to_id[language_name] - except KeyError as e: - raise ValueError( - f" [!] Looks like you use a multi-lingual model. " - f"Language {language_name} is not in the available languages: " - f"{self.tts_model.language_manager.name_to_id.keys()}." - ) from e - - elif not language_name: - raise ValueError( - " [!] Look like you use a multi-lingual model. " - "You need to define either a `language_name` or a `style_wav` to use a multi-lingual model." - ) - - else: - raise ValueError( - f" [!] Missing language_ids.json file path for selecting language {language_name}." - "Define path for language_ids.json if it is a multi-lingual model or remove defined language idx. " - ) - - # compute a new d_vector from the given clip. - if speaker_wav is not None and self.tts_model.speaker_manager is not None: - speaker_embedding = self.tts_model.speaker_manager.compute_embedding_from_clip(speaker_wav) - - vocoder_device = "cpu" - use_gl = self.vocoder_model is None - if not use_gl: - vocoder_device = next(self.vocoder_model.parameters()).device - if self.use_cuda: - vocoder_device = "cuda" - - if not reference_wav: # not voice conversion - for sen in sens: - if hasattr(self.tts_model, "synthesize"): - outputs = self.tts_model.synthesize( - text=sen, - config=self.tts_config, - speaker_id=speaker_name, - voice_dirs=self.voice_dir, - d_vector=speaker_embedding, - **kwargs, - ) - else: - # synthesize voice - outputs = synthesis( - model=self.tts_model, - text=sen, - CONFIG=self.tts_config, - use_cuda=self.use_cuda, - speaker_id=speaker_id, - style_wav=style_wav, - style_text=style_text, - use_griffin_lim=use_gl, - d_vector=speaker_embedding, - language_id=language_id, - ) - waveform = outputs["wav"] - if not use_gl: - mel_postnet_spec = outputs["outputs"]["model_outputs"][0].detach().cpu().numpy() - # denormalize tts output based on tts audio config - mel_postnet_spec = self.tts_model.ap.denormalize(mel_postnet_spec.T).T - # renormalize spectrogram based on vocoder config - vocoder_input = self.vocoder_ap.normalize(mel_postnet_spec.T) - # compute scale factor for possible sample rate mismatch - scale_factor = [ - 1, - self.vocoder_config["audio"]["sample_rate"] / self.tts_model.ap.sample_rate, - ] - if scale_factor[1] != 1: - print(" > interpolating tts model output.") - vocoder_input = interpolate_vocoder_input(scale_factor, vocoder_input) - else: - vocoder_input = torch.tensor(vocoder_input).unsqueeze(0) # pylint: disable=not-callable - # run vocoder model - # [1, T, C] - waveform = self.vocoder_model.inference(vocoder_input.to(vocoder_device)) - if torch.is_tensor(waveform) and waveform.device != torch.device("cpu") and not use_gl: - waveform = waveform.cpu() - if not use_gl: - waveform = waveform.numpy() - waveform = waveform.squeeze() - - # trim silence - if "do_trim_silence" in self.tts_config.audio and self.tts_config.audio["do_trim_silence"]: - waveform = trim_silence(waveform, self.tts_model.ap) - - wavs += list(waveform) - wavs += [0] * 10000 - else: - # get the speaker embedding or speaker id for the reference wav file - reference_speaker_embedding = None - reference_speaker_id = None - if self.tts_speakers_file or hasattr(self.tts_model.speaker_manager, "name_to_id"): - if reference_speaker_name and isinstance(reference_speaker_name, str): - if self.tts_config.use_d_vector_file: - # get the speaker embedding from the saved d_vectors. - reference_speaker_embedding = self.tts_model.speaker_manager.get_embeddings_by_name( - reference_speaker_name - )[0] - reference_speaker_embedding = np.array(reference_speaker_embedding)[ - None, : - ] # [1 x embedding_dim] - else: - # get speaker idx from the speaker name - reference_speaker_id = self.tts_model.speaker_manager.name_to_id[reference_speaker_name] - else: - reference_speaker_embedding = self.tts_model.speaker_manager.compute_embedding_from_clip( - reference_wav - ) - outputs = transfer_voice( - model=self.tts_model, - CONFIG=self.tts_config, - use_cuda=self.use_cuda, - reference_wav=reference_wav, - speaker_id=speaker_id, - d_vector=speaker_embedding, - use_griffin_lim=use_gl, - reference_speaker_id=reference_speaker_id, - reference_d_vector=reference_speaker_embedding, - ) - waveform = outputs - if not use_gl: - mel_postnet_spec = outputs[0].detach().cpu().numpy() - # denormalize tts output based on tts audio config - mel_postnet_spec = self.tts_model.ap.denormalize(mel_postnet_spec.T).T - # renormalize spectrogram based on vocoder config - vocoder_input = self.vocoder_ap.normalize(mel_postnet_spec.T) - # compute scale factor for possible sample rate mismatch - scale_factor = [ - 1, - self.vocoder_config["audio"]["sample_rate"] / self.tts_model.ap.sample_rate, - ] - if scale_factor[1] != 1: - print(" > interpolating tts model output.") - vocoder_input = interpolate_vocoder_input(scale_factor, vocoder_input) - else: - vocoder_input = torch.tensor(vocoder_input).unsqueeze(0) # pylint: disable=not-callable - # run vocoder model - # [1, T, C] - waveform = self.vocoder_model.inference(vocoder_input.to(vocoder_device)) - if torch.is_tensor(waveform) and waveform.device != torch.device("cpu"): - waveform = waveform.cpu() - if not use_gl: - waveform = waveform.numpy() - wavs = waveform.squeeze() - - # compute stats - process_time = time.time() - start_time - audio_time = len(wavs) / self.tts_config.audio["sample_rate"] - print(f" > Processing time: {process_time}") - print(f" > Real-time factor: {process_time / audio_time}") - return wavs diff --git a/TTS/TTS/utils/training.py b/TTS/TTS/utils/training.py deleted file mode 100644 index b51f55e92b56bece69ae61f99f68b48c88938261..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/training.py +++ /dev/null @@ -1,44 +0,0 @@ -import numpy as np -import torch - - -def check_update(model, grad_clip, ignore_stopnet=False, amp_opt_params=None): - r"""Check model gradient against unexpected jumps and failures""" - skip_flag = False - if ignore_stopnet: - if not amp_opt_params: - grad_norm = torch.nn.utils.clip_grad_norm_( - [param for name, param in model.named_parameters() if "stopnet" not in name], grad_clip - ) - else: - grad_norm = torch.nn.utils.clip_grad_norm_(amp_opt_params, grad_clip) - else: - if not amp_opt_params: - grad_norm = torch.nn.utils.clip_grad_norm_(model.parameters(), grad_clip) - else: - grad_norm = torch.nn.utils.clip_grad_norm_(amp_opt_params, grad_clip) - - # compatibility with different torch versions - if isinstance(grad_norm, float): - if np.isinf(grad_norm): - print(" | > Gradient is INF !!") - skip_flag = True - else: - if torch.isinf(grad_norm): - print(" | > Gradient is INF !!") - skip_flag = True - return grad_norm, skip_flag - - -def gradual_training_scheduler(global_step, config): - """Setup the gradual training schedule wrt number - of active GPUs""" - num_gpus = torch.cuda.device_count() - if num_gpus == 0: - num_gpus = 1 - new_values = None - # we set the scheduling wrt num_gpus - for values in config.gradual_training: - if global_step * num_gpus >= values[0]: - new_values = values - return new_values[1], new_values[2] diff --git a/TTS/TTS/utils/vad.py b/TTS/TTS/utils/vad.py deleted file mode 100644 index aefce2b50b9b3924c4c0e8fb2e4a988e0758e9cd..0000000000000000000000000000000000000000 --- a/TTS/TTS/utils/vad.py +++ /dev/null @@ -1,88 +0,0 @@ -import torch -import torchaudio - - -def read_audio(path): - wav, sr = torchaudio.load(path) - - if wav.size(0) > 1: - wav = wav.mean(dim=0, keepdim=True) - - return wav.squeeze(0), sr - - -def resample_wav(wav, sr, new_sr): - wav = wav.unsqueeze(0) - transform = torchaudio.transforms.Resample(orig_freq=sr, new_freq=new_sr) - wav = transform(wav) - return wav.squeeze(0) - - -def map_timestamps_to_new_sr(vad_sr, new_sr, timestamps, just_begging_end=False): - factor = new_sr / vad_sr - new_timestamps = [] - if just_begging_end and timestamps: - # get just the start and end timestamps - new_dict = {"start": int(timestamps[0]["start"] * factor), "end": int(timestamps[-1]["end"] * factor)} - new_timestamps.append(new_dict) - else: - for ts in timestamps: - # map to the new SR - new_dict = {"start": int(ts["start"] * factor), "end": int(ts["end"] * factor)} - new_timestamps.append(new_dict) - - return new_timestamps - - -def get_vad_model_and_utils(use_cuda=False, use_onnx=False): - model, utils = torch.hub.load( - repo_or_dir="snakers4/silero-vad", model="silero_vad", force_reload=True, onnx=use_onnx, force_onnx_cpu=True - ) - if use_cuda: - model = model.cuda() - - get_speech_timestamps, save_audio, _, _, collect_chunks = utils - return model, get_speech_timestamps, save_audio, collect_chunks - - -def remove_silence( - model_and_utils, audio_path, out_path, vad_sample_rate=8000, trim_just_beginning_and_end=True, use_cuda=False -): - # get the VAD model and utils functions - model, get_speech_timestamps, _, collect_chunks = model_and_utils - - # read ground truth wav and resample the audio for the VAD - try: - wav, gt_sample_rate = read_audio(audio_path) - except: - print(f"> ❗ Failed to read {audio_path}") - return None, False - - # if needed, resample the audio for the VAD model - if gt_sample_rate != vad_sample_rate: - wav_vad = resample_wav(wav, gt_sample_rate, vad_sample_rate) - else: - wav_vad = wav - - if use_cuda: - wav_vad = wav_vad.cuda() - - # get speech timestamps from full audio file - speech_timestamps = get_speech_timestamps(wav_vad, model, sampling_rate=vad_sample_rate, window_size_samples=768) - - # map the current speech_timestamps to the sample rate of the ground truth audio - new_speech_timestamps = map_timestamps_to_new_sr( - vad_sample_rate, gt_sample_rate, speech_timestamps, trim_just_beginning_and_end - ) - - # if have speech timestamps else save the wav - if new_speech_timestamps: - wav = collect_chunks(new_speech_timestamps, wav) - is_speech = True - else: - print(f"> The file {audio_path} probably does not have speech please check it !!") - is_speech = False - - # save - torchaudio.save(out_path, wav[None, :], gt_sample_rate) - return out_path, is_speech diff --git a/TTS/TTS/vc/configs/__init__.py b/TTS/TTS/vc/configs/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/vc/configs/freevc_config.py b/TTS/TTS/vc/configs/freevc_config.py deleted file mode 100644 index 890a269303415ad79c32642bd2930119b37d3d39..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/configs/freevc_config.py +++ /dev/null @@ -1,5 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.vc.configs.shared_configs import BaseVCConfig -from TTS.vc.models.freevc import FreeVCArgs, FreeVCAudioConfig, FreeVCConfig diff --git a/TTS/TTS/vc/configs/shared_configs.py b/TTS/TTS/vc/configs/shared_configs.py deleted file mode 100644 index 74164a744452a00c7f318fbdcc55438cddcc70be..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/configs/shared_configs.py +++ /dev/null @@ -1,155 +0,0 @@ -from dataclasses import asdict, dataclass, field -from typing import Dict, List - -from coqpit import Coqpit, check_argument - -from TTS.config import BaseAudioConfig, BaseDatasetConfig, BaseTrainingConfig - - -@dataclass -class BaseVCConfig(BaseTrainingConfig): - """Shared parameters among all the tts models. - - Args: - - audio (BaseAudioConfig): - Audio processor config object instance. - - batch_group_size (int): - Size of the batch groups used for bucketing. By default, the dataloader orders samples by the sequence - length for a more efficient and stable training. If `batch_group_size > 1` then it performs bucketing to - prevent using the same batches for each epoch. - - loss_masking (bool): - enable / disable masking loss values against padded segments of samples in a batch. - - min_text_len (int): - Minimum length of input text to be used. All shorter samples will be ignored. Defaults to 0. - - max_text_len (int): - Maximum length of input text to be used. All longer samples will be ignored. Defaults to float("inf"). - - min_audio_len (int): - Minimum length of input audio to be used. All shorter samples will be ignored. Defaults to 0. - - max_audio_len (int): - Maximum length of input audio to be used. All longer samples will be ignored. The maximum length in the - dataset defines the VRAM used in the training. Hence, pay attention to this value if you encounter an - OOM error in training. Defaults to float("inf"). - - compute_f0 (int): - (Not in use yet). - - compute_energy (int): - (Not in use yet). - - compute_linear_spec (bool): - If True data loader computes and returns linear spectrograms alongside the other data. - - precompute_num_workers (int): - Number of workers to precompute features. Defaults to 0. - - use_noise_augment (bool): - Augment the input audio with random noise. - - start_by_longest (bool): - If True, the data loader will start loading the longest batch first. It is useful for checking OOM issues. - Defaults to False. - - shuffle (bool): - If True, the data loader will shuffle the dataset when there is not sampler defined. Defaults to True. - - drop_last (bool): - If True, the data loader will drop the last batch if it is not complete. It helps to prevent - issues that emerge from the partial batch statistics. Defaults to True. - - add_blank (bool): - Add blank characters between each other two characters. It improves performance for some models at expense - of slower run-time due to the longer input sequence. - - datasets (List[BaseDatasetConfig]): - List of datasets used for training. If multiple datasets are provided, they are merged and used together - for training. - - optimizer (str): - Optimizer used for the training. Set one from `torch.optim.Optimizer` or `TTS.utils.training`. - Defaults to ``. - - optimizer_params (dict): - Optimizer kwargs. Defaults to `{"betas": [0.8, 0.99], "weight_decay": 0.0}` - - lr_scheduler (str): - Learning rate scheduler for the training. Use one from `torch.optim.Scheduler` schedulers or - `TTS.utils.training`. Defaults to ``. - - lr_scheduler_params (dict): - Parameters for the generator learning rate scheduler. Defaults to `{"warmup": 4000}`. - - test_sentences (List[str]): - List of sentences to be used at testing. Defaults to '[]' - - eval_split_max_size (int): - Number maximum of samples to be used for evaluation in proportion split. Defaults to None (Disabled). - - eval_split_size (float): - If between 0.0 and 1.0 represents the proportion of the dataset to include in the evaluation set. - If > 1, represents the absolute number of evaluation samples. Defaults to 0.01 (1%). - - use_speaker_weighted_sampler (bool): - Enable / Disable the batch balancer by speaker. Defaults to ```False```. - - speaker_weighted_sampler_alpha (float): - Number that control the influence of the speaker sampler weights. Defaults to ```1.0```. - - use_language_weighted_sampler (bool): - Enable / Disable the batch balancer by language. Defaults to ```False```. - - language_weighted_sampler_alpha (float): - Number that control the influence of the language sampler weights. Defaults to ```1.0```. - - use_length_weighted_sampler (bool): - Enable / Disable the batch balancer by audio length. If enabled the dataset will be divided - into 10 buckets considering the min and max audio of the dataset. The sampler weights will be - computed forcing to have the same quantity of data for each bucket in each training batch. Defaults to ```False```. - - length_weighted_sampler_alpha (float): - Number that control the influence of the length sampler weights. Defaults to ```1.0```. - """ - - audio: BaseAudioConfig = field(default_factory=BaseAudioConfig) - # training params - batch_group_size: int = 0 - loss_masking: bool = None - # dataloading - min_audio_len: int = 1 - max_audio_len: int = float("inf") - min_text_len: int = 1 - max_text_len: int = float("inf") - compute_f0: bool = False - compute_energy: bool = False - compute_linear_spec: bool = False - precompute_num_workers: int = 0 - use_noise_augment: bool = False - start_by_longest: bool = False - shuffle: bool = False - drop_last: bool = False - # dataset - datasets: List[BaseDatasetConfig] = field(default_factory=lambda: [BaseDatasetConfig()]) - # optimizer - optimizer: str = "radam" - optimizer_params: dict = None - # scheduler - lr_scheduler: str = None - lr_scheduler_params: dict = field(default_factory=lambda: {}) - # testing - test_sentences: List[str] = field(default_factory=lambda: []) - # evaluation - eval_split_max_size: int = None - eval_split_size: float = 0.01 - # weighted samplers - use_speaker_weighted_sampler: bool = False - speaker_weighted_sampler_alpha: float = 1.0 - use_language_weighted_sampler: bool = False - language_weighted_sampler_alpha: float = 1.0 - use_length_weighted_sampler: bool = False - length_weighted_sampler_alpha: float = 1.0 diff --git a/TTS/TTS/vc/models/__init__.py b/TTS/TTS/vc/models/__init__.py deleted file mode 100644 index 5a09b4e53e2a4e40dd7c9d0d4c7e5b3c30f317a5..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/models/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -import importlib -import re -from typing import Dict, List, Union - - -def to_camel(text): - text = text.capitalize() - return re.sub(r"(?!^)_([a-zA-Z])", lambda m: m.group(1).upper(), text) - - -def setup_model(config: "Coqpit", samples: Union[List[List], List[Dict]] = None) -> "BaseVC": - print(" > Using model: {}".format(config.model)) - # fetch the right model implementation. - if "model" in config and config["model"].lower() == "freevc": - MyModel = importlib.import_module("TTS.vc.models.freevc").FreeVC - model = MyModel.init_from_config(config, samples) - return model diff --git a/TTS/TTS/vc/models/base_vc.py b/TTS/TTS/vc/models/base_vc.py deleted file mode 100644 index 19f2761bbc42051a2f03d1170c011955dcdd28cb..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/models/base_vc.py +++ /dev/null @@ -1,429 +0,0 @@ -import os -import random -from typing import Dict, List, Tuple, Union - -import torch -import torch.distributed as dist -from coqpit import Coqpit -from torch import nn -from torch.utils.data import DataLoader -from torch.utils.data.sampler import WeightedRandomSampler -from trainer.torch import DistributedSampler, DistributedSamplerWrapper - -from TTS.model import BaseTrainerModel -from TTS.tts.datasets.dataset import TTSDataset -from TTS.tts.utils.data import get_length_balancer_weights -from TTS.tts.utils.languages import LanguageManager, get_language_balancer_weights -from TTS.tts.utils.speakers import SpeakerManager, get_speaker_balancer_weights -from TTS.tts.utils.synthesis import synthesis -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram - -# pylint: skip-file - - -class BaseVC(BaseTrainerModel): - """Base `vc` class. Every new `vc` model must inherit this. - - It defines common `vc` specific functions on top of `Model` implementation. - """ - - MODEL_TYPE = "vc" - - def __init__( - self, - config: Coqpit, - ap: "AudioProcessor", - speaker_manager: SpeakerManager = None, - language_manager: LanguageManager = None, - ): - super().__init__() - self.config = config - self.ap = ap - self.speaker_manager = speaker_manager - self.language_manager = language_manager - self._set_model_args(config) - - def _set_model_args(self, config: Coqpit): - """Setup model args based on the config type (`ModelConfig` or `ModelArgs`). - - `ModelArgs` has all the fields reuqired to initialize the model architecture. - - `ModelConfig` has all the fields required for training, inference and containes `ModelArgs`. - - If the config is for training with a name like "*Config", then the model args are embeded in the - config.model_args - - If the config is for the model with a name like "*Args", then we assign the directly. - """ - # don't use isintance not to import recursively - if "Config" in config.__class__.__name__: - self.config = config - self.args = config.model_args - elif "Args" in config.__class__.__name__: - self.args = config - else: - raise ValueError("config must be either a *Config or *Args") - - def init_multispeaker(self, config: Coqpit, data: List = None): - """Initialize a speaker embedding layer if needen and define expected embedding channel size for defining - `in_channels` size of the connected layers. - - This implementation yields 3 possible outcomes: - - 1. If `config.use_speaker_embedding` and `config.use_d_vector_file are False, do nothing. - 2. If `config.use_d_vector_file` is True, set expected embedding channel size to `config.d_vector_dim` or 512. - 3. If `config.use_speaker_embedding`, initialize a speaker embedding layer with channel size of - `config.d_vector_dim` or 512. - - You can override this function for new models. - - Args: - config (Coqpit): Model configuration. - """ - # set number of speakers - if self.speaker_manager is not None: - self.num_speakers = self.speaker_manager.num_speakers - elif hasattr(config, "num_speakers"): - self.num_speakers = config.num_speakers - - # set ultimate speaker embedding size - if config.use_speaker_embedding or config.use_d_vector_file: - self.embedded_speaker_dim = ( - config.d_vector_dim if "d_vector_dim" in config and config.d_vector_dim is not None else 512 - ) - # init speaker embedding layer - if config.use_speaker_embedding and not config.use_d_vector_file: - print(" > Init speaker_embedding layer.") - self.speaker_embedding = nn.Embedding(self.num_speakers, self.embedded_speaker_dim) - self.speaker_embedding.weight.data.normal_(0, 0.3) - - def get_aux_input(self, **kwargs) -> Dict: - """Prepare and return `aux_input` used by `forward()`""" - return {"speaker_id": None, "style_wav": None, "d_vector": None, "language_id": None} - - def get_aux_input_from_test_sentences(self, sentence_info): - if hasattr(self.config, "model_args"): - config = self.config.model_args - else: - config = self.config - - # extract speaker and language info - text, speaker_name, style_wav, language_name = None, None, None, None - - if isinstance(sentence_info, list): - if len(sentence_info) == 1: - text = sentence_info[0] - elif len(sentence_info) == 2: - text, speaker_name = sentence_info - elif len(sentence_info) == 3: - text, speaker_name, style_wav = sentence_info - elif len(sentence_info) == 4: - text, speaker_name, style_wav, language_name = sentence_info - else: - text = sentence_info - - # get speaker id/d_vector - speaker_id, d_vector, language_id = None, None, None - if self.speaker_manager is not None: - if config.use_d_vector_file: - if speaker_name is None: - d_vector = self.speaker_manager.get_random_embedding() - else: - d_vector = self.speaker_manager.get_d_vector_by_name(speaker_name) - elif config.use_speaker_embedding: - if speaker_name is None: - speaker_id = self.speaker_manager.get_random_id() - else: - speaker_id = self.speaker_manager.name_to_id[speaker_name] - - # get language id - if self.language_manager is not None and config.use_language_embedding and language_name is not None: - language_id = self.language_manager.name_to_id[language_name] - - return { - "text": text, - "speaker_id": speaker_id, - "style_wav": style_wav, - "d_vector": d_vector, - "language_id": language_id, - } - - def format_batch(self, batch: Dict) -> Dict: - """Generic batch formatting for `VCDataset`. - - You must override this if you use a custom dataset. - - Args: - batch (Dict): [description] - - Returns: - Dict: [description] - """ - # setup input batch - text_input = batch["token_id"] - text_lengths = batch["token_id_lengths"] - speaker_names = batch["speaker_names"] - linear_input = batch["linear"] - mel_input = batch["mel"] - mel_lengths = batch["mel_lengths"] - stop_targets = batch["stop_targets"] - item_idx = batch["item_idxs"] - d_vectors = batch["d_vectors"] - speaker_ids = batch["speaker_ids"] - attn_mask = batch["attns"] - waveform = batch["waveform"] - pitch = batch["pitch"] - energy = batch["energy"] - language_ids = batch["language_ids"] - max_text_length = torch.max(text_lengths.float()) - max_spec_length = torch.max(mel_lengths.float()) - - # compute durations from attention masks - durations = None - if attn_mask is not None: - durations = torch.zeros(attn_mask.shape[0], attn_mask.shape[2]) - for idx, am in enumerate(attn_mask): - # compute raw durations - c_idxs = am[:, : text_lengths[idx], : mel_lengths[idx]].max(1)[1] - # c_idxs, counts = torch.unique_consecutive(c_idxs, return_counts=True) - c_idxs, counts = torch.unique(c_idxs, return_counts=True) - dur = torch.ones([text_lengths[idx]]).to(counts.dtype) - dur[c_idxs] = counts - # smooth the durations and set any 0 duration to 1 - # by cutting off from the largest duration indeces. - extra_frames = dur.sum() - mel_lengths[idx] - largest_idxs = torch.argsort(-dur)[:extra_frames] - dur[largest_idxs] -= 1 - assert ( - dur.sum() == mel_lengths[idx] - ), f" [!] total duration {dur.sum()} vs spectrogram length {mel_lengths[idx]}" - durations[idx, : text_lengths[idx]] = dur - - # set stop targets wrt reduction factor - stop_targets = stop_targets.view(text_input.shape[0], stop_targets.size(1) // self.config.r, -1) - stop_targets = (stop_targets.sum(2) > 0.0).unsqueeze(2).float().squeeze(2) - stop_target_lengths = torch.divide(mel_lengths, self.config.r).ceil_() - - return { - "text_input": text_input, - "text_lengths": text_lengths, - "speaker_names": speaker_names, - "mel_input": mel_input, - "mel_lengths": mel_lengths, - "linear_input": linear_input, - "stop_targets": stop_targets, - "stop_target_lengths": stop_target_lengths, - "attn_mask": attn_mask, - "durations": durations, - "speaker_ids": speaker_ids, - "d_vectors": d_vectors, - "max_text_length": float(max_text_length), - "max_spec_length": float(max_spec_length), - "item_idx": item_idx, - "waveform": waveform, - "pitch": pitch, - "energy": energy, - "language_ids": language_ids, - "audio_unique_names": batch["audio_unique_names"], - } - - def get_sampler(self, config: Coqpit, dataset: TTSDataset, num_gpus=1): - weights = None - data_items = dataset.samples - - if getattr(config, "use_language_weighted_sampler", False): - alpha = getattr(config, "language_weighted_sampler_alpha", 1.0) - print(" > Using Language weighted sampler with alpha:", alpha) - weights = get_language_balancer_weights(data_items) * alpha - - if getattr(config, "use_speaker_weighted_sampler", False): - alpha = getattr(config, "speaker_weighted_sampler_alpha", 1.0) - print(" > Using Speaker weighted sampler with alpha:", alpha) - if weights is not None: - weights += get_speaker_balancer_weights(data_items) * alpha - else: - weights = get_speaker_balancer_weights(data_items) * alpha - - if getattr(config, "use_length_weighted_sampler", False): - alpha = getattr(config, "length_weighted_sampler_alpha", 1.0) - print(" > Using Length weighted sampler with alpha:", alpha) - if weights is not None: - weights += get_length_balancer_weights(data_items) * alpha - else: - weights = get_length_balancer_weights(data_items) * alpha - - if weights is not None: - sampler = WeightedRandomSampler(weights, len(weights)) - else: - sampler = None - - # sampler for DDP - if sampler is None: - sampler = DistributedSampler(dataset) if num_gpus > 1 else None - else: # If a sampler is already defined use this sampler and DDP sampler together - sampler = DistributedSamplerWrapper(sampler) if num_gpus > 1 else sampler - - return sampler - - def get_data_loader( - self, - config: Coqpit, - assets: Dict, - is_eval: bool, - samples: Union[List[Dict], List[List]], - verbose: bool, - num_gpus: int, - rank: int = None, - ) -> "DataLoader": - if is_eval and not config.run_eval: - loader = None - else: - # setup multi-speaker attributes - if self.speaker_manager is not None: - if hasattr(config, "model_args"): - speaker_id_mapping = ( - self.speaker_manager.name_to_id if config.model_args.use_speaker_embedding else None - ) - d_vector_mapping = self.speaker_manager.embeddings if config.model_args.use_d_vector_file else None - config.use_d_vector_file = config.model_args.use_d_vector_file - else: - speaker_id_mapping = self.speaker_manager.name_to_id if config.use_speaker_embedding else None - d_vector_mapping = self.speaker_manager.embeddings if config.use_d_vector_file else None - else: - speaker_id_mapping = None - d_vector_mapping = None - - # setup multi-lingual attributes - if self.language_manager is not None: - language_id_mapping = self.language_manager.name_to_id if self.args.use_language_embedding else None - else: - language_id_mapping = None - - # init dataloader - dataset = TTSDataset( - outputs_per_step=config.r if "r" in config else 1, - compute_linear_spec=config.model.lower() == "tacotron" or config.compute_linear_spec, - compute_f0=config.get("compute_f0", False), - f0_cache_path=config.get("f0_cache_path", None), - compute_energy=config.get("compute_energy", False), - energy_cache_path=config.get("energy_cache_path", None), - samples=samples, - ap=self.ap, - return_wav=config.return_wav if "return_wav" in config else False, - batch_group_size=0 if is_eval else config.batch_group_size * config.batch_size, - min_text_len=config.min_text_len, - max_text_len=config.max_text_len, - min_audio_len=config.min_audio_len, - max_audio_len=config.max_audio_len, - phoneme_cache_path=config.phoneme_cache_path, - precompute_num_workers=config.precompute_num_workers, - use_noise_augment=False if is_eval else config.use_noise_augment, - verbose=verbose, - speaker_id_mapping=speaker_id_mapping, - d_vector_mapping=d_vector_mapping if config.use_d_vector_file else None, - tokenizer=None, - start_by_longest=config.start_by_longest, - language_id_mapping=language_id_mapping, - ) - - # wait all the DDP process to be ready - if num_gpus > 1: - dist.barrier() - - # sort input sequences from short to long - dataset.preprocess_samples() - - # get samplers - sampler = self.get_sampler(config, dataset, num_gpus) - - loader = DataLoader( - dataset, - batch_size=config.eval_batch_size if is_eval else config.batch_size, - shuffle=config.shuffle if sampler is None else False, # if there is no other sampler - collate_fn=dataset.collate_fn, - drop_last=config.drop_last, # setting this False might cause issues in AMP training. - sampler=sampler, - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=False, - ) - return loader - - def _get_test_aux_input( - self, - ) -> Dict: - d_vector = None - if self.config.use_d_vector_file: - d_vector = [self.speaker_manager.embeddings[name]["embedding"] for name in self.speaker_manager.embeddings] - d_vector = (random.sample(sorted(d_vector), 1),) - - aux_inputs = { - "speaker_id": None - if not self.config.use_speaker_embedding - else random.sample(sorted(self.speaker_manager.name_to_id.values()), 1), - "d_vector": d_vector, - "style_wav": None, # TODO: handle GST style input - } - return aux_inputs - - def test_run(self, assets: Dict) -> Tuple[Dict, Dict]: - """Generic test run for `vc` models used by `Trainer`. - - You can override this for a different behaviour. - - Args: - assets (dict): A dict of training assets. For `vc` models, it must include `{'audio_processor': ap}`. - - Returns: - Tuple[Dict, Dict]: Test figures and audios to be projected to Tensorboard. - """ - print(" | > Synthesizing test sentences.") - test_audios = {} - test_figures = {} - test_sentences = self.config.test_sentences - aux_inputs = self._get_test_aux_input() - for idx, sen in enumerate(test_sentences): - if isinstance(sen, list): - aux_inputs = self.get_aux_input_from_test_sentences(sen) - sen = aux_inputs["text"] - outputs_dict = synthesis( - self, - sen, - self.config, - "cuda" in str(next(self.parameters()).device), - speaker_id=aux_inputs["speaker_id"], - d_vector=aux_inputs["d_vector"], - style_wav=aux_inputs["style_wav"], - use_griffin_lim=True, - do_trim_silence=False, - ) - test_audios["{}-audio".format(idx)] = outputs_dict["wav"] - test_figures["{}-prediction".format(idx)] = plot_spectrogram( - outputs_dict["outputs"]["model_outputs"], self.ap, output_fig=False - ) - test_figures["{}-alignment".format(idx)] = plot_alignment( - outputs_dict["outputs"]["alignments"], output_fig=False - ) - return test_figures, test_audios - - def on_init_start(self, trainer): - """Save the speaker.pth and language_ids.json at the beginning of the training. Also update both paths.""" - if self.speaker_manager is not None: - output_path = os.path.join(trainer.output_path, "speakers.pth") - self.speaker_manager.save_ids_to_file(output_path) - trainer.config.speakers_file = output_path - # some models don't have `model_args` set - if hasattr(trainer.config, "model_args"): - trainer.config.model_args.speakers_file = output_path - trainer.config.save_json(os.path.join(trainer.output_path, "config.json")) - print(f" > `speakers.pth` is saved to {output_path}.") - print(" > `speakers_file` is updated in the config.json.") - - if self.language_manager is not None: - output_path = os.path.join(trainer.output_path, "language_ids.json") - self.language_manager.save_ids_to_file(output_path) - trainer.config.language_ids_file = output_path - if hasattr(trainer.config, "model_args"): - trainer.config.model_args.language_ids_file = output_path - trainer.config.save_json(os.path.join(trainer.output_path, "config.json")) - print(f" > `language_ids.json` is saved to {output_path}.") - print(" > `language_ids_file` is updated in the config.json.") diff --git a/TTS/TTS/vc/models/freevc.py b/TTS/TTS/vc/models/freevc.py deleted file mode 100644 index ae22ad28c1d0330acc5f8fafa033cc4db33ef8bb..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/models/freevc.py +++ /dev/null @@ -1,833 +0,0 @@ -from dataclasses import dataclass, field -from typing import Dict, List, Optional, Tuple, Union - -import librosa -import numpy as np -import torch -from coqpit import Coqpit -from torch import nn -from torch.nn import AvgPool1d, Conv1d, Conv2d, ConvTranspose1d -from torch.nn import functional as F -from torch.nn.utils import remove_weight_norm, spectral_norm, weight_norm - -import TTS.vc.modules.freevc.commons as commons -import TTS.vc.modules.freevc.modules as modules -from TTS.tts.utils.speakers import SpeakerManager -from TTS.utils.io import load_fsspec, save_checkpoint -from TTS.vc.configs.shared_configs import BaseVCConfig -from TTS.vc.models.base_vc import BaseVC -from TTS.vc.modules.freevc.commons import get_padding, init_weights -from TTS.vc.modules.freevc.mel_processing import mel_spectrogram_torch -from TTS.vc.modules.freevc.speaker_encoder.speaker_encoder import SpeakerEncoder as SpeakerEncoderEx -from TTS.vc.modules.freevc.wavlm import get_wavlm - - -class ResidualCouplingBlock(nn.Module): - def __init__(self, channels, hidden_channels, kernel_size, dilation_rate, n_layers, n_flows=4, gin_channels=0): - super().__init__() - self.channels = channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.n_layers = n_layers - self.n_flows = n_flows - self.gin_channels = gin_channels - - self.flows = nn.ModuleList() - for i in range(n_flows): - self.flows.append( - modules.ResidualCouplingLayer( - channels, - hidden_channels, - kernel_size, - dilation_rate, - n_layers, - gin_channels=gin_channels, - mean_only=True, - ) - ) - self.flows.append(modules.Flip()) - - def forward(self, x, x_mask, g=None, reverse=False): - if not reverse: - for flow in self.flows: - x, _ = flow(x, x_mask, g=g, reverse=reverse) - else: - for flow in reversed(self.flows): - x = flow(x, x_mask, g=g, reverse=reverse) - return x - - -class Encoder(nn.Module): - def __init__( - self, in_channels, out_channels, hidden_channels, kernel_size, dilation_rate, n_layers, gin_channels=0 - ): - super().__init__() - self.in_channels = in_channels - self.out_channels = out_channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.n_layers = n_layers - self.gin_channels = gin_channels - - self.pre = nn.Conv1d(in_channels, hidden_channels, 1) - self.enc = modules.WN(hidden_channels, kernel_size, dilation_rate, n_layers, gin_channels=gin_channels) - self.proj = nn.Conv1d(hidden_channels, out_channels * 2, 1) - - def forward(self, x, x_lengths, g=None): - x_mask = torch.unsqueeze(commons.sequence_mask(x_lengths, x.size(2)), 1).to(x.dtype) - x = self.pre(x) * x_mask - x = self.enc(x, x_mask, g=g) - stats = self.proj(x) * x_mask - m, logs = torch.split(stats, self.out_channels, dim=1) - z = (m + torch.randn_like(m) * torch.exp(logs)) * x_mask - return z, m, logs, x_mask - - -class Generator(torch.nn.Module): - def __init__( - self, - initial_channel, - resblock, - resblock_kernel_sizes, - resblock_dilation_sizes, - upsample_rates, - upsample_initial_channel, - upsample_kernel_sizes, - gin_channels=0, - ): - super(Generator, self).__init__() - self.num_kernels = len(resblock_kernel_sizes) - self.num_upsamples = len(upsample_rates) - self.conv_pre = Conv1d(initial_channel, upsample_initial_channel, 7, 1, padding=3) - resblock = modules.ResBlock1 if resblock == "1" else modules.ResBlock2 - - self.ups = nn.ModuleList() - for i, (u, k) in enumerate(zip(upsample_rates, upsample_kernel_sizes)): - self.ups.append( - weight_norm( - ConvTranspose1d( - upsample_initial_channel // (2**i), - upsample_initial_channel // (2 ** (i + 1)), - k, - u, - padding=(k - u) // 2, - ) - ) - ) - - self.resblocks = nn.ModuleList() - for i in range(len(self.ups)): - ch = upsample_initial_channel // (2 ** (i + 1)) - for j, (k, d) in enumerate(zip(resblock_kernel_sizes, resblock_dilation_sizes)): - self.resblocks.append(resblock(ch, k, d)) - - self.conv_post = Conv1d(ch, 1, 7, 1, padding=3, bias=False) - self.ups.apply(init_weights) - - if gin_channels != 0: - self.cond = nn.Conv1d(gin_channels, upsample_initial_channel, 1) - - def forward(self, x, g=None): - x = self.conv_pre(x) - if g is not None: - x = x + self.cond(g) - - for i in range(self.num_upsamples): - x = F.leaky_relu(x, modules.LRELU_SLOPE) - x = self.ups[i](x) - xs = None - for j in range(self.num_kernels): - if xs is None: - xs = self.resblocks[i * self.num_kernels + j](x) - else: - xs += self.resblocks[i * self.num_kernels + j](x) - x = xs / self.num_kernels - x = F.leaky_relu(x) - x = self.conv_post(x) - x = torch.tanh(x) - - return x - - def remove_weight_norm(self): - print("Removing weight norm...") - for l in self.ups: - remove_weight_norm(l) - for l in self.resblocks: - l.remove_weight_norm() - - -class DiscriminatorP(torch.nn.Module): - def __init__(self, period, kernel_size=5, stride=3, use_spectral_norm=False): - super(DiscriminatorP, self).__init__() - self.period = period - self.use_spectral_norm = use_spectral_norm - norm_f = weight_norm if use_spectral_norm == False else spectral_norm - self.convs = nn.ModuleList( - [ - norm_f(Conv2d(1, 32, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(Conv2d(32, 128, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(Conv2d(128, 512, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(Conv2d(512, 1024, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(Conv2d(1024, 1024, (kernel_size, 1), 1, padding=(get_padding(kernel_size, 1), 0))), - ] - ) - self.conv_post = norm_f(Conv2d(1024, 1, (3, 1), 1, padding=(1, 0))) - - def forward(self, x): - fmap = [] - - # 1d to 2d - b, c, t = x.shape - if t % self.period != 0: # pad first - n_pad = self.period - (t % self.period) - x = F.pad(x, (0, n_pad), "reflect") - t = t + n_pad - x = x.view(b, c, t // self.period, self.period) - - for l in self.convs: - x = l(x) - x = F.leaky_relu(x, modules.LRELU_SLOPE) - fmap.append(x) - x = self.conv_post(x) - fmap.append(x) - x = torch.flatten(x, 1, -1) - - return x, fmap - - -class DiscriminatorS(torch.nn.Module): - def __init__(self, use_spectral_norm=False): - super(DiscriminatorS, self).__init__() - norm_f = weight_norm if use_spectral_norm == False else spectral_norm - self.convs = nn.ModuleList( - [ - norm_f(Conv1d(1, 16, 15, 1, padding=7)), - norm_f(Conv1d(16, 64, 41, 4, groups=4, padding=20)), - norm_f(Conv1d(64, 256, 41, 4, groups=16, padding=20)), - norm_f(Conv1d(256, 1024, 41, 4, groups=64, padding=20)), - norm_f(Conv1d(1024, 1024, 41, 4, groups=256, padding=20)), - norm_f(Conv1d(1024, 1024, 5, 1, padding=2)), - ] - ) - self.conv_post = norm_f(Conv1d(1024, 1, 3, 1, padding=1)) - - def forward(self, x): - fmap = [] - - for l in self.convs: - x = l(x) - x = F.leaky_relu(x, modules.LRELU_SLOPE) - fmap.append(x) - x = self.conv_post(x) - fmap.append(x) - x = torch.flatten(x, 1, -1) - - return x, fmap - - -class MultiPeriodDiscriminator(torch.nn.Module): - def __init__(self, use_spectral_norm=False): - super(MultiPeriodDiscriminator, self).__init__() - periods = [2, 3, 5, 7, 11] - - discs = [DiscriminatorS(use_spectral_norm=use_spectral_norm)] - discs = discs + [DiscriminatorP(i, use_spectral_norm=use_spectral_norm) for i in periods] - self.discriminators = nn.ModuleList(discs) - - def forward(self, y, y_hat): - y_d_rs = [] - y_d_gs = [] - fmap_rs = [] - fmap_gs = [] - for i, d in enumerate(self.discriminators): - y_d_r, fmap_r = d(y) - y_d_g, fmap_g = d(y_hat) - y_d_rs.append(y_d_r) - y_d_gs.append(y_d_g) - fmap_rs.append(fmap_r) - fmap_gs.append(fmap_g) - - return y_d_rs, y_d_gs, fmap_rs, fmap_gs - - -class SpeakerEncoder(torch.nn.Module): - def __init__(self, mel_n_channels=80, model_num_layers=3, model_hidden_size=256, model_embedding_size=256): - super(SpeakerEncoder, self).__init__() - self.lstm = nn.LSTM(mel_n_channels, model_hidden_size, model_num_layers, batch_first=True) - self.linear = nn.Linear(model_hidden_size, model_embedding_size) - self.relu = nn.ReLU() - - def forward(self, mels): - self.lstm.flatten_parameters() - _, (hidden, _) = self.lstm(mels) - embeds_raw = self.relu(self.linear(hidden[-1])) - return embeds_raw / torch.norm(embeds_raw, dim=1, keepdim=True) - - def compute_partial_slices(self, total_frames, partial_frames, partial_hop): - mel_slices = [] - for i in range(0, total_frames - partial_frames, partial_hop): - mel_range = torch.arange(i, i + partial_frames) - mel_slices.append(mel_range) - - return mel_slices - - def embed_utterance(self, mel, partial_frames=128, partial_hop=64): - mel_len = mel.size(1) - last_mel = mel[:, -partial_frames:] - - if mel_len > partial_frames: - mel_slices = self.compute_partial_slices(mel_len, partial_frames, partial_hop) - mels = list(mel[:, s] for s in mel_slices) - mels.append(last_mel) - mels = torch.stack(tuple(mels), 0).squeeze(1) - - with torch.no_grad(): - partial_embeds = self(mels) - embed = torch.mean(partial_embeds, axis=0).unsqueeze(0) - # embed = embed / torch.linalg.norm(embed, 2) - else: - with torch.no_grad(): - embed = self(last_mel) - - return embed - - -@dataclass -class FreeVCAudioConfig(Coqpit): - """Audio configuration - - Args: - max_wav_value (float): - The maximum value of the waveform. - - input_sample_rate (int): - The sampling rate of the input waveform. - - output_sample_rate (int): - The sampling rate of the output waveform. - - filter_length (int): - The length of the filter. - - hop_length (int): - The hop length. - - win_length (int): - The window length. - - n_mel_channels (int): - The number of mel channels. - - mel_fmin (float): - The minimum frequency of the mel filterbank. - - mel_fmax (Optional[float]): - The maximum frequency of the mel filterbank. - """ - - max_wav_value: float = field(default=32768.0) - input_sample_rate: int = field(default=16000) - output_sample_rate: int = field(default=24000) - filter_length: int = field(default=1280) - hop_length: int = field(default=320) - win_length: int = field(default=1280) - n_mel_channels: int = field(default=80) - mel_fmin: float = field(default=0.0) - mel_fmax: Optional[float] = field(default=None) - - -@dataclass -class FreeVCArgs(Coqpit): - """FreeVC model arguments - - Args: - spec_channels (int): - The number of channels in the spectrogram. - - inter_channels (int): - The number of channels in the intermediate layers. - - hidden_channels (int): - The number of channels in the hidden layers. - - filter_channels (int): - The number of channels in the filter layers. - - n_heads (int): - The number of attention heads. - - n_layers (int): - The number of layers. - - kernel_size (int): - The size of the kernel. - - p_dropout (float): - The dropout probability. - - resblock (str): - The type of residual block. - - resblock_kernel_sizes (List[int]): - The kernel sizes for the residual blocks. - - resblock_dilation_sizes (List[List[int]]): - The dilation sizes for the residual blocks. - - upsample_rates (List[int]): - The upsample rates. - - upsample_initial_channel (int): - The number of channels in the initial upsample layer. - - upsample_kernel_sizes (List[int]): - The kernel sizes for the upsample layers. - - n_layers_q (int): - The number of layers in the quantization network. - - use_spectral_norm (bool): - Whether to use spectral normalization. - - gin_channels (int): - The number of channels in the global conditioning vector. - - ssl_dim (int): - The dimension of the self-supervised learning embedding. - - use_spk (bool): - Whether to use external speaker encoder. - """ - - spec_channels: int = field(default=641) - inter_channels: int = field(default=192) - hidden_channels: int = field(default=192) - filter_channels: int = field(default=768) - n_heads: int = field(default=2) - n_layers: int = field(default=6) - kernel_size: int = field(default=3) - p_dropout: float = field(default=0.1) - resblock: str = field(default="1") - resblock_kernel_sizes: List[int] = field(default_factory=lambda: [3, 7, 11]) - resblock_dilation_sizes: List[List[int]] = field(default_factory=lambda: [[1, 3, 5], [1, 3, 5], [1, 3, 5]]) - upsample_rates: List[int] = field(default_factory=lambda: [10, 8, 2, 2]) - upsample_initial_channel: int = field(default=512) - upsample_kernel_sizes: List[int] = field(default_factory=lambda: [16, 16, 4, 4]) - n_layers_q: int = field(default=3) - use_spectral_norm: bool = field(default=False) - gin_channels: int = field(default=256) - ssl_dim: int = field(default=1024) - use_spk: bool = field(default=False) - num_spks: int = field(default=0) - segment_size: int = field(default=8960) - - -class FreeVC(BaseVC): - """ - - Papaer:: - https://arxiv.org/abs/2210.15418# - - Paper Abstract:: - Voice conversion (VC) can be achieved by first extracting source content information and target speaker - information, and then reconstructing waveform with these information. However, current approaches normally - either extract dirty content information with speaker information leaked in, or demand a large amount of - annotated data for training. Besides, the quality of reconstructed waveform can be degraded by the - mismatch between conversion model and vocoder. In this paper, we adopt the end-to-end framework of VITS for - high-quality waveform reconstruction, and propose strategies for clean content information extraction without - text annotation. We disentangle content information by imposing an information bottleneck to WavLM features, - and propose the spectrogram-resize based data augmentation to improve the purity of extracted content - information. Experimental results show that the proposed method outperforms the latest VC models trained with - annotated data and has greater robustness. - - Original Code:: - https://github.com/OlaWod/FreeVC - - Examples: - >>> from TTS.vc.configs.freevc_config import FreeVCConfig - >>> from TTS.vc.models.freevc import FreeVC - >>> config = FreeVCConfig() - >>> model = FreeVC(config) - """ - - def __init__(self, config: Coqpit, speaker_manager: SpeakerManager = None): - super().__init__(config, None, speaker_manager, None) - - self.init_multispeaker(config) - - self.spec_channels = self.args.spec_channels - self.inter_channels = self.args.inter_channels - self.hidden_channels = self.args.hidden_channels - self.filter_channels = self.args.filter_channels - self.n_heads = self.args.n_heads - self.n_layers = self.args.n_layers - self.kernel_size = self.args.kernel_size - self.p_dropout = self.args.p_dropout - self.resblock = self.args.resblock - self.resblock_kernel_sizes = self.args.resblock_kernel_sizes - self.resblock_dilation_sizes = self.args.resblock_dilation_sizes - self.upsample_rates = self.args.upsample_rates - self.upsample_initial_channel = self.args.upsample_initial_channel - self.upsample_kernel_sizes = self.args.upsample_kernel_sizes - self.segment_size = self.args.segment_size - self.gin_channels = self.args.gin_channels - self.ssl_dim = self.args.ssl_dim - self.use_spk = self.args.use_spk - - self.enc_p = Encoder(self.args.ssl_dim, self.inter_channels, self.hidden_channels, 5, 1, 16) - self.dec = Generator( - self.inter_channels, - self.resblock, - self.resblock_kernel_sizes, - self.resblock_dilation_sizes, - self.upsample_rates, - self.upsample_initial_channel, - self.upsample_kernel_sizes, - gin_channels=self.gin_channels, - ) - self.enc_q = Encoder( - self.spec_channels, self.inter_channels, self.hidden_channels, 5, 1, 16, gin_channels=self.gin_channels - ) - self.flow = ResidualCouplingBlock( - self.inter_channels, self.hidden_channels, 5, 1, 4, gin_channels=self.gin_channels - ) - if not self.use_spk: - self.enc_spk = SpeakerEncoder(model_hidden_size=self.gin_channels, model_embedding_size=self.gin_channels) - else: - self.load_pretrained_speaker_encoder() - - self.wavlm = get_wavlm() - - @property - def device(self): - return next(self.parameters()).device - - def load_pretrained_speaker_encoder(self): - """Load pretrained speaker encoder model as mentioned in the paper.""" - print(" > Loading pretrained speaker encoder model ...") - self.enc_spk_ex = SpeakerEncoderEx( - "https://github.com/coqui-ai/TTS/releases/download/v0.13.0_models/speaker_encoder.pt" - ) - - def init_multispeaker(self, config: Coqpit): - """Initialize multi-speaker modules of a model. A model can be trained either with a speaker embedding layer - or with external `d_vectors` computed from a speaker encoder model. - - You must provide a `speaker_manager` at initialization to set up the multi-speaker modules. - - Args: - config (Coqpit): Model configuration. - data (List, optional): Dataset items to infer number of speakers. Defaults to None. - """ - self.num_spks = self.args.num_spks - if self.speaker_manager: - self.num_spks = self.speaker_manager.num_spks - - def forward( - self, - c: torch.Tensor, - spec: torch.Tensor, - g: Optional[torch.Tensor] = None, - mel: Optional[torch.Tensor] = None, - c_lengths: Optional[torch.Tensor] = None, - spec_lengths: Optional[torch.Tensor] = None, - ) -> Tuple[ - torch.Tensor, - torch.Tensor, - torch.Tensor, - Tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor], - ]: - """ - Forward pass of the model. - - Args: - c: WavLM features. Shape: (batch_size, c_seq_len). - spec: The input spectrogram. Shape: (batch_size, spec_seq_len, spec_dim). - g: The speaker embedding. Shape: (batch_size, spk_emb_dim). - mel: The input mel-spectrogram for the speaker encoder. Shape: (batch_size, mel_seq_len, mel_dim). - c_lengths: The lengths of the WavLM features. Shape: (batch_size,). - spec_lengths: The lengths of the spectrogram. Shape: (batch_size,). - - Returns: - o: The output spectrogram. Shape: (batch_size, spec_seq_len, spec_dim). - ids_slice: The slice indices. Shape: (batch_size, num_slices). - spec_mask: The spectrogram mask. Shape: (batch_size, spec_seq_len). - (z, z_p, m_p, logs_p, m_q, logs_q): A tuple of latent variables. - """ - - # If c_lengths is None, set it to the length of the last dimension of c - if c_lengths is None: - c_lengths = (torch.ones(c.size(0)) * c.size(-1)).to(c.device) - - # If spec_lengths is None, set it to the length of the last dimension of spec - if spec_lengths is None: - spec_lengths = (torch.ones(spec.size(0)) * spec.size(-1)).to(spec.device) - - # If use_spk is False, compute g from mel using enc_spk - g = None - if not self.use_spk: - g = self.enc_spk(mel).unsqueeze(-1) - - # Compute m_p, logs_p, z, m_q, logs_q, and spec_mask using enc_p and enc_q - _, m_p, logs_p, _ = self.enc_p(c, c_lengths) - z, m_q, logs_q, spec_mask = self.enc_q(spec.transpose(1, 2), spec_lengths, g=g) - - # Compute z_p using flow - z_p = self.flow(z, spec_mask, g=g) - - # Randomly slice z and compute o using dec - z_slice, ids_slice = commons.rand_slice_segments(z, spec_lengths, self.segment_size) - o = self.dec(z_slice, g=g) - - return o, ids_slice, spec_mask, (z, z_p, m_p, logs_p, m_q, logs_q) - - @torch.no_grad() - def inference(self, c, g=None, mel=None, c_lengths=None): - """ - Inference pass of the model - - Args: - c (torch.Tensor): Input tensor. Shape: (batch_size, c_seq_len). - g (torch.Tensor): Speaker embedding tensor. Shape: (batch_size, spk_emb_dim). - mel (torch.Tensor): Mel-spectrogram tensor. Shape: (batch_size, mel_seq_len, mel_dim). - c_lengths (torch.Tensor): Lengths of the input tensor. Shape: (batch_size,). - - Returns: - torch.Tensor: Output tensor. - """ - if c_lengths == None: - c_lengths = (torch.ones(c.size(0)) * c.size(-1)).to(c.device) - if not self.use_spk: - g = self.enc_spk.embed_utterance(mel) - g = g.unsqueeze(-1) - z_p, m_p, logs_p, c_mask = self.enc_p(c, c_lengths) - z = self.flow(z_p, c_mask, g=g, reverse=True) - o = self.dec(z * c_mask, g=g) - return o - - def extract_wavlm_features(self, y): - """Extract WavLM features from an audio tensor. - - Args: - y (torch.Tensor): Audio tensor. Shape: (batch_size, audio_seq_len). - """ - - with torch.no_grad(): - c = self.wavlm.extract_features(y)[0] - c = c.transpose(1, 2) - return c - - def load_audio(self, wav): - """Read and format the input audio.""" - if isinstance(wav, str): - wav, _ = librosa.load(wav, sr=self.config.audio.input_sample_rate) - if isinstance(wav, np.ndarray): - wav = torch.from_numpy(wav).to(self.device) - if isinstance(wav, torch.Tensor): - wav = wav.to(self.device) - if isinstance(wav, list): - wav = torch.from_numpy(np.array(wav)).to(self.device) - return wav.float() - - @torch.inference_mode() - def voice_conversion(self, src, tgt): - """ - Voice conversion pass of the model. - - Args: - src (str or torch.Tensor): Source utterance. - tgt (str or torch.Tensor): Target utterance. - - Returns: - torch.Tensor: Output tensor. - """ - - wav_tgt = self.load_audio(tgt).cpu().numpy() - wav_tgt, _ = librosa.effects.trim(wav_tgt, top_db=20) - - if self.config.model_args.use_spk: - g_tgt = self.enc_spk_ex.embed_utterance(wav_tgt) - g_tgt = torch.from_numpy(g_tgt)[None, :, None].to(self.device) - else: - wav_tgt = torch.from_numpy(wav_tgt).unsqueeze(0).to(self.device) - mel_tgt = mel_spectrogram_torch( - wav_tgt, - self.config.audio.filter_length, - self.config.audio.n_mel_channels, - self.config.audio.input_sample_rate, - self.config.audio.hop_length, - self.config.audio.win_length, - self.config.audio.mel_fmin, - self.config.audio.mel_fmax, - ) - # src - wav_src = self.load_audio(src) - c = self.extract_wavlm_features(wav_src[None, :]) - - if self.config.model_args.use_spk: - audio = self.inference(c, g=g_tgt) - else: - audio = self.inference(c, mel=mel_tgt.transpose(1, 2)) - audio = audio[0][0].data.cpu().float().numpy() - return audio - - def eval_step(): - ... - - @staticmethod - def init_from_config(config: "VitsConfig", samples: Union[List[List], List[Dict]] = None, verbose=True): - model = FreeVC(config) - return model - - def load_checkpoint(self, config, checkpoint_path, eval=False, strict=True, cache=False): - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"], strict=strict) - if eval: - self.eval() - - def train_step(): - ... - - -@dataclass -class FreeVCConfig(BaseVCConfig): - """Defines parameters for FreeVC End2End TTS model. - - Args: - model (str): - Model name. Do not change unless you know what you are doing. - - model_args (FreeVCArgs): - Model architecture arguments. Defaults to `FreeVCArgs()`. - - audio (FreeVCAudioConfig): - Audio processing configuration. Defaults to `FreeVCAudioConfig()`. - - grad_clip (List): - Gradient clipping thresholds for each optimizer. Defaults to `[1000.0, 1000.0]`. - - lr_gen (float): - Initial learning rate for the generator. Defaults to 0.0002. - - lr_disc (float): - Initial learning rate for the discriminator. Defaults to 0.0002. - - lr_scheduler_gen (str): - Name of the learning rate scheduler for the generator. One of the `torch.optim.lr_scheduler.*`. Defaults to - `ExponentialLR`. - - lr_scheduler_gen_params (dict): - Parameters for the learning rate scheduler of the generator. Defaults to `{'gamma': 0.999875, "last_epoch":-1}`. - - lr_scheduler_disc (str): - Name of the learning rate scheduler for the discriminator. One of the `torch.optim.lr_scheduler.*`. Defaults to - `ExponentialLR`. - - lr_scheduler_disc_params (dict): - Parameters for the learning rate scheduler of the discriminator. Defaults to `{'gamma': 0.999875, "last_epoch":-1}`. - - scheduler_after_epoch (bool): - If true, step the schedulers after each epoch else after each step. Defaults to `False`. - - optimizer (str): - Name of the optimizer to use with both the generator and the discriminator networks. One of the - `torch.optim.*`. Defaults to `AdamW`. - - kl_loss_alpha (float): - Loss weight for KL loss. Defaults to 1.0. - - disc_loss_alpha (float): - Loss weight for the discriminator loss. Defaults to 1.0. - - gen_loss_alpha (float): - Loss weight for the generator loss. Defaults to 1.0. - - feat_loss_alpha (float): - Loss weight for the feature matching loss. Defaults to 1.0. - - mel_loss_alpha (float): - Loss weight for the mel loss. Defaults to 45.0. - - return_wav (bool): - If true, data loader returns the waveform as well as the other outputs. Do not change. Defaults to `True`. - - compute_linear_spec (bool): - If true, the linear spectrogram is computed and returned alongside the mel output. Do not change. Defaults to `True`. - - use_weighted_sampler (bool): - If true, use weighted sampler with bucketing for balancing samples between datasets used in training. Defaults to `False`. - - weighted_sampler_attrs (dict): - Key retuned by the formatter to be used for weighted sampler. For example `{"root_path": 2.0, "speaker_name": 1.0}` sets sample probabilities - by overweighting `root_path` by 2.0. Defaults to `{}`. - - weighted_sampler_multipliers (dict): - Weight each unique value of a key returned by the formatter for weighted sampling. - For example `{"root_path":{"/raid/datasets/libritts-clean-16khz-bwe-coqui_44khz/LibriTTS/train-clean-100/":1.0, "/raid/datasets/libritts-clean-16khz-bwe-coqui_44khz/LibriTTS/train-clean-360/": 0.5}`. - It will sample instances from `train-clean-100` 2 times more than `train-clean-360`. Defaults to `{}`. - - r (int): - Number of spectrogram frames to be generated at a time. Do not change. Defaults to `1`. - - add_blank (bool): - If true, a blank token is added in between every character. Defaults to `True`. - - test_sentences (List[List]): - List of sentences with speaker and language information to be used for testing. - - language_ids_file (str): - Path to the language ids file. - - use_language_embedding (bool): - If true, language embedding is used. Defaults to `False`. - - Note: - Check :class:`TTS.tts.configs.shared_configs.BaseTTSConfig` for the inherited parameters. - - Example: - - >>> from TTS.tts.configs.freevc_config import FreeVCConfig - >>> config = FreeVCConfig() - """ - - model: str = "freevc" - # model specific params - model_args: FreeVCArgs = field(default_factory=FreeVCArgs) - audio: FreeVCAudioConfig = field(default_factory=FreeVCAudioConfig) - - # optimizer - # TODO with training support - - # loss params - # TODO with training support - - # data loader params - return_wav: bool = True - compute_linear_spec: bool = True - - # sampler params - use_weighted_sampler: bool = False # TODO: move it to the base config - weighted_sampler_attrs: dict = field(default_factory=lambda: {}) - weighted_sampler_multipliers: dict = field(default_factory=lambda: {}) - - # overrides - r: int = 1 # DO NOT CHANGE - add_blank: bool = True - - # multi-speaker settings - # use speaker embedding layer - num_speakers: int = 0 - speakers_file: str = None - speaker_embedding_channels: int = 256 - - # use d-vectors - use_d_vector_file: bool = False - d_vector_file: List[str] = None - d_vector_dim: int = None - - def __post_init__(self): - for key, val in self.model_args.items(): - if hasattr(self, key): - self[key] = val diff --git a/TTS/TTS/vc/modules/__init__.py b/TTS/TTS/vc/modules/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/vc/modules/freevc/__init__.py b/TTS/TTS/vc/modules/freevc/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/vc/modules/freevc/commons.py b/TTS/TTS/vc/modules/freevc/commons.py deleted file mode 100644 index 5684a88e932dbab6d56fdbf7f3a7704fd1021298..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/modules/freevc/commons.py +++ /dev/null @@ -1,170 +0,0 @@ -import math - -import numpy as np -import torch -from torch import nn -from torch.nn import functional as F - - -def init_weights(m, mean=0.0, std=0.01): - classname = m.__class__.__name__ - if classname.find("Conv") != -1: - m.weight.data.normal_(mean, std) - - -def get_padding(kernel_size, dilation=1): - return int((kernel_size * dilation - dilation) / 2) - - -def convert_pad_shape(pad_shape): - l = pad_shape[::-1] - pad_shape = [item for sublist in l for item in sublist] - return pad_shape - - -def intersperse(lst, item): - result = [item] * (len(lst) * 2 + 1) - result[1::2] = lst - return result - - -def kl_divergence(m_p, logs_p, m_q, logs_q): - """KL(P||Q)""" - kl = (logs_q - logs_p) - 0.5 - kl += 0.5 * (torch.exp(2.0 * logs_p) + ((m_p - m_q) ** 2)) * torch.exp(-2.0 * logs_q) - return kl - - -def rand_gumbel(shape): - """Sample from the Gumbel distribution, protect from overflows.""" - uniform_samples = torch.rand(shape) * 0.99998 + 0.00001 - return -torch.log(-torch.log(uniform_samples)) - - -def rand_gumbel_like(x): - g = rand_gumbel(x.size()).to(dtype=x.dtype, device=x.device) - return g - - -def slice_segments(x, ids_str, segment_size=4): - ret = torch.zeros_like(x[:, :, :segment_size]) - for i in range(x.size(0)): - idx_str = ids_str[i] - idx_end = idx_str + segment_size - ret[i] = x[i, :, idx_str:idx_end] - return ret - - -def rand_slice_segments(x, x_lengths=None, segment_size=4): - b, d, t = x.size() - if x_lengths is None: - x_lengths = t - ids_str_max = x_lengths - segment_size + 1 - ids_str = (torch.rand([b]).to(device=x.device) * ids_str_max).to(dtype=torch.long) - ret = slice_segments(x, ids_str, segment_size) - return ret, ids_str - - -def rand_spec_segments(x, x_lengths=None, segment_size=4): - b, d, t = x.size() - if x_lengths is None: - x_lengths = t - ids_str_max = x_lengths - segment_size - ids_str = (torch.rand([b]).to(device=x.device) * ids_str_max).to(dtype=torch.long) - ret = slice_segments(x, ids_str, segment_size) - return ret, ids_str - - -def get_timing_signal_1d(length, channels, min_timescale=1.0, max_timescale=1.0e4): - position = torch.arange(length, dtype=torch.float) - num_timescales = channels // 2 - log_timescale_increment = math.log(float(max_timescale) / float(min_timescale)) / (num_timescales - 1) - inv_timescales = min_timescale * torch.exp( - torch.arange(num_timescales, dtype=torch.float) * -log_timescale_increment - ) - scaled_time = position.unsqueeze(0) * inv_timescales.unsqueeze(1) - signal = torch.cat([torch.sin(scaled_time), torch.cos(scaled_time)], 0) - signal = F.pad(signal, [0, 0, 0, channels % 2]) - signal = signal.view(1, channels, length) - return signal - - -def add_timing_signal_1d(x, min_timescale=1.0, max_timescale=1.0e4): - b, channels, length = x.size() - signal = get_timing_signal_1d(length, channels, min_timescale, max_timescale) - return x + signal.to(dtype=x.dtype, device=x.device) - - -def cat_timing_signal_1d(x, min_timescale=1.0, max_timescale=1.0e4, axis=1): - b, channels, length = x.size() - signal = get_timing_signal_1d(length, channels, min_timescale, max_timescale) - return torch.cat([x, signal.to(dtype=x.dtype, device=x.device)], axis) - - -def subsequent_mask(length): - mask = torch.tril(torch.ones(length, length)).unsqueeze(0).unsqueeze(0) - return mask - - -@torch.jit.script -def fused_add_tanh_sigmoid_multiply(input_a, input_b, n_channels): - n_channels_int = n_channels[0] - in_act = input_a + input_b - t_act = torch.tanh(in_act[:, :n_channels_int, :]) - s_act = torch.sigmoid(in_act[:, n_channels_int:, :]) - acts = t_act * s_act - return acts - - -def convert_pad_shape(pad_shape): - l = pad_shape[::-1] - pad_shape = [item for sublist in l for item in sublist] - return pad_shape - - -def shift_1d(x): - x = F.pad(x, convert_pad_shape([[0, 0], [0, 0], [1, 0]]))[:, :, :-1] - return x - - -def sequence_mask(length, max_length=None): - if max_length is None: - max_length = length.max() - x = torch.arange(max_length, dtype=length.dtype, device=length.device) - return x.unsqueeze(0) < length.unsqueeze(1) - - -def generate_path(duration, mask): - """ - duration: [b, 1, t_x] - mask: [b, 1, t_y, t_x] - """ - device = duration.device - - b, _, t_y, t_x = mask.shape - cum_duration = torch.cumsum(duration, -1) - - cum_duration_flat = cum_duration.view(b * t_x) - path = sequence_mask(cum_duration_flat, t_y).to(mask.dtype) - path = path.view(b, t_x, t_y) - path = path - F.pad(path, convert_pad_shape([[0, 0], [1, 0], [0, 0]]))[:, :-1] - path = path.unsqueeze(1).transpose(2, 3) * mask - return path - - -def clip_grad_value_(parameters, clip_value, norm_type=2): - if isinstance(parameters, torch.Tensor): - parameters = [parameters] - parameters = list(filter(lambda p: p.grad is not None, parameters)) - norm_type = float(norm_type) - if clip_value is not None: - clip_value = float(clip_value) - - total_norm = 0 - for p in parameters: - param_norm = p.grad.data.norm(norm_type) - total_norm += param_norm.item() ** norm_type - if clip_value is not None: - p.grad.data.clamp_(min=-clip_value, max=clip_value) - total_norm = total_norm ** (1.0 / norm_type) - return total_norm diff --git a/TTS/TTS/vc/modules/freevc/mel_processing.py b/TTS/TTS/vc/modules/freevc/mel_processing.py deleted file mode 100644 index 2dcbf214935a1fde832a32139145ce87fa752598..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/modules/freevc/mel_processing.py +++ /dev/null @@ -1,125 +0,0 @@ -import torch -import torch.utils.data -from librosa.filters import mel as librosa_mel_fn - -MAX_WAV_VALUE = 32768.0 - - -def dynamic_range_compression_torch(x, C=1, clip_val=1e-5): - """ - PARAMS - ------ - C: compression factor - """ - return torch.log(torch.clamp(x, min=clip_val) * C) - - -def dynamic_range_decompression_torch(x, C=1): - """ - PARAMS - ------ - C: compression factor used to compress - """ - return torch.exp(x) / C - - -def spectral_normalize_torch(magnitudes): - output = dynamic_range_compression_torch(magnitudes) - return output - - -def spectral_de_normalize_torch(magnitudes): - output = dynamic_range_decompression_torch(magnitudes) - return output - - -mel_basis = {} -hann_window = {} - - -def spectrogram_torch(y, n_fft, sampling_rate, hop_size, win_size, center=False): - if torch.min(y) < -1.0: - print("min value is ", torch.min(y)) - if torch.max(y) > 1.0: - print("max value is ", torch.max(y)) - - global hann_window - dtype_device = str(y.dtype) + "_" + str(y.device) - wnsize_dtype_device = str(win_size) + "_" + dtype_device - if wnsize_dtype_device not in hann_window: - hann_window[wnsize_dtype_device] = torch.hann_window(win_size).to(dtype=y.dtype, device=y.device) - - y = torch.nn.functional.pad( - y.unsqueeze(1), (int((n_fft - hop_size) / 2), int((n_fft - hop_size) / 2)), mode="reflect" - ) - y = y.squeeze(1) - - spec = torch.stft( - y, - n_fft, - hop_length=hop_size, - win_length=win_size, - window=hann_window[wnsize_dtype_device], - center=center, - pad_mode="reflect", - normalized=False, - onesided=True, - return_complex=False, - ) - - spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) - return spec - - -def spec_to_mel_torch(spec, n_fft, num_mels, sampling_rate, fmin, fmax): - global mel_basis - dtype_device = str(spec.dtype) + "_" + str(spec.device) - fmax_dtype_device = str(fmax) + "_" + dtype_device - if fmax_dtype_device not in mel_basis: - mel = librosa_mel_fn(sr=sampling_rate, n_fft=n_fft, n_mels=num_mels, fmin=fmin, fmax=fmax) - mel_basis[fmax_dtype_device] = torch.from_numpy(mel).to(dtype=spec.dtype, device=spec.device) - spec = torch.matmul(mel_basis[fmax_dtype_device], spec) - spec = spectral_normalize_torch(spec) - return spec - - -def mel_spectrogram_torch(y, n_fft, num_mels, sampling_rate, hop_size, win_size, fmin, fmax, center=False): - if torch.min(y) < -1.0: - print("min value is ", torch.min(y)) - if torch.max(y) > 1.0: - print("max value is ", torch.max(y)) - - global mel_basis, hann_window - dtype_device = str(y.dtype) + "_" + str(y.device) - fmax_dtype_device = str(fmax) + "_" + dtype_device - wnsize_dtype_device = str(win_size) + "_" + dtype_device - if fmax_dtype_device not in mel_basis: - mel = librosa_mel_fn(sr=sampling_rate, n_fft=n_fft, n_mels=num_mels, fmin=fmin, fmax=fmax) - mel_basis[fmax_dtype_device] = torch.from_numpy(mel).to(dtype=y.dtype, device=y.device) - if wnsize_dtype_device not in hann_window: - hann_window[wnsize_dtype_device] = torch.hann_window(win_size).to(dtype=y.dtype, device=y.device) - - y = torch.nn.functional.pad( - y.unsqueeze(1), (int((n_fft - hop_size) / 2), int((n_fft - hop_size) / 2)), mode="reflect" - ) - y = y.squeeze(1) - - spec = torch.stft( - y, - n_fft, - hop_length=hop_size, - win_length=win_size, - window=hann_window[wnsize_dtype_device], - center=center, - pad_mode="reflect", - normalized=False, - onesided=True, - return_complex=False, - ) - - spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) - - spec = torch.matmul(mel_basis[fmax_dtype_device], spec) - spec = spectral_normalize_torch(spec) - - return spec diff --git a/TTS/TTS/vc/modules/freevc/modules.py b/TTS/TTS/vc/modules/freevc/modules.py deleted file mode 100644 index 0503a13c8a18bae791aabb41b0e716ab3505222b..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/modules/freevc/modules.py +++ /dev/null @@ -1,391 +0,0 @@ -import copy -import math - -import numpy as np -import scipy -import torch -from torch import nn -from torch.nn import AvgPool1d, Conv1d, Conv2d, ConvTranspose1d -from torch.nn import functional as F -from torch.nn.utils import remove_weight_norm, weight_norm - -import TTS.vc.modules.freevc.commons as commons -from TTS.vc.modules.freevc.commons import get_padding, init_weights - -LRELU_SLOPE = 0.1 - - -class LayerNorm(nn.Module): - def __init__(self, channels, eps=1e-5): - super().__init__() - self.channels = channels - self.eps = eps - - self.gamma = nn.Parameter(torch.ones(channels)) - self.beta = nn.Parameter(torch.zeros(channels)) - - def forward(self, x): - x = x.transpose(1, -1) - x = F.layer_norm(x, (self.channels,), self.gamma, self.beta, self.eps) - return x.transpose(1, -1) - - -class ConvReluNorm(nn.Module): - def __init__(self, in_channels, hidden_channels, out_channels, kernel_size, n_layers, p_dropout): - super().__init__() - self.in_channels = in_channels - self.hidden_channels = hidden_channels - self.out_channels = out_channels - self.kernel_size = kernel_size - self.n_layers = n_layers - self.p_dropout = p_dropout - assert n_layers > 1, "Number of layers should be larger than 0." - - self.conv_layers = nn.ModuleList() - self.norm_layers = nn.ModuleList() - self.conv_layers.append(nn.Conv1d(in_channels, hidden_channels, kernel_size, padding=kernel_size // 2)) - self.norm_layers.append(LayerNorm(hidden_channels)) - self.relu_drop = nn.Sequential(nn.ReLU(), nn.Dropout(p_dropout)) - for _ in range(n_layers - 1): - self.conv_layers.append(nn.Conv1d(hidden_channels, hidden_channels, kernel_size, padding=kernel_size // 2)) - self.norm_layers.append(LayerNorm(hidden_channels)) - self.proj = nn.Conv1d(hidden_channels, out_channels, 1) - self.proj.weight.data.zero_() - self.proj.bias.data.zero_() - - def forward(self, x, x_mask): - x_org = x - for i in range(self.n_layers): - x = self.conv_layers[i](x * x_mask) - x = self.norm_layers[i](x) - x = self.relu_drop(x) - x = x_org + self.proj(x) - return x * x_mask - - -class DDSConv(nn.Module): - """ - Dialted and Depth-Separable Convolution - """ - - def __init__(self, channels, kernel_size, n_layers, p_dropout=0.0): - super().__init__() - self.channels = channels - self.kernel_size = kernel_size - self.n_layers = n_layers - self.p_dropout = p_dropout - - self.drop = nn.Dropout(p_dropout) - self.convs_sep = nn.ModuleList() - self.convs_1x1 = nn.ModuleList() - self.norms_1 = nn.ModuleList() - self.norms_2 = nn.ModuleList() - for i in range(n_layers): - dilation = kernel_size**i - padding = (kernel_size * dilation - dilation) // 2 - self.convs_sep.append( - nn.Conv1d(channels, channels, kernel_size, groups=channels, dilation=dilation, padding=padding) - ) - self.convs_1x1.append(nn.Conv1d(channels, channels, 1)) - self.norms_1.append(LayerNorm(channels)) - self.norms_2.append(LayerNorm(channels)) - - def forward(self, x, x_mask, g=None): - if g is not None: - x = x + g - for i in range(self.n_layers): - y = self.convs_sep[i](x * x_mask) - y = self.norms_1[i](y) - y = F.gelu(y) - y = self.convs_1x1[i](y) - y = self.norms_2[i](y) - y = F.gelu(y) - y = self.drop(y) - x = x + y - return x * x_mask - - -class WN(torch.nn.Module): - def __init__(self, hidden_channels, kernel_size, dilation_rate, n_layers, gin_channels=0, p_dropout=0): - super(WN, self).__init__() - assert kernel_size % 2 == 1 - self.hidden_channels = hidden_channels - self.kernel_size = (kernel_size,) - self.dilation_rate = dilation_rate - self.n_layers = n_layers - self.gin_channels = gin_channels - self.p_dropout = p_dropout - - self.in_layers = torch.nn.ModuleList() - self.res_skip_layers = torch.nn.ModuleList() - self.drop = nn.Dropout(p_dropout) - - if gin_channels != 0: - cond_layer = torch.nn.Conv1d(gin_channels, 2 * hidden_channels * n_layers, 1) - self.cond_layer = torch.nn.utils.weight_norm(cond_layer, name="weight") - - for i in range(n_layers): - dilation = dilation_rate**i - padding = int((kernel_size * dilation - dilation) / 2) - in_layer = torch.nn.Conv1d( - hidden_channels, 2 * hidden_channels, kernel_size, dilation=dilation, padding=padding - ) - in_layer = torch.nn.utils.weight_norm(in_layer, name="weight") - self.in_layers.append(in_layer) - - # last one is not necessary - if i < n_layers - 1: - res_skip_channels = 2 * hidden_channels - else: - res_skip_channels = hidden_channels - - res_skip_layer = torch.nn.Conv1d(hidden_channels, res_skip_channels, 1) - res_skip_layer = torch.nn.utils.weight_norm(res_skip_layer, name="weight") - self.res_skip_layers.append(res_skip_layer) - - def forward(self, x, x_mask, g=None, **kwargs): - output = torch.zeros_like(x) - n_channels_tensor = torch.IntTensor([self.hidden_channels]) - - if g is not None: - g = self.cond_layer(g) - - for i in range(self.n_layers): - x_in = self.in_layers[i](x) - if g is not None: - cond_offset = i * 2 * self.hidden_channels - g_l = g[:, cond_offset : cond_offset + 2 * self.hidden_channels, :] - else: - g_l = torch.zeros_like(x_in) - - acts = commons.fused_add_tanh_sigmoid_multiply(x_in, g_l, n_channels_tensor) - acts = self.drop(acts) - - res_skip_acts = self.res_skip_layers[i](acts) - if i < self.n_layers - 1: - res_acts = res_skip_acts[:, : self.hidden_channels, :] - x = (x + res_acts) * x_mask - output = output + res_skip_acts[:, self.hidden_channels :, :] - else: - output = output + res_skip_acts - return output * x_mask - - def remove_weight_norm(self): - if self.gin_channels != 0: - torch.nn.utils.remove_weight_norm(self.cond_layer) - for l in self.in_layers: - torch.nn.utils.remove_weight_norm(l) - for l in self.res_skip_layers: - torch.nn.utils.remove_weight_norm(l) - - -class ResBlock1(torch.nn.Module): - def __init__(self, channels, kernel_size=3, dilation=(1, 3, 5)): - super(ResBlock1, self).__init__() - self.convs1 = nn.ModuleList( - [ - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[0], - padding=get_padding(kernel_size, dilation[0]), - ) - ), - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[1], - padding=get_padding(kernel_size, dilation[1]), - ) - ), - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[2], - padding=get_padding(kernel_size, dilation[2]), - ) - ), - ] - ) - self.convs1.apply(init_weights) - - self.convs2 = nn.ModuleList( - [ - weight_norm( - Conv1d(channels, channels, kernel_size, 1, dilation=1, padding=get_padding(kernel_size, 1)) - ), - weight_norm( - Conv1d(channels, channels, kernel_size, 1, dilation=1, padding=get_padding(kernel_size, 1)) - ), - weight_norm( - Conv1d(channels, channels, kernel_size, 1, dilation=1, padding=get_padding(kernel_size, 1)) - ), - ] - ) - self.convs2.apply(init_weights) - - def forward(self, x, x_mask=None): - for c1, c2 in zip(self.convs1, self.convs2): - xt = F.leaky_relu(x, LRELU_SLOPE) - if x_mask is not None: - xt = xt * x_mask - xt = c1(xt) - xt = F.leaky_relu(xt, LRELU_SLOPE) - if x_mask is not None: - xt = xt * x_mask - xt = c2(xt) - x = xt + x - if x_mask is not None: - x = x * x_mask - return x - - def remove_weight_norm(self): - for l in self.convs1: - remove_weight_norm(l) - for l in self.convs2: - remove_weight_norm(l) - - -class ResBlock2(torch.nn.Module): - def __init__(self, channels, kernel_size=3, dilation=(1, 3)): - super(ResBlock2, self).__init__() - self.convs = nn.ModuleList( - [ - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[0], - padding=get_padding(kernel_size, dilation[0]), - ) - ), - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[1], - padding=get_padding(kernel_size, dilation[1]), - ) - ), - ] - ) - self.convs.apply(init_weights) - - def forward(self, x, x_mask=None): - for c in self.convs: - xt = F.leaky_relu(x, LRELU_SLOPE) - if x_mask is not None: - xt = xt * x_mask - xt = c(xt) - x = xt + x - if x_mask is not None: - x = x * x_mask - return x - - def remove_weight_norm(self): - for l in self.convs: - remove_weight_norm(l) - - -class Log(nn.Module): - def forward(self, x, x_mask, reverse=False, **kwargs): - if not reverse: - y = torch.log(torch.clamp_min(x, 1e-5)) * x_mask - logdet = torch.sum(-y, [1, 2]) - return y, logdet - else: - x = torch.exp(x) * x_mask - return x - - -class Flip(nn.Module): - def forward(self, x, *args, reverse=False, **kwargs): - x = torch.flip(x, [1]) - if not reverse: - logdet = torch.zeros(x.size(0)).to(dtype=x.dtype, device=x.device) - return x, logdet - else: - return x - - -class ElementwiseAffine(nn.Module): - def __init__(self, channels): - super().__init__() - self.channels = channels - self.m = nn.Parameter(torch.zeros(channels, 1)) - self.logs = nn.Parameter(torch.zeros(channels, 1)) - - def forward(self, x, x_mask, reverse=False, **kwargs): - if not reverse: - y = self.m + torch.exp(self.logs) * x - y = y * x_mask - logdet = torch.sum(self.logs * x_mask, [1, 2]) - return y, logdet - else: - x = (x - self.m) * torch.exp(-self.logs) * x_mask - return x - - -class ResidualCouplingLayer(nn.Module): - def __init__( - self, - channels, - hidden_channels, - kernel_size, - dilation_rate, - n_layers, - p_dropout=0, - gin_channels=0, - mean_only=False, - ): - assert channels % 2 == 0, "channels should be divisible by 2" - super().__init__() - self.channels = channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.n_layers = n_layers - self.half_channels = channels // 2 - self.mean_only = mean_only - - self.pre = nn.Conv1d(self.half_channels, hidden_channels, 1) - self.enc = WN( - hidden_channels, kernel_size, dilation_rate, n_layers, p_dropout=p_dropout, gin_channels=gin_channels - ) - self.post = nn.Conv1d(hidden_channels, self.half_channels * (2 - mean_only), 1) - self.post.weight.data.zero_() - self.post.bias.data.zero_() - - def forward(self, x, x_mask, g=None, reverse=False): - x0, x1 = torch.split(x, [self.half_channels] * 2, 1) - h = self.pre(x0) * x_mask - h = self.enc(h, x_mask, g=g) - stats = self.post(h) * x_mask - if not self.mean_only: - m, logs = torch.split(stats, [self.half_channels] * 2, 1) - else: - m = stats - logs = torch.zeros_like(m) - - if not reverse: - x1 = m + x1 * torch.exp(logs) * x_mask - x = torch.cat([x0, x1], 1) - logdet = torch.sum(logs, [1, 2]) - return x, logdet - else: - x1 = (x1 - m) * torch.exp(-logs) * x_mask - x = torch.cat([x0, x1], 1) - return x diff --git a/TTS/TTS/vc/modules/freevc/speaker_encoder/__init__.py b/TTS/TTS/vc/modules/freevc/speaker_encoder/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/vc/modules/freevc/speaker_encoder/audio.py b/TTS/TTS/vc/modules/freevc/speaker_encoder/audio.py deleted file mode 100644 index 52f6fd0893a1e67270ccd6af4a50d1370a8fa5c4..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/modules/freevc/speaker_encoder/audio.py +++ /dev/null @@ -1,65 +0,0 @@ -import struct -from pathlib import Path -from typing import Optional, Union - -# import webrtcvad -import librosa -import numpy as np -from scipy.ndimage.morphology import binary_dilation - -from TTS.vc.modules.freevc.speaker_encoder.hparams import * - -int16_max = (2**15) - 1 - - -def preprocess_wav(fpath_or_wav: Union[str, Path, np.ndarray], source_sr: Optional[int] = None): - """ - Applies the preprocessing operations used in training the Speaker Encoder to a waveform - either on disk or in memory. The waveform will be resampled to match the data hyperparameters. - - :param fpath_or_wav: either a filepath to an audio file (many extensions are supported, not - just .wav), either the waveform as a numpy array of floats. - :param source_sr: if passing an audio waveform, the sampling rate of the waveform before - preprocessing. After preprocessing, the waveform's sampling rate will match the data - hyperparameters. If passing a filepath, the sampling rate will be automatically detected and - this argument will be ignored. - """ - # Load the wav from disk if needed - if isinstance(fpath_or_wav, str) or isinstance(fpath_or_wav, Path): - wav, source_sr = librosa.load(fpath_or_wav, sr=None) - else: - wav = fpath_or_wav - - # Resample the wav if needed - if source_sr is not None and source_sr != sampling_rate: - wav = librosa.resample(wav, source_sr, sampling_rate) - - # Apply the preprocessing: normalize volume and shorten long silences - wav = normalize_volume(wav, audio_norm_target_dBFS, increase_only=True) - wav = trim_long_silences(wav) - - return wav - - -def wav_to_mel_spectrogram(wav): - """ - Derives a mel spectrogram ready to be used by the encoder from a preprocessed audio waveform. - Note: this not a log-mel spectrogram. - """ - frames = librosa.feature.melspectrogram( - y=wav, - sr=sampling_rate, - n_fft=int(sampling_rate * mel_window_length / 1000), - hop_length=int(sampling_rate * mel_window_step / 1000), - n_mels=mel_n_channels, - ) - return frames.astype(np.float32).T - - -def normalize_volume(wav, target_dBFS, increase_only=False, decrease_only=False): - if increase_only and decrease_only: - raise ValueError("Both increase only and decrease only are set") - dBFS_change = target_dBFS - 10 * np.log10(np.mean(wav**2)) - if (dBFS_change < 0 and increase_only) or (dBFS_change > 0 and decrease_only): - return wav - return wav * (10 ** (dBFS_change / 20)) diff --git a/TTS/TTS/vc/modules/freevc/speaker_encoder/hparams.py b/TTS/TTS/vc/modules/freevc/speaker_encoder/hparams.py deleted file mode 100644 index 2c536ae16cf8134d66c83aaf978ed01fc396b680..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/modules/freevc/speaker_encoder/hparams.py +++ /dev/null @@ -1,31 +0,0 @@ -## Mel-filterbank -mel_window_length = 25 # In milliseconds -mel_window_step = 10 # In milliseconds -mel_n_channels = 40 - - -## Audio -sampling_rate = 16000 -# Number of spectrogram frames in a partial utterance -partials_n_frames = 160 # 1600 ms - - -## Voice Activation Detection -# Window size of the VAD. Must be either 10, 20 or 30 milliseconds. -# This sets the granularity of the VAD. Should not need to be changed. -vad_window_length = 30 # In milliseconds -# Number of frames to average together when performing the moving average smoothing. -# The larger this value, the larger the VAD variations must be to not get smoothed out. -vad_moving_average_width = 8 -# Maximum number of consecutive silent frames a segment can have. -vad_max_silence_length = 6 - - -## Audio volume normalization -audio_norm_target_dBFS = -30 - - -## Model parameters -model_hidden_size = 256 -model_embedding_size = 256 -model_num_layers = 3 diff --git a/TTS/TTS/vc/modules/freevc/speaker_encoder/speaker_encoder.py b/TTS/TTS/vc/modules/freevc/speaker_encoder/speaker_encoder.py deleted file mode 100644 index 2e21a14fd833ecf4f1b1d5b8573ac100dffacbfa..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/modules/freevc/speaker_encoder/speaker_encoder.py +++ /dev/null @@ -1,175 +0,0 @@ -from pathlib import Path -from time import perf_counter as timer -from typing import List, Union - -import numpy as np -import torch -from torch import nn - -from TTS.utils.io import load_fsspec -from TTS.vc.modules.freevc.speaker_encoder import audio -from TTS.vc.modules.freevc.speaker_encoder.hparams import * - - -class SpeakerEncoder(nn.Module): - def __init__(self, weights_fpath, device: Union[str, torch.device] = None, verbose=True): - """ - :param device: either a torch device or the name of a torch device (e.g. "cpu", "cuda"). - If None, defaults to cuda if it is available on your machine, otherwise the model will - run on cpu. Outputs are always returned on the cpu, as numpy arrays. - """ - super().__init__() - - # Define the network - self.lstm = nn.LSTM(mel_n_channels, model_hidden_size, model_num_layers, batch_first=True) - self.linear = nn.Linear(model_hidden_size, model_embedding_size) - self.relu = nn.ReLU() - - # Get the target device - if device is None: - device = torch.device("cuda" if torch.cuda.is_available() else "cpu") - elif isinstance(device, str): - device = torch.device(device) - self.device = device - - # Load the pretrained model'speaker weights - # weights_fpath = Path(__file__).resolve().parent.joinpath("pretrained.pt") - # if not weights_fpath.exists(): - # raise Exception("Couldn't find the voice encoder pretrained model at %s." % - # weights_fpath) - - start = timer() - checkpoint = load_fsspec(weights_fpath, map_location="cpu") - - self.load_state_dict(checkpoint["model_state"], strict=False) - self.to(device) - - if verbose: - print("Loaded the voice encoder model on %s in %.2f seconds." % (device.type, timer() - start)) - - def forward(self, mels: torch.FloatTensor): - """ - Computes the embeddings of a batch of utterance spectrograms. - :param mels: a batch of mel spectrograms of same duration as a float32 tensor of shape - (batch_size, n_frames, n_channels) - :return: the embeddings as a float 32 tensor of shape (batch_size, embedding_size). - Embeddings are positive and L2-normed, thus they lay in the range [0, 1]. - """ - # Pass the input through the LSTM layers and retrieve the final hidden state of the last - # layer. Apply a cutoff to 0 for negative values and L2 normalize the embeddings. - _, (hidden, _) = self.lstm(mels) - embeds_raw = self.relu(self.linear(hidden[-1])) - return embeds_raw / torch.norm(embeds_raw, dim=1, keepdim=True) - - @staticmethod - def compute_partial_slices(n_samples: int, rate, min_coverage): - """ - Computes where to split an utterance waveform and its corresponding mel spectrogram to - obtain partial utterances of each. Both the waveform and the - mel spectrogram slices are returned, so as to make each partial utterance waveform - correspond to its spectrogram. - - The returned ranges may be indexing further than the length of the waveform. It is - recommended that you pad the waveform with zeros up to wav_slices[-1].stop. - - :param n_samples: the number of samples in the waveform - :param rate: how many partial utterances should occur per second. Partial utterances must - cover the span of the entire utterance, thus the rate should not be lower than the inverse - of the duration of a partial utterance. By default, partial utterances are 1.6s long and - the minimum rate is thus 0.625. - :param min_coverage: when reaching the last partial utterance, it may or may not have - enough frames. If at least of are present, - then the last partial utterance will be considered by zero-padding the audio. Otherwise, - it will be discarded. If there aren't enough frames for one partial utterance, - this parameter is ignored so that the function always returns at least one slice. - :return: the waveform slices and mel spectrogram slices as lists of array slices. Index - respectively the waveform and the mel spectrogram with these slices to obtain the partial - utterances. - """ - assert 0 < min_coverage <= 1 - - # Compute how many frames separate two partial utterances - samples_per_frame = int((sampling_rate * mel_window_step / 1000)) - n_frames = int(np.ceil((n_samples + 1) / samples_per_frame)) - frame_step = int(np.round((sampling_rate / rate) / samples_per_frame)) - assert 0 < frame_step, "The rate is too high" - assert frame_step <= partials_n_frames, "The rate is too low, it should be %f at least" % ( - sampling_rate / (samples_per_frame * partials_n_frames) - ) - - # Compute the slices - wav_slices, mel_slices = [], [] - steps = max(1, n_frames - partials_n_frames + frame_step + 1) - for i in range(0, steps, frame_step): - mel_range = np.array([i, i + partials_n_frames]) - wav_range = mel_range * samples_per_frame - mel_slices.append(slice(*mel_range)) - wav_slices.append(slice(*wav_range)) - - # Evaluate whether extra padding is warranted or not - last_wav_range = wav_slices[-1] - coverage = (n_samples - last_wav_range.start) / (last_wav_range.stop - last_wav_range.start) - if coverage < min_coverage and len(mel_slices) > 1: - mel_slices = mel_slices[:-1] - wav_slices = wav_slices[:-1] - - return wav_slices, mel_slices - - def embed_utterance(self, wav: np.ndarray, return_partials=False, rate=1.3, min_coverage=0.75): - """ - Computes an embedding for a single utterance. The utterance is divided in partial - utterances and an embedding is computed for each. The complete utterance embedding is the - L2-normed average embedding of the partial utterances. - - TODO: independent batched version of this function - - :param wav: a preprocessed utterance waveform as a numpy array of float32 - :param return_partials: if True, the partial embeddings will also be returned along with - the wav slices corresponding to each partial utterance. - :param rate: how many partial utterances should occur per second. Partial utterances must - cover the span of the entire utterance, thus the rate should not be lower than the inverse - of the duration of a partial utterance. By default, partial utterances are 1.6s long and - the minimum rate is thus 0.625. - :param min_coverage: when reaching the last partial utterance, it may or may not have - enough frames. If at least of are present, - then the last partial utterance will be considered by zero-padding the audio. Otherwise, - it will be discarded. If there aren't enough frames for one partial utterance, - this parameter is ignored so that the function always returns at least one slice. - :return: the embedding as a numpy array of float32 of shape (model_embedding_size,). If - is True, the partial utterances as a numpy array of float32 of shape - (n_partials, model_embedding_size) and the wav partials as a list of slices will also be - returned. - """ - # Compute where to split the utterance into partials and pad the waveform with zeros if - # the partial utterances cover a larger range. - wav_slices, mel_slices = self.compute_partial_slices(len(wav), rate, min_coverage) - max_wave_length = wav_slices[-1].stop - if max_wave_length >= len(wav): - wav = np.pad(wav, (0, max_wave_length - len(wav)), "constant") - - # Split the utterance into partials and forward them through the model - mel = audio.wav_to_mel_spectrogram(wav) - mels = np.array([mel[s] for s in mel_slices]) - with torch.no_grad(): - mels = torch.from_numpy(mels).to(self.device) - partial_embeds = self(mels).cpu().numpy() - - # Compute the utterance embedding from the partial embeddings - raw_embed = np.mean(partial_embeds, axis=0) - embed = raw_embed / np.linalg.norm(raw_embed, 2) - - if return_partials: - return embed, partial_embeds, wav_slices - return embed - - def embed_speaker(self, wavs: List[np.ndarray], **kwargs): - """ - Compute the embedding of a collection of wavs (presumably from the same speaker) by - averaging their embedding and L2-normalizing it. - - :param wavs: list of wavs a numpy arrays of float32. - :param kwargs: extra arguments to embed_utterance() - :return: the embedding as a numpy array of float32 of shape (model_embedding_size,). - """ - raw_embed = np.mean([self.embed_utterance(wav, return_partials=False, **kwargs) for wav in wavs], axis=0) - return raw_embed / np.linalg.norm(raw_embed, 2) diff --git a/TTS/TTS/vc/modules/freevc/wavlm/__init__.py b/TTS/TTS/vc/modules/freevc/wavlm/__init__.py deleted file mode 100644 index 6edada407b2210b5b99f6628e4f765a24c4d3dcb..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/modules/freevc/wavlm/__init__.py +++ /dev/null @@ -1,35 +0,0 @@ -import os -import urllib.request - -import torch - -from TTS.utils.generic_utils import get_user_data_dir -from TTS.vc.modules.freevc.wavlm.wavlm import WavLM, WavLMConfig - -model_uri = "https://github.com/coqui-ai/TTS/releases/download/v0.13.0_models/WavLM-Large.pt" - - -def get_wavlm(device="cpu"): - """Download the model and return the model object.""" - - output_path = get_user_data_dir("tts") - - output_path = os.path.join(output_path, "wavlm") - if not os.path.exists(output_path): - os.makedirs(output_path) - - output_path = os.path.join(output_path, "WavLM-Large.pt") - if not os.path.exists(output_path): - print(f" > Downloading WavLM model to {output_path} ...") - urllib.request.urlretrieve(model_uri, output_path) - - checkpoint = torch.load(output_path, map_location=torch.device(device)) - cfg = WavLMConfig(checkpoint["cfg"]) - wavlm = WavLM(cfg).to(device) - wavlm.load_state_dict(checkpoint["model"]) - wavlm.eval() - return wavlm - - -if __name__ == "__main__": - wavlm = get_wavlm() diff --git a/TTS/TTS/vc/modules/freevc/wavlm/config.json b/TTS/TTS/vc/modules/freevc/wavlm/config.json deleted file mode 100644 index c6f851b93d5eee0c975af1e6708735bbf9bb8be4..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/modules/freevc/wavlm/config.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "_name_or_path": "./wavlm-large/", - "activation_dropout": 0.0, - "adapter_kernel_size": 3, - "adapter_stride": 2, - "add_adapter": false, - "apply_spec_augment": true, - "architectures": [ - "WavLMModel" - ], - "attention_dropout": 0.1, - "bos_token_id": 1, - "classifier_proj_size": 256, - "codevector_dim": 768, - "contrastive_logits_temperature": 0.1, - "conv_bias": false, - "conv_dim": [ - 512, - 512, - 512, - 512, - 512, - 512, - 512 - ], - "conv_kernel": [ - 10, - 3, - 3, - 3, - 3, - 2, - 2 - ], - "conv_stride": [ - 5, - 2, - 2, - 2, - 2, - 2, - 2 - ], - "ctc_loss_reduction": "sum", - "ctc_zero_infinity": false, - "diversity_loss_weight": 0.1, - "do_stable_layer_norm": true, - "eos_token_id": 2, - "feat_extract_activation": "gelu", - "feat_extract_dropout": 0.0, - "feat_extract_norm": "layer", - "feat_proj_dropout": 0.1, - "feat_quantizer_dropout": 0.0, - "final_dropout": 0.0, - "gradient_checkpointing": false, - "hidden_act": "gelu", - "hidden_dropout": 0.1, - "hidden_size": 1024, - "initializer_range": 0.02, - "intermediate_size": 4096, - "layer_norm_eps": 1e-05, - "layerdrop": 0.1, - "mask_channel_length": 10, - "mask_channel_min_space": 1, - "mask_channel_other": 0.0, - "mask_channel_prob": 0.0, - "mask_channel_selection": "static", - "mask_feature_length": 10, - "mask_feature_min_masks": 0, - "mask_feature_prob": 0.0, - "mask_time_length": 10, - "mask_time_min_masks": 2, - "mask_time_min_space": 1, - "mask_time_other": 0.0, - "mask_time_prob": 0.075, - "mask_time_selection": "static", - "max_bucket_distance": 800, - "model_type": "wavlm", - "num_adapter_layers": 3, - "num_attention_heads": 16, - "num_buckets": 320, - "num_codevector_groups": 2, - "num_codevectors_per_group": 320, - "num_conv_pos_embedding_groups": 16, - "num_conv_pos_embeddings": 128, - "num_ctc_classes": 80, - "num_feat_extract_layers": 7, - "num_hidden_layers": 24, - "num_negatives": 100, - "output_hidden_size": 1024, - "pad_token_id": 0, - "proj_codevector_dim": 768, - "replace_prob": 0.5, - "tokenizer_class": "Wav2Vec2CTCTokenizer", - "torch_dtype": "float32", - "transformers_version": "4.15.0.dev0", - "use_weighted_layer_sum": false, - "vocab_size": 32 - } \ No newline at end of file diff --git a/TTS/TTS/vc/modules/freevc/wavlm/modules.py b/TTS/TTS/vc/modules/freevc/wavlm/modules.py deleted file mode 100644 index 37c1a6e8774cdfd439baa38a8a7ad55fd79ebf7c..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/modules/freevc/wavlm/modules.py +++ /dev/null @@ -1,768 +0,0 @@ -# -------------------------------------------------------- -# WavLM: Large-Scale Self-Supervised Pre-training for Full Stack Speech Processing (https://arxiv.org/abs/2110.13900.pdf) -# Github source: https://github.com/microsoft/unilm/tree/master/wavlm -# Copyright (c) 2021 Microsoft -# Licensed under The MIT License [see LICENSE for details] -# Based on fairseq code bases -# https://github.com/pytorch/fairseq -# -------------------------------------------------------- - -import math -import warnings -from typing import Dict, Optional, Tuple - -import torch -import torch.nn.functional as F -from torch import Tensor, nn -from torch.nn import Parameter - - -class TransposeLast(nn.Module): - def __init__(self, deconstruct_idx=None): - super().__init__() - self.deconstruct_idx = deconstruct_idx - - def forward(self, x): - if self.deconstruct_idx is not None: - x = x[self.deconstruct_idx] - return x.transpose(-2, -1) - - -class Fp32LayerNorm(nn.LayerNorm): - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - - def forward(self, input): - output = F.layer_norm( - input.float(), - self.normalized_shape, - self.weight.float() if self.weight is not None else None, - self.bias.float() if self.bias is not None else None, - self.eps, - ) - return output.type_as(input) - - -class Fp32GroupNorm(nn.GroupNorm): - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - - def forward(self, input): - output = F.group_norm( - input.float(), - self.num_groups, - self.weight.float() if self.weight is not None else None, - self.bias.float() if self.bias is not None else None, - self.eps, - ) - return output.type_as(input) - - -class GradMultiply(torch.autograd.Function): - @staticmethod - def forward(ctx, x, scale): - ctx.scale = scale - res = x.new(x) - return res - - @staticmethod - def backward(ctx, grad): - return grad * ctx.scale, None - - -class SamePad(nn.Module): - def __init__(self, kernel_size, causal=False): - super().__init__() - if causal: - self.remove = kernel_size - 1 - else: - self.remove = 1 if kernel_size % 2 == 0 else 0 - - def forward(self, x): - if self.remove > 0: - x = x[:, :, : -self.remove] - return x - - -class Swish(nn.Module): - """Swish function""" - - def __init__(self): - """Construct an MultiHeadedAttention object.""" - super(Swish, self).__init__() - self.act = torch.nn.Sigmoid() - - def forward(self, x): - return x * self.act(x) - - -class GLU_Linear(nn.Module): - def __init__(self, input_dim, output_dim, glu_type="sigmoid", bias_in_glu=True): - super(GLU_Linear, self).__init__() - - self.glu_type = glu_type - self.output_dim = output_dim - - if glu_type == "sigmoid": - self.glu_act = torch.nn.Sigmoid() - elif glu_type == "swish": - self.glu_act = Swish() - elif glu_type == "relu": - self.glu_act = torch.nn.ReLU() - elif glu_type == "gelu": - self.glu_act = torch.nn.GELU() - - if bias_in_glu: - self.linear = nn.Linear(input_dim, output_dim * 2, True) - else: - self.linear = nn.Linear(input_dim, output_dim * 2, False) - - def forward(self, x): - # to be consistent with GLU_Linear, we assume the input always has the #channel (#dim) in the last dimension of the tensor, so need to switch the dimension first for 1D-Conv case - x = self.linear(x) - - if self.glu_type == "bilinear": - x = x[:, :, 0 : self.output_dim] * x[:, :, self.output_dim : self.output_dim * 2] - else: - x = x[:, :, 0 : self.output_dim] * self.glu_act(x[:, :, self.output_dim : self.output_dim * 2]) - - return x - - -def gelu_accurate(x): - if not hasattr(gelu_accurate, "_a"): - gelu_accurate._a = math.sqrt(2 / math.pi) - return 0.5 * x * (1 + torch.tanh(gelu_accurate._a * (x + 0.044715 * torch.pow(x, 3)))) - - -def gelu(x: torch.Tensor) -> torch.Tensor: - return torch.nn.functional.gelu(x.float()).type_as(x) - - -def get_activation_fn(activation: str): - """Returns the activation function corresponding to `activation`""" - - if activation == "relu": - return F.relu - elif activation == "gelu": - return gelu - elif activation == "gelu_fast": - warnings.warn("--activation-fn=gelu_fast has been renamed to gelu_accurate") - return gelu_accurate - elif activation == "gelu_accurate": - return gelu_accurate - elif activation == "tanh": - return torch.tanh - elif activation == "linear": - return lambda x: x - elif activation == "glu": - return lambda x: x - else: - raise RuntimeError("--activation-fn {} not supported".format(activation)) - - -def init_bert_params(module): - """ - Initialize the weights specific to the BERT Model. - This overrides the default initializations depending on the specified arguments. - 1. If normal_init_linear_weights is set then weights of linear - layer will be initialized using the normal distribution and - bais will be set to the specified value. - 2. If normal_init_embed_weights is set then weights of embedding - layer will be initialized using the normal distribution. - 3. If normal_init_proj_weights is set then weights of - in_project_weight for MultiHeadAttention initialized using - the normal distribution (to be validated). - """ - - def normal_(data): - # with FSDP, module params will be on CUDA, so we cast them back to CPU - # so that the RNG is consistent with and without FSDP - data.copy_(data.cpu().normal_(mean=0.0, std=0.02).to(data.device)) - - if isinstance(module, nn.Linear): - normal_(module.weight.data) - if module.bias is not None: - module.bias.data.zero_() - if isinstance(module, nn.Embedding): - normal_(module.weight.data) - if module.padding_idx is not None: - module.weight.data[module.padding_idx].zero_() - if isinstance(module, MultiheadAttention): - normal_(module.q_proj.weight.data) - normal_(module.k_proj.weight.data) - normal_(module.v_proj.weight.data) - - -def quant_noise(module, p, block_size): - """ - Wraps modules and applies quantization noise to the weights for - subsequent quantization with Iterative Product Quantization as - described in "Training with Quantization Noise for Extreme Model Compression" - - Args: - - module: nn.Module - - p: amount of Quantization Noise - - block_size: size of the blocks for subsequent quantization with iPQ - - Remarks: - - Module weights must have the right sizes wrt the block size - - Only Linear, Embedding and Conv2d modules are supported for the moment - - For more detail on how to quantize by blocks with convolutional weights, - see "And the Bit Goes Down: Revisiting the Quantization of Neural Networks" - - We implement the simplest form of noise here as stated in the paper - which consists in randomly dropping blocks - """ - - # if no quantization noise, don't register hook - if p <= 0: - return module - - # supported modules - assert isinstance(module, (nn.Linear, nn.Embedding, nn.Conv2d)) - - # test whether module.weight has the right sizes wrt block_size - is_conv = module.weight.ndim == 4 - - # 2D matrix - if not is_conv: - assert module.weight.size(1) % block_size == 0, "Input features must be a multiple of block sizes" - - # 4D matrix - else: - # 1x1 convolutions - if module.kernel_size == (1, 1): - assert module.in_channels % block_size == 0, "Input channels must be a multiple of block sizes" - # regular convolutions - else: - k = module.kernel_size[0] * module.kernel_size[1] - assert k % block_size == 0, "Kernel size must be a multiple of block size" - - def _forward_pre_hook(mod, input): - # no noise for evaluation - if mod.training: - if not is_conv: - # gather weight and sizes - weight = mod.weight - in_features = weight.size(1) - out_features = weight.size(0) - - # split weight matrix into blocks and randomly drop selected blocks - mask = torch.zeros(in_features // block_size * out_features, device=weight.device) - mask.bernoulli_(p) - mask = mask.repeat_interleave(block_size, -1).view(-1, in_features) - - else: - # gather weight and sizes - weight = mod.weight - in_channels = mod.in_channels - out_channels = mod.out_channels - - # split weight matrix into blocks and randomly drop selected blocks - if mod.kernel_size == (1, 1): - mask = torch.zeros( - int(in_channels // block_size * out_channels), - device=weight.device, - ) - mask.bernoulli_(p) - mask = mask.repeat_interleave(block_size, -1).view(-1, in_channels) - else: - mask = torch.zeros(weight.size(0), weight.size(1), device=weight.device) - mask.bernoulli_(p) - mask = mask.unsqueeze(2).unsqueeze(3).repeat(1, 1, mod.kernel_size[0], mod.kernel_size[1]) - - # scale weights and apply mask - mask = mask.to(torch.bool) # x.bool() is not currently supported in TorchScript - s = 1 / (1 - p) - mod.weight.data = s * weight.masked_fill(mask, 0) - - module.register_forward_pre_hook(_forward_pre_hook) - return module - - -class MultiheadAttention(nn.Module): - """Multi-headed attention. - - See "Attention Is All You Need" for more details. - """ - - def __init__( - self, - embed_dim, - num_heads, - kdim=None, - vdim=None, - dropout=0.0, - bias=True, - add_bias_kv=False, - add_zero_attn=False, - self_attention=False, - encoder_decoder_attention=False, - q_noise=0.0, - qn_block_size=8, - has_relative_attention_bias=False, - num_buckets=32, - max_distance=128, - gru_rel_pos=False, - rescale_init=False, - ): - super().__init__() - self.embed_dim = embed_dim - self.kdim = kdim if kdim is not None else embed_dim - self.vdim = vdim if vdim is not None else embed_dim - self.qkv_same_dim = self.kdim == embed_dim and self.vdim == embed_dim - - self.num_heads = num_heads - self.dropout_module = nn.Dropout(dropout) - - self.has_relative_attention_bias = has_relative_attention_bias - self.num_buckets = num_buckets - self.max_distance = max_distance - if self.has_relative_attention_bias: - self.relative_attention_bias = nn.Embedding(num_buckets, num_heads) - - self.head_dim = embed_dim // num_heads - self.q_head_dim = self.head_dim - self.k_head_dim = self.head_dim - assert self.head_dim * num_heads == self.embed_dim, "embed_dim must be divisible by num_heads" - self.scaling = self.head_dim**-0.5 - - self.self_attention = self_attention - self.encoder_decoder_attention = encoder_decoder_attention - - assert not self.self_attention or self.qkv_same_dim, ( - "Self-attention requires query, key and " "value to be of the same size" - ) - - k_bias = True - if rescale_init: - k_bias = False - - k_embed_dim = embed_dim - q_embed_dim = embed_dim - - self.k_proj = quant_noise(nn.Linear(self.kdim, k_embed_dim, bias=k_bias), q_noise, qn_block_size) - self.v_proj = quant_noise(nn.Linear(self.vdim, embed_dim, bias=bias), q_noise, qn_block_size) - self.q_proj = quant_noise(nn.Linear(embed_dim, q_embed_dim, bias=bias), q_noise, qn_block_size) - - self.out_proj = quant_noise(nn.Linear(embed_dim, embed_dim, bias=bias), q_noise, qn_block_size) - - if add_bias_kv: - self.bias_k = Parameter(torch.Tensor(1, 1, embed_dim)) - self.bias_v = Parameter(torch.Tensor(1, 1, embed_dim)) - else: - self.bias_k = self.bias_v = None - - self.add_zero_attn = add_zero_attn - - self.gru_rel_pos = gru_rel_pos - if self.gru_rel_pos: - self.grep_linear = nn.Linear(self.q_head_dim, 8) - self.grep_a = nn.Parameter(torch.ones(1, num_heads, 1, 1)) - - self.reset_parameters() - - def reset_parameters(self): - if self.qkv_same_dim: - # Empirically observed the convergence to be much better with - # the scaled initialization - nn.init.xavier_uniform_(self.k_proj.weight, gain=1 / math.sqrt(2)) - nn.init.xavier_uniform_(self.v_proj.weight, gain=1 / math.sqrt(2)) - nn.init.xavier_uniform_(self.q_proj.weight, gain=1 / math.sqrt(2)) - else: - nn.init.xavier_uniform_(self.k_proj.weight) - nn.init.xavier_uniform_(self.v_proj.weight) - nn.init.xavier_uniform_(self.q_proj.weight) - - nn.init.xavier_uniform_(self.out_proj.weight) - if self.out_proj.bias is not None: - nn.init.constant_(self.out_proj.bias, 0.0) - if self.bias_k is not None: - nn.init.xavier_normal_(self.bias_k) - if self.bias_v is not None: - nn.init.xavier_normal_(self.bias_v) - if self.has_relative_attention_bias: - nn.init.xavier_normal_(self.relative_attention_bias.weight) - - def _relative_positions_bucket(self, relative_positions, bidirectional=True): - num_buckets = self.num_buckets - max_distance = self.max_distance - relative_buckets = 0 - - if bidirectional: - num_buckets = num_buckets // 2 - relative_buckets += (relative_positions > 0).to(torch.long) * num_buckets - relative_positions = torch.abs(relative_positions) - else: - relative_positions = -torch.min(relative_positions, torch.zeros_like(relative_positions)) - - max_exact = num_buckets // 2 - is_small = relative_positions < max_exact - - relative_postion_if_large = max_exact + ( - torch.log(relative_positions.float() / max_exact) - / math.log(max_distance / max_exact) - * (num_buckets - max_exact) - ).to(torch.long) - relative_postion_if_large = torch.min( - relative_postion_if_large, torch.full_like(relative_postion_if_large, num_buckets - 1) - ) - - relative_buckets += torch.where(is_small, relative_positions, relative_postion_if_large) - return relative_buckets - - def compute_bias(self, query_length, key_length): - context_position = torch.arange(query_length, dtype=torch.long)[:, None] - memory_position = torch.arange(key_length, dtype=torch.long)[None, :] - relative_position = memory_position - context_position - relative_position_bucket = self._relative_positions_bucket(relative_position, bidirectional=True) - relative_position_bucket = relative_position_bucket.to(self.relative_attention_bias.weight.device) - values = self.relative_attention_bias(relative_position_bucket) - values = values.permute([2, 0, 1]) - return values - - def forward( - self, - query, - key: Optional[Tensor], - value: Optional[Tensor], - key_padding_mask: Optional[Tensor] = None, - incremental_state: Optional[Dict[str, Dict[str, Optional[Tensor]]]] = None, - need_weights: bool = True, - static_kv: bool = False, - attn_mask: Optional[Tensor] = None, - before_softmax: bool = False, - need_head_weights: bool = False, - position_bias: Optional[Tensor] = None, - ) -> Tuple[Tensor, Optional[Tensor], Optional[Tensor]]: - """Input shape: Time x Batch x Channel - - Args: - key_padding_mask (ByteTensor, optional): mask to exclude - keys that are pads, of shape `(batch, src_len)`, where - padding elements are indicated by 1s. - need_weights (bool, optional): return the attention weights, - averaged over heads (default: False). - attn_mask (ByteTensor, optional): typically used to - implement causal attention, where the mask prevents the - attention from looking forward in time (default: None). - before_softmax (bool, optional): return the raw attention - weights and values before the attention softmax. - need_head_weights (bool, optional): return the attention - weights for each head. Implies *need_weights*. Default: - return the average attention weights over all heads. - """ - if need_head_weights: - need_weights = True - - is_tpu = query.device.type == "xla" - - tgt_len, bsz, embed_dim = query.size() - src_len = tgt_len - assert embed_dim == self.embed_dim - assert list(query.size()) == [tgt_len, bsz, embed_dim] - if key is not None: - src_len, key_bsz, _ = key.size() - if not torch.jit.is_scripting(): - assert key_bsz == bsz - assert value is not None - assert src_len, bsz == value.shape[:2] - - if self.has_relative_attention_bias and position_bias is None: - position_bias = self.compute_bias(tgt_len, src_len) - position_bias = position_bias.unsqueeze(0).repeat(bsz, 1, 1, 1).view(bsz * self.num_heads, tgt_len, src_len) - - if ( - not is_tpu # don't use PyTorch version on TPUs - and incremental_state is None - and not static_kv - # A workaround for quantization to work. Otherwise JIT compilation - # treats bias in linear module as method. - and not torch.jit.is_scripting() - and self.q_head_dim == self.head_dim - ): - assert key is not None and value is not None - assert attn_mask is None - - attn_mask_rel_pos = None - if position_bias is not None: - attn_mask_rel_pos = position_bias - if self.gru_rel_pos: - query_layer = query.transpose(0, 1) - new_x_shape = query_layer.size()[:-1] + (self.num_heads, -1) - query_layer = query_layer.view(*new_x_shape) - query_layer = query_layer.permute(0, 2, 1, 3) - _B, _H, _L, __ = query_layer.size() - - gate_a, gate_b = torch.sigmoid( - self.grep_linear(query_layer).view(_B, _H, _L, 2, 4).sum(-1, keepdim=False) - ).chunk(2, dim=-1) - gate_a_1 = gate_a * (gate_b * self.grep_a - 1.0) + 2.0 - attn_mask_rel_pos = gate_a_1.view(bsz * self.num_heads, -1, 1) * position_bias - - attn_mask_rel_pos = attn_mask_rel_pos.view((-1, tgt_len, tgt_len)) - k_proj_bias = self.k_proj.bias - if k_proj_bias is None: - k_proj_bias = torch.zeros_like(self.q_proj.bias) - - x, attn = F.multi_head_attention_forward( - query, - key, - value, - self.embed_dim, - self.num_heads, - torch.empty([0]), - torch.cat((self.q_proj.bias, self.k_proj.bias, self.v_proj.bias)), - self.bias_k, - self.bias_v, - self.add_zero_attn, - self.dropout_module.p, - self.out_proj.weight, - self.out_proj.bias, - self.training, - # self.training or self.dropout_module.apply_during_inference, - key_padding_mask, - need_weights, - attn_mask_rel_pos, - use_separate_proj_weight=True, - q_proj_weight=self.q_proj.weight, - k_proj_weight=self.k_proj.weight, - v_proj_weight=self.v_proj.weight, - ) - return x, attn, position_bias - - if incremental_state is not None: - saved_state = self._get_input_buffer(incremental_state) - if saved_state is not None and "prev_key" in saved_state: - # previous time steps are cached - no need to recompute - # key and value if they are static - if static_kv: - assert self.encoder_decoder_attention and not self.self_attention - key = value = None - else: - saved_state = None - - if self.self_attention: - q = self.q_proj(query) - k = self.k_proj(query) - v = self.v_proj(query) - elif self.encoder_decoder_attention: - # encoder-decoder attention - q = self.q_proj(query) - if key is None: - assert value is None - k = v = None - else: - k = self.k_proj(key) - v = self.v_proj(key) - - else: - assert key is not None and value is not None - q = self.q_proj(query) - k = self.k_proj(key) - v = self.v_proj(value) - q *= self.scaling - - if self.bias_k is not None: - assert self.bias_v is not None - k = torch.cat([k, self.bias_k.repeat(1, bsz, 1)]) - v = torch.cat([v, self.bias_v.repeat(1, bsz, 1)]) - if attn_mask is not None: - attn_mask = torch.cat([attn_mask, attn_mask.new_zeros(attn_mask.size(0), 1)], dim=1) - if key_padding_mask is not None: - key_padding_mask = torch.cat( - [ - key_padding_mask, - key_padding_mask.new_zeros(key_padding_mask.size(0), 1), - ], - dim=1, - ) - - q = q.contiguous().view(tgt_len, bsz * self.num_heads, self.q_head_dim).transpose(0, 1) - if k is not None: - k = k.contiguous().view(-1, bsz * self.num_heads, self.k_head_dim).transpose(0, 1) - if v is not None: - v = v.contiguous().view(-1, bsz * self.num_heads, self.head_dim).transpose(0, 1) - - if saved_state is not None: - # saved states are stored with shape (bsz, num_heads, seq_len, head_dim) - if "prev_key" in saved_state: - _prev_key = saved_state["prev_key"] - assert _prev_key is not None - prev_key = _prev_key.view(bsz * self.num_heads, -1, self.head_dim) - if static_kv: - k = prev_key - else: - assert k is not None - k = torch.cat([prev_key, k], dim=1) - src_len = k.size(1) - if "prev_value" in saved_state: - _prev_value = saved_state["prev_value"] - assert _prev_value is not None - prev_value = _prev_value.view(bsz * self.num_heads, -1, self.head_dim) - if static_kv: - v = prev_value - else: - assert v is not None - v = torch.cat([prev_value, v], dim=1) - prev_key_padding_mask: Optional[Tensor] = None - if "prev_key_padding_mask" in saved_state: - prev_key_padding_mask = saved_state["prev_key_padding_mask"] - assert k is not None and v is not None - key_padding_mask = MultiheadAttention._append_prev_key_padding_mask( - key_padding_mask=key_padding_mask, - prev_key_padding_mask=prev_key_padding_mask, - batch_size=bsz, - src_len=k.size(1), - static_kv=static_kv, - ) - - saved_state["prev_key"] = k.view(bsz, self.num_heads, -1, self.head_dim) - saved_state["prev_value"] = v.view(bsz, self.num_heads, -1, self.head_dim) - saved_state["prev_key_padding_mask"] = key_padding_mask - # In this branch incremental_state is never None - assert incremental_state is not None - incremental_state = self._set_input_buffer(incremental_state, saved_state) - assert k is not None - assert k.size(1) == src_len - - # This is part of a workaround to get around fork/join parallelism - # not supporting Optional types. - if key_padding_mask is not None and key_padding_mask.dim() == 0: - key_padding_mask = None - - if key_padding_mask is not None: - assert key_padding_mask.size(0) == bsz - assert key_padding_mask.size(1) == src_len - - if self.add_zero_attn: - assert v is not None - src_len += 1 - k = torch.cat([k, k.new_zeros((k.size(0), 1) + k.size()[2:])], dim=1) - v = torch.cat([v, v.new_zeros((v.size(0), 1) + v.size()[2:])], dim=1) - if attn_mask is not None: - attn_mask = torch.cat([attn_mask, attn_mask.new_zeros(attn_mask.size(0), 1)], dim=1) - if key_padding_mask is not None: - key_padding_mask = torch.cat( - [ - key_padding_mask, - torch.zeros(key_padding_mask.size(0), 1).type_as(key_padding_mask), - ], - dim=1, - ) - - attn_weights = torch.bmm(q, k.transpose(1, 2)) - attn_weights = self.apply_sparse_mask(attn_weights, tgt_len, src_len, bsz) - - assert list(attn_weights.size()) == [bsz * self.num_heads, tgt_len, src_len] - - if attn_mask is not None: - attn_mask = attn_mask.unsqueeze(0) - attn_weights += attn_mask - - if key_padding_mask is not None: - # don't attend to padding symbols - attn_weights = attn_weights.view(bsz, self.num_heads, tgt_len, src_len) - if not is_tpu: - attn_weights = attn_weights.masked_fill( - key_padding_mask.unsqueeze(1).unsqueeze(2).to(torch.bool), - float("-inf"), - ) - else: - attn_weights = attn_weights.transpose(0, 2) - attn_weights = attn_weights.masked_fill(key_padding_mask, float("-inf")) - attn_weights = attn_weights.transpose(0, 2) - attn_weights = attn_weights.view(bsz * self.num_heads, tgt_len, src_len) - - if before_softmax: - return attn_weights, v, position_bias - - if position_bias is not None: - if self.gru_rel_pos == 1: - query_layer = q.view(bsz, self.num_heads, tgt_len, self.q_head_dim) - _B, _H, _L, __ = query_layer.size() - gate_a, gate_b = torch.sigmoid( - self.grep_linear(query_layer).view(_B, _H, _L, 2, 4).sum(-1, keepdim=False) - ).chunk(2, dim=-1) - gate_a_1 = gate_a * (gate_b * self.grep_a - 1.0) + 2.0 - position_bias = gate_a_1.view(bsz * self.num_heads, -1, 1) * position_bias - - position_bias = position_bias.view(attn_weights.size()) - - attn_weights = attn_weights + position_bias - - attn_weights_float = F.softmax(attn_weights, dim=-1) - attn_weights = attn_weights_float.type_as(attn_weights) - attn_probs = self.dropout_module(attn_weights) - - assert v is not None - attn = torch.bmm(attn_probs, v) - assert list(attn.size()) == [bsz * self.num_heads, tgt_len, self.head_dim] - attn = attn.transpose(0, 1).contiguous().view(tgt_len, bsz, embed_dim) - attn = self.out_proj(attn) - attn_weights: Optional[Tensor] = None - if need_weights: - attn_weights = attn_weights_float.view(bsz, self.num_heads, tgt_len, src_len).transpose(1, 0) - if not need_head_weights: - # average attention weights over heads - attn_weights = attn_weights.mean(dim=0) - - return attn, attn_weights, position_bias - - @staticmethod - def _append_prev_key_padding_mask( - key_padding_mask: Optional[Tensor], - prev_key_padding_mask: Optional[Tensor], - batch_size: int, - src_len: int, - static_kv: bool, - ) -> Optional[Tensor]: - # saved key padding masks have shape (bsz, seq_len) - if prev_key_padding_mask is not None and static_kv: - new_key_padding_mask = prev_key_padding_mask - elif prev_key_padding_mask is not None and key_padding_mask is not None: - new_key_padding_mask = torch.cat([prev_key_padding_mask.float(), key_padding_mask.float()], dim=1) - # During incremental decoding, as the padding token enters and - # leaves the frame, there will be a time when prev or current - # is None - elif prev_key_padding_mask is not None: - if src_len > prev_key_padding_mask.size(1): - filler = torch.zeros( - (batch_size, src_len - prev_key_padding_mask.size(1)), - device=prev_key_padding_mask.device, - ) - new_key_padding_mask = torch.cat([prev_key_padding_mask.float(), filler.float()], dim=1) - else: - new_key_padding_mask = prev_key_padding_mask.float() - elif key_padding_mask is not None: - if src_len > key_padding_mask.size(1): - filler = torch.zeros( - (batch_size, src_len - key_padding_mask.size(1)), - device=key_padding_mask.device, - ) - new_key_padding_mask = torch.cat([filler.float(), key_padding_mask.float()], dim=1) - else: - new_key_padding_mask = key_padding_mask.float() - else: - new_key_padding_mask = prev_key_padding_mask - return new_key_padding_mask - - def _get_input_buffer( - self, incremental_state: Optional[Dict[str, Dict[str, Optional[Tensor]]]] - ) -> Dict[str, Optional[Tensor]]: - result = self.get_incremental_state(incremental_state, "attn_state") - if result is not None: - return result - else: - empty_result: Dict[str, Optional[Tensor]] = {} - return empty_result - - def _set_input_buffer( - self, - incremental_state: Dict[str, Dict[str, Optional[Tensor]]], - buffer: Dict[str, Optional[Tensor]], - ): - return self.set_incremental_state(incremental_state, "attn_state", buffer) - - def apply_sparse_mask(self, attn_weights, tgt_len: int, src_len: int, bsz: int): - return attn_weights diff --git a/TTS/TTS/vc/modules/freevc/wavlm/wavlm.py b/TTS/TTS/vc/modules/freevc/wavlm/wavlm.py deleted file mode 100644 index 7efb11bfc68f4e2cb9bd8770b897a13a7094c266..0000000000000000000000000000000000000000 --- a/TTS/TTS/vc/modules/freevc/wavlm/wavlm.py +++ /dev/null @@ -1,719 +0,0 @@ -# -------------------------------------------------------- -# WavLM: Large-Scale Self-Supervised Pre-training for Full Stack Speech Processing (https://arxiv.org/abs/2110.13900.pdf) -# Github source: https://github.com/microsoft/unilm/tree/master/wavlm -# Copyright (c) 2021 Microsoft -# Licensed under The MIT License [see LICENSE for details] -# Based on fairseq code bases -# https://github.com/pytorch/fairseq -# -------------------------------------------------------- - -import logging -import math -from typing import List, Optional, Tuple - -import numpy as np -import torch -import torch.nn as nn -import torch.nn.functional as F -from torch.nn import LayerNorm - -from TTS.vc.modules.freevc.wavlm.modules import ( - Fp32GroupNorm, - Fp32LayerNorm, - GLU_Linear, - GradMultiply, - MultiheadAttention, - SamePad, - TransposeLast, - get_activation_fn, - init_bert_params, -) - -logger = logging.getLogger(__name__) - - -def compute_mask_indices( - shape: Tuple[int, int], - padding_mask: Optional[torch.Tensor], - mask_prob: float, - mask_length: int, - mask_type: str = "static", - mask_other: float = 0.0, - min_masks: int = 0, - no_overlap: bool = False, - min_space: int = 0, -) -> np.ndarray: - """ - Computes random mask spans for a given shape - - Args: - shape: the the shape for which to compute masks. - should be of size 2 where first element is batch size and 2nd is timesteps - padding_mask: optional padding mask of the same size as shape, which will prevent masking padded elements - mask_prob: probability for each token to be chosen as start of the span to be masked. this will be multiplied by - number of timesteps divided by length of mask span to mask approximately this percentage of all elements. - however due to overlaps, the actual number will be smaller (unless no_overlap is True) - mask_type: how to compute mask lengths - static = fixed size - uniform = sample from uniform distribution [mask_other, mask_length*2] - normal = sample from normal distribution with mean mask_length and stdev mask_other. mask is min 1 element - poisson = sample from possion distribution with lambda = mask length - min_masks: minimum number of masked spans - no_overlap: if false, will switch to an alternative recursive algorithm that prevents spans from overlapping - min_space: only used if no_overlap is True, this is how many elements to keep unmasked between spans - """ - - bsz, all_sz = shape - mask = np.full((bsz, all_sz), False) - - all_num_mask = int( - # add a random number for probabilistic rounding - mask_prob * all_sz / float(mask_length) - + np.random.rand() - ) - - all_num_mask = max(min_masks, all_num_mask) - - mask_idcs = [] - for i in range(bsz): - if padding_mask is not None: - sz = all_sz - padding_mask[i].long().sum().item() - num_mask = int( - # add a random number for probabilistic rounding - mask_prob * sz / float(mask_length) - + np.random.rand() - ) - num_mask = max(min_masks, num_mask) - else: - sz = all_sz - num_mask = all_num_mask - - if mask_type == "static": - lengths = np.full(num_mask, mask_length) - elif mask_type == "uniform": - lengths = np.random.randint(mask_other, mask_length * 2 + 1, size=num_mask) - elif mask_type == "normal": - lengths = np.random.normal(mask_length, mask_other, size=num_mask) - lengths = [max(1, int(round(x))) for x in lengths] - elif mask_type == "poisson": - lengths = np.random.poisson(mask_length, size=num_mask) - lengths = [int(round(x)) for x in lengths] - else: - raise Exception("unknown mask selection " + mask_type) - - if sum(lengths) == 0: - lengths[0] = min(mask_length, sz - 1) - - if no_overlap: - mask_idc = [] - - def arrange(s, e, length, keep_length): - span_start = np.random.randint(s, e - length) - mask_idc.extend(span_start + i for i in range(length)) - - new_parts = [] - if span_start - s - min_space >= keep_length: - new_parts.append((s, span_start - min_space + 1)) - if e - span_start - keep_length - min_space > keep_length: - new_parts.append((span_start + length + min_space, e)) - return new_parts - - parts = [(0, sz)] - min_length = min(lengths) - for length in sorted(lengths, reverse=True): - lens = np.fromiter( - (e - s if e - s >= length + min_space else 0 for s, e in parts), - np.int, - ) - l_sum = np.sum(lens) - if l_sum == 0: - break - probs = lens / np.sum(lens) - c = np.random.choice(len(parts), p=probs) - s, e = parts.pop(c) - parts.extend(arrange(s, e, length, min_length)) - mask_idc = np.asarray(mask_idc) - else: - min_len = min(lengths) - if sz - min_len <= num_mask: - min_len = sz - num_mask - 1 - - mask_idc = np.random.choice(sz - min_len, num_mask, replace=False) - - mask_idc = np.asarray([mask_idc[j] + offset for j in range(len(mask_idc)) for offset in range(lengths[j])]) - - mask_idcs.append(np.unique(mask_idc[mask_idc < sz])) - - min_len = min([len(m) for m in mask_idcs]) - for i, mask_idc in enumerate(mask_idcs): - if len(mask_idc) > min_len: - mask_idc = np.random.choice(mask_idc, min_len, replace=False) - mask[i, mask_idc] = True - - return mask - - -class WavLMConfig: - def __init__(self, cfg=None): - self.extractor_mode: str = "default" # mode for feature extractor. default has a single group norm with d groups in the first conv block, whereas layer_norm has layer norms in every block (meant to use with normalize=True) - self.encoder_layers: int = 12 # num encoder layers in the transformer - - self.encoder_embed_dim: int = 768 # encoder embedding dimension - self.encoder_ffn_embed_dim: int = 3072 # encoder embedding dimension for FFN - self.encoder_attention_heads: int = 12 # num encoder attention heads - self.activation_fn: str = "gelu" # activation function to use - - self.layer_norm_first: bool = False # apply layernorm first in the transformer - self.conv_feature_layers: str = "[(512,10,5)] + [(512,3,2)] * 4 + [(512,2,2)] * 2" # string describing convolutional feature extraction layers in form of a python list that contains [(dim, kernel_size, stride), ...] - self.conv_bias: bool = False # include bias in conv encoder - self.feature_grad_mult: float = 1.0 # multiply feature extractor var grads by this - - self.normalize: bool = False # normalize input to have 0 mean and unit variance during training - - # dropouts - self.dropout: float = 0.1 # dropout probability for the transformer - self.attention_dropout: float = 0.1 # dropout probability for attention weights - self.activation_dropout: float = 0.0 # dropout probability after activation in FFN - self.encoder_layerdrop: float = 0.0 # probability of dropping a tarnsformer layer - self.dropout_input: float = 0.0 # dropout to apply to the input (after feat extr) - self.dropout_features: float = 0.0 # dropout to apply to the features (after feat extr) - - # masking - self.mask_length: int = 10 # mask length - self.mask_prob: float = 0.65 # probability of replacing a token with mask - self.mask_selection: str = "static" # how to choose mask length - self.mask_other: float = ( - 0 # secondary mask argument (used for more complex distributions), see help in compute_mask_indicesh - ) - self.no_mask_overlap: bool = False # whether to allow masks to overlap - self.mask_min_space: int = 1 # min space between spans (if no overlap is enabled) - - # channel masking - self.mask_channel_length: int = 10 # length of the mask for features (channels) - self.mask_channel_prob: float = 0.0 # probability of replacing a feature with 0 - self.mask_channel_selection: str = "static" # how to choose mask length for channel masking - self.mask_channel_other: float = ( - 0 # secondary mask argument (used for more complex distributions), see help in compute_mask_indices - ) - self.no_mask_channel_overlap: bool = False # whether to allow channel masks to overlap - self.mask_channel_min_space: int = 1 # min space between spans (if no overlap is enabled) - - # positional embeddings - self.conv_pos: int = 128 # number of filters for convolutional positional embeddings - self.conv_pos_groups: int = 16 # number of groups for convolutional positional embedding - - # relative position embedding - self.relative_position_embedding: bool = False # apply relative position embedding - self.num_buckets: int = 320 # number of buckets for relative position embedding - self.max_distance: int = 1280 # maximum distance for relative position embedding - self.gru_rel_pos: bool = False # apply gated relative position embedding - - if cfg is not None: - self.update(cfg) - - def update(self, cfg: dict): - self.__dict__.update(cfg) - - -class WavLM(nn.Module): - def __init__( - self, - cfg: WavLMConfig, - ) -> None: - super().__init__() - logger.info(f"WavLM Config: {cfg.__dict__}") - - self.cfg = cfg - feature_enc_layers = eval(cfg.conv_feature_layers) - self.embed = feature_enc_layers[-1][0] - - self.feature_extractor = ConvFeatureExtractionModel( - conv_layers=feature_enc_layers, - dropout=0.0, - mode=cfg.extractor_mode, - conv_bias=cfg.conv_bias, - ) - - self.post_extract_proj = ( - nn.Linear(self.embed, cfg.encoder_embed_dim) if self.embed != cfg.encoder_embed_dim else None - ) - - self.mask_prob = cfg.mask_prob - self.mask_selection = cfg.mask_selection - self.mask_other = cfg.mask_other - self.mask_length = cfg.mask_length - self.no_mask_overlap = cfg.no_mask_overlap - self.mask_min_space = cfg.mask_min_space - - self.mask_channel_prob = cfg.mask_channel_prob - self.mask_channel_selection = cfg.mask_channel_selection - self.mask_channel_other = cfg.mask_channel_other - self.mask_channel_length = cfg.mask_channel_length - self.no_mask_channel_overlap = cfg.no_mask_channel_overlap - self.mask_channel_min_space = cfg.mask_channel_min_space - - self.dropout_input = nn.Dropout(cfg.dropout_input) - self.dropout_features = nn.Dropout(cfg.dropout_features) - - self.feature_grad_mult = cfg.feature_grad_mult - - self.mask_emb = nn.Parameter(torch.FloatTensor(cfg.encoder_embed_dim).uniform_()) - - self.encoder = TransformerEncoder(cfg) - self.layer_norm = LayerNorm(self.embed) - - def apply_mask(self, x, padding_mask): - B, T, C = x.shape - if self.mask_prob > 0: - mask_indices = compute_mask_indices( - (B, T), - padding_mask, - self.mask_prob, - self.mask_length, - self.mask_selection, - self.mask_other, - min_masks=2, - no_overlap=self.no_mask_overlap, - min_space=self.mask_min_space, - ) - mask_indices = torch.from_numpy(mask_indices).to(x.device) - x[mask_indices] = self.mask_emb - else: - mask_indices = None - - if self.mask_channel_prob > 0: - mask_channel_indices = compute_mask_indices( - (B, C), - None, - self.mask_channel_prob, - self.mask_channel_length, - self.mask_channel_selection, - self.mask_channel_other, - no_overlap=self.no_mask_channel_overlap, - min_space=self.mask_channel_min_space, - ) - mask_channel_indices = torch.from_numpy(mask_channel_indices).to(x.device).unsqueeze(1).expand(-1, T, -1) - x[mask_channel_indices] = 0 - - return x, mask_indices - - def forward_padding_mask( - self, - features: torch.Tensor, - padding_mask: torch.Tensor, - ) -> torch.Tensor: - extra = padding_mask.size(1) % features.size(1) - if extra > 0: - padding_mask = padding_mask[:, :-extra] - padding_mask = padding_mask.view(padding_mask.size(0), features.size(1), -1) - # padding_mask = padding_mask.all(-1) - padding_mask = padding_mask.any(-1) - return padding_mask - - def extract_features( - self, - source: torch.Tensor, - padding_mask: Optional[torch.Tensor] = None, - mask: bool = False, - ret_conv: bool = False, - output_layer: Optional[int] = None, - ret_layer_results: bool = False, - ): - if self.feature_grad_mult > 0: - features = self.feature_extractor(source) - if self.feature_grad_mult != 1.0: - features = GradMultiply.apply(features, self.feature_grad_mult) - else: - with torch.no_grad(): - features = self.feature_extractor(source) - - features = features.transpose(1, 2) - features = self.layer_norm(features) - - if padding_mask is not None: - padding_mask = self.forward_padding_mask(features, padding_mask) - - if self.post_extract_proj is not None: - features = self.post_extract_proj(features) - - features = self.dropout_input(features) - - if mask: - x, mask_indices = self.apply_mask(features, padding_mask) - else: - x = features - - # feature: (B, T, D), float - # target: (B, T), long - # x: (B, T, D), float - # padding_mask: (B, T), bool - # mask_indices: (B, T), bool - x, layer_results = self.encoder( - x, padding_mask=padding_mask, layer=None if output_layer is None else output_layer - 1 - ) - - res = {"x": x, "padding_mask": padding_mask, "features": features, "layer_results": layer_results} - - feature = res["features"] if ret_conv else res["x"] - if ret_layer_results: - feature = (feature, res["layer_results"]) - return feature, res["padding_mask"] - - -class ConvFeatureExtractionModel(nn.Module): - def __init__( - self, - conv_layers: List[Tuple[int, int, int]], - dropout: float = 0.0, - mode: str = "default", - conv_bias: bool = False, - conv_type: str = "default", - ): - super().__init__() - - assert mode in {"default", "layer_norm"} - - def block( - n_in, - n_out, - k, - stride, - is_layer_norm=False, - is_group_norm=False, - conv_bias=False, - ): - def make_conv(): - conv = nn.Conv1d(n_in, n_out, k, stride=stride, bias=conv_bias) - nn.init.kaiming_normal_(conv.weight) - return conv - - assert (is_layer_norm and is_group_norm) == False, "layer norm and group norm are exclusive" - - if is_layer_norm: - return nn.Sequential( - make_conv(), - nn.Dropout(p=dropout), - nn.Sequential( - TransposeLast(), - Fp32LayerNorm(dim, elementwise_affine=True), - TransposeLast(), - ), - nn.GELU(), - ) - elif is_group_norm: - return nn.Sequential( - make_conv(), - nn.Dropout(p=dropout), - Fp32GroupNorm(dim, dim, affine=True), - nn.GELU(), - ) - else: - return nn.Sequential(make_conv(), nn.Dropout(p=dropout), nn.GELU()) - - self.conv_type = conv_type - if self.conv_type == "default": - in_d = 1 - self.conv_layers = nn.ModuleList() - for i, cl in enumerate(conv_layers): - assert len(cl) == 3, "invalid conv definition: " + str(cl) - (dim, k, stride) = cl - - self.conv_layers.append( - block( - in_d, - dim, - k, - stride, - is_layer_norm=mode == "layer_norm", - is_group_norm=mode == "default" and i == 0, - conv_bias=conv_bias, - ) - ) - in_d = dim - elif self.conv_type == "conv2d": - in_d = 1 - self.conv_layers = nn.ModuleList() - for i, cl in enumerate(conv_layers): - assert len(cl) == 3 - (dim, k, stride) = cl - - self.conv_layers.append(torch.nn.Conv2d(in_d, dim, k, stride)) - self.conv_layers.append(torch.nn.ReLU()) - in_d = dim - elif self.conv_type == "custom": - in_d = 1 - idim = 80 - self.conv_layers = nn.ModuleList() - for i, cl in enumerate(conv_layers): - assert len(cl) == 3 - (dim, k, stride) = cl - self.conv_layers.append(torch.nn.Conv2d(in_d, dim, k, stride, padding=1)) - self.conv_layers.append(torch.nn.LayerNorm([dim, idim])) - self.conv_layers.append(torch.nn.ReLU()) - in_d = dim - if (i + 1) % 2 == 0: - self.conv_layers.append(torch.nn.MaxPool2d(2, stride=2, ceil_mode=True)) - idim = int(math.ceil(idim / 2)) - else: - pass - - def forward(self, x, mask=None): - # BxT -> BxCxT - x = x.unsqueeze(1) - if self.conv_type == "custom": - for conv in self.conv_layers: - if isinstance(conv, nn.LayerNorm): - x = x.transpose(1, 2) - x = conv(x).transpose(1, 2) - else: - x = conv(x) - x = x.transpose(2, 3).contiguous() - x = x.view(x.size(0), -1, x.size(-1)) - else: - for conv in self.conv_layers: - x = conv(x) - if self.conv_type == "conv2d": - b, c, t, f = x.size() - x = x.transpose(2, 3).contiguous().view(b, c * f, t) - return x - - -class TransformerEncoder(nn.Module): - def __init__(self, args): - super().__init__() - - self.dropout = args.dropout - self.embedding_dim = args.encoder_embed_dim - - self.pos_conv = nn.Conv1d( - self.embedding_dim, - self.embedding_dim, - kernel_size=args.conv_pos, - padding=args.conv_pos // 2, - groups=args.conv_pos_groups, - ) - dropout = 0 - std = math.sqrt((4 * (1.0 - dropout)) / (args.conv_pos * self.embedding_dim)) - nn.init.normal_(self.pos_conv.weight, mean=0, std=std) - nn.init.constant_(self.pos_conv.bias, 0) - - self.pos_conv = nn.utils.weight_norm(self.pos_conv, name="weight", dim=2) - self.pos_conv = nn.Sequential(self.pos_conv, SamePad(args.conv_pos), nn.GELU()) - - if hasattr(args, "relative_position_embedding"): - self.relative_position_embedding = args.relative_position_embedding - self.num_buckets = args.num_buckets - self.max_distance = args.max_distance - else: - self.relative_position_embedding = False - self.num_buckets = 0 - self.max_distance = 0 - - self.layers = nn.ModuleList( - [ - TransformerSentenceEncoderLayer( - embedding_dim=self.embedding_dim, - ffn_embedding_dim=args.encoder_ffn_embed_dim, - num_attention_heads=args.encoder_attention_heads, - dropout=self.dropout, - attention_dropout=args.attention_dropout, - activation_dropout=args.activation_dropout, - activation_fn=args.activation_fn, - layer_norm_first=args.layer_norm_first, - has_relative_attention_bias=(self.relative_position_embedding and i == 0), - num_buckets=self.num_buckets, - max_distance=self.max_distance, - gru_rel_pos=args.gru_rel_pos, - ) - for i in range(args.encoder_layers) - ] - ) - - self.layer_norm_first = args.layer_norm_first - self.layer_norm = LayerNorm(self.embedding_dim) - self.layerdrop = args.encoder_layerdrop - - self.apply(init_bert_params) - - def forward(self, x, padding_mask=None, streaming_mask=None, layer=None): - x, layer_results = self.extract_features(x, padding_mask, streaming_mask, layer) - - if self.layer_norm_first and layer is None: - x = self.layer_norm(x) - - return x, layer_results - - def extract_features(self, x, padding_mask=None, streaming_mask=None, tgt_layer=None): - if padding_mask is not None: - x[padding_mask] = 0 - - x_conv = self.pos_conv(x.transpose(1, 2)) - x_conv = x_conv.transpose(1, 2) - x += x_conv - - if not self.layer_norm_first: - x = self.layer_norm(x) - - x = F.dropout(x, p=self.dropout, training=self.training) - - # B x T x C -> T x B x C - x = x.transpose(0, 1) - - layer_results = [] - z = None - if tgt_layer is not None: - layer_results.append((x, z)) - r = None - pos_bias = None - for i, layer in enumerate(self.layers): - dropout_probability = np.random.random() - if not self.training or (dropout_probability > self.layerdrop): - x, z, pos_bias = layer( - x, - self_attn_padding_mask=padding_mask, - need_weights=False, - self_attn_mask=streaming_mask, - pos_bias=pos_bias, - ) - if tgt_layer is not None: - layer_results.append((x, z)) - if i == tgt_layer: - r = x - break - - if r is not None: - x = r - - # T x B x C -> B x T x C - x = x.transpose(0, 1) - - return x, layer_results - - -class TransformerSentenceEncoderLayer(nn.Module): - """ - Implements a Transformer Encoder Layer used in BERT/XLM style pre-trained - models. - """ - - def __init__( - self, - embedding_dim: float = 768, - ffn_embedding_dim: float = 3072, - num_attention_heads: float = 8, - dropout: float = 0.1, - attention_dropout: float = 0.1, - activation_dropout: float = 0.1, - activation_fn: str = "relu", - layer_norm_first: bool = False, - has_relative_attention_bias: bool = False, - num_buckets: int = 0, - max_distance: int = 0, - rescale_init: bool = False, - gru_rel_pos: bool = False, - ) -> None: - super().__init__() - # Initialize parameters - self.embedding_dim = embedding_dim - self.dropout = dropout - self.activation_dropout = activation_dropout - - # Initialize blocks - self.activation_name = activation_fn - self.activation_fn = get_activation_fn(activation_fn) - self.self_attn = MultiheadAttention( - self.embedding_dim, - num_attention_heads, - dropout=attention_dropout, - self_attention=True, - has_relative_attention_bias=has_relative_attention_bias, - num_buckets=num_buckets, - max_distance=max_distance, - rescale_init=rescale_init, - gru_rel_pos=gru_rel_pos, - ) - - self.dropout1 = nn.Dropout(dropout) - self.dropout2 = nn.Dropout(self.activation_dropout) - self.dropout3 = nn.Dropout(dropout) - - self.layer_norm_first = layer_norm_first - - # layer norm associated with the self attention layer - self.self_attn_layer_norm = LayerNorm(self.embedding_dim) - - if self.activation_name == "glu": - self.fc1 = GLU_Linear(self.embedding_dim, ffn_embedding_dim, "swish") - else: - self.fc1 = nn.Linear(self.embedding_dim, ffn_embedding_dim) - self.fc2 = nn.Linear(ffn_embedding_dim, self.embedding_dim) - - # layer norm associated with the position wise feed-forward NN - self.final_layer_norm = LayerNorm(self.embedding_dim) - - def forward( - self, - x: torch.Tensor, - self_attn_mask: torch.Tensor = None, - self_attn_padding_mask: torch.Tensor = None, - need_weights: bool = False, - pos_bias=None, - ): - """ - LayerNorm is applied either before or after the self-attention/ffn - modules similar to the original Transformer imlementation. - """ - residual = x - - if self.layer_norm_first: - x = self.self_attn_layer_norm(x) - x, attn, pos_bias = self.self_attn( - query=x, - key=x, - value=x, - key_padding_mask=self_attn_padding_mask, - need_weights=False, - attn_mask=self_attn_mask, - position_bias=pos_bias, - ) - x = self.dropout1(x) - x = residual + x - - residual = x - x = self.final_layer_norm(x) - if self.activation_name == "glu": - x = self.fc1(x) - else: - x = self.activation_fn(self.fc1(x)) - x = self.dropout2(x) - x = self.fc2(x) - x = self.dropout3(x) - x = residual + x - else: - x, attn, pos_bias = self.self_attn( - query=x, - key=x, - value=x, - key_padding_mask=self_attn_padding_mask, - need_weights=need_weights, - attn_mask=self_attn_mask, - position_bias=pos_bias, - ) - - x = self.dropout1(x) - x = residual + x - - x = self.self_attn_layer_norm(x) - - residual = x - if self.activation_name == "glu": - x = self.fc1(x) - else: - x = self.activation_fn(self.fc1(x)) - x = self.dropout2(x) - x = self.fc2(x) - x = self.dropout3(x) - x = residual + x - x = self.final_layer_norm(x) - - return x, attn, pos_bias diff --git a/TTS/TTS/vocoder/README.md b/TTS/TTS/vocoder/README.md deleted file mode 100644 index b9fb17c8f09fa6e8c217087e31fb8c52d96da536..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/README.md +++ /dev/null @@ -1,39 +0,0 @@ -# Mozilla TTS Vocoders (Experimental) - -Here there are vocoder model implementations which can be combined with the other TTS models. - -Currently, following models are implemented: - -- Melgan -- MultiBand-Melgan -- ParallelWaveGAN -- GAN-TTS (Discriminator Only) - -It is also very easy to adapt different vocoder models as we provide a flexible and modular (but not too modular) framework. - -## Training a model - -You can see here an example (Soon)[Colab Notebook]() training MelGAN with LJSpeech dataset. - -In order to train a new model, you need to gather all wav files into a folder and give this folder to `data_path` in '''config.json''' - -You need to define other relevant parameters in your ```config.json``` and then start traning with the following command. - -```CUDA_VISIBLE_DEVICES='0' python tts/bin/train_vocoder.py --config_path path/to/config.json``` - -Example config files can be found under `tts/vocoder/configs/` folder. - -You can continue a previous training run by the following command. - -```CUDA_VISIBLE_DEVICES='0' python tts/bin/train_vocoder.py --continue_path path/to/your/model/folder``` - -You can fine-tune a pre-trained model by the following command. - -```CUDA_VISIBLE_DEVICES='0' python tts/bin/train_vocoder.py --restore_path path/to/your/model.pth``` - -Restoring a model starts a new training in a different folder. It only restores model weights with the given checkpoint file. However, continuing a training starts from the same directory where the previous training run left off. - -You can also follow your training runs on Tensorboard as you do with our TTS models. - -## Acknowledgement -Thanks to @kan-bayashi for his [repository](https://github.com/kan-bayashi/ParallelWaveGAN) being the start point of our work. diff --git a/TTS/TTS/vocoder/__init__.py b/TTS/TTS/vocoder/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/vocoder/configs/__init__.py b/TTS/TTS/vocoder/configs/__init__.py deleted file mode 100644 index b5e11b990c6d7294e7cb00c3e024bbb5f94a8105..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/configs/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -import importlib -import os -from inspect import isclass - -# import all files under configs/ -configs_dir = os.path.dirname(__file__) -for file in os.listdir(configs_dir): - path = os.path.join(configs_dir, file) - if not file.startswith("_") and not file.startswith(".") and (file.endswith(".py") or os.path.isdir(path)): - config_name = file[: file.find(".py")] if file.endswith(".py") else file - module = importlib.import_module("TTS.vocoder.configs." + config_name) - for attribute_name in dir(module): - attribute = getattr(module, attribute_name) - - if isclass(attribute): - # Add the class to this package's variables - globals()[attribute_name] = attribute diff --git a/TTS/TTS/vocoder/configs/fullband_melgan_config.py b/TTS/TTS/vocoder/configs/fullband_melgan_config.py deleted file mode 100644 index 2ab83aace678e328a8f99a5f0dc63e54ed99d4c4..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/configs/fullband_melgan_config.py +++ /dev/null @@ -1,106 +0,0 @@ -from dataclasses import dataclass, field - -from .shared_configs import BaseGANVocoderConfig - - -@dataclass -class FullbandMelganConfig(BaseGANVocoderConfig): - """Defines parameters for FullBand MelGAN vocoder. - - Example: - - >>> from TTS.vocoder.configs import FullbandMelganConfig - >>> config = FullbandMelganConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `fullband_melgan`. - discriminator_model (str): One of the discriminators from `TTS.vocoder.models.*_discriminator`. Defaults to - 'melgan_multiscale_discriminator`. - discriminator_model_params (dict): The discriminator model parameters. Defaults to - '{"base_channels": 16, "max_channels": 1024, "downsample_factors": [4, 4, 4, 4]}` - generator_model (str): One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `melgan_generator`. - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 16. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 8192. - pad_short (int): - Additional padding applied to the audio samples shorter than `seq_len`. Defaults to 0. - use_noise_augment (bool): - enable / disable random noise added to the input waveform. The noise is added after computing the - features. Defaults to True. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - use_stft_loss (bool): - enable / disable use of STFT loss originally used by ParallelWaveGAN model. Defaults to True. - use_subband_stft (bool): - enable / disable use of subband loss computation originally used by MultiBandMelgan model. Defaults to True. - use_mse_gan_loss (bool): - enable / disable using Mean Squeare Error GAN loss. Defaults to True. - use_hinge_gan_loss (bool): - enable / disable using Hinge GAN loss. You should choose either Hinge or MSE loss for training GAN models. - Defaults to False. - use_feat_match_loss (bool): - enable / disable using Feature Matching loss originally used by MelGAN model. Defaults to True. - use_l1_spec_loss (bool): - enable / disable using L1 spectrogram loss originally used by HifiGAN model. Defaults to False. - stft_loss_params (dict): STFT loss parameters. Default to - `{"n_ffts": [1024, 2048, 512], "hop_lengths": [120, 240, 50], "win_lengths": [600, 1200, 240]}` - stft_loss_weight (float): STFT loss weight that multiplies the computed loss before summing up the total - model loss. Defaults to 0.5. - subband_stft_loss_weight (float): - Subband STFT loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - mse_G_loss_weight (float): - MSE generator loss weight that multiplies the computed loss before summing up the total loss. faults to 2.5. - hinge_G_loss_weight (float): - Hinge generator loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - feat_match_loss_weight (float): - Feature matching loss weight that multiplies the computed loss before summing up the total loss. faults to 108. - l1_spec_loss_weight (float): - L1 spectrogram loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - """ - - model: str = "fullband_melgan" - - # Model specific params - discriminator_model: str = "melgan_multiscale_discriminator" - discriminator_model_params: dict = field( - default_factory=lambda: {"base_channels": 16, "max_channels": 512, "downsample_factors": [4, 4, 4]} - ) - generator_model: str = "melgan_generator" - generator_model_params: dict = field( - default_factory=lambda: {"upsample_factors": [8, 8, 2, 2], "num_res_blocks": 4} - ) - - # Training - overrides - batch_size: int = 16 - seq_len: int = 8192 - pad_short: int = 2000 - use_noise_augment: bool = True - use_cache: bool = True - - # LOSS PARAMETERS - overrides - use_stft_loss: bool = True - use_subband_stft_loss: bool = False - use_mse_gan_loss: bool = True - use_hinge_gan_loss: bool = False - use_feat_match_loss: bool = True # requires MelGAN Discriminators (MelGAN and HifiGAN) - use_l1_spec_loss: bool = False - - stft_loss_params: dict = field( - default_factory=lambda: { - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240], - } - ) - - # loss weights - overrides - stft_loss_weight: float = 0.5 - subband_stft_loss_weight: float = 0 - mse_G_loss_weight: float = 2.5 - hinge_G_loss_weight: float = 0 - feat_match_loss_weight: float = 108 - l1_spec_loss_weight: float = 0.0 diff --git a/TTS/TTS/vocoder/configs/hifigan_config.py b/TTS/TTS/vocoder/configs/hifigan_config.py deleted file mode 100644 index 9a102f0c89588b1a7fe270225e4b0fefa2e4bc71..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/configs/hifigan_config.py +++ /dev/null @@ -1,136 +0,0 @@ -from dataclasses import dataclass, field - -from TTS.vocoder.configs.shared_configs import BaseGANVocoderConfig - - -@dataclass -class HifiganConfig(BaseGANVocoderConfig): - """Defines parameters for FullBand MelGAN vocoder. - - Example: - - >>> from TTS.vocoder.configs import HifiganConfig - >>> config = HifiganConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `hifigan`. - discriminator_model (str): One of the discriminators from `TTS.vocoder.models.*_discriminator`. Defaults to - 'hifigan_discriminator`. - generator_model (str): One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `hifigan_generator`. - generator_model_params (dict): Parameters of the generator model. Defaults to - ` - { - "upsample_factors": [8, 8, 2, 2], - "upsample_kernel_sizes": [16, 16, 4, 4], - "upsample_initial_channel": 512, - "resblock_kernel_sizes": [3, 7, 11], - "resblock_dilation_sizes": [[1, 3, 5], [1, 3, 5], [1, 3, 5]], - "resblock_type": "1", - } - ` - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 16. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 8192. - pad_short (int): - Additional padding applied to the audio samples shorter than `seq_len`. Defaults to 0. - use_noise_augment (bool): - enable / disable random noise added to the input waveform. The noise is added after computing the - features. Defaults to True. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - use_stft_loss (bool): - enable / disable use of STFT loss originally used by ParallelWaveGAN model. Defaults to True. - use_subband_stft (bool): - enable / disable use of subband loss computation originally used by MultiBandMelgan model. Defaults to True. - use_mse_gan_loss (bool): - enable / disable using Mean Squeare Error GAN loss. Defaults to True. - use_hinge_gan_loss (bool): - enable / disable using Hinge GAN loss. You should choose either Hinge or MSE loss for training GAN models. - Defaults to False. - use_feat_match_loss (bool): - enable / disable using Feature Matching loss originally used by MelGAN model. Defaults to True. - use_l1_spec_loss (bool): - enable / disable using L1 spectrogram loss originally used by HifiGAN model. Defaults to False. - stft_loss_params (dict): - STFT loss parameters. Default to - `{ - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240] - }` - l1_spec_loss_params (dict): - L1 spectrogram loss parameters. Default to - `{ - "use_mel": True, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": None, - }` - stft_loss_weight (float): STFT loss weight that multiplies the computed loss before summing up the total - model loss. Defaults to 0.5. - subband_stft_loss_weight (float): - Subband STFT loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - mse_G_loss_weight (float): - MSE generator loss weight that multiplies the computed loss before summing up the total loss. faults to 2.5. - hinge_G_loss_weight (float): - Hinge generator loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - feat_match_loss_weight (float): - Feature matching loss weight that multiplies the computed loss before summing up the total loss. faults to 108. - l1_spec_loss_weight (float): - L1 spectrogram loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - """ - - model: str = "hifigan" - # model specific params - discriminator_model: str = "hifigan_discriminator" - generator_model: str = "hifigan_generator" - generator_model_params: dict = field( - default_factory=lambda: { - "upsample_factors": [8, 8, 2, 2], - "upsample_kernel_sizes": [16, 16, 4, 4], - "upsample_initial_channel": 512, - "resblock_kernel_sizes": [3, 7, 11], - "resblock_dilation_sizes": [[1, 3, 5], [1, 3, 5], [1, 3, 5]], - "resblock_type": "1", - } - ) - - # LOSS PARAMETERS - overrides - use_stft_loss: bool = False - use_subband_stft_loss: bool = False - use_mse_gan_loss: bool = True - use_hinge_gan_loss: bool = False - use_feat_match_loss: bool = True # requires MelGAN Discriminators (MelGAN and HifiGAN) - use_l1_spec_loss: bool = True - - # loss weights - overrides - stft_loss_weight: float = 0 - subband_stft_loss_weight: float = 0 - mse_G_loss_weight: float = 1 - hinge_G_loss_weight: float = 0 - feat_match_loss_weight: float = 108 - l1_spec_loss_weight: float = 45 - l1_spec_loss_params: dict = field( - default_factory=lambda: { - "use_mel": True, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": None, - } - ) - - # optimizer parameters - lr: float = 1e-4 - wd: float = 1e-6 diff --git a/TTS/TTS/vocoder/configs/melgan_config.py b/TTS/TTS/vocoder/configs/melgan_config.py deleted file mode 100644 index dc35b6f8b70891d4904baefad802d9c62fe67925..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/configs/melgan_config.py +++ /dev/null @@ -1,106 +0,0 @@ -from dataclasses import dataclass, field - -from TTS.vocoder.configs.shared_configs import BaseGANVocoderConfig - - -@dataclass -class MelganConfig(BaseGANVocoderConfig): - """Defines parameters for MelGAN vocoder. - - Example: - - >>> from TTS.vocoder.configs import MelganConfig - >>> config = MelganConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `melgan`. - discriminator_model (str): One of the discriminators from `TTS.vocoder.models.*_discriminator`. Defaults to - 'melgan_multiscale_discriminator`. - discriminator_model_params (dict): The discriminator model parameters. Defaults to - '{"base_channels": 16, "max_channels": 1024, "downsample_factors": [4, 4, 4, 4]}` - generator_model (str): One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `melgan_generator`. - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 16. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 8192. - pad_short (int): - Additional padding applied to the audio samples shorter than `seq_len`. Defaults to 0. - use_noise_augment (bool): - enable / disable random noise added to the input waveform. The noise is added after computing the - features. Defaults to True. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - use_stft_loss (bool): - enable / disable use of STFT loss originally used by ParallelWaveGAN model. Defaults to True. - use_subband_stft (bool): - enable / disable use of subband loss computation originally used by MultiBandMelgan model. Defaults to True. - use_mse_gan_loss (bool): - enable / disable using Mean Squeare Error GAN loss. Defaults to True. - use_hinge_gan_loss (bool): - enable / disable using Hinge GAN loss. You should choose either Hinge or MSE loss for training GAN models. - Defaults to False. - use_feat_match_loss (bool): - enable / disable using Feature Matching loss originally used by MelGAN model. Defaults to True. - use_l1_spec_loss (bool): - enable / disable using L1 spectrogram loss originally used by HifiGAN model. Defaults to False. - stft_loss_params (dict): STFT loss parameters. Default to - `{"n_ffts": [1024, 2048, 512], "hop_lengths": [120, 240, 50], "win_lengths": [600, 1200, 240]}` - stft_loss_weight (float): STFT loss weight that multiplies the computed loss before summing up the total - model loss. Defaults to 0.5. - subband_stft_loss_weight (float): - Subband STFT loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - mse_G_loss_weight (float): - MSE generator loss weight that multiplies the computed loss before summing up the total loss. faults to 2.5. - hinge_G_loss_weight (float): - Hinge generator loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - feat_match_loss_weight (float): - Feature matching loss weight that multiplies the computed loss before summing up the total loss. faults to 108. - l1_spec_loss_weight (float): - L1 spectrogram loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - """ - - model: str = "melgan" - - # Model specific params - discriminator_model: str = "melgan_multiscale_discriminator" - discriminator_model_params: dict = field( - default_factory=lambda: {"base_channels": 16, "max_channels": 1024, "downsample_factors": [4, 4, 4, 4]} - ) - generator_model: str = "melgan_generator" - generator_model_params: dict = field( - default_factory=lambda: {"upsample_factors": [8, 8, 2, 2], "num_res_blocks": 3} - ) - - # Training - overrides - batch_size: int = 16 - seq_len: int = 8192 - pad_short: int = 2000 - use_noise_augment: bool = True - use_cache: bool = True - - # LOSS PARAMETERS - overrides - use_stft_loss: bool = True - use_subband_stft_loss: bool = False - use_mse_gan_loss: bool = True - use_hinge_gan_loss: bool = False - use_feat_match_loss: bool = True # requires MelGAN Discriminators (MelGAN and HifiGAN) - use_l1_spec_loss: bool = False - - stft_loss_params: dict = field( - default_factory=lambda: { - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240], - } - ) - - # loss weights - overrides - stft_loss_weight: float = 0.5 - subband_stft_loss_weight: float = 0 - mse_G_loss_weight: float = 2.5 - hinge_G_loss_weight: float = 0 - feat_match_loss_weight: float = 108 - l1_spec_loss_weight: float = 0 diff --git a/TTS/TTS/vocoder/configs/multiband_melgan_config.py b/TTS/TTS/vocoder/configs/multiband_melgan_config.py deleted file mode 100644 index 763113537f36a8615b2b77369bf5bde01527fe53..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/configs/multiband_melgan_config.py +++ /dev/null @@ -1,144 +0,0 @@ -from dataclasses import dataclass, field - -from TTS.vocoder.configs.shared_configs import BaseGANVocoderConfig - - -@dataclass -class MultibandMelganConfig(BaseGANVocoderConfig): - """Defines parameters for MultiBandMelGAN vocoder. - - Example: - - >>> from TTS.vocoder.configs import MultibandMelganConfig - >>> config = MultibandMelganConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `multiband_melgan`. - discriminator_model (str): One of the discriminators from `TTS.vocoder.models.*_discriminator`. Defaults to - 'melgan_multiscale_discriminator`. - discriminator_model_params (dict): The discriminator model parameters. Defaults to - '{ - "base_channels": 16, - "max_channels": 512, - "downsample_factors": [4, 4, 4] - }` - generator_model (str): One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `melgan_generator`. - generator_model_param (dict): - The generator model parameters. Defaults to `{"upsample_factors": [8, 4, 2], "num_res_blocks": 4}`. - use_pqmf (bool): - enable / disable PQMF modulation for multi-band training. Defaults to True. - lr_gen (float): - Initial learning rate for the generator model. Defaults to 0.0001. - lr_disc (float): - Initial learning rate for the discriminator model. Defaults to 0.0001. - optimizer (torch.optim.Optimizer): - Optimizer used for the training. Defaults to `AdamW`. - optimizer_params (dict): - Optimizer kwargs. Defaults to `{"betas": [0.8, 0.99], "weight_decay": 0.0}` - lr_scheduler_gen (torch.optim.Scheduler): - Learning rate scheduler for the generator. Defaults to `MultiStepLR`. - lr_scheduler_gen_params (dict): - Parameters for the generator learning rate scheduler. Defaults to - `{"gamma": 0.5, "milestones": [100000, 200000, 300000, 400000, 500000, 600000]}`. - lr_scheduler_disc (torch.optim.Scheduler): - Learning rate scheduler for the discriminator. Defaults to `MultiStepLR`. - lr_scheduler_dict_params (dict): - Parameters for the discriminator learning rate scheduler. Defaults to - `{"gamma": 0.5, "milestones": [100000, 200000, 300000, 400000, 500000, 600000]}`. - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 16. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 8192. - pad_short (int): - Additional padding applied to the audio samples shorter than `seq_len`. Defaults to 0. - use_noise_augment (bool): - enable / disable random noise added to the input waveform. The noise is added after computing the - features. Defaults to True. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - steps_to_start_discriminator (int): - Number of steps required to start training the discriminator. Defaults to 0. - use_stft_loss (bool):` - enable / disable use of STFT loss originally used by ParallelWaveGAN model. Defaults to True. - use_subband_stft (bool): - enable / disable use of subband loss computation originally used by MultiBandMelgan model. Defaults to True. - use_mse_gan_loss (bool): - enable / disable using Mean Squeare Error GAN loss. Defaults to True. - use_hinge_gan_loss (bool): - enable / disable using Hinge GAN loss. You should choose either Hinge or MSE loss for training GAN models. - Defaults to False. - use_feat_match_loss (bool): - enable / disable using Feature Matching loss originally used by MelGAN model. Defaults to True. - use_l1_spec_loss (bool): - enable / disable using L1 spectrogram loss originally used by HifiGAN model. Defaults to False. - stft_loss_params (dict): STFT loss parameters. Default to - `{"n_ffts": [1024, 2048, 512], "hop_lengths": [120, 240, 50], "win_lengths": [600, 1200, 240]}` - stft_loss_weight (float): STFT loss weight that multiplies the computed loss before summing up the total - model loss. Defaults to 0.5. - subband_stft_loss_weight (float): - Subband STFT loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - mse_G_loss_weight (float): - MSE generator loss weight that multiplies the computed loss before summing up the total loss. faults to 2.5. - hinge_G_loss_weight (float): - Hinge generator loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - feat_match_loss_weight (float): - Feature matching loss weight that multiplies the computed loss before summing up the total loss. faults to 108. - l1_spec_loss_weight (float): - L1 spectrogram loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - """ - - model: str = "multiband_melgan" - - # Model specific params - discriminator_model: str = "melgan_multiscale_discriminator" - discriminator_model_params: dict = field( - default_factory=lambda: {"base_channels": 16, "max_channels": 512, "downsample_factors": [4, 4, 4]} - ) - generator_model: str = "multiband_melgan_generator" - generator_model_params: dict = field(default_factory=lambda: {"upsample_factors": [8, 4, 2], "num_res_blocks": 4}) - use_pqmf: bool = True - - # optimizer - overrides - lr_gen: float = 0.0001 # Initial learning rate. - lr_disc: float = 0.0001 # Initial learning rate. - optimizer: str = "AdamW" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.8, 0.99], "weight_decay": 0.0}) - lr_scheduler_gen: str = "MultiStepLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_gen_params: dict = field( - default_factory=lambda: {"gamma": 0.5, "milestones": [100000, 200000, 300000, 400000, 500000, 600000]} - ) - lr_scheduler_disc: str = "MultiStepLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_disc_params: dict = field( - default_factory=lambda: {"gamma": 0.5, "milestones": [100000, 200000, 300000, 400000, 500000, 600000]} - ) - - # Training - overrides - batch_size: int = 64 - seq_len: int = 16384 - pad_short: int = 2000 - use_noise_augment: bool = False - use_cache: bool = True - steps_to_start_discriminator: bool = 200000 - - # LOSS PARAMETERS - overrides - use_stft_loss: bool = True - use_subband_stft_loss: bool = True - use_mse_gan_loss: bool = True - use_hinge_gan_loss: bool = False - use_feat_match_loss: bool = False # requires MelGAN Discriminators (MelGAN and HifiGAN) - use_l1_spec_loss: bool = False - - subband_stft_loss_params: dict = field( - default_factory=lambda: {"n_ffts": [384, 683, 171], "hop_lengths": [30, 60, 10], "win_lengths": [150, 300, 60]} - ) - - # loss weights - overrides - stft_loss_weight: float = 0.5 - subband_stft_loss_weight: float = 0 - mse_G_loss_weight: float = 2.5 - hinge_G_loss_weight: float = 0 - feat_match_loss_weight: float = 108 - l1_spec_loss_weight: float = 0 diff --git a/TTS/TTS/vocoder/configs/parallel_wavegan_config.py b/TTS/TTS/vocoder/configs/parallel_wavegan_config.py deleted file mode 100644 index 7845dd6bf835ebab4cc5d8b65962b7347b7711cf..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/configs/parallel_wavegan_config.py +++ /dev/null @@ -1,133 +0,0 @@ -from dataclasses import dataclass, field - -from .shared_configs import BaseGANVocoderConfig - - -@dataclass -class ParallelWaveganConfig(BaseGANVocoderConfig): - """Defines parameters for ParallelWavegan vocoder. - - Args: - model (str): - Model name used for selecting the right configuration at initialization. Defaults to `gan`. - discriminator_model (str): One of the discriminators from `TTS.vocoder.models.*_discriminator`. Defaults to - 'parallel_wavegan_discriminator`. - discriminator_model_params (dict): The discriminator model kwargs. Defaults to - '{"num_layers": 10}` - generator_model (str): One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `parallel_wavegan_generator`. - generator_model_param (dict): - The generator model kwargs. Defaults to `{"upsample_factors": [4, 4, 4, 4], "stacks": 3, "num_res_blocks": 30}`. - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 16. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 8192. - pad_short (int): - Additional padding applied to the audio samples shorter than `seq_len`. Defaults to 0. - use_noise_augment (bool): - enable / disable random noise added to the input waveform. The noise is added after computing the - features. Defaults to True. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - steps_to_start_discriminator (int): - Number of steps required to start training the discriminator. Defaults to 0. - use_stft_loss (bool):` - enable / disable use of STFT loss originally used by ParallelWaveGAN model. Defaults to True. - use_subband_stft (bool): - enable / disable use of subband loss computation originally used by MultiBandMelgan model. Defaults to True. - use_mse_gan_loss (bool): - enable / disable using Mean Squeare Error GAN loss. Defaults to True. - use_hinge_gan_loss (bool): - enable / disable using Hinge GAN loss. You should choose either Hinge or MSE loss for training GAN models. - Defaults to False. - use_feat_match_loss (bool): - enable / disable using Feature Matching loss originally used by MelGAN model. Defaults to True. - use_l1_spec_loss (bool): - enable / disable using L1 spectrogram loss originally used by HifiGAN model. Defaults to False. - stft_loss_params (dict): STFT loss parameters. Default to - `{"n_ffts": [1024, 2048, 512], "hop_lengths": [120, 240, 50], "win_lengths": [600, 1200, 240]}` - stft_loss_weight (float): STFT loss weight that multiplies the computed loss before summing up the total - model loss. Defaults to 0.5. - subband_stft_loss_weight (float): - Subband STFT loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - mse_G_loss_weight (float): - MSE generator loss weight that multiplies the computed loss before summing up the total loss. faults to 2.5. - hinge_G_loss_weight (float): - Hinge generator loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - feat_match_loss_weight (float): - Feature matching loss weight that multiplies the computed loss before summing up the total loss. faults to 0. - l1_spec_loss_weight (float): - L1 spectrogram loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - lr_gen (float): - Generator model initial learning rate. Defaults to 0.0002. - lr_disc (float): - Discriminator model initial learning rate. Defaults to 0.0002. - optimizer (torch.optim.Optimizer): - Optimizer used for the training. Defaults to `AdamW`. - optimizer_params (dict): - Optimizer kwargs. Defaults to `{"betas": [0.8, 0.99], "weight_decay": 0.0}` - lr_scheduler_gen (torch.optim.Scheduler): - Learning rate scheduler for the generator. Defaults to `ExponentialLR`. - lr_scheduler_gen_params (dict): - Parameters for the generator learning rate scheduler. Defaults to `{"gamma": 0.5, "step_size": 200000, "last_epoch": -1}`. - lr_scheduler_disc (torch.optim.Scheduler): - Learning rate scheduler for the discriminator. Defaults to `ExponentialLR`. - lr_scheduler_dict_params (dict): - Parameters for the discriminator learning rate scheduler. Defaults to `{"gamma": 0.5, "step_size": 200000, "last_epoch": -1}`. - """ - - model: str = "parallel_wavegan" - - # Model specific params - discriminator_model: str = "parallel_wavegan_discriminator" - discriminator_model_params: dict = field(default_factory=lambda: {"num_layers": 10}) - generator_model: str = "parallel_wavegan_generator" - generator_model_params: dict = field( - default_factory=lambda: {"upsample_factors": [4, 4, 4, 4], "stacks": 3, "num_res_blocks": 30} - ) - - # Training - overrides - batch_size: int = 6 - seq_len: int = 25600 - pad_short: int = 2000 - use_noise_augment: bool = False - use_cache: bool = True - steps_to_start_discriminator: int = 200000 - - # LOSS PARAMETERS - overrides - use_stft_loss: bool = True - use_subband_stft_loss: bool = False - use_mse_gan_loss: bool = True - use_hinge_gan_loss: bool = False - use_feat_match_loss: bool = False # requires MelGAN Discriminators (MelGAN and HifiGAN) - use_l1_spec_loss: bool = False - - stft_loss_params: dict = field( - default_factory=lambda: { - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240], - } - ) - - # loss weights - overrides - stft_loss_weight: float = 0.5 - subband_stft_loss_weight: float = 0 - mse_G_loss_weight: float = 2.5 - hinge_G_loss_weight: float = 0 - feat_match_loss_weight: float = 0 - l1_spec_loss_weight: float = 0 - - # optimizer overrides - lr_gen: float = 0.0002 # Initial learning rate. - lr_disc: float = 0.0002 # Initial learning rate. - optimizer: str = "AdamW" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.8, 0.99], "weight_decay": 0.0}) - lr_scheduler_gen: str = "StepLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_gen_params: dict = field(default_factory=lambda: {"gamma": 0.5, "step_size": 200000, "last_epoch": -1}) - lr_scheduler_disc: str = "StepLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_disc_params: dict = field( - default_factory=lambda: {"gamma": 0.5, "step_size": 200000, "last_epoch": -1} - ) - scheduler_after_epoch: bool = False diff --git a/TTS/TTS/vocoder/configs/shared_configs.py b/TTS/TTS/vocoder/configs/shared_configs.py deleted file mode 100644 index a558cfcabbc2abc26be60065d3ac75cebd829f28..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/configs/shared_configs.py +++ /dev/null @@ -1,182 +0,0 @@ -from dataclasses import dataclass, field - -from TTS.config import BaseAudioConfig, BaseTrainingConfig - - -@dataclass -class BaseVocoderConfig(BaseTrainingConfig): - """Shared parameters among all the vocoder models. - Args: - audio (BaseAudioConfig): - Audio processor config instance. Defaultsto `BaseAudioConfig()`. - use_noise_augment (bool): - Augment the input audio with random noise. Defaults to False/ - eval_split_size (int): - Number of instances used for evaluation. Defaults to 10. - data_path (str): - Root path of the training data. All the audio files found recursively from this root path are used for - training. Defaults to `""`. - feature_path (str): - Root path to the precomputed feature files. Defaults to None. - seq_len (int): - Length of the waveform segments used for training. Defaults to 1000. - pad_short (int): - Extra padding for the waveforms shorter than `seq_len`. Defaults to 0. - conv_path (int): - Extra padding for the feature frames against convolution of the edge frames. Defaults to MISSING. - Defaults to 0. - use_cache (bool): - enable / disable in memory caching of the computed features. If the RAM is not enough, if may cause OOM. - Defaults to False. - epochs (int): - Number of training epochs to. Defaults to 10000. - wd (float): - Weight decay. - optimizer (torch.optim.Optimizer): - Optimizer used for the training. Defaults to `AdamW`. - optimizer_params (dict): - Optimizer kwargs. Defaults to `{"betas": [0.8, 0.99], "weight_decay": 0.0}` - """ - - audio: BaseAudioConfig = field(default_factory=BaseAudioConfig) - # dataloading - use_noise_augment: bool = False # enable/disable random noise augmentation in spectrograms. - eval_split_size: int = 10 # number of samples used for evaluation. - # dataset - data_path: str = "" # root data path. It finds all wav files recursively from there. - feature_path: str = None # if you use precomputed features - seq_len: int = 1000 # signal length used in training. - pad_short: int = 0 # additional padding for short wavs - conv_pad: int = 0 # additional padding against convolutions applied to spectrograms - use_cache: bool = False # use in memory cache to keep the computed features. This might cause OOM. - # OPTIMIZER - epochs: int = 10000 # total number of epochs to train. - wd: float = 0.0 # Weight decay weight. - optimizer: str = "AdamW" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.8, 0.99], "weight_decay": 0.0}) - - -@dataclass -class BaseGANVocoderConfig(BaseVocoderConfig): - """Base config class used among all the GAN based vocoders. - Args: - use_stft_loss (bool): - enable / disable the use of STFT loss. Defaults to True. - use_subband_stft_loss (bool): - enable / disable the use of Subband STFT loss. Defaults to True. - use_mse_gan_loss (bool): - enable / disable the use of Mean Squared Error based GAN loss. Defaults to True. - use_hinge_gan_loss (bool): - enable / disable the use of Hinge GAN loss. Defaults to True. - use_feat_match_loss (bool): - enable / disable feature matching loss. Defaults to True. - use_l1_spec_loss (bool): - enable / disable L1 spectrogram loss. Defaults to True. - stft_loss_weight (float): - Loss weight that multiplies the computed loss value. Defaults to 0. - subband_stft_loss_weight (float): - Loss weight that multiplies the computed loss value. Defaults to 0. - mse_G_loss_weight (float): - Loss weight that multiplies the computed loss value. Defaults to 1. - hinge_G_loss_weight (float): - Loss weight that multiplies the computed loss value. Defaults to 0. - feat_match_loss_weight (float): - Loss weight that multiplies the computed loss value. Defaults to 100. - l1_spec_loss_weight (float): - Loss weight that multiplies the computed loss value. Defaults to 45. - stft_loss_params (dict): - Parameters for the STFT loss. Defaults to `{"n_ffts": [1024, 2048, 512], "hop_lengths": [120, 240, 50], "win_lengths": [600, 1200, 240]}`. - l1_spec_loss_params (dict): - Parameters for the L1 spectrogram loss. Defaults to - `{ - "use_mel": True, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": None, - }` - target_loss (str): - Target loss name that defines the quality of the model. Defaults to `G_avg_loss`. - grad_clip (list): - A list of gradient clipping theresholds for each optimizer. Any value less than 0 disables clipping. - Defaults to [5, 5]. - lr_gen (float): - Generator model initial learning rate. Defaults to 0.0002. - lr_disc (float): - Discriminator model initial learning rate. Defaults to 0.0002. - lr_scheduler_gen (torch.optim.Scheduler): - Learning rate scheduler for the generator. Defaults to `ExponentialLR`. - lr_scheduler_gen_params (dict): - Parameters for the generator learning rate scheduler. Defaults to `{"gamma": 0.999, "last_epoch": -1}`. - lr_scheduler_disc (torch.optim.Scheduler): - Learning rate scheduler for the discriminator. Defaults to `ExponentialLR`. - lr_scheduler_disc_params (dict): - Parameters for the discriminator learning rate scheduler. Defaults to `{"gamma": 0.999, "last_epoch": -1}`. - scheduler_after_epoch (bool): - Whether to update the learning rate schedulers after each epoch. Defaults to True. - use_pqmf (bool): - enable / disable PQMF for subband approximation at training. Defaults to False. - steps_to_start_discriminator (int): - Number of steps required to start training the discriminator. Defaults to 0. - diff_samples_for_G_and_D (bool): - enable / disable use of different training samples for the generator and the discriminator iterations. - Enabling it results in slower iterations but faster convergance in some cases. Defaults to False. - """ - - model: str = "gan" - - # LOSS PARAMETERS - use_stft_loss: bool = True - use_subband_stft_loss: bool = True - use_mse_gan_loss: bool = True - use_hinge_gan_loss: bool = True - use_feat_match_loss: bool = True # requires MelGAN Discriminators (MelGAN and HifiGAN) - use_l1_spec_loss: bool = True - - # loss weights - stft_loss_weight: float = 0 - subband_stft_loss_weight: float = 0 - mse_G_loss_weight: float = 1 - hinge_G_loss_weight: float = 0 - feat_match_loss_weight: float = 100 - l1_spec_loss_weight: float = 45 - - stft_loss_params: dict = field( - default_factory=lambda: { - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240], - } - ) - - l1_spec_loss_params: dict = field( - default_factory=lambda: { - "use_mel": True, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": None, - } - ) - - target_loss: str = "loss_0" # loss value to pick the best model to save after each epoch - - # optimizer - grad_clip: float = field(default_factory=lambda: [5, 5]) - lr_gen: float = 0.0002 # Initial learning rate. - lr_disc: float = 0.0002 # Initial learning rate. - lr_scheduler_gen: str = "ExponentialLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_gen_params: dict = field(default_factory=lambda: {"gamma": 0.999, "last_epoch": -1}) - lr_scheduler_disc: str = "ExponentialLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_disc_params: dict = field(default_factory=lambda: {"gamma": 0.999, "last_epoch": -1}) - scheduler_after_epoch: bool = True - - use_pqmf: bool = False # enable/disable using pqmf for multi-band training. (Multi-band MelGAN) - steps_to_start_discriminator = 0 # start training the discriminator after this number of steps. - diff_samples_for_G_and_D: bool = False # use different samples for G and D training steps. diff --git a/TTS/TTS/vocoder/configs/univnet_config.py b/TTS/TTS/vocoder/configs/univnet_config.py deleted file mode 100644 index 67f324cfce5f701f0d7453beab81590bef6be114..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/configs/univnet_config.py +++ /dev/null @@ -1,161 +0,0 @@ -from dataclasses import dataclass, field -from typing import Dict - -from TTS.vocoder.configs.shared_configs import BaseGANVocoderConfig - - -@dataclass -class UnivnetConfig(BaseGANVocoderConfig): - """Defines parameters for UnivNet vocoder. - - Example: - - >>> from TTS.vocoder.configs import UnivNetConfig - >>> config = UnivNetConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `UnivNet`. - discriminator_model (str): One of the discriminators from `TTS.vocoder.models.*_discriminator`. Defaults to - 'UnivNet_discriminator`. - generator_model (str): One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `UnivNet_generator`. - generator_model_params (dict): Parameters of the generator model. Defaults to - ` - { - "use_mel": True, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": None, - } - ` - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 32. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 8192. - pad_short (int): - Additional padding applied to the audio samples shorter than `seq_len`. Defaults to 0. - use_noise_augment (bool): - enable / disable random noise added to the input waveform. The noise is added after computing the - features. Defaults to True. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - use_stft_loss (bool): - enable / disable use of STFT loss originally used by ParallelWaveGAN model. Defaults to True. - use_subband_stft (bool): - enable / disable use of subband loss computation originally used by MultiBandMelgan model. Defaults to True. - use_mse_gan_loss (bool): - enable / disable using Mean Squeare Error GAN loss. Defaults to True. - use_hinge_gan_loss (bool): - enable / disable using Hinge GAN loss. You should choose either Hinge or MSE loss for training GAN models. - Defaults to False. - use_feat_match_loss (bool): - enable / disable using Feature Matching loss originally used by MelGAN model. Defaults to True. - use_l1_spec_loss (bool): - enable / disable using L1 spectrogram loss originally used by univnet model. Defaults to False. - stft_loss_params (dict): - STFT loss parameters. Default to - `{ - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240] - }` - l1_spec_loss_params (dict): - L1 spectrogram loss parameters. Default to - `{ - "use_mel": True, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": None, - }` - stft_loss_weight (float): STFT loss weight that multiplies the computed loss before summing up the total - model loss. Defaults to 0.5. - subband_stft_loss_weight (float): - Subband STFT loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - mse_G_loss_weight (float): - MSE generator loss weight that multiplies the computed loss before summing up the total loss. faults to 2.5. - hinge_G_loss_weight (float): - Hinge generator loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - feat_match_loss_weight (float): - Feature matching loss weight that multiplies the computed loss before summing up the total loss. faults to 108. - l1_spec_loss_weight (float): - L1 spectrogram loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - """ - - model: str = "univnet" - batch_size: int = 32 - # model specific params - discriminator_model: str = "univnet_discriminator" - generator_model: str = "univnet_generator" - generator_model_params: Dict = field( - default_factory=lambda: { - "in_channels": 64, - "out_channels": 1, - "hidden_channels": 32, - "cond_channels": 80, - "upsample_factors": [8, 8, 4], - "lvc_layers_each_block": 4, - "lvc_kernel_size": 3, - "kpnet_hidden_channels": 64, - "kpnet_conv_size": 3, - "dropout": 0.0, - } - ) - - # LOSS PARAMETERS - overrides - use_stft_loss: bool = True - use_subband_stft_loss: bool = False - use_mse_gan_loss: bool = True - use_hinge_gan_loss: bool = False - use_feat_match_loss: bool = False # requires MelGAN Discriminators (MelGAN and univnet) - use_l1_spec_loss: bool = False - - # loss weights - overrides - stft_loss_weight: float = 2.5 - stft_loss_params: Dict = field( - default_factory=lambda: { - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240], - } - ) - subband_stft_loss_weight: float = 0 - mse_G_loss_weight: float = 1 - hinge_G_loss_weight: float = 0 - feat_match_loss_weight: float = 0 - l1_spec_loss_weight: float = 0 - l1_spec_loss_params: Dict = field( - default_factory=lambda: { - "use_mel": True, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": None, - } - ) - - # optimizer parameters - lr_gen: float = 1e-4 # Initial learning rate. - lr_disc: float = 1e-4 # Initial learning rate. - lr_scheduler_gen: str = None # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - # lr_scheduler_gen_params: dict = field(default_factory=lambda: {"gamma": 0.999, "last_epoch": -1}) - lr_scheduler_disc: str = None # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - # lr_scheduler_disc_params: dict = field(default_factory=lambda: {"gamma": 0.999, "last_epoch": -1}) - optimizer_params: Dict = field(default_factory=lambda: {"betas": [0.5, 0.9], "weight_decay": 0.0}) - steps_to_start_discriminator: int = 200000 - - def __post_init__(self): - super().__post_init__() - self.generator_model_params["cond_channels"] = self.audio.num_mels diff --git a/TTS/TTS/vocoder/configs/wavegrad_config.py b/TTS/TTS/vocoder/configs/wavegrad_config.py deleted file mode 100644 index c39813ae68c3d8c77614c9a5188ac5f2a59d991d..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/configs/wavegrad_config.py +++ /dev/null @@ -1,90 +0,0 @@ -from dataclasses import dataclass, field - -from TTS.vocoder.configs.shared_configs import BaseVocoderConfig -from TTS.vocoder.models.wavegrad import WavegradArgs - - -@dataclass -class WavegradConfig(BaseVocoderConfig): - """Defines parameters for WaveGrad vocoder. - Example: - - >>> from TTS.vocoder.configs import WavegradConfig - >>> config = WavegradConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `wavegrad`. - generator_model (str): One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `wavegrad`. - model_params (WavegradArgs): Model parameters. Check `WavegradArgs` for default values. - target_loss (str): - Target loss name that defines the quality of the model. Defaults to `avg_wavegrad_loss`. - epochs (int): - Number of epochs to traing the model. Defaults to 10000. - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 96. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 6144. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - mixed_precision (bool): - enable / disable mixed precision training. Default is True. - eval_split_size (int): - Number of samples used for evalutaion. Defaults to 50. - train_noise_schedule (dict): - Training noise schedule. Defaults to - `{"min_val": 1e-6, "max_val": 1e-2, "num_steps": 1000}` - test_noise_schedule (dict): - Inference noise schedule. For a better performance, you may need to use `bin/tune_wavegrad.py` to find a - better schedule. Defaults to - ` - { - "min_val": 1e-6, - "max_val": 1e-2, - "num_steps": 50, - } - ` - grad_clip (float): - Gradient clipping threshold. If <= 0.0, no clipping is applied. Defaults to 1.0 - lr (float): - Initila leraning rate. Defaults to 1e-4. - lr_scheduler (str): - One of the learning rate schedulers from `torch.optim.scheduler.*`. Defaults to `MultiStepLR`. - lr_scheduler_params (dict): - kwargs for the scheduler. Defaults to `{"gamma": 0.5, "milestones": [100000, 200000, 300000, 400000, 500000, 600000]}` - """ - - model: str = "wavegrad" - # Model specific params - generator_model: str = "wavegrad" - model_params: WavegradArgs = field(default_factory=WavegradArgs) - target_loss: str = "loss" # loss value to pick the best model to save after each epoch - - # Training - overrides - epochs: int = 10000 - batch_size: int = 96 - seq_len: int = 6144 - use_cache: bool = True - mixed_precision: bool = True - eval_split_size: int = 50 - - # NOISE SCHEDULE PARAMS - train_noise_schedule: dict = field(default_factory=lambda: {"min_val": 1e-6, "max_val": 1e-2, "num_steps": 1000}) - - test_noise_schedule: dict = field( - default_factory=lambda: { # inference noise schedule. Try TTS/bin/tune_wavegrad.py to find the optimal values. - "min_val": 1e-6, - "max_val": 1e-2, - "num_steps": 50, - } - ) - - # optimizer overrides - grad_clip: float = 1.0 - lr: float = 1e-4 # Initial learning rate. - lr_scheduler: str = "MultiStepLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_params: dict = field( - default_factory=lambda: {"gamma": 0.5, "milestones": [100000, 200000, 300000, 400000, 500000, 600000]} - ) diff --git a/TTS/TTS/vocoder/configs/wavernn_config.py b/TTS/TTS/vocoder/configs/wavernn_config.py deleted file mode 100644 index f39400e5e50b56d4ff79c8c148fd518b3ec3b390..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/configs/wavernn_config.py +++ /dev/null @@ -1,102 +0,0 @@ -from dataclasses import dataclass, field - -from TTS.vocoder.configs.shared_configs import BaseVocoderConfig -from TTS.vocoder.models.wavernn import WavernnArgs - - -@dataclass -class WavernnConfig(BaseVocoderConfig): - """Defines parameters for Wavernn vocoder. - Example: - - >>> from TTS.vocoder.configs import WavernnConfig - >>> config = WavernnConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `wavernn`. - mode (str): - Output mode of the WaveRNN vocoder. `mold` for Mixture of Logistic Distribution, `gauss` for a single - Gaussian Distribution and `bits` for quantized bits as the model's output. - mulaw (bool): - enable / disable the use of Mulaw quantization for training. Only applicable if `mode == 'bits'`. Defaults - to `True`. - generator_model (str): - One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `WaveRNN`. - wavernn_model_params (dict): - kwargs for the WaveRNN model. Defaults to - `{ - "rnn_dims": 512, - "fc_dims": 512, - "compute_dims": 128, - "res_out_dims": 128, - "num_res_blocks": 10, - "use_aux_net": True, - "use_upsample_net": True, - "upsample_factors": [4, 8, 8] - }` - batched (bool): - enable / disable the batched inference. It speeds up the inference by splitting the input into segments and - processing the segments in a batch. Then it merges the outputs with a certain overlap and smoothing. If - you set it False, without CUDA, it is too slow to be practical. Defaults to True. - target_samples (int): - Size of the segments in batched mode. Defaults to 11000. - overlap_sampels (int): - Size of the overlap between consecutive segments. Defaults to 550. - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 256. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 1280. - - use_noise_augment (bool): - enable / disable random noise added to the input waveform. The noise is added after computing the - features. Defaults to True. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - mixed_precision (bool): - enable / disable mixed precision training. Default is True. - eval_split_size (int): - Number of samples used for evalutaion. Defaults to 50. - num_epochs_before_test (int): - Number of epochs waited to run the next evalution. Since inference takes some time, it is better to - wait some number of epochs not ot waste training time. Defaults to 10. - grad_clip (float): - Gradient clipping threshold. If <= 0.0, no clipping is applied. Defaults to 4.0 - lr (float): - Initila leraning rate. Defaults to 1e-4. - lr_scheduler (str): - One of the learning rate schedulers from `torch.optim.scheduler.*`. Defaults to `MultiStepLR`. - lr_scheduler_params (dict): - kwargs for the scheduler. Defaults to `{"gamma": 0.5, "milestones": [200000, 400000, 600000]}` - """ - - model: str = "wavernn" - - # Model specific params - model_args: WavernnArgs = field(default_factory=WavernnArgs) - target_loss: str = "loss" - - # Inference - batched: bool = True - target_samples: int = 11000 - overlap_samples: int = 550 - - # Training - overrides - epochs: int = 10000 - batch_size: int = 256 - seq_len: int = 1280 - use_noise_augment: bool = False - use_cache: bool = True - mixed_precision: bool = True - eval_split_size: int = 50 - num_epochs_before_test: int = ( - 10 # number of epochs to wait until the next test run (synthesizing a full audio clip). - ) - - # optimizer overrides - grad_clip: float = 4.0 - lr: float = 1e-4 # Initial learning rate. - lr_scheduler: str = "MultiStepLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_params: dict = field(default_factory=lambda: {"gamma": 0.5, "milestones": [200000, 400000, 600000]}) diff --git a/TTS/TTS/vocoder/datasets/__init__.py b/TTS/TTS/vocoder/datasets/__init__.py deleted file mode 100644 index 871eb0d20276ffc691fd6da796bf65df6c23ea0d..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/datasets/__init__.py +++ /dev/null @@ -1,58 +0,0 @@ -from typing import List - -from coqpit import Coqpit -from torch.utils.data import Dataset - -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.datasets.gan_dataset import GANDataset -from TTS.vocoder.datasets.preprocess import load_wav_data, load_wav_feat_data -from TTS.vocoder.datasets.wavegrad_dataset import WaveGradDataset -from TTS.vocoder.datasets.wavernn_dataset import WaveRNNDataset - - -def setup_dataset(config: Coqpit, ap: AudioProcessor, is_eval: bool, data_items: List, verbose: bool) -> Dataset: - if config.model.lower() in "gan": - dataset = GANDataset( - ap=ap, - items=data_items, - seq_len=config.seq_len, - hop_len=ap.hop_length, - pad_short=config.pad_short, - conv_pad=config.conv_pad, - return_pairs=config.diff_samples_for_G_and_D if "diff_samples_for_G_and_D" in config else False, - is_training=not is_eval, - return_segments=not is_eval, - use_noise_augment=config.use_noise_augment, - use_cache=config.use_cache, - verbose=verbose, - ) - dataset.shuffle_mapping() - elif config.model.lower() == "wavegrad": - dataset = WaveGradDataset( - ap=ap, - items=data_items, - seq_len=config.seq_len, - hop_len=ap.hop_length, - pad_short=config.pad_short, - conv_pad=config.conv_pad, - is_training=not is_eval, - return_segments=True, - use_noise_augment=False, - use_cache=config.use_cache, - verbose=verbose, - ) - elif config.model.lower() == "wavernn": - dataset = WaveRNNDataset( - ap=ap, - items=data_items, - seq_len=config.seq_len, - hop_len=ap.hop_length, - pad=config.model_params.pad, - mode=config.model_params.mode, - mulaw=config.model_params.mulaw, - is_training=not is_eval, - verbose=verbose, - ) - else: - raise ValueError(f" [!] Dataset for model {config.model.lower()} cannot be found.") - return dataset diff --git a/TTS/TTS/vocoder/datasets/gan_dataset.py b/TTS/TTS/vocoder/datasets/gan_dataset.py deleted file mode 100644 index 50c38c4deb8fd861f7cef8144df3098c3558aeb4..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/datasets/gan_dataset.py +++ /dev/null @@ -1,152 +0,0 @@ -import glob -import os -import random -from multiprocessing import Manager - -import numpy as np -import torch -from torch.utils.data import Dataset - - -class GANDataset(Dataset): - """ - GAN Dataset searchs for all the wav files under root path - and converts them to acoustic features on the fly and returns - random segments of (audio, feature) couples. - """ - - def __init__( - self, - ap, - items, - seq_len, - hop_len, - pad_short, - conv_pad=2, - return_pairs=False, - is_training=True, - return_segments=True, - use_noise_augment=False, - use_cache=False, - verbose=False, - ): - super().__init__() - self.ap = ap - self.item_list = items - self.compute_feat = not isinstance(items[0], (tuple, list)) - self.seq_len = seq_len - self.hop_len = hop_len - self.pad_short = pad_short - self.conv_pad = conv_pad - self.return_pairs = return_pairs - self.is_training = is_training - self.return_segments = return_segments - self.use_cache = use_cache - self.use_noise_augment = use_noise_augment - self.verbose = verbose - - assert seq_len % hop_len == 0, " [!] seq_len has to be a multiple of hop_len." - self.feat_frame_len = seq_len // hop_len + (2 * conv_pad) - - # map G and D instances - self.G_to_D_mappings = list(range(len(self.item_list))) - self.shuffle_mapping() - - # cache acoustic features - if use_cache: - self.create_feature_cache() - - def create_feature_cache(self): - self.manager = Manager() - self.cache = self.manager.list() - self.cache += [None for _ in range(len(self.item_list))] - - @staticmethod - def find_wav_files(path): - return glob.glob(os.path.join(path, "**", "*.wav"), recursive=True) - - def __len__(self): - return len(self.item_list) - - def __getitem__(self, idx): - """Return different items for Generator and Discriminator and - cache acoustic features""" - - # set the seed differently for each worker - if torch.utils.data.get_worker_info(): - random.seed(torch.utils.data.get_worker_info().seed) - - if self.return_segments: - item1 = self.load_item(idx) - if self.return_pairs: - idx2 = self.G_to_D_mappings[idx] - item2 = self.load_item(idx2) - return item1, item2 - return item1 - item1 = self.load_item(idx) - return item1 - - def _pad_short_samples(self, audio, mel=None): - """Pad samples shorter than the output sequence length""" - if len(audio) < self.seq_len: - audio = np.pad(audio, (0, self.seq_len - len(audio)), mode="constant", constant_values=0.0) - - if mel is not None and mel.shape[1] < self.feat_frame_len: - pad_value = self.ap.melspectrogram(np.zeros([self.ap.win_length]))[:, 0] - mel = np.pad( - mel, - ([0, 0], [0, self.feat_frame_len - mel.shape[1]]), - mode="constant", - constant_values=pad_value.mean(), - ) - return audio, mel - - def shuffle_mapping(self): - random.shuffle(self.G_to_D_mappings) - - def load_item(self, idx): - """load (audio, feat) couple""" - if self.compute_feat: - # compute features from wav - wavpath = self.item_list[idx] - # print(wavpath) - - if self.use_cache and self.cache[idx] is not None: - audio, mel = self.cache[idx] - else: - audio = self.ap.load_wav(wavpath) - mel = self.ap.melspectrogram(audio) - audio, mel = self._pad_short_samples(audio, mel) - else: - # load precomputed features - wavpath, feat_path = self.item_list[idx] - - if self.use_cache and self.cache[idx] is not None: - audio, mel = self.cache[idx] - else: - audio = self.ap.load_wav(wavpath) - mel = np.load(feat_path) - audio, mel = self._pad_short_samples(audio, mel) - - # correct the audio length wrt padding applied in stft - audio = np.pad(audio, (0, self.hop_len), mode="edge") - audio = audio[: mel.shape[-1] * self.hop_len] - assert ( - mel.shape[-1] * self.hop_len == audio.shape[-1] - ), f" [!] {mel.shape[-1] * self.hop_len} vs {audio.shape[-1]}" - - audio = torch.from_numpy(audio).float().unsqueeze(0) - mel = torch.from_numpy(mel).float().squeeze(0) - - if self.return_segments: - max_mel_start = mel.shape[1] - self.feat_frame_len - mel_start = random.randint(0, max_mel_start) - mel_end = mel_start + self.feat_frame_len - mel = mel[:, mel_start:mel_end] - - audio_start = mel_start * self.hop_len - audio = audio[:, audio_start : audio_start + self.seq_len] - - if self.use_noise_augment and self.is_training and self.return_segments: - audio = audio + (1 / 32768) * torch.randn_like(audio) - return (mel, audio) diff --git a/TTS/TTS/vocoder/datasets/preprocess.py b/TTS/TTS/vocoder/datasets/preprocess.py deleted file mode 100644 index 0f69b812fa58949eadc78b450114f03b19e5c80c..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/datasets/preprocess.py +++ /dev/null @@ -1,70 +0,0 @@ -import glob -import os -from pathlib import Path - -import numpy as np -from coqpit import Coqpit -from tqdm import tqdm - -from TTS.utils.audio import AudioProcessor - - -def preprocess_wav_files(out_path: str, config: Coqpit, ap: AudioProcessor): - """Process wav and compute mel and quantized wave signal. - It is mainly used by WaveRNN dataloader. - - Args: - out_path (str): Parent folder path to save the files. - config (Coqpit): Model config. - ap (AudioProcessor): Audio processor. - """ - os.makedirs(os.path.join(out_path, "quant"), exist_ok=True) - os.makedirs(os.path.join(out_path, "mel"), exist_ok=True) - wav_files = find_wav_files(config.data_path) - for path in tqdm(wav_files): - wav_name = Path(path).stem - quant_path = os.path.join(out_path, "quant", wav_name + ".npy") - mel_path = os.path.join(out_path, "mel", wav_name + ".npy") - y = ap.load_wav(path) - mel = ap.melspectrogram(y) - np.save(mel_path, mel) - if isinstance(config.mode, int): - quant = ap.mulaw_encode(y, qc=config.mode) if config.model_args.mulaw else ap.quantize(y, bits=config.mode) - np.save(quant_path, quant) - - -def find_wav_files(data_path, file_ext="wav"): - wav_paths = glob.glob(os.path.join(data_path, "**", f"*.{file_ext}"), recursive=True) - return wav_paths - - -def find_feat_files(data_path): - feat_paths = glob.glob(os.path.join(data_path, "**", "*.npy"), recursive=True) - return feat_paths - - -def load_wav_data(data_path, eval_split_size, file_ext="wav"): - wav_paths = find_wav_files(data_path, file_ext=file_ext) - assert len(wav_paths) > 0, f" [!] {data_path} is empty." - np.random.seed(0) - np.random.shuffle(wav_paths) - return wav_paths[:eval_split_size], wav_paths[eval_split_size:] - - -def load_wav_feat_data(data_path, feat_path, eval_split_size): - wav_paths = find_wav_files(data_path) - feat_paths = find_feat_files(feat_path) - - wav_paths.sort(key=lambda x: Path(x).stem) - feat_paths.sort(key=lambda x: Path(x).stem) - - assert len(wav_paths) == len(feat_paths), f" [!] {len(wav_paths)} vs {feat_paths}" - for wav, feat in zip(wav_paths, feat_paths): - wav_name = Path(wav).stem - feat_name = Path(feat).stem - assert wav_name == feat_name - - items = list(zip(wav_paths, feat_paths)) - np.random.seed(0) - np.random.shuffle(items) - return items[:eval_split_size], items[eval_split_size:] diff --git a/TTS/TTS/vocoder/datasets/wavegrad_dataset.py b/TTS/TTS/vocoder/datasets/wavegrad_dataset.py deleted file mode 100644 index 305fe430e3da880c03aee625525ce825c8ef87a3..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/datasets/wavegrad_dataset.py +++ /dev/null @@ -1,151 +0,0 @@ -import glob -import os -import random -from multiprocessing import Manager -from typing import List, Tuple - -import numpy as np -import torch -from torch.utils.data import Dataset - - -class WaveGradDataset(Dataset): - """ - WaveGrad Dataset searchs for all the wav files under root path - and converts them to acoustic features on the fly and returns - random segments of (audio, feature) couples. - """ - - def __init__( - self, - ap, - items, - seq_len, - hop_len, - pad_short, - conv_pad=2, - is_training=True, - return_segments=True, - use_noise_augment=False, - use_cache=False, - verbose=False, - ): - super().__init__() - self.ap = ap - self.item_list = items - self.seq_len = seq_len if return_segments else None - self.hop_len = hop_len - self.pad_short = pad_short - self.conv_pad = conv_pad - self.is_training = is_training - self.return_segments = return_segments - self.use_cache = use_cache - self.use_noise_augment = use_noise_augment - self.verbose = verbose - - if return_segments: - assert seq_len % hop_len == 0, " [!] seq_len has to be a multiple of hop_len." - self.feat_frame_len = seq_len // hop_len + (2 * conv_pad) - - # cache acoustic features - if use_cache: - self.create_feature_cache() - - def create_feature_cache(self): - self.manager = Manager() - self.cache = self.manager.list() - self.cache += [None for _ in range(len(self.item_list))] - - @staticmethod - def find_wav_files(path): - return glob.glob(os.path.join(path, "**", "*.wav"), recursive=True) - - def __len__(self): - return len(self.item_list) - - def __getitem__(self, idx): - item = self.load_item(idx) - return item - - def load_test_samples(self, num_samples: int) -> List[Tuple]: - """Return test samples. - - Args: - num_samples (int): Number of samples to return. - - Returns: - List[Tuple]: melspectorgram and audio. - - Shapes: - - melspectrogram (Tensor): :math:`[C, T]` - - audio (Tensor): :math:`[T_audio]` - """ - samples = [] - return_segments = self.return_segments - self.return_segments = False - for idx in range(num_samples): - mel, audio = self.load_item(idx) - samples.append([mel, audio]) - self.return_segments = return_segments - return samples - - def load_item(self, idx): - """load (audio, feat) couple""" - # compute features from wav - wavpath = self.item_list[idx] - - if self.use_cache and self.cache[idx] is not None: - audio = self.cache[idx] - else: - audio = self.ap.load_wav(wavpath) - - if self.return_segments: - # correct audio length wrt segment length - if audio.shape[-1] < self.seq_len + self.pad_short: - audio = np.pad( - audio, (0, self.seq_len + self.pad_short - len(audio)), mode="constant", constant_values=0.0 - ) - assert ( - audio.shape[-1] >= self.seq_len + self.pad_short - ), f"{audio.shape[-1]} vs {self.seq_len + self.pad_short}" - - # correct the audio length wrt hop length - p = (audio.shape[-1] // self.hop_len + 1) * self.hop_len - audio.shape[-1] - audio = np.pad(audio, (0, p), mode="constant", constant_values=0.0) - - if self.use_cache: - self.cache[idx] = audio - - if self.return_segments: - max_start = len(audio) - self.seq_len - start = random.randint(0, max_start) - end = start + self.seq_len - audio = audio[start:end] - - if self.use_noise_augment and self.is_training and self.return_segments: - audio = audio + (1 / 32768) * torch.randn_like(audio) - - mel = self.ap.melspectrogram(audio) - mel = mel[..., :-1] # ignore the padding - - audio = torch.from_numpy(audio).float() - mel = torch.from_numpy(mel).float().squeeze(0) - return (mel, audio) - - @staticmethod - def collate_full_clips(batch): - """This is used in tune_wavegrad.py. - It pads sequences to the max length.""" - max_mel_length = max([b[0].shape[1] for b in batch]) if len(batch) > 1 else batch[0][0].shape[1] - max_audio_length = max([b[1].shape[0] for b in batch]) if len(batch) > 1 else batch[0][1].shape[0] - - mels = torch.zeros([len(batch), batch[0][0].shape[0], max_mel_length]) - audios = torch.zeros([len(batch), max_audio_length]) - - for idx, b in enumerate(batch): - mel = b[0] - audio = b[1] - mels[idx, :, : mel.shape[1]] = mel - audios[idx, : audio.shape[0]] = audio - - return mels, audios diff --git a/TTS/TTS/vocoder/datasets/wavernn_dataset.py b/TTS/TTS/vocoder/datasets/wavernn_dataset.py deleted file mode 100644 index c3907964285f2a11de401e40e78e8cd4dd6a2918..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/datasets/wavernn_dataset.py +++ /dev/null @@ -1,114 +0,0 @@ -import numpy as np -import torch -from torch.utils.data import Dataset - - -class WaveRNNDataset(Dataset): - """ - WaveRNN Dataset searchs for all the wav files under root path - and converts them to acoustic features on the fly. - """ - - def __init__( - self, ap, items, seq_len, hop_len, pad, mode, mulaw, is_training=True, verbose=False, return_segments=True - ): - super().__init__() - self.ap = ap - self.compute_feat = not isinstance(items[0], (tuple, list)) - self.item_list = items - self.seq_len = seq_len - self.hop_len = hop_len - self.mel_len = seq_len // hop_len - self.pad = pad - self.mode = mode - self.mulaw = mulaw - self.is_training = is_training - self.verbose = verbose - self.return_segments = return_segments - - assert self.seq_len % self.hop_len == 0 - - def __len__(self): - return len(self.item_list) - - def __getitem__(self, index): - item = self.load_item(index) - return item - - def load_test_samples(self, num_samples): - samples = [] - return_segments = self.return_segments - self.return_segments = False - for idx in range(num_samples): - mel, audio, _ = self.load_item(idx) - samples.append([mel, audio]) - self.return_segments = return_segments - return samples - - def load_item(self, index): - """ - load (audio, feat) couple if feature_path is set - else compute it on the fly - """ - if self.compute_feat: - wavpath = self.item_list[index] - audio = self.ap.load_wav(wavpath) - if self.return_segments: - min_audio_len = 2 * self.seq_len + (2 * self.pad * self.hop_len) - else: - min_audio_len = audio.shape[0] + (2 * self.pad * self.hop_len) - if audio.shape[0] < min_audio_len: - print(" [!] Instance is too short! : {}".format(wavpath)) - audio = np.pad(audio, [0, min_audio_len - audio.shape[0] + self.hop_len]) - mel = self.ap.melspectrogram(audio) - - if self.mode in ["gauss", "mold"]: - x_input = audio - elif isinstance(self.mode, int): - x_input = ( - self.ap.mulaw_encode(audio, qc=self.mode) if self.mulaw else self.ap.quantize(audio, bits=self.mode) - ) - else: - raise RuntimeError("Unknown dataset mode - ", self.mode) - - else: - wavpath, feat_path = self.item_list[index] - mel = np.load(feat_path.replace("/quant/", "/mel/")) - - if mel.shape[-1] < self.mel_len + 2 * self.pad: - print(" [!] Instance is too short! : {}".format(wavpath)) - self.item_list[index] = self.item_list[index + 1] - feat_path = self.item_list[index] - mel = np.load(feat_path.replace("/quant/", "/mel/")) - if self.mode in ["gauss", "mold"]: - x_input = self.ap.load_wav(wavpath) - elif isinstance(self.mode, int): - x_input = np.load(feat_path.replace("/mel/", "/quant/")) - else: - raise RuntimeError("Unknown dataset mode - ", self.mode) - - return mel, x_input, wavpath - - def collate(self, batch): - mel_win = self.seq_len // self.hop_len + 2 * self.pad - max_offsets = [x[0].shape[-1] - (mel_win + 2 * self.pad) for x in batch] - - mel_offsets = [np.random.randint(0, offset) for offset in max_offsets] - sig_offsets = [(offset + self.pad) * self.hop_len for offset in mel_offsets] - - mels = [x[0][:, mel_offsets[i] : mel_offsets[i] + mel_win] for i, x in enumerate(batch)] - - coarse = [x[1][sig_offsets[i] : sig_offsets[i] + self.seq_len + 1] for i, x in enumerate(batch)] - - mels = np.stack(mels).astype(np.float32) - if self.mode in ["gauss", "mold"]: - coarse = np.stack(coarse).astype(np.float32) - coarse = torch.FloatTensor(coarse) - x_input = coarse[:, : self.seq_len] - elif isinstance(self.mode, int): - coarse = np.stack(coarse).astype(np.int64) - coarse = torch.LongTensor(coarse) - x_input = 2 * coarse[:, : self.seq_len].float() / (2**self.mode - 1.0) - 1.0 - y_coarse = coarse[:, 1:] - mels = torch.FloatTensor(mels) - return x_input, mels, y_coarse diff --git a/TTS/TTS/vocoder/layers/__init__.py b/TTS/TTS/vocoder/layers/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/vocoder/layers/hifigan.py b/TTS/TTS/vocoder/layers/hifigan.py deleted file mode 100644 index f51200724887b04746a125b7d7c368e0315ce7da..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/layers/hifigan.py +++ /dev/null @@ -1,53 +0,0 @@ -from torch import nn - - -# pylint: disable=dangerous-default-value -class ResStack(nn.Module): - def __init__(self, kernel, channel, padding, dilations=[1, 3, 5]): - super().__init__() - resstack = [] - for dilation in dilations: - resstack += [ - nn.LeakyReLU(0.2), - nn.ReflectionPad1d(dilation), - nn.utils.weight_norm(nn.Conv1d(channel, channel, kernel_size=kernel, dilation=dilation)), - nn.LeakyReLU(0.2), - nn.ReflectionPad1d(padding), - nn.utils.weight_norm(nn.Conv1d(channel, channel, kernel_size=1)), - ] - self.resstack = nn.Sequential(*resstack) - - self.shortcut = nn.utils.weight_norm(nn.Conv1d(channel, channel, kernel_size=1)) - - def forward(self, x): - x1 = self.shortcut(x) - x2 = self.resstack(x) - return x1 + x2 - - def remove_weight_norm(self): - nn.utils.remove_weight_norm(self.shortcut) - nn.utils.remove_weight_norm(self.resstack[2]) - nn.utils.remove_weight_norm(self.resstack[5]) - nn.utils.remove_weight_norm(self.resstack[8]) - nn.utils.remove_weight_norm(self.resstack[11]) - nn.utils.remove_weight_norm(self.resstack[14]) - nn.utils.remove_weight_norm(self.resstack[17]) - - -class MRF(nn.Module): - def __init__(self, kernels, channel, dilations=[1, 3, 5]): # # pylint: disable=dangerous-default-value - super().__init__() - self.resblock1 = ResStack(kernels[0], channel, 0, dilations) - self.resblock2 = ResStack(kernels[1], channel, 6, dilations) - self.resblock3 = ResStack(kernels[2], channel, 12, dilations) - - def forward(self, x): - x1 = self.resblock1(x) - x2 = self.resblock2(x) - x3 = self.resblock3(x) - return x1 + x2 + x3 - - def remove_weight_norm(self): - self.resblock1.remove_weight_norm() - self.resblock2.remove_weight_norm() - self.resblock3.remove_weight_norm() diff --git a/TTS/TTS/vocoder/layers/losses.py b/TTS/TTS/vocoder/layers/losses.py deleted file mode 100644 index befc43cca6ff3a3477cdcfbfcb0593d28f60d2c6..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/layers/losses.py +++ /dev/null @@ -1,368 +0,0 @@ -from typing import Dict, Union - -import torch -from torch import nn -from torch.nn import functional as F - -from TTS.utils.audio.torch_transforms import TorchSTFT -from TTS.vocoder.utils.distribution import discretized_mix_logistic_loss, gaussian_loss - -################################# -# GENERATOR LOSSES -################################# - - -class STFTLoss(nn.Module): - """STFT loss. Input generate and real waveforms are converted - to spectrograms compared with L1 and Spectral convergence losses. - It is from ParallelWaveGAN paper https://arxiv.org/pdf/1910.11480.pdf""" - - def __init__(self, n_fft, hop_length, win_length): - super().__init__() - self.n_fft = n_fft - self.hop_length = hop_length - self.win_length = win_length - self.stft = TorchSTFT(n_fft, hop_length, win_length) - - def forward(self, y_hat, y): - y_hat_M = self.stft(y_hat) - y_M = self.stft(y) - # magnitude loss - loss_mag = F.l1_loss(torch.log(y_M), torch.log(y_hat_M)) - # spectral convergence loss - loss_sc = torch.norm(y_M - y_hat_M, p="fro") / torch.norm(y_M, p="fro") - return loss_mag, loss_sc - - -class MultiScaleSTFTLoss(torch.nn.Module): - """Multi-scale STFT loss. Input generate and real waveforms are converted - to spectrograms compared with L1 and Spectral convergence losses. - It is from ParallelWaveGAN paper https://arxiv.org/pdf/1910.11480.pdf""" - - def __init__(self, n_ffts=(1024, 2048, 512), hop_lengths=(120, 240, 50), win_lengths=(600, 1200, 240)): - super().__init__() - self.loss_funcs = torch.nn.ModuleList() - for n_fft, hop_length, win_length in zip(n_ffts, hop_lengths, win_lengths): - self.loss_funcs.append(STFTLoss(n_fft, hop_length, win_length)) - - def forward(self, y_hat, y): - N = len(self.loss_funcs) - loss_sc = 0 - loss_mag = 0 - for f in self.loss_funcs: - lm, lsc = f(y_hat, y) - loss_mag += lm - loss_sc += lsc - loss_sc /= N - loss_mag /= N - return loss_mag, loss_sc - - -class L1SpecLoss(nn.Module): - """L1 Loss over Spectrograms as described in HiFiGAN paper https://arxiv.org/pdf/2010.05646.pdf""" - - def __init__( - self, sample_rate, n_fft, hop_length, win_length, mel_fmin=None, mel_fmax=None, n_mels=None, use_mel=True - ): - super().__init__() - self.use_mel = use_mel - self.stft = TorchSTFT( - n_fft, - hop_length, - win_length, - sample_rate=sample_rate, - mel_fmin=mel_fmin, - mel_fmax=mel_fmax, - n_mels=n_mels, - use_mel=use_mel, - ) - - def forward(self, y_hat, y): - y_hat_M = self.stft(y_hat) - y_M = self.stft(y) - # magnitude loss - loss_mag = F.l1_loss(torch.log(y_M), torch.log(y_hat_M)) - return loss_mag - - -class MultiScaleSubbandSTFTLoss(MultiScaleSTFTLoss): - """Multiscale STFT loss for multi band model outputs. - From MultiBand-MelGAN paper https://arxiv.org/abs/2005.05106""" - - # pylint: disable=no-self-use - def forward(self, y_hat, y): - y_hat = y_hat.view(-1, 1, y_hat.shape[2]) - y = y.view(-1, 1, y.shape[2]) - return super().forward(y_hat.squeeze(1), y.squeeze(1)) - - -class MSEGLoss(nn.Module): - """Mean Squared Generator Loss""" - - # pylint: disable=no-self-use - def forward(self, score_real): - loss_fake = F.mse_loss(score_real, score_real.new_ones(score_real.shape)) - return loss_fake - - -class HingeGLoss(nn.Module): - """Hinge Discriminator Loss""" - - # pylint: disable=no-self-use - def forward(self, score_real): - # TODO: this might be wrong - loss_fake = torch.mean(F.relu(1.0 - score_real)) - return loss_fake - - -################################## -# DISCRIMINATOR LOSSES -################################## - - -class MSEDLoss(nn.Module): - """Mean Squared Discriminator Loss""" - - def __init__( - self, - ): - super().__init__() - self.loss_func = nn.MSELoss() - - # pylint: disable=no-self-use - def forward(self, score_fake, score_real): - loss_real = self.loss_func(score_real, score_real.new_ones(score_real.shape)) - loss_fake = self.loss_func(score_fake, score_fake.new_zeros(score_fake.shape)) - loss_d = loss_real + loss_fake - return loss_d, loss_real, loss_fake - - -class HingeDLoss(nn.Module): - """Hinge Discriminator Loss""" - - # pylint: disable=no-self-use - def forward(self, score_fake, score_real): - loss_real = torch.mean(F.relu(1.0 - score_real)) - loss_fake = torch.mean(F.relu(1.0 + score_fake)) - loss_d = loss_real + loss_fake - return loss_d, loss_real, loss_fake - - -class MelganFeatureLoss(nn.Module): - def __init__( - self, - ): - super().__init__() - self.loss_func = nn.L1Loss() - - # pylint: disable=no-self-use - def forward(self, fake_feats, real_feats): - loss_feats = 0 - num_feats = 0 - for idx, _ in enumerate(fake_feats): - for fake_feat, real_feat in zip(fake_feats[idx], real_feats[idx]): - loss_feats += self.loss_func(fake_feat, real_feat) - num_feats += 1 - loss_feats = loss_feats / num_feats - return loss_feats - - -##################################### -# LOSS WRAPPERS -##################################### - - -def _apply_G_adv_loss(scores_fake, loss_func): - """Compute G adversarial loss function - and normalize values""" - adv_loss = 0 - if isinstance(scores_fake, list): - for score_fake in scores_fake: - fake_loss = loss_func(score_fake) - adv_loss += fake_loss - adv_loss /= len(scores_fake) - else: - fake_loss = loss_func(scores_fake) - adv_loss = fake_loss - return adv_loss - - -def _apply_D_loss(scores_fake, scores_real, loss_func): - """Compute D loss func and normalize loss values""" - loss = 0 - real_loss = 0 - fake_loss = 0 - if isinstance(scores_fake, list): - # multi-scale loss - for score_fake, score_real in zip(scores_fake, scores_real): - total_loss, real_loss, fake_loss = loss_func(score_fake=score_fake, score_real=score_real) - loss += total_loss - real_loss += real_loss - fake_loss += fake_loss - # normalize loss values with number of scales (discriminators) - loss /= len(scores_fake) - real_loss /= len(scores_real) - fake_loss /= len(scores_fake) - else: - # single scale loss - total_loss, real_loss, fake_loss = loss_func(scores_fake, scores_real) - loss = total_loss - return loss, real_loss, fake_loss - - -################################## -# MODEL LOSSES -################################## - - -class GeneratorLoss(nn.Module): - """Generator Loss Wrapper. Based on model configuration it sets a right set of loss functions and computes - losses. It allows to experiment with different combinations of loss functions with different models by just - changing configurations. - - Args: - C (AttrDict): model configuration. - """ - - def __init__(self, C): - super().__init__() - assert not ( - C.use_mse_gan_loss and C.use_hinge_gan_loss - ), " [!] Cannot use HingeGANLoss and MSEGANLoss together." - - self.use_stft_loss = C.use_stft_loss if "use_stft_loss" in C else False - self.use_subband_stft_loss = C.use_subband_stft_loss if "use_subband_stft_loss" in C else False - self.use_mse_gan_loss = C.use_mse_gan_loss if "use_mse_gan_loss" in C else False - self.use_hinge_gan_loss = C.use_hinge_gan_loss if "use_hinge_gan_loss" in C else False - self.use_feat_match_loss = C.use_feat_match_loss if "use_feat_match_loss" in C else False - self.use_l1_spec_loss = C.use_l1_spec_loss if "use_l1_spec_loss" in C else False - - self.stft_loss_weight = C.stft_loss_weight if "stft_loss_weight" in C else 0.0 - self.subband_stft_loss_weight = C.subband_stft_loss_weight if "subband_stft_loss_weight" in C else 0.0 - self.mse_gan_loss_weight = C.mse_G_loss_weight if "mse_G_loss_weight" in C else 0.0 - self.hinge_gan_loss_weight = C.hinge_G_loss_weight if "hinde_G_loss_weight" in C else 0.0 - self.feat_match_loss_weight = C.feat_match_loss_weight if "feat_match_loss_weight" in C else 0.0 - self.l1_spec_loss_weight = C.l1_spec_loss_weight if "l1_spec_loss_weight" in C else 0.0 - - if C.use_stft_loss: - self.stft_loss = MultiScaleSTFTLoss(**C.stft_loss_params) - if C.use_subband_stft_loss: - self.subband_stft_loss = MultiScaleSubbandSTFTLoss(**C.subband_stft_loss_params) - if C.use_mse_gan_loss: - self.mse_loss = MSEGLoss() - if C.use_hinge_gan_loss: - self.hinge_loss = HingeGLoss() - if C.use_feat_match_loss: - self.feat_match_loss = MelganFeatureLoss() - if C.use_l1_spec_loss: - assert C.audio["sample_rate"] == C.l1_spec_loss_params["sample_rate"] - self.l1_spec_loss = L1SpecLoss(**C.l1_spec_loss_params) - - def forward( - self, y_hat=None, y=None, scores_fake=None, feats_fake=None, feats_real=None, y_hat_sub=None, y_sub=None - ): - gen_loss = 0 - adv_loss = 0 - return_dict = {} - - # STFT Loss - if self.use_stft_loss: - stft_loss_mg, stft_loss_sc = self.stft_loss(y_hat[:, :, : y.size(2)].squeeze(1), y.squeeze(1)) - return_dict["G_stft_loss_mg"] = stft_loss_mg - return_dict["G_stft_loss_sc"] = stft_loss_sc - gen_loss = gen_loss + self.stft_loss_weight * (stft_loss_mg + stft_loss_sc) - - # L1 Spec loss - if self.use_l1_spec_loss: - l1_spec_loss = self.l1_spec_loss(y_hat, y) - return_dict["G_l1_spec_loss"] = l1_spec_loss - gen_loss = gen_loss + self.l1_spec_loss_weight * l1_spec_loss - - # subband STFT Loss - if self.use_subband_stft_loss: - subband_stft_loss_mg, subband_stft_loss_sc = self.subband_stft_loss(y_hat_sub, y_sub) - return_dict["G_subband_stft_loss_mg"] = subband_stft_loss_mg - return_dict["G_subband_stft_loss_sc"] = subband_stft_loss_sc - gen_loss = gen_loss + self.subband_stft_loss_weight * (subband_stft_loss_mg + subband_stft_loss_sc) - - # multiscale MSE adversarial loss - if self.use_mse_gan_loss and scores_fake is not None: - mse_fake_loss = _apply_G_adv_loss(scores_fake, self.mse_loss) - return_dict["G_mse_fake_loss"] = mse_fake_loss - adv_loss = adv_loss + self.mse_gan_loss_weight * mse_fake_loss - - # multiscale Hinge adversarial loss - if self.use_hinge_gan_loss and not scores_fake is not None: - hinge_fake_loss = _apply_G_adv_loss(scores_fake, self.hinge_loss) - return_dict["G_hinge_fake_loss"] = hinge_fake_loss - adv_loss = adv_loss + self.hinge_gan_loss_weight * hinge_fake_loss - - # Feature Matching Loss - if self.use_feat_match_loss and not feats_fake is None: - feat_match_loss = self.feat_match_loss(feats_fake, feats_real) - return_dict["G_feat_match_loss"] = feat_match_loss - adv_loss = adv_loss + self.feat_match_loss_weight * feat_match_loss - return_dict["loss"] = gen_loss + adv_loss - return_dict["G_gen_loss"] = gen_loss - return_dict["G_adv_loss"] = adv_loss - return return_dict - - -class DiscriminatorLoss(nn.Module): - """Like ```GeneratorLoss```""" - - def __init__(self, C): - super().__init__() - assert not ( - C.use_mse_gan_loss and C.use_hinge_gan_loss - ), " [!] Cannot use HingeGANLoss and MSEGANLoss together." - - self.use_mse_gan_loss = C.use_mse_gan_loss - self.use_hinge_gan_loss = C.use_hinge_gan_loss - - if C.use_mse_gan_loss: - self.mse_loss = MSEDLoss() - if C.use_hinge_gan_loss: - self.hinge_loss = HingeDLoss() - - def forward(self, scores_fake, scores_real): - loss = 0 - return_dict = {} - - if self.use_mse_gan_loss: - mse_D_loss, mse_D_real_loss, mse_D_fake_loss = _apply_D_loss( - scores_fake=scores_fake, scores_real=scores_real, loss_func=self.mse_loss - ) - return_dict["D_mse_gan_loss"] = mse_D_loss - return_dict["D_mse_gan_real_loss"] = mse_D_real_loss - return_dict["D_mse_gan_fake_loss"] = mse_D_fake_loss - loss += mse_D_loss - - if self.use_hinge_gan_loss: - hinge_D_loss, hinge_D_real_loss, hinge_D_fake_loss = _apply_D_loss( - scores_fake=scores_fake, scores_real=scores_real, loss_func=self.hinge_loss - ) - return_dict["D_hinge_gan_loss"] = hinge_D_loss - return_dict["D_hinge_gan_real_loss"] = hinge_D_real_loss - return_dict["D_hinge_gan_fake_loss"] = hinge_D_fake_loss - loss += hinge_D_loss - - return_dict["loss"] = loss - return return_dict - - -class WaveRNNLoss(nn.Module): - def __init__(self, wave_rnn_mode: Union[str, int]): - super().__init__() - if wave_rnn_mode == "mold": - self.loss_func = discretized_mix_logistic_loss - elif wave_rnn_mode == "gauss": - self.loss_func = gaussian_loss - elif isinstance(wave_rnn_mode, int): - self.loss_func = torch.nn.CrossEntropyLoss() - else: - raise ValueError(" [!] Unknown mode for Wavernn.") - - def forward(self, y_hat, y) -> Dict: - loss = self.loss_func(y_hat, y) - return {"loss": loss} diff --git a/TTS/TTS/vocoder/layers/lvc_block.py b/TTS/TTS/vocoder/layers/lvc_block.py deleted file mode 100644 index 8913a1132ec769fd304077412289c01c0d1cb17b..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/layers/lvc_block.py +++ /dev/null @@ -1,198 +0,0 @@ -import torch -import torch.nn.functional as F - - -class KernelPredictor(torch.nn.Module): - """Kernel predictor for the location-variable convolutions""" - - def __init__( # pylint: disable=dangerous-default-value - self, - cond_channels, - conv_in_channels, - conv_out_channels, - conv_layers, - conv_kernel_size=3, - kpnet_hidden_channels=64, - kpnet_conv_size=3, - kpnet_dropout=0.0, - kpnet_nonlinear_activation="LeakyReLU", - kpnet_nonlinear_activation_params={"negative_slope": 0.1}, - ): - """ - Args: - cond_channels (int): number of channel for the conditioning sequence, - conv_in_channels (int): number of channel for the input sequence, - conv_out_channels (int): number of channel for the output sequence, - conv_layers (int): - kpnet_ - """ - super().__init__() - - self.conv_in_channels = conv_in_channels - self.conv_out_channels = conv_out_channels - self.conv_kernel_size = conv_kernel_size - self.conv_layers = conv_layers - - l_w = conv_in_channels * conv_out_channels * conv_kernel_size * conv_layers - l_b = conv_out_channels * conv_layers - - padding = (kpnet_conv_size - 1) // 2 - self.input_conv = torch.nn.Sequential( - torch.nn.Conv1d(cond_channels, kpnet_hidden_channels, 5, padding=(5 - 1) // 2, bias=True), - getattr(torch.nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - ) - - self.residual_conv = torch.nn.Sequential( - torch.nn.Dropout(kpnet_dropout), - torch.nn.Conv1d(kpnet_hidden_channels, kpnet_hidden_channels, kpnet_conv_size, padding=padding, bias=True), - getattr(torch.nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - torch.nn.Conv1d(kpnet_hidden_channels, kpnet_hidden_channels, kpnet_conv_size, padding=padding, bias=True), - getattr(torch.nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - torch.nn.Dropout(kpnet_dropout), - torch.nn.Conv1d(kpnet_hidden_channels, kpnet_hidden_channels, kpnet_conv_size, padding=padding, bias=True), - getattr(torch.nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - torch.nn.Conv1d(kpnet_hidden_channels, kpnet_hidden_channels, kpnet_conv_size, padding=padding, bias=True), - getattr(torch.nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - torch.nn.Dropout(kpnet_dropout), - torch.nn.Conv1d(kpnet_hidden_channels, kpnet_hidden_channels, kpnet_conv_size, padding=padding, bias=True), - getattr(torch.nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - torch.nn.Conv1d(kpnet_hidden_channels, kpnet_hidden_channels, kpnet_conv_size, padding=padding, bias=True), - getattr(torch.nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - ) - - self.kernel_conv = torch.nn.Conv1d(kpnet_hidden_channels, l_w, kpnet_conv_size, padding=padding, bias=True) - self.bias_conv = torch.nn.Conv1d(kpnet_hidden_channels, l_b, kpnet_conv_size, padding=padding, bias=True) - - def forward(self, c): - """ - Args: - c (Tensor): the conditioning sequence (batch, cond_channels, cond_length) - Returns: - """ - batch, _, cond_length = c.shape - - c = self.input_conv(c) - c = c + self.residual_conv(c) - k = self.kernel_conv(c) - b = self.bias_conv(c) - - kernels = k.contiguous().view( - batch, self.conv_layers, self.conv_in_channels, self.conv_out_channels, self.conv_kernel_size, cond_length - ) - bias = b.contiguous().view(batch, self.conv_layers, self.conv_out_channels, cond_length) - return kernels, bias - - -class LVCBlock(torch.nn.Module): - """the location-variable convolutions""" - - def __init__( - self, - in_channels, - cond_channels, - upsample_ratio, - conv_layers=4, - conv_kernel_size=3, - cond_hop_length=256, - kpnet_hidden_channels=64, - kpnet_conv_size=3, - kpnet_dropout=0.0, - ): - super().__init__() - - self.cond_hop_length = cond_hop_length - self.conv_layers = conv_layers - self.conv_kernel_size = conv_kernel_size - self.convs = torch.nn.ModuleList() - - self.upsample = torch.nn.ConvTranspose1d( - in_channels, - in_channels, - kernel_size=upsample_ratio * 2, - stride=upsample_ratio, - padding=upsample_ratio // 2 + upsample_ratio % 2, - output_padding=upsample_ratio % 2, - ) - - self.kernel_predictor = KernelPredictor( - cond_channels=cond_channels, - conv_in_channels=in_channels, - conv_out_channels=2 * in_channels, - conv_layers=conv_layers, - conv_kernel_size=conv_kernel_size, - kpnet_hidden_channels=kpnet_hidden_channels, - kpnet_conv_size=kpnet_conv_size, - kpnet_dropout=kpnet_dropout, - ) - - for i in range(conv_layers): - padding = (3**i) * int((conv_kernel_size - 1) / 2) - conv = torch.nn.Conv1d( - in_channels, in_channels, kernel_size=conv_kernel_size, padding=padding, dilation=3**i - ) - - self.convs.append(conv) - - def forward(self, x, c): - """forward propagation of the location-variable convolutions. - Args: - x (Tensor): the input sequence (batch, in_channels, in_length) - c (Tensor): the conditioning sequence (batch, cond_channels, cond_length) - - Returns: - Tensor: the output sequence (batch, in_channels, in_length) - """ - in_channels = x.shape[1] - kernels, bias = self.kernel_predictor(c) - - x = F.leaky_relu(x, 0.2) - x = self.upsample(x) - - for i in range(self.conv_layers): - y = F.leaky_relu(x, 0.2) - y = self.convs[i](y) - y = F.leaky_relu(y, 0.2) - - k = kernels[:, i, :, :, :, :] - b = bias[:, i, :, :] - y = self.location_variable_convolution(y, k, b, 1, self.cond_hop_length) - x = x + torch.sigmoid(y[:, :in_channels, :]) * torch.tanh(y[:, in_channels:, :]) - return x - - @staticmethod - def location_variable_convolution(x, kernel, bias, dilation, hop_size): - """perform location-variable convolution operation on the input sequence (x) using the local convolution kernl. - Time: 414 μs ± 309 ns per loop (mean ± std. dev. of 7 runs, 1000 loops each), test on NVIDIA V100. - Args: - x (Tensor): the input sequence (batch, in_channels, in_length). - kernel (Tensor): the local convolution kernel (batch, in_channel, out_channels, kernel_size, kernel_length) - bias (Tensor): the bias for the local convolution (batch, out_channels, kernel_length) - dilation (int): the dilation of convolution. - hop_size (int): the hop_size of the conditioning sequence. - Returns: - (Tensor): the output sequence after performing local convolution. (batch, out_channels, in_length). - """ - batch, _, in_length = x.shape - batch, _, out_channels, kernel_size, kernel_length = kernel.shape - - assert in_length == ( - kernel_length * hop_size - ), f"length of (x, kernel) is not matched, {in_length} vs {kernel_length * hop_size}" - - padding = dilation * int((kernel_size - 1) / 2) - x = F.pad(x, (padding, padding), "constant", 0) # (batch, in_channels, in_length + 2*padding) - x = x.unfold(2, hop_size + 2 * padding, hop_size) # (batch, in_channels, kernel_length, hop_size + 2*padding) - - if hop_size < dilation: - x = F.pad(x, (0, dilation), "constant", 0) - x = x.unfold( - 3, dilation, dilation - ) # (batch, in_channels, kernel_length, (hop_size + 2*padding)/dilation, dilation) - x = x[:, :, :, :, :hop_size] - x = x.transpose(3, 4) # (batch, in_channels, kernel_length, dilation, (hop_size + 2*padding)/dilation) - x = x.unfold(4, kernel_size, 1) # (batch, in_channels, kernel_length, dilation, _, kernel_size) - - o = torch.einsum("bildsk,biokl->bolsd", x, kernel) - o = o + bias.unsqueeze(-1).unsqueeze(-1) - o = o.contiguous().view(batch, out_channels, -1) - return o diff --git a/TTS/TTS/vocoder/layers/melgan.py b/TTS/TTS/vocoder/layers/melgan.py deleted file mode 100644 index 4bb328e98354dc0683b3c5b4f4160dd54d92fabd..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/layers/melgan.py +++ /dev/null @@ -1,42 +0,0 @@ -from torch import nn -from torch.nn.utils import weight_norm - - -class ResidualStack(nn.Module): - def __init__(self, channels, num_res_blocks, kernel_size): - super().__init__() - - assert (kernel_size - 1) % 2 == 0, " [!] kernel_size has to be odd." - base_padding = (kernel_size - 1) // 2 - - self.blocks = nn.ModuleList() - for idx in range(num_res_blocks): - layer_kernel_size = kernel_size - layer_dilation = layer_kernel_size**idx - layer_padding = base_padding * layer_dilation - self.blocks += [ - nn.Sequential( - nn.LeakyReLU(0.2), - nn.ReflectionPad1d(layer_padding), - weight_norm( - nn.Conv1d(channels, channels, kernel_size=kernel_size, dilation=layer_dilation, bias=True) - ), - nn.LeakyReLU(0.2), - weight_norm(nn.Conv1d(channels, channels, kernel_size=1, bias=True)), - ) - ] - - self.shortcuts = nn.ModuleList( - [weight_norm(nn.Conv1d(channels, channels, kernel_size=1, bias=True)) for i in range(num_res_blocks)] - ) - - def forward(self, x): - for block, shortcut in zip(self.blocks, self.shortcuts): - x = shortcut(x) + block(x) - return x - - def remove_weight_norm(self): - for block, shortcut in zip(self.blocks, self.shortcuts): - nn.utils.remove_weight_norm(block[2]) - nn.utils.remove_weight_norm(block[4]) - nn.utils.remove_weight_norm(shortcut) diff --git a/TTS/TTS/vocoder/layers/parallel_wavegan.py b/TTS/TTS/vocoder/layers/parallel_wavegan.py deleted file mode 100644 index 51142e5eceb20564585635a9040a24bc8eb3b6e3..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/layers/parallel_wavegan.py +++ /dev/null @@ -1,77 +0,0 @@ -import torch -from torch.nn import functional as F - - -class ResidualBlock(torch.nn.Module): - """Residual block module in WaveNet.""" - - def __init__( - self, - kernel_size=3, - res_channels=64, - gate_channels=128, - skip_channels=64, - aux_channels=80, - dropout=0.0, - dilation=1, - bias=True, - use_causal_conv=False, - ): - super().__init__() - self.dropout = dropout - # no future time stamps available - if use_causal_conv: - padding = (kernel_size - 1) * dilation - else: - assert (kernel_size - 1) % 2 == 0, "Not support even number kernel size." - padding = (kernel_size - 1) // 2 * dilation - self.use_causal_conv = use_causal_conv - - # dilation conv - self.conv = torch.nn.Conv1d( - res_channels, gate_channels, kernel_size, padding=padding, dilation=dilation, bias=bias - ) - - # local conditioning - if aux_channels > 0: - self.conv1x1_aux = torch.nn.Conv1d(aux_channels, gate_channels, 1, bias=False) - else: - self.conv1x1_aux = None - - # conv output is split into two groups - gate_out_channels = gate_channels // 2 - self.conv1x1_out = torch.nn.Conv1d(gate_out_channels, res_channels, 1, bias=bias) - self.conv1x1_skip = torch.nn.Conv1d(gate_out_channels, skip_channels, 1, bias=bias) - - def forward(self, x, c): - """ - x: B x D_res x T - c: B x D_aux x T - """ - residual = x - x = F.dropout(x, p=self.dropout, training=self.training) - x = self.conv(x) - - # remove future time steps if use_causal_conv conv - x = x[:, :, : residual.size(-1)] if self.use_causal_conv else x - - # split into two part for gated activation - splitdim = 1 - xa, xb = x.split(x.size(splitdim) // 2, dim=splitdim) - - # local conditioning - if c is not None: - assert self.conv1x1_aux is not None - c = self.conv1x1_aux(c) - ca, cb = c.split(c.size(splitdim) // 2, dim=splitdim) - xa, xb = xa + ca, xb + cb - - x = torch.tanh(xa) * torch.sigmoid(xb) - - # for skip connection - s = self.conv1x1_skip(x) - - # for residual connection - x = (self.conv1x1_out(x) + residual) * (0.5**2) - - return x, s diff --git a/TTS/TTS/vocoder/layers/pqmf.py b/TTS/TTS/vocoder/layers/pqmf.py deleted file mode 100644 index 6253efbbefc32222464a97bee99707d46bcdcf8b..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/layers/pqmf.py +++ /dev/null @@ -1,53 +0,0 @@ -import numpy as np -import torch -import torch.nn.functional as F -from scipy import signal as sig - - -# adapted from -# https://github.com/kan-bayashi/ParallelWaveGAN/tree/master/parallel_wavegan -class PQMF(torch.nn.Module): - def __init__(self, N=4, taps=62, cutoff=0.15, beta=9.0): - super().__init__() - - self.N = N - self.taps = taps - self.cutoff = cutoff - self.beta = beta - - QMF = sig.firwin(taps + 1, cutoff, window=("kaiser", beta)) - H = np.zeros((N, len(QMF))) - G = np.zeros((N, len(QMF))) - for k in range(N): - constant_factor = ( - (2 * k + 1) * (np.pi / (2 * N)) * (np.arange(taps + 1) - ((taps - 1) / 2)) - ) # TODO: (taps - 1) -> taps - phase = (-1) ** k * np.pi / 4 - H[k] = 2 * QMF * np.cos(constant_factor + phase) - - G[k] = 2 * QMF * np.cos(constant_factor - phase) - - H = torch.from_numpy(H[:, None, :]).float() - G = torch.from_numpy(G[None, :, :]).float() - - self.register_buffer("H", H) - self.register_buffer("G", G) - - updown_filter = torch.zeros((N, N, N)).float() - for k in range(N): - updown_filter[k, k, 0] = 1.0 - self.register_buffer("updown_filter", updown_filter) - self.N = N - - self.pad_fn = torch.nn.ConstantPad1d(taps // 2, 0.0) - - def forward(self, x): - return self.analysis(x) - - def analysis(self, x): - return F.conv1d(x, self.H, padding=self.taps // 2, stride=self.N) - - def synthesis(self, x): - x = F.conv_transpose1d(x, self.updown_filter * self.N, stride=self.N) - x = F.conv1d(x, self.G, padding=self.taps // 2) - return x diff --git a/TTS/TTS/vocoder/layers/qmf.dat b/TTS/TTS/vocoder/layers/qmf.dat deleted file mode 100644 index 4793abbfb3c67b88fed43f262c28f6fc2f26e5ca..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/layers/qmf.dat +++ /dev/null @@ -1,640 +0,0 @@ - 0.0000000e+000 - -5.5252865e-004 - -5.6176926e-004 - -4.9475181e-004 - -4.8752280e-004 - -4.8937912e-004 - -5.0407143e-004 - -5.2265643e-004 - -5.4665656e-004 - -5.6778026e-004 - -5.8709305e-004 - -6.1327474e-004 - -6.3124935e-004 - -6.5403334e-004 - -6.7776908e-004 - -6.9416146e-004 - -7.1577365e-004 - -7.2550431e-004 - -7.4409419e-004 - -7.4905981e-004 - -7.6813719e-004 - -7.7248486e-004 - -7.8343323e-004 - -7.7798695e-004 - -7.8036647e-004 - -7.8014496e-004 - -7.7579773e-004 - -7.6307936e-004 - -7.5300014e-004 - -7.3193572e-004 - -7.2153920e-004 - -6.9179375e-004 - -6.6504151e-004 - -6.3415949e-004 - -5.9461189e-004 - -5.5645764e-004 - -5.1455722e-004 - -4.6063255e-004 - -4.0951215e-004 - -3.5011759e-004 - -2.8969812e-004 - -2.0983373e-004 - -1.4463809e-004 - -6.1733441e-005 - 1.3494974e-005 - 1.0943831e-004 - 2.0430171e-004 - 2.9495311e-004 - 4.0265402e-004 - 5.1073885e-004 - 6.2393761e-004 - 7.4580259e-004 - 8.6084433e-004 - 9.8859883e-004 - 1.1250155e-003 - 1.2577885e-003 - 1.3902495e-003 - 1.5443220e-003 - 1.6868083e-003 - 1.8348265e-003 - 1.9841141e-003 - 2.1461584e-003 - 2.3017255e-003 - 2.4625617e-003 - 2.6201759e-003 - 2.7870464e-003 - 2.9469448e-003 - 3.1125421e-003 - 3.2739613e-003 - 3.4418874e-003 - 3.6008268e-003 - 3.7603923e-003 - 3.9207432e-003 - 4.0819753e-003 - 4.2264269e-003 - 4.3730720e-003 - 4.5209853e-003 - 4.6606461e-003 - 4.7932561e-003 - 4.9137604e-003 - 5.0393023e-003 - 5.1407354e-003 - 5.2461166e-003 - 5.3471681e-003 - 5.4196776e-003 - 5.4876040e-003 - 5.5475715e-003 - 5.5938023e-003 - 5.6220643e-003 - 5.6455197e-003 - 5.6389200e-003 - 5.6266114e-003 - 5.5917129e-003 - 5.5404364e-003 - 5.4753783e-003 - 5.3838976e-003 - 5.2715759e-003 - 5.1382275e-003 - 4.9839688e-003 - 4.8109469e-003 - 4.6039530e-003 - 4.3801862e-003 - 4.1251642e-003 - 3.8456408e-003 - 3.5401247e-003 - 3.2091886e-003 - 2.8446758e-003 - 2.4508540e-003 - 2.0274176e-003 - 1.5784683e-003 - 1.0902329e-003 - 5.8322642e-004 - 2.7604519e-005 - -5.4642809e-004 - -1.1568136e-003 - -1.8039473e-003 - -2.4826724e-003 - -3.1933778e-003 - -3.9401124e-003 - -4.7222596e-003 - -5.5337211e-003 - -6.3792293e-003 - -7.2615817e-003 - -8.1798233e-003 - -9.1325330e-003 - -1.0115022e-002 - -1.1131555e-002 - -1.2185000e-002 - -1.3271822e-002 - -1.4390467e-002 - -1.5540555e-002 - -1.6732471e-002 - -1.7943338e-002 - -1.9187243e-002 - -2.0453179e-002 - -2.1746755e-002 - -2.3068017e-002 - -2.4416099e-002 - -2.5787585e-002 - -2.7185943e-002 - -2.8607217e-002 - -3.0050266e-002 - -3.1501761e-002 - -3.2975408e-002 - -3.4462095e-002 - -3.5969756e-002 - -3.7481285e-002 - -3.9005368e-002 - -4.0534917e-002 - -4.2064909e-002 - -4.3609754e-002 - -4.5148841e-002 - -4.6684303e-002 - -4.8216572e-002 - -4.9738576e-002 - -5.1255616e-002 - -5.2763075e-002 - -5.4245277e-002 - -5.5717365e-002 - -5.7161645e-002 - -5.8591568e-002 - -5.9983748e-002 - -6.1345517e-002 - -6.2685781e-002 - -6.3971590e-002 - -6.5224711e-002 - -6.6436751e-002 - -6.7607599e-002 - -6.8704383e-002 - -6.9763024e-002 - -7.0762871e-002 - -7.1700267e-002 - -7.2568258e-002 - -7.3362026e-002 - -7.4100364e-002 - -7.4745256e-002 - -7.5313734e-002 - -7.5800836e-002 - -7.6199248e-002 - -7.6499217e-002 - -7.6709349e-002 - -7.6817398e-002 - -7.6823001e-002 - -7.6720492e-002 - -7.6505072e-002 - -7.6174832e-002 - -7.5730576e-002 - -7.5157626e-002 - -7.4466439e-002 - -7.3640601e-002 - -7.2677464e-002 - -7.1582636e-002 - -7.0353307e-002 - -6.8966401e-002 - -6.7452502e-002 - -6.5769067e-002 - -6.3944481e-002 - -6.1960278e-002 - -5.9816657e-002 - -5.7515269e-002 - -5.5046003e-002 - -5.2409382e-002 - -4.9597868e-002 - -4.6630331e-002 - -4.3476878e-002 - -4.0145828e-002 - -3.6641812e-002 - -3.2958393e-002 - -2.9082401e-002 - -2.5030756e-002 - -2.0799707e-002 - -1.6370126e-002 - -1.1762383e-002 - -6.9636862e-003 - -1.9765601e-003 - 3.2086897e-003 - 8.5711749e-003 - 1.4128883e-002 - 1.9883413e-002 - 2.5822729e-002 - 3.1953127e-002 - 3.8277657e-002 - 4.4780682e-002 - 5.1480418e-002 - 5.8370533e-002 - 6.5440985e-002 - 7.2694330e-002 - 8.0137293e-002 - 8.7754754e-002 - 9.5553335e-002 - 1.0353295e-001 - 1.1168269e-001 - 1.2000780e-001 - 1.2850029e-001 - 1.3715518e-001 - 1.4597665e-001 - 1.5496071e-001 - 1.6409589e-001 - 1.7338082e-001 - 1.8281725e-001 - 1.9239667e-001 - 2.0212502e-001 - 2.1197359e-001 - 2.2196527e-001 - 2.3206909e-001 - 2.4230169e-001 - 2.5264803e-001 - 2.6310533e-001 - 2.7366340e-001 - 2.8432142e-001 - 2.9507167e-001 - 3.0590986e-001 - 3.1682789e-001 - 3.2781137e-001 - 3.3887227e-001 - 3.4999141e-001 - 3.6115899e-001 - 3.7237955e-001 - 3.8363500e-001 - 3.9492118e-001 - 4.0623177e-001 - 4.1756969e-001 - 4.2891199e-001 - 4.4025538e-001 - 4.5159965e-001 - 4.6293081e-001 - 4.7424532e-001 - 4.8552531e-001 - 4.9677083e-001 - 5.0798175e-001 - 5.1912350e-001 - 5.3022409e-001 - 5.4125534e-001 - 5.5220513e-001 - 5.6307891e-001 - 5.7385241e-001 - 5.8454032e-001 - 5.9511231e-001 - 6.0557835e-001 - 6.1591099e-001 - 6.2612427e-001 - 6.3619801e-001 - 6.4612697e-001 - 6.5590163e-001 - 6.6551399e-001 - 6.7496632e-001 - 6.8423533e-001 - 6.9332824e-001 - 7.0223887e-001 - 7.1094104e-001 - 7.1944626e-001 - 7.2774489e-001 - 7.3582118e-001 - 7.4368279e-001 - 7.5131375e-001 - 7.5870808e-001 - 7.6586749e-001 - 7.7277809e-001 - 7.7942875e-001 - 7.8583531e-001 - 7.9197358e-001 - 7.9784664e-001 - 8.0344858e-001 - 8.0876950e-001 - 8.1381913e-001 - 8.1857760e-001 - 8.2304199e-001 - 8.2722753e-001 - 8.3110385e-001 - 8.3469374e-001 - 8.3797173e-001 - 8.4095414e-001 - 8.4362383e-001 - 8.4598185e-001 - 8.4803158e-001 - 8.4978052e-001 - 8.5119715e-001 - 8.5230470e-001 - 8.5310209e-001 - 8.5357206e-001 - 8.5373856e-001 - 8.5357206e-001 - 8.5310209e-001 - 8.5230470e-001 - 8.5119715e-001 - 8.4978052e-001 - 8.4803158e-001 - 8.4598185e-001 - 8.4362383e-001 - 8.4095414e-001 - 8.3797173e-001 - 8.3469374e-001 - 8.3110385e-001 - 8.2722753e-001 - 8.2304199e-001 - 8.1857760e-001 - 8.1381913e-001 - 8.0876950e-001 - 8.0344858e-001 - 7.9784664e-001 - 7.9197358e-001 - 7.8583531e-001 - 7.7942875e-001 - 7.7277809e-001 - 7.6586749e-001 - 7.5870808e-001 - 7.5131375e-001 - 7.4368279e-001 - 7.3582118e-001 - 7.2774489e-001 - 7.1944626e-001 - 7.1094104e-001 - 7.0223887e-001 - 6.9332824e-001 - 6.8423533e-001 - 6.7496632e-001 - 6.6551399e-001 - 6.5590163e-001 - 6.4612697e-001 - 6.3619801e-001 - 6.2612427e-001 - 6.1591099e-001 - 6.0557835e-001 - 5.9511231e-001 - 5.8454032e-001 - 5.7385241e-001 - 5.6307891e-001 - 5.5220513e-001 - 5.4125534e-001 - 5.3022409e-001 - 5.1912350e-001 - 5.0798175e-001 - 4.9677083e-001 - 4.8552531e-001 - 4.7424532e-001 - 4.6293081e-001 - 4.5159965e-001 - 4.4025538e-001 - 4.2891199e-001 - 4.1756969e-001 - 4.0623177e-001 - 3.9492118e-001 - 3.8363500e-001 - 3.7237955e-001 - 3.6115899e-001 - 3.4999141e-001 - 3.3887227e-001 - 3.2781137e-001 - 3.1682789e-001 - 3.0590986e-001 - 2.9507167e-001 - 2.8432142e-001 - 2.7366340e-001 - 2.6310533e-001 - 2.5264803e-001 - 2.4230169e-001 - 2.3206909e-001 - 2.2196527e-001 - 2.1197359e-001 - 2.0212502e-001 - 1.9239667e-001 - 1.8281725e-001 - 1.7338082e-001 - 1.6409589e-001 - 1.5496071e-001 - 1.4597665e-001 - 1.3715518e-001 - 1.2850029e-001 - 1.2000780e-001 - 1.1168269e-001 - 1.0353295e-001 - 9.5553335e-002 - 8.7754754e-002 - 8.0137293e-002 - 7.2694330e-002 - 6.5440985e-002 - 5.8370533e-002 - 5.1480418e-002 - 4.4780682e-002 - 3.8277657e-002 - 3.1953127e-002 - 2.5822729e-002 - 1.9883413e-002 - 1.4128883e-002 - 8.5711749e-003 - 3.2086897e-003 - -1.9765601e-003 - -6.9636862e-003 - -1.1762383e-002 - -1.6370126e-002 - -2.0799707e-002 - -2.5030756e-002 - -2.9082401e-002 - -3.2958393e-002 - -3.6641812e-002 - -4.0145828e-002 - -4.3476878e-002 - -4.6630331e-002 - -4.9597868e-002 - -5.2409382e-002 - -5.5046003e-002 - -5.7515269e-002 - -5.9816657e-002 - -6.1960278e-002 - -6.3944481e-002 - -6.5769067e-002 - -6.7452502e-002 - -6.8966401e-002 - -7.0353307e-002 - -7.1582636e-002 - -7.2677464e-002 - -7.3640601e-002 - -7.4466439e-002 - -7.5157626e-002 - -7.5730576e-002 - -7.6174832e-002 - -7.6505072e-002 - -7.6720492e-002 - -7.6823001e-002 - -7.6817398e-002 - -7.6709349e-002 - -7.6499217e-002 - -7.6199248e-002 - -7.5800836e-002 - -7.5313734e-002 - -7.4745256e-002 - -7.4100364e-002 - -7.3362026e-002 - -7.2568258e-002 - -7.1700267e-002 - -7.0762871e-002 - -6.9763024e-002 - -6.8704383e-002 - -6.7607599e-002 - -6.6436751e-002 - -6.5224711e-002 - -6.3971590e-002 - -6.2685781e-002 - -6.1345517e-002 - -5.9983748e-002 - -5.8591568e-002 - -5.7161645e-002 - -5.5717365e-002 - -5.4245277e-002 - -5.2763075e-002 - -5.1255616e-002 - -4.9738576e-002 - -4.8216572e-002 - -4.6684303e-002 - -4.5148841e-002 - -4.3609754e-002 - -4.2064909e-002 - -4.0534917e-002 - -3.9005368e-002 - -3.7481285e-002 - -3.5969756e-002 - -3.4462095e-002 - -3.2975408e-002 - -3.1501761e-002 - -3.0050266e-002 - -2.8607217e-002 - -2.7185943e-002 - -2.5787585e-002 - -2.4416099e-002 - -2.3068017e-002 - -2.1746755e-002 - -2.0453179e-002 - -1.9187243e-002 - -1.7943338e-002 - -1.6732471e-002 - -1.5540555e-002 - -1.4390467e-002 - -1.3271822e-002 - -1.2185000e-002 - -1.1131555e-002 - -1.0115022e-002 - -9.1325330e-003 - -8.1798233e-003 - -7.2615817e-003 - -6.3792293e-003 - -5.5337211e-003 - -4.7222596e-003 - -3.9401124e-003 - -3.1933778e-003 - -2.4826724e-003 - -1.8039473e-003 - -1.1568136e-003 - -5.4642809e-004 - 2.7604519e-005 - 5.8322642e-004 - 1.0902329e-003 - 1.5784683e-003 - 2.0274176e-003 - 2.4508540e-003 - 2.8446758e-003 - 3.2091886e-003 - 3.5401247e-003 - 3.8456408e-003 - 4.1251642e-003 - 4.3801862e-003 - 4.6039530e-003 - 4.8109469e-003 - 4.9839688e-003 - 5.1382275e-003 - 5.2715759e-003 - 5.3838976e-003 - 5.4753783e-003 - 5.5404364e-003 - 5.5917129e-003 - 5.6266114e-003 - 5.6389200e-003 - 5.6455197e-003 - 5.6220643e-003 - 5.5938023e-003 - 5.5475715e-003 - 5.4876040e-003 - 5.4196776e-003 - 5.3471681e-003 - 5.2461166e-003 - 5.1407354e-003 - 5.0393023e-003 - 4.9137604e-003 - 4.7932561e-003 - 4.6606461e-003 - 4.5209853e-003 - 4.3730720e-003 - 4.2264269e-003 - 4.0819753e-003 - 3.9207432e-003 - 3.7603923e-003 - 3.6008268e-003 - 3.4418874e-003 - 3.2739613e-003 - 3.1125421e-003 - 2.9469448e-003 - 2.7870464e-003 - 2.6201759e-003 - 2.4625617e-003 - 2.3017255e-003 - 2.1461584e-003 - 1.9841141e-003 - 1.8348265e-003 - 1.6868083e-003 - 1.5443220e-003 - 1.3902495e-003 - 1.2577885e-003 - 1.1250155e-003 - 9.8859883e-004 - 8.6084433e-004 - 7.4580259e-004 - 6.2393761e-004 - 5.1073885e-004 - 4.0265402e-004 - 2.9495311e-004 - 2.0430171e-004 - 1.0943831e-004 - 1.3494974e-005 - -6.1733441e-005 - -1.4463809e-004 - -2.0983373e-004 - -2.8969812e-004 - -3.5011759e-004 - -4.0951215e-004 - -4.6063255e-004 - -5.1455722e-004 - -5.5645764e-004 - -5.9461189e-004 - -6.3415949e-004 - -6.6504151e-004 - -6.9179375e-004 - -7.2153920e-004 - -7.3193572e-004 - -7.5300014e-004 - -7.6307936e-004 - -7.7579773e-004 - -7.8014496e-004 - -7.8036647e-004 - -7.7798695e-004 - -7.8343323e-004 - -7.7248486e-004 - -7.6813719e-004 - -7.4905981e-004 - -7.4409419e-004 - -7.2550431e-004 - -7.1577365e-004 - -6.9416146e-004 - -6.7776908e-004 - -6.5403334e-004 - -6.3124935e-004 - -6.1327474e-004 - -5.8709305e-004 - -5.6778026e-004 - -5.4665656e-004 - -5.2265643e-004 - -5.0407143e-004 - -4.8937912e-004 - -4.8752280e-004 - -4.9475181e-004 - -5.6176926e-004 - -5.5252865e-004 diff --git a/TTS/TTS/vocoder/layers/upsample.py b/TTS/TTS/vocoder/layers/upsample.py deleted file mode 100644 index e169db00b2749493e1cec07ee51c93178dada118..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/layers/upsample.py +++ /dev/null @@ -1,102 +0,0 @@ -import torch -from torch.nn import functional as F - - -class Stretch2d(torch.nn.Module): - def __init__(self, x_scale, y_scale, mode="nearest"): - super().__init__() - self.x_scale = x_scale - self.y_scale = y_scale - self.mode = mode - - def forward(self, x): - """ - x (Tensor): Input tensor (B, C, F, T). - Tensor: Interpolated tensor (B, C, F * y_scale, T * x_scale), - """ - return F.interpolate(x, scale_factor=(self.y_scale, self.x_scale), mode=self.mode) - - -class UpsampleNetwork(torch.nn.Module): - # pylint: disable=dangerous-default-value - def __init__( - self, - upsample_factors, - nonlinear_activation=None, - nonlinear_activation_params={}, - interpolate_mode="nearest", - freq_axis_kernel_size=1, - use_causal_conv=False, - ): - super().__init__() - self.use_causal_conv = use_causal_conv - self.up_layers = torch.nn.ModuleList() - for scale in upsample_factors: - # interpolation layer - stretch = Stretch2d(scale, 1, interpolate_mode) - self.up_layers += [stretch] - - # conv layer - assert (freq_axis_kernel_size - 1) % 2 == 0, "Not support even number freq axis kernel size." - freq_axis_padding = (freq_axis_kernel_size - 1) // 2 - kernel_size = (freq_axis_kernel_size, scale * 2 + 1) - if use_causal_conv: - padding = (freq_axis_padding, scale * 2) - else: - padding = (freq_axis_padding, scale) - conv = torch.nn.Conv2d(1, 1, kernel_size=kernel_size, padding=padding, bias=False) - self.up_layers += [conv] - - # nonlinear - if nonlinear_activation is not None: - nonlinear = getattr(torch.nn, nonlinear_activation)(**nonlinear_activation_params) - self.up_layers += [nonlinear] - - def forward(self, c): - """ - c : (B, C, T_in). - Tensor: (B, C, T_upsample) - """ - c = c.unsqueeze(1) # (B, 1, C, T) - for f in self.up_layers: - c = f(c) - return c.squeeze(1) # (B, C, T') - - -class ConvUpsample(torch.nn.Module): - # pylint: disable=dangerous-default-value - def __init__( - self, - upsample_factors, - nonlinear_activation=None, - nonlinear_activation_params={}, - interpolate_mode="nearest", - freq_axis_kernel_size=1, - aux_channels=80, - aux_context_window=0, - use_causal_conv=False, - ): - super().__init__() - self.aux_context_window = aux_context_window - self.use_causal_conv = use_causal_conv and aux_context_window > 0 - # To capture wide-context information in conditional features - kernel_size = aux_context_window + 1 if use_causal_conv else 2 * aux_context_window + 1 - # NOTE(kan-bayashi): Here do not use padding because the input is already padded - self.conv_in = torch.nn.Conv1d(aux_channels, aux_channels, kernel_size=kernel_size, bias=False) - self.upsample = UpsampleNetwork( - upsample_factors=upsample_factors, - nonlinear_activation=nonlinear_activation, - nonlinear_activation_params=nonlinear_activation_params, - interpolate_mode=interpolate_mode, - freq_axis_kernel_size=freq_axis_kernel_size, - use_causal_conv=use_causal_conv, - ) - - def forward(self, c): - """ - c : (B, C, T_in). - Tensor: (B, C, T_upsampled), - """ - c_ = self.conv_in(c) - c = c_[:, :, : -self.aux_context_window] if self.use_causal_conv else c_ - return self.upsample(c) diff --git a/TTS/TTS/vocoder/layers/wavegrad.py b/TTS/TTS/vocoder/layers/wavegrad.py deleted file mode 100644 index 24b905f994b69075fc5e46249ce0c7719fe4b174..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/layers/wavegrad.py +++ /dev/null @@ -1,165 +0,0 @@ -import torch -import torch.nn.functional as F -from torch import nn -from torch.nn.utils import weight_norm - - -class Conv1d(nn.Conv1d): - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - nn.init.orthogonal_(self.weight) - nn.init.zeros_(self.bias) - - -class PositionalEncoding(nn.Module): - """Positional encoding with noise level conditioning""" - - def __init__(self, n_channels, max_len=10000): - super().__init__() - self.n_channels = n_channels - self.max_len = max_len - self.C = 5000 - self.pe = torch.zeros(0, 0) - - def forward(self, x, noise_level): - if x.shape[2] > self.pe.shape[1]: - self.init_pe_matrix(x.shape[1], x.shape[2], x) - return x + noise_level[..., None, None] + self.pe[:, : x.size(2)].repeat(x.shape[0], 1, 1) / self.C - - def init_pe_matrix(self, n_channels, max_len, x): - pe = torch.zeros(max_len, n_channels) - position = torch.arange(0, max_len, dtype=torch.float).unsqueeze(1) - div_term = torch.pow(10000, torch.arange(0, n_channels, 2).float() / n_channels) - - pe[:, 0::2] = torch.sin(position / div_term) - pe[:, 1::2] = torch.cos(position / div_term) - self.pe = pe.transpose(0, 1).to(x) - - -class FiLM(nn.Module): - def __init__(self, input_size, output_size): - super().__init__() - self.encoding = PositionalEncoding(input_size) - self.input_conv = nn.Conv1d(input_size, input_size, 3, padding=1) - self.output_conv = nn.Conv1d(input_size, output_size * 2, 3, padding=1) - - nn.init.xavier_uniform_(self.input_conv.weight) - nn.init.xavier_uniform_(self.output_conv.weight) - nn.init.zeros_(self.input_conv.bias) - nn.init.zeros_(self.output_conv.bias) - - def forward(self, x, noise_scale): - o = self.input_conv(x) - o = F.leaky_relu(o, 0.2) - o = self.encoding(o, noise_scale) - shift, scale = torch.chunk(self.output_conv(o), 2, dim=1) - return shift, scale - - def remove_weight_norm(self): - nn.utils.remove_weight_norm(self.input_conv) - nn.utils.remove_weight_norm(self.output_conv) - - def apply_weight_norm(self): - self.input_conv = weight_norm(self.input_conv) - self.output_conv = weight_norm(self.output_conv) - - -@torch.jit.script -def shif_and_scale(x, scale, shift): - o = shift + scale * x - return o - - -class UBlock(nn.Module): - def __init__(self, input_size, hidden_size, factor, dilation): - super().__init__() - assert isinstance(dilation, (list, tuple)) - assert len(dilation) == 4 - - self.factor = factor - self.res_block = Conv1d(input_size, hidden_size, 1) - self.main_block = nn.ModuleList( - [ - Conv1d(input_size, hidden_size, 3, dilation=dilation[0], padding=dilation[0]), - Conv1d(hidden_size, hidden_size, 3, dilation=dilation[1], padding=dilation[1]), - ] - ) - self.out_block = nn.ModuleList( - [ - Conv1d(hidden_size, hidden_size, 3, dilation=dilation[2], padding=dilation[2]), - Conv1d(hidden_size, hidden_size, 3, dilation=dilation[3], padding=dilation[3]), - ] - ) - - def forward(self, x, shift, scale): - x_inter = F.interpolate(x, size=x.shape[-1] * self.factor) - res = self.res_block(x_inter) - o = F.leaky_relu(x_inter, 0.2) - o = F.interpolate(o, size=x.shape[-1] * self.factor) - o = self.main_block[0](o) - o = shif_and_scale(o, scale, shift) - o = F.leaky_relu(o, 0.2) - o = self.main_block[1](o) - res2 = res + o - o = shif_and_scale(res2, scale, shift) - o = F.leaky_relu(o, 0.2) - o = self.out_block[0](o) - o = shif_and_scale(o, scale, shift) - o = F.leaky_relu(o, 0.2) - o = self.out_block[1](o) - o = o + res2 - return o - - def remove_weight_norm(self): - nn.utils.remove_weight_norm(self.res_block) - for _, layer in enumerate(self.main_block): - if len(layer.state_dict()) != 0: - nn.utils.remove_weight_norm(layer) - for _, layer in enumerate(self.out_block): - if len(layer.state_dict()) != 0: - nn.utils.remove_weight_norm(layer) - - def apply_weight_norm(self): - self.res_block = weight_norm(self.res_block) - for idx, layer in enumerate(self.main_block): - if len(layer.state_dict()) != 0: - self.main_block[idx] = weight_norm(layer) - for idx, layer in enumerate(self.out_block): - if len(layer.state_dict()) != 0: - self.out_block[idx] = weight_norm(layer) - - -class DBlock(nn.Module): - def __init__(self, input_size, hidden_size, factor): - super().__init__() - self.factor = factor - self.res_block = Conv1d(input_size, hidden_size, 1) - self.main_block = nn.ModuleList( - [ - Conv1d(input_size, hidden_size, 3, dilation=1, padding=1), - Conv1d(hidden_size, hidden_size, 3, dilation=2, padding=2), - Conv1d(hidden_size, hidden_size, 3, dilation=4, padding=4), - ] - ) - - def forward(self, x): - size = x.shape[-1] // self.factor - res = self.res_block(x) - res = F.interpolate(res, size=size) - o = F.interpolate(x, size=size) - for layer in self.main_block: - o = F.leaky_relu(o, 0.2) - o = layer(o) - return o + res - - def remove_weight_norm(self): - nn.utils.remove_weight_norm(self.res_block) - for _, layer in enumerate(self.main_block): - if len(layer.state_dict()) != 0: - nn.utils.remove_weight_norm(layer) - - def apply_weight_norm(self): - self.res_block = weight_norm(self.res_block) - for idx, layer in enumerate(self.main_block): - if len(layer.state_dict()) != 0: - self.main_block[idx] = weight_norm(layer) diff --git a/TTS/TTS/vocoder/models/__init__.py b/TTS/TTS/vocoder/models/__init__.py deleted file mode 100644 index 65901617b69d3ae708e09226c5e4ad903f89a929..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/__init__.py +++ /dev/null @@ -1,154 +0,0 @@ -import importlib -import re - -from coqpit import Coqpit - - -def to_camel(text): - text = text.capitalize() - return re.sub(r"(?!^)_([a-zA-Z])", lambda m: m.group(1).upper(), text) - - -def setup_model(config: Coqpit): - """Load models directly from configuration.""" - if "discriminator_model" in config and "generator_model" in config: - MyModel = importlib.import_module("TTS.vocoder.models.gan") - MyModel = getattr(MyModel, "GAN") - else: - MyModel = importlib.import_module("TTS.vocoder.models." + config.model.lower()) - if config.model.lower() == "wavernn": - MyModel = getattr(MyModel, "Wavernn") - elif config.model.lower() == "gan": - MyModel = getattr(MyModel, "GAN") - elif config.model.lower() == "wavegrad": - MyModel = getattr(MyModel, "Wavegrad") - else: - try: - MyModel = getattr(MyModel, to_camel(config.model)) - except ModuleNotFoundError as e: - raise ValueError(f"Model {config.model} not exist!") from e - print(" > Vocoder Model: {}".format(config.model)) - return MyModel.init_from_config(config) - - -def setup_generator(c): - """TODO: use config object as arguments""" - print(" > Generator Model: {}".format(c.generator_model)) - MyModel = importlib.import_module("TTS.vocoder.models." + c.generator_model.lower()) - MyModel = getattr(MyModel, to_camel(c.generator_model)) - # this is to preserve the Wavernn class name (instead of Wavernn) - if c.generator_model.lower() in "hifigan_generator": - model = MyModel(in_channels=c.audio["num_mels"], out_channels=1, **c.generator_model_params) - elif c.generator_model.lower() in "melgan_generator": - model = MyModel( - in_channels=c.audio["num_mels"], - out_channels=1, - proj_kernel=7, - base_channels=512, - upsample_factors=c.generator_model_params["upsample_factors"], - res_kernel=3, - num_res_blocks=c.generator_model_params["num_res_blocks"], - ) - elif c.generator_model in "melgan_fb_generator": - raise ValueError("melgan_fb_generator is now fullband_melgan_generator") - elif c.generator_model.lower() in "multiband_melgan_generator": - model = MyModel( - in_channels=c.audio["num_mels"], - out_channels=4, - proj_kernel=7, - base_channels=384, - upsample_factors=c.generator_model_params["upsample_factors"], - res_kernel=3, - num_res_blocks=c.generator_model_params["num_res_blocks"], - ) - elif c.generator_model.lower() in "fullband_melgan_generator": - model = MyModel( - in_channels=c.audio["num_mels"], - out_channels=1, - proj_kernel=7, - base_channels=512, - upsample_factors=c.generator_model_params["upsample_factors"], - res_kernel=3, - num_res_blocks=c.generator_model_params["num_res_blocks"], - ) - elif c.generator_model.lower() in "parallel_wavegan_generator": - model = MyModel( - in_channels=1, - out_channels=1, - kernel_size=3, - num_res_blocks=c.generator_model_params["num_res_blocks"], - stacks=c.generator_model_params["stacks"], - res_channels=64, - gate_channels=128, - skip_channels=64, - aux_channels=c.audio["num_mels"], - dropout=0.0, - bias=True, - use_weight_norm=True, - upsample_factors=c.generator_model_params["upsample_factors"], - ) - elif c.generator_model.lower() in "univnet_generator": - model = MyModel(**c.generator_model_params) - else: - raise NotImplementedError(f"Model {c.generator_model} not implemented!") - return model - - -def setup_discriminator(c): - """TODO: use config objekt as arguments""" - print(" > Discriminator Model: {}".format(c.discriminator_model)) - if "parallel_wavegan" in c.discriminator_model: - MyModel = importlib.import_module("TTS.vocoder.models.parallel_wavegan_discriminator") - else: - MyModel = importlib.import_module("TTS.vocoder.models." + c.discriminator_model.lower()) - MyModel = getattr(MyModel, to_camel(c.discriminator_model.lower())) - if c.discriminator_model in "hifigan_discriminator": - model = MyModel() - if c.discriminator_model in "random_window_discriminator": - model = MyModel( - cond_channels=c.audio["num_mels"], - hop_length=c.audio["hop_length"], - uncond_disc_donwsample_factors=c.discriminator_model_params["uncond_disc_donwsample_factors"], - cond_disc_downsample_factors=c.discriminator_model_params["cond_disc_downsample_factors"], - cond_disc_out_channels=c.discriminator_model_params["cond_disc_out_channels"], - window_sizes=c.discriminator_model_params["window_sizes"], - ) - if c.discriminator_model in "melgan_multiscale_discriminator": - model = MyModel( - in_channels=1, - out_channels=1, - kernel_sizes=(5, 3), - base_channels=c.discriminator_model_params["base_channels"], - max_channels=c.discriminator_model_params["max_channels"], - downsample_factors=c.discriminator_model_params["downsample_factors"], - ) - if c.discriminator_model == "residual_parallel_wavegan_discriminator": - model = MyModel( - in_channels=1, - out_channels=1, - kernel_size=3, - num_layers=c.discriminator_model_params["num_layers"], - stacks=c.discriminator_model_params["stacks"], - res_channels=64, - gate_channels=128, - skip_channels=64, - dropout=0.0, - bias=True, - nonlinear_activation="LeakyReLU", - nonlinear_activation_params={"negative_slope": 0.2}, - ) - if c.discriminator_model == "parallel_wavegan_discriminator": - model = MyModel( - in_channels=1, - out_channels=1, - kernel_size=3, - num_layers=c.discriminator_model_params["num_layers"], - conv_channels=64, - dilation_factor=1, - nonlinear_activation="LeakyReLU", - nonlinear_activation_params={"negative_slope": 0.2}, - bias=True, - ) - if c.discriminator_model == "univnet_discriminator": - model = MyModel() - return model diff --git a/TTS/TTS/vocoder/models/base_vocoder.py b/TTS/TTS/vocoder/models/base_vocoder.py deleted file mode 100644 index 0bcbe7ba1cb933c2bd3e8925c32d781aeaf79add..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/base_vocoder.py +++ /dev/null @@ -1,55 +0,0 @@ -from coqpit import Coqpit - -from TTS.model import BaseTrainerModel - -# pylint: skip-file - - -class BaseVocoder(BaseTrainerModel): - """Base `vocoder` class. Every new `vocoder` model must inherit this. - - It defines `vocoder` specific functions on top of `Model`. - - Notes on input/output tensor shapes: - Any input or output tensor of the model must be shaped as - - - 3D tensors `batch x time x channels` - - 2D tensors `batch x channels` - - 1D tensors `batch x 1` - """ - - MODEL_TYPE = "vocoder" - - def __init__(self, config): - super().__init__() - self._set_model_args(config) - - def _set_model_args(self, config: Coqpit): - """Setup model args based on the config type. - - If the config is for training with a name like "*Config", then the model args are embeded in the - config.model_args - - If the config is for the model with a name like "*Args", then we assign the directly. - """ - # don't use isintance not to import recursively - if "Config" in config.__class__.__name__: - if "characters" in config: - _, self.config, num_chars = self.get_characters(config) - self.config.num_chars = num_chars - if hasattr(self.config, "model_args"): - config.model_args.num_chars = num_chars - if "model_args" in config: - self.args = self.config.model_args - # This is for backward compatibility - if "model_params" in config: - self.args = self.config.model_params - else: - self.config = config - if "model_args" in config: - self.args = self.config.model_args - # This is for backward compatibility - if "model_params" in config: - self.args = self.config.model_params - else: - raise ValueError("config must be either a *Config or *Args") diff --git a/TTS/TTS/vocoder/models/fullband_melgan_generator.py b/TTS/TTS/vocoder/models/fullband_melgan_generator.py deleted file mode 100644 index ee25559af0d468aac535841bdfdd33b366250f43..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/fullband_melgan_generator.py +++ /dev/null @@ -1,33 +0,0 @@ -import torch - -from TTS.vocoder.models.melgan_generator import MelganGenerator - - -class FullbandMelganGenerator(MelganGenerator): - def __init__( - self, - in_channels=80, - out_channels=1, - proj_kernel=7, - base_channels=512, - upsample_factors=(2, 8, 2, 2), - res_kernel=3, - num_res_blocks=4, - ): - super().__init__( - in_channels=in_channels, - out_channels=out_channels, - proj_kernel=proj_kernel, - base_channels=base_channels, - upsample_factors=upsample_factors, - res_kernel=res_kernel, - num_res_blocks=num_res_blocks, - ) - - @torch.no_grad() - def inference(self, cond_features): - cond_features = cond_features.to(self.layers[1].weight.device) - cond_features = torch.nn.functional.pad( - cond_features, (self.inference_padding, self.inference_padding), "replicate" - ) - return self.layers(cond_features) diff --git a/TTS/TTS/vocoder/models/gan.py b/TTS/TTS/vocoder/models/gan.py deleted file mode 100644 index 19c30e983e5bb2066d3ccd22dc5cb21c091cb60a..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/gan.py +++ /dev/null @@ -1,374 +0,0 @@ -from inspect import signature -from typing import Dict, List, Tuple - -import numpy as np -import torch -from coqpit import Coqpit -from torch import nn -from torch.utils.data import DataLoader -from torch.utils.data.distributed import DistributedSampler -from trainer.trainer_utils import get_optimizer, get_scheduler - -from TTS.utils.audio import AudioProcessor -from TTS.utils.io import load_fsspec -from TTS.vocoder.datasets.gan_dataset import GANDataset -from TTS.vocoder.layers.losses import DiscriminatorLoss, GeneratorLoss -from TTS.vocoder.models import setup_discriminator, setup_generator -from TTS.vocoder.models.base_vocoder import BaseVocoder -from TTS.vocoder.utils.generic_utils import plot_results - - -class GAN(BaseVocoder): - def __init__(self, config: Coqpit, ap: AudioProcessor = None): - """Wrap a generator and a discriminator network. It provides a compatible interface for the trainer. - It also helps mixing and matching different generator and disciminator networks easily. - - To implement a new GAN models, you just need to define the generator and the discriminator networks, the rest - is handled by the `GAN` class. - - Args: - config (Coqpit): Model configuration. - ap (AudioProcessor): 🐸TTS AudioProcessor instance. Defaults to None. - - Examples: - Initializing the GAN model with HifiGAN generator and discriminator. - >>> from TTS.vocoder.configs import HifiganConfig - >>> config = HifiganConfig() - >>> model = GAN(config) - """ - super().__init__(config) - self.config = config - self.model_g = setup_generator(config) - self.model_d = setup_discriminator(config) - self.train_disc = False # if False, train only the generator. - self.y_hat_g = None # the last generator prediction to be passed onto the discriminator - self.ap = ap - - def forward(self, x: torch.Tensor) -> torch.Tensor: - """Run the generator's forward pass. - - Args: - x (torch.Tensor): Input tensor. - - Returns: - torch.Tensor: output of the GAN generator network. - """ - return self.model_g.forward(x) - - def inference(self, x: torch.Tensor) -> torch.Tensor: - """Run the generator's inference pass. - - Args: - x (torch.Tensor): Input tensor. - Returns: - torch.Tensor: output of the GAN generator network. - """ - return self.model_g.inference(x) - - def train_step(self, batch: Dict, criterion: Dict, optimizer_idx: int) -> Tuple[Dict, Dict]: - """Compute model outputs and the loss values. `optimizer_idx` selects the generator or the discriminator for - network on the current pass. - - Args: - batch (Dict): Batch of samples returned by the dataloader. - criterion (Dict): Criterion used to compute the losses. - optimizer_idx (int): ID of the optimizer in use on the current pass. - - Raises: - ValueError: `optimizer_idx` is an unexpected value. - - Returns: - Tuple[Dict, Dict]: model outputs and the computed loss values. - """ - outputs = {} - loss_dict = {} - - x = batch["input"] - y = batch["waveform"] - - if optimizer_idx not in [0, 1]: - raise ValueError(" [!] Unexpected `optimizer_idx`.") - - if optimizer_idx == 0: - # DISCRIMINATOR optimization - - # generator pass - y_hat = self.model_g(x)[:, :, : y.size(2)] - - # cache for generator loss - # pylint: disable=W0201 - self.y_hat_g = y_hat - self.y_hat_sub = None - self.y_sub_g = None - - # PQMF formatting - if y_hat.shape[1] > 1: - self.y_hat_sub = y_hat - y_hat = self.model_g.pqmf_synthesis(y_hat) - self.y_hat_g = y_hat # save for generator loss - self.y_sub_g = self.model_g.pqmf_analysis(y) - - scores_fake, feats_fake, feats_real = None, None, None - - if self.train_disc: - # use different samples for G and D trainings - if self.config.diff_samples_for_G_and_D: - x_d = batch["input_disc"] - y_d = batch["waveform_disc"] - # use a different sample than generator - with torch.no_grad(): - y_hat = self.model_g(x_d) - - # PQMF formatting - if y_hat.shape[1] > 1: - y_hat = self.model_g.pqmf_synthesis(y_hat) - else: - # use the same samples as generator - x_d = x.clone() - y_d = y.clone() - y_hat = self.y_hat_g - - # run D with or without cond. features - if len(signature(self.model_d.forward).parameters) == 2: - D_out_fake = self.model_d(y_hat.detach().clone(), x_d) - D_out_real = self.model_d(y_d, x_d) - else: - D_out_fake = self.model_d(y_hat.detach()) - D_out_real = self.model_d(y_d) - - # format D outputs - if isinstance(D_out_fake, tuple): - # self.model_d returns scores and features - scores_fake, feats_fake = D_out_fake - if D_out_real is None: - scores_real, feats_real = None, None - else: - scores_real, feats_real = D_out_real - else: - # model D returns only scores - scores_fake = D_out_fake - scores_real = D_out_real - - # compute losses - loss_dict = criterion[optimizer_idx](scores_fake, scores_real) - outputs = {"model_outputs": y_hat} - - if optimizer_idx == 1: - # GENERATOR loss - scores_fake, feats_fake, feats_real = None, None, None - if self.train_disc: - if len(signature(self.model_d.forward).parameters) == 2: - D_out_fake = self.model_d(self.y_hat_g, x) - else: - D_out_fake = self.model_d(self.y_hat_g) - D_out_real = None - - if self.config.use_feat_match_loss: - with torch.no_grad(): - D_out_real = self.model_d(y) - - # format D outputs - if isinstance(D_out_fake, tuple): - scores_fake, feats_fake = D_out_fake - if D_out_real is None: - feats_real = None - else: - _, feats_real = D_out_real - else: - scores_fake = D_out_fake - feats_fake, feats_real = None, None - - # compute losses - loss_dict = criterion[optimizer_idx]( - self.y_hat_g, y, scores_fake, feats_fake, feats_real, self.y_hat_sub, self.y_sub_g - ) - outputs = {"model_outputs": self.y_hat_g} - return outputs, loss_dict - - def _log(self, name: str, ap: AudioProcessor, batch: Dict, outputs: Dict) -> Tuple[Dict, Dict]: - """Logging shared by the training and evaluation. - - Args: - name (str): Name of the run. `train` or `eval`, - ap (AudioProcessor): Audio processor used in training. - batch (Dict): Batch used in the last train/eval step. - outputs (Dict): Model outputs from the last train/eval step. - - Returns: - Tuple[Dict, Dict]: log figures and audio samples. - """ - y_hat = outputs[0]["model_outputs"] if self.train_disc else outputs[1]["model_outputs"] - y = batch["waveform"] - figures = plot_results(y_hat, y, ap, name) - sample_voice = y_hat[0].squeeze(0).detach().cpu().numpy() - audios = {f"{name}/audio": sample_voice} - return figures, audios - - def train_log( - self, batch: Dict, outputs: Dict, logger: "Logger", assets: Dict, steps: int # pylint: disable=unused-argument - ) -> Tuple[Dict, np.ndarray]: - """Call `_log()` for training.""" - figures, audios = self._log("eval", self.ap, batch, outputs) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - @torch.no_grad() - def eval_step(self, batch: Dict, criterion: nn.Module, optimizer_idx: int) -> Tuple[Dict, Dict]: - """Call `train_step()` with `no_grad()`""" - self.train_disc = True # Avoid a bug in the Training with the missing discriminator loss - return self.train_step(batch, criterion, optimizer_idx) - - def eval_log( - self, batch: Dict, outputs: Dict, logger: "Logger", assets: Dict, steps: int # pylint: disable=unused-argument - ) -> Tuple[Dict, np.ndarray]: - """Call `_log()` for evaluation.""" - figures, audios = self._log("eval", self.ap, batch, outputs) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - def load_checkpoint( - self, - config: Coqpit, - checkpoint_path: str, - eval: bool = False, # pylint: disable=unused-argument, redefined-builtin - cache: bool = False, - ) -> None: - """Load a GAN checkpoint and initialize model parameters. - - Args: - config (Coqpit): Model config. - checkpoint_path (str): Checkpoint file path. - eval (bool, optional): If true, load the model for inference. If falseDefaults to False. - """ - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - # band-aid for older than v0.0.15 GAN models - if "model_disc" in state: - self.model_g.load_checkpoint(config, checkpoint_path, eval) - else: - self.load_state_dict(state["model"]) - if eval: - self.model_d = None - if hasattr(self.model_g, "remove_weight_norm"): - self.model_g.remove_weight_norm() - - def on_train_step_start(self, trainer) -> None: - """Enable the discriminator training based on `steps_to_start_discriminator` - - Args: - trainer (Trainer): Trainer object. - """ - self.train_disc = trainer.total_steps_done >= self.config.steps_to_start_discriminator - - def get_optimizer(self) -> List: - """Initiate and return the GAN optimizers based on the config parameters. - - It returnes 2 optimizers in a list. First one is for the generator and the second one is for the discriminator. - - Returns: - List: optimizers. - """ - optimizer1 = get_optimizer( - self.config.optimizer, self.config.optimizer_params, self.config.lr_gen, self.model_g - ) - optimizer2 = get_optimizer( - self.config.optimizer, self.config.optimizer_params, self.config.lr_disc, self.model_d - ) - return [optimizer2, optimizer1] - - def get_lr(self) -> List: - """Set the initial learning rates for each optimizer. - - Returns: - List: learning rates for each optimizer. - """ - return [self.config.lr_disc, self.config.lr_gen] - - def get_scheduler(self, optimizer) -> List: - """Set the schedulers for each optimizer. - - Args: - optimizer (List[`torch.optim.Optimizer`]): List of optimizers. - - Returns: - List: Schedulers, one for each optimizer. - """ - scheduler1 = get_scheduler(self.config.lr_scheduler_gen, self.config.lr_scheduler_gen_params, optimizer[0]) - scheduler2 = get_scheduler(self.config.lr_scheduler_disc, self.config.lr_scheduler_disc_params, optimizer[1]) - return [scheduler2, scheduler1] - - @staticmethod - def format_batch(batch: List) -> Dict: - """Format the batch for training. - - Args: - batch (List): Batch out of the dataloader. - - Returns: - Dict: formatted model inputs. - """ - if isinstance(batch[0], list): - x_G, y_G = batch[0] - x_D, y_D = batch[1] - return {"input": x_G, "waveform": y_G, "input_disc": x_D, "waveform_disc": y_D} - x, y = batch - return {"input": x, "waveform": y} - - def get_data_loader( # pylint: disable=no-self-use, unused-argument - self, - config: Coqpit, - assets: Dict, - is_eval: True, - samples: List, - verbose: bool, - num_gpus: int, - rank: int = None, # pylint: disable=unused-argument - ): - """Initiate and return the GAN dataloader. - - Args: - config (Coqpit): Model config. - ap (AudioProcessor): Audio processor. - is_eval (True): Set the dataloader for evaluation if true. - samples (List): Data samples. - verbose (bool): Log information if true. - num_gpus (int): Number of GPUs in use. - rank (int): Rank of the current GPU. Defaults to None. - - Returns: - DataLoader: Torch dataloader. - """ - dataset = GANDataset( - ap=self.ap, - items=samples, - seq_len=config.seq_len, - hop_len=self.ap.hop_length, - pad_short=config.pad_short, - conv_pad=config.conv_pad, - return_pairs=config.diff_samples_for_G_and_D if "diff_samples_for_G_and_D" in config else False, - is_training=not is_eval, - return_segments=not is_eval, - use_noise_augment=config.use_noise_augment, - use_cache=config.use_cache, - verbose=verbose, - ) - dataset.shuffle_mapping() - sampler = DistributedSampler(dataset, shuffle=True) if num_gpus > 1 else None - loader = DataLoader( - dataset, - batch_size=1 if is_eval else config.batch_size, - shuffle=num_gpus == 0, - drop_last=False, - sampler=sampler, - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=False, - ) - return loader - - def get_criterion(self): - """Return criterions for the optimizers""" - return [DiscriminatorLoss(self.config), GeneratorLoss(self.config)] - - @staticmethod - def init_from_config(config: Coqpit, verbose=True) -> "GAN": - ap = AudioProcessor.init_from_config(config, verbose=verbose) - return GAN(config, ap=ap) diff --git a/TTS/TTS/vocoder/models/hifigan_discriminator.py b/TTS/TTS/vocoder/models/hifigan_discriminator.py deleted file mode 100644 index ca5eaf408c95372ea26f4e83db6f470b4dd92dfb..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/hifigan_discriminator.py +++ /dev/null @@ -1,217 +0,0 @@ -# adopted from https://github.com/jik876/hifi-gan/blob/master/models.py -import torch -from torch import nn -from torch.nn import functional as F - -LRELU_SLOPE = 0.1 - - -class DiscriminatorP(torch.nn.Module): - """HiFiGAN Periodic Discriminator - - Takes every Pth value from the input waveform and applied a stack of convoluations. - - Note: - if `period` is 2 - `waveform = [1, 2, 3, 4, 5, 6 ...] --> [1, 3, 5 ... ] --> convs -> score, feat` - - Args: - x (Tensor): input waveform. - - Returns: - [Tensor]: discriminator scores per sample in the batch. - [List[Tensor]]: list of features from each convolutional layer. - - Shapes: - x: [B, 1, T] - """ - - def __init__(self, period, kernel_size=5, stride=3, use_spectral_norm=False): - super().__init__() - self.period = period - get_padding = lambda k, d: int((k * d - d) / 2) - norm_f = nn.utils.spectral_norm if use_spectral_norm else nn.utils.weight_norm - self.convs = nn.ModuleList( - [ - norm_f(nn.Conv2d(1, 32, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(nn.Conv2d(32, 128, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(nn.Conv2d(128, 512, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(nn.Conv2d(512, 1024, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(nn.Conv2d(1024, 1024, (kernel_size, 1), 1, padding=(2, 0))), - ] - ) - self.conv_post = norm_f(nn.Conv2d(1024, 1, (3, 1), 1, padding=(1, 0))) - - def forward(self, x): - """ - Args: - x (Tensor): input waveform. - - Returns: - [Tensor]: discriminator scores per sample in the batch. - [List[Tensor]]: list of features from each convolutional layer. - - Shapes: - x: [B, 1, T] - """ - feat = [] - - # 1d to 2d - b, c, t = x.shape - if t % self.period != 0: # pad first - n_pad = self.period - (t % self.period) - x = F.pad(x, (0, n_pad), "reflect") - t = t + n_pad - x = x.view(b, c, t // self.period, self.period) - - for l in self.convs: - x = l(x) - x = F.leaky_relu(x, LRELU_SLOPE) - feat.append(x) - x = self.conv_post(x) - feat.append(x) - x = torch.flatten(x, 1, -1) - - return x, feat - - -class MultiPeriodDiscriminator(torch.nn.Module): - """HiFiGAN Multi-Period Discriminator (MPD) - Wrapper for the `PeriodDiscriminator` to apply it in different periods. - Periods are suggested to be prime numbers to reduce the overlap between each discriminator. - """ - - def __init__(self, use_spectral_norm=False): - super().__init__() - self.discriminators = nn.ModuleList( - [ - DiscriminatorP(2, use_spectral_norm=use_spectral_norm), - DiscriminatorP(3, use_spectral_norm=use_spectral_norm), - DiscriminatorP(5, use_spectral_norm=use_spectral_norm), - DiscriminatorP(7, use_spectral_norm=use_spectral_norm), - DiscriminatorP(11, use_spectral_norm=use_spectral_norm), - ] - ) - - def forward(self, x): - """ - Args: - x (Tensor): input waveform. - - Returns: - [List[Tensor]]: list of scores from each discriminator. - [List[List[Tensor]]]: list of list of features from each discriminator's each convolutional layer. - - Shapes: - x: [B, 1, T] - """ - scores = [] - feats = [] - for _, d in enumerate(self.discriminators): - score, feat = d(x) - scores.append(score) - feats.append(feat) - return scores, feats - - -class DiscriminatorS(torch.nn.Module): - """HiFiGAN Scale Discriminator. - It is similar to `MelganDiscriminator` but with a specific architecture explained in the paper. - - Args: - use_spectral_norm (bool): if `True` swith to spectral norm instead of weight norm. - - """ - - def __init__(self, use_spectral_norm=False): - super().__init__() - norm_f = nn.utils.spectral_norm if use_spectral_norm else nn.utils.weight_norm - self.convs = nn.ModuleList( - [ - norm_f(nn.Conv1d(1, 128, 15, 1, padding=7)), - norm_f(nn.Conv1d(128, 128, 41, 2, groups=4, padding=20)), - norm_f(nn.Conv1d(128, 256, 41, 2, groups=16, padding=20)), - norm_f(nn.Conv1d(256, 512, 41, 4, groups=16, padding=20)), - norm_f(nn.Conv1d(512, 1024, 41, 4, groups=16, padding=20)), - norm_f(nn.Conv1d(1024, 1024, 41, 1, groups=16, padding=20)), - norm_f(nn.Conv1d(1024, 1024, 5, 1, padding=2)), - ] - ) - self.conv_post = norm_f(nn.Conv1d(1024, 1, 3, 1, padding=1)) - - def forward(self, x): - """ - Args: - x (Tensor): input waveform. - - Returns: - Tensor: discriminator scores. - List[Tensor]: list of features from the convolutiona layers. - """ - feat = [] - for l in self.convs: - x = l(x) - x = F.leaky_relu(x, LRELU_SLOPE) - feat.append(x) - x = self.conv_post(x) - feat.append(x) - x = torch.flatten(x, 1, -1) - return x, feat - - -class MultiScaleDiscriminator(torch.nn.Module): - """HiFiGAN Multi-Scale Discriminator. - It is similar to `MultiScaleMelganDiscriminator` but specially tailored for HiFiGAN as in the paper. - """ - - def __init__(self): - super().__init__() - self.discriminators = nn.ModuleList( - [ - DiscriminatorS(use_spectral_norm=True), - DiscriminatorS(), - DiscriminatorS(), - ] - ) - self.meanpools = nn.ModuleList([nn.AvgPool1d(4, 2, padding=2), nn.AvgPool1d(4, 2, padding=2)]) - - def forward(self, x): - """ - Args: - x (Tensor): input waveform. - - Returns: - List[Tensor]: discriminator scores. - List[List[Tensor]]: list of list of features from each layers of each discriminator. - """ - scores = [] - feats = [] - for i, d in enumerate(self.discriminators): - if i != 0: - x = self.meanpools[i - 1](x) - score, feat = d(x) - scores.append(score) - feats.append(feat) - return scores, feats - - -class HifiganDiscriminator(nn.Module): - """HiFiGAN discriminator wrapping MPD and MSD.""" - - def __init__(self): - super().__init__() - self.mpd = MultiPeriodDiscriminator() - self.msd = MultiScaleDiscriminator() - - def forward(self, x): - """ - Args: - x (Tensor): input waveform. - - Returns: - List[Tensor]: discriminator scores. - List[List[Tensor]]: list of list of features from each layers of each discriminator. - """ - scores, feats = self.mpd(x) - scores_, feats_ = self.msd(x) - return scores + scores_, feats + feats_ diff --git a/TTS/TTS/vocoder/models/hifigan_generator.py b/TTS/TTS/vocoder/models/hifigan_generator.py deleted file mode 100644 index 4916d1e69769b2a17fb67c420fd8bb9376557a88..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/hifigan_generator.py +++ /dev/null @@ -1,300 +0,0 @@ -# adopted from https://github.com/jik876/hifi-gan/blob/master/models.py -import torch -from torch import nn -from torch.nn import Conv1d, ConvTranspose1d -from torch.nn import functional as F -from torch.nn.utils import remove_weight_norm, weight_norm - -from TTS.utils.io import load_fsspec - -LRELU_SLOPE = 0.1 - - -def get_padding(k, d): - return int((k * d - d) / 2) - - -class ResBlock1(torch.nn.Module): - """Residual Block Type 1. It has 3 convolutional layers in each convolutional block. - - Network:: - - x -> lrelu -> conv1_1 -> conv1_2 -> conv1_3 -> z -> lrelu -> conv2_1 -> conv2_2 -> conv2_3 -> o -> + -> o - |--------------------------------------------------------------------------------------------------| - - - Args: - channels (int): number of hidden channels for the convolutional layers. - kernel_size (int): size of the convolution filter in each layer. - dilations (list): list of dilation value for each conv layer in a block. - """ - - def __init__(self, channels, kernel_size=3, dilation=(1, 3, 5)): - super().__init__() - self.convs1 = nn.ModuleList( - [ - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[0], - padding=get_padding(kernel_size, dilation[0]), - ) - ), - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[1], - padding=get_padding(kernel_size, dilation[1]), - ) - ), - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[2], - padding=get_padding(kernel_size, dilation[2]), - ) - ), - ] - ) - - self.convs2 = nn.ModuleList( - [ - weight_norm( - Conv1d(channels, channels, kernel_size, 1, dilation=1, padding=get_padding(kernel_size, 1)) - ), - weight_norm( - Conv1d(channels, channels, kernel_size, 1, dilation=1, padding=get_padding(kernel_size, 1)) - ), - weight_norm( - Conv1d(channels, channels, kernel_size, 1, dilation=1, padding=get_padding(kernel_size, 1)) - ), - ] - ) - - def forward(self, x): - """ - Args: - x (Tensor): input tensor. - Returns: - Tensor: output tensor. - Shapes: - x: [B, C, T] - """ - for c1, c2 in zip(self.convs1, self.convs2): - xt = F.leaky_relu(x, LRELU_SLOPE) - xt = c1(xt) - xt = F.leaky_relu(xt, LRELU_SLOPE) - xt = c2(xt) - x = xt + x - return x - - def remove_weight_norm(self): - for l in self.convs1: - remove_weight_norm(l) - for l in self.convs2: - remove_weight_norm(l) - - -class ResBlock2(torch.nn.Module): - """Residual Block Type 2. It has 1 convolutional layers in each convolutional block. - - Network:: - - x -> lrelu -> conv1-> -> z -> lrelu -> conv2-> o -> + -> o - |---------------------------------------------------| - - - Args: - channels (int): number of hidden channels for the convolutional layers. - kernel_size (int): size of the convolution filter in each layer. - dilations (list): list of dilation value for each conv layer in a block. - """ - - def __init__(self, channels, kernel_size=3, dilation=(1, 3)): - super().__init__() - self.convs = nn.ModuleList( - [ - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[0], - padding=get_padding(kernel_size, dilation[0]), - ) - ), - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[1], - padding=get_padding(kernel_size, dilation[1]), - ) - ), - ] - ) - - def forward(self, x): - for c in self.convs: - xt = F.leaky_relu(x, LRELU_SLOPE) - xt = c(xt) - x = xt + x - return x - - def remove_weight_norm(self): - for l in self.convs: - remove_weight_norm(l) - - -class HifiganGenerator(torch.nn.Module): - def __init__( - self, - in_channels, - out_channels, - resblock_type, - resblock_dilation_sizes, - resblock_kernel_sizes, - upsample_kernel_sizes, - upsample_initial_channel, - upsample_factors, - inference_padding=5, - cond_channels=0, - conv_pre_weight_norm=True, - conv_post_weight_norm=True, - conv_post_bias=True, - ): - r"""HiFiGAN Generator with Multi-Receptive Field Fusion (MRF) - - Network: - x -> lrelu -> upsampling_layer -> resblock1_k1x1 -> z1 -> + -> z_sum / #resblocks -> lrelu -> conv_post_7x1 -> tanh -> o - .. -> zI ---| - resblockN_kNx1 -> zN ---' - - Args: - in_channels (int): number of input tensor channels. - out_channels (int): number of output tensor channels. - resblock_type (str): type of the `ResBlock`. '1' or '2'. - resblock_dilation_sizes (List[List[int]]): list of dilation values in each layer of a `ResBlock`. - resblock_kernel_sizes (List[int]): list of kernel sizes for each `ResBlock`. - upsample_kernel_sizes (List[int]): list of kernel sizes for each transposed convolution. - upsample_initial_channel (int): number of channels for the first upsampling layer. This is divided by 2 - for each consecutive upsampling layer. - upsample_factors (List[int]): upsampling factors (stride) for each upsampling layer. - inference_padding (int): constant padding applied to the input at inference time. Defaults to 5. - """ - super().__init__() - self.inference_padding = inference_padding - self.num_kernels = len(resblock_kernel_sizes) - self.num_upsamples = len(upsample_factors) - # initial upsampling layers - self.conv_pre = weight_norm(Conv1d(in_channels, upsample_initial_channel, 7, 1, padding=3)) - resblock = ResBlock1 if resblock_type == "1" else ResBlock2 - # upsampling layers - self.ups = nn.ModuleList() - for i, (u, k) in enumerate(zip(upsample_factors, upsample_kernel_sizes)): - self.ups.append( - weight_norm( - ConvTranspose1d( - upsample_initial_channel // (2**i), - upsample_initial_channel // (2 ** (i + 1)), - k, - u, - padding=(k - u) // 2, - ) - ) - ) - # MRF blocks - self.resblocks = nn.ModuleList() - for i in range(len(self.ups)): - ch = upsample_initial_channel // (2 ** (i + 1)) - for _, (k, d) in enumerate(zip(resblock_kernel_sizes, resblock_dilation_sizes)): - self.resblocks.append(resblock(ch, k, d)) - # post convolution layer - self.conv_post = weight_norm(Conv1d(ch, out_channels, 7, 1, padding=3, bias=conv_post_bias)) - if cond_channels > 0: - self.cond_layer = nn.Conv1d(cond_channels, upsample_initial_channel, 1) - - if not conv_pre_weight_norm: - remove_weight_norm(self.conv_pre) - - if not conv_post_weight_norm: - remove_weight_norm(self.conv_post) - - def forward(self, x, g=None): - """ - Args: - x (Tensor): feature input tensor. - g (Tensor): global conditioning input tensor. - - Returns: - Tensor: output waveform. - - Shapes: - x: [B, C, T] - Tensor: [B, 1, T] - """ - o = self.conv_pre(x) - if hasattr(self, "cond_layer"): - o = o + self.cond_layer(g) - for i in range(self.num_upsamples): - o = F.leaky_relu(o, LRELU_SLOPE) - o = self.ups[i](o) - z_sum = None - for j in range(self.num_kernels): - if z_sum is None: - z_sum = self.resblocks[i * self.num_kernels + j](o) - else: - z_sum += self.resblocks[i * self.num_kernels + j](o) - o = z_sum / self.num_kernels - o = F.leaky_relu(o) - o = self.conv_post(o) - o = torch.tanh(o) - return o - - @torch.no_grad() - def inference(self, c): - """ - Args: - x (Tensor): conditioning input tensor. - - Returns: - Tensor: output waveform. - - Shapes: - x: [B, C, T] - Tensor: [B, 1, T] - """ - c = c.to(self.conv_pre.weight.device) - c = torch.nn.functional.pad(c, (self.inference_padding, self.inference_padding), "replicate") - return self.forward(c) - - def remove_weight_norm(self): - print("Removing weight norm...") - for l in self.ups: - remove_weight_norm(l) - for l in self.resblocks: - l.remove_weight_norm() - remove_weight_norm(self.conv_pre) - remove_weight_norm(self.conv_post) - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - self.remove_weight_norm() diff --git a/TTS/TTS/vocoder/models/melgan_discriminator.py b/TTS/TTS/vocoder/models/melgan_discriminator.py deleted file mode 100644 index 14f00c5927cb28449c4fb0dc0727cde014370c2b..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/melgan_discriminator.py +++ /dev/null @@ -1,84 +0,0 @@ -import numpy as np -from torch import nn -from torch.nn.utils import weight_norm - - -class MelganDiscriminator(nn.Module): - def __init__( - self, - in_channels=1, - out_channels=1, - kernel_sizes=(5, 3), - base_channels=16, - max_channels=1024, - downsample_factors=(4, 4, 4, 4), - groups_denominator=4, - ): - super().__init__() - self.layers = nn.ModuleList() - - layer_kernel_size = np.prod(kernel_sizes) - layer_padding = (layer_kernel_size - 1) // 2 - - # initial layer - self.layers += [ - nn.Sequential( - nn.ReflectionPad1d(layer_padding), - weight_norm(nn.Conv1d(in_channels, base_channels, layer_kernel_size, stride=1)), - nn.LeakyReLU(0.2, inplace=True), - ) - ] - - # downsampling layers - layer_in_channels = base_channels - for downsample_factor in downsample_factors: - layer_out_channels = min(layer_in_channels * downsample_factor, max_channels) - layer_kernel_size = downsample_factor * 10 + 1 - layer_padding = (layer_kernel_size - 1) // 2 - layer_groups = layer_in_channels // groups_denominator - self.layers += [ - nn.Sequential( - weight_norm( - nn.Conv1d( - layer_in_channels, - layer_out_channels, - kernel_size=layer_kernel_size, - stride=downsample_factor, - padding=layer_padding, - groups=layer_groups, - ) - ), - nn.LeakyReLU(0.2, inplace=True), - ) - ] - layer_in_channels = layer_out_channels - - # last 2 layers - layer_padding1 = (kernel_sizes[0] - 1) // 2 - layer_padding2 = (kernel_sizes[1] - 1) // 2 - self.layers += [ - nn.Sequential( - weight_norm( - nn.Conv1d( - layer_out_channels, - layer_out_channels, - kernel_size=kernel_sizes[0], - stride=1, - padding=layer_padding1, - ) - ), - nn.LeakyReLU(0.2, inplace=True), - ), - weight_norm( - nn.Conv1d( - layer_out_channels, out_channels, kernel_size=kernel_sizes[1], stride=1, padding=layer_padding2 - ) - ), - ] - - def forward(self, x): - feats = [] - for layer in self.layers: - x = layer(x) - feats.append(x) - return x, feats diff --git a/TTS/TTS/vocoder/models/melgan_generator.py b/TTS/TTS/vocoder/models/melgan_generator.py deleted file mode 100644 index 989797f0b8537c96ff4cfd1c2c6af856cecc79fc..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/melgan_generator.py +++ /dev/null @@ -1,95 +0,0 @@ -import torch -from torch import nn -from torch.nn.utils import weight_norm - -from TTS.utils.io import load_fsspec -from TTS.vocoder.layers.melgan import ResidualStack - - -class MelganGenerator(nn.Module): - def __init__( - self, - in_channels=80, - out_channels=1, - proj_kernel=7, - base_channels=512, - upsample_factors=(8, 8, 2, 2), - res_kernel=3, - num_res_blocks=3, - ): - super().__init__() - - # assert model parameters - assert (proj_kernel - 1) % 2 == 0, " [!] proj_kernel should be an odd number." - - # setup additional model parameters - base_padding = (proj_kernel - 1) // 2 - act_slope = 0.2 - self.inference_padding = 2 - - # initial layer - layers = [] - layers += [ - nn.ReflectionPad1d(base_padding), - weight_norm(nn.Conv1d(in_channels, base_channels, kernel_size=proj_kernel, stride=1, bias=True)), - ] - - # upsampling layers and residual stacks - for idx, upsample_factor in enumerate(upsample_factors): - layer_in_channels = base_channels // (2**idx) - layer_out_channels = base_channels // (2 ** (idx + 1)) - layer_filter_size = upsample_factor * 2 - layer_stride = upsample_factor - layer_output_padding = upsample_factor % 2 - layer_padding = upsample_factor // 2 + layer_output_padding - layers += [ - nn.LeakyReLU(act_slope), - weight_norm( - nn.ConvTranspose1d( - layer_in_channels, - layer_out_channels, - layer_filter_size, - stride=layer_stride, - padding=layer_padding, - output_padding=layer_output_padding, - bias=True, - ) - ), - ResidualStack(channels=layer_out_channels, num_res_blocks=num_res_blocks, kernel_size=res_kernel), - ] - - layers += [nn.LeakyReLU(act_slope)] - - # final layer - layers += [ - nn.ReflectionPad1d(base_padding), - weight_norm(nn.Conv1d(layer_out_channels, out_channels, proj_kernel, stride=1, bias=True)), - nn.Tanh(), - ] - self.layers = nn.Sequential(*layers) - - def forward(self, c): - return self.layers(c) - - def inference(self, c): - c = c.to(self.layers[1].weight.device) - c = torch.nn.functional.pad(c, (self.inference_padding, self.inference_padding), "replicate") - return self.layers(c) - - def remove_weight_norm(self): - for _, layer in enumerate(self.layers): - if len(layer.state_dict()) != 0: - try: - nn.utils.remove_weight_norm(layer) - except ValueError: - layer.remove_weight_norm() - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - self.remove_weight_norm() diff --git a/TTS/TTS/vocoder/models/melgan_multiscale_discriminator.py b/TTS/TTS/vocoder/models/melgan_multiscale_discriminator.py deleted file mode 100644 index b4909f37c0c91c6fee8bb0baab98a8662039dea1..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/melgan_multiscale_discriminator.py +++ /dev/null @@ -1,50 +0,0 @@ -from torch import nn - -from TTS.vocoder.models.melgan_discriminator import MelganDiscriminator - - -class MelganMultiscaleDiscriminator(nn.Module): - def __init__( - self, - in_channels=1, - out_channels=1, - num_scales=3, - kernel_sizes=(5, 3), - base_channels=16, - max_channels=1024, - downsample_factors=(4, 4, 4), - pooling_kernel_size=4, - pooling_stride=2, - pooling_padding=2, - groups_denominator=4, - ): - super().__init__() - - self.discriminators = nn.ModuleList( - [ - MelganDiscriminator( - in_channels=in_channels, - out_channels=out_channels, - kernel_sizes=kernel_sizes, - base_channels=base_channels, - max_channels=max_channels, - downsample_factors=downsample_factors, - groups_denominator=groups_denominator, - ) - for _ in range(num_scales) - ] - ) - - self.pooling = nn.AvgPool1d( - kernel_size=pooling_kernel_size, stride=pooling_stride, padding=pooling_padding, count_include_pad=False - ) - - def forward(self, x): - scores = [] - feats = [] - for disc in self.discriminators: - score, feat = disc(x) - scores.append(score) - feats.append(feat) - x = self.pooling(x) - return scores, feats diff --git a/TTS/TTS/vocoder/models/multiband_melgan_generator.py b/TTS/TTS/vocoder/models/multiband_melgan_generator.py deleted file mode 100644 index 25d6590659cf5863176eb6609c7609b0e1b28d12..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/multiband_melgan_generator.py +++ /dev/null @@ -1,41 +0,0 @@ -import torch - -from TTS.vocoder.layers.pqmf import PQMF -from TTS.vocoder.models.melgan_generator import MelganGenerator - - -class MultibandMelganGenerator(MelganGenerator): - def __init__( - self, - in_channels=80, - out_channels=4, - proj_kernel=7, - base_channels=384, - upsample_factors=(2, 8, 2, 2), - res_kernel=3, - num_res_blocks=3, - ): - super().__init__( - in_channels=in_channels, - out_channels=out_channels, - proj_kernel=proj_kernel, - base_channels=base_channels, - upsample_factors=upsample_factors, - res_kernel=res_kernel, - num_res_blocks=num_res_blocks, - ) - self.pqmf_layer = PQMF(N=4, taps=62, cutoff=0.15, beta=9.0) - - def pqmf_analysis(self, x): - return self.pqmf_layer.analysis(x) - - def pqmf_synthesis(self, x): - return self.pqmf_layer.synthesis(x) - - @torch.no_grad() - def inference(self, cond_features): - cond_features = cond_features.to(self.layers[1].weight.device) - cond_features = torch.nn.functional.pad( - cond_features, (self.inference_padding, self.inference_padding), "replicate" - ) - return self.pqmf_synthesis(self.layers(cond_features)) diff --git a/TTS/TTS/vocoder/models/parallel_wavegan_discriminator.py b/TTS/TTS/vocoder/models/parallel_wavegan_discriminator.py deleted file mode 100644 index adf1bdaea040e99dd66829b9b8ed184146e155cb..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/parallel_wavegan_discriminator.py +++ /dev/null @@ -1,186 +0,0 @@ -import math - -import torch -from torch import nn - -from TTS.vocoder.layers.parallel_wavegan import ResidualBlock - - -class ParallelWaveganDiscriminator(nn.Module): - """PWGAN discriminator as in https://arxiv.org/abs/1910.11480. - It classifies each audio window real/fake and returns a sequence - of predictions. - It is a stack of convolutional blocks with dilation. - """ - - # pylint: disable=dangerous-default-value - def __init__( - self, - in_channels=1, - out_channels=1, - kernel_size=3, - num_layers=10, - conv_channels=64, - dilation_factor=1, - nonlinear_activation="LeakyReLU", - nonlinear_activation_params={"negative_slope": 0.2}, - bias=True, - ): - super().__init__() - assert (kernel_size - 1) % 2 == 0, " [!] does not support even number kernel size." - assert dilation_factor > 0, " [!] dilation factor must be > 0." - self.conv_layers = nn.ModuleList() - conv_in_channels = in_channels - for i in range(num_layers - 1): - if i == 0: - dilation = 1 - else: - dilation = i if dilation_factor == 1 else dilation_factor**i - conv_in_channels = conv_channels - padding = (kernel_size - 1) // 2 * dilation - conv_layer = [ - nn.Conv1d( - conv_in_channels, - conv_channels, - kernel_size=kernel_size, - padding=padding, - dilation=dilation, - bias=bias, - ), - getattr(nn, nonlinear_activation)(inplace=True, **nonlinear_activation_params), - ] - self.conv_layers += conv_layer - padding = (kernel_size - 1) // 2 - last_conv_layer = nn.Conv1d(conv_in_channels, out_channels, kernel_size=kernel_size, padding=padding, bias=bias) - self.conv_layers += [last_conv_layer] - self.apply_weight_norm() - - def forward(self, x): - """ - x : (B, 1, T). - Returns: - Tensor: (B, 1, T) - """ - for f in self.conv_layers: - x = f(x) - return x - - def apply_weight_norm(self): - def _apply_weight_norm(m): - if isinstance(m, (torch.nn.Conv1d, torch.nn.Conv2d)): - torch.nn.utils.weight_norm(m) - - self.apply(_apply_weight_norm) - - def remove_weight_norm(self): - def _remove_weight_norm(m): - try: - # print(f"Weight norm is removed from {m}.") - nn.utils.remove_weight_norm(m) - except ValueError: # this module didn't have weight norm - return - - self.apply(_remove_weight_norm) - - -class ResidualParallelWaveganDiscriminator(nn.Module): - # pylint: disable=dangerous-default-value - def __init__( - self, - in_channels=1, - out_channels=1, - kernel_size=3, - num_layers=30, - stacks=3, - res_channels=64, - gate_channels=128, - skip_channels=64, - dropout=0.0, - bias=True, - nonlinear_activation="LeakyReLU", - nonlinear_activation_params={"negative_slope": 0.2}, - ): - super().__init__() - assert (kernel_size - 1) % 2 == 0, "Not support even number kernel size." - - self.in_channels = in_channels - self.out_channels = out_channels - self.num_layers = num_layers - self.stacks = stacks - self.kernel_size = kernel_size - self.res_factor = math.sqrt(1.0 / num_layers) - - # check the number of num_layers and stacks - assert num_layers % stacks == 0 - layers_per_stack = num_layers // stacks - - # define first convolution - self.first_conv = nn.Sequential( - nn.Conv1d(in_channels, res_channels, kernel_size=1, padding=0, dilation=1, bias=True), - getattr(nn, nonlinear_activation)(inplace=True, **nonlinear_activation_params), - ) - - # define residual blocks - self.conv_layers = nn.ModuleList() - for layer in range(num_layers): - dilation = 2 ** (layer % layers_per_stack) - conv = ResidualBlock( - kernel_size=kernel_size, - res_channels=res_channels, - gate_channels=gate_channels, - skip_channels=skip_channels, - aux_channels=-1, - dilation=dilation, - dropout=dropout, - bias=bias, - use_causal_conv=False, - ) - self.conv_layers += [conv] - - # define output layers - self.last_conv_layers = nn.ModuleList( - [ - getattr(nn, nonlinear_activation)(inplace=True, **nonlinear_activation_params), - nn.Conv1d(skip_channels, skip_channels, kernel_size=1, padding=0, dilation=1, bias=True), - getattr(nn, nonlinear_activation)(inplace=True, **nonlinear_activation_params), - nn.Conv1d(skip_channels, out_channels, kernel_size=1, padding=0, dilation=1, bias=True), - ] - ) - - # apply weight norm - self.apply_weight_norm() - - def forward(self, x): - """ - x: (B, 1, T). - """ - x = self.first_conv(x) - - skips = 0 - for f in self.conv_layers: - x, h = f(x, None) - skips += h - skips *= self.res_factor - - # apply final layers - x = skips - for f in self.last_conv_layers: - x = f(x) - return x - - def apply_weight_norm(self): - def _apply_weight_norm(m): - if isinstance(m, (torch.nn.Conv1d, torch.nn.Conv2d)): - torch.nn.utils.weight_norm(m) - - self.apply(_apply_weight_norm) - - def remove_weight_norm(self): - def _remove_weight_norm(m): - try: - print(f"Weight norm is removed from {m}.") - nn.utils.remove_weight_norm(m) - except ValueError: # this module didn't have weight norm - return - - self.apply(_remove_weight_norm) diff --git a/TTS/TTS/vocoder/models/parallel_wavegan_generator.py b/TTS/TTS/vocoder/models/parallel_wavegan_generator.py deleted file mode 100644 index 5587fb7264d8ab98b3d5fa8086268c0e06aefc86..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/parallel_wavegan_generator.py +++ /dev/null @@ -1,163 +0,0 @@ -import math - -import numpy as np -import torch - -from TTS.utils.io import load_fsspec -from TTS.vocoder.layers.parallel_wavegan import ResidualBlock -from TTS.vocoder.layers.upsample import ConvUpsample - - -class ParallelWaveganGenerator(torch.nn.Module): - """PWGAN generator as in https://arxiv.org/pdf/1910.11480.pdf. - It is similar to WaveNet with no causal convolution. - It is conditioned on an aux feature (spectrogram) to generate - an output waveform from an input noise. - """ - - # pylint: disable=dangerous-default-value - def __init__( - self, - in_channels=1, - out_channels=1, - kernel_size=3, - num_res_blocks=30, - stacks=3, - res_channels=64, - gate_channels=128, - skip_channels=64, - aux_channels=80, - dropout=0.0, - bias=True, - use_weight_norm=True, - upsample_factors=[4, 4, 4, 4], - inference_padding=2, - ): - super().__init__() - self.in_channels = in_channels - self.out_channels = out_channels - self.aux_channels = aux_channels - self.num_res_blocks = num_res_blocks - self.stacks = stacks - self.kernel_size = kernel_size - self.upsample_factors = upsample_factors - self.upsample_scale = np.prod(upsample_factors) - self.inference_padding = inference_padding - self.use_weight_norm = use_weight_norm - - # check the number of layers and stacks - assert num_res_blocks % stacks == 0 - layers_per_stack = num_res_blocks // stacks - - # define first convolution - self.first_conv = torch.nn.Conv1d(in_channels, res_channels, kernel_size=1, bias=True) - - # define conv + upsampling network - self.upsample_net = ConvUpsample(upsample_factors=upsample_factors) - - # define residual blocks - self.conv_layers = torch.nn.ModuleList() - for layer in range(num_res_blocks): - dilation = 2 ** (layer % layers_per_stack) - conv = ResidualBlock( - kernel_size=kernel_size, - res_channels=res_channels, - gate_channels=gate_channels, - skip_channels=skip_channels, - aux_channels=aux_channels, - dilation=dilation, - dropout=dropout, - bias=bias, - ) - self.conv_layers += [conv] - - # define output layers - self.last_conv_layers = torch.nn.ModuleList( - [ - torch.nn.ReLU(inplace=True), - torch.nn.Conv1d(skip_channels, skip_channels, kernel_size=1, bias=True), - torch.nn.ReLU(inplace=True), - torch.nn.Conv1d(skip_channels, out_channels, kernel_size=1, bias=True), - ] - ) - - # apply weight norm - if use_weight_norm: - self.apply_weight_norm() - - def forward(self, c): - """ - c: (B, C ,T'). - o: Output tensor (B, out_channels, T) - """ - # random noise - x = torch.randn([c.shape[0], 1, c.shape[2] * self.upsample_scale]) - x = x.to(self.first_conv.bias.device) - - # perform upsampling - if c is not None and self.upsample_net is not None: - c = self.upsample_net(c) - assert ( - c.shape[-1] == x.shape[-1] - ), f" [!] Upsampling scale does not match the expected output. {c.shape} vs {x.shape}" - - # encode to hidden representation - x = self.first_conv(x) - skips = 0 - for f in self.conv_layers: - x, h = f(x, c) - skips += h - skips *= math.sqrt(1.0 / len(self.conv_layers)) - - # apply final layers - x = skips - for f in self.last_conv_layers: - x = f(x) - - return x - - @torch.no_grad() - def inference(self, c): - c = c.to(self.first_conv.weight.device) - c = torch.nn.functional.pad(c, (self.inference_padding, self.inference_padding), "replicate") - return self.forward(c) - - def remove_weight_norm(self): - def _remove_weight_norm(m): - try: - # print(f"Weight norm is removed from {m}.") - torch.nn.utils.remove_weight_norm(m) - except ValueError: # this module didn't have weight norm - return - - self.apply(_remove_weight_norm) - - def apply_weight_norm(self): - def _apply_weight_norm(m): - if isinstance(m, (torch.nn.Conv1d, torch.nn.Conv2d)): - torch.nn.utils.weight_norm(m) - # print(f"Weight norm is applied to {m}.") - - self.apply(_apply_weight_norm) - - @staticmethod - def _get_receptive_field_size(layers, stacks, kernel_size, dilation=lambda x: 2**x): - assert layers % stacks == 0 - layers_per_cycle = layers // stacks - dilations = [dilation(i % layers_per_cycle) for i in range(layers)] - return (kernel_size - 1) * sum(dilations) + 1 - - @property - def receptive_field_size(self): - return self._get_receptive_field_size(self.layers, self.stacks, self.kernel_size) - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - if self.use_weight_norm: - self.remove_weight_norm() diff --git a/TTS/TTS/vocoder/models/random_window_discriminator.py b/TTS/TTS/vocoder/models/random_window_discriminator.py deleted file mode 100644 index 79b68e9780ff1703b0f4955e37fe93c02d97ea09..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/random_window_discriminator.py +++ /dev/null @@ -1,203 +0,0 @@ -import numpy as np -from torch import nn - - -class GBlock(nn.Module): - def __init__(self, in_channels, cond_channels, downsample_factor): - super().__init__() - - self.in_channels = in_channels - self.cond_channels = cond_channels - self.downsample_factor = downsample_factor - - self.start = nn.Sequential( - nn.AvgPool1d(downsample_factor, stride=downsample_factor), - nn.ReLU(), - nn.Conv1d(in_channels, in_channels * 2, kernel_size=3, padding=1), - ) - self.lc_conv1d = nn.Conv1d(cond_channels, in_channels * 2, kernel_size=1) - self.end = nn.Sequential( - nn.ReLU(), nn.Conv1d(in_channels * 2, in_channels * 2, kernel_size=3, dilation=2, padding=2) - ) - self.residual = nn.Sequential( - nn.Conv1d(in_channels, in_channels * 2, kernel_size=1), - nn.AvgPool1d(downsample_factor, stride=downsample_factor), - ) - - def forward(self, inputs, conditions): - outputs = self.start(inputs) + self.lc_conv1d(conditions) - outputs = self.end(outputs) - residual_outputs = self.residual(inputs) - outputs = outputs + residual_outputs - - return outputs - - -class DBlock(nn.Module): - def __init__(self, in_channels, out_channels, downsample_factor): - super().__init__() - - self.in_channels = in_channels - self.downsample_factor = downsample_factor - self.out_channels = out_channels - - self.donwsample_layer = nn.AvgPool1d(downsample_factor, stride=downsample_factor) - self.layers = nn.Sequential( - nn.ReLU(), - nn.Conv1d(in_channels, out_channels, kernel_size=3, padding=1), - nn.ReLU(), - nn.Conv1d(out_channels, out_channels, kernel_size=3, dilation=2, padding=2), - ) - self.residual = nn.Sequential( - nn.Conv1d(in_channels, out_channels, kernel_size=1), - ) - - def forward(self, inputs): - if self.downsample_factor > 1: - outputs = self.layers(self.donwsample_layer(inputs)) + self.donwsample_layer(self.residual(inputs)) - else: - outputs = self.layers(inputs) + self.residual(inputs) - return outputs - - -class ConditionalDiscriminator(nn.Module): - def __init__(self, in_channels, cond_channels, downsample_factors=(2, 2, 2), out_channels=(128, 256)): - super().__init__() - - assert len(downsample_factors) == len(out_channels) + 1 - - self.in_channels = in_channels - self.cond_channels = cond_channels - self.downsample_factors = downsample_factors - self.out_channels = out_channels - - self.pre_cond_layers = nn.ModuleList() - self.post_cond_layers = nn.ModuleList() - - # layers before condition features - self.pre_cond_layers += [DBlock(in_channels, 64, 1)] - in_channels = 64 - for i, channel in enumerate(out_channels): - self.pre_cond_layers.append(DBlock(in_channels, channel, downsample_factors[i])) - in_channels = channel - - # condition block - self.cond_block = GBlock(in_channels, cond_channels, downsample_factors[-1]) - - # layers after condition block - self.post_cond_layers += [ - DBlock(in_channels * 2, in_channels * 2, 1), - DBlock(in_channels * 2, in_channels * 2, 1), - nn.AdaptiveAvgPool1d(1), - nn.Conv1d(in_channels * 2, 1, kernel_size=1), - ] - - def forward(self, inputs, conditions): - batch_size = inputs.size()[0] - outputs = inputs.view(batch_size, self.in_channels, -1) - for layer in self.pre_cond_layers: - outputs = layer(outputs) - outputs = self.cond_block(outputs, conditions) - for layer in self.post_cond_layers: - outputs = layer(outputs) - - return outputs - - -class UnconditionalDiscriminator(nn.Module): - def __init__(self, in_channels, base_channels=64, downsample_factors=(8, 4), out_channels=(128, 256)): - super().__init__() - - self.downsample_factors = downsample_factors - self.in_channels = in_channels - self.downsample_factors = downsample_factors - self.out_channels = out_channels - - self.layers = nn.ModuleList() - self.layers += [DBlock(self.in_channels, base_channels, 1)] - in_channels = base_channels - for i, factor in enumerate(downsample_factors): - self.layers.append(DBlock(in_channels, out_channels[i], factor)) - in_channels *= 2 - self.layers += [ - DBlock(in_channels, in_channels, 1), - DBlock(in_channels, in_channels, 1), - nn.AdaptiveAvgPool1d(1), - nn.Conv1d(in_channels, 1, kernel_size=1), - ] - - def forward(self, inputs): - batch_size = inputs.size()[0] - outputs = inputs.view(batch_size, self.in_channels, -1) - for layer in self.layers: - outputs = layer(outputs) - return outputs - - -class RandomWindowDiscriminator(nn.Module): - """Random Window Discriminator as described in - http://arxiv.org/abs/1909.11646""" - - def __init__( - self, - cond_channels, - hop_length, - uncond_disc_donwsample_factors=(8, 4), - cond_disc_downsample_factors=((8, 4, 2, 2, 2), (8, 4, 2, 2), (8, 4, 2), (8, 4), (4, 2, 2)), - cond_disc_out_channels=((128, 128, 256, 256), (128, 256, 256), (128, 256), (256,), (128, 256)), - window_sizes=(512, 1024, 2048, 4096, 8192), - ): - super().__init__() - self.cond_channels = cond_channels - self.window_sizes = window_sizes - self.hop_length = hop_length - self.base_window_size = self.hop_length * 2 - self.ks = [ws // self.base_window_size for ws in window_sizes] - - # check arguments - assert len(cond_disc_downsample_factors) == len(cond_disc_out_channels) == len(window_sizes) - for ws in window_sizes: - assert ws % hop_length == 0 - - for idx, cf in enumerate(cond_disc_downsample_factors): - assert np.prod(cf) == hop_length // self.ks[idx] - - # define layers - self.unconditional_discriminators = nn.ModuleList([]) - for k in self.ks: - layer = UnconditionalDiscriminator( - in_channels=k, base_channels=64, downsample_factors=uncond_disc_donwsample_factors - ) - self.unconditional_discriminators.append(layer) - - self.conditional_discriminators = nn.ModuleList([]) - for idx, k in enumerate(self.ks): - layer = ConditionalDiscriminator( - in_channels=k, - cond_channels=cond_channels, - downsample_factors=cond_disc_downsample_factors[idx], - out_channels=cond_disc_out_channels[idx], - ) - self.conditional_discriminators.append(layer) - - def forward(self, x, c): - scores = [] - feats = [] - # unconditional pass - for window_size, layer in zip(self.window_sizes, self.unconditional_discriminators): - index = np.random.randint(x.shape[-1] - window_size) - - score = layer(x[:, :, index : index + window_size]) - scores.append(score) - - # conditional pass - for window_size, layer in zip(self.window_sizes, self.conditional_discriminators): - frame_size = window_size // self.hop_length - lc_index = np.random.randint(c.shape[-1] - frame_size) - sample_index = lc_index * self.hop_length - x_sub = x[:, :, sample_index : (lc_index + frame_size) * self.hop_length] - c_sub = c[:, :, lc_index : lc_index + frame_size] - - score = layer(x_sub, c_sub) - scores.append(score) - return scores, feats diff --git a/TTS/TTS/vocoder/models/univnet_discriminator.py b/TTS/TTS/vocoder/models/univnet_discriminator.py deleted file mode 100644 index 4c09520c2a218771d1f73ee98635c528d815fcf1..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/univnet_discriminator.py +++ /dev/null @@ -1,94 +0,0 @@ -import torch -import torch.nn.functional as F -from torch import nn -from torch.nn.utils import spectral_norm, weight_norm - -from TTS.utils.audio.torch_transforms import TorchSTFT -from TTS.vocoder.models.hifigan_discriminator import MultiPeriodDiscriminator - -LRELU_SLOPE = 0.1 - - -class SpecDiscriminator(nn.Module): - """docstring for Discriminator.""" - - def __init__(self, fft_size=1024, hop_length=120, win_length=600, use_spectral_norm=False): - super().__init__() - norm_f = weight_norm if use_spectral_norm is False else spectral_norm - self.fft_size = fft_size - self.hop_length = hop_length - self.win_length = win_length - self.stft = TorchSTFT(fft_size, hop_length, win_length) - self.discriminators = nn.ModuleList( - [ - norm_f(nn.Conv2d(1, 32, kernel_size=(3, 9), padding=(1, 4))), - norm_f(nn.Conv2d(32, 32, kernel_size=(3, 9), stride=(1, 2), padding=(1, 4))), - norm_f(nn.Conv2d(32, 32, kernel_size=(3, 9), stride=(1, 2), padding=(1, 4))), - norm_f(nn.Conv2d(32, 32, kernel_size=(3, 9), stride=(1, 2), padding=(1, 4))), - norm_f(nn.Conv2d(32, 32, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))), - ] - ) - - self.out = norm_f(nn.Conv2d(32, 1, 3, 1, 1)) - - def forward(self, y): - fmap = [] - with torch.no_grad(): - y = y.squeeze(1) - y = self.stft(y) - y = y.unsqueeze(1) - for _, d in enumerate(self.discriminators): - y = d(y) - y = F.leaky_relu(y, LRELU_SLOPE) - fmap.append(y) - - y = self.out(y) - fmap.append(y) - - return torch.flatten(y, 1, -1), fmap - - -class MultiResSpecDiscriminator(torch.nn.Module): - def __init__( # pylint: disable=dangerous-default-value - self, fft_sizes=[1024, 2048, 512], hop_sizes=[120, 240, 50], win_lengths=[600, 1200, 240], window="hann_window" - ): - super().__init__() - self.discriminators = nn.ModuleList( - [ - SpecDiscriminator(fft_sizes[0], hop_sizes[0], win_lengths[0], window), - SpecDiscriminator(fft_sizes[1], hop_sizes[1], win_lengths[1], window), - SpecDiscriminator(fft_sizes[2], hop_sizes[2], win_lengths[2], window), - ] - ) - - def forward(self, x): - scores = [] - feats = [] - for d in self.discriminators: - score, feat = d(x) - scores.append(score) - feats.append(feat) - - return scores, feats - - -class UnivnetDiscriminator(nn.Module): - """Univnet discriminator wrapping MPD and MSD.""" - - def __init__(self): - super().__init__() - self.mpd = MultiPeriodDiscriminator() - self.msd = MultiResSpecDiscriminator() - - def forward(self, x): - """ - Args: - x (Tensor): input waveform. - - Returns: - List[Tensor]: discriminator scores. - List[List[Tensor]]: list of list of features from each layers of each discriminator. - """ - scores, feats = self.mpd(x) - scores_, feats_ = self.msd(x) - return scores + scores_, feats + feats_ diff --git a/TTS/TTS/vocoder/models/univnet_generator.py b/TTS/TTS/vocoder/models/univnet_generator.py deleted file mode 100644 index 2ee28c7b85852c6b15df28907b6fd1195f3218cd..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/univnet_generator.py +++ /dev/null @@ -1,156 +0,0 @@ -from typing import List - -import numpy as np -import torch -import torch.nn.functional as F - -from TTS.vocoder.layers.lvc_block import LVCBlock - -LRELU_SLOPE = 0.1 - - -class UnivnetGenerator(torch.nn.Module): - def __init__( - self, - in_channels: int, - out_channels: int, - hidden_channels: int, - cond_channels: int, - upsample_factors: List[int], - lvc_layers_each_block: int, - lvc_kernel_size: int, - kpnet_hidden_channels: int, - kpnet_conv_size: int, - dropout: float, - use_weight_norm=True, - ): - """Univnet Generator network. - - Paper: https://arxiv.org/pdf/2106.07889.pdf - - Args: - in_channels (int): Number of input tensor channels. - out_channels (int): Number of channels of the output tensor. - hidden_channels (int): Number of hidden network channels. - cond_channels (int): Number of channels of the conditioning tensors. - upsample_factors (List[int]): List of uplsample factors for the upsampling layers. - lvc_layers_each_block (int): Number of LVC layers in each block. - lvc_kernel_size (int): Kernel size of the LVC layers. - kpnet_hidden_channels (int): Number of hidden channels in the key-point network. - kpnet_conv_size (int): Number of convolution channels in the key-point network. - dropout (float): Dropout rate. - use_weight_norm (bool, optional): Enable/disable weight norm. Defaults to True. - """ - - super().__init__() - self.in_channels = in_channels - self.out_channels = out_channels - self.cond_channels = cond_channels - self.upsample_scale = np.prod(upsample_factors) - self.lvc_block_nums = len(upsample_factors) - - # define first convolution - self.first_conv = torch.nn.Conv1d( - in_channels, hidden_channels, kernel_size=7, padding=(7 - 1) // 2, dilation=1, bias=True - ) - - # define residual blocks - self.lvc_blocks = torch.nn.ModuleList() - cond_hop_length = 1 - for n in range(self.lvc_block_nums): - cond_hop_length = cond_hop_length * upsample_factors[n] - lvcb = LVCBlock( - in_channels=hidden_channels, - cond_channels=cond_channels, - upsample_ratio=upsample_factors[n], - conv_layers=lvc_layers_each_block, - conv_kernel_size=lvc_kernel_size, - cond_hop_length=cond_hop_length, - kpnet_hidden_channels=kpnet_hidden_channels, - kpnet_conv_size=kpnet_conv_size, - kpnet_dropout=dropout, - ) - self.lvc_blocks += [lvcb] - - # define output layers - self.last_conv_layers = torch.nn.ModuleList( - [ - torch.nn.Conv1d( - hidden_channels, out_channels, kernel_size=7, padding=(7 - 1) // 2, dilation=1, bias=True - ), - ] - ) - - # apply weight norm - if use_weight_norm: - self.apply_weight_norm() - - def forward(self, c): - """Calculate forward propagation. - Args: - c (Tensor): Local conditioning auxiliary features (B, C ,T'). - Returns: - Tensor: Output tensor (B, out_channels, T) - """ - # random noise - x = torch.randn([c.shape[0], self.in_channels, c.shape[2]]) - x = x.to(self.first_conv.bias.device) - x = self.first_conv(x) - - for n in range(self.lvc_block_nums): - x = self.lvc_blocks[n](x, c) - - # apply final layers - for f in self.last_conv_layers: - x = F.leaky_relu(x, LRELU_SLOPE) - x = f(x) - x = torch.tanh(x) - return x - - def remove_weight_norm(self): - """Remove weight normalization module from all of the layers.""" - - def _remove_weight_norm(m): - try: - # print(f"Weight norm is removed from {m}.") - torch.nn.utils.remove_weight_norm(m) - except ValueError: # this module didn't have weight norm - return - - self.apply(_remove_weight_norm) - - def apply_weight_norm(self): - """Apply weight normalization module from all of the layers.""" - - def _apply_weight_norm(m): - if isinstance(m, (torch.nn.Conv1d, torch.nn.Conv2d)): - torch.nn.utils.weight_norm(m) - # print(f"Weight norm is applied to {m}.") - - self.apply(_apply_weight_norm) - - @staticmethod - def _get_receptive_field_size(layers, stacks, kernel_size, dilation=lambda x: 2**x): - assert layers % stacks == 0 - layers_per_cycle = layers // stacks - dilations = [dilation(i % layers_per_cycle) for i in range(layers)] - return (kernel_size - 1) * sum(dilations) + 1 - - @property - def receptive_field_size(self): - """Return receptive field size.""" - return self._get_receptive_field_size(self.layers, self.stacks, self.kernel_size) - - @torch.no_grad() - def inference(self, c): - """Perform inference. - Args: - c (Tensor): Local conditioning auxiliary features :math:`(B, C, T)`. - Returns: - Tensor: Output tensor (T, out_channels) - """ - x = torch.randn([c.shape[0], self.in_channels, c.shape[2]]) - x = x.to(self.first_conv.bias.device) - - c = c.to(next(self.parameters())) - return self.forward(c) diff --git a/TTS/TTS/vocoder/models/wavegrad.py b/TTS/TTS/vocoder/models/wavegrad.py deleted file mode 100644 index a0f9221a8f64fb9953527a6b859d114aabb702d2..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/wavegrad.py +++ /dev/null @@ -1,344 +0,0 @@ -from dataclasses import dataclass, field -from typing import Dict, List, Tuple - -import numpy as np -import torch -from coqpit import Coqpit -from torch import nn -from torch.nn.utils import weight_norm -from torch.utils.data import DataLoader -from torch.utils.data.distributed import DistributedSampler -from trainer.trainer_utils import get_optimizer, get_scheduler - -from TTS.utils.io import load_fsspec -from TTS.vocoder.datasets import WaveGradDataset -from TTS.vocoder.layers.wavegrad import Conv1d, DBlock, FiLM, UBlock -from TTS.vocoder.models.base_vocoder import BaseVocoder -from TTS.vocoder.utils.generic_utils import plot_results - - -@dataclass -class WavegradArgs(Coqpit): - in_channels: int = 80 - out_channels: int = 1 - use_weight_norm: bool = False - y_conv_channels: int = 32 - x_conv_channels: int = 768 - dblock_out_channels: List[int] = field(default_factory=lambda: [128, 128, 256, 512]) - ublock_out_channels: List[int] = field(default_factory=lambda: [512, 512, 256, 128, 128]) - upsample_factors: List[int] = field(default_factory=lambda: [4, 4, 4, 2, 2]) - upsample_dilations: List[List[int]] = field( - default_factory=lambda: [[1, 2, 1, 2], [1, 2, 1, 2], [1, 2, 4, 8], [1, 2, 4, 8], [1, 2, 4, 8]] - ) - - -class Wavegrad(BaseVocoder): - """🐸 🌊 WaveGrad 🌊 model. - Paper - https://arxiv.org/abs/2009.00713 - - Examples: - Initializing the model. - - >>> from TTS.vocoder.configs import WavegradConfig - >>> config = WavegradConfig() - >>> model = Wavegrad(config) - - Paper Abstract: - This paper introduces WaveGrad, a conditional model for waveform generation which estimates gradients of the - data density. The model is built on prior work on score matching and diffusion probabilistic models. It starts - from a Gaussian white noise signal and iteratively refines the signal via a gradient-based sampler conditioned - on the mel-spectrogram. WaveGrad offers a natural way to trade inference speed for sample quality by adjusting - the number of refinement steps, and bridges the gap between non-autoregressive and autoregressive models in - terms of audio quality. We find that it can generate high fidelity audio samples using as few as six iterations. - Experiments reveal WaveGrad to generate high fidelity audio, outperforming adversarial non-autoregressive - baselines and matching a strong likelihood-based autoregressive baseline using fewer sequential operations. - Audio samples are available at this https URL. - """ - - # pylint: disable=dangerous-default-value - def __init__(self, config: Coqpit): - super().__init__(config) - self.config = config - self.use_weight_norm = config.model_params.use_weight_norm - self.hop_len = np.prod(config.model_params.upsample_factors) - self.noise_level = None - self.num_steps = None - self.beta = None - self.alpha = None - self.alpha_hat = None - self.c1 = None - self.c2 = None - self.sigma = None - - # dblocks - self.y_conv = Conv1d(1, config.model_params.y_conv_channels, 5, padding=2) - self.dblocks = nn.ModuleList([]) - ic = config.model_params.y_conv_channels - for oc, df in zip(config.model_params.dblock_out_channels, reversed(config.model_params.upsample_factors)): - self.dblocks.append(DBlock(ic, oc, df)) - ic = oc - - # film - self.film = nn.ModuleList([]) - ic = config.model_params.y_conv_channels - for oc in reversed(config.model_params.ublock_out_channels): - self.film.append(FiLM(ic, oc)) - ic = oc - - # ublocksn - self.ublocks = nn.ModuleList([]) - ic = config.model_params.x_conv_channels - for oc, uf, ud in zip( - config.model_params.ublock_out_channels, - config.model_params.upsample_factors, - config.model_params.upsample_dilations, - ): - self.ublocks.append(UBlock(ic, oc, uf, ud)) - ic = oc - - self.x_conv = Conv1d(config.model_params.in_channels, config.model_params.x_conv_channels, 3, padding=1) - self.out_conv = Conv1d(oc, config.model_params.out_channels, 3, padding=1) - - if config.model_params.use_weight_norm: - self.apply_weight_norm() - - def forward(self, x, spectrogram, noise_scale): - shift_and_scale = [] - - x = self.y_conv(x) - shift_and_scale.append(self.film[0](x, noise_scale)) - - for film, layer in zip(self.film[1:], self.dblocks): - x = layer(x) - shift_and_scale.append(film(x, noise_scale)) - - x = self.x_conv(spectrogram) - for layer, (film_shift, film_scale) in zip(self.ublocks, reversed(shift_and_scale)): - x = layer(x, film_shift, film_scale) - x = self.out_conv(x) - return x - - def load_noise_schedule(self, path): - beta = np.load(path, allow_pickle=True).item()["beta"] # pylint: disable=unexpected-keyword-arg - self.compute_noise_level(beta) - - @torch.no_grad() - def inference(self, x, y_n=None): - """ - Shapes: - x: :math:`[B, C , T]` - y_n: :math:`[B, 1, T]` - """ - if y_n is None: - y_n = torch.randn(x.shape[0], 1, self.hop_len * x.shape[-1]) - else: - y_n = torch.FloatTensor(y_n).unsqueeze(0).unsqueeze(0) - y_n = y_n.type_as(x) - sqrt_alpha_hat = self.noise_level.to(x) - for n in range(len(self.alpha) - 1, -1, -1): - y_n = self.c1[n] * (y_n - self.c2[n] * self.forward(y_n, x, sqrt_alpha_hat[n].repeat(x.shape[0]))) - if n > 0: - z = torch.randn_like(y_n) - y_n += self.sigma[n - 1] * z - y_n.clamp_(-1.0, 1.0) - return y_n - - def compute_y_n(self, y_0): - """Compute noisy audio based on noise schedule""" - self.noise_level = self.noise_level.to(y_0) - if len(y_0.shape) == 3: - y_0 = y_0.squeeze(1) - s = torch.randint(0, self.num_steps - 1, [y_0.shape[0]]) - l_a, l_b = self.noise_level[s], self.noise_level[s + 1] - noise_scale = l_a + torch.rand(y_0.shape[0]).to(y_0) * (l_b - l_a) - noise_scale = noise_scale.unsqueeze(1) - noise = torch.randn_like(y_0) - noisy_audio = noise_scale * y_0 + (1.0 - noise_scale**2) ** 0.5 * noise - return noise.unsqueeze(1), noisy_audio.unsqueeze(1), noise_scale[:, 0] - - def compute_noise_level(self, beta): - """Compute noise schedule parameters""" - self.num_steps = len(beta) - alpha = 1 - beta - alpha_hat = np.cumprod(alpha) - noise_level = np.concatenate([[1.0], alpha_hat**0.5], axis=0) - noise_level = alpha_hat**0.5 - - # pylint: disable=not-callable - self.beta = torch.tensor(beta.astype(np.float32)) - self.alpha = torch.tensor(alpha.astype(np.float32)) - self.alpha_hat = torch.tensor(alpha_hat.astype(np.float32)) - self.noise_level = torch.tensor(noise_level.astype(np.float32)) - - self.c1 = 1 / self.alpha**0.5 - self.c2 = (1 - self.alpha) / (1 - self.alpha_hat) ** 0.5 - self.sigma = ((1.0 - self.alpha_hat[:-1]) / (1.0 - self.alpha_hat[1:]) * self.beta[1:]) ** 0.5 - - def remove_weight_norm(self): - for _, layer in enumerate(self.dblocks): - if len(layer.state_dict()) != 0: - try: - nn.utils.remove_weight_norm(layer) - except ValueError: - layer.remove_weight_norm() - - for _, layer in enumerate(self.film): - if len(layer.state_dict()) != 0: - try: - nn.utils.remove_weight_norm(layer) - except ValueError: - layer.remove_weight_norm() - - for _, layer in enumerate(self.ublocks): - if len(layer.state_dict()) != 0: - try: - nn.utils.remove_weight_norm(layer) - except ValueError: - layer.remove_weight_norm() - - nn.utils.remove_weight_norm(self.x_conv) - nn.utils.remove_weight_norm(self.out_conv) - nn.utils.remove_weight_norm(self.y_conv) - - def apply_weight_norm(self): - for _, layer in enumerate(self.dblocks): - if len(layer.state_dict()) != 0: - layer.apply_weight_norm() - - for _, layer in enumerate(self.film): - if len(layer.state_dict()) != 0: - layer.apply_weight_norm() - - for _, layer in enumerate(self.ublocks): - if len(layer.state_dict()) != 0: - layer.apply_weight_norm() - - self.x_conv = weight_norm(self.x_conv) - self.out_conv = weight_norm(self.out_conv) - self.y_conv = weight_norm(self.y_conv) - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - if self.config.model_params.use_weight_norm: - self.remove_weight_norm() - betas = np.linspace( - config["test_noise_schedule"]["min_val"], - config["test_noise_schedule"]["max_val"], - config["test_noise_schedule"]["num_steps"], - ) - self.compute_noise_level(betas) - else: - betas = np.linspace( - config["train_noise_schedule"]["min_val"], - config["train_noise_schedule"]["max_val"], - config["train_noise_schedule"]["num_steps"], - ) - self.compute_noise_level(betas) - - def train_step(self, batch: Dict, criterion: Dict) -> Tuple[Dict, Dict]: - # format data - x = batch["input"] - y = batch["waveform"] - - # set noise scale - noise, x_noisy, noise_scale = self.compute_y_n(y) - - # forward pass - noise_hat = self.forward(x_noisy, x, noise_scale) - - # compute losses - loss = criterion(noise, noise_hat) - return {"model_output": noise_hat}, {"loss": loss} - - def train_log( # pylint: disable=no-self-use - self, batch: Dict, outputs: Dict, logger: "Logger", assets: Dict, steps: int # pylint: disable=unused-argument - ) -> Tuple[Dict, np.ndarray]: - pass - - @torch.no_grad() - def eval_step(self, batch: Dict, criterion: nn.Module) -> Tuple[Dict, Dict]: - return self.train_step(batch, criterion) - - def eval_log( # pylint: disable=no-self-use - self, batch: Dict, outputs: Dict, logger: "Logger", assets: Dict, steps: int # pylint: disable=unused-argument - ) -> None: - pass - - def test(self, assets: Dict, test_loader: "DataLoader", outputs=None): # pylint: disable=unused-argument - # setup noise schedule and inference - ap = assets["audio_processor"] - noise_schedule = self.config["test_noise_schedule"] - betas = np.linspace(noise_schedule["min_val"], noise_schedule["max_val"], noise_schedule["num_steps"]) - self.compute_noise_level(betas) - samples = test_loader.dataset.load_test_samples(1) - for sample in samples: - x = sample[0] - x = x[None, :, :].to(next(self.parameters()).device) - y = sample[1] - y = y[None, :] - # compute voice - y_pred = self.inference(x) - # compute spectrograms - figures = plot_results(y_pred, y, ap, "test") - # Sample audio - sample_voice = y_pred[0].squeeze(0).detach().cpu().numpy() - return figures, {"test/audio": sample_voice} - - def get_optimizer(self): - return get_optimizer(self.config.optimizer, self.config.optimizer_params, self.config.lr, self) - - def get_scheduler(self, optimizer): - return get_scheduler(self.config.lr_scheduler, self.config.lr_scheduler_params, optimizer) - - @staticmethod - def get_criterion(): - return torch.nn.L1Loss() - - @staticmethod - def format_batch(batch: Dict) -> Dict: - # return a whole audio segment - m, y = batch[0], batch[1] - y = y.unsqueeze(1) - return {"input": m, "waveform": y} - - def get_data_loader(self, config: Coqpit, assets: Dict, is_eval: True, samples: List, verbose: bool, num_gpus: int): - ap = assets["audio_processor"] - dataset = WaveGradDataset( - ap=ap, - items=samples, - seq_len=self.config.seq_len, - hop_len=ap.hop_length, - pad_short=self.config.pad_short, - conv_pad=self.config.conv_pad, - is_training=not is_eval, - return_segments=True, - use_noise_augment=False, - use_cache=config.use_cache, - verbose=verbose, - ) - sampler = DistributedSampler(dataset) if num_gpus > 1 else None - loader = DataLoader( - dataset, - batch_size=self.config.batch_size, - shuffle=num_gpus <= 1, - drop_last=False, - sampler=sampler, - num_workers=self.config.num_eval_loader_workers if is_eval else self.config.num_loader_workers, - pin_memory=False, - ) - return loader - - def on_epoch_start(self, trainer): # pylint: disable=unused-argument - noise_schedule = self.config["train_noise_schedule"] - betas = np.linspace(noise_schedule["min_val"], noise_schedule["max_val"], noise_schedule["num_steps"]) - self.compute_noise_level(betas) - - @staticmethod - def init_from_config(config: "WavegradConfig"): - return Wavegrad(config) diff --git a/TTS/TTS/vocoder/models/wavernn.py b/TTS/TTS/vocoder/models/wavernn.py deleted file mode 100644 index 903f4b7e6308ce700d65ed60bb6098d1e39aa6b1..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/models/wavernn.py +++ /dev/null @@ -1,645 +0,0 @@ -import sys -import time -from dataclasses import dataclass, field -from typing import Dict, List, Tuple - -import numpy as np -import torch -import torch.nn.functional as F -from coqpit import Coqpit -from torch import nn -from torch.utils.data import DataLoader -from torch.utils.data.distributed import DistributedSampler - -from TTS.tts.utils.visual import plot_spectrogram -from TTS.utils.audio import AudioProcessor -from TTS.utils.io import load_fsspec -from TTS.vocoder.datasets.wavernn_dataset import WaveRNNDataset -from TTS.vocoder.layers.losses import WaveRNNLoss -from TTS.vocoder.models.base_vocoder import BaseVocoder -from TTS.vocoder.utils.distribution import sample_from_discretized_mix_logistic, sample_from_gaussian - - -def stream(string, variables): - sys.stdout.write(f"\r{string}" % variables) - - -# pylint: disable=abstract-method -# relates https://github.com/pytorch/pytorch/issues/42305 -class ResBlock(nn.Module): - def __init__(self, dims): - super().__init__() - self.conv1 = nn.Conv1d(dims, dims, kernel_size=1, bias=False) - self.conv2 = nn.Conv1d(dims, dims, kernel_size=1, bias=False) - self.batch_norm1 = nn.BatchNorm1d(dims) - self.batch_norm2 = nn.BatchNorm1d(dims) - - def forward(self, x): - residual = x - x = self.conv1(x) - x = self.batch_norm1(x) - x = F.relu(x) - x = self.conv2(x) - x = self.batch_norm2(x) - return x + residual - - -class MelResNet(nn.Module): - def __init__(self, num_res_blocks, in_dims, compute_dims, res_out_dims, pad): - super().__init__() - k_size = pad * 2 + 1 - self.conv_in = nn.Conv1d(in_dims, compute_dims, kernel_size=k_size, bias=False) - self.batch_norm = nn.BatchNorm1d(compute_dims) - self.layers = nn.ModuleList() - for _ in range(num_res_blocks): - self.layers.append(ResBlock(compute_dims)) - self.conv_out = nn.Conv1d(compute_dims, res_out_dims, kernel_size=1) - - def forward(self, x): - x = self.conv_in(x) - x = self.batch_norm(x) - x = F.relu(x) - for f in self.layers: - x = f(x) - x = self.conv_out(x) - return x - - -class Stretch2d(nn.Module): - def __init__(self, x_scale, y_scale): - super().__init__() - self.x_scale = x_scale - self.y_scale = y_scale - - def forward(self, x): - b, c, h, w = x.size() - x = x.unsqueeze(-1).unsqueeze(3) - x = x.repeat(1, 1, 1, self.y_scale, 1, self.x_scale) - return x.view(b, c, h * self.y_scale, w * self.x_scale) - - -class UpsampleNetwork(nn.Module): - def __init__( - self, - feat_dims, - upsample_scales, - compute_dims, - num_res_blocks, - res_out_dims, - pad, - use_aux_net, - ): - super().__init__() - self.total_scale = np.cumproduct(upsample_scales)[-1] - self.indent = pad * self.total_scale - self.use_aux_net = use_aux_net - if use_aux_net: - self.resnet = MelResNet(num_res_blocks, feat_dims, compute_dims, res_out_dims, pad) - self.resnet_stretch = Stretch2d(self.total_scale, 1) - self.up_layers = nn.ModuleList() - for scale in upsample_scales: - k_size = (1, scale * 2 + 1) - padding = (0, scale) - stretch = Stretch2d(scale, 1) - conv = nn.Conv2d(1, 1, kernel_size=k_size, padding=padding, bias=False) - conv.weight.data.fill_(1.0 / k_size[1]) - self.up_layers.append(stretch) - self.up_layers.append(conv) - - def forward(self, m): - if self.use_aux_net: - aux = self.resnet(m).unsqueeze(1) - aux = self.resnet_stretch(aux) - aux = aux.squeeze(1) - aux = aux.transpose(1, 2) - else: - aux = None - m = m.unsqueeze(1) - for f in self.up_layers: - m = f(m) - m = m.squeeze(1)[:, :, self.indent : -self.indent] - return m.transpose(1, 2), aux - - -class Upsample(nn.Module): - def __init__(self, scale, pad, num_res_blocks, feat_dims, compute_dims, res_out_dims, use_aux_net): - super().__init__() - self.scale = scale - self.pad = pad - self.indent = pad * scale - self.use_aux_net = use_aux_net - self.resnet = MelResNet(num_res_blocks, feat_dims, compute_dims, res_out_dims, pad) - - def forward(self, m): - if self.use_aux_net: - aux = self.resnet(m) - aux = torch.nn.functional.interpolate(aux, scale_factor=self.scale, mode="linear", align_corners=True) - aux = aux.transpose(1, 2) - else: - aux = None - m = torch.nn.functional.interpolate(m, scale_factor=self.scale, mode="linear", align_corners=True) - m = m[:, :, self.indent : -self.indent] - m = m * 0.045 # empirically found - - return m.transpose(1, 2), aux - - -@dataclass -class WavernnArgs(Coqpit): - """🐸 WaveRNN model arguments. - - rnn_dims (int): - Number of hidden channels in RNN layers. Defaults to 512. - fc_dims (int): - Number of hidden channels in fully-conntected layers. Defaults to 512. - compute_dims (int): - Number of hidden channels in the feature ResNet. Defaults to 128. - res_out_dim (int): - Number of hidden channels in the feature ResNet output. Defaults to 128. - num_res_blocks (int): - Number of residual blocks in the ResNet. Defaults to 10. - use_aux_net (bool): - enable/disable the feature ResNet. Defaults to True. - use_upsample_net (bool): - enable/ disable the upsampling networl. If False, basic upsampling is used. Defaults to True. - upsample_factors (list): - Upsampling factors. The multiply of the values must match the `hop_length`. Defaults to ```[4, 8, 8]```. - mode (str): - Output mode of the WaveRNN vocoder. `mold` for Mixture of Logistic Distribution, `gauss` for a single - Gaussian Distribution and `bits` for quantized bits as the model's output. - mulaw (bool): - enable / disable the use of Mulaw quantization for training. Only applicable if `mode == 'bits'`. Defaults - to `True`. - pad (int): - Padding applied to the input feature frames against the convolution layers of the feature network. - Defaults to 2. - """ - - rnn_dims: int = 512 - fc_dims: int = 512 - compute_dims: int = 128 - res_out_dims: int = 128 - num_res_blocks: int = 10 - use_aux_net: bool = True - use_upsample_net: bool = True - upsample_factors: List[int] = field(default_factory=lambda: [4, 8, 8]) - mode: str = "mold" # mold [string], gauss [string], bits [int] - mulaw: bool = True # apply mulaw if mode is bits - pad: int = 2 - feat_dims: int = 80 - - -class Wavernn(BaseVocoder): - def __init__(self, config: Coqpit): - """🐸 WaveRNN model. - Original paper - https://arxiv.org/abs/1802.08435 - Official implementation - https://github.com/fatchord/WaveRNN - - Args: - config (Coqpit): [description] - - Raises: - RuntimeError: [description] - - Examples: - >>> from TTS.vocoder.configs import WavernnConfig - >>> config = WavernnConfig() - >>> model = Wavernn(config) - - Paper Abstract: - Sequential models achieve state-of-the-art results in audio, visual and textual domains with respect to - both estimating the data distribution and generating high-quality samples. Efficient sampling for this - class of models has however remained an elusive problem. With a focus on text-to-speech synthesis, we - describe a set of general techniques for reducing sampling time while maintaining high output quality. - We first describe a single-layer recurrent neural network, the WaveRNN, with a dual softmax layer that - matches the quality of the state-of-the-art WaveNet model. The compact form of the network makes it - possible to generate 24kHz 16-bit audio 4x faster than real time on a GPU. Second, we apply a weight - pruning technique to reduce the number of weights in the WaveRNN. We find that, for a constant number of - parameters, large sparse networks perform better than small dense networks and this relationship holds for - sparsity levels beyond 96%. The small number of weights in a Sparse WaveRNN makes it possible to sample - high-fidelity audio on a mobile CPU in real time. Finally, we propose a new generation scheme based on - subscaling that folds a long sequence into a batch of shorter sequences and allows one to generate multiple - samples at once. The Subscale WaveRNN produces 16 samples per step without loss of quality and offers an - orthogonal method for increasing sampling efficiency. - """ - super().__init__(config) - - if isinstance(self.args.mode, int): - self.n_classes = 2**self.args.mode - elif self.args.mode == "mold": - self.n_classes = 3 * 10 - elif self.args.mode == "gauss": - self.n_classes = 2 - else: - raise RuntimeError("Unknown model mode value - ", self.args.mode) - - self.ap = AudioProcessor(**config.audio.to_dict()) - self.aux_dims = self.args.res_out_dims // 4 - - if self.args.use_upsample_net: - assert ( - np.cumproduct(self.args.upsample_factors)[-1] == config.audio.hop_length - ), " [!] upsample scales needs to be equal to hop_length" - self.upsample = UpsampleNetwork( - self.args.feat_dims, - self.args.upsample_factors, - self.args.compute_dims, - self.args.num_res_blocks, - self.args.res_out_dims, - self.args.pad, - self.args.use_aux_net, - ) - else: - self.upsample = Upsample( - config.audio.hop_length, - self.args.pad, - self.args.num_res_blocks, - self.args.feat_dims, - self.args.compute_dims, - self.args.res_out_dims, - self.args.use_aux_net, - ) - if self.args.use_aux_net: - self.I = nn.Linear(self.args.feat_dims + self.aux_dims + 1, self.args.rnn_dims) - self.rnn1 = nn.GRU(self.args.rnn_dims, self.args.rnn_dims, batch_first=True) - self.rnn2 = nn.GRU(self.args.rnn_dims + self.aux_dims, self.args.rnn_dims, batch_first=True) - self.fc1 = nn.Linear(self.args.rnn_dims + self.aux_dims, self.args.fc_dims) - self.fc2 = nn.Linear(self.args.fc_dims + self.aux_dims, self.args.fc_dims) - self.fc3 = nn.Linear(self.args.fc_dims, self.n_classes) - else: - self.I = nn.Linear(self.args.feat_dims + 1, self.args.rnn_dims) - self.rnn1 = nn.GRU(self.args.rnn_dims, self.args.rnn_dims, batch_first=True) - self.rnn2 = nn.GRU(self.args.rnn_dims, self.args.rnn_dims, batch_first=True) - self.fc1 = nn.Linear(self.args.rnn_dims, self.args.fc_dims) - self.fc2 = nn.Linear(self.args.fc_dims, self.args.fc_dims) - self.fc3 = nn.Linear(self.args.fc_dims, self.n_classes) - - def forward(self, x, mels): - bsize = x.size(0) - h1 = torch.zeros(1, bsize, self.args.rnn_dims).to(x.device) - h2 = torch.zeros(1, bsize, self.args.rnn_dims).to(x.device) - mels, aux = self.upsample(mels) - - if self.args.use_aux_net: - aux_idx = [self.aux_dims * i for i in range(5)] - a1 = aux[:, :, aux_idx[0] : aux_idx[1]] - a2 = aux[:, :, aux_idx[1] : aux_idx[2]] - a3 = aux[:, :, aux_idx[2] : aux_idx[3]] - a4 = aux[:, :, aux_idx[3] : aux_idx[4]] - - x = ( - torch.cat([x.unsqueeze(-1), mels, a1], dim=2) - if self.args.use_aux_net - else torch.cat([x.unsqueeze(-1), mels], dim=2) - ) - x = self.I(x) - res = x - self.rnn1.flatten_parameters() - x, _ = self.rnn1(x, h1) - - x = x + res - res = x - x = torch.cat([x, a2], dim=2) if self.args.use_aux_net else x - self.rnn2.flatten_parameters() - x, _ = self.rnn2(x, h2) - - x = x + res - x = torch.cat([x, a3], dim=2) if self.args.use_aux_net else x - x = F.relu(self.fc1(x)) - - x = torch.cat([x, a4], dim=2) if self.args.use_aux_net else x - x = F.relu(self.fc2(x)) - return self.fc3(x) - - def inference(self, mels, batched=None, target=None, overlap=None): - self.eval() - output = [] - start = time.time() - rnn1 = self.get_gru_cell(self.rnn1) - rnn2 = self.get_gru_cell(self.rnn2) - - with torch.no_grad(): - if isinstance(mels, np.ndarray): - mels = torch.FloatTensor(mels).to(str(next(self.parameters()).device)) - - if mels.ndim == 2: - mels = mels.unsqueeze(0) - wave_len = (mels.size(-1) - 1) * self.config.audio.hop_length - - mels = self.pad_tensor(mels.transpose(1, 2), pad=self.args.pad, side="both") - mels, aux = self.upsample(mels.transpose(1, 2)) - - if batched: - mels = self.fold_with_overlap(mels, target, overlap) - if aux is not None: - aux = self.fold_with_overlap(aux, target, overlap) - - b_size, seq_len, _ = mels.size() - - h1 = torch.zeros(b_size, self.args.rnn_dims).type_as(mels) - h2 = torch.zeros(b_size, self.args.rnn_dims).type_as(mels) - x = torch.zeros(b_size, 1).type_as(mels) - - if self.args.use_aux_net: - d = self.aux_dims - aux_split = [aux[:, :, d * i : d * (i + 1)] for i in range(4)] - - for i in range(seq_len): - m_t = mels[:, i, :] - - if self.args.use_aux_net: - a1_t, a2_t, a3_t, a4_t = (a[:, i, :] for a in aux_split) - - x = torch.cat([x, m_t, a1_t], dim=1) if self.args.use_aux_net else torch.cat([x, m_t], dim=1) - x = self.I(x) - h1 = rnn1(x, h1) - - x = x + h1 - inp = torch.cat([x, a2_t], dim=1) if self.args.use_aux_net else x - h2 = rnn2(inp, h2) - - x = x + h2 - x = torch.cat([x, a3_t], dim=1) if self.args.use_aux_net else x - x = F.relu(self.fc1(x)) - - x = torch.cat([x, a4_t], dim=1) if self.args.use_aux_net else x - x = F.relu(self.fc2(x)) - - logits = self.fc3(x) - - if self.args.mode == "mold": - sample = sample_from_discretized_mix_logistic(logits.unsqueeze(0).transpose(1, 2)) - output.append(sample.view(-1)) - x = sample.transpose(0, 1).type_as(mels) - elif self.args.mode == "gauss": - sample = sample_from_gaussian(logits.unsqueeze(0).transpose(1, 2)) - output.append(sample.view(-1)) - x = sample.transpose(0, 1).type_as(mels) - elif isinstance(self.args.mode, int): - posterior = F.softmax(logits, dim=1) - distrib = torch.distributions.Categorical(posterior) - - sample = 2 * distrib.sample().float() / (self.n_classes - 1.0) - 1.0 - output.append(sample) - x = sample.unsqueeze(-1) - else: - raise RuntimeError("Unknown model mode value - ", self.args.mode) - - if i % 100 == 0: - self.gen_display(i, seq_len, b_size, start) - - output = torch.stack(output).transpose(0, 1) - output = output.cpu() - if batched: - output = output.numpy() - output = output.astype(np.float64) - - output = self.xfade_and_unfold(output, target, overlap) - else: - output = output[0] - - if self.args.mulaw and isinstance(self.args.mode, int): - output = AudioProcessor.mulaw_decode(output, self.args.mode) - - # Fade-out at the end to avoid signal cutting out suddenly - fade_out = np.linspace(1, 0, 20 * self.config.audio.hop_length) - output = output[:wave_len] - - if wave_len > len(fade_out): - output[-20 * self.config.audio.hop_length :] *= fade_out - - self.train() - return output - - def gen_display(self, i, seq_len, b_size, start): - gen_rate = (i + 1) / (time.time() - start) * b_size / 1000 - realtime_ratio = gen_rate * 1000 / self.config.audio.sample_rate - stream( - "%i/%i -- batch_size: %i -- gen_rate: %.1f kHz -- x_realtime: %.1f ", - (i * b_size, seq_len * b_size, b_size, gen_rate, realtime_ratio), - ) - - def fold_with_overlap(self, x, target, overlap): - """Fold the tensor with overlap for quick batched inference. - Overlap will be used for crossfading in xfade_and_unfold() - Args: - x (tensor) : Upsampled conditioning features. - shape=(1, timesteps, features) - target (int) : Target timesteps for each index of batch - overlap (int) : Timesteps for both xfade and rnn warmup - Return: - (tensor) : shape=(num_folds, target + 2 * overlap, features) - Details: - x = [[h1, h2, ... hn]] - Where each h is a vector of conditioning features - Eg: target=2, overlap=1 with x.size(1)=10 - folded = [[h1, h2, h3, h4], - [h4, h5, h6, h7], - [h7, h8, h9, h10]] - """ - - _, total_len, features = x.size() - - # Calculate variables needed - num_folds = (total_len - overlap) // (target + overlap) - extended_len = num_folds * (overlap + target) + overlap - remaining = total_len - extended_len - - # Pad if some time steps poking out - if remaining != 0: - num_folds += 1 - padding = target + 2 * overlap - remaining - x = self.pad_tensor(x, padding, side="after") - - folded = torch.zeros(num_folds, target + 2 * overlap, features).to(x.device) - - # Get the values for the folded tensor - for i in range(num_folds): - start = i * (target + overlap) - end = start + target + 2 * overlap - folded[i] = x[:, start:end, :] - - return folded - - @staticmethod - def get_gru_cell(gru): - gru_cell = nn.GRUCell(gru.input_size, gru.hidden_size) - gru_cell.weight_hh.data = gru.weight_hh_l0.data - gru_cell.weight_ih.data = gru.weight_ih_l0.data - gru_cell.bias_hh.data = gru.bias_hh_l0.data - gru_cell.bias_ih.data = gru.bias_ih_l0.data - return gru_cell - - @staticmethod - def pad_tensor(x, pad, side="both"): - # NB - this is just a quick method i need right now - # i.e., it won't generalise to other shapes/dims - b, t, c = x.size() - total = t + 2 * pad if side == "both" else t + pad - padded = torch.zeros(b, total, c).to(x.device) - if side in ("before", "both"): - padded[:, pad : pad + t, :] = x - elif side == "after": - padded[:, :t, :] = x - return padded - - @staticmethod - def xfade_and_unfold(y, target, overlap): - """Applies a crossfade and unfolds into a 1d array. - Args: - y (ndarry) : Batched sequences of audio samples - shape=(num_folds, target + 2 * overlap) - dtype=np.float64 - overlap (int) : Timesteps for both xfade and rnn warmup - Return: - (ndarry) : audio samples in a 1d array - shape=(total_len) - dtype=np.float64 - Details: - y = [[seq1], - [seq2], - [seq3]] - Apply a gain envelope at both ends of the sequences - y = [[seq1_in, seq1_target, seq1_out], - [seq2_in, seq2_target, seq2_out], - [seq3_in, seq3_target, seq3_out]] - Stagger and add up the groups of samples: - [seq1_in, seq1_target, (seq1_out + seq2_in), seq2_target, ...] - """ - - num_folds, length = y.shape - target = length - 2 * overlap - total_len = num_folds * (target + overlap) + overlap - - # Need some silence for the rnn warmup - silence_len = overlap // 2 - fade_len = overlap - silence_len - silence = np.zeros((silence_len), dtype=np.float64) - - # Equal power crossfade - t = np.linspace(-1, 1, fade_len, dtype=np.float64) - fade_in = np.sqrt(0.5 * (1 + t)) - fade_out = np.sqrt(0.5 * (1 - t)) - - # Concat the silence to the fades - fade_in = np.concatenate([silence, fade_in]) - fade_out = np.concatenate([fade_out, silence]) - - # Apply the gain to the overlap samples - y[:, :overlap] *= fade_in - y[:, -overlap:] *= fade_out - - unfolded = np.zeros((total_len), dtype=np.float64) - - # Loop to add up all the samples - for i in range(num_folds): - start = i * (target + overlap) - end = start + target + 2 * overlap - unfolded[start:end] += y[i] - - return unfolded - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - - def train_step(self, batch: Dict, criterion: Dict) -> Tuple[Dict, Dict]: - mels = batch["input"] - waveform = batch["waveform"] - waveform_coarse = batch["waveform_coarse"] - - y_hat = self.forward(waveform, mels) - if isinstance(self.args.mode, int): - y_hat = y_hat.transpose(1, 2).unsqueeze(-1) - else: - waveform_coarse = waveform_coarse.float() - waveform_coarse = waveform_coarse.unsqueeze(-1) - # compute losses - loss_dict = criterion(y_hat, waveform_coarse) - return {"model_output": y_hat}, loss_dict - - def eval_step(self, batch: Dict, criterion: Dict) -> Tuple[Dict, Dict]: - return self.train_step(batch, criterion) - - @torch.no_grad() - def test( - self, assets: Dict, test_loader: "DataLoader", output: Dict # pylint: disable=unused-argument - ) -> Tuple[Dict, Dict]: - ap = self.ap - figures = {} - audios = {} - samples = test_loader.dataset.load_test_samples(1) - for idx, sample in enumerate(samples): - x = torch.FloatTensor(sample[0]) - x = x.to(next(self.parameters()).device) - y_hat = self.inference(x, self.config.batched, self.config.target_samples, self.config.overlap_samples) - x_hat = ap.melspectrogram(y_hat) - figures.update( - { - f"test_{idx}/ground_truth": plot_spectrogram(x.T), - f"test_{idx}/prediction": plot_spectrogram(x_hat.T), - } - ) - audios.update({f"test_{idx}/audio": y_hat}) - # audios.update({f"real_{idx}/audio": y_hat}) - return figures, audios - - def test_log( - self, outputs: Dict, logger: "Logger", assets: Dict, steps: int # pylint: disable=unused-argument - ) -> Tuple[Dict, np.ndarray]: - figures, audios = outputs - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - @staticmethod - def format_batch(batch: Dict) -> Dict: - waveform = batch[0] - mels = batch[1] - waveform_coarse = batch[2] - return {"input": mels, "waveform": waveform, "waveform_coarse": waveform_coarse} - - def get_data_loader( # pylint: disable=no-self-use - self, - config: Coqpit, - assets: Dict, - is_eval: True, - samples: List, - verbose: bool, - num_gpus: int, - ): - ap = self.ap - dataset = WaveRNNDataset( - ap=ap, - items=samples, - seq_len=config.seq_len, - hop_len=ap.hop_length, - pad=config.model_args.pad, - mode=config.model_args.mode, - mulaw=config.model_args.mulaw, - is_training=not is_eval, - verbose=verbose, - ) - sampler = DistributedSampler(dataset, shuffle=True) if num_gpus > 1 else None - loader = DataLoader( - dataset, - batch_size=1 if is_eval else config.batch_size, - shuffle=num_gpus == 0, - collate_fn=dataset.collate, - sampler=sampler, - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=True, - ) - return loader - - def get_criterion(self): - # define train functions - return WaveRNNLoss(self.args.mode) - - @staticmethod - def init_from_config(config: "WavernnConfig"): - return Wavernn(config) diff --git a/TTS/TTS/vocoder/pqmf_output.wav b/TTS/TTS/vocoder/pqmf_output.wav deleted file mode 100644 index 8a77747b00198a4adfd6c398998517df5b4bdb8d..0000000000000000000000000000000000000000 Binary files a/TTS/TTS/vocoder/pqmf_output.wav and /dev/null differ diff --git a/TTS/TTS/vocoder/utils/__init__.py b/TTS/TTS/vocoder/utils/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/TTS/vocoder/utils/distribution.py b/TTS/TTS/vocoder/utils/distribution.py deleted file mode 100644 index fe706ba9ffbc3f8aad75285bca34a910246666b3..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/utils/distribution.py +++ /dev/null @@ -1,154 +0,0 @@ -import math - -import numpy as np -import torch -import torch.nn.functional as F -from torch.distributions.normal import Normal - - -def gaussian_loss(y_hat, y, log_std_min=-7.0): - assert y_hat.dim() == 3 - assert y_hat.size(2) == 2 - mean = y_hat[:, :, :1] - log_std = torch.clamp(y_hat[:, :, 1:], min=log_std_min) - # TODO: replace with pytorch dist - log_probs = -0.5 * (-math.log(2.0 * math.pi) - 2.0 * log_std - torch.pow(y - mean, 2) * torch.exp((-2.0 * log_std))) - return log_probs.squeeze().mean() - - -def sample_from_gaussian(y_hat, log_std_min=-7.0, scale_factor=1.0): - assert y_hat.size(2) == 2 - mean = y_hat[:, :, :1] - log_std = torch.clamp(y_hat[:, :, 1:], min=log_std_min) - dist = Normal( - mean, - torch.exp(log_std), - ) - sample = dist.sample() - sample = torch.clamp(torch.clamp(sample, min=-scale_factor), max=scale_factor) - del dist - return sample - - -def log_sum_exp(x): - """numerically stable log_sum_exp implementation that prevents overflow""" - # TF ordering - axis = len(x.size()) - 1 - m, _ = torch.max(x, dim=axis) - m2, _ = torch.max(x, dim=axis, keepdim=True) - return m + torch.log(torch.sum(torch.exp(x - m2), dim=axis)) - - -# It is adapted from https://github.com/r9y9/wavenet_vocoder/blob/master/wavenet_vocoder/mixture.py -def discretized_mix_logistic_loss(y_hat, y, num_classes=65536, log_scale_min=None, reduce=True): - if log_scale_min is None: - log_scale_min = float(np.log(1e-14)) - y_hat = y_hat.permute(0, 2, 1) - assert y_hat.dim() == 3 - assert y_hat.size(1) % 3 == 0 - nr_mix = y_hat.size(1) // 3 - - # (B x T x C) - y_hat = y_hat.transpose(1, 2) - - # unpack parameters. (B, T, num_mixtures) x 3 - logit_probs = y_hat[:, :, :nr_mix] - means = y_hat[:, :, nr_mix : 2 * nr_mix] - log_scales = torch.clamp(y_hat[:, :, 2 * nr_mix : 3 * nr_mix], min=log_scale_min) - - # B x T x 1 -> B x T x num_mixtures - y = y.expand_as(means) - - centered_y = y - means - inv_stdv = torch.exp(-log_scales) - plus_in = inv_stdv * (centered_y + 1.0 / (num_classes - 1)) - cdf_plus = torch.sigmoid(plus_in) - min_in = inv_stdv * (centered_y - 1.0 / (num_classes - 1)) - cdf_min = torch.sigmoid(min_in) - - # log probability for edge case of 0 (before scaling) - # equivalent: torch.log(F.sigmoid(plus_in)) - log_cdf_plus = plus_in - F.softplus(plus_in) - - # log probability for edge case of 255 (before scaling) - # equivalent: (1 - F.sigmoid(min_in)).log() - log_one_minus_cdf_min = -F.softplus(min_in) - - # probability for all other cases - cdf_delta = cdf_plus - cdf_min - - mid_in = inv_stdv * centered_y - # log probability in the center of the bin, to be used in extreme cases - # (not actually used in our code) - log_pdf_mid = mid_in - log_scales - 2.0 * F.softplus(mid_in) - - # tf equivalent - - # log_probs = tf.where(x < -0.999, log_cdf_plus, - # tf.where(x > 0.999, log_one_minus_cdf_min, - # tf.where(cdf_delta > 1e-5, - # tf.log(tf.maximum(cdf_delta, 1e-12)), - # log_pdf_mid - np.log(127.5)))) - - # TODO: cdf_delta <= 1e-5 actually can happen. How can we choose the value - # for num_classes=65536 case? 1e-7? not sure.. - inner_inner_cond = (cdf_delta > 1e-5).float() - - inner_inner_out = inner_inner_cond * torch.log(torch.clamp(cdf_delta, min=1e-12)) + (1.0 - inner_inner_cond) * ( - log_pdf_mid - np.log((num_classes - 1) / 2) - ) - inner_cond = (y > 0.999).float() - inner_out = inner_cond * log_one_minus_cdf_min + (1.0 - inner_cond) * inner_inner_out - cond = (y < -0.999).float() - log_probs = cond * log_cdf_plus + (1.0 - cond) * inner_out - - log_probs = log_probs + F.log_softmax(logit_probs, -1) - - if reduce: - return -torch.mean(log_sum_exp(log_probs)) - return -log_sum_exp(log_probs).unsqueeze(-1) - - -def sample_from_discretized_mix_logistic(y, log_scale_min=None): - """ - Sample from discretized mixture of logistic distributions - Args: - y (Tensor): :math:`[B, C, T]` - log_scale_min (float): Log scale minimum value - Returns: - Tensor: sample in range of [-1, 1]. - """ - if log_scale_min is None: - log_scale_min = float(np.log(1e-14)) - assert y.size(1) % 3 == 0 - nr_mix = y.size(1) // 3 - - # B x T x C - y = y.transpose(1, 2) - logit_probs = y[:, :, :nr_mix] - - # sample mixture indicator from softmax - temp = logit_probs.data.new(logit_probs.size()).uniform_(1e-5, 1.0 - 1e-5) - temp = logit_probs.data - torch.log(-torch.log(temp)) - _, argmax = temp.max(dim=-1) - - # (B, T) -> (B, T, nr_mix) - one_hot = to_one_hot(argmax, nr_mix) - # select logistic parameters - means = torch.sum(y[:, :, nr_mix : 2 * nr_mix] * one_hot, dim=-1) - log_scales = torch.clamp(torch.sum(y[:, :, 2 * nr_mix : 3 * nr_mix] * one_hot, dim=-1), min=log_scale_min) - # sample from logistic & clip to interval - # we don't actually round to the nearest 8bit value when sampling - u = means.data.new(means.size()).uniform_(1e-5, 1.0 - 1e-5) - x = means + torch.exp(log_scales) * (torch.log(u) - torch.log(1.0 - u)) - - x = torch.clamp(torch.clamp(x, min=-1.0), max=1.0) - - return x - - -def to_one_hot(tensor, n, fill_with=1.0): - # we perform one hot encore with respect to the last axis - one_hot = torch.FloatTensor(tensor.size() + (n,)).zero_().type_as(tensor) - one_hot.scatter_(len(tensor.size()), tensor.unsqueeze(-1), fill_with) - return one_hot diff --git a/TTS/TTS/vocoder/utils/generic_utils.py b/TTS/TTS/vocoder/utils/generic_utils.py deleted file mode 100644 index 63a0af4445b5684e928b83d2f4fdfaf7e8f5b9a2..0000000000000000000000000000000000000000 --- a/TTS/TTS/vocoder/utils/generic_utils.py +++ /dev/null @@ -1,72 +0,0 @@ -from typing import Dict - -import numpy as np -import torch -from matplotlib import pyplot as plt - -from TTS.tts.utils.visual import plot_spectrogram -from TTS.utils.audio import AudioProcessor - - -def interpolate_vocoder_input(scale_factor, spec): - """Interpolate spectrogram by the scale factor. - It is mainly used to match the sampling rates of - the tts and vocoder models. - - Args: - scale_factor (float): scale factor to interpolate the spectrogram - spec (np.array): spectrogram to be interpolated - - Returns: - torch.tensor: interpolated spectrogram. - """ - print(" > before interpolation :", spec.shape) - spec = torch.tensor(spec).unsqueeze(0).unsqueeze(0) # pylint: disable=not-callable - spec = torch.nn.functional.interpolate( - spec, scale_factor=scale_factor, recompute_scale_factor=True, mode="bilinear", align_corners=False - ).squeeze(0) - print(" > after interpolation :", spec.shape) - return spec - - -def plot_results(y_hat: torch.tensor, y: torch.tensor, ap: AudioProcessor, name_prefix: str = None) -> Dict: - """Plot the predicted and the real waveform and their spectrograms. - - Args: - y_hat (torch.tensor): Predicted waveform. - y (torch.tensor): Real waveform. - ap (AudioProcessor): Audio processor used to process the waveform. - name_prefix (str, optional): Name prefix used to name the figures. Defaults to None. - - Returns: - Dict: output figures keyed by the name of the figures. - """ """Plot vocoder model results""" - if name_prefix is None: - name_prefix = "" - - # select an instance from batch - y_hat = y_hat[0].squeeze().detach().cpu().numpy() - y = y[0].squeeze().detach().cpu().numpy() - - spec_fake = ap.melspectrogram(y_hat).T - spec_real = ap.melspectrogram(y).T - spec_diff = np.abs(spec_fake - spec_real) - - # plot figure and save it - fig_wave = plt.figure() - plt.subplot(2, 1, 1) - plt.plot(y) - plt.title("groundtruth speech") - plt.subplot(2, 1, 2) - plt.plot(y_hat) - plt.title("generated speech") - plt.tight_layout() - plt.close() - - figures = { - name_prefix + "spectrogram/fake": plot_spectrogram(spec_fake), - name_prefix + "spectrogram/real": plot_spectrogram(spec_real), - name_prefix + "spectrogram/diff": plot_spectrogram(spec_diff), - name_prefix + "speech_comparison": fig_wave, - } - return figures diff --git a/TTS/VERSION b/TTS/VERSION deleted file mode 100644 index 7eb3095a3295f649df230c168c0e4fa1ae63456c..0000000000000000000000000000000000000000 --- a/TTS/VERSION +++ /dev/null @@ -1 +0,0 @@ -0.16.3 diff --git a/TTS/__init__.py b/TTS/__init__.py deleted file mode 100644 index eaf05db1b950d82bfd7e20857e09a0fef45b430a..0000000000000000000000000000000000000000 --- a/TTS/__init__.py +++ /dev/null @@ -1,6 +0,0 @@ -import os - -with open(os.path.join(os.path.dirname(__file__), "VERSION"), "r", encoding="utf-8") as f: - version = f.read().strip() - -__version__ = version diff --git a/TTS/api.py b/TTS/api.py deleted file mode 100644 index 2ee108ba70ab60196dad4259ccca48cff04c33a9..0000000000000000000000000000000000000000 --- a/TTS/api.py +++ /dev/null @@ -1,473 +0,0 @@ -import tempfile -import warnings -from pathlib import Path -from typing import Union - -import numpy as np -from torch import nn - -from TTS.cs_api import CS_API -from TTS.utils.audio.numpy_transforms import save_wav -from TTS.utils.manage import ModelManager -from TTS.utils.synthesizer import Synthesizer - - -class TTS(nn.Module): - """TODO: Add voice conversion and Capacitron support.""" - - def __init__( - self, - model_name: str = None, - model_path: str = None, - config_path: str = None, - vocoder_path: str = None, - vocoder_config_path: str = None, - progress_bar: bool = True, - cs_api_model: str = "XTTS", - gpu=False, - ): - """🐸TTS python interface that allows to load and use the released models. - - Example with a multi-speaker model: - >>> from TTS.api import TTS - >>> tts = TTS(TTS.list_models()[0]) - >>> wav = tts.tts("This is a test! This is also a test!!", speaker=tts.speakers[0], language=tts.languages[0]) - >>> tts.tts_to_file(text="Hello world!", speaker=tts.speakers[0], language=tts.languages[0], file_path="output.wav") - - Example with a single-speaker model: - >>> tts = TTS(model_name="tts_models/de/thorsten/tacotron2-DDC", progress_bar=False, gpu=False) - >>> tts.tts_to_file(text="Ich bin eine Testnachricht.", file_path="output.wav") - - Example loading a model from a path: - >>> tts = TTS(model_path="/path/to/checkpoint_100000.pth", config_path="/path/to/config.json", progress_bar=False, gpu=False) - >>> tts.tts_to_file(text="Ich bin eine Testnachricht.", file_path="output.wav") - - Example voice cloning with YourTTS in English, French and Portuguese: - >>> tts = TTS(model_name="tts_models/multilingual/multi-dataset/your_tts", progress_bar=False, gpu=True) - >>> tts.tts_to_file("This is voice cloning.", speaker_wav="my/cloning/audio.wav", language="en", file_path="thisisit.wav") - >>> tts.tts_to_file("C'est le clonage de la voix.", speaker_wav="my/cloning/audio.wav", language="fr", file_path="thisisit.wav") - >>> tts.tts_to_file("Isso é clonagem de voz.", speaker_wav="my/cloning/audio.wav", language="pt", file_path="thisisit.wav") - - Example Fairseq TTS models (uses ISO language codes in https://dl.fbaipublicfiles.com/mms/tts/all-tts-languages.html): - >>> tts = TTS(model_name="tts_models/eng/fairseq/vits", progress_bar=False, gpu=True) - >>> tts.tts_to_file("This is a test.", file_path="output.wav") - - Args: - model_name (str, optional): Model name to load. You can list models by ```tts.models```. Defaults to None. - model_path (str, optional): Path to the model checkpoint. Defaults to None. - config_path (str, optional): Path to the model config. Defaults to None. - vocoder_path (str, optional): Path to the vocoder checkpoint. Defaults to None. - vocoder_config_path (str, optional): Path to the vocoder config. Defaults to None. - progress_bar (bool, optional): Whether to pring a progress bar while downloading a model. Defaults to True. - cs_api_model (str, optional): Name of the model to use for the Coqui Studio API. Available models are - "XTTS", "XTTS-multilingual", "V1". You can also use `TTS.cs_api.CS_API" for more control. - Defaults to "XTTS". - gpu (bool, optional): Enable/disable GPU. Some models might be too slow on CPU. Defaults to False. - """ - super().__init__() - self.manager = ModelManager(models_file=self.get_models_file_path(), progress_bar=progress_bar, verbose=False) - - self.synthesizer = None - self.voice_converter = None - self.csapi = None - self.cs_api_model = cs_api_model - self.model_name = None - - if gpu: - warnings.warn("`gpu` will be deprecated. Please use `tts.to(device)` instead.") - - if model_name is not None: - if "tts_models" in model_name or "coqui_studio" in model_name: - self.load_tts_model_by_name(model_name, gpu) - elif "voice_conversion_models" in model_name: - self.load_vc_model_by_name(model_name, gpu) - - if model_path: - self.load_tts_model_by_path( - model_path, config_path, vocoder_path=vocoder_path, vocoder_config=vocoder_config_path, gpu=gpu - ) - - @property - def models(self): - return self.manager.list_tts_models() - - @property - def is_multi_speaker(self): - if hasattr(self.synthesizer.tts_model, "speaker_manager") and self.synthesizer.tts_model.speaker_manager: - return self.synthesizer.tts_model.speaker_manager.num_speakers > 1 - return False - - @property - def is_coqui_studio(self): - if self.model_name is None: - return False - return "coqui_studio" in self.model_name - - @property - def is_multi_lingual(self): - if hasattr(self.synthesizer.tts_model, "language_manager") and self.synthesizer.tts_model.language_manager: - return self.synthesizer.tts_model.language_manager.num_languages > 1 - return False - - @property - def speakers(self): - if not self.is_multi_speaker: - return None - return self.synthesizer.tts_model.speaker_manager.speaker_names - - @property - def languages(self): - if not self.is_multi_lingual: - return None - return self.synthesizer.tts_model.language_manager.language_names - - @staticmethod - def get_models_file_path(): - return Path(__file__).parent / ".models.json" - - def list_models(self): - try: - csapi = CS_API(model=self.cs_api_model) - models = csapi.list_speakers_as_tts_models() - except ValueError as e: - print(e) - models = [] - manager = ModelManager(models_file=TTS.get_models_file_path(), progress_bar=False, verbose=False) - return manager.list_tts_models() + models - - def download_model_by_name(self, model_name: str): - model_path, config_path, model_item = self.manager.download_model(model_name) - if "fairseq" in model_name or (model_item is not None and isinstance(model_item["model_url"], list)): - # return model directory if there are multiple files - # we assume that the model knows how to load itself - return None, None, None, None, model_path - if model_item.get("default_vocoder") is None: - return model_path, config_path, None, None, None - vocoder_path, vocoder_config_path, _ = self.manager.download_model(model_item["default_vocoder"]) - return model_path, config_path, vocoder_path, vocoder_config_path, None - - def load_vc_model_by_name(self, model_name: str, gpu: bool = False): - """Load one of the voice conversion models by name. - - Args: - model_name (str): Model name to load. You can list models by ```tts.models```. - gpu (bool, optional): Enable/disable GPU. Some models might be too slow on CPU. Defaults to False. - """ - self.model_name = model_name - model_path, config_path, _, _, _ = self.download_model_by_name(model_name) - self.voice_converter = Synthesizer(vc_checkpoint=model_path, vc_config=config_path, use_cuda=gpu) - - def load_tts_model_by_name(self, model_name: str, gpu: bool = False): - """Load one of 🐸TTS models by name. - - Args: - model_name (str): Model name to load. You can list models by ```tts.models```. - gpu (bool, optional): Enable/disable GPU. Some models might be too slow on CPU. Defaults to False. - - TODO: Add tests - """ - self.synthesizer = None - self.csapi = None - self.model_name = model_name - - if "coqui_studio" in model_name: - self.csapi = CS_API() - else: - model_path, config_path, vocoder_path, vocoder_config_path, model_dir = self.download_model_by_name( - model_name - ) - - # init synthesizer - # None values are fetch from the model - self.synthesizer = Synthesizer( - tts_checkpoint=model_path, - tts_config_path=config_path, - tts_speakers_file=None, - tts_languages_file=None, - vocoder_checkpoint=vocoder_path, - vocoder_config=vocoder_config_path, - encoder_checkpoint=None, - encoder_config=None, - model_dir=model_dir, - use_cuda=gpu, - ) - - def load_tts_model_by_path( - self, model_path: str, config_path: str, vocoder_path: str = None, vocoder_config: str = None, gpu: bool = False - ): - """Load a model from a path. - - Args: - model_path (str): Path to the model checkpoint. - config_path (str): Path to the model config. - vocoder_path (str, optional): Path to the vocoder checkpoint. Defaults to None. - vocoder_config (str, optional): Path to the vocoder config. Defaults to None. - gpu (bool, optional): Enable/disable GPU. Some models might be too slow on CPU. Defaults to False. - """ - - self.synthesizer = Synthesizer( - tts_checkpoint=model_path, - tts_config_path=config_path, - tts_speakers_file=None, - tts_languages_file=None, - vocoder_checkpoint=vocoder_path, - vocoder_config=vocoder_config, - encoder_checkpoint=None, - encoder_config=None, - use_cuda=gpu, - ) - - def _check_arguments( - self, - speaker: str = None, - language: str = None, - speaker_wav: str = None, - emotion: str = None, - speed: float = None, - **kwargs, - ) -> None: - """Check if the arguments are valid for the model.""" - if not self.is_coqui_studio: - # check for the coqui tts models - if self.is_multi_speaker and (speaker is None and speaker_wav is None): - raise ValueError("Model is multi-speaker but no `speaker` is provided.") - if self.is_multi_lingual and language is None: - raise ValueError("Model is multi-lingual but no `language` is provided.") - if not self.is_multi_speaker and speaker is not None and "voice_dir" not in kwargs: - raise ValueError("Model is not multi-speaker but `speaker` is provided.") - if not self.is_multi_lingual and language is not None: - raise ValueError("Model is not multi-lingual but `language` is provided.") - if not emotion is None and not speed is None: - raise ValueError("Emotion and speed can only be used with Coqui Studio models.") - else: - if emotion is None: - emotion = "Neutral" - if speed is None: - speed = 1.0 - # check for the studio models - if speaker_wav is not None: - raise ValueError("Coqui Studio models do not support `speaker_wav` argument.") - if speaker is not None: - raise ValueError("Coqui Studio models do not support `speaker` argument.") - if language is not None and language != "en": - raise ValueError("Coqui Studio models currently support only `language=en` argument.") - if emotion not in ["Neutral", "Happy", "Sad", "Angry", "Dull"]: - raise ValueError(f"Emotion - `{emotion}` - must be one of `Neutral`, `Happy`, `Sad`, `Angry`, `Dull`.") - - def tts_coqui_studio( - self, - text: str, - speaker_name: str = None, - language: str = None, - emotion: str = None, - speed: float = 1.0, - file_path: str = None, - ) -> Union[np.ndarray, str]: - """Convert text to speech using Coqui Studio models. Use `CS_API` class if you are only interested in the API. - - Args: - text (str): - Input text to synthesize. - speaker_name (str, optional): - Speaker name from Coqui Studio. Defaults to None. - language (str): Language of the text. If None, the default language of the speaker is used. Language is only - supported by `XTTS-multilang` model. Currently supports en, de, es, fr, it, pt, pl. Defaults to "en". - emotion (str, optional): - Emotion of the speaker. One of "Neutral", "Happy", "Sad", "Angry", "Dull". Emotions are only available - with "V1" model. Defaults to None. - speed (float, optional): - Speed of the speech. Defaults to 1.0. - file_path (str, optional): - Path to save the output file. When None it returns the `np.ndarray` of waveform. Defaults to None. - - Returns: - Union[np.ndarray, str]: Waveform of the synthesized speech or path to the output file. - """ - speaker_name = self.model_name.split("/")[2] - if file_path is not None: - return self.csapi.tts_to_file( - text=text, - speaker_name=speaker_name, - language=language, - speed=speed, - emotion=emotion, - file_path=file_path, - )[0] - return self.csapi.tts(text=text, speaker_name=speaker_name, language=language, speed=speed, emotion=emotion)[0] - - def tts( - self, - text: str, - speaker: str = None, - language: str = None, - speaker_wav: str = None, - emotion: str = None, - speed: float = None, - **kwargs, - ): - """Convert text to speech. - - Args: - text (str): - Input text to synthesize. - speaker (str, optional): - Speaker name for multi-speaker. You can check whether loaded model is multi-speaker by - `tts.is_multi_speaker` and list speakers by `tts.speakers`. Defaults to None. - language (str): Language of the text. If None, the default language of the speaker is used. Language is only - supported by `XTTS-multilang` model. Currently supports en, de, es, fr, it, pt, pl. Defaults to "en". - speaker_wav (str, optional): - Path to a reference wav file to use for voice cloning with supporting models like YourTTS. - Defaults to None. - emotion (str, optional): - Emotion to use for 🐸Coqui Studio models. If None, Studio models use "Neutral". Defaults to None. - speed (float, optional): - Speed factor to use for 🐸Coqui Studio models, between 0 and 2.0. If None, Studio models use 1.0. - Defaults to None. - """ - self._check_arguments( - speaker=speaker, language=language, speaker_wav=speaker_wav, emotion=emotion, speed=speed, **kwargs - ) - if self.csapi is not None: - return self.tts_coqui_studio( - text=text, speaker_name=speaker, language=language, emotion=emotion, speed=speed - ) - wav = self.synthesizer.tts( - text=text, - speaker_name=speaker, - language_name=language, - speaker_wav=speaker_wav, - reference_wav=None, - style_wav=None, - style_text=None, - reference_speaker_name=None, - **kwargs, - ) - return wav - - def tts_to_file( - self, - text: str, - speaker: str = None, - language: str = None, - speaker_wav: str = None, - emotion: str = None, - speed: float = 1.0, - file_path: str = "output.wav", - **kwargs, - ): - """Convert text to speech. - - Args: - text (str): - Input text to synthesize. - speaker (str, optional): - Speaker name for multi-speaker. You can check whether loaded model is multi-speaker by - `tts.is_multi_speaker` and list speakers by `tts.speakers`. Defaults to None. - language (str, optional): - Language code for multi-lingual models. You can check whether loaded model is multi-lingual - `tts.is_multi_lingual` and list available languages by `tts.languages`. Defaults to None. - speaker_wav (str, optional): - Path to a reference wav file to use for voice cloning with supporting models like YourTTS. - Defaults to None. - emotion (str, optional): - Emotion to use for 🐸Coqui Studio models. Defaults to "Neutral". - speed (float, optional): - Speed factor to use for 🐸Coqui Studio models, between 0.0 and 2.0. Defaults to None. - file_path (str, optional): - Output file path. Defaults to "output.wav". - kwargs (dict, optional): - Additional arguments for the model. - """ - self._check_arguments(speaker=speaker, language=language, speaker_wav=speaker_wav, **kwargs) - - if self.csapi is not None: - return self.tts_coqui_studio( - text=text, speaker_name=speaker, language=language, emotion=emotion, speed=speed, file_path=file_path - ) - wav = self.tts(text=text, speaker=speaker, language=language, speaker_wav=speaker_wav, **kwargs) - self.synthesizer.save_wav(wav=wav, path=file_path) - return file_path - - def voice_conversion( - self, - source_wav: str, - target_wav: str, - ): - """Voice conversion with FreeVC. Convert source wav to target speaker. - - Args:`` - source_wav (str): - Path to the source wav file. - target_wav (str):` - Path to the target wav file. - """ - wav = self.voice_converter.voice_conversion(source_wav=source_wav, target_wav=target_wav) - return wav - - def voice_conversion_to_file( - self, - source_wav: str, - target_wav: str, - file_path: str = "output.wav", - ): - """Voice conversion with FreeVC. Convert source wav to target speaker. - - Args: - source_wav (str): - Path to the source wav file. - target_wav (str): - Path to the target wav file. - file_path (str, optional): - Output file path. Defaults to "output.wav". - """ - wav = self.voice_conversion(source_wav=source_wav, target_wav=target_wav) - save_wav(wav=wav, path=file_path, sample_rate=self.voice_converter.vc_config.audio.output_sample_rate) - return file_path - - def tts_with_vc(self, text: str, language: str = None, speaker_wav: str = None): - """Convert text to speech with voice conversion. - - It combines tts with voice conversion to fake voice cloning. - - - Convert text to speech with tts. - - Convert the output wav to target speaker with voice conversion. - - Args: - text (str): - Input text to synthesize. - language (str, optional): - Language code for multi-lingual models. You can check whether loaded model is multi-lingual - `tts.is_multi_lingual` and list available languages by `tts.languages`. Defaults to None. - speaker_wav (str, optional): - Path to a reference wav file to use for voice cloning with supporting models like YourTTS. - Defaults to None. - """ - with tempfile.NamedTemporaryFile(suffix=".wav", delete=False) as fp: - # Lazy code... save it to a temp file to resample it while reading it for VC - self.tts_to_file(text=text, speaker=None, language=language, file_path=fp.name) - if self.voice_converter is None: - self.load_vc_model_by_name("voice_conversion_models/multilingual/vctk/freevc24") - wav = self.voice_converter.voice_conversion(source_wav=fp.name, target_wav=speaker_wav) - return wav - - def tts_with_vc_to_file( - self, text: str, language: str = None, speaker_wav: str = None, file_path: str = "output.wav" - ): - """Convert text to speech with voice conversion and save to file. - - Check `tts_with_vc` for more details. - - Args: - text (str): - Input text to synthesize. - language (str, optional): - Language code for multi-lingual models. You can check whether loaded model is multi-lingual - `tts.is_multi_lingual` and list available languages by `tts.languages`. Defaults to None. - speaker_wav (str, optional): - Path to a reference wav file to use for voice cloning with supporting models like YourTTS. - Defaults to None. - file_path (str, optional): - Output file path. Defaults to "output.wav". - """ - wav = self.tts_with_vc(text=text, language=language, speaker_wav=speaker_wav) - save_wav(wav=wav, path=file_path, sample_rate=self.voice_converter.vc_config.audio.output_sample_rate) diff --git a/TTS/bin/__init__.py b/TTS/bin/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/bin/collect_env_info.py b/TTS/bin/collect_env_info.py deleted file mode 100644 index 662fcd02ece0fad387b6bfc4bad9316c7e2a0bad..0000000000000000000000000000000000000000 --- a/TTS/bin/collect_env_info.py +++ /dev/null @@ -1,48 +0,0 @@ -"""Get detailed info about the working environment.""" -import os -import platform -import sys - -import numpy -import torch - -sys.path += [os.path.abspath(".."), os.path.abspath(".")] -import json - -import TTS - - -def system_info(): - return { - "OS": platform.system(), - "architecture": platform.architecture(), - "version": platform.version(), - "processor": platform.processor(), - "python": platform.python_version(), - } - - -def cuda_info(): - return { - "GPU": [torch.cuda.get_device_name(i) for i in range(torch.cuda.device_count())], - "available": torch.cuda.is_available(), - "version": torch.version.cuda, - } - - -def package_info(): - return { - "numpy": numpy.__version__, - "PyTorch_version": torch.__version__, - "PyTorch_debug": torch.version.debug, - "TTS": TTS.__version__, - } - - -def main(): - details = {"System": system_info(), "CUDA": cuda_info(), "Packages": package_info()} - print(json.dumps(details, indent=4, sort_keys=True)) - - -if __name__ == "__main__": - main() diff --git a/TTS/bin/compute_attention_masks.py b/TTS/bin/compute_attention_masks.py deleted file mode 100644 index 9ab520be7d9f41ecf4f124446400b5e1b597ae8b..0000000000000000000000000000000000000000 --- a/TTS/bin/compute_attention_masks.py +++ /dev/null @@ -1,165 +0,0 @@ -import argparse -import importlib -import os -from argparse import RawTextHelpFormatter - -import numpy as np -import torch -from torch.utils.data import DataLoader -from tqdm import tqdm - -from TTS.config import load_config -from TTS.tts.datasets.TTSDataset import TTSDataset -from TTS.tts.models import setup_model -from TTS.tts.utils.text.characters import make_symbols, phonemes, symbols -from TTS.utils.audio import AudioProcessor -from TTS.utils.io import load_checkpoint - -if __name__ == "__main__": - # pylint: disable=bad-option-value - parser = argparse.ArgumentParser( - description="""Extract attention masks from trained Tacotron/Tacotron2 models. -These masks can be used for different purposes including training a TTS model with a Duration Predictor.\n\n""" - """Each attention mask is written to the same path as the input wav file with ".npy" file extension. -(e.g. path/bla.wav (wav file) --> path/bla.npy (attention mask))\n""" - """ -Example run: - CUDA_VISIBLE_DEVICE="0" python TTS/bin/compute_attention_masks.py - --model_path /data/rw/home/Models/ljspeech-dcattn-December-14-2020_11+10AM-9d0e8c7/checkpoint_200000.pth - --config_path /data/rw/home/Models/ljspeech-dcattn-December-14-2020_11+10AM-9d0e8c7/config.json - --dataset_metafile metadata.csv - --data_path /root/LJSpeech-1.1/ - --batch_size 32 - --dataset ljspeech - --use_cuda True -""", - formatter_class=RawTextHelpFormatter, - ) - parser.add_argument("--model_path", type=str, required=True, help="Path to Tacotron/Tacotron2 model file ") - parser.add_argument( - "--config_path", - type=str, - required=True, - help="Path to Tacotron/Tacotron2 config file.", - ) - parser.add_argument( - "--dataset", - type=str, - default="", - required=True, - help="Target dataset processor name from TTS.tts.dataset.preprocess.", - ) - - parser.add_argument( - "--dataset_metafile", - type=str, - default="", - required=True, - help="Dataset metafile inclusing file paths with transcripts.", - ) - parser.add_argument("--data_path", type=str, default="", help="Defines the data path. It overwrites config.json.") - parser.add_argument("--use_cuda", type=bool, default=False, help="enable/disable cuda.") - - parser.add_argument( - "--batch_size", default=16, type=int, help="Batch size for the model. Use batch_size=1 if you have no CUDA." - ) - args = parser.parse_args() - - C = load_config(args.config_path) - ap = AudioProcessor(**C.audio) - - # if the vocabulary was passed, replace the default - if "characters" in C.keys(): - symbols, phonemes = make_symbols(**C.characters) - - # load the model - num_chars = len(phonemes) if C.use_phonemes else len(symbols) - # TODO: handle multi-speaker - model = setup_model(C) - model, _ = load_checkpoint(model, args.model_path, args.use_cuda, True) - - # data loader - preprocessor = importlib.import_module("TTS.tts.datasets.formatters") - preprocessor = getattr(preprocessor, args.dataset) - meta_data = preprocessor(args.data_path, args.dataset_metafile) - dataset = TTSDataset( - model.decoder.r, - C.text_cleaner, - compute_linear_spec=False, - ap=ap, - meta_data=meta_data, - characters=C.characters if "characters" in C.keys() else None, - add_blank=C["add_blank"] if "add_blank" in C.keys() else False, - use_phonemes=C.use_phonemes, - phoneme_cache_path=C.phoneme_cache_path, - phoneme_language=C.phoneme_language, - enable_eos_bos=C.enable_eos_bos_chars, - ) - - dataset.sort_and_filter_items(C.get("sort_by_audio_len", default=False)) - loader = DataLoader( - dataset, - batch_size=args.batch_size, - num_workers=4, - collate_fn=dataset.collate_fn, - shuffle=False, - drop_last=False, - ) - - # compute attentions - file_paths = [] - with torch.no_grad(): - for data in tqdm(loader): - # setup input data - text_input = data[0] - text_lengths = data[1] - linear_input = data[3] - mel_input = data[4] - mel_lengths = data[5] - stop_targets = data[6] - item_idxs = data[7] - - # dispatch data to GPU - if args.use_cuda: - text_input = text_input.cuda() - text_lengths = text_lengths.cuda() - mel_input = mel_input.cuda() - mel_lengths = mel_lengths.cuda() - - model_outputs = model.forward(text_input, text_lengths, mel_input) - - alignments = model_outputs["alignments"].detach() - for idx, alignment in enumerate(alignments): - item_idx = item_idxs[idx] - # interpolate if r > 1 - alignment = ( - torch.nn.functional.interpolate( - alignment.transpose(0, 1).unsqueeze(0), - size=None, - scale_factor=model.decoder.r, - mode="nearest", - align_corners=None, - recompute_scale_factor=None, - ) - .squeeze(0) - .transpose(0, 1) - ) - # remove paddings - alignment = alignment[: mel_lengths[idx], : text_lengths[idx]].cpu().numpy() - # set file paths - wav_file_name = os.path.basename(item_idx) - align_file_name = os.path.splitext(wav_file_name)[0] + "_attn.npy" - file_path = item_idx.replace(wav_file_name, align_file_name) - # save output - wav_file_abs_path = os.path.abspath(item_idx) - file_abs_path = os.path.abspath(file_path) - file_paths.append([wav_file_abs_path, file_abs_path]) - np.save(file_path, alignment) - - # ourput metafile - metafile = os.path.join(args.data_path, "metadata_attn_mask.txt") - - with open(metafile, "w", encoding="utf-8") as f: - for p in file_paths: - f.write(f"{p[0]}|{p[1]}\n") - print(f" >> Metafile created: {metafile}") diff --git a/TTS/bin/compute_embeddings.py b/TTS/bin/compute_embeddings.py deleted file mode 100644 index 5b5a37df736fd75c8228ceefd818c6ec4a63867f..0000000000000000000000000000000000000000 --- a/TTS/bin/compute_embeddings.py +++ /dev/null @@ -1,197 +0,0 @@ -import argparse -import os -from argparse import RawTextHelpFormatter - -import torch -from tqdm import tqdm - -from TTS.config import load_config -from TTS.config.shared_configs import BaseDatasetConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.utils.managers import save_file -from TTS.tts.utils.speakers import SpeakerManager - - -def compute_embeddings( - model_path, - config_path, - output_path, - old_speakers_file=None, - old_append=False, - config_dataset_path=None, - formatter_name=None, - dataset_name=None, - dataset_path=None, - meta_file_train=None, - meta_file_val=None, - disable_cuda=False, - no_eval=False, -): - use_cuda = torch.cuda.is_available() and not disable_cuda - - if config_dataset_path is not None: - c_dataset = load_config(config_dataset_path) - meta_data_train, meta_data_eval = load_tts_samples(c_dataset.datasets, eval_split=not no_eval) - else: - c_dataset = BaseDatasetConfig() - c_dataset.formatter = formatter_name - c_dataset.dataset_name = dataset_name - c_dataset.path = dataset_path - if meta_file_train is not None: - c_dataset.meta_file_train = meta_file_train - if meta_file_val is not None: - c_dataset.meta_file_val = meta_file_val - meta_data_train, meta_data_eval = load_tts_samples(c_dataset, eval_split=not no_eval) - - if meta_data_eval is None: - samples = meta_data_train - else: - samples = meta_data_train + meta_data_eval - - encoder_manager = SpeakerManager( - encoder_model_path=model_path, - encoder_config_path=config_path, - d_vectors_file_path=old_speakers_file, - use_cuda=use_cuda, - ) - - class_name_key = encoder_manager.encoder_config.class_name_key - - # compute speaker embeddings - if old_speakers_file is not None and old_append: - speaker_mapping = encoder_manager.embeddings - else: - speaker_mapping = {} - - for fields in tqdm(samples): - class_name = fields[class_name_key] - audio_file = fields["audio_file"] - embedding_key = fields["audio_unique_name"] - - # Only update the speaker name when the embedding is already in the old file. - if embedding_key in speaker_mapping: - speaker_mapping[embedding_key]["name"] = class_name - continue - - if old_speakers_file is not None and embedding_key in encoder_manager.clip_ids: - # get the embedding from the old file - embedd = encoder_manager.get_embedding_by_clip(embedding_key) - else: - # extract the embedding - embedd = encoder_manager.compute_embedding_from_clip(audio_file) - - # create speaker_mapping if target dataset is defined - speaker_mapping[embedding_key] = {} - speaker_mapping[embedding_key]["name"] = class_name - speaker_mapping[embedding_key]["embedding"] = embedd - - if speaker_mapping: - # save speaker_mapping if target dataset is defined - if os.path.isdir(output_path): - mapping_file_path = os.path.join(output_path, "speakers.pth") - else: - mapping_file_path = output_path - - if os.path.dirname(mapping_file_path) != "": - os.makedirs(os.path.dirname(mapping_file_path), exist_ok=True) - - save_file(speaker_mapping, mapping_file_path) - print("Speaker embeddings saved at:", mapping_file_path) - - -if __name__ == "__main__": - parser = argparse.ArgumentParser( - description="""Compute embedding vectors for each audio file in a dataset and store them keyed by `{dataset_name}#{file_path}` in a .pth file\n\n""" - """ - Example runs: - python TTS/bin/compute_embeddings.py --model_path speaker_encoder_model.pth --config_path speaker_encoder_config.json --config_dataset_path dataset_config.json - - python TTS/bin/compute_embeddings.py --model_path speaker_encoder_model.pth --config_path speaker_encoder_config.json --formatter_name coqui --dataset_path /path/to/vctk/dataset --dataset_name my_vctk --meta_file_train /path/to/vctk/metafile_train.csv --meta_file_val /path/to/vctk/metafile_eval.csv - """, - formatter_class=RawTextHelpFormatter, - ) - parser.add_argument( - "--model_path", - type=str, - help="Path to model checkpoint file. It defaults to the released speaker encoder.", - default="https://github.com/coqui-ai/TTS/releases/download/speaker_encoder_model/model_se.pth.tar", - ) - parser.add_argument( - "--config_path", - type=str, - help="Path to model config file. It defaults to the released speaker encoder config.", - default="https://github.com/coqui-ai/TTS/releases/download/speaker_encoder_model/config_se.json", - ) - parser.add_argument( - "--config_dataset_path", - type=str, - help="Path to dataset config file. You either need to provide this or `formatter_name`, `dataset_name` and `dataset_path` arguments.", - default=None, - ) - parser.add_argument( - "--output_path", - type=str, - help="Path for output `pth` or `json` file.", - default="speakers.pth", - ) - parser.add_argument( - "--old_file", - type=str, - help="The old existing embedding file, from which the embeddings will be directly loaded for already computed audio clips.", - default=None, - ) - parser.add_argument( - "--old_append", - help="Append new audio clip embeddings to the old embedding file, generate a new non-duplicated merged embedding file. Default False", - default=False, - action="store_true", - ) - parser.add_argument("--disable_cuda", type=bool, help="Flag to disable cuda.", default=False) - parser.add_argument("--no_eval", help="Do not compute eval?. Default False", default=False, action="store_true") - parser.add_argument( - "--formatter_name", - type=str, - help="Name of the formatter to use. You either need to provide this or `config_dataset_path`", - default=None, - ) - parser.add_argument( - "--dataset_name", - type=str, - help="Name of the dataset to use. You either need to provide this or `config_dataset_path`", - default=None, - ) - parser.add_argument( - "--dataset_path", - type=str, - help="Path to the dataset. You either need to provide this or `config_dataset_path`", - default=None, - ) - parser.add_argument( - "--meta_file_train", - type=str, - help="Path to the train meta file. If not set, dataset formatter uses the default metafile if it is defined in the formatter. You either need to provide this or `config_dataset_path`", - default=None, - ) - parser.add_argument( - "--meta_file_val", - type=str, - help="Path to the evaluation meta file. If not set, dataset formatter uses the default metafile if it is defined in the formatter. You either need to provide this or `config_dataset_path`", - default=None, - ) - args = parser.parse_args() - - compute_embeddings( - args.model_path, - args.config_path, - args.output_path, - old_speakers_file=args.old_file, - old_append=args.old_append, - config_dataset_path=args.config_dataset_path, - formatter_name=args.formatter_name, - dataset_name=args.dataset_name, - dataset_path=args.dataset_path, - meta_file_train=args.meta_file_train, - meta_file_val=args.meta_file_val, - disable_cuda=args.disable_cuda, - no_eval=args.no_eval, - ) diff --git a/TTS/bin/compute_statistics.py b/TTS/bin/compute_statistics.py deleted file mode 100644 index 3ab7ea7a3b10ec3cc23d8a744c7bdc79de52dbf2..0000000000000000000000000000000000000000 --- a/TTS/bin/compute_statistics.py +++ /dev/null @@ -1,96 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- - -import argparse -import glob -import os - -import numpy as np -from tqdm import tqdm - -# from TTS.utils.io import load_config -from TTS.config import load_config -from TTS.tts.datasets import load_tts_samples -from TTS.utils.audio import AudioProcessor - - -def main(): - """Run preprocessing process.""" - parser = argparse.ArgumentParser(description="Compute mean and variance of spectrogtram features.") - parser.add_argument("config_path", type=str, help="TTS config file path to define audio processin parameters.") - parser.add_argument("out_path", type=str, help="save path (directory and filename).") - parser.add_argument( - "--data_path", - type=str, - required=False, - help="folder including the target set of wavs overriding dataset config.", - ) - args, overrides = parser.parse_known_args() - - CONFIG = load_config(args.config_path) - CONFIG.parse_known_args(overrides, relaxed_parser=True) - - # load config - CONFIG.audio.signal_norm = False # do not apply earlier normalization - CONFIG.audio.stats_path = None # discard pre-defined stats - - # load audio processor - ap = AudioProcessor(**CONFIG.audio.to_dict()) - - # load the meta data of target dataset - if args.data_path: - dataset_items = glob.glob(os.path.join(args.data_path, "**", "*.wav"), recursive=True) - else: - dataset_items = load_tts_samples(CONFIG.datasets)[0] # take only train data - print(f" > There are {len(dataset_items)} files.") - - mel_sum = 0 - mel_square_sum = 0 - linear_sum = 0 - linear_square_sum = 0 - N = 0 - for item in tqdm(dataset_items): - # compute features - wav = ap.load_wav(item if isinstance(item, str) else item["audio_file"]) - linear = ap.spectrogram(wav) - mel = ap.melspectrogram(wav) - - # compute stats - N += mel.shape[1] - mel_sum += mel.sum(1) - linear_sum += linear.sum(1) - mel_square_sum += (mel**2).sum(axis=1) - linear_square_sum += (linear**2).sum(axis=1) - - mel_mean = mel_sum / N - mel_scale = np.sqrt(mel_square_sum / N - mel_mean**2) - linear_mean = linear_sum / N - linear_scale = np.sqrt(linear_square_sum / N - linear_mean**2) - - output_file_path = args.out_path - stats = {} - stats["mel_mean"] = mel_mean - stats["mel_std"] = mel_scale - stats["linear_mean"] = linear_mean - stats["linear_std"] = linear_scale - - print(f" > Avg mel spec mean: {mel_mean.mean()}") - print(f" > Avg mel spec scale: {mel_scale.mean()}") - print(f" > Avg linear spec mean: {linear_mean.mean()}") - print(f" > Avg linear spec scale: {linear_scale.mean()}") - - # set default config values for mean-var scaling - CONFIG.audio.stats_path = output_file_path - CONFIG.audio.signal_norm = True - # remove redundant values - del CONFIG.audio.max_norm - del CONFIG.audio.min_level_db - del CONFIG.audio.symmetric_norm - del CONFIG.audio.clip_norm - stats["audio_config"] = CONFIG.audio.to_dict() - np.save(output_file_path, stats, allow_pickle=True) - print(f" > stats saved to {output_file_path}") - - -if __name__ == "__main__": - main() diff --git a/TTS/bin/eval_encoder.py b/TTS/bin/eval_encoder.py deleted file mode 100644 index 60fed1393215cd5e2e349795b585ae12f2e227fa..0000000000000000000000000000000000000000 --- a/TTS/bin/eval_encoder.py +++ /dev/null @@ -1,88 +0,0 @@ -import argparse -from argparse import RawTextHelpFormatter - -import torch -from tqdm import tqdm - -from TTS.config import load_config -from TTS.tts.datasets import load_tts_samples -from TTS.tts.utils.speakers import SpeakerManager - - -def compute_encoder_accuracy(dataset_items, encoder_manager): - class_name_key = encoder_manager.encoder_config.class_name_key - map_classid_to_classname = getattr(encoder_manager.encoder_config, "map_classid_to_classname", None) - - class_acc_dict = {} - - # compute embeddings for all wav_files - for item in tqdm(dataset_items): - class_name = item[class_name_key] - wav_file = item["audio_file"] - - # extract the embedding - embedd = encoder_manager.compute_embedding_from_clip(wav_file) - if encoder_manager.encoder_criterion is not None and map_classid_to_classname is not None: - embedding = torch.FloatTensor(embedd).unsqueeze(0) - if encoder_manager.use_cuda: - embedding = embedding.cuda() - - class_id = encoder_manager.encoder_criterion.softmax.inference(embedding).item() - predicted_label = map_classid_to_classname[str(class_id)] - else: - predicted_label = None - - if class_name is not None and predicted_label is not None: - is_equal = int(class_name == predicted_label) - if class_name not in class_acc_dict: - class_acc_dict[class_name] = [is_equal] - else: - class_acc_dict[class_name].append(is_equal) - else: - raise RuntimeError("Error: class_name or/and predicted_label are None") - - acc_avg = 0 - for key, values in class_acc_dict.items(): - acc = sum(values) / len(values) - print("Class", key, "Accuracy:", acc) - acc_avg += acc - - print("Average Accuracy:", acc_avg / len(class_acc_dict)) - - -if __name__ == "__main__": - parser = argparse.ArgumentParser( - description="""Compute the accuracy of the encoder.\n\n""" - """ - Example runs: - python TTS/bin/eval_encoder.py emotion_encoder_model.pth emotion_encoder_config.json dataset_config.json - """, - formatter_class=RawTextHelpFormatter, - ) - parser.add_argument("model_path", type=str, help="Path to model checkpoint file.") - parser.add_argument( - "config_path", - type=str, - help="Path to model config file.", - ) - - parser.add_argument( - "config_dataset_path", - type=str, - help="Path to dataset config file.", - ) - parser.add_argument("--use_cuda", type=bool, help="flag to set cuda.", default=True) - parser.add_argument("--eval", type=bool, help="compute eval.", default=True) - - args = parser.parse_args() - - c_dataset = load_config(args.config_dataset_path) - - meta_data_train, meta_data_eval = load_tts_samples(c_dataset.datasets, eval_split=args.eval) - items = meta_data_train + meta_data_eval - - enc_manager = SpeakerManager( - encoder_model_path=args.model_path, encoder_config_path=args.config_path, use_cuda=args.use_cuda - ) - - compute_encoder_accuracy(items, enc_manager) diff --git a/TTS/bin/extract_tts_spectrograms.py b/TTS/bin/extract_tts_spectrograms.py deleted file mode 100644 index 9eadee070ed15283e4460331cbb48927392a2b12..0000000000000000000000000000000000000000 --- a/TTS/bin/extract_tts_spectrograms.py +++ /dev/null @@ -1,286 +0,0 @@ -#!/usr/bin/env python3 -"""Extract Mel spectrograms with teacher forcing.""" - -import argparse -import os - -import numpy as np -import torch -from torch.utils.data import DataLoader -from tqdm import tqdm - -from TTS.config import load_config -from TTS.tts.datasets import TTSDataset, load_tts_samples -from TTS.tts.models import setup_model -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor -from TTS.utils.generic_utils import count_parameters - -use_cuda = torch.cuda.is_available() - - -def setup_loader(ap, r, verbose=False): - tokenizer, _ = TTSTokenizer.init_from_config(c) - dataset = TTSDataset( - outputs_per_step=r, - compute_linear_spec=False, - samples=meta_data, - tokenizer=tokenizer, - ap=ap, - batch_group_size=0, - min_text_len=c.min_text_len, - max_text_len=c.max_text_len, - min_audio_len=c.min_audio_len, - max_audio_len=c.max_audio_len, - phoneme_cache_path=c.phoneme_cache_path, - precompute_num_workers=0, - use_noise_augment=False, - verbose=verbose, - speaker_id_mapping=speaker_manager.name_to_id if c.use_speaker_embedding else None, - d_vector_mapping=speaker_manager.embeddings if c.use_d_vector_file else None, - ) - - if c.use_phonemes and c.compute_input_seq_cache: - # precompute phonemes to have a better estimate of sequence lengths. - dataset.compute_input_seq(c.num_loader_workers) - dataset.preprocess_samples() - - loader = DataLoader( - dataset, - batch_size=c.batch_size, - shuffle=False, - collate_fn=dataset.collate_fn, - drop_last=False, - sampler=None, - num_workers=c.num_loader_workers, - pin_memory=False, - ) - return loader - - -def set_filename(wav_path, out_path): - wav_file = os.path.basename(wav_path) - file_name = wav_file.split(".")[0] - os.makedirs(os.path.join(out_path, "quant"), exist_ok=True) - os.makedirs(os.path.join(out_path, "mel"), exist_ok=True) - os.makedirs(os.path.join(out_path, "wav_gl"), exist_ok=True) - os.makedirs(os.path.join(out_path, "wav"), exist_ok=True) - wavq_path = os.path.join(out_path, "quant", file_name) - mel_path = os.path.join(out_path, "mel", file_name) - wav_gl_path = os.path.join(out_path, "wav_gl", file_name + ".wav") - wav_path = os.path.join(out_path, "wav", file_name + ".wav") - return file_name, wavq_path, mel_path, wav_gl_path, wav_path - - -def format_data(data): - # setup input data - text_input = data["token_id"] - text_lengths = data["token_id_lengths"] - mel_input = data["mel"] - mel_lengths = data["mel_lengths"] - item_idx = data["item_idxs"] - d_vectors = data["d_vectors"] - speaker_ids = data["speaker_ids"] - attn_mask = data["attns"] - avg_text_length = torch.mean(text_lengths.float()) - avg_spec_length = torch.mean(mel_lengths.float()) - - # dispatch data to GPU - if use_cuda: - text_input = text_input.cuda(non_blocking=True) - text_lengths = text_lengths.cuda(non_blocking=True) - mel_input = mel_input.cuda(non_blocking=True) - mel_lengths = mel_lengths.cuda(non_blocking=True) - if speaker_ids is not None: - speaker_ids = speaker_ids.cuda(non_blocking=True) - if d_vectors is not None: - d_vectors = d_vectors.cuda(non_blocking=True) - if attn_mask is not None: - attn_mask = attn_mask.cuda(non_blocking=True) - return ( - text_input, - text_lengths, - mel_input, - mel_lengths, - speaker_ids, - d_vectors, - avg_text_length, - avg_spec_length, - attn_mask, - item_idx, - ) - - -@torch.no_grad() -def inference( - model_name, - model, - ap, - text_input, - text_lengths, - mel_input, - mel_lengths, - speaker_ids=None, - d_vectors=None, -): - if model_name == "glow_tts": - speaker_c = None - if speaker_ids is not None: - speaker_c = speaker_ids - elif d_vectors is not None: - speaker_c = d_vectors - outputs = model.inference_with_MAS( - text_input, - text_lengths, - mel_input, - mel_lengths, - aux_input={"d_vectors": speaker_c, "speaker_ids": speaker_ids}, - ) - model_output = outputs["model_outputs"] - model_output = model_output.detach().cpu().numpy() - - elif "tacotron" in model_name: - aux_input = {"speaker_ids": speaker_ids, "d_vectors": d_vectors} - outputs = model(text_input, text_lengths, mel_input, mel_lengths, aux_input) - postnet_outputs = outputs["model_outputs"] - # normalize tacotron output - if model_name == "tacotron": - mel_specs = [] - postnet_outputs = postnet_outputs.data.cpu().numpy() - for b in range(postnet_outputs.shape[0]): - postnet_output = postnet_outputs[b] - mel_specs.append(torch.FloatTensor(ap.out_linear_to_mel(postnet_output.T).T)) - model_output = torch.stack(mel_specs).cpu().numpy() - - elif model_name == "tacotron2": - model_output = postnet_outputs.detach().cpu().numpy() - return model_output - - -def extract_spectrograms( - data_loader, model, ap, output_path, quantized_wav=False, save_audio=False, debug=False, metada_name="metada.txt" -): - model.eval() - export_metadata = [] - for _, data in tqdm(enumerate(data_loader), total=len(data_loader)): - # format data - ( - text_input, - text_lengths, - mel_input, - mel_lengths, - speaker_ids, - d_vectors, - _, - _, - _, - item_idx, - ) = format_data(data) - - model_output = inference( - c.model.lower(), - model, - ap, - text_input, - text_lengths, - mel_input, - mel_lengths, - speaker_ids, - d_vectors, - ) - - for idx in range(text_input.shape[0]): - wav_file_path = item_idx[idx] - wav = ap.load_wav(wav_file_path) - _, wavq_path, mel_path, wav_gl_path, wav_path = set_filename(wav_file_path, output_path) - - # quantize and save wav - if quantized_wav: - wavq = ap.quantize(wav) - np.save(wavq_path, wavq) - - # save TTS mel - mel = model_output[idx] - mel_length = mel_lengths[idx] - mel = mel[:mel_length, :].T - np.save(mel_path, mel) - - export_metadata.append([wav_file_path, mel_path]) - if save_audio: - ap.save_wav(wav, wav_path) - - if debug: - print("Audio for debug saved at:", wav_gl_path) - wav = ap.inv_melspectrogram(mel) - ap.save_wav(wav, wav_gl_path) - - with open(os.path.join(output_path, metada_name), "w", encoding="utf-8") as f: - for data in export_metadata: - f.write(f"{data[0]}|{data[1]+'.npy'}\n") - - -def main(args): # pylint: disable=redefined-outer-name - # pylint: disable=global-variable-undefined - global meta_data, speaker_manager - - # Audio processor - ap = AudioProcessor(**c.audio) - - # load data instances - meta_data_train, meta_data_eval = load_tts_samples( - c.datasets, eval_split=args.eval, eval_split_max_size=c.eval_split_max_size, eval_split_size=c.eval_split_size - ) - - # use eval and training partitions - meta_data = meta_data_train + meta_data_eval - - # init speaker manager - if c.use_speaker_embedding: - speaker_manager = SpeakerManager(data_items=meta_data) - elif c.use_d_vector_file: - speaker_manager = SpeakerManager(d_vectors_file_path=c.d_vector_file) - else: - speaker_manager = None - - # setup model - model = setup_model(c) - - # restore model - model.load_checkpoint(c, args.checkpoint_path, eval=True) - - if use_cuda: - model.cuda() - - num_params = count_parameters(model) - print("\n > Model has {} parameters".format(num_params), flush=True) - # set r - r = 1 if c.model.lower() == "glow_tts" else model.decoder.r - own_loader = setup_loader(ap, r, verbose=True) - - extract_spectrograms( - own_loader, - model, - ap, - args.output_path, - quantized_wav=args.quantized, - save_audio=args.save_audio, - debug=args.debug, - metada_name="metada.txt", - ) - - -if __name__ == "__main__": - parser = argparse.ArgumentParser() - parser.add_argument("--config_path", type=str, help="Path to config file for training.", required=True) - parser.add_argument("--checkpoint_path", type=str, help="Model file to be restored.", required=True) - parser.add_argument("--output_path", type=str, help="Path to save mel specs", required=True) - parser.add_argument("--debug", default=False, action="store_true", help="Save audio files for debug") - parser.add_argument("--save_audio", default=False, action="store_true", help="Save audio files") - parser.add_argument("--quantized", action="store_true", help="Save quantized audio files") - parser.add_argument("--eval", type=bool, help="compute eval.", default=True) - args = parser.parse_args() - - c = load_config(args.config_path) - c.audio.trim_silence = False - main(args) diff --git a/TTS/bin/find_unique_chars.py b/TTS/bin/find_unique_chars.py deleted file mode 100644 index ea16974839df6cf9942ef24a5535597940fde5b2..0000000000000000000000000000000000000000 --- a/TTS/bin/find_unique_chars.py +++ /dev/null @@ -1,45 +0,0 @@ -"""Find all the unique characters in a dataset""" -import argparse -from argparse import RawTextHelpFormatter - -from TTS.config import load_config -from TTS.tts.datasets import load_tts_samples - - -def main(): - # pylint: disable=bad-option-value - parser = argparse.ArgumentParser( - description="""Find all the unique characters or phonemes in a dataset.\n\n""" - """ - Example runs: - - python TTS/bin/find_unique_chars.py --config_path config.json - """, - formatter_class=RawTextHelpFormatter, - ) - parser.add_argument("--config_path", type=str, help="Path to dataset config file.", required=True) - args = parser.parse_args() - - c = load_config(args.config_path) - - # load all datasets - train_items, eval_items = load_tts_samples( - c.datasets, eval_split=True, eval_split_max_size=c.eval_split_max_size, eval_split_size=c.eval_split_size - ) - - items = train_items + eval_items - - texts = "".join(item["text"] for item in items) - chars = set(texts) - lower_chars = filter(lambda c: c.islower(), chars) - chars_force_lower = [c.lower() for c in chars] - chars_force_lower = set(chars_force_lower) - - print(f" > Number of unique characters: {len(chars)}") - print(f" > Unique characters: {''.join(sorted(chars))}") - print(f" > Unique lower characters: {''.join(sorted(lower_chars))}") - print(f" > Unique all forced to lower characters: {''.join(sorted(chars_force_lower))}") - - -if __name__ == "__main__": - main() diff --git a/TTS/bin/find_unique_phonemes.py b/TTS/bin/find_unique_phonemes.py deleted file mode 100644 index 4bd7a78eef2c4850bca9369def55d68336cd53aa..0000000000000000000000000000000000000000 --- a/TTS/bin/find_unique_phonemes.py +++ /dev/null @@ -1,74 +0,0 @@ -"""Find all the unique characters in a dataset""" -import argparse -import multiprocessing -from argparse import RawTextHelpFormatter - -from tqdm.contrib.concurrent import process_map - -from TTS.config import load_config -from TTS.tts.datasets import load_tts_samples -from TTS.tts.utils.text.phonemizers import Gruut - - -def compute_phonemes(item): - text = item["text"] - ph = phonemizer.phonemize(text).replace("|", "") - return set(list(ph)) - - -def main(): - # pylint: disable=W0601 - global c, phonemizer - # pylint: disable=bad-option-value - parser = argparse.ArgumentParser( - description="""Find all the unique characters or phonemes in a dataset.\n\n""" - """ - Example runs: - - python TTS/bin/find_unique_phonemes.py --config_path config.json - """, - formatter_class=RawTextHelpFormatter, - ) - parser.add_argument("--config_path", type=str, help="Path to dataset config file.", required=True) - args = parser.parse_args() - - c = load_config(args.config_path) - - # load all datasets - train_items, eval_items = load_tts_samples( - c.datasets, eval_split=True, eval_split_max_size=c.eval_split_max_size, eval_split_size=c.eval_split_size - ) - items = train_items + eval_items - print("Num items:", len(items)) - - language_list = [item["language"] for item in items] - is_lang_def = all(language_list) - - if not c.phoneme_language or not is_lang_def: - raise ValueError("Phoneme language must be defined in config.") - - if not language_list.count(language_list[0]) == len(language_list): - raise ValueError( - "Currently, just one phoneme language per config file is supported !! Please split the dataset config into different configs and run it individually for each language !!" - ) - - phonemizer = Gruut(language=language_list[0], keep_puncs=True) - - phonemes = process_map(compute_phonemes, items, max_workers=multiprocessing.cpu_count(), chunksize=15) - phones = [] - for ph in phonemes: - phones.extend(ph) - - phones = set(phones) - lower_phones = filter(lambda c: c.islower(), phones) - phones_force_lower = [c.lower() for c in phones] - phones_force_lower = set(phones_force_lower) - - print(f" > Number of unique phonemes: {len(phones)}") - print(f" > Unique phonemes: {''.join(sorted(phones))}") - print(f" > Unique lower phonemes: {''.join(sorted(lower_phones))}") - print(f" > Unique all forced to lower phonemes: {''.join(sorted(phones_force_lower))}") - - -if __name__ == "__main__": - main() diff --git a/TTS/bin/remove_silence_using_vad.py b/TTS/bin/remove_silence_using_vad.py deleted file mode 100644 index a1eaf4c9a713e2e72a9e8434397ac430ff10aef1..0000000000000000000000000000000000000000 --- a/TTS/bin/remove_silence_using_vad.py +++ /dev/null @@ -1,124 +0,0 @@ -import argparse -import glob -import multiprocessing -import os -import pathlib - -import torch -from tqdm import tqdm - -from TTS.utils.vad import get_vad_model_and_utils, remove_silence - -torch.set_num_threads(1) - - -def adjust_path_and_remove_silence(audio_path): - output_path = audio_path.replace(os.path.join(args.input_dir, ""), os.path.join(args.output_dir, "")) - # ignore if the file exists - if os.path.exists(output_path) and not args.force: - return output_path, False - - # create all directory structure - pathlib.Path(output_path).parent.mkdir(parents=True, exist_ok=True) - # remove the silence and save the audio - output_path, is_speech = remove_silence( - model_and_utils, - audio_path, - output_path, - trim_just_beginning_and_end=args.trim_just_beginning_and_end, - use_cuda=args.use_cuda, - ) - return output_path, is_speech - - -def preprocess_audios(): - files = sorted(glob.glob(os.path.join(args.input_dir, args.glob), recursive=True)) - print("> Number of files: ", len(files)) - if not args.force: - print("> Ignoring files that already exist in the output idrectory.") - - if args.trim_just_beginning_and_end: - print("> Trimming just the beginning and the end with nonspeech parts.") - else: - print("> Trimming all nonspeech parts.") - - filtered_files = [] - if files: - # create threads - # num_threads = multiprocessing.cpu_count() - # process_map(adjust_path_and_remove_silence, files, max_workers=num_threads, chunksize=15) - - if args.num_processes > 1: - with multiprocessing.Pool(processes=args.num_processes) as pool: - results = list( - tqdm( - pool.imap_unordered(adjust_path_and_remove_silence, files), - total=len(files), - desc="Processing audio files", - ) - ) - for output_path, is_speech in results: - if not is_speech: - filtered_files.append(output_path) - else: - for f in tqdm(files): - output_path, is_speech = adjust_path_and_remove_silence(f) - if not is_speech: - filtered_files.append(output_path) - - # write files that do not have speech - with open(os.path.join(args.output_dir, "filtered_files.txt"), "w", encoding="utf-8") as f: - for file in filtered_files: - f.write(str(file) + "\n") - else: - print("> No files Found !") - - -if __name__ == "__main__": - parser = argparse.ArgumentParser( - description="python TTS/bin/remove_silence_using_vad.py -i=VCTK-Corpus/ -o=VCTK-Corpus-removed-silence/ -g=wav48_silence_trimmed/*/*_mic1.flac --trim_just_beginning_and_end True" - ) - parser.add_argument("-i", "--input_dir", type=str, help="Dataset root dir", required=True) - parser.add_argument("-o", "--output_dir", type=str, help="Output Dataset dir", default="") - parser.add_argument("-f", "--force", default=False, action="store_true", help="Force the replace of exists files") - parser.add_argument( - "-g", - "--glob", - type=str, - default="**/*.wav", - help="path in glob format for acess wavs from input_dir. ex: wav48/*/*.wav", - ) - parser.add_argument( - "-t", - "--trim_just_beginning_and_end", - type=bool, - default=True, - help="If True this script will trim just the beginning and end nonspeech parts. If False all nonspeech parts will be trim. Default True", - ) - parser.add_argument( - "-c", - "--use_cuda", - type=bool, - default=False, - help="If True use cuda", - ) - parser.add_argument( - "--use_onnx", - type=bool, - default=False, - help="If True use onnx", - ) - parser.add_argument( - "--num_processes", - type=int, - default=1, - help="Number of processes to use", - ) - args = parser.parse_args() - - if args.output_dir == "": - args.output_dir = args.input_dir - - # load the model and utils - model_and_utils = get_vad_model_and_utils(use_cuda=args.use_cuda, use_onnx=args.use_onnx) - preprocess_audios() diff --git a/TTS/bin/resample.py b/TTS/bin/resample.py deleted file mode 100644 index a3f28485d1fb235ab0d521ee30318c64b48fbd5a..0000000000000000000000000000000000000000 --- a/TTS/bin/resample.py +++ /dev/null @@ -1,90 +0,0 @@ -import argparse -import glob -import os -from argparse import RawTextHelpFormatter -from multiprocessing import Pool -from shutil import copytree - -import librosa -import soundfile as sf -from tqdm import tqdm - - -def resample_file(func_args): - filename, output_sr = func_args - y, sr = librosa.load(filename, sr=output_sr) - sf.write(filename, y, sr) - - -def resample_files(input_dir, output_sr, output_dir=None, file_ext="wav", n_jobs=10): - if output_dir: - print("Recursively copying the input folder...") - copytree(input_dir, output_dir) - input_dir = output_dir - - print("Resampling the audio files...") - audio_files = glob.glob(os.path.join(input_dir, f"**/*.{file_ext}"), recursive=True) - print(f"Found {len(audio_files)} files...") - audio_files = list(zip(audio_files, len(audio_files) * [output_sr])) - with Pool(processes=n_jobs) as p: - with tqdm(total=len(audio_files)) as pbar: - for _, _ in enumerate(p.imap_unordered(resample_file, audio_files)): - pbar.update() - - print("Done !") - - -if __name__ == "__main__": - parser = argparse.ArgumentParser( - description="""Resample a folder recusively with librosa - Can be used in place or create a copy of the folder as an output.\n\n - Example run: - python TTS/bin/resample.py - --input_dir /root/LJSpeech-1.1/ - --output_sr 22050 - --output_dir /root/resampled_LJSpeech-1.1/ - --file_ext wav - --n_jobs 24 - """, - formatter_class=RawTextHelpFormatter, - ) - - parser.add_argument( - "--input_dir", - type=str, - default=None, - required=True, - help="Path of the folder containing the audio files to resample", - ) - - parser.add_argument( - "--output_sr", - type=int, - default=22050, - required=False, - help="Samlple rate to which the audio files should be resampled", - ) - - parser.add_argument( - "--output_dir", - type=str, - default=None, - required=False, - help="Path of the destination folder. If not defined, the operation is done in place", - ) - - parser.add_argument( - "--file_ext", - type=str, - default="wav", - required=False, - help="Extension of the audio files to resample", - ) - - parser.add_argument( - "--n_jobs", type=int, default=None, help="Number of threads to use, by default it uses all cores" - ) - - args = parser.parse_args() - - resample_files(args.input_dir, args.output_sr, args.output_dir, args.file_ext, args.n_jobs) diff --git a/TTS/bin/synthesize.py b/TTS/bin/synthesize.py deleted file mode 100644 index d4350cd5e8f52edcdbf296fa2d9e3ee4d9228b35..0000000000000000000000000000000000000000 --- a/TTS/bin/synthesize.py +++ /dev/null @@ -1,466 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- - -import argparse -import sys -from argparse import RawTextHelpFormatter - -# pylint: disable=redefined-outer-name, unused-argument -from pathlib import Path - -from TTS.api import TTS -from TTS.utils.manage import ModelManager -from TTS.utils.synthesizer import Synthesizer - - -def str2bool(v): - if isinstance(v, bool): - return v - if v.lower() in ("yes", "true", "t", "y", "1"): - return True - if v.lower() in ("no", "false", "f", "n", "0"): - return False - raise argparse.ArgumentTypeError("Boolean value expected.") - - -def main(): - description = """Synthesize speech on command line. - -You can either use your trained model or choose a model from the provided list. - -If you don't specify any models, then it uses LJSpeech based English model. - -## Example Runs - -### Single Speaker Models - -- List provided models: - - ``` - $ tts --list_models - ``` - -- Query info for model info by idx: - - ``` - $ tts --model_info_by_idx "/" - ``` - -- Query info for model info by full name: - - ``` - $ tts --model_info_by_name "///" - ``` - -- Run TTS with default models: - - ``` - $ tts --text "Text for TTS" - ``` - -- Run a TTS model with its default vocoder model: - - ``` - $ tts --text "Text for TTS" --model_name "/// - ``` - -- Run with specific TTS and vocoder models from the list: - - ``` - $ tts --text "Text for TTS" --model_name "///" --vocoder_name "///" --output_path - ``` - -- Run your own TTS model (Using Griffin-Lim Vocoder): - - ``` - $ tts --text "Text for TTS" --model_path path/to/model.pth --config_path path/to/config.json --out_path output/path/speech.wav - ``` - -- Run your own TTS and Vocoder models: - ``` - $ tts --text "Text for TTS" --model_path path/to/config.json --config_path path/to/model.pth --out_path output/path/speech.wav - --vocoder_path path/to/vocoder.pth --vocoder_config_path path/to/vocoder_config.json - ``` - -### Multi-speaker Models - -- List the available speakers and choose as among them: - - ``` - $ tts --model_name "//" --list_speaker_idxs - ``` - -- Run the multi-speaker TTS model with the target speaker ID: - - ``` - $ tts --text "Text for TTS." --out_path output/path/speech.wav --model_name "//" --speaker_idx - ``` - -- Run your own multi-speaker TTS model: - - ``` - $ tts --text "Text for TTS" --out_path output/path/speech.wav --model_path path/to/config.json --config_path path/to/model.pth --speakers_file_path path/to/speaker.json --speaker_idx - ``` - -### Voice Conversion Models - - ``` - $ tts --out_path output/path/speech.wav --model_name "//" --source_wav --target_wav - ``` - """ - # We remove Markdown code formatting programmatically here to allow us to copy-and-paste from main README to keep - # documentation in sync more easily. - parser = argparse.ArgumentParser( - description=description.replace(" ```\n", ""), - formatter_class=RawTextHelpFormatter, - ) - - parser.add_argument( - "--list_models", - type=str2bool, - nargs="?", - const=True, - default=False, - help="list available pre-trained TTS and vocoder models.", - ) - - parser.add_argument( - "--model_info_by_idx", - type=str, - default=None, - help="model info using query format: /", - ) - - parser.add_argument( - "--model_info_by_name", - type=str, - default=None, - help="model info using query format: ///", - ) - - parser.add_argument("--text", type=str, default=None, help="Text to generate speech.") - - # Args for running pre-trained TTS models. - parser.add_argument( - "--model_name", - type=str, - default="tts_models/en/ljspeech/tacotron2-DDC", - help="Name of one of the pre-trained TTS models in format //", - ) - parser.add_argument( - "--vocoder_name", - type=str, - default=None, - help="Name of one of the pre-trained vocoder models in format //", - ) - - # Args for running custom models - parser.add_argument("--config_path", default=None, type=str, help="Path to model config file.") - parser.add_argument( - "--model_path", - type=str, - default=None, - help="Path to model file.", - ) - parser.add_argument( - "--out_path", - type=str, - default="tts_output.wav", - help="Output wav file path.", - ) - parser.add_argument("--use_cuda", type=bool, help="Run model on CUDA.", default=False) - parser.add_argument( - "--vocoder_path", - type=str, - help="Path to vocoder model file. If it is not defined, model uses GL as vocoder. Please make sure that you installed vocoder library before (WaveRNN).", - default=None, - ) - parser.add_argument("--vocoder_config_path", type=str, help="Path to vocoder model config file.", default=None) - parser.add_argument( - "--encoder_path", - type=str, - help="Path to speaker encoder model file.", - default=None, - ) - parser.add_argument("--encoder_config_path", type=str, help="Path to speaker encoder config file.", default=None) - - # args for coqui studio - parser.add_argument( - "--cs_model", - type=str, - help="Name of the 🐸Coqui Studio model. Available models are `XTTS`, `XTTS-multilingual`, `V1`.", - ) - parser.add_argument( - "--emotion", - type=str, - help="Emotion to condition the model with. Only available for 🐸Coqui Studio `V1` model.", - default=None, - ) - parser.add_argument( - "--language", - type=str, - help="Language to condition the model with. Only available for 🐸Coqui Studio `XTTS-multilingual` model.", - default=None, - ) - - # args for multi-speaker synthesis - parser.add_argument("--speakers_file_path", type=str, help="JSON file for multi-speaker model.", default=None) - parser.add_argument("--language_ids_file_path", type=str, help="JSON file for multi-lingual model.", default=None) - parser.add_argument( - "--speaker_idx", - type=str, - help="Target speaker ID for a multi-speaker TTS model.", - default=None, - ) - parser.add_argument( - "--language_idx", - type=str, - help="Target language ID for a multi-lingual TTS model.", - default=None, - ) - parser.add_argument( - "--speaker_wav", - nargs="+", - help="wav file(s) to condition a multi-speaker TTS model with a Speaker Encoder. You can give multiple file paths. The d_vectors is computed as their average.", - default=None, - ) - parser.add_argument("--gst_style", help="Wav path file for GST style reference.", default=None) - parser.add_argument( - "--capacitron_style_wav", type=str, help="Wav path file for Capacitron prosody reference.", default=None - ) - parser.add_argument("--capacitron_style_text", type=str, help="Transcription of the reference.", default=None) - parser.add_argument( - "--list_speaker_idxs", - help="List available speaker ids for the defined multi-speaker model.", - type=str2bool, - nargs="?", - const=True, - default=False, - ) - parser.add_argument( - "--list_language_idxs", - help="List available language ids for the defined multi-lingual model.", - type=str2bool, - nargs="?", - const=True, - default=False, - ) - # aux args - parser.add_argument( - "--save_spectogram", - type=bool, - help="If true save raw spectogram for further (vocoder) processing in out_path.", - default=False, - ) - parser.add_argument( - "--reference_wav", - type=str, - help="Reference wav file to convert in the voice of the speaker_idx or speaker_wav", - default=None, - ) - parser.add_argument( - "--reference_speaker_idx", - type=str, - help="speaker ID of the reference_wav speaker (If not provided the embedding will be computed using the Speaker Encoder).", - default=None, - ) - parser.add_argument( - "--progress_bar", - type=str2bool, - help="If true shows a progress bar for the model download. Defaults to True", - default=True, - ) - - # voice conversion args - parser.add_argument( - "--source_wav", - type=str, - default=None, - help="Original audio file to convert in the voice of the target_wav", - ) - parser.add_argument( - "--target_wav", - type=str, - default=None, - help="Target audio file to convert in the voice of the source_wav", - ) - - parser.add_argument( - "--voice_dir", - type=str, - default=None, - help="Voice dir for tortoise model", - ) - - args = parser.parse_args() - - # print the description if either text or list_models is not set - check_args = [ - args.text, - args.list_models, - args.list_speaker_idxs, - args.list_language_idxs, - args.reference_wav, - args.model_info_by_idx, - args.model_info_by_name, - args.source_wav, - args.target_wav, - ] - if not any(check_args): - parser.parse_args(["-h"]) - - # load model manager - path = Path(__file__).parent / "../.models.json" - manager = ModelManager(path, progress_bar=args.progress_bar) - api = TTS() - - tts_path = None - tts_config_path = None - speakers_file_path = None - language_ids_file_path = None - vocoder_path = None - vocoder_config_path = None - encoder_path = None - encoder_config_path = None - vc_path = None - vc_config_path = None - model_dir = None - - # CASE1 #list : list pre-trained TTS models - if args.list_models: - manager.add_cs_api_models(api.list_models()) - manager.list_models() - sys.exit() - - # CASE2 #info : model info for pre-trained TTS models - if args.model_info_by_idx: - model_query = args.model_info_by_idx - manager.model_info_by_idx(model_query) - sys.exit() - - if args.model_info_by_name: - model_query_full_name = args.model_info_by_name - manager.model_info_by_full_name(model_query_full_name) - sys.exit() - - # CASE3: TTS with coqui studio models - if "coqui_studio" in args.model_name: - print(" > Using 🐸Coqui Studio model: ", args.model_name) - api = TTS(model_name=args.model_name, cs_api_model=args.cs_model) - api.tts_to_file(text=args.text, emotion=args.emotion, file_path=args.out_path, language=args.language) - print(" > Saving output to ", args.out_path) - return - - # CASE4: load pre-trained model paths - if args.model_name is not None and not args.model_path: - model_path, config_path, model_item = manager.download_model(args.model_name) - # tts model - if model_item["model_type"] == "tts_models": - tts_path = model_path - tts_config_path = config_path - if "default_vocoder" in model_item: - args.vocoder_name = model_item["default_vocoder"] if args.vocoder_name is None else args.vocoder_name - - # voice conversion model - if model_item["model_type"] == "voice_conversion_models": - vc_path = model_path - vc_config_path = config_path - - # tts model with multiple files to be loaded from the directory path - if model_item.get("author", None) == "fairseq" or isinstance(model_item["model_url"], list): - model_dir = model_path - tts_path = None - tts_config_path = None - args.vocoder_name = None - - # load vocoder - if args.vocoder_name is not None and not args.vocoder_path: - vocoder_path, vocoder_config_path, _ = manager.download_model(args.vocoder_name) - - # CASE5: set custom model paths - if args.model_path is not None: - tts_path = args.model_path - tts_config_path = args.config_path - speakers_file_path = args.speakers_file_path - language_ids_file_path = args.language_ids_file_path - - if args.vocoder_path is not None: - vocoder_path = args.vocoder_path - vocoder_config_path = args.vocoder_config_path - - if args.encoder_path is not None: - encoder_path = args.encoder_path - encoder_config_path = args.encoder_config_path - - # load models - synthesizer = Synthesizer( - tts_path, - tts_config_path, - speakers_file_path, - language_ids_file_path, - vocoder_path, - vocoder_config_path, - encoder_path, - encoder_config_path, - vc_path, - vc_config_path, - model_dir, - args.voice_dir, - args.use_cuda, - ) - - # query speaker ids of a multi-speaker model. - if args.list_speaker_idxs: - print( - " > Available speaker ids: (Set --speaker_idx flag to one of these values to use the multi-speaker model." - ) - print(synthesizer.tts_model.speaker_manager.name_to_id) - return - - # query langauge ids of a multi-lingual model. - if args.list_language_idxs: - print( - " > Available language ids: (Set --language_idx flag to one of these values to use the multi-lingual model." - ) - print(synthesizer.tts_model.language_manager.name_to_id) - return - - # check the arguments against a multi-speaker model. - if synthesizer.tts_speakers_file and (not args.speaker_idx and not args.speaker_wav): - print( - " [!] Looks like you use a multi-speaker model. Define `--speaker_idx` to " - "select the target speaker. You can list the available speakers for this model by `--list_speaker_idxs`." - ) - return - - # RUN THE SYNTHESIS - if args.text: - print(" > Text: {}".format(args.text)) - - # kick it - if tts_path is not None: - wav = synthesizer.tts( - args.text, - speaker_name=args.speaker_idx, - language_name=args.language_idx, - speaker_wav=args.speaker_wav, - reference_wav=args.reference_wav, - style_wav=args.capacitron_style_wav, - style_text=args.capacitron_style_text, - reference_speaker_name=args.reference_speaker_idx, - ) - elif vc_path is not None: - wav = synthesizer.voice_conversion( - source_wav=args.source_wav, - target_wav=args.target_wav, - ) - elif model_dir is not None: - wav = synthesizer.tts(args.text, speaker_name=args.speaker_idx) - - # save the results - print(" > Saving output to {}".format(args.out_path)) - synthesizer.save_wav(wav, args.out_path) - - -if __name__ == "__main__": - main() diff --git a/TTS/bin/train_encoder.py b/TTS/bin/train_encoder.py deleted file mode 100644 index f2e7779c0c109a3ec78f1972ebf1147ec436048a..0000000000000000000000000000000000000000 --- a/TTS/bin/train_encoder.py +++ /dev/null @@ -1,319 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- - -import os -import sys -import time -import traceback - -import torch -from torch.utils.data import DataLoader -from trainer.torch import NoamLR -from trainer.trainer_utils import get_optimizer - -from TTS.encoder.dataset import EncoderDataset -from TTS.encoder.utils.generic_utils import save_best_model, save_checkpoint, setup_encoder_model -from TTS.encoder.utils.training import init_training -from TTS.encoder.utils.visual import plot_embeddings -from TTS.tts.datasets import load_tts_samples -from TTS.utils.audio import AudioProcessor -from TTS.utils.generic_utils import count_parameters, remove_experiment_folder -from TTS.utils.io import copy_model_files -from TTS.utils.samplers import PerfectBatchSampler -from TTS.utils.training import check_update - -torch.backends.cudnn.enabled = True -torch.backends.cudnn.benchmark = True -torch.manual_seed(54321) -use_cuda = torch.cuda.is_available() -num_gpus = torch.cuda.device_count() -print(" > Using CUDA: ", use_cuda) -print(" > Number of GPUs: ", num_gpus) - - -def setup_loader(ap: AudioProcessor, is_val: bool = False, verbose: bool = False): - num_utter_per_class = c.num_utter_per_class if not is_val else c.eval_num_utter_per_class - num_classes_in_batch = c.num_classes_in_batch if not is_val else c.eval_num_classes_in_batch - - dataset = EncoderDataset( - c, - ap, - meta_data_eval if is_val else meta_data_train, - voice_len=c.voice_len, - num_utter_per_class=num_utter_per_class, - num_classes_in_batch=num_classes_in_batch, - verbose=verbose, - augmentation_config=c.audio_augmentation if not is_val else None, - use_torch_spec=c.model_params.get("use_torch_spec", False), - ) - # get classes list - classes = dataset.get_class_list() - - sampler = PerfectBatchSampler( - dataset.items, - classes, - batch_size=num_classes_in_batch * num_utter_per_class, # total batch size - num_classes_in_batch=num_classes_in_batch, - num_gpus=1, - shuffle=not is_val, - drop_last=True, - ) - - if len(classes) < num_classes_in_batch: - if is_val: - raise RuntimeError( - f"config.eval_num_classes_in_batch ({num_classes_in_batch}) need to be <= {len(classes)} (Number total of Classes in the Eval dataset) !" - ) - raise RuntimeError( - f"config.num_classes_in_batch ({num_classes_in_batch}) need to be <= {len(classes)} (Number total of Classes in the Train dataset) !" - ) - - # set the classes to avoid get wrong class_id when the number of training and eval classes are not equal - if is_val: - dataset.set_classes(train_classes) - - loader = DataLoader( - dataset, - num_workers=c.num_loader_workers, - batch_sampler=sampler, - collate_fn=dataset.collate_fn, - ) - - return loader, classes, dataset.get_map_classid_to_classname() - - -def evaluation(model, criterion, data_loader, global_step): - eval_loss = 0 - for _, data in enumerate(data_loader): - with torch.no_grad(): - # setup input data - inputs, labels = data - - # agroup samples of each class in the batch. perfect sampler produces [3,2,1,3,2,1] we need [3,3,2,2,1,1] - labels = torch.transpose( - labels.view(c.eval_num_utter_per_class, c.eval_num_classes_in_batch), 0, 1 - ).reshape(labels.shape) - inputs = torch.transpose( - inputs.view(c.eval_num_utter_per_class, c.eval_num_classes_in_batch, -1), 0, 1 - ).reshape(inputs.shape) - - # dispatch data to GPU - if use_cuda: - inputs = inputs.cuda(non_blocking=True) - labels = labels.cuda(non_blocking=True) - - # forward pass model - outputs = model(inputs) - - # loss computation - loss = criterion( - outputs.view(c.eval_num_classes_in_batch, outputs.shape[0] // c.eval_num_classes_in_batch, -1), labels - ) - - eval_loss += loss.item() - - eval_avg_loss = eval_loss / len(data_loader) - # save stats - dashboard_logger.eval_stats(global_step, {"loss": eval_avg_loss}) - # plot the last batch in the evaluation - figures = { - "UMAP Plot": plot_embeddings(outputs.detach().cpu().numpy(), c.num_classes_in_batch), - } - dashboard_logger.eval_figures(global_step, figures) - return eval_avg_loss - - -def train(model, optimizer, scheduler, criterion, data_loader, eval_data_loader, global_step): - model.train() - best_loss = float("inf") - avg_loader_time = 0 - end_time = time.time() - for epoch in range(c.epochs): - tot_loss = 0 - epoch_time = 0 - for _, data in enumerate(data_loader): - start_time = time.time() - - # setup input data - inputs, labels = data - # agroup samples of each class in the batch. perfect sampler produces [3,2,1,3,2,1] we need [3,3,2,2,1,1] - labels = torch.transpose(labels.view(c.num_utter_per_class, c.num_classes_in_batch), 0, 1).reshape( - labels.shape - ) - inputs = torch.transpose(inputs.view(c.num_utter_per_class, c.num_classes_in_batch, -1), 0, 1).reshape( - inputs.shape - ) - # ToDo: move it to a unit test - # labels_converted = torch.transpose(labels.view(c.num_utter_per_class, c.num_classes_in_batch), 0, 1).reshape(labels.shape) - # inputs_converted = torch.transpose(inputs.view(c.num_utter_per_class, c.num_classes_in_batch, -1), 0, 1).reshape(inputs.shape) - # idx = 0 - # for j in range(0, c.num_classes_in_batch, 1): - # for i in range(j, len(labels), c.num_classes_in_batch): - # if not torch.all(labels[i].eq(labels_converted[idx])) or not torch.all(inputs[i].eq(inputs_converted[idx])): - # print("Invalid") - # print(labels) - # exit() - # idx += 1 - # labels = labels_converted - # inputs = inputs_converted - - loader_time = time.time() - end_time - global_step += 1 - - # setup lr - if c.lr_decay: - scheduler.step() - optimizer.zero_grad() - - # dispatch data to GPU - if use_cuda: - inputs = inputs.cuda(non_blocking=True) - labels = labels.cuda(non_blocking=True) - - # forward pass model - outputs = model(inputs) - - # loss computation - loss = criterion( - outputs.view(c.num_classes_in_batch, outputs.shape[0] // c.num_classes_in_batch, -1), labels - ) - loss.backward() - grad_norm, _ = check_update(model, c.grad_clip) - optimizer.step() - - step_time = time.time() - start_time - epoch_time += step_time - - # acumulate the total epoch loss - tot_loss += loss.item() - - # Averaged Loader Time - num_loader_workers = c.num_loader_workers if c.num_loader_workers > 0 else 1 - avg_loader_time = ( - 1 / num_loader_workers * loader_time + (num_loader_workers - 1) / num_loader_workers * avg_loader_time - if avg_loader_time != 0 - else loader_time - ) - current_lr = optimizer.param_groups[0]["lr"] - - if global_step % c.steps_plot_stats == 0: - # Plot Training Epoch Stats - train_stats = { - "loss": loss.item(), - "lr": current_lr, - "grad_norm": grad_norm, - "step_time": step_time, - "avg_loader_time": avg_loader_time, - } - dashboard_logger.train_epoch_stats(global_step, train_stats) - figures = { - "UMAP Plot": plot_embeddings(outputs.detach().cpu().numpy(), c.num_classes_in_batch), - } - dashboard_logger.train_figures(global_step, figures) - - if global_step % c.print_step == 0: - print( - " | > Step:{} Loss:{:.5f} GradNorm:{:.5f} " - "StepTime:{:.2f} LoaderTime:{:.2f} AvGLoaderTime:{:.2f} LR:{:.6f}".format( - global_step, loss.item(), grad_norm, step_time, loader_time, avg_loader_time, current_lr - ), - flush=True, - ) - - if global_step % c.save_step == 0: - # save model - save_checkpoint(model, optimizer, criterion, loss.item(), OUT_PATH, global_step, epoch) - - end_time = time.time() - - print("") - print( - ">>> Epoch:{} AvgLoss: {:.5f} GradNorm:{:.5f} " - "EpochTime:{:.2f} AvGLoaderTime:{:.2f} ".format( - epoch, tot_loss / len(data_loader), grad_norm, epoch_time, avg_loader_time - ), - flush=True, - ) - # evaluation - if c.run_eval: - model.eval() - eval_loss = evaluation(model, criterion, eval_data_loader, global_step) - print("\n\n") - print("--> EVAL PERFORMANCE") - print( - " | > Epoch:{} AvgLoss: {:.5f} ".format(epoch, eval_loss), - flush=True, - ) - # save the best checkpoint - best_loss = save_best_model(model, optimizer, criterion, eval_loss, best_loss, OUT_PATH, global_step, epoch) - model.train() - - return best_loss, global_step - - -def main(args): # pylint: disable=redefined-outer-name - # pylint: disable=global-variable-undefined - global meta_data_train - global meta_data_eval - global train_classes - - ap = AudioProcessor(**c.audio) - model = setup_encoder_model(c) - - optimizer = get_optimizer(c.optimizer, c.optimizer_params, c.lr, model) - - # pylint: disable=redefined-outer-name - meta_data_train, meta_data_eval = load_tts_samples(c.datasets, eval_split=True) - - train_data_loader, train_classes, map_classid_to_classname = setup_loader(ap, is_val=False, verbose=True) - if c.run_eval: - eval_data_loader, _, _ = setup_loader(ap, is_val=True, verbose=True) - else: - eval_data_loader = None - - num_classes = len(train_classes) - criterion = model.get_criterion(c, num_classes) - - if c.loss == "softmaxproto" and c.model != "speaker_encoder": - c.map_classid_to_classname = map_classid_to_classname - copy_model_files(c, OUT_PATH) - - if args.restore_path: - criterion, args.restore_step = model.load_checkpoint( - c, args.restore_path, eval=False, use_cuda=use_cuda, criterion=criterion - ) - print(" > Model restored from step %d" % args.restore_step, flush=True) - else: - args.restore_step = 0 - - if c.lr_decay: - scheduler = NoamLR(optimizer, warmup_steps=c.warmup_steps, last_epoch=args.restore_step - 1) - else: - scheduler = None - - num_params = count_parameters(model) - print("\n > Model has {} parameters".format(num_params), flush=True) - - if use_cuda: - model = model.cuda() - criterion.cuda() - - global_step = args.restore_step - _, global_step = train(model, optimizer, scheduler, criterion, train_data_loader, eval_data_loader, global_step) - - -if __name__ == "__main__": - args, c, OUT_PATH, AUDIO_PATH, c_logger, dashboard_logger = init_training() - - try: - main(args) - except KeyboardInterrupt: - remove_experiment_folder(OUT_PATH) - try: - sys.exit(0) - except SystemExit: - os._exit(0) # pylint: disable=protected-access - except Exception: # pylint: disable=broad-except - remove_experiment_folder(OUT_PATH) - traceback.print_exc() - sys.exit(1) diff --git a/TTS/bin/train_tts.py b/TTS/bin/train_tts.py deleted file mode 100644 index bdb4f6f69122a4a9aa4e07695f1816ce9727f323..0000000000000000000000000000000000000000 --- a/TTS/bin/train_tts.py +++ /dev/null @@ -1,71 +0,0 @@ -import os -from dataclasses import dataclass, field - -from trainer import Trainer, TrainerArgs - -from TTS.config import load_config, register_config -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models import setup_model - - -@dataclass -class TrainTTSArgs(TrainerArgs): - config_path: str = field(default=None, metadata={"help": "Path to the config file."}) - - -def main(): - """Run `tts` model training directly by a `config.json` file.""" - # init trainer args - train_args = TrainTTSArgs() - parser = train_args.init_argparse(arg_prefix="") - - # override trainer args from comman-line args - args, config_overrides = parser.parse_known_args() - train_args.parse_args(args) - - # load config.json and register - if args.config_path or args.continue_path: - if args.config_path: - # init from a file - config = load_config(args.config_path) - if len(config_overrides) > 0: - config.parse_known_args(config_overrides, relaxed_parser=True) - elif args.continue_path: - # continue from a prev experiment - config = load_config(os.path.join(args.continue_path, "config.json")) - if len(config_overrides) > 0: - config.parse_known_args(config_overrides, relaxed_parser=True) - else: - # init from console args - from TTS.config.shared_configs import BaseTrainingConfig # pylint: disable=import-outside-toplevel - - config_base = BaseTrainingConfig() - config_base.parse_known_args(config_overrides) - config = register_config(config_base.model)() - - # load training samples - train_samples, eval_samples = load_tts_samples( - config.datasets, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, - ) - - # init the model from config - model = setup_model(config, train_samples + eval_samples) - - # init the trainer and 🚀 - trainer = Trainer( - train_args, - model.config, - config.output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, - parse_command_line_args=False, - ) - trainer.fit() - - -if __name__ == "__main__": - main() diff --git a/TTS/bin/train_vocoder.py b/TTS/bin/train_vocoder.py deleted file mode 100644 index 32ecd7bdc3652b3683be846bdd9518e937aee904..0000000000000000000000000000000000000000 --- a/TTS/bin/train_vocoder.py +++ /dev/null @@ -1,77 +0,0 @@ -import os -from dataclasses import dataclass, field - -from trainer import Trainer, TrainerArgs - -from TTS.config import load_config, register_config -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.datasets.preprocess import load_wav_data, load_wav_feat_data -from TTS.vocoder.models import setup_model - - -@dataclass -class TrainVocoderArgs(TrainerArgs): - config_path: str = field(default=None, metadata={"help": "Path to the config file."}) - - -def main(): - """Run `tts` model training directly by a `config.json` file.""" - # init trainer args - train_args = TrainVocoderArgs() - parser = train_args.init_argparse(arg_prefix="") - - # override trainer args from comman-line args - args, config_overrides = parser.parse_known_args() - train_args.parse_args(args) - - # load config.json and register - if args.config_path or args.continue_path: - if args.config_path: - # init from a file - config = load_config(args.config_path) - if len(config_overrides) > 0: - config.parse_known_args(config_overrides, relaxed_parser=True) - elif args.continue_path: - # continue from a prev experiment - config = load_config(os.path.join(args.continue_path, "config.json")) - if len(config_overrides) > 0: - config.parse_known_args(config_overrides, relaxed_parser=True) - else: - # init from console args - from TTS.config.shared_configs import BaseTrainingConfig # pylint: disable=import-outside-toplevel - - config_base = BaseTrainingConfig() - config_base.parse_known_args(config_overrides) - config = register_config(config_base.model)() - - # load training samples - if "feature_path" in config and config.feature_path: - # load pre-computed features - print(f" > Loading features from: {config.feature_path}") - eval_samples, train_samples = load_wav_feat_data(config.data_path, config.feature_path, config.eval_split_size) - else: - # load data raw wav files - eval_samples, train_samples = load_wav_data(config.data_path, config.eval_split_size) - - # setup audio processor - ap = AudioProcessor(**config.audio) - - # init the model from config - model = setup_model(config) - - # init the trainer and 🚀 - trainer = Trainer( - train_args, - config, - config.output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, - training_assets={"audio_processor": ap}, - parse_command_line_args=False, - ) - trainer.fit() - - -if __name__ == "__main__": - main() diff --git a/TTS/bin/tune_wavegrad.py b/TTS/bin/tune_wavegrad.py deleted file mode 100644 index 09582cea7c7962b098efcde5754a02573d18264a..0000000000000000000000000000000000000000 --- a/TTS/bin/tune_wavegrad.py +++ /dev/null @@ -1,103 +0,0 @@ -"""Search a good noise schedule for WaveGrad for a given number of inference iterations""" -import argparse -from itertools import product as cartesian_product - -import numpy as np -import torch -from torch.utils.data import DataLoader -from tqdm import tqdm - -from TTS.config import load_config -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.datasets.preprocess import load_wav_data -from TTS.vocoder.datasets.wavegrad_dataset import WaveGradDataset -from TTS.vocoder.models import setup_model - -if __name__ == "__main__": - parser = argparse.ArgumentParser() - parser.add_argument("--model_path", type=str, help="Path to model checkpoint.") - parser.add_argument("--config_path", type=str, help="Path to model config file.") - parser.add_argument("--data_path", type=str, help="Path to data directory.") - parser.add_argument("--output_path", type=str, help="path for output file including file name and extension.") - parser.add_argument( - "--num_iter", - type=int, - help="Number of model inference iterations that you like to optimize noise schedule for.", - ) - parser.add_argument("--use_cuda", action="store_true", help="enable CUDA.") - parser.add_argument("--num_samples", type=int, default=1, help="Number of datasamples used for inference.") - parser.add_argument( - "--search_depth", - type=int, - default=3, - help="Search granularity. Increasing this increases the run-time exponentially.", - ) - - # load config - args = parser.parse_args() - config = load_config(args.config_path) - - # setup audio processor - ap = AudioProcessor(**config.audio) - - # load dataset - _, train_data = load_wav_data(args.data_path, 0) - train_data = train_data[: args.num_samples] - dataset = WaveGradDataset( - ap=ap, - items=train_data, - seq_len=-1, - hop_len=ap.hop_length, - pad_short=config.pad_short, - conv_pad=config.conv_pad, - is_training=True, - return_segments=False, - use_noise_augment=False, - use_cache=False, - verbose=True, - ) - loader = DataLoader( - dataset, - batch_size=1, - shuffle=False, - collate_fn=dataset.collate_full_clips, - drop_last=False, - num_workers=config.num_loader_workers, - pin_memory=False, - ) - - # setup the model - model = setup_model(config) - if args.use_cuda: - model.cuda() - - # setup optimization parameters - base_values = sorted(10 * np.random.uniform(size=args.search_depth)) - print(f" > base values: {base_values}") - exponents = 10 ** np.linspace(-6, -1, num=args.num_iter) - best_error = float("inf") - best_schedule = None # pylint: disable=C0103 - total_search_iter = len(base_values) ** args.num_iter - for base in tqdm(cartesian_product(base_values, repeat=args.num_iter), total=total_search_iter): - beta = exponents * base - model.compute_noise_level(beta) - for data in loader: - mel, audio = data - y_hat = model.inference(mel.cuda() if args.use_cuda else mel) - - if args.use_cuda: - y_hat = y_hat.cpu() - y_hat = y_hat.numpy() - - mel_hat = [] - for i in range(y_hat.shape[0]): - m = ap.melspectrogram(y_hat[i, 0])[:, :-1] - mel_hat.append(torch.from_numpy(m)) - - mel_hat = torch.stack(mel_hat) - mse = torch.sum((mel - mel_hat) ** 2).mean() - if mse.item() < best_error: - best_error = mse.item() - best_schedule = {"beta": beta} - print(f" > Found a better schedule. - MSE: {mse.item()}") - np.save(args.output_path, best_schedule) diff --git a/TTS/config/__init__.py b/TTS/config/__init__.py deleted file mode 100644 index 49ac8f4ade11c14ec339c5bcf5a682aa560b942d..0000000000000000000000000000000000000000 --- a/TTS/config/__init__.py +++ /dev/null @@ -1,132 +0,0 @@ -import json -import os -import re -from typing import Dict - -import fsspec -import yaml -from coqpit import Coqpit - -from TTS.config.shared_configs import * -from TTS.utils.generic_utils import find_module - - -def read_json_with_comments(json_path): - """for backward compat.""" - # fallback to json - with fsspec.open(json_path, "r", encoding="utf-8") as f: - input_str = f.read() - # handle comments - input_str = re.sub(r"\\\n", "", input_str) - input_str = re.sub(r"//.*\n", "\n", input_str) - data = json.loads(input_str) - return data - - -def register_config(model_name: str) -> Coqpit: - """Find the right config for the given model name. - - Args: - model_name (str): Model name. - - Raises: - ModuleNotFoundError: No matching config for the model name. - - Returns: - Coqpit: config class. - """ - config_class = None - config_name = model_name + "_config" - paths = ["TTS.tts.configs", "TTS.vocoder.configs", "TTS.encoder.configs", "TTS.vc.configs"] - for path in paths: - try: - config_class = find_module(path, config_name) - except ModuleNotFoundError: - pass - if config_class is None: - raise ModuleNotFoundError(f" [!] Config for {model_name} cannot be found.") - return config_class - - -def _process_model_name(config_dict: Dict) -> str: - """Format the model name as expected. It is a band-aid for the old `vocoder` model names. - - Args: - config_dict (Dict): A dictionary including the config fields. - - Returns: - str: Formatted modelname. - """ - model_name = config_dict["model"] if "model" in config_dict else config_dict["generator_model"] - model_name = model_name.replace("_generator", "").replace("_discriminator", "") - return model_name - - -def load_config(config_path: str) -> Coqpit: - """Import `json` or `yaml` files as TTS configs. First, load the input file as a `dict` and check the model name - to find the corresponding Config class. Then initialize the Config. - - Args: - config_path (str): path to the config file. - - Raises: - TypeError: given config file has an unknown type. - - Returns: - Coqpit: TTS config object. - """ - config_dict = {} - ext = os.path.splitext(config_path)[1] - if ext in (".yml", ".yaml"): - with fsspec.open(config_path, "r", encoding="utf-8") as f: - data = yaml.safe_load(f) - elif ext == ".json": - try: - with fsspec.open(config_path, "r", encoding="utf-8") as f: - data = json.load(f) - except json.decoder.JSONDecodeError: - # backwards compat. - data = read_json_with_comments(config_path) - else: - raise TypeError(f" [!] Unknown config file type {ext}") - config_dict.update(data) - model_name = _process_model_name(config_dict) - config_class = register_config(model_name.lower()) - config = config_class() - config.from_dict(config_dict) - return config - - -def check_config_and_model_args(config, arg_name, value): - """Check the give argument in `config.model_args` if exist or in `config` for - the given value. - - Return False if the argument does not exist in `config.model_args` or `config`. - This is to patch up the compatibility between models with and without `model_args`. - - TODO: Remove this in the future with a unified approach. - """ - if hasattr(config, "model_args"): - if arg_name in config.model_args: - return config.model_args[arg_name] == value - if hasattr(config, arg_name): - return config[arg_name] == value - return False - - -def get_from_config_or_model_args(config, arg_name): - """Get the given argument from `config.model_args` if exist or in `config`.""" - if hasattr(config, "model_args"): - if arg_name in config.model_args: - return config.model_args[arg_name] - return config[arg_name] - - -def get_from_config_or_model_args_with_default(config, arg_name, def_val): - """Get the given argument from `config.model_args` if exist or in `config`.""" - if hasattr(config, "model_args"): - if arg_name in config.model_args: - return config.model_args[arg_name] - if hasattr(config, arg_name): - return config[arg_name] - return def_val diff --git a/TTS/config/shared_configs.py b/TTS/config/shared_configs.py deleted file mode 100644 index 7fae77d61361eff8c8fa521a0f4a90dc46f63c75..0000000000000000000000000000000000000000 --- a/TTS/config/shared_configs.py +++ /dev/null @@ -1,268 +0,0 @@ -from dataclasses import asdict, dataclass -from typing import List - -from coqpit import Coqpit, check_argument -from trainer import TrainerConfig - - -@dataclass -class BaseAudioConfig(Coqpit): - """Base config to definge audio processing parameters. It is used to initialize - ```TTS.utils.audio.AudioProcessor.``` - - Args: - fft_size (int): - Number of STFT frequency levels aka.size of the linear spectogram frame. Defaults to 1024. - - win_length (int): - Each frame of audio is windowed by window of length ```win_length``` and then padded with zeros to match - ```fft_size```. Defaults to 1024. - - hop_length (int): - Number of audio samples between adjacent STFT columns. Defaults to 1024. - - frame_shift_ms (int): - Set ```hop_length``` based on milliseconds and sampling rate. - - frame_length_ms (int): - Set ```win_length``` based on milliseconds and sampling rate. - - stft_pad_mode (str): - Padding method used in STFT. 'reflect' or 'center'. Defaults to 'reflect'. - - sample_rate (int): - Audio sampling rate. Defaults to 22050. - - resample (bool): - Enable / Disable resampling audio to ```sample_rate```. Defaults to ```False```. - - preemphasis (float): - Preemphasis coefficient. Defaults to 0.0. - - ref_level_db (int): 20 - Reference Db level to rebase the audio signal and ignore the level below. 20Db is assumed the sound of air. - Defaults to 20. - - do_sound_norm (bool): - Enable / Disable sound normalization to reconcile the volume differences among samples. Defaults to False. - - log_func (str): - Numpy log function used for amplitude to DB conversion. Defaults to 'np.log10'. - - do_trim_silence (bool): - Enable / Disable trimming silences at the beginning and the end of the audio clip. Defaults to ```True```. - - do_amp_to_db_linear (bool, optional): - enable/disable amplitude to dB conversion of linear spectrograms. Defaults to True. - - do_amp_to_db_mel (bool, optional): - enable/disable amplitude to dB conversion of mel spectrograms. Defaults to True. - - pitch_fmax (float, optional): - Maximum frequency of the F0 frames. Defaults to ```640```. - - pitch_fmin (float, optional): - Minimum frequency of the F0 frames. Defaults to ```1```. - - trim_db (int): - Silence threshold used for silence trimming. Defaults to 45. - - do_rms_norm (bool, optional): - enable/disable RMS volume normalization when loading an audio file. Defaults to False. - - db_level (int, optional): - dB level used for rms normalization. The range is -99 to 0. Defaults to None. - - power (float): - Exponent used for expanding spectrogra levels before running Griffin Lim. It helps to reduce the - artifacts in the synthesized voice. Defaults to 1.5. - - griffin_lim_iters (int): - Number of Griffing Lim iterations. Defaults to 60. - - num_mels (int): - Number of mel-basis frames that defines the frame lengths of each mel-spectrogram frame. Defaults to 80. - - mel_fmin (float): Min frequency level used for the mel-basis filters. ~50 for male and ~95 for female voices. - It needs to be adjusted for a dataset. Defaults to 0. - - mel_fmax (float): - Max frequency level used for the mel-basis filters. It needs to be adjusted for a dataset. - - spec_gain (int): - Gain applied when converting amplitude to DB. Defaults to 20. - - signal_norm (bool): - enable/disable signal normalization. Defaults to True. - - min_level_db (int): - minimum db threshold for the computed melspectrograms. Defaults to -100. - - symmetric_norm (bool): - enable/disable symmetric normalization. If set True normalization is performed in the range [-k, k] else - [0, k], Defaults to True. - - max_norm (float): - ```k``` defining the normalization range. Defaults to 4.0. - - clip_norm (bool): - enable/disable clipping the our of range values in the normalized audio signal. Defaults to True. - - stats_path (str): - Path to the computed stats file. Defaults to None. - """ - - # stft parameters - fft_size: int = 1024 - win_length: int = 1024 - hop_length: int = 256 - frame_shift_ms: int = None - frame_length_ms: int = None - stft_pad_mode: str = "reflect" - # audio processing parameters - sample_rate: int = 22050 - resample: bool = False - preemphasis: float = 0.0 - ref_level_db: int = 20 - do_sound_norm: bool = False - log_func: str = "np.log10" - # silence trimming - do_trim_silence: bool = True - trim_db: int = 45 - # rms volume normalization - do_rms_norm: bool = False - db_level: float = None - # griffin-lim params - power: float = 1.5 - griffin_lim_iters: int = 60 - # mel-spec params - num_mels: int = 80 - mel_fmin: float = 0.0 - mel_fmax: float = None - spec_gain: int = 20 - do_amp_to_db_linear: bool = True - do_amp_to_db_mel: bool = True - # f0 params - pitch_fmax: float = 640.0 - pitch_fmin: float = 1.0 - # normalization params - signal_norm: bool = True - min_level_db: int = -100 - symmetric_norm: bool = True - max_norm: float = 4.0 - clip_norm: bool = True - stats_path: str = None - - def check_values( - self, - ): - """Check config fields""" - c = asdict(self) - check_argument("num_mels", c, restricted=True, min_val=10, max_val=2056) - check_argument("fft_size", c, restricted=True, min_val=128, max_val=4058) - check_argument("sample_rate", c, restricted=True, min_val=512, max_val=100000) - check_argument( - "frame_length_ms", - c, - restricted=True, - min_val=10, - max_val=1000, - alternative="win_length", - ) - check_argument("frame_shift_ms", c, restricted=True, min_val=1, max_val=1000, alternative="hop_length") - check_argument("preemphasis", c, restricted=True, min_val=0, max_val=1) - check_argument("min_level_db", c, restricted=True, min_val=-1000, max_val=10) - check_argument("ref_level_db", c, restricted=True, min_val=0, max_val=1000) - check_argument("power", c, restricted=True, min_val=1, max_val=5) - check_argument("griffin_lim_iters", c, restricted=True, min_val=10, max_val=1000) - - # normalization parameters - check_argument("signal_norm", c, restricted=True) - check_argument("symmetric_norm", c, restricted=True) - check_argument("max_norm", c, restricted=True, min_val=0.1, max_val=1000) - check_argument("clip_norm", c, restricted=True) - check_argument("mel_fmin", c, restricted=True, min_val=0.0, max_val=1000) - check_argument("mel_fmax", c, restricted=True, min_val=500.0, allow_none=True) - check_argument("spec_gain", c, restricted=True, min_val=1, max_val=100) - check_argument("do_trim_silence", c, restricted=True) - check_argument("trim_db", c, restricted=True) - - -@dataclass -class BaseDatasetConfig(Coqpit): - """Base config for TTS datasets. - - Args: - formatter (str): - Formatter name that defines used formatter in ```TTS.tts.datasets.formatter```. Defaults to `""`. - - dataset_name (str): - Unique name for the dataset. Defaults to `""`. - - path (str): - Root path to the dataset files. Defaults to `""`. - - meta_file_train (str): - Name of the dataset meta file. Or a list of speakers to be ignored at training for multi-speaker datasets. - Defaults to `""`. - - ignored_speakers (List): - List of speakers IDs that are not used at the training. Default None. - - language (str): - Language code of the dataset. If defined, it overrides `phoneme_language`. Defaults to `""`. - - phonemizer (str): - Phonemizer used for that dataset's language. By default it uses `DEF_LANG_TO_PHONEMIZER`. Defaults to `""`. - - meta_file_val (str): - Name of the dataset meta file that defines the instances used at validation. - - meta_file_attn_mask (str): - Path to the file that lists the attention mask files used with models that require attention masks to - train the duration predictor. - """ - - formatter: str = "" - dataset_name: str = "" - path: str = "" - meta_file_train: str = "" - ignored_speakers: List[str] = None - language: str = "" - phonemizer: str = "" - meta_file_val: str = "" - meta_file_attn_mask: str = "" - - def check_values( - self, - ): - """Check config fields""" - c = asdict(self) - check_argument("formatter", c, restricted=True) - check_argument("path", c, restricted=True) - check_argument("meta_file_train", c, restricted=True) - check_argument("meta_file_val", c, restricted=False) - check_argument("meta_file_attn_mask", c, restricted=False) - - -@dataclass -class BaseTrainingConfig(TrainerConfig): - """Base config to define the basic 🐸TTS training parameters that are shared - among all the models. It is based on ```Trainer.TrainingConfig```. - - Args: - model (str): - Name of the model that is used in the training. - - num_loader_workers (int): - Number of workers for training time dataloader. - - num_eval_loader_workers (int): - Number of workers for evaluation time dataloader. - """ - - model: str = None - # dataloading - num_loader_workers: int = 0 - num_eval_loader_workers: int = 0 - use_noise_augment: bool = False diff --git a/TTS/cs_api.py b/TTS/cs_api.py deleted file mode 100644 index a36452abc95b1c250f514bbe180504372f21383f..0000000000000000000000000000000000000000 --- a/TTS/cs_api.py +++ /dev/null @@ -1,338 +0,0 @@ -import http.client -import json -import os -import tempfile -import urllib.request -from typing import Tuple - -import numpy as np -import requests -from scipy.io import wavfile - - -class Speaker(object): - """Convert dict to object.""" - - def __init__(self, d, is_voice=False): - self.is_voice = is_voice - for k, v in d.items(): - if isinstance(k, (list, tuple)): - setattr(self, k, [Speaker(x) if isinstance(x, dict) else x for x in v]) - else: - setattr(self, k, Speaker(v) if isinstance(v, dict) else v) - - def __repr__(self): - return str(self.__dict__) - - -class CS_API: - """🐸Coqui Studio API Wrapper. - - 🐸Coqui Studio is the most advanced voice generation platform. You can generate new voices by voice cloning, voice - interpolation, or our unique prompt to voice technology. It also provides a set of built-in voices with different - characteristics. You can use these voices to generate new audio files or use them in your applications. - You can use all the built-in and your own 🐸Coqui Studio speakers with this API with an API token. - You can signup to 🐸Coqui Studio from https://app.coqui.ai/auth/signup and get an API token from - https://app.coqui.ai/account. We can either enter the token as an environment variable as - `export COQUI_STUDIO_TOKEN=` or pass it as `CS_API(api_token=)`. - Visit https://app.coqui.ai/api for more information. - - - Args: - api_token (str): 🐸Coqui Studio API token. If not provided, it will be read from the environment variable - `COQUI_STUDIO_TOKEN`. - model (str): 🐸Coqui Studio model. It can be either `V1`, `XTTS`, or `XTTS-multilang`. Default is `XTTS`. - - - Example listing all available speakers: - >>> from TTS.api import CS_API - >>> tts = CS_API() - >>> tts.speakers - - Example listing all emotions: - >>> # emotions are only available for `V1` model - >>> from TTS.api import CS_API - >>> tts = CS_API(model="V1") - >>> tts.emotions - - Example with a built-in 🐸 speaker: - >>> from TTS.api import CS_API - >>> tts = CS_API() - >>> wav, sr = api.tts("Hello world", speaker_name=tts.speakers[0].name) - >>> filepath = tts.tts_to_file(text="Hello world!", speaker_name=tts.speakers[0].name, file_path="output.wav") - - Example with multi-language model: - >>> from TTS.api import CS_API - >>> tts = CS_API(model="XTTS-multilang") - >>> wav, sr = api.tts("Hello world", speaker_name=tts.speakers[0].name, language="en") - """ - - MODEL_ENDPOINTS = { - "V1": { - "list_speakers": "https://app.coqui.ai/api/v2/speakers", - "synthesize": "https://app.coqui.ai/api/v2/samples", - "list_voices": "https://app.coqui.ai/api/v2/voices", - }, - "XTTS": { - "list_speakers": "https://app.coqui.ai/api/v2/speakers", - "synthesize": "https://app.coqui.ai/api/v2/samples/xtts/render/", - "list_voices": "https://app.coqui.ai/api/v2/voices/xtts/", - }, - "XTTS-multilang": { - "list_speakers": "https://app.coqui.ai/api/v2/speakers", - "synthesize": "https://app.coqui.ai/api/v2/samples/multilingual/render/", - "list_voices": "https://app.coqui.ai/api/v2/voices/xtts/", - }, - } - - SUPPORTED_LANGUAGES = ["en", "es", "de", "fr", "it", "pt", "pl"] - - def __init__(self, api_token=None, model="XTTS"): - self.api_token = api_token - self.model = model - self.headers = None - self._speakers = None - self._check_token() - - @staticmethod - def ping_api(): - URL = "https://coqui.gateway.scarf.sh/tts/api" - _ = requests.get(URL) - - @property - def speakers(self): - if self._speakers is None: - self._speakers = self.list_all_speakers() - return self._speakers - - @property - def emotions(self): - """Return a list of available emotions. - - TODO: Get this from the API endpoint. - """ - if self.model == "V1": - return ["Neutral", "Happy", "Sad", "Angry", "Dull"] - else: - raise ValueError(f"❗ Emotions are not available for {self.model}.") - - def _check_token(self): - if self.api_token is None: - self.api_token = os.environ.get("COQUI_STUDIO_TOKEN") - self.headers = {"Content-Type": "application/json", "Authorization": f"Bearer {self.api_token}"} - if not self.api_token: - raise ValueError( - "No API token found for 🐸Coqui Studio voices - https://coqui.ai \n" - "Visit 🔗https://app.coqui.ai/account to get one.\n" - "Set it as an environment variable `export COQUI_STUDIO_TOKEN=`\n" - "" - ) - - def list_all_speakers(self): - """Return both built-in Coqui Studio speakers and custom voices created by the user.""" - return self.list_speakers() + self.list_voices() - - def list_speakers(self): - """List built-in Coqui Studio speakers.""" - self._check_token() - conn = http.client.HTTPSConnection("app.coqui.ai") - url = self.MODEL_ENDPOINTS[self.model]["list_speakers"] - conn.request("GET", f"{url}?per_page=100", headers=self.headers) - res = conn.getresponse() - data = res.read() - return [Speaker(s) for s in json.loads(data)["result"]] - - def list_voices(self): - """List custom voices created by the user.""" - conn = http.client.HTTPSConnection("app.coqui.ai") - url = self.MODEL_ENDPOINTS[self.model]["list_voices"] - conn.request("GET", f"{url}", headers=self.headers) - res = conn.getresponse() - data = res.read() - return [Speaker(s, True) for s in json.loads(data)["result"]] - - def list_speakers_as_tts_models(self): - """List speakers in ModelManager format.""" - models = [] - for speaker in self.speakers: - model = f"coqui_studio/multilingual/{speaker.name}/{self.model}" - models.append(model) - return models - - def name_to_speaker(self, name): - for speaker in self.speakers: - if speaker.name == name: - return speaker - raise ValueError(f"Speaker {name} not found in {self.speakers}") - - def id_to_speaker(self, speaker_id): - for speaker in self.speakers: - if speaker.id == speaker_id: - return speaker - raise ValueError(f"Speaker {speaker_id} not found.") - - @staticmethod - def url_to_np(url): - tmp_file, _ = urllib.request.urlretrieve(url) - rate, data = wavfile.read(tmp_file) - return data, rate - - @staticmethod - def _create_payload(model, text, speaker, speed, emotion, language): - payload = {} - # if speaker.is_voice: - payload["voice_id"] = speaker.id - # else: - payload["speaker_id"] = speaker.id - - if model == "V1": - payload.update( - { - "emotion": emotion, - "name": speaker.name, - "text": text, - "speed": speed, - } - ) - elif model == "XTTS": - payload.update( - { - "name": speaker.name, - "text": text, - "speed": speed, - } - ) - elif model == "XTTS-multilang": - payload.update( - { - "name": speaker.name, - "text": text, - "speed": speed, - "language": language, - } - ) - else: - raise ValueError(f"❗ Unknown model {model}") - return payload - - def _check_tts_args(self, text, speaker_name, speaker_id, emotion, speed, language): - assert text is not None, "❗ text is required for V1 model." - assert speaker_name is not None, "❗ speaker_name is required for V1 model." - if self.model == "V1": - if emotion is None: - emotion = "Neutral" - assert language is None, "❗ language is not supported for V1 model." - elif self.model == "XTTS": - assert emotion is None, f"❗ Emotions are not supported for XTTS model. Use V1 model." - assert language is None, "❗ Language is not supported for XTTS model. Use XTTS-multilang model." - elif self.model == "XTTS-multilang": - assert emotion is None, f"❗ Emotions are not supported for XTTS-multilang model. Use V1 model." - assert language is not None, "❗ Language is required for XTTS-multilang model." - assert ( - language in self.SUPPORTED_LANGUAGES - ), f"❗ Language {language} is not yet supported. Use one of: en, es, de, fr, it, pt, pl" - return text, speaker_name, speaker_id, emotion, speed, language - - def tts( - self, - text: str, - speaker_name: str = None, - speaker_id=None, - emotion=None, - speed=1.0, - language=None, # pylint: disable=unused-argument - ) -> Tuple[np.ndarray, int]: - """Synthesize speech from text. - - Args: - text (str): Text to synthesize. - speaker_name (str): Name of the speaker. You can get the list of speakers with `list_speakers()` and - voices (user generated speakers) with `list_voices()`. - speaker_id (str): Speaker ID. If None, the speaker name is used. - emotion (str): Emotion of the speaker. One of "Neutral", "Happy", "Sad", "Angry", "Dull". Emotions are only - supported by `V1` model. Defaults to None. - speed (float): Speed of the speech. 1.0 is normal speed. - language (str): Language of the text. If None, the default language of the speaker is used. Language is only - supported by `XTTS-multilang` model. Currently supports en, de, es, fr, it, pt, pl. Defaults to "en". - """ - self._check_token() - self.ping_api() - - if speaker_name is None and speaker_id is None: - raise ValueError(" [!] Please provide either a `speaker_name` or a `speaker_id`.") - if speaker_id is None: - speaker = self.name_to_speaker(speaker_name) - else: - speaker = self.id_to_speaker(speaker_id) - - text, speaker_name, speaker_id, emotion, speed, language = self._check_tts_args( - text, speaker_name, speaker_id, emotion, speed, language - ) - - conn = http.client.HTTPSConnection("app.coqui.ai") - payload = self._create_payload(self.model, text, speaker, speed, emotion, language) - url = self.MODEL_ENDPOINTS[self.model]["synthesize"] - conn.request("POST", url, json.dumps(payload), self.headers) - res = conn.getresponse() - data = res.read() - try: - wav, sr = self.url_to_np(json.loads(data)["audio_url"]) - except KeyError as e: - raise ValueError(f" [!] 🐸 API returned error: {data}") from e - return wav, sr - - def tts_to_file( - self, - text: str, - speaker_name: str, - speaker_id=None, - emotion=None, - speed=1.0, - language=None, - file_path: str = None, - ) -> str: - """Synthesize speech from text and save it to a file. - - Args: - text (str): Text to synthesize. - speaker_name (str): Name of the speaker. You can get the list of speakers with `list_speakers()` and - voices (user generated speakers) with `list_voices()`. - speaker_id (str): Speaker ID. If None, the speaker name is used. - emotion (str): Emotion of the speaker. One of "Neutral", "Happy", "Sad", "Angry", "Dull". - speed (float): Speed of the speech. 1.0 is normal speed. - language (str): Language of the text. If None, the default language of the speaker is used. Language is only - supported by `XTTS-multilang` model. Currently supports en, de, es, fr, it, pt, pl. Defaults to "en". - file_path (str): Path to save the file. If None, a temporary file is created. - """ - if file_path is None: - file_path = tempfile.mktemp(".wav") - wav, sr = self.tts(text, speaker_name, speaker_id, emotion, speed, language) - wavfile.write(file_path, sr, wav) - return file_path - - -if __name__ == "__main__": - import time - - api = CS_API() - print(api.speakers) - print(api.list_speakers_as_tts_models()) - - ts = time.time() - wav, sr = api.tts("It took me quite a long time to develop a voice.", speaker_name=api.speakers[0].name) - print(f" [i] XTTS took {time.time() - ts:.2f}s") - - filepath = api.tts_to_file(text="Hello world!", speaker_name=api.speakers[0].name, file_path="output.wav") - - api = CS_API(model="XTTS-multilang") - print(api.speakers) - - ts = time.time() - wav, sr = api.tts( - "It took me quite a long time to develop a voice.", speaker_name=api.speakers[0].name, language="en" - ) - print(f" [i] XTTS took {time.time() - ts:.2f}s") - - filepath = api.tts_to_file( - text="Hello world!", speaker_name=api.speakers[0].name, file_path="output.wav", language="en" - ) diff --git a/TTS/docs/Makefile b/TTS/docs/Makefile deleted file mode 100644 index b1d20a99ed037c92d31a927f2bb01fb801b59bf2..0000000000000000000000000000000000000000 --- a/TTS/docs/Makefile +++ /dev/null @@ -1,20 +0,0 @@ -# Minimal makefile for Sphinx documentation -# - -# You can set these variables from the command line, and also -# from the environment for the first two. -SPHINXOPTS ?= -j auto -WT --keep-going -SPHINXBUILD ?= sphinx-build -SOURCEDIR = source -BUILDDIR = _build - -# Put it first so that "make" without argument is like "make help". -help: - @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) - -.PHONY: help Makefile - -# Catch-all target: route all unknown targets to Sphinx using the new -# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). -%: Makefile - @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) diff --git a/TTS/docs/README.md b/TTS/docs/README.md deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/docs/requirements.txt b/TTS/docs/requirements.txt deleted file mode 100644 index 195ba1d8b3a9c9c1c2727161a39376c69b3c7cf4..0000000000000000000000000000000000000000 --- a/TTS/docs/requirements.txt +++ /dev/null @@ -1,6 +0,0 @@ -furo -myst-parser == 2.0.0 -sphinx == 7.0.1 -sphinx_inline_tabs -sphinx_copybutton -linkify-it-py \ No newline at end of file diff --git a/TTS/docs/source/_static/logo.png b/TTS/docs/source/_static/logo.png deleted file mode 100644 index 6a1185c0966f9731a0e0f1878cc95a757d97107a..0000000000000000000000000000000000000000 Binary files a/TTS/docs/source/_static/logo.png and /dev/null differ diff --git a/TTS/docs/source/_templates/page.html b/TTS/docs/source/_templates/page.html deleted file mode 100644 index dd1bc34fa6b70a90516a8881940c32031096645a..0000000000000000000000000000000000000000 --- a/TTS/docs/source/_templates/page.html +++ /dev/null @@ -1,4 +0,0 @@ -{% extends "!page.html" %} -{% block scripts %} - {{ super() }} -{% endblock %} diff --git a/TTS/docs/source/conf.py b/TTS/docs/source/conf.py deleted file mode 100644 index b85324fd4091fdc0a4b910008ea3a4f41e3dcbe4..0000000000000000000000000000000000000000 --- a/TTS/docs/source/conf.py +++ /dev/null @@ -1,120 +0,0 @@ -# Configuration file for the Sphinx documentation builder. -# -# This file only contains a selection of the most common options. For a full -# list see the documentation: -# https://www.sphinx-doc.org/en/master/usage/configuration.html - -# -- Path setup -------------------------------------------------------------- - -# If extensions (or modules to document with autodoc) are in another directory, -# add these directories to sys.path here. If the directory is relative to the -# documentation root, use os.path.abspath to make it absolute, like shown here. -# -import os -import sys - -sys.path.insert(0, os.path.abspath('../..')) - -# mock deps with system level requirements. -autodoc_mock_imports = ["soundfile"] - -# -- Project information ----------------------------------------------------- -project = 'TTS' -copyright = "2021 Coqui GmbH, 2020 TTS authors" -author = 'Coqui GmbH' - -with open("../../TTS/VERSION", "r") as ver: - version = ver.read().strip() - -# The version info for the project you're documenting, acts as replacement for -# |version| and |release|, also used in various other places throughout the -# built documents. -release = version - -# The main toctree document. -master_doc = "index" - -# -- General configuration --------------------------------------------------- - -# Add any Sphinx extension module names here, as strings. They can be -# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom -# ones. -extensions = [ - 'sphinx.ext.autodoc', - 'sphinx.ext.autosummary', - 'sphinx.ext.doctest', - 'sphinx.ext.intersphinx', - 'sphinx.ext.todo', - 'sphinx.ext.coverage', - 'sphinx.ext.napoleon', - 'sphinx.ext.viewcode', - 'sphinx.ext.autosectionlabel', - 'myst_parser', - "sphinx_copybutton", - "sphinx_inline_tabs", -] - - -# Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] - -# List of patterns, relative to source directory, that match files and -# directories to ignore when looking for source files. -# This pattern also affects html_static_path and html_extra_path. -exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store', 'TODO/*'] - -source_suffix = [".rst", ".md"] - -myst_enable_extensions = ['linkify',] - -# 'sphinxcontrib.katex', -# 'sphinx.ext.autosectionlabel', - - -# autosectionlabel throws warnings if section names are duplicated. -# The following tells autosectionlabel to not throw a warning for -# duplicated section names that are in different documents. -autosectionlabel_prefix_document = True - -language = 'en' - -autodoc_inherit_docstrings = False - -# Disable displaying type annotations, these can be very verbose -autodoc_typehints = 'none' - -# Enable overriding of function signatures in the first line of the docstring. -autodoc_docstring_signature = True - -napoleon_custom_sections = [('Shapes', 'shape')] - - -# -- Options for HTML output ------------------------------------------------- - -# The theme to use for HTML and HTML Help pages. See the documentation for -# a list of builtin themes. -# -html_theme = 'furo' -html_tite = "TTS" -html_theme_options = { - "light_logo": "logo.png", - "dark_logo": "logo.png", - "sidebar_hide_name": True, -} - -html_sidebars = { - '**': [ - "sidebar/scroll-start.html", - "sidebar/brand.html", - "sidebar/search.html", - "sidebar/navigation.html", - "sidebar/ethical-ads.html", - "sidebar/scroll-end.html", - ] - } - - -# Add any paths that contain custom static files (such as style sheets) here, -# relative to this directory. They are copied after the builtin static files, -# so a file named "default.css" will overwrite the builtin "default.css". -html_static_path = ['_static'] diff --git a/TTS/docs/source/configuration.md b/TTS/docs/source/configuration.md deleted file mode 100644 index cde7e073e9ec515ae32b00951a3e4e6952c969e0..0000000000000000000000000000000000000000 --- a/TTS/docs/source/configuration.md +++ /dev/null @@ -1,59 +0,0 @@ -# Configuration - -We use 👩‍✈️[Coqpit] for configuration management. It provides basic static type checking and serialization capabilities on top of native Python `dataclasses`. Here is how a simple configuration looks like with Coqpit. - -```python -from dataclasses import asdict, dataclass, field -from typing import List, Union -from coqpit.coqpit import MISSING, Coqpit, check_argument - - -@dataclass -class SimpleConfig(Coqpit): - val_a: int = 10 - val_b: int = None - val_d: float = 10.21 - val_c: str = "Coqpit is great!" - vol_e: bool = True - # mandatory field - # raise an error when accessing the value if it is not changed. It is a way to define - val_k: int = MISSING - # optional field - val_dict: dict = field(default_factory=lambda: {"val_aa": 10, "val_ss": "This is in a dict."}) - # list of list - val_listoflist: List[List] = field(default_factory=lambda: [[1, 2], [3, 4]]) - val_listofunion: List[List[Union[str, int, bool]]] = field( - default_factory=lambda: [[1, 3], [1, "Hi!"], [True, False]] - ) - - def check_values( - self, - ): # you can define explicit constraints manually or by`check_argument()` - """Check config fields""" - c = asdict(self) # avoid unexpected changes on `self` - check_argument("val_a", c, restricted=True, min_val=10, max_val=2056) - check_argument("val_b", c, restricted=True, min_val=128, max_val=4058, allow_none=True) - check_argument("val_c", c, restricted=True) -``` - -In TTS, each model must have a configuration class that exposes all the values necessary for its lifetime. - -It defines model architecture, hyper-parameters, training, and inference settings. For our models, we merge all the fields in a single configuration class for ease. It may not look like a wise practice but enables easier bookkeeping and reproducible experiments. - -The general configuration hierarchy looks like below: - -``` -ModelConfig() - | - | -> ... # model specific configurations - | -> ModelArgs() # model class arguments - | -> BaseDatasetConfig() # only for tts models - | -> BaseXModelConfig() # Generic fields for `tts` and `vocoder` models. - | - | -> BaseTrainingConfig() # trainer fields - | -> BaseAudioConfig() # audio processing fields -``` - -In the example above, ```ModelConfig()``` is the final configuration that the model receives and it has all the fields necessary for the model. - -We host pre-defined model configurations under ```TTS//configs/```.Although we recommend a unified config class, you can decompose it as you like as for your custom models as long as all the fields for the trainer, model, and inference APIs are provided. \ No newline at end of file diff --git a/TTS/docs/source/contributing.md b/TTS/docs/source/contributing.md deleted file mode 100644 index 5b2725094f72319db74c010ca7f7e194c94d5e0d..0000000000000000000000000000000000000000 --- a/TTS/docs/source/contributing.md +++ /dev/null @@ -1,3 +0,0 @@ -```{include} ../../CONTRIBUTING.md -:relative-images: -``` diff --git a/TTS/docs/source/docker_images.md b/TTS/docs/source/docker_images.md deleted file mode 100644 index 55d54afd026427fd5eb6fb9bd7d7071f47f08233..0000000000000000000000000000000000000000 --- a/TTS/docs/source/docker_images.md +++ /dev/null @@ -1,56 +0,0 @@ -(docker_images)= -## Docker images -We provide docker images to be able to test TTS without having to setup your own environment. - -### Using premade images -You can use premade images built automatically from the latest TTS version. - -#### CPU version -```bash -docker pull ghcr.io/coqui-ai/tts-cpu -``` -#### GPU version -```bash -docker pull ghcr.io/coqui-ai/tts -``` - -### Building your own image -```bash -docker build -t tts . -``` - -## Basic inference -Basic usage: generating an audio file from a text passed as argument. -You can pass any tts argument after the image name. - -### CPU version -```bash -docker run --rm -v ~/tts-output:/root/tts-output ghcr.io/coqui-ai/tts-cpu --text "Hello." --out_path /root/tts-output/hello.wav -``` -### GPU version -For the GPU version, you need to have the latest NVIDIA drivers installed. -With `nvidia-smi` you can check the CUDA version supported, it must be >= 11.8 - -```bash -docker run --rm --gpus all -v ~/tts-output:/root/tts-output ghcr.io/coqui-ai/tts --text "Hello." --out_path /root/tts-output/hello.wav --use_cuda true -``` - -## Start a server -Starting a TTS server: -Start the container and get a shell inside it. - -### CPU version -```bash -docker run --rm -it -p 5002:5002 --entrypoint /bin/bash ghcr.io/coqui-ai/tts-cpu -python3 TTS/server/server.py --list_models #To get the list of available models -python3 TTS/server/server.py --model_name tts_models/en/vctk/vits -``` - -### GPU version -```bash -docker run --rm -it -p 5002:5002 --gpus all --entrypoint /bin/bash ghcr.io/coqui-ai/tts -python3 TTS/server/server.py --list_models #To get the list of available models -python3 TTS/server/server.py --model_name tts_models/en/vctk/vits --use_cuda true -``` - -Click [there](http://[::1]:5002/) and have fun with the server! \ No newline at end of file diff --git a/TTS/docs/source/faq.md b/TTS/docs/source/faq.md deleted file mode 100644 index fa48c4a9fbbaf1c77d847e4289645dceaf5aba91..0000000000000000000000000000000000000000 --- a/TTS/docs/source/faq.md +++ /dev/null @@ -1,113 +0,0 @@ -# Humble FAQ -We tried to collect common issues and questions we receive about 🐸TTS. It is worth checking before going deeper. - -## Errors with a pre-trained model. How can I resolve this? -- Make sure you use the right commit version of 🐸TTS. Each pre-trained model has its corresponding version that needs to be used. It is defined on the model table. -- If it is still problematic, post your problem on [Discussions](https://github.com/coqui-ai/TTS/discussions). Please give as many details as possible (error message, your TTS version, your TTS model and config.json etc.) -- If you feel like it's a bug to be fixed, then prefer Github issues with the same level of scrutiny. - -## What are the requirements of a good 🐸TTS dataset? -* {ref}`See this page ` - -## How should I choose the right model? -- First, train Tacotron. It is smaller and faster to experiment with. If it performs poorly, try Tacotron2. -- Tacotron models produce the most natural voice if your dataset is not too noisy. -- If both models do not perform well and especially the attention does not align, then try AlignTTS or GlowTTS. -- If you need faster models, consider SpeedySpeech, GlowTTS or AlignTTS. Keep in mind that SpeedySpeech requires a pre-trained Tacotron or Tacotron2 model to compute text-to-speech alignments. - -## How can I train my own `tts` model? -0. Check your dataset with notebooks in [dataset_analysis](https://github.com/coqui-ai/TTS/tree/master/notebooks/dataset_analysis) folder. Use [this notebook](https://github.com/coqui-ai/TTS/blob/master/notebooks/dataset_analysis/CheckSpectrograms.ipynb) to find the right audio processing parameters. A better set of parameters results in a better audio synthesis. - -1. Write your own dataset `formatter` in `datasets/formatters.py` or format your dataset as one of the supported datasets, like LJSpeech. - A `formatter` parses the metadata file and converts a list of training samples. - -2. If you have a dataset with a different alphabet than English, you need to set your own character list in the ```config.json```. - - If you use phonemes for training and your language is supported [here](https://github.com/rhasspy/gruut#supported-languages), you don't need to set your character list. - - You can use `TTS/bin/find_unique_chars.py` to get characters used in your dataset. - -3. Write your own text cleaner in ```utils.text.cleaners```. It is not always necessary, except when you have a different alphabet or language-specific requirements. - - A `cleaner` performs number and abbreviation expansion and text normalization. Basically, it converts the written text to its spoken format. - - If you go lazy, you can try using ```basic_cleaners```. - -4. Fill in a ```config.json```. Go over each parameter one by one and consider it regarding the appended explanation. - - Check the `Coqpit` class created for your target model. Coqpit classes for `tts` models are under `TTS/tts/configs/`. - - You just need to define fields you need/want to change in your `config.json`. For the rest, their default values are used. - - 'sample_rate', 'phoneme_language' (if phoneme enabled), 'output_path', 'datasets', 'text_cleaner' are the fields you need to edit in most of the cases. - - Here is a sample `config.json` for training a `GlowTTS` network. - ```json - { - "model": "glow_tts", - "batch_size": 32, - "eval_batch_size": 16, - "num_loader_workers": 4, - "num_eval_loader_workers": 4, - "run_eval": true, - "test_delay_epochs": -1, - "epochs": 1000, - "text_cleaner": "english_cleaners", - "use_phonemes": false, - "phoneme_language": "en-us", - "phoneme_cache_path": "phoneme_cache", - "print_step": 25, - "print_eval": true, - "mixed_precision": false, - "output_path": "recipes/ljspeech/glow_tts/", - "test_sentences": ["Test this sentence.", "This test sentence.", "Sentence this test."], - "datasets":[{"formatter": "ljspeech", "meta_file_train":"metadata.csv", "path": "recipes/ljspeech/LJSpeech-1.1/"}] - } - ``` - -6. Train your model. - - SingleGPU training: ```CUDA_VISIBLE_DEVICES="0" python train_tts.py --config_path config.json``` - - MultiGPU training: ```python3 -m trainer.distribute --gpus "0,1" --script TTS/bin/train_tts.py --config_path config.json``` - -**Note:** You can also train your model using pure 🐍 python. Check ```{eval-rst} :ref: 'tutorial_for_nervous_beginners'```. - -## How can I train in a different language? -- Check steps 2, 3, 4, 5 above. - -## How can I train multi-GPUs? -- Check step 5 above. - -## How can I check model performance? -- You can inspect model training and performance using ```tensorboard```. It will show you loss, attention alignment, model output. Go with the order below to measure the model performance. -1. Check ground truth spectrograms. If they do not look as they are supposed to, then check audio processing parameters in ```config.json```. -2. Check train and eval losses and make sure that they all decrease smoothly in time. -3. Check model spectrograms. Especially, training outputs should look similar to ground truth spectrograms after ~10K iterations. -4. Your model would not work well at test time until the attention has a near diagonal alignment. This is the sublime art of TTS training. - - Attention should converge diagonally after ~50K iterations. - - If attention does not converge, the probabilities are; - - Your dataset is too noisy or small. - - Samples are too long. - - Batch size is too small (batch_size < 32 would be having a hard time converging) - - You can also try other attention algorithms like 'graves', 'bidirectional_decoder', 'forward_attn'. - - 'bidirectional_decoder' is your ultimate savior, but it trains 2x slower and demands 1.5x more GPU memory. - - You can also try the other models like AlignTTS or GlowTTS. - -## How do I know when to stop training? -There is no single objective metric to decide the end of a training since the voice quality is a subjective matter. - -In our model trainings, we follow these steps; - -- Check test time audio outputs, if it does not improve more. -- Check test time attention maps, if they look clear and diagonal. -- Check validation loss, if it converged and smoothly went down or started to overfit going up. -- If the answer is YES for all of the above, then test the model with a set of complex sentences. For English, you can use the `TestAttention` notebook. - -Keep in mind that the approach above only validates the model robustness. It is hard to estimate the voice quality without asking the actual people. -The best approach is to pick a set of promising models and run a Mean-Opinion-Score study asking actual people to score the models. - -## My model does not learn. How can I debug? -- Go over the steps under "How can I check model performance?" - -## Attention does not align. How can I make it work? -- Check the 4th step under "How can I check model performance?" - -## How can I test a trained model? -- The best way is to use `tts` or `tts-server` commands. For details check {ref}`here `. -- If you need to code your own ```TTS.utils.synthesizer.Synthesizer``` class. - -## My Tacotron model does not stop - I see "Decoder stopped with 'max_decoder_steps" - Stopnet does not work. -- In general, all of the above relates to the `stopnet`. It is the part of the model telling the `decoder` when to stop. -- In general, a poor `stopnet` relates to something else that is broken in your model or dataset. Especially the attention module. -- One common reason is the silent parts in the audio clips at the beginning and the ending. Check ```trim_db``` value in the config. You can find a better value for your dataset by using ```CheckSpectrogram``` notebook. If this value is too small, too much of the audio will be trimmed. If too big, then too much silence will remain. Both will curtail the `stopnet` performance. diff --git a/TTS/docs/source/finetuning.md b/TTS/docs/source/finetuning.md deleted file mode 100644 index c236260d0cc889207869fa5a00f18163d875b54f..0000000000000000000000000000000000000000 --- a/TTS/docs/source/finetuning.md +++ /dev/null @@ -1,114 +0,0 @@ -# Fine-tuning a 🐸 TTS model - -## Fine-tuning - -Fine-tuning takes a pre-trained model and retrains it to improve the model performance on a different task or dataset. -In 🐸TTS we provide different pre-trained models in different languages and different pros and cons. You can take one of -them and fine-tune it for your own dataset. This will help you in two main ways: - -1. Faster learning - - Since a pre-trained model has already learned features that are relevant for the task, it will converge faster on - a new dataset. This will reduce the cost of training and let you experiment faster. - -2. Better results with small datasets - - Deep learning models are data hungry and they give better performance with more data. However, it is not always - possible to have this abundance, especially in specific domains. For instance, the LJSpeech dataset, that we released most of - our English models with, is almost 24 hours long. It takes weeks to record this amount of data with - the help of a voice actor. - - Fine-tuning comes to the rescue in this case. You can take one of our pre-trained models and fine-tune it on your own - speech dataset and achieve reasonable results with only a couple of hours of data. - - However, note that, fine-tuning does not ensure great results. The model performance is still depends on the - {ref}`dataset quality ` and the hyper-parameters you choose for fine-tuning. Therefore, - it still takes a bit of tinkering. - - -## Steps to fine-tune a 🐸 TTS model - -1. Setup your dataset. - - You need to format your target dataset in a certain way so that 🐸TTS data loader will be able to load it for the - training. Please see {ref}`this page ` for more information about formatting. - -2. Choose the model you want to fine-tune. - - You can list the available models in the command line with - - ```bash - tts --list_models - ``` - - The command above lists the the models in a naming format as ```///```. - - Or you can manually check the `.model.json` file in the project directory. - - You should choose the model based on your requirements. Some models are fast and some are better in speech quality. - One lazy way to test a model is running the model on the hardware you want to use and see how it works. For - simple testing, you can use the `tts` command on the terminal. For more info see {ref}`here `. - -3. Download the model. - - You can download the model by using the `tts` command. If you run `tts` with a particular model, it will download it automatically - and the model path will be printed on the terminal. - - ```bash - tts --model_name tts_models/es/mai/tacotron2-DDC --text "Ola." - - > Downloading model to /home/ubuntu/.local/share/tts/tts_models--en--ljspeech--glow-tts - ... - ``` - - In the example above, we called the Spanish Tacotron model and give the sample output showing use the path where - the model is downloaded. - -4. Setup the model config for fine-tuning. - - You need to change certain fields in the model config. You have 3 options for playing with the configuration. - - 1. Edit the fields in the ```config.json``` file if you want to use ```TTS/bin/train_tts.py``` to train the model. - 2. Edit the fields in one of the training scripts in the ```recipes``` directory if you want to use python. - 3. Use the command-line arguments to override the fields like ```--coqpit.lr 0.00001``` to change the learning rate. - - Some of the important fields are as follows: - - - `datasets` field: This is set to the dataset you want to fine-tune the model on. - - `run_name` field: This is the name of the run. This is used to name the output directory and the entry in the - logging dashboard. - - `output_path` field: This is the path where the fine-tuned model is saved. - - `lr` field: You may need to use a smaller learning rate for fine-tuning to not lose the features learned by the - pre-trained model with big update steps. - - `audio` fields: Different datasets have different audio characteristics. You must check the current audio parameters and - make sure that the values reflect your dataset. For instance, your dataset might have a different audio sampling rate. - - Apart from the parameters above, you should check the whole configuration file and make sure that the values are correct for - your dataset and training. - -5. Start fine-tuning. - - Whether you use one of the training scripts under ```recipes``` folder or the ```train_tts.py``` to start - your training, you should use the ```--restore_path``` flag to specify the path to the pre-trained model. - - ```bash - CUDA_VISIBLE_DEVICES="0" python recipes/ljspeech/glow_tts/train_glowtts.py \ - --restore_path /home/ubuntu/.local/share/tts/tts_models--en--ljspeech--glow-tts/model_file.pth - ``` - - ```bash - CUDA_VISIBLE_DEVICES="0" python TTS/bin/train_tts.py \ - --config_path /home/ubuntu/.local/share/tts/tts_models--en--ljspeech--glow-tts/config.json \ - --restore_path /home/ubuntu/.local/share/tts/tts_models--en--ljspeech--glow-tts/model_file.pth - ``` - - As stated above, you can also use command-line arguments to change the model configuration. - - - ```bash - CUDA_VISIBLE_DEVICES="0" python recipes/ljspeech/glow_tts/train_glowtts.py \ - --restore_path /home/ubuntu/.local/share/tts/tts_models--en--ljspeech--glow-tts/model_file.pth - --coqpit.run_name "glow-tts-finetune" \ - --coqpit.lr 0.00001 - ``` - diff --git a/TTS/docs/source/formatting_your_dataset.md b/TTS/docs/source/formatting_your_dataset.md deleted file mode 100644 index 477708878f1b6e38ebe981f11f4c2a5392fd9727..0000000000000000000000000000000000000000 --- a/TTS/docs/source/formatting_your_dataset.md +++ /dev/null @@ -1,128 +0,0 @@ -(formatting_your_dataset)= -# Formatting Your Dataset - -For training a TTS model, you need a dataset with speech recordings and transcriptions. The speech must be divided into audio clips and each clip needs transcription. - -If you have a single audio file and you need to split it into clips, there are different open-source tools for you. We recommend Audacity. It is an open-source and free audio editing software. - -It is also important to use a lossless audio file format to prevent compression artifacts. We recommend using `wav` file format. - -Let's assume you created the audio clips and their transcription. You can collect all your clips under a folder. Let's call this folder `wavs`. - -``` -/wavs - | - audio1.wav - | - audio2.wav - | - audio3.wav - ... -``` - -You can either create separate transcription files for each clip or create a text file that maps each audio clip to its transcription. In this file, each line must be delimitered by a special character separating the audio file name from the transcription. And make sure that the delimiter is not used in the transcription text. - -We recommend the following format delimited by `|`. In the following example, `audio1`, `audio2` refer to files `audio1.wav`, `audio2.wav` etc. - -``` -# metadata.txt - -audio1|This is my sentence. -audio2|This is maybe my sentence. -audio3|This is certainly my sentence. -audio4|Let this be your sentence. -... -``` - -In the end, we have the following folder structure -``` -/MyTTSDataset - | - | -> metadata.txt - | -> /wavs - | -> audio1.wav - | -> audio2.wav - | ... -``` - -The format above is taken from widely-used the [LJSpeech](https://keithito.com/LJ-Speech-Dataset/) dataset. You can also download and see the dataset. 🐸TTS already provides tooling for the LJSpeech. if you use the same format, you can start training your models right away. - -## Dataset Quality - -Your dataset should have good coverage of the target language. It should cover the phonemic variety, exceptional sounds and syllables. This is extremely important for especially non-phonemic languages like English. - -For more info about dataset qualities and properties check our [post](https://github.com/coqui-ai/TTS/wiki/What-makes-a-good-TTS-dataset). - -## Using Your Dataset in 🐸TTS - -After you collect and format your dataset, you need to check two things. Whether you need a `formatter` and a `text_cleaner`. The `formatter` loads the text file (created above) as a list and the `text_cleaner` performs a sequence of text normalization operations that converts the raw text into the spoken representation (e.g. converting numbers to text, acronyms, and symbols to the spoken format). - -If you use a different dataset format then the LJSpeech or the other public datasets that 🐸TTS supports, then you need to write your own `formatter`. - -If your dataset is in a new language or it needs special normalization steps, then you need a new `text_cleaner`. - -What you get out of a `formatter` is a `List[Dict]` in the following format. - -``` ->>> formatter(metafile_path) -[ - {"audio_file":"audio1.wav", "text":"This is my sentence.", "speaker_name":"MyDataset", "language": "lang_code"}, - {"audio_file":"audio1.wav", "text":"This is maybe a sentence.", "speaker_name":"MyDataset", "language": "lang_code"}, - ... -] -``` - -Each sub-list is parsed as ```{"", "", "]```. -`````` is the dataset name for single speaker datasets and it is mainly used -in the multi-speaker models to map the speaker of the each sample. But for now, we only focus on single speaker datasets. - -The purpose of a `formatter` is to parse your manifest file and load the audio file paths and transcriptions. -Then, the output is passed to the `Dataset`. It computes features from the audio signals, calls text normalization routines, and converts raw text to -phonemes if needed. - -## Loading your dataset - -Load one of the dataset supported by 🐸TTS. - -```python -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.datasets import load_tts_samples - - -# dataset config for one of the pre-defined datasets -dataset_config = BaseDatasetConfig( - formatter="vctk", meta_file_train="", language="en-us", path="dataset-path") -) - -# load training samples -train_samples, eval_samples = load_tts_samples(dataset_config, eval_split=True) -``` - -Load a custom dataset with a custom formatter. - -```python -from TTS.tts.datasets import load_tts_samples - - -# custom formatter implementation -def formatter(root_path, manifest_file, **kwargs): # pylint: disable=unused-argument - """Assumes each line as ```|``` - """ - txt_file = os.path.join(root_path, manifest_file) - items = [] - speaker_name = "my_speaker" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, "wavs", cols[0]) - text = cols[1] - items.append({"text":text, "audio_file":wav_file, "speaker_name":speaker_name, "root_path": root_path}) - return items - -# load training samples -train_samples, eval_samples = load_tts_samples(dataset_config, eval_split=True, formatter=formatter) -``` - -See `TTS.tts.datasets.TTSDataset`, a generic `Dataset` implementation for the `tts` models. - -See `TTS.vocoder.datasets.*`, for different `Dataset` implementations for the `vocoder` models. - -See `TTS.utils.audio.AudioProcessor` that includes all the audio processing and feature extraction functions used in a -`Dataset` implementation. Feel free to add things as you need. diff --git a/TTS/docs/source/implementing_a_new_language_frontend.md b/TTS/docs/source/implementing_a_new_language_frontend.md deleted file mode 100644 index f4f6a04a5fbc048c9e4a7b2cf2b658d5aa6b1fbc..0000000000000000000000000000000000000000 --- a/TTS/docs/source/implementing_a_new_language_frontend.md +++ /dev/null @@ -1,12 +0,0 @@ -# Implementing a New Language Frontend - -- Language frontends are located under `TTS.tts.utils.text` -- Each special language has a separate folder. -- Each folder containst all the utilities for processing the text input. -- `TTS.tts.utils.text.phonemizers` contains the main phonemizer for a language. This is the class that uses the utilities -from the previous step and used to convert the text to phonemes or graphemes for the model. -- After you implement your phonemizer, you need to add it to the `TTS/tts/utils/text/phonemizers/__init__.py` to be able to -map the language code in the model config - `config.phoneme_language` - to the phonemizer class and initiate the phonemizer automatically. -- You should also add tests to `tests/text_tests` if you want to make a PR. - -We suggest you to check the available implementations as reference. Good luck! \ No newline at end of file diff --git a/TTS/docs/source/implementing_a_new_model.md b/TTS/docs/source/implementing_a_new_model.md deleted file mode 100644 index 176c4865c1c3b229adff41b9d9e738f9201803c3..0000000000000000000000000000000000000000 --- a/TTS/docs/source/implementing_a_new_model.md +++ /dev/null @@ -1,208 +0,0 @@ -# Implementing a Model - -1. Implement layers. - - You can either implement the layers under `TTS/tts/layers/new_model.py` or in the model file `TTS/tts/model/new_model.py`. - You can also reuse layers already implemented. - -2. Test layers. - - We keep tests under `tests` folder. You can add `tts` layers tests under `tts_tests` folder. - Basic tests are checking input-output tensor shapes and output values for a given input. Consider testing extreme cases that are more likely to cause problems like `zero` tensors. - -3. Implement a loss function. - - We keep loss functions under `TTS/tts/layers/losses.py`. You can also mix-and-match implemented loss functions as you like. - - A loss function returns a dictionary in a format ```{’loss’: loss, ‘loss1’:loss1 ...}``` and the dictionary must at least define the `loss` key which is the actual value used by the optimizer. All the items in the dictionary are automatically logged on the terminal and the Tensorboard. - -4. Test the loss function. - - As we do for the layers, you need to test the loss functions too. You need to check input/output tensor shapes, - expected output values for a given input tensor. For instance, certain loss functions have upper and lower limits and - it is a wise practice to test with the inputs that should produce these limits. - -5. Implement `MyModel`. - - In 🐸TTS, a model class is a self-sufficient implementation of a model directing all the interactions with the other - components. It is enough to implement the API provided by the `BaseModel` class to comply. - - A model interacts with the `Trainer API` for training, `Synthesizer API` for inference and testing. - - A 🐸TTS model must return a dictionary by the `forward()` and `inference()` functions. This dictionary must `model_outputs` key that is considered as the main model output by the `Trainer` and `Synthesizer`. - - You can place your `tts` model implementation under `TTS/tts/models/new_model.py` then inherit and implement the `BaseTTS`. - - There is also the `callback` interface by which you can manipulate both the model and the `Trainer` states. Callbacks give you - an infinite flexibility to add custom behaviours for your model and training routines. - - For more details, see {ref}`BaseTTS ` and :obj:`TTS.utils.callbacks`. - -6. Optionally, define `MyModelArgs`. - - `MyModelArgs` is a 👨‍✈️Coqpit class that sets all the class arguments of the `MyModel`. `MyModelArgs` must have - all the fields neccessary to instantiate the `MyModel`. However, for training, you need to pass `MyModelConfig` to - the model. - -7. Test `MyModel`. - - As the layers and the loss functions, it is recommended to test your model. One smart way for testing is that you - create two models with the exact same weights. Then we run a training loop with one of these models and - compare the weights with the other model. All the weights need to be different in a passing test. Otherwise, it - is likely that a part of the model is malfunctioning or not even attached to the model's computational graph. - -8. Define `MyModelConfig`. - - Place `MyModelConfig` file under `TTS/models/configs`. It is enough to inherit the `BaseTTSConfig` to make your - config compatible with the `Trainer`. You should also include `MyModelArgs` as a field if defined. The rest of the fields should define the model - specific values and parameters. - -9. Write Docstrings. - - We love you more when you document your code. ❤️ - - -# Template 🐸TTS Model implementation - -You can start implementing your model by copying the following base class. - -```python -from TTS.tts.models.base_tts import BaseTTS - - -class MyModel(BaseTTS): - """ - Notes on input/output tensor shapes: - Any input or output tensor of the model must be shaped as - - - 3D tensors `batch x time x channels` - - 2D tensors `batch x channels` - - 1D tensors `batch x 1` - """ - - def __init__(self, config: Coqpit): - super().__init__() - self._set_model_args(config) - - def _set_model_args(self, config: Coqpit): - """Set model arguments from the config. Override this.""" - pass - - def forward(self, input: torch.Tensor, *args, aux_input={}, **kwargs) -> Dict: - """Forward pass for the model mainly used in training. - - You can be flexible here and use different number of arguments and argument names since it is intended to be - used by `train_step()` without exposing it out of the model. - - Args: - input (torch.Tensor): Input tensor. - aux_input (Dict): Auxiliary model inputs like embeddings, durations or any other sorts of inputs. - - Returns: - Dict: Model outputs. Main model output must be named as "model_outputs". - """ - outputs_dict = {"model_outputs": None} - ... - return outputs_dict - - def inference(self, input: torch.Tensor, aux_input={}) -> Dict: - """Forward pass for inference. - - We don't use `*kwargs` since it is problematic with the TorchScript API. - - Args: - input (torch.Tensor): [description] - aux_input (Dict): Auxiliary inputs like speaker embeddings, durations etc. - - Returns: - Dict: [description] - """ - outputs_dict = {"model_outputs": None} - ... - return outputs_dict - - def train_step(self, batch: Dict, criterion: nn.Module) -> Tuple[Dict, Dict]: - """Perform a single training step. Run the model forward pass and compute losses. - - Args: - batch (Dict): Input tensors. - criterion (nn.Module): Loss layer designed for the model. - - Returns: - Tuple[Dict, Dict]: Model ouputs and computed losses. - """ - outputs_dict = {} - loss_dict = {} # this returns from the criterion - ... - return outputs_dict, loss_dict - - def train_log(self, batch: Dict, outputs: Dict, logger: "Logger", assets:Dict, steps:int) -> None: - """Create visualizations and waveform examples for training. - - For example, here you can plot spectrograms and generate sample sample waveforms from these spectrograms to - be projected onto Tensorboard. - - Args: - ap (AudioProcessor): audio processor used at training. - batch (Dict): Model inputs used at the previous training step. - outputs (Dict): Model outputs generated at the previoud training step. - - Returns: - Tuple[Dict, np.ndarray]: training plots and output waveform. - """ - pass - - def eval_step(self, batch: Dict, criterion: nn.Module) -> Tuple[Dict, Dict]: - """Perform a single evaluation step. Run the model forward pass and compute losses. In most cases, you can - call `train_step()` with no changes. - - Args: - batch (Dict): Input tensors. - criterion (nn.Module): Loss layer designed for the model. - - Returns: - Tuple[Dict, Dict]: Model ouputs and computed losses. - """ - outputs_dict = {} - loss_dict = {} # this returns from the criterion - ... - return outputs_dict, loss_dict - - def eval_log(self, batch: Dict, outputs: Dict, logger: "Logger", assets:Dict, steps:int) -> None: - """The same as `train_log()`""" - pass - - def load_checkpoint(self, config: Coqpit, checkpoint_path: str, eval: bool = False) -> None: - """Load a checkpoint and get ready for training or inference. - - Args: - config (Coqpit): Model configuration. - checkpoint_path (str): Path to the model checkpoint file. - eval (bool, optional): If true, init model for inference else for training. Defaults to False. - """ - ... - - def get_optimizer(self) -> Union["Optimizer", List["Optimizer"]]: - """Setup an return optimizer or optimizers.""" - pass - - def get_lr(self) -> Union[float, List[float]]: - """Return learning rate(s). - - Returns: - Union[float, List[float]]: Model's initial learning rates. - """ - pass - - def get_scheduler(self, optimizer: torch.optim.Optimizer): - pass - - def get_criterion(self): - pass - - def format_batch(self): - pass - -``` - - diff --git a/TTS/docs/source/index.md b/TTS/docs/source/index.md deleted file mode 100644 index 5ef3d88ca918bd09e88938228728b9143eee1749..0000000000000000000000000000000000000000 --- a/TTS/docs/source/index.md +++ /dev/null @@ -1,61 +0,0 @@ - -```{include} ../../README.md -:relative-images: -``` ----- - -# Documentation Content -```{eval-rst} -.. toctree:: - :maxdepth: 2 - :caption: Get started - - tutorial_for_nervous_beginners - installation - faq - contributing - -.. toctree:: - :maxdepth: 2 - :caption: Using 🐸TTS - - inference - docker_images - implementing_a_new_model - implementing_a_new_language_frontend - training_a_model - finetuning - configuration - formatting_your_dataset - what_makes_a_good_dataset - tts_datasets - marytts - -.. toctree:: - :maxdepth: 2 - :caption: Main Classes - - main_classes/trainer_api - main_classes/audio_processor - main_classes/model_api - main_classes/dataset - main_classes/gan - main_classes/speaker_manager - -.. toctree:: - :maxdepth: 2 - :caption: `tts` Models - - models/glow_tts.md - models/vits.md - models/forward_tts.md - models/tacotron1-2.md - models/overflow.md - models/tortoise.md - models/bark.md - -.. toctree:: - :maxdepth: 2 - :caption: `vocoder` Models - -``` diff --git a/TTS/docs/source/inference.md b/TTS/docs/source/inference.md deleted file mode 100644 index b372efe365a85609d42f7f7b98ebabbcecd589d1..0000000000000000000000000000000000000000 --- a/TTS/docs/source/inference.md +++ /dev/null @@ -1,235 +0,0 @@ -(synthesizing_speech)= -# Synthesizing Speech - -First, you need to install TTS. We recommend using PyPi. You need to call the command below: - -```bash -$ pip install TTS -``` - -After the installation, 2 terminal commands are available. - -1. TTS Command Line Interface (CLI). - `tts` -2. Local Demo Server. - `tts-server` -3. In 🐍Python. - `from TTS.api import TTS` - -## On the Commandline - `tts` -![cli.gif](https://github.com/coqui-ai/TTS/raw/main/images/tts_cli.gif) - -After the installation, 🐸TTS provides a CLI interface for synthesizing speech using pre-trained models. You can either use your own model or the release models under 🐸TTS. - -Listing released 🐸TTS models. - -```bash -tts --list_models -``` - -Run a TTS model, from the release models list, with its default vocoder. (Simply copy and paste the full model names from the list as arguments for the command below.) - -```bash -tts --text "Text for TTS" \ - --model_name "///" \ - --out_path folder/to/save/output.wav -``` - -Run a tts and a vocoder model from the released model list. Note that not every vocoder is compatible with every TTS model. - -```bash -tts --text "Text for TTS" \ - --model_name "tts_models///" \ - --vocoder_name "vocoder_models///" \ - --out_path folder/to/save/output.wav -``` - -Run your own TTS model (Using Griffin-Lim Vocoder) - -```bash -tts --text "Text for TTS" \ - --model_path path/to/model.pth \ - --config_path path/to/config.json \ - --out_path folder/to/save/output.wav -``` - -Run your own TTS and Vocoder models - -```bash -tts --text "Text for TTS" \ - --config_path path/to/config.json \ - --model_path path/to/model.pth \ - --out_path folder/to/save/output.wav \ - --vocoder_path path/to/vocoder.pth \ - --vocoder_config_path path/to/vocoder_config.json -``` - -Run a multi-speaker TTS model from the released models list. - -```bash -tts --model_name "tts_models///" --list_speaker_idxs # list the possible speaker IDs. -tts --text "Text for TTS." --out_path output/path/speech.wav --model_name "tts_models///" --speaker_idx "" -``` - -Run a released voice conversion model - -```bash -tts --model_name "voice_conversion///" - --source_wav "my/source/speaker/audio.wav" - --target_wav "my/target/speaker/audio.wav" - --out_path folder/to/save/output.wav -``` - -**Note:** You can use ```./TTS/bin/synthesize.py``` if you prefer running ```tts``` from the TTS project folder. - -## On the Demo Server - `tts-server` - - -![server.gif](https://github.com/coqui-ai/TTS/raw/main/images/demo_server.gif) - -You can boot up a demo 🐸TTS server to run an inference with your models. Note that the server is not optimized for performance -but gives you an easy way to interact with the models. - -The demo server provides pretty much the same interface as the CLI command. - -```bash -tts-server -h # see the help -tts-server --list_models # list the available models. -``` - -Run a TTS model, from the release models list, with its default vocoder. -If the model you choose is a multi-speaker TTS model, you can select different speakers on the Web interface and synthesize -speech. - -```bash -tts-server --model_name "///" -``` - -Run a TTS and a vocoder model from the released model list. Note that not every vocoder is compatible with every TTS model. - -```bash -tts-server --model_name "///" \ - --vocoder_name "///" -``` - -## Python 🐸TTS API - -You can run a multi-speaker and multi-lingual model in Python as - -```python -from TTS.api import TTS - -# List available 🐸TTS models and choose the first one -model_name = TTS.list_models()[0] -# Init TTS -tts = TTS(model_name) -# Run TTS -# ❗ Since this model is multi-speaker and multi-lingual, we must set the target speaker and the language -# Text to speech with a numpy output -wav = tts.tts("This is a test! This is also a test!!", speaker=tts.speakers[0], language=tts.languages[0]) -# Text to speech to a file -tts.tts_to_file(text="Hello world!", speaker=tts.speakers[0], language=tts.languages[0], file_path="output.wav") -``` - -#### Here is an example for a single speaker model. - -```python -# Init TTS with the target model name -tts = TTS(model_name="tts_models/de/thorsten/tacotron2-DDC", progress_bar=False, gpu=False) -# Run TTS -tts.tts_to_file(text="Ich bin eine Testnachricht.", file_path=OUTPUT_PATH) -``` - -#### Example voice cloning with YourTTS in English, French and Portuguese: - -```python -tts = TTS(model_name="tts_models/multilingual/multi-dataset/your_tts", progress_bar=False, gpu=True) -tts.tts_to_file("This is voice cloning.", speaker_wav="my/cloning/audio.wav", language="en", file_path="output.wav") -tts.tts_to_file("C'est le clonage de la voix.", speaker_wav="my/cloning/audio.wav", language="fr", file_path="output.wav") -tts.tts_to_file("Isso é clonagem de voz.", speaker_wav="my/cloning/audio.wav", language="pt", file_path="output.wav") -``` - -#### Example voice conversion converting speaker of the `source_wav` to the speaker of the `target_wav` - -```python -tts = TTS(model_name="voice_conversion_models/multilingual/vctk/freevc24", progress_bar=False, gpu=True) -tts.voice_conversion_to_file(source_wav="my/source.wav", target_wav="my/target.wav", file_path="output.wav") -``` - -#### Example voice cloning by a single speaker TTS model combining with the voice conversion model. - -This way, you can clone voices by using any model in 🐸TTS. - -```python -tts = TTS("tts_models/de/thorsten/tacotron2-DDC") -tts.tts_with_vc_to_file( - "Wie sage ich auf Italienisch, dass ich dich liebe?", - speaker_wav="target/speaker.wav", - file_path="ouptut.wav" -) -``` - -#### Example text to speech using [🐸Coqui Studio](https://coqui.ai) models. - -You can use all of your available speakers in the studio. -[🐸Coqui Studio](https://coqui.ai) API token is required. You can get it from the [account page](https://coqui.ai/account). -You should set the `COQUI_STUDIO_TOKEN` environment variable to use the API token. - -```python -# If you have a valid API token set you will see the studio speakers as separate models in the list. -# The name format is coqui_studio/en//coqui_studio -models = TTS().list_models() -# Init TTS with the target studio speaker -tts = TTS(model_name="coqui_studio/en/Torcull Diarmuid/coqui_studio", progress_bar=False, gpu=False) -# Run TTS -tts.tts_to_file(text="This is a test.", file_path=OUTPUT_PATH) -# Run TTS with emotion and speed control -tts.tts_to_file(text="This is a test.", file_path=OUTPUT_PATH, emotion="Happy", speed=1.5) -``` - -If you just need 🐸 Coqui Studio speakers, you can use `CS_API`. It is a wrapper around the 🐸 Coqui Studio API. - -```python -from TTS.api import CS_API - -# Init 🐸 Coqui Studio API -# you can either set the API token as an environment variable `COQUI_STUDIO_TOKEN` or pass it as an argument. - -# XTTS - Best quality and life-like speech in EN -api = CS_API(api_token=, model="XTTS") -api.speakers # all the speakers are available with all the models. -api.list_speakers() -api.list_voices() -wav, sample_rate = api.tts(text="This is a test.", speaker=api.speakers[0].name, emotion="Happy", speed=1.5) - -# XTTS-multilingual - Multilingual XTTS with [en, de, es, fr, it, pt, ...] (more langs coming soon) -api = CS_API(api_token=, model="XTTS-multilingual") -api.speakers -api.list_speakers() -api.list_voices() -wav, sample_rate = api.tts(text="This is a test.", speaker=api.speakers[0].name, emotion="Happy", speed=1.5) - -# V1 - Fast and lightweight TTS in EN with emotion control. -api = CS_API(api_token=, model="V1") -api.speakers -api.emotions # emotions are only for the V1 model. -api.list_speakers() -api.list_voices() -wav, sample_rate = api.tts(text="This is a test.", speaker=api.speakers[0].name, emotion="Happy", speed=1.5) -``` - -#### Example text to speech using **Fairseq models in ~1100 languages** 🤯. -For these models use the following name format: `tts_models//fairseq/vits`. - -You can find the list of language ISO codes [here](https://dl.fbaipublicfiles.com/mms/tts/all-tts-languages.html) and learn about the Fairseq models [here](https://github.com/facebookresearch/fairseq/tree/main/examples/mms). - -```python -from TTS.api import TTS -api = TTS(model_name="tts_models/eng/fairseq/vits", gpu=True) -api.tts_to_file("This is a test.", file_path="output.wav") - -# TTS with on the fly voice conversion -api = TTS("tts_models/deu/fairseq/vits") -api.tts_with_vc_to_file( - "Wie sage ich auf Italienisch, dass ich dich liebe?", - speaker_wav="target/speaker.wav", - file_path="ouptut.wav" -) -``` \ No newline at end of file diff --git a/TTS/docs/source/installation.md b/TTS/docs/source/installation.md deleted file mode 100644 index c4d05361f4f7d120da53d7e3dc60d635f1b06e5d..0000000000000000000000000000000000000000 --- a/TTS/docs/source/installation.md +++ /dev/null @@ -1,33 +0,0 @@ -# Installation - -🐸TTS supports python >=3.7 <3.11.0 and tested on Ubuntu 18.10, 19.10, 20.10. - -## Using `pip` - -`pip` is recommended if you want to use 🐸TTS only for inference. - -You can install from PyPI as follows: - -```bash -pip install TTS # from PyPI -``` - -Or install from Github: - -```bash -pip install git+https://github.com/coqui-ai/TTS # from Github -``` - -## Installing From Source - -This is recommended for development and more control over 🐸TTS. - -```bash -git clone https://github.com/coqui-ai/TTS/ -cd TTS -make system-deps # only on Linux systems. -make install -``` - -## On Windows -If you are on Windows, 👑@GuyPaddock wrote installation instructions [here](https://stackoverflow.com/questions/66726331/ \ No newline at end of file diff --git a/TTS/docs/source/main_classes/audio_processor.md b/TTS/docs/source/main_classes/audio_processor.md deleted file mode 100644 index 600b0db582880920be11cfc7773e4b2876127cb8..0000000000000000000000000000000000000000 --- a/TTS/docs/source/main_classes/audio_processor.md +++ /dev/null @@ -1,25 +0,0 @@ -# AudioProcessor API - -`TTS.utils.audio.AudioProcessor` is the core class for all the audio processing routines. It provides an API for - -- Feature extraction. -- Sound normalization. -- Reading and writing audio files. -- Sampling audio signals. -- Normalizing and denormalizing audio signals. -- Griffin-Lim vocoder. - -The `AudioProcessor` needs to be initialized with `TTS.config.shared_configs.BaseAudioConfig`. Any model config -also must inherit or initiate `BaseAudioConfig`. - -## AudioProcessor -```{eval-rst} -.. autoclass:: TTS.utils.audio.AudioProcessor - :members: -``` - -## BaseAudioConfig -```{eval-rst} -.. autoclass:: TTS.config.shared_configs.BaseAudioConfig - :members: -``` \ No newline at end of file diff --git a/TTS/docs/source/main_classes/dataset.md b/TTS/docs/source/main_classes/dataset.md deleted file mode 100644 index 92d381aca552c6fe95a9573d76227b8aa51a8dc0..0000000000000000000000000000000000000000 --- a/TTS/docs/source/main_classes/dataset.md +++ /dev/null @@ -1,25 +0,0 @@ -# Datasets - -## TTS Dataset - -```{eval-rst} -.. autoclass:: TTS.tts.datasets.TTSDataset - :members: -``` - -## Vocoder Dataset - -```{eval-rst} -.. autoclass:: TTS.vocoder.datasets.gan_dataset.GANDataset - :members: -``` - -```{eval-rst} -.. autoclass:: TTS.vocoder.datasets.wavegrad_dataset.WaveGradDataset - :members: -``` - -```{eval-rst} -.. autoclass:: TTS.vocoder.datasets.wavernn_dataset.WaveRNNDataset - :members: -``` \ No newline at end of file diff --git a/TTS/docs/source/main_classes/gan.md b/TTS/docs/source/main_classes/gan.md deleted file mode 100644 index 4524b4b5c591f9790f68999b4920abc50f32c9cd..0000000000000000000000000000000000000000 --- a/TTS/docs/source/main_classes/gan.md +++ /dev/null @@ -1,12 +0,0 @@ -# GAN API - -The {class}`TTS.vocoder.models.gan.GAN` provides an easy way to implementing new GAN based models. You just need -to define the model architectures for the generator and the discriminator networks and give them to the `GAN` class -to do its ✨️. - - -## GAN -```{eval-rst} -.. autoclass:: TTS.vocoder.models.gan.GAN - :members: -``` \ No newline at end of file diff --git a/TTS/docs/source/main_classes/model_api.md b/TTS/docs/source/main_classes/model_api.md deleted file mode 100644 index 6781a268ab53139519c51bbe44d6601a38da1ac6..0000000000000000000000000000000000000000 --- a/TTS/docs/source/main_classes/model_api.md +++ /dev/null @@ -1,24 +0,0 @@ -# Model API -Model API provides you a set of functions that easily make your model compatible with the `Trainer`, -`Synthesizer` and `ModelZoo`. - -## Base TTS Model - -```{eval-rst} -.. autoclass:: TTS.model.BaseModel - :members: -``` - -## Base `tts` Model - -```{eval-rst} -.. autoclass:: TTS.tts.models.base_tts.BaseTTS - :members: -``` - -## Base `vocoder` Model - -```{eval-rst} -.. autoclass:: TTS.vocoder.models.base_vocoder.BaseVocoder - :members: -``` \ No newline at end of file diff --git a/TTS/docs/source/main_classes/speaker_manager.md b/TTS/docs/source/main_classes/speaker_manager.md deleted file mode 100644 index ba4b55dc781ea09c13f703ea815bac14acf0bfa0..0000000000000000000000000000000000000000 --- a/TTS/docs/source/main_classes/speaker_manager.md +++ /dev/null @@ -1,11 +0,0 @@ -# Speaker Manager API - -The {class}`TTS.tts.utils.speakers.SpeakerManager` organize speaker related data and information for 🐸TTS models. It is -especially useful for multi-speaker models. - - -## Speaker Manager -```{eval-rst} -.. automodule:: TTS.tts.utils.speakers - :members: -``` \ No newline at end of file diff --git a/TTS/docs/source/main_classes/trainer_api.md b/TTS/docs/source/main_classes/trainer_api.md deleted file mode 100644 index f765fff7bd1bff49a00c57217e086a6cabe74a13..0000000000000000000000000000000000000000 --- a/TTS/docs/source/main_classes/trainer_api.md +++ /dev/null @@ -1,3 +0,0 @@ -# Trainer API - -We made the trainer a seprate project on https://github.com/coqui-ai/Trainer diff --git a/TTS/docs/source/make.bat b/TTS/docs/source/make.bat deleted file mode 100644 index 922152e96a04a242e6fc40f124261d74890617d8..0000000000000000000000000000000000000000 --- a/TTS/docs/source/make.bat +++ /dev/null @@ -1,35 +0,0 @@ -@ECHO OFF - -pushd %~dp0 - -REM Command file for Sphinx documentation - -if "%SPHINXBUILD%" == "" ( - set SPHINXBUILD=sphinx-build -) -set SOURCEDIR=. -set BUILDDIR=_build - -if "%1" == "" goto help - -%SPHINXBUILD% >NUL 2>NUL -if errorlevel 9009 ( - echo. - echo.The 'sphinx-build' command was not found. Make sure you have Sphinx - echo.installed, then set the SPHINXBUILD environment variable to point - echo.to the full path of the 'sphinx-build' executable. Alternatively you - echo.may add the Sphinx directory to PATH. - echo. - echo.If you don't have Sphinx installed, grab it from - echo.http://sphinx-doc.org/ - exit /b 1 -) - -%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% -goto end - -:help -%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% - -:end -popd diff --git a/TTS/docs/source/marytts.md b/TTS/docs/source/marytts.md deleted file mode 100644 index 81d547107df26a22cd4d3537c0669cffe8a83e57..0000000000000000000000000000000000000000 --- a/TTS/docs/source/marytts.md +++ /dev/null @@ -1,43 +0,0 @@ -# Mary-TTS API Support for Coqui-TTS - -## What is Mary-TTS? - -[Mary (Modular Architecture for Research in sYynthesis) Text-to-Speech](http://mary.dfki.de/) is an open-source (GNU LGPL license), multilingual Text-to-Speech Synthesis platform written in Java. It was originally developed as a collaborative project of [DFKI’s](http://www.dfki.de/web) Language Technology Lab and the [Institute of Phonetics](http://www.coli.uni-saarland.de/groups/WB/Phonetics/) at Saarland University, Germany. It is now maintained by the Multimodal Speech Processing Group in the [Cluster of Excellence MMCI](https://www.mmci.uni-saarland.de/) and DFKI. -MaryTTS has been around for a very! long time. Version 3.0 even dates back to 2006, long before Deep Learning was a broadly known term and the last official release was version 5.2 in 2016. -You can check out this OpenVoice-Tech page to learn more: https://openvoice-tech.net/index.php/MaryTTS - -## Why Mary-TTS compatibility is relevant - -Due to it's open-source nature, relatively high quality voices and fast synthetization speed Mary-TTS was a popular choice in the past and many tools implemented API support over the years like screen-readers (NVDA + SpeechHub), smart-home HUBs (openHAB, Home Assistant) or voice assistants (Rhasspy, Mycroft, SEPIA). A compatibility layer for Coqui-TTS will ensure that these tools can use Coqui as a drop-in replacement and get even better voices right away. - -## API and code examples - -Like Coqui-TTS, Mary-TTS can run as HTTP server to allow access to the API via HTTP GET and POST calls. The best documentations of this API are probably the [web-page](https://github.com/marytts/marytts/tree/master/marytts-runtime/src/main/resources/marytts/server/http), available via your self-hosted Mary-TTS server and the [Java docs page](http://mary.dfki.de/javadoc/marytts/server/http/MaryHttpServer.html). -Mary-TTS offers a larger number of endpoints to load styles, audio effects, examples etc., but compatible tools often only require 3 of them to work: -- `/locales` (GET) - Returns a list of supported locales in the format `[locale]\n...`, for example "en_US" or "de_DE" or simply "en" etc. -- `/voices` (GET) - Returns a list of supported voices in the format `[name] [locale] [gender]\n...`, 'name' can be anything without spaces(!) and 'gender' is traditionally `f` or `m` -- `/process?INPUT_TEXT=[my text]&INPUT_TYPE=TEXT&LOCALE=[locale]&VOICE=[name]&OUTPUT_TYPE=AUDIO&AUDIO=WAVE_FILE` (GET/POST) - Processes the input text and returns a wav file. INPUT_TYPE, OUTPUT_TYPE and AUDIO support additional values, but are usually static in compatible tools. - -If your Coqui-TTS server is running on `localhost` using `port` 59125 (for classic Mary-TTS compatibility) you can us the following CURL requests to test the API: - -Return locale of active voice, e.g. "en": -```bash -curl http://localhost:59125/locales -``` - -Return name of active voice, e.g. "glow-tts en u" -```bash -curl http://localhost:59125/voices -``` - -Create a wav-file with spoken input text: -```bash -curl http://localhost:59125/process?INPUT_TEXT=this+is+a+test > test.wav -``` - -You can enter the same URLs in your browser and check-out the results there as well. - -### How it works and limitations - -A classic Mary-TTS server would usually show all installed locales and voices via the corresponding endpoints and accept the parameters `LOCALE` and `VOICE` for processing. For Coqui-TTS we usually start the server with one specific locale and model and thus cannot return all available options. Instead we return the active locale and use the model name as "voice". Since we only have one active model and always want to return a WAV-file, we currently ignore all other processing parameters except `INPUT_TEXT`. Since the gender is not defined for models in Coqui-TTS we always return `u` (undefined). -We think that this is an acceptable compromise, since users are often only interested in one specific voice anyways, but the API might get extended in the future to support multiple languages and voices at the same time. \ No newline at end of file diff --git a/TTS/docs/source/models/bark.md b/TTS/docs/source/models/bark.md deleted file mode 100644 index 978d793a3d94e06cce446c2d2729ead6443aafb7..0000000000000000000000000000000000000000 --- a/TTS/docs/source/models/bark.md +++ /dev/null @@ -1,104 +0,0 @@ -# Bark 🐶 - -Bark is a multi-lingual TTS model created by [Suno-AI](https://www.suno.ai/). It can generate conversational speech as well as music and sound effects. -It is architecturally very similar to Google's [AudioLM](https://arxiv.org/abs/2209.03143). For more information, please refer to the [Suno-AI's repo](https://github.com/suno-ai/bark). - - -## Acknowledgements -- 👑[Suno-AI](https://www.suno.ai/) for training and open-sourcing this model. -- 👑[gitmylo](https://github.com/gitmylo) for finding [the solution](https://github.com/gitmylo/bark-voice-cloning-HuBERT-quantizer/) to the semantic token generation for voice clones and finetunes. -- 👑[serp-ai](https://github.com/serp-ai/bark-with-voice-clone) for controlled voice cloning. - - -## Example Use - -```python -text = "Hello, my name is Manmay , how are you?" - -from TTS.tts.configs.bark_config import BarkConfig -from TTS.tts.models.bark import Bark - -config = BarkConfig() -model = Bark.init_from_config(config) -model.load_checkpoint(config, checkpoint_dir="path/to/model/dir/", eval=True) - -# with random speaker -output_dict = model.synthesize(text, config, speaker_id="random", voice_dirs=None) - -# cloning a speaker. -# It assumes that you have a speaker file in `bark_voices/speaker_n/speaker.wav` or `bark_voices/speaker_n/speaker.npz` -output_dict = model.synthesize(text, config, speaker_id="ljspeech", voice_dirs="bark_voices/") -``` - -Using 🐸TTS API: - -```python -from TTS.api import TTS - -# Load the model to GPU -# Bark is really slow on CPU, so we recommend using GPU. -tts = TTS("tts_models/multilingual/multi-dataset/bark", gpu=True) - - -# Cloning a new speaker -# This expects to find a mp3 or wav file like `bark_voices/new_speaker/speaker.wav` -# It computes the cloning values and stores in `bark_voices/new_speaker/speaker.npz` -tts.tts_to_file(text="Hello, my name is Manmay , how are you?", - file_path="output.wav", - voice_dir="bark_voices/", - speaker="ljspeech") - - -# When you run it again it uses the stored values to generate the voice. -tts.tts_to_file(text="Hello, my name is Manmay , how are you?", - file_path="output.wav", - voice_dir="bark_voices/", - speaker="ljspeech") - - -# random speaker -tts = TTS("tts_models/multilingual/multi-dataset/bark", gpu=True) -tts.tts_to_file("hello world", file_path="out.wav") -``` - -Using 🐸TTS Command line: - -```console -# cloning the `ljspeech` voice -tts --model_name tts_models/multilingual/multi-dataset/bark \ ---text "This is an example." \ ---out_path "output.wav" \ ---voice_dir bark_voices/ \ ---speaker_idx "ljspeech" \ ---progress_bar True - -# Random voice generation -tts --model_name tts_models/multilingual/multi-dataset/bark \ ---text "This is an example." \ ---out_path "output.wav" \ ---progress_bar True -``` - - -## Important resources & papers -- Original Repo: https://github.com/suno-ai/bark -- Cloning implementation: https://github.com/serp-ai/bark-with-voice-clone -- AudioLM: https://arxiv.org/abs/2209.03143 - -## BarkConfig -```{eval-rst} -.. autoclass:: TTS.tts.configs.bark_config.BarkConfig - :members: -``` - -## BarkArgs -```{eval-rst} -.. autoclass:: TTS.tts.models.bark.BarkArgs - :members: -``` - -## Bark Model -```{eval-rst} -.. autoclass:: TTS.tts.models.bark.Bark - :members: -``` diff --git a/TTS/docs/source/models/forward_tts.md b/TTS/docs/source/models/forward_tts.md deleted file mode 100644 index 473949677057bfb9376cebfc6825d6a57f89fe56..0000000000000000000000000000000000000000 --- a/TTS/docs/source/models/forward_tts.md +++ /dev/null @@ -1,65 +0,0 @@ -# Forward TTS model(s) - -A general feed-forward TTS model implementation that can be configured to different architectures by setting different -encoder and decoder networks. It can be trained with either pre-computed durations (from pre-trained Tacotron) or -an alignment network that learns the text to audio alignment from the input data. - -Currently we provide the following pre-configured architectures: - -- **FastSpeech:** - - It's a feed-forward model TTS model that uses Feed Forward Transformer (FFT) modules as the encoder and decoder. - -- **FastPitch:** - - It uses the same FastSpeech architecture that is conditioned on fundemental frequency (f0) contours with the - promise of more expressive speech. - -- **SpeedySpeech:** - - It uses Residual Convolution layers instead of Transformers that leads to a more compute friendly model. - -- **FastSpeech2 (TODO):** - - Similar to FastPitch but it also uses a spectral energy values as an addition. - -## Important resources & papers -- FastPitch: https://arxiv.org/abs/2006.06873 -- SpeedySpeech: https://arxiv.org/abs/2008.03802 -- FastSpeech: https://arxiv.org/pdf/1905.09263 -- FastSpeech2: https://arxiv.org/abs/2006.04558 -- Aligner Network: https://arxiv.org/abs/2108.10447 -- What is Pitch: https://www.britannica.com/topic/pitch-speech - - -## ForwardTTSArgs -```{eval-rst} -.. autoclass:: TTS.tts.models.forward_tts.ForwardTTSArgs - :members: -``` - -## ForwardTTS Model -```{eval-rst} -.. autoclass:: TTS.tts.models.forward_tts.ForwardTTS - :members: -``` - -## FastPitchConfig -```{eval-rst} -.. autoclass:: TTS.tts.configs.fast_pitch_config.FastPitchConfig - :members: -``` - -## SpeedySpeechConfig -```{eval-rst} -.. autoclass:: TTS.tts.configs.speedy_speech_config.SpeedySpeechConfig - :members: -``` - -## FastSpeechConfig -```{eval-rst} -.. autoclass:: TTS.tts.configs.fast_speech_config.FastSpeechConfig - :members: -``` - - diff --git a/TTS/docs/source/models/glow_tts.md b/TTS/docs/source/models/glow_tts.md deleted file mode 100644 index 66171abd144ce3f2f2c8ec236ef1cc6c46ea9424..0000000000000000000000000000000000000000 --- a/TTS/docs/source/models/glow_tts.md +++ /dev/null @@ -1,22 +0,0 @@ -# Glow TTS - -Glow TTS is a normalizing flow model for text-to-speech. It is built on the generic Glow model that is previously -used in computer vision and vocoder models. It uses "monotonic alignment search" (MAS) to fine the text-to-speech alignment -and uses the output to train a separate duration predictor network for faster inference run-time. - -## Important resources & papers -- GlowTTS: https://arxiv.org/abs/2005.11129 -- Glow (Generative Flow with invertible 1x1 Convolutions): https://arxiv.org/abs/1807.03039 -- Normalizing Flows: https://blog.evjang.com/2018/01/nf1.html - -## GlowTTS Config -```{eval-rst} -.. autoclass:: TTS.tts.configs.glow_tts_config.GlowTTSConfig - :members: -``` - -## GlowTTS Model -```{eval-rst} -.. autoclass:: TTS.tts.models.glow_tts.GlowTTS - :members: -``` diff --git a/TTS/docs/source/models/overflow.md b/TTS/docs/source/models/overflow.md deleted file mode 100644 index 09e270eae566d0c05c8c285af6504711d8f12cba..0000000000000000000000000000000000000000 --- a/TTS/docs/source/models/overflow.md +++ /dev/null @@ -1,36 +0,0 @@ -# Overflow TTS - -Neural HMMs are a type of neural transducer recently proposed for -sequence-to-sequence modelling in text-to-speech. They combine the best features -of classic statistical speech synthesis and modern neural TTS, requiring less -data and fewer training updates, and are less prone to gibberish output caused -by neural attention failures. In this paper, we combine neural HMM TTS with -normalising flows for describing the highly non-Gaussian distribution of speech -acoustics. The result is a powerful, fully probabilistic model of durations and -acoustics that can be trained using exact maximum likelihood. Compared to -dominant flow-based acoustic models, our approach integrates autoregression for -improved modelling of long-range dependences such as utterance-level prosody. -Experiments show that a system based on our proposal gives more accurate -pronunciations and better subjective speech quality than comparable methods, -whilst retaining the original advantages of neural HMMs. Audio examples and code -are available at https://shivammehta25.github.io/OverFlow/. - - -## Important resources & papers -- HMM: https://de.wikipedia.org/wiki/Hidden_Markov_Model -- OverflowTTS paper: https://arxiv.org/abs/2211.06892 -- Neural HMM: https://arxiv.org/abs/2108.13320 -- Audio Samples: https://shivammehta25.github.io/OverFlow/ - - -## OverflowConfig -```{eval-rst} -.. autoclass:: TTS.tts.configs.overflow_config.OverflowConfig - :members: -``` - -## Overflow Model -```{eval-rst} -.. autoclass:: TTS.tts.models.overflow.Overflow - :members: -``` \ No newline at end of file diff --git a/TTS/docs/source/models/tacotron1-2.md b/TTS/docs/source/models/tacotron1-2.md deleted file mode 100644 index 25721eba4ca7899a6a24c36a7656b6a5a3ebb1a1..0000000000000000000000000000000000000000 --- a/TTS/docs/source/models/tacotron1-2.md +++ /dev/null @@ -1,63 +0,0 @@ -# 🌮 Tacotron 1 and 2 - -Tacotron is one of the first successful DL-based text-to-mel models and opened up the whole TTS field for more DL research. - -Tacotron mainly is an encoder-decoder model with attention. - -The encoder takes input tokens (characters or phonemes) and the decoder outputs mel-spectrogram* frames. Attention module in-between learns to align the input tokens with the output mel-spectrgorams. - -Tacotron1 and 2 are both built on the same encoder-decoder architecture but they use different layers. Additionally, Tacotron1 uses a Postnet module to convert mel-spectrograms to linear spectrograms with a higher resolution before the vocoder. - -Vanilla Tacotron models are slow at inference due to the auto-regressive* nature that prevents the model to process all the inputs in parallel. One trick is to use a higher “reduction rate” that helps the model to predict multiple frames at once. That is, reduction rate 2 reduces the number of decoder iterations by half. - -Tacotron also uses a Prenet module with Dropout that projects the model’s previous output before feeding it to the decoder again. The paper and most of the implementations use the Dropout layer even in inference and they report the attention fails or the voice quality degrades otherwise. But the issue with that, you get a slightly different output speech every time you run the model. - -Training the attention is notoriously problematic in Tacoron models. Especially, in inference, for some input sequences, the alignment fails and causes the model to produce unexpected results. There are many different methods proposed to improve the attention. - -After hundreds of experiments, @ 🐸TTS we suggest Double Decoder Consistency that leads to the most robust model performance. - -If you have a limited VRAM, then you can try using the Guided Attention Loss or the Dynamic Convolutional Attention. You can also combine the two. - - -## Important resources & papers -- Tacotron: https://arxiv.org/abs/2006.06873 -- Tacotron2: https://arxiv.org/abs/2008.03802 -- Double Decoder Consistency: https://coqui.ai/blog/tts/solving-attention-problems-of-tts-models-with-double-decoder-consistency -- Guided Attention Loss: https://arxiv.org/abs/1710.08969 -- Forward & Backward Decoder: https://arxiv.org/abs/1907.09006 -- Forward Attention: https://arxiv.org/abs/1807.06736 -- Gaussian Attention: https://arxiv.org/abs/1910.10288 -- Dynamic Convolutional Attention: https://arxiv.org/pdf/1910.10288.pdf - - -## BaseTacotron -```{eval-rst} -.. autoclass:: TTS.tts.models.base_tacotron.BaseTacotron - :members: -``` - -## Tacotron -```{eval-rst} -.. autoclass:: TTS.tts.models.tacotron.Tacotron - :members: -``` - -## Tacotron2 -```{eval-rst} -.. autoclass:: TTS.tts.models.tacotron2.Tacotron2 - :members: -``` - -## TacotronConfig -```{eval-rst} -.. autoclass:: TTS.tts.configs.tacotron_config.TacotronConfig - :members: -``` - -## Tacotron2Config -```{eval-rst} -.. autoclass:: TTS.tts.configs.tacotron2_config.Tacotron2Config - :members: -``` - - diff --git a/TTS/docs/source/models/tortoise.md b/TTS/docs/source/models/tortoise.md deleted file mode 100644 index d602d59721642034b23a83ad36424347c4a0b32e..0000000000000000000000000000000000000000 --- a/TTS/docs/source/models/tortoise.md +++ /dev/null @@ -1,94 +0,0 @@ -# Tortoise 🐢 -Tortoise is a very expressive TTS system with impressive voice cloning capabilities. It is based on an GPT like autogressive acoustic model that converts input -text to discritized acouistic tokens, a diffusion model that converts these tokens to melspeectrogram frames and a Univnet vocoder to convert the spectrograms to -the final audio signal. The important downside is that Tortoise is very slow compared to the parallel TTS models like VITS. - -Big thanks to 👑[@manmay-nakhashi](https://github.com/manmay-nakhashi) who helped us implement Tortoise in 🐸TTS. - -Example use: - -```python -from TTS.tts.configs.tortoise_config import TortoiseConfig -from TTS.tts.models.tortoise import Tortoise - -config = TortoiseConfig() -model = Tortoise.init_from_config(config) -model.load_checkpoint(config, checkpoint_dir="paths/to/models_dir/", eval=True) - -# with random speaker -output_dict = model.synthesize(text, config, speaker_id="random", extra_voice_dirs=None, **kwargs) - -# cloning a speaker -output_dict = model.synthesize(text, config, speaker_id="speaker_n", extra_voice_dirs="path/to/speaker_n/", **kwargs) -``` - -Using 🐸TTS API: - -```python -from TTS.api import TTS -tts = TTS("tts_models/en/multi-dataset/tortoise-v2") - -# cloning `lj` voice from `TTS/tts/utils/assets/tortoise/voices/lj` -# with custom inference settings overriding defaults. -tts.tts_to_file(text="Hello, my name is Manmay , how are you?", - file_path="output.wav", - voice_dir="path/to/tortoise/voices/dir/", - speaker="lj", - num_autoregressive_samples=1, - diffusion_iterations=10) - -# Using presets with the same voice -tts.tts_to_file(text="Hello, my name is Manmay , how are you?", - file_path="output.wav", - voice_dir="path/to/tortoise/voices/dir/", - speaker="lj", - preset="ultra_fast") - -# Random voice generation -tts.tts_to_file(text="Hello, my name is Manmay , how are you?", - file_path="output.wav") -``` - -Using 🐸TTS Command line: - -```console -# cloning the `lj` voice -tts --model_name tts_models/en/multi-dataset/tortoise-v2 \ ---text "This is an example." \ ---out_path "output.wav" \ ---voice_dir path/to/tortoise/voices/dir/ \ ---speaker_idx "lj" \ ---progress_bar True - -# Random voice generation -tts --model_name tts_models/en/multi-dataset/tortoise-v2 \ ---text "This is an example." \ ---out_path "output.wav" \ ---progress_bar True -``` - - -## Important resources & papers -- Original Repo: https://github.com/neonbjb/tortoise-tts -- Faster implementation: https://github.com/152334H/tortoise-tts-fast -- Univnet: https://arxiv.org/abs/2106.07889 -- Latent Diffusion:https://arxiv.org/abs/2112.10752 -- DALL-E: https://arxiv.org/abs/2102.12092 - -## TortoiseConfig -```{eval-rst} -.. autoclass:: TTS.tts.configs.tortoise_config.TortoiseConfig - :members: -``` - -## TortoiseArgs -```{eval-rst} -.. autoclass:: TTS.tts.models.tortoise.TortoiseArgs - :members: -``` - -## Tortoise Model -```{eval-rst} -.. autoclass:: TTS.tts.models.tortoise.Tortoise - :members: -``` diff --git a/TTS/docs/source/models/vits.md b/TTS/docs/source/models/vits.md deleted file mode 100644 index 0c303f7a957f1a27be9028c1f596368919303ecd..0000000000000000000000000000000000000000 --- a/TTS/docs/source/models/vits.md +++ /dev/null @@ -1,38 +0,0 @@ -# VITS - -VITS (Conditional Variational Autoencoder with Adversarial Learning for End-to-End Text-to-Speech -) is an End-to-End (encoder -> vocoder together) TTS model that takes advantage of SOTA DL techniques like GANs, VAE, -Normalizing Flows. It does not require external alignment annotations and learns the text-to-audio alignment -using MAS, as explained in the paper. The model architecture is a combination of GlowTTS encoder and HiFiGAN vocoder. -It is a feed-forward model with x67.12 real-time factor on a GPU. - -🐸 YourTTS is a multi-speaker and multi-lingual TTS model that can perform voice conversion and zero-shot speaker adaptation. -It can also learn a new language or voice with a ~ 1 minute long audio clip. This is a big open gate for training -TTS models in low-resources languages. 🐸 YourTTS uses VITS as the backbone architecture coupled with a speaker encoder model. - -## Important resources & papers -- 🐸 YourTTS: https://arxiv.org/abs/2112.02418 -- VITS: https://arxiv.org/pdf/2106.06103.pdf -- Neural Spline Flows: https://arxiv.org/abs/1906.04032 -- Variational Autoencoder: https://arxiv.org/pdf/1312.6114.pdf -- Generative Adversarial Networks: https://arxiv.org/abs/1406.2661 -- HiFiGAN: https://arxiv.org/abs/2010.05646 -- Normalizing Flows: https://blog.evjang.com/2018/01/nf1.html - -## VitsConfig -```{eval-rst} -.. autoclass:: TTS.tts.configs.vits_config.VitsConfig - :members: -``` - -## VitsArgs -```{eval-rst} -.. autoclass:: TTS.tts.models.vits.VitsArgs - :members: -``` - -## Vits Model -```{eval-rst} -.. autoclass:: TTS.tts.models.vits.Vits - :members: -``` diff --git a/TTS/docs/source/training_a_model.md b/TTS/docs/source/training_a_model.md deleted file mode 100644 index 989a57042abf83e89206f47a1bbbcb3e258224d0..0000000000000000000000000000000000000000 --- a/TTS/docs/source/training_a_model.md +++ /dev/null @@ -1,146 +0,0 @@ -# Training a Model - -1. Decide the model you want to use. - - Each model has a different set of pros and cons that define the run-time efficiency and the voice quality. It is up to you to decide what model serves your needs. Other than referring to the papers, one easy way is to test the 🐸TTS - community models and see how fast and good each of the models. Or you can start a discussion on our communication channels. - -2. Understand the configuration, its fields and values. - - For instance, if you want to train a `Tacotron` model then see the `TacotronConfig` class and make sure you understand it. - -3. Check the recipes. - - Recipes are located under `TTS/recipes/`. They do not promise perfect models but they provide a good start point for - `Nervous Beginners`. - A recipe for `GlowTTS` using `LJSpeech` dataset looks like below. Let's be creative and call this `train_glowtts.py`. - - ```{literalinclude} ../../recipes/ljspeech/glow_tts/train_glowtts.py - ``` - - You need to change fields of the `BaseDatasetConfig` to match your dataset and then update `GlowTTSConfig` - fields as you need. - - 4. Run the training. - - ```bash - $ CUDA_VISIBLE_DEVICES="0" python train_glowtts.py - ``` - - Notice that we set the GPU for the training by `CUDA_VISIBLE_DEVICES` environment variable. - To see available GPUs on your system, you can use `nvidia-smi` command on the terminal. - - If you like to run a multi-gpu training using DDP back-end, - - ```bash - $ CUDA_VISIBLE_DEVICES="0, 1, 2" python -m trainer.distribute --script /train_glowtts.py - ``` - - The example above runs a multi-gpu training using GPUs `0, 1, 2`. - - Beginning of a training log looks like this: - - ```console - > Experiment folder: /your/output_path/-Juni-23-2021_02+52-78899209 - > Using CUDA: True - > Number of GPUs: 1 - > Setting up Audio Processor... - | > sample_rate:22050 - | > resample:False - | > num_mels:80 - | > min_level_db:-100 - | > frame_shift_ms:None - | > frame_length_ms:None - | > ref_level_db:20 - | > fft_size:1024 - | > power:1.5 - | > preemphasis:0.0 - | > griffin_lim_iters:60 - | > signal_norm:True - | > symmetric_norm:True - | > mel_fmin:0 - | > mel_fmax:None - | > spec_gain:20.0 - | > stft_pad_mode:reflect - | > max_norm:4.0 - | > clip_norm:True - | > do_trim_silence:True - | > trim_db:45 - | > do_sound_norm:False - | > stats_path:None - | > base:10 - | > hop_length:256 - | > win_length:1024 - | > Found 13100 files in /your/dataset/path/ljspeech/LJSpeech-1.1 - > Using model: glow_tts - - > Model has 28356129 parameters - - > EPOCH: 0/1000 - - > DataLoader initialization - | > Use phonemes: False - | > Number of instances : 12969 - | > Max length sequence: 187 - | > Min length sequence: 5 - | > Avg length sequence: 98.3403500655409 - | > Num. instances discarded by max-min (max=500, min=3) seq limits: 0 - | > Batch group size: 0. - - > TRAINING (2021-06-23 14:52:54) - - --> STEP: 0/405 -- GLOBAL_STEP: 0 - | > loss: 2.34670 - | > log_mle: 1.61872 - | > loss_dur: 0.72798 - | > align_error: 0.52744 - | > current_lr: 2.5e-07 - | > grad_norm: 5.036039352416992 - | > step_time: 5.8815 - | > loader_time: 0.0065 - ... - ``` - -5. Run the Tensorboard. - - ```bash - $ tensorboard --logdir= - ``` - -6. Monitor the training progress. - - On the terminal and Tensorboard, you can monitor the progress of your model. Also Tensorboard provides certain figures and sample outputs. - - Note that different models have different metrics, visuals and outputs. - - You should also check the [FAQ page](https://github.com/coqui-ai/TTS/wiki/FAQ) for common problems and solutions - that occur in a training. - -7. Use your best model for inference. - - Use `tts` or `tts-server` commands for testing your models. - - ```bash - $ tts --text "Text for TTS" \ - --model_path path/to/checkpoint_x.pth \ - --config_path path/to/config.json \ - --out_path folder/to/save/output.wav - ``` - -8. Return to the step 1 and reiterate for training a `vocoder` model. - - In the example above, we trained a `GlowTTS` model, but the same workflow applies to all the other 🐸TTS models. - - -# Multi-speaker Training - -Training a multi-speaker model is mostly the same as training a single-speaker model. -You need to specify a couple of configuration parameters, initiate a `SpeakerManager` instance and pass it to the model. - -The configuration parameters define whether you want to train the model with a speaker-embedding layer or pre-computed -d-vectors. For using d-vectors, you first need to compute the d-vectors using the `SpeakerEncoder`. - -The same Glow-TTS model above can be trained on a multi-speaker VCTK dataset with the script below. - -```{literalinclude} ../../recipes/vctk/glow_tts/train_glow_tts.py -``` diff --git a/TTS/docs/source/tts_datasets.md b/TTS/docs/source/tts_datasets.md deleted file mode 100644 index 11da1b7688d07dadfdb3dfab33deb4bcdf3f861a..0000000000000000000000000000000000000000 --- a/TTS/docs/source/tts_datasets.md +++ /dev/null @@ -1,17 +0,0 @@ -# TTS Datasets - -Some of the known public datasets that we successfully applied 🐸TTS: - -- [English - LJ Speech](https://keithito.com/LJ-Speech-Dataset/) -- [English - Nancy](http://www.cstr.ed.ac.uk/projects/blizzard/2011/lessac_blizzard2011/) -- [English - TWEB](https://www.kaggle.com/bryanpark/the-world-english-bible-speech-dataset) -- [English - LibriTTS](https://openslr.org/60/) -- [English - VCTK](https://datashare.ed.ac.uk/handle/10283/2950) -- [Multilingual - M-AI-Labs](http://www.caito.de/2019/01/the-m-ailabs-speech-dataset/) -- [Spanish](https://drive.google.com/file/d/1Sm_zyBo67XHkiFhcRSQ4YaHPYM0slO_e/view?usp=sharing) - thx! @carlfm01 -- [German - Thorsten OGVD](https://github.com/thorstenMueller/deep-learning-german-tts) -- [Japanese - Kokoro](https://www.kaggle.com/kaiida/kokoro-speech-dataset-v11-small/version/1) -- [Chinese](https://www.data-baker.com/data/index/source/) -- [Ukrainian - LADA](https://github.com/egorsmkv/ukrainian-tts-datasets/tree/main/lada) - -Let us know if you use 🐸TTS on a different dataset. diff --git a/TTS/docs/source/tutorial_for_nervous_beginners.md b/TTS/docs/source/tutorial_for_nervous_beginners.md deleted file mode 100644 index acde3fc4c2a8bd3ce4bb05c9c71b2c52044f7000..0000000000000000000000000000000000000000 --- a/TTS/docs/source/tutorial_for_nervous_beginners.md +++ /dev/null @@ -1,122 +0,0 @@ -# Tutorial For Nervous Beginners - -## Installation - -User friendly installation. Recommended only for synthesizing voice. - -```bash -$ pip install TTS -``` - -Developer friendly installation. - -```bash -$ git clone https://github.com/coqui-ai/TTS -$ cd TTS -$ pip install -e . -``` - -## Training a `tts` Model - -A breakdown of a simple script that trains a GlowTTS model on the LJspeech dataset. See the comments for more details. - -### Pure Python Way - -0. Download your dataset. - - In this example, we download and use the LJSpeech dataset. Set the download directory based on your preferences. - - ```bash - $ python -c 'from TTS.utils.downloaders import download_ljspeech; download_ljspeech("../recipes/ljspeech/");' - ``` - -1. Define `train.py`. - - ```{literalinclude} ../../recipes/ljspeech/glow_tts/train_glowtts.py - ``` - -2. Run the script. - - ```bash - CUDA_VISIBLE_DEVICES=0 python train.py - ``` - - - Continue a previous run. - - ```bash - CUDA_VISIBLE_DEVICES=0 python train.py --continue_path path/to/previous/run/folder/ - ``` - - - Fine-tune a model. - - ```bash - CUDA_VISIBLE_DEVICES=0 python train.py --restore_path path/to/model/checkpoint.pth - ``` - - - Run multi-gpu training. - - ```bash - CUDA_VISIBLE_DEVICES=0,1,2 python -m trainer.distribute --script train.py - ``` - -### CLI Way - -We still support running training from CLI like in the old days. The same training run can also be started as follows. - -1. Define your `config.json` - - ```json - { - "run_name": "my_run", - "model": "glow_tts", - "batch_size": 32, - "eval_batch_size": 16, - "num_loader_workers": 4, - "num_eval_loader_workers": 4, - "run_eval": true, - "test_delay_epochs": -1, - "epochs": 1000, - "text_cleaner": "english_cleaners", - "use_phonemes": false, - "phoneme_language": "en-us", - "phoneme_cache_path": "phoneme_cache", - "print_step": 25, - "print_eval": true, - "mixed_precision": false, - "output_path": "recipes/ljspeech/glow_tts/", - "datasets":[{"formatter": "ljspeech", "meta_file_train":"metadata.csv", "path": "recipes/ljspeech/LJSpeech-1.1/"}] - } - ``` - -2. Start training. - ```bash - $ CUDA_VISIBLE_DEVICES="0" python TTS/bin/train_tts.py --config_path config.json - ``` - -## Training a `vocoder` Model - -```{literalinclude} ../../recipes/ljspeech/hifigan/train_hifigan.py -``` - -❗️ Note that you can also use ```train_vocoder.py``` as the ```tts``` models above. - -## Synthesizing Speech - -You can run `tts` and synthesize speech directly on the terminal. - -```bash -$ tts -h # see the help -$ tts --list_models # list the available models. -``` - -![cli.gif](https://github.com/coqui-ai/TTS/raw/main/images/tts_cli.gif) - - -You can call `tts-server` to start a local demo server that you can open it on -your favorite web browser and 🗣️. - -```bash -$ tts-server -h # see the help -$ tts-server --list_models # list the available models. -``` -![server.gif](https://github.com/coqui-ai/TTS/raw/main/images/demo_server.gif) diff --git a/TTS/docs/source/what_makes_a_good_dataset.md b/TTS/docs/source/what_makes_a_good_dataset.md deleted file mode 100644 index 18c87453f7b7704315222612f23977662451a287..0000000000000000000000000000000000000000 --- a/TTS/docs/source/what_makes_a_good_dataset.md +++ /dev/null @@ -1,20 +0,0 @@ -(what_makes_a_good_dataset)= -# What makes a good TTS dataset - -## What Makes a Good Dataset -* **Gaussian like distribution on clip and text lengths**. So plot the distribution of clip lengths and check if it covers enough short and long voice clips. -* **Mistake free**. Remove any wrong or broken files. Check annotations, compare transcript and audio length. -* **Noise free**. Background noise might lead your model to struggle, especially for a good alignment. Even if it learns the alignment, the final result is likely to be suboptimial. -* **Compatible tone and pitch among voice clips**. For instance, if you are using audiobook recordings for your project, it might have impersonations for different characters in the book. These differences between samples downgrade the model performance. -* **Good phoneme coverage**. Make sure that your dataset covers a good portion of the phonemes, di-phonemes, and in some languages tri-phonemes. -* **Naturalness of recordings**. For your model WISIAIL (What it sees is all it learns). Therefore, your dataset should accommodate all the attributes you want to hear from your model. - -## Preprocessing Dataset -If you like to use a bespoken dataset, you might like to perform a couple of quality checks before training. 🐸TTS provides a couple of notebooks (CheckSpectrograms, AnalyzeDataset) to expedite this part for you. - -* **AnalyzeDataset** is for checking dataset distribution in terms of the clip and transcript lengths. It is good to find outlier instances (too long, short text but long voice clip, etc.)and remove them before training. Keep in mind that we like to have a good balance between long and short clips to prevent any bias in training. If you have only short clips (1-3 secs), then your model might suffer for long sentences and if your instances are long, then it might not learn the alignment or might take too long to train the model. - -* **CheckSpectrograms** is to measure the noise level of the clips and find good audio processing parameters. The noise level might be observed by checking spectrograms. If spectrograms look cluttered, especially in silent parts, this dataset might not be a good candidate for a TTS project. If your voice clips are too noisy in the background, it makes things harder for your model to learn the alignment, and the final result might be different than the voice you are given. -If the spectrograms look good, then the next step is to find a good set of audio processing parameters, defined in ```config.json```. In the notebook, you can compare different sets of parameters and see the resynthesis results in relation to the given ground-truth. Find the best parameters that give the best possible synthesis performance. - -Another practical detail is the quantization level of the clips. If your dataset has a very high bit-rate, that might cause slow data-load time and consequently slow training. It is better to reduce the sample-rate of your dataset to around 16000-22050. \ No newline at end of file diff --git a/TTS/encoder/README.md b/TTS/encoder/README.md deleted file mode 100644 index b38b20052b707b0358068bc0ce58bc300a149def..0000000000000000000000000000000000000000 --- a/TTS/encoder/README.md +++ /dev/null @@ -1,18 +0,0 @@ -### Speaker Encoder - -This is an implementation of https://arxiv.org/abs/1710.10467. This model can be used for voice and speaker embedding. - -With the code here you can generate d-vectors for both multi-speaker and single-speaker TTS datasets, then visualise and explore them along with the associated audio files in an interactive chart. - -Below is an example showing embedding results of various speakers. You can generate the same plot with the provided notebook as demonstrated in [this video](https://youtu.be/KW3oO7JVa7Q). - -![](umap.png) - -Download a pretrained model from [Released Models](https://github.com/mozilla/TTS/wiki/Released-Models) page. - -To run the code, you need to follow the same flow as in TTS. - -- Define 'config.json' for your needs. Note that, audio parameters should match your TTS model. -- Example training call ```python speaker_encoder/train.py --config_path speaker_encoder/config.json --data_path ~/Data/Libri-TTS/train-clean-360``` -- Generate embedding vectors ```python speaker_encoder/compute_embeddings.py --use_cuda true /model/path/best_model.pth model/config/path/config.json dataset/path/ output_path``` . This code parses all .wav files at the given dataset path and generates the same folder structure under the output path with the generated embedding files. -- Watch training on Tensorboard as in TTS diff --git a/TTS/encoder/__init__.py b/TTS/encoder/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/encoder/configs/base_encoder_config.py b/TTS/encoder/configs/base_encoder_config.py deleted file mode 100644 index ebbaa0457bb55aef70d54dd36fd9b2b7f7c702bb..0000000000000000000000000000000000000000 --- a/TTS/encoder/configs/base_encoder_config.py +++ /dev/null @@ -1,61 +0,0 @@ -from dataclasses import asdict, dataclass, field -from typing import Dict, List - -from coqpit import MISSING - -from TTS.config.shared_configs import BaseAudioConfig, BaseDatasetConfig, BaseTrainingConfig - - -@dataclass -class BaseEncoderConfig(BaseTrainingConfig): - """Defines parameters for a Generic Encoder model.""" - - model: str = None - audio: BaseAudioConfig = field(default_factory=BaseAudioConfig) - datasets: List[BaseDatasetConfig] = field(default_factory=lambda: [BaseDatasetConfig()]) - # model params - model_params: Dict = field( - default_factory=lambda: { - "model_name": "lstm", - "input_dim": 80, - "proj_dim": 256, - "lstm_dim": 768, - "num_lstm_layers": 3, - "use_lstm_with_projection": True, - } - ) - - audio_augmentation: Dict = field(default_factory=lambda: {}) - - # training params - epochs: int = 10000 - loss: str = "angleproto" - grad_clip: float = 3.0 - lr: float = 0.0001 - optimizer: str = "radam" - optimizer_params: Dict = field(default_factory=lambda: {"betas": [0.9, 0.999], "weight_decay": 0}) - lr_decay: bool = False - warmup_steps: int = 4000 - - # logging params - tb_model_param_stats: bool = False - steps_plot_stats: int = 10 - save_step: int = 1000 - print_step: int = 20 - run_eval: bool = False - - # data loader - num_classes_in_batch: int = MISSING - num_utter_per_class: int = MISSING - eval_num_classes_in_batch: int = None - eval_num_utter_per_class: int = None - - num_loader_workers: int = MISSING - voice_len: float = 1.6 - - def check_values(self): - super().check_values() - c = asdict(self) - assert ( - c["model_params"]["input_dim"] == self.audio.num_mels - ), " [!] model input dimendion must be equal to melspectrogram dimension." diff --git a/TTS/encoder/configs/emotion_encoder_config.py b/TTS/encoder/configs/emotion_encoder_config.py deleted file mode 100644 index 5eda2671be980abce4a0506a075387b601a1596c..0000000000000000000000000000000000000000 --- a/TTS/encoder/configs/emotion_encoder_config.py +++ /dev/null @@ -1,12 +0,0 @@ -from dataclasses import asdict, dataclass - -from TTS.encoder.configs.base_encoder_config import BaseEncoderConfig - - -@dataclass -class EmotionEncoderConfig(BaseEncoderConfig): - """Defines parameters for Emotion Encoder model.""" - - model: str = "emotion_encoder" - map_classid_to_classname: dict = None - class_name_key: str = "emotion_name" diff --git a/TTS/encoder/configs/speaker_encoder_config.py b/TTS/encoder/configs/speaker_encoder_config.py deleted file mode 100644 index 6dceb00277ba68efe128936ff7f9456338f9753f..0000000000000000000000000000000000000000 --- a/TTS/encoder/configs/speaker_encoder_config.py +++ /dev/null @@ -1,11 +0,0 @@ -from dataclasses import asdict, dataclass - -from TTS.encoder.configs.base_encoder_config import BaseEncoderConfig - - -@dataclass -class SpeakerEncoderConfig(BaseEncoderConfig): - """Defines parameters for Speaker Encoder model.""" - - model: str = "speaker_encoder" - class_name_key: str = "speaker_name" diff --git a/TTS/encoder/dataset.py b/TTS/encoder/dataset.py deleted file mode 100644 index 582b1fe9ca35cb9afbc20b8f72b6173282201272..0000000000000000000000000000000000000000 --- a/TTS/encoder/dataset.py +++ /dev/null @@ -1,147 +0,0 @@ -import random - -import torch -from torch.utils.data import Dataset - -from TTS.encoder.utils.generic_utils import AugmentWAV - - -class EncoderDataset(Dataset): - def __init__( - self, - config, - ap, - meta_data, - voice_len=1.6, - num_classes_in_batch=64, - num_utter_per_class=10, - verbose=False, - augmentation_config=None, - use_torch_spec=None, - ): - """ - Args: - ap (TTS.tts.utils.AudioProcessor): audio processor object. - meta_data (list): list of dataset instances. - seq_len (int): voice segment length in seconds. - verbose (bool): print diagnostic information. - """ - super().__init__() - self.config = config - self.items = meta_data - self.sample_rate = ap.sample_rate - self.seq_len = int(voice_len * self.sample_rate) - self.num_utter_per_class = num_utter_per_class - self.ap = ap - self.verbose = verbose - self.use_torch_spec = use_torch_spec - self.classes, self.items = self.__parse_items() - - self.classname_to_classid = {key: i for i, key in enumerate(self.classes)} - - # Data Augmentation - self.augmentator = None - self.gaussian_augmentation_config = None - if augmentation_config: - self.data_augmentation_p = augmentation_config["p"] - if self.data_augmentation_p and ("additive" in augmentation_config or "rir" in augmentation_config): - self.augmentator = AugmentWAV(ap, augmentation_config) - - if "gaussian" in augmentation_config.keys(): - self.gaussian_augmentation_config = augmentation_config["gaussian"] - - if self.verbose: - print("\n > DataLoader initialization") - print(f" | > Classes per Batch: {num_classes_in_batch}") - print(f" | > Number of instances : {len(self.items)}") - print(f" | > Sequence length: {self.seq_len}") - print(f" | > Num Classes: {len(self.classes)}") - print(f" | > Classes: {self.classes}") - - def load_wav(self, filename): - audio = self.ap.load_wav(filename, sr=self.ap.sample_rate) - return audio - - def __parse_items(self): - class_to_utters = {} - for item in self.items: - path_ = item["audio_file"] - class_name = item[self.config.class_name_key] - if class_name in class_to_utters.keys(): - class_to_utters[class_name].append(path_) - else: - class_to_utters[class_name] = [ - path_, - ] - - # skip classes with number of samples >= self.num_utter_per_class - class_to_utters = {k: v for (k, v) in class_to_utters.items() if len(v) >= self.num_utter_per_class} - - classes = list(class_to_utters.keys()) - classes.sort() - - new_items = [] - for item in self.items: - path_ = item["audio_file"] - class_name = item["emotion_name"] if self.config.model == "emotion_encoder" else item["speaker_name"] - # ignore filtered classes - if class_name not in classes: - continue - # ignore small audios - if self.load_wav(path_).shape[0] - self.seq_len <= 0: - continue - - new_items.append({"wav_file_path": path_, "class_name": class_name}) - - return classes, new_items - - def __len__(self): - return len(self.items) - - def get_num_classes(self): - return len(self.classes) - - def get_class_list(self): - return self.classes - - def set_classes(self, classes): - self.classes = classes - self.classname_to_classid = {key: i for i, key in enumerate(self.classes)} - - def get_map_classid_to_classname(self): - return dict((c_id, c_n) for c_n, c_id in self.classname_to_classid.items()) - - def __getitem__(self, idx): - return self.items[idx] - - def collate_fn(self, batch): - # get the batch class_ids - labels = [] - feats = [] - for item in batch: - utter_path = item["wav_file_path"] - class_name = item["class_name"] - - # get classid - class_id = self.classname_to_classid[class_name] - # load wav file - wav = self.load_wav(utter_path) - offset = random.randint(0, wav.shape[0] - self.seq_len) - wav = wav[offset : offset + self.seq_len] - - if self.augmentator is not None and self.data_augmentation_p: - if random.random() < self.data_augmentation_p: - wav = self.augmentator.apply_one(wav) - - if not self.use_torch_spec: - mel = self.ap.melspectrogram(wav) - feats.append(torch.FloatTensor(mel)) - else: - feats.append(torch.FloatTensor(wav)) - - labels.append(class_id) - - feats = torch.stack(feats) - labels = torch.LongTensor(labels) - - return feats, labels diff --git a/TTS/encoder/losses.py b/TTS/encoder/losses.py deleted file mode 100644 index 5b5aa0fc48fe00aeedeff28ba48ed2af498ce582..0000000000000000000000000000000000000000 --- a/TTS/encoder/losses.py +++ /dev/null @@ -1,226 +0,0 @@ -import torch -import torch.nn.functional as F -from torch import nn - - -# adapted from https://github.com/cvqluu/GE2E-Loss -class GE2ELoss(nn.Module): - def __init__(self, init_w=10.0, init_b=-5.0, loss_method="softmax"): - """ - Implementation of the Generalized End-to-End loss defined in https://arxiv.org/abs/1710.10467 [1] - Accepts an input of size (N, M, D) - where N is the number of speakers in the batch, - M is the number of utterances per speaker, - and D is the dimensionality of the embedding vector (e.g. d-vector) - Args: - - init_w (float): defines the initial value of w in Equation (5) of [1] - - init_b (float): definies the initial value of b in Equation (5) of [1] - """ - super().__init__() - # pylint: disable=E1102 - self.w = nn.Parameter(torch.tensor(init_w)) - # pylint: disable=E1102 - self.b = nn.Parameter(torch.tensor(init_b)) - self.loss_method = loss_method - - print(" > Initialized Generalized End-to-End loss") - - assert self.loss_method in ["softmax", "contrast"] - - if self.loss_method == "softmax": - self.embed_loss = self.embed_loss_softmax - if self.loss_method == "contrast": - self.embed_loss = self.embed_loss_contrast - - # pylint: disable=R0201 - def calc_new_centroids(self, dvecs, centroids, spkr, utt): - """ - Calculates the new centroids excluding the reference utterance - """ - excl = torch.cat((dvecs[spkr, :utt], dvecs[spkr, utt + 1 :])) - excl = torch.mean(excl, 0) - new_centroids = [] - for i, centroid in enumerate(centroids): - if i == spkr: - new_centroids.append(excl) - else: - new_centroids.append(centroid) - return torch.stack(new_centroids) - - def calc_cosine_sim(self, dvecs, centroids): - """ - Make the cosine similarity matrix with dims (N,M,N) - """ - cos_sim_matrix = [] - for spkr_idx, speaker in enumerate(dvecs): - cs_row = [] - for utt_idx, utterance in enumerate(speaker): - new_centroids = self.calc_new_centroids(dvecs, centroids, spkr_idx, utt_idx) - # vector based cosine similarity for speed - cs_row.append( - torch.clamp( - torch.mm( - utterance.unsqueeze(1).transpose(0, 1), - new_centroids.transpose(0, 1), - ) - / (torch.norm(utterance) * torch.norm(new_centroids, dim=1)), - 1e-6, - ) - ) - cs_row = torch.cat(cs_row, dim=0) - cos_sim_matrix.append(cs_row) - return torch.stack(cos_sim_matrix) - - # pylint: disable=R0201 - def embed_loss_softmax(self, dvecs, cos_sim_matrix): - """ - Calculates the loss on each embedding $L(e_{ji})$ by taking softmax - """ - N, M, _ = dvecs.shape - L = [] - for j in range(N): - L_row = [] - for i in range(M): - L_row.append(-F.log_softmax(cos_sim_matrix[j, i], 0)[j]) - L_row = torch.stack(L_row) - L.append(L_row) - return torch.stack(L) - - # pylint: disable=R0201 - def embed_loss_contrast(self, dvecs, cos_sim_matrix): - """ - Calculates the loss on each embedding $L(e_{ji})$ by contrast loss with closest centroid - """ - N, M, _ = dvecs.shape - L = [] - for j in range(N): - L_row = [] - for i in range(M): - centroids_sigmoids = torch.sigmoid(cos_sim_matrix[j, i]) - excl_centroids_sigmoids = torch.cat((centroids_sigmoids[:j], centroids_sigmoids[j + 1 :])) - L_row.append(1.0 - torch.sigmoid(cos_sim_matrix[j, i, j]) + torch.max(excl_centroids_sigmoids)) - L_row = torch.stack(L_row) - L.append(L_row) - return torch.stack(L) - - def forward(self, x, _label=None): - """ - Calculates the GE2E loss for an input of dimensions (num_speakers, num_utts_per_speaker, dvec_feats) - """ - - assert x.size()[1] >= 2 - - centroids = torch.mean(x, 1) - cos_sim_matrix = self.calc_cosine_sim(x, centroids) - torch.clamp(self.w, 1e-6) - cos_sim_matrix = self.w * cos_sim_matrix + self.b - L = self.embed_loss(x, cos_sim_matrix) - return L.mean() - - -# adapted from https://github.com/clovaai/voxceleb_trainer/blob/master/loss/angleproto.py -class AngleProtoLoss(nn.Module): - """ - Implementation of the Angular Prototypical loss defined in https://arxiv.org/abs/2003.11982 - Accepts an input of size (N, M, D) - where N is the number of speakers in the batch, - M is the number of utterances per speaker, - and D is the dimensionality of the embedding vector - Args: - - init_w (float): defines the initial value of w - - init_b (float): definies the initial value of b - """ - - def __init__(self, init_w=10.0, init_b=-5.0): - super().__init__() - # pylint: disable=E1102 - self.w = nn.Parameter(torch.tensor(init_w)) - # pylint: disable=E1102 - self.b = nn.Parameter(torch.tensor(init_b)) - self.criterion = torch.nn.CrossEntropyLoss() - - print(" > Initialized Angular Prototypical loss") - - def forward(self, x, _label=None): - """ - Calculates the AngleProto loss for an input of dimensions (num_speakers, num_utts_per_speaker, dvec_feats) - """ - - assert x.size()[1] >= 2 - - out_anchor = torch.mean(x[:, 1:, :], 1) - out_positive = x[:, 0, :] - num_speakers = out_anchor.size()[0] - - cos_sim_matrix = F.cosine_similarity( - out_positive.unsqueeze(-1).expand(-1, -1, num_speakers), - out_anchor.unsqueeze(-1).expand(-1, -1, num_speakers).transpose(0, 2), - ) - torch.clamp(self.w, 1e-6) - cos_sim_matrix = cos_sim_matrix * self.w + self.b - label = torch.arange(num_speakers).to(cos_sim_matrix.device) - L = self.criterion(cos_sim_matrix, label) - return L - - -class SoftmaxLoss(nn.Module): - """ - Implementation of the Softmax loss as defined in https://arxiv.org/abs/2003.11982 - Args: - - embedding_dim (float): speaker embedding dim - - n_speakers (float): number of speakers - """ - - def __init__(self, embedding_dim, n_speakers): - super().__init__() - - self.criterion = torch.nn.CrossEntropyLoss() - self.fc = nn.Linear(embedding_dim, n_speakers) - - print("Initialised Softmax Loss") - - def forward(self, x, label=None): - # reshape for compatibility - x = x.reshape(-1, x.size()[-1]) - label = label.reshape(-1) - - x = self.fc(x) - L = self.criterion(x, label) - - return L - - def inference(self, embedding): - x = self.fc(embedding) - activations = torch.nn.functional.softmax(x, dim=1).squeeze(0) - class_id = torch.argmax(activations) - return class_id - - -class SoftmaxAngleProtoLoss(nn.Module): - """ - Implementation of the Softmax AnglePrototypical loss as defined in https://arxiv.org/abs/2009.14153 - Args: - - embedding_dim (float): speaker embedding dim - - n_speakers (float): number of speakers - - init_w (float): defines the initial value of w - - init_b (float): definies the initial value of b - """ - - def __init__(self, embedding_dim, n_speakers, init_w=10.0, init_b=-5.0): - super().__init__() - - self.softmax = SoftmaxLoss(embedding_dim, n_speakers) - self.angleproto = AngleProtoLoss(init_w, init_b) - - print("Initialised SoftmaxAnglePrototypical Loss") - - def forward(self, x, label=None): - """ - Calculates the SoftmaxAnglePrototypical loss for an input of dimensions (num_speakers, num_utts_per_speaker, dvec_feats) - """ - - Lp = self.angleproto(x) - - Ls = self.softmax(x, label) - - return Ls + Lp diff --git a/TTS/encoder/models/base_encoder.py b/TTS/encoder/models/base_encoder.py deleted file mode 100644 index 957ea3c4ca719c2a054c93382787909e418288b2..0000000000000000000000000000000000000000 --- a/TTS/encoder/models/base_encoder.py +++ /dev/null @@ -1,161 +0,0 @@ -import numpy as np -import torch -import torchaudio -from coqpit import Coqpit -from torch import nn - -from TTS.encoder.losses import AngleProtoLoss, GE2ELoss, SoftmaxAngleProtoLoss -from TTS.utils.generic_utils import set_init_dict -from TTS.utils.io import load_fsspec - - -class PreEmphasis(nn.Module): - def __init__(self, coefficient=0.97): - super().__init__() - self.coefficient = coefficient - self.register_buffer("filter", torch.FloatTensor([-self.coefficient, 1.0]).unsqueeze(0).unsqueeze(0)) - - def forward(self, x): - assert len(x.size()) == 2 - - x = torch.nn.functional.pad(x.unsqueeze(1), (1, 0), "reflect") - return torch.nn.functional.conv1d(x, self.filter).squeeze(1) - - -class BaseEncoder(nn.Module): - """Base `encoder` class. Every new `encoder` model must inherit this. - - It defines common `encoder` specific functions. - """ - - # pylint: disable=W0102 - def __init__(self): - super(BaseEncoder, self).__init__() - - def get_torch_mel_spectrogram_class(self, audio_config): - return torch.nn.Sequential( - PreEmphasis(audio_config["preemphasis"]), - # TorchSTFT( - # n_fft=audio_config["fft_size"], - # hop_length=audio_config["hop_length"], - # win_length=audio_config["win_length"], - # sample_rate=audio_config["sample_rate"], - # window="hamming_window", - # mel_fmin=0.0, - # mel_fmax=None, - # use_htk=True, - # do_amp_to_db=False, - # n_mels=audio_config["num_mels"], - # power=2.0, - # use_mel=True, - # mel_norm=None, - # ) - torchaudio.transforms.MelSpectrogram( - sample_rate=audio_config["sample_rate"], - n_fft=audio_config["fft_size"], - win_length=audio_config["win_length"], - hop_length=audio_config["hop_length"], - window_fn=torch.hamming_window, - n_mels=audio_config["num_mels"], - ), - ) - - @torch.no_grad() - def inference(self, x, l2_norm=True): - return self.forward(x, l2_norm) - - @torch.no_grad() - def compute_embedding(self, x, num_frames=250, num_eval=10, return_mean=True, l2_norm=True): - """ - Generate embeddings for a batch of utterances - x: 1xTxD - """ - # map to the waveform size - if self.use_torch_spec: - num_frames = num_frames * self.audio_config["hop_length"] - - max_len = x.shape[1] - - if max_len < num_frames: - num_frames = max_len - - offsets = np.linspace(0, max_len - num_frames, num=num_eval) - - frames_batch = [] - for offset in offsets: - offset = int(offset) - end_offset = int(offset + num_frames) - frames = x[:, offset:end_offset] - frames_batch.append(frames) - - frames_batch = torch.cat(frames_batch, dim=0) - embeddings = self.inference(frames_batch, l2_norm=l2_norm) - - if return_mean: - embeddings = torch.mean(embeddings, dim=0, keepdim=True) - return embeddings - - def get_criterion(self, c: Coqpit, num_classes=None): - if c.loss == "ge2e": - criterion = GE2ELoss(loss_method="softmax") - elif c.loss == "angleproto": - criterion = AngleProtoLoss() - elif c.loss == "softmaxproto": - criterion = SoftmaxAngleProtoLoss(c.model_params["proj_dim"], num_classes) - else: - raise Exception("The %s not is a loss supported" % c.loss) - return criterion - - def load_checkpoint( - self, - config: Coqpit, - checkpoint_path: str, - eval: bool = False, - use_cuda: bool = False, - criterion=None, - cache=False, - ): - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - try: - self.load_state_dict(state["model"]) - print(" > Model fully restored. ") - except (KeyError, RuntimeError) as error: - # If eval raise the error - if eval: - raise error - - print(" > Partial model initialization.") - model_dict = self.state_dict() - model_dict = set_init_dict(model_dict, state["model"], c) - self.load_state_dict(model_dict) - del model_dict - - # load the criterion for restore_path - if criterion is not None and "criterion" in state: - try: - criterion.load_state_dict(state["criterion"]) - except (KeyError, RuntimeError) as error: - print(" > Criterion load ignored because of:", error) - - # instance and load the criterion for the encoder classifier in inference time - if ( - eval - and criterion is None - and "criterion" in state - and getattr(config, "map_classid_to_classname", None) is not None - ): - criterion = self.get_criterion(config, len(config.map_classid_to_classname)) - criterion.load_state_dict(state["criterion"]) - - if use_cuda: - self.cuda() - if criterion is not None: - criterion = criterion.cuda() - - if eval: - self.eval() - assert not self.training - - if not eval: - return criterion, state["step"] - return criterion diff --git a/TTS/encoder/models/lstm.py b/TTS/encoder/models/lstm.py deleted file mode 100644 index 51852b5b820d181824b0db1a205cd5d7bd4fb20d..0000000000000000000000000000000000000000 --- a/TTS/encoder/models/lstm.py +++ /dev/null @@ -1,99 +0,0 @@ -import torch -from torch import nn - -from TTS.encoder.models.base_encoder import BaseEncoder - - -class LSTMWithProjection(nn.Module): - def __init__(self, input_size, hidden_size, proj_size): - super().__init__() - self.input_size = input_size - self.hidden_size = hidden_size - self.proj_size = proj_size - self.lstm = nn.LSTM(input_size, hidden_size, batch_first=True) - self.linear = nn.Linear(hidden_size, proj_size, bias=False) - - def forward(self, x): - self.lstm.flatten_parameters() - o, (_, _) = self.lstm(x) - return self.linear(o) - - -class LSTMWithoutProjection(nn.Module): - def __init__(self, input_dim, lstm_dim, proj_dim, num_lstm_layers): - super().__init__() - self.lstm = nn.LSTM(input_size=input_dim, hidden_size=lstm_dim, num_layers=num_lstm_layers, batch_first=True) - self.linear = nn.Linear(lstm_dim, proj_dim, bias=True) - self.relu = nn.ReLU() - - def forward(self, x): - _, (hidden, _) = self.lstm(x) - return self.relu(self.linear(hidden[-1])) - - -class LSTMSpeakerEncoder(BaseEncoder): - def __init__( - self, - input_dim, - proj_dim=256, - lstm_dim=768, - num_lstm_layers=3, - use_lstm_with_projection=True, - use_torch_spec=False, - audio_config=None, - ): - super().__init__() - self.use_lstm_with_projection = use_lstm_with_projection - self.use_torch_spec = use_torch_spec - self.audio_config = audio_config - self.proj_dim = proj_dim - - layers = [] - # choise LSTM layer - if use_lstm_with_projection: - layers.append(LSTMWithProjection(input_dim, lstm_dim, proj_dim)) - for _ in range(num_lstm_layers - 1): - layers.append(LSTMWithProjection(proj_dim, lstm_dim, proj_dim)) - self.layers = nn.Sequential(*layers) - else: - self.layers = LSTMWithoutProjection(input_dim, lstm_dim, proj_dim, num_lstm_layers) - - self.instancenorm = nn.InstanceNorm1d(input_dim) - - if self.use_torch_spec: - self.torch_spec = self.get_torch_mel_spectrogram_class(audio_config) - else: - self.torch_spec = None - - self._init_layers() - - def _init_layers(self): - for name, param in self.layers.named_parameters(): - if "bias" in name: - nn.init.constant_(param, 0.0) - elif "weight" in name: - nn.init.xavier_normal_(param) - - def forward(self, x, l2_norm=True): - """Forward pass of the model. - - Args: - x (Tensor): Raw waveform signal or spectrogram frames. If input is a waveform, `torch_spec` must be `True` - to compute the spectrogram on-the-fly. - l2_norm (bool): Whether to L2-normalize the outputs. - - Shapes: - - x: :math:`(N, 1, T_{in})` or :math:`(N, D_{spec}, T_{in})` - """ - with torch.no_grad(): - with torch.cuda.amp.autocast(enabled=False): - if self.use_torch_spec: - x.squeeze_(1) - x = self.torch_spec(x) - x = self.instancenorm(x).transpose(1, 2) - d = self.layers(x) - if self.use_lstm_with_projection: - d = d[:, -1] - if l2_norm: - d = torch.nn.functional.normalize(d, p=2, dim=1) - return d diff --git a/TTS/encoder/models/resnet.py b/TTS/encoder/models/resnet.py deleted file mode 100644 index 5eafcd6005739fcdc454fb20def3e66791766a53..0000000000000000000000000000000000000000 --- a/TTS/encoder/models/resnet.py +++ /dev/null @@ -1,198 +0,0 @@ -import torch -from torch import nn - -# from TTS.utils.audio.torch_transforms import TorchSTFT -from TTS.encoder.models.base_encoder import BaseEncoder - - -class SELayer(nn.Module): - def __init__(self, channel, reduction=8): - super(SELayer, self).__init__() - self.avg_pool = nn.AdaptiveAvgPool2d(1) - self.fc = nn.Sequential( - nn.Linear(channel, channel // reduction), - nn.ReLU(inplace=True), - nn.Linear(channel // reduction, channel), - nn.Sigmoid(), - ) - - def forward(self, x): - b, c, _, _ = x.size() - y = self.avg_pool(x).view(b, c) - y = self.fc(y).view(b, c, 1, 1) - return x * y - - -class SEBasicBlock(nn.Module): - expansion = 1 - - def __init__(self, inplanes, planes, stride=1, downsample=None, reduction=8): - super(SEBasicBlock, self).__init__() - self.conv1 = nn.Conv2d(inplanes, planes, kernel_size=3, stride=stride, padding=1, bias=False) - self.bn1 = nn.BatchNorm2d(planes) - self.conv2 = nn.Conv2d(planes, planes, kernel_size=3, padding=1, bias=False) - self.bn2 = nn.BatchNorm2d(planes) - self.relu = nn.ReLU(inplace=True) - self.se = SELayer(planes, reduction) - self.downsample = downsample - self.stride = stride - - def forward(self, x): - residual = x - - out = self.conv1(x) - out = self.relu(out) - out = self.bn1(out) - - out = self.conv2(out) - out = self.bn2(out) - out = self.se(out) - - if self.downsample is not None: - residual = self.downsample(x) - - out += residual - out = self.relu(out) - return out - - -class ResNetSpeakerEncoder(BaseEncoder): - """Implementation of the model H/ASP without batch normalization in speaker embedding. This model was proposed in: https://arxiv.org/abs/2009.14153 - Adapted from: https://github.com/clovaai/voxceleb_trainer - """ - - # pylint: disable=W0102 - def __init__( - self, - input_dim=64, - proj_dim=512, - layers=[3, 4, 6, 3], - num_filters=[32, 64, 128, 256], - encoder_type="ASP", - log_input=False, - use_torch_spec=False, - audio_config=None, - ): - super(ResNetSpeakerEncoder, self).__init__() - - self.encoder_type = encoder_type - self.input_dim = input_dim - self.log_input = log_input - self.use_torch_spec = use_torch_spec - self.audio_config = audio_config - self.proj_dim = proj_dim - - self.conv1 = nn.Conv2d(1, num_filters[0], kernel_size=3, stride=1, padding=1) - self.relu = nn.ReLU(inplace=True) - self.bn1 = nn.BatchNorm2d(num_filters[0]) - - self.inplanes = num_filters[0] - self.layer1 = self.create_layer(SEBasicBlock, num_filters[0], layers[0]) - self.layer2 = self.create_layer(SEBasicBlock, num_filters[1], layers[1], stride=(2, 2)) - self.layer3 = self.create_layer(SEBasicBlock, num_filters[2], layers[2], stride=(2, 2)) - self.layer4 = self.create_layer(SEBasicBlock, num_filters[3], layers[3], stride=(2, 2)) - - self.instancenorm = nn.InstanceNorm1d(input_dim) - - if self.use_torch_spec: - self.torch_spec = self.get_torch_mel_spectrogram_class(audio_config) - else: - self.torch_spec = None - - outmap_size = int(self.input_dim / 8) - - self.attention = nn.Sequential( - nn.Conv1d(num_filters[3] * outmap_size, 128, kernel_size=1), - nn.ReLU(), - nn.BatchNorm1d(128), - nn.Conv1d(128, num_filters[3] * outmap_size, kernel_size=1), - nn.Softmax(dim=2), - ) - - if self.encoder_type == "SAP": - out_dim = num_filters[3] * outmap_size - elif self.encoder_type == "ASP": - out_dim = num_filters[3] * outmap_size * 2 - else: - raise ValueError("Undefined encoder") - - self.fc = nn.Linear(out_dim, proj_dim) - - self._init_layers() - - def _init_layers(self): - for m in self.modules(): - if isinstance(m, nn.Conv2d): - nn.init.kaiming_normal_(m.weight, mode="fan_out", nonlinearity="relu") - elif isinstance(m, nn.BatchNorm2d): - nn.init.constant_(m.weight, 1) - nn.init.constant_(m.bias, 0) - - def create_layer(self, block, planes, blocks, stride=1): - downsample = None - if stride != 1 or self.inplanes != planes * block.expansion: - downsample = nn.Sequential( - nn.Conv2d(self.inplanes, planes * block.expansion, kernel_size=1, stride=stride, bias=False), - nn.BatchNorm2d(planes * block.expansion), - ) - - layers = [] - layers.append(block(self.inplanes, planes, stride, downsample)) - self.inplanes = planes * block.expansion - for _ in range(1, blocks): - layers.append(block(self.inplanes, planes)) - - return nn.Sequential(*layers) - - # pylint: disable=R0201 - def new_parameter(self, *size): - out = nn.Parameter(torch.FloatTensor(*size)) - nn.init.xavier_normal_(out) - return out - - def forward(self, x, l2_norm=False): - """Forward pass of the model. - - Args: - x (Tensor): Raw waveform signal or spectrogram frames. If input is a waveform, `torch_spec` must be `True` - to compute the spectrogram on-the-fly. - l2_norm (bool): Whether to L2-normalize the outputs. - - Shapes: - - x: :math:`(N, 1, T_{in})` or :math:`(N, D_{spec}, T_{in})` - """ - x.squeeze_(1) - # if you torch spec compute it otherwise use the mel spec computed by the AP - if self.use_torch_spec: - x = self.torch_spec(x) - - if self.log_input: - x = (x + 1e-6).log() - x = self.instancenorm(x).unsqueeze(1) - - x = self.conv1(x) - x = self.relu(x) - x = self.bn1(x) - - x = self.layer1(x) - x = self.layer2(x) - x = self.layer3(x) - x = self.layer4(x) - - x = x.reshape(x.size()[0], -1, x.size()[-1]) - - w = self.attention(x) - - if self.encoder_type == "SAP": - x = torch.sum(x * w, dim=2) - elif self.encoder_type == "ASP": - mu = torch.sum(x * w, dim=2) - sg = torch.sqrt((torch.sum((x**2) * w, dim=2) - mu**2).clamp(min=1e-5)) - x = torch.cat((mu, sg), 1) - - x = x.view(x.size()[0], -1) - x = self.fc(x) - - if l2_norm: - x = torch.nn.functional.normalize(x, p=2, dim=1) - return x diff --git a/TTS/encoder/requirements.txt b/TTS/encoder/requirements.txt deleted file mode 100644 index a486cc45ddb44591bd03c9c0df294fbe98c13884..0000000000000000000000000000000000000000 --- a/TTS/encoder/requirements.txt +++ /dev/null @@ -1,2 +0,0 @@ -umap-learn -numpy>=1.17.0 diff --git a/TTS/encoder/utils/__init__.py b/TTS/encoder/utils/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/encoder/utils/generic_utils.py b/TTS/encoder/utils/generic_utils.py deleted file mode 100644 index 1da029611b5c9bd59b05d61189674832d50ed634..0000000000000000000000000000000000000000 --- a/TTS/encoder/utils/generic_utils.py +++ /dev/null @@ -1,182 +0,0 @@ -import datetime -import glob -import os -import random -import re - -import numpy as np -from scipy import signal - -from TTS.encoder.models.lstm import LSTMSpeakerEncoder -from TTS.encoder.models.resnet import ResNetSpeakerEncoder -from TTS.utils.io import save_fsspec - - -class AugmentWAV(object): - def __init__(self, ap, augmentation_config): - self.ap = ap - self.use_additive_noise = False - - if "additive" in augmentation_config.keys(): - self.additive_noise_config = augmentation_config["additive"] - additive_path = self.additive_noise_config["sounds_path"] - if additive_path: - self.use_additive_noise = True - # get noise types - self.additive_noise_types = [] - for key in self.additive_noise_config.keys(): - if isinstance(self.additive_noise_config[key], dict): - self.additive_noise_types.append(key) - - additive_files = glob.glob(os.path.join(additive_path, "**/*.wav"), recursive=True) - - self.noise_list = {} - - for wav_file in additive_files: - noise_dir = wav_file.replace(additive_path, "").split(os.sep)[0] - # ignore not listed directories - if noise_dir not in self.additive_noise_types: - continue - if not noise_dir in self.noise_list: - self.noise_list[noise_dir] = [] - self.noise_list[noise_dir].append(wav_file) - - print( - f" | > Using Additive Noise Augmentation: with {len(additive_files)} audios instances from {self.additive_noise_types}" - ) - - self.use_rir = False - - if "rir" in augmentation_config.keys(): - self.rir_config = augmentation_config["rir"] - if self.rir_config["rir_path"]: - self.rir_files = glob.glob(os.path.join(self.rir_config["rir_path"], "**/*.wav"), recursive=True) - self.use_rir = True - - print(f" | > Using RIR Noise Augmentation: with {len(self.rir_files)} audios instances") - - self.create_augmentation_global_list() - - def create_augmentation_global_list(self): - if self.use_additive_noise: - self.global_noise_list = self.additive_noise_types - else: - self.global_noise_list = [] - if self.use_rir: - self.global_noise_list.append("RIR_AUG") - - def additive_noise(self, noise_type, audio): - clean_db = 10 * np.log10(np.mean(audio**2) + 1e-4) - - noise_list = random.sample( - self.noise_list[noise_type], - random.randint( - self.additive_noise_config[noise_type]["min_num_noises"], - self.additive_noise_config[noise_type]["max_num_noises"], - ), - ) - - audio_len = audio.shape[0] - noises_wav = None - for noise in noise_list: - noiseaudio = self.ap.load_wav(noise, sr=self.ap.sample_rate)[:audio_len] - - if noiseaudio.shape[0] < audio_len: - continue - - noise_snr = random.uniform( - self.additive_noise_config[noise_type]["min_snr_in_db"], - self.additive_noise_config[noise_type]["max_num_noises"], - ) - noise_db = 10 * np.log10(np.mean(noiseaudio**2) + 1e-4) - noise_wav = np.sqrt(10 ** ((clean_db - noise_db - noise_snr) / 10)) * noiseaudio - - if noises_wav is None: - noises_wav = noise_wav - else: - noises_wav += noise_wav - - # if all possible files is less than audio, choose other files - if noises_wav is None: - return self.additive_noise(noise_type, audio) - - return audio + noises_wav - - def reverberate(self, audio): - audio_len = audio.shape[0] - - rir_file = random.choice(self.rir_files) - rir = self.ap.load_wav(rir_file, sr=self.ap.sample_rate) - rir = rir / np.sqrt(np.sum(rir**2)) - return signal.convolve(audio, rir, mode=self.rir_config["conv_mode"])[:audio_len] - - def apply_one(self, audio): - noise_type = random.choice(self.global_noise_list) - if noise_type == "RIR_AUG": - return self.reverberate(audio) - - return self.additive_noise(noise_type, audio) - - -def to_camel(text): - text = text.capitalize() - return re.sub(r"(?!^)_([a-zA-Z])", lambda m: m.group(1).upper(), text) - - -def setup_encoder_model(config: "Coqpit"): - if config.model_params["model_name"].lower() == "lstm": - model = LSTMSpeakerEncoder( - config.model_params["input_dim"], - config.model_params["proj_dim"], - config.model_params["lstm_dim"], - config.model_params["num_lstm_layers"], - use_torch_spec=config.model_params.get("use_torch_spec", False), - audio_config=config.audio, - ) - elif config.model_params["model_name"].lower() == "resnet": - model = ResNetSpeakerEncoder( - input_dim=config.model_params["input_dim"], - proj_dim=config.model_params["proj_dim"], - log_input=config.model_params.get("log_input", False), - use_torch_spec=config.model_params.get("use_torch_spec", False), - audio_config=config.audio, - ) - return model - - -def save_checkpoint(model, optimizer, criterion, model_loss, out_path, current_step, epoch): - checkpoint_path = "checkpoint_{}.pth".format(current_step) - checkpoint_path = os.path.join(out_path, checkpoint_path) - print(" | | > Checkpoint saving : {}".format(checkpoint_path)) - - new_state_dict = model.state_dict() - state = { - "model": new_state_dict, - "optimizer": optimizer.state_dict() if optimizer is not None else None, - "criterion": criterion.state_dict(), - "step": current_step, - "epoch": epoch, - "loss": model_loss, - "date": datetime.date.today().strftime("%B %d, %Y"), - } - save_fsspec(state, checkpoint_path) - - -def save_best_model(model, optimizer, criterion, model_loss, best_loss, out_path, current_step, epoch): - if model_loss < best_loss: - new_state_dict = model.state_dict() - state = { - "model": new_state_dict, - "optimizer": optimizer.state_dict(), - "criterion": criterion.state_dict(), - "step": current_step, - "epoch": epoch, - "loss": model_loss, - "date": datetime.date.today().strftime("%B %d, %Y"), - } - best_loss = model_loss - bestmodel_path = "best_model.pth" - bestmodel_path = os.path.join(out_path, bestmodel_path) - print("\n > BEST MODEL ({0:.5f}) : {1:}".format(model_loss, bestmodel_path)) - save_fsspec(state, bestmodel_path) - return best_loss diff --git a/TTS/encoder/utils/io.py b/TTS/encoder/utils/io.py deleted file mode 100644 index d1dad3e24d234cdcb9616fb14bc87919c7e20291..0000000000000000000000000000000000000000 --- a/TTS/encoder/utils/io.py +++ /dev/null @@ -1,38 +0,0 @@ -import datetime -import os - -from TTS.utils.io import save_fsspec - - -def save_checkpoint(model, optimizer, model_loss, out_path, current_step): - checkpoint_path = "checkpoint_{}.pth".format(current_step) - checkpoint_path = os.path.join(out_path, checkpoint_path) - print(" | | > Checkpoint saving : {}".format(checkpoint_path)) - - new_state_dict = model.state_dict() - state = { - "model": new_state_dict, - "optimizer": optimizer.state_dict() if optimizer is not None else None, - "step": current_step, - "loss": model_loss, - "date": datetime.date.today().strftime("%B %d, %Y"), - } - save_fsspec(state, checkpoint_path) - - -def save_best_model(model, optimizer, model_loss, best_loss, out_path, current_step): - if model_loss < best_loss: - new_state_dict = model.state_dict() - state = { - "model": new_state_dict, - "optimizer": optimizer.state_dict(), - "step": current_step, - "loss": model_loss, - "date": datetime.date.today().strftime("%B %d, %Y"), - } - best_loss = model_loss - bestmodel_path = "best_model.pth" - bestmodel_path = os.path.join(out_path, bestmodel_path) - print("\n > BEST MODEL ({0:.5f}) : {1:}".format(model_loss, bestmodel_path)) - save_fsspec(state, bestmodel_path) - return best_loss diff --git a/TTS/encoder/utils/prepare_voxceleb.py b/TTS/encoder/utils/prepare_voxceleb.py deleted file mode 100644 index b93baf9e60f0d5c35a4e86f6746e29f6097174b5..0000000000000000000000000000000000000000 --- a/TTS/encoder/utils/prepare_voxceleb.py +++ /dev/null @@ -1,219 +0,0 @@ -# coding=utf-8 -# Copyright (C) 2020 ATHENA AUTHORS; Yiping Peng; Ne Luo -# All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -# Only support eager mode and TF>=2.0.0 -# pylint: disable=no-member, invalid-name, relative-beyond-top-level -# pylint: disable=too-many-locals, too-many-statements, too-many-arguments, too-many-instance-attributes -""" voxceleb 1 & 2 """ - -import hashlib -import os -import subprocess -import sys -import zipfile - -import pandas -import soundfile as sf -from absl import logging - -SUBSETS = { - "vox1_dev_wav": [ - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox1_dev_wav_partaa", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox1_dev_wav_partab", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox1_dev_wav_partac", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox1_dev_wav_partad", - ], - "vox1_test_wav": ["https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox1_test_wav.zip"], - "vox2_dev_aac": [ - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partaa", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partab", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partac", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partad", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partae", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partaf", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partag", - "https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_dev_aac_partah", - ], - "vox2_test_aac": ["https://thor.robots.ox.ac.uk/~vgg/data/voxceleb/vox1a/vox2_test_aac.zip"], -} - -MD5SUM = { - "vox1_dev_wav": "ae63e55b951748cc486645f532ba230b", - "vox2_dev_aac": "bbc063c46078a602ca71605645c2a402", - "vox1_test_wav": "185fdc63c3c739954633d50379a3d102", - "vox2_test_aac": "0d2b3ea430a821c33263b5ea37ede312", -} - -USER = {"user": "", "password": ""} - -speaker_id_dict = {} - - -def download_and_extract(directory, subset, urls): - """Download and extract the given split of dataset. - - Args: - directory: the directory where to put the downloaded data. - subset: subset name of the corpus. - urls: the list of urls to download the data file. - """ - os.makedirs(directory, exist_ok=True) - - try: - for url in urls: - zip_filepath = os.path.join(directory, url.split("/")[-1]) - if os.path.exists(zip_filepath): - continue - logging.info("Downloading %s to %s" % (url, zip_filepath)) - subprocess.call( - "wget %s --user %s --password %s -O %s" % (url, USER["user"], USER["password"], zip_filepath), - shell=True, - ) - - statinfo = os.stat(zip_filepath) - logging.info("Successfully downloaded %s, size(bytes): %d" % (url, statinfo.st_size)) - - # concatenate all parts into zip files - if ".zip" not in zip_filepath: - zip_filepath = "_".join(zip_filepath.split("_")[:-1]) - subprocess.call("cat %s* > %s.zip" % (zip_filepath, zip_filepath), shell=True) - zip_filepath += ".zip" - extract_path = zip_filepath.strip(".zip") - - # check zip file md5sum - with open(zip_filepath, "rb") as f_zip: - md5 = hashlib.md5(f_zip.read()).hexdigest() - if md5 != MD5SUM[subset]: - raise ValueError("md5sum of %s mismatch" % zip_filepath) - - with zipfile.ZipFile(zip_filepath, "r") as zfile: - zfile.extractall(directory) - extract_path_ori = os.path.join(directory, zfile.infolist()[0].filename) - subprocess.call("mv %s %s" % (extract_path_ori, extract_path), shell=True) - finally: - # os.remove(zip_filepath) - pass - - -def exec_cmd(cmd): - """Run a command in a subprocess. - Args: - cmd: command line to be executed. - Return: - int, the return code. - """ - try: - retcode = subprocess.call(cmd, shell=True) - if retcode < 0: - logging.info(f"Child was terminated by signal {retcode}") - except OSError as e: - logging.info(f"Execution failed: {e}") - retcode = -999 - return retcode - - -def decode_aac_with_ffmpeg(aac_file, wav_file): - """Decode a given AAC file into WAV using ffmpeg. - Args: - aac_file: file path to input AAC file. - wav_file: file path to output WAV file. - Return: - bool, True if success. - """ - cmd = f"ffmpeg -i {aac_file} {wav_file}" - logging.info(f"Decoding aac file using command line: {cmd}") - ret = exec_cmd(cmd) - if ret != 0: - logging.error(f"Failed to decode aac file with retcode {ret}") - logging.error("Please check your ffmpeg installation.") - return False - return True - - -def convert_audio_and_make_label(input_dir, subset, output_dir, output_file): - """Optionally convert AAC to WAV and make speaker labels. - Args: - input_dir: the directory which holds the input dataset. - subset: the name of the specified subset. e.g. vox1_dev_wav - output_dir: the directory to place the newly generated csv files. - output_file: the name of the newly generated csv file. e.g. vox1_dev_wav.csv - """ - - logging.info("Preprocessing audio and label for subset %s" % subset) - source_dir = os.path.join(input_dir, subset) - - files = [] - # Convert all AAC file into WAV format. At the same time, generate the csv - for root, _, filenames in os.walk(source_dir): - for filename in filenames: - name, ext = os.path.splitext(filename) - if ext.lower() == ".wav": - _, ext2 = os.path.splitext(name) - if ext2: - continue - wav_file = os.path.join(root, filename) - elif ext.lower() == ".m4a": - # Convert AAC to WAV. - aac_file = os.path.join(root, filename) - wav_file = aac_file + ".wav" - if not os.path.exists(wav_file): - if not decode_aac_with_ffmpeg(aac_file, wav_file): - raise RuntimeError("Audio decoding failed.") - else: - continue - speaker_name = root.split(os.path.sep)[-2] - if speaker_name not in speaker_id_dict: - num = len(speaker_id_dict) - speaker_id_dict[speaker_name] = num - # wav_filesize = os.path.getsize(wav_file) - wav_length = len(sf.read(wav_file)[0]) - files.append((os.path.abspath(wav_file), wav_length, speaker_id_dict[speaker_name], speaker_name)) - - # Write to CSV file which contains four columns: - # "wav_filename", "wav_length_ms", "speaker_id", "speaker_name". - csv_file_path = os.path.join(output_dir, output_file) - df = pandas.DataFrame(data=files, columns=["wav_filename", "wav_length_ms", "speaker_id", "speaker_name"]) - df.to_csv(csv_file_path, index=False, sep="\t") - logging.info("Successfully generated csv file {}".format(csv_file_path)) - - -def processor(directory, subset, force_process): - """download and process""" - urls = SUBSETS - if subset not in urls: - raise ValueError(subset, "is not in voxceleb") - - subset_csv = os.path.join(directory, subset + ".csv") - if not force_process and os.path.exists(subset_csv): - return subset_csv - - logging.info("Downloading and process the voxceleb in %s", directory) - logging.info("Preparing subset %s", subset) - download_and_extract(directory, subset, urls[subset]) - convert_audio_and_make_label(directory, subset, directory, subset + ".csv") - logging.info("Finished downloading and processing") - return subset_csv - - -if __name__ == "__main__": - logging.set_verbosity(logging.INFO) - if len(sys.argv) != 4: - print("Usage: python prepare_data.py save_directory user password") - sys.exit() - - DIR, USER["user"], USER["password"] = sys.argv[1], sys.argv[2], sys.argv[3] - for SUBSET in SUBSETS: - processor(DIR, SUBSET, False) diff --git a/TTS/encoder/utils/training.py b/TTS/encoder/utils/training.py deleted file mode 100644 index 7c58a232e7a146bb24718700527ab80e62a1ab1a..0000000000000000000000000000000000000000 --- a/TTS/encoder/utils/training.py +++ /dev/null @@ -1,99 +0,0 @@ -import os -from dataclasses import dataclass, field - -from coqpit import Coqpit -from trainer import TrainerArgs, get_last_checkpoint -from trainer.logging import logger_factory -from trainer.logging.console_logger import ConsoleLogger - -from TTS.config import load_config, register_config -from TTS.tts.utils.text.characters import parse_symbols -from TTS.utils.generic_utils import get_experiment_folder_path, get_git_branch -from TTS.utils.io import copy_model_files - - -@dataclass -class TrainArgs(TrainerArgs): - config_path: str = field(default=None, metadata={"help": "Path to the config file."}) - - -def getarguments(): - train_config = TrainArgs() - parser = train_config.init_argparse(arg_prefix="") - return parser - - -def process_args(args, config=None): - """Process parsed comand line arguments and initialize the config if not provided. - Args: - args (argparse.Namespace or dict like): Parsed input arguments. - config (Coqpit): Model config. If none, it is generated from `args`. Defaults to None. - Returns: - c (TTS.utils.io.AttrDict): Config paramaters. - out_path (str): Path to save models and logging. - audio_path (str): Path to save generated test audios. - c_logger (TTS.utils.console_logger.ConsoleLogger): Class that does - logging to the console. - dashboard_logger (WandbLogger or TensorboardLogger): Class that does the dashboard Logging - TODO: - - Interactive config definition. - """ - if isinstance(args, tuple): - args, coqpit_overrides = args - if args.continue_path: - # continue a previous training from its output folder - experiment_path = args.continue_path - args.config_path = os.path.join(args.continue_path, "config.json") - args.restore_path, best_model = get_last_checkpoint(args.continue_path) - if not args.best_path: - args.best_path = best_model - # init config if not already defined - if config is None: - if args.config_path: - # init from a file - config = load_config(args.config_path) - else: - # init from console args - from TTS.config.shared_configs import BaseTrainingConfig # pylint: disable=import-outside-toplevel - - config_base = BaseTrainingConfig() - config_base.parse_known_args(coqpit_overrides) - config = register_config(config_base.model)() - # override values from command-line args - config.parse_known_args(coqpit_overrides, relaxed_parser=True) - experiment_path = args.continue_path - if not experiment_path: - experiment_path = get_experiment_folder_path(config.output_path, config.run_name) - audio_path = os.path.join(experiment_path, "test_audios") - config.output_log_path = experiment_path - # setup rank 0 process in distributed training - dashboard_logger = None - if args.rank == 0: - new_fields = {} - if args.restore_path: - new_fields["restore_path"] = args.restore_path - new_fields["github_branch"] = get_git_branch() - # if model characters are not set in the config file - # save the default set to the config file for future - # compatibility. - if config.has("characters") and config.characters is None: - used_characters = parse_symbols() - new_fields["characters"] = used_characters - copy_model_files(config, experiment_path, new_fields) - dashboard_logger = logger_factory(config, experiment_path) - c_logger = ConsoleLogger() - return config, experiment_path, audio_path, c_logger, dashboard_logger - - -def init_arguments(): - train_config = TrainArgs() - parser = train_config.init_argparse(arg_prefix="") - return parser - - -def init_training(config: Coqpit = None): - """Initialization of a training run.""" - parser = init_arguments() - args = parser.parse_known_args() - config, OUT_PATH, AUDIO_PATH, c_logger, dashboard_logger = process_args(args, config) - return args[0], config, OUT_PATH, AUDIO_PATH, c_logger, dashboard_logger diff --git a/TTS/encoder/utils/visual.py b/TTS/encoder/utils/visual.py deleted file mode 100644 index 6575b86ec22818fe1dc0c1e6336a7fd255855330..0000000000000000000000000000000000000000 --- a/TTS/encoder/utils/visual.py +++ /dev/null @@ -1,50 +0,0 @@ -import matplotlib -import matplotlib.pyplot as plt -import numpy as np -import umap - -matplotlib.use("Agg") - - -colormap = ( - np.array( - [ - [76, 255, 0], - [0, 127, 70], - [255, 0, 0], - [255, 217, 38], - [0, 135, 255], - [165, 0, 165], - [255, 167, 255], - [0, 255, 255], - [255, 96, 38], - [142, 76, 0], - [33, 0, 127], - [0, 0, 0], - [183, 183, 183], - ], - dtype=float, - ) - / 255 -) - - -def plot_embeddings(embeddings, num_classes_in_batch): - num_utter_per_class = embeddings.shape[0] // num_classes_in_batch - - # if necessary get just the first 10 classes - if num_classes_in_batch > 10: - num_classes_in_batch = 10 - embeddings = embeddings[: num_classes_in_batch * num_utter_per_class] - - model = umap.UMAP() - projection = model.fit_transform(embeddings) - ground_truth = np.repeat(np.arange(num_classes_in_batch), num_utter_per_class) - colors = [colormap[i] for i in ground_truth] - fig, ax = plt.subplots(figsize=(16, 10)) - _ = ax.scatter(projection[:, 0], projection[:, 1], c=colors) - plt.gca().set_aspect("equal", "datalim") - plt.title("UMAP projection") - plt.tight_layout() - plt.savefig("umap") - return fig diff --git a/TTS/hubconf.py b/TTS/hubconf.py deleted file mode 100644 index 0c9c5930fcbf98962d3086e7537aa3941b191083..0000000000000000000000000000000000000000 --- a/TTS/hubconf.py +++ /dev/null @@ -1,46 +0,0 @@ -dependencies = [ - 'torch', 'gdown', 'pysbd', 'gruut', 'anyascii', 'pypinyin', 'coqpit', 'mecab-python3', 'unidic-lite' -] -import torch - -from TTS.utils.manage import ModelManager -from TTS.utils.synthesizer import Synthesizer - - -def tts(model_name='tts_models/en/ljspeech/tacotron2-DCA', - vocoder_name=None, - use_cuda=False): - """TTS entry point for PyTorch Hub that provides a Synthesizer object to synthesize speech from a give text. - - Example: - >>> synthesizer = torch.hub.load('coqui-ai/TTS', 'tts', source='github') - >>> wavs = synthesizer.tts("This is a test! This is also a test!!") - wavs - is a list of values of the synthesized speech. - - Args: - model_name (str, optional): One of the model names from .model.json. Defaults to 'tts_models/en/ljspeech/tacotron2-DCA'. - vocoder_name (str, optional): One of the model names from .model.json. Defaults to 'vocoder_models/en/ljspeech/multiband-melgan'. - pretrained (bool, optional): [description]. Defaults to True. - - Returns: - TTS.utils.synthesizer.Synthesizer: Synthesizer object wrapping both vocoder and tts models. - """ - manager = ModelManager() - - model_path, config_path, model_item = manager.download_model(model_name) - vocoder_name = model_item[ - 'default_vocoder'] if vocoder_name is None else vocoder_name - vocoder_path, vocoder_config_path, _ = manager.download_model(vocoder_name) - - # create synthesizer - synt = Synthesizer(tts_checkpoint=model_path, - tts_config_path=config_path, - vocoder_checkpoint=vocoder_path, - vocoder_config=vocoder_config_path, - use_cuda=use_cuda) - return synt - - -if __name__ == '__main__': - synthesizer = torch.hub.load('coqui-ai/TTS:dev', 'tts', source='github') - synthesizer.tts("This is a test!") diff --git a/TTS/images/TTS-performance.png b/TTS/images/TTS-performance.png deleted file mode 100644 index 68eebaf7e6dd503333f2bb8b85e0bd4115c2011f..0000000000000000000000000000000000000000 Binary files a/TTS/images/TTS-performance.png and /dev/null differ diff --git a/TTS/images/coqui-log-green-TTS.png b/TTS/images/coqui-log-green-TTS.png deleted file mode 100644 index 6ad188b8c03a170097c0393c6769996f03cf9054..0000000000000000000000000000000000000000 Binary files a/TTS/images/coqui-log-green-TTS.png and /dev/null differ diff --git a/TTS/images/demo_server.gif b/TTS/images/demo_server.gif deleted file mode 100644 index 6ebc1860fa5b327b83c4174f765edf12acc8b134..0000000000000000000000000000000000000000 Binary files a/TTS/images/demo_server.gif and /dev/null differ diff --git a/TTS/images/example_model_output.png b/TTS/images/example_model_output.png deleted file mode 100644 index 8e83531c117a626c7db8ea23cf994299a6d93fec..0000000000000000000000000000000000000000 Binary files a/TTS/images/example_model_output.png and /dev/null differ diff --git a/TTS/images/model.png b/TTS/images/model.png deleted file mode 100644 index e2c55269efe82fa8ab7e4d17eb089518823efcbe..0000000000000000000000000000000000000000 Binary files a/TTS/images/model.png and /dev/null differ diff --git a/TTS/images/tts_cli.gif b/TTS/images/tts_cli.gif deleted file mode 100644 index f4c7897cda0f6d8659c0cbe957a7361e24b66b5e..0000000000000000000000000000000000000000 Binary files a/TTS/images/tts_cli.gif and /dev/null differ diff --git a/TTS/images/tts_performance.png b/TTS/images/tts_performance.png deleted file mode 100644 index bdff06731e6b60ffb4806943aba5dc89363f3ab3..0000000000000000000000000000000000000000 Binary files a/TTS/images/tts_performance.png and /dev/null differ diff --git a/TTS/model.py b/TTS/model.py deleted file mode 100644 index ae6be7b444695756c00c4faa8f2f6c787dfcf9d8..0000000000000000000000000000000000000000 --- a/TTS/model.py +++ /dev/null @@ -1,59 +0,0 @@ -from abc import abstractmethod -from typing import Dict - -import torch -from coqpit import Coqpit -from trainer import TrainerModel - -# pylint: skip-file - - -class BaseTrainerModel(TrainerModel): - """BaseTrainerModel model expanding TrainerModel with required functions by 🐸TTS. - - Every new 🐸TTS model must inherit it. - """ - - @staticmethod - @abstractmethod - def init_from_config(config: Coqpit): - """Init the model and all its attributes from the given config. - - Override this depending on your model. - """ - ... - - @abstractmethod - def inference(self, input: torch.Tensor, aux_input={}) -> Dict: - """Forward pass for inference. - - It must return a dictionary with the main model output and all the auxiliary outputs. The key ```model_outputs``` - is considered to be the main output and you can add any other auxiliary outputs as you want. - - We don't use `*kwargs` since it is problematic with the TorchScript API. - - Args: - input (torch.Tensor): [description] - aux_input (Dict): Auxiliary inputs like speaker embeddings, durations etc. - - Returns: - Dict: [description] - """ - outputs_dict = {"model_outputs": None} - ... - return outputs_dict - - @abstractmethod - def load_checkpoint( - self, config: Coqpit, checkpoint_path: str, eval: bool = False, strict: bool = True, cache=False - ) -> None: - """Load a model checkpoint gile and get ready for training or inference. - - Args: - config (Coqpit): Model configuration. - checkpoint_path (str): Path to the model checkpoint file. - eval (bool, optional): If true, init model for inference else for training. Defaults to False. - strict (bool, optional): Match all checkpoint keys to model's keys. Defaults to True. - cache (bool, optional): If True, cache the file locally for subsequent calls. It is cached under `get_user_data_dir()/tts_cache`. Defaults to False. - """ - ... diff --git a/TTS/notebooks/ExtractTTSpectrogram.ipynb b/TTS/notebooks/ExtractTTSpectrogram.ipynb deleted file mode 100644 index a257b6bf253c306701216057e6d8193c70663933..0000000000000000000000000000000000000000 --- a/TTS/notebooks/ExtractTTSpectrogram.ipynb +++ /dev/null @@ -1,372 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "This is a notebook to generate mel-spectrograms from a TTS model to be used in a Vocoder training." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "%load_ext autoreload\n", - "%autoreload 2\n", - "import os\n", - "import sys\n", - "import torch\n", - "import importlib\n", - "import numpy as np\n", - "from tqdm import tqdm as tqdm\n", - "from torch.utils.data import DataLoader\n", - "from TTS.tts.datasets.dataset import TTSDataset\n", - "from TTS.tts.layers.losses import L1LossMasked\n", - "from TTS.utils.audio import AudioProcessor\n", - "from TTS.config import load_config\n", - "from TTS.tts.utils.visual import plot_spectrogram\n", - "from TTS.tts.utils.helpers import sequence_mask\n", - "from TTS.tts.models import setup_model\n", - "from TTS.tts.utils.text.symbols import make_symbols, symbols, phonemes\n", - "\n", - "%matplotlib inline\n", - "\n", - "import os\n", - "os.environ['CUDA_VISIBLE_DEVICES']='2'" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "def set_filename(wav_path, out_path):\n", - " wav_file = os.path.basename(wav_path)\n", - " file_name = wav_file.split('.')[0]\n", - " os.makedirs(os.path.join(out_path, \"quant\"), exist_ok=True)\n", - " os.makedirs(os.path.join(out_path, \"mel\"), exist_ok=True)\n", - " os.makedirs(os.path.join(out_path, \"wav_gl\"), exist_ok=True)\n", - " wavq_path = os.path.join(out_path, \"quant\", file_name)\n", - " mel_path = os.path.join(out_path, \"mel\", file_name)\n", - " wav_path = os.path.join(out_path, \"wav_gl\", file_name)\n", - " return file_name, wavq_path, mel_path, wav_path" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "OUT_PATH = \"/home/ubuntu/TTS/recipes/ljspeech/LJSpeech-1.1/specs2/\"\n", - "DATA_PATH = \"/home/ubuntu/TTS/recipes/ljspeech/LJSpeech-1.1/\"\n", - "DATASET = \"ljspeech\"\n", - "METADATA_FILE = \"metadata.csv\"\n", - "CONFIG_PATH = \"/home/ubuntu/.local/share/tts/tts_models--en--ljspeech--tacotron2-DDC_ph/config.json\"\n", - "MODEL_FILE = \"/home/ubuntu/.local/share/tts/tts_models--en--ljspeech--tacotron2-DDC_ph/model_file.pth\"\n", - "BATCH_SIZE = 32\n", - "\n", - "QUANTIZED_WAV = False\n", - "QUANTIZE_BIT = None\n", - "DRY_RUN = False # if False, does not generate output files, only computes loss and visuals.\n", - "\n", - "use_cuda = torch.cuda.is_available()\n", - "print(\" > CUDA enabled: \", use_cuda)\n", - "\n", - "C = load_config(CONFIG_PATH)\n", - "C.audio['do_trim_silence'] = False # IMPORTANT!!!!!!!!!!!!!!! disable to align mel specs with the wav files\n", - "ap = AudioProcessor(bits=QUANTIZE_BIT, **C.audio)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print(C['r'])\n", - "# if the vocabulary was passed, replace the default\n", - "if 'characters' in C and C['characters']:\n", - " symbols, phonemes = make_symbols(**C.characters)\n", - "\n", - "# load the model\n", - "num_chars = len(phonemes) if C.use_phonemes else len(symbols)\n", - "# TODO: multiple speaker\n", - "model = setup_model(C)\n", - "model.load_checkpoint(C, MODEL_FILE, eval=True)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "preprocessor = importlib.import_module(\"TTS.tts.datasets.formatters\")\n", - "preprocessor = getattr(preprocessor, DATASET.lower())\n", - "meta_data = preprocessor(DATA_PATH, METADATA_FILE)\n", - "dataset = TTSDataset(\n", - " checkpoint[\"config\"][\"r\"],\n", - " C.text_cleaner,\n", - " False,\n", - " ap,\n", - " meta_data,\n", - " characters=C.get('characters', None),\n", - " use_phonemes=C.use_phonemes,\n", - " phoneme_cache_path=C.phoneme_cache_path,\n", - " enable_eos_bos=C.enable_eos_bos_chars,\n", - ")\n", - "loader = DataLoader(\n", - " dataset, batch_size=BATCH_SIZE, num_workers=4, collate_fn=dataset.collate_fn, shuffle=False, drop_last=False\n", - ")\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Generate model outputs " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import pickle\n", - "\n", - "file_idxs = []\n", - "metadata = []\n", - "losses = []\n", - "postnet_losses = []\n", - "criterion = L1LossMasked(seq_len_norm=C.seq_len_norm)\n", - "with torch.no_grad():\n", - " for data in tqdm(loader):\n", - " # setup input data\n", - " text_input = data[0]\n", - " text_lengths = data[1]\n", - " linear_input = data[3]\n", - " mel_input = data[4]\n", - " mel_lengths = data[5]\n", - " stop_targets = data[6]\n", - " item_idx = data[7]\n", - "\n", - " # dispatch data to GPU\n", - " if use_cuda:\n", - " text_input = text_input.cuda()\n", - " text_lengths = text_lengths.cuda()\n", - " mel_input = mel_input.cuda()\n", - " mel_lengths = mel_lengths.cuda()\n", - "\n", - " mask = sequence_mask(text_lengths)\n", - " mel_outputs, postnet_outputs, alignments, stop_tokens = model.forward(text_input, text_lengths, mel_input)\n", - " \n", - " # compute loss\n", - " loss = criterion(mel_outputs, mel_input, mel_lengths)\n", - " loss_postnet = criterion(postnet_outputs, mel_input, mel_lengths)\n", - " losses.append(loss.item())\n", - " postnet_losses.append(loss_postnet.item())\n", - "\n", - " # compute mel specs from linear spec if model is Tacotron\n", - " if C.model == \"Tacotron\":\n", - " mel_specs = []\n", - " postnet_outputs = postnet_outputs.data.cpu().numpy()\n", - " for b in range(postnet_outputs.shape[0]):\n", - " postnet_output = postnet_outputs[b]\n", - " mel_specs.append(torch.FloatTensor(ap.out_linear_to_mel(postnet_output.T).T).cuda())\n", - " postnet_outputs = torch.stack(mel_specs)\n", - " elif C.model == \"Tacotron2\":\n", - " postnet_outputs = postnet_outputs.detach().cpu().numpy()\n", - " alignments = alignments.detach().cpu().numpy()\n", - "\n", - " if not DRY_RUN:\n", - " for idx in range(text_input.shape[0]):\n", - " wav_file_path = item_idx[idx]\n", - " wav = ap.load_wav(wav_file_path)\n", - " file_name, wavq_path, mel_path, wav_path = set_filename(wav_file_path, OUT_PATH)\n", - " file_idxs.append(file_name)\n", - "\n", - " # quantize and save wav\n", - " if QUANTIZED_WAV:\n", - " wavq = ap.quantize(wav)\n", - " np.save(wavq_path, wavq)\n", - "\n", - " # save TTS mel\n", - " mel = postnet_outputs[idx]\n", - " mel_length = mel_lengths[idx]\n", - " mel = mel[:mel_length, :].T\n", - " np.save(mel_path, mel)\n", - "\n", - " metadata.append([wav_file_path, mel_path])\n", - "\n", - " # for wavernn\n", - " if not DRY_RUN:\n", - " pickle.dump(file_idxs, open(OUT_PATH+\"/dataset_ids.pkl\", \"wb\")) \n", - " \n", - " # for pwgan\n", - " with open(os.path.join(OUT_PATH, \"metadata.txt\"), \"w\") as f:\n", - " for data in metadata:\n", - " f.write(f\"{data[0]}|{data[1]+'.npy'}\\n\")\n", - "\n", - " print(np.mean(losses))\n", - " print(np.mean(postnet_losses))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# for pwgan\n", - "with open(os.path.join(OUT_PATH, \"metadata.txt\"), \"w\") as f:\n", - " for data in metadata:\n", - " f.write(f\"{data[0]}|{data[1]+'.npy'}\\n\")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Sanity Check" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "idx = 1\n", - "ap.melspectrogram(ap.load_wav(item_idx[idx])).shape" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import soundfile as sf\n", - "wav, sr = sf.read(item_idx[idx])\n", - "mel_postnet = postnet_outputs[idx][:mel_lengths[idx], :]\n", - "mel_decoder = mel_outputs[idx][:mel_lengths[idx], :].detach().cpu().numpy()\n", - "mel_truth = ap.melspectrogram(wav)\n", - "print(mel_truth.shape)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# plot posnet output\n", - "print(mel_postnet[:mel_lengths[idx], :].shape)\n", - "plot_spectrogram(mel_postnet, ap)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# plot decoder output\n", - "print(mel_decoder.shape)\n", - "plot_spectrogram(mel_decoder, ap)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# plot GT specgrogram\n", - "print(mel_truth.shape)\n", - "plot_spectrogram(mel_truth.T, ap)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# postnet, decoder diff\n", - "from matplotlib import pylab as plt\n", - "mel_diff = mel_decoder - mel_postnet\n", - "plt.figure(figsize=(16, 10))\n", - "plt.imshow(abs(mel_diff[:mel_lengths[idx],:]).T,aspect=\"auto\", origin=\"lower\");\n", - "plt.colorbar()\n", - "plt.tight_layout()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# PLOT GT SPECTROGRAM diff\n", - "from matplotlib import pylab as plt\n", - "mel_diff2 = mel_truth.T - mel_decoder\n", - "plt.figure(figsize=(16, 10))\n", - "plt.imshow(abs(mel_diff2).T,aspect=\"auto\", origin=\"lower\");\n", - "plt.colorbar()\n", - "plt.tight_layout()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# PLOT GT SPECTROGRAM diff\n", - "from matplotlib import pylab as plt\n", - "mel = postnet_outputs[idx]\n", - "mel_diff2 = mel_truth.T - mel[:mel_truth.shape[1]]\n", - "plt.figure(figsize=(16, 10))\n", - "plt.imshow(abs(mel_diff2).T,aspect=\"auto\", origin=\"lower\");\n", - "plt.colorbar()\n", - "plt.tight_layout()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "interpreter": { - "hash": "822ce188d9bce5372c4adbb11364eeb49293228c2224eb55307f4664778e7f56" - }, - "kernelspec": { - "display_name": "Python 3.9.7 64-bit ('base': conda)", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.7" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/TTS/notebooks/PlotUmapLibriTTS.ipynb b/TTS/notebooks/PlotUmapLibriTTS.ipynb deleted file mode 100644 index 1e29790b9ea0be914954ef8b58552b6c58cdca3d..0000000000000000000000000000000000000000 --- a/TTS/notebooks/PlotUmapLibriTTS.ipynb +++ /dev/null @@ -1,322 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Overview\n", - "\n", - "This notebook can be used with both a single or multi- speaker corpus and allows the interactive plotting of speaker embeddings linked to underlying audio (see instructions in the repo's speaker_embedding directory)\n", - "\n", - "Depending on the directory structure used for your corpus, you may need to adjust handling of **speaker_to_utter** and **locations**." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import os\n", - "import glob\n", - "import numpy as np\n", - "import umap\n", - "\n", - "from TTS.utils.audio import AudioProcessor\n", - "from TTS.config import load_config\n", - "\n", - "from bokeh.io import output_notebook, show\n", - "from bokeh.plotting import figure\n", - "from bokeh.models import HoverTool, ColumnDataSource, BoxZoomTool, ResetTool, OpenURL, TapTool\n", - "from bokeh.transform import factor_cmap\n", - "from bokeh.palettes import Category10" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "For larger sets of speakers, you can use **Category20**, but you need to change it in the **pal** variable too\n", - "\n", - "List of Bokeh palettes here: http://docs.bokeh.org/en/1.4.0/docs/reference/palettes.html\n", - "\n", - "**NB:** if you have problems with other palettes, first see https://stackoverflow.com/questions/48333820/why-do-some-bokeh-palettes-raise-a-valueerror-when-used-in-factor-cmap" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "output_notebook()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You should also adjust all the path constants to point at the relevant locations for you locally" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "MODEL_RUN_PATH = \"/media/erogol/data_ssd/Models/libri_tts/speaker_encoder/libritts_360-half-October-31-2019_04+54PM-19d2f5f/\"\n", - "MODEL_PATH = MODEL_RUN_PATH + \"best_model.pth\"\n", - "CONFIG_PATH = MODEL_RUN_PATH + \"config.json\"\n", - "\n", - "# My single speaker locations\n", - "#EMBED_PATH = \"/home/neil/main/Projects/TTS3/embeddings/neil14/\"\n", - "#AUDIO_PATH = \"/home/neil/data/Projects/NeilTTS/neil14/wavs/\"\n", - "\n", - "# My multi speaker locations\n", - "EMBED_PATH = \"/home/erogol/Data/Libri-TTS/train-clean-360-embed_128/\"\n", - "AUDIO_PATH = \"/home/erogol/Data/Libri-TTS/train-clean-360/\"" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "!ls -1 $MODEL_RUN_PATH" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "CONFIG = load_config(CONFIG_PATH)\n", - "ap = AudioProcessor(**CONFIG['audio'])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Bring in the embeddings created by **compute_embeddings.py**" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "embed_files = glob.glob(EMBED_PATH+\"/**/*.npy\", recursive=True)\n", - "print(f'Embeddings found: {len(embed_files)}')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Check that we did indeed find an embedding" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "embed_files[0]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Process the speakers\n", - "\n", - "Assumes count of **speaker_paths** corresponds to number of speakers (so a corpus in just one directory would be treated like a single speaker and the multiple directories of LibriTTS are treated as distinct speakers)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "speaker_paths = list(set([os.path.dirname(os.path.dirname(embed_file)) for embed_file in embed_files]))\n", - "speaker_to_utter = {}\n", - "for embed_file in embed_files:\n", - " speaker_path = os.path.dirname(os.path.dirname(embed_file))\n", - " try:\n", - " speaker_to_utter[speaker_path].append(embed_file)\n", - " except:\n", - " speaker_to_utter[speaker_path]=[embed_file]\n", - "print(f'Speaker count: {len(speaker_paths)}')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Set up the embeddings\n", - "\n", - "Adjust the number of speakers to select and the number of utterances from each speaker and they will be randomly sampled from the corpus" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "embeds = []\n", - "labels = []\n", - "locations = []\n", - "\n", - "# single speaker \n", - "#num_speakers = 1\n", - "#num_utters = 1000\n", - "\n", - "# multi speaker\n", - "num_speakers = 10\n", - "num_utters = 20\n", - "\n", - "\n", - "speaker_idxs = np.random.choice(range(len(speaker_paths)), num_speakers, replace=False )\n", - "\n", - "for speaker_num, speaker_idx in enumerate(speaker_idxs):\n", - " speaker_path = speaker_paths[speaker_idx]\n", - " speakers_utter = speaker_to_utter[speaker_path]\n", - " utter_idxs = np.random.randint(0, len(speakers_utter) , num_utters)\n", - " for utter_idx in utter_idxs:\n", - " embed_path = speaker_to_utter[speaker_path][utter_idx]\n", - " embed = np.load(embed_path)\n", - " embeds.append(embed)\n", - " labels.append(str(speaker_num))\n", - " locations.append(embed_path.replace(EMBED_PATH, '').replace('.npy','.wav'))\n", - "embeds = np.concatenate(embeds)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Load embeddings with UMAP" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "model = umap.UMAP()\n", - "projection = model.fit_transform(embeds)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Interactively charting the data in Bokeh\n", - "\n", - "Set up various details for Bokeh to plot the data\n", - "\n", - "You can use the regular Bokeh [tools](http://docs.bokeh.org/en/1.4.0/docs/user_guide/tools.html?highlight=tools) to explore the data, with reset setting it back to normal\n", - "\n", - "Once you have started the local server (see cell below) you can then click on plotted points which will open a tab to play the audio for that point, enabling easy exploration of your corpus\n", - "\n", - "File location in the tooltip is given relative to **AUDIO_PATH**" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "source_wav_stems = ColumnDataSource(\n", - " data=dict(\n", - " x = projection.T[0].tolist(),\n", - " y = projection.T[1].tolist(),\n", - " desc=locations,\n", - " label=labels\n", - " )\n", - " )\n", - "\n", - "hover = HoverTool(\n", - " tooltips=[\n", - " (\"file\", \"@desc\"),\n", - " (\"speaker\", \"@label\"),\n", - " ]\n", - " )\n", - "\n", - "# optionally consider adding these to the tooltips if you want additional detail\n", - "# for the coordinates: (\"(x,y)\", \"($x, $y)\"),\n", - "# for the index of the embedding / wav file: (\"index\", \"$index\"),\n", - "\n", - "factors = list(set(labels))\n", - "pal_size = max(len(factors), 3)\n", - "pal = Category10[pal_size]\n", - "\n", - "p = figure(plot_width=600, plot_height=400, tools=[hover,BoxZoomTool(), ResetTool(), TapTool()])\n", - "\n", - "\n", - "p.circle('x', 'y', source=source_wav_stems, color=factor_cmap('label', palette=pal, factors=factors),)\n", - "\n", - "url = \"http://localhost:8000/@desc\"\n", - "taptool = p.select(type=TapTool)\n", - "taptool.callback = OpenURL(url=url)\n", - "\n", - "show(p)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Local server to serve wav files from corpus\n", - "\n", - "This is required so that when you click on a data point the hyperlink associated with it will be served the file locally.\n", - "\n", - "There are other ways to serve this if you prefer and you can also run the commands manually on the command line\n", - "\n", - "The server will continue to run until stopped. To stop it simply interupt the kernel (ie square button or under Kernel menu)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "%cd $AUDIO_PATH\n", - "%pwd\n", - "!python -m http.server" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.7.4" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/TTS/notebooks/TestAttention.ipynb b/TTS/notebooks/TestAttention.ipynb deleted file mode 100644 index 65edf98ca4a5ac2028bd930b3ddfe54a60564d90..0000000000000000000000000000000000000000 --- a/TTS/notebooks/TestAttention.ipynb +++ /dev/null @@ -1,188 +0,0 @@ -{ - "cells": [{ - "cell_type": "markdown", - "metadata": { - "Collapsed": "false" - }, - "source": [ - "This notebook is to test attention performance of a TTS model on a list of sentences taken from DeepVoice paper.\n", - "### Features of this notebook\n", - "- You can see visually how your model performs on each sentence and try to dicern common problems.\n", - "- At the end, final attention score would be printed showing the ultimate performace of your model. You can use this value to perform model selection.\n", - "- You can change the list of sentences byt providing a different sentence file." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false", - "scrolled": true - }, - "outputs": [], - "source": [ - "%load_ext autoreload\n", - "%autoreload 2\n", - "import os, sys\n", - "import torch \n", - "import time\n", - "import numpy as np\n", - "from matplotlib import pylab as plt\n", - "\n", - "%pylab inline\n", - "plt.rcParams[\"figure.figsize\"] = (16,5)\n", - "\n", - "import librosa\n", - "import librosa.display\n", - "\n", - "from TTS.tts.layers import *\n", - "from TTS.utils.audio import AudioProcessor\n", - "from TTS.tts.utils.generic_utils import setup_model\n", - "from TTS.tts.utils.io import load_config\n", - "from TTS.tts.utils.text import text_to_sequence\n", - "from TTS.tts.utils.synthesis import synthesis\n", - "from TTS.tts.utils.visual import plot_alignment\n", - "from TTS.tts.utils.measures import alignment_diagonal_score\n", - "\n", - "import IPython\n", - "from IPython.display import Audio\n", - "\n", - "os.environ['CUDA_VISIBLE_DEVICES']='1'\n", - "\n", - "def tts(model, text, CONFIG, use_cuda, ap):\n", - " t_1 = time.time()\n", - " # run the model\n", - " waveform, alignment, mel_spec, mel_postnet_spec, stop_tokens, inputs = synthesis(model, text, CONFIG, use_cuda, ap, speaker_id, None, False, CONFIG.enable_eos_bos_chars, True)\n", - " if CONFIG.model == \"Tacotron\" and not use_gl:\n", - " mel_postnet_spec = ap.out_linear_to_mel(mel_postnet_spec.T).T\n", - " # plotting\n", - " attn_score = alignment_diagonal_score(torch.FloatTensor(alignment).unsqueeze(0))\n", - " print(f\" > {text}\")\n", - " IPython.display.display(IPython.display.Audio(waveform, rate=ap.sample_rate))\n", - " fig = plot_alignment(alignment, fig_size=(8, 5))\n", - " IPython.display.display(fig)\n", - " #saving results\n", - " os.makedirs(OUT_FOLDER, exist_ok=True)\n", - " file_name = text[:200].replace(\" \", \"_\").replace(\".\",\"\") + \".wav\"\n", - " out_path = os.path.join(OUT_FOLDER, file_name)\n", - " ap.save_wav(waveform, out_path)\n", - " return attn_score\n", - "\n", - "# Set constants\n", - "ROOT_PATH = '/home/erogol/Models/LJSpeech/ljspeech-May-20-2020_12+29PM-1835628/'\n", - "MODEL_PATH = ROOT_PATH + '/best_model.pth'\n", - "CONFIG_PATH = ROOT_PATH + '/config.json'\n", - "OUT_FOLDER = './hard_sentences/'\n", - "CONFIG = load_config(CONFIG_PATH)\n", - "SENTENCES_PATH = 'sentences.txt'\n", - "use_cuda = True\n", - "\n", - "# Set some config fields manually for testing\n", - "# CONFIG.windowing = False\n", - "# CONFIG.prenet_dropout = False\n", - "# CONFIG.separate_stopnet = True\n", - "CONFIG.use_forward_attn = False\n", - "# CONFIG.forward_attn_mask = True\n", - "# CONFIG.stopnet = True" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "# LOAD TTS MODEL\n", - "from TTS.tts.utils.text.symbols import make_symbols, symbols, phonemes\n", - "\n", - "# multi speaker \n", - "if CONFIG.use_speaker_embedding:\n", - " speakers = json.load(open(f\"{ROOT_PATH}/speakers.json\", 'r'))\n", - " speakers_idx_to_id = {v: k for k, v in speakers.items()}\n", - "else:\n", - " speakers = []\n", - " speaker_id = None\n", - "\n", - "# if the vocabulary was passed, replace the default\n", - "if 'characters' in CONFIG.keys():\n", - " symbols, phonemes = make_symbols(**CONFIG.characters)\n", - "\n", - "# load the model\n", - "num_chars = len(phonemes) if CONFIG.use_phonemes else len(symbols)\n", - "model = setup_model(num_chars, len(speakers), CONFIG)\n", - "\n", - "# load the audio processor\n", - "ap = AudioProcessor(**CONFIG.audio) \n", - "\n", - "\n", - "# load model state\n", - "if use_cuda:\n", - " cp = torch.load(MODEL_PATH)\n", - "else:\n", - " cp = torch.load(MODEL_PATH, map_location=lambda storage, loc: storage)\n", - "\n", - "# load the model\n", - "model.load_state_dict(cp['model'])\n", - "if use_cuda:\n", - " model.cuda()\n", - "model.eval()\n", - "print(cp['step'])\n", - "print(cp['r'])\n", - "\n", - "# set model stepsize\n", - "if 'r' in cp:\n", - " model.decoder.set_r(cp['r'])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "model.decoder.max_decoder_steps=3000\n", - "attn_scores = []\n", - "with open(SENTENCES_PATH, 'r') as f:\n", - " for text in f:\n", - " attn_score = tts(model, text, CONFIG, use_cuda, ap)\n", - " attn_scores.append(attn_score)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "np.mean(attn_scores)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.5" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} \ No newline at end of file diff --git a/TTS/notebooks/Tortoise.ipynb b/TTS/notebooks/Tortoise.ipynb deleted file mode 100644 index 788d99e0cfb5ff8c7c0db41abea31d2ebd2c9515..0000000000000000000000000000000000000000 --- a/TTS/notebooks/Tortoise.ipynb +++ /dev/null @@ -1,108 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": null, - "id": "4d50310e-f094-42e0-af30-1e42b13ceb95", - "metadata": {}, - "outputs": [], - "source": [ - "#@title # Setup\n", - "# Imports used through the rest of the notebook.\n", - "import torch\n", - "import torchaudio\n", - "import torch.nn as nn\n", - "import torch.nn.functional as F\n", - "\n", - "import IPython\n", - "\n", - "from TTS.tts.models.tortoise import TextToSpeech\n", - "from TTS.tts.layers.tortoise.audio_utils import load_audio, load_voice, load_voices\n", - "\n", - "# This will download all the models used by Tortoise from the HuggingFace hub.\n", - "tts = TextToSpeech()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "e126c3c3-d90a-492f-b5bb-0d86587f15cc", - "metadata": {}, - "outputs": [], - "source": [ - "# This is the text that will be spoken.\n", - "text = \"Joining two modalities results in a surprising increase in generalization! What would happen if we combined them all?\" #@param {type:\"string\"}\n", - "#@markdown Show code for multiline text input\n", - "# Here's something for the poetically inclined.. (set text=)\n", - "\"\"\"\n", - "Then took the other, as just as fair,\n", - "And having perhaps the better claim,\n", - "Because it was grassy and wanted wear;\n", - "Though as for that the passing there\n", - "Had worn them really about the same,\"\"\"\n", - "\n", - "# Pick a \"preset mode\" to determine quality. Options: {\"ultra_fast\", \"fast\" (default), \"standard\", \"high_quality\"}. See docs in api.py\n", - "preset = \"fast\" #@param [\"ultra_fast\", \"fast\", \"standard\", \"high_quality\"]" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "9413f553-5bd0-4820-bad4-edd7fd7d2370", - "metadata": {}, - "outputs": [], - "source": [ - "%ls ../TTS/tts/utils/assets/tortoise/voices/\n", - "import IPython\n", - "IPython.display.Audio(filename='../TTS/tts/utils/assets/tortoise/voices/lj/1.wav')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "96a98ae5-313b-40d1-9311-5a785f2c9a4e", - "metadata": {}, - "outputs": [], - "source": [ - "#@markdown Pick one of the voices from the output above\n", - "voice = 'lj' #@param {type:\"string\"}\n", - "\n", - "#@markdown Load it and send it through Tortoise.\n", - "voice_samples, conditioning_latents = load_voice(voice)\n", - "gen = tts.tts_with_preset(text, voice_samples=voice_samples, conditioning_latents=conditioning_latents, \n", - " preset=preset)\n", - "torchaudio.save('generated.wav', gen.squeeze(0).cpu(), 24000)\n", - "IPython.display.Audio('generated.wav')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "04e473e5-c489-4a78-aa11-03e89a778ed8", - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.16" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/TTS/notebooks/Tutorial_1_use-pretrained-TTS.ipynb b/TTS/notebooks/Tutorial_1_use-pretrained-TTS.ipynb deleted file mode 100644 index 87d04c499dac7a08b20e192b2592e8af66a06cfb..0000000000000000000000000000000000000000 --- a/TTS/notebooks/Tutorial_1_use-pretrained-TTS.ipynb +++ /dev/null @@ -1,272 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "id": "45ea3ef5", - "metadata": { - "tags": [] - }, - "source": [ - "# Easy Inferencing with 🐸 TTS ⚡\n", - "\n", - "#### You want to quicly synthesize speech using Coqui 🐸 TTS model?\n", - "\n", - "💡: Grab a pre-trained model and use it to synthesize speech using any speaker voice, including yours! ⚡\n", - "\n", - "🐸 TTS comes with a list of pretrained models and speaker voices. You can even start a local demo server that you can open it on your favorite web browser and 🗣️ .\n", - "\n", - "In this notebook, we will: \n", - "```\n", - "1. List available pre-trained 🐸 TTS models\n", - "2. Run a 🐸 TTS model\n", - "3. Listen to the synthesized wave 📣\n", - "4. Run multispeaker 🐸 TTS model \n", - "```\n", - "So, let's jump right in!\n" - ] - }, - { - "cell_type": "markdown", - "id": "a1e5c2a5-46eb-42fd-b550-2a052546857e", - "metadata": {}, - "source": [ - "## Install 🐸 TTS ⬇️" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "fa2aec77", - "metadata": {}, - "outputs": [], - "source": [ - "! pip install -U pip\n", - "! pip install TTS" - ] - }, - { - "cell_type": "markdown", - "id": "8c07a273", - "metadata": {}, - "source": [ - "## ✅ List available pre-trained 🐸 TTS models\n", - "\n", - "Coqui 🐸TTS comes with a list of pretrained models for different model types (ex: TTS, vocoder), languages, datasets used for training and architectures. \n", - "\n", - "You can either use your own model or the release models under 🐸TTS.\n", - "\n", - "Use `tts --list_models` to find out the availble models.\n", - "\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "608d203f", - "metadata": {}, - "outputs": [], - "source": [ - "! tts --list_models" - ] - }, - { - "cell_type": "markdown", - "id": "ed9dd7ab", - "metadata": {}, - "source": [ - "## ✅ Run a 🐸 TTS model\n", - "\n", - "#### **First things first**: Using a release model and default vocoder:\n", - "\n", - "You can simply copy the full model name from the list above and use it \n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "cc9e4608-16ec-4dcd-bd6b-bd10d62286f8", - "metadata": {}, - "outputs": [], - "source": [ - "!tts --text \"hello world\" \\\n", - "--model_name \"tts_models/en/ljspeech/glow-tts\" \\\n", - "--out_path output.wav\n" - ] - }, - { - "cell_type": "markdown", - "id": "0ca2cb14-1aba-400e-a219-8ce44d9410be", - "metadata": {}, - "source": [ - "## 📣 Listen to the synthesized wave 📣" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "5fe63ef4-9284-4461-9dda-1ca7483a8f9b", - "metadata": {}, - "outputs": [], - "source": [ - "import IPython\n", - "IPython.display.Audio(\"output.wav\")" - ] - }, - { - "cell_type": "markdown", - "id": "5e67d178-1ebe-49c7-9a47-0593251bdb96", - "metadata": {}, - "source": [ - "### **Second things second**:\n", - "\n", - "🔶 A TTS model can be either trained on a single speaker voice or multispeaker voices. This training choice is directly reflected on the inference ability and the available speaker voices that can be used to synthesize speech. \n", - "\n", - "🔶 If you want to run a multispeaker model from the released models list, you can first check the speaker ids using `--list_speaker_idx` flag and use this speaker voice to synthesize speech." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "87b18839-f750-4a61-bbb0-c964acaecab2", - "metadata": {}, - "outputs": [], - "source": [ - "# list the possible speaker IDs.\n", - "!tts --model_name \"tts_models/en/vctk/vits\" \\\n", - "--list_speaker_idxs \n" - ] - }, - { - "cell_type": "markdown", - "id": "c4365a9d-f922-4b14-88b0-d2b22a245b2e", - "metadata": {}, - "source": [ - "## 💬 Synthesize speech using speaker ID 💬" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "52be0403-d13e-4d9b-99c2-c10b85154063", - "metadata": {}, - "outputs": [], - "source": [ - "!tts --text \"Trying out specific speaker voice\"\\\n", - "--out_path spkr-out.wav --model_name \"tts_models/en/vctk/vits\" \\\n", - "--speaker_idx \"p341\"" - ] - }, - { - "cell_type": "markdown", - "id": "894a560a-f9c8-48ce-aaa6-afdf516c01f6", - "metadata": {}, - "source": [ - "## 📣 Listen to the synthesized speaker specific wave 📣" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ed485b0a-dfd5-4a7e-a571-ebf74bdfc41d", - "metadata": {}, - "outputs": [], - "source": [ - "import IPython\n", - "IPython.display.Audio(\"spkr-out.wav\")" - ] - }, - { - "cell_type": "markdown", - "id": "84636a38-097e-4dad-933b-0aeaee650e92", - "metadata": {}, - "source": [ - "🔶 If you want to use an external speaker to synthesize speech, you need to supply `--speaker_wav` flag along with an external speaker encoder path and config file, as follows:" - ] - }, - { - "cell_type": "markdown", - "id": "cbdb15fa-123a-4282-a127-87b50dc70365", - "metadata": {}, - "source": [ - "First we need to get the speaker encoder model, its config and a referece `speaker_wav`" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "e54f1b13-560c-4fed-bafd-e38ec9712359", - "metadata": {}, - "outputs": [], - "source": [ - "!wget https://github.com/coqui-ai/TTS/releases/download/speaker_encoder_model/config_se.json\n", - "!wget https://github.com/coqui-ai/TTS/releases/download/speaker_encoder_model/model_se.pth.tar\n", - "!wget https://github.com/coqui-ai/TTS/raw/speaker_encoder_model/tests/data/ljspeech/wavs/LJ001-0001.wav" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "6dac1912-5054-4a68-8357-6d20fd99cb10", - "metadata": {}, - "outputs": [], - "source": [ - "!tts --model_name tts_models/multilingual/multi-dataset/your_tts \\\n", - "--encoder_path model_se.pth.tar \\\n", - "--encoder_config config_se.json \\\n", - "--speaker_wav LJ001-0001.wav \\\n", - "--text \"Are we not allowed to dim the lights so people can see that a bit better?\"\\\n", - "--out_path spkr-out.wav \\\n", - "--language_idx \"en\"" - ] - }, - { - "cell_type": "markdown", - "id": "92ddce58-8aca-4f69-84c3-645ae1b12e7d", - "metadata": {}, - "source": [ - "## 📣 Listen to the synthesized speaker specific wave 📣" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "cc889adc-9c71-4232-8e85-bfc8f76476f4", - "metadata": {}, - "outputs": [], - "source": [ - "import IPython\n", - "IPython.display.Audio(\"spkr-out.wav\")" - ] - }, - { - "cell_type": "markdown", - "id": "29101d01-0b01-4153-a216-5dae415a5dd6", - "metadata": {}, - "source": [ - "## 🎉 Congratulations! 🎉 You now know how to use a TTS model to synthesize speech! \n", - "Follow up with the next tutorials to learn more adnavced material." - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.10" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/TTS/notebooks/Tutorial_2_train_your_first_TTS_model.ipynb b/TTS/notebooks/Tutorial_2_train_your_first_TTS_model.ipynb deleted file mode 100644 index 0f580a85b6405d35df5e14c384412a6331981755..0000000000000000000000000000000000000000 --- a/TTS/notebooks/Tutorial_2_train_your_first_TTS_model.ipynb +++ /dev/null @@ -1,456 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "id": "f79d99ef", - "metadata": {}, - "source": [ - "# Train your first 🐸 TTS model 💫\n", - "\n", - "### 👋 Hello and welcome to Coqui (🐸) TTS\n", - "\n", - "The goal of this notebook is to show you a **typical workflow** for **training** and **testing** a TTS model with 🐸.\n", - "\n", - "Let's train a very small model on a very small amount of data so we can iterate quickly.\n", - "\n", - "In this notebook, we will:\n", - "\n", - "1. Download data and format it for 🐸 TTS.\n", - "2. Configure the training and testing runs.\n", - "3. Train a new model.\n", - "4. Test the model and display its performance.\n", - "\n", - "So, let's jump right in!\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "fa2aec78", - "metadata": {}, - "outputs": [], - "source": [ - "## Install Coqui TTS\n", - "! pip install -U pip\n", - "! pip install TTS" - ] - }, - { - "cell_type": "markdown", - "id": "be5fe49c", - "metadata": {}, - "source": [ - "## ✅ Data Preparation\n", - "\n", - "### **First things first**: we need some data.\n", - "\n", - "We're training a Text-to-Speech model, so we need some _text_ and we need some _speech_. Specificially, we want _transcribed speech_. The speech must be divided into audio clips and each clip needs transcription. More details about data requirements such as recording characteristics, background noise and vocabulary coverage can be found in the [🐸TTS documentation](https://tts.readthedocs.io/en/latest/formatting_your_dataset.html).\n", - "\n", - "If you have a single audio file and you need to **split** it into clips. It is also important to use a lossless audio file format to prevent compression artifacts. We recommend using **wav** file format.\n", - "\n", - "The data format we will be adopting for this tutorial is taken from the widely-used **LJSpeech** dataset, where **waves** are collected under a folder:\n", - "\n", - "\n", - "/wavs
\n", - "  | - audio1.wav
\n", - "  | - audio2.wav
\n", - "  | - audio3.wav
\n", - " ...
\n", - "
\n", - "\n", - "and a **metadata.csv** file will have the audio file name in parallel to the transcript, delimited by `|`: \n", - " \n", - "\n", - "# metadata.csv
\n", - "audio1|This is my sentence.
\n", - "audio2|This is maybe my sentence.
\n", - "audio3|This is certainly my sentence.
\n", - "audio4|Let this be your sentence.
\n", - "...\n", - "
\n", - "\n", - "In the end, we should have the following **folder structure**:\n", - "\n", - "\n", - "/MyTTSDataset
\n", - " |
\n", - " | -> metadata.csv
\n", - " | -> /wavs
\n", - "  | -> audio1.wav
\n", - "  | -> audio2.wav
\n", - "  | ...
\n", - "
" - ] - }, - { - "cell_type": "markdown", - "id": "69501a10-3b53-4e75-ae66-90221d6f2271", - "metadata": {}, - "source": [ - "🐸TTS already provides tooling for the _LJSpeech_. if you use the same format, you can start training your models right away.
\n", - "\n", - "After you collect and format your dataset, you need to check two things. Whether you need a **_formatter_** and a **_text_cleaner_**.
The **_formatter_** loads the text file (created above) as a list and the **_text_cleaner_** performs a sequence of text normalization operations that converts the raw text into the spoken representation (e.g. converting numbers to text, acronyms, and symbols to the spoken format).\n", - "\n", - "If you use a different dataset format then the LJSpeech or the other public datasets that 🐸TTS supports, then you need to write your own **_formatter_** and **_text_cleaner_**." - ] - }, - { - "cell_type": "markdown", - "id": "e7f226c8-4e55-48fa-937b-8415d539b17c", - "metadata": {}, - "source": [ - "## ⏳️ Loading your dataset\n", - "Load one of the dataset supported by 🐸TTS.\n", - "\n", - "We will start by defining dataset config and setting LJSpeech as our target dataset and define its path.\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "b3cb0191-b8fc-4158-bd26-8423c2a8ba66", - "metadata": {}, - "outputs": [], - "source": [ - "import os\n", - "\n", - "# BaseDatasetConfig: defines name, formatter and path of the dataset.\n", - "from TTS.tts.configs.shared_configs import BaseDatasetConfig\n", - "\n", - "output_path = \"tts_train_dir\"\n", - "if not os.path.exists(output_path):\n", - " os.makedirs(output_path)\n", - " " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ae6b7019-3685-4b48-8917-c152e288d7e3", - "metadata": {}, - "outputs": [], - "source": [ - "# Download and extract LJSpeech dataset.\n", - "\n", - "!wget -O $output_path/LJSpeech-1.1.tar.bz2 https://data.keithito.com/data/speech/LJSpeech-1.1.tar.bz2 \n", - "!tar -xf $output_path/LJSpeech-1.1.tar.bz2 -C $output_path" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "76cd3ab5-6387-45f1-b488-24734cc1beb5", - "metadata": {}, - "outputs": [], - "source": [ - "dataset_config = BaseDatasetConfig(\n", - " formatter=\"ljspeech\", meta_file_train=\"metadata.csv\", path=os.path.join(output_path, \"LJSpeech-1.1/\")\n", - ")" - ] - }, - { - "cell_type": "markdown", - "id": "ae82fd75", - "metadata": {}, - "source": [ - "## ✅ Train a new model\n", - "\n", - "Let's kick off a training run 🚀🚀🚀.\n", - "\n", - "Deciding on the model architecture you'd want to use is based on your needs and available resources. Each model architecture has it's pros and cons that define the run-time efficiency and the voice quality.\n", - "We have many recipes under `TTS/recipes/` that provide a good starting point. For this tutorial, we will be using `GlowTTS`." - ] - }, - { - "cell_type": "markdown", - "id": "f5876e46-2aee-4bcf-b6b3-9e3c535c553f", - "metadata": {}, - "source": [ - "We will begin by initializing the model training configuration." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "5483ca28-39d6-49f8-a18e-4fb53c50ad84", - "metadata": {}, - "outputs": [], - "source": [ - "# GlowTTSConfig: all model related values for training, validating and testing.\n", - "from TTS.tts.configs.glow_tts_config import GlowTTSConfig\n", - "config = GlowTTSConfig(\n", - " batch_size=32,\n", - " eval_batch_size=16,\n", - " num_loader_workers=4,\n", - " num_eval_loader_workers=4,\n", - " run_eval=True,\n", - " test_delay_epochs=-1,\n", - " epochs=100,\n", - " text_cleaner=\"phoneme_cleaners\",\n", - " use_phonemes=True,\n", - " phoneme_language=\"en-us\",\n", - " phoneme_cache_path=os.path.join(output_path, \"phoneme_cache\"),\n", - " print_step=25,\n", - " print_eval=False,\n", - " mixed_precision=True,\n", - " output_path=output_path,\n", - " datasets=[dataset_config],\n", - " save_step=1000,\n", - ")" - ] - }, - { - "cell_type": "markdown", - "id": "b93ed377-80b7-447b-bd92-106bffa777ee", - "metadata": {}, - "source": [ - "Next we will initialize the audio processor which is used for feature extraction and audio I/O." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "b1b12f61-f851-4565-84dd-7640947e04ab", - "metadata": {}, - "outputs": [], - "source": [ - "from TTS.utils.audio import AudioProcessor\n", - "ap = AudioProcessor.init_from_config(config)\n", - "# Modify sample rate if for a custom audio dataset:\n", - "# ap.sample_rate = 22050\n" - ] - }, - { - "cell_type": "markdown", - "id": "1d461683-b05e-403f-815f-8007bda08c38", - "metadata": {}, - "source": [ - "Next we will initialize the tokenizer which is used to convert text to sequences of token IDs. If characters are not defined in the config, default characters are passed to the config." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "014879b7-f18d-44c0-b24a-e10f8002113a", - "metadata": {}, - "outputs": [], - "source": [ - "from TTS.tts.utils.text.tokenizer import TTSTokenizer\n", - "tokenizer, config = TTSTokenizer.init_from_config(config)" - ] - }, - { - "cell_type": "markdown", - "id": "df3016e1-9e99-4c4f-94e3-fa89231fd978", - "metadata": {}, - "source": [ - "Next we will load data samples. Each sample is a list of ```[text, audio_file_path, speaker_name]```. You can define your custom sample loader returning the list of samples." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "cadd6ada-c8eb-4f79-b8fe-6d72850af5a7", - "metadata": {}, - "outputs": [], - "source": [ - "from TTS.tts.datasets import load_tts_samples\n", - "train_samples, eval_samples = load_tts_samples(\n", - " dataset_config,\n", - " eval_split=True,\n", - " eval_split_max_size=config.eval_split_max_size,\n", - " eval_split_size=config.eval_split_size,\n", - ")" - ] - }, - { - "cell_type": "markdown", - "id": "db8b451e-1fe1-4aa3-b69e-ab22b925bd19", - "metadata": {}, - "source": [ - "Now we're ready to initialize the model.\n", - "\n", - "Models take a config object and a speaker manager as input. Config defines the details of the model like the number of layers, the size of the embedding, etc. Speaker manager is used by multi-speaker models." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ac2ffe3e-ad0c-443e-800c-9b076ee811b4", - "metadata": {}, - "outputs": [], - "source": [ - "from TTS.tts.models.glow_tts import GlowTTS\n", - "model = GlowTTS(config, ap, tokenizer, speaker_manager=None)" - ] - }, - { - "cell_type": "markdown", - "id": "e2832c56-889d-49a6-95b6-eb231892ecc6", - "metadata": {}, - "source": [ - "Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, distributed training, etc." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "0f609945-4fe0-4d0d-b95e-11d7bfb63ebe", - "metadata": {}, - "outputs": [], - "source": [ - "from trainer import Trainer, TrainerArgs\n", - "trainer = Trainer(\n", - " TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples\n", - ")" - ] - }, - { - "cell_type": "markdown", - "id": "5b320831-dd83-429b-bb6a-473f9d49d321", - "metadata": {}, - "source": [ - "### AND... 3,2,1... START TRAINING 🚀🚀🚀" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "d4c07f99-3d1d-4bea-801e-9f33bbff0e9f", - "metadata": {}, - "outputs": [], - "source": [ - "trainer.fit()" - ] - }, - { - "cell_type": "markdown", - "id": "4cff0c40-2734-40a6-a905-e945a9fb3e98", - "metadata": {}, - "source": [ - "#### 🚀 Run the Tensorboard. 🚀\n", - "On the notebook and Tensorboard, you can monitor the progress of your model. Also Tensorboard provides certain figures and sample outputs." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "5a85cd3b-1646-40ad-a6c2-49323e08eeec", - "metadata": {}, - "outputs": [], - "source": [ - "!pip install tensorboard\n", - "!tensorboard --logdir=tts_train_dir" - ] - }, - { - "cell_type": "markdown", - "id": "9f6dc959", - "metadata": {}, - "source": [ - "## ✅ Test the model\n", - "\n", - "We made it! 🙌\n", - "\n", - "Let's kick off the testing run, which displays performance metrics.\n", - "\n", - "We're committing the cardinal sin of ML 😈 (aka - testing on our training data) so you don't want to deploy this model into production. In this notebook we're focusing on the workflow itself, so it's forgivable 😇\n", - "\n", - "You can see from the test output that our tiny model has overfit to the data, and basically memorized this one sentence.\n", - "\n", - "When you start training your own models, make sure your testing data doesn't include your training data 😅" - ] - }, - { - "cell_type": "markdown", - "id": "99fada7a-592f-4a09-9369-e6f3d82de3a0", - "metadata": {}, - "source": [ - "Let's get the latest saved checkpoint. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "6dd47ed5-da8e-4bf9-b524-d686630d6961", - "metadata": {}, - "outputs": [], - "source": [ - "import glob, os\n", - "output_path = \"tts_train_dir\"\n", - "ckpts = sorted([f for f in glob.glob(output_path+\"/*/*.pth\")])\n", - "configs = sorted([f for f in glob.glob(output_path+\"/*/*.json\")])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "dd42bc7a", - "metadata": {}, - "outputs": [], - "source": [ - " !tts --text \"Text for TTS\" \\\n", - " --model_path $test_ckpt \\\n", - " --config_path $test_config \\\n", - " --out_path out.wav" - ] - }, - { - "cell_type": "markdown", - "id": "81cbcb3f-d952-469b-a0d8-8941cd7af670", - "metadata": {}, - "source": [ - "## 📣 Listen to the synthesized wave 📣" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "e0000bd6-6763-4a10-a74d-911dd08ebcff", - "metadata": {}, - "outputs": [], - "source": [ - "import IPython\n", - "IPython.display.Audio(\"out.wav\")" - ] - }, - { - "cell_type": "markdown", - "id": "13914401-cad1-494a-b701-474e52829138", - "metadata": {}, - "source": [ - "## 🎉 Congratulations! 🎉 You now have trained your first TTS model! \n", - "Follow up with the next tutorials to learn more advanced material." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "950d9fc6-896f-4a2c-86fd-8fd1fcbbb3f7", - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.10" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/TTS/notebooks/dataset_analysis/AnalyzeDataset.ipynb b/TTS/notebooks/dataset_analysis/AnalyzeDataset.ipynb deleted file mode 100644 index 4f0dbb8e40ed78530c287feadd9168ac2afc07c4..0000000000000000000000000000000000000000 --- a/TTS/notebooks/dataset_analysis/AnalyzeDataset.ipynb +++ /dev/null @@ -1,427 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "# TTS_PATH = \"/home/erogol/projects/\"" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "import os\n", - "import sys\n", - "import librosa\n", - "import numpy as np\n", - "import pandas as pd\n", - "from scipy.stats import norm\n", - "from tqdm import tqdm_notebook as tqdm\n", - "from multiprocessing import Pool\n", - "from matplotlib import pylab as plt\n", - "from collections import Counter\n", - "from TTS.config.shared_configs import BaseDatasetConfig\n", - "from TTS.tts.datasets import load_tts_samples\n", - "from TTS.tts.datasets.formatters import *\n", - "%matplotlib inline" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "NUM_PROC = 8\n", - "DATASET_CONFIG = BaseDatasetConfig(\n", - " formatter=\"ljspeech\", meta_file_train=\"metadata.csv\", path=\"/absolute/path/to/your/dataset/\"\n", - ")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "def formatter(root_path, meta_file, **kwargs): # pylint: disable=unused-argument\n", - " txt_file = os.path.join(root_path, meta_file)\n", - " items = []\n", - " speaker_name = \"myspeaker\"\n", - " with open(txt_file, \"r\", encoding=\"utf-8\") as ttf:\n", - " for line in ttf:\n", - " cols = line.split(\"|\")\n", - " wav_file = os.path.join(root_path, \"wavs\", cols[0] + \".wav\") \n", - " text = cols[1]\n", - " items.append({\"text\": text, \"audio_file\": wav_file, \"speaker_name\": speaker_name, \"root_path\": root_path})\n", - " return items" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "# use your own preprocessor at this stage - TTS/datasets/proprocess.py\n", - "train_samples, eval_samples = load_tts_samples(DATASET_CONFIG, eval_split=True, formatter=formatter)\n", - "if eval_samples is not None:\n", - " items = train_samples + eval_samples\n", - "else:\n", - " items = train_samples\n", - "print(\" > Number of audio files: {}\".format(len(items)))\n", - "print(items[1])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "# check wavs if exist\n", - "wav_files = []\n", - "for item in items:\n", - " wav_file = item[\"audio_file\"].strip()\n", - " wav_files.append(wav_file)\n", - " if not os.path.exists(wav_file):\n", - " print(waf_path)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "# show duplicate items\n", - "c = Counter(wav_files)\n", - "print([item for item, count in c.items() if count > 1])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "item" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "def load_item(item):\n", - " text = item[\"text\"].strip()\n", - " file_name = item[\"audio_file\"].strip()\n", - " audio, sr = librosa.load(file_name, sr=None)\n", - " audio_len = len(audio) / sr\n", - " text_len = len(text)\n", - " return file_name, text, text_len, audio, audio_len\n", - "\n", - "# This will take a while depending on size of dataset\n", - "if NUM_PROC == 1:\n", - " data = []\n", - " for m in tqdm(items):\n", - " data += [load_item(m)]\n", - "else:\n", - " with Pool(8) as p:\n", - " data = list(tqdm(p.imap(load_item, items), total=len(items)))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "# count words in the dataset\n", - "w_count = Counter()\n", - "for item in tqdm(data):\n", - " text = item[1].lower().strip()\n", - " for word in text.split():\n", - " w_count[word] += 1\n", - "print(\" > Number of words: {}\".format(len(w_count)))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "text_vs_durs = {} # text length vs audio duration\n", - "text_len_counter = Counter() # number of sentences with the keyed length\n", - "for item in tqdm(data):\n", - " text = item[1].lower().strip()\n", - " text_len = len(text)\n", - " text_len_counter[text_len] += 1\n", - " audio_len = item[-1]\n", - " try:\n", - " text_vs_durs[text_len] += [audio_len]\n", - " except:\n", - " text_vs_durs[text_len] = [audio_len]" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "# text_len vs avg_audio_len, median_audio_len, std_audio_len\n", - "text_vs_avg = {}\n", - "text_vs_median = {}\n", - "text_vs_std = {}\n", - "for key, durs in text_vs_durs.items():\n", - " text_vs_avg[key] = np.mean(durs)\n", - " text_vs_median[key] = np.median(durs)\n", - " text_vs_std[key] = np.std(durs)" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "Collapsed": "false" - }, - "source": [ - "### Avg audio length per char" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "for item in data:\n", - " if item[-1] < 2:\n", - " print(item)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "sec_per_chars = []\n", - "for item in data:\n", - " text = item[1]\n", - " dur = item[-1]\n", - " sec_per_char = dur / len(text)\n", - " sec_per_chars.append(sec_per_char)\n", - "# sec_per_char /= len(data)\n", - "# print(sec_per_char)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "mean = np.mean(sec_per_chars)\n", - "std = np.std(sec_per_chars)\n", - "print(mean)\n", - "print(std)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "dist = norm(mean, std)\n", - "\n", - "# find irregular instances long or short voice durations\n", - "for item in data:\n", - " text = item[1]\n", - " dur = item[-1]\n", - " sec_per_char = dur / len(text)\n", - " pdf =norm.pdf(sec_per_char)\n", - " if pdf < 0.39:\n", - " print(item)" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "Collapsed": "false" - }, - "source": [ - "### Plot Dataset Statistics" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "plt.title(\"text length vs mean audio duration\")\n", - "plt.scatter(list(text_vs_avg.keys()), list(text_vs_avg.values()))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "plt.title(\"text length vs median audio duration\")\n", - "plt.scatter(list(text_vs_median.keys()), list(text_vs_median.values()))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "plt.title(\"text length vs STD\")\n", - "plt.scatter(list(text_vs_std.keys()), list(text_vs_std.values()))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "plt.title(\"text length vs # instances\")\n", - "plt.scatter(list(text_len_counter.keys()), list(text_len_counter.values()))" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "Collapsed": "false" - }, - "source": [ - "### Check words frequencies" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "w_count_df = pd.DataFrame.from_dict(w_count, orient='index')\n", - "w_count_df.sort_values(0, ascending=False, inplace=True)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false", - "scrolled": true - }, - "outputs": [], - "source": [ - "w_count_df" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "# check a certain word\n", - "w_count_df.at['minute', 0]" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "# fequency bar plot - it takes time!!\n", - "w_count_df.plot.bar()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.12" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/TTS/notebooks/dataset_analysis/CheckDatasetSNR.ipynb b/TTS/notebooks/dataset_analysis/CheckDatasetSNR.ipynb deleted file mode 100644 index 18c48d0bd181830fe096852dfdfe30cba1bc47b4..0000000000000000000000000000000000000000 --- a/TTS/notebooks/dataset_analysis/CheckDatasetSNR.ipynb +++ /dev/null @@ -1,210 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "This notebook computes the average SNR a given Voice Dataset. If the SNR is too low, that might reduce the performance or prevent model to learn. SNR paper can be seen here: https://www.cs.cmu.edu/~robust/Papers/KimSternIS08.pdf\n", - "\n", - "To use this notebook, you need:\n", - "- WADA SNR estimation: http://www.cs.cmu.edu/~robust/archive/algorithms/WADA_SNR_IS_2008/\n", - " 1. extract in the same folder as this notebook\n", - " 2. under MacOS you'll have to rebuild the executable. In the build folder: 1) remove existing .o files and 2) run make\n", - "\n", - "\n", - "- FFMPEG: ```sudo apt-get install ffmpeg ``` \n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import os\n", - "import glob\n", - "import subprocess\n", - "import IPython\n", - "import soundfile as sf\n", - "import numpy as np\n", - "from tqdm import tqdm\n", - "from multiprocessing import Pool\n", - "from matplotlib import pylab as plt\n", - "%matplotlib inline" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Set the meta parameters\n", - "DATA_PATH = \"/home/erogol/Data/m-ai-labs/de_DE/by_book/female/eva_k/\"\n", - "NUM_PROC = 1\n", - "CURRENT_PATH = os.getcwd()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "tags": [] - }, - "outputs": [], - "source": [ - "def compute_file_snr(file_path):\n", - " \"\"\" Convert given file to required format with FFMPEG and process with WADA.\"\"\"\n", - " _, sr = sf.read(file_path)\n", - " new_file = file_path.replace(\".wav\", \"_tmp.wav\")\n", - " if sr != 16000:\n", - " command = f'ffmpeg -i \"{file_path}\" -ac 1 -acodec pcm_s16le -y -ar 16000 \"{new_file}\"'\n", - " else:\n", - " command = f'cp \"{file_path}\" \"{new_file}\"'\n", - " os.system(command)\n", - " command = [f'\"{CURRENT_PATH}/WadaSNR/Exe/WADASNR\"', f'-i \"{new_file}\"', f'-t \"{CURRENT_PATH}/WadaSNR/Exe/Alpha0.400000.txt\"', '-ifmt mswav']\n", - " output = subprocess.check_output(\" \".join(command), shell=True)\n", - " try:\n", - " output = float(output.split()[-3].decode(\"utf-8\"))\n", - " except:\n", - " raise RuntimeError(\" \".join(command))\n", - " os.system(f'rm \"{new_file}\"')\n", - " return output, file_path\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "wav_file = \"/home/erogol/Data/LJSpeech-1.1/wavs/LJ001-0001.wav\"\n", - "output = compute_file_snr(wav_file)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "wav_files = glob.glob(f\"{DATA_PATH}/**/*.wav\", recursive=True)\n", - "print(f\" > Number of wav files {len(wav_files)}\")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "if NUM_PROC == 1:\n", - " file_snrs = [None] * len(wav_files) \n", - " for idx, wav_file in tqdm(enumerate(wav_files)):\n", - " tup = compute_file_snr(wav_file)\n", - " file_snrs[idx] = tup\n", - "else:\n", - " with Pool(NUM_PROC) as pool:\n", - " file_snrs = list(tqdm(pool.imap(compute_file_snr, wav_files), total=len(wav_files)))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "snrs = [tup[0] for tup in file_snrs]\n", - "\n", - "error_idxs = np.where(np.isnan(snrs) == True)[0]\n", - "error_files = [wav_files[idx] for idx in error_idxs]\n", - "\n", - "file_snrs = [i for j, i in enumerate(file_snrs) if j not in error_idxs]\n", - "file_names = [tup[1] for tup in file_snrs]\n", - "snrs = [tup[0] for tup in file_snrs]\n", - "file_idxs = np.argsort(snrs)\n", - "\n", - "\n", - "print(f\" > Average SNR of the dataset:{np.mean(snrs)}\")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "def output_snr_with_audio(idx):\n", - " file_idx = file_idxs[idx]\n", - " file_name = file_names[file_idx]\n", - " wav, sr = sf.read(file_name)\n", - " # multi channel to single channel\n", - " if len(wav.shape) == 2:\n", - " wav = wav[:, 0]\n", - " print(f\" > {file_name} - snr:{snrs[file_idx]}\")\n", - " IPython.display.display(IPython.display.Audio(wav, rate=sr))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# find worse SNR files\n", - "N = 10 # number of files to fetch\n", - "for i in range(N):\n", - " output_snr_with_audio(i)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# find best recordings\n", - "N = 10 # number of files to fetch\n", - "for i in range(N):\n", - " output_snr_with_audio(-i-1)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "plt.hist(snrs, bins=100)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.5" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/TTS/notebooks/dataset_analysis/CheckPitch.ipynb b/TTS/notebooks/dataset_analysis/CheckPitch.ipynb deleted file mode 100644 index 72afbc64a17e2a46d1d2d5336990f01eb620ca20..0000000000000000000000000000000000000000 --- a/TTS/notebooks/dataset_analysis/CheckPitch.ipynb +++ /dev/null @@ -1,179 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "source": [ - "%load_ext autoreload\n", - "%autoreload 2" - ], - "outputs": [], - "metadata": {} - }, - { - "cell_type": "code", - "execution_count": 9, - "source": [ - "import numpy as np\n", - "import glob\n", - "from TTS.utils.audio import AudioProcessor\n", - "from TTS.config.shared_configs import BaseAudioConfig\n", - "from TTS.tts.utils.visual import plot_pitch" - ], - "outputs": [], - "metadata": {} - }, - { - "cell_type": "code", - "execution_count": 13, - "source": [ - "pitch_path = \"/home/ubuntu/TTS/recipes/ljspeech/fast_pitch/f0_cache\"\n", - "wav_path = \"/home/ubuntu/TTS/recipes/ljspeech/LJSpeech-1.1/wavs\"\n", - "wav_files = glob.glob(\"/home/ubuntu/TTS/recipes/ljspeech/LJSpeech-1.1/wavs/*.wav\")\n", - "print(len(wav_files))" - ], - "outputs": [ - { - "output_type": "stream", - "name": "stdout", - "text": [ - "13100\n" - ] - } - ], - "metadata": {} - }, - { - "cell_type": "code", - "execution_count": 20, - "source": [ - "ap = AudioProcessor(**BaseAudioConfig( sample_rate=22050,\n", - " do_trim_silence=True,\n", - " trim_db=60.0,\n", - " signal_norm=False,\n", - " mel_fmin=0.0,\n", - " mel_fmax=8000,\n", - " spec_gain=1.0,\n", - " log_func=\"np.log\",\n", - " ref_level_db=20,\n", - " preemphasis=0.0,))" - ], - "outputs": [ - { - "output_type": "stream", - "name": "stdout", - "text": [ - " > Setting up Audio Processor...\n", - " | > sample_rate:22050\n", - " | > resample:False\n", - " | > num_mels:80\n", - " | > log_func:np.log\n", - " | > min_level_db:-100\n", - " | > frame_shift_ms:None\n", - " | > frame_length_ms:None\n", - " | > ref_level_db:20\n", - " | > fft_size:1024\n", - " | > power:1.5\n", - " | > preemphasis:0.0\n", - " | > griffin_lim_iters:60\n", - " | > signal_norm:False\n", - " | > symmetric_norm:True\n", - " | > mel_fmin:0\n", - " | > mel_fmax:8000\n", - " | > spec_gain:1.0\n", - " | > stft_pad_mode:reflect\n", - " | > max_norm:4.0\n", - " | > clip_norm:True\n", - " | > do_trim_silence:True\n", - " | > trim_db:60.0\n", - " | > do_sound_norm:False\n", - " | > do_amp_to_db_linear:True\n", - " | > do_amp_to_db_mel:True\n", - " | > stats_path:None\n", - " | > base:2.718281828459045\n", - " | > hop_length:256\n", - " | > win_length:1024\n" - ] - } - ], - "metadata": {} - }, - { - "cell_type": "code", - "execution_count": 15, - "source": [ - "pitch_files = [wf.replace(\".wav\", \"_pitch.npy\").replace(wav_path, pitch_path) for wf in wav_files]" - ], - "outputs": [], - "metadata": {} - }, - { - "cell_type": "code", - "execution_count": 30, - "source": [ - "idx = 100\n", - "# wav_file = wav_files[idx]\n", - "# pitch_file = pitch_files[idx]\n", - "wav_file = \"/home/ubuntu/TTS/recipes/ljspeech/fast_pitch/../LJSpeech-1.1/wavs/LJ011-0097.wav\"\n", - "pitch_file = \"/home/ubuntu/TTS/recipes/ljspeech/fast_pitch/f0_cache/LJ011-0097_pitch.npy\"\n", - "pitch = np.load(pitch_file)\n", - "wav = ap.load_wav(wav_file)\n", - "spec = ap.melspectrogram(wav)" - ], - "outputs": [], - "metadata": {} - }, - { - "cell_type": "code", - "execution_count": 31, - "source": [ - "plot_pitch(pitch, spec.T)" - ], - "outputs": [ - { - "output_type": "execute_result", - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABuIAAAJNCAYAAADEcGOGAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAAEAAElEQVR4nOzdd5gkR2E3/m91mLB570465ZwTp3zKIAkQIEQQRoAJNmAZjAMGB2z8w/b7mtcBMMY2GJNFkEAEESURhFBEOed0p3j5Nk/s7vr9cSvp9ro29HdnZ3dmvp/n0SOpZ2qrprq6urqqq8pYayEiIiIiIiIiIiIiIiIijeUtdgJERERERERERERERERE2pEG4kREREREREREREREREQWgAbiRERERERERERERERERBaABuJEREREREREREREREREFoAG4kREREREREREREREREQWgAbiRERERERERERERERERBZAsNgJmCtjjPX8sClxWdOUaObN2ObFxeYJk0bbKsPDTcx/tEKZbGZ+tAj6Gk2YQO17AmzIXQAeewKI6BK2kmyF08amsQV+WzPvowB5fyOLludRFQk84sQ1+xZlyRhboEgiZgpJs39YK2Rks7VpnjS7jqS1SjrbFVElt8zzHoNtfrZxe4tPYyv8uDZ+UDdN/G3NbpP7RKAmn2rDNOWb3iZc+mWrre83pFZo3zWzX77p99927kumfhuXIYmNrLWtd4W3zECc54c47i3/nDlcTHTgJrnMQQAA9W6uhJuYiy83RnSWcf1yiMkxUC/KHmZ8Ty4fq8u4H2diLr6u9dnDsee6NsCFi/NchcakMyhx+RiUqGDw6tnDJGSNx96YuzZwZbL/weHMYUyVuNgAwCPvzDFZmRAe/KtBKtzRBz1Jhcv52S+A+zbsSsVVGstT4YxPNlbGs1fm4VbmSRXID5N1wkT2MH6Vyw+/RgVDUOHi23hs9jzx9x2n4jplrzVUuFW9T2cOs1MwSsUVkwszPFZZSYXbUu/OHKbHrzYtLgC47qn9M4cpjxSouFDj8t/UyZcjiHBetbltayaN28JlD8PWP6yglL3eKgyRdStdJ3NtC7+cPZxfIdtNZOehVyMKZUK2tcg0WrJNWF2RvQ7acBz3cBn1kI1yMlg4lj1PctwtEYWt3Pnu2pi9LAfjRKUFwCtz142pc5WyYTr5a9xvg8fdE22R6Dxir222Soi5/E8KxG8ju0TZMsJaf/qyzGEm9iD7VsgiudNd2U94bozLx3CUa5QEG8lngP7s7eTaTkUqrqGDuA7eeg8RiLzX0M+kE1yEIdEmZJ9/a91cpRARp5vpfwaAkMzHro3cxZ3bRHR4sPcodtCbrcur2esgU+Get3/+6CfKVMBF1nIjhyIiIiIiIiIiIiIiIiKtQANxIiIiIiIiIiIiIiIiIgtAA3EiIiIiIiIiIiIiIiIiC0ADcSIiIiIiIiIiIiIiIiILQANxIiIiIiIiIiIiIiIiIgsgWOwEZBHnTOYwSZg9nqiQPR4AiLqoYDAxGS7Jnk4TWyquuMjliVfPHibJcWk0XDAqjQBgiWHs3DD524hzDQARed5Mkj2MX6Gigl/l8sSvcvExvIhLY2Eo4iI0xHlLiJMGwOZzVDjkmcqVSyN8Lv9zPle59gbZC9ey7hIVV63mU+Fswr1Hk+Sz50lcJN/ZGeLqHwZTHwNAwmU/6mTdaomynMtx9Ug3UY4BIE/cFAd8rvxXLFGPAEjQvLJVSrg60icbJSv7xzKHeXI8T8VFNpsA8rqxxC2AaY8AgCXTaGpkOCKdHhsXeeKYdppXZ9vkXDjrcdc2c5+KyfaPV+cKpR9k/21+iav/kxx3AZg6127Kb81+v8mNcvV/1EMFQ9xFVibEe8t+hSvH9S4uXHl59i6dIhUTEDDPKABMzJVJr5S9ovTq5HXTQ3bmMM9gbD4mZMdRM5GXGlv/2BzXpRkViDBF7t7mkb2u9e7s9Q/bRrAe15b0KuR1QwhHuYZTfpg8AcTzNvnYAPbRhu1L9omsZONi+uQBICb65U2Z7W+lgsEj+7cMEy7iOq7pNjnbT8hoZlxLgGbEiYiIiIiIiIiIiIiIiCwADcSJiIiIiIiIiIiIiIiILAANxImIiIiIiIiIiIiIiIgsAA3EiYiIiIiIiIiIiIiIiCwADcSJiIiIiIiIiIiIiIiILAANxImIiIiIiIiIiIiIiIgsgGCxE7DQ6j0mc5iowMVlfTJc9iQCAOJ89jBenYus3kMFA2z2IFGRiyoJicgAmIjLE9vEYeygxP22cJyLLyTiKy/jMsRwPw1hKckcJs5z59qvU8Hgl2MqnKlF2QOFza3OzUQleyCPLCNj3G97bryfCrdL92jmMF1hjYqLFdfJCqia/UbF3jeY+h8ATJw9YBKSaSQT6ZF1AohkToxxjZLhOncz3VzvzRxmPObSWCcbTjF5A+4Lstdbo2SjcGutiwpXj7PniU248h+McvnvEbcoAED22zaCEvfb2GvUEGncFjB7kCTHRRWOk5VrCzAJ99v8SvYT59W4k+1VyQvAy15IqPYggKDEtUmsIZ+JCtnbaey15pe5NJqIu2/41ezxBWUqKoQTXPnPjRGZSV5rLKZtty1g9vyPl2dvxwCAibhCaSrEDcdy+WGL5I2D5RPXG3muTYl4tgSAmMsTSzxe2pArIwlZt0aF7OHCCSoqJAGXxrgrpML5o9XMYUzC5X//YyUqXNSd/bfRdR0pKnJteaYPLihzbZLCZioYou7sF6lXZ9t2XL9duJUrW4iyx2fqZPuTvN+YmGyoEdepbXJf5mLTjDgRERERERERERERERGRBaCBOBEREREREREREREREZEFoIE4ERERERERERERERERkQWggTgRERERERERERERERGRBaCBOBEREREREREREREREZEFECx2ArLwIps5TDCRPR6/kj0MAHh1Lpxf5cIVhuLMYWq93NirXzVUuCSXPVxtIPt5BkAPKychF5/1uDxhBGUujWGJCxcT5y0JqagAcPlo/ezhrGHPGZmPea5QBrnsVbOpcBWQibLXIwAAS+RJ4FNR+RUuHydqXKHcaHozhxkqFam46mN5Kpw/yuWlV89+DQRj3HUTlKlg8CIiDFlH5sYTKpzhgsGrZS/L9Tp3rp8eH6TC9QS1zGF6A67hVCAbTqNRgQoXmuz1XTXhmsqViKt/Jqq5zGHMBFdG2PYPyHspc7ot99MQk21Cpv4BuPrOr3L5zz6nhKXsFVcSkuc6Jn9bmatcvTh7OKYduS0cV7gMkca4K3t9AAB+matb4y6yMU/UCV6NKyNeja1/uHDhWPYwha1cOe55husU8OrZ721sOfaqZCVJ1glMOAMu/61HXtvE842ZIBvJ5HkD+dtskD2czXM3btvFte1Q58ok0wfnkc+kbL3FNK8NeakFJbZPgAtGIdufJuLqBL+UvWx5FbI8jhAd1wDMbgNUOBtmL8umTj4Ak8LR7M+kJiHbFmS7yYyVqHAIsz9f2gLXJrQhWSf7ZH/TOHF/Y/oWW5hmxImIiIiIiIiIiIiIiIgsgJaaESciIiLz5yUJ9t20CQevfw4HrV8Pawx+dPSxWLvTToudNBERERERERERkbaigTgREZE21lsu49Bnn8Mh69bhsGe2/fug9etQiKYunfH7112L3/nAn+DRXXZdpJSKiIiIiIiIiIi0Hw3EiYiItAGTJNhn8xYc8ty2wbZDn3sOhz73HHYfGp5T+J5aFX//o8vw9gvfT6/BLyIiIiIiIiIiIlNpIE5ERKTFnf7gQ/i7H/0YB2zcOK+/s/qJx3HGww/hmkMObVDKREREREREREREOpu32AkQERERkrV4/6+uwle+9OV5D8I976+u+Cm8JGnI3xIREREREREREel0LTUjLqjYzGH8WvZ4TJI9HgAIylzHZW4rkUgA4TNbMoep77mciisucEVlZL9c5jBeRC6JVuGCeXUuvoCIz4upqJAf4cpW9yPZywgATBycvZwEFS4fPa74w6tnv05rvWTZIpfp66py583miOvNcvWWqdS5cPVo9i/tiKxboz7uwlnZM06FK/jZ82Ssmr2uAwCQ9Y9fNuiqVvEvP/g2XnXfPdTfGC524anB5TjquaenHD94/Xq86be34werTgAAGHJMLurmwsWF7HlS2MKVrTjH5b/1qWDwmMvNcL9tvJqnwj0+uiJzmO6wSsV16rLHqXCDwQQV7rHSysxhtlS5grx+opcKV61nr/+tz5URsMHIcN4E8f4fedtOQi4cXd91ZQ/D1j858sQx7Wuy+oEh27txnntHNDbZw/lkG40tkzYkbhxku8kGXD6aiMsTppwwz+gAf/9ly2RhKPuPK2wl2sgA/AoXztSz/zjrcwXZxGSlwGJuG2w5Trj8T7qzt7cMe43WuDQi4i4Ar5Q9L63PXaSmyj2TWp/LS6ZN7tXI/g7up8GLsl9vbF9mOMJ1pnklrjJn+juifu7Zxi+RdfJE9ucbto60m7dS4XIxd21HKwcyhzExWbcS9ygAsHmiMc/W/2Q420d2eBB9aaZCNpwMd93Q91LifmMDsnHXolpqIE5ERESAPbduwee++VUcsmHdrN+NjcHaFTvhoV12xSMrdsdDK3fDQ7vshg29/QCAi7/6XzjmmbVTwvzp1Vfg8sNXoRKSA4wiIiIiIiIiIiICQANxIiIiLeXUBx/BZ7/4LQyUy87PH9xlN9y6z754aJfd8NCuu+HRnXdBJbdtQM2vpt/k/MTZr8UlX/uvKcd2GRvBO26+Dl889azG/wAREREREREREZEOooE4ERGRVmAtLvzVtfjIZZfDn2ZtuC+e9lJ86uWvRpxhWZg799oXvzjkSLzioXunHL/whqvw3WNOxEiuZ17JFhERERERERER6WTcgsoiIiLSNIVaDf/5lUvw0R/8zDkIVw5DfPCCt+PfznltpkG45336zNcg2mGPnd5qBe+/7pd0mkVEREREREREREQDcSIiIkvaHlu24gef+Bxed9tdzs+fHlyGCy78E/zsqKPpONas2BnfPWZ16vhbb70Rewxtof+uiIiIiIiIiIhIp9NAnIiIyBJ18kOP4Sf//J84/JnnnJ/fuN8BOP/9f4YHd9t93nF99oxXYCLMTTmWS2J88JrL5/23RUREREREREREOlVL7REXlJPMYerd2ZfoSnyTOQwAeHX3nj2zCYZLVLhkeCR7XMU8FReWk3sEmdzs39mBJYeHLVuaIy5YzGQlV0QQF7gymfQWqHAmyZ5Qk/3ynFe4Wk/2glJZxuWjX6GCobiFK5Qmyp4pHsKmxQUANuzKHoasW0GWkcSS1w1RCXnkT4M/zbVmLd591fX46PcuR5C4M+DLp56BT7zyNdmWopzh0t7c3YevnvRS/PG1v5hy/DUP3Imvrj4D9+2219zjAX3aENSyh4mz32oAACbmTlxQ5Spzr5o9PjNdGZnFsiLXthgsZA/HXmu/2XIQFS7ncTfuLZXuzGGGS0UqrrEJ7v4bT2Svy4PR7G1dAPCJ8gjw90S/mj1MOEE2nEgBd9lQ/Br53FDlatfcSPbrJhivU3Fhmn1MZxWTdWst+29LcuSDA9uWIdiAfCgyXBqtz8VnmPxns5+oRwCAvG1Q6YyI/gcACCrscwMRH3mNerWYCseUEQAw1ezhbJFsFCbkdUNcp0meO9f+CHfeTEQ0rgHAy162bJ4r/wm4dhPLr2TPy6BC9hOS2c/0yXjkMwpb/8PjwkW92TvTKsu4azsocGWy+MRE5jAm4urIaHSUCgcyXEBsZWELXP6zbRlTJdugBDqN5L3N5oi+u4Arx7SY7M0h2heGjatFaUaciIjIEpKv1fHvX70Uf3/pT52DcJUwwId/5234l1efR+0HN5Ovrn4pNnX3po7/5VU/4TtWRUREREREREREOpgG4kRERJaI4x9dg8v+9XM4/6Y7nJ8/O9iP8//qj/Djo49dkPgn8gX89xmvTB0/8cnHcfrjDy5InCIiIiIiIiIiIu1MA3EiIiKL7OBn1uEr//VVfO8Tn8fhT7v3g/vtQfvhtR/9U9y39/z3g5vJ91ediDXLdkod/4urfgpvmmUyRURERERERERExE0DcSIiIotkj81b8e9f+Q6u/L+fwVn3PjTt975y5il4+wffiy195H6dGUS+j0+d9ZrU8YM2rcfr77ltweMXERERERERERFpJ+Q2ySIiIsIaGCnh3d+5AW/62R3Iz7CpcyUI8NG3vwHfO/m4JqYO+NXBR+KOPfbBMc+snXL8T6+5ApcfvgqVkNusWUREREREREREpNNoRpyIiEiTFMs1vPeS6/Gj93wOv/ujW2cchHtot13wO3/1vqYPwgEAjMEnzn5t6vAuYyN45y3XNj89IiIiIiIiIiIiLaqlZsTF+ezjhgnxC6O8yR4IgBf5VLh8yIXz+vsyh6kv55Y1i7q5ouJXs4cJJrj8r+YtFa7eN31H+ExMnP28JZuoqGA9Lk9qy4tcuJ7svy0OuTSamDtvlniNgKkPAMCQk38SMk+8KPs+XN5omYoLAVf/2CD7CTDlGhWXV+PeGdk00U2F687VM4epzVL/B/UYb/rFHfjDS6/DiuGJGb/7zLIBfOq8V+KHJx6NxPMA1yVCbtXmZzgF96zcF7886Ei8/JF7pxz/gxt+je8fsRrDXTPfTzzudMOvZK8TmPoAAMBdooDl6q2EuE+F+YiKqzskbsAAVuRmLp8uCZmRz5X6qXDPjnPhIuK+HVu2kJAMUf4D8j6avaqbjI/Lk5gIZsj8N9xlA5NweekReRlUuYo8N8z9uIQ4b7V+rgHkRWw+cnli89mvbWu4suWPcXUrfCI+9l6T4xq8TNsOAFDJHsQjr1HLNVtR6+LCMQ0FL+Ly0a9y5y0cyV4B+VXu+Rfkc5shnm0AAMQzsKmRhSvm0ugRdUmS5861qbD1D/m8x/RTkafaVMkHB7KeNEw62a2yuSQiHM8eYWEzUSGDv26SYsjFR+RJOMalkW2T1Fdm728NyDaCv3JnKhwGsqcRAOKefOYwdD1Otrcs0W4y7L2NbFtQdSRA1SWWbNuZOpknJNtVaGp8railBuJERERaiUkszrn+fvzJt36DPdcPzfjdrd1d+K9Xn4VvnnESauHSuD3/x+mvwcsevR+BfbG12Fur4H03/hL/cvYbFjFlIiIiIiIiIiIirWFp9PSJiIi0maMefgYf/fwVOOyJ9TN+r5QL8aWzT8cXXnE6xorcLNaFsnb5zvjeS1bjLXfdOOX4W+68Ed887nQ8M7B8kVImIiIiIiIiIiLSGrRHnIiISIPt+8xmfPVvvz7jIFzd93DRS0/G6f/0EXzqda9ccoNwz/ufU16BUjh1ebIwifFn116+SCkSERERERERERFpHRqIExERabA3X3E7ctH063FfftrheN1n34+PvfX12NTf28SUZbe5pw9fOeFlqeOvfvBOHLHuqUVIkYiIiIiIiIiISOvQQJyIiEiDnXb7Y87jN6zaD2/+9/fir//ijXh612VNThXvohNeis3d6QHDD//mJ/Qm6SIiIiIiIiIiIp1AA3EiIiINtNdzW7D3uq1TjsWewR/84+/iff/4u3hw/10XKWW8Ui6Pz57yytTxE556HKc98eAipEhERERERERERKQ1BIudgCzqRZM5TK03e5i4kD0MAERdPhWu2j9IhbMme7jaAPfbLBcMXj17GL/KxeVXyN8WcePRJmLKFhUVkhI348R6XJ6YJHt8fo1LoxdRwagySZctMlwccvmfhNnLpBdw9Y8NuPJvvezhjM/FlXRPv8TjTPbuH6LCDebKmcM84S1/4b9feW96YOqBQ3fFI6fsgmUoTTk+0ctVClGFPG/EXd8k2/797dNOwNvvuAb7b9405fMPXftTXL3qYCQ7lAm2Tk6Y64aclMfkBwDUernrjUlnVOfimqjnqXAbvZ7MYRKykfDsWD8VLoq58h8G2esSsvkDm5AhmeJPlmNDXjdxgbzf17P/ODNORUWfuDhPBiRmBic+2W5l23bEaWPagwAQDleocHSbhAjn1bm2hUkSLlypljlM0sO1ETyijQYACVm2bJ64T5H1D/vcwMbnZ28SIixxZcSvkOEmiAduklfjTkDSzbVJEBF5wtYj7A2fwN5/k/4uKpxH1D8sQ9atNJ9rJydE2ynJkSfOcIWrtHP231bv7qbi6l0zQYVj79v+WPZ2QrCZq3/ifm4f9rgrzB6mh6vrwiLZUVjj6n+vRJRJsk2YdJH1P8FUyI67kHyYIttbqGcvyxbZyyMAYIbtUmZEtnfB9PmR5bhVaUaciIhIA62++YnUsZtO2HcRUtJYke/jU698Ter4QRvX46wH71+EFImIiIiIiIiIiGxjjCkYY24xxtxtjLnfGPOPk8f3NcbcbIx5zBjzHWNMbvJ4fvL/H5v8fJ+FSpsG4kRERBqkUK5j1T3PpI7f3AYDcQDwy8OOwO177ZM6/rs339D8xIiIiIiIiIiIiLyoCuBMa+1LAKwCcI4xZjWAfwXwaWvtAQCGALxn8vvvATA0efzTk99bEBqIExERaZBj7noKuR2WZNmyrBuPHrDzIqWowYzBf5/1itThUx57FPtu2rgICRIREREREREREQHsNs9vchBO/mMBnAnge5PHLwLw+sn/ft3k/2Py87OMIdcVnoUG4kRERBpk9c1rUsduPn4fem+ApeiG/Q/EmuUrUsffestvFyE1IiIiIiIiIiIi2xhjfGPMXQA2AvglgMcBDFtrn9+k7xkAu0/+9+4AngaAyc9HACxfiHRpIE5ERKQRrMUJt6YH4m46cb9FSMzCsZ6Hi088OXX8/NtvQbFGbpAsIiIiIiIiIiIyu8AYc9t2/1y4/YfW2thauwrAHgBOAHDIYiRyR8FiJyAL62WfUWCD7GGSXOYgAIBaHxcO4GZK+DUikKWigiHDUXFFs3+nodg8iWf/zo6SkIur3sWVkSRo3iVeGE6ocOEYkZEsQ54AUlDmCpeJiLyMyHwkZ2oZmz2+pMBVrv4wV443l3uocIzAS7D32i3YdcPolOOxZ3DXcXsi8KY5p2Tlan2ybCWNmZn3g2OPx4d+eQWK9foLx/oqFZx795347vGr5/W3LfOKUItMOEzC7OctGePqrfU9vVS4apz9eivVuTSWa1y4aoULlxDlP6lz76z5ea5ONmH2+p9pjwDktQYgGOcuuKCcPYxXJ+tI8t4WTnDx5Uezn7egxJ24JMedOJNk/22WrFvjbu5+zzy3AYBXzZ6XzHMlACRFrv7xLJH/Oa79k4RkGalzZdKrZQ8XVNg2MvncTD5f+kQdFJS5ZyKvxoUzRNmKerhrNBrIU+HY522vTtStWye4yOpcIbE9xexhfPL5K+Yykn0G86r12b/UKIHfvLjAtZ08sv5h22kxcbnRaSSuNYDvJ7Qhcb497t5GxQXueqPbTTv1cwGJ+n9bhNnDsW0EGnG+k94uLqqJChXOsHVkQjzvkfcoliXvG6ac/cVsm6P7aSNr7XGz/n1rh40xVwM4CcCAMSaYnPW2B4BnJ7/2LIA9ATxjjAkA9APYwiZsJpoRJyIi0gAnOJalvPfI3THRQ3ZaLGGjxS789KijU8ffftMN/AOBiIiIiIiIiIgIyRizkzFmYPK/iwBeDuBBAFcDeNPk194F4EeT//3jyf/H5Oe/tnZhOrY0ECciItIAJ968NnXslhP3aXo6muWbq09JHTts3XNY9fRTi5AaERERERERERHpcLsCuNoYcw+AWwH80lr7UwB/DeBDxpjHsG0PuC9Pfv/LAJZPHv8QgI8sVMJaamlKERGRpahroooj7302dfyWE/ZdhNQ0xwO774G79twrNfD2uzfdgLv22nuRUiUiIiIiIiIiIp3IWnsPgNQSTtbaJ7Btv7gdj1cA/E4TkqYZcSIiIvN1zO1PIYinrvW9cacerNl3+SKlqDm+dWJ6Vtyr770Ly8bHFyE1IiIiIiIiIiIiS48G4kRERObphFvWpo7dcuK+gCF3bG4Rlx/5Emztmropci6O8abbb1mkFImIiIiIiIiIiCwtGogTERGZD2tx4s1rUodvPrF9l6V8Xi0M8b3jTkwdf8stv4WXJI4QIiIiIiIiIiIinWVB94gzxhwM4DvbHdoPwMcAfH3y+D4A1gJ4s7V2aPY/mD0N1YHsYeK8zR4IQJKngiEJufj8cvYMyY1yszO4FAJR1+zfScXlc3HF3WSnLxnMEOFisoxQhR9AHHGxBRPZz7hX50pJrY874XEue56wafTrVDD4Na5wGSaZXnNnXtkccfsgZ4f5VSoYNo70UOGGSsVM3z94zXqs2DIx5VjN9/G9nY5B6amZL3ozxt2GwxHuPZqglP0chBMzf37Zfifjvdf+Bt52d4o9h7birDsfxLX7Hp45PpNkvwDYMlIY4q5Rv8qFqywPM4epB2S95XFpHK1kv1GNl7ibW5I0930wGxHxxWTdasn2VjX7PdFEXFweGc6STw8JES4kV7kNKlz5L2yNqXBJmD0v6z1c+6fexV03TN3KtHUBIKhwhSQocfmfKxMNXrLdlPjkBUC0gWxA1pHkg5sNyTY5k06yamXLJJsnCZEllUEuH8vLybJlC5mDGMtlSFjiwpmYjG88e53gM88oAJDP3kYDAMs837DlmHzJjb1uEiZPfLJNUqpR4RBzPy4hflqc48qxR1blHnFrY+71AJB0ceXfH6tQ4SxRtpi2FgBUB3NUuHp3855TvIg7b7kxrt2U3zDLA76DqXAP3IYrIrAF4vmSbTbluPJv6mSHK3EPtgHZUU5XQFw4WyTOG1mPt6oFrVmstQ9ba1dZa1cBOBZACcBlAD4C4Cpr7YEArpr8fxERkZZz2u2PpY7dfMi+KDGNxxb0bP9yXL/PIanjb77vhkVIjYiIiIiIiIiIyNLSzFeRzwLwuLX2SQCvA3DR5PGLALy+iekQERFpmNNvfzR17OqjDl6ElCye7xx1SurYKU8+jD1GNi9CakRERERERERERJaOZg7EvQXAJZP/vdJau27yv9cDWNnEdIiIiDRE33gZqx5+JnX8N0cetAipWTw37H0InulbNuWYB4s33ffbRUqRiIiIiIiIiIjI0tCUgThjTA7AeQC+u+Nn1lqLaVZtN8ZcaIy5zRhzm7WdtWaoiIgsfSff9QT8Hdbif2qnQTy+606LlKLFkXgevnvkyanjb3jgZuQjcs8HERERERERERGRNtCsGXGvAnCHtXbD5P9vMMbsCgCT/97oCmSt/YK19jhr7XHGNHPynoiIyOxc+8NdfdTBALNxe4u77PATUPWDKccGqiW84tG7FylFIiIiIiIiIiIii69Zo1tvxYvLUgLAjwG8a/K/3wXgR01Kh4iISEOYxOLUO6YZiOtAw8Ue/OLAVanjF9x3Q/MTIyIiIiIiIiIiskQEs39lfowx3QBeDuAPtzv8LwAuNca8B8CTAN4829+xBqj1ZJ9hEOedq17OKAkzBwGwLY0ME5PxEcOo9e7s+QEAJuF+nCGii4pcGm3Y3OVLo57sJ8BEZFxdZP6TZSsXZo8v6uaqE/a6ibqyh/ErXFxBmSuTbBUbTGQvKM2eM2wq2dNoQ5+KK8lRweCRhcvOMdxhj6/DipGJKccqYYBbXrI3/PzcLr64xp25ej8VDFF39jyp9809zNfOPBmvfei2KceO3PAUDhl+Gvfvsuec/kY4nil58xIVuDISFbiyHHdlr0u8AnfjyAXcDcAQN+5x5Lm4qFBAErPXNhHIJ9sk7G2jnv23+ZXmthGSkMwTYqZwYSsVFTy6vcXVyXGOqFvJth3dJiTa8n6VfG4gyz9blr1a9sLMlEcAQEi2uIj4rMelMclx9yhWEmRP59heXD7W+ppcJktE/wPZtjDkoyxTl4cTs3/HpdrLdnhwwerdxPN2UqTiCjeVqHAeccNnn4nYFTcs2W5NiHR6EVeQkyLXCZfkuOftuJg9L5M899vYupzp72PvbUmOq5M9siwzj+lxkey+Zqst4r6RNPf2i8Qn25IDhcxhAvLhxtTJBw4CXbd6XPlPyCah9bOn0yRc/eMNk50rVW57EVvI3i9gi2SHX4ta8L5ba+2EtXa5tXZku2NbrLVnWWsPtNaeba0lH7NFREQWx+m3P5o6dtPh+6GS76yGxPbu3nMv3Lf7HqnjF9ylWXEiIiIiIiIiItKZtPGaiIgI4fQ70gNxv3nJgYuQkiXEGHxr9cmpw69+6A70lcnXr0VERERERERaTCGq4k2P3IC3PHQtemvczFsRaR8aiBMREclocGQCRz76bOr4NasOWoTULC0/ecnRGClMXRaoEEV4/f23LlKKRERERERERJonH9Vx0ZX/gb+87TL8+R0/xiU/+yT6K3o5VaSTaSBOREQko1PuehzeDsukP7HrCjy5y/LFSdASUsnl8P3jjk8dv+CuG2Fsc/fyFBEREREREWm2k597EPuMbnrh/3cqj+KctXcsYopEZLFpIE5ERCSj0+94LHXsN5oN94KLT0wvT7n38Gac9GR6OU8RERERERGRdrLX2KbUsf1G1i9CSkRkqdBAnIiISAZenOBUDcTNaO1OO+HGvdP58ZY7r1+E1IiIiIiIiIg0TxhHqWP92idOpKMFi52ATJo0bGjIcHb2rzQ0QjadDC99/5iTqJg9V6LldSouLx9z4XzuzNXj7GcgGPOpuJIebjk3r8aVEpNkD2fJ69OQK9XVe7OfN6/GxRVONPNqAwpbspcTr5Cj4vKq3PWGKPv1ZmLuGo27uELSW6xS4YyZuWwd9dgzGBgvTzlWyoX47T4HIC5nu636vVz+d6/kflvgZz8HtYhrKnz1lSfh5C88MuXYGU88gP6+zXh22eC04Qrrs5f/kHyeqfeQdSRXlMG0FJIqd9+YqJJ1wizl3yUMuQxJEu7+GxvuhpPUs+elGSfv23ny5kb8tCTH5aNfJe9tIReMYckk+lWybdfNRVgZzH7i6j1UVEjI/GfqraDM5Uec58Il3OWGsJTPHihmrxvyBmCzx2fIOtJ6XP6zbXkbZA/oV7i40McFi/NcXiZEEyguzv4dl4B83siNZQ/D/K75oJ8Tiedtls2TFRBRlzDXzHzCmYhrkwRbs+9lZUOucNkCWSjJ+o65BhKyHjFk0YoK2c+3V2fbP1z+mzrZT0WUyaiLy8jKABcuZh6ldiiOgZ/uSO2rT6Tam7VerhwX2b5ky1wA3M3NxFwZsX728m8DLkP8Mtfh7ZFtSRNl7wNKitwDQLyMazh5NXYQgGgnE23kVqYZcSIiIhmcetvjqWPXH3YAauSDZ7v69eGH4tnBgSnHfGvx1utvWpwEiYiIiIiIiDRB3jEjbqCSfYBbRNqHBuJEREQyOMUxEPebIw9ehJQsbbHv4+JTVqeOX/DbW5Crk29YiYiIiIiIiCxxucixNGVVS1OKdDINxImIiMzR8qFxHPZ4eoNlDcS5fefkE1Dzpy4HstPYOM65695FSpGIiIiIiIjIwsrF6SUIByoTHbcUn4i8SANxIiIic3Ty7U+kjj221wo8u2L6Pc862ea+Xlyx6sjU8Xdcd+MipEZERERERERk4bmWpgxsgp4au1GqiLQ6DcSJiIjM0am3PZY6dv1xByxCSlrHN04/OXXs+CfW4tBnnluE1IiIiIiIiIgsLNeMOAAY1D5xIh1LA3EiIiJzEEQxTrpzTer49cftvwipaR237bcPHtxtl9Txt1/320VIjYiIiIiIiMjCcs2IA4D+qgbiRDpVsNgJWJISLhg7qmkTQ4Uz7pcrZuTVubjYPAERnZePqajCvPsmN5skJs8cESzuITOym/ttEbn0dNTrz/6lHYTD2cMAQDDBlUnLnDay+HvEtQYAfpULV1mWvWr2ohwVl7eZK1vxQFfmMCbmyr9X5q7RUoXLE2vdBeX4B9aid2LqSR0v5nHDPgcAI1wak5ALx64qH/rMOeDKyHj3i3X5N85ejf/39R9O+fzcO+7CR999Hqw3NQ+sn70uiQpUErl6BIBf48JRJ26a8jibhGxbxESmRBFZ/mPuvpHUyRNHtIFsjrzayPuNIdJouEuUrkgM225l25JUZFywaj9XtiorsoeJurkMScgyyZy3eo3LSLbdFBXIe6KX/SYQlrj892tc/ueGst84/DKXkV6dq1ujbq5rIM5nLydRkYqKRj8DEyyX/TBs444oymwa2WebsMT9uHAse79AbsM4FRcirg/CFrM/b5g6Fxe7r1RSCLnoguzPe16Fa5R4bH1Hhgsmsv82f4K7R7HXdkKctjjPxRUXuDqyNsg9b5ske6aUl3P3KPZ+wz4nbi9MphmIq09MOb/W4/K/2sslMg6zxxd0cXH5VbK9S6TRL5P9TTWy/emTz0TELcBUufuGSZr5AAaAiM/bMroACVm6NCNORERkDs6485HUsRuO3B9RQPZmdJDLTjoalWDqw1N/uYL+UnmRUiQiIiIiIiKyMHLTzIgb0NKUIh1LA3EiIiJzcMadj6aO/eaYAxchJa2nVMhjtDv9OmKOfSNYREREREREZInKT7NHnAbiRDqXBuJERERmscvmERzy1IbU8WtXaSBurqphejmRfJ1cv0xERERERERkicpF082IKzU5JSKyVGggTkREZBan35WeDffAPrtg47K+RUhNa3INxBXq7OZWIiIiIiIiIktTXktTisgONBAnIiIyC+eylEcftAgpaV2VML3juGbEiYiIiIiISLvJTbc0ZVkDcSKdKv16+hJW78keJi7azGGSdF/hnBh2qxtyONT62cPEBS4uj5y0wKTRkPlhDBeuu6tKhSv7SeYw1dE8FZcx2csxACBiMzN7kLjApZG9bpJc9vhMzBUSNo30aStkP2+1PrLiQhcVytSzl/8kz91y/BoVDEnMlf/+3vKU/w/rEU657/HU9247eW/0dVcAALU8N6DUX6xQ4UKfK5T1OHulHHjZzzWA1AVQzTlmxEX11PeiLuLaJpNI87i6xK9mD1evc3FFEXEDBuB5ZMVFiGvkPYq8txkiPva+Yck2iUdUJbkxLrKYbe+S4+f5oexhujdydV1+M9e2GzqomwoXdWevhJg2MgB4ZJ1gicuGaWuxcQFAXCTbaTZ7OuNc8/IRAIqV7A9TJuJubibhzptHtO0AwBDPiX6VaxPWyYUI2LIcTGQvJybiyhZT/wOAFxHlv0DepIhrDQC6NnB1eVjKXriSPHdzMx53cduAqVypqGB9sv0TcxFaor2b5MibGxku7uLOd9/TRJ1M3rgt2VFVXUbE5XNxdW2kgiG/hWtvbT4qex9EbYBsI5B9mUwf6I71+HQz4vqrE1OvL/Lxy5I9+pVlRF1C3jbCcbbDO3sQv8jW49yPC0IuvnCoPPuXdpAU2f4+jj/K9VNRHfNk26JVaUaciIjIDFbd/zS6y1NHA0d6Crjv4N0XKUWtyb1HnJamFBERERERkfaSi9xvWAxqaUqRjqWBOBERkRmcelt6NtxNx+yLmHwrtVM5B+JqGogTERERERGRNmItcrF7NrCWphTpXOpFFBERmcEpt6YH4m447oBFSElrqzr3iNNAnIiIiIiIiLSPIInhTbO+Yn+l1HHL8YnINhqIExERmcYuG0ew7zNbUsdvPHa/RUhNa3MvTUluiCIiIiIiIiKyBE23PxwABDZBb43cg0tEWpoG4kRERKax97NbU8ce3H8XDA10L0JqWpv2iBMREREREZF2l59mf7jnDZTHm5QSEVlKNBAnIiIyjUIl3YDesKJ3EVLS+jQQJyIiIiIiIu0uN8OMOAAYqGifOJFOlO4VW6oMkKS3l5lTuMxByKV6rc+Fg89FaOLsP86vUlEBCRksl/23xRU2Izm1CncZJFUinRE39m3JcEwZAQBTzR7Oq3NxsQxZJhlJjgtXJydNFbdkv25MzNUj1nDnzUuyx+fVuGUIvWqRCpd4XJ70FV5cJmIA5dTntmimfGc+6jFX3/Xn0ulaKFsrjZn9N9eBOI8oJl5E1j9sMHL8MC5kL5N+mav/a2NcxWVy2StXL+AqZJ+ICwBiy5042+3eMH3GMOy9jQxmicZkxFWRVHkEADL7qes0zpPn2ufC1fq5PIl7s5ctUyPbdhUyHLEXiSVf2WTa/wAQdXPhKsuyJzQ3wsWVH81+rgEg6s1eJ7NttHCsRoUD0bYDgPKuhcxhagNcXEnIhfOIZxsA8GrE8zaZ/WzbgrnfBGUyH8kVxdn+lXAT0VFNXjdJkelsApIw+33bxOSDrEeW43GuUJqYuLdVuUJiC1y71R/hnolM1JM5TL4ne10HAAnZ6xr1EOeb7stk27vk9ZbLHo5tk/hk3WqY2/12Pysfz3wtDFYmXvw+ed488n5jiX4Suk1Iln+mv6/WR5ZHRz/FXHRF3IkLguyZaepc+5Pty6f52X9bMtjHxfUMF2yxaUaciIjINHK1dMu9RjbUOl0lTHdwaEaciIiIiIiItJPZZsT1V0pNSomILCUaiBMREZlGrpZ+86iWa+6s3XbhnhFHvlotIiIiIiIisgTNNhA3WNbSlCKdSANxIiIi03DNiKvmNSOOoT3iREREREREpN3lotn2iBtvUkpEZCnRQJyIiMg0nEtT5jQQx9BAnIiIiIiIiLS72faI09KUIp1JA3EiIiLTcA/EaWlKRlV7xImIiIiIiEiby2tpShFx0ECciIjINNx7xGlGHEN7xImIiIiIiEi7y0UzP+cOVDQQJ9KJWqo3MSrazGHiYpI9IpM9CACYhAtoAyKNABJiHNXE5I8jJUwJq3Ljw4mfvXwAgOWCAXUinQEXmcmlBwPmxJJl0hInrs5eOFwwS+SlJbORzUevxkUXFbLH50XcdROOcTOSrJ89PiYMALqMJDEX30Qt98J/e+V0/Tzm56d8BwAKAZeP+/RtocKFhrtvPDUxmDmMMVy9FeSnXnBRMX0+Ckk99b24i7i2yWvNkBPywipXKJMwe7g4T943Qq6MBLnsmRJH3CzRpEQ2Q8n2FpiyTLYtDHm/T4jfFnVz+REXuDLCtnfjYvZwlX6uHrdegQxHBaPbCQzDtmWIm6kh8yPOceU/LpDh8tl/W72HO2dl6uEGyBP1f34zeXNLuGvbq3Dhat3ZC0q9h3xuC8k6mXwGptI5vvSfG8JxMh+5IoIkIJ9Jw+ztC1PmMtJjrxuPqCjJuJj8AAAEZP8KEZ9nuHNtylUqnC2VuXC79mUOE+fI30b2N/mV7GHi3OzfcYZLL1wyJ9Yj24T57GHqveR9w+fSyOT/9k0EP5z5maq/OoFa77b/ZstIQrR/ACDimsmUgLtEqTa5T95HbZUsW2T5T4gXu/0Jro5kJXmuUjDM/Y28b7QqzYgTERGZhmbENY72iBMREREREZF2l59tRpyWphTpSBqIExERmUbetUecY0BJZld1DGC68ldERERERESkVeWimZ9zB8olGEtOMxaRlqWBOBERkWnkHDO2XANKMrtKLr28QUF7xImIiIiIiEgbycUzD8QFNkFvhVj/UkRamgbiREREppGvOgbi8hqIYziXptSMOBEREREREWkj+VlmxAHAoJanFOk4GogTERGZRk5LUzaM9ogTERERERGRdjfbHnGA9okT6UQaiBMREZmGa6ColvMXISWtzzWAqYE4ERERERERaSezLU0JAIMlDcSJdJqWeq0/7rKZw5ju5nXy2RrZOetl/10AYJF9Y8+oh4vLL5FjtqZ556zQXaPCRXXuvNUr2cOZfEzFFeS4PInJ32ZjkzlMUM4eBgCSgCuTSIj4uCQiIWvKqJuL0B/Knie1bu4a9avcjwsmspdlY7lzHRe5cAlRjgFgeLz4wn/75XTcW6LuKd8BgGKe2+vs/uouVLiVPeNUuO4gez05Vs9TccX1qWWyZHKp7+RqUep7QTX7eQvHuHNtyP2xiVsbAMAnblO1JrfUmPtGQt5r2DqZ5ZWaN4ieFLjCZYh7G1uOLXv/5ZoyiHPZ44uLXCGJq+R9g0gjAJhi9naazXH37SQi6zvivCXprT3nxIZcobQ+99uslz0v/Rp5rsm2TFQgzveK9H1zLoJxrq7zK+TFzTTJyXoLZPn3yC1pDdGWZH9bVJz9Oy4J0UwzlsvH3Abux3l1LlzcQ/y4bu66gWHr1uy/LS5wjTu/wvUJmDp3bduQaBOS9bhh9+Du66KC1Xuzx1dnn+3r3H0jN5o9nEfG1fMc15fGlH8AiLqzh2H7BOj7DVFPbt+OzGH2G09fNL7td5F1csI+2hBNEr/KRcX2pTFtC7b8s2KmbQeg3pe9gc22P/0x7sRZ8hkgLmS/B3vkPapVaUaciIjINPK1dAO6kiNbJR1OS1OKiIiIiIhIu5vL0pSD5VITUiIiS4kG4kRERKbhGiiqsm9sdrhqmB7A1ECciIiIiIiItJPcHJ5zBye0NKVIp9FAnIiIyDScA3GOmV0yO82IExERERERkXaXj7RHnIikaSBORERkGvmaBuIaJfI9xDvsvxEkCfy4s9YEFxERERERkfaVizUQJyJpGogTERGZhnMgTktTcozRrDgRERERERFpa3PZI26gpD3iRDqNBuJEWlS+Vseha9dhcFRv0YgsFO0R11gaiBMREREREZF2pqUpRcSldXoTDZAUkszBwlz2Ja+CkFsmK8pz45q+b6lwcWxm/9KOYeo+FVfSkz0uALBEGnMFrlPWGC4fwYbLZS+PNiLHvnMArMVBT2/EaXc/hlPveQzHP/gkCvUIsTG45ugDccnZx+Oaow9E4r0YhyHLFhMq6uLiMs1clY481UmeC2dGyfhCIq7sxXEyMi6YVyfKP1eNIDfMBZxYzt3iavG2a8iPYwTJ1N8ZeR7K1WIqTL3GxTXQzzW+R6oFKlw9zn4PiGKu3rLVdFzVMARQnnIsN57A5l78rl/Nfr79WuYg88KWZUPc3pgwAJ9GmxABq+S9jUxjM3l1LpEmIduE5ezxBSUyjWSb0DBlBEA4lj1McRN3k8oPcxeOXyVuwADqNSIvA+63JT1kw4mJjn1lk21bk2XLEumsd3FxRQUunFfPnidBmbtGi+R9w4vIZ9Jc9jBJgXxGCchwjjbJXCREfJaLCl5Eln8iWEL2AsV58rrp5jLFekSbsEo+3LBtEuaEN7n9Y32yLW+yJ9SG3Ln2HauQLGR81b7seVLvo6JCTLYlw/Hs9Q/7TFRaSVTk4J83EqKfKslz13ZENmbqPcT9Zrv2T2jnMCOuPI7aQELXCX6Z+21JSLbTCLkR9pkoe5iJ3cg2GtluSkLut+WHmVDcNcqFApA0r4zEhdYZmmqEzvq1Ii1mxcgYTn3gMZzx0MM49Z7HsPPweOo7vrU4845HcOYdj+C55f249Mxj8N0zj8WGZWRLUUQAAAXtD9dwzhlxc3hbUERERERERKQVzGXVl8GJEkyS0IPlItJ61KMosoTk6hGOf3QtTrvvUZx+/yM4/Kl1mcLvtmUEH/zu1fjj71+Dq485CBefdQKuO+qAKbPkRGRu8vX0W2yVHDdbQrapBlqaUkRERERERNrXXF429a1Fb6WC0e6uJqRIRJYCDcSJLLJCtYYLrrsNL7vnYax++AkUa7NPYZ9NkCR4+W0P4eW3PYRnVgzg22ceh+++9FhsGuxtQIpFOoNzfzjNiJuXbUtTTqWBOBEREREREWkXrpd6656HcIetL5aNT2ggTqSDqEdRZBHtv24jLvrUV7DnlmEqfM33kYtn3itkj83D+ItLf4U/+/6vcdWxh+Dis47HDUfsD6tZciIz0kBc4zmXpnQ8pIiIiIiIiIi0IteMuI39fdh9aHjKsWUTE1iLnZqUKhFZbOpRFFkkBz+9Ht/65Jew02h637fp1AIftx6yN64/an9c/5ID8MieO+O0ux/DW391G156xyPw7fQbaoZxgnNueQDn3PIAntx5EI/suRKx76Hu+4g9D1HgIfI8RL6Pej33wn9v/+91gwO4+rBDMdTT3YgsEFnSCo7ZqRqImx/3QJxmxImIiIiIiEh7yDkG4tYP9KcG4gYmSk1KkYgsBa3To2gBU80+gydJsoeJoukHM2bieVy4gR6u4vVM9vhGywUqrnI5R4VjSli9whVLr4vL/+5ijQpXJs53d7EKADjksfX4n09cgoGx8qxhHttrBe44fm/ceuzeuPuoPVAtvLi02y4Yx6Mv3wX/5+Xn4n82juI1V9yH11xxL3bePPPg3t4bh7D3xqHM6QeAdSv68M5/+T2s36l/yvHRjT3U3/NKPhUORP4boj4AAEOOEyRkDRsVTOYwuTGu/Edd5MxIL/teaX4lmf1LLtxPo9loW/7nKunZppUwfOHz7ZmteSquoST7uQaAFcvHqHCFIHthHq5z9w1TTl/bFT99LymOx1O+G+ezn/ComDkIACCc4PK/sIkrlNVBIj4uibARd217uZlnWTsViTAAMMZVkjbP1SVJIXs431GO58RyJ86rZw8XzN6UcEpyZOEiq3KPmPxqEu5aMzHZlueahABx3uCT+e+TeZIjTlyT6x9TI9skZDoZlkyi9bIn0szwgt1CiLrI+o7IfxuQv40pxwCiInniiOstZi/tMfK6IbIy6uYSWTZcuFoPV7byI9njK2ylokJulFuhgbm2o26u/VMd5J43PPKeyNxL/TL34Gzzzd2Hm3nerneTbQuyUmDSWN6ZiyvPdQ3Br3J5khBF2ZDPGwnZbgLxnG6KL5Z/18um63bqBdZMPbYsGQX6ufonyjexL63KxRXnmpf/Sci2m9gGLxcsN5q9LOe3VKi4TMS1myz5nOLVsv+2uJscb2hRrTMQJ9Imjnj4WXzuY99G70TV+flQXxE3r9oXNx6zH25atS82rehFX8H93e1t2rkPX3vXyfjG21fjxJufwHk/vQcn3rqGucfOaNfNo/ibL16JP/vbCxr7h0WWGNeSidVAt835cOXfXDayFhEREREREVnqvCRxbiGzaaA3dWxwTDPiRDqJehRFmujo+57Cf/3jpegup1+5fm7nfvzNX74O9x68O/Vm3fNi38ONJx+AG08+ACvWjeG1V9yLc6+8Byu2Tswn6VOcefMjWPXg07jr0D0b9jdFlhr3HnHNfVuz3bjyT0tTioiIiIiISDvIOZ5vK2GALb3pLV6WjTWun05Elj5yjQYRyeqke5/AZ//+O85BuKd2HcR7/uXtuOfQPeY1CLejDSv78aXfOxXnf+t9+Ju/fz1uOm5fZoa304e/+iugyUvmiDRTwTUjTnvEzYt7Rhy3FIeIiIiIiIjIUuJ+oTfAkGMgbmBcM+JEOol6FEWa4PQ7H8VnP/Ft5w35iT2W430ffxs2LU9PU2+U2Pdw3SkH4rpTDsTyLePYf80m5GoRgiiBHycI4sl/T/5/veLBjxOEUYIgjrHn+iG87tf3TPmbqx5+Bmfe/DB+vfqQBUu3yGJyXa+VnGbEzYdrIFMz4kRERERERKQduJ5va2GArT1dqePLNBAn0nDGmD0BfB3ASmzbze8L1trPGGP+AcAfANg0+dW/tdZePhnmbwC8B0AM4E+ttT9fiLRpIE5kgZ19y4P4j3//rnON6Ef22Qnv+6e3YWgg/WbMQtmyvAdblvfM+J2RcmHK/3txgsMeX4cDn9w05fiffePXuOb4gxD7mlwr7We6N9mE51yaUjPiREREREREpA1M148w7BiIG9TSlCILIQLwYWvtHcaYXgC3G2N+OfnZp621n9z+y8aYwwC8BcDhAHYD8CtjzEHW2nRH/jyp91xkAb36hvvwn5+61DkI98D+u+DC//e7TR2EYyW+h0+/86zU8f2e2YI3/Oqu5idIpAk0ENd4zqUpNSNORERERERE2kB+mi0utjr3iNOMOJFGs9aus9beMfnfYwAeBLD7DEFeB+Db1tqqtXYNgMcAnLAQaVvwHkVjzACALwE4AtumA74bwMMAvgNgHwBrAbzZWjs029/yiJfmkzox1mi4fa+MSahwIxNFKlxU9zOHSRJu7DUeI5djI7LSkJuYVSrZ8wMAKmGeCme8mX/cG6+/A5/40vfgO/ZRu3P/PfGuv3oXxpIiMDx7XKN++s2ZuWB3cLOOc3DFwUfg5kP2wYkPrZ1y/P0XX4PvHHscTI4r/wl5voNR4nxzSaQlXNFCOJ79zHkxd7b9KhcutzW91+FCiYvkNZojX16ZLJLFJP0ba3nfWda9XSpUVIP93Btw1nLXzVAp+/2Gjcvm0/lULTgG4mx9yncNcW37NS6NPnfa6L08k1z2MCbm4jIT3D0xqRPxkfW4x/62EvfbbJi9vosLXB1pc+wdOHs7zSPLP3lp078tyWePMAnYa5ur/4MSF1+NKMu2xrXJDXONArDE6gWGLCTsdsTkoxQ8okkSVLhyzDyPsuEsV9Wh3k2+a8vWCUQ4qh0PIOqjggGzPLdNiyiTNiDrSLJuZdoJ1WXcxRZ1kc9tE2y7KXtZtj4XV0ReN8yzFHtvi4n7KABYskrwa8QzaQ93beeHucrVL5Ev9DF5QuZj7HPXdkRcp36FS2R+iLzfk9kfjmWPL85zfZKGrJOZzjRb21b+c+V04EoQYms+vR3NwHiJfpYybFsyyh6fXyHr/zJZ/xOjFWyfQDBOBUNhmLuXhuPZL5wkRz7/Ovpf5sKvcBe3DZfefC9jzD4AjgZwM4BTAPyxMeadAG7DtllzQ9g2SHfTdsGewcwDd7Rm5NBnAFxprT0EwEuwbRTyIwCustYeCOCqyf8XaRtvvfoWfHKaQbhbDt4H7/jI72OsmxuAXTTG4F/eek7q8M7D43j3lTcsQoJEFpb2iGs89x5xWppSREREREREWt90K+sMuZamHC/BJE1+Y1ykPQTGmNu2++fCHb9gjOkB8H0AH7TWjgL4HwD7A1gFYB2ATzUzwcACD8QZY/oBnA7gywBgra1Za4exbcrfRZNfuwjA6xcyHSLN9K5f3oh//tpl8ByDcNcfsT9+7y/fhQlyhs9iu+uAPXH5CUekjv/hT67DslHyNRKRJWq6JSWE5x6I09KUIiIiIiIi0vqcA3FBiHoQYKwwtS/QtxZ9JXKZFpHOFllrj9vuny9s/6ExJsS2QbhvWWt/AADW2g3W2thamwD4Il5cfvJZAHtuF3yPyWMNt9Az4vYFsAnAV40xdxpjvmSM6Qaw0lq7bvI76wGsXOB0iDTFhZdfi3/85k+cn/36JQfjPR96B8oFYm2yJeQTF7wckTe16uitVPEnP756kVIksjDcb7JpRtx8OAfiIg3EiYiIiIiISOub6YXeoZ70PnGD49onTqSRjDEG2yaFPWit/fftju+63dfeAOC+yf/+MYC3GGPyxph9ARwI4JaFSNtCD8QFAI4B8D/W2qMBTGCHZSittRbTrL5rjLnw+SmGVlN1ZYl77xXX4W+/c4Xzs58fcxje9ydvR60NlrVbu8sKXHLmcanjv/vrm7Hnxq2LkCKRhVGoaUZco1WDdB2opSlFRERERESkHUy3NCUAbHUsT7lsnNs3XkSmdQqAdwA40xhz1+Q/rwbwb8aYe40x9wB4GYA/BwBr7f0ALgXwAIArAXzAWsttOj6LhR6IewbAM9bamyf//3vYNjC34flRyMl/b3QFttZ+4fkphsZbehv+iTxvv3Wb8JFLr3R+9pMTj8IHPvA21NqoA/8/33gWJvJTZ/bl4hh/+b2fL1KKRBrPvUdc+1zHi0FLU4qIiIiIiEi7cj3f1oJtz8HDrn3ixjQjTqSRrLXXW2uNtfYoa+2qyX8ut9a+w1p75OTx87ZbrRHW2o9ba/e31h5srXXPsmmABR3dstauB/C0MebgyUNnYdvo4o8BvGvy2LsA/Ggh0yGy0N73s2sQOGZtfv+Uo/Fn77sAUeAvQqoWzub+HnzxNaemjp938z04Ys2CLKMr0nRamrLxKhqIExERERERkTY109KUWx1LUy4b04w4kU7RjFf7/wTAt4wxOQBPAPh9bBsAvNQY8x4ATwJ481z+kF81mSNPxrP/xDjkxifj7MkDAJgct+ym8bOHswmbSOfqobMHi4m8jLg0GnJc2Sbcb7PetnC7bRnCG264M/X5d045Dn/9jvNh6y+my3Rx5zpf4JZu8z0uvnJl9sGGr553Et5+1c1YMTK10fCR716Bt//1uwEzx/NIrjpriWJiC9y5jslxAkNWCgmxjWBMXjdRkQsX5ps3uBznuPMGsrp7frHkfM21yXLgXEw5GuMG6DZV+6hwxiPrZCJcUuGaCv54uk6OonThLlSiKd8NStlPXDieOcg29C2Ry3/mt8UFKip4NfJeWsp+vq3PthG4NOaGybqVuEzJ5g9db3n17L/Nr1JR0QzZlgyIPgYvIk+Az5YtLr5aX/Y2aJInywjxPLQtIBGGbaORr3oGFfK8jWbPy+IW7scFFTZTsgepd5PPpHkuH/1q8+pyQ7atXW2LufDIdrJfJu7bRTIf2feSiJ9WG+BWW0rSEznmJOoly/JI9nDss01hC5fGPFH/JE1eYKMwRJ7vMHteWo+8R8XcdZOQfXce0b3ik/co+nwz/R3ssw2Z/x65cFtATAALR9m+FS4c83yTJNvKY76cbivUvBCm7GGo0JP6bGBrBZjIXlC8Mlf+/Vr2MOyzJf2czhRJsvznRsj6h3zesAETju3c4pg6d3GbSvbK1WPvGy1qwdd7tNbeNbm85FHW2tdba4estVustWdZaw+01p5trdXGUtKyLvzltQh3mA031N2Ff7jgPNg2XlJ1opjHf53/stTxU+9/HKff++gipEiksWZ6k004rj3icpFmxImIiIiIiEjrc66sM/kc7JwRN6GlKUU6RfuOEog0wfLRcbzlultTx7965skoFfKLkKLm+s5Zx2LtLstSxz/ynZ/DOJbqFGkl7j3itDTlfDj3iIu4Gb8iIiIiIiIiS8lML/QOdzv2iBvX0pQinUIDcSLz8O6rrkdxh5vsRD6Hr515yiKlqLmiwMen3nJ26vhhT63D63579yKkSKRx3HvEaUbcfFQD7REnIiIiIiIi7SnvWPHl+efgrd2OGXEaiBPpGBqIEyH1lsp459U3po5/84zVGHG85dKurlh9OO46YPfU8b/43i+Rr2mmi7QuDcQ1XiVMzygsON4YFBEREREREWk17n6Ebc/BQ46lKQe0NKVIx9BAnAjpHdfchL5KdcqxauDjS2eftkgpWiTG4N9+9xWpw3tsHsbbr7p5ERIk0hgFx0CyBuLmp+oYiHO9MSgiIiIiIiLSalxbL2hGnIgAGogToRRqNbznV9eljn/35OOwcaBvEVK0uG45bF/8+iUHp47/8Y+vRt9EeRFSJDJ/2iOu8dxLU2pGnIiIiIiIiLQ+54y4yefgIdcecRMaiBPpFC31ar9XN5nDmCh7GMR+9jAAbD6hwsFYLr4k+2+zETn2SmQjABjinNFqXFx+NXuevPXG27FibOrNMjYGXzr5LAQj019WcZ3L/4kxrvPfkPF5xASVT7z8XLz0nkfg2RfL8+B4GX906fX4t3NfM224/GYujUkue5g4T0WFYIIrW4Wt3LUdTmQPF5S5uPLD3GwkrxpnDmN9Lh/zw1y4JOROuA235WW+ms6bWqkLZshR+JbVqLj6+7llKDyPu99U69nrkqTIDZRVyum3/crWMRAXRUhyL5bfoJI9rohcDTgucOFMzJVJQ5y2JOSu7bgv+zUKAKaWvU72J8i2BffT6DZJQLwXEqWL8ZyE5H2juCF7pnjcqYZJ2BPA8avNu7clAVcmc2NcfAFxDbBzgZl6BAAME6FlHwC4fPTJd7fyI9njyw+R7Z86eQIYhntUtz75LOtx55t5bmDb1jFZ34XjZHxEU9Krkm0EskqOuppYl7OP9mS4uEDcN8hzneS4cHWiDZof5eoRr04+W46y9V32C84QYQDARGTdGpPPwKPZHwKqo1zdyrYlmb40pj6eT7igwt7vs/82v4usSDyyLUm0gZ6/jeZr6QyteyG8usFozr00palZWC9be9Ij32el+snJW03SxPeYfaIfAQD924JKE9uEZFRMPQ4AMGRbxjEIPasye+Jak2bEiWQUxDH+4JrfpI7/ZNXReHr58uYnaIl4eLdd8YPjjk0d/71rr8Muw8PNT5DIPGmPuMarBekH2HwUAba5AwIiIiIiIiIijebaeuH5GXH1IMBYYepAsG8t+jpsMEKkU2kgTiSj8+66A7sPD6WO/++ZZy5CapaWT59zDio7LD1XiCJ88MpfLFKKRHgFx5KJrqUVZe5i30d9hzf9PGsRsq+4i4iIiIiIiCwROecLvS9ODRvqSk+lXablKUU6ggbiRDLwkgTvu/qq1PFfHnY4Htll10VI0dKybnAAF512aur4+bfeigPXr1+EFInwXG+yVULtETdfVUceumYfioiIiIiIiLSSfDTzC71D3enlKQfHNRAn0gk0ECeSwcvvvw/7b9qUOv75M89ahNQsTf9z1pkYLhanHPOtxV//9Gdafk5ahh/HCJKpC3FHnoeY3HdFXuRa3tM16CkiIiIiIiLSSmbb4sI5EKcZcSIdQQNxInNlLf7IMRvuxgMOwF17770ICVqaRru68Lmz0wOTZz7woAbjpGXMtK67zI8rH/OOZUBFREREREREWom7L+HFVWG29qQH4rQ0pUhn0ECcyByd+ugjOOLZZ1LH/0ez4VK+fuopeHZwIHX8D6/+Df7yZ1doME6WPOf+cI6ZXJKdc2lKzYgTERERERGRFudcmnK7voRhxx5xmhEn0hlaqlcx6sreeZ/0Zu/cM2Ey+5ccPI8bXDCGCoa4SiyRVufGXk3EJdISwQw7RkOGs+HcAr7/N79KHbtrnz1x7TH7ASaeW2Rk2aJ/W46LL46znziv/GJ5rPoh/vW1r8F/fv1bqe+9/9e/RuIbfPI15wDGwJIr/fnV7GHYchyybSLyvEV5Iv/JcYwk4PLE5LOfOBNx5TEc4zKy1ksFQ603QViqpY5XciGSgvs3sPX/yHC6ET4XtkzevvNzrKu2Y3y2AnKXLeeMuFr0wveZ+0Z+qLmD+4asymt92X9cOE7etxPy2s5eROBXyIZMk+/3fiV7GPZcs+GYe6Jl4yLr/4S9b6er1VkFZe7mZhKukFQHuest6iaeUXJL/6Ukpj4AAI+c5GzJV0QTYvvW0kpuz1e/zp23cCx7ZvoV7uImm/+IC+z9JnueFLZwcVWWk/UW2WxK8tl/G/u8EZDPG0ydbCrN7RPw6mQ7gSjLljzXfpm7tnNj2RPpkfVIUOYubr/MVcpJLnvhsjnuBASlEhUO5P0+N5y9fVEscuW47HHXWziWPVxQpqKCXyH7MmMuHHOd0m2EJtb/SX7bNZqP0+Wr3OMh7tr2+ZYBx0BcZRy2kK2twPYJWOL5nu23szXymZSo7iKua4XuEwO4TImI9lZhC1eP+45+rTkh++6S3uLsX9pRT4GKC89xwRabZsSJzMGxa9Zg9eNPpI5/9lUv40dS29xPjlmFz5/1UudnH/jlVfjQ5T/XzDhZslxLJWpGXGNojzgRERERERFpR+6+hJmXphycIAejRaSlqFdRZA7ef9WvU8ce2XUlfnnUYYuQmhZhDP71ta+BZy0u/PU1qY//5Be/QuwZfP74Vy1C4kRmNtu67sJz5aP2iBMREREREZFWl5tlv/kh10DcmJamFOkEmhEnMotDnn0OZz7wYOr45855GSy5zEDHMAb/fN65+NJLT3d+/MErf4k/uvbnTU6UyOwKNc2IWyjOGXF1zYgTERERERGR1uZ6tt3+GXioO72G4rJxzYgT6QQaRRCZxft/nZ4N9/SyQfz4+JcsQmpakDH4+Otfiy+fcZrz4z+95uf4w+t+2eREiczM1XiuhJoR1wjOPeK0NKWIiIiIiIi0OPdA3GxLU2pGnEgn0ECcyAz23rQZr77r7tTxL7zsZYh9crfSTmQM/ukN5+Grp5/q/PjPf3MFLrz+V01OlMj0nEtTakZcQ1QdA5pamlJERERERERamrXOvoRa8GL/oXNpSs2IE+kIrdOraICoJ84czC9kD5NEJnMYAEhq3MBM90CZChcS+VGPuTQmCZcnUT17fPWxHBWXP8r9NjvDVXDhb66Gb+2UY5t6e3HpScfDEOXE+lw+skyZG2sPxrOHmykfJ1ODfzr39fAji3feeEPq0w9dfTniwOCLp501p/hM9uKPhCtaNCaNAOATYxJBJaHi8iI7+5cc/Er2GUxemR1sKVKh6n3cb0M+Rh7V1OFqPgDy7pNa7KpRUe0xMEyF27tnKxWOsXZsORXukYndnMer+XRlkUMdNretDI/vS543AlOPA4BXJcPVs/+2uMjlh4m5NFL1VnNvbYgLXLioJ3te+hXux+WHqGCI89njq/dycUVkPhryEjXEbcoabiayX+MSmZDvWCV54tru4u7bhmyTg8kSy+UjWf0gyXHt1tpw9ggLW7nfZsnfVlmW/bE7qHJpLGzh2iThGHlxE883cS5PRcXUkQBQ76GCwatnj8/jsp8WlIj8L3DXmkc+27B5wtR3foWLi73emHtiUObqf79KngDDXTfWz15OTMT9Nku+5Gx7uHZCOJp+1ptNeuhkbuo9XCdEvYvob2KbCOQUDba9FRO3gKiLjKtA3u9zRFnOJwijCN4O7ae67yHuMgC2/c3hZekMGJgowQsiJBm2v7Fsu5UoJx65gE2deP5iMc8aAGDItoVP9gn4RJ9AvZcbvomLXM0VTHD3m/y60cxhosH0Uq3tTDPiRKaxcngE599yW+r4l152Ompaoo5jDP7x9W/AN0862fnxX/7yZ3j39Vc3OVEiaYWaZsQtFOfSlJoRJyIiIiIiIi1stv3hAKAeBBgtTh2M861FX4mbpCEirUMDcSLTeO/V1yAXT30LYKRYxLdOOWmRUtQmjME/vP4NuHi1Ox8/8ouf4Pdv+E1z0ySyA9fAUCWngbhGqOTSLzK4Bj5FREREREREWoVrIK7meBFVy1OKdCYNxIk4DI5P4G03/jZ1/KLTT8FEgVzLSV5gPQ8fe8Mb8e0TVzs//5uf/xjvuvGaJqdK5EWzbbAsPOeMuEgz4kRERERERKR1zWVGHABs7U0PxC0b00CcSLvTQJyIw7uuvR5dtakdw6VciK+dftoipaj9WM/D373xfHz3mBOdn3/0yh/hHTdd2+RUiWwz1wa0ZOfKR1d+i4iIiIiIiLSK3Bxf6B3uTu+LNTg+sSBpEpGlQwNxIjvorlTwe9denzp+8cknOaePC896Hv7uvN/B944+wfn5/3f5D/HHV/8cXkLuuipCKtTSM7Q0ENcYrgcRDcSJiIiIiIhIK5v7jLj0QJxmxIm0Pw3Eiezgd2/4LfrLUzdJrfk+vvSyMxYpRe3Neh7+7nVvxg9WHe/8/E+v/jm+/PUvYPn4WJNTJp3M1YCuaGnKhnDPiNPSlCIiIiIiItK6XM+1rudf7REn0pla6vV+0539jfn+vuxTe601mcPMJ1whx3VAjlfymcPU6z4VVxjGVLiEyBOT5+KKe7j839Gbbr01dez7Jx2Ldbv0AnhxZlZ+WTn1vdl0FWpUmuoxd97Y810dzV62TImLC4mHGAZ/fcGbYbwEb7jj9tRXTnniEfzofz6JD7717bh5/wMAAH6FKFvkxLo6OREyKnJlMiTGHOOQy/98yKUx72cP5xW4W47hqgSEo9xvq+V95CvpSKteDqi687m/K3t9AAA9YZUK92xpgAo3Uc9lDhN43IWTW1ZxHo/608e6/OoL36+vT78dOBuPnFBnIvIaHSfbCcQlkJC/za9yaUxCmzmModPIhUvI1muSI/Ike3YA4O8bPtFMqA5wcdUGucrVq3Nly8TZ3/+LSmxc3ImrrODCxcuyt+UDsr3LYp5TErKOZEWOPUTnot5LhCOvbbb8e8Tpjgpk+U+4F4f8Cpcplni1t7SSex84JrfqtuRjivWy50lCtq3jApf/zOlOuri2XUzkBwD449wJCIg+6aDJK7vFRNsiIZ6jACCokQ+z7OoyljjfHtlGJp8TyS44GGQPWB3k0lgd5BJZ782e/wHRRwLwbet6N1eX1way/7ZoJ67f1CP7Mn0/exo9P0FPkO4XqOV95LqnNvJHlqX73HaqjaLYO/cHpHJCXgD17OeNfW72ylwZSYrZ6y0bcPcor8KlkXm2AYComD1cOM79ttwY2eAl+YPZ+3LYNnmr0ow4ke1Zi/3Xb0od/vwrNBtuoSWeh7/6nbfgh0cf4/x857ExfOOLn8cHrvqllqqUBedcUoLsIJSpatojTkRERERERNqMsx8hl37+HXYsTTk4qhlxIu1OA3Ei28lHEbwd3vyqBj7WrtxpkVLUWRLPw1+++a347JlnIzHpN258a/GhX1yJr35ZS1XKwirMcUkJyc71IJKvaSBOREREREREWpfrudb1IuqQayBOe8SJtD0NxIlsp1BLd75XctmXchNe4nn491e+Cu/+/fdiS7d7ba9TH3sUl335kzj+yceanDrpFM494nLaI64RXAOaOc2IExERERERkRbmeq6tOVbWGepLD8QNaCBOpO1pIE5kO8VaenOWsjrfF8V1Bx+C1/7Zh3Hzvvs5P99pYgxfvfh/8L7rtVSlNJ5zk2UtTdkQroE4V36LiIiIiIiItIq5Lk051KOlKUU6kQbiRLbjnBEXaiBusWzo78c7/uB9My5V+WfXXoEvfOcLWDahpSqlcfKRowGtuqAhnEtTakaciIiIiIiItLBcPU4dc72I6poRp6UpRdqfBuJEtlN0DMRpRtziin1/1qUqT1nzCC778qe0VKU0jGtQXnvENYZzRpz2iBMREREREZEW5pwR53j+HXbMiOubqMCLtdqTSDtrqV5FG2UfN6xF2X9i6KffYJhbXD4VLvC5iranUM0cxubTSy/ORbXOFZUqsg9ieYGl4oo9LpypvViuusquGXE5mCg9G8va9LHZMGEAoF7nylZ1pECF88ayx2fJ8zbX1wGuO/QQvPbPP4xPX/xNnPjEE6nPdx4fxVcv/h/810vPwf+eehYSL/2HbZNfPTBklgTl7AEtWZsnAVcm43z2zEx8Lq4kx4UzZBvWH/NRqKTvA7V6Hv4018ZzTy2n4lqXH6DCdfVmr/8BoL+rnDlMLebqnzh2l5Gyn953M1eLX/h+OJr9fIcTzS0jIMPV+rNf22w94nG3e/iV7HmZIyckFzdzGRnlybqEea+Giwqlncm6tZg9TG2Ay0fbzbV3Y0ebaC7KRJ7kt3JxWfLeRt838tnzMpdv7pK8TBu0brjGhSErLrJoodZL3KfINnlAvqyexNnzxGvyOypJyOVJVCSe0fupqOjnDb9M3jeIZ4facq5uBRmMKss9XP1jyOsmicl74jRtyZlY8nmDxVyn7LNNbYDbu94j+3JyI9kbk8bRnzIXNs89b7ANtfG904Mgsxnbk3wmylPBEPdmb5REfVwd6dW4MhKuIfvuCsQ9MeQqSeNzacwXspfl0I/RYyup40nRoKuQvp5Gu/Pom3jxud5PLHa3IxjpmtsDQY08b4lPlGWyvzWhHsAA2529cvVzXEM+Jtu7tX6u/skR99KAbMfE3G2DatsBAJZlr/AKm9PXTDvTjDiR7bhmwWhG3NKxob8f77jwffjsWWcjcTS6fWvxwauvwI8+/0n87ZWX4ZUP3I0V46OLkFJpdfnINSNOdUEjuPeI04w4ERERERERaV2ulV5cWzMAwEhvesCtX/vEibS1lpoR1wh7rduKv/3iFTj08fWwnkE98BH5HuqBv+2f0EccbPf/gYfohf/2sWlZD3590sG476DdAMeeVdLainXXQBz5CoEsiNj38e/nvAp37LIfPnHZt7CsNJH6zkGb1uOgTevxrpuvAwCsXbYCt++1L27bZz/cvte+WLt8J12/MiPXHnG1oONumQvCPRDX3JkhIiIiIiIiIo2Uc7xgWptmi4vhvi7suX54yrGBkTKe2mMhUiYiS0Fn9Spai//9h29hrw1D8/oz7/7+b3H/AbviO685Fj8/7TBU85ol0S6KtfR08bJmwSxJ1x9wCF73hx/Gp37wTZzwZHqpyu3ts3Uz9tm6GeffdSsAYHN3D27fe1/cvtd+uH3vffHALrsjZqbnS9sqOAaGNCOuMTQjTkRERERERNpNvpZeQnO6GXFDfeklUvvHsm8lISKto6MG4vZ9dsu8B+Ged/hj6/B/PvNT/PlXrsJlr1iF773qGKxZtqIhf1sWT9GxNGVFS1MuWRv7BvB773w//uQ3P8cfXncVPMxt3eoVE+N45QP34pUP3AsAmMjlcPte++Hzp5+N2/bZbyGTLC0i5xiIq0zzJptk43oQ0UCciIiIiIiItDLX0pT10P3S97BjacqBES1NKdLOOmqPuP7xxr9ZMDhWxru//1v85MLP4b//+ds4+a7HActtYimLr+CaEaelKZe02PPxH2e+Gu95+4V4YJfdqb/RXavh9Mcewle//nnsv2lDg1Morci1NGU10KB8I7hebig4HlhEREREREREWkXo6keY5oXeEceMuIFRzYgTaWcd9Xp/obpwe9D4icVZtz6Ms259GE/svhyXnHM8fvjSl2C8u7BgcUrjuWbElTUjriXcuP/BeMP+B2Pl6DCOeWoNjn1qDY576gkcvGHdnGfK5aMIZz14Hx7faeUCp1aWOvdAXEfdMhdMLUi/EZivR9teYtHejSIiIiIiItKCXDPipl2a0jUjTgNxIm2tpXoVvVx6rd3ZFHMvDqz0x5XU57e8ZG/88x+fgzCKEUYxgijBMn8CYT1BMPn/QX3bv/tGK3j5zx/AwQ9vnDHO/Z7dgo9++Up8+OJf4dpzDsQvzj8Mz+y3LHPaZ7Ou1Jc5TLnODSp15dMzxeaiWs9exMqb02+FLCRvWfWF/+7y0ze9ap835TvP6+tOl6fZ7No7mjkMAAzkuOnp0e7cvmdPjQ1mDvPsc1wZj3LcDNKo1338yV178OTBR+IyHAkA6C2XccwTT+H4x9bghEfXYtXap5yDLM/rt2OorZha13glbvJwOM4NKlQHs4fz00V0TuLlXBrrXdnD5ce4c21iLpwl53wb694jrhaEMNMkJezl6shVez5DhduzyC2znPeyzzzbUu+m4to6Nn24WuAjF029zrpRRS0MUdk5exq53AdMlSskXo27bixRJSeFhIor6iPT6GW/3qKt3L0mKnD5H2S//QIA4nz2MB5ZuKarK2aTEPlvsjePAXDnGgDgkQPmRKbUszd1AQCWTKINuTzxiN/m+9y17ZOFK2EzhRDH3LVt61w4v5r9tyXkU3BCLpTh1bOn0VTJdlOTJ5lHeSL/yfY/27bzyeIfdWdPpw24a9uwixUR59smXIaw70vZkMuTpJA9wnovl8j8MFtHZi8jXr25Kyj5dS7/kWQPF/dzL6Jbsm0RjHCDFpX+7NdbdYCKCvU+Lv+9AaIRSrYRqmR/R3mMC5cQ9WQQcg1ett5i2jLGWISOPeLKQYgoSf+9rb3p5+WekQpq0Ryfrci2Xa4re9mqlbm+ZBuQ9V0te/7HZe6Z1ETkPZH8aT5xafs1st3EZQktJu7bSb7JiVxkLTUQN1/FSrq0D/d14endpw4gLCtOP+jx4ze8BAc/uB7nXXY3zvjNo8jVp78ZFMoRXnHZg3jFZQ9i7YHLsHWnbowMFjE6WMTIsuLkfxcwMvn/Y/0FJEFHrRa65Lg637VHXGsbKxZxzeEH45rDD4ZJDHL1CEc8/QyOf2wNXnXnvVj15NNTvl90LE8qncWPYwQ7PHhGnofI76wGwkKq5oLUQFy+HqGm+lZERERERERakGtGXG2aGXHDva6lKbVHnEg766iBuEI1XSFWCtk7/R4+dBd84tBd8MX3n4ZzLr8f5/74Huy8cXzGMPs8uhX7PLp11r892p/HyLJtg3XDy7pw/7G74bpzDkA931Gnaop8vY4D123AAes2YryQx40HH4BSgXitfQ5cy5eW8+oYbie1MMAd++2DO/bbB1t6e7DqGzsOxC3cErbSGrQs5cKrhgF6MXUaZ74WYYZJdCIiIiIiIiJLVq4+9z3ihvrSS1MOamlKkbbWUT2LrkGWyjwGuIYHu/Dt3z0el77lWKz+7Rqc/6M7cORtz80niegbqaJvpAqsGQYAnPKrx3H+V+7AD37/aPzmNQchDtt3RoZJEuy+cRj73LcGhz67Dgc/ux6HPLse+27YBN++OA334d1W4oIPvw9DPY3vsdUecZ2llE+vL1TQQFzHy0fpMqCBuMZyPYzkHQ8tIiIiIiIiIq0g0x5xfekZcf0aiBNpax3Vs+geiJv/IEvie7jx1P3x0Fm7Yvc1Q3jFDx7A6Vc8imKpMR36yzdN4A/+7Xqc98278f13H4PrXnkArN/aS1j2j5Vw0FMbcfCTG3DQkxtw0FMbceBTG9HtWD50Rwc/twGvu+UufO3MUxqeruIClRFZmspheiCuS0tTdjzXErXVUPVAI7mW59BAnIiIiIiIiLSqvGP7oto0M+KGHQNxWppSpL111EBcvgmDLM/uO4ivfvgUfPt9x+O0Kx/FK77/APZYO9yQv73yuTH80T9dg9d94258973H4IcnrqI3tV0M3eUq3nD1Xbjg57fhwGc2zetvHfzsugalairXbKiyY9aUtAfX/n/aI05cA0IaiGss14y4nOPtQREREREREZFW4HqmrU2zstlIT3ppyv7xMrw4QdLiky9ExK2jBuKKlebNdip35/CL8w/HL954GFasH8eyzSX0bS2jf2jbP31DZfRvLaN/qIK+yf/vG6nO/ocB7P7kMD74//0a5+53L778eyfjxpP2B8zSHZDbY/1WvP2KW3D+r+9Eb2luv3E2CzVrqVhN/10tTdm+yjktTSlpOe0Rt+C0NKXIwsrV6zj7/gfQXa3iyqOOxFgx/aAvIiIiIiKN4+xLmGZpyijwMdqVR992/aSeBfrGKxjuT8+WE5HW11I9i8lY9gGRLabnxf8ZTX++OenBlqGeKceGx7jOiif9ZdN/uHzyH4eV/WMAAD+KMTBSxsBwCSu2jOM1V96Ll1736LR/8oAnNuGfP/YjPHzoSnz9Patx53F7zjogl/e5js6RaiFbAGtx7N1P4Y3fuxNn3v4IvO32eGuEQrUO7Pgn8wn1t7bPMdcecZV8CFeu1qLs+/WtH+/NHAYA1tk+KpzvcXkyXslnDuPl0lPw5yKJuEFkU8n+hpBXnxpXBemBuGK1Bq8y9XuGy8Z0GZ2joJQ9oA24fLTki1aW2a6SrAfiPJdIG3LxufeIC2FnyGLf5wrJs+P9VLiHN+9MhespZH8ZYmXXGBVXMT/9CxP1fLoA9aGCYr6GaKTHEWJmpsljeIa8tpnrhr22nTeuBQoXdXEZEo5yiUzI92N84l0gE3G/zSPvbbZKhOudmsYgjvHNz38Bxz+xBgDwoSuuxLl/8efY0rtDG6TG3gCa9/IXfW2TTzg73v/nqjaWffWEepksyHQFRPw2tvlOhjMT3InziHeoAnYLFvK3ebXsAYMKW/9w4UzChUuIPczjIhlXjmtvWY/bZ91j6mTDxWU99sGBCFcn29ZMXAB/32CiI5OYkPeNiHgh2mfKFfhn0uoAd78JwuzlxK+yD86cqJ/ru6v3Zj8H9V7utyVdXD9JMZ/95lav0QWZCsY2SZiyHFW4cmxj8reF2ROZ5A1y1fT5HkcBtWnOzVBv95SBOADoGq5hY/fsfYBsN2u9mr2cWPK+Ybq5xnxYyB6OaY8DgCHyAwCCca5sBcTqo0xbFwDyo1y95dW5wsX0dyRBZ83+bKmBuPly7f9VXkL7f8WBjy3Le7BleQ8e339n3HzCfjjokfV4z0U34KRb1kwb7uAHN+Djf/Ej3PuS3fD196zG/S/ZvYmpnipfreMVVz+AC354Ow5cm335yfFiHg/tugse2n0XPLz7rnhw912xcmQEn/3SxVO+t1Az4pz7CGpGXNtyzYjTHnGSd+4R11G3ywXn2iNOS1OKNMaJjz3+wiAcAOwyMoo/u/IX+NjvnL+IqRIRERERaW/ubS6m70sY6uvC3hu2Tjk2OFrC2sXr1hWRBdRRPYuu2U5LfdnBRw7aBX/98fNxxH3P4r1fux7H3P30tN898u7n8Ik//QFuP34v3Hbi3tiyohtbdurBlhXd2Lq8GxHxtuJc7bR5DOf/9E684fK7MDA6t1dMH9t9Jzy898pt/+y1Eo/stTOe3WkA1a1Tp2Af/2h6ENJ1LhvBWUaW0GCtNFbZse/XQpUtaR15x3ISFe0R11DVXPp+lNdAnEhDHLBhY+rY62+7A/983rko57PPeBcRERERkdk5B+KmWZoSAIYd+8QNjhJTpkSkJXTUQJxztlOLDLLcd8Tu+OAnL8Axdz6F9371Ohzx4Lppv3vsrU/h2FufSh0fGixi84oebFnRg80rurF5p15sXtE9+f89GO/Jb1s1whhYM7mqw+R/o5bAGgMYwGLyc2Ow71ObccEPb8eZ1z+MIJ59yms5F+KHZ7wEX3/ViXh8z7ktreYaLC0u1Iw419KUS3ywVngV1x5xjtlQ0lncS1N21O1ywdUcbwXmtEecSEO42ki91SrOvfNufHf1CYuQIhERERGR9uda5cX17Pu8rb3dqWMDYxqIE2lXHdWz2FVNd0y4lqZbyu44ei/80aq3YfUtT+APv3Yd9n9s85zDDg6VMThUxoGPZl8ycr6eW96Pb77qBHz3zGMw0ptt01HXQNiCDcRpacqO4poR11WrbVtsm1jvX9qD8y22QPVAI7mWptSMOJHGmK6N9Nbf3qSBOBERERGRBeAlCXJxeo+4WjD96mRDfen+0YExdiNbEVnqOmogzrXkXKlFZsRNYQxuOnF/3H/K7jj52sfxjq/chL2eHFrsVDnddsheuOjVq/GrEw5B7HNLY5by6cFSLU0pjRD7Pqq+j/x2jSXPWuSiCDUtRdixXLMitUdcY7nyUzPiRBpjur1Oj37yKRz67HN4cPfdmpwiEREREZH25nqerYTBjC95a2lKkc7SUj2LxmafoRLmXqwIXW8IRz3elO8AQF93JXviAPQXuHDetkUgM3tqdBBPrToOl376GLz62vvwR9++FnuuX/wBuVrg44rTDsfF556A23bbZ9tBC2COfaxe1Zvy/1VbSH2nq1pLfQ8VL/W9uYiez35r0eWYETceF5GU0397giiPIMtWMccNPJZr3GBSLsjeIe71zL40qcuE4/zOLWD2fW6SMH2tVXI55MtT3zjK29q2BtMkP+Jmx1lyW8Yklz0+pjgCgOFOGxUuqHB1Xb2HCob6QPpttLkIfcfs6WKAuHv6vxdvSTeg52JdiZuVvesuXF2/smssc5hKzNUjlRnqn5Kf/t1e2aJSC6myzM5fZa9RcEULYK437tYGWyATSWSmjbkz4LjUFlREXKa5US4uj/1tRDXp1afmf7EyfZvhLTfcjH98wxsBAInP1clUOQZgmHJCXtx+hQuY5Mg88YhwhovLC7gTYNmGAiMh200h99vifPaK0iPf6WPrLSZcWCbPNXvf8LjzFhWzh0uK5Ms3bL3leJabCzYvKWSbxDJ1ApmNbP3P1nfUPYCs6tg2oUc837DPX00tjwCSsHkRehFXRozlwsVEF0TSxZ04U+Ta5EGQPVwcc+eMvG0jIXuUDdG/kpDPG1QbDYBP1K2uNngtDODNkIbh/vSMuMGxEswc6k2fKCMAkMtlDxcRbS0AqNe4QhJHRKVMlhG6biXDRdkWiQPAtz+9OnvD5yR+9nMQFdlOmdbUUgNx8+Wc7dQGyw4mvoefvuwoXHna4Tj5zsdxyJoN2HnLGFZuGZ389xiWj0wseDq29HfjO686Fpeecyy2DE72nDfgRY6SY/nQhZgR51qOrhIESLwmt3ilqcq5EP07DMQVazWMdBN3R2kLzqUpNSOuoVwbVmtpSpHGmG5GHAC8/o7b8a+vOde5R6qIiIiIiHByUXqAy/Xcu70hx9Y92iNOpH11VM+ic/+vNlp2MAp8XHv8Qbj2+INSnwX1GDsNjWH5hhJWbh3FzltGsXLrGFZuffHfhVoEWAuDbW8WGQsYbP9vO/ky2+Qxa5F4Bo/uvRLff/kqXHna4agvQGd1NQyQGANvu7ed8lEEL0kaOkjmmjHZTuVD3FwDvTN1Ykr7yzuXplRd0EiuDatdA6Aikp1red3n9VUqePU9d+MHxx3fxBSJiIiIiLQ314uls73Q69ojTktTirSvjhqIcy072Cn7f0Whj3U7D+DJwRVU+Fy4iB2kxqAchujeYXCkWKthokAua+jQrjMmZWYVxzleqD0IpTU494gLOup2ueAqmhEnsmBme5nkLTfdpIE4EREREZEGcu0R53oBdXvDrhlxo2XHN0WkHXTOmnvWOmfElfNamqcVuAbEGj1YUnSVDy3d1PZc57hQ14y4TuZcplaD8g2lpSlFFs5s97Bjn1yLg9ava1JqRERERETan3NGHLE05aCWphRpWx0zEBdGMYJk6mabdd9DFHTWpoCtyrWXiWspyflw/T3NiGt/zdqDUFqHc484zYhrKNcSHVqaUqQx5rK88gU339yElIiIiIiIdAZmr/mRnmLqWN94GV6cOL4tIq2uYwbiCo6Odc1waB3uwZJGD8Q5lqNTGWl7rnqgq6oZcZ0sH7n2iNNAXCNpjziRheNq8+7oDbffhrxeOhERERERaQhmIC4KfIx0T91yx7NA30SloWkTkaVhwXsWjTFrAYwBiAFE1trjjDHLAHwHwD4A1gJ4s7V2aMY/ZAFTNZnjr47nAQD9Q9XUZ+Vc7oXPt7elxmXLkNdNhRvsn6DC9RTSv2k2tSCm4mIxv8w6TrNzacp6bcp3PbIP14xvO9+F0fQbJ2U/98LnO/J7sg/W5Mj8DzzubZhl3dyU9jjJPkZfrnODluNJ9usaAGx39rz0R9MzYCt+epC3q1yHV3sxXUloM8cFAIZ8iSkuZM+TpMmTe02cPY31Lu7dD0NWW6bKxVesOtZ293Iw9en/3s4HbqbiOmXlE1S4/YqbqHAFk73jvZSk75Nz8Uvv0Gk/G1yRXvd+mZnAATttxn0T2ZcEZt8XDHJs4eLqhKiSvZ7MdXEvBiRk3ZrPZ7+ZTgTcfq3je3Jp9OpkOCIro24yruxNNABAvTd72UqCqWG66rNH3l8u49W33ofLTjomc3wz1YUzB8weJBzj8t8n+y7qvVx8zKuNYYFruFpXQ3kOEqK6Y+OCx9WR7CuiAdHcDUpk2478aSDCWcPlP9OOBABL5n9CPAKYAvlMRN636dcOiPout5VrlNcGmzj7wScLMlkl0PERmHs9APjkfZsRFbmLjb1GTczlfxJkP+EBef+Ni+T9vkpeN0SWmIhLoyHviUxsvs/lR0JeouE4F9AjqvKYfLYJu7g7QL6QPVyPTV8AUd5DITfz3xrrK6B/h4G3vapDsLPUFWOGe073iMZMmXhGB4CkSnZUEafb1NiGJPlsX+DCBePZf1ycI+ufiEuj9ck6uZY9Pr/S3HGKxdasGXEvs9austYeN/n/HwFwlbX2QABXTf7/gnLNcNGyg63DtY9Xw/eIc/y9cqgy0u6ce8RplkBHc+4Rp7qgoWqOtfJztc5qgIksFNeKAb8+9JDUsbddq+UpRUREREQawbVHnGslmB0N96eXp+wfTb+4KiKtb7GWpnwdgIsm//siAK9f6Ai1/1drcw6W1Bd+jzjX3nTSXpzLnja4bElr0R5xC6+WS78Zl3M8uIhIdq4Xi75yxumpYyc8thYHPrehGUkSEREREVl0PaUKPv2fl+K29/w/XPwPX8Je67c27G/n6ukXS10voO5opE8DcSKdohkDcRbAL4wxtxtjLpw8ttJau27yv9cDWLnQiXB1SpTyGmRpFa7Bkkbv4+WaBaXB2vbnmunU1eD9B6W1uPeIU13QSHXHQFyoGXEi82aSBMV6ug777YEH4KFdd00df8t1tzQjWSIiIiIii+5jX/sZXnvjvRiYKOOEh57Ef//HJQ372znnHnGzL82ogTiRztGMgbhTrbXHAHgVgA8YY6a8kmuttZhmhWZjzIXGmNuMMbfZZH5rprsG4ioaZGkZrnPl6miaD9csqHKowdp25xps1dKUnS3vqFs0I66xtDSlyMIoOOqvShgg8TxcctKJqc/edOPtzjpPRERERKSd7Lx1FOddf8+UY4etXY/lw+MN+fvOpSnJGXEDIxqIE2lHCz4QZ619dvLfGwFcBuAEABuMMbsCwOS/N04T9gvW2uOstccZb35JLbiWptSMuJbhGhArNnhGnHOPOA3Wtj1n2dLSlB3NuUec6oKG0tKUIgvDNaP7+VUFLjvuWFR22KdioFTGq26/rylpExERERFZLOdfcwcCxySPvlJjBr1cz7PVOQzEDfd3pdM0poE4kXa0oANxxphuY0zv8/8N4BUA7gPwYwDvmvzauwD8aCHTAQBdVQ2ytDLXMqKNHizRHnGdyTUg7xqUlc6Rj7RH3EKrOx5ItDSlyPy5ZsQ9/8LJWLGIn65alfr8rdfdvNDJEhERERFZNCZJ8OZf3+78zNVfzHC90FsLNSNORF600D2LKwFcZox5Pq6LrbVXGmNuBXCpMeY9AJ4E8OZZ/5IBkv7sb8sPLN82xXh5OJb6LO41L3y+vWXdpczxAEBguOUzN5fSbz/Mxdbh/sxhjHGuAjorz+d+W6GQ/YZW3yUdV20w/b2ecALhLi+eq/p6Lh+fzxLnjLgwxHRZVt+UvlnOZvNoPnMYAJg2EbMFq8y+HrWLLWTvEA+6uNkstsal0dSzv0fg1U3qWMVz7D9YqU35rl9Jh5tbfFQwBMTKCH6dKyNBiQtXGMpeRkzMxZUb4wbEk5B718S1R1ylx4MtTv+b9+gdpuIqJ9xv+9mGI6lwHlGX7NPNbWAdJdPnfzlIvwgT1mJEiQczlD1P/DJ3jZK3bdR7yYD92SuFJOF+G6tez14n2zJXjwe15v62hHj/yq9ycYX0CjfZ8yTJv3hddztWCyjnci80I769ejXedOttUz5f/cga7L9pPR7fbec5xWd9ri7HWPY6mb1G/RqXxrohy6SjfTFrEEu+EBiTaWTCsZdowJ04Q9YJHvEeh0dOwmbqETZcnG9uHcm20xKmR4H8aYllr1Hy/WMiS9gkBmPcvTQuzm8LjyxsgYyLbMsw7buA68qBF5HPUpXs4QpbuReKk4Arx3GBDJfPHq7WSz7bk/WP6/l+LmwzNul5Pi6y/Nej7HlZmeCeLXNVsuIi+6moetIj45qM7JR7n8Cem4ad3ylU6i9873m5gOh/RnrwzO9JsKJnYsZw1cF0I2H52AS6w5nriq3jXB9oeSh7X6Ypcdc2edpgA+YGzMXFhrMhFzAuZr8AipvINlqOu7bDce4laeZ+Exe4sjUTY8yeAL6ObeNSFsAXrLWfMcYsA/AdAPsAWAvgzdbaIbNt4OozAF4NoATg96y1dzQ8YVjgGXHW2iestS+Z/Odwa+3HJ49vsdaeZa090Fp7trWW6+XLoOCaEVfQjLhW0YxZS64ZdpoR1/4qzqUpNSOuk7lmlFTn8CabzJ2WphRZGK7Z/duvAHHHPnvj4V1Wpr7z1mtuXdB0iYiIiIgslrdcddu0n3VVGrPalut5tj6XGXH9hdSxPs2IE5mPCMCHrbWHAVgN4APGmMMAfATAVdbaAwFcNfn/APAqAAdO/nMhgP9ZqIQ18T2QxeUaiKvkNRDXKsqOc+U6p/Ph2li1EqqMtDvXErUF7RHX0bRH3MJzbVqd09KUIvPmHojb7oUTY/Cd1atT3zn/hjuQ17LMIiIiItJmlg+P4+zbH5z282KD+hZdz7OuF1B3NNKfnqHWN1ppSJpEOpG1dt3zM9qstWMAHgSwO4DXAbho8msXAXj95H+/DsDX7TY3ARgwxuy6EGnTQJy0BNeMuEat4/w814y4sgbi2l7ZNSNOnZEdLe+cEae6oJFcDyShZsSJzJt7me2p97nLjj02te/lsvESXnnH/QuaNhERERGRZjv/2jsQxtMvrdtdIdei30FYdw3EzT4jbtQxENc/qhlxIo1gjNkHwNEAbgaw0lq7bvKj9di2dCWwbZDu6e2CPTN5rOE6ZiDO9YaDBuJaRzNmxDk7r7Q0ZdtznWPXoKx0jnyUHhDasdNa5qfuWpqynsAk7MLuIgLMYUYcgJHuLlz+kqNS33vbb7Q8pYiIiIi0D5MkuODq22f8TuNmxKX7EeYyI260L700Zc9YBd4Mg4cigsAYc9t2/1y44xeMMT0Avg/gg9ba0e0/s9Za8DsL0jpmIE4z4lqbayCuq9rYwRJX55WWo2t/rlmPrrIgncFP4tTbcrExiPyOuV02hzGohY5ZcY63CEVk7rpm2SPued8+Kb085UkPPYF9129akHSJiIiIiDTb6gfWYJ/1W2b8TqP6Ft1LU87+Qm/iexjryU855lmgd0zLU4rMILLWHrfdP1/Y/kNjTIhtg3Dfstb+YPLwhueXnJz898bJ488C2HO74HtMHmu4julZdL3h4BrckaWpGTPiCo7l6FzLFkp7qTjOsassSGdwzYar5ELAmEVITXur5l37xGl5SpH5cC6z7Zj5feu+++KxXXdKHX+rZsWJiIiISJu44Ne3zfqdYsMG4hwz4hwvn7q4lqfUPnEiHGOMAfBlAA9aa/99u49+DOBdk//9LgA/2u74O802qwGMbLeEZUO11lpbUfaO0PGJbVN8g4n0lN5hdL3w+fbGxtMV4Fx0dXOV5MrecSrc7n2js39pBxN1bmBptJLOp7ko17IPdsZR+kY14afjL1bqU75rc9y0bVPdNh7tXs5p+vR7y7KvI93Xw63zPNjV3PWh6/HcGgvb2zrRRcUVjZCDnUR9EHWlZx2PRY5B3qg25btxgZutHI5xgzeVnYhwlosrN0KmcVn29ziCCjnrm1yRod6bPT5vIl0PVMMA8Gf+Ww9tWjnj59O5p7YbFa4+zNXJfm/2QeanugeouEql/Iyfl4MQvZhajz7z1AD8SvYy2fUcV44NOQEvLmSvIwFg7BCiMOe4REZ1Lo22kj1cMMw1J/0yd97sLNfjdOKZi6STIeufqJsL5xP9AEnuxfwoxOk/UCqEU77zvItPOxEfu/SnU4696fo78MnXnYNaOP05NRXuPT6PKMoB2fyx5MsTbJ2AIHuZDIrciwd+wCUyDLOH8wx3rSVkm2TcI9uSRJ0cFbk0BhNUMFiiSq5y1Tg88n2ygOzvs8QtwHhc2WJfi/KqXL1l6tljdNW3cxGUuF+X5Ik05snnZrb+J/OfeZbyIvK5rdS8JeBqfeQL4ewCWuSF49WIZykiDADkt3J7dEVdXBuUqZNtyDYKufKfJET5J9ojAN/+qfWRhcsS6SSCDI5N4JW3PjDr93qjCvKFqTfPYpi9nRZU02VkIsijGs1cTserOWzp6cLuGJ5yPFkPbFo+/UNFpUT2pcVM3cpFRTYJ4RF9Aoa4ZgAgLpDXNlknM9dbvZtst5L37XCcqxSSkChb1QVZHfIUAO8AcK8x5q7JY38L4F8AXGqMeQ+AJwG8efKzywG8GsBjAEoAfn8hEgW02kDcPBSc+39pRlyrKBcc+3g5zul8FF0z4rRHXNtz1QONXvZUWke+7tgfboYOaeG58tWV/yIyd66Xikp5d1vm+ycfg7/+wRXIRy8+aC0fn8Ar7rwfPz3hJQuWRhERERGRhXb+jXcgF80+oNCwPeIcz7JznRE33Jt+GWlwtDTvNIl0Imvt9Zj+NZSzHN+3AD6woIma1DFLU3ZVHLOdtDRly3ANljR8aUrXHnGO/cOkvbjOcbFe597SkpbnWpa0qnpgQbjyVQNxIvPjnt3vHogb7unGFccemTr+tmtvbni6RERERESaxlq89dpbUoc3LOtNHStWGjQQ51iasp6b40BcX3ogrn+suStjicjC65iBONeMuMo0bwjL0uMaNG30rCXXDDvNiGt/se+j6k9tHHnWOvcKk/bn3CNOM+IWhGbEiTRe1rbMxaefmDp2ykOPY58NmxuaLhERERGRZjn+0bU4YP2m1PFvn3Nc6lij9ogL6+nZdzMt9769ob70FkkDmhEn0nY6ZiDONdW4pBlxLaPsGDR1Da7Oh2smjDrgO4OrfLlmFUj7y2tGXNNUcxqIE2k010tKpRkG4m4+aF88vnJF6vhbrku/QSwiIiIi0gredk26LXvzEfvgwX13SR3vatiMOMdAnOOZ12XEMRA3OKoZcSLtpnMG4lwz4rRHXMtw7uNVqTVs+UCTJM494rQ0ZWcohwu/B6G0BteMOO0RtzCcM+J03YnMi7MtM1N71xhc4pgV9zs33IZQM8NFREREpMX0j5fw6tvuTR3/7iuOQbng6Ptp0Iy4vGNpyuo8lqbUjDiR9tMxA3Gu/cRcs2BkaYoCH7Udlg/0rZ3TxqtzMd1ydNbrmEuko7kGejUjrjO5Z8RpIG4haGlKkcZzdSTMNCMOAL538rGoBlPbWCvGJvDyux5oaNpERERERBbaG266E4Ud+viGe4r41YmHOre9Wcg94uY6I861NKX2iBNpP63Vuxhmn/1kzLYwzhlx+eCFz7eXL3CVcKXMDew9PrwzFc74SeYwftiYgau5yucb16layYfIlaamv1itvbDmsqlxg2YmArpKjoHaMAczQ/I9L3v+1yLukquS4QIijQAwVEo3AmYTRVz+e1VysJOZDGnchyuOTspirY7nqwcTTRNwFgk5oTIgxgA98lJL8ly4YDx7GI9s31qPm/lqg+zh8tZxrwhCYJYyUBrnMnLf3bh9mA7efyMVziMunKdKg1RcD0zsOuPn7hlxMerLshfmkT7uGjUxF86rkeEm5vZG5PbqEXmRckmEP9G8F1AS4hoF+LrVNvHdmpg8bcxv2/6cuZbWqSZ553mNitvaVEN9XbjymCPwulvunvL52669GZcff2QqnM1zbQsTZz8BtT4qKiTkEw5z3wAAEG3QqM49N0SOZ5e5qBLPUR753GAtWQGRbXmmvuta35hVNeaKKZPNrLMAIPG588ac7hz5jBiGXLgxxwyIuciNZb9vwyPbJOTzhk/001pDFi62Te5z4eJC9jBRF5ePtR4uT3zi+SYhihUAkNU//Cp73poXV5LnMiUucuEs004g7qMAYMjrplbJ3ihk44q6uXCFzeR9g2hvefk5tkmsxVsdS6x///SjMZYUMWLSM88KlTqqO+T3CHHBBdV0G/m5Sj+GR9Jxbi+KfDwXpp+5e4cqGB2foW9ujHso8ivZzxsTBgDAPTbAJNnj88h36dk+SY+8bxc2Zy9buXGy/km4cPUerm5l2pJ+g1a6axUdM93H9YZwRXvEtRTXnn6uvf8YxXq6fJS1LGXHcM0WcO2zI+1PM+Kap+aoYzUjTmR+XLO5y7PMiAOAS844IXXstAcewx9ecU1D0iUiIiIistCOfuxpHPLMhtTx75x5HABgwvFiRlelQUtTOp5l59qXMNSTHqxbNqalKUXaTUcMxAVRjDCeOgwfeR5qAfkqkiyK6WYtNULBuYegli7tFK69AF2Ds9L+3I1nDcovBPfSlNojTmQ+ulwDcY59UHf024P3w5qdl6eO/+33rsBfff/Khu3JKyIiIiKyUN5y9a2pY7cevDce333bSmSuLYoa8oK/tc6+hFo4t37nod70QNygBuJE2k5HDMQ5B1nyIWDIqbWyKJxrOTdo1pJmxHU212wBV70h7U8z4ppHe8SJNF7B1Z6Zy4tFxuCLrzzN+dEHLv8NPv6NH8JLyLVlREREREQWWG+pgtfedG/q+POz4YDpVtqaf79iGCXwdnhxLfI8xP7cBuKGe9JLUPaVKvDj5m4vJCILqyMG4lxvN5RzGmRpNaWFenMF7pl1c+q4krbgWprStbyXtL98lB4Ics2YlPmrOjauzjs2uBaRuXPOiJtjm/fi00/AZatXOT97+zU34zNf+DZCRx0pIiIiIrLYzrvx7lTf3kh3AZevPuKF/6+FAeIdJmXkoxhBNL8BL1cbOcsLvbHvY6R76saYnrXon6jMK10isrR07kCc9odrORVHR1KjZsS53iBX53vncJUtV2emtD/NiGsezYgTaTzXbO7SHJamBADrefjz97wZX3/Zaufn5916D774399AQXuoioiIiMhSYi3e6liW8kenrEJ1+/4eY1By7BM3375F1wulNceLpzMZ6u1OHRscm6DTJCJLT0v1Lpog+5I43V1VLDPjqeO1QoDurqozjOdxS+8MdJWpcN0hV+GP1vKZw4xMpKc7z0VU5/bTq1azF7G46o5rwtGRlJ+IX/i+8bn9SxIDFBLHG+SFEElu+r+ZbM6el/Ui95bNxFbuvJkSd968avYx+rif60Bnz5tfItJYcMflmhFXqNdhJ1+U8smXo8IxbvnbgKhKLPtaBbntT1DJHjAscZFFBS4fw9HsmdI1kT7Z9SQHf2zma2mPfTdljgsADu7fSIULDFcoN1d7MofxyEJSKM58b4u70ue1y1bhd2evS5KIKyO2wtWRlrwn2hnuKdPx+riZ30mdqxRsJXs4sjjCJNx58yKy4iKyst7LxWXIMWUmT2wwmUZr0eVamrIrhHXca03ZVY59fOyNb8Rwvht/euVVqU9fdu/D+Manv4L3vu/3MdqVrW0SF2b/Tio1XNMaSUi2Ccl3sLze7IWrp4d7w7mY4+qEgHi+YcIAQJRw9c/W8fT+KHNRG+nNHsg2d4uCpIkLbRS2cOFyo2TdSmSl73NlKx9wN5xSH/e8HY9nr7jYesQne2Zc9fusPPJck/dtv0aGK2cPl5D5WOsj2yRE0WKeowAgHCfr5ALZJiSCJT6XjzG5YpVf4/KymbcAQ9Z3Pb3Z2wnVGncBxGR+ROlxoznxiGe3ejRzgTxyzTM4/Ml1qePfPvtYGDO1nJTzIXrLU/uDu2s1jPe8WOfHcbYLIKikz3MlDBBFsz83xsPbGglbi93YB1Nv4n3r6oi73Y2Iwkayv49oSjJ9VGxcAGDi7Nd2EpB9AiUuHPsMXBjKXiewdV1uhHso9epcvVXvyV4HefXO2ou8I2bEFVwz4gqa7dRqFmxTVWwbdNmRZsR1DudsS82I60iuukAz4haGZsSJNFYuilJ7U9R8H9Ec96Z4gTH493PPwf99w7nOj094fA0u+cznsWJ0jE2qiIiIiEjDvO03t6SO3bHfnnhkr11Sx519i5XGz4jL2o+wtSc9srlsXDPiRNpJRwzEuQZrKlqasuW49jhp1GCJq/Nde8R1julmxEnnyUUalG8WDcSJNJZ7fzi+LfPls87AX/7u76T20QCAw595Dpd++nPYfcsQ/fdFREREROaru1zFeTffnTp+yUtPcH6/5OgP7prv0pSO59isA3FD3emVATQQJ9JeOmIgruB4M0F7xLUe94y4xgzEuQb0yup87xiuQd75NsSkNeVdmywHmhG3EFxr5ucc92sRmZsdN6cH5t+W+e5JJ+AD7347qkF6Vt1+Gzfju//+Wey/nltiV0RERERkvl57893o2WFG21ghj5+ceJTz+wux2lbOMRBXyzoQ55gRNzhRotMkIktPZwzEuWbEkWtQy+JxDpY4Op0Yzs4rlZGOUXHsP1h07LMj7c89EKe6YCG47sOuF2dEZG6cLxU1YHb/lUcfhff84bsx4fhbuw2P4NJPfw5HPPXMvOMREREREcnqrdfcmjr2w5NWOQfcAKBUSB+f94w419KUjhdPZ+JamnJQM+JE2kpHDMS51vqt5DXDodU0e0ZcRUtTdgzXoGuhQYO80loKjqUptUfcwnDNiHM9wIjI3LheIGnUMtvXH3oQ3v4nF2K4q5j6bPn4BC75zOex+pHHGxKXiIiIiMhcHPbkc1i1Jv1C2LfPOH7aMK4V0ubbt+hamrKWcWUd19KUmhEn0l46YiCuUHUsTel4A0KWtubvEadZMJ3CtUdco8qWtBbtEdc8rgFO15IeIjI3rj3iXPc31p377o0L/uz92NjXm/qst1LFRZ/9Es6694GGxSciIiIiMhPXbLh79tkd9+2z+7RhSo6X/LsqjV+aMvMecY4ZcdojTqS9tNRr/jZObxY/m5HhLmDYcRzFbZ85I8oeDwBsJdIHAMX+ChXO82xTwgBAHHNjtkmdCFd352MpyKeOFcv1F7+fZI/qhb/j3CNu5s4r2529w3jP3bZmDgMAA4UyFa4ccQMIY9V0Xs9m81C6Y24uknL2uAAgLhBl2bjDuN6I6qrVtvs+d21HRe56Y+KLuri4bHrbnzmJC9nTWKlx+eiRYzM2yJ4n+dgxIy4Xws5SlT27eSBzXADw3JZ+Klx9iLtuEGbPk6CbeyiJxmauf0ZK6QeNYCKBv6aQOa5clStbPnf7pa+b0qHZIywUuZcCKuAGYGYr605c9vPYqpVA3WsA+GSZNLXs8SW5bWEKSTX1WTkfvvB5Kq6B7GXrkYHleONH34eLP/ll7LVpapsmH0X43y9chE+94eX4wjmnI9phXzlvJHvhisn7qEe2yQ3Zlowmsj9SjZZ7qLhGp2knz4q5ttm2Nfmqp4m431YYzx7OI/vbwgmyveVlTyNVHwMobJ3HQxHBJNl/W0KEmQ/f5/KkvoIoKGNsFwuXJzmibq0OkmWEPW1kdEx7iy39ScC2JbPXCUx9AABexNU/xc1chWfi7PHVe8nyT7btLBkddb8n2xYJ+eBQLmdvy0c1Li6fzP+EzH+/QvR3lNKRFas1vP7Gu1LHv33SiTCT33e10SaQXuEhv9Ui2vLic2iUsYyYDel4KjaPZNPsz7b54W31+Hi9L/XZ8qES8pvcGR2QY3RM+WfbTUw9AnB9QB7xHAUA+VHuzuHFVDDyfsP293H1liXHRfxa9rw05L2tVXXEjDjt/9Ue3DPitEeczJ9rGdKiY5aktD/XkhLVjEtKyNy43hB05b+IzI1rSeVGLU25vad3Xo7z/+Z9eHj3lanPgiTBX3//5/jx//1vHLFW+8aJiIiIyMJ4zR13o68y9UXHiXwOPz7u6BnDudrH816a0rXFRealKdMvqg6UtTSlSDvp2IE47f/Velw3S9cyTAyVkc5Wdiw9WNDSlB3J2YDWHnELouq47jQQJ8JzLk05zSb187VxsA9v/siFuHO/PZ2fH/7UOvz4/3wWf3Pp5Sg0aD9fEREREZHnvfX6m1PHfnLsKowXZ56F5lyacp79P84XejNucTFUdOwRVxqn0yQiS09nDMQ5OgBcS9HJ0uaaoeZ6+5uRd8x+qqjzvWO4GmKNmm0prSUfpRvQ2iNuYWhGnEhjuZfZXrj6a7inG2/7y/fi+sMOcH7uW4v3XXEtfv6xz+DkBx5bsHSIiIiISGc56Ln1OHbNk6njl5x64qxhF+Il/0asrDPiGIgbKJfhx+QaiCKy5HTIQFy6Q32h3hCWheO8WTboLWtn55VmxHUM136AjZptKa3FNShfDTQQtxCcA3GOGYkiMjfOtswCt3dLhTx+/4O/hy+88jTExr2XwD4bt+CST3wJH//Bd9Bb5va8FRERERF5nms23IO774q793av1rC9UrOWpsz4cn/s+xgupvev66uo/SzSLjpjIM7RMVHR/l8tZyFnLbn2A9MecZ3DVR9oacrO5JoRp6UpF4brDUHNiBPhOfe7dbxo0mi1MMDH3/IavP7v/ggP7rHLtN9782234Mr/+Fe84r57FjxNIiIiItKe8rU63njz7anjF596IjDNi2Hbm1iiS1MCwFBXT+rYstIElSYRWXo6YiDOvXm9BllajWuwZL5vrbzwd1yDtU3ovJKlwVUfaGnKzlRwzojTQNxC0B5xIo3VzD3iXO7Zb0+89u//GJ944ytQDXznd3YeG8NnL74I//2tr2Gn0dGmpU1ERERE2sNr7rgb/TusslAOQ/zo+GPmFN61YsT8Z8Sln2Nrvrs9PJNh1z5xExqIE2kXrdO7aIDewVLmYLv1jWK5SVday/cYx0F7bnCGWVHgKrlSxA3ubS6n33iYi6FSesrybCZGZ960dDq2zo3ZmlySOYzf6x4AqS5Lv9nSFdUQTH4/slxnk4mNs/O9XAyBGe6b+e7sN+p6wuVjLc5+AweAcp0rkzGRznyBa7iU2P0asxetaV89KDmWHizW67BhAhiDOLJEZICP2d/GcrFEVhomPwCQSYRlwrFxka+MJETRysXpBnQdOfi1mRMf3ptuMC+kkMzLOE+EKXBNhdwsY2q2kr4f5WsRcsPZf5xHjpuz4SzZerIJeeIIQcjtJVDLE/ftEe4eZbiqFRHXlIENskcYlLhzxtQ/AJAwTZn+bQW5aCqpjyp93guf78jzuRNg7fRlJAo8fPYNL8WVJx6Gf/7yZTjhkfTeHQDwyvvvxeonHsPH33AuLj3p+GnfXs5v5spWnOd+W9TNhevZOfuzQ0+hSsVVrXMVENO2q1S5glwb59rk/jAXH9MmYe6HAGADtjGTPQhbj8RFruHkkX2QhniHpjzMVeRRN1cnJFTDFfDC7PdEUybzn2yTVJcRaSSfG9g2ORuOuW58shw39XljnDsBXpULF4xxmRL1ZK/L/TK5l5VHtrfYtjUTjGy3GqIeAYB8oXkvBidkmzDJk/0dXvb4zHbP42+7Lr0s5U+PfgnGgi6YHYq7X0mnsRqn70HdpTqCsRcrgqz1ZLGULvtRlENuePbKxd+uCT9c6E59vnxkfMp3nse2Ezzivh2UuDISkuEYbD0elMlnIq5JAhBtSUNWrUnI3ri5YH6FKFzNKyJLQmfMiKukb2AVtvNfFk3F8dZKwbH/H2OxlnOSpSHxPFR2mPXkWavZOR1Ie8Q1j3NpSu0RJ0JbSnsiP77bzrjgo3+Av3vXeRgvuNPQXy7j3y7+Li7+r//FEU89A5Owb5SIiIiISCc4aN06HLdmber4xSefNOe/UXbsEddd416Qel7O1Y9AbHEx1JUeiBsoZ5+UIiJLU+vMiJuHvGNEtlJUx2qrcS0f2LWAS1Nq+dLOUsmFKOywnECxVkNV5aBj+HGMcIeO4NgYRF5HvLPSdHXfR2IMPPviK1BhksBPYsQe+3qZSOdyLamzmG0Z63n45tmrcdXRh+CfvvYjnHXXw87vnfzI4/jpv30GW3q68duDDsCNB+2PGw4+EE+uWN7kFIuIiIjIUvbWG9Oz4R7cbVfctfdec/4bJcdAnKtPMAvn0pTEC71DRcdAnPaIE2kbHTEQ55o1Vc13xE9vK5Vc+pwV6hFMksDOs6PcOSPOcXOW9lXO5TBQmrrOeLFWx/DiJEcWgavxXA3COW34LARjUA0CFHd4ezAXRSjnNBAnklWXo73r2gOj2dYtH8B7PvROvPbXD+Dvv/dDrBh3dyYsH5/AuXfcjXPvuBsA8MzgAG7e+yD8dr8DcdO+B2JTb18zky0iIiIiS0ihVsMbb70tdfySk1ZnemZ39fUtxEAcs9f8sGMgbrCsgTiRdtERo1H5qqNCJPe8kcVjPQ/lXJgaNCvW6igVyI0eAHhJ4r5pEtPIpXW59qrrmmdjTFqLa1nEiuqBBeUciIsjlMHX6SKdaqnNiJvCGPzkuFW4/pAD8Xc/+DHOv+WOWYPsMTSMPYZuwfl33QIAeHSnlfjtvgfipv0Owi1774+xYva9kkVERESkNb36rrvRV5m6WVo5DPHD447J9HdKjm1o5tv34+pLYLa4GHYsTTmoGXEibaMjehhdS1NWtUdcSyrlHQNx1fkNxBUcs+FKOc2C6TSVBXgrSlqLa09AZjkJmbttDydTZ6JqnzgRjmt2/2LtETedoZ5ufPidb8WPjzsaH//2D7DH1qE5hz1w0wYcuGkD3nnL9YiNwd27742vnnwGfnHoUWqziYiIiLS5t914U+rYT45elfnlLOeMuPrSmBHnXJpSM+JE2kZHbHxTqDhmOWhGXEuqOAZQXW+AZ1FwbKpaCdX53mlcswZcg7TSvjQztvlqjocT13kQkdm59s1dCktTulxz2CF4xUc/jH940+tw7SEHopyx3eVbi2OeWYv/uvQifO7bX8HKkeGFSaiIiIiILLqDn1uHY9c+mTp+ycmrM/8t1x5xS2ZGnJamFGlrLdTDaBH6ceZQ/aaEMEqmHEsMkO+KkDfuv1eJuWwJvGT2LzmctPMaKlw4Tfpn8mxlgIrrmQkuXGIb+4ZyvSu9b9B+PZvh7Qw8F/ZTf7OrOp46VimE8AarM6elSrzdgq7MYQBgaIwLVytzA4q2kn1/prB/5vyajtfDDXaZdYXscc3Qv18x6cZY75YY4XIffpUsx1yVAEu8ImEiMo2WC5bkiYDkjAWPHQ/NmP95136iXgi/PHu6awNcRia7V2b/ksOyAa4xbkz2dA6NpB8G5iJ+dvY3E10D4PHOVUzsmvH+Rr5WFIxxAcNRriyH67MPipR9rmx5AVkBednji7q5NIZjzZ3FZIgsIZpa28KRZZKKbzIbXS+PlAvhC5/vKF/gKtfSOLcKgV+emilVFPGNE0/HN048HbkowtFPrsXJjz6Kkx97FEc9/TSCZG4n7KyH78eJax/Dv73qXFxy4mpYz0PUTZb/hCuT5VI6T3YeGkV3uYo1u65w3v/Gh7i2nRkjH9+I+p9tW+RKZDiybmXaCey17dXJ+o64bcfkOLrPNclhLPfbaj3Zz5s3ypVjtknoFbgT7vvZ65KowNU/JuJuHMy9Le7h8sPUyTROdyOaPWBmda7ZSj9vMNd2OMGVkSTk8r82yN23mfjYeoSuW0e5E5cQL1sash5hjQ8TS3CT9UhA3u8t8dwAACbOHt/br745dezBlbvhwZ59kN8y/d9zXduJzSGBgbddZ0g+ilDYapF42/IwznjZ5Grp8hHBn1PdEpRe/O9RzzEQNzEx5TvPo/tJCEGZPddcuPxI9ustCblyHJS4azsqcPvaJyHxvF3kflvXRrKQkOeN4nXWyiYtNBDHyVXTF1S1oGUHW1W1kO60dS09moVrKaeyli7tOAuxYa+0FudbbJodu6Bcbwm6ZimLyOxcM+KW2tKU06kFAW7e/wDcvP8B+DRehZ5KBceteQKnPPIoTnr8URy6bt2M4XuqVfyfH34f5911O/72/DfjkX13alLK04Ioxt9+6wq84xc3wbcW9+67G/76D8/HQ3vtsmhpEhEREWlVhVoN591zW+r4pcecxPXtGoNKGKJrh+Uoi/UaJvLZX/gGGjgjrqClKUXaWdsPxDn3h9OylC2rkk+fO9fSo1kUHbNgXLM0pL2VHRv2znedcGktjVrXXebOtfSna68+EZmd88WiFm3PjBcK+M2hh+Gagw8DACwbH8Pqxx/DyY89hpMfexR7bd3iDHfc2rX46X98Cv/5qrPxv2e/FPUm1+FdlSr++zOX4KV3P/rCsSPXPIcffvRz+PTvnI0vnnvqC29ai4iIiMjsXn3/XeirTl1JphTm8JMjjqH/ZinMNXggztGX4Gdvh44WiqnZev3VMvwkRuxxM7BEZOlo+ydBDcS1l4pjRlzBMZCWhavjyrUXnbQ3176ARc3M6Sh5x/lm3mKTuXPuEafrToTi2jN3qe4Rl9XWnl5c/pKj8Xfn/w7O/Ku/wQfe/i5s7O11fjcXx/iLn/4cP/nXz2DV2qealsYVI+O45P9+acog3PZp+utv/xzf/j9fwp4btjYtTSIiIiKt7s23/zZ17GeHH43xArF85yTXi9hddXJtZwA5x0BcjehLiD0fY47BwP6KY21KEWk5HTAQ5+hYdcyqktbgGkQtzHNpStdAXqu+QS68Ui69CHhBS1N2lIJzOQndLxaSa6DT9TahiMwsiGKE8dQ9Z2JjUAva8M1ZY/DzI4/COR/6K1x6/AnTfu2Qdevxg0/9Nz72vR+hq8p3rMzFvs9twvc+9nkcuea5Gb933CNP4vKP/Bcu+PWtALmPjoiIiEinOHj9czj6mSdTxy89ZvW8/m6jtyZxL03J9SUMFXtSx7Q8pUh7mPNAnDHmmJn+WchEzodrRlxNM+JalnNG3HyXpnTuEdceb5DL3FUcg687LlUg7c21JKJmxC0sLU0p0hjT7g/Xxnsij3Z14W/fdAHefuH7sXb5Cud3PGvx7t9cj1/80ydxxgMPLUg6jlmzFt/9hy9gr01Dc/p+d7WGf/7SD/GVz1yEnUbGFiRNIiIiIu3ANRvugZW7497d9prX32301iTubS64voThYnqfuEENxIm0hSwz4j4H4CYAXwDwxcn//iyATwH4ZOOT1hj5aroyrGggrmW5loyc/x5x6Zuta1BG2purIVZwDNJK+2pk41nmxvWWoOttQhGZmet+1SnLbN+0/wF4zZ//Bf73pS9DNM3+a3sMDeOiz30Zn77oYiwbG29Y3K+45z5c/N+fx7Lx9HJBlTDAD095CZJpBkPPuvsh/OLvPo1X3XZvw9IjIiIi0i6KtSped8/tqePfOfakeb9sVg7TKyLNbyCucTPiRvPpJTd7ahXHN0Wk1WSpFZ4D8AfW2nsBwBhzBIB/sNa+aUFStiNrMF7KvmnmhvXp/SO2mG48sGGX6aOyXIWeJFy4tT3LqHCDhXLmML6XzP4lh3Kd68zZOt6VOcxM+b/ZpN8MqQ4FeG6oH/U6t/xSvhynjpXCHJJo5nHqIEyHm83O/VznT0+OW1JpvJZuXMwFc77LNa6MVGLuvMW92fMfE9Of01LRsexpUkOS45eO8mrNm4kQZK8OAAAxOfnTqzfvtyXkuxM2zHbuctbRkV0IEBVn/zt2T+4E7DTA1QnGcOWyWs+emWGOm6FWHpx9QK3Snb7+86jDFrLdq0ydW2mbvb7jAlf+o92z1+X9/dx+ALWIq1tLY0RdTlaTtQGuTcIKxonzRrYJQV6j1H1jJETX5nRelsIcMDL9+ayR13ahi+ukKPcR9c/w3MpxNQzxiVedi58dtQr/7/vfxRHPPuP83htuvRNn3P8wvnba6bjkxJOwtWfq0j9Z6oS3X38D/uH7P4TvWGJya08X3vuhd+KOA/fCJWccj0994XvYY/Nw6nvLxkv4/Ge/hR+ctgr/+K7XYKx79r1OkoC7bmyVqBMqZN0akHVk9scGAMD/z957R1lyVWffz6lcN3SYqJFGCSGQRFAARA7GZLBNMg4YY4yNjXGO2J8xr83r+Dpng7GRsUkGbDA552CUQCihMEqj0aRON1XdCuf7o3uk6a7dfevsubn3b61ZM1N9T1fdqlMnPWc/22IMkxWz+XHA/G6BeZugGENdALAyXvvjdHjlkor5PdFM11zl8K4x544TOO+Nz6tceTzEsQyzb9NVXr+RMG2Ss8D8nnhLzPvI3LvS2WN+LzPmRplggVe3uO2dt2LeCGlm+5/UeM9Npcw2gfEI/JC3WZA7b+PQjXl1S6/w3lHNXROwy92T595wDerxegGq5Xn44KWXlm77cpe+xmZYXAjxre4DYxHD5+ZlRBCI75bq76wNr1qbEAlrUVT4nNdgzmU5a0DMR73xmsuy2XPbCu64adhwrtPKme0Ic0yYVnmLcLlr3pb7i9vLiczkDj30hAgHAFrrbwO4sP+X1F+o/F/bZYfwNEJFqlHWkiaQu8g9iZrcbvTbI1yYPIJEcsQNG7GmFIT+UCH6KyrSe9q54Yz9eMnrfh5/+PwXoOPS4/0d7TZ++eMfw5f+4E34o/e8Cxfcu3VetwJa49f+5yN403v/ixTh7to9j5f8zk/j6vNXLZO+fuGD8Jw/+Hm8+ymP2vRXvviL1+Kjv/G3eMK3bzO7FkEQBEEQhCnlB678WuHYhx9xKVqBeZDGRkhrSub6j8pzeFlRXUlsnsDZIoS4ajLYfMeCIAwHEyHuW0qpf1ZKPW3tz1sAfGtQF9YvKhGxMCFC3MRCPbuQeMYmUEJeRIgywnTTz4GYMJn4hBAXbbKQK/QHWogTa0pBMIXaVLRd891mto1/fup34Xm//Kv48oPP3/Rzfpri+6/8Bj78l3+G//jHv8czv30drHzrsAE3TfHn//FO/MynP0P+/FvnnoEXv/GncWDf+px1zTDAb/zkS/CTv/gjOFYvujsAwOnHl/Hvv/+veMMVH4Yv1tiCIAiCIGxjLjh0Ly65567C8Xc/+nF9+f3URuwK05qSEuFi22HbZ7a9otBY6YoQJwjTgMlW/1cBeC2AX1j7/xcA/EPfr6jPbOecGdMItah0qnm8AmoXueSI23YMItpSmCzoHHESETdIYkLolIg4QTCnQuS7bW/zTUV37dyFH/3Jn8JLrvwGfutDH8RcZ3ML4cfdfhsed/ttuOvDO3DFk5+E/3zsY9AI19tE1qII//AvV+BJ37mF/B2ffeRD8Lqf+yG0g81twT/5qItw9YPPwh/863/j2VfdQH7mVR/7Kp76zVvw6cseittO343bT9+F207fjcUZWsATBEEQBEGYNn7gyq8Wjl2/7wxcd8aZffn9bWIjdiXmiV39zA8HbBIRJ0KcIEwFpVsGrXWklPpHAB/RWt88wGvqKyFhTblddwhPA1REXCU6NbGEriMixG03qIi44BSS9QqTByUAUUKR0D/EmlIQ+gOVXF42FQFQCu97zOX43AUX4jc//D/43muuJu0kT3DW8QW84b8/iF/66Mfx3ssfgyue8kTcsXs39iwv423/9M+48N5DZLn3POVR+K1XvRBpiTxIx2dr+KlfeDle+pWr8MYrPox6p7iw8qBDx/CgDx9bd2yhVsFtZ+zGrft247Z9u3Hb6at/37N7HrnFy60jlMPOM+xoNbGr1cCexQZ2tlf/7Gqd+HcTc1ETubIQOS7itT8dx7v/3104D/zMdlf/bbtY8UN887RzsBgW85oLgiAIwnYk7Mb4vm9eVTj+rsc8nh1ltpGOVxS7qPF0GegNvfxxeIu4NrGmFITpoLQQp5T6XgD/D4AH4Fyl1CUAfk9r/b0Dura+QOWIE5FlcukEhFhCPGMTqKgnWbzaflCRAxIRt72QHHHDhxTiiB2FgiBsDbmpaJtHxJ3M8Xodv/qDP4w/e/Zz8Yqvfhk/8PWvbRkhV4tj/NgXv4Qf/dKX8dkLL8AFhw7hjMUl8rN/+exn4i9f/jSzhSGl8P6nXoavXXQu/uQf348n3HCgZ5EdzTZ23HwnHnPzneuOx66DA3t34rZ9u3Fkvo7lavjAn8oD/15ya1iuhIhljAtgdZFvvt3CznYDO9pN7Gw1Md9Z/XtXq4GdayLbrmYDc502LPCS3ZchsWx8/LxL8I5HPBk37u7PTn9BEARBmFSef921qG2ITmt5Hj70iEv7dg5qIzaVc7kM/Y6Ia1NCXDdi/z5BEMYHk5bhjQAuB/A5ANBaX6uUOncQF0WiAM8z3yW/WzULx7y5DGfML29aZn91yfg8ANDJeBPbO1fmWeXuWjAvt8Um4C2x7a1zZmx+PvPdKtHS5olXV5JK4ZjXylbLpLydMQERUdexfehk693FszuKdasX580e6/0hgnPC46xyXI4n5vZH31nZwzrX3XqOVc6qmO8IiqPN39G4U6zjFUSwTu8gafPebRXxkvNq2/xF7Wb92RlWFtU1P5/b4F2ju8IrpwzbBL9b7GPK5ojLj/ISRh85vrmF2VZYETP6wTKvW5p5Kjfqff+TqPj9K0s5/EOG75wa3AIphdPmleNM7ZotXt1KO7zJn7NkXs5f4L2jFlNzjed5z1szmmS3wToV3MO8e5IxHne8e7OIuK2FuGSL8daW5TzemFCF5uP4hNFmAYDVph/2wdPm8Ecvej7+6nnPwIu+cRV+7AtfwvmHj2z+e7TGd99wI/mz1LLwOy98Cd5z+eOgO8XcIL3ILI27wz344V94DV71mS/jN973MQTEjupe+EmKC+45jAvuOVzq87HjrAp0YYjlSgWNIEBq28gshcyykCkLmb32t7KQWRZyZSG11/62LOSWQmrZ9/+dWdZa+dXfk8NaO3bi86t/Z5aNW/buxa17TzP+nlvhbXhPlc5x+d234iHH78WOdhPzURM72k3s6Kz9aTcRpuPjeuDmGV5wy1V4wS1X4Zs7z8V7zn8SvnD6w5ErXgdsR7x3NPN55+O05RZjHAkAGXNsbTomPIF2GG2Qb94eAEA2x3MEULH5c7NqvA5YM+cbqjO8qN2cMY8CACdmfjfO6YY7bIXDbBOciNG3+bx31OryrpELY5kKijnfyHNe3UruMV+T4batbos7T2cVg+rxuH/oq18rHPvwwy9Dxw7Z84eNdBzKmrILa60p1lb5e+LHxXel67g9v+cJVLa+brUcQoiLo8LnwuO8foPzvmmbWUeavGs0uf8n6OzhbULMAt5385aZ9z8ZXntnE3WzDFnAa8tdYk2tJ1yhYkIxWW1JtNbLav1uz7G/W35MhAj7EuEwqbQJW1EqL4oJYk0pAJvkiDvFaEthsqB2snUlIm6gdKkccYyFaEHY7kiOODM6vo93POkJeMcTH48n3/wdvOpzX8R33XhT6fJt18PPvfxH8fkLLjzla9GWhX95xpPxxYsegj+54r247Pa7Tvl3boWfptiz0sCeFabK3Afe9sQn4/df8L3QA7DUdLMUf/LRf8PTD3y77797GFx8/AAuPn4A91bm8d7znogPnXs5Wm7Yu6AgCIIgTAEPPXoQjzhcHAu9+7LH9/U8VEQc35qy3zniipvlxJpSEKYDk5bheqXUDwOwlVLnA/h5AF8ZzGX1j5CIdopEZJlYSLHkFO0DxZpSAOjckadqeypMFv32dhd6Q01QPLGmFARjqLEMNWYSNqAUvnjBQ/HFCx6KBx0+gld95kt40dVXorqFNdHxag0/8WOvxnVnntXXS7nl9L140et/Bg89eB8uvOc+PPjQEZx33xGcd99RnHPkGPyUt6N1HPmxL38RSmu86Xtf2LdcL8BqLrc/+vjbJ1aEO5nT24v4+es+hJ+48ZP48NmPxnvPeyLuqe8e9WUJgiAIwkD5/m9/tXDsht37cf3p/bVuppwjQrY1JbWOcArWlC7hGiNCnCBMBSYtw88B+P8AxADeAeDjAP7vIC6qn/gRYTUWysLEpEJ2lqcaEUd0tpHsIt92tAmBXnLEbS98KkcckcNM6B+U0CkRcYJgDjWWoVwEhM25fe8e/J8XvgR/9uzn4WXf+Dpe8ZUvYf/S4rrPHNi1C69+1U/irp27BnMRSuHm/ftw8/596w7bWYb9xxdx3qGjOP/gEZx3+CjOu+8IHnzfEcy1N891N8688itfQtv38WfPeV5ffp/SOX73U+/GM267ri+/byOLQQULYR0Lfh3Hw9U/C0EdC2ENx8MZLAQ1KGj4aQI/SxBs+LvS7iLIuvCzFH62eixMY1x++DuY77Y2PW8ljfH9t30ZL7ntK/jKvgvx7gc/GVfvPq+vAqYgCIIgjANhN8bzbrqqcPw/H9HfaDhg1d1gIxVmRJxHzF8T+xQi4sgccSLECcI0UKplUErZAD6stf4urIpxE4NPRLSINeXkQi0qnapYEkhEnAA6UvZURV5hsqAsJSKJiBso1E5BEeIEwRxKiOuUzHEprKcRhnjrU56Gtz3xyfjuG6/HS6/8X5xz7Bi+fP5D8NfPeBYWq7WhX1Nm27hzzy7cuWcXPvOwix74gdbY0WzhvPuO4uxjxzHXamO23Vn7s/bv1kn/bnfg5sPNw7MVr/3sp9H2PPzD059xar9Ia/zW596P77n5ytJFEsvGYlDFQlhb+1PHYljDYli9X1w7VlkV3BbDGlJ7NVeGw9Q9vSZ9370swbPuugYvu/WLOG/lvk3LW9B40qEb8KRDN+DWmdPw/vOegDvqe7HiVdDwQqx4FXRteecFQRCEyeW537kGtQ2RXy3Xx0cfcmnfz0VaUzLFLtqakt8nS0ScIEwvpRQprXWmlMqVUrNa6+VBX1Q/CYgccWJNOblQAlmFGT5+AkqIEzun7Qf1zCtxsu0Sh25n/ISwlJCF7IESkTniJBJVEEyhxkKU5bJQnsy28YmHPxKfePgjR30pm6MUFuo1LNRr+Mb55275USu2AK1R6XZXRbnOqjhXjWPYeX7/HyvXcPIcVp7DSXPYuX7g5zqHna39nZ/8R8POs7VyGm6Wbficxly7hafdXMzD9ysf/yg6roe3PfkpvHugNX7xKx/Cy75NZ0x4+yVPxZ1zu1fFtsqa6Fapo6X8sYgq69ouPnTu5fjQOY/Bo47eipfd8kU86b4btyzz4JX78OvXvL9wPLJdrHgVNJ0QK26IFbeChrsq0p3497fnz8btM/uI3yoIgiAIo+WlhC3lRx56KdpeMWfaqUK6bfUxIu6UcsRREXEixAnCVGDSMjQBXKeU+iSA+/0ztNY/3/er6iM+kSMuDiQiblIh83idohAnOeIEAMgtC7HrFMQYP0mRQBYztwP99nYXekNZf1IWoYIgbA21qagtNtvCRpRC2/fR9n0cmp/r/fGUJ1RZm6Sz+5WPfQSv/eynC8d/+0MfQMdz8d6Ln2B8rp/5/Cfxqqs/S/7s95/6ErznkU+krzEZs41WSuGqPefjqj3n48zGUbz0ti/jeXd8A5Ws/DwnyBIEnWXswdb7Zt97zhPx1w/73lO9YkEQBEHoGxceuQcPP3J34fh7H24+NigDGRHHFOL6nWu+RUXEdSP27xMEYXwwWWF8/9ofY9asLa8EcFBr/QKl1LkA3gVgJ4CrALxCa92zxdPafDIYEtaUeUXBtze3vlqMK8bnAYAZj+dV8tg9d7LK2XvMrWVua/KSfC9EvHvSScw7H9ve/HtZM8WZfdhNUN3ZRpLYxucC6M62W7dhB5usIqxx/Li5NdHnj59vXAYAvhqewypnWbxFBtfZ+rtT7Ki2Wefi0jxuXidVvHUdaXteQYjz7rOAumV8LgAA0/3JXTGvy4p5LrvDW2SzGRuylHm1AgBo3qsNy3AcTS1kp6kLp937Htkxc7GSqTlx76XFWFTNmBsQyzy3NKc2V6RwDJsTh1mPGcOKVZjldMpoSxzey61azBeH0W1w25+cOT/1VpjvG2Nu7US8frRylHdTulXzOtI6U6FCWClHtrelkKKrvIZEdXh1y26ZP/B0jmdVmzO/m9Xlbb6wIvPnZkW8esxuthi3hNtGbtYm/Pl3PxeVqItXfvWLhZ+96b/eByx6+MhDHlX6PC//1ufxC1/9GPmzv33k8/GhvY9D5TCzw9wEp8NrExKDd/uOHXvwpztehDc/7Nn4njv+Fy+99cvY117sXbAkL73jy/jM3otxw9xZ646nYd9O0ROL6UKdJ8xKmTPLVc0vtDbHWxOIOrzNE7pi/t08f7ibnnSFd75opbgY3fNcEW9wQQxJBwZ3n1/CeNYAYDPfmzQ07++zgDdvdtq8cZPd4dUtxXjgWcb7bjm3XN28/+K2kU6HVykTplu3S6RGfcn1xWi46/fsxw379q+WafDOpTe5/d2UELviLpy1a9MGt6RC1MMscVC5r9yYoX73hr5GW8igYJ80MQuyFDtui5FZD7yXVsJ7bzjvaRry6nFa5c0bVG4+3rK7vDGaSodbzonN321tMdvxGnPCzTyfe9/meY83PxfrVBNLz6+rlDqxbfEirfUVG/+UPM8vADjZY+OPAfyF1vrBABYBvNroqg0IIsKaMpBop0klcSykGxoEN8vhJvxJNiXWdsS+dFtC5dOh8u4I0wnp7S7WlAOFzBGXSUScIJhCCXESESeMHUrh95/3vXjPoy4v/MjSGr/7uXfh6bd/q9SvetGNX8OvfvWD5M/+5aJn4D8ueNqpXOlY0PRCvPMhT8XLnvMb+K3HvQLf3HlO3373M++9um+/SxAEQRBOhbAb4/k3Fful/3zk4wd2zn5GxFHWlF37FJx1lELHIa4vE3tKQZh0yuiO+5RSTwDwvUqpS5VSl538p1dhpdR+AM8H8M9r/1cAng7gvWsfuQLAC1lXXwKfEFnEmnKCUQqdgIqg4C/cUmXFmnJ7QvqEn0LdEiaLfltKCL2hhDhqIiMIwtaEhKVrJEKcMIZoy8IbXvj9+J9HXlr4maNz/NGn/x1PvGvrHGnPueVq/PYX3kv+7F3nPxlvediz+nKt40Jm2fjc/kfitd/1Ovz4038e73rwk/GlfRfiWzvPxh31PVjwa0iV2Xbipx2+Dnbe32hBQRAEQeDwvJuvLuRAa7k+PvLQnkvObNp9taYk1p1PcR2hbRN54lIR4gRh0imjSP0OgDcA2A/gzzf8TGNVVNuKvwTw6wDqa//fCWBJa31ipe0eAGeUuVgOPhERF/sixE0yke+i3l7fAYVRF/Cqxr/LzjL46fpJaK4UukTeImH6iQgB9lRzEAqTg+SIGz7UBIWayAiCsDVU9LZExAnjSm5Z+PWX/hCCpItn3nj9up+5eYY//cTb8LPP+0lcdfqDC2Wfdse38abPvhMW4aP7gXMvx19d8j2A4hp4jj837TgTN+04s/gDrVFJY8x0O9ix1MBM0kE9aWMm6WAmaeNHb/s0/PyBcc58t4XLFm7DN3Y9ZIhXLwiCIAirKJ3jwiMH8ZQDN+Cl132t8PMPX3AZOp65PW1ZIsoNKU2gdA5tuLnFz/ocEQeg7QRAvLLuWEWEOEEYC9aCzC7HA3rWQQD/q7Xu6Vfas2XQWr8XwHuVUm/QWr9pi4t4mNb6+g3HXgDgiNb6KqXU03qdi/idrwHwmtUr5fnK+jGxsCrWlBMNZRtJ2UuWIegW60fHc6d6Ai9sTtsvLlpWRIjbNvhERIlExA2WLmVNKRFxgmAMJcRJdL8wzqS2jV/8wR/FP779rXjyrd9Z97MgS/HXH30rXvv8n8K3Tjvn/uOPvedm/PEn/w2OLuZE+cRZl+BPHvWS7TuGVwptN0DbDbCQzxR+fP7KvXja4evWHfvuQ9eKECcIgiAMjWoc4fEHvoOn33gDnnzgRuxub574bZC2lACglYW246GSrh9DB0liLAC6/bamBNB2iBx2IsQJwshRSj0LwN8DuAWrAhywGrz2YKXUz2itP7FV+dItw1Yi3BpvB7AxbviJWLW0fB6AAMAMgL8CMKeUctai4vafdOEbz/lmAG8GACvwjLMgWlkOr7sx2gnoejxRTxgP+irESX444SToHHESnbNdGISlhLA11P31iB2FgiBsDS3ESUScMN50HQc/8/JX4V+ueAsec8ft635WSbv424++BT/5Pa/Fzbv245JDt+MvPv6v8Ag7xS+cfhF+7/IfRG5ts2zvBnx638UFIe7Jh6/Hn1+UoGvLWEcQBEEYDGcvHMVTb7kBT731RjzmztvIfnwj1+09Ezft2T/wa+u4RSGuknSNhTgqx/kghLhQhDhBGAf+CsAztNZ3nHxQKXUugI8AuHCrwv303CpsP9Ra/yaA31y7oKcB+FWt9cuVUv8J4KUA3gXglQA+0MfruB8q91ccSLTTpNMhopYoQa0MlMhC2RMK2wMqnw61uClMH3aWwc3X77DPlEIqi3oDhbL+9NME0Fr6akEwgBrPiBAnTAKR5+E1r3g13vav/4SL77lr3c/q3Qj/8OE34/894fvwm196P0Jiw8zXzjgfb3jcjyCzZKPlVnx910PRdHzUTlrEq2YxHnf0JnzhtEeM8MqEcSKMVuc9VE52QRCEMrhZikfddTueduuNeOotN+DchaPGv+OfL3/GAK6sSMf1gM76Y5UkxvH7MyuVg0xxcYqbXDpURFwmQpwgjAEOVtOsbeQggJ4vfj+FOJOItd8A8C6l1P8FcA2At5b57XFk1pDVlouNVNv18J37dm9ZLs94E7ks4pU77fRFVrmKay4+Wco4sBAAEKW8qtLsmHs6d6Otz9VyihMDa1mj2zSfMNjErY8cD1mjd12zm4wFeua6cmLzJkNWzDthZ9Y8ebs+jXUq2HbRXqgUmfl3U8nWZTpE3Qo7KZwG7912G7z773R6f6ZfKGbwUeWo+XNz27xnffxCXvuT7Ch/PocQ82PXQbxLo0z35rR5zzpnrnNkPq8tz6vm7zY0sx4v935vUlhILQvOSSKorTUcnSM1WFRVjK+1ejJeMc3UZ51j5hOydJZ3/xXzudmMvQfc+2Ex2x+nzav/nHrCuR8AkFSYbQJjzu4tWajExQtN2wG8dPOHEzMdIrTLa8u1ZX5PKgd4ixjJLLON5LYJjMedzjEbLov33YxmamuomPdy2x2zcitugFf9xE/inX/393jo0UPrfjYftfAHn3kHWe7qM87Fz770x5FFjM6UOSbn9jecdtLpMNvxuPiwO/DxhX2PwPPuvnLd8acf/iY+e9bFAIDc4Z3P7ZhXLqfNq1tWlzlPD3nvTdYyH4OmNd41KuY8nVMqzzc8a63xq//xKfzYh74KBY3/ePbl+MNXPht6w4a0QrmSpIbrOCewPPMXjnv/vRLjVgrOXIrbjljMct0a732L6+blXOYYTTOvUXEGTgAsxj7uNGGOmxjrFgBgL5m3P9w6wl1/2Fj/Lzl4AL//sXfi7KVjrN93x8xuXPHwp+Mr8w9HcHx9XXKIvq0Mrb2b162IWP+pdLqwqoAymAME0SbWlCUvOZ4t1q1GGBSOeW6y7rNJlbmkz7iVwTJ3/M8qBqfFOB9zI6/mjv+Z46Zod/HZDgp/gRe0knm8B9c5y0zEBgCry1wTHh3/AuAbSql3Abh77diZAH4QJfStfgpxW6K1/hyAz639+3asJrUbKKRNj9gOTjwR8QypBagyUFGTklNl+0JFW0qOuO1BIPnhRkbsOHA2vGdemiC1JbpBEMpg5TmZJJ6KOBWEcWW5UsFPfP9P44p3/R0etHCk5+ev37sfr33JT6Dj+fAipji5zfjU6ZcUhLjHH7kJ1aSDlhuO6KqEceCx19+B13zgS/f//8c+8jXcu3sWb3vBE0Z4VYIgTBIPPXIQ//S+N6OalI/a6lo2rtp7Hr68/yJ8af+FOFjfNcArLNJxiY3Yifn6z7CsKSVHnCCMHq31Hyql/hvA9wE4kczyIICXa61v6FW+nzP0sVutpvKGie3g5NPuqzUllVNF6sh2hcoRF4gQty3wCSEuIuqD0H9ix0F1w3vmZynaI7oeQZg0qAWDtusVIhkEYdxZqNbx6pf9NP7tnX+LM5cXNv3crTv34jUvfQ2avohHJly96zwseDXs6DbvP+bnKZ583/X42JmPHuGVCaPmUTfdWTj2i+/6DD71mAtxz975EVyRIAiTxL6VBfzj+8uJcIdrM/jKvovwpTMuxDf2nY+Oa+6i1S/6JcR5A7CmbBP3pWIgcgqCMBiUUmdprW8EcCOnfOkZulLqRUqp2ZP+P6eUeuGJ/2utH8e5gEFCCXESETf5UEIZNyJOcqoIJ0M9e6qOCNOHnxCDZ1eiSYZBTAiePpEHSBAEGiqil1pYEIRJ4Eh9Dq9+2WtxX22W/PldczvxEy/7aSxVakO+sskns2x89vRHFo4/8+C1w78YYayYaUWFY5U4wZv+6YOreXsFQRA2YabTwj+9783Y3WqQP8+hcO2+s/HXT3wuXvojv4zvfs0b8QeP/3584ayHj1SEAzZJTSIRcYIgbM1/n/iHUup9poVNtsq+UWu9fOI/WuslAG80PeEwEWvK6YSyD+SKJbQQJ3Vku0IKcYyBmDB5kNaUIsQNhS5hn0clvBYEgYYc70pErzDBHJzbiVf/wGtxbIPYdqg+hx9/2WtxdBORTujNp864pHDssmO3Yi5uFj8sbBtqHXpx94nX3Y4Xff6bQ74aQRAmBS9N8Dcf+BfSUvr2HXvwm8/9YTz1tb+LH/nhX8CbH/dM3LR3PzuP1yBoExvXOGLX0CLi0uKmCUEQhs7JjdiDTAubCHHUZ8d6lVIi4qYT6hlSz7oMlBAn9qXbF0qEDZnRlsJkQUbESY64oUDdZ08i4gShNJRNjUT3C5POHTv24JU/9LP43zPPQ9Pz8eWzH4If+8HX4dDsjlFf2kTz7fmzcW+43mrQ0Tm+695vjeiKhHGg1t584fk33/Yx7FwSoVYQhPUoneMPP/oOPOrggcLPDtdm8JqX/BT+56JHY3GMI9j7Zk2ZF9cSklPMd94iIuJM8u8JgjAw9Cb/LoWJkHalUurPAfzd2v9fB+Aq0xMOk0BsB6cSKkccVywJiHJSR7YvVARBSERKCdMHZYUoOeKGQywRcYJwSlARvZFYUwpTwB079uBVP/i6UV/GdKEUPnPGJfiRWz+77vAzD16D9zz8SSO6KGHUbCXEzbU6eMO/fAS/+MsvG+IVCYIw7vz6Zz6IZ3+nGDHb8AK89sWvwX0z459fcrxzxAWFY5IjThDGgouVUitYjYwL1/6Ntf9rrfXMVoVNhLifA/AGAO/GquL3SayKcUNDWbnR5ymrnrRioRpu3bDWA17jttwpNpRlOHz7LlY5NWPeQdhuxjoXF52bBF2uYjtbP+c4KFbbStpdHxxaEkpk6bguUKaqnW4eFl6v8kLJqz5PaGzFvIU4pcxzAURd3kAjajJ9wV3za1Q9NnNGlEd43IXT5tknKObrZnfMy2hmfLJi6h3a/NVG6jMKAciZY1htUI+pCKyu40CV7HaSed7Drp9Ge+n3Yl+dV861za/zWLvKOteRAztLfS4i2nTMdNHZW77Pj+eY7yirFGPb0ykUVDHvvXFavG9nxeblOO3BqWAzXVksRnuXVnjnyh1m7WLUkTArjlvbngdtb/3LnAbvwdkd3g7f3GP022ZD//uZY6XOBqyU93Z3ZxjvjeJ13HbCbIEYxZwO71yauQnc6fD6Un/ZvFxaGW7DpS3zOpL6vHYk61Hu4+cUhbhHLN6Jfa0FHKqZRxxqxmXmzHFrWmM2CjnvXtpt83oSd3gD19oMYwIAIEnMb6bjrH9nZqKtz/28r16Pj1xzA774uPONzwUAUY/+aDPilvlcljOOAfjzjWQHo29jzr8q9zHHu8zzKUZ+QCtlXiNTX4hneR2Ozagn3Taz4WK2PxvHQNUowms/+2nsbjRw++7d+PDFl+CeHRvmW8whgrdsVvBHvvl5/OiVXygcTywbr3/iK3Fvchpq927eXmfu8OYbweLm15GkxTam3ohXyxjckoBw6NKRA3+Fn2OTyhFXTWOcvMRhx7zfHyyZj5tyxjMDwBskAFAZ57vx7odivqNJjdcmuE3z+58x19LSCq+NVDnvXnrL5oEMzCoyMrTmznRWKV1rtNYtAK9XSlXX/j32VIhop0isKSce6hn205pSIuK2L2SOOGb+QWGyoCKoJUfccKAiDyUiThDKQ0fEyXhXEASa22b34faZvXjQyuF1x59x17V4+0VPH9FVCaOk1u696fMN//gRvPgRP4Vmlbf5WBCEU+Nf3/oWPOrOO+7//69/9CO49syz8KGLL8FHLr4Eh2eHkz/1Wbdeg1/56gfJn/3fx/4ArjqNJ9iPAmojdpByrCmJTb32qa0lUEJcJZEccYIw6ZSWVJVST1BK3QDgxrX/X6yU+vuBXVkfIHPEBSKyTDr9tKakykmOuO0LmSOOiKwVpg9K+JEcccOBsqakhAVBEGgqXToiThAEgUQpfPLMSwuHn3XnNSO4GGEcqG5hTXmCvQsN/MIVnxnC1QiCsJFzjh5dJ8Kd4JK778Jvf+iD+NIfvAnv/Ie/w8u/+mXsaPKcU8rwqHtvw5s+807yZ3938fPw8XMuG9i5B0GHckRiCHF+VlxLGIgQl4o1pSBMOiaxjX8B4NkAjgOA1vqbAJ4yiIvqF2SOOF8iHCadfkbEyS5y4WT65REuTB5+Uhw8S1swHGIqIk6EOEEojeSIEwTBlE+deXHh2PlLh3Du8n0juBph1NTbxSiLay7YXzj2so9djcu+fecwLkkQhJM4Y3Fhy59bWuPyA7fjdz/wfnz1938Xb/vnf8T3f+PrmG23+3YND1q4D3/+sX+Flxdt9f7z/Cfg7Rd+V9/ONSz6JcR5lBBnnWqOOCoiToQ4QSiLUupflFJHlFLfPunY/1FKHVRKXbv253kn/ew3lVK3KqVuVko9e1DXZWQyqrW+e8Oh4SYcM4QSZyTaafKhI+KYQhxpTSl1ZLtCtQ9iTbk9oIQfsaYcDtR9poRRQRBoKkTktkTECYKwFQdru/DtHWcVjktU3PZD5Rq1TrEfef0vvgjtoDg3euPffRheV8ZpgjBM6lF5S0Jbazzp1lvwh+97D776+/8Hb37bP+OFV1+JmsHv2Mju5jL+9iNvwUy3mE/yc/sfjr+47IWAmrBET6CFOJY1ZUasJZxyRFzRBlgi4gTBiLcBeA5x/C+01pes/fkIACilLgLwgwAetlbm75VSp5QLbjNMhLi7lVJPAKCVUq5S6lexZlM5rlAii+SIm3xIsYRtTSk54oQHoBYuA4mI2xYEhPAj1pTDgRTiJEecIJSG6qckolcQhF586sxLCseeeee1gNZDvxZhdFSiYh/SCjzcc9o8/vJHijkDzzm4gNe8+4vDuDRBENYwEeJOxssyPP2mG/Gn73kn/vdNv4P/+Ke/xy988mN43G23lnYgqcUd/O1H34J9zaXCz76162y88fEvR24ZxXiMDVSOuL5FxJ2iENeiIuLSWPpoQSiJ1voLALYOJ36A7wPwLq11rLU+AOBWAJcP4rpMWoafBvBXAM4AcC+AjwN43SAuql9Qg0oR4iYfamceN2qJKicRcdsXSoSlIg2E6UMi4kYHJXiKNaUglIfqpyirZUEQhJP59P6L8XPf/B/YeGBRb3/zOC5auBs37CxGywnTSb1VXOBvVlYXgN/53MfgeV/8Ni65+eC6n//Y+7+KTzzpInzn3L1DucZTQmv84Ne+jp/4/OfR8n189sIL8c7HPw6HZ2dHfWWCUBoqmu1jD38EvnPaaXjBtdfiQceO9vwdXpbhsQduw2MP3Iaf+/Qn0bVtXHvm2fj6g87DddXzcN2eswvW5k6W4k8/cQUecvxQ4ffdObsLv/aUH5/ozat9sabUGl5eFOIS69TWEjLLRmw58E/63bbW8LMEMXHdgiCU5meVUj8K4EoAv6K1XsSq1vW1kz5zz9qxvlO6ZdBaHwPw8kFcRFksy0z5p0QWZy7Hrlpry3K7g6bReU5wVp23M6E5X1agXc+xTtW4zNHlGutcvs9bFM1z850xvTZ4pNXi7wy7XaiOedRo2OELcfWq+a6k83YcMy4DAIHNiw6xVM4ql+bm9/LeFm8yc9dh83oMAHZkbn1gd7Yu081o29PuPO8+KrZ5L2NHGdMJwuU1d4jmza8xZ47RmdUYKil/jUFcfFix5cLqlrux1l6eYFvxeG3r0RbvvWm2ihYXveC04wCgSt67LjFJCTppz/f1ZOyY9wJw31HNnFdFexltucMbW+gO77lZjEvkvqMWc59DUuc9b6trfi8tribMbJNtxvmqTWIjQe7DW976ItKK+bkAwF3hlfMY5TSz/ntNXqW0GXUEANLAfNwU72CdCqnmVS5Ou+W0eeeqHGaOm5htSe6YX2dS4bWRSci7J17TvG65bd4NSYi5EsURfxZXnfZgXH7fLeuOP/vA1bhp9szS57MS8+9mR7z7zy2XFwMLSpEGjDZhkbdAyqgiAIBK3dyqzHMe6OznusUcUq2Kt/oZB3jTzz8P7/qFt8JNH6iPbpbj//z1h/Dy//fjyOzez8SymG2yZz5QSyvr2+Nf+8DH8LMf+8z9/3/EPffgZz79aXzi4ofh3576eHz1IecBSiHJuGML8zLccSsxVS2FxTTXSgPz69TMc+kGr5zNHEvaRYfF3mWWeRMAbt+m7QcahTphCXnLaXvxl899Nv7yOc/Chffeixdc+018z9XXYv9SufVFL8tw+R234/I7bgfwSSSWjet3nYWr9p6Hq/c+CNftOhuv//r78NiDtxTKHg9q+IXv+kl0lz2EMB+8Zr55W06tA5bB6WzeuCZJcYGiEnfhNXJYablG2c4z2BsWMVNlQUUKDso9fLdFT8A6trdOiAOAnYcbWPTqAIDc5rUldmxeKTe2rYMul8yYv29Oize59xd4lp9pjbfApS3z5+Yf512jSnkNUO7xnlvGmBNZzGsE4Cilrjzp/2/WWr+5R5l/APAmAHrt7z8D8OPcC+BQumYrpR6E1Yi4x2H1gr8K4Je01rcP6NpOGUqIk4i4yadDPMNK1L+IuI27gITtA/XsA4nM2RZQOckmeXffJBETFnpiTSkI5Qkpa0ppvwRBKMEnzr6kIMR9993fxN9c/D3I1WRajQlm1NrFxb1m9QHl8vazd+Ot3/8E/PQ7v7TuMw+77RB+5INfxxUvevzAr5HLKz7/lXUi3AmcPMfzrrkOz7vmOtxy2h68/amPxwcuegyaYTiCqxSE3lDWlI1gbYOlUrjxjDNw4xln4C+f8nw84uBdeP63r8Vzr78Wp60slz6Hm2e45MgBXHLkAF59HZApVRCYAKDtePjlp78a99Z3otqY7LWSyKYi4swEDyoajtpoyqFt+5hL1m+WqKTx/UKcIGxzUq31o00KaK0Pn/i3UuotAD609t+DAE7ehbZ/7VjfMRldvwPAewDsA3A6gP8E8M5BXFS/CIj8X3EgVmOTTscnxBKuNSWxeCXWlNuXDiEIVJKu+HBvAyjBNXakvxgG1H0WIU4QykOOZYi8EoIgCBv53JmPQLIhXGZX1MClR8d2r63QZyghrlVZ34f8y8uegNvO2lX43Ove8TnsP8Rz9xk0z7722/i9d3+g5+fOv+8Ifu/dH8BXfv/38Hvvfy8ecqhowScIo6beIYS4kHA6UQrX7T8bf/Sc78PTfukN+OEf/1n8++VPxJH6jPE5KREuVRZ+8ymvwI07y0dNjzOUNWWQmYVZellxHaFvQpxTfMaVjBcZJQgCoJTad9J/XwTg22v//iCAH1RK+UqpcwGcD+B/B3ENJkJcRWv9dq11uvbn3wGYe1wNkZAS4nxZWJ10qKjGkMgHWAZKwKPyhAnbA21ZiAhRQKLiph8/pXLEiSg/DKhcfJIjThDKExDtVyTtlyAIJWj4FXzl9AsKx5951zUjuBphFFQpIS5cPx9OXAe/93PPQ77BTSvspnjj33947DYtPvrWA/jrt74DlsF1VbtdvPxrX8VH/+JP8c5/+Du84Npr4MrGMGFM2DIibhO0ZeGqsx+ENz3/JXjyr7wRz/m51+MN3/P9+J9HXMoS5gDgjx77Enz1jAtZZccROiLObG1xo3UkAHTt/ozD232I2BOE7YpS6p1YdXN8qFLqHqXUqwH8iVLqOqXUtwB8F4BfAgCt9fVYDT67AcDHALxOa81ONrQVJqrUR5VSrwfwLqxaU/4AgI8opXYAgNZ67LZChTFh1RPIwsSkQ1lTht0UKs+hLTMLlbArEXHCejquh2DDpCvsJohEoJ1qSGtKQiAS+g9lASoRcYJQnjApTsg7YrMtCEJJPnH2pXjqPdevO/a0e67Dn136IiS2jIWmnVq7OB9uVosL/N+6cD/e8fzL8SMfWr9B/HHfugMv/PQ38d/PuGRQl2jE+YcO463/8LbCfA4AvvqQB+Hcw8dw2vLWSUsvP3A7Lj9wO47W6nj3Yx+Ldz728bhvbm5AVywIvamRQpyBlapSOLBrDw7s2oP3PPrxgNY4e+EYLj9wKx57x2147K23Yk9n6/fiLY98Jj54/mNNL32s6RCCmXlE3OCsKTtO0eGiYnh9grBd0Vr/EHH4rVt8/vcB/P7grmgVk9bhZWt//xRWhThgNRX9D679/0F9vK6+QFpTSkTcxKMthchzEHTXd3h+mhqLJQGx+B6JELetiTwX2JALOex2sYjqaC5IGAqU8CM54oYDJXh6RISPIAg0IRFBKkKcIAhl+eL+i9B2PFROigKYSTp47OGb8aXTHzbCKxOGQa1F5Iir0H3IX//Id+HpX78Zpx9dn3fq1/7lk/jiox6M4/O1gVxjWfYurOCKv3kr5tqdws8+8/AL8BM//UooAM/65vX40c9/BY//ztYWrLubDfzspz+Fn/zcZ/EXz34u3vLUpwFKbVlGEAYBFRHXDE7Bhlwp3LlzN+7cuRv/+ejHY/aWDPsbx/Gow7fhsrU/e9sPvOdvv+ipeMsjn8U/35gSE9aUYZZA6Ryry9298XLCmrJPm1jaNiHESUScIEw0Jq3DbwD4mNZ6RSn1BgCXAXiT1vrqwVxakXjZzAkziIoLq7c09+Dew3Nbljugi/7nZajXigO+MuytN1jldoTt3h/agGvzIis7CW9But01LxdFvct0PLcgxIVpjE5odr6AiIiLHA9qo+8GwdJx84nG1csV4zIAoLu8ZOnK4dmEOL55NIrjMqN2x8vJBG1i8bLaTGBVzSddToc3UQuPmd+UpMY7l2bOJZ3I/BodXhOJsoPgjVgGWg65ccNxoEp+zewwz6n5yDHeBMpb4rUJdom2bSM6YLYjcblzpQnxzq2kqB4sf612zLtGbff+DEXm8epkvJtx/5l2TxnzualseAtMVsrsAJjFsoDx3co2AhsIFofXuVG2YlhyUHXyLctlPu9ZZ8x1nzQ0P5/dZd5HZjVuncZrFDh9sOY14+zvprauDiTca+Q+t9zlfbmc0SZz+42U044AyBlTqcTQ6eMETsfsu2Vw8cV9D8Oz715vR/nMu6/F589+eM/ynHtpMkY7mZy5x8Bp8cpxXric2f/mMa/9sWfNX27beuAaqUibdtVb95kTJDUbv/+zz8HfvfHd647PtCL8f2/5KH79N19Mnm9lgbmh0WAOXO908M9/+nacsbhU+Nm1Z5+J1736FcjXolQ+eunF+OilF+PBhw7jFV/4Cl789atQjzZf3PazDK//yIdw6T134Fdf/gNohA9EIrkN8/eUW/+ZQxKA0f5zz8cdIyimGYbNDA7iPAP+uXj9hrf8QLmZZvE9TVcqqB5cX/985vgzPJbhOObwiblH4RNzjwIeonF6ZwH7W8dwNJjFgfppCI8V13uinUzBiSFouw3eelMWbv6OZrARW07BXtJDhk5YrsOxOsUXrGs5Rt1HZxc9SGhUi1GPTpje/3mLuQSXx+aNgsUoAwBOm3mRjDqibd67llZ5691JlVf/rcT8XnorTAHW4Y0lNbOclTLGJM3tFeVpcmd/e02EexKApwP4ZwD/MJjL6g8hmf9LIhymgY5P7FwhnncvqDKR7CLf1lDPP0y2V8ewHaFyknUlIm4oxEReRp+w+BAEgSYgksRHxA5fQRCEzfjk/ksLx5588HrS+laYLihrylZl8w1mX3nUefjQdxUF2md++Sa89t8/j/PuODL0nHFekuLN//BvuOieQ4WfHdi9Cz/+Mz9Orh/cum8v3vgDL8Lj/uC38dvf/2LcvG/vlud59re+jQ/+6V/hgoP39u3aBaEM9ZiIiPN4G0FLoRTurezE/+5+KA7UTxvcecaADjFmDgzyxHlEjrikT9aUbcqaUiLiBGGiMRHiTsjYzwfwFq31hwGM9SyfzP9F5BcTJg/qOVaInIBb4WQZvGz97oxMKXQdZoiEMBVQYn1AiDTCdEFZU0au9BfDgBI8PUJYEASBhlosoBYVBEEQNuMbe8/HsrfeuSPIEjz54PWblBCmBRNryhP82U88A4szxUiN17zry3jvz/4zPvHKv8Gb/uyDeP5nrsPOxWbfrpVC5Tn+9Ip34wk331b42dF6Da/82Vdjob61k00rCPDvT34Cnv36X8XLfv61+NClF28akXru0WP4rz//G7z4f6/sy/ULQhlqcdFapuEb5IgTNoXavBYa5GGj5q1dIvcch7ZLCHGyQUYQJhoTmf6gUuqfADwTwB8rpXyYCXlDxcpzMv8XlYtGmDwoIY6ymdyKgIyY9MT3fZtDRsQZ1i1h8vCJnGRUpJbQf8iIOEIYFQSBhhLiIluEOEEQypNaDj591iPx4lu/tu74s++4Bp8457IRXZUwDCh741Zla3/BpdkK/uQ1z8If/ukHyJ/vXmjiBZ/9Nl7w2W8DAG7cfxq+9LAH44sPOx9ff8i5iIjoNC6/9f6P4Pu+8c3C8Zbv4cd/5sdx126DtCNK4X8ffB7+98HnYffyCn7mU5/Bqz7/pcLHwiTBn//7u/Do2+/AHz31ReKiIQwUJ0sRbHALyZSSfMB9okOMmY0i4ggnl65ExAmCsAkmQtrLAHwcwLO11ksAdgD4tUFcVD+gRRYXmum1L4wXZEScoVgi1qUCBZUjToS46YfcuCGT6qFA3WdqQiMIAk1ICXHSfgmCYMgnzi7aUz7u0M2YidkJ1oQJgIyIq/ZO9PWxp16ELz76vFLnuPCe+/CTH/8S/u3P/xXf+tnfxTv/+M147Yc/h4ffcQ9UzkxgBuDVn/oCXvPJLxSOJ5aFn/mJV+C6s89k/+6jszP43Ze8ED/16lei4dP344e/8jW8421/gzOWFtjnEYRe1LpFW8qWF8gG8j5xqhFxG/PLAUBsixAnCAJNaVVKa93WWr9fa33L2v8Paa0/MbhLOzUokaUttpRTQz9yxFERdJEIcdseqg6EYk059VA54iSCejhQ99kXa0pBKIfWCKkccRIRJwiCIdfuORdHwtl1xxyd47vv+taIrkgYBnREXIk+RCm88ZdegOsecrrR+fw0wxNuuh2vf+/H8OHf/Vtc8/P/F//4t2/Hj376q3jwveXzy33PN67F7/znh8ifvf5Hvh+ff9gFRte1GR+/+BH43l/7Rdy0j86T9fBD9+B9b/kzPPnWG/tyPkHYSI3ID9fwB5gfbptx6hFxhDVlnyLiWoQ1ZTUp1gdBECaHqV1lpCJYIhHipgYqcs1UiCMj4iS8f9tD1QGJiJt+yBxxElEyFKj77Ik1pSCUghKtY8tBLg4QgiAYopWFT559CV5+0+fXHX/mndfgv85//IiuShg01U5xntPLmvIEi7NV/OifvRIX3XofHnfNATz22gO45IZ74KVZ78JrzLfaeO5V1+O5V63mIzwyW8dXLjxv9c+Dz8fdu3YUyjz+5lvxZ297N/n7/uR7n4P3Pe7Rpc9fhgN7duNFv/xz+P13vw8vvvLqws/nog7+6Z3/jH948jPwd095tvTBQl+pE0Jc0xMhrl+QEXGnak3ZtxxxxecsEXGCMNlMjhCnAe++8pc7c6RocdCxfeQL5QaVHFaO8n73sjvb+0ME2i63W2wdHs/6QTm8cjoxH4Sqtt3zM20UO6TqSgK7Vf581WVq4d2D1Sn3O/LM3ArAjnn2ARY3OIRRRQAgC8wHDp3Z8hOudbi8umUvmTdfVrf3/Y+t4kCs2kzgNs2fndM2LsJGMW+/0+FVEs75dO9Xmz4Xsx6b4FE54gwi4vxjvAm3YrrxWEydKmf0+n7Ea7dUyWvMYyLnZ5YY1Zdo12CvcSPBAq9Sasu8nFXhXWTObFvTEnZUG7GYexW0zXxuGfP+M9ogbfGusb2HV860Ta506Gg4r9n7+WtmH5VUeO1dNG9+T3LmOkbOrFv+Eu+9sbrm98RKefU4DXjfzWa8p07Eux+ZxxzvMu+Jt2TeTmYBb1Bix7xrjOfM60ju8O5j7jDrVqjwkYdeWhDiLj1yADvyZRypztHnc83vJXeMnDDHktwxqN0xL6NqvHO5M7zF1VpgXm53+IDd6Ey7+CWruxOcXlspHI8yeiB59JIZ/M8lF+N/cDGCToKHX3cQl115Fy676i486PbjRte2Z7mBF37tWrzwa9cCAO7ZO4f/feTZ+MYjz8E3Hnk25pfbeMs/vh0+Ifa9+3mPwj/+wJNgKUaDd9/W45/Y9vGrP/RDuPqcc/CG//oA/Gz9+S1ovO6Ln8Qjj9yJX3jFy7FYq276u+wO01KQWYx7Ps1oSzRTg1Qp12aR1965bfNyaYs7bmUVQxqu/h2i+I42wvD+n58Md9xaOcytk7xyqc8ox65cW5+L2ojto1v6Xnp6kxxxBlXMbdPjrTgtDoRrcXz/59u7eUv6DqdNqPM6Un+RN5fVrCrCHTcx6zFzTsT5cv4x3v3XjDHaajned0sZ4+ukWmGda1KZHCHOECqCRfJ/TQ8dj9i1khjmiCM+L3VEaPehbgmTB5UjThKvD4fYKQ5FKGFUEIQiZH64Pu3CFQRh+3HTzv24c2YXzl45dv8xCxrPuv1a/Psjnja6CxMGRqVd7EfaVb5LTBS6uPLyc3Dl5ecAAOYXWnjENw7i0VfdiUdffSd2HTfLObj/8BL2f3IJL/7kNwEAsWvDT4rKxmce9xD88WueBbQHmDdLKbzjCU/At/fvx99d8W84Y3Gp8JEn3/wd/M+f/gV+9sdegWvPOXv1oNaYb7WxZ2UFe5dXsPf4CvY0Gtizsnz/37sbDexprGChWsUVT3gy/vnJT5McYAKAVeFlI2JN2T8oa0qTiDiXiojrkzUllSMulIg4QZhopleII/L9UOKNMJmQQpyhfWBA1JHIlcWr7U5EWVNKjriph8wRRwhEQv/pEsmsfWJCIwhCESqHBWWxIwiCUAql8LHzLsNPXbM+Ffyzb79GhLgpxMpyhJ31Y65crYpp/WJxRxWffMZF+OQzLgK0xrl3HL9flHvkt+5BJTKbZ1Ei3DUX7sdv/uoLkdvDsYT81lln4Xt++Zfw5//xDjztppsLPz9jaQnv/pu/x/X7z8CelRXsWmkUIug2Y9/yMl7/0Q/h5tP24YsP6U+eO2GyqcfFiLimCHF9gxo3G+WIy4vz1mSAQpxYUwrCZDO1q4yBRDtNNWTUUh9yxFEijLC96BBiLNWeCNODnWVw8/V2EJlSSGymj5FgREzmiBPxWxDKEFC2uhIRJwjCKfDxB11aEOIuOnYPzlo+irtmd4/oqoRBEBLRcJ2Kx7b36olSOHDuLhw4dxf+86WPgp1muODm+/Coa+7CZdfcjYfdcC88Qmjbitv378QvvOFliP3h9n1L1Spe/ROvxus+9Sn84sc/CUuv96HzsgyX3nkX+/c/5Ts3ixAnAABqVI44EeL6RucUc8RRG0ipjaYcOiLECcLUMbVCnETETTeUqFrpQ0SciLUC5REu1pTTjZcWB8+x44odzJCgJipBlgJayzMQhB6QNtuExY4gCEJZ7pzbg5t2noELjh9cd/zZt12Nt1z27BFdlTAIKi3ClrIyvD4kc2xc/7AzcP3DzsC//cjj4cUJHn79vbjs2rtx2TV34aE33wcn3zzR0pEdNbzud38IK3UiWdYQ0JaFv3nOs/DNs8/GX779PzDf7l+C8PmWmYWnML3UCSGuEYgQ1y8osSvIDCLisuK6Ytfqz7qiRMQJwvQxtUJcIDniphpKVA2MI+KIOiIRcdse2ppShLhphsoPF7tT2z2OHbllIbFsuPn6HdBuliERe1BB2BLKOicWIU4QhFPkY+ddWhDinnXgmyLETRmVVnH+3K6Nrg/p+i6uvuxsXH3Zam619LjCZdffhcd860489psH8NADR+7/7H276vj53/kBHNozO6rLvZ8vXPhQfM+v/iL+7m1vx8V33d2X3zkTFe0Ihe1JjbCmbPijEZ+nESoirmKw/uMREXFxn6wpO7aHHAoWHtiQEOQJ7DxDZol7jyBMIlO7wiURcdMNmSPOUCyh6kgkYu22h7amFJu8acanrN1EABoqsePA7a4X4vwsESFOEHpAWedIRJwgCKfKJ869BL/4vx9ad+xBS4fhpQm6hKW0MJlUWsXIimFGxPWiVfHxxcecjy8+5nwAwNxyGxffdA+cNMfXLj0XrUoxWmRUHNyxAy/7+dfht//7g3jFl75S+HnL83BkdgaHZ2ZwtDqDIzOzOFKv48jMLHY3Gvitj3xw3efrIsQJa4g15WCJiHGzUUQckSOuX9aUUAodx0N1QxRcmHXRtESMFYRJZHJWuBSQnGnQGF5ftAWI6zas+d6/w3bMfMlPkCbMHQnLvMGuyhiWXS3eNaqUV1U4pmK6RI5lctdK1IVKy58xJBJDR7YHq6Tmwrn/wXGezVo27HHW5g4gm+K0eXUkZ7ZCVmJ+L53iGLZAV9N1y2E4jeghblKqHuK1W14j7/0hgu6M+ZdTGaNiAQB4idftuFwdCdvFexcTguxWuEwnGqfFuyeK97gR7zB/b7jvqG2gX8e2ixrWTzBmj3SRheUWWLo1Xttapk2g4NZlkz7qVFE27xpz17wc93ulFVYxeMu8ck7b/LvZzDrCbf9N3zc/L75ojRkfjTN6X0Dm856b2+TVrWDRvL9JqrxrbO/h9RtWwvtuWWB+ndz7zx5bML6aypnzBt7QAt4K7/6ngflcStvMMTlTg+I8N597P0Je/T/5Gu+bncdCUMOOqLnuM/Wsg2MbcnGp2Pw6U2a/nTHXHbltOadOdud53y1p8tYEKrvNNwzW3NUx1864OIDt1pz7f76RwOFtTrz6rjNZ5TbSdALc8/Adq//RAAj3xjzh1X/FKwa788DzzuDid5//Evz7Y56EBx09gpUwxOH6LI7O1NE6SThRG6rVhfeujz4FgJlOp/C5zBve2A4AgqPmN8Xh6ofMaSJ3nMAZE3orvHNx5w1puHq+mXaxAWtbAdmucfvfpM7r71PmWIYzv2SPm3rkvGwR801fd5GWHNu5KApxUeDe//zKYG2xtth2/IIQ51sJlv0q+73Z2LaUYgub4K1PNrz5r9PhLZIkNWb9Z4z/AcDjzKUs5ppYg2dlqlLegLdbNy/HfbcnlckR4gwJY8JmYcgJfIXB0fGJXSuGUUtkXhXDxXdh+iBtT4mIKWF68Im2I5bd3kOlS0S+UX77giCshxrLRNJ+CYLQB1b8sCjExR0cq8yM6IqEfhNSOeJq0oecKrft2Yvb9uwt/fmVsKgwizWlcAIyIs6TiLh+QW3ypxwnNoPMEWf3rx2l8sRVU+buEkEQRg5z38/4ExL5wjoixE0NlGBWIXK+bQWVU47KDyZsLyJqICY54qYaSmgVa8rhEhOTFcrmQxCE9VA54qgFBUEQBFMaXlEcqBMRVMLkEjaJPqQqfciwWQkIIa4jQpywSp0Q4iRHXP84dSFucDniAKDlFkXXSsKLchIEYfRMsRBH7BCWHHFTQ5uIiDPPEUdMPCRH3LYnIkReEeKmGz8hBs+uCHHDhIqI84lJjSAI66EWCqgNJYIgCKZQC731ruzCnyYqLWLzclXmw8Om6fvIN9i3VbtdOBnTi16YKmrdoigrOeL6R4fYjE9tdNsMSohL+pUjDnREXCUVIU4QJpWpFeICwppSIuKmBypyjRJft4KyshQ7J4EciBnangqThU9ExElbMFxiYrIi1pSC0BvaZluEOEEQTh0yIo5YEBYmF9KaUiLiho62LDQIYaUu9pQCgFpcFF2o+iLwIB2RTlGI6/YxIk6EOEGYLqZWiKNsCiXaaXogI+IIq8mtIIU4iZrc9pzqjihh8vBTYvAs+SKHSpcQPqlJjSAI66H6J9lIIAhCP1ghIuJmxJpyqqCEOLGmHA1Unrh6JBGoAh0R15IccX2DtKY0cETyic2jVNoFLm1XhDhBmCamVogLyYg4GVROC1SOuMDUmpISa2XxfdtDLWCKNeV04xOivOSIGy50RJwIcYLQC2rHruSIEwShH5DWlESuImFyCcWacmxoBEVhZbYjwvd2x8pz1LpF0aUpQlzfOOUccURe8+6grSklR5wgTCwTtdLoV8s3hpWs2DBV98TYv3uxd1mXt+hecXjlApu32NhOzQfJdy7Ps87VTXlVpds1L9ddLnY0G2nnduFYpdsFFPHhTaAi4toVF7mvS5XXe8w7P+dCnr1E6PD84aOE99ys3Fyjbzd6PzfyXMd4C4a6WAV6kpe4HQnxoTBNYKU5tDK7L4qpI5S5zo1067x9FdE8r5y/Uu49ORmtDF7Qk8sxt4w4rXLnq7SIwbNyYXfKX2/KnAt19vLKJXPMnBFObl6my3sAlbvLV+SIso6uZujsGux+ISsxr8cAkDLfN7tlfr6Uu6OSeevchvl7WruHUa8AdGd4bULm8cpZKaPdYvQ1AKCYr2j9PrOC9RU6R5wq8VWTmtGpTirHu/8eo26Fx3h1i0sa8r4bGE0Jt26lVV67lTGGWxZzHGPSf56Mynnlcse8nB1z7yOzjjDa5G6Vd6oy7z/Jhtet4VJCXLvwOW0z7wkDm6kDctvkpG7+3XKb+QBSXsedMuZtrrV6Q2qt4ny2W3fu//lGdrlN43MBwEP2HWGVu3PRfO0iWeTNSeHynlvO6KZyr3iupXoIHFp/rKLaSGYeOIHd5tWRLGCOdyvmZTjzWACwmY70DrNN2KSKb4nKePfRZmomdqxRIzY/tFwf7ooCNfhIA1573K3yyjnMvhSMdQF2v92jSYgsYpO/kTVlsfJmiQ2nU/56sy2eGxURF2YxtAU4EfPd9hn3n7k3vTvDG/DaXfPGNQuZDRCzGnPvv9M2/27JDG/d1NXcQSEPznw7rUxtjBjJ1H5bKiIu9idKdxS2oENYSJrm8SLzqoh96bZHWxYiIhqKsi8UpgOPeLZi7TZcqIg4yuZDEIT1BBktxAmCIJwqdESc5KyaJgKJiBsbKGvKmY68b9sdypay6Uo0XD/ZNEdcSQHDJ3PE9dGaUnLECcJUMbVCXEDkCyN33AsTSdexkW3YReNlGZys/NYmKqdcROQHE7YfbUrolTxxUwvp6y7WlEMlJmyBRfwWhN4ERPtF5ToVBEEwpeERwgCxKCxMLrQ1pfQho4AW4sQKdrtTIywIxZayv2SWja61PmrLgiYFNgoqnUJfrSklR5wgTBVTK8RVIkJkCWRhdWpQCm0i519A5H3bDCqnnETECQAtyEqeuOmFiqbtSkTcUKFzxElEnCD0gtokIhG9giD0gxVCiKuLEDdVVJrEfLgmfcgoWAmL4opExAlURFxLIuL6DpUnLigpdpFCnNW/tecWmSNORHpBmFSmVogjI+ICGVROE5RoFhrYU1IRcZTlpbD96BDROabWp8LkQFlTSkTccIkJ4SBI5Z0ThF5Q1pQdYsIuCIJgilhTTj+0NaXMh0fBSqX4vs225X3b7tS6RcFFIuL6z6b2lCWgNo8mfRTiKGvKqkTECcLEMrVCHJUjTqwpp4uIEM0qpxgRFxECjLD9ICPixJpyaqGsKaUtGC5dQvikBFJBENZD54iT9ksQhFOn4VUKxyQibroIW8U+pC0RcSNhWXLECQQ1IvJJhLj+Q0XElVn/UTqHlxfT4/QzIq5NREBWCMtSQRAmg6kV4gJCiIt9iXCYJk7VmpKKnpOIOAGgc8SJNeX0QuUioyK0hMFB3W9KIBUEYT2SI04QhEHR8IuLfyLETQ92msOP1y8g55ZCV9J5jAQqIm5GIuK2PXREXLGuCKcGV4jzsqIIF1sOoFRfrgvYxJpSIuIEYWKZqFFWNy53uSrPSdvBO9o7oKPe2mOa2D0/Q7FjrsUqd/78UVa53UHTuIxj5axzrXR5u26OtqrGZRaWy1kqUdaUlW4X0L3LOlkGJ19/L1LLQlxTAMrdoyAwj9aYDXlezjM+r9xKzHtuyx3zcl7IWzSPK8NrhlRabkDUCYt1S9W7aJ9WonKdhLfMHIBZ5uU0r9lCzrz9acX8Gv0ls/t3KucCgO5cufO5FhERFzrIgvLXG+0rDsLLEO5qs8rtqPDahCw333+z3OBN9qIS/e0JWrPFCqwqCZpnlWuP3SZvX1E8z6tb2ubV5dw3L6dqvMhA3eE1ChbjdO29vPuveLcRive6Idph/rwdZgqGymHeeKuzy+y5+TkRzRD6yN3e39VfMjrV/cRzvHIpoylJQt476i/z7r+/wjtfGpiXyxusU6E7y7tGO2K8cMx3VDO3eirNO2GwaF6Oe40O5z4yy+UO71nHM7xyG9vkRkBZU0ZQKodWD9xAlTG+m827xpy5T6p6iFmZGbTOYJ6L12whSs0H88fjKurLRZGnXfFwvFvbtJzHGSQAOKu6yCrH4UDOfG9iXuXKE/PGRC0UF/0bhLgy047WzV/TOaZbBHPcmjLqFrffsGPec/OWeefjjC+4c1Juu5WGgHdbcSC6NBugs5u+Foep3bpt5tyGuZZgJebni+eY840Sr03bI+wfOzHs7tbXGRKBAF3bQWen4Txsi6q13C22DWEeo1uz4DV4HQenTva6F5uhcl45zVgTY5+LKZw6bd79T6rmdTl3eXN7zR5v8cplnvl347QHk8xURsQF3WJLG7kOtDWVX3fbQkWvUR0hBRU5Rwl7wvaEqguUlakwHfhEdKzkiBsuZEScWFMKwtZoTe7WpXb1CoIgmJJZNlru+sVJCxpVscSaCipEfrhWTfqPUbFCWFNKjjihHhMRcUS0snBq8CPiCGcdu7/rim2XEAmlHxaEiWUqlSkqGq4dyKBy2qDEkrJCHG1LKUKcsAot8opN3rRCCT6SI264xG5R+PRTeecEYSvcPIO9IYIosSykNjNEWhAEYQMNIhdRPRZxYBqotIoLue2KrJmMCkqIkxxxQk2EuKEQsYW44ny1a/d3Qy8lxEmOOEGYXKZTiIuJxPUiskwdVI44SmCjoPJ9RZJTRViDyhFXMcg/KEwWlOAjEXHDhbrfXiIRcYKwFRINJwjCoGn4lcIxEeKmg0qLsDauSh8yKpapHHGRvGvbHaq9bfiSI67fUOPnoIwQlxf98vstxG2MTAfWhDimnbcgCKNlKoW4gIhc6fgixE0bp2IfSNYREWuFNSjhXqwppxfKmrJLWCUKgyMmIhDFmlIQtoZaIJBNRYIg9BMyb1VXxIFpoNIWIW6ckIg4gaIWSUTcMCCtKTNeRFy/rSlT20HXWu924egcPmGLKQjC+DOVQhxlIReJEDd1RKcQtURFxFF2hML2hLSmLBltKUwelOAjEXHDhbrflEAqCMIDSEScIAiDZoWIvJCIuOmg2hQhbpxoex5Sa/3yXJCk8GQ8vK2pdYtCXEOEuL7TITaylYqII8SwpM8RccBm9pTFuiEIwvgzUSuNebOcmBYs5oVjbctHd6Fch6VyZXRdJ1g8xOsQv7pjhlVOOcXv2bOMzQxfZhbLI/MqFtxT7jl3u0TOgqUEwfHez2/2GLFzxfLgLpXPqxI55s/7zpViB1oKXpUEzKvIKl1zjd6qD3eSYDfNc+B4S+VuZBITCXEbCbwVswdhMW+J2xiezYDL3EilGXXSjnnfS1u8F0CXbO8oa8qO70KbvAaM9vhUOLZUY5XLF8zbIO3wnpvXKf/c0pzI+dlJ4R8v9xCI4qVwmPMX2+C7rYPx4nSZ0dqKWSXjOfPnXb+Tdy4n4tWtaAdvH5nNCGz2lnjXmLm8OmIn5c9HWbF3PA9ZyXVUm1n/q4d496Q7Y35POnt49zGp8fLkcetk5ptfZ8p1luI2P4y+lNPXA2Bfo9PmFezsMC/ntnnPOmemYOTcf6/Ba8gV88FR342yQKsl7XWf1Tajbg07lSVzaB3PM+4ltwP2eeW6qfnNrDhdzBK2h92ajYqzeWd5uMNbt7j5yB5WOY7zWtLlLXHlK7zxlt1hzJtjql4prAQBdrTb647OL0Y4VvfWyvG+WzpXtM8rBWNdzF/ktT8W03yG204mFfPrLDu+6lc5gM4R1wiCTeep3HMlVeZ8e4jjhDRg1q20d0PSDoo3zrO66Na3PqfVIHLNe47x/cx6jAmbfoC5eH3b4FRjJGnd6Dz3l+2Yvzc5c27DnRO5HfMOIAmGG2uUzvPOZzHW4HK2esMsyBw3eSvm/Y3aZi6r2yYijsonJkw2HcLKjIp0owiohXfi9wnbEyoiThLiTi8+kYssFmvKoULdb7GmFIStoSLiqGTzgiAIXMiIOCJCQ5g8KlREXE36kFGyEhZzMoo95famTghxYk3Zf0hryhIRcZQ9ZLfP1pQA0PaIjeJdWZ8ShElkSoU4YoewiCxTBxk+XtK6gcr3RVldCtuTiBAFytYtYfKghHmxphwusUtYUxLPRRCEB6Asc6ixkSAIAhcqIm5mw658YTKhcsR1KtKHjJKVgHjfiBxhwvahRlgBU+2ycGp0COvHMpv86Rxx/V9HoMRXEeIEYTKZUiGOyBHHtHYSxhdqselUIuIo8UXYnnA9woXJhIyII4QhYXB0CeHTk4g4QdgSMkecbDwTBKGPNDzJETethC2iD5EccSNlJSwutktE3DZGa9TiotjSDCQirt9wI+Ko+Wp3AOuKLUIoFCFOECaTqRTiAioiTqKdpg7qmZbpLAE6uqkjYq2wBlm3JCJuavGoiDhZzB4qYk0pCOaQ+S0lIk4QhD4i1pTTi1hTjh8NKiKuIxGo25Uw6cLR63N5RY6DZAARV9sd7kZsf0gRcS3KmlJSpwjCRDKVLXiFFOJkUXXaiE7BmpKKnKN+n7A9OZX8g8LkITniRg9lBUpNbIbBBYfvwdNv+TaO1mbw/kc+Fpllj+Q6BKEXkiNOEIRBI9aU00vYKo6z2lUZ/46SlVCsKYUHqFH54TyJhhsEXLctL8sKx7oDEOKoHHEV2RQjCBPJVApxlDVl25eFiWmDFkvK7QqhrCnFzkk4AbWQSeUVFKYDSsCXHHHDhRI+R2FN+dg7voN/+s83w81Xd58++fab8PMv/vGhX4cglIG2ppTxriAI/YOMiBNryqkgpHLEiTXlSFkmhTh537YrdUqII6ImhVOHbU1JRcQNwpqSiogTa0pBmEgGutKolAoAfAGAv3au92qt36iUOhfAuwDsBHAVgFdorUu0cnnPjwBAmBE7hCsOVFjcrUChuzzHzqyuWeWcY7yGOgvMz5dXyt2DAor33Tjlkplyz7kxR1iZ5QmSWu9zeqpYR1pVF2nV4Hot8+/mHOU9a29ZscpxsRjVpLOX995YTINcm7EBSJWrWqQQFyYJYPjI3RbvvSl7nf0gZW6q85fNv5tmBhZpZvVXae+CdpbdL7qcIFcKWWbDMngOLrMdTxZ45bhNsheZ30yLGZjmtgw+HBXfOT9NSrdFNlMnzzac9oeu+fK6+vDdt3wb+xrHcXBu57rPKeY6lbY57w3zYQ8xkI/7bsdzzA6AeUvAaEu43y1Y5jXkmVv+IqkNIh3fRV6yWUmZazkZox0BeP22xZ2pMKtWtIP33ZJZ80qZ1nh1RDvDG5Nz3hkAQMYr6C7zXjgrNj9flPOuUTPrlmKMrb0G736ER3h1y+4W60i3U1z8m213EB5/4BzxrPlN4d5H7rttMff2xDu4HY45lsebp88E5ouxs24H9VaxnDWrMetuLvycGS4anwsAPJv3AO5amTcuc2ypxjoXmG1rNmP+3LJN1hGWdhGL7VYLyd7Vwbhq8dqEMnMiCs57U3YMspG0wrv/Ky6vUXAYgb2cNRIAyJljmdlG8V1sugHsLV55p8O7j9z5nsp550sr5nWSOyZPS4ytm7XiuxfoLqKdW5e1fMJZx3eQGY6xVY93re0UF22qUQyV8e6/ts3vP7cec+dtaWB+jdx1NCvh3kfe+ThjQm0Ne02Y+W5Xzdvk8PD2CnoYdI64GMDTtdYXA7gEwHOUUo8D8McA/kJr/WAAiwBe3c+TkjnifIl2mjaoCLZKyaglavEqkjyCwhqkR7hExE0lXlYc9UaOC6jhDnS2O1QEIhW5PGjOXThSOHb2wrGhX4cglIHaqdsmkrkLgiBwaXiVwrF6IhE60wBlTRmJNeVIWakUF9tn2vK+bVdqhPVgwxdrykHAtaakcpoPLUecRMQJwkQyUCFOr9Jc+6+79kcDeDqA964dvwLAC/t53jAmBpUiskwdHeKZUiIsRUhY0UkeQeEEkeSI2zbQ+eHElnLYUF76XpZB6SGGhwKY7RS3x851TEL7BGF4BIQdDtV/CYIgcGm6xUXfeleEgWkgaFHWlNKHjJKVSjGMZrYl79t2hcwRJ0LcQGALccRYvDsIa0pio11VcsQJwkQy6Ig4KKVspdS1AI4A+CSA2wAsaa1PrH7eA+CMfp6zEhODShFZpg5KiCsrlpBRk5JXRViD9AgnxFth8pH8cGOCUuTuwaHmidOaFN1EiBPGlUByxAmCMGDajo9UrV8yCLIELuEoIEwWYZPYmFqTNZNRskwIcTMdWWzfrpA54jzJETcIqPFzpUTEGTVXHcRaQlsi4gRhahi4EKe1zrTWlwDYD+ByABeULauUeo1S6kql1JU6K78rPuwSg0qxppw6aCGunFgiEXHCVlARBWJNOZ1QdhKD2MUm9IaatPhDXOirduNCvkAAmCOi5ARhHBAhThCEgaMUGRVXE3vKicbpZnCT9WOe1FZI/CEmmBUKiDWlcDKUNWXTFwvyQdDeLCJOb50ni7amHEBEnEfkiEtEiBOESWTgQtwJtNZLAD4L4PEA5pRSJ1bc9gM4uEmZN2utH621frSyy19qQAlxYk05dVA54sqKJXSOOFl8F1YhrSnTZOg2ecLg8Yk8ZGLtNhq6xKRlmBFxm0W+SUScMK6EmQhxgiAMHioCQ+wpJ5uAyA/XqXmSI3nEUNaUM22JiNuu1OJiOysRcYMhtR0k1vqNCLbWZD75k6HWEroDiIhrkhFx0jYIwiQyUCFOKbVbKTW39u8QwDMB3IhVQe6lax97JYAP9PO8IWU7KBFxU8emEXE9dq0AQCCL78IWaGWhQ0RFUTaGwmQjOeLGBzIijmirB8VmkW8SESeMK9RYRoQ4QRD6zYpbXPitJbIAOMmETWJTquSHGzkSESecDGVN2ZAccQODjIoj1pZPhrJpHsRaAhURV8Y6UxCE8WPQq437AFyhlLKxKvq9R2v9IaXUDQDepZT6vwCuAfDWnr9JaezYvVLqpPW82GHV9kU4/bTFUuUdixf10k54g1e9n7fzrB2bn2++yhvItbu877Z4vGZcJquWu/8ZgMhxEJwUMWFpDdtLEPcQ1QJiF3m74kB7Bs9emz+3rMKrW50KqxjcZZ7WrhmuJHZnuDsoc0aVzA2cHCLPQ7hhkbMSJYit8r9EZeXPd6rl3E5vAZoirvOeWxqal3Mi3jUqZiCiKnE6Mkec5xjXL3+Jdx+TOu+eWAnvfG7DvEzK3Hhp2kRSNh6OSpGV0BVspnNssPDA/d9zpEl+ZsdKa93nAFbzDwBonG/+coe7eEJgmvDspfIV8w4nnufdEIups3L6KIBXl+2I+d1S3rttUrdCwpKmqz3YJdfHo7N4jWvk8r6bv2D+4MLDzPto8Z6bZo63NGO4ZbeGZkyyyhCHadriPTcwizmM6Y1iBlyXGVtQlOnLNpIy11sznzm2C+hyK2EIbJhGh06EeGa1Dmee+fm4Y7s04D2AxlnMcdq8eUVRAXMCwKTumS/GOo3iA2hXPXTzrZeHKswB1yNnSAOknniW+b1sdHjWfZ0FXjlnl3kD5Dj0C9Al3sHZdgfhTAdQCp2MNyhXHd7AKZk1v/+5wxx/BrxGIduk3eqJMu+DM6YrpHZ47VZAdG4Le320z9j8XjlN3tgiPMoqBn+RO04zL9OjedqckufquB5mN0QhBnkXi3Z10zJUxFzku8ZrCbrHGGFlhoiIS2N0Z3j1318yf27c+bYdM99txtiCO/53W7xr1DZzUloieGQj3PEnd7zVrQ1vnuK0t9dG+IF+W631twBcShy/Hav54gZCEBHRThIRN5VEnrtOiAOAStztLcSJfanQg47rYn7DMckTN334lBAnOeJGAmXjMcyIuNlok4i4TY4LwqgJMomIEwRh8Kz4RYW6JtaUE01IWlPK+HfUxL6L2LXhJw8IYG6WI4wTdALp37cb9YiIiAslIm5Q0I5bW6//kNaU9iAi4opCnETECcJkMuStmMMhjAkhLtheCut2oe2bd5abfaYjOeKEk6AWMysixE0dVIJlsakdDaQ1ZQ9f/n4yF9G54GY3OS4IoyZICWsx2UggCEKfoXISzRC5i4TJgbKm7FRF6BkHVqpFoaXeEivY7QgpxAUixA0Kcv2nhzUltZYwiBxxlBBXFSFOECaSqRTiAlKIk4WJaYQSz3r5OK9+hqgjEhEnnAQ1EJMccdMHNXiWHHGjoUtYU45DRNxsLBFxwngSUjbbEhEnCEKfWfGLQlxdIuImGjIiTnLEjQUNKk+cCHHbknpHhLhhQq3/UDbwJ0NtGh2Euw4VrVdJurBypu+gIAgjY0qFONqnV5g+KPGMEtk2QgkqEhEnnAwVFUVFHwiTjVhTjg+UAOoRQumgmIvpyLd6N4KTDTffiyCUgRKqI0eEOEEQ+kuDjIiTTSqTTKVFRMTVpP8YB6iIuJmWCN/bEToijpm8W+gJLcRtsjpcdQAAol9JREFUvf7jEWPxeADWlFpZtD1lD6FQEITxY/qEOK1Ja8rYkwiHaaTN8HGG1mTUXCRCnHASnIGYMHmQvu4SETcS4jGNiANkwVEYT6iIOMkRJwhCv6Ej4iRCZ5IJJCJubGmQQpy8b9uRmuSIGyrk+g/LmnIwbakIcYIwHUydEEdFw8Wujdyeuq8qgGdN6WUZbK3XHevaNlLb7uu1CZMNJ1mvMHlIjrjxgRJAqeczKLbKBbdZ/jhBGBV2nsHN10dqZkoNJEG8IAjbGyoirt6VDSqTjFhTji8rVeJ9EyFuWyI54oZL26WErl5CHOWuM5ixOCXE1WRTjCBMHBM0W1fopr0vt9IuNpRx4CB0y++qdy2eBdW5M8dZ5fb4DVa5wDKPFLCge3+I4PrGPla5O2xzz+Jjx+ulP9upEBEUdoysvvkzdAlrh8h3Eewys3wIPPP73015Yl+W8YTkZAfvFdeZMi/TZQqZvCoJlZjfk9wv/73aRN2yal20Ty9fp9MK77n5i+ZlGmebPzMAUEzHPXeIukTGnG/oEreftHYLHOS+WcXs7OVVZLvDfG7MQLGUcS/TKu+7ZYbOKZ1qsb1ykSAr8SxUzruPzknriHOdzRcVdyy3cddJ9y7awTsfPPM+kd3+r/AioyqL5t9NMdMT5Mw1P4u5J4LT3immFtzexezvvXL3vxYTkf2OBwVVul+1El49zkLeA493mz+ANOTVf4fZR3H7RDBuibfCbLeY381tmrflmcG46WRyl1dOM2em4VHz78bpDwF+HclC83tiR7z+N63w7v9m92RxZ7FDr+YR4vnV89iMNtnlTX8BPdy6BWX+DJyAN0g7c9cSqxxnfj/XJua9Mwqz7tbz4aPd8vP0k7mrNc8ql2TmfWnS5T1sK2K+N8fNrQITd/NOY8GpFY6FR3N0FkKAOd7VAbPhYpyPsUQFAHA6vP5eMdYtAN51dvYyB7yMdsRL0sKGxNSy0Jq3tuyIcmZb5y/y7j+3v+H0pQ7ToTUt+Yp2CHv3atSFvUVdodIotOsO0orZMy8zl20FRSEuQJc1VotnjYvw53tcYZJTJZlri1bGK+gv8Bq8eIf5JDhhvmtui/fdvCbvgWuLUR/ntldQzNSFiVG2lFEgu7umFTIijlicOpkgISJgxLpU2ABVt4Ie0ZbC5EHniJP2YBRQufmGGhG3hf3k7Cb54wRhVATEJgKxpRQEYRAs+5XCsZlYclZNMpQ1ZURsiBKGz0qFsKakhFNhqiGj4cIAUMzNgEJPOKlJqLnqoNYSmn6xbah2xZpSECaNqRPiAio/nC9C3LTS9s19nMn8cFJHhA3QA7Hh5asShgM5eBZrypFATVqoBNiDYiuxbSuRThBGQUjkhIgGlJNCEITtTSMohhPMbJFXVRh/giYhxNWkDxkHVsLi+zYrQty2o94pPnPJDzdYODnivIzIETcgm3g6R5xYUwrCpLEthLgokN1d0woloIXdrRduqZ93RIgTNtAhRN6KRMRNHZIjbnyg7vuwIuKcLEVti2TXEhEnjBsSEScIwrBY8YmcVbEs/k0ylBDXESFuLFgmcsRJRNz2oxYV5yUixA0W44g4rYebI84vCnESEScIk8fUCXGUNWXsixA3rVD2gb3EEjIijvg9wvamQ4gCYk05fYg15fhA3XdqcjMIZrtb7+yXiDhh3AhTOkecIAhCv6Ei4upRB9DMZCzCyKGtKWU+PA6sEGLLTEeE7+1GnXjmVN0Q+oepEOfkOewN/WBqWcjsweS7anliTSkI08AUCnHFhjKWHHFTC2VNGTAi4sSaUthIx6OsCcSactoIKCHOFSFuFHQJWz3q+QyCXkKbRMQJ40ZALAxIRJwgCIMgsR20N7Qvjs5R2SKSXBhvRIgbX1YqEhEnADNR8Zk3g2JElNA/qPWfrfo5KoXCIDf0SkScIEwHUyfEBTFhMyZC3NRCRbJVCDH2ZCihTqwphY1QEXG9kvUKkwedYFnag1FAR8QNx5pyppcQ15UFEGG8oCLiOhIRJwjCgGj4xZ34s8RCsTAZhFSOuLqMf8cBSoiTHHHbDyoiTqwpB0vbLQpdW63/+FR+uEEKcWSOOBHiBGHSmJxt/xpoLRcHJRtRi8Vjx5I6br39tNKnsiu8hb+F+QqrnLMzZ5U7PVhileNQd3gNvKXMLUssp/z96FSKE4YqIrgzm3eYdbu44NoNHASeWeTFnlrT6PMAsDPgRVV0c154e93lPbflrvkg78bD5d+xk0m6vGYoz5RxGRMHnfaO4j6FEBH0zvJiXBe8RdHMN/9uOXPubHO1RWV+jdCMMgBy5tpyOpP1/IwLKkeGjTw0a5dVMtzvljAdL5w24zp5Xw3a8BqpjRVeSSEuY24QbZy9+uW8ztZCXA2t+z8LAK55878Ko7vPMt6eKRXzynHqpMV07mR2bbB5wyZYjABLxbRe85q8cu3d5V64MCs23s1ZF639g7eKc1Z4Dy6rmD+4dDcvKjad5zVcziJvTJLVzL9be4b3rFTO+25WbF7O4q7vMLd6WswxSRowxoRD1hw499JxmfW4xatbtrX5+Rp+BXubK+uOzTY6OBLMQ/UebhVIZszLAEAWMNs4bp1krAvUKrwXJ3R47d3ecKX3h05GazJHXDMMkPbomD2Lt06yGPVex6FY6ZjPSZMO8+VmtOMAb7ylthjbNezimtJMK4KKLCjG/BcA8jrvuVkd8/6e0x4AvD5q9YS8Ypy5s/a5A1DzdquWEhFxXsh6JmWI53nlcm4/xdCWuddYtk62QsJtK+siqdKft6iIONuFHTHWckoMPykhLswjpIzmVW/R32+Gv8jsfxlrwgAARrPF7KLQrfIGCVox1zIZxZhLacZrMidIfOZaAuO7pSHzy00oUxcRR1nHUXnEhOmAerZh1CMijsgjGEkeQWEDZN0Sa8qpg84RJ33GKKAsQYeVI26us/UmidkeQp0gDJuAiogTa0pBEAbEikfY5Un+1InEjTPY2fqF0cSzkHqDWeAXzFgOiXetIxFx2416RETEEfk6hf5BW1NuvrZIbRgdqDUlIcSJNaUgTB4ixAkTTScwz+MlOeKEMkRE/kER4qYPyRE3PozSmnKuh9DWS6gThGFDWeW0iQUEQRCEftDwiwvA9bi4UCyMP6QtpeSHGxso+8F6J4LKmdFYwkQi1pTDZ2MuVAAIu1tYUxLzVCrneb9oERbRNemHBWHimD4hjsgPRu1sEKYDMmqJiHg7maBL5BEUIU7YQJuoE0GP/IPC5OEnxE42EeJGAjVxGVpEXHtroW2u3TbzthWEARMQ74aMdwVBGBQrRCTGTCxROpNI2CL6DxHixobEcdDesMZha42qzEO3FaQQ5zO9+IVSUM4SW+aIo4Q4WyLiBEHYmikU4oiBpYgsUwsloPUU4ohBrFhTChshrQl61C1h8qAG0JErfcYoICPiCKF0EPSKiPPyTCY6wlhBLQx0pO0SBGFAUBFxYk05mQSEEBfVZCPHOLFC2FPOij3ltqLepiLixJpykJDrP1vM/6gNo4O0pmwSEXEyPxWEyWP6hDgidFh2CE8vbdI+cOvdYqQ1pdiXChugc8TJTsRpg8wRJxFxIyEmRIThWVP2tp7sJdYJwjAhc8TJeFcQhAGxQlpTijAwiYRNYlOqRMSNFcsVQvhuy/u2nSAj4gKxphwk/YiIG2Su+RYREVmNRYgThEljolYbld3bF5vcIRy4gF3eUsr1eAt/yy3eDpXPLDyEVc52MuMyYcCL6PFd3j1ZWK4al7Gs8v7ncVBMKh1GCbJ0c43Z7xS/S1a1EHhm9+as2qLR5wFgxuENoA+0drLKVW2ecJQ45sm6TZ7byWQdXmJw5ZjbxPnV8vcjn1OFY2E3geOWf+/M39BVkjnzklaXt69CdYrfs1Q5xuPuzrFOBWuA40vKqjZ2XMCwemmXZ1uYM90OtcN8305jtOW8KgI0zCYi7ZliW+AnCeyo9wUks7wbqddGQXMldvXX8yaycH71uhaZN4VRrFrhvQDJ6bx+O9I1Rile+6OZ28HUCq+czUijYDH3X6Q+s20tWZWp5PGtGQfpjEH/YfHeG/c4b/rgtMwfOFeK1zVeD5ydxnvfLMaYpFrl5fVwbN53SzPz8Vaa8V7SpMurI/ES03bLY/SJzPoP5njLapnff3+Rd67KYd53S7aoWi1FROg0O3BaGvFO8/YurfGuMQt45VTGa5MtgzWEE7Q6vHr8ndYeVrlgv9kcNl0q1sWy1pT7vGWjc53guaffwCp3Z8d8DnxzhXcfDy/VWeW6TfNNMM7xre83FYE6txzDmeXV4y7vqwE7zfvEboXX/ntHeeVs5lyWg0qZYztGvzHTKt77lh32nBdxx63ccjlzRTllLJ2mFeZ8r+RjW67Qm/z1JmM8TxMb/H0HSd38Op1274tsubQQ5zaNT3f/HNiEbMjOqJy3zW3z6ojX4I2ttcVrE3Rifp25zVs3zR3mNTLn6WlleG1yL5RS/wLgBQCOaK0fvnZsB4B3AzgHwB0AXqa1XlRKKQB/BeB5ANoAfkxrffUgrmsKI+KonBmyw2ta6RARcUEP+0AyIk7sS4UNUJa2AVF3hMmGtJSQiLiRQN33oUXE9cgRBwDzbYmIE8aHgIjmpVwCBEEQ+gElDNS7EqEziVSIBf6oJnPhcYKyppwRa8ptRS2SiLhh07VtpNb6JXI3z+FuMh8lnXUGaE1JRsR1eZu6BGGb8DYAz9lw7PUAPq21Ph/Ap9f+DwDPBXD+2p/XAPiHQV3U9AlxkiNuW0E920qPRMaUmCJCnLARsm5FYk05bVA5yCRH3GgYrRDXW2QrI9YJwrAI0+JCqlhTCoIwKBqe5IibFkIiR1zZiDhhOKwEVI44ed+2E3VCiKNyhAl9RCkje0ovI5x1Briht+UVn38liQHNjPAXhClHa/0FAAsbDn8fgCvW/n0FgBeedPzf9CpfAzCnlNo3iOuaQiFOcmZsJ9qMqCWqjkS+RMAI66EGUUGSQuU8S0BhPKGEOImIGw2Up75HRCz2Ha1LiWxlxDpBGBZURJw4QAiCMChWCCGuLjvxJ5JKi5gLS0TcWEFFxFHCjDC9SI640dAm1o4r3U2EOGLDaHeAOeISx0HXWm9P6OY5KQgKgrApe7XWh9b+fR+AvWv/PgPA3Sd97p61Y31n+oQ4yppSop2mlq7rIFfrPWj9NIOdbe7xS1pTBlJHhPVoyyIXNamcYsJkYuU5vA1tRa4UEqb/tnBqjCoirhbHcEsI7BIRJ4wTYSobzwRBGB6kNaVExE0klBAnEXHjhVhTbm/sLEN1g/iTK0VaEwr9hRpLh5sIccO2pgSANmlPyctvLAhTgKOUuvKkP68xKay11gCGHlI6ddv+qfxgsjAxxSiFjueiuiHKLYwTNCv0YjplXyrWlAJFJ3ALwm3YTdAJpE2ZBshoOMcB1PgkmN1O0ELc4CPiygpskiNOGCcomxzJEScIwqCgrCklR9xkIhFx448IcdubWlQUVlqeD21NXRzF2EFFxG0qxJERcYNdYm95PuY22NRWkhiLqA30vIIwpqRa60cbljmslNqntT60Zj15ZO34QQBnnvS5/WvH+s7UteRkRJxY9Uw1HSKabSt7SjpH3NRp0kIfoNqOUPLETQ3ULrZI+ouRQVtTDj4irqzlpETECeNEQEbESfslCMJgICPixJpyIqFyxEUSETdWiBC3vanFYks5Kqggjs2sKSkhjprP9hMqKrImfbEgmPBBAK9c+/crAXzgpOM/qlZ5HIDlkyws+8rEqA9KaZy2e7nn5+ppsRGydmeozZffyd7t8m6LZfEiGnXGi75IuuY7n7OUZ7m20uLdE7tmvojq+2ZlqGi2XU4DUZ3uBCvE4lV9Lsa+6orReQ+2Z40+DwC3JLuNywCAbfHyki1EVVa55Y75QC9JeHVLebzvZh0xr//dBbOBUccqDnS8gxayrDg5orC6vHdb2+blnBbvXG6TGf3FeGwOM6CoO8cr14vN8sOprvkeFWs3bwBcr/LKnTt/nFVu3jOfxB+Pee3Itw7sN/p8V2vkSsE6KeG0l2dIZzLkPXaAapfX/2ZVjfq9zVKfnU1aSOZWK35LMfcxMS5z2F4JinFCt8E7l2aOQlNelUTO6KYs5hgtZq6XqJJtK2VNGc1ZsKrlo0hnZniLeq0ZXuRdsmR+Uyp38ipJvIv33LLa5tbmW5ZjnK5RciyxEcvmtQp5yrhIzRwjMOdE8Jl5eBn9tkp4381u8dp/f9H8fJrZ1SQh77t19m5eLtIBcihYJ/VK1SRGsitHGpg3ru4K8x31mfNtZp3kXOWOGd7GnZU2r+Po5mbtZNgs9hPHwwpW0t62d3dHO4zOdYLT/SVWuXPDY8Zljka8yJC7mztZ5Tik9a37mqX54rOoJ212m2A1eH2pdhltMqcMgDTkvaMOcy6bM/QSbjui58zGFrWV4tykUfOR7C2xITjmrcn4R3jlgmO8+59WzMtw678JVESc50X3zwFPxnGITXE1G+mM+TuQlmy2GtVi26B2dtA41+yc/oL5zezWec/a672MTxIsmr9v3GFr7vIKWl3meJdxoZw2CwAUb2rDvpd2bH5P3NZgVjyUUu8E8DQAu5RS9wB4I4A/AvAepdSrAdwJ4GVrH/8IgOcBuBVAG8CrBnJRmCAhrix+VFxYpSKmhOmBer6U/eQJqIi4rkTECQRkRNwW0ZbCZBGMwNdd2AKlELtO4R3z0hTRAC2m51pFhfjg/BzOWFxa/7mmWFMK4wPVfnXEmlIQhAGhlYWVIMBctF7Ar8UdLARiiTVJhG0qR5z0H+PEckUi4rYz9Q4RERdKRNwwICPi4s1yxG2S5mKANAMiR1wsOeIEgUJr/UOb/Oi7ic9qAK8b7BWtMnXWlGSOOMn/NdVQEXFbCnHEz+JAFt+FIibWBMLkQUfESX8xSug8cYO1p5xvFneuH9izq/g5QrAThFERpsVJt1hTCoIwSBpBURyYjUQcmDSoHHEdsaYcK1YqRdFlpi32c9sFUoir9I5YFU4dKiJuU2vKEawlNAmLUhHiBGGymC4hTmtaZJGFiamGWnii6sEJKJFOhDiBghLigkSEuGmBzBFHCEHC8KCEOCryp59QAtuBPUUbYSpyThBGgdI5AkKgjjxpvwRBGBwrQdFLrC5C3MRRpYS4mkTEjRPLkiNuWzPTLgorKxIRNxTaXlHwDDeJiKNymVNz2X5C5ogTIU4QJoqpEuK8JCukJOg6NjJ7qr6msAHKmnJTIW4TsbYri1cCQYfY0STWlNMDmWBZIuJGChkRN2AhjhLY7ty9E7lab4w+E0VwMqbJuiD0EdKW0nOhe+RSFARBOBVWiIi4GRHiJg6JiBt/VihrSomI2zbUIrGmHBVmEXHDT3PRoqwpIxHiBGGSmKoZexCJLeV2hLSmJOoCQIu1iWshd6bqVRD6BJWXSoS46YHKFznoXWzC1lBC6MCtKVtFa8qFWpXMzyFRccI4EKbFBYG2jHcFQRgwDZ+wyxMhbrLQWnLETQCU6DITRbDyfARXIwybOiG6NkWIGwpGOeJGsKm3SUTEVWMR6QVhkpgq9YEU4ohoKWG66PiEWLJJRBxpXerLwrtAQ+2ICruy42haoH3dpT0YJXSOuOFbUy5Wq1isFi24RIgTxoGQsEimNo4IgiD0E8qaciaSfnGSCDoJ7Hz9rtTYt5HJptSxIrcsrBC5oOpEpJQwfZA54kSIGwr0+k/5HHFdx+77NZ0MFREn1pSCMFlMzIqjAnBGbXnLz5x+fKlwLA8tPHTXEaNzeRbPesphlrOV7v0hguWueWd828Iu1rlWkuLEqwx+YJ5Py3PMoh+6YbGz89opkrR43GkXn1EcuMi1+eQjyc072btu3mtcBgBbMrc6qveHCLI58wgUFfMGHdrh7ezLGRq70za7H7FFWRMkYL6ypQmOmt9Lb+vmcfNyK7wvY8fm5TRzXJpUeS+ASrZ+3kFE5FhyeIvZ8zO8haizZxdY5RyL994kjLau5vIG93M7msZlsrD4zFzVRe5v/X2dJq+OpDWNuWbx2S2FFSxViv3e/EoL2APkPrMR6JpfZ+NwjXUqFfPuib9oXs5iaqV2k3cfc4fXtyUznHOxTsUmK86vC3iqeMPbvgutze5LxeflPJ0NeQuB9zLKtO0SN4TAavA6HLvJK5dVzdtk517ed/MXePWf856WqY8U8Tzv3ea2JcExxj1hNuM5V/NmnM9mpiVu7WeO/3v0bUszxblnVXfgMILiFDPY3T/O7O+rvAceVMzHQC5zjKZ4jw0rcfk1AXeR2IRWc7HDKzeOvS9idKQArl86jVWu7pnf/7uX5ljnQsZ7ACoyr5M66F1HVioBZjYIbxW0cZxwbOiFv8B7bxJGg6dS3n30lpn3n9mWc/obZTjOOoE2vEhKiOvutFCb693YxjFv4Jo2qqxyjKklAN5aDnf+ZUflnxu1sW3TiDjCmrI7p6BmzTtvnZa7kc3Z4vOtxrHxemFSZ9xLZh/ltngFU4b2rHzeuewur1x3B+8FyFzz8/krvLEFs9lCxryXccX8nnDuxyQzVVuf/JgYWAYTozUKTMgccZvYB1KRchIRJ2xGxyPq1oDzVQnDg7STGLCvu7A1MZGvk9pt2E8oa8rFagWL1eKElIqeE4RhEybFhUnKHUAQBKGfLIdERFxHrCkniVqL6D9q4iA0jpB54uR92xbMUBFxFYmIGwZt1yBHHGlNOYIccRIRJwgTxVQJcR4R3SBC3PRD5YirbJIjzu9KHRHK0yEGYptZEwiTh+SIGz+6lDXlgIW4uTYREVetYImypiQ+KwjDhuqHqI0jgiAI/aRBWOWJMDBZVIj8cFFV+o9xZIUQXmbb8r5tB2qEENesMkPUBSOoHHEm1pSjEOLEslYQJoupEuKCjkQ7bUcoIY7KBQfQEXFdqSPCJpgMxITJg46Ik8WIUUJGxA0wR5ybpqhH63cR5kphJQxpa0oiek4Qhk1IvBNtiYgTBGHAkBFxkQgDk0S1XYyciKoyFx5HVkKJiNuu1DvF97QZihA3DKgccSbWlIMW4poSEScIE89UCXEeZU0ZyqLqtNOhhLhNrCkpgU7EWmEzOm6xboWb1C1h8qAGzxEhBAnDY9gRcVSE23IYIrcsLBIRcWJNKYwDZEQcMRYSBEHoJytBURiY7Ui/OElUCWvKqCYbOcaRZbGm3LbU24Q1pUTEDQWTjdhemhWODVyIIwTZaiRCnCBMElMlxPmUNaWILFMPbU1Jd5ZkjjixphQ2gUrWGyYSETctSETc+BF7duEY9Zz6xRwhrJ0Q4EhrShHihDEgSCkhThZSBUEYLFSETp2wUBPGlyplTVmTufA4QllTihC3PaDa1abkiBsKRhFxhEPFKKwpaxIRJwgTxfQLcSKyTD2doLw1JZkTSuqIsAlURNxm0ZbC5CE54sYPOiJucO8cFeF2QoBbrFaJz4s1pTB6qKTxkiNOEIRBQwlxEhE3WZBCnOSIG0tWyIg4Eb63A2REXEUi4oYBFRFHjbuBTXLEDXg8LtaUgjD5TMyKo1Iap4fLW35md94sHptr4Lt23mx0rjPcRaPPnyBQvMXCisVrOO/o7jIu81nvQta5Zs/k7b5yVTFcuxcHO3NGn9+5qzgB3KnbOGfnQuH4fnepcKzju0i1uSadZMXIjV6EpxfraBnimNehZxZvh7zycuMyVoUXtWJZ5ucCgATmg9FMmz2zFmHVEqYxcl+XKq+YWx0SZV4mLc7VSpZjnAwAYF7OWy533zbiMDd/Os2tH0DYLrZPae7Bjsy/W5rxHvZ9rRlWucMLvHKWbf6+7ZtfYZ2L00ZS4nelkcFd3vr+WpyXBsCeQ8XKteLWEBy10UpqhZ/tWOogOGrDZs53op2MurWTN7bQFfP+FwC6mfk1apt3/50Wr5y3wmtLrK75+RjDGACA1+ZdY+NBvT/jOsUFgbbjQ0dm79zh47NGnz9BvcZrlGdr5guIccCr/w27KKSXQTXN2y0AgGvetqZVXv3PfF45TjuZhbwxmrZ59d8/xrv/OWNGmzHXNDVzjS13zO8JZzwCAIxpzSo9TkfmrIoi1hiU24/mzPtvd5j9lG3eCbiMMgBwzo7i3LUMe4NG6c+emRbXOeKaAxvl3vWzK7xrjFLeg2sk5i9q1OWdS/m858Zq7fLe9ZG0go3b0L55u5wFwxun5cwAfbd8NV6Hz5xfNs5k3BPeqaAsg4JaF/JXA8CRdBbpSu8+UpeoWxR+m1eO0/8CQLzDvB7nNaZLii5/kc0akZok6ULNFMfeVERcpD3kXfOxjGqVK9NKi+PbahTDMhwvWIxbyX23E96QHD6ju+GOEZIqb+CUMe+JYgyvo1neNYYLvLG8lfEavLTkWul2Zroi4jrF1iQNmBNqYWKgItr8aJOIOOJ4LHlVhE2gIgwkR9z04FGDZ0IIEoYHFZE4UGtKIkfcUrhmTVkpzhrmOhIRJ4weOiJOrCkFQRgsy5QQ12kDWhZdJoWgRYx9JSJuLFmuEu9bW6wpp51q1IW1oU3teC5SR9Y1h0HbK4r/m1pTUhFxg7amJKzoq90uVM4TWwRBGD5TJcS5hDVlGk7VVxQISCEuphduqeNiTSlsBpmsd4A2ecJwoXPESXswSroeJcQN7p2jhLWlsLr2N5EjjhDuBGHYBESuUiqnhSAIQj/pum5hnOTmueRPniDCllhTTgpkBKrkiJt6qPxwjVDyww0LajwdEkKcynP4aTGKdtBrCdqy0CKusbqJfaYgCOPHVKlUXlRsCJNQdo5MO11CSAs69MItmUfQl4V3gYYciMkgZ2oICFFVhLjRMg4RcYuVHhFxsvNfGDFURFwkOeIEQRgCVFRcPRJxYFIIm0REXF36j3FkpVIUX2aI3GHCdCH54UZL7DrI1XqbRz/N4GwQ3TxKhHMdQHHTfpSnJXniBGGimXohTqwpp584KE4eJCJO6AeUTSG1I0qYTKhIq9iRxYhRQokJlIVov5iNKGvKVQEucj1ExM7/alcmOsJoCQiL5DZhVSMIgtBvyLxVEqUzMUhE3ORARcTNijXl1CMRcSNGqVJRcaOwpTxB06eEOBHpBWFSmCohjrKmTMSacuqhhDQqFxywiRAnOeKETRBryumGtKaUHHEjhbSmJCY6/WKuTVhTVh6wpDwhyq0r0xF7SmG00DnipO0SBGHwkHZ5EhE3MYRkjjjZlDqOrFTEmnI7Uu8UN/xR0ZHC4KDWgDbmifNGKMRREXE1iYgThIlhqlQqv0PkiJOIuKknDomFW0KUXT1ORMD4UkcEGmphU6wppwdyJ5tYU44UagITDDRH3OYRccB6Ue7+MoR4JwjDhMrHJBFxgiAMAxHiJhvSmrImGznGkWVKiJOIuKmHsqZshmJNOUxaxJi6Eq9vO0cZEdciIuJqEhEnCBPDxKw45lrh1sbuLT+TNIuCypJXwWJa3NG+FTZyo8+f4AL/EKvcmXaTVy40L3eed4R1rlbO6/zvTeeNy1jKLP+O5RWfVxAl2BcsFzya59Li4NWpacx55oNa0+sEAN/mRXYcaxcXg8vQtHl12fPMrzNwed8tSnjNUOKaLzrqwExE6xC5oIIkBawM2uq9j0E7vFxSeXHe1RN3gScop7yqBTDqfxbwPNMVrxojOLb1+UIil6Ru8RYjGi3eTsVGk/GwAdgHeOfr7ipaOPfiqGNeBgDi2PxeNlD8XkGcwo62fpYuM0htvlkU1VpZBd7y6r9X3OL4YdexNqwa73wWR1PMmbkGLF774zbMz+e0eNfIuh/gtyUZYyijmXt1lOZdY+70bvACQoiLZy3YNbMbqpl1a+lInVUOJb7bRurzvJe7voMnmHdrvDHJnlnzMfmMP9xFkyQzr8zdnPcCRCnvPh6pz7DKdVcYY8IKb9xqubxBSd42vycWMbctgx3z3u0y5RpeceA40+kAhl1OxgzwUMx+QzO1Js1oy7Oct9e54vA2+1Wd8pEQlfapWVPu9xZLf/ZkztvDW4M4kpi3CV9zzmWd6+Z797LKOZXBbBjL8hyZpWDnD7xclW4Cz42QGG4cTJhjQk4bxG1/unOsYkjqvPNx2gS7zXu3M1X+ZPWlYn1q+CF0Uu7cVsCct53Gq8fdOfZA2byMzavHeqfhGlDYOz3JZkKcYq6/oV7+uzVqxQlNqCNklfLnZgwJoZjvtpUy522ccQIzlXvKW5KBw9wb4TXM60k8w2t/cqbqk1R459OM8yleszWxTFdEHGE7mIQS7TTt5I6F1F1flS0NON3i2+wRkXKxPzF6tDBslEKbjIoTe8ppwM8kR9y4Qe0kpCxE+8UckSNuOTgpIi4grCkjiYgTRgtpTSkRcYIgDAEqR9wM0ZcK40kgEXETg7YsNAhLQipiSpgeJEfc6KFcJjZaU/pEupLusCLiwuL1VcWaUhAmhukS4gjbwUSsKbcFXeI5+xElxBWPdYkcc4Jwgg6RQ1CEuOnAo3LEiRA3UqgJjDcoa0qtMUuIakvhSTniguLOf6qMIAwTKiKO6qsEQRD6DS3EiV3eJKByDb8tOeImCUqIm22JEDfNUELcighxQ4UW4sbImpLIEVeNRIgThElhuoQ4KiJOhLhtAfWcqTxxZEScCHHCFlDJeiVP3HRARVrFtrQHoyT2hhcRV+3GcPP1thAdx0XsPPDOL4dERByRV04QhgkdESdCnCAIg4fMEdcRIW4S8NtpwbU6Dh1oe6qWhKaK5VpRgJE8cdNNLSIi4ghBVhgc5EbsjRFx3dEJcU1CiKtJRJwgTAxTNeqihBexptwedEMiioKoD5RYKxFxwlZIRNz04hORVl2JiBsppDUlYSHaDyiLyeUNVpQSESeMI1QfRO3eFQRB6DdURFw9FmFgEgiaxCYOsaUcaygBZkasKaeaGSIijhJehMFRzppyzCLiRIgThIlhqoS4QKwpty1kRFynbESc1BFhcyQibnqhBJ5IhLiRQk1gKAvRfjBLRLZtFN42CnMAnVdOEIYJ1QdFRD5TQRCEfkNGxIk15UQQtIh5sNhSjjUrVYmI225IjrjRQwlxhYi4MRPiamJNKQgTw8SMvJQC5rytBx0BEe10l7UDUWy2S/jzR883+vwJ5n3e4twT5m9jlTvNWTYukzG118PJLKvctY39xmVuPH6acZmX21/D6Vh/P+4+PIdv7Tp93TFFPKLvxHtw35L59zu9Zn7/d1Z5kRT7q0uscp2MtzB3NKoZl2nEvJ1accRcPOya12Wdm5fpOMSOqGYKFZf4XUr3/gwF4zXNQt65cp9Xzl0xv0iLGdiUM3uq9r58y597WbHPWNpvIatuXY5Cr/CiUawOcz8Ms2qprjIu02ny3m2dmH+3dlacaPppAt2jDiRFvawndRTb48V6FdHOB/5/ZE8xIq6etdCdNz8fAGSMW+nUeC+OYrY/GcPi0GLuTfAXedfYOsO8HgNAd8783bYj3rmC47xyedDjnmiNkEgQv/OMNuZss13y3Dpy58FdrHJomjfmrUXe+FPv4L03XoVXmXNt/rwDm3mNVjHfcRksz/x5p5rXR610eYuG2Q7e+ZbcojjUC9tmtpEp7xq1b/7cOP0oAKTMPYa52/ueLM4ROavaHViD2TNTwGauNUZ13vOOE/N261jKG7g2DNcsThDsKteW7FpuFI5FhhFxt0W7jT5/gnmHt04SMCYPHrMyZsd54900NH+3rZLtAeXMUF/pQseGL3nGG5NwhgnhEd653CbvHU2qzDEh43VLZ3j9b7CzvHg6mxXnJ9lpwMyucutIGWO9AwBaTeaaDLMvZc1lc96zdkKzdiSuFNvwSrcLddJ39XNCiPMcWA7vfvhB+c6tO1d8xtW8A10v3/Ypxq20mrw+SvFeG2S++UU6Hd79r97Hu8j2Lt6Aq7PT/D3Nma9oFvDaBG7byuk3/AVmOzKhTE9EnNakNaXYDm4PIr/4nEMiQtKPiQgYyasibEGHiDIIE4mIm3SsPIeXrR9w5UohsSVCdpSQ1pQDioibaxNCXGX9gscSkSNuvi0RccLo8JMUll4/Wem6NjLJ8SMIwhBYrhDWlBIRNxFUCGtKUyFOGC6UNeVsS963aabWLgoyDSIyUhgcbWJ9sGBNSdjEDy0iLiwKYrWORMQJwqQwNbN2J8lh5esXJlLHQu5MzVcUtoAS0wJCdKOiJmNCxBOEE5DWlLEIcZOOT0SUxI7D2x4m9I2hCnGUNWVlQ464SnEn8lxHcsQJo4O0pQxkIVUQhOFAWVPOihA3EYQtov+oSv8xzixXCSvYjrxv0wwlqDQrkiNumHTIHHHr1w5Ia0pvWEIckSNOrCkFYWKYGpWKioaLJRpu20AtQhWEOK0REuLcsDpMYTIhhThCxBEmC0rciVxZjBg1MZGjz0sH875RgtpSuCEirkLkiJOIOGGEVESIEwRhhCwTQlw9FmFgEghbhDOM5Igba1aIiLiZtpkNtTBZ1InnK0LccGkHvBxxXWeEEXEixAnCxDDVQpzYUm4fyIi4DdaUfpdKqGojFzsnYQtIa0piIVSYLCghLh7S4FnYnHGLiFsJQuQboiTrcQQnY5rdC8IpQkbESWS/IAhDohkUhYF6HMHKzXNwCsMlFGvKiWOFsIKdaYvwPbVoTVpTihA3XDplrCmpiLghWVM2JSJOECaaqVEgPImI29Z0SkTEUVaVkh9O6AUlxAWEJ7gwWZDWlBIRN3JS20K2QfhydA57AMIXlSNuoxVlbllYDggbLkLEE4RhEBL9j0TECYIwLHLLQoMU40QcGHfCNhURJ/3HOLNC5AabFSFuavG7Kbx0/ZwncSxxcBoybcKaMiyzyX+U1pSSI04QJoapEeLEmnJ7QwlqGztLKj+cCHFCLyhrSsoaTJgsgs1yxAmjRSnSnnIQUXFkRFxYtKKk7SklT5wwGjbuyAVkLCMIwnCh7ClnJE/c2ENaU0pE3FhDW1PKuzatULaUjUogOcyHDLXJv1rGmnJIEXFiTSkIk81AWwql1JkA/g3AXgAawJu11n+llNoB4N0AzgFwB4CXaa0Xt/pdWgOH2jOb/nzHcrNwrOn6OBLVjK97f3XJuAyw9fVtxdtvv5xVzrXNLUA6Xd5gO814mm17uThR64UdmC+4LqBSOKaXFY4vPPD8Z48UB60t10Pd53VaT9l5i3GZx4S3s861w+J5wcfaZpX7TrLHuMyXVh7COten2g9llfP2mC+E25b5O5Pv0oVjVbcNZ0+JSZAqli2D75u/A4HLEyq6Ka+OtFrFiWEv8mM8Ww2LGYCY7dy8oLNSfKei0EG2M+HNdWJeG2lHvIlVWuPVLe2Zl1MrvH7DSnjfLXYdVJINYsNMjLi2xZBFm59rJim2IQuzFeT++nu0VK0Ax4tlM8a9hGVeJkt4dcsLeS9OPMuJPuS1I9w6koXM+u8z+oCcd/9zm/fddI86EqRFIS6p2Kh55mOZvUHDuAwAeGfyIlTvPD5vXCa/3XwcDwDZEq/d6jZ4U6ODi+Z94sFsF+tcbFzGe5Px6rEKeWMS2+XZG+b3md9/xLzv5jaYC6Iz5vef19IB6QzvHS3bbq1UAmDDzL3e7cBk2mEx97Sl5lNLAEDu8O6mxei3Leb4n0ual7vxQaM4LnBnM+zxyvcFh7qzpT97Mp89zJsncvq2xYhZSZi4R8z7G22XK9NozRWOzXQi4/GkYs5TOOM0xpAcAJBUmf0N0zTD23L1kSat8Ma7lTPK1eNdefFdjOsOzttxrPS5lru8+n/7Aq+cvcxcX5wzHyfUd/I2Qsax2TV2qBxx0fpOy6PSXLguPJ83/5qplF/vs4n+rBbHqM6W/x1Rp/gde8EdW6iM996ER8zbhMzjtSPdGq+NTJntFmeZNueqN8w22V9kzrcZ50tq22uzwaAj4lIAv6K1vgjA4wC8Til1EYDXA/i01vp8AJ9e+/8p4UdEdINExG0bIiJ8fOOu8ZCypiSinQThZMj8g0RdEiaLUfq6C1tD5okjIhhPlflWcTK3WC1u6lisFI9JRJwwKqiIuFhyxAmCMESWiX6xLhFxY0+FiIjbcpOTMHJWqOhTiYibWmqtomDXrsh61bAplSOOsqYc0lpC17WR2uuX8t00h0usbwiCMH4MVIjTWh/SWl+99u8GgBsBnAHg+wBcsfaxKwC88FTPtdGGEBCrnu0EmcdrY444Iq8KVU4QToa0PZUccROPCHHjS0Tk6huINWWraE25HBYXFylryvm25IgTRkOwMVoUQBTKWEYQhOFB2eXNihA39oStYv/RFSFurFkJKWtKnlOOMP7U24QQVxMhbtiQOeI2rC2OdC1BKdKestqR9CmCMAkMLUecUuocAJcC+DqAvVrrQ2s/ug+r1pWnhE/l/5Lk9duGNvGsN4olIbGLnNrtIggnQ9WRjdYEwuRBCfMixI0HdERcf4U4N01Rj9dPdnOlyJ3HSxIRJ4wREhEnCMKooTatSETc+FMhhDiJiBtvOq6HxFq/ZBekKXzZFDqVkBFxVRHihk2bsKYsRMSROeJ4FowcqEjJakfyxAnCJDAUIU4pVQPwPgC/qLVeOflnWmuNTSzwlVKvUUpdqZS6Umdb5wwIxJpyW0NZTG7sLAOis5SIOKEXpBAnk5+Jhxo8U5FYwvCJHSLCuc/WlHNERNtyGCK3isOixWoxIo4qLwjDgOp/JCJOEIRhQkXEzUTSL447oVhTTh5KYYUQvmfFnnIqoYS4lkTEDR0yR1wJIS4e4lpCm4iIqxERlYIgjB8DF+KUUi5WRbj/0Fq/f+3wYaXUvrWf7wNwhCqrtX6z1vrRWutHK3vrSyUj4mSH8LahXUIsoSLiYhHihB6Q1pSSI27ioXKOSUTceDCMHHGULSUV+bbZ8XmJiBNGRKUrEXGCIIwWMm9VJHZ54w5lTRlXpf8Yd8SecvtARTS1q/4IrmR7Q60tVsbJmhK0ECfWlIIwGQxUiFNKKQBvBXCj1vrPT/rRBwG8cu3frwTwgVM9l09FxInt4LaBjFraGBEnOeIEBpQQR9UlYbIY9S42YXNihxDi+pwjbr5VFNKoXHCbHZeIOGFUUP1PJA4QgiAMkeUKJcRJvzjukNaUdek/xh1S+JaIuKmEtqaU+emwiTwXuVLrjvlJCit/wKXNo9JceEMU4sSaUhAmlkG3FE8E8AoA1ymlrl079lsA/gjAe5RSrwZwJ4CX9fpFtsrx/NO+venPH+ncWzh21q4FPGzmEPHprbmluce4DAAcb9OLeL0IXN4Co+r9kQL1gNc4LzTpSIFeKGdrS1GKvGvurdyyigPUSrcLx83u/38tLX73OHTwyLmDxucDgNPdReMyrZy3o6lu8Xa3WIp0fe2Jp7LeH+oTtm1eRwAgy8z3Ebi2+f2IwmIzWe124fm939uow7OS0Nr8/rdj3iA9TXle5ppRtbTPe9aqw/Rb725eR4JO8R7Htgt0Lai2+fl0wPtuySzzXWPeSw6a64jCfLepSGU/S7fcOmQZdm07VooLhgu1CrKgWLGPzxX7l9luC+ms+ffTgfnzrtZ5/bZl8e5/NzEfXThtzogEYHZRALP6q9T8Ot0G77tp5lY3lW19vgqRo3TBqeJ4x3ycdkZlybgMAJw/c5RVrpubt6137GbuBGc8awBAj/u/Kdq8nMqZ52Kic/MXTsXMipzxxiRZlTcnshjPLfOZDRD3sTFOl1WZ4yZm3bI65Z53wym2NzOdjtF3tJnrhdy21WL0bQBQ9c3nYKHL27DXSXjvjWP1HluoLEfQWf9+aQWomoZvlb/eC0LztRUAwE5esSNR3bhMzmiPAeDekDcmTxjlTOY2y9ViRNxc2oJlMKa0Kry2NY+L5+5FWuHdf5sZ5KeY08R43rxRTmd59zEu+W6HjeK7uBRU0ErKj4WynNdIKofXJ+bMvtSumd/LisdrWznteOQ7qGwI9njk3MH7IxTnVFEM33NaA/vmVgrHy7DQMhvHrwTFdzNsJ6XXyBRjEmbVePc/b/HqZHeGMSdl7lFoncF8b7hLOQvm9z9navLxPK9NTmrcOdGQykwwAxXitNZfwubTle/u57mcqPgGJOHwkmUKo0Ui4oRBQUbEiTXlxENZHUqOuPGAjIgbQo64peom1pREjrh5wtpSEIYBZU0pVuyCIAwTKmfVTCQROuMMlR+uW7UBa7gbAgRzyIi4llhTTiN1wnK0VRNrylEQBW5BiAui9H4hzk2K68/dYUbEkdaUEhEnCJPAwHPEDQuXiG5IAhHitgsRIahtzONF5fWiRBZBOBkR4qYTyupQcsSNB3SOuMFbUy4SgtvqcSJHHFFeEIbBxvy3AJ1UXhAEYVCQOatEiBtrSCGuJuPeSWCFsoIVa8qppNYuCimtqozxRkEnIBxaOg+0o16XWH/2hrf+3AqLAq3kiBOEyWBqhDgnKlp3pBIRt21o+8UBysYIOImIEzjQ0ZYixE06o06wLGwOlauv3znijCLiKsXjc802z59VEE6RjdH+gETECYIwXJaJiLi6CHFjTUjlh6tK3zEJ0DniJCJuGqGFOImIGwWUEBecFCHndotz0+5QhTiJiBOESWVqhDiXsqaUiLhtAyWoVUpExHUIAU8QToaKiKMWQoXJghLmRYgbD4ZhTUlZSy4SghsARJ6HaEPdcPMctUgmO8LwCRNCiCMWCwRBEAYFKQyIEDfWVJrFvqNbl3HvJCDWlNuHOiHEtSuyXjUKqLF1ED0gvpERce7w1p9Ja0oij7QgCOPH9AhxpDXl1Hw9oQeUNaWfpLDyByIlqYV3qpwgnExMeH37SQYrK0bhCpMDFWElOeLGg2FYU861i9aSVC64EyxWij+bkzxxwgiokBFx0nYJgjA8lkWImzjCtlhTTiorlaIV7GxL3rdppEbliJOIuJFA2b6fHBFHCXHDzBFHW1PKJlFBmASmRqlyKCFOrCm3D0qh3cNCkLSmlMUroReb1K2AsCMQJgcqwkoi4sYD2ppyCBFxm1hTArRtpeSJE0ZBSLRdlH2OIAjCoIhcF117/Tzbz1L4RMSuMB5QOeLiqqyVTAKUFaxYU04nVERcqyYRcaOAWicM1uWIG0drSumDBWESmJhVRwXgbO/Ypj+vxsVOa1e9icurtxmfq2LxGrAzwiVWuUTzGuxWar475taVXaxznbVjkVVuiUgu3AvH4kUaxaFTsKM8v34EiztWIxl2oLhoOrM7gnZ4evSNnTOMy1zf2Mc61y6ft+BrgZfD6N7OjHGZQy3zMgAwX+Ht6Osk5guPUcJr8tquV6hb+m4P7Xpty3La4t3/VsP8u1lt5r4KZjGVKOMyPnPzJrOJBPTm10jmiHNcQCvoHeZ9QFDhCUUWt72LeJMyyy5uWumF55mXORXiSrFS+uhCVzcXv62G2f2ghLiGqsFp0nVmKShGxM2vdIDU8D0w/TyA0OPVrTTjvdzaMW+3tM1r63LH/H4AQB7wzqc98/ctY7orKGbQtN2jLa8QtjP3NHbgvvvmzM+lePdxV8gbk4SOeV1+8DmHWeeKU15/v9DaXJDfijNml1nlOKSaVydbXfN+I2G2I1wsXpOAZd98vmHZvJc0S3mDEsc170vTFq+vd+/hlVNZ2Qeg0AhC7Gw11x2tooN2WG4Mq3Lew4528Z6b9nnt3VxgPng9u7bAOteMwxNX9nm925+HpMW2dKlSxaHunNG5HhbeY/T5Ezx95gZWuXbNfL3jmvbZrHPdMbeDVc5mtCVRp/w72txbbHPm4jbCSvn5is2cb7RONy/TVcUIvlIwUy9z2xLFmd4wxsgAEEXl2sVaq7im+e3W6Wjl5d+DIGDOSV3mwHU3LwrLdhhzUsY8FuDV/6RCvHdJBzU3BrSGS0TEedUMIXj3f9/MitHn/Z3F8+/JGjhv9+Zr5idzuFk3Oh8AHF/Yeu1rM/Ru3vp6zNho6N3CG6PZMXNuyZzLplXzctxr9JaZ83SP993Ya3fbiOmJiIuKjWsWMmdzwkQSE7tW/PiBhdsgJqzoJCJOKEHkFSdLkidusqEiGqlILGH4DMOacrZdFOKWNskRt9nP5ojfIQiDhorub0u+W0EQhsxyUBQ/ZzvSL44rfpOYB4s15USwUi2+a3XJETd1OGmGcMMYL1cKLcIiURg8lNuEv2ZNaWc57Hy9uJHZCjlzgz+HDrHpJWzL+pQgTAJTI8TZnaIQl4ZT8/WEEsRBcTJxso+zHxGWHEQZQdhIh8glGHZloDPJUNaUkiNuPBi4EKc1mSOOygN3gqWQyhEn1pTC8KkQ1m8dYrOIIAjCIGkQQlxd8sSNLV6zGD0RV2XcOwmQOeKa8q5NGzUiv1cz9AElwQWjICKEuKCzOh91u8W152HaUgJAu1Ic+1c6/U3lIAjCYJgapcohhDiunZAwmdC7Vh5YvPWJiLjYFyFO6A21yLlxx5owWfgpFREn7cE4QOaI66MQV4tjuPn6MUPHdbeMiFwkIuIoe0tBGDQBsQlE8t0KgjBslkMqIk7EgXGFiojr1KTvmARWqkUhTiLipo86kfevUTG3ZhX6Ay3Era7/uISzTuINdx2hXSXWpyQiThAmgqlRqsiIOMLXV5heKFEtPCkKLogISw6G77Cw/aCEuIpExE00ZI44EeLGAjoirn/CNxUNt5Ut5erPqYg4EeKE4eKmaUFETiwLiSNtlyAIw4WKiJuRiLixxSOEuFisKScCKiKu3ooAzUyqJowlpBAXMvPtCafMVpv8qfxwyZAj4mhrStkoLgiTwHQIcVrDpnLESUTctoIS1fw4If99AomIE8pAWVNSUQnC5BAQwo7kiBsPBm1NSeV2o6wn1/2cjIgTa0phuFCWyFQOU0EQhEGzHBb7xbpExI0tXovYkCrWlBNB13MRbRgbO7lGhUi7IUwu9Q4VESdC3Kgg1xbXIuI8SohzR29NKRFxgjAZTIVSpRINa0NbmDuAdsVPeTvRK0dcQFhTSkScUAY6R5xMfiYZOkecCPPjAJWrr59C3DyZH848Ik6sKYVhExLtVtsVIU4QhOHTCIi8VSLEjS1+g5gHizXlxCD2lNNPrV3MESdC3OigIs6CMYqIi4jrq3QSqFwiZQVh3JmYVUcFjTmb3n3uJMWGMAsszNktPNRdNj7XE/wF4zIAkGC4jd69qfnju2nuNNa5VvKi/UgZZizzCdnxrMY6l10t3v/T9TLOqi4CAAIiIm7PjiYWk60XYDfjxmXze3msuXXUxWbc4exglVtq8J6b5xXfqV7sqvGiQ/ZUGqxyuTYX2m86upd1rqhafNcqTgdqdutdRzriDchUbF5Oe7z2RyW8DQvaMT9fUmedCuym1S1GSp+AzBEX2oCbw9qi3GY8Zv+dxmUA4LzKMVa5c/0jrHKeMn+3b4/3sM71hWMPZpVLCFvpIEtge5s/l2RHeaGuroptzuJMBSnRh5zg2I5iWzoXtaBrZgKhWzEX8OOU1440l3ntv7PCaH+Yc8+MmfpCW7xGwaqYC7ops/1xl3kLnOlZm9cRLyv2s53QRW2Ot/i92OLVkXsPz7HK+Yz6X6/wFhpPq/HGFtwxyaxrfp37w0XWuXzVv40JvWgyX9LD8Qyr3M1LvP7mkfsPGpfxNu7iLEkO3rhpKTZ/3+625ljn6jIjZR2D/SUrQXH+NNuI4DTL3Z9kltm47i4uVpfBcczHdgCQ5OYd3OEOr/4vO7w2edbp3Qc4zWJ992dT7HDM5m+fXbrQ6PMn2OPz2tZ93pJxmVbKa7eSLm9pLLXM65btmLU/jWqAPUvNdcfcu4FWXnJtgVf9Wdv2vYi5GZ55jTlTT3ZXzK8zrfIGvNWdvd+zXVmzcEzPA2fvMVub9G3eGOHW7i5WuTTiPYCZuvmGxrmAN95dic0FzY5f7EfzBnBvcxYzS8Vrbzke7m3OouryotKqrmHfZgNR4BTS7+gm0Kn0fiZZznhPmd22znjxP5yWJOUt7cLKeO2W0+LdlDQ0P1/GDTRihl9x21bNOB+nzCQzFV/Xbhd77ZxRsYXJJg6Lg2cvWh3kqlzDi0e/c0WYTNo+EREXS+j/JCM54sYX0pqSSIrNhYpkWyQi3k5mqUpExDUlIk4YLlQkNtU/CYIgDJoVIkfcbCT94rjiE9aUMbHRUBhPlqtETkYip5gwudSJiLhmlbljTThlKOesMNrcmrLrDb89pQS3ithTCsLYMx1CXKeoQmeVqfhqggFdwprS72wePh77NrQlgq3QG2pHVEhEWAqTQ0AsaEuOuPGAzhHXv/dtjhDQlqpbb59bJH4+JznihCFTITaASI44QRBGQYMQ4uqRWFOOKwFhTRnXRYibFBqENeVMW963aaJGWI22RIgbGR1CiAvuF+KK7Wl3BBv8O0SeuEpHhDhBGHemQq2yomJEXBaIwLLdoHLE+Wt54byo2Fkmvkw+hHJEZI44GeRMMlREXDSCnWxCkZh4Dn3NEUdFxBERbyezEobI1fpxxUwnhpPyrM0EgQO1gaBNbBQRBEEYNMshEaEjQtzY4reIDWg1GfdOCitErrAZyck4VVA54kSIGx1bRsQRqZFGEhFH5YlryRqVIIw7UyHEkRFx4VR8NcGAblDcheJ1NhfiqM8LAkWHsP6icg4Kk4GV5/Cy9QPoXCkktrQJ48AorCmXKltHxOWWRS46zhG/SxAGBRUR1yE2igiCIAwaKiJOhLjxxEpyuBs2LucWkIQy7p0UVoiIuFmxppwqaCFONluNiogQubaKiBtFigvSmlIi4gRh7JkKtcruUDnipuKrCQbERGfpR5sLcVQEnSBQUBEHFRHiJhZvs/xwSiKpxwHamrJ/Qtxcs2gpSVlPboSyr5Q8ccIwoSyRJSJOEIRRsCxC3MRA5oerybh3kqCtKWUMOk2QQhxhPSgMB8qa8sQ4nFpLGBtrSskRJwhjz8QoETkUrmw/iPzZg5cO41G4Z92xBbeKK9sPQhbeYXwuWxWFvTLstHiDodMd3gLjua75de6172adayHndSxHs63tvihaOS8Ef6uIOD8iwsfXhLh7O7Os8+XafPJSD4oDrDK0urwd70mHV85xzOuWbfHem8W49wI4RSM2ryedNm8wGxE2pmHShbKK0bjrYO4H0AHD7o47l27z3m3d67sT2O3hbpBwK7RYWs+KC0Wx69z/ecs2r8sXVA8blwGAp9ZuZJU7zeb1N109vGfwBTyYVc6dK/aJQZqgXtt8gc9kV/fOuFk4Fp2vUT13ectyyzt84Oj6Y2e6x3Bsd/k2rB2Zt0HNJV4bqXNeo5DVzOu/WubVK4vr7DnH2wjhB+blOm3eULk7z+sT3crmE+g6iu99XLFx9vwi61ythNcn3h3zxhZZZl4nj947xzrX8aDGKrdjnpf7cSYwj0w42OaNPy1l3v8CQGCb1/9U88YIac5rE0KX925/5/huVjkONvP+t9rm49aceR+1y7vGeEf5duuYV/w+9biDvGTzkIa8a3Q9XseRdnl12WGsC6TMsdY19+xnlfPO2notYffRRuFYVPWwkJrP0w936sZlAOCrd53DKnfB3iPGZaKM12+nK7w+UaXmfZsOzerxglPs02bbEVDyNQoP8e4JpwvwF1inKv1dNsKoxgCApG5+Qncvb7PBI/Yc6vmZ09PiPOTMfUt4/K4DRuc6HM8Yff4Ed/tzrHIhY2wNAJqxlsZZfwOAmme+BmcT9SOIElhKk04tqWfDUhr3rvDufxyZj60PqeK5Oodd3H10vmfZLDXvp2zG+jMApBGz/20wrpG33Mpuf7LiHolSKG1+wtzl1f+0uG+q3PmYapFbXGrpCfc+TipTETbmdooDGbFa2H50CbFkqxxxXYmIE0oSEdaUVGSCMBlIfrjxhvLYpyxAuMw1ipPopXrvEepyvSiIza3I7n9heFCWyJR1siAIwqBZCYurJvUogtK8hTphcITN4gaPqCZ9xySxXCEiUCVH3FRBvqd1eU9HRUSsFZ7IEUetJXRHYE3ZCosbYqpiTSkIY890CHFEtJMIcduPOCQWb7ewppQccUJZOoT1V9AVIW5SoXaxjWLwLNBQz8JPUoCxc4xirlGMKlqu9RbiKLFulhD1BGFQkDnixJpSEIQRkNk2mv76RUALGrWYux1dGBRhqzhniaoy7p0kViqUNaXkiJsmKtR7KoL5yIgJa8ogTqFyDa9bXH+OR2BN2QoIIS6SPlgQxp0pEeKKO+8SEVm2HVSEm79mTenFxMI7EUEnCBRtIuKgEsluo0nFT4oTnVgi4saGzLaQ2OuHJ5YGnPTUd9m7SYbahp2CuaJzb2yEEuKo6DpBGBRUJLZExAmCMCrIKB3JEzd2hC0i0qYqfccksUK8a7OSI26qIN/TmsxPR4W2FJmeJIgT0qmFcnQZNK2wuBmv2hEhThDGnakQ4hwqIk6EuG3HVhFxVI64WKwphZJEHrEjSiLiJhYqIi52ZUFinKAmM5QNiCmzzeIC4UotRG73Hg4tS0ScMGJEiBMEYZyg7ClnOiIOjBuVJhFpI5Z3EwUZEdeRiLhpokJYU8YSETdSOlRUXJTATYpri6MR4qiIONksLgjjzlQIcV672BCmIsRtO8gccWtCnEtFxIkQJ5SEsv6SHHGTi+SIG39iyp6yD3niKFvKMvnhVj9XzBE3uyILjsLwCMWaUhCEMWIllIi4SYCKtInFmnKiIKNP2/KuTQsq1wjahGOLvKcjJSKEuLDT3SQibjysKWsSEScIY89UCHFkRFw4FV9NMICOiMvW/X0yiS9irVCODhERF0pE3MRCCXGU8COMDmoy4/UjIo6IYCstxM2INaUwWiQiThCEcYKyyxMhbvygc8RJ3zFJkO+aRMRNDUE7gbUhFXYUOsgdWdMcJaQQFyVkjrhR5JtvUtaUkiNOEMaeiVl5zKFwU+s08mePaRwoHLvHnsdNrdNwqDtrfK77ohnjMsBqgmoOD60dZpXb5y0Zl/EUbyFzKStGApThO236mW15rm65RdECupg/yGlnONieRdQoVvXjdhUH27M43q6yTtfpmk9g0pQ3mAp9nuhjObycSr576gveZVlo8573whHGe5oq1rlaUa1wLOwkyBeKu5BOxo5559OMYpqpK1td3jW6TfNyNnNc2D6jONgtQzWkrRlmUFwkSgMb4drnk9T8Zi6mvDbyYDrPKnd3spNVrpVvXWcpMuaenT1hg1XuOzfsR0f5ANaX794ZYjmi+3Qdlqsj4aFi27ZQqaHd6p0j7rBbPHdtKcZK06ANY7zcOmFOwjPeu60YbYJmjibZ7ZbNG2+FvrldS5e5WKkWeDdFbXH7KSEu8l3sDXjvWrXGa5Q9i9cmL8e937ONHL2X17aiyatc3TpvYdNS5nXy4LL5HAUAmkd541Z7hXFPeM0InDNbrHKuy6tb7QPmY0KbOf7JfF77k/uMMTmnDACEzHKeWbnlevGdruVtZJXe94jxygAAPI83R3EcXt2KM/O23LZ4918xb8qNx7eebz/92E2FY4thBQtd87bkjMqycRkAsPbwvlvgmM+Buzmv/fd38ERkzRjbdRtm0eyNoPiu1TsR7A6grd7jxKTKu/8WYwkinue1rf4iqxiCY7zvFs+Zl9EZb0xuqa3bhFqrOPZo1zzYPcpxzrUZ3PYn9HjrVFXPfEzuWbz2/+4V3nw7Ihy0at0YYVr8zllgwbUznDm3xDrXCmOM7O4qPutaJy7VwYZV8/vPrSPtnDknPWbe/2bmSx2nVI47UOZUZYc3tIbiDX/gMtfunI55PdEOc8IxoUzFFosT9oMnExM2hcJ0ExM7Vvz4RI44ItRfrCmFknSI/GFhV/y3JxU6Ik4iZMcJ0pqSmPSYMt8qWkku1sot9FOfk4g4YZhQ/U47EGtKQRBGw3KVyJ3akX5x3Ki2i6tpnZr0HZNE6thobbCitrRGTaJfpgIqarVTlXd01FARcUGUkNaUyQjWEtoVIiJOrCkFYeyZCiHOk/xfAugdK0GUAFojIOpIJGKtUJKOR+SIE2vKiYUaPMdi7zZWxA4hxPXBmnKuSeSIKynEUZ+bJ36fIAyKkNhUFBHWyYIgCMNgpUJF6YgQN25QQpxYU04eZJ44ed+mgrBJ5ACWd3TkGFlTjiDffJu0ppTN4oJwMkqpO5RS1ymlrlVKXbl2bIdS6pNKqVvW/uaFzTKZDiGOyP8lQtz2I3NspPb6Km3nGm6S0VGTRMcqCBSx6yDf4BfmpymsnGn9I4wUyRE3/kREFGo/hDhKOFssmSNusU5ExDXbgGb6awmCIdQGEImIEwRhVFDCgETEjR+1VlGIa8si/8RBCd8ixE0HlRbheCBRqyOnQwhdQZTAJTb1UvnNB01LIuIEoSzfpbW+RGv96LX/vx7Ap7XW5wP49Nr/h8ZUCHF+R2wHhVWoqDg/TuETeVXEvlQojVJiTzlF+FQU9Qh2sQmbMzBrylOIiIs9F50N0Udulq968QvCEAiJXa4dieYVBGFErFAROpEIA+NGjYyIk0X+SYN830SImwoqVERcTcZ3o2Yzx62xiYijhDiJiBOEMnwfgCvW/n0FgBcO8+RTIcRREXFxKIuq2xEqyi2Ikk0i4qSOCOXZuAAPiD3lpCIRceNPTAjfQR/et7lTyBG32Wcpu0tBGARUnyNCnCAIo4LKESfWlONHtS2L/NMAFRE325b3bRoIm4TjgYjlIycKqbXFFB6xljCSiDgiYk82iApCAQ3gE0qpq5RSr1k7tldrfWjt3/cB2DvMC5oKIY6MbpBop20JGREXpZvkiJMJiFCeiMgT1w9hQBg+PpUjTiLixgoyR1w6GGvKJcJycjOWCBvL+YYsggjDgcoR1/FloUYQhNFACgMixI0dVESc5J+aPFZCiYibVkKxphxLOpts8h+XiLiu5yC11i/pe2kGtw9zZkGYEByl1JUn/XkN8Zknaa0vA/BcAK9TSj3l5B9qrTVWxbqhMTErjwrAHr9B/iyMix1XfSbCHr+Bg50543Pd25w1LgMAR5ZrrHJf65zLKmc55nUlz1TvDxF4AU9wyFLznSGux+s4Ai9B0/ULx9uLLlSreK8O6zqONGvIcp4e/ZjT7zIuc3H9bta56lbEKreclV9gXl+uXM6kk8k07z5+4/jZrHKNanHy34s84+1UyhMLbSpZr9MBapvX16zKOh1U07xp1oz2AACy4itTCpWb38vUvFqtMsNrf2oBvSOslhPHKw98vh2bT3y+fvQc4zIAcN3S6axyUcpbQMm1eR/w+D0HWOfyreIkpVS5vW2k9eJ1Vitt+Hvp6LOsZN+2o90qHDvu1pB1ytXnxbD4Us8eSpDPl3uRdGB+T+b20GOfQbF01HwsYx/h1Uc15DSboWs+vkiqvP635fEaV7VFU07miPNcNFLeuc6tHGOVe9BpR1nlDsbmebBvqfLq/9EOrwPmtP8A8NCZI8Zl9lWWWee6BvtZ5VoetxM2pxLwrJF2V4ttdBnuOdu8b2sv8MbIVsCbp7iuefufRry21a3x2i3TlKftHcXx6kynA1XiFqmENyet+ry65VjD63BmPN79n6/zIux7zWWrhBB3wNqJxbZ5O3nhzH3GZQDg7B3HWeUsxtrYTS3exvaDHm8NyGeMLZYY07bGXLF/mokilBnaZzVe/c8Z76nNDMiJGXMUAMg8XrktB1yb4DHXqRbird81RQwHFvwqvnDkwcbnmvd57ci+Om+85dq8+V7FMW/LzwwXWec6LeR9t5m5Ylt+pl5EPSOO71yENQccieusc3H7qHbFxUxz/Uu3313CyszWY76aZ37/7z4+Z1wGAFvi6O40r1uZz1uTdFd45bjtXWa+lImUubbIxVvilctdRpvMl8HSk/K+0b9a64Nrfx9RSv0X/v/27j1IsuyuD/z33Js331mVVf2a7pme0cxo9BxJSIwENstjDSwCE4jFjxVGIGzWxMZ6d+3dtXfFeiN2/QcOHCa83g1jYhVYBocxrFfYIFgw1mLZgBFCQvKCkDSa0Qwz090z093VlZXv+zz7R9V0d9X9ZVWeX2Vl3lv1/UQoNJ2dp+/NzHvPPff87u93gPcAeNUYc9la+7Ix5jIA9xu5YzgVGXGBUJoyYtnBM0nKcmtMYzFziRlx5EIq/9UUHgKg4qsJ/QEz4opF+j2k382VVEZyuzX/qFYsTSmUuyRaNC/LcmV1M2NYVpeIVqYvlKZkhk7xtEf5mUKWvSufvvAQKs+306ElnaPMiFu5SFjuqDpJEAgZcfEKSlMCwFgoTymVIyY6i4wxLWNM57X/BvCfAPg8gI8B+ODe2z4I4JeWuV+n4u69Osk/mRI3VtMR0mqJ6eNhjHooBOI48U4OpNKUXCOunIpSToJmk4IL0tp+TqzF+jA/YeGyRlyvlX/vxkiXwUHkoiksvj6pBoBRPglORHRMYmBgysBAkQRxgmqyf9yb+B5CLuNROgOhFCwDcadDa5gf441ayrI1tDBSIK42SRCE+bmEpLqaHBcpENecMBBHtOcSgH9pdu+XKwD+mbX2XxljPg3gnxtjfgjACwD+/DJ36lSMwKpSRpzQadLpNzMjjmvE0TFNqkKQN+Igp4yqXCOu8KTAqLS2n4v2JESQ7i/7MakGCIVze5aeELTbYEYcLYGU2S89fEREtCyjehWJ56GS3bu2NuIY1SRBJKz1SssnZUYMm1U+xFFCYgbqmIG406AprBE3YtbqyoVClbXqNEGlSBlxTSkjTlkvkeiUsdY+B+AdwutbAL55+Xu0q/SlKb04g5/sLyia+gZphYPLs8gpI46BOHIwrglPGwnHFRVfVcisilY0eCaZlBEn/W4uNgZSWUq3NYKk97M0JS1DcyoE4hyCyEREC2eMmBXXYVZcYbRH+bWMhop1tmn1dlia8tRqCgFzlqZcPTkjLkUQ5tdzS2qrmUsYMSOOqHRKH4iTsuHius+nvM4oMSNuZiCOT2rS/KQJzwYz4kqpJmTIsjRlsZxEacrjlqWc9X4G4mgZxIw44QERIqJlkgJx6xNeF4tCyogbCRkUVHwsTXl6tYbCGnE8T1cuEpY7qk6KlhGXL2EqBXaJqDhKH4gLpsL6cHVmNpxVUiCOGXG0CLOCvFQ+NWHwzNKUxSL9HsctTSllxElrvh1GCsRxjThaBnGNOI5jiGjF+mJwIJ+FRavRFkqUjRpce6qMxNKUPNdOBbE0ZZvn6aqFUkbcOEEQCxlxK1ojTsqIazEjjqjQSjXz2Ivzg49gIAdYXnuvZ/Kd5FEGU91FLw51X6fNdNl7aeTezq+6fx8AEA6VA4HI/YLUfEBX07haScX08bVwilqcn3i3TYOqSfGei8+ptveNa087t3lX7YZqWw9V8sf+PAKjC0rvZO5P131quqbaVj/RlUe50Xff3lpjqNpW1U8RbOaPocuNHh558PbMdqNI9yTbaM29XaehO2/GkW4id1BtuTdKdH2dH+j6rczK2wuEgM40CO6+f1a7w7y8te7cBgCMsUe/SbC5vrzgzwvjTVU7D7rP5vsZYqG8Rz2J4fvysZCmR/d1XSkjrt6CGc1/7d7xO/l/dzQG0vmOGW/oPk6IN3X9eC1QPiigGJMohlq7dIcIrLJdNMdxclAc68Z2tW3dDbm9Kn+4VpK/qZ7WA/i+xbN3zqu2NYx1Y7vXd26p2gUmfx09ypPrunETdF0ywkz3e7+1ed25zYVKX7Wt7zn/WVW7yLof/9NMN0YYZ7pj60uTy6p2D7e3ndusvU6XSVLxdB3eJHX/Lp8b6s7t6zu6EyDJ3PutYSf/W3fiCewRp1J2QTdRuF7TBR4C373/AYBYcd1o+Lrr7+PrW6p2a8Hs7+QdlXzfVNnMsFnTZS3+2xuvV7WrVnTf/1s2XnVuM05091+DHd39dtR0/73jgXsfecfm733Xp2PYtTm2P1E+qK5olrSVgzRF/wMAfqi7v6xM3NtVlMfx9vTwY6s5zPeHNypraAXu/eR6VddHjpRjQs11AwD6kfsckNfUHVvae9KXzEbutVovf75FVR/XJrvvbQe6OZkH2z1Vu8ZGfl7jcXMbT26+cmi7rdDtYVQA2OjorhtSZuE8+r77PibK9Wmtsl2wo7zf89yPyUyZJKvp6wBgclF33tTusDrhUUqfESeVppSeXKCzQSo3ub6Tv9Ge1AKWLyUn0vqDDWHNHio+qcQh14grlkgsTam7+X1NV8yIcwsobwvv32BpSloCKQNbWruUiGiZ5CwdXheLoj4SHlpuMZu6jHak7NMxS1OWnrVojfLBm6FQcpCWayrM/3R28oHOVZWlBOT+XOr3iag4Sh+IqwmlKSOWpjyzpGBJt58foHJ9OHIVCsdMjYG4UpLWiGNpymKRfo/qcUtTDvMTg9uupSmF93ONOFoGltgmoiIaCGvEsVxecUgTshMG4kpp0KgjO/AgcXsawU+P96AarVYtTFDJ9meehIGPmPemKxfW879BW8heXOUDvdOmEIgbH++emYhOVukDcVUxEMeL1lkVCpNS3X5+klR6uoXoMNIxUxcCOlR8VWGNuIg3O4USihlxxzvfuoP8QxmuGXH9RiM3CbI2naLCSRA6YdIacWOOZYhoxfrtfCBunRlxhdEYCoG4NrOpy8h6HgZ1oRQsA9+l1hay4UbMhiuEaWO+cXYcrDIQl79nro/5sDhRkZ2CQJwwocpA3Jk1b0Ycs1/IlZgRJ2QoUPFVhYAO+4RikQKjtWNmxHUXkBGXeR52GvkyXMyKo5NWj4SMuCoDcUS0Wn0hI64zZbm8omBpytOlL5anZCCuzMRAXIvB8iKQMuIkKy1NKWbEcY6KqMjKH4ibsDQl3SOVaeruCBlxLOdEjqSMOK4RV05SQIcZccUiZcRJAVQXG8Iaca6BuFltuqORap+I5iVlxE3qnKghotUSM+K4blVhNBiIO1X6zfzDYOsjnm9l1hoL68O1mBFXBJnvzVV2cpXzCFwjjqh8yh+IY2lKuo8ciJPWiOMNCLmZCv2KtEYlFZ8UiGNGXLFIv8fxM+KE0pRNt9KUgFzOcmPMjDg6WQ0hA3vCjDgiWjFxjThmxBVGQ1jPaNLmtaOsmBF3+sgZcQzEFcU85SkLlxHHQBxRoZVm5tEAeKR+J/f6A2k/91q1ndx9b2jdP2J0Xve19NfyA6N5xJmu4x5G7k9Cp5ku9hrGuu9kMnUf6K83dIPJKPXF0pTS5NX0vjKDaxXd9rbStnObz4ZXVNsa2Juqdld83WfLFG0u+kPVtp5sXVe1+/L6Rec2W2P3SXcA8I3FOMifb7Vpcug5NQ512QoV3/0XqFd0QYrMmqPfJBh69ug3HeDtKG/8+7o+clCXB6FVIaCzlbYQT3b7hariu7y0mb8WzSNVfv/9se56kymuAU/H7ucaANQC3TGZph7Gfv7cqUYJ0lTe/zQ++hiR1ohbWEZcMoRtHr1OnE3cf+9QcR0FgHiO72RRPMXnAoCk7d6PAIDRbQ5TxVhmOtBNhngbmispcLEtB3W7Vnh9Dei2x7ja6am2tR26H/8A8FvXH1e1Cyruayk2A91kwsOd/D3DPLqBLoBwI9pwbtP08pNv86gb3XfS8tz75JZyH9fscieGr0WbS9tWbHV9q2fc+7tuVXc89mr5rJl5JIoxQrSR71c74QRJ4/DPa1Pl+DPWja39RHe9iVL337sf6a4bWzu6+5Sve93zM/8uGOb73Z1GHa9rbqm2lVjdXMIzd86r2u3E7uNdzbkGAI22rr+rKq5tofJBmp1G/rq9vhMC4eHHqT/W/W5Zzf27NJHu3DbK5ZYT3VAGSct9nOYr59IOG6c9nG3nXkvXPVzt9PDV6y84byvMdMfWjdG6qp1WO3A/3/qJ7v5Xqx2EiBo+sHP4+9K6d/fzvDpeU20rUc4JW2FOxh9muD4+/PcMU/d7onY1/2DHPF7su4+RAcBq5kkyXf+TtXQdkLmj6xOMYgyUNnT3ltGa7ppYv6X7bKliCJR0dPtYVqXPiAuENeJilqY8s+bNdAuFgB3RYaRjhmvElY+XZgiS/YOYzABxhdeNIhEz4o5ZmrIrlqbUZMTl7/g3hixNSSerLpRCZnY/Ea2amBE3YUZcUTSljDiuP1VafWGdYp5v5dYc8RwtsnnmDVeZETcWjpUG14gjKrRTGYhLGIg7s6R1vMT3cfKKHInZllwjrnSqSf6aEQYVfYoNnYhIWCPuOKUpgyRBZ7r/ycvMGAwa7k9WbgvlLLtDlqakk1UP88e/dF0iIlqmQTv/6DMDA8UhlShjacryYmnK00cKlkvBFVqNsHF05thKA3FNIRA30WWuEdFylD8QN2FGHN0jreMlvq9WmqqsVBBS8FaaGKVik7IYV7nAMskWnRG3LqwPt9OqI/Pch0FSacqNEQNxdLIaU+GJaQbiiGjFBu18YGB9zEBcUTSYbXOqSBlxPN/KTcqIG7d5jhZFOMf84ioDcZOGlBHHQBxRkZ3KQFzUYCDurJrU5hu0MCOOXIVC8JalKctHCuaEQvYVrZb0mxwnI25DyFjrtXWLSsilKRmIo5MlPfgRcixDRCs2szSlPVvrfRRVcyhkxLV47SirnZZQmpKBuFJjRlyxzZcRt7pp9UlDqNo0iXkNJiqw8gfipNKUDMSdWfNnxPEGhNxIZU+ZEVc+UjBnqlwwnU6OGIg7RkacFCjbVgbipHXlusyIoxMmrRHHjDgiWrUk8DE+MI7yrUX7QDloWgFrUZcy4phtU1pcI+70YUZcsRW9NGVW8XLVvjwL1Cd8YJyoqEqTBmBgsVkZ5l5vhflBfrWV3H3vlWDbeVvvaX3FfQcBxHa5X+coy9fkP0ovVU48JvmJx3mMU/dBRC/R7eMz/QswwXxPftiWQae2e+x8eXhRtb3fvvm4c5tbA933+NVXXlK1q3n5QPU8AkW7S9W+alt1TzdIeOv6y85tXq2vqbbVixoI1vLfSWMaYa02uy7/beXvnWXug7nrt7uqbWmflbKZ+5pqtW3dOmzjq7rj2Pey3GuNNH+zE1V98b0uHu64X2uA3WNLY6vXVrXTiDzdzUUY666JWWYw9eVAXJZCXM/P+IcfyRtjISOuow3E6TPiTNM9mOj5umMznirHJIpOIW7pehLlJQpJqDsm/bb7fjbWdGuvTCLd8XWhORJfb8f58W5jPcGF5ghv7bhfDwHgVq2javfCrTeq2mn0rO57fHlbd73fXJO//6O88/x15zZfGF5Wbev6aF3VrqK4zmnGgwCwWdM9nFDzdA9cPN1zH8tHqbIfUY4XppF74Hy9sdy1nzTHCAD0mw00o/3j+bVggOH67O/Y39I9SPCyv6FqB093naoEinPA6LaVbOnGhF/uXhBfr4UxKun+fYkCH18YP4CH1nuqbX39xjOqdk92bqjaaeYSrk27qm09cf62qt1O5L7e8GjsPo8DAP01YU3G6QSoHn7upsu7bYBJdPd7fqRrF63pzjeruASMtnXn6NXXzb5PPDfJjzuaGxGuNrZxJeg5b0szRwgAFxr5udZ5RIp5CwDwFP3kJNVdN4ax7jtZr04RzfGgf1Lz4e99HqPt/60uR6bux5g2g9wD4hvhGNud2efU7bH7PNXFlu4Y0Y6ttwfu9wCpck7e1HXj3bij2161797fZVXlzJ0y/Spt6LaXKb6StH62MjhLnxFXmeYHHUm99B+LlKxn5lr/TVp/iOgwcdXHwdhTEGfwkuMFcGi5akIWI9eIKx7reYgq+Ru7qjIrrjuQMuJ0N9M9ISNuY6S7wSCal/Rk63SOp3SJiE6aVC5vfcQsnVVrjfIPcAybuglpKoZ+U1iTkedaqdWF8rHTNiseFEXRM+IAYNIUylOOmRFHVFSlj1hJa8QxEHe2SWt55d4zZwlLoruMQSiUATvOulW0fFwjrjwWWZ5SXCNOmxHXzLfrco04OmHSQwRcI46IikAKDnDdqtVrjYWSd02WvCuzflMqTbnczFlaLCkQN2EgrjDKEYjL9+sNof8nomIofcSqIgXimlwj7iyT1vLKvYeTV6QgrUFYmzIQVyZS4DTkGnGFJGUuawNxckbc4taI2xiNuSg2nShmxBFRUTEjrpha43xG3KjFQFyZ7UiBOAa9S63BjLhCkx7EPiiurToQx4w4ojIpfyBOKE0Z1xmIO8vmCcQxI440pOyD+pSDnDKRShuyVG0xiRlxygxUMSNOGYgLqwEmB4K3QZqhPc1PeBEtivTQxzwVAIiITpqcEccsnVVrj/IZESxNWW5iRhzPtVKrjRiIK7JSZMQ1pEAcM+KIiqr8gbgJ14ij/aSspYM4eUUaUgCXGXHlUpcy4gI+vFFEiyxN2R3mnxbeVpamBIDtVr6tFOwjWgST2dwi7MB8T+kSEZ00OTjALJ1VEzPiGIgrtVG9itTsX7S8EcXqNZRp9ZgRV2xlCMSNhUxnZsQRFdeJRqyMMR8xxtw0xnz+vtc2jTEfN8Y8s/f/G8fZRmUqlKZscFL1LJtnzZR5suaIDpICuLWQg5wyqQqBuIgZcYW0yNKUG0Jpyl47P3E4L6msZXfEQBydjKoUhKv6sJ4R3k1EtFwsTVlM0hpxLE1ZcsYw8H2K+HGGINyfWJD6BhHnMwtjnkpayYoDcVOWpiQqlZOeffxpAP8AwD+577UPAfgNa+2PGWM+tPfn//Gof8gCiG1+dwMhI25Sq959743YPc43yPLlNeZRN7oJwktBT9Wu64+c27Q8XeksbbtbSce5TZjpDksPu+vzzHOxjGr+3fd/8dYl1faiyH0/k1h3kf7M9YdV7aZj3c1Wq+Ne4sJa3YSg5+XP4Xm84dwt5zbnau7nzP2SZv7ZhXPpCN2qfPNjjG7NqMnLbec2trLc9akqO+7HsvLUhjfVPTMymeYHpd44/z2N/Nq+977hAfdj62pz27kNANR83XXji+MrqnZBy71MxVpTV/JG2yfc6e8GuaSMuGqYiEuxZcnhx4i0RtydRhtQnqO9en6duHO3pvDOH35e+KH7SRBfdm4CALCp7ryp7LjvY/2mMiCkbJa0ddfSieIJ4yTWdVzBncXdlNeEQNz0vjI0r6+/qvp3n2o9p2r32JPufSQA/Padx53b7ES6gPnNgft1FACSVPe7henyHuh44eVzqnbGW944oVbXTQBd3eip2vWn7lk+g21dVrT2e6zU3K/300j34KB2ydJaVTcm6beE0pSTCXDId2WVXaRNlReOqW6DtUvuY6As0+1j7CvHJCO5n/S28/dYd6ot9EYNPD3U3f8GnfxD0PO4GPRV7aqKYzJVPmt+e6q7brQC97H11Qu6+4abgzYGndru2sT3eSDYxnRj9jE+uuY+JwMAlcHyKk1p+4TKWHe+JS338617fqja1qz5rXY/379MWwFCGwAW+GT/9c7bavi6koSvTnTHyLm6bn6lU3GfX3yksaXa1o2wq2rXrYzRXDv6+2w1Q1yu7QAAHm7cUW2r6el+t5tRB8F6vl9+MOnh0Zbu+5qlWVlucE81BlKm+cSKe3QAh45zDpMqpmnrt3SdpLZvNbrLPTLFvGRleLYeLj3RK6u19jcBHOyJ3gfgZ/b++2cAfPdxtlGZCBlxTT5BcpbNt0YcM+LIXSSVppywFEiZSBlxUsCHVi9aaGnKfCDuOKUpe0Jpyu74eIF+olnqk/yNL8cxRFQUfSEjbm3EdatWrS2Uphw2WJqy7KTAd4fnWynVhbKUmofG6OREc5SmTGqrnX8Om8I985hzVERFtYrF1C5Za1/e++9XAOgexwLgxRn8ZH+0NfOANDhb0VTab57137hGHGlwjbjyq0fChDZLUxbSwtaIsxZdoUSWVF5yXtvNfEbcwaeTiRZFyojjOIaIiqLfFDLiWCpv5doTIRDHNeJKbyBloDIQV0pSII7rwxXLPIG4uLqKafV7wlb+mKmPWJqSqKhW2mNYay2AmXmLxpgfNsZ8xhjzmSzNv60S5sstJHUfMAzEnWX3l2uahRNYpBEJx02VgbhSkQI5zIgrprCa78s1i9F3JiGCdP94YVINxH9/XmJG3IgZcXQypIy46RwTA0REy8A14oqpLQRnGIgrPzEQN2QgrowaUiBOCKrQ6syzXh8z4ojIxSoCca8aYy4DwN7/35z1Rmvth621T1lrn/L8fHBNLEvZWO3TCLR607ky4jjAIXehMPHJjLhyEQNxzIgrpKmUESeUFj2KWJbyGNlwALDdEjLixsyIo5MhZ8RxHENExSBnxDEwsGrtSX7NIZamLD+Wpjw9pEAcS1MWy1ylKaurDcRJwdvaiHNUREW1iqjVxwB8cO+/Pwjgl7T/UCAE4uI614c76+aZnJoKJQaJjsLSlOXHjLjykAKkmtKUG0IgrnfMQFyvKWXEMRBHJ4MZcURUZMyIK6aOEAxlRlz59dssTXlaNIb5YDkDccUyX0bciktTChlxLE1JVFwn2mMYY34OwCcBvNEYc80Y80MAfgzAtxpjngHwLXt/VqlMZ5SmpDPtqMmpzABxwOOE3LE0ZflJGVVhwBueIlrUGnFSIG67nZ80dLEtlKbcYGlKOiFcI46IiqzfzF9TmRG3eq2xtEZcPohD5SKVpmRGXDnJa8RVV7AnNMt8a8StuDRli6UpicrkRO/irbXfO+Ovvtn138qsh4/ffvO+197wyiv4AD6177WtoLXvfb2p+2TbKNJNym5vt1XtGq38IHkenjdzeb2ZWrX8UzfzyKxu3b1e3z3roN063kByy+RLht1vWgtwa3zvtxpd7+g2pPhKrO/+mwHAZKw8VRPd7zaM3X+3SkN3sTdePqA+j88+/7Bzm0qQz6Kdx+b67gT7Dazn/m68U8WzvfNiuyTRDcqqd9yfkciUh4gX646RYOjeRruP1R3dMyPTdv6p32CUP97GWR3x4N57166690GXgr5zGwBIMt1n+7o3P6tq5xn3861d0V03bk5118RXX+4CACYQfr9hhngk3KAechh3d/JP5W+3WrCJB29D99nunM9PgnSnI2Ttw/uYrOF+vpmBbkziT3THluIQQaqd19NdEuGPdJ8t3HIfE/pj3bYqY13f+sL2Ru61d2zlj/ktr3X3vc9vXFBt60+0eqp2TzWfU7W7Emw7t4ms7jq6kx4+Fpzl1XhN1e58MHBus53o9rH2Bt14K1RchDerugcMAqMbb4WZrr97Yu2Wc5vRA7rJzlGia3dr4n5NjFLd8b891GV991/R3RN5oUVmDDx7r1NvhREqdzwkvvwZtPdECHV9ctDTfZfeA+77+cQF9+MRAKoP6M6bTkWeS7iY5Afrjz+6hepDFoNElxn3/9x4q6pdqhzvvu3cy85tap6uj3yp11W1G95U9OXa4z8zuG3z16n67RTDW7P3w1POCWhoxpEAULujaxfrbjdgPffvZDDUPcj33FCeK/iaO/nx1MvVtbvv74fuA+w3dmeu/HOoy80dVbtpqrtuTxTttGOLS1XdffqLk014c8xVvYo13Ax3z8vWjP74KGlFnyMTNqXSlIdnxD3QcB+3Xht3ndsAQKwcy3Sb7pn1qXLeOrqpGzdpe1bNcLd+W7etxpauUx4+pDsmvYr7txKcseeZS72gmlQSTiodR2fL5IjSlFOuq0JKk3r+2GlMdRP5tBq1JH/dmDIjrpAWlRF3EmvE9cSMOJampJPRmApPTHMsQ0QFYT0P/Ya0ThzLU65SUyp7J6wlROXSbwilYHmulVJjnD9Hxy1mxBVJVvEQB4dPm686I24qZMTVmRFHVFjlDsRx8XoSHDU5xckr0pL6l7rQD1FxcY248lhYIE4IkEmBNBdSIG+dgTg6IfUwH4ib1DlRQ0TFIQUH1iYMDqyStEYQA3HlJ63JyKB3ObWEYPmoxXUciyY8ojxlXFt1IE7KiOMcFVFRlToQJy1ez4w4krKW9v09A3GkNBXW5KkJE6RUXPVIuG4wEFdI0tp9i1sj7niBuH6zgczsL7uwNglRSXQlU4gO0wjzEzXS9YiIaFV2hHXimKWzQtaiIQTipAlbKhcx+3TCNeLKqDXKlzFkRlzxREfMMa86Iy5sSmvEcY6KqKhKHYgTM+IYiDvzjs6I4zFCOtKxJWUqUHHJGXGclCgiOSPO/Xw7iUBc5nnipKOUfUd0XA0pI67GiRoiKg5mxBVLbZLAy/avQxbVfKTBaieM6fj6wviTGXHl1BwJGXFtju+K5siMuBUH4uK6j+zAmodBlMGLlQs2EtGJKncgTlgjbnpENhSdfixNSSdFXiOOgbgyqSXC08HMiCukk1wjrteevaD9vKRgHteJo5MgXWeOyv4nIlomZsQVi5QNx7KUpwPPtdODpSnLITxkzJ36BlllxdPqxohZcXVmxREVUskDcUKJMWY7nXlHTU6FVd6EkI6cEcf622XCjLjyWFQgTgqOHTcjDpDXmZOCfkTHJa4Rx4eKiKhAmBFXLPL6cMy0OQ3E0pTjKWCt8G4qsuY4H4hjacriOSwjbtXZcK+ZtoT7Zq4TR1RIpY5azVOaMrUm956j3Lne1e2Qpxv8jOP8jcs8atfdJ2FubujSk21Tt+6NGbtfmMa+bh+zbPe33soOz3QYVmoYju89aWQbyjV9FL+3V1F+trHuVDWZ+/EPANVOvl75UTpN9zYAsDPM30zMw7vpPkiNO7rf+vZeP/JKtJb7u8o4xe1eW2yX9nQDadN1P060v7V/R9cuU8wBK7pjAEBFGdswYf5ZEylwGtnqvvd2q+4TR081n3NuAwDf1tZNUgVG15f4cO+3rqfy8X2U3xi8VdXOe+PuPj700nbu7y7Xe3j3G5/PvZ4dcnBdCvu51x586x14VzMMIl3/k1gP4QUfOPCzv6l1A1uPzg7y9Sbu29sZ6IKG2v4nSxUnaqZ7ritp6cZNZolzTanyuiF0P3OZ3MmPYSr9/Ae+k3TQ33vvb689rtrWONUdIw/W8ufmPFqe+zihbnRP8z5SvbXUdhpZVXeQvL3x0oL3ZLbA6CZxYqsbt95KOqp2Hd99faTY6ibPRpkuW2E7cc/Efmm6odrWZ5OrqnZxT/f928BiUBPKNQ+m8CL5mpI2dOOYykD3u3nK+chUcX1LlMfWuuI4BoAr9V7utYeiO7nXkjXv7ntrynN7mugeAvnKnXOqdtuR+zzJA/WBaltXuz1Vu+cT9987flFfmSG2dYS+j1p6b3xSTVO07mSYVhcbxAmG7mNCo5xaiZVfiVWOtzRdeaqck2lW8gE3AGgLa8Rl6+bu+9++ft15W+NMdwyEke5+o+rpfvCHG/k+6iip8sd+ZnRR1e5SbfceMmvOPg+SmoducG+y4mJV1/8MUt09abuyewzFrXw/tBGOEVfkY3YN7tcbzdw6ALww3FS1q/nu16nxSPc92pbumpjWdMdkcMu9L4l0Q0JEG7p91M7d1XrubRJdSKS0Sp4RxzXiKG9SP3zwMWFGHClJGQjS2j1UXNIaY1LmFa1eJDxhWI3cb/Y6O/kbjcG6bpB+v/6aUBqoz6f/afEaUX4Ch2MZIiqSHWbEFYqUCREKGRNUQsZgwPPtVGgKpSmZEVc80SEZcUlB1t2USlMyI46omEodiKuLpSk5MXHWHTU5xTXiSGtSyw+MG6H8hBsVUy0R1hZlacpCkkp9BI6BuEqconmgPn5mFnOT218TSgP1dU+zEx2mKVxnpOsREdGqMDBQLLWhEIhrMxB3WrAUbPl5aYbGRFi7vMn70qKJGrODbYkyI2rRIpamJCqNYvQaSlJG3PSQpxXobDhqjTiuq0JaYkZcxIy4MpHXiON1o4jiav53cQ3Etfv5ki+jTg2Zf/zhz866MAnCjDg6AXXhOsOMOCIqEmbEFUt9KEzwt3ndOC2kdeLWeb6VSkNYx3HcDBZyj0KLddgacUlB1oiTMp4ZiCMqplL38uIacTVOqJ51se8j8WYf2lNOXpGSNPFZZ2nKUqlLpSkr7BOKaBGlKcWylEImmwYz4mhZpIy4MTPiiKhAmKFTLMyIO914vpVfYyxUO2BZykKKDln+SKrgsgphKz+fUR1znoqoiModiBPXiOOE6plnzKHlJ5kRR1pRUEFm9q9aWktS+KlyVWpaKi/LUD3wW2XGIKoUYwBN+8mlKd2e7OsIgbFFrA8HyGvEMSOOTkKTGXFEVHA7TWHd1DGviasirxHH68ZpsdNo5l5bm/BhsDJpcX240oiE9ddeU5TSlMyIIyqPYvQaSsyIo1nGhwTbmBFHasaIx1aDWXGlUBXWhwsrFeBAcJWKIaoJgbjQNSMuX5pysF5T79P9mBFHy1LnGnFEVHBihs6UgbhVkUtTcp7ktBgIpSmZEVcuTSkQ1+bYrojCQ9aIK0pGHNeIIyqP0ozGMhi8sL2x7zUzsLn3vRBv7HvfZOJ+MfPX8hfFuVjdZG6W6NpF5zLnNkFPF3uNau7bAgCsuwcoWo38xOk8ouTe4XxYRlzc8lGr3bsoXegOVdt7fP22c5tHm1uqbWmNU91gzjP5c+soN8OOalufia+q2o0fcD9OtE8e+P69439aC9Ce7u8jWmmIiZ//rtOq7rzxuu6DpnSkCzBP67p99Ifu36bJdH2dNsxZObCPrXH+s4aVSu59Gi2ju25c8HXff2rdz1EAmCqaaT9bYI6XKSqtETerNGUnkPuDC6N8/z7tBnffnymv2y+P1nCzme/zOjtTjOPZ56Kn2JxVnjd+V/e7pQP3viRpqzYFqxxbWOXvBk2fHOn6By/U7ePaufwx24rzv2VwOUa3ufveMNUN53/92ptU7bRaVffePPB1/chjHd14K/B02+vH7pm23UA3adrwlfcpCtp+vKncx9TqzrdnJpec2wxT3UMZSaabdIsVn+1O2FJtazTVjf/Ttq5PNrFBryUE4sYTzPrYJtb91mlDt49ZoOuTTeq+n0+/clG1rUyxLQB49yP5a8A3bedfeynYxDPD3X175/qLqm19w7lnVO2e2nhB1e527D7AaPu6uYSv6ur65Irnfkx+WTeMR6Wyu63RA/l+aLPeQ/3RgdhuMtb1CZqHfprXdH1k0tZ9KXFHOU+loZgjAeS5ldY4f5yO29V979UcyzVPF3w5H+jmxLQGqfu46QvDy6ptab+T2O4ey5P67PMgqlbuvg8APtfXzW01fN2MxyTdvW97S+VG7u+GvRqeHsrjIw/ux3KkHP8MI914K0zc72/SsTLEESvHCMr79Ew1dae8cCjp9hGwip+gMjpbD8aXOiNOXLyepSkJhx8HoTC5SzQvqRwYM+LKgevDlYuYEee4RlxLWCNuuKDSlDud/L+zPmBGHC2YteJapIc9cEREtGwz16xSPjhEx9McCZnUTV43TotBS8iIG3EMWiZiRhzLxxZS1Ch+aUqpf29wjTiiQipGr6EkTkyw7CDh8AkqrhFHxyE9ESX1RVQ8tUQIxAUMzBeVvEacWyCuLZSmHC6oNOWOsEbcep+TjrRY1TiFn+0/pqKKj9Qv9RCeiE6ZKAh2y33fJ8gyNKPlZXDSPY1RfszLsnenR7+dD8R1GIgrFekcnXCNuEI6NBAXFKM0pRSIqzMQR1RIpb6Ll7JQGGQh4PDjgE+R03FIGXFNYf0eKp5aLK0Rx/6gqCKpNKWwNuxhTjIQF9YCTA+sS1tJM7TG7A9ocZgNR0RlsdOckRVHSydmxHGS/9ToCxlxDMSVC9eIK49D14grSEbclBlxRKVRjF5DiZMTNMthxwGPEToO6fhhRlw5VMWMOPYHRZUE+SFKkGTw0vnXgjjJQBwA7HSESccBJx1pcRpTYTKVZdiJqID6dQbiiqIhBuJ47TgtWJqy/KRg+ZjB8kI6LCNOquCyCpNm/tiRrgNEtHqlDsQ1pgzEkeywjDhmTdJxSMdPQ1ivkopHXiOOpSkLyxiEws1NJZ6/POWJB+JmlackWpC6kAXKsS4RFZGUEbc+5jVxFZpSaUpO8p8aYiBuyEBcmTAjrjzC+mFrxBUlEMeMOKKyKM0MpGcyvOPS9Xt/TjJUk/2TcZkB3nT1VcCYu69NU/fJimGsm6RLs+XGNY1xX4em6rutr/MaD7o1bzZqY+c2l2s7qm3dijp3/7uzOfvpjzc8dAvNK/e+h6/qvKja3rsbzzm3ueDlJ4Xn4Zuj3yOZWl3D2Lofy7fSlmpb39g9r2r3xckV5za3w7ZqW69O7x1b/lr+XHistoXrl27lXn+x1lVtrx64ld8DgLGwdt084lg3eIyMop9UdpFmomvoT/e3q6ZCacqggoOH++3Q/Vj+N6M3O7cBgGGav5GexzPDi6p2Ueb+e79r/SXVtmKrO7a+cPOBu/89DQLUDqwL9/z187lMtCyT+zp/K3/N++T0UTx9bXcbnqe7tkVPrwEAbps1vAE39/2d9x9q2BrLv0/SmT+b7662e38AQHnVBvyB++/mRbprjb+lvHlVfrjwvPsYyKS6z1bb1rV7pLu978+PvbqVe0/a8va976FmT7Wt54bnVO1e7q+p2g1D9+vURNEGAG5sr6vapYnuenNxY+DcZhzpAqr9QVPVzq+4H//xzXxgZR7BRV3wZaPjft8AALd77uO7tK+c8AwU/TgAxIpjS3Gvdywt5fUm2v1s0rpV7WyErJk/9sxU1/+bGdf7o7Su685t85j7d1JTjOMBYGtbd5/y+9eu5l6rDvL78MmdR9FPd8/pcaI7/l/Xzl+T5tH2dffAGxX3PmGY6uZynhnoxtZ1332y++L6ULWt3mT3HBsKAZu18RSeJ/dP2UD5AE/FvQ+K27p+y4t157ZJlGPQ0L2dPa87jqW5tNYo/29N2sG+9/7B4EHnbb067hz9JkEr0GVPVYzymqigmVsEgIqnmwN9cbQJAEgx+1jZMq277wN25601Wr7u+++Fu336rSB//aiOkrt/f1Cz4r497VxyZUa/dBTN2RZ0dOdoPNH1kTZU3ssqxneJbroVnjIeq+kjAaju02t3ljzeXbHSZsRVw3wnENUr+4JwdHaF9dkdYnTIEy1ER5GeiKo5rltFq1FLhMwSlqYsNHGdOGGtv1m6QpnInlBOUqvXzI+Iu2PdTSKRpCaUPg5rHMcQUfEwI64YTJahJZQ1HjWYbXNa9Nv5c41rxJVLQ8halcoL0upNDykJL92rrsJIKk3JjDiiQipvIG4qZDYwwEJ7osMuljxO6BikCdCaUCaXiqcmrRFXYSCuyMJAON+iOQNx1mJ9KATi2rpsEsl2M/9vdUejhf37RHVhvHvYhAAR0ar0hUDc2pjBgWVrTSN4dv/T5aNaFalfjBJqdHyDVj7rrzOaAvZsZRWUGUtTlse0pGvENSdcI46oiEobiJMyUCI+IUx7okMy4hiwpeNgRlx5cY248hEDcXNmxLXHIYJ0fymMSbWCcIHra0kZcRvMiKMFqk+EfovjGCIqIDkjjtfEZWtPhPVxm4tbH5dWLw4qmBzIxPEzy4n3EmmOGIgri/DQjLhiBOLGQiCuPokZnCcqoPIG4iZCII4TE7TnsEmqw4J0REeRMhHqzIgrBak0pRTooeIQS1POmRHXHeQn/3qdxWXDAUBPyogbMyOOFkd60GPK8S4RFVC/mV8jjhlxy9ceMxB3FgxawvnG8pSlIWXETVoMxBVREvhIfHnqPA6KMbeY+R7CA0FBP7NiZQ0iWq3SBuLE0pSHpAzT2RLNOBYyzyCtlPawpwIQM+I4wCmFmpQRxzXiCu04GXFdqSzlAteHA4BtrhFHJ6wmZcQ12G8RUfH0G1wjrgjak3wwZthgIO606bcZiCuzBjPiSmVWecq4IGvEAXJ5ygazZIkKp7QRCWnim6V66DWzsiOjug8Ys+S9odNEKmvHQFw5iBlxXCOu0ELh5mbeNeKWkhHXyv97G8yIowWSMuKktUqJiFZNKk25xkDc0okZcQzEnTpSRlyHgbhysBbNUf5Bq3GL96VFNas8ZVFKUwJyecrGmIE4oqIpzZ28B4uvWX/+7p8f8bdy72m2o33v0cqsLj4ZGN1kfN3TlbWrG/d22m1pP5sP95rEo0x3o/A588jd/6535M+Z1H1cqvX3vab5HgHgVtpxbnMj2VBtq5fqJo8jqzvFM+serNysDFXb2vR17d7ZfMG5za3qmmpbn/eu3P3vxlp+MLOZjvBgs5d7/dWh+zECANPY/XdLEl2/FY11A35/4D7ozOq6GuVepAueV8b72zXH+XM9tkHufV+6fdF5Wy/2def2Vq+tapf0dU9Mrj0wcG4zTnTbSjPdMTkZ3dvexBOOz8H+9wBAFuePx9bN/HVrq97GpH/fxEWiO7a8xu6xvLWR75vXp2OkDflYD3ru34l3S3dNTJq6883Pz98d6eA5NDflsgXTC9nRb5IoDkl/qPtsiTLmu1bdP2m9HuUnsW1r//uebF1Tbeuxxi1Vuz9qXDn6TYJboXt/5ykPkhd6uj45C3S/t2YvjdF9tlZLN9E6Dd2v98FFXRCl1VB0JAB8T3du+757u+r55WYvVyqpc5t6oLv/urOTz9aeRzrR3TeY+u5n63fz44X1cHL37/e1aSofYrutuyYOH3X//gHgTes7zm02a7pj61lln3BwvHUpy4/1JmsB1u7rO56+6T7WBYA/fFHX/0vjtHk88tBt5zZrNV0f+ZXb51TtphP3cXIWKSfv43vXqO1K/ppauWYwOJ9/3ZvqxuS1O+7tlNNG8HSnKLxQ99mM4nKTPK7byYP3UvVxBC/bf76HVR8D0wDu+/52onyw9SjDUNdH1nzdD9eu6a73mvkm7ZhwELt/j8D+739cq+Ic8g9b9rzGvvdVlOOYKNNdf5uVe3NTYTP/b2yGY/Qq+THBTuReJSZOdf1WraI7tgZj92PZ85Q3l5lyTkDZt1Z33NtlgfLefqq8t1He3mv68kQ3bC2t0mbEVab5Xzfm2l+0Z9axwPXh6LiksqdVYc1KKp6qmBFXmudRzqTjlabMT4Rtt09+jbiNETPiaHHEjDhWgCCiAtppCaUpR8yIW7aWkAEx4hpxp460JiNLwZZDk2UpS2fW+szSeuarMmnmH7hqMiOOqHBKG4gLJvlAXFIv7cehBYsacsCNwVo6LmkCtCo8GEDFI5WmnHKNuEKT1vCbNxC3IQTipFKSx7HdEtaIG3GNOFqcmvCgB9eII6Ii6gulKTtjlspbtpZQmpKBuNNHOt/WJgzElUFLCMSNWjxHi2zSkAOlRSpNKa4RJ1QEIqLVKm3kqjLJp/zGzeJ0grRaswJu8YwAHdG8pKzKKteIK4Vakh+IRlwjrtDkjLj5biikQNyiM+L6jTrSA+uOdsIQgRD0JdKQri/M7ieiImJGXDG0R8IacQzEnTpck7G8mkMhI67FjLgim8xcI67YGXFcI46oeEobiAuEDBRmxNFr4hmp48yIo+OKmBFXWlIAh6Upiy0Ubm5q0ZylKYXMtEUH4qzniRMh62NmxdFi1IRA3KwF44mIVmnYyAd7OtMQfspx8jIxI+5skEpTrjEDtRSkcoEMxBXbdGYgrjjzi2MhI67OjDiiwilt5ErKiEsYZKE9s0pTSkEUIhfSMSRNlFLxSKUpGYgrNql06LFKU7YXvxJwTyhPucHylLQgzIgjorLIPE8MDnSEwBCdnLYYiOMk/2nTb7A0ZVk1h/lzlIG4YpsViIuD4ozJ5Yw4BuKIiqa8gTgpI65R2o9DCzarBCUz4ui45Iw4BuLKQCpNyTXiik0uTakPxC06Iw4Atpv5f3NjNFr4duhsktaIm3KNOCIqKDlLh8GBZZIy4oZcf+rUkc41loItB2mNuHGbgbgim50RV5yHelmakqgcitNrHCGDh9/afuLun1+/fTP3nqftA/veAwCdivsTeInVBfQavu5pg05FV0Jgs+I+0VfzlvtERKb4LlOYo98kGKb3bjCiqrzdSTXY9z4A+Pidt6i2tz11n9DdCfMD5nncvLmuamcj3bHst9wDS49c2lJt61xdN2FdV5xvNU9XGuf+PmFYzd/IVqcpoizfnbaquoHPdr/r3Ma+qju2gonufAuGunYqVtfs4M9dD/PHdZIEqByI14yf6Tpva9jIZ2nPwwa6dt5Ed24Pn3PvS56+qDu26g3d8Z9N7p1LU5O/Ka1Osn3vAYDqzfz51+3nJyOGozVUb9y7SfES3XFsvXsH5U4tnxF37vYEwcX8v+1F7tuzypGar0xAqPbc99Eoz9FgoGsYr+l+N3/q3q62rTxGlF3kNN1/E12d5K9bg2o99z6NK8G2qt35bl/VbmrdJ5liq3uA6uX1rqrdq+Gaqt2Ves+5jae8uI2z0ztZlylPnPbl5WVc+UZ33dbYSfIZL/P4TPVhVbuXbm6q2nXa9663w04NuL3/7x/0trHT3f9ZtL91P9T1CWaqa9etugc23tJ+WbWtt3Wuq9odPE4eTvN9+xuu3gQevDd2fHZ0QbUt7bXn5qitarc1cr/fDnzd/d5aUzcnk6buY3KvrpuTmdy+933sNPLfzdpkKg5ANOMfAEhr7tcpqy0+oR5L6j5bsvhn82aq+vvvQaUSotN2kHvfRs29woZV9q1xpusj+5HuPlFzDYhS3U1RvaKcp63eG1ukLXl/g1a6731VT/eAdt3XtWvdN9/tr+VPonPRGBfqQ9W/vWobHffjv6bs/3dqumOkF+vuGyLFvaz2flvTjwOAp4zhepp5QuVnK6vSppBVhQnVkGUHaU9cm1WakhlxdDzMiCsvKSMuYmnKQpMy4urRfAPljXE+yN9rLr40pTQR0p2wNCUthlyakv0WERXToC2Uphxx3aplqg+FChAtZlKfNtIaxcw+LYfmkBlxZTOrGkVcoIw4qZ+vjViakqhoShuIkxevL04nSKtlfQ+REIyLeYzQMYUNoVSeUDqMikcKxIUVTkwUWahcIy5IErTD/RkSmTEY1HVPbR6mJ5Sm7ApBQCKN+lSYUOVYhogKatCSAnFcI26Z6iOhpHGb493Tpi8F4iYMepeBVC6Qa8QVWzizNGVxHvSfCqUp61wjjqhwGIijU0taD44ZcXRcSeAh8/anW1eSDH6yvFJFpFNLhesGA3GFJq4RJwRUD1oXMtJ26g1k3uKHPduNfJZdd8yMOFoMKSOO410iKqq+EIhbGzJLZ5lqQkZc2OZ147TpN7geY1mJGXEMxBXarIfg4kIF4oRKMmM+ME5UNKUNxImlemocYNI9UtAtErKZiJwYg1A4tgKWpyy8aiIF4tgnFJn0+8yTEScFwqTMtUWQ/t2NCTPiaDHqYiCODxAQUTHJpSmZEbdMLE15NgyEQNz6ZAov48OhRdccsTRl2UilKaOqDxjlotAnQOrnGyxNSVQ4pQ3EMSOOjiIF3aQsOSJXUtC/JqxbScVSZ2nK0hEz4uYIxC1rfbhZ/y4z4mhRmBFHRGXCjLjVMqlFbZLmXo9avG6cNqnvY1Cv5V5vszxl4TEjrnymwkNwRSpLCcwoTclAHJ1hxpj3GmOeNsY8a4z50Kr35zWlHZGJgbgZC2jS2RQJE1XSa0SuwkYF2N7/2jf+4pcx7O6ffLg91U3894b5mv9HsX1d/+fFuqe4/GU+3Gx1zcyBdmvTfHAk8tknFJm0Rtxjr9zCB/7tJ/e9VhnsvxF64ys3cu2WmRH3+puv4Ht/73dyrxtNvF75yJRVtqssMYboK+eKwlcXux+H0X4fym4LD9h7H87LLIIDZY9T3yAJSvscHRGdclJG3Du+dA1/7ld/f99r2j5yOswHHuZhlOPdR5+/6dzmcn1HtS0PukymSXZvAj8I80G4aasC6xUna4MWp99ooDPdf1P2A//uk+i19o9N/bFu3GAUh6R2/KmlHUtmmlvAF3Ube7C7v0+4dKOfew8z4opNegguDooViAuFQNz67TG+8aNP514fxrpr6TLtRO5zYhVPeR2NdHNpk75u/XlvqugotQMnJU+ZZ+Ap5gm9/NAl51MPP4E/3rw4979pjPEB/ASAbwVwDcCnjTEfs9Z+wX0PF6s0M5BZZvDp5x65+2c7yA8mP3PrYTwXXNj/omLMaXd0F0Fbm+PoERsucWDs685eM9ZdZEzi/tmaj+QHJvNYa+wfGG35LVw9EC15OrqIT996eN9rt3pt1fbigeLipfz+ESpHtJ5ue+nYvWt4/kuXVdt6XtUKsBXFZ1N+/83N/TOxO34DFzHc99qf+fDnVP82rdZUCPQEI/d+K0l152iyqRss2kDZl2huqGPdZxsPdYHo+yfLIuR/nzdffwU/+rO/6Pzvbm00EZ3bf52u3tZd2+6b88LWev5zPrp1G3/rl39B9W/TGff/Hv7X01qA66Puvtf+dfYW1aa8g08rzOlcTVd6ta14gqOmvAsM5rmjE1yq6cagGr5mhhNARznr6Cnu4DPNjRSAVDkTq/1OAqO8B1PQfrbYul9vtJ/rQmN49JsE/TXdxNz29r17qVe8tdzfv/vzL+Ldn39R9W/T8YWtSq6//6q1a6p/S9snvNJcV7Ubpe7zMp3KcjPCel33yWLtJPgLtY19fx6tB7mHQ//GL/266t+m1Ro0akiy/deXKw33MckDjcGidmkuYaqbUq4oxmmZ8vqbKNu1/HuZi/W1/Hg0rXm4UNt/vY2V24pUkWHg1vTe9Teu5Le9th3iA3/n91T/NlGRfOg7vxdfuTx/IA7AewA8a619DgCMMT8P4H0AVh6IK+0jtfVIqH1eZUYc3SMtqCqllBO5mtR4HJ0Woc/fssikjDitg08HL+zfPaFMOyLJhOMYIiqwftM9KEEna9rmdeO0GgqlYKmcWJqy2EJp2ZuClaacCBlxRGfYgwBeuu/P1/ZeW7nSBuIaUb6uMifH6X7XrmwIr3WXvyN06ly/2F31LtAC3G51EPvFGkDTftc38/241vMXzy/s37rfVruNQa345T3odHj5ki6rgIhoGV64uLnqXaADth/kA0On1UuXFzdOptUZNwP0uwyqFtmtK20k/v6M4JsP5TPAVymsV9Db4MMwdKZUjDGfue9/P7zqHZpHaQNxzTCfETdhRhzd55ff+3aM73ty/LNvv4pnHnNKZSUS/fy3PYVISP2ncvmnX/31gOGaGUV2fXMDH3+bruze/W5srOPX3vm2BexRXlyp4J/+ya87kX+b6KCPfte7Vr0LREQzfeXKBfzm255Y9W7QntQ3+N33P7bq3aAT8gvvfSem1dKsNkMz/Op/+iTSCh8OLbLReh2f/PbH7/458Q0+8WfeuMI9EhiDX/mzJ3O/S1RQibX2qfv+9+H7/u46gKv3/fmhvddWrpxXbWvxf/7pr0cjilEPIzSiGM0wRhiU8+PQyfjy6y/hB37yB/Et/+5L6Hfq+Nh7385Jd1qI33vbo/gLf/uH8C2f+iK6w8nM96WJcv0pxZpc/lR3bGsX1FYu46LbVqr7bLOWVokqFfzew6/HJ17/1mPsFS3LX/lL34/v/vRn8eRL1+BZeY2jw47jl85t4hff805srenWA53Hj7/3O/D5Bx/Cu59/HkGqXNl4Bu25ZrVDIsWSRJ5iPVgAUCwZBgBIlQmImu/SnyrXWm3ovpPq5bH4+rhZxe+8+zF87h0Pi39PRFQIxuAv/7UP4Ht++3N484svz7xue77u4pZGyoubcmndza77enutIF+5Zx7aNQErMy5uk06AL/zHl3Ht7cxSPK3+8E0P4oM//kF8y7//Erp9efwAANORcuCkOG/U923Kc3SJS4Qibeh28nxXXustCXx88e2X8TvfxGB5GXzkf/46fPGpy9h8dYQ/+por+OM3n0y1leP46Pe/Cy8+uoknP3cDQTT7ntRTnKba9QCtVc7BKjqFg+sszivLdPsYa+f7pu7fpfprVN6nK5fphhefzJz7C5sXXJt8GsATxphHsRuAez+Av7Do/dIwdsbguGi8WtU+8pH/1b2h4hiwO7r6zLamHAVozygNX/d7m7Gug9Gc9M1H3BelBYC1hm5h5ls93eRsPFAMaJXfP0JltMRTbk+xOaPdRyVbUXw25fff3Jx9Y3OYcKrrS9KBe3Zv9ZbuHLXKRGKjuTArD0c/Wu4kf6Ko4JPUdR8u2dSNcEykPN8U8162oxyFhcrrhmLwpuoPAFRvKwfP2mUcFLupHQRrJwu80P37r0x052jtjqoZQuWcoqbfatzWfY+TC7rvpPsNrzi3udQcqLblKWe9ztVGqnZtRadcU54Agacbk6fKp1N8RZRXO+mu5Sk6oExzI4Xlfo/Acr9L7WeLrfv1Jsx0k17PjpwnKwAAX9k+p2q3ve1+L1Wt56vbzCPcVpZvU06yvfXNLx39pgMebPZU29L0kQDQ8N2/y6anCxZq+4RXQl1Z5VHqPuDqVHRzAlq92L0U3DDWBcZe2NGVorxzvatqp7lv8JRzAtpu3FeMWwGoPlv0gG5M8s43/rGq3ZWG+7yY9hzV0gZnKopxWqa8/ibKdppxU6zcVqS83kep7l624rmfANuhrsyxNjimuU8Zx7rJrUgZUBtNdH15dMv9u7TKuUxvovv+K2NdXxL0FXM5yqmtL/3t/25srW3N+ntjzHcA+PsAfAAfsdb+qG5Li8UUMiIiIiIiIiIiIiIiIio1a+2vAvjVVe/HQaUKxGVD9+i2JmtA+1RNpkzB9JWR5lSRgZG1dI8a2aruCVXru3+20UD3pGOaKp9QHSlTGzRlF7QZQWPdZ0tbyppmiidktJ9N+2SHhqnqjv8w1D1ZoykxCQCe5vdWPkWi/fY1WWpZVbe1uK1rl1WWl0lnlfuozWzTZC0BQKbJ3FMex9oaM7ah6H8S5ROSLW0dHF0zDc11FNA/Wabh6RIbYFJlJmNP951EXfc24wd020qaus9240X3jJQbVpfFYurKx893dNdETZWEbF2ZNVxRjluVfYkm20Y7JtH2P5VA8/S58loT6Z4s9oLl1b1OtZnl6muie5Paui6zR1sGKlPeS2n6hHCkm4bQZttoM+e/csu99NiXE92a5PGO7sn6ypp7dttDF7Z129LcI0KfpeArxpLafkubJT4MtWUS3MXK7BevrRuoZX33381XVkkIBsrxrnJGM1Xcl2orAD17R1fC8Ctwb6ctlecpKylp5+CM4nyLlaWJ/YpuvBUoxk3hVDlvpL1uK8ckVjFOM8oKcEFNN5aPFPO0Zqg8/pXndlbXXRM9xVyaUf7W2r5VvYSEYjrf1yXpl9Zya8kRERERERERERERERERnREMxBERERERERERERERERGdAAbiiIiIiIiIiIiIiIiIiE4AA3FEREREREREREREREREJ4CBOCIiIiIiIiIiIiIiIqITUFn1DszNAkHPd24W9I1zGy9xbgIAyAL3bQFAfcuq2iV19zhq0lxu7NWL3duMrur2cRLr2pmp+3EFALWb7u1MptoUKmNdu2hdd0zCuncNXqTclO7rBxQfLa0pN6Y8bXzF8Q8AwXB5/RZ03Q9q2+4N07puW9bTHcdW+buZVNNKtzFNHwno+xKr+CqzQHfeJG3dweVFiuNf+T3Wb+v2UXtsJS33z6b5zQAARtdQc73xp7rvMZjo2k3Oaa9t7k20fWv7RV27HcV1ytZ032Plhu42QNdHAv7U/XdLR4FqW16qO0a0n03VB1ndZ9OOmzTtUuWxFSj6cQBIm7rtGcV52ujp9jFpqZqprhvei7pjZHpeN0iwga5dMHL/cBXFWBcAgqGqGabndMdWiKZ7I2X/07ipG1ykTfeT+8ZzDdW2vEQ7KFFS/GxZVdmPKPt/3bZ036N2vFtVzvpVd9zbVJRjQi9WtlOO06K2+28wjXUX4Mm4q2rnT93bJLpTG1lTe3Opa+aF7t9/pjyOU1+3k5Gimfbc9ifKPkH5/Wvm0hLFtQYAkrSqatfYcr8masfItW1dOz/UXbf9UNFIefmtDnQXt1pP17kOHnL/vcPukscWK8aMOCIiIiIiIiIiIiIiIqITwEAcERERERERERERERER0QlgII6IiIiIiIiIiIiIiIjoBDAQR0RERERERERERERERHQCGIgjIiIiIiIiIiIiIiIiOgErC8QZY95rjHnaGPOsMeZDq9oPIiIiIiIiIiIiIiIiopNQWcVGjTE+gJ8A8K0ArgH4tDHmY9baLxzWLlPsrfXd21S3rHujY/BiXbv2dubcZnRJF3v1Et134kXubbJAt4/Wq6rapY3lfbb6Hd22Mt+o2rV3VM3gh8s7B9K6rl2mOLezQPc9RuuqZghGunbVHffvPxjrfrNqP1W10/QJ1e1Qta24ozu3w03dJW6y6d4HBUPdsVUZ6X63ivIcDdfdP5vR7uNY951oromNLffrIQBUprp2RtcMk3PuHVcW6LZVv6PbSau4BGv7Vj/SHVvtG7p+azpWHP/K3xq6rwTBQPEDDHTbqm3r2nmJrp2mv4s7ui9ScxwD+jG5Sd0/m6+7JKrubQCojsm0qjyQte4o+5KJ+/efNFWbUp/blbF7G+39VzDUnQBpVdeutu2+n83byn5cMY4BgPqWqhkGjyiu21XlmFzZlwc3dO00koayobJP1vTlwVC3rbCrO7mN4lCuKPosADj/B7qby/EV3Q+XKsZ3ned1+5g1dPdtWUXZ39Xd29V7ugvwWDkHF7fd2wTKcat3Rzu4WJ6kpexbe8r5RcUhaZRjZC3tmFBzf9m8oby3V45lYN3bWU+3j4FyvqM20J1wvmIOon5rqtrWsnVecm+T1nXzfWW1qoy49wB41lr7nLU2AvDzAN63on0hIiIiIiIiIiIiIiIiWrhVBeIeBHB/nPTa3mtEREREREREREREREREp8JKSlPOyxjzwwB+GADgFz9VmoiIiIiIiIiIiIiIiOg1q8qIuw7g6n1/fmjvtX2stR+21j5lrX3KeKvaVSIiIiIiIiIiIiIiIiJ3q4pufRrAE8aYR40xVQDvB/CxFe0LERERERERERERERER0cKtpDSltTYxxvxXAH4dgA/gI9baP1rFvhARERERERERERERERGdBGOtXfU+zMUYkwGYzPjrCoBkibtDRKcP+xEiOi72I0S0COxLiOi42I8Q0SKwLyGi4zqJfqRhrS3dOmalCcQdxhjzGWvtU6veDyIqL/YjRHRc7EeIaBHYlxDRcbEfIaJFYF9CRMfFfuSe0kUOiYiIiIiIiIiIiIiIiMqAgTgiIiIiIiIiIiIiIiKiE3BaAnEfXvUOEFHpsR8houNiP0JEi8C+hIiOi/0IES0C+xIiOi72I3tOxRpxREREREREREREREREREVzWjLiiIiIiIiIiIiIiIiIiAql1IE4Y8x7jTFPG2OeNcZ8aNX7Q0TFZ4y5aoz5hDHmC8aYPzLG/NW91zeNMR83xjyz9/8bq95XIio+Y4xvjPmcMeZX9v78qDHmU3tjk//LGFNd9T4SUXEZY7rGmI8aY75kjPmiMeZPcExCRK6MMf/t3r3N540xP2eMqXNMQkSHMcZ8xBhz0xjz+fteE8cgZtf/sdef/IEx5l2r23MiKpIZfcnf3bu/+QNjzL80xnTv+7sf2etLnjbGfNtKdnpFShuIM8b4AH4CwLcDeAuA7zXGvGW1e0VEJZAA+O+ttW8B8LUA/spe3/EhAL9hrX0CwG/s/ZmI6Ch/FcAX7/vz3wHwv1lrXw9gG8APrWSviKgs/ncA/8pa+yYA78Buf8IxCRHNzRjzIID/BsBT1tonAfgA3g+OSYjocD8N4L0HXps1Bvl2AE/s/e+HAfzkkvaRiIrvp5HvSz4O4Elr7dsBfBnAjwDA3vzr+wG8da/NP9yL8ZwJpQ3EAXgPgGettc9ZayMAPw/gfSveJyIqOGvty9baz+799wC7E14PYrf/+Jm9t/0MgO9eyQ4SUWkYYx4C8KcB/NTenw2APwXgo3tvYV9CRDMZY9YBfAOAfwQA1trIWtsDxyRE5K4CoGGMqQBoAngZHJMQ0SGstb8J4M6Bl2eNQd4H4J/YXb8LoGuMubyUHSWiQpP6Emvtv7bWJnt//F0AD+399/sA/Ly1NrTWPg/gWezGeM6EMgfiHgTw0n1/vrb3GhHRXIwxrwPwTgCfAnDJWvvy3l+9AuDSqvaLiErj7wP4HwBke38+B6B334CTYxMiOsyjAG4B+Md7JW5/yhjTAsckROTAWnsdwI8DeBG7AbgdAL8PjkmIyN2sMQjnYIlI6y8B+LW9/z7TfUmZA3FERGrGmDaAXwDw16y1/fv/zlprAdiV7BgRlYIx5jsB3LTW/v6q94WISqsC4F0AftJa+04AIxwoQ8kxCREdZW8Np/dhN7h/BUAL+RJRREROOAYhouMyxvxN7C4R9LOr3pciKHMg7jqAq/f9+aG914iIDmWMCbAbhPtZa+2/2Hv51ddKK+z9/81V7R8RlcLXAfguY8wfY7c89p/C7lpP3b2yUADHJkR0uGsArllrP7X3549iNzDHMQkRufgWAM9ba29Za2MA/wK74xSOSYjI1awxCOdgiciJMeYHAXwngO/bC+wDZ7wvKXMg7tMAnjDGPGqMqWJ3ob+PrXifiKjg9tZw+kcAvmit/Xv3/dXHAHxw778/COCXlr1vRFQe1tofsdY+ZK19HXbHIP/GWvt9AD4B4M/uvY19CRHNZK19BcBLxpg37r30zQC+AI5JiMjNiwC+1hjT3LvXea0v4ZiEiFzNGoN8DMAPmF1fC2DnvhKWRET7GGPei91lPL7LWju+768+BuD9xpiaMeZRAE8A+L1V7OMqmHsByfIxxnwHdtdn8QF8xFr7o6vdIyIqOmPMfwTgtwD8Ie6t6/Q/YXeduH8O4GEALwD489bagwsXExHlGGO+CcBft9Z+pzHmMexmyG0C+ByAD1hrwxXuHhEVmDHmqwD8FIAqgOcA/EXsPizJMQkRzc0Y87cA/GfYLf/0OQD/OXbXXOGYhIhExpifA/BNAM4DeBXA/wLgFyGMQfaC/P8Au2VvxwD+orX2MyvYbSIqmBl9yY8AqAHY2nvb71pr/4u99/9N7K4bl2B3uaBfO/hvnlalDsQRERERERERERERERERFVWZS1MSERERERERERERERERFRYDcUREREREREREREREREQngIE4IiIiIiIiIiIiIiIiohPAQBwRERERERERERERERHRCWAgjoiIiIiIiIiIiIiIiOgEMBBHRERERES0IsaYrjHmv9z77yvGmI+uep+IiIiIiIhocYy1dtX7QEREREREdCYZY14H4FestU+uel+IiIiIiIho8Sqr3gEiIiIiIqIz7McAPG6M+Q8AngHwZmvtk8aYHwTw3QBaAJ4A8OMAqgC+H0AI4DustXeMMY8D+AkAFwCMAfxla+2Xlv0hiIiIiIiISMbSlERERERERKvzIQBfsdZ+FYC/ceDvngTwPQDeDeBHAYytte8E8EkAP7D3ng8D+K+ttV8N4K8D+IfL2GkiIiIiIiKaDzPiiIiIiIiIiukT1toBgIExZgfAL++9/ocA3m6MaQP4kwD+b2PMa21qy99NIiIiIiIimoWBOCIiIiIiomIK7/vv7L4/Z9i9l/MA9Pay6YiIiIiIiKiAWJqSiIiIiIhodQYAOpqG1to+gOeNMX8OAMyudyxy54iIiIiIiOh4GIgjIiIiIiJaEWvtFoB/b4z5PIC/q/gnvg/ADxlj/j8AfwTgfYvcPyIiIiIiIjoeY61d9T4QERERERERERERERERnTrMiCMiIiIiIiIiIiIiIiI6AQzEEREREREREREREREREZ0ABuKIiIiIiIiIiIiIiIiITgADcUREREREREREREREREQngIE4IiIiIiIiIiIiIiIiohPAQBwRERERERERERERERHRCWAgjoiIiIiIiIiIiIiIiOgEMBBHREREREREREREREREdAL+f+itReBxkDxdAAAAAElFTkSuQmCC", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "execution_count": 31 - } - ], - "metadata": {} - }, - { - "cell_type": "code", - "execution_count": null, - "source": [], - "outputs": [], - "metadata": {} - } - ], - "metadata": { - "orig_nbformat": 4, - "language_info": { - "name": "python", - "version": "3.9.7", - "mimetype": "text/x-python", - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "pygments_lexer": "ipython3", - "nbconvert_exporter": "python", - "file_extension": ".py" - }, - "kernelspec": { - "name": "python3", - "display_name": "Python 3.9.1 64-bit ('miniconda3': virtualenv)" - }, - "interpreter": { - "hash": "822ce188d9bce5372c4adbb11364eeb49293228c2224eb55307f4664778e7f56" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/TTS/notebooks/dataset_analysis/CheckSpectrograms.ipynb b/TTS/notebooks/dataset_analysis/CheckSpectrograms.ipynb deleted file mode 100644 index 47e5c4cf4dab2db8511b694c39bce113618d65da..0000000000000000000000000000000000000000 --- a/TTS/notebooks/dataset_analysis/CheckSpectrograms.ipynb +++ /dev/null @@ -1,319 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "%matplotlib inline\n", - "\n", - "from TTS.utils.audio import AudioProcessor\n", - "from TTS.tts.utils.visual import plot_spectrogram\n", - "from TTS.config import load_config\n", - "\n", - "import IPython.display as ipd\n", - "import glob" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "from TTS.config.shared_configs import BaseAudioConfig\n", - "CONFIG = BaseAudioConfig()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## ✍️ Set these values " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "data_path = \"/root/wav48_silence_trimmed/\"\n", - "file_ext = \".flac\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read audio files" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "file_paths = glob.glob(data_path + f\"/**/*{file_ext}\", recursive=True)\n", - "\n", - "# Change this to the index of the desired file listed below\n", - "sample_file_index = 10\n", - "\n", - "SAMPLE_FILE_PATH = file_paths[sample_file_index]\n", - "\n", - "print(\"File list, by index:\")\n", - "dict(enumerate(file_paths))" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "Collapsed": "false" - }, - "source": [ - "## ✍️ Set Audio Processor\n", - "Play with the AP parameters until you find a good fit with the synthesis speech below.\n", - "\n", - "The default values are loaded from your config.json file, so you only need to\n", - "uncomment and modify values below that you'd like to tune." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "tune_params={\n", - " 'num_mels': 80, # In general, you don't need to change this. \n", - " 'fft_size': 2400, # In general, you don't need to change this.\n", - " 'frame_length_ms': 50, \n", - " 'frame_shift_ms': 12.5,\n", - " 'sample_rate': 48000, # This must match the sample rate of the dataset.\n", - " 'hop_length': None, # In general, you don't need to change this.\n", - " 'win_length': 1024, # In general, you don't need to change this.\n", - " 'preemphasis': 0.98, # In general, 0 gives better voice recovery but makes training harder. If your model does not train, try 0.97 - 0.99.\n", - " 'min_level_db': -100,\n", - " 'ref_level_db': 0, # The base DB; increase until all background noise is removed in the spectrogram, then lower until you hear better speech below.\n", - " 'power': 1.5, # Change this value and listen to the synthesized voice. 1.2 - 1.5 are resonable values.\n", - " 'griffin_lim_iters': 60, # Quality does not improve for values > 60\n", - " 'mel_fmin': 0.0, # Adjust this and check mel-spectrogram-based voice synthesis below.\n", - " 'mel_fmax': 8000.0, # Adjust this and check mel-spectrogram-based voice synthesis below.\n", - " 'do_trim_silence': True # If you dataset has some silience at the beginning or end, this trims it. Check the AP.load_wav() below,if it causes any difference for the loaded audio file.\n", - "}\n", - "\n", - "# These options have to be forced off in order to avoid errors about the \n", - "# pre-calculated not matching the options being tuned.\n", - "reset={\n", - " 'signal_norm': True, # check this if you want to test normalization parameters.\n", - " 'stats_path': None,\n", - " 'symmetric_norm': False,\n", - " 'max_norm': 1,\n", - " 'clip_norm': True,\n", - "}\n", - "\n", - "# Override select parts of loaded config with parameters above\n", - "tuned_config = CONFIG.copy()\n", - "tuned_config.update(reset)\n", - "tuned_config.update(tune_params)\n", - "\n", - "AP = AudioProcessor(**tuned_config);" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "Collapsed": "false" - }, - "source": [ - "### Check audio loading " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "wav = AP.load_wav(SAMPLE_FILE_PATH)\n", - "ipd.Audio(data=wav, rate=AP.sample_rate) " - ] - }, - { - "cell_type": "markdown", - "metadata": { - "Collapsed": "false" - }, - "source": [ - "### Generate Mel-Spectrogram and Re-synthesis with GL" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "AP.power = 1.5" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "mel = AP.melspectrogram(wav)\n", - "print(\"Max:\", mel.max())\n", - "print(\"Min:\", mel.min())\n", - "print(\"Mean:\", mel.mean())\n", - "plot_spectrogram(mel.T, AP, output_fig=True)\n", - "\n", - "wav_gen = AP.inv_melspectrogram(mel)\n", - "ipd.Audio(wav_gen, rate=AP.sample_rate)" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "Collapsed": "false" - }, - "source": [ - "### Generate Linear-Spectrogram and Re-synthesis with GL" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "spec = AP.spectrogram(wav)\n", - "print(\"Max:\", spec.max())\n", - "print(\"Min:\", spec.min())\n", - "print(\"Mean:\", spec.mean())\n", - "plot_spectrogram(spec.T, AP, output_fig=True)\n", - "\n", - "wav_gen = AP.inv_spectrogram(spec)\n", - "ipd.Audio(wav_gen, rate=AP.sample_rate)" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "Collapsed": "false" - }, - "source": [ - "### Compare values for a certain parameter\n", - "\n", - "Optimize your parameters by comparing different values per parameter at a time." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "from librosa import display\n", - "from matplotlib import pylab as plt\n", - "import IPython\n", - "plt.rcParams['figure.figsize'] = (20.0, 16.0)\n", - "\n", - "def compare_values(attribute, values):\n", - " \"\"\"\n", - " attributes (str): the names of the attribute you like to test.\n", - " values (list): list of values to compare.\n", - " \"\"\"\n", - " file = SAMPLE_FILE_PATH\n", - " wavs = []\n", - " for idx, val in enumerate(values):\n", - " set_val_cmd = \"AP.{}={}\".format(attribute, val)\n", - " exec(set_val_cmd)\n", - " wav = AP.load_wav(file)\n", - " spec = AP.spectrogram(wav)\n", - " spec_norm = AP.denormalize(spec.T)\n", - " plt.subplot(len(values), 2, 2*idx + 1)\n", - " plt.imshow(spec_norm.T, aspect=\"auto\", origin=\"lower\")\n", - " # plt.colorbar()\n", - " plt.tight_layout()\n", - " wav_gen = AP.inv_spectrogram(spec)\n", - " wavs.append(wav_gen)\n", - " plt.subplot(len(values), 2, 2*idx + 2)\n", - " display.waveplot(wav, alpha=0.5)\n", - " display.waveplot(wav_gen, alpha=0.25)\n", - " plt.title(\"{}={}\".format(attribute, val))\n", - " plt.tight_layout()\n", - " \n", - " wav = AP.load_wav(file)\n", - " print(\" > Ground-truth\")\n", - " IPython.display.display(IPython.display.Audio(wav, rate=AP.sample_rate))\n", - " \n", - " for idx, wav_gen in enumerate(wavs):\n", - " val = values[idx]\n", - " print(\" > {} = {}\".format(attribute, val))\n", - " IPython.display.display(IPython.display.Audio(wav_gen, rate=AP.sample_rate))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "compare_values(\"preemphasis\", [0, 0.5, 0.97, 0.98, 0.99])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "compare_values(\"ref_level_db\", [2, 5, 10, 15, 20, 25, 30, 35, 40, 1000])" - ] - } - ], - "metadata": { - "interpreter": { - "hash": "27648abe09795c3a768a281b31f7524fcf66a207e733f8ecda3a4e1fd1059fb0" - }, - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.5" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/TTS/notebooks/dataset_analysis/PhonemeCoverage.ipynb b/TTS/notebooks/dataset_analysis/PhonemeCoverage.ipynb deleted file mode 100644 index a2268317fbdefad63e69a839edfa2cb0c5d9960c..0000000000000000000000000000000000000000 --- a/TTS/notebooks/dataset_analysis/PhonemeCoverage.ipynb +++ /dev/null @@ -1,256 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": { - "Collapsed": "false" - }, - "source": [ - "# Jupyter Notbook for phoneme coverage analysis\n", - "\n", - "This jupyter notebook checks dataset configured in config.json for phoneme coverage.\n", - "As mentioned here https://github.com/mozilla/TTS/wiki/Dataset#what-makes-a-good-dataset a good phoneme coverage is recommended.\n", - "\n", - "Most parameters will be taken from config.json file in mozilla tts repo so please ensure it's configured correctly for your dataset.\n", - "This notebook used lots of existring code from the TTS repo to ensure future compatibility.\n", - "\n", - "Many thanks to Neil Stoker supporting me on this topic :-).\n", - "\n", - "I provide this notebook without any warrenty but it's hopefully useful for your dataset analysis.\n", - "\n", - "Happy TTS'ing :-)\n", - "\n", - "Thorsten Müller\n", - "\n", - "* https://github.com/thorstenMueller/deep-learning-german-tts\n", - "* https://discourse.mozilla.org/t/contributing-my-german-voice-for-tts/" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "# set some vars\n", - "# TTS_PATH = \"/home/thorsten/___dev/tts/mozilla/TTS\"\n", - "CONFIG_FILE = \"/path/to/config/config.json\"\n", - "CHARS_TO_REMOVE = \".,:!?'\"\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "# import stuff\n", - "from TTS.config import load_config\n", - "from TTS.tts.datasets import load_tts_samples\n", - "from TTS.tts.utils.text.tokenizer import TTSTokenizer\n", - "from tqdm import tqdm\n", - "from matplotlib import pylab as plt\n", - "from multiprocessing import Pool, cpu_count\n", - "\n", - "# extra imports that might not be included in requirements.txt\n", - "import collections\n", - "import operator\n", - "\n", - "%matplotlib inline" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false", - "tags": [] - }, - "outputs": [], - "source": [ - "# Load config.json properties\n", - "CONFIG = load_config(CONFIG_FILE)\n", - "\n", - "# Load some properties from config.json\n", - "CONFIG_METADATA = load_tts_samples(CONFIG.datasets)[0]\n", - "CONFIG_METADATA = CONFIG_METADATA\n", - "CONFIG_DATASET = CONFIG.datasets[0]\n", - "CONFIG_PHONEME_LANGUAGE = CONFIG.phoneme_language\n", - "CONFIG_TEXT_CLEANER = CONFIG.text_cleaner\n", - "CONFIG_ENABLE_EOS_BOS_CHARS = CONFIG.enable_eos_bos_chars\n", - "\n", - "# Will be printed on generated output graph\n", - "CONFIG_RUN_NAME = CONFIG.run_name\n", - "CONFIG_RUN_DESC = CONFIG.run_description\n", - "\n", - "# Needed to convert text to phonemes and phonemes to ids\n", - "tokenizer, config = TTSTokenizer.init_from_config(CONFIG)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false", - "tags": [] - }, - "outputs": [], - "source": [ - "# print some debug information on loaded config values\n", - "print(\" > Run name: \" + CONFIG_RUN_NAME + \" (\" + CONFIG_RUN_DESC + \")\")\n", - "print(\" > Dataset files: \" + str(len(CONFIG_METADATA)))\n", - "print(\" > Phoneme language: \" + CONFIG_PHONEME_LANGUAGE)\n", - "print(\" > Used text cleaner: \" + CONFIG_TEXT_CLEANER)\n", - "print(\" > Enable eos bos chars: \" + str(CONFIG_ENABLE_EOS_BOS_CHARS))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "def get_phoneme_from_sequence(text):\n", - " temp_list = []\n", - " if len(text[\"text\"]) > 0:\n", - " #temp_text = text[0].rstrip('\\n')\n", - " temp_text = text[\"text\"].rstrip('\\n')\n", - " for rm_bad_chars in CHARS_TO_REMOVE:\n", - " temp_text = temp_text.replace(rm_bad_chars,\"\")\n", - " seq = tokenizer.text_to_ids(temp_text)\n", - " text = tokenizer.ids_to_text(seq)\n", - " text = text.replace(\" \",\"\")\n", - " temp_list.append(text)\n", - " return temp_list" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false", - "tags": [] - }, - "outputs": [], - "source": [ - "# Get phonemes from metadata\n", - "phonemes = []\n", - "\n", - "with Pool(cpu_count()-1) as p:\n", - " \n", - " phonemes = list(tqdm(p.imap(get_phoneme_from_sequence, CONFIG_METADATA), total=len(CONFIG_METADATA)))\n", - " phonemes = [i for sub in phonemes for i in sub]" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false", - "tags": [] - }, - "outputs": [], - "source": [ - "s = \"\"\n", - "phonemeString = s.join(phonemes)\n", - "\n", - "d = {}\n", - "collections._count_elements(d, phonemeString)\n", - "sorted_d = dict(sorted(d.items(), key=operator.itemgetter(1),reverse=True))\n", - "\n", - "# remove useless keys\n", - "sorted_d.pop(' ', None)\n", - "sorted_d.pop('ˈ', None)\n", - "\n", - "phonemesSum = len(phonemeString.replace(\" \",\"\"))\n", - "\n", - "print(\"Dataset contains \" + str(len(sorted_d)) + \" different ipa phonemes.\")\n", - "print(\"Dataset consists of \" + str(phonemesSum) + \" phonemes\")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false", - "tags": [] - }, - "outputs": [], - "source": [ - "print(\"5 rarest phonemes\")\n", - "\n", - "rareList = dict(sorted(sorted_d.items(), key=operator.itemgetter(1), reverse=False)[:5])\n", - "for key, value in rareList.items():\n", - " print(key + \" --> \" + str(value) + \" occurrences\")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [ - "# create plot from analysis result\n", - "\n", - "x = []\n", - "y = []\n", - "\n", - "for key, value in sorted_d.items():\n", - " x.append(key)\n", - " y.append(value)\n", - "\n", - "plt.figure(figsize=(50,50))\n", - "plt.title(\"Phoneme coverage for \" + CONFIG_RUN_NAME + \" (\" + CONFIG_RUN_DESC + \")\", fontsize=50)\n", - "plt.xticks(fontsize=50)\n", - "plt.yticks(fontsize=50)\n", - "plt.barh(x,y, align='center', alpha=1.0)\n", - "plt.gca().invert_yaxis()\n", - "plt.ylabel('phoneme', fontsize=50)\n", - "plt.xlabel('occurrences', fontsize=50)\n", - "\n", - "for i, v in enumerate(y):\n", - " plt.text(v + 2, i - .2, str(v), fontsize=20)\n", - " plt.text(v + 2, i + .2, \"(\" + str(round(100/phonemesSum * v,2)) + \"%)\", fontsize=20)\n", - " \n", - " \n", - "plt.show()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "Collapsed": "false" - }, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.12" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/TTS/notebooks/dataset_analysis/README.md b/TTS/notebooks/dataset_analysis/README.md deleted file mode 100644 index 79faf5215951c996e7b15cc960a93195fd9034a8..0000000000000000000000000000000000000000 --- a/TTS/notebooks/dataset_analysis/README.md +++ /dev/null @@ -1,7 +0,0 @@ -## Simple Notebook to Analyze a Dataset - -By the use of this notebook, you can easily analyze a brand new dataset, find exceptional cases and define your training set. - -What we are looking in here is reasonable distribution of instances in terms of sequence-length, audio-length and word-coverage. - -This notebook is inspired from https://github.com/MycroftAI/mimic2 diff --git a/TTS/notebooks/dataset_analysis/analyze.py b/TTS/notebooks/dataset_analysis/analyze.py deleted file mode 100644 index d34ce4c1b6a16c2acea81aa14451307cb4f0f0d0..0000000000000000000000000000000000000000 --- a/TTS/notebooks/dataset_analysis/analyze.py +++ /dev/null @@ -1,210 +0,0 @@ -# visualisation tools for mimic2 -import argparse -import csv -import os -import random -from statistics import StatisticsError, mean, median, mode, stdev - -import matplotlib.pyplot as plt -import seaborn as sns -from text.cmudict import CMUDict - - -def get_audio_seconds(frames): - return (frames * 12.5) / 1000 - - -def append_data_statistics(meta_data): - # get data statistics - for char_cnt in meta_data: - data = meta_data[char_cnt]["data"] - audio_len_list = [d["audio_len"] for d in data] - mean_audio_len = mean(audio_len_list) - try: - mode_audio_list = [round(d["audio_len"], 2) for d in data] - mode_audio_len = mode(mode_audio_list) - except StatisticsError: - mode_audio_len = audio_len_list[0] - median_audio_len = median(audio_len_list) - - try: - std = stdev(d["audio_len"] for d in data) - except StatisticsError: - std = 0 - - meta_data[char_cnt]["mean"] = mean_audio_len - meta_data[char_cnt]["median"] = median_audio_len - meta_data[char_cnt]["mode"] = mode_audio_len - meta_data[char_cnt]["std"] = std - return meta_data - - -def process_meta_data(path): - meta_data = {} - - # load meta data - with open(path, "r", encoding="utf-8") as f: - data = csv.reader(f, delimiter="|") - for row in data: - frames = int(row[2]) - utt = row[3] - audio_len = get_audio_seconds(frames) - char_count = len(utt) - if not meta_data.get(char_count): - meta_data[char_count] = {"data": []} - - meta_data[char_count]["data"].append( - { - "utt": utt, - "frames": frames, - "audio_len": audio_len, - "row": "{}|{}|{}|{}".format(row[0], row[1], row[2], row[3]), - } - ) - - meta_data = append_data_statistics(meta_data) - - return meta_data - - -def get_data_points(meta_data): - x = meta_data - y_avg = [meta_data[d]["mean"] for d in meta_data] - y_mode = [meta_data[d]["mode"] for d in meta_data] - y_median = [meta_data[d]["median"] for d in meta_data] - y_std = [meta_data[d]["std"] for d in meta_data] - y_num_samples = [len(meta_data[d]["data"]) for d in meta_data] - return { - "x": x, - "y_avg": y_avg, - "y_mode": y_mode, - "y_median": y_median, - "y_std": y_std, - "y_num_samples": y_num_samples, - } - - -def save_training(file_path, meta_data): - rows = [] - for char_cnt in meta_data: - data = meta_data[char_cnt]["data"] - for d in data: - rows.append(d["row"] + "\n") - - random.shuffle(rows) - with open(file_path, "w+", encoding="utf-8") as f: - for row in rows: - f.write(row) - - -def plot(meta_data, save_path=None): - save = False - if save_path: - save = True - - graph_data = get_data_points(meta_data) - x = graph_data["x"] - y_avg = graph_data["y_avg"] - y_std = graph_data["y_std"] - y_mode = graph_data["y_mode"] - y_median = graph_data["y_median"] - y_num_samples = graph_data["y_num_samples"] - - plt.figure() - plt.plot(x, y_avg, "ro") - plt.xlabel("character lengths", fontsize=30) - plt.ylabel("avg seconds", fontsize=30) - if save: - name = "char_len_vs_avg_secs" - plt.savefig(os.path.join(save_path, name)) - - plt.figure() - plt.plot(x, y_mode, "ro") - plt.xlabel("character lengths", fontsize=30) - plt.ylabel("mode seconds", fontsize=30) - if save: - name = "char_len_vs_mode_secs" - plt.savefig(os.path.join(save_path, name)) - - plt.figure() - plt.plot(x, y_median, "ro") - plt.xlabel("character lengths", fontsize=30) - plt.ylabel("median seconds", fontsize=30) - if save: - name = "char_len_vs_med_secs" - plt.savefig(os.path.join(save_path, name)) - - plt.figure() - plt.plot(x, y_std, "ro") - plt.xlabel("character lengths", fontsize=30) - plt.ylabel("standard deviation", fontsize=30) - if save: - name = "char_len_vs_std" - plt.savefig(os.path.join(save_path, name)) - - plt.figure() - plt.plot(x, y_num_samples, "ro") - plt.xlabel("character lengths", fontsize=30) - plt.ylabel("number of samples", fontsize=30) - if save: - name = "char_len_vs_num_samples" - plt.savefig(os.path.join(save_path, name)) - - -def plot_phonemes(train_path, cmu_dict_path, save_path): - cmudict = CMUDict(cmu_dict_path) - - phonemes = {} - - with open(train_path, "r", encoding="utf-8") as f: - data = csv.reader(f, delimiter="|") - phonemes["None"] = 0 - for row in data: - words = row[3].split() - for word in words: - pho = cmudict.lookup(word) - if pho: - indie = pho[0].split() - for nemes in indie: - if phonemes.get(nemes): - phonemes[nemes] += 1 - else: - phonemes[nemes] = 1 - else: - phonemes["None"] += 1 - - x, y = [], [] - for k, v in phonemes.items(): - x.append(k) - y.append(v) - - plt.figure() - plt.rcParams["figure.figsize"] = (50, 20) - barplot = sns.barplot(x=x, y=y) - if save_path: - fig = barplot.get_figure() - fig.savefig(os.path.join(save_path, "phoneme_dist")) - - -def main(): - parser = argparse.ArgumentParser() - parser.add_argument( - "--train_file_path", - required=True, - help="this is the path to the train.txt file that the preprocess.py script creates", - ) - parser.add_argument("--save_to", help="path to save charts of data to") - parser.add_argument("--cmu_dict_path", help="give cmudict-0.7b to see phoneme distribution") - args = parser.parse_args() - meta_data = process_meta_data(args.train_file_path) - plt.rcParams["figure.figsize"] = (10, 5) - plot(meta_data, save_path=args.save_to) - if args.cmu_dict_path: - plt.rcParams["figure.figsize"] = (30, 10) - plot_phonemes(args.train_file_path, args.cmu_dict_path, args.save_to) - - plt.show() - - -if __name__ == "__main__": - main() diff --git a/TTS/pyproject.toml b/TTS/pyproject.toml deleted file mode 100644 index 8544bb202a0a86f0a3845834702e23cad41037a0..0000000000000000000000000000000000000000 --- a/TTS/pyproject.toml +++ /dev/null @@ -1,33 +0,0 @@ -[build-system] -requires = ["setuptools", "wheel", "cython==0.29.30", "numpy==1.22.0", "packaging"] - -[flake8] -max-line-length=120 - -[tool.black] -line-length = 120 -target-version = ['py39'] -exclude = ''' - -( - /( - \.eggs # exclude a few common directories in the - | \.git # root of the project - | \.hg - | \.mypy_cache - | \.tox - | \.venv - | _build - | buck-out - | build - | dist - )/ - | foo.py # also separately exclude a file named foo.py in - # the root of the project -) -''' - -[tool.isort] -line_length = 120 -profile = "black" -multi_line_output = 3 diff --git a/TTS/recipes/README.md b/TTS/recipes/README.md deleted file mode 100644 index 21a6727d8bffb9a16c9b053aaae1aab25c1805fa..0000000000000000000000000000000000000000 --- a/TTS/recipes/README.md +++ /dev/null @@ -1,22 +0,0 @@ -# 🐸💬 TTS Training Recipes - -TTS recipes intended to host scripts running all the necessary steps to train a TTS model on a particular dataset. - -For each dataset, you need to download the dataset once. Then you run the training for the model you want. - -Run each script from the root TTS folder as follows. - -```console -$ sh ./recipes//download_.sh -$ python recipes///train.py -``` - -For some datasets you might need to resample the audio files. For example, VCTK dataset can be resampled to 22050Hz as follows. - -```console -python TTS/bin/resample.py --input_dir recipes/vctk/VCTK/wav48_silence_trimmed --output_sr 22050 --output_dir recipes/vctk/VCTK/wav48_silence_trimmed --n_jobs 8 --file_ext flac -``` - -If you train a new model using TTS, feel free to share your training to expand the list of recipes. - -You can also open a new discussion and share your progress with the 🐸 community. \ No newline at end of file diff --git a/TTS/recipes/bel-alex73/.gitignore b/TTS/recipes/bel-alex73/.gitignore deleted file mode 100644 index 87a23ae8374ac1d323545ef1b2d7b266e83aea4e..0000000000000000000000000000000000000000 --- a/TTS/recipes/bel-alex73/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/docker-prepare/*.txt diff --git a/TTS/recipes/bel-alex73/README.md b/TTS/recipes/bel-alex73/README.md deleted file mode 100644 index ad378dd9984b3fa94e1be7a0c479f9e51d88e1a6..0000000000000000000000000000000000000000 --- a/TTS/recipes/bel-alex73/README.md +++ /dev/null @@ -1,62 +0,0 @@ -This description was created based on [jhlfrfufyfn/ml-bel-tts](https://github.com/jhlfrfufyfn/ml-bel-tts). Thanks a lot to jhlfrfufyfn for advices, configuration, code and ideas. - -# Training - -This recipe uses [CommonVoice](https://commonvoice.mozilla.org/en/datasets) dataset. It has format mp3/32kHz/48kbps format and contains multiple speakers because it was created for voice recognition. Looks like it's the best voice corpus of Belarussian language for today. But for creating better voice synthesis it will require to record some specific corpus with good pronunciation and good record quality. - -Looks like for Belarusian Common Voice corpus there is no sense to train full big dataset (90 hours). It's enough 30 hours dataset, that makes very good progress for 350 epochs(24000 steps on 24GiB GPU). The quality of dataset is more important that size. - -To train a model, you need to: -- download code and data -- prepare training data and generate scale_stats file -- change configuration settings -- train TTS model (GlowTTS in this example) -- train Vocoder model (HiFiGAN in this example) - -We recommend to prepare all things locally, then train models on the external computer with fast GPU. Text below describes all these steps. - -## Download code and data - -It would be good to place all things into local folder like /mycomputer/. You need files: - -- Coqui-TTS - code from this git. For example, to /mycomputer/TTS/. *Expected result: you have /mycomputer/TTS/setup.py and other files from git.* -- [Common voice dataset](https://commonvoice.mozilla.org/en/datasets) into cv-corpus/ directory near Coqui-TTS. *Expected result: you have /mycomputer/cv-corpus/be/validated.tsv and more than 1 mln .mp3 files in the /mycomputer/cv-corpus/be/clips/.* -- Belarusian text to phonemes converter - fanetyka.jar from the [https://github.com/alex73/Software-Korpus/releases](https://github.com/alex73/Software-Korpus/releases), then place it to fanetyka/ near Coqui-TTS. *Expected result: you have file /mycomputer/fanetyka/fanetyka.jar* - -Prepared data will be stored into storage/ directory near Coqui-TTS, like /mycomputer/storage/. - -## Prepare to training - locally - -Docker container was created for simplify local running. You can run `docker-prepare-start.sh` to start environment. All commands below should be started in docker console. - -* Start jupyter by the command `jupyter notebook --no-browser --allow-root --port=2525 --ip=0.0.0.0`. It will display link to http. You need to open this link, then choose `recipes/bel-alex73/choose_speaker.ipynb` notebook. You should run cells one-by-one, listen different speakers and select speaker that you want to use. After all commands in notebook, you can press Ctrl+C in docker console to stop jupyter. *Expected result: directory /mycomputer/storage/filtered_dataset/ with df_speaker.csv file and many *.wav files.* - -* Convert text to phonemes: `java -cp /a/fanetyka/fanetyka.jar org.alex73.fanetyka.impl.FanetykaTTSPrepare /storage/filtered_dataset/df_speaker.csv /storage/filtered_dataset/ipa_final_dataset.csv`. It will display all used characters at the end. You can use these characters to modify config in train_glowtts.py. *Expected result: file /mycomputer/storage/filtered_dataset/ipa_final_dataset.csv* - -* Modify configs(if you need) in the train_glowtts.py and train_hifigan.py. Then export config to old json format to create scale_stats.npy by the command `python3 recipes/bel-alex73/dump_config.py > recipes/bel-alex73/config.json`. *Expected result: file /mycomputer/TTS/recipes/bel-alex73/config.json exists.* - -* Start scale_stats.npy, that will the model to learn better: `mkdir -p /storage/TTS/; python3 TTS/bin/compute_statistics.py --config_path recipes/bel-alex73/config.json --out_path /storage/TTS/scale_stats.npy`. *Expected result: file /mycomputer/storage/TTS/scale_stats.npy exists.* - -## Training - with GPU - -You need to upload Coqui-TTS(/mycomputer/TTS/) and storage/ directory(/mycomputer/storage/) to some computer with GPU. We don't need cv-corpus/ and fanetyka/ directories for training. Install gcc, then run `pip install -e .[all,dev,notebooks]` to prepare modules. GlowTTS and HifiGan models should be learned separately based on /storage/filtered_dataset only, i.e. they are not dependent from each other. below means list of GPU ids from zero("0,1,2,3" for systems with 4 GPU). See details on the https://tts.readthedocs.io/en/latest/tutorial_for_nervous_beginners.html(multi-gpu training). - -Current setup created for 24GiB GPU. You need to change batch_size if you have more or less GPU memory. Also, you can try to set lr(learning rate) to lower value in the end of training GlowTTS. - -* Start GlowTTS model training by the command `OMP_NUM_THREADS=2 CUDA_VISIBLE_DEVICES= python3 -m trainer.distribute --script recipes/bel-alex73/train_glowtts.py`. It will produce training data into storage/output/ directory. Usually 100.000 global steps required. *Expected behavior: You will see /storage/output-glowtts//best_model_.pth files.* - -* Start HiFiGAN model training by the command `OMP_NUM_THREADS=2 CUDA_VISIBLE_DEVICES= python3 -m trainer.distribute --script recipes/bel-alex73/train_hifigan.py`. *Expected behavior: You will see /storage/output-hifigan//best_model_.pth files.* - -## How to monitor training - -* Run `nvidia-smi` to be sure that training uses all GPUs and to be sure that you are using more than 90% GPU memory and utilization. - -* Run `tensorboard --logdir=/storage/output-/` to see alignment, avg_loss metrics and check audio evaluation. You need only events.out.tfevents.\* files for that. - -## Synthesizing speech - - tts --text "" --out_path output.wav \ - --config_path /storage/output-glowtts/run/config.json \ - --model_path /storage/output-glowtts/run/best_model.pth \ - --vocoder_config_path /storage/output-hifigan/run/config.json \ - --vocoder_path /storage/output-hifigan/run/best_model.pth diff --git a/TTS/recipes/bel-alex73/choose_speaker.ipynb b/TTS/recipes/bel-alex73/choose_speaker.ipynb deleted file mode 100644 index 4941f6020775b988fe4f588ddc1976654d0f6c7a..0000000000000000000000000000000000000000 --- a/TTS/recipes/bel-alex73/choose_speaker.ipynb +++ /dev/null @@ -1,346 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# This file was created by jhlfrfufyfn for choose speaker from the Belarusian Mozilla Voice corpus\n", - "#\n", - "#\n", - "import pandas as pd\n", - "import numpy as np\n", - "import matplotlib.pyplot as plt\n", - "import seaborn as sns\n", - "import os\n", - "import librosa" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# unpackage tar gz file cv-corpus-12.0-2022-12-07-be.tar.gz\n", - "# import tarfile\n", - "# tar = tarfile.open(\"cv-corpus-12.0-2022-12-07-be.tar.gz\", \"r:gz\")\n", - "# tar.extractall()\n", - "# tar.close()\n", - "\n", - "corpuspath = '/a/cv-corpus'\n", - "outputpath = '/storage/filtered_dataset'" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# open validated.tsv\n", - "df = pd.read_csv(corpuspath+'/be/validated.tsv', sep='\\t' ,low_memory=False)\n", - "df" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# drop from df columns age, accents\n", - "df = df.drop(['age', 'accents', 'gender', 'variant', 'locale', 'segment'], axis=1)\n", - "df" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# count number of recordes with down_votes > 0\n", - "df[df['down_votes'] > 0].count()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# count number of recordes with up_votes == 0\n", - "df[df['up_votes'] == 0].count()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# drop all rows with down_votes > 0 and up_votes == 0\n", - "df = df[df['down_votes'] == 0]\n", - "df = df[df['up_votes'] > 0]\n", - "df" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# drop column down_votes and up_votes\n", - "df = df.drop(['down_votes', 'up_votes'], axis=1)\n", - "df" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# sort by count\n", - "df_sorted = df.groupby('client_id').count().sort_values(by='path', ascending=False)\n", - "df_sorted" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# get top 10 speakers\n", - "top_10_speakers = df_sorted.head(10)\n", - "top_10_speakers" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# get for the first speaker ten random paths to audio files\n", - "def get_speaker_audio_list(speaker_id, n=10):\n", - " return df[df['client_id'] == speaker_id].sample(n)['path'].values.tolist()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# CHOOSE : which speaker will we use\n", - "speaker_index = 0\n", - "speaker_audio_list = get_speaker_audio_list(top_10_speakers.index[speaker_index])\n", - "print(speaker_audio_list)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# open audio files from speaker_audio_list and play them\n", - "# audio files lie in cv-corpus-12.0-2022-12-07/be/clips\n", - "import IPython.display as ipd\n", - "for audio in speaker_audio_list:\n", - " audio = corpuspath+'/be/clips/' + audio\n", - " audio_data = ipd.Audio(audio)\n", - " display(audio_data)\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# 0 is pretty good\n", - "# 1 is bad\n", - "# 2 is partly 0, other are different\n", - "# 3 is bad\n", - "# 4 is pretty fast and clear, but not good\n", - "# 5 is echoing, sometimes mic cracks\n", - "# 6 is really slow and clear, but accent?\n", - "# 7 has a lot of intonation, but is pretty clear\n", - "# 8 is clear and slow, sometimes little mic crack\n", - "# 9 has background noise, whispering\n", - "\n", - "# options: 0, 6, 8" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# calculate speech rate in words per minute for each speaker\n", - "def get_speech_rate(speaker_id):\n", - " df_speaker = df[df['client_id'] == speaker_id]\n", - " # get 1000 random samples to calculate speech rate\n", - " df_speaker = df_speaker.sample(1000)\n", - " # get duration of each audio file\n", - " df_speaker['duration'] = df_speaker['path'].apply(lambda x: librosa.get_duration(path=corpuspath+'/be/clips/' + x))\n", - " # get number of words in each audio file\n", - " df_speaker['words'] = df_speaker['sentence'].apply(lambda x: len(x.split()))\n", - " # calculate speech rate\n", - " df_speaker['speech_rate'] = df_speaker['words'] / df_speaker['duration'] * 60\n", - " # return mean speech rate\n", - " return df_speaker['speech_rate'].mean()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# calculate speech rate for each speaker\n", - "print(f'Speech rate for speaker {speaker_index}: ', get_speech_rate(top_10_speakers.index[speaker_index]))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "def get_average_duration(df_speaker):\n", - " # get 1000 random samples to calculate speech rate\n", - " df_speaker = df_speaker.sample(1000)\n", - " # get duration of each audio file\n", - " df_speaker['duration'] = df_speaker['path'].apply(lambda x: librosa.get_duration(path=corpuspath+'/be/clips/' + x))\n", - " return df_speaker['duration'].mean()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "df_speaker = df[df['client_id'] == top_10_speakers.index[speaker_index]]\n", - "\n", - "avg_duration = get_average_duration(df_speaker)\n", - "avg_total_duration = avg_duration * len(df_speaker.index)\n", - "print(f'Average duration for speaker {speaker_index}: ', avg_duration, \", average total duration(hours): \",(avg_total_duration/60.0/60.0))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# get df with speaker_index speaker \n", - "df_speaker = df[df['client_id'] == top_10_speakers.index[speaker_index]]\n", - "df_speaker = df_speaker.drop(['client_id'], axis=1)\n", - "\n", - "# get only x latest hours\n", - "limit_hours = 30\n", - "limit_files = round(limit_hours*60*60 / avg_duration)\n", - "df_speaker = df_speaker.tail(limit_files)\n", - "\n", - "df_speaker" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# # move all files of that speaker to another folder\n", - "# # use multiprocessing to speed up\n", - "# # add progress bar\n", - "# from tqdm import tqdm\n", - "# import multiprocessing\n", - "# from multiprocessing import Pool\n", - "# import shutil\n", - "\n", - "# def move_file(file):\n", - "# shutil.move(corpuspath+'/be/clips/' + file, corpuspath+'/be/speaker_0/' + file)\n", - "\n", - "# # get list of files to move\n", - "# files = df_speaker['path'].values.tolist()\n", - "\n", - "# # move files\n", - "# with Pool(multiprocessing.cpu_count()) as p:\n", - "# r = list(tqdm(p.imap(move_file, files), total=len(files)))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# cleanup output and save text lines to csv\n", - "if os.path.isdir(outputpath):\n", - " for file in os.scandir(outputpath):\n", - " os.remove(file.path)\n", - "else:\n", - " os.mkdir(outputpath)\n", - "\n", - "df_speaker['path2'] = df_speaker['path'].str.replace('\\.mp3$','.wav', regex=True)\n", - "df_speaker[['path2','sentence']].to_csv(outputpath+'/df_speaker.csv', sep='|', header=False, index=False)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# make rate=22050 of all mp3 files in speaker_0 folder with multiprocessing and tqdm\n", - "import multiprocessing\n", - "from multiprocessing import Pool\n", - "from tqdm import tqdm\n", - "from pydub import AudioSegment\n", - "\n", - "def convert_mp3_to_wav(file):\n", - " sound = AudioSegment.from_mp3(corpuspath+'/be/clips/' + file)\n", - " sound = sound.set_frame_rate(22050)\n", - " sound.export(outputpath+'/' + file[:-4] + '.wav', format='wav')\n", - "\n", - "# get list of files to convert\n", - "files = df_speaker['path'].values.tolist()\n", - "\n", - "# convert files\n", - "with Pool(multiprocessing.cpu_count()) as p:\n", - " r = list(tqdm(p.imap(convert_mp3_to_wav, files), total=len(files)))" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.10.6" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/TTS/recipes/bel-alex73/docker-prepare-start.sh b/TTS/recipes/bel-alex73/docker-prepare-start.sh deleted file mode 100644 index a4ce3c6dcca3abced93bd6c80d863061d8d86486..0000000000000000000000000000000000000000 --- a/TTS/recipes/bel-alex73/docker-prepare-start.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/bash -set -x - -cd $( dirname -- "$0"; ) - -cp ../../requirements*.txt docker-prepare/ - -docker build -t tts-learn -f docker-prepare/Dockerfile docker-prepare/ - -mkdir -p ../../../storage -docker run --rm -it \ - -p 2525:2525 \ - --shm-size=256M \ - --name tts-learn-run \ - -v $(pwd)/../../:/a/TTS \ - -v $(pwd)/../../../cv-corpus:/a/cv-corpus \ - -v $(pwd)/../../../fanetyka/:/a/fanetyka/ \ - -v $(pwd)/../../../storage:/storage \ - tts-learn diff --git a/TTS/recipes/bel-alex73/docker-prepare/Dockerfile b/TTS/recipes/bel-alex73/docker-prepare/Dockerfile deleted file mode 100644 index fd9b745386da8319ddb9ed2cbb7d3db720e12bb9..0000000000000000000000000000000000000000 --- a/TTS/recipes/bel-alex73/docker-prepare/Dockerfile +++ /dev/null @@ -1,18 +0,0 @@ -FROM ubuntu:22.04 - -RUN apt -y update -RUN apt -y upgrade -RUN apt -y install --no-install-recommends pip ffmpeg openjdk-19-jre-headless - -RUN mkdir /a/ -ADD requirements*.txt /a/ -WORKDIR /a/ -RUN pip install -r requirements.txt -r requirements.dev.txt -r requirements.notebooks.txt -RUN pip install seaborn pydub notebook - -RUN apt -y install --no-install-recommends gcc libpython3.10-dev - -ADD runtime.sh /a/ - -WORKDIR /a/TTS/ -CMD /a/runtime.sh diff --git a/TTS/recipes/bel-alex73/docker-prepare/runtime.sh b/TTS/recipes/bel-alex73/docker-prepare/runtime.sh deleted file mode 100644 index 27b723bc0fe56388674d33e2c8839b7fda68c776..0000000000000000000000000000000000000000 --- a/TTS/recipes/bel-alex73/docker-prepare/runtime.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -cd /a/TTS -pip install -e .[all,dev,notebooks] - -LANG=C.utf8 bash diff --git a/TTS/recipes/bel-alex73/dump_config.py b/TTS/recipes/bel-alex73/dump_config.py deleted file mode 100644 index c4d307231cbdd36c88ecae29009bab7c48bc1d7e..0000000000000000000000000000000000000000 --- a/TTS/recipes/bel-alex73/dump_config.py +++ /dev/null @@ -1,8 +0,0 @@ -import json -import re - -from train_glowtts import config - -s = json.dumps(config, default=vars, indent=2) -s = re.sub(r'"test_sentences":\s*\[\],', "", s) -print(s) diff --git a/TTS/recipes/bel-alex73/train_glowtts.py b/TTS/recipes/bel-alex73/train_glowtts.py deleted file mode 100644 index e0827cdc44d85d1b7f378c12fc1d5e190607f5a3..0000000000000000000000000000000000000000 --- a/TTS/recipes/bel-alex73/train_glowtts.py +++ /dev/null @@ -1,111 +0,0 @@ -import os - -# Trainer: Where the ✨️ happens. -# TrainingArgs: Defines the set of arguments of the Trainer. -from trainer import Trainer, TrainerArgs - -# GlowTTSConfig: all model related values for training, validating and testing. -from TTS.tts.configs.glow_tts_config import GlowTTSConfig - -# BaseDatasetConfig: defines name, formatter and path of the dataset. -from TTS.tts.configs.shared_configs import BaseAudioConfig, BaseDatasetConfig, CharactersConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.glow_tts import GlowTTS -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -# we use the same path as this script as our training folder. -output_path = "/storage/output-glowtts/" - - -# DEFINE DATASET CONFIG -# Set LJSpeech as our target dataset and define its path. -# You can also use a simple Dict to define the dataset and pass it to your custom formatter. -dataset_config = BaseDatasetConfig( - formatter="bel_tts_formatter", - meta_file_train="ipa_final_dataset.csv", - path=os.path.join(output_path, "/storage/filtered_dataset/"), -) - -characters = CharactersConfig( - characters_class="TTS.tts.utils.text.characters.Graphemes", - pad="_", - eos="~", - bos="^", - blank="@", - characters="Iabdfgijklmnprstuvxzɔɛɣɨɫɱʂʐʲˈː̯͡β", - punctuations="!,.?: -‒–—…", -) - -audio_config = BaseAudioConfig( - mel_fmin=50, - mel_fmax=8000, - hop_length=256, - stats_path="/storage/TTS/scale_stats.npy", -) - -# INITIALIZE THE TRAINING CONFIGURATION -# Configure the model. Every config class inherits the BaseTTSConfig. -config = GlowTTSConfig( - batch_size=96, - eval_batch_size=32, - num_loader_workers=8, - num_eval_loader_workers=8, - use_noise_augment=True, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - print_step=50, - print_eval=True, - output_path=output_path, - add_blank=True, - datasets=[dataset_config], - characters=characters, - enable_eos_bos_chars=True, - mixed_precision=False, - save_step=10000, - save_n_checkpoints=2, - save_best_after=5000, - text_cleaner="no_cleaners", - audio=audio_config, - test_sentences=[], -) - -if __name__ == "__main__": - # INITIALIZE THE AUDIO PROCESSOR - # Audio processor is used for feature extraction and audio I/O. - # It mainly serves to the dataloader and the training loggers. - ap = AudioProcessor.init_from_config(config) - - # INITIALIZE THE TOKENIZER - # Tokenizer is used to convert text to sequences of token IDs. - # If characters are not defined in the config, default characters are passed to the config - tokenizer, config = TTSTokenizer.init_from_config(config) - - # LOAD DATA SAMPLES - # Each sample is a list of ```[text, audio_file_path, speaker_name]``` - # You can define your custom sample loader returning the list of samples. - # Or define your custom formatter and pass it to the `load_tts_samples`. - # Check `TTS.tts.datasets.load_tts_samples` for more details. - train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, - ) - - # INITIALIZE THE MODEL - # Models take a config object and a speaker manager as input - # Config defines the details of the model like the number of layers, the size of the embedding, etc. - # Speaker manager is used by multi-speaker models. - model = GlowTTS(config, ap, tokenizer, speaker_manager=None) - - # INITIALIZE THE TRAINER - # Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, - # distributed training, etc. - trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples - ) - - # AND... 3,2,1... 🚀 - trainer.fit() diff --git a/TTS/recipes/bel-alex73/train_hifigan.py b/TTS/recipes/bel-alex73/train_hifigan.py deleted file mode 100644 index 3e740b2ff400ab8f8815d3958bae9d6664c49142..0000000000000000000000000000000000000000 --- a/TTS/recipes/bel-alex73/train_hifigan.py +++ /dev/null @@ -1,60 +0,0 @@ -import os - -from coqpit import Coqpit -from trainer import Trainer, TrainerArgs - -from TTS.tts.configs.shared_configs import BaseAudioConfig -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.configs.hifigan_config import * -from TTS.vocoder.datasets.preprocess import load_wav_data -from TTS.vocoder.models.gan import GAN - -output_path = "/storage/output-hifigan/" - -audio_config = BaseAudioConfig( - mel_fmin=50, - mel_fmax=8000, - hop_length=256, - stats_path="/storage/TTS/scale_stats.npy", -) - -config = HifiganConfig( - batch_size=74, - eval_batch_size=16, - num_loader_workers=8, - num_eval_loader_workers=8, - lr_disc=0.0002, - lr_gen=0.0002, - run_eval=True, - test_delay_epochs=5, - epochs=1000, - use_noise_augment=True, - seq_len=8192, - pad_short=2000, - save_step=5000, - print_step=50, - print_eval=True, - mixed_precision=False, - eval_split_size=30, - save_n_checkpoints=2, - save_best_after=5000, - data_path="/storage/filtered_dataset", - output_path=output_path, - audio=audio_config, -) - -# init audio processor -ap = AudioProcessor.init_from_config(config) - -# load training samples -print("config.eval_split_size = ", config.eval_split_size) -eval_samples, train_samples = load_wav_data(config.data_path, config.eval_split_size) - -# init model -model = GAN(config, ap) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) -trainer.fit() diff --git a/TTS/recipes/blizzard2013/README.md b/TTS/recipes/blizzard2013/README.md deleted file mode 100644 index 9dcb73972802686dba80b83e798ab1466f2b26a0..0000000000000000000000000000000000000000 --- a/TTS/recipes/blizzard2013/README.md +++ /dev/null @@ -1,12 +0,0 @@ -# How to get the Blizzard 2013 Dataset - -The Capacitron model is a variational encoder extension of standard Tacotron based models to model prosody. - -To take full advantage of the model, it is advised to train the model with a dataset that contains a significant amount of prosodic information in the utterances. A tested candidate for such applications is the blizzard2013 dataset from the Blizzard Challenge, containing many hours of high quality audio book recordings. - -To get a license and download link for this dataset, you need to visit the [website](https://www.cstr.ed.ac.uk/projects/blizzard/2013/lessac_blizzard2013/license.html) of the Centre for Speech Technology Research of the University of Edinburgh. - -You get access to the raw dataset in a couple of days. There are a few preprocessing steps you need to do to be able to use the high fidelity dataset. - -1. Get the forced time alignments for the blizzard dataset from [here](https://github.com/mueller91/tts_alignments). -2. Segment the high fidelity audio-book files based on the instructions [here](https://github.com/Tomiinek/Blizzard2013_Segmentation). \ No newline at end of file diff --git a/TTS/recipes/blizzard2013/tacotron1-Capacitron/train_capacitron_t1.py b/TTS/recipes/blizzard2013/tacotron1-Capacitron/train_capacitron_t1.py deleted file mode 100644 index 0243735dde4c1b87434087ddc01ad6b80e53cc27..0000000000000000000000000000000000000000 --- a/TTS/recipes/blizzard2013/tacotron1-Capacitron/train_capacitron_t1.py +++ /dev/null @@ -1,99 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig, CapacitronVAEConfig -from TTS.tts.configs.tacotron_config import TacotronConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.tacotron import Tacotron -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) - -data_path = "/srv/data/" - -# Using LJSpeech like dataset processing for the blizzard dataset -dataset_config = BaseDatasetConfig(formatter="ljspeech", meta_file_train="metadata.csv", path=data_path) - -audio_config = BaseAudioConfig( - sample_rate=24000, - do_trim_silence=True, - trim_db=60.0, - signal_norm=True, - mel_fmin=80.0, - mel_fmax=12000, - spec_gain=20.0, - log_func="np.log10", - ref_level_db=20, - preemphasis=0.0, - min_level_db=-100, -) - -# Using the standard Capacitron config -capacitron_config = CapacitronVAEConfig(capacitron_VAE_loss_alpha=1.0) - -config = TacotronConfig( - run_name="Blizzard-Capacitron-T1", - audio=audio_config, - capacitron_vae=capacitron_config, - use_capacitron_vae=True, - batch_size=128, # Tune this to your gpu - max_audio_len=6 * 24000, # Tune this to your gpu - min_audio_len=0.5 * 24000, - eval_batch_size=16, - num_loader_workers=12, - num_eval_loader_workers=8, - precompute_num_workers=24, - run_eval=True, - test_delay_epochs=5, - r=2, - optimizer="CapacitronOptimizer", - optimizer_params={"RAdam": {"betas": [0.9, 0.998], "weight_decay": 1e-6}, "SGD": {"lr": 1e-5, "momentum": 0.9}}, - attention_type="graves", - attention_heads=5, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phonemizer="espeak", - phoneme_cache_path=os.path.join(data_path, "phoneme_cache"), - stopnet_pos_weight=15, - print_step=50, - print_eval=True, - mixed_precision=False, - output_path=output_path, - datasets=[dataset_config], - lr=1e-3, - lr_scheduler="StepwiseGradualLR", - lr_scheduler_params={"gradual_learning_rates": [[0, 1e-3], [2e4, 5e-4], [4e4, 3e-4], [6e4, 1e-4], [8e4, 5e-5]]}, - scheduler_after_epoch=False, # scheduler doesn't work without this flag - loss_masking=False, - decoder_loss_alpha=1.0, - postnet_loss_alpha=1.0, - postnet_diff_spec_alpha=1.0, - decoder_diff_spec_alpha=1.0, - decoder_ssim_alpha=1.0, - postnet_ssim_alpha=1.0, -) - -ap = AudioProcessor(**config.audio.to_dict()) - -tokenizer, config = TTSTokenizer.init_from_config(config) - -train_samples, eval_samples = load_tts_samples(dataset_config, eval_split=True) - -model = Tacotron(config, ap, tokenizer, speaker_manager=None) - -trainer = Trainer( - TrainerArgs(), - config, - output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, -) - -# 🚀 -trainer.fit() diff --git a/TTS/recipes/blizzard2013/tacotron2-Capacitron/train_capacitron_t2.py b/TTS/recipes/blizzard2013/tacotron2-Capacitron/train_capacitron_t2.py deleted file mode 100644 index b41676d8e7dccce6f513118ac2d22adbd892d2f2..0000000000000000000000000000000000000000 --- a/TTS/recipes/blizzard2013/tacotron2-Capacitron/train_capacitron_t2.py +++ /dev/null @@ -1,113 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig, CapacitronVAEConfig -from TTS.tts.configs.tacotron2_config import Tacotron2Config -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.tacotron2 import Tacotron2 -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) - -data_path = "/srv/data/blizzard2013/segmented" - -# Using LJSpeech like dataset processing for the blizzard dataset -dataset_config = BaseDatasetConfig( - formatter="ljspeech", - meta_file_train="metadata.csv", - path=data_path, -) - -audio_config = BaseAudioConfig( - sample_rate=24000, - do_trim_silence=True, - trim_db=60.0, - signal_norm=True, - mel_fmin=80.0, - mel_fmax=12000, - spec_gain=25.0, - log_func="np.log10", - ref_level_db=20, - preemphasis=0.0, - min_level_db=-100, -) - -# Using the standard Capacitron config -capacitron_config = CapacitronVAEConfig(capacitron_VAE_loss_alpha=1.0) - -config = Tacotron2Config( - run_name="Blizzard-Capacitron-T2", - audio=audio_config, - capacitron_vae=capacitron_config, - use_capacitron_vae=True, - batch_size=246, # Tune this to your gpu - max_audio_len=6 * 24000, # Tune this to your gpu - min_audio_len=1 * 24000, - eval_batch_size=16, - num_loader_workers=12, - num_eval_loader_workers=8, - precompute_num_workers=24, - run_eval=True, - test_delay_epochs=5, - r=2, - optimizer="CapacitronOptimizer", - optimizer_params={"RAdam": {"betas": [0.9, 0.998], "weight_decay": 1e-6}, "SGD": {"lr": 1e-5, "momentum": 0.9}}, - attention_type="dynamic_convolution", - grad_clip=0.0, # Important! We overwrite the standard grad_clip with capacitron_grad_clip - double_decoder_consistency=False, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phonemizer="espeak", - phoneme_cache_path=os.path.join(data_path, "phoneme_cache"), - stopnet_pos_weight=15, - print_step=25, - print_eval=True, - mixed_precision=False, - output_path=output_path, - datasets=[dataset_config], - lr=1e-3, - lr_scheduler="StepwiseGradualLR", - lr_scheduler_params={ - "gradual_learning_rates": [ - [0, 1e-3], - [2e4, 5e-4], - [4e4, 3e-4], - [6e4, 1e-4], - [8e4, 5e-5], - ] - }, - scheduler_after_epoch=False, # scheduler doesn't work without this flag - seq_len_norm=True, - loss_masking=False, - decoder_loss_alpha=1.0, - postnet_loss_alpha=1.0, - postnet_diff_spec_alpha=1.0, - decoder_diff_spec_alpha=1.0, - decoder_ssim_alpha=1.0, - postnet_ssim_alpha=1.0, -) - -ap = AudioProcessor(**config.audio.to_dict()) - -tokenizer, config = TTSTokenizer.init_from_config(config) - -train_samples, eval_samples = load_tts_samples(dataset_config, eval_split=True) - -model = Tacotron2(config, ap, tokenizer, speaker_manager=None) - -trainer = Trainer( - TrainerArgs(), - config, - output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, - training_assets={"audio_processor": ap}, -) - -trainer.fit() diff --git a/TTS/recipes/kokoro/tacotron2-DDC/run.sh b/TTS/recipes/kokoro/tacotron2-DDC/run.sh deleted file mode 100644 index 69800cf7b4e9b518a352191498ec50e44af86f90..0000000000000000000000000000000000000000 --- a/TTS/recipes/kokoro/tacotron2-DDC/run.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash -# take the scripts's parent's directory to prefix all the output paths. -RUN_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )" -CORPUS=kokoro-speech-v1_1-small -echo $RUN_DIR -if [ \! -d $RUN_DIR/$CORPUS ] ; then - echo "$RUN_DIR/$CORPUS doesn't exist." - echo "Follow the instruction of https://github.com/kaiidams/Kokoro-Speech-Dataset to make the corpus." - exit 1 -fi -# create train-val splits -shuf $RUN_DIR/$CORPUS/metadata.csv > $RUN_DIR/$CORPUS/metadata_shuf.csv -head -n 8000 $RUN_DIR/$CORPUS/metadata_shuf.csv > $RUN_DIR/$CORPUS/metadata_train.csv -tail -n 812 $RUN_DIR/$CORPUS/metadata_shuf.csv > $RUN_DIR/$CORPUS/metadata_val.csv -# compute dataset mean and variance for normalization -python TTS/bin/compute_statistics.py $RUN_DIR/tacotron2-DDC.json $RUN_DIR/scale_stats.npy --data_path $RUN_DIR/$CORPUS/wavs/ -# training .... -# change the GPU id if needed -CUDA_VISIBLE_DEVICES="0" python TTS/bin/train_tts.py --config_path $RUN_DIR/tacotron2-DDC.json \ - --coqpit.output_path $RUN_DIR \ - --coqpit.datasets.0.path $RUN_DIR/$CORPUS \ - --coqpit.audio.stats_path $RUN_DIR/scale_stats.npy \ - --coqpit.phoneme_cache_path $RUN_DIR/phoneme_cache \ \ No newline at end of file diff --git a/TTS/recipes/kokoro/tacotron2-DDC/tacotron2-DDC.json b/TTS/recipes/kokoro/tacotron2-DDC/tacotron2-DDC.json deleted file mode 100644 index c2e526f46c53dc6342bc67b74740a55358c33652..0000000000000000000000000000000000000000 --- a/TTS/recipes/kokoro/tacotron2-DDC/tacotron2-DDC.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "datasets": [ - { - "formatter": "kokoro", - "path": "DEFINE THIS", - "meta_file_train": "metadata.csv", - "meta_file_val": null - } - ], - "audio": { - "fft_size": 1024, - "win_length": 1024, - "hop_length": 256, - "frame_length_ms": null, - "frame_shift_ms": null, - "sample_rate": 22050, - "preemphasis": 0.0, - "ref_level_db": 20, - "do_trim_silence": true, - "trim_db": 60, - "power": 1.5, - "griffin_lim_iters": 60, - "num_mels": 80, - "mel_fmin": 50.0, - "mel_fmax": 7600.0, - "spec_gain": 1, - "signal_norm": true, - "min_level_db": -100, - "symmetric_norm": true, - "max_norm": 4.0, - "clip_norm": true, - "stats_path": "scale_stats.npy" - }, - "gst":{ - "gst_style_input": null, - - - - "gst_embedding_dim": 512, - "gst_num_heads": 4, - "gst_style_tokens": 10, - "gst_use_speaker_embedding": false - }, - "model": "Tacotron2", - "run_name": "kokoro-ddc", - "run_description": "tacotron2 with DDC and differential spectral loss.", - "batch_size": 32, - "eval_batch_size": 16, - "mixed_precision": true, - "distributed": { - "backend": "nccl", - "url": "tcp:\/\/localhost:54321" - }, - "reinit_layers": [], - "loss_masking": true, - "decoder_loss_alpha": 0.5, - "postnet_loss_alpha": 0.25, - "postnet_diff_spec_alpha": 0.25, - "decoder_diff_spec_alpha": 0.25, - "decoder_ssim_alpha": 0.5, - "postnet_ssim_alpha": 0.25, - "ga_alpha": 5.0, - "stopnet_pos_weight": 15.0, - "run_eval": true, - "test_delay_epochs": 10, - "test_sentences_file": null, - "noam_schedule": false, - "grad_clip": 1.0, - "epochs": 1000, - "lr": 0.0001, - "wd": 0.000001, - "warmup_steps": 4000, - "seq_len_norm": false, - "memory_size": -1, - "prenet_type": "original", - "prenet_dropout": true, - "attention_type": "original", - "windowing": false, - "use_forward_attn": false, - "forward_attn_mask": false, - "transition_agent": false, - "location_attn": true, - "bidirectional_decoder": false, - "double_decoder_consistency": true, - "ddc_r": 7, - "attention_heads": 4, - "attention_norm": "sigmoid", - "r": 7, - "gradual_training": [[0, 7, 64], [1, 5, 64], [50000, 3, 32], [130000, 2, 32], [290000, 1, 32]], - "stopnet": true, - "separate_stopnet": true, - "print_step": 25, - "tb_plot_step": 100, - "print_eval": false, - "save_step": 10000, - "checkpoint": true, - "keep_all_best": false, - "keep_after": 10000, - "tb_model_param_stats": false, - "text_cleaner": "basic_cleaners", - "enable_eos_bos_chars": false, - "num_loader_workers": 4, - "num_val_loader_workers": 4, - "batch_group_size": 4, - "min_seq_len": 6, - "max_seq_len": 153, - "compute_input_seq_cache": false, - "use_noise_augment": true, - "output_path": "DEFINE THIS", - "phoneme_cache_path": "DEFINE THIS", - "use_phonemes": true, - "phoneme_language": "ja-jp", - "characters": { - "pad": "_", - "eos": "~", - "bos": "^", - "characters": "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!'(),-.:;? ", - "punctuations": "!'(),-.:;? ", - "phonemes": "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" - }, - "use_speaker_embedding": false, - "use_gst": false, - "use_external_speaker_embedding_file": false, - "external_speaker_embedding_file": "../../speakers-vctk-en.json" -} \ No newline at end of file diff --git a/TTS/recipes/ljspeech/README.md b/TTS/recipes/ljspeech/README.md deleted file mode 100644 index 94508a7f2ecd7d161b16997e415ed4c4935a39f2..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/README.md +++ /dev/null @@ -1,19 +0,0 @@ -# 🐸💬 TTS LJspeech Recipes - -For running the recipes - -1. Download the LJSpeech dataset here either manually from [its official website](https://keithito.com/LJ-Speech-Dataset/) or using ```download_ljspeech.sh```. -2. Go to your desired model folder and run the training. - - Running Python files. (Choose the desired GPU ID for your run and set ```CUDA_VISIBLE_DEVICES```) - ```terminal - CUDA_VISIBLE_DEVICES="0" python train_modelX.py - ``` - - Running bash scripts. - ```terminal - bash run.sh - ``` - -💡 Note that these runs are just templates to help you start training your first model. They are not optimized for the best -result. Double-check the configurations and feel free to share your experiments to find better parameters together 💪. diff --git a/TTS/recipes/ljspeech/align_tts/train_aligntts.py b/TTS/recipes/ljspeech/align_tts/train_aligntts.py deleted file mode 100644 index 451114add2eb40d4d466be637d862ac8f7eb897d..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/align_tts/train_aligntts.py +++ /dev/null @@ -1,70 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.tts.configs.align_tts_config import AlignTTSConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.align_tts import AlignTTS -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) - -# init configs -dataset_config = BaseDatasetConfig( - formatter="ljspeech", meta_file_train="metadata.csv", path=os.path.join(output_path, "../LJSpeech-1.1/") -) -config = AlignTTSConfig( - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="english_cleaners", - use_phonemes=False, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - print_step=25, - print_eval=True, - mixed_precision=False, - output_path=output_path, - datasets=[dataset_config], -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init model -model = AlignTTS(config, ap, tokenizer) - -# INITIALIZE THE TRAINER -# Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, -# distributed training, etc. -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -# AND... 3,2,1... 🚀 -trainer.fit() diff --git a/TTS/recipes/ljspeech/delightful_tts/train_delightful_tts.py b/TTS/recipes/ljspeech/delightful_tts/train_delightful_tts.py deleted file mode 100644 index 81e40c84aed772f768f91218b45446e669c2aa91..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/delightful_tts/train_delightful_tts.py +++ /dev/null @@ -1,84 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseDatasetConfig -from TTS.tts.configs.delightful_tts_config import DelightfulTtsAudioConfig, DelightfulTTSConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.delightful_tts import DelightfulTTS, DelightfulTtsArgs, VocoderConfig -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio.processor import AudioProcessor - -data_path = "" -output_path = os.path.dirname(os.path.abspath(__file__)) - -dataset_config = BaseDatasetConfig( - dataset_name="ljspeech", formatter="ljspeech", meta_file_train="metadata.csv", path=data_path -) - -audio_config = DelightfulTtsAudioConfig() -model_args = DelightfulTtsArgs() - -vocoder_config = VocoderConfig() - -delightful_tts_config = DelightfulTTSConfig( - run_name="delightful_tts_ljspeech", - run_description="Train like in delightful tts paper.", - model_args=model_args, - audio=audio_config, - vocoder=vocoder_config, - batch_size=32, - eval_batch_size=16, - num_loader_workers=10, - num_eval_loader_workers=10, - precompute_num_workers=10, - batch_group_size=2, - compute_input_seq_cache=True, - compute_f0=True, - f0_cache_path=os.path.join(output_path, "f0_cache"), - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - print_step=50, - print_eval=False, - mixed_precision=True, - output_path=output_path, - datasets=[dataset_config], - start_by_longest=False, - eval_split_size=0.1, - binary_align_loss_alpha=0.0, - use_attn_priors=False, - lr_gen=4e-1, - lr=4e-1, - lr_disc=4e-1, - max_text_len=130, -) - -tokenizer, config = TTSTokenizer.init_from_config(delightful_tts_config) - -ap = AudioProcessor.init_from_config(config) - - -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -model = DelightfulTTS(ap=ap, config=config, tokenizer=tokenizer, speaker_manager=None) - -trainer = Trainer( - TrainerArgs(), - config, - output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, -) - -trainer.fit() diff --git a/TTS/recipes/ljspeech/download_ljspeech.sh b/TTS/recipes/ljspeech/download_ljspeech.sh deleted file mode 100644 index 9468988a9928708d2d1792afeacebd6e0c4cb64a..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/download_ljspeech.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash -# take the scripts's parent's directory to prefix all the output paths. -RUN_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )" -echo $RUN_DIR -# download LJSpeech dataset -wget http://data.keithito.com/data/speech/LJSpeech-1.1.tar.bz2 -# extract -tar -xjf LJSpeech-1.1.tar.bz2 -# create train-val splits -shuf LJSpeech-1.1/metadata.csv > LJSpeech-1.1/metadata_shuf.csv -head -n 12000 LJSpeech-1.1/metadata_shuf.csv > LJSpeech-1.1/metadata_train.csv -tail -n 1100 LJSpeech-1.1/metadata_shuf.csv > LJSpeech-1.1/metadata_val.csv -mv LJSpeech-1.1 $RUN_DIR/recipes/ljspeech/ -rm LJSpeech-1.1.tar.bz2 \ No newline at end of file diff --git a/TTS/recipes/ljspeech/fast_pitch/train_fast_pitch.py b/TTS/recipes/ljspeech/fast_pitch/train_fast_pitch.py deleted file mode 100644 index 055526b1bcea41c646e841baa556b71a71da7487..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/fast_pitch/train_fast_pitch.py +++ /dev/null @@ -1,100 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseAudioConfig, BaseDatasetConfig -from TTS.tts.configs.fast_pitch_config import FastPitchConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.forward_tts import ForwardTTS -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor -from TTS.utils.manage import ModelManager - -output_path = os.path.dirname(os.path.abspath(__file__)) - -# init configs -dataset_config = BaseDatasetConfig( - formatter="ljspeech", - meta_file_train="metadata.csv", - # meta_file_attn_mask=os.path.join(output_path, "../LJSpeech-1.1/metadata_attn_mask.txt"), - path=os.path.join(output_path, "../LJSpeech-1.1/"), -) - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = FastPitchConfig( - run_name="fast_pitch_ljspeech", - audio=audio_config, - batch_size=32, - eval_batch_size=16, - num_loader_workers=8, - num_eval_loader_workers=4, - compute_input_seq_cache=True, - compute_f0=True, - f0_cache_path=os.path.join(output_path, "f0_cache"), - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - precompute_num_workers=4, - print_step=50, - print_eval=False, - mixed_precision=False, - max_seq_len=500000, - output_path=output_path, - datasets=[dataset_config], -) - -# compute alignments -if not config.model_args.use_aligner: - manager = ModelManager() - model_path, config_path, _ = manager.download_model("tts_models/en/ljspeech/tacotron2-DCA") - # TODO: make compute_attention python callable - os.system( - f"python TTS/bin/compute_attention_masks.py --model_path {model_path} --config_path {config_path} --dataset ljspeech --dataset_metafile metadata.csv --data_path ./recipes/ljspeech/LJSpeech-1.1/ --use_cuda true" - ) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init the model -model = ForwardTTS(config, ap, tokenizer, speaker_manager=None) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) -trainer.fit() diff --git a/TTS/recipes/ljspeech/fast_speech/train_fast_speech.py b/TTS/recipes/ljspeech/fast_speech/train_fast_speech.py deleted file mode 100644 index 8c9a272e81655dddf7543a8574e8969836115c3a..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/fast_speech/train_fast_speech.py +++ /dev/null @@ -1,99 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config import BaseAudioConfig, BaseDatasetConfig -from TTS.tts.configs.fast_speech_config import FastSpeechConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.forward_tts import ForwardTTS -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor -from TTS.utils.manage import ModelManager - -output_path = os.path.dirname(os.path.abspath(__file__)) - -# init configs -dataset_config = BaseDatasetConfig( - formatter="ljspeech", - meta_file_train="metadata.csv", - # meta_file_attn_mask=os.path.join(output_path, "../LJSpeech-1.1/metadata_attn_mask.txt"), - path=os.path.join(output_path, "../LJSpeech-1.1/"), -) - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = FastSpeechConfig( - run_name="fast_speech_ljspeech", - audio=audio_config, - batch_size=32, - eval_batch_size=16, - num_loader_workers=8, - num_eval_loader_workers=4, - compute_input_seq_cache=True, - compute_f0=False, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - precompute_num_workers=8, - print_step=50, - print_eval=False, - mixed_precision=False, - max_seq_len=500000, - output_path=output_path, - datasets=[dataset_config], -) - -# compute alignments -if not config.model_args.use_aligner: - manager = ModelManager() - model_path, config_path, _ = manager.download_model("tts_models/en/ljspeech/tacotron2-DCA") - # TODO: make compute_attention python callable - os.system( - f"python TTS/bin/compute_attention_masks.py --model_path {model_path} --config_path {config_path} --dataset ljspeech --dataset_metafile metadata.csv --data_path ./recipes/ljspeech/LJSpeech-1.1/ --use_cuda true" - ) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init the model -model = ForwardTTS(config, ap, tokenizer) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) -trainer.fit() diff --git a/TTS/recipes/ljspeech/fastspeech2/train_fastspeech2.py b/TTS/recipes/ljspeech/fastspeech2/train_fastspeech2.py deleted file mode 100644 index 93737dba7f25e1383c8238e9a39ed47465cfdb48..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/fastspeech2/train_fastspeech2.py +++ /dev/null @@ -1,102 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseAudioConfig, BaseDatasetConfig -from TTS.tts.configs.fastspeech2_config import Fastspeech2Config -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.forward_tts import ForwardTTS -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor -from TTS.utils.manage import ModelManager - -output_path = os.path.dirname(os.path.abspath(__file__)) - -# init configs -dataset_config = BaseDatasetConfig( - formatter="ljspeech", - meta_file_train="metadata.csv", - # meta_file_attn_mask=os.path.join(output_path, "../LJSpeech-1.1/metadata_attn_mask.txt"), - path=os.path.join(output_path, "../LJSpeech-1.1/"), -) - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = Fastspeech2Config( - run_name="fastspeech2_ljspeech", - audio=audio_config, - batch_size=32, - eval_batch_size=16, - num_loader_workers=8, - num_eval_loader_workers=4, - compute_input_seq_cache=True, - compute_f0=True, - f0_cache_path=os.path.join(output_path, "f0_cache"), - compute_energy=True, - energy_cache_path=os.path.join(output_path, "energy_cache"), - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - precompute_num_workers=4, - print_step=50, - print_eval=False, - mixed_precision=False, - max_seq_len=500000, - output_path=output_path, - datasets=[dataset_config], -) - -# compute alignments -if not config.model_args.use_aligner: - manager = ModelManager() - model_path, config_path, _ = manager.download_model("tts_models/en/ljspeech/tacotron2-DCA") - # TODO: make compute_attention python callable - os.system( - f"python TTS/bin/compute_attention_masks.py --model_path {model_path} --config_path {config_path} --dataset ljspeech --dataset_metafile metadata.csv --data_path ./recipes/ljspeech/LJSpeech-1.1/ --use_cuda true" - ) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init the model -model = ForwardTTS(config, ap, tokenizer, speaker_manager=None) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) -trainer.fit() diff --git a/TTS/recipes/ljspeech/glow_tts/train_glowtts.py b/TTS/recipes/ljspeech/glow_tts/train_glowtts.py deleted file mode 100644 index 9eb188f8a4db42c6868bdf2e2cf8bbbeedb97cdd..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/glow_tts/train_glowtts.py +++ /dev/null @@ -1,84 +0,0 @@ -import os - -# Trainer: Where the ✨️ happens. -# TrainingArgs: Defines the set of arguments of the Trainer. -from trainer import Trainer, TrainerArgs - -# GlowTTSConfig: all model related values for training, validating and testing. -from TTS.tts.configs.glow_tts_config import GlowTTSConfig - -# BaseDatasetConfig: defines name, formatter and path of the dataset. -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.glow_tts import GlowTTS -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -# we use the same path as this script as our training folder. -output_path = os.path.dirname(os.path.abspath(__file__)) - -# DEFINE DATASET CONFIG -# Set LJSpeech as our target dataset and define its path. -# You can also use a simple Dict to define the dataset and pass it to your custom formatter. -dataset_config = BaseDatasetConfig( - formatter="ljspeech", meta_file_train="metadata.csv", path=os.path.join(output_path, "../LJSpeech-1.1/") -) - -# INITIALIZE THE TRAINING CONFIGURATION -# Configure the model. Every config class inherits the BaseTTSConfig. -config = GlowTTSConfig( - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - print_step=25, - print_eval=False, - mixed_precision=True, - output_path=output_path, - datasets=[dataset_config], -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# INITIALIZE THE MODEL -# Models take a config object and a speaker manager as input -# Config defines the details of the model like the number of layers, the size of the embedding, etc. -# Speaker manager is used by multi-speaker models. -model = GlowTTS(config, ap, tokenizer, speaker_manager=None) - -# INITIALIZE THE TRAINER -# Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, -# distributed training, etc. -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -# AND... 3,2,1... 🚀 -trainer.fit() diff --git a/TTS/recipes/ljspeech/hifigan/train_hifigan.py b/TTS/recipes/ljspeech/hifigan/train_hifigan.py deleted file mode 100644 index b4cbae63edc228f755375d38e7a117ff76f2a785..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/hifigan/train_hifigan.py +++ /dev/null @@ -1,46 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.configs import HifiganConfig -from TTS.vocoder.datasets.preprocess import load_wav_data -from TTS.vocoder.models.gan import GAN - -output_path = os.path.dirname(os.path.abspath(__file__)) - -config = HifiganConfig( - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=5, - epochs=1000, - seq_len=8192, - pad_short=2000, - use_noise_augment=True, - eval_split_size=10, - print_step=25, - print_eval=False, - mixed_precision=False, - lr_gen=1e-4, - lr_disc=1e-4, - data_path=os.path.join(output_path, "../LJSpeech-1.1/wavs/"), - output_path=output_path, -) - -# init audio processor -ap = AudioProcessor(**config.audio.to_dict()) - -# load training samples -eval_samples, train_samples = load_wav_data(config.data_path, config.eval_split_size) - -# init model -model = GAN(config, ap) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) -trainer.fit() diff --git a/TTS/recipes/ljspeech/multiband_melgan/train_multiband_melgan.py b/TTS/recipes/ljspeech/multiband_melgan/train_multiband_melgan.py deleted file mode 100644 index 225f5a302f349be2f2069eeb10cd4b8ab6645eb0..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/multiband_melgan/train_multiband_melgan.py +++ /dev/null @@ -1,46 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.configs import MultibandMelganConfig -from TTS.vocoder.datasets.preprocess import load_wav_data -from TTS.vocoder.models.gan import GAN - -output_path = os.path.dirname(os.path.abspath(__file__)) - -config = MultibandMelganConfig( - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=5, - epochs=1000, - seq_len=8192, - pad_short=2000, - use_noise_augment=True, - eval_split_size=10, - print_step=25, - print_eval=False, - mixed_precision=False, - lr_gen=1e-4, - lr_disc=1e-4, - data_path=os.path.join(output_path, "../LJSpeech-1.1/wavs/"), - output_path=output_path, -) - -# init audio processor -ap = AudioProcessor(**config.audio.to_dict()) - -# load training samples -eval_samples, train_samples = load_wav_data(config.data_path, config.eval_split_size) - -# init model -model = GAN(config, ap) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) -trainer.fit() diff --git a/TTS/recipes/ljspeech/neuralhmm_tts/train_neuralhmmtts.py b/TTS/recipes/ljspeech/neuralhmm_tts/train_neuralhmmtts.py deleted file mode 100644 index 28d37799750b7115be9a24c4a947526fed9429fe..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/neuralhmm_tts/train_neuralhmmtts.py +++ /dev/null @@ -1,96 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.neuralhmm_tts_config import NeuralhmmTTSConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.neuralhmm_tts import NeuralhmmTTS -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) - -# init configs -dataset_config = BaseDatasetConfig( - formatter="ljspeech", meta_file_train="metadata.csv", path=os.path.join("data", "LJSpeech-1.1/") -) - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = NeuralhmmTTSConfig( # This is the config that is saved for the future use - run_name="neuralhmmtts_ljspeech", - audio=audio_config, - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - precompute_num_workers=8, - mel_statistics_parameter_path=os.path.join(output_path, "lj_parameters.pt"), - force_generate_statistics=False, - print_step=1, - print_eval=True, - mixed_precision=True, - output_path=output_path, - datasets=[dataset_config], -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# INITIALIZE THE MODEL -# Models take a config object and a speaker manager as input -# Config defines the details of the model like the number of layers, the size of the embedding, etc. -# Speaker manager is used by multi-speaker models. -model = NeuralhmmTTS(config, ap, tokenizer) - - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), - config, - output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, - gpu=1, -) -trainer.fit() diff --git a/TTS/recipes/ljspeech/overflow/lj_parameters.pt b/TTS/recipes/ljspeech/overflow/lj_parameters.pt deleted file mode 100644 index 625d0e4b475641e304487f911996d21ba0ad0e10..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/overflow/lj_parameters.pt +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:67dee2d73e7df7b1d8621a06447580cbb604823d665f4fd125596865f79b296a -size 507 diff --git a/TTS/recipes/ljspeech/overflow/train_overflow.py b/TTS/recipes/ljspeech/overflow/train_overflow.py deleted file mode 100644 index e05e399d19b1d0005df9496169fd190749d12876..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/overflow/train_overflow.py +++ /dev/null @@ -1,96 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.overflow_config import OverflowConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.overflow import Overflow -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) - -# init configs -dataset_config = BaseDatasetConfig( - formatter="ljspeech", meta_file_train="metadata.csv", path=os.path.join("data", "LJSpeech-1.1/") -) - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = OverflowConfig( # This is the config that is saved for the future use - run_name="overflow_ljspeech", - audio=audio_config, - batch_size=30, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - precompute_num_workers=8, - mel_statistics_parameter_path=os.path.join(output_path, "lj_parameters.pt"), - force_generate_statistics=False, - print_step=1, - print_eval=True, - mixed_precision=True, - output_path=output_path, - datasets=[dataset_config], -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# INITIALIZE THE MODEL -# Models take a config object and a speaker manager as input -# Config defines the details of the model like the number of layers, the size of the embedding, etc. -# Speaker manager is used by multi-speaker models. -model = Overflow(config, ap, tokenizer) - - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), - config, - output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, - gpu=1, -) -trainer.fit() diff --git a/TTS/recipes/ljspeech/speedy_speech/train_speedy_speech.py b/TTS/recipes/ljspeech/speedy_speech/train_speedy_speech.py deleted file mode 100644 index ed282aed962ddcea64b395c206fca5659f72e3b2..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/speedy_speech/train_speedy_speech.py +++ /dev/null @@ -1,87 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config import BaseAudioConfig, BaseDatasetConfig -from TTS.tts.configs.speedy_speech_config import SpeedySpeechConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.forward_tts import ForwardTTS -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) -dataset_config = BaseDatasetConfig( - formatter="ljspeech", meta_file_train="metadata.csv", path=os.path.join(output_path, "../LJSpeech-1.1/") -) - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = SpeedySpeechConfig( - run_name="speedy_speech_ljspeech", - audio=audio_config, - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - compute_input_seq_cache=True, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - precompute_num_workers=4, - print_step=50, - print_eval=False, - mixed_precision=False, - max_seq_len=500000, - output_path=output_path, - datasets=[dataset_config], -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init model -model = ForwardTTS(config, ap, tokenizer) - -# INITIALIZE THE TRAINER -# Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, -# distributed training, etc. -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -# AND... 3,2,1... 🚀 -trainer.fit() diff --git a/TTS/recipes/ljspeech/tacotron2-Capacitron/train_capacitron_t2.py b/TTS/recipes/ljspeech/tacotron2-Capacitron/train_capacitron_t2.py deleted file mode 100644 index f1ae2bd5c584ff5d10d19ca7ed3a5154c49cf9b7..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/tacotron2-Capacitron/train_capacitron_t2.py +++ /dev/null @@ -1,114 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig, CapacitronVAEConfig -from TTS.tts.configs.tacotron2_config import Tacotron2Config -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.tacotron2 import Tacotron2 -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) - -data_path = "/srv/data/" - -# Using LJSpeech like dataset processing for the blizzard dataset -dataset_config = BaseDatasetConfig( - formatter="ljspeech", - meta_file_train="metadata.csv", - path=data_path, -) - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=11025, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -# Using the standard Capacitron config -capacitron_config = CapacitronVAEConfig(capacitron_VAE_loss_alpha=1.0, capacitron_capacity=50) - -config = Tacotron2Config( - run_name="Capacitron-Tacotron2", - audio=audio_config, - capacitron_vae=capacitron_config, - use_capacitron_vae=True, - batch_size=128, # Tune this to your gpu - max_audio_len=8 * 22050, # Tune this to your gpu - min_audio_len=1 * 22050, - eval_batch_size=16, - num_loader_workers=8, - num_eval_loader_workers=8, - precompute_num_workers=24, - run_eval=True, - test_delay_epochs=25, - ga_alpha=0.0, - r=2, - optimizer="CapacitronOptimizer", - optimizer_params={"RAdam": {"betas": [0.9, 0.998], "weight_decay": 1e-6}, "SGD": {"lr": 1e-5, "momentum": 0.9}}, - attention_type="dynamic_convolution", - grad_clip=0.0, # Important! We overwrite the standard grad_clip with capacitron_grad_clip - double_decoder_consistency=False, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phonemizer="espeak", - phoneme_cache_path=os.path.join(data_path, "phoneme_cache"), - stopnet_pos_weight=15, - print_step=25, - print_eval=True, - mixed_precision=False, - seq_len_norm=True, - output_path=output_path, - datasets=[dataset_config], - lr=1e-3, - lr_scheduler="StepwiseGradualLR", - lr_scheduler_params={ - "gradual_learning_rates": [ - [0, 1e-3], - [2e4, 5e-4], - [4e5, 3e-4], - [6e4, 1e-4], - [8e4, 5e-5], - ] - }, - scheduler_after_epoch=False, # scheduler doesn't work without this flag - # Need to experiment with these below for capacitron - loss_masking=False, - decoder_loss_alpha=1.0, - postnet_loss_alpha=1.0, - postnet_diff_spec_alpha=0.0, - decoder_diff_spec_alpha=0.0, - decoder_ssim_alpha=0.0, - postnet_ssim_alpha=0.0, -) - -ap = AudioProcessor(**config.audio.to_dict()) - -tokenizer, config = TTSTokenizer.init_from_config(config) - -train_samples, eval_samples = load_tts_samples(dataset_config, eval_split=True) - -model = Tacotron2(config, ap, tokenizer, speaker_manager=None) - -trainer = Trainer( - TrainerArgs(), - config, - output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, - training_assets={"audio_processor": ap}, -) - -trainer.fit() diff --git a/TTS/recipes/ljspeech/tacotron2-DCA/train_tacotron_dca.py b/TTS/recipes/ljspeech/tacotron2-DCA/train_tacotron_dca.py deleted file mode 100644 index d9836f56ad5d47f801d7fc4a2fdf08dd0c78c7a1..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/tacotron2-DCA/train_tacotron_dca.py +++ /dev/null @@ -1,101 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.configs.tacotron2_config import Tacotron2Config -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.tacotron2 import Tacotron2 -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -# from TTS.tts.datasets.tokenizer import Tokenizer - -output_path = os.path.dirname(os.path.abspath(__file__)) - -# init configs -dataset_config = BaseDatasetConfig( - formatter="ljspeech", meta_file_train="metadata.csv", path=os.path.join(output_path, "../LJSpeech-1.1/") -) - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = Tacotron2Config( # This is the config that is saved for the future use - audio=audio_config, - batch_size=64, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - ga_alpha=0.0, - decoder_loss_alpha=0.25, - postnet_loss_alpha=0.25, - postnet_diff_spec_alpha=0, - decoder_diff_spec_alpha=0, - decoder_ssim_alpha=0, - postnet_ssim_alpha=0, - r=2, - attention_type="dynamic_convolution", - double_decoder_consistency=False, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - print_step=25, - print_eval=True, - mixed_precision=False, - output_path=output_path, - datasets=[dataset_config], -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# INITIALIZE THE MODEL -# Models take a config object and a speaker manager as input -# Config defines the details of the model like the number of layers, the size of the embedding, etc. -# Speaker manager is used by multi-speaker models. -model = Tacotron2(config, ap, tokenizer) - -# INITIALIZE THE TRAINER -# Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, -# distributed training, etc. -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -# AND... 3,2,1... 🚀 -trainer.fit() diff --git a/TTS/recipes/ljspeech/tacotron2-DDC/train_tacotron_ddc.py b/TTS/recipes/ljspeech/tacotron2-DDC/train_tacotron_ddc.py deleted file mode 100644 index f050ae3222ed4fd2fc0cd7e4d3c873c5ae4557c4..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/tacotron2-DDC/train_tacotron_ddc.py +++ /dev/null @@ -1,94 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.configs.tacotron2_config import Tacotron2Config -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.tacotron2 import Tacotron2 -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -# from TTS.tts.datasets.tokenizer import Tokenizer - -output_path = os.path.dirname(os.path.abspath(__file__)) - -# init configs -dataset_config = BaseDatasetConfig( - formatter="ljspeech", meta_file_train="metadata.csv", path=os.path.join(output_path, "../LJSpeech-1.1/") -) - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = Tacotron2Config( # This is the config that is saved for the future use - audio=audio_config, - batch_size=64, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - r=6, - gradual_training=[[0, 6, 64], [10000, 4, 32], [50000, 3, 32], [100000, 2, 32]], - double_decoder_consistency=True, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - precompute_num_workers=8, - print_step=25, - print_eval=True, - mixed_precision=False, - output_path=output_path, - datasets=[dataset_config], -) - -# init audio processor -ap = AudioProcessor(**config.audio.to_dict()) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# INITIALIZE THE MODEL -# Models take a config object and a speaker manager as input -# Config defines the details of the model like the number of layers, the size of the embedding, etc. -# Speaker manager is used by multi-speaker models. -model = Tacotron2(config, ap, tokenizer, speaker_manager=None) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) -trainer.fit() diff --git a/TTS/recipes/ljspeech/univnet/train.py b/TTS/recipes/ljspeech/univnet/train.py deleted file mode 100644 index 81d2b889b90cb888084d7229c424986f0e3118d4..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/univnet/train.py +++ /dev/null @@ -1,45 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.configs import UnivnetConfig -from TTS.vocoder.datasets.preprocess import load_wav_data -from TTS.vocoder.models.gan import GAN - -output_path = os.path.dirname(os.path.abspath(__file__)) -config = UnivnetConfig( - batch_size=64, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - seq_len=8192, - pad_short=2000, - use_noise_augment=True, - eval_split_size=10, - print_step=25, - print_eval=False, - mixed_precision=False, - lr_gen=1e-4, - lr_disc=1e-4, - data_path=os.path.join(output_path, "../LJSpeech-1.1/wavs/"), - output_path=output_path, -) - -# init audio processor -ap = AudioProcessor(**config.audio.to_dict()) - -# load training samples -eval_samples, train_samples = load_wav_data(config.data_path, config.eval_split_size) - -# init model -model = GAN(config, ap) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) -trainer.fit() diff --git a/TTS/recipes/ljspeech/vits_tts/train_vits.py b/TTS/recipes/ljspeech/vits_tts/train_vits.py deleted file mode 100644 index ba3265e3056e8cceb4f749d8d09554fdee83e13e..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/vits_tts/train_vits.py +++ /dev/null @@ -1,78 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.configs.vits_config import VitsConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.vits import Vits, VitsAudioConfig -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) -dataset_config = BaseDatasetConfig( - formatter="ljspeech", meta_file_train="metadata.csv", path=os.path.join(output_path, "../LJSpeech-1.1/") -) -audio_config = VitsAudioConfig( - sample_rate=22050, win_length=1024, hop_length=256, num_mels=80, mel_fmin=0, mel_fmax=None -) - -config = VitsConfig( - audio=audio_config, - run_name="vits_ljspeech", - batch_size=32, - eval_batch_size=16, - batch_group_size=5, - num_loader_workers=8, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - compute_input_seq_cache=True, - print_step=25, - print_eval=True, - mixed_precision=True, - output_path=output_path, - datasets=[dataset_config], - cudnn_benchmark=False, -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# config is updated with the default characters if not defined in the config. -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init model -model = Vits(config, ap, tokenizer, speaker_manager=None) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), - config, - output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, -) -trainer.fit() diff --git a/TTS/recipes/ljspeech/wavegrad/train_wavegrad.py b/TTS/recipes/ljspeech/wavegrad/train_wavegrad.py deleted file mode 100644 index 1abdf45d8759de249eafdd479c5e96b7f5f59b33..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/wavegrad/train_wavegrad.py +++ /dev/null @@ -1,49 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.configs import WavegradConfig -from TTS.vocoder.datasets.preprocess import load_wav_data -from TTS.vocoder.models.wavegrad import Wavegrad - -output_path = os.path.dirname(os.path.abspath(__file__)) -config = WavegradConfig( - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - seq_len=6144, - pad_short=2000, - use_noise_augment=True, - eval_split_size=50, - print_step=50, - print_eval=True, - mixed_precision=False, - data_path=os.path.join(output_path, "../LJSpeech-1.1/wavs/"), - output_path=output_path, -) - -# init audio processor -ap = AudioProcessor(**config.audio.to_dict()) - -# load training samples -eval_samples, train_samples = load_wav_data(config.data_path, config.eval_split_size) - -# init model -model = Wavegrad(config) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), - config, - output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, - training_assets={"audio_processor": ap}, -) -trainer.fit() diff --git a/TTS/recipes/ljspeech/wavernn/train_wavernn.py b/TTS/recipes/ljspeech/wavernn/train_wavernn.py deleted file mode 100644 index 640f50921888f4fd4a33a32e725b280a639170b6..0000000000000000000000000000000000000000 --- a/TTS/recipes/ljspeech/wavernn/train_wavernn.py +++ /dev/null @@ -1,51 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.configs import WavernnConfig -from TTS.vocoder.datasets.preprocess import load_wav_data -from TTS.vocoder.models.wavernn import Wavernn - -output_path = os.path.dirname(os.path.abspath(__file__)) -config = WavernnConfig( - batch_size=64, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=10000, - seq_len=1280, - pad_short=2000, - use_noise_augment=False, - eval_split_size=10, - print_step=25, - print_eval=True, - mixed_precision=False, - lr=1e-4, - grad_clip=4, - data_path=os.path.join(output_path, "../LJSpeech-1.1/wavs/"), - output_path=output_path, -) - -# init audio processor -ap = AudioProcessor(**config.audio.to_dict()) - -# load training samples -eval_samples, train_samples = load_wav_data(config.data_path, config.eval_split_size) - -# init model -model = Wavernn(config) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), - config, - output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, - training_assets={"audio_processor": ap}, -) -trainer.fit() diff --git a/TTS/recipes/multilingual/vits_tts/train_vits_tts.py b/TTS/recipes/multilingual/vits_tts/train_vits_tts.py deleted file mode 100644 index 89119aa1ff9321b8e8d185c8021f4a4c75b113c5..0000000000000000000000000000000000000000 --- a/TTS/recipes/multilingual/vits_tts/train_vits_tts.py +++ /dev/null @@ -1,129 +0,0 @@ -import os -from glob import glob - -from trainer import Trainer, TrainerArgs - -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.configs.vits_config import VitsConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.vits import CharactersConfig, Vits, VitsArgs, VitsAudioConfig -from TTS.tts.utils.languages import LanguageManager -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) - -mailabs_path = "/home/julian/workspace/mailabs/**" -dataset_paths = glob(mailabs_path) -dataset_config = [ - BaseDatasetConfig(formatter="mailabs", meta_file_train=None, path=path, language=path.split("/")[-1]) - for path in dataset_paths -] - -audio_config = VitsAudioConfig( - sample_rate=16000, - win_length=1024, - hop_length=256, - num_mels=80, - mel_fmin=0, - mel_fmax=None, -) - -vitsArgs = VitsArgs( - use_language_embedding=True, - embedded_language_dim=4, - use_speaker_embedding=True, - use_sdp=False, -) - -config = VitsConfig( - model_args=vitsArgs, - audio=audio_config, - run_name="vits_vctk", - use_speaker_embedding=True, - batch_size=32, - eval_batch_size=16, - batch_group_size=0, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="multilingual_cleaners", - use_phonemes=False, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - compute_input_seq_cache=True, - print_step=25, - use_language_weighted_sampler=True, - print_eval=False, - mixed_precision=False, - min_audio_len=32 * 256 * 4, - max_audio_len=160000, - output_path=output_path, - datasets=dataset_config, - characters=CharactersConfig( - characters_class="TTS.tts.models.vits.VitsCharacters", - pad="", - eos="", - bos="", - blank="", - characters="!¡'(),-.:;¿?abcdefghijklmnopqrstuvwxyzµßàáâäåæçèéêëìíîïñòóôöùúûüąćęłńœśşźżƒабвгдежзийклмнопрстуфхцчшщъыьэюяёєіїґӧ «°±µ»$%&‘’‚“`”„", - punctuations="!¡'(),-.:;¿? ", - phonemes=None, - ), - test_sentences=[ - [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "mary_ann", - None, - "en_US", - ], - [ - "Il m'a fallu beaucoup de temps pour d\u00e9velopper une voix, et maintenant que je l'ai, je ne vais pas me taire.", - "ezwa", - None, - "fr_FR", - ], - ["Ich finde, dieses Startup ist wirklich unglaublich.", "eva_k", None, "de_DE"], - ["Я думаю, что этот стартап действительно удивительный.", "oblomov", None, "ru_RU"], - ], -) - -# force the convertion of the custom characters to a config attribute -config.from_dict(config.to_dict()) - -# init audio processor -ap = AudioProcessor(**config.audio.to_dict()) - -# load training samples -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init speaker manager for multi-speaker training -# it maps speaker-id to speaker-name in the model and data-loader -speaker_manager = SpeakerManager() -speaker_manager.set_ids_from_data(train_samples + eval_samples, parse_key="speaker_name") -config.model_args.num_speakers = speaker_manager.num_speakers - -language_manager = LanguageManager(config=config) -config.model_args.num_languages = language_manager.num_languages - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# config is updated with the default characters if not defined in the config. -tokenizer, config = TTSTokenizer.init_from_config(config) - -# init model -model = Vits(config, ap, tokenizer, speaker_manager, language_manager) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) -trainer.fit() diff --git a/TTS/recipes/multilingual/vits_tts/train_vits_tts_phonemes.py b/TTS/recipes/multilingual/vits_tts/train_vits_tts_phonemes.py deleted file mode 100644 index 24e9e51a9428022cbc60750dcf1f6216a018a247..0000000000000000000000000000000000000000 --- a/TTS/recipes/multilingual/vits_tts/train_vits_tts_phonemes.py +++ /dev/null @@ -1,126 +0,0 @@ -import os -from glob import glob - -from trainer import Trainer, TrainerArgs - -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.configs.vits_config import VitsConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.vits import Vits, VitsArgs, VitsAudioConfig -from TTS.tts.utils.languages import LanguageManager -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = "/media/julian/Workdisk/train" - -mailabs_path = "/home/julian/workspace/mailabs/**" -dataset_paths = glob(mailabs_path) -dataset_config = [ - BaseDatasetConfig( - formatter="mailabs", - meta_file_train=None, - path=path, - language=path.split("/")[-1], # language code is the folder name - ) - for path in dataset_paths -] - -audio_config = VitsAudioConfig( - sample_rate=16000, - win_length=1024, - hop_length=256, - num_mels=80, - mel_fmin=0, - mel_fmax=None, -) - -vitsArgs = VitsArgs( - use_language_embedding=True, - embedded_language_dim=4, - use_speaker_embedding=True, - use_sdp=False, -) - -config = VitsConfig( - model_args=vitsArgs, - audio=audio_config, - run_name="vits_vctk", - use_speaker_embedding=True, - batch_size=32, - eval_batch_size=16, - batch_group_size=0, - num_loader_workers=12, - num_eval_loader_workers=12, - precompute_num_workers=12, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="multilingual_cleaners", - use_phonemes=True, - phoneme_language=None, - phonemizer="multi_phonemizer", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - compute_input_seq_cache=True, - print_step=25, - use_language_weighted_sampler=True, - print_eval=False, - mixed_precision=False, - min_audio_len=audio_config.sample_rate, - max_audio_len=audio_config.sample_rate * 10, - output_path=output_path, - datasets=dataset_config, - test_sentences=[ - [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "mary_ann", - None, - "en-us", - ], - [ - "Il m'a fallu beaucoup de temps pour d\u00e9velopper une voix, et maintenant que je l'ai, je ne vais pas me taire.", - "ezwa", - None, - "fr-fr", - ], - ["Ich finde, dieses Startup ist wirklich unglaublich.", "eva_k", None, "de-de"], - ["Я думаю, что этот стартап действительно удивительный.", "nikolaev", None, "ru"], - ], -) - -# force the convertion of the custom characters to a config attribute -config.from_dict(config.to_dict()) - -# init audio processor -ap = AudioProcessor(**config.audio.to_dict()) - -# load training samples -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init speaker manager for multi-speaker training -# it maps speaker-id to speaker-name in the model and data-loader -speaker_manager = SpeakerManager() -speaker_manager.set_ids_from_data(train_samples + eval_samples, parse_key="speaker_name") -config.model_args.num_speakers = speaker_manager.num_speakers - -language_manager = LanguageManager(config=config) -config.model_args.num_languages = language_manager.num_languages - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# config is updated with the default characters if not defined in the config. -tokenizer, config = TTSTokenizer.init_from_config(config) - -# init model -model = Vits(config, ap, tokenizer, speaker_manager, language_manager) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) -trainer.fit() diff --git a/TTS/recipes/thorsten_DE/README.md b/TTS/recipes/thorsten_DE/README.md deleted file mode 100644 index 3ef0dbaa8b631f8fc0e5e4d38422dcead94799eb..0000000000000000000000000000000000000000 --- a/TTS/recipes/thorsten_DE/README.md +++ /dev/null @@ -1,15 +0,0 @@ -# 🐸💬 TTS Thorsten Recipes - -For running the recipes you need the [Thorsten-Voice](https://github.com/thorstenMueller/Thorsten-Voice) dataset. - -You can download it manually from [the official website](https://www.thorsten-voice.de/) or use ```download_thorsten_de.sh``` alternatively running any of the **train_modelX.py**scripts will download the dataset if not already present. - -Then, go to your desired model folder and run the training. - - Running Python files. (Choose the desired GPU ID for your run and set ```CUDA_VISIBLE_DEVICES```) - ```terminal - CUDA_VISIBLE_DEVICES="0" python train_modelX.py - ``` - -💡 Note that these runs are just templates to help you start training your first model. They are not optimized for the best -result. Double-check the configurations and feel free to share your experiments to find better parameters together 💪. diff --git a/TTS/recipes/thorsten_DE/align_tts/train_aligntts.py b/TTS/recipes/thorsten_DE/align_tts/train_aligntts.py deleted file mode 100644 index 32cfd9967fa55a3bd60992f7bb409d6d388efa1b..0000000000000000000000000000000000000000 --- a/TTS/recipes/thorsten_DE/align_tts/train_aligntts.py +++ /dev/null @@ -1,84 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.tts.configs.align_tts_config import AlignTTSConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.align_tts import AlignTTS -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor -from TTS.utils.downloaders import download_thorsten_de - -output_path = os.path.dirname(os.path.abspath(__file__)) - -# init configs -dataset_config = BaseDatasetConfig( - formatter="thorsten", meta_file_train="metadata.csv", path=os.path.join(output_path, "../thorsten-de/") -) - -# download dataset if not already present -if not os.path.exists(dataset_config.path): - print("Downloading dataset") - download_thorsten_de(os.path.split(os.path.abspath(dataset_config.path))[0]) - -config = AlignTTSConfig( - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=False, - phoneme_language="de", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - print_step=25, - print_eval=True, - mixed_precision=False, - test_sentences=[ - "Es hat mich viel Zeit gekostet ein Stimme zu entwickeln, jetzt wo ich sie habe werde ich nicht mehr schweigen.", - "Sei eine Stimme, kein Echo.", - "Es tut mir Leid David. Das kann ich leider nicht machen.", - "Dieser Kuchen ist großartig. Er ist so lecker und feucht.", - "Vor dem 22. November 1963.", - ], - output_path=output_path, - datasets=[dataset_config], -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init model -model = AlignTTS(config, ap, tokenizer) - -# INITIALIZE THE TRAINER -# Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, -# distributed training, etc. -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -# AND... 3,2,1... 🚀 -trainer.fit() diff --git a/TTS/recipes/thorsten_DE/download_thorsten_DE.sh b/TTS/recipes/thorsten_DE/download_thorsten_DE.sh deleted file mode 100644 index 27809ce50741e4491338f1cf04cbff52df1e26d9..0000000000000000000000000000000000000000 --- a/TTS/recipes/thorsten_DE/download_thorsten_DE.sh +++ /dev/null @@ -1,21 +0,0 @@ -# create venv -python3 -m venv env -source .env/bin/activate -pip install pip --upgrade - -# download Thorsten_DE dataset -pip install gdown -gdown --id 1yKJM1LAOQpRVojKunD9r8WN_p5KzBxjc -O dataset.tgz -tar -xzf dataset.tgz - -# create train-val splits -shuf LJSpeech-1.1/metadata.csv > LJSpeech-1.1/metadata_shuf.csv -head -n 20668 LJSpeech-1.1/metadata_shuf.csv > LJSpeech-1.1/metadata_train.csv -tail -n 2000 LJSpeech-1.1/metadata_shuf.csv > LJSpeech-1.1/metadata_val.csv - -# rename dataset and remove archive -mv LJSpeech-1.1 thorsten-de -rm dataset.tgz - -# destry venv -rm -rf env diff --git a/TTS/recipes/thorsten_DE/glow_tts/train_glowtts.py b/TTS/recipes/thorsten_DE/glow_tts/train_glowtts.py deleted file mode 100644 index 00c67fb5d8c75afb80e6ed860dc0817525db8ff3..0000000000000000000000000000000000000000 --- a/TTS/recipes/thorsten_DE/glow_tts/train_glowtts.py +++ /dev/null @@ -1,97 +0,0 @@ -import os - -# Trainer: Where the ✨️ happens. -# TrainingArgs: Defines the set of arguments of the Trainer. -from trainer import Trainer, TrainerArgs - -# GlowTTSConfig: all model related values for training, validating and testing. -from TTS.tts.configs.glow_tts_config import GlowTTSConfig - -# BaseDatasetConfig: defines name, formatter and path of the dataset. -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.glow_tts import GlowTTS -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor -from TTS.utils.downloaders import download_thorsten_de - -# we use the same path as this script as our training folder. -output_path = os.path.dirname(os.path.abspath(__file__)) - -# DEFINE DATASET CONFIG -# Set LJSpeech as our target dataset and define its path. -# You can also use a simple Dict to define the dataset and pass it to your custom formatter. -dataset_config = BaseDatasetConfig( - formatter="thorsten", meta_file_train="metadata.csv", path=os.path.join(output_path, "../thorsten-de/") -) - -# download dataset if not already present -if not os.path.exists(dataset_config.path): - print("Downloading dataset") - download_thorsten_de(os.path.split(os.path.abspath(dataset_config.path))[0]) - -# INITIALIZE THE TRAINING CONFIGURATION -# Configure the model. Every config class inherits the BaseTTSConfig. -config = GlowTTSConfig( - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="de", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - print_step=25, - print_eval=False, - mixed_precision=True, - test_sentences=[ - "Es hat mich viel Zeit gekostet ein Stimme zu entwickeln, jetzt wo ich sie habe werde ich nicht mehr schweigen.", - "Sei eine Stimme, kein Echo.", - "Es tut mir Leid David. Das kann ich leider nicht machen.", - "Dieser Kuchen ist großartig. Er ist so lecker und feucht.", - "Vor dem 22. November 1963.", - ], - output_path=output_path, - datasets=[dataset_config], -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# INITIALIZE THE MODEL -# Models take a config object and a speaker manager as input -# Config defines the details of the model like the number of layers, the size of the embedding, etc. -# Speaker manager is used by multi-speaker models. -model = GlowTTS(config, ap, tokenizer, speaker_manager=None) - -# INITIALIZE THE TRAINER -# Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, -# distributed training, etc. -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -# AND... 3,2,1... 🚀 -trainer.fit() diff --git a/TTS/recipes/thorsten_DE/hifigan/train_hifigan.py b/TTS/recipes/thorsten_DE/hifigan/train_hifigan.py deleted file mode 100644 index b476780211154266bf3683b8657b40481bba1366..0000000000000000000000000000000000000000 --- a/TTS/recipes/thorsten_DE/hifigan/train_hifigan.py +++ /dev/null @@ -1,53 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.utils.audio import AudioProcessor -from TTS.utils.downloaders import download_thorsten_de -from TTS.vocoder.configs import HifiganConfig -from TTS.vocoder.datasets.preprocess import load_wav_data -from TTS.vocoder.models.gan import GAN - -output_path = os.path.dirname(os.path.abspath(__file__)) - -config = HifiganConfig( - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=5, - epochs=1000, - seq_len=8192, - pad_short=2000, - use_noise_augment=True, - eval_split_size=10, - print_step=25, - print_eval=False, - mixed_precision=False, - lr_gen=1e-4, - lr_disc=1e-4, - data_path=os.path.join(output_path, "../thorsten-de/wavs/"), - output_path=output_path, -) - -# download dataset if not already present -if not os.path.exists(config.data_path): - print("Downloading dataset") - download_path = os.path.abspath(os.path.join(os.path.abspath(config.data_path), "../../")) - download_thorsten_de(download_path) - -# init audio processor -ap = AudioProcessor(**config.audio.to_dict()) - -# load training samples -eval_samples, train_samples = load_wav_data(config.data_path, config.eval_split_size) - -# init model -model = GAN(config, ap) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) -trainer.fit() diff --git a/TTS/recipes/thorsten_DE/multiband_melgan/train_multiband_melgan.py b/TTS/recipes/thorsten_DE/multiband_melgan/train_multiband_melgan.py deleted file mode 100644 index 2951b1495a78fa7f0ded9dbd4201af88206267cf..0000000000000000000000000000000000000000 --- a/TTS/recipes/thorsten_DE/multiband_melgan/train_multiband_melgan.py +++ /dev/null @@ -1,53 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.utils.audio import AudioProcessor -from TTS.utils.downloaders import download_thorsten_de -from TTS.vocoder.configs import MultibandMelganConfig -from TTS.vocoder.datasets.preprocess import load_wav_data -from TTS.vocoder.models.gan import GAN - -output_path = os.path.dirname(os.path.abspath(__file__)) - -config = MultibandMelganConfig( - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=5, - epochs=1000, - seq_len=8192, - pad_short=2000, - use_noise_augment=True, - eval_split_size=10, - print_step=25, - print_eval=False, - mixed_precision=False, - lr_gen=1e-4, - lr_disc=1e-4, - data_path=os.path.join(output_path, "../thorsten-de/wavs/"), - output_path=output_path, -) - -# download dataset if not already present -if not os.path.exists(config.data_path): - print("Downloading dataset") - download_path = os.path.abspath(os.path.join(os.path.abspath(config.data_path), "../../")) - download_thorsten_de(download_path) - -# init audio processor -ap = AudioProcessor(**config.audio.to_dict()) - -# load training samples -eval_samples, train_samples = load_wav_data(config.data_path, config.eval_split_size) - -# init model -model = GAN(config, ap) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) -trainer.fit() diff --git a/TTS/recipes/thorsten_DE/speedy_speech/train_speedy_speech.py b/TTS/recipes/thorsten_DE/speedy_speech/train_speedy_speech.py deleted file mode 100644 index a3d0b9db2b3b2c2edeaf40b90b120117e79f5077..0000000000000000000000000000000000000000 --- a/TTS/recipes/thorsten_DE/speedy_speech/train_speedy_speech.py +++ /dev/null @@ -1,101 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config import BaseAudioConfig, BaseDatasetConfig -from TTS.tts.configs.speedy_speech_config import SpeedySpeechConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.forward_tts import ForwardTTS -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor -from TTS.utils.downloaders import download_thorsten_de - -output_path = os.path.dirname(os.path.abspath(__file__)) -dataset_config = BaseDatasetConfig( - formatter="thorsten", meta_file_train="metadata.csv", path=os.path.join(output_path, "../thorsten-de/") -) - -# download dataset if not already present -if not os.path.exists(dataset_config.path): - print("Downloading dataset") - download_thorsten_de(os.path.split(os.path.abspath(dataset_config.path))[0]) - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = SpeedySpeechConfig( - run_name="speedy_speech_thorsten-de", - audio=audio_config, - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - compute_input_seq_cache=True, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - min_audio_len=11050, # need to up min_audio_len to avois speedy speech error - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="de", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - precompute_num_workers=4, - print_step=50, - print_eval=False, - mixed_precision=False, - test_sentences=[ - "Es hat mich viel Zeit gekostet ein Stimme zu entwickeln, jetzt wo ich sie habe werde ich nicht mehr schweigen.", - "Sei eine Stimme, kein Echo.", - "Es tut mir Leid David. Das kann ich leider nicht machen.", - "Dieser Kuchen ist großartig. Er ist so lecker und feucht.", - "Vor dem 22. November 1963.", - ], - max_seq_len=500000, - output_path=output_path, - datasets=[dataset_config], -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init model -model = ForwardTTS(config, ap, tokenizer) - -# INITIALIZE THE TRAINER -# Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, -# distributed training, etc. -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -# AND... 3,2,1... 🚀 -trainer.fit() diff --git a/TTS/recipes/thorsten_DE/tacotron2-DDC/train_tacotron_ddc.py b/TTS/recipes/thorsten_DE/tacotron2-DDC/train_tacotron_ddc.py deleted file mode 100644 index bc0274f5af2a6c1096c89e41d8b2e359fe5432f6..0000000000000000000000000000000000000000 --- a/TTS/recipes/thorsten_DE/tacotron2-DDC/train_tacotron_ddc.py +++ /dev/null @@ -1,108 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.configs.tacotron2_config import Tacotron2Config -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.tacotron2 import Tacotron2 -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor -from TTS.utils.downloaders import download_thorsten_de - -# from TTS.tts.datasets.tokenizer import Tokenizer -output_path = os.path.dirname(os.path.abspath(__file__)) - -# init configs -dataset_config = BaseDatasetConfig( - formatter="thorsten", meta_file_train="metadata.csv", path=os.path.join(output_path, "../thorsten-de/") -) - -# download dataset if not already present -if not os.path.exists(dataset_config.path): - print("Downloading dataset") - download_thorsten_de(os.path.split(os.path.abspath(dataset_config.path))[0]) - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = Tacotron2Config( # This is the config that is saved for the future use - audio=audio_config, - batch_size=40, # BS of 40 and max length of 10s will use about 20GB of GPU memory - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - r=6, - gradual_training=[[0, 6, 64], [10000, 4, 32], [50000, 3, 32], [100000, 2, 32]], - double_decoder_consistency=True, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="de", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - precompute_num_workers=8, - print_step=25, - print_eval=True, - mixed_precision=False, - test_sentences=[ - "Es hat mich viel Zeit gekostet ein Stimme zu entwickeln, jetzt wo ich sie habe werde ich nicht mehr schweigen.", - "Sei eine Stimme, kein Echo.", - "Es tut mir Leid David. Das kann ich leider nicht machen.", - "Dieser Kuchen ist großartig. Er ist so lecker und feucht.", - "Vor dem 22. November 1963.", - ], - # max audio length of 10 seconds, feel free to increase if you got more than 20GB GPU memory - max_audio_len=22050 * 10, - output_path=output_path, - datasets=[dataset_config], -) - -# init audio processor -ap = AudioProcessor(**config.audio.to_dict()) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# INITIALIZE THE MODEL -# Models take a config object and a speaker manager as input -# Config defines the details of the model like the number of layers, the size of the embedding, etc. -# Speaker manager is used by multi-speaker models. -model = Tacotron2(config, ap, tokenizer, speaker_manager=None) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) -trainer.fit() diff --git a/TTS/recipes/thorsten_DE/univnet/train_univnet.py b/TTS/recipes/thorsten_DE/univnet/train_univnet.py deleted file mode 100644 index 7d82093d627cd6eea19df00f8828b1abc90aca27..0000000000000000000000000000000000000000 --- a/TTS/recipes/thorsten_DE/univnet/train_univnet.py +++ /dev/null @@ -1,52 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.utils.audio import AudioProcessor -from TTS.utils.downloaders import download_thorsten_de -from TTS.vocoder.configs import UnivnetConfig -from TTS.vocoder.datasets.preprocess import load_wav_data -from TTS.vocoder.models.gan import GAN - -output_path = os.path.dirname(os.path.abspath(__file__)) -config = UnivnetConfig( - batch_size=64, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - seq_len=8192, - pad_short=2000, - use_noise_augment=True, - eval_split_size=10, - print_step=25, - print_eval=False, - mixed_precision=False, - lr_gen=1e-4, - lr_disc=1e-4, - data_path=os.path.join(output_path, "../thorsten-de/wavs/"), - output_path=output_path, -) - -# download dataset if not already present -if not os.path.exists(config.data_path): - print("Downloading dataset") - download_path = os.path.abspath(os.path.join(os.path.abspath(config.data_path), "../../")) - download_thorsten_de(download_path) - -# init audio processor -ap = AudioProcessor(**config.audio.to_dict()) - -# load training samples -eval_samples, train_samples = load_wav_data(config.data_path, config.eval_split_size) - -# init model -model = GAN(config, ap) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) -trainer.fit() diff --git a/TTS/recipes/thorsten_DE/vits_tts/train_vits.py b/TTS/recipes/thorsten_DE/vits_tts/train_vits.py deleted file mode 100644 index 4ffa0f30f6d028f3b844144df6d3abf29835afaa..0000000000000000000000000000000000000000 --- a/TTS/recipes/thorsten_DE/vits_tts/train_vits.py +++ /dev/null @@ -1,96 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.configs.vits_config import VitsConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.vits import Vits, VitsAudioConfig -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor -from TTS.utils.downloaders import download_thorsten_de - -output_path = os.path.dirname(os.path.abspath(__file__)) -dataset_config = BaseDatasetConfig( - formatter="thorsten", meta_file_train="metadata.csv", path=os.path.join(output_path, "../thorsten-de/") -) - -# download dataset if not already present -if not os.path.exists(dataset_config.path): - print("Downloading dataset") - download_thorsten_de(os.path.split(os.path.abspath(dataset_config.path))[0]) - -audio_config = VitsAudioConfig( - sample_rate=22050, - win_length=1024, - hop_length=256, - num_mels=80, - mel_fmin=0, - mel_fmax=None, -) - -config = VitsConfig( - audio=audio_config, - run_name="vits_thorsten-de", - batch_size=32, - eval_batch_size=16, - batch_group_size=5, - num_loader_workers=0, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="de", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - compute_input_seq_cache=True, - print_step=25, - print_eval=True, - mixed_precision=True, - test_sentences=[ - "Es hat mich viel Zeit gekostet ein Stimme zu entwickeln, jetzt wo ich sie habe werde ich nicht mehr schweigen.", - "Sei eine Stimme, kein Echo.", - "Es tut mir Leid David. Das kann ich leider nicht machen.", - "Dieser Kuchen ist großartig. Er ist so lecker und feucht.", - "Vor dem 22. November 1963.", - ], - output_path=output_path, - datasets=[dataset_config], -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# config is updated with the default characters if not defined in the config. -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init model -model = Vits(config, ap, tokenizer, speaker_manager=None) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), - config, - output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, -) -trainer.fit() diff --git a/TTS/recipes/thorsten_DE/wavegrad/train_wavegrad.py b/TTS/recipes/thorsten_DE/wavegrad/train_wavegrad.py deleted file mode 100644 index e9d2c95c006f332bb05cb6b33577dece2285809f..0000000000000000000000000000000000000000 --- a/TTS/recipes/thorsten_DE/wavegrad/train_wavegrad.py +++ /dev/null @@ -1,56 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.utils.audio import AudioProcessor -from TTS.utils.downloaders import download_thorsten_de -from TTS.vocoder.configs import WavegradConfig -from TTS.vocoder.datasets.preprocess import load_wav_data -from TTS.vocoder.models.wavegrad import Wavegrad - -output_path = os.path.dirname(os.path.abspath(__file__)) -config = WavegradConfig( - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - seq_len=6144, - pad_short=2000, - use_noise_augment=True, - eval_split_size=50, - print_step=50, - print_eval=True, - mixed_precision=False, - data_path=os.path.join(output_path, "../thorsten-de/wavs/"), - output_path=output_path, -) - -# download dataset if not already present -if not os.path.exists(config.data_path): - print("Downloading dataset") - download_path = os.path.abspath(os.path.join(os.path.abspath(config.data_path), "../../")) - download_thorsten_de(download_path) - -# init audio processor -ap = AudioProcessor(**config.audio.to_dict()) - -# load training samples -eval_samples, train_samples = load_wav_data(config.data_path, config.eval_split_size) - -# init model -model = Wavegrad(config) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), - config, - output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, - training_assets={"audio_processor": ap}, -) -trainer.fit() diff --git a/TTS/recipes/thorsten_DE/wavernn/train_wavernn.py b/TTS/recipes/thorsten_DE/wavernn/train_wavernn.py deleted file mode 100644 index f2a283f745e9772856dd605798e87bd167053de5..0000000000000000000000000000000000000000 --- a/TTS/recipes/thorsten_DE/wavernn/train_wavernn.py +++ /dev/null @@ -1,58 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.utils.audio import AudioProcessor -from TTS.utils.downloaders import download_thorsten_de -from TTS.vocoder.configs import WavernnConfig -from TTS.vocoder.datasets.preprocess import load_wav_data -from TTS.vocoder.models.wavernn import Wavernn - -output_path = os.path.dirname(os.path.abspath(__file__)) -config = WavernnConfig( - batch_size=64, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=10000, - seq_len=1280, - pad_short=2000, - use_noise_augment=False, - eval_split_size=10, - print_step=25, - print_eval=True, - mixed_precision=False, - lr=1e-4, - grad_clip=4, - data_path=os.path.join(output_path, "../thorsten-de/wavs/"), - output_path=output_path, -) - -# download dataset if not already present -if not os.path.exists(config.data_path): - print("Downloading dataset") - download_path = os.path.abspath(os.path.join(os.path.abspath(config.data_path), "../../")) - download_thorsten_de(download_path) - -# init audio processor -ap = AudioProcessor(**config.audio.to_dict()) - -# load training samples -eval_samples, train_samples = load_wav_data(config.data_path, config.eval_split_size) - -# init model -model = Wavernn(config) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), - config, - output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, - training_assets={"audio_processor": ap}, -) -trainer.fit() diff --git a/TTS/recipes/vctk/delightful_tts/train_delightful_tts.py b/TTS/recipes/vctk/delightful_tts/train_delightful_tts.py deleted file mode 100644 index eebf408bf12d0896dfd2059d4614a1a4929cba6a..0000000000000000000000000000000000000000 --- a/TTS/recipes/vctk/delightful_tts/train_delightful_tts.py +++ /dev/null @@ -1,84 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseDatasetConfig -from TTS.tts.configs.delightful_tts_config import DelightfulTtsAudioConfig, DelightfulTTSConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.delightful_tts import DelightfulTTS, DelightfulTtsArgs, VocoderConfig -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio.processor import AudioProcessor - -data_path = "/raid/datasets/vctk_v092_48khz_removed_silence_silero_vad" -output_path = os.path.dirname(os.path.abspath(__file__)) - - -dataset_config = BaseDatasetConfig( - dataset_name="vctk", formatter="vctk", meta_file_train="", path=data_path, language="en-us" -) - -audio_config = DelightfulTtsAudioConfig() - -model_args = DelightfulTtsArgs() - -vocoder_config = VocoderConfig() - -something_tts_config = DelightfulTTSConfig( - run_name="delightful_tts_vctk", - run_description="Train like in delightful tts paper.", - model_args=model_args, - audio=audio_config, - vocoder=vocoder_config, - batch_size=32, - eval_batch_size=16, - num_loader_workers=10, - num_eval_loader_workers=10, - precompute_num_workers=40, - compute_input_seq_cache=True, - compute_f0=True, - f0_cache_path=os.path.join(output_path, "f0_cache"), - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - print_step=50, - print_eval=False, - mixed_precision=True, - output_path=output_path, - datasets=[dataset_config], - start_by_longest=True, - binary_align_loss_alpha=0.0, - use_attn_priors=False, - max_text_len=60, - steps_to_start_discriminator=10000, -) - -tokenizer, config = TTSTokenizer.init_from_config(something_tts_config) - -ap = AudioProcessor.init_from_config(config) - - -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - - -speaker_manager = SpeakerManager() -speaker_manager.set_ids_from_data(train_samples + eval_samples, parse_key="speaker_name") -config.model_args.num_speakers = speaker_manager.num_speakers - - -model = DelightfulTTS(ap=ap, config=config, tokenizer=tokenizer, speaker_manager=speaker_manager, emotion_manager=None) - -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -trainer.fit() diff --git a/TTS/recipes/vctk/download_vctk.sh b/TTS/recipes/vctk/download_vctk.sh deleted file mode 100644 index d08a53c61cf5e4c5f3f0154c55a3677c177a366c..0000000000000000000000000000000000000000 --- a/TTS/recipes/vctk/download_vctk.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/env bash -# take the scripts's parent's directory to prefix all the output paths. -RUN_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )" -echo $RUN_DIR -# download VCTK dataset -wget https://datashare.ed.ac.uk/bitstream/handle/10283/3443/VCTK-Corpus-0.92.zip -O VCTK-Corpus-0.92.zip -# extract -mkdir VCTK -unzip VCTK-Corpus-0.92 -d VCTK -# create train-val splits -mv VCTK $RUN_DIR/recipes/vctk/ -rm VCTK-Corpus-0.92.zip diff --git a/TTS/recipes/vctk/fast_pitch/train_fast_pitch.py b/TTS/recipes/vctk/fast_pitch/train_fast_pitch.py deleted file mode 100644 index 70b4578906e5254e0d9659ad07a1e675f1cdf6e2..0000000000000000000000000000000000000000 --- a/TTS/recipes/vctk/fast_pitch/train_fast_pitch.py +++ /dev/null @@ -1,98 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config import BaseAudioConfig, BaseDatasetConfig -from TTS.tts.configs.fast_pitch_config import FastPitchConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.forward_tts import ForwardTTS -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) -dataset_config = BaseDatasetConfig(formatter="vctk", meta_file_train="", path=os.path.join(output_path, "../VCTK/")) - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=23.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = FastPitchConfig( - run_name="fast_pitch_ljspeech", - audio=audio_config, - batch_size=32, - eval_batch_size=16, - num_loader_workers=8, - num_eval_loader_workers=4, - compute_input_seq_cache=True, - precompute_num_workers=4, - compute_f0=True, - f0_cache_path=os.path.join(output_path, "f0_cache"), - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - print_step=50, - print_eval=False, - mixed_precision=False, - min_text_len=0, - max_text_len=500, - min_audio_len=0, - max_audio_len=500000, - output_path=output_path, - datasets=[dataset_config], - use_speaker_embedding=True, -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init speaker manager for multi-speaker training -# it maps speaker-id to speaker-name in the model and data-loader -speaker_manager = SpeakerManager() -speaker_manager.set_ids_from_data(train_samples + eval_samples, parse_key="speaker_name") -config.model_args.num_speakers = speaker_manager.num_speakers - -# init model -model = ForwardTTS(config, ap, tokenizer, speaker_manager=speaker_manager) - -# INITIALIZE THE TRAINER -# Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, -# distributed training, etc. -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -# AND... 3,2,1... 🚀 -trainer.fit() diff --git a/TTS/recipes/vctk/fast_speech/train_fast_speech.py b/TTS/recipes/vctk/fast_speech/train_fast_speech.py deleted file mode 100644 index 3db7ff7afe7770ed6489650f24db5567eaaadb4f..0000000000000000000000000000000000000000 --- a/TTS/recipes/vctk/fast_speech/train_fast_speech.py +++ /dev/null @@ -1,96 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config import BaseAudioConfig, BaseDatasetConfig -from TTS.tts.configs.fast_speech_config import FastSpeechConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.forward_tts import ForwardTTS -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) -dataset_config = BaseDatasetConfig(formatter="vctk", meta_file_train="", path=os.path.join(output_path, "../VCTK/")) - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=23.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = FastSpeechConfig( - run_name="fast_speech_vctk", - audio=audio_config, - batch_size=32, - eval_batch_size=16, - num_loader_workers=8, - num_eval_loader_workers=4, - compute_input_seq_cache=True, - precompute_num_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - print_step=50, - print_eval=False, - mixed_precision=False, - min_text_len=0, - max_text_len=500, - min_audio_len=0, - max_audio_len=500000, - output_path=output_path, - datasets=[dataset_config], - use_speaker_embedding=True, -) - -## INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init speaker manager for multi-speaker training -# it maps speaker-id to speaker-name in the model and data-loader -speaker_manager = SpeakerManager() -speaker_manager.set_ids_from_data(train_samples + eval_samples, parse_key="speaker_name") -config.model_args.num_speakers = speaker_manager.num_speakers - -# init model -model = ForwardTTS(config, ap, tokenizer, speaker_manager=speaker_manager) - -# INITIALIZE THE TRAINER -# Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, -# distributed training, etc. -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -# AND... 3,2,1... 🚀 -trainer.fit() diff --git a/TTS/recipes/vctk/glow_tts/train_glow_tts.py b/TTS/recipes/vctk/glow_tts/train_glow_tts.py deleted file mode 100644 index ae26029b9151217164fa6c4d5c592fc26fb44ee2..0000000000000000000000000000000000000000 --- a/TTS/recipes/vctk/glow_tts/train_glow_tts.py +++ /dev/null @@ -1,96 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.glow_tts_config import GlowTTSConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.glow_tts import GlowTTS -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -# set experiment paths -output_path = os.path.dirname(os.path.abspath(__file__)) -dataset_path = os.path.join(output_path, "../VCTK/") - -# download the dataset if not downloaded -if not os.path.exists(dataset_path): - from TTS.utils.downloaders import download_vctk - - download_vctk(dataset_path) - -# define dataset config -dataset_config = BaseDatasetConfig(formatter="vctk", meta_file_train="", path=dataset_path) - -# define audio config -# ❗ resample the dataset externally using `TTS/bin/resample.py` and set `resample=False` for faster training -audio_config = BaseAudioConfig(sample_rate=22050, resample=True, do_trim_silence=True, trim_db=23.0) - -# define model config -config = GlowTTSConfig( - batch_size=64, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - precompute_num_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - print_step=25, - print_eval=False, - mixed_precision=True, - output_path=output_path, - datasets=[dataset_config], - use_speaker_embedding=True, - min_text_len=0, - max_text_len=500, - min_audio_len=0, - max_audio_len=500000, -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init speaker manager for multi-speaker training -# it maps speaker-id to speaker-name in the model and data-loader -speaker_manager = SpeakerManager() -speaker_manager.set_ids_from_data(train_samples + eval_samples, parse_key="speaker_name") -config.num_speakers = speaker_manager.num_speakers - -# init model -model = GlowTTS(config, ap, tokenizer, speaker_manager=speaker_manager) - -# INITIALIZE THE TRAINER -# Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, -# distributed training, etc. -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -# AND... 3,2,1... 🚀 -trainer.fit() diff --git a/TTS/recipes/vctk/resnet_speaker_encoder/train_encoder.py b/TTS/recipes/vctk/resnet_speaker_encoder/train_encoder.py deleted file mode 100644 index cd01754b72ef8e59a93412c5e31e2dfe5b58b90e..0000000000000000000000000000000000000000 --- a/TTS/recipes/vctk/resnet_speaker_encoder/train_encoder.py +++ /dev/null @@ -1,139 +0,0 @@ -import os - -from TTS.encoder.configs.speaker_encoder_config import SpeakerEncoderConfig - -# from TTS.encoder.configs.emotion_encoder_config import EmotionEncoderConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig - -CURRENT_PATH = os.getcwd() -# change the root path to the TTS root path -os.chdir("../../../") - -### Definitions ### -# dataset -VCTK_PATH = "/raid/datasets/VCTK_NEW_16khz_removed_silence_silero_vad/" # download: https://datashare.ed.ac.uk/bitstream/handle/10283/3443/VCTK-Corpus-0.92.zipdddddddddd -RIR_SIMULATED_PATH = "/raid/datasets/DA/RIRS_NOISES/simulated_rirs/" # download: https://www.openslr.org/17/ -MUSAN_PATH = "/raid/datasets/DA/musan/" # download: https://www.openslr.org/17/ - -# training -OUTPUT_PATH = os.path.join( - CURRENT_PATH, "resnet_speaker_encoder_training_output/" -) # path to save the train logs and checkpoint -CONFIG_OUT_PATH = os.path.join(OUTPUT_PATH, "config_se.json") -RESTORE_PATH = None # Checkpoint to use for transfer learning if None ignore - -# instance the config -# to speaker encoder -config = SpeakerEncoderConfig() -# to emotion encoder -# config = EmotionEncoderConfig() - - -#### DATASET CONFIG #### -# The formatter need to return the key "speaker_name" for the speaker encoder and the "emotion_name" for the emotion encoder -dataset_config = BaseDatasetConfig(formatter="vctk", meta_file_train="", language="en-us", path=VCTK_PATH) - -# add the dataset to the config -config.datasets = [dataset_config] - - -#### TRAINING CONFIG #### -# The encoder data loader balancer the dataset item equally to guarantee better training and to attend the losses requirements -# It have two parameters to control the final batch size the number total of speaker used in each batch and the number of samples for each speaker - -# number total of speaker in batch in training -config.num_classes_in_batch = 100 -# number of utterance per class/speaker in the batch in training -config.num_utter_per_class = 4 -# final batch size = config.num_classes_in_batch * config.num_utter_per_class - -# number total of speaker in batch in evaluation -config.eval_num_classes_in_batch = 100 -# number of utterance per class/speaker in the batch in evaluation -config.eval_num_utter_per_class = 4 - -# number of data loader workers -config.num_loader_workers = 8 -config.num_val_loader_workers = 8 - -# number of epochs -config.epochs = 10000 -# loss to be used in training -config.loss = "softmaxproto" - -# run eval -config.run_eval = False - -# output path for the checkpoints -config.output_path = OUTPUT_PATH - -# Save local checkpoint every save_step steps -config.save_step = 2000 - -### Model Config ### -config.model_params = { - "model_name": "resnet", # supported "lstm" and "resnet" - "input_dim": 64, - "use_torch_spec": True, - "log_input": True, - "proj_dim": 512, # embedding dim -} - -### Audio Config ### -# To fast train the model divides the audio in small parts. it parameter defines the length in seconds of these "parts" -config.voice_len = 2.0 -# all others configs -config.audio = { - "fft_size": 512, - "win_length": 400, - "hop_length": 160, - "frame_shift_ms": None, - "frame_length_ms": None, - "stft_pad_mode": "reflect", - "sample_rate": 16000, - "resample": False, - "preemphasis": 0.97, - "ref_level_db": 20, - "do_sound_norm": False, - "do_trim_silence": False, - "trim_db": 60, - "power": 1.5, - "griffin_lim_iters": 60, - "num_mels": 64, - "mel_fmin": 0.0, - "mel_fmax": 8000.0, - "spec_gain": 20, - "signal_norm": False, - "min_level_db": -100, - "symmetric_norm": False, - "max_norm": 4.0, - "clip_norm": False, - "stats_path": None, - "do_rms_norm": True, - "db_level": -27.0, -} - - -### Augmentation Config ### -config.audio_augmentation = { - # additive noise and room impulse response (RIR) simulation similar to: https://arxiv.org/pdf/2009.14153.pdf - "p": 0.5, # probability to the use of one of the augmentation - 0 means disabled - "rir": {"rir_path": RIR_SIMULATED_PATH, "conv_mode": "full"}, # download: https://www.openslr.org/17/ - "additive": { - "sounds_path": MUSAN_PATH, - "speech": {"min_snr_in_db": 13, "max_snr_in_db": 20, "min_num_noises": 1, "max_num_noises": 1}, - "noise": {"min_snr_in_db": 0, "max_snr_in_db": 15, "min_num_noises": 1, "max_num_noises": 1}, - "music": {"min_snr_in_db": 5, "max_snr_in_db": 15, "min_num_noises": 1, "max_num_noises": 1}, - }, - "gaussian": {"p": 0.7, "min_amplitude": 0.0, "max_amplitude": 1e-05}, -} - -config.save_json(CONFIG_OUT_PATH) - -print(CONFIG_OUT_PATH) -if RESTORE_PATH is not None: - command = f"python TTS/bin/train_encoder.py --config_path {CONFIG_OUT_PATH} --restore_path {RESTORE_PATH}" -else: - command = f"python TTS/bin/train_encoder.py --config_path {CONFIG_OUT_PATH}" - -os.system(command) diff --git a/TTS/recipes/vctk/speedy_speech/train_speedy_speech.py b/TTS/recipes/vctk/speedy_speech/train_speedy_speech.py deleted file mode 100644 index 04caa6d25ac1814ed04eeeefe0090d6f11556142..0000000000000000000000000000000000000000 --- a/TTS/recipes/vctk/speedy_speech/train_speedy_speech.py +++ /dev/null @@ -1,96 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config import BaseAudioConfig, BaseDatasetConfig -from TTS.tts.configs.speedy_speech_config import SpeedySpeechConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.forward_tts import ForwardTTS -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) -dataset_config = BaseDatasetConfig(formatter="vctk", meta_file_train="", path=os.path.join(output_path, "../VCTK/")) - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=23.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = SpeedySpeechConfig( - run_name="fast_pitch_ljspeech", - audio=audio_config, - batch_size=32, - eval_batch_size=16, - num_loader_workers=8, - num_eval_loader_workers=4, - compute_input_seq_cache=True, - precompute_num_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - print_step=50, - print_eval=False, - mixed_precision=False, - min_text_len=0, - max_text_len=500, - min_audio_len=0, - max_audio_len=500000, - output_path=output_path, - datasets=[dataset_config], - use_speaker_embedding=True, -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init speaker manager for multi-speaker training -# it maps speaker-id to speaker-name in the model and data-loader -speaker_manager = SpeakerManager() -speaker_manager.set_ids_from_data(train_samples + eval_samples, parse_key="speaker_name") -config.model_args.num_speakers = speaker_manager.num_speakers - -# init model -model = ForwardTTS(config, ap, tokenizer, speaker_manager) - -# INITIALIZE THE TRAINER -# Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, -# distributed training, etc. -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -# AND... 3,2,1... 🚀 -trainer.fit() diff --git a/TTS/recipes/vctk/tacotron-DDC/train_tacotron-DDC.py b/TTS/recipes/vctk/tacotron-DDC/train_tacotron-DDC.py deleted file mode 100644 index 7607a1675a3fbf1e7115df58c2bde8e5ad1a9f95..0000000000000000000000000000000000000000 --- a/TTS/recipes/vctk/tacotron-DDC/train_tacotron-DDC.py +++ /dev/null @@ -1,98 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.configs.tacotron_config import TacotronConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.tacotron import Tacotron -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) -dataset_config = BaseDatasetConfig(formatter="vctk", meta_file_train="", path=os.path.join(output_path, "../VCTK/")) - -audio_config = BaseAudioConfig( - sample_rate=22050, - resample=True, # Resample to 22050 Hz. It slows down training. Use `TTS/bin/resample.py` to pre-resample and set this False for faster training. - do_trim_silence=True, - trim_db=23.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = TacotronConfig( # This is the config that is saved for the future use - audio=audio_config, - batch_size=48, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - precompute_num_workers=4, - run_eval=True, - test_delay_epochs=-1, - r=6, - gradual_training=[[0, 6, 48], [10000, 4, 32], [50000, 3, 32], [100000, 2, 32]], - double_decoder_consistency=True, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - print_step=25, - print_eval=False, - mixed_precision=True, - min_text_len=0, - max_text_len=500, - min_audio_len=0, - max_audio_len=44000 * 10, # 44k is the original sampling rate before resampling, corresponds to 10 seconds of audio - output_path=output_path, - datasets=[dataset_config], - use_speaker_embedding=True, # set this to enable multi-sepeaker training -) - -## INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init speaker manager for multi-speaker training -# it mainly handles speaker-id to speaker-name for the model and the data-loader -speaker_manager = SpeakerManager() -speaker_manager.set_ids_from_data(train_samples + eval_samples, parse_key="speaker_name") - -# init model -model = Tacotron(config, ap, tokenizer, speaker_manager) - -# INITIALIZE THE TRAINER -# Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, -# distributed training, etc. -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -# AND... 3,2,1... 🚀 -trainer.fit() diff --git a/TTS/recipes/vctk/tacotron2-DDC/train_tacotron2-ddc.py b/TTS/recipes/vctk/tacotron2-DDC/train_tacotron2-ddc.py deleted file mode 100644 index 8623018ae230d2b38ceb0ebfb8c8d5f84bf8271d..0000000000000000000000000000000000000000 --- a/TTS/recipes/vctk/tacotron2-DDC/train_tacotron2-ddc.py +++ /dev/null @@ -1,104 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.configs.tacotron2_config import Tacotron2Config -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.tacotron2 import Tacotron2 -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) -dataset_config = BaseDatasetConfig(formatter="vctk", meta_file_train="", path=os.path.join(output_path, "../VCTK/")) - -audio_config = BaseAudioConfig( - sample_rate=22050, - resample=False, # Resample to 22050 Hz. It slows down training. Use `TTS/bin/resample.py` to pre-resample and set this False for faster training. - do_trim_silence=True, - trim_db=23.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - preemphasis=0.0, -) - -config = Tacotron2Config( # This is the config that is saved for the future use - audio=audio_config, - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - r=2, - # gradual_training=[[0, 6, 48], [10000, 4, 32], [50000, 3, 32], [100000, 2, 32]], - double_decoder_consistency=True, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - print_step=150, - print_eval=False, - mixed_precision=True, - min_text_len=0, - max_text_len=500, - min_audio_len=0, - max_audio_len=44000 * 10, - output_path=output_path, - datasets=[dataset_config], - use_speaker_embedding=True, # set this to enable multi-sepeaker training - decoder_ssim_alpha=0.0, # disable ssim losses that causes NaN for some runs. - postnet_ssim_alpha=0.0, - postnet_diff_spec_alpha=0.0, - decoder_diff_spec_alpha=0.0, - attention_norm="softmax", - optimizer="Adam", - lr_scheduler=None, - lr=3e-5, -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init speaker manager for multi-speaker training -# it mainly handles speaker-id to speaker-name for the model and the data-loader -speaker_manager = SpeakerManager() -speaker_manager.set_ids_from_data(train_samples + eval_samples, parse_key="speaker_name") - -# init model -model = Tacotron2(config, ap, tokenizer, speaker_manager) - -# INITIALIZE THE TRAINER -# Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, -# distributed training, etc. -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -# AND... 3,2,1... 🚀 -trainer.fit() diff --git a/TTS/recipes/vctk/tacotron2/train_tacotron2.py b/TTS/recipes/vctk/tacotron2/train_tacotron2.py deleted file mode 100644 index d3f66348df4eb2e6c13be2ea9e6ba3cdf51ec9d0..0000000000000000000000000000000000000000 --- a/TTS/recipes/vctk/tacotron2/train_tacotron2.py +++ /dev/null @@ -1,104 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.configs.tacotron2_config import Tacotron2Config -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.tacotron2 import Tacotron2 -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) -dataset_config = BaseDatasetConfig(formatter="vctk", meta_file_train="", path=os.path.join(output_path, "../VCTK/")) - -audio_config = BaseAudioConfig( - sample_rate=22050, - resample=False, # Resample to 22050 Hz. It slows down training. Use `TTS/bin/resample.py` to pre-resample and set this False for faster training. - do_trim_silence=True, - trim_db=23.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - preemphasis=0.0, -) - -config = Tacotron2Config( # This is the config that is saved for the future use - audio=audio_config, - batch_size=32, - eval_batch_size=16, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - r=2, - # gradual_training=[[0, 6, 48], [10000, 4, 32], [50000, 3, 32], [100000, 2, 32]], - double_decoder_consistency=False, - epochs=1000, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - print_step=150, - print_eval=False, - mixed_precision=True, - min_text_len=0, - max_text_len=500, - min_audio_len=0, - max_audio_len=44000 * 10, - output_path=output_path, - datasets=[dataset_config], - use_speaker_embedding=True, # set this to enable multi-sepeaker training - decoder_ssim_alpha=0.0, # disable ssim losses that causes NaN for some runs. - postnet_ssim_alpha=0.0, - postnet_diff_spec_alpha=0.0, - decoder_diff_spec_alpha=0.0, - attention_norm="softmax", - optimizer="Adam", - lr_scheduler=None, - lr=3e-5, -) - -## INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# If characters are not defined in the config, default characters are passed to the config -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init speaker manager for multi-speaker training -# it mainly handles speaker-id to speaker-name for the model and the data-loader -speaker_manager = SpeakerManager() -speaker_manager.set_ids_from_data(train_samples + eval_samples, parse_key="speaker_name") - -# init model -model = Tacotron2(config, ap, tokenizer, speaker_manager) - -# INITIALIZE THE TRAINER -# Trainer provides a generic API to train all the 🐸TTS models with all its perks like mixed-precision training, -# distributed training, etc. -trainer = Trainer( - TrainerArgs(), config, output_path, model=model, train_samples=train_samples, eval_samples=eval_samples -) - -# AND... 3,2,1... 🚀 -trainer.fit() diff --git a/TTS/recipes/vctk/vits/train_vits.py b/TTS/recipes/vctk/vits/train_vits.py deleted file mode 100644 index dbc06eecdcfcb75802e6b31cd56c6dd73068b5cd..0000000000000000000000000000000000000000 --- a/TTS/recipes/vctk/vits/train_vits.py +++ /dev/null @@ -1,93 +0,0 @@ -import os - -from trainer import Trainer, TrainerArgs - -from TTS.tts.configs.shared_configs import BaseDatasetConfig -from TTS.tts.configs.vits_config import VitsConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.vits import Vits, VitsArgs, VitsAudioConfig -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -output_path = os.path.dirname(os.path.abspath(__file__)) -dataset_config = BaseDatasetConfig( - formatter="vctk", meta_file_train="", language="en-us", path=os.path.join(output_path, "../VCTK/") -) - - -audio_config = VitsAudioConfig( - sample_rate=22050, win_length=1024, hop_length=256, num_mels=80, mel_fmin=0, mel_fmax=None -) - -vitsArgs = VitsArgs( - use_speaker_embedding=True, -) - -config = VitsConfig( - model_args=vitsArgs, - audio=audio_config, - run_name="vits_vctk", - batch_size=32, - eval_batch_size=16, - batch_group_size=5, - num_loader_workers=4, - num_eval_loader_workers=4, - run_eval=True, - test_delay_epochs=-1, - epochs=1000, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en", - phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), - compute_input_seq_cache=True, - print_step=25, - print_eval=False, - mixed_precision=True, - max_text_len=325, # change this if you have a larger VRAM than 16GB - output_path=output_path, - datasets=[dataset_config], - cudnn_benchmark=False, -) - -# INITIALIZE THE AUDIO PROCESSOR -# Audio processor is used for feature extraction and audio I/O. -# It mainly serves to the dataloader and the training loggers. -ap = AudioProcessor.init_from_config(config) - -# INITIALIZE THE TOKENIZER -# Tokenizer is used to convert text to sequences of token IDs. -# config is updated with the default characters if not defined in the config. -tokenizer, config = TTSTokenizer.init_from_config(config) - -# LOAD DATA SAMPLES -# Each sample is a list of ```[text, audio_file_path, speaker_name]``` -# You can define your custom sample loader returning the list of samples. -# Or define your custom formatter and pass it to the `load_tts_samples`. -# Check `TTS.tts.datasets.load_tts_samples` for more details. -train_samples, eval_samples = load_tts_samples( - dataset_config, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# init speaker manager for multi-speaker training -# it maps speaker-id to speaker-name in the model and data-loader -speaker_manager = SpeakerManager() -speaker_manager.set_ids_from_data(train_samples + eval_samples, parse_key="speaker_name") -config.model_args.num_speakers = speaker_manager.num_speakers - -# init model -model = Vits(config, ap, tokenizer, speaker_manager) - -# init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(), - config, - output_path, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, -) -trainer.fit() diff --git a/TTS/recipes/vctk/yourtts/train_yourtts.py b/TTS/recipes/vctk/yourtts/train_yourtts.py deleted file mode 100644 index b9cf10fa8eb3c37451d1a95c95d17680b81642d7..0000000000000000000000000000000000000000 --- a/TTS/recipes/vctk/yourtts/train_yourtts.py +++ /dev/null @@ -1,253 +0,0 @@ -import os - -import torch -from trainer import Trainer, TrainerArgs - -from TTS.bin.compute_embeddings import compute_embeddings -from TTS.bin.resample import resample_files -from TTS.config.shared_configs import BaseDatasetConfig -from TTS.tts.configs.vits_config import VitsConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.models.vits import CharactersConfig, Vits, VitsArgs, VitsAudioConfig -from TTS.utils.downloaders import download_vctk - -torch.set_num_threads(24) - -# pylint: disable=W0105 -""" - This recipe replicates the first experiment proposed in the YourTTS paper (https://arxiv.org/abs/2112.02418). - YourTTS model is based on the VITS model however it uses external speaker embeddings extracted from a pre-trained speaker encoder and has small architecture changes. - In addition, YourTTS can be trained in multilingual data, however, this recipe replicates the single language training using the VCTK dataset. - If you are interested in multilingual training, we have commented on parameters on the VitsArgs class instance that should be enabled for multilingual training. - In addition, you will need to add the extra datasets following the VCTK as an example. -""" -CURRENT_PATH = os.path.dirname(os.path.abspath(__file__)) - -# Name of the run for the Trainer -RUN_NAME = "YourTTS-EN-VCTK" - -# Path where you want to save the models outputs (configs, checkpoints and tensorboard logs) -OUT_PATH = os.path.dirname(os.path.abspath(__file__)) # "/raid/coqui/Checkpoints/original-YourTTS/" - -# If you want to do transfer learning and speedup your training you can set here the path to the original YourTTS model -RESTORE_PATH = None # "/root/.local/share/tts/tts_models--multilingual--multi-dataset--your_tts/model_file.pth" - -# This paramter is useful to debug, it skips the training epochs and just do the evaluation and produce the test sentences -SKIP_TRAIN_EPOCH = False - -# Set here the batch size to be used in training and evaluation -BATCH_SIZE = 32 - -# Training Sampling rate and the target sampling rate for resampling the downloaded dataset (Note: If you change this you might need to redownload the dataset !!) -# Note: If you add new datasets, please make sure that the dataset sampling rate and this parameter are matching, otherwise resample your audios -SAMPLE_RATE = 16000 - -# Max audio length in seconds to be used in training (every audio bigger than it will be ignored) -MAX_AUDIO_LEN_IN_SECONDS = 10 - -### Download VCTK dataset -VCTK_DOWNLOAD_PATH = os.path.join(CURRENT_PATH, "VCTK") -# Define the number of threads used during the audio resampling -NUM_RESAMPLE_THREADS = 10 -# Check if VCTK dataset is not already downloaded, if not download it -if not os.path.exists(VCTK_DOWNLOAD_PATH): - print(">>> Downloading VCTK dataset:") - download_vctk(VCTK_DOWNLOAD_PATH) - resample_files(VCTK_DOWNLOAD_PATH, SAMPLE_RATE, file_ext="flac", n_jobs=NUM_RESAMPLE_THREADS) - -# init configs -vctk_config = BaseDatasetConfig( - formatter="vctk", - dataset_name="vctk", - meta_file_train="", - meta_file_val="", - path=VCTK_DOWNLOAD_PATH, - language="en", - ignored_speakers=[ - "p261", - "p225", - "p294", - "p347", - "p238", - "p234", - "p248", - "p335", - "p245", - "p326", - "p302", - ], # Ignore the test speakers to full replicate the paper experiment -) - -# Add here all datasets configs, in our case we just want to train with the VCTK dataset then we need to add just VCTK. Note: If you want to add new datasets, just add them here and it will automatically compute the speaker embeddings (d-vectors) for this new dataset :) -DATASETS_CONFIG_LIST = [vctk_config] - -### Extract speaker embeddings -SPEAKER_ENCODER_CHECKPOINT_PATH = ( - "https://github.com/coqui-ai/TTS/releases/download/speaker_encoder_model/model_se.pth.tar" -) -SPEAKER_ENCODER_CONFIG_PATH = "https://github.com/coqui-ai/TTS/releases/download/speaker_encoder_model/config_se.json" - -D_VECTOR_FILES = [] # List of speaker embeddings/d-vectors to be used during the training - -# Iterates all the dataset configs checking if the speakers embeddings are already computated, if not compute it -for dataset_conf in DATASETS_CONFIG_LIST: - # Check if the embeddings weren't already computed, if not compute it - embeddings_file = os.path.join(dataset_conf.path, "speakers.pth") - if not os.path.isfile(embeddings_file): - print(f">>> Computing the speaker embeddings for the {dataset_conf.dataset_name} dataset") - compute_embeddings( - SPEAKER_ENCODER_CHECKPOINT_PATH, - SPEAKER_ENCODER_CONFIG_PATH, - embeddings_file, - old_speakers_file=None, - config_dataset_path=None, - formatter_name=dataset_conf.formatter, - dataset_name=dataset_conf.dataset_name, - dataset_path=dataset_conf.path, - meta_file_train=dataset_conf.meta_file_train, - meta_file_val=dataset_conf.meta_file_val, - disable_cuda=False, - no_eval=False, - ) - D_VECTOR_FILES.append(embeddings_file) - - -# Audio config used in training. -audio_config = VitsAudioConfig( - sample_rate=SAMPLE_RATE, - hop_length=256, - win_length=1024, - fft_size=1024, - mel_fmin=0.0, - mel_fmax=None, - num_mels=80, -) - -# Init VITSArgs setting the arguments that are needed for the YourTTS model -model_args = VitsArgs( - d_vector_file=D_VECTOR_FILES, - use_d_vector_file=True, - d_vector_dim=512, - num_layers_text_encoder=10, - speaker_encoder_model_path=SPEAKER_ENCODER_CHECKPOINT_PATH, - speaker_encoder_config_path=SPEAKER_ENCODER_CONFIG_PATH, - resblock_type_decoder="2", # In the paper, we accidentally trained the YourTTS using ResNet blocks type 2, if you like you can use the ResNet blocks type 1 like the VITS model - # Useful parameters to enable the Speaker Consistency Loss (SCL) described in the paper - # use_speaker_encoder_as_loss=True, - # Useful parameters to enable multilingual training - # use_language_embedding=True, - # embedded_language_dim=4, -) - -# General training config, here you can change the batch size and others useful parameters -config = VitsConfig( - output_path=OUT_PATH, - model_args=model_args, - run_name=RUN_NAME, - project_name="YourTTS", - run_description=""" - - Original YourTTS trained using VCTK dataset - """, - dashboard_logger="tensorboard", - logger_uri=None, - audio=audio_config, - batch_size=BATCH_SIZE, - batch_group_size=48, - eval_batch_size=BATCH_SIZE, - num_loader_workers=8, - eval_split_max_size=256, - print_step=50, - plot_step=100, - log_model_step=1000, - save_step=5000, - save_n_checkpoints=2, - save_checkpoints=True, - target_loss="loss_1", - print_eval=False, - use_phonemes=False, - phonemizer="espeak", - phoneme_language="en", - compute_input_seq_cache=True, - add_blank=True, - text_cleaner="multilingual_cleaners", - characters=CharactersConfig( - characters_class="TTS.tts.models.vits.VitsCharacters", - pad="_", - eos="&", - bos="*", - blank=None, - characters="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\u00af\u00b7\u00df\u00e0\u00e1\u00e2\u00e3\u00e4\u00e6\u00e7\u00e8\u00e9\u00ea\u00eb\u00ec\u00ed\u00ee\u00ef\u00f1\u00f2\u00f3\u00f4\u00f5\u00f6\u00f9\u00fa\u00fb\u00fc\u00ff\u0101\u0105\u0107\u0113\u0119\u011b\u012b\u0131\u0142\u0144\u014d\u0151\u0153\u015b\u016b\u0171\u017a\u017c\u01ce\u01d0\u01d2\u01d4\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043a\u043b\u043c\u043d\u043e\u043f\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044a\u044b\u044c\u044d\u044e\u044f\u0451\u0454\u0456\u0457\u0491\u2013!'(),-.:;? ", - punctuations="!'(),-.:;? ", - phonemes="", - is_unique=True, - is_sorted=True, - ), - phoneme_cache_path=None, - precompute_num_workers=12, - start_by_longest=True, - datasets=DATASETS_CONFIG_LIST, - cudnn_benchmark=False, - max_audio_len=SAMPLE_RATE * MAX_AUDIO_LEN_IN_SECONDS, - mixed_precision=False, - test_sentences=[ - [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "VCTK_p277", - None, - "en", - ], - [ - "Be a voice, not an echo.", - "VCTK_p239", - None, - "en", - ], - [ - "I'm sorry Dave. I'm afraid I can't do that.", - "VCTK_p258", - None, - "en", - ], - [ - "This cake is great. It's so delicious and moist.", - "VCTK_p244", - None, - "en", - ], - [ - "Prior to November 22, 1963.", - "VCTK_p305", - None, - "en", - ], - ], - # Enable the weighted sampler - use_weighted_sampler=True, - # Ensures that all speakers are seen in the training batch equally no matter how many samples each speaker has - weighted_sampler_attrs={"speaker_name": 1.0}, - weighted_sampler_multipliers={}, - # It defines the Speaker Consistency Loss (SCL) α to 9 like the paper - speaker_encoder_loss_alpha=9.0, -) - -# Load all the datasets samples and split traning and evaluation sets -train_samples, eval_samples = load_tts_samples( - config.datasets, - eval_split=True, - eval_split_max_size=config.eval_split_max_size, - eval_split_size=config.eval_split_size, -) - -# Init the model -model = Vits.init_from_config(config) - -# Init the trainer and 🚀 -trainer = Trainer( - TrainerArgs(restore_path=RESTORE_PATH, skip_train_epoch=SKIP_TRAIN_EPOCH), - config, - output_path=OUT_PATH, - model=model, - train_samples=train_samples, - eval_samples=eval_samples, -) -trainer.fit() diff --git a/TTS/requirements.dev.txt b/TTS/requirements.dev.txt deleted file mode 100644 index 8c674727d3da0bd22788be40496d7578a315c2eb..0000000000000000000000000000000000000000 --- a/TTS/requirements.dev.txt +++ /dev/null @@ -1,5 +0,0 @@ -black -coverage -isort -nose2 -pylint==2.10.2 diff --git a/TTS/requirements.ja.txt b/TTS/requirements.ja.txt deleted file mode 100644 index d6a04ca4b29ee87f1ae689472bc3dff6dde92ec5..0000000000000000000000000000000000000000 --- a/TTS/requirements.ja.txt +++ /dev/null @@ -1,4 +0,0 @@ -# These cause some compatibility issues on some systems and are not strictly necessary -# japanese g2p deps -mecab-python3==1.0.6 -unidic-lite==1.0.8 diff --git a/TTS/requirements.notebooks.txt b/TTS/requirements.notebooks.txt deleted file mode 100644 index 65d3f642c9dcaf109cd8697beb8672f53a81dd59..0000000000000000000000000000000000000000 --- a/TTS/requirements.notebooks.txt +++ /dev/null @@ -1 +0,0 @@ -bokeh==1.4.0 \ No newline at end of file diff --git a/TTS/requirements.txt b/TTS/requirements.txt deleted file mode 100644 index 90d238b7ba95d664e906205fd4e729b98a85093f..0000000000000000000000000000000000000000 --- a/TTS/requirements.txt +++ /dev/null @@ -1,50 +0,0 @@ -# core deps -numpy==1.22.0;python_version<="3.10" -numpy==1.24.3;python_version>"3.10" -cython==0.29.30 -scipy>=1.4.0 -torch>=1.7 -torchaudio -soundfile -librosa==0.10.0.* -numba==0.55.1;python_version<"3.9" -numba==0.57.0;python_version>="3.9" -inflect==5.6.0 -tqdm -anyascii -pyyaml -fsspec>=2021.04.0 -aiohttp -packaging -# deps for examples -flask -# deps for inference -pysbd -# deps for notebooks -umap-learn==0.5.1 -pandas -# deps for training -matplotlib -# coqui stack -trainer -# config management -coqpit>=0.0.16 -# chinese g2p deps -jieba -pypinyin -# gruut+supported langs -gruut[de,es,fr]==2.2.3 -# deps for korean -jamo -nltk -g2pkk>=0.1.1 -# deps for bangla -bangla==0.0.2 -bnnumerizer -bnunicodenormalizer==0.1.1 -#deps for tortoise -k_diffusion -einops -transformers -#deps for bark -encodec diff --git a/TTS/run_bash_tests.sh b/TTS/run_bash_tests.sh deleted file mode 100644 index 2f5ba889343a2d188c0f914063cc24cd0205d05c..0000000000000000000000000000000000000000 --- a/TTS/run_bash_tests.sh +++ /dev/null @@ -1,7 +0,0 @@ -set -e -TF_CPP_MIN_LOG_LEVEL=3 - -# runtime bash based tests -# TODO: move these to python -./tests/bash_tests/test_demo_server.sh && \ -./tests/bash_tests/test_compute_statistics.sh diff --git a/TTS/server/README.md b/TTS/server/README.md deleted file mode 100644 index 270656c4e39dc11636efbb1ba51eba7c9b4a8f04..0000000000000000000000000000000000000000 --- a/TTS/server/README.md +++ /dev/null @@ -1,18 +0,0 @@ -# :frog: TTS demo server -Before you use the server, make sure you [install](https://github.com/coqui-ai/TTS/tree/dev#install-tts)) :frog: TTS properly. Then, you can follow the steps below. - -**Note:** If you install :frog:TTS using ```pip```, you can also use the ```tts-server``` end point on the terminal. - -Examples runs: - -List officially released models. -```python TTS/server/server.py --list_models ``` - -Run the server with the official models. -```python TTS/server/server.py --model_name tts_models/en/ljspeech/tacotron2-DCA --vocoder_name vocoder_models/en/ljspeech/multiband-melgan``` - -Run the server with the official models on a GPU. -```CUDA_VISIBLE_DEVICES="0" python TTS/server/server.py --model_name tts_models/en/ljspeech/tacotron2-DCA --vocoder_name vocoder_models/en/ljspeech/multiband-melgan --use_cuda True``` - -Run the server with a custom models. -```python TTS/server/server.py --tts_checkpoint /path/to/tts/model.pth --tts_config /path/to/tts/config.json --vocoder_checkpoint /path/to/vocoder/model.pth --vocoder_config /path/to/vocoder/config.json``` diff --git a/TTS/server/__init__.py b/TTS/server/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/server/conf.json b/TTS/server/conf.json deleted file mode 100644 index 49b6c09c3848a224dfb39a1f653aa1b289a4b6e5..0000000000000000000000000000000000000000 --- a/TTS/server/conf.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "tts_path":"/media/erogol/data_ssd/Models/libri_tts/5049/", // tts model root folder - "tts_file":"best_model.pth", // tts checkpoint file - "tts_config":"config.json", // tts config.json file - "tts_speakers": null, // json file listing speaker ids. null if no speaker embedding. - "vocoder_config":null, - "vocoder_file": null, - "is_wavernn_batched":true, - "port": 5002, - "use_cuda": true, - "debug": true -} diff --git a/TTS/server/server.py b/TTS/server/server.py deleted file mode 100644 index 6b2141a9aa419b9095956ccae317621fa3a604da..0000000000000000000000000000000000000000 --- a/TTS/server/server.py +++ /dev/null @@ -1,258 +0,0 @@ -#!flask/bin/python -import argparse -import io -import json -import os -import sys -from pathlib import Path -from threading import Lock -from typing import Union -from urllib.parse import parse_qs - -from flask import Flask, render_template, render_template_string, request, send_file - -from TTS.config import load_config -from TTS.utils.manage import ModelManager -from TTS.utils.synthesizer import Synthesizer - - -def create_argparser(): - def convert_boolean(x): - return x.lower() in ["true", "1", "yes"] - - parser = argparse.ArgumentParser() - parser.add_argument( - "--list_models", - type=convert_boolean, - nargs="?", - const=True, - default=False, - help="list available pre-trained tts and vocoder models.", - ) - parser.add_argument( - "--model_name", - type=str, - default="tts_models/en/ljspeech/tacotron2-DDC", - help="Name of one of the pre-trained tts models in format //", - ) - parser.add_argument("--vocoder_name", type=str, default=None, help="name of one of the released vocoder models.") - - # Args for running custom models - parser.add_argument("--config_path", default=None, type=str, help="Path to model config file.") - parser.add_argument( - "--model_path", - type=str, - default=None, - help="Path to model file.", - ) - parser.add_argument( - "--vocoder_path", - type=str, - help="Path to vocoder model file. If it is not defined, model uses GL as vocoder. Please make sure that you installed vocoder library before (WaveRNN).", - default=None, - ) - parser.add_argument("--vocoder_config_path", type=str, help="Path to vocoder model config file.", default=None) - parser.add_argument("--speakers_file_path", type=str, help="JSON file for multi-speaker model.", default=None) - parser.add_argument("--port", type=int, default=5002, help="port to listen on.") - parser.add_argument("--use_cuda", type=convert_boolean, default=False, help="true to use CUDA.") - parser.add_argument("--debug", type=convert_boolean, default=False, help="true to enable Flask debug mode.") - parser.add_argument("--show_details", type=convert_boolean, default=False, help="Generate model detail page.") - return parser - - -# parse the args -args = create_argparser().parse_args() - -path = Path(__file__).parent / "../.models.json" -manager = ModelManager(path) - -if args.list_models: - manager.list_models() - sys.exit() - -# update in-use models to the specified released models. -model_path = None -config_path = None -speakers_file_path = None -vocoder_path = None -vocoder_config_path = None - -# CASE1: list pre-trained TTS models -if args.list_models: - manager.list_models() - sys.exit() - -# CASE2: load pre-trained model paths -if args.model_name is not None and not args.model_path: - model_path, config_path, model_item = manager.download_model(args.model_name) - args.vocoder_name = model_item["default_vocoder"] if args.vocoder_name is None else args.vocoder_name - -if args.vocoder_name is not None and not args.vocoder_path: - vocoder_path, vocoder_config_path, _ = manager.download_model(args.vocoder_name) - -# CASE3: set custom model paths -if args.model_path is not None: - model_path = args.model_path - config_path = args.config_path - speakers_file_path = args.speakers_file_path - -if args.vocoder_path is not None: - vocoder_path = args.vocoder_path - vocoder_config_path = args.vocoder_config_path - -# load models -synthesizer = Synthesizer( - tts_checkpoint=model_path, - tts_config_path=config_path, - tts_speakers_file=speakers_file_path, - tts_languages_file=None, - vocoder_checkpoint=vocoder_path, - vocoder_config=vocoder_config_path, - encoder_checkpoint="", - encoder_config="", - use_cuda=args.use_cuda, -) - -use_multi_speaker = hasattr(synthesizer.tts_model, "num_speakers") and ( - synthesizer.tts_model.num_speakers > 1 or synthesizer.tts_speakers_file is not None -) -speaker_manager = getattr(synthesizer.tts_model, "speaker_manager", None) - -use_multi_language = hasattr(synthesizer.tts_model, "num_languages") and ( - synthesizer.tts_model.num_languages > 1 or synthesizer.tts_languages_file is not None -) -language_manager = getattr(synthesizer.tts_model, "language_manager", None) - -# TODO: set this from SpeakerManager -use_gst = synthesizer.tts_config.get("use_gst", False) -app = Flask(__name__) - - -def style_wav_uri_to_dict(style_wav: str) -> Union[str, dict]: - """Transform an uri style_wav, in either a string (path to wav file to be use for style transfer) - or a dict (gst tokens/values to be use for styling) - - Args: - style_wav (str): uri - - Returns: - Union[str, dict]: path to file (str) or gst style (dict) - """ - if style_wav: - if os.path.isfile(style_wav) and style_wav.endswith(".wav"): - return style_wav # style_wav is a .wav file located on the server - - style_wav = json.loads(style_wav) - return style_wav # style_wav is a gst dictionary with {token1_id : token1_weigth, ...} - return None - - -@app.route("/") -def index(): - return render_template( - "index.html", - show_details=args.show_details, - use_multi_speaker=use_multi_speaker, - use_multi_language=use_multi_language, - speaker_ids=speaker_manager.name_to_id if speaker_manager is not None else None, - language_ids=language_manager.name_to_id if language_manager is not None else None, - use_gst=use_gst, - ) - - -@app.route("/details") -def details(): - if args.config_path is not None and os.path.isfile(args.config_path): - model_config = load_config(args.config_path) - else: - if args.model_name is not None: - model_config = load_config(config_path) - - if args.vocoder_config_path is not None and os.path.isfile(args.vocoder_config_path): - vocoder_config = load_config(args.vocoder_config_path) - else: - if args.vocoder_name is not None: - vocoder_config = load_config(vocoder_config_path) - else: - vocoder_config = None - - return render_template( - "details.html", - show_details=args.show_details, - model_config=model_config, - vocoder_config=vocoder_config, - args=args.__dict__, - ) - - -lock = Lock() - - -@app.route("/api/tts", methods=["GET", "POST"]) -def tts(): - with lock: - text = request.headers.get("text") or request.values.get("text", "") - speaker_idx = request.headers.get("speaker-id") or request.values.get("speaker_id", "") - language_idx = request.headers.get("language-id") or request.values.get("language_id", "") - style_wav = request.headers.get("style-wav") or request.values.get("style_wav", "") - style_wav = style_wav_uri_to_dict(style_wav) - - print(f" > Model input: {text}") - print(f" > Speaker Idx: {speaker_idx}") - print(f" > Language Idx: {language_idx}") - wavs = synthesizer.tts(text, speaker_name=speaker_idx, language_name=language_idx, style_wav=style_wav) - out = io.BytesIO() - synthesizer.save_wav(wavs, out) - return send_file(out, mimetype="audio/wav") - - -# Basic MaryTTS compatibility layer - - -@app.route("/locales", methods=["GET"]) -def mary_tts_api_locales(): - """MaryTTS-compatible /locales endpoint""" - # NOTE: We currently assume there is only one model active at the same time - if args.model_name is not None: - model_details = args.model_name.split("/") - else: - model_details = ["", "en", "", "default"] - return render_template_string("{{ locale }}\n", locale=model_details[1]) - - -@app.route("/voices", methods=["GET"]) -def mary_tts_api_voices(): - """MaryTTS-compatible /voices endpoint""" - # NOTE: We currently assume there is only one model active at the same time - if args.model_name is not None: - model_details = args.model_name.split("/") - else: - model_details = ["", "en", "", "default"] - return render_template_string( - "{{ name }} {{ locale }} {{ gender }}\n", name=model_details[3], locale=model_details[1], gender="u" - ) - - -@app.route("/process", methods=["GET", "POST"]) -def mary_tts_api_process(): - """MaryTTS-compatible /process endpoint""" - with lock: - if request.method == "POST": - data = parse_qs(request.get_data(as_text=True)) - # NOTE: we ignore param. LOCALE and VOICE for now since we have only one active model - text = data.get("INPUT_TEXT", [""])[0] - else: - text = request.args.get("INPUT_TEXT", "") - print(f" > Model input: {text}") - wavs = synthesizer.tts(text) - out = io.BytesIO() - synthesizer.save_wav(wavs, out) - return send_file(out, mimetype="audio/wav") - - -def main(): - app.run(debug=args.debug, host="::", port=args.port) - - -if __name__ == "__main__": - main() diff --git a/TTS/server/static/coqui-log-green-TTS.png b/TTS/server/static/coqui-log-green-TTS.png deleted file mode 100644 index 6ad188b8c03a170097c0393c6769996f03cf9054..0000000000000000000000000000000000000000 Binary files a/TTS/server/static/coqui-log-green-TTS.png and /dev/null differ diff --git a/TTS/server/templates/details.html b/TTS/server/templates/details.html deleted file mode 100644 index 51c9ed85a83ac0aab045623ee1e6c430fbe51b9d..0000000000000000000000000000000000000000 --- a/TTS/server/templates/details.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - - - - - - TTS engine - - - - - - - - - - Fork me on GitHub - - {% if show_details == true %} - -
- Model details -
- -
-
- CLI arguments: - - - - - - - {% for key, value in args.items() %} - - - - - - - {% endfor %} -
CLI key Value
{{ key }}{{ value }}
-
-

- -
- - {% if model_config != None %} - -
- Model config: - - - - - - - - - {% for key, value in model_config.items() %} - - - - - - - {% endfor %} - -
Key Value
{{ key }}{{ value }}
-
- - {% endif %} - -

- - - -
- {% if vocoder_config != None %} -
- Vocoder model config: - - - - - - - - - {% for key, value in vocoder_config.items() %} - - - - - - - {% endfor %} - - -
Key Value
{{ key }}{{ value }}
-
- {% endif %} -

- - {% else %} -
- Please start server with --show_details=true to see details. -
- - {% endif %} - - - - \ No newline at end of file diff --git a/TTS/server/templates/index.html b/TTS/server/templates/index.html deleted file mode 100644 index 6354d3919d9a1e9c1e22e9866c84c4eb8284bc13..0000000000000000000000000000000000000000 --- a/TTS/server/templates/index.html +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - - - - - - TTS engine - - - - - - - - - - Fork me on GitHub - - - - - -
-
-
- - -
    -
- - {%if use_gst%} - - {%endif%} - - -

- - {%if use_multi_speaker%} - Choose a speaker: -

- {%endif%} - - {%if use_multi_language%} - Choose a language: -

- {%endif%} - - - {%if show_details%} -

- {%endif%} - -

-
-
-
- - - - - - - \ No newline at end of file diff --git a/TTS/setup.cfg b/TTS/setup.cfg deleted file mode 100644 index 1f31cb5decf4c9997bc26769d9cef18e19d759f8..0000000000000000000000000000000000000000 --- a/TTS/setup.cfg +++ /dev/null @@ -1,8 +0,0 @@ -[build_py] -build_lib=temp_build - -[bdist_wheel] -bdist_dir=temp_build - -[install_lib] -build_dir=temp_build diff --git a/TTS/setup.py b/TTS/setup.py deleted file mode 100644 index df14b41adcdda02932894e0bdad8acad9bc05c27..0000000000000000000000000000000000000000 --- a/TTS/setup.py +++ /dev/null @@ -1,141 +0,0 @@ -#!/usr/bin/env python -# ,*++++++*, ,*++++++*, -# *++. .+++ *++. .++* -# *+* ,++++* *+* *+* ,++++, *+* -# ,+, .++++++++++* ,++,,,,*+, ,++++++++++. *+, -# *+. .++++++++++++..++ *+.,++++++++++++. .+* -# .+* ++++++++++++.*+, .+*.++++++++++++ *+, -# .++ *++++++++* ++, .++.*++++++++* ++, -# ,+++*. . .*++, ,++*. .*+++* -# *+, .,*++**. .**++**. ,+* -# .+* *+, -# *+. Coqui .+* -# *+* +++ TTS +++ *+* -# .+++*. . . *+++. -# ,+* *+++*... ...*+++* *+, -# .++. .""""+++++++****+++++++"""". ++. -# ,++. .++, -# .++* *++. -# *+++, ,+++* -# .,*++++::::::++++*,. -# `````` - -import os -import subprocess -import sys -from packaging.version import Version - -import numpy -import setuptools.command.build_py -import setuptools.command.develop -from Cython.Build import cythonize -from setuptools import Extension, find_packages, setup - -python_version = sys.version.split()[0] -if Version(python_version) < Version("3.9") or Version(python_version) >= Version("3.12"): - raise RuntimeError("TTS requires python >= 3.9 and < 3.12 " "but your Python version is {}".format(sys.version)) - - -cwd = os.path.dirname(os.path.abspath(__file__)) -with open(os.path.join(cwd, "TTS", "VERSION")) as fin: - version = fin.read().strip() - - -class build_py(setuptools.command.build_py.build_py): # pylint: disable=too-many-ancestors - def run(self): - setuptools.command.build_py.build_py.run(self) - - -class develop(setuptools.command.develop.develop): - def run(self): - setuptools.command.develop.develop.run(self) - - -# The documentation for this feature is in server/README.md -package_data = ["TTS/server/templates/*"] - - -def pip_install(package_name): - subprocess.call([sys.executable, "-m", "pip", "install", package_name]) - - -requirements = open(os.path.join(cwd, "requirements.txt"), "r").readlines() -with open(os.path.join(cwd, "requirements.notebooks.txt"), "r") as f: - requirements_notebooks = f.readlines() -with open(os.path.join(cwd, "requirements.dev.txt"), "r") as f: - requirements_dev = f.readlines() -with open(os.path.join(cwd, "requirements.ja.txt"), "r") as f: - requirements_ja = f.readlines() -requirements_all = requirements_dev + requirements_notebooks + requirements_ja - -with open("README.md", "r", encoding="utf-8") as readme_file: - README = readme_file.read() - -exts = [ - Extension( - name="TTS.tts.utils.monotonic_align.core", - sources=["TTS/tts/utils/monotonic_align/core.pyx"], - ) -] -setup( - name="TTS", - version=version, - url="https://github.com/coqui-ai/TTS", - author="Eren Gölge", - author_email="egolge@coqui.ai", - description="Deep learning for Text to Speech by Coqui.", - long_description=README, - long_description_content_type="text/markdown", - license="MPL-2.0", - # cython - include_dirs=numpy.get_include(), - ext_modules=cythonize(exts, language_level=3), - # ext_modules=find_cython_extensions(), - # package - include_package_data=True, - packages=find_packages(include=["TTS"], exclude=["*.tests", "*tests.*", "tests.*", "*tests", "tests"]), - package_data={ - "TTS": [ - "VERSION", - ] - }, - project_urls={ - "Documentation": "https://github.com/coqui-ai/TTS/wiki", - "Tracker": "https://github.com/coqui-ai/TTS/issues", - "Repository": "https://github.com/coqui-ai/TTS", - "Discussions": "https://github.com/coqui-ai/TTS/discussions", - }, - cmdclass={ - "build_py": build_py, - "develop": develop, - # 'build_ext': build_ext - }, - install_requires=requirements, - extras_require={ - "all": requirements_all, - "dev": requirements_dev, - "notebooks": requirements_notebooks, - "ja": requirements_ja, - }, - python_requires=">=3.9.0, <3.12", - entry_points={"console_scripts": ["tts=TTS.bin.synthesize:main", "tts-server = TTS.server.server:main"]}, - classifiers=[ - "Programming Language :: Python", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.9", - "Programming Language :: Python :: 3.10", - "Programming Language :: Python :: 3.11", - "Development Status :: 3 - Alpha", - "Intended Audience :: Science/Research", - "Intended Audience :: Developers", - "Operating System :: POSIX :: Linux", - "License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)", - "Topic :: Software Development", - "Topic :: Software Development :: Libraries :: Python Modules", - "Topic :: Multimedia :: Sound/Audio :: Speech", - "Topic :: Multimedia :: Sound/Audio", - "Topic :: Multimedia", - "Topic :: Scientific/Engineering :: Artificial Intelligence", - ], - zip_safe=False, -) diff --git a/TTS/tests/__init__.py b/TTS/tests/__init__.py deleted file mode 100644 index e102a2dfeeb424b703ac5cbe0832ccadda745a00..0000000000000000000000000000000000000000 --- a/TTS/tests/__init__.py +++ /dev/null @@ -1,58 +0,0 @@ -import os - -from TTS.config import BaseDatasetConfig -from TTS.utils.generic_utils import get_cuda - - -def get_device_id(): - use_cuda, _ = get_cuda() - if use_cuda: - if "CUDA_VISIBLE_DEVICES" in os.environ and os.environ["CUDA_VISIBLE_DEVICES"] != "": - GPU_ID = os.environ["CUDA_VISIBLE_DEVICES"].split(",")[0] - else: - GPU_ID = "0" - else: - GPU_ID = "" - return GPU_ID - - -def get_tests_path(): - """Returns the path to the test directory.""" - return os.path.dirname(os.path.realpath(__file__)) - - -def get_tests_input_path(): - """Returns the path to the test data directory.""" - return os.path.join(get_tests_path(), "inputs") - - -def get_tests_data_path(): - """Returns the path to the test data directory.""" - return os.path.join(get_tests_path(), "data") - - -def get_tests_output_path(): - """Returns the path to the directory for test outputs.""" - path = os.path.join(get_tests_path(), "outputs") - os.makedirs(path, exist_ok=True) - return path - - -def run_cli(command): - exit_status = os.system(command) - assert exit_status == 0, f" [!] command `{command}` failed." - - -def get_test_data_config(): - return BaseDatasetConfig(formatter="ljspeech", path="tests/data/ljspeech/", meta_file_train="metadata.csv") - - -def assertHasAttr(test_obj, obj, intendedAttr): - # from https://stackoverflow.com/questions/48078636/pythons-unittest-lacks-an-asserthasattr-method-what-should-i-use-instead - testBool = hasattr(obj, intendedAttr) - test_obj.assertTrue(testBool, msg=f"obj lacking an attribute. obj: {obj}, intendedAttr: {intendedAttr}") - - -def assertHasNotAttr(test_obj, obj, intendedAttr): - testBool = hasattr(obj, intendedAttr) - test_obj.assertFalse(testBool, msg=f"obj should not have an attribute. obj: {obj}, intendedAttr: {intendedAttr}") diff --git a/TTS/tests/api_tests/__init__.py b/TTS/tests/api_tests/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tests/api_tests/test_python_api.py b/TTS/tests/api_tests/test_python_api.py deleted file mode 100644 index 2025fcd9c6b6558742779083efa96008d383cd80..0000000000000000000000000000000000000000 --- a/TTS/tests/api_tests/test_python_api.py +++ /dev/null @@ -1,113 +0,0 @@ -import os -import unittest - -from tests import get_tests_data_path, get_tests_output_path -from TTS.api import CS_API, TTS - -OUTPUT_PATH = os.path.join(get_tests_output_path(), "test_python_api.wav") -cloning_test_wav_path = os.path.join(get_tests_data_path(), "ljspeech/wavs/LJ001-0028.wav") - - -is_coqui_available = os.environ.get("COQUI_STUDIO_TOKEN") - - -if is_coqui_available: - - class CS_APITest(unittest.TestCase): - def test_speakers(self): - tts = CS_API() - self.assertGreater(len(tts.speakers), 1) - - def test_emotions(self): - tts = CS_API() - self.assertGreater(len(tts.emotions), 1) - - def test_list_calls(self): - tts = CS_API() - self.assertGreater(len(tts.list_voices()), 1) - self.assertGreater(len(tts.list_speakers()), 1) - self.assertGreater(len(tts.list_all_speakers()), 1) - self.assertGreater(len(tts.list_speakers_as_tts_models()), 1) - - def test_name_to_speaker(self): - tts = CS_API() - speaker_name = tts.list_speakers_as_tts_models()[0].split("/")[2] - speaker = tts.name_to_speaker(speaker_name) - self.assertEqual(speaker.name, speaker_name) - - def test_tts(self): - tts = CS_API() - wav, sr = tts.tts(text="This is a test.", speaker_name=tts.list_speakers()[0].name) - self.assertEqual(sr, 44100) - self.assertGreater(len(wav), 1) - - class TTSTest(unittest.TestCase): - def test_single_speaker_model(self): - tts = TTS(model_name="tts_models/de/thorsten/tacotron2-DDC", progress_bar=False, gpu=False) - - error_raised = False - try: - tts.tts_to_file(text="Ich bin eine Testnachricht.", speaker="Thorsten", language="de") - except ValueError: - error_raised = True - - tts.tts_to_file(text="Ich bin eine Testnachricht.", file_path=OUTPUT_PATH) - - self.assertTrue(error_raised) - self.assertFalse(tts.is_multi_speaker) - self.assertFalse(tts.is_multi_lingual) - self.assertIsNone(tts.speakers) - self.assertIsNone(tts.languages) - - def test_studio_model(self): - tts = TTS(model_name="coqui_studio/en/Zacharie Aimilios/coqui_studio") - tts.tts_to_file(text="This is a test.") - - # check speed > 2.0 raises error - raised_error = False - try: - _ = tts.tts(text="This is a test.", speed=4.0, emotion="Sad") # should raise error with speed > 2.0 - except ValueError: - raised_error = True - self.assertTrue(raised_error) - - # check emotion is invalid - raised_error = False - try: - _ = tts.tts(text="This is a test.", speed=2.0, emotion="No Emo") # should raise error with speed > 2.0 - except ValueError: - raised_error = True - self.assertTrue(raised_error) - - # check valid call - wav = tts.tts(text="This is a test.", speed=2.0, emotion="Sad") - self.assertGreater(len(wav), 0) - - def test_fairseq_model(self): # pylint: disable=no-self-use - tts = TTS(model_name="tts_models/eng/fairseq/vits") - tts.tts_to_file(text="This is a test.") - - def test_multi_speaker_multi_lingual_model(self): - tts = TTS() - tts.load_tts_model_by_name(tts.models[0]) # YourTTS - tts.tts_to_file( - text="Hello world!", speaker=tts.speakers[0], language=tts.languages[0], file_path=OUTPUT_PATH - ) - - self.assertTrue(tts.is_multi_speaker) - self.assertTrue(tts.is_multi_lingual) - self.assertGreater(len(tts.speakers), 1) - self.assertGreater(len(tts.languages), 1) - - def test_voice_cloning(self): # pylint: disable=no-self-use - tts = TTS() - tts.load_tts_model_by_name("tts_models/multilingual/multi-dataset/your_tts") - tts.tts_to_file("Hello world!", speaker_wav=cloning_test_wav_path, language="en", file_path=OUTPUT_PATH) - - def test_voice_conversion(self): # pylint: disable=no-self-use - tts = TTS(model_name="voice_conversion_models/multilingual/vctk/freevc24", progress_bar=False, gpu=False) - tts.voice_conversion_to_file( - source_wav=cloning_test_wav_path, - target_wav=cloning_test_wav_path, - file_path=OUTPUT_PATH, - ) diff --git a/TTS/tests/api_tests/test_synthesize_api.py b/TTS/tests/api_tests/test_synthesize_api.py deleted file mode 100644 index a96c8beab6bd682c735c01c3f299beba4e17a8e8..0000000000000000000000000000000000000000 --- a/TTS/tests/api_tests/test_synthesize_api.py +++ /dev/null @@ -1,15 +0,0 @@ -import os - -from tests import get_tests_output_path, run_cli - - -def test_synthesize(): - """Test synthesize.py with diffent arguments.""" - output_path = os.path.join(get_tests_output_path(), "output.wav") - - # 🐸 Coqui studio model - run_cli( - 'tts --model_name "coqui_studio/en/Torcull Diarmuid/coqui_studio" ' - '--text "This is it" ' - f'--out_path "{output_path}"' - ) diff --git a/TTS/tests/aux_tests/__init__.py b/TTS/tests/aux_tests/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tests/aux_tests/test_audio_processor.py b/TTS/tests/aux_tests/test_audio_processor.py deleted file mode 100644 index 5b1fa9d38a0026ecfc8cf257fb90168cf44a20b6..0000000000000000000000000000000000000000 --- a/TTS/tests/aux_tests/test_audio_processor.py +++ /dev/null @@ -1,190 +0,0 @@ -import os -import unittest - -from tests import get_tests_input_path, get_tests_output_path, get_tests_path -from TTS.config import BaseAudioConfig -from TTS.utils.audio.processor import AudioProcessor - -TESTS_PATH = get_tests_path() -OUT_PATH = os.path.join(get_tests_output_path(), "audio_tests") -WAV_FILE = os.path.join(get_tests_input_path(), "example_1.wav") - -os.makedirs(OUT_PATH, exist_ok=True) -conf = BaseAudioConfig(mel_fmax=8000, pitch_fmax=640, pitch_fmin=1) - - -# pylint: disable=protected-access -class TestAudio(unittest.TestCase): - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - self.ap = AudioProcessor(**conf) - - def test_audio_synthesis(self): - """1. load wav - 2. set normalization parameters - 3. extract mel-spec - 4. invert to wav and save the output - """ - print(" > Sanity check for the process wav -> mel -> wav") - - def _test(max_norm, signal_norm, symmetric_norm, clip_norm): - self.ap.max_norm = max_norm - self.ap.signal_norm = signal_norm - self.ap.symmetric_norm = symmetric_norm - self.ap.clip_norm = clip_norm - wav = self.ap.load_wav(WAV_FILE) - mel = self.ap.melspectrogram(wav) - wav_ = self.ap.inv_melspectrogram(mel) - file_name = "/audio_test-melspec_max_norm_{}-signal_norm_{}-symmetric_{}-clip_norm_{}.wav".format( - max_norm, signal_norm, symmetric_norm, clip_norm - ) - print(" | > Creating wav file at : ", file_name) - self.ap.save_wav(wav_, OUT_PATH + file_name) - - # maxnorm = 1.0 - _test(1.0, False, False, False) - _test(1.0, True, False, False) - _test(1.0, True, True, False) - _test(1.0, True, False, True) - _test(1.0, True, True, True) - # maxnorm = 4.0 - _test(4.0, False, False, False) - _test(4.0, True, False, False) - _test(4.0, True, True, False) - _test(4.0, True, False, True) - _test(4.0, True, True, True) - - def test_normalize(self): - """Check normalization and denormalization for range values and consistency""" - print(" > Testing normalization and denormalization.") - wav = self.ap.load_wav(WAV_FILE) - wav = self.ap.sound_norm(wav) # normalize audio to get abetter normalization range below. - self.ap.signal_norm = False - x = self.ap.melspectrogram(wav) - x_old = x - - self.ap.signal_norm = True - self.ap.symmetric_norm = False - self.ap.clip_norm = False - self.ap.max_norm = 4.0 - x_norm = self.ap.normalize(x) - print( - f" > MaxNorm: {self.ap.max_norm}, ClipNorm:{self.ap.clip_norm}, SymmetricNorm:{self.ap.symmetric_norm}, SignalNorm:{self.ap.signal_norm} Range-> {x_norm.max()} -- {x_norm.min()}" - ) - assert (x_old - x).sum() == 0 - # check value range - assert x_norm.max() <= self.ap.max_norm + 1, x_norm.max() - assert x_norm.min() >= 0 - 1, x_norm.min() - # check denorm. - x_ = self.ap.denormalize(x_norm) - assert (x - x_).sum() < 1e-3, (x - x_).mean() - - self.ap.signal_norm = True - self.ap.symmetric_norm = False - self.ap.clip_norm = True - self.ap.max_norm = 4.0 - x_norm = self.ap.normalize(x) - print( - f" > MaxNorm: {self.ap.max_norm}, ClipNorm:{self.ap.clip_norm}, SymmetricNorm:{self.ap.symmetric_norm}, SignalNorm:{self.ap.signal_norm} Range-> {x_norm.max()} -- {x_norm.min()}" - ) - - assert (x_old - x).sum() == 0 - # check value range - assert x_norm.max() <= self.ap.max_norm, x_norm.max() - assert x_norm.min() >= 0, x_norm.min() - # check denorm. - x_ = self.ap.denormalize(x_norm) - assert (x - x_).sum() < 1e-3, (x - x_).mean() - - self.ap.signal_norm = True - self.ap.symmetric_norm = True - self.ap.clip_norm = False - self.ap.max_norm = 4.0 - x_norm = self.ap.normalize(x) - print( - f" > MaxNorm: {self.ap.max_norm}, ClipNorm:{self.ap.clip_norm}, SymmetricNorm:{self.ap.symmetric_norm}, SignalNorm:{self.ap.signal_norm} Range-> {x_norm.max()} -- {x_norm.min()}" - ) - - assert (x_old - x).sum() == 0 - # check value range - assert x_norm.max() <= self.ap.max_norm + 1, x_norm.max() - assert x_norm.min() >= -self.ap.max_norm - 2, x_norm.min() # pylint: disable=invalid-unary-operand-type - assert x_norm.min() <= 0, x_norm.min() - # check denorm. - x_ = self.ap.denormalize(x_norm) - assert (x - x_).sum() < 1e-3, (x - x_).mean() - - self.ap.signal_norm = True - self.ap.symmetric_norm = True - self.ap.clip_norm = True - self.ap.max_norm = 4.0 - x_norm = self.ap.normalize(x) - print( - f" > MaxNorm: {self.ap.max_norm}, ClipNorm:{self.ap.clip_norm}, SymmetricNorm:{self.ap.symmetric_norm}, SignalNorm:{self.ap.signal_norm} Range-> {x_norm.max()} -- {x_norm.min()}" - ) - - assert (x_old - x).sum() == 0 - # check value range - assert x_norm.max() <= self.ap.max_norm, x_norm.max() - assert x_norm.min() >= -self.ap.max_norm, x_norm.min() # pylint: disable=invalid-unary-operand-type - assert x_norm.min() <= 0, x_norm.min() - # check denorm. - x_ = self.ap.denormalize(x_norm) - assert (x - x_).sum() < 1e-3, (x - x_).mean() - - self.ap.signal_norm = True - self.ap.symmetric_norm = False - self.ap.max_norm = 1.0 - x_norm = self.ap.normalize(x) - print( - f" > MaxNorm: {self.ap.max_norm}, ClipNorm:{self.ap.clip_norm}, SymmetricNorm:{self.ap.symmetric_norm}, SignalNorm:{self.ap.signal_norm} Range-> {x_norm.max()} -- {x_norm.min()}" - ) - - assert (x_old - x).sum() == 0 - assert x_norm.max() <= self.ap.max_norm, x_norm.max() - assert x_norm.min() >= 0, x_norm.min() - x_ = self.ap.denormalize(x_norm) - assert (x - x_).sum() < 1e-3 - - self.ap.signal_norm = True - self.ap.symmetric_norm = True - self.ap.max_norm = 1.0 - x_norm = self.ap.normalize(x) - print( - f" > MaxNorm: {self.ap.max_norm}, ClipNorm:{self.ap.clip_norm}, SymmetricNorm:{self.ap.symmetric_norm}, SignalNorm:{self.ap.signal_norm} Range-> {x_norm.max()} -- {x_norm.min()}" - ) - - assert (x_old - x).sum() == 0 - assert x_norm.max() <= self.ap.max_norm, x_norm.max() - assert x_norm.min() >= -self.ap.max_norm, x_norm.min() # pylint: disable=invalid-unary-operand-type - assert x_norm.min() < 0, x_norm.min() - x_ = self.ap.denormalize(x_norm) - assert (x - x_).sum() < 1e-3 - - def test_scaler(self): - scaler_stats_path = os.path.join(get_tests_input_path(), "scale_stats.npy") - conf.stats_path = scaler_stats_path - conf.preemphasis = 0.0 - conf.do_trim_silence = True - conf.signal_norm = True - - ap = AudioProcessor(**conf) - mel_mean, mel_std, linear_mean, linear_std, _ = ap.load_stats(scaler_stats_path) - ap.setup_scaler(mel_mean, mel_std, linear_mean, linear_std) - - self.ap.signal_norm = False - self.ap.preemphasis = 0.0 - - # test scaler forward and backward transforms - wav = self.ap.load_wav(WAV_FILE) - mel_reference = self.ap.melspectrogram(wav) - mel_norm = ap.melspectrogram(wav) - mel_denorm = ap.denormalize(mel_norm) - assert abs(mel_reference - mel_denorm).max() < 1e-4 - - def test_compute_f0(self): # pylint: disable=no-self-use - ap = AudioProcessor(**conf) - wav = ap.load_wav(WAV_FILE) - pitch = ap.compute_f0(wav) - mel = ap.melspectrogram(wav) - assert pitch.shape[0] == mel.shape[1] diff --git a/TTS/tests/aux_tests/test_embedding_manager.py b/TTS/tests/aux_tests/test_embedding_manager.py deleted file mode 100644 index 7392150163dd92bfa65e43774db9b6684d807237..0000000000000000000000000000000000000000 --- a/TTS/tests/aux_tests/test_embedding_manager.py +++ /dev/null @@ -1,92 +0,0 @@ -import os -import unittest - -import numpy as np -import torch - -from tests import get_tests_input_path -from TTS.config import load_config -from TTS.encoder.utils.generic_utils import setup_encoder_model -from TTS.encoder.utils.io import save_checkpoint -from TTS.tts.utils.managers import EmbeddingManager -from TTS.utils.audio import AudioProcessor - -encoder_config_path = os.path.join(get_tests_input_path(), "test_speaker_encoder_config.json") -encoder_model_path = os.path.join(get_tests_input_path(), "checkpoint_0.pth") -sample_wav_path = os.path.join(get_tests_input_path(), "../data/ljspeech/wavs/LJ001-0001.wav") -sample_wav_path2 = os.path.join(get_tests_input_path(), "../data/ljspeech/wavs/LJ001-0002.wav") -embedding_file_path = os.path.join(get_tests_input_path(), "../data/dummy_speakers.json") -embeddings_file_path2 = os.path.join(get_tests_input_path(), "../data/dummy_speakers2.json") -embeddings_file_pth_path = os.path.join(get_tests_input_path(), "../data/dummy_speakers.pth") - - -class EmbeddingManagerTest(unittest.TestCase): - """Test emEeddingManager for loading embedding files and computing embeddings from waveforms""" - - @staticmethod - def test_speaker_embedding(): - # load config - config = load_config(encoder_config_path) - config.audio.resample = True - - # create a dummy speaker encoder - model = setup_encoder_model(config) - save_checkpoint(model, None, None, get_tests_input_path(), 0) - - # load audio processor and speaker encoder - manager = EmbeddingManager(encoder_model_path=encoder_model_path, encoder_config_path=encoder_config_path) - - # load a sample audio and compute embedding - ap = AudioProcessor(**config.audio) - waveform = ap.load_wav(sample_wav_path) - mel = ap.melspectrogram(waveform) - embedding = manager.compute_embeddings(mel) - assert embedding.shape[1] == 256 - - # compute embedding directly from an input file - embedding = manager.compute_embedding_from_clip(sample_wav_path) - embedding2 = manager.compute_embedding_from_clip(sample_wav_path) - embedding = torch.FloatTensor(embedding) - embedding2 = torch.FloatTensor(embedding2) - assert embedding.shape[0] == 256 - assert (embedding - embedding2).sum() == 0.0 - - # compute embedding from a list of wav files. - embedding3 = manager.compute_embedding_from_clip([sample_wav_path, sample_wav_path2]) - embedding3 = torch.FloatTensor(embedding3) - assert embedding3.shape[0] == 256 - assert (embedding - embedding3).sum() != 0.0 - - # remove dummy model - os.remove(encoder_model_path) - - def test_embedding_file_processing(self): # pylint: disable=no-self-use - manager = EmbeddingManager(embedding_file_path=embeddings_file_pth_path) - # test embedding querying - embedding = manager.get_embedding_by_clip(manager.clip_ids[0]) - assert len(embedding) == 256 - embeddings = manager.get_embeddings_by_name(manager.embedding_names[0]) - assert len(embeddings[0]) == 256 - embedding1 = manager.get_mean_embedding(manager.embedding_names[0], num_samples=2, randomize=True) - assert len(embedding1) == 256 - embedding2 = manager.get_mean_embedding(manager.embedding_names[0], num_samples=2, randomize=False) - assert len(embedding2) == 256 - assert np.sum(np.array(embedding1) - np.array(embedding2)) != 0 - - def test_embedding_file_loading(self): - # test loading a json file - manager = EmbeddingManager(embedding_file_path=embedding_file_path) - self.assertEqual(manager.num_embeddings, 384) - self.assertEqual(manager.embedding_dim, 256) - # test loading a pth file - manager = EmbeddingManager(embedding_file_path=embeddings_file_pth_path) - self.assertEqual(manager.num_embeddings, 384) - self.assertEqual(manager.embedding_dim, 256) - # test loading a pth files with duplicate embedding keys - with self.assertRaises(Exception) as context: - manager = EmbeddingManager(embedding_file_path=[embeddings_file_pth_path, embeddings_file_pth_path]) - self.assertTrue("Duplicate embedding names" in str(context.exception)) - # test loading embedding files with different embedding keys - manager = EmbeddingManager(embedding_file_path=[embeddings_file_pth_path, embeddings_file_path2]) - self.assertEqual(manager.embedding_dim, 256) - self.assertEqual(manager.num_embeddings, 384 * 2) diff --git a/TTS/tests/aux_tests/test_extract_tts_spectrograms.py b/TTS/tests/aux_tests/test_extract_tts_spectrograms.py deleted file mode 100644 index f2d119ac350e81797cf3d0d7157cf6a81d1c98d6..0000000000000000000000000000000000000000 --- a/TTS/tests/aux_tests/test_extract_tts_spectrograms.py +++ /dev/null @@ -1,67 +0,0 @@ -import os -import unittest - -import torch - -from tests import get_tests_input_path, get_tests_output_path, run_cli -from TTS.config import load_config -from TTS.tts.models import setup_model - -torch.manual_seed(1) - - -# pylint: disable=protected-access -class TestExtractTTSSpectrograms(unittest.TestCase): - @staticmethod - def test_GlowTTS(): - # set paths - config_path = os.path.join(get_tests_input_path(), "test_glow_tts.json") - checkpoint_path = os.path.join(get_tests_output_path(), "glowtts.pth") - output_path = os.path.join(get_tests_output_path(), "output_extract_tts_spectrograms/") - # load config - c = load_config(config_path) - # create model - model = setup_model(c) - # save model - torch.save({"model": model.state_dict()}, checkpoint_path) - # run test - run_cli( - f'CUDA_VISIBLE_DEVICES="" python TTS/bin/extract_tts_spectrograms.py --config_path "{config_path}" --checkpoint_path "{checkpoint_path}" --output_path "{output_path}"' - ) - run_cli(f'rm -rf "{output_path}" "{checkpoint_path}"') - - @staticmethod - def test_Tacotron2(): - # set paths - config_path = os.path.join(get_tests_input_path(), "test_tacotron2_config.json") - checkpoint_path = os.path.join(get_tests_output_path(), "tacotron2.pth") - output_path = os.path.join(get_tests_output_path(), "output_extract_tts_spectrograms/") - # load config - c = load_config(config_path) - # create model - model = setup_model(c) - # save model - torch.save({"model": model.state_dict()}, checkpoint_path) - # run test - run_cli( - f'CUDA_VISIBLE_DEVICES="" python TTS/bin/extract_tts_spectrograms.py --config_path "{config_path}" --checkpoint_path "{checkpoint_path}" --output_path "{output_path}"' - ) - run_cli(f'rm -rf "{output_path}" "{checkpoint_path}"') - - @staticmethod - def test_Tacotron(): - # set paths - config_path = os.path.join(get_tests_input_path(), "test_tacotron_config.json") - checkpoint_path = os.path.join(get_tests_output_path(), "tacotron.pth") - output_path = os.path.join(get_tests_output_path(), "output_extract_tts_spectrograms/") - # load config - c = load_config(config_path) - # create model - model = setup_model(c) - # save model - torch.save({"model": model.state_dict()}, checkpoint_path) - # run test - run_cli( - f'CUDA_VISIBLE_DEVICES="" python TTS/bin/extract_tts_spectrograms.py --config_path "{config_path}" --checkpoint_path "{checkpoint_path}" --output_path "{output_path}"' - ) - run_cli(f'rm -rf "{output_path}" "{checkpoint_path}"') diff --git a/TTS/tests/aux_tests/test_find_unique_phonemes.py b/TTS/tests/aux_tests/test_find_unique_phonemes.py deleted file mode 100644 index 018679f573020075fa77cd0b917fbbe75e4627c0..0000000000000000000000000000000000000000 --- a/TTS/tests/aux_tests/test_find_unique_phonemes.py +++ /dev/null @@ -1,81 +0,0 @@ -import os -import unittest - -import torch - -from tests import get_tests_output_path, run_cli -from TTS.config.shared_configs import BaseDatasetConfig -from TTS.tts.configs.vits_config import VitsConfig - -torch.manual_seed(1) - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") - -dataset_config_en = BaseDatasetConfig( - formatter="ljspeech", - meta_file_train="metadata.csv", - meta_file_val="metadata.csv", - path="tests/data/ljspeech", - language="en", -) - -""" -dataset_config_pt = BaseDatasetConfig( - formatter="ljspeech", - meta_file_train="metadata.csv", - meta_file_val="metadata.csv", - path="tests/data/ljspeech", - language="pt-br", -) -""" - - -# pylint: disable=protected-access -class TestFindUniquePhonemes(unittest.TestCase): - @staticmethod - def test_espeak_phonemes(): - # prepare the config - config = VitsConfig( - batch_size=2, - eval_batch_size=2, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - datasets=[dataset_config_en], - ) - config.save_json(config_path) - - # run test - run_cli(f'CUDA_VISIBLE_DEVICES="" python TTS/bin/find_unique_phonemes.py --config_path "{config_path}"') - - @staticmethod - def test_no_espeak_phonemes(): - # prepare the config - config = VitsConfig( - batch_size=2, - eval_batch_size=2, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - datasets=[dataset_config_en], - ) - config.save_json(config_path) - - # run test - run_cli(f'CUDA_VISIBLE_DEVICES="" python TTS/bin/find_unique_phonemes.py --config_path "{config_path}"') diff --git a/TTS/tests/aux_tests/test_numpy_transforms.py b/TTS/tests/aux_tests/test_numpy_transforms.py deleted file mode 100644 index 00597a0f88038e97ace965234703f43fad872d0f..0000000000000000000000000000000000000000 --- a/TTS/tests/aux_tests/test_numpy_transforms.py +++ /dev/null @@ -1,106 +0,0 @@ -import math -import os -import unittest -from dataclasses import dataclass - -import librosa -import numpy as np -from coqpit import Coqpit - -from tests import get_tests_input_path, get_tests_output_path, get_tests_path -from TTS.utils.audio import numpy_transforms as np_transforms - -TESTS_PATH = get_tests_path() -OUT_PATH = os.path.join(get_tests_output_path(), "audio_tests") -WAV_FILE = os.path.join(get_tests_input_path(), "example_1.wav") - -os.makedirs(OUT_PATH, exist_ok=True) - - -# pylint: disable=no-self-use - - -class TestNumpyTransforms(unittest.TestCase): - def setUp(self) -> None: - @dataclass - class AudioConfig(Coqpit): - sample_rate: int = 22050 - fft_size: int = 1024 - num_mels: int = 256 - mel_fmax: int = 1800 - mel_fmin: int = 0 - hop_length: int = 256 - win_length: int = 1024 - pitch_fmax: int = 640 - pitch_fmin: int = 1 - trim_db: int = -1 - min_silence_sec: float = 0.01 - gain: float = 1.0 - base: float = 10.0 - - self.config = AudioConfig() - self.sample_wav, _ = librosa.load(WAV_FILE, sr=self.config.sample_rate) - - def test_build_mel_basis(self): - """Check if the mel basis is correctly built""" - print(" > Testing mel basis building.") - mel_basis = np_transforms.build_mel_basis(**self.config) - self.assertEqual(mel_basis.shape, (self.config.num_mels, self.config.fft_size // 2 + 1)) - - def test_millisec_to_length(self): - """Check if the conversion from milliseconds to length is correct""" - print(" > Testing millisec to length conversion.") - win_len, hop_len = np_transforms.millisec_to_length( - frame_length_ms=1000, frame_shift_ms=12.5, sample_rate=self.config.sample_rate - ) - self.assertEqual(hop_len, int(12.5 / 1000.0 * self.config.sample_rate)) - self.assertEqual(win_len, self.config.sample_rate) - - def test_amplitude_db_conversion(self): - di = np.random.rand(11) - o1 = np_transforms.amp_to_db(x=di, gain=1.0, base=10) - o2 = np_transforms.db_to_amp(x=o1, gain=1.0, base=10) - np.testing.assert_almost_equal(di, o2, decimal=5) - - def test_preemphasis_deemphasis(self): - di = np.random.rand(11) - o1 = np_transforms.preemphasis(x=di, coeff=0.95) - o2 = np_transforms.deemphasis(x=o1, coeff=0.95) - np.testing.assert_almost_equal(di, o2, decimal=5) - - def test_spec_to_mel(self): - mel_basis = np_transforms.build_mel_basis(**self.config) - spec = np.random.rand(self.config.fft_size // 2 + 1, 20) # [C, T] - mel = np_transforms.spec_to_mel(spec=spec, mel_basis=mel_basis) - self.assertEqual(mel.shape, (self.config.num_mels, 20)) - - def mel_to_spec(self): - mel_basis = np_transforms.build_mel_basis(**self.config) - mel = np.random.rand(self.config.num_mels, 20) # [C, T] - spec = np_transforms.mel_to_spec(mel=mel, mel_basis=mel_basis) - self.assertEqual(spec.shape, (self.config.fft_size // 2 + 1, 20)) - - def test_wav_to_spec(self): - spec = np_transforms.wav_to_spec(wav=self.sample_wav, **self.config) - self.assertEqual( - spec.shape, (self.config.fft_size // 2 + 1, math.ceil(self.sample_wav.shape[0] / self.config.hop_length)) - ) - - def test_wav_to_mel(self): - mel_basis = np_transforms.build_mel_basis(**self.config) - mel = np_transforms.wav_to_mel(wav=self.sample_wav, mel_basis=mel_basis, **self.config) - self.assertEqual( - mel.shape, (self.config.num_mels, math.ceil(self.sample_wav.shape[0] / self.config.hop_length)) - ) - - def test_compute_f0(self): - pitch = np_transforms.compute_f0(x=self.sample_wav, **self.config) - mel_basis = np_transforms.build_mel_basis(**self.config) - mel = np_transforms.wav_to_mel(wav=self.sample_wav, mel_basis=mel_basis, **self.config) - assert pitch.shape[0] == mel.shape[1] - - def test_load_wav(self): - wav = np_transforms.load_wav(filename=WAV_FILE, resample=False, sample_rate=22050) - wav_resample = np_transforms.load_wav(filename=WAV_FILE, resample=True, sample_rate=16000) - self.assertEqual(wav.shape, (self.sample_wav.shape[0],)) - self.assertNotEqual(wav_resample.shape, (self.sample_wav.shape[0],)) diff --git a/TTS/tests/aux_tests/test_speaker_encoder.py b/TTS/tests/aux_tests/test_speaker_encoder.py deleted file mode 100644 index 01f6118ad714a3711be6cea98647d6c57564485e..0000000000000000000000000000000000000000 --- a/TTS/tests/aux_tests/test_speaker_encoder.py +++ /dev/null @@ -1,147 +0,0 @@ -import unittest - -import torch as T - -from tests import get_tests_input_path -from TTS.encoder.losses import AngleProtoLoss, GE2ELoss, SoftmaxAngleProtoLoss -from TTS.encoder.models.lstm import LSTMSpeakerEncoder -from TTS.encoder.models.resnet import ResNetSpeakerEncoder - -file_path = get_tests_input_path() - - -class LSTMSpeakerEncoderTests(unittest.TestCase): - # pylint: disable=R0201 - def test_in_out(self): - dummy_input = T.rand(4, 80, 20) # B x D x T - dummy_hidden = [T.rand(2, 4, 128), T.rand(2, 4, 128)] - model = LSTMSpeakerEncoder(input_dim=80, proj_dim=256, lstm_dim=768, num_lstm_layers=3) - # computing d vectors - output = model.forward(dummy_input) - assert output.shape[0] == 4 - assert output.shape[1] == 256 - output = model.inference(dummy_input) - assert output.shape[0] == 4 - assert output.shape[1] == 256 - # compute d vectors by passing LSTM hidden - # output = model.forward(dummy_input, dummy_hidden) - # assert output.shape[0] == 4 - # assert output.shape[1] == 20 - # assert output.shape[2] == 256 - # check normalization - output_norm = T.nn.functional.normalize(output, dim=1, p=2) - assert_diff = (output_norm - output).sum().item() - assert output.type() == "torch.FloatTensor" - assert abs(assert_diff) < 1e-4, f" [!] output_norm has wrong values - {assert_diff}" - # compute d for a given batch - dummy_input = T.rand(1, 80, 240) # B x T x D - output = model.compute_embedding(dummy_input, num_frames=160, num_eval=5) - assert output.shape[0] == 1 - assert output.shape[1] == 256 - assert len(output.shape) == 2 - - -class ResNetSpeakerEncoderTests(unittest.TestCase): - # pylint: disable=R0201 - def test_in_out(self): - dummy_input = T.rand(4, 80, 20) # B x D x T - dummy_hidden = [T.rand(2, 4, 128), T.rand(2, 4, 128)] - model = ResNetSpeakerEncoder(input_dim=80, proj_dim=256) - # computing d vectors - output = model.forward(dummy_input) - assert output.shape[0] == 4 - assert output.shape[1] == 256 - output = model.forward(dummy_input, l2_norm=True) - assert output.shape[0] == 4 - assert output.shape[1] == 256 - - # check normalization - output_norm = T.nn.functional.normalize(output, dim=1, p=2) - assert_diff = (output_norm - output).sum().item() - assert output.type() == "torch.FloatTensor" - assert abs(assert_diff) < 1e-4, f" [!] output_norm has wrong values - {assert_diff}" - # compute d for a given batch - dummy_input = T.rand(1, 80, 240) # B x D x T - output = model.compute_embedding(dummy_input, num_frames=160, num_eval=10) - assert output.shape[0] == 1 - assert output.shape[1] == 256 - assert len(output.shape) == 2 - - -class GE2ELossTests(unittest.TestCase): - # pylint: disable=R0201 - def test_in_out(self): - # check random input - dummy_input = T.rand(4, 5, 64) # num_speaker x num_utterance x dim - loss = GE2ELoss(loss_method="softmax") - output = loss.forward(dummy_input) - assert output.item() >= 0.0 - # check all zeros - dummy_input = T.ones(4, 5, 64) # num_speaker x num_utterance x dim - loss = GE2ELoss(loss_method="softmax") - output = loss.forward(dummy_input) - assert output.item() >= 0.0 - # check speaker loss with orthogonal d-vectors - dummy_input = T.empty(3, 64) - dummy_input = T.nn.init.orthogonal_(dummy_input) - dummy_input = T.cat( - [ - dummy_input[0].repeat(5, 1, 1).transpose(0, 1), - dummy_input[1].repeat(5, 1, 1).transpose(0, 1), - dummy_input[2].repeat(5, 1, 1).transpose(0, 1), - ] - ) # num_speaker x num_utterance x dim - loss = GE2ELoss(loss_method="softmax") - output = loss.forward(dummy_input) - assert output.item() < 0.005 - - -class AngleProtoLossTests(unittest.TestCase): - # pylint: disable=R0201 - def test_in_out(self): - # check random input - dummy_input = T.rand(4, 5, 64) # num_speaker x num_utterance x dim - loss = AngleProtoLoss() - output = loss.forward(dummy_input) - assert output.item() >= 0.0 - - # check all zeros - dummy_input = T.ones(4, 5, 64) # num_speaker x num_utterance x dim - loss = AngleProtoLoss() - output = loss.forward(dummy_input) - assert output.item() >= 0.0 - - # check speaker loss with orthogonal d-vectors - dummy_input = T.empty(3, 64) - dummy_input = T.nn.init.orthogonal_(dummy_input) - dummy_input = T.cat( - [ - dummy_input[0].repeat(5, 1, 1).transpose(0, 1), - dummy_input[1].repeat(5, 1, 1).transpose(0, 1), - dummy_input[2].repeat(5, 1, 1).transpose(0, 1), - ] - ) # num_speaker x num_utterance x dim - loss = AngleProtoLoss() - output = loss.forward(dummy_input) - assert output.item() < 0.005 - - -class SoftmaxAngleProtoLossTests(unittest.TestCase): - # pylint: disable=R0201 - def test_in_out(self): - embedding_dim = 64 - num_speakers = 5 - batch_size = 4 - - dummy_label = T.randint(low=0, high=num_speakers, size=(batch_size, num_speakers)) - # check random input - dummy_input = T.rand(batch_size, num_speakers, embedding_dim) # num_speaker x num_utterance x dim - loss = SoftmaxAngleProtoLoss(embedding_dim=embedding_dim, n_speakers=num_speakers) - output = loss.forward(dummy_input, dummy_label) - assert output.item() >= 0.0 - - # check all zeros - dummy_input = T.ones(batch_size, num_speakers, embedding_dim) # num_speaker x num_utterance x dim - loss = SoftmaxAngleProtoLoss(embedding_dim=embedding_dim, n_speakers=num_speakers) - output = loss.forward(dummy_input, dummy_label) - assert output.item() >= 0.0 diff --git a/TTS/tests/aux_tests/test_speaker_encoder_train.py b/TTS/tests/aux_tests/test_speaker_encoder_train.py deleted file mode 100644 index 5d8626faa665f7195222be8e50c26c31b4af73cd..0000000000000000000000000000000000000000 --- a/TTS/tests/aux_tests/test_speaker_encoder_train.py +++ /dev/null @@ -1,88 +0,0 @@ -import glob -import os -import shutil - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.config.shared_configs import BaseAudioConfig -from TTS.encoder.configs.speaker_encoder_config import SpeakerEncoderConfig - - -def run_test_train(): - command = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_encoder.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech_test " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - ) - run_cli(command) - - -config_path = os.path.join(get_tests_output_path(), "test_speaker_encoder_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - -config = SpeakerEncoderConfig( - batch_size=4, - num_classes_in_batch=4, - num_utter_per_class=2, - eval_num_classes_in_batch=4, - eval_num_utter_per_class=2, - num_loader_workers=1, - epochs=1, - print_step=1, - save_step=2, - print_eval=True, - run_eval=True, - audio=BaseAudioConfig(num_mels=80), -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.loss = "ge2e" -config.save_json(config_path) - -print(config) -# train the model for one epoch -run_test_train() - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# restore the model and continue training for one more epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_encoder.py --continue_path {continue_path} " -) -run_cli(command_train) -shutil.rmtree(continue_path) - -# test resnet speaker encoder -config.model_params["model_name"] = "resnet" -config.save_json(config_path) - -# train the model for one epoch -run_test_train() - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# restore the model and continue training for one more epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_encoder.py --continue_path {continue_path} " -) -run_cli(command_train) -shutil.rmtree(continue_path) - -# test model with ge2e loss function -# config.loss = "ge2e" -# config.save_json(config_path) -# run_test_train() - -# test model with angleproto loss function -# config.loss = "angleproto" -# config.save_json(config_path) -# run_test_train() - -# test model with softmaxproto loss function -config.loss = "softmaxproto" -config.save_json(config_path) -run_test_train() diff --git a/TTS/tests/aux_tests/test_speaker_manager.py b/TTS/tests/aux_tests/test_speaker_manager.py deleted file mode 100644 index 397f9c81f67fea675ee2e6ce665313785597b536..0000000000000000000000000000000000000000 --- a/TTS/tests/aux_tests/test_speaker_manager.py +++ /dev/null @@ -1,77 +0,0 @@ -import os -import unittest - -import numpy as np -import torch - -from tests import get_tests_input_path -from TTS.config import load_config -from TTS.encoder.utils.generic_utils import setup_encoder_model -from TTS.encoder.utils.io import save_checkpoint -from TTS.tts.utils.speakers import SpeakerManager -from TTS.utils.audio import AudioProcessor - -encoder_config_path = os.path.join(get_tests_input_path(), "test_speaker_encoder_config.json") -encoder_model_path = os.path.join(get_tests_input_path(), "checkpoint_0.pth") -sample_wav_path = os.path.join(get_tests_input_path(), "../data/ljspeech/wavs/LJ001-0001.wav") -sample_wav_path2 = os.path.join(get_tests_input_path(), "../data/ljspeech/wavs/LJ001-0002.wav") -d_vectors_file_path = os.path.join(get_tests_input_path(), "../data/dummy_speakers.json") -d_vectors_file_pth_path = os.path.join(get_tests_input_path(), "../data/dummy_speakers.pth") - - -class SpeakerManagerTest(unittest.TestCase): - """Test SpeakerManager for loading embedding files and computing d_vectors from waveforms""" - - @staticmethod - def test_speaker_embedding(): - # load config - config = load_config(encoder_config_path) - config.audio.resample = True - - # create a dummy speaker encoder - model = setup_encoder_model(config) - save_checkpoint(model, None, None, get_tests_input_path(), 0) - - # load audio processor and speaker encoder - ap = AudioProcessor(**config.audio) - manager = SpeakerManager(encoder_model_path=encoder_model_path, encoder_config_path=encoder_config_path) - - # load a sample audio and compute embedding - waveform = ap.load_wav(sample_wav_path) - mel = ap.melspectrogram(waveform) - d_vector = manager.compute_embeddings(mel) - assert d_vector.shape[1] == 256 - - # compute d_vector directly from an input file - d_vector = manager.compute_embedding_from_clip(sample_wav_path) - d_vector2 = manager.compute_embedding_from_clip(sample_wav_path) - d_vector = torch.FloatTensor(d_vector) - d_vector2 = torch.FloatTensor(d_vector2) - assert d_vector.shape[0] == 256 - assert (d_vector - d_vector2).sum() == 0.0 - - # compute d_vector from a list of wav files. - d_vector3 = manager.compute_embedding_from_clip([sample_wav_path, sample_wav_path2]) - d_vector3 = torch.FloatTensor(d_vector3) - assert d_vector3.shape[0] == 256 - assert (d_vector - d_vector3).sum() != 0.0 - - # remove dummy model - os.remove(encoder_model_path) - - def test_dvector_file_processing(self): - manager = SpeakerManager(d_vectors_file_path=d_vectors_file_path) - self.assertEqual(manager.num_speakers, 1) - self.assertEqual(manager.embedding_dim, 256) - manager = SpeakerManager(d_vectors_file_path=d_vectors_file_pth_path) - self.assertEqual(manager.num_speakers, 1) - self.assertEqual(manager.embedding_dim, 256) - d_vector = manager.get_embedding_by_clip(manager.clip_ids[0]) - assert len(d_vector) == 256 - d_vectors = manager.get_embeddings_by_name(manager.speaker_names[0]) - assert len(d_vectors[0]) == 256 - d_vector1 = manager.get_mean_embedding(manager.speaker_names[0], num_samples=2, randomize=True) - assert len(d_vector1) == 256 - d_vector2 = manager.get_mean_embedding(manager.speaker_names[0], num_samples=2, randomize=False) - assert len(d_vector2) == 256 - assert np.sum(np.array(d_vector1) - np.array(d_vector2)) != 0 diff --git a/TTS/tests/aux_tests/test_stft_torch.py b/TTS/tests/aux_tests/test_stft_torch.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tests/bash_tests/test_compute_statistics.sh b/TTS/tests/bash_tests/test_compute_statistics.sh deleted file mode 100644 index d7f0ab9d4c7d1ded0c1584941cb949bb711ad430..0000000000000000000000000000000000000000 --- a/TTS/tests/bash_tests/test_compute_statistics.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/usr/bin/env bash -set -xe -BASEDIR=$(dirname "$0") -echo "$BASEDIR" -# run training -CUDA_VISIBLE_DEVICES="" python TTS/bin/compute_statistics.py --config_path $BASEDIR/../inputs/test_glow_tts.json --out_path $BASEDIR/../outputs/scale_stats.npy - diff --git a/TTS/tests/bash_tests/test_demo_server.sh b/TTS/tests/bash_tests/test_demo_server.sh deleted file mode 100644 index ebd0bc8b89f2ba450a569be4c147ec4959efca18..0000000000000000000000000000000000000000 --- a/TTS/tests/bash_tests/test_demo_server.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash -set -xe - -python -m TTS.server.server & -SERVER_PID=$! - -echo 'Waiting for server...' -sleep 30 - -curl -o /tmp/audio.wav "http://localhost:5002/api/tts?text=synthesis%20schmynthesis" -python -c 'import sys; import wave; print(wave.open(sys.argv[1]).getnframes())' /tmp/audio.wav - -kill $SERVER_PID - -rm /tmp/audio.wav diff --git a/TTS/tests/data/dummy_speakers.json b/TTS/tests/data/dummy_speakers.json deleted file mode 100644 index 233533b7968a053c0868f9db2446749e9c0effd1..0000000000000000000000000000000000000000 --- a/TTS/tests/data/dummy_speakers.json +++ /dev/null @@ -1,100226 +0,0 @@ -{ - "p244_302.wav": { - "name": "p244", - "embedding": [ - 0.05539746582508087, - 0.08493061363697052, - -0.010013150051236153, - 0.04369359463453293, - -0.05871078372001648, - 0.07792330533266068, - -0.12001194059848785, - 0.09205509722232819, - -0.053687505424022675, - 0.13110113143920898, - -0.0672345906496048, - 0.09076011180877686, - -0.012022187933325768, - -0.1773194968700409, - -0.03690509498119354, - 0.052139587700366974, - -0.06511855870485306, - -0.014169753529131413, - -0.0788075178861618, - -0.022713735699653625, - 0.026002388447523117, - 0.04142642393708229, - 0.06633599102497101, - -0.040966324508190155, - 0.05216488242149353, - 0.043708473443984985, - 0.008947450667619705, - 0.043884553015232086, - 0.015242422930896282, - -0.07271697372198105, - -0.03943272680044174, - 0.11445401608943939, - -0.01976911909878254, - -0.001584329642355442, - 0.03226276487112045, - -0.002877067308872938, - 0.006218053866177797, - -0.09210439026355743, - -0.023884698748588562, - 0.019102394580841064, - -0.023189997300505638, - 0.07678322494029999, - 0.04511963576078415, - -0.028598245233297348, - 0.02654365450143814, - -0.026303084567189217, - -0.036059144884347916, - -0.04994352161884308, - -0.10899694263935089, - 0.16808779537677765, - 0.0568464957177639, - 0.017774248495697975, - -0.0766686350107193, - -0.08056356757879257, - 0.11318203061819077, - -0.0009237118065357208, - -0.11983267217874527, - -0.04011853411793709, - 0.06481920927762985, - 0.18528658151626587, - -0.020618144422769547, - 0.0030966848134994507, - 0.030582068488001823, - 0.11048240959644318, - 0.026203282177448273, - 0.08886025100946426, - 0.0776662528514862, - 0.08468905836343765, - 0.02009391225874424, - 0.053141623735427856, - 0.04102938249707222, - 0.059041380882263184, - -0.006237464025616646, - -0.018360337242484093, - 0.015418153256177902, - -0.03559226542711258, - -0.05805520713329315, - -0.00861218199133873, - -0.021234268322587013, - -0.025556275621056557, - -0.012332704849541187, - -0.009777471423149109, - 0.03721384331583977, - 0.010376224294304848, - -0.05210898444056511, - 0.035450324416160583, - 0.0026437342166900635, - -0.03329150378704071, - 0.07028764486312866, - 0.03101171739399433, - 0.003101848065853119, - 0.029428653419017792, - -0.03445912152528763, - -0.11992329359054565, - -0.006469260435551405, - 0.02472860924899578, - -0.0021879260893911123, - 0.06576769798994064, - 0.04159736633300781, - -0.044104330241680145, - 0.10868340730667114, - 0.06065361574292183, - -0.00814537052065134, - 0.029497724026441574, - -0.0820949599146843, - 0.09694784879684448, - 0.10299994796514511, - 0.007466038689017296, - 0.0573151595890522, - -0.04003140702843666, - 0.0748046338558197, - 0.07954449951648712, - -0.14061805605888367, - -0.07225356996059418, - 0.030713198706507683, - -0.01169175747781992, - 0.015277700498700142, - 0.101996049284935, - 0.0023796744644641876, - 0.013835912570357323, - 0.08836984634399414, - -0.08798637241125107, - -0.053786784410476685, - -0.025867177173495293, - 0.07090725004673004, - -0.05228910967707634, - 0.024839768186211586, - 0.0543626993894577, - -0.048099253326654434, - -0.01027676835656166, - 0.04654526337981224, - -0.0034045036882162094, - 0.003895972855389118, - 0.04250902682542801, - -0.05232023075222969, - 0.06287448853254318, - -0.04146592691540718, - -0.0022073618602007627, - 0.07169511169195175, - 0.057035692036151886, - 0.04202979430556297, - -0.01752091944217682, - -0.03615778684616089, - -0.07597745209932327, - 0.0076013305224478245, - 0.03388708084821701, - 0.06191568076610565, - -0.01607775315642357, - 0.004401837941259146, - -0.06070601940155029, - -0.07674850523471832, - 0.059249889105558395, - -0.02222420647740364, - 0.10215721279382706, - -0.000883960397914052, - 0.010600706562399864, - 0.09869417548179626, - 0.011313805356621742, - -0.01187396701425314, - -0.04851905256509781, - -0.020747501403093338, - 0.043711841106414795, - 0.04022590070962906, - -0.06653523445129395, - -0.04014153778553009, - 0.012923783622682095, - 0.0024894566740840673, - -0.03801071271300316, - 0.017412755638360977, - 0.03090047463774681, - 0.021060986444354057, - 0.04588426649570465, - -0.061013057827949524, - 0.022323710843920708, - -0.0921829417347908, - -0.009262383915483952, - -0.0024641728959977627, - -0.04311069846153259, - -0.02953970432281494, - 0.11183556914329529, - 0.041883185505867004, - 0.01362229697406292, - -0.009713159874081612, - -0.07398185133934021, - -0.03448636084794998, - 0.06774093955755234, - 0.06281304359436035, - 0.005423923954367638, - 0.04070146754384041, - 0.04723779857158661, - 0.0025808606296777725, - 0.04067641496658325, - 0.0840836763381958, - 0.0662192553281784, - 6.253225728869438e-05, - -0.03287994861602783, - -0.07941965758800507, - 0.09294897317886353, - 0.08651109039783478, - -0.09662938117980957, - -0.08838298916816711, - -0.05120178312063217, - -0.06626439094543457, - 0.04893879592418671, - -0.017820902168750763, - -0.007398976478725672, - 0.02896031364798546, - -0.025766948238015175, - -0.10214102268218994, - -0.10014186799526215, - 0.1211889386177063, - -0.0510331466794014, - -0.02461140602827072, - -0.06880723685026169, - 0.02751768007874489, - 0.07350686937570572, - 0.038249749690294266, - -0.009252945892512798, - 0.013650302775204182, - 0.04884907230734825, - -0.08785197138786316, - 0.003136417828500271, - 0.05015810579061508, - -0.00904669426381588, - -0.10715165734291077, - 0.026881497353315353, - -0.07288249582052231, - 0.08610662072896957, - -0.06228051334619522, - 0.1673828363418579, - 0.006395484320819378, - -0.0426831915974617, - -0.08067314326763153, - 0.06747708469629288, - -0.049200400710105896, - 0.0475490465760231, - 0.05716557055711746, - 0.060844384133815765, - 0.04086177423596382, - -0.08346255123615265, - 0.0869344025850296, - 0.019769223406910896, - -0.020300764590501785, - -0.0708683505654335, - -0.030514180660247803, - -0.027429744601249695, - 0.021853724494576454, - -0.012019682675600052, - -0.0613793209195137, - 0.009929075837135315, - 0.0261012464761734, - -0.018161576241254807, - 0.07936893403530121, - 0.12791746854782104, - 0.08958099782466888, - -0.09469571709632874 - ] - }, - "p244_342.wav": { - "name": "p244", - "embedding": [ - 0.05005024001002312, - 0.10739441215991974, - -0.015767700970172882, - 0.03197174146771431, - -0.049751877784729004, - 0.07368919253349304, - -0.11086710542440414, - 0.12266570329666138, - -0.055884428322315216, - 0.14480051398277283, - -0.09230168908834457, - 0.10953367501497269, - -0.0357954278588295, - -0.1691109836101532, - -0.04994215443730354, - 0.05317877233028412, - -0.04780467599630356, - -0.028082450851798058, - -0.030347973108291626, - -0.0015789138851687312, - 0.03955546021461487, - 0.04067610204219818, - 0.028119998052716255, - 0.00921852607280016, - 0.030067767947912216, - 0.061427608132362366, - -0.0016679083928465843, - 0.05357091501355171, - 0.023015424609184265, - -0.050316497683525085, - -0.04255743324756622, - 0.1287825107574463, - -0.04624408483505249, - 0.023578952997922897, - 0.047039519995450974, - 0.00930054672062397, - 0.004682430997490883, - -0.06462899595499039, - -0.019383519887924194, - -0.008494102396070957, - -0.048186637461185455, - 0.07191027700901031, - 0.015244226902723312, - -0.0003928039222955704, - 0.03503163531422615, - 0.008267269469797611, - -0.02512257918715477, - -0.05235607177019119, - -0.09180445224046707, - 0.15558570623397827, - 0.06139551103115082, - 0.006414560601115227, - -0.07681959867477417, - -0.07630625367164612, - 0.10429195314645767, - -0.00981030985713005, - -0.11445462703704834, - -0.036746423691511154, - 0.07292406260967255, - 0.16880059242248535, - -0.01842034049332142, - -0.033148035407066345, - 0.013845782727003098, - 0.11980786919593811, - 0.050728216767311096, - 0.10279352217912674, - 0.07316798716783524, - 0.09072566032409668, - 0.0038510854355990887, - 0.02752499468624592, - 0.06867751479148865, - 0.0616176500916481, - 0.05001520365476608, - -0.024926170706748962, - 0.026522532105445862, - 0.004151749890297651, - -0.03625208139419556, - 0.026617109775543213, - -0.01584431901574135, - -0.010617567226290703, - -0.020938802510499954, - 0.008502485230565071, - -0.004227738361805677, - 0.014398372732102871, - -0.025087807327508926, - 0.045862697064876556, - 0.023492811247706413, - -0.015581879764795303, - 0.07379084825515747, - 0.05002640560269356, - 0.004349455237388611, - 0.05815402418375015, - -0.07435561716556549, - -0.10093250125646591, - 0.012758184224367142, - 0.0040325382724404335, - 0.02395264059305191, - 0.08153457194566727, - 0.033792220056056976, - -0.019414838403463364, - 0.1033405214548111, - 0.0384766086935997, - 0.006529564969241619, - 0.027514591813087463, - -0.10867736488580704, - 0.1150912344455719, - 0.09220621734857559, - -0.024154093116521835, - 0.03327079489827156, - -0.029712006449699402, - 0.08647294342517853, - 0.08700971305370331, - -0.14513355493545532, - -0.07308748364448547, - 0.03144310414791107, - 0.007094813045114279, - 0.0018512541428208351, - 0.0968799740076065, - -0.016651807352900505, - 0.013502601534128189, - 0.09198576211929321, - -0.0859537273645401, - -0.054299745708703995, - -0.030169349163770676, - 0.04377683997154236, - -0.0789153128862381, - 0.04800377041101456, - 0.03584020584821701, - -0.0009612710564397275, - -0.012059178203344345, - 0.07625425606966019, - -0.007969949394464493, - -0.003650201950222254, - 0.025299428030848503, - -0.05164157599210739, - 0.033006470650434494, - -0.03845863789319992, - 0.0038426616229116917, - 0.05190078914165497, - 0.04112619906663895, - 0.05069519951939583, - 0.001691763405688107, - -0.022290080785751343, - -0.09915561228990555, - 0.013304539024829865, - 0.05602234601974487, - 0.05504598468542099, - -0.01420528907328844, - -0.025512415915727615, - -0.04316616803407669, - -0.0638405904173851, - 0.036458369344472885, - -0.0006715459749102592, - 0.08267225325107574, - 0.0027876130770891905, - 0.0013964123791083694, - 0.11250487715005875, - 0.014469620771706104, - -0.007276642601937056, - -0.05617782846093178, - -0.027922146022319794, - 0.01478651538491249, - 0.06186310201883316, - -0.08734073489904404, - -0.07542749494314194, - 0.015517745167016983, - 0.012257397174835205, - -0.020948491990566254, - 0.03487060219049454, - 0.054895590990781784, - 0.013588862493634224, - 0.04263032600283623, - -0.0647064745426178, - 0.01728040724992752, - -0.12200611084699631, - -0.06621172279119492, - -0.019416222348809242, - -0.030050568282604218, - -0.0017845522379502654, - 0.08169281482696533, - 0.017037319019436836, - 0.02421201765537262, - 0.0037975357845425606, - -0.08823724091053009, - -0.07071515917778015, - 0.08511896431446075, - 0.08436156809329987, - 0.01660916581749916, - 0.057988524436950684, - 0.05465036630630493, - -0.032873932272195816, - 0.05294205993413925, - 0.06271162629127502, - 0.11366848647594452, - -0.02610023133456707, - 0.015349031426012516, - -0.07377832382917404, - 0.07414689660072327, - 0.07684557139873505, - -0.11574330925941467, - -0.10163731873035431, - -0.023144066333770752, - -0.051269568502902985, - 0.045116886496543884, - -0.026288434863090515, - 0.011183633469045162, - 0.03164569288492203, - -0.030619151890277863, - -0.10015660524368286, - -0.09329545497894287, - 0.09745553135871887, - -0.04969329759478569, - -0.02546953782439232, - -0.08311304450035095, - 0.04494427889585495, - 0.07559853792190552, - 0.036820605397224426, - -0.030338197946548462, - 0.01947575807571411, - 0.05258313566446304, - -0.06045728921890259, - -0.023316536098718643, - 0.04226306453347206, - 0.0016495431773364544, - -0.09124850481748581, - 0.011782881803810596, - -0.06902118027210236, - 0.09021267294883728, - -0.06915663182735443, - 0.16398003697395325, - -0.022971302270889282, - -0.06647606194019318, - -0.08104446530342102, - 0.05106651410460472, - -0.017583303153514862, - 0.03503591939806938, - 0.042305998504161835, - 0.05885643512010574, - 0.02223961427807808, - -0.0645500048995018, - 0.11483395099639893, - 0.03016156330704689, - -0.03008243814110756, - -0.0585399866104126, - -0.04248024523258209, - -0.04242590814828873, - 0.026500295847654343, - 0.002028970280662179, - -0.08147037774324417, - 0.0017442512325942516, - 0.01499109622091055, - -0.02363378368318081, - 0.06126737967133522, - 0.1384272277355194, - 0.06977587938308716, - -0.11724086105823517 - ] - }, - "p244_379.wav": { - "name": "p244", - "embedding": [ - 0.04385417327284813, - 0.08368086814880371, - 0.0004669101908802986, - -0.010091540403664112, - -0.03873376548290253, - 0.046230755746364594, - -0.14813315868377686, - 0.13340362906455994, - -0.03948982059955597, - 0.15426620841026306, - -0.06360238790512085, - 0.11138015985488892, - -0.008127805776894093, - -0.18019263446331024, - -0.03770577162504196, - 0.04193387180566788, - -0.057793062180280685, - -0.04214119166135788, - -0.056620948016643524, - -0.04057123512029648, - 0.051402948796749115, - 0.05183681845664978, - 0.013680952601134777, - 0.018274657428264618, - 0.0034123891964554787, - 0.062409352511167526, - 0.02043917216360569, - 0.055918335914611816, - 0.023541729897260666, - -0.08195513486862183, - -0.02083502523601055, - 0.08724872767925262, - -0.028091277927160263, - 0.018559720367193222, - 0.04656890779733658, - -0.025418013334274292, - 0.030472083017230034, - -0.05127841979265213, - -0.03467317670583725, - 0.03528723865747452, - -0.03902474045753479, - 0.07907763868570328, - 0.0074369898065924644, - 0.007716057356446981, - 0.05388845503330231, - 0.029956858605146408, - -0.015823351219296455, - -0.0724020004272461, - -0.09075143933296204, - 0.1657782644033432, - 0.10434740036725998, - -0.019610103219747543, - -0.04357729107141495, - -0.07185962796211243, - 0.08603136241436005, - -0.052245061844587326, - -0.10766220092773438, - -0.05293136462569237, - 0.06449665129184723, - 0.12944144010543823, - -0.042106788605451584, - -0.04758021980524063, - 0.049494460225105286, - 0.12775693833827972, - 0.040527358651161194, - 0.07349203526973724, - 0.0795803964138031, - 0.0761307030916214, - -0.044778965413570404, - 0.003302923869341612, - 0.03309907764196396, - 0.07771170139312744, - 0.04621581360697746, - 0.005038945935666561, - 0.044806189835071564, - 0.020960239693522453, - -0.0068280380219221115, - 8.056375372689217e-05, - -0.019911594688892365, - 0.02049337327480316, - -0.010624206624925137, - 0.03540490195155144, - -0.021328754723072052, - 0.012203291058540344, - -0.02071482688188553, - 0.06538721919059753, - -0.008392799645662308, - 0.000987844541668892, - 0.060524582862854004, - 0.023379843682050705, - 0.04655498266220093, - 0.054990898817777634, - -0.05890372022986412, - -0.08285146206617355, - 0.028673967346549034, - 0.008595142513513565, - -0.011616579256951809, - 0.056019872426986694, - 0.017910296097397804, - -0.02655627205967903, - 0.1350702941417694, - 0.049260806292295456, - -0.028640856966376305, - 0.03055524453520775, - -0.10077312588691711, - 0.12397953122854233, - 0.07329561561346054, - -0.034036532044410706, - 0.03970664367079735, - -0.05486592650413513, - 0.06752245128154755, - 0.04661741852760315, - -0.1333666741847992, - -0.09235265851020813, - 0.043007396161556244, - 0.02136904001235962, - -0.02561361901462078, - 0.10230007022619247, - -0.005486679263412952, - 0.033191148191690445, - 0.10709051787853241, - -0.056307561695575714, - -0.04276499152183533, - -0.01762603223323822, - 0.05830918997526169, - -0.0918903574347496, - 0.060251664370298386, - 0.04541034623980522, - 0.0014724340289831161, - 0.017731232568621635, - 0.1095895916223526, - -0.022439848631620407, - -0.006722745485603809, - -0.012465088628232479, - -0.03208261355757713, - 0.01631762459874153, - -0.04512239620089531, - -0.009204409085214138, - 0.021059151738882065, - 0.0491592101752758, - 0.03468703478574753, - -0.0031415175180882215, - -0.0552615225315094, - -0.12650644779205322, - 0.018601013347506523, - -0.0013559520011767745, - 0.07058518379926682, - 0.0008318508043885231, - -0.0053475843742489815, - -0.05491418391466141, - -0.049462370574474335, - -0.024400413036346436, - -0.024958988651633263, - 0.06559912860393524, - -0.024860378354787827, - 0.02269887924194336, - 0.09741535037755966, - 0.012000896036624908, - 0.0035986807197332382, - -0.034669265151023865, - -0.025829574093222618, - -0.003224350977689028, - 0.047697536647319794, - -0.046893130987882614, - -0.06946690380573273, - 0.005941083189100027, - 0.04294610768556595, - 0.01209615170955658, - 0.06000249832868576, - 0.03875409811735153, - 0.012823483906686306, - 0.03734605759382248, - -0.09658080339431763, - 0.0314655676484108, - -0.10068618506193161, - -0.06583625078201294, - -0.01892363652586937, - -0.0025274772197008133, - -0.01628824882209301, - 0.0637492835521698, - -0.008107378147542477, - 0.048660408705472946, - -0.010005421936511993, - -0.10025914013385773, - -0.0969337448477745, - 0.059523966163396835, - 0.0996452122926712, - -0.004202151205390692, - 0.045321013778448105, - 0.05651431530714035, - -0.014919697307050228, - 0.06441773474216461, - 0.04368766397237778, - 0.10110782086849213, - -0.0043152268044650555, - 0.03423415124416351, - -0.059874605387449265, - 0.06583072245121002, - 0.04978032037615776, - -0.08416496962308884, - -0.073335662484169, - -0.010527554899454117, - -0.07210519164800644, - 0.035875968635082245, - -0.0031813548412173986, - 0.012447054497897625, - 0.04415292665362358, - 0.00752978352829814, - -0.08800460398197174, - -0.05641252547502518, - 0.07591962814331055, - -0.07787096500396729, - -0.011992206797003746, - -0.057379916310310364, - 0.036020129919052124, - 0.12026499956846237, - 0.0666547641158104, - -0.017779793590307236, - -0.04473390430212021, - 0.04401383921504021, - -0.02994568645954132, - 0.004939892329275608, - 0.027159716933965683, - 0.030616983771324158, - -0.10693733394145966, - 0.02875242382287979, - -0.09080235660076141, - 0.04131399840116501, - -0.05450586974620819, - 0.1073312759399414, - 0.010020781308412552, - -0.0629810318350792, - -0.09145230054855347, - 0.026476040482521057, - -0.0383373461663723, - 0.060232680290937424, - 0.0011733348947018385, - 0.04009602963924408, - 0.069184809923172, - -0.06585222482681274, - 0.10212516039609909, - 0.05953359603881836, - -0.04728677496314049, - -0.06880010664463043, - -0.04774005338549614, - -0.024935949593782425, - 0.03395010158419609, - 0.03719611465930939, - -0.07992134988307953, - -0.03410416841506958, - 0.012216593138873577, - -0.04541661962866783, - 0.09453573077917099, - 0.13344059884548187, - 0.05227658897638321, - -0.1507265418767929 - ] - }, - "p244_146.wav": { - "name": "p244", - "embedding": [ - 0.05173081159591675, - 0.08781048655509949, - 0.03257787972688675, - 0.005466929636895657, - -0.023618539795279503, - 0.015054089948534966, - -0.11388292163610458, - 0.1028447076678276, - 0.007264353334903717, - 0.07433748990297318, - -0.11498712748289108, - 0.10358240455389023, - -0.05607076734304428, - -0.1409558355808258, - -0.04124286398291588, - 0.03587265685200691, - -0.04401744529604912, - -0.01768949255347252, - -0.02214878797531128, - -0.010046346113085747, - 0.035469312220811844, - 0.014919303357601166, - 0.04470502957701683, - 0.018321475014090538, - -0.00444794399663806, - 0.04457274079322815, - -0.004052337259054184, - 0.03477124497294426, - 0.021253926679491997, - -0.005067147314548492, - 0.021340904757380486, - 0.039399079978466034, - -0.007815222255885601, - 0.055303506553173065, - 0.06028258427977562, - 0.02536826580762863, - -0.0054739429615437984, - -0.018883245065808296, - -0.03618921339511871, - 0.013414287939667702, - -0.04407748207449913, - 0.055351853370666504, - 0.02702566236257553, - -0.03960036486387253, - 0.0490243062376976, - 0.04641438648104668, - -0.016285691410303116, - -0.01790410652756691, - -0.10511147230863571, - 0.12259026616811752, - 0.010291787795722485, - 0.03289821743965149, - -0.08099640905857086, - -0.026124536991119385, - 0.09215167164802551, - -0.050865575671195984, - -0.09459369629621506, - -0.028084008023142815, - 0.07599273324012756, - 0.09264038503170013, - -0.023951835930347443, - -0.041913505643606186, - -0.005671866238117218, - 0.0582917258143425, - 0.041189368814229965, - 0.05618399381637573, - 0.0817662701010704, - 0.09764754772186279, - -0.03388510271906853, - 0.010172495618462563, - 0.06193658709526062, - 0.03605092316865921, - 0.06660737097263336, - 0.006852769758552313, - -0.004304143600165844, - -0.006190738640725613, - 0.0004641196574084461, - 0.019091667607426643, - -0.009173627942800522, - -0.004967373795807362, - -0.027705632150173187, - -0.008259315975010395, - -0.0029292358085513115, - 0.002002920024096966, - -0.02405666932463646, - 0.03258177638053894, - 0.031177019700407982, - 0.008372969925403595, - 0.06282497942447662, - 0.06677483022212982, - -0.01705140992999077, - 0.046009503304958344, - -0.03578224405646324, - -0.07554700970649719, - -0.03225565701723099, - -0.020589854568243027, - 0.03575562685728073, - 0.035922177135944366, - 0.03503880649805069, - 0.023354357108473778, - 0.0855662077665329, - 0.0254385843873024, - -0.0036251756828278303, - 0.0032674050889909267, - -0.10853132605552673, - 0.08199082314968109, - 0.05580103024840355, - -0.027594666928052902, - 0.019852720201015472, - -0.036443717777729034, - 0.048316389322280884, - 0.07583539932966232, - -0.05360352247953415, - -0.03800172358751297, - 0.024394333362579346, - 0.03642188012599945, - 0.03318864107131958, - 0.07662512362003326, - -0.01152440719306469, - 0.016784314066171646, - 0.11875718086957932, - -0.07176057249307632, - -0.024109384045004845, - 0.005587983876466751, - 0.009327013045549393, - -0.03365793824195862, - 0.05791780352592468, - 0.029259514063596725, - 0.02902703545987606, - 0.004038798622786999, - 0.06939239799976349, - 0.00478143896907568, - 0.009569157846271992, - -0.036234915256500244, - -0.015711260959506035, - 0.02211536280810833, - -0.02117694728076458, - 0.0007077722693793476, - 0.06763876974582672, - 0.06141200661659241, - 0.04103091359138489, - 0.06552741676568985, - -0.05750571936368942, - -0.0852167159318924, - 0.011977690272033215, - 0.05217904597520828, - 0.047709863632917404, - -0.007119899149984121, - -0.03633209317922592, - -0.04580448567867279, - -0.007685321383178234, - 0.04970385879278183, - -0.0024655070155858994, - 0.05368969962000847, - -0.0014410652220249176, - -0.009220248088240623, - 0.08319792151451111, - 0.004213802516460419, - -0.008937712758779526, - -0.07948096841573715, - -0.05960806831717491, - -0.025604955852031708, - 0.024362564086914062, - -0.10140591114759445, - -0.054099615663290024, - -0.023109978064894676, - 0.037883318960666656, - -0.0025205023121088743, - 0.0227670781314373, - 0.05524842441082001, - -0.005986891686916351, - 0.01179206557571888, - -0.03954809904098511, - 0.01663348637521267, - -0.06980662047863007, - -0.10311965644359589, - 0.01984083279967308, - -0.00989723764359951, - 0.021990396082401276, - 0.05811266228556633, - 0.005904274992644787, - 0.03793155774474144, - -0.01590459607541561, - -0.09037895500659943, - -0.06753981113433838, - 0.061282679438591, - 0.021295949816703796, - 0.0032610055059194565, - 0.05217217653989792, - 0.0253852941095829, - -0.0741269439458847, - 0.07798756659030914, - 0.01668640784919262, - 0.0862961933016777, - -0.07870747148990631, - 0.02164555713534355, - -0.027306711301207542, - 0.03223402425646782, - 0.06706254184246063, - -0.06367616355419159, - -0.08458103984594345, - -0.050511181354522705, - -0.02036047726869583, - 0.0028320476412773132, - -0.016799330711364746, - -0.005957796238362789, - 0.017700176686048508, - -0.01823967508971691, - -0.06084313616156578, - -0.08374806493520737, - 0.014344906434416771, - -0.03149090334773064, - 0.012745125219225883, - -0.05736103653907776, - 0.03571572154760361, - 0.025993801653385162, - -0.019825372844934464, - -0.0036927226465195417, - 0.021637266501784325, - -0.002274036407470703, - -0.04890124127268791, - -0.0485353097319603, - 0.024078156799077988, - 0.04139643907546997, - -0.011267557740211487, - -0.03186582773923874, - -0.07837104797363281, - 0.04924409091472626, - -0.010795444250106812, - 0.12591981887817383, - -0.012514190748333931, - -0.04951813071966171, - -0.0067854104563593864, - -0.032804928719997406, - -0.04248955100774765, - 0.03967583552002907, - 0.029716845601797104, - 0.032708458602428436, - 0.007038564886897802, - -0.02184302732348442, - 0.0928443893790245, - 0.05198834463953972, - -0.04275655746459961, - -0.04693467542529106, - -0.048397552222013474, - -0.05464000627398491, - -0.01461903564631939, - -0.031152945011854172, - -0.0545472614467144, - 0.0027494654059410095, - -0.013447854667901993, - 0.017987411469221115, - 0.04795508086681366, - 0.11922390758991241, - 0.04045257717370987, - -0.07620753347873688 - ] - }, - "p244_190.wav": { - "name": "p244", - "embedding": [ - 0.03891666978597641, - 0.08618548512458801, - -0.012352603487670422, - 0.0023647616617381573, - -0.04511157423257828, - 0.08262351155281067, - -0.15334278345108032, - 0.11335278302431107, - -0.07073113322257996, - 0.1437074840068817, - -0.05526787042617798, - 0.11605475842952728, - -0.02294749766588211, - -0.19488683342933655, - -0.06092676520347595, - 0.062192484736442566, - -0.07134442031383514, - -0.06475155055522919, - 0.005238390993326902, - -0.011493239551782608, - 0.05193570256233215, - 0.025915730744600296, - 0.013390488922595978, - 0.035989910364151, - 0.013592299073934555, - 0.07172174751758575, - 0.015837375074625015, - 0.05136915296316147, - 0.013818459585309029, - -0.02149501070380211, - -0.04269518703222275, - 0.1095333993434906, - -0.04994969069957733, - 0.008344747126102448, - 0.04553315043449402, - 0.002721929457038641, - 0.019683293998241425, - -0.07648376375436783, - -0.011557327583432198, - 0.005703666713088751, - -0.04630947858095169, - 0.08604322373867035, - 0.024151362478733063, - 0.009969284757971764, - 0.006591316312551498, - 0.016788501292467117, - -0.008936790749430656, - -0.04407847672700882, - -0.10332876443862915, - 0.14969968795776367, - 0.07188258320093155, - -0.004159452393651009, - -0.05464881286025047, - -0.07255028188228607, - 0.117868572473526, - 0.005936199799180031, - -0.10220304131507874, - -0.03999566659331322, - 0.07501912117004395, - 0.16038082540035248, - -0.03320574760437012, - -0.04479363560676575, - 0.02120385691523552, - 0.1265159398317337, - 0.044165074825286865, - 0.0974731296300888, - 0.07087424397468567, - 0.09011547267436981, - -0.011436786502599716, - -0.008907885290682316, - 0.07551225274801254, - 0.0740157887339592, - 0.028836743906140327, - -0.020702751353383064, - 0.04140472412109375, - 0.007198440842330456, - -0.02204008214175701, - 0.05030984431505203, - -0.012128639966249466, - -0.01338435523211956, - -0.02191055938601494, - -0.001331954263150692, - -0.0150510398671031, - 0.03325839340686798, - -0.01166414376348257, - 0.046062763780355453, - 0.010720659047365189, - -0.0016609709709882736, - 0.07922933995723724, - 0.03723090887069702, - 0.02604392170906067, - 0.08400508016347885, - -0.07623007893562317, - -0.07979101687669754, - 0.05053455010056496, - 0.008680237457156181, - 0.03445329889655113, - 0.08768151700496674, - 0.0446850061416626, - -0.024085253477096558, - 0.10533446818590164, - 0.05589498579502106, - -0.006498263217508793, - 0.02790868654847145, - -0.1080659031867981, - 0.12004449218511581, - 0.07869429886341095, - -0.04090873897075653, - 0.019370591267943382, - -0.04255497828125954, - 0.09387113153934479, - 0.08306798338890076, - -0.1440945565700531, - -0.08431284129619598, - 0.055854879319667816, - 0.042773813009262085, - -0.014650602824985981, - 0.13262630999088287, - -0.031001346185803413, - 0.007896746508777142, - 0.08489559590816498, - -0.05678100138902664, - -0.04893491417169571, - -0.033049799501895905, - 0.0443098209798336, - -0.07036128640174866, - 0.05185675621032715, - 0.03613513708114624, - 0.004043039865791798, - -0.011045982129871845, - 0.07997813820838928, - -0.0227487925440073, - -0.025182552635669708, - 0.02432696893811226, - -0.03223945200443268, - 0.046007998287677765, - -0.022601153701543808, - 0.016615698114037514, - 0.043354518711566925, - 0.04039819538593292, - 0.032384030520915985, - 0.01469055563211441, - -0.03640322387218475, - -0.12419065833091736, - 0.015508345328271389, - 0.05666865408420563, - 0.07116006314754486, - -0.015323542058467865, - -0.05304718390107155, - -0.05137743800878525, - -0.0591328926384449, - 0.012484293431043625, - 0.0029017780907452106, - 0.091408371925354, - -0.001773263793438673, - -0.00022884283680468798, - 0.07577857375144958, - 0.0194857157766819, - -0.003263377584517002, - -0.03675318509340286, - -0.041201747953891754, - 0.023517003282904625, - 0.04719114303588867, - -0.08032232522964478, - -0.06488973647356033, - -0.0009055742993950844, - 0.036279790103435516, - -0.015142029151320457, - 0.028365613892674446, - 0.05698738992214203, - 0.017797598615288734, - 0.0376548208296299, - -0.08761591464281082, - 0.043355900794267654, - -0.12279794365167618, - -0.06551626324653625, - -0.0320172980427742, - -0.010431734845042229, - 0.0024665198288857937, - 0.07042818516492844, - -0.004997836891561747, - 0.040651585906744, - -0.022141478955745697, - -0.07916876673698425, - -0.06485278904438019, - 0.07047265768051147, - 0.103216752409935, - 0.012911692261695862, - 0.062018103897571564, - 0.057831525802612305, - -0.012101317755877972, - 0.046879060566425323, - 0.05007849261164665, - 0.13482853770256042, - -0.03489668667316437, - 0.019783727824687958, - -0.04995163530111313, - 0.0744292289018631, - 0.05259699746966362, - -0.10245924443006516, - -0.06838458776473999, - 6.273388862609863e-05, - -0.04936979338526726, - 0.04081407189369202, - -0.02829176001250744, - 0.012483715079724789, - 0.003441236913204193, - -0.005567100830376148, - -0.1050506979227066, - -0.08585310727357864, - 0.07601556181907654, - -0.06117270886898041, - -0.012992369942367077, - -0.09122200310230255, - 0.055312518030405045, - 0.10301375389099121, - 0.037872932851314545, - -0.030580706894397736, - 0.005703204311430454, - 0.03272298350930214, - -0.025252459570765495, - -0.004251203499734402, - 0.03085319697856903, - 0.01622661016881466, - -0.1204351857304573, - 0.00017932639457285404, - -0.09284012019634247, - 0.0756625235080719, - -0.06378820538520813, - 0.16047629714012146, - -0.02003616839647293, - -0.05094631761312485, - -0.08163866400718689, - 0.028918597847223282, - -0.017792830243706703, - 0.04300200566649437, - 0.039597608149051666, - 0.06194380670785904, - 0.009485496208071709, - -0.0545857697725296, - 0.12352314591407776, - 0.042216140776872635, - -0.037687428295612335, - -0.07131104171276093, - -0.005493655800819397, - -0.01561376266181469, - 0.04466020315885544, - 0.016033610329031944, - -0.0759623795747757, - -0.029592476785182953, - 0.034450795501470566, - -0.020359832793474197, - 0.0662091001868248, - 0.13950827717781067, - 0.06911428272724152, - -0.1255066841840744 - ] - }, - "p244_369.wav": { - "name": "p244", - "embedding": [ - 0.028199300169944763, - 0.10727851092815399, - 0.0007854877039790154, - 0.014856789261102676, - -0.02383865788578987, - 0.05175522714853287, - -0.15402263402938843, - 0.14111328125, - -0.0471477210521698, - 0.14013467729091644, - -0.1019069105386734, - 0.093677818775177, - -0.03452619910240173, - -0.18918216228485107, - -0.06011847034096718, - 0.040417589247226715, - -0.04967929795384407, - -0.033519256860017776, - -0.0112451845780015, - -0.002914853859692812, - 0.06663721054792404, - 0.03348027914762497, - -0.009950281120836735, - 0.03041946142911911, - -0.001922254334203899, - 0.039967119693756104, - 0.01975911855697632, - 0.06062823534011841, - 0.0386592298746109, - -0.010230815038084984, - -0.009711163118481636, - 0.13572587072849274, - -0.018907783553004265, - 0.037021297961473465, - 0.06497976928949356, - 0.009449531324207783, - 0.008329341188073158, - -0.040101662278175354, - -0.015024878084659576, - 0.0030898405238986015, - -0.047345276921987534, - 0.061730872839689255, - 0.037560299038887024, - 0.011270963586866856, - 0.039189569652080536, - 0.05919507145881653, - -0.014882213436067104, - -0.054816409945487976, - -0.08506748080253601, - 0.1604343056678772, - 0.07355619966983795, - -0.016493886709213257, - -0.05894913151860237, - -0.06987728178501129, - 0.1099076122045517, - -0.01109024416655302, - -0.1018749549984932, - -0.033475831151008606, - 0.11122995615005493, - 0.1727573424577713, - -0.02717198245227337, - -0.03787035495042801, - 0.021621355786919594, - 0.14679546654224396, - 0.02834227867424488, - 0.09194448590278625, - 0.056256502866744995, - 0.10263821482658386, - 0.002833115868270397, - 0.008135393261909485, - 0.0622495636343956, - 0.05787428468465805, - 0.028404200449585915, - -0.04193072021007538, - 0.034289535135030746, - 0.008783059194684029, - -0.011217325925827026, - 0.040299057960510254, - -0.028623204678297043, - -0.01079061534255743, - -0.009426545351743698, - 0.02032358944416046, - -0.02184356190264225, - 0.011745870113372803, - -0.025703642517328262, - 0.052416764199733734, - 0.022887282073497772, - -0.006816552951931953, - 0.07264624536037445, - 0.0622590035200119, - 0.03945743665099144, - 0.05528624355792999, - -0.06214742362499237, - -0.10373042523860931, - 0.022373618558049202, - -0.013525377959012985, - 0.023544378578662872, - 0.07536736130714417, - 0.03749381750822067, - -0.011822872795164585, - 0.11691711843013763, - 0.038871005177497864, - -0.007304166443645954, - 0.03464965522289276, - -0.13144895434379578, - 0.12909510731697083, - 0.06521330028772354, - -0.02801908552646637, - 0.024824976921081543, - -0.04462732374668121, - 0.07613295316696167, - 0.07967578619718552, - -0.13630422949790955, - -0.07441186904907227, - 0.05125047266483307, - 0.0413830429315567, - -0.02172214165329933, - 0.11135700345039368, - -0.012063495814800262, - -0.002701223362237215, - 0.09428876638412476, - -0.06454937905073166, - -0.0689682736992836, - -0.049475304782390594, - 0.0462544709444046, - -0.082177072763443, - 0.06637449562549591, - 0.026514071971178055, - 0.0003492333344183862, - -0.017994390800595284, - 0.0893142968416214, - -0.018672045320272446, - 0.00800756923854351, - -0.00570314098149538, - -0.029605116695165634, - 0.049831829965114594, - -0.048813529312610626, - 0.019458573311567307, - 0.008507682010531425, - 0.04998883605003357, - 0.04737384617328644, - 0.025580327957868576, - -0.04806726425886154, - -0.10428784042596817, - -0.0008538421243429184, - 0.04670098423957825, - 0.08045955002307892, - 0.007464645896106958, - -0.036868758499622345, - -0.043867629021406174, - -0.04719647020101547, - 0.007677203975617886, - -0.01655011810362339, - 0.0799948200583458, - 0.003716093488037586, - -0.006608342751860619, - 0.09437038004398346, - -0.0012841126881539822, - -0.00011603336315602064, - -0.06334536522626877, - -0.01437787152826786, - 0.011144244112074375, - 0.02807004377245903, - -0.08281341195106506, - -0.06476549804210663, - 0.011694781482219696, - 0.03234819322824478, - -0.01226583868265152, - 0.028073497116565704, - 0.030791539698839188, - 0.018071219325065613, - 0.04037819057703018, - -0.08583992719650269, - 0.025005552917718887, - -0.12360372394323349, - -0.07989845424890518, - -0.022651176899671555, - -0.002108201151713729, - 0.0013351314701139927, - 0.06324441730976105, - 0.0018283510580658913, - 0.01843988336622715, - 0.016505595296621323, - -0.08618628233671188, - -0.08267609030008316, - 0.07102423906326294, - 0.08336284756660461, - 0.013562096282839775, - 0.06645528972148895, - 0.04629442095756531, - -0.03991423547267914, - 0.06404398381710052, - 0.04608313366770744, - 0.11671169102191925, - -0.02419842779636383, - 0.007976994849741459, - -0.06375421583652496, - 0.06935905665159225, - 0.06549336016178131, - -0.10340673476457596, - -0.08530882000923157, - -0.013326704502105713, - -0.05254099518060684, - 0.02138952538371086, - -0.01734915003180504, - 0.018607545644044876, - 0.007718452252447605, - -0.01408150140196085, - -0.09854468703269958, - -0.05838078260421753, - 0.06029728427529335, - -0.09261518716812134, - -0.01981927827000618, - -0.07572667300701141, - 0.05167001485824585, - 0.11062225699424744, - 0.037236444652080536, - -0.0400782972574234, - -0.02766759879887104, - 0.04832552373409271, - -0.07503670454025269, - -0.02767399698495865, - 0.010355996899306774, - 0.022310465574264526, - -0.09718108177185059, - 0.023773279041051865, - -0.08914737403392792, - 0.054145485162734985, - -0.07524878531694412, - 0.14482787251472473, - -0.0031678318046033382, - -0.08146260678768158, - -0.07533472776412964, - 0.02277853712439537, - -0.01881023868918419, - 0.04335108771920204, - 0.029217790812253952, - 0.05414988100528717, - 0.01590767502784729, - -0.055966816842556, - 0.12878789007663727, - 0.03935732692480087, - -0.029454415664076805, - -0.06619588285684586, - -0.03981907665729523, - -0.039492495357990265, - 0.022052889689803123, - 0.025556489825248718, - -0.09094993770122528, - -0.04063460975885391, - 0.02391265705227852, - -0.02889437787234783, - 0.07761697471141815, - 0.13333022594451904, - 0.045225322246551514, - -0.12099325656890869 - ] - }, - "p244_055.wav": { - "name": "p244", - "embedding": [ - 0.046574436128139496, - 0.08913436532020569, - -0.0023929483722895384, - 0.004350261762738228, - -0.04254953935742378, - 0.06514020264148712, - -0.1442471146583557, - 0.1451658010482788, - -0.0565878227353096, - 0.1407376527786255, - -0.09106993675231934, - 0.11484470963478088, - -0.03148968145251274, - -0.19993528723716736, - -0.022515378892421722, - 0.048772528767585754, - -0.04098231717944145, - -0.017407460138201714, - -0.029846753925085068, - -0.025409795343875885, - 0.04550321400165558, - 0.01899908110499382, - 0.009541154839098454, - 0.009712934494018555, - 0.007824135944247246, - 0.07307508587837219, - -0.004122601822018623, - 0.03266330435872078, - 0.002577691338956356, - -0.026551980525255203, - -0.03578141704201698, - 0.11213751137256622, - -0.05473366379737854, - 0.004312671720981598, - 0.07759320735931396, - -0.01027532760053873, - -0.024935448542237282, - -0.0615367516875267, - -0.014649576507508755, - -0.008107008412480354, - -0.06940373033285141, - 0.05909372866153717, - 0.024877093732357025, - -0.008142421022057533, - 0.04316188395023346, - 0.04451502859592438, - 0.0028448961675167084, - -0.043630972504615784, - -0.09380718320608139, - 0.1379014253616333, - 0.07744523882865906, - -0.004231967031955719, - -0.05677090585231781, - -0.05916500836610794, - 0.11454176902770996, - -0.003850226290524006, - -0.11819355189800262, - -0.04130569100379944, - 0.10107502341270447, - 0.15562397241592407, - -0.05671142041683197, - -0.026052938774228096, - 0.028546340763568878, - 0.10549560189247131, - 0.03289832919836044, - 0.11902220547199249, - 0.08150166273117065, - 0.1073945164680481, - -0.01186227984726429, - 0.024482499808073044, - 0.06277100741863251, - 0.055194370448589325, - 0.0640106201171875, - -0.03717948496341705, - 0.022137347608804703, - 0.011258618906140327, - -0.024129696190357208, - 0.016543114557862282, - -0.03129882737994194, - -0.01165520865470171, - -0.019313769415020943, - -0.005342992953956127, - 0.0018325226847082376, - 0.009058971889317036, - -0.019726015627384186, - 0.05271347239613533, - 0.03635776415467262, - -0.000942105136346072, - 0.07288220524787903, - 0.017791273072361946, - -0.0028136475011706352, - 0.07125572860240936, - -0.08712626248598099, - -0.07857319712638855, - 0.02426619827747345, - -0.011976849287748337, - -0.0002128448977600783, - 0.09163360297679901, - 0.05353984609246254, - -0.011702270247042179, - 0.12337925285100937, - 0.04680298641324043, - -0.0005060539115220308, - 0.03358887881040573, - -0.10153765976428986, - 0.12774483859539032, - 0.07750610262155533, - -0.05008864402770996, - 0.04139804095029831, - -0.059163689613342285, - 0.08013476431369781, - 0.08006198704242706, - -0.14718866348266602, - -0.0539596751332283, - 0.04259147495031357, - 0.02254943922162056, - -0.026735395193099976, - 0.1272776573896408, - -0.02291165292263031, - 0.0169075895100832, - 0.11666344106197357, - -0.08210164308547974, - -0.059017203748226166, - -0.024821419268846512, - 0.043551139533519745, - -0.08164355158805847, - 0.06433211266994476, - 0.04648889973759651, - -0.0016722474247217178, - 0.013577437028288841, - 0.10247376561164856, - -0.027321791276335716, - -0.02072293311357498, - 0.005596350412815809, - -0.03557903319597244, - 0.02170388586819172, - -0.03603385388851166, - 0.0076075354591012, - 0.024209316819906235, - 0.04263443499803543, - 0.0333988256752491, - 0.008780399337410927, - -0.037260085344314575, - -0.10201187431812286, - 0.012085439637303352, - 0.04208651930093765, - 0.08861590176820755, - -0.00486858282238245, - -0.02041034586727619, - -0.03934132307767868, - -0.06423559039831161, - 0.004675803240388632, - -0.02093695104122162, - 0.07811477780342102, - -0.027870360761880875, - 0.007149981334805489, - 0.08687368035316467, - 0.03586791083216667, - -0.003421555971726775, - -0.07692418992519379, - -0.03912508487701416, - 0.00718061625957489, - 0.047734081745147705, - -0.08591185510158539, - -0.07083427906036377, - -0.014545300975441933, - 0.03895916789770126, - -0.017533330246806145, - 0.05183684080839157, - 0.03833241015672684, - 0.025639843195676804, - 0.02463449165225029, - -0.08224032819271088, - 0.015124998986721039, - -0.11992624402046204, - -0.07971511036157608, - -0.01891009509563446, - -0.013322421349585056, - -0.004228496458381414, - 0.06551694869995117, - -0.0019042243948206306, - 0.03481516242027283, - -0.014965128153562546, - -0.07622719556093216, - -0.08238254487514496, - 0.06252120435237885, - 0.07650018483400345, - -0.011789831332862377, - 0.04586467891931534, - 0.05817842483520508, - -0.049839988350868225, - 0.0470852330327034, - 0.06303859502077103, - 0.1288510262966156, - -0.02223774418234825, - 0.03674256429076195, - -0.06645467132329941, - 0.07680311799049377, - 0.07735106348991394, - -0.08554330468177795, - -0.0876953974366188, - -0.018741222098469734, - -0.05704496055841446, - 0.03937928378582001, - -0.019623935222625732, - -0.0041176192462444305, - -0.0019676941446959972, - -0.0062654884532094, - -0.08003780245780945, - -0.07332847267389297, - 0.07443499565124512, - -0.0674520954489708, - -0.005016189534217119, - -0.09536699950695038, - 0.05337999761104584, - 0.0944749191403389, - 0.031060732901096344, - -0.026241417974233627, - -0.005389410071074963, - 0.04848342016339302, - -0.03311874344944954, - 0.0016810663510113955, - 0.0416463166475296, - 0.03446490317583084, - -0.11019304394721985, - -0.003943437710404396, - -0.08162915706634521, - 0.06479348242282867, - -0.05929083377122879, - 0.1414589285850525, - -0.00805061124265194, - -0.04871737211942673, - -0.0753415897488594, - 0.035351913422346115, - 0.00344419339671731, - 0.036168865859508514, - 0.03754804655909538, - 0.07143204659223557, - 0.02240382507443428, - -0.06710101664066315, - 0.12995368242263794, - 0.014064205810427666, - -0.023517899215221405, - -0.06127078831195831, - -0.04899080842733383, - -0.04501912370324135, - -0.0015472689410671592, - 0.005220281425863504, - -0.10901229083538055, - -0.028873872011899948, - 0.019628137350082397, - -0.016123972833156586, - 0.056438006460666656, - 0.14413830637931824, - 0.06163401901721954, - -0.12603460252285004 - ] - }, - "p244_416.wav": { - "name": "p244", - "embedding": [ - 0.0567907989025116, - 0.06137121841311455, - 0.03674077242612839, - -0.03178399056196213, - 0.00300041027367115, - 0.11558578163385391, - -0.09009912610054016, - 0.09349261224269867, - -0.0014780350029468536, - 0.027230067178606987, - -0.067775659263134, - 0.034372493624687195, - 0.0031084883958101273, - -0.1340586543083191, - -0.011272762902081013, - 0.047002751380205154, - -0.03475184738636017, - 0.025634601712226868, - -0.04725174978375435, - -0.01655474305152893, - -0.02471337839961052, - 0.008841507136821747, - 0.04945560172200203, - -0.02523030713200569, - 0.05547273904085159, - 0.03038673661649227, - 0.004403010942041874, - 0.019978735595941544, - -0.013245188631117344, - -0.014343657530844212, - -0.012119540013372898, - 0.07473617792129517, - -0.040856122970581055, - -0.032392777502536774, - 0.06482695788145065, - -0.003955521620810032, - 0.04602472856640816, - -0.09960207343101501, - -0.021383536979556084, - 0.03907986357808113, - -0.06382596492767334, - 0.08577613532543182, - 0.07248856127262115, - 0.031154153868556023, - 0.024028554558753967, - 0.012702086009085178, - 0.004519999492913485, - -0.050253767520189285, - -0.09138837456703186, - 0.14109325408935547, - 0.019830642268061638, - 0.030226966366171837, - -0.08460353314876556, - -0.0027941223233938217, - 0.05003519356250763, - 0.0001817962620407343, - -0.03909480199217796, - -0.01801268942654133, - 0.04741377383470535, - 0.08155964314937592, - 0.04193412885069847, - -0.00751175731420517, - 0.0282631553709507, - 0.07708166539669037, - -0.0008111521601676941, - 0.026783302426338196, - 0.08534255623817444, - 0.09093628823757172, - 0.020387357100844383, - 0.0287494957447052, - 0.05056292191147804, - -0.011136289685964584, - 0.012760885059833527, - -0.02051311917603016, - 0.034366849809885025, - -0.03974774479866028, - -0.014197340235114098, - -0.014851966872811317, - -0.0009447336196899414, - -0.02088828943669796, - 0.06970079243183136, - 0.03769897669553757, - 0.01453565526753664, - 0.06822018325328827, - -0.04767470434308052, - 0.027288168668746948, - -0.02114154025912285, - 0.09532777965068817, - 0.08049063384532928, - 0.044545844197273254, - 0.03397013992071152, - 0.00405912846326828, - -0.025210492312908173, - -0.08055074512958527, - 0.01917753927409649, - 0.028193194419145584, - 0.0009263250976800919, - 0.00024887174367904663, - 0.016075773164629936, - -0.03548377379775047, - 0.09358718991279602, - 0.007819762453436852, - -0.0052802651189267635, - 0.010923583060503006, - -0.06192692369222641, - 0.05942104011774063, - 0.04144691675901413, - 0.012968428432941437, - 0.06518562883138657, - -0.021607359871268272, - 0.0213124118745327, - 0.0648246482014656, - -0.08226243406534195, - -0.018341904506087303, - 0.029112935066223145, - 0.018069801852107048, - 0.049465928226709366, - 0.11785601824522018, - 0.015189849771559238, - 0.021076707169413567, - 0.035244591534137726, - -0.07194758206605911, - -0.019156519323587418, - 0.04732681065797806, - 0.001741865649819374, - 0.018829703330993652, - -0.0234701968729496, - 0.029811378568410873, - 0.01583380252122879, - -0.07465830445289612, - 0.03607070446014404, - 0.02948310784995556, - 0.024294618517160416, - -0.05371376872062683, - 0.04280327633023262, - 0.042849522083997726, - -0.0021061180159449577, - -0.025993550196290016, - 0.025131581351161003, - 0.05759604647755623, - -0.009550297632813454, - 0.041474323719739914, - -0.051814183592796326, - -0.09134930372238159, - -0.051411066204309464, - -0.017881054431200027, - 0.04415519908070564, - -0.020648781210184097, - -0.02756025455892086, - -0.06745801866054535, - 0.023630425333976746, - -0.0011830441653728485, - -0.007896332070231438, - 0.03980392962694168, - 0.09757402539253235, - -0.06991977989673615, - 0.05163955315947533, - -0.02070273831486702, - 0.032362744212150574, - -0.01946130022406578, - -0.03826843574643135, - 0.024332456290721893, - 0.023941773921251297, - -0.0042892321944236755, - -0.047967202961444855, - 0.014726214110851288, - -0.06178019195795059, - -0.012573277577757835, - -0.005452342331409454, - 0.02859993278980255, - -0.0017840638756752014, - -0.03733401000499725, - -0.07862615585327148, - 0.020164823159575462, - -0.043614305555820465, - -0.03302149847149849, - 0.07899540662765503, - 0.04223420098423958, - -0.03670389950275421, - 0.09814518690109253, - 0.044447124004364014, - 0.02855328656733036, - -0.03492702916264534, - -0.028882192447781563, - 0.04290291666984558, - 0.04755566641688347, - 0.0358084999024868, - -0.0017981259152293205, - 0.02763209491968155, - -0.006372924894094467, - -0.0008250924292951822, - 0.03864503279328346, - 0.039031289517879486, - 0.020886069163680077, - -0.037478022277355194, - -0.03772738575935364, - 0.022353626787662506, - 0.08378852903842926, - -0.006557576358318329, - -0.050600141286849976, - -0.029572520405054092, - 0.04553770646452904, - -0.017793282866477966, - 0.001892803586088121, - -0.00015062838792800903, - 0.025224143639206886, - 0.03570117801427841, - -0.033847302198410034, - -0.048651739954948425, - -0.0749111995100975, - 0.02383178099989891, - -0.0725645124912262, - -0.019341357052326202, - -0.033219676464796066, - 0.0482814759016037, - 0.08746325969696045, - -0.015543824061751366, - -0.004597595892846584, - -0.008085458539426327, - -0.017453357577323914, - -0.019890829920768738, - -0.042361900210380554, - -0.0017944574356079102, - 0.02992306649684906, - -0.0801640972495079, - 0.018427453935146332, - -0.051806218922138214, - 0.06349413841962814, - 0.015992505475878716, - 0.07570898532867432, - 0.059676650911569595, - -0.02038032002747059, - -0.06252992898225784, - -0.004649071022868156, - -0.0071282461285591125, - 0.027470968663692474, - -0.008077695034444332, - 0.0085157360881567, - 0.05133112519979477, - -0.021400058642029762, - 0.05884072184562683, - 0.018169095739722252, - -0.06082256883382797, - -0.04509517922997475, - 0.013953562825918198, - -0.016391271725296974, - 0.025656264275312424, - -0.027521420270204544, - -0.046593815088272095, - 0.025631526485085487, - 0.04764686897397041, - 0.03699498623609543, - 0.011318061500787735, - 0.04729567468166351, - 0.014677945524454117, - -0.04137536883354187 - ] - }, - "p244_022.wav": { - "name": "p244", - "embedding": [ - 0.05324256047606468, - 0.061302293092012405, - -0.005025130696594715, - 0.01198851503431797, - -0.057215042412281036, - 0.04223097488284111, - -0.10840871185064316, - 0.13754360377788544, - -0.02465054765343666, - 0.09339778870344162, - -0.07185589522123337, - 0.11825723946094513, - -0.030186904594302177, - -0.14125891029834747, - -0.016872841864824295, - 0.05601181462407112, - -0.025600483641028404, - -0.0234761293977499, - -0.04188695177435875, - -0.024710973724722862, - 0.013375586830079556, - 0.026865586638450623, - 0.0398847833275795, - 0.01684473268687725, - 0.022400561720132828, - 0.06845802068710327, - -0.0006524207419715822, - 0.038663335144519806, - 0.012818616814911366, - -0.037854522466659546, - -0.01886928454041481, - 0.06561212986707687, - -0.05319884419441223, - 0.0071054003201425076, - 0.05396874621510506, - -0.005310772452503443, - -0.008902838453650475, - -0.062401723116636276, - -0.026669198647141457, - -0.0033368864096701145, - -0.05418379232287407, - 0.07686834782361984, - 0.026250198483467102, - -0.018549030646681786, - 0.03559478744864464, - 0.017564356327056885, - -0.011372784152626991, - -0.035834427922964096, - -0.11986465752124786, - 0.13321977853775024, - 0.042802900075912476, - 0.00832411739975214, - -0.10078143328428268, - -0.040594760328531265, - 0.0821743980050087, - -0.038213491439819336, - -0.08589424192905426, - -0.04702872782945633, - 0.058764275163412094, - 0.11749287694692612, - -0.017929598689079285, - -0.029212012887001038, - 0.01113861333578825, - 0.08081115782260895, - 0.05228882655501366, - 0.057697027921676636, - 0.09072805941104889, - 0.10422497242689133, - -0.03733307123184204, - 0.034734275192022324, - 0.048660267144441605, - 0.05916241556406021, - 0.05137226730585098, - 0.012145251035690308, - 0.00894327461719513, - -0.010723164305090904, - -0.007460992783308029, - 0.009404128417372704, - -0.023798830807209015, - -0.022367704659700394, - -0.019436601549386978, - 0.009480023756623268, - 0.007161378860473633, - 0.020561737939715385, - -0.01759173348546028, - 0.07141675055027008, - 0.02871347777545452, - 0.0041181789711117744, - 0.0652528628706932, - 0.03488336130976677, - -0.027383113279938698, - 0.04738170653581619, - -0.07045860588550568, - -0.06743291020393372, - -0.007237815298140049, - -0.01465634722262621, - 0.03835726156830788, - 0.0582859106361866, - 0.023977557197213173, - 0.0012763416161760688, - 0.11218085139989853, - 0.04241640120744705, - 0.0026273243129253387, - 0.013760223984718323, - -0.0759207010269165, - 0.11506791412830353, - 0.08514852821826935, - -0.018498443067073822, - 0.03904011473059654, - -0.04295190051198006, - 0.048243194818496704, - 0.05668666958808899, - -0.10186289995908737, - -0.047524306923151016, - 0.008349123410880566, - 0.004310175776481628, - 0.0033535838592797518, - 0.1038592979311943, - -0.010126795619726181, - 0.03911980614066124, - 0.09584072232246399, - -0.08150944113731384, - -0.04041064903140068, - 0.016518017277121544, - 0.02416919730603695, - -0.056308772414922714, - 0.04082862287759781, - 0.042970508337020874, - 0.010659074410796165, - 0.01760186068713665, - 0.08590855449438095, - -0.0026000705547630787, - 0.0016993418103083968, - 0.010413152165710926, - -0.028262360021471977, - 0.020225364714860916, - -0.016469767317175865, - -0.014491048641502857, - 0.0718434676527977, - 0.06346558779478073, - 0.04298487305641174, - 0.009037402458488941, - -0.02301657944917679, - -0.10575832426548004, - -0.001162229455076158, - 0.04356175288558006, - 0.06886432319879532, - -0.029556620866060257, - -0.028247911483049393, - -0.041098855435848236, - -0.0413292832672596, - 0.006152871064841747, - 0.014197251759469509, - 0.062205392867326736, - -0.024410007521510124, - 0.004270531237125397, - 0.08781793713569641, - 0.02211890183389187, - -0.00658487668260932, - -0.06471861898899078, - -0.026197416707873344, - 0.000420949247200042, - 0.055853601545095444, - -0.059295106679201126, - -0.0691130980849266, - -0.003671650541946292, - 0.034395016729831696, - -0.027208132669329643, - 0.04693871736526489, - 0.04393736645579338, - 0.004974675364792347, - 0.014129765331745148, - -0.06800070405006409, - 0.024692555889487267, - -0.08237608522176743, - -0.058275967836380005, - 0.015931254252791405, - -0.01525780837982893, - -0.015050581656396389, - 0.06195163354277611, - 0.023209623992443085, - 0.06388459354639053, - -0.011865590699017048, - -0.08598818629980087, - -0.06828141212463379, - 0.05322566255927086, - 0.04108474776148796, - -0.015175786800682545, - 0.04581515118479729, - 0.0505252368748188, - -0.04002430662512779, - 0.0537480004131794, - 0.05123565346002579, - 0.07857302576303482, - -0.05612390115857124, - 0.0047832028940320015, - -0.04561203345656395, - 0.06616338342428207, - 0.06934478878974915, - -0.08487281948328018, - -0.0690789446234703, - -0.028633838519454002, - -0.04422156512737274, - 0.03621666878461838, - -0.020767319947481155, - -0.003627300728112459, - 0.04623904824256897, - -0.012674671597778797, - -0.09455786645412445, - -0.07809048891067505, - 0.06553131341934204, - -0.057748373597860336, - 0.013004057109355927, - -0.06921438127756119, - 0.02716211788356304, - 0.07098933309316635, - 0.02222384326159954, - -0.0037244276609271765, - -0.007137469481676817, - 0.023656774312257767, - -0.03247683122754097, - -0.022201651707291603, - 0.046808600425720215, - 0.031671714037656784, - -0.06424158811569214, - -0.01589217036962509, - -0.06142134591937065, - 0.052113499492406845, - -0.015291360206902027, - 0.133778914809227, - 0.0006001185975037515, - -0.04379967600107193, - -0.06352009624242783, - 0.0006721764802932739, - -0.029346132650971413, - 0.05153700336813927, - 0.041114747524261475, - 0.04483325406908989, - 0.029850849881768227, - -0.0434134267270565, - 0.11956961452960968, - 0.050123121589422226, - -0.05864757299423218, - -0.04936657473444939, - -0.04123452678322792, - -0.03550001233816147, - 0.014122906140983105, - -0.0006522267940454185, - -0.0715562105178833, - 0.0065712593495845795, - 0.0033439528197050095, - -0.022484436631202698, - 0.05486337095499039, - 0.12036079168319702, - 0.07447535544633865, - -0.09200917929410934 - ] - }, - "p244_335.wav": { - "name": "p244", - "embedding": [ - 0.04199257493019104, - 0.08892996609210968, - 0.008641382679343224, - -0.009453978389501572, - -0.02137896604835987, - 0.06362928450107574, - -0.12301419675350189, - 0.08644839376211166, - -0.03773996978998184, - 0.13767001032829285, - -0.05482705309987068, - 0.07192657887935638, - -0.008518553338944912, - -0.1373392939567566, - -0.05108211934566498, - 0.034587059170007706, - -0.07831590622663498, - -0.005116255953907967, - -0.05878249555826187, - -0.008343957364559174, - 0.03481651097536087, - 0.036918655037879944, - 0.04181723669171333, - -0.060623109340667725, - 0.0587172657251358, - 0.037981703877449036, - 0.0530821867287159, - 0.06958456337451935, - 0.06090376898646355, - -0.059416964650154114, - -0.020414866507053375, - 0.10418006777763367, - -0.02444155141711235, - 0.016964247450232506, - 0.03525381162762642, - 0.002311745658516884, - 0.04806772246956825, - -0.06123020499944687, - -0.021319659426808357, - 0.06647691130638123, - -0.012859487906098366, - 0.08751493692398071, - 0.027104495093226433, - 0.0101105822250247, - 0.009353546425700188, - 0.04908143728971481, - -0.005352572537958622, - -0.08023662865161896, - -0.07675178349018097, - 0.1825820505619049, - 0.040736597031354904, - -0.01549578458070755, - -0.05682007223367691, - -0.07847986370325089, - 0.09336146712303162, - -0.019799184054136276, - -0.06816112995147705, - -0.031503286212682724, - 0.07169219851493835, - 0.14021651446819305, - -0.029171908274292946, - 0.005227888002991676, - 0.016633763909339905, - 0.11838006973266602, - 0.022399093955755234, - 0.05357801541686058, - 0.06887462735176086, - 0.08455190062522888, - 0.04138166457414627, - 0.048407185822725296, - 0.025311864912509918, - 0.06889475882053375, - -0.015499012544751167, - -0.011595621705055237, - 0.029313433915376663, - -0.02255629375576973, - -0.0514276847243309, - 0.012401705607771873, - -0.007684722077101469, - -0.0027304328978061676, - 0.015446944162249565, - -0.0002575097605586052, - -0.0019865259528160095, - 0.023443857207894325, - -0.03219224512577057, - 0.04208652302622795, - -0.03812112659215927, - -0.006978310644626617, - 0.07214789092540741, - 0.01456240564584732, - 0.006361637730151415, - 0.04026614874601364, - -0.04209909215569496, - -0.12104970961809158, - -0.007916999980807304, - 0.005739630199968815, - 0.01301302295178175, - 0.05009947717189789, - 0.04211876913905144, - -0.049872443079948425, - 0.10778867453336716, - 0.041849687695503235, - -0.025697171688079834, - 0.02777659147977829, - -0.09451504051685333, - 0.11773648858070374, - 0.0697186291217804, - -0.007269886787980795, - 0.023536888882517815, - -0.04603276774287224, - 0.06318366527557373, - 0.044546082615852356, - -0.14325019717216492, - -0.06988342106342316, - 0.05604244023561478, - -0.02932731807231903, - 0.008439527824521065, - 0.06855004280805588, - -0.0033898716792464256, - -0.018165534362196922, - 0.07283703237771988, - -0.06284299492835999, - -0.04674302041530609, - -0.022204400971531868, - 0.0673355832695961, - -0.05229955166578293, - 0.0053389910608530045, - 0.03211677819490433, - -0.03647319972515106, - -0.01811276748776436, - 0.07836821675300598, - 0.01435836497694254, - 0.02559647150337696, - 0.020600534975528717, - -0.012520981952548027, - 0.06220254302024841, - -0.03484669327735901, - 0.029449913650751114, - 0.04761910066008568, - 0.08200129121541977, - 0.05170191079378128, - 0.007448915857821703, - -0.07090297341346741, - -0.08006048202514648, - 0.006199871655553579, - 0.01693909242749214, - 0.048258572816848755, - -0.019243672490119934, - -0.014141546562314034, - -0.06672597676515579, - -0.058080561459064484, - 0.022938579320907593, - 0.01846778579056263, - 0.10079550743103027, - 0.014553926885128021, - -0.03154242783784866, - 0.1280750185251236, - -0.0310067031532526, - -0.004371006973087788, - -0.008714258670806885, - -0.010095467790961266, - 0.04211525619029999, - 0.005994373932480812, - -0.04314360395073891, - -0.04779992997646332, - 0.025909392163157463, - -0.022329673171043396, - -0.017854366451501846, - -0.0004951246082782745, - -0.003264857456088066, - 0.020975276827812195, - 0.04464074224233627, - -0.05537869781255722, - -0.014321788214147091, - -0.07688619196414948, - 0.0074501242488622665, - -0.009183879010379314, - -0.010820964351296425, - -0.07537836581468582, - 0.10119102895259857, - -0.008822977542877197, - 0.013086620718240738, - 0.012761054560542107, - -0.07155165821313858, - -0.008827300742268562, - 0.06906633824110031, - 0.08144252002239227, - 0.017893217504024506, - 0.035997506231069565, - 0.04988212138414383, - 0.013876711949706078, - 0.03241956979036331, - 0.0907677710056305, - 0.060314640402793884, - 0.0072409361600875854, - -0.021741919219493866, - -0.03993678092956543, - 0.1135089099407196, - 0.010460760444402695, - -0.09237933903932571, - -0.06321438401937485, - -0.02145492658019066, - -0.07221998274326324, - 0.015705164521932602, - -0.007785316091030836, - 0.02918567880988121, - 0.016829241067171097, - -0.010494627989828587, - -0.08744720369577408, - -0.0733645111322403, - 0.06126019358634949, - -0.09093831479549408, - -0.0495544895529747, - -0.029355553910136223, - 0.04723712056875229, - 0.10146286338567734, - 0.07382183521986008, - 0.0197888370603323, - -0.01096520759165287, - 0.053285837173461914, - -0.10108982771635056, - -0.042458269745111465, - 0.01303887739777565, - -0.014631019905209541, - -0.07976728677749634, - 0.039096347987651825, - -0.05399172380566597, - 0.05580270290374756, - -0.06278306990861893, - 0.128276988863945, - 0.00547771668061614, - -0.0711478441953659, - -0.07058806717395782, - 0.03497830778360367, - -0.064044289290905, - 0.023915551602840424, - 0.0412735752761364, - 0.015875883400440216, - 0.043776970356702805, - -0.05875685065984726, - 0.12558326125144958, - 0.014873407781124115, - -0.021190688014030457, - -0.09137672930955887, - -0.04988788813352585, - -0.00418389867991209, - 0.04000279679894447, - 0.021027863025665283, - -0.0600716695189476, - -0.0002337014302611351, - 0.03781680762767792, - -0.03509362041950226, - 0.06237088888883591, - 0.1147623062133789, - 0.06811603158712387, - -0.0892682820558548 - ] - }, - "p244_234.wav": { - "name": "p244", - "embedding": [ - 0.03859855234622955, - 0.06536020338535309, - -0.05317090451717377, - 0.048265717923641205, - -0.07475513219833374, - 0.03391978517174721, - -0.11376482248306274, - 0.07741101086139679, - -0.024729568511247635, - 0.10837063938379288, - -0.06549143046140671, - 0.0974111258983612, - -0.03725048527121544, - -0.16334807872772217, - -0.022786781191825867, - 0.029134754091501236, - -0.021586617454886436, - -0.034028712660074234, - -0.07125753164291382, - -0.05357389524579048, - 0.03808830678462982, - 0.04620485007762909, - 0.037542980164289474, - -0.03874049335718155, - 0.024919772520661354, - 0.07656604051589966, - -0.0012513245455920696, - 0.020306438207626343, - -0.0073990351520478725, - -0.02825022302567959, - -0.033680260181427, - 0.12117268145084381, - -0.05313227325677872, - -0.02491612732410431, - 0.0220029316842556, - -0.011181545443832874, - -0.026563022285699844, - -0.06553985178470612, - 0.00677464809268713, - 0.0188668854534626, - -0.06003882735967636, - 0.07544171065092087, - 0.037750158458948135, - -0.02425515465438366, - 0.03790944069623947, - -0.02394789643585682, - -0.03895793855190277, - -0.031601451337337494, - -0.1135723739862442, - 0.15090526640415192, - 0.06480830907821655, - 0.005111951846629381, - -0.07643724977970123, - -0.03469008952379227, - 0.11702896654605865, - 0.00011325161904096603, - -0.10391978174448013, - -0.0601520910859108, - 0.05091874301433563, - 0.13522972166538239, - -0.021721580997109413, - -0.010522306896746159, - 0.04580019786953926, - 0.08238363265991211, - 0.05134568735957146, - 0.05934164673089981, - 0.09767190366983414, - 0.11020466685295105, - -0.01940980926156044, - 0.026963967829942703, - 0.0635671317577362, - 0.0512508898973465, - 0.004070617258548737, - -0.03484227508306503, - 0.028774341568350792, - -0.023614415898919106, - -0.03152000159025192, - -0.021742310374975204, - -0.0170968659222126, - -0.03713006153702736, - -0.014190487563610077, - -0.006610504351556301, - 0.023592984303832054, - 0.013758573681116104, - -0.07379648089408875, - 0.03989016264677048, - 0.05868522822856903, - -0.04482884332537651, - 0.07561008632183075, - 0.04234018176794052, - -0.02142864651978016, - 0.02775394916534424, - -0.06345707178115845, - -0.06695277243852615, - 0.006896377075463533, - 0.015231841243803501, - -0.002263029105961323, - 0.07118502259254456, - 0.041825756430625916, - -0.01341099664568901, - 0.1182360053062439, - 0.05332415923476219, - -0.00010971445590257645, - 0.016209347173571587, - -0.05489329993724823, - 0.11478199064731598, - 0.09783156961202621, - -0.021169234067201614, - 0.04628896340727806, - -0.025693543255329132, - 0.04850009083747864, - 0.03727053850889206, - -0.0980229601264, - -0.05620863288640976, - 0.01675214245915413, - -0.0005779140628874302, - -0.016480816528201103, - 0.12641844153404236, - -0.023657022044062614, - 0.029201500117778778, - 0.1001882255077362, - -0.07846298068761826, - -0.0468326061964035, - -0.02599833346903324, - 0.0507347472012043, - -0.05261535570025444, - 0.03368260711431503, - 0.06303907930850983, - -0.010581274516880512, - 0.010219539515674114, - 0.07421673089265823, - -0.0032368479296565056, - 0.011091831140220165, - 0.022239116951823235, - -0.030271630734205246, - 0.06623533368110657, - -0.009648853912949562, - -0.014935877174139023, - 0.08406563848257065, - 0.03172847628593445, - 0.07616819441318512, - -0.020973140373826027, - 0.0075493683107197285, - -0.08079719543457031, - 0.034587062895298004, - 0.03369280695915222, - 0.07178688794374466, - -0.02151252143085003, - -0.002016404177993536, - -0.06350171566009521, - -0.09410462528467178, - 0.036443352699279785, - -0.0070542446337640285, - 0.11022815108299255, - -0.02414689213037491, - 0.0006169844418764114, - 0.10694345086812973, - 0.03461815416812897, - -0.0037476629950106144, - -0.039060309529304504, - -0.012701804749667645, - 0.0005930531769990921, - 0.0647931694984436, - -0.06514895707368851, - -0.05673503875732422, - -0.017224684357643127, - 0.028163854032754898, - -0.013866370543837547, - 0.06153073161840439, - 0.06615598499774933, - 0.007006385363638401, - 0.015415019355714321, - -0.09403462707996368, - 0.040469661355018616, - -0.0571637861430645, - 0.0030420292168855667, - -0.018780099228024483, - -0.05402619391679764, - -0.03947633132338524, - 0.10606244206428528, - 0.028492046520113945, - 0.018114376813173294, - -0.00851733423769474, - -0.08809319138526917, - -0.05415783450007439, - 0.04925578832626343, - 0.0618937686085701, - -0.03630887717008591, - 0.04230650141835213, - 0.06619949638843536, - -0.02612951397895813, - 0.02468230575323105, - 0.08153250068426132, - 0.06665295362472534, - -0.05009851232171059, - -0.010692842304706573, - -0.046283796429634094, - 0.0961911752820015, - 0.057161860167980194, - -0.08834637701511383, - -0.058778949081897736, - -0.05279126390814781, - -0.0705227255821228, - 0.032884445041418076, - -0.00844891369342804, - 0.011212746612727642, - 0.04085033759474754, - -0.01949182152748108, - -0.11022347211837769, - -0.09587196260690689, - 0.08932378888130188, - -0.05024102330207825, - 0.0008833149913698435, - -0.08373536169528961, - 0.011574815027415752, - 0.07716451585292816, - 0.030302952975034714, - -0.018663160502910614, - 0.003427368588745594, - 0.026869148015975952, - -0.03749735653400421, - 0.025821998715400696, - 0.06695492565631866, - 0.030477840453386307, - -0.08606046438217163, - -0.01636342518031597, - -0.07262247055768967, - 0.09376001358032227, - -0.045824408531188965, - 0.13435187935829163, - 0.030832357704639435, - -0.029940340667963028, - -0.0678267776966095, - 0.08531317859888077, - -0.038513388484716415, - 0.0648491233587265, - 0.07825575023889542, - 0.06580692529678345, - 0.023558005690574646, - -0.07233178615570068, - 0.10416823625564575, - 0.0473080649971962, - -0.03588294982910156, - -0.07229477912187576, - -0.020407695323228836, - -0.02657570317387581, - 0.03915943577885628, - 0.04880320280790329, - -0.06501597911119461, - 0.018592577427625656, - 0.0319160558283329, - -0.024493027478456497, - 0.08041813969612122, - 0.110394686460495, - 0.11622071266174316, - -0.07773072272539139 - ] - }, - "p244_397.wav": { - "name": "p244", - "embedding": [ - 0.057540830224752426, - 0.06532454490661621, - -0.02408442460000515, - 0.042704205960035324, - -0.062366336584091187, - 0.056560419499874115, - -0.1079028993844986, - 0.11655204743146896, - -0.04469050094485283, - 0.13947443664073944, - -0.07262063026428223, - 0.11737707257270813, - -0.01949811726808548, - -0.17521195113658905, - -0.03316901624202728, - 0.05325757712125778, - -0.06746870279312134, - -0.04792320355772972, - -0.0665336474776268, - -0.03227730095386505, - 0.0373370423913002, - 0.05137907713651657, - 0.035126909613609314, - 0.02016899548470974, - 0.014160270802676678, - 0.07044355571269989, - -0.012833474203944206, - 0.03222101554274559, - 0.015369421802461147, - -0.07165725529193878, - -0.04738829657435417, - 0.09383641928434372, - -0.0397530198097229, - 0.011873606592416763, - 0.03279845416545868, - 0.00019890815019607544, - 0.00031969169504009187, - -0.08078673481941223, - -0.044617921113967896, - 0.0028171264566481113, - -0.05969257652759552, - 0.06437467038631439, - 0.01772245019674301, - -0.031186606734991074, - 0.04823547601699829, - -0.010540718212723732, - -0.04005371034145355, - -0.04987271875143051, - -0.10491453111171722, - 0.1607937067747116, - 0.09455075860023499, - 0.005585236009210348, - -0.06001652032136917, - -0.06775936484336853, - 0.10809382051229477, - -0.0183560773730278, - -0.1331251561641693, - -0.031904272735118866, - 0.06258156150579453, - 0.16119226813316345, - -0.03705383464694023, - -0.02197418175637722, - 0.034684278070926666, - 0.12138589471578598, - 0.06770135462284088, - 0.08071542531251907, - 0.09527765959501266, - 0.10467272996902466, - -0.023244358599185944, - 0.02007889375090599, - 0.07369059324264526, - 0.07845441997051239, - 0.0824674516916275, - -0.004242807626724243, - 0.028644919395446777, - 0.015267936512827873, - -0.029963966459035873, - -0.012296195141971111, - -0.03389760106801987, - -0.008340008556842804, - -0.016823895275592804, - -0.0030051961075514555, - 0.018570445477962494, - 0.015772460028529167, - -0.02580837905406952, - 0.05877598747611046, - 0.03376041352748871, - -0.023342913016676903, - 0.047215916216373444, - 0.027569323778152466, - -0.0004563244874589145, - 0.06384430825710297, - -0.06534422934055328, - -0.08968979120254517, - 0.01588067226111889, - 0.011095504276454449, - 0.014128206297755241, - 0.06967657804489136, - 0.04535719379782677, - -0.02505848929286003, - 0.11780580133199692, - 0.04420093819499016, - -0.010124864988029003, - 0.0207502581179142, - -0.0945325717329979, - 0.10449769347906113, - 0.10750206559896469, - -0.02789856493473053, - 0.03669149801135063, - -0.0426027774810791, - 0.09445399045944214, - 0.07198980450630188, - -0.14391843974590302, - -0.05636026710271835, - 0.030613554641604424, - -0.012263334356248379, - -0.004027357324957848, - 0.10700099170207977, - -0.006462668534368277, - 0.04592222720384598, - 0.10730355978012085, - -0.08114545047283173, - -0.03928473964333534, - -0.023136427626013756, - 0.053239788860082626, - -0.08261683583259583, - 0.052216537296772, - 0.036352451890707016, - -0.0025719678960740566, - 0.003824323182925582, - 0.07800237834453583, - -0.02541550248861313, - -0.026276595890522003, - 0.011455315165221691, - -0.05827484652400017, - 0.02425011619925499, - -0.02965531498193741, - -0.02056877315044403, - 0.06409473717212677, - 0.03817122057080269, - 0.02788360044360161, - -0.020514635369181633, - -0.02869958057999611, - -0.11039724946022034, - 0.0313028059899807, - 0.026596589013934135, - 0.07606153935194016, - -0.007155153900384903, - -0.00208934280090034, - -0.03904145956039429, - -0.07480637729167938, - 0.03183102607727051, - -0.030751032754778862, - 0.06840033829212189, - -0.030961211770772934, - 0.004520168527960777, - 0.09241440147161484, - 0.013798135332763195, - -0.011791705153882504, - -0.036504633724689484, - -0.029024504125118256, - 0.017915723845362663, - 0.06781511008739471, - -0.07024537026882172, - -0.070942722260952, - 0.004237617366015911, - 0.02153971791267395, - -0.023881524801254272, - 0.04084716737270355, - 0.028243567794561386, - 0.012064069509506226, - 0.02149488590657711, - -0.07491093128919601, - 0.008561758324503899, - -0.12347130477428436, - -0.060442790389060974, - 0.00012538924056570977, - -0.04127415642142296, - 0.00697859562933445, - 0.06804788112640381, - 0.016223493963479996, - 0.029025528579950333, - -0.022596752271056175, - -0.09798000752925873, - -0.07826878130435944, - 0.07046032696962357, - 0.06413925439119339, - 0.010672470554709435, - 0.04109174758195877, - 0.07330833375453949, - -0.016872752457857132, - 0.044797904789447784, - 0.05065843462944031, - 0.11130677163600922, - -0.015410601161420345, - 0.021907702088356018, - -0.07040541619062424, - 0.09405621141195297, - 0.07999931275844574, - -0.07885131239891052, - -0.08681308478116989, - -0.034416936337947845, - -0.06607018411159515, - 0.049803461879491806, - -0.025917261838912964, - 0.0004382620973046869, - 0.03776116669178009, - -0.005550956353545189, - -0.11164825409650803, - -0.08303257077932358, - 0.11659802496433258, - -0.05695090815424919, - -0.015014204196631908, - -0.08481454849243164, - 0.03651123866438866, - 0.09869354963302612, - 0.034791506826877594, - -0.018765516579151154, - 0.020810086280107498, - 0.05472680926322937, - -0.04323801025748253, - -0.004003293812274933, - 0.04698282107710838, - 0.019797801971435547, - -0.12165190279483795, - -0.017747284844517708, - -0.0698779746890068, - 0.06123388931155205, - -0.051786281168460846, - 0.13769465684890747, - -0.0026503829285502434, - -0.03999355062842369, - -0.08109214156866074, - 0.06105998158454895, - -0.005325633566826582, - 0.06430846452713013, - 0.04729950428009033, - 0.07043691724538803, - 0.0337294302880764, - -0.08141229301691055, - 0.11539270728826523, - 0.04767915606498718, - -0.04081384465098381, - -0.05705872178077698, - -0.038658443838357925, - -0.034047093242406845, - 0.007532726041972637, - 8.991795766633004e-05, - -0.07070273905992508, - -0.0014495283830910921, - 0.005676197819411755, - -0.0341653935611248, - 0.05727916583418846, - 0.14224930107593536, - 0.08008070290088654, - -0.11024807393550873 - ] - }, - "p244_106.wav": { - "name": "p244", - "embedding": [ - 0.0427519716322422, - 0.07694810628890991, - -0.02245134301483631, - -0.005665434058755636, - -0.010476135648787022, - 0.06258927285671234, - -0.1418188214302063, - 0.10302042961120605, - -0.06556939333677292, - 0.11914758384227753, - -0.07776011526584625, - 0.08804655075073242, - -0.011592025868594646, - -0.1432502567768097, - -0.08018187433481216, - 0.027180248871445656, - -0.01970004104077816, - -0.004508022218942642, - -0.026844289153814316, - -0.01862291246652603, - 0.04567750543355942, - 0.018382199108600616, - 0.0061140842735767365, - -0.00606498122215271, - 0.010840908624231815, - 0.03474259749054909, - 0.033002011477947235, - 0.03733992204070091, - -0.004828840494155884, - 0.02688691020011902, - 0.020637158304452896, - 0.10734124481678009, - -0.01397402212023735, - 0.027543287724256516, - 0.05704706907272339, - 0.030004329979419708, - -0.008690332062542439, - -0.07661132514476776, - 0.010858278721570969, - -0.0017732740379869938, - -0.024860268458724022, - 0.0724225789308548, - 0.05331461876630783, - 0.031018195673823357, - 0.016407746821641922, - -0.0012391991913318634, - -0.012477651238441467, - -0.0644802451133728, - -0.08840176463127136, - 0.15691760182380676, - 0.04493248835206032, - 0.024969400838017464, - -0.10528482496738434, - -0.04488055408000946, - 0.11523723602294922, - -0.004678588360548019, - -0.06408601999282837, - -0.0564829558134079, - 0.05434976890683174, - 0.1709747016429901, - -0.020079301670193672, - -0.04213612526655197, - 0.005624804645776749, - 0.11440606415271759, - -0.010934830643236637, - 0.06499598920345306, - 0.10186415910720825, - 0.08263866603374481, - 0.012216202914714813, - 0.020930536091327667, - 0.02490309253334999, - 0.04082687944173813, - 0.0038823112845420837, - -0.05641651153564453, - 0.028496716171503067, - -0.01733851246535778, - -0.016198333352804184, - 0.03138786926865578, - -0.03411983326077461, - -0.05369788780808449, - -0.02596319653093815, - 0.016600243747234344, - 0.005684027448296547, - 0.02999354712665081, - -0.05634834244847298, - 0.025477098301053047, - 0.0038183159194886684, - -0.04912189394235611, - 0.05777186527848244, - 0.0677749514579773, - -0.003958894871175289, - -0.005723932757973671, - -0.04160679131746292, - -0.09642630815505981, - 0.016420360654592514, - 0.00039441417902708054, - -0.009193778969347477, - 0.0674218237400055, - 0.021623987704515457, - -0.002396136522293091, - 0.07411657273769379, - 0.033429283648729324, - -0.019676407799124718, - -0.015580292791128159, - -0.08421895653009415, - 0.09572944790124893, - 0.09954970329999924, - -0.01319190114736557, - 0.009538757614791393, - -0.062058378010988235, - 0.02598610892891884, - 0.07688501477241516, - -0.1164083480834961, - -0.08166754990816116, - 0.06654050201177597, - 0.05794944614171982, - 0.03165165334939957, - 0.09595367312431335, - -0.007649307604879141, - -0.022623702883720398, - 0.059548377990722656, - -0.05058114230632782, - -0.06607181578874588, - -0.06546132266521454, - 0.040819473564624786, - -0.04138847067952156, - 0.024085860699415207, - 0.03412676602602005, - 0.02466416172683239, - -0.05497874319553375, - 0.06199301406741142, - 0.01113943662494421, - -0.008335095830261707, - -0.010134845972061157, - 0.026606829836964607, - 0.0726943239569664, - -0.021889425814151764, - -0.010633549652993679, - 0.009030130691826344, - 0.07020898163318634, - 0.032597240060567856, - 0.04164118692278862, - -0.030050138011574745, - -0.06943956017494202, - -0.014498108997941017, - 0.07804124057292938, - 0.04547502100467682, - -0.0435788631439209, - -0.05152851343154907, - -0.04110708460211754, - -0.032782066613435745, - -0.0016359263099730015, - -0.015720851719379425, - 0.09455867111682892, - 0.031994856894016266, - 0.031123023480176926, - 0.10014209151268005, - -0.02973327413201332, - -0.01036190614104271, - -0.02443264052271843, - 0.04108366742730141, - 0.018774792551994324, - 0.015921510756015778, - -0.045924410223960876, - -0.05289851874113083, - 0.003566407598555088, - 0.024182381108403206, - -0.022433005273342133, - -0.005906634032726288, - 0.01901666820049286, - -0.0029092319309711456, - 0.041755907237529755, - -0.08814629912376404, - 0.013949907384812832, - -0.13104656338691711, - -0.007741441950201988, - -0.008114174008369446, - -0.04755556955933571, - 0.012878422625362873, - 0.0642852932214737, - 0.03845012187957764, - 0.013791058212518692, - -0.004724073689430952, - -0.09635418653488159, - -0.03396987542510033, - 0.08273695409297943, - 0.10104820132255554, - -0.013546517118811607, - 0.007590843364596367, - 0.025754503905773163, - 0.004993945360183716, - 0.02900567278265953, - 0.0814787894487381, - 0.061993952840566635, - -0.04452437907457352, - -0.029020089656114578, - -0.04106205329298973, - 0.09100213646888733, - 0.0467894971370697, - -0.09919969737529755, - -0.0771709531545639, - -0.019369514659047127, - -0.04193383455276489, - -0.00019593536853790283, - -0.025279633700847626, - 0.017453771084547043, - 0.02317841723561287, - -0.04758284240961075, - -0.11623245477676392, - -0.08040468394756317, - 0.0547233484685421, - -0.05182869732379913, - -0.0026939632371068, - -0.05191291868686676, - 0.04142235592007637, - 0.0949823260307312, - 0.020158160477876663, - -0.007058457471430302, - -0.024548951536417007, - -0.00752929225564003, - -0.07997819781303406, - -0.043783482164144516, - -0.03655308857560158, - 0.006962346378713846, - -0.09107588231563568, - 0.02590060979127884, - -0.06737266480922699, - 0.09787330776453018, - -0.07624639570713043, - 0.10886448621749878, - -0.006393615156412125, - -0.06544225662946701, - -0.07187162339687347, - -0.02109329029917717, - -0.0179626252502203, - 0.05293448269367218, - 0.025958435609936714, - 0.04295800253748894, - -0.021494261920452118, - -0.057783521711826324, - 0.09629243612289429, - 0.07330377399921417, - -0.020481985062360764, - -0.08109760284423828, - -0.018762478604912758, - -0.002446417696774006, - 0.02659645862877369, - -0.004103943705558777, - -0.03248944133520126, - 0.004662847146391869, - 0.024305369704961777, - -0.04136628657579422, - 0.06538631021976471, - 0.10389071702957153, - 0.0602184496819973, - -0.10899677872657776 - ] - }, - "p244_191.wav": { - "name": "p244", - "embedding": [ - 0.022175565361976624, - 0.0747724249958992, - -0.027321409434080124, - 0.030165312811732292, - -0.05689185485243797, - 0.07187459617853165, - -0.15050649642944336, - 0.10399547219276428, - -0.037636712193489075, - 0.1342366337776184, - -0.04982148855924606, - 0.10650668293237686, - -0.008327571675181389, - -0.22470709681510925, - -0.04590329900383949, - 0.054470378905534744, - -0.06933785229921341, - -0.05900704115629196, - -0.051514819264411926, - -0.025101831182837486, - 0.044221095740795135, - 0.03885680064558983, - 0.0031743545550853014, - 0.0074349381029605865, - 0.009667285718023777, - 0.06393073499202728, - -0.009768174961209297, - 0.03430560976266861, - 0.008768603205680847, - -0.014811355620622635, - -0.028077878057956696, - 0.1162358820438385, - -0.04909404367208481, - 0.004908096045255661, - 0.04136002063751221, - -0.005539552308619022, - 0.007891043089330196, - -0.036787621676921844, - -0.0105166370049119, - 0.03261182829737663, - -0.05397137999534607, - 0.08123006671667099, - 0.056336089968681335, - 0.02756069228053093, - 0.042793285101652145, - 0.01947682537138462, - -0.03352392092347145, - -0.052572377026081085, - -0.10145284980535507, - 0.1726909726858139, - 0.08373115211725235, - -0.02637336030602455, - -0.042922284454107285, - -0.05629683658480644, - 0.1016121581196785, - 0.006244222167879343, - -0.13506515324115753, - -0.06101066246628761, - 0.10683766007423401, - 0.15685945749282837, - -0.027135232463479042, - -0.02631394751369953, - 0.016621630638837814, - 0.14870795607566833, - 0.046060968190431595, - 0.09830193221569061, - 0.06431888043880463, - 0.1227603331208229, - -0.012555280700325966, - -0.012496725656092167, - 0.08732208609580994, - 0.048278260976076126, - 0.02975551038980484, - -0.031862739473581314, - 0.03687242045998573, - -0.010816832073032856, - 0.013931049965322018, - 0.0018217662582173944, - -0.021716777235269547, - 0.004080775193870068, - 0.005389925092458725, - 0.008121881633996964, - -0.01443731039762497, - 0.031808264553546906, - -0.03613647073507309, - 0.046505335718393326, - 0.04709441959857941, - 0.0026023699901998043, - 0.06788568198680878, - 0.06565072387456894, - 0.026158148422837257, - 0.0611119419336319, - -0.06408911198377609, - -0.0799141675233841, - 0.04541116580367088, - 0.014736386016011238, - 0.01829720474779606, - 0.06068801134824753, - 0.033604465425014496, - -0.008374703116714954, - 0.10796406120061874, - 0.04096109792590141, - -0.03924153372645378, - 0.03126382827758789, - -0.10777614265680313, - 0.14503967761993408, - 0.07615648210048676, - -0.011648321524262428, - 0.028465423732995987, - -0.0382898710668087, - 0.07624278217554092, - 0.06406006217002869, - -0.12477913498878479, - -0.06001076102256775, - 0.05483951047062874, - 0.02717859297990799, - -0.04498917981982231, - 0.13747744262218475, - -0.009407522156834602, - 0.015672191977500916, - 0.10710211843252182, - -0.061838794499635696, - -0.043705619871616364, - -0.03202421963214874, - 0.03577689453959465, - -0.0925050601363182, - 0.03193860873579979, - 0.046968456357717514, - -0.015962304547429085, - 0.00843830220401287, - 0.0938134416937828, - -0.009952452965080738, - 0.004126099403947592, - 0.0025766040198504925, - -0.02352413907647133, - 0.0604381188750267, - -0.00112285150680691, - 0.010314145125448704, - 0.04976432025432587, - 0.023834409192204475, - 0.05055885761976242, - -0.012612798251211643, - -0.0377265028655529, - -0.12382485717535019, - 0.025742942467331886, - 0.024966957047581673, - 0.08417195081710815, - -0.013430200517177582, - 0.0034405088517814875, - -0.04963560029864311, - -0.08324241638183594, - 0.030722662806510925, - -0.02228548191487789, - 0.09034071862697601, - -0.008055459707975388, - -0.037861380726099014, - 0.08979056030511856, - 0.016244126483798027, - 0.0017152815125882626, - -0.035636186599731445, - -0.03838826343417168, - 0.013545718975365162, - 0.03792436048388481, - -0.10829644650220871, - -0.03670772165060043, - 0.002010050928220153, - 0.042315997183322906, - -0.0072885481640696526, - 0.037247128784656525, - 0.055533722043037415, - 0.011021795682609081, - 0.028642475605010986, - -0.07372120767831802, - 0.016794823110103607, - -0.08757111430168152, - -0.05934591963887215, - -0.014382150024175644, - -0.021497951820492744, - -0.013199860230088234, - 0.0862390547990799, - -0.0036681336350739002, - 0.019779764115810394, - -0.02517828717827797, - -0.07932916283607483, - -0.0665304884314537, - 0.0705956220626831, - 0.07664357870817184, - -0.0077321394346654415, - 0.054230138659477234, - 0.05223070830106735, - -0.039549436420202255, - 0.04978561773896217, - 0.055477555841207504, - 0.1299421638250351, - -0.04276376590132713, - 0.029367748647928238, - -0.0633784830570221, - 0.08539832383394241, - 0.05862031131982803, - -0.08714938163757324, - -0.059677526354789734, - 0.0008904297719709575, - -0.052549783140420914, - 0.02825263887643814, - -0.04864303395152092, - 0.005762938410043716, - 0.030967002734541893, - 0.009038272313773632, - -0.1029125452041626, - -0.08618417382240295, - 0.06293707340955734, - -0.08058104664087296, - -0.005472587421536446, - -0.09468360990285873, - 0.04746519774198532, - 0.10620653629302979, - 0.03684850037097931, - -0.049029648303985596, - -0.008159715682268143, - 0.04514487460255623, - -0.039109472185373306, - 0.0007048398838378489, - 0.039099399000406265, - 0.037268124520778656, - -0.12623754143714905, - -0.03399093076586723, - -0.09068727493286133, - 0.050463948398828506, - -0.0474587008357048, - 0.13753531873226166, - 0.028787899762392044, - -0.03845091164112091, - -0.060725659132003784, - 0.04398157447576523, - -0.016064437106251717, - 0.06347043067216873, - 0.047907594591379166, - 0.074980728328228, - 0.04420159384608269, - -0.03178921714425087, - 0.12935315072536469, - 0.04517108201980591, - -0.03804997354745865, - -0.07401292026042938, - 0.010099492967128754, - -0.032603826373815536, - 0.0480019710958004, - 0.04429735988378525, - -0.11224681884050369, - -0.02244671806693077, - 0.0525258332490921, - -0.03385701775550842, - 0.05783668905496597, - 0.1340969055891037, - 0.07120203226804733, - -0.0999627485871315 - ] - }, - "p244_408.wav": { - "name": "p244", - "embedding": [ - 0.05795387923717499, - 0.07993321120738983, - -0.028890900313854218, - 0.04526165500283241, - -0.053827352821826935, - 0.07763614505529404, - -0.1255510449409485, - 0.10473877191543579, - -0.03808465227484703, - 0.14794796705245972, - -0.054261621087789536, - 0.1166784018278122, - 0.008465890772640705, - -0.1844589114189148, - -0.033687327057123184, - 0.0470532588660717, - -0.05057710409164429, - -0.02854839526116848, - -0.0529794916510582, - -0.0006592115387320518, - 0.048261843621730804, - 0.05804350972175598, - 0.03579185903072357, - -0.034539684653282166, - 0.030921176075935364, - 0.04982202500104904, - 0.001303676050156355, - 0.04713825136423111, - 0.02033761329948902, - -0.09648922085762024, - -0.04627399146556854, - 0.11619056016206741, - -0.04022083058953285, - 0.02874002419412136, - 0.037012986838817596, - -0.004669602029025555, - 0.008763359859585762, - -0.06490179896354675, - -0.02678809128701687, - 0.02365734800696373, - -0.036279380321502686, - 0.0786181092262268, - 0.032284680753946304, - -0.007165825460106134, - 0.042665693908929825, - -0.0048924582079052925, - -0.030786365270614624, - -0.05162402242422104, - -0.0943618193268776, - 0.1822013556957245, - 0.05752633512020111, - -0.0026272409595549107, - -0.061701394617557526, - -0.08332651853561401, - 0.09486395120620728, - 0.002730137901380658, - -0.12565092742443085, - -0.04224316030740738, - 0.062358319759368896, - 0.15870404243469238, - -0.00639377674087882, - -0.03632984310388565, - 0.027366695925593376, - 0.12502487003803253, - 0.048423781991004944, - 0.09107780456542969, - 0.07537348568439484, - 0.10573868453502655, - 0.00944077130407095, - 0.03287335857748985, - 0.052275948226451874, - 0.07837960124015808, - 0.04395738244056702, - -0.017929136753082275, - 0.040936488658189774, - -0.0040151197463274, - -0.027951855212450027, - -0.008947746828198433, - -0.011454056948423386, - -0.0007989341393113136, - 0.003869995940476656, - 0.004563618451356888, - 0.021159760653972626, - 0.030073046684265137, - -0.047005705535411835, - 0.03801552206277847, - 0.02660352922976017, - -0.017359985038638115, - 0.05702454596757889, - 0.04981996864080429, - 0.0342940129339695, - 0.049222953617572784, - -0.0661940649151802, - -0.11556795239448547, - 0.03198021277785301, - 0.025216955691576004, - 0.0177287720143795, - 0.06385821104049683, - 0.03505943715572357, - -0.026817122474312782, - 0.10143935680389404, - 0.033250562846660614, - -0.01962314546108246, - 0.022350860759615898, - -0.08895082771778107, - 0.11319520324468613, - 0.09378618746995926, - -0.0030606850050389767, - 0.05085260793566704, - -0.058879315853118896, - 0.09249942004680634, - 0.0699605941772461, - -0.14641055464744568, - -0.08140605688095093, - 0.041800521314144135, - -0.00790295097976923, - -0.0018841137643903494, - 0.12380842864513397, - 0.00541010731831193, - 0.027493659406900406, - 0.08993594348430634, - -0.10014893859624863, - -0.047284893691539764, - -0.0257110595703125, - 0.04882792383432388, - -0.09543190151453018, - 0.05618387460708618, - 0.030164871364831924, - -0.026353899389505386, - -0.012837149202823639, - 0.0756593570113182, - -0.017210397869348526, - 0.026204951107501984, - 0.0013834394048899412, - -0.04166504740715027, - 0.04386794939637184, - -0.039340242743492126, - 0.007611640263348818, - 0.05172627419233322, - 0.01723569631576538, - 0.054618194699287415, - -0.024440079927444458, - -0.037975117564201355, - -0.1261913776397705, - 0.023831166326999664, - 0.031019095331430435, - 0.057257261127233505, - -0.01631343923509121, - -0.013952294364571571, - -0.039183732122182846, - -0.08422552049160004, - 0.052201323211193085, - -0.03210868313908577, - 0.07844893634319305, - 0.019184023141860962, - -0.007348168641328812, - 0.10857681930065155, - 0.006041594315320253, - 0.002210104838013649, - -0.03175653889775276, - -0.038547806441783905, - 0.02191019244492054, - 0.05476086214184761, - -0.09116437286138535, - -0.0550079345703125, - 0.0073479898273944855, - 0.0009390049381181598, - -0.012643402442336082, - 0.02743622660636902, - 0.05711442977190018, - 0.020645011216402054, - 0.04290563613176346, - -0.07044471055269241, - -0.007050788961350918, - -0.10893266648054123, - -0.05954836308956146, - -0.01748489774763584, - -0.035437729209661484, - -0.01827521063387394, - 0.10539530217647552, - 0.01852291449904442, - 0.020397283136844635, - -0.03199456259608269, - -0.061375267803668976, - -0.06714057922363281, - 0.06909464299678802, - 0.06822487711906433, - 0.010802545584738255, - 0.03910788893699646, - 0.04038555175065994, - -0.012726346030831337, - 0.04964650049805641, - 0.05538329482078552, - 0.09894035756587982, - -0.010316697880625725, - 0.012042976915836334, - -0.07650133967399597, - 0.12115707993507385, - 0.08962982147932053, - -0.0786755159497261, - -0.09203052520751953, - -0.020763112232089043, - -0.08135312795639038, - 0.03938748687505722, - -0.039056919515132904, - 0.0013477166648954153, - 0.04168971627950668, - -0.00751902861520648, - -0.1154029369354248, - -0.08849278092384338, - 0.09200016409158707, - -0.06380036473274231, - -0.024448929354548454, - -0.08399520814418793, - 0.04543715715408325, - 0.09038315713405609, - 0.05097802355885506, - -0.04044061526656151, - -0.001345152035355568, - 0.06383608281612396, - -0.060351815074682236, - 0.0017298684688284993, - 0.04822154343128204, - 0.017030300572514534, - -0.10195666551589966, - 0.0010009845718741417, - -0.06511762738227844, - 0.05057504400610924, - -0.08186712861061096, - 0.14817070960998535, - -5.755014717578888e-05, - -0.070331871509552, - -0.0739428848028183, - 0.0715414509177208, - -0.01954510062932968, - 0.040190234780311584, - 0.0398549884557724, - 0.05801467224955559, - 0.05601721629500389, - -0.08724776655435562, - 0.09807078540325165, - 0.0446489080786705, - -0.01285366527736187, - -0.07045096158981323, - -0.03892212361097336, - -0.031981877982616425, - 0.053543977439403534, - 0.012469088658690453, - -0.0838434100151062, - 0.00615954864770174, - 0.039289359003305435, - -0.010561258532106876, - 0.05536743998527527, - 0.13979165256023407, - 0.05070715770125389, - -0.11497946083545685 - ] - }, - "p244_197.wav": { - "name": "p244", - "embedding": [ - 0.058055635541677475, - 0.1074618473649025, - 0.021068284288048744, - -0.0010020845802500844, - -0.04170786216855049, - 0.08451616019010544, - -0.17002679407596588, - 0.1508990228176117, - -0.03895324096083641, - 0.1541563868522644, - -0.051700741052627563, - 0.10365165024995804, - -0.002696135314181447, - -0.19420285522937775, - -0.04791633039712906, - 0.055123891681432724, - -0.06069289147853851, - -0.027404047548770905, - -0.017811425030231476, - -0.03357461839914322, - 0.030294299125671387, - 0.04507025331258774, - 0.04362129047513008, - -0.0014828925486654043, - 0.05933642014861107, - 0.05420345440506935, - 0.009121217764914036, - 0.049728456884622574, - -0.000526254007127136, - -0.06650300323963165, - -0.025423135608434677, - 0.10703492909669876, - -0.048015132546424866, - 0.011957149021327496, - 0.04159965738654137, - -0.021543148905038834, - 0.009015759453177452, - -0.07240532338619232, - -0.01671900972723961, - 0.014973951503634453, - -0.01312252227216959, - 0.09170165657997131, - 0.04914812743663788, - 0.0187879279255867, - 0.014517447911202908, - 0.029300352558493614, - -0.004633763805031776, - -0.06220166012644768, - -0.11511097848415375, - 0.17847901582717896, - 0.05609407275915146, - 0.009741229005157948, - -0.06864548474550247, - -0.0787307620048523, - 0.10420095175504684, - -0.01636802777647972, - -0.10933462530374527, - -0.027812931686639786, - 0.08134518563747406, - 0.1686745285987854, - -0.029305512085556984, - -0.05873207747936249, - 0.0376870222389698, - 0.1378747969865799, - 0.0232933908700943, - 0.08510619401931763, - 0.08449776470661163, - 0.09587737172842026, - -0.013932125642895699, - 0.0073706479743123055, - 0.034882497042417526, - 0.05307560786604881, - 0.009565510787069798, - -0.020982712507247925, - 0.017607592046260834, - -0.019956450909376144, - -0.021204426884651184, - -0.0021228892728686333, - -0.013767629861831665, - -0.013673433102667332, - -0.007005990482866764, - 0.003988579381257296, - -0.0010128997964784503, - 0.04044744744896889, - -0.02840178832411766, - 0.03810817375779152, - -0.011452930979430676, - 0.002437965013086796, - 0.09827789664268494, - 0.019896171987056732, - 0.04258324205875397, - 0.06000569462776184, - -0.06600376218557358, - -0.06905841082334518, - 0.04455297067761421, - 0.01811547577381134, - 0.026311039924621582, - 0.07242988795042038, - 0.04268445074558258, - -0.03791908547282219, - 0.13067877292633057, - 0.05285258963704109, - -0.012711300514638424, - 0.008694911375641823, - -0.10869701951742172, - 0.12411991506814957, - 0.07382039725780487, - -0.017362473532557487, - 0.06939296424388885, - -0.054552335292100906, - 0.0707441046833992, - 0.06080062687397003, - -0.15742075443267822, - -0.0933922603726387, - 0.03836025297641754, - 0.05100821331143379, - -0.015163294039666653, - 0.1337669938802719, - 7.327039929805323e-05, - 0.034779444336891174, - 0.08967702835798264, - -0.0820172056555748, - -0.047974471002817154, - -0.013950485736131668, - 0.06435086578130722, - -0.0925464779138565, - 0.04168618097901344, - 0.07407135516405106, - -0.03881368413567543, - 0.016208147630095482, - 0.06853528320789337, - -0.008164691738784313, - 0.0060318936593830585, - 0.008668231777846813, - -0.042966317385435104, - 0.02779749222099781, - -0.02616289258003235, - 0.02356853149831295, - 0.006193407811224461, - 0.043752271682024, - 0.04131161794066429, - 0.00846865028142929, - -0.061276935040950775, - -0.11208146810531616, - 0.0010961816878989339, - 0.020529426634311676, - 0.06525661796331406, - -0.016497058793902397, - -0.040986113250255585, - -0.04217483103275299, - -0.03932361677289009, - 0.016968177631497383, - 0.005211802199482918, - 0.07559551298618317, - -0.0035012983717024326, - -0.0009613845031708479, - 0.09929198771715164, - 0.05012435466051102, - -0.0016848078230395913, - -0.04078972712159157, - -0.03895736113190651, - 0.014426643960177898, - 0.03421925753355026, - -0.08102822303771973, - -0.05011318251490593, - 0.005671427585184574, - 0.04207475110888481, - -0.020724017173051834, - 0.052591726183891296, - 0.044406261295080185, - 0.02426319569349289, - 0.03639514371752739, - -0.05352209508419037, - 0.026526305824518204, - -0.08224309980869293, - -0.06781580299139023, - 0.001592017593793571, - 0.010638938285410404, - -0.045833855867385864, - 0.09403815120458603, - 0.022935403510928154, - 0.0695425346493721, - -0.02482745051383972, - -0.04397549480199814, - -0.06354080885648727, - 0.047804396599531174, - 0.07627888023853302, - -0.016450703144073486, - 0.031017674133181572, - 0.04734286665916443, - -0.02203744277358055, - 0.06639260798692703, - 0.0652126893401146, - 0.09491625428199768, - -0.0347813256084919, - 0.02320261299610138, - -0.07312561571598053, - 0.07098966091871262, - 0.06723051518201828, - -0.08712327480316162, - -0.08389002829790115, - -0.02102913334965706, - -0.07230132818222046, - 0.038018643856048584, - -0.008482086472213268, - 0.008950849995017052, - 0.007707138080149889, - -0.006337166763842106, - -0.09167716652154922, - -0.08920707553625107, - 0.07076869159936905, - -0.07141191512346268, - -0.0038407405372709036, - -0.07515989989042282, - 0.06482430547475815, - 0.10594165325164795, - 0.05566047504544258, - -0.001486341585405171, - -0.03975987061858177, - 0.026226256042718887, - -0.03154412657022476, - 0.005256484728306532, - 0.053102798759937286, - 0.028496958315372467, - -0.11359695345163345, - 0.01944729872047901, - -0.08850865811109543, - 0.052623454481363297, - -0.04521642252802849, - 0.16470223665237427, - 0.021295713260769844, - -0.0673568993806839, - -0.08467940241098404, - 0.019602719694375992, - -0.04269549995660782, - 0.042172446846961975, - 0.022178830578923225, - 0.04342152178287506, - 0.058471474796533585, - -0.0572822168469429, - 0.0899905413389206, - 0.0321134477853775, - -0.04098472371697426, - -0.08059430122375488, - -0.03718848153948784, - -0.023323047906160355, - 0.03747283294796944, - -0.0025357201229780912, - -0.09115681052207947, - -0.030114056542515755, - 0.03872305899858475, - 0.004737819544970989, - 0.0894341990351677, - 0.1272176206111908, - 0.05156904458999634, - -0.14191167056560516 - ] - }, - "p244_336.wav": { - "name": "p244", - "embedding": [ - 0.04297199845314026, - 0.06637506932020187, - 0.0003252355381846428, - -0.04164819419384003, - -0.0164704080671072, - 0.02591972053050995, - -0.13879114389419556, - 0.09573985636234283, - -0.004450442269444466, - 0.15151214599609375, - -0.05243874341249466, - 0.09468136727809906, - -0.024470534175634384, - -0.09278792887926102, - 0.021567203104496002, - 0.02131728082895279, - -0.027086731046438217, - 9.04211774468422e-05, - -0.0008207745850086212, - -0.08896653354167938, - 0.010634129866957664, - 0.01587599143385887, - 0.02689112164080143, - -0.05673631653189659, - 0.014687832444906235, - 0.08172720670700073, - -0.007245142012834549, - -0.017211776226758957, - -0.014790334738790989, - -0.07775133848190308, - 0.02428421750664711, - 0.06400258839130402, - -0.05009445175528526, - -0.008332937024533749, - 0.03116048499941826, - -0.012234840542078018, - -0.021201271563768387, - -0.02297772653400898, - 0.02111024223268032, - 0.05742549151182175, - -0.044390276074409485, - 0.08910342305898666, - 0.03663421422243118, - 0.004380689933896065, - 0.03484594449400902, - -0.019738275557756424, - -0.028948847204446793, - 0.020697079598903656, - -0.04744671657681465, - 0.1116088479757309, - 0.05790285766124725, - -0.0015091700479388237, - -0.06089019030332565, - 0.013046946376562119, - 0.06016375496983528, - 0.0027748923748731613, - -0.08971203118562698, - -0.0043679457157850266, - 0.018695957958698273, - 0.07477156817913055, - -0.037917912006378174, - -0.07455902546644211, - 0.021636972203850746, - 0.06878378987312317, - -0.005640862509608269, - 0.047774724662303925, - 0.09340020269155502, - 0.07889383286237717, - -0.0365731380879879, - 0.0011922679841518402, - 0.02478170022368431, - 0.07595258951187134, - 0.05987626314163208, - -0.02564232610166073, - 0.053052566945552826, - -0.03301495686173439, - -0.004700921941548586, - -0.05111683905124664, - -0.000600697472691536, - -0.05951221287250519, - -0.04950045794248581, - -0.022256068885326385, - 0.021153628826141357, - 0.07263054698705673, - -3.6852434277534485e-05, - -0.010028915479779243, - 0.06456665694713593, - -0.040224798023700714, - 0.0445375069975853, - 0.02239389345049858, - 0.015698667615652084, - 0.021052440628409386, - -0.09284137189388275, - -0.02747391164302826, - 0.021850164979696274, - -0.038596514612436295, - 0.0730225071310997, - 0.044772081077098846, - 0.044825874269008636, - 0.020545249804854393, - 0.08739449083805084, - 0.05544038861989975, - 0.001629092963412404, - -0.04035439342260361, - -0.06761690974235535, - 0.10777570307254791, - 0.10720673203468323, - -0.07259534299373627, - 0.03398248925805092, - -0.005189461633563042, - 0.02227882668375969, - -0.0324593111872673, - -0.10422004014253616, - -0.029190029948949814, - -0.020331036299467087, - 0.06648590415716171, - 0.01597311906516552, - 0.12341463565826416, - 0.011800015345215797, - 0.04585743322968483, - 0.08070963621139526, - -0.019063778221607208, - -0.022774135693907738, - -0.05218600109219551, - 0.027308207005262375, - -0.10546234250068665, - 0.0696202740073204, - 0.05264337360858917, - 0.03131499141454697, - 0.03148127719759941, - 0.08422926068305969, - 0.01298036240041256, - -0.011416951194405556, - -0.05168282240629196, - 0.009225451387465, - 0.011088758707046509, - 0.010594906285405159, - 0.050012726336717606, - 0.03542950749397278, - 0.011802375316619873, - 0.10038711130619049, - 0.04961829632520676, - -0.007886858657002449, - -0.0796830803155899, - 0.036881640553474426, - 0.003776947967708111, - 0.02053573727607727, - -0.04421299695968628, - -0.031965840607881546, - 0.015910228714346886, - -0.07837881147861481, - -0.015975290909409523, - -0.00562854390591383, - 0.06497380137443542, - 0.004884698428213596, - -0.006149151362478733, - 0.10936041176319122, - 0.05248694121837616, - 0.0030342661775648594, - -0.0033281277865171432, - -0.014363911002874374, - -0.019560104236006737, - 0.07094424962997437, - -0.1463857740163803, - -0.06753361225128174, - -0.021173985674977303, - 0.03479725494980812, - 0.021704215556383133, - 0.042933911085128784, - 0.09864449501037598, - -0.018615618348121643, - 0.0384952686727047, - 0.023089613765478134, - 0.0036072293296456337, - -0.050257302820682526, - -0.08452620357275009, - -0.02091260440647602, - -0.07687711715698242, - -0.06702183932065964, - 0.04567151144146919, - -0.043574102222919464, - 0.06908570230007172, - -0.02905118092894554, - -0.027556948363780975, - -0.05216683819890022, - 0.026882434263825417, - 0.021881554275751114, - -0.0668681263923645, - -0.015298723243176937, - 0.09534942358732224, - 0.01464770920574665, - 0.0020034611225128174, - 0.05454543977975845, - 0.09636372327804565, - -0.07684508711099625, - 0.02490130253136158, - -0.06378153711557388, - 0.07028444111347198, - 0.07099933922290802, - -0.020072638988494873, - -0.054828282445669174, - -0.06908369064331055, - -0.054092518985271454, - 0.04419594630599022, - -0.0267596747726202, - -0.02340739406645298, - -0.0006609074771404266, - -0.004478516057133675, - -0.04075480252504349, - -0.053550899028778076, - 0.04134989529848099, - -0.031349148601293564, - 0.021280432119965553, - -0.06925119459629059, - 0.02097034826874733, - 0.018761366605758667, - 0.07122942805290222, - -0.04583998769521713, - 0.05291718244552612, - 0.01850764825940132, - -0.023767197504639626, - 0.030848052352666855, - 0.02042655646800995, - 0.05000197887420654, - -0.03353630751371384, - -0.06380531936883926, - -0.07287409901618958, - 0.029993098229169846, - -0.038242340087890625, - 0.0485946424305439, - 0.02599048614501953, - -0.031193427741527557, - -0.03089020401239395, - -0.02484181709587574, - -0.037060145288705826, - 0.025059210136532784, - 0.07898952066898346, - 0.055542346090078354, - 0.048502467572689056, - -0.023209938779473305, - 0.07391097396612167, - 0.03547685593366623, - 0.027104074135422707, - -0.026511378586292267, - -0.0020484812557697296, - -0.023154495283961296, - 0.032872721552848816, - 0.02549217827618122, - -0.07073508948087692, - 0.024470817297697067, - 0.0013566603884100914, - 0.022015897557139397, - 0.03684920445084572, - 0.03721669688820839, - 0.040202103555202484, - -0.0817594826221466 - ] - }, - "p244_246.wav": { - "name": "p244", - "embedding": [ - 0.062234725803136826, - 0.06518390029668808, - -0.03540882468223572, - 0.037405289709568024, - -0.05455930903553963, - 0.03411645069718361, - -0.14325088262557983, - 0.14795808494091034, - 0.02645295485854149, - 0.12226879596710205, - -0.04102587699890137, - 0.12960875034332275, - 0.0007471313001587987, - -0.16069212555885315, - 0.008489241823554039, - 0.02835860289633274, - -0.0019056424498558044, - 0.009615087881684303, - -0.06737266480922699, - -0.032690081745386124, - 0.028827182948589325, - 0.03656414896249771, - 0.05571463704109192, - -0.06944573670625687, - 0.0347844660282135, - 0.051989588886499405, - -0.007428913842886686, - 0.04363567754626274, - -0.004475218243896961, - -0.07549194246530533, - -0.014238673262298107, - 0.08848488330841064, - -0.07911901921033859, - 0.005589722190052271, - 0.05654514580965042, - -0.04831772297620773, - -0.04138533025979996, - -0.03560688719153404, - -0.01955695077776909, - 0.022490136325359344, - -0.030201975256204605, - 0.08055878430604935, - 0.025492113083600998, - -0.029204340651631355, - 0.07459831982851028, - 0.029252590611577034, - -0.016695860773324966, - -0.03644099831581116, - -0.11087613552808762, - 0.1458817720413208, - 0.03860539570450783, - 0.019598830491304398, - -0.11119317263364792, - -0.036532312631607056, - 0.06928285956382751, - -0.044481340795755386, - -0.08801126480102539, - -0.04170284420251846, - 0.048794571310281754, - 0.11482498794794083, - -0.0402633398771286, - -0.05157041549682617, - 0.041940752416849136, - 0.06955446302890778, - 0.1100507378578186, - 0.055275656282901764, - 0.11011705547571182, - 0.13010051846504211, - -0.03663085773587227, - 0.031186329200863838, - 0.008879574947059155, - 0.07947991788387299, - 0.0680614709854126, - 0.020778140053153038, - 0.02273562178015709, - -0.0005222858744673431, - 0.002409461885690689, - -0.06968048214912415, - -0.043244630098342896, - -0.006703294813632965, - 0.025375161319971085, - 0.028511039912700653, - 0.05909962207078934, - 0.052408598363399506, - -0.05707280710339546, - 0.07115450501441956, - 0.07252462208271027, - -0.03190404921770096, - 0.047037675976753235, - 0.014114072546362877, - -0.0008033867925405502, - 0.05534384399652481, - -0.13608433306217194, - -0.08927701413631439, - 0.021495027467608452, - -0.008207659237086773, - 0.0085078040137887, - 0.02958180382847786, - 0.036678846925497055, - -0.009311249479651451, - 0.12113740295171738, - 0.05633220821619034, - -0.038567107170820236, - 0.04020875319838524, - -0.05341002345085144, - 0.1243322342634201, - 0.09695638716220856, - -0.022481311112642288, - 0.051924265921115875, - -0.07940144836902618, - 0.041989393532276154, - 0.024286450818181038, - -0.10995928943157196, - -0.06781532615423203, - 0.026161516085267067, - -0.007904996164143085, - -0.012699516490101814, - 0.1411893218755722, - -0.0014471127651631832, - 0.07202480733394623, - 0.1189289391040802, - -0.09899033606052399, - -0.03218572214245796, - 0.0066069141030311584, - 0.054606273770332336, - -0.0759187713265419, - 0.04832048714160919, - 0.028710562735795975, - 0.0003779493272304535, - 0.022543838247656822, - 0.08694420754909515, - 0.01130138523876667, - 0.005096713081002235, - 0.0017715028952807188, - -0.018005847930908203, - 0.03301377221941948, - -0.004401381127536297, - -0.03748319670557976, - 0.043648861348629, - 0.04363642632961273, - 0.07328172028064728, - -0.017843572422862053, - -0.02216685563325882, - -0.12259674072265625, - 0.021692872047424316, - 0.008032059296965599, - 0.08469515293836594, - -0.03329864889383316, - 0.0017294064164161682, - -0.05610518157482147, - -0.06764674931764603, - 0.02713514119386673, - 0.0034611541777849197, - 0.04947759211063385, - -0.01971656084060669, - 0.013315335847437382, - 0.10871091485023499, - 0.03157930076122284, - 0.03563417121767998, - -0.02640039473772049, - -0.0332062803208828, - -0.021624762564897537, - 0.057052142918109894, - -0.07201257348060608, - -0.07685928046703339, - -0.028159311041235924, - 0.01147978100925684, - -0.033475611358881, - 0.07518038153648376, - 0.057338301092386246, - 0.027355404570698738, - 0.0265045128762722, - -0.03906038776040077, - -0.02538939006626606, - -0.07170476019382477, - -0.06387759745121002, - -0.004573984537273645, - -0.002391337649896741, - -0.05780286341905594, - 0.07712560892105103, - 0.03469777852296829, - 0.08039484918117523, - -0.053021810948848724, - -0.052227720618247986, - -0.09603653848171234, - 0.037728890776634216, - 0.02811294049024582, - -0.045195624232292175, - 0.02005293034017086, - 0.04451301693916321, - -0.030211258679628372, - 0.04744444414973259, - 0.09658835828304291, - 0.05439599230885506, - -0.013864046894013882, - 0.009558364748954773, - -0.08252006024122238, - 0.14363832771778107, - 0.11120176315307617, - -0.05009642243385315, - -0.09617748111486435, - -0.0201492290943861, - -0.095227912068367, - 0.006009896285831928, - -0.02647731453180313, - -0.0001439920160919428, - 0.0760733112692833, - 0.01558336429297924, - -0.09346333146095276, - -0.09026537835597992, - 0.06560471653938293, - -0.07884369790554047, - 0.00162464939057827, - -0.0754927396774292, - 0.02557339332997799, - 0.09053429216146469, - 0.007992707192897797, - -0.021941013634204865, - -0.04882774129509926, - 0.04420505836606026, - -0.01772095449268818, - 0.032647646963596344, - 0.06194338947534561, - 0.05249716341495514, - -0.09589116275310516, - -0.013015180826187134, - -0.02547292411327362, - 0.024815011769533157, - -0.014813199639320374, - 0.11465806514024734, - 0.02971246838569641, - -0.027110066264867783, - -0.05960920825600624, - 0.04442355036735535, - -0.028591053560376167, - 0.07079499959945679, - 0.02038370445370674, - 0.06699541211128235, - 0.058832522481679916, - -0.07945895195007324, - 0.10569782555103302, - 0.03929407522082329, - -0.06036685034632683, - -0.08901453763246536, - -0.08659602701663971, - -0.04641169309616089, - 0.031386587768793106, - 0.03945339098572731, - -0.07684697955846786, - -0.00206894613802433, - 0.025160953402519226, - -0.01587875746190548, - 0.02038617432117462, - 0.11597073823213577, - 0.05066359043121338, - -0.10850891470909119 - ] - }, - "p244_130.wav": { - "name": "p244", - "embedding": [ - 0.0483817420899868, - 0.07082764804363251, - -0.018744714558124542, - 0.039659298956394196, - -0.06096640229225159, - 0.004679184406995773, - -0.12546823918819427, - 0.14823207259178162, - 0.015305161476135254, - 0.10067307949066162, - -0.04685888811945915, - 0.15098433196544647, - -0.0017455627676099539, - -0.15939916670322418, - 0.024027159437537193, - 0.03704172372817993, - 0.009130998514592648, - -0.02013785019516945, - 0.013401441276073456, - -0.03525494039058685, - 0.055074721574783325, - 0.04819576069712639, - 0.05984567850828171, - -0.023445401340723038, - 0.027696605771780014, - 0.07229888439178467, - 0.004518445115536451, - 0.03639143705368042, - -0.0005885710706934333, - -0.06751259416341782, - -0.03823664039373398, - 0.05809609219431877, - -0.05971789360046387, - -0.0018191959243267775, - 0.035165827721357346, - -0.04505794495344162, - -0.034337569028139114, - -0.04791431874036789, - -0.022435128688812256, - 0.0128852017223835, - -0.038900792598724365, - 0.07302288711071014, - 0.02277919463813305, - -0.06429733335971832, - 0.04632265865802765, - 0.02333163097500801, - -0.0068079340271651745, - -0.010877195745706558, - -0.12315338850021362, - 0.13772797584533691, - 0.056093987077474594, - 0.02339167706668377, - -0.07882283627986908, - -0.05833493918180466, - 0.07601308822631836, - 0.0037426683120429516, - -0.06516733765602112, - -0.0029292176477611065, - 0.04751995950937271, - 0.10647952556610107, - -0.02084764465689659, - -0.045451950281858444, - 0.06714346259832382, - 0.07580310106277466, - 0.0760878473520279, - 0.04512735456228256, - 0.10616996139287949, - 0.11047235131263733, - -0.05297979712486267, - 0.006176195573061705, - 0.011929850094020367, - 0.10621093213558197, - 0.044848229736089706, - 0.0064920722506940365, - 0.004785965662449598, - 0.017359241843223572, - -0.017422406002879143, - -0.03614243492484093, - -0.022749029099941254, - -0.03305765613913536, - -0.0007780059240758419, - 0.006115839816629887, - 0.03840500861406326, - 0.046187907457351685, - -0.038807954639196396, - 0.06955067813396454, - 0.07115959376096725, - -0.0002790192957036197, - 0.054900094866752625, - -0.011141876690089703, - 0.008288074284791946, - 0.07651889324188232, - -0.1249968409538269, - -0.06300756335258484, - 0.038186654448509216, - -0.0006003642920404673, - 0.04554593563079834, - 0.10180588811635971, - 0.060806434601545334, - -0.021724587306380272, - 0.12779487669467926, - 0.06763186305761337, - -0.022588923573493958, - 0.00411205692216754, - -0.05090319737792015, - 0.1054033562541008, - 0.11008894443511963, - -0.03677869960665703, - 0.0696030706167221, - -0.07315269112586975, - 0.06190277636051178, - 0.026881014928221703, - -0.11970995366573334, - -0.06826762855052948, - 0.016256017610430717, - 0.019804831594228745, - 0.002884648507460952, - 0.14632290601730347, - 0.005431973375380039, - 0.08432426303625107, - 0.10937955230474472, - -0.1110774576663971, - -0.06225376948714256, - -0.0221081729978323, - 0.06104288622736931, - -0.07780227065086365, - 0.08430743217468262, - 0.060042139142751694, - -0.0233868770301342, - 0.016126718372106552, - 0.043488308787345886, - -0.01603449508547783, - 0.029745182022452354, - 0.006045798771083355, - -0.032596390694379807, - 0.006203831639140844, - -0.028141643851995468, - -0.019225429743528366, - 0.029528316110372543, - 0.019331365823745728, - 0.041358958929777145, - -0.014365693554282188, - -0.00958995334804058, - -0.1453835368156433, - 0.033181048929691315, - 0.03359852731227875, - 0.06236536428332329, - -0.030696779489517212, - -0.06875710934400558, - -0.04039425402879715, - -0.06977571547031403, - -0.005077578127384186, - 0.004829036071896553, - 0.02970641665160656, - -0.031681668013334274, - 0.030496647581458092, - 0.06999583542346954, - 0.052733615040779114, - -0.00029541010735556483, - -0.012492012232542038, - -0.07217376679182053, - 0.000859053514432162, - 0.04456605762243271, - -0.06580594182014465, - -0.09546233713626862, - -0.058730967342853546, - 0.022496569901704788, - -0.03035735711455345, - 0.06908684223890305, - 0.049859922379255295, - 0.026896487921476364, - 0.010915283113718033, - -0.05993424355983734, - -8.503844583174214e-05, - -0.08358120173215866, - -0.09428979456424713, - -0.018427304923534393, - 0.018659524619579315, - -0.02153618261218071, - 0.07418867945671082, - 0.03727605938911438, - 0.10246787965297699, - -0.03685007244348526, - -0.009295267052948475, - -0.08450650423765182, - 0.011907926760613918, - 0.03609730303287506, - -0.012805852107703686, - 0.048492640256881714, - 0.06477619707584381, - -0.03512146696448326, - 0.0536235086619854, - 0.05676162242889404, - 0.05978219956159592, - -0.014764445833861828, - 0.01151392050087452, - -0.06268353760242462, - 0.10880293697118759, - 0.12007027864456177, - -0.054786890745162964, - -0.07946425676345825, - -0.054703157395124435, - -0.10350140184164047, - 0.031033804640173912, - -0.005409087985754013, - 0.013613267801702023, - 0.0285273939371109, - 0.017124783247709274, - -0.09336404502391815, - -0.08844578266143799, - 0.05829755589365959, - -0.036124564707279205, - 0.005765251349657774, - -0.09375389665365219, - 0.0365976057946682, - 0.11474370211362839, - 0.02573411725461483, - -0.02051503211259842, - -0.051311880350112915, - 0.03134428337216377, - 0.016199007630348206, - 0.028238758444786072, - 0.07190842926502228, - 0.07987867295742035, - -0.09940101206302643, - -0.013664326630532742, - -0.05342360958456993, - 0.03217547386884689, - -0.045086801052093506, - 0.11238980293273926, - 0.03454163670539856, - -0.04369392246007919, - -0.09124766290187836, - 0.0571213960647583, - 0.016971921548247337, - 0.05072672665119171, - 0.009725001640617847, - 0.047851428389549255, - 0.03121873550117016, - -0.107744500041008, - 0.0983891412615776, - 0.04270121455192566, - -0.049248456954956055, - -0.07582562416791916, - -0.05434579402208328, - -0.02231798693537712, - 0.04242752492427826, - 0.018614668399095535, - -0.06351149082183838, - -0.03136802464723587, - 0.022570988163352013, - 0.019011355936527252, - 0.03019523248076439, - 0.14833936095237732, - 0.02832471951842308, - -0.1262088119983673 - ] - }, - "p244_327.wav": { - "name": "p244", - "embedding": [ - 0.013196651823818684, - 0.11890305578708649, - -0.004542496986687183, - 0.049333371222019196, - -0.05395256727933884, - 0.0022604726254940033, - -0.05548735707998276, - 0.0603465661406517, - -0.014438347890973091, - 0.08676643669605255, - -0.052193012088537216, - 0.09676573425531387, - -0.05464395508170128, - -0.08851510286331177, - -0.03548905625939369, - -0.008346905000507832, - 0.0050183795392513275, - 0.048899952322244644, - -0.007851855829358101, - -0.02263437584042549, - -0.029554076492786407, - -0.00037205033004283905, - -0.03293415904045105, - 0.005970536265522242, - -0.025503309443593025, - 0.0040174443274736404, - -0.029574351385235786, - 0.03110436350107193, - -0.002543959766626358, - -0.059578247368335724, - -0.0057619791477918625, - 0.03986481577157974, - -0.015394826419651508, - 0.006114695221185684, - 0.02552868239581585, - 0.001054611406289041, - 0.019006647169589996, - -0.016406074166297913, - -0.03704599663615227, - -0.028000200167298317, - -0.040925282984972, - 0.0011538434773683548, - 0.026364922523498535, - -0.056655582040548325, - 0.016938969492912292, - 0.03360353037714958, - -0.016993260011076927, - -0.016701243817806244, - -0.020338548347353935, - 0.09648387879133224, - 0.007653282955288887, - 0.06300763785839081, - -0.03990523889660835, - -0.05223686620593071, - 0.1198267787694931, - 0.010891223326325417, - -0.0231698676943779, - -0.014122292399406433, - -0.0020603127777576447, - 0.08130665123462677, - 0.027541426941752434, - 0.02126936987042427, - 0.02333941124379635, - 0.06686248630285263, - -0.008235132321715355, - 0.04003538936376572, - 0.055872298777103424, - 0.04654872789978981, - -0.020082751289010048, - 0.04276534169912338, - 0.041740477085113525, - 0.029323045164346695, - 0.014010610990226269, - 0.020290682092308998, - -0.026327984407544136, - 0.023227673023939133, - 0.004990508779883385, - 0.06915926933288574, - -0.04206033796072006, - -0.018709737807512283, - -0.02613747864961624, - 0.022307364270091057, - 0.00408798037096858, - -0.06944576650857925, - -0.04495447501540184, - -0.023478373885154724, - 0.03557122126221657, - 0.02305559627711773, - 0.021976882591843605, - 0.0325840562582016, - 0.04724317416548729, - -0.0015440434217453003, - -0.02642081491649151, - -0.06250319629907608, - 0.015172623097896576, - -0.02207833342254162, - 0.03864607959985733, - 0.0144144706428051, - 0.0005683731287717819, - 0.010063673369586468, - 0.040375966578722, - 0.006904032081365585, - 0.04348159208893776, - -0.008989842608571053, - -0.05335412546992302, - -0.011677954345941544, - 0.03380510210990906, - 0.01941431313753128, - 0.039031945168972015, - 0.02557201497256756, - 0.05923229828476906, - 0.09882311522960663, - -0.06384085863828659, - -0.04046373441815376, - 0.011066386476159096, - 0.04982154443860054, - -0.022073134779930115, - 0.05861622840166092, - -0.017771786078810692, - 0.019810007885098457, - 0.041077595204114914, - 0.013836231082677841, - -0.03430665656924248, - -0.026773793622851372, - -0.006333686411380768, - -0.01762358285486698, - 0.04304005578160286, - 0.020030632615089417, - -0.021824978291988373, - -0.05765622854232788, - 0.06692032516002655, - -0.014795970171689987, - -0.024689458310604095, - 0.02167966216802597, - -0.0006019920110702515, - -0.04315555468201637, - 0.05104271322488785, - -0.0393759086728096, - 0.02606905624270439, - 0.0695122629404068, - -0.025692598894238472, - 0.0008956068195402622, - 0.0042330604046583176, - -0.02331354282796383, - 0.03711045905947685, - 0.021936826407909393, - -0.024474799633026123, - 0.08449864387512207, - -0.05076161399483681, - -0.048262130469083786, - -0.031435199081897736, - 0.0399453341960907, - -0.03153136372566223, - 0.0893363282084465, - 0.058858778327703476, - 0.0398516021668911, - 0.0380668006837368, - -0.01898638904094696, - -0.005924876779317856, - -0.007116112858057022, - -0.10884974151849747, - 0.009590805508196354, - 0.0033424077555537224, - 0.0107746422290802, - -0.01896841824054718, - 0.015878286212682724, - -0.006613150238990784, - -0.01575806364417076, - 0.0012081637978553772, - 0.0272452961653471, - -0.004351332318037748, - 0.06987175345420837, - -0.10034775733947754, - -0.01674550212919712, - -0.06565854698419571, - -0.037267934530973434, - 0.023031752556562424, - -0.041140004992485046, - 0.008332076482474804, - 0.02062748372554779, - 0.04425511136651039, - -0.038273658603429794, - -0.009828265756368637, - -0.06143855303525925, - -0.00410238653421402, - 0.016067249700427055, - 0.018080443143844604, - 0.02678677812218666, - -0.007922947406768799, - 0.017894580960273743, - 0.035755135118961334, - 0.03582911938428879, - 0.022619053721427917, - 0.059399135410785675, - -0.021487753838300705, - 0.007093596272170544, - 0.02828720584511757, - 0.07983069121837616, - 0.018252849578857422, - -0.08761118352413177, - -0.11072571575641632, - -0.011294991709291935, - -0.04015304520726204, - 0.044461559504270554, - -0.010170679539442062, - 0.03207830339670181, - 0.001340415794402361, - 0.014513084664940834, - 0.04576552286744118, - -0.12580646574497223, - 0.04471628740429878, - -0.0003653205931186676, - -0.05186966434121132, - 0.013936681672930717, - 0.010181711986660957, - 0.02096298709511757, - 0.015369715169072151, - -0.02131561003625393, - -0.009356766939163208, - 0.023700354620814323, - -0.006348747760057449, - -0.015089953318238258, - 0.037345971912145615, - 0.010826123878359795, - 0.015073135495185852, - 0.020365171134471893, - -0.04196001961827278, - 0.029436469078063965, - -0.006438283249735832, - 0.04570543020963669, - -0.009088899940252304, - -0.03538886830210686, - -0.07537313550710678, - 0.07549562305212021, - -0.04007522761821747, - 0.04426063224673271, - -0.01176130399107933, - 0.02230175957083702, - 0.002984285354614258, - -0.022502023726701736, - 0.11341774463653564, - 0.021770846098661423, - -0.02735484205186367, - -0.020341908559203148, - -0.020718947052955627, - -0.04231278598308563, - 0.044872500002384186, - 0.046704672276973724, - -0.027051502838730812, - -0.011136801913380623, - 0.04829796031117439, - 0.03519148379564285, - 0.0918767973780632, - 0.06966596841812134, - 0.05598558858036995, - 0.03039107844233513 - ] - }, - "p244_118.wav": { - "name": "p244", - "embedding": [ - 0.08021856844425201, - 0.10969100892543793, - 0.03342356160283089, - 0.009949089959263802, - 0.057601261883974075, - 0.04524441435933113, - -0.1211153045296669, - 0.059965021908283234, - -0.020339827984571457, - 0.14657330513000488, - -0.11284252256155014, - 0.06286406517028809, - -0.020700976252555847, - -0.11063581705093384, - -0.030577220022678375, - 0.0448831170797348, - -0.009756211191415787, - 0.04334409534931183, - -0.02051616460084915, - 0.033768441528081894, - 0.00885817687958479, - 0.015843801200389862, - 0.05865012854337692, - -0.07426120340824127, - 0.08317530900239944, - 0.022432656958699226, - 0.05704435333609581, - 0.08689700067043304, - 0.03175964951515198, - -0.018328966572880745, - 0.029209870845079422, - 0.11342711746692657, - -0.02476494200527668, - 0.01682024449110031, - 0.032519806176424026, - 0.04995492845773697, - -0.0070250630378723145, - -0.07192917168140411, - 0.03270074352622032, - -0.005756274797022343, - 0.010225449688732624, - 0.05691733583807945, - 0.04085694998502731, - -0.029640285298228264, - -0.005855883471667767, - 0.05865361541509628, - 0.021647760644555092, - -0.04638085886836052, - -0.11118754744529724, - 0.12052658200263977, - 0.008098968304693699, - 0.023148424923419952, - -0.08550912141799927, - -0.07185272872447968, - 0.0470857210457325, - 0.029950033873319626, - -0.02184305340051651, - -0.021323945373296738, - 0.08827625215053558, - 0.1475561559200287, - -0.013476436957716942, - -0.051205698400735855, - 0.011677843518555164, - 0.08581048250198364, - 0.024764016270637512, - 0.09175382554531097, - 0.06725993007421494, - 0.06867270171642303, - 0.042651742696762085, - 0.0678689032793045, - 0.014246590435504913, - 0.03924500569701195, - -0.004332654178142548, - -0.014721066690981388, - -0.014425585977733135, - -0.023758664727211, - -0.046216245740652084, - 0.018436932936310768, - 0.008266807533800602, - -0.07028249651193619, - 0.0003694252809509635, - -0.05090713873505592, - 0.011282239109277725, - 0.027101241052150726, - -0.014320816844701767, - 0.0067093707621097565, - 0.03240598738193512, - -0.04147815704345703, - 0.0968562513589859, - 0.006448704749345779, - 0.01083011832088232, - -0.0035309400409460068, - -0.04104558378458023, - -0.12041911482810974, - -0.005356861278414726, - -0.00500280037522316, - 0.004404408857226372, - 0.027927152812480927, - 0.04572881758213043, - -0.018008248880505562, - 0.09197898209095001, - 0.008144675754010677, - 0.018935229629278183, - -0.010596564039587975, - -0.035210855305194855, - 0.09775760769844055, - 0.08336663246154785, - -0.004042668268084526, - 0.021012291312217712, - -0.042535874992609024, - -0.016166996210813522, - 0.11024556308984756, - -0.13234774768352509, - -0.0879531130194664, - 0.018417388200759888, - -0.011912384070456028, - -0.0057600741274654865, - 0.0507965162396431, - 0.007791630923748016, - -0.03545762598514557, - 0.06614147126674652, - -0.08127156645059586, - -0.07742097973823547, - -0.030510179698467255, - 0.05978544056415558, - -0.05713605880737305, - 0.00915742851793766, - 0.06365719437599182, - -0.02868960052728653, - -0.06758248060941696, - 0.05223947763442993, - -0.0006843593437224627, - 0.011516544967889786, - -0.021365884691476822, - -0.010801957920193672, - 0.07555743306875229, - -0.07588811218738556, - 0.03540682792663574, - 0.004379707388579845, - 0.025115743279457092, - 0.03285476192831993, - 0.022581836208701134, - -0.058954305946826935, - -0.060113325715065, - -0.007974544540047646, - 0.07487452775239944, - 0.0357213169336319, - -0.038779035210609436, - -0.07104304432868958, - -0.031658660620450974, - -0.02254287339746952, - 0.0645938515663147, - 0.011461847461760044, - 0.06996951997280121, - 0.06303934007883072, - 0.0007822467014193535, - 0.1435275375843048, - -0.0425516739487648, - 0.033266160637140274, - -0.05716407299041748, - 0.012439013458788395, - 0.06893227994441986, - 0.0005773305892944336, - -0.07196105271577835, - -0.058866627514362335, - 0.01889757066965103, - -0.016617491841316223, - -0.014492619782686234, - 0.005629643797874451, - 0.006959831342101097, - 0.015503142029047012, - 0.020521223545074463, - 0.002555912360548973, - -0.036060627549886703, - -0.06164941564202309, - -0.025468356907367706, - -0.020932916551828384, - -0.009335173293948174, - -0.00503320898860693, - 0.06612639874219894, - 0.03306607902050018, - 0.026818640530109406, - 0.005393319763243198, - -0.03500642254948616, - -0.044147342443466187, - 0.06242217868566513, - 0.10573065280914307, - -0.002897303318604827, - 0.018014175817370415, - 0.01841695047914982, - -0.009610586799681187, - 0.014421416446566582, - 0.05665088817477226, - 0.04340434819459915, - -0.006976466625928879, - -0.07730883359909058, - -0.07915009558200836, - 0.09371644258499146, - 0.08577200770378113, - -0.10061462968587875, - -0.06727772951126099, - -0.03836091235280037, - -0.055724043399095535, - 0.03469405323266983, - -0.03803228586912155, - -0.003129224292933941, - 0.011618871241807938, - -0.07181718200445175, - -0.0581618957221508, - -0.1111060157418251, - 0.04286568611860275, - -0.030137211084365845, - -0.03444654121994972, - -0.06273093819618225, - 0.04339297115802765, - 0.019260574132204056, - 0.05937652289867401, - 0.02199064940214157, - 0.01679362542927265, - 0.01639135368168354, - -0.10649415850639343, - -0.051960788667201996, - 0.027338160201907158, - -0.030154366046190262, - -0.06931205093860626, - 0.024207327514886856, - -0.04473692923784256, - 0.09450338035821915, - -0.06879223883152008, - 0.10711175948381424, - -0.007084609009325504, - -0.05299802124500275, - -0.09194636344909668, - -0.00240876991301775, - -0.052422549575567245, - 0.040736839175224304, - 0.03356121852993965, - -0.02506815455853939, - 0.02232864871621132, - -0.07647602260112762, - 0.08005044609308243, - 0.004780407063663006, - 0.04597420245409012, - -0.08066266030073166, - -0.05446663498878479, - -0.053460489958524704, - 0.03453965485095978, - -0.028911877423524857, - -0.025795945897698402, - 0.0029121432453393936, - 0.03358977660536766, - -0.004812704399228096, - 0.03617364540696144, - 0.0719185322523117, - 0.02065223827958107, - -0.05530675873160362 - ] - }, - "p244_400.wav": { - "name": "p244", - "embedding": [ - 0.05053942650556564, - 0.09646899998188019, - -0.027374617755413055, - 0.024246055632829666, - -0.05257076025009155, - 0.09351804107427597, - -0.11137928813695908, - 0.12616947293281555, - -0.04456082731485367, - 0.15492606163024902, - -0.051945388317108154, - 0.11233455687761307, - -0.018775006756186485, - -0.1520809829235077, - -0.04695861041545868, - 0.018748905509710312, - -0.07124253362417221, - -0.023805759847164154, - -0.10862024128437042, - -0.02287735417485237, - 0.030787251889705658, - 0.03205721080303192, - 0.025626754388213158, - -0.021082360297441483, - 0.031791239976882935, - 0.06859797239303589, - 0.00863736867904663, - 0.05237775295972824, - 0.02464832365512848, - -0.09288458526134491, - -0.03058764711022377, - 0.09527076780796051, - -0.06832201778888702, - 0.02968393638730049, - 0.050669021904468536, - -0.02569620870053768, - 0.014991317875683308, - -0.040170539170503616, - -0.009432490915060043, - 0.040505848824977875, - -0.022939687594771385, - 0.09011654555797577, - -0.0009731203899718821, - 0.035227663815021515, - 0.034676164388656616, - 0.024047493934631348, - -0.014489714056253433, - -0.07286138832569122, - -0.07280115783214569, - 0.18246901035308838, - 0.08122102916240692, - -0.023695914074778557, - -0.056694891303777695, - -0.08033302426338196, - 0.0821426510810852, - -0.029088255017995834, - -0.1365344226360321, - -0.06719265133142471, - 0.05663881450891495, - 0.1370963752269745, - -0.04770912975072861, - -0.028637737035751343, - 0.0112940464168787, - 0.12040476500988007, - 0.08527788519859314, - 0.0839025229215622, - 0.09662358462810516, - 0.10660937428474426, - -0.016998691484332085, - 0.024155355989933014, - 0.06180451065301895, - 0.04467274248600006, - 0.08433789014816284, - 0.018324395641684532, - 0.0502580925822258, - -0.013541549444198608, - 0.015926234424114227, - -0.02741243503987789, - -0.017203042283654213, - 0.009793896228075027, - 0.009469199925661087, - 0.036539480090141296, - -0.003526360262185335, - 0.04668328911066055, - -0.030008362606167793, - 0.06147938221693039, - 0.00850432738661766, - -0.026476800441741943, - 0.0516519770026207, - 0.03651402145624161, - 0.03542536869645119, - 0.06543764472007751, - -0.07363831996917725, - -0.0862838476896286, - 0.04344604164361954, - 0.01410445012152195, - 0.0037103150971233845, - 0.036826543509960175, - 0.03100178763270378, - -0.007787529844790697, - 0.10383725166320801, - 0.0494295209646225, - -0.042055025696754456, - 0.02392265386879444, - -0.08150888979434967, - 0.14098212122917175, - 0.07739824056625366, - -0.030676715075969696, - 0.03343028202652931, - -0.03434886783361435, - 0.0699676126241684, - 0.03870538994669914, - -0.13470511138439178, - -0.10837861895561218, - 0.04302896559238434, - -0.00874422024935484, - -0.029670823365449905, - 0.07562843710184097, - -0.002656846772879362, - 0.03161662817001343, - 0.10219651460647583, - -0.066884845495224, - -0.01801367662847042, - -0.012202414683997631, - 0.05396562069654465, - -0.07898958027362823, - 0.015454623848199844, - 0.04010533541440964, - -0.001971959136426449, - -0.00276409974321723, - 0.13414739072322845, - 0.005273330956697464, - -0.012891230173408985, - 0.01833406835794449, - -0.022578798234462738, - 0.041748158633708954, - -0.0066428473219275475, - -0.01478208415210247, - 0.03524940460920334, - 0.03562815487384796, - 0.055995918810367584, - -0.03283051773905754, - -0.0418962687253952, - -0.10740187764167786, - 0.033719323575496674, - 0.02134593203663826, - 0.05213851481676102, - -0.038598574697971344, - 0.021210819482803345, - -0.03093128278851509, - -0.06231634318828583, - 0.02418169006705284, - -0.009159738197922707, - 0.0772741436958313, - -0.03150858357548714, - -0.007958821952342987, - 0.13126052916049957, - 0.0033897990360856056, - 0.007149349432438612, - -0.03360576927661896, - -0.018871353939175606, - 0.013747945427894592, - 0.060412608087062836, - -0.06583832949399948, - -0.06400668621063232, - 0.006678346544504166, - 0.022931678220629692, - 0.0033535792026668787, - 0.0803307294845581, - 0.051240451633930206, - -0.009944802150130272, - 0.031103044748306274, - -0.036846745759248734, - -0.016207732260227203, - -0.07806430757045746, - -0.0458969846367836, - -0.023766152560710907, - -0.044228918850421906, - -0.041395753622055054, - 0.08404529094696045, - 0.012381714768707752, - 0.05741448700428009, - -0.02016575261950493, - -0.09285682439804077, - -0.06741909682750702, - 0.07487379759550095, - 0.07823365926742554, - -0.01932818815112114, - 0.029713913798332214, - 0.07107331603765488, - -0.005012538284063339, - 0.04666861146688461, - 0.08552233874797821, - 0.09391190111637115, - -0.023120302706956863, - 0.027389535680413246, - -0.091127410531044, - 0.09053464233875275, - 0.0428406186401844, - -0.09005285799503326, - -0.073916494846344, - -0.007085512392222881, - -0.057615190744400024, - 0.016361400485038757, - -0.0413484200835228, - 0.029719578102231026, - 0.07708516716957092, - 0.0002740445779636502, - -0.07349929213523865, - -0.10459575057029724, - 0.11195839941501617, - -0.09053973108530045, - -0.009640864096581936, - -0.0689467042684555, - 0.03942933678627014, - 0.08978866785764694, - 0.06725664436817169, - -0.018309906125068665, - -0.00024114875122904778, - 0.05321994796395302, - -0.016517654061317444, - 0.00033383630216121674, - 0.04865456372499466, - 0.015678534284234047, - -0.11634225398302078, - 0.006422641221433878, - -0.07633957266807556, - 0.051836688071489334, - -0.05980987101793289, - 0.1252908706665039, - 0.0033604034688323736, - -0.04055309295654297, - -0.08084645867347717, - 0.0545833483338356, - -0.049858130514621735, - 0.06814046204090118, - 0.013050705194473267, - 0.0619654543697834, - 0.05434957146644592, - -0.054302092641592026, - 0.12178653478622437, - 0.044727351516485214, - -0.04462964087724686, - -0.08999882638454437, - -0.06695359945297241, - -0.03502817451953888, - 0.043355923146009445, - 0.03577809035778046, - -0.08695538341999054, - 0.008675831370055676, - 0.023106645792722702, - -0.04838944226503372, - 0.05734530836343765, - 0.13678139448165894, - 0.08542408049106598, - -0.12853728234767914 - ] - }, - "p244_076.wav": { - "name": "p244", - "embedding": [ - 0.04037095233798027, - 0.13764843344688416, - 0.007012718357145786, - 0.02261301875114441, - -0.032263197004795074, - 0.07159577310085297, - -0.08193717896938324, - 0.11613215506076813, - -0.06130309775471687, - 0.13961389660835266, - -0.11655938625335693, - 0.10490601509809494, - -0.06449037790298462, - -0.13848866522312164, - -0.037140801548957825, - 0.05259323492646217, - -0.0348464697599411, - 0.03234892711043358, - -0.02132207714021206, - 0.0030829589813947678, - 0.030819809064269066, - 0.017189502716064453, - 0.06872552633285522, - -0.02526131644845009, - 0.04082213714718819, - 0.05645167455077171, - 0.02694776840507984, - 0.07625964283943176, - 0.04195638373494148, - -0.0509735643863678, - -0.04752815514802933, - 0.1251574158668518, - -0.032261840999126434, - 0.033561546355485916, - 0.0576615184545517, - 0.016482248902320862, - -0.0012533895205706358, - -0.05587492138147354, - -0.0011165686883032322, - -0.021076317876577377, - -0.0334252268075943, - 0.040446631610393524, - 0.0008315485902130604, - -0.02376745082437992, - 0.027616413310170174, - 0.024395866319537163, - -0.020841583609580994, - -0.025382153689861298, - -0.08509089052677155, - 0.1477886587381363, - 0.05559735745191574, - -0.0015781987458467484, - -0.07457108795642853, - -0.09058764576911926, - 0.10822287201881409, - 0.005029873922467232, - -0.11035969853401184, - -0.012881547212600708, - 0.08433149755001068, - 0.16410008072853088, - -0.009644023142755032, - -0.027379069477319717, - 0.0023826458491384983, - 0.10790708661079407, - -6.020348519086838e-05, - 0.112828828394413, - 0.0586782842874527, - 0.07315827906131744, - 0.031227514147758484, - 0.07111864537000656, - 0.037119604647159576, - 0.06497267633676529, - 0.017160294577479362, - -0.024218998849391937, - 0.004126985557377338, - -0.026237523183226585, - -0.0459447056055069, - 0.052518054842948914, - -0.015375608578324318, - -0.04730473831295967, - -0.0329255647957325, - -0.017924068495631218, - -0.008379505947232246, - -0.03960617259144783, - -0.00845858734101057, - 0.04162054508924484, - -0.009148597717285156, - -0.00582651374861598, - 0.08696100115776062, - 0.02784571796655655, - -0.023738257586956024, - 0.0439765527844429, - -0.037809647619724274, - -0.09898503124713898, - -0.01753910258412361, - 0.00706604216247797, - 0.019492272287607193, - 0.08926250040531158, - 0.03702676296234131, - -0.021501606330275536, - 0.10189008712768555, - 0.05460657551884651, - 0.03087984025478363, - 0.025580208748579025, - -0.09864602237939835, - 0.10859756916761398, - 0.08049934357404709, - -0.01699146255850792, - 0.04073077812790871, - -0.0175881776958704, - 0.08812698721885681, - 0.10243579745292664, - -0.14123377203941345, - -0.06874243170022964, - -0.01940654031932354, - -0.008445695042610168, - 0.0031498530879616737, - 0.05005911365151405, - -0.020407598465681076, - -0.014747008681297302, - 0.10300946235656738, - -0.09670090675354004, - -0.08348426222801208, - -0.04263151437044144, - 0.044025786221027374, - -0.057726748287677765, - 0.037608884274959564, - 0.041304659098386765, - -0.015584757551550865, - -0.018973151221871376, - 0.06120190769433975, - -0.013975674286484718, - 0.021961238235235214, - 0.060964688658714294, - -0.07643675804138184, - 0.0016423962078988552, - -0.07740730047225952, - 0.020345179364085197, - 0.056520938873291016, - 0.06204928457736969, - 0.05876106768846512, - 0.012037435546517372, - -0.029501445591449738, - -0.05763449892401695, - -0.013333426788449287, - 0.08377092331647873, - 0.025010403245687485, - -0.012123534455895424, - -0.04990389943122864, - -0.021398276090621948, - -0.051785264164209366, - 0.04337175190448761, - 0.0074604470282793045, - 0.0799565464258194, - -0.010167635045945644, - -0.005495373625308275, - 0.11491915583610535, - 0.009996838867664337, - -0.02934999018907547, - -0.09868563711643219, - -0.03302093967795372, - 0.03735147789120674, - 0.014893303625285625, - -0.09818150848150253, - -0.08328143507242203, - 0.014430168084800243, - -0.006564276292920113, - -0.027671217918395996, - 0.02406672202050686, - 0.03553932532668114, - 0.009732716716825962, - 0.041021060198545456, - -0.031582195311784744, - -0.0006226208060979843, - -0.09954287856817245, - -0.060952745378017426, - -0.023160364478826523, - -0.0334116593003273, - -0.007443828973919153, - 0.07629574835300446, - 0.010202744975686073, - 0.010963167995214462, - 0.03494274243712425, - -0.061509981751441956, - -0.05982247740030289, - 0.08414982259273529, - 0.0643981397151947, - 0.023676443845033646, - 0.07315056025981903, - 0.050914157181978226, - -0.06682533025741577, - 0.060128938406705856, - 0.05861974135041237, - 0.08930563181638718, - -0.027293624356389046, - -0.005892493762075901, - -0.0803760439157486, - 0.03835541754961014, - 0.09374020993709564, - -0.12522566318511963, - -0.1097838431596756, - -0.06733863055706024, - -0.050214678049087524, - 0.06219257414340973, - -0.02199053019285202, - -0.010140171274542809, - 0.01084477361291647, - -0.051775116473436356, - -0.07259685546159744, - -0.08979864418506622, - 0.10459926724433899, - -0.035193461924791336, - -0.04423952102661133, - -0.04723978042602539, - 0.05199592188000679, - 0.03887098655104637, - 0.03169165924191475, - -0.019173385575413704, - 0.04122205078601837, - 0.06062355637550354, - -0.093259796500206, - -0.03810175880789757, - 0.04094254598021507, - -0.000958690419793129, - -0.05110141262412071, - 0.036421142518520355, - -0.07109324634075165, - 0.08266282826662064, - -0.07566773146390915, - 0.17352139949798584, - -0.03900402411818504, - -0.07110479474067688, - -0.0783536285161972, - 0.05334654822945595, - -0.039068467915058136, - -0.0055625224485993385, - 0.04592191427946091, - 0.034208592027425766, - -0.010556260123848915, - -0.08727201819419861, - 0.1313057243824005, - -0.011344349943101406, - -0.009854376316070557, - -0.057933785021305084, - -0.05131971091032028, - -0.05881940945982933, - 0.00033874576911330223, - -0.024586688727140427, - -0.08287695050239563, - -0.005483762361109257, - -0.004566133953630924, - -0.0017496270593255758, - 0.057817209511995316, - 0.13085409998893738, - 0.06414993107318878, - -0.0817672535777092 - ] - }, - "p244_421.wav": { - "name": "p244", - "embedding": [ - 0.052359603345394135, - 0.08491339534521103, - -0.0052977679297327995, - 0.027988698333501816, - -0.054709941148757935, - 0.0558035783469677, - -0.13452669978141785, - 0.13362833857536316, - -0.03757494315505028, - 0.14037875831127167, - -0.06648547202348709, - 0.10888543725013733, - -0.029858548194169998, - -0.18481528759002686, - -0.024504847824573517, - 0.0695403665304184, - -0.043456271290779114, - -0.03300505131483078, - -0.03962382674217224, - -0.012660928070545197, - 0.02752881869673729, - 0.037373535335063934, - 0.04065645858645439, - 0.012203475460410118, - 0.021803414449095726, - 0.060740821063518524, - 0.002221314236521721, - 0.05864550918340683, - 0.018737390637397766, - -0.05807553976774216, - -0.02747165411710739, - 0.10151033103466034, - -0.042212747037410736, - 0.020324809476733208, - 0.053468845784664154, - -0.0034837238490581512, - -0.005158654879778624, - -0.06351504474878311, - -0.02001127414405346, - -0.00910661369562149, - -0.04769226163625717, - 0.08150672167539597, - 0.023300809785723686, - -0.005530927330255508, - 0.045759882777929306, - 0.015095775946974754, - -0.030782124027609825, - -0.053303610533475876, - -0.11417430639266968, - 0.14903146028518677, - 0.07275809347629547, - 0.0021658800542354584, - -0.06897446513175964, - -0.07877419888973236, - 0.09227396547794342, - -0.028562214225530624, - -0.1202654093503952, - -0.05955028161406517, - 0.07685442268848419, - 0.15787135064601898, - -0.02730032429099083, - -0.03053065948188305, - 0.019903123378753662, - 0.128347709774971, - 0.05918174609541893, - 0.09720789641141891, - 0.07236267626285553, - 0.10033013671636581, - -0.02036476880311966, - 0.02200353518128395, - 0.05133114755153656, - 0.061604928225278854, - 0.042029526084661484, - 0.011000072583556175, - 0.021969132125377655, - 0.00298164295963943, - -0.013397286646068096, - 0.009743070229887962, - -0.016798675060272217, - -0.0074360668659210205, - -0.024280427023768425, - 0.01408606581389904, - -0.002260783454403281, - 0.01663368195295334, - -0.013697940856218338, - 0.05663369223475456, - 0.021143531426787376, - -0.005746930837631226, - 0.0695028007030487, - 0.03222574293613434, - 0.00443997560068965, - 0.05952133238315582, - -0.06665770709514618, - -0.08225062489509583, - 0.009627111256122589, - 0.004235336557030678, - 0.022029904648661613, - 0.06457825005054474, - 0.0189584419131279, - -0.01946914941072464, - 0.11743514239788055, - 0.046374596655368805, - -0.00821107067167759, - 0.033387795090675354, - -0.09662780165672302, - 0.11897893249988556, - 0.06971326470375061, - -0.014988185837864876, - 0.051024388521909714, - -0.048399847000837326, - 0.06919652223587036, - 0.07528217881917953, - -0.13261821866035461, - -0.06689087301492691, - 0.025559432804584503, - 0.008176721632480621, - -0.021581675857305527, - 0.11641605943441391, - -0.00542498379945755, - 0.03229762613773346, - 0.10619594156742096, - -0.08651252090930939, - -0.05318313091993332, - -0.006541445851325989, - 0.04954063147306442, - -0.0865594670176506, - 0.045327093452215195, - 0.0434432327747345, - -0.01434248685836792, - 0.011201722547411919, - 0.0901261568069458, - -0.0059002055786550045, - 0.003480600891634822, - 0.02298714779317379, - -0.05986514315009117, - 0.02254810743033886, - -0.04001174867153168, - 0.0009383925935253501, - 0.05553753674030304, - 0.04159386828541756, - 0.0430096760392189, - -0.004365541972219944, - -0.034328117966651917, - -0.11798670142889023, - 0.005010065156966448, - 0.03674982488155365, - 0.07754839956760406, - -0.0124696409329772, - -0.015956806018948555, - -0.043485648930072784, - -0.06129337474703789, - 0.020878370851278305, - -0.009759507142007351, - 0.07530860602855682, - -0.024133212864398956, - 0.00018365922733210027, - 0.09656389057636261, - 0.01610649935901165, - 0.0009305290877819061, - -0.054944634437561035, - -0.035191625356674194, - 0.008118957281112671, - 0.057478539645671844, - -0.08140076696872711, - -0.05751657485961914, - 0.013857441954314709, - 0.04003417119383812, - -0.018604308366775513, - 0.0471780002117157, - 0.0489465668797493, - 0.018174225464463234, - 0.029334744438529015, - -0.06177128851413727, - 0.016143137589097023, - -0.09872758388519287, - -0.07609512656927109, - -0.0018860509153455496, - -0.007533456198871136, - -0.01084181945770979, - 0.07288126647472382, - 0.01838839054107666, - 0.05020969361066818, - -0.008386634290218353, - -0.08623592555522919, - -0.09076200425624847, - 0.06908263266086578, - 0.06968741118907928, - -0.0013668525498360395, - 0.05549834296107292, - 0.0528520867228508, - -0.05103222653269768, - 0.053178735077381134, - 0.04785279929637909, - 0.104213647544384, - -0.029271148145198822, - 0.02190653793513775, - -0.08060689270496368, - 0.06930804252624512, - 0.09676992893218994, - -0.09904275834560394, - -0.08024166524410248, - -0.020491164177656174, - -0.06414781510829926, - 0.04435170441865921, - -0.028730478137731552, - -0.003296114271506667, - 0.043042369186878204, - -0.014094225130975246, - -0.10101969540119171, - -0.09378762543201447, - 0.08977267146110535, - -0.06952670216560364, - -0.0030763084068894386, - -0.07000904530286789, - 0.03830642253160477, - 0.08000911772251129, - 0.04903144761919975, - -0.02160087786614895, - -0.011179282329976559, - 0.05266395956277847, - -0.045007988810539246, - -0.004609322175383568, - 0.05822475999593735, - 0.01822805032134056, - -0.09958585351705551, - 0.0022085928358137608, - -0.0774078443646431, - 0.05633009225130081, - -0.0453941784799099, - 0.15446597337722778, - -0.005352163687348366, - -0.05346453934907913, - -0.07835906744003296, - 0.020546667277812958, - -0.027687987312674522, - 0.05097168684005737, - 0.02886008284986019, - 0.06206386536359787, - 0.04512518644332886, - -0.05445303022861481, - 0.12324132025241852, - 0.04730850085616112, - -0.03821056708693504, - -0.05541013181209564, - -0.039593156427145004, - -0.04679294675588608, - 0.029032841324806213, - 0.00022608294966630638, - -0.09560677409172058, - -0.01142454706132412, - 0.02166072651743889, - -0.0305277518928051, - 0.05913497135043144, - 0.14018478989601135, - 0.0649317055940628, - -0.11952614784240723 - ] - }, - "p244_394.wav": { - "name": "p244", - "embedding": [ - 0.04221281781792641, - 0.07372567802667618, - -0.0659819096326828, - 0.006157597526907921, - -0.02978031150996685, - 0.03945683687925339, - -0.12181125581264496, - 0.058032795786857605, - -0.03868616372346878, - 0.14774687588214874, - -0.07240644097328186, - 0.09537186473608017, - -0.013648711144924164, - -0.11537807434797287, - -0.04489489644765854, - 0.024008475244045258, - -0.017972923815250397, - -0.02762364223599434, - -0.07296928763389587, - -0.05663127824664116, - 0.04322358965873718, - 0.047203414142131805, - 0.01330507267266512, - -0.054803602397441864, - 0.0009810198098421097, - 0.07010701298713684, - 0.004903367720544338, - 0.002591957338154316, - -0.004884074442088604, - 0.0023916661739349365, - 0.007890032604336739, - 0.09013614058494568, - -0.03697314113378525, - -0.013693119399249554, - 0.0155577901750803, - 0.030582480132579803, - -0.010209169238805771, - -0.04287702590227127, - 0.009402159601449966, - 0.05422542989253998, - -0.04355786740779877, - 0.07451993972063065, - 0.02853311412036419, - -0.0025416752323508263, - 0.032882463186979294, - -0.03931282460689545, - -0.03843151777982712, - 0.002634061500430107, - -0.052503764629364014, - 0.17036250233650208, - 0.10296783596277237, - 0.007376339286565781, - -0.07343405485153198, - -0.031032774597406387, - 0.09722359478473663, - -0.005868859123438597, - -0.08558053523302078, - -0.06655317544937134, - 0.002623163163661957, - 0.1131540983915329, - -0.012632308527827263, - -0.06558747589588165, - 0.00698844064027071, - 0.10186818242073059, - 0.02486557886004448, - 0.03929458558559418, - 0.0945490300655365, - 0.08909730613231659, - -0.021795857697725296, - 0.0030776322819292545, - 0.07897725701332092, - 0.06378591805696487, - 0.049082182347774506, - -0.06440963596105576, - 0.06504374742507935, - -0.01625491864979267, - -0.008609740994870663, - -0.01093031745404005, - -0.02692103572189808, - -0.06158566102385521, - -0.0005314182490110397, - -0.011568897403776646, - -0.017167942598462105, - 0.04275604337453842, - -0.08168315142393112, - -1.0542571544647217e-06, - 0.06265141069889069, - -0.05579163879156113, - 0.05064044147729874, - 0.09218795597553253, - 0.02366851642727852, - 0.0011337138712406158, - -0.0610482320189476, - -0.06813901662826538, - 0.04482470825314522, - -0.0032767076045274734, - 0.0015504853799939156, - 0.04853503406047821, - 0.033751919865608215, - 0.0024062134325504303, - 0.07271923124790192, - 0.04323473200201988, - -0.02236836776137352, - -0.019747108221054077, - -0.07916384190320969, - 0.11579327285289764, - 0.13964106142520905, - -0.03967355564236641, - -0.011013301089406013, - 0.0017855498008430004, - 0.037831664085388184, - 0.03917057067155838, - -0.09499269723892212, - -0.0749216079711914, - 0.028514113277196884, - 0.03920985758304596, - 0.037640832364559174, - 0.08007712662220001, - -0.0013311905786395073, - -0.002193443477153778, - 0.09710744023323059, - -0.02258693240582943, - -0.06172921508550644, - -0.06625495105981827, - 0.008981116116046906, - -0.07737134397029877, - 0.03650752827525139, - 0.061724476516246796, - 0.033231399953365326, - -0.02998354844748974, - 0.08500725775957108, - 0.002355338539928198, - 0.003857824020087719, - -0.045823559165000916, - 0.02854788862168789, - 0.05841199308633804, - 0.011052394285798073, - -0.003450383897870779, - 0.0456831119954586, - 0.013796903192996979, - 0.0868886411190033, - 0.021950632333755493, - 0.022808659821748734, - -0.09523002803325653, - 0.04796866700053215, - 0.0413176454603672, - 0.0050698332488536835, - -0.0522797517478466, - -0.01754833571612835, - -0.020438849925994873, - -0.06216639280319214, - 0.015912078320980072, - -0.048053402453660965, - 0.08413240313529968, - 0.02139638550579548, - -0.028737042099237442, - 0.14665734767913818, - -0.037699125707149506, - -0.007535828277468681, - 0.006085017696022987, - 0.032038867473602295, - -0.0022094841115176678, - 0.04081571847200394, - -0.10109880566596985, - -0.07877299189567566, - -0.014130750671029091, - 0.012173613533377647, - 0.04750073328614235, - 0.01893373392522335, - 0.08463788032531738, - -0.048994410783052444, - 0.03135241940617561, - -0.06985719501972198, - 0.016635265201330185, - -0.09746984392404556, - 0.003945829346776009, - -0.0282443817704916, - -0.11036363244056702, - -0.0005139214918017387, - 0.07725851982831955, - -0.01924262009561062, - 0.010488408617675304, - -0.05139767751097679, - -0.10992743074893951, - -0.06320053339004517, - 0.05239824950695038, - 0.10323932766914368, - -0.02312656305730343, - 0.01673564314842224, - 0.08824264258146286, - 0.028324509039521217, - 0.008866289630532265, - 0.045627690851688385, - 0.08047404885292053, - -0.0641738772392273, - -0.00593201257288456, - -0.04705319553613663, - 0.07765305042266846, - 0.05012659728527069, - -0.08386698365211487, - -0.0650007575750351, - -0.07331133633852005, - -0.03916112333536148, - 0.013628602959215641, - -0.04112265259027481, - 0.02014829032123089, - 0.05306567996740341, - -0.03210524469614029, - -0.0801018625497818, - -0.09217952191829681, - 0.07033544033765793, - -0.0350370891392231, - -0.0052529750391840935, - -0.05333959311246872, - 0.024838626384735107, - 0.02708384022116661, - 0.05357912555336952, - -0.06930997967720032, - 0.021345606073737144, - 0.0037568937987089157, - -0.037808675318956375, - -0.01639874465763569, - -0.003400258719921112, - 0.030739542096853256, - -0.07515322417020798, - -0.026407957077026367, - -0.0663398802280426, - 0.11452736705541611, - -0.07026782631874084, - 0.05067889764904976, - 0.004596891347318888, - -0.03442615643143654, - -0.0711522325873375, - 0.025660306215286255, - -0.011127292178571224, - 0.05089222639799118, - 0.08250969648361206, - 0.055533066391944885, - -0.006250837817788124, - -0.06509929150342941, - 0.07760076224803925, - 0.06454917043447495, - 0.002327009104192257, - -0.08449520915746689, - 0.02630813792347908, - -0.0261441208422184, - 0.038046471774578094, - 0.061569489538669586, - -0.05411284416913986, - 0.04874954745173454, - 0.004920903593301773, - -0.03563157096505165, - 0.050731562077999115, - 0.04804393649101257, - 0.05965430289506912, - -0.08994707465171814 - ] - }, - "p244_059.wav": { - "name": "p244", - "embedding": [ - 0.05211058259010315, - 0.09031020849943161, - -0.016787324100732803, - 0.044890522956848145, - -0.07434713840484619, - 0.04509442672133446, - -0.138683021068573, - 0.15274880826473236, - -0.014317094348371029, - 0.11448056995868683, - -0.05287359654903412, - 0.1250535100698471, - -0.025392839685082436, - -0.19026386737823486, - -0.003872975707054138, - 0.06730380654335022, - -0.008804458193480968, - -0.024860791862010956, - 0.006314050406217575, - -0.02803061529994011, - 0.02479531429708004, - 0.04429391771554947, - 0.043818652629852295, - 0.0028664530254900455, - 0.05632931739091873, - 0.06739361584186554, - -0.010996385477483273, - 0.030286163091659546, - 0.0024190880358219147, - -0.053098730742931366, - -0.04355702921748161, - 0.08344703912734985, - -0.05834344029426575, - 0.005014099180698395, - 0.051025375723838806, - -0.01388503983616829, - -0.020580502226948738, - -0.060148969292640686, - -0.02872304990887642, - -0.0010775126283988357, - -0.054255276918411255, - 0.0857522115111351, - 0.05023276060819626, - -0.03782668337225914, - 0.03837617114186287, - 0.01860402524471283, - -0.003439562860876322, - -0.03719545155763626, - -0.1267479658126831, - 0.1542169451713562, - 0.04489909112453461, - 0.012139051221311092, - -0.08407258987426758, - -0.06525923311710358, - 0.10446441173553467, - 0.0014876071363687515, - -0.09852991253137589, - -0.03226218745112419, - 0.08392706513404846, - 0.1515682339668274, - -0.01122039183974266, - -0.03162868693470955, - 0.028277942910790443, - 0.11791953444480896, - 0.05518379434943199, - 0.07797396183013916, - 0.06564490497112274, - 0.11697226762771606, - -0.019241739064455032, - 0.024206530302762985, - 0.04920335114002228, - 0.0724349096417427, - 0.018184814602136612, - -0.01683025434613228, - -0.01598476432263851, - -0.004768064711242914, - -0.023378970101475716, - -0.011343930847942829, - -0.005287173204123974, - -0.02188873663544655, - -0.024261534214019775, - -0.005456279031932354, - 0.011974446475505829, - 0.014671731740236282, - -0.023219861090183258, - 0.05448531731963158, - 0.0510338731110096, - -0.004323908593505621, - 0.07310354709625244, - 0.022049546241760254, - -0.015815729275345802, - 0.06292496621608734, - -0.08115273714065552, - -0.06564487516880035, - 0.018000714480876923, - -0.0011353300651535392, - 0.039665453135967255, - 0.09368514269590378, - 0.04481733590364456, - -0.015207127667963505, - 0.13545510172843933, - 0.0574614554643631, - 0.008050581440329552, - 0.018052363768219948, - -0.07626637071371078, - 0.12130442261695862, - 0.06759084761142731, - -0.010168075561523438, - 0.08639216423034668, - -0.04942810907959938, - 0.06838169693946838, - 0.06409639120101929, - -0.14163321256637573, - -0.0523344948887825, - 0.015249529853463173, - 0.022128598764538765, - -0.01690315082669258, - 0.14046034216880798, - 0.005391120444983244, - 0.05108964443206787, - 0.10216464102268219, - -0.10790012776851654, - -0.06773235648870468, - -0.01801345869898796, - 0.056593433022499084, - -0.09005950391292572, - 0.06811849772930145, - 0.07202481478452682, - -0.039467282593250275, - 0.031007032841444016, - 0.05758289992809296, - -0.002961705904453993, - 0.024321893230080605, - 0.024886082857847214, - -0.048783764243125916, - 0.008189593441784382, - -0.030337151139974594, - 0.01699521765112877, - 0.059775106608867645, - 0.016814284026622772, - 0.057762689888477325, - -0.001238397671841085, - -0.021220512688159943, - -0.12438033521175385, - 0.008859913796186447, - 0.04408992826938629, - 0.08999302238225937, - -0.0163830928504467, - -0.04759235680103302, - -0.03438553214073181, - -0.08179104328155518, - 0.02691732719540596, - 0.010365668684244156, - 0.07743996381759644, - -0.027045879513025284, - 0.004372643772512674, - 0.08790628612041473, - 0.056354813277721405, - -0.012188902124762535, - -0.05727371573448181, - -0.049839019775390625, - -0.00020913488697260618, - 0.043822042644023895, - -0.10179653763771057, - -0.06975045055150986, - -0.02184605598449707, - 0.028134597465395927, - -0.04036519303917885, - 0.05948321521282196, - 0.039885878562927246, - 0.031334299594163895, - 0.022022534161806107, - -0.05822766572237015, - 0.007934393361210823, - -0.084077388048172, - -0.0759524330496788, - -0.01076965406537056, - 0.008049480617046356, - -0.04031803458929062, - 0.08851504325866699, - 0.03602299839258194, - 0.06514918804168701, - -0.009855658747255802, - -0.03239437937736511, - -0.06953404098749161, - 0.03346630930900574, - 0.023713747039437294, - -0.007787439506500959, - 0.05046822875738144, - 0.06018594279885292, - -0.06341789662837982, - 0.0562901496887207, - 0.060678452253341675, - 0.0846179872751236, - -0.0357646644115448, - 0.022774893790483475, - -0.06300573796033859, - 0.08778300881385803, - 0.10481292009353638, - -0.09367352724075317, - -0.08410625159740448, - -0.053423330187797546, - -0.07847580313682556, - 0.04153309017419815, - -0.019026286900043488, - 0.0061453827656805515, - 0.004096143878996372, - -0.0075471303425729275, - -0.09132785350084305, - -0.10212084650993347, - 0.06480856239795685, - -0.055305205285549164, - 5.991733632981777e-05, - -0.08395881950855255, - 0.041417863219976425, - 0.09231184422969818, - 0.03960429131984711, - -0.004887227434664965, - -0.021804237738251686, - 0.05057108402252197, - -0.03523723781108856, - 0.01057150773704052, - 0.09661002457141876, - 0.0465642586350441, - -0.09745390713214874, - -0.01476682722568512, - -0.062276691198349, - 0.06255712360143661, - -0.03646198660135269, - 0.1689663827419281, - 0.021374596282839775, - -0.05630611628293991, - -0.0784098207950592, - 0.03436777740716934, - -0.018948176875710487, - 0.04361008107662201, - 0.02956235781311989, - 0.05381504446268082, - 0.03879433125257492, - -0.04818301647901535, - 0.11761713773012161, - 0.0379662811756134, - -0.040918607264757156, - -0.04715179651975632, - -0.047564469277858734, - -0.039870284497737885, - 0.037253767251968384, - 0.003212657291442156, - -0.09977522492408752, - -0.02584272250533104, - 0.03237131983041763, - 0.007361389230936766, - 0.058573536574840546, - 0.14789551496505737, - 0.06627048552036285, - -0.10891734063625336 - ] - }, - "p244_100.wav": { - "name": "p244", - "embedding": [ - 0.0663197785615921, - 0.09439428150653839, - -0.05860540270805359, - 0.04420878365635872, - -0.0157189778983593, - 0.05247534066438675, - -0.10924509167671204, - 0.10548478364944458, - -0.029878534376621246, - 0.11963379383087158, - -0.06781339645385742, - 0.09859782457351685, - -0.04731093719601631, - -0.10407844930887222, - -0.025321464985609055, - 0.0381789356470108, - -0.028281522914767265, - -0.005352920852601528, - -0.018945593386888504, - -0.016972610726952553, - 0.04892675578594208, - 0.009979571215808392, - 0.04857354611158371, - -0.043624814599752426, - -0.007384458556771278, - 0.059436164796352386, - -0.004885569680482149, - -0.010640589520335197, - 0.011995124630630016, - -0.007840579375624657, - 0.0026341602206230164, - 0.04913713037967682, - -0.017757225781679153, - 0.000975143164396286, - 0.04100700840353966, - 0.026308663189411163, - -0.03971042484045029, - -0.05527646467089653, - 0.016162578016519547, - 0.0015194378793239594, - -0.033707112073898315, - 0.059089966118335724, - 0.026121221482753754, - -0.0753602385520935, - 0.062055837363004684, - -0.05959121510386467, - -0.02531673014163971, - -0.007754381280392408, - -0.08055133372545242, - 0.13634063303470612, - 0.0722898468375206, - 0.04264960065484047, - -0.09108496457338333, - -0.0037523843348026276, - 0.0923738032579422, - 0.021413519978523254, - -0.08120468258857727, - -0.03694716840982437, - 0.020819321274757385, - 0.13331222534179688, - -0.026344316080212593, - -0.046072062104940414, - 0.04454554617404938, - 0.062435977160930634, - 0.038268934935331345, - 0.04812190681695938, - 0.11056789755821228, - 0.06409688293933868, - -0.0023174136877059937, - 0.030247226357460022, - 0.048067860305309296, - 0.08169476687908173, - 0.05583852529525757, - -0.01167504582554102, - 0.014711730182170868, - -0.048491790890693665, - -0.04016498476266861, - -0.008022511377930641, - 0.008780616335570812, - -0.0828246995806694, - -0.03210859373211861, - -0.037795573472976685, - 0.01731165125966072, - 0.031443674117326736, - -0.023595400154590607, - 0.01804482564330101, - 0.05807250365614891, - -0.057509537786245346, - 0.03341579809784889, - 0.04593736678361893, - -0.002328613307327032, - 0.019688639789819717, - -0.052042510360479355, - -0.10841652005910873, - 0.026302458718419075, - -0.010919563472270966, - 0.029422741383314133, - 0.038488660007715225, - 0.06177400052547455, - 0.026608601212501526, - 0.0835871696472168, - 0.04342842847108841, - 0.006749723106622696, - 0.0043671149760484695, - -0.0627894401550293, - 0.11522842943668365, - 0.1276656687259674, - -0.037673670798540115, - 0.029498660936951637, - -0.03411189839243889, - 0.007968232035636902, - 0.05691046267747879, - -0.08458146452903748, - -0.051257744431495667, - 0.01903976872563362, - 0.024734729900956154, - 0.045076634734869, - 0.10741623491048813, - 0.02892608568072319, - 0.009291954338550568, - 0.10416583716869354, - -0.09102657437324524, - -0.08732734620571136, - -0.07047225534915924, - 0.044792789965867996, - -0.06465359032154083, - 0.07475265115499496, - 0.07118361443281174, - 0.0050682323053479195, - -0.003476560115814209, - 0.04940428584814072, - -0.008041362278163433, - 0.00932995229959488, - -0.025251735001802444, - -0.00887626688927412, - 0.03655785694718361, - -0.05850313603878021, - -0.009714930318295956, - 0.06718210875988007, - 0.017471838742494583, - 0.06314821541309357, - 0.021001707762479782, - 0.017348608002066612, - -0.09711773693561554, - 0.00856832042336464, - 0.08780636638402939, - 0.012186123058199883, - -0.04391637444496155, - -0.04549715295433998, - -0.0033802613615989685, - -0.05527162551879883, - 0.016970159485936165, - -0.028318775817751884, - 0.07493670284748077, - -0.0031198784708976746, - 0.03987174108624458, - 0.10714699327945709, - -0.003863329067826271, - 0.004510321654379368, - -0.03685054928064346, - -0.008681939914822578, - 0.03332715481519699, - 0.03084845468401909, - -0.11221206933259964, - -0.10365574061870575, - -0.06344129145145416, - 0.022486770525574684, - 0.00369067769497633, - 0.025880323722958565, - 0.06596258282661438, - -0.009321731515228748, - 0.0115674939006567, - -0.028061628341674805, - 0.03308183327317238, - -0.10043562948703766, - -0.054394111037254333, - -0.033737242221832275, - -0.07232873886823654, - 0.012167712673544884, - 0.08024148643016815, - 0.008952250704169273, - 0.028988581150770187, - -0.03271050006151199, - -0.06773829460144043, - -0.06748488545417786, - 0.0571545735001564, - 0.05134906619787216, - -0.02053200639784336, - 0.009943072684109211, - 0.06056932732462883, - 0.011697516776621342, - 0.01142505556344986, - 0.022412709891796112, - 0.1010124683380127, - -0.03607857972383499, - -0.048399388790130615, - -0.07639270275831223, - 0.04189855605363846, - 0.12902554869651794, - -0.08879778534173965, - -0.07785983383655548, - -0.09564165025949478, - -0.05752214044332504, - 0.019074978306889534, - -0.07030005753040314, - -0.007959501817822456, - 0.019897159188985825, - -0.05385321378707886, - -0.09478220343589783, - -0.13109785318374634, - 0.06463485211133957, - -0.010974442586302757, - -0.004489540588110685, - -0.07305482029914856, - 0.04138777405023575, - 0.026729801669716835, - -0.014840628951787949, - -0.043802786618471146, - 0.05128946155309677, - -0.019664419814944267, - -0.02324110083281994, - -0.002534065395593643, - 0.012591449543833733, - 0.0510978102684021, - -0.0857885554432869, - -0.02150963433086872, - -0.06154468655586243, - 0.09006279706954956, - -0.06946229934692383, - 0.11457448452711105, - -0.027412837371230125, - -0.026068881154060364, - -0.08111831545829773, - 0.03654753044247627, - -0.008012485690414906, - 0.047931745648384094, - 0.04473424702882767, - 0.040938958525657654, - 0.0036564096808433533, - -0.09383370727300644, - 0.06946577876806259, - 0.042330384254455566, - 0.008626967668533325, - -0.09750566631555557, - -0.02568056248128414, - -0.05529318377375603, - 0.008041676133871078, - -0.01950201578438282, - -0.039776209741830826, - 0.018483854830265045, - -0.007487908937036991, - 0.04015301913022995, - 0.048131756484508514, - 0.07871736586093903, - 0.02605525404214859, - -0.05583636462688446 - ] - }, - "p244_023.wav": { - "name": "p244", - "embedding": [ - 0.03908824548125267, - 0.1017199233174324, - -0.009959769435226917, - 0.021438581869006157, - -0.06452645361423492, - 0.044496528804302216, - -0.13400962948799133, - 0.1451302468776703, - -0.044776733964681625, - 0.11464640498161316, - -0.07916643470525742, - 0.12784340977668762, - -0.029615890234708786, - -0.1755208522081375, - -0.048016875982284546, - 0.05921188369393349, - -0.0343744233250618, - -0.045235276222229004, - -0.0074041178449988365, - -0.0253108162432909, - 0.039457403123378754, - 0.03610103577375412, - 0.03011571429669857, - 0.03964009881019592, - 0.02795795351266861, - 0.06703013181686401, - 0.016632018610835075, - 0.05980275571346283, - 0.03333541005849838, - -0.029680419713258743, - -0.03519735857844353, - 0.09383947402238846, - -0.04114807769656181, - 0.014151819981634617, - 0.053443919867277145, - -0.0067961798049509525, - 0.016943257302045822, - -0.06032857298851013, - -0.02663329243659973, - -0.00046618329361081123, - -0.039308350533246994, - 0.07699462026357651, - 0.04193534702062607, - -0.005273374263197184, - 0.02674288861453533, - 0.04383581504225731, - -0.0043047694489359856, - -0.0473567396402359, - -0.11646394431591034, - 0.14727148413658142, - 0.05183038488030434, - -0.00142720399890095, - -0.06901705265045166, - -0.06773066520690918, - 0.11674400418996811, - -0.031111136078834534, - -0.0977528765797615, - -0.029965033754706383, - 0.08769207447767258, - 0.15565212070941925, - -0.03476284071803093, - -0.04429098591208458, - 0.023429809138178825, - 0.13291653990745544, - 0.057654645293951035, - 0.07660049945116043, - 0.07403185218572617, - 0.10676908493041992, - -0.02657163515686989, - -0.0007726012845523655, - 0.05820402503013611, - 0.08041516691446304, - 0.01997154764831066, - -0.012673151679337025, - 0.008889789693057537, - 0.0164633821696043, - -0.010283536277711391, - 0.027073834091424942, - -0.025768082588911057, - -0.011276870965957642, - -0.033658891916275024, - 0.016812419518828392, - -0.011569165624678135, - 0.010936538688838482, - -0.01961156167089939, - 0.08063401281833649, - 0.019893674179911613, - 0.0028532263822853565, - 0.07736208289861679, - 0.029046129435300827, - 0.0002845727140083909, - 0.06905665993690491, - -0.07306993007659912, - -0.06884765625, - 0.017564628273248672, - -0.0046822004951536655, - 0.029821451753377914, - 0.07846148312091827, - 0.0375356562435627, - -0.012686869129538536, - 0.13154901564121246, - 0.05841303989291191, - -0.005561016034334898, - 0.023732321336865425, - -0.09533876925706863, - 0.12531165778636932, - 0.07549038529396057, - -0.021976590156555176, - 0.04789264127612114, - -0.04142708331346512, - 0.0662362203001976, - 0.05911421775817871, - -0.13633295893669128, - -0.08132922649383545, - 0.03302367776632309, - 0.044984545558691025, - -0.02104741893708706, - 0.10965011268854141, - -0.028814515098929405, - 0.035344772040843964, - 0.09868381917476654, - -0.06828127056360245, - -0.056365661323070526, - -0.01856410503387451, - 0.04307914897799492, - -0.07022472470998764, - 0.05234229564666748, - 0.05905531346797943, - -0.009590099565684795, - 0.010263609699904919, - 0.08055105805397034, - -0.0061597395688295364, - -0.003881992306560278, - 0.028562072664499283, - -0.057598669081926346, - 0.019651295617222786, - -0.0191297959536314, - 0.005933896638453007, - 0.043608468025922775, - 0.05449352785944939, - 0.04584034904837608, - 0.011709746904671192, - -0.03451947867870331, - -0.12400718033313751, - 0.007686857134103775, - 0.03464972600340843, - 0.08371372520923615, - -0.0009035574039444327, - -0.044929251074790955, - -0.043272312730550766, - -0.04334426671266556, - -0.001561360084451735, - 0.01567970961332321, - 0.08219204843044281, - -0.039747532457113266, - 0.010228430852293968, - 0.08703365921974182, - 0.025471672415733337, - -0.006671713199466467, - -0.052804186940193176, - -0.030194992199540138, - 0.0002452497137710452, - 0.04281293973326683, - -0.059373751282691956, - -0.07548919320106506, - 0.0015809343894943595, - 0.052883878350257874, - -0.027732735499739647, - 0.05769096314907074, - 0.03231029957532883, - 0.013555985875427723, - 0.03596971556544304, - -0.05700072646141052, - 0.022291073575615883, - -0.10057568550109863, - -0.06620828062295914, - -0.014416437596082687, - 0.015316369943320751, - -0.025401776656508446, - 0.063944011926651, - 0.034537337720394135, - 0.07000309973955154, - 0.011429321952164173, - -0.0725812315940857, - -0.08231204748153687, - 0.053027551621198654, - 0.06893660128116608, - 0.007796157151460648, - 0.0591251477599144, - 0.06391574442386627, - -0.03666124865412712, - 0.06755539029836655, - 0.05735276639461517, - 0.08449211716651917, - -0.030076559633016586, - 0.014660472981631756, - -0.05635940283536911, - 0.06003953889012337, - 0.06228463724255562, - -0.11223392188549042, - -0.07457417994737625, - -0.03092467039823532, - -0.05540286377072334, - 0.04038581624627113, - -0.00673317164182663, - 0.01929626055061817, - 0.013313712552189827, - -0.0018207458779215813, - -0.10298387706279755, - -0.08288252353668213, - 0.06628750264644623, - -0.0733165293931961, - 0.005856611765921116, - -0.07208412885665894, - 0.040309373289346695, - 0.1149497926235199, - 0.02881626971065998, - -0.004198829643428326, - -0.029416609555482864, - 0.03783728554844856, - -0.036783572286367416, - -0.012174882926046848, - 0.05171601101756096, - 0.029560891911387444, - -0.09624523669481277, - 0.011329907923936844, - -0.08156187832355499, - 0.06035470962524414, - -0.03657836839556694, - 0.1633358746767044, - 0.011731870472431183, - -0.05558416619896889, - -0.08446737378835678, - 0.01829644851386547, - -0.03290078416466713, - 0.05489852651953697, - 0.0303493719547987, - 0.04956279695034027, - 0.02715081349015236, - -0.0494561493396759, - 0.1296415776014328, - 0.04800746962428093, - -0.06840189546346664, - -0.07137420773506165, - -0.03960240259766579, - -0.03337593004107475, - 0.027055565267801285, - 0.027266275137662888, - -0.08271216601133347, - -0.040648285299539566, - 0.015020700171589851, - -0.02820698171854019, - 0.08464384078979492, - 0.1389710009098053, - 0.07099004834890366, - -0.1135907769203186 - ] - }, - "p244_001.wav": { - "name": "p244", - "embedding": [ - 0.015332179144024849, - 0.07108315825462341, - -0.020739970728754997, - 0.05744510889053345, - -0.04570154845714569, - 0.020833274349570274, - -0.1109994649887085, - 0.14159035682678223, - 0.009848130866885185, - 0.11420293152332306, - -0.07159987092018127, - 0.0914527103304863, - -0.0625762864947319, - -0.17988622188568115, - 0.052134789526462555, - 0.051672205328941345, - 0.04731632024049759, - -0.006856944411993027, - 0.003111025085672736, - -0.007992730475962162, - 0.027882717549800873, - 0.05588168278336525, - -0.014738529920578003, - -0.02105940505862236, - 0.01581038162112236, - 0.06336754560470581, - -0.04263804107904434, - -0.01843671128153801, - -0.029094256460666656, - -0.018652595579624176, - -0.02964254654943943, - 0.0827953964471817, - -0.0799579918384552, - 0.010914979502558708, - 0.06217946112155914, - 0.009177275002002716, - -0.07105202972888947, - 0.016001801937818527, - -0.01115439087152481, - -0.005310261622071266, - -0.10693271458148956, - 0.047822482883930206, - 0.015527957119047642, - -0.018014488741755486, - 0.08667831122875214, - 0.029291581362485886, - 0.0021342034451663494, - -0.0023415519390255213, - -0.0867738425731659, - 0.1013704240322113, - 0.05490349233150482, - -0.02102711796760559, - -0.0681600347161293, - -0.05408202111721039, - 0.043294474482536316, - 0.01799607463181019, - -0.09437404572963715, - -0.021127671003341675, - 0.09878145158290863, - 0.11597470939159393, - 0.012194476090371609, - -0.03993900120258331, - 0.0261235274374485, - 0.0897771418094635, - 0.04261494427919388, - 0.08973386883735657, - 0.04110422730445862, - 0.11391530930995941, - -0.03944727033376694, - -0.02352098375558853, - 0.03497697040438652, - 0.0508694052696228, - 0.08620239794254303, - -0.032662659883499146, - -0.015647606924176216, - 0.00278669036924839, - -0.028113259002566338, - -0.012908965349197388, - -0.017692675814032555, - -0.018312573432922363, - -0.014719038270413876, - -0.021705131977796555, - -0.007278572767972946, - -0.0012894890969619155, - -0.0078122434206306934, - 0.018887579441070557, - 0.12920019030570984, - 0.009379029273986816, - 0.06988713145256042, - 0.03569526970386505, - -0.025971459224820137, - 0.07317141443490982, - -0.1158798336982727, - -0.003239100333303213, - 0.0035500172525644302, - -0.022510454058647156, - 0.02235689014196396, - 0.1020098477602005, - 0.04558086395263672, - 0.010756200179457664, - 0.12658396363258362, - 0.0006218478083610535, - 0.03367367386817932, - 0.03445741534233093, - -0.09070102870464325, - 0.11754370480775833, - 0.0624704584479332, - -0.042367011308670044, - 0.058698706328868866, - -0.043965213000774384, - 0.0372648686170578, - 0.06139852851629257, - -0.09974567592144012, - -0.01718933880329132, - 0.0024605211801826954, - 0.01508396491408348, - -0.04705511033535004, - 0.16210293769836426, - 0.026749365031719208, - 0.009849561378359795, - 0.11299304664134979, - -0.1387653350830078, - -0.09164271503686905, - -0.005564861930906773, - 0.028440717607736588, - -0.12368398904800415, - 0.07504577934741974, - 0.05022487789392471, - -0.006364494562149048, - 0.05789971351623535, - 0.07559937238693237, - -0.008155264891684055, - 0.06495187431573868, - -0.022819023579359055, - -0.022629395127296448, - -0.01611892506480217, - -0.03801148384809494, - 0.018936779350042343, - 0.036104340106248856, - -0.008834347128868103, - 0.09331975877285004, - -0.02421494573354721, - -0.00135873444378376, - -0.1277925968170166, - 0.0049688429571688175, - 0.08407506346702576, - 0.061537016183137894, - -0.030716441571712494, - -0.035312190651893616, - -0.04310460388660431, - -0.10013379901647568, - 0.03536054864525795, - -0.011094405315816402, - 0.038348257541656494, - -0.02725199982523918, - -0.011467266827821732, - 0.1260988712310791, - 0.05621485784649849, - -0.029998809099197388, - -0.07546477019786835, - -0.05859825015068054, - -0.04499642923474312, - 0.04695644602179527, - -0.1449158936738968, - -0.09980586171150208, - -0.055393971502780914, - 0.017905019223690033, - 0.0026516574434936047, - 0.06350744515657425, - 0.058349281549453735, - 0.038489554077386856, - -0.0006957833538763225, - -0.0564144067466259, - -0.004356719553470612, - -0.08724237978458405, - -0.11274762451648712, - -0.04256569966673851, - -0.018790483474731445, - 0.005788655020296574, - 0.07858725637197495, - -0.009145157411694527, - 0.03569881618022919, - -0.01142931543290615, - -0.02560727298259735, - -0.10053502768278122, - 0.04588941112160683, - 0.00034770439378917217, - -0.02873968705534935, - 0.047554414719343185, - 0.06538181006908417, - -0.1378755271434784, - 0.04275937378406525, - 0.06216815114021301, - 0.1073300838470459, - -0.04981303960084915, - 0.08144046366214752, - -0.05596820265054703, - 0.06934529542922974, - 0.12503361701965332, - -0.05679711326956749, - -0.09968920052051544, - -0.041347332298755646, - -0.06743539869785309, - 0.03525843098759651, - -0.06051412224769592, - -0.009532234631478786, - -0.004692481830716133, - -0.015292897820472717, - -0.06887029111385345, - -0.08320097625255585, - 0.057233698666095734, - -0.016128353774547577, - -0.0017727082595229149, - -0.09885057806968689, - 0.0449804849922657, - 0.015024697408080101, - 0.06777267158031464, - -0.039914682507514954, - -0.01014675758779049, - 0.0651957169175148, - -0.01678445190191269, - 0.023181021213531494, - 0.10439378023147583, - 0.05277450382709503, - -0.05962442234158516, - -0.05271410197019577, - -0.04789105802774429, - 0.05983292683959007, - -0.04893389344215393, - 0.10914941132068634, - 0.008151409216225147, - -0.07194779068231583, - -0.05372968316078186, - 0.026354417204856873, - 0.039717897772789, - 0.00383058562874794, - 0.010209467262029648, - 0.07519416511058807, - 0.03247915208339691, - -0.021991681307554245, - 0.12093430757522583, - 0.02438914030790329, - 0.013897374272346497, - -0.013209586963057518, - -0.07147912681102753, - -0.06426887214183807, - 0.01133603323251009, - 0.0048578823916614056, - -0.12598922848701477, - 0.004515137057751417, - 0.018026068806648254, - 0.030099008232355118, - 0.002299480140209198, - 0.13964521884918213, - 0.052897028625011444, - -0.12555529177188873 - ] - }, - "p244_418.wav": { - "name": "p244", - "embedding": [ - 0.03042732924222946, - 0.08651362359523773, - -0.013920066878199577, - 0.048780761659145355, - -0.052090711891651154, - 0.08329790085554123, - -0.11538572609424591, - 0.11805260181427002, - -0.05403435230255127, - 0.1214764341711998, - -0.06727450340986252, - 0.1027962788939476, - -0.03265245258808136, - -0.1598365306854248, - -0.04812697693705559, - 0.06039876490831375, - -0.060169413685798645, - -0.03810255974531174, - -0.027802687138319016, - 0.0004598855448421091, - 0.0426812581717968, - 0.03234236687421799, - 0.03217286616563797, - 0.005338083952665329, - 0.026176458224654198, - 0.05210056155920029, - 0.01715407334268093, - 0.0640350729227066, - 0.04269653186202049, - -0.043983157724142075, - -0.031350284814834595, - 0.11005459725856781, - -0.032013725489377975, - 0.01277065183967352, - 0.03910341486334801, - 0.017702404409646988, - 0.009509921073913574, - -0.07261432707309723, - -0.017713073641061783, - 0.0029306281358003616, - -0.056677162647247314, - 0.07570306211709976, - 0.03297759220004082, - 0.0011304605286568403, - 0.032163284718990326, - 0.0020733103156089783, - -0.033347513526678085, - -0.044419534504413605, - -0.11861996352672577, - 0.1733040064573288, - 0.07114322483539581, - 0.00046034157276153564, - -0.06837894022464752, - -0.08171238005161285, - 0.11344584077596664, - 0.008522684685885906, - -0.11059318482875824, - -0.040410589426755905, - 0.07804276794195175, - 0.16771946847438812, - -0.00998427253216505, - -0.012965536676347256, - 0.007841771468520164, - 0.13953067362308502, - 0.046284958720207214, - 0.08596092462539673, - 0.061943650245666504, - 0.1144830510020256, - 0.023485522717237473, - 0.02887917123734951, - 0.06789934635162354, - 0.06649571657180786, - 0.012322461232542992, - -0.008861749432981014, - 0.026057785376906395, - -0.0032019380014389753, - -0.022234968841075897, - 0.03055218979716301, - -0.016919052228331566, - -0.027719389647245407, - -0.006482791155576706, - 0.004953575320541859, - -0.00019641872495412827, - 0.02074054628610611, - -0.0189328882843256, - 0.061738744378089905, - -0.0003138644096907228, - -0.007053555455058813, - 0.06543485820293427, - 0.03294426202774048, - -0.007979125715792179, - 0.05275658890604973, - -0.047497041523456573, - -0.10310500860214233, - 0.008370448835194111, - 0.012577819637954235, - 0.032337382435798645, - 0.07281038165092468, - 0.025696445256471634, - -0.02632003091275692, - 0.11227305978536606, - 0.04462633281946182, - -0.0026685483753681183, - 0.029009569436311722, - -0.10383844375610352, - 0.11793702840805054, - 0.06773589551448822, - 0.0013511746656149626, - 0.04369799420237541, - -0.035197317600250244, - 0.0898575484752655, - 0.07476542890071869, - -0.14476880431175232, - -0.06473158299922943, - 0.04074136167764664, - 0.011845901608467102, - -0.010365951806306839, - 0.1114029511809349, - 0.0005197376012802124, - 0.01257854700088501, - 0.10317005217075348, - -0.09022516012191772, - -0.05977262184023857, - -0.027801748365163803, - 0.05695301294326782, - -0.06449718028306961, - 0.03565460443496704, - 0.03788425028324127, - -0.017154905945062637, - -0.019174739718437195, - 0.06904801726341248, - -0.007908841595053673, - 0.01101063471287489, - 0.034281887114048004, - -0.0528271421790123, - 0.047352395951747894, - -0.04941331595182419, - 0.008191721513867378, - 0.0674145519733429, - 0.04438894987106323, - 0.05146746337413788, - -0.006602135952562094, - -0.030637752264738083, - -0.1019003689289093, - -0.0015331199392676353, - 0.05343484878540039, - 0.06839784979820251, - -0.015266354195773602, - -0.03592716157436371, - -0.047860078513622284, - -0.07134748995304108, - 0.03448622301220894, - -0.006113764829933643, - 0.09391947835683823, - -0.010928637348115444, - -0.021680442616343498, - 0.09492798149585724, - -0.010043883696198463, - -0.004402143880724907, - -0.03908437117934227, - -0.03171183168888092, - 0.029661845415830612, - 0.034044280648231506, - -0.07901380956172943, - -0.06244722008705139, - 0.018996838480234146, - 0.015304110944271088, - -0.029031287878751755, - 0.007591585628688335, - 0.022095542401075363, - 0.01805446296930313, - 0.028784144669771194, - -0.059311896562576294, - 0.013762134127318859, - -0.10258348286151886, - -0.04074089229106903, - -0.0035348222590982914, - -0.018314126878976822, - -0.02378804050385952, - 0.08394932746887207, - 0.01932479813694954, - 0.02460772916674614, - 0.015703296288847923, - -0.08019258081912994, - -0.05558403581380844, - 0.0718565583229065, - 0.07005901634693146, - 0.022349661216139793, - 0.06703704595565796, - 0.06528645753860474, - -0.021125029772520065, - 0.03852381184697151, - 0.05289817973971367, - 0.10172756761312485, - -0.022602692246437073, - -0.011527790687978268, - -0.07194548845291138, - 0.08536722511053085, - 0.06805568933486938, - -0.10020886361598969, - -0.07833231985569, - -0.026089251041412354, - -0.06174907088279724, - 0.044399045407772064, - -0.04184674471616745, - 0.0021067787893116474, - 0.026352612301707268, - -0.026897024363279343, - -0.11908938735723495, - -0.0906689390540123, - 0.08755158632993698, - -0.08036810159683228, - -0.031581226736307144, - -0.06086207926273346, - 0.04355759546160698, - 0.09889324009418488, - 0.03754740208387375, - -0.02637976035475731, - 0.005788288079202175, - 0.05877317488193512, - -0.07560603320598602, - -0.024257352575659752, - 0.042853742837905884, - 0.0026402100920677185, - -0.10282234847545624, - 0.00972248986363411, - -0.07420995086431503, - 0.06533047556877136, - -0.06502285599708557, - 0.15314491093158722, - -0.012376468628644943, - -0.05757790058851242, - -0.07536821812391281, - 0.04355122894048691, - -0.024933792650699615, - 0.03695180267095566, - 0.042136382311582565, - 0.05257222056388855, - 0.029036542400717735, - -0.06018456071615219, - 0.13721179962158203, - 0.030541544780135155, - -0.031840644776821136, - -0.06002620980143547, - -0.02252354845404625, - -0.032839205116033554, - 0.03107338957488537, - 0.007079975213855505, - -0.0801437497138977, - -0.01041292492300272, - 0.024479543790221214, - -0.02416488528251648, - 0.061183638870716095, - 0.13520441949367523, - 0.06480760872364044, - -0.09626524150371552 - ] - }, - "p244_035.wav": { - "name": "p244", - "embedding": [ - 0.047512274235486984, - 0.08609914034605026, - -0.046957552433013916, - 0.027574673295021057, - -0.03924497961997986, - 0.03821911662817001, - -0.13186554610729218, - 0.10746931284666061, - -0.027431121096014977, - 0.12437397241592407, - -0.04287900775671005, - 0.11486640572547913, - -0.015343727543950081, - -0.1584114283323288, - -0.025371000170707703, - 0.04812903702259064, - -0.021808108314871788, - -0.027373217046260834, - -0.007206720300018787, - -0.021419469267129898, - 0.06363151967525482, - 0.04318461939692497, - 0.036855049431324005, - -0.022972911596298218, - -0.002549968659877777, - 0.06865663826465607, - 0.00332033634185791, - 0.019372913986444473, - 0.004853181075304747, - -0.03148690611124039, - -0.018673807382583618, - 0.08538803458213806, - -0.02187051624059677, - 0.007954302243888378, - 0.0301038920879364, - 0.008952243253588676, - -0.02129673957824707, - -0.05781055614352226, - -0.007296671159565449, - 0.015679871663451195, - -0.03887028619647026, - 0.06691883504390717, - 0.01664990559220314, - -0.03335646912455559, - 0.05290444940328598, - -0.053276486694812775, - -0.037761978805065155, - -0.019499806687235832, - -0.0798143744468689, - 0.14589202404022217, - 0.09664269536733627, - 0.027677249163389206, - -0.06830545514822006, - -0.03380965813994408, - 0.09383022040128708, - 0.018186433240771294, - -0.0948326587677002, - -0.0416414812207222, - 0.04243795573711395, - 0.14704479277133942, - 0.005419223569333553, - -0.02080828696489334, - 0.041589777916669846, - 0.10111330449581146, - 0.021087510511279106, - 0.06361795216798782, - 0.10026641935110092, - 0.07566763460636139, - -0.00036413720226846635, - 0.013197584077715874, - 0.02729940041899681, - 0.09100913256406784, - 0.014969943091273308, - -0.031735554337501526, - 0.017868466675281525, - -0.025481805205345154, - -0.03786304593086243, - -0.011180998757481575, - -0.008563697338104248, - -0.045560143887996674, - -0.030515586957335472, - -0.009088415652513504, - -0.0014375986065715551, - 0.02741953730583191, - -0.033017996698617935, - 0.017747124657034874, - 0.03437551483511925, - -0.040561579167842865, - 0.04603039473295212, - 0.045318882912397385, - 0.015366427600383759, - 0.022925768047571182, - -0.05694061145186424, - -0.08957916498184204, - 0.02947296015918255, - 0.02426670305430889, - 0.01292937807738781, - 0.08937977254390717, - 0.031166646629571915, - 0.00403913389891386, - 0.09304189682006836, - 0.038550134748220444, - -0.01802215538918972, - -0.009072205051779747, - -0.07091206312179565, - 0.1043706089258194, - 0.09936642646789551, - -0.0253828726708889, - 0.053714536130428314, - -0.05511198565363884, - 0.03667735308408737, - 0.04630982503294945, - -0.1055835410952568, - -0.05516941472887993, - 0.034832291305065155, - 0.03261159360408783, - 0.025443535298109055, - 0.11465909332036972, - 0.03726130723953247, - 0.030363252386450768, - 0.09185874462127686, - -0.08185656368732452, - -0.09117460250854492, - -0.06671448051929474, - 0.0653037577867508, - -0.07601243257522583, - 0.08106499910354614, - 0.05676394701004028, - -0.0019281134009361267, - -0.0022406044881790876, - 0.047236502170562744, - -0.0026236686389893293, - 0.02866353653371334, - -0.005930222570896149, - -0.03171057999134064, - 0.02295582741498947, - -0.059072356671094894, - 0.010003656148910522, - 0.03996270149946213, - 0.0051517183892428875, - 0.05573644861578941, - 0.0027772970497608185, - -0.0032236739061772823, - -0.10150401294231415, - 0.008834552951157093, - 0.05883560702204704, - 0.045625656843185425, - -0.027181189507246017, - -0.054899148643016815, - -0.01451468002051115, - -0.06837444007396698, - 0.002241502283141017, - -0.045617520809173584, - 0.07822269201278687, - -0.0005640421877615154, - 0.02417202852666378, - 0.07696916162967682, - 0.000522322952747345, - -0.005944509990513325, - -0.03242078423500061, - -0.013525960966944695, - 0.013982011005282402, - 0.03526326268911362, - -0.09811844676733017, - -0.07592052221298218, - -0.033725377172231674, - 0.014820109121501446, - -0.015350266359746456, - 0.02785833738744259, - 0.05280764028429985, - 0.004163810517638922, - 0.02141760103404522, - -0.07109146565198898, - 0.02428961917757988, - -0.09811060130596161, - -0.05941072106361389, - -0.027518145740032196, - -0.02331431210041046, - -0.0032530315220355988, - 0.08884786814451218, - 0.02086341381072998, - 0.028346367180347443, - -0.027570350095629692, - -0.057705070823431015, - -0.07781679183244705, - 0.05320239067077637, - 0.06403405964374542, - -0.0035114018246531487, - 0.03885791823267937, - 0.04390726983547211, - -0.02458917163312435, - 0.022658567875623703, - 0.036476388573646545, - 0.08441587537527084, - -0.046668022871017456, - -0.006689698901027441, - -0.07432778179645538, - 0.05822507664561272, - 0.11375582218170166, - -0.08773978054523468, - -0.07553941011428833, - -0.0564013347029686, - -0.07821381092071533, - 0.020092494785785675, - -0.04410077631473541, - 0.000687162100803107, - 0.027942299842834473, - -0.03650069236755371, - -0.12579014897346497, - -0.10675406455993652, - 0.0777093842625618, - -0.03278997540473938, - -0.006179330870509148, - -0.06986880302429199, - 0.0446537584066391, - 0.07444396615028381, - 0.02134857140481472, - -0.05210947245359421, - -0.0038992948830127716, - 0.020999623462557793, - -0.03290301188826561, - 0.004802831914275885, - 0.03310735523700714, - 0.052572257816791534, - -0.10819780826568604, - -0.0009580999612808228, - -0.06278321146965027, - 0.06290467083454132, - -0.07500292360782623, - 0.11263549327850342, - 0.007468120660632849, - -0.056552112102508545, - -0.0906960591673851, - 0.04758359119296074, - 0.021654268726706505, - 0.03939587622880936, - 0.01717129349708557, - 0.050779130309820175, - 0.00842757523059845, - -0.09632016718387604, - 0.08334605395793915, - 0.051021527498960495, - 0.0013994028558954597, - -0.08277277648448944, - -0.005998106673359871, - -0.020790688693523407, - 0.0514594130218029, - -0.0009228637209162116, - -0.06089923903346062, - -0.006041245069354773, - 0.005709233693778515, - 0.013314230367541313, - 0.06248827278614044, - 0.11817269772291183, - 0.03676634654402733, - -0.10958908498287201 - ] - }, - "p244_226.wav": { - "name": "p244", - "embedding": [ - 0.017812533304095268, - 0.09059041738510132, - -0.03313907980918884, - 0.04103659838438034, - -0.07077332586050034, - 0.0858350545167923, - -0.09737630188465118, - 0.08155152946710587, - -0.08273117989301682, - 0.12696227431297302, - -0.06535467505455017, - 0.07652875781059265, - -0.054977089166641235, - -0.1634788066148758, - -0.019013606011867523, - 0.06683763116598129, - -0.05668655410408974, - -0.02705809473991394, - -0.08173489570617676, - -0.014207035303115845, - 0.021991947665810585, - -0.0008913557976484299, - 0.0338105782866478, - -0.043577641248703, - 0.01690848171710968, - 0.061247799545526505, - -0.007964516058564186, - 0.014899916015565395, - -0.0015098992735147476, - -0.030810566619038582, - -0.041758790612220764, - 0.11071734130382538, - -0.048800788819789886, - -0.02021772228181362, - 0.03633880615234375, - 0.007430911995470524, - -0.021571576595306396, - -0.06781338155269623, - 0.023993993178009987, - -0.013845808804035187, - -0.04508243501186371, - 0.06458313018083572, - 0.01562678813934326, - -0.007549887988716364, - 0.03832894191145897, - -0.032098378986120224, - -0.04359281063079834, - -0.021026315167546272, - -0.09502652287483215, - 0.14071117341518402, - 0.0716174989938736, - -0.014656499028205872, - -0.07088983803987503, - -0.06469035148620605, - 0.1039232462644577, - 0.021482126787304878, - -0.12525664269924164, - -0.08519650995731354, - 0.07195033133029938, - 0.14371412992477417, - -0.0143812270835042, - 0.0027439752593636513, - -0.0018545370548963547, - 0.08409930765628815, - 0.032359957695007324, - 0.12321692705154419, - 0.050845690071582794, - 0.08650851249694824, - 0.01957816071808338, - 0.042425885796546936, - 0.07798807322978973, - 0.025242211297154427, - 0.017986726015806198, - -0.027062153443694115, - 0.05001316964626312, - -0.041238922625780106, - -0.021431762725114822, - 0.02151731587946415, - -0.011262292042374611, - -0.05123452469706535, - -0.007807143963873386, - -0.02646128460764885, - 0.015259671956300735, - -0.0050367871299386024, - -0.018694862723350525, - 0.03231633082032204, - 0.049393001943826675, - -0.009402278810739517, - 0.08503606170415878, - 0.05327557027339935, - -0.020933054387569427, - 0.0507267564535141, - -0.05928286910057068, - -0.07814568281173706, - 0.0231265090405941, - 0.010647416114807129, - -0.006972522474825382, - 0.054435472935438156, - 0.020305711776018143, - -0.020595472306013107, - 0.07533472031354904, - 0.062298484146595, - 0.0049236612394452095, - 0.038266535848379135, - -0.09032192826271057, - 0.13072529435157776, - 0.08264055848121643, - -0.0016047056997194886, - 0.01971760205924511, - -0.002422597259283066, - 0.06372210383415222, - 0.08181428164243698, - -0.11387448012828827, - -0.06097695976495743, - 0.0058185202069580555, - -0.03437022492289543, - -0.026582656428217888, - 0.10046318173408508, - 0.010077845305204391, - -0.01973363757133484, - 0.12020901590585709, - -0.09582118690013885, - -0.07433643937110901, - -0.017314458265900612, - 0.02952229604125023, - -0.06504113972187042, - 0.019193297252058983, - 0.07229027152061462, - -0.014313793741166592, - 0.006998042576014996, - 0.07392776757478714, - -0.00953326653689146, - 0.013012412935495377, - 0.05263940244913101, - -0.0539824441075325, - 0.05201076343655586, - -0.029374677687883377, - -0.008439918048679829, - 0.07707489281892776, - 0.03963133692741394, - 0.06181463971734047, - -0.03984887897968292, - 0.023428667336702347, - -0.07353004068136215, - 0.007975846529006958, - 0.06959986686706543, - 0.034159399569034576, - -0.020396485924720764, - 0.02756473794579506, - -0.03465186804533005, - -0.09888540208339691, - 0.03113856539130211, - -0.03112836368381977, - 0.10586914420127869, - -0.016313310712575912, - -0.010148300789296627, - 0.10745478421449661, - 0.02456034906208515, - 0.0011929835891351104, - -0.08267434686422348, - -0.036593787372112274, - 0.06966713070869446, - 0.05008133500814438, - -0.09171774238348007, - -0.046621330082416534, - -0.003816711250692606, - 0.03263888135552406, - -0.019197531044483185, - 0.024892134591937065, - 0.07395240664482117, - 0.01321241445839405, - 0.022703152149915695, - -0.06322157382965088, - 0.06555382907390594, - -0.06085039675235748, - -0.014930887147784233, - -0.01683466136455536, - -0.07916229963302612, - -0.021217316389083862, - 0.08617821335792542, - 0.009829986840486526, - -0.009620287455618382, - -0.014620725065469742, - -0.08855455368757248, - -0.05156542360782623, - 0.06566715985536575, - 0.06902584433555603, - -0.0161186084151268, - 0.05520292744040489, - 0.051071230322122574, - -0.02909225970506668, - 0.007875243201851845, - 0.06917604058980942, - 0.10452248156070709, - -0.03878478333353996, - -0.0131932832300663, - -0.09000295400619507, - 0.06527124345302582, - 0.08763380348682404, - -0.10467067360877991, - -0.0676594004034996, - -0.04176659137010574, - -0.031584903597831726, - 0.05053078010678291, - -0.06521078944206238, - -0.02410782314836979, - 0.05019301921129227, - -0.03197476267814636, - -0.09199391305446625, - -0.11977519094944, - 0.12044841796159744, - -0.052169881761074066, - -0.01880607008934021, - -0.07795597612857819, - 0.02965570241212845, - 0.02910565584897995, - 0.028086815029382706, - -0.06644060462713242, - 0.03515669330954552, - 0.046732522547245026, - -0.05202682316303253, - 0.02212521620094776, - 0.04053444415330887, - 0.0047126454301178455, - -0.08312739431858063, - 0.0004059639759361744, - -0.09185010194778442, - 0.0974762812256813, - -0.04912235960364342, - 0.16276174783706665, - -0.021926935762166977, - -0.015017393045127392, - -0.08026532828807831, - 0.0661572590470314, - -0.016571369022130966, - 0.043669480830430984, - 0.0596039779484272, - 0.0794236809015274, - 0.02443462237715721, - -0.04566018655896187, - 0.11101384460926056, - -0.003603626973927021, - -0.005719837266951799, - -0.0508153960108757, - 0.014219369739294052, - -0.07715022563934326, - 0.02015441283583641, - -0.016168801113963127, - -0.102598175406456, - 0.022079816088080406, - 0.03219984471797943, - -0.011841347441077232, - 0.07455947995185852, - 0.11495341360569, - 0.08404475450515747, - -0.0624585822224617 - ] - }, - "p244_299.wav": { - "name": "p244", - "embedding": [ - 0.06525465846061707, - 0.10495209693908691, - 0.03223846107721329, - 0.016825005412101746, - -0.022490717470645905, - 0.0565137080848217, - -0.09467238932847977, - 0.09756150096654892, - -0.04944169148802757, - 0.1523725688457489, - -0.11396205425262451, - 0.10953082144260406, - -0.03651455044746399, - -0.1839219629764557, - -0.08920477330684662, - 0.04318549856543541, - -0.1008606106042862, - 0.0006701675010845065, - -0.06478724628686905, - -0.025530997663736343, - 0.0459497906267643, - 0.054662637412548065, - 0.07263357192277908, - -0.0009710810845717788, - 0.04059436917304993, - 0.07352381944656372, - 0.019158611074090004, - 0.07684890180826187, - 0.04121684283018112, - -0.10462955385446548, - -0.028435807675123215, - 0.12060249596834183, - -0.021402571350336075, - 0.029443880543112755, - 0.02644909732043743, - 0.012790137901902199, - 0.03859560564160347, - -0.03909823298454285, - -0.02449653670191765, - 0.023418409749865532, - -0.022774219512939453, - 0.06648801267147064, - -0.0018441944848746061, - -0.003679991699755192, - 0.03021998703479767, - 0.0245768204331398, - -0.03373754769563675, - -0.04800606891512871, - -0.10045932978391647, - 0.17561951279640198, - 0.06669551879167557, - 0.022984713315963745, - -0.07473025470972061, - -0.0914839655160904, - 0.1033722385764122, - -0.04138606786727905, - -0.1324692666530609, - -0.015400592237710953, - 0.07188437879085541, - 0.1745031625032425, - -0.02837865985929966, - -0.04367165267467499, - 0.029865633696317673, - 0.1106882244348526, - 0.022444233298301697, - 0.085270456969738, - 0.0994037613272667, - 0.05433196946978569, - 0.009999201633036137, - 0.046106431633234024, - 0.0537010096013546, - 0.07132069766521454, - 0.07379911839962006, - -0.026058921590447426, - 0.024111108854413033, - -0.011033689603209496, - -0.020490849390625954, - 0.007766140624880791, - -0.014132874086499214, - 0.0008325775270350277, - -0.012159896083176136, - -0.004228881560266018, - -0.007673243060708046, - -0.030775906518101692, - -0.03162151202559471, - 0.050704240798950195, - -0.02407735399901867, - -0.01223254669457674, - 0.07154654711484909, - 0.057108353823423386, - 0.02514728531241417, - 0.03744937852025032, - -0.03559383004903793, - -0.10221049189567566, - 0.004771812818944454, - 0.006398889701813459, - 0.021163037046790123, - 0.05676198750734329, - 0.05728333070874214, - -0.03295552730560303, - 0.1011909544467926, - 0.057710736989974976, - 0.003964595962315798, - 0.0016684905858710408, - -0.12661729753017426, - 0.09040845185518265, - 0.12222171574831009, - -0.017466116696596146, - 0.03753943368792534, - 0.010324040427803993, - 0.09317605942487717, - 0.10224784910678864, - -0.14613954722881317, - -0.07852289080619812, - -0.01632460206747055, - -0.021364035084843636, - 0.024501658976078033, - 0.046979501843452454, - -0.04010120779275894, - 0.010432679206132889, - 0.09373456984758377, - -0.06838951259851456, - -0.03329191729426384, - -0.04200923815369606, - 0.03089362382888794, - -0.10082848370075226, - 0.04401632770895958, - 0.03614797443151474, - -0.0037154927849769592, - -0.025383666157722473, - 0.08150732517242432, - -0.024260053411126137, - -0.009058866649866104, - -0.0022542846854776144, - -0.06266731023788452, - 0.00518936850130558, - -0.06299592554569244, - 0.00224533979780972, - 0.07850766181945801, - 0.047631315886974335, - 0.030845433473587036, - 0.019286898896098137, - -0.057110559195280075, - -0.08896134048700333, - 0.018198121339082718, - 0.04260723292827606, - 0.008305331692099571, - -0.007923095487058163, - -0.01071025338023901, - -0.03632080554962158, - -0.04154243320226669, - 0.08141613006591797, - -0.0034014841075986624, - 0.07047772407531738, - 0.0032769411336630583, - -0.013654384762048721, - 0.12524522840976715, - -0.009069817140698433, - -0.012858973816037178, - -0.050339873880147934, - -0.012125964276492596, - 0.031177598983049393, - 0.028574947267770767, - -0.0954546183347702, - -0.06267496198415756, - 0.020996076986193657, - 0.009550933726131916, - -0.004062483552843332, - 0.04714687168598175, - 0.06491273641586304, - -0.01572195254266262, - 0.02811150625348091, - -0.040634118020534515, - 0.016217274591326714, - -0.10074228048324585, - -0.07388980686664581, - -0.005860468838363886, - -0.0651792660355568, - -0.002756331115961075, - 0.07921024411916733, - 0.012623680755496025, - -0.006509409751743078, - -0.01404818519949913, - -0.11291965842247009, - -0.06609392911195755, - 0.0731973797082901, - 0.09069140255451202, - 0.043645575642585754, - 0.05095747858285904, - 0.053662076592445374, - -0.026429863646626472, - 0.11103732138872147, - 0.05484195426106453, - 0.13079118728637695, - -0.032712168991565704, - 0.02296675741672516, - -0.06567157804965973, - 0.04224824532866478, - 0.05530143901705742, - -0.08168598264455795, - -0.10931160300970078, - -0.044377122074365616, - -0.0723477303981781, - 0.08402661234140396, - 0.014698334969580173, - 0.009212006814777851, - 0.05181252956390381, - -0.015379744581878185, - -0.07406057417392731, - -0.0743553563952446, - 0.11936365813016891, - -0.026120983064174652, - -0.050299275666475296, - -0.06002526730298996, - 0.049183186143636703, - 0.05959730222821236, - 0.026089487597346306, - -0.0026231701485812664, - 0.04825114831328392, - 0.030927781015634537, - -0.08415275067090988, - -0.05903004854917526, - 0.02372831664979458, - -0.024885375052690506, - -0.0731138363480568, - 0.00032999555696733296, - -0.11139626055955887, - 0.07734385877847672, - -0.06374754756689072, - 0.13184620440006256, - -0.04206470027565956, - -0.06348712742328644, - -0.07138999551534653, - 0.06452766060829163, - -0.05767722800374031, - 0.06281332671642303, - 0.08663783222436905, - 0.05028331279754639, - 0.023744475096464157, - -0.09078331291675568, - 0.09316637367010117, - 0.021749479696154594, - -0.042131755501031876, - -0.07219576835632324, - -0.03430481627583504, - -0.0368807390332222, - -0.003160016844049096, - -0.015943780541419983, - -0.06629819422960281, - 0.01755841262638569, - 0.0013367170467972755, - -0.025492778047919273, - 0.05650454759597778, - 0.10607189685106277, - 0.03448333963751793, - -0.08789954334497452 - ] - }, - "p244_344.wav": { - "name": "p244", - "embedding": [ - 0.05785099416971207, - 0.1109224408864975, - -0.007159736007452011, - 0.008349551819264889, - -0.0435284748673439, - 0.08217641711235046, - -0.13609643280506134, - 0.1284220814704895, - -0.05251353979110718, - 0.14806871116161346, - -0.08109495043754578, - 0.09958012402057648, - -0.014049846678972244, - -0.1978411078453064, - -0.035785600543022156, - 0.051955997943878174, - -0.04597517102956772, - -0.0016738830599933863, - -0.04772093892097473, - -0.010143155232071877, - 0.028294147923588753, - 0.02395155280828476, - 0.00914748478680849, - -0.02986595779657364, - 0.04369159787893295, - 0.05366864055395126, - -0.005277041345834732, - 0.030500197783112526, - -0.005059400107711554, - -0.04588552936911583, - -0.0467258058488369, - 0.13302773237228394, - -0.047579213976860046, - 0.026921693235635757, - 0.08929920196533203, - 0.0012285778066143394, - -0.017531603574752808, - -0.06672068685293198, - -0.010465852916240692, - 0.006913275923579931, - -0.03499038890004158, - 0.07198087126016617, - 0.04544607177376747, - 0.007247472647577524, - 0.04198122397065163, - 0.04771246761083603, - 0.010499674826860428, - -0.06133449077606201, - -0.06975804269313812, - 0.16359329223632812, - 0.04251303896307945, - -0.010465221479535103, - -0.07099996507167816, - -0.07582181692123413, - 0.09738533198833466, - -0.00836309976875782, - -0.11989572644233704, - -0.03652895241975784, - 0.09124121814966202, - 0.1507948487997055, - -0.03502993285655975, - -0.04249962419271469, - -0.0014890988823026419, - 0.11999700963497162, - 0.010711725801229477, - 0.11983908712863922, - 0.05363166332244873, - 0.10856938362121582, - 0.006699001416563988, - 0.04155507683753967, - 0.06656653434038162, - 0.047099314630031586, - 0.052688296884298325, - -0.047392070293426514, - 0.036343201994895935, - -0.005509236361831427, - -0.037099990993738174, - 0.015293164178729057, - -0.03229137510061264, - -0.002235549734905362, - -0.011757569387555122, - 0.0027793976478278637, - 0.019965749233961105, - 0.00708624254912138, - -0.017573408782482147, - 0.032505013048648834, - 0.040242984890937805, - -0.007144433446228504, - 0.07299722731113434, - 0.06345395743846893, - 0.007595045492053032, - 0.05285285413265228, - -0.08416520059108734, - -0.11388155817985535, - 0.04209868982434273, - -0.0005669667152687907, - 0.0016788875218480825, - 0.07130926847457886, - 0.04701681062579155, - -0.017556920647621155, - 0.09558342397212982, - 0.050410110503435135, - -0.0016123120440170169, - 0.03228164091706276, - -0.1072370707988739, - 0.1308879256248474, - 0.08197914063930511, - -0.013330936431884766, - 0.0350673533976078, - -0.06423955410718918, - 0.09303425252437592, - 0.09237924218177795, - -0.16140779852867126, - -0.07283392548561096, - 0.03918175399303436, - -0.008261866867542267, - -0.013359136879444122, - 0.11424532532691956, - -0.02375209704041481, - -0.005212510470300913, - 0.09676734358072281, - -0.09837020933628082, - -0.060571637004613876, - -0.03379792720079422, - 0.025965919718146324, - -0.09258256107568741, - 0.04301176220178604, - 0.044763460755348206, - -0.014842348173260689, - -0.002080074045807123, - 0.08291754871606827, - -0.0008366527035832405, - -0.002387942746281624, - 0.004649616777896881, - -0.019002005457878113, - 0.04031208157539368, - -0.023888621479272842, - 0.022209666669368744, - 0.0252758227288723, - 0.046621281653642654, - 0.03824624419212341, - 0.00593279954046011, - -0.028868485242128372, - -0.08815938234329224, - 0.003064821008592844, - 0.04442959278821945, - 0.06529945135116577, - -0.02092544361948967, - -0.002192132640630007, - -0.028183037415146828, - -0.08209900557994843, - 0.03580604866147041, - -0.026423681527376175, - 0.0711858868598938, - 0.02154758758842945, - -0.004989531822502613, - 0.12286464124917984, - 0.03290189057588577, - -0.005588519386947155, - -0.07340742647647858, - -0.026646949350833893, - 0.029122980311512947, - 0.05568907409906387, - -0.11040371656417847, - -0.06192261725664139, - 0.0011645122431218624, - -0.016356736421585083, - -0.025905780494213104, - 0.02242409810423851, - 0.04045805335044861, - 0.02268514223396778, - 0.05503729358315468, - -0.07334285229444504, - 0.0019255736842751503, - -0.13436110317707062, - -0.05416038632392883, - -0.025928620249032974, - -0.039887990802526474, - -0.010550256818532944, - 0.09001092612743378, - -0.0047018942423164845, - 0.01399797573685646, - -0.02610042691230774, - -0.05919145047664642, - -0.046540625393390656, - 0.08017183840274811, - 0.08122405409812927, - 0.0015265726251527667, - 0.03560664504766464, - 0.026534922420978546, - -0.023910829797387123, - 0.040683895349502563, - 0.07533729076385498, - 0.11010071635246277, - -0.022893184795975685, - 0.03910081833600998, - -0.07094786316156387, - 0.11056504398584366, - 0.07315543293952942, - -0.09186962246894836, - -0.11349812895059586, - -0.015909504145383835, - -0.037440814077854156, - 0.027942873537540436, - -0.0347382128238678, - -0.009762267582118511, - 0.004904330708086491, - -0.018296372145414352, - -0.0684630423784256, - -0.08263783156871796, - 0.0775475949048996, - -0.05198180675506592, - -0.013393385335803032, - -0.08564633131027222, - 0.061585888266563416, - 0.08239369839429855, - 0.040338799357414246, - -0.05126342922449112, - 0.005704818293452263, - 0.06052856519818306, - -0.060382381081581116, - -0.01515639666467905, - 0.016332531347870827, - 0.01277819462120533, - -0.08798089623451233, - 0.018368098884820938, - -0.04996307194232941, - 0.08702942728996277, - -0.0796576589345932, - 0.16390392184257507, - -0.014727666042745113, - -0.07781647145748138, - -0.05855898559093475, - 0.03564026579260826, - -0.015868691727519035, - 0.01871754601597786, - 0.04221160337328911, - 0.06321880221366882, - 0.021970443427562714, - -0.05272405967116356, - 0.1074758768081665, - 0.005036352202296257, - -0.0061488039791584015, - -0.04770372807979584, - -0.04779090732336044, - -0.04319775104522705, - 0.02141861990094185, - -0.0026098531670868397, - -0.1130748987197876, - 0.007606293074786663, - 0.03627312183380127, - -0.013938918709754944, - 0.052663687616586685, - 0.13975360989570618, - 0.06305785477161407, - -0.12126585841178894 - ] - }, - "p244_360.wav": { - "name": "p244", - "embedding": [ - 0.04818341135978699, - 0.0892372876405716, - -0.023963045328855515, - 0.03353828936815262, - -0.0587724894285202, - 0.04637666046619415, - -0.1390831172466278, - 0.13001206517219543, - -0.028515413403511047, - 0.13336704671382904, - -0.06780992448329926, - 0.12324316054582596, - -0.00434302631765604, - -0.20527401566505432, - -0.03509523347020149, - 0.052356064319610596, - -0.05108198896050453, - -0.04220440983772278, - -0.02751733362674713, - -0.024607710540294647, - 0.05460461974143982, - 0.0598616898059845, - 0.024827798828482628, - -0.0009294659830629826, - 0.0215434767305851, - 0.06283250451087952, - 0.007106424774974585, - 0.04856424406170845, - 0.019958490505814552, - -0.05086905509233475, - -0.04544483870267868, - 0.11000079661607742, - -0.04285122826695442, - 0.010822150856256485, - 0.04023807495832443, - -0.0172361321747303, - 0.004100871738046408, - -0.05445122346282005, - -0.03459722921252251, - 0.019841361790895462, - -0.04251132905483246, - 0.07924088835716248, - 0.049969062209129333, - -0.007279278244823217, - 0.049436770379543304, - 0.02144922874867916, - -0.02620839700102806, - -0.05495361238718033, - -0.10778412222862244, - 0.17434734106063843, - 0.07190129160881042, - 0.004165538586676121, - -0.05924128741025925, - -0.06530208140611649, - 0.1076882928609848, - -0.005999373272061348, - -0.11085349321365356, - -0.033510591834783554, - 0.07840707898139954, - 0.15708011388778687, - -0.020719420164823532, - -0.04222678393125534, - 0.035200491547584534, - 0.12964297831058502, - 0.0483706071972847, - 0.08025745302438736, - 0.07878462970256805, - 0.10153041779994965, - -0.007564951665699482, - 0.014279303140938282, - 0.062808096408844, - 0.08337651193141937, - 0.03345275670289993, - -0.027589987963438034, - 0.032149627804756165, - 0.010095231235027313, - -0.02473561465740204, - -0.0009514203993603587, - -0.01662163808941841, - -0.0019060338381677866, - -0.0013230836484581232, - 0.011667110957205296, - 0.008785568177700043, - 0.02372272126376629, - -0.03692757338285446, - 0.05743300914764404, - 0.034976400434970856, - -0.001934751751832664, - 0.06716115772724152, - 0.034734297543764114, - 0.01959652453660965, - 0.06311195343732834, - -0.07915162295103073, - -0.09368149936199188, - 0.033322520554065704, - 0.011361178010702133, - 0.02762276493012905, - 0.07484801113605499, - 0.04263082146644592, - -0.02613668702542782, - 0.12353827804327011, - 0.04825718328356743, - -0.017903637140989304, - 0.029046356678009033, - -0.09762896597385406, - 0.11958770453929901, - 0.09574230760335922, - -0.016620857641100883, - 0.05462227016687393, - -0.05322267860174179, - 0.08577287197113037, - 0.06266245990991592, - -0.1443309336900711, - -0.07345615327358246, - 0.043604299426078796, - 0.026158498600125313, - -0.012653142213821411, - 0.13935181498527527, - -0.006468495354056358, - 0.03820013999938965, - 0.10803616046905518, - -0.08957557380199432, - -0.059089384973049164, - -0.03278517723083496, - 0.05207153409719467, - -0.09878183901309967, - 0.06484998762607574, - 0.05092233419418335, - -0.021630026400089264, - 0.005786439403891563, - 0.07191776484251022, - -0.019467100501060486, - 0.009732222184538841, - 0.0004570989403873682, - -0.03916069120168686, - 0.034367792308330536, - -0.03271656483411789, - 0.0025011892430484295, - 0.042799726128578186, - 0.02957453764975071, - 0.047085750848054886, - -0.0011959981638938189, - -0.03680147975683212, - -0.13563141226768494, - 0.020480960607528687, - 0.026251450181007385, - 0.07421793043613434, - -0.007241176441311836, - -0.0312972366809845, - -0.04691696912050247, - -0.07139088213443756, - 0.019030258059501648, - -0.01212640292942524, - 0.07105046510696411, - -0.00853114016354084, - -0.0007098466157913208, - 0.0941433310508728, - 0.023770665749907494, - -0.0034995628520846367, - -0.03423214703798294, - -0.043204404413700104, - 0.013585953041911125, - 0.046025656163692474, - -0.08780065178871155, - -0.0678306445479393, - -0.0053627812303602695, - 0.026609428226947784, - -0.019446764141321182, - 0.03454305976629257, - 0.04616714268922806, - 0.023568496108055115, - 0.036026448011398315, - -0.08049984276294708, - 0.02272200398147106, - -0.1157190352678299, - -0.073982372879982, - -0.016189996153116226, - -0.0065652416087687016, - -0.02246159315109253, - 0.08463318645954132, - 0.009956256486475468, - 0.043271202594041824, - -0.019988102838397026, - -0.061487823724746704, - -0.07361534237861633, - 0.06201750785112381, - 0.07731617242097855, - 0.009294477291405201, - 0.05246388912200928, - 0.04720202833414078, - -0.028537709265947342, - 0.05688081309199333, - 0.04749014228582382, - 0.10813334584236145, - -0.01687084697186947, - 0.014279123395681381, - -0.06130410358309746, - 0.09323512017726898, - 0.07583028823137283, - -0.09023593366146088, - -0.08087369054555893, - -0.022342924028635025, - -0.06757941842079163, - 0.04381515085697174, - -0.016919147223234177, - 0.00869122613221407, - 0.02092628926038742, - 0.005649100057780743, - -0.10753688216209412, - -0.08004668354988098, - 0.06542098522186279, - -0.06795226037502289, - -0.015878837555646896, - -0.08632469177246094, - 0.048127323389053345, - 0.1169637143611908, - 0.03337424620985985, - -0.03121248260140419, - -0.026110628619790077, - 0.04236619919538498, - -0.044278666377067566, - 0.004427822306752205, - 0.04517524689435959, - 0.04218100756406784, - -0.10436249524354935, - 0.0029109488241374493, - -0.07495289295911789, - 0.05299672856926918, - -0.059955574572086334, - 0.14652499556541443, - 0.014607176184654236, - -0.0617627277970314, - -0.08570197224617004, - 0.05610182136297226, - -0.011980456300079823, - 0.04974393546581268, - 0.036598946899175644, - 0.053706955164670944, - 0.044027894735336304, - -0.07756789028644562, - 0.10961734503507614, - 0.03991749882698059, - -0.03993002325296402, - -0.06623899191617966, - -0.02951471321284771, - -0.03404852747917175, - 0.038766007870435715, - 0.026224222034215927, - -0.08289890736341476, - -0.029031813144683838, - 0.029849905520677567, - -0.013806086964905262, - 0.06660966575145721, - 0.13615640997886658, - 0.04583241790533066, - -0.12063522636890411 - ] - }, - "p244_090.wav": { - "name": "p244", - "embedding": [ - 0.04064396768808365, - 0.08127425611019135, - 0.0626651868224144, - 0.010515211150050163, - -0.0006475523114204407, - 0.006266243755817413, - -0.06174740567803383, - 0.0465511754155159, - 0.02600579708814621, - 0.0719980001449585, - -0.08814815431833267, - 0.07031863927841187, - -0.05689362809062004, - -0.12588611245155334, - -0.054793424904346466, - 0.0026247650384902954, - -0.08458973467350006, - -0.019523780792951584, - -0.022977255284786224, - -0.027991391718387604, - 0.01419652346521616, - -0.005771474912762642, - 0.07965461164712906, - -0.03457125648856163, - -0.025750059634447098, - 0.059703342616558075, - 0.012465003877878189, - 0.02703074924647808, - 0.03189624100923538, - -0.021269138902425766, - 0.03828392177820206, - 0.016185134649276733, - 0.008575506508350372, - 0.01700453646481037, - 0.030969278886914253, - 0.012255815789103508, - 0.0023500584065914154, - -0.018851539120078087, - -0.03283969312906265, - 0.054762423038482666, - -0.051807552576065063, - 0.054250169545412064, - 0.03277702257037163, - -0.06027974560856819, - 0.06507537513971329, - 0.01832493022084236, - -0.04006722941994667, - 0.010587694123387337, - -0.11249355971813202, - 0.10613133013248444, - 0.02595362439751625, - 0.02173946425318718, - -0.046614184975624084, - 0.001112576574087143, - 0.07961267232894897, - -0.022676020860671997, - -0.10368247330188751, - -0.020038418471813202, - 0.062287941575050354, - 0.05499210208654404, - -0.038513362407684326, - -0.03270542994141579, - -0.03815265744924545, - 0.0267141405493021, - 0.05871954560279846, - 0.028176359832286835, - 0.10708551853895187, - 0.08919653296470642, - -0.004631532821804285, - 0.028754757717251778, - 0.06231595575809479, - 0.01567215472459793, - 0.027146045118570328, - 0.004878790117800236, - 0.015389010310173035, - -0.03102223202586174, - -0.006385800428688526, - -0.004703775513917208, - 0.009810584597289562, - -0.01857198029756546, - 0.018842706456780434, - -0.03814390301704407, - 0.019134651869535446, - 0.011757351458072662, - -0.028971102088689804, - 0.017234614118933678, - 0.02773413062095642, - 0.03158588334918022, - 0.04936652630567551, - 0.0501798540353775, - -0.005821910221129656, - 0.058594685047864914, - -0.02979329042136669, - -0.08756905049085617, - -0.050675250589847565, - -0.03978967294096947, - 0.04243859648704529, - 0.037334974855184555, - 0.03551529347896576, - 0.019609754905104637, - 0.0737939178943634, - 0.02514183335006237, - -0.034302689135074615, - 0.0092157032340765, - -0.08985643833875656, - 0.03873419761657715, - 0.07328743487596512, - -0.012470136396586895, - -0.005603881552815437, - -0.0046141669154167175, - 0.08125514537096024, - 0.06594736129045486, - -0.02226751297712326, - 0.0002889372408390045, - 0.01647973246872425, - 0.03091169334948063, - 0.011780399829149246, - 0.07843362540006638, - -0.02702299878001213, - 0.0038549555465579033, - 0.13695725798606873, - -0.050181373953819275, - 0.005859868600964546, - -0.012817978858947754, - -0.010104721412062645, - -0.03332233428955078, - 0.030030228197574615, - 0.011784368194639683, - -0.00015557464212179184, - -0.004663496743887663, - 0.048312947154045105, - 0.019948840141296387, - -0.01283595897257328, - -0.04992695897817612, - -0.0158180333673954, - 0.06533131003379822, - -0.00957013200968504, - 0.007416803855448961, - 0.07714344561100006, - 0.0678035318851471, - 0.031001625582575798, - 0.045978475362062454, - -0.03039032220840454, - -0.022971563041210175, - 0.0387633852660656, - 0.03797642141580582, - 0.01062517799437046, - -0.0077188946306705475, - -0.054019927978515625, - -0.06872181594371796, - 0.011401109397411346, - 0.0697874128818512, - -0.0304543599486351, - 0.060097914189100266, - 0.01463514007627964, - -0.010936297476291656, - 0.08449341356754303, - -0.010837298817932606, - -0.009675005450844765, - -0.0336470901966095, - -0.08266518265008926, - -0.015317079611122608, - 0.025599392130970955, - -0.15433835983276367, - -0.03613152354955673, - -0.050635382533073425, - 0.01456288993358612, - 0.008349638432264328, - 0.00025600194931030273, - 0.06447562575340271, - -0.023840826004743576, - -0.005452310666441917, - -0.012684334069490433, - 0.009937944822013378, - -0.034454409033060074, - -0.07915346324443817, - 0.00742768682539463, - -0.031095465645194054, - 0.022986911237239838, - 0.05516264960169792, - -0.05528753623366356, - 0.015599982813000679, - -0.024020100012421608, - -0.0912422388792038, - -0.023345571011304855, - 0.07813675701618195, - 0.01678263209760189, - 0.007619466166943312, - 0.05370423197746277, - 0.043600715696811676, - -0.057052865624427795, - 0.056252673268318176, - -0.033938370645046234, - 0.08170104771852493, - -0.07578510046005249, - 0.012209897860884666, - -0.0052476003766059875, - 0.021156426519155502, - 0.07137377560138702, - -0.04816038906574249, - -0.08887307345867157, - -0.03825104236602783, - -0.034095779061317444, - 0.020649783313274384, - -0.021899720653891563, - -0.05128190666437149, - 0.01892632246017456, - -0.01499510370194912, - -0.05113307014107704, - -0.09644712507724762, - 0.017037585377693176, - -0.006728529930114746, - -0.002356880810111761, - -0.0784783661365509, - 0.015572423115372658, - -0.008868716657161713, - 0.021705541759729385, - -0.012285393662750721, - 0.06398647278547287, - -0.00813133642077446, - -0.01981765776872635, - -0.03380812704563141, - 0.010599728673696518, - 0.043498069047927856, - 0.015872284770011902, - -0.06370401382446289, - -0.05483846738934517, - 0.03882104158401489, - 0.003696262836456299, - 0.06969879567623138, - 0.02077825553715229, - 0.0002292674034833908, - 0.028231801465153694, - -6.337091326713562e-05, - -0.037019550800323486, - 0.04078030586242676, - 0.05615423619747162, - 0.01964956894516945, - 0.0013615414500236511, - -0.03153536841273308, - 0.09341824054718018, - 0.03599722683429718, - -0.0029991213232278824, - -0.03623276948928833, - 0.015962064266204834, - -0.06498231738805771, - -0.056303344666957855, - 0.0014917273074388504, - -0.05723215267062187, - 0.017543850466609, - -0.004169324412941933, - 0.018473897129297256, - 0.005040300078690052, - 0.08774666488170624, - 0.03280787914991379, - 0.00721321627497673 - ] - }, - "p244_330.wav": { - "name": "p244", - "embedding": [ - 0.028775177896022797, - 0.0942976251244545, - -0.007552044931799173, - 0.008686493150889874, - -0.050842370837926865, - 0.04642527550458908, - -0.1547546088695526, - 0.14853498339653015, - -0.04556361213326454, - 0.1401551365852356, - -0.07498010993003845, - 0.09947290271520615, - -0.028957396745681763, - -0.20971153676509857, - -0.024361716583371162, - 0.05742349475622177, - -0.049325551837682724, - -0.03760281205177307, - -0.028330618515610695, - -0.036062952131032944, - 0.04246811196208, - 0.05712404474616051, - 0.0010933857411146164, - 0.006788269616663456, - 0.035417355597019196, - 0.060848068445920944, - -0.00593825476244092, - 0.022392529994249344, - -0.002645763335749507, - -0.04228941351175308, - -0.02704721689224243, - 0.10263815522193909, - -0.04541067034006119, - -0.0016553238965570927, - 0.04527520015835762, - -0.012980104424059391, - 0.005061643663793802, - -0.05632397159934044, - -0.035657983273267746, - 0.021175328642129898, - -0.05598392337560654, - 0.07094807922840118, - 0.04540979862213135, - 0.009661754593253136, - 0.048433270305395126, - 0.03346649929881096, - -0.015975601971149445, - -0.0627770870923996, - -0.10571716725826263, - 0.1799689680337906, - 0.06859327852725983, - -0.0010220753028988838, - -0.06429551541805267, - -0.077412910759449, - 0.11247684061527252, - -0.0012093563564121723, - -0.1156325712800026, - -0.03648144379258156, - 0.09239096939563751, - 0.16624177992343903, - -0.019953126087784767, - -0.04572741314768791, - 0.040032509714365005, - 0.1287534534931183, - 0.02503649890422821, - 0.08262725919485092, - 0.06323330104351044, - 0.08655506372451782, - -0.009852055460214615, - 4.258615444996394e-05, - 0.06674792617559433, - 0.05819473788142204, - 0.02464931644499302, - -0.04103938490152359, - 0.022542722523212433, - 0.011651113629341125, - -0.031608715653419495, - -0.0006100579630583525, - -0.017362941056489944, - -0.006360533647239208, - -0.00681935902684927, - 0.019258219748735428, - -0.004623271990567446, - 0.01647677831351757, - -0.02628968469798565, - 0.04284828156232834, - 0.02720942720770836, - 0.0063293566927313805, - 0.08645815402269363, - 0.03611991927027702, - 0.02872610278427601, - 0.06712743639945984, - -0.07143925130367279, - -0.07111746072769165, - 0.028093665838241577, - 0.011730422265827656, - 0.008528018370270729, - 0.07223747670650482, - 0.046128008514642715, - -0.027298910543322563, - 0.13931550085544586, - 0.04103231057524681, - 0.004401904530823231, - 0.025906242430210114, - -0.11898987740278244, - 0.11477471888065338, - 0.07792922109365463, - -0.026407528668642044, - 0.058479174971580505, - -0.04493040218949318, - 0.07228315621614456, - 0.06652665138244629, - -0.152790829539299, - -0.07113491743803024, - 0.03901821747422218, - 0.034688226878643036, - -0.020282993093132973, - 0.15232884883880615, - -0.0008881477988325059, - 0.027568671852350235, - 0.10801813006401062, - -0.0980055034160614, - -0.06507053226232529, - -0.024508953094482422, - 0.060099925845861435, - -0.09166676551103592, - 0.05855695903301239, - 0.07104960829019547, - -0.029177578166127205, - 0.02858414128422737, - 0.06988789141178131, - -0.017563609406352043, - 0.020906032994389534, - -0.016088807955384254, - -0.03398805856704712, - 0.029657838866114616, - -0.036932263523340225, - 0.000521114852745086, - 0.030030759051442146, - 0.042283255606889725, - 0.04619602859020233, - 0.004907483235001564, - -0.05178247392177582, - -0.12175274640321732, - 0.015008042566478252, - 0.01987510174512863, - 0.07778052240610123, - -0.003235435811802745, - -0.020022328943014145, - -0.044971998780965805, - -0.06584125012159348, - -0.004014094825834036, - -0.005116398446261883, - 0.09099182486534119, - -0.011174105107784271, - -0.0026409414131194353, - 0.1033637747168541, - 0.0485977828502655, - -0.004749538376927376, - -0.04129302501678467, - -0.046134140342473984, - -0.001764293061569333, - 0.0420251227915287, - -0.08176632225513458, - -0.06909742951393127, - -0.011056512594223022, - 0.04126637801527977, - -0.003850417211651802, - 0.04995927959680557, - 0.03722752258181572, - 0.024100279435515404, - 0.027754345908761024, - -0.09293355792760849, - 0.03915109857916832, - -0.10830654948949814, - -0.0761324018239975, - -0.006361217238008976, - -0.012022493407130241, - -0.0258127823472023, - 0.09199270606040955, - 0.002167552476748824, - 0.03620534390211105, - -0.017047669738531113, - -0.06860188394784927, - -0.07338572293519974, - 0.055204544216394424, - 0.07647529244422913, - -0.011820715852081776, - 0.04574711248278618, - 0.0529719814658165, - -0.04489642381668091, - 0.053750310093164444, - 0.05419224128127098, - 0.11394426226615906, - -0.022352589294314384, - 0.02878769114613533, - -0.05205736309289932, - 0.08080983906984329, - 0.05842039734125137, - -0.08768323063850403, - -0.07520138472318649, - -0.023953553289175034, - -0.06678587943315506, - 0.04522787407040596, - -0.00245091924443841, - 0.01864619180560112, - 0.0017047241562977433, - -0.0016624588752165437, - -0.09359132498502731, - -0.06657226383686066, - 0.05649025738239288, - -0.05803738534450531, - -0.016047485172748566, - -0.08337128162384033, - 0.05354076251387596, - 0.11559978127479553, - 0.049841102212667465, - -0.015008434653282166, - -0.03896990790963173, - 0.03340882807970047, - -0.038215503096580505, - 0.0042031267657876015, - 0.05201674625277519, - 0.03596038743853569, - -0.09438767284154892, - 0.0034492751583456993, - -0.08936912566423416, - 0.07114681601524353, - -0.053649820387363434, - 0.14778290688991547, - 0.014951919205486774, - -0.06981822103261948, - -0.1001640185713768, - 0.0405099056661129, - -0.010781927965581417, - 0.048182617872953415, - 0.023616915568709373, - 0.06275665014982224, - 0.06097223609685898, - -0.040008544921875, - 0.1036645770072937, - 0.03136811405420303, - -0.03299437835812569, - -0.04510760307312012, - -0.03755544498562813, - -0.03452673926949501, - 0.018769390881061554, - 0.006894656457006931, - -0.0962354764342308, - -0.023216702044010162, - 0.024768684059381485, - 0.002940610283985734, - 0.08153677731752396, - 0.1194208562374115, - 0.04961024224758148, - -0.1429012417793274 - ] - }, - "p244_005.wav": { - "name": "p244", - "embedding": [ - 0.025751689448952675, - 0.09247411042451859, - -0.01481679081916809, - 0.002580709755420685, - -0.047820497304201126, - 0.031276993453502655, - -0.15323218703269958, - 0.13633522391319275, - -0.0312531478703022, - 0.12312326580286026, - -0.05915254354476929, - 0.10241879522800446, - -0.04438268765807152, - -0.16465875506401062, - -0.013169439509510994, - 0.06484699249267578, - -0.02492721937596798, - -0.03713805228471756, - 0.012213650159537792, - -0.02052169106900692, - 0.028823306784033775, - 0.019845543429255486, - 0.010030052624642849, - 0.0174336526542902, - 0.01750507764518261, - 0.07105695456266403, - -0.0018580554751679301, - 0.023838896304368973, - -8.113496005535126e-05, - -0.0011915796203538775, - -0.012518675997853279, - 0.08900490403175354, - -0.039401229470968246, - 0.007327149156481028, - 0.061140816658735275, - 0.0033923436421900988, - -0.008418516255915165, - -0.0373876616358757, - 0.009603055194020271, - -0.0022687034215778112, - -0.05736105516552925, - 0.08183414489030838, - 0.03330230340361595, - -0.003914451692253351, - 0.03413618728518486, - 0.030132634565234184, - -0.00441955029964447, - -0.01882593147456646, - -0.08758299052715302, - 0.13185621798038483, - 0.0608295276761055, - 0.009664368815720081, - -0.06682051718235016, - -0.034202467650175095, - 0.08539756387472153, - -0.013197868131101131, - -0.09733202308416367, - -0.05651670694351196, - 0.07982601225376129, - 0.1298866719007492, - -0.02178170159459114, - -0.041950952261686325, - 0.020245349034667015, - 0.11902689933776855, - 0.029456421732902527, - 0.07493413984775543, - 0.06037766858935356, - 0.10166652500629425, - -0.02030940353870392, - -0.009444179013371468, - 0.053118105977773666, - 0.05621718242764473, - 0.025752825662493706, - -0.015468365512788296, - 0.010053319856524467, - -0.012781363911926746, - -0.008865932933986187, - 0.012631827965378761, - -0.014924371615052223, - -0.03145730495452881, - -0.05392680689692497, - 0.004488821607083082, - -0.023478878661990166, - 0.026279447600245476, - 0.005703621078282595, - 0.03302256390452385, - 0.05726640298962593, - -0.012014302425086498, - 0.08122263103723526, - 0.042374927550554276, - -0.008360168896615505, - 0.04747333750128746, - -0.0784466490149498, - -0.04162577539682388, - 0.02184409275650978, - -0.007953012362122536, - 0.03751415014266968, - 0.06978607922792435, - 0.02579343318939209, - 0.016692832112312317, - 0.1087413802742958, - 0.03914780169725418, - 0.004087178036570549, - 0.007513151969760656, - -0.09907539933919907, - 0.1404232233762741, - 0.06030994653701782, - -0.0458175390958786, - 0.03655023127794266, - -0.032442737370729446, - 0.023660805076360703, - 0.042734142392873764, - -0.10230907052755356, - -0.05554288253188133, - 0.030258584767580032, - 0.044573355466127396, - -0.022863119840621948, - 0.12222959101200104, - 0.004582211375236511, - 0.022670665755867958, - 0.10225160419940948, - -0.07203736156225204, - -0.08265693485736847, - -0.023847756907343864, - 0.035272691398859024, - -0.08250445127487183, - 0.06003674864768982, - 0.07833289355039597, - 0.007364712655544281, - 0.027607271447777748, - 0.08703519403934479, - 0.0236942358314991, - 0.019190281629562378, - -0.005353455897420645, - -0.02498854510486126, - 0.01818469725549221, - -0.02052154950797558, - 0.020734982565045357, - 0.03831108286976814, - 0.028344979509711266, - 0.06835141032934189, - 0.026013633236289024, - -0.014806079678237438, - -0.11593671143054962, - -0.0050568473525345325, - 0.05435812473297119, - 0.06633037328720093, - -0.027806712314486504, - -0.043762363493442535, - -0.02780364826321602, - -0.05236717686057091, - -0.02628963626921177, - 0.0030397993978112936, - 0.08151530474424362, - -0.022789010778069496, - -0.005302906036376953, - 0.09771472215652466, - 0.02625555731356144, - -0.004160396289080381, - -0.06628470122814178, - -0.026820192113518715, - -0.005690340884029865, - 0.039222847670316696, - -0.09614644199609756, - -0.0746803879737854, - -0.0171371977776289, - 0.0507940910756588, - -0.004642564337700605, - 0.05241745337843895, - 0.057788994163274765, - 0.013224628753960133, - 0.015903351828455925, - -0.045140378177165985, - 0.035480767488479614, - -0.0744086354970932, - -0.0786619707942009, - -0.02025953121483326, - -0.004782547242939472, - -0.029815783724188805, - 0.07740012556314468, - 0.006323916371911764, - 0.06174571067094803, - -0.005351876374334097, - -0.06544952839612961, - -0.08191382139921188, - 0.049945052713155746, - 0.05891530588269234, - -0.03241581842303276, - 0.04496927559375763, - 0.04943684861063957, - -0.05588522180914879, - 0.023241456598043442, - 0.04074364900588989, - 0.10572715103626251, - -0.06369687616825104, - 0.019643960520625114, - -0.05950211361050606, - 0.05306880548596382, - 0.07781235128641129, - -0.09480667859315872, - -0.06370726972818375, - -0.03584478050470352, - -0.041032467037439346, - 0.019404901191592216, - -0.032237228006124496, - 0.0116353090852499, - 0.006078171543776989, - -0.025051867589354515, - -0.08602433651685715, - -0.10105009377002716, - 0.04299122467637062, - -0.0635981485247612, - 0.012628167867660522, - -0.06944680958986282, - 0.04417206719517708, - 0.057485032826662064, - 0.033591967076063156, - -0.040401894599199295, - -0.01090376265347004, - 0.02220587246119976, - -0.02587585709989071, - 0.002378108911216259, - 0.05339096859097481, - 0.04920055344700813, - -0.06807062029838562, - -0.015053587034344673, - -0.08359590172767639, - 0.06522922217845917, - -0.04064479470252991, - 0.1401396095752716, - 0.00669890409335494, - -0.051161497831344604, - -0.0719616636633873, - -0.01930060237646103, - -0.01189219206571579, - 0.034772831946611404, - 0.030210062861442566, - 0.057875823229551315, - 0.02430647611618042, - -0.022067708894610405, - 0.11881152540445328, - 0.04928240925073624, - -0.022224219515919685, - -0.060008931905031204, - -0.030271828174591064, - -0.04335605353116989, - 0.03636306896805763, - 0.014109629206359386, - -0.10383329540491104, - -0.01007533073425293, - 0.017167722806334496, - 0.003292742418125272, - 0.07619378715753555, - 0.11934701353311539, - 0.061288367956876755, - -0.11134073883295059 - ] - }, - "p244_338.wav": { - "name": "p244", - "embedding": [ - 0.04102391004562378, - 0.09404051303863525, - -0.013703575357794762, - 0.043323636054992676, - -0.0589664988219738, - 0.0326029509305954, - -0.12760983407497406, - 0.14680981636047363, - -0.02417687140405178, - 0.12538829445838928, - -0.08796220272779465, - 0.11340855807065964, - -0.03165631368756294, - -0.19505028426647186, - -0.02535703033208847, - 0.07253023982048035, - -0.047131799161434174, - -0.04184499382972717, - -0.037942349910736084, - -0.01847253367304802, - 0.038353584706783295, - 0.04341405630111694, - 0.028912773355841637, - 0.03292600065469742, - 0.0030481999274343252, - 0.06400053203105927, - -0.005463878624141216, - 0.04588539898395538, - 0.031159546226263046, - -0.013155660592019558, - -0.03663887083530426, - 0.11392031610012054, - -0.023835692554712296, - 0.009370487183332443, - 0.050447773188352585, - -0.006495075300335884, - -0.004920381121337414, - -0.05598188936710358, - -0.033462539315223694, - -0.007103222422301769, - -0.060744114220142365, - 0.06411627680063248, - 0.03661311790347099, - -0.008307775482535362, - 0.07547600567340851, - 0.020827434957027435, - -0.050890058279037476, - -0.050755392760038376, - -0.11806660145521164, - 0.15462371706962585, - 0.09738489240407944, - -0.0014778965851292014, - -0.06550323963165283, - -0.051741503179073334, - 0.09798663854598999, - -0.019104696810245514, - -0.11481021344661713, - -0.04825432598590851, - 0.0923953503370285, - 0.15434959530830383, - -0.01551961712539196, - -0.020738907158374786, - 0.0250251404941082, - 0.15619820356369019, - 0.05627680569887161, - 0.09270654618740082, - 0.062010325491428375, - 0.11288772523403168, - -0.03001170977950096, - 0.017727412283420563, - 0.07268472015857697, - 0.0596601627767086, - 0.035544008016586304, - -0.012070360593497753, - 0.019215280190110207, - 0.012073686346411705, - -0.017725301906466484, - 0.007525689899921417, - -0.034538932144641876, - -0.007980989292263985, - -0.025446800515055656, - 0.009731393307447433, - -0.016469363123178482, - 0.010556772351264954, - -0.01962146908044815, - 0.06840859353542328, - 0.04780596122145653, - 0.0061414241790771484, - 0.06742027401924133, - 0.04598572850227356, - 0.004867593292146921, - 0.06456311792135239, - -0.06450364738702774, - -0.086041659116745, - 0.009608002379536629, - -0.001914256950840354, - 0.024147581309080124, - 0.06559255719184875, - 0.02723701111972332, - -0.01865668222308159, - 0.1240086778998375, - 0.04605934023857117, - -0.01619747094810009, - 0.04223329573869705, - -0.10692392289638519, - 0.126690074801445, - 0.08142156898975372, - -0.021290220320224762, - 0.040113888680934906, - -0.03608899936079979, - 0.07253705710172653, - 0.07166515290737152, - -0.12288157641887665, - -0.04304562136530876, - 0.029197407886385918, - 0.014444700442254543, - -0.027562733739614487, - 0.11656133830547333, - 0.004667364992201328, - 0.042792391031980515, - 0.11476494371891022, - -0.07899925112724304, - -0.0684492439031601, - -0.02288840524852276, - 0.04763060808181763, - -0.09656398743391037, - 0.053603172302246094, - 0.05281418561935425, - -0.007395615801215172, - 0.010420829057693481, - 0.07941490411758423, - -0.005900798365473747, - 0.00013526731345336884, - 0.014369579032063484, - -0.06391957402229309, - 0.030904870480298996, - -0.03508904576301575, - -0.003078195033594966, - 0.04659448564052582, - 0.040982797741889954, - 0.040698982775211334, - -0.0021367508452385664, - -0.018278196454048157, - -0.10974903404712677, - 0.010570976883172989, - 0.031058212742209435, - 0.08584713935852051, - 0.008872914128005505, - -0.01721477322280407, - -0.04305783659219742, - -0.0623776875436306, - 0.005800226703286171, - -0.02083773724734783, - 0.06063871830701828, - -0.04043854400515556, - -0.013258038088679314, - 0.0933605283498764, - 0.009024466387927532, - 0.003986444789916277, - -0.047592610120773315, - -0.03874823451042175, - 0.011362962424755096, - 0.05025026202201843, - -0.08625790476799011, - -0.07113875448703766, - 0.011010151356458664, - 0.03381587564945221, - -0.025479283183813095, - 0.03287027031183243, - 0.02819760888814926, - 0.010258961468935013, - 0.023746557533740997, - -0.07637040317058563, - 0.029231026768684387, - -0.11355855315923691, - -0.07538261264562607, - -0.007543667685240507, - -0.0021072616800665855, - -0.0033139530569314957, - 0.05932000279426575, - 0.008054036647081375, - 0.039663612842559814, - 0.010288329795002937, - -0.09107789397239685, - -0.09306816756725311, - 0.0720660462975502, - 0.07757392525672913, - 0.007989971898496151, - 0.0750846266746521, - 0.0554271899163723, - -0.05560479313135147, - 0.048159655183553696, - 0.030037513002753258, - 0.11011700332164764, - -0.019759507849812508, - 0.013727596960961819, - -0.08091473579406738, - 0.05746433138847351, - 0.09096956253051758, - -0.11060699820518494, - -0.08227789402008057, - -0.025494307279586792, - -0.050003327429294586, - 0.039126306772232056, - -0.026564180850982666, - -0.003959990106523037, - 0.04524245113134384, - -0.009651796892285347, - -0.11342038959264755, - -0.08504398912191391, - 0.07966822385787964, - -0.07838701456785202, - -0.0018658809131011367, - -0.0688696950674057, - 0.03626197576522827, - 0.0955563336610794, - 0.01767021417617798, - -0.04212246090173721, - -0.017780475318431854, - 0.0479314848780632, - -0.044675808399915695, - -0.010200833901762962, - 0.032487496733665466, - 0.0371989831328392, - -0.11207787692546844, - -0.001362629234790802, - -0.07121067494153976, - 0.06254415214061737, - -0.04630634933710098, - 0.14817757904529572, - 0.017550859600305557, - -0.045733314007520676, - -0.08875660598278046, - 0.03624237701296806, - -0.004451698623597622, - 0.05125384032726288, - 0.029379427433013916, - 0.05633626878261566, - 0.02399054914712906, - -0.06488151848316193, - 0.129984050989151, - 0.03490384668111801, - -0.049936018884181976, - -0.056096404790878296, - -0.015089405700564384, - -0.052996568381786346, - 0.016771573573350906, - 0.02335342764854431, - -0.0932389348745346, - -0.03478509187698364, - 0.012313449755311012, - -0.04063805937767029, - 0.07577440142631531, - 0.13775473833084106, - 0.06095390021800995, - -0.11094637960195541 - ] - }, - "p244_391.wav": { - "name": "p244", - "embedding": [ - 0.04475565627217293, - 0.08445829898118973, - -0.03482842072844505, - 0.028779076412320137, - -0.05144379660487175, - 0.07730261981487274, - -0.1261998862028122, - 0.10576523840427399, - -0.034466277807950974, - 0.14886286854743958, - -0.0728699266910553, - 0.13544268906116486, - -0.005417270120233297, - -0.17050045728683472, - -0.019191410392522812, - 0.04791611060500145, - -0.0217113196849823, - -0.021417034789919853, - -0.04494427144527435, - -0.02324852906167507, - 0.04740201681852341, - 0.04067324101924896, - 0.04741324856877327, - -0.041410841047763824, - 0.031443677842617035, - 0.06916915625333786, - -0.01657356135547161, - 0.03314198926091194, - -0.008323051035404205, - -0.09121359139680862, - -0.06360432505607605, - 0.10366450250148773, - -0.06279800087213516, - 0.006447340361773968, - 0.030507370829582214, - -0.008925455622375011, - 0.010416969656944275, - -0.06755886226892471, - -0.010517291724681854, - 0.014069553464651108, - -0.024344198405742645, - 0.06747173517942429, - -0.009081847034394741, - -0.025300128385424614, - 0.03991752862930298, - 0.0052709029987454414, - -0.014901787042617798, - -0.028051448985934258, - -0.09598222374916077, - 0.15395468473434448, - 0.05070444568991661, - 0.0026327979285269976, - -0.07729495316743851, - -0.07014848291873932, - 0.0927153006196022, - -0.00932000856846571, - -0.09822805225849152, - -0.034471482038497925, - 0.05725415423512459, - 0.14293190836906433, - -0.024730799719691277, - -0.05496111884713173, - 0.049386873841285706, - 0.07950408011674881, - 0.049979060888290405, - 0.07378515601158142, - 0.10072334855794907, - 0.10587462782859802, - -0.016188785433769226, - 0.003911721520125866, - 0.031614284962415695, - 0.09812268614768982, - 0.0813341811299324, - -0.014089087955653667, - 0.040813107043504715, - -0.0020376797765493393, - -0.025137141346931458, - -0.019072165712714195, - -0.05207672342658043, - -0.03556160256266594, - 0.0030249105766415596, - -0.006976144388318062, - 0.024737738072872162, - 0.024147195741534233, - -0.047896239906549454, - 0.0465267039835453, - 0.06678692996501923, - -0.034494489431381226, - 0.06862171739339828, - 0.03676571324467659, - 0.015841543674468994, - 0.05871529132127762, - -0.12004963308572769, - -0.07510169595479965, - 0.0632457286119461, - 0.02912026271224022, - -0.01038141269236803, - 0.07163555920124054, - 0.0556488111615181, - -0.026362119242548943, - 0.11318233609199524, - 0.035304829478263855, - -0.0005532089853659272, - 0.012245634570717812, - -0.08129800111055374, - 0.13182812929153442, - 0.1263558715581894, - -0.04192619025707245, - 0.027076663449406624, - -0.04925129562616348, - 0.057712405920028687, - 0.06085308641195297, - -0.13565240800380707, - -0.09596654772758484, - 0.012001050636172295, - -0.020846327766776085, - -0.003182913176715374, - 0.1101795956492424, - -0.012469641864299774, - 0.044291310012340546, - 0.10889151692390442, - -0.10956189036369324, - -0.058276236057281494, - -0.0070252083241939545, - 0.03585992753505707, - -0.09176762402057648, - 0.06521953642368317, - 0.04517240822315216, - 0.015312273986637592, - -0.00339338555932045, - 0.07249868661165237, - -0.013997214846313, - 0.007416174281388521, - 0.0038231033831834793, - -0.037874698638916016, - 0.008054663427174091, - -0.027380961924791336, - -0.03448547050356865, - 0.0436052642762661, - 0.03516879305243492, - 0.06869257241487503, - -0.029147779569029808, - -0.017612360417842865, - -0.13826081156730652, - 0.024862486869096756, - 0.03652787581086159, - 0.04917508363723755, - -0.01798488013446331, - -0.015032642520964146, - -0.049134574830532074, - -0.07683062553405762, - 0.04029630869626999, - -0.020044395700097084, - 0.07759607583284378, - 0.004628386348485947, - 0.014294054359197617, - 0.11544560641050339, - 0.029482055455446243, - 0.00648410152643919, - -0.031085975468158722, - -0.03396117314696312, - 0.007486049085855484, - 0.043998751789331436, - -0.06972501426935196, - -0.10206920653581619, - -0.029392996802926064, - 0.0035860100761055946, - -0.005114537198096514, - 0.08452353626489639, - 0.07642000168561935, - 0.020112834870815277, - 0.01829945109784603, - -0.060348283499479294, - -0.009538174606859684, - -0.08370153605937958, - -0.0578397698700428, - -0.020565152168273926, - -0.050570763647556305, - -0.030210578814148903, - 0.10048534721136093, - 0.023672735318541527, - 0.03672643378376961, - -0.06911935657262802, - -0.05053436756134033, - -0.09950694441795349, - 0.04814744368195534, - 0.05687841400504112, - -0.009804955683648586, - 0.019170355051755905, - 0.05248704552650452, - -0.0027235078159719706, - 0.05640871077775955, - 0.08356982469558716, - 0.08389993011951447, - -0.02409106120467186, - 0.022876331582665443, - -0.060714107006788254, - 0.12603406608104706, - 0.10261187702417374, - -0.06148110702633858, - -0.0946405827999115, - -0.03647901862859726, - -0.09201876074075699, - 0.04842294007539749, - -0.031402166932821274, - -0.003240474732592702, - 0.05512641742825508, - -0.014015892520546913, - -0.10799790173768997, - -0.09559755772352219, - 0.09522709250450134, - -0.048895835876464844, - -0.017499355599284172, - -0.08222983032464981, - 0.04866539686918259, - 0.07448327541351318, - 0.02879994362592697, - -0.04282752051949501, - 0.0011830126168206334, - 0.05681319534778595, - -0.027522733435034752, - 0.024755720049142838, - 0.055269505828619, - 0.040254633873701096, - -0.10236751288175583, - -0.007689174730330706, - -0.07135006785392761, - 0.04229961708188057, - -0.06378545612096786, - 0.13410131633281708, - 0.0108482139185071, - -0.045616161078214645, - -0.07834893465042114, - 0.07525690644979477, - -0.016149261966347694, - 0.04846128448843956, - 0.030103370547294617, - 0.06719794124364853, - 0.04558586701750755, - -0.10772771388292313, - 0.10215885937213898, - 0.04660838097333908, - -0.03494365140795708, - -0.09867776930332184, - -0.07350967079401016, - -0.036285027861595154, - 0.03467181324958801, - 0.01720988005399704, - -0.08759579807519913, - 0.00595390098169446, - 0.024533240124583244, - 0.02508567087352276, - 0.05026039108633995, - 0.1316027194261551, - 0.05401219055056572, - -0.11442084610462189 - ] - }, - "p244_255.wav": { - "name": "p244", - "embedding": [ - 0.05430874228477478, - 0.09774158895015717, - 0.01347745954990387, - 0.004972044378519058, - -0.012308331206440926, - 0.05372491478919983, - -0.015709009021520615, - 0.0686049535870552, - 0.058810096234083176, - 0.028306618332862854, - -0.08619813621044159, - 0.04947549104690552, - -0.022378897294402122, - -0.09923802316188812, - 0.025608714669942856, - 0.026873666793107986, - -0.018502648919820786, - 0.015591317787766457, - -0.043779533356428146, - -0.026002051308751106, - -0.014537546783685684, - 0.006839936599135399, - 0.03584045544266701, - -0.018978744745254517, - 0.011685444973409176, - 0.002531846985220909, - -0.03858165442943573, - -0.007537835277616978, - -0.015930943191051483, - -0.04945084825158119, - -0.030241888016462326, - 0.03820665180683136, - -0.024072200059890747, - -0.010192835703492165, - -0.004791846964508295, - -0.04764346033334732, - 0.024696966633200645, - -0.07823380082845688, - -0.06926882266998291, - 0.04884723201394081, - -0.055877409875392914, - 0.042214974761009216, - 0.02864380180835724, - -0.0466630794107914, - 0.0625571608543396, - 0.011679427698254585, - -0.047914013266563416, - -0.00826011598110199, - -0.08712661266326904, - 0.12145355343818665, - 0.0217595212161541, - 0.022263966500759125, - -0.06696166843175888, - 0.005346570163965225, - 0.054151393473148346, - -0.008380424231290817, - -0.0278440173715353, - 0.00017682649195194244, - 0.02487005665898323, - 0.014670856297016144, - 0.06343583017587662, - -0.02097918838262558, - 0.0275642741471529, - 0.04632057994604111, - 0.04389994218945503, - -0.014888783916831017, - 0.07998812198638916, - 0.10132572799921036, - -0.03211326524615288, - 0.020754342898726463, - 0.01418408565223217, - 0.009712819010019302, - 0.042468585073947906, - -0.007901829667389393, - 0.00095329899340868, - -0.02055731974542141, - 0.008386963978409767, - -0.04433564469218254, - -0.02692912518978119, - -0.028600141406059265, - 0.06794092804193497, - 0.007959078066051006, - 0.02130330353975296, - 0.027074065059423447, - -0.0463731549680233, - -0.013050507754087448, - 0.05219823122024536, - 0.08347707986831665, - 0.06172531843185425, - 0.030457882210612297, - 0.01658627577126026, - 0.04357363283634186, - -0.06571778655052185, - -0.07064215838909149, - 0.015229208394885063, - 0.021436570212244987, - 0.0027671707794070244, - 0.013337412849068642, - 0.03716866672039032, - -0.027809806168079376, - 0.10106607526540756, - -0.011955322697758675, - 0.004767312668263912, - -0.00479104183614254, - -0.05073666572570801, - 0.012240037322044373, - 0.061280716210603714, - -0.00638702604919672, - 0.0681275874376297, - 0.017029546201229095, - 0.06522238254547119, - 0.043957993388175964, - -0.04780182987451553, - 0.013337705284357071, - -0.022062424570322037, - 0.008388960734009743, - 0.026759816333651543, - 0.10155860334634781, - 0.010886836796998978, - 0.057982828468084335, - 0.08869235217571259, - -0.06098257005214691, - 0.01550203375518322, - 0.05748186632990837, - -0.011237148195505142, - 0.004615951329469681, - 0.03253023326396942, - 0.02515196055173874, - -0.0034752970095723867, - -0.0286130141466856, - 0.0004828236997127533, - 0.01972118951380253, - 0.029773356392979622, - -0.07508664578199387, - 0.01647849939763546, - -0.01317545399069786, - -0.0030111498199403286, - -0.027988936752080917, - 0.01638893596827984, - 0.04712340235710144, - -0.006316136568784714, - 0.022809334099292755, - -0.049131277948617935, - -0.059588637202978134, - 0.02155737392604351, - -0.042042024433612823, - 0.005092935636639595, - 0.05131315439939499, - -0.02260187827050686, - -0.05235358327627182, - 0.00721769779920578, - 0.03811686858534813, - -0.028150059282779694, - 0.019183780997991562, - 0.08530475199222565, - -0.04081461951136589, - 0.05118509382009506, - 0.024056170135736465, - 0.029365716502070427, - -0.018594348803162575, - -0.09280963987112045, - -0.006896346341818571, - 0.03319235518574715, - -0.030784036964178085, - -0.044725202023983, - -0.016633763909339905, - -0.07315071672201157, - -0.0031818910501897335, - 0.015321135520935059, - 0.07648880779743195, - -0.018735330551862717, - -0.02757854200899601, - -0.0827283188700676, - -0.0026331646367907524, - -0.008053064346313477, - -0.0910884439945221, - 0.07206295430660248, - 0.038100820034742355, - 0.013404693454504013, - 0.0881463885307312, - 0.019160162657499313, - 0.00919361412525177, - -0.06912365555763245, - -0.027963832020759583, - 0.034555308520793915, - 0.031073711812496185, - 0.0018057804554700851, - -0.0025843651965260506, - 0.04371615871787071, - 0.041177865117788315, - -0.012960391119122505, - 0.035534925758838654, - 0.013252072036266327, - 0.0353245809674263, - -0.02948800101876259, - 0.0122229577973485, - 0.029015105217695236, - 0.09154590219259262, - 0.04014185443520546, - -0.027290519326925278, - -0.0880202203989029, - -0.026353871449828148, - -0.042294666171073914, - 0.013319004327058792, - 0.01445453055202961, - 0.012715521268546581, - 0.04443905130028725, - -0.01205204613506794, - -0.025969084352254868, - -0.09695051610469818, - -0.0004797913134098053, - -0.0025463085621595383, - -0.01854422315955162, - -0.028552358970046043, - 0.026280077174305916, - 0.05005079135298729, - 0.004732104018330574, - -0.025891238823533058, - 0.017430447041988373, - 0.00866516213864088, - 0.018742449581623077, - -0.022751860320568085, - 0.005694802850484848, - 0.050899628549814224, - -0.016456685960292816, - -0.01385124959051609, - -0.05806155502796173, - 0.04041241109371185, - 0.04801962897181511, - 0.0625956729054451, - 0.05974408611655235, - 0.017898771911859512, - -0.0724748894572258, - 0.05567363649606705, - -0.004642583429813385, - 0.03655055910348892, - -0.03209227696061134, - 0.014330834150314331, - 0.07109825313091278, - -0.04922118037939072, - 0.04186179116368294, - 0.02869436703622341, - -0.03642933815717697, - -0.0290510430932045, - 0.011721570044755936, - -0.045564111322164536, - -0.010473456233739853, - -0.009366411715745926, - -0.03548828139901161, - -0.004731165710836649, - 0.029181640595197678, - 0.07118245959281921, - 0.026769788935780525, - 0.049811460077762604, - 0.012321382761001587, - -0.018462814390659332 - ] - }, - "p244_248.wav": { - "name": "p244", - "embedding": [ - 0.03326428309082985, - 0.10503867268562317, - -0.006563019473105669, - 0.021382618695497513, - -0.035181332379579544, - 0.06641621887683868, - -0.14270910620689392, - 0.14689882099628448, - -0.0529194101691246, - 0.14005199074745178, - -0.08515670150518417, - 0.10863259434700012, - -0.02142701856791973, - -0.19966208934783936, - -0.05129221826791763, - 0.04734417796134949, - -0.037114884704351425, - -0.021756403148174286, - -0.020290590822696686, - 0.02037068083882332, - 0.054260432720184326, - 0.0197905283421278, - -0.008160501718521118, - 0.005950427148491144, - 0.011820094659924507, - 0.04632983356714249, - 0.018941283226013184, - 0.07119020819664001, - 0.038772545754909515, - -0.008806821890175343, - -0.021929437294602394, - 0.1389164924621582, - -0.04237101599574089, - 0.023965582251548767, - 0.09051065146923065, - -0.010492709465324879, - -0.010640027932822704, - -0.04174468666315079, - 0.0015000661369413137, - -0.005619301460683346, - -0.04801660403609276, - 0.07297725975513458, - 0.04421119764447212, - 0.029680799692869186, - 0.044248875230550766, - 0.06206236407160759, - -0.006960523780435324, - -0.059761714190244675, - -0.08272796124219894, - 0.14419464766979218, - 0.061015497893095016, - -0.013569101691246033, - -0.06060367450118065, - -0.06195567548274994, - 0.09821299463510513, - -0.0053466870449483395, - -0.10537618398666382, - -0.059383925050497055, - 0.10277719050645828, - 0.16306942701339722, - -0.025835031643509865, - -0.029996497556567192, - 0.005888940766453743, - 0.13256876170635223, - 0.038057293742895126, - 0.11651652306318283, - 0.06195082142949104, - 0.1047007367014885, - 0.016978176310658455, - 0.031210927292704582, - 0.06324133276939392, - 0.0424971729516983, - 0.018749108538031578, - -0.03604646399617195, - 0.041535235941410065, - 0.0004186670994386077, - -0.010627089068293571, - 0.029011476784944534, - -0.024011215195059776, - 0.0014914039056748152, - -0.008591105230152607, - 0.03372807055711746, - -0.007432431913912296, - 0.027847113087773323, - -0.02181638590991497, - 0.06372219324111938, - 0.016094636172056198, - 0.0001664205628912896, - 0.07467986643314362, - 0.04773971810936928, - 0.020981866866350174, - 0.05578187480568886, - -0.08660785108804703, - -0.11086946725845337, - 0.027062853798270226, - -0.011498336680233479, - 0.010076425038278103, - 0.07281024754047394, - 0.028779448941349983, - -0.0022513512521982193, - 0.10478446632623672, - 0.044505927711725235, - -0.015915464609861374, - 0.05098680406808853, - -0.11171170324087143, - 0.1369580328464508, - 0.05428781360387802, - -0.017963018268346786, - 0.03188413381576538, - -0.06151900812983513, - 0.07348376512527466, - 0.07083126157522202, - -0.14331021904945374, - -0.07584619522094727, - 0.06422212719917297, - 0.0241533350199461, - -0.03761085495352745, - 0.12506811320781708, - -0.023752253502607346, - 0.001755036530084908, - 0.09748087078332901, - -0.07048944383859634, - -0.0653095692396164, - -0.037154119461774826, - 0.04394792392849922, - -0.08155908435583115, - 0.05932453274726868, - 0.020151883363723755, - -0.01049033086746931, - -0.012261648662388325, - 0.09844256937503815, - -0.007093452848494053, - -0.0038391880225390196, - 0.01670568436384201, - -0.02559264935553074, - 0.06542926281690598, - -0.04142296314239502, - 0.02087036520242691, - 0.006950828246772289, - 0.04439277946949005, - 0.054226797074079514, - 0.011732866056263447, - -0.033627741038799286, - -0.10067842155694962, - -0.003911444917321205, - 0.039438504725694656, - 0.07828150689601898, - -0.008904989808797836, - -0.023920999839901924, - -0.04549529775977135, - -0.0516778863966465, - 0.00099505006801337, - -0.012249048799276352, - 0.0849609225988388, - 0.00759790139272809, - 0.0008260492468252778, - 0.09692353010177612, - -0.0005662136245518923, - 0.017252637073397636, - -0.06549599021673203, - -0.025167036801576614, - 0.01781909354031086, - 0.04906206578016281, - -0.08635608851909637, - -0.049549639225006104, - 0.014585984870791435, - 0.021570555865764618, - -0.02042437717318535, - 0.01902623102068901, - 0.040436070412397385, - 0.026762712746858597, - 0.049159519374370575, - -0.07578486204147339, - 0.021188899874687195, - -0.12176697701215744, - -0.06806919723749161, - -0.03642034903168678, - 0.0004002218774985522, - -0.015886256471276283, - 0.06698358058929443, - 0.0039036013185977936, - 0.037194326519966125, - 0.015204844065010548, - -0.0767972469329834, - -0.07526036351919174, - 0.07649330794811249, - 0.0991264134645462, - -0.001367559190839529, - 0.06216452270746231, - 0.031130140647292137, - -0.04054833948612213, - 0.04654073342680931, - 0.056162938475608826, - 0.10860594362020493, - -0.019133972004055977, - 0.00453865947201848, - -0.077931247651577, - 0.08217664062976837, - 0.07550106942653656, - -0.1111370176076889, - -0.08311592042446136, - 0.00900371465831995, - -0.044097039848566055, - 0.01728678308427334, - -0.03302762284874916, - 0.01365702971816063, - 0.0205699373036623, - -0.007566655054688454, - -0.09120527654886246, - -0.07581083476543427, - 0.058440614491701126, - -0.10131945461034775, - -0.016129354014992714, - -0.08538387715816498, - 0.05188335105776787, - 0.11250221729278564, - 0.02571343630552292, - -0.046410802751779556, - -0.03351137414574623, - 0.051456283777952194, - -0.05524391308426857, - -0.02375953458249569, - 0.017551101744174957, - 0.015847980976104736, - -0.10280276089906693, - 0.028751088306307793, - -0.06517082452774048, - 0.05934521183371544, - -0.0794801115989685, - 0.15510199964046478, - -0.013200648128986359, - -0.06854457408189774, - -0.07437928766012192, - 0.025352315977215767, - -0.006819678470492363, - 0.03801553323864937, - 0.028141608461737633, - 0.061457544565200806, - 0.019665881991386414, - -0.0542270727455616, - 0.13810986280441284, - 0.020569251850247383, - -0.0248253270983696, - -0.07060646265745163, - -0.039414022117853165, - -0.05000360682606697, - 0.02745663933455944, - 0.03320255130529404, - -0.10911651700735092, - -0.031119652092456818, - 0.03785828873515129, - -0.03898182511329651, - 0.0671602189540863, - 0.13517501950263977, - 0.042723946273326874, - -0.12259938567876816 - ] - }, - "p244_052.wav": { - "name": "p244", - "embedding": [ - 0.02461729198694229, - 0.11220350861549377, - 0.00576367974281311, - 0.019884226843714714, - -0.04553502798080444, - 0.09078769385814667, - -0.1215575635433197, - 0.1318088173866272, - -0.07248298823833466, - 0.1112847551703453, - -0.08531473577022552, - 0.0903068482875824, - -0.046396393328905106, - -0.16560135781764984, - -0.0748433843255043, - 0.03916962072253227, - -0.023979267105460167, - -0.00828811526298523, - 0.019866470247507095, - -0.017199667170643806, - 0.034716784954071045, - 0.024099452421069145, - 0.031233252957463264, - 0.047742970287799835, - 0.02351890131831169, - 0.04149694740772247, - -0.0010612073820084333, - 0.06147298216819763, - 0.02914806455373764, - -0.0073667969554662704, - -0.0359785333275795, - 0.1282387673854828, - -0.04221896827220917, - 0.022699439898133278, - 0.05404910445213318, - 0.008744747377932072, - 0.00874701701104641, - -0.04250281676650047, - -0.0013972679153084755, - -0.014133111573755741, - -0.06006339192390442, - 0.07375790178775787, - 0.046959202736616135, - 0.015315026976168156, - 0.037660617381334305, - -0.0009997468441724777, - -0.005216027610003948, - -0.03204164654016495, - -0.10133330523967743, - 0.1442474126815796, - 0.054993636906147, - -0.019869307056069374, - -0.08211657404899597, - -0.05116325616836548, - 0.12014009058475494, - -0.022556878626346588, - -0.11318440735340118, - -0.016502240672707558, - 0.09668166935443878, - 0.16815432906150818, - -0.008910097181797028, - -0.02278093434870243, - 0.008447269909083843, - 0.11771362274885178, - 0.0171053446829319, - 0.0892338976264, - 0.05988588184118271, - 0.09027130901813507, - 0.002936731092631817, - 0.017418542876839638, - 0.03888275474309921, - 0.03919089213013649, - -0.016603533178567886, - -0.05297697335481644, - -0.008933966048061848, - -0.01466728001832962, - -0.01987205632030964, - 0.053971461951732635, - -0.007564156781882048, - -0.014675319194793701, - -0.03689700365066528, - -0.0019894482102245092, - -0.03175489977002144, - -0.003526933491230011, - -0.031240373849868774, - 0.04904472082853317, - -0.018115155398845673, - 0.006456083618104458, - 0.08571235090494156, - 0.061489421874284744, - -0.013132041320204735, - 0.04120257869362831, - -0.03525439277291298, - -0.053384676575660706, - -0.0025698337703943253, - 0.011682536453008652, - 0.0021088719367980957, - 0.103084035217762, - 0.015489468351006508, - -0.0075929369777441025, - 0.11186592280864716, - 0.048607371747493744, - 0.017590107396245003, - 0.025880703702569008, - -0.1165463998913765, - 0.11485552787780762, - 0.06032179296016693, - -0.006168113090097904, - 0.054958827793598175, - -0.020840175449848175, - 0.07374560832977295, - 0.08006364107131958, - -0.13088193535804749, - -0.049307700246572495, - 0.05015387758612633, - 0.053890161216259, - 0.017599359154701233, - 0.09057211875915527, - -0.006140542216598988, - -0.013789824210107327, - 0.07432764768600464, - -0.059044960886240005, - -0.06589166074991226, - -0.04651696979999542, - 0.059359584003686905, - -0.05485941097140312, - 0.04034537449479103, - 0.04481913894414902, - -0.004485502373427153, - -0.015887927263975143, - 0.04910779371857643, - -0.005915951449424028, - -0.0010451485868543386, - 0.05398301035165787, - -0.049914829432964325, - 0.025554336607456207, - -0.03148936852812767, - 0.024627970531582832, - 0.03483326733112335, - 0.04228203371167183, - 0.056894294917583466, - 0.02319403737783432, - -0.026692498475313187, - -0.07117032259702682, - -0.025391101837158203, - 0.07293614745140076, - 0.06483370065689087, - -0.012316869571805, - -0.05095524340867996, - -0.05656690150499344, - -0.053292274475097656, - 0.03591407835483551, - 0.014254285022616386, - 0.10420675575733185, - -0.012310061603784561, - -0.009402175433933735, - 0.08443333208560944, - 0.021613098680973053, - -0.012500266544520855, - -0.07796072214841843, - -0.007898930460214615, - -0.009853281080722809, - 0.02404339239001274, - -0.0710131824016571, - -0.06594668328762054, - 0.012925908900797367, - 0.033652301877737045, - -0.02251022681593895, - 0.02441975474357605, - 0.04228997230529785, - 0.011201804503798485, - 0.051938001066446304, - -0.08097703754901886, - 0.03697438910603523, - -0.09129761904478073, - -0.052359070628881454, - -0.0262919832020998, - 0.0056367493234574795, - -0.006701742764562368, - 0.0776686817407608, - 0.04400784522294998, - 0.010905489325523376, - 0.04755881801247597, - -0.081350177526474, - -0.050006281584501266, - 0.06667609512805939, - 0.0676199346780777, - 0.005168521776795387, - 0.07405666261911392, - 0.06712150573730469, - -0.0817323848605156, - 0.07908907532691956, - 0.06922781467437744, - 0.07884333282709122, - -0.04767966270446777, - 0.013489321805536747, - -0.04463464021682739, - 0.03492811322212219, - 0.06259921193122864, - -0.12189766764640808, - -0.11362707614898682, - -0.02967889793217182, - -0.0356282964348793, - 0.035641077905893326, - -0.01859964244067669, - 0.009658269584178925, - -0.005589451640844345, - -0.03788786008954048, - -0.08369266986846924, - -0.09335709363222122, - 0.07418875396251678, - -0.055459871888160706, - -0.023473430424928665, - -0.06079328805208206, - 0.046317920088768005, - 0.07799415290355682, - 0.014707422815263271, - -0.024482211098074913, - 0.0015435069799423218, - 0.033230993896722794, - -0.06597688794136047, - -0.036313995718955994, - 0.04239746183156967, - -0.006132114678621292, - -0.10634181648492813, - 0.0341251865029335, - -0.07060961425304413, - 0.11117818206548691, - -0.041971705853939056, - 0.16613945364952087, - -0.016668274998664856, - -0.06820325553417206, - -0.0623968169093132, - 0.02231348678469658, - -0.026286892592906952, - 0.017103224992752075, - 0.02587055414915085, - 0.04509027674794197, - -0.012744843028485775, - -0.016076557338237762, - 0.1124788373708725, - 0.027185829356312752, - -0.05542168766260147, - -0.05452360212802887, - -0.021760813891887665, - -0.033542174845933914, - 0.01871402934193611, - 0.01952582411468029, - -0.09221219271421432, - -0.027059849351644516, - 0.01278475858271122, - -0.021847978234291077, - 0.07726338505744934, - 0.12456287443637848, - 0.07813167572021484, - -0.1188732385635376 - ] - }, - "p244_353.wav": { - "name": "p244", - "embedding": [ - 0.043939970433712006, - 0.10691487789154053, - -0.03382353112101555, - 0.024774219840765, - -0.06259916722774506, - 0.04711415618658066, - -0.14136506617069244, - 0.14516456425189972, - -0.02197573333978653, - 0.12541812658309937, - -0.06838381290435791, - 0.12074869871139526, - -0.029490657150745392, - -0.1730169951915741, - -0.0169266015291214, - 0.06136977672576904, - -0.024157673120498657, - -0.027413394302129745, - -0.023489084094762802, - -0.03913910314440727, - 0.026756517589092255, - 0.027055714279413223, - 0.02038307674229145, - 0.006067059934139252, - 0.027422845363616943, - 0.07447230815887451, - -0.01915745995938778, - 0.012766714207828045, - -0.013059066608548164, - -0.020452678203582764, - -0.042938947677612305, - 0.09641903638839722, - -0.04826776683330536, - -0.001437250291928649, - 0.04582596942782402, - -0.011489923112094402, - -0.01030330266803503, - -0.05598995089530945, - -0.00026965251890942454, - -0.004197809379547834, - -0.04700184985995293, - 0.07193886488676071, - 0.024902895092964172, - -0.026057027280330658, - 0.04780525714159012, - 0.016849588602781296, - -0.012146556749939919, - -0.031586647033691406, - -0.10496874153614044, - 0.14691615104675293, - 0.07423444092273712, - -0.0008038997184485197, - -0.08242611587047577, - -0.038067616522312164, - 0.09638342261314392, - -0.0076970322988927364, - -0.09671672433614731, - -0.03786900267004967, - 0.07513648271560669, - 0.13381272554397583, - -0.029442651197314262, - -0.03760174661874771, - 0.03242933750152588, - 0.12780199944972992, - 0.05309326946735382, - 0.07383023947477341, - 0.07119062542915344, - 0.1162438690662384, - -0.03798314929008484, - 0.002081445185467601, - 0.05844908207654953, - 0.061394400894641876, - 0.060104578733444214, - -0.02254362404346466, - 0.00842240173369646, - -0.02575605735182762, - -0.01775575987994671, - -0.017861973494291306, - -0.032954730093479156, - -0.04290040582418442, - -0.029251541942358017, - -0.006941178347915411, - -0.004586758092045784, - 0.02825237065553665, - -0.02763018012046814, - 0.044173017144203186, - 0.0750226154923439, - -0.032377734780311584, - 0.07098361104726791, - 0.04978755861520767, - -0.003548018168658018, - 0.058121442794799805, - -0.09239117801189423, - -0.060137294232845306, - 0.05180661007761955, - -0.002339379396289587, - 0.018108706921339035, - 0.07394929230213165, - 0.04876463860273361, - -0.011561593972146511, - 0.11747635900974274, - 0.049650516360998154, - 0.0027373291086405516, - 0.014396516606211662, - -0.0818329006433487, - 0.13982510566711426, - 0.09525132179260254, - -0.04213577136397362, - 0.042720548808574677, - -0.0363873690366745, - 0.04285022243857384, - 0.062207844108343124, - -0.12231659144163132, - -0.059776198118925095, - 0.017880823463201523, - 0.02003583498299122, - -0.01886848174035549, - 0.10633452981710434, - 0.008891570381820202, - 0.044902052730321884, - 0.10354335606098175, - -0.08470162749290466, - -0.07425521314144135, - -0.034826043993234634, - 0.047132622450590134, - -0.08839268982410431, - 0.06450497359037399, - 0.08593564480543137, - 0.0030951513908803463, - 0.01817740686237812, - 0.06573298573493958, - 0.0024766316637396812, - 0.0007607733714394271, - 0.007003994192928076, - -0.03736093267798424, - 0.01061282865703106, - -0.01007426530122757, - 0.0012555706780403852, - 0.025982683524489403, - 0.020591700449585915, - 0.05436306446790695, - -0.0006632544100284576, - 0.005667123943567276, - -0.11041754484176636, - 0.015894755721092224, - 0.047319523990154266, - 0.07157841324806213, - -0.017311550676822662, - -0.027808040380477905, - -0.02620134875178337, - -0.06364040821790695, - 0.005542825907468796, - -0.007868200540542603, - 0.06593191623687744, - -0.03174726665019989, - -0.001960505498573184, - 0.10873977839946747, - 0.04383071884512901, - 0.0022285464219748974, - -0.04395073652267456, - -0.020196333527565002, - 0.012962227687239647, - 0.04972103238105774, - -0.09548301994800568, - -0.08497324585914612, - -0.028217127546668053, - 0.033452823758125305, - -0.016314763575792313, - 0.07153943181037903, - 0.04869813472032547, - 0.010796202346682549, - 0.012075768783688545, - -0.06252385675907135, - 0.024236634373664856, - -0.07974513620138168, - -0.05849669873714447, - -0.020876843482255936, - -0.03045497089624405, - -0.031504787504673004, - 0.07692693173885345, - 0.030361225828528404, - 0.05152229219675064, - -0.034591592848300934, - -0.05497196316719055, - -0.07747530937194824, - 0.03953031823039055, - 0.058082230389118195, - -0.027342036366462708, - 0.035873111337423325, - 0.05944370478391647, - -0.03729637712240219, - 0.0356731116771698, - 0.06934027373790741, - 0.09381049871444702, - -0.037000373005867004, - 0.018823441118001938, - -0.06490135192871094, - 0.07236181944608688, - 0.09311109781265259, - -0.08784578740596771, - -0.08716148138046265, - -0.05564112961292267, - -0.05037158355116844, - 0.023461824283003807, - -0.0335405170917511, - 0.01222970336675644, - 0.02390909194946289, - -0.012353017926216125, - -0.09205956757068634, - -0.11025117337703705, - 0.0797870084643364, - -0.06430177390575409, - 0.009054852649569511, - -0.07965712249279022, - 0.05632390081882477, - 0.07357460260391235, - 0.013699891977012157, - -0.043824464082717896, - -0.0116160549223423, - 0.03202202543616295, - -0.016615988686680794, - 0.016063343733549118, - 0.053188424557447433, - 0.04957496374845505, - -0.11299188435077667, - -0.0062429821118712425, - -0.06451284140348434, - 0.07691487669944763, - -0.03716975077986717, - 0.1552359163761139, - 0.02833961695432663, - -0.03954467177391052, - -0.08787109702825546, - 0.03880289942026138, - -0.013706794008612633, - 0.04677604138851166, - 0.0314050018787384, - 0.06105167791247368, - 0.020481619983911514, - -0.05866445600986481, - 0.10519498586654663, - 0.04149964451789856, - -0.04062721133232117, - -0.07529982924461365, - -0.04706866666674614, - -0.04687320813536644, - 0.030921760946512222, - 0.01699727028608322, - -0.08952122926712036, - -0.020645545795559883, - 0.018967652693390846, - 0.0038050522562116385, - 0.07898121327161789, - 0.12863728404045105, - 0.06583650410175323, - -0.1036527007818222 - ] - }, - "p244_164.wav": { - "name": "p244", - "embedding": [ - 0.0594656839966774, - 0.10709811747074127, - -0.009478701278567314, - 0.014008665457367897, - -0.04990536719560623, - 0.07834392786026001, - -0.14610826969146729, - 0.15572059154510498, - -0.03834958374500275, - 0.14458638429641724, - -0.05045820772647858, - 0.11260189116001129, - -0.020351529121398926, - -0.17301446199417114, - -0.019511312246322632, - 0.060571715235710144, - -0.04906829446554184, - -0.03699567914009094, - -0.018836725503206253, - -0.026801511645317078, - 0.015098942443728447, - 0.03914260119199753, - 0.020265765488147736, - 0.011904153972864151, - 0.055603377521038055, - 0.07252798974514008, - -0.018950436264276505, - 0.028585443273186684, - -0.010216201655566692, - -0.07654242217540741, - -0.03248701989650726, - 0.09222359955310822, - -0.06877975165843964, - 0.017660843208432198, - 0.0494048148393631, - -0.01843917928636074, - -0.010575932450592518, - -0.06733650714159012, - -0.02305220626294613, - 6.938248407095671e-05, - -0.04125489294528961, - 0.09556032717227936, - 0.03692626953125, - -0.010760156437754631, - 0.01643647439777851, - 0.02905668318271637, - 0.003687824122607708, - -0.05119138956069946, - -0.10591503977775574, - 0.1611585021018982, - 0.05903426185250282, - -0.002332336502149701, - -0.07803048193454742, - -0.0695740357041359, - 0.0932781994342804, - -0.011613067239522934, - -0.11296188831329346, - -0.029901567846536636, - 0.07225608825683594, - 0.14319384098052979, - -0.030803438276052475, - -0.0417182520031929, - 0.025613486766815186, - 0.128589928150177, - 0.05874600261449814, - 0.09313248097896576, - 0.06954358518123627, - 0.11018253117799759, - -0.02993832528591156, - 0.022344328463077545, - 0.057668283581733704, - 0.057046227157115936, - 0.05641727149486542, - -0.017789684236049652, - 0.016078609973192215, - -0.0170163344591856, - -0.020496416836977005, - -0.02113696187734604, - -0.013186370953917503, - -0.025964956730604172, - -0.0121114831417799, - 0.0024513863027095795, - 0.008113515563309193, - 0.03615376353263855, - -0.011661062017083168, - 0.04284850135445595, - 0.044131629168987274, - -0.018957529217004776, - 0.08339321613311768, - 0.03797092288732529, - 0.021465379744768143, - 0.0708024799823761, - -0.09454603493213654, - -0.0607772096991539, - 0.0449020117521286, - 0.001478975173085928, - 0.03833973407745361, - 0.08255483955144882, - 0.04951360821723938, - -0.009843872860074043, - 0.12479770183563232, - 0.04491530358791351, - 0.006890221498906612, - 0.006743225269019604, - -0.09826315939426422, - 0.14281581342220306, - 0.06024184450507164, - -0.035629577934741974, - 0.06203886866569519, - -0.049200527369976044, - 0.0762380063533783, - 0.07117051631212234, - -0.15567734837532043, - -0.07161803543567657, - 0.020707186311483383, - 0.009617948904633522, - -0.026887325569987297, - 0.1291286051273346, - 0.0006019645370543003, - 0.03635036200284958, - 0.08926235884428024, - -0.0951957032084465, - -0.0520201250910759, - -0.011026940308511257, - 0.05075107142329216, - -0.10613619536161423, - 0.06694957613945007, - 0.0646403357386589, - -0.02390226349234581, - 0.03278383985161781, - 0.08511307835578918, - -0.0027913691010326147, - 0.004280788358300924, - 0.014742509461939335, - -0.029447827488183975, - 0.009352752938866615, - -0.024173688143491745, - 0.019747614860534668, - 0.011975567787885666, - 0.01541026122868061, - 0.051368460059165955, - -0.010944240726530552, - -0.021711276844143867, - -0.10878575593233109, - 0.01868097484111786, - 0.031388815492391586, - 0.07991840690374374, - -0.01489272527396679, - -0.029355479404330254, - -0.021170616149902344, - -0.0625380128622055, - 0.009269311092793941, - -0.0035207602195441723, - 0.0640183687210083, - -0.006121315993368626, - 0.003834654577076435, - 0.11720642447471619, - 0.06327647715806961, - 0.002736604306846857, - -0.059557244181632996, - -0.024205023422837257, - 0.015541747212409973, - 0.0673469677567482, - -0.09150288999080658, - -0.06817245483398438, - -0.001982145244255662, - 0.020541556179523468, - -0.023838162422180176, - 0.07395950704813004, - 0.04975065961480141, - 0.032182611525058746, - 0.014874253422021866, - -0.0633438229560852, - 0.016460036858916283, - -0.08519095182418823, - -0.07817889750003815, - -0.01045701839029789, - -0.01665334962308407, - -0.04219694808125496, - 0.0875631719827652, - 0.021297477185726166, - 0.05953603237867355, - -0.03363807871937752, - -0.05494934320449829, - -0.06964477896690369, - 0.05072474107146263, - 0.056322548538446426, - -0.02381245605647564, - 0.02447160705924034, - 0.05777783691883087, - -0.03476788476109505, - 0.040135473012924194, - 0.059586044400930405, - 0.11007022112607956, - -0.04677971452474594, - 0.032591432332992554, - -0.06050638109445572, - 0.07805934548377991, - 0.07897111773490906, - -0.0944739356637001, - -0.07798964530229568, - -0.02272661402821541, - -0.062202565371990204, - 0.02518220990896225, - -0.021116480231285095, - 0.009551675990223885, - 0.011311385780572891, - -0.012302102521061897, - -0.09029628336429596, - -0.09280556440353394, - 0.08553604781627655, - -0.07617902010679245, - -0.0009349153842777014, - -0.09397603571414948, - 0.0600925013422966, - 0.08066295087337494, - 0.06040782481431961, - -0.024022653698921204, - -0.014285099692642689, - 0.05054769665002823, - -0.01797836646437645, - 0.017552226781845093, - 0.085203155875206, - 0.040570832788944244, - -0.10100072622299194, - -0.007374167907983065, - -0.0655958279967308, - 0.06040674448013306, - -0.04505102336406708, - 0.1660071611404419, - 0.009140953421592712, - -0.06578747183084488, - -0.08166655898094177, - 0.027246372774243355, - -0.019429907202720642, - 0.043643347918987274, - 0.030838103964924812, - 0.057012416422367096, - 0.058647431433200836, - -0.038849279284477234, - 0.10850533097982407, - 0.040856122970581055, - -0.026720594614744186, - -0.051427848637104034, - -0.055083267390728, - -0.041140928864479065, - 0.04029040038585663, - 0.0024347722064703703, - -0.1077069416642189, - -0.014998281374573708, - 0.03404555842280388, - 0.004768904764205217, - 0.0754873976111412, - 0.14448189735412598, - 0.06581549346446991, - -0.12508776783943176 - ] - }, - "p244_230.wav": { - "name": "p244", - "embedding": [ - 0.056013286113739014, - 0.03714391589164734, - -0.006162726785987616, - 0.0007905091042630374, - -0.025705358013510704, - 0.06713633239269257, - -0.14226174354553223, - 0.11263689398765564, - -0.05571219325065613, - 0.08893713355064392, - -0.055112458765506744, - 0.0731644481420517, - -0.010182168334722519, - -0.14791817963123322, - -0.02855006977915764, - 0.06242036819458008, - -0.021413318812847137, - -0.022249605506658554, - -0.04029892757534981, - -0.006370568182319403, - 0.008403691463172436, - 0.031938906759023666, - 0.00801350362598896, - -0.01641983352601528, - 0.027265042066574097, - 0.05362307280302048, - -0.00018361459660809487, - 0.01898009516298771, - -0.027236532419919968, - 0.0019029267132282257, - 0.0025387518107891083, - 0.09532196819782257, - -0.037012532353401184, - -0.030520524829626083, - 0.05299223214387894, - 0.010502032935619354, - 0.0012134239077568054, - -0.09347701072692871, - -0.004099187906831503, - -0.006725732237100601, - -0.06607513129711151, - 0.07849696278572083, - 0.055674102157354355, - 0.01100136712193489, - 0.01824071630835533, - 0.006606068462133408, - -0.004261543974280357, - -0.05974356457591057, - -0.11420981585979462, - 0.15129908919334412, - 0.02386198565363884, - 0.03897732496261597, - -0.10510300099849701, - -0.029018577188253403, - 0.07838630676269531, - 0.00835583359003067, - -0.056262172758579254, - -0.07234429568052292, - 0.04734432324767113, - 0.15339669585227966, - -0.002796964254230261, - -0.03464989364147186, - 0.027139555662870407, - 0.09072297811508179, - 0.03211933374404907, - 0.06043105572462082, - 0.09267735481262207, - 0.0948609709739685, - 0.01259525865316391, - 0.026584986597299576, - 0.05674136430025101, - 0.027040211483836174, - 0.017330823466181755, - -0.025926560163497925, - 0.03535137325525284, - -0.02139151841402054, - -0.03667180985212326, - 0.005609530955553055, - -0.02083970420062542, - -0.045055702328681946, - 0.013960529118776321, - 0.012674015015363693, - 0.024131156504154205, - 0.05503500625491142, - -0.04470612108707428, - 0.03360062465071678, - 0.03432310372591019, - -0.01707579381763935, - 0.08083848655223846, - 0.044244568794965744, - 0.004788603167980909, - 0.020985690876841545, - -0.060382239520549774, - -0.08003890514373779, - 0.022601094096899033, - 0.012500055134296417, - 0.01914467290043831, - 0.030573755502700806, - 0.01478942297399044, - -0.02975829504430294, - 0.0911652073264122, - -0.005542195402085781, - 0.015651334077119827, - 0.008869946002960205, - -0.07910382002592087, - 0.10676756501197815, - 0.0715847983956337, - -0.01695254072546959, - 0.021068355068564415, - -0.046003829687833786, - 0.010163719765841961, - 0.07535072416067123, - -0.10606637597084045, - -0.058830954134464264, - 0.055338650941848755, - 0.017236042767763138, - 0.023401563987135887, - 0.14160703122615814, - 0.02438358962535858, - 0.010803459212183952, - 0.07776294648647308, - -0.09656594693660736, - -0.053666189312934875, - 0.007733501028269529, - 0.02650153636932373, - -0.03803712874650955, - 0.030671386048197746, - 0.05915973335504532, - 0.012527081184089184, - -0.0209103561937809, - 0.0619325265288353, - 0.00918325874954462, - 0.009638451039791107, - -0.031693607568740845, - 0.013476742431521416, - 0.07048434019088745, - -0.006475945934653282, - -0.022134929895401, - 0.03836553916335106, - 0.0501384399831295, - 0.026009608060121536, - 0.018488086760044098, - -0.03790687769651413, - -0.11187230050563812, - -0.029584437608718872, - 0.05646776407957077, - 0.06525199115276337, - -0.04061385989189148, - -0.030117198824882507, - -0.06170855462551117, - -0.030808523297309875, - -0.012271692976355553, - -0.002872450975701213, - 0.08010086417198181, - 0.042493920773267746, - -0.009057383984327316, - 0.08383893221616745, - -0.007440716028213501, - 0.03570020943880081, - -0.034287407994270325, - -0.004831552505493164, - 0.03721839562058449, - 0.03959018737077713, - -0.032654035836458206, - -0.05974603816866875, - -0.003963192459195852, - 0.014841060154139996, - -0.02452170103788376, - 0.0013139372458681464, - 0.0249284990131855, - 0.0124655244871974, - -0.007256511598825455, - -0.0891616940498352, - 0.0518822968006134, - -0.09128762781620026, - -0.01488957554101944, - 0.03961503505706787, - -0.02482362650334835, - -0.02994430810213089, - 0.09405364841222763, - 0.022211674600839615, - 0.03581884503364563, - -0.03610766679048538, - -0.08008735626935959, - -0.027728348970413208, - 0.04441916570067406, - 0.06797396391630173, - -0.03148669749498367, - 0.00954367034137249, - -0.0015327533474192023, - 0.005271201487630606, - 0.01340256817638874, - 0.056852132081985474, - 0.07405798882246017, - -0.03730624169111252, - -0.046241119503974915, - -0.022990159690380096, - 0.11287641525268555, - 0.035534534603357315, - -0.0650450587272644, - -0.05100494250655174, - 0.011640718206763268, - -0.034434724599123, - 0.009442973881959915, - -0.023103205487132072, - 0.019912462681531906, - 0.04292803257703781, - -0.03275977075099945, - -0.1272137612104416, - -0.07149083912372589, - 0.04267006739974022, - -0.07501514256000519, - -0.004336903803050518, - -0.07462344318628311, - 0.038579944521188736, - 0.0790209099650383, - 0.016775555908679962, - -0.01168876327574253, - -0.03275301679968834, - -0.004615466110408306, - -0.06482589244842529, - -0.016674190759658813, - 0.012881053611636162, - 0.030085651203989983, - -0.07199843227863312, - -0.0031549804843962193, - -0.06372497975826263, - 0.07417309284210205, - -0.03465184196829796, - 0.11975656449794769, - 0.0172154288738966, - -0.04511001706123352, - -0.08861349523067474, - -0.00874839536845684, - -0.0005107658798806369, - 0.05078420042991638, - 0.03108431026339531, - 0.04208550974726677, - 0.042323093861341476, - -0.041673868894577026, - 0.08590114116668701, - 0.048882972449064255, - -0.025937674567103386, - -0.054015349596738815, - -0.026187313720583916, - -0.025463899597525597, - 0.038449134677648544, - -0.030729934573173523, - -0.04977121576666832, - 0.020411644130945206, - 0.04302361235022545, - 0.008658559061586857, - 0.05402036011219025, - 0.09839686751365662, - 0.03958921879529953, - -0.08683746308088303 - ] - }, - "p244_178.wav": { - "name": "p244", - "embedding": [ - 0.03712261840701103, - 0.10299722105264664, - -0.00403292803093791, - 0.026907529681921005, - -0.05853986740112305, - 0.03755905106663704, - -0.12841719388961792, - 0.138652503490448, - -0.02681763470172882, - 0.13290223479270935, - -0.08146893233060837, - 0.12259525805711746, - -0.04527243226766586, - -0.19801700115203857, - -0.01635902002453804, - 0.06641770899295807, - -0.014850256964564323, - -0.007043277844786644, - -0.013415524736046791, - -0.021864118054509163, - 0.02971971407532692, - 0.04869363456964493, - 0.032104432582855225, - -0.0032524587586522102, - 0.039779260754585266, - 0.0765891820192337, - -0.0010581850074231625, - 0.04524082690477371, - 0.0003628884442150593, - -0.06143292412161827, - -0.038828812539577484, - 0.10332119464874268, - -0.054013416171073914, - 0.02078835293650627, - 0.052907370030879974, - -0.00028266478329896927, - -0.014157673344016075, - -0.025893185287714005, - -0.0017233524704352021, - 0.0013958578929305077, - -0.0463557168841362, - 0.06737864017486572, - 0.01205834373831749, - -3.2813288271427155e-05, - 0.04619474709033966, - 0.051478177309036255, - -0.004143240861594677, - -0.048191919922828674, - -0.10256132483482361, - 0.1568867266178131, - 0.050495970994234085, - -0.007260498590767384, - -0.07333797961473465, - -0.08386564254760742, - 0.08568930625915527, - -0.018067941069602966, - -0.11281709372997284, - -0.03989407420158386, - 0.10002265870571136, - 0.14609214663505554, - -0.02461106702685356, - -0.053070612251758575, - 0.012777771800756454, - 0.11683471500873566, - 0.023663681000471115, - 0.09530059248209, - 0.0567760095000267, - 0.0915597677230835, - -0.028181027621030807, - 0.012626001611351967, - 0.04473212733864784, - 0.062812939286232, - 0.06605339795351028, - -0.01565207540988922, - 0.006290452554821968, - -0.015162407420575619, - -0.003137855790555477, - 0.011556969955563545, - -0.01576746255159378, - -0.022488679736852646, - -0.020964205265045166, - 0.0021488498896360397, - -0.010705877095460892, - -0.01569433882832527, - -0.00373866967856884, - 0.04473067820072174, - 0.050707243382930756, - -0.0014077355153858662, - 0.08103881776332855, - 0.039343755692243576, - -0.007086962927132845, - 0.06777282804250717, - -0.08286634087562561, - -0.05878179147839546, - 0.03190059959888458, - -0.004369435366243124, - 0.034629739820957184, - 0.07383552938699722, - 0.03243429213762283, - -0.005696788430213928, - 0.11846515536308289, - 0.04383081942796707, - 0.011523867957293987, - 0.01973215863108635, - -0.10149984061717987, - 0.13023534417152405, - 0.08018310368061066, - -0.018835747614502907, - 0.06438010185956955, - -0.03974708169698715, - 0.06656348705291748, - 0.06779806315898895, - -0.13369201123714447, - -0.06812851130962372, - -0.009644665755331516, - 0.00868218857795, - -0.029070354998111725, - 0.11089421808719635, - -0.018454821780323982, - 0.02712063118815422, - 0.11820265650749207, - -0.1116076409816742, - -0.06902912259101868, - -0.020521564409136772, - 0.02741391584277153, - -0.11555635184049606, - 0.05735808610916138, - 0.07042264938354492, - -0.02060883305966854, - 0.03749286010861397, - 0.08846522867679596, - -0.0023412886075675488, - 0.031236154958605766, - 0.005439474247395992, - -0.05126297101378441, - -0.020799510180950165, - -0.03759344667196274, - 0.005050658714026213, - 0.0493328683078289, - 0.03366320580244064, - 0.06276095658540726, - 0.0029723765328526497, - -0.040692634880542755, - -0.12779691815376282, - 0.006258119363337755, - 0.055015888065099716, - 0.053064413368701935, - -0.02270687371492386, - -0.02574940398335457, - -0.024883266538381577, - -0.06726200133562088, - 0.029306646436452866, - 0.0072535243816673756, - 0.06752286106348038, - -0.02773122861981392, - -0.008305350318551064, - 0.12045978009700775, - 0.04753173887729645, - -0.019304681569337845, - -0.07876787334680557, - -0.04941553622484207, - 0.002045764122158289, - 0.03578618913888931, - -0.12068357318639755, - -0.07415036857128143, - -0.024593252688646317, - 0.03917188569903374, - -0.016258222982287407, - 0.067776620388031, - 0.0617227777838707, - 0.018349483609199524, - 0.023837992921471596, - -0.04080554097890854, - 0.0026069162413477898, - -0.08595094829797745, - -0.09882542490959167, - -0.011610809713602066, - -0.02239689975976944, - -0.02791624143719673, - 0.07917069643735886, - 0.002631774637848139, - 0.04317404329776764, - -0.03080374374985695, - -0.0523606538772583, - -0.08598465472459793, - 0.05262487009167671, - 0.04452838748693466, - 0.004893545061349869, - 0.05870331823825836, - 0.042578838765621185, - -0.08084826916456223, - 0.07944075763225555, - 0.061727993190288544, - 0.12253653258085251, - -0.04733484238386154, - 0.05089572072029114, - -0.06677445769309998, - 0.05795943737030029, - 0.09437147527933121, - -0.08475182950496674, - -0.0939042940735817, - -0.0475880429148674, - -0.0678853988647461, - 0.06170334294438362, - -0.02545233443379402, - 0.0018410562770441175, - 0.02366887778043747, - -0.005163310095667839, - -0.07524684071540833, - -0.08914919942617416, - 0.0695025697350502, - -0.037062037736177444, - -0.003804852720350027, - -0.07871198654174805, - 0.06456378102302551, - 0.06850453466176987, - 0.04466533660888672, - -0.02215014584362507, - -0.014458067715168, - 0.05620088428258896, - -0.046637795865535736, - -0.0033499212004244328, - 0.06430047750473022, - 0.04652746021747589, - -0.06467356532812119, - -0.00737482775002718, - -0.08667854964733124, - 0.057117097079753876, - -0.047693487256765366, - 0.16161498427391052, - -0.0028951384592801332, - -0.06593134999275208, - -0.07063286006450653, - 0.03259924054145813, - -0.023492828011512756, - 0.03652738407254219, - 0.03287685662508011, - 0.05605044215917587, - 0.0444687083363533, - -0.050842177122831345, - 0.12692990899085999, - 0.035019032657146454, - -0.0317072719335556, - -0.04341932758688927, - -0.05827448517084122, - -0.05472496151924133, - 0.029848232865333557, - -0.01177220605313778, - -0.1171531230211258, - -0.024804072454571724, - 0.022816404700279236, - 0.01220932137221098, - 0.05075586214661598, - 0.1443537473678589, - 0.04555417224764824, - -0.1103561520576477 - ] - }, - "p244_040.wav": { - "name": "p244", - "embedding": [ - 0.04495055601000786, - 0.08091925084590912, - -0.023899100720882416, - 0.06364770233631134, - 0.0043339719995856285, - 0.017842553555965424, - -0.15235336124897003, - 0.10670260339975357, - 0.007963153533637524, - 0.12191521376371384, - -0.08412328362464905, - 0.10776207596063614, - -0.0026113111525774, - -0.19686566293239594, - -0.025430435314774513, - 0.04363745450973511, - 0.0063882204703986645, - -0.0392884835600853, - 0.04481268301606178, - 0.020669160410761833, - 0.06594237685203552, - 0.0764748603105545, - 0.004484226461499929, - -0.007977046072483063, - 0.030034303665161133, - 0.037923891097307205, - 0.002517371205613017, - 0.04114250838756561, - 0.0273317638784647, - 0.012979288585484028, - 0.014537165872752666, - 0.1215284988284111, - -0.018760859966278076, - 0.010456711985170841, - 0.03460221737623215, - 0.021090570837259293, - -0.003616174915805459, - -0.05582403019070625, - -0.0283343605697155, - 0.006691006477922201, - -0.07339166104793549, - 0.06644338369369507, - 0.05084121599793434, - -0.02697248011827469, - 0.04172699525952339, - 0.023947030305862427, - -0.01215349417179823, - -0.038375936448574066, - -0.0995880514383316, - 0.15816575288772583, - 0.06119965761899948, - 0.03348084166646004, - -0.08770403265953064, - -0.05057140439748764, - 0.07704555243253708, - 0.044308632612228394, - -0.046811506152153015, - -0.013155868276953697, - 0.08359432965517044, - 0.18490557372570038, - 0.013240848667919636, - -0.03752153739333153, - 0.046499382704496384, - 0.13724452257156372, - 0.06937169283628464, - 0.06601040065288544, - 0.07093054801225662, - 0.11323708295822144, - 0.018576711416244507, - -0.0031576817855238914, - 0.0498509481549263, - 0.08755046129226685, - 0.014901616610586643, - -0.058390967547893524, - -0.019455134868621826, - 0.033823806792497635, - -0.06609778106212616, - -0.005165450274944305, - -0.009029597975313663, - -0.005711965728551149, - 0.00858728401362896, - -0.013741516508162022, - -0.005588752217590809, - 0.06467785686254501, - -0.028528055176138878, - 0.00831794273108244, - 0.08257483690977097, - -0.03213237598538399, - 0.060412608087062836, - 0.036047499626874924, - 0.03468085080385208, - 0.03456924483180046, - -0.08877044171094894, - -0.10367810726165771, - 0.018753085285425186, - 0.019932083785533905, - 0.001656953594647348, - 0.0951651781797409, - 0.06465445458889008, - -0.02606094628572464, - 0.12595856189727783, - -0.010712393559515476, - -0.014769189059734344, - 0.009770405478775501, - -0.09444763511419296, - 0.10428347438573837, - 0.0815771222114563, - -0.02266279049217701, - 0.0435517318546772, - -0.051708173006772995, - 0.024538608267903328, - 0.07642997056245804, - -0.14907562732696533, - -0.05421648919582367, - 0.08253740519285202, - 0.03526829183101654, - 0.01327831856906414, - 0.1492481231689453, - 0.03444350138306618, - 0.03188977390527725, - 0.08572719991207123, - -0.08569172769784927, - -0.09323955327272415, - -0.07331091910600662, - 0.07598268240690231, - -0.07419396936893463, - 0.08765041083097458, - 0.028623564168810844, - -0.001634847023524344, - -0.03797255828976631, - 0.0289253331720829, - -0.02151227928698063, - 0.029429927468299866, - -0.05495020002126694, - -0.015399664640426636, - 0.07979043573141098, - -0.0740356594324112, - 0.021387577056884766, - 0.006761624943464994, - -0.01709704101085663, - 0.05385821685194969, - 0.03471032530069351, - -0.03326821327209473, - -0.12563538551330566, - 0.003685401752591133, - 0.05497492477297783, - 0.09479479491710663, - -0.019053932279348373, - -0.07465942949056625, - -0.06583745777606964, - -0.05240589380264282, - 0.037893157452344894, - -0.028790488839149475, - 0.06153125315904617, - 0.038089219480752945, - -0.01391951460391283, - 0.10477640479803085, - -0.047057848423719406, - 0.030479364097118378, - -0.0016953053418546915, - -0.015339018777012825, - -0.007733749225735664, - 0.018341461196541786, - -0.0906587690114975, - -0.08532994240522385, - -0.02004626952111721, - -0.011209310963749886, - -0.019155094400048256, - 0.006984043400734663, - 0.00710704131051898, - 0.025630448013544083, - 0.0109371617436409, - -0.07828947901725769, - -0.02800135686993599, - -0.11755731701850891, - -0.07833923399448395, - -0.0259071234613657, - 0.02926010638475418, - -0.0016416204161942005, - 0.07786545902490616, - 0.04187348112463951, - 0.020147088915109634, - 0.0015260165091603994, - -0.048953574150800705, - -0.0736822634935379, - 0.03856421262025833, - 0.070896677672863, - -0.004274791106581688, - 0.05022195726633072, - 0.037424735724925995, - -0.024672996252775192, - 0.027671197429299355, - 0.04090285301208496, - 0.07970910519361496, - -0.006848360877484083, - -0.022482862696051598, - -0.06558993458747864, - 0.13110531866550446, - 0.11166006326675415, - -0.08023499697446823, - -0.08536139130592346, - -0.023370882496237755, - -0.08703171461820602, - 0.009509020484983921, - -0.02097439020872116, - 0.028122292831540108, - -0.00030433348729275167, - -0.03710223734378815, - -0.11090395599603653, - -0.09562809020280838, - 0.025277476757764816, - -0.05576304718852043, - -0.05077287554740906, - -0.10832804441452026, - 0.04808374494314194, - 0.09711091220378876, - 0.01782788150012493, - -0.02110099047422409, - -0.03539315611124039, - 0.030252281576395035, - -0.06695185601711273, - -0.03145667165517807, - 0.05306421220302582, - 0.02451188676059246, - -0.13823451101779938, - -0.019514748826622963, - -0.03546757251024246, - 0.09687231481075287, - -0.09072501212358475, - 0.101354219019413, - 0.021578939631581306, - -0.08464367687702179, - -0.10189229995012283, - 0.039914533495903015, - 0.04118196293711662, - 0.05118982493877411, - 0.008239515125751495, - 0.030299313366413116, - 0.018764406442642212, - -0.07884528487920761, - 0.09468279033899307, - 0.04409037530422211, - 0.01662810891866684, - -0.09230504930019379, - -0.05334858596324921, - -0.012485414743423462, - 0.056828539818525314, - 0.015249905176460743, - -0.05182284861803055, - -0.016369830816984177, - 0.035126689821481705, - -0.006698464043438435, - 0.030547412112355232, - 0.11847157776355743, - 0.03373018279671669, - -0.12432920932769775 - ] - }, - "p244_112.wav": { - "name": "p244", - "embedding": [ - -0.0009802263230085373, - 0.08174587786197662, - -0.022297613322734833, - 0.05671565979719162, - -0.07533954083919525, - 0.04122024402022362, - -0.07901707291603088, - 0.07334195077419281, - -0.040008895099163055, - 0.09940716624259949, - -0.074732705950737, - 0.10062313079833984, - -0.058968156576156616, - -0.16907745599746704, - 0.011732298880815506, - 0.07067835330963135, - -0.010217098519206047, - 0.015776891261339188, - -0.054323963820934296, - -0.03308413177728653, - 0.02753547951579094, - 0.004149802029132843, - 0.07034067809581757, - -0.07410216331481934, - 0.016815539449453354, - 0.0816277414560318, - 0.020690444856882095, - 0.03366517275571823, - -0.01031907182186842, - -0.056505244225263596, - -0.046657562255859375, - 0.10779893398284912, - -0.03677147626876831, - -0.02187792956829071, - 0.03771497309207916, - -0.01023287232965231, - -0.039262332022190094, - -0.03292806074023247, - 0.03921150416135788, - -0.012086894363164902, - -0.04110576957464218, - 0.04990589618682861, - 0.002277469728142023, - -0.022117502987384796, - 0.053709499537944794, - -0.029078945517539978, - -0.05086686089634895, - 0.008605746552348137, - -0.10042262077331543, - 0.12241555750370026, - 0.06355815380811691, - -0.009840436279773712, - -0.07614320516586304, - -0.06971330940723419, - 0.09044612944126129, - 0.026915261521935463, - -0.11820939183235168, - -0.05908767879009247, - 0.08081290125846863, - 0.1179690808057785, - -0.00016829418018460274, - -0.0023905811831355095, - 0.018842794001102448, - 0.07030780613422394, - -0.009298200719058514, - 0.10999328643083572, - 0.048297613859176636, - 0.08664128929376602, - 0.0066216373816132545, - 0.05596403032541275, - 0.0380781926214695, - 0.05797659605741501, - 0.005250042304396629, - -0.020069502294063568, - 0.017919423058629036, - -0.054512910544872284, - -0.024967892095446587, - -3.842124715447426e-05, - -0.009181708097457886, - -0.07244692742824554, - -0.022843975573778152, - -0.04403878375887871, - 0.024410400539636612, - -0.052098535001277924, - -0.009675349108874798, - 0.03293566405773163, - 0.07328155636787415, - -0.012279498390853405, - 0.08596457540988922, - 0.052158892154693604, - -0.03150991350412369, - 0.051902152597904205, - -0.055141765624284744, - -0.06645189225673676, - -0.0039552850648760796, - 0.01636188104748726, - 0.020017027854919434, - 0.06412402540445328, - 0.030177609995007515, - -0.009816373698413372, - 0.07664959132671356, - 0.07388676702976227, - 0.024874798953533173, - 0.0273908618837595, - -0.06444159895181656, - 0.09397181123495102, - 0.11117450892925262, - -0.002812185324728489, - 0.04502446949481964, - -0.019359134137630463, - 0.06258551776409149, - 0.06892985850572586, - -0.07889647036790848, - -0.061794668436050415, - -0.058790531009435654, - -0.04438777267932892, - -0.028374426066875458, - 0.09670434892177582, - -0.004261840134859085, - -0.004163431003689766, - 0.12552669644355774, - -0.12190863490104675, - -0.08938755095005035, - -0.03409399837255478, - 0.023814234882593155, - -0.0643991008400917, - 0.03387078270316124, - 0.07639537751674652, - -0.030473146587610245, - 0.02189747989177704, - 0.049688275903463364, - -0.013621720485389233, - 0.04722753167152405, - 0.05327651649713516, - -0.07378670573234558, - 0.009556584060192108, - -0.04394747316837311, - -0.00473697017878294, - 0.09845617413520813, - 0.05024895817041397, - 0.07578941434621811, - -0.041455067694187164, - 0.020339036360383034, - -0.07199618965387344, - -0.00032202573493123055, - 0.06411229074001312, - 0.005231868475675583, - -0.03483327478170395, - 0.001881057396531105, - -0.017777256667613983, - -0.10686129331588745, - 0.0411837063729763, - -0.01494716014713049, - 0.09120506793260574, - -0.022627366706728935, - -0.009103327989578247, - 0.11127546429634094, - 0.05352877080440521, - -0.025964023545384407, - -0.09588244557380676, - -0.06749939918518066, - 0.05777214094996452, - 0.02400066889822483, - -0.13540257513523102, - -0.05402431637048721, - -0.04703710973262787, - 0.014835123904049397, - -0.015248063951730728, - 0.028131704777479172, - 0.07688596844673157, - 0.02474958449602127, - 0.013577042147517204, - -0.03989001363515854, - 0.057824112474918365, - -0.04226052016019821, - -0.03806401416659355, - -0.023969005793333054, - -0.08808296173810959, - -0.024581748992204666, - 0.09127004444599152, - -0.00015879381680861115, - -0.0023662401363253593, - -0.011115769855678082, - -0.03736710548400879, - -0.06828293949365616, - 0.04172505810856819, - 0.03899235278367996, - -0.013100661337375641, - 0.07425445318222046, - 0.03501540422439575, - -0.07611650973558426, - 0.03888406977057457, - 0.05817209929227829, - 0.0886860191822052, - -0.05818326398730278, - -0.01082757767289877, - -0.08797362446784973, - 0.06570108234882355, - 0.12596997618675232, - -0.07915858924388885, - -0.07743801176548004, - -0.08394711464643478, - -0.04512365162372589, - 0.07957577705383301, - -0.05289927124977112, - -0.04932757839560509, - 0.03850160539150238, - -0.025188328698277473, - -0.08130116015672684, - -0.10619225353002548, - 0.12219294160604477, - -0.021180758252739906, - -0.008895516395568848, - -0.0709991455078125, - 0.03743146359920502, - 0.02384989894926548, - 0.01840767078101635, - -0.06096290424466133, - 0.04182836785912514, - 0.06620658189058304, - -0.03637291491031647, - 0.03359926491975784, - 0.04802922531962395, - 0.03619861230254173, - -0.02270526997745037, - -0.017054516822099686, - -0.0744648277759552, - 0.06370579451322556, - -0.03850877285003662, - 0.14627712965011597, - -0.008775411173701286, - -0.02794124186038971, - -0.06970594823360443, - 0.07781580835580826, - -0.014483317732810974, - 0.02895738184452057, - 0.06764410436153412, - 0.07853825390338898, - 0.01507125236093998, - -0.08431023359298706, - 0.1134813129901886, - -0.01131184957921505, - 0.0026457877829670906, - -0.04900173097848892, - 0.011052620597183704, - -0.0666150152683258, - 0.024891305714845657, - -0.025077415630221367, - -0.10422015190124512, - 0.01919066347181797, - 0.020873498171567917, - 0.016923341900110245, - 0.0581284761428833, - 0.1151733249425888, - 0.06967391073703766, - -0.027923349291086197 - ] - }, - "p244_214.wav": { - "name": "p244", - "embedding": [ - 0.047064945101737976, - 0.09374096989631653, - -0.029795479029417038, - 0.021070312708616257, - -0.05589009076356888, - 0.07865388691425323, - -0.09673842787742615, - 0.11000014841556549, - -0.05048755556344986, - 0.131479412317276, - -0.05370466411113739, - 0.12335020303726196, - -0.015409699641168118, - -0.14077019691467285, - -0.06206444278359413, - 0.04187578707933426, - -0.08741737902164459, - -0.03439265489578247, - -0.057838551700115204, - -0.02681402675807476, - 0.039697375148534775, - 0.025438295677304268, - 0.0642424076795578, - -0.03531991317868233, - 0.03902808204293251, - 0.06412626057863235, - 0.030178818851709366, - 0.060814641416072845, - 0.03210289403796196, - -0.08688667416572571, - -0.044193901121616364, - 0.09137901663780212, - -0.049057118594646454, - 0.02080947905778885, - 0.04218422248959541, - 0.0006431713700294495, - 0.015838002786040306, - -0.0843123123049736, - -0.02381298318505287, - 0.018406018614768982, - -0.015955021604895592, - 0.07347764074802399, - 0.013104238547384739, - -0.0401352196931839, - 0.006440825294703245, - -0.00018069567158818245, - -0.01934182085096836, - -0.04337479919195175, - -0.10113073885440826, - 0.18702459335327148, - 0.07387524843215942, - 0.015530914068222046, - -0.06757976114749908, - -0.09620954096317291, - 0.11589176207780838, - -0.007667948491871357, - -0.11702315509319305, - -0.024702582508325577, - 0.039730995893478394, - 0.15890994668006897, - -0.034337423741817474, - -0.020275689661502838, - 0.029227253049612045, - 0.12411117553710938, - 0.042949289083480835, - 0.062421295791864395, - 0.09880602359771729, - 0.09733450412750244, - 0.006113381125032902, - 0.05861132964491844, - 0.05956602841615677, - 0.10144306719303131, - 0.04811899736523628, - 0.006292167119681835, - 0.030547291040420532, - -0.02756848931312561, - -0.036115359514951706, - -0.016231752932071686, - -0.04358946532011032, - -0.041516147553920746, - -0.015501786023378372, - 0.009788262657821178, - 0.03226057067513466, - 0.019569098949432373, - -0.01108971331268549, - 0.07296542823314667, - -0.015121547505259514, - -0.04750765860080719, - 0.046328455209732056, - 0.022960711270570755, - -0.006325690075755119, - 0.041848886758089066, - -0.06744523346424103, - -0.10826902836561203, - 0.011240575462579727, - 0.01573677361011505, - 0.031987763941287994, - 0.07897083461284637, - 0.05564790964126587, - -0.033009812235832214, - 0.09721823036670685, - 0.06314319372177124, - -0.01413993164896965, - -0.0028952702414244413, - -0.07780136168003082, - 0.11032142490148544, - 0.111485555768013, - -0.01416182890534401, - 0.022237898781895638, - -0.05350640416145325, - 0.09373100101947784, - 0.06556052714586258, - -0.1477869749069214, - -0.09696733206510544, - 0.005461027845740318, - -0.019313577562570572, - 0.004709434229880571, - 0.0838983878493309, - -0.013766838237643242, - 0.03721331059932709, - 0.10485678166151047, - -0.08244822919368744, - -0.044463638216257095, - -0.03709612786769867, - 0.053563982248306274, - -0.050841473042964935, - 0.03447488695383072, - 0.04613909497857094, - -0.01970847323536873, - -0.010802707634866238, - 0.06719760596752167, - -0.018274515867233276, - -0.009892809204757214, - 0.045708656311035156, - -0.05996613949537277, - 0.02718154340982437, - -0.04021844640374184, - -0.010672122240066528, - 0.06381121277809143, - 0.06861798465251923, - 0.04255390912294388, - -0.013168737292289734, - -0.04493601620197296, - -0.07938000559806824, - 0.016043849289417267, - 0.03960055857896805, - 0.05487310141324997, - -0.029077205806970596, - -0.03648816794157028, - -0.01762356236577034, - -0.0602191686630249, - 0.030928272753953934, - -0.00013626401778310537, - 0.07913556694984436, - -0.01807384565472603, - 0.00330669479444623, - 0.10706989467144012, - 0.006294815801084042, - -0.032156262546777725, - -0.030468961223959923, - -0.008995155803859234, - 0.04417487606406212, - 0.043615393340587616, - -0.06412704288959503, - -0.07915131747722626, - 0.007170567288994789, - -0.0034205028787255287, - -0.02790575660765171, - 0.038497958332300186, - 0.02190997079014778, - 0.011776771396398544, - 0.02892483025789261, - -0.04509740322828293, - -0.013596253469586372, - -0.11366325616836548, - -0.02900163270533085, - -0.010162962600588799, - -0.06506217271089554, - -0.04136526957154274, - 0.08132496476173401, - 0.02283637784421444, - 0.04748018458485603, - -0.006393404211848974, - -0.07064872235059738, - -0.050806254148483276, - 0.06312011182308197, - 0.06869572401046753, - 0.023169487714767456, - 0.03028082475066185, - 0.07200144976377487, - 0.026990236714482307, - 0.0423385351896286, - 0.06885185837745667, - 0.07954250276088715, - -0.030644822865724564, - -0.022927861660718918, - -0.0760050043463707, - 0.09944835305213928, - 0.06745614856481552, - -0.09499670565128326, - -0.07299520075321198, - -0.05125616863369942, - -0.07023270428180695, - 0.03086809068918228, - -0.03088713437318802, - 0.010799797251820564, - 0.0277373306453228, - -0.015600482001900673, - -0.11233333498239517, - -0.09321694076061249, - 0.11651705205440521, - -0.06504756212234497, - -0.019255002960562706, - -0.05156809836626053, - 0.030898239463567734, - 0.11055074632167816, - 0.043039415031671524, - 0.0038550500757992268, - 0.03207135945558548, - 0.04429542273283005, - -0.05662743002176285, - -0.016363929957151413, - 0.0314166434109211, - 0.009591658599674702, - -0.09701497852802277, - 0.013765759766101837, - -0.05995069444179535, - 0.03888368234038353, - -0.06455570459365845, - 0.14857006072998047, - -0.013764876872301102, - -0.05282110720872879, - -0.0901290774345398, - 0.0639055147767067, - -0.06208319962024689, - 0.04900985211133957, - 0.05416499078273773, - 0.05222054570913315, - 0.014623776078224182, - -0.11301794648170471, - 0.13485057651996613, - 0.03911841660737991, - -0.03812802955508232, - -0.08746892213821411, - -0.06006479263305664, - -0.016906699165701866, - 0.01666960120201111, - 0.008866417221724987, - -0.04860284924507141, - 0.00625983439385891, - -0.0016223359853029251, - -0.022989757359027863, - 0.062379077076911926, - 0.14042839407920837, - 0.08589006960391998, - -0.08640982210636139 - ] - }, - "p244_215.wav": { - "name": "p244", - "embedding": [ - 0.05340327322483063, - 0.10633864998817444, - 0.016881447285413742, - 0.011955846101045609, - -0.028103653341531754, - 0.039301495999097824, - -0.007915105670690536, - 0.07690724730491638, - 0.03343275189399719, - 0.0071962811052799225, - -0.10044921934604645, - 0.05461234971880913, - -0.05114267021417618, - -0.1005287915468216, - 0.03138060122728348, - 0.04352860525250435, - -0.028951672837138176, - 0.011115949600934982, - -0.05946015566587448, - -0.027463845908641815, - -0.04222572222352028, - -0.01483626663684845, - 0.0420759841799736, - -0.007125634700059891, - 0.017293814569711685, - 0.02452283538877964, - -0.04159819334745407, - -0.008275894448161125, - -0.033947646617889404, - -0.015321293845772743, - -0.04088747873902321, - 0.02245538868010044, - -0.026904450729489326, - -0.017765305936336517, - 0.003981326706707478, - -0.03462702035903931, - 0.02976091578602791, - -0.06605526804924011, - -0.0760427936911583, - 0.035450588911771774, - -0.061423659324645996, - 0.043719857931137085, - 0.03152107819914818, - -0.06027592718601227, - 0.07246733456850052, - 0.03666800633072853, - -0.05529148504137993, - -0.0057771094143390656, - -0.10241740942001343, - 0.10199737548828125, - 0.015739869326353073, - 0.03047354705631733, - -0.06237658113241196, - -0.0009945407509803772, - 0.07519080489873886, - -0.02481830306351185, - -0.033776238560676575, - -0.019413195550441742, - 0.028561802580952644, - 0.019934870302677155, - 0.028781460598111153, - -0.007138711400330067, - 0.00945344753563404, - 0.030890248715877533, - 0.06488597393035889, - 0.005041081458330154, - 0.06499192118644714, - 0.09021380543708801, - -0.04256809875369072, - 0.02328052558004856, - 0.049421776086091995, - 0.0002708360552787781, - 0.048158034682273865, - -0.007632295601069927, - -0.0066888523288071156, - -0.0028166454285383224, - -0.0018488089554011822, - -0.036213528364896774, - -0.013678686693310738, - -0.020208947360515594, - 0.036172378808259964, - 0.009933008812367916, - 0.026395440101623535, - 0.003233599476516247, - -0.03619940206408501, - 0.0026943646371364594, - 0.06542219966650009, - 0.074161097407341, - 0.06696416437625885, - 0.03806217014789581, - -0.031037840992212296, - 0.06247745454311371, - -0.046704474836587906, - -0.0468948557972908, - 0.0014159264974296093, - 0.01603846065700054, - -0.007557017263025045, - 0.012560242787003517, - 0.030513733625411987, - -0.021396394819021225, - 0.09735725820064545, - -0.00040161237120628357, - 0.03699781745672226, - 0.00926295481622219, - -0.04896874353289604, - 0.022798974066972733, - 0.053600162267684937, - -0.025863278657197952, - 0.06389139592647552, - 0.05553627386689186, - 0.05068339407444, - 0.06422695517539978, - -0.04759574681520462, - 0.012998662889003754, - -0.03497140854597092, - 0.009746340103447437, - 0.030462805181741714, - 0.07011143863201141, - 0.002916098339483142, - 0.05067679286003113, - 0.1155703067779541, - -0.06528075039386749, - 0.015539305284619331, - 0.07424341887235641, - -0.001646561548113823, - 0.01806781068444252, - 0.02655821666121483, - 0.045040328055620193, - -0.003527548164129257, - -0.004002511501312256, - 0.009933184832334518, - 0.027712196111679077, - 0.012289375066757202, - -0.05542512238025665, - 0.0071549974381923676, - -0.02295861765742302, - 0.0007631317712366581, - -0.03404443711042404, - 0.04421551153063774, - 0.047018758952617645, - -0.0211980938911438, - 0.03315199539065361, - -0.03931222856044769, - -0.060177698731422424, - 0.029677048325538635, - -0.025737091898918152, - 0.0119534432888031, - 0.056419603526592255, - -0.0043476177379488945, - -0.05137646943330765, - 0.003010384738445282, - 0.042700670659542084, - -0.0047316947020590305, - 0.04177888110280037, - 0.04720599949359894, - -0.04274782910943031, - 0.04149050638079643, - 0.032853126525878906, - 0.02865358255803585, - -0.04825536534190178, - -0.09471835941076279, - -0.006813532207161188, - 0.03889298439025879, - -0.018483903259038925, - -0.05374060198664665, - -0.019268011674284935, - -0.03440209850668907, - 0.00211772951297462, - 0.023846661671996117, - 0.0755378007888794, - -0.025281261652708054, - -0.044753298163414, - -0.0645294263958931, - 0.022926198318600655, - 0.00519133172929287, - -0.10383737087249756, - 0.06645971536636353, - 0.019896792247891426, - 0.010932762175798416, - 0.09003394097089767, - 0.028335466980934143, - 0.016694311052560806, - -0.04772309213876724, - -0.05228255316615105, - 0.01909811794757843, - 0.03237741440534592, - -0.001835099421441555, - -0.01396514568477869, - 0.04869674891233444, - 0.04550394043326378, - -0.036374419927597046, - 0.04230061173439026, - 0.00609235092997551, - 0.037768810987472534, - -0.0290360189974308, - 0.011342196725308895, - 0.04197467863559723, - 0.0473606251180172, - 0.031079819425940514, - -0.05481845512986183, - -0.08514288812875748, - -0.04372561350464821, - -0.013911528512835503, - 0.015830835327506065, - 0.029978711158037186, - 0.02546517923474312, - 0.045097097754478455, - -0.0013326751068234444, - -0.010913103818893433, - -0.1187296062707901, - -0.004345055669546127, - 0.009404845535755157, - -0.015766851603984833, - -0.014623725786805153, - 0.019849084317684174, - 0.013312287628650665, - -0.00048827752470970154, - -0.003574371337890625, - 0.034068118780851364, - -0.00222137663513422, - 0.022723587229847908, - -0.033382244408130646, - 0.024314584210515022, - 0.038221798837184906, - 0.018750663846731186, - -0.019439980387687683, - -0.08463259041309357, - 0.06716679036617279, - 0.06160535290837288, - 0.09457183629274368, - 0.03948646038770676, - 0.03383138030767441, - -0.06190531700849533, - 0.038250964134931564, - -0.023806357756257057, - 0.02556297369301319, - -0.025996921584010124, - 0.0302744060754776, - 0.051189325749874115, - -0.009792758151888847, - 0.04220205917954445, - 0.02648290991783142, - -0.04122382029891014, - -0.01870855689048767, - 0.005629613995552063, - -0.07677137106657028, - -0.025150945410132408, - -0.022165482863783836, - -0.042740389704704285, - 0.010031008161604404, - 0.011736268177628517, - 0.07382740825414658, - 0.029676204547286034, - 0.056366175413131714, - 0.031996890902519226, - -0.006148543208837509 - ] - }, - "p244_110.wav": { - "name": "p244", - "embedding": [ - 0.02555643394589424, - 0.07235626876354218, - 0.01770714856684208, - 0.026068637147545815, - -0.04630326107144356, - 0.03194857016205788, - -0.11019507050514221, - 0.13463464379310608, - -0.0429706908762455, - 0.1285693645477295, - -0.09663064777851105, - 0.08202726393938065, - -0.07185394316911697, - -0.1800156533718109, - 0.020058924332261086, - 0.04866713285446167, - 0.0034322692081332207, - 0.006989171728491783, - -0.03739259019494057, - -0.01714503951370716, - 0.013698607683181763, - 0.022624261677265167, - 0.020074687898159027, - 0.012232186272740364, - 0.004504336975514889, - 0.0857618898153305, - -0.01760084182024002, - 0.02221524715423584, - -0.012096527963876724, - -0.021842781454324722, - -0.03781283646821976, - 0.11227633059024811, - -0.07059779763221741, - -0.0024249600246548653, - 0.09085740149021149, - -0.016050709411501884, - -0.07173023372888565, - -0.007009584456682205, - -0.010077418759465218, - -0.034766700118780136, - -0.09529420733451843, - 0.05475795269012451, - 0.01458156481385231, - 0.016427000984549522, - 0.06712383776903152, - 0.049199193716049194, - -0.0038540740497410297, - -0.018240638077259064, - -0.08559584617614746, - 0.08013657480478287, - 0.06938417255878448, - -0.015711436048150063, - -0.03539039194583893, - -0.05248210206627846, - 0.07989786565303802, - -0.016821742057800293, - -0.10916199535131454, - -0.059557169675827026, - 0.11869795620441437, - 0.11590433120727539, - -0.05694813281297684, - -0.02093386836349964, - 0.003558643162250519, - 0.086424820125103, - 0.029945047572255135, - 0.1258133053779602, - 0.047477301210165024, - 0.09240173548460007, - -0.01444920152425766, - 0.029028236865997314, - 0.052897460758686066, - 0.036802634596824646, - 0.07295069098472595, - -0.034984417259693146, - -0.0023337118327617645, - 0.023935696110129356, - -0.00937301479279995, - 0.015886934474110603, - -0.006022213026881218, - 0.0020228582434356213, - -0.01804099604487419, - -0.04307274892926216, - -0.009423762559890747, - -0.035697948187589645, - 0.013644331134855747, - 0.03897920995950699, - 0.08407110720872879, - 0.007962756790220737, - 0.08778700977563858, - 0.007871446199715137, - -0.05993299186229706, - 0.07932788878679276, - -0.07809124886989594, - -0.017535602673888206, - -0.011218776926398277, - -0.03262505680322647, - 0.012550795450806618, - 0.08188579976558685, - 0.03862619400024414, - 0.007160184904932976, - 0.11518634855747223, - 0.022629477083683014, - 0.028711212798953056, - 0.05931922793388367, - -0.11019732058048248, - 0.1228824257850647, - 0.048726409673690796, - -0.042014531791210175, - 0.0452614389359951, - -0.028597736731171608, - 0.0609288364648819, - 0.0787540152668953, - -0.11722566932439804, - -0.01935793273150921, - -0.016635458916425705, - -0.019967833533883095, - -0.05789241939783096, - 0.11276793479919434, - -0.023669414222240448, - -0.020678788423538208, - 0.1348908543586731, - -0.10980445146560669, - -0.07240233570337296, - -0.0003691096499096602, - 0.01737053133547306, - -0.13624191284179688, - 0.04622536897659302, - 0.04442868381738663, - -0.013762760907411575, - 0.04043731838464737, - 0.12342032045125961, - -0.01572316884994507, - -0.008604258298873901, - 0.0054579731076955795, - -0.051671016961336136, - -0.0074430713430047035, - -0.03893083333969116, - 0.02852053940296173, - 0.060383982956409454, - 0.03592574596405029, - 0.060844436287879944, - -0.01535792276263237, - -0.0077037084847688675, - -0.08128048479557037, - -0.008699445053935051, - 0.054758574813604355, - 0.05283838510513306, - -0.010027196258306503, - 0.003271749010309577, - -0.042886462062597275, - -0.08479133248329163, - 0.03776728734374046, - -0.013723475858569145, - 0.055247992277145386, - -0.040381886065006256, - 0.004527071490883827, - 0.11329612135887146, - 0.046185653656721115, - -0.013349653221666813, - -0.12891486287117004, - -0.038776032626628876, - 0.0022130890283733606, - 0.05557439476251602, - -0.12151066213846207, - -0.05831880867481232, - -0.02554401010274887, - 0.057104989886283875, - -0.009181196801364422, - 0.03971859812736511, - 0.03621897101402283, - 0.039036307483911514, - 0.011169672012329102, - -0.0295325368642807, - 0.014777950942516327, - -0.059585779905319214, - -0.087800994515419, - -0.0345965139567852, - -0.027754995971918106, - -0.014154193922877312, - 0.04475027322769165, - -0.032369453459978104, - 0.01805879734456539, - -0.0025275805965065956, - -0.07460813224315643, - -0.09717938303947449, - 0.0600360706448555, - 0.0318426676094532, - -0.018791604787111282, - 0.04684809595346451, - 0.041291236877441406, - -0.13143031299114227, - 0.036254823207855225, - 0.04524070769548416, - 0.14362019300460815, - -0.047457944601774216, - 0.06435289978981018, - -0.05861120671033859, - 0.03930116444826126, - 0.09640099853277206, - -0.08042299747467041, - -0.0909884124994278, - -0.018367188051342964, - -0.035890843719244, - 0.07536790519952774, - -0.03099660575389862, - -0.04874314367771149, - 0.0047473907470703125, - -0.01652522385120392, - -0.039226893335580826, - -0.06445834040641785, - 0.07846919447183609, - -0.03068755567073822, - -0.009995811618864536, - -0.09745784103870392, - 0.0478726401925087, - 0.003368699923157692, - 0.06446559727191925, - -0.014516664668917656, - 0.011852843686938286, - 0.0683678388595581, - -0.0370762012898922, - 0.004386263433843851, - 0.09676545113325119, - 0.02815013751387596, - -0.04111116752028465, - -0.052117787301540375, - -0.07754398137331009, - 0.07877151668071747, - -0.03502999246120453, - 0.11218953877687454, - -0.03431636095046997, - -0.0400056354701519, - -0.03413724526762962, - -0.0019906521774828434, - 0.01643894612789154, - 0.01642376184463501, - 0.059626124799251556, - 0.0699956938624382, - 0.02787698619067669, - -0.020561281591653824, - 0.1302621066570282, - -0.007433319464325905, - 0.011815494857728481, - -0.01599222794175148, - -0.03756856173276901, - -0.0720696672797203, - -0.021684154868125916, - -0.010201646015048027, - -0.15179437398910522, - 0.009371409192681313, - 0.00499859731644392, - -0.02156764827668667, - 0.02268831990659237, - 0.12261008471250534, - 0.06367574632167816, - -0.09981290996074677 - ] - }, - "p244_261.wav": { - "name": "p244", - "embedding": [ - 0.028719626367092133, - 0.0682663768529892, - -0.04940575361251831, - 0.03504057228565216, - -0.016620462760329247, - 0.04279787093400955, - -0.12955424189567566, - 0.06353916227817535, - -0.04909253492951393, - 0.14170783758163452, - -0.09153395891189575, - 0.06715115904808044, - -0.02883533574640751, - -0.1582050621509552, - -0.02464410848915577, - 0.055761996656656265, - -0.01921982318162918, - -0.00347290001809597, - -0.06350982189178467, - -0.015356123447418213, - 0.05540609359741211, - 0.06547226011753082, - 0.01876433566212654, - -0.049175627529621124, - 0.006675088312476873, - 0.05275445431470871, - -0.02564014494419098, - -0.0010150463785976171, - -0.03351340442895889, - -0.03141164034605026, - -0.008707764558494091, - 0.12295949459075928, - 0.0034940880723297596, - 0.003139996435493231, - 0.015117807313799858, - 0.051158081740140915, - -0.021998688578605652, - -0.07792427390813828, - -0.0007367711514234543, - -0.008576905354857445, - -0.0631859079003334, - 0.035880327224731445, - 0.006141346879303455, - -0.038210514932870865, - 0.07119050621986389, - -0.07058751583099365, - -0.04105035215616226, - -0.03922830522060394, - -0.08949838578701019, - 0.17172160744667053, - 0.06163036823272705, - 0.045889709144830704, - -0.09138541668653488, - -0.05498262494802475, - 0.1072787344455719, - 0.014204464852809906, - -0.08314104378223419, - -0.048729151487350464, - 0.05059795081615448, - 0.1794515699148178, - -0.004692745860666037, - -0.020559659227728844, - 0.060942020267248154, - 0.060778748244047165, - -0.015036608092486858, - 0.09242556989192963, - 0.07661066204309464, - 0.05347227305173874, - 0.0388450026512146, - 0.005949879996478558, - 0.04976240545511246, - 0.07206512987613678, - 0.027056021615862846, - -0.06214090436697006, - 0.02311357483267784, - 0.00044776126742362976, - -0.07447825372219086, - 0.011545495130121708, - -0.027642032131552696, - -0.05656038597226143, - 0.014318699017167091, - -0.026159826666116714, - 0.023067116737365723, - -0.005185766611248255, - -0.07371778786182404, - -0.02234519273042679, - 0.07163495570421219, - -0.06722832471132278, - 0.05723799020051956, - 0.06098293885588646, - 0.024096745997667313, - -0.001870916225016117, - -0.027889618650078773, - -0.10887596011161804, - 0.0246100053191185, - 0.04710167646408081, - -0.03869970142841339, - 0.04575304687023163, - 0.04728969559073448, - -0.03264822065830231, - 0.07574567198753357, - -0.002339482307434082, - 0.013620937243103981, - 0.006478495895862579, - -0.09110035747289658, - 0.07065313309431076, - 0.14203159511089325, - -0.0036951114889234304, - 0.04770747199654579, - -0.04089842364192009, - 0.021626245230436325, - 0.09142092615365982, - -0.10794660449028015, - -0.07400927692651749, - 0.027334842830896378, - -0.008714540861546993, - 0.051466234028339386, - 0.1170751303434372, - 0.0508880615234375, - -0.0033791083842515945, - 0.10336221754550934, - -0.12567271292209625, - -0.08851557970046997, - -0.04820217937231064, - 0.03977808356285095, - -0.06521207094192505, - 0.06675456464290619, - 0.07564829289913177, - 0.005411386024206877, - -0.016224874183535576, - 0.0325373075902462, - -0.022063452750444412, - 0.04771711677312851, - -0.05338918790221214, - -0.022877052426338196, - 0.039339084178209305, - -0.06750660389661789, - -0.03709257021546364, - 0.07008512318134308, - 0.0391334593296051, - 0.0582529678940773, - -0.012380555272102356, - -0.027346568182110786, - -0.10309469699859619, - -0.009733662940561771, - 0.07755441963672638, - 0.03022763319313526, - -0.020615937188267708, - -0.001985626295208931, - -0.05781591311097145, - -0.08478523045778275, - 0.05125606432557106, - -0.08793842792510986, - 0.10906244814395905, - 0.03553424030542374, - 0.012464728206396103, - 0.12585753202438354, - -0.020334316417574883, - -0.01074310578405857, - -0.050014056265354156, - -0.010473500937223434, - 0.03056339919567108, - 0.03348955512046814, - -0.07469385117292404, - -0.07651777565479279, - -0.02957879565656185, - 0.005555484443902969, - -0.013957532122731209, - 0.008994956500828266, - 0.04029555991292, - 0.015366200357675552, - 0.01623581536114216, - -0.1108129471540451, - 0.04026583582162857, - -0.11875109374523163, - -0.03266284987330437, - 0.007016483228653669, - -0.06607335805892944, - 0.018608558923006058, - 0.12396019697189331, - 0.01859358139336109, - -0.050637125968933105, - -0.058687955141067505, - -0.09448264539241791, - -0.060775838792324066, - 0.06692124903202057, - 0.07513782382011414, - -0.00427282927557826, - 0.020299918949604034, - 0.011965272948145866, - 0.0041732583194971085, - 0.015369415283203125, - 0.06248774379491806, - 0.10406634956598282, - -0.0048499819822609425, - -0.030295372009277344, - -0.06337064504623413, - 0.10416190326213837, - 0.09583314508199692, - -0.050846487283706665, - -0.07677732408046722, - -0.04408232867717743, - -0.06627500057220459, - 0.054286010563373566, - -0.04040510952472687, - -0.007627756800502539, - 0.03301994502544403, - -0.05689230561256409, - -0.14404836297035217, - -0.0914098471403122, - 0.07674422115087509, - 0.007081826217472553, - -0.023436736315488815, - -0.07264649868011475, - 0.03708415478467941, - 0.03996081277728081, - 0.01779070869088173, - -0.046048760414123535, - 0.01382038276642561, - 0.014750783331692219, - -0.08491375297307968, - -0.008266124874353409, - 0.0039771609008312225, - 0.0008199198637157679, - -0.07435379922389984, - 0.008985860273241997, - -0.07965540885925293, - 0.11350997537374496, - -0.06394005566835403, - 0.10732769966125488, - -0.013949532061815262, - -0.060727380216121674, - -0.08874869346618652, - 0.0719105526804924, - 0.01938960887491703, - 0.033333919942379, - 0.03244972229003906, - 0.05756678059697151, - 0.050989627838134766, - -0.0989881157875061, - 0.0424191839993, - 0.04609941691160202, - 0.024677548557519913, - -0.05812446027994156, - -0.04080793634057045, - -0.032777562737464905, - 0.02581276372075081, - -0.046896569430828094, - -0.046861421316862106, - 0.03433758765459061, - 0.009798077866435051, - 0.02808917500078678, - 0.06244601309299469, - 0.07803112268447876, - 0.032547835260629654, - -0.10110392421483994 - ] - }, - "p244_111.wav": { - "name": "p244", - "embedding": [ - 0.03550855442881584, - 0.14485898613929749, - -0.010829811915755272, - -0.03280510753393173, - -0.03996242582798004, - 0.039297379553318024, - -0.14222826063632965, - 0.1331581324338913, - -0.016904544085264206, - 0.12735259532928467, - -0.10943038016557693, - 0.11034969985485077, - -0.08529987931251526, - -0.10741734504699707, - -0.02197076380252838, - 0.012994790449738503, - 0.025103982537984848, - 0.02306518144905567, - -0.022478360682725906, - -0.030524447560310364, - 0.03684055060148239, - 0.03498847037553787, - 0.01673566922545433, - -0.02004510723054409, - 0.007751945871859789, - 0.0461181104183197, - -0.0013326248154044151, - 0.05583211034536362, - 0.012679265812039375, - -0.016813842579722404, - 0.0006979331374168396, - 0.08946909010410309, - -0.045991286635398865, - 0.041900523006916046, - 0.05703932046890259, - 0.010381726548075676, - -0.024921881034970284, - -0.0243266262114048, - 0.036851316690444946, - -0.0033594791311770678, - -0.0234886035323143, - 0.061311401426792145, - 0.022858023643493652, - -0.01987280137836933, - 0.0304512158036232, - 0.06362675130367279, - 0.028783652931451797, - -0.03097056970000267, - -0.07412416487932205, - 0.13080735504627228, - 0.02817368507385254, - -0.013529549352824688, - -0.07549724727869034, - -0.03104124590754509, - 0.08248063921928406, - -0.0479760579764843, - -0.05786697939038277, - -0.07814197987318039, - 0.060501545667648315, - 0.08764363825321198, - -0.048179976642131805, - -0.0659920945763588, - 0.007014569826424122, - 0.09848722815513611, - 0.018647005781531334, - 0.06673350185155869, - 0.08258254826068878, - 0.12289552390575409, - -0.041442207992076874, - -0.010779842734336853, - -0.0037249941378831863, - 0.04359939694404602, - 0.008133910596370697, - -0.0006030024960637093, - 0.016861408948898315, - -0.03304049000144005, - 0.009248674847185612, - 0.054975561797618866, - -0.04692225903272629, - -0.04663801193237305, - -0.03479180485010147, - 0.02962360344827175, - -0.047401636838912964, - -0.013485975563526154, - -0.021126369014382362, - 0.06323599815368652, - 0.044344738125801086, - -0.02065996080636978, - 0.09202764928340912, - 0.045098792761564255, - 0.004654675256460905, - 0.029217151924967766, - -0.08452662825584412, - -0.04490996152162552, - 0.013734543696045876, - -0.03426099568605423, - 0.004958480596542358, - 0.08601246774196625, - 0.014770184643566608, - 0.006437203846871853, - 0.11453334987163544, - 0.02017252892255783, - -0.00776681350544095, - 0.01847825199365616, - -0.0804281085729599, - 0.1612178385257721, - 0.07517047226428986, - -0.04474687576293945, - 0.015668615698814392, - -0.06843627244234085, - -0.0033770427107810974, - 0.03790973871946335, - -0.07300029695034027, - -0.08607394993305206, - 0.01222588773816824, - 0.041114211082458496, - -0.019171588122844696, - 0.07914507389068604, - -0.011501951143145561, - 0.0008063190616667271, - 0.12321918457746506, - -0.07063327729701996, - -0.08817235380411148, - -0.008862371556460857, - 0.030997196212410927, - -0.047107189893722534, - 0.04081398993730545, - 0.08151167631149292, - 0.007638392969965935, - 0.03005233407020569, - 0.08584250509738922, - 0.019545547664165497, - 0.046437494456768036, - 0.006292250473052263, - -0.04177769646048546, - 0.00728335976600647, - -0.013473732396960258, - -0.012093758210539818, - 0.0013461187481880188, - 0.09340496361255646, - 0.090224489569664, - 0.024059699848294258, - -0.02864828333258629, - -0.10220964252948761, - -0.010555543005466461, - 0.06303481757640839, - 0.03227592632174492, - -0.030729053542017937, - -0.019810186699032784, - -0.0417516827583313, - -0.03278498351573944, - -0.018932055681943893, - -0.0021347845904529095, - 0.07034353911876678, - -0.051769934594631195, - 0.01090044155716896, - 0.13358326256275177, - 0.037237100303173065, - 0.009262293577194214, - -0.06731415539979935, - -0.014622404240071774, - -0.02947082556784153, - 0.01738361455500126, - -0.07015276700258255, - -0.09717075526714325, - -0.03522675111889839, - 0.05434386804699898, - -0.006228724494576454, - 0.0832095593214035, - 0.060385528951883316, - 0.006247204728424549, - 0.044586025178432465, - -0.05626225844025612, - 0.02354953996837139, - -0.05149802565574646, - -0.051610447466373444, - -0.017696933820843697, - -0.0015532439574599266, - -0.009260283783078194, - 0.06963570415973663, - 0.008927978575229645, - 0.066965252161026, - 0.01630980521440506, - -0.08143803477287292, - -0.11671242117881775, - 0.015963826328516006, - 0.06909096240997314, - -0.041098590940237045, - 0.051891714334487915, - 0.04089884087443352, - -0.05928340181708336, - 0.0590372160077095, - 0.06834644079208374, - 0.0473015271127224, - -0.03937268629670143, - 0.009194767102599144, - -0.055180251598358154, - 0.02112501859664917, - 0.07843370735645294, - -0.10434204339981079, - -0.06425374746322632, - -0.06442097574472427, - -0.022550711408257484, - -0.03478993475437164, - -0.010842906311154366, - 0.014627031050622463, - 0.013083430007100105, - 0.0014417776837944984, - -0.0695328414440155, - -0.08121350407600403, - 0.011930480599403381, - -0.058943212032318115, - 0.034701064229011536, - -0.06020333617925644, - 0.04696594178676605, - 0.06092483177781105, - 0.04206293821334839, - -0.032730501145124435, - -0.04312049597501755, - 0.028974315151572227, - -0.029506759718060493, - 0.019039565697312355, - 0.0474838986992836, - 0.05166543275117874, - -0.032307956367731094, - 0.04034123569726944, - -0.08381982147693634, - 0.06599937379360199, - -0.047803476452827454, - 0.1456785947084427, - 0.027119625359773636, - -0.07268694043159485, - -0.08589650690555573, - -0.0002403393154963851, - -0.052077047526836395, - 0.021691421046853065, - -0.006582115776836872, - 0.016479825600981712, - 0.012505254708230495, - -0.046623602509498596, - 0.12616442143917084, - 0.0442710742354393, - -0.05161421746015549, - -0.08115414530038834, - -0.07762987911701202, - -0.06402859091758728, - 0.020394140854477882, - 0.030192259699106216, - -0.08394274115562439, - -0.0313834585249424, - 0.006412512622773647, - -0.014594304375350475, - 0.08737412095069885, - 0.12215501070022583, - 0.07093289494514465, - -0.12070630490779877 - ] - }, - "p244_041.wav": { - "name": "p244", - "embedding": [ - 0.0477493517100811, - 0.09237784147262573, - -0.04194314032793045, - 0.015993749722838402, - -0.06453871726989746, - 0.04421694204211235, - -0.11807951331138611, - 0.12396105378866196, - -0.02690242789685726, - 0.1365990936756134, - -0.06510811299085617, - 0.13611844182014465, - -0.008770588785409927, - -0.16155876219272614, - -0.034966230392456055, - 0.02737453207373619, - -0.043871812522411346, - -0.025151420384645462, - -0.061628472059965134, - -0.049977779388427734, - 0.051731400191783905, - 0.048346951603889465, - 0.03644756227731705, - -0.02840607985854149, - 0.016115382313728333, - 0.06663861870765686, - 0.005010311957448721, - 0.0280466228723526, - 0.007017101161181927, - -0.06567616760730743, - -0.044305138289928436, - 0.09010188281536102, - -0.05202030390501022, - 0.012884674593806267, - 0.038975901901721954, - -0.021395020186901093, - -0.004304943140596151, - -0.06211567670106888, - -0.026561586186289787, - 0.02595832198858261, - -0.03137664496898651, - 0.06644094735383987, - 0.01489008218050003, - -0.033769767731428146, - 0.05108369514346123, - 0.0031738176476210356, - -0.019590381532907486, - -0.04465639218688011, - -0.09283270686864853, - 0.1672413945198059, - 0.07739828526973724, - 0.004435134120285511, - -0.07296284288167953, - -0.05701959878206253, - 0.10157613456249237, - -0.024667665362358093, - -0.10168250650167465, - -0.029142102226614952, - 0.04136113449931145, - 0.1286768764257431, - -0.03394491225481033, - -0.04360955208539963, - 0.04500718042254448, - 0.10438748449087143, - 0.051580771803855896, - 0.05864544212818146, - 0.1077108085155487, - 0.10473759472370148, - -0.0309605710208416, - 0.023109566420316696, - 0.04447374865412712, - 0.09272312372922897, - 0.05901356786489487, - -0.011929653584957123, - 0.03504199534654617, - -0.004105374217033386, - -0.01844783127307892, - -0.020031172782182693, - -0.03811773657798767, - -0.02390196919441223, - -0.006757264956831932, - 0.012772822752594948, - 0.01802491582930088, - 0.02396896481513977, - -0.04342176765203476, - 0.06574518978595734, - 0.04898051545023918, - -0.03049437701702118, - 0.05111781880259514, - 0.041526615619659424, - 0.01291646622121334, - 0.05399622023105621, - -0.0910683199763298, - -0.09725426137447357, - 0.03494423255324364, - 0.0060155875980854034, - 0.00856709759682417, - 0.07191620767116547, - 0.05017685517668724, - -0.02178741991519928, - 0.10842698812484741, - 0.05835350602865219, - -0.02091311663389206, - 0.009147617034614086, - -0.07842686772346497, - 0.1159372627735138, - 0.12462387979030609, - -0.03323308005928993, - 0.033219143748283386, - -0.05944114178419113, - 0.0759272575378418, - 0.047366105020046234, - -0.1181628555059433, - -0.08785824477672577, - 0.024486316367983818, - 0.0008049008320085704, - 0.0021551456302404404, - 0.11213827133178711, - -0.004702751990407705, - 0.05059404298663139, - 0.11286967992782593, - -0.07962623238563538, - -0.054937005043029785, - -0.04110291972756386, - 0.045597486197948456, - -0.07029402256011963, - 0.060428276658058167, - 0.06039038300514221, - 0.004759245552122593, - 0.007408760488033295, - 0.06954717636108398, - -0.017764568328857422, - 0.004618425853550434, - 0.00407846225425601, - -0.041635021567344666, - 0.017860565334558487, - -0.013863824307918549, - -0.0257607102394104, - 0.04759707674384117, - 0.05385126918554306, - 0.0446147620677948, - -0.00906505435705185, - -0.022154850885272026, - -0.10992348194122314, - 0.032542936503887177, - 0.027880478650331497, - 0.05512824282050133, - -0.020555822178721428, - -0.01608181558549404, - -0.02974173054099083, - -0.0684344619512558, - 0.009244384244084358, - -0.01695946604013443, - 0.061791520565748215, - -0.02952212654054165, - 0.00883636437356472, - 0.10563653707504272, - 0.026330173015594482, - -0.009894780814647675, - -0.02149779722094536, - -0.0250079445540905, - 0.010634174570441246, - 0.050586216151714325, - -0.06921441853046417, - -0.09290610253810883, - -0.029016582295298576, - 0.012191740795969963, - -0.018572300672531128, - 0.06368248164653778, - 0.053111325949430466, - 0.007641030475497246, - 0.0381646454334259, - -0.07638256251811981, - 0.007735195569694042, - -0.11101382225751877, - -0.051872946321964264, - -0.016163796186447144, - -0.040560003370046616, - -0.021449659019708633, - 0.07260923087596893, - 0.012661389075219631, - 0.04406234622001648, - -0.030989903956651688, - -0.07271388918161392, - -0.06864629685878754, - 0.05229887366294861, - 0.06854039430618286, - 0.0027720890939235687, - 0.032364506274461746, - 0.06306475400924683, - -0.0015725692501291633, - 0.04637237638235092, - 0.07249733060598373, - 0.08299090713262558, - -0.020934831351041794, - 0.009450020268559456, - -0.0701339840888977, - 0.1035202294588089, - 0.07218052446842194, - -0.07887984812259674, - -0.08870985358953476, - -0.0490020290017128, - -0.06473680585622787, - 0.023912271484732628, - -0.022393954917788506, - 0.01675771176815033, - 0.03506441041827202, - 0.009061263874173164, - -0.10205816477537155, - -0.0841464027762413, - 0.08850695192813873, - -0.055125847458839417, - -0.0012489210348576307, - -0.0738770142197609, - 0.03230364993214607, - 0.10851822793483734, - 0.02782110497355461, - -0.030705278739333153, - -0.010481758043169975, - 0.041074901819229126, - -0.022446414455771446, - 0.01784534752368927, - 0.025507211685180664, - 0.045900341123342514, - -0.0955275446176529, - 0.0034386366605758667, - -0.06259236484766006, - 0.054756324738264084, - -0.055079083889722824, - 0.12476056814193726, - 0.016941087320446968, - -0.05011047050356865, - -0.09257613122463226, - 0.06569737941026688, - -0.01717977412045002, - 0.05570942163467407, - 0.02985534630715847, - 0.059644948691129684, - 0.022495320066809654, - -0.10366769880056381, - 0.10545758903026581, - 0.042949795722961426, - -0.0459798239171505, - -0.08494843542575836, - -0.05034906417131424, - -0.0250820592045784, - 0.030237583443522453, - 0.02807774394750595, - -0.05646726116538048, - -0.006900464650243521, - 0.005302296485751867, - -0.01282959058880806, - 0.06398545205593109, - 0.13197055459022522, - 0.06530894339084625, - -0.11476507037878036 - ] - }, - "p244_328.wav": { - "name": "p244", - "embedding": [ - 0.05617386847734451, - 0.07904292643070221, - -0.05768284201622009, - 0.01280163787305355, - -0.01526748575270176, - 0.0485241636633873, - -0.15064625442028046, - 0.10934114456176758, - -0.03235384821891785, - 0.1413254737854004, - -0.04893331974744797, - 0.10392957925796509, - 0.00040120165795087814, - -0.14071737229824066, - -0.03232470527291298, - 0.0321141853928566, - -0.0015894435346126556, - -0.011904029175639153, - -0.011431677266955376, - -0.021638354286551476, - 0.06593276560306549, - 0.03981903940439224, - 0.0029544932767748833, - -0.018907058984041214, - 0.001344342716038227, - 0.06283427029848099, - 0.007014612667262554, - 0.005726813338696957, - -0.027804411947727203, - -0.01787494495511055, - 0.003961613401770592, - 0.10440093278884888, - -0.013393338769674301, - 0.014731412753462791, - 0.02829013019800186, - 0.008674138225615025, - -0.026389606297016144, - -0.08025700598955154, - 0.0073259854689240456, - 0.007017776370048523, - -0.02491014450788498, - 0.07158514857292175, - 0.018068892881274223, - -0.009878246113657951, - 0.04825524240732193, - -0.05671892687678337, - -0.02168121188879013, - -0.03901250660419464, - -0.07670150697231293, - 0.15379369258880615, - 0.08683139830827713, - 0.05515015125274658, - -0.08740255981683731, - -0.01735696569085121, - 0.09593777358531952, - 0.02081870101392269, - -0.05083323270082474, - -0.04623928293585777, - 0.024533364921808243, - 0.16087546944618225, - -0.011430121958255768, - -0.0456274151802063, - 0.04772263020277023, - 0.0976860374212265, - 0.00822538137435913, - 0.04963439702987671, - 0.11910323798656464, - 0.0733649879693985, - 0.0013680141419172287, - 0.009420438669621944, - 0.006742628291249275, - 0.09184914827346802, - 0.0413745641708374, - -0.04767830669879913, - 0.035659365355968475, - -0.02246152237057686, - -0.03310563415288925, - -0.019495779648423195, - -0.025863494724035263, - -0.06216835603117943, - -0.008380716666579247, - 0.0034364003222435713, - 0.019272930920124054, - 0.049597930163145065, - -0.05142837390303612, - -0.00502572488039732, - 0.04930359125137329, - -0.08180411159992218, - 0.03782174736261368, - 0.04454237222671509, - 0.018986109644174576, - 0.007577402517199516, - -0.07519514858722687, - -0.10205693542957306, - 0.06489294767379761, - 0.02303912863135338, - -0.008926928974688053, - 0.0840153843164444, - 0.0438527949154377, - 0.0008392501622438431, - 0.06922023743391037, - 0.01919633522629738, - -0.019355930387973785, - -0.027148349210619926, - -0.05884486436843872, - 0.10010324418544769, - 0.12095650285482407, - -0.037342801690101624, - 0.04775581508874893, - -0.07086178660392761, - 0.008903516456484795, - 0.05004771426320076, - -0.11418317258358002, - -0.07147450000047684, - 0.046104028820991516, - 0.02718237228691578, - 0.04102572798728943, - 0.11280116438865662, - 0.03383931145071983, - 0.027148520573973656, - 0.07994554191827774, - -0.0745246633887291, - -0.0801478698849678, - -0.09133970737457275, - 0.05698493495583534, - -0.07129272818565369, - 0.08108112215995789, - 0.05352579057216644, - 0.019657142460346222, - -0.02620226889848709, - 0.0318094827234745, - -0.006074388511478901, - -0.0001315223053097725, - -0.03856272250413895, - 0.006228663958609104, - 0.03147214278578758, - -0.04583292454481125, - -0.003433307632803917, - -0.0030966829508543015, - 0.008602485060691833, - 0.0375945046544075, - 0.012672887183725834, - 0.0012815799564123154, - -0.0956883430480957, - -0.0017617587000131607, - 0.05918446183204651, - 0.038543879985809326, - -0.04297349974513054, - -0.04934300109744072, - -0.023013826459646225, - -0.05868016183376312, - -0.006701629608869553, - -0.056717418134212494, - 0.07512792199850082, - 0.04180514067411423, - 0.04520123079419136, - 0.09287647902965546, - -0.006895776838064194, - 0.017783477902412415, - -0.003460145089775324, - 0.02473307028412819, - 0.02298557572066784, - 0.03354668244719505, - -0.07770553976297379, - -0.07962100952863693, - -0.04650557041168213, - 0.0017606260953471065, - -0.024057237431406975, - 0.013286969624459743, - 0.02535199001431465, - 0.0076537225395441055, - 0.017590194940567017, - -0.09013740718364716, - 0.007999510504305363, - -0.12707996368408203, - -0.03398171067237854, - -0.021966902539134026, - -0.03939962014555931, - -0.0012892317026853561, - 0.08144719153642654, - 0.030042706057429314, - 0.017198117449879646, - -0.05104053393006325, - -0.05589691549539566, - -0.054754309356212616, - 0.05088431015610695, - 0.08637966215610504, - -0.015134629793465137, - -0.002071704715490341, - 0.012231019325554371, - 0.027255753055214882, - 0.014431443996727467, - 0.06546209752559662, - 0.08026807010173798, - -0.02532717026770115, - -0.009718581102788448, - -0.05980297923088074, - 0.1069805696606636, - 0.10707004368305206, - -0.0614449679851532, - -0.09145216643810272, - -0.04136540740728378, - -0.07436417043209076, - 0.00538298673927784, - -0.044389039278030396, - 0.008544267155230045, - 0.03614173084497452, - -0.04093204438686371, - -0.13392260670661926, - -0.09538638591766357, - 0.06791391968727112, - -0.02935994416475296, - -0.0032106838189065456, - -0.07973016798496246, - 0.0651625320315361, - 0.09330111742019653, - 0.011324265971779823, - -0.05224213749170303, - -0.025258494541049004, - 0.0014371015131473541, - -0.03626387566328049, - 0.0013702819123864174, - -0.005832750350236893, - 0.030596623197197914, - -0.12303905189037323, - 0.011951295658946037, - -0.0479188933968544, - 0.07796569168567657, - -0.08250056207180023, - 0.09229965507984161, - 0.00027545448392629623, - -0.0613454170525074, - -0.09219121932983398, - 0.04239840433001518, - 0.046963680535554886, - 0.036961205303668976, - -0.00227383803576231, - 0.05158303678035736, - 0.007124053314328194, - -0.11739473789930344, - 0.05927913635969162, - 0.062101248651742935, - 0.011960633099079132, - -0.09744171798229218, - -0.02750169299542904, - -0.0009344723075628281, - 0.05877801030874252, - -0.01584586128592491, - -0.03744545578956604, - -0.0023435503244400024, - 0.02005106210708618, - 0.023712754249572754, - 0.061332784593105316, - 0.09847626835107803, - 0.020485959947109222, - -0.11655662953853607 - ] - }, - "p244_048.wav": { - "name": "p244", - "embedding": [ - 0.04827209562063217, - 0.07733197510242462, - -0.003094793064519763, - 0.04265182465314865, - -0.04931697994470596, - 0.07825329899787903, - -0.13045519590377808, - 0.13008370995521545, - -0.05213911086320877, - 0.13751989603042603, - -0.08746270835399628, - 0.1242460161447525, - -0.019425880163908005, - -0.18289387226104736, - -0.044179804623126984, - 0.06216875836253166, - -0.01563127711415291, - -0.02073816768825054, - -0.0048699751496315, - 0.006337813567370176, - 0.05005989223718643, - 0.02714351937174797, - 0.04588029533624649, - 0.01888325996696949, - 0.014225313439965248, - 0.05118347331881523, - 0.010695486329495907, - 0.07697305828332901, - 0.037662725895643234, - -0.048459917306900024, - -0.03948194161057472, - 0.12638385593891144, - -0.04402773827314377, - 0.02371201291680336, - 0.05820462480187416, - 0.0047158473171293736, - -0.0040702433325350285, - -0.07582718133926392, - -0.015208657830953598, - -0.036827657371759415, - -0.048001714050769806, - 0.06616838276386261, - 0.018180236220359802, - -0.008400265127420425, - 0.039698801934719086, - 0.0044549996964633465, - -0.029463913291692734, - -0.0380723774433136, - -0.11143915355205536, - 0.12026453018188477, - 0.056759580969810486, - 0.011729151010513306, - -0.0793977826833725, - -0.07146266102790833, - 0.10772228240966797, - -0.014417052268981934, - -0.10487514734268188, - -0.03818989172577858, - 0.08424211293458939, - 0.18898943066596985, - -0.017520999535918236, - -0.030518971383571625, - 0.021288853138685226, - 0.10361947119235992, - 0.0527152344584465, - 0.1059795469045639, - 0.09200204908847809, - 0.09676412492990494, - 0.00929214246571064, - 0.03070054203271866, - 0.025073019787669182, - 0.08254441618919373, - 0.034201644361019135, - -0.006474196910858154, - 0.011831933632493019, - 0.012454196810722351, - -0.02525544911623001, - 0.02861812710762024, - -0.033858414739370346, - -0.012108471244573593, - -0.02703946642577648, - -0.001300246687605977, - 0.01257583498954773, - 0.011897867545485497, - -0.030838433653116226, - 0.05659656971693039, - 0.005704890005290508, - -0.013511136174201965, - 0.06260167807340622, - 0.019151829183101654, - -0.01630425825715065, - 0.05332048237323761, - -0.08144542574882507, - -0.10232388973236084, - 0.005137446336448193, - 0.0044280909933149815, - 0.009218962863087654, - 0.08582229912281036, - 0.028914859518408775, - -0.020744170993566513, - 0.1139017641544342, - 0.03861263766884804, - -0.0056467317044734955, - 0.04693478345870972, - -0.09190023690462112, - 0.11143511533737183, - 0.08087579905986786, - -0.009290654212236404, - 0.051562365144491196, - -0.06122512370347977, - 0.0812540128827095, - 0.08307251334190369, - -0.1430470496416092, - -0.06673327088356018, - 0.027310559526085854, - 0.016199221834540367, - -0.008983487263321877, - 0.11584265530109406, - -0.018362928181886673, - 0.02473014034330845, - 0.091159887611866, - -0.08273765444755554, - -0.05975021421909332, - -0.018027430400252342, - 0.04511408507823944, - -0.07047255337238312, - 0.05964837223291397, - 0.01350078172981739, - 0.0006645230459980667, - -0.011342974379658699, - 0.07541333138942719, - -0.017483746632933617, - -0.014441552571952343, - 0.04478956013917923, - -0.07441110908985138, - 0.02282283641397953, - -0.05053841695189476, - 0.0024701296351850033, - 0.054625071585178375, - 0.04182734340429306, - 0.055346667766571045, - 0.004719394259154797, - -0.030691489577293396, - -0.10647712647914886, - -0.014974161051213741, - 0.051886290311813354, - 0.080818310379982, - -0.0012216406175866723, - -0.04254882410168648, - -0.05467415973544121, - -0.057816725224256516, - 0.03811957687139511, - -0.008121978491544724, - 0.08739885687828064, - -0.00270849303342402, - 0.023016218096017838, - 0.0714796930551529, - 0.006914336234331131, - -0.001389464596286416, - -0.070253387093544, - -0.030554182827472687, - 0.006429283879697323, - 0.05303538218140602, - -0.0715801864862442, - -0.05467407405376434, - 0.016154427081346512, - 0.033158719539642334, - -0.042429156601428986, - 0.03310069441795349, - 0.04770341515541077, - 0.032174259424209595, - 0.04236266762018204, - -0.06367494910955429, - -0.00280338479205966, - -0.12100141495466232, - -0.06949446350336075, - -0.009603125043213367, - 0.007858033291995525, - -0.001059834728948772, - 0.0625513419508934, - 0.037704311311244965, - 0.04697214812040329, - 0.007810885552316904, - -0.06778083741664886, - -0.09864729642868042, - 0.062486808747053146, - 0.06209496408700943, - 0.023577526211738586, - 0.06678949296474457, - 0.045135557651519775, - -0.05043257400393486, - 0.07210192084312439, - 0.06486591696739197, - 0.09128132462501526, - -0.022669468075037003, - 0.012239282950758934, - -0.08310054242610931, - 0.08222278952598572, - 0.11855454742908478, - -0.09039004147052765, - -0.1022348403930664, - -0.016433820128440857, - -0.0805412083864212, - 0.05964312702417374, - -0.033202290534973145, - -0.017606928944587708, - 0.03513156622648239, - -0.03205867111682892, - -0.12043394148349762, - -0.08593438565731049, - 0.09556235373020172, - -0.07492953538894653, - -0.01863514631986618, - -0.07923662662506104, - 0.03670211881399155, - 0.0882929265499115, - 0.016785964369773865, - -0.019328579306602478, - -0.006718709133565426, - 0.06685979664325714, - -0.06807854771614075, - -0.019682439044117928, - 0.04808364808559418, - 1.0044197551906109e-05, - -0.11420659720897675, - 0.014631063677370548, - -0.06839814782142639, - 0.04320947080850601, - -0.05270499736070633, - 0.16021078824996948, - -0.01832277700304985, - -0.055416032671928406, - -0.0695975124835968, - 0.03730277344584465, - -0.012677269987761974, - 0.040440868586301804, - 0.03587840497493744, - 0.06559747457504272, - 0.014560209587216377, - -0.08525940775871277, - 0.13062810897827148, - 0.03711410611867905, - -0.040612734854221344, - -0.0745595246553421, - -0.04604172334074974, - -0.04146720468997955, - 0.015205984935164452, - -0.005205302499234676, - -0.08903783559799194, - -0.02617494761943817, - 0.02137882076203823, - -0.02170909382402897, - 0.052738163620233536, - 0.1374872624874115, - 0.05957169085741043, - -0.10747544467449188 - ] - }, - "p244_026.wav": { - "name": "p244", - "embedding": [ - 0.06586799025535583, - 0.11278679966926575, - 0.0049434844404459, - 0.028054434806108475, - -0.050383105874061584, - 0.060185957700014114, - -0.11728794127702713, - 0.14155426621437073, - -0.0459170788526535, - 0.13404732942581177, - -0.10389409959316254, - 0.11975269019603729, - -0.032792992889881134, - -0.16663172841072083, - -0.0439152866601944, - 0.04642602801322937, - -0.026820560917258263, - 0.004712419584393501, - -0.046308018267154694, - -0.03168323636054993, - 0.019950177520513535, - 0.045187026262283325, - 0.05844635143876076, - 0.016566717997193336, - 0.03047313541173935, - 0.0620131641626358, - -0.010942035354673862, - 0.05403365194797516, - 0.03414197266101837, - -0.053701892495155334, - -0.044500626623630524, - 0.11905394494533539, - -0.051627591252326965, - 0.012245481833815575, - 0.050309598445892334, - -0.007627889513969421, - -0.009441401809453964, - -0.0470849871635437, - -0.023912079632282257, - 0.00040835142135620117, - -0.04580874741077423, - 0.05982600152492523, - 0.017169905826449394, - -0.01894812285900116, - 0.07335232943296432, - 0.008407972753047943, - -0.021488133817911148, - -0.04493880271911621, - -0.10867172479629517, - 0.14045865833759308, - 0.05867236852645874, - -0.0006718453951179981, - -0.08618460595607758, - -0.05350463092327118, - 0.09918363392353058, - -0.04780343919992447, - -0.12267208844423294, - -0.030448067933321, - 0.07761223614215851, - 0.1502697616815567, - -0.029043741524219513, - -0.028298037126660347, - 0.02671806327998638, - 0.1055757999420166, - 0.05961158126592636, - 0.09839142858982086, - 0.08869531750679016, - 0.09445095807313919, - -0.028137894347310066, - 0.03457392752170563, - 0.04931679368019104, - 0.042325008660554886, - 0.04774358868598938, - -0.023446764796972275, - 0.009804775938391685, - -0.00511131901293993, - -0.008887168951332569, - 0.013712966814637184, - -0.014532960951328278, - -0.006879265420138836, - -0.027192190289497375, - 0.0052452050149440765, - -0.018263498321175575, - -0.0020943335257470608, - -0.054482102394104004, - 0.0717814564704895, - 0.020618127658963203, - 0.004537150729447603, - 0.07351469993591309, - 0.05744819715619087, - -0.009114952757954597, - 0.04616812244057655, - -0.05194506421685219, - -0.0707567036151886, - 0.002746155485510826, - -0.003859890392050147, - 0.00025226082652807236, - 0.0743798166513443, - 0.02977294661104679, - -0.008410993963479996, - 0.12026776373386383, - 0.0699431449174881, - 0.009360147640109062, - 0.03390972316265106, - -0.09845301508903503, - 0.12943825125694275, - 0.09846656024456024, - -0.019256005063652992, - 0.06757931411266327, - -0.02021576464176178, - 0.06509047001600266, - 0.07466380298137665, - -0.12672531604766846, - -0.04961514100432396, - 0.023249352350831032, - 0.005390803329646587, - 0.004474075045436621, - 0.08171842992305756, - -0.004117000848054886, - 0.022824615240097046, - 0.10177913308143616, - -0.07870312035083771, - -0.0565452016890049, - -0.019559189677238464, - 0.04730800539255142, - -0.0931725949048996, - 0.0495491698384285, - 0.05466557294130325, - -0.010689627379179, - -0.004761622287333012, - 0.09053339064121246, - -0.00405983766540885, - 0.0013721450231969357, - 0.028684459626674652, - -0.05138193070888519, - 0.010132534429430962, - -0.02009863778948784, - 0.00040217209607362747, - 0.053819164633750916, - 0.042085856199264526, - 0.05309782177209854, - -0.000862735090777278, - -0.0193669144064188, - -0.09966550767421722, - 0.004759381525218487, - 0.053793154656887054, - 0.06253529340028763, - -0.008933543227612972, - -0.01144277211278677, - -0.045943230390548706, - -0.06170273572206497, - 0.03640960901975632, - 0.0006338045932352543, - 0.07830873131752014, - -0.04069656506180763, - -0.0017511346377432346, - 0.11064109951257706, - 0.023758316412568092, - 0.0019833254627883434, - -0.06366121768951416, - -0.012429897673428059, - 0.005104259122163057, - 0.05324679985642433, - -0.07818473875522614, - -0.08689823746681213, - 0.00674787349998951, - 0.0329638235270977, - -0.01725333370268345, - 0.0686255618929863, - 0.05748320370912552, - -0.01090861577540636, - 0.04167197272181511, - -0.06881002336740494, - 0.023425288498401642, - -0.097846120595932, - -0.06627470254898071, - -0.018358347937464714, - -0.023377839475870132, - -0.010047231800854206, - 0.07810098677873611, - 0.03274979069828987, - 0.03823040425777435, - 0.01940709911286831, - -0.09928067773580551, - -0.08621026575565338, - 0.06613142788410187, - 0.065971240401268, - 0.004101244267076254, - 0.05681080371141434, - 0.0645536407828331, - -0.06128019839525223, - 0.0822572112083435, - 0.06855404376983643, - 0.07632607966661453, - -0.03120030090212822, - 0.01882569119334221, - -0.0711621642112732, - 0.0410422645509243, - 0.08664519339799881, - -0.11697583645582199, - -0.11304691433906555, - -0.046047408133745193, - -0.0542854480445385, - 0.04587730020284653, - -0.012150708585977554, - 0.006285725627094507, - 0.05040615424513817, - -0.023762140423059464, - -0.07985907793045044, - -0.11192364990711212, - 0.10189016163349152, - -0.060136765241622925, - -0.0045797983184456825, - -0.05888885632157326, - 0.03486146405339241, - 0.05931705981492996, - 0.018688436597585678, - -0.021912064403295517, - 0.003393254242837429, - 0.03480001538991928, - -0.05567473918199539, - -0.028087276965379715, - 0.054103415459394455, - 0.01772863045334816, - -0.09788274765014648, - 0.019465439021587372, - -0.08132140338420868, - 0.09603934735059738, - -0.04148917272686958, - 0.16371195018291473, - -0.004500369541347027, - -0.053607940673828125, - -0.07650648057460785, - 0.03987590968608856, - -0.03835117816925049, - 0.03776033967733383, - 0.041810162365436554, - 0.0628417506814003, - 0.016790427267551422, - -0.061725325882434845, - 0.09631823003292084, - 0.034476954489946365, - -0.05627333000302315, - -0.058845993131399155, - -0.04486531764268875, - -0.060280539095401764, - 0.01529710367321968, - 0.020937280729413033, - -0.09943728148937225, - -0.01247384399175644, - 0.0030751070007681847, - -0.02770974114537239, - 0.06942403316497803, - 0.13579750061035156, - 0.06446173042058945, - -0.1180371418595314 - ] - }, - "p244_085.wav": { - "name": "p244", - "embedding": [ - 0.018087055534124374, - 0.0933462604880333, - -0.0036630649119615555, - 0.0013941247016191483, - -0.001707153394818306, - 0.01125246286392212, - -0.143900066614151, - 0.054094523191452026, - -0.0603456124663353, - 0.1075640320777893, - -0.06990658491849899, - 0.056109458208084106, - -0.07267501205205917, - -0.1554218828678131, - -0.02299981564283371, - 0.024502132087945938, - 7.203221321105957e-05, - -0.012527445331215858, - -0.03593705594539642, - -0.010605812072753906, - 0.02705473266541958, - 0.0072975922375917435, - 0.05035639554262161, - -0.057835567742586136, - -0.04578536003828049, - 0.05118054896593094, - -0.007196454796940088, - 0.007599356584250927, - -0.0014428067952394485, - 0.02932841144502163, - 0.02643621899187565, - 0.061962079256772995, - 0.007674040272831917, - -0.02462301217019558, - 0.018094398081302643, - 0.04898426681756973, - -0.030484657734632492, - -0.039679307490587234, - -0.010059981606900692, - 0.024629417806863785, - -0.07595178484916687, - 0.024289939552545547, - 0.012777344323694706, - -0.035832587629556656, - 0.09996741265058517, - -0.05551682412624359, - -0.023658543825149536, - -0.010727426037192345, - -0.08434763550758362, - 0.08422692120075226, - 0.07921017706394196, - 0.039118826389312744, - -0.039305124431848526, - -0.012150153517723083, - 0.1050582230091095, - -0.022499412298202515, - -0.07330711930990219, - -0.07558267563581467, - 0.05910210311412811, - 0.11011790484189987, - -0.05361681059002876, - -0.03072173334658146, - 0.00934761855751276, - 0.03835664689540863, - 0.01825552247464657, - 0.07085765898227692, - 0.10325634479522705, - 0.026297535747289658, - -0.004400158300995827, - -0.03584076836705208, - 0.05724923685193062, - 0.06123337894678116, - -0.005622128024697304, - -0.05766342952847481, - 0.02699277736246586, - -0.008603029884397984, - -0.04304300248622894, - 0.03261411190032959, - 0.016424184665083885, - -0.03697900474071503, - -0.01802590861916542, - -0.050807561725378036, - -0.036922261118888855, - -0.013693712651729584, - -0.03206862509250641, - 0.0003787276800721884, - 0.06777765601873398, - -0.026665568351745605, - 0.07745389640331268, - 0.07400812208652496, - 0.006455200258642435, - 0.0296090729534626, - -0.014085926115512848, - -0.056382231414318085, - -0.002909161150455475, - 0.009341124445199966, - -0.02516353502869606, - 0.0503351166844368, - 0.017234181985259056, - 0.012665923684835434, - 0.047552742063999176, - 0.03175375610589981, - -0.007960866205394268, - 0.022750098258256912, - -0.1145852729678154, - 0.06509339064359665, - 0.0783756747841835, - -0.03670535981655121, - -0.005044805817306042, - -0.028172729536890984, - 0.007967358455061913, - 0.06971028447151184, - -0.01098247617483139, - -0.0416664183139801, - 0.047445230185985565, - 0.03468272462487221, - 0.045711714774370193, - 0.10030428320169449, - 0.032425347715616226, - -0.04412374272942543, - 0.12681105732917786, - -0.0804399847984314, - -0.106150783598423, - -0.06356216222047806, - 0.02112031728029251, - -0.06292861700057983, - 0.04266925901174545, - 0.0768735259771347, - 0.0052373274229466915, - -0.01824849843978882, - 0.06235845386981964, - 0.01196365151554346, - 0.00015286484267562628, - -0.04465065151453018, - -0.05017252638936043, - 0.03461996465921402, - -0.036610040813684464, - -0.034879498183727264, - 0.06972329318523407, - 0.055190056562423706, - 0.07166831195354462, - 0.02097162976861, - -0.004931293893605471, - -0.07623781263828278, - -0.008405450731515884, - 0.08921784162521362, - 0.007342057302594185, - -0.03738617151975632, - -0.01246339175850153, - -0.06843055784702301, - -0.03567283973097801, - 0.010461712256073952, - -0.07564270496368408, - 0.11346551775932312, - -0.0033607659861445427, - 0.015661735087633133, - 0.09067034721374512, - -0.04303101822733879, - 0.010769782587885857, - -0.030664116144180298, - -0.017958514392375946, - 0.0386456660926342, - 0.011988261714577675, - -0.11037346720695496, - -0.08271387219429016, - -0.09711509943008423, - 0.043262943625450134, - 0.03908117115497589, - -0.012103168293833733, - 0.029926935210824013, - -0.020721688866615295, - -0.01077366340905428, - -0.05128378048539162, - 0.07093960791826248, - -0.054347701370716095, - -0.03504074364900589, - -0.0441867932677269, - -0.05136359855532646, - 0.019310396164655685, - 0.08733035624027252, - -0.03214306756854057, - -0.028156131505966187, - -0.027446914464235306, - -0.12362004816532135, - -0.08885293453931808, - 0.016574662178754807, - 0.07487190514802933, - -0.010476477444171906, - 0.013593342155218124, - 0.016356026753783226, - -0.03763721138238907, - 0.024288944900035858, - 0.023187212646007538, - 0.09847237169742584, - -0.057714566588401794, - 0.003446787828579545, - -0.016983292996883392, - 0.011980373412370682, - 0.09920325875282288, - -0.06629854440689087, - -0.059505775570869446, - -0.05229927599430084, - -0.05217505991458893, - 0.0035718195140361786, - -0.052415888756513596, - -0.018414296209812164, - 0.016170214861631393, - -0.047011420130729675, - -0.09969283640384674, - -0.11133800446987152, - 0.05518141761422157, - 0.0028394125401973724, - -0.010484160855412483, - -0.06997545063495636, - 0.01673356629908085, - 0.006099766120314598, - 0.021040940657258034, - -0.0316634401679039, - 0.01940349116921425, - -0.0003433879464864731, - -0.035187605768442154, - -0.00431852089241147, - 0.019920406863093376, - 0.04871916398406029, - -0.022554144263267517, - 0.015205571427941322, - -0.06013894081115723, - 0.09862841665744781, - -0.0349789559841156, - 0.06779785454273224, - -0.004732479341328144, - -0.012840909883379936, - -0.04303565248847008, - 0.012043815106153488, - 0.002457635710015893, - 0.04344474524259567, - 0.0035958299413323402, - 0.0430680476129055, - -0.001043548807501793, - -0.06839619576931, - 0.06548592448234558, - 0.03918410837650299, - 0.030097827315330505, - -0.0629858747124672, - 0.03876311331987381, - -0.071984201669693, - -0.0004786290228366852, - -0.033461276441812515, - -0.049506548792123795, - 0.007829486392438412, - -0.02149169147014618, - 0.021478988230228424, - 0.03943754732608795, - 0.08372125029563904, - 0.008070766925811768, - -0.05953504890203476 - ] - }, - "p244_323.wav": { - "name": "p244", - "embedding": [ - 0.02871638536453247, - 0.051263488829135895, - -0.06377660483121872, - -0.0011825654655694962, - -0.062144167721271515, - 0.009119579568505287, - -0.09230530261993408, - 0.05599607899785042, - 0.010039747692644596, - 0.12691593170166016, - -0.03158995881676674, - 0.11866971850395203, - -0.01373649574816227, - -0.06472773104906082, - 0.035830430686473846, - 0.024272190406918526, - 0.0021013920195400715, - -0.032836731523275375, - 0.00861874409019947, - -0.07240842282772064, - 0.03786554932594299, - 0.03471728041768074, - 0.013183526694774628, - -0.05087427794933319, - 0.01974313333630562, - 0.08220608532428741, - -0.005121189635246992, - -0.032184090465307236, - -0.010909415781497955, - -0.07532564550638199, - -0.009868454188108444, - 0.056082457304000854, - -0.04622389376163483, - -0.023673072457313538, - 0.018023284152150154, - -0.016152994707226753, - -0.005786332301795483, - -0.021831970661878586, - 0.0301973894238472, - 0.04693290963768959, - -0.0706654042005539, - 0.086793452501297, - 0.027545075863599777, - -0.046459659934043884, - 0.015378075651824474, - -0.013875472359359264, - -0.03133957087993622, - 0.05000423640012741, - -0.04601828008890152, - 0.13840126991271973, - 0.05799878388643265, - 0.005497355945408344, - -0.045303866267204285, - -0.0010933764278888702, - 0.05176963657140732, - 0.029750416055321693, - -0.07023464888334274, - -0.03413277119398117, - -0.021266251802444458, - 0.04919935017824173, - -0.0023549627512693405, - -0.06728837639093399, - 0.053382910788059235, - 0.07895254343748093, - 0.0416635163128376, - -0.001432059332728386, - 0.06937859207391739, - 0.10092435777187347, - -0.022179771214723587, - -0.013597930781543255, - 0.05496983602643013, - 0.11263670772314072, - 0.057101696729660034, - -0.0059454431757330894, - 0.03954645246267319, - -0.009492919780313969, - -0.00903551746159792, - -0.055211760103702545, - -0.012809870764613152, - -0.05985936522483826, - -0.03533719480037689, - -0.030036769807338715, - 0.02666664496064186, - 0.06691686064004898, - -0.017516305670142174, - -0.005920063704252243, - 0.09066222608089447, - -0.048055559396743774, - 0.04691261798143387, - 0.014263049699366093, - 0.0005674464628100395, - 0.023161299526691437, - -0.09646491706371307, - -0.027800582349300385, - 0.02029002085328102, - -0.022283388301730156, - 0.06933422386646271, - 0.06327666342258453, - 0.030297348275780678, - 0.02270124852657318, - 0.07812336087226868, - 0.03223074972629547, - 0.005052454769611359, - -0.03579312935471535, - -0.04599575698375702, - 0.12966462969779968, - 0.10759195685386658, - -0.06264957040548325, - 0.015448414720594883, - 0.010730382055044174, - 0.02743333950638771, - -0.03560694307088852, - -0.09007301181554794, - -0.055008262395858765, - -0.02073560282588005, - 0.04592134803533554, - 0.0021925270557403564, - 0.11582744121551514, - 0.016268793493509293, - 0.06295105069875717, - 0.09980301558971405, - -0.03730154037475586, - -0.06772688031196594, - -0.03965190798044205, - 0.009277956560254097, - -0.10876169800758362, - 0.07391860336065292, - 0.06934487819671631, - 0.022319529205560684, - 0.03508362919092178, - 0.08821681886911392, - 0.0031576910987496376, - 0.022887010127305984, - -0.03740036115050316, - 0.005623174831271172, - 0.01935412362217903, - 0.018265677616000175, - 0.04518246278166771, - 0.0662398636341095, - 0.008614526130259037, - 0.11931255459785461, - 0.018186219036579132, - 0.017100248485803604, - -0.12548528611660004, - 0.055967703461647034, - 0.025920337066054344, - 0.014790941961109638, - -0.048439282923936844, - -0.03974846005439758, - 0.014888690784573555, - -0.06794696301221848, - -0.025159573182463646, - 0.0012388948816806078, - 0.05878271907567978, - -0.018764574080705643, - -0.014417821541428566, - 0.11121925711631775, - 0.029509639367461205, - 0.0007065150421112776, - 0.010009539313614368, - -0.03432059660553932, - -0.02066403068602085, - 0.05809623748064041, - -0.12603461742401123, - -0.09124049544334412, - -0.041157372295856476, - 0.021325435489416122, - 0.036489762365818024, - 0.04219236224889755, - 0.09379845857620239, - -0.021900057792663574, - 0.04154343158006668, - -0.01239454559981823, - -0.0066101509146392345, - -0.03764355182647705, - -0.04764707386493683, - -0.03731728345155716, - -0.07083473354578018, - -0.07130855321884155, - 0.06676249206066132, - -0.03487703204154968, - 0.07321414351463318, - -0.0342208668589592, - -0.023896537721157074, - -0.0660284161567688, - -0.002548346295952797, - 0.013067374937236309, - -0.05973179265856743, - 0.0015914635732769966, - 0.1021197959780693, - 0.014858659356832504, - -0.03718653321266174, - 0.023452315479516983, - 0.0683438777923584, - -0.0714542418718338, - -0.011024764738976955, - -0.05041978880763054, - 0.10450713336467743, - 0.06938096880912781, - -0.024714702740311623, - -0.02636539563536644, - -0.10218591243028641, - -0.05194422975182533, - 0.03712168335914612, - -0.040700528770685196, - 0.0009272522293031216, - 0.0009515304118394852, - -0.010160882025957108, - -0.055278852581977844, - -0.06971997767686844, - 0.03301675617694855, - -0.04334889352321625, - 0.004685009829699993, - -0.07197853922843933, - 0.006085403263568878, - 0.013866756111383438, - 0.06978773325681686, - -0.0544532835483551, - 0.045096561312675476, - 0.01829826831817627, - -0.013667093589901924, - 0.04202777519822121, - 0.0716504454612732, - 0.05905398726463318, - -0.028631076216697693, - -0.07850592583417892, - -0.0644499734044075, - 0.02972378209233284, - -0.04339110851287842, - 0.053262483328580856, - 0.02020193263888359, - -0.02496352419257164, - -0.05461408570408821, - 0.0017900094389915466, - -0.010763568803668022, - 0.0118790902197361, - 0.08973324298858643, - 0.06148537993431091, - 0.029789313673973083, - -0.04087475687265396, - 0.09612463414669037, - 0.0531892292201519, - 0.014539996162056923, - -0.06240740418434143, - -0.012929040938615799, - -0.020954158157110214, - 0.04648301750421524, - 0.06369830667972565, - -0.07293614745140076, - 0.0560353584587574, - 0.024033322930336, - 0.031354282051324844, - 0.052939482033252716, - 0.04367426782846451, - 0.07082176953554153, - -0.07048733532428741 - ] - }, - "p244_355.wav": { - "name": "p244", - "embedding": [ - 0.06036846339702606, - 0.08853242546319962, - -0.006428401451557875, - 0.0057867057621479034, - -0.05621178448200226, - 0.07643314450979233, - -0.14393797516822815, - 0.15075388550758362, - -0.04845606908202171, - 0.13624948263168335, - -0.05370578542351723, - 0.11401273310184479, - -0.017049454152584076, - -0.18980637192726135, - -0.037002988159656525, - 0.05715904384851456, - -0.07381679117679596, - -0.04442931339144707, - -0.059523701667785645, - -0.0323486290872097, - 0.0268989410251379, - 0.01874561980366707, - 0.0128057561814785, - 0.017308175563812256, - 0.030600521713495255, - 0.07107022404670715, - -0.007656680420041084, - 0.03900393098592758, - 0.002704054117202759, - -0.050151001662015915, - -0.015263024717569351, - 0.08578639477491379, - -0.052349597215652466, - 0.009188116528093815, - 0.055868931114673615, - -0.016971921548247337, - 0.0004109707660973072, - -0.06074458733201027, - -0.02889387682080269, - 0.014716987498104572, - -0.04133320227265358, - 0.09005272388458252, - 0.04280244931578636, - -0.0037300570402294397, - 0.027053333818912506, - 0.03978683054447174, - -0.006499607115983963, - -0.05823285132646561, - -0.10117165744304657, - 0.16214996576309204, - 0.07374725490808487, - -0.006576562765985727, - -0.06669057905673981, - -0.06315204501152039, - 0.10416731238365173, - -0.027336422353982925, - -0.127847820520401, - -0.044761914759874344, - 0.08030316978693008, - 0.15398317575454712, - -0.05999171733856201, - -0.03266638144850731, - 0.023023733869194984, - 0.1316802054643631, - 0.06947454065084457, - 0.09431891143321991, - 0.08449162542819977, - 0.11324270069599152, - -0.02958572842180729, - 0.014752449467778206, - 0.07405275851488113, - 0.05709080398082733, - 0.0714445561170578, - -0.001845009159296751, - 0.0357089638710022, - -0.004875649698078632, - 0.003105737268924713, - -0.01579306460916996, - -0.025587625801563263, - -0.004861369263380766, - -0.005901547148823738, - 0.021357715129852295, - 0.014941968023777008, - 0.03187756612896919, - -0.019702687859535217, - 0.0596734955906868, - 0.03226993978023529, - -0.01706724986433983, - 0.06491198390722275, - 0.04608175903558731, - 0.03139709308743477, - 0.07700126618146896, - -0.08459654450416565, - -0.08077813684940338, - 0.04145988076925278, - -0.0035000841598957777, - 0.03311444818973541, - 0.05329100042581558, - 0.037499383091926575, - -0.007407205179333687, - 0.11428084224462509, - 0.058987583965063095, - -0.02441546879708767, - 0.03157887980341911, - -0.10306955873966217, - 0.14112037420272827, - 0.07258675992488861, - -0.03568536043167114, - 0.04172355681657791, - -0.041546594351530075, - 0.07019535452127457, - 0.06077785789966583, - -0.13787710666656494, - -0.0791168212890625, - 0.032593343406915665, - 0.020355163142085075, - -0.03335819020867348, - 0.12284095585346222, - -0.011035183444619179, - 0.03483346849679947, - 0.10580459237098694, - -0.06588597595691681, - -0.03543132543563843, - -0.005835389252752066, - 0.04690001904964447, - -0.0812503919005394, - 0.051824286580085754, - 0.055925402790308, - -0.003960063215345144, - 0.02714613452553749, - 0.10642100870609283, - -0.001443480490706861, - -0.01698671653866768, - 0.008151775225996971, - -0.02514643967151642, - 0.027306247502565384, - -0.005876511801034212, - 0.002547395648434758, - 0.02831980213522911, - 0.03893304616212845, - 0.03358163684606552, - -0.0017246401403099298, - -0.0346517451107502, - -0.11204276233911514, - 0.018413864076137543, - 0.028104856610298157, - 0.0913316160440445, - -0.013658476993441582, - 0.00232383469119668, - -0.034915491938591, - -0.061004094779491425, - 0.0025341480504721403, - -0.009763648733496666, - 0.06943570077419281, - -0.021624647080898285, - -0.004388654604554176, - 0.1112128496170044, - 0.026822529733181, - 0.01602952927350998, - -0.043513745069503784, - -0.01502235233783722, - 0.022373944520950317, - 0.0614626482129097, - -0.0835481733083725, - -0.06088887155056, - -0.0020441864617168903, - 0.042370475828647614, - -0.01576180011034012, - 0.06601649522781372, - 0.04185749962925911, - 0.005543984472751617, - 0.01601308211684227, - -0.06310105323791504, - 0.028903983533382416, - -0.09743650257587433, - -0.06784515082836151, - 0.003060117596760392, - -0.025129593908786774, - -0.026015181094408035, - 0.066642627120018, - 0.013490845449268818, - 0.05782214552164078, - -0.02752104587852955, - -0.0952022522687912, - -0.07619073987007141, - 0.05597684532403946, - 0.08000271022319794, - -0.02649606764316559, - 0.036068618297576904, - 0.06840987503528595, - -0.018654316663742065, - 0.047797709703445435, - 0.06361024081707001, - 0.12446829676628113, - -0.03480725735425949, - 0.028284952044487, - -0.06907781958580017, - 0.0770389586687088, - 0.061118997633457184, - -0.08856939524412155, - -0.07044962048530579, - -0.010542751289904118, - -0.04937030002474785, - 0.020144402980804443, - -0.01816735789179802, - 0.017114227637648582, - 0.03734929859638214, - 0.0097791263833642, - -0.08579295128583908, - -0.0838615745306015, - 0.07927669584751129, - -0.0904659628868103, - 0.009595880284905434, - -0.08989790827035904, - 0.04700317978858948, - 0.10720080137252808, - 0.042399175465106964, - -0.023628637194633484, - -0.011450308375060558, - 0.034883882850408554, - -0.018237393349409103, - 0.004418144468218088, - 0.04620610177516937, - 0.03313702344894409, - -0.11405257135629654, - -0.011874860152602196, - -0.08303601294755936, - 0.04826189577579498, - -0.029718399047851562, - 0.15472456812858582, - 0.012197725474834442, - -0.04418008401989937, - -0.0826801210641861, - 0.01825789362192154, - -0.02464769408106804, - 0.0648951604962349, - 0.0428338497877121, - 0.07521780580282211, - 0.05374845862388611, - -0.03880413621664047, - 0.12024907767772675, - 0.04216542840003967, - -0.04555374011397362, - -0.067747101187706, - -0.040939636528491974, - -0.03998100757598877, - 0.023282814770936966, - 0.0054460447281599045, - -0.09071138501167297, - -0.020179126411676407, - 0.026966780424118042, - -0.029944490641355515, - 0.0648113340139389, - 0.13851043581962585, - 0.07271739840507507, - -0.11591905355453491 - ] - }, - "p244_293.wav": { - "name": "p244", - "embedding": [ - 0.018766077235341072, - 0.07832224667072296, - -0.01338904444128275, - 0.06080423295497894, - -0.0548609234392643, - 0.050576359033584595, - -0.09788424521684647, - 0.11394108831882477, - -0.056879106909036636, - 0.11803025007247925, - -0.10151873528957367, - 0.08068136870861053, - -0.08316683769226074, - -0.17655687034130096, - -0.01658007502555847, - 0.08558399975299835, - -0.03489235043525696, - -0.02801639586687088, - -0.03741428628563881, - -0.004323628731071949, - 0.023353835567831993, - 0.024913672357797623, - 0.013999580405652523, - 0.03661104664206505, - 0.005566709209233522, - 0.07210391759872437, - -0.020662488415837288, - 0.0316840298473835, - 0.009711146354675293, - -0.005394725129008293, - -0.03358791768550873, - 0.11052357405424118, - -0.034875884652137756, - 0.011503329500555992, - 0.06418995559215546, - 0.03379853069782257, - -0.024521518498659134, - -0.03241090103983879, - -0.006856228690594435, - -0.04489932954311371, - -0.10583367943763733, - 0.05011476203799248, - 0.024063870310783386, - 0.003499245271086693, - 0.052678219974040985, - 0.0156423207372427, - -0.03558489680290222, - -0.027634311467409134, - -0.1078028678894043, - 0.12505193054676056, - 0.07614916563034058, - -0.01134906429797411, - -0.05060739070177078, - -0.06302972882986069, - 0.11003569513559341, - -0.006011045537889004, - -0.13780753314495087, - -0.06591972708702087, - 0.11863414943218231, - 0.17017588019371033, - -0.022381220012903214, - -0.003695601597428322, - -0.0056387861259281635, - 0.1256171613931656, - 0.04616585373878479, - 0.11541697382926941, - 0.032799556851387024, - 0.1092979684472084, - 0.01792016252875328, - 0.009708814322948456, - 0.09480037540197372, - 0.039220839738845825, - 0.05978573113679886, - -0.0157419852912426, - -0.010820921510457993, - 0.016308126971125603, - -0.02257700264453888, - 0.03668336197733879, - -0.02355329319834709, - -0.01680375076830387, - -0.03980802744626999, - -0.027739854529500008, - -0.014905964024364948, - -0.03182728588581085, - 0.009705748409032822, - 0.045542094856500626, - 0.06020873785018921, - -0.00687247421592474, - 0.07128147780895233, - 0.037019360810518265, - -0.05557704344391823, - 0.06628328561782837, - -0.03983638435602188, - -0.04826798290014267, - -0.02397048845887184, - -0.0005372475134208798, - 0.012752880342304707, - 0.06341224908828735, - 0.03191596269607544, - -0.004981848411262035, - 0.11297659575939178, - 0.008063608780503273, - 0.03474205359816551, - 0.04326782375574112, - -0.10992805659770966, - 0.11436183750629425, - 0.05497283488512039, - -0.014645973220467567, - 0.03035632334649563, - -0.007069403771311045, - 0.06526973098516464, - 0.10979896038770676, - -0.1270352452993393, - -0.020149005576968193, - 0.01648905500769615, - -0.007942164316773415, - -0.037712834775447845, - 0.09686160087585449, - 0.0024537418503314257, - -0.006335014011710882, - 0.13672277331352234, - -0.10170070827007294, - -0.07488036155700684, - -0.012716513127088547, - 0.029769551008939743, - -0.08896783739328384, - 0.04051545262336731, - 0.04808410629630089, - -0.0030757482163608074, - 0.013942616991698742, - 0.08829846978187561, - -0.014227330684661865, - -0.009617168456315994, - 0.020743126049637794, - -0.0762581154704094, - 0.01839030720293522, - -0.05220619589090347, - 0.00865284912288189, - 0.08152864873409271, - 0.03222652152180672, - 0.05623181536793709, - -0.006721979938447475, - -0.01321941427886486, - -0.09449884295463562, - -0.007029630243778229, - 0.07050686329603195, - 0.06973870098590851, - 0.002110447734594345, - -0.005542682483792305, - -0.043368272483348846, - -0.07919786870479584, - 0.054487816989421844, - -0.022104062139987946, - 0.09615138918161392, - -0.0447135865688324, - -0.03454030677676201, - 0.1031801849603653, - 0.0011876635253429413, - -0.016548309475183487, - -0.11301251500844955, - -0.03576128929853439, - 0.0018747929716482759, - 0.044468630105257034, - -0.10457715392112732, - -0.06522348523139954, - 0.013756644912064075, - 0.05506196618080139, - -0.008104594424366951, - 0.026059618219733238, - 0.024717506021261215, - 0.01778505928814411, - 0.011430995538830757, - -0.04185657203197479, - 0.014964859932661057, - -0.09231160581111908, - -0.07081983983516693, - -0.0074061681516468525, - -0.038231849670410156, - 0.009655090980231762, - 0.05711817368865013, - 0.008274390362203121, - 0.004020174965262413, - 0.020683590322732925, - -0.09754687547683716, - -0.09733251482248306, - 0.07647679001092911, - 0.03809097409248352, - 0.003508695401251316, - 0.06882958859205246, - 0.06191876530647278, - -0.10502425581216812, - 0.04165640473365784, - 0.03898163139820099, - 0.1351521611213684, - -0.033675599843263626, - 0.0282076895236969, - -0.0727163627743721, - 0.044218823313713074, - 0.09947332739830017, - -0.10260143876075745, - -0.08041021227836609, - -0.04103296622633934, - -0.032291460782289505, - 0.07333236932754517, - -0.04375382140278816, - -0.02577655389904976, - 0.015982430428266525, - -0.036244653165340424, - -0.08553531765937805, - -0.0913504958152771, - 0.08446788787841797, - -0.05532671511173248, - -0.018455471843481064, - -0.0708339661359787, - 0.03648616001009941, - 0.028114615008234978, - 0.03032359853386879, - -0.01918690837919712, - 0.05045837536454201, - 0.0730222761631012, - -0.07147010415792465, - -0.017639808356761932, - 0.0766962543129921, - 0.001869450556114316, - -0.0802168995141983, - -0.03556222468614578, - -0.08752631396055222, - 0.08988158404827118, - -0.030184414237737656, - 0.15392524003982544, - -0.030985843390226364, - -0.04035087674856186, - -0.05721399188041687, - 0.02088957279920578, - -0.00838535651564598, - 0.04259791225194931, - 0.05062619224190712, - 0.07299064099788666, - 0.012801427394151688, - -0.015872951596975327, - 0.14752542972564697, - 0.011669939383864403, - -0.015471728518605232, - -0.02480458654463291, - -0.038634561002254486, - -0.0808815062046051, - -0.0224862489849329, - -0.012519699521362782, - -0.120182104408741, - -0.0019618342630565166, - 0.004150859545916319, - -0.022695783525705338, - 0.04961440712213516, - 0.12317359447479248, - 0.08003267645835876, - -0.07765915989875793 - ] - }, - "p244_193.wav": { - "name": "p244", - "embedding": [ - 0.028064658865332603, - 0.10093169659376144, - -0.0209024790674448, - 0.0005015037604607642, - -0.04624292626976967, - 0.07274523377418518, - -0.15114489197731018, - 0.11999926716089249, - -0.04301624372601509, - 0.15464086830615997, - -0.07388464361429214, - 0.09885291755199432, - -0.009067868813872337, - -0.19971846044063568, - -0.024177275598049164, - 0.02904629521071911, - -0.02677609771490097, - -0.013945994898676872, - -0.037669431418180466, - -0.025288552045822144, - 0.05819498747587204, - 0.0506451353430748, - -0.01479200180619955, - -0.05680122599005699, - 0.04410255327820778, - 0.049362678080797195, - 0.007612136658281088, - 0.019799187779426575, - -0.00015100942982826382, - -0.05961752310395241, - -0.03394631668925285, - 0.1318761557340622, - -0.035015612840652466, - 0.012703672051429749, - 0.048580244183540344, - -0.014072760939598083, - 0.0036075555253773928, - -0.05344409495592117, - 0.009733493439853191, - 0.038950033485889435, - -0.023327123373746872, - 0.07290294766426086, - 0.048989102244377136, - 0.03345615044236183, - 0.018166551366448402, - 0.05316765978932381, - 0.010791055858135223, - -0.06295697391033173, - -0.06711817532777786, - 0.19449837505817413, - 0.044383518397808075, - -0.02158026397228241, - -0.04870667681097984, - -0.06490049511194229, - 0.09780507534742355, - 0.01840827241539955, - -0.10608617961406708, - -0.053192123770713806, - 0.102013498544693, - 0.14631377160549164, - -0.02272331342101097, - -0.055770739912986755, - 0.018477950245141983, - 0.1361236423254013, - -0.0034078541211783886, - 0.089718759059906, - 0.06669244170188904, - 0.12168992310762405, - 0.0202292799949646, - 0.011864868924021721, - 0.04311855137348175, - 0.05122264847159386, - 0.017698725685477257, - -0.062245968729257584, - 0.04131901264190674, - -0.030735652893781662, - -0.01098595093935728, - 0.004761946387588978, - -0.029796747490763664, - -0.020606722682714462, - 0.019907385110855103, - 0.000877486658282578, - 0.005308923311531544, - 0.020342709496617317, - -0.040731605142354965, - 0.017835749313235283, - 0.04353313520550728, - -0.010599726811051369, - 0.094170942902565, - 0.03840005025267601, - 0.04946715012192726, - 0.04376824572682381, - -0.0874771773815155, - -0.09188377857208252, - 0.07096783816814423, - 0.016629032790660858, - 0.0019821543246507645, - 0.06621650606393814, - 0.05396273359656334, - -0.02276771329343319, - 0.12169624865055084, - 0.017844896763563156, - -0.018606580793857574, - 0.013554127886891365, - -0.10569509863853455, - 0.14705581963062286, - 0.08077208697795868, - -0.01915149949491024, - 0.047597579658031464, - -0.07196494936943054, - 0.07360904663801193, - 0.0430615171790123, - -0.15370124578475952, - -0.08593811094760895, - 0.04457654431462288, - 0.01647261157631874, - -0.04098517820239067, - 0.12814576923847198, - -0.01650349237024784, - 0.004972091410309076, - 0.09837710857391357, - -0.09899020940065384, - -0.0586339607834816, - -0.04442628473043442, - 0.029755819588899612, - -0.09374802559614182, - 0.04484346881508827, - 0.0703909620642662, - -0.03302557393908501, - 0.019055038690567017, - 0.07564608007669449, - -0.009183716028928757, - 0.034275613725185394, - -0.025118662044405937, - -0.017659621313214302, - 0.048619043081998825, - -0.020642878487706184, - 0.01947825588285923, - -0.006357635371387005, - 0.038111306726932526, - 0.06730303168296814, - -0.011889657005667686, - -0.04917293041944504, - -0.10561397671699524, - 0.023614857345819473, - 0.009614656679332256, - 0.055440161377191544, - -0.023745901882648468, - -0.004637076053768396, - -0.03961402550339699, - -0.07685063034296036, - 0.013602161779999733, - -0.022146614268422127, - 0.08944978564977646, - 0.02504526823759079, - -0.015570049174129963, - 0.12435919046401978, - 0.04165079444646835, - 0.003684479743242264, - -0.049653757363557816, - -0.044736072421073914, - 0.020284350961446762, - 0.019070114940404892, - -0.10015366226434708, - -0.04773537814617157, - -0.017175287008285522, - 0.00645119184628129, - -0.01676187291741371, - 0.03483615070581436, - 0.04950835928320885, - 0.029220538213849068, - 0.0433000773191452, - -0.07386346161365509, - 0.005387182347476482, - -0.08708079904317856, - -0.03846361115574837, - -0.008275208994746208, - -0.012573392130434513, - -0.051855187863111496, - 0.11334152519702911, - -0.011024225503206253, - 0.015157445333898067, - -0.044631943106651306, - -0.0408916138112545, - -0.04860717058181763, - 0.05073310807347298, - 0.07394257932901382, - -0.022264894098043442, - 0.026369821280241013, - 0.02444506250321865, - -0.011402787640690804, - 0.03376973047852516, - 0.0785791426897049, - 0.10599788278341293, - -0.015553602017462254, - 0.027493169531226158, - -0.06009837985038757, - 0.13035555183887482, - 0.049230996519327164, - -0.06425788998603821, - -0.08028513193130493, - -0.026675259694457054, - -0.06862812489271164, - 0.022149328142404556, - -0.023004727438092232, - 0.002290364122018218, - -0.007452433463186026, - 0.0032334483694285154, - -0.08550503104925156, - -0.06634517014026642, - 0.04706482216715813, - -0.06982442736625671, - -0.016020910814404488, - -0.10891351848840714, - 0.0779048353433609, - 0.11737146228551865, - 0.05526309460401535, - -0.048146817833185196, - -0.04920608177781105, - 0.04895175248384476, - -0.05627858266234398, - 0.01980765350162983, - 0.02313810959458351, - 0.04900076612830162, - -0.08923839032649994, - 0.01320543885231018, - -0.07215215265750885, - 0.04624795913696289, - -0.07483778148889542, - 0.13847589492797852, - 0.031741637736558914, - -0.07044603675603867, - -0.06914973258972168, - 0.06395974010229111, - -0.015005374327301979, - 0.031309694051742554, - 0.03386189788579941, - 0.04783611372113228, - 0.06502298265695572, - -0.07598915696144104, - 0.104585200548172, - 0.022739706560969353, - -0.005537805147469044, - -0.07495599240064621, - -0.04264640808105469, - -0.02485761232674122, - 0.046410996466875076, - 0.023422393947839737, - -0.11223297566175461, - -0.022592881694436073, - 0.057693783193826675, - 0.019227633252739906, - 0.08285953104496002, - 0.12196313589811325, - 0.045694947242736816, - -0.11441688239574432 - ] - }, - "p244_368.wav": { - "name": "p244", - "embedding": [ - 0.054597966372966766, - 0.06794026494026184, - -0.02768591418862343, - -0.005401697941124439, - -0.020188521593809128, - 0.04107090085744858, - -0.14340251684188843, - 0.12126179039478302, - -0.021215420216321945, - 0.10495319217443466, - -0.059717752039432526, - 0.09763114899396896, - -0.032423511147499084, - -0.152787446975708, - -0.03312711417675018, - 0.0368674211204052, - -0.02028288133442402, - -0.02517843246459961, - -0.027576742693781853, - -0.014677315019071102, - 0.0429673045873642, - 0.03135883808135986, - 0.002525127027183771, - -0.01153523102402687, - 0.004896932747215033, - 0.05532139539718628, - 0.00695518683642149, - 0.011402073316276073, - 0.014647096395492554, - 0.014217379502952099, - 0.005237075500190258, - 0.06142966076731682, - -0.024166006594896317, - 0.009274882264435291, - 0.05640403553843498, - 0.014400884509086609, - -0.024316739290952682, - -0.060479458421468735, - 0.0006956632132641971, - 0.024502307176589966, - -0.041442278772592545, - 0.07500746846199036, - 0.06557668745517731, - -0.022111516445875168, - 0.041771672666072845, - 0.0070436373353004456, - 0.005612244363874197, - -0.05346980690956116, - -0.10505198687314987, - 0.15771043300628662, - 0.053827062249183655, - 0.025785794481635094, - -0.06625185906887054, - -0.02419087290763855, - 0.09482318162918091, - 8.56202095746994e-05, - -0.08090624213218689, - -0.0659714862704277, - 0.06595274060964584, - 0.12809544801712036, - -0.0298458244651556, - -0.044891294091939926, - 0.023406565189361572, - 0.09892218559980392, - 0.0306496974080801, - 0.05206165462732315, - 0.11163072288036346, - 0.10073049366474152, - -0.017706627026200294, - 0.003945580683648586, - 0.057496510446071625, - 0.06304314732551575, - 0.012680932879447937, - -0.011091801337897778, - 0.011797195300459862, - -0.027157016098499298, - -0.011047573760151863, - 0.012354746460914612, - -0.0008024691487662494, - -0.04273931682109833, - -0.014057951048016548, - -0.001459690509364009, - -0.009018465876579285, - 0.05048226937651634, - -0.0195211973041296, - 0.049049124121665955, - 0.03578001260757446, - -0.02302272617816925, - 0.0659097284078598, - 0.03899890184402466, - -0.005676360335201025, - 0.017515873536467552, - -0.04500562697649002, - -0.08900042623281479, - 0.027018975466489792, - -0.005247652530670166, - 0.010233448818325996, - 0.064513199031353, - 0.03975391387939453, - 0.015497750602662563, - 0.10694428533315659, - 0.03259456902742386, - -0.017690710723400116, - 0.0008960801060311496, - -0.08283502608537674, - 0.12349831312894821, - 0.08296424150466919, - -0.028503989800810814, - 0.031295210123062134, - -0.07373412698507309, - 0.02208525501191616, - 0.05004064366221428, - -0.10610406845808029, - -0.052143897861242294, - 0.07557830214500427, - 0.03986836597323418, - 0.0187306459993124, - 0.12801772356033325, - 0.012325256131589413, - 0.0006934603443369269, - 0.10787783563137054, - -0.0833342894911766, - -0.06913228332996368, - -0.03961227834224701, - 0.04431707784533501, - -0.052155084908008575, - 0.05045519396662712, - 0.06766574084758759, - -0.014377645216882229, - -0.002127209212630987, - 0.06171921640634537, - -0.00032047121203504503, - -0.0026335555594414473, - -0.035901837050914764, - 0.01750933565199375, - 0.05526147410273552, - -0.01948964223265648, - -0.01272566244006157, - 0.02374565415084362, - 0.051132023334503174, - 0.04217388853430748, - 0.01760914921760559, - -0.05110933631658554, - -0.12104706466197968, - 0.002807683078572154, - 0.04644662141799927, - 0.07695146650075912, - -0.04856482893228531, - -0.02853672206401825, - -0.03597293794155121, - -0.04724053293466568, - -0.026257269084453583, - -0.016987793147563934, - 0.08190922439098358, - -0.006321170832961798, - 0.00892754178494215, - 0.08382084965705872, - 0.004374565090984106, - 0.01832118257880211, - -0.025459572672843933, - -0.027531318366527557, - 0.024592887610197067, - 0.015883151441812515, - -0.07838408648967743, - -0.074302077293396, - -0.03906022757291794, - 0.026572950184345245, - -0.012810841202735901, - 0.00791997741907835, - 0.013579031452536583, - 0.0035343915224075317, - 0.016205325722694397, - -0.08096267282962799, - 0.028728468343615532, - -0.10955439507961273, - -0.035989586263895035, - -0.010934676975011826, - -0.0073814066126942635, - 0.0007349936058744788, - 0.0874292254447937, - 0.0009223666856996715, - 0.04272165521979332, - -0.01941465586423874, - -0.07535108178853989, - -0.054687634110450745, - 0.052424073219299316, - 0.08294413983821869, - -0.023709189146757126, - 0.014289806596934795, - 0.035777926445007324, - -0.0030412874184548855, - 0.015678327530622482, - 0.033716361969709396, - 0.08050978928804398, - -0.040942296385765076, - -0.020942477509379387, - -0.027544483542442322, - 0.0814032331109047, - 0.07084417343139648, - -0.09136833250522614, - -0.048834603279829025, - -0.04359143227338791, - -0.045942436903715134, - -0.01427727472037077, - -0.04610138386487961, - 0.009285246022045612, - 0.0028468479868024588, - -0.026254139840602875, - -0.10221607983112335, - -0.090653195977211, - 0.02330595627427101, - -0.04653122276067734, - 0.01661672070622444, - -0.08013215661048889, - 0.058743562549352646, - 0.11125113815069199, - 0.01397441141307354, - -0.014740772545337677, - -0.02139434777200222, - -0.018331613391637802, - -0.03534567728638649, - -0.012891126796603203, - 0.013865387067198753, - 0.05214637145400047, - -0.0958641991019249, - -0.0034252412151545286, - -0.05333008989691734, - 0.061730869114398956, - -0.061814360320568085, - 0.11231162399053574, - 0.01744024083018303, - -0.04388999193906784, - -0.07586324214935303, - -0.0031678739469498396, - -0.004547739867120981, - 0.0561864972114563, - 0.011110684834420681, - 0.028143253177404404, - 0.026374276727437973, - -0.06230119988322258, - 0.09798835217952728, - 0.06055163964629173, - -0.025798462331295013, - -0.07412344217300415, - -0.01732182875275612, - -0.02169863134622574, - 0.03376752883195877, - 0.0015755556523799896, - -0.0434403195977211, - -0.021126046776771545, - 0.016976920887827873, - -0.0027252330910414457, - 0.05588299036026001, - 0.11567628383636475, - 0.034576695412397385, - -0.09895847737789154 - ] - }, - "p244_148.wav": { - "name": "p244", - "embedding": [ - 0.04248299449682236, - 0.1088084876537323, - -0.039898257702589035, - 0.016109680756926537, - -0.007761038839817047, - 0.032458849251270294, - -0.10358981043100357, - 0.11110831797122955, - -0.04506179690361023, - 0.13135957717895508, - -0.07696053385734558, - 0.10821495950222015, - -0.043233998119831085, - -0.11114148795604706, - -0.02046075649559498, - 0.057946763932704926, - -0.008570295758545399, - 0.026915019378066063, - 0.00514995539560914, - -0.008594631217420101, - 0.05259736627340317, - 0.022356022149324417, - 0.041673265397548676, - -0.04690439999103546, - -0.0031371526420116425, - 0.059676505625247955, - -0.012141656130552292, - -0.0055268798023462296, - 0.002419542521238327, - -0.02234533242881298, - -0.010623934678733349, - 0.06984658539295197, - 0.0016246447339653969, - 0.02020179107785225, - 0.05156949907541275, - 0.03143560141324997, - -0.02695651352405548, - -0.04271716624498367, - 0.012414712458848953, - -0.0036344260443001986, - -0.04752660542726517, - 0.0379205197095871, - 0.0074498895555734634, - -0.06874533742666245, - 0.060273632407188416, - -0.028537487611174583, - -0.02265193499624729, - 0.006309090182185173, - -0.04293375089764595, - 0.13157673180103302, - 0.0700802281498909, - 0.033397648483514786, - -0.07771100103855133, - -0.01575387641787529, - 0.09487232565879822, - 0.005112245678901672, - -0.08541784435510635, - -0.020819952711462975, - 0.0306388046592474, - 0.14434334635734558, - -0.012820703908801079, - -0.044141482561826706, - 0.03894544020295143, - 0.078412726521492, - 0.007539356593042612, - 0.07224211096763611, - 0.07755531370639801, - 0.0501728318631649, - 0.026598472148180008, - 0.015210765413939953, - 0.029122186824679375, - 0.09684719890356064, - 0.05640073120594025, - -0.03136436641216278, - -0.001794097712263465, - -0.028641223907470703, - -0.06381870806217194, - -0.006069047376513481, - -0.006458558142185211, - -0.07951106876134872, - -0.0599675327539444, - -0.04045707732439041, - 0.0038311833050101995, - -0.00022782199084758759, - -0.008839325979351997, - 0.006036813370883465, - 0.06356246769428253, - -0.058796174824237823, - 0.03489162400364876, - 0.06339679658412933, - 0.010602842085063457, - 0.00932422373443842, - -0.04932007938623428, - -0.10191045701503754, - 0.010955105535686016, - 0.011345273815095425, - 0.01914011687040329, - 0.05016087740659714, - 0.05357366055250168, - 0.02968147024512291, - 0.07375020533800125, - 0.03487242013216019, - 0.035464197397232056, - 0.0016346834599971771, - -0.08760132640600204, - 0.09856240451335907, - 0.11962580680847168, - -0.0428517609834671, - 0.035678066313266754, - -0.03504303842782974, - 0.03120984323322773, - 0.06372453272342682, - -0.10126155614852905, - -0.050504401326179504, - -0.006664739456027746, - 0.0156350489705801, - 0.0522531196475029, - 0.06485053151845932, - 0.043721262365579605, - 0.0033383150584995747, - 0.09240428358316422, - -0.09696812927722931, - -0.12102443724870682, - -0.08276250213384628, - 0.046721603721380234, - -0.07468682527542114, - 0.09312871098518372, - 0.06458370387554169, - 0.024062253534793854, - -0.007651632651686668, - 0.06311263144016266, - 0.013866707682609558, - 0.026757072657346725, - -0.029613759368658066, - -0.022419927641749382, - 0.0018990151584148407, - -0.08057676255702972, - 0.02023256942629814, - 0.0683978796005249, - 0.015799807384610176, - 0.074375681579113, - 0.032963573932647705, - 0.0141293965280056, - -0.07836262881755829, - -0.013821486383676529, - 0.0955047458410263, - 0.0025049839168787003, - -0.021450141444802284, - -0.0612109899520874, - -0.005396940279752016, - -0.060798950493335724, - 0.0039175283163785934, - -0.03677001968026161, - 0.07162518799304962, - 0.004333005752414465, - 0.038920190185308456, - 0.11667513847351074, - -0.02412485145032406, - -0.00836784765124321, - -0.04515838250517845, - -0.0004311520606279373, - 0.016081498935818672, - 0.016713464632630348, - -0.116643026471138, - -0.11761742830276489, - -0.04262144863605499, - 0.009450307115912437, - 0.015945205464959145, - 0.029861222952604294, - 0.054206930100917816, - -0.014322925359010696, - 0.016983643174171448, - -0.03505007177591324, - 0.022430334240198135, - -0.10759289562702179, - -0.07379721850156784, - -0.0471261665225029, - -0.07716687768697739, - 0.006430382374674082, - 0.08667804300785065, - 0.005794629920274019, - 0.013079619035124779, - -0.016471879556775093, - -0.07220794260501862, - -0.0874302014708519, - 0.03963758051395416, - 0.04099626466631889, - -0.012121981009840965, - 0.01696222834289074, - 0.03593946248292923, - -0.024275150150060654, - 0.012220092117786407, - 0.023516254499554634, - 0.09786400198936462, - -0.041868992149829865, - -0.015040406957268715, - -0.08167489618062973, - 0.050331830978393555, - 0.1317368447780609, - -0.08616477251052856, - -0.09435716271400452, - -0.1022263914346695, - -0.05445020645856857, - 0.02426890842616558, - -0.05544189363718033, - -0.011222044005990028, - 0.005908037535846233, - -0.05400668829679489, - -0.08300652354955673, - -0.11280298978090286, - 0.0708019807934761, - -0.02463448792695999, - -0.030180634930729866, - -0.04082821309566498, - 0.040906764566898346, - 0.0038041621446609497, - -0.0018810434266924858, - -0.06067786365747452, - 0.04300433024764061, - 0.0048789381980896, - -0.04923533648252487, - -0.01746589131653309, - 0.020950013771653175, - 0.0414959080517292, - -0.04940083250403404, - -0.005177237093448639, - -0.07816188782453537, - 0.08760306239128113, - -0.07669836282730103, - 0.12723694741725922, - -0.04411640390753746, - -0.06997726112604141, - -0.08404213190078735, - 0.014857415109872818, - 0.0036375648342072964, - 0.021724119782447815, - 0.04858018457889557, - 0.03941226750612259, - -0.009746450930833817, - -0.08930712938308716, - 0.0767572671175003, - 0.03971749171614647, - 0.03837615251541138, - -0.07917232811450958, - -0.04959459230303764, - -0.05392814055085182, - 0.002488921396434307, - -0.02051621675491333, - -0.050106726586818695, - 0.034129541367292404, - -0.03328149765729904, - 0.04441455379128456, - 0.06249994784593582, - 0.06472223252058029, - 0.019791193306446075, - -0.08799661695957184 - ] - }, - "p244_287.wav": { - "name": "p244", - "embedding": [ - 0.0692286342382431, - 0.05480683594942093, - 0.007684987038373947, - 0.0032945023849606514, - -0.02195264771580696, - 0.05035950988531113, - -0.14261296391487122, - 0.1083078533411026, - -0.03737542778253555, - 0.1022167056798935, - -0.06891612708568573, - 0.08420092612504959, - 0.005649595521390438, - -0.16731896996498108, - -0.05414462834596634, - 0.04770868644118309, - -0.04743783548474312, - -0.01798628829419613, - -0.05265462026000023, - -0.026190605014562607, - 0.015089110471308231, - 0.05945054441690445, - 0.040232300758361816, - -0.013521063141524792, - 0.03452802449464798, - 0.05620187520980835, - 0.009818429127335548, - 0.04042443260550499, - 0.0005402704700827599, - -0.04905647039413452, - -0.006263858638703823, - 0.09032385796308517, - -0.024130504578351974, - -0.015338076278567314, - 0.038439683616161346, - 0.002249504439532757, - 0.030774902552366257, - -0.08525492995977402, - -0.03178837522864342, - 0.026400890201330185, - -0.0451011136174202, - 0.08129338920116425, - 0.05663622170686722, - 0.0006870478391647339, - 0.023642301559448242, - 0.014209933578968048, - -0.0037164841778576374, - -0.07629619538784027, - -0.11188864707946777, - 0.17933812737464905, - 0.03267664462327957, - 0.032216623425483704, - -0.09039906412363052, - -0.04582812264561653, - 0.08925295621156693, - -0.01917594112455845, - -0.07608664780855179, - -0.04462350904941559, - 0.05636598914861679, - 0.1631850153207779, - -0.009876868687570095, - -0.0363830141723156, - 0.043847449123859406, - 0.10999936610460281, - 0.026485320180654526, - 0.04352160170674324, - 0.10503900051116943, - 0.08791948109865189, - 0.004083937965333462, - 0.022220395505428314, - 0.04441465437412262, - 0.048213113099336624, - 0.02719922550022602, - -0.02342405542731285, - 0.026014363393187523, - -0.013228056952357292, - -0.039156924933195114, - -0.01303048338741064, - -0.020297903567552567, - -0.01681068167090416, - 0.012318119406700134, - 0.015283848159015179, - 0.014192163944244385, - 0.042268432676792145, - -0.0550118088722229, - 0.04217224195599556, - 0.00210662093013525, - -0.012524041347205639, - 0.07037238776683807, - 0.04373300075531006, - 0.025661831721663475, - 0.014635907486081123, - -0.037032321095466614, - -0.08303970843553543, - 0.01293417438864708, - 0.017564896494150162, - 0.005596471950411797, - 0.036855876445770264, - 0.0346909798681736, - -0.04222099110484123, - 0.11262392997741699, - 0.01319817639887333, - -0.004733177833259106, - -0.004792144522070885, - -0.08267088234424591, - 0.0941539779305458, - 0.09530054032802582, - -0.003206122200936079, - 0.047448284924030304, - -0.04040597006678581, - 0.022858984768390656, - 0.06782518327236176, - -0.12642446160316467, - -0.07093212008476257, - 0.04961775243282318, - 0.019923804327845573, - 0.037647850811481476, - 0.11929202079772949, - 0.00948140025138855, - 0.029270555824041367, - 0.07347947359085083, - -0.07912205159664154, - -0.04406982287764549, - -0.0067990245297551155, - 0.0386674627661705, - -0.05977544188499451, - 0.03508898988366127, - 0.051611728966236115, - -0.004733145236968994, - -0.02855514921247959, - 0.06631622463464737, - -0.00045882631093263626, - 0.005783036816865206, - -0.039893604815006256, - 0.0017935745418071747, - 0.05008835345506668, - -0.013344003818929195, - -0.016096141189336777, - 0.032731786370277405, - 0.05889163166284561, - 0.01872183382511139, - 0.025728384032845497, - -0.0713554099202156, - -0.11876139044761658, - -0.01751829870045185, - 0.02349994331598282, - 0.06863129884004593, - -0.019667314365506172, - -0.025050390511751175, - -0.06488745659589767, - -0.01902407966554165, - 0.00878208503127098, - -0.010262690484523773, - 0.07641758024692535, - 0.02366775833070278, - -0.013284876942634583, - 0.09293458610773087, - -0.014687488786876202, - 0.017383567988872528, - -0.016538089141249657, - 0.0016597704961895943, - 0.020237665623426437, - 0.02548619918525219, - -0.025365207344293594, - -0.0640617087483406, - 0.007149113342165947, - 0.009432383812963963, - -0.011131688952445984, - 0.022257991135120392, - 0.01702532358467579, - 0.0013369610533118248, - 0.008878740482032299, - -0.08414817601442337, - 0.020464539527893066, - -0.08853347599506378, - -0.028630351647734642, - 0.03762521594762802, - -0.017337292432785034, - -0.0360490158200264, - 0.09711417555809021, - 0.036133892834186554, - 0.036103926599025726, - -0.03119988553225994, - -0.0778912901878357, - -0.03259140998125076, - 0.04367799311876297, - 0.06294777989387512, - -0.008116551674902439, - 0.0055156489834189415, - 0.015379343181848526, - 0.015287667512893677, - 0.05834120512008667, - 0.06027369573712349, - 0.053702905774116516, - -0.022857004776597023, - -0.03155399113893509, - -0.025409482419490814, - 0.10521921515464783, - 0.030779791995882988, - -0.06422463804483414, - -0.05962016433477402, - -0.004290957003831863, - -0.06072331964969635, - 0.02386871911585331, - 0.006661337800323963, - 0.035139523446559906, - 0.03961062803864479, - -0.018998555839061737, - -0.10254982858896255, - -0.07192068547010422, - 0.057048458606004715, - -0.07079260796308517, - -0.01409408263862133, - -0.055671386420726776, - 0.03869445621967316, - 0.0976174846291542, - 0.02797241508960724, - 0.01609788089990616, - -0.031307436525821686, - -0.00224253349006176, - -0.0715823769569397, - -0.02703169919550419, - 0.02031353861093521, - 0.024443984031677246, - -0.0876607820391655, - 0.013503563590347767, - -0.07867026329040527, - 0.06488778442144394, - -0.040746480226516724, - 0.11283106356859207, - 0.030320683494210243, - -0.06053103506565094, - -0.09321457892656326, - 0.008813604712486267, - -0.03633468225598335, - 0.0633057951927185, - 0.03598177060484886, - 0.03379935026168823, - 0.053377654403448105, - -0.06258979439735413, - 0.077357217669487, - 0.05837476626038551, - -0.04095661640167236, - -0.07174566388130188, - -0.04580726847052574, - -0.012428422458469868, - 0.03455574810504913, - -0.00936194509267807, - -0.04435930773615837, - 0.008833218365907669, - 0.03094535693526268, - -0.00499032624065876, - 0.06910305470228195, - 0.10018431395292282, - 0.04017564281821251, - -0.10175991803407669 - ] - }, - "p244_177.wav": { - "name": "p244", - "embedding": [ - 0.044507335871458054, - 0.10290037840604782, - -0.01942838914692402, - 0.0063907690346241, - -0.04126619175076485, - 0.0843627005815506, - -0.1418745219707489, - 0.14350973069667816, - -0.04559346288442612, - 0.15234117209911346, - -0.04654005169868469, - 0.11439628154039383, - -0.01790357381105423, - -0.18213427066802979, - -0.044224731624126434, - 0.042119164019823074, - -0.07358305901288986, - -0.038187477737665176, - -0.058632660657167435, - -0.017521066591143608, - 0.0413493886590004, - 0.02630498819053173, - 0.0078112343326210976, - -0.0012402207357808948, - 0.014448297210037708, - 0.06487567722797394, - -0.011467904783785343, - 0.04016463831067085, - 0.007768734358251095, - -0.07167845964431763, - -0.02149045094847679, - 0.10485772788524628, - -0.058698564767837524, - 0.03315238654613495, - 0.05382955074310303, - -0.022961340844631195, - -0.003142670262604952, - -0.04328037425875664, - -0.014102445915341377, - 0.015298848040401936, - -0.028260469436645508, - 0.08367998152971268, - 0.0210939422249794, - 0.009135067462921143, - 0.03220939636230469, - 0.02343090809881687, - -0.01149408146739006, - -0.04386613145470619, - -0.08241796493530273, - 0.16499371826648712, - 0.08151083439588547, - -0.020411022007465363, - -0.06182187795639038, - -0.0674542784690857, - 0.08925721794366837, - -0.026139482855796814, - -0.13917896151542664, - -0.044697415083646774, - 0.0769345611333847, - 0.15594087541103363, - -0.03628110885620117, - -0.03648683428764343, - 0.026295984163880348, - 0.13706699013710022, - 0.060307685285806656, - 0.09352603554725647, - 0.08576934039592743, - 0.10748005658388138, - -0.025145884603261948, - 0.011413290165364742, - 0.05874883010983467, - 0.05749337002635002, - 0.07069246470928192, - -0.007783948909491301, - 0.051094770431518555, - -0.019684571772813797, - 0.006331183481961489, - -0.020142074674367905, - -0.03404755890369415, - -0.015640851110219955, - -0.006409103516489267, - 0.024741489440202713, - 0.0010743311140686274, - 0.046937912702560425, - -0.019743602722883224, - 0.044876035302877426, - 0.036132004112005234, - -0.025616612285375595, - 0.0575033463537693, - 0.06666213274002075, - 0.05305125191807747, - 0.07089225202798843, - -0.08957815170288086, - -0.08050308376550674, - 0.04896273463964462, - -4.942466694046743e-05, - 0.029679100960493088, - 0.0570414699614048, - 0.037622272968292236, - -0.005926609970629215, - 0.10246354341506958, - 0.04696955159306526, - -0.025673234835267067, - 0.016343584284186363, - -0.10917592793703079, - 0.14109067618846893, - 0.07756783068180084, - -0.034430764615535736, - 0.03604024648666382, - -0.04463666304945946, - 0.06836666911840439, - 0.05606304481625557, - -0.12919269502162933, - -0.0906955748796463, - 0.03903983160853386, - 0.0145482262596488, - -0.03145833685994148, - 0.1191861629486084, - 0.009720953181385994, - 0.03448380529880524, - 0.09203238785266876, - -0.07754082977771759, - -0.04164496436715126, - -0.019547145813703537, - 0.04328896850347519, - -0.08834540843963623, - 0.05817221850156784, - 0.04665100574493408, - -0.0032242448069155216, - 0.01575862616300583, - 0.1058458685874939, - -0.0060029043816030025, - 0.0041887154802680016, - 0.005531563889235258, - -0.03112679347395897, - 0.02468976378440857, - -0.013656284660100937, - 0.010801400989294052, - 0.005599747411906719, - 0.02738834358751774, - 0.05051258206367493, - -0.017434172332286835, - -0.03983341529965401, - -0.10948289185762405, - 0.013040440157055855, - 0.03244007006287575, - 0.07351240515708923, - -0.015346869826316833, - -0.0029499991796910763, - -0.015452703461050987, - -0.05347593128681183, - 0.009149023331701756, - -0.028586266562342644, - 0.06400436908006668, - -0.011156049557030201, - -0.01872202195227146, - 0.11995216459035873, - 0.023755474016070366, - 0.004615433514118195, - -0.04865787923336029, - -0.01536521129310131, - 0.015331385657191277, - 0.062423255294561386, - -0.0918792113661766, - -0.06155911833047867, - 0.0020905390847474337, - 0.033234383910894394, - 0.0048028877936303616, - 0.07626350224018097, - 0.06587320566177368, - 0.005603136960417032, - 0.023449789732694626, - -0.06388477981090546, - 0.010032905265688896, - -0.09658244252204895, - -0.07583260536193848, - -0.011855741031467915, - -0.03673208877444267, - -0.026649339124560356, - 0.07699368894100189, - 0.010135439224541187, - 0.04810210317373276, - -0.03279845789074898, - -0.07675309479236603, - -0.07960840314626694, - 0.0640387237071991, - 0.07321665436029434, - -0.02039494179189205, - 0.03280410170555115, - 0.062203727662563324, - -0.0169824231415987, - 0.04802972823381424, - 0.06645660847425461, - 0.11753946542739868, - -0.04872111603617668, - 0.025700999423861504, - -0.08670076727867126, - 0.07631438970565796, - 0.07487630099058151, - -0.08698824793100357, - -0.0757039412856102, - -0.00127976736985147, - -0.056065235286951065, - 0.010733071714639664, - -0.038011085242033005, - 0.016188420355319977, - 0.04787304252386093, - -0.00043989234836772084, - -0.09895528852939606, - -0.08916385471820831, - 0.09480084478855133, - -0.0960225835442543, - 0.008184118196368217, - -0.08192850649356842, - 0.053381916135549545, - 0.09574402123689651, - 0.04957319051027298, - -0.05337437987327576, - -0.005033590365201235, - 0.04659406840801239, - -0.01844211108982563, - 0.011635253205895424, - 0.039850831031799316, - 0.04237517714500427, - -0.10864727199077606, - -0.008472432382404804, - -0.0758974552154541, - 0.03537415713071823, - -0.056284770369529724, - 0.14548859000205994, - 0.005222897510975599, - -0.06317712366580963, - -0.08173328638076782, - 0.041449468582868576, - -0.02393939159810543, - 0.053023483604192734, - 0.030388472601771355, - 0.08063406497240067, - 0.05251232534646988, - -0.06138286367058754, - 0.11442851275205612, - 0.03890982270240784, - -0.03311581537127495, - -0.08304301649332047, - -0.04845770448446274, - -0.0363117940723896, - 0.042048197239637375, - 0.021497942507267, - -0.09967577457427979, - -0.016620216891169548, - 0.024843836203217506, - -0.01707850955426693, - 0.07017605006694794, - 0.13972100615501404, - 0.060311540961265564, - -0.13035288453102112 - ] - }, - "p244_263.wav": { - "name": "p244", - "embedding": [ - 0.04128599539399147, - 0.07598605751991272, - -0.01703360117971897, - 0.02478514425456524, - -0.06335717439651489, - 0.08377527445554733, - -0.12763366103172302, - 0.11426429450511932, - -0.06585008651018143, - 0.130933940410614, - -0.07471145689487457, - 0.09078354388475418, - -0.03528660908341408, - -0.18902921676635742, - -0.04560801386833191, - 0.059346042573451996, - -0.07185767590999603, - -0.04309976100921631, - -0.07151428610086441, - -0.017230043187737465, - 0.029046662151813507, - 0.02187749184668064, - 0.003815083298832178, - 0.0077848127111792564, - 0.038880445063114166, - 0.05359562486410141, - -0.00587601400911808, - 0.03737001121044159, - 0.010253438726067543, - -0.022297155112028122, - -0.021236151456832886, - 0.11117593199014664, - -0.04131752997636795, - 0.009576773270964622, - 0.05776389688253403, - 0.015924660488963127, - 0.0037651374004781246, - -0.06612217426300049, - -0.030195903033018112, - 0.012611115351319313, - -0.06276153773069382, - 0.076931893825531, - 0.05328954756259918, - -0.0023592787329107523, - 0.02656152844429016, - 0.025806717574596405, - -0.023553449660539627, - -0.06257037818431854, - -0.1065969318151474, - 0.16351750493049622, - 0.05849403142929077, - 0.0027965775225311518, - -0.06692974269390106, - -0.07347643375396729, - 0.12299235165119171, - -0.016869191080331802, - -0.1290738582611084, - -0.04897785931825638, - 0.09080550074577332, - 0.18446344137191772, - -0.051156461238861084, - -0.014012139290571213, - 0.007214481942355633, - 0.12299323081970215, - 0.05643310770392418, - 0.09896814823150635, - 0.07080000638961792, - 0.11513865739107132, - 0.014350561425089836, - 0.012689726427197456, - 0.09455596655607224, - 0.055783070623874664, - 0.05863562971353531, - -0.01641079969704151, - 0.021119805052876472, - 0.009808136150240898, - -0.024745317175984383, - 0.012815197929739952, - -0.034563515335321426, - 0.004890691488981247, - -0.013302087783813477, - 0.01238696463406086, - 0.025868277996778488, - 0.011318932287395, - -0.027005527168512344, - 0.05232429504394531, - 0.0227592121809721, - -0.01808975450694561, - 0.06424864381551743, - 0.03846590965986252, - -0.02277255989611149, - 0.06032843142747879, - -0.0597979873418808, - -0.09974275529384613, - 0.004211927764117718, - 0.004095435608178377, - 0.018116604536771774, - 0.053751543164253235, - 0.03604555130004883, - -0.018202871084213257, - 0.11016976833343506, - 0.04118771478533745, - -0.0010136824566870928, - 0.04419294372200966, - -0.10390569269657135, - 0.11609356105327606, - 0.07350269705057144, - -0.014546538703143597, - 0.035217300057411194, - -0.03119894675910473, - 0.07928471267223358, - 0.07784344255924225, - -0.1420353800058365, - -0.06783810257911682, - 0.05091366544365883, - 0.013413838110864162, - -0.02013235352933407, - 0.11179488897323608, - -0.017391007393598557, - 0.006360135972499847, - 0.10977926850318909, - -0.07860468327999115, - -0.035291098058223724, - -0.008562113158404827, - 0.043972499668598175, - -0.05718036741018295, - 0.026436736807227135, - 0.0379178524017334, - -0.014167545363307, - 0.009817534126341343, - 0.08710454404354095, - -0.005403401795774698, - -0.015400934033095837, - 0.015755411237478256, - -0.03670327365398407, - 0.05373668670654297, - -0.0224139504134655, - -0.004703362472355366, - 0.07648744434118271, - 0.05891390144824982, - 0.04091031104326248, - 0.0071042245253920555, - -0.04414096847176552, - -0.10686540603637695, - 0.0027092299424111843, - 0.04072807729244232, - 0.0961134284734726, - -0.009441401809453964, - 0.01563969813287258, - -0.057062502950429916, - -0.0801522433757782, - 0.037142105400562286, - -0.014690391719341278, - 0.10363982617855072, - -0.012510514818131924, - -0.018634168431162834, - 0.0925869345664978, - 0.0008132611401379108, - -0.01129884272813797, - -0.05854763835668564, - -0.015685176476836205, - 0.016685033217072487, - 0.05314243584871292, - -0.07423895597457886, - -0.05283540487289429, - 0.01611187681555748, - 0.03279174864292145, - -0.024663999676704407, - 0.028591422364115715, - 0.020020995289087296, - 0.014441312290728092, - 0.032588060945272446, - -0.06198543682694435, - 0.01629823073744774, - -0.11632714420557022, - -0.04015820100903511, - 0.007386847399175167, - -0.03576727211475372, - -0.02159692347049713, - 0.07925155758857727, - 0.017603199928998947, - 0.02251569740474224, - -0.0007731998339295387, - -0.10292688012123108, - -0.05028044059872627, - 0.08091562986373901, - 0.061586037278175354, - 0.0030805757269263268, - 0.045238859951496124, - 0.0681837946176529, - -0.021632235497236252, - 0.041553035378456116, - 0.07853146642446518, - 0.12201513350009918, - -0.01677505485713482, - 0.010314326733350754, - -0.0555390864610672, - 0.09369504451751709, - 0.04927774518728256, - -0.09229934960603714, - -0.07560437172651291, - -0.019447151571512222, - -0.04411613941192627, - 0.03195546194911003, - -0.027498751878738403, - 0.015715764835476875, - 0.008266070857644081, - -0.0093894237652421, - -0.0955914855003357, - -0.08007149398326874, - 0.07545959949493408, - -0.07774260640144348, - -0.015143567696213722, - -0.07147689908742905, - 0.03594396263360977, - 0.10226476192474365, - 0.03887157142162323, - -0.003692230675369501, - 0.021670151501893997, - 0.052344802767038345, - -0.0735076442360878, - -0.021128442138433456, - 0.04399508982896805, - -0.0030346475541591644, - -0.10147459805011749, - 0.0016169245354831219, - -0.07501290738582611, - 0.07262503355741501, - -0.0329170897603035, - 0.1617656946182251, - -0.008428012952208519, - -0.04238666221499443, - -0.06451249867677689, - 0.028731701895594597, - -0.03555263951420784, - 0.05893290787935257, - 0.0522683821618557, - 0.07954270392656326, - 0.04428446665406227, - -0.03126406669616699, - 0.13565810024738312, - 0.026286523789167404, - -0.03735680133104324, - -0.052023373544216156, - -0.04361040145158768, - -0.047741711139678955, - -0.0012032240629196167, - -0.007811387535184622, - -0.07947827130556107, - 0.002552179852500558, - 0.02337745577096939, - -0.03732242062687874, - 0.04848259314894676, - 0.13554911315441132, - 0.09589840471744537, - -0.10047736018896103 - ] - }, - "p244_294.wav": { - "name": "p244", - "embedding": [ - 0.05459770932793617, - 0.09692078828811646, - 0.034110262989997864, - -0.0064083002507686615, - -0.0016159266233444214, - 0.06098071485757828, - -0.0019242726266384125, - 0.029791438952088356, - 0.043669626116752625, - 0.03141648694872856, - -0.13712216913700104, - 0.015368815511465073, - -0.04275570809841156, - -0.09147221595048904, - 0.0021834485232830048, - 0.003703085705637932, - -0.04947929084300995, - 0.033372387290000916, - -0.08244379609823227, - -0.04842475801706314, - -0.02709442377090454, - 0.01844625733792782, - 0.04003070294857025, - -0.012804122641682625, - 0.008990863338112831, - -0.0015538651496171951, - -0.033967334777116776, - 0.0038456767797470093, - -0.004893500357866287, - -0.02232736349105835, - -0.017596619203686714, - 0.052045293152332306, - -0.020494090393185616, - 0.003293451853096485, - -0.012989339418709278, - -0.01611274853348732, - 0.04672421142458916, - -0.058031462132930756, - -0.07602435350418091, - 0.08422161638736725, - -0.05447268858551979, - 0.039856910705566406, - 0.036663204431533813, - -0.03148551285266876, - 0.06773682683706284, - 0.028575213626027107, - -0.06859086453914642, - -0.018293052911758423, - -0.0930774137377739, - 0.12601858377456665, - 0.019773390144109726, - 0.0027833152562379837, - -0.043309565633535385, - -0.0038204602897167206, - 0.08016970753669739, - -0.026515642181038857, - -0.05711697041988373, - -0.013333331793546677, - 0.03941173851490021, - 0.01232369989156723, - 0.02178972214460373, - -0.018486149609088898, - -0.0008278060704469681, - 0.029108721762895584, - 0.032468684017658234, - 0.003423718735575676, - 0.07366481423377991, - 0.0882650762796402, - -0.034370917826890945, - 0.027483398094773293, - 0.041749030351638794, - -0.015110151842236519, - 0.035660263150930405, - -0.024566374719142914, - -0.002788074780255556, - 0.006025985814630985, - -0.0012370645999908447, - -0.00061781145632267, - -0.011827313341200352, - 0.0045961979776620865, - 0.05302602797746658, - -0.008314095437526703, - 0.005373794585466385, - -0.028439205139875412, - -0.06640344113111496, - -0.018115470185875893, - 0.020426370203495026, - 0.10739146918058395, - 0.06657235324382782, - 0.030314920470118523, - -0.02405921369791031, - 0.05070885270833969, - -0.004432052373886108, - -0.06371951103210449, - -0.014773405157029629, - 0.02326551079750061, - -0.0334271639585495, - 0.010177874937653542, - 0.0128205306828022, - -0.033079661428928375, - 0.10438427329063416, - -0.012929296121001244, - 0.017319563776254654, - 0.003089758800342679, - -0.05310531705617905, - 0.026461442932486534, - 0.06254327297210693, - -0.007300850469619036, - 0.05399668216705322, - 0.05127112194895744, - 0.07161993533372879, - 0.054211489856243134, - -0.04744037240743637, - 0.02229412831366062, - -0.01912686601281166, - 0.02145194821059704, - 0.027147062122821808, - 0.04858610779047012, - -0.014697854407131672, - 0.00962826982140541, - 0.11358815431594849, - -0.05141371488571167, - 0.045244377106428146, - 0.0693792775273323, - -0.013311095535755157, - 0.015627872198820114, - -0.010845188051462173, - 0.01296083815395832, - 0.0010310275247320533, - -0.018267296254634857, - 0.032023265957832336, - 0.02748061530292034, - 0.016742747277021408, - -0.058643072843551636, - 0.007779669016599655, - 0.014255264773964882, - -0.011432375758886337, - -0.032026465982198715, - 0.06818370521068573, - 0.0639820247888565, - -0.004529863595962524, - 0.03531370311975479, - -0.08471833169460297, - -0.041573092341423035, - 0.033655498176813126, - -0.029919598251581192, - -0.008899053558707237, - 0.0473807118833065, - 0.0228391382843256, - -0.07020162791013718, - -0.01822015270590782, - 0.0824078917503357, - -0.024868350476026535, - 0.05708181858062744, - 0.05647536367177963, - -0.04861126095056534, - 0.045512981712818146, - 0.007925758138298988, - 0.0029540322721004486, - -0.059834592044353485, - -0.08462066203355789, - -0.017674196511507034, - 0.02872186154127121, - -0.02420901134610176, - -0.03424072265625, - 0.00038669025525450706, - -0.036492180079221725, - 0.018306896090507507, - 0.003338536247611046, - 0.06238124147057533, - -0.05255705863237381, - -0.02036033384501934, - -0.07615116238594055, - 0.006157362833619118, - -0.01492508128285408, - -0.07994262129068375, - 0.07392583042383194, - 0.010979946702718735, - 0.03220098838210106, - 0.09884827584028244, - -0.0093125831335783, - -0.024086738005280495, - -0.02919691987335682, - -0.08508110046386719, - 0.03622109815478325, - 0.0648600310087204, - 0.014950856566429138, - 0.0005343131488189101, - 0.0695033073425293, - 0.07146354019641876, - -0.043819110840559006, - 0.06294053792953491, - 0.006943363696336746, - 0.04776650294661522, - -0.03678154945373535, - 0.02134629525244236, - 0.05925159901380539, - 0.021911825984716415, - -0.014504063874483109, - -0.05298515781760216, - -0.0887821614742279, - -0.03641137108206749, - -0.01660066470503807, - 0.0271434523165226, - 0.04009388014674187, - 0.0022525531239807606, - 0.029352184385061264, - -0.01085197739303112, - -0.014458512887358665, - -0.08562184125185013, - -0.02121656946837902, - 0.01790078915655613, - -0.03444860503077507, - -0.009848552756011486, - 0.010793544352054596, - 0.014673493802547455, - 0.032983336597681046, - 0.016017448157072067, - 0.057917576283216476, - 0.0021679699420928955, - -0.024285046383738518, - -0.06794047355651855, - -0.0030190758407115936, - 0.016725914552807808, - 0.023800421506166458, - -0.016430489718914032, - -0.08820229768753052, - 0.06737106293439865, - 0.04852858558297157, - 0.05988413840532303, - 0.04306931421160698, - 0.01472826860845089, - -0.02986275963485241, - 0.056540168821811676, - -0.05957406759262085, - 0.015854213386774063, - 0.008490528911352158, - -0.0008817892521619797, - 0.05486217141151428, - -0.005926603451371193, - 0.04668886959552765, - 0.013959752395749092, - -0.04538290947675705, - -0.0045194728299975395, - 0.02113373950123787, - -0.06746774166822433, - -0.06198063865303993, - -0.0027016643434762955, - -0.03714124858379364, - 0.014241979457437992, - 0.01456441730260849, - 0.03408201038837433, - 0.026708047837018967, - 0.05251551792025566, - 0.05870480462908745, - -0.029065687209367752 - ] - }, - "p244_135.wav": { - "name": "p244", - "embedding": [ - 0.023152079433202744, - 0.09741730242967606, - -0.0059401304461061954, - -0.005204157903790474, - 0.03634214773774147, - 0.03535531088709831, - -0.15766490995883942, - 0.09233208000659943, - -0.028851093724370003, - 0.1348705291748047, - -0.02905436046421528, - 0.08282940089702606, - -0.026874873787164688, - -0.10395929962396622, - -0.020957835018634796, - 0.04384145140647888, - -0.03349773585796356, - 0.005120584741234779, - 0.004561613313853741, - -0.04811861738562584, - 0.029772508889436722, - 0.018856395035982132, - 0.038218241184949875, - -0.07529878616333008, - -0.023433564230799675, - 0.09012305736541748, - -0.015199529007077217, - 0.020292077213525772, - -0.016277670860290527, - -0.05402466654777527, - -0.00019069109112024307, - 0.07217034697532654, - -0.017931345850229263, - -0.005795499309897423, - 0.0464404821395874, - 0.010099080391228199, - -0.019779304042458534, - -0.00823136791586876, - 0.0235019251704216, - 0.043510861694812775, - -0.04943716526031494, - 0.07658616453409195, - 0.011271169409155846, - 0.0025685979053378105, - 0.07787811756134033, - -0.024300359189510345, - -0.008092183619737625, - 0.02601260505616665, - -0.03273119404911995, - 0.08107335865497589, - 0.07730451971292496, - -0.035827118903398514, - -0.04903008043766022, - 0.0060870107263326645, - 0.07299045473337173, - -0.004551445133984089, - -0.11414709687232971, - -0.006249286234378815, - 0.04710996150970459, - 0.10727240145206451, - -0.03295926749706268, - -0.03396943211555481, - 0.03118891641497612, - 0.08713142573833466, - 0.01949862390756607, - 0.08233736455440521, - 0.0864095538854599, - 0.05616934224963188, - -0.002649313537403941, - -0.06313405930995941, - -0.0016063060611486435, - 0.06908921897411346, - 0.03489881008863449, - -0.008097958751022816, - 0.043651033192873, - -0.04006895795464516, - -0.03346656262874603, - -0.03596054017543793, - -0.030230427160859108, - -0.05994865298271179, - -0.055788472294807434, - -0.018438048660755157, - -0.004831886850297451, - 0.0500052385032177, - 0.005923507735133171, - 0.004992896690964699, - 0.07878495007753372, - -0.034897416830062866, - 0.027589812874794006, - 0.06915529072284698, - 0.05788910388946533, - 0.02284521982073784, - -0.055793389678001404, - -0.03556106984615326, - 0.01592733897268772, - -0.0023698201403021812, - 0.04201061278581619, - 0.03706873580813408, - 0.03596065938472748, - 0.02524399757385254, - 0.074647456407547, - 0.029606565833091736, - -0.02129148691892624, - -0.012736542150378227, - -0.07534854114055634, - 0.07479290664196014, - 0.11114946752786636, - -0.03819539397954941, - 0.01701013371348381, - -0.04315700754523277, - 0.001974867656826973, - 0.005336157977581024, - -0.08184857666492462, - -0.033932819962501526, - 0.030174821615219116, - 0.05284665524959564, - 0.017482154071331024, - 0.10176478326320648, - 0.03601876273751259, - 0.007964854128658772, - 0.06117773801088333, - -0.02712995745241642, - -0.06513582170009613, - -0.08050549775362015, - 0.0726812481880188, - -0.0772937461733818, - 0.08192472159862518, - 0.0410720556974411, - 0.053981244564056396, - -5.988357588648796e-05, - 0.07112900912761688, - 0.03771350905299187, - 0.002997546922415495, - -0.03868882730603218, - -0.011506887152791023, - 0.017934169620275497, - -0.02998996153473854, - 0.06013557314872742, - 0.0058275917544960976, - 0.006400484591722488, - 0.08703646063804626, - 0.010072679258883, - 0.018033944070339203, - -0.054202016443014145, - -0.012071235105395317, - 0.032916150987148285, - 0.009730007499456406, - -0.018693195655941963, - -0.052879441529512405, - -0.013050433248281479, - -0.06234798580408096, - -0.023303914815187454, - -0.08574208617210388, - 0.07188475131988525, - -0.007570648565888405, - 0.00465709064155817, - 0.10330045223236084, - 0.0035562007687985897, - 0.0039936089888215065, - -0.0093446159735322, - 0.0004977677017450333, - -0.024095721542835236, - 0.03508252277970314, - -0.12515079975128174, - -0.09142842143774033, - -0.01919148489832878, - 0.02442741021513939, - 0.04023757204413414, - 0.06503134965896606, - 0.0722869336605072, - -0.004145444370806217, - 0.013488314114511013, - 0.011189866811037064, - -0.008618982508778572, - -0.07647408545017242, - -0.07290400564670563, - -0.049331702291965485, - -0.07295039296150208, - -0.03239937126636505, - 0.07065114378929138, - -0.003519633784890175, - 0.061097707599401474, - -0.02508750930428505, - -0.045581988990306854, - -0.08626221120357513, - 0.04207466170191765, - 0.06388793885707855, - -0.04866380617022514, - 0.014923077076673508, - 0.06266094744205475, - -0.014633476734161377, - 0.023118089884519577, - 0.0540110319852829, - 0.06507842242717743, - -0.036700256168842316, - 0.01881781406700611, - -0.10154832899570465, - 0.03728842735290527, - 0.1263507604598999, - -0.0640719011425972, - -0.06301351636648178, - -0.028203463181853294, - -0.073729507625103, - 0.01431583147495985, - -0.058322980999946594, - -0.015351168811321259, - 0.011649432592093945, - -0.0032535537611693144, - -0.09025150537490845, - -0.08877411484718323, - 0.05652223527431488, - -0.05885806307196617, - 0.005997309461236, - -0.043803319334983826, - 0.032793596386909485, - 0.013186916708946228, - 0.06229151040315628, - -0.06326690316200256, - 0.03381779044866562, - 0.052496038377285004, - -0.005334106273949146, - 0.04825032502412796, - 0.03551916778087616, - 0.06365902721881866, - -0.06620834767818451, - -0.0168315302580595, - -0.06659018993377686, - 0.060722533613443375, - -0.07018409669399261, - 0.0692947655916214, - 0.0461626760661602, - -0.057385947555303574, - -0.04328979551792145, - 0.023377705365419388, - -0.007375683635473251, - 0.03373037651181221, - 0.03742073103785515, - 0.05114341527223587, - 0.019233204424381256, - -0.040658656507730484, - 0.05962540581822395, - 0.01966499537229538, - 0.02538778819143772, - -0.05764186009764671, - -0.027959484606981277, - -0.04696515575051308, - 0.033016059547662735, - 0.047041065990924835, - -0.07674629986286163, - 0.0011832164600491524, - -0.006663663312792778, - 0.01351076178252697, - 0.03883802145719528, - 0.07107052206993103, - 0.019237473607063293, - -0.0993230864405632 - ] - }, - "p244_039.wav": { - "name": "p244", - "embedding": [ - 0.03452495485544205, - 0.09113936126232147, - -0.02807021513581276, - 0.027674861252307892, - -0.06901799887418747, - 0.07104932516813278, - -0.1240689754486084, - 0.13344720005989075, - -0.05678536742925644, - 0.12918883562088013, - -0.04733916372060776, - 0.1164083257317543, - -0.0435982346534729, - -0.17250755429267883, - -0.019068442285060883, - 0.0685286745429039, - -0.06407567858695984, - -0.0567045658826828, - -0.05430130660533905, - -0.024232761934399605, - 0.02634439244866371, - 0.027563832700252533, - 0.021898195147514343, - 0.0037842821329832077, - 0.023540113121271133, - 0.07967697083950043, - -0.0024690390564501286, - 0.03802308812737465, - 0.006210951134562492, - -0.05959038436412811, - -0.038175068795681, - 0.07783909887075424, - -0.055609963834285736, - 0.004352572839707136, - 0.044309139251708984, - -0.006673365831375122, - 0.007752086967229843, - -0.05395379662513733, - -0.024816643446683884, - 0.010710205882787704, - -0.048644691705703735, - 0.0851868987083435, - 0.028173040598630905, - -0.015676124021410942, - 0.02468530274927616, - 0.01629478484392166, - -0.017444442957639694, - -0.04212478548288345, - -0.10894104838371277, - 0.16576528549194336, - 0.07792654633522034, - -0.011281299404799938, - -0.052508577704429626, - -0.07379334419965744, - 0.10837060213088989, - -0.01277498435229063, - -0.12587250769138336, - -0.05935867875814438, - 0.0760241448879242, - 0.1493900716304779, - -0.04268559068441391, - -0.028354642912745476, - 0.0199174452573061, - 0.11805108189582825, - 0.0691637396812439, - 0.08714838325977325, - 0.06688728928565979, - 0.11302471160888672, - -0.016877448186278343, - 0.0058128125965595245, - 0.07747972011566162, - 0.07227548956871033, - 0.05270903557538986, - 0.01096506230533123, - 0.03515718877315521, - -0.0074975392781198025, - -0.007881204597651958, - 0.0007107113488018513, - -0.0194461140781641, - -0.028660684823989868, - -0.005686155520379543, - 0.0169783066958189, - 0.012060223147273064, - 0.022798454388976097, - -0.002281412947922945, - 0.06908160448074341, - 0.039669353514909744, - -0.01327459141612053, - 0.06779712438583374, - 0.027073048055171967, - 0.003198810387402773, - 0.07844610512256622, - -0.08185259997844696, - -0.06457537412643433, - 0.03036617487668991, - 0.005941013339906931, - 0.029900038614869118, - 0.05931316316127777, - 0.03459172695875168, - -0.007403201423585415, - 0.1252930611371994, - 0.04622042179107666, - -0.001258991425856948, - 0.03196042776107788, - -0.09170105308294296, - 0.14176511764526367, - 0.06982070207595825, - -0.031273163855075836, - 0.03707767277956009, - -0.034169696271419525, - 0.06605812907218933, - 0.06151140481233597, - -0.12980085611343384, - -0.08624441921710968, - 0.02376975491642952, - 0.007056825328618288, - -0.03618696331977844, - 0.12434963881969452, - -0.0011281119659543037, - 0.03457741439342499, - 0.12813995778560638, - -0.09511110186576843, - -0.053252480924129486, - -0.001085975207388401, - 0.04598922282457352, - -0.07676871865987778, - 0.04736027866601944, - 0.05796707049012184, - -0.011520478874444962, - 0.029647361487150192, - 0.096123106777668, - -0.014565447345376015, - 0.0005589481443166733, - 0.027220789343118668, - -0.047706518322229385, - 0.015413366258144379, - -0.024416249245405197, - -0.008328471332788467, - 0.061628419905900955, - 0.03454606607556343, - 0.0511992946267128, - -0.02460273541510105, - -0.027242150157690048, - -0.1334373950958252, - 0.019158165901899338, - 0.034600451588630676, - 0.08311831951141357, - -0.011632947251200676, - -0.008430896326899529, - -0.036042604595422745, - -0.07167571783065796, - 0.008893825113773346, - -0.004112382419407368, - 0.08552367985248566, - -0.03929881751537323, - -0.011441257782280445, - 0.10401059687137604, - 0.032531190663576126, - 0.001271229819394648, - -0.05946318060159683, - -0.04089515283703804, - 0.01465566921979189, - 0.049633849412202835, - -0.07746708393096924, - -0.07782280445098877, - -0.003218310885131359, - 0.04652273654937744, - -0.012186771258711815, - 0.06431117653846741, - 0.04941924661397934, - 0.022992730140686035, - 0.019034449011087418, - -0.05408584326505661, - 0.02870144695043564, - -0.07829972356557846, - -0.06670744717121124, - -0.005202499683946371, - -0.02171381749212742, - -0.03455350920557976, - 0.07468392699956894, - 0.006643473170697689, - 0.05565433204174042, - -0.024039601907134056, - -0.07702488452196121, - -0.08659431338310242, - 0.059704288840293884, - 0.05510610342025757, - -0.010910090990364552, - 0.04358004778623581, - 0.0703972578048706, - -0.02365177683532238, - 0.03980516642332077, - 0.05007283017039299, - 0.11998628824949265, - -0.03361207991838455, - 0.010733604431152344, - -0.06827697157859802, - 0.07469190657138824, - 0.068604975938797, - -0.09395161271095276, - -0.05628751218318939, - -0.022331485524773598, - -0.05472203344106674, - 0.037674590945243835, - -0.03950042277574539, - 0.00900814589112997, - 0.0321948304772377, - 0.0036626129876822233, - -0.09853214770555496, - -0.09387937188148499, - 0.08493678271770477, - -0.08031099289655685, - -0.00446568476036191, - -0.07738938182592392, - 0.04300074279308319, - 0.08873571455478668, - 0.053508080542087555, - -0.03370709717273712, - 0.00267464155331254, - 0.05076988786458969, - -0.0256606787443161, - 0.027654945850372314, - 0.07335919141769409, - 0.04329894483089447, - -0.09374304860830307, - -0.013861390762031078, - -0.08887840807437897, - 0.04297950863838196, - -0.0341179184615612, - 0.16169285774230957, - 0.0035016387701034546, - -0.036780983209609985, - -0.08410822600126266, - 0.03573472797870636, - -0.03151992708444595, - 0.0613817535340786, - 0.032926950603723526, - 0.07025118172168732, - 0.05510089918971062, - -0.045611269772052765, - 0.13286525011062622, - 0.04163186624646187, - -0.04257578402757645, - -0.06335237622261047, - -0.04410955682396889, - -0.051591657102108, - 0.038163717836141586, - 0.020653005689382553, - -0.09552693367004395, - -0.021972300484776497, - 0.022965526208281517, - -0.008364957757294178, - 0.0680304765701294, - 0.13970616459846497, - 0.07336626946926117, - -0.09822914004325867 - ] - }, - "p244_250.wav": { - "name": "p244", - "embedding": [ - 0.062431447207927704, - 0.1055077388882637, - 0.0719587653875351, - -0.0017626192420721054, - 0.01648172177374363, - 0.011706388555467129, - -0.0732860416173935, - 0.07602834701538086, - 0.046242982149124146, - 0.08620595932006836, - -0.10527466237545013, - 0.07213811576366425, - -0.058775804936885834, - -0.10755819082260132, - -0.07280032336711884, - 0.0035202298313379288, - -0.07658751308917999, - -0.008769907057285309, - -0.011892813257873058, - -0.03454851359128952, - 0.017723968252539635, - 0.002853741869330406, - 0.07499523460865021, - -0.023043876513838768, - -0.025650162249803543, - 0.04952001944184303, - 0.01879957504570484, - 0.02826358750462532, - 0.034655049443244934, - -0.04409731179475784, - 0.059410445392131805, - 0.018725212663412094, - 0.019333552569150925, - 0.03222040832042694, - 0.04541291669011116, - 0.015718013048171997, - 0.01366178598254919, - -0.012472366914153099, - -0.015246894210577011, - 0.05869060009717941, - -0.011923854239284992, - 0.049618229269981384, - 0.017274901270866394, - -0.05264103040099144, - 0.05863826721906662, - 0.033894263207912445, - -0.037105221301317215, - 0.0021170377731323242, - -0.10726907849311829, - 0.1230846494436264, - 0.021869661286473274, - 0.02329801581799984, - -0.06757653504610062, - -0.004025541245937347, - 0.07061650604009628, - -0.042555369436740875, - -0.08233536779880524, - 0.00034937169402837753, - 0.04897359758615494, - 0.05953141674399376, - -0.03580698370933533, - -0.05203752964735031, - -0.017815086990594864, - 0.045831747353076935, - 0.03294871747493744, - 0.012103233486413956, - 0.10486552119255066, - 0.08104012161493301, - -0.019803527742624283, - 0.029939714819192886, - 0.0404583178460598, - 0.016506722196936607, - 0.04867973178625107, - 0.009029091335833073, - 0.014505889266729355, - -0.03871307522058487, - -0.005139422602951527, - -0.00021542096510529518, - -0.004956761375069618, - -0.035853900015354156, - 0.015884365886449814, - -0.02970482036471367, - 0.012992695905268192, - 0.01892855390906334, - -0.031174639239907265, - 0.02334025874733925, - -0.0011029792949557304, - 0.021739188581705093, - 0.05173725634813309, - 0.043126001954078674, - 0.033411115407943726, - 0.04900289699435234, - -0.04000385105609894, - -0.09918032586574554, - -0.031840428709983826, - -0.05493808910250664, - 0.05054762214422226, - 0.022552907466888428, - 0.03326025605201721, - 0.010650456883013248, - 0.08386949449777603, - 0.036290764808654785, - -0.0348379984498024, - -0.014407012611627579, - -0.08405423164367676, - 0.040549520403146744, - 0.09424307942390442, - -0.010251492261886597, - -0.00920802727341652, - -0.011925606057047844, - 0.057332783937454224, - 0.05337955802679062, - -0.037124279886484146, - -0.023837216198444366, - 0.005821993574500084, - 0.05783270299434662, - 0.03503227233886719, - 0.07044202089309692, - -0.013608439825475216, - 0.02767532505095005, - 0.1217494085431099, - -0.03475397825241089, - 0.008493371307849884, - -0.020756468176841736, - -0.00910147838294506, - -0.03746757656335831, - 0.04849274456501007, - 0.017566323280334473, - 0.013705388642847538, - -0.015677576884627342, - 0.044619832187891006, - 0.017076361924409866, - -0.011637162417173386, - -0.0628896951675415, - -0.015701444819569588, - 0.04721507802605629, - -0.00780488969758153, - 0.014239276759326458, - 0.034589026123285294, - 0.080256886780262, - 0.027128536254167557, - 0.06867227703332901, - -0.05274093151092529, - -0.028290964663028717, - 0.028087947517633438, - 0.030750615522265434, - -0.004874279722571373, - -0.008929851464927197, - -0.07355612516403198, - -0.040170133113861084, - 0.040504783391952515, - 0.06173902004957199, - -0.023618973791599274, - 0.047443144023418427, - 0.012195669114589691, - 0.003977837041020393, - 0.09765516966581345, - -0.011126579716801643, - -0.01099430676549673, - -0.027726374566555023, - -0.06543842703104019, - -0.025217559188604355, - 0.017444688826799393, - -0.14914390444755554, - -0.04372129216790199, - -0.04174049198627472, - 0.014871444553136826, - 0.011410490609705448, - 0.020001566037535667, - 0.05797942355275154, - -0.033873897045850754, - 0.01121208444237709, - 0.012561148963868618, - -0.0008125659078359604, - -0.040627654641866684, - -0.09612931311130524, - 0.009742990136146545, - -0.02788529545068741, - 0.013036103919148445, - 0.04047970846295357, - -0.02767289988696575, - 0.03477858379483223, - -0.02697950042784214, - -0.07211016863584518, - -0.02981290966272354, - 0.07507242262363434, - 0.02910318598151207, - 0.007929733023047447, - 0.041007086634635925, - 0.043032798916101456, - -0.018553080037236214, - 0.08752802014350891, - -0.021110326051712036, - 0.06976930797100067, - -0.06684784591197968, - 0.011702246963977814, - -0.022627564147114754, - 0.013361742720007896, - 0.08069506287574768, - -0.039607301354408264, - -0.10544412583112717, - -0.05867569148540497, - -0.03933628648519516, - 0.029441125690937042, - -0.015022898092865944, - -0.03169183060526848, - 0.019883954897522926, - -0.012003048323094845, - -0.0503416582942009, - -0.0827881395816803, - 0.014340793713927269, - 0.0034641996026039124, - 0.011428428813815117, - -0.06133219599723816, - 0.02851206809282303, - 0.006955187767744064, - 0.00915826391428709, - -0.012972543947398663, - 0.05632566660642624, - -0.025707431137561798, - -0.020661504939198494, - -0.0511556938290596, - -0.02719610556960106, - 0.04003056883811951, - 0.0014334768056869507, - -0.040297575294971466, - -0.05317388474941254, - 0.03939535841345787, - -0.008402019739151001, - 0.06413179636001587, - 0.02613222599029541, - -0.0028604064136743546, - 0.014601640403270721, - -0.005364725366234779, - -0.06329908967018127, - 0.038015615195035934, - 0.03844130039215088, - 0.0024194493889808655, - -0.00031972676515579224, - -0.042167793959379196, - 0.08011392503976822, - 0.03018803335726261, - -0.01578505150973797, - -0.05181126669049263, - -0.01699543185532093, - -0.0622689351439476, - -0.062031641602516174, - 0.00442867074161768, - -0.04469887539744377, - 0.005384992808103561, - -0.01816532388329506, - 0.029129192233085632, - 0.02449989877641201, - 0.0841723084449768, - 0.008989982306957245, - -0.01770438626408577 - ] - }, - "p244_395.wav": { - "name": "p244", - "embedding": [ - 0.06550323963165283, - 0.08433538675308228, - -0.01784982718527317, - 0.042128533124923706, - -0.0611109584569931, - 0.0825430303812027, - -0.11566765606403351, - 0.12361620366573334, - -0.048154883086681366, - 0.13537082076072693, - -0.07359838485717773, - 0.1323944330215454, - -0.023047588765621185, - -0.16341546177864075, - -0.04204190894961357, - 0.05769350379705429, - -0.045354656875133514, - -0.024428818374872208, - -0.05983767658472061, - -0.005813024938106537, - 0.030469555407762527, - 0.015851859003305435, - 0.04962851107120514, - 0.010186433792114258, - 0.019705165177583694, - 0.06448869407176971, - 0.010008448734879494, - 0.07087679952383041, - 0.04192063957452774, - -0.06828481703996658, - -0.044956106692552567, - 0.10697366297245026, - -0.041706833988428116, - 0.015813250094652176, - 0.05696561187505722, - -0.00443008728325367, - 0.005681009031832218, - -0.06760845333337784, - -0.019102338701486588, - -0.0051755537278950214, - -0.042273592203855515, - 0.07852160185575485, - 0.019778680056333542, - -0.02376950904726982, - 0.04094938561320305, - 0.016479993239045143, - -0.028815045952796936, - -0.04552776366472244, - -0.10375819355249405, - 0.1447528898715973, - 0.06393130123615265, - -0.011723598465323448, - -0.06754104793071747, - -0.05448810011148453, - 0.09959813952445984, - -0.029199954122304916, - -0.11930166929960251, - -0.055169977247714996, - 0.07341191172599792, - 0.15536415576934814, - -0.04089302942156792, - -0.023522716015577316, - 0.01840304583311081, - 0.12300778925418854, - 0.08684463798999786, - 0.09674455225467682, - 0.08758467435836792, - 0.12548743188381195, - -0.006790135521441698, - 0.042646609246730804, - 0.0560179203748703, - 0.06942833214998245, - 0.061708252876996994, - 0.013477151282131672, - 0.03933752700686455, - -0.008483430370688438, - 0.001742625143378973, - -0.0003776503726840019, - -0.03048553504049778, - -0.013693335466086864, - -0.004844842478632927, - 0.011782709509134293, - 0.012974073179066181, - 0.015144234523177147, - -0.0349220335483551, - 0.07906190305948257, - 0.02308282069861889, - -0.020901208743453026, - 0.050234150141477585, - 0.036390677094459534, - 0.0014946670271456242, - 0.06121912971138954, - -0.07839523255825043, - -0.09944514185190201, - 0.022250216454267502, - -0.0006318851956166327, - 0.02032862976193428, - 0.052526310086250305, - 0.031497515738010406, - -0.0024404043797403574, - 0.11751715838909149, - 0.061954744160175323, - -0.019176315516233444, - 0.055060286074876785, - -0.07769570499658585, - 0.14618411660194397, - 0.07447339594364166, - -0.021978769451379776, - 0.036761581897735596, - -0.037156060338020325, - 0.07684732973575592, - 0.06659726798534393, - -0.12881402671337128, - -0.07086119800806046, - 0.024343134835362434, - -0.021254505962133408, - -0.02728954888880253, - 0.09162120521068573, - -0.018867691978812218, - 0.02837556228041649, - 0.10054180026054382, - -0.06760302186012268, - -0.046280235052108765, - -0.00885520875453949, - 0.03753401339054108, - -0.08088141679763794, - 0.051847539842128754, - 0.021052204072475433, - 0.009135914035141468, - -0.006809916812926531, - 0.11279579252004623, - -0.008204659447073936, - -0.023509299382567406, - 0.03740396350622177, - -0.0526740737259388, - 0.03347979113459587, - -0.024213820695877075, - -0.004802764393389225, - 0.059255875647068024, - 0.03875081241130829, - 0.0485798642039299, - -0.019528187811374664, - -0.011809159070253372, - -0.10885215550661087, - 0.01261910516768694, - 0.031799495220184326, - 0.079539455473423, - -0.0022320784628391266, - -0.0003851871006190777, - -0.04649035632610321, - -0.06041101738810539, - 0.03568731248378754, - -0.015645936131477356, - 0.07626651227474213, - -0.026368524879217148, - 0.004640602506697178, - 0.10662159323692322, - -0.006209053099155426, - 0.02273491397500038, - -0.05773773044347763, - -0.007855311036109924, - 0.028580427169799805, - 0.05584920197725296, - -0.06564788520336151, - -0.06538498401641846, - 0.00945715606212616, - 0.02500418946146965, - -0.02937411703169346, - 0.049371227622032166, - 0.04602263122797012, - 0.01210583746433258, - 0.03564991056919098, - -0.053790681064128876, - 0.003295939415693283, - -0.0892810970544815, - -0.04139140993356705, - -0.012519673444330692, - -0.027147313579916954, - -0.02612319402396679, - 0.06090090423822403, - 0.0270896814763546, - 0.04251787066459656, - -0.008985700085759163, - -0.09190566837787628, - -0.08594243228435516, - 0.06631132960319519, - 0.059366270899772644, - 0.005575481336563826, - 0.04892541468143463, - 0.05515887588262558, - -0.020950686186552048, - 0.054844826459884644, - 0.06025625020265579, - 0.08997799456119537, - -0.014691060408949852, - -0.0008571925573050976, - -0.07554928958415985, - 0.08299057185649872, - 0.08920322358608246, - -0.09265848994255066, - -0.08691748976707458, - -0.01644587144255638, - -0.06504520028829575, - 0.03762195259332657, - -0.039312612265348434, - -0.008922424167394638, - 0.07188019901514053, - -0.008827592246234417, - -0.0992414727807045, - -0.09651048481464386, - 0.11100850999355316, - -0.1005588248372078, - -0.009016851894557476, - -0.0759815126657486, - 0.03321519121527672, - 0.07887186855077744, - 0.024975284934043884, - -0.0414896085858345, - 0.004556160420179367, - 0.05652583763003349, - -0.054578110575675964, - -0.003086267039179802, - 0.04762229323387146, - 0.014138929545879364, - -0.11925549805164337, - -0.00040640681982040405, - -0.07136248052120209, - 0.04329359158873558, - -0.04628782719373703, - 0.15944702923297882, - -0.0057054003700613976, - -0.031560610979795456, - -0.06449881941080093, - 0.0418616458773613, - -0.039061058312654495, - 0.05671829730272293, - 0.052179187536239624, - 0.06839682161808014, - 0.026597080752253532, - -0.07664692401885986, - 0.13425201177597046, - 0.04492074251174927, - -0.047954022884368896, - -0.08672016859054565, - -0.04469480738043785, - -0.05823684483766556, - 0.030289176851511, - 0.027064893394708633, - -0.09275262802839279, - -0.013293991796672344, - 0.030065184459090233, - -0.03977680951356888, - 0.06271173059940338, - 0.1367710381746292, - 0.07483130693435669, - -0.07990959286689758 - ] - }, - "p244_006.wav": { - "name": "p244", - "embedding": [ - 0.032584819942712784, - 0.1049271896481514, - -0.002525875810533762, - 0.003385673277080059, - -0.05324282497167587, - 0.043377261608839035, - -0.13818272948265076, - 0.14049102365970612, - -0.03734908252954483, - 0.12935465574264526, - -0.08139845728874207, - 0.10115008056163788, - -0.0506473183631897, - -0.17288002371788025, - -0.03645024076104164, - 0.048998553305864334, - -0.03691449016332626, - -0.02941044420003891, - -0.020614400506019592, - -0.031054820865392685, - 0.03942759335041046, - 0.03691130131483078, - 0.022531339898705482, - 0.0038436129689216614, - 0.024111609905958176, - 0.06306054443120956, - 0.00833013467490673, - 0.044451747089624405, - 0.017286362126469612, - -0.01843874156475067, - -0.021356038749217987, - 0.10783866047859192, - -0.04226216301321983, - 0.013979869894683361, - 0.03725777566432953, - 0.0003412840887904167, - 0.002151644788682461, - -0.04941617697477341, - -0.005643906537443399, - 0.004004535265266895, - -0.04352103918790817, - 0.06729330867528915, - 0.030861902981996536, - 0.0014430790906772017, - 0.032290518283843994, - 0.03224336728453636, - -0.009899266064167023, - -0.0457160547375679, - -0.10391190648078918, - 0.16303008794784546, - 0.06934019178152084, - -0.013200843706727028, - -0.07165385037660599, - -0.05886688083410263, - 0.10377968102693558, - -0.0190423633903265, - -0.11089439690113068, - -0.04303240403532982, - 0.09793652594089508, - 0.14531023800373077, - -0.03524527698755264, - -0.043960895389318466, - 0.02097223699092865, - 0.13054785132408142, - 0.027608783915638924, - 0.07388577610254288, - 0.07486177980899811, - 0.10373018682003021, - -0.03144093230366707, - 0.0023356922902166843, - 0.04236556962132454, - 0.05065072700381279, - 0.022266868501901627, - -0.017793145030736923, - 0.013374044559895992, - -0.014765307307243347, - -0.007625909522175789, - 0.023213110864162445, - -0.030211906880140305, - -0.029227502644062042, - -0.026578618213534355, - 0.007347418926656246, - -0.020503085106611252, - 0.0052078524604439735, - -0.013212007470428944, - 0.052431799471378326, - 0.02425723522901535, - 0.0011300855549052358, - 0.09152035415172577, - 0.03403962776064873, - 0.0031800991855561733, - 0.05837097391486168, - -0.06789390742778778, - -0.05538655072450638, - 0.021903950721025467, - -0.0018652449361979961, - 0.02344564162194729, - 0.07710041105747223, - 0.02651391550898552, - -0.0161783155053854, - 0.12691165506839752, - 0.038947202265262604, - -0.01102367602288723, - 0.01403308566659689, - -0.10447870194911957, - 0.13535141944885254, - 0.07990939170122147, - -0.029910052195191383, - 0.03957931324839592, - -0.043194729834795, - 0.05208694189786911, - 0.05332353711128235, - -0.1209440603852272, - -0.06707784533500671, - 0.020525116473436356, - 0.0413086861371994, - -0.027878012508153915, - 0.11308136582374573, - -0.013566798530519009, - 0.023569602519273758, - 0.11197449266910553, - -0.07672980427742004, - -0.06516806781291962, - -0.019179027527570724, - 0.04320067912340164, - -0.07537756860256195, - 0.03865492716431618, - 0.07633932679891586, - -0.015267954207956791, - 0.028615208342671394, - 0.07544175535440445, - 3.3990945667028427e-06, - 0.017168525606393814, - 0.01147286593914032, - -0.05397850275039673, - 0.010506335645914078, - -0.024102624505758286, - -0.003356616012752056, - 0.030709538608789444, - 0.059255875647068024, - 0.05510294809937477, - 0.009372744709253311, - -0.04574961960315704, - -0.10505867004394531, - 0.002091650851070881, - 0.04249827563762665, - 0.06434054672718048, - -0.0158955380320549, - -0.02750999480485916, - -0.03876878321170807, - -0.05259860306978226, - -0.005092475097626448, - 0.002838969463482499, - 0.07858627289533615, - -0.03373764082789421, - -0.018163787201046944, - 0.10624653100967407, - 0.03449534997344017, - -0.009036562405526638, - -0.06582380086183548, - -0.032328926026821136, - 0.0018797609955072403, - 0.03176433965563774, - -0.08226799219846725, - -0.07240099459886551, - -0.00923194270581007, - 0.050441548228263855, - -0.014044500887393951, - 0.05435492843389511, - 0.0474538579583168, - 0.009035871364176273, - 0.02526284009218216, - -0.06518673896789551, - 0.028520630672574043, - -0.0887334942817688, - -0.06937338411808014, - 0.006807276047766209, - -0.0011302940547466278, - -0.018455656245350838, - 0.07386765629053116, - 0.008288794197142124, - 0.04644479975104332, - 0.001334281638264656, - -0.07985314726829529, - -0.07701501995325089, - 0.05552231892943382, - 0.07348356395959854, - -0.014634881168603897, - 0.06306709349155426, - 0.06387119740247726, - -0.05427989736199379, - 0.06010766327381134, - 0.05643840879201889, - 0.10310705006122589, - -0.043063800781965256, - 0.016745667904615402, - -0.0649903193116188, - 0.047075483947992325, - 0.06403174251317978, - -0.1044611856341362, - -0.07372820377349854, - -0.04192366823554039, - -0.05399514362215996, - 0.027581652626395226, - -0.013948271051049232, - 0.015401473268866539, - 0.01587090641260147, - -0.008906680159270763, - -0.10232412815093994, - -0.08734972029924393, - 0.05813188850879669, - -0.05929386615753174, - 0.0036743972450494766, - -0.07567810267210007, - 0.05526915192604065, - 0.09819579124450684, - 0.034856781363487244, - -0.011518271639943123, - -0.023225978016853333, - 0.02949949912726879, - -0.04173942655324936, - -0.005806375294923782, - 0.03298297896981239, - 0.04307696223258972, - -0.08543585985898972, - 0.010868465527892113, - -0.08774351328611374, - 0.06024782359600067, - -0.035674452781677246, - 0.1530730426311493, - 0.019577646628022194, - -0.05333314463496208, - -0.08791891485452652, - 0.026680879294872284, - -0.03147127479314804, - 0.0434952974319458, - 0.029414352029561996, - 0.04575791209936142, - 0.03115924447774887, - -0.055549658834934235, - 0.12637826800346375, - 0.03869802877306938, - -0.04950588196516037, - -0.06578905880451202, - -0.036461152136325836, - -0.041822731494903564, - 0.018039824441075325, - 0.008888096548616886, - -0.08852120488882065, - -0.04211621731519699, - 0.015565511770546436, - -0.015324335545301437, - 0.0796964168548584, - 0.12744811177253723, - 0.06640426069498062, - -0.11343657225370407 - ] - }, - "p244_117.wav": { - "name": "p244", - "embedding": [ - 0.0663791298866272, - 0.06481096893548965, - -0.03348292037844658, - 0.020564712584018707, - -0.03492648899555206, - 0.02512381039559841, - -0.09711866080760956, - 0.07552213221788406, - -0.040559589862823486, - 0.11849957704544067, - -0.08109736442565918, - 0.08790730684995651, - -0.010697794146835804, - -0.11700117588043213, - -0.06738083064556122, - 0.03288768231868744, - -0.04765726998448372, - -0.04647444561123848, - -0.04495936632156372, - -0.01139787770807743, - 0.03867693245410919, - 0.043678607791662216, - 0.020771410316228867, - -0.03289779648184776, - 0.04199159890413284, - 0.05658009275794029, - 0.029611488804221153, - 0.025073807686567307, - -0.006493689492344856, - 0.026495207101106644, - 0.0011126045137643814, - 0.11153659224510193, - -0.044191014021635056, - -0.013819792307913303, - 0.0311887226998806, - 0.02249486930668354, - 0.011648205108940601, - -0.07382804155349731, - 0.008307871408760548, - 0.0019037476740777493, - -0.024948447942733765, - 0.08163805305957794, - 0.04867237061262131, - -0.010434059426188469, - -0.005144375376403332, - 0.029986664652824402, - -0.005942861549556255, - -0.054276760667562485, - -0.11896392703056335, - 0.1747700273990631, - 0.02796965464949608, - 0.026809019967913628, - -0.09365317970514297, - -0.04876662790775299, - 0.0796499028801918, - 0.0098640788346529, - -0.04191647097468376, - -0.045978181064128876, - 0.04680206626653671, - 0.15397390723228455, - -0.01689627207815647, - -0.04848678410053253, - 0.014617616310715675, - 0.08847671747207642, - 0.03875938802957535, - 0.023299671709537506, - 0.08159701526165009, - 0.09758806228637695, - 0.007904723286628723, - 0.047025568783283234, - 0.0659836083650589, - 0.029545437544584274, - 0.023729432374238968, - -0.05017070844769478, - 0.026821738108992577, - -0.025956720113754272, - -0.026093963533639908, - 0.0038982192054390907, - -0.040285468101501465, - -0.06192207336425781, - -0.010583801195025444, - -0.0030246595852077007, - 0.02301739528775215, - 0.03665097802877426, - -0.06552837789058685, - 0.051581718027591705, - 0.036703675985336304, - -0.058151982724666595, - 0.08319983631372452, - 0.03686737269163132, - -0.01637602411210537, - -0.0024369806051254272, - -0.06684253364801407, - -0.07785780727863312, - 0.035711102187633514, - 0.00615624850615859, - 0.018981322646141052, - 0.05096926540136337, - 0.04271988570690155, - -0.023800117895007133, - 0.08233090490102768, - 0.023124366998672485, - 0.0006741330726072192, - -0.02275349199771881, - -0.08901208639144897, - 0.12537899613380432, - 0.11221356689929962, - -0.01637592352926731, - -0.010132333263754845, - -0.02012024074792862, - 0.024066075682640076, - 0.06426465511322021, - -0.10625521093606949, - -0.08621283620595932, - 0.030181964859366417, - 0.00192217156291008, - 0.0046913279220461845, - 0.07177047431468964, - -0.01979185827076435, - 0.012640844099223614, - 0.07597804069519043, - -0.08043913543224335, - -0.04631512239575386, - -0.03861051797866821, - 0.014440439641475677, - -0.08531521260738373, - 0.020678933709859848, - 0.07579287886619568, - -0.01242291834205389, - -0.03175487369298935, - 0.06600604951381683, - 0.025848107412457466, - 0.004945406690239906, - -0.015682613477110863, - 0.03583322465419769, - 0.07717518508434296, - 0.002941790036857128, - -0.038786597549915314, - 0.02014279179275036, - 0.05632985010743141, - 0.051919858902692795, - 0.009324396960437298, - -0.002588793868198991, - -0.07343313843011856, - 0.031933434307575226, - 0.08379973471164703, - 0.021868597716093063, - -0.04236214607954025, - -0.04696473479270935, - -0.05884414166212082, - -0.0460367351770401, - 0.0138088408857584, - 0.017595849931240082, - 0.08983033150434494, - 0.030379775911569595, - 0.00941836554557085, - 0.1442602574825287, - -0.01569347269833088, - -0.009762893430888653, - -0.01568719372153282, - 0.0339643657207489, - 0.05143208056688309, - 0.032057058066129684, - -0.0357724130153656, - -0.07902616262435913, - 0.004774644039571285, - 0.010366776958107948, - -0.018539030104875565, - 0.029176995158195496, - 0.029292089864611626, - -0.020781368017196655, - 0.010427485220134258, - -0.06426107883453369, - 0.013449100777506828, - -0.08969840407371521, - 0.00946175865828991, - -0.001794168958440423, - -0.08096250891685486, - -0.03316441923379898, - 0.07327745854854584, - 0.023014485836029053, - 0.0393022745847702, - -0.027058064937591553, - -0.10035022348165512, - -0.023686770349740982, - 0.08339046686887741, - 0.0839746966958046, - -0.025258135050535202, - 0.015715466812253, - 0.023011572659015656, - 0.028393303975462914, - 0.011937202885746956, - 0.0633280873298645, - 0.0804753303527832, - -0.03716718405485153, - -0.06480783969163895, - -0.03089866042137146, - 0.116466224193573, - 0.021582720801234245, - -0.0926688015460968, - -0.04235338419675827, - -0.047869723290205, - -0.040671683847904205, - 0.00749615952372551, - 0.014579607173800468, - 0.04157961905002594, - 0.04385460168123245, - -0.04499632120132446, - -0.11614260077476501, - -0.10122857987880707, - 0.058299362659454346, - -0.04211875796318054, - -0.005418750457465649, - -0.05257604643702507, - 0.0265200212597847, - 0.0626673549413681, - 0.0114889619871974, - 0.01612227037549019, - -0.005144713446497917, - -0.03464069962501526, - -0.07651016861200333, - -0.03730890527367592, - -0.004086734727025032, - 0.03898791968822479, - -0.0624421052634716, - 0.003802548162639141, - -0.0599251314997673, - 0.08920934796333313, - -0.05726965144276619, - 0.12540869414806366, - -0.010254740715026855, - -0.036541931331157684, - -0.08108656108379364, - 0.008565537631511688, - -0.041284918785095215, - 0.07953342795372009, - 0.06964181363582611, - 0.017991025000810623, - -0.008446039631962776, - -0.07632865011692047, - 0.10225652903318405, - 0.07402639091014862, - -0.027663087472319603, - -0.07545515149831772, - -0.04524011164903641, - -0.02710394561290741, - 0.003935838118195534, - 0.01634923368692398, - -0.028507238253951073, - 0.014483869075775146, - 0.030218619853258133, - -0.030427830293774605, - 0.07724196463823318, - 0.09033051133155823, - 0.060144178569316864, - -0.06725859642028809 - ] - }, - "p244_414.wav": { - "name": "p244", - "embedding": [ - 0.05337275564670563, - 0.09347979724407196, - -0.01617208495736122, - 0.015344187617301941, - -0.051168859004974365, - 0.07525269687175751, - -0.12179407477378845, - 0.12432641535997391, - -0.06415523588657379, - 0.15049946308135986, - -0.07099460065364838, - 0.12227404117584229, - -0.02313445881009102, - -0.17240847647190094, - -0.04736506938934326, - 0.04944154620170593, - -0.0601639524102211, - -0.039453037083148956, - -0.032291024923324585, - 6.793421925976872e-05, - 0.05067278444766998, - 0.03623484447598457, - 0.021768562495708466, - 0.006948499940335751, - 0.00878700241446495, - 0.07093086838722229, - 0.014023074880242348, - 0.06032991409301758, - 0.028757669031620026, - -0.07819128036499023, - -0.03957583010196686, - 0.1095798909664154, - -0.04314263164997101, - 0.029746145009994507, - 0.060170628130435944, - -0.000363360159099102, - 0.007370705250650644, - -0.07157830893993378, - -0.016270935535430908, - -0.0039893025532364845, - -0.04488180950284004, - 0.07358165085315704, - 0.015919405966997147, - -0.012264054268598557, - 0.01863841712474823, - 0.02229408547282219, - -0.010928409174084663, - -0.05995403230190277, - -0.08643461018800735, - 0.1562034785747528, - 0.07088296115398407, - -0.004013930447399616, - -0.050174780189991, - -0.08669688552618027, - 0.10542869567871094, - -0.011490270495414734, - -0.12580139935016632, - -0.048519596457481384, - 0.07145947962999344, - 0.15937139093875885, - -0.03752167150378227, - -0.0384533628821373, - 0.024835262447595596, - 0.12317246198654175, - 0.044771235436201096, - 0.10647053271532059, - 0.08519617468118668, - 0.09169928729534149, - -0.001533685950562358, - 0.02733851782977581, - 0.06200683116912842, - 0.08383584022521973, - 0.059349097311496735, - -0.0019989125430583954, - 0.04737678915262222, - -0.0016305656172335148, - -0.022421574220061302, - 0.020158428698778152, - -0.016585052013397217, - -0.012505578808486462, - -0.017927024513483047, - 0.021225716918706894, - 0.0029016989283263683, - 0.020022213459014893, - -0.011623300611972809, - 0.061272792518138885, - 0.009784468449652195, - -0.015076527372002602, - 0.06223952770233154, - 0.033248208463191986, - 0.027849216014146805, - 0.06625443696975708, - -0.07395663857460022, - -0.10191988199949265, - 0.025953607633709908, - -0.0011344742961227894, - 0.02856616862118244, - 0.07920478284358978, - 0.03522225096821785, - -0.014241073280572891, - 0.10890447348356247, - 0.04155503958463669, - -0.0084445271641016, - 0.026931937783956528, - -0.09902231395244598, - 0.1268363893032074, - 0.0799713283777237, - -0.03023127093911171, - 0.028904562816023827, - -0.060109205543994904, - 0.09531669318675995, - 0.07547635585069656, - -0.14982913434505463, - -0.09231121838092804, - 0.033190034329891205, - 0.007038099691271782, - -0.02111329324543476, - 0.11351749300956726, - -0.025695431977510452, - 0.019240889698266983, - 0.1008530855178833, - -0.0826231837272644, - -0.0480121448636055, - -0.0257711261510849, - 0.037566471844911575, - -0.08659997582435608, - 0.06426386535167694, - 0.03095492161810398, - -0.009906553663313389, - -0.001334917964413762, - 0.09995832294225693, - -0.025347266346216202, - -0.00865009892731905, - 0.016087155789136887, - -0.05126236751675606, - 0.02221379242837429, - -0.043657850474119186, - 0.006328982301056385, - 0.03574098274111748, - 0.04346025735139847, - 0.04006488248705864, - -0.005997288040816784, - -0.04574074596166611, - -0.11877577006816864, - 0.016988495364785194, - 0.03338633477687836, - 0.06776638329029083, - -0.005708509124815464, - -0.025159288197755814, - -0.02828025631606579, - -0.0529685840010643, - 0.013637338764965534, - -0.01797289401292801, - 0.07487207651138306, - -0.005986368283629417, - 0.007802212610840797, - 0.0994187444448471, - 0.016678549349308014, - -0.00010740617290139198, - -0.05749409645795822, - -0.03445484861731529, - 0.024085022509098053, - 0.0630992203950882, - -0.07922924309968948, - -0.06572607159614563, - 0.010446312837302685, - 0.024683155119419098, - -0.01451587863266468, - 0.0391768142580986, - 0.05514409393072128, - 0.02439870312809944, - 0.04159264266490936, - -0.06749506294727325, - 0.01026029884815216, - -0.12275136262178421, - -0.07851161062717438, - -0.01657060533761978, - -0.02547772228717804, - -0.003994768485426903, - 0.07156360149383545, - 0.0017041168175637722, - 0.035028621554374695, - -0.01159695629030466, - -0.08217807114124298, - -0.08210548758506775, - 0.07249727100133896, - 0.08577492833137512, - 0.01932879537343979, - 0.04386300966143608, - 0.045057184994220734, - -0.01685880683362484, - 0.0473417304456234, - 0.044633276760578156, - 0.12211090326309204, - -0.019795356318354607, - 0.013241836801171303, - -0.0746978223323822, - 0.08316610753536224, - 0.07629567384719849, - -0.09628407657146454, - -0.07493922114372253, - -0.015265904366970062, - -0.059690605849027634, - 0.04075497016310692, - -0.02806091494858265, - 0.00484283734112978, - 0.026090744882822037, - -0.0063917869701981544, - -0.10699254274368286, - -0.07515783607959747, - 0.09153671562671661, - -0.07236147671937943, - -0.010375437326729298, - -0.09194009006023407, - 0.05121401324868202, - 0.09815976023674011, - 0.05290521681308746, - -0.03345044329762459, - 0.003943076357245445, - 0.058402158319950104, - -0.0485280379652977, - 0.00016099540516734123, - 0.04057348147034645, - 0.020463839173316956, - -0.09463279694318771, - 0.00874655693769455, - -0.08400268852710724, - 0.039982300251722336, - -0.0781797468662262, - 0.15764813125133514, - -0.020856384187936783, - -0.06966894865036011, - -0.08086109161376953, - 0.0453309565782547, - -0.021734872832894325, - 0.04313546419143677, - 0.04256168007850647, - 0.06295493990182877, - 0.041449107229709625, - -0.08462811261415482, - 0.12133316695690155, - 0.045901477336883545, - -0.0248493030667305, - -0.06361193209886551, - -0.048655495047569275, - -0.038715094327926636, - 0.03535463660955429, - 0.010105248540639877, - -0.08735272288322449, - -0.01854035258293152, - 0.02449534833431244, - -0.021589156240224838, - 0.06691836565732956, - 0.14419814944267273, - 0.05591727793216705, - -0.11574887484312057 - ] - }, - "p244_253.wav": { - "name": "p244", - "embedding": [ - 0.0659065991640091, - 0.07509010285139084, - -0.024440791457891464, - -0.001634875312447548, - -0.046231627464294434, - 0.03870411217212677, - -0.1354798674583435, - 0.14504340291023254, - -0.039977025240659714, - 0.09383848309516907, - -0.04805021360516548, - 0.10036615282297134, - 0.009969496168196201, - -0.11082163453102112, - -0.046134404838085175, - 0.023836283013224602, - 0.0014015557244420052, - -0.015952402725815773, - -0.028823979198932648, - -0.01151888445019722, - 0.015373526141047478, - 0.03339692950248718, - 0.009113047271966934, - -0.009018579497933388, - 0.037673816084861755, - 0.029065484181046486, - 0.005538268480449915, - 0.01837175339460373, - 0.007479529827833176, - 0.02990323305130005, - -0.0010585598647594452, - 0.08733303099870682, - -0.050202760845422745, - 0.010362047702074051, - 0.043523091822862625, - 0.011447603814303875, - -0.005951732397079468, - -0.0819530338048935, - -0.01541035994887352, - -0.0070488532073795795, - -0.029752040281891823, - 0.09017757326364517, - 0.05828443169593811, - -0.006793014705181122, - 0.007019433192908764, - 0.014472566545009613, - 0.01464794296771288, - -0.061176445335149765, - -0.10762913525104523, - 0.1486799418926239, - 0.004450784996151924, - 0.008131470531225204, - -0.12579701840877533, - -0.016540562734007835, - 0.0826941654086113, - -0.032750729471445084, - -0.03878742828965187, - -0.055116526782512665, - 0.03610720485448837, - 0.13918444514274597, - -0.015389349311590195, - -0.05884116515517235, - 0.005374635569751263, - 0.09946253150701523, - 0.05703935772180557, - 0.028374670073390007, - 0.1077100932598114, - 0.1067352443933487, - -0.030965689569711685, - 0.02396455779671669, - 0.03290452063083649, - 0.03955530375242233, - 0.011360063217580318, - -0.02434130758047104, - 0.012554807588458061, - -0.03345746174454689, - -0.006304372567683458, - 0.023870892822742462, - -0.022353515028953552, - -0.049800723791122437, - -0.02220963127911091, - 0.019474683329463005, - -0.004713356960564852, - 0.0714944452047348, - -0.06565125286579132, - 0.05690184235572815, - 0.040205713361501694, - -0.035322438925504684, - 0.07339352369308472, - 0.08051391690969467, - 0.006438813172280788, - 0.012984735891222954, - -0.07159963995218277, - -0.07156150043010712, - 0.02788781002163887, - -0.02782830037176609, - 0.05234832316637039, - 0.06279204785823822, - 0.021869642660021782, - 0.005398619454354048, - 0.08487403392791748, - 0.03819020837545395, - -0.006558696273714304, - -0.011617226526141167, - -0.06747996807098389, - 0.12636533379554749, - 0.09980346262454987, - -0.013211781159043312, - 0.020522916689515114, - -0.049001313745975494, - 0.010408591479063034, - 0.044483084231615067, - -0.0948638916015625, - -0.07751217484474182, - 0.067380890250206, - 0.05425296723842621, - 0.026540569961071014, - 0.09843991696834564, - 0.015075989998877048, - 0.01484285295009613, - 0.047278378158807755, - -0.07201935350894928, - -0.05516931414604187, - -0.008485788479447365, - 0.032912611961364746, - -0.05039115995168686, - 0.04347151517868042, - 0.061444345861673355, - 0.0006294646300375462, - -0.02945905737578869, - 0.06335999816656113, - 0.02476908639073372, - 0.01327902264893055, - -0.015673339366912842, - 0.03080238774418831, - 0.06649118661880493, - 0.025583066046237946, - -0.02487625926733017, - 0.02049708552658558, - 0.05804292485117912, - 0.05558866634964943, - 0.025322120636701584, - 0.0005338550545275211, - -0.09712747484445572, - 0.004549121484160423, - 0.08775191009044647, - 0.06214361637830734, - -0.059692010283470154, - -0.0601113960146904, - -0.03807923197746277, - -0.03510478138923645, - -0.01695621944963932, - 0.03143256902694702, - 0.06958773732185364, - -0.0020206328481435776, - 0.016987819224596024, - 0.11053489148616791, - -0.006412738934159279, - 0.007900618016719818, - -0.011927224695682526, - 0.04685390740633011, - 0.02254825457930565, - 0.046424709260463715, - -0.0289375688880682, - -0.0934915617108345, - -0.004640120547264814, - 0.033181458711624146, - -0.02525162324309349, - 0.02672378346323967, - 0.0471775084733963, - -0.026801731437444687, - 0.03799400478601456, - -0.08719084411859512, - 0.03613336756825447, - -0.11106973141431808, - -0.009208418428897858, - 0.0005084946751594543, - -0.029659219086170197, - -0.015466381795704365, - 0.07627661526203156, - 0.04467010125517845, - 0.07124413549900055, - -0.004158590454608202, - -0.09351237863302231, - -0.034465525299310684, - 0.048995740711688995, - 0.07400546967983246, - -0.04525791108608246, - 0.0006407536566257477, - 0.049952056258916855, - 0.012691473588347435, - 0.01874997466802597, - 0.08085097372531891, - 0.047892145812511444, - -0.0489029586315155, - -0.039329417049884796, - -0.044258613139390945, - 0.09503402560949326, - 0.04393851384520531, - -0.11533653736114502, - -0.0682753324508667, - -0.02465703897178173, - -0.037853043526411057, - -0.032204288989305496, - -0.016869917511940002, - 0.03891190141439438, - 0.0473678819835186, - -0.021637139841914177, - -0.12105533480644226, - -0.10460696369409561, - 0.047805506736040115, - -0.08263389021158218, - 0.029937192797660828, - -0.05965464189648628, - 0.01737012341618538, - 0.0810689851641655, - 0.01800205558538437, - -0.010326297953724861, - -0.04939088970422745, - -0.02670142985880375, - -0.051365356892347336, - -0.044225119054317474, - -0.006073169410228729, - 0.035165004432201385, - -0.0841970145702362, - 0.02438327670097351, - -0.05442404747009277, - 0.07993105798959732, - -0.03565894067287445, - 0.1460910439491272, - 0.020470960065722466, - -0.07599806040525436, - -0.09064380824565887, - -0.04182501882314682, - -0.03868559002876282, - 0.06587879359722137, - 0.032756395637989044, - 0.034168146550655365, - -1.4596618711948395e-05, - -0.05268435552716255, - 0.08482556790113449, - 0.09877606481313705, - -0.04556364566087723, - -0.0873718410730362, - -0.040023379027843475, - -0.015530819073319435, - 0.04508063197135925, - 0.01741029880940914, - -0.016096223145723343, - 0.0044369176030159, - 0.013603215105831623, - -0.04250704497098923, - 0.07414849102497101, - 0.10565780103206635, - 0.059978507459163666, - -0.11924143135547638 - ] - }, - "p244_109.wav": { - "name": "p244", - "embedding": [ - 0.05739546939730644, - 0.08613348007202148, - -0.006044930778443813, - 0.0352112278342247, - -0.06083273887634277, - 0.03468688577413559, - -0.14677467942237854, - 0.14680781960487366, - -0.021860700100660324, - 0.12390688061714172, - -0.06311961263418198, - 0.12757804989814758, - -0.022577140480279922, - -0.19756779074668884, - -0.008795039728283882, - 0.08517857640981674, - -0.032355278730392456, - -0.02848302572965622, - -0.025251664221286774, - -0.02377479337155819, - 0.02512427419424057, - 0.043954938650131226, - 0.060328077524900436, - 0.005702539347112179, - 0.031326524913311005, - 0.06979607045650482, - 0.002574204234406352, - 0.053611837327480316, - 0.0093069551512599, - -0.057945143431425095, - -0.035119932144880295, - 0.09045854210853577, - -0.03604564815759659, - -0.0005113724619150162, - 0.050318460911512375, - -0.011871270835399628, - 4.0381837607128546e-05, - -0.06830374896526337, - -0.0277443528175354, - -0.008360256440937519, - -0.040520697832107544, - 0.07810407876968384, - 0.0224294476211071, - -0.03035673499107361, - 0.060263119637966156, - 0.02106332592666149, - -0.033152010291814804, - -0.044141735881567, - -0.13355642557144165, - 0.1488659381866455, - 0.07038581371307373, - 0.02156125009059906, - -0.08391305059194565, - -0.07415102422237396, - 0.0971040353178978, - -0.030163947492837906, - -0.10386817157268524, - -0.04477739334106445, - 0.07305428385734558, - 0.16108199954032898, - -0.0229775533080101, - -0.034324757754802704, - 0.038250505924224854, - 0.11930715292692184, - 0.060493435710668564, - 0.09059705585241318, - 0.07020947337150574, - 0.1004265546798706, - -0.02927844226360321, - 0.016493503004312515, - 0.044844381511211395, - 0.07669737190008163, - 0.03551100939512253, - 0.006001103203743696, - 0.01228416245430708, - 0.007548165507614613, - -0.024507751688361168, - -0.008376196026802063, - -0.015511329285800457, - -0.017870772629976273, - -0.01723967306315899, - 0.008231448009610176, - 0.007556747179478407, - 0.011855248361825943, - -0.027854524552822113, - 0.062090061604976654, - 0.0341794528067112, - -0.004567167721688747, - 0.0724688395857811, - 0.019014395773410797, - -0.0008657457074150443, - 0.060691915452480316, - -0.07151425629854202, - -0.07954558730125427, - 0.020314980298280716, - 0.011950142681598663, - 0.022227173671126366, - 0.06036045774817467, - 0.023404493927955627, - -0.027063174173235893, - 0.1304457038640976, - 0.0630183145403862, - -0.0060635036788880825, - 0.03458651155233383, - -0.08411171287298203, - 0.11534597724676132, - 0.08304879069328308, - -0.014469115063548088, - 0.06840068101882935, - -0.041978105902671814, - 0.060439582914114, - 0.0727461725473404, - -0.1337536871433258, - -0.07041275501251221, - 0.015840495005249977, - 0.01233344804495573, - -0.013424286618828773, - 0.12322752177715302, - 0.005914837121963501, - 0.05673353001475334, - 0.117793969810009, - -0.09871840476989746, - -0.06949783861637115, - -0.0042399633675813675, - 0.0551203116774559, - -0.09464181959629059, - 0.06249776482582092, - 0.07012145966291428, - -0.02135149948298931, - 0.017793484032154083, - 0.07335391640663147, - -0.005597086623311043, - 0.011523909866809845, - 0.01644597016274929, - -0.058747705072164536, - 0.005872945301234722, - -0.04127098247408867, - -0.01425835769623518, - 0.0605582520365715, - 0.033361248672008514, - 0.04053114354610443, - -0.00681935204192996, - -0.03324224427342415, - -0.13778139650821686, - 0.003976250067353249, - 0.03389718756079674, - 0.08339881896972656, - -0.007886230945587158, - -0.030938230454921722, - -0.04448118805885315, - -0.0599418506026268, - 0.010695687495172024, - -0.009594394825398922, - 0.06870704889297485, - -0.02924153208732605, - 0.006847626995295286, - 0.08679477870464325, - 0.027226699516177177, - 0.0018853339133784175, - -0.04736558720469475, - -0.04945267736911774, - 0.016022196039557457, - 0.0454501137137413, - -0.08235573768615723, - -0.07084080576896667, - -0.0070708515122532845, - 0.04068135842680931, - -0.032321542501449585, - 0.04960598051548004, - 0.038274526596069336, - 0.022238314151763916, - 0.017885731533169746, - -0.05703619867563248, - 0.02338593453168869, - -0.09009230136871338, - -0.08075901865959167, - 0.002486435230821371, - 0.008224758319556713, - -0.029937084764242172, - 0.07189749926328659, - 0.030756091699004173, - 0.06540273129940033, - -0.02816474437713623, - -0.06498674303293228, - -0.09770011901855469, - 0.05295402556657791, - 0.05662689357995987, - 0.0015044284518808126, - 0.058535512536764145, - 0.04629106447100639, - -0.04560130834579468, - 0.061952006071805954, - 0.047713376581668854, - 0.09148293733596802, - -0.016202818602323532, - 0.012414633296430111, - -0.07333677262067795, - 0.07675021141767502, - 0.10897409170866013, - -0.08695634454488754, - -0.08112332224845886, - -0.036334481090307236, - -0.07327903062105179, - 0.057342421263456345, - -0.0145942447707057, - 0.0006856077234260738, - 0.04557185620069504, - -0.011704448610544205, - -0.1123899519443512, - -0.09791746735572815, - 0.08337440341711044, - -0.06064557284116745, - -0.004089634865522385, - -0.0628826916217804, - 0.04487769305706024, - 0.08675407618284225, - 0.02726869285106659, - -0.017857426777482033, - -0.031373947858810425, - 0.04116690158843994, - -0.042946889996528625, - 0.004726524464786053, - 0.06690191477537155, - 0.04441523179411888, - -0.10162967443466187, - 0.007017001509666443, - -0.07676421105861664, - 0.053607277572155, - -0.03338317945599556, - 0.15788988769054413, - 0.0119588328525424, - -0.04459541663527489, - -0.09059779345989227, - 0.026029985398054123, - -0.023152461275458336, - 0.05804430693387985, - 0.021228080615401268, - 0.05717020481824875, - 0.048421114683151245, - -0.06877723336219788, - 0.10947582125663757, - 0.04329445958137512, - -0.047781284898519516, - -0.06127448379993439, - -0.04130503535270691, - -0.055049192160367966, - 0.0326380580663681, - -0.005245511885732412, - -0.09330736100673676, - -0.028838014230132103, - 0.016722194850444794, - -0.010706339031457901, - 0.06182768568396568, - 0.1386440098285675, - 0.04118635505437851, - -0.11009286344051361 - ] - }, - "p244_312.wav": { - "name": "p244", - "embedding": [ - 0.015115632675588131, - 0.07223115861415863, - -0.0020533159840852022, - 0.04228286072611809, - -0.006371307652443647, - 0.04990001767873764, - -0.07020367681980133, - 0.0487297922372818, - -0.05339176952838898, - 0.15103980898857117, - -0.12234080582857132, - 0.08643540740013123, - -0.04453974962234497, - -0.14344476163387299, - -0.0251156073063612, - 0.02139274775981903, - -0.03654440864920616, - 0.03277100622653961, - -0.05478564649820328, - -0.03230539336800575, - 0.05921761319041252, - 0.07936245948076248, - 0.04668014496564865, - -0.052221983671188354, - 0.005212868098169565, - 0.06402292102575302, - -0.020825820043683052, - 0.036405764520168304, - 0.008070295676589012, - -0.13803991675376892, - -0.0482972115278244, - 0.11677175760269165, - -0.029670054093003273, - 0.02404903806746006, - -0.013602443039417267, - 0.017274048179388046, - -0.020915072411298752, - -0.018871530890464783, - -0.014337779954075813, - 0.0014606877230107784, - -0.052115097641944885, - 0.02135101892054081, - -0.02439035475254059, - -0.01282050646841526, - 0.04708550125360489, - -0.03330114856362343, - -0.03222230449318886, - -0.013768676668405533, - -0.07614147663116455, - 0.16634711623191833, - 0.053961075842380524, - -0.0026977118104696274, - -0.04983261972665787, - -0.08148597180843353, - 0.08884178847074509, - -0.004952655639499426, - -0.14231504499912262, - 0.011187897995114326, - 0.08110079169273376, - 0.13044947385787964, - -0.009287124499678612, - -0.04630175232887268, - 0.03958515077829361, - 0.05871117115020752, - -0.02902132272720337, - 0.0898125097155571, - 0.07278240472078323, - 0.041674237698316574, - 0.01308460533618927, - 0.020940300077199936, - 0.008747893385589123, - 0.08632219582796097, - 0.06605222821235657, - -0.0462956428527832, - 0.010121885687112808, - 0.007276811636984348, - -0.051074691116809845, - 0.028794409707188606, - -0.011513588950037956, - -0.029004141688346863, - 0.006922640837728977, - -0.049004796892404556, - -0.008345667272806168, - -0.06528280675411224, - -0.02787744626402855, - -0.0020188805647194386, - 0.03389494866132736, - -0.014308687299489975, - 0.07219575345516205, - 0.032453540712594986, - 0.01708252914249897, - 0.033069685101509094, - -0.030524233356118202, - -0.06059879809617996, - -0.002071019262075424, - 0.03162568435072899, - -0.0054235076531767845, - 0.06549955904483795, - 0.06157100945711136, - -0.028302693739533424, - 0.10277147591114044, - 0.011557220481336117, - 0.03959643468260765, - -0.018499260768294334, - -0.11130046099424362, - 0.06427522003650665, - 0.13470283150672913, - 0.003276452887803316, - 0.06343982368707657, - -0.017135923728346825, - 0.09468264132738113, - 0.0819682702422142, - -0.12226925790309906, - -0.05566508695483208, - -0.035344138741493225, - -0.017945565283298492, - 0.030227798968553543, - 0.08432887494564056, - -0.010283301584422588, - -0.020880941301584244, - 0.10020695626735687, - -0.13482952117919922, - -0.059246305376291275, - -0.03256281465291977, - 0.011748181656002998, - -0.11977741122245789, - 0.06418773531913757, - 0.04065250605344772, - -0.02072078175842762, - 0.014553282409906387, - 0.07624413073062897, - -0.05368376150727272, - 0.04327709600329399, - -0.024555768817663193, - -0.061816200613975525, - -0.041629400104284286, - -0.08573607355356216, - -0.0217968188226223, - 0.08240741491317749, - 0.0445537269115448, - 0.06262975931167603, - -0.019458848983049393, - -0.06651761382818222, - -0.10590438544750214, - 0.00962788239121437, - 0.05472379922866821, - -0.008921545930206776, - -0.010740948840975761, - 0.002315530553460121, - -0.03541753068566322, - -0.07608170062303543, - 0.07531290501356125, - -0.050457172095775604, - 0.06512399017810822, - 0.0033374689519405365, - -0.013107403181493282, - 0.12156622111797333, - 0.02566804364323616, - -0.04253965988755226, - -0.07956333458423615, - -0.04753100126981735, - 0.00883153360337019, - 0.009269867092370987, - -0.11197134852409363, - -0.06630025058984756, - -0.02749679610133171, - 0.004038706421852112, - 0.01835394650697708, - 0.0388292595744133, - 0.07381658256053925, - 0.01360377948731184, - 0.02391894906759262, - -0.04704713821411133, - 0.019652945920825005, - -0.08830897510051727, - -0.08141794055700302, - 0.007449087221175432, - -0.07520467042922974, - 0.03248056024312973, - 0.1157418042421341, - -0.032339610159397125, - -0.06660428643226624, - -0.05077730864286423, - -0.07081522792577744, - -0.0720144510269165, - 0.06092381104826927, - 0.04278179630637169, - 0.03951593488454819, - 0.03510010987520218, - 0.05421309918165207, - -0.048864975571632385, - 0.08979848772287369, - 0.041258305311203, - 0.14028732478618622, - -0.04146946221590042, - 0.03866475448012352, - -0.05740002170205116, - 0.05875694751739502, - 0.07405953109264374, - -0.024600287899374962, - -0.09972354769706726, - -0.039126377552747726, - -0.07141612470149994, - 0.10491704940795898, - -0.02136886492371559, - -0.04152430593967438, - 0.009420864284038544, - -0.04051225259900093, - -0.08547887951135635, - -0.04949510097503662, - 0.11076352000236511, - 0.016875144094228745, - -0.04979408159852028, - -0.07580237835645676, - 0.05460367724299431, - 0.02481137216091156, - 0.06275676190853119, - -0.015234648250043392, - 0.053780488669872284, - 0.05598363280296326, - -0.08687961101531982, - -0.004771187901496887, - 0.047404512763023376, - 0.004116476979106665, - -0.014873728156089783, - -0.009625840000808239, - -0.11008241772651672, - 0.058257095515728, - -0.06296917796134949, - 0.0923713743686676, - -0.026684515178203583, - -0.06853699684143066, - -0.06578568369150162, - 0.1008608266711235, - -0.01734708622097969, - 0.017783261835575104, - 0.08565252274274826, - 0.042901039123535156, - 0.08388683199882507, - -0.11167167127132416, - 0.06270655989646912, - 0.01114030834287405, - 0.021431084722280502, - -0.030852973461151123, - -0.03638945519924164, - -0.03772243857383728, - -0.006519352551549673, - -0.03680536150932312, - -0.09481385350227356, - 0.027113022282719612, - -0.012785693630576134, - 0.02386845275759697, - 0.02694052644073963, - 0.08384421467781067, - 0.009739955887198448, - -0.0888400673866272 - ] - }, - "p244_319.wav": { - "name": "p244", - "embedding": [ - 0.04419044405221939, - 0.09056366235017776, - -0.07513836026191711, - 0.048270877450704575, - -0.06125824153423309, - 0.02990613505244255, - -0.11891696602106094, - 0.1064797043800354, - 0.00932198017835617, - 0.11947310715913773, - -0.054237693548202515, - 0.11613690853118896, - -0.03302270919084549, - -0.13520264625549316, - 0.010527489706873894, - 0.025518450886011124, - 0.00029355473816394806, - -0.003963499329984188, - -0.0681152269244194, - -0.03505297377705574, - 0.03287924826145172, - 0.033635661005973816, - 0.03947008028626442, - -0.055014919489622116, - 0.0012865308672189713, - 0.06756991147994995, - -0.019457556307315826, - 0.00804508663713932, - -0.004007723182439804, - -0.03781922906637192, - -0.03979473561048508, - 0.09029709547758102, - -0.06172361597418785, - 0.002270035445690155, - 0.028337392956018448, - -0.016549136489629745, - -0.05441751703619957, - -0.04254625365138054, - 0.030088145285844803, - 0.0007468266412615776, - -0.044019412249326706, - 0.05973818153142929, - 0.02574634924530983, - -0.026936249807476997, - 0.046697117388248444, - -0.02530161291360855, - -0.04350415617227554, - -0.014194131828844547, - -0.07992391288280487, - 0.14254586398601532, - 0.07706809788942337, - 0.0025733564980328083, - -0.07799725979566574, - -0.012880346737802029, - 0.0860956460237503, - 0.0022530669812113047, - -0.10933447629213333, - -0.055939219892024994, - 0.03437776863574982, - 0.10422317683696747, - -0.012803660705685616, - -0.024806076660752296, - 0.035654909908771515, - 0.10237081348896027, - 0.07116690278053284, - 0.059178225696086884, - 0.09887969493865967, - 0.13833555579185486, - -0.025103075429797173, - 0.020181290805339813, - 0.03652666136622429, - 0.05671537667512894, - 0.0474429726600647, - -0.014889785088598728, - 0.033275529742240906, - -0.03486432880163193, - -0.002486539538949728, - -0.03660111129283905, - -0.020790424197912216, - -0.06735467910766602, - -0.004393347539007664, - -0.010831980966031551, - 0.006890885531902313, - 0.04052734375, - -0.05447879061102867, - 0.03268809616565704, - 0.10357707738876343, - -0.06316496431827545, - 0.052513524889945984, - 0.04743622615933418, - -0.000425887294113636, - 0.04073223099112511, - -0.0976434126496315, - -0.05778953433036804, - 0.037132732570171356, - -0.00030600622994825244, - 0.018300319090485573, - 0.06231734901666641, - 0.045891474932432175, - -0.005857191979885101, - 0.10039034485816956, - 0.04598373919725418, - -0.01883428730070591, - 0.016515430063009262, - -0.044203922152519226, - 0.1341182291507721, - 0.10516184568405151, - -0.03902968019247055, - 0.029400236904621124, - -0.04583703726530075, - 0.043536849319934845, - 0.029266290366649628, - -0.08817074447870255, - -0.05455995351076126, - 0.02221987210214138, - 0.005768245086073875, - -0.01587926596403122, - 0.11983644962310791, - 0.012560899369418621, - 0.04256709665060043, - 0.10850886255502701, - -0.08326700329780579, - -0.06865361332893372, - -0.03096238523721695, - 0.04412977024912834, - -0.06297232210636139, - 0.04253026098012924, - 0.06848850101232529, - 0.005618124268949032, - -0.007348539307713509, - 0.07355884462594986, - 0.004793113563209772, - 0.024968013167381287, - 0.004496053792536259, - -0.0257409680634737, - 0.042100951075553894, - 0.004556948319077492, - -0.015999233350157738, - 0.04011787101626396, - 0.019229650497436523, - 0.07722873985767365, - -0.027322782203555107, - 0.022300289943814278, - -0.09458456933498383, - 0.0307004377245903, - 0.055125877261161804, - 0.03879985213279724, - -0.03831888735294342, - -0.011866869404911995, - -0.029350044205784798, - -0.07556745409965515, - 0.02446538582444191, - -0.020898297429084778, - 0.0564456582069397, - -0.03940664976835251, - -0.01386672630906105, - 0.12792135775089264, - 0.017452819272875786, - 0.010838748887181282, - -0.03652416914701462, - -0.012017732486128807, - 0.009938303381204605, - 0.04889616370201111, - -0.09973563253879547, - -0.07184059172868729, - -0.03578529134392738, - 0.018186137080192566, - -0.014812970533967018, - 0.059717580676078796, - 0.08123335242271423, - 0.005960757844150066, - 0.018530843779444695, - -0.052632272243499756, - 0.013307937420904636, - -0.053198765963315964, - -0.0298524908721447, - -0.016808239743113518, - -0.05400118976831436, - -0.02831321954727173, - 0.08420003950595856, - 0.026544244959950447, - 0.03689193353056908, - -0.04465373605489731, - -0.05500436946749687, - -0.06921444833278656, - 0.038753002882003784, - 0.05172387510538101, - -0.056301530450582504, - 0.02814250811934471, - 0.06931400299072266, - -0.03347296640276909, - -0.0024425871670246124, - 0.07497180253267288, - 0.06604721397161484, - -0.04627583548426628, - -0.01683066040277481, - -0.08147799968719482, - 0.0840359628200531, - 0.10136692225933075, - -0.08423597365617752, - -0.07100728154182434, - -0.06724514067173004, - -0.06517535448074341, - 0.0012098010629415512, - -0.05655192583799362, - 0.0013812556862831116, - 0.056987032294273376, - -0.010655757039785385, - -0.09848500788211823, - -0.11914636939764023, - 0.08726778626441956, - -0.0534479022026062, - 0.015838682651519775, - -0.09185099601745605, - 0.036120302975177765, - 0.047316402196884155, - 0.015715980902314186, - -0.06873959302902222, - -0.002534897066652775, - 0.039400555193424225, - -0.006852324120700359, - 0.0453813336789608, - 0.061837416142225266, - 0.06594138592481613, - -0.09954193979501724, - -0.029201243072748184, - -0.052546679973602295, - 0.07438486814498901, - -0.06084191054105759, - 0.12268063426017761, - 0.03422657400369644, - -0.021232178434729576, - -0.08751991391181946, - 0.07305287569761276, - -0.01204090565443039, - 0.04914397373795509, - 0.05653859302401543, - 0.06471593677997589, - 0.015004511922597885, - -0.09018240869045258, - 0.10709134489297867, - 0.04311639815568924, - -0.020636938512325287, - -0.09339933842420578, - -0.03308381885290146, - -0.04181063547730446, - 0.05528061091899872, - 0.040337905287742615, - -0.06631528586149216, - 0.010500705800950527, - 0.023511139675974846, - -0.015705613419413567, - 0.05758930742740631, - 0.10737930238246918, - 0.08653219044208527, - -0.09123395383358002 - ] - }, - "p244_019.wav": { - "name": "p244", - "embedding": [ - 0.043645840138196945, - 0.09000486135482788, - -0.014766769483685493, - 0.024335574358701706, - -0.0678584948182106, - 0.05244502052664757, - -0.1327638179063797, - 0.14221879839897156, - -0.03032982163131237, - 0.13031697273254395, - -0.06544449180364609, - 0.12695704400539398, - -0.024368593469262123, - -0.1919749528169632, - -0.019306913018226624, - 0.06660457700490952, - -0.04614481329917908, - -0.0330330953001976, - -0.03133698180317879, - -0.031930774450302124, - 0.032004788517951965, - 0.03133589029312134, - 0.03268120810389519, - 0.007189165335148573, - 0.02343025617301464, - 0.0770869180560112, - 0.001116209547035396, - 0.04274427890777588, - 0.010093988850712776, - -0.04368862137198448, - -0.04230609908699989, - 0.09942979365587234, - -0.04613504558801651, - 0.010755178518593311, - 0.05125841498374939, - -0.019561579450964928, - -0.010448102839291096, - -0.05495961382985115, - -0.008619613945484161, - -0.0058892820961773396, - -0.040610186755657196, - 0.07927807420492172, - 0.03265079855918884, - -0.010018340311944485, - 0.04204524680972099, - 0.02684825100004673, - -0.02097545936703682, - -0.045395370572805405, - -0.11326402425765991, - 0.1502005159854889, - 0.08010874688625336, - -0.0087644774466753, - -0.0659211054444313, - -0.056693434715270996, - 0.09800469130277634, - -0.016896074637770653, - -0.11377488821744919, - -0.05146593973040581, - 0.0862141028046608, - 0.14185190200805664, - -0.03091595135629177, - -0.028108233585953712, - 0.021090393885970116, - 0.13312703371047974, - 0.04231356456875801, - 0.0971648097038269, - 0.06687565892934799, - 0.11238361895084381, - -0.02723124995827675, - 0.02333441935479641, - 0.05267775058746338, - 0.06660793721675873, - 0.041154082864522934, - -0.004256479907780886, - 0.017845699563622475, - -0.015710799023509026, - -0.007661410607397556, - 0.0005954798543825746, - -0.03233131021261215, - -0.0229560025036335, - -0.024913141503930092, - 0.000838741660118103, - 0.0021872781217098236, - 0.012059546075761318, - -0.012562994845211506, - 0.05847707390785217, - 0.04398197680711746, - -0.00904103647917509, - 0.0699722021818161, - 0.031126484274864197, - -0.004477318841964006, - 0.0674130842089653, - -0.0820566788315773, - -0.07817738503217697, - 0.030353788286447525, - 0.0009663403034210205, - 0.02671818993985653, - 0.07270333170890808, - 0.035691358149051666, - -0.014246786944568157, - 0.11493851244449615, - 0.05259993299841881, - -0.013765624724328518, - 0.02795824222266674, - -0.09309575706720352, - 0.13726358115673065, - 0.08433478325605392, - -0.01939130388200283, - 0.050675150007009506, - -0.05311408266425133, - 0.0750754252076149, - 0.06480636447668076, - -0.1301712691783905, - -0.05769859626889229, - 0.010755452327430248, - 0.010141793638467789, - -0.03680554777383804, - 0.11869124323129654, - -0.011384345591068268, - 0.04291548952460289, - 0.11379803717136383, - -0.0843738541007042, - -0.06104934215545654, - -0.017229463905096054, - 0.03901267051696777, - -0.09242506325244904, - 0.04979259893298149, - 0.06309882551431656, - -0.014141127467155457, - 0.030077943578362465, - 0.0837942585349083, - -0.004435176495462656, - 0.001128458185121417, - 0.030705690383911133, - -0.05405060574412346, - 0.009841765277087688, - -0.021983865648508072, - 0.005829300731420517, - 0.04252003878355026, - 0.03831961378455162, - 0.04597902297973633, - -0.00835330132395029, - -0.022460682317614555, - -0.11049767583608627, - 0.009778939187526703, - 0.03346436843276024, - 0.07855146378278732, - -0.009597251191735268, - -0.02321794629096985, - -0.03315868601202965, - -0.0723535344004631, - 0.005061472300440073, - -0.00934696290642023, - 0.06735693663358688, - -0.03835853189229965, - -0.0072474549524486065, - 0.09467984735965729, - 0.041568633168935776, - -0.001958973705768585, - -0.062190305441617966, - -0.038273438811302185, - 0.01835728995501995, - 0.048084139823913574, - -0.09380101412534714, - -0.0611860528588295, - -0.0055597214959561825, - 0.037320706993341446, - -0.03422966226935387, - 0.05231741815805435, - 0.04656871408224106, - 0.022631732746958733, - 0.02631610631942749, - -0.06933645159006119, - 0.017829904332756996, - -0.09372898191213608, - -0.07075932621955872, - -0.006447040941566229, - -0.009030413813889027, - -0.027176061645150185, - 0.06852483749389648, - 0.012436563149094582, - 0.05452544242143631, - -0.019362879917025566, - -0.0596567764878273, - -0.08112342655658722, - 0.05655614286661148, - 0.0631454661488533, - -0.007354711648076773, - 0.05686396360397339, - 0.0487113818526268, - -0.04727543145418167, - 0.04776395484805107, - 0.05420079827308655, - 0.11041741818189621, - -0.034343820065259933, - 0.02638939395546913, - -0.07589810341596603, - 0.07316949963569641, - 0.093514584004879, - -0.09648355841636658, - -0.07521901279687881, - -0.031918611377477646, - -0.05447818711400032, - 0.041970860213041306, - -0.031924474984407425, - -0.008569800294935703, - 0.027338897809386253, - -0.00042557166307233274, - -0.10086355358362198, - -0.09049829095602036, - 0.07902263104915619, - -0.07167840003967285, - 0.008777692914009094, - -0.08000784367322922, - 0.0513056218624115, - 0.09095417708158493, - 0.02948816679418087, - -0.0369478277862072, - -0.015693888068199158, - 0.051384251564741135, - -0.028523370623588562, - 0.010666112415492535, - 0.04596463218331337, - 0.047441937029361725, - -0.10504477471113205, - -0.0045044575817883015, - -0.06914548575878143, - 0.04738188907504082, - -0.03778764232993126, - 0.16144846379756927, - 0.016072994098067284, - -0.04059106856584549, - -0.07998155057430267, - 0.03733528032898903, - -0.016966860741376877, - 0.04525521770119667, - 0.03756619617342949, - 0.06081431731581688, - 0.03344818577170372, - -0.06778550893068314, - 0.13147157430648804, - 0.033681612461805344, - -0.04258108511567116, - -0.06240231916308403, - -0.03199373930692673, - -0.04285348206758499, - 0.03236526995897293, - 0.011768505908548832, - -0.10437305271625519, - -0.032722968608140945, - 0.02768459916114807, - -0.01433499064296484, - 0.07204347103834152, - 0.14273704588413239, - 0.07012146711349487, - -0.10024670511484146 - ] - }, - "p244_241.wav": { - "name": "p244", - "embedding": [ - 0.04855145141482353, - 0.10388829559087753, - 0.007621504832059145, - 0.014084719121456146, - -0.04301459342241287, - 0.06849325448274612, - -0.09801189601421356, - 0.10925611853599548, - -0.08141535520553589, - 0.13665910065174103, - -0.12346279621124268, - 0.09902921319007874, - -0.06005801260471344, - -0.16112415492534637, - -0.04238605499267578, - 0.04897911846637726, - -0.03166691213846207, - 0.008135289885103703, - -0.045518938452005386, - -0.02430955320596695, - 0.022337349131703377, - 0.03604353219270706, - 0.03823590651154518, - 0.01980532705783844, - 0.026693126186728477, - 0.06383757293224335, - -0.004623767454177141, - 0.05126023292541504, - 0.021751489490270615, - -0.05143981799483299, - -0.051273226737976074, - 0.11770674586296082, - -0.04369792342185974, - 0.013948287814855576, - 0.05998640134930611, - 0.021963942795991898, - 0.0004481850191950798, - -0.05225333198904991, - -0.021923648193478584, - -0.010574856773018837, - -0.06980741024017334, - 0.04147776961326599, - 0.003056139685213566, - -0.009921594522893429, - 0.05329664796590805, - 0.025850359350442886, - -0.011497590690851212, - -0.04397731274366379, - -0.09409703314304352, - 0.1313454806804657, - 0.04998315870761871, - -0.005225644912570715, - -0.061617471277713776, - -0.07721313089132309, - 0.11883231997489929, - -0.033477701246738434, - -0.12391061335802078, - -0.03029947727918625, - 0.0865338072180748, - 0.16138508915901184, - -0.04544484242796898, - -0.029190942645072937, - 0.010008024051785469, - 0.08031313121318817, - 0.02582111768424511, - 0.1161913275718689, - 0.0714988261461258, - 0.08074761927127838, - 0.005205424036830664, - 0.02900320664048195, - 0.06444621831178665, - 0.04472336918115616, - 0.053396329283714294, - -0.037300001829862595, - 0.005555342882871628, - 0.02497043088078499, - -0.03533528745174408, - 0.05489230901002884, - -0.014426913112401962, - -0.0039623393677175045, - -0.03082038089632988, - -0.0097047733142972, - -0.015025701373815536, - -0.0434880405664444, - -0.02828710898756981, - 0.05669764056801796, - 0.0005257711745798588, - 0.008027404546737671, - 0.07677888870239258, - 0.026675008237361908, - -0.04944892227649689, - 0.05094979703426361, - -0.03902903199195862, - -0.07506494224071503, - -0.014869222417473793, - 0.004144656006246805, - -0.026414018124341965, - 0.0847502052783966, - 0.030529940500855446, - -0.012968376278877258, - 0.1166490763425827, - 0.052746839821338654, - 0.0427168570458889, - 0.04046155512332916, - -0.10833506286144257, - 0.10884879529476166, - 0.08455890417098999, - -0.026933126151561737, - 0.048196226358413696, - -0.011005966924130917, - 0.0821273922920227, - 0.0976448506116867, - -0.14543811976909637, - -0.053050361573696136, - 0.017240280285477638, - -0.003042595461010933, - 0.003207179717719555, - 0.0640895813703537, - -0.030248042196035385, - -0.011854519136250019, - 0.11737500131130219, - -0.08714167773723602, - -0.061433304101228714, - -0.016499049961566925, - 0.036850713193416595, - -0.0701727420091629, - 0.040095001459121704, - 0.0403565987944603, - 0.0020230580121278763, - -0.0034932373091578484, - 0.09443716704845428, - -0.021341778337955475, - -0.012844682671129704, - 0.029157381504774094, - -0.05852624773979187, - 0.0026108077727258205, - -0.04634423553943634, - -0.002826808486133814, - 0.07767903804779053, - 0.06181219220161438, - 0.03926551714539528, - 0.008812297135591507, - -0.036281876266002655, - -0.09084829688072205, - -0.003346675308421254, - 0.06916650384664536, - 0.05068311095237732, - -0.0044388072565197945, - 0.0014686076901853085, - -0.05462687462568283, - -0.0681893527507782, - 0.04659188538789749, - -0.005526903551071882, - 0.10282546281814575, - -0.03730575367808342, - 0.009473313577473164, - 0.10287028551101685, - 0.014399701729416847, - -0.022871065884828568, - -0.09819097816944122, - -0.02461743727326393, - 0.007161572575569153, - 0.0411594919860363, - -0.06994098424911499, - -0.0859316885471344, - 0.00927063636481762, - 0.0360124297440052, - -0.0096918735653162, - 0.047297608107328415, - 0.03313833847641945, - 0.0044814180582761765, - 0.046500928699970245, - -0.06753655523061752, - 0.016161903738975525, - -0.10432673245668411, - -0.0543946772813797, - -0.020103605464100838, - -0.03209888935089111, - 0.007815122604370117, - 0.07899929583072662, - 0.009852278046309948, - 0.00455419160425663, - 0.02052672952413559, - -0.10859338194131851, - -0.07700277119874954, - 0.07874372601509094, - 0.06829214096069336, - 0.01762128807604313, - 0.05811459571123123, - 0.06048346310853958, - -0.060409173369407654, - 0.08008294552564621, - 0.07020724564790726, - 0.10097268223762512, - -0.019900325685739517, - 0.0370103120803833, - -0.050697922706604004, - 0.036122877150774, - 0.06127641350030899, - -0.10580562055110931, - -0.11345987021923065, - -0.046258002519607544, - -0.04944352060556412, - 0.08074247092008591, - -0.009374765679240227, - -0.0035515157505869865, - 0.008655051700770855, - -0.03376298397779465, - -0.06207156181335449, - -0.08288927376270294, - 0.09518016129732132, - -0.025089647620916367, - -0.0324341282248497, - -0.05632743984460831, - 0.03967411816120148, - 0.04602235555648804, - 0.03851163387298584, - -0.0002709056716412306, - 0.03235660493373871, - 0.04745863378047943, - -0.08346137404441833, - -0.03865830600261688, - 0.05321166664361954, - -0.010574307292699814, - -0.06656316667795181, - 0.023734666407108307, - -0.09398245811462402, - 0.11111139506101608, - -0.05355370044708252, - 0.1551147848367691, - -0.04079209640622139, - -0.05409376323223114, - -0.05981755256652832, - 0.03477563336491585, - -0.037898462265729904, - 0.019900977611541748, - 0.04998005926609039, - 0.05720070004463196, - 0.009731464087963104, - -0.042229704558849335, - 0.11460287123918533, - 0.009367861784994602, - -0.030984530225396156, - -0.03553812950849533, - -0.05675627291202545, - -0.05962741747498512, - -0.021136879920959473, - -0.0032997215166687965, - -0.10011956840753555, - 0.0004761507734656334, - -0.010803990997374058, - -0.024961348623037338, - 0.060372449457645416, - 0.13477203249931335, - 0.07770529389381409, - -0.1096356213092804 - ] - }, - "p244_306.wav": { - "name": "p244", - "embedding": [ - 0.05505622550845146, - 0.07680020481348038, - -0.03827314078807831, - 0.0035655181854963303, - -0.0046660639345645905, - 0.02073761634528637, - -0.1413261890411377, - 0.07939309626817703, - -0.03812088817358017, - 0.14609000086784363, - -0.04396982491016388, - 0.09468288719654083, - -0.029429864138364792, - -0.11848115921020508, - -0.009265345521271229, - 0.057256996631622314, - -0.0355813167989254, - -0.0283795353025198, - -0.0076742880046367645, - -0.028055639937520027, - 0.04498696327209473, - 0.04041751101613045, - 0.04749239981174469, - -0.03170397877693176, - -0.005378715228289366, - 0.07455624639987946, - -0.0028243588749319315, - 0.023833759129047394, - 0.016195468604564667, - -0.033213112503290176, - 0.007682809606194496, - 0.06728558242321014, - -0.0014248816296458244, - -0.01707622967660427, - 0.003660690039396286, - 0.019824368879199028, - -0.004316001199185848, - -0.0593959279358387, - 0.0025273840874433517, - 0.0374947153031826, - -0.040805961936712265, - 0.05585349723696709, - 0.018934044986963272, - -0.029842540621757507, - 0.03390195965766907, - -0.06957244127988815, - -0.05907613784074783, - -0.008028434589505196, - -0.06762120127677917, - 0.13579198718070984, - 0.10991869866847992, - 0.02149053104221821, - -0.04955786094069481, - 0.0034280698746442795, - 0.0963892936706543, - 0.01778365671634674, - -0.09388463199138641, - -0.049003083258867264, - 0.026032747700810432, - 0.13977527618408203, - -0.021188070997595787, - -0.02734021469950676, - 0.04864706099033356, - 0.09901722520589828, - 0.02095963805913925, - 0.049538541585206985, - 0.1066974550485611, - 0.047495778650045395, - 0.014780217781662941, - -0.013616404496133327, - 0.019388051703572273, - 0.08726206421852112, - 0.020648520439863205, - -0.010897047817707062, - 0.02282070927321911, - -0.013776706531643867, - -0.04380542039871216, - -0.01056300476193428, - -0.0001723114401102066, - -0.06448108702898026, - -0.06004903092980385, - -0.023561565205454826, - -0.01949315145611763, - 0.054675959050655365, - -0.0067515065893530846, - 0.0027969181537628174, - 0.026212245225906372, - -0.041123561561107635, - 0.035941608250141144, - 0.015969542786478996, - 0.023747731000185013, - 0.014893513172864914, - -0.033469509333372116, - -0.0790315568447113, - 0.014688857831060886, - 0.016097987070679665, - 0.021435314789414406, - 0.04335038363933563, - 0.033681608736515045, - 0.01696859858930111, - 0.10140206664800644, - 0.03156451880931854, - -0.00837996881455183, - -0.02197633683681488, - -0.05654747039079666, - 0.08613306283950806, - 0.11363258212804794, - -0.03464864194393158, - 0.048325322568416595, - -0.027570761740207672, - -0.010014321655035019, - 0.0037313923239707947, - -0.09995387494564056, - -0.03605522960424423, - 0.029343679547309875, - 0.05993777886033058, - 0.02685803920030594, - 0.09484286606311798, - 0.03450668230652809, - 0.03874657303094864, - 0.0922374352812767, - -0.04130696505308151, - -0.07843338698148727, - -0.05972140282392502, - 0.07574707269668579, - -0.060857005417346954, - 0.06701217591762543, - 0.05937100574374199, - 0.009569802321493626, - 0.0002467036247253418, - 0.06186249107122421, - 0.019481608644127846, - 0.014568346552550793, - -0.03743567690253258, - -0.023488711565732956, - 0.03462141752243042, - -0.0623919814825058, - 0.0265984907746315, - 0.046789415180683136, - 0.006928352639079094, - 0.06547141820192337, - 0.0300578810274601, - -0.0012788493186235428, - -0.09290700405836105, - 0.013414192944765091, - 0.036794938147068024, - 0.04122234135866165, - -0.024422885850071907, - -0.04641049727797508, - -0.006802916526794434, - -0.054350703954696655, - -0.030609797686338425, - -0.0559987835586071, - 0.0992480143904686, - -0.01778743416070938, - 0.03443723917007446, - 0.06636541336774826, - -0.03534723445773125, - -0.0029190946370363235, - -0.01694457232952118, - 0.015438850969076157, - 0.009172656573355198, - 0.028035113587975502, - -0.07191040366888046, - -0.08365357667207718, - 0.0023439358919858932, - 0.04300897568464279, - 0.02191540226340294, - 0.049554355442523956, - 0.05818035081028938, - -0.023233793675899506, - 0.013830053620040417, - -0.017325764521956444, - 0.017293429002165794, - -0.07358473539352417, - -0.06480465084314346, - -0.0010920651257038116, - -0.03592834994196892, - -0.024872202426195145, - 0.08201742172241211, - 0.011467477306723595, - 0.05391485244035721, - -0.01736217923462391, - -0.06846168637275696, - -0.08243231475353241, - 0.06161642074584961, - 0.07036758959293365, - -0.033649928867816925, - 0.00907411053776741, - 0.06846663355827332, - 0.01289813220500946, - 0.002310441806912422, - 0.026799112558364868, - 0.07719340175390244, - -0.03801887854933739, - -0.03133057430386543, - -0.08754429221153259, - 0.022657452151179314, - 0.10896364599466324, - -0.0877876877784729, - -0.04274103045463562, - -0.06856776773929596, - -0.09331691265106201, - 0.03670834004878998, - -0.03515349328517914, - 0.004988156724721193, - 0.030150409787893295, - -0.04532838612794876, - -0.11392181366682053, - -0.10930128395557404, - 0.06066618859767914, - -0.037151992321014404, - 0.006051860749721527, - -0.05155124142765999, - 0.025649290531873703, - 0.050248079001903534, - 0.04166022688150406, - -0.03138338401913643, - 0.027954040095210075, - 0.007608810439705849, - -0.028143342584371567, - 0.0008438541553914547, - 0.026732830330729485, - 0.05875341594219208, - -0.09967515617609024, - -0.010662459768354893, - -0.08705344796180725, - 0.06402252614498138, - -0.06523282825946808, - 0.08083129674196243, - 0.02737555280327797, - -0.01571253314614296, - -0.10060656070709229, - 0.014561232179403305, - -0.010295488871634007, - 0.05841793119907379, - 0.03223147988319397, - 0.03551070764660835, - 0.04109828919172287, - -0.07578560709953308, - 0.07033883780241013, - 0.058126144111156464, - 0.01752890646457672, - -0.08540873229503632, - 0.006016083061695099, - -0.027324464172124863, - 0.046412453055381775, - 0.005907483398914337, - -0.027537653222680092, - -0.004746068734675646, - -0.014799483120441437, - 0.003220837563276291, - 0.06860937178134918, - 0.06972348690032959, - 0.048717208206653595, - -0.10334914922714233 - ] - }, - "p244_027.wav": { - "name": "p244", - "embedding": [ - 0.04432281106710434, - 0.07354508340358734, - -0.03412673622369766, - 0.0028409529477357864, - -0.012658207677304745, - 0.05901127681136131, - -0.12379668653011322, - 0.08685243874788284, - 0.012447293847799301, - 0.13412760198116302, - -0.06889189779758453, - 0.11494535207748413, - 0.022990604862570763, - -0.15885275602340698, - -0.006521563045680523, - 0.004106161650270224, - 0.008960036560893059, - 0.0411091148853302, - -0.036406636238098145, - -0.02812749333679676, - 0.0601324662566185, - 0.05481727421283722, - 0.044593121856451035, - -0.14300663769245148, - 0.03986106812953949, - 0.05103269964456558, - 0.012283232063055038, - 0.052562467753887177, - -0.015370592474937439, - -0.10172130167484283, - -0.03452380746603012, - 0.10231205075979233, - -0.05644785612821579, - 0.01934194378554821, - 0.05006445199251175, - -0.019126635044813156, - -0.02801322564482689, - -0.042540453374385834, - 0.030695855617523193, - 0.031318336725234985, - 0.005516704171895981, - 0.053985387086868286, - 0.023677410557866096, - -0.03394247964024544, - 0.029108364135026932, - 0.04938003420829773, - 0.021068723872303963, - -0.055030401796102524, - -0.0659765899181366, - 0.16514599323272705, - 0.012818671762943268, - 0.016749534755945206, - -0.07091765105724335, - -0.05374474078416824, - 0.07389141619205475, - 0.012549187988042831, - -0.058447156101465225, - -0.027476154267787933, - 0.056489497423172, - 0.10836535692214966, - -0.02241826243698597, - -0.05815034359693527, - 0.05611545592546463, - 0.04972558468580246, - -0.012564528733491898, - 0.06321202218532562, - 0.1030239462852478, - 0.08244116604328156, - 0.029996566474437714, - 0.03186764940619469, - -0.0323331356048584, - 0.10459224879741669, - 0.03648272529244423, - -0.033128805458545685, - 0.0326327309012413, - -0.028120974078774452, - -0.04594683647155762, - -0.03663431853055954, - -0.05550771951675415, - -0.0330071821808815, - 0.03931658715009689, - -0.006884632632136345, - 0.0686824694275856, - 0.024757636711001396, - -0.06870334595441818, - 0.027374185621738434, - 0.040667325258255005, - -0.0534016378223896, - 0.046957019716501236, - -0.007710677571594715, - 0.02688753977417946, - 0.013953055255115032, - -0.1099095270037651, - -0.11291852593421936, - 0.04806957393884659, - 0.018868692219257355, - -0.025740426033735275, - 0.058151327073574066, - 0.07144999504089355, - -0.04021773487329483, - 0.09609010815620422, - 0.009181387722492218, - -0.038025110960006714, - -0.001317206653766334, - -0.040908198803663254, - 0.11304080486297607, - 0.13078133761882782, - 0.005507038906216621, - 0.03398223966360092, - -0.11903263628482819, - 0.035784296691417694, - 0.036333270370960236, - -0.14562994241714478, - -0.0747666209936142, - 0.0033839354291558266, - -0.01173822209239006, - 0.0062467013485729694, - 0.11940028518438339, - -0.003899088129401207, - 0.028578901663422585, - 0.10952045023441315, - -0.1148550808429718, - -0.053863491863012314, - -0.04510793089866638, - 0.03156639263033867, - -0.07044486701488495, - 0.06248483061790466, - 0.04448135197162628, - -0.026083804666996002, - 0.01805531047284603, - 0.044719040393829346, - -0.01635478250682354, - 0.03495458513498306, - -0.016607210040092468, - -0.014521969482302666, - 0.022298172116279602, - -0.05599301680922508, - -0.008513668552041054, - -0.0020260638557374477, - 0.04130125790834427, - 0.07170802354812622, - -0.010988626629114151, - -0.07091115415096283, - -0.10348059982061386, - 0.02258566953241825, - 0.009420241229236126, - 0.03773786500096321, - -0.03998532518744469, - -0.032974280416965485, - -0.03115672431886196, - -0.07251474261283875, - 0.04311061650514603, - -0.023966269567608833, - 0.06192421913146973, - 0.030083896592259407, - 0.023471448570489883, - 0.10188248008489609, - 0.02776740863919258, - -0.004157468676567078, - -0.034370824694633484, - -0.03946379944682121, - 0.0039813946932554245, - 0.004686253145337105, - -0.077348992228508, - -0.04909580573439598, - -0.03943309932947159, - -0.03568442538380623, - -0.03952997550368309, - 0.05051346868276596, - 0.04566514864563942, - 0.0454668328166008, - 0.026747507974505424, - -0.0385223850607872, - -0.0630970224738121, - -0.08967648446559906, - -0.04111894592642784, - -0.00871978234499693, - -0.026575561612844467, - -0.051508672535419464, - 0.12006650865077972, - 0.008227568119764328, - 0.03348005563020706, - -0.07317588478326797, - 0.0016684443689882755, - -0.07362757623195648, - 0.027828818187117577, - 0.04218640178442001, - -0.020466996356844902, - -0.002867426723241806, - -0.004060441628098488, - 0.00015130732208490372, - 0.053317341953516006, - 0.095311738550663, - 0.04253970831632614, - 0.013434167020022869, - -0.0034487536177039146, - -0.061610374599695206, - 0.15834152698516846, - 0.10514329373836517, - -0.01765006221830845, - -0.07048051059246063, - -0.036414600908756256, - -0.10194718092679977, - 0.02502007596194744, - -0.017176542431116104, - -0.010008294135332108, - 0.000814578088466078, - 0.018073352053761482, - -0.09646859765052795, - -0.05671139061450958, - 0.015663597732782364, - -0.04576176404953003, - -0.014507502317428589, - -0.08447213470935822, - 0.05495987460017204, - 0.09973976016044617, - 0.029841985553503036, - -0.0037116468884050846, - -0.031571075320243835, - 0.053076013922691345, - -0.05090910196304321, - 0.03330843150615692, - 0.01553352177143097, - 0.04024161398410797, - -0.06372494995594025, - 0.011975262314081192, - -0.03629833832383156, - -0.008213363587856293, - -0.06851102411746979, - 0.0992109403014183, - 0.04397306218743324, - -0.05417325720191002, - -0.05329791456460953, - 0.09340571612119675, - -0.02845717966556549, - 0.01837374083697796, - 0.03311600908637047, - 0.02748539298772812, - 0.04829017072916031, - -0.14807772636413574, - 0.07516683638095856, - 0.02214081585407257, - 0.0023267148062586784, - -0.09832902252674103, - -0.10687923431396484, - -0.024699702858924866, - 0.028222691267728806, - 0.02537519857287407, - -0.06494569778442383, - -0.003348737955093384, - 0.050109393894672394, - 0.03473294526338577, - 0.021052168682217598, - 0.11525900661945343, - 0.006066151428967714, - -0.08687369525432587 - ] - }, - "p244_077.wav": { - "name": "p244", - "embedding": [ - 0.0441247895359993, - 0.05577719584107399, - -0.011542562395334244, - 0.04647618532180786, - -0.07843305170536041, - 0.04447241127490997, - -0.12737514078617096, - 0.14008599519729614, - -0.022516822442412376, - 0.11242713034152985, - -0.05996832996606827, - 0.13259345293045044, - -0.02528795599937439, - -0.18848836421966553, - -0.00502127967774868, - 0.07134155929088593, - -0.014987419359385967, - -0.042251598089933395, - -0.008396918885409832, - -0.02066117525100708, - 0.030952034518122673, - 0.030579710379242897, - 0.05033896863460541, - 0.030778992921113968, - 0.014115611091256142, - 0.07981330156326294, - -0.013351555913686752, - 0.04463367164134979, - 0.019361531361937523, - -0.028901483863592148, - -0.0441368892788887, - 0.09508106112480164, - -0.06657519936561584, - 0.0026479996740818024, - 0.05398434400558472, - -0.017870793119072914, - -0.02787959761917591, - -0.05334862321615219, - -0.03318542614579201, - -0.021154779940843582, - -0.07629251480102539, - 0.07471948862075806, - 0.03834088519215584, - -0.01960926689207554, - 0.054473958909511566, - 0.008354767225682735, - -0.031763315200805664, - -0.019614068791270256, - -0.12774911522865295, - 0.11969154328107834, - 0.06087518483400345, - -0.0017305565997958183, - -0.07445700466632843, - -0.0444067120552063, - 0.10394944250583649, - -0.022765133529901505, - -0.11375965178012848, - -0.048930611461400986, - 0.09639698266983032, - 0.1404995620250702, - -0.03372683376073837, - -0.021637579426169395, - 0.02221793122589588, - 0.1013527512550354, - 0.08033356070518494, - 0.09617137908935547, - 0.07934974133968353, - 0.12718281149864197, - -0.026742536574602127, - 0.016393916681408882, - 0.053307823836803436, - 0.07378504425287247, - 0.037886109203100204, - -0.005526804365217686, - 0.0018383972346782684, - 0.02013028971850872, - 0.0002220624592155218, - 0.0023388895206153393, - -0.022234193980693817, - -0.00037703244015574455, - -0.021738335490226746, - -0.010839002206921577, - 0.010133093222975731, - 0.016255555674433708, - -0.02127884142100811, - 0.07280543446540833, - 0.05774432420730591, - 0.009844318963587284, - 0.06331487745046616, - 0.02046625316143036, - -0.03377727046608925, - 0.08063536137342453, - -0.09111381322145462, - -0.05468762665987015, - -0.0004921611398458481, - -0.009001150727272034, - 0.027706097811460495, - 0.09170880913734436, - 0.03438568115234375, - -0.009573924355208874, - 0.13051530718803406, - 0.046903930604457855, - -0.00993403047323227, - 0.04298553615808487, - -0.08616945147514343, - 0.1249568909406662, - 0.06969983875751495, - -0.02717544510960579, - 0.05156414955854416, - -0.05012320727109909, - 0.08062338083982468, - 0.061145517975091934, - -0.12330621480941772, - -0.030489381402730942, - 0.021639931946992874, - 0.00677353423088789, - -0.032268159091472626, - 0.1390179693698883, - -0.01703375019133091, - 0.041552312672138214, - 0.11843377351760864, - -0.08506986498832703, - -0.05398859083652496, - 0.0014515286311507225, - 0.03961411863565445, - -0.08837606012821198, - 0.058947350829839706, - 0.031523775309324265, - -0.005090508610010147, - 0.029098298400640488, - 0.0854685977101326, - -0.01350948866456747, - -0.010343389585614204, - 0.03508518636226654, - -0.06436306983232498, - 0.013971364125609398, - -0.020596493035554886, - 0.006497354246675968, - 0.07645373791456223, - 0.030720841139554977, - 0.06042849272489548, - -0.01582488603889942, - -0.008674650453031063, - -0.1221734881401062, - 0.012565107084810734, - 0.035887524485588074, - 0.09438872337341309, - -0.0019660682883113623, - -0.027055587619543076, - -0.052517496049404144, - -0.08269670605659485, - 0.026657959446310997, - 0.001751558156684041, - 0.07053229212760925, - -0.04909665882587433, - 0.0018528427463024855, - 0.06924028694629669, - 0.038046836853027344, - 0.0036381392274051905, - -0.06326187402009964, - -0.05350184440612793, - -0.010834218934178352, - 0.05925120413303375, - -0.09384602308273315, - -0.05921382084488869, - -0.014839387498795986, - 0.05338997393846512, - -0.03743450716137886, - 0.051080018281936646, - 0.04795766621828079, - 0.03266468644142151, - 0.01791839674115181, - -0.0691235139966011, - 0.011312424205243587, - -0.08719964325428009, - -0.07640030980110168, - -0.01496092975139618, - 0.0074958885088562965, - -0.013697894290089607, - 0.059496089816093445, - 0.02363206073641777, - 0.05525142699480057, - -0.005776542238891125, - -0.07624559104442596, - -0.10020535439252853, - 0.04826219007372856, - 0.03628809005022049, - -0.013998333364725113, - 0.06495166569948196, - 0.0707811713218689, - -0.08242375403642654, - 0.05237758159637451, - 0.045573752373456955, - 0.10469721257686615, - -0.04441332072019577, - 0.03467366099357605, - -0.0633363276720047, - 0.0810864269733429, - 0.10685169696807861, - -0.0902961939573288, - -0.08031240105628967, - -0.023051604628562927, - -0.0735018253326416, - 0.05149964615702629, - -0.030868660658597946, - -0.024761589244008064, - 0.030378814786672592, - 0.002915068995207548, - -0.10719775408506393, - -0.08636774122714996, - 0.07856257259845734, - -0.07141738384962082, - -0.0007749493233859539, - -0.09568405151367188, - 0.03428655490279198, - 0.08233478665351868, - 0.022525392472743988, - -0.02349892258644104, - -0.0033800352830439806, - 0.05736416205763817, - -0.02389426901936531, - 0.007860852405428886, - 0.0827043354511261, - 0.036795757710933685, - -0.10705377161502838, - -0.047763891518116, - -0.06690309196710587, - 0.049164410680532455, - -0.023161571472883224, - 0.15385277569293976, - 0.0024788815062493086, - -0.03624585270881653, - -0.04904076084494591, - 0.025826483964920044, - 0.0019155757036060095, - 0.04821204021573067, - 0.05015700310468674, - 0.07506665587425232, - 0.02887258306145668, - -0.04474882781505585, - 0.1433289647102356, - 0.04517758637666702, - -0.05305725708603859, - -0.056351616978645325, - -0.022155005484819412, - -0.05352121591567993, - 0.01626274362206459, - 0.02168426476418972, - -0.11227668076753616, - -0.020241057500243187, - 0.029854975640773773, - -0.029061123728752136, - 0.044770658016204834, - 0.14251279830932617, - 0.07589574158191681, - -0.09854022413492203 - ] - }, - "p244_364.wav": { - "name": "p244", - "embedding": [ - 0.07411766052246094, - 0.0688961073756218, - -0.03767406567931175, - -0.0035897730849683285, - -0.029766447842121124, - 0.046414099633693695, - -0.12934976816177368, - 0.09268532693386078, - -0.005761180073022842, - 0.14150846004486084, - -0.06534643471240997, - 0.1073131412267685, - 0.009341469034552574, - -0.10973008722066879, - -0.022096753120422363, - 0.019180428236722946, - -0.039482422173023224, - -0.018080715090036392, - -0.04646385833621025, - -0.03326559066772461, - 0.027837440371513367, - 0.05835944414138794, - 0.02847321890294552, - -0.03541101515293121, - 0.022809116169810295, - 0.047375187277793884, - -0.00468095950782299, - 0.011728998273611069, - -0.0037638982757925987, - -0.06544762849807739, - -0.001855323789641261, - 0.08075466006994247, - -0.05059591680765152, - 0.019316092133522034, - 0.009953207336366177, - 0.004052397795021534, - 0.00855876225978136, - -0.07630345970392227, - -0.009677673690021038, - 0.040510546416044235, - -0.010372968390583992, - 0.07524291425943375, - 0.022167598828673363, - -0.022396724671125412, - 0.00717608816921711, - -0.00957159511744976, - -0.016653750091791153, - -0.03913448378443718, - -0.08551868051290512, - 0.18275299668312073, - 0.048809558153152466, - 0.01193698775023222, - -0.08591070026159286, - -0.034239254891872406, - 0.060345228761434555, - -0.003848826512694359, - -0.06945644319057465, - -0.025525327771902084, - 0.02138989232480526, - 0.11611030995845795, - -0.01534538995474577, - -0.06660165637731552, - 0.037291429936885834, - 0.08991001546382904, - 0.030401840806007385, - 0.0201491080224514, - 0.11415170133113861, - 0.0930323451757431, - -0.03326226770877838, - 0.014700353145599365, - 0.03936295211315155, - 0.07029324024915695, - 0.08579345792531967, - -0.0018287412822246552, - 0.04666293412446976, - -0.029974348843097687, - -0.020235486328601837, - -0.01014566607773304, - -0.022014593705534935, - -0.056566379964351654, - -0.0003004016471095383, - -0.010959039442241192, - 0.018272504210472107, - 0.0851973295211792, - -0.04853484034538269, - 0.019574005156755447, - 0.03364041820168495, - -0.04355157911777496, - 0.05365624278783798, - 0.045190244913101196, - 0.03042224608361721, - 0.02210867404937744, - -0.07886255532503128, - -0.0850730836391449, - 0.053215377032756805, - 5.2145373047096655e-05, - 0.0519869439303875, - 0.05321744084358215, - 0.05672458931803703, - -0.013537104241549969, - 0.08900400251150131, - 0.02567974478006363, - -0.005181679967790842, - -0.04215504229068756, - -0.06359979510307312, - 0.11314573884010315, - 0.14001679420471191, - -0.037757281213998795, - 0.023854993283748627, - -0.042268212884664536, - 0.031940706074237823, - 0.027521274983882904, - -0.11223103106021881, - -0.07159793376922607, - 0.025317013263702393, - 0.027026234194636345, - 0.04232592508196831, - 0.09741935133934021, - 0.024838989600539207, - 0.04968748614192009, - 0.07410114258527756, - -0.06681782007217407, - -0.037675559520721436, - -0.025230515748262405, - 0.03447061777114868, - -0.07518871128559113, - 0.0433245524764061, - 0.05249509960412979, - 0.003272540867328644, - -0.02157735824584961, - 0.0655079334974289, - -0.008282921276986599, - 0.010799411684274673, - -0.04245069622993469, - 0.019343122839927673, - 0.0475752130150795, - 0.002618471859022975, - -0.0015741947572678328, - 0.022558771073818207, - 0.02955506555736065, - 0.044815391302108765, - 0.0234798863530159, - -0.04209362715482712, - -0.12220008671283722, - 0.03398098796606064, - 0.041929736733436584, - 0.03299722075462341, - -0.05535803362727165, - -0.03683823347091675, - -0.00916335266083479, - -0.048021018505096436, - 0.023520659655332565, - -0.005893264897167683, - 0.04973649978637695, - 0.02444392442703247, - -0.011596551164984703, - 0.11101164668798447, - 0.0012469416251406074, - -0.0016663861460983753, - -0.002089510438963771, - 0.005225991364568472, - 0.027256745845079422, - 0.05554088205099106, - -0.07215414196252823, - -0.08712362498044968, - -0.004855040460824966, - 0.005757532082498074, - 0.0021163932979106903, - 0.040705401450395584, - 0.06049233675003052, - -0.03540574014186859, - 0.028685539960861206, - -0.06474751234054565, - -0.003975156228989363, - -0.09975000470876694, - -0.0512579008936882, - 0.005521845072507858, - -0.05837303027510643, - -0.014604221098124981, - 0.09144848585128784, - 0.005041875876486301, - 0.05929539352655411, - -0.05762714892625809, - -0.05505233258008957, - -0.037216201424598694, - 0.049103111028671265, - 0.06742976605892181, - -0.0353429913520813, - -0.0027305083349347115, - 0.0564521849155426, - 0.04915950819849968, - 0.028110604733228683, - 0.06778980791568756, - 0.07989275455474854, - -0.05025125667452812, - -0.020636796951293945, - -0.05088840425014496, - 0.1061127632856369, - 0.0628167986869812, - -0.05226246640086174, - -0.06122283637523651, - -0.055083196610212326, - -0.0589204803109169, - 0.016531746834516525, - -0.02637522481381893, - 0.0182774867862463, - 0.04533546417951584, - -0.018756572157144547, - -0.0969420075416565, - -0.09481378644704819, - 0.0583159439265728, - -0.03491229563951492, - 0.008995480835437775, - -0.06785570830106735, - 0.04639941453933716, - 0.07237907499074936, - 0.048800449818372726, - -0.027813490480184555, - 0.011149127036333084, - -0.010462388396263123, - -0.04715214669704437, - -0.01963178999722004, - 0.0028442740440368652, - 0.03367045149207115, - -0.08749338239431381, - -0.01355995424091816, - -0.06922807544469833, - 0.04285108298063278, - -0.059916459023952484, - 0.10366028547286987, - 0.01412882935255766, - -0.058058008551597595, - -0.08771266788244247, - 0.02347324788570404, - -0.03683902323246002, - 0.04756538197398186, - 0.043209902942180634, - 0.028496388345956802, - 0.04044199734926224, - -0.09550120681524277, - 0.06856609880924225, - 0.0707521140575409, - -0.013329627923667431, - -0.08416861295700073, - -0.0413392037153244, - -0.0009588624234311283, - 0.04733605310320854, - 0.0095968097448349, - -0.022001352161169052, - 0.01775701902806759, - 0.008782084099948406, - 0.0021933193784207106, - 0.0537465438246727, - 0.09249182790517807, - 0.05076516792178154, - -0.1178692877292633 - ] - }, - "p244_205.wav": { - "name": "p244", - "embedding": [ - 0.03016308695077896, - 0.07631278038024902, - -0.02349473536014557, - -0.0017680339515209198, - -0.025959618389606476, - 0.011977539397776127, - -0.1266510784626007, - 0.07942116260528564, - -0.012677554972469807, - 0.1364721804857254, - -0.06258305162191391, - 0.0889732763171196, - -0.05844544619321823, - -0.09973613917827606, - 0.00487312488257885, - 0.04413086548447609, - -0.01881502754986286, - -0.005670476704835892, - 0.005553156137466431, - -0.07158921658992767, - 0.021017249673604965, - 0.0031952597200870514, - 0.028753286227583885, - -0.04739619791507721, - -0.008782098069787025, - 0.09371021389961243, - 0.001390613615512848, - -0.019207758828997612, - -0.01510784961283207, - -0.03508295863866806, - 0.011021770536899567, - 0.058934133499860764, - -0.022919263690710068, - -0.0034853527322411537, - 0.03721454739570618, - 0.02054639160633087, - -0.03435319662094116, - 0.0009646564722061157, - 0.049066949635744095, - 0.03440074995160103, - -0.06181098148226738, - 0.06955818831920624, - 0.007186093833297491, - -0.003993075340986252, - 0.057347480207681656, - -0.042310722172260284, - -0.04215339571237564, - 0.034727320075035095, - -0.04151586443185806, - 0.09577593207359314, - 0.06594061851501465, - 0.010294405743479729, - -0.06734541058540344, - 0.01236158236861229, - 0.07711176574230194, - 0.007514624390751123, - -0.11242041736841202, - -0.016460532322525978, - 0.03292901813983917, - 0.09196829050779343, - -0.031774237751960754, - -0.05448863282799721, - 0.00978437066078186, - 0.0871991366147995, - 0.003283141180872917, - 0.060162123292684555, - 0.08885753899812698, - 0.09054620563983917, - -0.00599433109164238, - -0.027453433722257614, - 0.040771447122097015, - 0.06526815891265869, - 0.06084730476140976, - -0.024752981960773468, - 0.03567638620734215, - -0.04636397585272789, - 0.0012313686311244965, - -0.025745250284671783, - -0.004358578473329544, - -0.08555863797664642, - -0.06419212371110916, - -0.041867781430482864, - 0.0004935902543365955, - 0.03392283245921135, - -0.0019047296373173594, - -0.015169690363109112, - 0.0805935189127922, - -0.04919591546058655, - 0.04117341339588165, - 0.04079952463507652, - -0.024259822443127632, - 0.006130870431661606, - -0.0655989721417427, - -0.019292734563350677, - 0.009497793391346931, - -0.019837111234664917, - 0.06371242552995682, - 0.04196896031498909, - 0.03817059099674225, - 0.044975943863391876, - 0.0781751498579979, - 0.041749581694602966, - 0.0076402341946959496, - -0.029130414128303528, - -0.062173351645469666, - 0.0958670824766159, - 0.11044518649578094, - -0.06733745336532593, - 0.027478892356157303, - -0.00026594940572977066, - 0.004652870818972588, - -0.0034995153546333313, - -0.08310652524232864, - -0.01802799291908741, - -0.013631366193294525, - 0.059266187250614166, - 0.011897288262844086, - 0.09876236319541931, - 0.016565734520554543, - 0.017642585560679436, - 0.10447601974010468, - -0.03063739836215973, - -0.06334168463945389, - -0.07251597195863724, - 0.03190169110894203, - -0.09228309988975525, - 0.06963847577571869, - 0.06185544282197952, - 0.04570194333791733, - 0.011232136748731136, - 0.06871529668569565, - 0.01743600331246853, - 0.009362057782709599, - -0.062454648315906525, - -0.0077316854149103165, - 0.009054852649569511, - -0.0016396455466747284, - 0.044532883912324905, - 0.05752849578857422, - -0.0030330857262015343, - 0.10861839354038239, - 0.037174634635448456, - 0.02606108784675598, - -0.0805550068616867, - 0.020083174109458923, - 0.03879685699939728, - 0.007034924812614918, - -0.05270201712846756, - -0.04865071922540665, - 0.01137634739279747, - -0.06903019547462463, - -0.005708023905754089, - -0.033123183995485306, - 0.073824942111969, - -0.007686281576752663, - -0.020624075084924698, - 0.11325747519731522, - 0.024462204426527023, - -0.019084304571151733, - -0.03392207622528076, - -0.02937910705804825, - -0.027688931673765182, - 0.048706650733947754, - -0.1823766827583313, - -0.07137907296419144, - -0.030675146728754044, - 0.0416785404086113, - 0.011940306052565575, - 0.024640271440148354, - 0.08288649469614029, - -0.003177657723426819, - 0.025145195424556732, - 0.032972194254398346, - 0.004632714670151472, - -0.0440162755548954, - -0.0829324722290039, - -0.023201609030365944, - -0.07680384814739227, - -0.035976164042949677, - 0.05989842861890793, - -0.032220836728811264, - 0.04643622040748596, - -0.03596806526184082, - -0.04324684664607048, - -0.0665208026766777, - 0.06019249185919762, - 0.013477716594934464, - -0.04814360290765762, - 0.0039572808891534805, - 0.07898157835006714, - -0.027035336941480637, - -0.005007045343518257, - 0.02664177678525448, - 0.09329436719417572, - -0.07667524367570877, - 0.020837122574448586, - -0.0740472599864006, - 0.038607027381658554, - 0.10655274987220764, - -0.04236876592040062, - -0.06561217457056046, - -0.09368140995502472, - -0.04921199381351471, - 0.059822387993335724, - -0.07126978784799576, - -0.031032122671604156, - -0.001142874825745821, - -0.04545274004340172, - -0.06689963489770889, - -0.0906432718038559, - 0.0516461580991745, - -0.014145022258162498, - 0.007073591463267803, - -0.06059178337454796, - 0.05127984285354614, - -0.008993417955935001, - 0.04388221353292465, - -0.06733091175556183, - 0.06072895973920822, - 0.020806273445487022, - -0.030553819611668587, - 0.025757934898138046, - 0.031326279044151306, - 0.06085589528083801, - -0.03650522977113724, - -0.07732366025447845, - -0.07856559753417969, - 0.05569041147828102, - -0.04994209483265877, - 0.05564780905842781, - 0.020791439339518547, - -0.03016388788819313, - -0.012631956487894058, - -0.016292493790388107, - -0.006613049656152725, - 0.023799734190106392, - 0.06291507184505463, - 0.06203335523605347, - 0.015896782279014587, - -0.029428161680698395, - 0.08116836845874786, - 0.03815999627113342, - 0.028297681361436844, - -0.04080859199166298, - 0.006520522758364677, - -0.0443902313709259, - 0.018002452328801155, - 0.0064173294231295586, - -0.10180249065160751, - 0.03926005959510803, - -0.016444198787212372, - 0.03178990259766579, - 0.0287665743380785, - 0.057476386427879333, - 0.031311824917793274, - -0.03543446585536003 - ] - }, - "p244_153.wav": { - "name": "p244", - "embedding": [ - 0.029908746480941772, - 0.08796428889036179, - 0.003561137244105339, - 0.05124139040708542, - -0.03838258981704712, - 0.0694885402917862, - -0.1072276160120964, - 0.11506807804107666, - -0.03839406371116638, - 0.09610925614833832, - -0.08132104575634003, - 0.1011568009853363, - -0.03140243515372276, - -0.16094990074634552, - -0.05393482372164726, - 0.053198784589767456, - -0.02203511819243431, - -0.016521615907549858, - 0.01955573260784149, - -0.0018976922146975994, - 0.03567659854888916, - 0.060260578989982605, - 0.06530128419399261, - 0.021815720945596695, - 0.034594371914863586, - 0.047837283462285995, - 0.009844763204455376, - 0.07774927467107773, - 0.05152718722820282, - -0.02773633413016796, - -0.049499064683914185, - 0.12236839532852173, - -0.034186042845249176, - 0.005283478647470474, - 0.04035300016403198, - 0.015342583879828453, - 0.022626454010605812, - -0.05843276157975197, - -0.02367490716278553, - -0.0004228993784636259, - -0.053719110786914825, - 0.06582271307706833, - 0.03062688186764717, - 0.006141499616205692, - 0.05435426905751228, - -0.01053429115563631, - -0.023255351930856705, - -0.027505073696374893, - -0.11757603287696838, - 0.1545579582452774, - 0.05283476412296295, - 0.011358948424458504, - -0.08650030195713043, - -0.07226473093032837, - 0.09286567568778992, - -0.012404659762978554, - -0.10434385389089584, - -0.004754845052957535, - 0.07416536659002304, - 0.1650507152080536, - 0.010440561920404434, - -0.029890703037381172, - 0.025686901062726974, - 0.11186371743679047, - 0.045836832374334335, - 0.07590942829847336, - 0.07507078349590302, - 0.08583184331655502, - 0.005289588123559952, - 0.011945978738367558, - 0.04197634011507034, - 0.057633113116025925, - -0.006659397855401039, - -0.022176772356033325, - -0.005409453064203262, - 0.02046557329595089, - -0.03861046954989433, - 0.042081087827682495, - -0.0004089409194421023, - -0.0010156872449442744, - -0.00868919026106596, - -0.0002444600686430931, - -0.018871985375881195, - 0.013513554818928242, - -0.028141943737864494, - 0.05924978852272034, - -0.015947844833135605, - 0.027160553261637688, - 0.08286624401807785, - 0.026302088052034378, - -0.014514127746224403, - 0.04845216125249863, - -0.040523711591959, - -0.06870316714048386, - -0.008588501252233982, - 0.01960325427353382, - 0.015888340771198273, - 0.08247237652540207, - 0.019546357914805412, - -0.03295070677995682, - 0.12452343106269836, - 0.0405028834939003, - 0.004306546412408352, - 0.03981367126107216, - -0.10950112342834473, - 0.0926700234413147, - 0.0770566314458847, - -0.006715069990605116, - 0.06003909930586815, - -0.023645147681236267, - 0.07512587308883667, - 0.06461478024721146, - -0.13270705938339233, - -0.051948510110378265, - 0.055488720536231995, - 0.043098319321870804, - 0.029987327754497528, - 0.10221464931964874, - -0.002652437426149845, - 0.009572223760187626, - 0.08839090168476105, - -0.08693386614322662, - -0.060796551406383514, - -0.028052741661667824, - 0.06288323551416397, - -0.056464701890945435, - 0.029760736972093582, - 0.04184230789542198, - -0.006167259067296982, - -0.029533741995692253, - 0.04234592989087105, - -0.004774926230311394, - 0.017861083149909973, - 0.04606383293867111, - -0.061881713569164276, - 0.02691880241036415, - -0.045809872448444366, - -0.0025958181358873844, - 0.06921854615211487, - 0.03920679911971092, - 0.045526109635829926, - 0.01668567769229412, - -0.044367674738168716, - -0.11068161576986313, - -0.022587129846215248, - 0.05972949415445328, - 0.055391937494277954, - -0.019681308418512344, - -0.05416606366634369, - -0.0694938525557518, - -0.05197073146700859, - 0.047747254371643066, - 0.02751024439930916, - 0.07250191271305084, - -0.024239996448159218, - -0.022324927151203156, - 0.08132641017436981, - -0.0012540584430098534, - -0.007914934307336807, - -0.04296570271253586, - -0.03436541184782982, - 0.002303579356521368, - 0.025939514860510826, - -0.06129169464111328, - -0.08254344761371613, - 0.009578917175531387, - 0.01595713384449482, - -0.02093738503754139, - 0.015819037333130836, - 0.04128260910511017, - 0.009775327518582344, - 0.033406831324100494, - -0.05089791119098663, - 0.008312804624438286, - -0.10598722100257874, - -0.057884979993104935, - -0.01282563991844654, - 0.02829064056277275, - -0.009662375785410404, - 0.0908101350069046, - 0.04490748420357704, - 0.03041825070977211, - 0.030597813427448273, - -0.07342524826526642, - -0.05376426875591278, - 0.06540121883153915, - 0.08210955560207367, - 0.027659712359309196, - 0.09065345674753189, - 0.06466289609670639, - -0.06027880311012268, - 0.07642999291419983, - 0.0599515363574028, - 0.07149791717529297, - -0.027665289118885994, - -0.00744996964931488, - -0.06514466553926468, - 0.0502924770116806, - 0.0699816346168518, - -0.10499098896980286, - -0.11024827510118484, - -0.016736045479774475, - -0.06558652222156525, - 0.05622667819261551, - -0.01895371451973915, - 0.014385553076863289, - 0.022288907319307327, - -0.03905046358704567, - -0.10988224297761917, - -0.10348936915397644, - 0.08278729766607285, - -0.03129652887582779, - -0.039153359830379486, - -0.055608995258808136, - 0.03957006335258484, - 0.07866915315389633, - 0.004229674115777016, - -0.013247305527329445, - -0.0019157640635967255, - 0.0330946147441864, - -0.06683085858821869, - -0.04622773081064224, - 0.04608287289738655, - -0.0011177631095051765, - -0.11169110238552094, - 0.025441113859415054, - -0.06304651498794556, - 0.10115350782871246, - -0.0571221262216568, - 0.14585107564926147, - -0.009756825864315033, - -0.05754952132701874, - -0.06882981956005096, - 0.04157806187868118, - -0.021346334367990494, - 0.022811686620116234, - 0.035449832677841187, - 0.039186086505651474, - 0.0056622447445988655, - -0.05191107094287872, - 0.10407206416130066, - 0.030057601630687714, - -0.057143434882164, - -0.06609752029180527, - -0.024134939536452293, - -0.026114612817764282, - 0.02671566978096962, - 0.01797613874077797, - -0.07374761998653412, - -0.01744576171040535, - 0.00899358931928873, - -0.02213093265891075, - 0.0421634316444397, - 0.1310834437608719, - 0.05119245499372482, - -0.12099143117666245 - ] - }, - "p244_413.wav": { - "name": "p244", - "embedding": [ - 0.05552748590707779, - 0.06643375009298325, - 0.0063137393444776535, - 0.038887862116098404, - -0.021131176501512527, - 0.08869626373052597, - -0.11887893080711365, - 0.11855585873126984, - -0.052547886967659, - 0.14150460064411163, - -0.07664511352777481, - 0.12353579699993134, - -0.008132260292768478, - -0.15871445834636688, - -0.057194918394088745, - 0.0658191367983818, - -0.03010125830769539, - -0.006774375215172768, - -0.026586201041936874, - 0.021808285266160965, - 0.04495798796415329, - 0.0243681613355875, - 0.06698594987392426, - -0.01693485863506794, - 0.027512365952134132, - 0.04701056331396103, - 0.032983992248773575, - 0.10896874219179153, - 0.05157843604683876, - -0.09362108260393143, - -0.020956801250576973, - 0.11279016733169556, - -0.04005863144993782, - 0.03653428703546524, - 0.0634993463754654, - 0.01574144884943962, - 0.018847458064556122, - -0.07978498935699463, - -0.0190176609903574, - -0.022713553160429, - -0.028643637895584106, - 0.06819503009319305, - 0.0020107771269977093, - -0.010499625466763973, - 0.02728862501680851, - 0.02273166924715042, - -0.025774050503969193, - -0.056974202394485474, - -0.10698744654655457, - 0.1389126181602478, - 0.03351801261305809, - 0.03023739904165268, - -0.079288549721241, - -0.09491343796253204, - 0.09026093035936356, - -0.019700828939676285, - -0.09688359498977661, - -0.0420842319726944, - 0.06795133650302887, - 0.18795260787010193, - -0.027427110821008682, - -0.02889133431017399, - 0.022119268774986267, - 0.10026641190052032, - 0.06310391426086426, - 0.09474997222423553, - 0.09602619707584381, - 0.09091298282146454, - 0.03454095125198364, - 0.044640809297561646, - 0.009785193018615246, - 0.09830987453460693, - 0.049372993409633636, - 0.03379545360803604, - 0.020351819694042206, - 0.008216971531510353, - -0.027445772662758827, - 0.005562667269259691, - -0.04314633458852768, - -0.011826267465949059, - -0.003884481033310294, - 0.01878754422068596, - 0.03315787389874458, - 0.025065675377845764, - -0.02491840161383152, - 0.07031452655792236, - -0.02640325203537941, - -0.03403852507472038, - 0.04275985062122345, - -0.004857080057263374, - -0.004863875452429056, - 0.038948945701122284, - -0.08327022939920425, - -0.12070327997207642, - -0.0023379367776215076, - 0.008535699918866158, - 0.011260807514190674, - 0.06192712485790253, - 0.027038482949137688, - -0.026114799082279205, - 0.11182981729507446, - 0.029974572360515594, - -0.019896410405635834, - 0.04478997737169266, - -0.08082740008831024, - 0.11399301886558533, - 0.0766785740852356, - 0.00101058732252568, - 0.03435847908258438, - -0.0655413419008255, - 0.06915264576673508, - 0.07939369231462479, - -0.15886840224266052, - -0.08740544319152832, - 0.024686507880687714, - -0.006875765044242144, - -0.0021982279140502214, - 0.0999336987733841, - -0.0126122385263443, - 0.027436088770627975, - 0.09133933484554291, - -0.08899252116680145, - -0.05001698434352875, - -0.007605938706547022, - 0.04212932661175728, - -0.06933107227087021, - 0.05320509523153305, - -0.0007477098843082786, - -0.002256180625408888, - -0.02303261309862137, - 0.08864404261112213, - -0.004568884614855051, - -0.014503145590424538, - 0.03994216024875641, - -0.06618905067443848, - 0.028465144336223602, - -0.06871537119150162, - -0.002379771787673235, - 0.04775664955377579, - 0.05490398406982422, - 0.06107613071799278, - -0.0026206476613879204, - -0.06289470195770264, - -0.11377197504043579, - -0.014492626301944256, - 0.0397581122815609, - 0.07092711329460144, - -0.00949084386229515, - -0.03062376007437706, - -0.050523847341537476, - -0.03790987282991409, - 0.050263628363609314, - -0.006090502254664898, - 0.08917921781539917, - 0.010893257334828377, - 0.027754753828048706, - 0.09274743497371674, - -0.03531840443611145, - 0.010466954670846462, - -0.05027315020561218, - -0.011201899498701096, - 0.01890147477388382, - 0.04252006858587265, - -0.051358383148908615, - -0.05104398354887962, - 0.030734572559595108, - 0.01547168754041195, - -0.038472339510917664, - 0.040820203721523285, - 0.031793635338544846, - 0.03252987563610077, - 0.04169648513197899, - -0.018572775647044182, - -0.04110284149646759, - -0.10871896147727966, - -0.05247989296913147, - -0.0007934365421533585, - -0.006549298297613859, - -0.025634920224547386, - 0.06595176458358765, - 0.038318850100040436, - 0.057129211723804474, - -0.0013733610976487398, - -0.06975972652435303, - -0.10146481543779373, - 0.06508670747280121, - 0.05807028338313103, - 0.02873513475060463, - 0.04772498086094856, - 0.03442928194999695, - -0.010035617277026176, - 0.06919601559638977, - 0.07061515003442764, - 0.07210110127925873, - -0.003882280085235834, - -0.01024559698998928, - -0.08845819532871246, - 0.10111252963542938, - 0.11110378801822662, - -0.07251887023448944, - -0.08826974034309387, - -0.004682965576648712, - -0.10096397250890732, - 0.05143251642584801, - -0.034302905201911926, - -0.012578219175338745, - 0.06033125892281532, - -0.030913520604372025, - -0.11542132496833801, - -0.07458457350730896, - 0.09471369534730911, - -0.09540969133377075, - -0.03394777700304985, - -0.056562505662441254, - 0.02710641361773014, - 0.08661946654319763, - 0.0342843160033226, - 0.013200325891375542, - -0.0048741428181529045, - 0.07087680697441101, - -0.0968417376279831, - -0.028699439018964767, - 0.05182900279760361, - -0.015251491218805313, - -0.10511530935764313, - 0.02316276915371418, - -0.0690665915608406, - 0.005918172188103199, - -0.0598493292927742, - 0.1405659019947052, - -0.026604073122143745, - -0.052839308977127075, - -0.06870703399181366, - 0.025515126064419746, - -0.04872877150774002, - 0.050505273044109344, - 0.033847369253635406, - 0.05386171489953995, - 0.03783049434423447, - -0.09490808099508286, - 0.14095443487167358, - 0.04343278333544731, - -0.038364771753549576, - -0.08966538310050964, - -0.08357422053813934, - -0.03950528800487518, - 0.016744229942560196, - -0.003149115713313222, - -0.06896740943193436, - -0.01977505348622799, - 0.026742100715637207, - -0.022353297099471092, - 0.03828902170062065, - 0.12637129426002502, - 0.039877377450466156, - -0.09273171424865723 - ] - }, - "p244_034.wav": { - "name": "p244", - "embedding": [ - 0.06562553346157074, - 0.048612311482429504, - 0.015203645452857018, - -0.0012235715985298157, - -0.03443368896842003, - 0.05501305311918259, - -0.1029471755027771, - 0.11168458312749863, - 0.017423667013645172, - 0.07007189095020294, - -0.08742016553878784, - 0.0821203738451004, - -0.006993485148996115, - -0.1573825180530548, - -0.008023237809538841, - 0.04416750371456146, - -0.03125345706939697, - -0.007048833183944225, - -0.05864045023918152, - -0.03840073198080063, - 0.012356491759419441, - 0.043636079877614975, - 0.053607277572155, - -0.0024839178659021854, - 0.03205051273107529, - 0.04524322599172592, - -0.01184853445738554, - 0.019582659006118774, - 0.0020372439175844193, - -0.046482667326927185, - -0.006112158298492432, - 0.06346125900745392, - -0.03171871230006218, - -0.010496973991394043, - 0.033257387578487396, - -0.006122102495282888, - 0.01347152516245842, - -0.08026003837585449, - -0.04488036781549454, - 0.04201894998550415, - -0.05190723389387131, - 0.07317086309194565, - 0.051554225385189056, - -0.015824010595679283, - 0.05274331197142601, - 0.0038529206067323685, - -0.03422069922089577, - -0.05027550086379051, - -0.1174953430891037, - 0.15826359391212463, - 0.04552783817052841, - 0.025667157024145126, - -0.09340095520019531, - -0.01947007328271866, - 0.07311001420021057, - -0.0266435444355011, - -0.06862623989582062, - -0.02304871380329132, - 0.059475041925907135, - 0.10230003297328949, - 0.014408551156520844, - -0.01942823827266693, - 0.032441359013319016, - 0.06341756135225296, - 0.01187172718346119, - 0.02172405831515789, - 0.10330133140087128, - 0.09432270377874374, - -0.020649559795856476, - 0.035143088549375534, - 0.04434032365679741, - 0.03849361091852188, - 0.03960993140935898, - -0.0031395829282701015, - 0.014636171981692314, - -0.019699156284332275, - -0.015449078753590584, - -0.018568111583590508, - -0.02272905968129635, - -0.003091132966801524, - 0.03170564025640488, - 0.01269453763961792, - 0.02450958453118801, - 0.027898622676730156, - -0.04987247288227081, - 0.04154077172279358, - 0.004989826586097479, - 0.05342442914843559, - 0.07077434659004211, - 0.029061879962682724, - 0.008336978033185005, - 0.03075072541832924, - -0.043387334793806076, - -0.09138722717761993, - 0.005141383036971092, - 0.010789508931338787, - 0.017937371507287025, - 0.030780762434005737, - 0.024082280695438385, - -0.025861745700240135, - 0.11531367152929306, - 0.02285810559988022, - -0.012274956330657005, - 0.0018036316614598036, - -0.07109217345714569, - 0.07755395770072937, - 0.09363259375095367, - 0.0005820145597681403, - 0.06153271347284317, - -0.04272299259901047, - 0.048228733241558075, - 0.052560191601514816, - -0.09407263994216919, - -0.02396334707736969, - 0.015526879578828812, - 0.018149055540561676, - 0.04114966094493866, - 0.11613212525844574, - 0.004743978381156921, - 0.04427904635667801, - 0.09413877129554749, - -0.08159561455249786, - -0.012154145166277885, - 0.025887874886393547, - 0.020455336198210716, - -0.03368502855300903, - 0.02239091321825981, - 0.039456807076931, - -0.00019180650997441262, - -0.01304236613214016, - 0.048595916479825974, - -0.0005361376097425818, - 0.013854669407010078, - -0.03764548897743225, - 0.008796806447207928, - 0.03606352210044861, - -0.029762111604213715, - -0.030115853995084763, - 0.06373052299022675, - 0.06733863055706024, - 0.011902834288775921, - 0.03505462035536766, - -0.06342729926109314, - -0.0978875458240509, - -0.0015799155225977302, - -0.007915060967206955, - 0.05789420008659363, - -0.012920069508254528, - -0.024410098791122437, - -0.06025725603103638, - -0.017454717308282852, - 0.028336133807897568, - -0.0020864568650722504, - 0.04961779713630676, - 0.03826633095741272, - -0.0179322250187397, - 0.05169997736811638, - 0.013553905300796032, - 0.0027613863348960876, - -0.041492484509944916, - -0.04961634799838066, - 0.0030799596570432186, - 0.037748388946056366, - -0.05053270608186722, - -0.0476413369178772, - -0.007074679713696241, - -0.01024414412677288, - -0.024845262989401817, - 0.01547197438776493, - 0.040204353630542755, - -0.010804510675370693, - -0.004049159586429596, - -0.08144941926002502, - 0.027288060635328293, - -0.0710800439119339, - -0.06883895397186279, - 0.05499356985092163, - 0.01186924334615469, - -0.004030154552310705, - 0.08174224197864532, - 0.023305434733629227, - 0.031559329479932785, - -0.047674696892499924, - -0.06275229901075363, - -0.01827729120850563, - 0.056984275579452515, - 0.034231606870889664, - -0.0018060453003272414, - 0.04879539832472801, - 0.026821276172995567, - -0.027623958885669708, - 0.07013483345508575, - 0.03366212174296379, - 0.06304562091827393, - -0.0448773130774498, - -0.00812606792896986, - -0.01052139699459076, - 0.08368801325559616, - 0.050083886831998825, - -0.04954775422811508, - -0.06648942083120346, - -0.018721820786595345, - -0.04476935788989067, - 0.03467569500207901, - 0.0025751139037311077, - -0.0037698138039559126, - 0.041302941739559174, - -0.014410212635993958, - -0.08020330965518951, - -0.06206473708152771, - 0.030090447515249252, - -0.03456461429595947, - -0.005840213503688574, - -0.058361537754535675, - 0.03530937433242798, - 0.09414809942245483, - -0.006623054854571819, - -0.003878684714436531, - -0.012763336300849915, - 0.0006068050861358643, - -0.03687785193324089, - -0.03678639605641365, - 0.01219350378960371, - 0.0361783504486084, - -0.07579641044139862, - -0.006687878631055355, - -0.06306930631399155, - 0.03952993080019951, - 0.0004062677617184818, - 0.09683389961719513, - 0.03247857838869095, - -0.020130399614572525, - -0.05690188705921173, - 0.031087344512343407, - -0.019660916179418564, - 0.05484982952475548, - 0.025913558900356293, - 0.01733427867293358, - 0.05963724106550217, - -0.05483750253915787, - 0.07693038135766983, - 0.038009028881788254, - -0.05759081989526749, - -0.0389627069234848, - -0.007351682987064123, - -0.030361158773303032, - -0.0009335912764072418, - -0.01841195672750473, - -0.05207183212041855, - 0.008091631345450878, - 0.020619958639144897, - 0.013020697981119156, - 0.04077501595020294, - 0.08046837151050568, - 0.038598451763391495, - -0.08290281891822815 - ] - }, - "p244_003.wav": { - "name": "p244", - "embedding": [ - 0.0295333843678236, - 0.06818605959415436, - -0.00016502142534591258, - 0.022960500791668892, - -0.04116135463118553, - 0.0252471175044775, - -0.13690705597400665, - 0.11414899677038193, - -0.0020723938941955566, - 0.11166918277740479, - -0.08013176918029785, - 0.09192591160535812, - -0.04262375459074974, - -0.16115251183509827, - -0.014802008867263794, - 0.043254509568214417, - -0.030447257682681084, - -0.053501784801483154, - -0.015254824422299862, - -0.009343627840280533, - 0.039815712720155716, - 0.035177480429410934, - 0.018444228917360306, - 0.016101902350783348, - 0.003158713225275278, - 0.054110314697027206, - -0.009109004400670528, - 0.02530478872358799, - 0.013888445682823658, - -0.008295020088553429, - 0.013123651035130024, - 0.06857029348611832, - -0.032917413860559464, - 0.032608598470687866, - 0.040043581277132034, - 0.017812302336096764, - -0.017666494473814964, - -0.039362866431474686, - -0.0261479951441288, - -0.0014135331148281693, - -0.0679730772972107, - 0.06807398051023483, - 0.0324995182454586, - -0.017256667837500572, - 0.043432679027318954, - 0.02631065621972084, - -0.02101738750934601, - -0.03066873922944069, - -0.1055397316813469, - 0.13855354487895966, - 0.05508971959352493, - 0.013379818759858608, - -0.06369727104902267, - -0.04134828597307205, - 0.08572905510663986, - -0.022043539211153984, - -0.09691758453845978, - -0.05206381157040596, - 0.08876153081655502, - 0.11121437698602676, - -0.030014842748641968, - -0.04228461906313896, - 0.011554970405995846, - 0.09005703777074814, - 0.052858322858810425, - 0.06045984849333763, - 0.07781072705984116, - 0.10947312414646149, - -0.026679182425141335, - -0.015123778954148293, - 0.06666175276041031, - 0.056673258543014526, - 0.04848107323050499, - -0.0026129595935344696, - 0.0132496552541852, - 0.011503173038363457, - -0.01166569348424673, - 0.016191817820072174, - -0.018551545217633247, - -0.0036922504659742117, - -0.021846560761332512, - -0.012725886888802052, - -0.004193407483398914, - 0.022679870948195457, - -0.014913520775735378, - 0.03395794704556465, - 0.04889579117298126, - -0.00021272581943776459, - 0.0750490352511406, - 0.0378580205142498, - -0.003489042865112424, - 0.05743644759058952, - -0.07021570205688477, - -0.05749934911727905, - -0.004176382906734943, - -0.011763731017708778, - 0.0321279875934124, - 0.066522978246212, - 0.031300242990255356, - 0.003982923924922943, - 0.10867124050855637, - 0.010436068288981915, - -0.015197833068668842, - 0.00872453860938549, - -0.11299969255924225, - 0.10792400687932968, - 0.05790141969919205, - -0.03113420307636261, - 0.013999111019074917, - -0.052892643958330154, - 0.046940870583057404, - 0.06055445224046707, - -0.08770355582237244, - -0.047328345477581024, - 0.0492437444627285, - 0.04116356000304222, - -0.010526577942073345, - 0.12705299258232117, - 0.007765599526464939, - 0.01837928220629692, - 0.12015612423419952, - -0.08633997291326523, - -0.05526984855532646, - -0.006431904621422291, - 0.028700610622763634, - -0.07456450164318085, - 0.049012281000614166, - 0.04659518599510193, - 0.0033286120742559433, - 0.015890272334218025, - 0.07810961455106735, - 0.0056940908543765545, - 0.011244875378906727, - -0.02638048306107521, - -0.026325030252337456, - 0.031601328402757645, - -0.024860238656401634, - -0.002651314018294215, - 0.05492263659834862, - 0.04224498197436333, - 0.05766316130757332, - 0.02264775149524212, - -0.0422237291932106, - -0.11385434865951538, - 0.016186775639653206, - 0.05067789554595947, - 0.06854478269815445, - -0.02093648724257946, - -0.033872880041599274, - -0.05047303065657616, - -0.04880719259381294, - 0.019625676795840263, - -0.010662071406841278, - 0.06729476153850555, - -0.0068361894227564335, - -0.010815287940204144, - 0.09018208831548691, - 0.011250493116676807, - -0.006714948918670416, - -0.05294112116098404, - -0.05251975730061531, - -0.018979543820023537, - 0.04257283732295036, - -0.10115806013345718, - -0.06125190481543541, - -0.023261789232492447, - 0.04930824041366577, - -0.0049368105828762054, - 0.029348323121666908, - 0.046581678092479706, - 0.017598140984773636, - 0.01052377000451088, - -0.05512464791536331, - 0.02366301603615284, - -0.08300351351499557, - -0.09226083755493164, - -0.0067525687627494335, - 0.008845457807183266, - 0.011241708882153034, - 0.06768151372671127, - -0.008157648146152496, - 0.04334553703665733, - -0.016736004501581192, - -0.08927588164806366, - -0.08907850831747055, - 0.058233629912137985, - 0.04732293635606766, - -0.016672369092702866, - 0.05053155496716499, - 0.04913689196109772, - -0.06880442053079605, - 0.03210317716002464, - 0.025231758132576942, - 0.11282401531934738, - -0.058189429342746735, - 0.035158172249794006, - -0.04620283097028732, - 0.07102667540311813, - 0.08196061849594116, - -0.0762406662106514, - -0.06024560332298279, - -0.03166374936699867, - -0.04267769679427147, - 0.0125054270029068, - -0.028068695217370987, - -0.006948710884898901, - 0.010740067809820175, - -0.017177550122141838, - -0.09047006070613861, - -0.08063143491744995, - 0.028889387845993042, - -0.050079572945833206, - 0.0014487378066405654, - -0.08759210258722305, - 0.03647930547595024, - 0.06456023454666138, - 0.028283119201660156, - -0.016644684597849846, - -0.007800982799381018, - 0.024897441267967224, - -0.03692768141627312, - -0.009652554988861084, - 0.054503507912158966, - 0.040738411247730255, - -0.0612194649875164, - -0.03147048503160477, - -0.07065439969301224, - 0.052066314965486526, - -0.03769790753722191, - 0.12280608713626862, - -0.0019774094689637423, - -0.04481757432222366, - -0.03552081808447838, - -0.010182089172303677, - -0.0035797045566141605, - 0.04381715878844261, - 0.019970109686255455, - 0.04968859627842903, - 0.03286181762814522, - -0.03224371001124382, - 0.11276187747716904, - 0.05984009429812431, - -0.024158863350749016, - -0.04718280956149101, - -0.03275075554847717, - -0.041144657880067825, - 0.0072350515983998775, - -0.007992195896804333, - -0.08522205799818039, - -0.0021310315933078527, - 0.012713230215013027, - -0.004684712737798691, - 0.04930267855525017, - 0.1318783164024353, - 0.06259594112634659, - -0.10558916628360748 - ] - }, - "p244_030.wav": { - "name": "p244", - "embedding": [ - 0.05470728129148483, - 0.07676955312490463, - -0.02762940526008606, - 0.05767924338579178, - -0.07619606703519821, - 0.04276008903980255, - -0.11171802133321762, - 0.13443566858768463, - 0.014216672629117966, - 0.12439748644828796, - -0.03545985370874405, - 0.1309659779071808, - -0.019644618034362793, - -0.1529431939125061, - 0.02912980690598488, - 0.05755430459976196, - -0.004274472594261169, - -0.02756984531879425, - -0.014871301129460335, - -0.025451336055994034, - 0.026815159246325493, - 0.05262542515993118, - 0.06884843111038208, - -0.025878513231873512, - 0.035344719886779785, - 0.08189433813095093, - -0.016676263883709908, - 0.03463464602828026, - -0.004183952230960131, - -0.1075097993016243, - -0.04870396852493286, - 0.06653337180614471, - -0.06726223230361938, - 0.01787535473704338, - 0.02079075574874878, - -0.031276315450668335, - -0.02352435514330864, - -0.05166897177696228, - -0.010286376811563969, - 0.0036683299113065004, - -0.03095962479710579, - 0.08559343218803406, - 0.019595187157392502, - -0.05610499531030655, - 0.02678229659795761, - -0.0016871335683390498, - -0.025511208921670914, - -0.019675660878419876, - -0.12104354798793793, - 0.15562313795089722, - 0.06929443776607513, - 0.0057962979190051556, - -0.07313663512468338, - -0.07135674357414246, - 0.06761529296636581, - -0.0007422398775815964, - -0.09742194414138794, - -0.03820406645536423, - 0.05416587367653847, - 0.11439339816570282, - -0.011249566450715065, - -0.03667866811156273, - 0.0433211624622345, - 0.09483082592487335, - 0.07048407196998596, - 0.06450808048248291, - 0.0841134786605835, - 0.11811643838882446, - -0.04232597351074219, - 0.021638095378875732, - 0.012464185245335102, - 0.09455686807632446, - 0.055138133466243744, - 0.03224926441907883, - 0.0006414596573449671, - -0.02130945771932602, - -0.015845898538827896, - -0.03467155247926712, - -0.01327726524323225, - -0.04097800701856613, - -0.0034745950251817703, - -0.010024461895227432, - 0.034938354045152664, - 0.02906501665711403, - -0.020026667043566704, - 0.05671773850917816, - 0.062143027782440186, - -0.0180739164352417, - 0.06378280371427536, - -0.008467407897114754, - -0.006435783114284277, - 0.06746965646743774, - -0.10297304391860962, - -0.05244568735361099, - 0.033282771706581116, - 0.014758987352252007, - 0.04851013422012329, - 0.0939134731888771, - 0.041356537491083145, - -0.022815290838479996, - 0.12511798739433289, - 0.04143769294023514, - -0.012946373783051968, - 0.0026330742985010147, - -0.052655741572380066, - 0.1248498409986496, - 0.09045326709747314, - -0.017180759459733963, - 0.07442940771579742, - -0.06850285083055496, - 0.07324356585741043, - 0.037742242217063904, - -0.12452586740255356, - -0.0637553334236145, - -0.013753941282629967, - -0.006501892115920782, - -0.01811373233795166, - 0.12327870726585388, - 0.018540682271122932, - 0.07552286982536316, - 0.11820340901613235, - -0.12442626059055328, - -0.05893946439027786, - -0.0007568219443783164, - 0.05576680600643158, - -0.09783821552991867, - 0.06099921464920044, - 0.06353416293859482, - -0.03922055661678314, - 0.03726281598210335, - 0.054679617285728455, - -0.010034135542809963, - 0.03613394498825073, - 0.03675030171871185, - -0.06013532727956772, - -0.01117075514048338, - -0.03954803943634033, - -0.005952105857431889, - 0.048808448016643524, - 0.009786593727767467, - 0.06733052432537079, - -0.043168265372514725, - -0.01037953794002533, - -0.13466255366802216, - 0.029157396405935287, - 0.034274522215127945, - 0.05720892176032066, - -0.029842007905244827, - -0.04731646180152893, - -0.02947131358087063, - -0.07857740670442581, - 0.026416301727294922, - -0.0038499748334288597, - 0.03999471664428711, - -0.03648192808032036, - 0.017898237332701683, - 0.08382024616003036, - 0.06179053336381912, - -0.014123756438493729, - -0.05873624235391617, - -0.06598500907421112, - 0.00648857094347477, - 0.050255510956048965, - -0.08953459560871124, - -0.07552239298820496, - -0.0285145565867424, - 0.02494506537914276, - -0.04001874476671219, - 0.07711224257946014, - 0.06339746713638306, - 0.03856305405497551, - 0.002129770815372467, - -0.03816752880811691, - -0.011841261759400368, - -0.05057452619075775, - -0.08925756067037582, - -0.005924629513174295, - -0.0015792513731867075, - -0.041762690991163254, - 0.08837725222110748, - 0.04063595086336136, - 0.08196276426315308, - -0.047005802392959595, - -0.010510338470339775, - -0.09416946768760681, - 0.025445953011512756, - 0.014178285375237465, - -0.01749601773917675, - 0.04425964504480362, - 0.059983398765325546, - -0.05745777487754822, - 0.04824567586183548, - 0.053836409002542496, - 0.07614849507808685, - -0.037899937480688095, - 0.017541049048304558, - -0.07810387760400772, - 0.0930262953042984, - 0.13822007179260254, - -0.06520669907331467, - -0.07337333261966705, - -0.0694187581539154, - -0.10342937707901001, - 0.041308846324682236, - -0.03650330752134323, - -0.013999367132782936, - 0.03666064143180847, - 0.002039629267528653, - -0.10853581130504608, - -0.1032566949725151, - 0.08476080000400543, - -0.04359114170074463, - 0.0030293113086372614, - -0.09174497425556183, - 0.044643521308898926, - 0.07275035977363586, - 0.057189296931028366, - -0.026364460587501526, - -0.01764502376317978, - 0.06311649084091187, - -0.008676948957145214, - 0.04276953265070915, - 0.10869312286376953, - 0.06944498419761658, - -0.09542709589004517, - -0.018323691561818123, - -0.05242624878883362, - 0.01803870126605034, - -0.037017881870269775, - 0.14510849118232727, - 0.029216380789875984, - -0.04170714318752289, - -0.07686308026313782, - 0.06558069586753845, - -0.017520304769277573, - 0.048418521881103516, - 0.01869634911417961, - 0.03934627026319504, - 0.05995792895555496, - -0.08986963331699371, - 0.1134452149271965, - 0.04789048433303833, - -0.0365600511431694, - -0.06660213321447372, - -0.05832260102033615, - -0.04478484392166138, - 0.05500505492091179, - 0.004616708494722843, - -0.0925792008638382, - -0.021152371540665627, - 0.024854060262441635, - 0.016134504228830338, - 0.04518268257379532, - 0.15707702934741974, - 0.05744396150112152, - -0.1055162101984024 - ] - }, - "p244_249.wav": { - "name": "p244", - "embedding": [ - 0.012935522012412548, - 0.09927419573068619, - -0.024993648752570152, - 0.04509132355451584, - -0.05368250608444214, - 0.060529448091983795, - -0.0839657261967659, - 0.10867979377508163, - -0.07567229121923447, - 0.10712631046772003, - -0.13276126980781555, - 0.07911356538534164, - -0.09166958183050156, - -0.14737306535243988, - -0.0715826228260994, - 0.04715517535805702, - -0.017219772562384605, - -0.04937504976987839, - 0.006780656054615974, - -0.010438249446451664, - 0.04826318472623825, - 0.03554379194974899, - 8.224325574701652e-05, - 0.06011860817670822, - 0.01483230385929346, - 0.05356563627719879, - -0.0007025262457318604, - 0.06787404417991638, - 0.038646623492240906, - 0.02557419240474701, - -0.019631613045930862, - 0.13727380335330963, - -0.05240580067038536, - -0.015167741104960442, - 0.021254021674394608, - 0.037348441779613495, - 0.0300596933811903, - -0.04376578703522682, - -0.007100844290107489, - -0.015584741719067097, - -0.10023512691259384, - 0.05997200310230255, - 0.009028336964547634, - 0.010574288666248322, - 0.031171562150120735, - -0.006243289913982153, - -0.02563583105802536, - -0.02633700706064701, - -0.12020395696163177, - 0.1268252730369568, - 0.06137459725141525, - 0.01221002172678709, - -0.09540942311286926, - -0.0676732212305069, - 0.12198535352945328, - -0.01483103260397911, - -0.08746879547834396, - -0.0397750660777092, - 0.07313300669193268, - 0.1875762939453125, - -0.013813882134854794, - -0.02578629180788994, - 0.019833292812108994, - 0.08182096481323242, - 0.07705184072256088, - 0.07122629880905151, - 0.07838647812604904, - 0.08692800253629684, - 0.016382649540901184, - -0.019005723297595978, - 0.08939873427152634, - 0.04651903733611107, - 0.023835137486457825, - -0.0531136579811573, - -0.0037986375391483307, - 0.03557954728603363, - -0.02296283096075058, - 0.06596098095178604, - -0.017140677198767662, - -0.007329446263611317, - -0.028013966977596283, - 0.01259949803352356, - -0.04364576190710068, - -0.004426313564181328, - -0.03909788280725479, - 0.06070079654455185, - 0.007922438904643059, - -0.008891773410141468, - 0.1033315435051918, - 0.038845568895339966, - -0.0515342652797699, - 0.05017722025513649, - -0.07063961029052734, - -0.04186994954943657, - -0.02348773553967476, - -0.0009436081745661795, - -0.0025916362646967173, - 0.10672426223754883, - 0.02616169862449169, - -0.018439998850226402, - 0.12969665229320526, - 0.02538936398923397, - 0.04393988475203514, - 0.03814641758799553, - -0.12770715355873108, - 0.10855274647474289, - 0.07451435923576355, - -0.036402951925992966, - 0.027284573763608932, - 0.03557748347520828, - 0.04942774400115013, - 0.06636208295822144, - -0.11313772201538086, - -0.05737714469432831, - 0.04062531888484955, - 0.04659825935959816, - 0.006506338715553284, - 0.07647179812192917, - -0.039271123707294464, - -0.009470909833908081, - 0.10287342965602875, - -0.055081818252801895, - -0.06007155403494835, - -0.03266264498233795, - 0.04245371371507645, - -0.04170932248234749, - 0.03218434005975723, - 0.0382448248565197, - 0.039504993706941605, - -0.012289178557693958, - 0.06953231245279312, - -0.007693782448768616, - -0.013923222199082375, - 0.03387003764510155, - -0.05377437174320221, - 0.05353546142578125, - -0.04104000702500343, - -0.03804019093513489, - 0.09091018885374069, - 0.05472839996218681, - 0.0798858106136322, - 0.02622653730213642, - -0.0010170680470764637, - -0.08546695113182068, - -0.006697039119899273, - 0.0795888602733612, - 0.062414806336164474, - -0.01590139977633953, - -0.028021443635225296, - -0.10086825489997864, - -0.052615344524383545, - 0.03260738402605057, - 0.03941960260272026, - 0.11866677552461624, - -0.018320243805646896, - 0.0005236418801359832, - 0.10138029605150223, - -0.006560175679624081, - -0.01788152940571308, - -0.05558563396334648, - -0.01329271961003542, - -0.021850038319826126, - 0.05118302255868912, - -0.04921804368495941, - -0.10621524602174759, - 0.011298242025077343, - 0.0506180115044117, - -0.0025212641339749098, - 0.052181415259838104, - 0.055101606994867325, - -0.007459715474396944, - 0.009913264773786068, - -0.09084285795688629, - 0.06088470295071602, - -0.09334676712751389, - -0.037019032984972, - -0.022635476663708687, - -0.018536237999796867, - 0.003790324553847313, - 0.07412982732057571, - 0.03162064775824547, - 0.01260063610970974, - 0.0646538957953453, - -0.15381334722042084, - -0.07888547331094742, - 0.07864928990602493, - 0.09040091186761856, - 0.011129902675747871, - 0.08324947953224182, - 0.08978580683469772, - -0.061792463064193726, - 0.06304390728473663, - 0.07358133047819138, - 0.10434794425964355, - -0.05192577838897705, - -0.0018468810012564063, - -0.02810545451939106, - 0.017826221883296967, - 0.03070542775094509, - -0.12759071588516235, - -0.08754231780767441, - -0.0346057154238224, - -0.04267074540257454, - 0.06150691956281662, - 0.001976055558770895, - 0.04200102016329765, - 0.019065219908952713, - -0.05994474142789841, - -0.10044196248054504, - -0.08682776242494583, - 0.07510696351528168, - -0.0410810261964798, - -0.047067947685718536, - -0.07730194181203842, - -0.002518618246540427, - 0.06757852435112, - 0.014476128853857517, - 0.000981855089776218, - 0.0257673729211092, - 0.020144488662481308, - -0.06789638847112656, - -0.0522676557302475, - 0.07216951996088028, - -0.021084681153297424, - -0.08619770407676697, - 0.01282979641109705, - -0.08609282225370407, - 0.13633054494857788, - -0.04155348241329193, - 0.14530400931835175, - -0.03721082583069801, - -0.05338159203529358, - -0.08183901011943817, - 0.039759375154972076, - -0.027577422559261322, - 0.05348000302910805, - 0.04731455445289612, - 0.05943932384252548, - -0.0067628007382154465, - -0.01098265964537859, - 0.13872428238391876, - 0.04102689027786255, - -0.07474246621131897, - -0.0558406226336956, - -0.03822559118270874, - -0.055315352976322174, - -0.015425224788486958, - 0.02848370373249054, - -0.06721736490726471, - 0.014461886137723923, - -0.009060640819370747, - -0.041844263672828674, - 0.06357363611459732, - 0.11187741905450821, - 0.09933291375637054, - -0.10855313390493393 - ] - }, - "p244_325.wav": { - "name": "p244", - "embedding": [ - 0.04966717213392258, - 0.08694766461849213, - -0.012625151313841343, - -0.00333605008199811, - -0.054571639746427536, - 0.06827566027641296, - -0.13681650161743164, - 0.14079231023788452, - -0.05652210861444473, - 0.1499648094177246, - -0.07269900292158127, - 0.12226858735084534, - -0.02143661491572857, - -0.18968161940574646, - -0.01778835989534855, - 0.04816300421953201, - -0.04101085662841797, - -0.02439987286925316, - -0.04568105936050415, - -0.0217617005109787, - 0.04689629375934601, - 0.02851555496454239, - 0.006267506163567305, - -0.01548614539206028, - 0.020500976592302322, - 0.06706105172634125, - -0.0013503337977454066, - 0.03221709281206131, - -0.0010236594825983047, - -0.05861405283212662, - -0.0418982207775116, - 0.1028124988079071, - -0.05563540756702423, - 0.017795199528336525, - 0.06905356049537659, - -0.012193439528346062, - -0.010338643565773964, - -0.06881534308195114, - -0.026384342461824417, - 0.0025092957075685263, - -0.04409679025411606, - 0.06917420029640198, - 0.027254996821284294, - -0.004066402558237314, - 0.034804701805114746, - 0.040940672159194946, - -0.0013422956690192223, - -0.05357092618942261, - -0.08283291012048721, - 0.15489768981933594, - 0.06422407925128937, - -0.007211022544652224, - -0.062371835112571716, - -0.07197795063257217, - 0.10829363018274307, - -0.01292574591934681, - -0.12013749778270721, - -0.03944230079650879, - 0.08368775993585587, - 0.14994242787361145, - -0.04818883538246155, - -0.0466359406709671, - 0.02133755013346672, - 0.10212883353233337, - 0.036463163793087006, - 0.10289247334003448, - 0.08162319660186768, - 0.10675529390573502, - -0.010096531361341476, - 0.022563256323337555, - 0.05517695099115372, - 0.07468937337398529, - 0.07003836333751678, - -0.02187785878777504, - 0.04528842866420746, - 0.010652739554643631, - -0.024704448878765106, - 0.006845420226454735, - -0.039860405027866364, - -0.010626170784235, - -0.007208168040961027, - 0.013719648122787476, - 0.02561389096081257, - 0.01668722555041313, - -0.01544229220598936, - 0.056099895387887955, - 0.039016760885715485, - -0.0065971361473202705, - 0.06699902564287186, - 0.028059016913175583, - 0.01333620399236679, - 0.07469695806503296, - -0.10454930365085602, - -0.0935489684343338, - 0.04098852723836899, - -0.0011533864308148623, - 0.007668512407690287, - 0.0752333253622055, - 0.04500114172697067, - -0.017139587551355362, - 0.11948438733816147, - 0.04693763330578804, - -0.003338349750265479, - 0.03240814805030823, - -0.10219991207122803, - 0.12679052352905273, - 0.08641367405653, - -0.04284123331308365, - 0.035013142973184586, - -0.07300899922847748, - 0.09186586737632751, - 0.06711637228727341, - -0.1508287787437439, - -0.08321239799261093, - 0.03424824774265289, - 0.004776747431606054, - -0.02780088223516941, - 0.13528096675872803, - -0.026613906025886536, - 0.02791471593081951, - 0.11105003952980042, - -0.09543438255786896, - -0.0535685233771801, - -0.013050749897956848, - 0.037612125277519226, - -0.08245661854743958, - 0.060058485716581345, - 0.03796648234128952, - -0.002163125667721033, - 0.02153128571808338, - 0.09307429939508438, - -0.01862884685397148, - -0.004344776272773743, - 0.0032302397303283215, - -0.03349637985229492, - 0.016122985631227493, - -0.031178709119558334, - -0.0061846645548939705, - 0.029227789491415024, - 0.04861590266227722, - 0.04031187295913696, - -0.003569886088371277, - -0.03822077065706253, - -0.11567361652851105, - 0.018854305148124695, - 0.03079787641763687, - 0.0776229053735733, - -0.010300492867827415, - -0.007661917246878147, - -0.0339072048664093, - -0.07512915134429932, - -0.0013691673520952463, - -0.016950692981481552, - 0.07187387347221375, - -0.008953878656029701, - 0.013965497724711895, - 0.10073987394571304, - 0.04174278676509857, - -0.0016268487088382244, - -0.06149154156446457, - -0.042421549558639526, - 0.012927472591400146, - 0.05488825589418411, - -0.08420486748218536, - -0.0717003345489502, - -0.012175071984529495, - 0.02066364511847496, - -0.019151728600263596, - 0.05008373409509659, - 0.04730449616909027, - 0.03039482608437538, - 0.03697170689702034, - -0.08086833357810974, - 0.017663858830928802, - -0.12649551033973694, - -0.07574167847633362, - -0.0068981279619038105, - -0.022750329226255417, - -0.011448211967945099, - 0.07025618851184845, - -0.0037273778580129147, - 0.038678668439388275, - -0.03346174955368042, - -0.07171659171581268, - -0.08048898726701736, - 0.06606294959783554, - 0.07402089238166809, - -0.010351193137466908, - 0.03651900961995125, - 0.05470327287912369, - -0.025639459490776062, - 0.03978167474269867, - 0.06857487559318542, - 0.12023566663265228, - -0.017861492931842804, - 0.03880258649587631, - -0.06221162527799606, - 0.10736630856990814, - 0.07197622954845428, - -0.07603555917739868, - -0.08909307420253754, - -0.013390164822340012, - -0.06062651425600052, - 0.033977534621953964, - -0.020843125879764557, - -0.005121609196066856, - 0.014978908933699131, - 0.005755345802754164, - -0.0876794382929802, - -0.06285345554351807, - 0.07738222181797028, - -0.06504037976264954, - -0.01028781570494175, - -0.09509485960006714, - 0.057529449462890625, - 0.105836421251297, - 0.04114073887467384, - -0.03801435977220535, - -0.011728797107934952, - 0.056232597678899765, - -0.038454413414001465, - 0.011725552380084991, - 0.033920325338840485, - 0.038447387516498566, - -0.09217006713151932, - 0.003505860222503543, - -0.06905852258205414, - 0.04261811822652817, - -0.06036914885044098, - 0.14646580815315247, - -0.008204489946365356, - -0.056593842804431915, - -0.07322032749652863, - 0.03865882754325867, - -0.003404405666515231, - 0.03998562693595886, - 0.03483697026968002, - 0.07470151782035828, - 0.044311121106147766, - -0.0735577791929245, - 0.12321104109287262, - 0.028826171532273293, - -0.028087828308343887, - -0.05595666170120239, - -0.05587945878505707, - -0.03696545213460922, - 0.01333977933973074, - 0.0031317879911512136, - -0.09466608613729477, - -0.015701090916991234, - 0.02463914081454277, - -0.008789020590484142, - 0.05304677039384842, - 0.1365112066268921, - 0.06213065981864929, - -0.12903247773647308 - ] - }, - "p244_198.wav": { - "name": "p244", - "embedding": [ - 0.04573114216327667, - 0.08617543429136276, - -0.02858794294297695, - 0.045825034379959106, - -0.05586448311805725, - 0.015705913305282593, - -0.14525958895683289, - 0.14441385865211487, - -0.007577837444841862, - 0.12012898176908493, - -0.08360494673252106, - 0.10557852685451508, - -0.036870889365673065, - -0.17176644504070282, - -0.003762185573577881, - 0.06278923898935318, - -0.007680974900722504, - -0.053558558225631714, - -0.01869705133140087, - -0.01734916865825653, - 0.032301511615514755, - 0.03452988341450691, - 0.02038854919373989, - 0.014368487522006035, - 0.013691375963389874, - 0.06397934257984161, - -0.013846836984157562, - 0.029486337676644325, - -0.0007169125601649284, - 0.010544600896537304, - -0.010950813069939613, - 0.10610571503639221, - -0.05792625993490219, - -0.012156374752521515, - 0.03588303551077843, - -0.0003430732467677444, - -0.015359587967395782, - -0.055918894708156586, - -0.017944518476724625, - -0.02053442783653736, - -0.07188434898853302, - 0.06898166239261627, - 0.019391119480133057, - -0.020578131079673767, - 0.05303849279880524, - 0.025202907621860504, - -0.033700939267873764, - -0.030474219471216202, - -0.12311089038848877, - 0.13435962796211243, - 0.0680011734366417, - 0.02365124598145485, - -0.09387233853340149, - -0.04124774783849716, - 0.08823093771934509, - -0.010408556088805199, - -0.07647858560085297, - -0.05022794008255005, - 0.07796560227870941, - 0.1482400894165039, - -0.03063991665840149, - -0.038071926683187485, - 0.03562512621283531, - 0.11228753626346588, - 0.09648095071315765, - 0.06766235828399658, - 0.08470303565263748, - 0.12467707693576813, - -0.034814320504665375, - -0.005743354558944702, - 0.06785984337329865, - 0.059568386524915695, - 0.058094535022974014, - -0.02290506288409233, - 0.010997187346220016, - 0.0072613125666975975, - -0.011212692596018314, - -0.011183119378983974, - -0.027541745454072952, - -0.031197141855955124, - -0.013685786165297031, - 0.004870687611401081, - -0.004314986988902092, - 0.045276716351509094, - -0.03659700229763985, - 0.05031836777925491, - 0.09069882333278656, - -0.025898782536387444, - 0.08491881191730499, - 0.03384856879711151, - -0.007800151128321886, - 0.06583129614591599, - -0.11183460056781769, - -0.04853647202253342, - 0.03173079341650009, - -0.0050321235321462154, - 0.027479570358991623, - 0.08051649481058121, - 0.03731761872768402, - -0.014671975746750832, - 0.12701721489429474, - 0.028830107301473618, - -0.0015379930846393108, - 0.025718828663229942, - -0.08901875466108322, - 0.13019844889640808, - 0.07983462512493134, - -0.05251915752887726, - 0.030518166720867157, - -0.025044186040759087, - 0.023425936698913574, - 0.05075475573539734, - -0.10527608543634415, - -0.05957867577672005, - 0.03125949949026108, - 0.021248646080493927, - -0.028054513037204742, - 0.13006699085235596, - 0.010323820635676384, - 0.04855002462863922, - 0.11611439287662506, - -0.09012424200773239, - -0.07026010751724243, - -0.004726876504719257, - 0.04934266209602356, - -0.08412440121173859, - 0.06654663383960724, - 0.06829831004142761, - 0.008332595229148865, - 0.01660689152777195, - 0.07168363034725189, - 0.0018737774807959795, - 0.009136000648140907, - -0.0175600815564394, - -0.041738223284482956, - 0.0398765429854393, - -0.02146129682660103, - -0.02454327791929245, - 0.03338729590177536, - 0.019490718841552734, - 0.07131679356098175, - -0.0028607449494302273, - 0.006023178808391094, - -0.12588702142238617, - 0.018045753240585327, - 0.05641790106892586, - 0.08506707847118378, - -0.017318833619356155, - -0.02772548422217369, - -0.05546362325549126, - -0.05531419441103935, - 0.00559897581115365, - -0.0008896330837160349, - 0.06779243052005768, - -0.02197936549782753, - 0.00267136562615633, - 0.11170823127031326, - 0.017964042723178864, - 0.013985203579068184, - -0.0338824987411499, - -0.029022324830293655, - 0.0008136490359902382, - 0.05989436060190201, - -0.0837642103433609, - -0.08694818615913391, - -0.025673506781458855, - 0.05180685222148895, - -0.017752964049577713, - 0.06915580481290817, - 0.04728826880455017, - 0.0171771552413702, - -0.008071793243288994, - -0.07093185186386108, - 0.03269710764288902, - -0.07537884265184402, - -0.07543797045946121, - -0.011488859541714191, - -0.0065704891458153725, - -0.023778622969985008, - 0.06810300052165985, - 0.025751084089279175, - 0.057915762066841125, - -0.017445450648665428, - -0.08929392695426941, - -0.10142609477043152, - 0.048392679542303085, - 0.06272386014461517, - -0.03545256704092026, - 0.048410121351480484, - 0.06473474204540253, - -0.0548214390873909, - 0.027810579165816307, - 0.05268535763025284, - 0.10579436272382736, - -0.03883456066250801, - 0.011074000969529152, - -0.06225326657295227, - 0.06963302195072174, - 0.09237271547317505, - -0.09263814985752106, - -0.07666580379009247, - -0.03390684723854065, - -0.06416483223438263, - 0.022711586207151413, - -0.013901068828999996, - 0.025143830105662346, - 0.042900338768959045, - -0.02062884159386158, - -0.11979401111602783, - -0.09554505348205566, - 0.06356225907802582, - -0.07423657178878784, - -0.0008085041772574186, - -0.09670431911945343, - 0.035818152129650116, - 0.07554256170988083, - 0.02146162837743759, - -0.028629526495933533, - -0.03222452104091644, - 0.02494540624320507, - -0.021514831110835075, - 0.0033187177032232285, - 0.07233118265867233, - 0.046795666217803955, - -0.09871554374694824, - -0.017479687929153442, - -0.06945660710334778, - 0.07331635057926178, - -0.03326781094074249, - 0.1357022076845169, - 0.020543619990348816, - -0.03964664414525032, - -0.09272287040948868, - 0.02300575003027916, - 0.008829619735479355, - 0.06554687768220901, - 0.020907409489154816, - 0.05970393866300583, - 0.03596484288573265, - -0.057768143713474274, - 0.12148874998092651, - 0.05166614055633545, - -0.03916317597031593, - -0.07552072405815125, - -0.04630008339881897, - -0.056811995804309845, - 0.02795395627617836, - 0.014243417419493198, - -0.08052065968513489, - -0.012850725091993809, - 0.014679081737995148, - -0.013156717643141747, - 0.058125466108322144, - 0.13021086156368256, - 0.06566799432039261, - -0.11359727382659912 - ] - }, - "p244_159.wav": { - "name": "p244", - "embedding": [ - 0.058413147926330566, - 0.0851493775844574, - -0.01938800700008869, - 0.034967441111803055, - -0.06543193757534027, - 0.07954458892345428, - -0.1346077024936676, - 0.14574402570724487, - -0.058722496032714844, - 0.1336444765329361, - -0.0524507611989975, - 0.1330804079771042, - -0.017090793699026108, - -0.16936129331588745, - -0.04304691404104233, - 0.05415913462638855, - -0.04199191927909851, - -0.0380057618021965, - -0.05088915675878525, - -0.009263405576348305, - 0.04141171649098396, - 0.023143654689192772, - 0.037514809519052505, - 0.005587120074778795, - 0.019456548616290092, - 0.05461234226822853, - 0.001579886768013239, - 0.059790968894958496, - 0.028279192745685577, - -0.07147859036922455, - -0.023932291194796562, - 0.09955228120088577, - -0.04808495193719864, - 0.013571491464972496, - 0.042836204171180725, - -0.017299702391028404, - 0.0015348431188613176, - -0.06544842571020126, - -0.028561929240822792, - -0.005550609435886145, - -0.02939167059957981, - 0.07087188959121704, - 0.021183058619499207, - -0.012081865221261978, - 0.045907698571681976, - -0.004005631431937218, - -0.03639606386423111, - -0.04180077835917473, - -0.11158914864063263, - 0.14163821935653687, - 0.06460636854171753, - 0.01153847761452198, - -0.08199407160282135, - -0.07088756561279297, - 0.11114148050546646, - -0.028697293251752853, - -0.12238836288452148, - -0.043736644089221954, - 0.0589846596121788, - 0.18154636025428772, - -0.03646986186504364, - -0.028366971760988235, - 0.034096501767635345, - 0.11927962303161621, - 0.08460699766874313, - 0.08264227211475372, - 0.10199432820081711, - 0.104372039437294, - -0.009565104730427265, - 0.02626793645322323, - 0.04569845646619797, - 0.07976773381233215, - 0.049327000975608826, - 0.015197510831058025, - 0.03785546496510506, - -0.0021829847246408463, - 0.0028939866460859776, - -0.011847763322293758, - -0.02904510498046875, - -0.01801573485136032, - -0.013712520711123943, - 0.03416603431105614, - 0.016758522018790245, - 0.03353836387395859, - -0.039441246539354324, - 0.07412821054458618, - 0.014228343032300472, - -0.022725345566868782, - 0.052542611956596375, - 0.03700548782944679, - 0.01803748682141304, - 0.06138095632195473, - -0.0786462277173996, - -0.09951856732368469, - 0.02177383378148079, - 0.004044240340590477, - 0.0341787151992321, - 0.05324501544237137, - 0.0178073700517416, - -0.007979007437825203, - 0.11131744086742401, - 0.05885232985019684, - -0.014886860735714436, - 0.035755183547735214, - -0.08536800742149353, - 0.1259189397096634, - 0.07854315638542175, - -0.01486610621213913, - 0.05409734696149826, - -0.0419207364320755, - 0.06442134082317352, - 0.05710768699645996, - -0.12515130639076233, - -0.09122486412525177, - 0.026567600667476654, - 0.0212209802120924, - -0.01835457980632782, - 0.12408091127872467, - -0.003833891125395894, - 0.051880791783332825, - 0.09631906449794769, - -0.07687751203775406, - -0.04282434284687042, - -0.002761050360277295, - 0.05375911295413971, - -0.06647136807441711, - 0.058102138340473175, - 0.037846677005290985, - -0.0060182781890034676, - 0.003675130195915699, - 0.0896177589893341, - -0.011278442107141018, - 0.002197357127442956, - 0.03172638639807701, - -0.06291276216506958, - 0.025404684245586395, - -0.021125055849552155, - -0.010551205836236477, - 0.05474591255187988, - 0.04287055879831314, - 0.056560762226581573, - -0.01729593239724636, - -0.025317426770925522, - -0.1177828311920166, - 0.0031550980638712645, - 0.028308046981692314, - 0.08317138254642487, - -0.007012281566858292, - -0.017009031027555466, - -0.03824325650930405, - -0.049531158059835434, - 0.015359850600361824, - -0.008112877607345581, - 0.08716776967048645, - -0.01764707639813423, - 0.013395133428275585, - 0.08997654914855957, - 0.013790569268167019, - 0.013510936871170998, - -0.04022020846605301, - -0.016576815396547318, - 0.013002024032175541, - 0.06430725008249283, - -0.06638894975185394, - -0.06313949823379517, - 0.0073865256272256374, - 0.04728049784898758, - -0.025099273771047592, - 0.057141780853271484, - 0.05243726447224617, - 0.01260291412472725, - 0.03382009267807007, - -0.05118957534432411, - 0.019361114129424095, - -0.09620572626590729, - -0.06528978794813156, - 0.007228863891214132, - -0.018684368580579758, - -0.03585337847471237, - 0.06467610597610474, - 0.04336762800812721, - 0.06281490623950958, - -0.0077796257100999355, - -0.0794244110584259, - -0.09477965533733368, - 0.05507725477218628, - 0.055404528975486755, - 0.00026303762570023537, - 0.040793463587760925, - 0.05808216333389282, - -0.015401584096252918, - 0.06726420670747757, - 0.0677766501903534, - 0.08394092321395874, - -0.025968968868255615, - -0.004199789837002754, - -0.08528822660446167, - 0.07715778052806854, - 0.0974041074514389, - -0.09428833425045013, - -0.08270764350891113, - -0.019037652760744095, - -0.07656624913215637, - 0.03579473868012428, - -0.03251129388809204, - 0.009883809834718704, - 0.07214915007352829, - -0.01128344889730215, - -0.12907877564430237, - -0.09040738642215729, - 0.10556988418102264, - -0.09632175415754318, - 0.0028497972525656223, - -0.07180330157279968, - 0.03239740803837776, - 0.1037566214799881, - 0.015980158001184464, - -0.025148779153823853, - -0.019905555993318558, - 0.0505656898021698, - -0.04484933614730835, - 0.004202523268759251, - 0.052196599543094635, - 0.0269288569688797, - -0.10545407235622406, - 0.0031444099731743336, - -0.07538380473852158, - 0.027356499806046486, - -0.0340481661260128, - 0.15492624044418335, - 0.001511018956080079, - -0.042291343212127686, - -0.08816663175821304, - 0.044423576444387436, - -0.036082275211811066, - 0.0653405711054802, - 0.032282911241054535, - 0.08144906908273697, - 0.05112887918949127, - -0.07640519738197327, - 0.12074606120586395, - 0.05320623517036438, - -0.05867772549390793, - -0.0895145982503891, - -0.04446505755186081, - -0.04716450348496437, - 0.03641282767057419, - 0.007578905206173658, - -0.0761210173368454, - -0.023382557556033134, - 0.018243834376335144, - -0.01702934131026268, - 0.06948816776275635, - 0.12938576936721802, - 0.05923928692936897, - -0.10708929598331451 - ] - }, - "p244_320.wav": { - "name": "p244", - "embedding": [ - 0.025520801544189453, - 0.07877252995967865, - -0.003103757742792368, - 0.033836882561445236, - -0.08043865859508514, - 0.0457850843667984, - -0.11211296170949936, - 0.11164680123329163, - -0.027138078585267067, - 0.11066503077745438, - -0.09568971395492554, - 0.0965370386838913, - -0.016866173595190048, - -0.19909408688545227, - -0.017862588167190552, - 0.05212496221065521, - -0.049090828746557236, - -0.02265555039048195, - -0.02733519673347473, - -0.04589300975203514, - 0.04851827770471573, - 0.055428534746170044, - 0.050118379294872284, - 0.0025774845853447914, - 0.043658867478370667, - 0.05856213718652725, - 0.015148472040891647, - 0.0464465357363224, - 0.02517641894519329, - -0.043575722724199295, - -0.05331163853406906, - 0.1046111211180687, - -0.009041492827236652, - -0.012373365461826324, - 0.032275933772325516, - -0.019374284893274307, - 0.007885291241109371, - -0.06459587812423706, - -0.03704747557640076, - 0.033120665699243546, - -0.05432902276515961, - 0.07299421727657318, - 0.06089409440755844, - -0.016993261873722076, - 0.037817858159542084, - 0.009072830900549889, - -0.03586292266845703, - -0.055808745324611664, - -0.12454576790332794, - 0.1887241005897522, - 0.07881983369588852, - -0.012671553529798985, - -0.057992804795503616, - -0.06267143785953522, - 0.12205424904823303, - 0.012421952560544014, - -0.10446374118328094, - -0.016401691362261772, - 0.09666335582733154, - 0.15409152209758759, - -0.013929875567555428, - -0.01580873876810074, - 0.036068208515644073, - 0.12577728927135468, - -0.005117212422192097, - 0.09175033122301102, - 0.05273692309856415, - 0.08473008871078491, - -0.006884884089231491, - 0.04424678534269333, - 0.05382002890110016, - 0.07339969277381897, - -0.029947789385914803, - -0.03862817957997322, - -0.004522421862930059, - 0.0015955782728269696, - -0.05324070155620575, - 0.030611634254455566, - -0.009906492196023464, - 0.00014639180153608322, - -0.003053084947168827, - -0.008608316071331501, - 0.009825386106967926, - -0.04046602174639702, - -0.028976455330848694, - 0.05257901921868324, - -0.004623483866453171, - 0.031562693417072296, - 0.07770092785358429, - 0.004387503489851952, - -0.014716900885105133, - 0.04621315374970436, - -0.028419988229870796, - -0.10382391512393951, - 0.003904375247657299, - 0.022020693868398666, - 0.011379226110875607, - 0.09337257593870163, - 0.0345635712146759, - -0.04893741384148598, - 0.13333404064178467, - 0.054878875613212585, - -0.004535716027021408, - 0.03689620643854141, - -0.09091217815876007, - 0.09812438488006592, - 0.09628951549530029, - 0.002807183191180229, - 0.07539047300815582, - -0.042548783123493195, - 0.10629554837942123, - 0.05668673291802406, - -0.14158661663532257, - -0.04556601867079735, - 0.012369860894978046, - 0.02958417497575283, - -0.001235730480402708, - 0.10671583563089371, - -0.01761295460164547, - 0.008461223915219307, - 0.11134716868400574, - -0.09489066898822784, - -0.06414701044559479, - -0.034735988825559616, - 0.05360417813062668, - -0.06968238949775696, - 0.031240612268447876, - 0.06621511280536652, - -0.03984420374035835, - 0.01821187511086464, - 0.04201790690422058, - -0.031000137329101562, - 0.022071823477745056, - 0.03235841915011406, - -0.05499796196818352, - 0.03371907398104668, - -0.0667421743273735, - 0.011573335155844688, - 0.08141951262950897, - 0.051439594477415085, - 0.030979935079813004, - 0.015057777054607868, - -0.04582558944821358, - -0.09321261197328568, - 0.016480151563882828, - 0.017121383920311928, - 0.07412862777709961, - 0.0035083144903182983, - -0.025581354275345802, - -0.062389880418777466, - -0.0835554450750351, - 0.025608256459236145, - -0.004866618663072586, - 0.07624217122793198, - -0.02494824305176735, - 0.0010127227287739515, - 0.056198667734861374, - 0.04309277981519699, - -0.029178284108638763, - -0.06340880692005157, - -0.07106196880340576, - 0.01193341612815857, - 0.02568979375064373, - -0.07379039376974106, - -0.05820883810520172, - -0.008504355326294899, - 0.022267483174800873, - -0.041610024869441986, - -0.0005361400544643402, - 0.011520364321768284, - 0.023507241159677505, - 0.04325632005929947, - -0.08259670436382294, - 0.03512035310268402, - -0.09949750453233719, - -0.04365795850753784, - -0.007120637688785791, - 0.013626787811517715, - -0.027239196002483368, - 0.08776382356882095, - 0.005865401588380337, - 0.014887961558997631, - 0.006898198276758194, - -0.03954825550317764, - -0.03754882887005806, - 0.06032465398311615, - 0.06547810137271881, - 0.027362583205103874, - 0.0935697853565216, - 0.062348753213882446, - -0.05896969139575958, - 0.057689473032951355, - 0.040895912796258926, - 0.09860705584287643, - -0.006726451683789492, - 0.000279892235994339, - -0.04421014338731766, - 0.06964688003063202, - 0.05661206692457199, - -0.09451404958963394, - -0.0817442461848259, - -0.048741914331912994, - -0.06386011093854904, - 0.07009054720401764, - 0.0011014719493687153, - -0.022415097802877426, - -0.017177147790789604, - -0.007621739991009235, - -0.07507762312889099, - -0.05295128375291824, - 0.04943493753671646, - -0.025051366537809372, - -0.03307938948273659, - -0.07187759131193161, - 0.04678461700677872, - 0.12320798635482788, - 0.03921324387192726, - -0.009760253131389618, - -0.02440573461353779, - 0.04600626975297928, - -0.06350357830524445, - -0.00517002958804369, - 0.049542710185050964, - 0.015346411615610123, - -0.08599340915679932, - 0.01961633935570717, - -0.0815107598900795, - 0.07330404222011566, - -0.05598717927932739, - 0.1525687724351883, - 0.021213382482528687, - -0.04798867553472519, - -0.0737653523683548, - 0.0767839252948761, - -0.01707714982330799, - 0.029994748532772064, - 0.050640784204006195, - 0.012454717420041561, - 0.051881421357393265, - -0.07105045020580292, - 0.11011287569999695, - 0.006932501681149006, - -0.04478736221790314, - -0.04011773318052292, - -0.005451499484479427, - -0.023584691807627678, - 0.0030439498368650675, - 0.001462601125240326, - -0.07537886500358582, - -0.03603881224989891, - 0.026913758367300034, - -0.02891014888882637, - 0.07795421779155731, - 0.13605740666389465, - 0.07035727053880692, - -0.09568221122026443 - ] - }, - "p244_267.wav": { - "name": "p244", - "embedding": [ - 0.04089002311229706, - 0.08040937781333923, - 0.05000807344913483, - -0.0070318905636668205, - 0.008723873645067215, - 0.07464659214019775, - -0.11834269762039185, - 0.1018214225769043, - -0.04301316291093826, - 0.13808655738830566, - -0.10668472945690155, - 0.06459633260965347, - 0.013080033473670483, - -0.16938516497612, - -0.0646447241306305, - 0.017802206799387932, - -0.04766518250107765, - 0.039930008351802826, - -0.03393450751900673, - -0.010385828092694283, - 0.062403604388237, - 0.057696856558322906, - 0.04255995899438858, - -0.061506301164627075, - 0.04749395698308945, - 0.009770615957677364, - 0.03562210500240326, - 0.07580393552780151, - 0.050825536251068115, - -0.08106863498687744, - -0.0231953002512455, - 0.13198384642601013, - 0.0015208730474114418, - 0.030939212068915367, - 0.04094603657722473, - 0.00992706511169672, - 0.031001130118966103, - -0.04581299051642418, - -0.031974270939826965, - 0.045957040041685104, - -0.013186722993850708, - 0.057713862508535385, - 0.035606760531663895, - 0.01743660680949688, - 0.03220895677804947, - 0.03501259535551071, - -0.012407653033733368, - -0.06057533621788025, - -0.08138827979564667, - 0.17724911868572235, - 0.026143399998545647, - -0.0017656413838267326, - -0.07492661476135254, - -0.08444344252347946, - 0.10468797385692596, - -0.013748415745794773, - -0.09538333117961884, - 0.017244767397642136, - 0.09012005478143692, - 0.17713619768619537, - 0.003649749793112278, - -0.041360899806022644, - 0.03068859502673149, - 0.08699106425046921, - -0.037116240710020065, - 0.07794386893510818, - 0.07276590168476105, - 0.039734940975904465, - 0.06012583523988724, - 0.05856478214263916, - -0.012993717566132545, - 0.06079424172639847, - -0.022939421236515045, - -0.06243829429149628, - 0.004789378494024277, - 0.004343423526734114, - -0.06441061198711395, - 0.033424824476242065, - -0.015343820676207542, - 0.025518257170915604, - 0.01456561591476202, - -0.01243472658097744, - 0.016527898609638214, - -0.015675794333219528, - -0.05754144489765167, - 0.016180193051695824, - -0.06933006644248962, - 0.015319699421525002, - 0.07244564592838287, - 0.026999380439519882, - 0.03303860127925873, - 0.014041176997125149, - -0.011146186850965023, - -0.13782307505607605, - -0.01228814572095871, - 0.022822659462690353, - -0.033740848302841187, - 0.04843050241470337, - 0.04773620888590813, - -0.06402254104614258, - 0.10926861315965652, - 0.019560925662517548, - -0.011908043175935745, - 0.02584703266620636, - -0.11332231760025024, - 0.04632158577442169, - 0.09927937388420105, - 0.028471410274505615, - 0.0660373866558075, - -0.0635748878121376, - 0.08980832993984222, - 0.06897356361150742, - -0.156078040599823, - -0.06994686275720596, - 0.034303344786167145, - 0.013385571539402008, - 0.055527638643980026, - 0.07519859075546265, - -0.009599572978913784, - -0.03178717568516731, - 0.05675498768687248, - -0.08693210780620575, - -0.04817034676671028, - -0.041984155774116516, - 0.05391543358564377, - -0.04625561088323593, - 0.03939437121152878, - 0.01379892136901617, - -0.032152507454156876, - -0.03476390242576599, - 0.037203822284936905, - -0.024082684889435768, - 0.04144737496972084, - -0.02462238073348999, - -0.027651842683553696, - 0.033668678253889084, - -0.08139661699533463, - 0.03142492100596428, - 0.035938624292612076, - 0.07558830082416534, - 0.031962353736162186, - 0.038796812295913696, - -0.10666034370660782, - -0.060587868094444275, - -0.031992703676223755, - 0.025321437045931816, - 0.02320745959877968, - -0.010833362117409706, - -0.02502829022705555, - -0.07051452994346619, - -0.05833090469241142, - 0.058272723108530045, - -0.02111818641424179, - 0.09312470257282257, - 0.041767701506614685, - -0.004681993275880814, - 0.09134726226329803, - -0.029596125707030296, - -0.023587215691804886, - -0.05084984377026558, - -0.027825910598039627, - 0.012946934439241886, - -0.01631007343530655, - -0.05537319555878639, - -0.02790706604719162, - 0.022779371589422226, - -0.025850091129541397, - -0.023266222327947617, - -0.021136850118637085, - 0.007566055282950401, - 0.020570658147335052, - 0.06101328134536743, - -0.08109825104475021, - -0.01259965542703867, - -0.12628933787345886, - -0.03314174339175224, - 0.006773616187274456, - -0.006627519614994526, - -0.019430387765169144, - 0.10877761989831924, - 0.014117586426436901, - -0.027515683323144913, - 0.005301102064549923, - -0.06428813934326172, - -0.026269692927598953, - 0.06154746562242508, - 0.07906775176525116, - 0.03647599369287491, - 0.04911907762289047, - 0.03478210046887398, - -0.018287887796759605, - 0.09326697885990143, - 0.07508493959903717, - 0.06459780037403107, - 0.026122933253645897, - -0.003883889876306057, - -0.04503998905420303, - 0.09965449571609497, - 0.035454824566841125, - -0.047789111733436584, - -0.11980824172496796, - -0.020889632403850555, - -0.09032846987247467, - 0.06199394911527634, - 0.010868974961340427, - -0.002025547670200467, - -0.019454307854175568, - -0.013309402391314507, - -0.08036572486162186, - -0.028606118634343147, - 0.047644853591918945, - -0.03588501363992691, - -0.0644679144024849, - -0.033684246242046356, - 0.05091279372572899, - 0.08927328884601593, - 0.034298285841941833, - 0.019498834386467934, - -0.016765590757131577, - 0.03656992316246033, - -0.12758934497833252, - -0.06662915647029877, - -0.011847520247101784, - -0.04146898165345192, - -0.05854378640651703, - 0.05294590815901756, - -0.06130136176943779, - 0.06894461810588837, - -0.0754314661026001, - 0.11578963696956635, - -0.004171848297119141, - -0.09924408793449402, - -0.05959136411547661, - 0.053625643253326416, - -0.04109543561935425, - 0.0036542071029543877, - 0.06296193599700928, - 0.013312599621713161, - 0.0511101633310318, - -0.0864224061369896, - 0.0662599727511406, - -0.0013344483450055122, - -0.0021012951619923115, - -0.06593005359172821, - -0.05514055863022804, - -0.00924589578062296, - -0.013202570378780365, - -0.024397898465394974, - -0.04346625134348869, - 0.0026541510596871376, - 0.01563926972448826, - -0.013218116015195847, - 0.04669560492038727, - 0.09310673177242279, - 0.007529200986027718, - -0.12247913330793381 - ] - }, - "p244_211.wav": { - "name": "p244", - "embedding": [ - 0.05561555176973343, - 0.07476101815700531, - -0.052211008965969086, - 0.026955675333738327, - -0.05322640389204025, - 0.03661806508898735, - -0.1373979151248932, - 0.1361597180366516, - -0.012683428823947906, - 0.1356649398803711, - -0.0324353352189064, - 0.12370516359806061, - 0.006509109400212765, - -0.17643816769123077, - -0.013529859483242035, - 0.03817180171608925, - -0.05228463560342789, - -0.037346456199884415, - -0.06533680856227875, - -0.03281663358211517, - 0.04387222230434418, - 0.050544463098049164, - 0.012072822079062462, - -0.04519437626004219, - 0.029870914295315742, - 0.06636123359203339, - -0.0035710344091057777, - 0.022054746747016907, - 0.005078745074570179, - -0.07734794914722443, - -0.031176943331956863, - 0.08020225167274475, - -0.06060321256518364, - 0.0051995860412716866, - 0.03883940726518631, - -0.036200523376464844, - -0.008651331067085266, - -0.05984622240066528, - -0.03858014941215515, - 0.036591291427612305, - -0.04583512246608734, - 0.08515188097953796, - 0.034839026629924774, - -0.01952531933784485, - 0.048758406192064285, - 0.017685972154140472, - -0.009091068059206009, - -0.053028590977191925, - -0.08681647479534149, - 0.18202757835388184, - 0.07922704517841339, - -0.0011413302272558212, - -0.07443785667419434, - -0.04456184059381485, - 0.08431188017129898, - -0.010584240779280663, - -0.11034146696329117, - -0.04460762068629265, - 0.0503133088350296, - 0.13076087832450867, - -0.036837439984083176, - -0.03333016484975815, - 0.04087750241160393, - 0.11446449160575867, - 0.08727821707725525, - 0.05246981978416443, - 0.09329789131879807, - 0.12436968088150024, - -0.015837140381336212, - 0.03008127771317959, - 0.057855479419231415, - 0.08494603633880615, - 0.06157143414020538, - -0.008879698812961578, - 0.04087744653224945, - -0.010015686973929405, - -0.009288820438086987, - -0.06433969736099243, - -0.02304484322667122, - -0.005173154175281525, - 0.02611020766198635, - 0.021895278245210648, - 0.027947112917900085, - 0.06532160937786102, - -0.03830118477344513, - 0.04961472749710083, - 0.06292508542537689, - -0.048523757606744766, - 0.046999916434288025, - 0.033453889191150665, - 0.026609007269144058, - 0.05786164849996567, - -0.11185987293720245, - -0.09477086365222931, - 0.04972974210977554, - 0.00779179111123085, - 0.01772131398320198, - 0.05159105360507965, - 0.05798032879829407, - -0.01643475331366062, - 0.12167476117610931, - 0.038890138268470764, - -0.034270405769348145, - 0.012571039609611034, - -0.08048106729984283, - 0.1291421353816986, - 0.0926733911037445, - -0.03286352753639221, - 0.043652333319187164, - -0.061568863689899445, - 0.07348719239234924, - 0.02780885249376297, - -0.13319814205169678, - -0.0759279727935791, - 0.04850144684314728, - -0.012471156194806099, - -0.01813753880560398, - 0.13866285979747772, - 0.009152228012681007, - 0.06203901022672653, - 0.10936550796031952, - -0.08230889588594437, - -0.04436946660280228, - -0.027178756892681122, - 0.06267385929822922, - -0.10013187676668167, - 0.06900951266288757, - 0.05117321386933327, - -0.01755327172577381, - 0.02061193250119686, - 0.0841592475771904, - -0.005175595637410879, - 0.0025618202053010464, - -0.02132461965084076, - -0.006105925887823105, - 0.040046803653240204, - -0.005014043301343918, - -0.014901263639330864, - 0.02035597339272499, - 0.017970576882362366, - 0.055543072521686554, - -0.028462860733270645, - -0.026065878570079803, - -0.119926318526268, - 0.03612257540225983, - 0.0034357786644250154, - 0.07882676273584366, - -0.023357613012194633, - 0.0021365750581026077, - -0.0362718403339386, - -0.07706248760223389, - -0.0027817520312964916, - -0.019782818853855133, - 0.060455694794654846, - -0.008558814413845539, - -0.004156298004090786, - 0.12639448046684265, - 0.02850279211997986, - 0.02800658345222473, - -0.0064366040751338005, - -0.017596498131752014, - 0.017183849588036537, - 0.05843152850866318, - -0.08233487606048584, - -0.07428313791751862, - -0.02307450771331787, - -0.0003148764371871948, - -0.00482788123190403, - 0.055707767605781555, - 0.033807434141635895, - 0.021727226674556732, - 0.02055608108639717, - -0.08225865662097931, - 0.003446632996201515, - -0.0926632434129715, - -0.05106983706355095, - -0.012522444128990173, - -0.03198954463005066, - -0.05880741775035858, - 0.080826535820961, - 0.007645905017852783, - 0.047904014587402344, - -0.047136273235082626, - -0.06485400348901749, - -0.06541036814451218, - 0.04404671490192413, - 0.06206110119819641, - -0.03320083022117615, - 0.009351923130452633, - 0.05454473942518234, - 0.0026818979531526566, - 0.011116365902125835, - 0.07128830254077911, - 0.0951414704322815, - -0.015848718583583832, - 0.008449976332485676, - -0.06262824684381485, - 0.13949379324913025, - 0.06430038064718246, - -0.06512638181447983, - -0.07184892892837524, - -0.022798646241426468, - -0.07825500518083572, - 0.003076508641242981, - -0.022325653582811356, - 0.02487379126250744, - 0.04365435242652893, - 0.013782620429992676, - -0.09706795960664749, - -0.08698441088199615, - 0.0768311470746994, - -0.08895616978406906, - -0.005962833762168884, - -0.09124652296304703, - 0.03530086204409599, - 0.11600761115550995, - 0.039607878774404526, - -0.03638194501399994, - -0.03423493728041649, - 0.03955703228712082, - -0.017453700304031372, - 0.027179241180419922, - 0.04660420119762421, - 0.06128426268696785, - -0.11945350468158722, - -0.013160161674022675, - -0.0415797233581543, - 0.0394231341779232, - -0.04532665014266968, - 0.11346608400344849, - 0.03232453763484955, - -0.0451977513730526, - -0.09722869098186493, - 0.056215204298496246, - -0.00927736982703209, - 0.0627959594130516, - 0.02523762360215187, - 0.06942947208881378, - 0.06505091488361359, - -0.07707616686820984, - 0.10791420191526413, - 0.05018983408808708, - -0.029584821313619614, - -0.07997827231884003, - -0.06634309887886047, - -0.016911637037992477, - 0.048534516245126724, - 0.036889348179101944, - -0.07415550947189331, - -0.010050700977444649, - 0.0272953100502491, - -0.012888816185295582, - 0.057177603244781494, - 0.11965953558683395, - 0.06349019706249237, - -0.11336217820644379 - ] - }, - "p244_165.wav": { - "name": "p244", - "embedding": [ - 0.03967594727873802, - 0.11585744470357895, - -0.008639282546937466, - 0.020129162818193436, - -0.06774327158927917, - 0.0625583678483963, - -0.11016085743904114, - 0.15146467089653015, - -0.04860122501850128, - 0.13405165076255798, - -0.08476852625608444, - 0.12267416715621948, - -0.04478985071182251, - -0.16407841444015503, - -0.03766641393303871, - 0.06088217720389366, - -0.040658533573150635, - -0.024455390870571136, - -0.037225570529699326, - -0.025911470875144005, - 0.02810397557914257, - 0.018418874591588974, - 0.02706461399793625, - 0.023228801786899567, - 0.02667958103120327, - 0.06969434022903442, - 0.00436252448707819, - 0.05329588055610657, - 0.025567099452018738, - -0.03724467381834984, - -0.04781217500567436, - 0.10602779686450958, - -0.049003686755895615, - 0.02519882097840309, - 0.06171729415655136, - -0.013418648391962051, - 0.0024574301205575466, - -0.04842984676361084, - -0.00952373631298542, - -0.0033513978123664856, - -0.036917783319950104, - 0.07925011217594147, - 0.023896804079413414, - 0.0006462677265517414, - 0.03923942893743515, - 0.036784667521715164, - -0.012810589745640755, - -0.04202618822455406, - -0.10374557226896286, - 0.15303929150104523, - 0.07213838398456573, - -0.026199575513601303, - -0.0721045583486557, - -0.0621412992477417, - 0.10370802134275436, - -0.0309724360704422, - -0.11170091480016708, - -0.04647126793861389, - 0.08283820748329163, - 0.13622578978538513, - -0.028179805725812912, - -0.034623660147190094, - 0.0015617292374372482, - 0.13400229811668396, - 0.044177573174238205, - 0.09309019148349762, - 0.05910392850637436, - 0.1103207916021347, - -0.035859934985637665, - 0.030682718381285667, - 0.0537598691880703, - 0.05562162399291992, - 0.03778868168592453, - -0.008430171757936478, - 0.022472640499472618, - -0.014264455996453762, - -0.0016798058059066534, - 0.02416589856147766, - -0.03488977998495102, - -0.023770660161972046, - -0.037995595484972, - 0.01511642336845398, - -0.015401272103190422, - -0.0016783864703029394, - -0.012259754352271557, - 0.07910149544477463, - 0.027622051537036896, - -0.0008163368329405785, - 0.0767674595117569, - 0.04940398782491684, - -0.011513065546751022, - 0.06224565953016281, - -0.08076849579811096, - -0.07767949253320694, - 0.020146973431110382, - -0.010552426800131798, - 0.02722552977502346, - 0.07289230078458786, - 0.026804868131875992, - -0.004942950326949358, - 0.11428235471248627, - 0.06732738763093948, - -0.006283899303525686, - 0.03265165910124779, - -0.09857062995433807, - 0.1445649266242981, - 0.0813715010881424, - -0.02178370952606201, - 0.04157993942499161, - -0.03250889480113983, - 0.07710427790880203, - 0.06216999143362045, - -0.12639182806015015, - -0.07282953709363937, - 0.0034495964646339417, - 0.008697226643562317, - -0.030725397169589996, - 0.08657179772853851, - -0.025908906012773514, - 0.030586540699005127, - 0.09950512647628784, - -0.07126377522945404, - -0.055402129888534546, - -0.019063675776124, - 0.034799061715602875, - -0.0755910575389862, - 0.04377538710832596, - 0.053865931928157806, - -0.0034394979011267424, - 0.02299828827381134, - 0.0909913033246994, - 0.0041182758286595345, - 0.0004711151123046875, - 0.05070638656616211, - -0.057587310671806335, - 0.009657394140958786, - -0.016324883326888084, - 0.004814613610506058, - 0.046114277094602585, - 0.056198835372924805, - 0.05687164515256882, - -0.0037865196354687214, - -0.0046349624171853065, - -0.09198613464832306, - 0.008206354454159737, - 0.0464017391204834, - 0.061579763889312744, - -0.011508050374686718, - -0.02121482416987419, - -0.0332116037607193, - -0.06690096855163574, - -0.0002730429987423122, - 0.006457747425884008, - 0.0766737163066864, - -0.04605969041585922, - 0.004488477949053049, - 0.11394591629505157, - 0.03200026601552963, - -0.015776630491018295, - -0.07389393448829651, - -0.025715522468090057, - 0.006654556840658188, - 0.048764050006866455, - -0.07982741296291351, - -0.07480873912572861, - 0.005237420555204153, - 0.03231421113014221, - -0.022735368460416794, - 0.06632789224386215, - 0.04875322803854942, - 0.008680691942572594, - 0.0384768545627594, - -0.06221424788236618, - 0.024033470079302788, - -0.093968465924263, - -0.05359342694282532, - -0.01922314614057541, - -0.022807035595178604, - -0.025805925950407982, - 0.06608009338378906, - 0.015927810221910477, - 0.05658772215247154, - 0.016445299610495567, - -0.08115064352750778, - -0.07686804980039597, - 0.07033812999725342, - 0.06715753674507141, - -0.0018075741827487946, - 0.06631970405578613, - 0.06917589157819748, - -0.047905974090099335, - 0.0630243793129921, - 0.06990984827280045, - 0.09791704267263412, - -0.03824529051780701, - 0.02791735529899597, - -0.0748954564332962, - 0.054023947566747665, - 0.07346709817647934, - -0.12069100141525269, - -0.09216158837080002, - -0.039735909551382065, - -0.043230753391981125, - 0.037867799401283264, - -0.029833585023880005, - 0.0035556077491492033, - 0.03954966366291046, - -0.0061808316968381405, - -0.08369222283363342, - -0.09028251469135284, - 0.09089213609695435, - -0.07503612339496613, - 0.00924255046993494, - -0.06325525790452957, - 0.039707720279693604, - 0.08755951374769211, - 0.03303712233901024, - -0.034828610718250275, - -0.0016722469590604305, - 0.05430574342608452, - -0.031120292842388153, - -0.010548003017902374, - 0.037798333913087845, - 0.0297946035861969, - -0.08675667643547058, - 0.014282351359724998, - -0.06989174336194992, - 0.07082843780517578, - -0.038404837250709534, - 0.16890528798103333, - 0.0020773860160261393, - -0.04848208278417587, - -0.07494451105594635, - 0.029797043651342392, - -0.03563976287841797, - 0.03672938048839569, - 0.035480476915836334, - 0.05658628046512604, - 0.014400872401893139, - -0.04764615744352341, - 0.14371421933174133, - 0.033516138792037964, - -0.061540957540273666, - -0.059838876128196716, - -0.0389665886759758, - -0.04797103628516197, - 0.02227701246738434, - 0.030173322185873985, - -0.09946665167808533, - -0.025316527113318443, - 0.011935308575630188, - -0.03308209031820297, - 0.08439870923757553, - 0.14766719937324524, - 0.08619862049818039, - -0.1089140772819519 - ] - }, - "p244_356.wav": { - "name": "p244", - "embedding": [ - 0.04086939990520477, - 0.08951200544834137, - -0.026374438777565956, - 0.03856663405895233, - -0.06730605661869049, - 0.0873529389500618, - -0.10553879290819168, - 0.11942847073078156, - -0.06356222182512283, - 0.151752769947052, - -0.06456775963306427, - 0.10343065857887268, - -0.03862103819847107, - -0.16911888122558594, - -0.03482303395867348, - 0.05769289284944534, - -0.06591907143592834, - -0.043339088559150696, - -0.06732074916362762, - -0.022766653448343277, - 0.03342362493276596, - 0.040194205939769745, - 0.01719977706670761, - 0.0039030457846820354, - 0.03261745721101761, - 0.06683658808469772, - -0.014979502186179161, - 0.030012287199497223, - 0.008016941137611866, - -0.08423100411891937, - -0.04582330584526062, - 0.10858146101236343, - -0.04576100409030914, - 0.025592606514692307, - 0.032217759639024734, - 0.0006537479348480701, - 0.004875914193689823, - -0.06298317015171051, - -0.019257143139839172, - 0.0005593490786850452, - -0.049346521496772766, - 0.07798685878515244, - 0.025978393852710724, - 0.0004016320453956723, - 0.02908991277217865, - -0.006298460997641087, - -0.033271800726652145, - -0.05221286416053772, - -0.0937284529209137, - 0.18031814694404602, - 0.07851989567279816, - -0.012121371924877167, - -0.05992363393306732, - -0.07952374219894409, - 0.10676153004169464, - -0.005858476273715496, - -0.14307348430156708, - -0.053222015500068665, - 0.07925372570753098, - 0.16216279566287994, - -0.020424779504537582, - -0.018776120617985725, - 0.0074111116118729115, - 0.1364484429359436, - 0.04707653820514679, - 0.09105082601308823, - 0.07038827240467072, - 0.10942619293928146, - 0.0017424310790374875, - 0.02338968962430954, - 0.07447397708892822, - 0.05923231691122055, - 0.06232087314128876, - -0.009397023357450962, - 0.03479659929871559, - -0.016016103327274323, - -0.015911351889371872, - -0.0009062483441084623, - -0.03415266424417496, - -0.023133162409067154, - -0.021057307720184326, - 0.005176630802452564, - 0.009483702480793, - 0.010469830594956875, - -0.01430918462574482, - 0.04501991719007492, - 0.034592047333717346, - -0.02202957309782505, - 0.06608723104000092, - 0.048086170107126236, - 0.009918369352817535, - 0.060980021953582764, - -0.06518412381410599, - -0.08466757833957672, - 0.02336093969643116, - 0.015045255422592163, - 0.026683226227760315, - 0.06649713963270187, - 0.033746909350156784, - -0.019483964890241623, - 0.1067667081952095, - 0.03334623947739601, - -0.002106674946844578, - 0.01401473954319954, - -0.10387741029262543, - 0.13408410549163818, - 0.08653315901756287, - -0.00869319960474968, - 0.04028468579053879, - -0.029592256993055344, - 0.08483413606882095, - 0.07535626739263535, - -0.14697687327861786, - -0.06821461021900177, - 0.01582537591457367, - -0.01609744317829609, - -0.02322383224964142, - 0.10218681395053864, - 0.0051074945367872715, - 0.022427907213568687, - 0.1023264229297638, - -0.09726029634475708, - -0.04470622539520264, - -0.01842515729367733, - 0.04056418687105179, - -0.08730257302522659, - 0.04035990685224533, - 0.04516203701496124, - -0.01682428829371929, - 0.018705403432250023, - 0.08134029805660248, - -0.008416708558797836, - 0.00244336761534214, - 0.02857125736773014, - -0.06176706403493881, - 0.027274195104837418, - -0.02988981455564499, - 0.0030025558080524206, - 0.05451573058962822, - 0.03475082665681839, - 0.054191768169403076, - -0.029301758855581284, - -0.019413653761148453, - -0.0967000424861908, - 0.01952831819653511, - 0.030948691070079803, - 0.06650516390800476, - -0.01649133302271366, - 0.0050955163314938545, - -0.026191718876361847, - -0.08118981868028641, - 0.03647289425134659, - -0.025159452110528946, - 0.08692571520805359, - -0.013840983621776104, - -0.014536605216562748, - 0.12050910294055939, - 0.02689511328935623, - -0.015167511999607086, - -0.06247050315141678, - -0.026502516120672226, - 0.021901793777942657, - 0.06385867297649384, - -0.08855246007442474, - -0.05560731887817383, - 0.017624270170927048, - 0.02216988615691662, - -0.01880536414682865, - 0.05033149570226669, - 0.046090055257081985, - 0.01750963181257248, - 0.028113212436437607, - -0.05739482492208481, - 0.011944243684411049, - -0.09569239616394043, - -0.05275866016745567, - 0.000302922329865396, - -0.054119616746902466, - -0.017465630546212196, - 0.08965660631656647, - 0.014668621122837067, - 0.02036041021347046, - -0.01609942875802517, - -0.08675159513950348, - -0.06559126079082489, - 0.07725353538990021, - 0.05012989044189453, - 0.003195937257260084, - 0.0420549213886261, - 0.06380848586559296, - -0.02766098827123642, - 0.03873578831553459, - 0.0595577135682106, - 0.11881475150585175, - -0.029372617602348328, - 0.024797804653644562, - -0.07991312444210052, - 0.08599613606929779, - 0.07942035794258118, - -0.09733115136623383, - -0.08269278705120087, - -0.03404483199119568, - -0.05191946402192116, - 0.04673101380467415, - -0.041733354330062866, - -0.00048792490269988775, - 0.03443985804915428, - -0.0145350880920887, - -0.10161145031452179, - -0.0894225686788559, - 0.11258187890052795, - -0.07217399775981903, - -0.011903337202966213, - -0.08650445938110352, - 0.0452762097120285, - 0.0853215903043747, - 0.0592464804649353, - -0.03526864945888519, - 0.027561983093619347, - 0.07129386067390442, - -0.05256011337041855, - 0.007490691263228655, - 0.05711611732840538, - 0.014849871397018433, - -0.09769967198371887, - -0.012917572632431984, - -0.07902374863624573, - 0.05670669674873352, - -0.053847476840019226, - 0.15977267920970917, - -0.003217934397980571, - -0.05182019621133804, - -0.07304446399211884, - 0.05916804075241089, - -0.025032419711351395, - 0.048482805490493774, - 0.044112756848335266, - 0.07247015833854675, - 0.04754685238003731, - -0.05276981741189957, - 0.12296392023563385, - 0.039938054978847504, - -0.02849949151277542, - -0.0488908514380455, - -0.03706773743033409, - -0.04777908697724342, - 0.0248568132519722, - -0.003756074234843254, - -0.09971877932548523, - 0.010898696258664131, - 0.026814734563231468, - -0.015190057456493378, - 0.07238695025444031, - 0.1374489814043045, - 0.08575549721717834, - -0.10293564200401306 - ] - }, - "p244_399.wav": { - "name": "p244", - "embedding": [ - 0.043407708406448364, - 0.08514630794525146, - -0.004393481649458408, - -0.017237260937690735, - -0.027270518243312836, - 0.038521382957696915, - -0.11699099838733673, - 0.1150565892457962, - -0.03607865050435066, - 0.1637323647737503, - -0.06965497136116028, - 0.07763926684856415, - -0.009350992739200592, - -0.14831416308879852, - -0.04423484951257706, - 0.012057676911354065, - -0.07149875909090042, - 0.020692303776741028, - -0.08802884817123413, - 0.0032151222694665194, - 0.07314873486757278, - 0.058580655604600906, - 0.02529294788837433, - -0.10331368446350098, - 0.03364839032292366, - 0.03980763256549835, - 0.06568023562431335, - 0.05860733613371849, - 0.04895852133631706, - -0.10105137526988983, - -0.010964975692331791, - 0.1181853711605072, - -0.02922952175140381, - 0.03131198137998581, - 0.04253586754202843, - -0.03794465959072113, - 0.009031357243657112, - -0.0376671701669693, - -0.040401890873909, - 0.06202126294374466, - -0.02167307771742344, - 0.06562337279319763, - 0.006518195383250713, - 0.011429822072386742, - 0.05421014875173569, - 0.03634736314415932, - -0.025013383477926254, - -0.08090966939926147, - -0.05387640744447708, - 0.1955152153968811, - 0.06107282638549805, - -0.005303638055920601, - -0.07695049792528152, - -0.08275580406188965, - 0.08707845211029053, - -0.009905875660479069, - -0.08993817865848541, - -0.034108612686395645, - 0.054829783737659454, - 0.1368941068649292, - -0.028208032250404358, - -0.015052329748868942, - 0.022843828424811363, - 0.0715927854180336, - -0.0010192799381911755, - 0.044366396963596344, - 0.07649503648281097, - 0.03229347988963127, - 0.05760540813207626, - 0.10044670850038528, - -0.003477548249065876, - 0.07733965665102005, - 0.0009144004434347153, - -0.022935424000024796, - 0.04968501254916191, - -0.005019399803131819, - -0.06939955055713654, - -0.0021369503811001778, - -0.014622367918491364, - 0.028308648616075516, - 0.03437855467200279, - 0.03125846013426781, - 0.019676368683576584, - 0.004109161905944347, - -0.04377274960279465, - 0.04807640612125397, - -0.0622292198240757, - -0.01346023939549923, - 0.048401277512311935, - -0.0034759631380438805, - 0.026329033076763153, - 0.03414757549762726, - -0.05391175299882889, - -0.17603802680969238, - -0.018477359786629677, - 0.0055984798818826675, - -0.01211104542016983, - 0.02662937343120575, - 0.04154057800769806, - -0.06734733283519745, - 0.09840120375156403, - 0.027053028345108032, - -0.031699128448963165, - 0.029967427253723145, - -0.09623030573129654, - 0.06701046228408813, - 0.07976463437080383, - 0.019208690151572227, - 0.032371360808610916, - -0.09073149412870407, - 0.09181475639343262, - 0.0308143999427557, - -0.1284741461277008, - -0.0825284868478775, - 0.04926585406064987, - -0.04131811857223511, - 0.023724224418401718, - 0.09970830380916595, - 0.00023345567751675844, - -0.019320406019687653, - 0.08103495836257935, - -0.08968541026115417, - -0.042313579469919205, - -0.040758296847343445, - 0.06690813601016998, - -0.06204451620578766, - 0.0415092371404171, - 0.008520049042999744, - -0.05466149002313614, - -0.01350567676126957, - 0.07163883745670319, - -0.019098002463579178, - 0.04717077314853668, - -0.018486324697732925, - -0.020546559244394302, - 0.04924091324210167, - -0.08019986003637314, - -0.002873710822314024, - 0.04371439293026924, - 0.09363424777984619, - 0.04580260440707207, - 0.014807956293225288, - -0.09634441137313843, - -0.06610545516014099, - 0.0019455874571576715, - 0.0017015831544995308, - 0.025520039722323418, - -0.01260680053383112, - -0.001566617051139474, - -0.06118291988968849, - -0.05729690566658974, - 0.0018601319752633572, - -0.017036782577633858, - 0.0833219438791275, - 0.022019457072019577, - 0.017744986340403557, - 0.1212051659822464, - -0.023838693276047707, - -0.01061723567545414, - -0.02597096934914589, - -0.028454719111323357, - 0.03623758256435394, - 0.02798575349152088, - -0.046151597052812576, - -0.04130226746201515, - 0.006558964028954506, - -0.02732974663376808, - 0.007865079678595066, - -0.010325999930500984, - -0.00023810472339391708, - 0.024877462536096573, - 0.055413391441106796, - -0.08336721360683441, - -0.01316053606569767, - -0.12758152186870575, - -0.02248723804950714, - -0.020609617233276367, - -0.039464905858039856, - -0.06324316561222076, - 0.09323467314243317, - -0.03642461821436882, - -0.011015796102583408, - -0.011010970920324326, - -0.07861576229333878, - -0.026543892920017242, - 0.08534091711044312, - 0.09695500880479813, - 0.023573437705636024, - 0.03926955536007881, - 0.02396240644156933, - 0.006417909637093544, - 0.043264664709568024, - 0.07744477689266205, - 0.08910040557384491, - 0.03543535992503166, - -0.02767322212457657, - -0.04132278636097908, - 0.11849206686019897, - 0.03320126235485077, - -0.06905090808868408, - -0.08573455363512039, - -0.02476121112704277, - -0.08664263784885406, - 0.030558835715055466, - -0.006718845572322607, - 0.00779906939715147, - 0.019522856920957565, - 0.016397511586546898, - -0.096031054854393, - -0.026959164068102837, - 0.05537264794111252, - -0.07411211729049683, - -0.050628259778022766, - -0.02682347409427166, - 0.026658786460757256, - 0.1291964203119278, - 0.07049524039030075, - 0.014440370723605156, - -0.03224454075098038, - 0.06706452369689941, - -0.11083965748548508, - -0.029099933803081512, - -0.023874379694461823, - -0.025118602439761162, - -0.05290934070944786, - 0.06555207818746567, - -0.03741598501801491, - 0.03360322117805481, - -0.09411516040563583, - 0.09540413320064545, - -0.02489689737558365, - -0.08482369035482407, - -0.09301001578569412, - 0.06976577639579773, - -0.046728700399398804, - 0.021285828202962875, - 0.030839871615171432, - 0.01062258891761303, - 0.07393287122249603, - -0.12058000266551971, - 0.10721905529499054, - 0.004731575958430767, - 0.013897083699703217, - -0.061224132776260376, - -0.07533226162195206, - -0.015477333217859268, - -0.010902968235313892, - 0.001196539495140314, - -0.03732926771044731, - 0.009925230406224728, - 0.012417476624250412, - -0.026409873738884926, - 0.049373526126146317, - 0.08713968098163605, - 0.010785295628011227, - -0.11902668327093124 - ] - }, - "p244_292.wav": { - "name": "p244", - "embedding": [ - 0.02978472411632538, - 0.00844737607985735, - -0.022143715992569923, - 0.07281013578176498, - -0.02330043911933899, - 0.07798058539628983, - -0.10541976243257523, - 0.07966556400060654, - -0.05141333118081093, - 0.1361052691936493, - -0.08067888021469116, - 0.05543431267142296, - -0.010731135495007038, - -0.17521022260189056, - -0.0180555060505867, - 0.061209071427583694, - -0.05542079731822014, - -0.0006583239301107824, - -0.08810283988714218, - 0.02877158857882023, - 0.06928957253694534, - 0.07792311161756516, - 0.02024732157588005, - -0.051773060113191605, - 0.010985376313328743, - 0.021596424281597137, - 0.01120042335242033, - 0.07479297369718552, - 0.04911467805504799, - -0.09630712866783142, - -0.005978746805340052, - 0.12200847268104553, - -0.01801954209804535, - 0.014994977973401546, - 0.030241530388593674, - 0.0155265424400568, - 0.0009099359740503132, - -0.03831105679273605, - -0.028641412034630775, - 0.016760200262069702, - -0.07368175685405731, - 0.05674555152654648, - 0.03237203136086464, - 0.03398388996720314, - 0.08281849324703217, - -0.008106161840260029, - -0.08759444206953049, - -0.07100453972816467, - -0.1120789647102356, - 0.1613544225692749, - 0.05960554629564285, - 0.009728522971272469, - -0.044778719544410706, - -0.07683882862329483, - 0.0909070074558258, - 0.01107009407132864, - -0.12459607422351837, - -0.08191263675689697, - 0.09382978826761246, - 0.1923878788948059, - -0.0019968939013779163, - 0.013254500925540924, - 0.03994491696357727, - 0.08640435338020325, - 0.04014137014746666, - 0.09069765359163284, - 0.053090475499629974, - 0.06117432564496994, - 0.09111525863409042, - 0.03566819801926613, - 0.01563529670238495, - 0.07747708261013031, - 0.0007923566736280918, - 0.0036026551388204098, - 0.0272341500967741, - 0.034250639379024506, - -0.04543229937553406, - 0.0031557055190205574, - -0.031035585328936577, - 0.0502319298684597, - 0.034504495561122894, - 0.018384940922260284, - 0.04751954227685928, - -0.006692108232527971, - -0.0625535175204277, - 0.043901484459638596, - -0.034086961299180984, - 0.0001770639355527237, - 0.0413428395986557, - -0.024855032563209534, - 0.001108216238208115, - 0.023319272324442863, - -0.01741201803088188, - -0.1326574683189392, - -0.04704342782497406, - 0.03093782067298889, - -0.021161584183573723, - 0.006018002517521381, - -0.00518689164891839, - -0.05481847748160362, - 0.12718717753887177, - -0.026280276477336884, - -0.027132853865623474, - 0.06241834536194801, - -0.08875400573015213, - 0.07980675250291824, - 0.05902193859219551, - 0.053044773638248444, - 0.050138067454099655, - -0.04974028468132019, - 0.060327544808387756, - 0.0655059739947319, - -0.14963261783123016, - -0.028454886749386787, - 0.06327219307422638, - -0.012809679843485355, - -0.007210670039057732, - 0.14251743257045746, - 0.024538135156035423, - -0.011140108108520508, - 0.11241748183965683, - -0.11833605170249939, - -0.033140141516923904, - 0.007824218831956387, - 0.06312833726406097, - -0.0639585480093956, - 0.053029920905828476, - -0.026817718520760536, - -0.0368630476295948, - 0.008135326206684113, - 0.07525601238012314, - -0.03474194183945656, - 0.02815941907465458, - 0.0048700966872274876, - -0.05952896922826767, - 0.0734386220574379, - -0.12032050639390945, - -0.010470408014953136, - 0.09427011758089066, - 0.05006031692028046, - 0.08284653723239899, - -0.029075944796204567, - -0.09600839763879776, - -0.11729686707258224, - -0.010005713440477848, - -0.0068902322091162205, - 0.07979514449834824, - 0.00613864092156291, - 0.026466138660907745, - -0.0870661586523056, - -0.07945363968610764, - 0.0769726112484932, - -0.05543803796172142, - 0.11835591495037079, - 0.0162125825881958, - 0.0027792956680059433, - 0.052065782248973846, - -0.049297869205474854, - 0.009339897893369198, - -0.04202976077795029, - -0.0557120218873024, - -0.0009214148158207536, - 0.023042500019073486, - -0.05398085340857506, - -0.0027062115259468555, - 0.044533368200063705, - 0.025707069784402847, - -0.011558673344552517, - -0.010034295730292797, - 0.012893454171717167, - 0.03819505125284195, - 0.020159991458058357, - -0.04656371846795082, - -0.006478699389845133, - -0.094541534781456, - -0.021168410778045654, - 0.011217146180570126, - -0.01657198742032051, - -0.0295425932854414, - 0.10062684118747711, - 0.008051402866840363, - -0.01711026020348072, - -0.001680716872215271, - -0.09159387648105621, - -0.09306102991104126, - 0.09266086667776108, - 0.04368305578827858, - 0.011623713187873363, - 0.05852610990405083, - 0.03634224086999893, - -0.03923001140356064, - 0.044802065938711166, - 0.05468299239873886, - 0.0972294807434082, - 0.046213969588279724, - -0.02021324262022972, - -0.05593721196055412, - 0.11970607936382294, - 0.09194639325141907, - -0.04186704382300377, - -0.0506104975938797, - 0.014429462142288685, - -0.11097955703735352, - 0.08465274423360825, - -0.03146445006132126, - -0.040149785578250885, - 0.053672537207603455, - -0.0060563478618860245, - -0.13333512842655182, - -0.019666306674480438, - 0.05323227122426033, - -0.1026659831404686, - -0.06263666599988937, - -0.04058093577623367, - 0.011989978142082691, - 0.10436394065618515, - 0.04677855595946312, - 0.030187595635652542, - -0.002272543963044882, - 0.07451274991035461, - -0.1316886693239212, - 0.0020504635758697987, - 0.05662250518798828, - -0.03712950646877289, - -0.07926171272993088, - 0.0037090876139700413, - -0.07958752661943436, - 0.00390845350921154, - -0.05563895404338837, - 0.09774356335401535, - -0.02173725515604019, - -0.034459371119737625, - -0.05764124169945717, - 0.08004993945360184, - -0.03101935051381588, - 0.04732012003660202, - 0.04447893425822258, - 0.05280740559101105, - 0.11529012024402618, - -0.06742821633815765, - 0.11136690527200699, - 0.021314358338713646, - -0.006134507711976767, - -0.037167228758335114, - -0.04780614748597145, - -0.06523802131414413, - -0.028220772743225098, - 0.003216435434296727, - -0.06819122284650803, - 0.005061344243586063, - 0.0370168499648571, - -0.01879378966987133, - 0.032584886997938156, - 0.08438259363174438, - 0.009825991466641426, - -0.09319378435611725 - ] - }, - "p244_079.wav": { - "name": "p244", - "embedding": [ - 0.06516256183385849, - 0.09580160677433014, - -0.010024912655353546, - 0.028830762952566147, - -0.0722404196858406, - 0.04410260170698166, - -0.12284588813781738, - 0.140308678150177, - -0.026371777057647705, - 0.13703271746635437, - -0.07013494521379471, - 0.14145883917808533, - -0.0287533737719059, - -0.1753140091896057, - -0.020089223980903625, - 0.06814181804656982, - -0.024494217708706856, - -0.01852126605808735, - -0.04487146437168121, - -0.009977125562727451, - 0.023365594446659088, - 0.026251815259456635, - 0.06408986449241638, - -0.009501132182776928, - 0.04037458822131157, - 0.07798200845718384, - 0.011470229364931583, - 0.06849347054958344, - 0.024142172187566757, - -0.07543677091598511, - -0.043644312769174576, - 0.09946713596582413, - -0.06297313421964645, - 0.01536078006029129, - 0.051502976566553116, - -0.021028434857726097, - -0.013401273638010025, - -0.05042524263262749, - -0.019526313990354538, - -0.0067052049562335014, - -0.03078743815422058, - 0.08218748867511749, - 0.012076299637556076, - -0.029669523239135742, - 0.04701274633407593, - 0.03221958875656128, - -0.0238468237221241, - -0.0433136522769928, - -0.11535975337028503, - 0.14637990295886993, - 0.04629471153020859, - 0.009074930101633072, - -0.09432247281074524, - -0.06899213790893555, - 0.0928945541381836, - -0.04236429184675217, - -0.10814248025417328, - -0.0603962168097496, - 0.06318166851997375, - 0.13227872550487518, - -0.03318799287080765, - -0.04776616394519806, - 0.014100514352321625, - 0.1020800769329071, - 0.07988174259662628, - 0.0888691172003746, - 0.07963944971561432, - 0.10757699608802795, - -0.02693941816687584, - 0.048616521060466766, - 0.04493517428636551, - 0.075970858335495, - 0.0588279590010643, - 0.013869773596525192, - 0.026416122913360596, - -0.003352896310389042, - -0.002936075208708644, - -0.007241982501000166, - -0.016357282176613808, - -0.015565671026706696, - -0.013938527554273605, - 0.015750925987958908, - 0.012026733718812466, - 0.0059774634428322315, - -0.02928123250603676, - 0.07431838661432266, - 0.036998599767684937, - -0.014820186421275139, - 0.06684798002243042, - 0.030558597296476364, - -0.0173952616751194, - 0.06289484351873398, - -0.10084779560565948, - -0.08981823921203613, - 0.01646825112402439, - -0.011834731325507164, - 0.030426006764173508, - 0.05790908262133598, - 0.026028063148260117, - -0.009957386180758476, - 0.11783450096845627, - 0.07251115143299103, - -0.005082995630800724, - 0.03915700316429138, - -0.07243093848228455, - 0.13601046800613403, - 0.08595867455005646, - -0.016306884586811066, - 0.05203995108604431, - -0.03906119614839554, - 0.07126761972904205, - 0.06326884031295776, - -0.12511089444160461, - -0.08278553187847137, - -0.008053545840084553, - -0.022284874692559242, - -0.030374838039278984, - 0.10552652180194855, - -0.027563486248254776, - 0.04734759032726288, - 0.11284604668617249, - -0.09717071056365967, - -0.054251790046691895, - 0.007773173041641712, - 0.031180864199995995, - -0.09953389316797256, - 0.05676734820008278, - 0.04854784160852432, - -0.006961371749639511, - 0.018301382660865784, - 0.10394886136054993, - -0.0035078434739261866, - 0.007843966595828533, - 0.02568798139691353, - -0.061050452291965485, - 0.005224249325692654, - -0.023605231195688248, - -0.0071538230404257774, - 0.07506098598241806, - 0.03730127587914467, - 0.0615386925637722, - -0.0086620282381773, - -0.007373702712357044, - -0.12529276311397552, - 0.011405468918383121, - 0.04152694344520569, - 0.06523949652910233, - -0.016931375488638878, - -0.017557824030518532, - -0.03932113200426102, - -0.060288846492767334, - 0.025387771427631378, - 0.01169002614915371, - 0.06566314399242401, - -0.03005640022456646, - 0.013669880107045174, - 0.1229715421795845, - 0.028635794296860695, - 0.0065623014234006405, - -0.06518053263425827, - -0.03174331411719322, - 0.011019711382687092, - 0.06399239599704742, - -0.09251774847507477, - -0.06803411990404129, - -0.0032121860422194004, - 0.03338535130023956, - -0.02481101080775261, - 0.06714528799057007, - 0.07079502195119858, - 0.022468185052275658, - 0.037124164402484894, - -0.04624837636947632, - 0.013048010878264904, - -0.08079132437705994, - -0.0706033855676651, - -0.00602807616814971, - -0.01950966939330101, - -0.03886004164814949, - 0.066257543861866, - 0.02169523760676384, - 0.06392017006874084, - -0.025257427245378494, - -0.07497726380825043, - -0.09656015038490295, - 0.061889246106147766, - 0.052845295518636703, - -0.0002559491840656847, - 0.05314617604017258, - 0.048261500895023346, - -0.047096386551856995, - 0.06495040655136108, - 0.058088771998882294, - 0.09279659390449524, - -0.034642692655324936, - 0.020721999928355217, - -0.07892473042011261, - 0.07680954039096832, - 0.09880086779594421, - -0.09906453639268875, - -0.09369700402021408, - -0.03440767526626587, - -0.07206651568412781, - 0.050891950726509094, - -0.02989235147833824, - -0.003563639475032687, - 0.06643103063106537, - -0.0022542979568243027, - -0.09432574361562729, - -0.10080718994140625, - 0.08983003348112106, - -0.06773792207241058, - -0.0012895718682557344, - -0.0749431848526001, - 0.035775937139987946, - 0.07154205441474915, - 0.03231631964445114, - -0.028951279819011688, - -0.012004037387669086, - 0.05119956284761429, - -0.03849438950419426, - -0.0009040175937116146, - 0.06436005979776382, - 0.030313212424516678, - -0.07667014002799988, - -0.003539234632626176, - -0.07074956595897675, - 0.04775746911764145, - -0.03263372927904129, - 0.1630285680294037, - -0.008396154269576073, - -0.04302608221769333, - -0.07123927772045135, - 0.028731761500239372, - -0.04127562791109085, - 0.05254625901579857, - 0.046864256262779236, - 0.0590631365776062, - 0.04338300973176956, - -0.07303330302238464, - 0.12959596514701843, - 0.048778362572193146, - -0.05276206508278847, - -0.06825324892997742, - -0.05494856834411621, - -0.05755572021007538, - 0.04025141894817352, - 0.0131063312292099, - -0.09747196733951569, - -0.00620085746049881, - 0.021146811544895172, - -0.027976226061582565, - 0.055900782346725464, - 0.13161638379096985, - 0.06194650009274483, - -0.09125107526779175 - ] - }, - "p244_417.wav": { - "name": "p244", - "embedding": [ - 0.05909836292266846, - 0.08160175383090973, - -0.07030828297138214, - 0.011782796122133732, - 0.025327229872345924, - 0.05053437128663063, - -0.13075393438339233, - 0.07129392772912979, - -0.038319140672683716, - 0.13663902878761292, - -0.04119236022233963, - 0.11303113400936127, - -0.011498070321977139, - -0.10368526726961136, - -0.03302355483174324, - 0.0602126345038414, - -0.015298991464078426, - -0.0010763611644506454, - -0.010557844303548336, - 0.017065340653061867, - 0.06165258586406708, - 0.03136908635497093, - 0.024239016696810722, - -0.05923013389110565, - 0.004103496670722961, - 0.05849559232592583, - 0.019867662340402603, - 0.007513002492487431, - -0.01094362698495388, - -0.026498273015022278, - 0.01610308326780796, - 0.06772201508283615, - 0.0048959869891405106, - 0.04399401322007179, - 0.028874894604086876, - 0.047758735716342926, - -0.01651011034846306, - -0.05631769448518753, - 0.024276209995150566, - 0.016915326938033104, - -0.006811744999140501, - 0.05868542939424515, - 0.011618515476584435, - -0.03999960422515869, - 0.045762963593006134, - -0.05200161039829254, - -0.021532367914915085, - -0.014844749122858047, - -0.05701658874750137, - 0.1442849040031433, - 0.05042952299118042, - 0.06697671860456467, - -0.08402715623378754, - -0.018702922388911247, - 0.08897987753152847, - 0.03815074637532234, - -0.06362417340278625, - -0.043369024991989136, - 0.02607535570859909, - 0.1534719467163086, - -0.0019072418799623847, - -0.04298985004425049, - 0.04340633749961853, - 0.0731189176440239, - 0.0009420793503522873, - 0.04949144646525383, - 0.10599350929260254, - 0.049234434962272644, - 0.04804335534572601, - 0.00664458516985178, - 0.015810616314411163, - 0.09508240222930908, - 0.04241625592112541, - -0.018506541848182678, - 0.02625420317053795, - -0.0387938916683197, - -0.04149240255355835, - -0.019300974905490875, - -0.019704679027199745, - -0.08427698165178299, - -0.04882911965250969, - -0.02197306603193283, - 0.02618379145860672, - 0.03960245102643967, - -0.016376499086618423, - -0.0038973260670900345, - 0.037387698888778687, - -0.09241961687803268, - 0.014897347427904606, - 0.0459207147359848, - 0.008868705481290817, - -0.015156161040067673, - -0.030490398406982422, - -0.11602529883384705, - 0.036987531930208206, - 0.02778133749961853, - 0.007633493281900883, - 0.04099714010953903, - 0.05399581044912338, - 0.03645102679729462, - 0.05131783336400986, - -0.0022190194576978683, - -0.010710250586271286, - -0.04364379122853279, - -0.03711196035146713, - 0.08210805058479309, - 0.11589988321065903, - -0.022554457187652588, - 0.03075755015015602, - -0.06686490774154663, - -0.01652601733803749, - 0.04832708090543747, - -0.08810297399759293, - -0.07225038856267929, - 0.02643495611846447, - 0.00782470591366291, - 0.05593413859605789, - 0.09123110771179199, - 0.04908927530050278, - 0.013989736326038837, - 0.07796026766300201, - -0.07409682869911194, - -0.09257493913173676, - -0.08532830327749252, - 0.04421807825565338, - -0.056917883455753326, - 0.09170624613761902, - 0.057820141315460205, - 0.020159270614385605, - -0.029578659683465958, - 0.04342036321759224, - 0.010445686988532543, - 0.03175807744264603, - -0.053649917244911194, - 0.014682024717330933, - 0.034018997102975845, - -0.06942272186279297, - 0.01105683483183384, - 0.025826385244727135, - 0.012040230445563793, - 0.05236422270536423, - 0.011512226425111294, - -0.02166522853076458, - -0.09067350625991821, - -0.010335113853216171, - 0.0841900110244751, - 0.015186644159257412, - -0.037455059587955475, - -0.05919199436903, - -0.009369528852403164, - -0.04918203130364418, - -0.008586794137954712, - -0.07027163356542587, - 0.08636704832315445, - 0.03705809637904167, - 0.045824263244867325, - 0.0931997075676918, - -0.04799710586667061, - -0.003033669199794531, - -0.022821493446826935, - 0.014738349243998528, - 0.04186870902776718, - 0.00905478373169899, - -0.08448685705661774, - -0.08272877335548401, - -0.036763694137334824, - 0.005915842019021511, - -0.01258518360555172, - 0.02452155016362667, - 0.019416294991970062, - 0.00042718928307294846, - 0.015424338169395924, - -0.04108411446213722, - -0.029329627752304077, - -0.1307343989610672, - -0.04976578801870346, - -0.03194744884967804, - -0.06242218613624573, - -0.001822001300752163, - 0.09731131792068481, - 0.02909584902226925, - 0.0361294224858284, - -0.04363678768277168, - -0.05799331143498421, - -0.06978301703929901, - 0.06613919883966446, - 0.07298628985881805, - -0.010914690792560577, - -0.006618715822696686, - 0.0006062202155590057, - 0.054281141608953476, - 0.014420747756958008, - 0.024333177134394646, - 0.05964489281177521, - -0.025259647518396378, - -0.04551899433135986, - -0.07691792398691177, - 0.08032470941543579, - 0.13576894998550415, - -0.07084605097770691, - -0.05785665661096573, - -0.06607513129711151, - -0.07666939496994019, - 0.004633105359971523, - -0.06901639699935913, - 0.0024745126720517874, - 0.030072888359427452, - -0.06653248518705368, - -0.14836283028125763, - -0.11879001557826996, - 0.04005735367536545, - -0.01500088069587946, - -0.001864453312009573, - -0.03363480046391487, - 0.05235423892736435, - 0.053054485470056534, - 0.0012810584157705307, - -0.03355234116315842, - 0.033964578062295914, - 0.00257265567779541, - -0.054090466350317, - 0.003916524816304445, - -0.005782747641205788, - 0.031482093036174774, - -0.08382150530815125, - -0.0027385219000279903, - -0.05115952342748642, - 0.05881929770112038, - -0.10346367955207825, - 0.10519222915172577, - -0.01679205149412155, - -0.06308574974536896, - -0.07517553120851517, - 0.026690855622291565, - -0.0042991191148757935, - 0.03806775063276291, - -0.0045922622084617615, - 0.03564491868019104, - -0.0004764758050441742, - -0.12449732422828674, - 0.06663791835308075, - 0.07047554850578308, - 0.04356139153242111, - -0.10867809504270554, - -0.04062619060277939, - -0.031341418623924255, - 0.04778260737657547, - -0.026821356266736984, - -0.019748523831367493, - 0.016232892870903015, - 0.0102919340133667, - 0.049607787281274796, - 0.060328833758831024, - 0.09035275876522064, - 0.0076279789209365845, - -0.07072833180427551 - ] - }, - "p244_108.wav": { - "name": "p244", - "embedding": [ - 0.037769027054309845, - 0.0710381492972374, - -0.013538839295506477, - 0.030405599623918533, - -0.048303909599781036, - 0.047502100467681885, - -0.12979720532894135, - 0.13112381100654602, - -0.04121986776590347, - 0.13865065574645996, - -0.06637080013751984, - 0.11918260157108307, - -0.02338600717484951, - -0.17452624440193176, - -0.03334740549325943, - 0.053329914808273315, - -0.052101992070674896, - -0.051867153495550156, - -0.02814045548439026, - -0.015195145271718502, - 0.06074162945151329, - 0.05908415466547012, - 0.027038339525461197, - 0.016313016414642334, - -0.0019269927870482206, - 0.06195680797100067, - 0.00941650103777647, - 0.05909734219312668, - 0.030846452340483665, - -0.06887990236282349, - -0.027073901146650314, - 0.09607156366109848, - -0.035451002418994904, - 0.019882015883922577, - 0.030511513352394104, - -0.006075890269130468, - 0.005407089367508888, - -0.060771238058805466, - -0.027218779549002647, - 0.0007485868409276009, - -0.04762926325201988, - 0.064360111951828, - 0.017738550901412964, - -0.004371512681245804, - 0.044193193316459656, - 0.010321813635528088, - -0.03718484193086624, - -0.049315135926008224, - -0.10986790060997009, - 0.15704680979251862, - 0.08583162724971771, - 0.002673715353012085, - -0.054422348737716675, - -0.08579865097999573, - 0.0989055335521698, - -0.014484390616416931, - -0.11814837157726288, - -0.03308306634426117, - 0.07271839678287506, - 0.16380542516708374, - -0.023201337084174156, - -0.04115494713187218, - 0.04155807942152023, - 0.1233464702963829, - 0.053849734365940094, - 0.07423166930675507, - 0.09269973635673523, - 0.09026002138853073, - -0.01808060333132744, - -0.0031782067380845547, - 0.04294588789343834, - 0.09047387540340424, - 0.04572029411792755, - 0.011087577790021896, - 0.03329905867576599, - 0.020404307171702385, - -0.016010120511054993, - 0.012689856812357903, - -0.02847563847899437, - -0.011781329289078712, - -0.013834763318300247, - 0.02012418769299984, - -0.001295606605708599, - 0.026633528992533684, - -0.01753336563706398, - 0.06517314910888672, - 0.009562328457832336, - 0.001202161773107946, - 0.06457757949829102, - 0.0090591199696064, - 0.026839464902877808, - 0.06940041482448578, - -0.06883049011230469, - -0.08096461743116379, - 0.017309095710515976, - 0.00798952765762806, - 0.030694887042045593, - 0.071352019906044, - 0.026322495192289352, - -0.02666120044887066, - 0.12993334233760834, - 0.031112438067793846, - -0.018255699425935745, - 0.0215463750064373, - -0.1017928346991539, - 0.11137932538986206, - 0.08648931980133057, - -0.022003335878252983, - 0.043162472546100616, - -0.05501672253012657, - 0.07904902845621109, - 0.056521736085414886, - -0.13755005598068237, - -0.07910493016242981, - 0.03956972807645798, - 0.03755289316177368, - -0.01744893193244934, - 0.13272981345653534, - -0.0025059031322598457, - 0.044972460716962814, - 0.10937439650297165, - -0.08695052564144135, - -0.0469745509326458, - -0.013501530513167381, - 0.05740271136164665, - -0.08264053612947464, - 0.058961138129234314, - 0.03909563645720482, - -0.013607785105705261, - 0.00901024229824543, - 0.08045458793640137, - -0.02897498570382595, - 0.01139548234641552, - 0.006714156828820705, - -0.06346580386161804, - 0.019933141767978668, - -0.051351290196180344, - -0.01442717295140028, - 0.04159499332308769, - 0.045513030141592026, - 0.045417528599500656, - -0.010866502299904823, - -0.05763040482997894, - -0.13829928636550903, - 0.013783352449536324, - 0.025993984192609787, - 0.07238723337650299, - -0.003234532428905368, - -0.034839000552892685, - -0.04261712729930878, - -0.0482478104531765, - 0.0030171263497322798, - -0.01660945639014244, - 0.06876339763402939, - -0.026470273733139038, - 0.007127915974706411, - 0.07978830486536026, - 0.014804217964410782, - -0.007156125735491514, - -0.03436718136072159, - -0.05446624383330345, - 0.0011916083749383688, - 0.050004031509160995, - -0.06330541521310806, - -0.06627877056598663, - 0.0073267011903226376, - 0.05267653614282608, - -0.014921151101589203, - 0.0441112220287323, - 0.04526621103286743, - 0.02363879606127739, - 0.027524542063474655, - -0.062001269310712814, - 0.017758777365088463, - -0.11300303786993027, - -0.08872376382350922, - 0.0010788652580231428, - 0.00575434323400259, - -0.0014929225435480475, - 0.06600398570299149, - 0.010372169315814972, - 0.05465450882911682, - -0.011330771259963512, - -0.07699830830097198, - -0.10192805528640747, - 0.06034308671951294, - 0.07360713183879852, - 0.013644381426274776, - 0.058742474764585495, - 0.05997880920767784, - -0.031363487243652344, - 0.06095287948846817, - 0.03652942180633545, - 0.10963128507137299, - -0.014189288020133972, - 0.0131861362606287, - -0.07598196715116501, - 0.07306838035583496, - 0.08477163314819336, - -0.07896190881729126, - -0.06811490654945374, - -0.01841197907924652, - -0.07801651209592819, - 0.05320187658071518, - -0.019152428954839706, - 0.004496054723858833, - 0.03913014009594917, - -0.006063781213015318, - -0.12831251323223114, - -0.06573736667633057, - 0.08094042539596558, - -0.0684390664100647, - -0.010018846951425076, - -0.0766594186425209, - 0.04366012662649155, - 0.11602740734815598, - 0.0430748425424099, - -0.01758422516286373, - -0.024480555206537247, - 0.05124711990356445, - -0.04431149363517761, - 0.008394647389650345, - 0.046755388379096985, - 0.03474678844213486, - -0.10223262757062912, - 0.0017594726523384452, - -0.09047816693782806, - 0.026896348223090172, - -0.058137476444244385, - 0.13104358315467834, - 0.0028527029789984226, - -0.05642174184322357, - -0.09072732925415039, - 0.04773995280265808, - -0.011190174147486687, - 0.05739889666438103, - 0.019390763714909554, - 0.05372073873877525, - 0.056175973266363144, - -0.0820341631770134, - 0.11841245740652084, - 0.0530717596411705, - -0.047464609146118164, - -0.06119228154420853, - -0.03717399388551712, - -0.03339669108390808, - 0.024605661630630493, - 0.009874189272522926, - -0.07432351261377335, - -0.03453310579061508, - 0.014192461967468262, - -0.015464729629456997, - 0.0650659054517746, - 0.13560165464878082, - 0.04126901552081108, - -0.12902331352233887 - ] - }, - "p244_404.wav": { - "name": "p244", - "embedding": [ - 0.06419070810079575, - 0.03918735682964325, - 0.018891897052526474, - -0.024760231375694275, - -0.0044189319014549255, - 0.061069127172231674, - -0.12353234738111496, - 0.11402365565299988, - -0.01301989983767271, - 0.0726519376039505, - -0.074640654027462, - 0.07257071137428284, - 0.013570642098784447, - -0.16925662755966187, - -0.016988839954137802, - 0.0402834415435791, - -0.033827416598796844, - 0.0018439119448885322, - -0.05225320905447006, - -0.023063872009515762, - 0.007399502210319042, - 0.035385504364967346, - 0.019246816635131836, - -0.019139209762215614, - 0.03528938814997673, - 0.051592618227005005, - 0.008245360106229782, - 0.030118336901068687, - -0.00805277656763792, - -0.02223818376660347, - -0.0024345237761735916, - 0.07700461149215698, - -0.047400347888469696, - -0.023779628798365593, - 0.07173925638198853, - -0.01097535528242588, - 0.024193670600652695, - -0.08065156638622284, - -0.03758898377418518, - 0.04157523065805435, - -0.07463541626930237, - 0.07886776328086853, - 0.05739801377058029, - 0.017474792897701263, - 0.030995994806289673, - 0.04302537068724632, - 0.0185097549110651, - -0.06454786658287048, - -0.08851965516805649, - 0.14850017428398132, - 0.03784302622079849, - 0.02680383250117302, - -0.09480651468038559, - -0.02694118022918701, - 0.06176032871007919, - -0.00958809070289135, - -0.05352582037448883, - -0.018147751688957214, - 0.052148692309856415, - 0.10750074684619904, - -0.002527217147871852, - -0.03069782257080078, - 0.034207865595817566, - 0.07760173082351685, - 0.02324984036386013, - 0.043913256376981735, - 0.10409825295209885, - 0.09321358054876328, - -0.0036606565117836, - 0.02431890368461609, - 0.05929890275001526, - 0.030513204634189606, - 0.05708102881908417, - -0.0316973477602005, - 0.03701934963464737, - 7.894884038250893e-05, - -0.030291549861431122, - -0.024996792897582054, - -0.02041189931333065, - -0.0008447397849522531, - 0.04634835943579674, - 0.033863142132759094, - 0.02291455678641796, - 0.06275485455989838, - -0.04199187085032463, - 0.04416771978139877, - 0.010940715670585632, - 0.041617464274168015, - 0.06766355037689209, - 0.039431121200323105, - 0.029266422614455223, - 0.0252792090177536, - -0.07499801367521286, - -0.08459967374801636, - 0.02049117721617222, - 0.0074583785608410835, - -0.001809485605917871, - 0.027394866570830345, - 0.0390801802277565, - -0.02715630829334259, - 0.10793386399745941, - 0.0133076636120677, - -0.013719815760850906, - 0.016668228432536125, - -0.07613083720207214, - 0.07515460252761841, - 0.07862353324890137, - -0.024481292814016342, - 0.047744035720825195, - -0.05333958566188812, - 0.034810639917850494, - 0.05320924520492554, - -0.11187504231929779, - -0.043811604380607605, - 0.04977675899863243, - 0.01474270410835743, - 0.03419841453433037, - 0.1369720995426178, - -0.008887114934623241, - 0.03133609890937805, - 0.059311773627996445, - -0.07049624621868134, - -0.02666119858622551, - 0.01818070188164711, - 0.023506611585617065, - -0.03075127862393856, - 0.0290546715259552, - 0.01889539323747158, - 0.02487761899828911, - -0.03740197792649269, - 0.06636646389961243, - 0.008534574881196022, - 0.0024177252780646086, - -0.07108943164348602, - 0.04890812560915947, - 0.04983970522880554, - -0.00212167389690876, - -0.029463589191436768, - 0.011981675401329994, - 0.05491115152835846, - 0.005321655422449112, - 0.044630855321884155, - -0.05937693640589714, - -0.11505681276321411, - -0.0185006782412529, - -0.0015292007010430098, - 0.07068949192762375, - -0.025997823104262352, - -0.01903698779642582, - -0.07173436880111694, - -0.0023146148305386305, - -0.023053180426359177, - -0.013655908405780792, - 0.03999319300055504, - 0.05996199697256088, - -0.02522510103881359, - 0.07778358459472656, - -0.017628181725740433, - 0.02842363715171814, - -0.011958295479416847, - -0.024478040635585785, - 0.00924835167825222, - 0.04183658957481384, - -0.01981481909751892, - -0.06968905031681061, - -0.0037176895420998335, - -0.03756232187151909, - -0.004527131095528603, - 0.017100661993026733, - 0.013365581631660461, - 0.005815163254737854, - -0.016466617584228516, - -0.10252156108617783, - 0.014748352579772472, - -0.09593423455953598, - -0.050770483911037445, - 0.04162231832742691, - 0.01304446067661047, - -0.024725615978240967, - 0.08434300124645233, - 0.019340988248586655, - 0.04165211319923401, - -0.0411079041659832, - -0.060147762298583984, - -0.016400877386331558, - 0.04762309044599533, - 0.0675269216299057, - -0.017000969499349594, - 0.014390714466571808, - 0.010720767080783844, - 0.004498566035181284, - 0.04444005340337753, - 0.05338844656944275, - 0.053616635501384735, - -0.023164525628089905, - -0.00481156911700964, - -0.0004819085297640413, - 0.11780031770467758, - 0.009947620332241058, - -0.03936826437711716, - -0.04667234420776367, - 0.032626569271087646, - -0.04150997847318649, - 0.006006588693708181, - 0.015647653490304947, - 0.03623216226696968, - 0.03108939155936241, - -0.013885598629713058, - -0.0617140494287014, - -0.04628079757094383, - 0.028406960889697075, - -0.07054746150970459, - -0.018730072304606438, - -0.06522786617279053, - 0.042094405740499496, - 0.1134909987449646, - 0.00495230033993721, - 0.002252227393910289, - -0.03561714291572571, - -0.0019150078296661377, - -0.021867990493774414, - -0.037140652537345886, - 0.0005945439334027469, - 0.035443346947431564, - -0.0881577655673027, - 0.006026825867593288, - -0.05300630256533623, - 0.0634591281414032, - -0.022257929667830467, - 0.07022680342197418, - 0.04091481864452362, - -0.046875618398189545, - -0.07154149562120438, - -0.005084961652755737, - 0.013852670788764954, - 0.04405937343835831, - 0.012489140033721924, - 0.0331738218665123, - 0.05204693228006363, - -0.040726177394390106, - 0.0817209854722023, - 0.03359841927886009, - -0.04797407612204552, - -0.05069175362586975, - -0.03561512380838394, - -0.00046914443373680115, - 0.016547078266739845, - -0.008146703243255615, - -0.04674345254898071, - 0.01621292345225811, - 0.030225535854697227, - -0.0018810307374224067, - 0.017799293622374535, - 0.0843789204955101, - 0.02765839919447899, - -0.09700661152601242 - ] - }, - "p244_049.wav": { - "name": "p244", - "embedding": [ - 0.0475463829934597, - 0.09513473510742188, - -0.006068339571356773, - 0.021098626777529716, - -0.04044165834784508, - 0.04198088496923447, - -0.14156155288219452, - 0.13876782357692719, - -0.03534679114818573, - 0.13478629291057587, - -0.09711000323295593, - 0.12022916972637177, - -0.02514369785785675, - -0.20709945261478424, - -0.023456240072846413, - 0.053956516087055206, - -0.0449865385890007, - -0.027352971956133842, - -0.008817016147077084, - -0.024683747440576553, - 0.048486825078725815, - 0.044479403644800186, - 0.00867047905921936, - 0.022702138870954514, - 0.0016932659782469273, - 0.07166951894760132, - 0.0005249902023933828, - 0.04029426351189613, - 0.02112444117665291, - -0.029109513387084007, - -0.04090667515993118, - 0.10708269476890564, - -0.03454422950744629, - 0.0020850077271461487, - 0.0637882649898529, - -0.004405135754495859, - -0.004943423438817263, - -0.05423498898744583, - -0.01772003062069416, - -0.006364059634506702, - -0.07122121751308441, - 0.059955839067697525, - 0.03056979738175869, - -0.02366606704890728, - 0.0536670908331871, - 0.047796089202165604, - -0.009355583228170872, - -0.05812649801373482, - -0.10274310410022736, - 0.15152902901172638, - 0.08465466648340225, - -0.011770433746278286, - -0.04562000185251236, - -0.05469464883208275, - 0.09929494559764862, - 5.6900560593931004e-05, - -0.10337064415216446, - -0.03899132087826729, - 0.0991852805018425, - 0.1506568193435669, - -0.031215783208608627, - -0.029513003304600716, - 0.039236750453710556, - 0.12928339838981628, - 0.03271016851067543, - 0.10827409476041794, - 0.06029234826564789, - 0.10210902988910675, - -0.01437874510884285, - 0.01629011332988739, - 0.06418173760175705, - 0.06052457541227341, - 0.05344700813293457, - -0.0374826155602932, - 0.019597206264734268, - 0.0101812444627285, - -0.032910238951444626, - 0.01618269644677639, - -0.014839684590697289, - -0.013028068467974663, - -0.008910229429602623, - -0.006597636267542839, - -0.012438446283340454, - 0.00730512198060751, - -0.025430859997868538, - 0.05521159619092941, - 0.039102017879486084, - 0.003691272111609578, - 0.06712035089731216, - 0.023203451186418533, - 0.012753480114042759, - 0.06530016660690308, - -0.07615182548761368, - -0.08094727247953415, - 0.03181953728199005, - -0.002851153491064906, - 0.004683312028646469, - 0.09019245207309723, - 0.05108082294464111, - -0.01864493452012539, - 0.13329198956489563, - 0.03792903572320938, - -0.0014252597466111183, - 0.04303397238254547, - -0.10739202797412872, - 0.1354880928993225, - 0.07648725807666779, - -0.04246428236365318, - 0.04589829221367836, - -0.05546974018216133, - 0.08001882582902908, - 0.08458433300256729, - -0.14827829599380493, - -0.04540344327688217, - 0.044439516961574554, - 0.02248564176261425, - -0.029364116489887238, - 0.12351515144109726, - -0.006620639003813267, - 0.023162584751844406, - 0.11297736316919327, - -0.08203953504562378, - -0.07665301859378815, - -0.04098742455244064, - 0.046205732971429825, - -0.11254053562879562, - 0.07936838269233704, - 0.052473943680524826, - -0.006090579088777304, - 0.01039053127169609, - 0.0940728634595871, - -0.03134115785360336, - -0.0054808794520795345, - -0.0039880163967609406, - -0.03030667081475258, - 0.01616595685482025, - -0.047957442700862885, - 0.011981154792010784, - 0.014473007060587406, - 0.023792922496795654, - 0.03315510228276253, - 0.0068056886084377766, - -0.036574095487594604, - -0.11832774430513382, - 0.018171975389122963, - 0.042477816343307495, - 0.08915697038173676, - 0.013131125830113888, - -0.03833124414086342, - -0.044536832720041275, - -0.06207020580768585, - 0.00030853203497827053, - -0.022233178839087486, - 0.06557407975196838, - -0.02755184844136238, - 0.006208732724189758, - 0.08769842982292175, - 0.027013512328267097, - 0.0049041141755878925, - -0.05983532592654228, - -0.041174035519361496, - 0.01868407614529133, - 0.03740725666284561, - -0.08608248829841614, - -0.07837054133415222, - -0.00900968722999096, - 0.03450753912329674, - -0.019652539864182472, - 0.0420735627412796, - 0.034488264471292496, - 0.024492621421813965, - 0.023953653872013092, - -0.09959570318460464, - 0.019592974334955215, - -0.11650485545396805, - -0.08623222261667252, - -0.027420461177825928, - 0.0019349019275978208, - -0.0024711433798074722, - 0.06545230746269226, - -0.009740003384649754, - 0.035744477063417435, - -0.013761785812675953, - -0.0660208910703659, - -0.08851736038923264, - 0.0549754835665226, - 0.08370275050401688, - 0.006444267462939024, - 0.05500565096735954, - 0.04012533277273178, - -0.05145742744207382, - 0.05105600506067276, - 0.033011242747306824, - 0.12542292475700378, - -0.010914579965174198, - 0.02344227023422718, - -0.05586374178528786, - 0.06902960687875748, - 0.08258596062660217, - -0.08731798082590103, - -0.07631795108318329, - -0.024579746648669243, - -0.06024374067783356, - 0.04319954290986061, - -0.016182495281100273, - -0.000923074665479362, - 0.0014819487696513534, - -0.008515158668160439, - -0.089241623878479, - -0.07614150643348694, - 0.057811181992292404, - -0.07190749794244766, - -0.019181611016392708, - -0.09324660897254944, - 0.05874720588326454, - 0.0962495282292366, - 0.033562399446964264, - -0.04117560759186745, - -0.027032088488340378, - 0.03990776091814041, - -0.045605093240737915, - 0.0015980829484760761, - 0.04379775747656822, - 0.05125972256064415, - -0.11862359941005707, - 0.0056625958532094955, - -0.08322019129991531, - 0.06070470064878464, - -0.07032650709152222, - 0.14923729002475739, - 0.008735728450119495, - -0.05821780860424042, - -0.08965730667114258, - 0.04144864156842232, - 0.006865859497338533, - 0.03835439682006836, - 0.03526514396071434, - 0.04721233993768692, - 0.02700684405863285, - -0.07600522041320801, - 0.1189938336610794, - 0.029594114050269127, - -0.019516535103321075, - -0.05715472251176834, - -0.04561162739992142, - -0.04984667897224426, - 0.017764806747436523, - 0.025110041722655296, - -0.10677909851074219, - -0.049841295927762985, - 0.03037760965526104, - -0.01036197878420353, - 0.07492029666900635, - 0.14541363716125488, - 0.037221912294626236, - -0.11960726231336594 - ] - }, - "p244_351.wav": { - "name": "p244", - "embedding": [ - 0.06704145669937134, - 0.05823506787419319, - 0.030241966247558594, - -0.03705039620399475, - 0.006909685209393501, - 0.0932241901755333, - -0.06810291856527328, - 0.06883310526609421, - 0.00155550055205822, - 0.04379822313785553, - -0.08923117816448212, - 0.04777928814291954, - 0.008395617827773094, - -0.136733740568161, - -0.01879725605249405, - 0.046538516879081726, - -0.05091383308172226, - 0.02822810597717762, - -0.06763501465320587, - -0.024408429861068726, - -0.010235240682959557, - 0.02395259216427803, - 0.059341199696063995, - -0.03244274854660034, - 0.0438317134976387, - 0.03897450119256973, - 0.0065063368529081345, - 0.02308381348848343, - -0.006782982498407364, - -0.03565731644630432, - -0.019158361479640007, - 0.0782981887459755, - -0.026104524731636047, - -0.02209126204252243, - 0.05125085264444351, - 0.009704766795039177, - 0.059460680931806564, - -0.10379713773727417, - -0.034776072949171066, - 0.043902166187763214, - -0.06420910358428955, - 0.0628296360373497, - 0.049240801483392715, - 0.0029306765645742416, - 0.032963827252388, - 0.004978878889232874, - -0.0046936082653701305, - -0.061599548906087875, - -0.07922981679439545, - 0.1526414155960083, - 0.030769091099500656, - 0.04064822569489479, - -0.08091539889574051, - -0.018084930256009102, - 0.048893265426158905, - -0.010109447874128819, - -0.04269569739699364, - -0.0027581676840782166, - 0.0360928438603878, - 0.08483288437128067, - 0.039877187460660934, - -0.007614978589117527, - 0.040842268615961075, - 0.064113549888134, - -0.014371966943144798, - 0.026534665375947952, - 0.09887561202049255, - 0.06561963260173798, - 0.022939587011933327, - 0.03532765805721283, - 0.05432305485010147, - 0.017604021355509758, - 0.05098516866564751, - -0.024919988587498665, - 0.03871893137693405, - -0.02850848063826561, - -0.03807409852743149, - -0.019279640167951584, - -0.013364613056182861, - -0.01836494728922844, - 0.067538321018219, - 0.028540581464767456, - 0.018481124192476273, - 0.041880302131175995, - -0.04994499683380127, - 0.02163398265838623, - -0.024133171886205673, - 0.08421847969293594, - 0.07045003026723862, - 0.044835299253463745, - 0.030816011130809784, - -0.006503632292151451, - -0.022939639165997505, - -0.09851651638746262, - 0.009312189184129238, - 0.032479122281074524, - -0.013365810737013817, - -0.002710772678256035, - 0.02432195097208023, - -0.04618127644062042, - 0.08671192824840546, - 0.0036795511841773987, - -0.006280895788222551, - 0.004515236243605614, - -0.06504005193710327, - 0.043493784964084625, - 0.0792287290096283, - 0.00462745688855648, - 0.05508670583367348, - -0.020342670381069183, - 0.03571278601884842, - 0.07519960403442383, - -0.08603756874799728, - -0.021520232781767845, - 0.011256717145442963, - -0.007585185579955578, - 0.07266493886709213, - 0.08963727951049805, - 0.008370034396648407, - 0.026655040681362152, - 0.041409529745578766, - -0.073029063642025, - -0.021643180400133133, - 0.03481026738882065, - -0.005380101501941681, - 0.0035184770822525024, - -0.013319611549377441, - 0.0224656630307436, - 0.03054683282971382, - -0.07471266388893127, - 0.034888170659542084, - 0.01191724743694067, - 0.015840142965316772, - -0.07374249398708344, - 0.03549838066101074, - 0.0224164929240942, - -0.017805660143494606, - -0.04488350823521614, - 0.03473108261823654, - 0.0675075501203537, - -0.016258355230093002, - 0.05133683979511261, - -0.06452854722738266, - -0.0906495749950409, - -0.03532847389578819, - -0.013745943084359169, - 0.03072349727153778, - -0.00711077218875289, - -0.020660752430558205, - -0.0649898573756218, - 0.03042362444102764, - 0.00642771553248167, - -0.027265753597021103, - 0.028220463544130325, - 0.09902530908584595, - -0.05122558772563934, - 0.060032181441783905, - -0.035985250025987625, - 0.01873202808201313, - -0.015580343082547188, - -0.0337342731654644, - 0.02912384457886219, - 0.027779292315244675, - -0.000771593302488327, - -0.06464264541864395, - 0.014612175524234772, - -0.0725935697555542, - -0.004106349777430296, - -0.0010228119790554047, - 0.02510572038590908, - -0.013170212507247925, - -0.03557687625288963, - -0.08968241512775421, - 0.006630235817283392, - -0.06688438355922699, - -0.04054092988371849, - 0.07745760679244995, - 0.014819085597991943, - -0.010020339861512184, - 0.09203378856182098, - 0.03292340785264969, - 0.0066065192222595215, - -0.05413554608821869, - -0.04648738354444504, - 0.02979138121008873, - 0.05529949814081192, - 0.050144582986831665, - 0.019709505140781403, - 0.022195138037204742, - -0.012681165710091591, - 0.012812916189432144, - 0.04796817898750305, - 0.028981631621718407, - 0.034979429095983505, - -0.027928978204727173, - -0.030164793133735657, - 0.02286100760102272, - 0.08644644170999527, - -0.0002261437475681305, - -0.03957487642765045, - -0.034387193620204926, - 0.02911531738936901, - -0.02363932505249977, - 0.016472451388835907, - 0.012730593793094158, - 0.019347818568348885, - 0.04383888095617294, - -0.040693968534469604, - -0.047640323638916016, - -0.06191657856106758, - 0.03659037500619888, - -0.04567191004753113, - -0.031197071075439453, - -0.026576252654194832, - 0.04854495823383331, - 0.08480000495910645, - -0.020679092034697533, - 0.0015879161655902863, - 0.013026267290115356, - -0.019762394949793816, - -0.0332379974424839, - -0.05657337233424187, - -0.024955058470368385, - 0.025027822703123093, - -0.07732786983251572, - 0.023637311533093452, - -0.05580015480518341, - 0.059601880609989166, - 0.00220605731010437, - 0.06466390192508698, - 0.04856862872838974, - -0.02864808402955532, - -0.06842250376939774, - 0.01873037777841091, - -0.001178903505206108, - 0.028635935857892036, - 0.0026000821962952614, - 0.00303029827773571, - 0.05007866397500038, - -0.05784064158797264, - 0.048221755772829056, - 0.024801796302199364, - -0.053993869572877884, - -0.04294169321656227, - -0.002083864063024521, - -0.0129734231159091, - 0.005749902687966824, - -0.04221602529287338, - -0.026547254994511604, - 0.03614458069205284, - 0.026439839974045753, - 0.03091368079185486, - 0.009394442662596703, - 0.0422995388507843, - 0.005992533639073372, - -0.036101650446653366 - ] - }, - "p244_184.wav": { - "name": "p244", - "embedding": [ - 0.043890755623579025, - 0.08505771309137344, - -0.014418607577681541, - 0.05119144171476364, - -0.07487911731004715, - 0.039904240518808365, - -0.0789528340101242, - 0.12820200622081757, - -0.038454413414001465, - 0.09622292220592499, - -0.07556413859128952, - 0.167055144906044, - -0.010330495424568653, - -0.17147041857242584, - -0.07540953159332275, - 0.03999222815036774, - -0.026614608243107796, - -0.028791245073080063, - 0.015424036420881748, - -0.02673296444118023, - 0.0702357217669487, - 0.08003674447536469, - 0.07933282852172852, - 0.018238360062241554, - 0.03354933112859726, - 0.07591891288757324, - 0.03875710442662239, - 0.09171140193939209, - 0.053987402468919754, - -0.09499023109674454, - -0.0666663721203804, - 0.08714472502470016, - -0.0329500250518322, - 0.012769694440066814, - 0.021275892853736877, - -0.019346900284290314, - 0.0480443574488163, - -0.043350137770175934, - -0.03835352882742882, - 0.027153311297297478, - -0.02492375485599041, - 0.06955984979867935, - 0.006105436943471432, - -0.025699805468320847, - 0.0529632568359375, - -0.005154609214514494, - -0.023983687162399292, - -0.03335484117269516, - -0.12110687792301178, - 0.16359923779964447, - 0.05461646988987923, - 0.031083887442946434, - -0.08836103975772858, - -0.08555283397436142, - 0.11411811411380768, - -0.02772662229835987, - -0.07916954159736633, - 0.00560044776648283, - 0.03567344322800636, - 0.16897299885749817, - 0.0020335703156888485, - -0.04417891427874565, - 0.0477592870593071, - 0.09379659593105316, - 0.04681135341525078, - 0.04155230149626732, - 0.09959916025400162, - 0.057315435260534286, - -0.008235082030296326, - 0.02711101807653904, - 0.018748415634036064, - 0.12074065953493118, - 0.027918657287955284, - -0.006959917023777962, - 0.0006813450600020587, - 0.023227302357554436, - -0.03171291947364807, - 0.016142068430781364, - -0.01406625472009182, - -0.0037790213245898485, - -0.019053807482123375, - 0.01949171908199787, - 0.015480420552194118, - -0.009981020353734493, - -0.037590038031339645, - 0.08450647443532944, - -0.02401881292462349, - -0.006191688124090433, - 0.04215914383530617, - 0.006862887181341648, - -0.011351067572832108, - 0.051584187895059586, - -0.06960795819759369, - -0.1019834503531456, - 0.001985696842893958, - 0.013733861967921257, - 0.0297338105738163, - 0.09063045680522919, - 0.03341888636350632, - -0.03361824154853821, - 0.11747490614652634, - 0.06494419276714325, - -0.0026375590823590755, - 0.01859324239194393, - -0.08523046225309372, - 0.07872146368026733, - 0.12975522875785828, - 0.006621855776757002, - 0.07833165675401688, - -0.03364546597003937, - 0.09074798971414566, - 0.0536341667175293, - -0.14509478211402893, - -0.08406513184309006, - 0.003765242639929056, - 0.03314562141895294, - 0.04313020408153534, - 0.07648768275976181, - -0.0283002108335495, - 0.06041765585541725, - 0.09415999054908752, - -0.0854165181517601, - -0.046685054898262024, - -0.053394865244627, - 0.057289306074380875, - -0.06280698627233505, - 0.06906235218048096, - 0.045254096388816833, - 0.0013116456102579832, - -0.021103205159306526, - 0.038884151726961136, - -0.030252229422330856, - 0.007258565630763769, - 0.05298084393143654, - -0.07948058098554611, - -0.012687699869275093, - -0.05962829664349556, - -0.01423613727092743, - 0.09236863255500793, - 0.04087842255830765, - 0.04636557027697563, - 0.017751868814229965, - -0.0312421265989542, - -0.12579035758972168, - 0.0071611590683460236, - 0.04106401652097702, - 0.03752791881561279, - -0.009522752836346626, - -0.08183171600103378, - -0.04686363786458969, - -0.05321026220917702, - 0.038066260516643524, - 0.0400669164955616, - 0.07196805626153946, - -0.036398086696863174, - 0.03303104639053345, - 0.0691780373454094, - 0.01096411608159542, - -0.025769485160708427, - -0.015307455323636532, - -0.02977103739976883, - -0.009425358846783638, - 0.03558971732854843, - -0.05349878594279289, - -0.09915625303983688, - -0.01775696873664856, - 0.02489335462450981, - -0.027579359710216522, - 0.04895031079649925, - 0.048750706017017365, - -0.0001891324936877936, - 0.04464235529303551, - -0.04382289573550224, - -0.006914936471730471, - -0.1152111068367958, - -0.06727608293294907, - -0.024730389937758446, - -0.007135397754609585, - -0.03739252686500549, - 0.07210288196802139, - 0.06634336709976196, - 0.05646740645170212, - 0.010103200562298298, - -0.04375826567411423, - -0.07646053284406662, - 0.03941487893462181, - 0.06055415794253349, - 0.06438817828893661, - 0.0835215374827385, - 0.06230328977108002, - -0.022786781191825867, - 0.12653151154518127, - 0.07117488235235214, - 0.05934397131204605, - -0.010505910031497478, - 0.005181418266147375, - -0.05573165789246559, - 0.06675601750612259, - 0.0884820744395256, - -0.09574930369853973, - -0.11331278085708618, - -0.06252880394458771, - -0.1048608049750328, - 0.08730683475732803, - -0.00012744062405545264, - 0.02955835498869419, - 0.046797964721918106, - 0.0008930893382057548, - -0.11105445772409439, - -0.0872381404042244, - 0.09520980715751648, - -0.02480298839509487, - -0.03677918016910553, - -0.04398595541715622, - 0.023222243413329124, - 0.11804411560297012, - 4.9878188292495906e-05, - 0.013271125964820385, - -0.017938243225216866, - 0.04117550700902939, - -0.05391534045338631, - -0.03508086875081062, - 0.04264451563358307, - 0.006528493016958237, - -0.09303133934736252, - 0.027545975521206856, - -0.07321067899465561, - 0.05899357423186302, - -0.05544789507985115, - 0.13341733813285828, - -0.018868740648031235, - -0.054445359855890274, - -0.09287986159324646, - 0.08792873471975327, - -0.031962037086486816, - 0.046662312000989914, - 0.033910978585481644, - 0.03124554082751274, - 0.008196335285902023, - -0.10700886696577072, - 0.10969391465187073, - 0.05273907631635666, - -0.09013558179140091, - -0.08190502971410751, - -0.05302773043513298, - -0.011819390580058098, - 0.027898680418729782, - 0.02523074485361576, - -0.034925032407045364, - -0.030958760529756546, - -0.004015491809695959, - -0.0022458883468061686, - 0.06051085889339447, - 0.13358932733535767, - 0.02728516235947609, - -0.10576461255550385 - ] - }, - "p244_002.wav": { - "name": "p244", - "embedding": [ - 0.02358773536980152, - 0.07826605439186096, - -0.027543067932128906, - 0.031680479645729065, - -0.07373817265033722, - 0.050326019525527954, - -0.12228147685527802, - 0.12812471389770508, - -0.03913921117782593, - 0.12552094459533691, - -0.063118577003479, - 0.1157759428024292, - -0.046507250517606735, - -0.18721237778663635, - 0.0004700678982771933, - 0.07076182961463928, - -0.028337620198726654, - -0.051535118371248245, - -0.025464870035648346, - -0.03454870358109474, - 0.029593035578727722, - 0.029509365558624268, - 0.003851971821859479, - 0.02604139782488346, - 0.015128349885344505, - 0.08368734270334244, - -0.02362710051238537, - 0.0106833316385746, - -0.0232837051153183, - -0.03319923207163811, - -0.045803382992744446, - 0.08455102145671844, - -0.06445177644491196, - 0.011724996380507946, - 0.047038301825523376, - 0.0013751982478424907, - -0.015428800135850906, - -0.04209304228425026, - -0.01663612760603428, - -0.00877833366394043, - -0.08127505332231522, - 0.07297591120004654, - 0.02443988062441349, - -0.016256440430879593, - 0.04076751321554184, - 0.017612911760807037, - -0.016523662954568863, - -0.031120549887418747, - -0.11199674755334854, - 0.14118105173110962, - 0.07491213083267212, - -0.01583864912390709, - -0.058698512613773346, - -0.060395874083042145, - 0.10201830416917801, - -0.008420097641646862, - -0.11700267344713211, - -0.04858531057834625, - 0.08741970360279083, - 0.1385299414396286, - -0.03007463552057743, - -0.032490409910678864, - 0.018984273076057434, - 0.10844701528549194, - 0.056400366127491, - 0.09863264113664627, - 0.054077714681625366, - 0.11717013269662857, - -0.039178911596536636, - -0.016189374029636383, - 0.07102316617965698, - 0.07059231400489807, - 0.07944108545780182, - -0.011055003851652145, - 0.009577132761478424, - 0.008006935007870197, - -0.013070395216345787, - 0.0075176190584897995, - -0.025560803711414337, - -0.025546584278345108, - -0.02846902422606945, - -0.010807862505316734, - 0.001602032221853733, - 0.008516959846019745, - -0.005555284209549427, - 0.05008368939161301, - 0.07965726405382156, - -0.013095414265990257, - 0.06566435098648071, - 0.03424368053674698, - -0.025594614446163177, - 0.08266881108283997, - -0.09044355154037476, - -0.04109787940979004, - 0.02378132753074169, - 0.0014220110606402159, - 0.02196289598941803, - 0.09291413426399231, - 0.04062889516353607, - -0.005350210703909397, - 0.1164693683385849, - 0.030876826494932175, - 0.012760510668158531, - 0.02262270823121071, - -0.09269329905509949, - 0.1272474229335785, - 0.07751910388469696, - -0.04080330953001976, - 0.041031546890735626, - -0.03814410790801048, - 0.07047991454601288, - 0.07510924339294434, - -0.12477375566959381, - -0.04994071647524834, - 0.01527847908437252, - 0.015763960778713226, - -0.03540327027440071, - 0.13015125691890717, - -0.0015134529676288366, - 0.034743472933769226, - 0.12304578721523285, - -0.09818711876869202, - -0.06383582204580307, - -0.010296138934791088, - 0.033754292875528336, - -0.09067896753549576, - 0.056689921766519547, - 0.05938276648521423, - 0.0013965866528451443, - 0.040264323353767395, - 0.08552718162536621, - -0.015032759867608547, - 0.0052743032574653625, - 0.017005007714033127, - -0.047505784779787064, - -0.0034433994442224503, - -0.01980522647500038, - 0.003273322246968746, - 0.06160595640540123, - 0.021210571750998497, - 0.05466904863715172, - -0.017585575580596924, - -0.009554693475365639, - -0.13104790449142456, - 0.02533816546201706, - 0.05835263431072235, - 0.08430012315511703, - -0.013944342732429504, - -0.024379678070545197, - -0.03711916506290436, - -0.08951502293348312, - 0.014764171093702316, - -0.00650345254689455, - 0.078699491918087, - -0.04668764770030975, - -0.004294841084629297, - 0.09571234881877899, - 0.0528540164232254, - -0.0220005065202713, - -0.07365991175174713, - -0.04793429747223854, - -0.013625634834170341, - 0.05680353194475174, - -0.09912532567977905, - -0.08124546706676483, - -0.019717229530215263, - 0.05668644234538078, - -0.011334139853715897, - 0.07291688770055771, - 0.05611800402402878, - 0.029576651751995087, - 0.01304707396775484, - -0.0732540637254715, - 0.015658125281333923, - -0.09017372131347656, - -0.08548907935619354, - -0.017555225640535355, - -0.027347825467586517, - -0.006128217093646526, - 0.06830267608165741, - 0.012454835698008537, - 0.04593104496598244, - -0.023782506585121155, - -0.06570237874984741, - -0.09388864040374756, - 0.05440802127122879, - 0.04032035171985626, - -0.01430125255137682, - 0.04942398518323898, - 0.07252196967601776, - -0.07328368723392487, - 0.042637377977371216, - 0.058200906962156296, - 0.1299072802066803, - -0.04843887686729431, - 0.057595498859882355, - -0.05590197071433067, - 0.07234153151512146, - 0.0904366672039032, - -0.08401448279619217, - -0.07548040896654129, - -0.039046335965394974, - -0.05667746067047119, - 0.04639512300491333, - -0.04596441984176636, - -0.0032003677915781736, - 0.0073587168008089066, - 0.001806933432817459, - -0.0926545113325119, - -0.08737234771251678, - 0.07453086972236633, - -0.051295891404151917, - 0.006884843576699495, - -0.09308046847581863, - 0.043042056262493134, - 0.06748859584331512, - 0.05167599022388458, - -0.03423576429486275, - 0.014277677051723003, - 0.06291401386260986, - -0.015866756439208984, - 0.02137969434261322, - 0.08569542318582535, - 0.046959757804870605, - -0.0943174958229065, - -0.0365343876183033, - -0.0801193118095398, - 0.06505569815635681, - -0.03039010800421238, - 0.1565544605255127, - 0.006734907627105713, - -0.04568962752819061, - -0.06981738656759262, - 0.02863404154777527, - -0.0015778010711073875, - 0.04543830826878548, - 0.0291912741959095, - 0.07866893708705902, - 0.03238718956708908, - -0.026903148740530014, - 0.13715890049934387, - 0.04452521353960037, - -0.03350624442100525, - -0.044210076332092285, - -0.04607298970222473, - -0.05255250632762909, - 0.022222690284252167, - 0.008832775056362152, - -0.10808197408914566, - -0.015592294745147228, - 0.02139430120587349, - -5.829939618706703e-05, - 0.051591672003269196, - 0.1530590057373047, - 0.08657270669937134, - -0.10864903032779694 - ] - }, - "p244_185.wav": { - "name": "p244", - "embedding": [ - 0.061931438744068146, - 0.0943182036280632, - 0.017586873844265938, - -0.016560431569814682, - -0.01549588143825531, - 0.06860578060150146, - -0.1735783964395523, - 0.10738663375377655, - -0.06024941802024841, - 0.1527029573917389, - -0.10229989886283875, - 0.0820830762386322, - -0.024862563237547874, - -0.1922997534275055, - -0.06880733370780945, - 0.04849780350923538, - -0.06502246856689453, - -0.03457893803715706, - 0.0012382371351122856, - -0.03095114231109619, - 0.038484349846839905, - 0.05193109065294266, - 0.008144903928041458, - 0.02631678432226181, - 0.0451781302690506, - 0.05656164139509201, - 0.010965327732264996, - 0.049336764961481094, - -0.005590734537690878, - -0.03349357470870018, - -0.02043190225958824, - 0.13056224584579468, - -0.03088408149778843, - -0.005155405029654503, - 0.028637176379561424, - 0.023479096591472626, - 0.03669722378253937, - -0.0857032984495163, - -0.002330233808606863, - -0.003384561976417899, - -0.03503650426864624, - 0.06760133057832718, - 0.02083505317568779, - 0.018323713913559914, - 0.0068146237172186375, - 0.04039827734231949, - 0.0028054174035787582, - -0.07450364530086517, - -0.10297901928424835, - 0.16271817684173584, - 0.04333998262882233, - 0.018857136368751526, - -0.0736873671412468, - -0.08138163387775421, - 0.10239444673061371, - -0.011204741895198822, - -0.08961302042007446, - -0.018971525132656097, - 0.08370642364025116, - 0.1880270391702652, - -0.045557837933301926, - -0.06589552760124207, - 0.03892253339290619, - 0.10237638652324677, - 0.01838921755552292, - 0.08959254622459412, - 0.08224697411060333, - 0.0660763531923294, - 0.012882357463240623, - -0.01609390787780285, - 0.060892581939697266, - 0.04428984969854355, - 0.04501251131296158, - -0.04964422062039375, - 0.026755765080451965, - 0.01607527770102024, - -0.04234948381781578, - 0.04744495451450348, - -0.0172147024422884, - -0.007962924428284168, - 0.0005255321739241481, - -0.008809900842607021, - -0.014055125415325165, - 0.017560552805662155, - -0.035148583352565765, - 0.015296468511223793, - -0.00401654839515686, - -0.009734917432069778, - 0.10195815563201904, - 0.02065407671034336, - 0.020383402705192566, - 0.060295410454273224, - -0.06215808168053627, - -0.07610048353672028, - 0.05746382474899292, - 0.021879538893699646, - -0.0019333818927407265, - 0.06846021860837936, - 0.04975048080086708, - -0.05284110829234123, - 0.12015827000141144, - 0.029055429622530937, - 0.019173379987478256, - 0.02234555594623089, - -0.12423446029424667, - 0.10854637622833252, - 0.0924525335431099, - -0.04406654089689255, - 0.038346078246831894, - -0.03121175616979599, - 0.06448947638273239, - 0.08739827573299408, - -0.15698984265327454, - -0.089156374335289, - 0.05125739797949791, - 0.04494181647896767, - 0.0008481969125568867, - 0.10862427949905396, - -0.028039967641234398, - -0.006550223100930452, - 0.08231733739376068, - -0.07706663012504578, - -0.061941809952259064, - -0.020563066005706787, - 0.04454972594976425, - -0.09160491824150085, - 0.03808602690696716, - 0.060925837606191635, - 0.005269246641546488, - -0.015477458946406841, - 0.06979642808437347, - -0.011888453736901283, - -0.015624463558197021, - -0.02562510408461094, - -0.020971886813640594, - 0.03489968553185463, - -0.029899869114160538, - -0.008173709735274315, - 0.014536741189658642, - 0.056775838136672974, - 0.014111342839896679, - 0.03855336830019951, - -0.06912229210138321, - -0.11743748188018799, - -0.0033062375150620937, - 0.054164811968803406, - 0.057940319180488586, - -0.017601799219846725, - -0.031252745538949966, - -0.072161465883255, - -0.03870869800448418, - 0.023170702159404755, - 0.005680281203240156, - 0.08354271948337555, - 0.015904748812317848, - 0.0032762247137725353, - 0.10606884956359863, - 0.023646127432584763, - -0.0023334778379648924, - -0.05040481314063072, - -0.012844240292906761, - 0.03589194267988205, - 0.03635179251432419, - -0.06052795797586441, - -0.06869138777256012, - -0.0025041282642632723, - 0.04248450696468353, - -0.01490707602351904, - 0.03628591075539589, - 0.03992671146988869, - 0.015115615911781788, - 0.02881280519068241, - -0.08762317895889282, - 0.04189129173755646, - -0.11166097223758698, - -0.05664055794477463, - 0.0014595371903851628, - -0.009036744944751263, - -0.0038564163260161877, - 0.08789880573749542, - 0.005479919724166393, - 0.028801556676626205, - -0.0506991371512413, - -0.0854375958442688, - -0.05812521651387215, - 0.06582494080066681, - 0.11485972255468369, - 0.005417494103312492, - 0.036176636815071106, - 0.02856173738837242, - -0.003962871618568897, - 0.061177995055913925, - 0.06648282706737518, - 0.13206112384796143, - -0.020873498171567917, - 0.019060513004660606, - -0.03514261171221733, - 0.06428977847099304, - 0.034177958965301514, - -0.07694768905639648, - -0.08694911003112793, - -0.00605004234239459, - -0.05699876323342323, - 0.05943584442138672, - 0.014504838734865189, - 0.025877878069877625, - -0.009845886379480362, - -0.03490893542766571, - -0.0897604376077652, - -0.07291705906391144, - 0.05996953696012497, - -0.02755383774638176, - -0.03472472354769707, - -0.08967968821525574, - 0.07644389569759369, - 0.08695225417613983, - 0.043586790561676025, - 0.00286676362156868, - -0.016348622739315033, - 0.005012219306081533, - -0.06722348928451538, - -0.022148026153445244, - 0.023505806922912598, - 0.00038319453597068787, - -0.1097593754529953, - 0.03014691174030304, - -0.09828896820545197, - 0.09809508919715881, - -0.06587450206279755, - 0.15200844407081604, - -0.007465310860425234, - -0.06238946691155434, - -0.09271591901779175, - 0.019227854907512665, - -0.025916390120983124, - 0.044934600591659546, - 0.0454816073179245, - 0.03466986119747162, - 0.03788481652736664, - -0.056064315140247345, - 0.07617609202861786, - 0.035814326256513596, - -0.02204306423664093, - -0.06533538550138474, - -0.04845082759857178, - -0.023975593969225883, - 0.009637643583118916, - -0.031131941825151443, - -0.07051219046115875, - -0.01244270522147417, - 0.033741891384124756, - -0.0015441062860190868, - 0.0764072835445404, - 0.11345212906599045, - 0.04249701276421547, - -0.13651220500469208 - ] - }, - "p244_382.wav": { - "name": "p244", - "embedding": [ - 0.012547873891890049, - 0.05160238593816757, - 0.011362994089722633, - 0.010442528873682022, - -0.02396126464009285, - 0.013589495792984962, - -0.11730173975229263, - 0.036210618913173676, - -0.010385122150182724, - 0.11090656369924545, - -0.06143496558070183, - 0.06634905934333801, - -0.045379187911748886, - -0.10618384927511215, - 0.01740165799856186, - 0.03435014933347702, - -0.006350047420710325, - -0.00864393636584282, - -0.031849052757024765, - -0.09376578032970428, - 0.020534124225378036, - 0.036604393273591995, - 0.036742858588695526, - -0.06433065235614777, - -0.03600381687283516, - 0.08359530568122864, - 0.01833106204867363, - 0.00012774299830198288, - -0.01433572731912136, - -0.05799144506454468, - 0.012074185535311699, - 0.05872979015111923, - -0.022189244627952576, - -0.04682639613747597, - 0.03789011389017105, - 0.021736960858106613, - -0.011056792922317982, - 0.032406531274318695, - 0.03573356941342354, - 0.048331134021282196, - -0.10984036326408386, - 0.08040735870599747, - 0.035817697644233704, - -0.013468739576637745, - 0.05903147906064987, - -0.010543732903897762, - -0.0302356518805027, - 0.04786694049835205, - -0.05198640376329422, - 0.10123961418867111, - 0.09019836783409119, - -0.01387955155223608, - -0.0026811081916093826, - -0.0028360895812511444, - 0.06472156941890717, - 0.006172278895974159, - -0.09047840535640717, - -0.06961512565612793, - 0.01754872500896454, - 0.048186399042606354, - -0.0459323488175869, - -0.03905865177512169, - 0.021418139338493347, - 0.07180844992399216, - 0.02538359723985195, - 0.08152899891138077, - 0.04512246698141098, - 0.06418582797050476, - -0.015758180990815163, - -0.03462575748562813, - 0.04637700319290161, - 0.06378970295190811, - 0.05963975191116333, - -0.009656872600317001, - 0.04629376903176308, - -0.027568265795707703, - -0.0015075068222358823, - -0.015118101611733437, - -0.0021336134523153305, - -0.02977989986538887, - -0.016649462282657623, - -0.03093707747757435, - 0.0054865069687366486, - -0.011831393465399742, - -0.02760191448032856, - -0.013728601858019829, - 0.07599321007728577, - -0.011270669288933277, - 0.05656953155994415, - 0.017831265926361084, - 0.010215329006314278, - 0.04234057292342186, - -0.024735376238822937, - 0.013357169926166534, - -0.021729113534092903, - -0.023060370236635208, - 0.05408324673771858, - 0.04192613810300827, - -0.009943902492523193, - 0.03809733688831329, - 0.07158517092466354, - 0.012510206550359726, - -0.01156134344637394, - 0.02253643423318863, - -0.08828597515821457, - 0.09063994139432907, - 0.07299457490444183, - -0.04215797781944275, - 0.011265666224062443, - 0.005750037729740143, - 0.0337931364774704, - 0.004370613023638725, - -0.04674713686108589, - -0.026644859462976456, - -0.017069317400455475, - 0.05421210452914238, - -0.023538794368505478, - 0.11078331619501114, - -0.004369608126580715, - -0.001963440328836441, - 0.13071255385875702, - -0.011764176189899445, - -0.0530334934592247, - -0.0342542938888073, - 0.0011928481981158257, - -0.11772595345973969, - 0.04352394863963127, - 0.061838164925575256, - 0.010597269982099533, - 0.04860387742519379, - 0.12782812118530273, - -0.001282795681618154, - 0.007060809060931206, - -0.04113354533910751, - -0.02608216181397438, - 0.005709658842533827, - 0.005518050864338875, - 0.03675176203250885, - 0.06943594664335251, - 0.022506503388285637, - 0.10988815128803253, - 0.00980820506811142, - 0.017211895436048508, - -0.10632960498332977, - 0.02222321182489395, - 0.029957246035337448, - -0.008503291755914688, - -0.03047473356127739, - -0.02670774981379509, - -0.0339556559920311, - -0.06403562426567078, - 0.020782222971320152, - -0.06388944387435913, - 0.08039310574531555, - -0.035465702414512634, - -0.03365049511194229, - 0.12671050429344177, - 0.011926470324397087, - -0.018395351245999336, - -0.0451463907957077, - -0.04775174707174301, - -0.03024212270975113, - 0.02390103042125702, - -0.15910173952579498, - -0.03548077493906021, - -0.06562969833612442, - 0.06842155754566193, - 0.061021797358989716, - 0.01578560657799244, - 0.08299657702445984, - -0.026273656636476517, - 0.024967610836029053, - 0.005361704155802727, - 0.007530272472649813, - -0.025087492540478706, - -0.07498277723789215, - -0.028843076899647713, - -0.09150299429893494, - -0.03826965391635895, - 0.04488532990217209, - -0.05601165071129799, - 0.025278553366661072, - -0.01570734940469265, - -0.08624249696731567, - -0.09655316174030304, - 0.01300131343305111, - 0.032063499093055725, - -0.034426964819431305, - 0.036032259464263916, - 0.06893187016248703, - -0.05150822922587395, - 0.02387727051973343, - 0.01330776046961546, - 0.1009955108165741, - -0.06870239228010178, - 0.02597085013985634, - -0.04178846627473831, - 0.015592994168400764, - 0.07868680357933044, - -0.02680528722703457, - -0.03693900629878044, - -0.05068472772836685, - -0.03574802726507187, - 0.06267403811216354, - -0.04315007105469704, - -0.03363295644521713, - -0.017319170758128166, - 0.028717953711748123, - -0.043894216418266296, - -0.060050118714571, - 0.05433402955532074, - -0.03880521282553673, - 0.0020879385992884636, - -0.06176038086414337, - 0.0007769614458084106, - -0.05895606428384781, - 0.11176969110965729, - -0.0466681532561779, - 0.046651311218738556, - 0.03920469433069229, - -0.036042407155036926, - 0.05796392634510994, - 0.06418243795633316, - 0.06173306331038475, - 0.013650529086589813, - -0.06049313396215439, - -0.0877370685338974, - 0.026592738926410675, - -0.016280457377433777, - 0.0243687704205513, - 0.03331802785396576, - -0.012801187112927437, - -0.0022738445550203323, - 0.00848740991204977, - -0.035573720932006836, - 0.012242107652127743, - 0.09276110678911209, - 0.06797154247760773, - 0.016932833939790726, - -0.020362310111522675, - 0.09237921237945557, - 0.023318475112318993, - 0.028431814163923264, - -0.029714711010456085, - 0.03502645716071129, - -0.06460855901241302, - 0.014962121844291687, - 0.05536523461341858, - -0.10144593566656113, - 0.024608131498098373, - 0.01699121668934822, - 0.012575887143611908, - 0.018135521560907364, - 0.05983434617519379, - 0.055573634803295135, - -0.037474654614925385 - ] - }, - "p244_054.wav": { - "name": "p244", - "embedding": [ - 0.044531773775815964, - 0.08339071273803711, - -0.043592821806669235, - 0.032639503479003906, - -0.041242025792598724, - 0.03188537061214447, - -0.12195440381765366, - 0.12405737489461899, - -0.039067547768354416, - 0.11954139173030853, - -0.06776689738035202, - 0.10958655178546906, - -0.036398995667696, - -0.15811637043952942, - -0.0032070246525108814, - 0.060783497989177704, - -0.013422037474811077, - -0.024434328079223633, - -0.0128059983253479, - -0.006297648884356022, - 0.05196934938430786, - 0.030873890966176987, - 0.02055971696972847, - 0.004828694276511669, - -0.0059669530019164085, - 0.06463739275932312, - -0.01451481319963932, - 0.016734275966882706, - 0.0023957248777151108, - -0.009596682153642178, - -0.028207283467054367, - 0.0838286280632019, - -0.025441495701670647, - -0.001375867985188961, - 0.04361264035105705, - 0.013163789175450802, - -0.027481794357299805, - -0.06679468601942062, - -0.014668326824903488, - -0.021882986649870872, - -0.06359701603651047, - 0.049910545349121094, - 0.011246456764638424, - -0.04057619720697403, - 0.05698006972670555, - -0.032979294657707214, - -0.03630266711115837, - -0.02610834687948227, - -0.08936958014965057, - 0.1295086145401001, - 0.08682025969028473, - 0.030690256506204605, - -0.07012548297643661, - -0.03371772915124893, - 0.10229375213384628, - 0.013465752825140953, - -0.08645573258399963, - -0.044837117195129395, - 0.048386506736278534, - 0.15683308243751526, - -0.008068239316344261, - -0.014551311731338501, - 0.03809425234794617, - 0.09007300436496735, - 0.04222553223371506, - 0.08796178549528122, - 0.08538471162319183, - 0.08014971017837524, - 0.0014690251555293798, - 0.007828207686543465, - 0.0482005700469017, - 0.07763230055570602, - 0.04141215234994888, - -0.027177661657333374, - 0.011572152376174927, - 0.009257100522518158, - -0.04612048715353012, - 0.008623328059911728, - -0.007388022728264332, - -0.04041937366127968, - -0.03299110010266304, - -0.008901793509721756, - -0.0006154334987513721, - 0.016461152583360672, - -0.023357797414064407, - 0.028125744313001633, - 0.05248458683490753, - -0.0352524071931839, - 0.051901452243328094, - 0.027309920638799667, - -0.01561039499938488, - 0.03811197355389595, - -0.07006604224443436, - -0.08662566542625427, - 0.023440055549144745, - 0.0154373524710536, - 0.00595161272212863, - 0.08428120613098145, - 0.04134146124124527, - -0.0005706424708478153, - 0.09696288406848907, - 0.035293079912662506, - 0.005181587301194668, - 0.02159595489501953, - -0.07563850283622742, - 0.10091414302587509, - 0.09128039330244064, - -0.03950861096382141, - 0.04708978161215782, - -0.047100722789764404, - 0.04237062856554985, - 0.07073447108268738, - -0.11546891927719116, - -0.04164433479309082, - 0.037117987871170044, - 0.019331369549036026, - 0.018671944737434387, - 0.10687331855297089, - 0.025190195068717003, - 0.022847510874271393, - 0.09897732734680176, - -0.0918402224779129, - -0.09489685297012329, - -0.045933157205581665, - 0.06433014571666718, - -0.07319973409175873, - 0.07652459293603897, - 0.05230450630187988, - 0.010129591450095177, - -0.00817757286131382, - 0.05129304528236389, - -0.010708371177315712, - 0.003669125959277153, - -0.002487152349203825, - -0.03125491365790367, - 0.027580542489886284, - -0.05913276597857475, - -0.011526434682309628, - 0.048139046877622604, - 0.015221628360450268, - 0.042926251888275146, - 0.0016710280906409025, - 0.011386695317924023, - -0.10330268740653992, - 0.006572123151272535, - 0.07021503895521164, - 0.06470756977796555, - -0.014764896593987942, - -0.042874034494161606, - -0.03324338048696518, - -0.07297824323177338, - -0.007540812250226736, - -0.035766687244176865, - 0.08067728579044342, - -0.011344107799232006, - 0.035138264298439026, - 0.07291869074106216, - -0.001958150416612625, - 0.0014686796348541975, - -0.04221239313483238, - -0.017281625419855118, - 0.018143512308597565, - 0.04632008820772171, - -0.06905063986778259, - -0.09081631898880005, - -0.022073036059737206, - 0.02567869983613491, - -0.016295934095978737, - 0.029283598065376282, - 0.03530899062752724, - 0.01007854100316763, - 0.009313436225056648, - -0.08200067281723022, - 0.029111281037330627, - -0.1150745078921318, - -0.0669938176870346, - -0.02214871160686016, - -0.017387447878718376, - 0.017351120710372925, - 0.07316271960735321, - 0.024209685623645782, - 0.029132088646292686, - -0.014923411421477795, - -0.0653960257768631, - -0.09251268953084946, - 0.05088326334953308, - 0.06618297845125198, - -0.010669587180018425, - 0.03743422031402588, - 0.044326361268758774, - -0.044679902493953705, - 0.017755715176463127, - 0.04266372323036194, - 0.09544762223958969, - -0.02135905995965004, - -0.0040208748541772366, - -0.06608234345912933, - 0.06355912238359451, - 0.11735900491476059, - -0.09566470980644226, - -0.07402803003787994, - -0.04731234163045883, - -0.06647393107414246, - 0.023328756913542747, - -0.04298260062932968, - -0.0005063054850324988, - 0.02435779571533203, - -0.040551625192165375, - -0.11309491842985153, - -0.10754703730344772, - 0.07565949857234955, - -0.032360099256038666, - -0.014236598275601864, - -0.07610159367322922, - 0.03851526975631714, - 0.068403460085392, - 0.008493021130561829, - -0.04496745765209198, - -0.0027959574945271015, - 0.025532986968755722, - -0.02969980798661709, - -0.010796865448355675, - 0.04664656147360802, - 0.037412308156490326, - -0.10859899967908859, - -0.0028363890014588833, - -0.06875377893447876, - 0.0795290470123291, - -0.0637238547205925, - 0.13003848493099213, - -0.008818810805678368, - -0.04281790554523468, - -0.10158710181713104, - 0.03621697053313255, - 0.036350153386592865, - 0.04004887118935585, - 0.015556114725768566, - 0.055863939225673676, - 0.009571072645485401, - -0.0766301304101944, - 0.09556584805250168, - 0.04306706786155701, - -0.006984502077102661, - -0.07146522402763367, - -0.030883878469467163, - -0.03619595617055893, - 0.02568429335951805, - -0.015237387269735336, - -0.058929115533828735, - -0.005680184345692396, - 0.000603125779889524, - -0.0004595927894115448, - 0.05696096271276474, - 0.11993834376335144, - 0.04048936069011688, - -0.11684443056583405 - ] - }, - "p244_315.wav": { - "name": "p244", - "embedding": [ - 0.03413383662700653, - 0.11248143017292023, - -0.04909581318497658, - -0.01946149580180645, - -0.05494026094675064, - 0.05198469012975693, - -0.10419207811355591, - 0.06858484447002411, - -0.03169497847557068, - 0.15407967567443848, - -0.045282673090696335, - 0.11573299020528793, - -0.048958953469991684, - -0.11797276884317398, - 0.01691889949142933, - 0.046824801713228226, - -0.011813892051577568, - -0.008026326075196266, - -0.07579988241195679, - -0.0490071140229702, - 0.006307331379503012, - 0.006721321493387222, - 0.055475570261478424, - -0.08238747715950012, - 0.025415092706680298, - 0.06830001622438431, - -0.02267875149846077, - 0.009058261290192604, - -0.022792411968111992, - -0.05325685441493988, - -0.05768198519945145, - 0.0705752819776535, - -0.07316683232784271, - -0.005149628035724163, - 0.015670960769057274, - -0.000647758599370718, - -0.007105298340320587, - -0.04145439714193344, - 0.04939868673682213, - 0.008313881233334541, - -0.008967209607362747, - 0.07133138179779053, - -0.018732253462076187, - -0.03521409258246422, - 0.02477094531059265, - -0.003414227394387126, - -0.025668339803814888, - -0.009604323655366898, - -0.05513915419578552, - 0.12803515791893005, - 0.0672895759344101, - -0.028591400012373924, - -0.05910041928291321, - -0.04063919931650162, - 0.0807579904794693, - -0.0106466393917799, - -0.09221473336219788, - -0.08951853215694427, - 0.018430430442094803, - 0.07097722589969635, - -0.014687201008200645, - -0.03409990295767784, - 0.006377875339239836, - 0.06148528680205345, - 0.032162778079509735, - 0.08445896208286285, - 0.06989485025405884, - 0.10910843312740326, - -0.028483934700489044, - 0.023875702172517776, - 0.03908916562795639, - 0.03176497668027878, - 0.03761683776974678, - -0.0023465966805815697, - 0.039592765271663666, - -0.06574079394340515, - -0.007427575532346964, - 0.010662117972970009, - -0.022269485518336296, - -0.09172341972589493, - -0.033294033259153366, - -0.044124770909547806, - -0.02916226163506508, - -0.001995379338040948, - -0.0143654216080904, - 0.018939625471830368, - 0.10067899525165558, - -0.027329163625836372, - 0.09213057160377502, - 0.05443928390741348, - 0.0037899818271398544, - 0.04963983595371246, - -0.09650826454162598, - -0.03462880477309227, - 0.034820307046175, - -0.0007875389419496059, - 0.004731725435703993, - 0.04835128039121628, - 0.024307332932949066, - -0.020640313625335693, - 0.07182465493679047, - 0.07269822061061859, - 0.002478731330484152, - 0.013228606432676315, - -0.06202029436826706, - 0.1436268836259842, - 0.11806733906269073, - -0.035913363099098206, - 0.0031225793063640594, - -0.018875202164053917, - 0.03541206941008568, - 0.04431717097759247, - -0.0552237369120121, - -0.0839335173368454, - -0.030153775587677956, - -0.028216522186994553, - -0.021700209006667137, - 0.056338679045438766, - 0.012501124292612076, - 0.012556970119476318, - 0.10519523918628693, - -0.07827557623386383, - -0.0943988561630249, - -0.001382332295179367, - 0.028694912791252136, - -0.06438609212636948, - 0.023066814988851547, - 0.09650695323944092, - 0.02172049880027771, - 0.022864725440740585, - 0.09543150663375854, - 0.019513897597789764, - 0.034896932542324066, - 0.02922985702753067, - -0.021459218114614487, - 0.009129984304308891, - 0.014786722138524055, - -0.029674747958779335, - 0.06844797730445862, - 0.04813861474394798, - 0.07747222483158112, - -0.02400597371160984, - 0.04565712809562683, - -0.07895905524492264, - 0.03376833349466324, - 0.06263545900583267, - -0.0058061107993125916, - -0.04849748685956001, - 0.015252277255058289, - -0.010260669514536858, - -0.09156184643507004, - 0.006445238366723061, - -0.022827867418527603, - 0.08660911023616791, - -0.03378603607416153, - -0.015216754749417305, - 0.1553623527288437, - 0.03669090196490288, - -0.013548744842410088, - -0.059314094483852386, - -0.027013130486011505, - 0.0441359281539917, - 0.03447284549474716, - -0.10293310880661011, - -0.0661337822675705, - -0.02860097587108612, - 0.024177582934498787, - 0.003979003056883812, - 0.08148729056119919, - 0.11319103837013245, - -0.0069936830550432205, - 0.029588159173727036, - -0.05135303735733032, - 0.0418066643178463, - -0.015039725229144096, - -0.013632766902446747, - -0.018243515864014626, - -0.09486951678991318, - -0.026181941851973534, - 0.07402196526527405, - -0.004380423575639725, - 0.0331728495657444, - -0.06885910779237747, - -0.07564035058021545, - -0.08704549074172974, - 0.02460172027349472, - 0.054089777171611786, - -0.05204082652926445, - 0.03461485356092453, - 0.05356509983539581, - -0.02620266191661358, - 0.010335616767406464, - 0.07561412453651428, - 0.07537376135587692, - -0.051287420094013214, - -0.00031730160117149353, - -0.08707383275032043, - 0.060790468007326126, - 0.09890241920948029, - -0.09302216023206711, - -0.049903638660907745, - -0.08977462351322174, - -0.023200221359729767, - 0.0029694996774196625, - -0.05973154306411743, - -0.004922495689243078, - 0.05704745650291443, - -0.00866637472063303, - -0.05818870663642883, - -0.14534473419189453, - 0.10099364817142487, - -0.03192056342959404, - 0.011476516723632812, - -0.05229166895151138, - 0.03170435130596161, - -0.010224081575870514, - 0.04247201606631279, - -0.07210371643304825, - 0.035147733986377716, - 0.03281755745410919, - 0.012498822063207626, - 0.05496523529291153, - 0.04321397840976715, - 0.06977403163909912, - -0.04002279415726662, - -0.016014492139220238, - -0.08187700808048248, - 0.09048968553543091, - -0.03173889219760895, - 0.1459461748600006, - 0.01020322646945715, - -0.001790856011211872, - -0.09119556844234467, - 0.048776544630527496, - -0.04592974856495857, - 0.04166581481695175, - 0.06384682655334473, - 0.0476040281355381, - 0.005869491025805473, - -0.04697089642286301, - 0.0986829400062561, - 0.03343397378921509, - -0.02489675022661686, - -0.07331164926290512, - -0.014144917018711567, - -0.0687505304813385, - 0.050350695848464966, - 0.014541254378855228, - -0.08110079914331436, - 0.02182883396744728, - 0.023041747510433197, - -0.013296023942530155, - 0.07973086088895798, - 0.09263253957033157, - 0.09798845648765564, - -0.07878242433071136 - ] - }, - "p244_290.wav": { - "name": "p244", - "embedding": [ - 0.01912044547498226, - 0.0878903716802597, - -0.00811822060495615, - 0.040054745972156525, - -0.05176994204521179, - 0.026453204452991486, - -0.029326923191547394, - 0.06288449466228485, - 0.03335327282547951, - 0.06359043717384338, - -0.0520898662507534, - 0.04585761949419975, - -0.061563968658447266, - -0.10855460166931152, - -0.010652425698935986, - 0.023728996515274048, - -0.005488347262144089, - 0.020646758377552032, - -0.03890529274940491, - -0.01703776977956295, - -0.04177787899971008, - -0.022052664309740067, - -0.04700027406215668, - 0.025646071881055832, - -0.05263756960630417, - 0.04717602580785751, - -0.033035993576049805, - -0.0008956827223300934, - -0.026933956891298294, - -0.04906585067510605, - 0.02629845216870308, - 0.05654216557741165, - -0.02185446210205555, - -0.039292111992836, - 0.04170616716146469, - -0.04133742302656174, - 0.008103480562567711, - -0.023746736347675323, - -0.044792115688323975, - -0.0015041893348097801, - -0.063213050365448, - 0.00797811895608902, - 0.015389461070299149, - -0.07636027783155441, - 0.002584769856184721, - 0.03233061358332634, - -0.011692564934492111, - -0.01648004725575447, - -0.036780282855033875, - 0.09442220628261566, - 0.0322970375418663, - 0.029101412743330002, - -0.028388291597366333, - -0.029950594529509544, - 0.12743638455867767, - 0.015334445051848888, - 0.021385349333286285, - -0.029812147840857506, - 0.012949611991643906, - 0.06365389376878738, - 0.009745093062520027, - -0.01222170889377594, - 0.0481518991291523, - 0.052945736795663834, - -0.0042460206896066666, - 0.0463312566280365, - 0.057978421449661255, - 0.10464777052402496, - -0.020650649443268776, - 0.007968008518218994, - 0.05429162085056305, - 0.0014821551740169525, - 0.053401075303554535, - 0.022862186655402184, - -0.02775970846414566, - 0.011058037169277668, - 0.00011264253407716751, - 0.02712939865887165, - -0.028745047748088837, - -0.03999347239732742, - 0.01725243777036667, - -0.000758882611989975, - 0.01597965508699417, - -0.042269542813301086, - -0.032369546592235565, - -0.03964819386601448, - 0.0617033913731575, - -0.0014846604317426682, - 0.06334895640611649, - -0.014688508585095406, - 0.04743838310241699, - 0.05074680224061012, - -0.05440659075975418, - -0.05539717525243759, - 0.014292231760919094, - -0.019001878798007965, - 0.03565326705574989, - 0.037062324583530426, - 0.009589990600943565, - 0.014036282896995544, - 0.06806677579879761, - -0.024226054549217224, - 0.05962487682700157, - 0.01211432833224535, - -0.07123999297618866, - -0.02635989338159561, - 0.03756067156791687, - 0.005959119647741318, - 0.024486029520630836, - 0.044524870812892914, - 0.03301968052983284, - 0.08831869065761566, - -0.04037364944815636, - -0.05762895196676254, - 0.030030623078346252, - 0.07834096252918243, - -0.06656120717525482, - 0.10810627043247223, - -0.021274428814649582, - 0.028830530121922493, - 0.07025730609893799, - -0.006297927349805832, - -0.001488884910941124, - 0.013544036075472832, - -0.0005233306437730789, - -0.033376362174749374, - 0.0672052726149559, - 0.03341102972626686, - -0.030123023316264153, - -0.033759087324142456, - 0.04925951734185219, - -0.023741915822029114, - -0.033747073262929916, - -0.043573372066020966, - 0.03504834324121475, - 0.008837351575493813, - 0.039331164211034775, - -0.02504708059132099, - -0.0018461518920958042, - 0.0803990587592125, - -0.0009807944297790527, - -0.03415236994624138, - -0.010165511630475521, - -0.04275501146912575, - 0.019379690289497375, - 0.03222106397151947, - 0.03502677381038666, - 0.06861163675785065, - -0.03326110169291496, - -0.06489211320877075, - -0.006306573748588562, - 0.03422148898243904, - -0.05326361954212189, - 0.08789268136024475, - 0.058206744492053986, - 0.01831907406449318, - 0.07299650460481644, - -0.03483293205499649, - -0.0014111967757344246, - -0.030852051451802254, - -0.08148300647735596, - -0.01032851543277502, - 0.01567525416612625, - -0.02900564856827259, - -0.03451034426689148, - -0.028528772294521332, - -0.007494870573282242, - 0.007547067478299141, - 0.022373061627149582, - 0.021143479272723198, - -0.01800907962024212, - 0.04096347093582153, - -0.0828053206205368, - -0.006824616342782974, - -0.0184059739112854, - -0.038303181529045105, - 0.04072409123182297, - 0.012901604175567627, - 0.0010232338681817055, - 0.022037165239453316, - 0.009273068979382515, - -0.0196218378841877, - -0.053866732865571976, - -0.08367647975683212, - 0.016084197908639908, - 0.027223750948905945, - 0.025060266256332397, - -0.01541376393288374, - -0.005240677855908871, - 0.04960779473185539, - 0.05163364112377167, - 0.011579295620322227, - 0.03604981675744057, - 0.07421388477087021, - -0.033744823187589645, - -0.0032753143459558487, - 0.027166450396180153, - 0.10652270913124084, - 0.03926441818475723, - -0.053613074123859406, - -0.09483854472637177, - -0.0335165411233902, - -0.036572933197021484, - 0.05009347200393677, - -0.022581521421670914, - 0.03593762218952179, - -0.0089015644043684, - 0.005714827217161655, - 0.020998116582632065, - -0.10319957137107849, - 0.020687537267804146, - 0.007287014275789261, - -0.014180734753608704, - -0.018811218440532684, - 0.008932719938457012, - 0.021662309765815735, - 0.04693171754479408, - -0.022302716970443726, - -0.021310104057192802, - 0.020492244511842728, - -0.0006692931056022644, - -0.0024574417620897293, - 0.04556262865662575, - 0.0514710433781147, - -0.0010628588497638702, - -0.01849389635026455, - -0.025267377495765686, - 0.04617158696055412, - 0.015502825379371643, - 0.05003879964351654, - 0.009656425565481186, - -0.008890802040696144, - -0.09754496812820435, - 0.06594467163085938, - -0.021181201562285423, - 0.06645216047763824, - -0.007990904152393341, - 0.0376305915415287, - 0.06180844083428383, - -0.00667180772870779, - 0.08812643587589264, - 0.005475944839417934, - -0.0222301222383976, - -0.044031497091054916, - -0.0431826077401638, - -0.02952864021062851, - -0.001858039409853518, - 0.05068175867199898, - -0.01804637908935547, - -0.03750092163681984, - 0.04238550737500191, - 0.016636352986097336, - 0.07106532156467438, - 0.07458914071321487, - 0.0646275132894516, - 0.0074406638741493225 - ] - }, - "p244_341.wav": { - "name": "p244", - "embedding": [ - 0.05144480988383293, - 0.09490710496902466, - -0.021923646330833435, - 0.025897063314914703, - -0.060403577983379364, - 0.07773204892873764, - -0.1412520408630371, - 0.13891853392124176, - -0.04217970371246338, - 0.1378546953201294, - -0.035827118903398514, - 0.11010695993900299, - -0.022878920659422874, - -0.17258340120315552, - -0.029567096382379532, - 0.07048855721950531, - -0.05807400494813919, - -0.04977872222661972, - -0.052923671901226044, - -0.009816604666411877, - 0.008188669569790363, - 0.015158360823988914, - 0.03498988598585129, - -0.00605994276702404, - 0.03965850546956062, - 0.06300187110900879, - -0.006520512513816357, - 0.055122967809438705, - 0.007679138332605362, - -0.06641988456249237, - -0.014704719185829163, - 0.08735961467027664, - -0.06784327328205109, - 0.017183993011713028, - 0.04393257945775986, - -0.01377885602414608, - -0.0021048171911388636, - -0.06173987686634064, - -0.014424381777644157, - -0.006023450754582882, - -0.034361060708761215, - 0.10261380672454834, - 0.02472495660185814, - -0.007815316319465637, - 0.01871519535779953, - 0.013764625415205956, - -0.017168574035167694, - -0.047201819717884064, - -0.1079639196395874, - 0.15566271543502808, - 0.06997188925743103, - 0.0003933088155463338, - -0.08531288057565689, - -0.07673226296901703, - 0.08558286726474762, - -0.0208512581884861, - -0.12377744913101196, - -0.07109367847442627, - 0.06526520103216171, - 0.1547544300556183, - -0.03256845101714134, - -0.025883059948682785, - 0.010721691884100437, - 0.12660090625286102, - 0.08642827719449997, - 0.08840705454349518, - 0.07699798047542572, - 0.11311851441860199, - -0.019651539623737335, - 0.026744019240140915, - 0.06717963516712189, - 0.05525387451052666, - 0.04959084466099739, - 0.014187723398208618, - 0.0288851261138916, - -0.03147173672914505, - -0.0007630875916220248, - -0.028616424649953842, - -0.018456537276506424, - -0.02608596906065941, - -0.021630095317959785, - 0.020860102027654648, - 0.005859169643372297, - 0.05097389221191406, - -0.008726393803954124, - 0.04270967096090317, - 0.034227192401885986, - -0.0370824933052063, - 0.07148225605487823, - 0.049353644251823425, - 0.013594419695436954, - 0.06155559420585632, - -0.09407760947942734, - -0.07176750898361206, - 0.028547782450914383, - 0.0036114000249654055, - 0.028942083939909935, - 0.05231490731239319, - 0.023434635251760483, - -0.007127637974917889, - 0.10949581861495972, - 0.046734586358070374, - -0.0178220197558403, - 0.015526052564382553, - -0.08812092244625092, - 0.14471960067749023, - 0.05609337240457535, - -0.014147101901471615, - 0.04629359394311905, - -0.036612898111343384, - 0.04154061898589134, - 0.060822244733572006, - -0.12675780057907104, - -0.0879315584897995, - 0.02080797404050827, - -0.003991410601884127, - -0.03631272166967392, - 0.11920009553432465, - 0.01180082093924284, - 0.045656461268663406, - 0.09535133838653564, - -0.08752863854169846, - -0.050203315913677216, - 0.007991038262844086, - 0.05196003243327141, - -0.08059116452932358, - 0.04225955903530121, - 0.06067333742976189, - -0.017503179609775543, - 0.02666880004107952, - 0.09904748201370239, - 0.012025121599435806, - 0.009307839907705784, - 0.027502041310071945, - -0.04676958918571472, - 0.029968073591589928, - -0.011394794099032879, - -0.002331534866243601, - 0.039806317538022995, - 0.017847564071416855, - 0.06357142329216003, - -0.01853979378938675, - -0.020683813840150833, - -0.11147885024547577, - -0.0007262104190886021, - 0.03840206190943718, - 0.08944395929574966, - -0.029955651611089706, - -0.0004986696876585484, - -0.02589883655309677, - -0.05605993792414665, - 0.012824616394937038, - -0.004544756840914488, - 0.08468576520681381, - -0.011032759211957455, - -0.015628637745976448, - 0.13016214966773987, - 0.02594016119837761, - 0.009066566824913025, - -0.04820541664958, - -0.011101684533059597, - 0.01899886690080166, - 0.07315941154956818, - -0.0899038016796112, - -0.05063747987151146, - 0.01304718665778637, - 0.036304451525211334, - -0.009482748806476593, - 0.07670986652374268, - 0.06042204797267914, - 0.01884995773434639, - 0.012809822335839272, - -0.04806660860776901, - 0.016181349754333496, - -0.059673674404621124, - -0.06470909714698792, - 0.0014662076719105244, - -0.023437581956386566, - -0.051634907722473145, - 0.08094987273216248, - 0.0331161692738533, - 0.06778091937303543, - -0.025496773421764374, - -0.0826568678021431, - -0.08372054249048233, - 0.055319420993328094, - 0.05553797632455826, - -0.034959372133016586, - 0.027661526575684547, - 0.0661623403429985, - -0.0268266424536705, - 0.030382946133613586, - 0.06150016188621521, - 0.09969155490398407, - -0.05662955343723297, - 0.01419757679104805, - -0.08851909637451172, - 0.07444809377193451, - 0.08771632611751556, - -0.10171777009963989, - -0.06157103180885315, - -0.010723607614636421, - -0.055419087409973145, - 0.0169186070561409, - -0.04167061299085617, - 0.022828031331300735, - 0.056738466024398804, - -0.018225129693746567, - -0.10133303701877594, - -0.11747681349515915, - 0.09777864813804626, - -0.0977693498134613, - 0.01351673062890768, - -0.07692878693342209, - 0.03325483947992325, - 0.07665561139583588, - 0.055152133107185364, - -0.028388746082782745, - -0.005988146178424358, - 0.04631059616804123, - -0.020998038351535797, - 0.012032933533191681, - 0.0781719982624054, - 0.029342520982027054, - -0.10526087880134583, - -0.00933622196316719, - -0.0654182881116867, - 0.04446505755186081, - -0.030080342665314674, - 0.16331614553928375, - 0.011038949713110924, - -0.04740135371685028, - -0.09075221419334412, - 0.01164920348674059, - -0.04199260473251343, - 0.06427827477455139, - 0.028239388018846512, - 0.07292013615369797, - 0.06301284581422806, - -0.03558768332004547, - 0.12175273895263672, - 0.05364023149013519, - -0.03373897075653076, - -0.06901658326387405, - -0.05237111449241638, - -0.04455861821770668, - 0.05221952497959137, - 0.0010546408593654633, - -0.10342967510223389, - 0.004786589182913303, - 0.03170613944530487, - -0.02323976904153824, - 0.06615154445171356, - 0.1356145441532135, - 0.08601370453834534, - -0.10246265679597855 - ] - }, - "p244_296.wav": { - "name": "p244", - "embedding": [ - 0.041318681091070175, - 0.0945296585559845, - -0.026775799691677094, - 0.045866094529628754, - -0.055853065103292465, - 0.04816087707877159, - -0.10735886543989182, - 0.13000677525997162, - -0.04410688579082489, - 0.13508228957653046, - -0.06848134845495224, - 0.10222294181585312, - -0.006338165141642094, - -0.1870807558298111, - -0.03953560069203377, - 0.03323279321193695, - -0.07274294644594193, - -0.029713099822402, - -0.0779244601726532, - -0.0008681975305080414, - 0.05867717042565346, - 0.04237307235598564, - 0.014544080942869186, - -0.0234934464097023, - 0.006065462715923786, - 0.044528622180223465, - 0.019178733229637146, - 0.056521471589803696, - 0.058167532086372375, - -0.04547460377216339, - -0.0328659862279892, - 0.12109345197677612, - -0.029036706313490868, - 0.03205665200948715, - 0.05403066426515579, - -0.02390475943684578, - -0.007008626591414213, - -0.037837665528059006, - -0.04116789251565933, - 0.030151614919304848, - -0.054543085396289825, - 0.06686088442802429, - 0.0665142685174942, - 0.004767619073390961, - 0.056362103670835495, - 0.015434455126523972, - -0.047723133116960526, - -0.05780066177248955, - -0.07999444007873535, - 0.18002712726593018, - 0.08711431920528412, - -0.02807789295911789, - -0.05149059370160103, - -0.047855574637651443, - 0.10140743106603622, - -0.0037548760883510113, - -0.15592895448207855, - -0.04236697033047676, - 0.10501722246408463, - 0.15432967245578766, - -0.016631536185741425, - 0.0028191402088850737, - 0.00797203928232193, - 0.15575803816318512, - 0.05745095759630203, - 0.0968722477555275, - 0.059764306992292404, - 0.11765952408313751, - 0.011920973658561707, - 0.05072137713432312, - 0.06883751600980759, - 0.06562920659780502, - 0.005385405849665403, - -0.026856614276766777, - 0.03951319679617882, - -0.006331588141620159, - -0.0206725113093853, - -0.005500771105289459, - -0.030993448570370674, - 0.022903921082615852, - -0.0052184490486979485, - 0.014078463427722454, - 0.0032910448499023914, - 0.014566889964044094, - -0.0353395976126194, - 0.07072412967681885, - 0.014765985310077667, - 0.005105732940137386, - 0.043322768062353134, - 0.04887993633747101, - 0.025364618748426437, - 0.04704684019088745, - -0.04609707370400429, - -0.11718489974737167, - -0.014623098075389862, - 0.001542488345876336, - 0.02529967576265335, - 0.06292904913425446, - 0.03873699903488159, - -0.015730854123830795, - 0.11337673664093018, - 0.039424363523721695, - -0.041698943823575974, - 0.029235277324914932, - -0.09620600938796997, - 0.12352906912565231, - 0.0674699917435646, - 0.008962842635810375, - 0.03628653660416603, - -0.05478410795331001, - 0.0964847132563591, - 0.04554268717765808, - -0.13312795758247375, - -0.045462604612112045, - 0.06395375728607178, - -0.003645610297098756, - -0.02261500246822834, - 0.1143454983830452, - 0.00031702342675998807, - 0.010378554463386536, - 0.09764956682920456, - -0.06914980709552765, - -0.04608475789427757, - -0.03610144555568695, - 0.05797521770000458, - -0.08386005461215973, - 0.046092256903648376, - 0.009382068179547787, - -0.047608595341444016, - -0.0012762827100232244, - 0.08843357861042023, - -0.012790529057383537, - 0.013585151173174381, - 0.022525502368807793, - -0.04850340262055397, - 0.07277356088161469, - -0.04308157414197922, - 0.023064637556672096, - 0.03960254788398743, - 0.04245040938258171, - 0.0598858967423439, - -0.022455569356679916, - -0.044262465089559555, - -0.0901675894856453, - 0.023209083825349808, - 0.014932384714484215, - 0.07892078161239624, - 0.004284909460693598, - -0.0022143537644296885, - -0.04088211432099342, - -0.08096452057361603, - 0.01720733940601349, - -0.03373314440250397, - 0.07582180947065353, - -0.021895410493016243, - -0.030406001955270767, - 0.10198938101530075, - -0.007291710469871759, - 0.0030485086608678102, - -0.05230522155761719, - -0.024559469893574715, - 0.015485113486647606, - 0.04864849895238876, - -0.09028993546962738, - -0.04405295476317406, - 0.024547187611460686, - 0.007781818974763155, - -0.010542208328843117, - 0.005231906659901142, - 0.017798909917473793, - 0.0024374243803322315, - 0.0523248016834259, - -0.08068772405385971, - 0.010028494521975517, - -0.12339293211698532, - -0.05186411365866661, - -0.021564709022641182, - -0.0227389857172966, - -0.016183309257030487, - 0.07365275919437408, - 0.0012940015876665711, - 0.017588775604963303, - 0.03823458403348923, - -0.08692120015621185, - -0.06424491107463837, - 0.08963587880134583, - 0.06753387302160263, - 0.002155711641535163, - 0.06636876612901688, - 0.06379912048578262, - -0.043997108936309814, - 0.03490740805864334, - 0.049191415309906006, - 0.09566248953342438, - -0.008505954407155514, - -0.0019705158192664385, - -0.08357450366020203, - 0.08678137511014938, - 0.06673752516508102, - -0.11800973117351532, - -0.07379437237977982, - -0.020728258416056633, - -0.05262252315878868, - 0.007787683513015509, - -0.029094474390149117, - 0.0003525139472912997, - 0.03164540231227875, - 0.015931393951177597, - -0.10209763795137405, - -0.07028472423553467, - 0.08402393013238907, - -0.1088315024971962, - -0.01746816374361515, - -0.07123661041259766, - 0.026188498362898827, - 0.12433307617902756, - 0.04734567925333977, - -0.029640348628163338, - -0.0016770545626059175, - 0.0705217719078064, - -0.07041095197200775, - -0.017768193036317825, - 0.02826724946498871, - 0.020265942439436913, - -0.10742716491222382, - 0.006870593409985304, - -0.05989695340394974, - 0.037293531000614166, - -0.07067269831895828, - 0.13812874257564545, - 0.015748854726552963, - -0.0676906406879425, - -0.08093681931495667, - 0.06581062823534012, - -0.019399330019950867, - 0.044615477323532104, - 0.05384982377290726, - 0.05743812769651413, - 0.04006803035736084, - -0.07658716291189194, - 0.1392107456922531, - 0.021193357184529305, - -0.02970031090080738, - -0.06526640057563782, - -0.0215093232691288, - -0.03709458187222481, - 0.016958212479948997, - 0.0481191910803318, - -0.08683504909276962, - -0.02103733830153942, - 0.024913201108574867, - -0.06485319137573242, - 0.07178670167922974, - 0.13823001086711884, - 0.07610105723142624, - -0.10873140394687653 - ] - }, - "p244_281.wav": { - "name": "p244", - "embedding": [ - 0.04316239804029465, - 0.09389373660087585, - -0.004338981583714485, - 0.02047625370323658, - -0.050993047654628754, - 0.068476602435112, - -0.1208743304014206, - 0.12484188377857208, - -0.07613775134086609, - 0.1500626802444458, - -0.11026425659656525, - 0.1104574203491211, - -0.04054606705904007, - -0.18952953815460205, - -0.0257693063467741, - 0.05206223577260971, - -0.0442204549908638, - 0.0008913697674870491, - -0.04847009479999542, - -0.03451327979564667, - 0.04897636920213699, - 0.036467544734478, - 0.025049470365047455, - -0.004559813067317009, - 0.02676309645175934, - 0.06207616627216339, - -0.01977812498807907, - 0.016210488975048065, - 0.004305846989154816, - -0.07645659148693085, - -0.049201600253582, - 0.11599043011665344, - -0.02723785862326622, - 0.0043502310290932655, - 0.048825591802597046, - -0.0014877127250656486, - -0.008433063514530659, - -0.07079911231994629, - -0.024381348863244057, - -0.008154544979333878, - -0.053825974464416504, - 0.04391765967011452, - 0.01588037610054016, - -0.022000059485435486, - 0.04293741658329964, - 0.012471312656998634, - -0.020323943346738815, - -0.04164234548807144, - -0.08783012628555298, - 0.1584375947713852, - 0.06209580972790718, - 0.003575683571398258, - -0.06467777490615845, - -0.07489050924777985, - 0.12742935121059418, - 0.0025154389441013336, - -0.12956053018569946, - -0.01891259476542473, - 0.09117413312196732, - 0.17949531972408295, - -0.03186075761914253, - -0.023736614733934402, - 0.0336587093770504, - 0.10539084672927856, - 0.0021025659516453743, - 0.10217355936765671, - 0.06640615314245224, - 0.08427748084068298, - 0.01719059981405735, - 0.042019739747047424, - 0.05327766388654709, - 0.0626484751701355, - 0.046641625463962555, - -0.05263303965330124, - 0.006512587424367666, - 0.0006292110774666071, - -0.048804864287376404, - 0.008333852514624596, - -0.03805795684456825, - -0.026150163263082504, - -0.01371549442410469, - -0.01841064728796482, - 0.015263654291629791, - -0.032870713621377945, - -0.03372101113200188, - 0.03469639644026756, - 0.024499110877513885, - -0.015447386540472507, - 0.0741010457277298, - 0.02746744453907013, - 0.004795158747583628, - 0.04854855313897133, - -0.055203042924404144, - -0.09991756826639175, - 0.021872874349355698, - 0.021441973745822906, - -0.010287429206073284, - 0.07411578297615051, - 0.058819130063056946, - -0.028419315814971924, - 0.1258266568183899, - 0.044557999819517136, - 0.027902871370315552, - 0.020803408697247505, - -0.10969652235507965, - 0.11149384081363678, - 0.10121595114469528, - -0.017748437821865082, - 0.060041315853595734, - -0.04024200141429901, - 0.10059916973114014, - 0.09553758800029755, - -0.160922110080719, - -0.05883362144231796, - 0.0019642841070890427, - -0.00855749100446701, - -3.0842842534184456e-05, - 0.10438629984855652, - -0.014789480715990067, - 0.015048881061375141, - 0.10627907514572144, - -0.10361991077661514, - -0.06523903459310532, - -0.036818645894527435, - 0.04138176143169403, - -0.08383512496948242, - 0.06932668387889862, - 0.05693099647760391, - -0.021924462169408798, - 0.01642550528049469, - 0.07105615735054016, - -0.03741040453314781, - -0.0012498274445533752, - 0.005890397354960442, - -0.05652263015508652, - 0.010543439537286758, - -0.059381477534770966, - -0.0016308611957356334, - 0.05255758389830589, - 0.048733849078416824, - 0.041055403649806976, - 0.00028462009504437447, - -0.03760337084531784, - -0.0806020051240921, - 0.007694039959460497, - 0.03671346604824066, - 0.05928145349025726, - 0.008565877564251423, - -0.007897469215095043, - -0.03692619130015373, - -0.07190090417861938, - 0.03099704720079899, - -0.034588899463415146, - 0.09157770127058029, - -0.00566551648080349, - 0.017080388963222504, - 0.0929098129272461, - 0.04333870857954025, - -0.01783258095383644, - -0.08507756888866425, - -0.039767101407051086, - 0.020575709640979767, - 0.03145882859826088, - -0.08532088249921799, - -0.06350696086883545, - -0.007995542138814926, - 0.020544854924082756, - -0.025409091264009476, - 0.041259557008743286, - 0.03125467151403427, - 0.021289899945259094, - 0.03556213900446892, - -0.07972882688045502, - 0.028546597808599472, - -0.11305233836174011, - -0.06000962853431702, - 0.004138820804655552, - -0.0448276624083519, - -0.0060881758108735085, - 0.09007851779460907, - 0.005987387616187334, - -0.004957599099725485, - -0.025380559265613556, - -0.06755310297012329, - -0.06653745472431183, - 0.05965537950396538, - 0.05057786777615547, - 0.009551698341965675, - 0.04264432191848755, - 0.04539789259433746, - -0.03645608201622963, - 0.06734208762645721, - 0.05736595019698143, - 0.11864569783210754, - -0.009800620377063751, - 0.020939519628882408, - -0.061349056661129, - 0.08253012597560883, - 0.0883067324757576, - -0.07265673577785492, - -0.10535315424203873, - -0.05579511076211929, - -0.06478118151426315, - 0.07777097821235657, - -0.012174505740404129, - -0.02264985628426075, - 0.0001900692004710436, - -0.030676869675517082, - -0.08952242136001587, - -0.06041882559657097, - 0.09801868349313736, - -0.038460567593574524, - -0.0325746014714241, - -0.08659961819648743, - 0.05395590141415596, - 0.08195780217647552, - 0.025128480046987534, - -0.024774737656116486, - 0.008562793023884296, - 0.05355486273765564, - -0.07659287750720978, - -0.006160122808068991, - 0.04255946725606918, - 0.017358507961034775, - -0.08650492131710052, - 0.007121242582798004, - -0.09494180232286453, - 0.07364729791879654, - -0.058140769600868225, - 0.15665312111377716, - -0.011113450862467289, - -0.05189599096775055, - -0.08183331787586212, - 0.07581934332847595, - -0.010511255823075771, - 0.03715214133262634, - 0.05822507292032242, - 0.06378577649593353, - 0.04279954731464386, - -0.08393155038356781, - 0.09939467161893845, - 0.00495325680822134, - -0.0136440210044384, - -0.04334452748298645, - -0.04805696755647659, - -0.046550579369068146, - -0.015952609479427338, - -0.024811657145619392, - -0.10690297186374664, - -0.00766246672719717, - 0.00816418882459402, - 0.011764800176024437, - 0.07797898352146149, - 0.1134762093424797, - 0.051282189786434174, - -0.10418900102376938 - ] - }, - "p244_200.wav": { - "name": "p244", - "embedding": [ - 0.024939430877566338, - 0.07433727383613586, - -0.02525252290070057, - -0.02982010878622532, - -0.04866282641887665, - 0.03008236363530159, - -0.10671471804380417, - 0.08964802324771881, - -0.02626296691596508, - 0.13251730799674988, - -0.031405266374349594, - 0.12363055348396301, - -0.012178616598248482, - -0.08940556645393372, - 0.0018033534288406372, - 0.03925182297825813, - -0.02653134986758232, - -0.018556490540504456, - 0.026375677436590195, - -0.09278352558612823, - 0.01694541983306408, - 0.012202143669128418, - 0.010271896608173847, - -0.02886061742901802, - 0.03657793253660202, - 0.08312389999628067, - -0.010484747588634491, - -0.015864841639995575, - -0.0163906030356884, - -0.07271693646907806, - -0.023432716727256775, - 0.07284985482692719, - -0.0495089590549469, - -0.036293063312768936, - 0.03591129183769226, - -0.017441047355532646, - 0.012030897662043571, - -0.030306216329336166, - 0.011072250083088875, - 0.050925251096487045, - -0.05886799469590187, - 0.09645560383796692, - 0.015479094348847866, - -0.012519692070782185, - 0.03595249354839325, - -0.0164759811013937, - -0.03039535880088806, - 0.04172850400209427, - -0.04935479164123535, - 0.09674926102161407, - 0.048564258962869644, - -0.000288613693555817, - -0.0673631876707077, - -0.014889011159539223, - 0.0623813234269619, - 6.916932761669159e-05, - -0.08723580837249756, - 0.014711225405335426, - -0.008832443505525589, - 0.08853672444820404, - 0.0005101468414068222, - -0.05904746800661087, - 0.03553440421819687, - 0.07162363827228546, - 0.01699855551123619, - 0.019998032599687576, - 0.07644030451774597, - 0.07371202111244202, - -0.024670282378792763, - -0.013962291181087494, - 0.050953831523656845, - 0.09373202919960022, - 0.042279232293367386, - -0.028921708464622498, - 0.029026946052908897, - -0.012677819468080997, - -0.01491071842610836, - -0.053724255412817, - -0.02286776900291443, - -0.04822743311524391, - -0.07667197287082672, - -0.008525769226253033, - 0.00692553399130702, - 0.06857479363679886, - -0.0091291144490242, - 0.0035489723086357117, - 0.05871639400720596, - -0.03512198105454445, - 0.043976426124572754, - 0.040980033576488495, - -0.004412780050188303, - 0.01763414777815342, - -0.09585338830947876, - -0.020235881209373474, - 0.0206478089094162, - -0.020029375329613686, - 0.055878497660160065, - 0.06788526475429535, - 0.026739640161395073, - 0.018899738788604736, - 0.08721262216567993, - 0.0679880827665329, - 0.024675853550434113, - -0.04514288902282715, - -0.06802409142255783, - 0.11047828197479248, - 0.10541452467441559, - -0.06352011114358902, - 0.02776617370545864, - 0.029069572687149048, - 0.028467632830142975, - -0.019322458654642105, - -0.1172647774219513, - -0.04296399652957916, - -0.017716901376843452, - 0.05623961612582207, - 0.028697222471237183, - 0.09767939895391464, - 0.014171984046697617, - 0.0632934719324112, - 0.0728757306933403, - -0.015174215659499168, - -0.043012503534555435, - -0.05897904187440872, - 0.035041432827711105, - -0.0940159261226654, - 0.08481593430042267, - 0.06827917695045471, - 0.0398956835269928, - 0.027891317382454872, - 0.07555405795574188, - 0.020095162093639374, - -0.001981164328753948, - -0.03519681468605995, - -0.005365423858165741, - 0.004899994470179081, - 0.0011436042841523886, - 0.05051884427666664, - 0.0682157501578331, - 0.006879162043333054, - 0.10563625395298004, - 0.03429514169692993, - 0.02302711457014084, - -0.07805975526571274, - 0.03918889909982681, - 0.013640772551298141, - 0.02186778001487255, - -0.040986474603414536, - -0.05063813924789429, - 0.01307217963039875, - -0.05762668699026108, - -0.03132152184844017, - 0.012684009969234467, - 0.08698233962059021, - -0.0092921182513237, - -0.00035212747752666473, - 0.09546104073524475, - 0.048112861812114716, - -0.014029380865395069, - 0.026199499145150185, - -0.027232758700847626, - -0.02722012996673584, - 0.07394665479660034, - -0.1244584321975708, - -0.08965231478214264, - -0.017049642279744148, - 0.023505130782723427, - 0.024891991168260574, - 0.06786487996578217, - 0.09854506701231003, - -0.023347780108451843, - 0.03873459994792938, - 0.002268165349960327, - 0.007273775991052389, - -0.052528440952301025, - -0.05805787444114685, - -0.04761459678411484, - -0.07977532595396042, - -0.08394771814346313, - 0.06359367072582245, - -0.021463530138134956, - 0.07687333971261978, - -0.019330628216266632, - -0.030743122100830078, - -0.05443199723958969, - 0.022308409214019775, - 0.015683092176914215, - -0.039642155170440674, - 0.005122012458741665, - 0.09998506307601929, - 0.022308651357889175, - 0.001636601984500885, - 0.04902666062116623, - 0.06823647022247314, - -0.07573557645082474, - 0.019600939005613327, - -0.06206582486629486, - 0.08165790140628815, - 0.06261108070611954, - -0.033628933131694794, - -0.06303587555885315, - -0.08612208068370819, - -0.04926425963640213, - 0.06854651123285294, - -0.015825580805540085, - 0.001919277012348175, - 0.004753971006721258, - -0.02591554820537567, - -0.05505221709609032, - -0.06278872489929199, - 0.0532737672328949, - -0.042514581233263016, - -0.0005053229979239404, - -0.04744567722082138, - 0.008204679004848003, - 0.025649558752775192, - 0.06280621141195297, - -0.04345583915710449, - 0.05438661575317383, - 0.025178682059049606, - -0.018067140132188797, - 0.021471034735441208, - 0.058836158365011215, - 0.03464612364768982, - -0.03089158982038498, - -0.05643361061811447, - -0.06605249643325806, - 0.058067843317985535, - -0.046560630202293396, - 0.06214062124490738, - 0.026599962264299393, - -0.044281624257564545, - -0.043504875153303146, - 0.0005766376852989197, - -0.023025842383503914, - 0.022232720628380775, - 0.08538094162940979, - 0.07625876367092133, - 0.022420961409807205, - -0.014766862615942955, - 0.07176991552114487, - 0.03368942439556122, - 0.0020218826830387115, - -0.033641137182712555, - -0.009077683091163635, - -0.020941833034157753, - 0.03228991478681564, - 0.053042322397232056, - -0.09055463969707489, - 0.05898561328649521, - 0.00012491096276789904, - 0.022904491052031517, - 0.05739465355873108, - 0.04272972792387009, - 0.052329860627651215, - -0.07928024232387543 - ] - }, - "p244_099.wav": { - "name": "p244", - "embedding": [ - 0.04797389730811119, - 0.05731881782412529, - -0.01664837822318077, - 0.06621331721544266, - -0.037036310881376266, - 0.04248513653874397, - -0.09955631196498871, - 0.09833134710788727, - -0.028889445587992668, - 0.1185491755604744, - -0.08084610104560852, - 0.12563496828079224, - -0.04067962244153023, - -0.12601245939731598, - 0.020635247230529785, - 0.03957397863268852, - -0.0029155127704143524, - -0.018910743296146393, - -0.03386684134602547, - 0.003915635868906975, - 0.018154732882976532, - 0.024123037233948708, - 0.08103647828102112, - -0.04928715154528618, - 0.01759207621216774, - 0.06991182267665863, - 0.019663583487272263, - 0.07400402426719666, - 0.029341569170355797, - -0.07665659487247467, - -0.03882969543337822, - 0.06719779968261719, - -0.061870746314525604, - -0.006127007771283388, - 0.035242341458797455, - -0.0017320187762379646, - -0.01734486222267151, - -0.06741787493228912, - -0.014015083201229572, - 0.005804424174129963, - -0.06314443796873093, - 0.06655818223953247, - -0.011562912724912167, - -0.06722623109817505, - 0.029264191165566444, - 0.0032405396923422813, - -0.0038957998622208834, - -0.012525351718068123, - -0.12379302084445953, - 0.12770959734916687, - 0.034488823264837265, - 0.017717232927680016, - -0.05976395308971405, - -0.08137929439544678, - 0.08960846066474915, - 0.017543073743581772, - -0.07438570261001587, - -0.04093882441520691, - 0.0653700977563858, - 0.11880487203598022, - -0.033533886075019836, - -0.029918277636170387, - 0.04755759611725807, - 0.06378337740898132, - 0.1010880395770073, - 0.06463412195444107, - 0.07664380967617035, - 0.11635836958885193, - 0.0021344833076000214, - 0.024340124800801277, - 0.032780971378088, - 0.0974268764257431, - 0.009732979349792004, - 0.03125299885869026, - -0.013230005279183388, - 0.03494032844901085, - -0.036179449409246445, - 0.007988890632987022, - -0.005469565745443106, - -0.03135570511221886, - 0.026901038363575935, - -0.030528370290994644, - 0.03191215917468071, - 0.012297059409320354, - -0.03444536775350571, - 0.06359434872865677, - 0.03217943012714386, - -0.02028823085129261, - 0.05408889055252075, - -0.04371800273656845, - -0.020244712010025978, - 0.046688586473464966, - -0.08195452392101288, - -0.07157929986715317, - 0.0015675760805606842, - 0.011018885299563408, - 0.005806446075439453, - 0.08384741842746735, - 0.0452895313501358, - -0.02232355624437332, - 0.14760661125183105, - 0.04032951965928078, - -0.011120690032839775, - 0.01873120665550232, - -0.023098144680261612, - 0.10003713518381119, - 0.08632374554872513, - -0.014551489613950253, - 0.03517834469676018, - -0.0368342250585556, - 0.05442814156413078, - 0.05583671107888222, - -0.12702547013759613, - -0.0734264925122261, - 0.012456387281417847, - -0.006074516102671623, - -0.002131884451955557, - 0.10714790225028992, - -0.0018328316509723663, - 0.029803579673171043, - 0.12262587249279022, - -0.11412858963012695, - -0.05872868373990059, - 0.0019734473899006844, - 0.0458216667175293, - -0.04639827832579613, - 0.05771676450967789, - 0.05319635942578316, - -0.013182412832975388, - -0.0181103702634573, - 0.0763944685459137, - -0.024806607514619827, - -0.0013747243210673332, - 0.030301911756396294, - -0.0450468584895134, - 0.03634897619485855, - -0.05253252759575844, - -0.02253030613064766, - 0.09377595037221909, - 0.025862909853458405, - 0.0702534019947052, - -0.04127182438969612, - -0.024843038991093636, - -0.1249043419957161, - 0.03717726096510887, - 0.04913254454731941, - 0.06471754610538483, - -0.039670512080192566, - -0.05141894146800041, - -0.06116370111703873, - -0.07510469853878021, - 0.03804895281791687, - -0.008929936215281487, - 0.07653331756591797, - -0.03723600506782532, - 0.026008635759353638, - 0.0677201971411705, - -0.0020098406821489334, - -0.017148375511169434, - -0.05122039467096329, - -0.07550272345542908, - -0.008807705715298653, - 0.025530848652124405, - -0.05315689742565155, - -0.08590848743915558, - -0.04814942553639412, - 0.017998334020376205, - -0.03655826300382614, - 0.04605000466108322, - 0.018693581223487854, - 0.0278000608086586, - 0.011537164449691772, - -0.02198604680597782, - -0.010920695960521698, - -0.06340960413217545, - -0.03395809605717659, - -0.03288775309920311, - 0.009680969640612602, - -0.01693061739206314, - 0.08156916499137878, - 0.029080234467983246, - 0.06477776169776917, - -0.02653038315474987, - -0.04795694723725319, - -0.09764037281274796, - 0.053057290613651276, - 0.029055697843432426, - -0.0038898885250091553, - 0.046625442802906036, - 0.08647708594799042, - -0.02352616935968399, - 0.02273315191268921, - 0.03572075068950653, - 0.052214041352272034, - 0.0035590827465057373, - -0.008618451654911041, - -0.06136263906955719, - 0.11565394699573517, - 0.10002350807189941, - -0.06544682383537292, - -0.04990899935364723, - -0.03754248097538948, - -0.09936943650245667, - 0.06782529503107071, - -0.03666696697473526, - -0.010957189835608006, - 0.047450751066207886, - -0.04349039867520332, - -0.09827381372451782, - -0.08476640284061432, - 0.0804053246974945, - -0.03720587491989136, - -0.02907801792025566, - -0.07870368659496307, - 0.009352538734674454, - 0.058842990547418594, - 0.06708842515945435, - 0.011715766042470932, - 0.01123451255261898, - 0.03538103401660919, - -0.03175191953778267, - 0.019035685807466507, - 0.11148630082607269, - 0.010102298110723495, - -0.08917774260044098, - -0.02202148549258709, - -0.059331461787223816, - 0.05914332717657089, - -0.048362839967012405, - 0.10305222868919373, - 0.0019009602256119251, - -0.020299125462770462, - -0.07116810977458954, - 0.05938335880637169, - -0.031602777540683746, - 0.05474865436553955, - 0.03143714740872383, - 0.034149542450904846, - 0.03435913473367691, - -0.09433424472808838, - 0.1179744154214859, - 0.032009437680244446, - -0.02853197604417801, - -0.06957449018955231, - -0.050554729998111725, - -0.042635612189769745, - 0.02992558665573597, - 0.029597483575344086, - -0.07063183188438416, - -0.0011022929102182388, - 0.016902685165405273, - -0.02418183907866478, - 0.03027252107858658, - 0.1287989318370819, - 0.048080917447805405, - -0.07848779857158661 - ] - }, - "p244_050.wav": { - "name": "p244", - "embedding": [ - 0.05023301765322685, - 0.08407358825206757, - 0.012249777093529701, - -0.004582732915878296, - 0.00921735167503357, - 0.03914384916424751, - -0.1385028064250946, - 0.10706543177366257, - -0.038663528859615326, - 0.13633409142494202, - -0.10946248471736908, - 0.10321488231420517, - -0.06059561297297478, - -0.16560634970664978, - -0.03220677375793457, - 0.03134256973862648, - -0.012396692298352718, - 0.007105602882802486, - -0.009908203966915607, - -0.027424683794379234, - 0.04879109188914299, - 0.032814767211675644, - 0.0404229611158371, - -0.016135631129145622, - -0.02184418961405754, - 0.06487292796373367, - 0.001284771948121488, - 0.03454388305544853, - 0.024741049855947495, - -0.0221596360206604, - 0.007210791110992432, - 0.07492826879024506, - -0.014464574865996838, - 0.023417605087161064, - 0.047493986785411835, - 0.03747191280126572, - -0.028197024017572403, - -0.043357040733098984, - -0.00019876348960679024, - 0.0013277034740895033, - -0.05088428780436516, - 0.050801992416381836, - 0.006723180413246155, - -0.01704547181725502, - 0.07095968723297119, - -0.01579451374709606, - -0.01814933679997921, - -0.016627049073576927, - -0.08284677565097809, - 0.1097920835018158, - 0.0793813094496727, - 0.030496686697006226, - -0.06401565670967102, - -0.022432729601860046, - 0.09402446448802948, - -0.02061808668076992, - -0.10900342464447021, - -0.04879279062151909, - 0.07701753079891205, - 0.14399832487106323, - -0.04000835120677948, - -0.039612721651792526, - 0.0062844278290867805, - 0.06933045387268066, - -0.0021418731193989515, - 0.08384978026151657, - 0.11210405826568604, - 0.07143969088792801, - 0.0017284353962168097, - 0.01101828645914793, - 0.01896217092871666, - 0.056189291179180145, - 0.041943322867155075, - -0.03135531395673752, - 0.011549843475222588, - -0.01569194719195366, - -0.018923219293355942, - 0.023408878594636917, - -0.02063116803765297, - -0.04125453904271126, - -0.030472127720713615, - -0.021046843379735947, - -0.023883666843175888, - -0.008352704346179962, - -0.018687037751078606, - 0.019816428422927856, - 0.03232010453939438, - -0.01079557090997696, - 0.050949014723300934, - 0.0433989092707634, - -0.005060452502220869, - 0.024456534534692764, - -0.04327687621116638, - -0.061716478317976, - 0.0017756118904799223, - 0.007055922411382198, - -0.019221888855099678, - 0.07131462544202805, - 0.035756729543209076, - 0.01814980059862137, - 0.10414302349090576, - 0.023390082642436028, - -0.009977656416594982, - 0.002370603382587433, - -0.09756433218717575, - 0.09115295112133026, - 0.09864702075719833, - -0.04001914709806442, - 0.03529156744480133, - -0.05400681495666504, - 0.02995765022933483, - 0.07381685078144073, - -0.09159816801548004, - -0.026553085073828697, - 0.024876292794942856, - 0.03304285556077957, - 0.025642594322562218, - 0.09719684720039368, - 0.002858811989426613, - -0.0025673508644104004, - 0.11778514087200165, - -0.06069906800985336, - -0.08164152503013611, - -0.050629623234272, - 0.023459255695343018, - -0.06639887392520905, - 0.07500357180833817, - 0.0432649664580822, - 0.0249970443546772, - 0.007935889065265656, - 0.0689091831445694, - -0.003879968076944351, - -0.003371685743331909, - -0.03303280472755432, - -0.03112868033349514, - 0.005660293623805046, - -0.06665004789829254, - -0.0003721409884747118, - 0.03621627390384674, - 0.045871801674366, - 0.0525544099509716, - 0.03317507728934288, - -0.03997926786541939, - -0.08191762864589691, - -0.009530076757073402, - 0.05157766863703728, - 0.042967699468135834, - -0.02040005475282669, - -0.03236093372106552, - -0.04035399481654167, - -0.04318874701857567, - 0.01618031971156597, - -0.061329469084739685, - 0.08321692794561386, - -0.010404542088508606, - 0.01469092071056366, - 0.07953208684921265, - -0.020822763442993164, - -0.011731987819075584, - -0.07514123618602753, - -0.015800151973962784, - -0.002479126676917076, - 0.008888563141226768, - -0.09747322648763657, - -0.07021086663007736, - -0.03552898392081261, - 0.03687005490064621, - -0.011990826576948166, - 0.03773476183414459, - 0.048297666013240814, - -0.0001280568540096283, - 0.004878080449998379, - -0.059530820697546005, - 0.006472278386354446, - -0.11003661155700684, - -0.08119408041238785, - -0.007553338073194027, - -0.025208037346601486, - 0.029597129672765732, - 0.06932783126831055, - -0.007433533668518066, - 0.011366916820406914, - -0.017465949058532715, - -0.10035966336727142, - -0.10316044092178345, - 0.06292540580034256, - 0.06025577336549759, - 0.0047773150727152824, - 0.04025264084339142, - 0.03914668411016464, - -0.04787943884730339, - 0.07229110598564148, - 0.02674618922173977, - 0.09172123670578003, - -0.04650774225592613, - 0.02007182314991951, - -0.05496493726968765, - 0.026629026979207993, - 0.1155325397849083, - -0.06653355062007904, - -0.08573679625988007, - -0.05051653832197189, - -0.06250812858343124, - 0.039306141436100006, - -0.028587397187948227, - -0.03125658631324768, - 0.01702810451388359, - -0.04568246006965637, - -0.09682674705982208, - -0.08427475392818451, - 0.048536404967308044, - -0.02547849714756012, - -0.001573527930304408, - -0.07549740374088287, - 0.05138392373919487, - 0.037759825587272644, - 0.02291359379887581, - -0.019467901438474655, - 0.017523251473903656, - 0.009189575910568237, - -0.05531178042292595, - -0.01360197365283966, - 0.016984183341264725, - 0.03654772788286209, - -0.0690145492553711, - -0.0010855160653591156, - -0.08244650065898895, - 0.06669095903635025, - -0.061314743012189865, - 0.08719583600759506, - -0.003984938375651836, - -0.037146057933568954, - -0.048084571957588196, - 0.0083693265914917, - 0.003241797909140587, - 0.03946899622678757, - 0.02690153382718563, - 0.043775223195552826, - 0.0009269304573535919, - -0.08752890676259995, - 0.0961446464061737, - 0.037892162799835205, - 0.003973602317273617, - -0.05850657448172569, - -0.02105182409286499, - -0.059252798557281494, - -0.0024594441056251526, - -0.019940117374062538, - -0.08833538740873337, - -0.01831350475549698, - -0.008458632044494152, - 0.0074912733398377895, - 0.03735307604074478, - 0.11042550206184387, - 0.013948485255241394, - -0.09502600878477097 - ] - }, - "p244_403.wav": { - "name": "p244", - "embedding": [ - 0.0377490296959877, - 0.0732356607913971, - -0.019850432872772217, - 0.0333767831325531, - -0.07099741697311401, - 0.05619765818119049, - -0.1509312242269516, - 0.1263742446899414, - -0.027428142726421356, - 0.1251850426197052, - -0.04978351294994354, - 0.1028362438082695, - -0.002218975918367505, - -0.22137275338172913, - 0.006918236147612333, - 0.0729297548532486, - -0.014897100627422333, - -0.022236498072743416, - -0.031686216592788696, - -0.025594644248485565, - 0.018437325954437256, - 0.05417141318321228, - 0.020603956654667854, - -0.017678197473287582, - 0.06263827532529831, - 0.055562734603881836, - -0.02087223157286644, - 0.01868341863155365, - -0.01220864336937666, - -0.048225805163383484, - -0.05367189645767212, - 0.09862232953310013, - -0.06352758407592773, - -0.008043133653700352, - 0.05733560770750046, - -0.011390184983611107, - -0.012570415623486042, - -0.04948428273200989, - -0.02673189342021942, - 0.024310864508152008, - -0.059616900980472565, - 0.09221051633358002, - 0.06049450486898422, - -0.0023746411316096783, - 0.05961926281452179, - 0.015207107178866863, - -0.007485062815248966, - -0.05887911468744278, - -0.11336857080459595, - 0.15759360790252686, - 0.04255159944295883, - -0.01151873730123043, - -0.07437939941883087, - -0.0654408186674118, - 0.09553039073944092, - -0.0043128496035933495, - -0.10397833585739136, - -0.04489545151591301, - 0.08238612115383148, - 0.1481323093175888, - -0.004289031028747559, - -0.03150048106908798, - 0.026212798431515694, - 0.09638091921806335, - 0.039877258241176605, - 0.10572708398103714, - 0.04421164095401764, - 0.09841453284025192, - -0.0050971657037734985, - 0.012710859067738056, - 0.06164707988500595, - 0.05109027028083801, - 0.010820966213941574, - -0.04045774042606354, - 0.01703864522278309, - 0.009230081923305988, - -0.030867155641317368, - -0.001352402614429593, - 0.001722430344671011, - 0.009927773848176003, - -0.0018683752277866006, - 0.003392999991774559, - 0.015851695090532303, - 0.011007177643477917, - -0.0496663823723793, - 0.03806179761886597, - 0.049583856016397476, - 0.016059570014476776, - 0.07973407208919525, - 0.03753602132201195, - -0.011931311339139938, - 0.05727504938840866, - -0.0767231434583664, - -0.07214605063199997, - 0.03396015614271164, - 0.016391996294260025, - -0.0017494803760200739, - 0.06703546643257141, - 0.03006320632994175, - -0.01927153207361698, - 0.12514999508857727, - 0.055862873792648315, - 0.002293237717822194, - 0.0503060556948185, - -0.08753368258476257, - 0.1179405152797699, - 0.07085679471492767, - -0.0001921962248161435, - 0.08866031467914581, - -0.04881196469068527, - 0.07010506093502045, - 0.06854349374771118, - -0.14733177423477173, - -0.05160451680421829, - 0.0433259978890419, - 0.007557045668363571, - -0.021415123715996742, - 0.15008965134620667, - 0.006820023991167545, - 0.01624210737645626, - 0.0982942134141922, - -0.11900971829891205, - -0.07204529643058777, - -0.0007706643082201481, - 0.0513414591550827, - -0.10332310944795609, - 0.04690876230597496, - 0.06416155397891998, - -0.040872395038604736, - 0.019163815304636955, - 0.06826205551624298, - 0.0007301387377083302, - 0.041555047035217285, - 0.008249817416071892, - -0.01041487231850624, - 0.03226141631603241, - -0.022251099348068237, - 0.007512851618230343, - 0.06927990168333054, - 0.00921021867543459, - 0.05257350206375122, - -0.013672875240445137, - -0.017679965123534203, - -0.13836930692195892, - 0.008151741698384285, - 0.03629102557897568, - 0.08736777305603027, - -0.02026567980647087, - -0.009210661053657532, - -0.06033314764499664, - -0.11327636986970901, - 0.028572317212820053, - -0.008258670568466187, - 0.09571856260299683, - -0.003611412364989519, - -0.005928050726652145, - 0.10117276757955551, - 0.04710693657398224, - -0.006630953401327133, - -0.051499143242836, - -0.04675263911485672, - 0.0014382260851562023, - 0.05600534379482269, - -0.08773181587457657, - -0.06035488471388817, - -0.016414295881986618, - 0.022271832451224327, - -0.02416715770959854, - 0.039517588913440704, - 0.04905982315540314, - 0.03403179347515106, - 0.043375611305236816, - -0.09376996755599976, - 0.022426482290029526, - -0.09017930179834366, - -0.0545673742890358, - -0.028377365320920944, - -0.002430593129247427, - -0.03984657675027847, - 0.10902615636587143, - 0.022513747215270996, - 0.035332273691892624, - -0.030425477772951126, - -0.0381329171359539, - -0.06094350665807724, - 0.058856137096881866, - 0.04914209246635437, - -0.010538293980062008, - 0.048013120889663696, - 0.04214265197515488, - -0.06385670602321625, - 0.04088686406612396, - 0.07497887313365936, - 0.08795854449272156, - -0.01327254343777895, - 0.03594272583723068, - -0.044732414186000824, - 0.10898943990468979, - 0.08237890899181366, - -0.08857299387454987, - -0.08345945179462433, - -0.017827525734901428, - -0.06994134187698364, - 0.04780062288045883, - -0.02667645923793316, - 0.0025994793977588415, - 0.014067212119698524, - -0.00599027331918478, - -0.07769648730754852, - -0.09515123814344406, - 0.05552405118942261, - -0.043748997151851654, - -0.014083610847592354, - -0.07232087850570679, - 0.046409305185079575, - 0.0833406001329422, - 0.04265587031841278, - -0.03337465226650238, - -0.037892088294029236, - 0.052113085985183716, - -0.04029715806245804, - 0.00981439184397459, - 0.08255501091480255, - 0.03312237560749054, - -0.10218776762485504, - 0.00043972209095954895, - -0.06067749112844467, - 0.09044945240020752, - -0.047911547124385834, - 0.16199392080307007, - 0.015095770359039307, - -0.05655485391616821, - -0.06871742010116577, - 0.03671246021986008, - -0.003715657629072666, - 0.03331994637846947, - 0.025603413581848145, - 0.06348010897636414, - 0.06485005468130112, - -0.019126396626234055, - 0.09705483168363571, - 0.037519216537475586, - -0.028215497732162476, - -0.033869847655296326, - -0.02794579043984413, - -0.04226047545671463, - 0.048254698514938354, - 0.012315713800489902, - -0.11845612525939941, - -0.0005446719587780535, - 0.04830523207783699, - -0.0038991388864815235, - 0.046570613980293274, - 0.1376451700925827, - 0.0616631954908371, - -0.13084611296653748 - ] - }, - "p244_051.wav": { - "name": "p244", - "embedding": [ - 0.045718200504779816, - 0.07814808189868927, - -0.022502843290567398, - 0.0345439612865448, - -0.051323942840099335, - 0.071048803627491, - -0.12195656448602676, - 0.1288100779056549, - 0.006800434552133083, - 0.13863827288150787, - -0.056577168405056, - 0.11115185916423798, - -0.013747458346188068, - -0.14130006730556488, - -0.00955258123576641, - 0.030395613983273506, - -0.0014988072216510773, - 0.018854573369026184, - -0.07543803751468658, - -0.030781254172325134, - 0.03106451779603958, - 0.04985269159078598, - 0.06654403358697891, - -0.07023470103740692, - 0.03807223588228226, - 0.04907004535198212, - -0.004326869733631611, - 0.060035914182662964, - 0.008692435920238495, - -0.10099340230226517, - -0.016854148358106613, - 0.11121881008148193, - -0.0654132142663002, - 0.029565026983618736, - 0.02955807000398636, - -0.039671700447797775, - -0.02099781297147274, - -0.032290175557136536, - -0.005050659645348787, - 0.01921827904880047, - -0.002769326791167259, - 0.07135940343141556, - 0.020010901615023613, - -0.002847805619239807, - 0.04927193373441696, - 0.014986333437263966, - -0.03531285747885704, - -0.03632693737745285, - -0.09852772951126099, - 0.16049720346927643, - 0.026491917669773102, - -0.002244291827082634, - -0.09792020171880722, - -0.05734919384121895, - 0.080751933157444, - -0.035606399178504944, - -0.09206739813089371, - -0.054172586649656296, - 0.0593574121594429, - 0.1254468709230423, - -0.01763366535305977, - -0.05385550111532211, - 0.026340872049331665, - 0.08332055807113647, - 0.061912551522254944, - 0.06390613317489624, - 0.09732405841350555, - 0.11813553422689438, - -0.016838407143950462, - 0.040032822638750076, - -0.022121939808130264, - 0.08001182973384857, - 0.03151440620422363, - 0.026716018095612526, - 0.016527488827705383, - -0.0277165025472641, - 0.011138040572404861, - -0.01962466537952423, - -0.04782872274518013, - -0.02105182409286499, - 0.012222223915159702, - 0.013110589236021042, - 0.03360828384757042, - 0.010957952588796616, - -0.047239482402801514, - 0.0485336109995842, - 0.03982091695070267, - -0.024835579097270966, - 0.06507693231105804, - 0.014884350821375847, - 0.004096033982932568, - 0.04506729543209076, - -0.09053198993206024, - -0.08962118625640869, - 0.008276755921542645, - 0.007184777408838272, - 0.012478053569793701, - 0.03677140176296234, - 0.0197935588657856, - -0.014974843710660934, - 0.11253708600997925, - 0.028747625648975372, - -0.030179714784026146, - 0.027362504974007607, - -0.06210380047559738, - 0.1302015632390976, - 0.09526360034942627, - 0.0033987753558903933, - 0.05254428833723068, - -0.07106545567512512, - 0.04407435655593872, - 0.03023122251033783, - -0.10974492877721786, - -0.0793764740228653, - -0.01271610613912344, - -0.005240126047283411, - -0.024861207231879234, - 0.10951578617095947, - -0.0011123642325401306, - 0.04358101636171341, - 0.11311906576156616, - -0.09732146561145782, - -0.030524391680955887, - 0.012786861509084702, - 0.03871888667345047, - -0.0693420022726059, - 0.026883520185947418, - 0.024641642346978188, - -0.010376667603850365, - 0.02571887895464897, - 0.07903122156858444, - 0.0032168482430279255, - 0.03503262996673584, - 0.03094591572880745, - -0.05997152626514435, - 0.03157106041908264, - -0.030329175293445587, - -0.011543367058038712, - 0.05789976567029953, - 0.060659561306238174, - 0.10066156089305878, - -0.03530433773994446, - -0.03605501353740692, - -0.10295362770557404, - 0.01207150612026453, - 0.008135126903653145, - 0.053194694221019745, - -0.02623765729367733, - 0.0026844320818781853, - -0.04492941126227379, - -0.07102026045322418, - 0.05340743437409401, - 0.0024783103726804256, - 0.07553350925445557, - -0.011634002439677715, - 0.011383520439267159, - 0.1108168438076973, - 0.034075766801834106, - 0.00588107667863369, - -0.06093894690275192, - -0.036231156438589096, - -0.024960467591881752, - 0.03524819388985634, - -0.0733175054192543, - -0.0526459738612175, - 0.0024429571349173784, - 0.023876946419477463, - -0.04030609875917435, - 0.07071715593338013, - 0.06764596700668335, - 0.028779897838830948, - 0.03869398683309555, - -0.012509806081652641, - -0.03194332495331764, - -0.04880797863006592, - -0.05567163974046707, - 0.00893435813486576, - -0.00252919876947999, - -0.05981268733739853, - 0.08401110768318176, - 0.035109564661979675, - 0.05701560899615288, - -0.03525567427277565, - -0.04844788461923599, - -0.10192984342575073, - 0.051501646637916565, - 0.012331448495388031, - -0.02791045419871807, - 0.035872284322977066, - 0.03841182589530945, - -0.05187975615262985, - 0.06851222366094589, - 0.09011781960725784, - 0.05522051453590393, - -0.03169730678200722, - 0.008116046898066998, - -0.0959625095129013, - 0.1069781631231308, - 0.11132871359586716, - -0.0743902251124382, - -0.09637438505887985, - -0.03360144793987274, - -0.09452845901250839, - 0.029925107955932617, - -0.03429165109992027, - -0.02270779386162758, - 0.06702468544244766, - 0.001764132408425212, - -0.1091214120388031, - -0.07458578050136566, - 0.06920494139194489, - -0.07603760063648224, - -0.002438775496557355, - -0.0638931393623352, - 0.030917895957827568, - 0.07071851193904877, - 0.03271857649087906, - -0.013270213268697262, - -0.029767053201794624, - 0.06868032366037369, - -0.04773161560297012, - 0.032205693423748016, - 0.06881655752658844, - 0.03367075324058533, - -0.05578242987394333, - -0.012317117303609848, - -0.04807884618639946, - 0.00622282549738884, - -0.01894450932741165, - 0.13298092782497406, - 0.027140147984027863, - -0.038350049406290054, - -0.050428710877895355, - 0.06762756407260895, - -0.06128579378128052, - 0.05508648231625557, - 0.019695326685905457, - 0.03885522484779358, - 0.06511763483285904, - -0.07835085690021515, - 0.11472852528095245, - 0.03113851509988308, - -0.061922840774059296, - -0.08783504366874695, - -0.07309067249298096, - -0.04796215146780014, - 0.04110460728406906, - 0.03031926602125168, - -0.08058655261993408, - -0.012373680248856544, - 0.03283856064081192, - -0.009387717582285404, - 0.05421913415193558, - 0.11533720791339874, - 0.06810104846954346, - -0.08834759145975113 - ] - }, - "p244_346.wav": { - "name": "p244", - "embedding": [ - 0.07210871577262878, - 0.11166694760322571, - -0.026589415967464447, - 0.030031569302082062, - -0.05290517210960388, - 0.06579455733299255, - -0.12648563086986542, - 0.13862329721450806, - -0.025357862934470177, - 0.14204758405685425, - -0.06121651083230972, - 0.1268324851989746, - -0.01438700221478939, - -0.16671913862228394, - -0.031155217438936234, - 0.05034483224153519, - -0.057185109704732895, - -0.027700150385499, - -0.03843969106674194, - -0.029972784221172333, - 0.025088196620345116, - 0.04572126269340515, - 0.033618099987506866, - 0.010355454869568348, - 0.03802390769124031, - 0.08006399869918823, - -0.012983969412744045, - 0.030424833297729492, - 0.0018929843790829182, - -0.06949885189533234, - -0.05493546277284622, - 0.1018865630030632, - -0.05870597064495087, - 0.016578517854213715, - 0.04055076837539673, - -0.016119560226798058, - -0.0006655063480138779, - -0.06159809231758118, - -0.019451359286904335, - 0.015043022111058235, - -0.035419102758169174, - 0.07804234325885773, - 0.02223268151283264, - -0.030461439862847328, - 0.03514702618122101, - 0.012019072659313679, - -0.007501565385609865, - -0.04286115616559982, - -0.10102902352809906, - 0.1699438989162445, - 0.07436004281044006, - -0.00016392780526075512, - -0.0704466700553894, - -0.0563688799738884, - 0.09077860414981842, - -0.011636397801339626, - -0.11089707165956497, - -0.023114528506994247, - 0.05805956572294235, - 0.13712985813617706, - -0.02690938301384449, - -0.042380958795547485, - 0.03662398084998131, - 0.13466346263885498, - 0.067609503865242, - 0.08088449388742447, - 0.07952743768692017, - 0.11223019659519196, - -0.04120715335011482, - 0.023579660803079605, - 0.0641297996044159, - 0.0662492960691452, - 0.08014080673456192, - -0.013523911125957966, - 0.02260228991508484, - -0.015035864897072315, - -0.01987355761229992, - -0.015860063955187798, - -0.01458186749368906, - -0.027581356465816498, - -0.01184071321040392, - -0.0022914642468094826, - 0.0015340391546487808, - 0.03595581278204918, - -0.03148810192942619, - 0.05267483741044998, - 0.05145016312599182, - -0.028606746345758438, - 0.0662049800157547, - 0.050139352679252625, - 0.02193133346736431, - 0.06545385718345642, - -0.08312764763832092, - -0.08141277730464935, - 0.050871506333351135, - 0.0019451389089226723, - 0.040741316974163055, - 0.07857110351324081, - 0.05487683415412903, - -0.012801513075828552, - 0.10977913439273834, - 0.056246720254421234, - -0.0006764865247532725, - 0.009939451701939106, - -0.08667836338281631, - 0.13208161294460297, - 0.103082075715065, - -0.04022331163287163, - 0.05104866623878479, - -0.03539847582578659, - 0.07707816362380981, - 0.07098853588104248, - -0.1389017254114151, - -0.07217241823673248, - 0.025976743549108505, - 0.009854231961071491, - -0.008709657937288284, - 0.0991295576095581, - 0.003028789535164833, - 0.049470946192741394, - 0.09339207410812378, - -0.08505438268184662, - -0.04880012199282646, - -0.03519634157419205, - 0.04732624068856239, - -0.10224151611328125, - 0.06668078899383545, - 0.06605608761310577, - -0.010493254289031029, - 3.6819837987422943e-06, - 0.07942492514848709, - -0.009084750898182392, - -0.005228916648775339, - 0.009002912789583206, - -0.033270735293626785, - 0.008502000942826271, - -0.014110216870903969, - 0.01087709330022335, - 0.024162493646144867, - 0.014641442336142063, - 0.03536529839038849, - -0.010668939910829067, - -0.011433234438300133, - -0.11826251447200775, - 0.03521667793393135, - 0.04551813751459122, - 0.06312485039234161, - -0.01719171553850174, - -0.0330636128783226, - -0.01640160381793976, - -0.06579912453889847, - 0.024562742561101913, - -0.009991688653826714, - 0.051906682550907135, - -0.022704631090164185, - -0.0007774537662044168, - 0.11164286732673645, - 0.038637712597846985, - -1.3448763638734818e-05, - -0.04170120507478714, - -0.022312477231025696, - 0.025479204952716827, - 0.059130266308784485, - -0.09289409220218658, - -0.09222902357578278, - -0.01051497831940651, - 0.012984300032258034, - -0.014248975552618504, - 0.07088484615087509, - 0.05621228367090225, - 0.003572426037862897, - 0.024213973432779312, - -0.061184998601675034, - 0.006932617165148258, - -0.10452644526958466, - -0.07151442021131516, - -0.020617865025997162, - -0.03697817400097847, - -0.021631551906466484, - 0.0833590179681778, - 0.022454526275396347, - 0.055356234312057495, - -0.03631935268640518, - -0.05389655381441116, - -0.06547439098358154, - 0.05798552185297012, - 0.07042905688285828, - 0.0003022877499461174, - 0.03276430815458298, - 0.05818331614136696, - -0.013985903933644295, - 0.049035146832466125, - 0.060382381081581116, - 0.10376324504613876, - -0.03490917384624481, - 0.01874351128935814, - -0.0734420046210289, - 0.077022023499012, - 0.08631910383701324, - -0.09909568727016449, - -0.09585420787334442, - -0.04311494529247284, - -0.06203712522983551, - 0.026148581877350807, - -0.029802629724144936, - 0.016733741387724876, - 0.034567661583423615, - -0.008480810560286045, - -0.08948124945163727, - -0.11097423732280731, - 0.10051584243774414, - -0.0623873770236969, - -0.0011464687995612621, - -0.08466720581054688, - 0.0560152530670166, - 0.07863102853298187, - 0.036488354206085205, - -0.042816877365112305, - 0.00606294721364975, - 0.04221480339765549, - -0.01655549183487892, - 0.00408388115465641, - 0.05716034024953842, - 0.04579092562198639, - -0.11718948185443878, - -0.004729651380330324, - -0.06429540365934372, - 0.07563677430152893, - -0.05978791415691376, - 0.15995538234710693, - 0.010114320553839207, - -0.054568588733673096, - -0.08873523771762848, - 0.05909750610589981, - -0.019260264933109283, - 0.04408474639058113, - 0.03442694619297981, - 0.055299047380685806, - 0.030035164207220078, - -0.07887953519821167, - 0.10196585953235626, - 0.04201589152216911, - -0.03978707641363144, - -0.07471296191215515, - -0.04805316776037216, - -0.03540157899260521, - 0.04803115129470825, - 0.020751869305968285, - -0.08235003054141998, - -0.01914026215672493, - 0.017218807712197304, - -0.0037166166584938765, - 0.07060544192790985, - 0.151498943567276, - 0.061921000480651855, - -0.11944206804037094 - ] - }, - "p244_280.wav": { - "name": "p244", - "embedding": [ - 0.060478486120700836, - 0.07014969736337662, - -0.0003303766716271639, - 0.03782152011990547, - -0.03082103468477726, - 0.07061322778463364, - -0.1573628932237625, - 0.12538211047649384, - -0.03756590187549591, - 0.13343311846256256, - -0.061775628477334976, - 0.09434889256954193, - -0.012579934671521187, - -0.18807080388069153, - -0.0476452074944973, - 0.06009714677929878, - -0.04862841218709946, - -0.030980505049228668, - -0.030674036592245102, - -0.0053529394790530205, - 0.02953764982521534, - 0.047824740409851074, - 0.037942495197057724, - 0.005611931439489126, - 0.04103648662567139, - 0.045796703547239304, - 0.0025880367029458284, - 0.06205648556351662, - 0.017863420769572258, - -0.05217069387435913, - -0.008744262158870697, - 0.11043752729892731, - -0.04434295743703842, - 0.012487146072089672, - 0.04547634348273277, - 0.01933441311120987, - 0.003564878599718213, - -0.0836782157421112, - -0.03571081534028053, - -0.0026182434521615505, - -0.057573460042476654, - 0.07964299619197845, - 0.048467136919498444, - -0.005043788347393274, - 0.034075137227773666, - 0.010259522125124931, - -0.01572520099580288, - -0.06692887842655182, - -0.12203095853328705, - 0.16736356914043427, - 0.04114377498626709, - 0.03100799024105072, - -0.07878031581640244, - -0.08628706634044647, - 0.10114747285842896, - -0.009735843166708946, - -0.11582085490226746, - -0.03876187652349472, - 0.08211887627840042, - 0.19482824206352234, - -0.032070789486169815, - -0.03762795031070709, - 0.03315575793385506, - 0.11731021106243134, - 0.07215867936611176, - 0.08511636406183243, - 0.09045302867889404, - 0.11017961800098419, - 0.01949392817914486, - -0.0006871321238577366, - 0.05344098061323166, - 0.0596701018512249, - 0.03936806321144104, - -0.0022030463442206383, - 0.016414135694503784, - 0.02472023293375969, - -0.028909089043736458, - 0.0037146545946598053, - -0.013230424374341965, - 0.0028750647325068712, - 0.005122964736074209, - 0.013863536529242992, - 0.01978185586631298, - 0.05334577336907387, - -0.04296736791729927, - 0.045819856226444244, - 0.0030826441943645477, - -0.015915557742118835, - 0.06957364082336426, - 0.01776098646223545, - 0.010859650559723377, - 0.05378272384405136, - -0.057663775980472565, - -0.09368374943733215, - 0.004344256594777107, - 0.008660512045025826, - 0.011232402175664902, - 0.05625608190894127, - 0.03634929656982422, - -0.034326665103435516, - 0.12762080132961273, - 0.0305621474981308, - -0.015298018231987953, - 0.03482647240161896, - -0.09564433246850967, - 0.09422804415225983, - 0.07521044462919235, - -0.0016128204297274351, - 0.0644950419664383, - -0.05217842757701874, - 0.05746022239327431, - 0.077559694647789, - -0.15510886907577515, - -0.07660350203514099, - 0.07537676393985748, - 0.038983121514320374, - 0.003099447349086404, - 0.14587566256523132, - 0.0094251474365592, - 0.03234625980257988, - 0.0948590487241745, - -0.09525232762098312, - -0.04483780264854431, - -0.007484804838895798, - 0.0642944797873497, - -0.07523420453071594, - 0.041439399123191833, - 0.034983936697244644, - -0.028654197230935097, - -0.01614030823111534, - 0.07284779846668243, - -0.0013894164003431797, - -0.00017082225531339645, - -0.010916239582002163, - -0.039183609187603, - 0.04822877049446106, - -0.03047354519367218, - -0.0013511828146874905, - 0.0478319376707077, - 0.0468166247010231, - 0.030552595853805542, - 0.011445598676800728, - -0.07172305881977081, - -0.14100781083106995, - -0.009380286559462547, - 0.04078041762113571, - 0.09323626756668091, - -0.0193291325122118, - -0.021773088723421097, - -0.059698499739170074, - -0.05373607575893402, - 0.04152636229991913, - -0.010325471870601177, - 0.09380179643630981, - 0.0008813398890197277, - -0.011472019366919994, - 0.09109489619731903, - -0.006185851059854031, - 0.011839545331895351, - -0.026966169476509094, - -0.02594616636633873, - 0.0022142822854220867, - 0.042140789330005646, - -0.06941162049770355, - -0.05290977656841278, - 0.011227907612919807, - 0.038221877068281174, - -0.019123263657093048, - 0.03171005845069885, - 0.025507617741823196, - 0.02013111114501953, - 0.034457430243492126, - -0.055262792855501175, - -0.002053313422948122, - -0.11382970213890076, - -0.06424825638532639, - 0.018081890419125557, - 0.007068316452205181, - -0.011743100360035896, - 0.0919254720211029, - 0.03653419762849808, - 0.05397625267505646, - -0.014124181121587753, - -0.07891079783439636, - -0.06933921575546265, - 0.0627862885594368, - 0.06671788543462753, - 0.003754342906177044, - 0.03462069109082222, - 0.04744644835591316, - -0.01629844680428505, - 0.05497806519269943, - 0.06399870663881302, - 0.09277167916297913, - -0.008421486243605614, - 0.0008284798823297024, - -0.07660794258117676, - 0.10520949959754944, - 0.07809194177389145, - -0.07596531510353088, - -0.07989215850830078, - -0.00189402315299958, - -0.07995735108852386, - 0.03510107845067978, - -0.018750691786408424, - 0.022173797711730003, - 0.021866794675588608, - -0.02222725749015808, - -0.10737795382738113, - -0.09425497055053711, - 0.07138977944850922, - -0.07614212483167648, - -0.018508248031139374, - -0.07459993660449982, - 0.03939858078956604, - 0.10009239614009857, - 0.04365496709942818, - 0.009761950932443142, - -0.015313250944018364, - 0.03632032871246338, - -0.0698617547750473, - -0.023288385942578316, - 0.06016835197806358, - -0.0010722246952354908, - -0.12363427132368088, - 0.005966808646917343, - -0.07906326651573181, - 0.06645837426185608, - -0.04923289269208908, - 0.15301790833473206, - 0.0033569803927093744, - -0.06137098744511604, - -0.08379287272691727, - 0.012940006330609322, - -0.025993112474679947, - 0.058549702167510986, - 0.029668355360627174, - 0.07477380335330963, - 0.05629333108663559, - -0.05086246877908707, - 0.10138367116451263, - 0.04571443423628807, - -0.03205813467502594, - -0.06697387993335724, - -0.05641714483499527, - -0.028425320982933044, - 0.023195780813694, - -0.016321396455168724, - -0.07328684628009796, - -0.008601004257798195, - 0.03166140615940094, - -0.0185615886002779, - 0.03842851147055626, - 0.12477824836969376, - 0.05128330737352371, - -0.12961441278457642 - ] - }, - "p244_065.wav": { - "name": "p244", - "embedding": [ - 0.007054517976939678, - 0.08852758258581161, - -0.0030881152488291264, - 0.0636865422129631, - -0.02267257496714592, - -0.024485107511281967, - -0.11980750411748886, - 0.05317477136850357, - 0.028464192524552345, - 0.08153848350048065, - -0.03808337822556496, - 0.08043301105499268, - -0.049214012920856476, - -0.1045268103480339, - 0.011294144205749035, - 0.007210413925349712, - 0.04944579675793648, - 0.012070726603269577, - 0.05308769270777702, - -0.00642412668094039, - -0.012724775820970535, - 0.014442275278270245, - -0.05375155061483383, - 0.010946331545710564, - -0.017190538346767426, - 0.00409560464322567, - -0.03997906297445297, - 0.030390020459890366, - -0.02666877582669258, - -0.03509528934955597, - 0.023254292085766792, - 0.024275124073028564, - -0.03428839519619942, - -0.00648182537406683, - -0.006953302770853043, - 0.020122431218624115, - -0.01958870142698288, - -0.019027702510356903, - -0.033361345529556274, - -0.053111203014850616, - -0.06355586647987366, - 0.007037436589598656, - 0.024053290486335754, - -0.041075557470321655, - 0.01932276040315628, - 0.04714740812778473, - -0.02205568179488182, - -0.007933729328215122, - -0.03981979936361313, - 0.06050863116979599, - 0.007435048930346966, - 0.09415753185749054, - -0.04852147772908211, - -0.04339141398668289, - 0.08928994089365005, - 0.032963402569293976, - 0.022321002557873726, - -0.009264932945370674, - 0.008072290569543839, - 0.08619340509176254, - 0.02580038085579872, - 0.0016125477850437164, - 0.05168456584215164, - 0.03864423930644989, - 0.021270928904414177, - 0.018495289608836174, - 0.05618312954902649, - 0.04735862463712692, - -0.024951014667749405, - -0.015342317521572113, - 0.032533105462789536, - 0.02854267694056034, - -0.003760816529393196, - 0.024109598249197006, - -0.01245660986751318, - 0.05564098805189133, - 0.0069576771929860115, - 0.052089814096689224, - -0.039382994174957275, - -0.007599366828799248, - -0.005017128773033619, - 0.02545362338423729, - 0.012090643867850304, - -0.003604564815759659, - -0.04543128237128258, - -0.044524699449539185, - 0.07269853353500366, - 0.03109152987599373, - 0.02478325180709362, - -0.0010882458882406354, - 0.04931827634572983, - 0.011062037199735641, - -0.07306485623121262, - -0.006963550113141537, - 0.029459502547979355, - -0.014439661987125874, - 0.05608278140425682, - 0.006197329610586166, - 0.004131363704800606, - -0.0008229962550103664, - 0.06696853786706924, - -0.038628462702035904, - 0.04334733635187149, - -0.01070895604789257, - -0.04666449502110481, - -0.00774046778678894, - 0.009578716941177845, - 0.011090116575360298, - 0.062096551060676575, - -0.005763772875070572, - 0.025457151234149933, - 0.07299954444169998, - -0.05411238968372345, - -0.036584626883268356, - 0.040011610835790634, - 0.08659297227859497, - -0.026051782071590424, - 0.105359748005867, - 0.012498749420046806, - 0.03378230705857277, - 0.03779051452875137, - -0.008045244961977005, - -0.04387284070253372, - 0.001744009554386139, - 0.018662968650460243, - -0.01628388836979866, - 0.060004279017448425, - 0.01878431998193264, - -0.026796922087669373, - -0.05688052996993065, - 0.04540418088436127, - -0.013780368492007256, - -0.006090857088565826, - -0.020738810300827026, - 0.03176988288760185, - -0.040732331573963165, - 0.05360192060470581, - -0.05600165203213692, - -0.018467068672180176, - 0.04460231214761734, - -0.021325290203094482, - -0.002376510761678219, - -0.010872955434024334, - -0.08862053602933884, - 0.019667156040668488, - 0.017193248495459557, - 0.00880078598856926, - 0.07495932281017303, - -0.07368112355470657, - -0.09551052004098892, - -0.02687603235244751, - 0.01950133591890335, - -0.011110908351838589, - 0.06437593698501587, - 0.07642767578363419, - 0.03576076775789261, - 0.026395520195364952, - -0.00975878443568945, - 0.016826525330543518, - 0.030054941773414612, - -0.12074629962444305, - -0.004736792296171188, - 0.003714575432240963, - 0.035051919519901276, - -0.021945547312498093, - 0.008539482951164246, - 0.02285677008330822, - -0.016836900264024734, - 0.008142596110701561, - 0.03265974298119545, - 0.03339824825525284, - 0.03713845834136009, - -0.11179555952548981, - -0.006665410939604044, - -0.041757918894290924, - -0.08026179671287537, - 0.028926577419042587, - 0.020995359867811203, - 0.004242144525051117, - 0.024909673258662224, - 0.044699542224407196, - 0.010940499603748322, - -0.030128225684165955, - -0.02363281510770321, - -0.04188314825296402, - -0.005710013676434755, - 0.0007939375936985016, - -0.0037873294204473495, - -0.010398989543318748, - 0.0022998731583356857, - 0.02183486893773079, - 0.02785884588956833, - 0.01234511286020279, - 0.044538822025060654, - -0.021557513624429703, - 0.009014240466058254, - 0.043109044432640076, - 0.1039772778749466, - 0.050274889916181564, - -0.06282788515090942, - -0.07150369882583618, - 0.01840965822339058, - -0.07788141071796417, - 0.023911356925964355, - -0.005105285905301571, - 0.036022037267684937, - -0.008091493509709835, - 0.006417714059352875, - 0.031618375331163406, - -0.12832170724868774, - 0.0010662898421287537, - -0.021570947021245956, - -0.03863372653722763, - 0.0058544352650642395, - -0.00021003000438213348, - 0.038972217589616776, - 0.01815401017665863, - -0.01616358757019043, - -0.08109483867883682, - 0.015411155298352242, - 0.018661584705114365, - 0.021232973784208298, - 0.07534293830394745, - 0.030911121517419815, - -0.01609310507774353, - -8.790404535830021e-05, - -0.038275957107543945, - 0.013330904766917229, - 0.008816724643111229, - 0.020381882786750793, - 0.016050497069954872, - -0.019882112741470337, - -0.07982417941093445, - 0.016075707972049713, - 0.01653657853603363, - 0.04855777323246002, - -0.05607140064239502, - 0.003358134999871254, - 0.03295283764600754, - -0.020481236279010773, - 0.0936817079782486, - 0.05501065403223038, - -0.004118446726351976, - -0.024199025705456734, - -0.022350359708070755, - -0.030676506459712982, - 0.06899551302194595, - 0.027223506942391396, - -0.04199513420462608, - -0.023756854236125946, - 0.06762238591909409, - 0.061578549444675446, - 0.06401962041854858, - 0.06752371788024902, - 0.0323612280189991, - 0.008513741195201874 - ] - }, - "p244_401.wav": { - "name": "p244", - "embedding": [ - 0.04489310085773468, - 0.07182004302740097, - 0.0011177249252796173, - -0.004109829664230347, - -0.034445881843566895, - 0.07682614028453827, - -0.11882264912128448, - 0.10732126235961914, - -0.028650319203734398, - 0.10478071868419647, - -0.07900713384151459, - 0.09189572930335999, - -0.03820741921663284, - -0.15655018389225006, - -0.040688566863536835, - 0.039437856525182724, - -0.028592970222234726, - -0.002292851684615016, - -0.023234358057379723, - -0.011581746861338615, - 0.031602825969457626, - 0.028258662670850754, - 0.012293512932956219, - -0.007524948567152023, - 0.03390558063983917, - 0.051076389849185944, - 0.01826249063014984, - 0.03736492991447449, - 0.019276108592748642, - -0.02670341730117798, - -0.0020804828964173794, - 0.08596721291542053, - -0.022331437095999718, - 0.006396051496267319, - 0.04163404181599617, - -0.004347694106400013, - 0.011006522923707962, - -0.06619955599308014, - 0.00893741101026535, - 0.035417478531599045, - -0.032548002898693085, - 0.07003971189260483, - 0.07857532799243927, - 0.0029592267237603664, - 0.025644049048423767, - 0.01917346566915512, - 0.021810319274663925, - -0.05014675483107567, - -0.09140770137310028, - 0.17448531091213226, - 0.029064586386084557, - -0.003430331591516733, - -0.08150865137577057, - -0.030426636338233948, - 0.0925912857055664, - 0.013099310919642448, - -0.07282260060310364, - -0.0327586755156517, - 0.08186417073011398, - 0.13813602924346924, - 0.005199912004172802, - -0.04613731801509857, - 0.01917032152414322, - 0.11498075723648071, - 0.00905969925224781, - 0.06572088599205017, - 0.08403681963682175, - 0.08654722571372986, - -0.001270835637114942, - 0.020083539187908173, - 0.03906271234154701, - 0.04610569030046463, - -0.010907359421253204, - -0.02932312712073326, - 0.015360893681645393, - -0.02838645689189434, - -0.04259275645017624, - 0.014861616306006908, - 0.0005569010972976685, - -0.02950633130967617, - -0.00064772495534271, - 0.009545441716909409, - 0.016760990023612976, - 0.012044175527989864, - -0.012275079265236855, - 0.04524761438369751, - -0.015177300199866295, - 0.024818813428282738, - 0.07859313488006592, - 0.015163875184953213, - 0.007043452933430672, - 0.02522212825715542, - -0.04402400180697441, - -0.08786113560199738, - -0.0013720368733629584, - 0.005846457555890083, - -0.007249782793223858, - 0.04216877743601799, - 0.04215012118220329, - -0.02289453148841858, - 0.11355797946453094, - 0.03916066139936447, - -0.01779448799788952, - 0.015762940049171448, - -0.06729009747505188, - 0.0975072979927063, - 0.07447269558906555, - 0.0046886904165148735, - 0.07150852680206299, - -0.07578445225954056, - 0.04128572344779968, - 0.04009030759334564, - -0.12140516936779022, - -0.038901109248399734, - 0.04106326401233673, - 0.019915258511900902, - 0.017193442210555077, - 0.13464881479740143, - -0.01360523235052824, - -0.006719199474900961, - 0.06171268969774246, - -0.09263436496257782, - -0.05506977066397667, - -0.020614199340343475, - 0.049023985862731934, - -0.028678346425294876, - 0.013152997009456158, - 0.04140090569853783, - -0.005198844708502293, - -0.009676923975348473, - 0.05090288817882538, - -0.02106054499745369, - -0.010947386734187603, - 0.0070092095993459225, - -0.0031143552623689175, - 0.05345790088176727, - -0.021911390125751495, - 0.014261135831475258, - 0.015416580252349377, - 0.056310348212718964, - 0.03309084475040436, - 0.028845787048339844, - -0.0822661742568016, - -0.08312277495861053, - -0.016405954957008362, - 0.02270328812301159, - 0.0729580968618393, - -0.020277883857488632, - -0.03376463055610657, - -0.04484662413597107, - -0.0312936007976532, - -0.003465568646788597, - 0.002198886126279831, - 0.07714059948921204, - 0.019428126513957977, - -0.0009956683497875929, - 0.09624773263931274, - 0.03908269852399826, - 0.004569241777062416, - -0.044861942529678345, - -0.03633127734065056, - -0.007806172128766775, - 0.035614993423223495, - -0.04768701642751694, - -0.055022209882736206, - -0.012597106397151947, - 0.0009983207564800978, - -0.022495344281196594, - -0.00691523402929306, - 0.011133741587400436, - 0.023090727627277374, - 0.028663285076618195, - -0.09162688255310059, - 0.0077186645939946175, - -0.10169520229101181, - -0.013930174522101879, - 0.003624526783823967, - -0.006425138097256422, - -0.02408706210553646, - 0.07169730961322784, - 0.027275746688246727, - 0.042725272476673126, - -0.012898693792521954, - -0.017067894339561462, - -0.018911590799689293, - 0.04049438238143921, - 0.08427852392196655, - -0.0075738802552223206, - 0.024786634370684624, - 0.03650485724210739, - -0.014552943408489227, - 0.0440838560461998, - 0.05364827439188957, - 0.04882293567061424, - -0.025804173201322556, - -0.01869308203458786, - -0.024130692705512047, - 0.0934181660413742, - 0.05555276572704315, - -0.06930126249790192, - -0.0791609063744545, - -0.023157767951488495, - -0.05146999657154083, - 0.031920306384563446, - -0.029901180416345596, - 0.00803244486451149, - 0.008386016823351383, - -0.02284039556980133, - -0.07294479757547379, - -0.052257053554058075, - 0.03019798919558525, - -0.025340361520648003, - 0.0014590885257348418, - -0.08998271077871323, - 0.062331221997737885, - 0.12441585958003998, - 0.012446841225028038, - -0.00011241436004638672, - -0.009898337535560131, - 0.008208958432078362, - -0.04118141531944275, - -0.017398323863744736, - 0.007388897240161896, - 0.011968409642577171, - -0.10124349594116211, - 0.010999663732945919, - -0.038165345788002014, - 0.07665795087814331, - -0.05123162269592285, - 0.13270463049411774, - 0.022762609645724297, - -0.07037785649299622, - -0.07649403810501099, - 0.04354443401098251, - -0.022880151867866516, - 0.026879917830228806, - 0.026550687849521637, - 0.002287554321810603, - 0.045405417680740356, - -0.04320551082491875, - 0.07766204327344894, - 0.012355471029877663, - -0.03675200417637825, - -0.052819471806287766, - -0.026048731058835983, - -0.007226914167404175, - 0.034377098083496094, - -0.02456560730934143, - -0.047170452773571014, - -0.03708440065383911, - 0.03570055961608887, - -0.00039428070886060596, - 0.07206713408231735, - 0.08851854503154755, - 0.05097908899188042, - -0.10105577111244202 - ] - }, - "p244_028.wav": { - "name": "p244", - "embedding": [ - 0.04755127429962158, - 0.10183662176132202, - 0.0010523957898840308, - 0.02922067604959011, - -0.04274490475654602, - 0.038365814834833145, - -0.06552916765213013, - 0.08610039204359055, - 0.035453494638204575, - 0.06006334349513054, - -0.07028511166572571, - 0.08537688106298447, - -0.04050898179411888, - -0.1390821784734726, - 0.024735689163208008, - 0.042568638920784, - -0.014613419771194458, - 0.014225073158740997, - -0.029939576983451843, - -0.034473054111003876, - -0.010743875056505203, - 0.00788539182394743, - 0.03904461860656738, - -0.02794816344976425, - 0.011626980267465115, - 0.03243539482355118, - -0.03089280053973198, - 0.0042264265939593315, - -0.02236943319439888, - -0.049150656908750534, - -0.03482130542397499, - 0.06426028907299042, - -0.039804838597774506, - -0.01849549077451229, - 0.007050680927932262, - -0.03167414292693138, - -0.008302778005599976, - -0.05966934561729431, - -0.040282219648361206, - 0.02036818116903305, - -0.05221115052700043, - 0.04385153949260712, - 0.0334717333316803, - -0.05056173354387283, - 0.052905336022377014, - 0.0016782870516180992, - -0.037295300513505936, - -0.01027694158256054, - -0.09702881425619125, - 0.11669182032346725, - 0.021666383370757103, - 0.03943680226802826, - -0.07181055843830109, - -0.018096525222063065, - 0.08736743777990341, - 0.00660637766122818, - -0.04432570934295654, - -0.01977316103875637, - 0.04292946308851242, - 0.06551717966794968, - 0.025621537119150162, - -0.023061856627464294, - 0.029861142858862877, - 0.051065441220998764, - 0.03569559007883072, - 0.03514891117811203, - 0.07030251622200012, - 0.10977679491043091, - -0.025406427681446075, - 0.02344321832060814, - 0.040315043181180954, - 0.016602082177996635, - 0.030591100454330444, - -0.0058657038025557995, - -0.00417511910200119, - -0.0190811138600111, - 0.007784759160131216, - -0.018561270087957382, - -0.012272404506802559, - -0.03856922313570976, - 0.0358729213476181, - -0.011877069249749184, - 0.024296961724758148, - 0.003412483958527446, - -0.03995659202337265, - 0.0005717501044273376, - 0.07475002855062485, - 0.04483198747038841, - 0.07419504970312119, - 0.023583896458148956, - 0.0038302745670080185, - 0.06575292348861694, - -0.08080480992794037, - -0.0626729428768158, - 0.02762717567384243, - 0.0047406721860170364, - 0.0345180444419384, - 0.03522268682718277, - 0.03593577444553375, - -0.021924622356891632, - 0.09303209185600281, - 0.016171371564269066, - 0.02173789218068123, - 0.0038622687570750713, - -0.06000085920095444, - 0.04291970655322075, - 0.06911487877368927, - -0.0031252149492502213, - 0.06710980087518692, - 0.003924044780433178, - 0.0574735552072525, - 0.0593157634139061, - -0.06362977623939514, - -0.007711254060268402, - -0.013962488621473312, - 0.014901747927069664, - -0.0062421150505542755, - 0.11572062224149704, - 0.005575128830969334, - 0.047401800751686096, - 0.11153077334165573, - -0.08428153395652771, - -0.017851917073130608, - 0.03323207423090935, - -0.006795029155910015, - -0.03945271670818329, - 0.04119458794593811, - 0.05774679034948349, - -0.023836631327867508, - -0.003152022836729884, - 0.02888466790318489, - 0.007186677306890488, - 0.013508424162864685, - -0.031240282580256462, - -0.00527383154258132, - -0.01741006039083004, - 0.013710341416299343, - -0.026303980499505997, - 0.04059672728180885, - 0.0510963499546051, - 0.005595838185399771, - 0.0031259420793503523, - -0.023735901340842247, - -0.0815017819404602, - 0.024494286626577377, - 0.005684319883584976, - 0.015271495096385479, - 0.027004096657037735, - -0.02345387265086174, - -0.05020205304026604, - -0.04126422107219696, - 0.05323927849531174, - -0.01286892220377922, - 0.0534650981426239, - 0.04284551739692688, - -0.02408970147371292, - 0.0656687468290329, - 0.04228387027978897, - 0.018443554639816284, - -0.03604736924171448, - -0.10777660459280014, - 0.011916114948689938, - 0.027050882577896118, - -0.06734307110309601, - -0.041548795998096466, - -0.03302937000989914, - -0.026736650615930557, - -0.02513352781534195, - 0.018220387399196625, - 0.06891888380050659, - -0.001024129567667842, - 0.005385813768953085, - -0.06709214299917221, - 0.01778745837509632, - -0.025751546025276184, - -0.08605223894119263, - 0.04397451505064964, - 0.013558605685830116, - -0.005675298627465963, - 0.07290878146886826, - 0.011174386367201805, - 0.007607316132634878, - -0.06834818422794342, - -0.03054022789001465, - 0.0006859104032628238, - 0.028349969536066055, - 0.009199216030538082, - -0.0023368187248706818, - 0.038524508476257324, - 0.03716970235109329, - -0.02000138722360134, - 0.03221309557557106, - 0.027532130479812622, - 0.0699729472398758, - -0.041125424206256866, - 0.011979207396507263, - -0.003780066967010498, - 0.09037631005048752, - 0.06973788142204285, - -0.0585121214389801, - -0.09334539622068405, - -0.0418572723865509, - -0.05219274386763573, - 0.03597882390022278, - -0.013921931385993958, - 0.0046239858493208885, - 0.0304935984313488, - -0.005541916936635971, - -0.027760235592722893, - -0.12137407064437866, - 0.03088071197271347, - -0.00470554968342185, - -0.011253468692302704, - -0.04905698448419571, - 0.03508400917053223, - 0.04082183167338371, - 0.013387786224484444, - -0.029505278915166855, - 0.0028569649439305067, - 0.021662142127752304, - 0.005729150027036667, - 0.0009606803650967777, - 0.03738084062933922, - 0.05761587247252464, - -0.032028183341026306, - -0.025989770889282227, - -0.05615795776247978, - 0.05168236419558525, - 0.025567544624209404, - 0.10789619386196136, - 0.03592901676893234, - 0.0039420402608811855, - -0.07238127291202545, - 0.05853618308901787, - -0.007556072436273098, - 0.044537194073200226, - -0.000889735936652869, - 0.03255235031247139, - 0.05939881503582001, - -0.05622616410255432, - 0.07850207388401031, - 0.02056068181991577, - -0.03140944242477417, - -0.02984531596302986, - 0.0037734932266175747, - -0.055665504187345505, - 0.018798034638166428, - -0.006064708344638348, - -0.06632205098867416, - -0.009425180032849312, - 0.04087073355913162, - 0.061400409787893295, - 0.039582133293151855, - 0.0802602469921112, - 0.028447499498724937, - -0.012771984562277794 - ] - }, - "p244_375.wav": { - "name": "p244", - "embedding": [ - 0.059578537940979004, - 0.09280254691839218, - -0.0066365948878228664, - 0.024891652166843414, - -0.053558267652988434, - 0.06540051102638245, - -0.11934581398963928, - 0.12229330837726593, - -0.0509914830327034, - 0.15572336316108704, - -0.07859791815280914, - 0.11564308404922485, - -0.021675940603017807, - -0.18438056111335754, - -0.015552418306469917, - 0.06570121645927429, - -0.02968379110097885, - -0.010172601789236069, - -0.05178419500589371, - -0.009660843759775162, - 0.01647229492664337, - 0.04650793597102165, - 0.04146043211221695, - -0.027816975489258766, - 0.06240103021264076, - 0.06358069181442261, - -0.017046866938471794, - 0.03668953850865364, - -0.0048728445544838905, - -0.10522384196519852, - -0.05157117545604706, - 0.10016235709190369, - -0.062238238751888275, - 0.015529388561844826, - 0.05061105638742447, - 0.00023448059801012278, - -0.002044137567281723, - -0.06672107428312302, - -0.03165212646126747, - 0.0012310049496591091, - -0.040847357362508774, - 0.07420497387647629, - 0.004687570966780186, - -0.029070932418107986, - 0.04449932277202606, - 0.014169570058584213, - -0.008884252980351448, - -0.050716713070869446, - -0.09780256450176239, - 0.14669272303581238, - 0.03418397158384323, - 0.021093983203172684, - -0.0908086970448494, - -0.09299582988023758, - 0.09701521694660187, - -0.025175780057907104, - -0.11251315474510193, - -0.03461805358529091, - 0.06012021750211716, - 0.1627790480852127, - -0.02188902720808983, - -0.04220303148031235, - 0.019917529076337814, - 0.07649338990449905, - 0.0470145046710968, - 0.09943431615829468, - 0.06948114931583405, - 0.07604683935642242, - 0.005181148182600737, - 0.03605261445045471, - 0.0520034059882164, - 0.07600453495979309, - 0.06825710088014603, - -0.01941586285829544, - 0.016241174191236496, - 0.002721425611525774, - -0.04470668360590935, - -0.010297677479684353, - -0.020321939140558243, - -0.009839298203587532, - -0.014528479427099228, - 0.0029372014105319977, - 0.028109008446335793, - -0.005147801712155342, - -0.02741917409002781, - 0.038570158183574677, - 0.03876641392707825, - -0.0266829002648592, - 0.06695496290922165, - 0.038391269743442535, - -0.01220671646296978, - 0.04704676568508148, - -0.08746813237667084, - -0.09188591688871384, - 0.02267633005976677, - 0.015564397908747196, - -0.0035276205744594336, - 0.06636932492256165, - 0.04641081020236015, - -0.023868784308433533, - 0.11050665378570557, - 0.04873201996088028, - 0.026215987280011177, - 0.02176022343337536, - -0.09232854843139648, - 0.10331210494041443, - 0.0937546119093895, - -0.012360389344394207, - 0.06315313279628754, - -0.03728475421667099, - 0.07729382812976837, - 0.08975464105606079, - -0.15307822823524475, - -0.0802825316786766, - -0.007423429749906063, - -0.0359358973801136, - 0.0044212304055690765, - 0.09970168769359589, - -0.012956305406987667, - 0.02692350186407566, - 0.09899879992008209, - -0.12060088664293289, - -0.05770988017320633, - -0.004800276830792427, - 0.040592700242996216, - -0.09787033498287201, - 0.0659930408000946, - 0.040485505014657974, - -0.01716802455484867, - 0.00959782488644123, - 0.07381284236907959, - -0.00859649758785963, - 0.00956201646476984, - 0.00805002823472023, - -0.04012591764330864, - 0.0008313688449561596, - -0.042600467801094055, - -0.008403842337429523, - 0.07794525474309921, - 0.032944850623607635, - 0.061015062034130096, - -0.011487586423754692, - -0.02267439104616642, - -0.11197391152381897, - 0.009205866605043411, - 0.040095292031764984, - 0.06204332411289215, - -0.0201509241014719, - -0.006357738748192787, - -0.043703507632017136, - -0.0847778171300888, - 0.04851159453392029, - -0.010166676715016365, - 0.08910751342773438, - 0.009700733236968517, - 0.021795623004436493, - 0.11651267111301422, - 0.036139898002147675, - -0.012692245654761791, - -0.063199482858181, - -0.029565289616584778, - 0.0086702611297369, - 0.06336972117424011, - -0.08738499879837036, - -0.07571856677532196, - 0.0010187309235334396, - -0.003994225990027189, - -0.021148551255464554, - 0.06660972535610199, - 0.052289340645074844, - 0.029873261228203773, - 0.03169350326061249, - -0.0618247352540493, - 0.0031243953853845596, - -0.10155005753040314, - -0.07095028460025787, - -0.016942543908953667, - -0.0493391677737236, - -0.030458148568868637, - 0.10075749456882477, - 0.022182809188961983, - 0.028399672359228134, - -0.037996806204319, - -0.0672098770737648, - -0.08322595059871674, - 0.06166207790374756, - 0.0402684286236763, - 0.0059422701597213745, - 0.021377118304371834, - 0.04352794587612152, - -0.03173092007637024, - 0.06193907931447029, - 0.07415612041950226, - 0.09858869016170502, - -0.018818747252225876, - 0.03497813642024994, - -0.05843231454491615, - 0.10435932129621506, - 0.09960930049419403, - -0.08169743418693542, - -0.10250139236450195, - -0.041442614048719406, - -0.07611596584320068, - 0.06408633291721344, - -0.019564621150493622, - 0.00157434050925076, - 0.030543766915798187, - -0.026445912197232246, - -0.08242195844650269, - -0.0919657051563263, - 0.0996866375207901, - -0.03322572633624077, - -0.028335459530353546, - -0.06936761736869812, - 0.04020280763506889, - 0.05407722294330597, - 0.049542464315891266, - -0.011735916137695312, - 0.015297822654247284, - 0.060945961624383926, - -0.05752795934677124, - -0.004825894255191088, - 0.07949329912662506, - 0.0022117667831480503, - -0.06799446791410446, - 0.0049944594502449036, - -0.06599101424217224, - 0.0729508101940155, - -0.05294749513268471, - 0.1609140783548355, - -0.023618346080183983, - -0.06585977971553802, - -0.07187116146087646, - 0.04707232490181923, - -0.029453633353114128, - 0.038448482751846313, - 0.04046997055411339, - 0.071866974234581, - 0.05872473120689392, - -0.06087472662329674, - 0.09252091497182846, - 0.03984646499156952, - -0.0178317129611969, - -0.04091453552246094, - -0.08009994775056839, - -0.05055548995733261, - 0.016472145915031433, - -0.020330043509602547, - -0.09813778102397919, - 0.031845033168792725, - 0.015062674880027771, - 0.006186965387314558, - 0.04824165254831314, - 0.13069140911102295, - 0.05769135057926178, - -0.11621339619159698 - ] - }, - "p244_092.wav": { - "name": "p244", - "embedding": [ - 0.046102799475193024, - 0.1064535602927208, - 0.03882990777492523, - 0.007487049326300621, - 0.00428888201713562, - 0.021372683346271515, - -0.03719458356499672, - 0.07438396662473679, - 0.05713196471333504, - 0.03525877371430397, - -0.08500215411186218, - 0.0642709955573082, - -0.04784000292420387, - -0.11319784820079803, - 0.00696053309366107, - 0.02920011430978775, - -0.04282845929265022, - 0.008282708004117012, - -0.017733167856931686, - -0.013514751568436623, - -0.008095936849713326, - -0.01753217726945877, - 0.038109809160232544, - -0.012525534257292747, - -0.021155208349227905, - 0.015163109637796879, - -0.03453231230378151, - 0.006535589229315519, - -0.008898885920643806, - -0.016865571960806847, - 0.0025727860629558563, - 0.03577691316604614, - 0.0010335445404052734, - 0.006816348992288113, - 0.0066894181072711945, - -0.023162085562944412, - 0.002310875803232193, - -0.051988910883665085, - -0.0719069167971611, - 0.04178440198302269, - -0.045457273721694946, - 0.038020215928554535, - 0.03348635882139206, - -0.07091621309518814, - 0.07716374099254608, - 0.017605872824788094, - -0.06732846796512604, - 0.002190190367400646, - -0.10653941333293915, - 0.0980999767780304, - 0.01689918152987957, - 0.02511964738368988, - -0.06662436574697495, - 0.007720688357949257, - 0.07335393875837326, - -0.02371140569448471, - -0.0503150150179863, - -0.0016451980918645859, - 0.04434879869222641, - 0.0359160378575325, - 0.029808776453137398, - -0.01780438795685768, - -0.006639616563916206, - 0.024667447432875633, - 0.05476382374763489, - 0.012440737336874008, - 0.0739692896604538, - 0.09163016825914383, - -0.03765476122498512, - 0.031139355152845383, - 0.025126319378614426, - -0.0078003183007240295, - 0.041260406374931335, - -0.003057287074625492, - -0.009109203703701496, - -0.019441546872258186, - -0.0030809524469077587, - -0.029171768575906754, - -0.000464538112282753, - -0.019734226167201996, - 0.03652775660157204, - -0.011969586834311485, - 0.03430986404418945, - 0.02560114488005638, - -0.0371861606836319, - -0.015020813792943954, - 0.05930951237678528, - 0.06193121522665024, - 0.055845413357019424, - 0.04522349685430527, - -0.0033451991621404886, - 0.08283627033233643, - -0.05941439047455788, - -0.08488892018795013, - -0.012808052822947502, - -0.012809467501938343, - 0.023438578471541405, - 0.034978240728378296, - 0.029422586783766747, - -0.014472197741270065, - 0.08584047853946686, - -0.0011968445032835007, - 0.007447962649166584, - 0.00256266538053751, - -0.07293926924467087, - 0.008252881467342377, - 0.05080214515328407, - -0.016282476484775543, - 0.05042785406112671, - 0.022402819246053696, - 0.07470276951789856, - 0.05985689163208008, - -0.0324404314160347, - 0.021031370386481285, - 0.007160048000514507, - 0.038123033940792084, - 0.02340659126639366, - 0.10042808949947357, - 0.008154327049851418, - 0.04819753021001816, - 0.1180533617734909, - -0.06895293295383453, - 0.028081845492124557, - 0.041626282036304474, - -0.009441891685128212, - -0.007816918194293976, - 0.0510195828974247, - 0.0171507578343153, - -0.013345770537853241, - 0.004236073233187199, - 0.007495969533920288, - 0.024195585399866104, - 0.010949238203465939, - -0.060463737696409225, - -0.0007464159280061722, - 0.009811539202928543, - -0.024902820587158203, - -0.004825470969080925, - 0.022217990830540657, - 0.05351581051945686, - -0.0034582987427711487, - 0.03593512624502182, - -0.05492741987109184, - -0.03803575038909912, - 0.029162567108869553, - 0.0038121212273836136, - 0.011272409930825233, - 0.03133147582411766, - -0.032537639141082764, - -0.05462552234530449, - 0.00949428603053093, - 0.06676427274942398, - -0.03231997787952423, - 0.04331296309828758, - 0.05982999503612518, - -0.012316036969423294, - 0.04005206748843193, - 0.02436148002743721, - 0.004238395486027002, - -0.03714202344417572, - -0.10295673459768295, - -0.017503172159194946, - 0.035558219999074936, - -0.08419470489025116, - -0.022950150072574615, - -0.04408934712409973, - -0.03376606106758118, - -0.005433212500065565, - -0.007501991465687752, - 0.07606455683708191, - -0.01956539787352085, - -0.023461323231458664, - -0.05429337918758392, - 0.02085306867957115, - -0.022151967510581017, - -0.11239247024059296, - 0.055110231041908264, - 0.017243439331650734, - 0.031251806765794754, - 0.061051297932863235, - -0.013462391681969166, - 0.007184591144323349, - -0.05044195428490639, - -0.04503496736288071, - 0.021522115916013718, - 0.04583548754453659, - -0.005309795029461384, - 0.00023113004863262177, - 0.05684908106923103, - 0.04979639872908592, - -0.04319640249013901, - 0.05203596502542496, - -0.016613345593214035, - 0.054124653339385986, - -0.04773581773042679, - 0.010217105969786644, - 0.02970133349299431, - 0.04535802826285362, - 0.06896093487739563, - -0.028549883514642715, - -0.12263995409011841, - -0.04257612302899361, - -0.042543064802885056, - 0.008781581185758114, - 0.005966579541563988, - -0.009652921929955482, - 0.03065895289182663, - -0.011680271476507187, - -0.03733941167593002, - -0.1088545098900795, - 0.001846805214881897, - 0.010092360898852348, - -0.00575418071821332, - -0.04098682478070259, - 0.01856289431452751, - 0.007557962089776993, - 0.0033586565405130386, - -0.023028098046779633, - 0.028080232441425323, - 0.0025641191750764847, - -0.0024903863668441772, - -0.03747071325778961, - -0.0052144937217235565, - 0.05973551794886589, - 0.010085277259349823, - -0.03185553476214409, - -0.0480203703045845, - 0.03725714981555939, - 0.0360775850713253, - 0.08504394441843033, - 0.040999654680490494, - 0.007665744051337242, - -0.022576870396733284, - 0.03460155427455902, - -0.019515953958034515, - 0.026071704924106598, - -0.014560465700924397, - 0.02562776952981949, - 0.05236086994409561, - -0.030892319977283478, - 0.053186215460300446, - 0.03204383701086044, - -0.012995278462767601, - -0.01589767076075077, - 0.009988261386752129, - -0.07885195314884186, - -0.035886481404304504, - -0.01613621599972248, - -0.0346883088350296, - -0.010800416581332684, - 0.007152854464948177, - 0.07665567845106125, - 0.02376319281756878, - 0.07549691945314407, - 0.015777645632624626, - -0.024306349456310272 - ] - }, - "p244_155.wav": { - "name": "p244", - "embedding": [ - 0.038709141314029694, - 0.043836869299411774, - -0.06396207213401794, - 0.04326394200325012, - -0.013039220124483109, - 0.0816001296043396, - -0.12744568288326263, - 0.04817115515470505, - -0.008936937898397446, - 0.13784155249595642, - -0.021501243114471436, - 0.07812226563692093, - 0.010580182075500488, - -0.1325506865978241, - -0.025479409843683243, - 0.009881933219730854, - -0.05875460058450699, - -0.012978470884263515, - -0.09415224194526672, - -0.01109527051448822, - 0.03044036589562893, - 0.04656811058521271, - 0.029310565441846848, - -0.07565078884363174, - -0.017435453832149506, - 0.041611168533563614, - -0.03085864707827568, - 0.032696839421987534, - 0.03225797787308693, - -0.06318903714418411, - -0.0015083067119121552, - 0.08648298680782318, - -0.05842342972755432, - 0.030528143048286438, - 0.028480829671025276, - 0.024362945929169655, - -0.014088524505496025, - -0.05996789038181305, - 0.015227108262479305, - 0.030005622655153275, - -0.05273135006427765, - 0.06654505431652069, - 0.016269003972411156, - 0.0005897665396332741, - 0.037468940019607544, - -0.02293059416115284, - -0.028184011578559875, - -0.04152239114046097, - -0.07217125594615936, - 0.15526792407035828, - 0.06199213117361069, - -0.04013952612876892, - -0.04978558421134949, - -0.03067539632320404, - 0.06878992170095444, - -0.0108029805123806, - -0.10697904974222183, - -0.0534791573882103, - 0.0492333360016346, - 0.12223925441503525, - -0.024633046239614487, - -0.0035367757081985474, - 0.03653936833143234, - 0.10729417204856873, - 0.07732705771923065, - 0.08159413188695908, - 0.08719471096992493, - 0.13844552636146545, - -0.003963734954595566, - -0.014521709643304348, - 0.02702314406633377, - 0.07397551834583282, - 0.04139146953821182, - 0.017629068344831467, - 0.046669792383909225, - 0.00708424299955368, - -0.016581423580646515, - -0.02016923762857914, - -0.03360714390873909, - -0.006741231307387352, - 0.03577711060643196, - -0.01876078173518181, - 0.009083036333322525, - 0.05862201750278473, - -0.047700248658657074, - 0.017685096710920334, - 0.06044720858335495, - -0.0414934903383255, - 0.025639966130256653, - 0.058089740574359894, - 0.04993915557861328, - 0.03617924451828003, - -0.05439300835132599, - -0.07959708571434021, - 0.018747450783848763, - 0.023512057960033417, - -0.01631442829966545, - 0.03148621693253517, - 0.02198919653892517, - -0.013070760294795036, - 0.08281363546848297, - 0.00024617649614810944, - -0.07482937723398209, - 0.023715108633041382, - -0.055486973375082016, - 0.13352099061012268, - 0.09609562158584595, - -0.014771975576877594, - -0.018591301515698433, - -0.06443176418542862, - 0.051209624856710434, - 0.04648289456963539, - -0.11433684825897217, - -0.05108414590358734, - 0.0841970443725586, - 0.003375728614628315, - -0.008407028391957283, - 0.12312732636928558, - 0.03540223836898804, - 0.005191072355955839, - 0.08774043619632721, - -0.03753364086151123, - -0.021206999197602272, - -0.017795555293560028, - 0.0500633642077446, - -0.039844218641519547, - 0.0184720978140831, - 0.010412727482616901, - 0.023461967706680298, - -0.019044948741793633, - 0.10482227802276611, - -0.00271056592464447, - 0.005580555647611618, - 0.004776953253895044, - -0.015123852528631687, - 0.0774531364440918, - -0.011077302508056164, - 0.0016978110652416945, - 0.040417931973934174, - 0.03850406035780907, - 0.07998046278953552, - -0.04676659032702446, - -0.03834376856684685, - -0.106003537774086, - 0.0288406889885664, - 0.04193590208888054, - 0.0633968785405159, - -0.02126298099756241, - 0.015216912142932415, - -0.06166090816259384, - -0.0843062549829483, - 0.06419310718774796, - -0.07349217683076859, - 0.0806356891989708, - -0.006198268383741379, - -0.04442786052823067, - 0.10852636396884918, - -0.041549552232027054, - 0.0294739231467247, - 0.002143656834959984, - -0.011323148384690285, - -0.011787602677941322, - 0.028720956295728683, - -0.07168862968683243, - -0.05025062710046768, - 0.00545505341142416, - 0.019485659897327423, - -0.0074730138294398785, - 0.044146038591861725, - 0.052180252969264984, - 0.009438680484890938, - 0.013756041415035725, - -0.04974091798067093, - -0.041357506066560745, - -0.07107856124639511, - 0.0017826128751039505, - -0.017409687861800194, - -0.03978564217686653, - -0.0028044055216014385, - 0.08520350605249405, - 0.005610228516161442, - 0.007441772148013115, - -0.04621688276529312, - -0.08248014748096466, - -0.06893877685070038, - 0.05399763211607933, - 0.06844192743301392, - -0.042343560606241226, - 0.02398272417485714, - 0.07128758728504181, - 0.00042195338755846024, - 0.0003962703049182892, - 0.08211225271224976, - 0.06570414453744888, - -0.02653568610548973, - 0.005126255098730326, - -0.09310240298509598, - 0.1334727704524994, - 0.07533380389213562, - -0.06525146216154099, - -0.04615272581577301, - 0.010399042628705502, - -0.07800833135843277, - -0.0011621806770563126, - -0.07775026559829712, - -0.01909555308520794, - 0.0613197460770607, - -0.012403747998178005, - -0.11790768802165985, - -0.08019264042377472, - 0.04837048426270485, - -0.09151708334684372, - -0.01653306744992733, - -0.07922130823135376, - 0.027308156713843346, - 0.055980268865823746, - 0.07508037984371185, - -0.04733382165431976, - 0.019509542733430862, - 0.05709865316748619, - -0.036791153252124786, - 0.03562687709927559, - 0.06118527427315712, - 0.01394906360656023, - -0.12607155740261078, - -0.030854877084493637, - -0.05060849338769913, - 0.05079884082078934, - -0.0685778260231018, - 0.09104838967323303, - 0.0360553078353405, - -0.048803217709064484, - -0.05063339322805405, - 0.07499854266643524, - -0.025002621114253998, - 0.055632367730140686, - 0.043725281953811646, - 0.05133059248328209, - 0.04578588157892227, - -0.05071654170751572, - 0.11553595960140228, - 0.022255556657910347, - -0.014213662594556808, - -0.09727587550878525, - -0.03352759778499603, - -0.03071572631597519, - 0.05789727717638016, - 0.06460973620414734, - -0.07017071545124054, - 0.007500883191823959, - 0.03614375740289688, - -0.0549197793006897, - 0.03965677320957184, - 0.11726978421211243, - 0.09742529690265656, - -0.09380317479372025 - ] - }, - "p244_147.wav": { - "name": "p244", - "embedding": [ - 0.01687598042190075, - 0.06943561881780624, - -0.007168432231992483, - 0.05266550928354263, - -0.042319826781749725, - 0.01016500499099493, - -0.09822674840688705, - 0.08250243216753006, - -0.0007278798148036003, - 0.0965728759765625, - -0.0959683209657669, - 0.0973936915397644, - -0.05587733909487724, - -0.1327417939901352, - 0.02922956645488739, - 0.0429067388176918, - 0.022647663950920105, - 0.025980796664953232, - -0.016756445169448853, - -0.06472177803516388, - 0.03813295066356659, - 0.049331240355968475, - 0.06756006181240082, - -0.0461440235376358, - -0.021891430020332336, - 0.07544268667697906, - -0.008549144491553307, - 0.019413096830248833, - 0.012278901413083076, - -0.055473875254392624, - -0.01793714426457882, - 0.09056406468153, - -0.006831254810094833, - -0.016637753695249557, - 0.03704149276018143, - 0.029418956488370895, - -0.045027729123830795, - -0.01147896982729435, - 0.0032222128938883543, - 0.007434912025928497, - -0.08236000686883926, - 0.04922019690275192, - 0.017478952184319496, - -0.0376509390771389, - 0.07833422720432281, - -0.047492578625679016, - -0.06431808322668076, - 0.031461507081985474, - -0.07579408586025238, - 0.09862212836742401, - 0.08787371963262558, - 0.008924763649702072, - -0.0470295324921608, - -0.021108150482177734, - 0.0765337124466896, - -0.005508362781256437, - -0.09920899569988251, - -0.03975412994623184, - 0.04680348560214043, - 0.11293455958366394, - -0.004147372208535671, - -0.008561430498957634, - 0.029330581426620483, - 0.07162770628929138, - -0.006370825227349997, - 0.08896437287330627, - 0.0730324387550354, - 0.07857243716716766, - -0.011741924099624157, - 0.016542578116059303, - 0.013277491554617882, - 0.08568202704191208, - 0.0365888848900795, - -0.009046215564012527, - 0.00134345144033432, - -0.010595113039016724, - -0.03115909919142723, - 0.001813046634197235, - -0.016159240156412125, - -0.0438741073012352, - -0.03822213411331177, - -0.0296674445271492, - 0.009476404637098312, - -0.03547278791666031, - -0.030248742550611496, - 0.0015751596074551344, - 0.08084380626678467, - -0.013797730207443237, - 0.05011191964149475, - 0.028738608583807945, - -0.017701828852295876, - 0.028609108179807663, - -0.04165536165237427, - -0.04038427770137787, - -0.033882759511470795, - 0.003850731998682022, - 0.029894759878516197, - 0.06803813576698303, - 0.010777734220027924, - 0.02098166011273861, - 0.10072540491819382, - 0.037381548434495926, - 0.013857911340892315, - 0.014234564267098904, - -0.08099372684955597, - 0.08434265851974487, - 0.1128661036491394, - -0.019581366330385208, - 0.05152810737490654, - -0.014639541506767273, - 0.04346306622028351, - 0.028025131672620773, - -0.07644529640674591, - -0.0149867944419384, - -0.03752937540411949, - 0.03354319557547569, - 0.01883382722735405, - 0.10219782590866089, - 0.024212142452597618, - 0.023683704435825348, - 0.12026466429233551, - -0.07696861028671265, - -0.07811364531517029, - -0.04685017466545105, - 0.020663248375058174, - -0.08006954193115234, - 0.06868821382522583, - 0.049958180636167526, - 0.018483765423297882, - 0.027916600927710533, - 0.0651274248957634, - 0.001998619642108679, - 0.03573717549443245, - 0.0033614288549870253, - -0.07070489972829819, - -0.02143549732863903, - -0.06060607358813286, - 0.025016959756612778, - 0.08599035441875458, - 0.02988770604133606, - 0.10118745267391205, - 0.006766083650290966, - 0.025512486696243286, - -0.08451934158802032, - -0.003950513433665037, - 0.04807303473353386, - 0.02188900113105774, - -0.0190617386251688, - -0.029232874512672424, - -0.019365286454558372, - -0.09402510523796082, - 0.03969733417034149, - -0.05569050833582878, - 0.08042807877063751, - -0.033141449093818665, - -4.494811219046824e-05, - 0.0841088518500328, - 0.0019143037497997284, - -0.030746646225452423, - -0.07616119086742401, - -0.03583524376153946, - -0.0154340248554945, - 0.025227200239896774, - -0.12619835138320923, - -0.0742165595293045, - -0.036740221083164215, - 0.025796081870794296, - -0.005953145679086447, - 0.02056020125746727, - 0.07888464629650116, - -0.017125576734542847, - 0.021695397794246674, - -0.0013919075718149543, - 0.014222665689885616, - -0.06085383892059326, - -0.08637982606887817, - -0.008353529497981071, - -0.052160099148750305, - -0.012566241435706615, - 0.0632978230714798, - -0.0007249763002619147, - 0.021564027294516563, - 0.006890064105391502, - -0.053601957857608795, - -0.10291656851768494, - 0.03308693692088127, - 0.011536362580955029, - 0.0006774887442588806, - 0.0648837760090828, - 0.07050660997629166, - -0.06708021461963654, - 0.04630706459283829, - 0.04192341864109039, - 0.08083929121494293, - -0.06159328669309616, - 0.018643440678715706, - -0.09010124206542969, - 0.03023688867688179, - 0.13584372401237488, - -0.051041215658187866, - -0.08429925888776779, - -0.07979002594947815, - -0.0765543133020401, - 0.07438375800848007, - -0.03615685552358627, - -0.05224291980266571, - 0.015784140676259995, - -0.026803268119692802, - -0.08065406233072281, - -0.07475551962852478, - 0.08840927481651306, - -0.019861675798892975, - 0.000561397522687912, - -0.0594276487827301, - 0.005635014735162258, - -0.011994479224085808, - 0.05452972650527954, - -0.05477689951658249, - 0.03244395554065704, - 0.06490307301282883, - -0.06395669281482697, - 0.018686428666114807, - 0.05370347201824188, - 0.055524300783872604, - -0.01574614644050598, - -0.01902826502919197, - -0.07318990677595139, - 0.04314978048205376, - -0.0285206139087677, - 0.0673958957195282, - 0.02181817591190338, - -0.027508800849318504, - -0.047594424337148666, - 0.04699129983782768, - -0.010133549571037292, - 0.01799565553665161, - 0.06949862837791443, - 0.06538397073745728, - 0.007716785650700331, - -0.08463312685489655, - 0.10020949691534042, - 0.009254100732505322, - 0.009770847856998444, - -0.029096392914652824, - 0.0018080523004755378, - -0.058436810970306396, - 0.02323175221681595, - 1.7389655113220215e-05, - -0.08250914514064789, - -0.002193694468587637, - -0.019860494881868362, - 0.00676284683868289, - 0.03341388329863548, - 0.08732720464468002, - 0.04965898394584656, - -0.06717147678136826 - ] - }, - "p244_229.wav": { - "name": "p244", - "embedding": [ - 0.017833705991506577, - 0.10620729625225067, - -0.02716187760233879, - 0.06193678453564644, - -0.05028887465596199, - -0.01674700900912285, - -0.08416841179132462, - 0.0586332343518734, - 0.018962420523166656, - 0.09082196652889252, - -0.024159403517842293, - 0.10156888514757156, - -0.04226793348789215, - -0.10385236889123917, - -0.004946193657815456, - 0.003811277449131012, - 0.015462502837181091, - 0.018416576087474823, - 0.012632036581635475, - -0.026110099628567696, - -0.03203895688056946, - 0.004537452943623066, - -0.03025299310684204, - 0.000410422682762146, - -0.013634571805596352, - 0.018337521702051163, - -0.0398084819316864, - 0.03187377005815506, - -0.019862772896885872, - -0.060700614005327225, - -0.004677378572523594, - 0.022295722737908363, - -0.03438471257686615, - -0.0035824680235236883, - -0.007223563268780708, - -0.008648294024169445, - -0.004147071857005358, - -0.01863870583474636, - -0.031555965542793274, - -0.0344526432454586, - -0.04499049484729767, - 0.0218128003180027, - 0.02852516621351242, - -0.059561338275671005, - 0.020503636449575424, - 0.02322128415107727, - -0.027357393875718117, - -0.01871231012046337, - -0.038537222892045975, - 0.0892009288072586, - 0.029826998710632324, - 0.07851661741733551, - -0.04619782790541649, - -0.03014095313847065, - 0.10330498218536377, - 0.01882355473935604, - -0.009541727602481842, - -0.027155457064509392, - -0.011539775878190994, - 0.07540429383516312, - 0.02208646759390831, - 0.013419600203633308, - 0.042072951793670654, - 0.06542489677667618, - 0.026318825781345367, - 0.0207879189401865, - 0.05928638577461243, - 0.05388724058866501, - -0.03340350463986397, - 0.032644789665937424, - 0.04676036536693573, - 0.035159528255462646, - 0.0031194668263196945, - 0.03228311240673065, - -0.005200378596782684, - 0.018861297518014908, - 0.01503603346645832, - 0.03180718049407005, - -0.031021390110254288, - -0.01753920689225197, - -0.003928624093532562, - 0.027134915813803673, - 0.007655126042664051, - -0.027180857956409454, - -0.04441680386662483, - -0.027815070003271103, - 0.07109994441270828, - 0.008170605637133121, - 0.018829017877578735, - 0.019240474328398705, - 0.04515431448817253, - 0.007108947262167931, - -0.06692110002040863, - -0.03214964270591736, - 0.03002394735813141, - -0.017836879938840866, - 0.0601254403591156, - 0.000507846474647522, - 0.00819731131196022, - 0.0015452175866812468, - 0.05034971609711647, - -0.012081120163202286, - 0.03314417600631714, - -0.006373772397637367, - -0.04044809937477112, - 0.011094868183135986, - 0.03351490944623947, - 0.021656449884176254, - 0.059381045401096344, - 0.006152201443910599, - 0.040625881403684616, - 0.07226324081420898, - -0.05167388543486595, - -0.036990970373153687, - 0.01653316803276539, - 0.04657892510294914, - -0.032473526895046234, - 0.08378227055072784, - 0.003351696766912937, - 0.05009856075048447, - 0.0572018139064312, - 0.0042100027203559875, - -0.03722354769706726, - -0.016422713175415993, - 0.010823165997862816, - -0.028255663812160492, - 0.054991669952869415, - 0.03505391627550125, - -0.0277281291782856, - -0.0378371886909008, - 0.06286531686782837, - -0.009166107513010502, - -0.0195931326597929, - 0.009264307096600533, - 0.01508574839681387, - -0.05154145881533623, - 0.06666966527700424, - -0.05569108948111534, - 0.008931046351790428, - 0.04931595176458359, - -0.019608136266469955, - -0.010359052568674088, - 0.007967304438352585, - -0.060940101742744446, - 0.037310630083084106, - 0.004216235596686602, - -0.004898916929960251, - 0.07396860420703888, - -0.05401541292667389, - -0.07106470316648483, - -0.030234647914767265, - 0.01728491485118866, - -0.016407834365963936, - 0.06678484380245209, - 0.06425316631793976, - 0.02962702140212059, - 0.04817122220993042, - 0.0010351669043302536, - 0.01694277673959732, - 0.019808391109108925, - -0.1101369857788086, - 0.009859793819487095, - 0.01395457610487938, - 0.0019650347530841827, - -0.022062331438064575, - 0.009369672276079655, - 0.0010352330282330513, - -0.02205272763967514, - 0.012263722717761993, - 0.041676051914691925, - 0.016890935599803925, - 0.046777721494436264, - -0.11090710759162903, - 0.003162207081913948, - -0.033976003527641296, - -0.050292376428842545, - 0.030784860253334045, - -0.025186769664287567, - -0.02213302068412304, - 0.02199498936533928, - 0.034588564187288284, - -0.005461312830448151, - -0.04336395859718323, - -0.035829924046993256, - -0.02146868407726288, - 0.006920505315065384, - 0.0031632333993911743, - -0.0021576033905148506, - -0.02171609178185463, - 0.007879875600337982, - 0.04192621260881424, - 0.016796531155705452, - 0.011167256161570549, - 0.056430600583553314, - -0.034959372133016586, - -0.0005472246557474136, - 0.024400025606155396, - 0.09771516919136047, - 0.04066973179578781, - -0.08596210181713104, - -0.07395122945308685, - 0.00012766290456056595, - -0.0559719055891037, - 0.023752085864543915, - -0.01878785341978073, - 0.0335935540497303, - 0.015935957431793213, - 0.014390076510608196, - 0.039736147969961166, - -0.14267529547214508, - 0.03004344180226326, - -0.030806226655840874, - -0.03931436687707901, - 0.00065656378865242, - 0.000554962083697319, - 0.040239207446575165, - 0.016702713444828987, - -0.03528685122728348, - -0.05296364799141884, - 0.021238017827272415, - 0.028150256723165512, - 0.029138362035155296, - 0.0690004751086235, - 0.04669996723532677, - -0.008775357156991959, - -0.0012180993799120188, - -0.03143259137868881, - 0.007968328893184662, - 0.011450434103608131, - 0.04193948954343796, - 0.016909148544073105, - -0.015046491287648678, - -0.08710579574108124, - 0.05308601260185242, - -0.010983648709952831, - 0.05314164608716965, - -0.02919692173600197, - 0.01054445095360279, - 0.03424951061606407, - -0.03450099378824234, - 0.11250001192092896, - 0.04888845607638359, - -0.02481604367494583, - -0.030990026891231537, - -0.017108354717493057, - -0.036871287971735, - 0.07498010993003845, - 0.04275849089026451, - -0.04594205319881439, - -0.016575051471590996, - 0.06173774600028992, - 0.04882063716650009, - 0.08966310322284698, - 0.06832963973283768, - 0.05440453067421913, - 0.03674720972776413 - ] - }, - "p244_305.wav": { - "name": "p244", - "embedding": [ - 0.03680841997265816, - 0.11020034551620483, - -0.005404968746006489, - 0.042662445455789566, - -0.08041616529226303, - 0.08192805200815201, - -0.09941112995147705, - 0.11860743165016174, - -0.0606069341301918, - 0.12563851475715637, - -0.09892147034406662, - 0.1306304782629013, - -0.014961876906454563, - -0.18951694667339325, - -0.03994905576109886, - 0.05225594714283943, - -0.028645865619182587, - 0.008471691980957985, - -0.04621202498674393, - -0.01793196052312851, - 0.05020938441157341, - 0.019284356385469437, - 0.06857504695653915, - -0.013151300139725208, - 0.031644877046346664, - 0.046304889023303986, - 0.015884162858128548, - 0.0573231503367424, - 0.0376487597823143, - -0.05762620270252228, - -0.07605525851249695, - 0.12885041534900665, - -0.014173022471368313, - 0.005599393509328365, - 0.05730842053890228, - -0.023400746285915375, - 0.0107292914763093, - -0.061165884137153625, - -0.008159165270626545, - 0.010970084927976131, - -0.025679657235741615, - 0.06106745824217796, - 0.020902398973703384, - -0.0282975472509861, - 0.06579822301864624, - -0.00013658902025781572, - -0.04225555807352066, - -0.023120585829019547, - -0.09900441765785217, - 0.14053599536418915, - 0.07213610410690308, - -0.02566283755004406, - -0.075237937271595, - -0.06398482620716095, - 0.12165427207946777, - -0.002922208048403263, - -0.11024611443281174, - -0.03415912017226219, - 0.07996848970651627, - 0.16135293245315552, - 0.007831237278878689, - 0.0005735987797379494, - 0.020971955731511116, - 0.11034524440765381, - -0.009645863436162472, - 0.10238414257764816, - 0.04607567936182022, - 0.07685147970914841, - 0.0033366908319294453, - 0.08128233253955841, - 0.02057475410401821, - 0.06220689043402672, - -0.030061066150665283, - -0.04662223532795906, - 0.01886085979640484, - -0.037505168467760086, - -0.03627442196011543, - 0.028389321640133858, - -0.03163444623351097, - -0.02072555013000965, - -0.03730696067214012, - -0.008698281832039356, - 0.004216532222926617, - -0.05045827850699425, - -0.05701678246259689, - 0.06090954318642616, - -0.0005308945546858013, - 0.0026624053716659546, - 0.07018835097551346, - 0.058347903192043304, - -0.015369430184364319, - 0.030175304040312767, - -0.03861163556575775, - -0.12848998606204987, - 0.003807591274380684, - 0.019269131124019623, - -0.011519728228449821, - 0.07888594269752502, - 0.015645693987607956, - -0.026519672945141792, - 0.10311182588338852, - 0.08790585398674011, - -0.003693113336339593, - 0.05167796090245247, - -0.07798141241073608, - 0.12200459837913513, - 0.10174231976270676, - 0.007830099202692509, - 0.05984542891383171, - -0.031067993491888046, - 0.09622670710086823, - 0.07772275805473328, - -0.12174350768327713, - -0.06391138583421707, - -0.015521051362156868, - -0.018069177865982056, - -0.0008157648844644427, - 0.07142185419797897, - -0.015518763102591038, - 0.007603475823998451, - 0.08897192031145096, - -0.07205375283956528, - -0.07780874520540237, - -0.040904443711042404, - 0.04534268006682396, - -0.06015076860785484, - 0.059068720787763596, - 0.04122454300522804, - -0.01691916584968567, - -0.0098841218277812, - 0.055033717304468155, - -0.017712585628032684, - 0.01491404790431261, - 0.07901303470134735, - -0.07045823335647583, - 0.022614985704421997, - -0.05301900580525398, - 0.011059349402785301, - 0.07335592061281204, - 0.05476197227835655, - 0.0561140775680542, - -0.008677709847688675, - 0.004275009501725435, - -0.05714411288499832, - -0.0068344492465257645, - 0.046769410371780396, - 0.04538201913237572, - 0.01631047949194908, - -0.025193823501467705, - -0.055848535150289536, - -0.09241708368062973, - 0.03677891939878464, - -0.01886765845119953, - 0.10332703590393066, - -0.014842845499515533, - 0.024641763418912888, - 0.07389681041240692, - 0.023641254752874374, - -0.01999754272401333, - -0.08563105762004852, - -0.03083745203912258, - 0.035126619040966034, - 0.025894906371831894, - -0.07319611310958862, - -0.057273030281066895, - 0.0014720156323164701, - 2.184821460105013e-05, - -0.04095613956451416, - 0.02348559908568859, - 0.04756169766187668, - 0.00873467419296503, - 0.06310738623142242, - -0.08655968308448792, - 0.027806872501969337, - -0.09011808782815933, - -0.01761840656399727, - -0.0385696180164814, - -0.043738093227148056, - -0.030356185510754585, - 0.08681339025497437, - 0.0356714241206646, - 0.005997860804200172, - 0.03047958016395569, - -0.05473127216100693, - -0.06523144990205765, - 0.06382925808429718, - 0.059864506125450134, - 0.022563794627785683, - 0.08718200027942657, - 0.047233566641807556, - -0.0451233796775341, - 0.08615673333406448, - 0.07195208966732025, - 0.05867895483970642, - -0.002825414063408971, - -0.011505942791700363, - -0.07360249757766724, - 0.06834246963262558, - 0.10501454770565033, - -0.11997657269239426, - -0.11935344338417053, - -0.06379147619009018, - -0.06624368578195572, - 0.06997809559106827, - -0.02433452196419239, - -0.0262463241815567, - 0.04251294583082199, - -0.023216083645820618, - -0.0944429561495781, - -0.08610774576663971, - 0.11461147665977478, - -0.057830873876810074, - -0.02340402454137802, - -0.03950190544128418, - 0.023174431174993515, - 0.07389065623283386, - 0.005727465730160475, - -0.04888283461332321, - -0.00010191417095484212, - 0.0781739354133606, - -0.07571560889482498, - -0.007918321527540684, - 0.02574598230421543, - 0.005559690296649933, - -0.08457118272781372, - 0.047549787908792496, - -0.07322046905755997, - 0.07703110575675964, - -0.06899742037057877, - 0.18086005747318268, - 0.004408083390444517, - -0.043381791561841965, - -0.07191946357488632, - 0.08766552805900574, - -0.039148908108472824, - 0.013512498699128628, - 0.052040182054042816, - 0.05019459128379822, - -0.004328541923314333, - -0.10064201802015305, - 0.12004023790359497, - 0.009381997399032116, - -0.03776310011744499, - -0.07108494639396667, - -0.016123419627547264, - -0.048631854355335236, - 0.011479893699288368, - 0.027229811996221542, - -0.09176034480333328, - -0.023768458515405655, - 0.018228860571980476, - -0.01637456752359867, - 0.09974496811628342, - 0.14912520349025726, - 0.08032150566577911, - -0.08421117812395096 - ] - }, - "p244_321.wav": { - "name": "p244", - "embedding": [ - 0.019796855747699738, - 0.04795306921005249, - -0.019162900745868683, - -0.0013976339250802994, - -0.05059266462922096, - 0.024233508855104446, - -0.11165747791528702, - 0.08841949701309204, - -0.009336846880614758, - 0.12800636887550354, - -0.042159970849752426, - 0.11095093935728073, - 0.0015247608534991741, - -0.1398591846227646, - 0.014686169102787971, - 0.026818890124559402, - -0.01941770501434803, - -0.017896147444844246, - -0.00888101477175951, - -0.08759269118309021, - 0.04669930413365364, - 0.06280328333377838, - 0.023890424519777298, - -0.03796340525150299, - 0.00501624308526516, - 0.07881958037614822, - -0.00682907784357667, - 0.004837107844650745, - -0.011024710722267628, - -0.09525908529758453, - -0.04165209084749222, - 0.07646425068378448, - -0.04464235156774521, - -0.024425994604825974, - 0.01538074016571045, - -0.02293332666158676, - -0.008042561821639538, - -0.020627465099096298, - -0.004315420985221863, - 0.04895251989364624, - -0.06276361644268036, - 0.07247351109981537, - 0.026428688317537308, - -0.01012672483921051, - 0.05220962315797806, - -0.01447707787156105, - -0.03048100508749485, - -0.0012980960309505463, - -0.07267862558364868, - 0.13778889179229736, - 0.07741786539554596, - -0.02722783014178276, - -0.028835080564022064, - -0.039682306349277496, - 0.06727282702922821, - 0.00670588668435812, - -0.10694492608308792, - -0.012221192941069603, - 0.03368746489286423, - 0.08983111381530762, - -0.018398467451334, - -0.05516328290104866, - 0.05287482589483261, - 0.08594126999378204, - 0.01762217842042446, - 0.05788952857255936, - 0.08418719470500946, - 0.07011488825082779, - -0.03242700919508934, - -0.022819530218839645, - 0.02979768067598343, - 0.0952475368976593, - 0.0562124066054821, - -0.020052915439009666, - 0.0411151684820652, - 0.002737700939178467, - -0.009134945459663868, - -0.029955647885799408, - -0.015836356207728386, - -0.01971692405641079, - -0.018036289140582085, - -0.009873829782009125, - 0.020086398348212242, - 0.03005480021238327, - -0.0292836781591177, - 0.01388915441930294, - 0.05110170692205429, - 0.004012066870927811, - 0.04873056337237358, - 0.007368580903857946, - 0.02270909771323204, - 0.054285578429698944, - -0.07641416788101196, - -0.027434296905994415, - 0.025849001482129097, - -0.0042922478169202805, - 0.035942044109106064, - 0.08234238624572754, - 0.03569891303777695, - -0.013023817911744118, - 0.10679589211940765, - 0.042937107384204865, - -0.006507156416773796, - -0.008870118297636509, - -0.07570001482963562, - 0.08984769880771637, - 0.11224710941314697, - -0.038124315440654755, - 0.0507424920797348, - -0.03510075435042381, - 0.0725833848118782, - -0.0006898492574691772, - -0.12000507861375809, - -0.04006369039416313, - 0.006407805718481541, - 0.04356196150183678, - -0.0028378437273204327, - 0.13622228801250458, - 0.006731804460287094, - 0.04774729162454605, - 0.10489606112241745, - -0.06673643738031387, - -0.048521216958761215, - -0.046600136905908585, - 0.035671234130859375, - -0.11617111414670944, - 0.07023552805185318, - 0.05316717550158501, - 0.0024900510907173157, - 0.0377872996032238, - 0.07560620456933975, - -0.023201899603009224, - 0.01714150607585907, - -0.026662565767765045, - -0.029489167034626007, - -0.005715946201235056, - -0.01771145686507225, - 0.01756838895380497, - 0.04702644795179367, - 0.017122114077210426, - 0.0696008950471878, - -0.002864556387066841, - -0.019465235993266106, - -0.11771953850984573, - 0.04103127121925354, - 0.009452946484088898, - 0.037627145648002625, - -0.025642866268754005, - -0.0359167642891407, - -0.011247633025050163, - -0.08937516808509827, - -0.003203418105840683, - -0.02582256682217121, - 0.058227479457855225, - -0.031154057011008263, - -0.001993859652429819, - 0.08229762315750122, - 0.057472631335258484, - -0.01950656995177269, - -0.001266084611415863, - -0.05629737675189972, - -0.01752004586160183, - 0.04999757558107376, - -0.11136072874069214, - -0.07291733473539352, - -0.03777594491839409, - 0.03453898802399635, - 0.017137693241238594, - 0.04605704918503761, - 0.07797226309776306, - -0.0021591167896986008, - 0.03852430358529091, - -0.045857787132263184, - 0.0037035192362964153, - -0.07883689552545547, - -0.08240285515785217, - -0.024815313518047333, - -0.047267187386751175, - -0.035947155207395554, - 0.0677686557173729, - -0.026642654091119766, - 0.04849773645401001, - -0.045029167085886, - -0.02876419387757778, - -0.07279334962368011, - 0.022052543237805367, - 0.042411379516124725, - -0.014073062688112259, - 0.024032149463891983, - 0.08131226152181625, - -0.025271791964769363, - 0.031216438859701157, - 0.0436992421746254, - 0.09169494360685349, - -0.03659851849079132, - 0.04318968579173088, - -0.05520794168114662, - 0.0829092338681221, - 0.07640048116445541, - -0.020023712888360023, - -0.063369020819664, - -0.043132685124874115, - -0.0794314593076706, - 0.06705223023891449, - -0.020340420305728912, - -0.014383744448423386, - -0.0043847993947565556, - 0.022201169282197952, - -0.0691576898097992, - -0.04532690346240997, - 0.06268709152936935, - -0.02989770844578743, - -0.00779334269464016, - -0.08017323911190033, - 0.02725606970489025, - 0.06483534723520279, - 0.07840752601623535, - -0.04323766380548477, - 0.003998568281531334, - 0.04557940363883972, - -0.02123401314020157, - 0.04879053309559822, - 0.051013581454753876, - 0.06213816627860069, - -0.06196678429841995, - -0.035608939826488495, - -0.07556778937578201, - 0.02215547114610672, - -0.05067184194922447, - 0.06656070053577423, - 0.037851981818675995, - -0.0398666076362133, - -0.0593203566968441, - 0.053124748170375824, - -0.0021822997368872166, - 0.022914491593837738, - 0.058885447680950165, - 0.06444264948368073, - 0.05139835178852081, - -0.06555067747831345, - 0.0732717290520668, - 0.03350609540939331, - -0.006020057946443558, - -0.03344335779547691, - -0.00962885096669197, - -0.01858488656580448, - 0.029179146513342857, - 0.036740198731422424, - -0.07965373992919922, - 0.0013965889811515808, - 0.01820480264723301, - 0.018503092229366302, - 0.03805097937583923, - 0.09350802004337311, - 0.03438076749444008, - -0.11205171793699265 - ] - }, - "p244_068.wav": { - "name": "p244", - "embedding": [ - 0.021957755088806152, - 0.08661796152591705, - -0.045143336057662964, - 0.045182548463344574, - -0.047540441155433655, - 0.010512247681617737, - -0.11310746520757675, - 0.10278674960136414, - -0.036397069692611694, - 0.11621536314487457, - -0.08819311112165451, - 0.10504996031522751, - -0.07022294402122498, - -0.15615186095237732, - -0.023822052404284477, - 0.0656767338514328, - -0.0005303770303726196, - -0.038710445165634155, - -0.006298385560512543, - -0.029215510934591293, - 0.07068923115730286, - 0.05148620530962944, - 0.017076954245567322, - 0.007087378762662411, - -0.012709235772490501, - 0.07656851410865784, - -0.008050093427300453, - 0.011457858607172966, - -0.004715288989245892, - 0.010694569908082485, - -0.012077799066901207, - 0.09943683445453644, - -0.014580751769244671, - -0.021040506660938263, - 0.02109205350279808, - 0.03495434671640396, - -0.019907262176275253, - -0.03617654740810394, - -0.000608989386819303, - -0.006250749342143536, - -0.0753464549779892, - 0.039726804941892624, - -0.0034810006618499756, - -0.02756824716925621, - 0.07469600439071655, - -0.03918081149458885, - -0.050030939280986786, - -0.008366195484995842, - -0.10358190536499023, - 0.13226330280303955, - 0.09312580525875092, - 0.042326267808675766, - -0.06573665142059326, - -0.035372018814086914, - 0.10529046505689621, - 0.009614803828299046, - -0.07926337420940399, - -0.055499326437711716, - 0.05049272999167442, - 0.16806785762310028, - -0.0018078784924000502, - -0.02924937568604946, - 0.04494518041610718, - 0.08643177151679993, - 0.04230610281229019, - 0.06142454966902733, - 0.08683254569768906, - 0.07367929816246033, - 0.007889879867434502, - -0.02790161967277527, - 0.05355392396450043, - 0.07458736002445221, - 0.03828192874789238, - -0.03543815761804581, - 0.01036419440060854, - 0.006485484540462494, - -0.029976023361086845, - 0.018398797139525414, - -0.023383930325508118, - -0.051529936492443085, - -0.022684192284941673, - -0.004640957340598106, - -0.013122609816491604, - 0.001032407395541668, - -0.04056040570139885, - 0.02226077765226364, - 0.06955316662788391, - -0.0331730917096138, - 0.06142030283808708, - 0.030625488609075546, - -0.015783414244651794, - 0.03583595156669617, - -0.05616746470332146, - -0.06951442360877991, - 0.02198934182524681, - 0.02224070392549038, - 0.0034164737444370985, - 0.07401338964700699, - 0.02572927437722683, - 0.002608424751088023, - 0.10432995855808258, - 0.023159176111221313, - 0.02326396480202675, - 0.01384873129427433, - -0.09176649153232574, - 0.1016901433467865, - 0.10549823939800262, - -0.03362666070461273, - 0.0482378713786602, - -0.009836315177381039, - 0.017206335440278053, - 0.05310118943452835, - -0.09218424558639526, - -0.04348192363977432, - 0.01949073001742363, - 0.02991928532719612, - 0.01068449392914772, - 0.10253587365150452, - 0.02146149054169655, - 0.028457026928663254, - 0.1260330080986023, - -0.09592334926128387, - -0.10011017322540283, - -0.057887911796569824, - 0.040403492748737335, - -0.0695645660161972, - 0.06672489643096924, - 0.06927646696567535, - 0.023627087473869324, - 0.004220356233417988, - 0.05582958087325096, - -0.006523303687572479, - 0.029547661542892456, - -0.014327874407172203, - -0.055371325463056564, - 0.017639292404055595, - -0.05609823018312454, - -0.015749260783195496, - 0.07552137225866318, - 0.02237766608595848, - 0.06844121217727661, - 0.008556347340345383, - 0.020640438422560692, - -0.12003402411937714, - 0.0007948220591060817, - 0.0727209597826004, - 0.03607843816280365, - -0.020361270755529404, - -0.044254548847675323, - -0.04218670725822449, - -0.06681978702545166, - 0.006706803105771542, - -0.03010953590273857, - 0.09841638803482056, - -0.023907622322440147, - 0.012109657749533653, - 0.08864200115203857, - -0.004977382719516754, - -0.007578730117529631, - -0.04252775013446808, - -0.02234969660639763, - -0.007929573766887188, - 0.03151892125606537, - -0.09064247459173203, - -0.1010613963007927, - -0.042087361216545105, - 0.05107451602816582, - -0.004260665737092495, - 0.042364686727523804, - 0.052337389439344406, - -0.013811245560646057, - 0.007843616418540478, - -0.06644966453313828, - 0.04462031275033951, - -0.08869294822216034, - -0.056289754807949066, - -0.014875976368784904, - -0.03884541988372803, - 0.006139889359474182, - 0.08160577714443207, - 0.013248255476355553, - 0.024326007813215256, - -0.0032954688649624586, - -0.08268805593252182, - -0.1023300513625145, - 0.05481996759772301, - 0.061673473566770554, - 0.003450061660259962, - 0.0645458847284317, - 0.04077550023794174, - -0.044062625616788864, - 0.038811683654785156, - 0.03586976230144501, - 0.10323973000049591, - -0.04386085271835327, - 0.004681393504142761, - -0.060749601572752, - 0.036128636449575424, - 0.10026691854000092, - -0.08631306886672974, - -0.07773762196302414, - -0.06431446224451065, - -0.07211191207170486, - 0.05085686594247818, - -0.03988942131400108, - 0.01222461462020874, - 0.028577325865626335, - -0.0391903892159462, - -0.12443135678768158, - -0.09700140357017517, - 0.07328532636165619, - -0.015357635915279388, - -0.014184346422553062, - -0.061515968292951584, - 0.03144798055291176, - 0.05173064395785332, - 0.008370292373001575, - -0.048340167850255966, - -0.0010128326248377562, - 0.011528288945555687, - -0.04620502144098282, - -0.009316708892583847, - 0.05019637197256088, - 0.04620800167322159, - -0.07486826181411743, - -0.013767186552286148, - -0.088576540350914, - 0.08730854839086533, - -0.05167301744222641, - 0.11671514809131622, - -0.004235226195305586, - -0.03978075832128525, - -0.09189099073410034, - 0.05710427090525627, - 0.028938813135027885, - 0.049866896122694016, - 0.02716229483485222, - 0.06394459307193756, - 0.0003793786163441837, - -0.07575772702693939, - 0.09853824973106384, - 0.04341161996126175, - -0.015513102523982525, - -0.07642939686775208, - -0.016793806105852127, - -0.05546639487147331, - 0.018490217626094818, - -0.0011689866660162807, - -0.05994240194559097, - -0.000582697510253638, - -0.0060240477323532104, - 0.025851421058177948, - 0.06462063640356064, - 0.09856706857681274, - 0.035542722791433334, - -0.09254105389118195 - ] - }, - "p244_376.wav": { - "name": "p244", - "embedding": [ - 0.08005376160144806, - 0.05755379796028137, - -0.06888500601053238, - -0.012651419267058372, - -0.035178836435079575, - 0.05041232705116272, - -0.14282119274139404, - 0.05526858940720558, - -0.017436450347304344, - 0.15130344033241272, - -0.03355814889073372, - 0.11094611138105392, - 0.027208877727389336, - -0.10332140326499939, - -0.02636384405195713, - 0.006753427907824516, - -0.017748337239027023, - -0.004211030900478363, - -0.06095856428146362, - -0.04716094210743904, - 0.010429040528833866, - 0.05530063062906265, - 0.03440217301249504, - -0.06851283460855484, - 0.02622714266180992, - 0.04758075624704361, - -0.002288578078150749, - 0.01325017586350441, - -0.02644115313887596, - -0.04145092889666557, - 0.00013965927064418793, - 0.08812232315540314, - -0.05831935256719589, - -0.007134494371712208, - -0.00359090487472713, - 0.00300761591643095, - -0.0018879435956478119, - -0.07648806273937225, - -0.002619081176817417, - 0.05342339351773262, - -0.0006017116829752922, - 0.08844119310379028, - 0.04588779807090759, - 0.012877222150564194, - -0.013752523809671402, - -0.02985967881977558, - -0.025843659415841103, - -0.0272990670055151, - -0.06780489534139633, - 0.18060865998268127, - 0.06884300708770752, - 0.005504269618541002, - -0.08884146809577942, - -0.017812181264162064, - 0.06815776228904724, - -0.013821378350257874, - -0.06650679558515549, - -0.051671311259269714, - -0.0009009093046188354, - 0.10872600972652435, - -0.018352646380662918, - -0.05834049731492996, - 0.02400658279657364, - 0.10218660533428192, - 0.024838706478476524, - 0.01669878512620926, - 0.10635505616664886, - 0.10029220581054688, - -0.030666068196296692, - 0.012608409859240055, - 0.03512316942214966, - 0.04906298592686653, - 0.05049573630094528, - -0.030832210555672646, - 0.0599546879529953, - -0.032943420112133026, - 0.0007438166067004204, - -0.020310375839471817, - -0.03576834127306938, - -0.07504996657371521, - 0.0055182864889502525, - -0.005051222629845142, - 0.019051004201173782, - 0.1001109629869461, - -0.10099520534276962, - 0.0008055642247200012, - 0.054867908358573914, - -0.061348363757133484, - 0.05157175660133362, - 0.07086262106895447, - 0.038022495806217194, - 0.0048141684383153915, - -0.059027619659900665, - -0.06818430125713348, - 0.06334421038627625, - 0.005557971075177193, - 0.030040446668863297, - 0.04530750960111618, - 0.03309766203165054, - -0.015002413652837276, - 0.06790737062692642, - 0.03983112424612045, - -0.028200428932905197, - -0.031751230359077454, - -0.04700809717178345, - 0.11032786965370178, - 0.1379425972700119, - -0.03843233734369278, - 0.007988182827830315, - -0.022303558886051178, - 0.0240476131439209, - 0.023102665320038795, - -0.09188297390937805, - -0.07471267879009247, - 0.04373764246702194, - 0.05013854801654816, - 0.04415269196033478, - 0.09229746460914612, - 0.01910434290766716, - 0.044870488345623016, - 0.058838970959186554, - -0.022323831915855408, - -0.05037125200033188, - -0.031643085181713104, - 0.014776039868593216, - -0.06577251851558685, - 0.020165421068668365, - 0.061019591987133026, - 0.004524789750576019, - -0.03427709639072418, - 0.07929814606904984, - 0.01673387736082077, - 0.013604751788079739, - -0.024389877915382385, - 0.043047912418842316, - 0.07457157224416733, - 0.02622353844344616, - -0.0023830030113458633, - 0.02857119031250477, - 0.020267723128199577, - 0.057761844247579575, - 0.026318516582250595, - -0.010373399592936039, - -0.11678669601678848, - 0.04177180677652359, - 0.038499727845191956, - 0.03413465619087219, - -0.07446363568305969, - -0.028032515197992325, - -0.011551225557923317, - -0.03445816785097122, - 0.0166546031832695, - -0.03555645793676376, - 0.04926202446222305, - 0.02559366077184677, - -0.03673495352268219, - 0.1158822774887085, - -0.033373527228832245, - -0.014727499336004257, - 0.01235896721482277, - 0.045747436583042145, - 0.019564781337976456, - 0.04482809826731682, - -0.06912360340356827, - -0.05930550396442413, - 0.001979677937924862, - 0.01577814482152462, - 0.013632276095449924, - 0.038298387080430984, - 0.07666600495576859, - -0.048963628709316254, - 0.041163742542266846, - -0.06342019140720367, - -0.009470120072364807, - -0.07057616114616394, - 0.0076567791402339935, - 0.010691531002521515, - -0.09257781505584717, - -0.03947608545422554, - 0.08207451552152634, - 0.01605331525206566, - 0.03958521783351898, - -0.08270879089832306, - -0.07009458541870117, - -0.021396761760115623, - 0.042822498828172684, - 0.0718824714422226, - -0.055736735463142395, - -0.010422486811876297, - 0.058570556342601776, - 0.04986683279275894, - 0.015990938991308212, - 0.08449632674455643, - 0.04153852164745331, - -0.061078086495399475, - -0.03711984306573868, - -0.03062603622674942, - 0.09993880987167358, - 0.04734416678547859, - -0.05824292451143265, - -0.04347402602434158, - -0.05519230663776398, - -0.049645937979221344, - -0.0006622616201639175, - -0.014162433333694935, - 0.024793529883027077, - 0.06623566150665283, - -0.021464698016643524, - -0.08998558670282364, - -0.0979444831609726, - 0.06329875439405441, - -0.05878762528300285, - 0.013441061601042747, - -0.05012490227818489, - 0.027473634108901024, - 0.043029628694057465, - 0.05713218078017235, - -0.040637753903865814, - 0.007757308892905712, - -0.020825708284974098, - -0.060269929468631744, - 0.0030862241983413696, - 0.013228049501776695, - 0.04468826949596405, - -0.08472061902284622, - -0.011824308894574642, - -0.06840802729129791, - 0.07352784276008606, - -0.07417911291122437, - 0.07702597230672836, - 0.03445609286427498, - -0.028549835085868835, - -0.07389676570892334, - 0.004822645336389542, - -0.04218965023756027, - 0.057287391275167465, - 0.07284535467624664, - 0.03744577243924141, - 0.02262120321393013, - -0.08249017596244812, - 0.06453859806060791, - 0.08595191687345505, - -0.007596771232783794, - -0.09834901243448257, - 0.0011981930583715439, - -0.0032746782526373863, - 0.060035690665245056, - 0.05292436107993126, - -0.025849156081676483, - 0.040095530450344086, - 0.029390152543783188, - -0.03652733191847801, - 0.04038412123918533, - 0.07081020623445511, - 0.0669822245836258, - -0.10407344251871109 - ] - }, - "p244_070.wav": { - "name": "p244", - "embedding": [ - 0.02991032972931862, - 0.09713266789913177, - -0.027360284700989723, - 0.02170083485543728, - -0.047729186713695526, - 0.055943526327610016, - -0.13302892446517944, - 0.09923289716243744, - -0.0437522754073143, - 0.14577391743659973, - -0.07060668617486954, - 0.08505018055438995, - -0.029882129281759262, - -0.18598291277885437, - -0.029957802966237068, - 0.06529025733470917, - -0.059457626193761826, - -0.03936466574668884, - -0.04785887897014618, - -0.023037217557430267, - 0.0352051705121994, - 0.05845373868942261, - 0.02115449495613575, - -0.022364582866430283, - 0.023670166730880737, - 0.06351901590824127, - 0.00473762396723032, - 0.039859239012002945, - 0.0013181092217564583, - -0.05319696292281151, - -0.029683595523238182, - 0.11725907027721405, - -0.03794175386428833, - 0.018588010221719742, - 0.025406356900930405, - 0.014373437501490116, - 0.018563341349363327, - -0.06947159767150879, - -0.010458077304065228, - 0.014902902767062187, - -0.0382770337164402, - 0.06767833232879639, - 0.028078097850084305, - 0.00964970514178276, - 0.03624027594923973, - 0.008601536974310875, - -0.03129652887582779, - -0.06333072483539581, - -0.09231466054916382, - 0.1972379833459854, - 0.08844916522502899, - -0.006180133670568466, - -0.048308469355106354, - -0.09691385924816132, - 0.09024622291326523, - 0.016768306493759155, - -0.12709854543209076, - -0.06816892325878143, - 0.0870758593082428, - 0.16377541422843933, - -0.015808267518877983, - -0.0325927734375, - 0.013753147795796394, - 0.13827481865882874, - 0.01878228224813938, - 0.09819979965686798, - 0.0577523335814476, - 0.09746627509593964, - 0.004603349603712559, - 0.0063022105023264885, - 0.07522371411323547, - 0.05628213658928871, - 0.03123718872666359, - -0.016654256731271744, - 0.035716086626052856, - -0.014248053543269634, - -0.025026725605130196, - 0.012815079651772976, - -0.009755978360772133, - -0.02446960285305977, - -0.0052015832625329494, - 0.002701279241591692, - -0.01197902113199234, - 0.015339416451752186, - -0.013912796974182129, - 0.02174682915210724, - 0.029543699696660042, - -0.009072719141840935, - 0.08121216297149658, - 0.03776708245277405, - 0.015159412287175655, - 0.04681462049484253, - -0.05047263950109482, - -0.08258160948753357, - 0.029082901775836945, - 0.030308786779642105, - 0.012764479964971542, - 0.06561272591352463, - 0.02340395748615265, - -0.03610274940729141, - 0.10929451882839203, - 0.02647586166858673, - -0.016308387741446495, - 0.012034917250275612, - -0.10742451250553131, - 0.1267780065536499, - 0.07977531850337982, - -0.011146089062094688, - 0.03917150944471359, - -0.0402151495218277, - 0.06598741561174393, - 0.07048916816711426, - -0.142117440700531, - -0.07743804156780243, - 0.025727108120918274, - 0.010038471780717373, - -0.028583722189068794, - 0.10993412137031555, - 0.0159462783485651, - 0.010519732721149921, - 0.1172567829489708, - -0.10484252125024796, - -0.07501819729804993, - -0.025926880538463593, - 0.047169029712677, - -0.09261322766542435, - 0.018937285989522934, - 0.07269708812236786, - -0.029842954128980637, - 0.007695285603404045, - 0.07650066912174225, - -0.0011957152746617794, - 0.034363117069005966, - 0.006253550760447979, - -0.04821476340293884, - 0.03430265188217163, - -0.0352766327559948, - -0.0020013500470668077, - 0.045845627784729004, - 0.038289979100227356, - 0.049407415091991425, - -0.01659550704061985, - -0.05738826096057892, - -0.1140483021736145, - 0.01262338925153017, - 0.033136963844299316, - 0.06008845195174217, - -0.01889149844646454, - -0.00403453316539526, - -0.03142246976494789, - -0.08135172724723816, - 0.021794293075799942, - -0.02001180127263069, - 0.08747489005327225, - -0.0022539724595844746, - -0.027037477120757103, - 0.11984295397996902, - 0.01634308136999607, - -0.013876904733479023, - -0.05187677592039108, - -0.04038695991039276, - 0.03837493807077408, - 0.04228370636701584, - -0.09457358717918396, - -0.061183761805295944, - 0.017095627263188362, - 0.027456611394882202, - -0.00366988405585289, - 0.034399040043354034, - 0.04362881928682327, - 0.011307156644761562, - 0.023048173636198044, - -0.07092536985874176, - 0.006714926101267338, - -0.08838729560375214, - -0.0592900887131691, - -0.006112528499215841, - -0.028270918875932693, - -0.022105993703007698, - 0.09926992654800415, - -0.009517538361251354, - 0.0219819787889719, - -0.021933868527412415, - -0.07600809633731842, - -0.06995662301778793, - 0.07575470209121704, - 0.08184435963630676, - 8.164811879396439e-05, - 0.0515405610203743, - 0.04392187297344208, - -0.0358964279294014, - 0.027801673859357834, - 0.05057409405708313, - 0.11894149333238602, - -0.03312252461910248, - 0.010453984141349792, - -0.07434603571891785, - 0.0778932273387909, - 0.06405719369649887, - -0.10046273469924927, - -0.05399708077311516, - -0.03222255781292915, - -0.05673178285360336, - 0.03812501206994057, - -0.032521992921829224, - 0.007975148037075996, - 0.023129835724830627, - -0.01954576186835766, - -0.10331720858812332, - -0.09622026234865189, - 0.08285944163799286, - -0.04898538440465927, - -0.014663532376289368, - -0.06842975318431854, - 0.05165817216038704, - 0.08830922842025757, - 0.07179246097803116, - -0.028822287917137146, - -0.004184132441878319, - 0.048411935567855835, - -0.06446801126003265, - 0.0017306981608271599, - 0.04234875738620758, - 0.037913233041763306, - -0.09251242130994797, - 0.004728993866592646, - -0.08809943497180939, - 0.0548415444791317, - -0.06621024012565613, - 0.14646996557712555, - 0.01086841244250536, - -0.06429386138916016, - -0.09507139772176743, - 0.04500804841518402, - -0.03568064421415329, - 0.038801148533821106, - 0.02710224688053131, - 0.04702979698777199, - 0.05346471816301346, - -0.058262720704078674, - 0.11559824645519257, - 0.04072568565607071, - -0.005541316233575344, - -0.052699729800224304, - -0.026144415140151978, - -0.042245879769325256, - 0.047387562692165375, - -0.0011509372852742672, - -0.09449885785579681, - -0.007616832386702299, - 0.03220047429203987, - -0.014819370582699776, - 0.07149173319339752, - 0.13382050395011902, - 0.06893161684274673, - -0.1137724369764328 - ] - }, - "p244_260.wav": { - "name": "p244", - "embedding": [ - 0.052443671971559525, - 0.058890312910079956, - -0.030283790081739426, - 0.054286450147628784, - -0.05942036956548691, - 0.03844401612877846, - -0.13732722401618958, - 0.08087147772312164, - -0.026981018483638763, - 0.1198892891407013, - -0.060615673661231995, - 0.07791361212730408, - -0.019531795755028725, - -0.18594130873680115, - -0.01834254525601864, - 0.06921707838773727, - -0.06945834308862686, - -0.057750023901462555, - -0.07611195743083954, - -0.032044682651758194, - 0.020030103623867035, - 0.05806142836809158, - 0.03044389933347702, - -0.013777684420347214, - 0.033260051161050797, - 0.053187862038612366, - -0.005918641574680805, - 0.027794208377599716, - 0.009298181161284447, - -0.034195128828287125, - -0.010616540908813477, - 0.10243809968233109, - -0.01972627080976963, - -0.011815393343567848, - 0.005173263140022755, - 0.03616705164313316, - 0.002077273791655898, - -0.08505409955978394, - -0.03782462701201439, - 0.01574067585170269, - -0.06782083213329315, - 0.06345131993293762, - 0.03816036134958267, - -0.0339784175157547, - 0.039595648646354675, - -0.025284461677074432, - -0.050554897636175156, - -0.05418383330106735, - -0.12210095673799515, - 0.18167096376419067, - 0.07810959219932556, - 0.021752292290329933, - -0.068272665143013, - -0.07620363682508469, - 0.09472226351499557, - 0.0032911384478211403, - -0.12374389171600342, - -0.050256822258234024, - 0.07356399297714233, - 0.17306257784366608, - -0.023705286905169487, - -0.0021210014820098877, - 0.027197862043976784, - 0.13342586159706116, - 0.06263761967420578, - 0.07645954191684723, - 0.06787553429603577, - 0.11010432988405228, - 0.002539274049922824, - 0.016204629093408585, - 0.09764999151229858, - 0.059212684631347656, - 0.03640780970454216, - -0.0123871685937047, - 0.01393324974924326, - -0.0020597586408257484, - -0.03439733386039734, - -0.006506206467747688, - -0.017389077693223953, - -0.02587355673313141, - 0.0013553816825151443, - -0.019604841247200966, - 0.009471730329096317, - 0.018233075737953186, - -0.03592627868056297, - 0.02556605450809002, - 0.054522350430488586, - -0.03486078977584839, - 0.06509394943714142, - 0.050987839698791504, - 0.003218352561816573, - 0.0436897911131382, - -0.03764643147587776, - -0.0888967365026474, - 0.009503361769020557, - 0.023859849199652672, - 0.024276316165924072, - 0.048773396760225296, - 0.03251905366778374, - -0.030649341642856598, - 0.1110071912407875, - 0.02671528235077858, - -0.011274587363004684, - 0.01955975592136383, - -0.09594254940748215, - 0.11146451532840729, - 0.09117516875267029, - -0.011454186402261257, - 0.040852826088666916, - -0.021633144468069077, - 0.05776110664010048, - 0.0782390683889389, - -0.12134939432144165, - -0.04581364244222641, - 0.025709660723805428, - -0.006021748296916485, - -0.006508306600153446, - 0.11656110733747482, - 0.02181277610361576, - 0.022313140332698822, - 0.11436766386032104, - -0.09455771744251251, - -0.05395294725894928, - -0.013253034092485905, - 0.0563943050801754, - -0.08456818014383316, - 0.03143411874771118, - 0.06915058195590973, - -0.024777468293905258, - 0.005611828062683344, - 0.06044044345617294, - -0.0011769109405577183, - 0.01612609066069126, - -0.017426365986466408, - -0.03795291483402252, - 0.06245235726237297, - -0.027717262506484985, - -0.0146824661642313, - 0.08564204722642899, - 0.030956588685512543, - 0.04711495339870453, - -0.011472516693174839, - -0.03338033705949783, - -0.10827721655368805, - 0.02675252966582775, - 0.04157167673110962, - 0.08721060305833817, - -0.019418086856603622, - 0.009227249771356583, - -0.058872297406196594, - -0.08381900936365128, - 0.056617505848407745, - -0.030123643577098846, - 0.08945368230342865, - -0.005842579994350672, - -0.030310453847050667, - 0.11009860038757324, - -0.009250789880752563, - -0.0023176763206720352, - -0.029247581958770752, - -0.023278385400772095, - 0.04241662472486496, - 0.0491216778755188, - -0.08824587613344193, - -0.05917992815375328, - 0.012933153659105301, - 0.022040069103240967, - -0.028918232768774033, - 0.01963481307029724, - 0.017823772504925728, - -0.003989948891103268, - 0.006159224547445774, - -0.07605648040771484, - 0.025758519768714905, - -0.09067247807979584, - -0.04475948214530945, - 0.021828006953001022, - -0.04493986442685127, - -0.00769712682813406, - 0.09507131576538086, - 0.012354816310107708, - 0.007893905974924564, - -0.03547287732362747, - -0.11190629750490189, - -0.06183738261461258, - 0.06806796044111252, - 0.06126062572002411, - -0.005525221116840839, - 0.044351838529109955, - 0.05669216066598892, - -0.01432847324758768, - 0.01546574104577303, - 0.04030876234173775, - 0.11800795793533325, - -0.03175816312432289, - -0.00919390469789505, - -0.06634333729743958, - 0.08731898665428162, - 0.07194938510656357, - -0.08271962404251099, - -0.053904324769973755, - -0.040673449635505676, - -0.062066707760095596, - 0.0386207140982151, - -0.021277619525790215, - 0.005010928027331829, - 0.04068051651120186, - -0.03413543850183487, - -0.12400849163532257, - -0.1026727557182312, - 0.08904910832643509, - -0.050866737961769104, - -0.02218184620141983, - -0.07930473238229752, - 0.03549589961767197, - 0.07337690144777298, - 0.04734059423208237, - -0.01640145853161812, - 0.008923745714128017, - 0.02853236347436905, - -0.07541575282812119, - -0.01096288301050663, - 0.04997691139578819, - 0.00787083525210619, - -0.10931070894002914, - -0.02784734219312668, - -0.0821065753698349, - 0.07258278131484985, - -0.04227996617555618, - 0.1414038985967636, - 0.01636827364563942, - -0.0457879975438118, - -0.08554629236459732, - 0.04441457241773605, - -0.024595730006694794, - 0.07259853184223175, - 0.06704141199588776, - 0.056777939200401306, - 0.05424455553293228, - -0.060157254338264465, - 0.09853781759738922, - 0.048772942274808884, - -0.010409444570541382, - -0.04846806824207306, - -0.01409197598695755, - -0.03018895536661148, - 0.028375796973705292, - -0.022878238931298256, - -0.06497061252593994, - 0.014018911868333817, - 0.024653032422065735, - -0.03470531478524208, - 0.05763044208288193, - 0.11638481914997101, - 0.08661766350269318, - -0.08111521601676941 - ] - }, - "p244_192.wav": { - "name": "p244", - "embedding": [ - 0.03262646123766899, - 0.12379908561706543, - 0.016163086518645287, - -0.00663268007338047, - -0.05911390855908394, - 0.09224914014339447, - -0.10246001183986664, - 0.13159795105457306, - -0.08496902137994766, - 0.14029830694198608, - -0.06387554854154587, - 0.12614262104034424, - -0.02968781255185604, - -0.18280376493930817, - -0.08825138211250305, - 0.038232047110795975, - -0.08782477676868439, - -0.012869427911937237, - -0.05663047358393669, - -0.03225100040435791, - 0.045121416449546814, - 0.021371454000473022, - 0.038543567061424255, - 0.014830940403044224, - 0.03173444792628288, - 0.06083229184150696, - 0.03976612165570259, - 0.06885115057229996, - 0.058115214109420776, - -0.09211589395999908, - -0.0532311350107193, - 0.0960359275341034, - -0.039316657930612564, - 0.01907646283507347, - 0.05744375288486481, - -0.027037344872951508, - 0.05597357451915741, - -0.026630999520421028, - -0.014653770253062248, - 0.0547000952064991, - -0.005754037760198116, - 0.08610182255506516, - 0.022965729236602783, - 0.026887163519859314, - 0.02968793734908104, - 0.03296804800629616, - -0.006874381564557552, - -0.04925329610705376, - -0.08828482031822205, - 0.17789803445339203, - 0.07549478858709335, - -0.04517019912600517, - -0.04509381577372551, - -0.08592663705348969, - 0.11843317002058029, - -0.047517500817775726, - -0.13891443610191345, - -0.0443793386220932, - 0.07666254788637161, - 0.14082317054271698, - -0.02262004092335701, - -0.025023939087986946, - 0.01558383833616972, - 0.12578435242176056, - 0.0017377515323460102, - 0.09159385412931442, - 0.06470347940921783, - 0.0568973682820797, - -0.006759846117347479, - 0.04127608239650726, - 0.04138202592730522, - 0.05442634969949722, - -0.003463547211140394, - -0.028999852016568184, - 0.04508412629365921, - -0.04047863930463791, - 0.007330487947911024, - 0.025570763275027275, - -0.001731345895677805, - 0.011806417256593704, - -0.025929901748895645, - 0.03188137710094452, - -0.032630082219839096, - -0.020052870735526085, - -0.028647303581237793, - 0.08918803185224533, - -0.06625811010599136, - 0.020840546116232872, - 0.08517219871282578, - 0.056607574224472046, - 0.03346594423055649, - 0.05179920047521591, - -0.026437651365995407, - -0.08375440537929535, - 0.01749361678957939, - 0.010003789328038692, - 0.0013587971916422248, - 0.06163894012570381, - 0.030074529349803925, - -0.009656962938606739, - 0.11676964163780212, - 0.0974079817533493, - -0.015413512475788593, - 0.018763558939099312, - -0.1064629852771759, - 0.13343174755573273, - 0.06986691802740097, - -0.0060981521382927895, - 0.048893094062805176, - -0.012913327664136887, - 0.0947539359331131, - 0.06055876240134239, - -0.13951069116592407, - -0.09990041702985764, - 0.02111734077334404, - 0.018239859491586685, - -0.006232604384422302, - 0.06367859989404678, - -0.038519486784935, - 0.0013844977365806699, - 0.09338568150997162, - -0.037311892956495285, - -0.03465544059872627, - -0.04517214000225067, - 0.047214996069669724, - -0.08431456983089447, - 0.04411686584353447, - 0.0476948618888855, - -0.03336651623249054, - 0.010245944373309612, - 0.10439297556877136, - -0.027889762073755264, - -0.006752275861799717, - 0.05106702446937561, - -0.05176100134849548, - 0.020060457289218903, - -0.043331947177648544, - 0.0307435542345047, - 0.05499693751335144, - 0.06152747943997383, - 0.0451640710234642, - -0.0065767355263233185, - -0.047320377081632614, - -0.07724594324827194, - 0.01527004037052393, - 0.007835125550627708, - 0.029460886493325233, - 0.002716443035751581, - -0.01829267293214798, - -0.04220691695809364, - -0.0415181890130043, - 0.009277798235416412, - 0.011681064032018185, - 0.10670042783021927, - -0.0373481810092926, - 0.011390705592930317, - 0.09584599733352661, - 0.02628462389111519, - -0.012467705644667149, - -0.06510966271162033, - -0.01812545396387577, - 0.018218478187918663, - 0.021362971514463425, - -0.06408677995204926, - -0.04967020824551582, - 0.015409364365041256, - 0.03610571473836899, - 0.007837394252419472, - 0.05593043565750122, - 0.055983323603868484, - -0.007863645441830158, - 0.06584001332521439, - -0.06082644313573837, - 0.04337921366095543, - -0.07438793033361435, - -0.04220271110534668, - -0.04701162502169609, - -0.04382346570491791, - -0.053444165736436844, - 0.07747042179107666, - 0.013824761845171452, - 0.030396370217204094, - 0.023242823779582977, - -0.08791415393352509, - -0.04846861958503723, - 0.06330010294914246, - 0.08721206337213516, - 0.022446848452091217, - 0.05515456572175026, - 0.0662652924656868, - -0.02282850444316864, - 0.10573237389326096, - 0.07012295722961426, - 0.08537440747022629, - -0.02867060713469982, - 0.02211076021194458, - -0.0632515475153923, - 0.032728876918554306, - 0.03469701483845711, - -0.11599639058113098, - -0.09122373908758163, - -0.03641390800476074, - -0.05869691073894501, - 0.053902365267276764, - -0.008009104989469051, - 0.014753764495253563, - 0.0302495788782835, - 0.012730518355965614, - -0.06036784127354622, - -0.08083370327949524, - 0.10071447491645813, - -0.06936222314834595, - -0.02176787331700325, - -0.04625125601887703, - 0.04283015802502632, - 0.10944625735282898, - 0.051922429352998734, - -0.017396582290530205, - -0.002459428273141384, - 0.03914971277117729, - -0.039964254945516586, - -0.022487320005893707, - 0.02524956688284874, - 0.0014459765516221523, - -0.08683238923549652, - 0.037161603569984436, - -0.11110566556453705, - 0.06750425696372986, - -0.06399993598461151, - 0.15809762477874756, - -0.018155252560973167, - -0.05730913206934929, - -0.07170087844133377, - 0.06281932443380356, - -0.08599540591239929, - 0.04444502294063568, - 0.045324452221393585, - 0.05362018570303917, - 0.03590121120214462, - -0.04842270910739899, - 0.11408175528049469, - 0.02636745199561119, - -0.05775199085474014, - -0.0828903317451477, - -0.021566241979599, - -0.040971413254737854, - 0.025289272889494896, - 0.049910563975572586, - -0.1077699288725853, - -0.01977474056184292, - 0.02118963748216629, - -0.036079291254282, - 0.1123875305056572, - 0.12693852186203003, - 0.05807378143072128, - -0.10722947120666504 - ] - }, - "p244_283.wav": { - "name": "p244", - "embedding": [ - 0.039232030510902405, - 0.04001661390066147, - -0.0031923092901706696, - 0.01469759177416563, - -0.030734937638044357, - 0.03192451596260071, - -0.11696989834308624, - 0.0813559889793396, - -0.0394848957657814, - 0.10779696702957153, - -0.08436741679906845, - 0.033969469368457794, - -0.038807567209005356, - -0.14530779421329498, - -0.014879296533763409, - 0.03799489140510559, - -0.06091165542602539, - -0.032437942922115326, - -0.0676305890083313, - -0.026015490293502808, - 0.030592216178774834, - 0.03598465025424957, - 0.016055293381214142, - -0.020193390548229218, - 0.007442080415785313, - 0.05791006609797478, - 0.021558858454227448, - 0.03837969899177551, - 0.007267209701240063, - -0.02674448862671852, - 0.0013659819960594177, - 0.08930043876171112, - -0.020491085946559906, - -0.048027679324150085, - 0.023123454302549362, - 0.01599838212132454, - 0.001458665356040001, - -0.05919037386775017, - -0.02921389788389206, - 0.02535497024655342, - -0.06072108447551727, - 0.050209060311317444, - 0.02088596671819687, - 0.009203490801155567, - 0.021353889256715775, - 0.020389307290315628, - -0.029122738167643547, - -0.060888539999723434, - -0.09751646220684052, - 0.17787866294384003, - 0.07247117161750793, - -0.002008268842473626, - -0.0502011701464653, - -0.06404097378253937, - 0.10148391127586365, - 0.0032503509428352118, - -0.07468050718307495, - -0.047246359288692474, - 0.07784225046634674, - 0.1442847102880478, - -0.033880677074193954, - -0.01677069440484047, - 0.025779258459806442, - 0.08851069211959839, - 0.012007324025034904, - 0.05170857533812523, - 0.08094961941242218, - 0.0826890617609024, - 0.019261198118329048, - 0.01898733153939247, - 0.08610763400793076, - 0.04475600644946098, - 0.04295939952135086, - -0.02593531832098961, - 0.05717357248067856, - 0.03452795743942261, - -0.04352286085486412, - 0.016954660415649414, - -0.01345846988260746, - -0.01772265136241913, - 0.04204338788986206, - -0.016601774841547012, - 0.013175204396247864, - 0.014141897670924664, - -0.03879683464765549, - 0.037507250905036926, - 0.00757070817053318, - 0.003475553123280406, - 0.07302048802375793, - 0.009177839383482933, - 0.019743120297789574, - 0.05916476249694824, - -0.04525167867541313, - -0.08441450446844101, - 0.019859010353684425, - 0.012698805890977383, - 0.014833247289061546, - 0.037402380257844925, - 0.05333958566188812, - -0.045696139335632324, - 0.11021425575017929, - 0.02164195105433464, - 0.011721721850335598, - 0.024101829156279564, - -0.11210121214389801, - 0.10297517478466034, - 0.09022724628448486, - -0.012470535933971405, - 0.023200623691082, - -0.02056589350104332, - 0.06078717112541199, - 0.05715538188815117, - -0.14052119851112366, - -0.056609563529491425, - 0.03597521781921387, - 0.002670317655429244, - 0.017241600900888443, - 0.11350379884243011, - -0.00435231626033783, - -0.026707038283348083, - 0.11042928695678711, - -0.10169180482625961, - -0.05147615075111389, - -0.008788736537098885, - 0.04958194121718407, - -0.08600907772779465, - 0.0028126961551606655, - 0.06777589023113251, - -0.03514304757118225, - -0.025616973638534546, - 0.09346672147512436, - -0.0063130296766757965, - -0.0005574353854171932, - -0.050451964139938354, - 0.009761122986674309, - 0.07647810131311417, - -0.035720814019441605, - -0.021647488698363304, - 0.03993307054042816, - 0.05119851976633072, - 0.013027305714786053, - 0.007492732256650925, - -0.06469928473234177, - -0.11385206878185272, - 0.020658567547798157, - 0.03075352869927883, - 0.04238678514957428, - -0.020495446398854256, - 0.001584527431987226, - -0.04922589659690857, - -0.056288160383701324, - 0.0074312081560492516, - -0.00858324859291315, - 0.07519644498825073, - 0.019060436636209488, - -0.03340581804513931, - 0.12344402074813843, - -0.020817503333091736, - 0.013176415115594864, - -0.02140885405242443, - -0.019554313272237778, - 0.04474584758281708, - 0.033792316913604736, - -0.054356422275304794, - -0.06857017427682877, - 0.0013102320954203606, - 0.01623266562819481, - 0.028343770653009415, - -0.018343066796660423, - 0.01499768253415823, - -0.011074679903686047, - 0.001171500189229846, - -0.08690568059682846, - 0.05001261830329895, - -0.09137199819087982, - -0.043171025812625885, - 0.0218740776181221, - -0.023452039808034897, - 0.006724332459270954, - 0.08522772789001465, - -0.03320242092013359, - -0.0005520532722584903, - -0.04186738654971123, - -0.09571130573749542, - -0.02740243636071682, - 0.0722603052854538, - 0.08467152714729309, - -0.0056976331397891045, - 0.039137668907642365, - 0.044860970228910446, - -0.012593826279044151, - 0.02291056327521801, - 0.04710756987333298, - 0.1249910220503807, - -0.015299561433494091, - -0.013998322188854218, - -0.03501644730567932, - 0.09460246562957764, - 0.03299938142299652, - -0.06793376803398132, - -0.04781394451856613, - -0.017772313207387924, - -0.0501258485019207, - 0.05202708765864372, - -0.00376477325335145, - 0.017450060695409775, - 0.02385827898979187, - -0.025509625673294067, - -0.08307081460952759, - -0.06406915932893753, - 0.059717610478401184, - -0.020572561770677567, - -0.04520442336797714, - -0.06958864629268646, - 0.05237307399511337, - 0.09158962965011597, - 0.057359956204891205, - -0.009468848817050457, - -0.016166023910045624, - 0.014479326084256172, - -0.058091334998607635, - -0.04781114310026169, - 0.006234246306121349, - 0.0026140189729630947, - -0.0882546454668045, - -0.0040228660218417645, - -0.10071736574172974, - 0.05490674078464508, - -0.04665672034025192, - 0.0811089426279068, - -0.018870998173952103, - -0.03884682059288025, - -0.0983276516199112, - 0.030058693140745163, - 0.01853208616375923, - 0.06611476838588715, - 0.06005669757723808, - 0.026961153373122215, - 0.06335900723934174, - -0.05181583762168884, - 0.09810954332351685, - 0.009274730458855629, - -0.000679048418533057, - -0.048414409160614014, - -0.011094672605395317, - -0.023080993443727493, - 0.00956993643194437, - -0.03550200164318085, - -0.08103357255458832, - 0.013593828305602074, - 0.026865746825933456, - -0.02848776802420616, - 0.041616037487983704, - 0.057346295565366745, - 0.034800585359334946, - -0.09665316343307495 - ] - }, - "p244_236.wav": { - "name": "p244", - "embedding": [ - 0.04820508509874344, - 0.10878953337669373, - -0.00947614386677742, - -0.0003535933792591095, - -0.04852373152971268, - 0.08393901586532593, - -0.11278443783521652, - 0.14334747195243835, - -0.08266112208366394, - 0.14938929677009583, - -0.09045444428920746, - 0.12153787910938263, - -0.03380352258682251, - -0.1644965559244156, - -0.06996169686317444, - 0.04691207408905029, - -0.06985533237457275, - -0.03311828896403313, - -0.05637100338935852, - -0.022647444158792496, - 0.03965609520673752, - 0.012664943002164364, - 0.009896627627313137, - 0.01723404787480831, - 0.03526989370584488, - 0.06919237226247787, - 0.0037125730887055397, - 0.040071550756692886, - 0.008713934570550919, - -0.051345594227313995, - -0.030846770852804184, - 0.10160335898399353, - -0.0481330007314682, - 0.016990812495350838, - 0.06602165102958679, - 0.0025146990083158016, - 0.014945178292691708, - -0.06995779275894165, - -0.02499580569565296, - 0.004144517704844475, - -0.03736572712659836, - 0.07600238174200058, - 0.00015054602408781648, - -0.00893908366560936, - 0.01967032440006733, - 0.03309566155076027, - -0.0016683717258274555, - -0.0550842210650444, - -0.08720910549163818, - 0.14490476250648499, - 0.06668956577777863, - 0.013609993271529675, - -0.08508859574794769, - -0.07864023745059967, - 0.1228390485048294, - -0.028607016429305077, - -0.10472586005926132, - -0.029922716319561005, - 0.055135756731033325, - 0.1741729974746704, - -0.05482381582260132, - -0.03255802392959595, - 0.017149999737739563, - 0.10389762371778488, - 0.0510408915579319, - 0.09742671251296997, - 0.08957777917385101, - 0.07893287390470505, - -0.007838211953639984, - 0.03179732710123062, - 0.07636762410402298, - 0.07055525481700897, - 0.08114434778690338, - -0.02431241236627102, - 0.029850732535123825, - -0.0014123732689768076, - -0.027026109397411346, - 0.015605702064931393, - -0.034852564334869385, - -0.014863528311252594, - -0.03151274472475052, - 0.023755531758069992, - 0.009298218414187431, - 0.009798758663237095, - -0.01909622736275196, - 0.06469061225652695, - 0.00819188542664051, - -0.03863329440355301, - 0.06194514408707619, - 0.05268247425556183, - 0.0052335914224386215, - 0.059845663607120514, - -0.08664561063051224, - -0.10503512620925903, - 0.02540104277431965, - -0.01200943998992443, - 0.016580455005168915, - 0.07227786630392075, - 0.05260920897126198, - -0.0127695482224226, - 0.09336817264556885, - 0.06439413875341415, - 0.0066719455644488335, - 0.015260877087712288, - -0.11065904796123505, - 0.10796335339546204, - 0.10224591940641403, - -0.041906751692295074, - 0.018132474273443222, - -0.017762072384357452, - 0.08129678666591644, - 0.08055371046066284, - -0.14529111981391907, - -0.10058961808681488, - 0.01881277561187744, - 0.007373459171503782, - 0.008507193997502327, - 0.07839669287204742, - -0.034401699900627136, - 0.020863482728600502, - 0.08997596055269241, - -0.05576471611857414, - -0.036810919642448425, - -0.03261200711131096, - 0.0408412329852581, - -0.054378122091293335, - 0.05939074605703354, - 0.0389554537832737, - 0.018266424536705017, - -0.00621865876019001, - 0.08780462294816971, - -0.012491317465901375, - -0.0341871939599514, - 0.02302609011530876, - -0.037475988268852234, - 0.023640180006623268, - -0.020730774849653244, - -0.008431666530668736, - 0.048404715955257416, - 0.06805644184350967, - 0.03736625984311104, - 0.014366347342729568, - -0.025486215949058533, - -0.08414452522993088, - 0.013811491429805756, - 0.05308109149336815, - 0.059004999697208405, - -0.014732841402292252, - -0.011847937479615211, - -0.033606112003326416, - -0.05253882706165314, - 0.012648035772144794, - 0.0009992653504014015, - 0.0962996631860733, - -0.010550910606980324, - 0.024433404207229614, - 0.10697051882743835, - 0.011619520373642445, - -0.015601426362991333, - -0.04500630497932434, - -0.00020239880541339517, - 0.020814690738916397, - 0.06258518248796463, - -0.06208540499210358, - -0.08312119543552399, - 0.0038182176649570465, - 0.018675215542316437, - -0.022086210548877716, - 0.061458975076675415, - 0.03930175304412842, - 0.005808436311781406, - 0.03233630582690239, - -0.06515025347471237, - 0.023756559938192368, - -0.12939141690731049, - -0.04911305010318756, - -0.024706944823265076, - -0.05979182571172714, - -0.018310382962226868, - 0.05946996062994003, - 0.023050716146826744, - 0.040581114590168, - 0.001777112134732306, - -0.10548600554466248, - -0.06767678260803223, - 0.06569081544876099, - 0.08394081890583038, - 0.014556505717337132, - 0.0347890630364418, - 0.07125942409038544, - 0.008142087608575821, - 0.06304094195365906, - 0.0910014659166336, - 0.11787177622318268, - -0.018391568213701248, - 0.014040175825357437, - -0.061126336455345154, - 0.07746598869562149, - 0.05195401608943939, - -0.10281551629304886, - -0.09707718342542648, - -0.036570996046066284, - -0.04190056398510933, - 0.03774503618478775, - -0.011199538595974445, - 0.03354952484369278, - 0.02544495463371277, - -0.011408906430006027, - -0.08432602882385254, - -0.08067432790994644, - 0.10441898554563522, - -0.05864937603473663, - -0.008841561153531075, - -0.06917839497327805, - 0.03518252819776535, - 0.09449824690818787, - 0.022959351539611816, - -0.005297847557812929, - 0.025215094909071922, - 0.04239176958799362, - -0.038950107991695404, - -0.025728100910782814, - 0.021930865943431854, - -0.006618882063776255, - -0.09107661247253418, - 0.019343502819538116, - -0.07480685412883759, - 0.09088470041751862, - -0.04888838902115822, - 0.15754434466362, - -0.02769552543759346, - -0.04993031173944473, - -0.0872674435377121, - 0.034873005002737045, - -0.03391573205590248, - 0.0581282377243042, - 0.04402262717485428, - 0.0796821117401123, - 0.010697830468416214, - -0.06277894228696823, - 0.11729097366333008, - 0.032235559076070786, - -0.04771881550550461, - -0.0723021849989891, - -0.06284220516681671, - -0.03661695495247841, - 0.0004031551070511341, - -9.724032133817673e-05, - -0.062462352216243744, - 0.0009330874308943748, - -0.0061837732791900635, - -0.026214733719825745, - 0.06998561322689056, - 0.13696980476379395, - 0.08397702127695084, - -0.11739620566368103 - ] - }, - "p244_252.wav": { - "name": "p244", - "embedding": [ - 0.07716768980026245, - 0.04761534184217453, - 0.022936426103115082, - -0.01818549446761608, - -0.02361423335969448, - 0.09606628119945526, - -0.11084376275539398, - 0.09879275411367416, - -0.01856781542301178, - 0.08185043931007385, - -0.0704033151268959, - 0.07855867594480515, - -0.0007906816899776459, - -0.14765167236328125, - -0.028049219399690628, - 0.049288731068372726, - -0.04007682576775551, - -0.007258512079715729, - -0.05120792239904404, - -0.017174510285258293, - 0.0006373462965711951, - 0.0317862294614315, - 0.04892366752028465, - -0.012307718396186829, - 0.04618589207530022, - 0.047960370779037476, - -0.0022773458622395992, - 0.033281974494457245, - -0.004639841616153717, - -0.06337213516235352, - -0.008107287809252739, - 0.07646127790212631, - -0.05012640357017517, - -0.005116280168294907, - 0.04253533482551575, - 0.004233282059431076, - 0.03603450953960419, - -0.09249454736709595, - -0.028095990419387817, - 0.029318884015083313, - -0.03973676264286041, - 0.08701322972774506, - 0.04862217232584953, - 0.010080568492412567, - 0.009718114510178566, - 0.010890218429267406, - -0.007595764007419348, - -0.05470741540193558, - -0.10715685784816742, - 0.15896251797676086, - 0.023291587829589844, - 0.02394668012857437, - -0.09805776923894882, - -0.042856305837631226, - 0.0678141862154007, - -0.02080141380429268, - -0.06842844188213348, - -0.020687028765678406, - 0.0457315556704998, - 0.12150713056325912, - 0.00650379341095686, - -0.038537707179784775, - 0.020190967246890068, - 0.06558647751808167, - 0.01745457760989666, - 0.03496813401579857, - 0.10727386176586151, - 0.09574540704488754, - -0.0043279025703668594, - 0.027904434129595757, - 0.047822266817092896, - 0.03478327766060829, - 0.05985298007726669, - -0.004163273144513369, - 0.034400686621665955, - -0.025424672290682793, - -0.019376840442419052, - -0.004690757021307945, - -0.020117968320846558, - -0.015141252428293228, - 0.035345081239938736, - 0.013400128111243248, - 0.032083556056022644, - 0.05194786190986633, - -0.04222938418388367, - 0.036896854639053345, - -0.010872950777411461, - 0.04008467122912407, - 0.07687951624393463, - 0.03662335127592087, - 0.022966397926211357, - 0.03104298934340477, - -0.062205057591199875, - -0.0847967267036438, - 0.026772333309054375, - 0.021584510803222656, - 0.024301722645759583, - 0.024316977709531784, - 0.022458655759692192, - -0.030945148319005966, - 0.10055385529994965, - 0.016075003892183304, - -0.0005864178529009223, - -0.0004686601459980011, - -0.07390236109495163, - 0.08552559465169907, - 0.08547310531139374, - -0.005103106610476971, - 0.04666489362716675, - -0.04283273220062256, - 0.04751395434141159, - 0.06039704382419586, - -0.10840564221143723, - -0.0551137775182724, - 0.02095617912709713, - 0.011739959940314293, - 0.041054725646972656, - 0.11576496064662933, - -0.006472109816968441, - 0.031181734055280685, - 0.057312365621328354, - -0.08539610356092453, - -0.013761365786194801, - 0.03754434734582901, - 0.010123850777745247, - -0.03408979997038841, - 0.008371716365218163, - 0.02369045466184616, - 0.012939779087901115, - -0.035803236067295074, - 0.06357365101575851, - 0.005891553126275539, - 0.006101024337112904, - -0.03183082863688469, - 0.01424261461943388, - 0.037585943937301636, - -0.006662173196673393, - -0.029049456119537354, - 0.04843834042549133, - 0.0595395490527153, - 0.012075426988303661, - 0.030909210443496704, - -0.061696119606494904, - -0.11236244440078735, - -0.017913268879055977, - 0.010937197133898735, - 0.0498560331761837, - -0.031363457441329956, - -0.024469276890158653, - -0.06001213192939758, - -0.009219100698828697, - 0.02502514235675335, - 0.003918850794434547, - 0.054274022579193115, - 0.06396757811307907, - -0.028168698772788048, - 0.07540445029735565, - -0.0026130876503884792, - 0.011308208107948303, - -0.03668171912431717, - -0.02977321669459343, - 0.016988396644592285, - 0.04607531055808067, - -0.03489614650607109, - -0.050719693303108215, - 0.011316904798150063, - -0.01980675384402275, - -0.012938972562551498, - 0.021747849881649017, - 0.04534756764769554, - -0.0015244546812027693, - -0.00390112167224288, - -0.06848718225955963, - 0.018934527412056923, - -0.07049661874771118, - -0.053243763744831085, - 0.05872231349349022, - 0.0002640386519487947, - -0.02055390551686287, - 0.08759373426437378, - 0.03117450885474682, - 0.03949025273323059, - -0.057931311428546906, - -0.0559668242931366, - -0.016329504549503326, - 0.058916669338941574, - 0.04654241353273392, - -0.0031460896134376526, - 0.02492399513721466, - 0.017247971147298813, - 0.002409940119832754, - 0.06758801639080048, - 0.04950052499771118, - 0.06565926223993301, - -0.0504579171538353, - -0.006733857095241547, - -0.004204904194921255, - 0.10001038759946823, - 0.032257337123155594, - -0.0443548820912838, - -0.060041576623916626, - 0.010238075628876686, - -0.045519229024648666, - 0.032666780054569244, - -0.004553451202809811, - 0.009114152751863003, - 0.04385507106781006, - -0.023009493947029114, - -0.08292701840400696, - -0.061900608241558075, - 0.046312179416418076, - -0.0468490794301033, - -0.011925039812922478, - -0.0627334862947464, - 0.046067014336586, - 0.08596786111593246, - 0.01104133389890194, - -0.0009143439820036292, - -0.0007118040230125189, - -3.193567317794077e-05, - -0.04350648075342178, - -0.03599806874990463, - 0.016398241743445396, - 0.024121612310409546, - -0.07949941605329514, - -0.0010461978381499648, - -0.06150464341044426, - 0.04389932006597519, - -0.009544586762785912, - 0.10946111381053925, - 0.018009494990110397, - -0.03305317461490631, - -0.05472590774297714, - 0.010353559628129005, - -0.029074829071760178, - 0.04577895253896713, - 0.030117368325591087, - 0.020630067214369774, - 0.058496929705142975, - -0.04316342994570732, - 0.07929673790931702, - 0.03900561481714249, - -0.053236447274684906, - -0.05053195357322693, - -0.023328524082899094, - -0.017847547307610512, - 0.018769679591059685, - -0.029451027512550354, - -0.049021925777196884, - 0.024573471397161484, - 0.03654532879590988, - 0.018014010041952133, - 0.029905572533607483, - 0.08131217211484909, - 0.03999240696430206, - -0.07961864769458771 - ] - }, - "p244_060.wav": { - "name": "p244", - "embedding": [ - 0.010319357737898827, - 0.0850897878408432, - -0.03894076868891716, - 0.026983702555298805, - -0.08828854560852051, - 0.02914612926542759, - -0.12848438322544098, - 0.1303921341896057, - -0.033224545419216156, - 0.11203675717115402, - -0.055660296231508255, - 0.11407133936882019, - -0.04252006858587265, - -0.1845645159482956, - 0.008322346024215221, - 0.06202714145183563, - -0.00772900553420186, - -0.06893395632505417, - -0.010762635618448257, - -0.058170855045318604, - 0.019024470821022987, - 0.05188191682100296, - 0.009776233695447445, - 0.02144307643175125, - 0.0466361939907074, - 0.08826763182878494, - -0.01392319891601801, - 0.008796894922852516, - -0.013954735361039639, - -0.02961748279631138, - -0.04825478047132492, - 0.06644025444984436, - -0.07807009667158127, - -0.013634485192596912, - 0.025580374523997307, - -0.012992185540497303, - 0.002267067087814212, - -0.05052456259727478, - -0.02736019529402256, - 0.023870903998613358, - -0.07653500139713287, - 0.09130758047103882, - 0.04592723026871681, - -0.015383795835077763, - 0.02227753773331642, - 0.026673022657632828, - 0.0010515314061194658, - -0.039813652634620667, - -0.12150304019451141, - 0.15330061316490173, - 0.06767918169498444, - -0.019426468759775162, - -0.0538233257830143, - -0.058774277567863464, - 0.11442490667104721, - 0.005418546963483095, - -0.08697262406349182, - -0.05489328131079674, - 0.0808868482708931, - 0.1208563894033432, - -0.023710474371910095, - -0.039113108068704605, - 0.029464852064847946, - 0.11568918824195862, - 0.06337639689445496, - 0.06569229811429977, - 0.05648089200258255, - 0.11258888244628906, - -0.0427105575799942, - -0.020454401150345802, - 0.07935763895511627, - 0.065859355032444, - 0.005731577984988689, - -0.0349247120320797, - -0.009022481739521027, - 0.01164968777447939, - -0.013493604026734829, - 0.0012932498939335346, - 0.0013600762467831373, - -0.025590956211090088, - -0.02267385646700859, - -0.0027841173578053713, - -0.014395585283637047, - 0.009059876203536987, - -0.018825633451342583, - 0.055172353982925415, - 0.07010673731565475, - 0.005263277795165777, - 0.0985979288816452, - 0.01685400679707527, - -0.02920975536108017, - 0.07298513501882553, - -0.09121734648942947, - -0.025173617526888847, - 0.026747766882181168, - 0.002089724177494645, - 0.0161639004945755, - 0.10048042982816696, - 0.04460211098194122, - -0.006978645455092192, - 0.15180979669094086, - 0.04709753021597862, - 0.00613615196198225, - 0.018375253304839134, - -0.07542149722576141, - 0.13488836586475372, - 0.06756802648305893, - -0.03203896805644035, - 0.06115478277206421, - -0.028003297746181488, - 0.05214086174964905, - 0.043575968593358994, - -0.13225015997886658, - -0.059863172471523285, - 0.019882699474692345, - 0.031307581812143326, - -0.045711699873209, - 0.13543730974197388, - -0.008268368430435658, - 0.038935061544179916, - 0.11968955397605896, - -0.09310030192136765, - -0.07240497320890427, - -0.011716950684785843, - 0.05096723139286041, - -0.07887426018714905, - 0.05373120307922363, - 0.08968839049339294, - -0.023526102304458618, - 0.05787473917007446, - 0.06969986110925674, - -0.006690591108053923, - 0.02990853786468506, - 0.025639597326517105, - -0.03730863705277443, - 0.01607578434050083, - -0.002495318418368697, - 0.0059391530230641365, - 0.06705472618341446, - 0.018811028450727463, - 0.07272481173276901, - -0.016190147027373314, - -0.002926398301497102, - -0.1372460424900055, - 0.03927961736917496, - 0.027552923187613487, - 0.09074218571186066, - -0.012215186841785908, - -0.03261037543416023, - -0.04710067808628082, - -0.08708988130092621, - -0.012460575439035892, - 0.024923868477344513, - 0.1019999086856842, - -0.05604429915547371, - 0.009859636425971985, - 0.09739726781845093, - 0.07259497046470642, - -0.022275546565651894, - -0.05157797783613205, - -0.05215566232800484, - -0.021176153793931007, - 0.056844379752874374, - -0.0702158585190773, - -0.08331730961799622, - -0.026942776516079903, - 0.06617077440023422, - -0.013111292384564877, - 0.08779062330722809, - 0.04665382578969002, - 0.02885263040661812, - 0.018075959756970406, - -0.08566723763942719, - 0.03140733763575554, - -0.050884511321783066, - -0.04698203131556511, - -0.03114417754113674, - 0.005914061330258846, - -0.04932389408349991, - 0.08828851580619812, - 0.02260974980890751, - 0.0691206157207489, - -0.007027794606983662, - -0.05315271392464638, - -0.07366085797548294, - 0.03419667109847069, - 0.04459504038095474, - -0.03229214996099472, - 0.046945732086896896, - 0.0862363874912262, - -0.06363877654075623, - 0.03426161780953407, - 0.060030825436115265, - 0.08963975310325623, - -0.044932879507541656, - 0.04023361951112747, - -0.03113686293363571, - 0.07413095980882645, - 0.049196142703294754, - -0.1073906198143959, - -0.04382339119911194, - -0.05128374695777893, - -0.06565576791763306, - 0.044274844229221344, - -0.011771533638238907, - 0.02642114832997322, - -0.012519543059170246, - 0.006477381102740765, - -0.08157273381948471, - -0.08441781997680664, - 0.04868568107485771, - -0.047600157558918, - 0.0062561542727053165, - -0.0975136086344719, - 0.03167145699262619, - 0.10504133254289627, - 0.06389369815587997, - -0.010879270732402802, - -0.03164425864815712, - 0.04633409529924393, - 0.00375395268201828, - 0.030372655019164085, - 0.1151462122797966, - 0.06429405510425568, - -0.08760999888181686, - -0.030764011666178703, - -0.08119678497314453, - 0.08690568804740906, - -0.021799977868795395, - 0.14866431057453156, - 0.0437784343957901, - -0.03950846940279007, - -0.09059536457061768, - 0.03331327065825462, - -0.014637211337685585, - 0.05456538498401642, - 0.02798890508711338, - 0.05034765228629112, - 0.05131957307457924, - -0.005473603960126638, - 0.1309117078781128, - 0.058576859533786774, - -0.04967375099658966, - -0.04827294871211052, - -0.028375117108225822, - -0.0350322425365448, - 0.049600750207901, - 0.05065053328871727, - -0.10405796021223068, - -0.023053869605064392, - 0.028034038841724396, - -0.009889252483844757, - 0.08101300895214081, - 0.1456712782382965, - 0.10626771301031113, - -0.11374877393245697 - ] - }, - "p244_345.wav": { - "name": "p244", - "embedding": [ - 0.045877546072006226, - 0.11875580251216888, - -0.017863981425762177, - 0.025564592331647873, - -0.0524015799164772, - 0.05442719906568527, - -0.13574808835983276, - 0.16307680308818817, - -0.039542656391859055, - 0.11975181102752686, - -0.07524090260267258, - 0.12576846778392792, - -0.03437037765979767, - -0.16086065769195557, - -0.03810508921742439, - 0.0649118721485138, - -0.03300544247031212, - -0.04286783188581467, - -0.022135574370622635, - -0.011394473724067211, - 0.023545145988464355, - 0.010001571848988533, - 0.013483229093253613, - 0.042971931397914886, - 0.024895548820495605, - 0.0677359402179718, - -0.0016721499850973487, - 0.05110224336385727, - 0.01848067156970501, - -0.016396086663007736, - -0.028569933027029037, - 0.10196627676486969, - -0.05123291537165642, - 0.022947272285819054, - 0.07415245473384857, - -0.009256826713681221, - 0.0021574050188064575, - -0.05563361570239067, - -0.015556368045508862, - -0.015096426010131836, - -0.042186420410871506, - 0.09021161496639252, - 0.036202408373355865, - -0.005907810293138027, - 0.027726221829652786, - 0.056590788066387177, - -0.0009712614119052887, - -0.03755756467580795, - -0.10771737992763519, - 0.13905805349349976, - 0.059124529361724854, - -0.004364447668194771, - -0.08264568448066711, - -0.051852934062480927, - 0.1013861745595932, - -0.03576742112636566, - -0.09168543666601181, - -0.03592255711555481, - 0.07751351594924927, - 0.14390945434570312, - -0.03813654184341431, - -0.039009541273117065, - 0.012218079529702663, - 0.13961222767829895, - 0.08239584416151047, - 0.08826127648353577, - 0.06760676205158234, - 0.1323280781507492, - -0.04040486738085747, - 0.007209773641079664, - 0.07157877087593079, - 0.06490863859653473, - 0.05382317304611206, - -0.010858990252017975, - 0.018394378945231438, - 0.0025679762475192547, - -0.003073283936828375, - 0.009680027142167091, - -0.037728674709796906, - -0.027807047590613365, - -0.031216097995638847, - 0.024840623140335083, - -0.008932779543101788, - 0.03718067705631256, - -0.011907346546649933, - 0.07937295734882355, - 0.0574285164475441, - -0.02353842183947563, - 0.07348953187465668, - 0.058348722755908966, - 0.005962574388831854, - 0.0689300000667572, - -0.10440932214260101, - -0.06982174515724182, - 0.03642618656158447, - -0.015895333141088486, - 0.038859959691762924, - 0.0743815153837204, - 0.0405430793762207, - 0.004581686109304428, - 0.1142737865447998, - 0.06260409206151962, - -0.007013286463916302, - 0.028690434992313385, - -0.09515450894832611, - 0.14377647638320923, - 0.06991235911846161, - -0.039168957620859146, - 0.033977773040533066, - -0.03357969969511032, - 0.05543025955557823, - 0.06131080910563469, - -0.12389364838600159, - -0.08814802020788193, - 0.03295309096574783, - 0.02797437272965908, - -0.028329655528068542, - 0.10221065580844879, - -0.013809229247272015, - 0.0428425595164299, - 0.08823131024837494, - -0.06793893873691559, - -0.05846641585230827, - -0.011932412162423134, - 0.037948958575725555, - -0.0711013600230217, - 0.06252309679985046, - 0.056145377457141876, - 0.008678766898810863, - 0.004064670763909817, - 0.0944502055644989, - 0.014080911874771118, - -0.009564951993525028, - 0.02134818211197853, - -0.03823674097657204, - 0.029147882014513016, - -0.004485559184104204, - 0.004731260240077972, - 0.01844809763133526, - 0.04029298946261406, - 0.0517243817448616, - 0.0017030885210260749, - 0.00338127464056015, - -0.11428224295377731, - 0.007480166386812925, - 0.05130084604024887, - 0.08715660870075226, - -0.010842518880963326, - -0.03009987436234951, - -0.032463982701301575, - -0.042041465640068054, - -0.013163061812520027, - -0.00044929361320100725, - 0.06675392389297485, - -0.029656700789928436, - 0.005936486646533012, - 0.11347314715385437, - 0.014091256074607372, - 0.00526619516313076, - -0.05493510887026787, - -0.009215408936142921, - 0.012615012004971504, - 0.06002745032310486, - -0.06845264136791229, - -0.08309277147054672, - 0.0008251086692325771, - 0.036288537085056305, - -0.023976562544703484, - 0.07259766757488251, - 0.03733580559492111, - 0.016606401652097702, - 0.022160761058330536, - -0.055476006120443344, - 0.022810615599155426, - -0.09436427056789398, - -0.06395740807056427, - -0.023368408903479576, - -0.0029617114923894405, - -0.02930443361401558, - 0.0593186616897583, - 0.03916984423995018, - 0.07658252120018005, - 0.0026528197340667248, - -0.0781402736902237, - -0.08464892953634262, - 0.058636393398046494, - 0.07157339155673981, - -0.011574629694223404, - 0.04964999482035637, - 0.06817468255758286, - -0.02451152727007866, - 0.04405029118061066, - 0.0652138888835907, - 0.09252564609050751, - -0.04052755609154701, - 0.014083432033658028, - -0.06899388134479523, - 0.06478458642959595, - 0.07376208156347275, - -0.11341925710439682, - -0.0793699398636818, - -0.01703120581805706, - -0.03897799551486969, - 0.010684812441468239, - -0.026505019515752792, - 0.023590460419654846, - 0.03499063476920128, - -0.009903956204652786, - -0.10002534091472626, - -0.09431063383817673, - 0.07781700789928436, - -0.0976959764957428, - 0.018235698342323303, - -0.07326072454452515, - 0.04077434539794922, - 0.09585803002119064, - 0.025075923651456833, - -0.04243334382772446, - -0.019204750657081604, - 0.04406733810901642, - -0.01527250837534666, - -0.010890774428844452, - 0.05198314040899277, - 0.03822604566812515, - -0.10163716971874237, - 0.010504502803087234, - -0.0579083077609539, - 0.07480528950691223, - -0.037262991070747375, - 0.16336590051651, - 0.010644020512700081, - -0.05460762977600098, - -0.08188417553901672, - 0.005301930010318756, - -0.01990138739347458, - 0.05716840922832489, - 0.021901428699493408, - 0.062422942370176315, - 0.019573554396629333, - -0.04018236696720123, - 0.14014992117881775, - 0.04381345957517624, - -0.06128812953829765, - -0.07661556452512741, - -0.04957921802997589, - -0.045815713703632355, - 0.03981441259384155, - 0.03583936765789986, - -0.09163767099380493, - -0.027579031884670258, - 0.01335985865443945, - -0.035417258739471436, - 0.07811953872442245, - 0.1480201929807663, - 0.07594288885593414, - -0.11549913138151169 - ] - }, - "p244_122.wav": { - "name": "p244", - "embedding": [ - 0.03743371739983559, - 0.10720232874155045, - -0.018781617283821106, - 0.04856396093964577, - -0.07787799090147018, - 0.09338998794555664, - -0.08635412901639938, - 0.132926344871521, - -0.09560003876686096, - 0.11818298697471619, - -0.08316017687320709, - 0.11397704482078552, - -0.06699466705322266, - -0.13302141427993774, - -0.03900410234928131, - 0.07091595232486725, - -0.03225522115826607, - -0.011559952981770039, - -0.03053993359208107, - 0.0019339919090270996, - 0.024532150477170944, - 0.004498928319662809, - 0.03958319500088692, - 0.006275035906583071, - 0.04688907414674759, - 0.058034494519233704, - 0.001993780955672264, - 0.046386830508708954, - 0.02587943710386753, - -0.05183255672454834, - -0.04817590117454529, - 0.11246327310800552, - -0.0480869896709919, - 0.004008980467915535, - 0.060408905148506165, - 0.009594632312655449, - -0.008777286857366562, - -0.06991462409496307, - -0.005293631460517645, - -0.02828967571258545, - -0.04537370055913925, - 0.06305830925703049, - 0.027596797794103622, - -0.012072106823325157, - 0.02364671789109707, - -0.00946541503071785, - -0.028811603784561157, - -0.027421480044722557, - -0.11157301068305969, - 0.13974159955978394, - 0.02989085391163826, - 0.009215213358402252, - -0.08537621796131134, - -0.08293554186820984, - 0.12916776537895203, - -0.0034411009401082993, - -0.11670493334531784, - -0.04251917451620102, - 0.07298141717910767, - 0.17307496070861816, - -0.007816367782652378, - -0.0010156766511499882, - -0.0017665550112724304, - 0.10236340761184692, - 0.042613349854946136, - 0.1062050610780716, - 0.04865824058651924, - 0.0957416445016861, - 0.03394673764705658, - 0.052192337810993195, - 0.06361228972673416, - 0.050172463059425354, - 0.0018313052132725716, - -0.014574884437024593, - 0.012013012543320656, - -0.018153436481952667, - -0.02861083298921585, - 0.04035335034132004, - -0.020496390759944916, - -0.04161035269498825, - -0.03830898553133011, - 0.010159906931221485, - 0.013967495411634445, - -0.00866398774087429, - -0.023196931928396225, - 0.07164852321147919, - 0.0011555850505828857, - -0.003916345536708832, - 0.07917851209640503, - 0.031976956874132156, - -0.039139606058597565, - 0.05405601114034653, - -0.049285341054201126, - -0.09560078382492065, - -0.010390949435532093, - 0.006245959550142288, - 0.028321517631411552, - 0.08238692581653595, - 0.022060247138142586, - -0.012857005931437016, - 0.10433919727802277, - 0.062318310141563416, - 0.043363239616155624, - 0.02795252576470375, - -0.09443861246109009, - 0.11549369990825653, - 0.06495235860347748, - 0.004485428333282471, - 0.051787763833999634, - -0.013774391263723373, - 0.08958699554204941, - 0.0867702066898346, - -0.14117901027202606, - -0.0677584707736969, - 0.010466031730175018, - -0.006722311954945326, - -0.0036849668249487877, - 0.0950571745634079, - -0.008553601801395416, - 0.005356732755899429, - 0.10411150008440018, - -0.09842915832996368, - -0.06597709655761719, - -0.014846889302134514, - 0.04449513554573059, - -0.04619382321834564, - 0.03834206238389015, - 0.05252353847026825, - -0.03631815314292908, - 0.006494474597275257, - 0.06149832159280777, - -0.005749039351940155, - 0.0011753792641684413, - 0.07839253544807434, - -0.07852672040462494, - 0.033325277268886566, - -0.0436285100877285, - 0.006331406533718109, - 0.08405425399541855, - 0.06468705832958221, - 0.062078624963760376, - -0.022429736331105232, - -0.0006883870810270309, - -0.07655367255210876, - -0.0037659863010048866, - 0.06873098760843277, - 0.05087975040078163, - -0.016011929139494896, - -0.027592938393354416, - -0.0344330370426178, - -0.07718139886856079, - 0.03035605698823929, - 0.00870976597070694, - 0.12011028826236725, - -0.025040265172719955, - 0.005098174326121807, - 0.08854014426469803, - 0.02952500618994236, - -0.016712194308638573, - -0.08891536295413971, - -0.03628239780664444, - 0.031522754579782486, - 0.04699038714170456, - -0.07000486552715302, - -0.05858318507671356, - 0.01704219914972782, - 0.02237371914088726, - -0.04608524218201637, - 0.028855513781309128, - 0.03540954738855362, - 0.018313037231564522, - 0.047766849398612976, - -0.045039497315883636, - 0.03940672427415848, - -0.09270790219306946, - -0.03135111927986145, - -0.007384052034467459, - -0.0429653562605381, - -0.03355783969163895, - 0.07964133471250534, - 0.04177909716963768, - 0.028094423934817314, - 0.03671655058860779, - -0.07740931212902069, - -0.04950239881873131, - 0.07339277863502502, - 0.040769919753074646, - 0.01997051015496254, - 0.0645984336733818, - 0.05923932045698166, - -0.03651990741491318, - 0.049070119857788086, - 0.07296834886074066, - 0.08073194324970245, - -0.02513333410024643, - -0.022510387003421783, - -0.07116544246673584, - 0.05991154536604881, - 0.08492305874824524, - -0.12777595221996307, - -0.09180017560720444, - -0.054328687489032745, - -0.04336068034172058, - 0.0594538152217865, - -0.03820797801017761, - -0.002230334095656872, - 0.014107787981629372, - -0.039769500494003296, - -0.10806524753570557, - -0.10429500043392181, - 0.11634322255849838, - -0.0626748725771904, - -0.019094964489340782, - -0.05899760127067566, - 0.029658494517207146, - 0.06473022699356079, - 0.03282465413212776, - -0.016576441004872322, - 0.030899109318852425, - 0.05824644863605499, - -0.07691401988267899, - -0.012888756580650806, - 0.06102752685546875, - -0.012921885587275028, - -0.06557910144329071, - 0.026414114981889725, - -0.07013809680938721, - 0.09113122522830963, - -0.04826099053025246, - 0.2017737329006195, - -0.03359649330377579, - -0.04099184274673462, - -0.07443004846572876, - 0.05125390738248825, - -0.04524015635251999, - 0.030260004103183746, - 0.044194724410772324, - 0.07291244715452194, - 0.011812632903456688, - -0.04344344884157181, - 0.12826985120773315, - 0.003006895072758198, - -0.03864568844437599, - -0.03855869174003601, - -0.032189831137657166, - -0.06864183396100998, - 0.006718698423355818, - -0.007533951196819544, - -0.09214520454406738, - 0.0040212357416749, - 0.011203983798623085, - -0.00021398533135652542, - 0.0785241574048996, - 0.1321500688791275, - 0.07848693430423737, - -0.07616489380598068 - ] - }, - "p244_170.wav": { - "name": "p244", - "embedding": [ - 0.05748377740383148, - 0.0796695351600647, - -0.008959709666669369, - 0.017229732125997543, - -0.03572970628738403, - 0.042074054479599, - -0.14395171403884888, - 0.12015019357204437, - -0.023967813700437546, - 0.12188416719436646, - -0.0479796901345253, - 0.10505375266075134, - -0.008924026042222977, - -0.1674666851758957, - -0.06612429022789001, - 0.045074429363012314, - -0.0664149671792984, - -0.020073339343070984, - -0.0651918277144432, - -0.009307630360126495, - 0.0353832021355629, - 0.053181421011686325, - 0.05575935170054436, - -0.02728326991200447, - 0.03762940689921379, - 0.046655409038066864, - 0.024258267134428024, - 0.0758737251162529, - 0.04325859248638153, - -0.0859338566660881, - -0.010597070679068565, - 0.08684079349040985, - -0.03945229575037956, - 0.002797730965539813, - 0.04961937293410301, - -0.0023637539707124233, - 0.019432269036769867, - -0.04971079155802727, - -0.032629162073135376, - 0.038272857666015625, - -0.03687658533453941, - 0.08606031537055969, - 0.014470947906374931, - 0.00042985318577848375, - 0.05761588364839554, - 0.022943397983908653, - -0.02185143157839775, - -0.06937938928604126, - -0.10850593447685242, - 0.16270595788955688, - 0.048342641443014145, - 0.020467355847358704, - -0.08551698923110962, - -0.07008664309978485, - 0.08488969504833221, - -0.060921430587768555, - -0.10177715867757797, - -0.04281995818018913, - 0.04743306338787079, - 0.15300270915031433, - -0.034507136791944504, - -0.021585840731859207, - 0.04405404254794121, - 0.09956991672515869, - 0.06956490129232407, - 0.0496709868311882, - 0.09219267219305038, - 0.07645878195762634, - 0.007524482905864716, - 0.029480105265975, - 0.03507820516824722, - 0.07300250977277756, - 0.03396718576550484, - 0.016427617520093918, - 0.025354888290166855, - 0.007970473729074001, - -0.025605706498026848, - -0.01369947474449873, - -0.021254710853099823, - 0.017700668424367905, - 0.0009108397061936557, - 0.0339067243039608, - 0.0005838572978973389, - 0.02060249075293541, - -0.036197926849126816, - 0.07709024846553802, - -0.027796588838100433, - -0.008777523413300514, - 0.05383291095495224, - 0.02646770142018795, - 0.01451475452631712, - 0.04008987918496132, - -0.053662534803152084, - -0.10190849006175995, - -0.016087394207715988, - 0.003562054131180048, - 0.009038129821419716, - 0.015864994376897812, - 0.01680494286119938, - -0.03324166685342789, - 0.11492624878883362, - 0.05243725702166557, - -0.02014010027050972, - 0.03435374051332474, - -0.0850381851196289, - 0.0909820944070816, - 0.07062637805938721, - -0.006881219334900379, - 0.03946191817522049, - -0.04892871901392937, - 0.04284268617630005, - 0.06308159232139587, - -0.11988546699285507, - -0.08542710542678833, - 0.0697358250617981, - 0.014273954555392265, - 0.017158182337880135, - 0.10223032534122467, - 0.004407420754432678, - 0.02800765447318554, - 0.09694602340459824, - -0.06870314478874207, - -0.030770590528845787, - -0.004913199692964554, - 0.058905959129333496, - -0.05724268779158592, - 0.04725160822272301, - 0.03419005870819092, - -0.006721088197082281, - -0.015799738466739655, - 0.09465306997299194, - -0.004607826471328735, - 0.010878166183829308, - -0.00011261676991125569, - -0.03291517123579979, - 0.030339231714606285, - -0.04807319492101669, - -0.022467290982604027, - 0.08329416811466217, - 0.07380926609039307, - 0.04109102487564087, - 0.01992044597864151, - -0.07709814608097076, - -0.1221996396780014, - -0.004207264166325331, - 0.019444618374109268, - 0.07642588019371033, - -0.012831549160182476, - -0.014584934338927269, - -0.06304802000522614, - -0.03221304342150688, - 0.024402514100074768, - 0.00975395180284977, - 0.08332888782024384, - -0.014043513685464859, - -0.008711714297533035, - 0.0906527191400528, - -0.03770761936903, - 0.010202913545072079, - -0.009045541286468506, - -0.007258260622620583, - 0.007969088852405548, - 0.03107650950551033, - -0.03641550987958908, - -0.06938638538122177, - 0.012345305643975735, - 0.02711482346057892, - -0.006814546883106232, - 0.04785529524087906, - 0.04359513148665428, - 0.006706336513161659, - 0.03680199012160301, - -0.041372548788785934, - 0.0026394943706691265, - -0.09423838555812836, - -0.053378552198410034, - 0.0013387305662035942, - -0.014718569815158844, - -0.05621272325515747, - 0.07806216925382614, - 0.02076493762433529, - 0.04274290055036545, - -0.01845531538128853, - -0.09669941663742065, - -0.06985851377248764, - 0.0628296285867691, - 0.06807747483253479, - 0.02067222259938717, - 0.0357564240694046, - 0.04432541877031326, - -0.009395377710461617, - 0.07972109317779541, - 0.0748312771320343, - 0.06763284653425217, - -0.004407945554703474, - -0.022697430104017258, - -0.05931934714317322, - 0.086830735206604, - 0.04781627655029297, - -0.07891084253787994, - -0.06726589053869247, - -0.004925444256514311, - -0.08367767184972763, - 0.023849986493587494, - -0.010991059243679047, - 0.03048563562333584, - 0.06296008825302124, - -0.004094384144991636, - -0.10446479171514511, - -0.08738195896148682, - 0.07364118099212646, - -0.09402193874120712, - -0.027812443673610687, - -0.023291196674108505, - 0.015333132818341255, - 0.0980805978178978, - 0.021116070449352264, - 0.01902790740132332, - -0.016613459214568138, - 0.04200465604662895, - -0.07272464036941528, - -0.029187094420194626, - 0.04031291604042053, - 0.0022139656357467175, - -0.07990922778844833, - 0.03259692341089249, - -0.07306845486164093, - 0.04753194749355316, - -0.044937558472156525, - 0.12213563919067383, - -0.013774930499494076, - -0.0411345511674881, - -0.08523625135421753, - 0.02425447478890419, - -0.0713401734828949, - 0.07204298675060272, - 0.022641194984316826, - 0.05019098520278931, - 0.05937380716204643, - -0.06890332698822021, - 0.12420996278524399, - 0.052706968039274216, - -0.05510779470205307, - -0.09198163449764252, - -0.07292493432760239, - -0.03229665011167526, - 0.022051174193620682, - 0.013844112865626812, - -0.05184826999902725, - 0.00027040144777856767, - 0.009622372686862946, - -0.031015580520033836, - 0.04380853474140167, - 0.11941279470920563, - 0.033248137682676315, - -0.11495515704154968 - ] - }, - "p244_069.wav": { - "name": "p244", - "embedding": [ - 0.042389072477817535, - 0.060909055173397064, - -0.03267619386315346, - 0.002641531638801098, - -0.01857568323612213, - 0.01183414924889803, - -0.1024591401219368, - 0.11261001229286194, - -0.03575439378619194, - 0.09899791330099106, - -0.06624089181423187, - 0.12662726640701294, - -0.042341820895671844, - -0.16291534900665283, - -0.00860240776091814, - 0.029767565429210663, - 0.04389046132564545, - 0.03515121340751648, - 0.021808674558997154, - 0.0020727962255477905, - 0.08016923069953918, - 0.020399831235408783, - 0.02387755550444126, - -0.061178356409072876, - -0.0027651293203234673, - 0.05555344745516777, - 0.015508322976529598, - 0.04360657185316086, - -0.0023571676574647427, - -0.003749505616724491, - 0.021052023395895958, - 0.09535599499940872, - -0.008906003087759018, - 0.01894993893802166, - 0.05497564375400543, - 0.014511961489915848, - -0.03168598189949989, - -0.05401148647069931, - -0.0075623453594744205, - -0.010130887851119041, - -0.03362499549984932, - 0.04273761436343193, - -0.00011577457189559937, - -0.0386732742190361, - 0.08641842007637024, - -0.021072236821055412, - -0.025557029992341995, - -0.022640634328126907, - -0.0796433687210083, - 0.09799011796712875, - 0.03548601269721985, - 0.07013832777738571, - -0.10872337222099304, - -0.04984432831406593, - 0.08539055287837982, - 0.0159637201577425, - -0.04192604497075081, - -0.027110770344734192, - 0.03984592482447624, - 0.1743972897529602, - 0.018841281533241272, - -0.016089502722024918, - 0.023046329617500305, - 0.01481558382511139, - 0.007711809128522873, - 0.08097852766513824, - 0.11568149924278259, - 0.03625311329960823, - 0.04287005960941315, - 0.04006768763065338, - -0.013683229684829712, - 0.10724496841430664, - -0.021905681118369102, - -0.052615076303482056, - -0.0004883408546447754, - 0.024844884872436523, - -0.07848293334245682, - 0.010138795711100101, - 0.004058877006173134, - -0.01877998560667038, - -0.012701638042926788, - -0.0051839714869856834, - 0.036180153489112854, - -0.004358217585831881, - -0.04561818391084671, - 0.0024591945111751556, - 0.027727672830224037, - -0.033819593489170074, - 0.03178202360868454, - 0.013203229755163193, - -0.022299204021692276, - 0.014154805801808834, - -0.07717344164848328, - -0.14431096613407135, - -0.02045532502233982, - 0.01677081175148487, - -0.024711361154913902, - 0.07528313994407654, - 0.016613762825727463, - -0.008961262181401253, - 0.0721164345741272, - 0.037327345460653305, - -0.004819595254957676, - 0.02987496741116047, - -0.05986471474170685, - 0.04961073771119118, - 0.08666570484638214, - -0.014121350832283497, - 0.0759602040052414, - -0.06417098641395569, - 0.017668139189481735, - 0.04760894179344177, - -0.09103067219257355, - -0.044606439769268036, - 0.02660381607711315, - 0.005931918043643236, - 0.06229817494750023, - 0.1233488991856575, - 0.03419329226016998, - 0.0265579205006361, - 0.06784731149673462, - -0.1113286018371582, - -0.10652370750904083, - -0.06957471370697021, - 0.06035409867763519, - -0.011010304093360901, - 0.08161742240190506, - 0.04019465669989586, - 0.012358935549855232, - 0.0049023712053895, - 0.018766041845083237, - -0.000120493583381176, - 0.047260113060474396, - 0.008240207098424435, - -0.033083610236644745, - 0.024753378704190254, - -0.08594093471765518, - -0.010837981477379799, - 0.05789615586400032, - 0.035636741667985916, - 0.044445864856243134, - 0.0333406999707222, - -0.027318958193063736, - -0.07351724058389664, - -0.023325413465499878, - 0.09436725080013275, - 0.0356861837208271, - -0.035730328410863876, - -0.043299898505210876, - -0.048382289707660675, - -0.07916504889726639, - -0.0031764497980475426, - -0.023856284096837044, - 0.0894659161567688, - 0.01325690932571888, - 0.0575961172580719, - 0.08197653293609619, - -0.021808994933962822, - 0.002389457542449236, - -0.03929046168923378, - -0.01464114896953106, - -0.011560480110347271, - 0.02792140655219555, - -0.07199744135141373, - -0.07748468220233917, - -0.062362540513277054, - 0.003370748832821846, - -0.04592014104127884, - -0.003650350496172905, - 0.02482995018362999, - 0.015676122158765793, - 0.02550121396780014, - -0.08696705102920532, - 0.0027029630728065968, - -0.13820025324821472, - -0.039592500776052475, - -0.022139739245176315, - 0.021407321095466614, - -0.005270976573228836, - 0.07514826208353043, - 0.02643505483865738, - 0.02515743114054203, - 0.0066955555230379105, - -0.05152153596282005, - -0.07023081183433533, - 0.04150098189711571, - 0.05895484983921051, - 0.006566681433469057, - 0.05536797642707825, - -0.003086986020207405, - -0.04773534834384918, - 0.04597030580043793, - 0.0845419317483902, - 0.059260379523038864, - 0.006793409585952759, - 0.005690903402864933, - -0.06108565628528595, - 0.08743776381015778, - 0.13043445348739624, - -0.058101505041122437, - -0.10552392899990082, - -0.044606540352106094, - -0.08202724158763885, - 0.02622777409851551, - -0.011979629285633564, - 0.008905715309083462, - 0.029565244913101196, - -0.03393614664673805, - -0.11569207906723022, - -0.06938490271568298, - 0.031257372349500656, - 0.01972610130906105, - -0.018224963918328285, - -0.06464698165655136, - 0.02669561468064785, - 0.07991744577884674, - -0.015330341644585133, - -0.009182688780128956, - -0.016383636742830276, - 0.012035254389047623, - -0.0684083104133606, - -0.024530213326215744, - 0.013870317488908768, - 0.012000054121017456, - -0.06282660365104675, - 0.01696491241455078, - -0.019633010029792786, - 0.07732855528593063, - -0.056663841009140015, - 0.09623023122549057, - -0.022688264027237892, - -0.06618054956197739, - -0.07370336353778839, - 0.04491158202290535, - 0.06285522133111954, - 0.00042776018381118774, - -0.0054189544171094894, - 0.0467192716896534, - -0.011271262541413307, - -0.10400275886058807, - 0.06921228766441345, - -0.008432026021182537, - 0.015983790159225464, - -0.06062867119908333, - -0.043254513293504715, - -0.019985631108283997, - 0.031779009848833084, - -0.05549731105566025, - -0.025366276502609253, - 0.002890250412747264, - 0.006617321632802486, - 0.021016422659158707, - 0.013747095130383968, - 0.09621340036392212, - 0.0036958791315555573, - -0.10211804509162903 - ] - }, - "p244_347.wav": { - "name": "p244", - "embedding": [ - 0.0412711426615715, - 0.05669066682457924, - 0.0026466804556548595, - -0.013535615056753159, - -0.012290127575397491, - 0.05207832157611847, - -0.11556962877511978, - 0.04488130658864975, - -0.03145916759967804, - 0.13418292999267578, - -0.05039643496274948, - 0.09852319955825806, - -0.008905481547117233, - -0.08545409142971039, - -0.029720518738031387, - 0.015832580626010895, - -0.05277622863650322, - -0.01431513112038374, - -0.008151955902576447, - -0.07682820409536362, - 0.02734529599547386, - 0.018164165318012238, - 0.04664066433906555, - -0.030748898163437843, - -0.01775631681084633, - 0.0599295012652874, - 0.008151862770318985, - 0.018725769594311714, - 0.019111307337880135, - -0.05802386254072189, - 0.016101142391562462, - 0.07306662946939468, - -0.03258818760514259, - -0.008821018040180206, - 0.036667704582214355, - 0.02222164161503315, - -0.001985148061066866, - -0.01419311948120594, - 0.009656942449510098, - 0.045648518949747086, - -0.06915364414453506, - 0.09444315731525421, - 0.017069676890969276, - -0.007167252246290445, - 0.03239572048187256, - -0.03653346747159958, - -0.04547145962715149, - 0.06134096533060074, - -0.037075694650411606, - 0.09916102886199951, - 0.0790301263332367, - -0.0058848136104643345, - -0.04327109456062317, - -0.003551008179783821, - 0.07426905632019043, - -0.013668294996023178, - -0.11215940862894058, - -0.007052119821310043, - -0.007789473980665207, - 0.08425324410200119, - -0.02867584489285946, - -0.05079594999551773, - 0.011486916802823544, - 0.08159174770116806, - 0.03348308429121971, - 0.04700622335076332, - 0.0868123322725296, - 0.07694805413484573, - -0.013397812843322754, - -0.009495899081230164, - 0.05626486986875534, - 0.07804311811923981, - 0.05993897467851639, - -0.01853775605559349, - 0.05605451017618179, - -0.022127756848931313, - -0.0038471929728984833, - -0.022197816520929337, - -0.016036830842494965, - -0.03030901774764061, - -0.055075276643037796, - -0.030812369659543037, - 0.004299653694033623, - 0.06146626174449921, - -0.02501361258327961, - -0.01709631085395813, - 0.029184209182858467, - -0.03381877392530441, - 0.023456662893295288, - 0.06639024615287781, - 0.015539669431746006, - 0.023865021765232086, - -0.04032358527183533, - -0.03108346462249756, - -0.009654205292463303, - -0.026263751089572906, - 0.0561036542057991, - 0.05736720934510231, - 0.020820975303649902, - 0.030338812619447708, - 0.05575665086507797, - 0.05765734612941742, - -0.018747318536043167, - -0.009165119379758835, - -0.08851375430822372, - 0.08497588336467743, - 0.09434656798839569, - -0.0587095245718956, - 0.002375600393861532, - 0.02574363723397255, - 0.05182548239827156, - 0.010134536772966385, - -0.08147353678941727, - -0.03569801151752472, - 0.014600043185055256, - 0.07553279399871826, - 0.037950627505779266, - 0.09037680923938751, - 0.0008282165508717299, - 0.021755561232566833, - 0.0763978660106659, - 0.03208310902118683, - -0.033214911818504333, - -0.054609719663858414, - 0.01931104250252247, - -0.08515143394470215, - 0.06209424138069153, - 0.014453418552875519, - 0.05049937963485718, - -0.013458872213959694, - 0.10869995504617691, - 0.0037034200504422188, - -0.027995191514492035, - -0.036268141120672226, - 0.00253349170088768, - 0.04465457797050476, - 0.0075359102338552475, - 0.05478878319263458, - 0.06163358315825462, - 0.011904487386345863, - 0.09669404476881027, - 0.04883698746562004, - 0.008974113501608372, - -0.08142051100730896, - 0.03174172341823578, - 0.0340711884200573, - 0.016802538186311722, - -0.03692558780312538, - -0.04192771017551422, - 0.00202106311917305, - -0.043695177882909775, - 0.02224118635058403, - -0.04560896009206772, - 0.0677952691912651, - 0.0011676126159727573, - -0.032591842114925385, - 0.09846597909927368, - -0.019296349957585335, - -0.01346222497522831, - 0.0036270413547754288, - -0.0007555702468380332, - -0.025264816358685493, - 0.054064296185970306, - -0.14167112112045288, - -0.055227093398571014, - -0.006791448220610619, - 0.037377677857875824, - 0.04774264618754387, - 0.01624024286866188, - 0.10128265619277954, - -0.058761972934007645, - 0.05141361057758331, - -0.0005744025111198425, - -0.006706186104565859, - -0.07836834341287613, - -0.0615382045507431, - -0.0359075590968132, - -0.0996285155415535, - -0.017887085676193237, - 0.03606034442782402, - -0.03364332765340805, - 0.041625794023275375, - -0.007175257429480553, - -0.08883555233478546, - -0.07037220895290375, - 0.03378533199429512, - 0.04039790853857994, - -0.026106970384716988, - 0.022121211513876915, - 0.11218108236789703, - 0.007509727030992508, - 0.02783248946070671, - 0.021564345806837082, - 0.0824040099978447, - -0.08386042714118958, - 0.014419618993997574, - -0.05962219089269638, - 0.031088335439562798, - 0.07668279111385345, - -0.03974822163581848, - -0.065896175801754, - -0.0494840107858181, - -0.025581711903214455, - 0.04325051233172417, - -0.03431348875164986, - -0.020339643582701683, - 0.015450803562998772, - -0.023189883679151535, - -0.04450700059533119, - -0.0699068158864975, - 0.07984033972024918, - -0.061840031296014786, - -0.0043916888535022736, - -0.03970395028591156, - -0.005336089059710503, - -0.02459822967648506, - 0.06447196751832962, - -0.06031797453761101, - 0.09303230792284012, - 0.015215856023132801, - -0.04186929762363434, - 0.002140691503882408, - 0.02776448428630829, - 0.015336650423705578, - -0.03899999335408211, - -0.06077704578638077, - -0.07876808196306229, - 0.05405525118112564, - -0.05180056020617485, - 0.04063853621482849, - -0.006929229944944382, - -0.035339005291461945, - -0.008251747116446495, - -0.022141527384519577, - -0.03096598945558071, - 0.02070022001862526, - 0.10553033649921417, - 0.08118073642253876, - -0.021488819271326065, - -0.02310914359986782, - 0.07726868242025375, - 0.04008672013878822, - 0.01673300936818123, - -0.05181705206632614, - 0.03634129464626312, - -0.029078567400574684, - 0.014757100492715836, - 0.05690399929881096, - -0.07162076234817505, - 0.05197465792298317, - -0.0025249968748539686, - -0.020353052765130997, - 0.014066814444959164, - 0.04892072081565857, - 0.06346987187862396, - -0.06699855625629425 - ] - }, - "p244_157.wav": { - "name": "p244", - "embedding": [ - 0.06274768710136414, - 0.03825800120830536, - -0.0033065180759876966, - -0.006682202219963074, - -0.01771368458867073, - 0.055959559977054596, - -0.13801440596580505, - 0.12309806793928146, - -0.034329187124967575, - 0.08862051367759705, - -0.06109682843089104, - 0.08656501770019531, - 0.007827946916222572, - -0.15208062529563904, - -0.03614667430520058, - 0.03548501431941986, - -0.024202939122915268, - -0.008609562180936337, - -0.054639190435409546, - -0.012602399103343487, - 0.02119191363453865, - 0.04405825585126877, - 0.0028640534728765488, - -0.023142129182815552, - 0.017828378826379776, - 0.05189964175224304, - 0.004527223762124777, - 0.023284612223505974, - -0.0057751489803195, - -0.01309884712100029, - 0.007959551177918911, - 0.08831426501274109, - -0.03701397776603699, - -0.010631110519170761, - 0.05668676644563675, - -0.010418376885354519, - 0.001741559011861682, - -0.07652382552623749, - -0.02150186523795128, - 0.02483842894434929, - -0.058899007737636566, - 0.07595877349376678, - 0.07162299752235413, - 0.015666477382183075, - 0.028073750436306, - 0.025942470878362656, - 0.014092875644564629, - -0.06324666738510132, - -0.10040765255689621, - 0.16741704940795898, - 0.027573097497224808, - 0.01804249919950962, - -0.10138100385665894, - -0.02015196904540062, - 0.07756535708904266, - -0.005804148968309164, - -0.06629043072462082, - -0.050849221646785736, - 0.055925674736499786, - 0.13648945093154907, - -0.006125593092292547, - -0.03875351697206497, - 0.02991393767297268, - 0.0978822112083435, - 0.0293409526348114, - 0.04434789717197418, - 0.11220666766166687, - 0.10735618323087692, - -0.003646738361567259, - 0.02512589655816555, - 0.044776543974876404, - 0.03431624174118042, - 0.030787356197834015, - -0.02672792598605156, - 0.036868393421173096, - -0.015505118295550346, - -0.026290182024240494, - -0.010984379798173904, - -0.03000492975115776, - -0.022326432168483734, - 0.018413206562399864, - 0.026656724512577057, - 0.021801531314849854, - 0.06617453694343567, - -0.05302262306213379, - 0.04811028763651848, - 0.02560536563396454, - -0.004730940796434879, - 0.06375011801719666, - 0.052400581538677216, - 0.02656303346157074, - 0.017524149268865585, - -0.06161477789282799, - -0.08669359982013702, - 0.018443187698721886, - 0.0006426457548514009, - 0.013397922739386559, - 0.03400969132781029, - 0.03068729117512703, - -0.021045871078968048, - 0.10060818493366241, - 0.0020663875620812178, - -0.01124049723148346, - 0.00016079223132692277, - -0.07695870101451874, - 0.10415235161781311, - 0.08591245114803314, - -0.013983006589114666, - 0.03742546588182449, - -0.06544427573680878, - 0.01936090551316738, - 0.04765874147415161, - -0.10838233679533005, - -0.058138199150562286, - 0.06782806664705276, - 0.028023432940244675, - 0.028606921434402466, - 0.14478760957717896, - 0.01191443856805563, - 0.025621986016631126, - 0.06474218517541885, - -0.08207213878631592, - -0.0389985665678978, - 0.0018848404288291931, - 0.03159947693347931, - -0.03883250057697296, - 0.03337228298187256, - 0.038793690502643585, - 0.010944174602627754, - -0.022375576198101044, - 0.07655879855155945, - 0.0033097839914262295, - 0.009736997075378895, - -0.04954742640256882, - 0.032036442309617996, - 0.07004294544458389, - 0.0069518922828137875, - -0.018580995500087738, - 0.01105495821684599, - 0.05577467009425163, - 0.024866636842489243, - 0.025071561336517334, - -0.059047795832157135, - -0.11163818836212158, - -0.019772712141275406, - 0.031170329079031944, - 0.07466323673725128, - -0.03351680934429169, - -0.023961633443832397, - -0.060349948704242706, - -0.021305903792381287, - -0.022203072905540466, - -0.015400081872940063, - 0.06040715426206589, - 0.029994137585163116, - -0.017065487802028656, - 0.08778540790081024, - -0.01113156508654356, - 0.03423745185136795, - -0.01649390161037445, - -0.0018926325719803572, - 0.013770075514912605, - 0.034245144575834274, - -0.026725511997938156, - -0.06654241681098938, - -0.0058194417506456375, - 0.001194218872115016, - -0.010738056153059006, - 0.012048224918544292, - 0.015798911452293396, - 0.0018528278451412916, - 0.004602747969329357, - -0.10483839362859726, - 0.0255399402230978, - -0.1051347479224205, - -0.02282046340405941, - 0.03679654747247696, - -0.013239650055766106, - -0.027232229709625244, - 0.09114474058151245, - 0.020934097468852997, - 0.04278257116675377, - -0.02396356873214245, - -0.07292294502258301, - -0.02666199766099453, - 0.04258349537849426, - 0.07128126919269562, - -0.035406723618507385, - 0.005308506544679403, - 0.014439131133258343, - 0.011806134134531021, - 0.03380893915891647, - 0.06416885554790497, - 0.05430710315704346, - -0.03258613124489784, - -0.030579276382923126, - -0.023772327229380608, - 0.12372585386037827, - 0.02314685843884945, - -0.0544075183570385, - -0.05280038341879845, - 0.016436295583844185, - -0.0444490909576416, - -0.006520816590636969, - -0.008584277704358101, - 0.031740956008434296, - 0.04188862442970276, - -0.008750460110604763, - -0.10833059996366501, - -0.05442196875810623, - 0.03239291161298752, - -0.08703356981277466, - 0.0047711823135614395, - -0.06967581808567047, - 0.03747133910655975, - 0.11157047748565674, - 0.017352882772684097, - -0.006289730779826641, - -0.049069903790950775, - -0.005863155238330364, - -0.0528264194726944, - -0.024261508136987686, - -0.0033458347897976637, - 0.04210058972239494, - -0.08488588035106659, - 0.004092587158083916, - -0.053820788860321045, - 0.059624847024679184, - -0.0436747744679451, - 0.09754639863967896, - 0.03522047400474548, - -0.0663733035326004, - -0.08282151818275452, - -0.0007431879639625549, - -0.005893544759601355, - 0.049697570502758026, - 0.026152510195970535, - 0.03760453313589096, - 0.046701349318027496, - -0.0530659519135952, - 0.08974557369947433, - 0.05037372559309006, - -0.03692547231912613, - -0.0663122832775116, - -0.04270852357149124, - -0.006302577909082174, - 0.03392454981803894, - 0.00201242184266448, - -0.04211777448654175, - 0.008807561360299587, - 0.03336133062839508, - -0.007241835352033377, - 0.0544072687625885, - 0.09891193360090256, - 0.04132698476314545, - -0.11022458970546722 - ] - }, - "p244_086.wav": { - "name": "p244", - "embedding": [ - 0.04058758541941643, - 0.05707496404647827, - -0.03836807608604431, - 0.03512593358755112, - -0.07383444905281067, - 0.04957398772239685, - -0.13017742335796356, - 0.11729548871517181, - -0.039957642555236816, - 0.12198658287525177, - -0.04513384401798248, - 0.1239967793226242, - -0.010964492335915565, - -0.19818654656410217, - -0.013189973309636116, - 0.05734149366617203, - -0.05365602672100067, - -0.0625680461525917, - -0.04966297373175621, - -0.034478046000003815, - 0.036917801946401596, - 0.05233831703662872, - 0.019359372556209564, - 0.0030397744849324226, - 0.020032258704304695, - 0.07939080893993378, - -0.009967454709112644, - 0.024669989943504333, - 0.001333344727754593, - -0.05349157005548477, - -0.048599258065223694, - 0.07821957767009735, - -0.06079249829053879, - -0.01427432894706726, - 0.036619942635297775, - -0.01747128553688526, - 0.0007379520684480667, - -0.05678967759013176, - -0.03972814604640007, - 0.02851865254342556, - -0.06608286499977112, - 0.07830791175365448, - 0.0477905198931694, - -0.015870993956923485, - 0.04767383635044098, - 0.008565939962863922, - -0.020001649856567383, - -0.045987483114004135, - -0.11187990009784698, - 0.15980158746242523, - 0.07865479588508606, - -0.012689968571066856, - -0.05196975916624069, - -0.054953932762145996, - 0.10646001994609833, - -0.011847546324133873, - -0.12508486211299896, - -0.04689028486609459, - 0.07448107749223709, - 0.14265106618404388, - -0.04204976186156273, - -0.03148014098405838, - 0.038656722754240036, - 0.10301309823989868, - 0.07791075110435486, - 0.0800962746143341, - 0.07613751292228699, - 0.11102531850337982, - -0.01735655963420868, - -0.006543383933603764, - 0.07973690330982208, - 0.07934500277042389, - 0.05118989571928978, - -0.012880037538707256, - 0.03483256697654724, - 0.020528405904769897, - -0.015322490595281124, - -0.01661631092429161, - -0.01214521937072277, - 0.004847847856581211, - 0.005531628616154194, - 0.008465563878417015, - 0.023781727999448776, - 0.03004276752471924, - -0.03144514933228493, - 0.07102768123149872, - 0.0543365404009819, - -0.003726797876879573, - 0.056550078094005585, - 0.024787262082099915, - 0.0032945151906460524, - 0.07655567675828934, - -0.08138968050479889, - -0.06683298945426941, - 0.03440267965197563, - 0.019296666607260704, - 0.009587163105607033, - 0.063373863697052, - 0.04588541015982628, - -0.018813274800777435, - 0.12973400950431824, - 0.04215530306100845, - -0.011943644843995571, - 0.03597428277134895, - -0.08418693393468857, - 0.1198873445391655, - 0.08880268037319183, - -0.029398974031209946, - 0.04533214494585991, - -0.049159400165081024, - 0.08031581342220306, - 0.05285089462995529, - -0.13597974181175232, - -0.06376269459724426, - 0.05149390548467636, - 0.006144902668893337, - -0.025638848543167114, - 0.1461046189069748, - -0.008281498216092587, - 0.040571462363004684, - 0.12188776582479477, - -0.08619432896375656, - -0.044897690415382385, - -0.01341365184634924, - 0.052110083401203156, - -0.08784531056880951, - 0.05693289265036583, - 0.049084704369306564, - -0.012311004102230072, - 0.022327056154608727, - 0.08460091054439545, - -0.02457287907600403, - -0.007772268261760473, - 0.0021988588850945234, - -0.027888190001249313, - 0.03187965601682663, - -0.011864447966217995, - -0.013593818061053753, - 0.06836052983999252, - 0.02206624671816826, - 0.03742603212594986, - -0.024825064465403557, - -0.0301041416823864, - -0.1429411917924881, - 0.03209402784705162, - 0.016581948846578598, - 0.09144237637519836, - -0.00959692057222128, - -0.005573159083724022, - -0.058278173208236694, - -0.09083827584981918, - 0.015277802012860775, - -0.01225945632904768, - 0.08049440383911133, - -0.03330737352371216, - -0.006423125043511391, - 0.08229725062847137, - 0.03271114453673363, - 0.006481239106506109, - -0.03171835467219353, - -0.04404463991522789, - 0.008224808610975742, - 0.05602450668811798, - -0.07359646260738373, - -0.07248391956090927, - -0.02017083391547203, - 0.04001403599977493, - -0.011114749126136303, - 0.050568774342536926, - 0.04193432256579399, - 0.02349749766290188, - 0.020095184445381165, - -0.0834217518568039, - 0.024718699976801872, - -0.09383046627044678, - -0.06108575314283371, - -0.01371628325432539, - -0.019321896135807037, - -0.022519215941429138, - 0.07915105670690536, - 0.01181795448064804, - 0.04354029893875122, - -0.03930105268955231, - -0.07850587368011475, - -0.07777340710163116, - 0.05252227932214737, - 0.0632658526301384, - -0.015045162290334702, - 0.03825882077217102, - 0.06574724614620209, - -0.026200678199529648, - 0.0372898206114769, - 0.051983561366796494, - 0.10803788900375366, - -0.01902872882783413, - 0.020945537835359573, - -0.0446934811770916, - 0.11168535053730011, - 0.06274493038654327, - -0.07197760790586472, - -0.05890105292201042, - -0.017712388187646866, - -0.0668000727891922, - 0.045169398188591, - -0.026235414668917656, - 0.007637351751327515, - 0.022234197705984116, - 0.02016567438840866, - -0.10075777024030685, - -0.08245828002691269, - 0.07092501223087311, - -0.06577587872743607, - -0.011416262947022915, - -0.0934334397315979, - 0.037599124014377594, - 0.10930037498474121, - 0.0385400652885437, - -0.02920175902545452, - -0.010879136621952057, - 0.039247818291187286, - -0.01921367272734642, - 0.026680922135710716, - 0.0700419545173645, - 0.04611950367689133, - -0.11677803099155426, - -0.030073177069425583, - -0.07577842473983765, - 0.0585419163107872, - -0.04171869158744812, - 0.14076575636863708, - 0.013987628743052483, - -0.0328177772462368, - -0.07807652652263641, - 0.049609191715717316, - -0.004282123409211636, - 0.06763955950737, - 0.04454671964049339, - 0.07316531240940094, - 0.06067637726664543, - -0.04748491942882538, - 0.11469197273254395, - 0.054574400186538696, - -0.040320541709661484, - -0.05957065522670746, - -0.0322323739528656, - -0.036504730582237244, - 0.03230755031108856, - 0.036879416555166245, - -0.08869340270757675, - -0.0110970139503479, - 0.030039120465517044, - -0.01634569838643074, - 0.052931975573301315, - 0.1340961903333664, - 0.06646884977817535, - -0.11248211562633514 - ] - }, - "p244_134.wav": { - "name": "p244", - "embedding": [ - 0.0622018463909626, - 0.1327560842037201, - -0.026491519063711166, - 0.03965924680233002, - -0.05983572453260422, - 0.07172872126102448, - -0.09572288393974304, - 0.15615679323673248, - -0.047941505908966064, - 0.11980122327804565, - -0.10109180957078934, - 0.14807407557964325, - -0.04070136696100235, - -0.1288943886756897, - -0.06004098430275917, - 0.04093494638800621, - -0.010518948547542095, - -0.011621727608144283, - -0.014310152269899845, - -0.013755956664681435, - 0.02872421219944954, - 0.009694254957139492, - 0.036946024745702744, - 0.029177136719226837, - 0.040951453149318695, - 0.063828244805336, - 0.0034961490891873837, - 0.06040937453508377, - 0.030641386285424232, - -0.03643089532852173, - -0.05544741451740265, - 0.11300627887248993, - -0.055516891181468964, - 0.017353275790810585, - 0.05894283950328827, - -0.00020205974578857422, - 0.0033030719496309757, - -0.04933089762926102, - -0.00725951325148344, - -0.016243144869804382, - -0.020947769284248352, - 0.06707493960857391, - 0.010141802951693535, - -0.03671390563249588, - 0.029064463451504707, - 0.027157649397850037, - 0.003513710107654333, - -0.026831332594156265, - -0.10181010514497757, - 0.1282554566860199, - 0.032813552767038345, - 0.016223134472966194, - -0.10427436232566833, - -0.05072477459907532, - 0.10793045908212662, - -0.0376259908080101, - -0.07871465384960175, - -0.0028020869940519333, - 0.05185255408287048, - 0.15715593099594116, - -0.03203558176755905, - -0.04067929834127426, - 0.01443856954574585, - 0.10073094069957733, - 0.08034796267747879, - 0.07018522918224335, - 0.09205205738544464, - 0.1086721271276474, - -0.025567198172211647, - 0.033587805926799774, - 0.05205640196800232, - 0.07386362552642822, - 0.07442335039377213, - -0.019369393587112427, - 0.008443720638751984, - -0.013719220645725727, - -0.007741993293166161, - 0.01937638595700264, - -0.03527840971946716, - -0.045300163328647614, - -0.024530448019504547, - 0.022466804832220078, - 0.00741222919896245, - 0.016732580959796906, - -0.04707795009016991, - 0.0869964212179184, - 0.03724443539977074, - -0.04334992915391922, - 0.06521935760974884, - 0.0508296936750412, - -0.02222064509987831, - 0.05124201253056526, - -0.10589244961738586, - -0.09038302302360535, - 0.036771975457668304, - -0.02868126891553402, - 0.040719956159591675, - 0.08264879882335663, - 0.05071950703859329, - 0.006061921827495098, - 0.10374876856803894, - 0.07461705058813095, - 0.014417007565498352, - 0.030950188636779785, - -0.0826287567615509, - 0.13508948683738708, - 0.10684458166360855, - -0.03642892464995384, - 0.04120572656393051, - -0.008325044065713882, - 0.061466529965400696, - 0.06510888040065765, - -0.1193639487028122, - -0.08827556669712067, - 0.003733537159860134, - 0.018154004588723183, - 0.017135079950094223, - 0.05855339393019676, - -0.031154703348875046, - 0.03954688087105751, - 0.08034920692443848, - -0.06683668494224548, - -0.04941023141145706, - -0.03574524074792862, - 0.03460447117686272, - -0.06021100655198097, - 0.0708598643541336, - 0.044335439801216125, - 0.019089361652731895, - -0.021764487028121948, - 0.07222854346036911, - 0.00030676904134452343, - -0.02399158477783203, - 0.04847247898578644, - -0.040297456085681915, - 0.0020639775320887566, - 0.002081210957840085, - -0.009715343825519085, - 0.041291698813438416, - 0.051991626620292664, - 0.05807889997959137, - 0.011871043592691422, - 0.019927164539694786, - -0.09270739555358887, - 0.007123466581106186, - 0.07272288203239441, - 0.05771661549806595, - -0.01963166706264019, - -0.04582394286990166, - -0.03658342361450195, - -0.03922621160745621, - 0.029612090438604355, - 0.031892791390419006, - 0.07143702358007431, - -0.02476927638053894, - 0.030063264071941376, - 0.11151249706745148, - 0.018040018156170845, - -0.005392676685005426, - -0.05694349855184555, - 0.005480976775288582, - 0.01041684951633215, - 0.05482897162437439, - -0.06139064580202103, - -0.10707433521747589, - -0.007486686110496521, - 0.013832524418830872, - -0.04370430111885071, - 0.07752937078475952, - 0.05068504810333252, - 0.005762046203017235, - 0.03755341097712517, - -0.03167432174086571, - 0.0015448546037077904, - -0.10362815111875534, - -0.047716014087200165, - -0.028951041400432587, - -0.030049197375774384, - -0.032629672437906265, - 0.05871205776929855, - 0.05865924060344696, - 0.07069949805736542, - 0.01280115358531475, - -0.059996623545885086, - -0.07138459384441376, - 0.05062780901789665, - 0.048659540712833405, - 0.02274874784052372, - 0.04370371997356415, - 0.06451734900474548, - -0.004164085723459721, - 0.08456026017665863, - 0.09698827564716339, - 0.07018941640853882, - -0.023288819938898087, - -0.010122159495949745, - -0.05788757652044296, - 0.057798102498054504, - 0.0836566835641861, - -0.11314018815755844, - -0.12190453708171844, - -0.06107761710882187, - -0.05114412680268288, - 0.03179720789194107, - -0.025040172040462494, - 0.03414640575647354, - 0.0466463640332222, - -0.027013324201107025, - -0.08368606865406036, - -0.11304448544979095, - 0.10386017709970474, - -0.05776321887969971, - 0.0014743907377123833, - -0.06786850839853287, - 0.03872167319059372, - 0.07316740602254868, - -0.011720423586666584, - -0.029916729778051376, - 0.013210982084274292, - 0.03754677623510361, - -0.0407559759914875, - -0.025794383138418198, - 0.04394083842635155, - 0.01615135371685028, - -0.09156452119350433, - 0.025174185633659363, - -0.055095139890909195, - 0.08706554770469666, - -0.03749625012278557, - 0.1771300882101059, - -0.007881375961005688, - -0.040389735251665115, - -0.0687192901968956, - 0.04410019516944885, - -0.040084898471832275, - 0.03894632309675217, - 0.04144362360239029, - 0.06238207966089249, - -0.012978958897292614, - -0.0763697549700737, - 0.11493854224681854, - 0.04401835426688194, - -0.07852423191070557, - -0.09453123807907104, - -0.07565627247095108, - -0.04914827644824982, - 0.026203107088804245, - 0.030564583837985992, - -0.06608007848262787, - -0.018777944147586823, - -0.00116734579205513, - -0.006987260654568672, - 0.06478210538625717, - 0.14419645071029663, - 0.06578686833381653, - -0.08597676455974579 - ] - }, - "p244_133.wav": { - "name": "p244", - "embedding": [ - 0.041297547519207, - 0.11455926299095154, - -0.0017132259672507644, - 0.018165865913033485, - -0.051963645964860916, - 0.09041957557201385, - -0.08692163974046707, - 0.12645292282104492, - -0.09143020957708359, - 0.15465213358402252, - -0.11593572795391083, - 0.11773064732551575, - -0.044806286692619324, - -0.1490412950515747, - -0.06706982851028442, - 0.03986232727766037, - -0.04833361506462097, - 0.002107993932440877, - -0.060350093990564346, - 0.0069448016583919525, - 0.05833254009485245, - 0.000788657576777041, - 0.03213661536574364, - -0.01207007747143507, - 0.021789170801639557, - 0.04163859784603119, - 0.03385450690984726, - 0.06263872981071472, - 0.04133098945021629, - -0.05485771596431732, - -0.03725240379571915, - 0.13898667693138123, - -0.02946937270462513, - 0.03784608840942383, - 0.0781920775771141, - 0.012042203918099403, - -0.0014045416610315442, - -0.06810173392295837, - -0.01753845065832138, - -0.02219734899699688, - -0.02109723538160324, - 0.04637330397963524, - 0.004315180238336325, - -0.009702122770249844, - 0.033445652574300766, - 0.023403994739055634, - -0.03825129196047783, - -0.03742963448166847, - -0.07289575785398483, - 0.1262144297361374, - 0.04913631081581116, - 0.004767424892634153, - -0.08466526865959167, - -0.08497320860624313, - 0.12530331313610077, - -0.010960602201521397, - -0.1129029244184494, - -0.030695561319589615, - 0.08174505084753036, - 0.18919098377227783, - -0.022884823381900787, - -0.012764216400682926, - -0.0019257356179878116, - 0.10391833633184433, - 0.021053628996014595, - 0.11531467735767365, - 0.0751236230134964, - 0.0809326320886612, - 0.04574631154537201, - 0.0760323777794838, - 0.05403928458690643, - 0.06185106188058853, - 0.03970938175916672, - -0.02811742015182972, - 0.039041414856910706, - -0.015278642065823078, - -0.028954897075891495, - 0.03921008110046387, - -0.05481412634253502, - -0.02577005885541439, - -0.03172075003385544, - 0.01496118400245905, - 0.02791183441877365, - -0.021887533366680145, - -0.026877062395215034, - 0.061779119074344635, - -0.008785966783761978, - -0.022177185863256454, - 0.053655318915843964, - 0.05277888476848602, - -0.010125143453478813, - 0.03967394307255745, - -0.06804991513490677, - -0.14738930761814117, - -0.012449276633560658, - -0.016071254387497902, - 0.011165747418999672, - 0.07467452436685562, - 0.036343421787023544, - -0.019686389714479446, - 0.08277130872011185, - 0.0648355633020401, - 0.008782033808529377, - 0.0366487056016922, - -0.11050742864608765, - 0.1022585779428482, - 0.08801715075969696, - -0.003631700063124299, - 0.016802899539470673, - -0.03087206557393074, - 0.10668429732322693, - 0.09522587060928345, - -0.13953015208244324, - -0.08506143093109131, - -0.00264726672321558, - -0.025648826733231544, - -0.0010603005066514015, - 0.06754474341869354, - -0.027455255389213562, - -0.008131668902933598, - 0.09003298729658127, - -0.0673074796795845, - -0.06193699687719345, - -0.04229079186916351, - 0.03137551620602608, - -0.04543914645910263, - 0.05138185992836952, - -0.004624051973223686, - 0.007637045346200466, - -0.03060484677553177, - 0.07636098563671112, - -0.019327733665704727, - -0.012097650207579136, - 0.053983524441719055, - -0.07345453649759293, - 0.042408209294080734, - -0.049985166639089584, - 0.008950160816311836, - 0.05210144445300102, - 0.08750709891319275, - 0.05141513794660568, - 0.002851310884580016, - -0.018281059339642525, - -0.04121723771095276, - -0.01046680472791195, - 0.055975887924432755, - 0.043200232088565826, - 0.012413250282406807, - -0.016545619815587997, - -0.027319665998220444, - -0.06217388063669205, - 0.03314356505870819, - -0.013571945950388908, - 0.09823563694953918, - 0.0019467358943074942, - 0.021671226248145103, - 0.09472833573818207, - -0.0051863593980669975, - -0.01598552241921425, - -0.07899544388055801, - -0.0031464819330722094, - 0.04760095104575157, - 0.052674226462841034, - -0.07419611513614655, - -0.05610281974077225, - 0.024660281836986542, - -0.0022799137514084578, - -0.04687836766242981, - 0.014581711031496525, - 0.02412720024585724, - 0.010095291770994663, - 0.06529437750577927, - -0.05785476788878441, - 0.004069725051522255, - -0.135610431432724, - -0.033472005277872086, - -0.02212948352098465, - -0.06666119396686554, - -0.011357763782143593, - 0.04767968878149986, - 0.02581382915377617, - 0.007326185703277588, - 0.04437337443232536, - -0.08830290287733078, - -0.061657555401325226, - 0.08468224108219147, - 0.05942381173372269, - 0.03753438964486122, - 0.060077324509620667, - 0.050926726311445236, - -0.01278261374682188, - 0.06519371271133423, - 0.08476236462593079, - 0.08517537266016006, - -0.0007953721797093749, - -0.012795460410416126, - -0.07919950038194656, - 0.07496115565299988, - 0.09045148640871048, - -0.11373654752969742, - -0.11356612294912338, - -0.039007291197776794, - -0.0497543029487133, - 0.04672514647245407, - -0.0340145118534565, - -0.00975661538541317, - 0.030717633664608, - -0.025635145604610443, - -0.09907827526330948, - -0.07132606953382492, - 0.13276441395282745, - -0.0745672658085823, - -0.028220923617482185, - -0.05113302171230316, - 0.02091464214026928, - 0.08047666400671005, - 0.01702745445072651, - -0.028631914407014847, - 0.034702155739068985, - 0.07751099765300751, - -0.10417625308036804, - -0.03942802548408508, - -0.004535287618637085, - -0.028360813856124878, - -0.07269437611103058, - 0.03828089311718941, - -0.06709221750497818, - 0.060136713087558746, - -0.07069261372089386, - 0.17005649209022522, - -0.0424695685505867, - -0.05571698769927025, - -0.06540583819150925, - 0.052116844803094864, - -0.038852546364068985, - 0.027352681383490562, - 0.05796901136636734, - 0.08096598833799362, - -0.018361283466219902, - -0.09400112181901932, - 0.13685202598571777, - 0.005040790420025587, - -0.022602172568440437, - -0.06846167892217636, - -0.04854939877986908, - -0.061454616487026215, - -0.023517979308962822, - -0.009991307742893696, - -0.06929834932088852, - 0.006569344084709883, - 0.0038476220797747374, - -0.026457427069544792, - 0.06944996118545532, - 0.13379625976085663, - 0.07714101672172546, - -0.07563582807779312 - ] - }, - "p244_129.wav": { - "name": "p244", - "embedding": [ - 0.05392615497112274, - 0.07443667948246002, - -0.009994728490710258, - -0.009014388546347618, - -0.02173648029565811, - 0.03859037905931473, - -0.12552936375141144, - 0.1256403923034668, - -0.06035454571247101, - 0.09997209906578064, - -0.06202982738614082, - 0.10489467531442642, - -0.005122889764606953, - -0.1571434736251831, - -0.0880635678768158, - 0.03198288381099701, - -0.045143015682697296, - -0.006307042203843594, - -0.027759509161114693, - -0.024430638179183006, - 0.03673839196562767, - 0.03499136120080948, - 0.020181884989142418, - -0.012590021826326847, - 0.04001505672931671, - 0.03888263180851936, - 0.028153423219919205, - 0.04097350686788559, - 0.027295127511024475, - 0.003928378224372864, - 0.002996165305376053, - 0.09662798047065735, - -0.018309295177459717, - 0.013687074184417725, - 0.07015502452850342, - 0.033664800226688385, - 0.004545565228909254, - -0.0794612467288971, - -0.02087850496172905, - 0.009411952458322048, - -0.045582108199596405, - 0.07155988365411758, - 0.040919363498687744, - -0.019065722823143005, - 0.0299101322889328, - 0.016979368403553963, - 0.0036395557690411806, - -0.07593900710344315, - -0.10309791564941406, - 0.15288719534873962, - 0.01870296709239483, - 0.047613222151994705, - -0.11891864240169525, - -0.06445339322090149, - 0.11014333367347717, - -0.03317048400640488, - -0.07327345013618469, - -0.020378394052386284, - 0.02845267578959465, - 0.17581988871097565, - -0.02416062355041504, - -0.027550997212529182, - 0.01721351221203804, - 0.10199615359306335, - 0.02705969847738743, - 0.04991358146071434, - 0.1079227477312088, - 0.06764909625053406, - 0.020355235785245895, - 0.04830589145421982, - 0.04662405699491501, - 0.0597914382815361, - 0.005850202403962612, - -0.04733363911509514, - 0.007627889513969421, - -0.003365917131304741, - -0.05620148777961731, - 0.011901435442268848, - -0.02279374748468399, - -0.019748002290725708, - -0.028799837455153465, - 0.030615627765655518, - 0.002194210421293974, - 0.0270709041506052, - -0.050927430391311646, - 0.05480382591485977, - -0.015551891177892685, - -0.04787268489599228, - 0.05460184067487717, - 0.07094497978687286, - -0.011764146387577057, - 0.013380622491240501, - -0.055755071341991425, - -0.10712259262800217, - -0.020806077867746353, - -0.01791190728545189, - 0.006997612304985523, - 0.06865952908992767, - 0.037363409996032715, - -0.019053038209676743, - 0.08073477447032928, - 0.05926159396767616, - -0.004894784651696682, - 0.0075787147507071495, - -0.09441211819648743, - 0.0782688558101654, - 0.10550709813833237, - -0.01682424172759056, - 0.017590994015336037, - -0.0476725772023201, - 0.05361957848072052, - 0.08424115926027298, - -0.12738361954689026, - -0.07545700669288635, - 0.07856108248233795, - 0.03635145723819733, - 0.05592794343829155, - 0.09744493663311005, - -0.005688908509910107, - -0.0019249757751822472, - 0.06625314056873322, - -0.06221519783139229, - -0.05811835080385208, - -0.05217359960079193, - 0.054616786539554596, - -0.04010135307908058, - 0.05409979820251465, - 0.04592623561620712, - 0.008029206655919552, - -0.04225748032331467, - 0.05206568166613579, - 0.010796322487294674, - -0.0030347637366503477, - -0.016415055841207504, - 0.018820129334926605, - 0.06336290389299393, - -0.01777966320514679, - -0.024717368185520172, - 0.037478700280189514, - 0.0927240252494812, - 0.02607731707394123, - 0.05414276197552681, - -0.04490037262439728, - -0.07333119958639145, - -0.010936434380710125, - 0.09308279305696487, - 0.05582552030682564, - -0.040384046733379364, - -0.05247347429394722, - -0.05684541165828705, - -0.021842073649168015, - 0.0004816511645913124, - 0.012069856747984886, - 0.09166248887777328, - -0.0019981549121439457, - 0.03308132290840149, - 0.11047571897506714, - -0.038139186799526215, - -0.007936987094581127, - 0.0028473716229200363, - 0.03919798135757446, - 0.026521438732743263, - 0.023982921615242958, - -0.03588304668664932, - -0.08112575113773346, - -0.0022799649741500616, - -0.001674160361289978, - -0.0358114168047905, - 0.0005139485001564026, - 0.010183852165937424, - -0.0015047881752252579, - 0.0435851514339447, - -0.0954829528927803, - 0.022527482360601425, - -0.16106975078582764, - -0.00900324247777462, - -0.015356677584350109, - -0.04914845898747444, - -0.006328769493848085, - 0.07458657026290894, - 0.04068043455481529, - 0.02095233090221882, - 0.012564263306558132, - -0.11711712181568146, - -0.024375971406698227, - 0.06816166639328003, - 0.09943650662899017, - 0.013466029427945614, - 0.0071571338921785355, - 0.028654180467128754, - 0.023938678205013275, - 0.032016463577747345, - 0.07807129621505737, - 0.05729295313358307, - -0.018133021891117096, - -0.04137236252427101, - -0.0445544607937336, - 0.09838218986988068, - 0.02983623556792736, - -0.09720556437969208, - -0.0902697890996933, - -0.027857154607772827, - -0.0417763777077198, - -0.0021216869354248047, - 0.00452845823019743, - 0.044691868126392365, - 0.014556209556758404, - -0.04080378636717796, - -0.11652612686157227, - -0.08267544209957123, - 0.05755245313048363, - -0.05149652063846588, - -0.01796053722500801, - -0.044719576835632324, - 0.02303094044327736, - 0.09662321209907532, - -0.003799034282565117, - 0.023075276985764503, - -0.022207390516996384, - -0.016091376543045044, - -0.09067900478839874, - -0.06383467465639114, - -0.02560262195765972, - -0.007304156199097633, - -0.08523023128509521, - 0.041381530463695526, - -0.05000466853380203, - 0.11790335178375244, - -0.06316035985946655, - 0.13298948109149933, - -0.01973225176334381, - -0.07779376953840256, - -0.08542152494192123, - -0.01643693633377552, - -0.02898472547531128, - 0.055288925766944885, - 0.044188156723976135, - 0.05746244639158249, - -0.022932549938559532, - -0.06478139758110046, - 0.09215466678142548, - 0.06123930588364601, - -0.035009823739528656, - -0.06930521130561829, - -0.0554036945104599, - 0.0020948778837919235, - 0.008704611100256443, - -0.007246280089020729, - -0.013204630464315414, - 0.007811293005943298, - -0.002652811584994197, - -0.04926186054944992, - 0.0598335862159729, - 0.10606255382299423, - 0.054550208151340485, - -0.12116880714893341 - ] - }, - "p244_113.wav": { - "name": "p244", - "embedding": [ - 0.05266711488366127, - 0.08582263439893723, - -0.02592119202017784, - 0.019899480044841766, - -0.06496009230613708, - 0.048812996596097946, - -0.1588859111070633, - 0.13600994646549225, - -0.030165988951921463, - 0.13593433797359467, - -0.04642648249864578, - 0.12987945973873138, - -0.020480554550886154, - -0.18912239372730255, - -0.021262919530272484, - 0.06009237468242645, - -0.02741141803562641, - -0.05052557960152626, - -0.015856029465794563, - -0.027928199619054794, - 0.02803090214729309, - 0.042347684502601624, - 0.025782620534300804, - 0.0022609729785472155, - 0.041953157633543015, - 0.07605547457933426, - -0.007571537978947163, - 0.03295883908867836, - -0.0030406098812818527, - -0.05938256159424782, - -0.03306674212217331, - 0.08316744863986969, - -0.06765448302030563, - -0.004874638747423887, - 0.033529132604599, - -0.014325467869639397, - 0.0013069804990664124, - -0.06559905409812927, - -0.018419045954942703, - 0.010221763513982296, - -0.04732197895646095, - 0.08943614363670349, - 0.026139071211218834, - -0.02501012571156025, - 0.023983489722013474, - 0.022603865712881088, - 0.002640419639647007, - -0.04471921920776367, - -0.11350669711828232, - 0.15213394165039062, - 0.05256342515349388, - 0.008560108952224255, - -0.07780388742685318, - -0.06634317338466644, - 0.09941860288381577, - -0.010311364196240902, - -0.09696295112371445, - -0.052800457924604416, - 0.06888774782419205, - 0.14631260931491852, - -0.03388986364006996, - -0.05362073704600334, - 0.03783417493104935, - 0.11092883348464966, - 0.07482509315013885, - 0.06419740617275238, - 0.0879727154970169, - 0.11161946505308151, - -0.02705576829612255, - -0.004465590231120586, - 0.05596315488219261, - 0.07429435104131699, - 0.04771411418914795, - -0.014407447539269924, - 0.02334466576576233, - -0.007317695766687393, - -0.011422003619372845, - -0.019164983183145523, - -0.015534501522779465, - -0.027109500020742416, - -0.012050880119204521, - 0.0062237330712378025, - 0.002427445026114583, - 0.042277999222278595, - -0.030984140932559967, - 0.047915127128362656, - 0.059436503797769547, - -0.025418559089303017, - 0.08329557627439499, - 0.034678295254707336, - 0.012928245589137077, - 0.07167655229568481, - -0.10910872370004654, - -0.05550219118595123, - 0.049642592668533325, - 0.001558721880428493, - 0.020475173369050026, - 0.06777223199605942, - 0.0511762760579586, - -0.015133535489439964, - 0.13422654569149017, - 0.048582110553979874, - -0.00784805603325367, - 0.014216885901987553, - -0.08218632638454437, - 0.1341009885072708, - 0.08056965470314026, - -0.035237401723861694, - 0.05655606836080551, - -0.04740045219659805, - 0.04677413031458855, - 0.05319509282708168, - -0.13338381052017212, - -0.08521207422018051, - 0.033410973846912384, - 0.01281578466296196, - -0.024215031415224075, - 0.14557114243507385, - -0.00869741104543209, - 0.04875190928578377, - 0.10435070097446442, - -0.09193342179059982, - -0.06268054246902466, - -0.013657070696353912, - 0.049857206642627716, - -0.09539420157670975, - 0.07522916793823242, - 0.06951335072517395, - -0.012824811972677708, - 0.02431079000234604, - 0.07977151870727539, - -0.004391202703118324, - 0.007424943149089813, - -0.003942327573895454, - -0.030067792162299156, - 0.015791919082403183, - -0.002340142149478197, - -0.008628172799944878, - 0.0364588238298893, - 0.021641982719302177, - 0.05973050743341446, - -0.004062551073729992, - -0.021350668743252754, - -0.14606045186519623, - 0.019084783270955086, - 0.03022613190114498, - 0.08562620729207993, - -0.017911944538354874, - -0.03051462396979332, - -0.04280445724725723, - -0.06004221737384796, - 0.002937659854069352, - 0.0018669666023924947, - 0.08669067174196243, - -0.016913872212171555, - 0.006382003892213106, - 0.11146383732557297, - 0.046541500836610794, - 0.012049530632793903, - -0.02926841750741005, - -0.030022265389561653, - 0.004241586197167635, - 0.057848334312438965, - -0.08068471401929855, - -0.07798247039318085, - -0.0290053877979517, - 0.04081055894494057, - -0.008505836129188538, - 0.08182427287101746, - 0.06039590761065483, - 0.021579179912805557, - 0.014276997186243534, - -0.07375432550907135, - 0.020761828869581223, - -0.07047093659639359, - -0.06523757427930832, - -0.011761642061173916, - -0.015990277752280235, - -0.045896563678979874, - 0.08601028472185135, - 0.028392210602760315, - 0.06888741999864578, - -0.04887698218226433, - -0.05965172126889229, - -0.0852140411734581, - 0.03415220230817795, - 0.05710722133517265, - -0.025758277624845505, - 0.02026914246380329, - 0.056293901056051254, - -0.019123535603284836, - 0.04892539605498314, - 0.06510180234909058, - 0.09337292611598969, - -0.0375477597117424, - 0.02333034574985504, - -0.052902404218912125, - 0.10347604751586914, - 0.08357144892215729, - -0.07872869819402695, - -0.06853903084993362, - -0.03240904584527016, - -0.0754864513874054, - 0.032725293189287186, - -0.014659631997346878, - 0.029350321739912033, - 0.02840963937342167, - -0.004350689705461264, - -0.10283681005239487, - -0.1052875965833664, - 0.07420540601015091, - -0.07010527700185776, - 0.008501279167830944, - -0.09442303329706192, - 0.04686177894473076, - 0.09679373353719711, - 0.040300656110048294, - -0.024278780445456505, - -0.02721174620091915, - 0.033263299614191055, - -0.010030240751802921, - 0.02370413951575756, - 0.07773198187351227, - 0.05175931379199028, - -0.10856864601373672, - -0.016282837837934494, - -0.07674230635166168, - 0.06133342161774635, - -0.03762954846024513, - 0.15692093968391418, - 0.02711891569197178, - -0.048004016280174255, - -0.09299994260072708, - 0.027254121378064156, - -0.020146537572145462, - 0.06552023440599442, - 0.03268613666296005, - 0.07247371971607208, - 0.05437099561095238, - -0.055424656718969345, - 0.10389180481433868, - 0.06420666724443436, - -0.03823890537023544, - -0.07564503699541092, - -0.05463288351893425, - -0.03448047488927841, - 0.05037635564804077, - 0.015081064775586128, - -0.09624598175287247, - -0.016583899036049843, - 0.03790034353733063, - 0.007881008088588715, - 0.06808155030012131, - 0.13471582531929016, - 0.061022914946079254, - -0.11671235412359238 - ] - }, - "p244_125.wav": { - "name": "p244", - "embedding": [ - 0.04512891545891762, - 0.10432637482881546, - -0.026215000078082085, - 0.03385285288095474, - -0.08149534463882446, - 0.10970335453748703, - -0.11565253883600235, - 0.1056872308254242, - -0.06380829960107803, - 0.1443595141172409, - -0.042785510420799255, - 0.11578189581632614, - -0.016190458089113235, - -0.17944610118865967, - -0.03558603301644325, - 0.06630606949329376, - -0.034195397049188614, - -0.005926445126533508, - -0.047937747091054916, - -0.0010083622764796019, - 0.01739398017525673, - 0.021829038858413696, - 0.04105433076620102, - -0.04893742874264717, - 0.07487490028142929, - 0.052493225783109665, - 0.008113069459795952, - 0.04738616198301315, - 0.002095246920362115, - -0.09708696603775024, - -0.06657794117927551, - 0.11366607248783112, - -0.059582456946372986, - 0.0235900841653347, - 0.053876057267189026, - -0.007159947883337736, - 0.010989903472363949, - -0.0587448813021183, - 0.011473600752651691, - 0.021653857082128525, - -0.006518281996250153, - 0.09408535063266754, - 0.03983663022518158, - -0.002927956636995077, - 0.011783753521740437, - 0.016308235004544258, - -0.0052011096850037575, - -0.04499087110161781, - -0.09166138619184494, - 0.16865481436252594, - 0.023754121735692024, - -0.026250839233398438, - -0.07726902514696121, - -0.09046296030282974, - 0.10517049580812454, - -0.005890835542231798, - -0.10882264375686646, - -0.06222473084926605, - 0.06772004067897797, - 0.1498308628797531, - -0.0031964019872248173, - -0.03413783013820648, - -0.009236854501068592, - 0.10852149873971939, - 0.011532392352819443, - 0.10324481129646301, - 0.03358490765094757, - 0.09139684587717056, - 0.019114602357149124, - 0.05334613099694252, - 0.03903999924659729, - 0.059925973415374756, - 0.003664352698251605, - -0.019248846918344498, - 0.034947361797094345, - -0.05856955796480179, - -0.019251830875873566, - 0.015843171626329422, - -0.0069058844819664955, - -0.023239202797412872, - -0.018647603690624237, - 0.005984857678413391, - 0.02566693350672722, - -0.009859294630587101, - -0.03400120139122009, - 0.04397953674197197, - 0.014859405346214771, - -0.01965768076479435, - 0.07944491505622864, - 0.06610117852687836, - -0.010992285795509815, - 0.03727010264992714, - -0.06801246851682663, - -0.10969861596822739, - 0.03757087141275406, - 0.02315947599709034, - 0.01897449977695942, - 0.06112867221236229, - 0.020707352086901665, - -0.01669279672205448, - 0.08805934339761734, - 0.06901668757200241, - 0.013307984918355942, - 0.030067598447203636, - -0.07806509733200073, - 0.13966026902198792, - 0.07341732084751129, - 0.020065249875187874, - 0.06132183223962784, - -0.038206715136766434, - 0.08776731789112091, - 0.07752826064825058, - -0.14298465847969055, - -0.09741400927305222, - -0.0070975469425320625, - -0.024273836985230446, - -0.02258213609457016, - 0.09308410435914993, - -0.024363458156585693, - -0.0012514310656115413, - 0.08733444660902023, - -0.09904124587774277, - -0.05525195598602295, - -0.015873271971940994, - 0.030854692682623863, - -0.0808526873588562, - 0.03413348272442818, - 0.046862296760082245, - -0.04644785448908806, - 0.013428938575088978, - 0.07309228181838989, - 0.003995553124696016, - 0.029969770461320877, - 0.065598264336586, - -0.039192795753479004, - 0.026482343673706055, - -0.026106547564268112, - 0.025038346648216248, - 0.07799410820007324, - 0.03637745976448059, - 0.07396122813224792, - -0.024779651314020157, - -0.0132305808365345, - -0.09724399447441101, - 0.0023832041770219803, - 0.04702654108405113, - 0.047006089240312576, - -0.02175857312977314, - -0.011672073043882847, - -0.03722044825553894, - -0.10271601378917694, - 0.052550312131643295, - 0.00657836627215147, - 0.11014967411756516, - 0.01651615835726261, - 0.005980789661407471, - 0.10929179191589355, - 0.04564369469881058, - -0.014958723448216915, - -0.07665686309337616, - -0.02384403720498085, - 0.03758100047707558, - 0.038161713629961014, - -0.09398920834064484, - -0.04468710348010063, - 0.010997436009347439, - -0.0045196665450930595, - -0.0298407394438982, - 0.046191826462745667, - 0.0697917491197586, - 0.02932918816804886, - 0.06488846242427826, - -0.05145473778247833, - 0.010845218785107136, - -0.06489353626966476, - -0.022748468443751335, - -0.03324192017316818, - -0.06173117458820343, - -0.06745723634958267, - 0.1137159988284111, - 0.025899073109030724, - 0.024418696761131287, - -0.02072727493941784, - -0.03085111640393734, - -0.03956538811326027, - 0.06374966353178024, - 0.037675824016332626, - 0.006032956298440695, - 0.03632340580224991, - 0.028634967282414436, - -0.02249719761312008, - 0.06109248474240303, - 0.09133797883987427, - 0.07837530970573425, - -0.032901983708143234, - 0.012392661534249783, - -0.06136041507124901, - 0.11161164194345474, - 0.09009142965078354, - -0.1054024025797844, - -0.0950327143073082, - -0.04629550501704216, - -0.06075979396700859, - 0.04947635531425476, - -0.048837777227163315, - -0.004198533017188311, - 0.02499806322157383, - -0.01532420702278614, - -0.07993901520967484, - -0.10609419643878937, - 0.09526405483484268, - -0.05893123894929886, - -0.017346439883112907, - -0.05751090124249458, - 0.04680261015892029, - 0.06576312333345413, - 0.06334643810987473, - -0.041471004486083984, - 0.007180421147495508, - 0.07584094256162643, - -0.06248830631375313, - 0.013814223930239677, - 0.0633963942527771, - 0.006562592461705208, - -0.06464602053165436, - 0.02832934632897377, - -0.06338690221309662, - 0.0677010789513588, - -0.06531787663698196, - 0.20250418782234192, - -0.011792201548814774, - -0.05663381516933441, - -0.057102687656879425, - 0.059156037867069244, - -0.0693090632557869, - 0.016006743535399437, - 0.04589393734931946, - 0.060533832758665085, - 0.046223729848861694, - -0.04861221835017204, - 0.11730561405420303, - 0.03099760413169861, - -0.017490530386567116, - -0.05587955191731453, - -0.04201593995094299, - -0.04608694091439247, - 0.06122569739818573, - 0.00919948611408472, - -0.1138974204659462, - 0.018559828400611877, - 0.05176904797554016, - 0.011245728470385075, - 0.07479051500558853, - 0.1446010321378708, - 0.08672527223825455, - -0.07816220819950104 - ] - }, - "p244_142.wav": { - "name": "p244", - "embedding": [ - 0.044091422110795975, - 0.07743866741657257, - -0.008428291417658329, - 0.030143287032842636, - -0.020201601088047028, - 0.08146895468235016, - -0.16609877347946167, - 0.10837343335151672, - -0.054010625928640366, - 0.14748694002628326, - -0.05846453085541725, - 0.08908722549676895, - -0.00979151576757431, - -0.21999913454055786, - -0.022897057235240936, - 0.06719061732292175, - -0.04753673076629639, - -0.022768575698137283, - -0.024456845596432686, - 0.02589966543018818, - 0.031428031623363495, - 0.01232027355581522, - 0.012082988396286964, - -0.009386545047163963, - 0.027116162702441216, - 0.04895694553852081, - -0.0206296406686306, - 0.038302868604660034, - -0.00407725153490901, - -0.012179161421954632, - -0.016930075362324715, - 0.1352418214082718, - -0.06851913034915924, - 0.001655557076446712, - 0.07899977266788483, - 0.0037230250891298056, - -0.04877312481403351, - -0.05199562385678291, - 0.0016954276943579316, - -0.023792948573827744, - -0.07425396889448166, - 0.07345152646303177, - 0.030001258477568626, - 0.009505374357104301, - 0.04755253344774246, - 0.015463468618690968, - -0.012125799432396889, - -0.035624660551548004, - -0.08789891749620438, - 0.11724990606307983, - 0.058107439428567886, - 0.00503843929618597, - -0.06582161784172058, - -0.06505601853132248, - 0.08617187291383743, - 0.015430380590260029, - -0.11312363296747208, - -0.06555827707052231, - 0.09202402830123901, - 0.16443733870983124, - -0.02339477278292179, - -0.019992755725979805, - 0.01177819725126028, - 0.10955788940191269, - 0.05824762210249901, - 0.13660144805908203, - 0.04057910665869713, - 0.10317262262105942, - 0.026862991973757744, - 0.03629329428076744, - 0.08264689147472382, - 0.036499351263046265, - 0.04852892458438873, - -0.047179389744997025, - 0.02811608836054802, - -0.00022103595256339759, - -0.030083760619163513, - -0.0045753479935228825, - -0.014025572687387466, - -0.00016731731011532247, - -0.001117827370762825, - -0.024101480841636658, - 0.0016721455613151193, - 0.03795992210507393, - -0.014634850434958935, - 0.008282522670924664, - 0.06142982468008995, - -0.021815435960888863, - 0.06625853478908539, - 0.06827973574399948, - 0.012328526936471462, - 0.06346876919269562, - -0.0868157371878624, - -0.08818034082651138, - 0.031383052468299866, - 0.006197072099894285, - 0.0005468082381412387, - 0.057138171046972275, - 0.04718642681837082, - -0.0053126877173781395, - 0.08353392779827118, - 0.03018593229353428, - 0.005062393378466368, - 0.046734608709812164, - -0.10961950570344925, - 0.11949074268341064, - 0.045873645693063736, - -0.017947908490896225, - 0.03215749189257622, - -0.050151146948337555, - 0.06887584179639816, - 0.1098480075597763, - -0.13919194042682648, - -0.046134889125823975, - 0.05155736953020096, - -0.024865809828042984, - -0.03445601835846901, - 0.14712075889110565, - 0.0021482466254383326, - -0.015834737569093704, - 0.0877358615398407, - -0.09279146045446396, - -0.06910572201013565, - -0.025697927922010422, - 0.03996589407324791, - -0.1131061464548111, - 0.06024720519781113, - 0.021332452073693275, - -0.008160749450325966, - -0.020695582032203674, - 0.09601693600416183, - -0.015088719315826893, - -0.011547433212399483, - -0.006499287206679583, - -0.018710995092988014, - 0.06689240038394928, - -0.03599360212683678, - 0.03126445412635803, - 0.035963233560323715, - -0.0025377669371664524, - 0.054147783666849136, - -0.0023579730186611414, - -0.01101789902895689, - -0.09605683386325836, - -0.009743058122694492, - 0.05777978524565697, - 0.08672703057527542, - -0.01718573272228241, - -0.00951284822076559, - -0.044255468994379044, - -0.09024734795093536, - 0.05528480187058449, - -0.0391538143157959, - 0.08561825007200241, - 0.04492386803030968, - -0.020393267273902893, - 0.1072118803858757, - 0.006132496986538172, - 0.026425933465361595, - -0.061918579041957855, - -0.009826728142797947, - 0.03627658635377884, - 0.0687282383441925, - -0.11699320375919342, - -0.03933601453900337, - 0.0048781465739011765, - 0.00863227155059576, - -0.0027903656009584665, - 0.012056820094585419, - 0.05353269726037979, - 0.023276688531041145, - 0.018112661316990852, - -0.07971055805683136, - 0.013795309700071812, - -0.10655240714550018, - -0.07264188677072525, - -0.03917001187801361, - -0.048284098505973816, - -0.0007066698744893074, - 0.07883720099925995, - -0.012125194072723389, - 0.003237518249079585, - -0.035836875438690186, - -0.06985735893249512, - -0.08264351636171341, - 0.061692140996456146, - 0.07784304767847061, - -0.01511172205209732, - 0.03541022911667824, - 0.02296164073050022, - -0.050339046865701675, - 0.019817473366856575, - 0.04740717262029648, - 0.13291172683238983, - -0.047311920672655106, - 0.023881183937191963, - -0.07386672496795654, - 0.10570187866687775, - 0.1119840145111084, - -0.08409196883440018, - -0.07879561930894852, - 0.025941869243979454, - -0.044020798057317734, - 0.024145582690835, - -0.06075059622526169, - -0.021853962913155556, - 0.02493392489850521, - -0.03968885540962219, - -0.08674146980047226, - -0.10423794388771057, - 0.08893847465515137, - -0.08463059365749359, - -0.023387346416711807, - -0.08728238940238953, - 0.039996951818466187, - 0.042412009090185165, - 0.030743541195988655, - -0.06090109050273895, - 0.012743172235786915, - 0.054827190935611725, - -0.04240451008081436, - -0.01562053058296442, - 0.05694739520549774, - -0.005967938341200352, - -0.1200098916888237, - -0.02897501550614834, - -0.05907841771841049, - 0.08186513185501099, - -0.07347573339939117, - 0.15074819326400757, - -0.03388827666640282, - -0.06125997006893158, - -0.06807532906532288, - 0.01246599294245243, - 0.019586147740483284, - 0.03979422524571419, - 0.051129817962646484, - 0.08657147735357285, - 0.02677091769874096, - -0.03884980082511902, - 0.11124187707901001, - 0.014219792559742928, - 0.02706090174615383, - -0.053942833095788956, - -0.017855612561106682, - -0.04901871457695961, - 0.028953639790415764, - -0.007471634075045586, - -0.12662649154663086, - 0.017938710749149323, - 0.046976376324892044, - -0.01961124874651432, - 0.028681958094239235, - 0.11557317525148392, - 0.04550383612513542, - -0.10988728702068329 - ] - }, - "p244_071.wav": { - "name": "p244", - "embedding": [ - 0.05807351693511009, - 0.0887608751654625, - -0.018991809338331223, - 0.026218712329864502, - -0.06738467514514923, - 0.06312461942434311, - -0.11771702021360397, - 0.13595294952392578, - -0.044640056788921356, - 0.13572809100151062, - -0.07144707441329956, - 0.12897056341171265, - -0.021063080057501793, - -0.17505864799022675, - -0.035056471824645996, - 0.051293086260557175, - -0.055298082530498505, - -0.036122217774391174, - -0.04738318920135498, - -0.03124941885471344, - 0.036118894815444946, - 0.03986750915646553, - 0.030062025412917137, - 0.008247941732406616, - 0.030315328389406204, - 0.07848373055458069, - -0.0013130693696439266, - 0.040251947939395905, - 0.011462969705462456, - -0.07026667892932892, - -0.0469355434179306, - 0.09271174669265747, - -0.05489548295736313, - 0.00905666220933199, - 0.04792410135269165, - -0.011996923014521599, - 0.0028056292794644833, - -0.061709921807050705, - -0.02898849919438362, - 0.012501413002610207, - -0.044021159410476685, - 0.07473638653755188, - 0.03001815639436245, - -0.02070397138595581, - 0.030848098918795586, - 0.0298746507614851, - -0.008098583668470383, - -0.0543169341981411, - -0.10264801234006882, - 0.16388052701950073, - 0.06808345019817352, - -0.0044543808326125145, - -0.06020621582865715, - -0.06678085029125214, - 0.107156902551651, - -0.021159198135137558, - -0.11694003641605377, - -0.03393065929412842, - 0.07648836076259613, - 0.1490037739276886, - -0.04737032949924469, - -0.0404522530734539, - 0.027859574183821678, - 0.11551656574010849, - 0.05921501666307449, - 0.08507843315601349, - 0.08967580646276474, - 0.10563677549362183, - -0.02200581505894661, - 0.017706282436847687, - 0.06513924896717072, - 0.07775908708572388, - 0.07296648621559143, - -0.006723630242049694, - 0.03007356822490692, - -0.0008583361050114036, - -0.013761173002421856, - -0.004629965405911207, - -0.02577507123351097, - -0.012327159754931927, - -0.01200829353183508, - 0.009919436648488045, - 0.02142050862312317, - 0.015394649468362331, - -0.024856513366103172, - 0.07157839834690094, - 0.03046455793082714, - -0.012260248884558678, - 0.06340380758047104, - 0.025663509964942932, - 0.001453674165531993, - 0.06762465089559555, - -0.08565789461135864, - -0.08278287947177887, - 0.03236193209886551, - -0.0008894894272089005, - 0.02836447022855282, - 0.07022207230329514, - 0.048096250742673874, - -0.01548395212739706, - 0.12118487805128098, - 0.055480197072029114, - -0.00924451369792223, - 0.0221734456717968, - -0.09177523851394653, - 0.12997305393218994, - 0.0964130312204361, - -0.030925147235393524, - 0.04553816840052605, - -0.04472580552101135, - 0.08717553317546844, - 0.06115412712097168, - -0.14649495482444763, - -0.07435113191604614, - 0.020150555297732353, - 0.006237914320081472, - -0.015351386740803719, - 0.10890376567840576, - -0.025419116020202637, - 0.03974146023392677, - 0.11107337474822998, - -0.08194974064826965, - -0.04027193784713745, - -0.019799618050456047, - 0.04232291132211685, - -0.0882759541273117, - 0.056093111634254456, - 0.05033014714717865, - -0.00853983499109745, - 0.018487893044948578, - 0.08929496258497238, - -0.01683453470468521, - -0.018333125859498978, - 0.01930348202586174, - -0.04238429293036461, - 0.00946978572756052, - -0.015492500737309456, - -0.0059771365486085415, - 0.04728580266237259, - 0.04450833797454834, - 0.03942327946424484, - -0.007866519503295422, - -0.0298530962318182, - -0.11994849890470505, - 0.028765495866537094, - 0.027658436447381973, - 0.07270434498786926, - -0.00797295942902565, - -0.015379039570689201, - -0.03664929419755936, - -0.06578201055526733, - 0.015182415023446083, - -0.0008842225070111454, - 0.06897900998592377, - -0.030236070975661278, - 0.007262660190463066, - 0.09760522097349167, - 0.03429961949586868, - -0.004371834918856621, - -0.049546971917152405, - -0.03016752004623413, - 0.01798054948449135, - 0.056147199124097824, - -0.07348093390464783, - -0.07664106786251068, - -0.0060156118124723434, - 0.031485747545957565, - -0.02355564385652542, - 0.06153585761785507, - 0.0442175529897213, - 0.01591101847589016, - 0.027632173150777817, - -0.058986809104681015, - 0.008831396698951721, - -0.10336852073669434, - -0.06577182561159134, - -0.007753692101687193, - -0.02752024494111538, - -0.02377166412770748, - 0.07231250405311584, - 0.01875799521803856, - 0.05377378687262535, - -0.02304949425160885, - -0.07208409905433655, - -0.0737532526254654, - 0.05691802501678467, - 0.06316342949867249, - 0.0032272636890411377, - 0.03649712726473808, - 0.06256909668445587, - -0.01961454749107361, - 0.061703138053417206, - 0.06847445666790009, - 0.10836170613765717, - -0.021329190582036972, - 0.024009298533201218, - -0.06080351397395134, - 0.08838444948196411, - 0.06952297687530518, - -0.08604490756988525, - -0.08216174691915512, - -0.03451235219836235, - -0.06587493419647217, - 0.045420825481414795, - -0.019218463450670242, - 0.010467138141393661, - 0.028323298320174217, - 0.007349638268351555, - -0.09139257669448853, - -0.08464118093252182, - 0.0891350656747818, - -0.063229501247406, - -0.004910801537334919, - -0.08516650646924973, - 0.04788077995181084, - 0.10579688847064972, - 0.03687785565853119, - -0.01713266223669052, - -0.00036536407424136996, - 0.04605476185679436, - -0.03225358948111534, - 0.004635300952941179, - 0.04822668433189392, - 0.03494442254304886, - -0.10395854711532593, - -0.004747320432215929, - -0.07803529500961304, - 0.0534597747027874, - -0.04090527817606926, - 0.15619845688343048, - 0.005727827083319426, - -0.043876927345991135, - -0.07576988637447357, - 0.04942955821752548, - -0.026885464787483215, - 0.05324612185359001, - 0.046804629266262054, - 0.06528818607330322, - 0.041673608124256134, - -0.06905834376811981, - 0.11932535469532013, - 0.041629157960414886, - -0.04979165643453598, - -0.06603531539440155, - -0.05023183673620224, - -0.04068956524133682, - 0.019361453130841255, - 0.015713181346654892, - -0.0864185094833374, - -0.019584305584430695, - 0.020179200917482376, - -0.014209382236003876, - 0.06364451348781586, - 0.14248047769069672, - 0.06541594862937927, - -0.106376051902771 - ] - }, - "p244_063.wav": { - "name": "p244", - "embedding": [ - 0.03105643019080162, - 0.08554035425186157, - 0.02433938905596733, - 0.019092461094260216, - -0.0036414898931980133, - -0.01012413576245308, - -0.029033754020929337, - 0.04582410305738449, - 0.06644009798765182, - 0.02422577328979969, - -0.08776270598173141, - 0.0483083538711071, - -0.056201156228780746, - -0.11252660304307938, - 0.02410043217241764, - 0.021764587610960007, - -0.04266195371747017, - 0.002342715859413147, - -0.040058959275484085, - -0.022652525454759598, - -0.022885702550411224, - -0.020170196890830994, - 0.030278079211711884, - -0.021206647157669067, - -0.036231908947229385, - 0.027360834181308746, - -0.0344056710600853, - -0.011803285218775272, - -0.018552079796791077, - 0.009720159694552422, - -0.001115383580327034, - 0.023647086694836617, - -0.00857304222881794, - -0.013584845699369907, - 0.009184879250824451, - -0.02673809602856636, - -0.009676256217062473, - -0.04102008789777756, - -0.06477876752614975, - 0.04573163762688637, - -0.0870649516582489, - 0.03277049958705902, - 0.046226851642131805, - -0.08387885242700577, - 0.08200499415397644, - 0.015560347586870193, - -0.0662885382771492, - 0.0077109914273023605, - -0.10351966321468353, - 0.0825604498386383, - 0.02445063367486, - 0.012079034931957722, - -0.0478934645652771, - 0.032485127449035645, - 0.06814618408679962, - -0.009565731510519981, - -0.060235340148210526, - -0.03071798011660576, - 0.04650052636861801, - 0.012404244393110275, - 0.010495691560208797, - -0.0052714878693223, - -0.01747097261250019, - 0.010691734030842781, - 0.07982178032398224, - 0.030011223629117012, - 0.0594479963183403, - 0.10784439742565155, - -0.03956669941544533, - 0.02430770732462406, - 0.05397195741534233, - -0.01737232506275177, - 0.037402622401714325, - -0.014770830981433392, - -0.00738118588924408, - 0.000979708507657051, - -0.014488596469163895, - -0.029111109673976898, - 0.01994919404387474, - -0.013119641691446304, - 0.0511932335793972, - -0.02710065245628357, - 0.023998023942112923, - 0.010849249549210072, - -0.04423877224326134, - -0.009255893528461456, - 0.10118195414543152, - 0.06053862348198891, - 0.04538895934820175, - 0.04245872050523758, - -0.030890226364135742, - 0.08711840212345123, - -0.05158989876508713, - -0.07107601314783096, - -0.03224097192287445, - -0.022391056641936302, - -0.0006772801280021667, - 0.036936912685632706, - 0.03606313467025757, - -0.018891457468271255, - 0.08996282517910004, - -0.0126413032412529, - 0.004430259577929974, - 0.021129967644810677, - -0.05228395760059357, - 0.014107000082731247, - 0.049310408532619476, - -0.028827577829360962, - 0.02147824689745903, - 0.03756196051836014, - 0.07700464129447937, - 0.0568147674202919, - -0.011988703161478043, - 0.04279327020049095, - 0.012430463917553425, - 0.020698750391602516, - -0.0008149035274982452, - 0.10153654217720032, - 0.00040434766560792923, - 0.031080074608325958, - 0.14214791357517242, - -0.05370105803012848, - 0.02049648016691208, - 0.043775737285614014, - -0.031228037551045418, - -0.014731254428625107, - 0.040111713111400604, - 0.014631280675530434, - -0.0007974607869982719, - 0.013930161483585835, - 0.02547520026564598, - 0.019608493894338608, - 0.0004660021513700485, - -0.07362757623195648, - 0.008002600632607937, - 0.03063669241964817, - -0.006437936797738075, - -0.008299417793750763, - 0.04793029651045799, - 0.04554450511932373, - -0.0013055391609668732, - 0.027068475261330605, - -0.04203086346387863, - -0.0392727367579937, - 0.0451681949198246, - 0.004858033731579781, - 0.01825796253979206, - 0.037626806646585464, - -0.008093742653727531, - -0.0695081353187561, - -0.00869007408618927, - 0.07364516705274582, - -0.04527127742767334, - 0.05107257515192032, - 0.025569718331098557, - -0.03791782259941101, - 0.04115404188632965, - 0.024648400023579597, - 0.009502576664090157, - -0.03840293735265732, - -0.11246615648269653, - -0.017843477427959442, - 0.03647778928279877, - -0.09027460217475891, - -0.029078323394060135, - -0.06343092769384384, - -0.01789630390703678, - 0.01277280692011118, - -0.015472803264856339, - 0.06734797358512878, - -0.021008610725402832, - -0.03386368229985237, - -0.0638267919421196, - 0.015611624345183372, - -0.003619130700826645, - -0.09523309022188187, - 0.039222851395606995, - 0.009249047376215458, - 0.035757191479206085, - 0.054674141108989716, - -0.03741035610437393, - -0.008628038689494133, - -0.045913130044937134, - -0.06450282782316208, - 0.019198831170797348, - 0.037115760147571564, - -0.007926956750452518, - -0.012477781623601913, - 0.055236831307411194, - 0.06221051514148712, - -0.057778459042310715, - 0.018592093139886856, - -0.01754257269203663, - 0.06259797513484955, - -0.045437343418598175, - 0.010842733085155487, - 0.04513061046600342, - 0.04570592939853668, - 0.047213684767484665, - -0.030376357957720757, - -0.09519802778959274, - -0.04083241522312164, - -0.02832810766994953, - 0.014120924286544323, - 0.002846464514732361, - -0.012063547968864441, - 0.022236157208681107, - 0.0012738360092043877, - -0.018109116703271866, - -0.10475285351276398, - -0.015032557770609856, - 0.010158160701394081, - -0.011292430572211742, - -0.06401592493057251, - 0.00038685090839862823, - -0.02081780880689621, - 0.03182196617126465, - -0.021548328921198845, - 0.04672554135322571, - 0.015559805557131767, - 0.00895227026194334, - -0.02360260672867298, - 0.014144625514745712, - 0.05879434943199158, - 0.02050899714231491, - -0.060546405613422394, - -0.05004870146512985, - 0.058372870087623596, - 0.039183273911476135, - 0.0634753406047821, - 0.0581124909222126, - 0.024736538529396057, - -0.01376645639538765, - 0.03098839521408081, - -0.01460226345807314, - 0.027210760861635208, - 0.018743272870779037, - 0.03199074789881706, - 0.04323304444551468, - -0.008895537815988064, - 0.07203303277492523, - 0.03568592295050621, - -0.0032968265004456043, - -0.001707201823592186, - 0.018686160445213318, - -0.09120447933673859, - -0.04628748074173927, - 0.017872925847768784, - -0.045394644141197205, - 0.005250438116490841, - 0.015030574053525925, - 0.05049777776002884, - 0.003858765121549368, - 0.07143180072307587, - 0.04214390367269516, - -0.0038417577743530273 - ] - }, - "p244_013.wav": { - "name": "p244", - "embedding": [ - 0.04180122911930084, - 0.09214162826538086, - -0.023953890427947044, - 0.033022597432136536, - -0.05570778250694275, - 0.062306858599185944, - -0.12841181457042694, - 0.15746766328811646, - -0.02411716803908348, - 0.13524729013442993, - -0.06339174509048462, - 0.12076590955257416, - -0.041479554027318954, - -0.15628328919410706, - 0.0033186450600624084, - 0.05365518853068352, - -0.0064680688083171844, - -0.02130661904811859, - -0.024971408769488335, - -0.01502863597124815, - 0.027534110471606255, - 0.022711116820573807, - 0.011029191315174103, - -0.006697091739624739, - 0.03608196973800659, - 0.06516958773136139, - -0.018898561596870422, - 0.029230449348688126, - -0.005271849688142538, - -0.05269036814570427, - -0.027185529470443726, - 0.09689103066921234, - -0.07007506489753723, - 0.014870780520141125, - 0.05317511409521103, - -0.021288137882947922, - -0.031244633719325066, - -0.04405716806650162, - 0.0020173387601971626, - -0.02095952257514, - -0.049467217177152634, - 0.07526838034391403, - 0.01684637740254402, - -0.012001371011137962, - 0.03228865563869476, - 0.027417033910751343, - -0.010017581284046173, - -0.026068396866321564, - -0.10345882177352905, - 0.1320187747478485, - 0.054364752024412155, - 0.010060951113700867, - -0.09031840413808823, - -0.050685565918684006, - 0.088133804500103, - -0.005484725348651409, - -0.09754212200641632, - -0.04370247572660446, - 0.07120070606470108, - 0.13908639550209045, - -0.02591714821755886, - -0.037886153906583786, - 0.019719060510396957, - 0.09992881864309311, - 0.07219521701335907, - 0.08328386396169662, - 0.07846216857433319, - 0.12435492128133774, - -0.019095713272690773, - 0.016601845622062683, - 0.04097136855125427, - 0.060054175555706024, - 0.06731104850769043, - -0.0005042863776907325, - 0.009632173925638199, - -0.016460828483104706, - -0.007587812375277281, - -0.019918402656912804, - -0.03549594432115555, - -0.04073633253574371, - -0.010511688888072968, - 0.011776662431657314, - 0.02103639952838421, - 0.035723209381103516, - -0.014737311750650406, - 0.05293334648013115, - 0.07555471360683441, - -0.03248133510351181, - 0.07212894409894943, - 0.019678011536598206, - -0.0035595810040831566, - 0.06935756653547287, - -0.12128299474716187, - -0.06480127573013306, - 0.03666117787361145, - -0.004663382191210985, - 0.02658022567629814, - 0.07021257281303406, - 0.04215478524565697, - -0.0014582121511921287, - 0.1214357241988182, - 0.03208373486995697, - 0.007184488233178854, - 0.02348063886165619, - -0.08203645050525665, - 0.14015400409698486, - 0.07637452334165573, - -0.03448845446109772, - 0.052705369889736176, - -0.050920527428388596, - 0.052040498703718185, - 0.05532774329185486, - -0.1277979612350464, - -0.06570499390363693, - 0.007321244105696678, - 0.0015962962061166763, - -0.036100488156080246, - 0.1262112259864807, - 0.004486396908760071, - 0.04735985025763512, - 0.10633707046508789, - -0.10624785721302032, - -0.058018118143081665, - -0.005772040691226721, - 0.04285059869289398, - -0.07732734829187393, - 0.06460559368133545, - 0.05450254678726196, - -0.006709379609674215, - 0.03220319747924805, - 0.07729875296354294, - 0.002653898438438773, - 0.007862737402319908, - 0.017341790720820427, - -0.0407961905002594, - 0.009697271510958672, - -0.020843302831053734, - -0.0047683995217084885, - 0.021697912365198135, - 0.022755347192287445, - 0.07159145176410675, - -0.018902845680713654, - -0.0014484189450740814, - -0.11145545542240143, - 0.008788513019680977, - 0.044541746377944946, - 0.0721859261393547, - -0.0292716845870018, - -0.020181458443403244, - -0.02958027832210064, - -0.06776988506317139, - 0.008942861109972, - -0.0021678556222468615, - 0.06922096014022827, - -0.017078066244721413, - 0.006485714577138424, - 0.10922037065029144, - 0.047116126865148544, - 0.008538180962204933, - -0.07208286225795746, - -0.0340455062687397, - -0.0003438859130255878, - 0.058403000235557556, - -0.09053274244070053, - -0.07285749912261963, - -0.01625024899840355, - 0.028661159798502922, - -0.03577844426035881, - 0.07629077881574631, - 0.05391363427042961, - 0.036884114146232605, - 0.013693151995539665, - -0.04572390764951706, - 0.010387314483523369, - -0.07715493440628052, - -0.07679317891597748, - -0.0039046690799295902, - -0.016595548018813133, - -0.03808900713920593, - 0.07443471252918243, - 0.029606353491544724, - 0.06747093796730042, - -0.027109559625387192, - -0.049743857234716415, - -0.09094046801328659, - 0.043254464864730835, - 0.031138062477111816, - -0.03484842926263809, - 0.03799951449036598, - 0.057091549038887024, - -0.04655960202217102, - 0.03534773737192154, - 0.07292725145816803, - 0.0973801463842392, - -0.035579096525907516, - 0.020460793748497963, - -0.0753767341375351, - 0.08986330032348633, - 0.1107315644621849, - -0.07787105441093445, - -0.08640953153371811, - -0.039389558136463165, - -0.0650918260216713, - 0.027072690427303314, - -0.039555057883262634, - 0.004868770018219948, - 0.030602451413869858, - -0.00993249099701643, - -0.09708236902952194, - -0.09578721225261688, - 0.08067167550325394, - -0.07769184559583664, - 0.005996673833578825, - -0.0971374660730362, - 0.04981131851673126, - 0.06969193369150162, - 0.0295806135982275, - -0.034254394471645355, - -0.017549563199281693, - 0.05788266286253929, - -0.01689348928630352, - 0.02332819625735283, - 0.07809992879629135, - 0.0437905415892601, - -0.09219998121261597, - -0.013689766637980938, - -0.052776336669921875, - 0.0472794733941555, - -0.031283989548683167, - 0.15503309667110443, - 0.011733030900359154, - -0.04290162771940231, - -0.07679995894432068, - 0.03731664642691612, - -0.0027612466365098953, - 0.04682622104883194, - 0.02213919721543789, - 0.06984446942806244, - 0.04407970607280731, - -0.05545263737440109, - 0.12399067729711533, - 0.03447185084223747, - -0.03532817214727402, - -0.06159738823771477, - -0.07154671847820282, - -0.056981466710567474, - 0.02826017700135708, - -0.0011807818664237857, - -0.10187993943691254, - -0.015239959582686424, - 0.02550121769309044, - 0.008778824470937252, - 0.05148731917142868, - 0.1295362412929535, - 0.062025539577007294, - -0.10440461337566376 - ] - }, - "p244_422.wav": { - "name": "p244", - "embedding": [ - 0.04541833698749542, - 0.08458312600851059, - -0.023454783484339714, - 0.034486714750528336, - -0.06569331139326096, - 0.08166154474020004, - -0.10306773334741592, - 0.11541111022233963, - -0.06664577126502991, - 0.1469326764345169, - -0.0744980201125145, - 0.1275518238544464, - -0.02101374790072441, - -0.17484790086746216, - -0.03702579811215401, - 0.046783193945884705, - -0.04963590204715729, - -0.020609663799405098, - -0.05518731102347374, - -0.008572538383305073, - 0.05503934249281883, - 0.04530587047338486, - 0.03069922886788845, - -0.02644139900803566, - 0.029758132994174957, - 0.05602380633354187, - 0.01148210372775793, - 0.0443878248333931, - 0.021111946552991867, - -0.09415147453546524, - -0.05215606093406677, - 0.10799876600503922, - -0.042590439319610596, - 0.024378152564167976, - 0.04700938239693642, - 0.006542799063026905, - 0.007808975875377655, - -0.06589578837156296, - -0.02965022251009941, - 0.014180677011609077, - -0.044283993542194366, - 0.06340132653713226, - 0.018022162839770317, - -0.016951337456703186, - 0.03702714294195175, - 0.005523263942450285, - -0.026546133682131767, - -0.03932574391365051, - -0.09015718102455139, - 0.1703866869211197, - 0.05058049410581589, - -0.0029137905221432447, - -0.0669962540268898, - -0.09811115264892578, - 0.1144866794347763, - 0.0038611034397035837, - -0.13156317174434662, - -0.030452024191617966, - 0.06977283954620361, - 0.1672186404466629, - -0.019561922177672386, - -0.04077700898051262, - 0.020243890583515167, - 0.10603959113359451, - 0.033650953322649, - 0.091997429728508, - 0.07575692236423492, - 0.09621387720108032, - 0.0177758801728487, - 0.03607472777366638, - 0.060398396104574203, - 0.08784779906272888, - 0.05488348379731178, - -0.015069113112986088, - 0.03863956034183502, - 8.72766540851444e-05, - -0.02677016332745552, - 0.012962518259882927, - -0.028015250340104103, - -0.015588689595460892, - -0.005776535719633102, - 0.013448293320834637, - 0.030180932953953743, - 0.00013139439397491515, - -0.030962733551859856, - 0.056462615728378296, - 0.02322574146091938, - -0.012342063710093498, - 0.05526026338338852, - 0.046231746673583984, - 0.0170885156840086, - 0.059908606112003326, - -0.07249534130096436, - -0.12434734404087067, - 0.0189268309623003, - 0.012780689634382725, - 0.02083045430481434, - 0.06770552694797516, - 0.039627399295568466, - -0.01924307458102703, - 0.10678678005933762, - 0.04480630159378052, - 0.004858614411205053, - 0.026508526876568794, - -0.09574019908905029, - 0.10585805773735046, - 0.10635103285312653, - -0.00851711817085743, - 0.037962574511766434, - -0.05263345688581467, - 0.10930723696947098, - 0.07997693121433258, - -0.14693857729434967, - -0.09290163964033127, - 0.018383167684078217, - -0.00992563832551241, - -0.0005949775222688913, - 0.11755628883838654, - -0.018640587106347084, - 0.02285652421414852, - 0.10849317163228989, - -0.1019386574625969, - -0.04690127819776535, - -0.03197425231337547, - 0.038750652223825455, - -0.0705902948975563, - 0.06172307953238487, - 0.02591230720281601, - -0.012785526923835278, - -0.003375417785719037, - 0.07257199287414551, - -0.03204205259680748, - 0.016749585047364235, - 0.013025358319282532, - -0.05999693647027016, - 0.024329418316483498, - -0.04753658547997475, - -0.004451957996934652, - 0.07646813988685608, - 0.04985387995839119, - 0.05346887931227684, - -0.014890183694660664, - -0.03708735108375549, - -0.11680256575345993, - 0.02105340175330639, - 0.0380379743874073, - 0.04715924710035324, - -0.011000190861523151, - -0.01658296398818493, - -0.029534200206398964, - -0.08115171641111374, - 0.04553832486271858, - -0.016616538166999817, - 0.09122822433710098, - 0.0007307507330551744, - 0.0025862623006105423, - 0.09746529906988144, - 0.01971001923084259, - -0.011201451532542706, - -0.04757167771458626, - -0.05075792968273163, - 0.01659035123884678, - 0.04615657031536102, - -0.09459192305803299, - -0.06831562519073486, - -0.006062419153749943, - 0.005153947044163942, - -0.02177676372230053, - 0.03420368582010269, - 0.05226865038275719, - 0.01881447620689869, - 0.050769686698913574, - -0.06105195730924606, - 0.004163816571235657, - -0.12745454907417297, - -0.06377451866865158, - -0.01025293581187725, - -0.055922988802194595, - -0.008037387393414974, - 0.08714110404253006, - 0.010349174961447716, - 0.014007600955665112, - -0.019033897668123245, - -0.06697788834571838, - -0.06847860664129257, - 0.06912989914417267, - 0.054943978786468506, - 0.026518283411860466, - 0.050358060747385025, - 0.0540132150053978, - -0.01333160325884819, - 0.06103567034006119, - 0.06090788170695305, - 0.10781397670507431, - -0.008715350180864334, - 0.015866965055465698, - -0.07559799402952194, - 0.11775265634059906, - 0.08472425490617752, - -0.07624869793653488, - -0.10165652632713318, - -0.040690235793590546, - -0.07324263453483582, - 0.061560120433568954, - -0.0384230874478817, - -0.0031766362953931093, - 0.026019444689154625, - -0.0035079438239336014, - -0.10405293107032776, - -0.07224126160144806, - 0.09929147362709045, - -0.052750762552022934, - -0.030151432380080223, - -0.0856558158993721, - 0.0414586067199707, - 0.09855987131595612, - 0.043341271579265594, - -0.03213178738951683, - 0.01844930462539196, - 0.07316546142101288, - -0.06688538193702698, - 0.00011240405001444742, - 0.03938597813248634, - 0.006907101254910231, - -0.0756271556019783, - -0.001042670919559896, - -0.0773075670003891, - 0.05040000006556511, - -0.07534458488225937, - 0.15776090323925018, - -0.02002742886543274, - -0.06325960159301758, - -0.07376483827829361, - 0.07833678275346756, - -0.019484220072627068, - 0.03947871923446655, - 0.05043086037039757, - 0.0736052617430687, - 0.03817128762602806, - -0.08851241320371628, - 0.11513213813304901, - 0.03098997473716736, - -0.02461356669664383, - -0.0550229586660862, - -0.04713433235883713, - -0.039751727133989334, - 0.019792353734374046, - -0.003768391441553831, - -0.07755888998508453, - 0.004410837776958942, - 0.022804660722613335, - 0.0012865568278357387, - 0.052790626883506775, - 0.13204078376293182, - 0.055120617151260376, - -0.09807848185300827 - ] - }, - "p244_349.wav": { - "name": "p244", - "embedding": [ - 0.08540891110897064, - 0.058250218629837036, - -0.012711707502603531, - 0.010913546197116375, - -0.02710677497088909, - 0.047694385051727295, - -0.124262735247612, - 0.09863723814487457, - 0.014355293475091457, - 0.10110175609588623, - -0.09421265125274658, - 0.08098426461219788, - 0.0105329230427742, - -0.13205063343048096, - -0.01683698408305645, - 0.02207673154771328, - -0.029234804213047028, - -0.011948125436902046, - -0.04459882900118828, - -0.02646157145500183, - 0.026781944558024406, - 0.05505087971687317, - 0.02969173714518547, - -0.028447303920984268, - 0.011826466768980026, - 0.047629959881305695, - 0.017836060374975204, - 0.030722439289093018, - 0.014373427256941795, - -0.019731616601347923, - -0.010528886690735817, - 0.09963102638721466, - -0.04415366053581238, - -0.001232187612913549, - 0.039728373289108276, - 0.012414194643497467, - 0.009998729452490807, - -0.08705490082502365, - -0.01833634451031685, - 0.02830887958407402, - -0.028729084879159927, - 0.08252543210983276, - 0.05862324684858322, - -0.022307252511382103, - 0.016683407127857208, - 0.03279050439596176, - -0.002284369198605418, - -0.05492330715060234, - -0.09989649057388306, - 0.18919336795806885, - 0.04894007369875908, - 0.009525242261588573, - -0.08266939967870712, - -0.028124278411269188, - 0.06982710212469101, - -0.01275735255330801, - -0.0371808260679245, - -0.02138627879321575, - 0.041986849159002304, - 0.1095627099275589, - -0.01373211294412613, - -0.056958239525556564, - 0.021656101569533348, - 0.08172081410884857, - 0.017425764352083206, - 0.04288431629538536, - 0.09412529319524765, - 0.11123912781476974, - -0.02966512367129326, - 0.020743966102600098, - 0.058004822582006454, - 0.06339043378829956, - 0.06896809488534927, - -0.015414141118526459, - 0.052423786371946335, - -0.011913759633898735, - -0.03395117074251175, - 0.0209461972117424, - -0.025050632655620575, - -0.03093639388680458, - 0.039338916540145874, - -0.007561462931334972, - 0.029064171016216278, - 0.057590946555137634, - -0.08605705201625824, - 0.03638822212815285, - 0.017086384817957878, - 0.011760610155761242, - 0.06750627607107162, - 0.017311399802565575, - 0.02671937644481659, - 0.030181407928466797, - -0.06563965976238251, - -0.0993516594171524, - 0.04442785307765007, - -0.004955397453159094, - 0.04499300569295883, - 0.04858509823679924, - 0.042385734617710114, - -0.025584038347005844, - 0.10022928565740585, - 0.03266632556915283, - -0.02193629741668701, - 0.0061015053652226925, - -0.06473364681005478, - 0.11887188255786896, - 0.12711608409881592, - -0.0025452065747231245, - 0.021680917590856552, - -0.059343963861465454, - 0.05260802060365677, - 0.03638646379113197, - -0.11722113192081451, - -0.04973914474248886, - 0.03135228902101517, - 0.040642909705638885, - 0.03446685150265694, - 0.10699605196714401, - -0.015008322894573212, - 0.030230766162276268, - 0.06898210942745209, - -0.07640878856182098, - -0.030434798449277878, - 0.0009467800846323371, - 0.0144145917147398, - -0.06574729084968567, - 0.01355134230107069, - 0.02871314063668251, - -0.011575380340218544, - -0.03486074507236481, - 0.07009276002645493, - -0.007925139740109444, - 0.0034914433490484953, - -0.02545424923300743, - 0.022998027503490448, - 0.06354846805334091, - -0.004102764185518026, - -0.024549957364797592, - 0.024519838392734528, - 0.042749207466840744, - 0.03245797008275986, - 0.03332022204995155, - -0.0439610593020916, - -0.13172119855880737, - 0.0188288651406765, - 0.0338139608502388, - 0.05362704396247864, - -0.03647772967815399, - -0.04939907789230347, - -0.052901264280080795, - -0.049329664558172226, - 0.02882273867726326, - -0.00579820154234767, - 0.03838112950325012, - 0.032717250287532806, - -0.029096631333231926, - 0.09640783071517944, - -0.008007340133190155, - -0.0013703161384910345, - -0.02021518163383007, - -0.015804030001163483, - 0.03113214671611786, - 0.04158685728907585, - -0.047837287187576294, - -0.0662064403295517, - 0.001580905169248581, - -0.003128214506432414, - -0.022414717823266983, - -0.011353373527526855, - 0.03561578691005707, - -0.01849271170794964, - 0.028660621494054794, - -0.09624510258436203, - 0.00881007220596075, - -0.11597937345504761, - -0.04871399328112602, - 0.013783697038888931, - -0.0026244446635246277, - 0.009489571675658226, - 0.07479843497276306, - -0.0009749364107847214, - 0.04950837418437004, - -0.04377108812332153, - -0.06294356286525726, - -0.02207951806485653, - 0.06318537890911102, - 0.0710412859916687, - -0.007000393234193325, - 0.03631216287612915, - 0.04741024971008301, - 0.019181789830327034, - 0.038925912231206894, - 0.06555253267288208, - 0.08878957480192184, - -0.018117303028702736, - -0.016201388090848923, - -0.014072326943278313, - 0.11503031104803085, - 0.0418236069381237, - -0.05530969426035881, - -0.05751148983836174, - -0.015735020861029625, - -0.0547705814242363, - 0.02074793539941311, - -0.0044256290420889854, - 0.020954011008143425, - 0.02769204042851925, - 0.005833758972585201, - -0.08535482734441757, - -0.05664476007223129, - 0.03385096788406372, - -0.03923582285642624, - -0.009810577146708965, - -0.07013048976659775, - 0.04954316467046738, - 0.0873485654592514, - 0.04243951290845871, - -0.02536085806787014, - -0.027801496908068657, - -0.013402402400970459, - -0.06600793451070786, - -0.05737914890050888, - -0.01806335151195526, - 0.03436524048447609, - -0.10731378197669983, - 0.016827620565891266, - -0.053686272352933884, - 0.04782935231924057, - -0.04589269682765007, - 0.10324844717979431, - 0.017581896856427193, - -0.054719746112823486, - -0.06637399643659592, - 0.025925684720277786, - -0.0315590426325798, - 0.04078938066959381, - 0.05448117107152939, - -0.009613792411983013, - 0.02574933134019375, - -0.08420148491859436, - 0.09530393779277802, - 0.03864520788192749, - -0.03345613181591034, - -0.06460580229759216, - -0.028467323631048203, - -0.020778222009539604, - 0.03040323406457901, - 0.01706008054316044, - -0.04301028698682785, - -0.003909021615982056, - 0.02198522910475731, - -0.02423027902841568, - 0.0343119315803051, - 0.09058769047260284, - 0.04472474008798599, - -0.096591055393219 - ] - }, - "p244_298.wav": { - "name": "p244", - "embedding": [ - 0.0783153623342514, - 0.04486734792590141, - -0.03558306023478508, - 0.022604607045650482, - -0.009468507021665573, - 0.017579689621925354, - -0.1448608785867691, - 0.09454167634248734, - -0.010854416526854038, - 0.09866137057542801, - -0.08153223991394043, - 0.07843281328678131, - 0.005925238132476807, - -0.1220955103635788, - -0.022552667185664177, - 0.04597381874918938, - -0.003340328112244606, - -0.0003471421077847481, - -0.05397111549973488, - 0.002467063721269369, - 0.013333065435290337, - 0.05771683529019356, - 0.02660403586924076, - -0.044326797127723694, - 0.024812573567032814, - 0.034753669053316116, - -0.0035345316864550114, - 0.015890037640929222, - -0.004101975355297327, - 0.02681456133723259, - 0.03311733528971672, - 0.10977243632078171, - -0.02149936929345131, - -0.0034764958545565605, - 0.03331802785396576, - 0.03492150083184242, - -0.017748737707734108, - -0.10053358227014542, - -0.006926415022462606, - -0.01801607757806778, - -0.0489988848567009, - 0.0686577633023262, - 0.05895029753446579, - -0.02180906943976879, - 0.026191536337137222, - -0.006195317953824997, - -0.020656749606132507, - -0.06300091743469238, - -0.11293397098779678, - 0.1733628511428833, - 0.010862482711672783, - 0.061366863548755646, - -0.12394580990076065, - -0.013097794726490974, - 0.058895308524370193, - -0.003234550356864929, - -0.035752613097429276, - -0.07516436278820038, - 0.041185539215803146, - 0.15332958102226257, - -0.00027687568217515945, - -0.04494452476501465, - 0.030546151101589203, - 0.09159915149211884, - 0.0491509884595871, - 0.04296111315488815, - 0.10902520269155502, - 0.09630227833986282, - 0.009345638565719128, - 0.04124707728624344, - 0.0423772856593132, - 0.038456812500953674, - 0.02613762952387333, - -0.025760576128959656, - 0.02131805010139942, - -0.0170186348259449, - -0.04316383972764015, - 0.006306009367108345, - -0.020465513691306114, - -0.05683024600148201, - 0.010927809402346611, - -0.004765205085277557, - 0.02153712511062622, - 0.07214502990245819, - -0.0712527334690094, - 0.012937184423208237, - 0.06659115105867386, - -0.0567387230694294, - 0.06816545128822327, - 0.06045649200677872, - 0.0018454701639711857, - -0.011259032413363457, - -0.051385410130023956, - -0.10195751488208771, - 0.008097678422927856, - 0.0003301333636045456, - 0.024047812446951866, - 0.02176598086953163, - 0.03327599912881851, - -0.019416116178035736, - 0.08248540014028549, - -0.008758355863392353, - 0.0007432121783494949, - -0.013671837747097015, - -0.06470733880996704, - 0.1097816675901413, - 0.11527879536151886, - -0.014673611149191856, - 0.013993321917951107, - -0.04987140744924545, - -0.01517330389469862, - 0.07111507654190063, - -0.09263627976179123, - -0.050832316279411316, - 0.055070918053388596, - 0.009448597207665443, - 0.04152873903512955, - 0.11458305269479752, - 0.039318718016147614, - 0.013146838173270226, - 0.06974419206380844, - -0.10073088109493256, - -0.06746795773506165, - -0.005582009442150593, - 0.02534407004714012, - -0.060782793909311295, - 0.028066866099834442, - 0.06245073676109314, - 0.0065525611862540245, - -0.044309474527835846, - 0.05730561167001724, - 0.015031469985842705, - 0.018446076661348343, - -0.05952349305152893, - 0.02918555960059166, - 0.09582728147506714, - -0.012697113677859306, - -0.03522792458534241, - 0.03355211764574051, - 0.04821883514523506, - 0.03775961697101593, - 0.032743506133556366, - -0.02601339854300022, - -0.11340316385030746, - -0.005859032738953829, - 0.08502575010061264, - 0.054179828613996506, - -0.05415614694356918, - -0.027379555627703667, - -0.0590558797121048, - -0.03867267817258835, - 0.021324295550584793, - -0.013695325702428818, - 0.060611508786678314, - 0.03834274411201477, - -0.007643892429769039, - 0.11931717395782471, - -0.04876114800572395, - 0.03685218095779419, - -0.01933169923722744, - 0.03703108802437782, - 0.0433482751250267, - 0.037367917597293854, - -0.04029347747564316, - -0.07037602365016937, - 0.0024285546969622374, - 0.010377885773777962, - -0.022722166031599045, - -0.00872567854821682, - 0.029660653322935104, - -0.021610666066408157, - 0.0057167490012943745, - -0.08704697340726852, - 0.023718245327472687, - -0.11360763013362885, - -0.012324569746851921, - 0.034791380167007446, - -0.037861838936805725, - 0.0048785824328660965, - 0.0975361168384552, - 0.030398281291127205, - 0.02705276757478714, - -0.03759271651506424, - -0.10856139659881592, - -0.0357990600168705, - 0.059820253401994705, - 0.08740724623203278, - -0.049302391707897186, - -0.005269133485853672, - 0.0003327936865389347, - 0.026355082169175148, - -0.012095901183784008, - 0.055634740740060806, - 0.06892257183790207, - -0.040863633155822754, - -0.07823437452316284, - -0.0519237220287323, - 0.11780060827732086, - 0.06420783698558807, - -0.07833965122699738, - -0.053266607224941254, - -0.009619832038879395, - -0.045403797179460526, - -0.012149225920438766, - -0.01588856428861618, - 0.013819454237818718, - 0.062056638300418854, - -0.05083910748362541, - -0.14196781814098358, - -0.10112844407558441, - 0.03565697371959686, - -0.05574406683444977, - -0.0027304021641612053, - -0.07112748175859451, - 0.02799573540687561, - 0.046260084956884384, - 0.0164666585624218, - -0.014325562864542007, - -0.03065035678446293, - -0.039814673364162445, - -0.10131550580263138, - -0.04837861657142639, - -0.010866813361644745, - 0.015578078106045723, - -0.0769130066037178, - 5.078595131635666e-05, - -0.056136466562747955, - 0.08581120520830154, - -0.049361880868673325, - 0.11011503636837006, - 0.008481668308377266, - -0.06276503205299377, - -0.09720103442668915, - -0.01675868220627308, - -0.0160441305488348, - 0.06392525881528854, - 0.047983601689338684, - 0.021097492426633835, - 0.029247887432575226, - -0.0867052972316742, - 0.06496419757604599, - 0.07208430767059326, - -0.0005047102458775043, - -0.07958857715129852, - -0.0334341861307621, - -0.020782334730029106, - 0.040011532604694366, - -0.016867419704794884, - -0.007381606847047806, - 0.0317048579454422, - 0.025594156235456467, - -0.02639741078019142, - 0.053974978625774384, - 0.06923414766788483, - 0.0375593937933445, - -0.09193511307239532 - ] - }, - "p244_061.wav": { - "name": "p244", - "embedding": [ - 0.010503833182156086, - 0.07383543252944946, - -0.016542084515094757, - 0.012019818648695946, - -0.04151562973856926, - -0.020791402086615562, - -0.11385171115398407, - 0.06947172433137894, - -0.03628823161125183, - 0.09727707505226135, - -0.05810140073299408, - 0.09898405522108078, - -0.057805225253105164, - -0.10939942300319672, - -0.022850457578897476, - 0.036566466093063354, - -0.0534239336848259, - -0.026703137904405594, - -0.013698762282729149, - -0.06186290830373764, - 0.03921116888523102, - 0.020700370892882347, - 0.0695619136095047, - -0.05865180492401123, - -0.009902337566018105, - 0.08839148283004761, - 0.03088214434683323, - 0.023921171203255653, - 0.018199335783720016, - -0.06475703418254852, - 0.013161275535821915, - 0.03705478832125664, - 0.0007729083299636841, - -0.004861840978264809, - 0.01599164865911007, - 0.01235099509358406, - -0.009464501403272152, - 0.006483843550086021, - 0.01098025031387806, - 0.04673808813095093, - -0.05720778927206993, - 0.0529603511095047, - 0.002980251330882311, - -0.04305103421211243, - 0.06909830868244171, - -0.054810021072626114, - -0.02551485039293766, - 0.04205501079559326, - -0.06361868232488632, - 0.09851347655057907, - 0.06359386444091797, - 0.03271337226033211, - -0.05402759462594986, - -0.0011928901076316833, - 0.09332353621721268, - -0.02536720782518387, - -0.13511063158512115, - -0.033564016222953796, - 0.03294172137975693, - 0.10094667971134186, - -0.02611926943063736, - -0.023370955139398575, - 0.026872577145695686, - 0.047649916261434555, - 0.026842184364795685, - 0.0445898212492466, - 0.1110273227095604, - 0.04294699802994728, - 0.02638382837176323, - -0.016651874408125877, - 0.03973395377397537, - 0.08609452843666077, - 0.0077682435512542725, - 0.003985174931585789, - 0.022044053301215172, - -0.05459677800536156, - -0.0046559590846300125, - -0.031538791954517365, - -0.008538326248526573, - -0.05782307684421539, - -0.0910380557179451, - -0.01406343188136816, - 0.0035837190225720406, - -0.02373800054192543, - -0.003686077892780304, - 0.014293171465396881, - 0.04337034747004509, - -0.03884441405534744, - 0.05448584258556366, - 0.04829871654510498, - -0.024612754583358765, - -0.006182447075843811, - -0.017899438738822937, - -0.03282230347394943, - -0.05259358137845993, - 0.020701829344034195, - 0.06864460557699203, - 0.024832911789417267, - 0.025403568521142006, - 0.07236802577972412, - 0.06778188049793243, - 0.04925151541829109, - 0.0033265934325754642, - -0.025807548314332962, - -0.08680272102355957, - 0.05969361588358879, - 0.09965786337852478, - -0.02880961075425148, - 0.040903665125370026, - -0.016247164458036423, - 0.014681282453238964, - -0.011436587199568748, - -0.014758501201868057, - -0.04151485487818718, - -0.01939372718334198, - 0.013222092762589455, - 0.016262739896774292, - 0.07775906473398209, - 0.00627591647207737, - 0.02597089484333992, - 0.10190996527671814, - -0.04874615743756294, - -0.06950819492340088, - -0.0687536895275116, - 0.04424936696887016, - -0.05221402272582054, - 0.06808855384588242, - 0.0745353102684021, - 0.029006335884332657, - 0.03840961679816246, - 0.0714312195777893, - 0.0459996834397316, - 0.030135516077280045, - -0.023774681612849236, - -0.05253520980477333, - 0.007193325087428093, - -0.011947530321776867, - 0.0031251590698957443, - 0.12023049592971802, - 0.034215740859508514, - 0.11386828124523163, - 0.021032562479376793, - 0.019968319684267044, - -0.05792011693120003, - -0.008707597851753235, - 0.04271010681986809, - -0.004224861040711403, - -0.05100340023636818, - -0.05411183089017868, - -0.027316758409142494, - -0.05744759365916252, - -0.016456816345453262, - -0.04456716775894165, - 0.0972992479801178, - -0.011926674284040928, - -0.0006774088833481073, - 0.10733026266098022, - 0.012175491079688072, - -0.04454914107918739, - -0.05713679641485214, - -0.027568140998482704, - -0.019110843539237976, - 0.03704819083213806, - -0.13727952539920807, - -0.07754117250442505, - -0.057516977190971375, - 0.04801909625530243, - 0.009561143815517426, - 0.04344985634088516, - 0.06921812891960144, - -0.0227131936699152, - 0.01063104160130024, - 0.01005251519382, - 0.04331858456134796, - -0.03098268434405327, - -0.07494499534368515, - -0.016767974942922592, - -0.07594367861747742, - -0.045961350202560425, - 0.09026035666465759, - -0.01376914419233799, - 0.059039242565631866, - -0.010324150323867798, - -0.0952242985367775, - -0.07355916500091553, - 0.05698993057012558, - 0.007061205338686705, - -0.0304392259567976, - 0.030798139050602913, - 0.026353420689702034, - -0.05475950613617897, - 0.02391527034342289, - 0.022022049874067307, - 0.06968840956687927, - -0.0952993631362915, - 0.0018919302383437753, - -0.06795518100261688, - 0.025494331493973732, - 0.09529565274715424, - -0.06826399266719818, - -0.04033336043357849, - -0.08081422746181488, - -0.04762030020356178, - 0.04861374944448471, - -0.030655009672045708, - -0.01004729513078928, - 0.006124161183834076, - -0.031252987682819366, - -0.088677778840065, - -0.10544636845588684, - 0.07235821336507797, - -0.024289406836032867, - -0.0010815453715622425, - -0.040017180144786835, - 0.007286242675036192, - 0.009337343275547028, - 0.025132909417152405, - -0.02728910744190216, - 0.04744695872068405, - 0.0029693227261304855, - -0.03418800234794617, - 0.028190884739160538, - 0.05699702724814415, - 0.08039338886737823, - 0.03288767486810684, - -0.04579857736825943, - -0.08449687063694, - 0.033274490386247635, - -0.0187789648771286, - 0.0910448208451271, - 0.004878797102719545, - -0.035113222897052765, - -0.02455628290772438, - 0.012131564319133759, - -0.03887154906988144, - 0.04349634796380997, - 0.06392054259777069, - 0.06324782967567444, - 0.011202742345631123, - -0.061195697635412216, - 0.07890881597995758, - 0.049680642783641815, - -0.0033997371792793274, - -0.04919392615556717, - -0.008915805257856846, - -0.038483768701553345, - 0.011282350867986679, - -0.013656266033649445, - -0.06140866130590439, - 0.05136915296316147, - -0.04518759250640869, - 0.0378573015332222, - 0.07140222936868668, - 0.07738418877124786, - 0.056116946041584015, - -0.03015414997935295 - ] - }, - "p244_036.wav": { - "name": "p244", - "embedding": [ - 0.039696451276540756, - 0.07900166511535645, - -0.03502984344959259, - 0.001488078385591507, - -0.04796702787280083, - -0.007704870775341988, - -0.11515000462532043, - 0.11792300641536713, - -0.006122824735939503, - 0.12819629907608032, - -0.05480644106864929, - 0.126910999417305, - -0.03232337534427643, - -0.0947665125131607, - 0.014001257717609406, - 0.0387929305434227, - -0.026176713407039642, - -0.021547775715589523, - 0.02614351361989975, - -0.03343471884727478, - 0.04482840374112129, - 0.03203378617763519, - 0.04191741347312927, - -0.03329453244805336, - 0.014557702466845512, - 0.08128000795841217, - -0.006069991737604141, - -0.010209326632320881, - 0.0017964591970667243, - -0.04160566255450249, - 0.006297718733549118, - 0.05584024265408516, - -0.029551396146416664, - 0.0172466691583395, - 0.033043429255485535, - -0.006160011515021324, - -0.0294638741761446, - -0.03317053243517876, - 0.002704608254134655, - 0.011645063757896423, - -0.054771557450294495, - 0.07515023648738861, - 0.010668998584151268, - -0.06582660228013992, - 0.03622075170278549, - -0.019955553114414215, - -0.021793009713292122, - 0.01973731815814972, - -0.05598358064889908, - 0.13411536812782288, - 0.04202825948596001, - 0.05436961352825165, - -0.08185459673404694, - 0.009210711345076561, - 0.06650005280971527, - 0.0002536596730351448, - -0.086894690990448, - -0.029942207038402557, - 0.024715105071663857, - 0.09667101502418518, - -0.014627203345298767, - -0.054063230752944946, - 0.04994397982954979, - 0.06874984502792358, - 0.03454384580254555, - 0.03129365295171738, - 0.10296916961669922, - 0.08128376305103302, - -0.004657566547393799, - 0.014649923890829086, - 0.03687429428100586, - 0.09047475457191467, - 0.04890032485127449, - -0.0023312317207455635, - 0.007084229029715061, - -0.030093371868133545, - -0.026402411982417107, - -0.04439539834856987, - -0.0024288874119520187, - -0.059110499918460846, - -0.08051137626171112, - -0.01982063613831997, - 0.01331713330000639, - 0.03629866987466812, - 0.009104162454605103, - 0.00870920717716217, - 0.07833587378263474, - -0.05017024278640747, - 0.04939065873622894, - 0.033726178109645844, - -0.01456803735345602, - 0.009120665490627289, - -0.09196499735116959, - -0.050080977380275726, - -0.005661372095346451, - -0.014132464304566383, - 0.07505285739898682, - 0.06012466549873352, - 0.048706162720918655, - 0.04341353103518486, - 0.08402121067047119, - 0.03331269696354866, - 0.007629400584846735, - -0.040091097354888916, - -0.07908697426319122, - 0.12384488433599472, - 0.10022184252738953, - -0.06589409708976746, - 0.032079536467790604, - -0.032655153423547745, - 0.006819132715463638, - -0.004454446956515312, - -0.07505501806735992, - -0.04442037642002106, - -0.010505639016628265, - 0.020856546238064766, - 0.021828463301062584, - 0.10846095532178879, - 0.0320945680141449, - 0.05220886319875717, - 0.0971718430519104, - -0.08202537894248962, - -0.08927089720964432, - -0.04340739548206329, - 0.039753615856170654, - -0.097220778465271, - 0.09664259105920792, - 0.0757996141910553, - 0.03085213340818882, - 0.03681663051247597, - 0.07658296823501587, - 0.04002885892987251, - 0.03453121706843376, - -0.04865395277738571, - -0.00394897535443306, - 0.006425143219530582, - -0.028068479150533676, - 0.015059907920658588, - 0.07034169882535934, - 0.019843172281980515, - 0.10434575378894806, - 0.037197694182395935, - 0.009082874283194542, - -0.09497249126434326, - 0.020384294912219048, - 0.06136561930179596, - 0.01703318953514099, - -0.043061237782239914, - -0.06168171018362045, - -0.009724212810397148, - -0.056085407733917236, - -0.03192100673913956, - 0.006132389418780804, - 0.058645397424697876, - -0.008427866734564304, - 0.023568224161863327, - 0.11412405967712402, - 0.020760629326105118, - -0.005317517556250095, - -0.03144900128245354, - -0.019740229472517967, - -0.01343044824898243, - 0.05508983135223389, - -0.11658359318971634, - -0.10302060842514038, - -0.047438159584999084, - 0.028975151479244232, - 0.0046210698783397675, - 0.0543365553021431, - 0.08943154662847519, - -0.006475461646914482, - 0.005902215372771025, - -0.008919097483158112, - 0.025085752829909325, - -0.06045353785157204, - -0.08726175129413605, - -0.020090853795409203, - -0.04674510657787323, - -0.04142329469323158, - 0.0830049067735672, - -0.00825763214379549, - 0.07419272512197495, - -0.02403843402862549, - -0.06681835651397705, - -0.07453533262014389, - 0.03593842312693596, - 0.015746906399726868, - -0.06332405656576157, - 0.0056026391685009, - 0.055119022727012634, - -0.026377443224191666, - -0.0183092150837183, - 0.014950566925108433, - 0.10145875811576843, - -0.0856412798166275, - -0.014706939458847046, - -0.07549495995044708, - 0.07272934913635254, - 0.1018032357096672, - -0.07302296161651611, - -0.05466547980904579, - -0.08435799181461334, - -0.05623549595475197, - 0.00935031846165657, - -0.03244401514530182, - -0.0003330435138195753, - 0.014386954717338085, - -0.04248708486557007, - -0.08264987170696259, - -0.11466667056083679, - 0.03702050447463989, - -0.03772899881005287, - 0.002540057757869363, - -0.06888452917337418, - 0.022443683817982674, - 0.01781071349978447, - 0.02222575806081295, - -0.03691492974758148, - 0.024909881874918938, - -0.014810662716627121, - -0.021678956225514412, - 0.010898753069341183, - 0.053276997059583664, - 0.07110464572906494, - -0.015498161315917969, - -0.060730189085006714, - -0.0829211175441742, - 0.04473395645618439, - -0.046907782554626465, - 0.10802876949310303, - -0.01765967160463333, - -0.05644248425960541, - -0.0660654753446579, - -0.023356230929493904, - -0.006721619050949812, - 0.03198873996734619, - 0.06324706971645355, - 0.05243811756372452, - 0.02564788982272148, - -0.06232444941997528, - 0.08388499170541763, - 0.07024085521697998, - 0.013579219579696655, - -0.06624753028154373, - -0.049042217433452606, - -0.030707955360412598, - 0.023042382672429085, - -0.00033287331461906433, - -0.063911572098732, - 0.05250997096300125, - -0.01413326058536768, - 0.03689776360988617, - 0.0767374336719513, - 0.07504931092262268, - 0.04817044734954834, - -0.08827077597379684 - ] - }, - "p244_137.wav": { - "name": "p244", - "embedding": [ - 0.07323402166366577, - 0.04701566323637962, - -0.03407219424843788, - -0.012443309649825096, - -0.052713777869939804, - 0.05072305351495743, - -0.1369348168373108, - 0.083346888422966, - -0.029676249250769615, - 0.1251402050256729, - -0.030146399512887, - 0.10617455840110779, - 0.0004471093416213989, - -0.14881309866905212, - -0.05102582275867462, - 0.026798482984304428, - -0.06987975537776947, - -0.019881077110767365, - -0.08919119834899902, - -0.04895108938217163, - 0.028941020369529724, - 0.03658512607216835, - 0.06155029684305191, - -0.081780806183815, - 0.04772460460662842, - 0.054173119366168976, - 0.0011837980709969997, - 0.03629201650619507, - -0.005539597012102604, - -0.0769825354218483, - -0.007821701467037201, - 0.07083937525749207, - -0.07476836442947388, - -0.015395007096230984, - 0.032972149550914764, - -0.010023701936006546, - -0.01503636222332716, - -0.07573936134576797, - -0.012586395256221294, - 0.048920415341854095, - -0.022296112030744553, - 0.09835036098957062, - 0.033725909888744354, - -0.045888371765613556, - 0.01916206255555153, - 0.0004385198699310422, - 0.000893506221473217, - -0.04467454180121422, - -0.09139126539230347, - 0.1573576033115387, - 0.011268718168139458, - 0.027591580525040627, - -0.09971460700035095, - -0.055402517318725586, - 0.0914253517985344, - -0.0517367348074913, - -0.09656410664319992, - -0.04162157326936722, - 0.015442490577697754, - 0.12979888916015625, - -0.049116406589746475, - -0.04449981451034546, - 0.04587629809975624, - 0.053686946630477905, - 0.08161471784114838, - 0.0282039325684309, - 0.12598221004009247, - 0.09968308359384537, - -0.006171942222863436, - 0.0403103269636631, - 0.05260257422924042, - 0.06849610805511475, - 0.029213018715381622, - 0.006409008987247944, - 0.042101070284843445, - -0.022989381104707718, - -0.012170197442173958, - -0.04559522494673729, - -0.02409525215625763, - -0.024511262774467468, - 0.017215341329574585, - 0.016802771016955376, - 0.04515107348561287, - 0.05234968662261963, - -0.06451591849327087, - 0.03960376977920532, - 0.04394268989562988, - -0.04873551055788994, - 0.0624396950006485, - 0.06528867781162262, - 0.02384638786315918, - 0.041767656803131104, - -0.09128506481647491, - -0.09978775680065155, - 0.012783454731106758, - 0.010417213663458824, - 0.030834242701530457, - 0.01819121278822422, - 0.04190941900014877, - -0.02935558743774891, - 0.08560215681791306, - 0.07491399347782135, - -0.02291879989206791, - 0.01884651929140091, - -0.06593538820743561, - 0.11619137227535248, - 0.10952077805995941, - -0.02838185988366604, - 0.016298631206154823, - -0.04978831112384796, - 0.03408537805080414, - 0.054956674575805664, - -0.0895986557006836, - -0.0922883152961731, - 0.037310995161533356, - -0.014090909622609615, - 0.02099648304283619, - 0.12910661101341248, - -0.008333265781402588, - 0.024744190275669098, - 0.08971239626407623, - -0.06946422159671783, - -0.026211461052298546, - 0.0037510537076741457, - 0.03790688514709473, - -0.04257971793413162, - 0.03757815062999725, - 0.05519421398639679, - 0.005291100591421127, - 0.008724266663193703, - 0.08928349614143372, - 0.004024004563689232, - 0.00590260187163949, - -0.010149299167096615, - 0.00730150006711483, - 0.07397693395614624, - 0.015930086374282837, - -0.034333303570747375, - 0.09817247837781906, - 0.07742985337972641, - 0.04726383090019226, - 0.010349077172577381, - -0.038224589079618454, - -0.1082267239689827, - 0.018956340849399567, - 0.025141257792711258, - 0.05967985838651657, - -0.047370050102472305, - 0.005567436572164297, - -0.060044705867767334, - -0.06234858185052872, - 0.04380882903933525, - 0.007086709141731262, - 0.08184448629617691, - 0.007063056342303753, - -0.025985410436987877, - 0.12440069764852524, - -0.0010097082704305649, - 0.025082135573029518, - 0.004870504140853882, - 0.0020038411021232605, - 0.01643371768295765, - 0.059934407472610474, - -0.050406575202941895, - -0.0577012374997139, - -0.029048709198832512, - 0.01412963680922985, - -0.00985980499535799, - 0.06265769153833389, - 0.08610108494758606, - -0.00437965476885438, - 0.02930818684399128, - -0.06474530696868896, - 0.018012654036283493, - -0.06760760396718979, - -0.004771389067173004, - 0.011742699891328812, - -0.07271106541156769, - -0.05105860158801079, - 0.09905054420232773, - 0.008971092291176319, - 0.034508515149354935, - -0.07160092890262604, - -0.10660918056964874, - -0.04197307676076889, - 0.027732256799936295, - 0.056387901306152344, - -0.025404997169971466, - -0.00295102596282959, - 0.0391593798995018, - 0.026075223460793495, - 0.038801200687885284, - 0.08246750384569168, - 0.06608185172080994, - -0.045813582837581635, - -0.03664502501487732, - -0.04121950641274452, - 0.14050422608852386, - 0.0377991683781147, - -0.04623603820800781, - -0.0512462854385376, - -0.021551743149757385, - -0.05791545659303665, - 0.002480804920196533, - -0.0013288995251059532, - 0.03373163938522339, - 0.06470980495214462, - 0.0011280989274382591, - -0.09180772304534912, - -0.09985987842082977, - 0.06479770690202713, - -0.0658077672123909, - -0.0053179021924734116, - -0.06633488833904266, - 0.009957075119018555, - 0.07213683426380157, - 0.031549811363220215, - -0.007009602151811123, - 0.005476254969835281, - -0.012819638475775719, - -0.04475744068622589, - 0.014464026317000389, - 0.04359792545437813, - 0.01910415105521679, - -0.05417538434267044, - -0.030229883268475533, - -0.0734155997633934, - 0.06711634993553162, - -0.028289776295423508, - 0.11958017945289612, - -0.0030914433300495148, - -0.03456159681081772, - -0.06999552249908447, - 0.03639760613441467, - -0.06454180181026459, - 0.07271772623062134, - 0.09131985902786255, - 0.06695115566253662, - 0.045604173094034195, - -0.059106260538101196, - 0.09006214886903763, - 0.05803312361240387, - -0.042356938123703, - -0.08483725786209106, - -0.05335173010826111, - -0.024826427921652794, - 0.03546859323978424, - 0.026413235813379288, - -0.04585723206400871, - 0.057613927870988846, - 0.033775992691516876, - -0.013522894121706486, - 0.02359507791697979, - 0.0853094831109047, - 0.06051453948020935, - -0.07958009839057922 - ] - }, - "p244_064.wav": { - "name": "p244", - "embedding": [ - 0.008073003962635994, - 0.08285491913557053, - -0.028157172724604607, - 0.06573159992694855, - -0.0554533526301384, - -0.02481571026146412, - -0.08226963877677917, - 0.05811410769820213, - 0.01850319467484951, - 0.07986201345920563, - -0.0282637607306242, - 0.09572188556194305, - -0.032036565244197845, - -0.12506912648677826, - 0.006754709407687187, - 0.006025562062859535, - 0.02327914535999298, - 0.016029734164476395, - 0.016798008233308792, - -0.024326611310243607, - -0.02280670404434204, - 0.0013512670993804932, - -0.04506585747003555, - 0.009816441684961319, - -0.015753760933876038, - 0.009264109656214714, - -0.043210867792367935, - 0.020358748733997345, - -0.024531273171305656, - -0.022729191929101944, - -0.00346355140209198, - 0.028613679111003876, - -0.03164613991975784, - -0.015002998523414135, - 0.007012704387307167, - -0.008996935561299324, - -0.018092893064022064, - -0.021090079098939896, - -0.04626358300447464, - -0.04103551059961319, - -0.07599478960037231, - 0.009250197559595108, - 0.04560007527470589, - -0.058144696056842804, - 0.03333031386137009, - 0.021891143172979355, - -0.02973495051264763, - -0.024465270340442657, - -0.041638825088739395, - 0.07266988605260849, - 0.025158818811178207, - 0.07875867187976837, - -0.04601132124662399, - -0.022743722423911095, - 0.11506137996912003, - 0.021386640146374702, - 0.002506434917449951, - -0.020643513649702072, - -0.0041916705667972565, - 0.08226695656776428, - 0.02678918093442917, - 0.01671762950718403, - 0.041184768080711365, - 0.04360993206501007, - 0.02105596289038658, - 0.04237477481365204, - 0.054725222289562225, - 0.0538550466299057, - -0.015155108645558357, - 0.02800930291414261, - 0.06236835569143295, - 0.02802305854856968, - -0.009396242909133434, - 0.004089821130037308, - -0.012259213253855705, - 0.04935428872704506, - -0.0016519725322723389, - 0.040427833795547485, - -0.025010839104652405, - 0.0007421821355819702, - 0.0003476180136203766, - 0.02041826955974102, - 0.016220219433307648, - -0.040934011340141296, - -0.050862230360507965, - -0.028849074617028236, - 0.07131238281726837, - 0.025313757359981537, - 0.020388789474964142, - 0.012514823116362095, - 0.021862730383872986, - 0.011575905606150627, - -0.06464927643537521, - -0.037729039788246155, - 0.014027376659214497, - -0.012412749230861664, - 0.038013506680727005, - 0.009691670536994934, - 0.007364816963672638, - -0.0003252946771681309, - 0.04953968524932861, - -0.019130192697048187, - 0.03827701136469841, - 0.018272604793310165, - -0.04982520267367363, - -0.0194728784263134, - 0.022449076175689697, - 0.018033284693956375, - 0.05674382671713829, - 0.005432464182376862, - 0.05533427372574806, - 0.0824822336435318, - -0.050678398460149765, - -0.01896451786160469, - 0.038239363580942154, - 0.0547531358897686, - -0.030329927802085876, - 0.10726689547300339, - -0.004390609450638294, - 0.036274608224630356, - 0.05998578295111656, - 0.005488622933626175, - -0.035031065344810486, - -0.012115872465074062, - 0.014282059855759144, - -0.019235748797655106, - 0.06082679331302643, - 0.01668960601091385, - -0.01851656287908554, - -0.04215440899133682, - 0.047648318111896515, - -0.023941755294799805, - -0.02541382610797882, - -0.005890370812267065, - 0.03238661214709282, - -0.032256510108709335, - 0.05578060448169708, - -0.05678391084074974, - 0.01750776544213295, - 0.05285665765404701, - -0.023921141400933266, - 0.00218186411075294, - 0.007912974804639816, - -0.05279063805937767, - 0.031054846942424774, - 0.011985421180725098, - 0.016678936779499054, - 0.08475092053413391, - -0.056048065423965454, - -0.09518636763095856, - -0.04432906210422516, - 0.018017835915088654, - -0.02686208114027977, - 0.07699866592884064, - 0.07470855861902237, - 0.03309299424290657, - 0.026293829083442688, - -0.005313487723469734, - 0.014934655278921127, - 0.014928527176380157, - -0.11858431994915009, - 0.0025797300040721893, - 0.018775252625346184, - 0.012170355767011642, - -0.018563110381364822, - 0.008147730492055416, - 0.0044998470693826675, - -0.031025545671582222, - -0.01478531863540411, - 0.02612193301320076, - 0.029462894424796104, - 0.047810621559619904, - -0.13897770643234253, - 0.009146193973720074, - -0.05225842818617821, - -0.052055828273296356, - 0.022394906729459763, - 0.0005108844488859177, - -0.006495494395494461, - 0.015602083876729012, - 0.02254321239888668, - -0.01711433008313179, - -0.03826015070080757, - -0.04095692187547684, - -0.015238618478178978, - 0.004249135032296181, - 0.006023623049259186, - 0.002120460383594036, - -0.012878527864813805, - 0.0017192941159009933, - 0.022670254111289978, - 0.0069946590811014175, - 0.013229338452219963, - 0.06178675591945648, - -0.02049620822072029, - 0.008565949276089668, - 0.04393836110830307, - 0.1151999831199646, - 0.037574078887701035, - -0.07984953373670578, - -0.07641103863716125, - 0.013078344985842705, - -0.050771456211805344, - 0.03375804424285889, - -0.009442889131605625, - 0.029631327837705612, - -0.006700159981846809, - 0.009019304066896439, - 0.039935238659381866, - -0.11725741624832153, - 0.0012909658253192902, - -0.02296554110944271, - -0.05315922945737839, - -0.003896240144968033, - -0.004889799281954765, - 0.049395281821489334, - 0.006247611716389656, - -0.031720440834760666, - -0.06393852829933167, - 0.020570116117596626, - 0.018650364130735397, - 0.018874062225222588, - 0.06854256242513657, - 0.03835316002368927, - -0.009198036044836044, - -0.002077037002891302, - -0.022908898070454597, - 0.034073200076818466, - 0.006593231111764908, - 0.044001415371894836, - 0.011244134046137333, - -0.012179341167211533, - -0.07697649300098419, - 0.04772772639989853, - 0.021452302113175392, - 0.048440106213092804, - -0.029465805739164352, - 0.017431490123271942, - 0.03159251809120178, - -0.019094113260507584, - 0.11066094040870667, - 0.03656743839383125, - -0.01628035679459572, - -0.012127243913710117, - -0.009914837777614594, - -0.03556737303733826, - 0.047875288873910904, - 0.03907151520252228, - -0.04478989169001579, - -0.017625361680984497, - 0.06298432499170303, - 0.038594506680965424, - 0.07337473332881927, - 0.0686052069067955, - 0.05127863958477974, - 0.030096881091594696 - ] - }, - "p244_116.wav": { - "name": "p244", - "embedding": [ - 0.026206303387880325, - 0.0870557427406311, - -0.031800564378499985, - 0.03391792252659798, - -0.046698667109012604, - 0.08534678816795349, - -0.16658273339271545, - 0.13364169001579285, - -0.03994257003068924, - 0.13041645288467407, - -0.042279601097106934, - 0.0682499036192894, - -0.04535885527729988, - -0.1648472249507904, - -0.0011063702404499054, - 0.06920823454856873, - -0.029199155047535896, - -0.05062545835971832, - -0.041224405169487, - -0.006878157611936331, - 0.00823267363011837, - 0.03437193110585213, - -0.01196223869919777, - -0.01792658120393753, - 0.04224570095539093, - 0.052962690591812134, - -0.01605040766298771, - 0.026313968002796173, - -0.02262882888317108, - -0.04536876082420349, - -0.006420617923140526, - 0.09725066274404526, - -0.05911702662706375, - -0.0040521943010389805, - 0.03993048146367073, - 0.0038983169943094254, - -0.0029922418761998415, - -0.07162532210350037, - 0.0008092247880995274, - -0.00086886843200773, - -0.0504748560488224, - 0.09489797055721283, - 0.05033232271671295, - 0.014569630846381187, - 0.013880239799618721, - 0.02584090270102024, - -0.002059028949588537, - -0.060770247131586075, - -0.10385298728942871, - 0.17202679812908173, - 0.06102000176906586, - -0.0003504775813780725, - -0.05936667323112488, - -0.06881854683160782, - 0.08519840985536575, - 0.021892044693231583, - -0.09799736738204956, - -0.09496836364269257, - 0.08372001349925995, - 0.16316553950309753, - -0.02758689969778061, - -0.03166946396231651, - 0.0193328894674778, - 0.12465889751911163, - 0.05687375366687775, - 0.07553974539041519, - 0.05244285985827446, - 0.12438154220581055, - 0.012407002970576286, - -0.012851450592279434, - 0.05765034630894661, - 0.03135097399353981, - 0.0207177996635437, - 0.005379687529057264, - 0.03346143662929535, - -0.027114737778902054, - -0.013732386752963066, - -0.009842348285019398, - -0.01835620030760765, - -0.03842465952038765, - 0.008297521620988846, - 0.03200364112854004, - 0.016961023211479187, - 0.061113446950912476, - -0.01410306990146637, - 0.02622094377875328, - 0.0455208346247673, - -0.03591391071677208, - 0.09161274135112762, - 0.010056025348603725, - 0.0018795325886458158, - 0.049939267337322235, - -0.08770015835762024, - -0.05661017447710037, - 0.049550555646419525, - 0.01573294587433338, - 0.008452299050986767, - 0.0465301051735878, - 0.01902879774570465, - -0.01893848180770874, - 0.13692250847816467, - 0.0063081649132072926, - -0.005656961817294359, - 0.02673012763261795, - -0.08552642166614532, - 0.15257230401039124, - 0.028820201754570007, - -0.009973833337426186, - 0.0537065714597702, - -0.05198920518159866, - 0.014364134520292282, - 0.045994147658348083, - -0.14206749200820923, - -0.0830812156200409, - 0.05460478365421295, - 0.0251338891685009, - -0.05105239525437355, - 0.1529836803674698, - 0.03480285778641701, - 0.026686403900384903, - 0.11159271001815796, - -0.11851374804973602, - -0.07005777955055237, - 0.009028308093547821, - 0.06546522676944733, - -0.06755473464727402, - 0.028424758464097977, - 0.08120614290237427, - -0.03927188739180565, - 0.030569370836019516, - 0.07677066326141357, - 0.020035814493894577, - 0.025743741542100906, - 0.004887916147708893, - -0.026523731648921967, - 0.04686063155531883, - -0.015688950195908546, - -0.008490651845932007, - 0.015294539742171764, - 0.018724041059613228, - 0.06374606490135193, - -0.029174381867051125, - -0.03510284423828125, - -0.1314167082309723, - -0.01545157190412283, - 0.024854429066181183, - 0.09983950108289719, - -0.027889424934983253, - 0.004549515899270773, - -0.04875047132372856, - -0.07016092538833618, - -0.007065870799124241, - -0.0117063969373703, - 0.10565370321273804, - 4.535890184342861e-05, - -0.015448075719177723, - 0.10956123471260071, - 0.03712017089128494, - 0.016568314284086227, - -0.05109051614999771, - -0.021917346864938736, - 0.01675349846482277, - 0.04576878249645233, - -0.06387738138437271, - -0.05400563403964043, - 0.0003287973813712597, - 0.04667960852384567, - -0.008596284314990044, - 0.06346990168094635, - 0.03464750200510025, - 0.046771030873060226, - 0.005699501372873783, - -0.053875576704740524, - 0.022539041936397552, - -0.04357587918639183, - -0.03636154532432556, - 0.011438531801104546, - 0.004058046266436577, - -0.07187315821647644, - 0.10332147777080536, - 0.028414800763130188, - 0.06598779559135437, - -0.025210976600646973, - -0.04689367115497589, - -0.06525686383247375, - 0.04820077866315842, - 0.04841648414731026, - -0.052594710141420364, - 0.019348938018083572, - 0.04825716093182564, - -0.019123604521155357, - 0.008446082472801208, - 0.07624737918376923, - 0.09311379492282867, - -0.02453649416565895, - -0.004148264415562153, - -0.0666135847568512, - 0.10110478103160858, - 0.07015637308359146, - -0.0842842161655426, - -0.04048370569944382, - -0.005877007730305195, - -0.06628985702991486, - 0.010554682463407516, - -0.04181568697094917, - 0.02767411433160305, - 0.019909244030714035, - -0.019710995256900787, - -0.10630884766578674, - -0.10019253939390182, - 0.056776415556669235, - -0.09683962166309357, - 0.007209221366792917, - -0.07556276023387909, - 0.045698381960392, - 0.09420475363731384, - 0.07326105237007141, - -0.028026890009641647, - -0.04498768597841263, - 0.049674808979034424, - -0.03841136395931244, - 0.041742339730262756, - 0.09235819429159164, - 0.047276757657527924, - -0.10901515185832977, - 0.014002731069922447, - -0.06860703974962234, - 0.053145959973335266, - -0.038949355483055115, - 0.1533702313899994, - 0.03870934993028641, - -0.039243437349796295, - -0.09733320772647858, - 0.016834599897265434, - -0.033303290605545044, - 0.05384053662419319, - -0.004111143760383129, - 0.06296724081039429, - 0.08997665345668793, - -0.01389042753726244, - 0.1130770742893219, - 0.042675409466028214, - -0.016742032021284103, - -0.052376970648765564, - -0.06528536975383759, - -0.049585774540901184, - 0.05759061127901077, - 0.0047167628072202206, - -0.10972248017787933, - -0.014114035293459892, - 0.05395267903804779, - 0.014432688243687153, - 0.07244445383548737, - 0.1318526566028595, - 0.07724472880363464, - -0.11529317498207092 - ] - }, - "p244_216.wav": { - "name": "p244", - "embedding": [ - 0.005050513427704573, - 0.03837194666266441, - 0.005418553948402405, - 0.055746566504240036, - -0.050176482647657394, - -0.014155305922031403, - -0.07702336460351944, - 0.07438337802886963, - 0.008550649508833885, - 0.0816316157579422, - -0.05169358104467392, - 0.10954662412405014, - -0.03955812007188797, - -0.13056251406669617, - 0.004008145071566105, - 0.02883581444621086, - -0.014740677550435066, - 0.0015757757937535644, - 0.0018871304346248507, - -0.08889325708150864, - 0.03142702579498291, - 0.041287243366241455, - 0.10917645692825317, - -0.04542539641261101, - -0.010929431766271591, - 0.08688090741634369, - 0.019439389929175377, - 0.038496531546115875, - 0.006717031821608543, - -0.06696125864982605, - -0.017160862684249878, - 0.046849410980939865, - -0.033362679183483124, - -0.034051209688186646, - 0.017070777714252472, - -0.03092655912041664, - -0.017797861248254776, - 0.023451250046491623, - -0.005198194645345211, - 0.03770628944039345, - -0.06574392318725586, - 0.061571091413497925, - 0.004475114401429892, - -0.0355054996907711, - 0.06688785552978516, - -0.0336417555809021, - -0.04801703989505768, - 0.060571085661649704, - -0.09510727971792221, - 0.1043686494231224, - 0.08565127104520798, - -0.006477054208517075, - -0.05472811311483383, - -0.03031889721751213, - 0.06610922515392303, - -0.02342265658080578, - -0.10264177620410919, - -0.02378898113965988, - 0.03450561687350273, - 0.0723593682050705, - -0.019676538184285164, - -0.03702038154006004, - 0.02346557006239891, - 0.0585310272872448, - 0.03663717210292816, - 0.027803806588053703, - 0.08438434451818466, - 0.056078698486089706, - -0.03789341077208519, - 0.023495744913816452, - 0.013664104044437408, - 0.08113572746515274, - 0.047856103628873825, - 0.012783223763108253, - 0.007815196178853512, - -0.022541433572769165, - -0.0013378288131207228, - -0.024215053766965866, - -0.01741562969982624, - -0.033809274435043335, - -0.026879753917455673, - -0.04576704651117325, - 0.02017657272517681, - -0.023189907893538475, - -0.004947920795530081, - 0.02598796784877777, - 0.055610816925764084, - 0.0063562532886862755, - 0.038349419832229614, - 0.023640867322683334, - -0.025260746479034424, - 0.06014727056026459, - -0.053290169686079025, - -0.004640375263988972, - -0.028023306280374527, - -0.011708798818290234, - 0.048023246228694916, - 0.05608978867530823, - 0.03543567657470703, - -0.005607225000858307, - 0.08987357467412949, - 0.05642988905310631, - -0.002444575307890773, - 0.006879492662847042, - -0.08711465448141098, - 0.05988682433962822, - 0.12077635526657104, - -0.020973442122340202, - 0.05374884232878685, - -0.011692593805491924, - 0.05550151318311691, - 0.018598265945911407, - -0.056220751255750656, - -0.016013164073228836, - -0.056455619633197784, - 0.015841584652662277, - 0.014797080308198929, - 0.08970996737480164, - -0.011381561867892742, - 0.034239333122968674, - 0.12139938771724701, - -0.05488577485084534, - -0.05754374712705612, - -0.052062734961509705, - 0.027437981218099594, - -0.08927728980779648, - 0.03894751891493797, - 0.05005880817770958, - 0.0023588924668729305, - 0.033137399703264236, - 0.06590083986520767, - -0.0010675042867660522, - 0.015768742188811302, - 0.0010590851306915283, - -0.055256910622119904, - -0.010855491273105145, - -0.030183736234903336, - 0.007347285747528076, - 0.10568894445896149, - 0.02490714192390442, - 0.0780995711684227, - 0.012859819456934929, - 0.021017147228121758, - -0.08323003351688385, - 0.0134481992572546, - 0.02905542403459549, - -0.010488798841834068, - -0.0433945469558239, - -0.05058302730321884, - -0.024740807712078094, - -0.0648549348115921, - 0.04095859080553055, - -0.016681663691997528, - 0.04605083912611008, - -0.039368972182273865, - -0.017245754599571228, - 0.09159683436155319, - 0.018118780106306076, - -0.03911110758781433, - -0.03853283077478409, - -0.04979106783866882, - -0.013144823722541332, - 0.024024493992328644, - -0.14373517036437988, - -0.07408706098794937, - -0.07393872737884521, - 0.05194120854139328, - 0.03831130266189575, - 0.03749269247055054, - 0.08431114256381989, - -0.040897566825151443, - -0.015654532238841057, - -0.0046629635617136955, - 0.0029440242797136307, - -0.0365060493350029, - -0.07701775431632996, - -0.028207622468471527, - -0.07155455648899078, - -0.023582246154546738, - 0.05362280458211899, - -0.01084048580378294, - 0.05410457402467728, - -0.042400434613227844, - -0.06520429253578186, - -0.08439745754003525, - 0.017195893451571465, - 0.007366342004388571, - -0.011369919404387474, - 0.06681790947914124, - 0.07491111010313034, - -0.07899633049964905, - 0.08052435517311096, - 0.016803188249468803, - 0.08231620490550995, - -0.08814448118209839, - 0.016920704394578934, - -0.064263254404068, - 0.01689610630273819, - 0.13715393841266632, - -0.04987175390124321, - -0.07743959873914719, - -0.0721811056137085, - -0.07619887590408325, - 0.08832260221242905, - -0.019805550575256348, - -0.047732871025800705, - 0.033461734652519226, - 0.003329787403345108, - -0.051791250705718994, - -0.09765299409627914, - 0.09773095697164536, - -0.013897779397666454, - -0.013289999216794968, - -0.044936250895261765, - 0.015601358376443386, - -0.004568840377032757, - 0.03622458875179291, - -0.02787911705672741, - 0.034366000443696976, - 0.027753150090575218, - 0.0070157740265131, - 0.013481042347848415, - 0.06054134666919708, - 0.07139156758785248, - -0.01143829058855772, - -0.07067518681287766, - -0.06704524159431458, - 0.03562408685684204, - -0.00837002508342266, - 0.05289943143725395, - 0.0018538765143603086, - -0.015500355511903763, - -0.030728653073310852, - 0.05081811174750328, - -0.013012362644076347, - 0.04631124436855316, - 0.09559158980846405, - 0.060394078493118286, - -0.0059871673583984375, - -0.07505792379379272, - 0.100405752658844, - 0.02583060786128044, - -0.032470159232616425, - -0.047120265662670135, - 0.013522963039577007, - -0.04196019470691681, - -0.014827296137809753, - 0.02837984822690487, - -0.08888687938451767, - 0.024314193055033684, - -0.008817065507173538, - 0.005312844179570675, - 0.005563404411077499, - 0.0775805339217186, - 0.036363132297992706, - -0.04132216423749924 - ] - }, - "p244_326.wav": { - "name": "p244", - "embedding": [ - 0.05647645890712738, - 0.07903605699539185, - -0.004121718928217888, - 0.0019325204193592072, - -0.049081914126873016, - 0.038870666176080704, - -0.17135155200958252, - 0.15737147629261017, - -0.027951620519161224, - 0.13319209218025208, - -0.05079863220453262, - 0.11452760547399521, - 0.0022181151434779167, - -0.20568430423736572, - -0.011569373309612274, - 0.05091247707605362, - -0.03208211064338684, - -0.03403328359127045, - -0.02147858217358589, - -0.04425549507141113, - 0.04236111789941788, - 0.05011980980634689, - 0.02916918322443962, - 0.0011963311117142439, - 0.022949669510126114, - 0.06001188978552818, - 0.00044258800335228443, - 0.03015023097395897, - -0.0040679313242435455, - -0.0348568819463253, - -0.03410216420888901, - 0.09089004993438721, - -0.03857149928808212, - -0.013817212544381618, - 0.04207659885287285, - -0.03440301492810249, - -0.00778503343462944, - -0.0743178129196167, - -0.029665200039744377, - 0.013971026986837387, - -0.04077344760298729, - 0.0804327130317688, - 0.03363679349422455, - -0.004382612183690071, - 0.061580829322338104, - 0.006162175443023443, - -0.01832357794046402, - -0.04825931787490845, - -0.11529036611318588, - 0.151228129863739, - 0.08180355280637741, - 0.009078157134354115, - -0.07779133319854736, - -0.044410672038793564, - 0.10451439023017883, - -0.01526350062340498, - -0.09601058810949326, - -0.03452193737030029, - 0.06472700834274292, - 0.14778700470924377, - -0.031788721680641174, - -0.03927962854504585, - 0.054874569177627563, - 0.11718955636024475, - 0.0390625074505806, - 0.07301878184080124, - 0.09164915978908539, - 0.09407659620046616, - -0.039267901331186295, - 0.012233918532729149, - 0.03642059117555618, - 0.05842337757349014, - 0.0138986362144351, - -0.027262387797236443, - 0.02389431558549404, - 0.004721355624496937, - -0.020589269697666168, - -0.00980563648045063, - -0.014243396930396557, - -0.007784364279359579, - -0.00384308397769928, - 0.00722363218665123, - -0.003884421195834875, - 0.033975034952163696, - -0.04485015198588371, - 0.04347986727952957, - 0.031524911522865295, - 0.0033555100671947002, - 0.0774640440940857, - 0.024448400363326073, - 0.03461942449212074, - 0.06385176628828049, - -0.07538408041000366, - -0.07524696737527847, - 0.0495070219039917, - 0.009413221850991249, - 0.010432607494294643, - 0.07613398879766464, - 0.037244245409965515, - -0.031528618186712265, - 0.12774954736232758, - 0.0625736266374588, - -0.02060304768383503, - 0.0313524454832077, - -0.09481717646121979, - 0.1129370629787445, - 0.09118568897247314, - -0.031262971460819244, - 0.06947764754295349, - -0.05978141352534294, - 0.05725526809692383, - 0.047938309609889984, - -0.12872180342674255, - -0.0648694857954979, - 0.0469001941382885, - 0.0385744608938694, - -0.008684594184160233, - 0.14922146499156952, - 0.011114565655589104, - 0.04434294253587723, - 0.10491957515478134, - -0.07646625488996506, - -0.06805442273616791, - -0.019770199432969093, - 0.07203864306211472, - -0.08883814513683319, - 0.07083283364772797, - 0.07794561982154846, - -0.01631910912692547, - 0.016206717118620872, - 0.06730979681015015, - -0.011082170531153679, - 0.010066624730825424, - -0.014413034543395042, - -0.023694686591625214, - 0.02766743116080761, - -0.02585180476307869, - -0.005592920817434788, - 0.020905254408717155, - 0.031094839796423912, - 0.03175541013479233, - 0.001233138027600944, - -0.029830869287252426, - -0.12184932082891464, - 0.010508127510547638, - 0.01802799664437771, - 0.07637999951839447, - -0.015570408664643764, - -0.029947910457849503, - -0.04754545912146568, - -0.06413667649030685, - -0.016748948022723198, - -0.015571588650345802, - 0.06889452040195465, - -0.015651628375053406, - 0.011496755294501781, - 0.08591806143522263, - 0.04651890695095062, - 0.014679962769150734, - -0.01411455124616623, - -0.04216204211115837, - 0.01124353613704443, - 0.049257613718509674, - -0.07660109549760818, - -0.0668872818350792, - -0.03297725319862366, - 0.039453309029340744, - -0.0196552574634552, - 0.040541429072618484, - 0.041925571858882904, - 0.015136521309614182, - 0.020173950120806694, - -0.10130882263183594, - 0.04977213591337204, - -0.10537748038768768, - -0.06801893562078476, - -0.0028433194383978844, - 0.006322941742837429, - -0.023407211527228355, - 0.08147451281547546, - 0.016330068930983543, - 0.05409392714500427, - -0.030439695343375206, - -0.06312473863363266, - -0.0732867568731308, - 0.03937825188040733, - 0.08545289933681488, - -0.022739550098776817, - 0.04721982777118683, - 0.048184268176555634, - -0.029300507158041, - 0.046093251556158066, - 0.054711490869522095, - 0.0953032597899437, - -0.011328532360494137, - 0.02001500129699707, - -0.06193692237138748, - 0.08260598033666611, - 0.08038806170225143, - -0.0836341604590416, - -0.08670918643474579, - -0.024671923369169235, - -0.06764788180589676, - 0.03385632485151291, - -0.0028617912903428078, - 0.015496130101382732, - 0.029228515923023224, - 0.00102093699388206, - -0.10297652333974838, - -0.08681529015302658, - 0.06565834581851959, - -0.05890960618853569, - -7.892772555351257e-05, - -0.08781218528747559, - 0.052917592227458954, - 0.1129583939909935, - 0.020902689546346664, - -0.026498064398765564, - -0.05960073322057724, - 0.021304255351424217, - -0.008080968633294106, - 0.012233974412083626, - 0.04004616290330887, - 0.05252767726778984, - -0.11715561151504517, - 0.008802996948361397, - -0.081198550760746, - 0.0649220198392868, - -0.043660055845975876, - 0.1275567263364792, - 0.02994544804096222, - -0.04751164838671684, - -0.1005706787109375, - 0.037465181201696396, - 0.010169055312871933, - 0.04947688430547714, - 0.01565558835864067, - 0.0547947995364666, - 0.04639807343482971, - -0.07283086329698563, - 0.08394279330968857, - 0.04525873064994812, - -0.04548519104719162, - -0.07351969927549362, - -0.017760049551725388, - -0.023599453270435333, - 0.039142947643995285, - 0.0019877138547599316, - -0.08344948291778564, - -0.036214396357536316, - 0.02449866198003292, - -0.008161312900483608, - 0.0730876475572586, - 0.12449346482753754, - 0.04325075075030327, - -0.14535921812057495 - ] - }, - "p244_419.wav": { - "name": "p244", - "embedding": [ - 0.06083516404032707, - 0.11662372946739197, - -0.010951412841677666, - 0.0263645201921463, - -0.0674663782119751, - 0.07690811157226562, - -0.13070333003997803, - 0.13485047221183777, - -0.03932299092411995, - 0.1097576692700386, - -0.04920841380953789, - 0.13261674344539642, - -0.01585199125111103, - -0.17799976468086243, - -0.037467412650585175, - 0.07317551970481873, - -0.04008955508470535, - -0.0023596957325935364, - -0.030376046895980835, - -0.007567227352410555, - 0.010918810963630676, - 0.007402253802865744, - 0.06254812330007553, - -0.012820769101381302, - 0.05959368497133255, - 0.05872346833348274, - 0.02781469002366066, - 0.07284603267908096, - 0.03543016314506531, - -0.03931150212883949, - -0.04573261737823486, - 0.09794783592224121, - -0.043906599283218384, - 0.01869359239935875, - 0.07258836925029755, - -0.002346000401303172, - 0.006400824524462223, - -0.07021138072013855, - -0.008998343721032143, - 0.006079293321818113, - -0.011671755462884903, - 0.08647403120994568, - 0.053747326135635376, - -0.02551126480102539, - 0.02642642892897129, - 0.03566354513168335, - -0.00420792680233717, - -0.047181226313114166, - -0.11689212918281555, - 0.15690991282463074, - 0.03090955875813961, - 0.005013628862798214, - -0.0859299749135971, - -0.08353278785943985, - 0.10580959916114807, - -0.016131579875946045, - -0.10650736093521118, - -0.0424816831946373, - 0.07766459882259369, - 0.15099643170833588, - -0.02301827259361744, - -0.0205608569085598, - 0.0033584285993129015, - 0.13728797435760498, - 0.04627763107419014, - 0.10518422722816467, - 0.05480710417032242, - 0.1170174852013588, - -0.010952591896057129, - 0.04857170954346657, - 0.05849912017583847, - 0.07163064926862717, - 0.009242474101483822, - 0.013024954125285149, - 0.014280444011092186, - -0.026946572586894035, - -0.01150105893611908, - 0.022526027634739876, - -0.012215487658977509, - -0.025782596319913864, - -0.031099211424589157, - 0.015242155641317368, - 0.010931520722806454, - 0.012196353636682034, - -0.026906870305538177, - 0.07545508444309235, - 0.010470365174114704, - -0.0011720983311533928, - 0.06510636955499649, - 0.04995344579219818, - -0.009989118203520775, - 0.05351223051548004, - -0.053027283400297165, - -0.1062372475862503, - 0.009820534847676754, - -0.0058873724192380905, - 0.04402993246912956, - 0.0660303458571434, - 0.02297598123550415, - -0.00495131453499198, - 0.09830664098262787, - 0.09491933882236481, - -0.008639329113066196, - 0.03967539966106415, - -0.06774254143238068, - 0.1321856677532196, - 0.06997360289096832, - 0.0021841833367943764, - 0.06331697851419449, - -0.04716039076447487, - 0.07264742255210876, - 0.08234654366970062, - -0.13311713933944702, - -0.08550317585468292, - 0.019442839547991753, - 0.019908394664525986, - -0.019610024988651276, - 0.10110601782798767, - -0.01835044100880623, - 0.028228241950273514, - 0.09351484477519989, - -0.07935181260108948, - -0.06512089818716049, - -0.012635830789804459, - 0.037400390952825546, - -0.06374944746494293, - 0.027713490650057793, - 0.0608680322766304, - -0.03684769198298454, - -0.00977357104420662, - 0.08218265324831009, - 0.016834445297718048, - 0.015206827782094479, - 0.06292486190795898, - -0.046363115310668945, - 0.024377569556236267, - -0.015522792935371399, - 0.020801743492484093, - 0.06598635017871857, - 0.057184718549251556, - 0.04022335261106491, - 0.0031346192117780447, - -0.029957424849271774, - -0.11696556955575943, - 0.0007094676839187741, - 0.058494724333286285, - 0.08337339758872986, - -0.02051680162549019, - -0.03961547464132309, - -0.026886215433478355, - -0.0662282332777977, - 0.023662175983190536, - 0.020926430821418762, - 0.08748117089271545, - -0.026798447594046593, - -0.01203005202114582, - 0.09355267137289047, - 0.017791345715522766, - -0.004080181010067463, - -0.05586542934179306, - -0.02533883973956108, - 0.04271090030670166, - 0.03122773766517639, - -0.09068462252616882, - -0.06610505282878876, - 0.008217401802539825, - 0.01269354298710823, - -0.04585854336619377, - 0.033451635390520096, - 0.03700171411037445, - 0.0045049479231238365, - 0.05514219403266907, - -0.03782859444618225, - 0.0029868311248719692, - -0.10349141061306, - -0.050935838371515274, - -0.013891038484871387, - -0.007841261103749275, - -0.038354843854904175, - 0.08054852485656738, - 0.03754604607820511, - 0.07043623924255371, - 0.009298709221184254, - -0.04432382062077522, - -0.05677574872970581, - 0.06236385926604271, - 0.0651523619890213, - 0.01677655056118965, - 0.060372285544872284, - 0.04500025138258934, - -0.021298842504620552, - 0.06054048612713814, - 0.07007988542318344, - 0.06017880141735077, - -0.031840041279792786, - -0.009376992471516132, - -0.08214021474123001, - 0.07381021231412888, - 0.09016189724206924, - -0.12650716304779053, - -0.07929831743240356, - -0.03434703126549721, - -0.04745608940720558, - 0.020430151373147964, - -0.03529493510723114, - 0.007513072807341814, - 0.033408813178539276, - -0.010800879448652267, - -0.08751987665891647, - -0.1251140981912613, - 0.08608241379261017, - -0.08125439286231995, - 0.006926291156560183, - -0.0435793474316597, - 0.04188838601112366, - 0.08625149726867676, - 0.02780303545296192, - -0.018457993865013123, - -0.006067521870136261, - 0.052661895751953125, - -0.057967767119407654, - -0.017828509211540222, - 0.04688819870352745, - 0.02235068380832672, - -0.09449154883623123, - 0.03194766864180565, - -0.05927123874425888, - 0.05683661997318268, - -0.04885485768318176, - 0.1955493539571762, - 0.006093400530517101, - -0.05609149485826492, - -0.07668501883745193, - 0.018956057727336884, - -0.06362532824277878, - 0.03209010884165764, - 0.03578523173928261, - 0.06080184131860733, - 0.008849730715155602, - -0.06689353287220001, - 0.13770708441734314, - 0.02647826075553894, - -0.05171520262956619, - -0.07367865741252899, - -0.03191560506820679, - -0.03901107236742973, - 0.05744992196559906, - 0.012534620240330696, - -0.08805913478136063, - -0.02861597016453743, - 0.030343791469931602, - -0.02510196343064308, - 0.06250257790088654, - 0.1583583652973175, - 0.07638853788375854, - -0.08378622680902481 - ] - }, - "p244_340.wav": { - "name": "p244", - "embedding": [ - 0.06639134883880615, - 0.08019162714481354, - -0.0027581891044974327, - 0.004180664662271738, - -0.030272439122200012, - 0.048977553844451904, - -0.1245986744761467, - 0.1365082561969757, - 0.009521890431642532, - 0.10858672857284546, - -0.09621915221214294, - 0.09146901220083237, - -0.03681021183729172, - -0.13924184441566467, - -0.007102347910404205, - 0.042863357812166214, - -0.03392926603555679, - -0.022205114364624023, - -0.038932789117097855, - -0.008115699514746666, - 0.015234426595270634, - 0.007234741002321243, - 0.01680072769522667, - 0.008193664252758026, - 0.020926427096128464, - 0.04164732247591019, - -0.015389865264296532, - 0.0136415995657444, - 0.008672126568853855, - -0.005748657509684563, - 0.014228813350200653, - 0.0760236456990242, - -0.04467058554291725, - 0.03631991893053055, - 0.07519757002592087, - 0.015932073816657066, - -0.023643437772989273, - -0.060222700238227844, - -0.013411266729235649, - -0.0013590147718787193, - -0.040331389755010605, - 0.07436111569404602, - 0.030003592371940613, - -0.02226611040532589, - 0.03718755394220352, - 0.043628811836242676, - -0.010191012173891068, - -0.03746765851974487, - -0.09806478023529053, - 0.13987596333026886, - 0.039679620414972305, - 0.010337457992136478, - -0.10140713304281235, - -0.029269620776176453, - 0.06586898863315582, - -0.02568648010492325, - -0.08333948999643326, - -0.0408974215388298, - 0.07074789702892303, - 0.10099364072084427, - -0.020467672497034073, - -0.04077022895216942, - -0.004249453544616699, - 0.08768243342638016, - 0.039876539260149, - 0.05888636037707329, - 0.07596106827259064, - 0.12785689532756805, - -0.03381903097033501, - 0.0382893830537796, - 0.06609951704740524, - 0.03227633982896805, - 0.08410327136516571, - 0.004174867644906044, - 0.01832503266632557, - -0.019428031519055367, - -0.015371739864349365, - 0.007760817185044289, - -0.02981926128268242, - -0.022213822230696678, - -0.015078537166118622, - -0.009039074182510376, - 0.006208865903317928, - 0.04495428502559662, - -0.014489944092929363, - 0.0324760302901268, - 0.04820657894015312, - -0.005023290403187275, - 0.07005922496318817, - 0.04904730245471001, - -0.008960306644439697, - 0.04829821735620499, - -0.08658397197723389, - -0.09277187287807465, - 0.013114173896610737, - -0.0337505042552948, - 0.04326009750366211, - 0.04207330942153931, - 0.039886631071567535, - 0.007571110036224127, - 0.10040537267923355, - 0.03025638870894909, - -0.006090020295232534, - 0.011271117255091667, - -0.09047084301710129, - 0.12773479521274567, - 0.07634005695581436, - -0.03252033144235611, - 0.014107977971434593, - -0.04958254098892212, - 0.03959175571799278, - 0.06129565089941025, - -0.09590176492929459, - -0.03559233248233795, - 0.028872815892100334, - 0.016722846776247025, - 0.00038526952266693115, - 0.10121827572584152, - 0.004214008338749409, - 0.02676658146083355, - 0.09626264870166779, - -0.08186472207307816, - -0.03469136729836464, - 0.007905438542366028, - 0.017963996157050133, - -0.05624501407146454, - 0.04268525540828705, - 0.04294935241341591, - 0.019407492130994797, - 0.008044121786952019, - 0.08362578600645065, - 0.01402804534882307, - -0.0015495724510401487, - -0.02666974812746048, - 0.00781327486038208, - 0.04793216660618782, - -0.01652440056204796, - 0.00012958655133843422, - 0.03809443861246109, - 0.05035661906003952, - 0.041099101305007935, - 0.0405113659799099, - -0.02772117219865322, - -0.09168410301208496, - 0.00730043975636363, - 0.052525199949741364, - 0.06806518137454987, - -0.03680209070444107, - -0.023750513792037964, - -0.022470341995358467, - -0.04228659346699715, - 0.024037525057792664, - 0.0025971680879592896, - 0.04648330435156822, - 0.010084804147481918, - -0.012208247557282448, - 0.10476034134626389, - 0.012795300222933292, - 0.0004179964307695627, - -0.06421824544668198, - -0.024929407984018326, - 0.0037254979833960533, - 0.05674167722463608, - -0.10214373469352722, - -0.061027493327856064, - -0.008299363777041435, - 0.012122754007577896, - -0.019059723243117332, - 0.03881477564573288, - 0.05121390521526337, - -0.007847309112548828, - 0.014536220580339432, - -0.054082807153463364, - 0.008495871908962727, - -0.09904608130455017, - -0.08127027004957199, - 0.013614809140563011, - -0.015359293669462204, - 0.00932619720697403, - 0.06560306251049042, - -0.00076671177521348, - 0.051303550601005554, - -0.02514202520251274, - -0.0811050534248352, - -0.05205173045396805, - 0.0779341459274292, - 0.04712040349841118, - -0.03177156671881676, - 0.040250204503536224, - 0.05301342159509659, - -0.030997931957244873, - 0.02893413044512272, - 0.05376358702778816, - 0.10341478139162064, - -0.0588308721780777, - 0.01917843706905842, - -0.055761415511369705, - 0.08098762482404709, - 0.07878062129020691, - -0.07567794620990753, - -0.08167435228824615, - -0.036413874477148056, - -0.020301852375268936, - 0.005011129193007946, - -0.03511064499616623, - -0.007393251173198223, - 0.02708134427666664, - -0.027660030871629715, - -0.06989926844835281, - -0.08587639778852463, - 0.04238252341747284, - -0.05383865535259247, - 0.020441412925720215, - -0.07664134353399277, - 0.0404881127178669, - 0.0507473461329937, - 0.012512242421507835, - -0.03588709980249405, - 0.014069817960262299, - 0.013960480690002441, - -0.035563401877880096, - -0.04448779299855232, - 0.01059906929731369, - 0.026837708428502083, - -0.07180899381637573, - -0.025497715920209885, - -0.045538775622844696, - 0.060949455946683884, - -0.032372038811445236, - 0.13015858829021454, - -0.005669048521667719, - -0.04213802143931389, - -0.04043497517704964, - -0.02032424882054329, - -0.02200600691139698, - 0.0392804890871048, - 0.03568727523088455, - 0.040386863052845, - 0.02337987907230854, - -0.03212041035294533, - 0.11466336995363235, - 0.03853045403957367, - -0.027079515159130096, - -0.0475112609565258, - -0.04738258570432663, - -0.04195820912718773, - 0.0007492341101169586, - -0.0158979631960392, - -0.07680543512105942, - 0.014782892540097237, - 0.004984106868505478, - -0.01322584692388773, - 0.033086612820625305, - 0.11723743379116058, - 0.07080477476119995, - -0.0995333269238472 - ] - }, - "p244_239.wav": { - "name": "p244", - "embedding": [ - 0.07127400487661362, - 0.019093776121735573, - 0.01414394099265337, - -0.011523932218551636, - -0.013843409717082977, - 0.0429999902844429, - -0.11181488633155823, - 0.09210527688264847, - -0.051988907158374786, - 0.06096595153212547, - -0.08969350904226303, - 0.08204600214958191, - 0.019030727446079254, - -0.12784619629383087, - -0.06960482895374298, - 0.026802966371178627, - -0.022742750123143196, - -0.0012724511325359344, - -0.05044564977288246, - -0.024079613387584686, - 0.022867467254400253, - 0.059336770325899124, - 0.03110773302614689, - -0.01116505078971386, - 0.008191319182515144, - 0.05949847400188446, - 0.027810193598270416, - 0.043228629976511, - 0.0029876260086894035, - -0.005984343588352203, - 0.0005563944578170776, - 0.09297096729278564, - -0.024394700303673744, - -0.02786426432430744, - 0.03871412202715874, - -0.0035634443629533052, - 0.027407187968492508, - -0.09005075693130493, - -0.02802146226167679, - 0.024221867322921753, - -0.058861080557107925, - 0.06764927506446838, - 0.06804198026657104, - 0.017803382128477097, - 0.015552683733403683, - 0.012702573090791702, - 0.004298015497624874, - -0.06711240112781525, - -0.10869817435741425, - 0.16304926574230194, - 0.0069725047796964645, - 0.03469327092170715, - -0.10918616503477097, - -0.004171609878540039, - 0.0829123854637146, - -0.007965498603880405, - -0.03523474186658859, - -0.031712256371974945, - 0.03830372542142868, - 0.14346832036972046, - 0.01051875576376915, - -0.0437149703502655, - 0.04311894625425339, - 0.08204641193151474, - 0.014975320547819138, - 0.020011013373732567, - 0.1371983289718628, - 0.08168377727270126, - 5.484931170940399e-05, - 0.03883256018161774, - 0.03779157996177673, - 0.04149949178099632, - 0.016846805810928345, - -0.036675140261650085, - 0.03393048048019409, - -0.007770964875817299, - -0.036692384630441666, - 0.011459278874099255, - -0.03477047011256218, - -0.03154977783560753, - 0.015536344610154629, - 0.016264664009213448, - 0.021259237080812454, - 0.044192470610141754, - -0.07296409457921982, - 0.05625876039266586, - -0.004139753058552742, - 0.0060454062186181545, - 0.0600721500813961, - 0.05596785992383957, - 0.01783670112490654, - -0.0015761107206344604, - -0.030506260693073273, - -0.09027876704931259, - -0.004364637657999992, - 0.007507472764700651, - 0.027169086039066315, - 0.03355260565876961, - 0.02715018205344677, - -0.03729039430618286, - 0.08606458455324173, - -0.007123356685042381, - 0.004398429300636053, - -0.01685267686843872, - -0.06783889979124069, - 0.07272452861070633, - 0.11239971965551376, - -0.004071911796927452, - 0.022723225876688957, - -0.047756996005773544, - 0.012102460488677025, - 0.0588613897562027, - -0.0905846357345581, - -0.05410899221897125, - 0.045872077345848083, - 0.03321833163499832, - 0.06676512211561203, - 0.11658039689064026, - -0.008802798576653004, - 0.02088093012571335, - 0.04114298149943352, - -0.06236909329891205, - -0.026366010308265686, - 0.0023633111268281937, - 0.008877340704202652, - -0.012683948501944542, - 0.02095046080648899, - 0.02316000498831272, - 0.034441880881786346, - -0.05924255773425102, - 0.06334992498159409, - -0.004052160307765007, - 0.002737640403211117, - -0.04595591500401497, - 0.027514228597283363, - 0.07666558772325516, - 0.00889552477747202, - -0.025774721056222916, - 0.038250602781772614, - 0.07810305058956146, - 0.007095523178577423, - 0.04939836636185646, - -0.06631563603878021, - -0.10145246982574463, - -0.029270604252815247, - 0.03936555236577988, - 0.04891711845993996, - -0.027486711740493774, - -0.053716253489255905, - -0.07629136741161346, - 0.005359183996915817, - -0.01069799717515707, - 0.007228119298815727, - 0.05622076243162155, - 0.044690702110528946, - -0.012043043971061707, - 0.07024528086185455, - -0.03508200868964195, - 0.027698000892996788, - -0.011489249765872955, - 0.010456315241754055, - 0.01987171545624733, - 0.025585021823644638, - 0.016467289999127388, - -0.07188097387552261, - 0.008071591146290302, - -0.001341152936220169, - -0.01675121672451496, - -0.005555272102355957, - 0.01658037304878235, - -0.018899204209446907, - -0.0030862707644701004, - -0.11138496547937393, - 0.033861398696899414, - -0.10947717726230621, - -0.002798810601234436, - 0.056818753480911255, - -0.021806513890624046, - -0.013877428136765957, - 0.08745700120925903, - 0.03198591619729996, - 0.033464930951595306, - -0.015329709276556969, - -0.08588293939828873, - -0.005722682923078537, - 0.03773140162229538, - 0.06973476707935333, - -0.007243748754262924, - 0.010962575674057007, - -0.0011178664863109589, - 0.022056449204683304, - 0.058426182717084885, - 0.056818168610334396, - 0.032578226178884506, - -0.042369045317173004, - -0.06312602758407593, - 0.010349487885832787, - 0.10465070605278015, - -0.012116104364395142, - -0.06008843332529068, - -0.05170039087533951, - 0.019996510818600655, - -0.042729154229164124, - 0.014916767366230488, - 0.014680233784019947, - 0.03672060742974281, - 0.05459703505039215, - -0.013234852813184261, - -0.11752871423959732, - -0.03486056253314018, - 0.03271418809890747, - -0.07190996408462524, - -0.008984608575701714, - -0.0554688386619091, - 0.02521122246980667, - 0.11016703397035599, - -0.001111089251935482, - 0.02533961459994316, - -0.035138338804244995, - -0.029855214059352875, - -0.08012183010578156, - -0.057451412081718445, - -0.030463306233286858, - 0.028177790343761444, - -0.04955669492483139, - 0.005125638097524643, - -0.07297259569168091, - 0.058610301464796066, - -0.03174437955021858, - 0.07638567686080933, - 0.02632550150156021, - -0.06413320451974869, - -0.08980400860309601, - 0.0011020172387361526, - -0.016635259613394737, - 0.05730810388922691, - 0.0527595616877079, - 0.012529173865914345, - 0.017594855278730392, - -0.07702326774597168, - 0.08198077231645584, - 0.06108960509300232, - -0.06026972830295563, - -0.07305431365966797, - -0.01985214650630951, - 0.012401393614709377, - 0.028201133012771606, - -0.0014108233153820038, - 0.0041879042983055115, - 0.0209663063287735, - 0.026940345764160156, - -0.011645923368632793, - 0.06098298728466034, - 0.07873081415891647, - 0.036621641367673874, - -0.07907790690660477 - ] - }, - "p244_227.wav": { - "name": "p244", - "embedding": [ - 0.06037134677171707, - 0.08570896089076996, - -0.019702520221471786, - 0.022366613149642944, - -0.07531517744064331, - 0.07544559985399246, - -0.12379723787307739, - 0.14445246756076813, - -0.04340231418609619, - 0.14070409536361694, - -0.07161542028188705, - 0.1391201764345169, - -0.0004176038783043623, - -0.18650177121162415, - -0.0181155763566494, - 0.03891553357243538, - -0.03167455270886421, - -0.005392352119088173, - -0.053561482578516006, - -0.029414039105176926, - 0.04016154631972313, - 0.029714740812778473, - 0.035814691334962845, - -0.023127835243940353, - 0.02899923175573349, - 0.06704011559486389, - -0.010245775803923607, - 0.034223780035972595, - 0.012145204469561577, - -0.07225147634744644, - -0.061436425894498825, - 0.10887479782104492, - -0.06607499718666077, - 0.005742373876273632, - 0.0644531399011612, - -0.03770455718040466, - -0.02444148249924183, - -0.06412821263074875, - -0.02814031019806862, - 0.0045563047751784325, - -0.0350966602563858, - 0.06708647310733795, - 0.034414179623126984, - -0.023326324298977852, - 0.05697493627667427, - 0.015522249042987823, - -0.011106668971478939, - -0.04738255962729454, - -0.08933813869953156, - 0.1410139501094818, - 0.06501325964927673, - -0.015082523226737976, - -0.07161733508110046, - -0.0435834676027298, - 0.1068471223115921, - -0.017745455726981163, - -0.12056022882461548, - -0.030402742326259613, - 0.07582388818264008, - 0.14390461146831512, - -0.039118990302085876, - -0.028490055352449417, - 0.029065797105431557, - 0.08872385323047638, - 0.04287610575556755, - 0.10764962434768677, - 0.08694794028997421, - 0.10373049974441528, - -0.011214769445359707, - 0.056350044906139374, - 0.03859269618988037, - 0.06862278282642365, - 0.04696699604392052, - -0.031149927526712418, - 0.0350484699010849, - -0.008445067331194878, - -0.025201544165611267, - -0.015529055148363113, - -0.028943222016096115, - -0.0017155238892883062, - -0.003591958899050951, - 0.006237707566469908, - 0.040478311479091644, - 0.0066591971553862095, - -0.04383482038974762, - 0.07017461955547333, - 0.028217725455760956, - -0.005691654048860073, - 0.05217348039150238, - 0.03057531639933586, - -0.007049663458019495, - 0.055375583469867706, - -0.09654393792152405, - -0.10485202074050903, - 0.031433381140232086, - 0.0061244722455739975, - -0.0027027763426303864, - 0.0787169486284256, - 0.04314332455396652, - -0.012910754419863224, - 0.1122114434838295, - 0.06743180751800537, - -0.010364268906414509, - 0.044879235327243805, - -0.0835464745759964, - 0.1287938952445984, - 0.09315474331378937, - -0.019612416625022888, - 0.0631938949227333, - -0.07716260105371475, - 0.10375265777111053, - 0.057239778339862823, - -0.14380934834480286, - -0.060594379901885986, - 0.01816524751484394, - -0.013938801363110542, - -0.02389213815331459, - 0.1250602751970291, - -0.022790445014834404, - 0.038707759231328964, - 0.10168983042240143, - -0.08606225252151489, - -0.053587380796670914, - -0.019488949328660965, - 0.048445168882608414, - -0.085906982421875, - 0.0631561428308487, - 0.03454866260290146, - -0.018750105053186417, - 0.022732049226760864, - 0.08373497426509857, - -0.019818153232336044, - -0.012598307803273201, - 0.03540262207388878, - -0.039321206510066986, - 0.0159012321382761, - -0.02145484834909439, - 0.0023860055953264236, - 0.039884619414806366, - 0.03538494557142258, - 0.04765427112579346, - -0.020397935062646866, - -0.01177804172039032, - -0.08741892129182816, - 0.01649581827223301, - 0.02263766899704933, - 0.07652141153812408, - -0.002356482669711113, - -0.006948956288397312, - -0.042637523263692856, - -0.0931013897061348, - 0.013425029814243317, - -0.020280778408050537, - 0.0697951465845108, - -0.018908970057964325, - 0.024380605667829514, - 0.08535847067832947, - 0.05487808585166931, - 0.004974113777279854, - -0.0680510550737381, - -0.029298128560185432, - 0.017211752012372017, - 0.06064422428607941, - -0.0817132443189621, - -0.06587617844343185, - -0.01283592451363802, - 0.008852152153849602, - -0.03935614973306656, - 0.04913647100329399, - 0.04603557661175728, - 0.030678432434797287, - 0.04446561634540558, - -0.09261421114206314, - 0.010217836126685143, - -0.11238285899162292, - -0.05385879427194595, - -0.018265459686517715, - -0.0251108817756176, - -0.03299194574356079, - 0.07536908239126205, - 0.01846587099134922, - 0.04141339287161827, - -0.019112002104520798, - -0.05137632042169571, - -0.07393202185630798, - 0.05355052277445793, - 0.055620186030864716, - -0.01335783489048481, - 0.04116807132959366, - 0.0487552247941494, - -0.036438003182411194, - 0.058290984481573105, - 0.07508772611618042, - 0.08659902215003967, - -0.015032120048999786, - 0.022882547229528427, - -0.06408246606588364, - 0.10252620279788971, - 0.09582817554473877, - -0.08702091872692108, - -0.10179796069860458, - -0.02871435508131981, - -0.07349397987127304, - 0.03968850523233414, - -0.02762385830283165, - -0.019550630822777748, - 0.027073998004198074, - 0.009995599277317524, - -0.09180231392383575, - -0.08091013878583908, - 0.09065079689025879, - -0.07136523723602295, - -0.01066931989043951, - -0.08579641580581665, - 0.04663429409265518, - 0.10176980495452881, - 0.01736580766737461, - -0.04070871323347092, - -0.01898895390331745, - 0.055287159979343414, - -0.034810587763786316, - 0.01455785147845745, - 0.04177185893058777, - 0.04016496241092682, - -0.10704472661018372, - 0.01202833466231823, - -0.048827074468135834, - 0.04372423142194748, - -0.048256728798151016, - 0.161650151014328, - 0.0031913002021610737, - -0.04870273917913437, - -0.06659187376499176, - 0.07048682123422623, - -0.010164874605834484, - 0.03241579234600067, - 0.04637807607650757, - 0.07134668529033661, - 0.035752009600400925, - -0.08948419243097305, - 0.11096765100955963, - 0.016276035457849503, - -0.03500794246792793, - -0.06615947186946869, - -0.050319962203502655, - -0.047357331961393356, - 0.013476955704391003, - 0.022592905908823013, - -0.10324914753437042, - -0.020539050921797752, - 0.026094775646924973, - -0.013407817110419273, - 0.06635773181915283, - 0.13746339082717896, - 0.06524045765399933, - -0.10997216403484344 - ] - }, - "p244_160.wav": { - "name": "p244", - "embedding": [ - 0.026559598743915558, - 0.1116848886013031, - -0.016116315498948097, - 0.051389217376708984, - -0.05837224796414375, - 0.017432451248168945, - -0.022781696170568466, - 0.04519841820001602, - 0.0255142729729414, - 0.07495652139186859, - -0.04130738973617554, - 0.07807604968547821, - -0.0513303279876709, - -0.09406927973031998, - -0.007932877168059349, - 0.020030591636896133, - -0.006581081077456474, - 0.02560054138302803, - -0.023602964356541634, - -0.010282590985298157, - -0.050811320543289185, - -0.00525493361055851, - 0.002204073593020439, - -0.008879566565155983, - -0.040683846920728683, - 0.03986447677016258, - -0.031193401664495468, - 0.012891063466668129, - -0.019032025709748268, - -0.1048523336648941, - -0.010010089725255966, - 0.05138653144240379, - -0.028826337307691574, - -0.026896072551608086, - 0.007702079601585865, - -0.03902773559093475, - 0.014631949365139008, - -0.028339151293039322, - -0.054345883429050446, - -0.015875523909926414, - -0.0364132821559906, - 0.00630771741271019, - -0.01191217266023159, - -0.07795916497707367, - 0.016351427882909775, - -0.0012911586090922356, - -0.04717263951897621, - -0.006497536785900593, - -0.04528365656733513, - 0.10074131935834885, - 0.025250926613807678, - 0.05538181960582733, - -0.04879321902990341, - -0.04657234624028206, - 0.12063401937484741, - 0.014146438799798489, - 0.005084522068500519, - -0.01622661016881466, - -0.01819690130650997, - 0.05265335366129875, - 0.04058893769979477, - -0.0028991326689720154, - 0.05349726974964142, - 0.05099568888545036, - 0.008044037967920303, - 0.037750180810689926, - 0.058458127081394196, - 0.06295692175626755, - -0.022748533636331558, - 0.036461763083934784, - 0.04959450662136078, - 0.026321707293391228, - 0.04101115092635155, - 0.041950855404138565, - -0.022483622655272484, - 0.005180465057492256, - 0.003750205971300602, - 0.025160280987620354, - -0.01991969719529152, - -0.042616672813892365, - 0.0027666196692734957, - -0.004818296059966087, - 0.01092077512294054, - -0.04666807875037193, - -0.02696220576763153, - -0.04495837166905403, - 0.06898374855518341, - 0.005142414942383766, - 0.047648072242736816, - 0.004516623914241791, - 0.053117770701646805, - 0.0462389811873436, - -0.040140800178050995, - -0.05522499606013298, - 0.02683410979807377, - 0.003386897034943104, - 0.050053078681230545, - 0.029816962778568268, - 0.005843058228492737, - 0.004132304340600967, - 0.04547717049717903, - -0.01720576174557209, - 0.06789544224739075, - -0.01553838700056076, - -0.05814449489116669, - -0.031201064586639404, - 0.04844619706273079, - 0.018837835639715195, - 0.033266641199588776, - 0.0484301894903183, - 0.0575186088681221, - 0.09253117442131042, - -0.03851114958524704, - -0.057117901742458344, - -0.00688267033547163, - 0.03141169622540474, - -0.039591070264577866, - 0.08456496894359589, - -0.005943231750279665, - 0.03955782949924469, - 0.05599345266819, - -0.029588595032691956, - -0.01905791088938713, - 0.016566919162869453, - -0.008770550601184368, - -0.05794387310743332, - 0.058530230075120926, - 0.031134668737649918, - -0.03416421636939049, - -0.04878013953566551, - 0.052470795810222626, - -0.021651186048984528, - -0.018802674487233162, - -0.014108812436461449, - -0.003923185169696808, - -0.02743849717080593, - 0.037589505314826965, - -0.04890361428260803, - 0.025228170678019524, - 0.0692390725016594, - -0.0014297310262918472, - -0.05619741976261139, - 0.001806040178053081, - -0.0505979098379612, - 0.03501978516578674, - 0.03337126970291138, - -0.010297193191945553, - 0.05970190465450287, - -0.04140562564134598, - -0.04531535506248474, - -0.02139427326619625, - 0.051135823130607605, - -0.0441482849419117, - 0.0745561495423317, - 0.05846432223916054, - 0.02120148204267025, - 0.07236268371343613, - -0.02390219457447529, - -0.006168705876916647, - -0.01925705373287201, - -0.10689781606197357, - 0.016164032742381096, - 0.025825107470154762, - -0.020861327648162842, - -0.03136304020881653, - -0.02024385705590248, - -0.024434704333543777, - -0.0028209052979946136, - 0.022269051522016525, - 0.04599447548389435, - -0.008368403650820255, - 0.049845099449157715, - -0.0799744501709938, - -0.005105664953589439, - -0.012980857864022255, - -0.05203929543495178, - 0.03248864412307739, - -0.020502634346485138, - -0.008597271516919136, - 0.033127136528491974, - 0.02249806933104992, - -0.037907686084508896, - -0.06620056182146072, - -0.07399959862232208, - 0.007195569574832916, - 0.029491569846868515, - 0.016986342146992683, - 0.007693079765886068, - -0.013965637423098087, - 0.03907273709774017, - 0.051342613995075226, - 0.01718650758266449, - 0.007847528904676437, - 0.07077126950025558, - -0.04855210334062576, - -0.006412457674741745, - 0.030008159577846527, - 0.09268131852149963, - 0.048097409307956696, - -0.07212166488170624, - -0.10743173211812973, - -0.03378477692604065, - -0.05552264675498009, - 0.0688861832022667, - -0.030944589525461197, - 0.020307613536715508, - 0.020808249711990356, - -0.007350586354732513, - 0.0056816451251506805, - -0.1304166167974472, - 0.061731744557619095, - 0.03215894103050232, - -0.03690272569656372, - -0.007082510739564896, - 0.006484119221568108, - -0.0048206280916929245, - 0.05094684660434723, - -0.03103126958012581, - -0.0005900515243411064, - 0.016392599791288376, - -0.003268212080001831, - 0.007919812574982643, - 0.055651649832725525, - 0.0423818975687027, - 0.018856879323720932, - -0.013363394886255264, - -0.023763928562402725, - 0.03382803127169609, - 0.006204478442668915, - 0.0458715595304966, - -0.003102308139204979, - -0.013315879739820957, - -0.106963150203228, - 0.08787776529788971, - -0.03548796474933624, - 0.057874154299497604, - -0.010665055364370346, - 0.017566632479429245, - 0.05890590697526932, - -0.03642525151371956, - 0.07835541665554047, - 0.021359838545322418, - -0.0193508081138134, - -0.03404254838824272, - -0.013302493840456009, - -0.035955529659986496, - 0.035202693194150925, - 0.042525772005319595, - -0.01032334566116333, - -0.006047356873750687, - 0.03645598888397217, - 0.042794372886419296, - 0.08431451767683029, - 0.07425171136856079, - 0.055540118366479874, - 0.027588654309511185 - ] - }, - "p244_056.wav": { - "name": "p244", - "embedding": [ - 0.038328371942043304, - 0.06367671489715576, - -0.027478108182549477, - 0.053355857729911804, - -0.05999847501516342, - 0.08225319534540176, - -0.14614485204219818, - 0.1154351755976677, - -0.02209380455315113, - 0.12605777382850647, - -0.03030681237578392, - 0.09915250539779663, - -0.02087361179292202, - -0.18541213870048523, - -0.0023089428432285786, - 0.08155229687690735, - -0.007917769253253937, - -0.01564657874405384, - -0.05361519753932953, - -0.005513269454240799, - 0.005140484776347876, - 0.030321989208459854, - 0.03555504232645035, - -0.027472959831357002, - 0.04679049551486969, - 0.03893141448497772, - -0.01573146879673004, - 0.053847476840019226, - 0.004548178054392338, - -0.06983290612697601, - -0.025777123868465424, - 0.08817800879478455, - -0.05765452980995178, - 0.027357857674360275, - 0.05434811860322952, - 0.005703633651137352, - -0.004371881019324064, - -0.04762175679206848, - -0.004995710216462612, - 0.0020579956471920013, - -0.04185333102941513, - 0.09500788152217865, - 0.0452316515147686, - -0.01057750266045332, - 0.042994141578674316, - 0.014600496739149094, - -0.01879080757498741, - -0.04451435059309006, - -0.11859199404716492, - 0.14696958661079407, - 0.029264669865369797, - -0.01479214709252119, - -0.08258024603128433, - -0.07070136070251465, - 0.09047552943229675, - -0.02678380161523819, - -0.10557340085506439, - -0.08048279583454132, - 0.0840415358543396, - 0.15198521316051483, - -0.010024361312389374, - -0.01821364276111126, - 0.002189514460042119, - 0.11044515669345856, - 0.06453007459640503, - 0.0904700979590416, - 0.0374385267496109, - 0.1305156946182251, - 0.0015142466872930527, - 0.007919435389339924, - 0.020688869059085846, - 0.06220712512731552, - 0.015139110386371613, - 0.01849103532731533, - 0.011681335046887398, - -0.014993296936154366, - -0.007299354765564203, - -0.004437160678207874, - -0.027512013912200928, - -0.011841649189591408, - -0.01434422843158245, - 0.0023328829556703568, - 0.027927620336413383, - 0.014589717611670494, - -0.036527119576931, - 0.04561164975166321, - 0.047775376588106155, - -0.028939470648765564, - 0.05588280409574509, - 0.040653008967638016, - -0.027852699160575867, - 0.040589358657598495, - -0.0725463405251503, - -0.07555719465017319, - 0.006225344259291887, - 0.01126736681908369, - -0.004792221821844578, - 0.03662295639514923, - 0.0037884991616010666, - -0.007372761145234108, - 0.11891268193721771, - 0.03254926949739456, - -0.01723564602434635, - 0.04737314209342003, - -0.0680658295750618, - 0.13920092582702637, - 0.05126619338989258, - 0.026127591729164124, - 0.06337494403123856, - -0.056040287017822266, - 0.03214118629693985, - 0.06679442524909973, - -0.12897734344005585, - -0.06014731898903847, - 0.01990739442408085, - -0.0070129260420799255, - -0.0365622341632843, - 0.12884365022182465, - 0.012689088471233845, - 0.021939659491181374, - 0.1049538105726242, - -0.10255618393421173, - -0.05850471928715706, - 0.020309578627347946, - 0.04694744199514389, - -0.07767294347286224, - 0.0318603441119194, - 0.030406324192881584, - -0.025112081319093704, - 0.021169589832425117, - 0.08431406319141388, - 0.022275879979133606, - 0.034444332122802734, - 0.04291002079844475, - -0.03720298409461975, - 0.03455735370516777, - -0.02514510229229927, - 0.007068756967782974, - 0.07924430072307587, - 0.029403533786535263, - 0.09271825850009918, - -0.03362305089831352, - -0.031318217515945435, - -0.13683345913887024, - -0.011278930120170116, - 0.03819924220442772, - 0.10330018401145935, - -0.018379729241132736, - 0.00244515435770154, - -0.058840662240982056, - -0.10101937502622604, - 0.05231962352991104, - -0.014565413817763329, - 0.1185389906167984, - -0.009202133864164352, - -0.004613430239260197, - 0.10359296202659607, - 0.015815144404768944, - 0.0018608442042022943, - -0.06523013859987259, - -0.02134281024336815, - -0.01475444994866848, - 0.03678862005472183, - -0.07916846871376038, - -0.03944757580757141, - 0.016942711547017097, - 0.032575272023677826, - -0.03222767263650894, - 0.05971198529005051, - 0.04335341602563858, - 0.038127753883600235, - 0.034792717546224594, - -0.044339898973703384, - -0.021466948091983795, - -0.04879412055015564, - -0.04230405390262604, - -0.0034981335047632456, - -0.008795037865638733, - -0.0518103651702404, - 0.0975133627653122, - 0.04820462316274643, - 0.05235876888036728, - -0.018672702834010124, - -0.051297612488269806, - -0.10104307532310486, - 0.054405152797698975, - 0.005037857685238123, - -0.027715278789401054, - 0.03686122968792915, - 0.044303834438323975, - -0.05497080832719803, - 0.050464704632759094, - 0.08660118281841278, - 0.059202197939157486, - -0.026598041877150536, - 0.02196887880563736, - -0.07423491775989532, - 0.12015064060688019, - 0.12374447286128998, - -0.08341850340366364, - -0.07052579522132874, - -0.019805671647191048, - -0.07627588510513306, - 0.027864931151270866, - -0.05387416481971741, - -0.004778549540787935, - 0.04778347909450531, - -0.019103879109025, - -0.10759029537439346, - -0.1048310399055481, - 0.06568128615617752, - -0.0942007452249527, - 0.0012340828543528914, - -0.0469803661108017, - 0.029530808329582214, - 0.06226624175906181, - 0.05579405277967453, - -0.015114019624888897, - -0.017105918377637863, - 0.08538550138473511, - -0.0633305162191391, - 0.020461436361074448, - 0.09949508309364319, - 0.01492242980748415, - -0.09198328852653503, - -0.007643409073352814, - -0.05490371584892273, - 0.039846695959568024, - -0.022794198244810104, - 0.16857904195785522, - 0.022090043872594833, - -0.04276996850967407, - -0.05042840540409088, - 0.014080922119319439, - -0.0516873337328434, - 0.053385525941848755, - 0.01847190037369728, - 0.06780648976564407, - 0.06270890682935715, - -0.01408656220883131, - 0.13060125708580017, - 0.0571218840777874, - -0.03772319480776787, - -0.05590088292956352, - -0.06338523328304291, - -0.05283889174461365, - 0.05294118821620941, - 0.01910148561000824, - -0.12151288986206055, - -0.0011200555600225925, - 0.04946079105138779, - -0.020088355988264084, - 0.04812328517436981, - 0.14391952753067017, - 0.09139038622379303, - -0.08823636174201965 - ] - }, - "p244_078.wav": { - "name": "p244", - "embedding": [ - 0.055630218237638474, - 0.1067352369427681, - 0.002760309260338545, - 0.020574919879436493, - -0.038188669830560684, - 0.0941101610660553, - -0.09879721701145172, - 0.106082983314991, - -0.08724622428417206, - 0.16249629855155945, - -0.09837605059146881, - 0.12139571458101273, - -0.018660595640540123, - -0.15788023173809052, - -0.06801563501358032, - 0.04094967246055603, - -0.07233306765556335, - -0.012670725584030151, - -0.030045168474316597, - -0.008351616561412811, - 0.05629514530301094, - 0.0474000982940197, - 0.05469570681452751, - -0.006902947090566158, - 0.0279505904763937, - 0.05331993103027344, - 0.006443081423640251, - 0.05493545904755592, - 0.02974170260131359, - -0.11172091215848923, - -0.06248054280877113, - 0.12382711470127106, - -0.023882700130343437, - 0.016918832436203957, - 0.027727941051125526, - 0.0012149892281740904, - 0.03127792105078697, - -0.08427728712558746, - -0.02286512218415737, - -0.004720490891486406, - -0.016724610701203346, - 0.05678213760256767, - -0.008819813840091228, - -0.020762315019965172, - 0.016446148976683617, - -0.020085155963897705, - -0.03122781589627266, - -0.042162854224443436, - -0.08499240130186081, - 0.15938058495521545, - 0.0632585734128952, - 0.016745148226618767, - -0.06889068335294724, - -0.08602249622344971, - 0.11774913221597672, - -0.0037802455481141806, - -0.11549004167318344, - -0.0056350515224039555, - 0.05256785452365875, - 0.19134508073329926, - -0.01288327481597662, - -0.028405997902154922, - 0.041795507073402405, - 0.09828393906354904, - 0.012277642264962196, - 0.09504145383834839, - 0.08769989758729935, - 0.04927289858460426, - 0.031748756766319275, - 0.04910534247756004, - 0.034943435341119766, - 0.07930120080709457, - 0.038688480854034424, - -0.037833523005247116, - 0.025218788534402847, - -0.019915523007512093, - -0.05998706817626953, - 0.021445412188768387, - -0.020591862499713898, - -0.02663932926952839, - -0.0153141338378191, - -0.008027773350477219, - 0.0070179784670472145, - -0.004541077185422182, - -0.03750359266996384, - 0.036534544080495834, - -0.027762984856963158, - -0.024407943710684776, - 0.07256761938333511, - 0.029750952497124672, - 0.02671189419925213, - 0.04122646898031235, - -0.0477452278137207, - -0.11737048625946045, - 0.020861215889453888, - 0.031394343823194504, - 0.0016068917466327548, - 0.08763805776834488, - 0.05224749073386192, - -0.04364006966352463, - 0.10341253876686096, - 0.04862023517489433, - 0.019776152446866035, - 0.0049330126494169235, - -0.11249294877052307, - 0.09830232709646225, - 0.11616941541433334, - -0.014970390126109123, - 0.04488604515790939, - -0.026193594560027122, - 0.10363094508647919, - 0.09409166127443314, - -0.16502316296100616, - -0.08759430050849915, - 0.008928144350647926, - -0.011504007503390312, - 0.0340847410261631, - 0.07251366227865219, - -0.01425595860928297, - 0.01328407134860754, - 0.08133666962385178, - -0.0839223712682724, - -0.058623820543289185, - -0.048220425844192505, - 0.05373107269406319, - -0.07759253680706024, - 0.06660626828670502, - 0.027627989649772644, - -0.011569928377866745, - -0.02027498558163643, - 0.05959482118487358, - -0.04370884597301483, - -0.00953164603561163, - 0.03459625318646431, - -0.06948640942573547, - 0.016997747123241425, - -0.07292965054512024, - 0.001577579416334629, - 0.0519273616373539, - 0.04581351578235626, - 0.040306150913238525, - -0.005860194563865662, - -0.04170579835772514, - -0.07742556929588318, - 0.007583111058920622, - 0.042086441069841385, - 0.028847387060523033, - -0.0007596837822347879, - -0.036219775676727295, - -0.03948000818490982, - -0.046713266521692276, - 0.04621388390660286, - -0.015276334248483181, - 0.0842442438006401, - 0.014856208115816116, - 0.028215540573000908, - 0.08941014111042023, - 0.01986808329820633, - -0.019871439784765244, - -0.05743054300546646, - -0.02193480357527733, - 0.040594082325696945, - 0.04170772805809975, - -0.06216242536902428, - -0.06606973707675934, - 0.015140027739107609, - 0.003207495668902993, - -0.026440391317009926, - 0.029404249042272568, - 0.05135619267821312, - 0.017684534192085266, - 0.045513201504945755, - -0.06714869290590286, - 0.024346038699150085, - -0.11197793483734131, - -0.04892519861459732, - -0.016080524772405624, - -0.05219294875860214, - -0.009945571422576904, - 0.08835085481405258, - 0.027112849056720734, - -0.0024880480486899614, - -0.013584609143435955, - -0.07527217268943787, - -0.05660012736916542, - 0.06697279959917068, - 0.07509242743253708, - 0.037866540253162384, - 0.038694173097610474, - 0.046378105878829956, - 0.0064362529665231705, - 0.07628372311592102, - 0.05895989015698433, - 0.10219667106866837, - -0.009982917457818985, - -0.01127435453236103, - -0.07062623649835587, - 0.06987965106964111, - 0.08156045526266098, - -0.0872301384806633, - -0.11450573056936264, - -0.04452529549598694, - -0.0767161026597023, - 0.08281093835830688, - -0.015804573893547058, - -0.0020173536613583565, - 0.021954553201794624, - -0.03985925018787384, - -0.10587214678525925, - -0.0773933157324791, - 0.13195228576660156, - -0.03250063955783844, - -0.05269068107008934, - -0.07849941402673721, - 0.051247190684080124, - 0.07176458835601807, - 0.03178824111819267, - -0.020844925194978714, - 0.03256065398454666, - 0.04053771495819092, - -0.0851791724562645, - -0.020112428814172745, - 0.03442341834306717, - -0.010670512914657593, - -0.09209192544221878, - 0.03319999575614929, - -0.0941704660654068, - 0.07270291447639465, - -0.08972466737031937, - 0.16377297043800354, - -0.0324772484600544, - -0.06603601574897766, - -0.08975996822118759, - 0.08654289692640305, - -0.03915800899267197, - 0.03179012984037399, - 0.06263607740402222, - 0.049225758761167526, - 0.02835780568420887, - -0.1102827712893486, - 0.07609602808952332, - 0.023705288767814636, - -0.016242744401097298, - -0.07431349158287048, - -0.045934394001960754, - -0.03657393902540207, - 0.007536218035966158, - -0.01845720410346985, - -0.0711108073592186, - 0.010064364410936832, - 0.0036284979432821274, - 0.007677001412957907, - 0.08542200177907944, - 0.12095218151807785, - 0.04364725574851036, - -0.10538380593061447 - ] - }, - "p244_062.wav": { - "name": "p244", - "embedding": [ - 0.021794212982058525, - 0.07907729595899582, - -0.02841346152126789, - -0.015859708189964294, - -0.06424835324287415, - 0.06387975811958313, - -0.11144575476646423, - 0.12209363281726837, - -0.06114812195301056, - 0.13196012377738953, - -0.07439765334129333, - 0.09188421815633774, - -0.05453932285308838, - -0.14907890558242798, - -0.0390595979988575, - 0.026605786755681038, - -0.04232645779848099, - -0.021957313641905785, - -0.087961845099926, - -0.04156852141022682, - 0.03828243538737297, - 0.007931772619485855, - -0.02519194968044758, - -0.008817838504910469, - 0.017104677855968475, - 0.05094083026051521, - 0.0004894123412668705, - 0.031202970072627068, - 0.002435644157230854, - -0.011450054123997688, - -0.015073923394083977, - 0.09006287902593613, - -0.05852273106575012, - 0.02499542385339737, - 0.06425312906503677, - 0.012921303510665894, - -0.025711527094244957, - -0.042459890246391296, - 0.0018460024148225784, - 0.026552977040410042, - -0.0718337818980217, - 0.06952087581157684, - 0.02226673811674118, - -0.0020950566977262497, - 0.0315837636590004, - 0.0329069122672081, - 0.0022115297615528107, - -0.06436945497989655, - -0.08765766024589539, - 0.1378021538257599, - 0.06539446115493774, - -0.028171617537736893, - -0.06404684484004974, - -0.06096411123871803, - 0.12313007563352585, - -0.04145287349820137, - -0.1264445036649704, - -0.04790085554122925, - 0.06480594724416733, - 0.13758891820907593, - -0.06513374298810959, - -0.02956644631922245, - -0.0007622246630489826, - 0.10006635636091232, - 0.05754372850060463, - 0.0836755633354187, - 0.09292846918106079, - 0.11577112227678299, - -0.026309117674827576, - 0.0005640224553644657, - 0.07485707104206085, - 0.04527078941464424, - 0.0684117004275322, - -0.0035286853089928627, - 0.034221578389406204, - 0.010326101444661617, - 0.0006285249255597591, - 0.024298526346683502, - -0.0360148586332798, - -0.010448945686221123, - -0.02834143489599228, - 0.0246539618819952, - -0.009179140441119671, - 0.0022719306871294975, - -0.02260502427816391, - 0.06468090415000916, - 0.04094701632857323, - -0.015857215970754623, - 0.06263691931962967, - 0.06454430520534515, - -0.028945326805114746, - 0.0730544775724411, - -0.07714489102363586, - -0.081499382853508, - -0.004363709129393101, - -0.027288399636745453, - 0.02606525830924511, - 0.0558144748210907, - 0.025309979915618896, - 0.005748945754021406, - 0.09176786243915558, - 0.04580090567469597, - -0.001802746206521988, - 0.04070059210062027, - -0.0878300666809082, - 0.11983676254749298, - 0.07847346365451813, - -0.035752587020397186, - 0.014184404164552689, - -0.04365314543247223, - 0.07216737419366837, - 0.0494089275598526, - -0.09954509139060974, - -0.07211105525493622, - 0.046957388520240784, - 0.029278963804244995, - -0.02720465511083603, - 0.09144176542758942, - -0.024550890550017357, - -0.015109876170754433, - 0.12353020161390305, - -0.06131336838006973, - -0.03163054585456848, - -0.00985715538263321, - 0.03938358277082443, - -0.03256215155124664, - 0.02536025643348694, - 0.04210666939616203, - 0.013145418837666512, - 0.019744323566555977, - 0.11745338141918182, - 0.002565953880548477, - -0.0046151974238455296, - 0.004640447441488504, - -0.01160176657140255, - 0.03936464712023735, - 0.006603270769119263, - -0.020428884774446487, - 0.07607868313789368, - 0.08538609743118286, - 0.041804492473602295, - 0.014903525821864605, - -0.039826810359954834, - -0.08922447264194489, - 0.013417287729680538, - 0.05620255321264267, - 0.07754065096378326, - -0.03470059856772423, - 0.017016157507896423, - -0.0518205426633358, - -0.08239337801933289, - 0.0068237208761274815, - -0.009328922256827354, - 0.09967579692602158, - -0.049350544810295105, - -0.014919477514922619, - 0.11594163626432419, - 0.0040334854274988174, - -0.008862588554620743, - -0.05128038302063942, - -0.01910565420985222, - -0.006497434340417385, - 0.057690273970365524, - -0.06555988639593124, - -0.0783952847123146, - -0.002121283207088709, - 0.03951757401227951, - 0.0036794249899685383, - 0.05851081758737564, - 0.04518513381481171, - -0.0038719484582543373, - 0.036255642771720886, - -0.08122381567955017, - 0.01836446113884449, - -0.12228478491306305, - -0.028511982411146164, - -0.011650661937892437, - -0.05292245000600815, - 0.0061986492946743965, - 0.07129751890897751, - -0.017159277573227882, - 0.025866545736789703, - 0.01357787661254406, - -0.13572727143764496, - -0.06041032820940018, - 0.06825228780508041, - 0.07815296202898026, - -0.016630569472908974, - 0.04512578248977661, - 0.0904008150100708, - -0.03705696761608124, - 0.029913946986198425, - 0.0918593555688858, - 0.11844207346439362, - -0.031447071582078934, - 0.024922136217355728, - -0.056631527841091156, - 0.08434765040874481, - 0.03192727267742157, - -0.09711845219135284, - -0.0736217349767685, - -0.0392693355679512, - -0.01587245613336563, - 0.0004422329366207123, - -0.03323450684547424, - 0.022801723331212997, - 0.021854812279343605, - -0.002091458300128579, - -0.07529273629188538, - -0.0779525488615036, - 0.05402090400457382, - -0.07683536410331726, - 0.016498014330863953, - -0.06550651788711548, - 0.02364080771803856, - 0.09570302069187164, - 0.05481031537055969, - -0.009080225601792336, - 0.01197740901261568, - 0.05472739040851593, - -0.03618208318948746, - -0.010378731414675713, - 0.019115785136818886, - 0.007613572292029858, - -0.06855800747871399, - 0.0037479265592992306, - -0.07659077644348145, - 0.07853808999061584, - -0.03008956089615822, - 0.1388910412788391, - -0.008087326772511005, - -0.04959932342171669, - -0.07068032026290894, - 0.008142957463860512, - -0.03131917491555214, - 0.053351350128650665, - 0.04390658438205719, - 0.0793236494064331, - 0.027297910302877426, - -0.02160029113292694, - 0.15010517835617065, - 0.04446285963058472, - -0.04441145062446594, - -0.048087507486343384, - -0.05718188360333443, - -0.04617037624120712, - -0.010363179259002209, - 0.020320087671279907, - -0.06806303560733795, - 0.014382373541593552, - -0.003251938149333, - -0.051646891981363297, - 0.040618300437927246, - 0.1404690146446228, - 0.11432871222496033, - -0.12149269878864288 - ] - }, - "p244_254.wav": { - "name": "p244", - "embedding": [ - 0.02267284132540226, - 0.08950132131576538, - 0.001772264949977398, - -0.007002172060310841, - -0.043781403452157974, - 0.07006856054067612, - -0.12842966616153717, - 0.1217845007777214, - -0.06789173930883408, - 0.15788127481937408, - -0.07104265689849854, - 0.08979351818561554, - -0.024333367124199867, - -0.20156364142894745, - -0.03780628368258476, - 0.05626312643289566, - -0.06781038641929626, - -0.011971860192716122, - -0.0709281712770462, - -0.016078006476163864, - 0.054661765694618225, - 0.03927809000015259, - 0.014632712118327618, - -0.026649275794625282, - 0.01823336072266102, - 0.05039310082793236, - 0.019736649468541145, - 0.055123135447502136, - 0.025863392278552055, - -0.08084969967603683, - -0.03343670070171356, - 0.10604381561279297, - -0.031401269137859344, - 0.03500845283269882, - 0.06250065565109253, - -0.006048311945050955, - 0.017024002969264984, - -0.041905052959918976, - -0.01837330125272274, - 0.030735468491911888, - -0.039884667843580246, - 0.06538999080657959, - 0.030266832560300827, - 0.0221833698451519, - 0.057657185941934586, - 0.029406949877738953, - -0.02092100866138935, - -0.06744278967380524, - -0.07698270678520203, - 0.18445947766304016, - 0.08587168902158737, - -0.034685175865888596, - -0.03320767357945442, - -0.10137896984815598, - 0.10593029111623764, - -0.02107778750360012, - -0.15286000072956085, - -0.06655935198068619, - 0.10060349851846695, - 0.15369179844856262, - -0.020365405827760696, - -0.02726658619940281, - 0.013924109749495983, - 0.12650908529758453, - -0.012485582381486893, - 0.1056627556681633, - 0.043741028755903244, - 0.0696001797914505, - 0.013850214891135693, - 0.02924380451440811, - 0.03949317708611488, - 0.06465169042348862, - 0.010466444306075573, - -0.019939659163355827, - 0.048722002655267715, - 0.0037677884101867676, - -0.027086449787020683, - 0.024974798783659935, - -0.02324608340859413, - 0.01931760273873806, - -0.0223697442561388, - 0.02485673315823078, - -0.011648105457425117, - -0.01984689012169838, - -0.014308599755167961, - 0.04988565295934677, - -0.02361106500029564, - 0.014154995791614056, - 0.06518375873565674, - 0.036780040711164474, - 0.019127173349261284, - 0.04675702378153801, - -0.03646767511963844, - -0.10256878286600113, - -0.0009558231104165316, - 0.016554323956370354, - -0.016134019941091537, - 0.04751855880022049, - 0.01622507907450199, - -0.03139703348278999, - 0.11870048195123672, - 0.038625456392765045, - -0.017814885824918747, - 0.03130226954817772, - -0.11381719261407852, - 0.11681395024061203, - 0.07140105217695236, - 0.008671518415212631, - 0.04424026608467102, - -0.06266017258167267, - 0.09019289165735245, - 0.0737273171544075, - -0.14745956659317017, - -0.0777050107717514, - 0.03056967817246914, - 0.0023697202559560537, - -0.024548741057515144, - 0.11161129921674728, - -0.008922174572944641, - -0.010600641369819641, - 0.1171237975358963, - -0.0916517972946167, - -0.05656455084681511, - -0.024845119565725327, - 0.04811275377869606, - -0.08362922072410583, - 0.03778211399912834, - 0.038325369358062744, - -0.03550461307168007, - 0.021209044381976128, - 0.09921400249004364, - -0.02430238574743271, - 0.0280729029327631, - 0.014888405799865723, - -0.05205099657177925, - 0.023402482271194458, - -0.06809167563915253, - 0.014149989001452923, - 0.05656815320253372, - 0.06378643214702606, - 0.04633314907550812, - -0.004467300605028868, - -0.0804833471775055, - -0.10245928168296814, - -0.002957882359623909, - 0.013201483525335789, - 0.05815167352557182, - -0.00012937959400005639, - 0.0006998542230576277, - -0.039799969643354416, - -0.08054407685995102, - 0.010311481542885303, - -0.03324545919895172, - 0.10333181172609329, - -0.009456876665353775, - -0.002893076278269291, - 0.10194623470306396, - 0.015406377613544464, - -0.020343879237771034, - -0.07443255931138992, - -0.04750433564186096, - 0.008626674301922321, - 0.03097820095717907, - -0.08455244451761246, - -0.03965308889746666, - 0.023441532626748085, - 0.027392562478780746, - 0.014931093901395798, - 0.03306759521365166, - 0.04002920165657997, - 0.013606026768684387, - 0.05221894755959511, - -0.08975961804389954, - 0.01714259944856167, - -0.11647796630859375, - -0.06259243935346603, - -0.01730668731033802, - -0.037339240312576294, - -0.00779766496270895, - 0.09336385875940323, - -0.025324106216430664, - 0.012019439600408077, - 0.00288563990034163, - -0.08692871779203415, - -0.08279089629650116, - 0.0888817235827446, - 0.08361510932445526, - 0.006263306830078363, - 0.06132703647017479, - 0.0456986203789711, - -0.047159235924482346, - 0.06329408288002014, - 0.05485544353723526, - 0.10920080542564392, - -0.008428208529949188, - 0.033179763704538345, - -0.0736638531088829, - 0.07989007234573364, - 0.06301747262477875, - -0.09383939951658249, - -0.07224112749099731, - -0.017554650083184242, - -0.05685288831591606, - 0.050482284277677536, - -0.022692793980240822, - -0.009400018490850925, - 0.016151705756783485, - 0.005223544780164957, - -0.08291236311197281, - -0.05807602405548096, - 0.06960805505514145, - -0.06974229216575623, - -0.019771402701735497, - -0.04360705614089966, - 0.0423688106238842, - 0.10989385843276978, - 0.07894083857536316, - -0.01238461583852768, - -0.006537243723869324, - 0.07101429253816605, - -0.06634881347417831, - -0.01016603410243988, - 0.016114355996251106, - 0.005355095025151968, - -0.07101620733737946, - 0.02863890677690506, - -0.09414098411798477, - 0.03883692994713783, - -0.07073958963155746, - 0.14297594130039215, - -0.014428096823394299, - -0.07590172439813614, - -0.08147718757390976, - 0.04531485214829445, - -0.04757470265030861, - 0.023833908140659332, - 0.029940733686089516, - 0.05362982675433159, - 0.06394033133983612, - -0.05830772966146469, - 0.12204479426145554, - 0.027873637154698372, - -0.013711145147681236, - -0.04286234453320503, - -0.04472770169377327, - -0.041315849870443344, - 0.009365711361169815, - 0.011626794934272766, - -0.10894149541854858, - -0.009801985695958138, - 0.022848108783364296, - -0.027861744165420532, - 0.07467971742153168, - 0.1273859292268753, - 0.05719268321990967, - -0.1358308345079422 - ] - }, - "p244_271.wav": { - "name": "p244", - "embedding": [ - 0.057645201683044434, - 0.0522216260433197, - -0.016730522736907005, - 0.04023532569408417, - -0.04599135369062424, - 0.01421796903014183, - -0.14918893575668335, - 0.13732680678367615, - -0.006119074299931526, - 0.12446120381355286, - -0.06242717057466507, - 0.12070503830909729, - -0.008513492532074451, - -0.1773672103881836, - -0.0035244268365204334, - 0.05956079065799713, - -0.023398486897349358, - -0.04099506139755249, - -0.022574730217456818, - -0.04124479740858078, - 0.039195407181978226, - 0.06727701425552368, - 0.042618099600076675, - 0.00013865064829587936, - 0.03249586373567581, - 0.06079108268022537, - -0.011989271268248558, - 0.03230298310518265, - -0.0014632532838732004, - -0.0675337165594101, - -0.013594978488981724, - 0.07291044294834137, - -0.035699307918548584, - -0.00637893658131361, - 0.026181882247328758, - -0.009651538915932178, - 0.0035682141315191984, - -0.08618289977312088, - -0.05564896762371063, - 0.0007229861803352833, - -0.05842367559671402, - 0.0689009502530098, - 0.028169099241495132, - -0.046671390533447266, - 0.051316551864147186, - 0.010972786694765091, - -0.02745550125837326, - -0.0518372617661953, - -0.13427606225013733, - 0.16263169050216675, - 0.06281419843435287, - 0.0428144708275795, - -0.07910054922103882, - -0.07005368173122406, - 0.10406118631362915, - -0.01458258368074894, - -0.08127206563949585, - -0.02513802796602249, - 0.05648406594991684, - 0.17644548416137695, - -0.03262477368116379, - -0.047475408762693405, - 0.06382229924201965, - 0.09621010720729828, - 0.0806242972612381, - 0.045787516981363297, - 0.10362613201141357, - 0.10905762016773224, - -0.01700802892446518, - -0.005089037586003542, - 0.0375291146337986, - 0.10394600033760071, - 0.056084200739860535, - -0.0007612472400069237, - 0.0024307407438755035, - 0.03590548038482666, - -0.038377776741981506, - -0.039751481264829636, - -0.033238984644412994, - -0.016377098858356476, - 0.005728748627007008, - 0.008211709558963776, - 0.038420505821704865, - 0.041770704090595245, - -0.0430108867585659, - 0.05411100015044212, - 0.04587821662425995, - -0.032544154673814774, - 0.06098322942852974, - -0.008483397774398327, - -0.0010454041184857488, - 0.061437271535396576, - -0.09184131026268005, - -0.07204633951187134, - 0.020317886024713516, - 0.02035820670425892, - 0.009742151945829391, - 0.06786319613456726, - 0.05574149638414383, - -0.04042826592922211, - 0.14737583696842194, - 0.034708138555288315, - -0.009336868301033974, - 0.014033161103725433, - -0.07744282484054565, - 0.09101902693510056, - 0.103970468044281, - -0.027645952999591827, - 0.07163559645414352, - -0.05604071915149689, - 0.049251753836870193, - 0.05181020870804787, - -0.147222638130188, - -0.07301433384418488, - 0.034258291125297546, - 0.01853165216743946, - 0.004912801552563906, - 0.1522858738899231, - 0.012938303872942924, - 0.08543366193771362, - 0.11822488903999329, - -0.10506215691566467, - -0.05713406205177307, - -0.012322880327701569, - 0.07293687760829926, - -0.0871485024690628, - 0.0767558366060257, - 0.05422208458185196, - -0.020910784602165222, - 0.021453406661748886, - 0.04741090536117554, - -0.018971379846334457, - 0.001412482582964003, - -0.025089384987950325, - -0.04493342712521553, - 0.020168103277683258, - -0.03967045992612839, - -0.035306405276060104, - 0.045289862900972366, - 0.03356914967298508, - 0.04138214513659477, - -0.004025834612548351, - -0.04669450595974922, - -0.1451512575149536, - 0.018440131098031998, - 0.016490837559103966, - 0.0952434241771698, - -0.006791363470256329, - -0.029295364394783974, - -0.05709148943424225, - -0.061325572431087494, - 0.005849067587405443, - -0.01900847628712654, - 0.07369867712259293, - -0.015769490972161293, - 0.02874220535159111, - 0.08293113112449646, - 0.024048801511526108, - 0.005152805242687464, - -0.011926950886845589, - -0.03857610374689102, - -0.0041598966345191, - 0.04460723325610161, - -0.05170983448624611, - -0.08146385103464127, - -0.023161929100751877, - 0.0389215350151062, - -0.030733171850442886, - 0.05901958793401718, - 0.008873896673321724, - 0.029586229473352432, - 0.0038467594422399998, - -0.0661846473813057, - 0.003719617612659931, - -0.09510025382041931, - -0.07293621450662613, - 0.01977679505944252, - 0.008334549143910408, - -0.031437139958143234, - 0.0715172216296196, - 0.041669655591249466, - 0.07302892208099365, - -0.0416928306221962, - -0.0628652423620224, - -0.09711092710494995, - 0.02791094407439232, - 0.035985175520181656, - -0.014699403196573257, - 0.021091777831315994, - 0.05986753851175308, - -0.012188548222184181, - 0.05124721676111221, - 0.05844375491142273, - 0.07975989580154419, - 0.0036592292599380016, - 0.008387072943150997, - -0.054620251059532166, - 0.12821269035339355, - 0.1001145988702774, - -0.04460150748491287, - -0.07461026310920715, - -0.03888298571109772, - -0.10516244918107986, - 0.04814879223704338, - 0.012637008912861347, - 0.0189889557659626, - 0.0300883986055851, - -0.00805343221873045, - -0.12038549035787582, - -0.06939695030450821, - 0.06515085697174072, - -0.053924404084682465, - -0.01570354960858822, - -0.08085495978593826, - 0.03609049320220947, - 0.11877266317605972, - 0.03245849162340164, - 0.017538949847221375, - -0.04086510092020035, - 0.028179019689559937, - -0.04456644877791405, - 0.01193064171820879, - 0.08079929649829865, - 0.0485471673309803, - -0.1125328317284584, - -0.009575989097356796, - -0.06625263392925262, - 0.04212479665875435, - -0.023885540664196014, - 0.12376153469085693, - 0.029859911650419235, - -0.04269330948591232, - -0.10050852596759796, - 0.03531353920698166, - -0.0015867208130657673, - 0.07996632903814316, - 0.0156500656157732, - 0.06358222663402557, - 0.06748707592487335, - -0.08029983937740326, - 0.09023921191692352, - 0.05495235696434975, - -0.04432224482297897, - -0.06448254734277725, - -0.07485339045524597, - -0.02856951765716076, - 0.010917482897639275, - -0.012713112868368626, - -0.05862396955490112, - -0.022699255496263504, - 0.015809088945388794, - 0.0043995073065161705, - 0.05281329154968262, - 0.11953572928905487, - 0.04049871116876602, - -0.12376582622528076 - ] - }, - "p244_203.wav": { - "name": "p244", - "embedding": [ - 0.05320492386817932, - 0.047799136489629745, - 0.011436599306762218, - -0.008054366335272789, - -0.023845171555876732, - 0.06632715463638306, - -0.09804938733577728, - 0.09147490561008453, - 0.0045898850075900555, - 0.06327089667320251, - -0.06883655488491058, - 0.07314512133598328, - 0.0008444140548817813, - -0.14797191321849823, - 0.006608190946280956, - 0.04039071500301361, - -0.024048037827014923, - -0.004019101615995169, - -0.027416495606303215, - -0.0368630588054657, - 0.011207511648535728, - 0.04311623424291611, - 0.049417950212955475, - -0.024218495935201645, - 0.03420667350292206, - 0.06108112633228302, - -0.0023637874983251095, - 0.01371063943952322, - -0.022748593240976334, - -0.049748972058296204, - -0.030147580429911613, - 0.06466563045978546, - -0.04744365066289902, - -0.022828012704849243, - 0.03418948873877525, - -0.012585325166583061, - 0.028086630627512932, - -0.07548638433218002, - -0.02437128871679306, - 0.038551606237888336, - -0.059517960995435715, - 0.07637225836515427, - 0.04218212887644768, - -0.0038494295440614223, - 0.026847651228308678, - 0.009754986502230167, - -0.006152359768748283, - -0.03972157835960388, - -0.09933986514806747, - 0.15292508900165558, - 0.04567469656467438, - 0.01721138320863247, - -0.07361916452646255, - -0.027512740343809128, - 0.05169306695461273, - 0.00804288499057293, - -0.05235716700553894, - -0.010487522929906845, - 0.047256242483854294, - 0.08451905101537704, - 0.01697452738881111, - -0.02971804141998291, - 0.05106857419013977, - 0.07204754650592804, - 0.012445634230971336, - 0.025537747889757156, - 0.09421484917402267, - 0.09218649566173553, - -0.015106268227100372, - 0.005118653178215027, - 0.039460767060518265, - 0.04211316257715225, - 0.057070206850767136, - -0.014465108513832092, - 0.02861526608467102, - -0.016212793067097664, - -0.023425936698913574, - -0.0255250483751297, - -0.019385553896427155, - -0.02792409062385559, - 0.04901750013232231, - 0.008402163162827492, - 0.026795990765094757, - 0.04951261729001999, - -0.04182060807943344, - 0.03410498797893524, - 0.02267496846616268, - 0.05738399177789688, - 0.06915000081062317, - 0.0239560604095459, - 0.02781721204519272, - 0.03333546966314316, - -0.06266138702630997, - -0.05615337938070297, - 0.03887941688299179, - 0.03169476240873337, - 0.015654591843485832, - 0.04569553956389427, - 0.03876877576112747, - -0.0370047427713871, - 0.1081358790397644, - 0.008898444473743439, - -0.0037924880161881447, - -0.004547609481960535, - -0.059149276465177536, - 0.07554659247398376, - 0.09009566158056259, - -0.01851879060268402, - 0.05776584893465042, - -0.04132988676428795, - 0.04004490748047829, - 0.048314645886421204, - -0.09926323592662811, - -0.03564335033297539, - 0.011855682358145714, - 0.007635089568793774, - 0.03141538053750992, - 0.12859253585338593, - 0.009843738749623299, - 0.045731477439403534, - 0.06879091262817383, - -0.09167176485061646, - -0.037506163120269775, - 0.02302504889667034, - 0.017064429819583893, - -0.03809773176908493, - 0.01874214969575405, - 0.04098629206418991, - 0.010148350149393082, - -0.028210317716002464, - 0.036555882543325424, - 0.0032372898422181606, - 0.0311819426715374, - -0.04642470180988312, - 0.01508938055485487, - 0.018128652125597, - -0.013283981010317802, - -0.03218214213848114, - 0.027341201901435852, - 0.036524105817079544, - 0.010732549242675304, - 0.01738336682319641, - -0.04456997662782669, - -0.12605251371860504, - -0.008674852550029755, - 0.0010722950100898743, - 0.03957218676805496, - -0.02159672975540161, - -0.041124794632196426, - -0.05869763344526291, - -0.01643262431025505, - 0.0005537364631891251, - -0.01112966425716877, - 0.024158060550689697, - 0.05013992637395859, - -0.03911668807268143, - 0.0631740391254425, - 0.013196773827075958, - 0.005221178289502859, - -0.020275859162211418, - -0.05122780054807663, - 0.013813035562634468, - 0.030995093286037445, - -0.03232130408287048, - -0.07681521028280258, - -0.022009892389178276, - -0.027872085571289062, - -0.00691666966304183, - 0.030607599765062332, - 0.043206244707107544, - 0.0057489401660859585, - -0.03163832426071167, - -0.08502250164747238, - 0.015029589645564556, - -0.05445132777094841, - -0.06380262225866318, - 0.047905921936035156, - 0.014210125431418419, - -0.02075188420712948, - 0.09374929964542389, - 0.027967195957899094, - 0.04231597110629082, - -0.06153659150004387, - -0.022731691598892212, - -0.012186696752905846, - 0.03814654424786568, - 0.03575189411640167, - -0.00915575958788395, - 0.033084526658058167, - 0.020828580483794212, - -0.016791023313999176, - 0.0513828806579113, - 0.03743875026702881, - 0.052771344780921936, - -0.03646264970302582, - -0.0021127290092408657, - 0.0041466159746050835, - 0.09631451964378357, - 0.033778030425310135, - -0.03219907730817795, - -0.04204895719885826, - 0.0024648234248161316, - -0.054525911808013916, - 0.02790418267250061, - 0.00226418930105865, - 0.016059136018157005, - 0.02665839157998562, - -0.009727763012051582, - -0.07046971470117569, - -0.06503443419933319, - 0.03668923303484917, - -0.03864191100001335, - -0.019197283312678337, - -0.06485207378864288, - 0.05504381284117699, - 0.0919666439294815, - 0.013247310183942318, - -0.011289517395198345, - -0.012406980618834496, - -0.0014653801918029785, - -0.008494708687067032, - -0.009265957400202751, - 0.025266608223319054, - 0.05778200924396515, - -0.08423022925853729, - -0.005291566252708435, - -0.06840603053569794, - 0.041275035589933395, - -0.01362069882452488, - 0.07468315958976746, - 0.05122219771146774, - -0.02949412912130356, - -0.07358384877443314, - 0.02857038378715515, - 0.01028354186564684, - 0.03694801777601242, - 0.007761284708976746, - 0.016958113759756088, - 0.047975361347198486, - -0.0629507526755333, - 0.07172977924346924, - 0.034149229526519775, - -0.04743167385458946, - -0.05342298373579979, - -0.015073215588927269, - -0.012188675813376904, - 0.02875084988772869, - -0.013990381732583046, - -0.05342768132686615, - 0.009889054112136364, - 0.035517312586307526, - 0.04193177819252014, - 0.017920322716236115, - 0.08575962483882904, - 0.022102240473031998, - -0.07489384710788727 - ] - }, - "p244_152.wav": { - "name": "p244", - "embedding": [ - 0.06568039953708649, - 0.07050301134586334, - 0.015121426433324814, - 0.03542715683579445, - -0.007639400660991669, - 0.000384732149541378, - -0.11704064905643463, - 0.06026551127433777, - 0.06049394607543945, - 0.0890810489654541, - -0.11136486381292343, - 0.06300534307956696, - -0.03144402056932449, - -0.11153105646371841, - 0.011645074933767319, - 0.004853077232837677, - -0.021283747628331184, - -0.019176630303263664, - -0.014977691695094109, - -0.03683779016137123, - 0.031739816069602966, - 0.028890985995531082, - 0.051894064992666245, - -0.051564548164606094, - -0.01084556058049202, - 0.03681202605366707, - -0.009445001371204853, - -0.02565644681453705, - 0.006432653404772282, - -0.007784731686115265, - 0.05918963626027107, - 0.011419139802455902, - -0.00481805857270956, - 0.04123397544026375, - 0.0390835665166378, - 0.037033021450042725, - -0.023634470999240875, - -0.0033903345465660095, - -0.015534022822976112, - 0.05760395526885986, - -0.049196623265743256, - 0.07449229061603546, - 0.05927181988954544, - -0.06591930985450745, - 0.054184507578611374, - -0.0069709280505776405, - -0.02410479262471199, - 0.012685774825513363, - -0.0924324095249176, - 0.1296849548816681, - 0.032415907829999924, - 0.049245622009038925, - -0.06852807104587555, - 0.011016981676220894, - 0.06610535085201263, - -0.0039020217955112457, - -0.0638691857457161, - -0.03165901079773903, - 0.02272486872971058, - 0.0452842190861702, - -0.02567441388964653, - -0.05181419476866722, - -0.006496144458651543, - 0.03539993241429329, - 0.024695932865142822, - 0.03415378928184509, - 0.07912105321884155, - 0.10679687559604645, - -0.033390022814273834, - 0.01811676099896431, - 0.07058060169219971, - 0.046678733080625534, - 0.05361613631248474, - -0.010610930621623993, - 0.008627021685242653, - -0.033300288021564484, - -0.028978338465094566, - -0.008193012326955795, - 0.034127965569496155, - -0.022994857281446457, - -0.005106198135763407, - -0.054289668798446655, - 0.00948486290872097, - 0.03841902315616608, - -0.0521470308303833, - -0.02019362896680832, - 0.08034151792526245, - -0.01214711181819439, - 0.05394124984741211, - 0.06095908582210541, - 0.0067995465360581875, - 0.015406320802867413, - -0.045767344534397125, - -0.06889083981513977, - -0.017969008535146713, - -0.0266830213367939, - 0.06068703159689903, - 0.03987390547990799, - 0.0448191873729229, - 0.02920946106314659, - 0.06690320372581482, - 0.01593732088804245, - -0.02332831360399723, - -0.027879005298018456, - -0.07674582302570343, - 0.09171070903539658, - 0.09511812776327133, - -0.03631272912025452, - 0.00815240852534771, - -0.01907288283109665, - 0.011825218796730042, - 0.03335467353463173, - -0.03220153972506523, - -0.024864561855793, - 0.015264173969626427, - 0.06606915593147278, - 0.050294890999794006, - 0.10389401018619537, - 0.030422233045101166, - 0.014141361229121685, - 0.11506776511669159, - -0.05551592633128166, - -0.037076231092214584, - -0.019839921966195107, - 0.0027153100818395615, - -0.07247728109359741, - 0.06413573026657104, - 0.046325549483299255, - 0.012318139895796776, - 0.002652701223269105, - 0.04738154262304306, - 0.0047084493562579155, - 0.021685883402824402, - -0.0804065614938736, - 0.02493578940629959, - 0.06412941962480545, - -0.004564137198030949, - 0.020893307402729988, - 0.07060474157333374, - 0.004942305386066437, - 0.08554500341415405, - 0.07560121268033981, - -0.017686428502202034, - -0.09360737353563309, - 0.03937064856290817, - 0.04402584582567215, - 0.011577093973755836, - -0.049636200070381165, - -0.04219415411353111, - -0.03464174270629883, - -0.050765715539455414, - 0.07800976932048798, - -0.03237457573413849, - 0.05607454851269722, - 0.03024885803461075, - -0.025695523247122765, - 0.11722832918167114, - -0.015280376188457012, - 0.0021266797557473183, - -0.03746919333934784, - -0.06223081052303314, - -0.02988281100988388, - 0.028580032289028168, - -0.1587752401828766, - -0.05835855007171631, - -0.06271016597747803, - 0.018332980573177338, - 0.02145416848361492, - -0.009620556607842445, - 0.07113045454025269, - -0.030116654932498932, - 0.01783253811299801, - -0.0028718672692775726, - 0.005618592724204063, - -0.04031171277165413, - -0.10369075834751129, - -0.008024596609175205, - -0.03695688396692276, - 0.012727197259664536, - 0.07196111977100372, - -0.0263172946870327, - 0.023576980456709862, - -0.025948306545615196, - -0.07018887996673584, - -0.05338285118341446, - 0.040716271847486496, - 0.008761843666434288, - -0.03361821919679642, - 0.0235324427485466, - 0.053621962666511536, - -0.030684035271406174, - 0.02026905119419098, - -0.0004247799515724182, - 0.08760958909988403, - -0.07562284916639328, - 0.007745894603431225, - -0.027319807559251785, - 0.05717445909976959, - 0.0958368331193924, - -0.031041249632835388, - -0.056582316756248474, - -0.08980703353881836, - -0.01526031643152237, - -0.0061603933572769165, - -0.03898739069700241, - -0.02920238859951496, - -0.012367170304059982, - -0.017699792981147766, - -0.02984776720404625, - -0.09936054050922394, - -0.017922768369317055, - 0.003220178186893463, - 0.016064416617155075, - -0.08474445343017578, - 0.016015449538826942, - -0.03626994043588638, - 0.016837196424603462, - -0.0303809717297554, - 0.0441390797495842, - -0.02560199610888958, - -0.03497883677482605, - -0.03319574519991875, - 0.02868572250008583, - 0.05245283991098404, - 0.002589680254459381, - -0.06905016303062439, - -0.060260094702243805, - 0.05613602697849274, - -0.017674973234534264, - 0.05546843633055687, - 0.007831376045942307, - -0.024376019835472107, - 0.011616818606853485, - -0.0378858782351017, - -0.025648297742009163, - 0.017465008422732353, - 0.05622566118836403, - 0.01388239860534668, - 0.010057474486529827, - -0.02033090963959694, - 0.06108627840876579, - 0.054762739688158035, - 0.02007434144616127, - -0.04783332347869873, - -0.011268765665590763, - -0.04247445985674858, - 0.000974167138338089, - -0.003802998922765255, - -0.052601687610149384, - 0.04212568327784538, - -0.012764737010002136, - 0.035188090056180954, - 0.008754042908549309, - 0.07769253104925156, - 0.03181547671556473, - -0.05080236494541168 - ] - }, - "p244_168.wav": { - "name": "p244", - "embedding": [ - 0.056565508246421814, - 0.10569661855697632, - 0.01976991631090641, - 0.016167454421520233, - -0.01686066761612892, - 0.05318206548690796, - -0.09300638735294342, - 0.1022619903087616, - -0.0028305761516094208, - 0.11097203195095062, - -0.07566644251346588, - 0.07825879007577896, - -0.04601753130555153, - -0.13325703144073486, - -0.03003876470029354, - 0.037246305495500565, - -0.06474657356739044, - -0.014575082808732986, - -0.0264684297144413, - -0.021955300122499466, - 0.009934083558619022, - 0.018253004178404808, - 0.043765172362327576, - -0.01032787561416626, - 0.004264790564775467, - 0.0464717335999012, - -0.0137382997199893, - 0.01764575019478798, - 0.003650949103757739, - -0.05782259255647659, - -0.010250275954604149, - 0.06251734495162964, - -0.02665332891047001, - 0.02203410305082798, - 0.0396132618188858, - 0.0016502225771546364, - -0.0013912394642829895, - -0.0550323985517025, - -0.03445427119731903, - 0.02622019499540329, - -0.0410459041595459, - 0.06113039329648018, - 0.028976740315556526, - -0.04266804829239845, - 0.04016966372728348, - 0.009342637844383717, - -0.03406491130590439, - -0.02069433033466339, - -0.10190615803003311, - 0.1413787454366684, - 0.04822705313563347, - 0.012435030192136765, - -0.06034659966826439, - -0.04195810854434967, - 0.09271474927663803, - -0.012511786073446274, - -0.10435543954372406, - -0.01934734545648098, - 0.05127720907330513, - 0.1035361960530281, - -0.015034444630146027, - -0.034601837396621704, - -0.0006921999156475067, - 0.0784897431731224, - 0.04153509438037872, - 0.06304416060447693, - 0.07200072705745697, - 0.09118663519620895, - -0.022404808551073074, - 0.028127577155828476, - 0.05848971754312515, - 0.03265898674726486, - 0.05510114133358002, - -0.006718305870890617, - 0.021895799785852432, - -0.017620040103793144, - -0.0296504907310009, - -0.0004278969136066735, - -0.004838461987674236, - -0.03186143562197685, - 0.008121516555547714, - -0.011741980910301208, - 0.014575828798115253, - 0.017020730301737785, - -0.026703685522079468, - 0.022150270640850067, - 0.026279255747795105, - 0.02104608342051506, - 0.06673584133386612, - 0.04156454652547836, - 0.02037002332508564, - 0.07593825459480286, - -0.056258246302604675, - -0.08281802386045456, - 0.0035218074917793274, - -0.011316908523440361, - 0.03560544550418854, - 0.05660180002450943, - 0.03805754333734512, - -0.015298187732696533, - 0.09920457005500793, - 0.03190723434090614, - 0.006925049237906933, - -0.002623538486659527, - -0.09016817808151245, - 0.08034653961658478, - 0.07268591970205307, - -0.01996028982102871, - 0.02928842231631279, - -0.01607932150363922, - 0.08490611612796783, - 0.08069181442260742, - -0.10030349344015121, - -0.03755411505699158, - 0.01686638779938221, - 0.023562200367450714, - 0.011748241260647774, - 0.10431400686502457, - 0.0036321133375167847, - 0.025132248178124428, - 0.11550642549991608, - -0.0804922953248024, - -0.019314246252179146, - -0.00261731818318367, - 0.01315247267484665, - -0.06227680668234825, - 0.0479128398001194, - 0.029852773994207382, - -0.016977770254015923, - 0.003962523303925991, - 0.056579262018203735, - -0.003590494394302368, - -0.0027589770033955574, - -0.014792868867516518, - -0.029546651989221573, - 0.025381311774253845, - -0.029416430741548538, - 0.011119483038783073, - 0.04061873257160187, - 0.04402565211057663, - 0.02762262523174286, - 0.020840629935264587, - -0.04530724883079529, - -0.07301972806453705, - 0.022980893030762672, - 0.0374937430024147, - 0.03745894134044647, - -0.0025378642603754997, - -0.042062897235155106, - -0.02515600249171257, - -0.02632288634777069, - 0.053740113973617554, - -0.02566761150956154, - 0.061681587249040604, - 0.009704223833978176, - -0.011917075142264366, - 0.08598228543996811, - 0.024193791672587395, - -0.012578501366078854, - -0.05083724856376648, - -0.06380100548267365, - 0.004806314595043659, - 0.044742271304130554, - -0.11028078198432922, - -0.054466620087623596, - -0.019980769604444504, - 0.00043937284499406815, - -0.004930587485432625, - 0.023000026121735573, - 0.056260038167238235, - -0.007063616067171097, - 0.012684051878750324, - -0.042122963815927505, - 0.015917006880044937, - -0.07711641490459442, - -0.09213312715291977, - 0.005742879584431648, - -0.02615552581846714, - 0.009976689703762531, - 0.07130679488182068, - -0.013923478312790394, - 0.02293221279978752, - -0.03153935819864273, - -0.06742885708808899, - -0.031680211424827576, - 0.0642232894897461, - 0.031702347099781036, - 0.008542610332369804, - 0.03702723607420921, - 0.06184356287121773, - -0.026360029354691505, - 0.0495012141764164, - 0.01424497738480568, - 0.09329962730407715, - -0.05293044447898865, - 0.01893806643784046, - -0.03423337638378143, - 0.05290659889578819, - 0.07764897495508194, - -0.06535385549068451, - -0.09471289813518524, - -0.040083594620227814, - -0.047701042145490646, - 0.03219965100288391, - -0.026276051998138428, - -0.010520808398723602, - 0.01824675314128399, - -0.01838953047990799, - -0.07038309425115585, - -0.09503281116485596, - 0.061373695731163025, - -0.027713842689990997, - -0.007684936746954918, - -0.07138590514659882, - 0.037943996489048004, - 0.030346957966685295, - 0.04433427378535271, - -0.021969594061374664, - 0.03747117146849632, - 0.027651622891426086, - -0.02950470894575119, - -0.021597977727651596, - 0.031217336654663086, - 0.032784946262836456, - -0.049545299261808395, - -0.018668031319975853, - -0.06159907206892967, - 0.05239469185471535, - -0.03028920479118824, - 0.12433380633592606, - 0.007899793796241283, - -0.03463663160800934, - -0.043083272874355316, - 0.030646683648228645, - -0.031581319868564606, - 0.03180946037173271, - 0.03660577908158302, - 0.03586579114198685, - 0.02999577485024929, - -0.043787047266960144, - 0.0906069427728653, - 0.03280480206012726, - -0.015752756968140602, - -0.0313909612596035, - -0.01949360966682434, - -0.06354457139968872, - -0.01424131914973259, - -0.008922316133975983, - -0.07690262049436569, - 0.003482172265648842, - 0.007449437864124775, - 0.02683500200510025, - 0.03875287249684334, - 0.11064650118350983, - 0.03921329975128174, - -0.08053995668888092 - ] - }, - "p244_412.wav": { - "name": "p244", - "embedding": [ - 0.059551071375608444, - 0.09396977722644806, - -0.007790356408804655, - 0.03827323019504547, - -0.031122148036956787, - 0.08021914213895798, - -0.13160111010074615, - 0.1297227442264557, - -0.03387943655252457, - 0.13853919506072998, - -0.08293893188238144, - 0.11878636479377747, - -0.006550307851284742, - -0.1708064079284668, - -0.041420020163059235, - 0.04908297583460808, - -0.01511390134692192, - 0.010826004669070244, - -0.00890287570655346, - 0.010085998103022575, - 0.050186432898044586, - 0.0425027534365654, - 0.04095324128866196, - -0.025668812915682793, - 0.0361940935254097, - 0.036053795367479324, - 0.01619900017976761, - 0.06936417520046234, - 0.02931908331811428, - -0.06283420324325562, - -0.03523242473602295, - 0.13757073879241943, - -0.03425612673163414, - 0.03379429876804352, - 0.07027476280927658, - 0.014631631784141064, - -0.012448492459952831, - -0.07274185866117477, - -0.0018677401822060347, - -0.02096092514693737, - -0.025742243975400925, - 0.05728081986308098, - 0.02749268338084221, - -0.006675062235444784, - 0.04198485240340233, - 0.01832471787929535, - -0.017652049660682678, - -0.051068760454654694, - -0.09912580251693726, - 0.15159271657466888, - 0.03060276061296463, - 0.024431198835372925, - -0.08318814635276794, - -0.0815662294626236, - 0.09044089913368225, - -0.00455247750505805, - -0.09931713342666626, - -0.018587984144687653, - 0.07565685361623764, - 0.18303295969963074, - -0.010835006833076477, - -0.041080743074417114, - 0.021704111248254776, - 0.10754959285259247, - 0.03294294327497482, - 0.10348986834287643, - 0.08616535365581512, - 0.09886334836483002, - 0.029273122549057007, - 0.03710238263010979, - 0.020716063678264618, - 0.07193975150585175, - 0.0438961498439312, - -0.014550592750310898, - 0.016445836052298546, - 0.00466400571167469, - -0.03322482854127884, - 0.024070069193840027, - -0.03337256237864494, - -0.015817489475011826, - -0.005727203097194433, - 0.006391867529600859, - 0.029035791754722595, - 0.025645751506090164, - -0.04106895625591278, - 0.04555663466453552, - 0.0073151011019945145, - -0.016664739698171616, - 0.058821287006139755, - 0.02043408527970314, - 0.00013909365225117654, - 0.04111506789922714, - -0.07460179179906845, - -0.12922067940235138, - 0.019843820482492447, - 0.002329119248315692, - 0.014328515157103539, - 0.07003022730350494, - 0.03540678322315216, - -0.03142236918210983, - 0.10023465007543564, - 0.036998823285102844, - -0.0054785399697721004, - 0.03650575131177902, - -0.09243693202733994, - 0.10729318112134933, - 0.09154709428548813, - 0.00496859522536397, - 0.058631282299757004, - -0.07062047719955444, - 0.08093982934951782, - 0.07895738631486893, - -0.1539396047592163, - -0.07585584372282028, - 0.03915075212717056, - 0.02207566797733307, - 0.012164573185145855, - 0.11254385113716125, - 0.0005174963735044003, - 0.024131037294864655, - 0.09192382544279099, - -0.10582148283720016, - -0.06048337742686272, - -0.035661470144987106, - 0.03839374706149101, - -0.0737416073679924, - 0.054281871765851974, - 0.02367679588496685, - -0.01686018332839012, - -0.022690005600452423, - 0.06175989657640457, - -0.00546395406126976, - 0.01441828440874815, - 0.017339123412966728, - -0.05324285849928856, - 0.02747204154729843, - -0.052139945328235626, - 0.00864584930241108, - 0.03275572136044502, - 0.04912107437849045, - 0.043823085725307465, - 0.012414149008691311, - -0.05398445576429367, - -0.11230254173278809, - -0.016785483807325363, - 0.05911783128976822, - 0.061964720487594604, - -0.020540151745080948, - -0.04015234857797623, - -0.03434581682085991, - -0.05891314148902893, - 0.05093757063150406, - -0.01295282319188118, - 0.06875548511743546, - 0.013460883870720863, - 0.00600619800388813, - 0.08526816964149475, - -0.0013410001993179321, - -0.000845342583488673, - -0.057320207357406616, - -0.03240108862519264, - 0.02450636401772499, - 0.03732983022928238, - -0.08661596477031708, - -0.05807797238230705, - 0.006895546801388264, - 0.0024755909107625484, - -0.047786809504032135, - 0.01871403679251671, - 0.03775128722190857, - 0.022860705852508545, - 0.05361276865005493, - -0.03679286688566208, - -0.026529472321271896, - -0.13456949591636658, - -0.06961002200841904, - -0.0020515008363872766, - -0.0010099774226546288, - -0.008797619491815567, - 0.08168214559555054, - 0.03459955006837845, - 0.043608199805021286, - -0.008597624488174915, - -0.04494110494852066, - -0.06701546907424927, - 0.06338801234960556, - 0.06272050738334656, - 0.030632514506578445, - 0.0563620924949646, - 0.019242025911808014, - -0.017249440774321556, - 0.06670928746461868, - 0.0789564922451973, - 0.08576953411102295, - -0.0011255552526563406, - -0.00410756841301918, - -0.09396969527006149, - 0.1029408797621727, - 0.11418573558330536, - -0.07202354073524475, - -0.11462907493114471, - -0.02302691899240017, - -0.07886506617069244, - 0.045495133846998215, - -0.033001236617565155, - -0.004796125926077366, - 0.02436123788356781, - -0.03048814833164215, - -0.10970458388328552, - -0.08865918964147568, - 0.08036887645721436, - -0.060385968536138535, - -0.021434027701616287, - -0.07117162644863129, - 0.054617077112197876, - 0.08526913821697235, - 0.012556545436382294, - -0.019951485097408295, - -0.012037888169288635, - 0.05951451510190964, - -0.09091498702764511, - -0.025194905698299408, - 0.020978357642889023, - 0.004785995930433273, - -0.10062437504529953, - 0.033920541405677795, - -0.05357489734888077, - 0.05097579583525658, - -0.07629111409187317, - 0.15890458226203918, - -0.015446837991476059, - -0.06800419092178345, - -0.0695822462439537, - 0.044950924813747406, - -0.017370080575346947, - 0.02149895951151848, - 0.03292621672153473, - 0.05680186673998833, - 0.01768268272280693, - -0.1016058549284935, - 0.10827549546957016, - 0.020568612962961197, - -0.02066868543624878, - -0.07249072939157486, - -0.06639677286148071, - -0.04306124895811081, - 0.021274492144584656, - -0.01809285394847393, - -0.07401397079229355, - -0.016246456652879715, - 0.02581849694252014, - 0.0021219714544713497, - 0.0340658500790596, - 0.13973397016525269, - 0.030186116695404053, - -0.1141631230711937 - ] - }, - "p244_120.wav": { - "name": "p244", - "embedding": [ - 0.0345221683382988, - 0.11285677552223206, - -0.006185987964272499, - 0.00444819126278162, - -0.04851618409156799, - 0.04443643242120743, - -0.14280781149864197, - 0.16455696523189545, - -0.054629914462566376, - 0.11926575005054474, - -0.08495447039604187, - 0.09751155972480774, - -0.0506727397441864, - -0.1767335832118988, - -0.04004449024796486, - 0.069318987429142, - -0.0488586388528347, - -0.04349035769701004, - -0.040879592299461365, - -0.02426302433013916, - 0.01655694469809532, - 0.004437287803739309, - -0.009126175194978714, - 0.057895857840776443, - 0.021293045952916145, - 0.0665641576051712, - -0.0037109688855707645, - 0.045338451862335205, - 0.017536109313368797, - 0.007746345363557339, - -0.009824639186263084, - 0.09418481588363647, - -0.029059838503599167, - 0.013081266544759274, - 0.07159115374088287, - -0.00026314088609069586, - 0.011893361806869507, - -0.043273866176605225, - -0.02280638925731182, - 0.005177565850317478, - -0.058620356023311615, - 0.07651512324810028, - 0.043367937207221985, - 0.00030603446066379547, - 0.03683783486485481, - 0.05965195223689079, - -0.0029484110418707132, - -0.05564282089471817, - -0.10472553968429565, - 0.14723926782608032, - 0.0845227986574173, - -0.02044135332107544, - -0.07024499028921127, - -0.055844470858573914, - 0.10607326030731201, - -0.03724218159914017, - -0.11428283900022507, - -0.05419738590717316, - 0.0979962944984436, - 0.15035147964954376, - -0.04854988306760788, - -0.01990264095366001, - 0.010210538282990456, - 0.16217073798179626, - 0.06145327538251877, - 0.09531673789024353, - 0.04559844732284546, - 0.11191905289888382, - -0.04619233310222626, - 0.004203858319669962, - 0.08833819627761841, - 0.041186489164829254, - 0.046529099345207214, - -0.014624322764575481, - 0.01584678143262863, - 0.005087331403046846, - 0.0007320850272662938, - 0.0194782093167305, - -0.02834141254425049, - -0.013659695163369179, - -0.04466176778078079, - 0.030789121985435486, - -0.03721405193209648, - 0.008746621198952198, - -0.006488821469247341, - 0.07020560652017593, - 0.04476916044950485, - -0.009815419092774391, - 0.07588279992341995, - 0.07513284683227539, - 0.010681292973458767, - 0.06956884264945984, - -0.06521964818239212, - -0.06147092580795288, - 0.011778132058680058, - -0.02267150580883026, - 0.02839742973446846, - 0.06304428726434708, - 0.031682223081588745, - 0.007486862130463123, - 0.11619949340820312, - 0.05684630572795868, - -0.0018135188147425652, - 0.03489911928772926, - -0.10900737345218658, - 0.14764909446239471, - 0.05465555936098099, - -0.04299356788396835, - 0.029297037050127983, - -0.014288803562521935, - 0.0414859876036644, - 0.07062771916389465, - -0.11803363263607025, - -0.06383292376995087, - 0.03299330174922943, - 0.037048954516649246, - -0.03904881328344345, - 0.0872720330953598, - -0.008770468644797802, - 0.01533513143658638, - 0.10238590091466904, - -0.05033291131258011, - -0.06311125308275223, - -0.01857956126332283, - 0.043770015239715576, - -0.07190638780593872, - 0.04814283549785614, - 0.06744087487459183, - 0.005141375586390495, - 0.0175476111471653, - 0.10697303712368011, - 0.014797304756939411, - -0.008125048130750656, - 0.017246047034859657, - -0.03243488073348999, - 0.03565003722906113, - -0.011775722727179527, - 0.014176595956087112, - 0.02908923104405403, - 0.04835540056228638, - 0.041539084166288376, - 0.015653640031814575, - -0.017810266464948654, - -0.09884323179721832, - 0.006732898764312267, - 0.04855845123529434, - 0.10380532592535019, - -0.003862161422148347, - -0.0040578898042440414, - -0.03480366989970207, - -0.04818146675825119, - -0.0247996523976326, - -0.003616938367486, - 0.08203420042991638, - -0.044428907334804535, - -0.009084219112992287, - 0.11731656640768051, - 0.003149626310914755, - 0.007940972223877907, - -0.060447268187999725, - 0.005992789752781391, - 0.004215777385979891, - 0.0528411865234375, - -0.0694071501493454, - -0.0820966362953186, - 0.015340112149715424, - 0.05275840312242508, - -0.003037865739315748, - 0.07079257071018219, - 0.023328151553869247, - -0.002711064647883177, - 0.015954559668898582, - -0.07223737239837646, - 0.04205968230962753, - -0.09430976212024689, - -0.059846825897693634, - -0.0208941288292408, - -0.018279600888490677, - -0.01656361296772957, - 0.052218444645404816, - 0.018482070416212082, - 0.05238855257630348, - 0.025909263640642166, - -0.11537493020296097, - -0.08688834309577942, - 0.06682883948087692, - 0.08272383362054825, - -0.02036820910871029, - 0.059195246547460556, - 0.07914192974567413, - -0.05107014626264572, - 0.04094104841351509, - 0.052519600838422775, - 0.10583151131868362, - -0.03903021663427353, - 0.016622763127088547, - -0.06429634243249893, - 0.035176992416381836, - 0.052942998707294464, - -0.13259881734848022, - -0.06305655837059021, - -0.03044966608285904, - -0.021380890160799026, - 0.006965217180550098, - -0.011119682341814041, - 0.03047073259949684, - 0.02747570537030697, - -0.014237066730856895, - -0.07584354281425476, - -0.0850161537528038, - 0.0657251700758934, - -0.1002492755651474, - 0.019911937415599823, - -0.06504003703594208, - 0.031941067427396774, - 0.0934300571680069, - 0.0373072549700737, - -0.02253125235438347, - -0.014421112835407257, - 0.03891584649682045, - -0.027869481593370438, - -0.01874903216958046, - 0.04147224500775337, - 0.026441780850291252, - -0.10136489570140839, - 0.009756246581673622, - -0.08010652661323547, - 0.0838051438331604, - -0.031622424721717834, - 0.1586567610502243, - 0.015823224559426308, - -0.053576741367578506, - -0.09206540882587433, - -0.016890795901417732, - -0.034552544355392456, - 0.057748619467020035, - 0.022549351677298546, - 0.061687394976615906, - 0.0239492766559124, - -0.005867598112672567, - 0.14386054873466492, - 0.0446644052863121, - -0.05506458878517151, - -0.05955399572849274, - -0.042109981179237366, - -0.054780587553977966, - 0.019849447533488274, - 0.030567895621061325, - -0.09644058346748352, - -0.03136271610856056, - 0.005498300772160292, - -0.05479053407907486, - 0.09022976458072662, - 0.14143067598342896, - 0.09358908236026764, - -0.12136007845401764 - ] - }, - "p244_067.wav": { - "name": "p244", - "embedding": [ - 0.020868409425020218, - 0.0868513286113739, - -0.012039963155984879, - 0.019087977707386017, - -0.0729515552520752, - 0.07583948224782944, - -0.10541653633117676, - 0.11873645335435867, - -0.07380959391593933, - 0.14194393157958984, - -0.08430862426757812, - 0.11622262746095657, - -0.0546979159116745, - -0.17934924364089966, - -0.017293427139520645, - 0.06783819198608398, - -0.04402795806527138, - -0.04271041601896286, - -0.04180052503943443, - -0.028469868004322052, - 0.03680458664894104, - 0.01561243087053299, - 0.01897319406270981, - 0.028721995651721954, - 0.006416977383196354, - 0.08553045243024826, - -0.012912136502563953, - 0.030799776315689087, - 0.01150369644165039, - -0.050855159759521484, - -0.05115745961666107, - 0.10553304851055145, - -0.056656867265701294, - 0.01121559552848339, - 0.04766120761632919, - -0.00876043550670147, - -0.008931387215852737, - -0.050337910652160645, - -0.011606164276599884, - -0.017599213868379593, - -0.06905359029769897, - 0.07020455598831177, - 0.00306877912953496, - 0.0001026339887175709, - 0.0311671681702137, - 0.00494158361107111, - -0.029914572834968567, - -0.026356277987360954, - -0.09261718392372131, - 0.12716248631477356, - 0.08353427797555923, - -0.031998563557863235, - -0.05076141282916069, - -0.06290306150913239, - 0.11054226756095886, - -0.014636765234172344, - -0.13588395714759827, - -0.06840340793132782, - 0.09216269105672836, - 0.13853719830513, - -0.032242052257061005, - -0.020886607468128204, - 0.005845916457474232, - 0.11510229110717773, - 0.040641821920871735, - 0.12292227149009705, - 0.049254514276981354, - 0.1059156283736229, - -0.023208286613225937, - 0.02244659513235092, - 0.06283772736787796, - 0.06280370056629181, - 0.05181184411048889, - -0.015416629612445831, - 0.025779955089092255, - -0.0022751784417778254, - -0.006654226686805487, - 0.03142628073692322, - -0.02260248363018036, - -0.01621728017926216, - -0.03134561702609062, - -0.014710749499499798, - -0.021795710548758507, - -0.021698681637644768, - 0.003551172325387597, - 0.054710499942302704, - 0.05024096369743347, - 0.000979394419118762, - 0.07397016882896423, - 0.04378657042980194, - -0.01866992563009262, - 0.08207811415195465, - -0.07188402116298676, - -0.05842689424753189, - 0.01084179151803255, - 0.004157151561230421, - 0.011689719744026661, - 0.08458214998245239, - 0.033798880875110626, - -0.003460160456597805, - 0.11204814910888672, - 0.04379774630069733, - 0.006874361541122198, - 0.03510897234082222, - -0.09786175191402435, - 0.14100712537765503, - 0.07588119804859161, - -0.035735756158828735, - 0.03177005052566528, - -0.02765769511461258, - 0.09233300387859344, - 0.07977771759033203, - -0.12316806614398956, - -0.05609642341732979, - -0.011355175636708736, - -0.015557361766695976, - -0.04847920686006546, - 0.09977260231971741, - -0.029047349467873573, - 0.005727539304643869, - 0.11568583548069, - -0.07327874004840851, - -0.05858144909143448, - -0.009706265293061733, - 0.018438544124364853, - -0.09241557121276855, - 0.050521910190582275, - 0.03653712198138237, - 0.007419217377901077, - 0.038794904947280884, - 0.10721154510974884, - -0.027727147564291954, - -0.01003716979175806, - 0.04247761145234108, - -0.06914205849170685, - 0.007558742538094521, - -0.032879382371902466, - 0.015886986628174782, - 0.07359768450260162, - 0.04000311717391014, - 0.061109937727451324, - -0.023807067424058914, - 0.0012497404823079705, - -0.09182318300008774, - 0.01841042935848236, - 0.037720777094364166, - 0.06340830028057098, - 0.0013550283620133996, - 0.0004873467842116952, - -0.034900542348623276, - -0.08777841925621033, - 0.016995344310998917, - -0.018115662038326263, - 0.08811838924884796, - -0.03945860639214516, - 0.001946773030795157, - 0.09453526139259338, - 0.045616745948791504, - -0.013560041785240173, - -0.10332232713699341, - -0.04099069535732269, - 0.003214046359062195, - 0.05721449851989746, - -0.0923265665769577, - -0.060605041682720184, - 0.007285548839718103, - 0.051176127046346664, - -0.01324876956641674, - 0.05760982632637024, - 0.06655386090278625, - 0.024315889924764633, - 0.025252368301153183, - -0.0742875188589096, - 0.03546706587076187, - -0.08509795367717743, - -0.06393812596797943, - -0.018804963678121567, - -0.040829822421073914, - -0.0029831058345735073, - 0.06176944822072983, - -0.008249293081462383, - 0.023371916264295578, - -0.000571876298636198, - -0.09278358519077301, - -0.09932700544595718, - 0.06875362992286682, - 0.05416400730609894, - -0.003684660652652383, - 0.06501224637031555, - 0.06914102286100388, - -0.07024751603603363, - 0.04835633188486099, - 0.042042143642902374, - 0.13709813356399536, - -0.049365803599357605, - 0.04294247180223465, - -0.07167274504899979, - 0.04976804181933403, - 0.08467129617929459, - -0.10611759126186371, - -0.07544932514429092, - -0.035962000489234924, - -0.04060329496860504, - 0.06351238489151001, - -0.043235473334789276, - -0.03657742962241173, - 0.024615004658699036, - -0.016037333756685257, - -0.08906956017017365, - -0.07769998908042908, - 0.10148769617080688, - -0.0646141767501831, - -0.0024357701186090708, - -0.09675583988428116, - 0.043204087764024734, - 0.052898846566677094, - 0.05180158466100693, - -0.046868979930877686, - 0.03207521140575409, - 0.0725894346833229, - -0.025808483362197876, - 0.01369834691286087, - 0.06474174559116364, - 0.022981004789471626, - -0.07859141379594803, - -0.03240450844168663, - -0.09464406967163086, - 0.06016550213098526, - -0.03589615598320961, - 0.160593181848526, - -0.016197221353650093, - -0.043579649180173874, - -0.06344643235206604, - 0.04137660935521126, - -0.012816869653761387, - 0.03843008354306221, - 0.06086871027946472, - 0.0787402018904686, - 0.030957505106925964, - -0.04526152461767197, - 0.14024889469146729, - 0.028170615434646606, - -0.02721204236149788, - -0.053903162479400635, - -0.020322106778621674, - -0.059405043721199036, - 0.0197504460811615, - 0.014078475534915924, - -0.1281036138534546, - -0.00748630054295063, - 0.019126102328300476, - -0.02727348729968071, - 0.07681892067193985, - 0.13779094815254211, - 0.0967927947640419, - -0.09268027544021606 - ] - }, - "p244_348.wav": { - "name": "p244", - "embedding": [ - 0.06416963785886765, - 0.0763169527053833, - -0.03299425542354584, - 0.04098282381892204, - -0.06967906653881073, - 0.047166064381599426, - -0.11756372451782227, - 0.11179213225841522, - -0.019342811778187752, - 0.14263132214546204, - -0.05705989897251129, - 0.13704779744148254, - -0.0022996054030954838, - -0.1816350519657135, - -0.030605586245656013, - 0.043044961988925934, - -0.04927428066730499, - -0.04703671112656593, - -0.0530998557806015, - -0.04178537428379059, - 0.03982323408126831, - 0.06660129129886627, - 0.0455942340195179, - 0.006632889620959759, - 0.024298429489135742, - 0.07572554796934128, - -0.010593682527542114, - 0.03301914781332016, - 0.011640319600701332, - -0.10006465017795563, - -0.05677707493305206, - 0.08164320886135101, - -0.05086119472980499, - 0.010672129690647125, - 0.014715148136019707, - -0.018537038937211037, - 0.014582466334104538, - -0.058439094573259354, - -0.036608338356018066, - 0.030830949544906616, - -0.04347511753439903, - 0.07392939925193787, - 0.018461402505636215, - -0.03597142547369003, - 0.05048117786645889, - -0.0034174006432294846, - -0.025858085602521896, - -0.04569001495838165, - -0.10903674364089966, - 0.17590458691120148, - 0.08129538595676422, - -0.008880347944796085, - -0.05846276879310608, - -0.06529244780540466, - 0.09038583934307098, - -0.025317519903182983, - -0.12211281061172485, - -0.03669178485870361, - 0.0553026981651783, - 0.13649219274520874, - -0.02917296066880226, - -0.04795972630381584, - 0.045753784477710724, - 0.12120044231414795, - 0.08033176511526108, - 0.05919057875871658, - 0.09365145862102509, - 0.10905051231384277, - -0.03795982152223587, - 0.0016961735673248768, - 0.05388873815536499, - 0.08848769217729568, - 0.08406290411949158, - -0.0003825872263405472, - 0.030380364507436752, - 0.005348149221390486, - -0.009688726626336575, - -0.031847935169935226, - -0.018902946263551712, - -0.005971909966319799, - -0.0016954416641965508, - -0.0025203523691743612, - 0.010228863917291164, - 0.02720189467072487, - -0.04551564157009125, - 0.06288662552833557, - 0.04906798154115677, - -0.022211231291294098, - 0.051218800246715546, - 0.03666144609451294, - 0.018922779709100723, - 0.06296109408140182, - -0.07955645024776459, - -0.0784418061375618, - 0.03906489908695221, - 0.01877228543162346, - 0.012471899390220642, - 0.06295335292816162, - 0.051156848669052124, - -0.024583876132965088, - 0.12628428637981415, - 0.04476037994027138, - -0.020415350794792175, - 0.012895047664642334, - -0.07944655418395996, - 0.12012055516242981, - 0.11362238228321075, - -0.026701495051383972, - 0.05360058695077896, - -0.04528056085109711, - 0.08192526549100876, - 0.056361161172389984, - -0.13404487073421478, - -0.07066284120082855, - 0.023433204740285873, - -0.008017717860639095, - -0.006984381470829248, - 0.1085088849067688, - -0.006292938254773617, - 0.06264964491128922, - 0.1077122688293457, - -0.08239695429801941, - -0.0391920767724514, - -0.03114943765103817, - 0.05154057592153549, - -0.10968014597892761, - 0.061816513538360596, - 0.04747128486633301, - -0.006041971500962973, - 0.006270749494433403, - 0.08324433118104935, - -0.024418562650680542, - -0.003103762399405241, - -0.0017465186538174748, - -0.04680066555738449, - 0.006634939461946487, - -0.013291368260979652, - -0.01601908728480339, - 0.06028125062584877, - 0.01936379447579384, - 0.040837325155735016, - -0.023072805255651474, - -0.024967461824417114, - -0.13793975114822388, - 0.042109642177820206, - 0.015544407069683075, - 0.06919063627719879, - -0.006869792938232422, - -0.01729438826441765, - -0.0438687726855278, - -0.07317142188549042, - 0.03169111907482147, - -0.014413293451070786, - 0.05965622514486313, - -0.030996613204479218, - 0.006164215505123138, - 0.09972159564495087, - 0.02927928976714611, - -0.0006327853770926595, - -0.019514229148626328, - -0.029328860342502594, - 0.005025753751397133, - 0.05842050909996033, - -0.07635505497455597, - -0.08322034776210785, - -0.012893766164779663, - 0.02761763334274292, - -0.00658753514289856, - 0.07751573622226715, - 0.057326652109622955, - 0.004889404866844416, - 0.024311507120728493, - -0.07353408634662628, - -0.005548990797251463, - -0.08532489836215973, - -0.06867697834968567, - -0.011845898814499378, - -0.03660754859447479, - -0.02051054872572422, - 0.0806734636425972, - 0.025295086205005646, - 0.05031318590044975, - -0.04750332981348038, - -0.06907308101654053, - -0.08586178719997406, - 0.04537511616945267, - 0.05123066529631615, - 0.0036835186183452606, - 0.02592979371547699, - 0.06370057910680771, - -0.019487395882606506, - 0.06826324760913849, - 0.057477302849292755, - 0.0885062888264656, - -0.022730223834514618, - 0.03245188668370247, - -0.060124047100543976, - 0.10704690217971802, - 0.08858537673950195, - -0.06782245635986328, - -0.08526552468538284, - -0.045309655368328094, - -0.08879561722278595, - 0.046389006078243256, - -0.026801470667123795, - 0.010144572705030441, - 0.04984457045793533, - 0.005001446232199669, - -0.10068418085575104, - -0.09918620437383652, - 0.10351140797138214, - -0.05554025247693062, - -0.01126169040799141, - -0.08422324061393738, - 0.03590209037065506, - 0.09755320101976395, - 0.045386701822280884, - -0.029424484819173813, - -0.0033509526401758194, - 0.04767423868179321, - -0.022274363785982132, - 0.014419065788388252, - 0.06711696088314056, - 0.04518205672502518, - -0.12307103723287582, - -0.022879544645547867, - -0.07614308595657349, - 0.05048812925815582, - -0.05015058442950249, - 0.1369452029466629, - 0.025236688554286957, - -0.042625993490219116, - -0.08200784027576447, - 0.06793235242366791, - -0.024855712428689003, - 0.0686807930469513, - 0.039610885083675385, - 0.0635165274143219, - 0.05367117375135422, - -0.08354263007640839, - 0.09824296832084656, - 0.0734625905752182, - -0.04576064646244049, - -0.0790901780128479, - -0.0505632683634758, - -0.03072902001440525, - 0.038853466510772705, - 0.02813848853111267, - -0.07984182983636856, - -0.004669418558478355, - 0.023210391402244568, - -0.012019085697829723, - 0.06310807913541794, - 0.14355075359344482, - 0.06386779248714447, - -0.11344774067401886 - ] - }, - "p244_044.wav": { - "name": "p244", - "embedding": [ - 0.05540139600634575, - 0.0351874977350235, - -0.0029585787560790777, - -0.0036408863961696625, - -0.009717918932437897, - 0.026989303529262543, - -0.13735339045524597, - 0.10246618837118149, - -0.02932894229888916, - 0.1057426854968071, - -0.08385153114795685, - 0.0787532776594162, - -0.005749681498855352, - -0.14476078748703003, - -0.03264135122299194, - 0.04958081245422363, - -0.02901853248476982, - -0.013268353417515755, - -0.04734598845243454, - -0.013348409906029701, - 0.03271309658885002, - 0.05585765093564987, - 0.017678800970315933, - -0.018751535564661026, - -2.394833973085042e-05, - 0.05371611565351486, - 0.008370274677872658, - 0.03865957260131836, - 0.009304262697696686, - -0.017450083047151566, - 0.015023577027022839, - 0.09004774689674377, - -0.026044484227895737, - 0.0009122826159000397, - 0.04927607998251915, - 0.02071547694504261, - -0.003611566498875618, - -0.0842553973197937, - -0.021370701491832733, - 0.013384552672505379, - -0.06065421551465988, - 0.060138292610645294, - 0.038274116814136505, - 0.0030879653058946133, - 0.024408888071775436, - 0.02827766351401806, - -0.0088332649320364, - -0.06442015618085861, - -0.10005885362625122, - 0.16790227591991425, - 0.04864255338907242, - 0.014047691598534584, - -0.08935472369194031, - -0.03855591267347336, - 0.08309578895568848, - -0.0077942973002791405, - -0.062055446207523346, - -0.04749360680580139, - 0.057343170046806335, - 0.1353236436843872, - -0.01041158102452755, - -0.044429339468479156, - 0.03171449154615402, - 0.09943391382694244, - 0.013505324721336365, - 0.06197275221347809, - 0.10125812143087387, - 0.09637221693992615, - -0.01094371359795332, - 0.020567288622260094, - 0.04689057916402817, - 0.05445460230112076, - 0.04057963192462921, - -0.014234514907002449, - 0.03683260828256607, - 0.0012604668736457825, - -0.0359886959195137, - 0.014987404458224773, - -0.03495274484157562, - -0.03806743025779724, - 0.020563479512929916, - 0.0005404595285654068, - 0.011878499761223793, - 0.04789520427584648, - -0.04487988352775574, - 0.03433726355433464, - 0.02138691209256649, - 0.0005418236833065748, - 0.06738737225532532, - 0.0329102948307991, - 0.030989371240139008, - 0.025151332840323448, - -0.0516933873295784, - -0.09323399513959885, - 0.008121470920741558, - -0.0024637330789119005, - 0.023736722767353058, - 0.043473612517118454, - 0.02698652073740959, - -0.028227433562278748, - 0.10058945417404175, - -0.002524597104638815, - -0.014985373243689537, - -0.0031128115952014923, - -0.07942080497741699, - 0.09619386494159698, - 0.099323570728302, - -0.015833454206585884, - 0.014053039252758026, - -0.06924107670783997, - 0.03721923753619194, - 0.05781635269522667, - -0.11579690873622894, - -0.0548018142580986, - 0.052189093083143234, - 0.03476516529917717, - 0.026683229953050613, - 0.13142159581184387, - 0.010898714885115623, - 0.020617790520191193, - 0.08051857352256775, - -0.07659701257944107, - -0.04957641288638115, - 0.0006005354225635529, - 0.02204623818397522, - -0.03960549086332321, - 0.03626979514956474, - 0.032854702323675156, - 0.010973429307341576, - -0.02172589860856533, - 0.08298837393522263, - -0.010839487425982952, - 0.020128600299358368, - -0.043658968061208725, - 0.0002710595726966858, - 0.060335662215948105, - -0.021085208281874657, - -0.009002873674035072, - 0.02431986853480339, - 0.0639747604727745, - 0.029162375256419182, - 0.025574831292033195, - -0.07356759160757065, - -0.11855047941207886, - -0.007786398287862539, - 0.03783252835273743, - 0.06678080558776855, - -0.02601083740592003, - -0.03537067398428917, - -0.05401691049337387, - -0.025844207033514977, - -0.0037404238246381283, - -0.029338188469409943, - 0.05766249820590019, - 0.021084189414978027, - -0.017874745652079582, - 0.09360738843679428, - -0.025284549221396446, - 0.013361017219722271, - -0.02724376693367958, - -0.022132039070129395, - 0.017302291467785835, - 0.03225565329194069, - -0.041591793298721313, - -0.05928799510002136, - 0.01305367611348629, - 0.015114177018404007, - -0.014453674666583538, - -0.001210155664011836, - 0.018828436732292175, - 0.004517893306910992, - 0.013616982847452164, - -0.10014872997999191, - 0.01490868628025055, - -0.1160678118467331, - -0.04340996965765953, - 0.030036643147468567, - -0.000349000736605376, - 0.006367855705320835, - 0.07502906769514084, - -0.0036811628378927708, - 0.03091811202466488, - -0.03298807889223099, - -0.08331942558288574, - -0.03943921998143196, - 0.05338000878691673, - 0.0753025934100151, - -0.009122584015130997, - 0.02758536860346794, - 0.029099121689796448, - -0.0034411102533340454, - 0.02397848293185234, - 0.05102162063121796, - 0.08103230595588684, - -0.030999958515167236, - -0.01997513882815838, - -0.03418756648898125, - 0.10940631479024887, - 0.03795918822288513, - -0.06236086040735245, - -0.04988820478320122, - 0.0030434816144406796, - -0.05253837630152702, - 0.020179901272058487, - -0.0199077520519495, - 0.01477649062871933, - 0.0338677354156971, - -0.014915850013494492, - -0.12014935910701752, - -0.03963743522763252, - 0.03166377171874046, - -0.06261864304542542, - -0.002676093950867653, - -0.07130350917577744, - 0.03663774952292442, - 0.1020917147397995, - 0.037786319851875305, - -0.014607070945203304, - -0.031856633722782135, - 0.002835892140865326, - -0.06941057741641998, - -0.03648950159549713, - -0.008691705763339996, - 0.037000514566898346, - -0.07694466412067413, - -0.002713435096666217, - -0.06846268475055695, - 0.049588948488235474, - -0.04926304146647453, - 0.09001024812459946, - 0.021845895797014236, - -0.06423349678516388, - -0.08003246039152145, - -0.0019804886542260647, - -0.003215455450117588, - 0.05571264028549194, - 0.03837262839078903, - 0.018403928726911545, - 0.044507842510938644, - -0.07045572996139526, - 0.10923983156681061, - 0.04475123807787895, - -0.02649056911468506, - -0.05786821246147156, - -0.027255138382315636, - -0.01597152277827263, - 0.03250078856945038, - -0.005201913416385651, - -0.03966651111841202, - -0.0032188917975872755, - 0.02061603218317032, - -0.021886512637138367, - 0.04958562180399895, - 0.09706853330135345, - 0.037583090364933014, - -0.10383137315511703 - ] - }, - "p244_057.wav": { - "name": "p244", - "embedding": [ - 0.042658597230911255, - 0.07373440265655518, - -0.042017921805381775, - 0.04971172660589218, - -0.08102007210254669, - 0.06125273555517197, - -0.11694268882274628, - 0.13449028134346008, - -0.03624627739191055, - 0.12037333846092224, - -0.04670920968055725, - 0.14087115228176117, - 0.00011318037286400795, - -0.17798201739788055, - -0.02754015475511551, - 0.040677260607481, - -0.04235752671957016, - -0.016533244401216507, - -0.0717368796467781, - -0.024673495441675186, - 0.05648712068796158, - 0.024630118161439896, - 0.05028512701392174, - -0.04432780295610428, - 0.006298882886767387, - 0.052003875374794006, - 0.008977169170975685, - 0.04707060009241104, - 0.02072804793715477, - -0.05827939510345459, - -0.04008573293685913, - 0.11003127694129944, - -0.05210462212562561, - 0.00895748008042574, - 0.05134767293930054, - -0.04342135041952133, - -0.029322419315576553, - -0.047930993139743805, - -0.018395300954580307, - 0.009645577520132065, - -0.03082261234521866, - 0.06193145364522934, - 0.025976713746786118, - -0.025547288358211517, - 0.07112058997154236, - -0.014389791525900364, - -0.05688486248254776, - -0.013784706592559814, - -0.1082160472869873, - 0.13892841339111328, - 0.08027221262454987, - -0.0033687162213027477, - -0.08491973578929901, - -0.047700412571430206, - 0.11100733280181885, - -0.014018434099853039, - -0.12360776215791702, - -0.04192376136779785, - 0.05141473934054375, - 0.15656176209449768, - -0.021107863634824753, - -0.011425882577896118, - 0.03725047409534454, - 0.1016295775771141, - 0.056882549077272415, - 0.08021517097949982, - 0.09563928842544556, - 0.10773084312677383, - -0.013878921046853065, - 0.0630386471748352, - 0.027519889175891876, - 0.0867965966463089, - 0.018995199352502823, - -0.00758158415555954, - 0.03319406509399414, - -0.020736895501613617, - -0.009845266118645668, - -0.03240451216697693, - -0.04514143243432045, - -0.019291093572974205, - -0.01708867773413658, - 0.017963888123631477, - 0.035908762365579605, - 0.012050234712660313, - -0.049016982316970825, - 0.07073120772838593, - 0.03209540247917175, - -0.024402478709816933, - 0.037249986082315445, - 0.04311056435108185, - -0.00636585708707571, - 0.050601810216903687, - -0.08048838376998901, - -0.11849690973758698, - 0.003383701667189598, - 0.011985288932919502, - 0.01919235847890377, - 0.0612993985414505, - 0.021035224199295044, - -0.0037703639827668667, - 0.09749886393547058, - 0.07026691734790802, - -0.02102075144648552, - 0.030336380004882812, - -0.06137215346097946, - 0.11697441339492798, - 0.10063496977090836, - -0.004330971743911505, - 0.04971890151500702, - -0.05922890827059746, - 0.08101237565279007, - 0.04440369829535484, - -0.10373479872941971, - -0.07120360434055328, - 0.006141620688140392, - -0.005235287360846996, - -0.023264802992343903, - 0.134757399559021, - -0.006947047542780638, - 0.055613260716199875, - 0.10629017651081085, - -0.07855509221553802, - -0.04463636502623558, - -0.021638011559844017, - 0.055245526134967804, - -0.04844392091035843, - 0.06252002716064453, - 0.032610103487968445, - -0.013118140399456024, - 0.01573919877409935, - 0.07210180163383484, - -0.02472047321498394, - 0.016713324934244156, - 0.049177348613739014, - -0.07215912640094757, - 0.041919007897377014, - -0.03672518953680992, - -0.007667713798582554, - 0.07663096487522125, - 0.04351896792650223, - 0.07501128315925598, - -0.028448665514588356, - -0.008285744115710258, - -0.08659380674362183, - 0.005693176295608282, - 0.024349119514226913, - 0.06949149817228317, - -0.009844282642006874, - -0.01269880123436451, - -0.029022859409451485, - -0.08014222979545593, - 0.025880802422761917, - -0.027504265308380127, - 0.08404827862977982, - -0.026718009263277054, - 0.010596396401524544, - 0.07617653906345367, - 0.02967570535838604, - -0.006403231993317604, - -0.04598081111907959, - -0.028654057532548904, - 0.008319772779941559, - 0.053879186511039734, - -0.0867946594953537, - -0.05442504584789276, - -0.021900422871112823, - 0.02703044004738331, - -0.028688717633485794, - 0.04261992126703262, - 0.0548551008105278, - 0.015629053115844727, - 0.034706294536590576, - -0.07209552824497223, - 0.014745630323886871, - -0.09644142538309097, - -0.04417610540986061, - -0.018349912017583847, - -0.04618903622031212, - -0.040281087160110474, - 0.07412734627723694, - 0.03254743665456772, - 0.0423596128821373, - -0.003541739657521248, - -0.05816451832652092, - -0.08474371582269669, - 0.05352664738893509, - 0.03902830183506012, - -0.007147971540689468, - 0.05684029310941696, - 0.058591827750205994, - -0.03242700546979904, - 0.056032270193099976, - 0.07266870141029358, - 0.07109204679727554, - -0.03621084615588188, - -0.003321175929158926, - -0.09544070065021515, - 0.09888750314712524, - 0.11192983388900757, - -0.08583962917327881, - -0.0921175628900528, - -0.037021514028310776, - -0.07837015390396118, - 0.03923950344324112, - -0.04536805674433708, - -0.014613630250096321, - 0.06497185677289963, - 0.0039850943721830845, - -0.1330309361219406, - -0.07600510865449905, - 0.10415568202733994, - -0.09434092044830322, - 0.0005877655930817127, - -0.061691198498010635, - 0.017683925107121468, - 0.10313122719526291, - 0.000999506562948227, - -0.03477863967418671, - -0.011027686297893524, - 0.062136210501194, - -0.03392190486192703, - 0.022306038066744804, - 0.03726818412542343, - 0.03559507429599762, - -0.08566252142190933, - -0.0013286432949826121, - -0.049543119966983795, - 0.02244129590690136, - -0.03894244134426117, - 0.13845036923885345, - 0.006760017946362495, - -0.038349516689777374, - -0.08156262338161469, - 0.08797506988048553, - -0.02791464887559414, - 0.053304776549339294, - 0.04674801975488663, - 0.07543385028839111, - 0.022843074053525925, - -0.10655760765075684, - 0.13490071892738342, - 0.02066524140536785, - -0.0457330048084259, - -0.09066809713840485, - -0.027774915099143982, - -0.04519465193152428, - 0.021998699754476547, - 0.029997579753398895, - -0.07456813752651215, - -0.018419792875647545, - 0.011191231198608875, - -0.01641165465116501, - 0.06939584016799927, - 0.12185235321521759, - 0.07355348765850067, - -0.08811970055103302 - ] - }, - "p244_033.wav": { - "name": "p244", - "embedding": [ - 0.05503704398870468, - 0.04126527160406113, - 0.028578555211424828, - -0.021874483674764633, - -0.009847121313214302, - 0.0940089076757431, - -0.06819070130586624, - 0.07790213078260422, - 0.012370242737233639, - 0.02222418040037155, - -0.0717296376824379, - 0.05137820169329643, - -0.0009726779535412788, - -0.13882096111774445, - -0.00807705894112587, - 0.0543212816119194, - -0.03527560085058212, - 0.014220127835869789, - -0.06138240173459053, - -0.019632671028375626, - -0.014992786571383476, - 0.01048943679779768, - 0.06166643649339676, - -0.0200663935393095, - 0.04159843176603317, - 0.03275735676288605, - 0.004174490459263325, - 0.025599969550967216, - 0.0024124151095747948, - -0.016274787485599518, - -0.009249405935406685, - 0.058753468096256256, - -0.03836642578244209, - -0.021624622866511345, - 0.049998216331005096, - -0.006679716520011425, - 0.04524123668670654, - -0.09250281751155853, - -0.032838352024555206, - 0.0467701256275177, - -0.06930014491081238, - 0.07942825555801392, - 0.07616984844207764, - 0.013530037365853786, - 0.03430735692381859, - 0.010687392204999924, - -0.013379319570958614, - -0.044989049434661865, - -0.09564291685819626, - 0.13972485065460205, - 0.02319157123565674, - 0.02359095774590969, - -0.0843544751405716, - -0.006598832085728645, - 0.05079162120819092, - -0.006757604889571667, - -0.04895760491490364, - -0.02604241855442524, - 0.05102890729904175, - 0.06556835025548935, - 0.047526516020298004, - -0.004110292065888643, - 0.01991882175207138, - 0.06621947139501572, - 0.009147971868515015, - 0.017581192776560783, - 0.09697175025939941, - 0.09611494839191437, - 0.011887033469974995, - 0.027554944157600403, - 0.0553416982293129, - 0.006610002368688583, - 0.014754112809896469, - -0.003383040428161621, - 0.025151968002319336, - -0.030998259782791138, - -0.012653917074203491, - -0.025196246802806854, - -0.0029356912709772587, - -0.008422995917499065, - 0.061520420014858246, - 0.03234238922595978, - 0.01717015542089939, - 0.050243716686964035, - -0.04374992847442627, - 0.033682480454444885, - -0.013783849775791168, - 0.10162042081356049, - 0.0746852234005928, - 0.0407617911696434, - 0.010323528200387955, - 0.0009243618696928024, - -0.028158560395240784, - -0.08587627112865448, - -0.008755132555961609, - 0.02521700970828533, - -0.003991944715380669, - -0.006430109962821007, - 0.006756959483027458, - -0.03189900517463684, - 0.10079100728034973, - 0.008428608067333698, - -0.02478889934718609, - 0.01860320009291172, - -0.05652153119444847, - 0.057058185338974, - 0.04892893135547638, - 0.01361973024904728, - 0.05956698954105377, - -0.025912873446941376, - 0.03085711970925331, - 0.0531538724899292, - -0.06980676203966141, - -0.00903877429664135, - 0.022771088406443596, - 0.004799459595233202, - 0.04482216387987137, - 0.11981566250324249, - 0.003450536634773016, - 0.03170914947986603, - 0.04556145519018173, - -0.06718897074460983, - -0.013340558856725693, - 0.062368884682655334, - 0.0018227379769086838, - 0.024645287543535233, - -0.027156272903084755, - 0.022594686597585678, - 0.02368982322514057, - -0.0520721971988678, - 0.0425841361284256, - 0.027727916836738586, - 0.025195419788360596, - -0.05521911010146141, - 0.035098329186439514, - 0.03956956788897514, - 0.000834080739878118, - -0.04249418526887894, - 0.050750792026519775, - 0.06984292715787888, - -0.0005850158631801605, - 0.043573640286922455, - -0.06163248047232628, - -0.09233947098255157, - -0.0383978933095932, - -0.02143182046711445, - 0.04378749802708626, - -0.006941661238670349, - -0.018346618860960007, - -0.0790707990527153, - 0.023840874433517456, - 1.263245940208435e-05, - -0.009724571369588375, - 0.038023218512535095, - 0.07959675043821335, - -0.05844411998987198, - 0.050648804754018784, - -0.025519538670778275, - 0.028987377882003784, - -0.022427359595894814, - -0.05055466294288635, - 0.007468527182936668, - 0.031119007617235184, - -0.00751885399222374, - -0.04164040833711624, - 0.011285919696092606, - -0.050722166895866394, - -0.004625143948942423, - 0.001974336802959442, - 0.039731934666633606, - -0.00563558004796505, - -0.03561624884605408, - -0.07944482564926147, - 0.013095082715153694, - -0.03421042114496231, - -0.03314093127846718, - 0.07991906255483627, - 0.04608798772096634, - -0.019420582801103592, - 0.08691956102848053, - 0.04034686088562012, - 0.02982557751238346, - -0.03717201203107834, - -0.04152484983205795, - 0.02425471693277359, - 0.05419965833425522, - 0.03612910583615303, - -0.005846992135047913, - 0.042186662554740906, - 0.005433021113276482, - -0.01671779900789261, - 0.04475399851799011, - 0.023597944527864456, - 0.02329040691256523, - -0.04797558858990669, - -0.027197031304240227, - 0.022699818015098572, - 0.08339535444974899, - 0.0032104365527629852, - -0.04503514617681503, - -0.021230213344097137, - 0.03628489375114441, - -0.023001430556178093, - 0.005420295055955648, - -0.0006123166531324387, - 0.011518686078488827, - 0.0485251322388649, - -0.027095016092061996, - -0.05361117050051689, - -0.0662553533911705, - 0.013231858611106873, - -0.058311667293310165, - -0.007921005599200726, - -0.0318119153380394, - 0.034134261310100555, - 0.09536511451005936, - -0.020250875502824783, - 0.0023607080802321434, - 0.0007106075063347816, - -0.014448193833231926, - -0.01130728516727686, - -0.039694465696811676, - -0.0023696087300777435, - 0.041263043880462646, - -0.07747235149145126, - -0.00010490883141756058, - -0.0497434064745903, - 0.050729431211948395, - 0.025525305420160294, - 0.06620647758245468, - 0.06714387983083725, - -0.008791105821728706, - -0.054592691361904144, - 0.003910398110747337, - -0.007692305371165276, - 0.035516027361154556, - -0.0005606263875961304, - 0.006531648337841034, - 0.06001660227775574, - -0.01902925781905651, - 0.07483260333538055, - 0.03050580620765686, - -0.0711502805352211, - -0.03632104769349098, - 0.02073141559958458, - -0.014771663583815098, - 0.018105216324329376, - -0.021234482526779175, - -0.040807321667671204, - 0.026090865954756737, - 0.04086343199014664, - 0.01827331632375717, - 0.006655510514974594, - 0.048183273524045944, - 0.028873968869447708, - -0.027636181563138962 - ] - }, - "p244_273.wav": { - "name": "p244", - "embedding": [ - 0.0026476019993424416, - 0.05040179193019867, - -0.02965957298874855, - -0.034782592207193375, - -0.022863516584038734, - 0.03144398704171181, - -0.14000385999679565, - 0.051099713891744614, - -0.04079238325357437, - 0.13728491961956024, - -0.007415551692247391, - 0.08959319442510605, - -0.013946100138127804, - -0.09861291199922562, - -0.0044763414189219475, - 0.05538463220000267, - -0.048577889800071716, - -0.032904960215091705, - 0.01900862343609333, - -0.08309365063905716, - 0.02128327637910843, - -0.003264501690864563, - -0.01786132901906967, - -0.033455558121204376, - 0.02312278002500534, - 0.07343585789203644, - -0.0038511897437274456, - -0.01767529733479023, - -0.028988216072320938, - -0.05128886178135872, - -0.004760146141052246, - 0.07865680009126663, - -0.031286630779504776, - -0.027404900640249252, - 0.0321369543671608, - -0.005473798606544733, - 0.006576112005859613, - -0.016731375828385353, - 0.028515463694930077, - 0.05061473324894905, - -0.08200086653232574, - 0.08887961506843567, - 0.02601844072341919, - 0.011357372626662254, - 0.03733556717634201, - -0.016124669462442398, - -0.02678702399134636, - 0.036197301000356674, - -0.029411114752292633, - 0.09708891808986664, - 0.05593682825565338, - -0.02425423264503479, - -0.0386524498462677, - -0.007788142189383507, - 0.0639965683221817, - 0.029921142384409904, - -0.10787051171064377, - 0.0056901611387729645, - 0.015934761613607407, - 0.09393545985221863, - -0.014263492077589035, - -0.05579478293657303, - 0.03485441952943802, - 0.0968020036816597, - 0.02439579740166664, - 0.04180368036031723, - 0.05488671362400055, - 0.07529357075691223, - 0.0026147146709263325, - -0.055362768471241, - 0.06008877977728844, - 0.07915298640727997, - 0.0430389828979969, - -0.01995036005973816, - 0.04954618960618973, - -0.011623811908066273, - -0.006167737767100334, - -0.05614133179187775, - -0.03622627258300781, - -0.048705801367759705, - -0.07243897020816803, - -0.014460626058280468, - 0.018311824649572372, - 0.07117718458175659, - 0.010565374977886677, - -0.025768399238586426, - 0.06887920200824738, - -0.042999908328056335, - 0.03278893977403641, - 0.04510287940502167, - 0.011646484956145287, - 0.018368449062108994, - -0.07040495425462723, - -0.01980988308787346, - 0.01990605518221855, - -0.006179517600685358, - 0.06271880865097046, - 0.03327307105064392, - 0.02138558402657509, - 0.03103802353143692, - 0.06835385411977768, - 0.03468228876590729, - 0.01039789617061615, - -0.02561241202056408, - -0.07081673294305801, - 0.09570132195949554, - 0.07046829909086227, - -0.06066931411623955, - 0.027953507378697395, - 0.011127099394798279, - 0.025985557585954666, - -0.014827873557806015, - -0.10529714822769165, - -0.03224654868245125, - 0.010995421558618546, - 0.05927664786577225, - -0.014649520628154278, - 0.12406080216169357, - 0.020794177427887917, - 0.03692144528031349, - 0.06189810112118721, - -0.009922102093696594, - -0.04693252220749855, - -0.06247655674815178, - 0.04660366475582123, - -0.0950712263584137, - 0.07217497378587723, - 0.05943816155195236, - 0.03775598853826523, - 0.02648629993200302, - 0.0937858447432518, - 0.031699247658252716, - 0.00045697903260588646, - -0.05652068182826042, - 0.005226939916610718, - 0.029063716530799866, - 0.011619489639997482, - 0.0555356927216053, - 0.056166961789131165, - -0.004735746420919895, - 0.09648586809635162, - 0.028552792966365814, - 0.008195789530873299, - -0.08477400988340378, - 0.018421396613121033, - 0.018365738913416862, - 0.0406486876308918, - -0.034434232860803604, - -0.03627825155854225, - 0.006090272217988968, - -0.06791737675666809, - -0.049891479313373566, - -0.03130611777305603, - 0.08802126348018646, - 0.011686543002724648, - -0.028816476464271545, - 0.09757503867149353, - 0.04058592766523361, - -0.009651847183704376, - 0.024637019261717796, - -0.025973135605454445, - -0.024761321023106575, - 0.06587699055671692, - -0.14869078993797302, - -0.0584012009203434, - -0.014292672276496887, - 0.03659965470433235, - 0.046618424355983734, - 0.04329434037208557, - 0.07247595489025116, - -0.006700476631522179, - 0.03669091314077377, - -0.006628260016441345, - 0.0065744612365961075, - -0.059426456689834595, - -0.05883348733186722, - -0.037214841693639755, - -0.07949355244636536, - -0.07062729448080063, - 0.06170422583818436, - -0.0452277846634388, - 0.055910624563694, - -0.031131815165281296, - -0.040166616439819336, - -0.044766124337911606, - 0.038244858384132385, - 0.020098481327295303, - -0.049127593636512756, - 0.004920534789562225, - 0.07999622821807861, - 0.007382713258266449, - -0.03009817749261856, - 0.03157437965273857, - 0.08087754249572754, - -0.06818441301584244, - 0.020835569128394127, - -0.058606937527656555, - 0.0851200595498085, - 0.055453091859817505, - -0.02522546611726284, - -0.031772222369909286, - -0.03446222096681595, - -0.042361222207546234, - 0.053891852498054504, - -0.048653945326805115, - -0.0010657142847776413, - -0.014853335916996002, - -0.021661918610334396, - -0.0667293444275856, - -0.05397786945104599, - 0.05126090347766876, - -0.07112500816583633, - -0.0023414152674376965, - -0.03467349335551262, - 0.01196509599685669, - 0.024627475067973137, - 0.06790965050458908, - -0.058424755930900574, - 0.05146559700369835, - 0.03203999623656273, - -0.03010169044137001, - 0.04194901883602142, - 0.04581429064273834, - 0.039138708263635635, - -0.048563115298748016, - -0.06794974207878113, - -0.0779951810836792, - 0.03790833055973053, - -0.04594273865222931, - 0.059765059500932693, - 0.0409092903137207, - -0.04962727427482605, - -0.02866518124938011, - -0.02079601213335991, - -0.014579536393284798, - 0.023257005959749222, - 0.07405896484851837, - 0.08979281038045883, - 0.03659071773290634, - 0.011373279616236687, - 0.08352388441562653, - 0.03708831965923309, - 0.028296543285250664, - -0.020455490797758102, - 0.005406586453318596, - -0.020148176699876785, - 0.022320300340652466, - 0.04028785973787308, - -0.09396903216838837, - 0.048410166054964066, - 0.021559784188866615, - 0.029390135779976845, - 0.04379183053970337, - 0.036473553627729416, - 0.05472201108932495, - -0.06304406374692917 - ] - }, - "p244_114.wav": { - "name": "p244", - "embedding": [ - 0.06669951975345612, - 0.10124754905700684, - -0.0022013874258846045, - 0.03649517148733139, - -0.021619021892547607, - 0.053168296813964844, - -0.16219760477542877, - 0.11655928194522858, - -0.01387164555490017, - 0.1186247318983078, - -0.06351030617952347, - 0.10898423194885254, - -0.01726130209863186, - -0.16677242517471313, - -0.024964701384305954, - 0.06468411535024643, - -0.026851870119571686, - -0.032134346663951874, - -0.0033342628739774227, - -0.008759641088545322, - 0.0032952409237623215, - 0.03859074413776398, - 0.049083881080150604, - -0.02073134109377861, - 0.06332868337631226, - 0.05428619682788849, - 0.014313665218651295, - 0.066304512321949, - -0.010303741320967674, - -0.051963094621896744, - -0.013814348727464676, - 0.0884525328874588, - -0.054471034556627274, - 0.006114103831350803, - 0.04680199548602104, - 0.026793599128723145, - 0.020099684596061707, - -0.08509883284568787, - -0.01705184578895569, - -0.005261139944195747, - -0.02789417654275894, - 0.09863394498825073, - 0.03861689195036888, - -0.0397944338619709, - 0.007458297535777092, - 0.04691072925925255, - 0.01988939195871353, - -0.0555143803358078, - -0.13748982548713684, - 0.15095984935760498, - 0.013565191067755222, - 0.05258611589670181, - -0.08982804417610168, - -0.09698932617902756, - 0.08381138741970062, - -0.004245487041771412, - -0.062168098986148834, - -0.03301975503563881, - 0.06551120430231094, - 0.16978979110717773, - -0.02783021330833435, - -0.0541827455163002, - 0.031541407108306885, - 0.09513824433088303, - 0.0769338458776474, - 0.07380522787570953, - 0.083738312125206, - 0.11341849714517593, - -0.0014829318970441818, - -0.016546843573451042, - 0.05440804362297058, - 0.07229621708393097, - 0.04665745794773102, - 0.014899211004376411, - -0.004094243980944157, - 0.008550656959414482, - -0.03569471091032028, - -0.002781311981379986, - -0.018585097044706345, - -0.035936299711465836, - -0.011547836475074291, - 0.016961177811026573, - 0.025844469666481018, - 0.05370710790157318, - -0.024885138496756554, - 0.05165655538439751, - 0.045758239924907684, - -0.03461221233010292, - 0.07788741588592529, - 0.016297314316034317, - -0.007213803008198738, - 0.03925038501620293, - -0.09498238563537598, - -0.07026637345552444, - 0.028194207698106766, - 0.007803819607943296, - 0.01729004830121994, - 0.0715162456035614, - 0.04602537304162979, - -0.02796456590294838, - 0.12523646652698517, - 0.03793541342020035, - 0.006545787677168846, - 0.011256947182118893, - -0.06981537491083145, - 0.11090090125799179, - 0.07812876999378204, - -0.01100641954690218, - 0.054404400289058685, - -0.04454074800014496, - 0.017416132614016533, - 0.08018931746482849, - -0.14238345623016357, - -0.1061008870601654, - 0.04114401340484619, - 0.030631156638264656, - 0.0026168236508965492, - 0.11518049240112305, - 0.0005010650493204594, - 0.04926629364490509, - 0.09329401701688766, - -0.11661004275083542, - -0.06290889531373978, - 0.0024043903686106205, - 0.06123144179582596, - -0.06810425221920013, - 0.04396265745162964, - 0.0688818171620369, - -0.02121102623641491, - -0.017339549958705902, - 0.05694655701518059, - 0.026569832116365433, - 0.008694757707417011, - -0.007300286553800106, - -0.02416439726948738, - 0.022513214498758316, - -0.019183343276381493, - -0.02127186954021454, - 0.04039110988378525, - 0.040891021490097046, - 0.032756298780441284, - 0.0137447165325284, - -0.04398074746131897, - -0.15867531299591064, - -0.004860861226916313, - 0.06436794251203537, - 0.08836264908313751, - -0.03412599861621857, - -0.047433964908123016, - -0.061883583664894104, - -0.046971842646598816, - 0.025024034082889557, - 0.014585485681891441, - 0.07874025404453278, - -0.004638315178453922, - 0.002713327994570136, - 0.11288897693157196, - 0.006145218852907419, - 0.0037173195742070675, - -0.017560182139277458, - -0.01592506282031536, - 0.009115886874496937, - 0.029176663607358932, - -0.056749127805233, - -0.09481942653656006, - -0.014187329448759556, - 0.019675396382808685, - -0.023463424295186996, - 0.08248897641897202, - 0.03267376869916916, - 0.02932296320796013, - 0.017345400527119637, - -0.03329450264573097, - -0.019061576575040817, - -0.08452650904655457, - -0.06144671142101288, - 0.0008327392861247063, - 0.005450002383440733, - -0.035220760852098465, - 0.0977049171924591, - 0.055239804089069366, - 0.09511526674032211, - -0.031255364418029785, - -0.04565175622701645, - -0.07411039620637894, - 0.0403832271695137, - 0.059165194630622864, - -0.005458163097500801, - 0.01866809092462063, - 0.043018363416194916, - 0.011813637800514698, - 0.056993789970874786, - 0.07636085152626038, - 0.06494415551424026, - -0.01523410715162754, - -0.0013035740703344345, - -0.06747864186763763, - 0.10821281373500824, - 0.09415844082832336, - -0.08186593651771545, - -0.06548730283975601, - -0.02638210356235504, - -0.08318708091974258, - 0.022101102396845818, - -0.0077890669927001, - 0.04065181314945221, - 0.0186697356402874, - -0.02592366747558117, - -0.0911296159029007, - -0.121262326836586, - 0.053475432097911835, - -0.056022629141807556, - -0.010926328599452972, - -0.059962570667266846, - 0.032457493245601654, - 0.07609052211046219, - 0.055883247405290604, - 0.020474789664149284, - -0.024406442418694496, - 0.03677567094564438, - -0.04756082966923714, - -0.0005149353528395295, - 0.09520062804222107, - 0.023777177557349205, - -0.1029689684510231, - 0.026280013844370842, - -0.06712538003921509, - 0.07708365470170975, - -0.04668726399540901, - 0.15436357259750366, - 0.021601703017950058, - -0.06359592825174332, - -0.09732343256473541, - -0.00601994851604104, - -0.04985116422176361, - 0.06155013293027878, - 0.011149303987622261, - 0.05528872460126877, - 0.046844758093357086, - -0.05233580619096756, - 0.09394358843564987, - 0.04739709198474884, - -0.03704778105020523, - -0.07554302364587784, - -0.09069973975419998, - -0.0346965566277504, - 0.04656268283724785, - -0.01053727325052023, - -0.06500908732414246, - -0.002842111513018608, - 0.033416878432035446, - 0.006041018292307854, - 0.0415038987994194, - 0.1435728669166565, - 0.050778940320014954, - -0.11512802541255951 - ] - }, - "p244_098.wav": { - "name": "p244", - "embedding": [ - 0.04837983846664429, - 0.07397189736366272, - -0.015257400460541248, - 0.004226955119520426, - -0.0217236690223217, - 0.04345892369747162, - -0.16690826416015625, - 0.10852667689323425, - -0.017744475975632668, - 0.12906280159950256, - -0.0865454226732254, - 0.09669071435928345, - -0.028869260102510452, - -0.1700381636619568, - 0.008216941729187965, - 0.04893476143479347, - 0.0021732402965426445, - -0.003368159756064415, - -0.02969559282064438, - -0.019953763112425804, - 0.04410291090607643, - 0.03686554357409477, - 0.03652225807309151, - -0.07071204483509064, - 0.018293865025043488, - 0.07157804071903229, - 0.0033935662358999252, - 0.053154293447732925, - -0.005582939367741346, - -0.03573019802570343, - -0.012815169990062714, - 0.09875959903001785, - -0.040312353521585464, - -0.02933599427342415, - 0.02862393856048584, - -0.0016386136412620544, - -0.0300297848880291, - -0.08071736991405487, - 0.021702971309423447, - -0.005472929682582617, - -0.04542834311723709, - 0.07055270671844482, - 0.020278697833418846, - -0.03449685871601105, - 0.031579796224832535, - 0.016280796378850937, - 0.004470291547477245, - -0.04703650623559952, - -0.10625828057527542, - 0.15504711866378784, - 0.05663695186376572, - 0.024519825354218483, - -0.08005991578102112, - -0.025812696665525436, - 0.08329600840806961, - 0.02192092500627041, - -0.06178736314177513, - -0.06989549100399017, - 0.08307104557752609, - 0.1362994909286499, - -0.0526692196726799, - -0.03864138573408127, - 0.058870889246463776, - 0.06797685474157333, - 0.028171837329864502, - 0.07244863361120224, - 0.09931854903697968, - 0.10579518973827362, - 0.011454739607870579, - 0.010721366852521896, - 0.005931943655014038, - 0.06777166575193405, - 0.0060185398906469345, - -0.0027391379699110985, - 0.020594749599695206, - -0.02383052371442318, - -0.037465650588274, - 0.005291081499308348, - -0.028236083686351776, - -0.051930129528045654, - 0.036599185317754745, - -0.0039236522279679775, - 0.01938287355005741, - 0.03994649648666382, - -0.0483199879527092, - 0.029257463291287422, - 0.046966832131147385, - -0.034857410937547684, - 0.09018257260322571, - -0.020626991987228394, - 0.011873006820678711, - 0.033042412251234055, - -0.10080374777317047, - -0.0901232659816742, - 0.0473480150103569, - 0.014334257692098618, - -0.002812618389725685, - 0.06270328909158707, - 0.047439202666282654, - -0.029730264097452164, - 0.14102405309677124, - 0.02559536322951317, - -0.027706529945135117, - 0.034407421946525574, - -0.06206132099032402, - 0.13693787157535553, - 0.10564863681793213, - -0.019914600998163223, - 0.043340325355529785, - -0.07963314652442932, - 0.004914093762636185, - 0.04742511361837387, - -0.12345616519451141, - -0.06824080646038055, - 0.03785701096057892, - 0.021179266273975372, - -0.012078160420060158, - 0.1373988687992096, - 0.00678655132651329, - 0.019382013007998466, - 0.119720458984375, - -0.11037038266658783, - -0.089786596596241, - -0.00984465517103672, - 0.05732637271285057, - -0.07139059156179428, - 0.05901322513818741, - 0.08729320019483566, - -0.01768692582845688, - 0.018650315701961517, - 0.06390143930912018, - -0.005462422035634518, - 0.021591048687696457, - -0.019534112885594368, - -0.017429277300834656, - 0.03725701570510864, - -0.046739932149648666, - -0.03273056447505951, - 0.015863344073295593, - 0.04314257949590683, - 0.05571836978197098, - -0.0027665982488542795, - -0.03711618110537529, - -0.1370280236005783, - -0.003486255183815956, - 0.031079839915037155, - 0.07326079159975052, - -0.03008180484175682, - -0.01804978959262371, - -0.0631231740117073, - -0.05878232419490814, - -0.011977490037679672, - -0.03093951940536499, - 0.07846591621637344, - 0.0038145771250128746, - 0.017129892483353615, - 0.09291879832744598, - 0.019267885014414787, - 0.032569874078035355, - -0.04674635827541351, - -0.04252927005290985, - 0.028227098286151886, - 0.015208818018436432, - -0.06798401474952698, - -0.06236961483955383, - -0.04348182678222656, - 0.024289807304739952, - -0.028147011995315552, - 0.04094310104846954, - 0.04463409632444382, - 0.04146460443735123, - 0.006917104125022888, - -0.07282091677188873, - 0.037571981549263, - -0.06347844749689102, - -0.03339000418782234, - 0.023619018495082855, - 0.011770635843276978, - -0.03156188502907753, - 0.09836532175540924, - 0.010770116932690144, - 0.0384446419775486, - -0.0594913549721241, - -0.043212853372097015, - -0.08475650101900101, - 0.032853178679943085, - 0.07375316321849823, - -0.041910912841558456, - 0.03750850260257721, - 0.024050042033195496, - -0.016666170209646225, - 0.019358089193701744, - 0.06663091480731964, - 0.08477072417736053, - 0.0016039833426475525, - -0.03596211224794388, - -0.04994069039821625, - 0.10153074562549591, - 0.09700529277324677, - -0.052259691059589386, - -0.04572824016213417, - -0.03073439933359623, - -0.08259276300668716, - 0.021225402131676674, - -0.019002296030521393, - -0.010798409581184387, - 0.029618043452501297, - -0.02029169350862503, - -0.10508082062005997, - -0.08839097619056702, - 0.031039409339427948, - -0.06059584766626358, - -0.005972542800009251, - -0.10417849570512772, - 0.0615026131272316, - 0.09850043058395386, - 0.02322964183986187, - -0.03207894787192345, - -0.05575793981552124, - 0.010520120151340961, - -0.044707559049129486, - 0.03450167179107666, - 0.043019164353609085, - 0.05543632060289383, - -0.10299453884363174, - 0.02348225936293602, - -0.07682305574417114, - 0.040648236870765686, - -0.03621683642268181, - 0.10659989714622498, - 0.04252257198095322, - -0.012846319004893303, - -0.09913890808820724, - 0.048100292682647705, - -0.001361750066280365, - 0.049081750214099884, - 0.026375235989689827, - 0.030131394043564796, - 0.07254589349031448, - -0.10557491332292557, - 0.09367348998785019, - 0.038298726081848145, - -0.020881816744804382, - -0.09438943862915039, - -0.050282105803489685, - -0.038230083882808685, - 0.04092351347208023, - -0.0033249109983444214, - -0.07708792388439178, - -0.03910594806075096, - 0.04860986769199371, - 0.009706912562251091, - 0.04692884534597397, - 0.09414441883563995, - 0.02205154299736023, - -0.08977436274290085 - ] - }, - "p244_286.wav": { - "name": "p244", - "embedding": [ - 0.03965359181165695, - 0.08334919065237045, - -0.03466814383864403, - 0.04762045666575432, - -0.05989878624677658, - 0.0547928623855114, - -0.11458101123571396, - 0.09626089781522751, - -0.04710391163825989, - 0.13282105326652527, - -0.0829072892665863, - 0.10916483402252197, - -0.0280429869890213, - -0.18205790221691132, - -0.05485405772924423, - 0.058250319212675095, - -0.071883425116539, - -0.0554778128862381, - -0.060775768011808395, - -0.023007620126008987, - 0.04706360399723053, - 0.053651344031095505, - 0.030458535999059677, - 0.014448348432779312, - 0.012662037275731564, - 0.06297767162322998, - 0.006117767654359341, - 0.04464814066886902, - 0.026059694588184357, - -0.05101980268955231, - -0.0373312383890152, - 0.11033035814762115, - -0.019709400832653046, - 0.017575323581695557, - 0.025407766923308372, - 0.014861850999295712, - 0.027334976941347122, - -0.06484168767929077, - -0.02902950346469879, - 0.012129507958889008, - -0.05121062695980072, - 0.06807412207126617, - 0.035225760191679, - -0.011037054471671581, - 0.03571804612874985, - 0.006440630182623863, - -0.04688020050525665, - -0.055549006909132004, - -0.10779765248298645, - 0.18085426092147827, - 0.08498485386371613, - 0.0013532856246456504, - -0.049499206244945526, - -0.07108765840530396, - 0.1134115681052208, - -0.010858546942472458, - -0.1234833225607872, - -0.05628567934036255, - 0.08164706081151962, - 0.17708179354667664, - -0.024145109578967094, - -0.01859411783516407, - 0.026249539107084274, - 0.1542750895023346, - 0.0541277639567852, - 0.07544867694377899, - 0.06862325966358185, - 0.1094503402709961, - 0.002875420032069087, - 0.00574179133400321, - 0.07665570080280304, - 0.07955022901296616, - 0.05018950626254082, - -0.012543427757918835, - 0.028607051819562912, - 0.000623376457951963, - -0.02043360285460949, - 0.005165505222976208, - -0.03938993066549301, - -0.01378672756254673, - -0.017424678429961205, - 0.0035220100544393063, - 0.0038184314034879208, - 0.005550440400838852, - -0.03064497373998165, - 0.05782994255423546, - 0.035546645522117615, - -0.02710813097655773, - 0.05448796600103378, - 0.046151816844940186, - 0.009554852731525898, - 0.049803655594587326, - -0.0439445897936821, - -0.09304702281951904, - 0.01230230089277029, - 0.01750217378139496, - 0.01815630868077278, - 0.057669252157211304, - 0.039531491696834564, - -0.030741414055228233, - 0.11637061834335327, - 0.028872525319457054, - -0.014081710949540138, - 0.01844765990972519, - -0.09600609540939331, - 0.12252411246299744, - 0.09930967539548874, - -0.01117746438831091, - 0.028271004557609558, - -0.023595262318849564, - 0.0728687047958374, - 0.07677887380123138, - -0.13526326417922974, - -0.06867365539073944, - 0.02532915771007538, - -0.002198990900069475, - -0.0194699726998806, - 0.0965455025434494, - -0.0052479831501841545, - 0.030898435041308403, - 0.10627418011426926, - -0.07768365740776062, - -0.050768714398145676, - -0.033573444932699203, - 0.03934682160615921, - -0.08280032128095627, - 0.037756457924842834, - 0.04382206127047539, - -0.007731298916041851, - -0.005797511897981167, - 0.08098673820495605, - -0.016620200127363205, - -0.004476112779229879, - 0.012059062719345093, - -0.06691382080316544, - 0.041057877242565155, - -0.03441961854696274, - -0.009010056033730507, - 0.06690674275159836, - 0.04378747195005417, - 0.04359416291117668, - -0.011721762828528881, - -0.03514957055449486, - -0.11276938766241074, - 0.016450412571430206, - 0.03223695605993271, - 0.07436487078666687, - 0.00576063571497798, - -0.005503570195287466, - -0.04481299966573715, - -0.0670711025595665, - 0.04269587993621826, - -0.025289416313171387, - 0.0870809555053711, - -0.02201303094625473, - -0.019382236525416374, - 0.10005062073469162, - -0.008835656568408012, - -0.013770369812846184, - -0.040185824036598206, - -0.014881419949233532, - 0.021023428067564964, - 0.039408572018146515, - -0.07216029614210129, - -0.06286806613206863, - 0.0189787857234478, - 0.034160830080509186, - -0.01696130447089672, - 0.03892875835299492, - 0.029355008155107498, - 0.00521048903465271, - 0.027820482850074768, - -0.06123510003089905, - 0.008841984905302525, - -0.09887248277664185, - -0.04599880427122116, - -0.0002470402978360653, - -0.04383402317762375, - -0.015362843871116638, - 0.07556407153606415, - 0.02148246578872204, - 0.0204310342669487, - -0.003336530877277255, - -0.09509699046611786, - -0.07216265797615051, - 0.07253819704055786, - 0.059912629425525665, - 0.021152537316083908, - 0.05105268582701683, - 0.05847620964050293, - -0.014046954922378063, - 0.0504198893904686, - 0.04916255176067352, - 0.10716527700424194, - -0.015229424461722374, - 1.4662742614746094e-05, - -0.06413403153419495, - 0.08112047612667084, - 0.06648196280002594, - -0.09531855583190918, - -0.06758002936840057, - -0.03555349260568619, - -0.06101922690868378, - 0.04711758717894554, - -0.02551228553056717, - 0.0076766228303313255, - 0.0366310216486454, - -0.007850791327655315, - -0.11808868497610092, - -0.08245821297168732, - 0.09915246069431305, - -0.07534398883581161, - -0.0184329766780138, - -0.0680866613984108, - 0.029651332646608353, - 0.09529390186071396, - 0.04011979699134827, - -0.02150655910372734, - 0.016918279230594635, - 0.05355050414800644, - -0.0731503963470459, - -0.00512725068256259, - 0.04470835253596306, - 0.01859690062701702, - -0.10760574042797089, - -0.008668920956552029, - -0.09228496998548508, - 0.055723294615745544, - -0.05420416593551636, - 0.14775095880031586, - 0.00951094925403595, - -0.043959733098745346, - -0.08135919272899628, - 0.05623441934585571, - -0.03840135782957077, - 0.06650450825691223, - 0.05323943495750427, - 0.06078232824802399, - 0.03487376868724823, - -0.07409492135047913, - 0.12832532823085785, - 0.054068438708782196, - -0.04190947860479355, - -0.07186160236597061, - -0.03206105902791023, - -0.03780420124530792, - 0.022655298933386803, - 0.020889680832624435, - -0.07102075219154358, - -0.008038150146603584, - 0.021124642342329025, - -0.029339898377656937, - 0.07949034869670868, - 0.13116487860679626, - 0.08380748331546783, - -0.08898495137691498 - ] - }, - "p244_145.wav": { - "name": "p244", - "embedding": [ - 0.000866294838488102, - 0.0798451155424118, - -0.013673443347215652, - 0.020723972469568253, - -0.06435421854257584, - 0.013350107707083225, - -0.12047069519758224, - 0.10891728103160858, - 0.016164865344762802, - 0.1136094480752945, - -0.06224357336759567, - 0.06195935606956482, - -0.058374445885419846, - -0.15152528882026672, - 0.055977534502744675, - 0.04750707745552063, - 0.021167410537600517, - -0.031977105885744095, - -0.04057375714182854, - -0.06225855275988579, - 0.004077243618667126, - 0.03531269729137421, - 0.030513400211930275, - -0.038371842354536057, - 0.023270083591341972, - 0.07396102696657181, - -0.02587416023015976, - -0.010700749233365059, - -0.04742564633488655, - -0.009029113687574863, - -0.05130244418978691, - 0.09797510504722595, - -0.06502918899059296, - -0.04335843399167061, - 0.04531361535191536, - -0.01698923669755459, - -0.02718903310596943, - -0.014191309921443462, - 0.005399320274591446, - 0.002884971909224987, - -0.0742228627204895, - 0.0817498117685318, - 0.03162350505590439, - 0.005313806235790253, - 0.03373723477125168, - 0.022291768342256546, - -0.00377840967848897, - -0.0063735488802194595, - -0.08136189728975296, - 0.11646412312984467, - 0.061205849051475525, - -0.010834423825144768, - -0.04973047599196434, - -0.02657543309032917, - 0.07113885879516602, - 0.005776381120085716, - -0.07698143273591995, - -0.0701075941324234, - 0.08882682025432587, - 0.06968583911657333, - -0.04100600630044937, - -0.020746076479554176, - 0.024267567321658134, - 0.07723593711853027, - 0.043395187705755234, - 0.08277633041143417, - 0.03791458159685135, - 0.11603325605392456, - -0.04079378396272659, - -0.008615761063992977, - 0.06929008662700653, - 0.01784130558371544, - 0.04518788680434227, - -0.03668772056698799, - -0.0043637314811348915, - -0.03244310989975929, - -0.007317100651562214, - -0.013275925070047379, - -0.0024896259419620037, - -0.041739773005247116, - 0.002316845115274191, - -0.05241987481713295, - -0.0029617012478411198, - -0.004984825849533081, - -0.00041303783655166626, - 0.01132383942604065, - 0.13004425168037415, - 0.002126149833202362, - 0.11696454882621765, - 0.014218205586075783, - -0.019793100655078888, - 0.07654641568660736, - -0.10456772148609161, - 0.024764958769083023, - 0.01925661787390709, - -0.026303928345441818, - 0.02189370058476925, - 0.07398516684770584, - 0.04710300266742706, - -0.013466921634972095, - 0.12686243653297424, - 0.020702531561255455, - 0.013879034668207169, - 0.04477982968091965, - -0.10073322802782059, - 0.13517625629901886, - 0.06391899287700653, - -0.060432784259319305, - 0.026656776666641235, - -0.016443196684122086, - 0.02790289930999279, - 0.026460178196430206, - -0.0722956657409668, - -0.03719186782836914, - -0.019390523433685303, - -0.0018782955594360828, - -0.05677981674671173, - 0.10295814275741577, - 0.006859760731458664, - -0.008002869784832, - 0.13616155087947845, - -0.10636334121227264, - -0.09849551320075989, - 0.006072650663554668, - 0.021749399602413177, - -0.12145094573497772, - 0.02007569745182991, - 0.07979589700698853, - 3.603869117796421e-05, - 0.05640546232461929, - 0.09385153651237488, - 0.010712558403611183, - 0.026797764003276825, - -0.016875602304935455, - -0.021045895293354988, - 0.012506329454481602, - 0.011942090466618538, - 0.0034771799109876156, - 0.053242526948451996, - 0.022998377680778503, - 0.08401992917060852, - -0.025539761409163475, - 0.028318075463175774, - -0.09664975851774216, - 0.027834001928567886, - 0.02957802824676037, - 0.04041682183742523, - -0.028063789010047913, - 0.018232114613056183, - -0.0432368703186512, - -0.10172879695892334, - 0.030729077756404877, - 0.01185903511941433, - 0.056991416960954666, - -0.04150890186429024, - -0.013196945190429688, - 0.14347302913665771, - 0.0668364018201828, - 0.0015882495790719986, - -0.07713723927736282, - -0.046904057264328, - 0.011026029475033283, - 0.05249374359846115, - -0.12046463787555695, - -0.07032088935375214, - -0.05698117986321449, - 0.041615184396505356, - 0.009288751520216465, - 0.0559646338224411, - 0.057193122804164886, - 0.03295191749930382, - 0.0011447503929957747, - -0.03908756002783775, - 0.03927215561270714, - -0.001677151769399643, - -0.039620012044906616, - -0.04620375484228134, - -0.026760349050164223, - -0.04354633390903473, - 0.08639715611934662, - -0.013604691252112389, - 0.02473180741071701, - -0.040581025183200836, - -0.05611288547515869, - -0.09409336745738983, - 0.004870757460594177, - 0.03614380210638046, - -0.06562957167625427, - 0.038515910506248474, - 0.06316792964935303, - -0.0866309329867363, - 0.0017547979950904846, - 0.05832800269126892, - 0.12391996383666992, - -0.05042435601353645, - 0.03219211846590042, - -0.05329654738306999, - 0.06256245821714401, - 0.07453096657991409, - -0.057908717542886734, - -0.05597337335348129, - -0.058611754328012466, - -0.036907948553562164, - 0.02614029310643673, - -0.02483871951699257, - -0.01442926935851574, - 0.005469983443617821, - 0.0015806432347744703, - -0.02993520349264145, - -0.10144856572151184, - 0.07258644700050354, - -0.020328521728515625, - -0.009655105881392956, - -0.10214070230722427, - 0.04523385316133499, - -0.001953795552253723, - 0.0534239187836647, - -0.04590844362974167, - -0.004398705437779427, - 0.043311767280101776, - 0.009254002943634987, - 0.06503857672214508, - 0.10150010883808136, - 0.0621287077665329, - -0.04731246083974838, - -0.05667645111680031, - -0.08424383401870728, - 0.08999298512935638, - -0.0075050294399261475, - 0.10175660997629166, - 0.03155006468296051, - -0.008158411830663681, - -0.046788379549980164, - 0.01786966808140278, - 0.004166973754763603, - 0.04085596650838852, - 0.06444135308265686, - 0.04867866262793541, - 0.04261824116110802, - 0.0021858741529285908, - 0.0928221046924591, - 0.03612302988767624, - -0.02014216221868992, - -0.04622621089220047, - -0.0173117034137249, - -0.06618103384971619, - 0.02471117675304413, - 0.03890076279640198, - -0.1259387731552124, - 0.016684317961335182, - 0.031813181936740875, - -0.008885195478796959, - 0.05564308911561966, - 0.09895449131727219, - 0.08597353100776672, - -0.08025602996349335 - ] - }, - "p244_352.wav": { - "name": "p244", - "embedding": [ - 0.027903886511921883, - 0.11415190249681473, - -0.04790414497256279, - 0.026707950979471207, - -0.018786540254950523, - 0.06470722705125809, - -0.1429920345544815, - 0.10831661522388458, - -0.034385357052087784, - 0.14468461275100708, - -0.057334356009960175, - 0.09034624695777893, - -0.05191733315587044, - -0.15536558628082275, - -0.00742834759876132, - 0.06274017691612244, - -0.02650057151913643, - -0.019660096615552902, - -0.03253774717450142, - 0.01039358600974083, - 0.022948743775486946, - 0.03404460847377777, - 0.01648814231157303, - -0.04296881705522537, - 0.01888411119580269, - 0.07106846570968628, - -0.002423522062599659, - 0.04482313245534897, - -0.014000087045133114, - -0.02699931338429451, - -0.028906112536787987, - 0.09947431087493896, - -0.05262455344200134, - 0.011102014221251011, - 0.0380474217236042, - 0.021925456821918488, - -0.022539017722010612, - -0.055622175335884094, - 0.03062969446182251, - -0.015329653397202492, - -0.05330852046608925, - 0.06953661143779755, - 0.02011418156325817, - -0.022405199706554413, - 0.03537743538618088, - 0.0013935146853327751, - 0.0005968024488538504, - -0.036983244121074677, - -0.0984746664762497, - 0.16575849056243896, - 0.09433721005916595, - 0.0035479580983519554, - -0.0513468012213707, - -0.05323337763547897, - 0.07536119222640991, - 0.02783386968076229, - -0.0995003879070282, - -0.07364583760499954, - 0.08300929516553879, - 0.15202495455741882, - -0.013569614849984646, - -0.021898936480283737, - 0.03672587871551514, - 0.11170487105846405, - 0.030833197757601738, - 0.0919969230890274, - 0.06481793522834778, - 0.09096160531044006, - 0.020300161093473434, - -0.002672998933121562, - 0.04485250264406204, - 0.04836146533489227, - 0.036209188401699066, - 0.00044649187475442886, - 0.02045116201043129, - -0.034408390522003174, - -0.03879784047603607, - 0.00043190945871174335, - -0.01596132293343544, - -0.06398924440145493, - -0.021290134638547897, - 3.605196252465248e-05, - 0.00096085574477911, - 0.03985308110713959, - 0.003571564331650734, - 0.022082265466451645, - 0.047020189464092255, - -0.0471661351621151, - 0.07490761578083038, - 0.020649980753660202, - -0.001139187254011631, - 0.03662538155913353, - -0.07390881329774857, - -0.06005021929740906, - 0.027182593941688538, - 0.015231535769999027, - -0.0006300150416791439, - 0.05722701549530029, - 0.03306960314512253, - -0.006450926885008812, - 0.11368940770626068, - 0.004762811586260796, - -0.004556384868919849, - 0.0221753790974617, - -0.07366780191659927, - 0.1262688785791397, - 0.06650125235319138, - -0.015598105266690254, - 0.03341161087155342, - -0.05215980112552643, - 0.0076317209750413895, - 0.06491941958665848, - -0.12095680832862854, - -0.07196345180273056, - 0.0449582040309906, - 0.017957298085093498, - -0.028348425403237343, - 0.11951908469200134, - 0.03818431496620178, - 0.014776283875107765, - 0.11245018988847733, - -0.11389647424221039, - -0.09117236733436584, - -0.030420556664466858, - 0.07737965881824493, - -0.06443020701408386, - 0.04842883348464966, - 0.08554523438215256, - -0.015290562994778156, - 0.005104021169245243, - 0.0626864954829216, - 0.006563291884958744, - 0.0270241592079401, - 0.010510570369660854, - -0.03985866159200668, - 0.014187393710017204, - -0.05674777925014496, - -0.0056015849113464355, - 0.018129663541913033, - 0.01700945943593979, - 0.055413588881492615, - -0.013049107044935226, - -0.03319576382637024, - -0.11505954712629318, - -0.016973815858364105, - 0.06654006242752075, - 0.07067476212978363, - -0.023813635110855103, - -0.03125523403286934, - -0.03188708424568176, - -0.06084626168012619, - -0.004812777973711491, - -0.03345659747719765, - 0.08851666748523712, - -0.014804107137024403, - -0.010163087397813797, - 0.11573286354541779, - 0.0019109472632408142, - -0.0005967402830719948, - -0.06391730904579163, - -0.01619056984782219, - 0.02532208524644375, - 0.032463036477565765, - -0.08146776258945465, - -0.07911534607410431, - -0.008213222026824951, - 0.024202415719628334, - 0.004798787645995617, - 0.06354346871376038, - 0.052032820880413055, - 0.0353596955537796, - -0.0008856877684593201, - -0.051867205649614334, - 0.006956511177122593, - -0.0706096887588501, - -0.04703080654144287, - -0.015954166650772095, - -0.030352376401424408, - -0.025803562253713608, - 0.0980248749256134, - 0.02150784246623516, - 0.04114314913749695, - -0.02575737237930298, - -0.04563649743795395, - -0.07864087074995041, - 0.055667150765657425, - 0.0779569000005722, - -0.03978807479143143, - 0.036223724484443665, - 0.05191851779818535, - -0.03555375337600708, - 0.007482793182134628, - 0.06534615904092789, - 0.09108556807041168, - -0.01974594220519066, - -0.025349974632263184, - -0.0822688415646553, - 0.06946583837270737, - 0.10867691040039062, - -0.09719139337539673, - -0.03970339894294739, - -0.03347230330109596, - -0.06146158277988434, - 0.007929987274110317, - -0.0631377249956131, - 0.01729501783847809, - 0.021671714261174202, - -0.02958552911877632, - -0.09739544987678528, - -0.1294325888156891, - 0.06472821533679962, - -0.06674446165561676, - -0.001584033714607358, - -0.05773462355136871, - 0.0472959503531456, - 0.06292291730642319, - 0.0546550378203392, - -0.043937746435403824, - 0.006834802217781544, - 0.04036595672369003, - -0.03309433162212372, - 0.039026204496622086, - 0.06429195404052734, - 0.03936392813920975, - -0.11006450653076172, - 0.024218343198299408, - -0.06988352537155151, - 0.07901452481746674, - -0.06447377800941467, - 0.15054550766944885, - 0.013008290901780128, - -0.03672163188457489, - -0.1127423346042633, - 0.03657326474785805, - -0.02566785365343094, - 0.03327825292944908, - 0.00048699136823415756, - 0.050732336938381195, - 0.04640598222613335, - -0.060877859592437744, - 0.11389008909463882, - 0.03285582736134529, - 0.007169988006353378, - -0.07271468639373779, - -0.061879776418209076, - -0.05909551680088043, - 0.03964494913816452, - 0.004095983691513538, - -0.07776191830635071, - -0.019568875432014465, - 0.02665437012910843, - 0.013542751781642437, - 0.07008476555347443, - 0.12661629915237427, - 0.056342367082834244, - -0.1183590292930603 - ] - }, - "p244_008.wav": { - "name": "p244", - "embedding": [ - 0.039513878524303436, - 0.07909629493951797, - -0.038770534098148346, - 0.0327041856944561, - -0.05641026049852371, - 0.014332274906337261, - -0.12009327858686447, - 0.10119545459747314, - -0.018728960305452347, - 0.10527503490447998, - -0.06064216420054436, - 0.12288598716259003, - -0.03122006729245186, - -0.13796360790729523, - -0.01639382541179657, - 0.0637514516711235, - -0.038995955139398575, - -0.046994589269161224, - -0.009234906174242496, - -0.03133096173405647, - 0.03958454728126526, - 0.04382617771625519, - 0.03852836415171623, - 0.007387572433799505, - 0.018128884956240654, - 0.0705672949552536, - 0.005204600282013416, - 0.028237273916602135, - -0.0016749268397688866, - -0.04088608920574188, - -0.012447429820895195, - 0.06859572976827621, - -0.01795373111963272, - 0.01633540913462639, - 0.029273319989442825, - 0.0016611374448984861, - 0.013443110510706902, - -0.049109604209661484, - -0.01720798760652542, - 0.006688239052891731, - -0.040972210466861725, - 0.07344033569097519, - 0.028256084769964218, - -0.03818638250231743, - 0.020737024024128914, - 0.007735445164144039, - -0.03072717785835266, - -0.02640649303793907, - -0.10358743369579315, - 0.15726891160011292, - 0.05397598445415497, - 0.023792622610926628, - -0.06669197976589203, - -0.04396532103419304, - 0.09702610224485397, - -0.010626784525811672, - -0.08489739149808884, - -0.03304330259561539, - 0.04935958981513977, - 0.1380203664302826, - -0.02528848499059677, - -0.040924470871686935, - 0.04238341003656387, - 0.11290633678436279, - 0.059677790850400925, - 0.0510471872985363, - 0.07893804460763931, - 0.10233412683010101, - -0.015668055042624474, - -0.010304788127541542, - 0.056144773960113525, - 0.09653525054454803, - 0.05569203943014145, - 0.01034574955701828, - 0.00625847652554512, - 0.00014209530490916222, - -0.031023502349853516, - -0.011181945912539959, - -0.021251436322927475, - -0.044935740530490875, - -0.041518982499837875, - -0.00843728706240654, - 0.022131910547614098, - 0.019020933657884598, - -0.006263173185288906, - 0.0436544269323349, - 0.06281575560569763, - -0.042734041810035706, - 0.05449814349412918, - 0.026043463498353958, - -0.01034363079816103, - 0.04628857597708702, - -0.07016055285930634, - -0.06909722834825516, - 0.012961129657924175, - 0.018828894942998886, - 0.04907117411494255, - 0.05535848066210747, - 0.04460000991821289, - -0.0017285272479057312, - 0.10297612845897675, - 0.026457324624061584, - 0.008337809704244137, - -0.006018521264195442, - -0.07360824942588806, - 0.11333294212818146, - 0.09616672247648239, - -0.03373955935239792, - 0.04212629050016403, - -0.04265093803405762, - 0.03882293030619621, - 0.04288604483008385, - -0.10755352675914764, - -0.07527566701173782, - 0.006028910167515278, - 0.01955416239798069, - -5.770226562162861e-05, - 0.09991393983364105, - 0.007132283877581358, - 0.05472737178206444, - 0.09964706748723984, - -0.08907028287649155, - -0.06829674541950226, - -0.028726322576403618, - 0.05415859818458557, - -0.06862740218639374, - 0.05374690890312195, - 0.07115484774112701, - 0.007600478362292051, - 0.013574568554759026, - 0.06500902771949768, - 0.00834614597260952, - 0.018878545612096786, - -0.009039871394634247, - -0.04007747396826744, - 0.02418578416109085, - -0.030702337622642517, - -0.00492717232555151, - 0.06748516857624054, - 0.028090212494134903, - 0.057854555547237396, - 0.0038598976098001003, - -0.012338299304246902, - -0.1263551414012909, - 0.016844825819134712, - 0.05090313404798508, - 0.05546088144183159, - -0.021372433751821518, - -0.04049351438879967, - -0.033505067229270935, - -0.05648123845458031, - -0.0021226233802735806, - -0.005176561418920755, - 0.06427891552448273, - -0.022564534097909927, - 0.014879985712468624, - 0.10262786597013474, - 0.013848081231117249, - -0.015709880739450455, - -0.035439178347587585, - -0.020820967853069305, - 0.006157045718282461, - 0.04766130447387695, - -0.0785871297121048, - -0.09080027043819427, - -0.018941668793559074, - 0.04475794732570648, - -0.011631695553660393, - 0.05054289102554321, - 0.037730228155851364, - 0.010627719573676586, - 0.007027782499790192, - -0.03486822545528412, - 0.013682324439287186, - -0.07636146247386932, - -0.0688614696264267, - -0.0037491396069526672, - -0.016645360738039017, - -0.030306901782751083, - 0.07677282392978668, - 0.033976390957832336, - 0.07495146244764328, - -0.024683427065610886, - -0.06513631343841553, - -0.0777592808008194, - 0.04816911742091179, - 0.03779111057519913, - -0.021404629573225975, - 0.033410802483558655, - 0.045552462339401245, - -0.02002175897359848, - 0.028809700161218643, - 0.04019254446029663, - 0.08596429228782654, - -0.04565665125846863, - -0.005720173008739948, - -0.06268956512212753, - 0.07553169131278992, - 0.09040579199790955, - -0.08701770752668381, - -0.05009842664003372, - -0.060127004981040955, - -0.05938676744699478, - 0.02922808937728405, - -0.025477472692728043, - 0.009625066071748734, - 0.01655624806880951, - -0.015479977242648602, - -0.11396532505750656, - -0.09799760580062866, - 0.061736732721328735, - -0.04954129084944725, - -0.0004789404047187418, - -0.06177568435668945, - 0.03774429112672806, - 0.07778225839138031, - 0.024979565292596817, - -0.014359983615577221, - 0.003015118418261409, - 0.022015955299139023, - -0.031146174296736717, - 0.010306322947144508, - 0.06568862497806549, - 0.05681601166725159, - -0.06998932361602783, - -0.023770418018102646, - -0.0756036639213562, - 0.05078805610537529, - -0.03409186005592346, - 0.13871105015277863, - 0.00909865740686655, - -0.053936123847961426, - -0.08164601027965546, - 0.014933167956769466, - -0.022704225033521652, - 0.0662720799446106, - 0.031069371849298477, - 0.039036720991134644, - 0.03828074783086777, - -0.06260357797145844, - 0.10861402750015259, - 0.06348785758018494, - -0.03521537780761719, - -0.07163076102733612, - -0.05024534463882446, - -0.033390264958143234, - 0.03413733094930649, - -0.0021868175826966763, - -0.052751123905181885, - 0.0025727166794240475, - 0.00847792997956276, - 0.0023390576243400574, - 0.07736755907535553, - 0.11673449724912643, - 0.06847669929265976, - -0.08555512875318527 - ] - }, - "p244_204.wav": { - "name": "p244", - "embedding": [ - 0.021620549261569977, - 0.07910554111003876, - -0.029602771624922752, - 0.005245045758783817, - -0.07521495968103409, - 0.02685179002583027, - -0.12578876316547394, - 0.15610788762569427, - -0.022922364994883537, - 0.14713451266288757, - -0.08117420971393585, - 0.1377536952495575, - -0.03466911241412163, - -0.18588680028915405, - 0.02607247792184353, - 0.03931224346160889, - 0.02169107086956501, - -0.016864748671650887, - -0.044106971472501755, - -0.045448750257492065, - 0.03236180171370506, - 0.03707735612988472, - 0.0025132019072771072, - -0.020725637674331665, - 0.03817856311798096, - 0.08177869021892548, - -0.024342479184269905, - -0.0037554181180894375, - -0.016854457557201385, - -0.04801994189620018, - -0.04592582955956459, - 0.08890283852815628, - -0.0953814685344696, - -0.011339335702359676, - 0.05178200826048851, - -0.049624595791101456, - -0.04213443771004677, - -0.03400759398937225, - -0.018996406346559525, - 0.015408488921821117, - -0.06682349741458893, - 0.07053438574075699, - 0.004916166886687279, - 0.005188826471567154, - 0.06428449600934982, - 0.04866940528154373, - 0.005172084551304579, - -0.03555886447429657, - -0.0917367935180664, - 0.12154380232095718, - 0.05958052724599838, - -0.013892536982893944, - -0.07621726393699646, - -0.03925538808107376, - 0.09524309635162354, - -0.006158028729259968, - -0.07950548082590103, - -0.06647326052188873, - 0.06954745948314667, - 0.09595178812742233, - -0.030090106651186943, - -0.0493813194334507, - 0.02632339671254158, - 0.07273902744054794, - 0.06166967377066612, - 0.08624575287103653, - 0.07580458372831345, - 0.10825874656438828, - -0.040398336946964264, - 0.02396935410797596, - 0.04443128779530525, - 0.03894231095910072, - 0.047293126583099365, - -0.054341211915016174, - 0.013147315010428429, - 0.01396704651415348, - -0.0033481356222182512, - -0.028694532811641693, - -0.02588217332959175, - -0.010961364023387432, - -0.010297078639268875, - 0.0047026327811181545, - -0.0010811975225806236, - 0.0031684867572039366, - -0.03889324143528938, - 0.05109832063317299, - 0.08500693738460541, - -0.0009861905127763748, - 0.09225407242774963, - 0.010104137472808361, - -0.022546740248799324, - 0.07191568613052368, - -0.14134357869625092, - -0.04597463831305504, - 0.03677152097225189, - -0.022138582542538643, - -0.02792692743241787, - 0.0762842670083046, - 0.05191322788596153, - -0.000995749607682228, - 0.14354124665260315, - 0.04801831394433975, - -0.00037388806231319904, - 0.03427601605653763, - -0.08139047026634216, - 0.13231946527957916, - 0.08073902130126953, - -0.05076228082180023, - 0.0578991174697876, - -0.04984896630048752, - 0.05862916260957718, - 0.025643032044172287, - -0.11973633617162704, - -0.0525621697306633, - 0.0032067110296338797, - -0.02235792577266693, - -0.057501956820487976, - 0.1392737627029419, - -0.027735510841012, - 0.048089221119880676, - 0.11955547332763672, - -0.0974925085902214, - -0.06753597408533096, - -0.0023316359147429466, - 0.037860386073589325, - -0.09910393506288528, - 0.07272092252969742, - 0.05784321203827858, - 0.002411584137007594, - 0.07156773656606674, - 0.10577785968780518, - -0.006294758524745703, - 0.015425491146743298, - -0.0051282658241689205, - -0.019897883757948875, - 0.01092411670833826, - 0.0016404323978349566, - -0.013521437533199787, - 0.0346493162214756, - 0.033270370215177536, - 0.0848134309053421, - -0.023158662021160126, - 0.016552351415157318, - -0.09683579206466675, - 0.039614275097846985, - 0.025033194571733475, - 0.06819972395896912, - -0.016517875716090202, - -0.0012368502793833613, - -0.05667738616466522, - -0.0866817981004715, - -0.020541131496429443, - 0.0038866258691996336, - 0.08593631535768509, - -0.045914459973573685, - 0.0413024015724659, - 0.12665170431137085, - 0.07821060717105865, - 0.00013071556168142706, - -0.05476207286119461, - -0.05856912583112717, - -0.031504206359386444, - 0.07027675211429596, - -0.0809619277715683, - -0.07815688103437424, - -0.04652511700987816, - 0.037681177258491516, - -0.007138380780816078, - 0.10270943492650986, - 0.058885350823402405, - 0.027535097673535347, - 0.027343537658452988, - -0.103610098361969, - 0.019108954817056656, - -0.06506158411502838, - -0.04881369695067406, - -0.044671546667814255, - -0.021028753370046616, - -0.054578594863414764, - 0.08287395536899567, - -0.005928212311118841, - 0.0646088719367981, - -0.03127380833029747, - -0.0658736526966095, - -0.09443346410989761, - 0.039175309240818024, - 0.05237019434571266, - -0.058106910437345505, - 0.03092692419886589, - 0.06382396817207336, - -0.05578877404332161, - 0.036983609199523926, - 0.08623147755861282, - 0.09601902961730957, - -0.02972327545285225, - 0.06982023268938065, - -0.049849867820739746, - 0.1053542047739029, - 0.07236816734075546, - -0.07546801120042801, - -0.08463121950626373, - -0.03607209399342537, - -0.07658535242080688, - 0.045290689915418625, - -0.013076988980174065, - 0.0059357136487960815, - 0.029451463371515274, - 0.015801111236214638, - -0.06129278242588043, - -0.06774111837148666, - 0.06390300393104553, - -0.0494936965405941, - 0.005540984217077494, - -0.10533817112445831, - 0.03350371867418289, - 0.08554068207740784, - 0.043537333607673645, - -0.035782717168331146, - -0.04976189136505127, - 0.047483887523412704, - 0.022914495319128036, - 0.037533048540353775, - 0.07122839987277985, - 0.05834416672587395, - -0.07703907787799835, - -0.027631178498268127, - -0.057438384741544724, - 0.08356929570436478, - -0.036973875015974045, - 0.1234494298696518, - 0.022361617535352707, - -0.030692601576447487, - -0.07844868302345276, - 0.04921601340174675, - 0.016829973086714745, - 0.0415031723678112, - 0.031282126903533936, - 0.06980385631322861, - 0.054031457751989365, - -0.044957246631383896, - 0.1195613369345665, - 0.033129509538412094, - -0.03471432998776436, - -0.04458899423480034, - -0.060265179723501205, - -0.04377664253115654, - 0.014578146860003471, - 0.049820538610219955, - -0.12224040925502777, - 0.002240369562059641, - 0.019118357449769974, - -0.009389598853886127, - 0.06701179593801498, - 0.12330880016088486, - 0.08151233941316605, - -0.134560689330101 - ] - }, - "p244_081.wav": { - "name": "p244", - "embedding": [ - 0.03213370591402054, - 0.0979895368218422, - -0.012609624303877354, - 0.048052191734313965, - -0.0562005490064621, - 0.07871226966381073, - -0.12662386894226074, - 0.12949472665786743, - -0.04685886204242706, - 0.12473385781049728, - -0.07641522586345673, - 0.10852976143360138, - -0.025535428896546364, - -0.19434329867362976, - -0.04311336949467659, - 0.05754229426383972, - -0.032044123858213425, - -0.0032568282913416624, - -0.03204956278204918, - 0.002665461041033268, - 0.043540313839912415, - 0.026270674541592598, - 0.03089885041117668, - -0.010260563343763351, - 0.022191310301423073, - 0.04829544946551323, - 0.004813422914594412, - 0.06099959462881088, - 0.03897271677851677, - -0.018686043098568916, - -0.0417955107986927, - 0.1457860767841339, - -0.05086737126111984, - 0.02043311670422554, - 0.06907306611537933, - 0.0006892679375596344, - -0.02304399572312832, - -0.03535531461238861, - 0.0022397604770958424, - -0.0036825707647949457, - -0.04613088443875313, - 0.06442543119192123, - 0.05690540745854378, - 0.019137680530548096, - 0.05947133153676987, - 0.021372394636273384, - -0.03565455973148346, - -0.03948509320616722, - -0.1022753119468689, - 0.15575294196605682, - 0.04468391463160515, - -0.021333055570721626, - -0.0652478039264679, - -0.060193486511707306, - 0.10389100015163422, - 0.0026625385507941246, - -0.13639198243618011, - -0.044928062707185745, - 0.11714807152748108, - 0.1639849692583084, - -0.009660583920776844, - -0.025412529706954956, - -0.002576845698058605, - 0.12975521385669708, - 0.037616174668073654, - 0.11934775114059448, - 0.0599881149828434, - 0.11855623871088028, - 0.015588351525366306, - 0.03530234098434448, - 0.06565146148204803, - 0.04178553447127342, - 0.007349045947194099, - -0.028251519426703453, - 0.029389014467597008, - -0.012512795627117157, - 0.005195807199925184, - 0.03841552138328552, - -0.017168011516332626, - -0.008922298438847065, - -0.006632693111896515, - 0.005583820398896933, - -0.0034381363075226545, - 0.005803799722343683, - -0.03664793819189072, - 0.0656885877251625, - 0.024731013923883438, - 0.02787303738296032, - 0.07271914184093475, - 0.06153174489736557, - -0.002128938678652048, - 0.05529940873384476, - -0.05544855073094368, - -0.09829540550708771, - 0.013611490838229656, - -0.002596162725239992, - 0.03281403332948685, - 0.06703225523233414, - 0.022330395877361298, - -0.007098186761140823, - 0.10069988667964935, - 0.06033281981945038, - -0.010919515043497086, - 0.05001094564795494, - -0.09959090501070023, - 0.13427840173244476, - 0.06541270017623901, - 0.01142967026680708, - 0.05221201851963997, - -0.04324822872877121, - 0.08778797835111618, - 0.07631527632474899, - -0.1288968026638031, - -0.050719600170850754, - 0.04300855100154877, - 0.0260040033608675, - -0.025349507108330727, - 0.12612482905387878, - -0.007611442357301712, - -0.0021340330131351948, - 0.10850021988153458, - -0.09003597497940063, - -0.06333781778812408, - -0.027979085221886635, - 0.031626224517822266, - -0.08314096927642822, - 0.03670233115553856, - 0.030735015869140625, - -0.03317011892795563, - -0.009088266640901566, - 0.08486603200435638, - -0.008403741754591465, - 0.020784305408596992, - 0.03625890985131264, - -0.04986405000090599, - 0.049977947026491165, - -0.02965582348406315, - 0.02761470340192318, - 0.055096790194511414, - 0.044264595955610275, - 0.05940474569797516, - -0.003939729183912277, - -0.032343845814466476, - -0.10818034410476685, - 0.0023454930633306503, - 0.05126441270112991, - 0.06651972234249115, - -0.011429212056100368, - -0.019640181213617325, - -0.036482539027929306, - -0.08061010390520096, - 0.0513400174677372, - -0.009244145825505257, - 0.09090688079595566, - -0.0151980584487319, - -0.03436033055186272, - 0.08398816734552383, - 0.013349571265280247, - 0.007005738560110331, - -0.0803329199552536, - -0.05062820017337799, - 0.02000533975660801, - 0.033226415514945984, - -0.11413382738828659, - -0.0446985587477684, - 0.01275942474603653, - 0.028429506346583366, - -0.031280722469091415, - 0.011581659317016602, - 0.055851973593235016, - 0.008818534202873707, - 0.05434439703822136, - -0.05087029188871384, - 0.01276406180113554, - -0.10937576740980148, - -0.0671301856637001, - -0.01922297477722168, - -0.008153161965310574, - -0.010482192039489746, - 0.08286858350038528, - 0.009223862551152706, - 0.021133888512849808, - 0.01188607607036829, - -0.064598947763443, - -0.06657154113054276, - 0.07595282047986984, - 0.06222962588071823, - 0.01599958725273609, - 0.08065498620271683, - 0.03951767086982727, - -0.06793556362390518, - 0.06399747729301453, - 0.05769545957446098, - 0.10521434992551804, - -0.03498142957687378, - 0.0023059917148202658, - -0.08800952136516571, - 0.06736696511507034, - 0.09266314655542374, - -0.11013470590114594, - -0.09424010664224625, - -0.01322482991963625, - -0.04873482510447502, - 0.039785467088222504, - -0.050593774765729904, - -0.0182709489017725, - 0.03194830194115639, - -0.009394100867211819, - -0.09513884782791138, - -0.096921905875206, - 0.07279365509748459, - -0.08087120205163956, - -0.013512670062482357, - -0.07499399781227112, - 0.05270504951477051, - 0.08768204599618912, - 0.01209377869963646, - -0.05245205760002136, - -0.0009882780723273754, - 0.057265426963567734, - -0.07470221072435379, - -0.019615644589066505, - 0.030566250905394554, - 0.0185557771474123, - -0.09472685307264328, - 0.0028135227039456367, - -0.07665684074163437, - 0.05617022514343262, - -0.0562426820397377, - 0.1731330007314682, - -0.010448402725160122, - -0.05660713091492653, - -0.052503615617752075, - 0.05048142001032829, - -0.023679519072175026, - 0.029432743787765503, - 0.052778951823711395, - 0.07074064016342163, - 0.015421571210026741, - -0.0555206723511219, - 0.13676826655864716, - 0.006412816699594259, - -0.035486191511154175, - -0.06173129752278328, - -0.001885883859358728, - -0.06570940464735031, - 0.02868037112057209, - 0.024407723918557167, - -0.11543022096157074, - -0.029168330132961273, - 0.04029463231563568, - -0.021747678518295288, - 0.05247454717755318, - 0.13362474739551544, - 0.0449431836605072, - -0.09310270100831985 - ] - }, - "p244_385.wav": { - "name": "p244", - "embedding": [ - 0.045871417969465256, - 0.11186913400888443, - 0.00438494049012661, - -0.011742634698748589, - -0.04474398121237755, - 0.09747549146413803, - -0.1404711753129959, - 0.1555105298757553, - -0.06613657623529434, - 0.16012690961360931, - -0.0687192901968956, - 0.1107354387640953, - -0.018052924424409866, - -0.18716958165168762, - -0.05368705466389656, - 0.03638600558042526, - -0.06502287089824677, - -0.016972960904240608, - -0.04884461686015129, - -0.008174742572009563, - 0.04831221327185631, - 0.007531135343015194, - -0.0047982861287891865, - -0.0019827138166874647, - 0.017027605324983597, - 0.054750051349401474, - 0.01732824370265007, - 0.05932663008570671, - 0.021189065650105476, - -0.062108445912599564, - -0.02803128771483898, - 0.11786743253469467, - -0.049675535410642624, - 0.03487037494778633, - 0.08826304227113724, - -0.031047485768795013, - 0.0022557186894118786, - -0.04956532642245293, - -0.0028623149264603853, - 0.00996128749102354, - -0.016439735889434814, - 0.0840008407831192, - 0.031104199588298798, - 0.028288541361689568, - 0.02927723526954651, - 0.0585792176425457, - 0.011306039057672024, - -0.06859191507101059, - -0.06719674915075302, - 0.15906275808811188, - 0.07665354758501053, - -0.030672527849674225, - -0.04710652306675911, - -0.07172360271215439, - 0.10005084425210953, - -0.03228176757693291, - -0.1188296303153038, - -0.055814746767282486, - 0.08605849742889404, - 0.15157842636108398, - -0.04420950263738632, - -0.03782351315021515, - 0.011202430352568626, - 0.12784533202648163, - 0.017743747681379318, - 0.11453984677791595, - 0.07027567923069, - 0.0843321830034256, - -0.003724726615473628, - 0.03982752189040184, - 0.03881325572729111, - 0.04802235960960388, - 0.043487437069416046, - -0.019419943913817406, - 0.05808219313621521, - -0.016763733699917793, - -0.005238555371761322, - 0.014152929186820984, - -0.024627618491649628, - 0.006610215175896883, - -0.01443529687821865, - 0.03908499702811241, - 0.008336817845702171, - 0.01766454242169857, - -0.010166262276470661, - 0.059298932552337646, - -0.01987832598388195, - -0.007360312156379223, - 0.06711704283952713, - 0.04001389071345329, - 0.035235047340393066, - 0.05773480609059334, - -0.08370012044906616, - -0.10547614842653275, - 0.042522888630628586, - -0.005578859709203243, - 0.007751731667667627, - 0.06490164250135422, - 0.024526158347725868, - -0.00856785848736763, - 0.1030300185084343, - 0.05986305698752403, - -0.02195248194038868, - 0.038277577608823776, - -0.1145762950181961, - 0.14229969680309296, - 0.053986333310604095, - -0.023819994181394577, - 0.041623108088970184, - -0.0687195286154747, - 0.09064706414937973, - 0.056877076625823975, - -0.15005357563495636, - -0.09600003063678741, - 0.03820410370826721, - 0.019480934366583824, - -0.04020973667502403, - 0.10717343538999557, - -0.029797552153468132, - 0.009655368514358997, - 0.09000623226165771, - -0.0618533231317997, - -0.04383796826004982, - -0.02796785533428192, - 0.04741745442152023, - -0.08143442124128342, - 0.05012882873415947, - 0.03258078545331955, - -0.010219903662800789, - 0.01636679284274578, - 0.11275582760572433, - -0.010713944211602211, - -0.01651557721197605, - 0.02912227250635624, - -0.0266458448022604, - 0.03346564993262291, - -0.036162324249744415, - 0.02600618451833725, - -0.0030781321693211794, - 0.0527995340526104, - 0.04263389855623245, - 0.003189775859937072, - -0.043684836477041245, - -0.07907427847385406, - 0.0006774531793780625, - 0.019977513700723648, - 0.06711924076080322, - -0.0071228258311748505, - -0.012071134522557259, - -0.03611143305897713, - -0.0524408333003521, - -0.013392012566328049, - -0.01527265552431345, - 0.07425066828727722, - -0.0012095257407054305, - 0.020006101578474045, - 0.10346958786249161, - 0.029455851763486862, - 0.0007626976585015655, - -0.07459330558776855, - -0.016935721039772034, - 0.020794715732336044, - 0.05543822795152664, - -0.07505100965499878, - -0.044984616339206696, - 0.012338891625404358, - 0.02657809853553772, - -0.010118257254362106, - 0.04897993803024292, - 0.04975210875272751, - 0.025209985673427582, - 0.04663657024502754, - -0.07825689017772675, - 0.02224918268620968, - -0.11303100734949112, - -0.06090568006038666, - -0.02896808460354805, - -0.018171295523643494, - -0.0316518098115921, - 0.06599346548318863, - -0.0007092852029018104, - 0.04945264011621475, - -0.00348032102920115, - -0.07399351894855499, - -0.06731084734201431, - 0.07268933951854706, - 0.09860076010227203, - -0.013203510083258152, - 0.042342592030763626, - 0.04282982274889946, - -0.02149653621017933, - 0.0605279877781868, - 0.07342345267534256, - 0.11338246613740921, - -0.023849500343203545, - 0.02937689609825611, - -0.07826597988605499, - 0.07550396025180817, - 0.06194820627570152, - -0.09974642097949982, - -0.08785484731197357, - 0.005303366109728813, - -0.049881331622600555, - 0.019132710993289948, - -0.0242499690502882, - 0.006114527117460966, - 0.0212209802120924, - 0.00938879419118166, - -0.07497288286685944, - -0.06556227803230286, - 0.07407844811677933, - -0.09435851126909256, - -0.0073996190913021564, - -0.07422924786806107, - 0.05978701636195183, - 0.11779443919658661, - 0.055191319435834885, - -0.03697899356484413, - -0.0272142942994833, - 0.05121101438999176, - -0.03528626263141632, - -0.0016348283970728517, - 0.01197389978915453, - 0.020866582170128822, - -0.1000773087143898, - 0.04218969866633415, - -0.0723632350564003, - 0.04216983914375305, - -0.06630398333072662, - 0.15699294209480286, - -0.016808493062853813, - -0.07099200785160065, - -0.07270801812410355, - 0.03401869535446167, - -0.03845476359128952, - 0.03282615542411804, - 0.02502809837460518, - 0.06195691227912903, - 0.04220603033900261, - -0.05840633809566498, - 0.12266574054956436, - 0.017571592703461647, - -0.029280629009008408, - -0.07419605553150177, - -0.055782463401556015, - -0.041236817836761475, - 0.024900421500205994, - 0.024229034781455994, - -0.11052656918764114, - -0.027387814596295357, - 0.031266603618860245, - -0.03102274239063263, - 0.08931320160627365, - 0.1403033435344696, - 0.05686182156205177, - -0.13733287155628204 - ] - }, - "p244_284.wav": { - "name": "p244", - "embedding": [ - 0.04141642898321152, - 0.06979545950889587, - -0.019032523036003113, - 0.0390816256403923, - -0.043868135660886765, - 0.06532397866249084, - -0.11736100912094116, - 0.09019085019826889, - -0.06744042038917542, - 0.12230528891086578, - -0.06797505915164948, - 0.09747536480426788, - -0.01648901030421257, - -0.17341503500938416, - -0.054784566164016724, - 0.0424853190779686, - -0.06551390886306763, - -0.032326653599739075, - -0.07067592442035675, - -0.0049887532368302345, - 0.04271107539534569, - 0.04007439315319061, - 0.03347145393490791, - -0.019418317824602127, - 0.033270448446273804, - 0.04106369614601135, - 0.005285894498229027, - 0.042339012026786804, - 0.03307656571269035, - -0.04388793557882309, - -0.024313900619745255, - 0.11311817169189453, - -0.021848518401384354, - -0.007152605801820755, - 0.03852579742670059, - 0.01580837368965149, - -0.003727669594809413, - -0.07809041440486908, - -0.03819633647799492, - 0.00834386795759201, - -0.056444283574819565, - 0.06837356090545654, - 0.03744346648454666, - -0.017337609082460403, - 0.04702596366405487, - -0.025707252323627472, - -0.037150632590055466, - -0.05421062931418419, - -0.1029304713010788, - 0.1610407531261444, - 0.05368327349424362, - 0.018700847402215004, - -0.08519278466701508, - -0.0660209059715271, - 0.11482568830251694, - -0.013651309534907341, - -0.11893503367900848, - -0.044651664793491364, - 0.06012747436761856, - 0.1813526749610901, - -0.020620031282305717, - 0.0038448225241154432, - 0.026122961193323135, - 0.10145090520381927, - 0.048468392342329025, - 0.08712530136108398, - 0.08492505550384521, - 0.08808408677577972, - 0.027660097926855087, - 0.033076416701078415, - 0.06910654157400131, - 0.05137063190340996, - 0.022279199212789536, - -0.03102794848382473, - 0.029225781559944153, - 0.0017949480097740889, - -0.04483289644122124, - 0.003275876631960273, - -0.022943561896681786, - -0.002547027077525854, - -0.004529222846031189, - 0.006550888530910015, - 0.021823525428771973, - 0.024601589888334274, - -0.05423561856150627, - 0.04232274740934372, - 0.006816928740590811, - -0.0280821081250906, - 0.05533795803785324, - 0.042043350636959076, - 0.0007511208532378078, - 0.027507033199071884, - -0.038378119468688965, - -0.10773613303899765, - -0.010008382610976696, - 0.014144865795969963, - -0.01612825319170952, - 0.0561729297041893, - 0.04122903198003769, - -0.030249420553445816, - 0.10074333846569061, - 0.0488659143447876, - -0.015792477875947952, - 0.03387673944234848, - -0.10013174265623093, - 0.09112514555454254, - 0.0901968702673912, - 0.0022102929651737213, - 0.042065154761075974, - -0.02508392557501793, - 0.0649300217628479, - 0.07821866869926453, - -0.1372946947813034, - -0.05955647677183151, - 0.06794905662536621, - -0.0034256819635629654, - 0.02056579664349556, - 0.1159113198518753, - 0.00536385178565979, - 0.005847449414432049, - 0.08433307707309723, - -0.07659203559160233, - -0.04995877668261528, - -0.02838127873837948, - 0.062301672995090485, - -0.06246389448642731, - 0.043179526925086975, - 0.031634822487831116, - -0.01866913214325905, - -0.024759050458669662, - 0.07096080482006073, - -0.011106367222964764, - -0.0032295244745910168, - 0.008477922528982162, - -0.031070424243807793, - 0.06400710344314575, - -0.041499435901641846, - -0.014915753155946732, - 0.07021591067314148, - 0.05228372663259506, - 0.0431116484105587, - -0.010864054784178734, - -0.03191244229674339, - -0.09366914629936218, - 0.0002226183860329911, - 0.039261579513549805, - 0.07691851258277893, - -0.009308917447924614, - 0.01134653389453888, - -0.06734026968479156, - -0.06866125762462616, - 0.03303215652704239, - -0.033099010586738586, - 0.10547616332769394, - 0.006046065595000982, - -0.006494411267340183, - 0.09562556445598602, - -0.022267041727900505, - 0.0013959072530269623, - -0.01959322951734066, - -0.002048219321295619, - 0.02998843416571617, - 0.049768831580877304, - -0.05107250437140465, - -0.050383299589157104, - 0.015026159584522247, - 0.00774481613188982, - -0.02084973081946373, - 0.002089640125632286, - 0.025806095451116562, - 0.008929691277444363, - 0.04049064591526985, - -0.08050184696912766, - 0.027125172317028046, - -0.11228012293577194, - -0.020122552290558815, - 0.002663110150024295, - -0.04198998957872391, - -0.0131063936278224, - 0.08673688024282455, - 0.03347950428724289, - -0.0008789798012003303, - 0.004454189911484718, - -0.10653974860906601, - -0.042314063757658005, - 0.06982344388961792, - 0.06771819293498993, - 0.01876017637550831, - 0.035832278430461884, - 0.057350873947143555, - 0.005859625991433859, - 0.03373382240533829, - 0.07599811255931854, - 0.07678279280662537, - 0.0023659071885049343, - -0.028074581176042557, - -0.05995447561144829, - 0.1001565009355545, - 0.05846802517771721, - -0.08766864985227585, - -0.07658152282238007, - -0.016321495175361633, - -0.061697762459516525, - 0.035262107849121094, - -0.020403580740094185, - 0.02010262943804264, - 0.034007780253887177, - -0.03171507641673088, - -0.10942661017179489, - -0.10004278272390366, - 0.10807790607213974, - -0.06583673506975174, - -0.03333992883563042, - -0.05982062965631485, - 0.01562969945371151, - 0.08392059057950974, - 0.021171271800994873, - -0.011283649131655693, - 0.010521436110138893, - 0.030436046421527863, - -0.0862221047282219, - -0.025896865874528885, - 0.03126629441976547, - -0.012270445935428143, - -0.11129117012023926, - 0.017236925661563873, - -0.076917365193367, - 0.09629207849502563, - -0.06398941576480865, - 0.14145654439926147, - -0.008674035780131817, - -0.04693850874900818, - -0.08016742765903473, - 0.04609028249979019, - -0.029501326382160187, - 0.05558779835700989, - 0.04978852719068527, - 0.08113552629947662, - 0.0382465198636055, - -0.06253757327795029, - 0.09452789276838303, - 0.03421499580144882, - -0.021824760362505913, - -0.06579199433326721, - -0.031653475016355515, - -0.03478645533323288, - 0.01003987342119217, - -0.009544308297336102, - -0.05965317413210869, - 0.015635376796126366, - 0.02291708067059517, - -0.03659220039844513, - 0.0568128377199173, - 0.11286088079214096, - 0.07105669379234314, - -0.09920184314250946 - ] - }, - "p244_082.wav": { - "name": "p244", - "embedding": [ - 0.009411174803972244, - 0.08323510736227036, - -0.04857800900936127, - 0.029742909595370293, - -0.057362064719200134, - 0.04094798117876053, - -0.1382228434085846, - 0.08897451311349869, - -0.04493768885731697, - 0.10658545792102814, - -0.07055925577878952, - 0.10487526655197144, - -0.030202943831682205, - -0.20856811106204987, - -0.06325679272413254, - 0.06275913864374161, - -0.05976363271474838, - -0.07527010142803192, - -0.04118075221776962, - -0.018783489242196083, - 0.05728233978152275, - 0.042633481323719025, - -0.009143693372607231, - 0.011600812897086143, - 0.0013446449302136898, - 0.0663529708981514, - 0.015016966499388218, - 0.03444671258330345, - 0.01594073511660099, - 0.007594255730509758, - -0.02965313382446766, - 0.11619430035352707, - -0.02377568744122982, - 0.007002450991421938, - 0.047205667942762375, - 0.03281540423631668, - 0.030444353818893433, - -0.04127202183008194, - -0.011317635886371136, - 0.035685937851667404, - -0.07206816971302032, - 0.07363279163837433, - 0.034547243267297745, - 0.010727166198194027, - 0.05058418959379196, - 0.02445879578590393, - -0.03089790791273117, - -0.049073249101638794, - -0.10659847408533096, - 0.1731153428554535, - 0.08125479519367218, - -0.015048407018184662, - -0.0494743287563324, - -0.07082439959049225, - 0.1080903559923172, - -0.008389386348426342, - -0.11675167828798294, - -0.06075400859117508, - 0.09706941992044449, - 0.15158149600028992, - -0.018457647413015366, - -0.026260415092110634, - 0.016313740983605385, - 0.1482800394296646, - 0.04631701856851578, - 0.07797910273075104, - 0.04749668389558792, - 0.12294045090675354, - -0.00970434956252575, - -0.02651379629969597, - 0.12090296298265457, - 0.0732836127281189, - 0.023590464144945145, - -0.04570477828383446, - 0.0390847809612751, - 0.0214807391166687, - -0.011423197574913502, - 0.030962955206632614, - -0.02656143717467785, - -0.006641690153628588, - -0.008897986263036728, - 0.01583193615078926, - -0.03470209985971451, - 0.016625670716166496, - -0.02421959862112999, - 0.0678267702460289, - 0.07286550104618073, - -0.01156865805387497, - 0.05863085016608238, - 0.09633757919073105, - 0.020386775955557823, - 0.05461570620536804, - -0.06643228232860565, - -0.08959316462278366, - 0.03463796153664589, - 0.00827353447675705, - 0.018163369968533516, - 0.06372036039829254, - 0.03379521146416664, - -0.017196208238601685, - 0.10332553088665009, - 0.03757525980472565, - -0.01448835339397192, - 0.026851868256926537, - -0.10643801093101501, - 0.12773369252681732, - 0.09552449733018875, - -0.02199445478618145, - -0.008014488965272903, - -0.020254118368029594, - 0.06972513347864151, - 0.07754160463809967, - -0.10743217170238495, - -0.07968710362911224, - 0.055382125079631805, - 0.023620393127202988, - -0.021427322179079056, - 0.12267042696475983, - -0.008210848085582256, - 0.0027259818743914366, - 0.11488700658082962, - -0.06672704964876175, - -0.06719198077917099, - -0.043614983558654785, - 0.020578186959028244, - -0.07784849405288696, - 0.048601940274238586, - 0.0639006495475769, - 0.017551138997077942, - -0.019592275843024254, - 0.08678491413593292, - -0.00807617511600256, - 0.004243718925863504, - -0.025327831506729126, - -0.019358357414603233, - 0.06537950783967972, - -0.010837739333510399, - -0.012346676550805569, - 0.07549881935119629, - 0.03967012092471123, - 0.045830607414245605, - 0.0013602623948827386, - -0.03151504695415497, - -0.1291232407093048, - 0.024233289062976837, - 0.04815968498587608, - 0.07571224123239517, - -0.015101255849003792, - -0.01381041668355465, - -0.05592862889170647, - -0.07876960188150406, - 0.03084312379360199, - -0.02304004691541195, - 0.10026149451732635, - -0.005592876113951206, - -0.04701017960906029, - 0.1049978956580162, - -0.018784694373607635, - -0.0066004260443151, - -0.025569746270775795, - -0.036011822521686554, - 0.013088454492390156, - 0.036392226815223694, - -0.09904009103775024, - -0.0846695527434349, - -0.004475453868508339, - 0.022818515077233315, - 0.0068465229123830795, - 0.026776809245347977, - 0.04669120907783508, - 0.001870704465545714, - 0.027750639244914055, - -0.08918944001197815, - 0.03525206074118614, - -0.11673890799283981, - -0.05327051132917404, - -0.029964253306388855, - -0.04133564233779907, - -0.0030565818306058645, - 0.08169017732143402, - -0.008359239436686039, - 0.004224564414471388, - -0.011324957013130188, - -0.10791286826133728, - -0.07242006808519363, - 0.08339009433984756, - 0.09452908486127853, - 0.02411576732993126, - 0.07288530468940735, - 0.0544586218893528, - -0.006983669940382242, - 0.041727472096681595, - 0.042256295680999756, - 0.13072146475315094, - -0.02864881046116352, - 0.010814046487212181, - -0.047910600900650024, - 0.08523382991552353, - 0.033189740031957626, - -0.10427984595298767, - -0.056293684989213943, - -0.013072704896330833, - -0.03354141116142273, - 0.032415322959423065, - -0.03511476144194603, - 0.026913179084658623, - 0.026824524626135826, - 0.0010047397809103131, - -0.11934097111225128, - -0.08471548557281494, - 0.051463719457387924, - -0.06151154637336731, - -0.009184977039694786, - -0.07765986770391464, - 0.03273706138134003, - 0.10582055151462555, - 0.03917999938130379, - -0.056362319737672806, - 0.009582164697349072, - 0.03869963809847832, - -0.051336877048015594, - -0.012613809667527676, - 0.007583669852465391, - 0.027266785502433777, - -0.0950557067990303, - -0.018024984747171402, - -0.09256584942340851, - 0.08323374390602112, - -0.06041473150253296, - 0.12585674226284027, - 0.0070867701433598995, - -0.05049802362918854, - -0.07285327464342117, - 0.035981278866529465, - -0.023722613230347633, - 0.06461898237466812, - 0.04261399060487747, - 0.06368102133274078, - 0.009700990281999111, - -0.048192787915468216, - 0.13488326966762543, - 0.05653298273682594, - -0.03816651925444603, - -0.0662367194890976, - -0.0075411563739180565, - -0.025510886684060097, - 0.05108931288123131, - 0.05768226459622383, - -0.07609832286834717, - -0.014019026421010494, - 0.028443632647395134, - -0.03756922110915184, - 0.05862042307853699, - 0.12917949259281158, - 0.06986866146326065, - -0.09145446121692657 - ] - }, - "p244_218.wav": { - "name": "p244", - "embedding": [ - 0.06673995405435562, - 0.09241461753845215, - -0.04671558737754822, - 0.005720822140574455, - -0.04166216030716896, - 0.021131504327058792, - -0.13404692709445953, - 0.09596005827188492, - 0.009214630350470543, - 0.12595249712467194, - -0.06881837546825409, - 0.08258086442947388, - -0.04355539381504059, - -0.10822881758213043, - 0.009794319979846478, - 0.03366012126207352, - 0.00036196294240653515, - -0.01178551372140646, - -0.05208093672990799, - -0.04542585089802742, - 0.015606909990310669, - 0.05928616225719452, - 0.03245805948972702, - -0.08387447148561478, - 0.02475116401910782, - 0.08091872930526733, - -0.011844740249216557, - 0.004846625030040741, - -0.013500849716365337, - -0.036631010472774506, - -0.011087826453149319, - 0.07231725752353668, - -0.07530510425567627, - -0.016270868480205536, - 0.026694197207689285, - 0.01794445887207985, - -0.02220413088798523, - -0.06130357086658478, - 0.009617235511541367, - 0.026830632239580154, - -0.04883992671966553, - 0.08181708306074142, - 0.03895075246691704, - -0.0401669442653656, - 0.025874869897961617, - 0.027915049344301224, - 0.010074172168970108, - -0.04031967371702194, - -0.08327020704746246, - 0.18530426919460297, - 0.050702378153800964, - -0.00048330845311284065, - -0.07360462844371796, - -0.02074882946908474, - 0.07327612489461899, - -0.008302642963826656, - -0.05100390687584877, - -0.07220813632011414, - 0.05020608752965927, - 0.08551609516143799, - -0.04471487179398537, - -0.05941503494977951, - 0.03845163807272911, - 0.08454490453004837, - 0.04414811730384827, - 0.042242731899023056, - 0.09319295734167099, - 0.1278742551803589, - -0.031150344759225845, - -0.0013818519655615091, - 0.03789704293012619, - 0.06335889548063278, - 0.0383380763232708, - -0.002171811182051897, - 0.025673845782876015, - -0.028235426172614098, - -0.01745263859629631, - -0.004064389504492283, - -0.018047470599412918, - -0.06305825710296631, - 0.02313840761780739, - -0.00674998015165329, - 0.004048997536301613, - 0.048994652926921844, - -0.03848019987344742, - 0.023486563935875893, - 0.09877488017082214, - -0.04409158602356911, - 0.08935674279928207, - 0.02204792946577072, - 0.012775031849741936, - 0.030318424105644226, - -0.09796352684497833, - -0.055483508855104446, - 0.03484194353222847, - -0.00657587731257081, - 0.024930257350206375, - 0.06521096080541611, - 0.04179495573043823, - -0.022350311279296875, - 0.12113296985626221, - 0.017137957736849785, - -0.015005506575107574, - -0.002767186611890793, - -0.06037360429763794, - 0.15837937593460083, - 0.1218695268034935, - -0.03505280613899231, - 0.014612356200814247, - -0.04748029261827469, - 0.01335287094116211, - 0.03550170361995697, - -0.11038891226053238, - -0.07553435862064362, - 0.017396938055753708, - 0.03284015506505966, - -0.0008369721472263336, - 0.10557593405246735, - 0.013690419495105743, - 0.012181827798485756, - 0.13112908601760864, - -0.0927133858203888, - -0.07104067504405975, - -0.0042142667807638645, - 0.037650760263204575, - -0.0820700079202652, - 0.032728411257267, - 0.10643388330936432, - -0.013440646231174469, - 0.02328268624842167, - 0.07236253470182419, - 0.021005120128393173, - 0.032534319907426834, - -0.032793428748846054, - 0.003447011113166809, - 0.036398567259311676, - 0.0006801164126954973, - -0.01696469448506832, - 0.03490343689918518, - 0.05360676720738411, - 0.08189666271209717, - -0.006878489162772894, - -0.02048259973526001, - -0.1363704949617386, - 0.039053499698638916, - 0.03193531185388565, - 0.037786729633808136, - -0.04440353065729141, - -0.007418894208967686, - -0.029864240437746048, - -0.07562088221311569, - 0.001393111888319254, - -0.011884447187185287, - 0.05794353783130646, - -0.022241737693548203, - -0.01787719316780567, - 0.1491033434867859, - 0.027059899643063545, - 0.021256128326058388, - -0.021346963942050934, - -0.016197465360164642, - 0.014491203241050243, - 0.026206161826848984, - -0.09537866711616516, - -0.09075523912906647, - -0.046413715928792953, - 0.018450338393449783, - 0.00672380905598402, - 0.05369650572538376, - 0.0625077337026596, - 0.006286041811108589, - 0.018740981817245483, - -0.0527520515024662, - 0.019446130841970444, - -0.047873418778181076, - -0.023290500044822693, - -0.005407287739217281, - -0.037413738667964935, - -0.027827031910419464, - 0.09225767850875854, - -0.004187794402241707, - 0.041743017733097076, - -0.046815741807222366, - -0.06845550239086151, - -0.05745353549718857, - 0.028204983100295067, - 0.062291186302900314, - -0.0586608462035656, - 0.010917039588093758, - 0.06356892734766006, - -0.014507530257105827, - -0.0026156194508075714, - 0.070974200963974, - 0.07693815976381302, - -0.035423390567302704, - -0.01701207086443901, - -0.05271977186203003, - 0.10168087482452393, - 0.06159539520740509, - -0.08040063083171844, - -0.03370402753353119, - -0.07339389622211456, - -0.05034111440181732, - -0.012771296314895153, - -0.025148048996925354, - 0.01490765530616045, - 0.019698305055499077, - -0.00143462885171175, - -0.07982230186462402, - -0.10257213562726974, - 0.0267894696444273, - -0.03584497794508934, - 0.007640083320438862, - -0.09003444761037827, - 0.041306376457214355, - 0.055980607867240906, - 0.07535381615161896, - -0.027003316208720207, - -0.020421011373400688, - -0.005871819332242012, - -0.030469907447695732, - 0.024197686463594437, - 0.04127150774002075, - 0.05883333459496498, - -0.06733577698469162, - -0.012668863870203495, - -0.06967277079820633, - 0.08528416603803635, - -0.04000786691904068, - 0.09443873912096024, - 0.027870740741491318, - -0.033193059265613556, - -0.0991239994764328, - 0.03142354637384415, - -0.03074929304420948, - 0.03852801024913788, - 0.04193933680653572, - 0.0056736283004283905, - 0.05675719678401947, - -0.047608088701963425, - 0.10432156175374985, - 0.04758857190608978, - -0.014785085804760456, - -0.06801826506853104, - -0.050628721714019775, - -0.052018903195858, - 0.049489185214042664, - 0.03528051823377609, - -0.067943274974823, - 0.004121929407119751, - 0.029231710359454155, - -0.0023907579015940428, - 0.05455969274044037, - 0.08119166642427444, - 0.06660211086273193, - -0.10265371948480606 - ] - }, - "p244_258.wav": { - "name": "p244", - "embedding": [ - 0.07679141312837601, - 0.03285347297787666, - -0.005191308446228504, - 0.017157545313239098, - -0.01648176833987236, - 0.04638223722577095, - -0.088742196559906, - 0.057948336005210876, - -0.022573599591851234, - 0.07319176197052002, - -0.11689199507236481, - 0.021522829309105873, - -0.003921594470739365, - -0.0912213921546936, - 0.002323621418327093, - 0.014264101162552834, - 0.002201654016971588, - 0.012111756019294262, - -0.09432931244373322, - -0.01385512389242649, - 0.0003177318722009659, - 0.034604333341121674, - 0.01753060147166252, - -0.059732384979724884, - -0.0020971104968339205, - 0.042796872556209564, - 0.010780866257846355, - 0.005441932938992977, - 0.004265574738383293, - -0.002715539187192917, - -0.009840097278356552, - 0.11150279641151428, - -0.04598115012049675, - -0.01988230086863041, - 0.03898988664150238, - 0.04225374758243561, - 0.007714281789958477, - -0.10172348469495773, - -0.019400203600525856, - 0.0038004154339432716, - -0.07217127084732056, - 0.06552952527999878, - 0.055657122284173965, - -0.015563245862722397, - 0.007612681016325951, - 0.012087170034646988, - 0.007316205650568008, - -0.013617804273962975, - -0.06583358347415924, - 0.15554118156433105, - 0.031136982142925262, - 0.0055865030735731125, - -0.07283760607242584, - -0.021615318953990936, - 0.10212336480617523, - -0.0070214164443314075, - -0.036226727068424225, - -0.030113667249679565, - 0.026174569502472878, - 0.10048529505729675, - 0.008407581597566605, - -0.03803853318095207, - -0.01644132472574711, - 0.017940891906619072, - -0.014630669727921486, - 0.055051594972610474, - 0.09959582984447479, - 0.11093810200691223, - 0.0049186935648322105, - 0.025319887325167656, - 0.06981988251209259, - 0.0289970301091671, - 0.04492059350013733, - -0.05474399775266647, - 0.06897800415754318, - 0.005950739607214928, - -0.06861895322799683, - 0.05169109255075455, - -0.04048681631684303, - -0.03773059695959091, - 0.0584164597094059, - -0.015366610139608383, - 0.034149251878261566, - 0.006377383600920439, - -0.11505354195833206, - 0.0046930452808737755, - 0.005290476605296135, - 0.038996078073978424, - 0.10869783163070679, - 0.018349923193454742, - 0.009688381105661392, - 0.01598978228867054, - -0.036223456263542175, - -0.08092721551656723, - 0.01347358338534832, - 0.00746909761801362, - 0.013366539031267166, - 0.029650598764419556, - 0.0247380118817091, - -0.018677975982427597, - 0.07955006510019302, - -0.025160063058137894, - 0.00850014016032219, - -0.009872529655694962, - -0.03528575599193573, - 0.0710277408361435, - 0.11302268505096436, - 0.02511666528880596, - 0.01139133796095848, - -0.041211847215890884, - 0.04427892342209816, - 0.05170672759413719, - -0.07742707431316376, - -0.05129126459360123, - 0.028028609231114388, - 0.037942662835121155, - 0.06499990075826645, - 0.09817469865083694, - -0.040436845272779465, - -0.02128174901008606, - 0.05847795307636261, - -0.06975678354501724, - -0.004629859700798988, - 0.04635251313447952, - -0.007115555927157402, - -0.007278773933649063, - -0.007724538445472717, - -0.0016099689528346062, - -0.029732869938015938, - -0.058376964181661606, - 0.055915676057338715, - -0.027520939707756042, - 0.0052959127351641655, - -0.0474945567548275, - 0.02992713451385498, - 0.08013647794723511, - 0.006267134100198746, - -0.06800227612257004, - 0.04786580801010132, - 0.05581164360046387, - 0.03627294301986694, - 0.01124153845012188, - -0.04230596125125885, - -0.08089552074670792, - 0.0007849982939660549, - 0.0416392907500267, - 0.042494021356105804, - -0.021547436714172363, - -0.026843221858143806, - -0.10129571706056595, - -0.043941665440797806, - 0.027755694463849068, - -0.0478389635682106, - 0.0665149912238121, - 0.0659036710858345, - -0.043209102004766464, - 0.08743710815906525, - -0.03005043976008892, - -0.006855689454823732, - -0.07787776738405228, - -0.043079689145088196, - 0.03751013055443764, - 0.03974080830812454, - 0.0006978809833526611, - -0.04671081155538559, - 0.021193694323301315, - 0.0026710564270615578, - -0.010079368948936462, - -0.04505263641476631, - 0.034987062215805054, - -0.010533876717090607, - 0.01829933375120163, - -0.1373869776725769, - 0.019953547045588493, - -0.12611842155456543, - -0.029317855834960938, - 0.034984566271305084, - 0.01392775122076273, - 0.04856440797448158, - 0.07969792187213898, - -0.013384771533310413, - 0.0044553703628480434, - -0.044323064386844635, - -0.12362749874591827, - 0.006815183907747269, - 0.0634303092956543, - 0.06017370522022247, - -0.005435607396066189, - 0.037726692855358124, - 0.05026915669441223, - 0.00932311825454235, - 0.027295488864183426, - 0.07428344339132309, - 0.07999062538146973, - -0.01062973402440548, - -0.019960129633545876, - 0.005895745009183884, - 0.11012575030326843, - 0.02762814797461033, - -0.05788486450910568, - -0.04115934297442436, - 0.01942356303334236, - -0.032451555132865906, - 0.03567459434270859, - 0.00912648718804121, - 0.013185901567339897, - 0.026380911469459534, - -0.015013724565505981, - -0.08134867250919342, - -0.016082588583230972, - 0.03090437687933445, - -0.011898979544639587, - -0.019635427743196487, - -0.06859276443719864, - 0.01730221137404442, - 0.050356995314359665, - 0.04189112037420273, - -0.024182943627238274, - -0.02373354136943817, - 0.006139649078249931, - -0.08314862102270126, - -0.07653996348381042, - -0.024275556206703186, - 0.008871578611433506, - -0.066228486597538, - 0.042074281722307205, - -0.0472719706594944, - 0.07996881753206253, - -0.02567720040678978, - 0.07942695915699005, - 0.0016464916989207268, - -0.05625027418136597, - -0.04452471807599068, - 0.05419591814279556, - -0.011272326111793518, - 0.04632297530770302, - 0.07949044555425644, - -0.029907487332820892, - 0.01672234944999218, - -0.08599400520324707, - 0.08126738667488098, - 0.006985564716160297, - -0.0048313080333173275, - -0.03543149679899216, - -0.0006830152124166489, - -0.04757782071828842, - -0.009476684965193272, - -0.011244406923651695, - -0.058826301246881485, - 0.0307366494089365, - 0.015632303431630135, - -0.03818799927830696, - 0.01670285500586033, - 0.041338443756103516, - 0.051368676126003265, - -0.06183270364999771 - ] - }, - "p244_091.wav": { - "name": "p244", - "embedding": [ - 0.04309367388486862, - 0.0720987468957901, - -0.0132478391751647, - 0.017731424421072006, - -0.06165162846446037, - 0.06395068019628525, - -0.13169601559638977, - 0.14464542269706726, - -0.046683065593242645, - 0.1385502815246582, - -0.04386259242892265, - 0.12500441074371338, - -0.01278278511017561, - -0.19199281930923462, - -0.02863188646733761, - 0.05434998869895935, - -0.057081859558820724, - -0.04133368283510208, - -0.053575754165649414, - -0.024377061054110527, - 0.04223744198679924, - 0.0311942920088768, - 0.0261395126581192, - -0.0014756987802684307, - 0.021796882152557373, - 0.0695478767156601, - -0.0006583810318261385, - 0.047250326722860336, - 0.012663107365369797, - -0.07275444269180298, - -0.025742821395397186, - 0.08432137966156006, - -0.058854520320892334, - 0.010051047429442406, - 0.04828295856714249, - -0.028486598283052444, - -0.009382815100252628, - -0.04764934629201889, - -0.03271391987800598, - 0.013127505779266357, - -0.047004178166389465, - 0.08635374158620834, - 0.0333406999707222, - -0.00034673017216846347, - 0.042563408613204956, - 0.013922426849603653, - -0.02209658920764923, - -0.04705999791622162, - -0.10563153028488159, - 0.1506836712360382, - 0.075776606798172, - -0.006607173942029476, - -0.0648643970489502, - -0.06669889390468597, - 0.10503864288330078, - -0.025230523198843002, - -0.13188141584396362, - -0.047879062592983246, - 0.07593496143817902, - 0.15364305675029755, - -0.041862230747938156, - -0.031919319182634354, - 0.02820572629570961, - 0.1098124235868454, - 0.06707937270402908, - 0.0889878123998642, - 0.09234442561864853, - 0.10160738229751587, - -0.01282145269215107, - 0.019284797832369804, - 0.05580781027674675, - 0.0751730427145958, - 0.04807524383068085, - -0.0008225438068620861, - 0.037131816148757935, - 0.0014572007348760962, - -0.0006831804057583213, - -0.021310074254870415, - -0.023456593975424767, - -0.003276883391663432, - -0.0038925036787986755, - 0.02375621162354946, - 0.017930250614881516, - 0.028639446943998337, - -0.02274405211210251, - 0.06532417982816696, - 0.02309400588274002, - -0.010117791593074799, - 0.05741807818412781, - 0.03127700090408325, - 0.018069909885525703, - 0.07340972870588303, - -0.09006212651729584, - -0.07940064370632172, - 0.0225283931940794, - 0.0030012200586497784, - 0.024960016831755638, - 0.06134403869509697, - 0.031337201595306396, - -0.00855853222310543, - 0.11929445713758469, - 0.052166104316711426, - -0.01905599795281887, - 0.028067348524928093, - -0.09640559554100037, - 0.12266942858695984, - 0.08031803369522095, - -0.022284023463726044, - 0.04782688617706299, - -0.051695507019758224, - 0.0787573754787445, - 0.05408960208296776, - -0.1350681036710739, - -0.0754668191075325, - 0.0330924391746521, - 0.009739085100591183, - -0.02826535701751709, - 0.13806474208831787, - -0.010384946130216122, - 0.04305350407958031, - 0.11038455367088318, - -0.08230754733085632, - -0.03646830469369888, - -0.0055635301396250725, - 0.054766371846199036, - -0.08317561447620392, - 0.05998267978429794, - 0.03684881329536438, - -0.013172414153814316, - 0.02731870859861374, - 0.09247037768363953, - -0.018216188997030258, - -0.004504123702645302, - 0.016312040388584137, - -0.04332476109266281, - 0.022890862077474594, - -0.025876715779304504, - -0.002924907486885786, - 0.049809135496616364, - 0.036981649696826935, - 0.05224273353815079, - -0.017538845539093018, - -0.037159230560064316, - -0.119931161403656, - 0.016010232269763947, - 0.01986614614725113, - 0.08030147850513458, - -0.014970451593399048, - -0.006482881959527731, - -0.0401659831404686, - -0.06644508987665176, - 0.007841970771551132, - -0.008373289369046688, - 0.07976173609495163, - -0.021678447723388672, - 0.0011113336076959968, - 0.10172917693853378, - 0.03010474517941475, - 0.008834779262542725, - -0.04021097347140312, - -0.035399019718170166, - 0.003066539764404297, - 0.05836181342601776, - -0.0846424549818039, - -0.05683001130819321, - -0.004309183917939663, - 0.043701838701963425, - -0.010717585682868958, - 0.05616123974323273, - 0.05136401578783989, - 0.022349296137690544, - 0.028967753052711487, - -0.06828059256076813, - 0.02481108531355858, - -0.0951242744922638, - -0.0741296261548996, - -0.003367321565747261, - -0.0185336172580719, - -0.02813224494457245, - 0.07075908035039902, - 0.011294732801616192, - 0.051759183406829834, - -0.023240529000759125, - -0.08101250976324081, - -0.08983057737350464, - 0.05698192119598389, - 0.06296256184577942, - -0.016562119126319885, - 0.03837001323699951, - 0.0679793655872345, - -0.03630131110548973, - 0.050037138164043427, - 0.06037301942706108, - 0.11213769018650055, - -0.031672198325395584, - 0.02792520448565483, - -0.07070574164390564, - 0.09044340252876282, - 0.0789322555065155, - -0.08119912445545197, - -0.07228894531726837, - -0.008563557639718056, - -0.06970565021038055, - 0.04068715497851372, - -0.02785094641149044, - 0.0017837516497820616, - 0.0431668758392334, - 0.012809227220714092, - -0.0992497056722641, - -0.07491475343704224, - 0.08240143954753876, - -0.08449393510818481, - -0.00450856564566493, - -0.08662715554237366, - 0.04068160802125931, - 0.11025522649288177, - 0.0415530726313591, - -0.023766905069351196, - -0.017375074326992035, - 0.050013281404972076, - -0.02350243180990219, - 0.012389621697366238, - 0.0574544295668602, - 0.03179460018873215, - -0.10195067524909973, - -0.01964683085680008, - -0.07553237676620483, - 0.03137651085853577, - -0.033169474452733994, - 0.1412326544523239, - 0.0024874797090888023, - -0.04609978199005127, - -0.07931625097990036, - 0.03564610704779625, - -0.01348478626459837, - 0.060373455286026, - 0.03673099726438522, - 0.07927213609218597, - 0.0639696940779686, - -0.055534981191158295, - 0.12298642098903656, - 0.04358307272195816, - -0.04595636948943138, - -0.06615161895751953, - -0.04008050262928009, - -0.03524373471736908, - 0.023251861333847046, - 0.014349992386996746, - -0.09259232878684998, - -0.01610407419502735, - 0.024809114634990692, - -0.020766835659742355, - 0.05673844739794731, - 0.12615686655044556, - 0.05869127810001373, - -0.11874385923147202 - ] - }, - "p244_149.wav": { - "name": "p244", - "embedding": [ - 0.03768186271190643, - 0.08385203778743744, - 0.003771065967157483, - 0.016704736277461052, - -0.02278084307909012, - 0.04204532504081726, - -0.16192631423473358, - 0.16337457299232483, - -0.028415264561772346, - 0.13345271348953247, - -0.07519504427909851, - 0.10003703832626343, - -0.02614821307361126, - -0.18881404399871826, - -0.024122655391693115, - 0.05158974230289459, - -0.0221388041973114, - -0.018566664308309555, - -0.016828352585434914, - 0.005564190912991762, - 0.05611561983823776, - 0.049695853143930435, - 0.004307721275836229, - -0.001803562045097351, - 0.012524161487817764, - 0.04730432853102684, - 0.00986695196479559, - 0.06021067500114441, - 0.02476823329925537, - -0.03380019590258598, - -0.00223548524081707, - 0.11448952555656433, - -0.04335777088999748, - 0.030037984251976013, - 0.07191549241542816, - -0.00968906655907631, - -0.024295175448060036, - -0.04914316534996033, - -0.018657123669981956, - -0.0071354638785123825, - -0.054571714252233505, - 0.06066074222326279, - 0.043791115283966064, - 0.02487028017640114, - 0.052724555134773254, - 0.0570414774119854, - -0.007172238547354937, - -0.05884827673435211, - -0.0950125902891159, - 0.16391783952713013, - 0.06042741984128952, - 0.0028025214560329914, - -0.06446389108896255, - -0.07849854975938797, - 0.09417851269245148, - -0.010156840085983276, - -0.11376545578241348, - -0.04148290306329727, - 0.10617800801992416, - 0.16100741922855377, - -0.0250163022428751, - -0.04480304569005966, - 0.0320194736123085, - 0.1292324811220169, - 0.04362428933382034, - 0.09016602486371994, - 0.08338652551174164, - 0.10966627299785614, - -0.002137948991730809, - 0.006961085833609104, - 0.035613901913166046, - 0.053405776619911194, - 0.033508457243442535, - -0.011102542281150818, - 0.024848341941833496, - 0.027205847203731537, - -0.010422540828585625, - 0.007268413435667753, - -0.03176813945174217, - 0.001368687953799963, - -0.005691193044185638, - 0.034977711737155914, - 0.002772694919258356, - 0.037705063819885254, - -0.014800334349274635, - 0.058759916573762894, - 0.013955675065517426, - 0.010913911275565624, - 0.07828021049499512, - 0.01347639411687851, - 0.02955559641122818, - 0.06418874859809875, - -0.0798056498169899, - -0.08031607419252396, - 0.017876846715807915, - -0.004576188512146473, - 0.014666064642369747, - 0.07051225751638412, - 0.028934121131896973, - -0.01445766631513834, - 0.13701120018959045, - 0.02543218433856964, - -0.01817462593317032, - 0.03026607260107994, - -0.11601606756448746, - 0.11854873597621918, - 0.04868794232606888, - -0.0228131003677845, - 0.05795200914144516, - -0.077306367456913, - 0.06261872500181198, - 0.055262207984924316, - -0.15220719575881958, - -0.06971816718578339, - 0.06351606547832489, - 0.04874006286263466, - -0.03217070549726486, - 0.1579434871673584, - -0.002579244552180171, - 0.028287317603826523, - 0.10888787358999252, - -0.09761328995227814, - -0.06145886331796646, - -0.011445235460996628, - 0.060192376375198364, - -0.08660709112882614, - 0.05724826455116272, - 0.03938935697078705, - -0.027138710021972656, - 0.005414584651589394, - 0.09243336319923401, - -0.00719593046233058, - 0.02358940802514553, - -0.015410438179969788, - -0.03600359335541725, - 0.03849741071462631, - -0.05553814396262169, - 0.00407925620675087, - -0.007076476700603962, - 0.04599997401237488, - 0.04391339793801308, - 0.007961018942296505, - -0.07285860925912857, - -0.12969304621219635, - -0.009119763039052486, - 0.022251714020967484, - 0.08857829123735428, - -0.00926095899194479, - -0.027449872344732285, - -0.03495349735021591, - -0.04527740180492401, - -0.010584015399217606, - -0.01791813038289547, - 0.06671866774559021, - -0.00796806626021862, - -0.005068654660135508, - 0.09341266751289368, - 0.015182343311607838, - 0.009166423231363297, - -0.054214511066675186, - -0.04482874274253845, - -0.006100847385823727, - 0.041935257613658905, - -0.07273270189762115, - -0.05464041605591774, - 0.0032572061754763126, - 0.04191582649946213, - -0.007699319627135992, - 0.03734232112765312, - 0.029372671619057655, - 0.029092110693454742, - 0.02629699930548668, - -0.06226622313261032, - 0.006399726029485464, - -0.12177871912717819, - -0.09955225884914398, - 0.0018630328122526407, - 0.028377551585435867, - -0.00882348045706749, - 0.07371123135089874, - 0.01345228124409914, - 0.056676216423511505, - 0.0026063756085932255, - -0.07180155813694, - -0.09480110555887222, - 0.05946919322013855, - 0.07905697077512741, - -0.016860011965036392, - 0.0557427853345871, - 0.04409220069646835, - -0.058635152876377106, - 0.05230488255620003, - 0.04737548902630806, - 0.097597636282444, - -0.016359668225049973, - 0.018242985010147095, - -0.07807204127311707, - 0.08407483994960785, - 0.08453156054019928, - -0.08569619059562683, - -0.07536394894123077, - 0.00361895770765841, - -0.07456056773662567, - 0.019792921841144562, - -0.011527043767273426, - 0.017840590327978134, - 0.017282098531723022, - -0.003985610790550709, - -0.10447810590267181, - -0.0651320070028305, - 0.05125219374895096, - -0.08799359202384949, - -0.00356765603646636, - -0.07514673471450806, - 0.053844936192035675, - 0.12126345932483673, - 0.038374364376068115, - -0.011949478648602962, - -0.0579039603471756, - 0.042095355689525604, - -0.048414088785648346, - -0.00973714143037796, - 0.03740885481238365, - 0.03555256500840187, - -0.09930659830570221, - 0.016074690967798233, - -0.07543778419494629, - 0.03346505016088486, - -0.06566616892814636, - 0.1308433711528778, - 0.002985036000609398, - -0.07399366796016693, - -0.08267852663993835, - 0.013626091182231903, - -0.0031136367470026016, - 0.04493806138634682, - 0.003336617723107338, - 0.05804196745157242, - 0.05074665695428848, - -0.054444264620542526, - 0.12769778072834015, - 0.03700132668018341, - -0.0334160141646862, - -0.05462217703461647, - -0.05680021643638611, - -0.04155223071575165, - 0.014036959037184715, - 0.008526414632797241, - -0.09706000983715057, - -0.040051259100437164, - 0.027229513972997665, - -0.016197683289647102, - 0.0530916228890419, - 0.1305728554725647, - 0.028189923614263535, - -0.1510210782289505 - ] - }, - "p244_282.wav": { - "name": "p244", - "embedding": [ - 0.04918473958969116, - 0.08637490123510361, - -0.007416686043143272, - 0.011736655607819557, - -0.034126728773117065, - 0.09576372057199478, - -0.16671088337898254, - 0.11537657678127289, - -0.07332129776477814, - 0.15138636529445648, - -0.06084202975034714, - 0.08286546170711517, - -0.016679655760526657, - -0.19939547777175903, - -0.04118802025914192, - 0.060039639472961426, - -0.0485377162694931, - -0.03061012551188469, - -0.061128370463848114, - -0.021811429411172867, - 0.02710186503827572, - 0.03617182374000549, - 0.003836966585367918, - -0.015880730003118515, - 0.06001034751534462, - 0.04411380738019943, - -0.009789112024009228, - 0.02384761907160282, - -0.023135032504796982, - -0.07027004659175873, - -0.017313463613390923, - 0.11355763673782349, - -0.04108476638793945, - 0.0054458873346447945, - 0.049676381051540375, - 0.010946200229227543, - 0.022713428363204002, - -0.0690869390964508, - -0.025180278345942497, - 0.022344209253787994, - -0.03395051136612892, - 0.08637428283691406, - 0.04206613823771477, - 0.02410716935992241, - 0.018926391378045082, - 0.022452645003795624, - -0.0033003794960677624, - -0.0629497617483139, - -0.09105990827083588, - 0.1637907326221466, - 0.03488153591752052, - 0.02003924548625946, - -0.07264581322669983, - -0.09036867320537567, - 0.11691020429134369, - -0.01661752536892891, - -0.11093058437108994, - -0.041040897369384766, - 0.07760954648256302, - 0.1973458081483841, - -0.03649074211716652, - -0.04468505457043648, - 0.024507921189069748, - 0.10280981659889221, - 0.033941738307476044, - 0.0926000103354454, - 0.07198548316955566, - 0.09376473724842072, - 0.02536942809820175, - -0.006938672624528408, - 0.06506480276584625, - 0.05119505152106285, - 0.04949592798948288, - -0.04402872920036316, - 0.038263265043497086, - 0.0034496309235692024, - -0.033596690744161606, - -0.004746205173432827, - -0.026907946914434433, - -0.005863695405423641, - 0.005246943794190884, - 0.013683231547474861, - 0.02701464667916298, - 0.022461578249931335, - -0.04446312412619591, - 0.01840929128229618, - 0.03137648478150368, - -0.030592940747737885, - 0.08245187997817993, - 0.04999903216958046, - 0.029997780919075012, - 0.05336563289165497, - -0.07607252895832062, - -0.08314183354377747, - 0.04955289512872696, - 0.030490122735500336, - -0.0097513347864151, - 0.04004715383052826, - 0.04669622331857681, - -0.029973922297358513, - 0.11153507232666016, - 0.03164280578494072, - 0.011941333301365376, - 0.028219493106007576, - -0.11870015412569046, - 0.11242745816707611, - 0.07347170263528824, - -0.019780682399868965, - 0.05719504505395889, - -0.03001154586672783, - 0.058226972818374634, - 0.08163052797317505, - -0.15437033772468567, - -0.10382787883281708, - 0.0460633710026741, - 0.011677831411361694, - -0.002385564148426056, - 0.12334049493074417, - -0.005099774803966284, - 0.00373261421918869, - 0.08679091930389404, - -0.09700756520032883, - -0.04592788964509964, - -0.008215099573135376, - 0.051422297954559326, - -0.07695111632347107, - 0.04211403429508209, - 0.05514785274863243, - -0.01441549975425005, - -0.002632137155160308, - 0.0784575343132019, - 0.0010088167618960142, - 0.003617632668465376, - -0.020375492051243782, - -0.00885198824107647, - 0.04245833307504654, - -0.019077708944678307, - -0.0023816616740077734, - 0.040753982961177826, - 0.041563913226127625, - 0.04827522486448288, - -0.0011446280404925346, - -0.048880934715270996, - -0.11934922635555267, - -0.005425691604614258, - 0.031441982835531235, - 0.0708688497543335, - -0.019094662740826607, - 0.015499190427362919, - -0.05891560763120651, - -0.06943809986114502, - 0.03880215436220169, - -0.022658992558717728, - 0.11601532995700836, - 0.03702371567487717, - 0.0017082486301660538, - 0.12184203416109085, - 0.01326817087829113, - 0.003069052705541253, - -0.04492931067943573, - -0.007773939054459333, - 0.01448272354900837, - 0.0442669615149498, - -0.06655454635620117, - -0.0586044043302536, - 0.002862915163859725, - 0.02099073864519596, - -0.006853929720818996, - 0.052816517651081085, - 0.03505631536245346, - 0.02370835654437542, - 0.02798202447593212, - -0.06569341570138931, - 0.021529115736484528, - -0.09267281740903854, - -0.041293468326330185, - 0.0020594631787389517, - -0.03777649253606796, - -0.04203295335173607, - 0.11180447787046432, - 0.031770844012498856, - 0.022221706807613373, - -0.04405190050601959, - -0.07476504147052765, - -0.05941647291183472, - 0.05638466775417328, - 0.059406913816928864, - -0.01249806396663189, - 0.008707843720912933, - 0.036489181220531464, - 0.008604108355939388, - 0.05506923794746399, - 0.09578022360801697, - 0.10153677314519882, - -0.013855861499905586, - 0.023530006408691406, - -0.045515142381191254, - 0.11799225211143494, - 0.054027266800403595, - -0.06644414365291595, - -0.0875316858291626, - -0.015532460063695908, - -0.06729471683502197, - 0.04164282605051994, - -0.015173353254795074, - 0.0241103433072567, - 0.01613209769129753, - -0.024961547926068306, - -0.08904419094324112, - -0.08301189541816711, - 0.08476808667182922, - -0.06067796051502228, - -0.021545374765992165, - -0.07147687673568726, - 0.051183976233005524, - 0.08135366439819336, - 0.0504799410700798, - -0.012078030034899712, - -0.012088810093700886, - 0.04369615390896797, - -0.06308901309967041, - 0.002464691177010536, - 0.05622190982103348, - 0.0018578750314190984, - -0.09580859541893005, - 0.013557873666286469, - -0.08640974760055542, - 0.0827709287405014, - -0.049802280962467194, - 0.15335458517074585, - -0.002155531430616975, - -0.06400637328624725, - -0.072476327419281, - 0.02539350464940071, - -0.031643129885196686, - 0.05469140410423279, - 0.030460383743047714, - 0.08160100877285004, - 0.07404012233018875, - -0.026813236996531487, - 0.07912090420722961, - 0.03971291333436966, - -0.018852807581424713, - -0.06498745828866959, - -0.05719950795173645, - -0.033781807869672775, - 0.027375701814889908, - -0.025486808270215988, - -0.09414863586425781, - 0.019231317564845085, - 0.04031920060515404, - 0.014105978421866894, - 0.06413815915584564, - 0.11309399455785751, - 0.058938100934028625, - -0.12928643822669983 - ] - }, - "p244_144.wav": { - "name": "p244", - "embedding": [ - 0.06451576948165894, - 0.07863955944776535, - -0.054214559495449066, - -0.0013287020847201347, - -0.04699229821562767, - 0.05234336107969284, - -0.11202690005302429, - 0.1264936923980713, - -0.04261700063943863, - 0.1227116659283638, - -0.05619831755757332, - 0.1020348072052002, - -0.0021212296560406685, - -0.0959632620215416, - -0.031342703849077225, - 0.031068187206983566, - -0.016820518299937248, - -0.012836553156375885, - -0.0575728565454483, - -0.007126937620341778, - 0.01864396035671234, - 0.042010921984910965, - -0.0033465642482042313, - -0.04457543045282364, - 0.03951434791088104, - 0.04612615704536438, - -0.003626084653660655, - -0.0012710131704807281, - -9.020802099257708e-05, - -0.014274194836616516, - 0.002750260755419731, - 0.09270736575126648, - -0.0549585297703743, - 0.02991463616490364, - 0.04406115040183067, - 0.013795966282486916, - -0.0028166677802801132, - -0.0755537897348404, - -0.004171857610344887, - 0.0017133401706814766, - -0.020847436040639877, - 0.09847398102283478, - 0.04870182275772095, - -0.01996915228664875, - 0.0008741049095988274, - 0.023187611252069473, - 0.0064304484985768795, - -0.06064082682132721, - -0.0796089768409729, - 0.18075178563594818, - 0.021234050393104553, - 0.007563202176243067, - -0.10967054218053818, - -0.030316786840558052, - 0.07097498327493668, - -0.011462385766208172, - -0.04815720021724701, - -0.06891772150993347, - 0.022153671830892563, - 0.12933334708213806, - -0.008986820466816425, - -0.06296688318252563, - 0.00954245962202549, - 0.10089502483606339, - 0.04547721892595291, - 0.03384922072291374, - 0.08851581066846848, - 0.1031089574098587, - -0.014161994680762291, - 0.0418732725083828, - 0.05211334675550461, - 0.06060950458049774, - 0.04798581451177597, - -0.013754267245531082, - 0.041533492505550385, - -0.04157410189509392, - -0.021936986595392227, - 0.00012329593300819397, - -0.026196949183940887, - -0.06331545859575272, - -0.0151357501745224, - 0.012079700827598572, - 0.018896345049142838, - 0.07096876204013824, - -0.05173385143280029, - 0.03253144398331642, - 0.05863405019044876, - -0.057456113398075104, - 0.07040925323963165, - 0.07698200643062592, - 0.019345292821526527, - 0.010062191635370255, - -0.07948547601699829, - -0.0973343774676323, - 0.04828553646802902, - -0.017899371683597565, - 0.05202047899365425, - 0.042936474084854126, - 0.03044051304459572, - 0.017331190407276154, - 0.07494838535785675, - 0.017454246059060097, - 0.0014740910846740007, - -0.021523334085941315, - -0.06535103172063828, - 0.15509024262428284, - 0.11784021556377411, - -0.01838667131960392, - 0.008557137101888657, - -0.03870384395122528, - 0.015690870583057404, - 0.04523897171020508, - -0.11500421166419983, - -0.09417371451854706, - 0.02455427311360836, - 0.010425731539726257, - 0.011744928546249866, - 0.09375882148742676, - 0.026946041733026505, - 0.016524648293852806, - 0.05758378282189369, - -0.09494365751743317, - -0.06495655328035355, - -0.006743422709405422, - 0.010163147002458572, - -0.08007995039224625, - 0.041595760732889175, - 0.07645824551582336, - -0.010622847825288773, - -0.00458108726888895, - 0.07820293307304382, - 0.02537374198436737, - 0.02983633056282997, - -0.020779289305210114, - 0.03136895224452019, - 0.05646835267543793, - 0.009946179576218128, - -0.006923624314367771, - 0.02413981407880783, - 0.03297823667526245, - 0.07414369285106659, - 0.007161813322454691, - -0.00267966091632843, - -0.10024695098400116, - 0.022871360182762146, - 0.07752461731433868, - 0.03979470208287239, - -0.05954083800315857, - -0.0264838095754385, - -0.007483895402401686, - -0.05975719541311264, - -0.004031844437122345, - 0.006820830050855875, - 0.07728968560695648, - 0.019074691459536552, - 0.002906989539042115, - 0.1524740308523178, - -0.007221294566988945, - 0.011522188782691956, - -0.028411056846380234, - 0.04153662919998169, - 0.034812286496162415, - 0.05945446342229843, - -0.04929729923605919, - -0.09740880131721497, - 0.0042921812273561954, - 0.01036841794848442, - -0.014612752012908459, - 0.03148571774363518, - 0.05867883190512657, - -0.027848713099956512, - 0.04501333832740784, - -0.07449093461036682, - 0.01893012970685959, - -0.11056061834096909, - -0.013285566121339798, - -0.006873646751046181, - -0.061138808727264404, - -0.030024878680706024, - 0.0877450704574585, - 0.016684407368302345, - 0.05443602427840233, - -0.028466980904340744, - -0.09104223549365997, - -0.03484445437788963, - 0.05966056138277054, - 0.07343141734600067, - -0.054386381059885025, - -0.004553365521132946, - 0.05119304358959198, - 0.036805443465709686, - -0.01783037930727005, - 0.0653134137392044, - 0.0833202451467514, - -0.048128098249435425, - -0.03658363223075867, - -0.06021568924188614, - 0.12124153971672058, - 0.04905258119106293, - -0.10331075638532639, - -0.05194811522960663, - -0.0427817665040493, - -0.031648486852645874, - -0.020182698965072632, - -0.026452865451574326, - 0.030227527022361755, - 0.05226399004459381, - -0.027822185307741165, - -0.1087491512298584, - -0.1005541980266571, - 0.05035927891731262, - -0.07216939330101013, - 0.0235403161495924, - -0.06493920087814331, - 0.03590066730976105, - 0.05739014595746994, - 0.04634343832731247, - -0.044089142233133316, - -0.01857799105346203, - -0.023557066917419434, - -0.061096809804439545, - -0.03005470335483551, - -0.008483832702040672, - 0.03132792189717293, - -0.06305155158042908, - 0.00618013646453619, - -0.05518964305520058, - 0.05967462807893753, - -0.05417861044406891, - 0.13946104049682617, - -0.011814150959253311, - -0.08001607656478882, - -0.09965641796588898, - -0.015382720157504082, - -0.038887836039066315, - 0.05071520432829857, - 0.04677646607160568, - 0.025949567556381226, - 0.020992448553442955, - -0.06595253944396973, - 0.09091810882091522, - 0.08341232687234879, - -0.007141642272472382, - -0.07471198588609695, - -0.051463689655065536, - -0.026010246947407722, - 0.05512811616063118, - 0.016546163707971573, - -0.03272877633571625, - 0.029712345451116562, - 0.016880350187420845, - -0.023146355524659157, - 0.08148369193077087, - 0.07711365818977356, - 0.0578840896487236, - -0.10065698623657227 - ] - }, - "p244_318.wav": { - "name": "p244", - "embedding": [ - 0.04507553204894066, - 0.10920147597789764, - -0.022158142179250717, - 0.011556160636246204, - -0.06520803272724152, - 0.05223945528268814, - -0.13449203968048096, - 0.13945050537586212, - -0.03241237252950668, - 0.13587743043899536, - -0.06733669340610504, - 0.11064039915800095, - -0.04449087381362915, - -0.14924824237823486, - -0.014828489162027836, - 0.059912145137786865, - -0.051316335797309875, - -0.04313979297876358, - -0.06568493694067001, - -0.04600934311747551, - 0.018532564863562584, - 0.023898029699921608, - 0.02709241770207882, - 0.014347524382174015, - 0.035172414034605026, - 0.07545115798711777, - 6.184587255120277e-05, - 0.03931276127696037, - 0.002304574241861701, - -0.043067969381809235, - -0.03390832245349884, - 0.08618511259555817, - -0.05207951366901398, - 0.00672593479976058, - 0.03976500779390335, - -0.022910870611667633, - 0.009279772639274597, - -0.04141080379486084, - -0.008341005071997643, - 0.018926098942756653, - -0.027027040719985962, - 0.09029260277748108, - 0.009867168962955475, - -0.005765540990978479, - 0.025646712630987167, - 0.03594989329576492, - -0.006896687671542168, - -0.044028256088495255, - -0.10330000519752502, - 0.16128036379814148, - 0.08075575530529022, - -0.01955389976501465, - -0.06548656523227692, - -0.05060984194278717, - 0.09168876707553864, - -0.0356663353741169, - -0.1006714403629303, - -0.06021656095981598, - 0.07082536816596985, - 0.11834166198968887, - -0.047988057136535645, - -0.04068361595273018, - 0.02116357535123825, - 0.13058772683143616, - 0.07561755925416946, - 0.07317395508289337, - 0.0645039975643158, - 0.11565060913562775, - -0.06145942956209183, - 0.002869861666113138, - 0.06504159420728683, - 0.052801087498664856, - 0.06237401068210602, - 0.009972390718758106, - 0.022321166470646858, - -0.01706426590681076, - 0.009798907674849033, - -0.003948776051402092, - -0.022489584982395172, - -0.0320168063044548, - -0.01852479949593544, - 0.013525784946978092, - -0.015719957649707794, - 0.019091691821813583, - -0.012450532987713814, - 0.059192802757024765, - 0.06244989112019539, - -0.02332986518740654, - 0.08280375599861145, - 0.03874257206916809, - 0.015305336564779282, - 0.07569806277751923, - -0.0913001000881195, - -0.05676039680838585, - 0.04459819197654724, - -0.003976620268076658, - 0.03136901929974556, - 0.046301960945129395, - 0.03205833584070206, - -0.004987073130905628, - 0.12204782664775848, - 0.058196671307086945, - -0.008118255995213985, - 0.029100563377141953, - -0.0868886336684227, - 0.15975579619407654, - 0.08245521783828735, - -0.04829215258359909, - 0.04312577843666077, - -0.017702851444482803, - 0.03541550412774086, - 0.040521711111068726, - -0.10498850047588348, - -0.08655978739261627, - 0.0007403949275612831, - 0.006318551953881979, - -0.049518685787916183, - 0.08220335841178894, - -0.0022732438519597054, - 0.040700219571590424, - 0.11848847568035126, - -0.07807755470275879, - -0.05293574556708336, - 0.007153650745749474, - 0.045477889478206635, - -0.08164584636688232, - 0.0372631810605526, - 0.08606104552745819, - 0.002052789553999901, - 0.042651813477277756, - 0.11153598874807358, - 0.010337131097912788, - 0.0033313168678432703, - 0.013698937371373177, - -0.03761139512062073, - 0.009935274720191956, - 0.0017573998775333166, - -0.009830291382968426, - 0.03997397422790527, - 0.03306715190410614, - 0.05466125160455704, - -0.01318013109266758, - -0.0031720383558422327, - -0.12026414275169373, - 0.02907611057162285, - 0.038955021649599075, - 0.06646828353404999, - -0.02589097060263157, - 0.0007897550240159035, - -0.03274973854422569, - -0.06406117975711823, - -0.005779765546321869, - 0.004290500655770302, - 0.06758448481559753, - -0.049288880079984665, - -0.007854145020246506, - 0.1344522088766098, - 0.036866143345832825, - 0.009831075556576252, - -0.06030388921499252, - -0.018817909061908722, - 0.011213169433176517, - 0.052855901420116425, - -0.07131435722112656, - -0.08908241987228394, - -0.011078552342951298, - 0.05069715529680252, - -0.0054439883679151535, - 0.10068371146917343, - 0.058539845049381256, - -0.0010237207170575857, - 0.015886269509792328, - -0.04767495393753052, - 0.03443163260817528, - -0.054864950478076935, - -0.055831171572208405, - -0.007442827802151442, - -0.022288542240858078, - -0.045784592628479004, - 0.07440043985843658, - 0.010203235782682896, - 0.06714300066232681, - -0.025977984070777893, - -0.08768455684185028, - -0.08800902962684631, - 0.05272018164396286, - 0.06623592972755432, - -0.03501349315047264, - 0.049074240028858185, - 0.08077995479106903, - -0.02768271416425705, - 0.03973587974905968, - 0.06374876946210861, - 0.11115764826536179, - -0.03982605040073395, - 0.022942883893847466, - -0.07662893831729889, - 0.049810923635959625, - 0.05544648319482803, - -0.10768159478902817, - -0.07013879716396332, - -0.038094114512205124, - -0.04538816958665848, - 0.0239694956690073, - -0.022712329402565956, - 0.02705361135303974, - 0.05473530292510986, - 0.0023576742969453335, - -0.07717382162809372, - -0.11067014932632446, - 0.087740957736969, - -0.0760345607995987, - 0.019093003123998642, - -0.07037229835987091, - 0.045412786304950714, - 0.0776141807436943, - 0.05505777895450592, - -0.029280412942171097, - -0.015065735206007957, - 0.03831012174487114, - 0.0002976396935991943, - 0.02039031870663166, - 0.05480428412556648, - 0.05185496434569359, - -0.09379037469625473, - -0.0010709408670663834, - -0.09537047892808914, - 0.0642523318529129, - -0.014521993696689606, - 0.1528104990720749, - 0.027624811977148056, - -0.03512641787528992, - -0.09572188556194305, - 0.021997952833771706, - -0.04331353306770325, - 0.058442965149879456, - 0.021160349249839783, - 0.05122164264321327, - 0.05405889451503754, - -0.039488621056079865, - 0.11723458766937256, - 0.04998578876256943, - -0.05880585312843323, - -0.07599344104528427, - -0.04550326615571976, - -0.04497572034597397, - 0.047326985746622086, - 0.021340832114219666, - -0.08772169798612595, - -0.023435043171048164, - 0.011185297742486, - -0.02631141059100628, - 0.08280722796916962, - 0.13119782507419586, - 0.08854357898235321, - -0.10515636205673218 - ] - }, - "p244_007.wav": { - "name": "p244", - "embedding": [ - 0.045149561017751694, - 0.09462827444076538, - -0.004983566235750914, - 0.01441553607583046, - -0.040921974927186966, - 0.0460314117372036, - -0.1374877691268921, - 0.14266598224639893, - -0.02844548225402832, - 0.14590361714363098, - -0.10295730829238892, - 0.10899394005537033, - -0.03622077777981758, - -0.1817992627620697, - -0.010942138731479645, - 0.049713678658008575, - -0.018514594063162804, - -0.01720358617603779, - -0.01836828701198101, - -0.02213156782090664, - 0.05242509767413139, - 0.03886376693844795, - 0.011565125547349453, - 0.0005401832750067115, - 0.008142187260091305, - 0.060174088925123215, - -0.002350371330976486, - 0.036150168627500534, - 0.009359965100884438, - -0.028012793511152267, - -0.02911045402288437, - 0.11387284845113754, - -0.042926009744405746, - 0.01754629611968994, - 0.05512300133705139, - -0.0023006401024758816, - -0.015515687875449657, - -0.059416264295578, - -0.0034726187586784363, - -0.01844344660639763, - -0.052459970116615295, - 0.051387228071689606, - 0.018303057178854942, - -0.006816095672547817, - 0.048413462936878204, - 0.04628662019968033, - -0.016710927709937096, - -0.04815246909856796, - -0.0959140956401825, - 0.14691177010536194, - 0.07315322756767273, - 0.0010720882564783096, - -0.060489654541015625, - -0.05905752629041672, - 0.09213852137327194, - -0.004349768161773682, - -0.09773315489292145, - -0.03875022754073143, - 0.09545882046222687, - 0.15052419900894165, - -0.03678842633962631, - -0.04767787456512451, - 0.029551643878221512, - 0.11777134984731674, - 0.03265444561839104, - 0.09840225428342819, - 0.07757331430912018, - 0.10743063688278198, - -0.01601983606815338, - 0.0037266486324369907, - 0.0393899604678154, - 0.06142648309469223, - 0.05681558698415756, - -0.024123316630721092, - 0.019066978245973587, - 0.005068219266831875, - -0.021948404610157013, - 0.018842605873942375, - -0.03453856706619263, - -0.024402549490332603, - -0.01040874794125557, - -0.0016926064854487777, - -0.0013946382096037269, - 0.014890472404658794, - -0.02607232891023159, - 0.04491014406085014, - 0.04575467109680176, - -0.0022593028843402863, - 0.07943510264158249, - 0.00871972180902958, - 0.0077266693115234375, - 0.06365819275379181, - -0.08963986486196518, - -0.07812100648880005, - 0.03682796657085419, - 0.0006405137246474624, - 0.006351283751428127, - 0.0839984342455864, - 0.04083499312400818, - -0.02534095197916031, - 0.1304074376821518, - 0.027666514739394188, - -0.001957169035449624, - 0.028884446248412132, - -0.10244368016719818, - 0.13300222158432007, - 0.0867403969168663, - -0.040909938514232635, - 0.040179602801799774, - -0.06159123778343201, - 0.06630713492631912, - 0.06784448772668839, - -0.14018531143665314, - -0.05995617434382439, - 0.027340415865182877, - 0.02889484167098999, - -0.032858945429325104, - 0.11932780593633652, - -0.007023673038929701, - 0.029417915269732475, - 0.11900245398283005, - -0.0956362634897232, - -0.07041047513484955, - -0.024063672870397568, - 0.04008038341999054, - -0.08925782144069672, - 0.059200387448072433, - 0.05558852478861809, - -0.00468786945566535, - 0.023262869566679, - 0.0776807963848114, - -0.019946567714214325, - 0.006450870539993048, - -0.002378875855356455, - -0.05001462623476982, - 0.01711973547935486, - -0.045849110931158066, - -0.0012377402745187283, - 0.01026424765586853, - 0.041825130581855774, - 0.052442729473114014, - 0.005560107529163361, - -0.03959401324391365, - -0.11477609723806381, - 0.011388657614588737, - 0.0426616445183754, - 0.06983286142349243, - -0.006180457770824432, - -0.030488889664411545, - -0.03860398381948471, - -0.056340109556913376, - 0.005566542502492666, - -0.01672866940498352, - 0.05992467328906059, - -0.02122928760945797, - 0.009386766701936722, - 0.09203469753265381, - 0.03568700700998306, - -0.001121892943046987, - -0.06701791286468506, - -0.05225416272878647, - 0.006604105234146118, - 0.03601774573326111, - -0.08915388584136963, - -0.0722610354423523, - -0.01153799332678318, - 0.041301801800727844, - -0.02586875855922699, - 0.052861955016851425, - 0.04162454232573509, - 0.023200949653983116, - 0.02434510551393032, - -0.07235388457775116, - 0.015180274844169617, - -0.10750853270292282, - -0.08713891357183456, - -0.004747116472572088, - 0.003373709972947836, - -6.0791149735450745e-05, - 0.06760033965110779, - -0.0034182898234575987, - 0.045295488089323044, - -0.0170745886862278, - -0.06334178149700165, - -0.0921957939863205, - 0.059231236577034, - 0.07021010667085648, - -0.01315352227538824, - 0.0540599450469017, - 0.04610733315348625, - -0.057014286518096924, - 0.04529346153140068, - 0.05259294435381889, - 0.11683603376150131, - -0.017661986872553825, - 0.031231671571731567, - -0.06803632527589798, - 0.07313703000545502, - 0.09136772155761719, - -0.07618334889411926, - -0.08612386882305145, - -0.036052532494068146, - -0.06151314824819565, - 0.039730288088321686, - -0.019058262929320335, - -0.006168651860207319, - 0.0071921637281775475, - -0.010274677537381649, - -0.09668649733066559, - -0.0691647082567215, - 0.05889381095767021, - -0.06229701638221741, - -0.010126300156116486, - -0.09735549986362457, - 0.06448353826999664, - 0.09117724001407623, - 0.03756062686443329, - -0.029363583773374557, - -0.03031315468251705, - 0.040525857359170914, - -0.04621623083949089, - 0.0024459604173898697, - 0.03496124967932701, - 0.04540511965751648, - -0.09806956350803375, - 0.008444282226264477, - -0.07950171828269958, - 0.04574510455131531, - -0.05788262188434601, - 0.1417692005634308, - 0.009513124823570251, - -0.054678451269865036, - -0.08371474593877792, - 0.03866763785481453, - 0.003159400075674057, - 0.030905848369002342, - 0.020846746861934662, - 0.04654347896575928, - 0.03371462970972061, - -0.08124206960201263, - 0.11730848252773285, - 0.024292364716529846, - -0.023562973365187645, - -0.061257652938365936, - -0.05499252676963806, - -0.050434406846761703, - 0.009189965203404427, - -0.002579478081315756, - -0.09833388030529022, - -0.037157781422138214, - 0.018929090350866318, - 9.888783097267151e-05, - 0.0609932541847229, - 0.13144658505916595, - 0.046483367681503296, - -0.12329264730215073 - ] - }, - "p244_161.wav": { - "name": "p244", - "embedding": [ - 0.06870262324810028, - 0.10832621902227402, - 0.018237516283988953, - 0.0003815444651991129, - -0.018562277778983116, - 0.07336337864398956, - -0.15925759077072144, - 0.13991522789001465, - -0.060507576912641525, - 0.15200191736221313, - -0.08756881207227707, - 0.10665490478277206, - -0.03218308091163635, - -0.1784062385559082, - -0.051562707871198654, - 0.06383423507213593, - -0.051114290952682495, - -0.021441539749503136, - -0.010848100297152996, - -0.00442859809845686, - 0.03806187957525253, - 0.026988688856363297, - 0.028587399050593376, - 0.029623044654726982, - 0.022562410682439804, - 0.06481856107711792, - 0.006737282034009695, - 0.05229507014155388, - 0.0069920942187309265, - -0.05479402840137482, - -0.018677551299333572, - 0.11925399303436279, - -0.029504429548978806, - 0.025281410664319992, - 0.06654888391494751, - 0.013784918002784252, - 0.007076592650264502, - -0.08078533411026001, - -0.010977746918797493, - -0.02224605530500412, - -0.035707853734493256, - 0.06702031940221786, - 0.013324787840247154, - -0.002375748474150896, - 0.020236758515238762, - 0.04379139095544815, - 0.0005133097874931991, - -0.04975833743810654, - -0.09307645261287689, - 0.1431887149810791, - 0.05501990765333176, - 0.012574536725878716, - -0.0724792629480362, - -0.0848955512046814, - 0.10336392372846603, - -0.027185775339603424, - -0.11092164367437363, - -0.025609731674194336, - 0.08587907254695892, - 0.17760726809501648, - -0.046085044741630554, - -0.050447843968868256, - 0.029222603887319565, - 0.12457051873207092, - 0.03412794694304466, - 0.10647805780172348, - 0.07635490596294403, - 0.09448458254337311, - -0.010382408276200294, - 0.008122078143060207, - 0.048811670392751694, - 0.05862194299697876, - 0.06506988406181335, - -0.020888125523924828, - 0.02912452444434166, - 0.006172207184135914, - -0.027292665094137192, - 0.025266330689191818, - -0.023525765165686607, - -0.024357467889785767, - -0.02253073826432228, - -0.00208936701528728, - -0.011701757088303566, - 0.01969437301158905, - -0.015462040901184082, - 0.039249107241630554, - 0.01680240035057068, - -0.018924657255411148, - 0.08197642862796783, - 0.040215566754341125, - 0.037328775972127914, - 0.06807029247283936, - -0.065538689494133, - -0.0797659158706665, - 0.04386014863848686, - 0.0059586199931800365, - 0.0171256922185421, - 0.07328593730926514, - 0.044418882578611374, - -0.022651297971606255, - 0.11246055364608765, - 0.04188261553645134, - 0.009091696701943874, - 0.015819981694221497, - -0.1156444177031517, - 0.12238971889019012, - 0.07270428538322449, - -0.04746101424098015, - 0.03256046026945114, - -0.0442255400121212, - 0.07173807919025421, - 0.09776537120342255, - -0.15303656458854675, - -0.09183570742607117, - 0.04038841277360916, - 0.02522859536111355, - -0.0050983852706849575, - 0.10459312796592712, - -0.014848722144961357, - 0.011565989814698696, - 0.09376179426908493, - -0.07401733100414276, - -0.05897212028503418, - -0.022061064839363098, - 0.039304040372371674, - -0.09357898682355881, - 0.06608165055513382, - 0.0492662712931633, - 0.0027238510083407164, - -0.017883144319057465, - 0.09324191510677338, - -0.01609242893755436, - -0.01770544983446598, - -0.008201437070965767, - -0.04062352329492569, - 0.017123602330684662, - -0.04358793422579765, - 0.011792747303843498, - 0.002367309993132949, - 0.04382942244410515, - 0.025523971766233444, - 0.015377247706055641, - -0.05584787577390671, - -0.11316414922475815, - -0.0018854388035833836, - 0.0531994067132473, - 0.06586024910211563, - -0.0036472126375883818, - -0.039595119655132294, - -0.03285756707191467, - -0.02714969962835312, - 0.022000622004270554, - -0.0215320885181427, - 0.07059452682733536, - 0.005336389876902103, - 0.006951726507395506, - 0.1057104766368866, - 0.014294530265033245, - 0.011490853503346443, - -0.06466006487607956, - -0.019668901339173317, - 0.03289859741926193, - 0.04279383271932602, - -0.07607969641685486, - -0.07183100283145905, - 0.0034481151960790157, - 0.03494783490896225, - -0.014473985880613327, - 0.0458655022084713, - 0.03803864121437073, - 0.014231516048312187, - 0.025620516389608383, - -0.0582166388630867, - 0.014855700545012951, - -0.11558549106121063, - -0.08754715323448181, - -0.008582242764532566, - -0.011124735698103905, - 0.003764317836612463, - 0.06719385087490082, - 0.01484648883342743, - 0.03679465875029564, - -0.03116190806031227, - -0.0819769948720932, - -0.08818960189819336, - 0.06477537751197815, - 0.09183748066425323, - 0.006224717013537884, - 0.03845309466123581, - 0.0348658561706543, - -0.020722847431898117, - 0.06271000951528549, - 0.05161736533045769, - 0.11731331795454025, - -0.027741428464651108, - 0.02158561907708645, - -0.06975573301315308, - 0.07015620172023773, - 0.08249412477016449, - -0.08361397683620453, - -0.09463249891996384, - -0.019229568541049957, - -0.05283684656023979, - 0.04383622109889984, - -0.008865853771567345, - 0.005712880752980709, - 0.015254969708621502, - -0.032408811151981354, - -0.09880499541759491, - -0.08109933882951736, - 0.09112220257520676, - -0.06285277009010315, - -0.009766589850187302, - -0.08192508667707443, - 0.07207295298576355, - 0.07351924479007721, - 0.04085075855255127, - -0.024230893701314926, - -0.004076804965734482, - 0.03783038258552551, - -0.05463511496782303, - -0.019450504332780838, - 0.03397679701447487, - 0.016385337337851524, - -0.10431455075740814, - 0.01707218773663044, - -0.09213979542255402, - 0.07221890985965729, - -0.07339034974575043, - 0.16168177127838135, - -0.02109682373702526, - -0.07328248023986816, - -0.08050103485584259, - 0.009347349405288696, - -0.01990067958831787, - 0.045343443751335144, - 0.029147714376449585, - 0.0550139918923378, - 0.02574208192527294, - -0.06777419149875641, - 0.10246551036834717, - 0.03721686452627182, - -0.017056453973054886, - -0.07194140553474426, - -0.05997295305132866, - -0.04421697184443474, - 0.022755298763513565, - -0.020484410226345062, - -0.09410213679075241, - -0.023953229188919067, - 0.018044713884592056, - -0.0023260421585291624, - 0.07099057734012604, - 0.13451765477657318, - 0.03564916178584099, - -0.12935785949230194 - ] - }, - "p244_322.wav": { - "name": "p244", - "embedding": [ - 0.05867404490709305, - 0.08776416629552841, - -0.009117075242102146, - 0.006275969557464123, - -0.05828960984945297, - 0.05608009174466133, - -0.15756559371948242, - 0.15339866280555725, - -0.043311361223459244, - 0.12987080216407776, - -0.04376037046313286, - 0.13991306722164154, - -4.772613010572968e-06, - -0.19379335641860962, - -0.037924982607364655, - 0.0577777698636055, - -0.056644003838300705, - -0.04867164045572281, - -0.009366032667458057, - -0.03086036816239357, - 0.04147467762231827, - 0.04401761293411255, - 0.03154900297522545, - 0.021233724430203438, - 0.025893524289131165, - 0.08144257962703705, - 0.015503056347370148, - 0.05473456159234047, - 0.020258257165551186, - -0.06304898113012314, - -0.04084392264485359, - 0.07913471013307571, - -0.05371316149830818, - -0.007965032942593098, - 0.04409767687320709, - -0.03573685139417648, - 0.007143785711377859, - -0.06800752133131027, - -0.02970271185040474, - 0.017500991001725197, - -0.03473828732967377, - 0.09454252570867538, - 0.03404957056045532, - -0.01597454585134983, - 0.023009149357676506, - 0.03175893798470497, - -0.0014671747339889407, - -0.05008109658956528, - -0.1111796572804451, - 0.14726674556732178, - 0.08040410280227661, - -0.002775174332782626, - -0.06350021809339523, - -0.05659450590610504, - 0.10560932010412216, - -0.016208071261644363, - -0.1032608300447464, - -0.03512602671980858, - 0.07019481062889099, - 0.1424742490053177, - -0.04023712873458862, - -0.04222244396805763, - 0.04894430190324783, - 0.1261807233095169, - 0.05756570026278496, - 0.07596937566995621, - 0.09350641071796417, - 0.09585306793451309, - -0.03165556862950325, - 0.018457213416695595, - 0.049356598407030106, - 0.08357895910739899, - 0.025122439488768578, - -0.008470152504742146, - 0.025872208178043365, - -0.00923940259963274, - -0.014261228032410145, - -0.011694937944412231, - -0.007796307094395161, - -0.010588720440864563, - -0.008430177345871925, - 0.014417783357203007, - -0.0044074226170778275, - 0.03972719609737396, - -0.02282765321433544, - 0.07116247713565826, - 0.010834299959242344, - -0.006394419819116592, - 0.07449810951948166, - 0.021347124129533768, - 0.03531501069664955, - 0.07125614583492279, - -0.086465023458004, - -0.07489131391048431, - 0.04830196872353554, - -0.0001503361272625625, - 0.037160806357860565, - 0.07645300030708313, - 0.04441075026988983, - -0.015106570906937122, - 0.13763055205345154, - 0.06629740446805954, - -0.02261001244187355, - 0.023913847282528877, - -0.08670985698699951, - 0.1360081434249878, - 0.07539215683937073, - -0.03781836852431297, - 0.05808195844292641, - -0.057647716253995895, - 0.07614754140377045, - 0.049175336956977844, - -0.14671207964420319, - -0.08810988813638687, - 0.04085970297455788, - 0.039393968880176544, - -0.022739311680197716, - 0.14198949933052063, - -0.01827811822295189, - 0.05077064409852028, - 0.09974881261587143, - -0.06040159985423088, - -0.0496547557413578, - -0.018630361184477806, - 0.06358248740434647, - -0.09324121475219727, - 0.08466548472642899, - 0.06435555219650269, - -0.01880018040537834, - 0.01887170970439911, - 0.09250757098197937, - -0.019450407475233078, - -0.008574271574616432, - 0.013556569814682007, - -0.03143060952425003, - 0.0165313258767128, - -0.021760541945695877, - 0.007706217002123594, - 0.020902518182992935, - 0.0266584400087595, - 0.03983909636735916, - -0.0017553266370669007, - -0.04117373377084732, - -0.1326344758272171, - 0.01696479506790638, - 0.009681995026767254, - 0.0847819596529007, - -0.0011977946851402521, - -0.04532928764820099, - -0.041529830545186996, - -0.0410635843873024, - -0.020994078367948532, - 0.007407172117382288, - 0.06456858664751053, - -0.028331449255347252, - 0.013436204753816128, - 0.08333013206720352, - 0.04634971171617508, - 0.015180795453488827, - -0.030198749154806137, - -0.03350245580077171, - 0.020259691402316093, - 0.05327599495649338, - -0.07026441395282745, - -0.06719457358121872, - -0.011357349343597889, - 0.04443669319152832, - -0.02031329646706581, - 0.05439165607094765, - 0.0497092641890049, - 0.028534119948744774, - 0.02472635731101036, - -0.07578153163194656, - 0.04309258237481117, - -0.08571420609951019, - -0.07007020711898804, - -0.015253056772053242, - 0.011146986857056618, - -0.047452718019485474, - 0.06553606688976288, - 0.01987873949110508, - 0.07775586098432541, - -0.026488518342375755, - -0.05859935283660889, - -0.07976828515529633, - 0.03688163310289383, - 0.08365271240472794, - -0.011485207825899124, - 0.041748978197574615, - 0.0557313933968544, - -0.012076572515070438, - 0.0557733029127121, - 0.04484863951802254, - 0.10123520344495773, - -0.025056693702936172, - 0.00805388018488884, - -0.05475130304694176, - 0.07183671742677689, - 0.06349208950996399, - -0.09084787964820862, - -0.06388452649116516, - -0.01715942658483982, - -0.06846684217453003, - 0.039339762181043625, - -0.0042763021774590015, - 0.017304273322224617, - 0.0237430389970541, - 0.008652533404529095, - -0.1057690903544426, - -0.08377397805452347, - 0.07391486316919327, - -0.08307552337646484, - 0.0057650376111269, - -0.08851455897092819, - 0.05180005356669426, - 0.12259875237941742, - 0.028729919344186783, - -0.025784656405448914, - -0.04210766777396202, - 0.027388472110033035, - -0.008438419550657272, - 0.02171332761645317, - 0.057243864983320236, - 0.05695510655641556, - -0.11887624114751816, - 0.0033189682289958, - -0.08494004607200623, - 0.03907385095953941, - -0.04326308146119118, - 0.1467370092868805, - 0.023233477026224136, - -0.0502345971763134, - -0.0973343551158905, - 0.03095272183418274, - -0.023961668834090233, - 0.06033830717206001, - 0.03715446963906288, - 0.05577002838253975, - 0.05007936432957649, - -0.07353881001472473, - 0.10891478508710861, - 0.05222782492637634, - -0.048930149525403976, - -0.08264405280351639, - -0.02988201566040516, - -0.02504650317132473, - 0.049169961363077164, - 0.03359472379088402, - -0.08841452747583389, - -0.048421625047922134, - 0.02786114625632763, - -0.011260537430644035, - 0.08766349405050278, - 0.13737866282463074, - 0.047570183873176575, - -0.1182001456618309 - ] - }, - "p244_029.wav": { - "name": "p244", - "embedding": [ - 0.02780189737677574, - 0.06881777197122574, - -0.02166341058909893, - 0.035300370305776596, - -0.08039987087249756, - 0.03737490996718407, - -0.13218814134597778, - 0.10533221811056137, - -0.025261640548706055, - 0.13056746125221252, - -0.06294182687997818, - 0.11150313168764114, - -0.04067876562476158, - -0.19179928302764893, - 0.01603834703564644, - 0.07331312447786331, - -0.009981782175600529, - -0.05697910487651825, - -0.030502507463097572, - -0.03456566482782364, - 0.018658112734556198, - 0.04433068633079529, - 0.030695535242557526, - 0.009590781293809414, - 0.030597832053899765, - 0.08441580086946487, - -0.01755676046013832, - 0.020735016092658043, - -0.011478307656943798, - -0.03744737058877945, - -0.05290212854743004, - 0.08481673896312714, - -0.06441842019557953, - -0.016748838126659393, - 0.022417467087507248, - -0.007377291098237038, - -0.008932935073971748, - -0.04833114892244339, - -0.009816067293286324, - 0.0020654138643294573, - -0.06729279458522797, - 0.0770978033542633, - 0.012322187423706055, - -0.013452468439936638, - 0.03841298446059227, - 0.011561397463083267, - -0.024539481848478317, - -0.02239598147571087, - -0.1207062155008316, - 0.13176241517066956, - 0.06389179825782776, - -0.01150287501513958, - -0.06859362870454788, - -0.05717504769563675, - 0.09275449812412262, - -0.008093236945569515, - -0.09542311728000641, - -0.07539010047912598, - 0.08015977591276169, - 0.11930983513593674, - -0.026469871401786804, - -0.03782252222299576, - 0.023962363600730896, - 0.09392349421977997, - 0.06957662850618362, - 0.08792545646429062, - 0.05430028215050697, - 0.11039911210536957, - -0.03676654398441315, - -0.007545675151050091, - 0.0666150227189064, - 0.05513319373130798, - 0.03976689279079437, - -0.019877765327692032, - 0.010215479880571365, - 0.007984207943081856, - -0.0031649149022996426, - 0.008714050054550171, - -0.00264170253649354, - -0.021914878860116005, - -0.012283986434340477, - -0.026817915961146355, - -0.011580743826925755, - -0.002369352150708437, - -0.021885622292757034, - 0.04338505491614342, - 0.08456631004810333, - -0.0020076162181794643, - 0.08473724871873856, - 0.02747882902622223, - -0.02704799361526966, - 0.0778418481349945, - -0.08801056444644928, - -0.028749868273735046, - 0.03529080003499985, - 0.006499058101326227, - 0.003503114450722933, - 0.0772712379693985, - 0.03805812448263168, - -0.017157312482595444, - 0.12923437356948853, - 0.04269561544060707, - 0.006646237336099148, - 0.03647709637880325, - -0.08015980571508408, - 0.13249893486499786, - 0.07367956638336182, - -0.037179671227931976, - 0.04943344369530678, - -0.02214723825454712, - 0.051948897540569305, - 0.05367725342512131, - -0.10972532629966736, - -0.05366886779665947, - -0.00395756121724844, - -0.01649671234190464, - -0.05136849731206894, - 0.12127330899238586, - -0.013668501749634743, - 0.02866087108850479, - 0.12481474876403809, - -0.09382082521915436, - -0.07580876350402832, - 0.008934416808187962, - 0.027468513697385788, - -0.10574019700288773, - 0.049265168607234955, - 0.06492609530687332, - 0.001026851125061512, - 0.036990828812122345, - 0.08854550123214722, - -0.01331368274986744, - 0.019535653293132782, - 0.006677671801298857, - -0.04297717660665512, - 0.014578481204807758, - -0.010654295794665813, - -0.009864230640232563, - 0.08132299035787582, - 0.011906872503459454, - 0.06819181144237518, - -0.025784719735383987, - 0.006931353360414505, - -0.1369224637746811, - 0.028833262622356415, - 0.04176367074251175, - 0.0686354860663414, - -0.012330367229878902, - -0.008494798094034195, - -0.057070568203926086, - -0.09885986149311066, - 0.02841872163116932, - -0.0012829565675929189, - 0.08452381193637848, - -0.0442269928753376, - 0.005829977802932262, - 0.09953711926937103, - 0.05012792348861694, - -0.005873378366231918, - -0.0641418918967247, - -0.049663521349430084, - 0.00015880540013313293, - 0.05739030987024307, - -0.0848923772573471, - -0.06908732652664185, - -0.026412172242999077, - 0.05897587910294533, - -0.01342968363314867, - 0.07305772602558136, - 0.06559213995933533, - 0.026138633489608765, - 0.004874559119343758, - -0.07479707151651382, - 0.03167376294732094, - -0.041544221341609955, - -0.05901027098298073, - -0.023487603291869164, - -0.020500417798757553, - -0.03167291730642319, - 0.08064433932304382, - 0.013003415428102016, - 0.04186970368027687, - -0.03767181560397148, - -0.07162640243768692, - -0.10102683305740356, - 0.03790765255689621, - 0.046678703278303146, - -0.029464757069945335, - 0.04837606102228165, - 0.06666761636734009, - -0.06644361466169357, - 0.04189606010913849, - 0.046696633100509644, - 0.10919620096683502, - -0.04652491956949234, - 0.0415828600525856, - -0.044446270912885666, - 0.07271315157413483, - 0.08629599958658218, - -0.0788758173584938, - -0.06641732156276703, - -0.04304632544517517, - -0.0710979551076889, - 0.06476205587387085, - -0.027910947799682617, - -0.0032920720987021923, - 0.03390655666589737, - -0.007626053877174854, - -0.09001055359840393, - -0.10095858573913574, - 0.07489994913339615, - -0.038231879472732544, - -0.006134871859103441, - -0.09589746594429016, - 0.038394395262002945, - 0.04740843176841736, - 0.054574836045503616, - -0.03585117310285568, - -0.007327437400817871, - 0.046828169375658035, - -0.012232083827257156, - 0.027652762830257416, - 0.09809942543506622, - 0.04111935943365097, - -0.08717308938503265, - -0.04641895741224289, - -0.09534372389316559, - 0.08270589262247086, - -0.027644727379083633, - 0.1443927139043808, - 0.017893584445118904, - -0.023883726447820663, - -0.063459612429142, - 0.02851518988609314, - -0.010903319343924522, - 0.05522590130567551, - 0.045986589044332504, - 0.06351014971733093, - 0.045878518372774124, - -0.02977527305483818, - 0.11506573855876923, - 0.05919646471738815, - -0.031413257122039795, - -0.05762070417404175, - -0.0213331189006567, - -0.05005037412047386, - 0.04196877032518387, - 0.022439155727624893, - -0.1201159879565239, - 0.0053299106657505035, - 0.03308534622192383, - -0.013428907841444016, - 0.06381815671920776, - 0.1387225091457367, - 0.08890995383262634, - -0.09253202378749847 - ] - }, - "p244_407.wav": { - "name": "p244", - "embedding": [ - -0.003104584291577339, - 0.04657316207885742, - -0.032337043434381485, - 0.006645446643233299, - -0.05889582633972168, - 0.023109564557671547, - -0.0836152508854866, - 0.05858964845538139, - -0.03308698907494545, - 0.1238940954208374, - -0.03413597121834755, - 0.1005193442106247, - -0.01499311812222004, - -0.08105746656656265, - 0.023426655679941177, - 0.05755702406167984, - -0.011530330404639244, - -0.040308378636837006, - -0.0003295931965112686, - -0.08617779612541199, - 0.026843346655368805, - 0.013807281851768494, - -0.005035571753978729, - -0.01111688930541277, - 0.0010062993969768286, - 0.08500957489013672, - -0.016075022518634796, - -0.013842049986124039, - -0.019869215786457062, - -0.0630098357796669, - -0.04138507694005966, - 0.09601067006587982, - -0.037356168031692505, - -0.05952814221382141, - 0.02426801063120365, - -0.012836904264986515, - -0.005598604213446379, - -0.011211697943508625, - 0.02020454593002796, - 0.008303358219563961, - -0.10945820808410645, - 0.0837821438908577, - -0.018392261117696762, - -0.011588041670620441, - 0.05007948726415634, - -0.034542445093393326, - -0.05800371617078781, - 0.05362749844789505, - -0.042021967470645905, - 0.07242666929960251, - 0.08492620289325714, - -0.02868054062128067, - -0.04110778868198395, - -0.02114693820476532, - 0.05137369781732559, - 0.019055377691984177, - -0.1011195182800293, - -0.024596519768238068, - -0.0002370290458202362, - 0.07408127188682556, - -0.0005028368905186653, - -0.033601824194192886, - 0.03478960692882538, - 0.09339827299118042, - 0.06205793470144272, - 0.04223657771945, - 0.05290503799915314, - 0.06885270029306412, - -0.022216254845261574, - -0.029701411724090576, - 0.06996627151966095, - 0.0864732414484024, - 0.08215707540512085, - -0.0019089310662820935, - 0.02766697108745575, - -0.006614426150918007, - 0.0011562397703528404, - -0.05672324076294899, - -0.03587431460618973, - -0.028931934386491776, - -0.05705353617668152, - -0.021391846239566803, - -0.0013540992513298988, - 0.03384846821427345, - 0.0011343229562044144, - -0.006994025781750679, - 0.08271786570549011, - -0.02858877182006836, - 0.04757063835859299, - 0.031527962535619736, - -0.014183513820171356, - 0.04894658550620079, - -0.08426105231046677, - 0.008590849116444588, - 0.016310518607497215, - -0.019878674298524857, - 0.05104648321866989, - 0.07355128228664398, - 0.007673108018934727, - 0.017706256359815598, - 0.08254500478506088, - 0.029020095244050026, - 0.020456653088331223, - -0.0029742568731307983, - -0.07228829711675644, - 0.1103634387254715, - 0.07806919515132904, - -0.0640028715133667, - 0.006874486804008484, - 0.03914283961057663, - 0.040454551577568054, - -0.004827793687582016, - -0.09616594016551971, - -0.023870384320616722, - -0.024942860007286072, - 0.012525135651230812, - -0.012076758779585361, - 0.09087841212749481, - 0.01347122248262167, - 0.03773888200521469, - 0.09482701122760773, - -0.02195243164896965, - -0.0607881098985672, - -0.05246800556778908, - 0.02600812539458275, - -0.12688294053077698, - 0.0887662023305893, - 0.05488528311252594, - 0.045933984220027924, - 0.05349424108862877, - 0.10580737888813019, - 0.005932166241109371, - -0.008115613833069801, - -0.03361114114522934, - -0.03186650201678276, - -0.003121431451290846, - -0.00012975651770830154, - 0.04425520822405815, - 0.07043840736150742, - -0.006851738318800926, - 0.10119348019361496, - -0.007384748198091984, - 0.060464370995759964, - -0.07564433664083481, - 0.03929874673485756, - 0.0343942791223526, - 0.02475239336490631, - -0.03344819322228432, - -0.02465083636343479, - 0.0072366707026958466, - -0.06678535044193268, - -0.02442559227347374, - -0.023924626410007477, - 0.06874669343233109, - -0.029876066371798515, - -0.009793409146368504, - 0.09930677711963654, - 0.031654663383960724, - -0.0060859257355332375, - -0.002396952360868454, - -0.03451858088374138, - -0.013528370298445225, - 0.0750058963894844, - -0.13117572665214539, - -0.07055386900901794, - -0.020009178668260574, - 0.032913632690906525, - 0.045135047286748886, - 0.053581275045871735, - 0.08896920830011368, - -0.018656853586435318, - 0.026856394484639168, - -0.020285427570343018, - 0.024043720215559006, - -0.053148895502090454, - -0.05038430914282799, - -0.046974774450063705, - -0.08690065145492554, - -0.057863496243953705, - 0.04483678936958313, - -0.04021107405424118, - 0.045361801981925964, - -0.028334293514490128, - -0.07365195453166962, - -0.08450794219970703, - 0.017343856394290924, - 0.03447098284959793, - -0.026992756873369217, - 0.03211980685591698, - 0.10205669701099396, - -0.02623457834124565, - -0.01944817788898945, - 0.015529869124293327, - 0.10556671023368835, - -0.0641951709985733, - 0.02835429087281227, - -0.06852920353412628, - 0.05496248975396156, - 0.0796789675951004, - -0.024761170148849487, - -0.061186533421278, - -0.0679822713136673, - -0.03255509212613106, - 0.08795242756605148, - -0.04374832659959793, - -0.016944946721196175, - 0.026646820828318596, - -0.027378231287002563, - -0.061976246535778046, - -0.05818817391991615, - 0.0926298126578331, - -0.05986655876040459, - -0.012708021327853203, - -0.06789904087781906, - 0.008965477347373962, - -0.015787430107593536, - 0.07708202302455902, - -0.07744063436985016, - 0.05499912053346634, - 0.05589529499411583, - -0.016781218349933624, - 0.05208747088909149, - 0.08026955276727676, - 0.03256071358919144, - -0.04298686236143112, - -0.07182008028030396, - -0.06363420188426971, - 0.0448843352496624, - -0.026755396276712418, - 0.0501389242708683, - 0.026474572718143463, - -0.026602022349834442, - -0.046603161841630936, - 0.02742432802915573, - 0.01171579398214817, - 0.010041594505310059, - 0.1002071425318718, - 0.1084214597940445, - 0.01527472585439682, - -0.016209213063120842, - 0.07432680577039719, - 0.028180165216326714, - 0.0075395843014121056, - -0.022618385031819344, - 0.007898639887571335, - -0.04450123757123947, - 0.016117246821522713, - 0.049493271857500076, - -0.11122187972068787, - 0.06742001324892044, - 0.015724629163742065, - 0.01118016429245472, - 0.04433777183294296, - 0.05172194540500641, - 0.0658288300037384, - -0.06423455476760864 - ] - }, - "p244_235.wav": { - "name": "p244", - "embedding": [ - 0.08414724469184875, - 0.031948335468769073, - 0.008943088352680206, - -0.02238096296787262, - -0.02330591529607773, - 0.047428738325834274, - -0.10531490296125412, - 0.09980402886867523, - -0.04704798012971878, - 0.0699850395321846, - -0.08023872971534729, - 0.08879193663597107, - 0.017676588147878647, - -0.12182343006134033, - -0.0659368485212326, - 0.02796243131160736, - -0.03592311963438988, - 0.005282433703541756, - -0.06951486319303513, - -0.029010048136115074, - 0.011277561075985432, - 0.05407358705997467, - 0.033470313996076584, - -0.02317504957318306, - 0.029628541320562363, - 0.058356016874313354, - 0.03048108145594597, - 0.03721782565116882, - -0.00400970783084631, - -0.021969571709632874, - -0.0018918104469776154, - 0.08224688470363617, - -0.019491994753479958, - -0.022157397121191025, - 0.0456538200378418, - -0.0007916120812296867, - 0.03099163994193077, - -0.09128797054290771, - -0.03188329190015793, - 0.03247610852122307, - -0.04240315407514572, - 0.07372508943080902, - 0.06276065111160278, - -0.0047044456005096436, - 0.009728895500302315, - 0.015967829152941704, - 0.009108318015933037, - -0.08033211529254913, - -0.11000896990299225, - 0.17768913507461548, - 0.005370305851101875, - 0.04462099075317383, - -0.11519655585289001, - -0.01280895620584488, - 0.08057249337434769, - -0.022846464067697525, - -0.03344767168164253, - -0.03641297668218613, - 0.024675730615854263, - 0.14093877375125885, - -0.002063194289803505, - -0.03948536887764931, - 0.03993751108646393, - 0.07905098795890808, - 0.01084806490689516, - 0.021227842196822166, - 0.1313486546278, - 0.0696532279253006, - -0.0011959066614508629, - 0.0597175657749176, - 0.04390156269073486, - 0.0480753555893898, - 0.030905958265066147, - -0.021440064534544945, - 0.03045884147286415, - -0.02206547185778618, - -0.045527294278144836, - 0.0067911092191934586, - -0.028769362717866898, - -0.032696593552827835, - 0.010667145252227783, - 0.024968117475509644, - 0.037860311567783356, - 0.032501377165317535, - -0.0674109160900116, - 0.060953445732593536, - -0.010538906790316105, - -0.012828954495489597, - 0.055500272661447525, - 0.05890392139554024, - 0.008883259259164333, - -0.010890992358326912, - -0.027336928993463516, - -0.11041491478681564, - -0.003958722576498985, - 0.002464384539052844, - 0.03246554732322693, - 0.027331676334142685, - 0.026970436796545982, - -0.02828892692923546, - 0.07926802337169647, - 0.011447388678789139, - 0.013722170144319534, - -0.01360907033085823, - -0.06630753725767136, - 0.0808674767613411, - 0.11701808869838715, - -0.006666000932455063, - 0.025465281680226326, - -0.04413112998008728, - 0.021561142057180405, - 0.06509619951248169, - -0.09490412473678589, - -0.06714627891778946, - 0.03217704966664314, - 0.01808125711977482, - 0.07384863495826721, - 0.09053315222263336, - -0.00805019773542881, - 0.019038518890738487, - 0.04889168590307236, - -0.07183147966861725, - -0.026759475469589233, - -8.155964314937592e-05, - 0.012430368922650814, - -0.02079918049275875, - 0.02140168286859989, - 0.036056291311979294, - 0.02562927082180977, - -0.0455782487988472, - 0.06624790281057358, - 0.0035619856789708138, - -0.004401146434247494, - -0.039004165679216385, - 0.038433872163295746, - 0.0660308301448822, - 0.0013722097501158714, - -0.03185052424669266, - 0.049162380397319794, - 0.09024513512849808, - 0.004282768815755844, - 0.053114861249923706, - -0.062113165855407715, - -0.0957697331905365, - -0.019128186628222466, - 0.04619210585951805, - 0.047117047011852264, - -0.035239361226558685, - -0.0407211072742939, - -0.06313902139663696, - -0.004834108054637909, - -0.008600874803960323, - 0.014729546383023262, - 0.05742064118385315, - 0.03767884150147438, - 0.0048480164259672165, - 0.07689369469881058, - -0.03033529780805111, - 0.018571069464087486, - -0.017184583470225334, - 0.026356305927038193, - 0.034995414316654205, - 0.027773484587669373, - 0.009876169264316559, - -0.08222924172878265, - 0.004199131391942501, - -0.015613555908203125, - -0.026801731437444687, - -0.0025995224714279175, - 0.010991642251610756, - -0.024151857942342758, - 0.007024191319942474, - -0.10378921031951904, - 0.03716892749071121, - -0.11630301922559738, - 0.0037630535662174225, - 0.050034526735544205, - -0.04498978704214096, - -0.02551146224141121, - 0.09027744829654694, - 0.0293334499001503, - 0.03520354628562927, - -0.02103339321911335, - -0.0888897180557251, - 0.00338873453438282, - 0.04604913294315338, - 0.06833773851394653, - -0.005775232799351215, - 0.00189307052642107, - -0.004502268508076668, - 0.04314936324954033, - 0.05591220408678055, - 0.06444937735795975, - 0.0380018949508667, - -0.03494517505168915, - -0.06984288990497589, - 0.008918458595871925, - 0.10586248338222504, - -0.007336929440498352, - -0.06716549396514893, - -0.056028276681900024, - -0.002254173159599304, - -0.03827476128935814, - 0.006087338551878929, - 0.01722545549273491, - 0.037802811712026596, - 0.053151801228523254, - -0.013767322525382042, - -0.10574370622634888, - -0.046843286603689194, - 0.04101041331887245, - -0.06096049025654793, - -0.009861629456281662, - -0.041982538998126984, - 0.026280207559466362, - 0.10085171461105347, - 0.005654484033584595, - 0.03152710199356079, - -0.02600701153278351, - -0.03461811691522598, - -0.0877743661403656, - -0.0573757141828537, - -0.032806240022182465, - 0.019656050950288773, - -0.040631845593452454, - 0.024713240563869476, - -0.06452464312314987, - 0.06095213443040848, - -0.031063474714756012, - 0.09285181760787964, - 0.013319146819412708, - -0.06253103911876678, - -0.08947643637657166, - -0.0007865540683269501, - -0.04162108525633812, - 0.05814853683114052, - 0.05279542878270149, - 0.010547339916229248, - 0.021966557949781418, - -0.08115498721599579, - 0.07450666278600693, - 0.062321167439222336, - -0.05725353956222534, - -0.06883177161216736, - -0.037378374487161636, - 0.006283266469836235, - 0.026729024946689606, - -0.01295035146176815, - 0.014990851283073425, - 0.026568707078695297, - 0.016074951738119125, - -0.013926400803029537, - 0.06668197363615036, - 0.08498382568359375, - 0.04286962375044823, - -0.07782401889562607 - ] - }, - "p244_162.wav": { - "name": "p244", - "embedding": [ - 0.04829081892967224, - 0.07129817456007004, - 0.051060669124126434, - 0.01499593909829855, - 0.006851959973573685, - -0.03260171040892601, - -0.08099651336669922, - 0.0637405589222908, - 0.042777325958013535, - 0.07052373886108398, - -0.1430099606513977, - 0.07106330990791321, - -0.08491027355194092, - -0.10734517872333527, - -0.0011229310184717178, - 0.0048606786876916885, - -0.0260935015976429, - 0.004033581353724003, - 0.0005641123279929161, - -0.030605744570493698, - 0.024690553545951843, - 0.002459196373820305, - 0.063155397772789, - -0.03677212446928024, - -0.020689982920885086, - 0.061141762882471085, - 0.01590825244784355, - 0.01885281503200531, - 0.01796097308397293, - -0.014633886516094208, - 0.0576229952275753, - -0.004206769168376923, - -0.004706941545009613, - 0.03355146571993828, - 0.044683653861284256, - 0.04711952432990074, - -0.031321462243795395, - 0.01808738335967064, - -0.011247927322983742, - 0.03334259241819382, - -0.05550412833690643, - 0.02937045320868492, - 0.01106729544699192, - -0.06507216393947601, - 0.05344980210065842, - 0.03527987003326416, - -0.01651758700609207, - -0.010242031887173653, - -0.1056196391582489, - 0.07300670444965363, - -0.00381536316126585, - 0.05724401772022247, - -0.07236778736114502, - 0.008820079267024994, - 0.06905412673950195, - -0.027067359536886215, - -0.06065972149372101, - -0.002367055043578148, - 0.0663047507405281, - 0.05490785464644432, - -0.057445064187049866, - -0.04136288911104202, - -0.015054792165756226, - -0.009747395291924477, - 0.019799938425421715, - 0.05514756962656975, - 0.09970948100090027, - 0.07663170993328094, - -0.001820526085793972, - 0.012564287520945072, - 0.04491446539759636, - 0.030097443610429764, - 0.07451489567756653, - 0.003090151585638523, - -0.025342805311083794, - -0.01995203085243702, - -0.018643762916326523, - 0.021785348653793335, - 0.029633793979883194, - -0.03783007711172104, - -0.005959200672805309, - -0.05608599632978439, - 0.030384628102183342, - -0.020527375862002373, - -0.024479135870933533, - 0.0070673758164048195, - 0.04662042483687401, - 0.0055808331817388535, - 0.05391581356525421, - 0.006396042183041573, - -0.05223555862903595, - 0.016951095312833786, - -0.04365228861570358, - -0.06470535695552826, - -0.06035321578383446, - -0.04102332144975662, - 0.05799346789717674, - 0.04061641916632652, - 0.05916895717382431, - 0.03652959316968918, - 0.08606840670108795, - 0.01245332695543766, - 0.01622013933956623, - -0.007563130930066109, - -0.07510185986757278, - 0.04551553726196289, - 0.07953262329101562, - -0.03560539335012436, - 0.01461092010140419, - -0.02374665066599846, - 0.017668411135673523, - 0.04932129383087158, - -0.03196987882256508, - 0.0005330704152584076, - -0.0102433105930686, - 0.0466730110347271, - 0.03221350535750389, - 0.06516797095537186, - -0.013123176991939545, - 0.014387490227818489, - 0.14503583312034607, - -0.07748457789421082, - -0.021284718066453934, - -0.016460951417684555, - -0.00297079561278224, - -0.045399948954582214, - 0.07853630185127258, - 0.022576481103897095, - 0.03634403645992279, - 0.02891157940030098, - 0.04597816243767738, - -6.0051679611206055e-06, - 0.007174585945904255, - -0.07001560181379318, - -0.0062933992594480515, - 0.033886175602674484, - -0.049763910472393036, - -0.0002592746168375015, - 0.08288367092609406, - 0.044630762189626694, - 0.07149235904216766, - 0.08638546615839005, - -0.03478264436125755, - -0.058708563446998596, - 0.022461488842964172, - 0.052463121712207794, - 0.013278926722705364, - -0.030438873916864395, - -0.06200844794511795, - -0.050558045506477356, - -0.009217949584126472, - 0.07866780459880829, - -0.005517421755939722, - 0.05016082525253296, - 0.006720272824168205, - 0.013659686781466007, - 0.08834490180015564, - 0.015174908563494682, - -0.03221818804740906, - -0.07967913150787354, - -0.08492235839366913, - -0.042138565331697464, - 0.011063575744628906, - -0.16297471523284912, - -0.059360262006521225, - -0.0707269161939621, - 0.04095064103603363, - -0.019250744953751564, - 0.007106492295861244, - 0.03798842430114746, - 0.0003156587481498718, - -0.0002084793522953987, - 0.03658463805913925, - 0.012920170091092587, - -0.015694666653871536, - -0.12953589856624603, - 0.031466078013181686, - -0.015922950580716133, - 0.01862953044474125, - 0.03950270265340805, - -0.03379764035344124, - 0.0347873829305172, - -0.026543226093053818, - -0.0705251470208168, - -0.04750291630625725, - 0.06966233253479004, - -0.03216658532619476, - -0.007991489954292774, - 0.028201598674058914, - 0.016452794894576073, - -0.0805661603808403, - 0.05922037363052368, - -0.001249874010682106, - 0.09122666716575623, - -0.0651148334145546, - 0.022558391094207764, - -0.008464845828711987, - 0.0015021003782749176, - 0.085782989859581, - -0.0171499066054821, - -0.07387082278728485, - -0.08045917749404907, - -0.024955278262495995, - 0.04449775815010071, - -0.016574623063206673, - -0.03539040684700012, - -0.03342164307832718, - -0.02457502856850624, - -0.01841406151652336, - -0.06822459399700165, - -0.031038597226142883, - 0.028844032436609268, - -0.012666555121541023, - -0.08779608458280563, - 0.030437305569648743, - -0.03140716254711151, - -0.009308185428380966, - 0.016618382185697556, - 0.04579534754157066, - -0.021695084869861603, - -0.05439550429582596, - -0.04313071072101593, - 0.03656603395938873, - 0.061044517904520035, - 0.048750195652246475, - -0.07004205137491226, - -0.08202021569013596, - 0.030084650963544846, - 0.010904965922236443, - 0.0544193834066391, - -0.007780302315950394, - -0.01956063136458397, - 0.038042858242988586, - -0.05090366303920746, - -0.021977724507451057, - 0.026563208550214767, - 0.046450383961200714, - -0.003090105950832367, - 0.01573701575398445, - -0.02198765240609646, - 0.08512962609529495, - 0.027058618143200874, - -7.81303970143199e-06, - -0.022902492433786392, - -0.06274542212486267, - -0.061719294637441635, - -0.059388771653175354, - -0.05725156143307686, - -0.05289582535624504, - 0.031797170639038086, - -0.05301262065768242, - 0.05503222346305847, - 0.0015455090906471014, - 0.09750083088874817, - 0.010077114216983318, - -0.01228514313697815 - ] - }, - "p244_179.wav": { - "name": "p244", - "embedding": [ - 0.030571645125746727, - 0.08619459718465805, - -0.016192864626646042, - 0.031087905168533325, - -0.057278215885162354, - 0.07416775077581406, - -0.09019750356674194, - 0.10113927721977234, - -0.060720138251781464, - 0.1361154019832611, - -0.09812057018280029, - 0.12131239473819733, - -0.04670654982328415, - -0.17017166316509247, - -0.02837412618100643, - 0.058825891464948654, - -0.034396205097436905, - 0.0024779802188277245, - -0.05535587668418884, - -0.024263184517621994, - 0.04062965139746666, - 0.02393612638115883, - 0.04757293313741684, - -0.020466435700654984, - 0.01712745800614357, - 0.07184048742055893, - -0.0002682122285477817, - 0.04832533001899719, - 0.007551028858870268, - -0.07667022198438644, - -0.058858178555965424, - 0.10712940990924835, - -0.04223278909921646, - 0.019811954349279404, - 0.05423697084188461, - 0.011132519692182541, - -0.003056335262954235, - -0.0478329062461853, - -0.0034378503914922476, - -0.011444422416388988, - -0.044155582785606384, - 0.05112019181251526, - -0.006352514028549194, - -0.023807942867279053, - 0.05234072729945183, - 0.01447363942861557, - -0.028755847364664078, - -0.027758397161960602, - -0.09399205446243286, - 0.13870251178741455, - 0.0579192154109478, - -0.013906346634030342, - -0.06775277853012085, - -0.0807543396949768, - 0.10503064841032028, - -0.01718464121222496, - -0.12325428426265717, - -0.0415889248251915, - 0.07923341542482376, - 0.1536082923412323, - -0.02759230136871338, - -0.034631647169589996, - 0.013573359698057175, - 0.09162097424268723, - 0.018155556172132492, - 0.10615106672048569, - 0.06383427232503891, - 0.09351585805416107, - -0.004068485461175442, - 0.032757192850112915, - 0.04195607453584671, - 0.08625063300132751, - 0.07285959273576736, - -0.007157584186643362, - 0.03145573288202286, - -0.0011888457229360938, - -0.02785051427781582, - 0.025799527764320374, - -0.04441903159022331, - -0.031139878556132317, - -0.01888282783329487, - -0.010782881639897823, - 0.020020633935928345, - -0.04007243737578392, - -0.018312649801373482, - 0.05557441711425781, - 0.04506079480051994, - -0.015550896525382996, - 0.052601590752601624, - 0.03852296993136406, - -0.02566887065768242, - 0.055641066282987595, - -0.07030117511749268, - -0.0899798721075058, - 0.014209027402102947, - 0.01588517427444458, - -0.0013428847305476665, - 0.061403971165418625, - 0.031709328293800354, - -0.016449660062789917, - 0.0992315411567688, - 0.04493049904704094, - 0.0154700493440032, - 0.03664861619472504, - -0.0863228440284729, - 0.11838136613368988, - 0.11464715003967285, - -0.015835151076316833, - 0.030355069786310196, - -0.037218958139419556, - 0.08494094014167786, - 0.09600099176168442, - -0.13206098973751068, - -0.07194055616855621, - -0.027682622894644737, - -0.03497975692152977, - -0.01695835217833519, - 0.08218910545110703, - -0.022721877321600914, - 0.010010723024606705, - 0.11872994154691696, - -0.1014866828918457, - -0.06436829268932343, - -0.021778110414743423, - 0.018398024141788483, - -0.07755455374717712, - 0.04881449043750763, - 0.036511510610580444, - 0.017951201647520065, - 0.004995942115783691, - 0.08541607856750488, - -0.029691128060221672, - 0.0033705513924360275, - 0.036358386278152466, - -0.07027767598628998, - -0.008424963802099228, - -0.05272942781448364, - -0.012739395722746849, - 0.08978040516376495, - 0.05215379595756531, - 0.05632282793521881, - -0.018879681825637817, - -0.016407718881964684, - -0.10121433436870575, - -0.0013988418504595757, - 0.053860437124967575, - 0.044518791139125824, - -0.006905117072165012, - -0.005888267885893583, - -0.030689379200339317, - -0.08670379966497421, - 0.051256321370601654, - -0.025720639154314995, - 0.0827542170882225, - -0.0174130667001009, - 0.0017660766607150435, - 0.10364135354757309, - 0.02007053606212139, - -0.023596424609422684, - -0.08628662675619125, - -0.03753092885017395, - 0.015446661040186882, - 0.03851909190416336, - -0.09172306954860687, - -0.08230212330818176, - -0.006774085573852062, - 0.02032453566789627, - -0.021618491038680077, - 0.04923762381076813, - 0.054791249334812164, - 0.018143504858016968, - 0.027777664363384247, - -0.05341195687651634, - -0.003582623554393649, - -0.10147850960493088, - -0.058054789900779724, - -0.0103674391284585, - -0.06462931632995605, - -0.0018470166251063347, - 0.0738021582365036, - 0.0049993619322776794, - 0.012638866901397705, - -0.01818142831325531, - -0.06478318572044373, - -0.09603165090084076, - 0.06740697473287582, - 0.04037811607122421, - 0.02259417250752449, - 0.05606265366077423, - 0.04504580423235893, - -0.048457350581884384, - 0.07444643974304199, - 0.06457282602787018, - 0.10059687495231628, - -0.024822916835546494, - 0.02699822001159191, - -0.07105910778045654, - 0.07941639423370361, - 0.10358962416648865, - -0.0788687989115715, - -0.10156002640724182, - -0.04550536721944809, - -0.059704940766096115, - 0.07852086424827576, - -0.04858074709773064, - -0.034332044422626495, - 0.040348827838897705, - -0.022306490689516068, - -0.09576012194156647, - -0.08172659575939178, - 0.10498189181089401, - -0.044428423047065735, - -0.023250237107276917, - -0.06271548569202423, - 0.04286088049411774, - 0.05300229415297508, - 0.030528580769896507, - -0.03509475290775299, - 0.037150751799345016, - 0.0760376825928688, - -0.06404687464237213, - -0.0011810499709099531, - 0.04259870573878288, - 0.013071316294372082, - -0.061304450035095215, - -0.005143480841070414, - -0.08300714194774628, - 0.046151161193847656, - -0.05058329552412033, - 0.15314170718193054, - -0.02044074609875679, - -0.04971642792224884, - -0.05920543521642685, - 0.06445460766553879, - -0.026811551302671432, - 0.029481317847967148, - 0.05114942789077759, - 0.06528611481189728, - 0.018429845571517944, - -0.08800383657217026, - 0.12919296324253082, - 0.016551926732063293, - -0.02735801599919796, - -0.05854961276054382, - -0.0559699647128582, - -0.05918307229876518, - 0.0008963110740296543, - -0.009198951534926891, - -0.09892384707927704, - 0.004933548625558615, - 0.009357663802802563, - 0.0010615966748446226, - 0.04635327309370041, - 0.13274195790290833, - 0.0661928653717041, - -0.07634106278419495 - ] - }, - "p244_151.wav": { - "name": "p244", - "embedding": [ - 0.05338154733181, - 0.07692953944206238, - -0.014915263280272484, - 0.017773957923054695, - -0.06250782310962677, - 0.07432658970355988, - -0.1349685788154602, - 0.126249760389328, - -0.04604538530111313, - 0.15463483333587646, - -0.053544916212558746, - 0.10725729167461395, - -0.030185209587216377, - -0.18928208947181702, - -0.010301225818693638, - 0.06485643982887268, - -0.057404763996601105, - -0.03540218621492386, - -0.07023858278989792, - -0.027816802263259888, - 0.025902029126882553, - 0.047697313129901886, - 0.0183144211769104, - -0.00888589583337307, - 0.032714106142520905, - 0.07206510752439499, - -0.019219059497117996, - 0.02560625970363617, - -0.021043477579951286, - -0.0932825356721878, - -0.03926796466112137, - 0.0931343212723732, - -0.055780746042728424, - 0.009114207699894905, - 0.03935887664556503, - -0.010610794648528099, - -0.002836352214217186, - -0.04435507953166962, - -0.02503439411520958, - 0.019594432786107063, - -0.040795788168907166, - 0.07587078213691711, - 0.016821514815092087, - -0.0006884306785650551, - 0.0466751754283905, - 0.014027215540409088, - -0.02387208491563797, - -0.05771256238222122, - -0.10067372769117355, - 0.17035824060440063, - 0.06818369030952454, - -0.0034879762679338455, - -0.060495488345623016, - -0.07923023402690887, - 0.09581132233142853, - -0.03183387219905853, - -0.134304940700531, - -0.05645330250263214, - 0.07098782062530518, - 0.1509125530719757, - -0.04128161072731018, - -0.04748644679784775, - 0.027616092935204506, - 0.09805630147457123, - 0.049848735332489014, - 0.09751050174236298, - 0.06945262849330902, - 0.0908101499080658, - -0.01977325975894928, - 0.006688814610242844, - 0.061421941965818405, - 0.05686631053686142, - 0.08493521809577942, - 0.0004338165745139122, - 0.042795952409505844, - -0.0010274001397192478, - -0.011535627767443657, - -0.01253002043813467, - -0.015385286882519722, - -0.0053469715639948845, - 0.0023587404284626245, - 0.015199463814496994, - 0.021320056170225143, - 0.008909085765480995, - -0.022398579865694046, - 0.04738030955195427, - 0.04108746349811554, - -0.012559186667203903, - 0.06764794886112213, - 0.030138878151774406, - 0.016081376001238823, - 0.07339587062597275, - -0.0819292888045311, - -0.06931192427873611, - 0.04381158575415611, - 0.017003946006298065, - 0.011945467442274094, - 0.04491691291332245, - 0.025100961327552795, - -0.01912400871515274, - 0.11456035822629929, - 0.038164470344781876, - 0.005056596361100674, - 0.03075678087770939, - -0.10413150489330292, - 0.12567977607250214, - 0.08012968301773071, - -0.030693447217345238, - 0.050216399133205414, - -0.03954636678099632, - 0.07639139890670776, - 0.06447548419237137, - -0.13578617572784424, - -0.07799884676933289, - 0.020948413759469986, - -0.004169312305748463, - -0.020297545939683914, - 0.12309718877077103, - -0.0006718793883919716, - 0.029021989554166794, - 0.12414532899856567, - -0.11150306463241577, - -0.03991929814219475, - 0.006012200377881527, - 0.04379991441965103, - -0.10680531710386276, - 0.050182685256004333, - 0.05441530421376228, - -0.01033379603177309, - 0.03289240226149559, - 0.09933243691921234, - -0.016157232224941254, - 0.007249072194099426, - -0.004718083888292313, - -0.03527181223034859, - 0.0015940385637804866, - -0.02847292274236679, - -0.01587466150522232, - 0.058956194669008255, - 0.02762434259057045, - 0.04672842472791672, - -0.020860277116298676, - -0.04069723188877106, - -0.13734041154384613, - 0.02481251023709774, - 0.02375340461730957, - 0.0650215893983841, - -0.01844874769449234, - 0.012373916804790497, - -0.03875350207090378, - -0.07846923172473907, - 0.02957528829574585, - -0.015639083459973335, - 0.07587534934282303, - -0.018191874027252197, - -0.0012868910562247038, - 0.10822582244873047, - 0.041814275085926056, - 0.004464832134544849, - -0.05965173989534378, - -0.04472074657678604, - 0.006731791887432337, - 0.05795472860336304, - -0.0859435573220253, - -0.0651235356926918, - -0.00693739578127861, - 0.039246946573257446, - -0.0027100276201963425, - 0.06693608313798904, - 0.06515911221504211, - 0.02362545020878315, - 0.022761203348636627, - -0.05538514256477356, - 0.0250663124024868, - -0.08307922631502151, - -0.08149533718824387, - -0.0006556776352226734, - -0.039784662425518036, - -0.02876432053744793, - 0.08780990540981293, - 0.002508232370018959, - 0.030806537717580795, - -0.0612480491399765, - -0.07779560983181, - -0.08647386729717255, - 0.0672992467880249, - 0.06014605611562729, - -0.01298338733613491, - 0.029198117554187775, - 0.049173541367053986, - -0.03662455826997757, - 0.059224989265203476, - 0.06037263572216034, - 0.13589826226234436, - -0.023976674303412437, - 0.04590022563934326, - -0.062300749123096466, - 0.09153693914413452, - 0.07727071642875671, - -0.06391610205173492, - -0.08505367487668991, - -0.020878100767731667, - -0.0698758065700531, - 0.053322214633226395, - -0.032328225672245026, - 0.0019058722537010908, - 0.042897243052721024, - 0.0021038458216935396, - -0.09081218391656876, - -0.08085671067237854, - 0.08750441670417786, - -0.04706183448433876, - -0.01079383585602045, - -0.07860804349184036, - 0.05731835216283798, - 0.07274751365184784, - 0.05638352781534195, - -0.034406356513500214, - -0.003083118936046958, - 0.047633200883865356, - -0.03546527400612831, - 0.025678370147943497, - 0.06251882761716843, - 0.030412035062909126, - -0.08691278100013733, - -0.013631895184516907, - -0.08894501626491547, - 0.05345285311341286, - -0.03952764719724655, - 0.1526717245578766, - -0.010541461408138275, - -0.03926369547843933, - -0.06898391991853714, - 0.04631609842181206, - -0.026039013639092445, - 0.05616597831249237, - 0.03304118663072586, - 0.070219486951828, - 0.08123277127742767, - -0.03954586759209633, - 0.09585540741682053, - 0.045004505664110184, - -0.03133155405521393, - -0.04682401195168495, - -0.05581985414028168, - -0.05603248253464699, - 0.024348953738808632, - -0.006897169630974531, - -0.1039557158946991, - 0.0009472938254475594, - 0.026775918900966644, - 0.0035683715250343084, - 0.05396405979990959, - 0.13006016612052917, - 0.04612473398447037, - -0.12077564001083374 - ] - }, - "p244_047.wav": { - "name": "p244", - "embedding": [ - 0.06592823565006256, - 0.08634445816278458, - -0.05203823000192642, - 0.022983569651842117, - -0.00553181953728199, - 0.04818369075655937, - -0.1382196545600891, - 0.100897878408432, - -0.02517542988061905, - 0.12603816390037537, - -0.07611290365457535, - 0.11310906708240509, - 0.002127218060195446, - -0.12196719646453857, - -0.04750456660985947, - 0.0340161994099617, - -0.022115785628557205, - -0.005590872839093208, - -0.021228544414043427, - -0.005754104815423489, - 0.04956686869263649, - 0.031655631959438324, - 0.01635877788066864, - -0.02284124679863453, - 0.012919880449771881, - 0.05458870902657509, - 0.030053364112973213, - 0.035363420844078064, - 0.010314006358385086, - 0.004139812663197517, - 0.018835382536053658, - 0.10752004384994507, - -0.024731086567044258, - 0.021443117409944534, - 0.0341707319021225, - 0.011841820552945137, - -0.025024110451340675, - -0.06894447654485703, - 0.007605442777276039, - 0.006737133488059044, - -0.02988891862332821, - 0.07450156658887863, - 0.04596211761236191, - -0.012590151280164719, - 0.01613054983317852, - -0.0033343154937028885, - -0.01497122272849083, - -0.05013280361890793, - -0.09199265390634537, - 0.16674596071243286, - 0.05915763974189758, - 0.030991625040769577, - -0.09406575560569763, - -0.009818894788622856, - 0.09341020882129669, - 0.020607685670256615, - -0.041559766978025436, - -0.05375760793685913, - 0.049641311168670654, - 0.15271402895450592, - -0.017432039603590965, - -0.043175965547561646, - 0.03913137689232826, - 0.12286661565303802, - 0.03423837572336197, - 0.05694129690527916, - 0.10740529000759125, - 0.09109769761562347, - 0.0035390518605709076, - 0.038384366780519485, - 0.033550769090652466, - 0.07336247712373734, - 0.03583502024412155, - -0.030067026615142822, - 0.029840033501386642, - -0.024235369637608528, - -0.019593534991145134, - -0.0034263969864696264, - -0.02303505316376686, - -0.06312770396471024, - -0.020670877769589424, - 0.002357965800911188, - 0.01862325705587864, - 0.06174740195274353, - -0.041777193546295166, - 0.028745215386152267, - 0.04310256987810135, - -0.07678806781768799, - 0.03418527916073799, - 0.050089623779058456, - 0.01349277887493372, - 0.002735711634159088, - -0.05580076947808266, - -0.11501264572143555, - 0.033295489847660065, - -0.006879905238747597, - 0.02203415147960186, - 0.06237472593784332, - 0.05400538444519043, - 0.011446223594248295, - 0.07700318843126297, - 0.021614382043480873, - -0.022246181964874268, - -0.024690061807632446, - -0.050893597304821014, - 0.116461381316185, - 0.11012955009937286, - -0.02678968757390976, - 0.025255849584937096, - -0.059779297560453415, - 0.01227518729865551, - 0.06082569435238838, - -0.11335492134094238, - -0.06902417540550232, - 0.03451678156852722, - 0.02915201708674431, - 0.01753680780529976, - 0.10128960013389587, - 0.006060037761926651, - 0.01746409572660923, - 0.065096415579319, - -0.056160781532526016, - -0.0627235397696495, - -0.07041087746620178, - 0.04766854643821716, - -0.06201068311929703, - 0.05851907283067703, - 0.045629046857357025, - 0.011815855279564857, - -0.05049819126725197, - 0.07386770844459534, - -0.0033091730438172817, - -0.00961120706051588, - -0.019955364987254143, - 0.028728440403938293, - 0.06521470099687576, - -0.03563466668128967, - 0.007318600080907345, - -0.003750898875296116, - 0.026417143642902374, - 0.03748757019639015, - 0.026447271928191185, - -0.01050395518541336, - -0.08193591237068176, - 0.009270614013075829, - 0.06918269395828247, - 0.056311193853616714, - -0.03413223475217819, - -0.05644124746322632, - -0.02421751618385315, - -0.04152216762304306, - -0.0011794923339039087, - -0.02481546625494957, - 0.06741110980510712, - 0.024912703782320023, - 0.023557016626000404, - 0.10761044919490814, - -0.0313621424138546, - 0.014151579700410366, - -0.01747249811887741, - 0.03744783252477646, - 0.03733870014548302, - 0.027481097728013992, - -0.06134762614965439, - -0.07908773422241211, - -0.010789117775857449, - 0.009928219020366669, - -0.019895588979125023, - 0.012810485437512398, - 0.017583327367901802, - -0.006856146268546581, - 0.024190029129385948, - -0.07462447881698608, - -0.010698225349187851, - -0.1276930570602417, - -0.028874143958091736, - -0.01974429003894329, - -0.04464239254593849, - -0.00983351655304432, - 0.06675009429454803, - 0.037056177854537964, - 0.04110782593488693, - -0.013327017426490784, - -0.0669906735420227, - -0.04840049147605896, - 0.06413404643535614, - 0.09464256465435028, - -0.01924043893814087, - 0.0026499461382627487, - 0.027335720136761665, - 0.03339831903576851, - 0.012847086414694786, - 0.062497250735759735, - 0.06524231284856796, - -0.03510156273841858, - -0.05481558293104172, - -0.060433171689510345, - 0.0923689529299736, - 0.08497798442840576, - -0.10058562457561493, - -0.06161234527826309, - -0.03219972923398018, - -0.06334944814443588, - -0.0018226122483611107, - -0.03567150980234146, - 0.01452193409204483, - 0.044877488166093826, - -0.038239486515522, - -0.12325076758861542, - -0.10446220636367798, - 0.0528663769364357, - -0.06480579078197479, - 0.005558964796364307, - -0.0653512179851532, - 0.044351108372211456, - 0.08800370991230011, - 0.015784073621034622, - -0.025861406698822975, - -0.00241960515268147, - -0.010029720142483711, - -0.06049330532550812, - -0.01963091269135475, - -0.012720050290226936, - 0.026492467150092125, - -0.1071920320391655, - 0.0017960708355531096, - -0.05885661393404007, - 0.07329477369785309, - -0.07474247366189957, - 0.11086786538362503, - -0.0019602221436798573, - -0.06511756032705307, - -0.09652253985404968, - 0.018370740115642548, - -0.01414383202791214, - 0.05176272243261337, - 0.0293699000030756, - 0.032051242887973785, - 0.0016629381570965052, - -0.10479559749364853, - 0.09490065276622772, - 0.06754730641841888, - -0.00018845684826374054, - -0.10491541028022766, - -0.031102946028113365, - -0.009768453426659107, - 0.0564497634768486, - 0.016670752316713333, - -0.014845199882984161, - -0.015359252691268921, - 0.031931206583976746, - -0.019525855779647827, - 0.07610532641410828, - 0.09976024925708771, - 0.04823916405439377, - -0.09098787605762482 - ] - }, - "p244_387.wav": { - "name": "p244", - "embedding": [ - 0.05354906618595123, - 0.09765110909938812, - -0.05324000120162964, - 0.01336327288299799, - 0.0005212724208831787, - 0.04374198615550995, - -0.17443504929542542, - 0.11053217947483063, - -0.03025122359395027, - 0.14385399222373962, - -0.03728903830051422, - 0.09514616429805756, - -0.04378384351730347, - -0.13015100359916687, - -0.020348254591226578, - 0.0590820387005806, - -0.020964570343494415, - -0.008310393430292606, - -0.013095324859023094, - -0.005703997798264027, - 0.0466109998524189, - 0.02175387553870678, - 0.01760837994515896, - -0.018259473145008087, - -0.02049732580780983, - 0.06909360736608505, - -0.016545677557587624, - 0.01709672249853611, - -0.009089938364923, - 0.0025545363314449787, - 0.004110085777938366, - 0.0888431966304779, - 0.0026269257068634033, - 0.006760727148503065, - 0.030522389337420464, - 0.03299310430884361, - -0.03321494162082672, - -0.05414698272943497, - 0.024370180442929268, - -0.0019585900008678436, - -0.037366438657045364, - 0.04417842999100685, - 0.0027837734669446945, - -0.025961261242628098, - 0.05526050552725792, - -0.06428706645965576, - -0.02854008600115776, - -0.013471122831106186, - -0.06524255126714706, - 0.13522595167160034, - 0.10719707608222961, - 0.027081046253442764, - -0.06699232757091522, - 0.0013939402997493744, - 0.09225818514823914, - 0.013461964204907417, - -0.08650701493024826, - -0.052536047995090485, - 0.038395099341869354, - 0.15935875475406647, - -0.023923469707369804, - -0.02494906261563301, - 0.03567003458738327, - 0.11294953525066376, - 0.020205214619636536, - 0.07185454666614532, - 0.09708480536937714, - 0.07319282740354538, - 0.00600969884544611, - -0.021706517785787582, - 0.009677791967988014, - 0.05809071660041809, - 0.06017580255866051, - -0.007883155718445778, - 0.03415533900260925, - -0.03268399089574814, - -0.02937799133360386, - 2.344651147723198e-05, - -0.02055910788476467, - -0.08310361951589584, - -0.03602138161659241, - -0.009546364657580853, - -0.019303947687149048, - 0.055985722690820694, - -0.016760921105742455, - -0.008992908522486687, - 0.0577261745929718, - -0.0758432000875473, - 0.03576980531215668, - 0.04526446759700775, - 0.021973520517349243, - 0.026411227881908417, - -0.05568648874759674, - -0.09455728530883789, - 0.050509948283433914, - 0.002184647135436535, - 0.013582345098257065, - 0.04680690914392471, - 0.0325813964009285, - 0.016247186809778214, - 0.07681549340486526, - 0.013082959689199924, - -0.009824356995522976, - -0.0007351897656917572, - -0.06217750906944275, - 0.10632684826850891, - 0.10209167748689651, - -0.04193472862243652, - 0.040388159453868866, - -0.04647144675254822, - -0.0163577813655138, - 0.04564157873392105, - -0.08820956200361252, - -0.04130534455180168, - 0.056680403649806976, - 0.053834687918424606, - 0.02340078353881836, - 0.10123381018638611, - 0.05094054341316223, - 0.02665385603904724, - 0.0934397503733635, - -0.06041048839688301, - -0.08739293366670609, - -0.0709250420331955, - 0.07208696007728577, - -0.05781517177820206, - 0.07073374092578888, - 0.0641392394900322, - 0.02788388356566429, - -0.011555745266377926, - 0.05087069422006607, - 0.01812530681490898, - 0.006914706900715828, - -0.03490523621439934, - -0.024205069988965988, - 0.01688438653945923, - -0.05153709277510643, - 0.017614539712667465, - 0.005037687718868256, - 0.004737320356070995, - 0.04738428071141243, - 0.0252805408090353, - 0.009697499684989452, - -0.09615115076303482, - -0.02097797393798828, - 0.07822176069021225, - 0.045730650424957275, - -0.029787501320242882, - -0.04409850388765335, - -0.011932299472391605, - -0.043656785041093826, - -0.01956712268292904, - -0.07777930051088333, - 0.08318998664617538, - -0.004047340247780085, - 0.021316220983862877, - 0.08009546250104904, - -0.03045850247144699, - 0.019091876223683357, - -0.02928493730723858, - 0.021585237234830856, - 0.012359283864498138, - 0.01861005462706089, - -0.09552836418151855, - -0.08658338338136673, - -0.023134730756282806, - 0.032868642359972, - 0.004126129671931267, - 0.042933389544487, - 0.04229239374399185, - -0.00515346135944128, - 0.006446721963584423, - -0.03709350526332855, - 0.013891741633415222, - -0.09959129989147186, - -0.05918333679437637, - -0.0018269403371959925, - -0.035192832350730896, - 0.0006221001967787743, - 0.07590551674365997, - 0.026714149862527847, - 0.03314167261123657, - -0.04623878002166748, - -0.04831302911043167, - -0.07755360007286072, - 0.05093060061335564, - 0.07633493840694427, - -0.02667674794793129, - 0.018942879512906075, - 0.03513457626104355, - 0.004706918261945248, - 0.01301814615726471, - 0.057114146649837494, - 0.09225666522979736, - -0.02478555589914322, - -0.01479764562100172, - -0.10062605142593384, - 0.03879788890480995, - 0.13930216431617737, - -0.08616366982460022, - -0.08117936551570892, - -0.04904048517346382, - -0.07912970334291458, - -0.0022717141546308994, - -0.07979755103588104, - 0.010628344491124153, - 0.040879394859075546, - -0.04890758544206619, - -0.11566022038459778, - -0.125263050198555, - 0.06886452436447144, - -0.045262426137924194, - 0.010862018913030624, - -0.057173795998096466, - 0.0657719150185585, - 0.0443018302321434, - 0.012802252545952797, - -0.07093697786331177, - 0.00039125699549913406, - 0.021834442391991615, - -0.027714937925338745, - 0.012332821264863014, - 0.008706901222467422, - 0.050707317888736725, - -0.12938737869262695, - 0.013751399703323841, - -0.06924933940172195, - 0.07748182117938995, - -0.0754193365573883, - 0.11137852072715759, - 0.022869590669870377, - -0.028854383155703545, - -0.09795855730772018, - 0.03347766026854515, - 0.016184503212571144, - 0.041924718767404556, - -0.004175333306193352, - 0.053666599094867706, - 0.017667608335614204, - -0.08689325302839279, - 0.07405539602041245, - 0.04489438980817795, - 0.01188390702009201, - -0.099245086312294, - -0.02994922548532486, - -0.036934610456228256, - 0.05011643469333649, - -0.020317981019616127, - -0.036633025854825974, - -0.03258639946579933, - -0.0011051604524254799, - 0.02551230788230896, - 0.05911894142627716, - 0.08626800775527954, - 0.0274351816624403, - -0.10613103955984116 - ] - }, - "p244_370.wav": { - "name": "p244", - "embedding": [ - 0.06358363479375839, - 0.052086930721998215, - -0.033375632017850876, - 0.024352174252271652, - -0.029548410326242447, - 0.04322075471282005, - -0.12358683347702026, - 0.0980907678604126, - -0.028239868581295013, - 0.09883289039134979, - -0.06776271760463715, - 0.10071702301502228, - -0.003912396728992462, - -0.13626070320606232, - -0.036885831505060196, - 0.049305807799100876, - -0.029518790543079376, - -0.02014755643904209, - -0.04283095523715019, - -0.0034735207445919514, - 0.034562982618808746, - 0.04898704215884209, - 0.02501325123012066, - -0.016140256077051163, - 0.003224332584068179, - 0.050173815339803696, - 0.004041686188429594, - 0.025037167593836784, - 0.010121937841176987, - -0.0007708693738095462, - -0.00936773233115673, - 0.10003810375928879, - -0.020182596519589424, - 0.008550230413675308, - 0.04188136011362076, - 0.02348760887980461, - -0.005613319575786591, - -0.0899352952837944, - -0.009353580884635448, - -0.0033507130574434996, - -0.05088331922888756, - 0.06189851090312004, - 0.0455242395401001, - -0.03018762730062008, - 0.026718024164438248, - -0.005332240369170904, - -0.022811628878116608, - -0.04764222726225853, - -0.10759177058935165, - 0.17088580131530762, - 0.043301060795784, - 0.030866894870996475, - -0.08962439745664597, - -0.02926292084157467, - 0.07840068638324738, - 0.007265242747962475, - -0.06605461984872818, - -0.05507994815707207, - 0.04273151978850365, - 0.1474609375, - 0.0053265998139977455, - -0.0353923998773098, - 0.03343440592288971, - 0.11094405502080917, - 0.038835376501083374, - 0.051008909940719604, - 0.10195668786764145, - 0.10674421489238739, - -0.0032077631913125515, - 0.03315971419215202, - 0.05357072502374649, - 0.06047172471880913, - 0.03474898263812065, - -0.012428490445017815, - 0.026341404765844345, - -0.014956079423427582, - -0.037227459251880646, - 0.015154647640883923, - -0.030725430697202682, - -0.05124049633741379, - -0.004478194285184145, - -0.0011889568995684385, - 0.01397707499563694, - 0.05128103122115135, - -0.04815045744180679, - 0.03926636651158333, - 0.046017538756132126, - -0.035012852400541306, - 0.057239383459091187, - 0.05723331496119499, - 0.011852627620100975, - 0.020283186808228493, - -0.05228623002767563, - -0.10401515662670135, - 0.011727344244718552, - 0.00226261536590755, - 0.0369267612695694, - 0.04888961836695671, - 0.03214789554476738, - -0.017729442566633224, - 0.08660130947828293, - 0.010889412835240364, - -0.0039831423200666904, - 0.0024034357629716396, - -0.07095792889595032, - 0.11455190181732178, - 0.10765324532985687, - -0.01739230751991272, - 0.011458965949714184, - -0.05707177519798279, - 0.03527267277240753, - 0.07158884406089783, - -0.09827883541584015, - -0.05695202574133873, - 0.05055902525782585, - 0.01594480313360691, - 0.025098759680986404, - 0.11537399142980576, - 0.024101069197058678, - 0.027589883655309677, - 0.08033628761768341, - -0.09245534241199493, - -0.05840960144996643, - -0.01812942698597908, - 0.02659742906689644, - -0.04826899990439415, - 0.04274073988199234, - 0.047342848032712936, - 0.009312302805483341, - -0.03238561376929283, - 0.06430177390575409, - -0.004671956412494183, - 0.013287797570228577, - -0.025483980774879456, - -0.003528903005644679, - 0.06853683292865753, - -0.018641289323568344, - -0.020502910017967224, - 0.04244101047515869, - 0.05076661705970764, - 0.028665540739893913, - 0.01829468458890915, - -0.03106623888015747, - -0.11081772297620773, - -0.0005156360566616058, - 0.07608922570943832, - 0.06021679937839508, - -0.030876431614160538, - -0.045001864433288574, - -0.046545885503292084, - -0.03892975673079491, - 0.014904765412211418, - -0.0188447292894125, - 0.05615964159369469, - 0.0101771280169487, - -0.0049799103289842606, - 0.09185302257537842, - -0.028422880917787552, - 0.016626134514808655, - -0.026544060558080673, - -0.0035445517860352993, - 0.03769306093454361, - 0.03424353152513504, - -0.049838386476039886, - -0.07820651680231094, - -0.0031218070071190596, - 0.00999393966048956, - -0.02342018485069275, - 0.007535461336374283, - 0.037368044257164, - -0.00901389867067337, - 0.01478247344493866, - -0.08844810724258423, - 0.018496345728635788, - -0.12130551040172577, - -0.028652943670749664, - 0.01603725180029869, - -0.0366351418197155, - 0.010690420866012573, - 0.08611470460891724, - 0.018213268369436264, - 0.032499413937330246, - -0.02826966904103756, - -0.08564408868551254, - -0.04284198582172394, - 0.06024631857872009, - 0.07628051936626434, - -0.011440441012382507, - 0.02643408440053463, - 0.01984279789030552, - 0.01848333515226841, - 0.013331098482012749, - 0.039503421634435654, - 0.08019526302814484, - -0.04073656350374222, - -0.04949706420302391, - -0.05718610808253288, - 0.10537546873092651, - 0.0680176317691803, - -0.07953892648220062, - -0.06308607757091522, - -0.016499940305948257, - -0.04990826174616814, - 0.0013425549259409308, - -0.033544380217790604, - 0.006573493592441082, - 0.04878033325076103, - -0.027558881789445877, - -0.1395055055618286, - -0.08631736040115356, - 0.054967280477285385, - -0.06340521574020386, - -0.00035998784005641937, - -0.07162298262119293, - 0.030102554708719254, - 0.07785527408123016, - 0.014623328112065792, - -0.03358393907546997, - -0.008013874292373657, - -0.0011572515359148383, - -0.072145015001297, - -0.026260074228048325, - -0.005862375255674124, - 0.03931247442960739, - -0.08920542895793915, - -0.0023228744976222515, - -0.061324357986450195, - 0.06155848503112793, - -0.06112359091639519, - 0.12354496121406555, - 0.007984168827533722, - -0.05936148017644882, - -0.08903499692678452, - 0.018638623878359795, - -0.01284672599285841, - 0.05320116877555847, - 0.04392097517848015, - 0.035797856748104095, - 0.010480914264917374, - -0.09665390104055405, - 0.09956544637680054, - 0.06119024008512497, - -0.021366572007536888, - -0.07915973663330078, - -0.02441607415676117, - -0.017493724822998047, - 0.04341648146510124, - -0.0002006373106269166, - -0.023859083652496338, - 0.009792476892471313, - 0.02212761901319027, - -0.015774572268128395, - 0.058409400284290314, - 0.10812409967184067, - 0.05167866498231888, - -0.09207665175199509 - ] - }, - "p244_094.wav": { - "name": "p244", - "embedding": [ - 0.036822110414505005, - 0.07242009043693542, - -0.03309670090675354, - -0.003048468381166458, - -0.04386954382061958, - -0.0069147199392318726, - -0.12519848346710205, - 0.09353595972061157, - 0.0010776873677968979, - 0.1182837188243866, - -0.04163239896297455, - 0.1122724711894989, - -0.042727746069431305, - -0.10052508860826492, - 0.0033552562817931175, - 0.03179413080215454, - -0.04065268486738205, - -0.018443435430526733, - 0.013175498694181442, - -0.0526496022939682, - 0.028364267200231552, - 0.025354256853461266, - 0.048551734536886215, - -0.048213206231594086, - 0.015067324042320251, - 0.08254222571849823, - 0.007271159440279007, - -0.009745016694068909, - -0.006072564981877804, - -0.05856800079345703, - 0.025633469223976135, - 0.03369980677962303, - -0.020547989755868912, - 0.028014807030558586, - 0.021404704079031944, - 0.007647130638360977, - -0.018102232366800308, - -0.02085983008146286, - 0.020786212757229805, - 0.03888123482465744, - -0.041176121681928635, - 0.07970619201660156, - 0.025005556643009186, - -0.043162617832422256, - 0.04116996377706528, - -0.052835602313280106, - -0.02516220323741436, - 0.02510622888803482, - -0.06655316054821014, - 0.13633355498313904, - 0.04500214383006096, - 0.047181203961372375, - -0.077740877866745, - 0.004249364137649536, - 0.06375887989997864, - 0.006304305978119373, - -0.12372950464487076, - -0.02603471837937832, - 0.035960450768470764, - 0.09387969970703125, - -0.008010385558009148, - -0.04498652368783951, - 0.02632390335202217, - 0.07419561594724655, - 0.010307151824235916, - 0.02524694614112377, - 0.11624124646186829, - 0.09580099582672119, - 0.004578115418553352, - 0.0006483753677457571, - 0.026631953194737434, - 0.08535744249820709, - 0.02605813927948475, - 0.011120393872261047, - 0.009190461598336697, - -0.06851828843355179, - -0.003289947286248207, - -0.045305199921131134, - 0.003732684999704361, - -0.07966253161430359, - -0.08729877322912216, - -0.017239820212125778, - 0.011701574549078941, - 0.03995276987552643, - 0.016065631061792374, - 0.0032900068908929825, - 0.0605255551636219, - -0.05310510843992233, - 0.04639972001314163, - 0.04993167147040367, - -0.02462589181959629, - -0.006307780742645264, - -0.057300861924886703, - -0.04256671667098999, - -0.01977190002799034, - -0.002005410846322775, - 0.08204307407140732, - 0.05164267122745514, - 0.043841101229190826, - 0.06345724314451218, - 0.07971853762865067, - 0.03579944744706154, - -0.0014951155753806233, - -0.06037520244717598, - -0.06967750936746597, - 0.09940171241760254, - 0.10683947801589966, - -0.054134123027324677, - 0.044979795813560486, - -0.03446132689714432, - -0.004506383091211319, - -0.014328483492136002, - -0.05021153390407562, - -0.03431627154350281, - -0.007207631133496761, - 0.03747543692588806, - 0.030941026285290718, - 0.10742281377315521, - 0.03565647080540657, - 0.046510279178619385, - 0.09481403231620789, - -0.0695134848356247, - -0.06875143945217133, - -0.06445220857858658, - 0.05341656506061554, - -0.06355087459087372, - 0.08065932244062424, - 0.07191523164510727, - 0.022466683760285378, - 0.03860599920153618, - 0.043286219239234924, - 0.04631999135017395, - 0.04550920054316521, - -0.04700487107038498, - -0.009830931201577187, - 0.01268603652715683, - -0.00519970990717411, - 0.017201753333210945, - 0.08121289312839508, - 0.0255601704120636, - 0.09990699589252472, - 0.037457071244716644, - -0.004490953870117664, - -0.08814029395580292, - 0.014860142022371292, - 0.04880005866289139, - 0.015370822511613369, - -0.0703241229057312, - -0.05383877083659172, - 0.00047181732952594757, - -0.0644407570362091, - -0.02265036478638649, - -0.007319060154259205, - 0.07243052124977112, - -0.001426486298441887, - -0.00921764224767685, - 0.10356497764587402, - 0.02925504744052887, - -0.022865386679768562, - -0.03902352601289749, - -0.030284838750958443, - -0.011967724189162254, - 0.03957284241914749, - -0.15744337439537048, - -0.07778098434209824, - -0.0451216958463192, - 0.02714158594608307, - -0.0036962516605854034, - 0.0470903106033802, - 0.08343033492565155, - -0.00291498564183712, - 0.007713680155575275, - 0.009778233245015144, - 0.017260070890188217, - -0.0405857115983963, - -0.08749169111251831, - -0.0031842044554650784, - -0.05087461695075035, - -0.03871949762105942, - 0.10236622393131256, - -0.0058644115924835205, - 0.07155845314264297, - -0.03593955561518669, - -0.05258514732122421, - -0.051043830811977386, - 0.05202056095004082, - 0.00041935592889785767, - -0.06088961660861969, - 0.006526827812194824, - 0.0462937131524086, - -0.030801162123680115, - -0.004340748302638531, - 0.029814936220645905, - 0.08274928480386734, - -0.10477759689092636, - -0.005980929359793663, - -0.0748855471611023, - 0.05844786390662193, - 0.10525840520858765, - -0.05913669615983963, - -0.04547093063592911, - -0.09805968403816223, - -0.05136168375611305, - 0.011522175744175911, - -0.04839431867003441, - -0.012120232917368412, - 0.0010702842846512794, - -0.04265597090125084, - -0.08253851532936096, - -0.11632935702800751, - 0.037482257932424545, - -0.02459690347313881, - 0.016678372398018837, - -0.06416452676057816, - 0.04302721098065376, - 0.031156009063124657, - 0.02446451038122177, - -0.03664455562829971, - 0.048583198338747025, - -0.007140323519706726, - -0.02506367489695549, - 0.029407629743218422, - 0.04427163675427437, - 0.0771368145942688, - -0.008016351610422134, - -0.06885376572608948, - -0.07182422280311584, - 0.029722614213824272, - -0.0405505932867527, - 0.09799253940582275, - 0.011097833514213562, - -0.048780474811792374, - -0.03552151098847389, - -0.025461331009864807, - -0.02536981739103794, - 0.03774099051952362, - 0.05317344516515732, - 0.054422132670879364, - 0.027769843116402626, - -0.047993600368499756, - 0.07540889084339142, - 0.06735294312238693, - 0.005908850580453873, - -0.05712722986936569, - -0.02110944874584675, - -0.0179589856415987, - 0.03770499303936958, - -0.015163765288889408, - -0.06058238819241524, - 0.04539172723889351, - -0.013005126267671585, - 0.05264304578304291, - 0.06468474864959717, - 0.08613322675228119, - 0.04964660480618477, - -0.05588657408952713 - ] - }, - "p244_377.wav": { - "name": "p244", - "embedding": [ - 0.04733222723007202, - 0.09046431630849838, - -0.007729042321443558, - 0.023351922631263733, - -0.045406218618154526, - 0.0695141851902008, - -0.14895758032798767, - 0.13072697818279266, - -0.03740275651216507, - 0.13736365735530853, - -0.061719201505184174, - 0.11193593591451645, - -0.012872840277850628, - -0.19223563373088837, - -0.04125719517469406, - 0.05775046348571777, - -0.05566421151161194, - -0.04179064556956291, - -0.01767709106206894, - -0.016842788085341454, - 0.04336528107523918, - 0.039042405784130096, - 0.024615731090307236, - 0.019655853509902954, - 0.018564637750387192, - 0.06023978441953659, - 0.006099242717027664, - 0.04876285791397095, - 0.011892968788743019, - -0.04463401436805725, - -0.03324940428137779, - 0.10493414103984833, - -0.033655568957328796, - 0.016802456229925156, - 0.04893812537193298, - -0.005977705121040344, - 0.010311475023627281, - -0.07104698568582535, - -0.01493571326136589, - 0.005471229087561369, - -0.04094529524445534, - 0.08284159004688263, - 0.0349363274872303, - -0.0021036460530012846, - 0.02977772057056427, - 0.020967869088053703, - -0.01297469437122345, - -0.05224353075027466, - -0.10763004422187805, - 0.16375944018363953, - 0.07977543026208878, - -0.004425516352057457, - -0.057821862399578094, - -0.07021655887365341, - 0.09861578792333603, - -0.005678652785718441, - -0.1081778034567833, - -0.045505356043577194, - 0.07989533990621567, - 0.16195233166217804, - -0.02595449611544609, - -0.0380433015525341, - 0.03098231554031372, - 0.14104890823364258, - 0.040164824575185776, - 0.09193927049636841, - 0.07257379591464996, - 0.10661174356937408, - -0.02201034501194954, - 0.005454308819025755, - 0.051565513014793396, - 0.06457283347845078, - 0.03750522434711456, - -0.01008233055472374, - 0.026899609714746475, - -0.004043132066726685, - -0.015529944561421871, - 0.011348563246428967, - -0.01910034939646721, - -0.011130217462778091, - -0.017013324424624443, - 0.004208702128380537, - -0.0074163442477583885, - 0.03168845921754837, - -0.022276248782873154, - 0.05006998032331467, - 0.021145593374967575, - -0.010872529819607735, - 0.06869891285896301, - 0.03454512357711792, - 0.02676863595843315, - 0.06201603263616562, - -0.06676843017339706, - -0.08428718894720078, - 0.03883475065231323, - 0.011023982428014278, - 0.020811481401324272, - 0.07552500814199448, - 0.03640558943152428, - -0.02461135946214199, - 0.11043436825275421, - 0.044609084725379944, - -0.022144397720694542, - 0.02399427816271782, - -0.10074125230312347, - 0.12465481460094452, - 0.07897934317588806, - -0.02425292693078518, - 0.0445183627307415, - -0.054526086896657944, - 0.07095321267843246, - 0.0692463219165802, - -0.13837578892707825, - -0.07763507217168808, - 0.04583822935819626, - 0.03376290202140808, - -0.01840008795261383, - 0.12454652786254883, - -0.0008544350857846439, - 0.030636047944426537, - 0.09778328984975815, - -0.07056055217981339, - -0.05649099871516228, - -0.031130269169807434, - 0.05065948888659477, - -0.08655708283185959, - 0.05324557423591614, - 0.05073268339037895, - -0.012185122817754745, - -0.0032959484960883856, - 0.07827114313840866, - -0.009260710328817368, - -0.0033345255069434643, - 0.011785428039729595, - -0.039946116507053375, - 0.03251684457063675, - -0.029809778556227684, - 0.012041283771395683, - 0.02555250935256481, - 0.03331790864467621, - 0.031097471714019775, - 0.0016900639748200774, - -0.04283086583018303, - -0.11885258555412292, - 0.007231834810227156, - 0.036401525139808655, - 0.07811887562274933, - -0.010405996814370155, - -0.034443892538547516, - -0.042231760919094086, - -0.058891575783491135, - 0.013215364888310432, - -0.015550191514194012, - 0.07276944816112518, - -0.01287914626300335, - -0.003698386251926422, - 0.08664282411336899, - 0.015264466404914856, - 0.0011708190431818366, - -0.04073679447174072, - -0.031158100813627243, - 0.019602570682764053, - 0.038766101002693176, - -0.07748782634735107, - -0.06124364584684372, - -0.00022036582231521606, - 0.03349297121167183, - -0.01661285199224949, - 0.03932264819741249, - 0.04105234518647194, - 0.015920568257570267, - 0.027934208512306213, - -0.0695836991071701, - 0.013799848966300488, - -0.10334327071905136, - -0.06709205359220505, - -0.014693690463900566, - -0.0046608950942754745, - -0.015061387792229652, - 0.07610457390546799, - 0.017258161678910255, - 0.051063209772109985, - -0.016528960317373276, - -0.06407789885997772, - -0.0741993859410286, - 0.056603118777275085, - 0.08332005143165588, - 0.004241840448230505, - 0.04837234318256378, - 0.04887954518198967, - -0.023131929337978363, - 0.05168752372264862, - 0.05290812999010086, - 0.10788771510124207, - -0.023714736104011536, - 0.015375932678580284, - -0.07529333233833313, - 0.08378778398036957, - 0.08201092481613159, - -0.0899907574057579, - -0.07696673274040222, - -0.02056359499692917, - -0.06307683885097504, - 0.03234029561281204, - -0.02875496819615364, - 0.008930492214858532, - 0.022837094962596893, - -0.00964735820889473, - -0.10226570814847946, - -0.09338478744029999, - 0.0775962695479393, - -0.07447759807109833, - -0.0003247287531848997, - -0.07987533509731293, - 0.05032431334257126, - 0.10073523223400116, - 0.0409855842590332, - -0.027450840920209885, - -0.018690699711441994, - 0.04257289692759514, - -0.034710608422756195, - 3.053806722164154e-05, - 0.039272792637348175, - 0.031003182753920555, - -0.12332575023174286, - 0.00576448580250144, - -0.0801028460264206, - 0.05784715712070465, - -0.06268148869276047, - 0.15345041453838348, - 0.01110049244016409, - -0.05558255314826965, - -0.08508320152759552, - 0.029661260545253754, - -0.02098817378282547, - 0.04710116982460022, - 0.02508586458861828, - 0.0568326860666275, - 0.028572171926498413, - -0.06707557290792465, - 0.11390320956707001, - 0.04429692029953003, - -0.033711306750774384, - -0.07568075507879257, - -0.03493708744645119, - -0.027595657855272293, - 0.040212761610746384, - 0.012148179113864899, - -0.08643628656864166, - -0.03368380293250084, - 0.03219104930758476, - -0.01587980054318905, - 0.07350198924541473, - 0.1479368358850479, - 0.06011173129081726, - -0.1269829273223877 - ] - }, - "p244_277.wav": { - "name": "p244", - "embedding": [ - 0.04264187067747116, - 0.06311096251010895, - -0.023551030084490776, - 0.0025000344030559063, - -0.057646460831165314, - 0.00225723534822464, - -0.11004720628261566, - 0.07569189369678497, - -0.03535941243171692, - 0.13863961398601532, - -0.05673816427588463, - 0.09984621405601501, - -0.02892191894352436, - -0.12817013263702393, - 0.010409042239189148, - 0.04462805762887001, - -0.034322742372751236, - -0.0507219135761261, - -0.0610097199678421, - -0.057701073586940765, - 0.026611264795064926, - 0.060849081724882126, - 0.028283659368753433, - -0.02435755357146263, - 0.02505907416343689, - 0.07433561980724335, - -0.014201589860022068, - -0.0020288852974772453, - -0.024021558463573456, - -0.07985426485538483, - -0.0157223641872406, - 0.03277362138032913, - -0.0407225526869297, - -0.016750629991292953, - 0.012855478562414646, - 0.0014595035463571548, - 0.0031131920404732227, - -0.0452728196978569, - -0.034499913454055786, - 0.02210972085595131, - -0.07554882019758224, - 0.06354205310344696, - 0.0002334974706172943, - -0.07364454865455627, - 0.022563796490430832, - -0.00024508778005838394, - -0.0025662570260465145, - -0.013982882723212242, - -0.07237289100885391, - 0.14286483824253082, - 0.07294850051403046, - 0.024620216339826584, - -0.044067081063985825, - -0.03783527389168739, - 0.087599977850914, - -0.024627361446619034, - -0.08886294811964035, - -0.06635920703411102, - 0.01920413412153721, - 0.09394382685422897, - -0.05642993748188019, - -0.04926179349422455, - 0.059584908187389374, - 0.046132609248161316, - 0.0660858228802681, - 0.03160572052001953, - 0.07284341007471085, - 0.06849180907011032, - -0.02200448140501976, - -0.002484874567016959, - 0.059769004583358765, - 0.08756299316883087, - 0.0719323381781578, - -0.0010794373229146004, - 0.021357227116823196, - 0.028888575732707977, - -0.042473286390304565, - -0.026766955852508545, - -0.021503642201423645, - -0.016207046806812286, - -0.0060727521777153015, - -0.0017984514124691486, - 0.028757430613040924, - -0.018070241436362267, - -0.018856022506952286, - 0.04063067585229874, - 0.05448971688747406, - -0.03964638337492943, - 0.060966476798057556, - 0.004664110951125622, - -0.011398667469620705, - 0.04361611604690552, - -0.08058154582977295, - -0.03437003120779991, - 0.01716829091310501, - 0.01690690591931343, - -0.012456999160349369, - 0.05685466527938843, - 0.03253331780433655, - -0.003275204449892044, - 0.099212646484375, - 0.017133908346295357, - 0.00788399949669838, - -0.004772128537297249, - -0.07832632213830948, - 0.12250611931085587, - 0.08846046775579453, - -0.04815295338630676, - 0.014907857403159142, - -0.03462682291865349, - 0.03354254737496376, - 0.04674684256315231, - -0.09301337599754333, - -0.087657630443573, - -0.006601814646273851, - -0.018905671313405037, - 0.0013481024652719498, - 0.09413935244083405, - 0.0020515201613307, - 0.04556795582175255, - 0.1325456202030182, - -0.08294179290533066, - -0.07228812575340271, - -0.0012694617034867406, - 0.02431389130651951, - -0.09716517478227615, - 0.07305336743593216, - 0.0702163353562355, - 0.004958189092576504, - 0.04787379875779152, - 0.0946945995092392, - -0.015924906358122826, - -0.0011008083820343018, - -0.02557320147752762, - -0.025193018838763237, - -0.018104009330272675, - -0.029397133737802505, - -0.02496369741857052, - 0.08315920829772949, - 0.03424597904086113, - 0.053083233535289764, - -0.005343281663954258, - -0.015508508309721947, - -0.12803561985492706, - 0.03876134380698204, - 0.03950865566730499, - 0.04070867970585823, - -0.019142312929034233, - 0.009575407952070236, - -0.04028969258069992, - -0.07258483022451401, - -0.008832355029881, - -0.038102902472019196, - 0.07548213005065918, - -0.03485502302646637, - 0.04116066172719002, - 0.10541260987520218, - 0.01915627345442772, - -0.00029413867741823196, - -0.05262730270624161, - -0.021592440083622932, - -0.008701791986823082, - 0.04718241095542908, - -0.04831003397703171, - -0.09325270354747772, - -0.04639029875397682, - 0.03858348727226257, - 0.018506933003664017, - 0.07129750400781631, - 0.0396333746612072, - 0.0033629750832915306, - 0.00828552059829235, - -0.07426701486110687, - 0.03370433300733566, - -0.05994594097137451, - -0.05434270575642586, - -0.008889112621545792, - -0.05110438913106918, - -0.02826916053891182, - 0.06683064252138138, - -0.008082222193479538, - 0.04435339570045471, - -0.04691636562347412, - -0.09931562095880508, - -0.11064563691616058, - 0.004934659227728844, - 0.036238037049770355, - -0.029476074501872063, - 0.008395855315029621, - 0.05499150976538658, - -0.012559883296489716, - 0.02311696857213974, - 0.020174259319901466, - 0.09117074310779572, - -0.03786388784646988, - 0.012111879885196686, - -0.023081757128238678, - 0.0757397934794426, - 0.06704360246658325, - -0.055841103196144104, - -0.037043072283267975, - -0.07037146389484406, - -0.07031042873859406, - 0.03177401423454285, - -0.0011859583901241422, - 0.008750032633543015, - 0.018187981098890305, - -0.0074934326112270355, - -0.0681600496172905, - -0.07481291890144348, - 0.057219941169023514, - -0.041216135025024414, - -0.017641713842749596, - -0.06915230304002762, - 0.0043623484671115875, - 0.03144053742289543, - 0.058244090527296066, - 0.0012780011165887117, - -0.0020744120702147484, - 0.012411200441420078, - -0.0251882616430521, - 0.037169575691223145, - 0.09109952300786972, - 0.036118537187576294, - -0.03495539352297783, - -0.01692371442914009, - -0.08257092535495758, - 0.05267810821533203, - -0.015549730509519577, - 0.09850166738033295, - -0.013627718202769756, - -0.02539307251572609, - -0.08449490368366241, - 0.015916192904114723, - -0.0176605936139822, - 0.063267782330513, - 0.04489488899707794, - 0.06108396500349045, - 0.04919436573982239, - -0.06144469976425171, - 0.0855003073811531, - 0.07372401654720306, - -0.011811371892690659, - -0.05288457125425339, - -0.0619916133582592, - -0.049867428839206696, - -0.011114935390651226, - 0.006419411860406399, - -0.06830126792192459, - 0.02813584730029106, - 0.003600649768486619, - 0.0007874211296439171, - 0.07652373611927032, - 0.09360671043395996, - 0.06632298231124878, - -0.10903823375701904 - ] - }, - "p244_010.wav": { - "name": "p244", - "embedding": [ - 0.028725378215312958, - 0.10670597106218338, - -0.013663104735314846, - 0.049690186977386475, - -0.06104345619678497, - 0.06506575644016266, - -0.12935765087604523, - 0.1428772509098053, - -0.03178021311759949, - 0.0916590467095375, - -0.09041033685207367, - 0.14234593510627747, - -0.028014011681079865, - -0.17712175846099854, - -0.026547489687800407, - 0.0555666945874691, - 0.003901268355548382, - -0.005483678076416254, - 0.023041341453790665, - -0.011615506373345852, - 0.05064955726265907, - 0.01587148942053318, - 0.05886288732290268, - 0.013373097404837608, - 0.03190702944993973, - 0.056823499500751495, - 0.018164364621043205, - 0.06301610171794891, - 0.029072750359773636, - -0.016369102522730827, - -0.05543539673089981, - 0.10893231630325317, - -0.0157815869897604, - 0.002462020143866539, - 0.06886240839958191, - -0.007040664553642273, - -0.0037082922644913197, - -0.06262369453907013, - -0.0014248085208237171, - -0.02177208662033081, - -0.02147660031914711, - 0.06623233109712601, - 0.040154967457056046, - -0.0349268913269043, - 0.03514464199542999, - 0.0244491808116436, - -0.009560373611748219, - -0.015133281238377094, - -0.12620337307453156, - 0.128758504986763, - 0.043029993772506714, - 0.013383596204221249, - -0.08306790143251419, - -0.05327610298991203, - 0.11673308908939362, - 0.0037154806777834892, - -0.0717497318983078, - -0.012218031100928783, - 0.08629606664180756, - 0.18141299486160278, - -0.005386904813349247, - -0.02255343273282051, - 0.03178722783923149, - 0.10652004927396774, - 0.028859883546829224, - 0.0872742235660553, - 0.07398101687431335, - 0.11215727776288986, - -0.0018404878210276365, - 0.02770141139626503, - 0.017030417919158936, - 0.08586126565933228, - -0.0024256715551018715, - -0.020028676837682724, - -0.010820229537785053, - -0.005327487830072641, - -0.02738869935274124, - 0.03361598029732704, - -0.0383361354470253, - -0.0462166853249073, - -0.022930003702640533, - -0.009437731467187405, - 0.01947222836315632, - 6.002793088555336e-05, - -0.04381745308637619, - 0.06869108974933624, - 0.026850320398807526, - -0.012992391362786293, - 0.0617077462375164, - 0.010400219820439816, - -0.024428587406873703, - 0.0535995289683342, - -0.07261838018894196, - -0.10296855866909027, - 0.02543533593416214, - -0.0024873341899365187, - 0.025066573172807693, - 0.0891386941075325, - 0.04712182655930519, - -0.020786520093679428, - 0.11509157717227936, - 0.06848638504743576, - -0.0008477892260998487, - 0.04748477041721344, - -0.07441697269678116, - 0.12000942975282669, - 0.09091515839099884, - -0.004055557306855917, - 0.07382682710886002, - -0.04909979924559593, - 0.0602409765124321, - 0.06179901957511902, - -0.12094734609127045, - -0.07089880108833313, - 0.014706685207784176, - 0.041342414915561676, - 0.002742488868534565, - 0.10451318323612213, - -0.00913223810493946, - 0.04099633917212486, - 0.0883367657661438, - -0.0933537483215332, - -0.07883404195308685, - -0.0391116663813591, - 0.04052465781569481, - -0.04352322965860367, - 0.05479617416858673, - 0.05855022370815277, - -0.008855506777763367, - -0.01494442019611597, - 0.045939669013023376, - -0.0074395835399627686, - 0.014088914729654789, - 0.06511983275413513, - -0.06878434866666794, - 0.008816284127533436, - -0.03868421912193298, - 0.00898418202996254, - 0.05127020180225372, - 0.04162725433707237, - 0.040688395500183105, - 0.018520019948482513, - -0.015696054324507713, - -0.1123669371008873, - -0.025542566552758217, - 0.07176807522773743, - 0.07686452567577362, - -0.0035655226092785597, - -0.06837192177772522, - -0.04631870985031128, - -0.05864271521568298, - 0.02417045831680298, - 0.009200849570333958, - 0.07643677294254303, - -0.027439165860414505, - 0.01286247093230486, - 0.051882702857255936, - 0.024856867268681526, - -0.008481026627123356, - -0.07212729752063751, - -0.03712907433509827, - 0.019971342757344246, - 0.011348159983754158, - -0.06558899581432343, - -0.07371678948402405, - -0.021353378891944885, - 0.03119572065770626, - -0.06447643041610718, - 0.03798682242631912, - 0.038434408605098724, - 0.02241576462984085, - 0.03698313236236572, - -0.037804167717695236, - -0.002959656063467264, - -0.09651385247707367, - -0.05180474743247032, - -0.009964662604033947, - 0.031705763190984726, - -0.0287723857909441, - 0.06844978779554367, - 0.06184413656592369, - 0.06942988187074661, - 0.008909285999834538, - -0.006876582279801369, - -0.07053043693304062, - 0.030965980142354965, - 0.04503471404314041, - 0.028909485787153244, - 0.08840499818325043, - 0.04474673792719841, - -0.036640655249357224, - 0.08059094846248627, - 0.08203427493572235, - 0.06344818323850632, - -0.01037412229925394, - -0.020454753190279007, - -0.07374860346317291, - 0.06970997154712677, - 0.11968529224395752, - -0.09022782742977142, - -0.1003156453371048, - -0.04872199892997742, - -0.07762288302183151, - 0.04848495498299599, - -0.028974764049053192, - -0.002572589088231325, - 0.01237446814775467, - -0.017692934721708298, - -0.1055043637752533, - -0.099042609333992, - 0.07173991203308105, - -0.0579565092921257, - -0.0008106371387839317, - -0.05996666103601456, - 0.04513000696897507, - 0.0959613025188446, - -0.016461580991744995, - -0.02952190488576889, - -0.02839544788002968, - 0.054464954882860184, - -0.05942635238170624, - -0.008524757809937, - 0.04394569620490074, - 0.03610827773809433, - -0.10853509604930878, - 0.03327574580907822, - -0.0647948831319809, - 0.05671197175979614, - -0.047558050602674484, - 0.17820847034454346, - 0.01884525641798973, - -0.03572610765695572, - -0.08030148595571518, - 0.05138568580150604, - -0.016077954322099686, - 0.03466182202100754, - 0.03344974294304848, - 0.05271591618657112, - -0.013466671109199524, - -0.10121957957744598, - 0.12472590804100037, - 0.010765277780592442, - -0.05773167312145233, - -0.09374077618122101, - -0.04166870564222336, - -0.03574949502944946, - 0.028676796704530716, - 0.0072265565395355225, - -0.07576675713062286, - -0.06061454489827156, - 0.022106267511844635, - 0.010483967140316963, - 0.0645110011100769, - 0.14586959779262543, - 0.051320455968379974, - -0.08237648010253906 - ] - }, - "p244_303.wav": { - "name": "p244", - "embedding": [ - 0.05086994171142578, - 0.08072485029697418, - 0.040910255163908005, - 0.0013891905546188354, - -0.014478957280516624, - 0.03669634088873863, - -0.09335188567638397, - 0.07901257276535034, - 0.014464322477579117, - 0.08860625326633453, - -0.12932388484477997, - 0.0366247333586216, - -0.05844385549426079, - -0.12876854836940765, - -0.03077705204486847, - 0.021804828196763992, - -0.04318710044026375, - 0.007399998605251312, - -0.04967281594872475, - -0.04463738575577736, - 0.019266493618488312, - 0.01893220655620098, - 0.05309247225522995, - -0.0314900204539299, - -0.027108270674943924, - 0.02366781048476696, - 0.0024859225377440453, - 0.010353431105613708, - 0.018924426287412643, - 0.0027833953499794006, - 0.027088072150945663, - 0.04175854101777077, - -0.000131973996758461, - 0.008983499370515347, - 0.04687155783176422, - 0.04443495720624924, - -0.010417547076940536, - -0.0334966778755188, - -0.026688016951084137, - 0.06783045828342438, - -0.04978682100772858, - 0.0629938393831253, - 0.048324186354875565, - -0.01743905618786812, - 0.05304032564163208, - -0.002429172396659851, - -0.0651036947965622, - -0.005244677886366844, - -0.10726199299097061, - 0.14259158074855804, - 0.054975174367427826, - 0.018864206969738007, - -0.07321242988109589, - -0.01979796402156353, - 0.11842131614685059, - -0.02936933934688568, - -0.08809123188257217, - -0.04840527102351189, - 0.036557577550411224, - 0.07616955786943436, - -0.006615160498768091, - -0.03273646533489227, - -0.040768593549728394, - 0.043823353946208954, - -0.019574299454689026, - 0.06636378914117813, - 0.08028679341077805, - 0.07933355867862701, - -0.01782982051372528, - 0.035356756299734116, - 0.08476553857326508, - 0.00943467952311039, - 0.01453235000371933, - -0.033368516713380814, - 0.027517026290297508, - -0.024607796221971512, - -0.027229975908994675, - 0.04379443824291229, - 0.010878156870603561, - -0.022651487961411476, - 0.019058922305703163, - -0.020240318030118942, - -0.00400744192302227, - -0.007379990536719561, - -0.06787237524986267, - -0.001393275335431099, - -0.006609325297176838, - 0.05506915599107742, - 0.07482090592384338, - 0.06983830779790878, - 0.0030721938237547874, - 0.03625817596912384, - -0.014485575258731842, - -0.09609570354223251, - -0.03183092921972275, - -0.02788097783923149, - 0.022880004718899727, - 0.0371972993016243, - 0.015818441286683083, - -0.004957647994160652, - 0.07519248872995377, - 0.04007837176322937, - 0.003095117397606373, - 0.0005476865917444229, - -0.11065604537725449, - 0.045733485370874405, - 0.09538108110427856, - -0.0049351295456290245, - 0.005513550713658333, - -0.010928180068731308, - 0.09307888895273209, - 0.07535122334957123, - -0.0694999024271965, - -0.022451302036643028, - 0.02165895700454712, - 0.06930910795927048, - 0.0748559907078743, - 0.08120141178369522, - -0.009417391382157803, - -0.03359581530094147, - 0.13591331243515015, - -0.05253691226243973, - -0.0068921782076358795, - -0.0020351381972432137, - -0.0020439699292182922, - -0.010730847716331482, - 0.019805535674095154, - 0.020882681012153625, - 0.0009033810347318649, - -0.02671380713582039, - 0.042021244764328, - -0.00638983678072691, - 0.002193121239542961, - -0.047575682401657104, - 0.006564216688275337, - 0.06948788464069366, - -0.025066815316677094, - 0.0034740683622658253, - 0.08385401964187622, - 0.07601861655712128, - 0.04497477784752846, - 0.07866920530796051, - -0.05052900314331055, - -0.045000601559877396, - 0.020842349156737328, - 0.03276495635509491, - 0.008508268743753433, - -0.015079807490110397, - -0.04481314867734909, - -0.050781890749931335, - -0.029487382620573044, - 0.08121202886104584, - -0.027118362486362457, - 0.0812443345785141, - 0.015863755717873573, - -0.034007616341114044, - 0.07388241589069366, - -0.031191222369670868, - -0.022215748205780983, - -0.04986584186553955, - -0.07730323821306229, - -0.0037364806048572063, - 0.017251040786504745, - -0.12774981558322906, - -0.03113045170903206, - -0.02424062043428421, - 0.005722923204302788, - 0.0077817002311348915, - -0.050905559211969376, - 0.06880206614732742, - -0.04607398435473442, - 0.0271031241863966, - -0.06728782504796982, - 0.04851977527141571, - -0.08129298686981201, - -0.06558481603860855, - 0.006172357127070427, - -0.03902430087327957, - 0.035720452666282654, - 0.07345400750637054, - -0.03674108535051346, - -0.02113676443696022, - -0.018549378961324692, - -0.11090287566184998, - -0.013332740403711796, - 0.07086677849292755, - 0.04954908415675163, - 0.011247997172176838, - 0.06500115990638733, - 0.0801166296005249, - -0.039803557097911835, - 0.0606718473136425, - 0.01620657369494438, - 0.0858481153845787, - -0.07190751284360886, - 0.012757385149598122, - -0.005361108109354973, - 0.03920765221118927, - 0.04750397056341171, - -0.05647473409771919, - -0.0880991667509079, - -0.06131656840443611, - -0.02567828819155693, - 0.02819378301501274, - -0.029608365148305893, - -0.03244323283433914, - 0.005862005054950714, - -0.017094694077968597, - -0.051371246576309204, - -0.07057394087314606, - 0.019255897030234337, - 0.010236331261694431, - -0.0066207945346832275, - -0.04347224533557892, - 0.020936865359544754, - 0.002386130392551422, - 0.02471340447664261, - -0.020868349820375443, - 0.03521343320608139, - -0.008208176121115685, - -0.057333897799253464, - -0.07976987957954407, - -0.027563974261283875, - 0.006840787827968597, - -0.0043005309998989105, - -0.006566083058714867, - -0.06918224692344666, - 0.08459626883268356, - -0.012925414368510246, - 0.06600619852542877, - -0.007634011562913656, - -0.009500415995717049, - -0.0029632877558469772, - -0.0020032599568367004, - -0.04413478076457977, - 0.03092007152736187, - 0.0714048370718956, - 0.006414875388145447, - -0.0025811661034822464, - -0.02007622830569744, - 0.08884145319461823, - 0.02687453106045723, - -0.012341579422354698, - -0.02021118625998497, - 0.05025880038738251, - -0.06245449185371399, - -0.04651808738708496, - -0.010262799449265003, - -0.05070169270038605, - 0.03186872974038124, - -0.02141043171286583, - -0.009322119876742363, - 0.0147930346429348, - 0.06873107701539993, - 0.02929753065109253, - -0.06964659690856934 - ] - }, - "p244_232.wav": { - "name": "p244", - "embedding": [ - 0.030955003574490547, - 0.08225686848163605, - -0.026167739182710648, - 0.034364327788352966, - -0.055399082601070404, - 0.05940912663936615, - -0.1497858315706253, - 0.1509069800376892, - -0.03663818538188934, - 0.1248239278793335, - -0.0603150948882103, - 0.1123816967010498, - -0.026475079357624054, - -0.1824588179588318, - -0.02223712019622326, - 0.06200999766588211, - -0.03276641666889191, - -0.05313640087842941, - -0.028874503448605537, - -0.008750061504542828, - 0.026636511087417603, - 0.022036101669073105, - -0.0004767272621393204, - 0.035958029329776764, - 0.018418053165078163, - 0.057225774973630905, - -0.00893328245729208, - 0.04563155770301819, - 0.019728491082787514, - -0.013275843113660812, - -0.028433043509721756, - 0.100715771317482, - -0.05943729728460312, - 0.008357983082532883, - 0.06376755982637405, - -0.013840243220329285, - -0.014781555160880089, - -0.05871795117855072, - -0.019421186298131943, - -0.007225473411381245, - -0.06464377045631409, - 0.08721588551998138, - 0.04328744113445282, - 0.0009219245985150337, - 0.04154667630791664, - 0.03276629000902176, - -0.009504780173301697, - -0.04713617265224457, - -0.1121065691113472, - 0.1356859803199768, - 0.07888346910476685, - -0.013625338673591614, - -0.06818297505378723, - -0.04119180887937546, - 0.10064180195331573, - -0.016587089747190475, - -0.10427527129650116, - -0.05555611848831177, - 0.0860384851694107, - 0.14325544238090515, - -0.03649243712425232, - -0.025906547904014587, - 0.017998311668634415, - 0.13315555453300476, - 0.08517007529735565, - 0.08853767812252045, - 0.06979244202375412, - 0.1303124874830246, - -0.028727956116199493, - -0.0018185931257903576, - 0.06994375586509705, - 0.05707184225320816, - 0.04032492637634277, - -0.0053398082964122295, - 0.019982216879725456, - 0.011023357510566711, - -0.00556158646941185, - 0.005987999495118856, - -0.02921021357178688, - -0.004633207805454731, - -0.01667523756623268, - 0.02470996230840683, - -0.004161872435361147, - 0.04750695824623108, - -0.017112310975790024, - 0.06861309707164764, - 0.05199010670185089, - -0.01693868823349476, - 0.07043921947479248, - 0.03453134372830391, - -0.0027603227645158768, - 0.06514585763216019, - -0.09954482316970825, - -0.07337656617164612, - 0.028049040585756302, - -0.010628284886479378, - 0.018603162840008736, - 0.07038712501525879, - 0.03109721466898918, - -0.0019274418009445071, - 0.13062971830368042, - 0.04392148554325104, - -0.01758021116256714, - 0.045508481562137604, - -0.0909043699502945, - 0.13980942964553833, - 0.058309681713581085, - -0.026628196239471436, - 0.042237989604473114, - -0.049634356051683426, - 0.05781242251396179, - 0.0522179901599884, - -0.1284443885087967, - -0.059402432292699814, - 0.06277811527252197, - 0.035799045115709305, - -0.04045063629746437, - 0.13847792148590088, - -0.0049690427258610725, - 0.038601987063884735, - 0.10101017355918884, - -0.0708998590707779, - -0.05300513654947281, - -0.009106209501624107, - 0.05786249786615372, - -0.06362000852823257, - 0.05602806806564331, - 0.04469164088368416, - -0.00024171569384634495, - 0.013101227581501007, - 0.09494341909885406, - 0.004752127919346094, - -0.013464430347084999, - 0.01538572832942009, - -0.03090580180287361, - 0.04443518444895744, - -0.010465172119438648, - 0.0006785569712519646, - 0.033403921872377396, - 0.028841624036431313, - 0.05300929397344589, - -0.007053093984723091, - -0.012311217375099659, - -0.12023797631263733, - 0.0045458474196493626, - 0.03103308193385601, - 0.11261628568172455, - -0.013627579435706139, - -0.01721094362437725, - -0.05851977318525314, - -0.060338519513607025, - -0.016285033896565437, - -0.008334862068295479, - 0.08106769621372223, - -0.028965385630726814, - 0.0035702052991837263, - 0.087030328810215, - 0.020359423011541367, - 0.01530112512409687, - -0.04681496322154999, - -0.024376949295401573, - -0.005033688619732857, - 0.06387915462255478, - -0.07089253515005112, - -0.06645822525024414, - 0.002432561945170164, - 0.042131394147872925, - -0.020987922325730324, - 0.05834024399518967, - 0.03505070134997368, - 0.03231378644704819, - 0.023026399314403534, - -0.07291001826524734, - 0.02770531177520752, - -0.09786864370107651, - -0.05986499786376953, - -0.01803792268037796, - 0.016358211636543274, - -0.024587152525782585, - 0.06809000670909882, - 0.025577712804079056, - 0.06966913491487503, - 0.004402273800224066, - -0.07678177952766418, - -0.08311372995376587, - 0.060352958738803864, - 0.0684356614947319, - -0.025736043229699135, - 0.052126433700323105, - 0.0699366107583046, - -0.0360199511051178, - 0.027775436639785767, - 0.064737468957901, - 0.09838823974132538, - -0.02781607210636139, - 0.020914599299430847, - -0.06858585774898529, - 0.08611253648996353, - 0.07740860432386398, - -0.10443754494190216, - -0.06946203112602234, - 0.0011498844251036644, - -0.0512927770614624, - 0.012925932183861732, - -0.039728835225105286, - 0.013339024968445301, - 0.028628556057810783, - -0.0028679983224719763, - -0.09937349706888199, - -0.09012958407402039, - 0.06622787564992905, - -0.10237047076225281, - 0.012176545336842537, - -0.08945709466934204, - 0.031761594116687775, - 0.11416492611169815, - 0.027827873826026917, - -0.03773145377635956, - -0.03059513121843338, - 0.055243417620658875, - -0.012641758657991886, - 0.00845520943403244, - 0.0636475682258606, - 0.0392475463449955, - -0.12736910581588745, - -0.0009595244191586971, - -0.059611327946186066, - 0.06867016851902008, - -0.03509185463190079, - 0.1494835764169693, - 0.021333612501621246, - -0.03771695867180824, - -0.07975314557552338, - 0.017768308520317078, - -0.004101933911442757, - 0.05537090077996254, - 0.014293333515524864, - 0.07221437990665436, - 0.04722786694765091, - -0.03195471316576004, - 0.14044740796089172, - 0.050141796469688416, - -0.0511203296482563, - -0.06355500966310501, - -0.041622135788202286, - -0.04044727236032486, - 0.03785739466547966, - 0.0339277908205986, - -0.09896513819694519, - -0.03048505261540413, - 0.026035085320472717, - -0.039641860872507095, - 0.06470636278390884, - 0.14841541647911072, - 0.08750447630882263, - -0.12302286922931671 - ] - }, - "p244_386.wav": { - "name": "p244", - "embedding": [ - 0.031649477779865265, - 0.07646173983812332, - -0.03148992359638214, - 0.052173126488924026, - -0.009548192843794823, - 0.05671019107103348, - -0.11025732755661011, - 0.04974089190363884, - -0.032562751322984695, - 0.13640549778938293, - -0.07717396318912506, - 0.07606972008943558, - -0.03287271782755852, - -0.16226907074451447, - -0.03962043672800064, - 0.06625166535377502, - -0.06991659104824066, - -0.03414027392864227, - -0.07099336385726929, - 0.004159691743552685, - 0.021393030881881714, - 0.045025646686553955, - 0.04835662245750427, - -0.02847697213292122, - 0.015876639634370804, - 0.07108022272586823, - 0.005270687863230705, - 0.053520023822784424, - 0.019035978242754936, - -0.014788918197154999, - -0.017116323113441467, - 0.11924406886100769, - -0.025705359876155853, - 0.011664564721286297, - 0.012256763875484467, - 0.05011039972305298, - 0.0011061616241931915, - -0.0535585917532444, - 0.006119484081864357, - 0.0008402115199714899, - -0.0679161548614502, - 0.05726798623800278, - 0.01713777333498001, - 0.00038415100425481796, - 0.04642557352781296, - -0.026818644255399704, - -0.057028114795684814, - -0.041265588253736496, - -0.10324981808662415, - 0.18313279747962952, - 0.09561291337013245, - 0.002732375171035528, - -0.06283178925514221, - -0.06810610741376877, - 0.08464275300502777, - 0.0027346834540367126, - -0.11771519482135773, - -0.05812404304742813, - 0.07848899066448212, - 0.1573343276977539, - 0.0008205575868487358, - -0.012080795131623745, - 0.013525392860174179, - 0.13324788212776184, - 0.044215209782123566, - 0.09904691576957703, - 0.06427250802516937, - 0.09096527099609375, - 0.024918677285313606, - 0.012453887611627579, - 0.09327840059995651, - 0.051750071346759796, - 0.05452318862080574, - -0.025828810408711433, - 0.02530427649617195, - 0.008843940682709217, - -0.03821789473295212, - 0.007995064370334148, - -0.00885915569961071, - -0.027870621532201767, - -0.01016781385987997, - -0.038475148379802704, - -0.020360104739665985, - 0.022097362205386162, - -0.012947442941367626, - 0.019672485068440437, - 0.04778805375099182, - -0.03624803200364113, - 0.05572628229856491, - 0.06616448611021042, - 0.004147545900195837, - 0.0384577177464962, - -0.022854197770357132, - -0.0798768550157547, - -0.005360814742743969, - 0.021205708384513855, - 0.0058741495013237, - 0.04019877314567566, - 0.04669239744544029, - -0.02885352075099945, - 0.07884927839040756, - 0.013295728713274002, - -0.011601023375988007, - 0.015225466340780258, - -0.0960804671049118, - 0.09479682147502899, - 0.10039801895618439, - -0.011088932864367962, - -0.002814692445099354, - -0.0030156525317579508, - 0.05556480959057808, - 0.09981440752744675, - -0.11694090068340302, - -0.04579015076160431, - 0.035769350826740265, - -0.020206402987241745, - 0.004826541990041733, - 0.0826086699962616, - 0.020274579524993896, - -0.010239641182124615, - 0.10876694321632385, - -0.07385456562042236, - -0.057519882917404175, - -0.04038620367646217, - 0.04464328661561012, - -0.08643260598182678, - 0.012069916352629662, - 0.05321726202964783, - 0.01035312470048666, - -0.048268113285303116, - 0.07908546179533005, - -0.008166933432221413, - 0.0024181418120861053, - -0.01672356389462948, - -0.032482050359249115, - 0.06223515793681145, - -0.054473478347063065, - -0.004516275599598885, - 0.06853006780147552, - 0.01806415431201458, - 0.04293894022703171, - -0.0002868594601750374, - -0.027835572138428688, - -0.0888238251209259, - 0.016806710511446, - 0.06457258015871048, - 0.036462608724832535, - -0.018106846138834953, - -0.012780562043190002, - -0.04917676001787186, - -0.06469360738992691, - 0.08024219423532486, - -0.037855107337236404, - 0.080410435795784, - 0.0010232441127300262, - -0.05984511598944664, - 0.1319093406200409, - -0.05424684286117554, - -0.005210271570831537, - -0.03288478031754494, - -0.01364852860569954, - 0.03927774727344513, - 0.031974393874406815, - -0.09523142874240875, - -0.06245991215109825, - 0.023493686690926552, - 0.007143914699554443, - 0.011369949206709862, - 0.004833690822124481, - 0.04307461157441139, - -0.006663513835519552, - -0.004109029192477465, - -0.04627680778503418, - -0.009475663304328918, - -0.09625554084777832, - -0.04432388022542, - -0.012137578800320625, - -0.06808105111122131, - 0.020495522767305374, - 0.08719237148761749, - 0.011581341736018658, - -0.02281828224658966, - -0.020354295149445534, - -0.11550386250019073, - -0.06183753162622452, - 0.09062296897172928, - 0.10387173295021057, - 0.006936357822269201, - 0.053012944757938385, - 0.053312644362449646, - -0.027003593742847443, - 0.017472604289650917, - 0.0384615883231163, - 0.11574673652648926, - -0.03329072892665863, - -0.013949348591268063, - -0.08618734776973724, - 0.07743092626333237, - 0.07602544873952866, - -0.09142109751701355, - -0.06249772757291794, - -0.021195027977228165, - -0.04711662232875824, - 0.05338535085320473, - -0.04962320253252983, - -0.000934468349441886, - 0.05762859433889389, - -0.04432222247123718, - -0.10845957696437836, - -0.12000110745429993, - 0.09313343465328217, - -0.03256407752633095, - -0.03908460959792137, - -0.0546737015247345, - 0.038468413054943085, - 0.024689989164471626, - 0.038590602576732635, - -0.0395713709294796, - 0.07005934417247772, - 0.03545287996530533, - -0.07135067135095596, - -0.037966590374708176, - 0.01848294399678707, - -0.013839974999427795, - -0.10702270269393921, - -0.0300307497382164, - -0.07974396646022797, - 0.11046966910362244, - -0.06991369277238846, - 0.1135016530752182, - -0.02276787720620632, - -0.04138772934675217, - -0.06875388324260712, - 0.049664974212646484, - -0.03177066892385483, - 0.05610818788409233, - 0.060398831963539124, - 0.046858787536621094, - 0.011969218030571938, - -0.06032554805278778, - 0.10747948288917542, - 0.03370114415884018, - 0.012704925611615181, - -0.071434885263443, - -0.0022916351445019245, - -0.04706091061234474, - 0.04040273278951645, - 0.0057310545817017555, - -0.05830095708370209, - 0.029064958915114403, - 0.021631691604852676, - -0.0445687472820282, - 0.04271232336759567, - 0.09893974661827087, - 0.07274339348077774, - -0.08253943175077438 - ] - }, - "p244_301.wav": { - "name": "p244", - "embedding": [ - 0.057568274438381195, - 0.09223821014165878, - 0.007904359139502048, - 0.009360878728330135, - -0.05180535838007927, - 0.048424966633319855, - -0.13868360221385956, - 0.12880083918571472, - -0.05091404169797897, - 0.14076541364192963, - -0.0888776183128357, - 0.11056727170944214, - -0.028841275721788406, - -0.19478873908519745, - -0.031966038048267365, - 0.06778732687234879, - -0.05272502452135086, - -0.017331931740045547, - -0.030604835599660873, - -0.03833030164241791, - 0.030700307339429855, - 0.04406757280230522, - 0.04959128051996231, - 0.0025467961095273495, - 0.036366261541843414, - 0.06365272402763367, - -0.0035961742978543043, - 0.038380078971385956, - -0.0005476729711517692, - -0.06377257406711578, - -0.040321171283721924, - 0.10129543393850327, - -0.027603134512901306, - 0.0005738348118029535, - 0.04033486917614937, - -0.0038666005712002516, - 0.01028286200016737, - -0.07850514352321625, - -0.028521744534373283, - -0.005902342032641172, - -0.030111927539110184, - 0.062242597341537476, - 0.018771197646856308, - -0.023722808808088303, - 0.04266452044248581, - 0.016253197565674782, - -0.02212587371468544, - -0.051569223403930664, - -0.11230802536010742, - 0.15956172347068787, - 0.058610379695892334, - 0.01764579676091671, - -0.08062902092933655, - -0.08030031621456146, - 0.11157318204641342, - -0.020428361371159554, - -0.11070533841848373, - -0.029925629496574402, - 0.07958759367465973, - 0.1769854724407196, - -0.03261929750442505, - -0.03844251483678818, - 0.03673999011516571, - 0.10619242489337921, - 0.021103203296661377, - 0.09065048396587372, - 0.07233696430921555, - 0.07809402793645859, - -0.007173887919634581, - 0.02198970690369606, - 0.043946199119091034, - 0.06531546264886856, - 0.03806215897202492, - -0.02396574430167675, - 0.008523855358362198, - -0.0003651070292107761, - -0.039425112307071686, - 0.007121828384697437, - -0.02786560356616974, - -0.02154955267906189, - -0.02398958057165146, - -0.013112209737300873, - 0.00716791208833456, - -0.00997895561158657, - -0.029585793614387512, - 0.037681058049201965, - 0.018233096227049828, - -0.011726005002856255, - 0.08116354048252106, - 0.020696040242910385, - 0.0010887833777815104, - 0.05523429065942764, - -0.05894294008612633, - -0.08556370437145233, - 0.019801979884505272, - 0.018817182630300522, - 0.0012730273883789778, - 0.06652579456567764, - 0.04354375600814819, - -0.04097859561443329, - 0.12280085682868958, - 0.0563124418258667, - 0.011998578906059265, - 0.016338754445314407, - -0.10847403109073639, - 0.10571916401386261, - 0.10303105413913727, - -0.018500104546546936, - 0.057639554142951965, - -0.03330636024475098, - 0.07022090256214142, - 0.09000542014837265, - -0.14976483583450317, - -0.06731857359409332, - 0.005179397761821747, - 0.004760426934808493, - 0.004492407664656639, - 0.10216490924358368, - -0.008764456026256084, - 0.03062225878238678, - 0.10736056417226791, - -0.09608791768550873, - -0.06707940995693207, - -0.01942978985607624, - 0.047624245285987854, - -0.09213035553693771, - 0.05182105302810669, - 0.06826537847518921, - -0.016363760456442833, - 0.014646435156464577, - 0.06341733783483505, - -0.013831235468387604, - 0.0006679337238892913, - 0.014714477583765984, - -0.057459622621536255, - 0.004620720632374287, - -0.040540874004364014, - -0.013093220070004463, - 0.05659019201993942, - 0.056231118738651276, - 0.03017984889447689, - 0.008781541138887405, - -0.04713290184736252, - -0.10730623453855515, - 0.0018080560257658362, - 0.039404671639204025, - 0.0640001893043518, - -0.004524265415966511, - -0.01980147510766983, - -0.040244586765766144, - -0.06377777457237244, - 0.019537638872861862, - -0.006887010298669338, - 0.08165401220321655, - -0.015925323590636253, - 0.011493921279907227, - 0.09520278871059418, - 0.0398494154214859, - -0.015489242970943451, - -0.059635013341903687, - -0.03367886692285538, - 0.024076364934444427, - 0.031787239015102386, - -0.07955163717269897, - -0.064188152551651, - -0.004629002884030342, - 0.033348675817251205, - -0.030268795788288116, - 0.048232655972242355, - 0.0365501344203949, - 0.017679031938314438, - 0.031582847237586975, - -0.06808843463659286, - 0.03319443389773369, - -0.09929189085960388, - -0.0706048309803009, - 0.010325675830245018, - -0.021829819306731224, - -0.01639660820364952, - 0.07677091658115387, - 0.019103065133094788, - 0.030340274795889854, - -0.03465960547327995, - -0.07381446659564972, - -0.07497461140155792, - 0.059479884803295135, - 0.05848969146609306, - 0.007035806775093079, - 0.04001577943563461, - 0.04349610209465027, - -0.036494385451078415, - 0.06861573457717896, - 0.06017628312110901, - 0.10490620136260986, - -0.018062766641378403, - 0.019025573506951332, - -0.06426830589771271, - 0.07456734776496887, - 0.08552327752113342, - -0.08499103784561157, - -0.09438055008649826, - -0.0479549877345562, - -0.06438026577234268, - 0.06781607121229172, - 0.0005342429503798485, - 0.000799510336946696, - 0.017691489309072495, - -0.024699386209249496, - -0.09493192285299301, - -0.0831979364156723, - 0.09308241307735443, - -0.03512897342443466, - -0.020412854850292206, - -0.06987360864877701, - 0.051389843225479126, - 0.07810716331005096, - 0.028827784582972527, - -9.47900116443634e-05, - -0.007626057602465153, - 0.03066258132457733, - -0.06585600972175598, - -0.008351843804121017, - 0.040980204939842224, - 0.024061432108283043, - -0.09204276651144028, - 0.010062674060463905, - -0.09098725020885468, - 0.07235553860664368, - -0.04125840216875076, - 0.16192816197872162, - -0.00015349453315138817, - -0.046393897384405136, - -0.09159310907125473, - 0.034498684108257294, - -0.029201602563261986, - 0.046501275151968, - 0.040973108261823654, - 0.05589176341891289, - 0.037237588316202164, - -0.06892435997724533, - 0.09393317997455597, - 0.02951010689139366, - -0.036253638565540314, - -0.05330682545900345, - -0.04663770645856857, - -0.04110775142908096, - 0.001878537004813552, - -0.03317738324403763, - -0.08862005174160004, - -0.0120218051597476, - 0.013715273700654507, - 0.0009218305349349976, - 0.07436086982488632, - 0.12232868373394012, - 0.05545676499605179, - -0.11029675602912903 - ] - }, - "p244_270.wav": { - "name": "p244", - "embedding": [ - 0.06799270212650299, - 0.06986050307750702, - -0.030308954417705536, - 0.009406200610101223, - -0.0280753206461668, - 0.04757925122976303, - -0.15357211232185364, - 0.07828021049499512, - -0.025264710187911987, - 0.14144983887672424, - -0.08151759207248688, - 0.08363526314496994, - -0.038718331605196, - -0.1377076953649521, - -0.035343438386917114, - 0.03952331840991974, - -0.038099486380815506, - -0.026263367384672165, - -0.03320247679948807, - -0.04013172537088394, - 0.035255067050457, - 0.04455157741904259, - 0.03481442481279373, - -0.02171032503247261, - 0.013106733560562134, - 0.05328827351331711, - -0.006691508926451206, - 0.004149415530264378, - -0.0027372678741812706, - -0.015064834617078304, - 0.015518597327172756, - 0.0787128284573555, - -0.025712989270687103, - 0.008137466385960579, - 0.027371030300855637, - 0.04111115634441376, - -0.00980415754020214, - -0.07554060220718384, - -0.002641502767801285, - 0.027434928342700005, - -0.04423069208860397, - 0.07521319389343262, - 0.05543341860175133, - -0.029544582590460777, - 0.013403094373643398, - -0.02985316514968872, - -0.022139674052596092, - -0.028378035873174667, - -0.08750086277723312, - 0.17022018134593964, - 0.049229517579078674, - 0.04327505826950073, - -0.08021430671215057, - -0.02661857381463051, - 0.10918998718261719, - 0.002991946181282401, - -0.08516161143779755, - -0.05540993809700012, - 0.04097442328929901, - 0.14431564509868622, - -0.03581167757511139, - -0.05663484334945679, - 0.014659020118415356, - 0.09168395400047302, - 0.02321115881204605, - 0.05371744930744171, - 0.10288208723068237, - 0.10380702465772629, - -0.004797391593456268, - 0.00024840733385644853, - 0.07075881958007812, - 0.06166936084628105, - 0.04630058631300926, - -0.030442573130130768, - 0.02644006535410881, - -0.02474067732691765, - -0.027147820219397545, - 0.013351775705814362, - -0.00498542096465826, - -0.05953351780772209, - -0.018255535513162613, - -0.022663993760943413, - 0.009124348871409893, - 0.04385858029127121, - -0.048377107828855515, - -0.00128183513879776, - 0.055021341890096664, - -0.04844118282198906, - 0.06293805688619614, - 0.05118151754140854, - 0.004495254717767239, - 0.017500076442956924, - -0.05158805102109909, - -0.08397918939590454, - 0.0215607937425375, - -1.3715277418668848e-05, - 0.029940873384475708, - 0.04640599340200424, - 0.04902661591768265, - -0.001838482916355133, - 0.09337493032217026, - 0.036085344851017, - 0.0014516152441501617, - -0.008137430064380169, - -0.08914171904325485, - 0.10762730240821838, - 0.11927849054336548, - -0.03658577427268028, - 0.030142251402139664, - -0.0354972742497921, - 0.031178509816527367, - 0.056456953287124634, - -0.10893867909908295, - -0.05645158514380455, - 0.04027913138270378, - 0.048129916191101074, - 0.03372490406036377, - 0.11904533207416534, - 0.0066388314589858055, - 0.006417814642190933, - 0.09890909492969513, - -0.06482607126235962, - -0.05654880031943321, - -0.03464934229850769, - 0.029620913788676262, - -0.06323816627264023, - 0.040416471660137177, - 0.05517037957906723, - 0.0026294346898794174, - -0.012145090848207474, - 0.06144228205084801, - 0.004542961250990629, - 0.001486417604610324, - -0.04767225310206413, - 0.0011693686246871948, - 0.058297790586948395, - -0.0051822843961417675, - 0.001652231439948082, - 0.06307755410671234, - 0.04204031452536583, - 0.060373857617378235, - 0.04696718603372574, - -0.02939853072166443, - -0.1203867718577385, - 0.017689043655991554, - 0.05398954078555107, - 0.045486174523830414, - -0.039891310036182404, - -0.02353554219007492, - -0.029192402958869934, - -0.06690873205661774, - 0.04063386097550392, - -0.023980434983968735, - 0.09611372649669647, - 0.019894331693649292, - -0.008288721553981304, - 0.11201837658882141, - -0.011443797498941422, - -0.0014377329498529434, - -0.029375141486525536, - 0.0017132697394117713, - 0.012996098026633263, - 0.037378232926130295, - -0.1013718992471695, - -0.06755703687667847, - -0.02031397819519043, - 0.03224779665470123, - 0.0060243732295930386, - 0.016036614775657654, - 0.061923276633024216, - -0.017473440617322922, - 0.03167106211185455, - -0.05162401497364044, - 0.014683408662676811, - -0.09121719002723694, - -0.040306106209754944, - 0.010868720710277557, - -0.061787452548742294, - 0.0035548019222915173, - 0.09469505399465561, - 0.0020755156874656677, - 0.021223535761237144, - -0.04330555722117424, - -0.08449256420135498, - -0.05020967125892639, - 0.05761520192027092, - 0.05676736682653427, - -0.023077700287103653, - 0.004592872224748135, - 0.06153615564107895, - 0.017525020986795425, - 0.019843533635139465, - 0.04900500923395157, - 0.10481980443000793, - -0.055756598711013794, - -0.015864495187997818, - -0.04481380432844162, - 0.08426442742347717, - 0.0744682177901268, - -0.07107919454574585, - -0.06658408045768738, - -0.06271475553512573, - -0.0548674538731575, - 0.015327002853155136, - -0.03906814754009247, - 0.007808073423802853, - 0.007038188632577658, - -0.03538782522082329, - -0.09278490394353867, - -0.10324453562498093, - 0.05112820118665695, - -0.02323496900498867, - 0.010151720605790615, - -0.07668624818325043, - 0.0360274463891983, - 0.044782306998968124, - 0.04083431512117386, - -0.021566664800047874, - 0.03244791179895401, - -0.00563589483499527, - -0.059588849544525146, - -0.0204447191208601, - 0.019399069249629974, - 0.027902822941541672, - -0.0801028311252594, - -0.027346324175596237, - -0.08761890977621078, - 0.08654701709747314, - -0.05193805322051048, - 0.10969868302345276, - 0.004548600409179926, - -0.03667440637946129, - -0.06438678503036499, - -0.005068215541541576, - -0.029014956206083298, - 0.05610468611121178, - 0.06325861811637878, - 0.04696780443191528, - 0.027549726888537407, - -0.05382007360458374, - 0.08028334379196167, - 0.06447622179985046, - -0.0007913423469290137, - -0.06454464048147202, - -0.00570499524474144, - -0.02104426920413971, - 0.026596155017614365, - -0.011489320546388626, - -0.04393615573644638, - 0.025307562202215195, - 0.011626522056758404, - 0.0023843436501920223, - 0.04302237555384636, - 0.07981114834547043, - 0.06109225004911423, - -0.08637422323226929 - ] - }, - "p244_173.wav": { - "name": "p244", - "embedding": [ - 0.07176820933818817, - 0.09407888352870941, - -0.011364780366420746, - 0.010159902274608612, - -0.016106361523270607, - 0.05601426213979721, - -0.15782994031906128, - 0.10752272605895996, - -0.01731758937239647, - 0.16062405705451965, - -0.0568208247423172, - 0.10075299441814423, - -0.006862226873636246, - -0.1627231240272522, - -0.005759446881711483, - 0.04793665558099747, - -0.022647885605692863, - -0.01614522375166416, - -0.012670285999774933, - -0.011533843353390694, - 0.0270843468606472, - 0.06354396045207977, - 0.02789982780814171, - -0.04641401022672653, - 0.04943964257836342, - 0.07072983682155609, - -0.026536909863352776, - 0.020545681938529015, - -0.03066398948431015, - -0.09755146503448486, - -0.028680959716439247, - 0.09456484019756317, - -0.0629541426897049, - 0.004870763048529625, - 0.010024232789874077, - 0.0037586414255201817, - -0.009080039337277412, - -0.07031209766864777, - 0.003934313543140888, - 0.006634276360273361, - -0.026572339236736298, - 0.07697838544845581, - 0.008321565575897694, - -0.028096474707126617, - 0.018405137583613396, - 0.008620363660156727, - 0.015106569975614548, - -0.046957701444625854, - -0.09293113648891449, - 0.1733725517988205, - 0.040017981082201004, - 0.018934788182377815, - -0.0762978121638298, - -0.06529507786035538, - 0.05791374295949936, - 0.011339535936713219, - -0.07870632410049438, - -0.026602882891893387, - 0.06393817067146301, - 0.12505125999450684, - -0.01607131026685238, - -0.06907400488853455, - 0.05594916269183159, - 0.09082278609275818, - 0.031827427446842194, - 0.06660838425159454, - 0.08085164427757263, - 0.08245068043470383, - -0.014189053326845169, - -0.0047857495956122875, - 0.023275600746273994, - 0.06424253433942795, - 0.06848644465208054, - -0.019990667700767517, - 0.022112617269158363, - -0.02770320326089859, - -0.03607051074504852, - -0.02559647522866726, - -0.015543723478913307, - -0.043046653270721436, - 0.010368452407419682, - -0.023759517818689346, - 0.0066072107292711735, - 0.047005683183670044, - -0.03279145061969757, - -0.00031907856464385986, - 0.06352050602436066, - -0.03349427133798599, - 0.0873803198337555, - 0.03147701919078827, - 0.047228965908288956, - 0.04499738663434982, - -0.0993172824382782, - -0.05194021761417389, - 0.0814802423119545, - 0.02768086828291416, - 0.021833667531609535, - 0.06721874326467514, - 0.06602063030004501, - -0.026171432808041573, - 0.11556895077228546, - 0.01782584935426712, - 0.006803395226597786, - -0.01679006777703762, - -0.0866253674030304, - 0.1195625513792038, - 0.10142633318901062, - -0.03202471882104874, - 0.05930221080780029, - -0.05675867572426796, - 0.03749794512987137, - 0.061748430132865906, - -0.1386668086051941, - -0.07783924788236618, - 0.01595931686460972, - -0.004411232192069292, - -0.0006495704874396324, - 0.12575292587280273, - 0.01999078318476677, - 0.029421869665384293, - 0.07984790951013565, - -0.12089603394269943, - -0.07428208738565445, - -0.014167513698339462, - 0.04148555174469948, - -0.13301032781600952, - 0.07904093712568283, - 0.07656114548444748, - -0.027148105204105377, - 0.017414215952157974, - 0.05377041548490524, - -0.007800941821187735, - 0.03367157652974129, - -0.041114598512649536, - -0.004928048234432936, - 0.0014044824056327343, - -0.03247660771012306, - -0.011709107086062431, - -0.007882753387093544, - 0.0020699799060821533, - 0.04860632121562958, - -0.009369758889079094, - -0.031571898609399796, - -0.1366378366947174, - 0.02385927364230156, - 0.04236344248056412, - 0.04399466887116432, - -0.026446310803294182, - -0.03849812597036362, - -0.029361609369516373, - -0.06658098101615906, - 0.01916542835533619, - -0.027384649962186813, - 0.049863725900650024, - 0.026535917073488235, - 0.0006802743300795555, - 0.1292160153388977, - 0.04050588980317116, - 0.008325567469000816, - -0.034439072012901306, - -0.0182051844894886, - 0.035081617534160614, - 0.03761845454573631, - -0.08179673552513123, - -0.07960256934165955, - -0.035053886473178864, - 0.0015208013355731964, - 0.00039042532444000244, - 0.07526734471321106, - 0.06694494932889938, - 0.02038998156785965, - 0.00393206812441349, - -0.07140673696994781, - 0.015561315231025219, - -0.07188624143600464, - -0.07797953486442566, - -0.0011919899843633175, - -0.038577593863010406, - -0.023005720227956772, - 0.11078164726495743, - 0.011829000897705555, - 0.030275991186499596, - -0.09112456440925598, - -0.03231711685657501, - -0.0775674432516098, - 0.03312600031495094, - 0.06938186287879944, - -0.027957189828157425, - -0.005439095199108124, - 0.03145615756511688, - -0.01234870683401823, - 0.04460148513317108, - 0.06083906441926956, - 0.10649219155311584, - -0.031135428696870804, - 0.01706313155591488, - -0.04707447439432144, - 0.10066907107830048, - 0.09728628396987915, - -0.0434102863073349, - -0.06789210438728333, - -0.027286015450954437, - -0.09110747277736664, - 0.024142339825630188, - -0.01407662034034729, - 0.010439066216349602, - 0.027954814955592155, - -0.0264646764844656, - -0.09735719859600067, - -0.10639109462499619, - 0.06820908188819885, - -0.03417264297604561, - -0.01120026409626007, - -0.09239445626735687, - 0.07127836346626282, - 0.05764802545309067, - 0.062376610934734344, - -0.02964300662279129, - -0.021027889102697372, - 0.01798599399626255, - -0.023972038179636, - 0.019715020433068275, - 0.055095501244068146, - 0.04365352541208267, - -0.10191469639539719, - 0.0012429035268723965, - -0.0725974589586258, - 0.06259524077177048, - -0.05908035486936569, - 0.12826167047023773, - 0.019626274704933167, - -0.055374495685100555, - -0.09822532534599304, - 0.0451180674135685, - -0.012566395103931427, - 0.038176268339157104, - 0.025728680193424225, - 0.03536828234791756, - 0.07543665915727615, - -0.08609627932310104, - 0.05570127069950104, - 0.056159213185310364, - 0.008486177772283554, - -0.07039356976747513, - -0.06544645130634308, - -0.027505137026309967, - 0.05889352411031723, - -0.014390192925930023, - -0.08508481085300446, - -0.002448371611535549, - 0.04183949902653694, - 0.04390355199575424, - 0.05432435870170593, - 0.11898042261600494, - 0.014156199991703033, - -0.1298334300518036 - ] - }, - "p244_212.wav": { - "name": "p244", - "embedding": [ - 0.04926248639822006, - 0.09347432851791382, - -0.02989881858229637, - 0.04287482425570488, - -0.07121097296476364, - 0.06113899499177933, - -0.12194943428039551, - 0.1443902850151062, - -0.026454035192728043, - 0.12350095808506012, - -0.06389691680669785, - 0.13769842684268951, - -0.010839363560080528, - -0.1748703420162201, - -0.009052792564034462, - 0.051553875207901, - -0.03032657504081726, - -0.027276592329144478, - -0.01762459985911846, - -0.02490421012043953, - 0.04523976519703865, - 0.026174617931246758, - 0.042886923998594284, - -0.0011535920202732086, - 0.02268734574317932, - 0.06813979893922806, - -0.008159923367202282, - 0.03383906930685043, - 0.012882075272500515, - -0.04250115901231766, - -0.05369354039430618, - 0.09711077809333801, - -0.04795306175947189, - 0.005942797288298607, - 0.04737791419029236, - -0.029083454981446266, - -0.016851384192705154, - -0.06789243221282959, - -0.015624778345227242, - -0.004724005237221718, - -0.03770575299859047, - 0.07108642160892487, - 0.03683258593082428, - -0.04691920056939125, - 0.040689773857593536, - 0.0017856033518910408, - -0.025633830577135086, - -0.022076554596424103, - -0.1124044805765152, - 0.1485075056552887, - 0.08334562182426453, - 0.004351007752120495, - -0.06874970346689224, - -0.04564416781067848, - 0.10296206921339035, - 0.011801138520240784, - -0.10092521458864212, - -0.02880946546792984, - 0.06590692698955536, - 0.14732694625854492, - -0.017298776656389236, - -0.01934986189007759, - 0.03992252051830292, - 0.12292594462633133, - 0.05581901967525482, - 0.08670341968536377, - 0.08431488275527954, - 0.12420819699764252, - -0.02458467148244381, - 0.036521416157484055, - 0.04772704094648361, - 0.08484551310539246, - 0.03571600466966629, - -0.013911524787545204, - 0.016172481700778008, - -0.01837928779423237, - -0.022812267765402794, - -0.011723371222615242, - -0.03292742371559143, - -0.041716281324625015, - -0.014236153103411198, - -0.0020793424919247627, - 0.022282516583800316, - 0.028689857572317123, - -0.03425309807062149, - 0.06377941370010376, - 0.05432802066206932, - -0.014670338481664658, - 0.05781891196966171, - 0.02322547324001789, - 0.0008584093884564936, - 0.06046289950609207, - -0.0935458093881607, - -0.09158241748809814, - 0.03851895034313202, - 0.009966236539185047, - 0.03802908957004547, - 0.09636756032705307, - 0.04850156977772713, - -0.015959028154611588, - 0.11254779249429703, - 0.06478337943553925, - -0.009102988056838512, - 0.024678101763129234, - -0.07216702401638031, - 0.13344532251358032, - 0.09953349828720093, - -0.028674017637968063, - 0.05954040586948395, - -0.05857591703534126, - 0.08252397179603577, - 0.0627819150686264, - -0.12963241338729858, - -0.059737276285886765, - 0.015851616859436035, - 0.010762259364128113, - -0.021799711510539055, - 0.12426159530878067, - 0.009573590941727161, - 0.05866051837801933, - 0.10245257616043091, - -0.09398536384105682, - -0.06916390359401703, - -0.03563554212450981, - 0.053915515542030334, - -0.0720360055565834, - 0.06783805042505264, - 0.05705127865076065, - -0.016505202278494835, - 0.008189246989786625, - 0.05618195980787277, - -0.018990276381373405, - 0.005063587799668312, - 0.04427889734506607, - -0.055357616394758224, - 0.021597588434815407, - -0.029596343636512756, - 0.007059850730001926, - 0.038379229605197906, - 0.018356427550315857, - 0.04641779139637947, - -0.017772115767002106, - 0.005433990154415369, - -0.10581168532371521, - 0.018909212201833725, - 0.041864145547151566, - 0.08023247122764587, - -0.00948785524815321, - -0.04590172320604324, - -0.027374034747481346, - -0.07832708954811096, - 0.009802371263504028, - -0.015804335474967957, - 0.05598200112581253, - -0.02208850346505642, - 0.006917305290699005, - 0.07315942645072937, - 0.038381580263376236, - -0.002510452875867486, - -0.053397759795188904, - -0.03993199020624161, - 0.026768989861011505, - 0.04826163500547409, - -0.0876753032207489, - -0.07765023410320282, - -0.01559979934245348, - 0.017758280038833618, - -0.043765634298324585, - 0.0477977991104126, - 0.044568829238414764, - 0.023309417068958282, - 0.022982459515333176, - -0.07431454956531525, - 0.014876702800393105, - -0.09874092042446136, - -0.06252795457839966, - -0.013873577117919922, - -0.010914936661720276, - -0.023025624454021454, - 0.07346211373806, - 0.028459902852773666, - 0.06103762984275818, - -0.012941684573888779, - -0.03182506188750267, - -0.0742461234331131, - 0.04373345524072647, - 0.04771711304783821, - -0.0023526393342763186, - 0.055207058787345886, - 0.06242801249027252, - -0.032313913106918335, - 0.03726121038198471, - 0.05519833415746689, - 0.08633619546890259, - -0.02889649197459221, - -0.0041061509400606155, - -0.08075399696826935, - 0.08854243159294128, - 0.11216777563095093, - -0.09398438781499863, - -0.08515109121799469, - -0.046981871128082275, - -0.07143368571996689, - 0.02817981131374836, - -0.04188070446252823, - -0.008412213064730167, - 0.024546276777982712, - -0.006018579937517643, - -0.11036016047000885, - -0.09961618483066559, - 0.09249331057071686, - -0.07802318036556244, - -0.0007111175800673664, - -0.088178351521492, - 0.04190279543399811, - 0.10098787397146225, - 0.012273182161152363, - -0.05088677257299423, - -0.013336263597011566, - 0.049407146871089935, - -0.022840479388833046, - 0.01786416582763195, - 0.05521143227815628, - 0.058342739939689636, - -0.11871907860040665, - -0.0011970819905400276, - -0.05556679144501686, - 0.037498194724321365, - -0.05119210481643677, - 0.15708871185779572, - 0.021797113120555878, - -0.042812660336494446, - -0.08902624249458313, - 0.06639361381530762, - 2.842256799340248e-05, - 0.038995031267404556, - 0.03430986404418945, - 0.057846926152706146, - 0.015145277604460716, - -0.10340934246778488, - 0.1268310844898224, - 0.02518150396645069, - -0.03879963606595993, - -0.08295939862728119, - -0.02969885803759098, - -0.03879639133810997, - 0.03559086471796036, - 0.018966900184750557, - -0.08289770036935806, - -0.036304399371147156, - 0.02229735255241394, - -0.0009657228365540504, - 0.06664615869522095, - 0.14926570653915405, - 0.06402461975812912, - -0.10259199142456055 - ] - }, - "p244_297.wav": { - "name": "p244", - "embedding": [ - 0.07629692554473877, - 0.019971350207924843, - -0.03802793100476265, - -0.006920741870999336, - -0.012514205649495125, - 0.008400335907936096, - -0.1661592721939087, - 0.05450918525457382, - -0.005334441550076008, - 0.1383333057165146, - -0.04782237857580185, - 0.09122902154922485, - 0.05695922300219536, - -0.11926629394292831, - -0.026478007435798645, - -0.0032569197937846184, - -0.0037452802062034607, - -0.01487928256392479, - -0.03494531288743019, - -0.03976662829518318, - 0.018306411802768707, - 0.0729287788271904, - 0.018423713743686676, - -0.02867380529642105, - 0.022599918767809868, - 0.03466223552823067, - 0.016785111278295517, - 0.03369872644543648, - -0.012988896109163761, - -0.0051640113815665245, - 0.03835226222872734, - 0.09454752504825592, - -0.03953073173761368, - -0.015669522807002068, - 0.0002562357112765312, - -0.0037231799215078354, - 0.010481055825948715, - -0.06576351821422577, - -0.031258899718523026, - 0.060968827456235886, - -0.026809804141521454, - 0.08423973619937897, - 0.07316368818283081, - 0.03806396946310997, - -0.015905175358057022, - 0.007131893187761307, - -0.015634985640645027, - -0.04342108592391014, - -0.07481781393289566, - 0.17867104709148407, - 0.059898246079683304, - 0.01981240138411522, - -0.08707676827907562, - -0.014873607084155083, - 0.05679138004779816, - -0.020422862842679024, - -0.042762722820043564, - -0.03297768533229828, - 0.023651596158742905, - 0.11516857147216797, - -0.011122106574475765, - -0.061041586101055145, - 0.03531097620725632, - 0.0985541045665741, - 0.026169762015342712, - -0.0008743098005652428, - 0.10756926238536835, - 0.09035806357860565, - -0.022079408168792725, - 0.0003854893147945404, - 0.027243316173553467, - 0.04686136543750763, - 0.03756828233599663, - -0.057963777333498, - 0.0463244803249836, - 0.017470043152570724, - -0.002822326496243477, - -0.009697090834379196, - -0.0333847813308239, - -0.030203914269804955, - 0.029083535075187683, - -0.007038524374365807, - 0.014345266856253147, - 0.10834480077028275, - -0.12180013209581375, - 0.0009901653975248337, - 0.02897222340106964, - -0.039978988468647, - 0.06123960018157959, - 0.04182210564613342, - 0.05178956314921379, - 0.0012031756341457367, - -0.04275290668010712, - -0.041629284620285034, - 0.04267159476876259, - 0.001502116210758686, - 0.026989420875906944, - 0.03683321550488472, - 0.03040151484310627, - -0.02361932024359703, - 0.0913555696606636, - 0.0122599545866251, - -0.04111108183860779, - -0.03137291222810745, - -0.05846916139125824, - 0.09025005996227264, - 0.10722416639328003, - -0.04756893217563629, - 0.010950114578008652, - -0.00423665065318346, - -0.0002347724512219429, - 0.003550526686012745, - -0.10134103894233704, - -0.062464095652103424, - 0.07700498402118683, - 0.08343572914600372, - 0.04594942554831505, - 0.12246283888816833, - 0.021112067624926567, - 0.045787788927555084, - 0.05157501623034477, - -0.00040265917778015137, - -0.03345586359500885, - -0.01539759524166584, - 0.028891535475850105, - -0.07772502303123474, - 0.029788680374622345, - 0.0491885244846344, - -0.0067960843443870544, - -0.049767691642045975, - 0.08093934506177902, - 0.007673865184187889, - 0.01841999962925911, - -0.0654219314455986, - 0.06309318542480469, - 0.09555287659168243, - 0.01710500940680504, - 0.01704421639442444, - 0.003249748144298792, - 0.008811423555016518, - 0.055022697895765305, - 0.054727066308259964, - -0.054593898355960846, - -0.14069455862045288, - 0.03490566834807396, - 0.030424585565924644, - 0.04977791756391525, - -0.06496742367744446, - -0.047632452100515366, - -0.05405411124229431, - -0.002910137176513672, - 0.005666239187121391, - -0.01811882108449936, - 0.04784992337226868, - 0.03455706685781479, - -0.039973221719264984, - 0.1071385070681572, - -0.06219460070133209, - -0.004876335151493549, - 0.02228272147476673, - 0.0539839044213295, - -0.008913730271160603, - 0.03449740260839462, - -0.036798641085624695, - -0.04819076135754585, - 0.01632244884967804, - 0.039813846349716187, - 0.030323179438710213, - 0.01755298301577568, - 0.04531760513782501, - -0.04706723988056183, - 0.03339900076389313, - -0.07254259288311005, - -0.01250685378909111, - -0.06893104314804077, - -0.0036847665905952454, - 0.025534726679325104, - -0.03282387554645538, - -0.04400666430592537, - 0.06764364242553711, - 0.02060113474726677, - 0.05287296324968338, - -0.05018552392721176, - -0.07889688014984131, - -0.02753717079758644, - 0.025382716208696365, - 0.08142886310815811, - -0.06796963512897491, - -0.005324011668562889, - 0.0546257346868515, - 0.034353598952293396, - 0.02660982683300972, - 0.07399705797433853, - 0.03870521858334541, - -0.04743567481637001, - -0.025365836918354034, - -0.012146467342972755, - 0.11036759614944458, - 0.01119477953761816, - -0.0339694581925869, - -0.03719257563352585, - -0.03000205010175705, - -0.06114179641008377, - 0.010866746306419373, - 0.04313436895608902, - 0.04434502124786377, - 0.062102459371089935, - -0.016348928213119507, - -0.08330464363098145, - -0.052538808435201645, - 0.011660106480121613, - -0.0668366402387619, - 2.127978950738907e-05, - -0.04786863550543785, - 0.01919173076748848, - 0.05848894268274307, - 0.06234728917479515, - -0.0020749401301145554, - -0.0330393947660923, - -0.032533567398786545, - -0.07975277304649353, - -0.027455519884824753, - 0.019928976893424988, - 0.03278620168566704, - -0.08646176755428314, - -0.016873378306627274, - -0.09054318070411682, - 0.06774342060089111, - -0.06268683075904846, - 0.033310286700725555, - 0.048422921448946, - -0.04793819412589073, - -0.06293939054012299, - -0.034452885389328, - -0.030322391539812088, - 0.060948535799980164, - 0.057113468647003174, - 0.02951253205537796, - 0.04063909128308296, - -0.06381344050168991, - 0.053798358887434006, - 0.09327006340026855, - -0.011326191015541553, - -0.0931345596909523, - 8.282624185085297e-05, - 0.024634400382637978, - 0.03995777666568756, - 0.062418267130851746, - -0.023690296337008476, - 0.017248474061489105, - 0.03683752566576004, - -0.05682305991649628, - 0.03897673264145851, - 0.05409426987171173, - 0.05446132645010948, - -0.12581440806388855 - ] - }, - "p244_208.wav": { - "name": "p244", - "embedding": [ - 0.05125076323747635, - 0.11419150233268738, - -0.025501761585474014, - 0.026101000607013702, - -0.008544359356164932, - 0.06391303241252899, - -0.11612982302904129, - 0.08943429589271545, - -0.051306888461112976, - 0.12412339448928833, - -0.0921008288860321, - 0.09335722029209137, - -0.0444030836224556, - -0.11974431574344635, - -0.03559380769729614, - 0.03892037272453308, - -0.024653399363160133, - -0.009654968976974487, - -0.027000732719898224, - 0.013440657407045364, - 0.01123119704425335, - 0.0397481694817543, - 0.027141539379954338, - -0.03496481478214264, - 0.057529255747795105, - 0.051261916756629944, - 0.014046593569219112, - 0.05508347228169441, - 0.009758812375366688, - -0.03700024634599686, - -0.016322080045938492, - 0.0984763503074646, - -0.058843642473220825, - 0.012739856727421284, - 0.03934529796242714, - 0.04367176815867424, - 0.0019126555416733027, - -0.06717853993177414, - -0.00011252891272306442, - -0.0013750223442912102, - -0.04891732707619667, - 0.0629829615354538, - 0.01425075065344572, - -0.04114707559347153, - 0.004804631229490042, - 0.02511514350771904, - 0.024984922260046005, - -0.05233056843280792, - -0.09256522357463837, - 0.13978534936904907, - 0.007139792665839195, - 0.029415536671876907, - -0.07998111099004745, - -0.08232612907886505, - 0.08668428659439087, - 0.009077733382582664, - -0.06827464699745178, - -0.03016751818358898, - 0.0566578209400177, - 0.1562870293855667, - -0.021291103214025497, - -0.03526361286640167, - 0.021431736648082733, - 0.07608122378587723, - 0.06751179695129395, - 0.08654499053955078, - 0.07225680351257324, - 0.08797501027584076, - 0.03173702582716942, - 0.012589674443006516, - 0.06281158328056335, - 0.05196135491132736, - 0.04360462725162506, - -0.0199274979531765, - -0.00046735070645809174, - -0.0003736445214599371, - -0.04351101815700531, - 0.02821057289838791, - -0.0018056074623018503, - -0.05079984664916992, - -0.002817056141793728, - 0.004377659875899553, - 0.001524798572063446, - 0.028849530965089798, - -0.027030812576413155, - 0.037783533334732056, - 0.04753422737121582, - -0.0519958958029747, - 0.07566116005182266, - 0.0326567068696022, - -0.010243198834359646, - 0.03281642124056816, - -0.07016395032405853, - -0.08529186993837357, - 0.009472963400185108, - -0.0013765832409262657, - 0.001708323135972023, - 0.07339968532323837, - 0.05608911067247391, - -0.006538934540003538, - 0.09834583103656769, - 0.016034189611673355, - 0.03622647747397423, - 0.01470652874559164, - -0.0769614726305008, - 0.10847531259059906, - 0.07698879390954971, - -0.028939982876181602, - 0.032963041216135025, - -0.02088911645114422, - 0.027025917544960976, - 0.09028632938861847, - -0.13116732239723206, - -0.08939984440803528, - 0.039894949644804, - 0.004922441206872463, - 0.005088046193122864, - 0.08056143671274185, - -0.0014945559669286013, - -0.0068378872238099575, - 0.09679040312767029, - -0.1027953177690506, - -0.07012687623500824, - -0.021615853533148766, - 0.05138783901929855, - -0.054190538823604584, - 0.039423245936632156, - 0.06339075416326523, - -0.013208101503551006, - -0.04085865616798401, - 0.06894146651029587, - 0.008153419941663742, - 0.020064057782292366, - 9.135343134403229e-05, - -0.014587385579943657, - 0.03393830358982086, - -0.03440434858202934, - -0.009682769887149334, - 0.04648035764694214, - 0.03619641438126564, - 0.051738858222961426, - 0.004564904607832432, - -0.034195683896541595, - -0.11797688156366348, - 0.010923285037279129, - 0.08597961813211441, - 0.05481487140059471, - -0.03411075472831726, - -0.03295685723423958, - -0.03991026058793068, - -0.05341802537441254, - 0.03717910498380661, - 0.014164534397423267, - 0.09592233598232269, - 0.005031134933233261, - -0.004775440786033869, - 0.13432247936725616, - -0.005793027579784393, - 0.00704911258071661, - -0.03959937393665314, - 0.0026470068842172623, - 0.02113662101328373, - 0.03298279270529747, - -0.058486148715019226, - -0.10803937166929245, - -0.007899343967437744, - 0.00174621120095253, - -0.011188600212335587, - 0.05900624021887779, - 0.03674301132559776, - 0.01179041713476181, - 0.028104089200496674, - -0.0358993224799633, - -0.010864193551242352, - -0.09579557180404663, - -0.04460500553250313, - -0.020270323380827904, - -0.032305702567100525, - -0.011009836569428444, - 0.09381204843521118, - 0.03437057510018349, - 0.032235510647296906, - -0.0011680247262120247, - -0.07181525230407715, - -0.05891504883766174, - 0.05968004837632179, - 0.06921112537384033, - 9.620329365134239e-05, - 0.01788141205906868, - 0.04756581783294678, - -0.002611130475997925, - 0.02369558997452259, - 0.07196229696273804, - 0.07695899158716202, - -0.01221809908747673, - -0.03209751099348068, - -0.058739446103572845, - 0.08297953754663467, - 0.05804389715194702, - -0.11153349280357361, - -0.06065557897090912, - -0.0368708074092865, - -0.05111505836248398, - 0.016518335789442062, - -0.02241358533501625, - 0.05150509998202324, - 0.003765938337892294, - -0.04792702943086624, - -0.07965269684791565, - -0.12038996815681458, - 0.06834189593791962, - -0.037262238562107086, - -0.028588397428393364, - -0.06584685295820236, - 0.028936758637428284, - 0.031042225658893585, - 0.05225653946399689, - 0.0010111918672919273, - 0.024980131536722183, - 0.03724896162748337, - -0.06834117323160172, - -0.020135698840022087, - 0.07245460152626038, - -0.001701096072793007, - -0.07039386034011841, - 0.020550265908241272, - -0.07188960909843445, - 0.10665726661682129, - -0.06960248947143555, - 0.15118984878063202, - -0.01805129647254944, - -0.07085611671209335, - -0.10296998918056488, - 0.017364734783768654, - -0.034966666251420975, - 0.034675318747758865, - 0.021118618547916412, - 0.046076975762844086, - 0.021706534549593925, - -0.04627785086631775, - 0.09942415356636047, - 0.03874754533171654, - -0.004360751248896122, - -0.06609224528074265, - -0.089366115629673, - -0.04460126906633377, - 0.033301226794719696, - -0.0055572260171175, - -0.05169789493083954, - 0.013971950858831406, - 0.016396237537264824, - 0.00987611897289753, - 0.04228082299232483, - 0.1234031617641449, - 0.060734257102012634, - -0.09420932829380035 - ] - }, - "p244_126.wav": { - "name": "p244", - "embedding": [ - 0.060276102274656296, - 0.10743342339992523, - 0.022987917065620422, - -0.021033264696598053, - -0.021439027041196823, - 0.07483284175395966, - -0.06769314408302307, - 0.09959492087364197, - -0.003704679664224386, - 0.06015157699584961, - -0.10082963109016418, - 0.08416327834129333, - -0.0033188601955771446, - -0.13983041048049927, - -0.02683335356414318, - 0.03296198695898056, - -0.039197247475385666, - 0.011853891424834728, - -0.028025781735777855, - -0.03097955510020256, - 0.0131643395870924, - 0.017187735065817833, - 0.055144302546978, - -0.004673599265515804, - 0.03625783324241638, - 0.04145725816488266, - 0.01909453794360161, - 0.0378464050590992, - 0.01077343337237835, - -0.036670975387096405, - -0.044595759361982346, - 0.07184606790542603, - -0.037301287055015564, - -0.006060857325792313, - 0.05372486636042595, - -0.021383030340075493, - 0.04996330291032791, - -0.08223645389080048, - -0.04609699174761772, - 0.033471666276454926, - -0.04277456924319267, - 0.06639231741428375, - 0.0306229367852211, - -0.006403905339539051, - 0.03139862045645714, - 0.04951004683971405, - -0.0010821273317560554, - -0.04407871887087822, - -0.07879745960235596, - 0.13030210137367249, - 0.03422272205352783, - 0.016165826469659805, - -0.0627593994140625, - -0.031019166111946106, - 0.08138328790664673, - -0.028556479141116142, - -0.04194782301783562, - 0.008330968208611012, - 0.051011376082897186, - 0.07240282744169235, - 0.010012256912887096, - -0.03621017187833786, - 0.03859952837228775, - 0.07630112022161484, - 0.012344986200332642, - 0.038448430597782135, - 0.09056162089109421, - 0.07001557946205139, - -0.009482350200414658, - 0.013522451743483543, - 0.04224702715873718, - 0.046314649283885956, - 0.03834046423435211, - -0.02975088357925415, - 0.03224742412567139, - -0.0036381403915584087, - -0.021601876243948936, - -0.006208098493516445, - -0.019239753484725952, - -0.006544872187077999, - 0.03382453694939613, - 0.02823467180132866, - 0.006495587527751923, - 0.010953640565276146, - -0.04835706949234009, - 0.04895298182964325, - -0.016508445143699646, - 0.07658147811889648, - 0.07289744913578033, - 0.027002310380339622, - 0.01608724519610405, - 0.029596593230962753, - -0.05557520315051079, - -0.08576392382383347, - 0.03198881819844246, - 0.016156647354364395, - -0.010536057874560356, - 0.035520993173122406, - 0.04566342383623123, - -0.031579237431287766, - 0.1086253970861435, - 0.03952968120574951, - -0.01291958149522543, - 0.01971152424812317, - -0.07607865333557129, - 0.06416411697864532, - 0.07246428728103638, - -0.01685943268239498, - 0.050458960235118866, - -0.01639564149081707, - 0.06503182649612427, - 0.06319156289100647, - -0.10356451570987701, - -0.052363067865371704, - 0.005080516450107098, - 0.01879105716943741, - 0.03251377493143082, - 0.08255527913570404, - -0.03586138039827347, - 0.03309435397386551, - 0.06900020688772202, - -0.049934666603803635, - -0.02494620904326439, - 0.015644891187548637, - 0.007722519338130951, - -0.02038024365901947, - 0.02241111546754837, - 0.03562706708908081, - 0.017094654962420464, - -0.04560891538858414, - 0.043694984167814255, - 0.0060726492665708065, - 0.005004418548196554, - -0.035136040300130844, - 0.007139201276004314, - -0.005530822090804577, - -0.020593177527189255, - -0.028182528913021088, - 0.01247173361480236, - 0.05715559050440788, - 0.006377595476806164, - 0.037852250039577484, - -0.043610453605651855, - -0.09432698786258698, - -0.0010650096228346229, - -0.009283925406634808, - 0.024017006158828735, - 0.02309003286063671, - -0.041179824620485306, - -0.052725329995155334, - 0.01539422757923603, - -0.0031656306236982346, - -0.004998265765607357, - 0.02614317461848259, - 0.04530863091349602, - -0.01980159431695938, - 0.06348380446434021, - 0.002737609203904867, - 0.007668794598430395, - -0.02342359535396099, - -0.04502991959452629, - 0.018195219337940216, - 0.03136162459850311, - -0.010419152677059174, - -0.07989799976348877, - -0.006481997203081846, - -0.03328252583742142, - -0.013683601282536983, - 0.03470136970281601, - 0.05236878618597984, - -0.0052366117015480995, - -0.00716061657294631, - -0.07312414050102234, - 0.0032258755527436733, - -0.07030171900987625, - -0.06507742404937744, - 0.025859151035547256, - 0.040030330419540405, - -0.017705120146274567, - 0.07526713609695435, - 0.032592982053756714, - 0.04028020054101944, - -0.03211855888366699, - -0.043448612093925476, - -0.0046804845333099365, - 0.048828691244125366, - 0.05837429687380791, - 0.01816587708890438, - 0.04255989193916321, - 0.031063003465533257, - -0.009992222301661968, - 0.06856922805309296, - 0.050552479922771454, - 0.04652805253863335, - -0.009125716984272003, - 0.009852642193436623, - 0.012126500718295574, - 0.06528227031230927, - 0.01505771093070507, - -0.0673830509185791, - -0.05860796198248863, - -0.0058288476429879665, - -0.04162576422095299, - 0.031100472435355186, - 0.03190494328737259, - 0.02960197627544403, - 0.026081394404172897, - -0.0081310560926795, - -0.04280052334070206, - -0.07205747812986374, - 0.028458010405302048, - -0.04414428770542145, - -0.026520688086748123, - -0.03470790013670921, - 0.051165830343961716, - 0.09821806848049164, - -0.006167824380099773, - -0.0010318731656298041, - -0.006127180065959692, - 0.0061864531598985195, - -0.012101506814360619, - -0.04184962809085846, - -0.0015382766723632812, - 0.03160073608160019, - -0.06789115071296692, - 0.03475356101989746, - -0.07483793795108795, - 0.05938262864947319, - -0.003016571281477809, - 0.0904371440410614, - 0.03648079186677933, - -0.02464001625776291, - -0.07144004106521606, - 0.025891322642564774, - -0.009742679074406624, - 0.03344042971730232, - 0.000156499445438385, - 0.014185163192451, - 0.02812061831355095, - -0.06517656147480011, - 0.06944935023784637, - 0.03066737949848175, - -0.07193551957607269, - -0.06680554151535034, - -0.009874850511550903, - -0.030184758827090263, - 0.0028842329047620296, - 0.0014550735941156745, - -0.053957514464855194, - -0.008624620735645294, - 0.023186035454273224, - 0.01699202135205269, - 0.0342695377767086, - 0.0812079906463623, - 0.014652922749519348, - -0.05705541372299194 - ] - }, - "p244_343.wav": { - "name": "p244", - "embedding": [ - 0.04048285260796547, - 0.050855204463005066, - -0.04111466184258461, - -0.01708024926483631, - -0.045686352998018265, - 0.041656494140625, - -0.1261962652206421, - 0.07455097138881683, - -0.005745976231992245, - 0.15562069416046143, - -0.02061404287815094, - 0.11013163626194, - 0.007303598336875439, - -0.10282115638256073, - 0.018437756225466728, - 0.024569332599639893, - -0.02578464150428772, - -0.004576869308948517, - -0.01225886307656765, - -0.07069813460111618, - 0.028024721890687943, - 0.030405886471271515, - 0.02746352180838585, - -0.06279630959033966, - 0.01839635893702507, - 0.06060687080025673, - -0.013895709998905659, - -0.004747550003230572, - -0.010169142857193947, - -0.07565844058990479, - -0.01652393490076065, - 0.08838427066802979, - -0.04680223390460014, - -0.016897987574338913, - 0.01990644633769989, - -0.017104018479585648, - -0.026446189731359482, - -0.03877663612365723, - 0.01733200065791607, - 0.04610736668109894, - -0.043801404535770416, - 0.08983806520700455, - 0.020851127803325653, - -0.013959072530269623, - 0.029988856986165047, - -0.05556454882025719, - -0.058505598455667496, - 0.0375538133084774, - -0.04095020890235901, - 0.11656245589256287, - 0.08041796088218689, - 0.0031306305900216103, - -0.06218336150050163, - -0.004902448505163193, - 0.057975783944129944, - 0.00917382724583149, - -0.10093078762292862, - -0.019349712878465652, - -0.009282464161515236, - 0.09114935994148254, - -0.001632831059396267, - -0.05908629298210144, - 0.031125348061323166, - 0.08755418658256531, - 0.02008543536067009, - 0.02993987500667572, - 0.09234490990638733, - 0.08019337058067322, - -0.014564476907253265, - 0.008977140299975872, - 0.03931872546672821, - 0.08820055425167084, - 0.05184897407889366, - -0.02005847916007042, - 0.04542212188243866, - -0.030288120731711388, - -0.012041673064231873, - -0.058913350105285645, - -0.010794056579470634, - -0.05675097927451134, - -0.053684256970882416, - -0.026349803432822227, - 0.010762011632323265, - 0.089112788438797, - -0.02302808128297329, - -0.027715425938367844, - 0.06155753880739212, - -0.05336911231279373, - 0.03030720353126526, - 0.047166936099529266, - 0.010137850418686867, - 0.011287245899438858, - -0.08667226880788803, - -0.05202798545360565, - 0.02901623025536537, - -0.010442557744681835, - 0.05318186804652214, - 0.05278075486421585, - 0.03072032891213894, - 0.007445366121828556, - 0.07861006259918213, - 0.06375391036272049, - 0.0005516544915735722, - -0.026715759187936783, - -0.06337056308984756, - 0.09740497171878815, - 0.10956341028213501, - -0.04964444041252136, - 0.0407428964972496, - -0.0003967657685279846, - 0.039645757526159286, - -0.01401291973888874, - -0.10797692835330963, - -0.03048950433731079, - 0.0006152484565973282, - 0.050987523049116135, - 0.030641769990324974, - 0.10672831535339355, - 0.029062816873192787, - 0.0520622543990612, - 0.07446759194135666, - -0.028189940378069878, - -0.05075071007013321, - -0.05501377955079079, - 0.03480115532875061, - -0.09697028249502182, - 0.06871119141578674, - 0.03955377638339996, - 0.027193769812583923, - 0.005783365108072758, - 0.07503387331962585, - 0.01007310301065445, - 0.009224120527505875, - -0.04262863099575043, - 0.006299678236246109, - 0.025967424735426903, - -0.006247186101973057, - 0.043900266289711, - 0.05639313906431198, - -0.008831813000142574, - 0.10313312709331512, - 0.033233642578125, - 0.010255120694637299, - -0.09374222904443741, - 0.04032016545534134, - 0.008093034848570824, - 0.04000284895300865, - -0.0517435185611248, - -0.032055214047431946, - 0.02673550881445408, - -0.0746106207370758, - -0.0048705581575632095, - -0.018290644511580467, - 0.061789728701114655, - 0.013421861454844475, - -0.016090987250208855, - 0.08622059971094131, - 0.015592485666275024, - -0.007235540077090263, - 0.018917901441454887, - -0.005323478952050209, - -0.0019005760550498962, - 0.07276856899261475, - -0.13172996044158936, - -0.06415256857872009, - -0.002425233833491802, - 0.01210082694888115, - 0.027545087039470673, - 0.02959677204489708, - 0.10955505073070526, - -0.03130568936467171, - 0.04264047369360924, - -0.011558061465620995, - -0.0036917943507432938, - -0.05989084765315056, - -0.05101752281188965, - -0.021976713091135025, - -0.08806974440813065, - -0.058260489255189896, - 0.0745333731174469, - -0.025795953348279, - 0.049068886786699295, - -0.052847445011138916, - -0.03229995444417, - -0.05956869199872017, - 0.022989457473158836, - 0.026988033205270767, - -0.04920592159032822, - -0.01300679799169302, - 0.10437968373298645, - 0.023749232292175293, - -0.02082212083041668, - 0.04441311955451965, - 0.07953150570392609, - -0.07751595228910446, - 0.0014803651720285416, - -0.0711224228143692, - 0.08944322168827057, - 0.09335390478372574, - -0.025321798399090767, - -0.06632337719202042, - -0.07104109972715378, - -0.06386034190654755, - 0.04492798447608948, - -0.04763428866863251, - -0.01699564978480339, - 0.032989297062158585, - -0.038258809596300125, - -0.05784458667039871, - -0.0793478935956955, - 0.08160287886857986, - -0.05243944376707077, - 0.0033914465457201004, - -0.052534617483615875, - 0.015824686735868454, - 0.02074095606803894, - 0.06124778836965561, - -0.0765281394124031, - 0.051489442586898804, - 0.033592574298381805, - -0.031927138566970825, - 0.021895835176110268, - 0.0362342894077301, - 0.03668513149023056, - -0.0640970841050148, - -0.05757332593202591, - -0.055847086012363434, - 0.037555575370788574, - -0.060103073716163635, - 0.05226214975118637, - 0.022088661789894104, - -0.036174941807985306, - -0.051780179142951965, - -0.00021217763423919678, - -0.016391150653362274, - 0.025964174419641495, - 0.09227732568979263, - 0.08194012194871902, - 0.03681248053908348, - -0.05572652444243431, - 0.05870746076107025, - 0.053479552268981934, - 0.031480200588703156, - -0.052254222333431244, - 0.017325764521956444, - -0.013203416019678116, - 0.04549732059240341, - 0.03555392101407051, - -0.06641463190317154, - 0.062012121081352234, - 0.003890520893037319, - 0.003987109288573265, - 0.028409229591488838, - 0.036373719573020935, - 0.04860718920826912, - -0.08962382376194 - ] - }, - "p244_072.wav": { - "name": "p244", - "embedding": [ - 0.05091477558016777, - 0.11082984507083893, - 0.051068346947431564, - -6.896443665027618e-05, - 0.004510428756475449, - 0.02594395913183689, - -0.04000703990459442, - 0.08396007865667343, - 0.05519246309995651, - 0.03307126834988594, - -0.09776068478822708, - 0.0557841882109642, - -0.061339594423770905, - -0.10850565135478973, - -0.00012551993131637573, - 0.030610868707299232, - -0.0343116819858551, - 0.0137474425137043, - -0.04527265951037407, - -0.0024438651744276285, - -0.024632621556520462, - -0.026822201907634735, - 0.02566588670015335, - 0.01287630945444107, - -0.020881423726677895, - 0.012098722159862518, - -0.032319575548172, - 0.012072020210325718, - -0.00538181746378541, - -0.008382931351661682, - 0.013652271591126919, - 0.04279010370373726, - -0.012426517903804779, - 0.010377652943134308, - 0.020282883197069168, - -0.02840505540370941, - 0.003805076703429222, - -0.03410978615283966, - -0.06279856711626053, - 0.04059663787484169, - -0.050617292523384094, - 0.04934890940785408, - 0.040801938623189926, - -0.04486571252346039, - 0.07830934226512909, - 0.04147917032241821, - -0.05824130028486252, - -0.005142692476511002, - -0.10169768333435059, - 0.09046393632888794, - 0.01140446774661541, - 0.012037391774356365, - -0.06532743573188782, - 0.013636242598295212, - 0.06930286437273026, - -0.040415309369564056, - -0.044998809695243835, - -0.028575116768479347, - 0.04460948333144188, - 0.024814743548631668, - 0.01968178153038025, - -0.020989829674363136, - -0.023300884291529655, - 0.02660304680466652, - 0.06825980544090271, - 0.02043815143406391, - 0.06954092532396317, - 0.0983593612909317, - -0.05290396884083748, - 0.028369782492518425, - 0.032488152384757996, - -0.0331563875079155, - 0.052240923047065735, - 0.002033014316111803, - -0.00991674792021513, - -0.015759840607643127, - 0.021839089691638947, - -0.021720899268984795, - 0.011581401340663433, - -0.0016735438257455826, - 0.0380132682621479, - 0.0005111955106258392, - 0.014836706221103668, - 0.026892144232988358, - -0.03513069450855255, - -0.009438976645469666, - 0.055736325681209564, - 0.060582391917705536, - 0.06524187326431274, - 0.05387242138385773, - -0.002449044259265065, - 0.07538674771785736, - -0.058331429958343506, - -0.07883276045322418, - -0.013998386450111866, - -0.024245578795671463, - 0.010735786519944668, - 0.012819748371839523, - 0.0171203650534153, - -0.0027646017260849476, - 0.08516664803028107, - 0.0024237781763076782, - 0.0030618617311120033, - 0.01611291989684105, - -0.07569067180156708, - 0.014593832194805145, - 0.03155166283249855, - -0.021580228582024574, - 0.04565523564815521, - 0.038734547793865204, - 0.05454707145690918, - 0.05893401801586151, - -0.026516977697610855, - 0.01660340465605259, - 0.010513239540159702, - 0.041991882026195526, - 0.020761560648679733, - 0.09022515267133713, - 0.00021610985277220607, - 0.03162631392478943, - 0.11191713809967041, - -0.05030633881688118, - 0.03419942408800125, - 0.0578744001686573, - -0.014067539945244789, - -0.007369965314865112, - 0.04264577478170395, - 0.007035624235868454, - 0.003830372355878353, - -0.009351001121103764, - 0.043671220541000366, - 0.029724854975938797, - -0.001637422014027834, - -0.06448015570640564, - 0.013684873469173908, - 0.016040632501244545, - 0.0004542004317045212, - -0.0029164364095777273, - 0.017174653708934784, - 0.05282069742679596, - -0.009367251768708229, - 0.048460058867931366, - -0.04815210774540901, - -0.03313309699296951, - 0.027842078357934952, - -0.005812202580273151, - 0.02107108384370804, - 0.04077579826116562, - -0.016027728095650673, - -0.059943415224552155, - 0.02154986746609211, - 0.05715598538517952, - -0.020085208117961884, - 0.051889996975660324, - 0.05069435387849808, - -0.014212406240403652, - 0.05441562086343765, - 0.014320979826152325, - 0.03053002804517746, - -0.054683975875377655, - -0.08944999426603317, - -0.023147616535425186, - 0.040887556970119476, - -0.06970347464084625, - -0.014076425693929195, - -0.02496548369526863, - -0.022463548928499222, - 0.018935494124889374, - 0.0006937161087989807, - 0.0747917890548706, - -0.030357692390680313, - -0.010939407162368298, - -0.050109103322029114, - 0.024446573108434677, - -0.005866717547178268, - -0.11105966567993164, - 0.051256075501441956, - 0.02396795153617859, - 0.028293127194046974, - 0.04782991111278534, - -0.0033507151529192924, - 0.013028092682361603, - -0.03827323392033577, - -0.06591889262199402, - 0.010163530707359314, - 0.04859050735831261, - 0.015476723201572895, - -0.010164043866097927, - 0.056660957634449005, - 0.04535314440727234, - -0.049201227724552155, - 0.05555194988846779, - -0.00920093059539795, - 0.05638732761144638, - -0.056285761296749115, - 0.01770615205168724, - 0.027490660548210144, - 0.029073908925056458, - 0.052364032715559006, - -0.04126725718379021, - -0.11722627282142639, - -0.021119151264429092, - -0.02100757136940956, - 0.0005582878366112709, - -0.0005367044359445572, - 0.0036107914056628942, - 0.048533424735069275, - -0.004896373022347689, - -0.007967781275510788, - -0.1081191897392273, - -0.003447897732257843, - 0.0002133697271347046, - 0.009057855233550072, - -0.034529320895671844, - 0.013528825715184212, - -0.00154181569814682, - 0.0035048341378569603, - -0.02506220154464245, - 0.02238447777926922, - 0.001650981605052948, - 0.013996691443026066, - -0.05007544159889221, - -0.005328020080924034, - 0.04637805372476578, - 0.007008839398622513, - -0.029255885630846024, - -0.05403870344161987, - 0.054928045719861984, - 0.045772429555654526, - 0.08533405512571335, - 0.031425803899765015, - 0.014947559684515, - -0.02466295287013054, - 0.012441747821867466, - -0.032198794186115265, - 0.029913613572716713, - -0.02174210734665394, - 0.028558528050780296, - 0.05295272916555405, - 0.007579335011541843, - 0.060258980840444565, - 0.03201170638203621, - -0.017680102959275246, - -0.01360813993960619, - -0.0015189871191978455, - -0.08491042256355286, - -0.028589241206645966, - -0.00767325796186924, - -0.03906512260437012, - -0.007060392759740353, - 0.012488571926951408, - 0.054467055946588516, - 0.03447853773832321, - 0.07207818329334259, - 0.020658820867538452, - -0.030700940638780594 - ] - }, - "p244_371.wav": { - "name": "p244", - "embedding": [ - 0.03227641433477402, - 0.07893455028533936, - -0.003008049912750721, - -0.02006196603178978, - -0.012401927262544632, - 0.020664788782596588, - -0.13638852536678314, - 0.07639500498771667, - -0.022286780178546906, - 0.1394807994365692, - -0.05815175175666809, - 0.09103092551231384, - -0.017967024818062782, - -0.13092158734798431, - -0.026399848982691765, - 0.03507838025689125, - -0.07203131169080734, - -0.009481187909841537, - -0.010336998850107193, - -0.06760882586240768, - 0.03291138634085655, - 0.006558132357895374, - 0.04447223246097565, - -0.06333409249782562, - -0.005651502870023251, - 0.06446963548660278, - 0.025199880823493004, - 0.015213461592793465, - 0.021492887288331985, - -0.025948047637939453, - 0.017750808969140053, - 0.06744347512722015, - -0.010210562497377396, - 0.007555130869150162, - 0.051741406321525574, - 0.0046320101246237755, - -0.013758942484855652, - -0.015026512555778027, - 0.022221513092517853, - 0.0648978129029274, - -0.03392181172966957, - 0.08260823786258698, - 0.04356994479894638, - 0.004897799808532, - 0.06078849732875824, - -0.0277726911008358, - -0.0462493970990181, - 0.01788242533802986, - -0.05303872004151344, - 0.1206045150756836, - 0.06604209542274475, - -0.004654387012124062, - -0.06057612597942352, - 0.010613691061735153, - 0.09292103350162506, - -0.0040059383027255535, - -0.1242314949631691, - -0.00563264824450016, - 0.03555014356970787, - 0.10576723515987396, - -0.03464776650071144, - -0.04644881188869476, - 0.0024156481958925724, - 0.10119637846946716, - -0.0018182694911956787, - 0.06835620105266571, - 0.09282024204730988, - 0.07859265804290771, - 0.004812122788280249, - 0.007401864975690842, - 0.054654866456985474, - 0.06204240769147873, - 0.017942586913704872, - -0.03141889348626137, - 0.05323202908039093, - -0.04748234152793884, - -0.007433713413774967, - -0.024028928950428963, - -0.003700780216604471, - -0.05373591184616089, - -0.05975489690899849, - -0.021994510665535927, - 0.005917379632592201, - 0.04507405683398247, - -0.009225860238075256, - 0.0019493326544761658, - 0.02532758191227913, - -0.020517483353614807, - 0.0316905602812767, - 0.0638870894908905, - 0.004317956045269966, - 0.0017329230904579163, - -0.04223298281431198, - -0.06712155044078827, - -0.007157105952501297, - -0.021823067218065262, - 0.06653784215450287, - 0.03614731505513191, - 0.03914476931095123, - 0.030541783198714256, - 0.0668286606669426, - 0.07110290229320526, - -0.023772098124027252, - -0.010852713137865067, - -0.07836492359638214, - 0.0844816267490387, - 0.10738882422447205, - -0.03860627859830856, - 0.02868693321943283, - -0.021105684340000153, - 0.04606686905026436, - -0.00011913105845451355, - -0.08615939319133759, - -0.025819644331932068, - 0.018519770354032516, - 0.07057251036167145, - 0.018239911645650864, - 0.10097189247608185, - 0.008362851105630398, - 0.016340095549821854, - 0.08805924654006958, - -0.0026069916784763336, - -0.042908355593681335, - -0.07718533277511597, - 0.042381614446640015, - -0.07085731625556946, - 0.05826074630022049, - 0.03642083704471588, - 0.029401075094938278, - -0.005581636913120747, - 0.07468406856060028, - 0.0231492817401886, - 0.0003915046399924904, - -0.05088362470269203, - 0.005963008850812912, - 0.06247413903474808, - -0.006602025590837002, - 0.050059158354997635, - 0.058450911194086075, - 0.020052675157785416, - 0.09255939722061157, - 0.053725678473711014, - -0.008070921525359154, - -0.060385435819625854, - 0.022250596433877945, - 0.01926630735397339, - 0.020541919395327568, - -0.035011403262615204, - -0.04660602658987045, - -0.009186917915940285, - -0.06800634413957596, - -0.0007893447764217854, - -0.03717979043722153, - 0.07326235622167587, - 0.011153215542435646, - -0.022582361474633217, - 0.1033172607421875, - 0.0005239443853497505, - -0.015004586428403854, - 0.0018104743212461472, - -0.021707868203520775, - -0.0069784484803676605, - 0.05017644912004471, - -0.16441015899181366, - -0.053960446268320084, - -0.013316246680915356, - 0.03525568172335625, - 0.01271000038832426, - -0.0021763681434094906, - 0.07563194632530212, - -0.020028769969940186, - 0.039418213069438934, - -0.0026795826852321625, - 0.008740264922380447, - -0.0803966149687767, - -0.06385741382837296, - -0.035338547080755234, - -0.07374973595142365, - -0.03639139235019684, - 0.05982355400919914, - -0.03856709972023964, - 0.04521141201257706, - -0.011947247199714184, - -0.06854445487260818, - -0.03994475677609444, - 0.06963108479976654, - 0.0475093349814415, - -0.03724616765975952, - 0.020763475447893143, - 0.0793621614575386, - -0.0019649025052785873, - 0.009077351540327072, - 0.024843920022249222, - 0.08805812895298004, - -0.0656127855181694, - -0.0009819060796871781, - -0.07022621482610703, - 0.046319104731082916, - 0.0814773365855217, - -0.06484180688858032, - -0.06355142593383789, - -0.05763907730579376, - -0.039179425686597824, - 0.036811403930187225, - -0.049308329820632935, - -0.02700643055140972, - 0.0033810893073678017, - -0.022560294717550278, - -0.06166971102356911, - -0.08655437082052231, - 0.04492838680744171, - -0.04982927441596985, - -0.0020562559366226196, - -0.040295813232660294, - 0.029725197702646255, - 0.03380037844181061, - 0.030435828492045403, - -0.05710452422499657, - 0.05291185900568962, - 0.005867356434464455, - -0.04476577416062355, - -0.0017581810243427753, - -0.0075097717344760895, - 0.04464172571897507, - -0.04374231398105621, - -0.04347284883260727, - -0.07547937333583832, - 0.053342245519161224, - -0.053910695016384125, - 0.06947334855794907, - 0.009540295228362083, - -0.04560142010450363, - -0.016805680468678474, - -0.023156872019171715, - -0.038032419979572296, - 0.037289898842573166, - 0.07728054374456406, - 0.05242393910884857, - 0.007996432483196259, - -0.03643183782696724, - 0.09355387836694717, - 0.03745007514953613, - 0.01697434112429619, - -0.04983559250831604, - 0.03119225986301899, - -0.03829854726791382, - 0.012120218947529793, - 0.03494340926408768, - -0.07356956601142883, - 0.029912598431110382, - -0.015489637851715088, - -0.00717683881521225, - 0.040845803916454315, - 0.06143088638782501, - 0.03821150213479996, - -0.05639513581991196 - ] - }, - "p244_237.wav": { - "name": "p244", - "embedding": [ - 0.062478117644786835, - 0.08805671334266663, - -0.02701466903090477, - 0.03598133474588394, - -0.07690879702568054, - 0.06420727074146271, - -0.12137028574943542, - 0.15541139245033264, - -0.03752361610531807, - 0.12034769356250763, - -0.05400796979665756, - 0.15097662806510925, - -0.011816158890724182, - -0.16544224321842194, - -0.009200764819979668, - 0.05478277802467346, - -0.03287597373127937, - -0.02415657415986061, - -0.03408486023545265, - -0.025752220302820206, - 0.03161536902189255, - 0.016185950487852097, - 0.048119641840457916, - -0.004026359878480434, - 0.027900943532586098, - 0.07276415824890137, - -0.005021668039262295, - 0.037588223814964294, - 0.013086924329400063, - -0.06067211925983429, - -0.053979743272066116, - 0.08161202073097229, - -0.061278510838747025, - 0.0006353624630719423, - 0.05743684619665146, - -0.03418692946434021, - -0.016989169642329216, - -0.07235880941152573, - -0.024300675839185715, - -0.005221587140113115, - -0.028233444318175316, - 0.07381439208984375, - 0.025142934173345566, - -0.046350352466106415, - 0.043835945427417755, - 0.010748608969151974, - -0.012153811752796173, - -0.021170055493712425, - -0.11025504767894745, - 0.13349317014217377, - 0.069571852684021, - 0.002749471925199032, - -0.08233949542045593, - -0.048098716884851456, - 0.104718878865242, - -0.013645684346556664, - -0.10558249056339264, - -0.03026825562119484, - 0.057154491543769836, - 0.14035625755786896, - -0.036229223012924194, - -0.027161872014403343, - 0.03229169920086861, - 0.09954825043678284, - 0.0756656602025032, - 0.08606154471635818, - 0.08958965539932251, - 0.12150564789772034, - -0.03269243612885475, - 0.04268181324005127, - 0.04451560229063034, - 0.08201420307159424, - 0.04899541288614273, - -0.00022266758605837822, - 0.02575509063899517, - -0.013191865757107735, - -0.01470563467592001, - -0.019229203462600708, - -0.029503345489501953, - -0.03195473551750183, - -0.011629972606897354, - 0.009657690301537514, - 0.0330524742603302, - 0.029375743120908737, - -0.031165163964033127, - 0.08170977234840393, - 0.04960762336850166, - -0.01955675147473812, - 0.053336236625909805, - 0.021318037062883377, - -0.0055083041079342365, - 0.07204363495111465, - -0.10473954677581787, - -0.09303762763738632, - 0.042858708649873734, - 0.0008611101657152176, - 0.031141679733991623, - 0.07449442148208618, - 0.04478573799133301, - -0.008067564107477665, - 0.11609692871570587, - 0.07905703037977219, - -0.009608324617147446, - 0.033123329281806946, - -0.06986745446920395, - 0.1358831226825714, - 0.09568972885608673, - -0.033319856971502304, - 0.05726880580186844, - -0.05880068242549896, - 0.08086007833480835, - 0.05691419541835785, - -0.1282206028699875, - -0.07169242203235626, - 0.013588154688477516, - -0.00384822441264987, - -0.017541950568556786, - 0.1223708838224411, - -0.0063660042360424995, - 0.06443572044372559, - 0.10724899917840958, - -0.08622677624225616, - -0.057326652109622955, - -0.01775958761572838, - 0.051261596381664276, - -0.0701296254992485, - 0.06919596344232559, - 0.05582398921251297, - -0.009145856834948063, - 0.02050151117146015, - 0.0777398869395256, - -0.01273889560252428, - -0.009545340202748775, - 0.046829573810100555, - -0.04941624402999878, - 0.011287465691566467, - -0.01271025463938713, - -0.006767892278730869, - 0.045659709721803665, - 0.02967599779367447, - 0.041732121258974075, - -0.0246922355145216, - 0.005342630669474602, - -0.10961102694272995, - 0.01791636273264885, - 0.035969555377960205, - 0.07793932408094406, - -0.014361567795276642, - -0.030218031257390976, - -0.029936406761407852, - -0.0731051042675972, - 0.0035858757328242064, - -0.005743669345974922, - 0.059719935059547424, - -0.03382924944162369, - 0.01874733529984951, - 0.07892933487892151, - 0.04624543339014053, - 0.008689455687999725, - -0.05614771693944931, - -0.03463371470570564, - 0.028909631073474884, - 0.059867795556783676, - -0.07605750113725662, - -0.0788099616765976, - -0.02278270199894905, - 0.02078505977988243, - -0.04565538465976715, - 0.0618792399764061, - 0.04627395421266556, - 0.02144698053598404, - 0.024966023862361908, - -0.06481112539768219, - 0.018386628478765488, - -0.09612500667572021, - -0.059061888605356216, - -0.009723568335175514, - -0.01764582097530365, - -0.03347139433026314, - 0.06480272859334946, - 0.03506843000650406, - 0.0765841156244278, - -0.02614673599600792, - -0.049033064395189285, - -0.08097899705171585, - 0.04008316993713379, - 0.04488355293869972, - -0.012902098707854748, - 0.045022401958703995, - 0.06370033323764801, - -0.01737222447991371, - 0.04609743505716324, - 0.06887859851121902, - 0.07918258756399155, - -0.026797780767083168, - 0.002684700768440962, - -0.0785614401102066, - 0.09555377066135406, - 0.10551431775093079, - -0.08648798614740372, - -0.09077871590852737, - -0.04114428535103798, - -0.06787050515413284, - 0.03233399987220764, - -0.036318860948085785, - -0.0015345574356615543, - 0.04481567442417145, - 0.003793739713728428, - -0.10578152537345886, - -0.10483092069625854, - 0.10364645719528198, - -0.0776587724685669, - 0.008925843052566051, - -0.0856873095035553, - 0.04074029624462128, - 0.09557828307151794, - 0.008781029842793941, - -0.04159076511859894, - -0.014469398185610771, - 0.04487713426351547, - -0.00967913307249546, - 0.021334808319807053, - 0.05455067753791809, - 0.05536310374736786, - -0.1128218024969101, - -0.0036477381363511086, - -0.04945822060108185, - 0.041252292692661285, - -0.03801654651761055, - 0.16559556126594543, - 0.012511742301285267, - -0.03287249058485031, - -0.0847829058766365, - 0.0574336051940918, - -0.010976465418934822, - 0.04984276741743088, - 0.041278913617134094, - 0.07160691171884537, - 0.02191673219203949, - -0.09028167277574539, - 0.1194876953959465, - 0.03112691268324852, - -0.05098661035299301, - -0.08122666925191879, - -0.044997625052928925, - -0.04622385650873184, - 0.03200463950634003, - 0.01595987007021904, - -0.09011881053447723, - -0.025714095681905746, - 0.018508657813072205, - -0.007140908390283585, - 0.061176598072052, - 0.14482010900974274, - 0.06545878201723099, - -0.09433522820472717 - ] - }, - "p244_150.wav": { - "name": "p244", - "embedding": [ - 0.05445127934217453, - 0.09504492580890656, - -0.017335087060928345, - 0.0005590729415416718, - -0.006677444092929363, - 0.04324043542146683, - -0.1598438173532486, - 0.1521265208721161, - 0.015800952911376953, - 0.1326429843902588, - -0.048835158348083496, - 0.0989331379532814, - -0.005136210471391678, - -0.14589878916740417, - -0.04850536957383156, - 0.011442350223660469, - -0.030728237703442574, - 0.014277603477239609, - -0.05103939399123192, - -0.01851794309914112, - 0.045180030167102814, - 0.03869707137346268, - 0.033563558012247086, - -0.06366416066884995, - 0.025235624983906746, - 0.029222752898931503, - 0.017475837841629982, - 0.06741766631603241, - 0.02338658645749092, - -0.06970561295747757, - 0.024240758270025253, - 0.09504877775907516, - -0.05197633430361748, - 0.033248111605644226, - 0.07017750293016434, - -0.013887058012187481, - -0.024386439472436905, - -0.048670120537281036, - -0.01240481436252594, - 0.029740747064352036, - -0.024747541174292564, - 0.07934467494487762, - 0.01621522381901741, - -0.005670198705047369, - 0.053112003952264786, - 0.03493073582649231, - 0.009446266107261181, - -0.056866712868213654, - -0.08870917558670044, - 0.17104384303092957, - 0.042898599058389664, - 0.01768159680068493, - -0.10744079947471619, - -0.05929476022720337, - 0.06378844380378723, - -0.047138895839452744, - -0.07429944723844528, - -0.03783268854022026, - 0.04104207083582878, - 0.11972683668136597, - -0.02845608815550804, - -0.05077710002660751, - 0.03715653344988823, - 0.10548093914985657, - 0.05520070344209671, - 0.043782852590084076, - 0.09991559386253357, - 0.10533083975315094, - -0.01836565136909485, - 0.04458494111895561, - -0.00521993450820446, - 0.06749764829874039, - 0.03679005801677704, - 0.01765529438853264, - 0.02865200862288475, - -0.008177322335541248, - -0.007171163335442543, - -0.03467854857444763, - -0.04015803709626198, - -0.0035336739383637905, - 0.018306873738765717, - 0.04459645599126816, - 0.002496963134035468, - 0.061544694006443024, - -0.03148921951651573, - 0.050127506256103516, - 0.0038662105798721313, - -0.03732423856854439, - 0.05701339617371559, - 0.03474909067153931, - 0.04054331034421921, - 0.027622219175100327, - -0.08793716132640839, - -0.11432887613773346, - 0.0007522208616137505, - -0.01896682381629944, - 0.003803498111665249, - 0.038041431456804276, - 0.02822987735271454, - -0.012858950532972813, - 0.10713546723127365, - 0.03951896354556084, - -0.05070802941918373, - 0.01302795298397541, - -0.07655227929353714, - 0.10519850254058838, - 0.07445921003818512, - -0.012636429630219936, - 0.033837221562862396, - -0.09579169750213623, - 0.03084684908390045, - 0.0460226908326149, - -0.11251669377088547, - -0.08904886990785599, - 0.05482660233974457, - 0.026281513273715973, - 0.014545917510986328, - 0.12108919024467468, - 0.01869647018611431, - 0.03808961808681488, - 0.09633824229240417, - -0.06543208658695221, - -0.042110469192266464, - -0.03323754668235779, - 0.0576302707195282, - -0.05046115070581436, - 0.052969273179769516, - 0.030514420941472054, - 0.0023071318864822388, - -0.007951482199132442, - 0.08881241083145142, - 0.0023535944055765867, - 0.020196449011564255, - -0.021460825577378273, - -0.010890054516494274, - 0.04041213542222977, - -0.038867317140102386, - -0.013536549173295498, - 0.009058648720383644, - 0.07553917914628983, - 0.05397619679570198, - 0.023913858458399773, - -0.06078393757343292, - -0.08743506669998169, - -0.0055031250230968, - 0.02007358893752098, - 0.07694711536169052, - -0.040580905973911285, - -0.026430224999785423, - -0.04195965453982353, - -0.02747427113354206, - 0.0014347780961543322, - -0.00816923938691616, - 0.05164854973554611, - 0.004903111141175032, - -0.001956344349309802, - 0.1120600700378418, - -0.01691797375679016, - 0.02195458672940731, - -0.00655318982899189, - 0.0007120408117771149, - -0.018527142703533173, - 0.03203348070383072, - -0.05274778604507446, - -0.07529155910015106, - -0.009422887116670609, - 0.0026912791654467583, - -0.01571531407535076, - 0.054356373846530914, - 0.036526329815387726, - 0.019234666600823402, - 0.0369151309132576, - -0.053116705268621445, - -0.03291326388716698, - -0.10476283729076385, - -0.057671964168548584, - -0.008893082849681377, - -0.0005948860198259354, - -0.04530104622244835, - 0.07100029289722443, - 0.018888205289840698, - 0.05772804468870163, - -0.01787591353058815, - -0.06595436483621597, - -0.07405616343021393, - 0.04277785122394562, - 0.06701213121414185, - -0.01245732419192791, - 0.018164178356528282, - 0.03243707865476608, - -0.009980788454413414, - 0.06199754774570465, - 0.0889868512749672, - 0.04605251923203468, - -0.022417619824409485, - -0.007732506841421127, - -0.09337057173252106, - 0.1175006777048111, - 0.07790759950876236, - -0.06739962846040726, - -0.08892644941806793, - -0.00017318621394224465, - -0.08638440817594528, - -0.031016670167446136, - -0.026220280677080154, - 0.025334432721138, - 0.051826294511556625, - -0.015674695372581482, - -0.0880260020494461, - -0.07810349017381668, - 0.050383590161800385, - -0.09572884440422058, - -0.008797546848654747, - -0.045625604689121246, - 0.020948154851794243, - 0.10767039656639099, - 0.03592601791024208, - -0.0036805658601224422, - -0.05265194922685623, - 0.03810866177082062, - -0.038443513214588165, - -0.01184895634651184, - 0.023958120495080948, - 0.019777752459049225, - -0.08414611220359802, - 0.03260072320699692, - -0.03366226702928543, - 0.03722888231277466, - -0.061745695769786835, - 0.09403915703296661, - 0.018213409930467606, - -0.0672248899936676, - -0.07968960702419281, - 0.023506173864006996, - -0.05182614177465439, - 0.053563233464956284, - -0.010357051156461239, - 0.03555510565638542, - 0.04073306918144226, - -0.07910112291574478, - 0.11850571632385254, - 0.03808992728590965, - -0.037928007543087006, - -0.09998872876167297, - -0.10208195447921753, - -0.02480815351009369, - 0.04088554158806801, - 0.023231646046042442, - -0.05354025959968567, - -0.00515914848074317, - 0.012200551107525826, - -0.033005621284246445, - 0.035563550889492035, - 0.12522609531879425, - 0.032806456089019775, - -0.12793779373168945 - ] - }, - "p244_123.wav": { - "name": "p244", - "embedding": [ - 0.047935813665390015, - 0.09868910163640976, - -0.02358902618288994, - 0.039254672825336456, - -0.08080698549747467, - 0.01979684643447399, - -0.1290421485900879, - 0.14838680624961853, - -0.01925787329673767, - 0.09545451402664185, - -0.0655849352478981, - 0.15221551060676575, - -0.026543449610471725, - -0.1803678274154663, - -0.031248360872268677, - 0.07790245115756989, - -0.022635377943515778, - -0.042884618043899536, - -0.011101074516773224, - -0.024351127445697784, - 0.018490398302674294, - 0.02723417431116104, - 0.06314945220947266, - 0.03816467151045799, - 0.026572411879897118, - 0.08199214190244675, - 0.016079099848866463, - 0.06612670421600342, - 0.03773189336061478, - -0.026156505569815636, - -0.049615275114774704, - 0.07632870972156525, - -0.04222646355628967, - -0.007784062065184116, - 0.05659156292676926, - -0.020539313554763794, - 0.010034045204520226, - -0.0572444312274456, - -0.02125987783074379, - -0.006358354352414608, - -0.03878733515739441, - 0.08554770797491074, - 0.02923593483865261, - -0.041204482316970825, - 0.04980042204260826, - 0.034969545900821686, - -0.012981700710952282, - -0.031637709587812424, - -0.136001318693161, - 0.12609539926052094, - 0.06247280538082123, - 0.0049299378879368305, - -0.0876971036195755, - -0.04676724597811699, - 0.0985020250082016, - -0.050785817205905914, - -0.08533252775669098, - -0.04530923813581467, - 0.07116612046957016, - 0.13595515489578247, - -0.027138888835906982, - -0.028523694723844528, - 0.02811417728662491, - 0.12468639016151428, - 0.08511309325695038, - 0.07142630219459534, - 0.07455113530158997, - 0.11343652009963989, - -0.04902837797999382, - 0.016779478639364243, - 0.05108056589961052, - 0.08679787814617157, - 0.02159731835126877, - 0.00569456210359931, - 0.0042259581387043, - 0.0007285761530511081, - -0.009510291740298271, - 0.006272531114518642, - -0.02393496036529541, - -0.018868491053581238, - -0.04187668487429619, - 0.012432875111699104, - -0.008963399566709995, - 0.011986427009105682, - -0.022273089736700058, - 0.1004435271024704, - 0.042855530977249146, - -0.00926428847014904, - 0.06705661863088608, - 0.03570529818534851, - -0.02310272864997387, - 0.06416408717632294, - -0.08750297874212265, - -0.0670657679438591, - 0.011473655700683594, - -0.015031831339001656, - 0.024471379816532135, - 0.0659395381808281, - 0.037837572395801544, - -0.0075630322098731995, - 0.1322927474975586, - 0.08378434181213379, - -0.010745341889560223, - 0.040007565170526505, - -0.06994685530662537, - 0.1312371790409088, - 0.08377501368522644, - -0.02062736451625824, - 0.05747717618942261, - -0.034366365522146225, - 0.04676353931427002, - 0.05633261054754257, - -0.11159484088420868, - -0.06889460235834122, - 0.015194023959338665, - 0.012482589110732079, - -0.017916742712259293, - 0.10312461107969284, - -0.02651827782392502, - 0.059082500636577606, - 0.10515463352203369, - -0.06520505249500275, - -0.06996916234493256, - -0.012537147849798203, - 0.04434474557638168, - -0.0749981477856636, - 0.060916464775800705, - 0.0659603402018547, - 0.00183815136551857, - 0.00949239544570446, - 0.08374138176441193, - 0.004408447537571192, - -0.008399765007197857, - 0.04493667930364609, - -0.06115281209349632, - 0.00882935244590044, - -0.009041817858815193, - -0.011205955408513546, - 0.06833150237798691, - 0.04499555379152298, - 0.044427044689655304, - 0.005526232998818159, - -0.0013271027710288763, - -0.13187739253044128, - 0.0029732505790889263, - 0.03732961416244507, - 0.09435002505779266, - 0.0006489133229479194, - -0.04298786818981171, - -0.051117103546857834, - -0.04414571449160576, - -0.007264079060405493, - 0.020839324221014977, - 0.06787355244159698, - -0.0624614879488945, - 0.008336108177900314, - 0.08739246428012848, - 0.01971442624926567, - 0.008241701871156693, - -0.04189733415842056, - -0.020518694072961807, - 0.006500543095171452, - 0.0513586699962616, - -0.0604424886405468, - -0.08609747886657715, - -0.012232346460223198, - 0.046607114374637604, - -0.0355626605451107, - 0.06916355341672897, - 0.04407934471964836, - 0.012806417420506477, - 0.020992964506149292, - -0.05804038792848587, - 0.023951802402734756, - -0.07645511627197266, - -0.05613651126623154, - -0.02277601882815361, - 0.012747762724757195, - -0.039644304662942886, - 0.055075209587812424, - 0.05049785226583481, - 0.08725063502788544, - 0.0011182089801877737, - -0.07058509439229965, - -0.09501567482948303, - 0.04005023092031479, - 0.06036540865898132, - 0.004332630895078182, - 0.06460879743099213, - 0.05896572768688202, - -0.036681003868579865, - 0.06764934957027435, - 0.055881284177303314, - 0.06115977466106415, - -0.028115984052419662, - -0.00039863772690296173, - -0.06316331028938293, - 0.057546548545360565, - 0.09326006472110748, - -0.11558821052312851, - -0.07488150149583817, - -0.03998482972383499, - -0.056760214269161224, - 0.04024461284279823, - -0.01527421921491623, - 0.017751840874552727, - 0.047286100685596466, - 0.001247235108166933, - -0.1040644496679306, - -0.11439242213964462, - 0.08464350551366806, - -0.07662586867809296, - 0.017329208552837372, - -0.0555596649646759, - 0.0290832556784153, - 0.09408316016197205, - 0.00019073513976763934, - -0.02277049422264099, - -0.029403764754533768, - 0.03492112457752228, - -0.015735380351543427, - -0.0010919775813817978, - 0.06162617728114128, - 0.04125378653407097, - -0.10668320953845978, - 0.00865055900067091, - -0.06471343338489532, - 0.06943607330322266, - -0.023811817169189453, - 0.16725806891918182, - 0.021339697763323784, - -0.032372549176216125, - -0.09002547711133957, - 0.016651824116706848, - -0.0340128093957901, - 0.06592398881912231, - 0.03635784238576889, - 0.054862987250089645, - 0.011859702877700329, - -0.06403880566358566, - 0.13180667161941528, - 0.05661667138338089, - -0.07817618548870087, - -0.08639197051525116, - -0.03598418086767197, - -0.04523245990276337, - 0.04229831323027611, - 0.04203055053949356, - -0.090467169880867, - -0.03499970957636833, - 0.00952528603374958, - -0.03472364693880081, - 0.07906821370124817, - 0.14434456825256348, - 0.07129251956939697, - -0.086697518825531 - ] - }, - "p244_279.wav": { - "name": "p244", - "embedding": [ - 0.0520191453397274, - 0.06683322042226791, - -0.05218029022216797, - 0.009071988984942436, - -0.00949503667652607, - 0.018779944628477097, - -0.1245230883359909, - 0.07804550975561142, - -0.056330606341362, - 0.13133792579174042, - -0.07470617443323135, - 0.08096323162317276, - -0.020086199045181274, - -0.13068002462387085, - -0.054525647312402725, - 0.032097481191158295, - -0.04229017347097397, - -0.019590429961681366, - -0.07944805175065994, - -0.025222357362508774, - 0.035048045217990875, - 0.05781761556863785, - 0.025801002979278564, - -0.05447918176651001, - 0.012016301974654198, - 0.0608753003180027, - 0.012441380880773067, - 0.017905104905366898, - 0.007546348962932825, - -0.007106134667992592, - 0.01191239058971405, - 0.0835629403591156, - -0.03399771451950073, - -0.010156111791729927, - 0.012086132541298866, - 0.03906512260437012, - -0.00043959449976682663, - -0.06790551543235779, - 0.010043170303106308, - 0.016791533678770065, - -0.042105402797460556, - 0.054084762930870056, - 0.03865585848689079, - -0.022079667076468468, - 0.0368582159280777, - -0.0146127725020051, - -0.03163152188062668, - -0.07022309303283691, - -0.08575502783060074, - 0.17867203056812286, - 0.07932297885417938, - 0.04412449896335602, - -0.07738173007965088, - -0.03472016006708145, - 0.10072579979896545, - 0.004298762418329716, - -0.06597690284252167, - -0.07603298127651215, - 0.016661036759614944, - 0.1536272019147873, - -0.024027584120631218, - -0.03949277848005295, - 0.020423799753189087, - 0.09840992093086243, - 0.005495581775903702, - 0.03965126350522041, - 0.10977207124233246, - 0.05614548176527023, - 0.019403541460633278, - 0.024645822122693062, - 0.0408913716673851, - 0.050808850675821304, - 0.030882734805345535, - -0.05330682173371315, - 0.05576683208346367, - -0.02075422741472721, - -0.04296060651540756, - 0.0017399471253156662, - -0.026645533740520477, - -0.07209558039903641, - -0.0076570333912968636, - 0.015097926370799541, - 0.006781320553272963, - 0.02138354815542698, - -0.06528018414974213, - 0.029388809576630592, - 0.027205435559153557, - -0.058518312871456146, - 0.06716534495353699, - 0.038299545645713806, - -0.00743325287476182, - -0.024749377742409706, - -0.04626326262950897, - -0.08060380816459656, - 0.022845624014735222, - 0.006770520471036434, - -0.016435548663139343, - 0.030038874596357346, - 0.03380761295557022, - -0.026185167953372, - 0.07946860045194626, - 0.02947250008583069, - -0.019602373242378235, - -0.027460381388664246, - -0.06599431484937668, - 0.11118429154157639, - 0.1396806687116623, - -0.006802147254347801, - 0.0026200972497463226, - -0.032686181366443634, - 0.01057338248938322, - 0.06713508814573288, - -0.11419455707073212, - -0.07052184641361237, - 0.0548800453543663, - 0.030668586492538452, - 0.030700329691171646, - 0.07999694347381592, - 0.019764676690101624, - -0.009286267682909966, - 0.08549840748310089, - -0.08144000172615051, - -0.07725387811660767, - -0.060516178607940674, - 0.04315546527504921, - -0.07481749355792999, - 0.03985782712697983, - 0.07825423777103424, - -0.006186093669384718, - -0.037569183856248856, - 0.06172458082437515, - 0.012102059088647366, - -0.006403912790119648, - -0.04141402989625931, - 0.043237313628196716, - 0.054311491549015045, - -0.026584520936012268, - -0.04333289712667465, - 0.01529704686254263, - 0.0445157065987587, - 0.04538054019212723, - 0.021498408168554306, - -0.012310020625591278, - -0.0844266340136528, - 0.024476516991853714, - 0.06225130707025528, - 0.025506403297185898, - -0.03862001374363899, - -0.023227086290717125, - -0.030311886221170425, - -0.03701767325401306, - -0.015341464430093765, - -0.04773303493857384, - 0.09846585988998413, - 0.00785382091999054, - 0.029214119538664818, - 0.11849590390920639, - -0.05175226554274559, - -0.0027003567665815353, - -0.005204865708947182, - 0.04099271073937416, - 0.04894743859767914, - 0.013694122433662415, - -0.036463987082242966, - -0.07727885246276855, - 0.0074785854667425156, - 0.007762848865240812, - 0.006016571074724197, - 0.011575054377317429, - 0.022281501442193985, - -0.019407734274864197, - 0.006433653645217419, - -0.07725550979375839, - 0.01835590973496437, - -0.12018996477127075, - 0.003141818568110466, - -0.007673362269997597, - -0.07878651469945908, - 0.00708797387778759, - 0.08978602290153503, - 0.01866057701408863, - 0.013536175712943077, - -0.045769430696964264, - -0.11441882699728012, - -0.042273275554180145, - 0.08821281790733337, - 0.10511176288127899, - -0.015396878123283386, - -0.01159561425447464, - 0.024827174842357635, - 0.037263356149196625, - -0.008314723148941994, - 0.06436347216367722, - 0.06946414709091187, - -0.008239863440394402, - -0.07226821780204773, - -0.0398029088973999, - 0.08776760846376419, - 0.04970499873161316, - -0.09706464409828186, - -0.03450682386755943, - -0.05589821934700012, - -0.05155661329627037, - 0.01245830673724413, - -0.022623302415013313, - 0.02387787215411663, - 0.03990945219993591, - -0.039009034633636475, - -0.12075541913509369, - -0.09642039239406586, - 0.06341516971588135, - -0.040683284401893616, - -0.008881762623786926, - -0.04353077709674835, - 0.034678421914577484, - 0.06704499572515488, - 0.008364738896489143, - -0.009846445173025131, - -0.014528504572808743, - -0.02198714017868042, - -0.06812019646167755, - -0.0252497848123312, - -0.0285518616437912, - 0.0410170704126358, - -0.08738823235034943, - 0.031555213034152985, - -0.0722704827785492, - 0.0873974859714508, - -0.06831436604261398, - 0.08111992478370667, - 0.0020491108298301697, - -0.02732449769973755, - -0.11388514935970306, - 0.029330717399716377, - -0.018018225207924843, - 0.07232734560966492, - 0.049911100417375565, - 0.033157579600811005, - 0.02780042588710785, - -0.09500128030776978, - 0.08650533854961395, - 0.08225865662097931, - -0.005279342643916607, - -0.07847237586975098, - -0.02644912153482437, - -0.03823351860046387, - 0.022987350821495056, - 0.001889458973892033, - -0.010943258181214333, - -0.0028536678291857243, - 0.006852135527879, - -0.03145923465490341, - 0.0767761617898941, - 0.07135774195194244, - 0.022094519808888435, - -0.10847096145153046 - ] - }, - "p244_186.wav": { - "name": "p244", - "embedding": [ - 0.049780651926994324, - 0.09498939663171768, - -0.011941144242882729, - 0.025888066738843918, - -0.037194035947322845, - 0.05615521967411041, - -0.1325494647026062, - 0.13605374097824097, - -0.02295851707458496, - 0.13731497526168823, - -0.06083249673247337, - 0.09459879249334335, - -0.016566215083003044, - -0.15367192029953003, - -0.03788261115550995, - 0.04270133376121521, - -0.0591256245970726, - -0.023712610825896263, - -0.03981366753578186, - -0.0033279280178248882, - 0.039632685482501984, - 0.0440482571721077, - 0.020980030298233032, - -0.03662561997771263, - 0.044919371604919434, - 0.048804059624671936, - 0.020211923867464066, - 0.057196978479623795, - 0.03199577331542969, - -0.05255095660686493, - -0.015256383456289768, - 0.11538469046354294, - -0.04307785630226135, - 0.019466117024421692, - 0.03486809879541397, - -0.00032154936343431473, - -0.009850124828517437, - -0.07209324836730957, - -0.019919173792004585, - 0.017468048259615898, - -0.03899131715297699, - 0.08111665397882462, - 0.03616027906537056, - -0.008590081706643105, - 0.025768987834453583, - 0.014063315466046333, - -0.006635394878685474, - -0.06832893192768097, - -0.10622978955507278, - 0.1869138926267624, - 0.056873105466365814, - 0.007400006987154484, - -0.08579879999160767, - -0.07059236615896225, - 0.08114106953144073, - -0.0040430836379528046, - -0.10034534335136414, - -0.033646032214164734, - 0.06214534491300583, - 0.15712344646453857, - -0.023823387920856476, - -0.03319559618830681, - 0.018809616565704346, - 0.12001721560955048, - 0.057272713631391525, - 0.07024353742599487, - 0.08927302062511444, - 0.10318976640701294, - 0.0013709496706724167, - 0.04490320011973381, - 0.03413322567939758, - 0.05794113874435425, - 0.023188617080450058, - -0.00040143157821148634, - 0.02711189165711403, - -0.020066890865564346, - -0.03524855896830559, - 0.0030172038823366165, - -0.01195192988961935, - -0.02428671531379223, - 0.005008189473301172, - 0.02575261890888214, - 0.011594429612159729, - 0.056109216064214706, - -0.024052705615758896, - 0.05364781618118286, - 0.0024599097669124603, - -0.025418920442461967, - 0.07601740956306458, - 0.020341258496046066, - 0.013301611877977848, - 0.050985176116228104, - -0.07911110669374466, - -0.11158083379268646, - 0.009729173965752125, - -0.0071069360710680485, - 0.046111881732940674, - 0.06801579892635345, - 0.03950390964746475, - -0.026529837399721146, - 0.11196405440568924, - 0.04042007774114609, - -0.022448640316724777, - 0.014554007910192013, - -0.0860765278339386, - 0.11390452086925507, - 0.08796030282974243, - -0.016473572701215744, - 0.048987872898578644, - -0.060133930295705795, - 0.06924648582935333, - 0.04526021331548691, - -0.13611623644828796, - -0.07596048712730408, - 0.04822613671422005, - 0.022315096110105515, - -0.004644811153411865, - 0.12823879718780518, - 0.005842046346515417, - 0.031274229288101196, - 0.08919675648212433, - -0.09538307785987854, - -0.0461282804608345, - -0.021206222474575043, - 0.06171686202287674, - -0.07238461077213287, - 0.039248351007699966, - 0.05201123654842377, - -0.03691919893026352, - 0.0013806335628032684, - 0.06983670592308044, - -0.0011842255480587482, - 0.020656948909163475, - 0.00756952166557312, - -0.0357440784573555, - 0.05000495910644531, - -0.03807573765516281, - 0.0036224927753210068, - 0.031258419156074524, - 0.0527312308549881, - 0.0484200045466423, - 0.004734721500426531, - -0.047661200165748596, - -0.10588062554597855, - 0.0045497845858335495, - 0.04596410319209099, - 0.06315878033638, - -0.03719942271709442, - -0.030062830075621605, - -0.04634224250912666, - -0.051202692091464996, - 0.015086007304489613, - 0.004031861200928688, - 0.06949175894260406, - -0.003637679386883974, - -0.012160002253949642, - 0.1269933432340622, - 0.011015105992555618, - -0.0008069919422268867, - -0.032828234136104584, - -0.025377415120601654, - 0.015222224406898022, - 0.0528106614947319, - -0.07549412548542023, - -0.06384138017892838, - 0.006625814363360405, - 0.008787952363491058, - -0.021066462621092796, - 0.027520207688212395, - 0.036008816212415695, - 0.025656141340732574, - 0.03806747496128082, - -0.060057297348976135, - 0.010157227516174316, - -0.11259924620389938, - -0.05163257569074631, - 0.001529137371107936, - -0.00845365971326828, - -0.031535740941762924, - 0.0914374589920044, - 0.012499975971877575, - 0.05353322625160217, - -0.001693258062005043, - -0.06909862160682678, - -0.0455293282866478, - 0.06612171232700348, - 0.08565175533294678, - 0.002202434465289116, - 0.046733416616916656, - 0.049875035881996155, - -0.0014274637214839458, - 0.030810199677944183, - 0.06460615992546082, - 0.10363326966762543, - -0.022446565330028534, - -0.01786843314766884, - -0.09056596457958221, - 0.09339028596878052, - 0.060664091259241104, - -0.09198956191539764, - -0.08776917308568954, - -0.017218543216586113, - -0.07294963300228119, - 0.01954902522265911, - -0.025054577738046646, - 0.026129813864827156, - 0.026914816349744797, - -0.01855437271296978, - -0.11046057939529419, - -0.08695186674594879, - 0.06816712021827698, - -0.0699438750743866, - -0.012322836555540562, - -0.08002462983131409, - 0.04649566859006882, - 0.10242058336734772, - 0.04990389943122864, - -0.013408978469669819, - -0.020994018763303757, - 0.035579584538936615, - -0.057652220129966736, - -0.009350299835205078, - 0.02777467481791973, - 0.010307356715202332, - -0.09487438201904297, - 0.027934473007917404, - -0.05723356083035469, - 0.06135866045951843, - -0.06065633147954941, - 0.15114903450012207, - 0.007244945503771305, - -0.0714966356754303, - -0.09494678676128387, - 0.04025014862418175, - -0.03390611708164215, - 0.04048825800418854, - 0.034435372799634933, - 0.04029976204037666, - 0.049797311425209045, - -0.08118963241577148, - 0.11395411938428879, - 0.027208494022488594, - -0.02166212722659111, - -0.06798888742923737, - -0.05895119160413742, - -0.018733887001872063, - 0.036244772374629974, - 0.006609201431274414, - -0.058978307992219925, - -0.016218818724155426, - 0.019838619977235794, - -0.022571798413991928, - 0.061886150389909744, - 0.12519052624702454, - 0.05719219893217087, - -0.12144674360752106 - ] - }, - "p244_389.wav": { - "name": "p244", - "embedding": [ - 0.04964253306388855, - 0.07147164642810822, - -0.023855488747358322, - 0.009601152502000332, - -0.03650026023387909, - 0.0252509918063879, - -0.14053422212600708, - 0.13478609919548035, - -0.017778024077415466, - 0.1325148046016693, - -0.06748643517494202, - 0.12535309791564941, - -0.005407724529504776, - -0.18714392185211182, - -0.0038822144269943237, - 0.029013734310865402, - -0.02789529412984848, - -0.013960222713649273, - -0.029330529272556305, - -0.032227523624897, - 0.06844169646501541, - 0.05408642813563347, - 0.011623265221714973, - -0.02318566106259823, - -0.015936443582177162, - 0.06676285713911057, - 0.0077512613497674465, - 0.035172995179891586, - 0.009118190966546535, - -0.048626817762851715, - -0.03151613101363182, - 0.08784034103155136, - -0.03133663162589073, - 0.013059570454061031, - 0.05865493416786194, - -0.01998130790889263, - -0.02221369557082653, - -0.05281658098101616, - -0.0278736874461174, - 0.01690276525914669, - -0.05741718411445618, - 0.051280390471220016, - 0.021318530663847923, - -0.03186129033565521, - 0.07071669399738312, - 0.018691975623369217, - -0.011189226061105728, - -0.0458110049366951, - -0.09346655011177063, - 0.15409106016159058, - 0.08942298591136932, - 0.00563018349930644, - -0.055634163320064545, - -0.04712982475757599, - 0.08556137979030609, - -0.011394977569580078, - -0.09742304682731628, - -0.02711251750588417, - 0.0626111775636673, - 0.1299046277999878, - -0.03835728019475937, - -0.035862356424331665, - 0.05873362347483635, - 0.09533900022506714, - 0.03565296158194542, - 0.08913514018058777, - 0.0988224670290947, - 0.09537652134895325, - -0.024873949587345123, - 0.009020083583891392, - 0.03127939999103546, - 0.08881151676177979, - 0.0618852898478508, - -0.01940850540995598, - 0.04258141666650772, - 0.03239329159259796, - -0.035421356558799744, - -0.003220668062567711, - -0.024362778291106224, - -0.0025995809119194746, - 0.006880385335534811, - 0.018820548430085182, - 0.023136839270591736, - 0.030249077826738358, - -0.04412847384810448, - 0.05700276419520378, - 0.03787606582045555, - -0.0025889745447784662, - 0.04101213812828064, - 0.01078611146658659, - 0.025310678407549858, - 0.06093835085630417, - -0.09138470888137817, - -0.09233307838439941, - 0.026226183399558067, - -0.000831136479973793, - -0.0036285407841205597, - 0.08612217754125595, - 0.048663657158613205, - -0.018391352146863937, - 0.11880064010620117, - 0.041312217712402344, - -0.024444010108709335, - 0.03639297932386398, - -0.08512981235980988, - 0.10115258395671844, - 0.10371828079223633, - -0.038159266114234924, - 0.049265604466199875, - -0.0879659578204155, - 0.07459738105535507, - 0.047489386051893234, - -0.12783177196979523, - -0.06034495681524277, - 0.05674789473414421, - 0.024518083781003952, - -0.00571811106055975, - 0.148992657661438, - 0.004579258617013693, - 0.04639511555433273, - 0.11653193831443787, - -0.09323574602603912, - -0.06669460237026215, - -0.037002742290496826, - 0.05766318365931511, - -0.08456750214099884, - 0.0829339325428009, - 0.03849758580327034, - -0.00476697226986289, - 0.007714379578828812, - 0.07273873686790466, - -0.03140334412455559, - 0.013713590800762177, - -0.025193532928824425, - -0.02423720806837082, - 0.017991913482546806, - -0.04869674891233444, - -0.009695064276456833, - 0.015489794313907623, - 0.033399488776922226, - 0.02593194507062435, - 0.0020804922096431255, - -0.04575156420469284, - -0.1324165165424347, - 0.017629174515604973, - 0.034133076667785645, - 0.07721230387687683, - -0.011460991576313972, - -0.030183393508195877, - -0.04280737042427063, - -0.06815729290246964, - -0.011978501453995705, - -0.046983253210783005, - 0.04523259401321411, - -0.02150619775056839, - 0.018531300127506256, - 0.08077391982078552, - 0.016388606280088425, - 0.004657186102122068, - -0.024618666619062424, - -0.04792141169309616, - 0.0007916279137134552, - 0.04553179070353508, - -0.0725981742143631, - -0.08912689983844757, - -0.033685874193906784, - 0.020242737606167793, - -0.012520924210548401, - 0.03694436699151993, - 0.03833423927426338, - 0.02411615662276745, - 0.02653633803129196, - -0.10931293666362762, - 0.012123778462409973, - -0.13374003767967224, - -0.08708872646093369, - -0.01953904889523983, - 0.0017591805662959814, - 0.009442574344575405, - 0.06969283521175385, - -0.001415996695868671, - 0.0444008968770504, - -0.03092077001929283, - -0.05863282084465027, - -0.0863884910941124, - 0.048835813999176025, - 0.08602620661258698, - -0.004547545686364174, - 0.04455546289682388, - 0.04448841139674187, - -0.02577764168381691, - 0.04145362228155136, - 0.05063789710402489, - 0.1003967672586441, - 0.006545286625623703, - 0.023936178535223007, - -0.0645827054977417, - 0.10333234071731567, - 0.09196887910366058, - -0.054392870515584946, - -0.08496984094381332, - -0.017037218436598778, - -0.07981628179550171, - 0.020779818296432495, - -0.013802110217511654, - 0.006919558625668287, - 0.01613161526620388, - 0.013877051882445812, - -0.09816001355648041, - -0.06542323529720306, - 0.05088915675878525, - -0.05183778703212738, - -0.012386116199195385, - -0.0886194109916687, - 0.05039968341588974, - 0.11728017032146454, - 0.03749311715364456, - -0.03848762437701225, - -0.04207203537225723, - 0.034046150743961334, - -0.025762498378753662, - 0.01390274427831173, - 0.02045624516904354, - 0.05512845516204834, - -0.1097072884440422, - 0.01596188172698021, - -0.06605931371450424, - 0.04116734117269516, - -0.07096131891012192, - 0.10229065269231796, - 0.011715034954249859, - -0.05940639227628708, - -0.09298370778560638, - 0.05071388930082321, - 0.02423255145549774, - 0.03490743041038513, - 0.009444080293178558, - 0.05541565269231796, - 0.036875348538160324, - -0.10995044559240341, - 0.09450041502714157, - 0.031227100640535355, - -0.02044413797557354, - -0.06892361491918564, - -0.05475762486457825, - -0.02239786647260189, - 0.022677583619952202, - 0.016151851043105125, - -0.0708613321185112, - -0.032538071274757385, - 0.011150333099067211, - -0.012001276016235352, - 0.04270801693201065, - 0.13865134119987488, - 0.02483021467924118, - -0.14446961879730225 - ] - }, - "p244_025.wav": { - "name": "p244", - "embedding": [ - 0.04728066176176071, - 0.09132519364356995, - -0.0266993660479784, - 0.014039554633200169, - -0.06971262395381927, - 0.0015893001109361649, - -0.06117280572652817, - 0.1088259220123291, - -0.017518499866127968, - 0.10607945173978806, - -0.09705836325883865, - 0.1183314323425293, - -0.060748979449272156, - -0.07807207852602005, - -0.015277368016541004, - 0.01768813468515873, - 0.00882519967854023, - -0.015771502628922462, - -0.03676807880401611, - -0.013335805386304855, - 0.04646868258714676, - 0.03957943618297577, - 0.032906629145145416, - -0.021989382803440094, - 0.0050403159111738205, - 0.07141248136758804, - 0.006551366299390793, - -0.0022186916321516037, - 0.01907799020409584, - -0.01741943508386612, - 0.00974871963262558, - 0.044684696942567825, - -0.031482212245464325, - 0.03326811641454697, - 0.04526546597480774, - 0.03129633888602257, - -0.037986814975738525, - -0.017496518790721893, - -0.012590011581778526, - 0.000543401634786278, - -0.06637702137231827, - 0.045201633125543594, - 0.009126069024205208, - -0.08740653842687607, - 0.03196221590042114, - 0.0008265916258096695, - -0.0031872917897999287, - -0.0008214432746171951, - -0.07785055041313171, - 0.13492977619171143, - 0.022686874493956566, - 0.049052923917770386, - -0.08332902193069458, - -0.018849007785320282, - 0.09554073214530945, - -0.02876932919025421, - -0.06366067379713058, - -0.07523071765899658, - 0.02019379287958145, - 0.0781453400850296, - -0.032315660268068314, - -0.04980345442891121, - 0.01791449822485447, - 0.039823293685913086, - 0.032374948263168335, - 0.04197629913687706, - 0.08284154534339905, - 0.08710107207298279, - -0.022611506283283234, - 0.042292509227991104, - 0.06746797263622284, - 0.08345398306846619, - 0.04449405521154404, - -0.00808747485280037, - 0.006780174560844898, - -0.01332017034292221, - -0.02537577971816063, - 0.02388228476047516, - -3.645848482847214e-05, - -0.03148433566093445, - -0.03693670779466629, - -0.000999006791971624, - 0.009746003895998001, - -0.04150763154029846, - -0.03425607830286026, - 0.06543602049350739, - 0.055986642837524414, - -0.03789931535720825, - 0.05830211192369461, - 0.054321613162755966, - -0.037993114441633224, - 0.021350963041186333, - -0.062318190932273865, - -0.07305333018302917, - -0.030844910070300102, - -0.03561857342720032, - 0.045457303524017334, - 0.08888489007949829, - 0.02863730490207672, - 0.05255160480737686, - 0.06512414664030075, - 0.02646852843463421, - 0.03002905286848545, - -0.009629910811781883, - -0.08390727639198303, - 0.1374681293964386, - 0.0997086614370346, - -0.039803870022296906, - -0.01094500720500946, - -0.031186792999505997, - 0.030149733647704124, - 0.04288199171423912, - -0.055234357714653015, - -0.07929259538650513, - -0.02113642729818821, - -0.0023737112060189247, - 0.025490527972579002, - 0.07405589520931244, - -0.003513803705573082, - -0.0003266558051109314, - 0.1349898725748062, - -0.09396745264530182, - -0.08919544517993927, - -0.02063814364373684, - -0.02076747640967369, - -0.07658687233924866, - 0.070269376039505, - 0.060781680047512054, - 0.011432209983468056, - 0.029541268944740295, - 0.09501159191131592, - -0.001910191960632801, - 0.02806958183646202, - -0.011061329394578934, - -0.02147325873374939, - -0.004888467490673065, - -0.025288943201303482, - 0.005936942063271999, - 0.10234484076499939, - 0.06296571344137192, - 0.1000697985291481, - 0.026982193812727928, - 0.01060149073600769, - -0.0879545658826828, - 0.022408539429306984, - 0.10782898217439651, - -0.007051026448607445, - -0.03832744434475899, - -0.03476756811141968, - -0.014071768149733543, - -0.06264172494411469, - 0.02122318744659424, - 0.007265170104801655, - 0.07849688827991486, - -0.033829424530267715, - 0.027128618210554123, - 0.12101788818836212, - -0.003733959048986435, - -0.0019902344793081284, - -0.08114194869995117, - -0.017888862639665604, - -0.02297256328165531, - 0.0381234809756279, - -0.09798060357570648, - -0.11297637969255447, - -0.06335989385843277, - 0.025235041975975037, - -0.011736004613339901, - 0.026038821786642075, - 0.057422883808612823, - -0.017501628026366234, - 0.04528648033738136, - -0.04488951712846756, - 0.05101536214351654, - -0.0784270241856575, - -0.049702972173690796, - -0.048079974949359894, - -0.06671763956546783, - 0.0022890325635671616, - 0.06637407839298248, - -0.018089480698108673, - 0.02861608937382698, - 0.025617124512791634, - -0.10746562480926514, - -0.09760837256908417, - 0.02613038569688797, - 0.03304443135857582, - -0.01710517145693302, - 0.043048322200775146, - 0.05472904443740845, - -0.045455992221832275, - 0.022019008174538612, - 0.010858343914151192, - 0.09878860414028168, - -0.07357415556907654, - -0.0042722392827272415, - -0.038643043488264084, - 0.05250518023967743, - 0.07596319913864136, - -0.10704830288887024, - -0.060466423630714417, - -0.12184098362922668, - -0.029531046748161316, - -0.004727337509393692, - -0.027492262423038483, - 0.0058106123469769955, - 0.012840759940445423, - -0.02136811800301075, - -0.06257054954767227, - -0.0891914963722229, - 0.02585662342607975, - -0.014219660311937332, - 0.0016826819628477097, - -0.06680537015199661, - 0.010963051579892635, - -0.0003173463046550751, - 0.03191859647631645, - -0.011891636997461319, - 0.018400467932224274, - -0.011010151356458664, - -0.056199342012405396, - -0.022005779668688774, - 0.05189729481935501, - 0.026533037424087524, - 0.032330870628356934, - -0.02206023968756199, - -0.06971227377653122, - 0.06681889295578003, - -0.042676106095314026, - 0.13253949582576752, - -0.06805618852376938, - -0.05376983806490898, - -0.044418513774871826, - 0.0011334531009197235, - -0.02395021542906761, - 0.01614169403910637, - 0.06772264093160629, - 0.03880290314555168, - -0.02249978482723236, - -0.07261064648628235, - 0.11414507031440735, - 0.06347735226154327, - -0.009585547260940075, - -0.06244874373078346, - -0.053595464676618576, - -0.06424856930971146, - -0.004242710769176483, - 0.0030150925740599632, - -0.053490862250328064, - 0.04673640429973602, - -0.023656141012907028, - 0.0003688698634505272, - 0.0835297629237175, - 0.1028333380818367, - 0.07413534820079803, - -0.07562227547168732 - ] - }, - "p244_329.wav": { - "name": "p244", - "embedding": [ - -0.005544627085328102, - 0.06198248267173767, - 0.004634879529476166, - 0.021113816648721695, - -0.044267334043979645, - -0.031414665281772614, - -0.09524384140968323, - 0.07862409204244614, - -0.029118720442056656, - 0.09866597503423691, - -0.07544707506895065, - 0.09305178374052048, - -0.05698026344180107, - -0.12308865785598755, - 0.0180025827139616, - 0.033627789467573166, - 0.009352291002869606, - -0.02268972061574459, - -0.01778477057814598, - -0.04896176978945732, - 0.03435751050710678, - 0.06365825980901718, - 0.02586447075009346, - -0.021655237302184105, - -0.008241991512477398, - 0.07650616019964218, - -0.012857471592724323, - -0.003986007999628782, - -0.022557053714990616, - -0.06080430746078491, - -0.00031503589707426727, - 0.03554786369204521, - -0.022862931713461876, - -0.0228655394166708, - 0.018445748835802078, - 0.021002281457185745, - -0.023799780756235123, - 0.01135361846536398, - -0.02672605589032173, - 0.012114268727600574, - -0.12098908424377441, - 0.030034363269805908, - -0.0048117609694600105, - -0.048177570104599, - 0.06104302033782005, - 0.016689537093043327, - -0.006458019372075796, - 0.016416212543845177, - -0.06254874169826508, - 0.08453187346458435, - 0.061173390597105026, - 0.01850994862616062, - -0.03041110932826996, - -0.01941123604774475, - 0.06710182875394821, - -0.01897074654698372, - -0.07495981454849243, - -0.06148586794734001, - 0.04911886900663376, - 0.062065910547971725, - -0.05005854368209839, - -0.03270219638943672, - 0.04875677451491356, - 0.039867546409368515, - 0.02703641913831234, - 0.055593665689229965, - 0.05901962146162987, - 0.03524057939648628, - -0.011570108123123646, - -0.03959264978766441, - 0.057695675641298294, - 0.07419515401124954, - 0.06387314945459366, - -0.01761275716125965, - 0.013430282473564148, - 0.03664001449942589, - -0.03950544074177742, - -0.008957642130553722, - -0.010413320735096931, - -0.01036157738417387, - -0.03097372129559517, - -0.013436786830425262, - -0.00023613292432855815, - -0.05614519864320755, - -0.0077747986651957035, - 0.03682340309023857, - 0.07967673242092133, - 0.0007643811404705048, - 0.059014905244112015, - 0.026371365413069725, - -0.014461099170148373, - 0.04225132241845131, - -0.05795370414853096, - 0.008060790598392487, - -0.030709654092788696, - -0.01028340682387352, - 0.020751409232616425, - 0.07499875873327255, - 0.017875991761684418, - 0.030727699398994446, - 0.07834219187498093, - -0.007102827075868845, - 0.026036430150270462, - 0.004032354801893234, - -0.10909755527973175, - 0.09570895880460739, - 0.0696415975689888, - -0.04072205349802971, - 0.0034895152784883976, - -0.02699539065361023, - 0.027414733543992043, - 0.04818747192621231, - -0.05155643820762634, - -0.049935758113861084, - -0.01530660130083561, - -0.0020182596053928137, - -0.00699925422668457, - 0.0961560532450676, - 0.015446463599801064, - 0.005732082761824131, - 0.13439252972602844, - -0.09265976399183273, - -0.10652390867471695, - -0.018225042149424553, - -0.006649364717304707, - -0.10694273561239243, - 0.07759647816419601, - 0.07681707292795181, - 0.012503315694630146, - 0.057671286165714264, - 0.11152992397546768, - 0.006875825580209494, - 0.02438422292470932, - -0.03399043157696724, - -0.04218409210443497, - -0.033269450068473816, - -0.03208575397729874, - 5.464367495733313e-05, - 0.07965957373380661, - 0.03992646560072899, - 0.07209324091672897, - 0.006200456526130438, - -0.0037965283263474703, - -0.09806735813617706, - 0.01492305751889944, - 0.076610267162323, - 0.004444792866706848, - -0.024339355528354645, - -0.024795832112431526, - -0.037871815264225006, - -0.053092874586582184, - 0.005128528457134962, - -0.041391272097826004, - 0.06062359735369682, - -0.04469582438468933, - 0.018589405342936516, - 0.11447858065366745, - -0.0017805651295930147, - -0.027430733665823936, - -0.0734269767999649, - -0.031009305268526077, - -0.016635244712233543, - 0.031740203499794006, - -0.09768009185791016, - -0.09541608393192291, - -0.07081269472837448, - 0.06204848363995552, - 0.03061353601515293, - 0.052115004509687424, - 0.044423289597034454, - 0.0016121268272399902, - 0.005247681401669979, - -0.04739367589354515, - 0.043722111731767654, - -0.03980259224772453, - -0.08861198276281357, - -0.03918468579649925, - -0.053784485906362534, - -0.009916325099766254, - 0.06018403172492981, - -0.035982247442007065, - 0.024668967351317406, - -0.0211794376373291, - -0.10341373831033707, - -0.11254493147134781, - 0.0018819079268723726, - 0.02707829140126705, - -0.011820084415376186, - 0.03811441734433174, - 0.02679506316781044, - -0.08152776211500168, - 0.0311566349118948, - 0.013653472065925598, - 0.08790870755910873, - -0.05919070169329643, - 0.0336502380669117, - -0.015940843150019646, - 0.01199861615896225, - 0.07962381839752197, - -0.05437647923827171, - -0.037804629653692245, - -0.06536708027124405, - -0.045384764671325684, - 0.05194753408432007, - -0.005883814301341772, - -0.014137446880340576, - -0.00609972421079874, - 0.003839246230199933, - -0.05598258972167969, - -0.06314468383789062, - 0.04020438715815544, - -0.024574175477027893, - -0.015057406388223171, - -0.08187941461801529, - -0.004326094873249531, - -0.014390842989087105, - 0.07337900251150131, - 0.0031799187418073416, - -0.0037213906180113554, - 0.030000625178217888, - -0.039977043867111206, - 0.028816191479563713, - 0.10328862816095352, - 0.06476470828056335, - 0.0350937619805336, - -0.02926509641110897, - -0.08768477290868759, - 0.04801398143172264, - -0.024401629343628883, - 0.0722629725933075, - -0.006581056397408247, - -0.04384986683726311, - -0.04814082011580467, - 0.0001794517011148855, - -0.002577307168394327, - 0.022349826991558075, - 0.05108978971838951, - 0.060505837202072144, - 0.015153774991631508, - -0.053677525371313095, - 0.0886063203215599, - 0.05088115856051445, - 0.01599227450788021, - -0.034507203847169876, - -0.037383854389190674, - -0.06879597902297974, - -0.02244390733540058, - -0.0009749099845066667, - -0.08880208432674408, - 0.029364068061113358, - -0.015180820599198341, - 0.019148169085383415, - 0.05424491688609123, - 0.09361078590154648, - 0.040511246770620346, - -0.0897696241736412 - ] - }, - "p244_357.wav": { - "name": "p244", - "embedding": [ - 0.06972910463809967, - 0.06739023327827454, - -0.06170198693871498, - 0.018775634467601776, - -0.03588758781552315, - 0.0649954304099083, - -0.13766621053218842, - 0.10362699627876282, - -0.03624305874109268, - 0.10524637997150421, - -0.046022526919841766, - 0.09719941020011902, - -0.002834675367921591, - -0.10584241151809692, - -0.0377446785569191, - 0.03572224825620651, - -0.0021057967096567154, - 0.0013607954606413841, - -0.041360754519701004, - 0.009375831112265587, - 0.03295276686549187, - 0.03323345631361008, - 0.012944510206580162, - -0.041706379503011703, - 0.025914648547768593, - 0.030174151062965393, - 0.014126356691122055, - 0.02248372882604599, - 0.0036759087815880775, - 0.0009140335023403168, - -0.0012793485075235367, - 0.0893627256155014, - -0.0299682654440403, - 0.02160615473985672, - 0.04417218267917633, - 0.011334434151649475, - -0.01733045093715191, - -0.08580219745635986, - 0.0105465492233634, - -0.0010910485871136189, - -0.01050049439072609, - 0.08448060601949692, - 0.07084998488426208, - -0.00499091949313879, - 0.0025040628388524055, - -0.006714037619531155, - -0.005206972360610962, - -0.05556436628103256, - -0.0966198742389679, - 0.1689758151769638, - 0.0143450191244483, - 0.03579188883304596, - -0.10329142212867737, - -0.015243053436279297, - 0.09332321584224701, - 0.008697101846337318, - -0.04352220520377159, - -0.08054336905479431, - 0.026705633848905563, - 0.14721164107322693, - -0.002385042142122984, - -0.05746109038591385, - 0.018784577026963234, - 0.10421192646026611, - 0.039660222828388214, - 0.0409710593521595, - 0.10622353851795197, - 0.09024246037006378, - 0.002522810362279415, - 0.024903880432248116, - 0.02735091745853424, - 0.060085512697696686, - -0.0017608420457690954, - 0.003584047546610236, - 0.02670731022953987, - -0.03584801405668259, - -0.02187918871641159, - 0.021168118342757225, - -0.00762348435819149, - -0.05962866172194481, - -0.013089446350932121, - 0.02323010191321373, - 0.027965519577264786, - 0.06914739310741425, - -0.05049928277730942, - 0.02922941744327545, - 0.028659392148256302, - -0.05947839841246605, - 0.05637276545166969, - 0.05255650728940964, - -0.010411053895950317, - -0.008278166875243187, - -0.04766537994146347, - -0.12366069108247757, - 0.030465014278888702, - 0.00013085361570119858, - 0.032128140330314636, - 0.04259221628308296, - 0.021499060094356537, - 0.00375279039144516, - 0.0713067501783371, - 0.02708558738231659, - -0.008532686159014702, - -0.006281804293394089, - -0.04381237551569939, - 0.12141285836696625, - 0.10051020979881287, - 0.0014802692458033562, - 0.03445610776543617, - -0.06818720698356628, - 0.017130697146058083, - 0.049766018986701965, - -0.101842001080513, - -0.08296908438205719, - 0.06256444752216339, - 0.03921586647629738, - 0.03046710044145584, - 0.10825768113136292, - 0.011512940749526024, - 0.005230730399489403, - 0.05423043668270111, - -0.08202383667230606, - -0.0667533352971077, - -0.02116292156279087, - 0.03881089389324188, - -0.03389594331383705, - 0.024548720568418503, - 0.05810442566871643, - -0.016244828701019287, - -0.029061466455459595, - 0.05179385095834732, - 0.010683749802410603, - 0.00983046367764473, - -0.006054816767573357, - 0.02387930080294609, - 0.08193044364452362, - -0.005693188868463039, - -0.013211306184530258, - 0.027593664824962616, - 0.051229268312454224, - 0.04209590330719948, - 0.01836562156677246, - -0.018793325871229172, - -0.11360463500022888, - -0.008760695345699787, - 0.0781717598438263, - 0.05345386266708374, - -0.056430596858263016, - -0.03362216427922249, - -0.028318308293819427, - -0.049307338893413544, - -0.009060056880116463, - -0.011526191607117653, - 0.07274100929498672, - 0.017242776229977608, - 0.032199710607528687, - 0.08604419976472855, - -0.016052665188908577, - 0.018490906804800034, - -0.024630920961499214, - 0.023259969428181648, - 0.04637088626623154, - 0.033066749572753906, - -0.0375385507941246, - -0.07127895951271057, - -0.009788970462977886, - 0.016655512154102325, - -0.028947461396455765, - -0.004227755591273308, - 0.03065069019794464, - -0.009251004084944725, - 0.0477210097014904, - -0.0722513496875763, - 0.012178759090602398, - -0.1234005019068718, - 0.01049613207578659, - -0.00025842548348009586, - -0.035158053040504456, - -0.01364965084940195, - 0.09684853255748749, - 0.04605598747730255, - 0.056741323322057724, - -0.01744954288005829, - -0.05632244795560837, - -0.021669741719961166, - 0.05704730749130249, - 0.08692049980163574, - -0.030953887850046158, - 0.0007817652076482773, - 0.01813158392906189, - 0.045482292771339417, - 0.004471767693758011, - 0.07399888336658478, - 0.040188610553741455, - -0.028395257890224457, - -0.06494726985692978, - -0.045659083873033524, - 0.10116519033908844, - 0.0771910771727562, - -0.09601793438196182, - -0.05631272494792938, - -0.027462515980005264, - -0.05516643449664116, - -0.02065207064151764, - -0.0525970533490181, - 0.012513198889791965, - 0.04407810419797897, - -0.02918807417154312, - -0.13304215669631958, - -0.10536287724971771, - 0.03618479520082474, - -0.05555425584316254, - 0.021637538447976112, - -0.06295222043991089, - 0.037156254053115845, - 0.09378945827484131, - 0.020421963185071945, - -0.022969432175159454, - -0.03247111290693283, - -0.01447397843003273, - -0.07073706388473511, - -0.016013137996196747, - 0.0003811251372098923, - 0.023362331092357635, - -0.09457676112651825, - 0.03389350324869156, - -0.048120371997356415, - 0.07254493236541748, - -0.05955251678824425, - 0.1370476484298706, - 0.009384021162986755, - -0.05852793529629707, - -0.09808972477912903, - 0.0009142011404037476, - -0.03109685331583023, - 0.04899543523788452, - 0.022091086953878403, - 0.021921755746006966, - 0.02702271193265915, - -0.07844947278499603, - 0.0810246467590332, - 0.07411861419677734, - -0.027226194739341736, - -0.09629100561141968, - -0.023695094510912895, - -0.013731062412261963, - 0.0657021701335907, - 0.0005412332247942686, - -0.0006784871220588684, - 0.0008903555572032928, - 0.03201688826084137, - -0.020708387717604637, - 0.06397310644388199, - 0.0922405943274498, - 0.048202451318502426, - -0.09531234204769135 - ] - }, - "p244_016.wav": { - "name": "p244", - "embedding": [ - 0.04051810875535011, - 0.06690486520528793, - -0.033708859235048294, - 0.03671709820628166, - -0.03845207020640373, - 0.032780032604932785, - -0.14912444353103638, - 0.13018101453781128, - -0.0010805726051330566, - 0.12852822244167328, - -0.04286907985806465, - 0.10912932455539703, - -0.00573818851262331, - -0.177122101187706, - 0.0028319985140115023, - 0.051830168813467026, - -0.030473405495285988, - -0.05070249363780022, - -0.010931533761322498, - -0.016053451225161552, - 0.0456344299018383, - 0.06058346852660179, - 0.01461214479058981, - -0.004392530303448439, - 0.014387959614396095, - 0.06585042923688889, - -0.009662941098213196, - 0.0324079766869545, - 0.007896742783486843, - -0.050136029720306396, - -0.026401950046420097, - 0.08292513340711594, - -0.04552718997001648, - 0.008650950156152248, - 0.03522353619337082, - -0.013688315637409687, - -0.015335598960518837, - -0.06033455207943916, - -0.02980225160717964, - 0.009661932475864887, - -0.05967609956860542, - 0.08095196634531021, - 0.03956491872668266, - -0.034930385649204254, - 0.035889722406864166, - 0.011980006471276283, - -0.01231046486645937, - -0.04335959628224373, - -0.10692300647497177, - 0.1572565734386444, - 0.08295287936925888, - 0.0073030912317335606, - -0.0570632703602314, - -0.04932660609483719, - 0.08073550462722778, - 0.008689356036484241, - -0.0966644138097763, - -0.0378798246383667, - 0.07101687043905258, - 0.1358330249786377, - -0.019165491685271263, - -0.02883703075349331, - 0.05291098356246948, - 0.11967045068740845, - 0.06932578235864639, - 0.06779652088880539, - 0.08289850503206253, - 0.11162374168634415, - -0.019288862124085426, - -0.0031644494738429785, - 0.04786653816699982, - 0.08686845749616623, - 0.04189016669988632, - -0.0001112177997129038, - 0.01635715179145336, - 0.008836068212985992, - -0.028658390045166016, - -0.01963823474943638, - -0.015792587772011757, - -0.01580667681992054, - 0.0040189181454479694, - 0.008919058367609978, - 0.014408099465072155, - 0.05892181396484375, - -0.025555426254868507, - 0.04514877125620842, - 0.05674052983522415, - -0.022173216566443443, - 0.05973997339606285, - 0.011843579821288586, - 0.024693438783288002, - 0.0603720061480999, - -0.09063177555799484, - -0.06547486037015915, - 0.03342488408088684, - 0.005790857598185539, - 0.029917040839791298, - 0.0837230235338211, - 0.05385090783238411, - -0.01909828558564186, - 0.12960182130336761, - 0.023425666615366936, - -0.021913761273026466, - 0.019606955349445343, - -0.0787922590970993, - 0.11407951265573502, - 0.07720455527305603, - -0.027124259620904922, - 0.05694260820746422, - -0.07036172598600388, - 0.06096518784761429, - 0.04461970180273056, - -0.13190896809101105, - -0.058255910873413086, - 0.055646199733018875, - 0.028786802664399147, - -0.016899121925234795, - 0.1520422101020813, - 0.02525480091571808, - 0.05128249153494835, - 0.10620071738958359, - -0.09688061475753784, - -0.06232024356722832, - -0.02122008055448532, - 0.06690078973770142, - -0.0887972041964531, - 0.0786643847823143, - 0.048729509115219116, - -0.028080791234970093, - 0.013619333505630493, - 0.0625675618648529, - -0.0130501389503479, - 0.017447112128138542, - -0.014992785640060902, - -0.024081243202090263, - 0.028229236602783203, - -0.0367024801671505, - 0.003026180434972048, - 0.016970409080386162, - 0.008277904242277145, - 0.044564470648765564, - -0.01177924033254385, - -0.0393252819776535, - -0.14389453828334808, - 0.018038541078567505, - 0.027318662032485008, - 0.09478374570608139, - -0.013233949430286884, - -0.03757332265377045, - -0.0450616255402565, - -0.06943442672491074, - -0.0020399573259055614, - -0.02811126410961151, - 0.05477302893996239, - -0.014403223991394043, - -0.0010520702926442027, - 0.08142606914043427, - 0.020454496145248413, - 0.011113223619759083, - -0.025445638224482536, - -0.038584448397159576, - 0.007810632232576609, - 0.04612548276782036, - -0.07453037053346634, - -0.07559381425380707, - -0.014829359948635101, - 0.02373846247792244, - -0.018207039684057236, - 0.0480978861451149, - 0.037044707685709, - 0.03864092379808426, - 0.01082706544548273, - -0.08361036330461502, - 0.00647435337305069, - -0.09939318150281906, - -0.08051186054944992, - -0.00996298249810934, - 0.013587194494903088, - -0.019608015194535255, - 0.08560257405042648, - 0.01767372153699398, - 0.05805790051817894, - -0.027385732159018517, - -0.04634594917297363, - -0.08442296087741852, - 0.036416199058294296, - 0.06011306121945381, - -0.018580064177513123, - 0.03815450146794319, - 0.0541682243347168, - -0.026287520304322243, - 0.02207903191447258, - 0.04216459393501282, - 0.09922679513692856, - -0.011121436953544617, - 0.004603381734341383, - -0.06368358433246613, - 0.1052146926522255, - 0.09675245732069016, - -0.06895194947719574, - -0.05487356707453728, - -0.020620230585336685, - -0.08344074338674545, - 0.01203469093888998, - -0.019137948751449585, - 0.013086751103401184, - 0.012765067629516125, - 0.003509512171149254, - -0.11139048635959625, - -0.085530124604702, - 0.053799260407686234, - -0.07429026067256927, - -0.0024241183418780565, - -0.09297332912683487, - 0.04146304354071617, - 0.10614720731973648, - 0.045611411333084106, - -0.028677864000201225, - -0.03646695613861084, - 0.04328562691807747, - -0.022161992266774178, - 0.026895800605416298, - 0.07181604951620102, - 0.05712796375155449, - -0.1235656887292862, - -0.007126865442842245, - -0.06264682859182358, - 0.038573626428842545, - -0.05264133960008621, - 0.12364890426397324, - 0.03203369304537773, - -0.05668767914175987, - -0.0939750075340271, - 0.039070554077625275, - 0.009730945341289043, - 0.05214281752705574, - 0.012974734418094158, - 0.05390125513076782, - 0.06048962101340294, - -0.07861433178186417, - 0.10344332456588745, - 0.05393049865961075, - -0.019272439181804657, - -0.06681125611066818, - -0.04907776042819023, - -0.02446931041777134, - 0.04851621761918068, - 0.021766094490885735, - -0.07594799250364304, - -0.033533915877342224, - 0.02563137374818325, - -0.0046650259755551815, - 0.048620808869600296, - 0.14016841351985931, - 0.04956796392798424, - -0.13117723166942596 - ] - }, - "p244_337.wav": { - "name": "p244", - "embedding": [ - 0.06357072293758392, - 0.12591025233268738, - 0.07006644457578659, - -0.015215903520584106, - 0.02714518830180168, - 0.03264628350734711, - -0.06606484949588776, - 0.06581936031579971, - 0.05310523509979248, - 0.09040797501802444, - -0.09511347115039825, - 0.035431869328022, - -0.04092997685074806, - -0.11102703213691711, - -0.01735813170671463, - 0.017631951719522476, - -0.07755692303180695, - 0.011045120656490326, - -0.03363728150725365, - -0.03453698009252548, - -0.014923900365829468, - -0.0030812565237283707, - 0.07160196453332901, - -0.04828950762748718, - 0.002502996474504471, - 0.03974238783121109, - -0.01536097563803196, - -0.0005635404959321022, - -0.009577825665473938, - -0.06541632115840912, - 0.02475626766681671, - 0.022668685764074326, - 0.005876651033759117, - 0.03617662936449051, - 0.030242349952459335, - 0.007141558453440666, - 0.003515218384563923, - -0.029527120292186737, - -0.0292219165712595, - 0.07796933501958847, - -0.009438793174922466, - 0.0568702295422554, - 0.023875031620264053, - -0.05550827458500862, - 0.0599316842854023, - 0.011658438481390476, - -0.0370093509554863, - -0.010489502921700478, - -0.09112150967121124, - 0.12110947072505951, - 0.021221477538347244, - 0.020916149020195007, - -0.06362378597259521, - -0.001623939722776413, - 0.05629764497280121, - -0.02382519282400608, - -0.08513681590557098, - 0.0033728405833244324, - 0.035544488579034805, - 0.02385822683572769, - -0.01722223497927189, - -0.03426945582032204, - -0.024537622928619385, - 0.025006119161844254, - 0.0008355386089533567, - 0.03662567958235741, - 0.06661416590213776, - 0.054919660091400146, - -0.027265775948762894, - 0.04690919816493988, - 0.034029848873615265, - -0.008298519998788834, - 0.06274469941854477, - 9.690411388874054e-05, - 0.016773881390690804, - -0.0643966943025589, - -0.01949666626751423, - -0.020516373217105865, - 0.024980969727039337, - -0.036277443170547485, - 0.03005598857998848, - -0.03174200654029846, - 0.027659287676215172, - 0.018558474257588387, - -0.032030120491981506, - -0.023672999814152718, - 0.020671119913458824, - 0.03555385023355484, - 0.062437884509563446, - 0.05043475329875946, - 0.03648427873849869, - 0.056479066610336304, - -0.03731931373476982, - -0.09246250241994858, - -0.013015715405344963, - -0.03496254235506058, - 0.04955560714006424, - 0.017191331833600998, - 0.043338462710380554, - -0.0008696811273694038, - 0.07697781920433044, - 0.030423954129219055, - -0.01410999707877636, - -0.025233402848243713, - -0.0676155835390091, - 0.03485284000635147, - 0.08324001729488373, - -0.011431500315666199, - 0.02322409860789776, - -0.0007219631224870682, - 0.0694468766450882, - 0.060692198574543, - -0.04339031130075455, - -0.00032777339220046997, - -0.020498031750321388, - 0.02604079432785511, - 0.04291475564241409, - 0.06246257573366165, - 0.006132986396551132, - 0.02121514081954956, - 0.11166727542877197, - -0.06699950993061066, - 0.030972689390182495, - 0.003795386292040348, - -0.012878019362688065, - -0.0490633100271225, - 0.04782489687204361, - 0.020377017557621002, - -0.003418991342186928, - 0.0001584421843290329, - 0.02110578492283821, - 0.02077466994524002, - 0.003818400204181671, - -0.054585035890340805, - 0.0018689632415771484, - 0.02700348012149334, - -0.02421363815665245, - 0.022694306448101997, - 0.03226364403963089, - 0.04870469868183136, - 0.016613781452178955, - 0.06239878386259079, - -0.0503784716129303, - -0.015207886695861816, - 0.03068344108760357, - 0.012323945760726929, - -0.009966287761926651, - -0.012963440269231796, - -0.04543355852365494, - -0.02260706201195717, - -0.002241317182779312, - 0.09423957020044327, - -0.025701560080051422, - 0.03858235850930214, - 0.04459567740559578, - -0.001337686786428094, - 0.1019161120057106, - 0.034563373774290085, - -0.021709445863962173, - -0.04325784742832184, - -0.07394756376743317, - -0.010701078921556473, - 0.03200690075755119, - -0.1614108383655548, - -0.021555878221988678, - -0.03734583780169487, - -0.03584977611899376, - 0.006048415321856737, - 0.013734642416238785, - 0.07061280310153961, - -0.027480563148856163, - 0.007907764054834843, - 0.0013669952750205994, - 0.011461102403700352, - -0.02868250384926796, - -0.11659567058086395, - 0.020381135866045952, - -0.047726765275001526, - 0.01552228257060051, - 0.07287449389696121, - -0.04410259798169136, - 0.004859298933297396, - -0.04880005866289139, - -0.04692478105425835, - 0.015201244503259659, - 0.07477204501628876, - 0.017476705834269524, - -2.1323212422430515e-05, - 0.020455945283174515, - 0.034225694835186005, - -0.026310931891202927, - 0.05604342371225357, - -0.009844496846199036, - 0.0813305675983429, - -0.06089827045798302, - 0.027818668633699417, - -0.005416626110672951, - 0.014772187918424606, - 0.06832297146320343, - -0.021546149626374245, - -0.11031489074230194, - -0.06080133467912674, - -0.02116691693663597, - 0.027910171076655388, - -0.016317958012223244, - -0.03824947774410248, - 0.007023532874882221, - -0.011336670257151127, - -0.013859203085303307, - -0.09113756567239761, - 0.02342355065047741, - 0.02837616205215454, - 0.004606687463819981, - -0.06532706320285797, - 0.027152802795171738, - -0.03189672529697418, - 0.02507844939827919, - -0.032639749348163605, - 0.07138194888830185, - 0.0022166483104228973, - -0.014683031477034092, - -0.0430789440870285, - -0.01697285659611225, - 0.031949955970048904, - 0.011931685730814934, - -0.03563685342669487, - -0.0554065927863121, - 0.047775380313396454, - 0.007679596543312073, - 0.07990893721580505, - 0.03215881809592247, - -0.011561330407857895, - 0.015731219202280045, - 0.0026624388992786407, - -0.06192142516374588, - 0.003511176211759448, - 0.033074114471673965, - 0.005636034533381462, - 0.03974713757634163, - -0.024308715015649796, - 0.03552728891372681, - 0.027024682611227036, - 0.01616571843624115, - -0.007707834243774414, - -0.014502554200589657, - -0.06470315903425217, - -0.043164581060409546, - -0.023556098341941833, - -0.04584721848368645, - 0.021824803203344345, - -0.022979341447353363, - 0.06951957941055298, - 0.01898857206106186, - 0.08085615932941437, - 0.011693358421325684, - -0.047889843583106995 - ] - }, - "p244_396.wav": { - "name": "p244", - "embedding": [ - 0.06517630815505981, - 0.10721991956233978, - -0.026210322976112366, - 0.02655503898859024, - -0.03522571548819542, - 0.06942230463027954, - -0.11102457344532013, - 0.12470437586307526, - -0.028148166835308075, - 0.16116848587989807, - -0.05939150229096413, - 0.12537911534309387, - 0.002466081641614437, - -0.16047430038452148, - -0.025566497817635536, - 0.039198294281959534, - -0.044055912643671036, - -0.003115265630185604, - -0.04788688197731972, - 0.003106349613517523, - 0.04585167393088341, - 0.04467109218239784, - 0.04544520378112793, - -0.04946667701005936, - 0.02919802814722061, - 0.05480317771434784, - -0.0013365903869271278, - 0.04785804823040962, - 0.011247104965150356, - -0.10752403736114502, - -0.04367070645093918, - 0.10983128845691681, - -0.042708106338977814, - 0.04068087786436081, - 0.05139332264661789, - -0.01772719994187355, - -0.012709896080195904, - -0.06883697211742401, - -0.013414707034826279, - 0.005680189933627844, - -0.022992700338363647, - 0.06731124222278595, - 0.008581933565437794, - -0.03604145720601082, - 0.0368812121450901, - 0.004855903796851635, - -0.019964639097452164, - -0.04552185535430908, - -0.07436802983283997, - 0.1696459949016571, - 0.06883874535560608, - 0.011203248053789139, - -0.06979367136955261, - -0.07916714251041412, - 0.07860253751277924, - -0.0017830193974077702, - -0.11333741247653961, - -0.027933157980442047, - 0.04430707171559334, - 0.14919014275074005, - -0.010751070454716682, - -0.028372839093208313, - 0.03801906853914261, - 0.11634698510169983, - 0.040157102048397064, - 0.088083915412426, - 0.0870276689529419, - 0.08878590166568756, - 0.006489753723144531, - 0.05652322992682457, - 0.028659621253609657, - 0.08469879627227783, - 0.06456289440393448, - -0.010897435247898102, - 0.03275791183114052, - -0.024754337966442108, - -0.04490974545478821, - -0.02952863834798336, - -0.025987200438976288, - -0.026346305385231972, - -0.007786503527313471, - 0.006081285420805216, - 0.027438336983323097, - 0.03851122781634331, - -0.030722923576831818, - 0.03364578261971474, - 0.024736011400818825, - -0.04859985038638115, - 0.048089176416397095, - 0.038405902683734894, - 0.03868989273905754, - 0.04249880835413933, - -0.08509248495101929, - -0.11658293008804321, - 0.029262281954288483, - 0.014601492322981358, - 0.017014412209391594, - 0.08175350725650787, - 0.049749284982681274, - -0.027871903032064438, - 0.09385992586612701, - 0.03826487809419632, - -0.013534833677113056, - 0.0005872240290045738, - -0.07795710116624832, - 0.11196853220462799, - 0.10102922469377518, - -0.016416946426033974, - 0.046119365841150284, - -0.06792338192462921, - 0.08339055627584457, - 0.06787735223770142, - -0.14817942678928375, - -0.08350761979818344, - 0.019396947696805, - -0.024958504363894463, - 0.0075767082162201405, - 0.09991246461868286, - 0.02037220448255539, - 0.04211430996656418, - 0.08934465050697327, - -0.10430359840393066, - -0.06072365492582321, - -0.04291628673672676, - 0.055879466235637665, - -0.09226059913635254, - 0.0775848776102066, - 0.03358490392565727, - -0.0186989214271307, - -0.011364801786839962, - 0.06770117580890656, - -0.015590742230415344, - 0.01835024170577526, - 0.008083555847406387, - -0.04789236560463905, - 0.022914139553904533, - -0.058133624494075775, - 0.013061843812465668, - 0.012555889785289764, - 0.02218298800289631, - 0.05212775990366936, - -0.01836366392672062, - -0.0316888652741909, - -0.09081701934337616, - 0.0176241472363472, - 0.04111219942569733, - 0.04795978218317032, - -0.01748806983232498, - -0.03008992224931717, - -0.014394992962479591, - -0.05571184307336807, - 0.03071283921599388, - -0.03396749123930931, - 0.05361219868063927, - 0.01325300894677639, - 0.015651697292923927, - 0.11935000866651535, - 0.008567150682210922, - -0.001899931812658906, - -0.03708351030945778, - -0.019476210698485374, - 0.031346894800662994, - 0.058785729110240936, - -0.08987122774124146, - -0.06835330277681351, - -0.0011888910084962845, - -0.016794703900814056, - -0.0119209298864007, - 0.04924074932932854, - 0.0498056560754776, - 0.018354468047618866, - 0.03197338059544563, - -0.059796907007694244, - -0.02137620747089386, - -0.11094969511032104, - -0.06660529971122742, - -0.026609044522047043, - -0.053207144141197205, - -0.022704333066940308, - 0.09328952431678772, - 0.02344149351119995, - 0.03072524629533291, - -0.0297149159014225, - -0.04843574017286301, - -0.07187207788228989, - 0.05697520077228546, - 0.06802003085613251, - 0.0008193914545699954, - 0.022981014102697372, - 0.03956327214837074, - -0.0033469372428953648, - 0.033217623829841614, - 0.05818531662225723, - 0.08356843888759613, - -0.017114058136940002, - 0.001056239940226078, - -0.09554487466812134, - 0.10885017365217209, - 0.11455187201499939, - -0.07943351566791534, - -0.09818488359451294, - -0.03901026397943497, - -0.08240342885255814, - 0.02317032217979431, - -0.035247549414634705, - 0.0040632588788867, - 0.03994818031787872, - -0.01680007204413414, - -0.1005466878414154, - -0.09014047682285309, - 0.10579557716846466, - -0.06792503595352173, - -0.021382413804531097, - -0.0751475915312767, - 0.0429789237678051, - 0.0774446502327919, - 0.04907786846160889, - -0.041583120822906494, - 0.006374651566147804, - 0.06434763967990875, - -0.049181804060935974, - 0.0031090732663869858, - 0.04416338726878166, - 0.023342810571193695, - -0.09791085124015808, - 0.01773425191640854, - -0.04863790050148964, - 0.04365210235118866, - -0.09506496787071228, - 0.14368534088134766, - -0.005144298542290926, - -0.07950660586357117, - -0.09214206039905548, - 0.07147965580224991, - -0.01729930005967617, - 0.02507266029715538, - 0.029670685529708862, - 0.051528457552194595, - 0.03800062835216522, - -0.11955156922340393, - 0.09893016517162323, - 0.03362716734409332, - 0.00511011341586709, - -0.0811774730682373, - -0.07450739294290543, - -0.0336877778172493, - 0.03602423518896103, - 0.0038190397899597883, - -0.07339638471603394, - 0.01095831673592329, - 0.015445513650774956, - 0.0006300406530499458, - 0.05763588100671768, - 0.13967403769493103, - 0.04407641664147377, - -0.12899541854858398 - ] - }, - "p244_266.wav": { - "name": "p244", - "embedding": [ - 0.06275972723960876, - 0.10458409786224365, - -0.016859009861946106, - 0.041719552129507065, - -0.05976272374391556, - 0.08425871282815933, - -0.1139720231294632, - 0.11842691898345947, - -0.06820785999298096, - 0.1367681324481964, - -0.059513628482818604, - 0.11924424767494202, - -0.029219742864370346, - -0.15291652083396912, - -0.055678531527519226, - 0.056495338678359985, - -0.05656929314136505, - -0.03382333368062973, - -0.053548652678728104, - -0.012108069844543934, - 0.019336778670549393, - 0.026876257732510567, - 0.06881733238697052, - 0.010827560909092426, - 0.03989651799201965, - 0.05641339346766472, - -0.0027742963284254074, - 0.055488113313913345, - 0.030304603278636932, - -0.08616435527801514, - -0.050449904054403305, - 0.09712797403335571, - -0.04303281009197235, - 0.01880800724029541, - 0.034522153437137604, - -0.0034501992631703615, - 0.018394574522972107, - -0.07735978066921234, - -0.03030386194586754, - -0.003677834989503026, - -0.027858294546604156, - 0.08223546296358109, - 0.020708100870251656, - -0.034314870834350586, - 0.022450122982263565, - -0.03282851725816727, - -0.024700362235307693, - -0.028004543855786324, - -0.10558931529521942, - 0.15091395378112793, - 0.06254488974809647, - 0.008824310265481472, - -0.0832078605890274, - -0.07657890021800995, - 0.11659140139818192, - -0.027609556913375854, - -0.13063302636146545, - -0.03658204525709152, - 0.05352015420794487, - 0.17844796180725098, - -0.015451924875378609, - -0.00901712104678154, - 0.024675089865922928, - 0.12304750084877014, - 0.0773555338382721, - 0.07592643797397614, - 0.0871802270412445, - 0.09822160005569458, - -0.003057264257222414, - 0.035391438752412796, - 0.052185989916324615, - 0.0679408460855484, - 0.03263004869222641, - -0.005798683501780033, - 0.01762537658214569, - -0.021588413044810295, - -0.03007441759109497, - -0.006682452280074358, - -0.020017992705106735, - -0.03128517419099808, - -0.040192827582359314, - 0.0009146551601588726, - 0.003359758760780096, - 0.02354622073471546, - -0.03548082709312439, - 0.0556405633687973, - 0.008179174736142159, - -0.03888179361820221, - 0.062490176409482956, - 0.05662870407104492, - 0.006768522784113884, - 0.047149911522865295, - -0.0548359751701355, - -0.08042454719543457, - 0.0018875326495617628, - 0.010982846841216087, - 0.012556401081383228, - 0.0741402804851532, - 0.042389899492263794, - -0.019322898238897324, - 0.11022689938545227, - 0.06383726000785828, - 0.005732770077884197, - 0.01422690600156784, - -0.08839423209428787, - 0.11207915842533112, - 0.08923239260911942, - -0.011756308376789093, - 0.05343710258603096, - -0.013429244048893452, - 0.06370701640844345, - 0.08137749135494232, - -0.1313275843858719, - -0.08043543994426727, - 0.024216052144765854, - -0.012891063466668129, - 0.01359106320887804, - 0.08228619396686554, - 0.0016628594603389502, - 0.032983340322971344, - 0.07362677901983261, - -0.07221278548240662, - -0.050070129334926605, - -0.01869276538491249, - 0.06632186472415924, - -0.06181447207927704, - 0.0451107956469059, - 0.04258367419242859, - -0.01631988026201725, - -0.019103124737739563, - 0.0688035786151886, - -0.005099877715110779, - -0.00914565846323967, - 0.05334053188562393, - -0.06745366752147675, - 0.030854910612106323, - -0.021866487339138985, - 0.00345616415143013, - 0.06318770349025726, - 0.034494396299123764, - 0.051546044647693634, - -0.020824428647756577, - -0.008118115365505219, - -0.08988383412361145, - 0.0050772977992892265, - 0.05215409770607948, - 0.06953738629817963, - -0.010564915835857391, - -0.01703966036438942, - -0.040006499737501144, - -0.05445738881826401, - 0.04455437883734703, - -0.011390249244868755, - 0.09923287481069565, - -0.019289400428533554, - 0.01112386118620634, - 0.11131057143211365, - 0.007414557505398989, - -0.009932797402143478, - -0.04962749779224396, - 0.004140329547226429, - 0.020935652777552605, - 0.05963125824928284, - -0.05633137747645378, - -0.07001110911369324, - 0.021303271874785423, - 0.018475018441677094, - -0.01819244772195816, - 0.06341169029474258, - 0.04877929389476776, - 0.00554093811661005, - 0.03536195680499077, - -0.05592143535614014, - 0.015182938426733017, - -0.08435918390750885, - -0.03751921281218529, - -0.01346663199365139, - -0.04503343254327774, - -0.026056470349431038, - 0.08853857219219208, - 0.06391701102256775, - 0.04124690219759941, - 0.005767180118709803, - -0.08943105489015579, - -0.07201839983463287, - 0.06090395152568817, - 0.046102941036224365, - 0.006043666508048773, - 0.032095517963171005, - 0.07614442706108093, - -0.01004391722381115, - 0.05742378905415535, - 0.07475529611110687, - 0.05713532119989395, - -0.029169835150241852, - -0.013026731088757515, - -0.08042380958795547, - 0.06478587538003922, - 0.09427034854888916, - -0.1158149242401123, - -0.092522531747818, - -0.044841885566711426, - -0.06462964415550232, - 0.03804730623960495, - -0.024530325084924698, - 0.018008101731538773, - 0.0534059964120388, - -0.03458288311958313, - -0.10203512758016586, - -0.1257103830575943, - 0.14744949340820312, - -0.0744117796421051, - -0.008387519046664238, - -0.061107221990823746, - 0.022889189422130585, - 0.06047376990318298, - 0.03595353662967682, - -0.01875624805688858, - 0.030477866530418396, - 0.05256212502717972, - -0.05230649560689926, - -0.004871675278991461, - 0.07330705225467682, - -0.0023340322077274323, - -0.1180487796664238, - 0.01086245384067297, - -0.07277999073266983, - 0.08402067422866821, - -0.050315700471401215, - 0.175079345703125, - -0.009606784209609032, - -0.04910197854042053, - -0.08703337609767914, - 0.04491184651851654, - -0.05352848768234253, - 0.05318020284175873, - 0.0428909957408905, - 0.0743495300412178, - 0.021179206669330597, - -0.06641532480716705, - 0.10372385382652283, - 0.0538320317864418, - -0.04913196340203285, - -0.08250683546066284, - -0.04653572291135788, - -0.0360957607626915, - 0.03450682386755943, - 0.004789314232766628, - -0.07222826778888702, - 0.01192548405379057, - 0.011586499400436878, - -0.024299541488289833, - 0.08379250019788742, - 0.13765215873718262, - 0.09894561767578125, - -0.10718527436256409 - ] - }, - "p244_088.wav": { - "name": "p244", - "embedding": [ - 0.04236525297164917, - 0.0754239484667778, - -0.045186206698417664, - 0.017724841833114624, - -0.05314382165670395, - 0.039793021976947784, - -0.10560227930545807, - 0.08876095712184906, - -0.024642176926136017, - 0.13936582207679749, - -0.056469183415174484, - 0.11251355707645416, - -0.025432568043470383, - -0.131851464509964, - 0.016572829335927963, - 0.05110277235507965, - 0.00490798382088542, - 0.002525883726775646, - -0.022889379411935806, - -0.011963474564254284, - 0.03135685250163078, - 0.02465794049203396, - 0.027101527899503708, - -0.0571042001247406, - 0.030960900709033012, - 0.06672944873571396, - -0.020442238077521324, - -0.0123983733355999, - -0.0274873785674572, - -0.04356111213564873, - -0.014801619574427605, - 0.0810440331697464, - -0.049000270664691925, - 0.021360039710998535, - 0.047575559467077255, - 0.014525718986988068, - -0.05328334867954254, - -0.04646814987063408, - 0.018019547685980797, - -0.005874117370694876, - -0.06566236168146133, - 0.07170110940933228, - 0.021989118307828903, - -0.05264194309711456, - 0.03709504008293152, - -0.02321106567978859, - -0.01464831456542015, - 0.0007167396834120154, - -0.06337251514196396, - 0.1360478699207306, - 0.03794759511947632, - 0.024134796112775803, - -0.08403553068637848, - -0.035290926694869995, - 0.06470327079296112, - 0.019074328243732452, - -0.10654830187559128, - -0.058657824993133545, - 0.04420551657676697, - 0.11027829349040985, - -0.004422395955771208, - -0.03993586450815201, - 0.021196871995925903, - 0.07929973304271698, - 0.022144824266433716, - 0.0743233785033226, - 0.06557686626911163, - 0.11367546021938324, - 0.004306766204535961, - 0.033876389265060425, - 0.04230637475848198, - 0.07662834227085114, - 0.05118350312113762, - -0.013198355212807655, - 0.01101980172097683, - -0.029172873124480247, - -0.03249881789088249, - -0.01671185903251171, - -0.015918301418423653, - -0.05581733211874962, - -0.04373576492071152, - -0.03005111590027809, - 0.017875809222459793, - 0.012417186051607132, - -0.012060903012752533, - 0.0020107373129576445, - 0.10785671323537827, - -0.047186147421598434, - 0.04970058426260948, - 0.06769898533821106, - -0.01986728049814701, - 0.022695254534482956, - -0.08581473678350449, - -0.06847154349088669, - 0.011790100485086441, - 0.0014627976343035698, - 0.02513846568763256, - 0.0700957402586937, - 0.03988618776202202, - 0.02200813964009285, - 0.0703100636601448, - 0.023964952677488327, - 0.014909503981471062, - -0.010527588427066803, - -0.060880087316036224, - 0.1303771585226059, - 0.10453125834465027, - -0.0334869921207428, - 0.029558852314949036, - -0.04625929892063141, - 0.028897378593683243, - 0.05807436630129814, - -0.09177964180707932, - -0.057013027369976044, - -0.010535283014178276, - -0.019309118390083313, - -0.0007236426463350654, - 0.11596311628818512, - 0.02552586793899536, - 0.0073189823888242245, - 0.10318364948034286, - -0.11327483505010605, - -0.09830202162265778, - -0.02680278941988945, - 0.010000979527831078, - -0.0974183902144432, - 0.06776617467403412, - 0.0634193941950798, - 0.009705807082355022, - 0.009710841812193394, - 0.07640868425369263, - 0.015296265482902527, - 0.04788470268249512, - -0.02279328927397728, - -0.004113178700208664, - 0.019310237839818, - -0.02490140311419964, - 0.022229334339499474, - 0.07778877764940262, - 0.018070844933390617, - 0.08573661744594574, - 0.001061081886291504, - 0.015682900324463844, - -0.10538306087255478, - 0.011464020237326622, - 0.08083142340183258, - 0.026681188493967056, - -0.047883540391922, - -0.02291342429816723, - -0.009277289733290672, - -0.0929560661315918, - 0.025853481143712997, - -0.02502596192061901, - 0.07388801872730255, - 0.007943443953990936, - -0.009611682966351509, - 0.13422970473766327, - 0.012996269389986992, - 0.0029671199154108763, - -0.06125715374946594, - -0.01954694092273712, - 0.004312800709158182, - 0.05019153282046318, - -0.1347048580646515, - -0.08504339307546616, - -0.03595571592450142, - -0.003675208194181323, - 0.004475640133023262, - 0.03553519770503044, - 0.08206185698509216, - 0.002802877454087138, - 0.027015861123800278, - -0.04695117101073265, - 0.006720840930938721, - -0.07637880742549896, - -0.05834929645061493, - -0.022947674617171288, - -0.07970127463340759, - -0.004842136055231094, - 0.09929104894399643, - -0.007080617360770702, - 0.018930353224277496, - -0.034353189170360565, - -0.054217901080846786, - -0.07930701225996017, - 0.045394912362098694, - 0.029179122298955917, - -0.04350883886218071, - 0.015973228961229324, - 0.04174887388944626, - -0.044578202068805695, - -0.017151078209280968, - 0.03466076776385307, - 0.09698228538036346, - -0.0734417662024498, - 0.004493778105825186, - -0.07623273134231567, - 0.10808276385068893, - 0.11594148725271225, - -0.07232116907835007, - -0.07124092429876328, - -0.07698666304349899, - -0.03539056330919266, - 0.01261798944324255, - -0.06289085745811462, - -0.02799104154109955, - 0.023715287446975708, - -0.05077308043837547, - -0.0756128579378128, - -0.1193140372633934, - 0.062068209052085876, - -0.03669997677206993, - 0.007340624928474426, - -0.07714134454727173, - 0.032271284610033035, - -0.0031958750914782286, - 0.04009813070297241, - -0.0646197497844696, - 0.044082652777433395, - 0.03337187319993973, - -0.03719500079751015, - 0.012969679199159145, - 0.058170340955257416, - 0.02635194920003414, - -0.0319247841835022, - -0.05222412943840027, - -0.06367869675159454, - 0.06894227862358093, - -0.05995966121554375, - 0.12644216418266296, - -0.02645149454474449, - -0.06243101879954338, - -0.06587567180395126, - -0.002566605806350708, - 0.009437533095479012, - 0.013487285003066063, - 0.06623219698667526, - 0.06982529908418655, - 0.017574332654476166, - -0.06234272941946983, - 0.10064071416854858, - 0.05192526429891586, - 0.0380561426281929, - -0.056160181760787964, - -0.04067622125148773, - -0.04052918031811714, - 0.03014150820672512, - -0.004749623127281666, - -0.09433123469352722, - 0.06469447910785675, - 0.02332175150513649, - 0.024281909689307213, - 0.04411012679338455, - 0.09125831723213196, - 0.06726011633872986, - -0.08644570410251617 - ] - }, - "p244_251.wav": { - "name": "p244", - "embedding": [ - 0.049328289926052094, - 0.059953488409519196, - -0.01054478157311678, - 0.020352214574813843, - -0.0199117548763752, - 0.05276632308959961, - -0.11319814622402191, - 0.06005311757326126, - -0.03570986166596413, - 0.16524741053581238, - -0.10067404061555862, - 0.09237560629844666, - -0.010569012723863125, - -0.17408621311187744, - -0.021804997697472572, - 0.04224531352519989, - -0.04727105796337128, - 0.00436815619468689, - -0.04831356555223465, - -0.03102274239063263, - 0.06311007589101791, - 0.09043288230895996, - 0.04414050281047821, - -0.05400954931974411, - 0.0042407820001244545, - 0.06681108474731445, - -0.025087375193834305, - 0.03582890331745148, - -0.028526578098535538, - -0.14018011093139648, - -0.07212929427623749, - 0.11119742691516876, - -0.027697492390871048, - 0.025717835873365402, - -0.0017318916507065296, - 0.018676547333598137, - 0.00516867870464921, - -0.03892746567726135, - -0.005725560709834099, - 0.00348449544981122, - -0.017069881781935692, - 0.0355876162648201, - -0.015043491497635841, - -0.008019731380045414, - 0.06229155510663986, - 0.0017029240261763334, - -0.03863031417131424, - -0.04859350621700287, - -0.08093905448913574, - 0.1773947775363922, - 0.06079889088869095, - -0.005341731011867523, - -0.0387200228869915, - -0.07986727356910706, - 0.07623015344142914, - -0.026826025918126106, - -0.13215351104736328, - -0.026669472455978394, - 0.07634372264146805, - 0.14381921291351318, - -0.022608619183301926, - -0.07395382225513458, - 0.05345578119158745, - 0.06411219388246536, - -0.025302492082118988, - 0.07952225208282471, - 0.07111746072769165, - 0.03671516478061676, - 0.0023251762613654137, - -0.015842296183109283, - 0.009580474346876144, - 0.0881299078464508, - 0.10273173451423645, - -0.02085926942527294, - 0.04295113682746887, - 0.013505339622497559, - -0.046422675251960754, - 0.01220475509762764, - -0.04360032081604004, - -0.005511448718607426, - 0.011075293645262718, - -0.032045405358076096, - 0.014161832630634308, - -0.034202009439468384, - -0.03750857710838318, - 0.009857445023953915, - 0.03544248268008232, - -0.014740318059921265, - 0.05080818012356758, - 0.0199776329100132, - 0.03391994535923004, - 0.035608358681201935, - -0.05160940811038017, - -0.0641646683216095, - 0.058570489287376404, - 0.05968838930130005, - -0.0176845695823431, - 0.04797288775444031, - 0.046034883707761765, - -0.07386460900306702, - 0.102744922041893, - -0.005570786073803902, - 0.014623268507421017, - -0.005881818942725658, - -0.10371869057416916, - 0.08173513412475586, - 0.14124202728271484, - -0.002029349096119404, - 0.03605691343545914, - -0.05607824772596359, - 0.08291968703269958, - 0.07880977541208267, - -0.14043837785720825, - -0.06603536754846573, - -0.006447142921388149, - -0.018748588860034943, - 0.02126128599047661, - 0.09051737189292908, - 0.00649992935359478, - 0.009501633234322071, - 0.11749141663312912, - -0.1311604231595993, - -0.05950690060853958, - -0.012895062565803528, - 0.019873417913913727, - -0.1369878649711609, - 0.05963912606239319, - 0.04787156730890274, - 0.002567657735198736, - 0.009192496538162231, - 0.0749645084142685, - -0.045056115835905075, - 0.023208580911159515, - -0.040937650948762894, - -0.050383709371089935, - -0.03924104943871498, - -0.07999251782894135, - -0.04218427836894989, - 0.05701034143567085, - 0.029537491500377655, - 0.03700511157512665, - -0.017973028123378754, - -0.0868062824010849, - -0.140301913022995, - 0.014460212551057339, - 0.0260839331895113, - 0.01212030928581953, - -0.0024296967312693596, - -0.00913532916456461, - -0.03982291370630264, - -0.08167420327663422, - 0.0697038471698761, - -0.058382548391819, - 0.03966904431581497, - 0.0042314352467656136, - 0.0007226946763694286, - 0.08827710151672363, - 0.020843632519245148, - -0.027329083532094955, - -0.056936465203762054, - -0.05073275417089462, - 0.022085975855588913, - 0.019711047410964966, - -0.08167755603790283, - -0.06705820560455322, - -0.017035579308867455, - 0.019519371911883354, - 0.011421735398471355, - 0.05200369656085968, - 0.07803940773010254, - 0.019217800348997116, - 0.006655774544924498, - -0.0657368004322052, - 0.00040613164310343564, - -0.10277131199836731, - -0.09155014157295227, - 0.008352401666343212, - -0.06651359796524048, - 0.023270629346370697, - 0.11062470078468323, - -0.02021205425262451, - -0.02643536776304245, - -0.10284361243247986, - -0.061432551592588425, - -0.0966632068157196, - 0.06050602346658707, - 0.06663714349269867, - 0.02348233386874199, - 0.020204821601510048, - 0.02230023592710495, - -0.03305267542600632, - 0.08827963471412659, - 0.04610329121351242, - 0.13187098503112793, - -0.007613573223352432, - 0.04823947325348854, - -0.039790716022253036, - 0.09473560750484467, - 0.08938881754875183, - -0.005552427843213081, - -0.08788211643695831, - -0.02698804996907711, - -0.08806759119033813, - 0.09903028607368469, - -0.02297016605734825, - -0.04481854289770126, - 0.03193691745400429, - -0.008596988394856453, - -0.10733656585216522, - -0.05774542689323425, - 0.0790112167596817, - 0.009053654037415981, - -0.04344800114631653, - -0.06411679834127426, - 0.0662645697593689, - 0.052377767860889435, - 0.0593242421746254, - -0.018326755613088608, - 0.024680186063051224, - 0.04674012213945389, - -0.07952851802110672, - 0.012883469462394714, - 0.02382596954703331, - 0.024478016421198845, - -0.06606549024581909, - 0.005899862386286259, - -0.10745332390069962, - 0.023255206644535065, - -0.07051318883895874, - 0.1077079176902771, - -0.014976700767874718, - -0.05343962460756302, - -0.06335050612688065, - 0.08788689970970154, - -0.03633427247405052, - 0.027967587113380432, - 0.050388187170028687, - 0.03291618078947067, - 0.08403430879116058, - -0.11826460808515549, - 0.0543389655649662, - 0.052195750176906586, - 0.008650942705571651, - -0.04869018495082855, - -0.06905244290828705, - -0.0529961958527565, - -0.005277123302221298, - -0.028453629463911057, - -0.08558467030525208, - 0.020153438672423363, - 0.01427987590432167, - 0.04202116280794144, - 0.03267994523048401, - 0.10085238516330719, - -0.009471339173614979, - -0.1218496710062027 - ] - }, - "p244_406.wav": { - "name": "p244", - "embedding": [ - 0.022433273494243622, - 0.11010242998600006, - -0.00825293455272913, - 0.0286464411765337, - -0.07395180314779282, - 0.05012383684515953, - -0.12714862823486328, - 0.14757871627807617, - -0.04032038152217865, - 0.10994261503219604, - -0.07795362919569016, - 0.12456173449754715, - -0.06213505193591118, - -0.18791791796684265, - -0.023377323523163795, - 0.08217857033014297, - 0.008465186692774296, - -0.004512334708124399, - -0.004613865632563829, - -0.011728457175195217, - 0.014283307828009129, - -0.004827337339520454, - 0.03108474239706993, - 0.008688081987202168, - 0.046692222356796265, - 0.0611715242266655, - 0.01224487740546465, - 0.0638929083943367, - 0.004131973255425692, - 0.0055716331116855145, - -0.027185827493667603, - 0.10582759976387024, - -0.05903424695134163, - 0.021410971879959106, - 0.08168889582157135, - 0.011746183037757874, - -0.015315328724682331, - -0.03388787806034088, - 0.009365646168589592, - -0.024647563695907593, - -0.046410251408815384, - 0.07175841182470322, - 0.024881821125745773, - 0.008763165213167667, - 0.04082033410668373, - 0.0612298883497715, - -0.004612419288605452, - -0.0269665215164423, - -0.12224484980106354, - 0.12598580121994019, - 0.01978444680571556, - 0.002172099193558097, - -0.10446738451719284, - -0.0774807408452034, - 0.10754960775375366, - -0.021365001797676086, - -0.09653037041425705, - -0.05904841050505638, - 0.10277979075908661, - 0.1550615131855011, - -0.02624199166893959, - -0.043827105313539505, - -0.02491120621562004, - 0.11231652647256851, - 0.04204030707478523, - 0.10449327528476715, - 0.0451502650976181, - 0.13080008327960968, - -0.01876417174935341, - 0.02138260006904602, - 0.05753375217318535, - 0.04959304258227348, - 0.02698889933526516, - -0.01137266494333744, - -0.0019854996353387833, - -0.008908815681934357, - 0.01426773052662611, - 0.041263844817876816, - -0.02699982188642025, - -0.03687213733792305, - -0.043809905648231506, - 0.012480275705456734, - -0.0067670284770429134, - -0.015618935227394104, - -0.005444853100925684, - 0.06822241842746735, - 0.056879524141550064, - -0.005852878093719482, - 0.08322931081056595, - 0.05207604542374611, - -0.05484650284051895, - 0.06743285059928894, - -0.09576766192913055, - -0.06958533078432083, - 0.009045041166245937, - -0.019883116707205772, - 0.03549882769584656, - 0.07247328758239746, - 0.012957296334207058, - 0.013708283193409443, - 0.10199087858200073, - 0.061259057372808456, - 0.01730342209339142, - 0.04120148718357086, - -0.08406860381364822, - 0.13011270761489868, - 0.06231855973601341, - -0.012005441822111607, - 0.04700308293104172, - -0.03417704626917839, - 0.04836944490671158, - 0.07589543610811234, - -0.1075824648141861, - -0.07824350148439407, - -0.01381006371229887, - 0.016014596447348595, - -0.04581049457192421, - 0.1094963327050209, - -0.036450717598199844, - 0.028939707204699516, - 0.11604727059602737, - -0.0929003581404686, - -0.07065986841917038, - -0.006767651066184044, - 0.018073400482535362, - -0.06184563785791397, - 0.035943079739809036, - 0.060829613357782364, - 0.0009416225366294384, - 0.025887329131364822, - 0.08263947069644928, - 0.02154458314180374, - 0.023379093036055565, - 0.03917766362428665, - -0.06726950407028198, - 0.007558941841125488, - -0.013419078662991524, - 0.0044156648218631744, - 0.08153006434440613, - 0.055984947830438614, - 0.07435870170593262, - 0.012628359720110893, - -0.007919891737401485, - -0.10971485078334808, - -0.015739768743515015, - 0.07960822433233261, - 0.06753089278936386, - -0.03338081017136574, - -0.030068732798099518, - -0.029494402930140495, - -0.07300763577222824, - 0.02699226699769497, - 0.03174315392971039, - 0.10782495141029358, - -0.030381515622138977, - -0.006868352647870779, - 0.11232158541679382, - 0.0364680290222168, - -0.016050897538661957, - -0.08812564611434937, - -0.04741069674491882, - -0.010606169700622559, - 0.03333564102649689, - -0.12429565191268921, - -0.06682263314723969, - -0.017341116443276405, - 0.04887819662690163, - -0.03813241794705391, - 0.05993665009737015, - 0.04879587143659592, - 0.022781575098633766, - 0.033962611109018326, - -0.029881419613957405, - 0.006083779968321323, - -0.0786898210644722, - -0.07324090600013733, - -0.007931698113679886, - -0.011931668035686016, - -0.03465215489268303, - 0.06462141126394272, - 0.02420193701982498, - 0.06448564678430557, - 0.011100980453193188, - -0.06012969836592674, - -0.09225257486104965, - 0.057550642639398575, - 0.03213885799050331, - -0.0028893230482935905, - 0.0760091170668602, - 0.04881973937153816, - -0.0874478742480278, - 0.07650589942932129, - 0.07824760675430298, - 0.09871044754981995, - -0.06014077737927437, - 0.04279525205492973, - -0.07939570397138596, - 0.06016266718506813, - 0.09840571880340576, - -0.11393151432275772, - -0.10124827176332474, - -0.044690296053886414, - -0.04529865086078644, - 0.0433080717921257, - -0.04151226207613945, - 0.007362959906458855, - 0.026500094681978226, - -0.016556164249777794, - -0.0832802802324295, - -0.10136456787586212, - 0.05681251361966133, - -0.06221964955329895, - 0.008924389258027077, - -0.06465260684490204, - 0.04324430227279663, - 0.06933638453483582, - 0.018118569627404213, - -0.018436025828123093, - -0.008176364004611969, - 0.06551843136548996, - -0.04315779358148575, - -0.02036682888865471, - 0.05997240170836449, - 0.025921640917658806, - -0.04682108759880066, - -0.008312494494020939, - -0.06844659149646759, - 0.07077407091856003, - -0.018362656235694885, - 0.18124262988567352, - -0.005586482584476471, - -0.049223992973566055, - -0.055040910840034485, - -0.0043085478246212006, - -0.03021119348704815, - 0.040172625333070755, - 0.026781173422932625, - 0.07101870328187943, - 0.0014859841903671622, - -0.018747827038168907, - 0.16909834742546082, - 0.025779128074645996, - -0.058207977563142776, - -0.05218813568353653, - -0.04835975915193558, - -0.058003440499305725, - 0.021850500255823135, - -0.0049940901808440685, - -0.11896137148141861, - -0.019330821931362152, - 0.019596410915255547, - -0.012157253921031952, - 0.04467516019940376, - 0.14526787400245667, - 0.08396502584218979, - -0.07826828956604004 - ] - }, - "p244_018.wav": { - "name": "p244", - "embedding": [ - 0.03764362633228302, - 0.09154234081506729, - -0.01500939205288887, - 0.028700580820441246, - -0.04713848978281021, - 0.04220254719257355, - -0.14503705501556396, - 0.14676356315612793, - -0.026814399287104607, - 0.1316307634115219, - -0.07282541692256927, - 0.10995055735111237, - -0.030329391360282898, - -0.18260616064071655, - -0.024929527193307877, - 0.060952335596084595, - -0.057107873260974884, - -0.05216919258236885, - -0.029472116380929947, - -0.03406848385930061, - 0.03186372295022011, - 0.043869826942682266, - 0.02480209805071354, - 0.042479485273361206, - 0.009154178202152252, - 0.07734604179859161, - -0.012624327093362808, - 0.03543419390916824, - 0.014923883602023125, - -0.029815804213285446, - -0.026638299226760864, - 0.09449411928653717, - -0.044534169137477875, - 0.0047486284747719765, - 0.03883387893438339, - -0.015306773595511913, - -0.006794194225221872, - -0.05252738669514656, - -0.02585734613239765, - -0.0024617682211101055, - -0.06378418207168579, - 0.07526711374521255, - 0.026857584714889526, - -0.013827614486217499, - 0.04137516766786575, - 0.017740922048687935, - -0.02246253192424774, - -0.03978245332837105, - -0.10990358889102936, - 0.1443898230791092, - 0.10094386339187622, - -0.011521545238792896, - -0.0602971687912941, - -0.04417018964886665, - 0.09648551791906357, - -0.01685475744307041, - -0.12209080159664154, - -0.03975705802440643, - 0.09193167835474014, - 0.14617785811424255, - -0.03656116873025894, - -0.024837318807840347, - 0.041759323328733444, - 0.14488957822322845, - 0.07192541658878326, - 0.0860205739736557, - 0.0774093046784401, - 0.11114364862442017, - -0.04562363773584366, - -0.004283388610929251, - 0.06778092682361603, - 0.06189418584108353, - 0.052877843379974365, - -0.007849927060306072, - 0.009774241596460342, - -0.0023856530897319317, - -0.009205885231494904, - -0.005678159184753895, - -0.02607208862900734, - -0.018539177253842354, - -0.02201419323682785, - -0.0015125880017876625, - -0.0222533717751503, - 0.032405536621809006, - -0.01320338062942028, - 0.055061180144548416, - 0.05358836054801941, - -0.011499579064548016, - 0.07383372634649277, - 0.039092641323804855, - 0.022722944617271423, - 0.07295548915863037, - -0.07043106108903885, - -0.052647124975919724, - 0.022289332002401352, - -0.005592279136180878, - 0.02574138157069683, - 0.07316920161247253, - 0.05053160339593887, - -0.012173017486929893, - 0.13138136267662048, - 0.039022963494062424, - -0.015197357162833214, - 0.022221194580197334, - -0.10390225797891617, - 0.1305568367242813, - 0.07771643251180649, - -0.041435956954956055, - 0.043465472757816315, - -0.03624916821718216, - 0.056415800005197525, - 0.06254167854785919, - -0.12350660562515259, - -0.050076842308044434, - 0.03929123282432556, - 0.03178086876869202, - -0.02937980927526951, - 0.12179442495107651, - 0.006015018559992313, - 0.04337229207158089, - 0.1066557839512825, - -0.06533510237932205, - -0.05633750930428505, - -0.02094077132642269, - 0.05509558320045471, - -0.08800698071718216, - 0.060511376708745956, - 0.058736544102430344, - -0.004252209793776274, - 0.017218418419361115, - 0.08921100199222565, - -0.011730597354471684, - -0.009119277819991112, - 0.003968897275626659, - -0.0507071390748024, - 0.019811999052762985, - -0.018805263563990593, - 0.008205834776163101, - 0.026582758873701096, - 0.02569599449634552, - 0.03908529132604599, - -0.005167054478079081, - -0.029924875125288963, - -0.11901851743459702, - 0.01826886460185051, - 0.027276957407593727, - 0.09127062559127808, - 0.0017137329559773207, - -0.02138015814125538, - -0.037254586815834045, - -0.04874496906995773, - -0.0005164108006283641, - -0.017661932855844498, - 0.05890849605202675, - -0.04590122401714325, - -0.018569065257906914, - 0.09410692751407623, - 0.027656808495521545, - 0.010529249906539917, - -0.050668325275182724, - -0.027563506737351418, - 0.0026391465216875076, - 0.05307858809828758, - -0.08083528280258179, - -0.07554952800273895, - -0.0001614801585674286, - 0.052309438586235046, - -0.010271302424371243, - 0.06478386372327805, - 0.042986806482076645, - 0.013125678524374962, - 0.00799109973013401, - -0.07204458117485046, - 0.022329751402139664, - -0.09145520627498627, - -0.08002033084630966, - -0.007434266619384289, - 0.0012075421400368214, - -0.008884293027222157, - 0.0639994814991951, - 0.016127046197652817, - 0.05375587195158005, - -0.011737806722521782, - -0.08225305378437042, - -0.0935329869389534, - 0.05271512642502785, - 0.07052402198314667, - -0.01769179478287697, - 0.05305507034063339, - 0.07153312861919403, - -0.04968443140387535, - 0.04087692126631737, - 0.04003684222698212, - 0.11682800203561783, - -0.03704041242599487, - 0.017538178712129593, - -0.07418105006217957, - 0.04964343458414078, - 0.08312442898750305, - -0.10155589133501053, - -0.06480942666530609, - -0.025586828589439392, - -0.05473422259092331, - 0.03188405930995941, - -0.024246953427791595, - 0.006356997415423393, - 0.025086306035518646, - -0.0049482667818665504, - -0.1010873094201088, - -0.09280122071504593, - 0.08394641429185867, - -0.08323238790035248, - 0.011020710691809654, - -0.08684509247541428, - 0.04471810907125473, - 0.08881159871816635, - 0.029325654730200768, - -0.032305918633937836, - -0.012388265691697598, - 0.041262850165367126, - -0.010964948683977127, - 0.011134950444102287, - 0.06203185394406319, - 0.04745800048112869, - -0.12669628858566284, - -0.022570312023162842, - -0.08204594254493713, - 0.062097832560539246, - -0.03753640875220299, - 0.14323924481868744, - 0.025786053389310837, - -0.045844126492738724, - -0.0949782133102417, - 0.030293602496385574, - -0.004052481148391962, - 0.06212465465068817, - 0.03314443677663803, - 0.06611765921115875, - 0.03992925211787224, - -0.057246748358011246, - 0.11820288002490997, - 0.04609298333525658, - -0.04439686983823776, - -0.07164696604013443, - -0.03039267472922802, - -0.040580786764621735, - 0.02873329073190689, - 0.025070957839488983, - -0.09447844326496124, - -0.038386739790439606, - 0.014619055204093456, - -0.02579638361930847, - 0.07778245955705643, - 0.13773494958877563, - 0.07198118418455124, - -0.11946538090705872 - ] - }, - "p244_171.wav": { - "name": "p244", - "embedding": [ - 0.048756081610918045, - 0.10788099467754364, - -0.015114023350179195, - 0.011512534692883492, - -0.04713154211640358, - 0.06162680685520172, - -0.1253783404827118, - 0.13322007656097412, - -0.03776686638593674, - 0.13973170518875122, - -0.07304860651493073, - 0.13877861201763153, - -0.01722518913447857, - -0.178676575422287, - -0.0655965805053711, - 0.041443996131420135, - -0.0508502796292305, - -0.02661816030740738, - -0.03518000245094299, - -0.010728603228926659, - 0.06004888564348221, - 0.031563468277454376, - 0.025766754522919655, - 0.008738480508327484, - 0.004412919748574495, - 0.06819488108158112, - 0.027018524706363678, - 0.07064399123191833, - 0.047100163996219635, - -0.05526864156126976, - -0.0397224985063076, - 0.11563403904438019, - -0.030901232734322548, - 0.0389702282845974, - 0.05596928298473358, - -0.005339030176401138, - 0.016688555479049683, - -0.04657135531306267, - 0.005024332087486982, - 0.011187591589987278, - -0.02432718500494957, - 0.07588692009449005, - 0.018434898927807808, - -0.003303242614492774, - 0.03780677169561386, - 0.040311750024557114, - -0.013515792787075043, - -0.05391480028629303, - -0.08915295451879501, - 0.16478806734085083, - 0.07315248996019363, - -0.018548952415585518, - -0.0543912872672081, - -0.0677674412727356, - 0.0878400057554245, - -0.02745378017425537, - -0.1169440895318985, - -0.0463714599609375, - 0.08114601671695709, - 0.14538335800170898, - -0.026894118636846542, - -0.04318784922361374, - 0.022913847118616104, - 0.15118637681007385, - 0.04801703244447708, - 0.08850812911987305, - 0.08872583508491516, - 0.11048711091279984, - -0.02008085697889328, - 0.016718624159693718, - 0.051669590175151825, - 0.07550366222858429, - 0.04862320423126221, - -0.001224815845489502, - 0.04683710262179375, - -0.01575394719839096, - 0.014198355376720428, - 0.016827991232275963, - -0.02759290486574173, - -0.01795351132750511, - -0.016925204545259476, - 0.02255924418568611, - -0.02233215980231762, - 0.026395462453365326, - -0.029256489127874374, - 0.07548694312572479, - 0.019365482032299042, - -0.010187491774559021, - 0.05716826766729355, - 0.05902569741010666, - 0.041420385241508484, - 0.060123853385448456, - -0.07182320952415466, - -0.10445757955312729, - 0.0424509271979332, - -0.012181096710264683, - 0.037834297865629196, - 0.06358584761619568, - 0.03178483247756958, - -0.0027521606534719467, - 0.10499188303947449, - 0.05855675786733627, - -0.037732724100351334, - 0.032149188220500946, - -0.09303632378578186, - 0.14386561512947083, - 0.09384411573410034, - -0.02661513350903988, - 0.027049528434872627, - -0.04984838515520096, - 0.07522110641002655, - 0.060198865830898285, - -0.12207189202308655, - -0.09108433872461319, - 0.029622238129377365, - 0.02106487937271595, - -0.027309224009513855, - 0.09333403408527374, - -0.01536241453140974, - 0.031974077224731445, - 0.09518208354711533, - -0.060793448239564896, - -0.05631709843873978, - -0.03943692892789841, - 0.028135620057582855, - -0.08980363607406616, - 0.0626974105834961, - 0.04496128857135773, - 0.002481867093592882, - -0.007878376170992851, - 0.10467808693647385, - -0.00851157121360302, - 0.008898183703422546, - 0.011487308889627457, - -0.04572311043739319, - 0.023658456280827522, - -0.02107226848602295, - 0.011845976114273071, - 0.021882344037294388, - 0.04806576669216156, - 0.041651174426078796, - 0.0021060099825263023, - -0.036074213683605194, - -0.11784979701042175, - 0.014952259138226509, - 0.037581268697977066, - 0.05971430242061615, - -0.007005677092820406, - -0.035375431180000305, - -0.024502793326973915, - -0.04102998226881027, - 0.009020538069307804, - -0.01272731926292181, - 0.06389932334423065, - -0.024287838488817215, - -0.014425510540604591, - 0.10816574096679688, - -0.00445717154070735, - 0.004040740430355072, - -0.04767029359936714, - -0.02507316693663597, - 0.027433931827545166, - 0.04105466604232788, - -0.08448050916194916, - -0.06702357530593872, - 0.002646862296387553, - 0.033555034548044205, - -0.017439104616642, - 0.05496995896100998, - 0.06342251598834991, - 0.0007091599400155246, - 0.04484397545456886, - -0.061908598989248276, - 0.005099175963550806, - -0.10752078890800476, - -0.06950725615024567, - -0.020398156717419624, - -0.01927923783659935, - -0.01337464153766632, - 0.06500561535358429, - 0.008506903424859047, - 0.04837486147880554, - -0.008027157746255398, - -0.07648869603872299, - -0.08697380125522614, - 0.06110098212957382, - 0.08827006816864014, - 0.023793108761310577, - 0.06287623941898346, - 0.04477966949343681, - -0.013410470448434353, - 0.06897540390491486, - 0.05162268131971359, - 0.10352706909179688, - -0.022335799410939217, - 0.008817421272397041, - -0.08764206618070602, - 0.06651510298252106, - 0.07290469110012054, - -0.09856373071670532, - -0.08053789287805557, - -0.021058687940239906, - -0.05695857107639313, - 0.021678728982806206, - -0.032520830631256104, - 0.018302321434020996, - 0.05524074658751488, - 0.0036722910590469837, - -0.10566379129886627, - -0.09024463593959808, - 0.08234959840774536, - -0.09206800162792206, - 0.003938575275242329, - -0.07406823337078094, - 0.05583396926522255, - 0.11015675961971283, - 0.03372165188193321, - -0.05074060708284378, - -0.013541603460907936, - 0.044080086052417755, - -0.044000640511512756, - -0.008936327882111073, - 0.005447791889309883, - 0.03692197799682617, - -0.10317489504814148, - 0.01576639898121357, - -0.08872266113758087, - 0.03166333585977554, - -0.06905488669872284, - 0.1497354656457901, - 0.01104644499719143, - -0.06141091138124466, - -0.08196337521076202, - 0.04192446544766426, - -0.03701178729534149, - 0.04831523448228836, - 0.039102789014577866, - 0.055049218237400055, - 0.01417083851993084, - -0.09580568224191666, - 0.12973815202713013, - 0.05164837837219238, - -0.04808277636766434, - -0.09841989725828171, - -0.03322279453277588, - -0.034084200859069824, - 0.052762411534786224, - 0.040813714265823364, - -0.082816943526268, - -0.04035034775733948, - 0.026957236230373383, - -0.03289157897233963, - 0.07755455374717712, - 0.14474698901176453, - 0.04329165071249008, - -0.10240413248538971 - ] - }, - "p244_045.wav": { - "name": "p244", - "embedding": [ - 0.036409180611371994, - 0.06373345851898193, - -0.04850875213742256, - 0.0012590696569532156, - -0.0655830129981041, - 0.043895818293094635, - -0.12458140403032303, - 0.10167236626148224, - -0.01149693038314581, - 0.13705159723758698, - -0.03965980187058449, - 0.10947172343730927, - -0.007635345682501793, - -0.16530273854732513, - -0.010866695083677769, - 0.021307123824954033, - -0.02756701223552227, - -0.006040188483893871, - -0.07994157075881958, - -0.0484396256506443, - 0.03522863984107971, - 0.043894726783037186, - 0.03130299597978592, - -0.09033254534006119, - 0.04276881739497185, - 0.049529194831848145, - 0.009891757741570473, - 0.036779966205358505, - -0.00973771046847105, - -0.07737540453672409, - -0.02124992571771145, - 0.09549771249294281, - -0.07894158363342285, - 0.015054848045110703, - 0.04750899225473404, - -0.02162482589483261, - -0.023351959884166718, - -0.038765259087085724, - -0.0073468806222081184, - 0.04152461886405945, - -0.036400359123945236, - 0.07820509374141693, - 0.03232400119304657, - -0.028038693591952324, - 0.05439256131649017, - 0.019738323986530304, - -0.011991242878139019, - -0.05228567123413086, - -0.08575982600450516, - 0.15669089555740356, - 0.03329421579837799, - -0.003134464845061302, - -0.08130383491516113, - -0.0701078474521637, - 0.08273150771856308, - -0.03147679939866066, - -0.10889844596385956, - -0.05446823686361313, - 0.04780600219964981, - 0.11897586286067963, - -0.03460344299674034, - -0.04509624466300011, - 0.032144591212272644, - 0.07155874371528625, - 0.05732978135347366, - 0.06744895875453949, - 0.0877368301153183, - 0.10208085179328918, - -0.010492564179003239, - 0.03598418086767197, - 0.03696993365883827, - 0.0879252701997757, - 0.03163312003016472, - -0.005844987463206053, - 0.03779713064432144, - -0.011790177784860134, - -0.015229344367980957, - -0.03421752154827118, - -0.030828654766082764, - -0.006605314090847969, - 0.006194352172315121, - 0.023673221468925476, - 0.04953373968601227, - 0.014020876958966255, - -0.05010061711072922, - 0.05289199575781822, - 0.054383210837841034, - -0.028982415795326233, - 0.054083094000816345, - 0.04069673269987106, - -0.006503037177026272, - 0.045567888766527176, - -0.09922129660844803, - -0.0970517247915268, - -0.004961349070072174, - -0.0029878681525588036, - 0.005250225774943829, - 0.04367164522409439, - 0.022428929805755615, - -0.016702774912118912, - 0.10158343613147736, - 0.04256047308444977, - -0.014677779749035835, - 0.03042411431670189, - -0.06267350167036057, - 0.11361376196146011, - 0.09337268769741058, - -0.016695033758878708, - 0.033519189804792404, - -0.07685229182243347, - 0.05857387185096741, - 0.04186607152223587, - -0.10366949439048767, - -0.08254759013652802, - 0.02052883617579937, - -0.012891009449958801, - -0.028348566964268684, - 0.13967370986938477, - -0.006839882582426071, - 0.021905580535531044, - 0.12210458517074585, - -0.09927570074796677, - -0.04383537918329239, - -0.009029564447700977, - 0.04083845391869545, - -0.06358872354030609, - 0.04009952396154404, - 0.038503486663103104, - -0.014631219208240509, - 0.0349312424659729, - 0.0866166204214096, - -0.001095527783036232, - 0.03843126818537712, - 0.0076775867491960526, - -0.021519560366868973, - 0.03769470378756523, - -0.015402357093989849, - -0.015597800724208355, - 0.07944595813751221, - 0.06551666557788849, - 0.0781731903553009, - -0.014774523675441742, - -0.04573675990104675, - -0.10937036573886871, - 0.024098757654428482, - 0.02056432142853737, - 0.07296841591596603, - -0.030045025050640106, - 0.0053977956995368, - -0.04413025826215744, - -0.09769289195537567, - 0.031458646059036255, - 0.0046644010581076145, - 0.08497168123722076, - -0.009289938025176525, - -0.0042288536205887794, - 0.11800014972686768, - 0.037131939083337784, - -0.0033342335373163223, - -0.038018785417079926, - -0.03281279280781746, - -0.014849001541733742, - 0.056446775794029236, - -0.0863642692565918, - -0.06582127511501312, - -0.02366805635392666, - 0.014046663418412209, - -0.014413945376873016, - 0.06533527374267578, - 0.0694565549492836, - 0.024139652028679848, - 0.04405529797077179, - -0.07130910456180573, - -0.014843943528831005, - -0.08857505023479462, - -0.0410175621509552, - -0.0230402834713459, - -0.04828879237174988, - -0.05237221345305443, - 0.09565780311822891, - -0.005147187039256096, - 0.04034685716032982, - -0.031523481011390686, - -0.07084348797798157, - -0.07660600543022156, - 0.05688017979264259, - 0.03928137570619583, - -0.023704711347818375, - 0.020886853337287903, - 0.04073280468583107, - -0.03065858967602253, - 0.03230053558945656, - 0.08439664542675018, - 0.06984895467758179, - -0.02489544451236725, - 0.007882220670580864, - -0.0605912059545517, - 0.13794445991516113, - 0.06979639083147049, - -0.07512485235929489, - -0.06894218176603317, - -0.03242199122905731, - -0.06852367520332336, - 0.010146543383598328, - -0.02471516840159893, - 0.011098667047917843, - 0.02745484560728073, - 0.01733534224331379, - -0.09166112542152405, - -0.07267217338085175, - 0.05370981618762016, - -0.06865569949150085, - -0.00790631864219904, - -0.06420284509658813, - 0.014538805931806564, - 0.08597350865602493, - 0.05690353736281395, - -0.00878701452165842, - -0.008382181636989117, - 0.057446569204330444, - -0.04996214807033539, - 0.03720337152481079, - 0.056372448801994324, - 0.033424291759729385, - -0.04152454063296318, - -0.01176535151898861, - -0.048215679824352264, - 0.027980845421552658, - -0.039744336158037186, - 0.13341759145259857, - 0.014345242641866207, - -0.058308348059654236, - -0.05801123380661011, - 0.051401592791080475, - -0.0452803373336792, - 0.043751880526542664, - 0.04491008073091507, - 0.06822976469993591, - 0.05634336918592453, - -0.07143687456846237, - 0.11643654853105545, - 0.04153633117675781, - -0.025006501004099846, - -0.06321591138839722, - -0.07403762638568878, - -0.04065658897161484, - 0.030912788584828377, - 0.038822632282972336, - -0.0725584551692009, - 0.023880701512098312, - 0.03400370478630066, - -0.007432215381413698, - 0.03394685685634613, - 0.12482020258903503, - 0.08397350460290909, - -0.09825662523508072 - ] - }, - "p244_011.wav": { - "name": "p244", - "embedding": [ - 0.04693511500954628, - 0.09151306003332138, - -0.015350173227488995, - 0.01501099206507206, - -0.05352330207824707, - 0.024777594953775406, - -0.11958026885986328, - 0.13174134492874146, - -0.03121187724173069, - 0.11712955683469772, - -0.07886708527803421, - 0.12884557247161865, - -0.03458358719944954, - -0.1426384150981903, - -0.037757065147161484, - 0.044479768723249435, - -0.041767336428165436, - -0.043814342468976974, - -0.005046903621405363, - -0.03032349981367588, - 0.03716897591948509, - 0.03688639774918556, - 0.03818846866488457, - 0.0272796880453825, - 0.016458002850413322, - 0.07186990231275558, - 0.0034022170584648848, - 0.035620372742414474, - 0.02769152633845806, - -0.026159582659602165, - -0.0077646332792937756, - 0.06918182224035263, - -0.04000372067093849, - 0.022949062287807465, - 0.03956812992691994, - 0.0021731534507125616, - 0.0021572664845734835, - -0.05360705778002739, - -0.02615455724298954, - 0.006823182106018066, - -0.050907909870147705, - 0.07867929339408875, - 0.021527081727981567, - -0.034393176436424255, - 0.02676575817167759, - 0.00946024339646101, - -0.01362234354019165, - -0.016480371356010437, - -0.09921713173389435, - 0.14778493344783783, - 0.05703011155128479, - 0.022879837080836296, - -0.08257072418928146, - -0.03717171773314476, - 0.10028153657913208, - -0.02581956796348095, - -0.1014406681060791, - -0.030647045001387596, - 0.059790290892124176, - 0.13068018853664398, - -0.028375966474413872, - -0.04566575959324837, - 0.02301890030503273, - 0.10864495486021042, - 0.056900300085544586, - 0.0498492605984211, - 0.09485321491956711, - 0.10639964789152145, - -0.03414921835064888, - 0.011846917681396008, - 0.061606764793395996, - 0.08003950119018555, - 0.041194938123226166, - -0.010102824307978153, - 0.004090904723852873, - -0.007145411800593138, - -0.013436323963105679, - 0.004326218273490667, - -0.016671283170580864, - -0.028611352667212486, - -0.05065273866057396, - -0.002835388295352459, - -0.015028364956378937, - 0.02607208490371704, - -0.010497629642486572, - 0.05200168490409851, - 0.03615011274814606, - -0.02207058109343052, - 0.06440500915050507, - 0.05203700065612793, - -0.005159619729965925, - 0.04691538214683533, - -0.0748772844672203, - -0.05882537364959717, - -0.001121237874031067, - -0.01175533514469862, - 0.044174011796712875, - 0.08308183401823044, - 0.04617855325341225, - 0.01403222419321537, - 0.11239280551671982, - 0.049323976039886475, - -0.006587873678654432, - -0.013005129992961884, - -0.09525784850120544, - 0.12376048415899277, - 0.09235859662294388, - -0.042835406959056854, - 0.030474955216050148, - -0.02863466553390026, - 0.042455077171325684, - 0.04740241914987564, - -0.10655175894498825, - -0.06431827694177628, - 0.020908359438180923, - 0.03831387683749199, - 0.010186552070081234, - 0.10208350419998169, - -0.007704551797360182, - 0.041669271886348724, - 0.09961819648742676, - -0.05906952545046806, - -0.06040550395846367, - -0.027082595974206924, - 0.03710734471678734, - -0.06680440157651901, - 0.07056431472301483, - 0.05684357509016991, - 0.012937569990754128, - 0.013492563739418983, - 0.07756072282791138, - 0.004854758270084858, - 0.0016230002511292696, - -0.004766053054481745, - -0.031538475304841995, - 0.023391051217913628, - -0.017501024529337883, - 0.00579298147931695, - 0.056401170790195465, - 0.043436940759420395, - 0.06694584339857101, - 0.02649066410958767, - -0.02080940082669258, - -0.10680897533893585, - 0.021535338833928108, - 0.05269007757306099, - 0.06138451769948006, - -0.02455325424671173, - -0.04900142550468445, - -0.027948278933763504, - -0.03953804820775986, - -0.003613616107031703, - 0.010626162402331829, - 0.07250669598579407, - -0.029650498181581497, - 0.00503036892041564, - 0.1020331159234047, - 0.01196464616805315, - -0.00870331097394228, - -0.04239264130592346, - -0.019085511565208435, - -0.011673356406390667, - 0.04814722761511803, - -0.08738696575164795, - -0.08782561123371124, - -0.016146989539265633, - 0.040562499314546585, - -0.00870204996317625, - 0.05808655172586441, - 0.05818870663642883, - -0.008133861236274242, - 0.017620747908949852, - -0.05324352905154228, - 0.026560891419649124, - -0.09001462906599045, - -0.07081657648086548, - -0.013763591647148132, - -0.020148402079939842, - -0.011310645379126072, - 0.06907995045185089, - 0.01780843548476696, - 0.06420137733221054, - 0.001113583566620946, - -0.09472236782312393, - -0.08345158398151398, - 0.05078394338488579, - 0.05246732756495476, - -0.02011728286743164, - 0.04108734801411629, - 0.07679054141044617, - -0.029277771711349487, - 0.043227437883615494, - 0.033382292836904526, - 0.09315013885498047, - -0.07060300558805466, - 0.007743968162685633, - -0.05747741460800171, - 0.052234042435884476, - 0.07412166148424149, - -0.10356845706701279, - -0.06901421397924423, - -0.058231987059116364, - -0.04774828255176544, - 0.02056937851011753, - -0.014962839893996716, - 0.013775983825325966, - 0.024671588093042374, - -0.02619941532611847, - -0.09307463467121124, - -0.09923496097326279, - 0.06260036677122116, - -0.060408320277929306, - 0.008377525955438614, - -0.07549357414245605, - 0.03015982173383236, - 0.07258807122707367, - 0.02156328223645687, - -0.013451685197651386, - 0.00790953729301691, - 0.005418199580162764, - -0.02525339089334011, - -0.018708324059844017, - 0.05127616599202156, - 0.038760047405958176, - -0.06665867567062378, - -0.026355160400271416, - -0.07957812398672104, - 0.06650206446647644, - -0.03824251517653465, - 0.1345810741186142, - -0.008153272792696953, - -0.05615853890776634, - -0.07514964044094086, - -0.0017292529810220003, - -0.022700471803545952, - 0.053166139870882034, - 0.04759633541107178, - 0.05596443638205528, - 0.010722211562097073, - -0.0535164549946785, - 0.1146818995475769, - 0.0649646446108818, - -0.043889325112104416, - -0.07289095222949982, - -0.033148143440485, - -0.028311440721154213, - 0.022350577637553215, - 0.019162673503160477, - -0.06904880702495575, - -0.0017095506191253662, - -0.005666177719831467, - -0.015931710600852966, - 0.07856272906064987, - 0.11935938894748688, - 0.0751008614897728, - -0.10518162697553635 - ] - }, - "p244_138.wav": { - "name": "p244", - "embedding": [ - 0.0700933188199997, - 0.0377182811498642, - -0.006153803318738937, - -0.008792988955974579, - -0.01029633916914463, - 0.06081300973892212, - -0.10449773818254471, - 0.05837077274918556, - -0.016417216509580612, - 0.08198314905166626, - -0.08462048321962357, - 0.07559515535831451, - 0.010649865493178368, - -0.1105349063873291, - -0.049864549189805984, - 0.028284763917326927, - -0.0215237308293581, - 0.0077948011457920074, - -0.05577688664197922, - 0.004510017111897469, - 0.015806157141923904, - 0.029210276901721954, - 0.0397406741976738, - -0.046633027493953705, - 0.016121678054332733, - 0.02957761660218239, - 0.02926536090672016, - 0.047166623175144196, - 0.04204349219799042, - 0.011825904250144958, - 0.007843952625989914, - 0.08851593732833862, - -0.013868517242372036, - -0.01586082950234413, - 0.04913341626524925, - 0.029168786481022835, - 0.013422926887869835, - -0.08862494677305222, - -0.0008264980278909206, - 0.0478745736181736, - -0.022770477458834648, - 0.0700978934764862, - 0.05314859747886658, - 0.011500800028443336, - -0.01110411062836647, - 0.012603465467691422, - -0.020398985594511032, - -0.049812182784080505, - -0.09821194410324097, - 0.16786211729049683, - 0.03350654989480972, - -0.001977858366444707, - -0.10501866787672043, - -0.017769109457731247, - 0.08057454228401184, - -0.008657335303723812, - -0.029612254351377487, - -0.045323342084884644, - 0.020617350935935974, - 0.11189388483762741, - 0.014370227232575417, - -0.036810312420129776, - 0.0023287988733500242, - 0.08959723263978958, - -0.0040346551686525345, - 0.048174213618040085, - 0.10340115427970886, - 0.10218804329633713, - -0.0018373546190559864, - 0.03814993053674698, - 0.07398408651351929, - 0.04268969967961311, - 0.019909044727683067, - -0.02334015816450119, - 0.04232386499643326, - -0.01496145874261856, - -0.03174427151679993, - 0.03793960064649582, - -0.01772383600473404, - -0.055531736463308334, - 0.025936629623174667, - -0.012942067347466946, - 0.008283143863081932, - 0.08056256920099258, - -0.07879214733839035, - 0.04175274074077606, - -2.6310328394174576e-05, - 0.016693077981472015, - 0.06180515140295029, - 0.06533603370189667, - 0.028443939983844757, - 0.004371471703052521, - -0.02654329314827919, - -0.11455459892749786, - 0.007954401895403862, - -0.004122806712985039, - 0.025998856872320175, - 0.029509756714105606, - 0.030390221625566483, - -0.008637006394565105, - 0.06519265472888947, - 0.04027631878852844, - -0.017089582979679108, - 0.01539282500743866, - -0.05229375511407852, - 0.09466859698295593, - 0.12216692417860031, - 0.008287385106086731, - 0.0025515519082546234, - -0.048837412148714066, - 0.04525119438767433, - 0.03641248121857643, - -0.098570317029953, - -0.05471383035182953, - 0.060472600162029266, - 0.04027802497148514, - 0.06161133944988251, - 0.0813916027545929, - -0.0029232604429125786, - -0.0002641519531607628, - 0.04492009058594704, - -0.05212651938199997, - -0.045050930231809616, - 0.005184590816497803, - 0.003385903313755989, - 0.0001318417489528656, - -0.005962742492556572, - 0.011397925205528736, - 0.005217838101089001, - -0.08035160601139069, - 0.083350270986557, - 0.005274652503430843, - 0.010940833017230034, - -0.041902244091033936, - 0.03870531916618347, - 0.113883376121521, - -0.0008794106543064117, - -0.009889818727970123, - 0.05096101015806198, - 0.06472828984260559, - 0.03843250498175621, - 0.04841066896915436, - -0.03987744078040123, - -0.10456392168998718, - 0.0015691224252805114, - 0.04382818192243576, - 0.046617865562438965, - -0.056362759321928024, - -0.04848276078701019, - -0.05004505068063736, - -0.009818851947784424, - 0.02410774677991867, - -0.015900276601314545, - 0.0555308535695076, - 0.04682601988315582, - -0.04986138641834259, - 0.09564351290464401, - -0.0859374925494194, - 0.003384761279448867, - -0.006825659424066544, - -0.0012053176760673523, - 0.03988638147711754, - 0.025213807821273804, - -0.030601859092712402, - -0.06182052195072174, - 0.031095515936613083, - -0.018277062103152275, - -0.015841705724596977, - -0.048798274248838425, - 0.03619398921728134, - -0.0316365584731102, - 0.03343591094017029, - -0.0954868346452713, - 0.011421136558055878, - -0.09681153297424316, - 0.00432366319000721, - 0.016019439324736595, - -0.026051219552755356, - -0.003913429100066423, - 0.07487329095602036, - 0.012472547590732574, - 0.012945892289280891, - -0.024861523881554604, - -0.08066530525684357, - 0.003796197474002838, - 0.07142336666584015, - 0.08017975836992264, - 0.0042107198387384415, - 0.035059794783592224, - 0.04922247678041458, - 0.040788229554891586, - 0.0242929644882679, - 0.06684544682502747, - 0.03171093016862869, - -0.038825489580631256, - -0.06607095152139664, - -0.01302734762430191, - 0.11494527012109756, - 0.01928497664630413, - -0.07260964810848236, - -0.046309322118759155, - -0.016786161810159683, - -0.05228213220834732, - 0.022402217611670494, - -0.03037768043577671, - 0.018248820677399635, - 0.05267509073019028, - -0.03130359202623367, - -0.09463240206241608, - -0.06523000448942184, - 0.03587363287806511, - -0.04817706346511841, - -0.007058877032250166, - -0.04091645032167435, - 0.023375002667307854, - 0.07097339630126953, - 0.02264590561389923, - -0.025574853643774986, - 0.002775501925498247, - -0.03003949113190174, - -0.08194026350975037, - -0.09228100627660751, - -0.043983664363622665, - 0.014984121546149254, - -0.08094244450330734, - 0.012860621325671673, - -0.04829484969377518, - 0.07830144464969635, - -0.05900753289461136, - 0.08163068443536758, - 0.022269975394010544, - -0.0518019013106823, - -0.05760157108306885, - -0.018490605056285858, - -0.046950988471508026, - 0.061665259301662445, - 0.06822863221168518, - -0.01342926174402237, - 0.00778565090149641, - -0.06658805906772614, - 0.10745098441839218, - 0.042737770825624466, - -0.02777242660522461, - -0.09870735555887222, - 0.014597277157008648, - -0.010621944442391396, - 0.05519593879580498, - 0.017933133989572525, - -0.0048694908618927, - 0.029852233827114105, - 0.010921476408839226, - -0.0545937642455101, - 0.023371294140815735, - 0.07272682338953018, - 0.05420816317200661, - -0.06974054872989655 - ] - }, - "p244_121.wav": { - "name": "p244", - "embedding": [ - 0.05420980975031853, - 0.10433891415596008, - -0.002371707931160927, - 0.020668279379606247, - -0.062030401080846786, - 0.04665670171380043, - -0.14484882354736328, - 0.16389036178588867, - -0.03254805877804756, - 0.1299302577972412, - -0.04473206400871277, - 0.13779394328594208, - -0.023932889103889465, - -0.16968263685703278, - -0.03426493704319, - 0.06643204391002655, - -0.037543244659900665, - -0.03569311648607254, - -0.018265314400196075, - -0.020131167024374008, - 0.023475490510463715, - 0.04014807194471359, - 0.0508076474070549, - 0.018009144812822342, - 0.038952454924583435, - 0.07226864248514175, - 0.00013127876445651054, - 0.05769720673561096, - 0.015796735882759094, - -0.08617471158504486, - -0.028159286826848984, - 0.07532615959644318, - -0.0640748143196106, - 0.023477481678128242, - 0.050398264080286026, - -0.027185093611478806, - 0.0007421582704409957, - -0.052032992243766785, - -0.03202911466360092, - 5.494197830557823e-05, - -0.026282360777258873, - 0.08942057192325592, - 0.0127931609749794, - -0.013073738664388657, - 0.03898070007562637, - 0.029325444251298904, - -0.007269487716257572, - -0.039107270538806915, - -0.11962693929672241, - 0.14749082922935486, - 0.05608372390270233, - 0.003949814476072788, - -0.09281918406486511, - -0.07841530442237854, - 0.0938212126493454, - -0.052570588886737823, - -0.10997049510478973, - -0.03562942147254944, - 0.06064043939113617, - 0.14383962750434875, - -0.02476629428565502, - -0.05246924236416817, - 0.03413013368844986, - 0.11553512513637543, - 0.07347337901592255, - 0.06802143156528473, - 0.08190984278917313, - 0.09528174251317978, - -0.04751479625701904, - 0.013920800760388374, - 0.033005841076374054, - 0.07544243335723877, - 0.04563790559768677, - 0.011751430109143257, - 0.015539208427071571, - -1.2705335393548012e-05, - -0.0038763682823628187, - -0.019443053752183914, - -0.017570193856954575, - -0.014361182227730751, - -0.033393293619155884, - 0.02703552320599556, - -0.0016232822090387344, - 0.03060579113662243, - -0.01138681173324585, - 0.07251236587762833, - 0.017457157373428345, - -0.010640464723110199, - 0.06827431917190552, - 0.03848595172166824, - 0.01570388302206993, - 0.06788620352745056, - -0.09191546589136124, - -0.05857941880822182, - 0.02314208820462227, - -0.0037599471397697926, - 0.03216229006648064, - 0.06510032713413239, - 0.026834748685359955, - -0.007788940332829952, - 0.12890613079071045, - 0.06693337112665176, - -0.006075536832213402, - 0.0040418291464447975, - -0.09198859333992004, - 0.12205406278371811, - 0.06841802597045898, - -0.018052613362669945, - 0.06684797257184982, - -0.04273418337106705, - 0.05855492874979973, - 0.05181191861629486, - -0.13271838426589966, - -0.09420039504766464, - 0.0129048777744174, - 0.016212984919548035, - -0.0145639106631279, - 0.12382704764604568, - -0.0074400519952178, - 0.06595636904239655, - 0.09348036348819733, - -0.08727648109197617, - -0.048237577080726624, - 0.0034920484758913517, - 0.055652230978012085, - -0.09223422408103943, - 0.07151056826114655, - 0.06163690611720085, - -0.017924435436725616, - 0.027824589982628822, - 0.08913451433181763, - 0.0011070951586589217, - 0.013404087163507938, - 0.022202227264642715, - -0.05987752974033356, - -0.010100746527314186, - -0.022031325846910477, - -0.0036397739313542843, - 0.03698786720633507, - 0.032855454832315445, - 0.05669660121202469, - -0.00853847898542881, - -0.03218870237469673, - -0.13003608584403992, - 0.002222585491836071, - 0.03106776811182499, - 0.07201901078224182, - -0.011891582980751991, - -0.03763050585985184, - -0.026040777564048767, - -0.04013928025960922, - -0.003471312578767538, - 0.00908602960407734, - 0.06965924799442291, - -0.03596119582653046, - 0.015903249382972717, - 0.10955451428890228, - 0.047489821910858154, - -0.0040491316467523575, - -0.04420807957649231, - -0.027716761454939842, - -0.008892526850104332, - 0.06171005219221115, - -0.0735800638794899, - -0.07369723170995712, - -0.005328902043402195, - 0.04626666009426117, - -0.006353202275931835, - 0.08953050523996353, - 0.059936851263046265, - 0.01968693919479847, - 0.024121977388858795, - -0.05000599846243858, - 0.01973305456340313, - -0.07669686526060104, - -0.08990556001663208, - -0.009098267182707787, - -0.002223168732598424, - -0.04789714515209198, - 0.07107093930244446, - 0.04477805644273758, - 0.08857405930757523, - -0.020753053948283195, - -0.06478407233953476, - -0.09558364003896713, - 0.044731177389621735, - 0.051224276423454285, - -0.011965077370405197, - 0.03919252008199692, - 0.066912442445755, - -0.03924969956278801, - 0.0796569287776947, - 0.0604277066886425, - 0.07815545797348022, - -0.04826827347278595, - 0.03236033022403717, - -0.07221107184886932, - 0.060588933527469635, - 0.09354443848133087, - -0.09701211750507355, - -0.08625448495149612, - -0.026837002485990524, - -0.07930216193199158, - 0.042531609535217285, - -0.011242630891501904, - 0.023232558742165565, - 0.05087307095527649, - -0.0017697298899292946, - -0.10703520476818085, - -0.09764380753040314, - 0.09167136996984482, - -0.07334596663713455, - 0.01491341833025217, - -0.058493319898843765, - 0.040147699415683746, - 0.09295397251844406, - 0.03933216631412506, - -0.01162954792380333, - -0.03260267525911331, - 0.04031674563884735, - -0.009134911000728607, - 0.0050201937556266785, - 0.07226568460464478, - 0.04269695281982422, - -0.09170492738485336, - 0.005055755842477083, - -0.07237952202558517, - 0.04862818494439125, - -0.029337037354707718, - 0.15892544388771057, - 0.004040901083499193, - -0.06510515511035919, - -0.08938401937484741, - 0.01596609130501747, - -0.0412583127617836, - 0.061232030391693115, - 0.01430846843868494, - 0.0633939728140831, - 0.054595205932855606, - -0.048005711287260056, - 0.11012687534093857, - 0.05717059224843979, - -0.063078373670578, - -0.06797784566879272, - -0.06504462659358978, - -0.03918616101145744, - 0.04230204224586487, - 0.01452500931918621, - -0.09345594048500061, - -0.024548668414354324, - 0.01076485589146614, - -0.006039399653673172, - 0.08096581697463989, - 0.13920244574546814, - 0.055372096598148346, - -0.13247406482696533 - ] - }, - "p244_331.wav": { - "name": "p244", - "embedding": [ - 0.03541579097509384, - 0.0816521942615509, - -0.012221673503518105, - 0.012426997534930706, - -0.040238942950963974, - 0.08783203363418579, - -0.14746879041194916, - 0.09265685081481934, - -0.08654499053955078, - 0.1622808426618576, - -0.09461624175310135, - 0.09993752092123032, - -0.038974132388830185, - -0.17777110636234283, - -0.057347845286130905, - 0.04853283241391182, - -0.05085389316082001, - -0.05372815206646919, - -0.04684190824627876, - -0.0032470766454935074, - 0.061999496072530746, - 0.03692714124917984, - 0.0014325641095638275, - 0.010339765809476376, - 0.015984781086444855, - 0.051798634231090546, - -0.003846462583169341, - 0.04651078209280968, - 0.0055691152811050415, - -0.05945006012916565, - -0.017140604555606842, - 0.1259884536266327, - -0.04461679607629776, - 0.012495743110775948, - 0.019269734621047974, - 0.02090282551944256, - 0.02442237362265587, - -0.06516962498426437, - -0.008429610170423985, - -0.001907103811390698, - -0.03992881253361702, - 0.05954951047897339, - -0.005811501760035753, - 0.028921978548169136, - 0.011498075909912586, - 0.007941762916743755, - -0.03373553603887558, - -0.04980475455522537, - -0.09024978429079056, - 0.14310427010059357, - 0.051989879459142685, - 0.009912103414535522, - -0.06032196804881096, - -0.09596925228834152, - 0.11927606165409088, - 0.0018951395759359002, - -0.11591041088104248, - -0.05492280051112175, - 0.07581627368927002, - 0.19796814024448395, - -0.03416939824819565, - -0.04985221475362778, - 0.03073951043188572, - 0.0916435718536377, - 0.048828016966581345, - 0.09417574107646942, - 0.09466355293989182, - 0.08180411159992218, - 0.021081503480672836, - -0.024011464789509773, - 0.07200424373149872, - 0.06034855544567108, - 0.06768033653497696, - -0.02673531509935856, - 0.047355808317661285, - 0.019006023183465004, - -0.00662753963842988, - 0.03522117808461189, - -0.03266746923327446, - -0.014477008953690529, - -0.008514937944710255, - 0.010027474723756313, - -0.011535647325217724, - 0.012374328449368477, - -0.03871690854430199, - 0.03026578016579151, - 0.028054356575012207, - -0.018768228590488434, - 0.08365121483802795, - 0.04314650222659111, - 0.03223786875605583, - 0.06849844008684158, - -0.0776033103466034, - -0.07629218697547913, - 0.05171087384223938, - 0.02957124449312687, - 0.002694519469514489, - 0.05777736008167267, - 0.030600065365433693, - -0.03157910332083702, - 0.10725909471511841, - 0.022535985335707664, - 0.012225919403135777, - 0.016766047105193138, - -0.12019062042236328, - 0.1189369186758995, - 0.08406544476747513, - -0.04210780933499336, - 0.02105756849050522, - -0.014496641233563423, - 0.05981947109103203, - 0.07588721811771393, - -0.13372643291950226, - -0.10916389524936676, - 0.0372701920568943, - 0.02367197722196579, - -0.022109616547822952, - 0.11264190077781677, - -0.020507248118519783, - 0.00626147398725152, - 0.09513746947050095, - -0.08201045542955399, - -0.050255924463272095, - -0.0029273105319589376, - 0.034200429916381836, - -0.07355986535549164, - 0.04518639296293259, - 0.03625653684139252, - 0.02164197340607643, - -0.01521256286650896, - 0.09786180406808853, - -0.02204759605228901, - 0.006522484589368105, - -0.013778411783277988, - -0.043217483907938004, - 0.04097282886505127, - -0.032853610813617706, - -0.02832372859120369, - 0.05739249661564827, - 0.04623105004429817, - 0.06224474683403969, - -0.0027581541799008846, - -0.04563479870557785, - -0.13216279447078705, - 0.008978284895420074, - 0.050044041126966476, - 0.05378037318587303, - -0.010215730406343937, - -0.002609184244647622, - -0.05991087481379509, - -0.058252375572919846, - 0.034909091889858246, - -0.014852546155452728, - 0.11469104140996933, - 0.016988882794976234, - 0.0025289137847721577, - 0.10041376203298569, - -0.00028351403307169676, - -0.0020893134642392397, - -0.04796756058931351, - -0.021590260788798332, - 0.013540289364755154, - 0.053607601672410965, - -0.058453384786844254, - -0.06942971050739288, - 0.005301427561789751, - 0.06184694916009903, - 0.010216601192951202, - 0.07055143266916275, - 0.07513122260570526, - 0.0007667512982152402, - 0.020512782037258148, - -0.05919606611132622, - 0.034454457461833954, - -0.08991119265556335, - -0.06496554613113403, - 0.004474753513932228, - -0.04367688670754433, - -0.0024121080059558153, - 0.08297397196292877, - 0.013606883585453033, - 0.01881113089621067, - -0.03440484032034874, - -0.1082039400935173, - -0.09895014762878418, - 0.06505335867404938, - 0.08122184127569199, - -0.0016685303999111056, - 0.03677600994706154, - 0.059178099036216736, - -0.009844358079135418, - 0.06286277621984482, - 0.07264810055494308, - 0.1308685690164566, - -0.03740754351019859, - 0.018966030329465866, - -0.05577864497900009, - 0.07950403541326523, - 0.055514488369226456, - -0.07599318772554398, - -0.06791509687900543, - -0.010446444153785706, - -0.07375945150852203, - 0.06095854192972183, - -0.021290533244609833, - 0.019405076280236244, - 0.048066675662994385, - -0.03073003515601158, - -0.11433113366365433, - -0.07640784978866577, - 0.09234999865293503, - -0.059330545365810394, - -0.019570494070649147, - -0.0894651785492897, - 0.04015011340379715, - 0.07895421981811523, - 0.04484124109148979, - -0.015935782343149185, - 0.01086941733956337, - 0.04565582796931267, - -0.06120605394244194, - -0.004541727248579264, - 0.05140858143568039, - 0.00817751232534647, - -0.09109561145305634, - -0.006130436901003122, - -0.1253180205821991, - 0.05774698778986931, - -0.06462391465902328, - 0.1439346969127655, - -0.016630418598651886, - -0.05334024503827095, - -0.08961011469364166, - 0.04076334089040756, - -0.02999519370496273, - 0.0687546655535698, - 0.042265649884939194, - 0.07961881905794144, - 0.05788794159889221, - -0.05281192064285278, - 0.10735557228326797, - 0.05628572776913643, - -0.030042653903365135, - -0.07711321860551834, - -0.04306810349225998, - -0.04259932413697243, - 0.016305210068821907, - -0.019216010347008705, - -0.07786834239959717, - 0.009043860249221325, - 0.02674337476491928, - 0.0008316270541399717, - 0.06443923711776733, - 0.11581195145845413, - 0.05936264619231224, - -0.11903617531061172 - ] - }, - "p244_009.wav": { - "name": "p244", - "embedding": [ - 0.03290610387921333, - 0.08333328366279602, - -0.014391103759407997, - 0.03857538476586342, - -0.057077277451753616, - 0.0047579314559698105, - -0.10529172420501709, - 0.12756314873695374, - -0.004455195739865303, - 0.104286789894104, - -0.07982030510902405, - 0.12462792545557022, - -0.05842305347323418, - -0.14488382637500763, - -0.014104433357715607, - 0.0633617490530014, - -0.01144502405077219, - -0.01146823912858963, - 0.006739433854818344, - -0.03120742179453373, - 0.03622310236096382, - 0.046508997678756714, - 0.06616988778114319, - -0.0016240356490015984, - 0.008199850097298622, - 0.08053796738386154, - -0.0022529433481395245, - 0.030590787529945374, - 0.011158742010593414, - -0.03716909885406494, - -0.007432682439684868, - 0.061043620109558105, - -0.013746824115514755, - 0.01777333952486515, - 0.025905504822731018, - 0.014887186698615551, - -0.00883655808866024, - -0.03131641447544098, - -0.006488006561994553, - -0.010581636801362038, - -0.05273634195327759, - 0.05792669579386711, - 0.0069999173283576965, - -0.04620152711868286, - 0.05337395891547203, - -0.003029255196452141, - -0.03159916028380394, - -0.011096817441284657, - -0.10760626196861267, - 0.14992429316043854, - 0.04811668395996094, - 0.02662993222475052, - -0.08908692002296448, - -0.0403478778898716, - 0.08363235741853714, - -0.025169089436531067, - -0.0932357981801033, - -0.04197346419095993, - 0.0749293714761734, - 0.1356501281261444, - -0.01578334905207157, - -0.042207829654216766, - 0.031088298186659813, - 0.09933555871248245, - 0.03422577306628227, - 0.05418774113059044, - 0.08088222146034241, - 0.09444867074489594, - -0.02446182817220688, - 0.003708901349455118, - 0.02211766317486763, - 0.08883614093065262, - 0.047666702419519424, - 0.015000523068010807, - -0.014961561188101768, - -0.021019399166107178, - -0.013484487310051918, - 0.0034485410433262587, - -0.020270880311727524, - -0.04885249212384224, - -0.048257194459438324, - -0.027113303542137146, - -0.0027742625679820776, - -0.01651928760111332, - -0.005384180229157209, - 0.043192241340875626, - 0.05892901122570038, - -0.018471181392669678, - 0.06013456732034683, - 0.035338740795850754, - -0.022221896797418594, - 0.044151850044727325, - -0.05702565610408783, - -0.04898470640182495, - -0.013930716551840305, - -0.0022831978276371956, - 0.04580358415842056, - 0.06563348323106766, - 0.03550197184085846, - 0.007841670885682106, - 0.10671895742416382, - 0.02599121630191803, - 0.0043195998296141624, - -0.0025952039286494255, - -0.0934603214263916, - 0.10964865237474442, - 0.10816070437431335, - -0.024411596357822418, - 0.046036675572395325, - -0.034352269023656845, - 0.01966046541929245, - 0.04859580844640732, - -0.08874480426311493, - -0.04727163910865784, - -0.02022959478199482, - 0.0157342329621315, - 0.016454599797725677, - 0.09834884107112885, - 0.01735919900238514, - 0.03737746551632881, - 0.12326224148273468, - -0.10016807913780212, - -0.09266705811023712, - -0.03160642459988594, - 0.03176315873861313, - -0.09092157334089279, - 0.06275834143161774, - 0.07296454906463623, - 0.008957098238170147, - 0.029911672696471214, - 0.059294555336236954, - 0.011397802270948887, - 0.03669579699635506, - -0.004788540303707123, - -0.061024945229291916, - -0.018016789108514786, - -0.04988691210746765, - -0.007763370871543884, - 0.08740144968032837, - 0.04229965806007385, - 0.07493235915899277, - 0.01616298407316208, - -0.020788973197340965, - -0.11774794012308121, - 0.0003076753346249461, - 0.06607553362846375, - 0.03273431584239006, - -0.023462504148483276, - -0.0511879101395607, - -0.023802796378731728, - -0.057312972843647, - 0.023569168522953987, - 0.0038475836627185345, - 0.06572814285755157, - -0.038017284125089645, - -0.0033452454954385757, - 0.10601448267698288, - 0.014992693439126015, - -0.014330792240798473, - -0.056976012885570526, - -0.038848187774419785, - -0.011372795328497887, - 0.020188990980386734, - -0.11092783510684967, - -0.0934695452451706, - -0.04296105355024338, - 0.055108942091464996, - -0.01912037841975689, - 0.04681546241044998, - 0.05948136746883392, - -0.0024230442941188812, - -0.0009722725953906775, - -0.02059830352663994, - 0.011703070253133774, - -0.06589550524950027, - -0.09323522448539734, - -0.001835276372730732, - -0.021795958280563354, - -0.007641312200576067, - 0.06791874766349792, - 0.020152149721980095, - 0.05164969339966774, - -0.022221006453037262, - -0.0693928673863411, - -0.10133972764015198, - 0.038995932787656784, - 0.02053011581301689, - -0.00844467245042324, - 0.05497853830456734, - 0.04694122448563576, - -0.07966507971286774, - 0.06087392568588257, - 0.02980203740298748, - 0.10071810334920883, - -0.06234333664178848, - 0.007728932425379753, - -0.07707223296165466, - 0.04718461632728577, - 0.12590500712394714, - -0.08345238119363785, - -0.07745872437953949, - -0.08545085787773132, - -0.06679253280162811, - 0.04591762647032738, - -0.029235392808914185, - -0.010717829689383507, - 0.03232759237289429, - -0.025126105174422264, - -0.10085204243659973, - -0.10697224736213684, - 0.056809864938259125, - -0.03047030046582222, - -0.004984191618859768, - -0.06127926707267761, - 0.04727930948138237, - 0.039400458335876465, - 0.013793750666081905, - -0.015099452808499336, - 0.007690818980336189, - 0.015575211495161057, - -0.045287180691957474, - -0.0115211121737957, - 0.05708640068769455, - 0.05113761126995087, - -0.042249903082847595, - -0.038948528468608856, - -0.09032081067562103, - 0.05272318795323372, - -0.03209463506937027, - 0.13962438702583313, - -0.004263963550329208, - -0.048091232776641846, - -0.06869148463010788, - 0.010186580941081047, - -0.016271507367491722, - 0.05376783758401871, - 0.043973468244075775, - 0.04174920916557312, - 0.012833533808588982, - -0.06805049628019333, - 0.10944811999797821, - 0.0558023527264595, - -0.032690275460481644, - -0.066848024725914, - -0.047987475991249084, - -0.04779447615146637, - 0.013941776007413864, - -0.020745795220136642, - -0.08239023387432098, - -0.0035557392984628677, - -0.0050284368917346, - 0.01777922734618187, - 0.06079863756895065, - 0.114070825278759, - 0.04020806774497032, - -0.07465103268623352 - ] - }, - "p244_127.wav": { - "name": "p244", - "embedding": [ - 0.04658830910921097, - 0.06260549277067184, - -0.006287736352533102, - 0.024215614423155785, - -0.019602863118052483, - 0.06372515857219696, - -0.13202497363090515, - 0.11467951536178589, - -0.011525056324899197, - 0.13998782634735107, - -0.08808180689811707, - 0.11441274732351303, - -0.0037071583792567253, - -0.1515623927116394, - -0.019572248682379723, - 0.031747639179229736, - -0.00026290927780792117, - 0.014862647280097008, - -0.007206363137811422, - -0.01091399323195219, - 0.06945531070232391, - 0.07098910212516785, - 0.040798820555210114, - -0.04977024346590042, - 0.034653451293706894, - 0.05427345260977745, - 0.005055768880993128, - 0.06353043019771576, - 0.0022681551054120064, - -0.09526313841342926, - -0.023277804255485535, - 0.11598458141088486, - -0.017313525080680847, - 0.014803117141127586, - 0.014584030024707317, - -0.007661606650799513, - -0.014505650848150253, - -0.0625762939453125, - 0.011438107118010521, - 0.01185659971088171, - -0.01616045832633972, - 0.049701690673828125, - 0.023318318650126457, - -0.015806090086698532, - 0.034538254141807556, - -0.0009171826532110572, - -0.011900722980499268, - -0.05578138679265976, - -0.10989811271429062, - 0.17207221686840057, - 0.024038737639784813, - 0.02493540570139885, - -0.07878866046667099, - -0.06328605860471725, - 0.08350934088230133, - 0.0077207498252391815, - -0.06403134018182755, - -0.016696106642484665, - 0.06292547285556793, - 0.16110067069530487, - -0.010943852365016937, - -0.058716218918561935, - 0.06317492574453354, - 0.06314487755298615, - -0.005325620528310537, - 0.0704900324344635, - 0.10005318373441696, - 0.07264034450054169, - 0.02517593279480934, - 0.0148459542542696, - -0.021879859268665314, - 0.08725609630346298, - 0.016613127663731575, - -0.0073416875675320625, - 0.02053922228515148, - -0.0033455914817750454, - -0.035645242780447006, - 0.01729992777109146, - -0.03468381613492966, - -0.03027549386024475, - 0.023294072598218918, - 0.0029266304336488247, - 0.03214956820011139, - 0.023959046229720116, - -0.055630505084991455, - 0.0348842591047287, - 0.0011369313579052687, - -0.014479635283350945, - 0.06491304188966751, - -0.0171013455837965, - 0.020700231194496155, - 0.03855355829000473, - -0.06517244130373001, - -0.11348254978656769, - 0.03670442849397659, - 0.021799206733703613, - 0.011915899813175201, - 0.06533152610063553, - 0.05046561360359192, - -0.04921099543571472, - 0.11094015836715698, - 0.01865033246576786, - -0.01207005139440298, - 0.003989707678556442, - -0.06642302870750427, - 0.0855250284075737, - 0.12379711866378784, - 0.004956814460456371, - 0.08126046508550644, - -0.0907628983259201, - 0.05807500332593918, - 0.03417370468378067, - -0.13315434753894806, - -0.08021371066570282, - 0.01635052263736725, - 0.029660116881132126, - 0.022714344784617424, - 0.1263212263584137, - 0.0037559240590780973, - 0.03628788888454437, - 0.08916031569242477, - -0.1201762780547142, - -0.05086067318916321, - -0.02359720878303051, - 0.039999544620513916, - -0.07151632010936737, - 0.059445809572935104, - 0.04963528364896774, - -0.02567708119750023, - 0.0016434730496257544, - 0.03686103969812393, - -0.032526928931474686, - 0.03571029379963875, - -0.010871256701648235, - -0.04564623534679413, - 0.021675823256373405, - -0.06487111747264862, - -0.022027797996997833, - 0.024676360189914703, - 0.052233144640922546, - 0.044405072927474976, - 0.0022868788801133633, - -0.07289264351129532, - -0.1260998249053955, - -0.004170695319771767, - 0.03340679407119751, - 0.037976693361997604, - -0.028692152351140976, - -0.039732035249471664, - -0.056720905005931854, - -0.06840913742780685, - 0.03389532119035721, - -0.028629226610064507, - 0.06423278152942657, - 0.01169472187757492, - 0.01982017420232296, - 0.07205839455127716, - 0.019033191725611687, - -0.00809904932975769, - -0.04061006382107735, - -0.048766326159238815, - 0.008097197860479355, - 0.010801266878843307, - -0.04781961441040039, - -0.05832257866859436, - -0.02562042325735092, - 0.01620791107416153, - -0.041379477828741074, - 0.028882190585136414, - 0.041352707892656326, - 0.03783556818962097, - 0.03214290365576744, - -0.05074073374271393, - -0.011035635136067867, - -0.10127341747283936, - -0.06457854807376862, - 0.016947541385889053, - 0.008741732686758041, - -0.019055141136050224, - 0.09269105643033981, - 0.02707105502486229, - 0.033004049211740494, - -0.05711086839437485, - -0.017399966716766357, - -0.06857027113437653, - 0.04161455109715462, - 0.05821641534566879, - 0.015034226700663567, - 0.04238680750131607, - 0.013804599642753601, - -0.012920196168124676, - 0.07800231873989105, - 0.07381346821784973, - 0.07853017002344131, - 0.01876921020448208, - -0.01598728448152542, - -0.06785853952169418, - 0.1082458347082138, - 0.10947208106517792, - -0.02701704204082489, - -0.08586087077856064, - -0.025790922343730927, - -0.11441995948553085, - 0.06302960216999054, - -0.013127107173204422, - -0.009299460798501968, - 0.01957782171666622, - -0.015136376023292542, - -0.1261642873287201, - -0.05232756584882736, - 0.03815246373414993, - -0.021039143204689026, - -0.014643959701061249, - -0.07588966190814972, - 0.05869888886809349, - 0.10201459378004074, - 0.025809211656451225, - -0.003931641578674316, - -0.038445066660642624, - 0.03567447513341904, - -0.06961512565612793, - 0.0071885958313941956, - 0.018263740465044975, - 0.025493260473012924, - -0.0879364013671875, - 0.03344513103365898, - -0.06425642967224121, - 0.022746529430150986, - -0.0661846324801445, - 0.12518291175365448, - 0.018635880202054977, - -0.04994634538888931, - -0.07431639730930328, - 0.08005322515964508, - -0.012550096027553082, - 0.02522459253668785, - 0.020094329491257668, - 0.01730910688638687, - 0.06951040029525757, - -0.13160404562950134, - 0.0784558355808258, - 0.027975033968687057, - -0.027666527777910233, - -0.07800722122192383, - -0.07368484139442444, - -0.020990831777453423, - 0.028741326183080673, - -0.017479144036769867, - -0.04319344088435173, - -0.03360884636640549, - 0.03481416776776314, - 0.038555216044187546, - 0.049933891743421555, - 0.11130048334598541, - -0.0071829236112535, - -0.11586718261241913 - ] - }, - "p244_131.wav": { - "name": "p244", - "embedding": [ - 0.051773663610219955, - 0.11920531839132309, - -0.017388202250003815, - 0.00801470223814249, - -0.053291283547878265, - 0.08008962869644165, - -0.14152702689170837, - 0.13869786262512207, - -0.06063380464911461, - 0.13399645686149597, - -0.08124585449695587, - 0.1243433803319931, - -0.02791563980281353, - -0.16790561378002167, - -0.03832479566335678, - 0.056006934493780136, - -0.02642492949962616, - -0.021153349429368973, - -0.029843613505363464, - -0.01801777444779873, - 0.02627597376704216, - 0.0016101183136925101, - 0.014214443042874336, - 0.0020707491785287857, - 0.04575660079717636, - 0.05909210443496704, - 0.0027672320138663054, - 0.03775542601943016, - -0.0012633068254217505, - -0.0262643750756979, - -0.04282417148351669, - 0.10847103595733643, - -0.05040731281042099, - 0.005238312296569347, - 0.0695110410451889, - 0.004018851555883884, - 0.0013476479798555374, - -0.08221562951803207, - -0.006653761025518179, - -0.012197775766253471, - -0.027806490659713745, - 0.07341498136520386, - 0.0196712426841259, - -0.024899905547499657, - 0.02405600994825363, - 0.038215458393096924, - 0.009255281649529934, - -0.046461135149002075, - -0.09786874055862427, - 0.13107037544250488, - 0.04400842636823654, - 0.011600933969020844, - -0.09161623567342758, - -0.06429623812437057, - 0.11179177463054657, - -0.014369804412126541, - -0.08008041232824326, - -0.02826160565018654, - 0.06530298292636871, - 0.15863749384880066, - -0.03980468586087227, - -0.042695533484220505, - 0.014585405588150024, - 0.10486936569213867, - 0.04771605134010315, - 0.09672224521636963, - 0.07401271909475327, - 0.10617061704397202, - -0.014771237038075924, - 0.02012082003057003, - 0.06321466714143753, - 0.06497268378734589, - 0.05378652736544609, - -0.031599752604961395, - 0.030269965529441833, - -0.00839713029563427, - -0.027909105643630028, - 0.01970379427075386, - -0.04190796613693237, - -0.040651991963386536, - -0.02526729367673397, - 0.011208882555365562, - 0.011837984435260296, - 0.017618713900446892, - -0.030671343207359314, - 0.054828397929668427, - 0.04742934927344322, - -0.030792851001024246, - 0.0753750279545784, - 0.05128327012062073, - -0.007923362776637077, - 0.057089969515800476, - -0.10551302134990692, - -0.0930054634809494, - 0.05335550010204315, - -0.004006318747997284, - 0.011687538586556911, - 0.07276883721351624, - 0.0472969114780426, - -0.008699174039065838, - 0.10147623717784882, - 0.07395502924919128, - 0.010805686935782433, - 0.03500901162624359, - -0.08613039553165436, - 0.13689228892326355, - 0.08635851740837097, - -0.03649013116955757, - 0.03314037621021271, - -0.038866739720106125, - 0.06129535287618637, - 0.0781913697719574, - -0.13437868654727936, - -0.09328192472457886, - 0.02348935417830944, - 0.007293185219168663, - -0.013193312101066113, - 0.0976811870932579, - -0.02401071786880493, - 0.019212350249290466, - 0.08764948695898056, - -0.0785221979022026, - -0.07158657908439636, - -0.022475769743323326, - 0.03214990720152855, - -0.06492529809474945, - 0.06085385009646416, - 0.057107701897621155, - 0.013710787519812584, - -0.0067566074430942535, - 0.07545354962348938, - 0.004002261906862259, - -0.015050138346850872, - 0.025699054822325706, - -0.02662610076367855, - 0.026017412543296814, - -0.006892682518810034, - -0.009361796081066132, - 0.027427449822425842, - 0.05025481432676315, - 0.044319652020931244, - 0.009692894294857979, - 0.004204666707664728, - -0.10147213190793991, - 0.0006517904694192111, - 0.06280013918876648, - 0.07969294488430023, - -0.014023507945239544, - -0.026885345578193665, - -0.03972513601183891, - -0.06018434092402458, - 0.0011818509083241224, - -0.004179387353360653, - 0.08737614005804062, - -0.0017851374577730894, - 0.02197900041937828, - 0.10882064700126648, - 0.027451803907752037, - -0.0006058961153030396, - -0.0544869601726532, - -0.003399872686713934, - 0.037098612636327744, - 0.055405810475349426, - -0.06441332399845123, - -0.0911090224981308, - -0.012462671846151352, - 0.012206878513097763, - -0.03538180887699127, - 0.05990897864103317, - 0.03708581626415253, - 0.01570219174027443, - 0.03672369197010994, - -0.06958041340112686, - 0.021782031282782555, - -0.1099281907081604, - -0.03805774822831154, - -0.02388021908700466, - -0.03261515498161316, - -0.026013564318418503, - 0.06997651606798172, - 0.03265005722641945, - 0.053749483078718185, - -0.015251873061060905, - -0.06236136704683304, - -0.07106058299541473, - 0.05539129301905632, - 0.07320192456245422, - 0.00047182230628095567, - 0.03349994122982025, - 0.04923785850405693, - 0.0042983125895261765, - 0.04841270670294762, - 0.09075738489627838, - 0.08412593603134155, - -0.020233657211065292, - 0.011173320934176445, - -0.05772450566291809, - 0.0908752977848053, - 0.07853017747402191, - -0.0999670922756195, - -0.09733794629573822, - -0.0314897857606411, - -0.044976554811000824, - 0.023222923278808594, - -0.023158585652709007, - 0.018883084878325462, - 0.026271507143974304, - -0.026486029848456383, - -0.0903608426451683, - -0.0990128144621849, - 0.08923383802175522, - -0.06793790310621262, - 0.0019103498198091984, - -0.0708601325750351, - 0.043945472687482834, - 0.08585767447948456, - 0.015695583075284958, - -0.03577731177210808, - -0.007984409108757973, - 0.04524214193224907, - -0.040539972484111786, - -0.006983797065913677, - 0.03293531760573387, - 0.023067450150847435, - -0.10118408501148224, - 0.03308899700641632, - -0.059888310730457306, - 0.08571215718984604, - -0.05049239099025726, - 0.1737249344587326, - 0.0047993953339755535, - -0.04805077239871025, - -0.08287292718887329, - 0.023064663633704185, - -0.023640461266040802, - 0.04154631122946739, - 0.03071696124970913, - 0.06575850397348404, - 0.004734584596008062, - -0.06670975685119629, - 0.1147979125380516, - 0.029987230896949768, - -0.038460299372673035, - -0.07809272408485413, - -0.05830715224146843, - -0.04498923569917679, - 0.027115676552057266, - 0.0030816548969596624, - -0.08249428868293762, - -0.014225131832063198, - 0.019196022301912308, - -0.006374415010213852, - 0.07042526453733444, - 0.14711768925189972, - 0.07646961510181427, - -0.1051764190196991 - ] - }, - "p244_220.wav": { - "name": "p244", - "embedding": [ - 0.03879730403423309, - 0.09055493772029877, - -0.013449713587760925, - 0.02201610803604126, - -0.05717796832323074, - 0.0815148651599884, - -0.12207820266485214, - 0.11224985122680664, - -0.060486312955617905, - 0.1440199613571167, - -0.07286649197340012, - 0.11312384903430939, - -0.019619306549429893, - -0.19507959485054016, - -0.04555293545126915, - 0.052274953573942184, - -0.05741092190146446, - -0.026642274111509323, - -0.03728384152054787, - -0.025818457826972008, - 0.0455283522605896, - 0.05022699758410454, - 0.028865983709692955, - 0.0031799792777746916, - 0.03064601682126522, - 0.05860237404704094, - -0.00041064945980906487, - 0.04074525833129883, - 0.011033182963728905, - -0.06751112639904022, - -0.05683927983045578, - 0.11227892339229584, - -0.045693494379520416, - 0.023093216121196747, - 0.04455939680337906, - 0.005104595795273781, - 0.012291442602872849, - -0.06127537041902542, - -0.02649378776550293, - 0.015792740508913994, - -0.04402081295847893, - 0.06688160449266434, - 0.03025428019464016, - -0.0003331135958433151, - 0.039093393832445145, - 0.0072454228065907955, - -0.019478455185890198, - -0.0503864660859108, - -0.09392698854207993, - 0.1703638881444931, - 0.062744140625, - -0.0065002660267055035, - -0.05478322133421898, - -0.09012486040592194, - 0.11785050481557846, - -0.0051047103479504585, - -0.13170382380485535, - -0.027212215587496758, - 0.0818513035774231, - 0.16934679448604584, - -0.020376477390527725, - -0.040059130638837814, - 0.01990499161183834, - 0.11665328592061996, - 0.019441386684775352, - 0.1002735048532486, - 0.06772534549236298, - 0.08665567636489868, - 0.0014297913294285536, - 0.007924351841211319, - 0.06708859652280807, - 0.07308071851730347, - 0.04511871561408043, - -0.026148442178964615, - 0.02646047994494438, - 0.005571114830672741, - -0.02838445082306862, - 0.025852523744106293, - -0.019251462072134018, - -0.002665368840098381, - -0.020315591245889664, - 0.0013356282142922282, - 0.005613367073237896, - -0.0006534084677696228, - -0.026520565152168274, - 0.04145396500825882, - 0.012017980217933655, - 0.004497114103287458, - 0.06751247495412827, - 0.04404584318399429, - 0.00844128429889679, - 0.06120280548930168, - -0.05212843045592308, - -0.0926857441663742, - 0.022167038172483444, - 0.01979418843984604, - 0.011135349981486797, - 0.07833263278007507, - 0.03854385018348694, - -0.02573969028890133, - 0.11011773347854614, - 0.05281824991106987, - 0.0032901037484407425, - 0.024407315999269485, - -0.10709923505783081, - 0.10679684579372406, - 0.09270425140857697, - -0.009921396151185036, - 0.05202547833323479, - -0.045261450111866, - 0.10293298959732056, - 0.08683113753795624, - -0.15195858478546143, - -0.07544927299022675, - 0.03328393027186394, - 0.021967818960547447, - -0.0022797503042966127, - 0.1113390251994133, - -0.013943596743047237, - 0.01276822667568922, - 0.10044863820075989, - -0.09282051771879196, - -0.054333608597517014, - -0.033119358122348785, - 0.042725201696157455, - -0.08001001924276352, - 0.0430799201130867, - 0.039619144052267075, - -0.01773996464908123, - 0.00014796573668718338, - 0.07431536167860031, - -0.024226512759923935, - 0.004928186535835266, - 0.02313924953341484, - -0.050774913281202316, - 0.019231736660003662, - -0.037040047347545624, - 0.008389119058847427, - 0.06587131321430206, - 0.04547805339097977, - 0.03970226272940636, - -8.527810859959573e-05, - -0.04865244776010513, - -0.11709722131490707, - 0.01301967166364193, - 0.04203265905380249, - 0.06552766263484955, - -0.008239119313657284, - -0.02330688200891018, - -0.03644777834415436, - -0.08237116038799286, - 0.04103248938918114, - -0.012745723128318787, - 0.09000204503536224, - -0.01131061464548111, - -0.00408023688942194, - 0.08427457511425018, - 0.03021332249045372, - -0.025550007820129395, - -0.05551968142390251, - -0.04676496610045433, - 0.01076146587729454, - 0.042087048292160034, - -0.08938419073820114, - -0.06806981563568115, - 0.0052156224846839905, - 0.023495769128203392, - -0.016163988038897514, - 0.03915276378393173, - 0.049200914800167084, - 0.01324817817658186, - 0.05049874633550644, - -0.07602536678314209, - 0.009448867291212082, - -0.12491156905889511, - -0.0672941654920578, - -0.018088815733790398, - -0.03395524621009827, - -0.001566180377267301, - 0.09039953351020813, - 0.008829125203192234, - 0.021368809044361115, - -0.01361086405813694, - -0.06383176892995834, - -0.06541204452514648, - 0.07006420195102692, - 0.06460034847259521, - 0.025414317846298218, - 0.053112201392650604, - 0.05500742793083191, - -0.03475232422351837, - 0.06942816823720932, - 0.06279851496219635, - 0.11005311459302902, - -0.022728553041815758, - 0.03446103632450104, - -0.061128031462430954, - 0.08493976294994354, - 0.0739341750741005, - -0.09063868224620819, - -0.09390824288129807, - -0.032900579273700714, - -0.06158585473895073, - 0.057387083768844604, - -0.02975746989250183, - -0.0012641990324482322, - 0.008109633810818195, - -0.008847979828715324, - -0.08933817595243454, - -0.08393734693527222, - 0.09103529155254364, - -0.0433959886431694, - -0.022728756070137024, - -0.0708194375038147, - 0.048191651701927185, - 0.09499004483222961, - 0.04553939402103424, - -0.02243354730308056, - 0.014007735066115856, - 0.05793747305870056, - -0.058781158179044724, - -0.006644446402788162, - 0.047453057020902634, - 0.015412582084536552, - -0.09625618159770966, - 0.008070964366197586, - -0.08590416610240936, - 0.0674610584974289, - -0.06626740097999573, - 0.16323433816432953, - -0.012062348425388336, - -0.06744888424873352, - -0.0719728171825409, - 0.058629315346479416, - -0.027350004762411118, - 0.032272979617118835, - 0.039434365928173065, - 0.06757237762212753, - 0.031247874721884727, - -0.06235533207654953, - 0.1072753369808197, - 0.032561205327510834, - -0.0334937646985054, - -0.05052363872528076, - -0.03174809366464615, - -0.0367119163274765, - 0.02287173829972744, - -0.0005507778259925544, - -0.08926013112068176, - -0.008259646594524384, - 0.023013412952423096, - -0.006786442827433348, - 0.05982303246855736, - 0.14092090725898743, - 0.06602182984352112, - -0.12202151119709015 - ] - }, - "p244_374.wav": { - "name": "p244", - "embedding": [ - 0.023449799045920372, - 0.09643372893333435, - -0.032250478863716125, - 0.005322292447090149, - -0.016022540628910065, - 0.0508054755628109, - -0.13578638434410095, - 0.09502934664487839, - -0.056720755994319916, - 0.1447373479604721, - -0.03489553555846214, - 0.09041651338338852, - -0.03130771964788437, - -0.1395520269870758, - -0.027699880301952362, - 0.05204661935567856, - -0.051412902772426605, - -0.02630513161420822, - -0.0019895657896995544, - -0.04401072859764099, - 0.046441029757261276, - 0.03166159242391586, - 0.011625888757407665, - -0.029704419896006584, - 0.004238383378833532, - 0.08030026406049728, - 0.005667436867952347, - 0.014578722417354584, - -0.0003715492784976959, - -0.06751219928264618, - -0.03447506204247475, - 0.09523941576480865, - -0.022197291254997253, - -0.008337460458278656, - 0.027852412313222885, - 0.009596243500709534, - 0.0008364307577721775, - -0.050223857164382935, - 0.000549623160623014, - 0.02582681179046631, - -0.0528397411108017, - 0.0737689957022667, - 0.023051604628562927, - -0.005195187404751778, - 0.05737006664276123, - -0.05281570181250572, - -0.02818243019282818, - -0.017421789467334747, - -0.06383350491523743, - 0.1298730969429016, - 0.10277587175369263, - -0.007928198203444481, - -0.0379345640540123, - -0.037560053169727325, - 0.08777811378240585, - 0.022373056039214134, - -0.1208801120519638, - -0.0252310112118721, - 0.04938438534736633, - 0.14853988587856293, - -0.011800747364759445, - -0.026561260223388672, - 0.03328322991728783, - 0.11597199738025665, - 0.012417681515216827, - 0.07975783944129944, - 0.08920113742351532, - 0.05056234821677208, - 0.02026141993701458, - -0.016240660101175308, - 0.03821743652224541, - 0.08321662247180939, - 0.03376757353544235, - -0.0201406367123127, - 0.03548591211438179, - -0.03312789648771286, - -0.033397823572158813, - -0.024128664284944534, - -0.011269854381680489, - -0.04666639864444733, - -0.050403352826833725, - -0.00040141059434972703, - 0.002832874422892928, - 0.03926333785057068, - 0.0014116069069132209, - 0.013494587503373623, - 0.028113186359405518, - -0.038565732538700104, - 0.038569074124097824, - 0.03380490094423294, - 0.028290167450904846, - 0.028291037306189537, - -0.050817154347896576, - -0.06457144021987915, - 0.02594846300780773, - 0.009456822648644447, - 0.030960887670516968, - 0.06504091620445251, - 0.03901662677526474, - 0.0018195733428001404, - 0.09513044357299805, - 0.04242563992738724, - 0.0013941613724455237, - -0.00964332651346922, - -0.08384327590465546, - 0.08617278188467026, - 0.09848646819591522, - -0.030436735600233078, - 0.04858040809631348, - -0.026909753680229187, - 0.037407875061035156, - 0.030659686774015427, - -0.12841413915157318, - -0.044140756130218506, - 0.029600482434034348, - 0.03816960006952286, - 0.0023257534485310316, - 0.10797127336263657, - 0.03385370224714279, - 0.02210618183016777, - 0.08123153448104858, - -0.06448104977607727, - -0.06887614727020264, - -0.09283602237701416, - 0.06871804594993591, - -0.09410824626684189, - 0.07797706127166748, - 0.05561335012316704, - 0.007313728332519531, - 0.008195910602807999, - 0.055985815823078156, - 0.008309325203299522, - -0.003935560584068298, - -0.01303067710250616, - -0.04327896237373352, - 0.004225160926580429, - -0.04742027074098587, - 0.03935592621564865, - 0.027425501495599747, - 0.008239563554525375, - 0.05436950549483299, - 0.002620019717141986, - -0.0037700410466641188, - -0.07606267184019089, - 0.004679839126765728, - 0.025717658922076225, - 0.03588217869400978, - -0.021849848330020905, - -0.041657865047454834, - 0.001358928857371211, - -0.07490625232458115, - -0.020749058574438095, - -0.045521121472120285, - 0.08894895762205124, - -0.0032843926455825567, - 0.0088884886354208, - 0.0840899869799614, - 0.01933881640434265, - -0.0074418894946575165, - -0.016723372042179108, - -0.009743014350533485, - 0.02282208763062954, - 0.04553689807653427, - -0.10854979604482651, - -0.07491825520992279, - -0.006919624283909798, - 0.01743520423769951, - 0.012150495313107967, - 0.03819242864847183, - 0.056162089109420776, - 0.00873025692999363, - 0.038402944803237915, - -0.022650912404060364, - 0.017682809382677078, - -0.09988783299922943, - -0.06519915908575058, - -0.031922828406095505, - -0.06194712966680527, - -0.03511340543627739, - 0.07849004864692688, - -0.007298754062503576, - 0.03678799793124199, - -0.01956704631447792, - -0.048037197440862656, - -0.053779806941747665, - 0.06473030894994736, - 0.07054997980594635, - 0.00425155321136117, - 0.017644930630922318, - 0.05806760489940643, - 0.006640546955168247, - 0.009750778786838055, - 0.041887760162353516, - 0.104054294526577, - -0.022354010492563248, - 0.0025161877274513245, - -0.08518111705780029, - 0.05406004935503006, - 0.09197567403316498, - -0.06775777041912079, - -0.06599339097738266, - -0.03665510565042496, - -0.07428398728370667, - 0.04573630914092064, - -0.0492304265499115, - 0.000265246257185936, - -0.008219039998948574, - -0.013596093282103539, - -0.10187450051307678, - -0.08742545545101166, - 0.0933118388056755, - -0.045064859092235565, - -0.01372772827744484, - -0.0618569515645504, - 0.04460422322154045, - 0.0685817301273346, - 0.05725841969251633, - -0.057626865804195404, - 0.027187949046492577, - 0.047102004289627075, - -0.04292602464556694, - 0.03270243853330612, - 0.025353293865919113, - 0.04611819237470627, - -0.09895791113376617, - -0.0016420434694737196, - -0.06781023740768433, - 0.05189454182982445, - -0.07250219583511353, - 0.09858774393796921, - 0.017517752945423126, - -0.050958409905433655, - -0.08054932951927185, - 0.05003558099269867, - -0.008419888094067574, - 0.029420314356684685, - 0.03812549635767937, - 0.07518221437931061, - 0.030836796388030052, - -0.06830979883670807, - 0.0732167661190033, - 0.02889445424079895, - 0.016833506524562836, - -0.048200011253356934, - -0.009828130714595318, - -0.03241066634654999, - 0.041101641952991486, - 0.006099475082010031, - -0.06915758550167084, - -0.006090696435421705, - 0.00019398207950871438, - 0.020913206040859222, - 0.06758694350719452, - 0.08900843560695648, - 0.02920929156243801, - -0.09521955251693726 - ] - }, - "p244_384.wav": { - "name": "p244", - "embedding": [ - 0.05566015467047691, - 0.11395697295665741, - 0.016208510845899582, - 0.01644066348671913, - -0.024002349004149437, - 0.054477911442518234, - -0.06622035056352615, - 0.08821912854909897, - 0.020203595981001854, - 0.07493787258863449, - -0.08233807235956192, - 0.07063636928796768, - -0.040873635560274124, - -0.1317119002342224, - -0.002980649471282959, - 0.0365707166492939, - -0.03391682356595993, - 0.007290172390639782, - -0.03264535591006279, - -0.028852222487330437, - -0.013985025696456432, - 0.010282794013619423, - 0.03223650902509689, - 0.0045434534549713135, - -0.0029877275228500366, - 0.027245599776506424, - -0.030182931572198868, - 0.013489204458892345, - -0.006926137953996658, - -0.0492633581161499, - -0.023077093064785004, - 0.07702772319316864, - -0.02443801425397396, - 0.0008054872741922736, - 0.014587613753974438, - -0.030850771814584732, - 0.010230448096990585, - -0.0658850222826004, - -0.04567558690905571, - 0.02418021485209465, - -0.043879434466362, - 0.051380373537540436, - 0.025394242256879807, - -0.042888231575489044, - 0.039149150252342224, - 0.0022595818154513836, - -0.04928196594119072, - -0.00761794438585639, - -0.09855502843856812, - 0.10403876006603241, - 0.033704712986946106, - 0.022440306842327118, - -0.06818641722202301, - -0.020435117185115814, - 0.1011800765991211, - -0.0034335616510361433, - -0.05934975668787956, - -0.009920991957187653, - 0.042349811643362045, - 0.08056049793958664, - 0.01637434959411621, - -0.020987948402762413, - 0.023552950471639633, - 0.07456541061401367, - 0.04375208169221878, - 0.04541177302598953, - 0.07541152834892273, - 0.10399436950683594, - -0.033417265862226486, - 0.027119828388094902, - 0.03373056650161743, - 0.011724199168384075, - 0.04241838678717613, - -0.012726284563541412, - -0.004522574134171009, - -0.017244575545191765, - -0.002019263803958893, - -0.009453907608985901, - -0.01497898530215025, - -0.04106542095541954, - 0.02151159942150116, - -0.022283729165792465, - 0.003852484282106161, - 0.011755655519664288, - -0.040615763515233994, - -0.009845077991485596, - 0.057101499289274216, - 0.03894852101802826, - 0.07229340076446533, - 0.03508644551038742, - 0.026812713593244553, - 0.07455843687057495, - -0.06594584882259369, - -0.06658811867237091, - 0.014251867309212685, - -0.004513641819357872, - 0.034751296043395996, - 0.04799506068229675, - 0.03846416622400284, - -0.016666464507579803, - 0.10123103857040405, - 0.00968961976468563, - 0.026942379772663116, - 0.0037530555855482817, - -0.06388043612241745, - 0.042672865092754364, - 0.06472232192754745, - -0.012896097265183926, - 0.06440748274326324, - 0.01062367670238018, - 0.06981091946363449, - 0.06846883147954941, - -0.07536599785089493, - -0.014261203818023205, - -0.003836844116449356, - 0.031877219676971436, - 0.0012222162913531065, - 0.10023045539855957, - -0.003363877534866333, - 0.036561690270900726, - 0.08934098482131958, - -0.059772785753011703, - 0.0007901564240455627, - 0.030527103692293167, - 0.0047083026729524136, - -0.03602129593491554, - 0.045893482863903046, - 0.02402573451399803, - -0.018750881776213646, - -0.01842883974313736, - 0.04225537180900574, - 0.009178774431347847, - -0.002205016789957881, - -0.023625221103429794, - -0.014965901151299477, - 0.0016625039279460907, - 0.0035599893890321255, - 7.717932749073952e-05, - 0.027427583932876587, - 0.04772336408495903, - 0.012440296821296215, - 0.006515865679830313, - -0.04017090052366257, - -0.06528477370738983, - 0.024902252480387688, - 0.0067955926060676575, - 0.025829432532191277, - 0.03323550522327423, - -0.02986619435250759, - -0.04087820276618004, - -0.027270019054412842, - 0.062224578112363815, - -0.025220494717359543, - 0.06402501463890076, - 0.04003491252660751, - -0.010010424070060253, - 0.07204889506101608, - 0.03619522601366043, - 0.013378968462347984, - -0.04099726676940918, - -0.07827086746692657, - -0.004374640993773937, - 0.042702071368694305, - -0.07098110020160675, - -0.034417614340782166, - -0.012448584660887718, - -0.024141617119312286, - -0.01612934097647667, - 0.01713244616985321, - 0.06172192841768265, - -0.01600707694888115, - 0.012988138012588024, - -0.07074102759361267, - 0.015045110136270523, - -0.044114768505096436, - -0.08719181269407272, - 0.035293471068143845, - 0.0063250502571463585, - 0.009485555812716484, - 0.07353170216083527, - 0.015584670007228851, - 0.00660300999879837, - -0.036142997443675995, - -0.051705487072467804, - -0.00463007902726531, - 0.04233451187610626, - 0.026176786050200462, - -0.0022782832384109497, - 0.03917685151100159, - 0.05707709491252899, - -0.016167620196938515, - 0.0413212776184082, - 0.02133442834019661, - 0.0711769312620163, - -0.043713055551052094, - 0.01626548171043396, - -0.005085880868136883, - 0.06328696012496948, - 0.06897328048944473, - -0.0725037008523941, - -0.10481145977973938, - -0.04440099745988846, - -0.044441476464271545, - 0.031490959227085114, - -0.009176194667816162, - 0.0003801745770033449, - 0.03060680627822876, - -0.018050074577331543, - -0.03994433581829071, - -0.11339092254638672, - 0.05120830237865448, - -0.017044490203261375, - -0.007945175282657146, - -0.053484879434108734, - 0.03012763522565365, - 0.028895672410726547, - 0.031500112265348434, - -0.027842644602060318, - 0.022633550688624382, - 0.03358602151274681, - -0.005996193736791611, - -0.020609170198440552, - 0.03077751025557518, - 0.035197652876377106, - -0.04148676618933678, - -0.026999717578291893, - -0.05664321780204773, - 0.059217438101768494, - 0.01310439221560955, - 0.10835233330726624, - 0.03155405446887016, - -0.01899263821542263, - -0.07134135067462921, - 0.05220211669802666, - -0.025549456477165222, - 0.04190117120742798, - 0.008280213922262192, - 0.03209483623504639, - 0.047817789018154144, - -0.0439918115735054, - 0.07255464047193527, - 0.025607986375689507, - -0.028876788914203644, - -0.03586782515048981, - 0.0011342864017933607, - -0.05578766390681267, - 0.0039499131962656975, - 0.000495461979880929, - -0.05514378473162651, - -0.01818789914250374, - 0.024498112499713898, - 0.042953379452228546, - 0.05583646148443222, - 0.08736936748027802, - 0.05355657637119293, - -0.04766364023089409 - ] - }, - "p244_311.wav": { - "name": "p244", - "embedding": [ - 0.051357634365558624, - 0.08640292286872864, - -0.023266131058335304, - 0.02229953557252884, - -0.06447425484657288, - 0.07222622632980347, - -0.13573625683784485, - 0.1333259791135788, - -0.04352742061018944, - 0.14977094531059265, - -0.05300269275903702, - 0.11877299845218658, - -0.01130568515509367, - -0.17859090864658356, - -0.04289994761347771, - 0.0334707610309124, - -0.03931748867034912, - -0.039801016449928284, - -0.04093143343925476, - -0.03651154786348343, - 0.036497943103313446, - 0.05618300288915634, - 0.015927409753203392, - 0.009223002940416336, - 0.04482416808605194, - 0.05732090026140213, - -0.009629062376916409, - 0.03104410693049431, - 0.005513321608304977, - -0.07702966779470444, - -0.038203924894332886, - 0.0964803695678711, - -0.06254828721284866, - 0.029088163748383522, - 0.028710223734378815, - -0.010501404292881489, - 0.010291682556271553, - -0.06586772203445435, - -0.03337614983320236, - 0.027852701023221016, - -0.03957948088645935, - 0.08354207873344421, - 0.03790400177240372, - -0.0027799096424132586, - 0.029529694467782974, - 0.006164429243654013, - -0.0006938234437257051, - -0.05417706072330475, - -0.09687276184558868, - 0.1767762005329132, - 0.05619187653064728, - -0.007181104738265276, - -0.06980688869953156, - -0.0776086151599884, - 0.11143673956394196, - -0.016323860734701157, - -0.1179150640964508, - -0.02359612286090851, - 0.06593306362628937, - 0.15822909772396088, - -0.029200537130236626, - -0.056219637393951416, - 0.025904085487127304, - 0.12358596920967102, - 0.055603161454200745, - 0.06216292828321457, - 0.09565773606300354, - 0.10930820554494858, - -0.02649831771850586, - -0.0010681552812457085, - 0.05225870758295059, - 0.07488647103309631, - 0.052707020193338394, - -0.021133607253432274, - 0.023522090166807175, - 0.003000113647431135, - -0.014402510598301888, - -0.0042637246660888195, - -0.023517247289419174, - -0.006714884657412767, - -0.016419006511569023, - 0.016467660665512085, - 0.010034924373030663, - 0.03235607594251633, - -0.038288574665784836, - 0.046929627656936646, - 0.028022320941090584, - -0.018424823880195618, - 0.06956097483634949, - 0.047474659979343414, - 0.0226121935993433, - 0.06090710312128067, - -0.08389033377170563, - -0.0798303559422493, - 0.035781875252723694, - 0.007912063039839268, - 0.02175053581595421, - 0.07769251614809036, - 0.04378724843263626, - -0.01348889246582985, - 0.12146754562854767, - 0.044603876769542694, - -0.012466082349419594, - 0.007494073361158371, - -0.09475603699684143, - 0.11331655085086823, - 0.09762737154960632, - -0.019908040761947632, - 0.06147930026054382, - -0.056610412895679474, - 0.08070899546146393, - 0.05401461198925972, - -0.14500020444393158, - -0.08816921710968018, - 0.040170855820178986, - 0.030931632965803146, - -0.005460510030388832, - 0.131168395280838, - -0.011465403251349926, - 0.044736944139003754, - 0.08541398495435715, - -0.08328656852245331, - -0.03487028554081917, - -0.027626361697912216, - 0.06220778077840805, - -0.07433606684207916, - 0.053497716784477234, - 0.0505019947886467, - -0.019700603559613228, - 0.013632059097290039, - 0.06955055147409439, - -0.008388577029109001, - 0.005705136340111494, - 0.004309090785682201, - -0.037476446479558945, - 0.02089506760239601, - -0.004578168969601393, - 0.001466446090489626, - 0.043698713183403015, - 0.03842398524284363, - 0.054924771189689636, - -0.006294566672295332, - -0.037312932312488556, - -0.11995771527290344, - 0.026603087782859802, - 0.027026604861021042, - 0.07196778059005737, - -0.022917944937944412, - -0.02381109818816185, - -0.04027148336172104, - -0.07303570210933685, - 0.02255737967789173, - -0.003647993318736553, - 0.09252651035785675, - -0.011052945628762245, - 0.010942134074866772, - 0.10676807165145874, - 0.04383505508303642, - -0.01471814326941967, - -0.02746441960334778, - -0.029986966401338577, - -0.017777137458324432, - 0.06124287098646164, - -0.07759775966405869, - -0.07165796309709549, - -0.007651845924556255, - 0.025621674954891205, - -0.01494077779352665, - 0.07042072713375092, - 0.04821113869547844, - 0.01670840196311474, - 0.04153861105442047, - -0.07673287391662598, - 0.0016940627247095108, - -0.10998199135065079, - -0.06242836266756058, - -0.008893463760614395, - -0.022390324622392654, - -0.023218736052513123, - 0.09397567808628082, - 0.03106657788157463, - 0.05410348251461983, - -0.02080501988530159, - -0.060123544186353683, - -0.06440001726150513, - 0.05380197614431381, - 0.053523868322372437, - -0.0066789621487259865, - 0.027786459773778915, - 0.06938782334327698, - -0.0177437923848629, - 0.06584183126688004, - 0.08010941743850708, - 0.08836636692285538, - -0.03083617426455021, - 0.04386240243911743, - -0.06199156492948532, - 0.10994042456150055, - 0.06841009855270386, - -0.0839373916387558, - -0.09480857849121094, - -0.035347942262887955, - -0.07720832526683807, - 0.030661912634968758, - -0.02123548835515976, - 0.026769477874040604, - 0.018754659220576286, - 0.0011099257972091436, - -0.09803085029125214, - -0.08783013373613358, - 0.08327104151248932, - -0.057306498289108276, - -0.00015311618335545063, - -0.09112933278083801, - 0.04500465840101242, - 0.11834831535816193, - 0.05302465707063675, - -0.012607109732925892, - -0.013908649794757366, - 0.05101641267538071, - -0.023482875898480415, - 0.0057307276874780655, - 0.060634415596723557, - 0.02579566463828087, - -0.10661022365093231, - -0.0024223041255027056, - -0.06767679005861282, - 0.06707805395126343, - -0.04907575249671936, - 0.15105122327804565, - 0.01744437776505947, - -0.06619874387979507, - -0.07671445608139038, - 0.0547390878200531, - -0.023104017600417137, - 0.050892770290374756, - 0.02182084694504738, - 0.06905778497457504, - 0.05052930861711502, - -0.05335437133908272, - 0.10176366567611694, - 0.05871710553765297, - -0.050939638167619705, - -0.06275615096092224, - -0.05191664397716522, - -0.011560317128896713, - 0.03879278153181076, - 0.011536180973052979, - -0.07817871868610382, - -0.011468037962913513, - 0.026277780532836914, - -0.009750363416969776, - 0.06902795284986496, - 0.1414240151643753, - 0.0844682902097702, - -0.13844546675682068 - ] - }, - "p244_276.wav": { - "name": "p244", - "embedding": [ - 0.07513131946325302, - 0.02545362338423729, - -0.0007975666667334735, - 0.0007347576320171356, - -0.014446436427533627, - -0.0018529929220676422, - -0.1630624234676361, - 0.12214868515729904, - -0.001670363126322627, - 0.07535199820995331, - -0.051437895745038986, - 0.09921683371067047, - 0.013241864740848541, - -0.15327613055706024, - -0.021063577383756638, - 0.04479089006781578, - -0.005546256899833679, - -0.015442103147506714, - -0.022954702377319336, - -0.03150840848684311, - 0.020176153630018234, - 0.06058849021792412, - 0.031246734783053398, - -0.019195646047592163, - 0.025389356538653374, - 0.05622461438179016, - 0.015163104049861431, - 0.03469700366258621, - -0.01221897266805172, - -0.009008258581161499, - 0.01926465332508087, - 0.061990123242139816, - -0.028483707457780838, - -0.032817672938108444, - 0.03926622122526169, - -0.0018425974994897842, - -0.0015973140252754092, - -0.08711747825145721, - -0.03546024113893509, - 0.015213991515338421, - -0.06350058317184448, - 0.08013074845075607, - 0.05164342746138573, - -0.03413361310958862, - 0.03368685394525528, - 0.025439295917749405, - 0.011682569049298763, - -0.064358189702034, - -0.1342936009168625, - 0.151157945394516, - 0.014985228888690472, - 0.06193343922495842, - -0.11136561632156372, - -0.018629081547260284, - 0.07343872636556625, - -0.02206953428685665, - -0.02288104221224785, - -0.04405027627944946, - 0.04169435799121857, - 0.13684767484664917, - -0.019486747682094574, - -0.0519028902053833, - 0.06259241700172424, - 0.07143506407737732, - 0.06255485862493515, - 0.016289565712213516, - 0.12722131609916687, - 0.0883333832025528, - -0.02125145122408867, - 0.006384031381458044, - 0.02852659486234188, - 0.06598511338233948, - 0.02192794531583786, - -0.007386332377791405, - 0.013409084640443325, - 0.018812738358974457, - -0.03646520525217056, - -0.022810813039541245, - -0.021267544478178024, - -0.024511411786079407, - 0.01405554823577404, - 0.02284611389040947, - 0.02818315289914608, - 0.06552787125110626, - -0.06397907435894012, - 0.05365968868136406, - 0.0382208451628685, - -0.025596462190151215, - 0.06153101846575737, - 0.027358587831258774, - 0.007291970308870077, - 0.01601489633321762, - -0.07241231948137283, - -0.07202789932489395, - 0.011328734457492828, - -0.0033673529978841543, - 0.015303499065339565, - 0.040278173983097076, - 0.03942414000630379, - -0.0285886712372303, - 0.11708387732505798, - 0.025230389088392258, - -0.01589309796690941, - 0.0013176712673157454, - -0.05587373673915863, - 0.08489914983510971, - 0.09609320014715195, - -0.023247260600328445, - 0.04496036469936371, - -0.05696377158164978, - -0.011959615163505077, - 0.04828553646802902, - -0.10010834783315659, - -0.06327567249536514, - 0.05855641886591911, - 0.03563724085688591, - 0.045757003128528595, - 0.1486397087574005, - 0.012655029073357582, - 0.0502140074968338, - 0.08141949772834778, - -0.08284391462802887, - -0.05485440418124199, - 0.004507214762270451, - 0.04715452343225479, - -0.05526868253946304, - 0.06577930599451065, - 0.05322889983654022, - 0.006675058510154486, - -0.016785262152552605, - 0.056993406265974045, - 0.011212694458663464, - -0.00012188901746412739, - -0.06596982479095459, - 0.036848943680524826, - 0.05157247930765152, - -0.005241219885647297, - -0.043959300965070724, - 0.025657981634140015, - 0.059320058673620224, - 0.014650347642600536, - 0.04271932691335678, - -0.05382728576660156, - -0.1463930308818817, - -0.008406261913478374, - 0.041148796677589417, - 0.08537115156650543, - -0.032415278255939484, - -0.04834642633795738, - -0.07863584160804749, - -0.023011289536952972, - -0.029490754008293152, - -0.001999839209020138, - 0.057922668755054474, - 0.008890870027244091, - 0.017409829422831535, - 0.07651060819625854, - -0.017208917066454887, - 0.04339132830500603, - 0.01516370102763176, - 0.002494536340236664, - 0.008127131499350071, - 0.028701579198241234, - -0.0042880079708993435, - -0.08832081407308578, - -0.03724939376115799, - 0.023126747459173203, - -0.01982273906469345, - 0.027472496032714844, - 0.007182744797319174, - -0.002531040459871292, - -0.008446760475635529, - -0.10211595147848129, - 0.029691239818930626, - -0.09596455097198486, - -0.029073771089315414, - 0.03172459453344345, - 0.0033631238620728254, - -0.026961371302604675, - 0.07979995012283325, - 0.04175744205713272, - 0.07449490576982498, - -0.042166538536548615, - -0.07729753851890564, - -0.053343381732702255, - 0.012318165972828865, - 0.06639628112316132, - -0.03494974225759506, - -0.002078404650092125, - 0.009801940992474556, - 0.02757570892572403, - 0.04453955590724945, - 0.058736201375722885, - 0.04062897711992264, - -0.01466267928481102, - -0.039879556745290756, - -0.008759453892707825, - 0.12539933621883392, - 0.048204414546489716, - -0.0434136837720871, - -0.04680304974317551, - 0.0005535235395655036, - -0.07774858176708221, - -0.000574390112888068, - 0.03343776613473892, - 0.04662688076496124, - 0.05060954391956329, - -0.01016424410045147, - -0.11285319179296494, - -0.06839986145496368, - 0.015341583639383316, - -0.060285188257694244, - -0.0014953764621168375, - -0.05849572271108627, - 0.029280435293912888, - 0.10980862379074097, - 0.015062114223837852, - 0.027394801378250122, - -0.0706247091293335, - -0.036756765097379684, - -0.046370141208171844, - -0.019908517599105835, - 0.02065538987517357, - 0.045064907521009445, - -0.08134107291698456, - 0.006947098299860954, - -0.06597991287708282, - 0.06346414983272552, - -0.01968800649046898, - 0.08218702673912048, - 0.040747594088315964, - -0.05304236710071564, - -0.10162591189146042, - -0.020573318004608154, - -0.011410156264901161, - 0.07832687348127365, - 0.02096492424607277, - 0.039235204458236694, - 0.04070473089814186, - -0.07032576948404312, - 0.06468284130096436, - 0.07685994356870651, - -0.046594396233558655, - -0.07684477418661118, - -0.054644010961055756, - -0.0035267286002635956, - 0.03640913590788841, - -0.004815790336579084, - -0.011477336287498474, - -0.004399165511131287, - 0.02710307203233242, - -0.008676138706505299, - 0.0436553955078125, - 0.09508110582828522, - 0.01512140966951847, - -0.11000603437423706 - ] - }, - "p244_119.wav": { - "name": "p244", - "embedding": [ - 0.041035328060388565, - 0.1171216368675232, - -0.01179348025470972, - 0.03046359308063984, - -0.04702170193195343, - 0.09453181177377701, - -0.10668397694826126, - 0.12248910963535309, - -0.08323294669389725, - 0.14492663741111755, - -0.09888210147619247, - 0.10447487235069275, - -0.05675545334815979, - -0.1498221755027771, - -0.05997239425778389, - 0.05494444817304611, - -0.06274647265672684, - -0.023233912885189056, - -0.04553444683551788, - -0.005147829651832581, - 0.03341696783900261, - 0.012462028302252293, - 0.025516755878925323, - 0.022354155778884888, - 0.027508899569511414, - 0.06286543607711792, - 0.001179900486022234, - 0.048382315784692764, - 0.022447364404797554, - -0.050107475370168686, - -0.040904365479946136, - 0.12279647588729858, - -0.04318425804376602, - 0.014436806552112103, - 0.05204117298126221, - 0.019102005288004875, - 0.006252304185181856, - -0.06737777590751648, - -0.0053457641042768955, - -0.021111296489834785, - -0.04827390983700752, - 0.06416188925504684, - 0.00558291282504797, - -0.004469968844205141, - 0.028955701738595963, - 0.006233080290257931, - -0.019877638667821884, - -0.04545636475086212, - -0.09355872869491577, - 0.15283310413360596, - 0.07247988134622574, - -0.002529071643948555, - -0.07150186598300934, - -0.07887449860572815, - 0.10880424082279205, - -0.007559535093605518, - -0.12024316191673279, - -0.04662764444947243, - 0.07981253415346146, - 0.17828938364982605, - -0.02430693805217743, - -0.01474565640091896, - 0.010893961414694786, - 0.12074629962444305, - 0.044923555105924606, - 0.10954049229621887, - 0.06623528152704239, - 0.08859512209892273, - 0.017126547172665596, - 0.031472571194171906, - 0.07967846095561981, - 0.0410277396440506, - 0.05896005779504776, - -0.021644819527864456, - 0.03180265426635742, - -0.01761065609753132, - -0.01831923797726631, - 0.032657016068696976, - -0.02466539293527603, - -0.03449594974517822, - -0.030181854963302612, - 0.00802590325474739, - -0.004851335193961859, - 0.005722460336983204, - -0.021320605650544167, - 0.05398112162947655, - 0.009338266216218472, - -0.0218175258487463, - 0.07274986803531647, - 0.051705602556467056, - -0.002791539765894413, - 0.05145624279975891, - -0.05410643666982651, - -0.0874621570110321, - 0.01553080789744854, - 0.0018303999677300453, - 0.010888876393437386, - 0.07250514626502991, - 0.03416242077946663, - -0.015027493238449097, - 0.0963885635137558, - 0.052156828343868256, - 0.018163956701755524, - 0.02427164651453495, - -0.1131306141614914, - 0.12617751955986023, - 0.0781724825501442, - -0.02230972982943058, - 0.028605753555893898, - -0.0042348201386630535, - 0.07369662076234818, - 0.09680469334125519, - -0.1422722339630127, - -0.07125332206487656, - 0.022511953487992287, - -0.007162821479141712, - -0.008128483779728413, - 0.07181699573993683, - -0.0035393889993429184, - 0.0033530760556459427, - 0.09313615411520004, - -0.07921084761619568, - -0.06184364855289459, - -0.03161986917257309, - 0.045311339199543, - -0.07356663048267365, - 0.043095991015434265, - 0.04346722364425659, - 0.001474400283768773, - -0.01761433854699135, - 0.08378525078296661, - -0.010551784187555313, - -0.015932224690914154, - 0.042461566627025604, - -0.05689840763807297, - 0.02786139026284218, - -0.037262171506881714, - 0.0036523835733532906, - 0.04492847993969917, - 0.05050475895404816, - 0.04371700435876846, - -0.007069278042763472, - -0.009565704502165318, - -0.0784645527601242, - -0.0012035290710628033, - 0.06865569949150085, - 0.05565640330314636, - -0.008396778255701065, - -0.013615313917398453, - -0.03218509256839752, - -0.056504637002944946, - 0.02951989322900772, - -0.011214896105229855, - 0.09775665402412415, - -0.01146942563354969, - -0.005394458770751953, - 0.10931695997714996, - 0.005259362049400806, - -0.009987985715270042, - -0.07161106169223785, - -0.006231918931007385, - 0.03999503329396248, - 0.05255555734038353, - -0.06762631237506866, - -0.07490804046392441, - 0.02168220467865467, - 0.023013144731521606, - -0.019276540726423264, - 0.04656728357076645, - 0.042168669402599335, - 0.004543937277048826, - 0.031079240143299103, - -0.05665223300457001, - 0.02340463176369667, - -0.0977492481470108, - -0.04623570665717125, - -0.01847703568637371, - -0.05729732662439346, - -0.01188218966126442, - 0.0690579041838646, - 0.02865620329976082, - 0.02114933356642723, - 0.013684026896953583, - -0.0934654101729393, - -0.06491606682538986, - 0.07864168286323547, - 0.0688200294971466, - 0.018624501302838326, - 0.05195033177733421, - 0.06353733688592911, - -0.024179628118872643, - 0.050453878939151764, - 0.07028040289878845, - 0.1048823893070221, - -0.022610560059547424, - -0.0059287287294864655, - -0.07370325177907944, - 0.05497792363166809, - 0.07311097532510757, - -0.11497239768505096, - -0.08855105191469193, - -0.035394515842199326, - -0.04312887787818909, - 0.04550495371222496, - -0.0346343070268631, - 0.013257147744297981, - 0.03421206399798393, - -0.04018382728099823, - -0.08878929913043976, - -0.1068856343626976, - 0.1229618713259697, - -0.06971406936645508, - -0.022279294207692146, - -0.06242777034640312, - 0.04196704179048538, - 0.06394918262958527, - 0.03370310366153717, - -0.0312601774930954, - 0.03787950053811073, - 0.04882405698299408, - -0.06794276833534241, - -0.02030945010483265, - 0.03759439289569855, - -0.00434664823114872, - -0.10304947197437286, - 0.022803107276558876, - -0.08713734149932861, - 0.09344163537025452, - -0.06279364228248596, - 0.17406919598579407, - -0.029436789453029633, - -0.048017099499702454, - -0.08457805216312408, - 0.04212973266839981, - -0.036227550357580185, - 0.03667278587818146, - 0.039252158254384995, - 0.07407870888710022, - 0.00952131673693657, - -0.05543564260005951, - 0.11899800598621368, - 0.021641097962856293, - -0.0313698872923851, - -0.06194864958524704, - -0.0465119443833828, - -0.058486443012952805, - 0.010606616735458374, - -0.008879156783223152, - -0.09011583030223846, - 0.003236854914575815, - 0.012624252587556839, - -0.015175329521298409, - 0.0782565027475357, - 0.1355554461479187, - 0.07503320276737213, - -0.0978284627199173 - ] - }, - "p244_183.wav": { - "name": "p244", - "embedding": [ - 0.04004361480474472, - 0.1142340749502182, - 0.01573406346142292, - 0.008702335879206657, - -0.026102041825652122, - 0.01421207096427679, - -0.05444011092185974, - 0.09331192076206207, - 0.030600570142269135, - 0.06351393461227417, - -0.08533996343612671, - 0.07840592414140701, - -0.06860426068305969, - -0.10734489560127258, - 0.008671983145177364, - 0.035235267132520676, - -0.037064485251903534, - -0.006941264029592276, - -0.020846206694841385, - -0.04411144182085991, - -0.019091255962848663, - 0.01464475691318512, - 0.023537633940577507, - 0.02783234789967537, - -0.0023410916328430176, - 0.05802048742771149, - -0.022554244846105576, - 0.002357428427785635, - -0.009786895476281643, - -0.0505397766828537, - -0.01694747619330883, - 0.03900054097175598, - -0.03462659940123558, - -0.012639855965971947, - -4.806742072105408e-05, - -0.032658763229846954, - 0.014093822799623013, - -0.0402003675699234, - -0.046144478023052216, - 0.03959941864013672, - -0.0663345605134964, - 0.051373012363910675, - 0.0051093799993395805, - -0.06451612710952759, - 0.031120896339416504, - 0.02127220295369625, - -0.02785540372133255, - -0.009320992045104504, - -0.11060484498739243, - 0.10683252662420273, - 0.042785607278347015, - 0.01784227229654789, - -0.05954263359308243, - -0.02501940354704857, - 0.08733145892620087, - -0.0021991929970681667, - -0.03732706606388092, - -0.0202924907207489, - 0.02913406305015087, - 0.04478723928332329, - 0.002322676358744502, - -0.03601595014333725, - 0.029787488281726837, - 0.06767427176237106, - 0.06451044231653214, - 0.028775891289114952, - 0.06827805936336517, - 0.08838818967342377, - -0.0701795443892479, - 0.001795570133253932, - 0.05021118372678757, - 0.020627638325095177, - 0.06979973614215851, - 0.005090269260108471, - -0.02057863026857376, - 0.0007662351126782596, - 0.009133713319897652, - -0.009617729112505913, - 0.009377913549542427, - -0.043493762612342834, - 0.017148837447166443, - -0.02034933678805828, - -0.01801767572760582, - 0.00206182524561882, - -0.020618274807929993, - 0.006135655101388693, - 0.07763402909040451, - 0.0382198840379715, - 0.08375623822212219, - 0.02762819454073906, - 0.012393539771437645, - 0.09375175088644028, - -0.07711796462535858, - -0.040032483637332916, - 0.006372353993356228, - -0.024415001273155212, - 0.04663130268454552, - 0.058602865785360336, - 0.054348163306713104, - -0.007863905280828476, - 0.10615401715040207, - 0.01535364892333746, - 0.032873425632715225, - -0.006063016131520271, - -0.06522908806800842, - 0.05220669507980347, - 0.0654420554637909, - -0.04212576150894165, - 0.04679134488105774, - 0.04497436434030533, - 0.04629715532064438, - 0.06347309052944183, - -0.06397742033004761, - -0.013589812442660332, - -0.019445527344942093, - 0.035097844898700714, - -0.005463359411805868, - 0.08890075981616974, - -0.015350909903645515, - 0.03926539421081543, - 0.1120821163058281, - -0.059573426842689514, - -0.00844486616551876, - 0.025637462735176086, - -0.006960737518966198, - -0.057128291577100754, - 0.05967188999056816, - 0.036719538271427155, - -0.0010291710495948792, - 0.011213904246687889, - 0.05888380855321884, - 0.0024499837309122086, - -0.0001847290841396898, - -0.037351541221141815, - -0.006991258822381496, - -0.026712220162153244, - 0.008545072749257088, - -0.008541903458535671, - 0.03254855424165726, - 0.05428321287035942, - 0.010814297012984753, - 0.02313941717147827, - -0.026378391310572624, - -0.08601202815771103, - 0.047178126871585846, - 0.015321163460612297, - 0.021147971972823143, - 0.03083699196577072, - -0.04194445535540581, - -0.03578154370188713, - -0.01372518204152584, - 0.029537610709667206, - -0.0041631124913692474, - 0.05572943389415741, - -0.0008132308721542358, - -0.0012410444905981421, - 0.07629962265491486, - 0.04363131523132324, - 0.014784732833504677, - -0.030621131882071495, - -0.08758185803890228, - -0.009393461048603058, - 0.036248113960027695, - -0.06479854881763458, - -0.07270146161317825, - -0.035207197070121765, - -0.009832712821662426, - 0.01271092426031828, - 0.045438237488269806, - 0.06104039400815964, - -0.02665194869041443, - -0.002569361124187708, - -0.06129225343465805, - 0.0247060414403677, - -0.01936211995780468, - -0.09773583710193634, - 0.018274758011102676, - 0.0011608017375692725, - 0.003764840541407466, - 0.052485670894384384, - -0.0030179969035089016, - 0.02800317108631134, - -0.04018954560160637, - -0.057796746492385864, - -0.014679154381155968, - 0.02069707028567791, - 0.02277674898505211, - -0.001057436689734459, - 0.031517356634140015, - 0.07840427756309509, - -0.01953011006116867, - 0.04013515263795853, - 0.011267222464084625, - 0.08430679887533188, - -0.05262231081724167, - 0.023029936477541924, - 0.01687745377421379, - 0.03873715549707413, - 0.048860371112823486, - -0.07173056900501251, - -0.07870382815599442, - -0.062005363404750824, - -0.05009894073009491, - 0.03723980486392975, - 0.0012853461084887385, - 0.02723969891667366, - 0.025289051234722137, - -0.005822490435093641, - -0.00565047562122345, - -0.10714810341596603, - 0.03927227854728699, - -0.0018325697164982557, - -0.005222877021878958, - -0.05847787857055664, - 0.02401411533355713, - 0.02280975691974163, - 0.052191611379384995, - -0.00558630283921957, - 0.01785661280155182, - 0.01825030893087387, - 0.032320376485586166, - -0.016544198617339134, - 0.05133195221424103, - 0.0547487698495388, - -0.0240594781935215, - -0.04512994736433029, - -0.0745638757944107, - 0.07238838076591492, - 0.023735735565423965, - 0.08931230753660202, - 0.03413977846503258, - -0.008464518934488297, - -0.08797469735145569, - 0.03390021622180939, - -0.02840748056769371, - 0.04909130930900574, - 0.005772958509624004, - 0.026611965149641037, - 0.053455837070941925, - -0.018304210156202316, - 0.08503516763448715, - 0.04462161287665367, - -0.03644011169672012, - -0.02813814952969551, - -0.02026468515396118, - -0.05901561304926872, - 0.000768480240367353, - 0.014603976160287857, - -0.04559175670146942, - -0.01959086023271084, - 0.013073625974357128, - 0.050295960158109665, - 0.057487405836582184, - 0.09151953458786011, - 0.04710816591978073, - -0.0457567498087883 - ] - }, - "p244_225.wav": { - "name": "p244", - "embedding": [ - 0.051310356706380844, - 0.0834568589925766, - -0.007183582987636328, - 0.024922311305999756, - -0.05904063582420349, - 0.05854015052318573, - -0.12535451352596283, - 0.13923655450344086, - -0.048962414264678955, - 0.13454389572143555, - -0.08436745405197144, - 0.12003946304321289, - -0.018191056326031685, - -0.18622538447380066, - -0.04205184429883957, - 0.05584371089935303, - -0.05870799347758293, - -0.03711184859275818, - -0.04091525822877884, - -0.024240415543317795, - 0.04846750944852829, - 0.046098366379737854, - 0.02297571860253811, - 0.023305930197238922, - 0.0161106176674366, - 0.0672079548239708, - 0.006895146332681179, - 0.05087154358625412, - 0.025754354894161224, - -0.05391912907361984, - -0.04346948117017746, - 0.10569560527801514, - -0.029959870502352715, - 0.012836702167987823, - 0.05633143335580826, - -0.008604303002357483, - 0.007666845805943012, - -0.0707116574048996, - -0.03749518841505051, - 0.002286672592163086, - -0.046102285385131836, - 0.0695449560880661, - 0.03421386331319809, - -0.0005849180743098259, - 0.04492742940783501, - 0.026415377855300903, - -0.02220986597239971, - -0.06214544177055359, - -0.10468965023756027, - 0.1593395471572876, - 0.08075140416622162, - 0.0007237071986310184, - -0.056593798100948334, - -0.06586285680532455, - 0.11136949062347412, - -0.023772722110152245, - -0.12023966014385223, - -0.032618336379528046, - 0.08353757858276367, - 0.1662822961807251, - -0.03776085376739502, - -0.03253000229597092, - 0.02880828082561493, - 0.12897907197475433, - 0.04153900220990181, - 0.09347943961620331, - 0.0847809910774231, - 0.09913381934165955, - -0.013993805274367332, - 0.02056264504790306, - 0.06070602685213089, - 0.075182244181633, - 0.050415150821208954, - -0.011057760566473007, - 0.028329208493232727, - 0.019188813865184784, - -0.024003982543945312, - 0.013095136731863022, - -0.03203959763050079, - 0.0020693736150860786, - -0.016150690615177155, - 0.015914611518383026, - 0.00934388767927885, - 0.004301947541534901, - -0.021690620109438896, - 0.07170313596725464, - 0.012773110531270504, - 0.0011356908362358809, - 0.062143921852111816, - 0.024439770728349686, - 0.009733228944242, - 0.06504429131746292, - -0.0682581290602684, - -0.09829120337963104, - 0.02016337215900421, - 0.004274268634617329, - 0.021691270172595978, - 0.07123589515686035, - 0.0369928702712059, - -0.02347165159881115, - 0.12361294031143188, - 0.048631519079208374, - -0.010325217619538307, - 0.03487465903162956, - -0.1055663675069809, - 0.11801376193761826, - 0.08848124742507935, - -0.024073978886008263, - 0.044693246483802795, - -0.05175858736038208, - 0.09415145218372345, - 0.06779108941555023, - -0.14691698551177979, - -0.07015042752027512, - 0.03770233690738678, - 0.021970687434077263, - -0.01646597310900688, - 0.11501292884349823, - -0.022866234183311462, - 0.03493736684322357, - 0.10662199556827545, - -0.07663226872682571, - -0.04691013693809509, - -0.02115100994706154, - 0.04523073136806488, - -0.08182382583618164, - 0.05350396782159805, - 0.042129211127758026, - -0.008851347491145134, - 0.010719409212470055, - 0.08423992991447449, - -0.018655668944120407, - -0.017582222819328308, - 0.016056731343269348, - -0.053253501653671265, - 0.022326787933707237, - -0.03952012211084366, - -0.0036005841102451086, - 0.04588611051440239, - 0.05219850689172745, - 0.0284300334751606, - 0.0018955932464450598, - -0.04513990506529808, - -0.11290672421455383, - 0.013492641970515251, - 0.021745748817920685, - 0.07653792947530746, - 0.0019345910986885428, - -0.016105739399790764, - -0.04283713549375534, - -0.06032940745353699, - 0.010123149491846561, - -0.014821472577750683, - 0.06825020164251328, - -0.025392016395926476, - 0.009346231818199158, - 0.08582484722137451, - 0.018835386261343956, - -0.002730567706748843, - -0.05414818227291107, - -0.03663495182991028, - 0.014556418173015118, - 0.050860535353422165, - -0.07009952515363693, - -0.06716781109571457, - 0.009577251970767975, - 0.029556702822446823, - -0.028313755989074707, - 0.03512787073850632, - 0.031155100092291832, - 0.019702419638633728, - 0.0357375293970108, - -0.06907254457473755, - 0.022252175956964493, - -0.12954393029212952, - -0.06845229119062424, - -0.0014752396382391453, - -0.0039057238027453423, - -0.007702663540840149, - 0.06386175751686096, - 0.01073797419667244, - 0.042002737522125244, - -0.004782171919941902, - -0.08473232388496399, - -0.0756043940782547, - 0.06864666938781738, - 0.08150909841060638, - 0.016689594835042953, - 0.05930107459425926, - 0.05765974149107933, - -0.02660529874265194, - 0.059486594051122665, - 0.052595850080251694, - 0.1166267842054367, - -0.009347288869321346, - 0.01946708932518959, - -0.06721298396587372, - 0.07768040895462036, - 0.06711600720882416, - -0.09189391136169434, - -0.08728042244911194, - -0.022854052484035492, - -0.059434063732624054, - 0.05167289078235626, - -0.01226080022752285, - -0.0005905249854549766, - 0.02559918724000454, - 0.001991212833672762, - -0.10102181881666183, - -0.06682616472244263, - 0.08294108510017395, - -0.06717744469642639, - -0.010215646587312222, - -0.08186393231153488, - 0.04807831346988678, - 0.11755266040563583, - 0.02768605202436447, - -0.017336614429950714, - -0.012437839061021805, - 0.049414195120334625, - -0.05128028243780136, - -0.007469031028449535, - 0.03093288466334343, - 0.024964459240436554, - -0.10463273525238037, - 0.010376625694334507, - -0.079476498067379, - 0.05149449035525322, - -0.04900449141860008, - 0.14601962268352509, - -0.004348237533122301, - -0.04973670840263367, - -0.08056377619504929, - 0.04329552501440048, - -0.015312936156988144, - 0.05326518043875694, - 0.04006648436188698, - 0.059056758880615234, - 0.038145314902067184, - -0.0742846131324768, - 0.1193387508392334, - 0.033959515392780304, - -0.051414769142866135, - -0.05939514562487602, - -0.036965176463127136, - -0.03650502488017082, - 0.008558135479688644, - 0.009751654230058193, - -0.08333491533994675, - -0.033416714519262314, - 0.015308569185435772, - -0.031427640467882156, - 0.07233746349811554, - 0.13444292545318604, - 0.05726928636431694, - -0.11903858184814453 - ] - }, - "p244_181.wav": { - "name": "p244", - "embedding": [ - 0.04853549972176552, - 0.07374346256256104, - -0.001116683823056519, - -0.004097479395568371, - -0.05194046348333359, - 0.032380111515522, - -0.15319423377513885, - 0.1677865833044052, - -0.03134298697113991, - 0.14076322317123413, - -0.05758073553442955, - 0.13522285223007202, - -0.0045502083376049995, - -0.2062889188528061, - -0.01282620057463646, - 0.05268338695168495, - -0.023829998448491096, - -0.017512261867523193, - -0.029962552711367607, - -0.01580413244664669, - 0.056428417563438416, - 0.03410758450627327, - 0.01014520600438118, - -0.012165883556008339, - 0.01225997693836689, - 0.05962875112891197, - 0.025165636092424393, - 0.061515845358371735, - 0.011232085525989532, - -0.05249512940645218, - -0.017271436750888824, - 0.08193641901016235, - -0.04830748960375786, - 0.015094342641532421, - 0.07996463775634766, - -0.03762584179639816, - -0.01477043516933918, - -0.0492141991853714, - -0.040189262479543686, - 0.012100317515432835, - -0.05262179672718048, - 0.07870141416788101, - 0.04001838341355324, - -0.0012544456403702497, - 0.06015627086162567, - 0.06565815955400467, - -0.006570492871105671, - -0.06202240660786629, - -0.10482068359851837, - 0.1445426493883133, - 0.07270271331071854, - 0.0028371138032525778, - -0.06960224360227585, - -0.0651412233710289, - 0.10882683098316193, - -0.027654144912958145, - -0.09092991054058075, - -0.04937249794602394, - 0.08291393518447876, - 0.14302006363868713, - -0.039390768855810165, - -0.041358478367328644, - 0.03378795087337494, - 0.10844965279102325, - 0.04374459385871887, - 0.0949270948767662, - 0.08207087218761444, - 0.09717680513858795, - -0.011792026460170746, - 0.0363716296851635, - 0.032117169350385666, - 0.08845886588096619, - 0.03672913461923599, - -0.007556884549558163, - 0.03091672994196415, - 0.02143774926662445, - -0.01366843469440937, - -0.013842469081282616, - -0.02877255156636238, - 0.008468045853078365, - -0.008475390262901783, - 0.040177036076784134, - 0.029854124411940575, - 0.014830820262432098, - -0.018003882840275764, - 0.07784435153007507, - 0.0208574328571558, - -0.0002615501289255917, - 0.052651312202215195, - 0.013198098167777061, - 0.013720996677875519, - 0.06634802371263504, - -0.1027640625834465, - -0.10428232699632645, - 0.014153995551168919, - -0.015950949862599373, - 0.010771851055324078, - 0.0733986347913742, - 0.0238480381667614, - -0.005900437943637371, - 0.1312226802110672, - 0.0532442107796669, - -0.02058122307062149, - 0.04952317848801613, - -0.10026396065950394, - 0.1128343939781189, - 0.06282803416252136, - -0.030719399452209473, - 0.052864156663417816, - -0.08830054104328156, - 0.08695419132709503, - 0.051488880068063736, - -0.14639277756214142, - -0.07902682572603226, - 0.03511642664670944, - 0.022750703617930412, - -0.03486593812704086, - 0.1531457006931305, - -0.025465352460741997, - 0.046481434255838394, - 0.11906690150499344, - -0.07846203446388245, - -0.055537011474370956, - -0.016915205866098404, - 0.0648004338145256, - -0.08302264660596848, - 0.08443479239940643, - 0.026740243658423424, - -0.009410153143107891, - 0.027778157964348793, - 0.09605671465396881, - -0.017449194565415382, - 0.0035791348200291395, - 0.0011096944799646735, - -0.026050278916954994, - 0.018737956881523132, - -0.05604676529765129, - 0.0008088279282674193, - 0.022545162588357925, - 0.05101313441991806, - 0.05300116911530495, - 0.009291495196521282, - -0.046177081763744354, - -0.11584735661745071, - 0.008204870857298374, - 0.007565791253000498, - 0.09485208988189697, - 0.00445913802832365, - -0.02815094403922558, - -0.045742250978946686, - -0.06417097896337509, - -0.029459692537784576, - -0.007919691503047943, - 0.07071837037801743, - -0.015393108129501343, - 0.040643878281116486, - 0.08823003619909286, - 0.02858070842921734, - 0.011487992480397224, - -0.040893036872148514, - -0.04137302190065384, - -0.0060546607710421085, - 0.05033597722649574, - -0.07571807503700256, - -0.06315838545560837, - -0.01347871869802475, - 0.03451967239379883, - -0.022088471800088882, - 0.04240419343113899, - 0.024976396933197975, - 0.041568558663129807, - 0.03842240199446678, - -0.09280429035425186, - 0.020226500928401947, - -0.11809604614973068, - -0.08533738553524017, - -0.022438112646341324, - 0.003981985151767731, - -0.03767376393079758, - 0.05087290331721306, - 0.005034510046243668, - 0.06469130516052246, - -0.002973736496642232, - -0.06831032782793045, - -0.09751009196043015, - 0.048866864293813705, - 0.07535960525274277, - -0.019422877579927444, - 0.046537987887859344, - 0.04640880599617958, - -0.04698324576020241, - 0.05519653111696243, - 0.06034466251730919, - 0.0976715013384819, - 8.228563092416152e-05, - 0.03282411769032478, - -0.05300220474600792, - 0.1086861789226532, - 0.08543731272220612, - -0.07902968674898148, - -0.08156649023294449, - -0.008789177052676678, - -0.08046814799308777, - 0.026485934853553772, - -0.002566782757639885, - 0.0038669253699481487, - 0.02527458965778351, - 0.026181191205978394, - -0.09029557555913925, - -0.04500250890851021, - 0.04789915680885315, - -0.09012192487716675, - -0.009148224256932735, - -0.0724482461810112, - 0.03745226189494133, - 0.132490336894989, - 0.03726755455136299, - -0.01586213894188404, - -0.06267713755369186, - 0.05438413843512535, - -0.03506023809313774, - 0.013881347142159939, - 0.042518507689237595, - 0.043448496609926224, - -0.08421245217323303, - 0.015443815849721432, - -0.06268421560525894, - 0.020667875185608864, - -0.04616343230009079, - 0.12721915543079376, - 0.0010249214246869087, - -0.06269851326942444, - -0.0810132846236229, - 0.01638193242251873, - -0.005842297337949276, - 0.049309249967336655, - 0.010862704366445541, - 0.06154543161392212, - 0.05593006685376167, - -0.06132841482758522, - 0.13494554162025452, - 0.03964308649301529, - -0.04365214705467224, - -0.05405324697494507, - -0.059244342148303986, - -0.03747475892305374, - 0.01179627887904644, - 0.022646265104413033, - -0.08147099614143372, - -0.04162844642996788, - 0.0229788850992918, - -0.024886325001716614, - 0.06388237327337265, - 0.13688220083713531, - 0.044621385633945465, - -0.13598714768886566 - ] - }, - "p244_107.wav": { - "name": "p244", - "embedding": [ - 0.018986329436302185, - 0.07078036665916443, - 0.006265767849981785, - 0.02359943464398384, - -0.021356943994760513, - 0.08659772574901581, - -0.13949386775493622, - 0.07979732751846313, - -0.06393814086914062, - 0.1497763693332672, - -0.06465169787406921, - 0.07656559348106384, - -0.024128064513206482, - -0.18016406893730164, - -0.08015492558479309, - 0.03792214393615723, - -0.08288389444351196, - -0.05135296285152435, - -0.012154608964920044, - -0.01092481892555952, - 0.07797106355428696, - 0.06504654139280319, - 0.010650359094142914, - 0.013227639719843864, - -0.00042673488496802747, - 0.04103270173072815, - 0.01009832601994276, - 0.050835248082876205, - 0.01654806360602379, - -0.0785716325044632, - -0.029552340507507324, - 0.11881434917449951, - -0.04304300993680954, - 0.047803036868572235, - 0.011636339128017426, - 0.03811034560203552, - 0.030043434351682663, - -0.040382977575063705, - -0.030305400490760803, - 0.019964013248682022, - -0.036857783794403076, - 0.06805232167243958, - 0.006876373663544655, - 0.044883519411087036, - 0.017787471413612366, - -0.016511091962456703, - -0.024941591545939445, - -0.03105109930038452, - -0.08011465519666672, - 0.17052917182445526, - 0.06246097385883331, - -0.014357741922140121, - -0.04994981735944748, - -0.11703971028327942, - 0.1090301126241684, - -0.0014445552369579673, - -0.1395440548658371, - -0.008596444502472878, - 0.08908972144126892, - 0.17083905637264252, - 0.006106068380177021, - -0.052606768906116486, - 0.022033292800188065, - 0.09799718856811523, - 0.0003657626803033054, - 0.0765744149684906, - 0.06276323646306992, - 0.05974283441901207, - 0.007905557751655579, - -0.036622487008571625, - 0.052865348756313324, - 0.06904914975166321, - 0.03529331088066101, - -0.04167652130126953, - 0.045096442103385925, - 0.01656993106007576, - -0.014775793068110943, - 0.052089761942625046, - -0.01925453543663025, - 0.003051417414098978, - -0.015225245617330074, - -0.015594327822327614, - -0.015718944370746613, - 0.011332297697663307, - -0.022591035813093185, - 0.010972678661346436, - -0.012020682916045189, - 0.002858270425349474, - 0.07237361371517181, - 0.07124389708042145, - 0.05658094212412834, - 0.06093538552522659, - -0.03981662169098854, - -0.06070934236049652, - 0.03469102829694748, - 0.03705674037337303, - 0.016070283949375153, - 0.08140319585800171, - 0.0365169420838356, - -0.02945508062839508, - 0.09506413340568542, - 0.01847119815647602, - -0.004679569974541664, - -0.012284490279853344, - -0.15561553835868835, - 0.0781673789024353, - 0.08458705991506577, - -0.014894695952534676, - 0.014846181496977806, - -0.039537906646728516, - 0.1071552187204361, - 0.09049631655216217, - -0.13942833244800568, - -0.08672802895307541, - 0.04133039712905884, - 0.0416400283575058, - 0.020161911845207214, - 0.11683528870344162, - -0.014187408611178398, - -0.015081814490258694, - 0.07005643844604492, - -0.0705585703253746, - -0.03392527997493744, - -0.03995451703667641, - 0.04487442597746849, - -0.08848090469837189, - 0.03944464772939682, - 0.007544742431491613, - -0.004261431284248829, - -0.02394506335258484, - 0.060046106576919556, - -0.03800112009048462, - 0.012030383571982384, - -0.002693778369575739, - -0.042180873453617096, - 0.024834778159856796, - -0.048504095524549484, - 0.014299875125288963, - 0.06087065488100052, - 0.04069444164633751, - 0.0522843673825264, - -0.0036741429939866066, - -0.07643705606460571, - -0.11633668839931488, - 0.0056757754646241665, - 0.0534629225730896, - 0.028400704264640808, - -0.01787242852151394, - -0.039167050272226334, - -0.04316931217908859, - -0.07920325547456741, - 0.07119631767272949, - -0.01749090477824211, - 0.0982508659362793, - 0.029152927920222282, - -0.02141754887998104, - 0.0911213755607605, - 0.011613093316555023, - -0.03806714713573456, - -0.037456244230270386, - -0.047122322022914886, - -0.0009285841952078044, - 0.02391948364675045, - -0.08757875859737396, - -0.05143696069717407, - 0.015609733760356903, - 0.028181953355669975, - 0.0180954709649086, - 0.03240957856178284, - 0.06839299201965332, - 0.00494399294257164, - 0.0423361174762249, - -0.08937080204486847, - 0.011890641413629055, - -0.12494389712810516, - -0.09722138941287994, - -0.0166076198220253, - -0.04433054476976395, - 0.03799745440483093, - 0.09615711867809296, - -0.0030421435367316008, - -0.018143337219953537, - -0.01988799311220646, - -0.08525364100933075, - -0.07768607139587402, - 0.07390022277832031, - 0.0739513635635376, - 0.03481234610080719, - 0.055766306817531586, - 0.06132469326257706, - -0.03944970294833183, - 0.08940285444259644, - 0.053724393248558044, - 0.1362406462430954, - -0.05846592038869858, - 0.05685748904943466, - -0.05243150144815445, - 0.0797581672668457, - 0.05632391571998596, - -0.06626347452402115, - -0.08350029587745667, - -0.00929337926208973, - -0.0768534392118454, - 0.06385917961597443, - -0.033822763711214066, - 0.006117173936218023, - 0.008199060335755348, - -0.017200030386447906, - -0.11949693411588669, - -0.06962133944034576, - 0.09143565595149994, - -0.027929916977882385, - -0.03770570456981659, - -0.07410022616386414, - 0.052244603633880615, - 0.08327490091323853, - 0.06563417613506317, - -0.010562488809227943, - 0.028810199350118637, - 0.04854373261332512, - -0.056534282863140106, - -0.0273711197078228, - 0.022549763321876526, - -0.019329529255628586, - -0.09160171449184418, - -0.016648469492793083, - -0.10516708344221115, - 0.05289390683174133, - -0.08231537789106369, - 0.12841537594795227, - -0.0357721745967865, - -0.09255094826221466, - -0.05272103101015091, - 0.047350283712148666, - -0.021463148295879364, - 0.03665878623723984, - 0.039248254150152206, - 0.06672525405883789, - 0.02034568041563034, - -0.04230334609746933, - 0.07991709560155869, - 0.05416296049952507, - -0.023108704015612602, - -0.045002829283475876, - -0.010626382194459438, - 0.003869683248922229, - 0.027586787939071655, - -0.0053460909985005856, - -0.08179886639118195, - 0.013816035352647305, - 0.02730204164981842, - -0.002952365204691887, - 0.042515143752098083, - 0.11149786412715912, - 0.05035954713821411, - -0.1337471604347229 - ] - }, - "p244_224.wav": { - "name": "p244", - "embedding": [ - 0.04962719604372978, - 0.09732125699520111, - -0.0143382977694273, - 0.02728196047246456, - -0.06896641850471497, - 0.0552939847111702, - -0.10239609330892563, - 0.14319078624248505, - -0.052431076765060425, - 0.1283714473247528, - -0.08825169503688812, - 0.1425744891166687, - -0.034931644797325134, - -0.16779926419258118, - -0.031961627304553986, - 0.059813402593135834, - -0.04328319430351257, - -0.03515210375189781, - -0.030132224783301353, - -0.038394536823034286, - 0.035689376294612885, - 0.027956193313002586, - 0.039848215878009796, - 0.0350717194378376, - 0.012987012974917889, - 0.08265584707260132, - 0.0008173746755346656, - 0.04667996987700462, - 0.02069834992289543, - -0.05261540412902832, - -0.05512323975563049, - 0.08663111180067062, - -0.045588575303554535, - 0.011046282947063446, - 0.04991162568330765, - -0.010892706923186779, - 0.009458189830183983, - -0.06487947702407837, - -0.0286991186439991, - -0.009078212082386017, - -0.051371634006500244, - 0.06625634431838989, - 0.016617964953184128, - -0.03296768665313721, - 0.03816141188144684, - 0.025730393826961517, - -0.021823478862643242, - -0.035476066172122955, - -0.11402949690818787, - 0.14825060963630676, - 0.0843455046415329, - -0.004118979908525944, - -0.06286304444074631, - -0.06260013580322266, - 0.11318610608577728, - -0.023049727082252502, - -0.10841351002454758, - -0.025535790249705315, - 0.07253169268369675, - 0.15246140956878662, - -0.03746199607849121, - -0.03258427605032921, - 0.028609059751033783, - 0.12159141898155212, - 0.05789707228541374, - 0.0897446870803833, - 0.08512584865093231, - 0.10896792262792587, - -0.03643473982810974, - 0.01998995989561081, - 0.061563991010189056, - 0.08648942410945892, - 0.06491782516241074, - -0.004056436475366354, - 0.011502666398882866, - 0.005630706436932087, - -0.02097097411751747, - 0.00923735648393631, - -0.03812224417924881, - -0.029163045808672905, - -0.03368283808231354, - 0.0007098371861502528, - 0.00538286566734314, - 0.0009792795171961188, - -0.015939347445964813, - 0.08044539391994476, - 0.030145376920700073, - -0.0072248405776917934, - 0.06023592874407768, - 0.020126961171627045, - -0.012134900316596031, - 0.0692741721868515, - -0.08108511567115784, - -0.0763382539153099, - 0.017370417714118958, - 0.002023442182689905, - 0.022333841770887375, - 0.0892980545759201, - 0.04410454258322716, - -0.013034462928771973, - 0.12683239579200745, - 0.060135047882795334, - 0.0009284485131502151, - 0.02179778181016445, - -0.09034089744091034, - 0.12779009342193604, - 0.09989762306213379, - -0.03615942224860191, - 0.041501980274915695, - -0.03599080070853233, - 0.08386196196079254, - 0.0731990858912468, - -0.1398015022277832, - -0.06821295619010925, - 0.006960911210626364, - 0.012176195159554482, - -0.013337856158614159, - 0.08957992494106293, - -0.018812956288456917, - 0.05378841608762741, - 0.10989981889724731, - -0.07602980732917786, - -0.05461965128779411, - -0.02553100883960724, - 0.04327293485403061, - -0.07406872510910034, - 0.06069129332900047, - 0.053797103464603424, - 0.0065932548604905605, - 0.016853980720043182, - 0.08326350152492523, - -0.02526889741420746, - -0.019924145191907883, - 0.04177658259868622, - -0.06791895627975464, - -0.000978151336312294, - -0.03056339919567108, - -0.007666699588298798, - 0.05261984467506409, - 0.04701119288802147, - 0.04026451334357262, - -0.005929887294769287, - -0.013597341254353523, - -0.10850181430578232, - 0.02067003771662712, - 0.04102496802806854, - 0.07485508173704147, - 0.0013909948756918311, - -0.0361965149641037, - -0.03173280507326126, - -0.05560848116874695, - 0.004811486229300499, - -0.0008209968218579888, - 0.06774955242872238, - -0.054226890206336975, - 0.014018885791301727, - 0.08759158849716187, - 0.03004780039191246, - -0.01708192378282547, - -0.059488922357559204, - -0.03584703058004379, - 0.008219394832849503, - 0.04993153735995293, - -0.06751155108213425, - -0.0873916894197464, - -0.0032585635781288147, - 0.040782149881124496, - -0.03189239278435707, - 0.0657217726111412, - 0.03473864495754242, - 0.012142978608608246, - 0.02388724684715271, - -0.06332354992628098, - 0.01221928559243679, - -0.10184069722890854, - -0.06907028704881668, - -0.012476525269448757, - -0.01689266972243786, - -0.01256043091416359, - 0.05241880938410759, - 0.025876570492982864, - 0.06134306639432907, - -0.0024604620411992073, - -0.07519222795963287, - -0.08729800581932068, - 0.05448159575462341, - 0.057663559913635254, - 0.010470318607985973, - 0.05588189885020256, - 0.07581347227096558, - -0.03498871251940727, - 0.06422655284404755, - 0.05413016304373741, - 0.09791615605354309, - -0.026707544922828674, - 0.02322123572230339, - -0.06447356939315796, - 0.06213940680027008, - 0.08329996466636658, - -0.09603621810674667, - -0.08694516122341156, - -0.04871954023838043, - -0.061167120933532715, - 0.054186563938856125, - -0.024595504626631737, - 0.00024648121325299144, - 0.02719011716544628, - -0.00308419531211257, - -0.09797334671020508, - -0.08452215045690536, - 0.09873801469802856, - -0.06415601074695587, - -0.0030830642208456993, - -0.07649759948253632, - 0.040085867047309875, - 0.09742473065853119, - 0.02509359084069729, - -0.021539052948355675, - 0.004630350973457098, - 0.04759451746940613, - -0.030850231647491455, - -0.0027519073337316513, - 0.054138630628585815, - 0.03846846520900726, - -0.1047482118010521, - -0.0027216044254601, - -0.07578456401824951, - 0.05717060714960098, - -0.0362926721572876, - 0.1545051634311676, - 0.004095475655049086, - -0.03923984244465828, - -0.08584123104810715, - 0.0467841736972332, - -0.01851397007703781, - 0.05204775929450989, - 0.04069438576698303, - 0.05585354566574097, - 0.013542990200221539, - -0.07543648034334183, - 0.13558673858642578, - 0.03662727028131485, - -0.06127173826098442, - -0.06918633729219437, - -0.04369966685771942, - -0.04464063048362732, - 0.010191565379500389, - 0.020701343193650246, - -0.08413331210613251, - -0.0305267833173275, - 0.001832252717576921, - -0.022537413984537125, - 0.07631073892116547, - 0.1475430577993393, - 0.07468569278717041, - -0.10101490467786789 - ] - }, - "p244_141.wav": { - "name": "p244", - "embedding": [ - 0.068923220038414, - 0.0924782082438469, - 0.02698499709367752, - -0.01698596216738224, - -0.022123616188764572, - 0.07684674113988876, - -0.08014806360006332, - 0.11866427958011627, - 0.013518492691218853, - 0.06179654598236084, - -0.09089430421590805, - 0.09500541538000107, - -0.0075258477590978146, - -0.14115139842033386, - -0.019810549914836884, - 0.039922088384628296, - -0.03582993149757385, - 0.015733567997813225, - -0.04923884570598602, - -0.024042293429374695, - 0.004346251487731934, - 0.009345974773168564, - 0.05112504959106445, - 0.004298120737075806, - 0.029690828174352646, - 0.037295252084732056, - -0.0033339790534228086, - 0.028432216495275497, - 0.01325818058103323, - -0.03045157715678215, - -0.02788727544248104, - 0.07552196830511093, - -0.03660047799348831, - 0.0074586328119039536, - 0.061181288212537766, - -0.0200702715665102, - 0.023195739835500717, - -0.07623811811208725, - -0.036821089684963226, - 0.02984483540058136, - -0.040129657834768295, - 0.07058500498533249, - 0.05127548426389694, - -0.015639178454875946, - 0.05347995460033417, - 0.03377233445644379, - -0.008445807732641697, - -0.034044049680233, - -0.09286578744649887, - 0.1335347592830658, - 0.03304428979754448, - 0.009045018814504147, - -0.08136817067861557, - -0.010237561538815498, - 0.06691109389066696, - -0.03663356602191925, - -0.06309717893600464, - -0.007281227968633175, - 0.05802008509635925, - 0.07650483399629593, - 0.021154876798391342, - -0.022795071825385094, - 0.02272713929414749, - 0.07861630618572235, - 0.02577219158411026, - 0.03663335740566254, - 0.0939372181892395, - 0.10263802856206894, - -0.025683850049972534, - 0.03480205684900284, - 0.04027433693408966, - 0.026075702160596848, - 0.04253336042165756, - -0.009162602946162224, - 0.01882908120751381, - -0.022082194685935974, - -0.006963628809899092, - -0.018189910799264908, - -0.023454774171113968, - -0.006281568668782711, - 0.024233005940914154, - 0.024674441665410995, - 0.01229693740606308, - 0.03318728134036064, - -0.04538854956626892, - 0.04809953272342682, - 0.005983038805425167, - 0.06514596939086914, - 0.06771441549062729, - 0.05024484544992447, - 0.015811212360858917, - 0.03091355413198471, - -0.055564917623996735, - -0.0970439463853836, - 0.01133184414356947, - 0.0005957087269052863, - 0.004527910612523556, - 0.028108973056077957, - 0.026921523734927177, - -0.015116693452000618, - 0.1057809516787529, - 0.042175233364105225, - -0.017813026905059814, - 0.02040094882249832, - -0.07687985152006149, - 0.0824103131890297, - 0.06754721701145172, - -0.010242084972560406, - 0.057601384818553925, - -0.029330871999263763, - 0.05856937915086746, - 0.061335694044828415, - -0.08648469299077988, - -0.025834694504737854, - 0.012828582897782326, - 0.01590515673160553, - 0.03241315111517906, - 0.09338172525167465, - -0.00867719016969204, - 0.045204129070043564, - 0.0653485581278801, - -0.06094851344823837, - -0.015735197812318802, - 0.026987185701727867, - 0.011037036776542664, - -0.015367105603218079, - 0.021218154579401016, - 0.030355684459209442, - 0.01667485013604164, - -0.03186711296439171, - 0.06219978258013725, - 0.01475514005869627, - 0.00443243607878685, - -0.028041090816259384, - 0.009053267538547516, - 0.009680083952844143, - -0.00848004687577486, - -0.019272593781352043, - 0.025945579633116722, - 0.06428781151771545, - 0.003554773982614279, - 0.03786199167370796, - -0.04213632270693779, - -0.08019794523715973, - -0.009167403914034367, - -0.0004635453224182129, - 0.04594936966896057, - 0.012174731120467186, - -0.030211467295885086, - -0.05239854380488396, - 0.002455689013004303, - 0.004877150058746338, - -0.0075872777961194515, - 0.031820811331272125, - 0.03895227238535881, - -0.02012220397591591, - 0.06151208281517029, - 0.007341994903981686, - 0.018575768917798996, - -0.0442054346203804, - -0.0441681444644928, - 0.005569660570472479, - 0.041040368378162384, - -0.034946098923683167, - -0.05877748131752014, - -0.0004004749353043735, - -0.032616838812828064, - -0.014384198933839798, - 0.032256826758384705, - 0.05332021042704582, - -0.011078780516982079, - 0.001790625392459333, - -0.08127550780773163, - 0.00835905410349369, - -0.07179434597492218, - -0.06660371273756027, - 0.038152486085891724, - 0.027067236602306366, - -0.004106359090656042, - 0.06933911144733429, - 0.036187149584293365, - 0.043000128120183945, - -0.027768274769186974, - -0.04768511280417442, - -0.010287761688232422, - 0.053026072680950165, - 0.043087996542453766, - 0.0040331194177269936, - 0.05106344819068909, - 0.028503969311714172, - -0.023405587300658226, - 0.06892295181751251, - 0.03908409923315048, - 0.041366592049598694, - -0.04180203005671501, - 0.0004790624079760164, - -0.0073122731409966946, - 0.06569291651248932, - 0.044690437614917755, - -0.0682908445596695, - -0.07503515481948853, - 0.0014045065036043525, - -0.032103247940540314, - 0.007540534250438213, - -7.934620225569233e-05, - 0.006172175519168377, - 0.047262903302907944, - -0.01286875270307064, - -0.05351176857948303, - -0.08234937489032745, - 0.03974941745400429, - -0.05515018850564957, - 0.0029463693499565125, - -0.03557360917329788, - 0.040601350367069244, - 0.08469371497631073, - -0.01683524250984192, - -0.023156389594078064, - -0.001939891604706645, - 0.002462851582095027, - -0.0087631456553936, - -0.03998411074280739, - -0.006535450927913189, - 0.044557806104421616, - -0.08075080811977386, - 0.01455008890479803, - -0.050404518842697144, - 0.05211418867111206, - 0.0033184513449668884, - 0.10874741524457932, - 0.04036594182252884, - -0.028343355283141136, - -0.05510684847831726, - 0.025554046034812927, - -0.02090444043278694, - 0.032358042895793915, - 0.004022589884698391, - 0.02583552896976471, - 0.03393810614943504, - -0.05043305456638336, - 0.07956372201442719, - 0.027327917516231537, - -0.06777572631835938, - -0.051680758595466614, - -0.011212892830371857, - -0.036767132580280304, - 0.007731962949037552, - -0.00023343414068222046, - -0.05771992728114128, - -0.003808550536632538, - 0.02401779592037201, - 0.012112687341868877, - 0.042980797588825226, - 0.08600609004497528, - 0.033650681376457214, - -0.0658734142780304 - ] - }, - "p244_180.wav": { - "name": "p244", - "embedding": [ - 0.04287217929959297, - 0.08562701940536499, - -0.015287653543055058, - 0.036764249205589294, - -0.04638880491256714, - 0.04878851771354675, - -0.1254628598690033, - 0.13322418928146362, - -0.04258638620376587, - 0.13999226689338684, - -0.09335038810968399, - 0.10710559785366058, - -0.03508500009775162, - -0.1945321261882782, - -0.03503262996673584, - 0.06371995806694031, - -0.06115536019206047, - -0.03210833668708801, - -0.05164248123764992, - -0.014452077448368073, - 0.04337220638990402, - 0.04441754147410393, - 0.02052772045135498, - 0.012482683174312115, - 0.012612485326826572, - 0.0665159672498703, - -0.009948942810297012, - 0.0402454249560833, - 0.00976457167416811, - -0.03758953511714935, - -0.022761408239603043, - 0.1160731166601181, - -0.037258755415678024, - 0.023569952696561813, - 0.05849108844995499, - 0.0050984835252165794, - -0.005451524164527655, - -0.055714357644319534, - -0.03563567250967026, - -0.007449758239090443, - -0.06463293731212616, - 0.06334054470062256, - 0.025538090616464615, - -0.004314308986067772, - 0.051937881857156754, - 0.026081426069140434, - -0.0381358340382576, - -0.04920509457588196, - -0.10323816537857056, - 0.159244567155838, - 0.08181116729974747, - 0.019467290490865707, - -0.07092482596635818, - -0.07579121738672256, - 0.11322926729917526, - -0.012180223129689693, - -0.1223359927535057, - -0.039783768355846405, - 0.08074229955673218, - 0.1788947880268097, - -0.033803459256887436, - -0.031111378222703934, - 0.0253484845161438, - 0.12656015157699585, - 0.05155251920223236, - 0.1021069884300232, - 0.07734425365924835, - 0.10235083103179932, - -0.0037702443078160286, - 0.02231024019420147, - 0.07893197238445282, - 0.07348102331161499, - 0.07408797740936279, - -0.02287248894572258, - 0.020641451701521873, - 0.021848231554031372, - -0.032741837203502655, - -0.0005036769434809685, - -0.03305608034133911, - -0.006087020039558411, - -0.015949970111250877, - 0.011261356994509697, - 0.010060756467282772, - 0.009770382195711136, - -0.019627364352345467, - 0.048058610409498215, - 0.04291192442178726, - -0.022824563086032867, - 0.062159132212400436, - 0.039522890001535416, - 0.004643607884645462, - 0.06180132180452347, - -0.07286012172698975, - -0.09708299487829208, - 0.008771114982664585, - 0.0035176516976207495, - 0.021517109125852585, - 0.06355897337198257, - 0.044992536306381226, - -0.021221591159701347, - 0.11107702553272247, - 0.03340764343738556, - -0.0004985607229173183, - 0.02741919830441475, - -0.11414609849452972, - 0.10387134552001953, - 0.09328484535217285, - -0.028874654322862625, - 0.03562599793076515, - -0.0332423634827137, - 0.0846838504076004, - 0.0898602306842804, - -0.14424557983875275, - -0.06692004948854446, - 0.02809644117951393, - 0.009229492396116257, - -0.010721873492002487, - 0.119399294257164, - -0.010611619800329208, - 0.031077859923243523, - 0.10898005962371826, - -0.09330882877111435, - -0.04938614368438721, - -0.023604173213243484, - 0.04384623467922211, - -0.08141624927520752, - 0.05874110385775566, - 0.03711886331439018, - -0.0003137262538075447, - -0.0015751449391245842, - 0.08045978844165802, - -0.018024854362010956, - -0.006810707040131092, - -0.0032768247183412313, - -0.05479854717850685, - 0.031644560396671295, - -0.04633217304944992, - -0.010116659104824066, - 0.05587824434041977, - 0.03809250891208649, - 0.04481849446892738, - 0.005171018186956644, - -0.03733333200216293, - -0.11193248629570007, - 0.011853637173771858, - 0.03896187245845795, - 0.07517776638269424, - -0.003814305877313018, - -0.009121467359364033, - -0.03450698405504227, - -0.0647905170917511, - 0.033882513642311096, - -0.025436406955122948, - 0.07367978990077972, - -0.009349098429083824, - -0.004832168109714985, - 0.104781873524189, - 0.006044739857316017, - -0.009774036705493927, - -0.05064236372709274, - -0.03197922557592392, - 0.004540130961686373, - 0.0560140535235405, - -0.0912093073129654, - -0.06879136711359024, - 0.008184043690562248, - 0.028505831956863403, - -0.011029754765331745, - 0.03687044605612755, - 0.035428911447525024, - 0.018672361969947815, - 0.019027046859264374, - -0.06336243450641632, - 0.00952989887446165, - -0.1304386854171753, - -0.08182943612337112, - -0.004146466497331858, - -0.03175421059131622, - -0.0003050958039239049, - 0.07162944972515106, - 0.01157375518232584, - 0.02589418739080429, - -0.009354421868920326, - -0.08987092971801758, - -0.08629173785448074, - 0.07768312096595764, - 0.07189644128084183, - 0.00918702781200409, - 0.05069814994931221, - 0.05711710825562477, - -0.043779946863651276, - 0.05178084224462509, - 0.05450008064508438, - 0.13465994596481323, - -0.020610075443983078, - 0.024871082976460457, - -0.07336477935314178, - 0.08318401873111725, - 0.08415284752845764, - -0.08872678875923157, - -0.09011656045913696, - -0.02447526715695858, - -0.05621317774057388, - 0.0489952452480793, - -0.021398957818746567, - 0.003726938273757696, - 0.029173649847507477, - -0.01271715760231018, - -0.10573464632034302, - -0.0675889179110527, - 0.08780509233474731, - -0.06232892721891403, - -0.015668850392103195, - -0.0789867490530014, - 0.03913281857967377, - 0.08829204738140106, - 0.024565041065216064, - -0.024829076603055, - 0.011869668029248714, - 0.055623821914196014, - -0.054621972143650055, - -0.020805392414331436, - 0.041097190231084824, - 0.016251320019364357, - -0.09385091066360474, - -0.013513226062059402, - -0.07502492517232895, - 0.06739393621683121, - -0.04968585819005966, - 0.13732515275478363, - -0.016053739935159683, - -0.056435588747262955, - -0.08078397810459137, - 0.04247337579727173, - -0.0038466856349259615, - 0.05834244564175606, - 0.041751060634851456, - 0.07223579287528992, - 0.03435615450143814, - -0.06490053981542587, - 0.12374728918075562, - 0.02952367626130581, - -0.03260251507163048, - -0.054583314806222916, - -0.04587647318840027, - -0.04500049725174904, - 0.003952471073716879, - -0.005704508163034916, - -0.08034328371286392, - -0.007313928566873074, - 0.006328531075268984, - -0.024210944771766663, - 0.047043636441230774, - 0.12548011541366577, - 0.05870911478996277, - -0.11604777723550797 - ] - }, - "p244_167.wav": { - "name": "p244", - "embedding": [ - 0.04707973822951317, - 0.08512790501117706, - 0.017433252185583115, - -0.010049238801002502, - -0.027678970247507095, - 0.09129085391759872, - -0.07708367705345154, - 0.10728625953197479, - -0.023322490975260735, - 0.06904000043869019, - -0.0714399516582489, - 0.08210638165473938, - -0.011329654604196548, - -0.12147276848554611, - -0.0015023425221443176, - 0.05498618632555008, - -0.029536675661802292, - 0.0027658964972943068, - -0.04268315061926842, - -0.014539126306772232, - -0.009536261670291424, - 0.00696258619427681, - 0.058693867176771164, - -0.020710289478302002, - 0.03857957199215889, - 0.05058648809790611, - -0.000273537531029433, - 0.027161478996276855, - 0.0004217643290758133, - -0.0439465194940567, - -0.03740622475743294, - 0.07502558082342148, - -0.056660816073417664, - -0.008298594504594803, - 0.05187267065048218, - -0.013564445078372955, - 0.024587390944361687, - -0.09216286987066269, - -0.03276935964822769, - 0.009169310331344604, - -0.056369051337242126, - 0.07358594238758087, - 0.02663174830377102, - 0.007156963460147381, - 0.024815743789076805, - 0.0062155211344361305, - -0.0034827683120965958, - -0.023563673719763756, - -0.08253515511751175, - 0.12691868841648102, - 0.03767480328679085, - 0.019493775442242622, - -0.07521302253007889, - -0.0295400470495224, - 0.07755976170301437, - -0.018448349088430405, - -0.06302373856306076, - -0.012354684993624687, - 0.04073628783226013, - 0.0865408405661583, - 0.025180846452713013, - -0.023361138999462128, - 0.021092116832733154, - 0.06708208471536636, - 0.023151254281401634, - 0.053722649812698364, - 0.08739151805639267, - 0.08955836296081543, - -0.0065083070658147335, - 0.027378231287002563, - 0.048375409096479416, - 0.036388516426086426, - 0.02471884712576866, - -0.010595530271530151, - 0.028296595439314842, - -0.01590379700064659, - -0.03191643953323364, - -0.008536002598702908, - -0.017039146274328232, - -0.01747817173600197, - 0.022909987717866898, - 0.022554030641913414, - 0.009545434266328812, - 0.027733517810702324, - -0.028594069182872772, - 0.04081657528877258, - -0.0029537356458604336, - 0.06451727449893951, - 0.08688073605298996, - 0.02574579045176506, - 0.014948733150959015, - 0.03415994346141815, - -0.060237299650907516, - -0.06995562463998795, - 0.020499086007475853, - 0.031554386019706726, - 0.0036485109012573957, - 0.03065515123307705, - 0.025369582697749138, - -0.027931563556194305, - 0.10070967674255371, - 0.023287784308195114, - -0.0009688375284895301, - 0.001203195541165769, - -0.06778344511985779, - 0.07224768400192261, - 0.05726079270243645, - -0.0040361955761909485, - 0.048369914293289185, - -0.025990938767790794, - 0.0551203116774559, - 0.05932316184043884, - -0.09196369349956512, - -0.04974181577563286, - 0.007547107990831137, - 0.0041877878829836845, - 0.035280995070934296, - 0.10521729290485382, - -0.009196754544973373, - 0.0372876301407814, - 0.058194637298583984, - -0.08105669170618057, - -0.02356204390525818, - 0.039087925106287, - 0.010740846395492554, - -0.007051540073007345, - 0.007526857312768698, - 0.0390218049287796, - 0.005931292660534382, - -0.02777162566781044, - 0.05320620536804199, - 0.008385999128222466, - 0.009738633409142494, - -0.01149764470756054, - -0.009483715519309044, - 0.0010052463039755821, - -0.015930140390992165, - -0.038347966969013214, - 0.03739845007658005, - 0.051481373608112335, - 0.029979199171066284, - 0.003185371635481715, - -0.025677524507045746, - -0.0847093015909195, - -0.019944485276937485, - 0.010563371703028679, - 0.031666189432144165, - -0.00785780604928732, - -0.0317373163998127, - -0.05702310800552368, - -0.00612629484385252, - -0.009472507983446121, - -0.009091544896364212, - 0.0502474308013916, - 0.04683661460876465, - -0.026863310486078262, - 0.06821515411138535, - 0.007443234324455261, - 0.004543836694210768, - -0.040841296315193176, - -0.062287937849760056, - 0.011087912134826183, - 0.04299960657954216, - -0.01109161227941513, - -0.07103273272514343, - 0.0023626885376870632, - -0.027720585465431213, - -0.01672457903623581, - 0.02954830974340439, - 0.04956777021288872, - 0.009142892435193062, - -0.0127300675958395, - -0.06628468632698059, - 0.014434169046580791, - -0.07022538781166077, - -0.05645657703280449, - 0.03632683306932449, - 0.031128432601690292, - -0.024220317602157593, - 0.07866879552602768, - 0.03261057287454605, - 0.04827475547790527, - -0.0349263995885849, - -0.05173870921134949, - -0.015932749956846237, - 0.05100814625620842, - 0.03704618662595749, - 0.002308618277311325, - 0.038799941539764404, - 0.0432167574763298, - -0.020732365548610687, - 0.037445541471242905, - 0.051251985132694244, - 0.0512886568903923, - -0.03503634035587311, - 0.008252796716988087, - -0.014522379264235497, - 0.07860466837882996, - 0.03661031275987625, - -0.07371249049901962, - -0.05090833455324173, - 0.01257159560918808, - -0.04109746217727661, - 0.0277106873691082, - -0.006819318979978561, - 0.011071180924773216, - 0.04564926028251648, - -0.02753159962594509, - -0.06565520167350769, - -0.07913267612457275, - 0.06392000615596771, - -0.05291129648685455, - -0.009865141473710537, - -0.044501226395368576, - 0.04317125305533409, - 0.079008549451828, - 0.0036972227972000837, - -0.01048391591757536, - 0.005263200029730797, - 0.02147604152560234, - 0.004751445725560188, - -0.02239108644425869, - 0.024752311408519745, - 0.037187036126852036, - -0.07118416577577591, - 0.015515079721808434, - -0.046753764152526855, - 0.0659591406583786, - 0.008004775270819664, - 0.10493459552526474, - 0.027253877371549606, - -0.03027404099702835, - -0.07307233661413193, - 0.03192661702632904, - 0.0001670519559411332, - 0.03432702645659447, - 0.004586372058838606, - 0.023750942200422287, - 0.04797280579805374, - -0.05145956203341484, - 0.08629883825778961, - 0.025798249989748, - -0.05911736935377121, - -0.044936250895261765, - -0.008365584537386894, - -0.03264952823519707, - 0.02177836373448372, - -0.02301935665309429, - -0.06799818575382233, - 0.01904139295220375, - 0.021186351776123047, - 0.011413270607590675, - 0.029889201745390892, - 0.07833109050989151, - 0.036050260066986084, - -0.06394705176353455 - ] - }, - "p244_080.wav": { - "name": "p244", - "embedding": [ - 0.022935442626476288, - 0.09640032052993774, - -0.00262433011084795, - 0.00919140875339508, - -0.022395236417651176, - -0.0027653351426124573, - -0.10289772599935532, - 0.0792112648487091, - -0.025138236582279205, - 0.11822348088026047, - -0.10249543190002441, - 0.08955548703670502, - -0.07592034339904785, - -0.10798313468694687, - -0.02383330650627613, - 0.03619668260216713, - -0.006831965409219265, - 0.006147237494587898, - -0.026636846363544464, - -0.06548704206943512, - 0.04381079971790314, - 0.023009691387414932, - 0.05674208700656891, - -0.05197969824075699, - -0.02874726429581642, - 0.10414999723434448, - 0.0033289343118667603, - 0.014779753983020782, - -0.005131295416504145, - -0.035717450082302094, - 0.0016329586505889893, - 0.03423984721302986, - -0.018916528671979904, - 0.014781697653234005, - 0.03858477249741554, - 0.04465959221124649, - -0.041259974241256714, - 0.018253441900014877, - 0.013986133970320225, - 0.02905401401221752, - -0.06952391564846039, - 0.052167169749736786, - -0.004307717550545931, - -0.035446494817733765, - 0.08575202524662018, - -0.025628745555877686, - -0.01232240255922079, - 0.009164616465568542, - -0.06502345204353333, - 0.0973408967256546, - 0.06095746159553528, - 0.015500586479902267, - -0.05821622908115387, - -0.011755358427762985, - 0.1052543893456459, - -0.027858003973960876, - -0.10372836887836456, - -0.028162376955151558, - 0.047136325389146805, - 0.09003078937530518, - -0.06292364001274109, - -0.05182661861181259, - 0.009000720456242561, - 0.049195241183042526, - 0.03263609856367111, - 0.08903387188911438, - 0.11052943021059036, - 0.06148676201701164, - -0.008279198780655861, - -0.04386623203754425, - 0.0374402292072773, - 0.08248496055603027, - 0.06774741411209106, - -0.010443861596286297, - 0.025451309978961945, - -0.03772726282477379, - 0.007184172514826059, - 0.0012357961386442184, - -0.010979774408042431, - -0.06406047195196152, - -0.03685372695326805, - -0.028270073235034943, - 0.0037496155127882957, - -0.03674938529729843, - -0.03346597030758858, - 0.022938372567296028, - 0.0737951248884201, - -0.026175372302532196, - 0.04679589718580246, - 0.04721876233816147, - -0.020461056381464005, - 0.01643197052180767, - -0.03926379233598709, - -0.025848062708973885, - -0.0250605009496212, - -0.012646771036088467, - 0.058042388409376144, - 0.06492941826581955, - 0.037546515464782715, - 0.06273335963487625, - 0.06380569189786911, - 0.039636969566345215, - 0.0002344781532883644, - -0.0022067087702453136, - -0.08454318344593048, - 0.057148903608322144, - 0.12178117781877518, - -0.042248956859111786, - 0.026501305401325226, - -0.034538887441158295, - 0.03554641455411911, - 0.02890169620513916, - -0.04485159367322922, - -0.04294715076684952, - -0.023335903882980347, - 0.026320401579141617, - 0.02236473560333252, - 0.06880465894937515, - -0.005760335363447666, - -0.014488864690065384, - 0.12077110260725021, - -0.06384418904781342, - -0.07678333669900894, - -0.07603100687265396, - 0.022697359323501587, - -0.0791313648223877, - 0.07144536823034286, - 0.04848698899149895, - 0.03562559187412262, - 0.019893446937203407, - 0.06547132879495621, - 0.010206692852079868, - 0.020238369703292847, - -0.034656405448913574, - -0.03764572739601135, - -0.010647440329194069, - -0.019053788855671883, - 0.014916029758751392, - 0.09002663940191269, - 0.03564060479402542, - 0.09896186739206314, - 0.01198516320437193, - 0.03503521531820297, - -0.07820829749107361, - 0.010020527057349682, - 0.06754842400550842, - -0.019115395843982697, - -0.042204827070236206, - -0.05533764511346817, - -0.02979818731546402, - -0.06848762929439545, - 0.01644035428762436, - -0.05761922150850296, - 0.07225719094276428, - -0.026507336646318436, - 0.014494970440864563, - 0.1318766474723816, - 0.019118081778287888, - -0.04242726042866707, - -0.05576483905315399, - -0.040118467062711716, - -0.03527712821960449, - 0.023533428087830544, - -0.16723714768886566, - -0.08374740183353424, - -0.07266789674758911, - 0.04033157601952553, - 0.005697854794561863, - 0.03307320177555084, - 0.05674409866333008, - -0.00736004114151001, - 0.025302359834313393, - -0.008941157720983028, - 0.024136634543538094, - -0.06608708202838898, - -0.08500169217586517, - -0.03722498565912247, - -0.0820484310388565, - 0.0030963472090661526, - 0.06611262261867523, - -0.027501927688717842, - 0.02997785061597824, - -0.014206597581505775, - -0.0897846519947052, - -0.09211274981498718, - 0.06178612634539604, - 0.025527819991111755, - -0.004660853184759617, - 0.029044259339571, - 0.04766248166561127, - -0.08930860459804535, - 0.041857700794935226, - 0.021609416231513023, - 0.09293758869171143, - -0.06496190279722214, - 0.04089675098657608, - -0.04615473374724388, - 0.008139315992593765, - 0.10298070311546326, - -0.07245919108390808, - -0.06786300241947174, - -0.08537886291742325, - -0.04386327043175697, - 0.03143146634101868, - -0.06382175534963608, - -0.022953975945711136, - -0.014260202646255493, - -0.00770226726308465, - -0.0735427588224411, - -0.08604089915752411, - 0.054536253213882446, - -0.002473333850502968, - -0.007351551204919815, - -0.05520911514759064, - 0.04073307663202286, - -0.005512945353984833, - 0.04282146319746971, - -0.034995317459106445, - 0.038817062973976135, - 0.01078060083091259, - -0.03456932306289673, - 0.014562118798494339, - 0.04662066698074341, - 0.06337518990039825, - 0.015382414683699608, - -0.03802090138196945, - -0.08534346520900726, - 0.05308078974485397, - -0.025435537099838257, - 0.0836106389760971, - -0.008187885396182537, - -0.04709063470363617, - -0.006285067647695541, - 0.012433654628694057, - -0.005599376279860735, - 0.02429061010479927, - 0.04455827176570892, - 0.05604148656129837, - -0.008471336215734482, - -0.06035800278186798, - 0.0891936868429184, - 0.03530941158533096, - 0.0009362921118736267, - -0.04584295675158501, - -0.02124122902750969, - -0.06280230730772018, - -0.007850621826946735, - -0.006578205153346062, - -0.07067693769931793, - 0.022704359143972397, - -0.03307250887155533, - 0.025164103135466576, - 0.029459595680236816, - 0.09369748830795288, - 0.028062455356121063, - -0.050122179090976715 - ] - }, - "p244_310.wav": { - "name": "p244", - "embedding": [ - 0.062333762645721436, - 0.11135416477918625, - -0.010516969487071037, - -0.006485992576926947, - -0.05130276083946228, - 0.06126203387975693, - -0.14945679903030396, - 0.1642509400844574, - -0.053004682064056396, - 0.13242875039577484, - -0.0558055154979229, - 0.1253504604101181, - -0.013647131621837616, - -0.1708347499370575, - -0.048024486750364304, - 0.04792303591966629, - -0.06457256525754929, - -0.04175776243209839, - -0.04514404758810997, - -0.042643945664167404, - 0.023041173815727234, - 0.02632591687142849, - 0.009444857016205788, - 0.019633198156952858, - 0.0445408932864666, - 0.06953977048397064, - 0.0009119375608861446, - 0.02979297563433647, - 0.0033158750738948584, - -0.056146290153265, - -0.022432927042245865, - 0.07109639048576355, - -0.05427337437868118, - 0.006242684554308653, - 0.056439489126205444, - -0.023334486410021782, - 0.019439522176980972, - -0.07142479717731476, - -0.03865321725606918, - 0.02475246600806713, - -0.023804016411304474, - 0.09528770297765732, - 0.03319437801837921, - -0.015879716724157333, - 0.020103946328163147, - 0.04602956399321556, - 0.018373748287558556, - -0.05385857820510864, - -0.09695323556661606, - 0.1576339304447174, - 0.060154348611831665, - 0.003256745170801878, - -0.08038675785064697, - -0.06254622340202332, - 0.10964995622634888, - -0.033896103501319885, - -0.09776374697685242, - -0.02907993644475937, - 0.056550975888967514, - 0.14644931256771088, - -0.050270020961761475, - -0.044469814747571945, - 0.03467117249965668, - 0.12549498677253723, - 0.06777068227529526, - 0.06362436711788177, - 0.08401626348495483, - 0.10009558498859406, - -0.04259272664785385, - 0.014622258953750134, - 0.06307181715965271, - 0.06722456216812134, - 0.05293458327651024, - -0.01901255175471306, - 0.0256817527115345, - -0.004500877112150192, - -0.014562606811523438, - -0.016639545559883118, - -0.022020038217306137, - -0.018084583804011345, - -0.02398824319243431, - 0.02738938480615616, - 0.00420380337163806, - 0.03587711974978447, - -0.021967288106679916, - 0.06440689414739609, - 0.030048459768295288, - -0.030402695760130882, - 0.07170552015304565, - 0.05547770857810974, - 0.03398648649454117, - 0.06849531829357147, - -0.09338508546352386, - -0.07385315746068954, - 0.04826626926660538, - -0.00901690311729908, - 0.020674970000982285, - 0.06259172409772873, - 0.0551062673330307, - -0.005868728272616863, - 0.12045145034790039, - 0.0753273293375969, - -0.00876203179359436, - 0.00862166564911604, - -0.09939444065093994, - 0.13078439235687256, - 0.08275123685598373, - -0.046129416674375534, - 0.047482818365097046, - -0.03654826059937477, - 0.053228553384542465, - 0.05904535949230194, - -0.13952064514160156, - -0.10209541022777557, - 0.03199651837348938, - 0.02433048002421856, - -0.009237615391612053, - 0.11519865691661835, - -0.009365643374621868, - 0.04630453884601593, - 0.08908770978450775, - -0.05981840938329697, - -0.05235005542635918, - -0.020699501037597656, - 0.05867981165647507, - -0.07363149523735046, - 0.0775236189365387, - 0.07276376336812973, - -0.0017665711930021644, - 0.020374348387122154, - 0.09087875485420227, - 0.0007007376989349723, - -0.014258968643844128, - 0.002553727477788925, - -0.013424744829535484, - 0.01827506348490715, - 0.0010108643909916282, - 0.000856323167681694, - 0.012265734374523163, - 0.04437711089849472, - 0.036183103919029236, - 0.007288246415555477, - -0.02180321328341961, - -0.10839347541332245, - 0.021832622587680817, - 0.030520638450980186, - 0.08195261657238007, - -0.009910766035318375, - -0.020321935415267944, - -0.024892106652259827, - -0.04641749709844589, - -0.022338520735502243, - -0.0005006389692425728, - 0.0804557204246521, - -0.027200235053896904, - 0.02207481861114502, - 0.1158241257071495, - 0.03636608272790909, - 0.010507237166166306, - -0.026340406388044357, - 0.002669725101441145, - 0.01554177887737751, - 0.059437137097120285, - -0.05581275373697281, - -0.08813385665416718, - -0.01614191010594368, - 0.028714101761579514, - -0.010185315273702145, - 0.0893682986497879, - 0.03561735153198242, - 0.003323871176689863, - 0.021243175491690636, - -0.07853252440690994, - 0.0366552472114563, - -0.09887391328811646, - -0.05439227446913719, - -0.017395587638020515, - -0.03081517666578293, - -0.048097848892211914, - 0.06837590038776398, - 0.03603004664182663, - 0.075649693608284, - -0.020068824291229248, - -0.08150546252727509, - -0.07169344276189804, - 0.03834502771496773, - 0.0763382837176323, - -0.025374209508299828, - 0.018010210245847702, - 0.0705205574631691, - 0.014005008153617382, - 0.05430516600608826, - 0.07449464499950409, - 0.08702366054058075, - -0.031685881316661835, - 0.016271088272333145, - -0.05655751749873161, - 0.07943019270896912, - 0.04702039062976837, - -0.09766217321157455, - -0.07521934807300568, - -0.03131193667650223, - -0.052844297140836716, - 0.010865757241845131, - 0.007213325705379248, - 0.04729142040014267, - 0.02575257048010826, - 0.003015512600541115, - -0.0818973034620285, - -0.09146809577941895, - 0.08307889103889465, - -0.08757950365543365, - 0.013212001882493496, - -0.0730065256357193, - 0.0410885252058506, - 0.11009232699871063, - 0.03561345115303993, - -0.0081672677770257, - -0.0246304702013731, - 0.019638020545244217, - -0.0005461095715872943, - 0.0066030896268785, - 0.04522112011909485, - 0.03942589461803436, - -0.1044793352484703, - 0.015239045023918152, - -0.07528360933065414, - 0.07470488548278809, - -0.03606195002794266, - 0.15367625653743744, - 0.01645088382065296, - -0.059046514332294464, - -0.10648392885923386, - 0.014447370544075966, - -0.03611423447728157, - 0.06656364351511002, - 0.02394464984536171, - 0.06695408374071121, - 0.03547429293394089, - -0.042541008442640305, - 0.10056301951408386, - 0.047229327261447906, - -0.05342699587345123, - -0.07886892557144165, - -0.06227856129407883, - -0.023887883871793747, - 0.03216726332902908, - 0.018341396003961563, - -0.0730758085846901, - -0.02213200554251671, - 0.01135922595858574, - -0.015492855571210384, - 0.094337098300457, - 0.13425292074680328, - 0.07430572807788849, - -0.13209103047847748 - ] - }, - "p244_390.wav": { - "name": "p244", - "embedding": [ - 0.05390515550971031, - 0.08928265422582626, - -0.009095130488276482, - 0.0331672802567482, - -0.03521709889173508, - 0.07289695739746094, - -0.134585902094841, - 0.12634585797786713, - -0.04289443790912628, - 0.15653173625469208, - -0.058817293494939804, - 0.10553275793790817, - -0.0011788542615249753, - -0.1952839344739914, - -0.04377306252717972, - 0.04105088487267494, - -0.07260677218437195, - -0.02957030013203621, - -0.06161730736494064, - 0.0018908885540440679, - 0.04718029499053955, - 0.04348362237215042, - 0.031137706711888313, - -7.213740173028782e-05, - 0.007394982967525721, - 0.05135253071784973, - 7.532518066000193e-05, - 0.05643025413155556, - 0.03473090007901192, - -0.06871864944696426, - -0.036472972482442856, - 0.12149496376514435, - -0.04107067734003067, - 0.026809513568878174, - 0.055561088025569916, - -0.02963853068649769, - -0.007271257229149342, - -0.04845721274614334, - -0.029888229444622993, - 0.016986336559057236, - -0.045228127390146255, - 0.07154866307973862, - 0.03585415706038475, - 0.013049333356320858, - 0.05837123468518257, - 0.005929145030677319, - -0.03145897388458252, - -0.05738860368728638, - -0.08443523198366165, - 0.1713896542787552, - 0.09075279533863068, - -0.014891610480844975, - -0.049283236265182495, - -0.05789681524038315, - 0.09286869317293167, - -0.015881182625889778, - -0.1446750909090042, - -0.054379530251026154, - 0.0792398601770401, - 0.15658412873744965, - -0.016973700374364853, - -0.018962474539875984, - 0.025595594197511673, - 0.1400173306465149, - 0.05862336978316307, - 0.10565488040447235, - 0.07664918154478073, - 0.09592867642641068, - 0.0021817826200276613, - 0.03837255761027336, - 0.05230647325515747, - 0.0448959618806839, - 0.037463411688804626, - -0.020335907116532326, - 0.050175171345472336, - 0.003201348939910531, - -0.019272953271865845, - -0.010164099745452404, - -0.006473494693636894, - 0.02481451816856861, - -0.001570268883369863, - 0.01204477995634079, - -0.0032795509323477745, - 0.034901563078165054, - -0.03703448921442032, - 0.049503225833177567, - -0.002315206453204155, - -0.0015280717052519321, - 0.05702874809503555, - 0.039399269968271255, - 0.04136405140161514, - 0.061849117279052734, - -0.05117488279938698, - -0.09778434038162231, - 0.015687324106693268, - 0.010577641427516937, - -6.401844439096749e-05, - 0.05919798091053963, - 0.038666751235723495, - -0.023059936240315437, - 0.1095709279179573, - 0.046080607920885086, - -0.03148084506392479, - 0.036561522632837296, - -0.10593611747026443, - 0.11764362454414368, - 0.06253674626350403, - -0.010973717086017132, - 0.053999822586774826, - -0.04982920363545418, - 0.08696375042200089, - 0.06308745592832565, - -0.14470164477825165, - -0.05770739167928696, - 0.06784173846244812, - -0.00554050225764513, - -0.01823246106505394, - 0.12491173297166824, - 0.006918720435351133, - 0.016837649047374725, - 0.09361709654331207, - -0.0745864138007164, - -0.04860581085085869, - -0.02651151642203331, - 0.06534599512815475, - -0.10346052050590515, - 0.04956859350204468, - 0.02006286382675171, - -0.026648448780179024, - -0.012086551636457443, - 0.10539241135120392, - -0.018278049305081367, - -0.002573288744315505, - 0.009611809626221657, - -0.03760271146893501, - 0.05780063197016716, - -0.04063032940030098, - 0.022076835855841637, - 0.020960509777069092, - 0.018808521330356598, - 0.03726546838879585, - -0.01462057139724493, - -0.045741137117147446, - -0.1042439416050911, - 0.012642532587051392, - 0.02781568467617035, - 0.07075914740562439, - -0.001994219608604908, - -0.005888078361749649, - -0.043102920055389404, - -0.06279237568378448, - 0.02562461420893669, - -0.038862429559230804, - 0.06611211597919464, - -0.0100297462195158, - -0.010633885860443115, - 0.10490754246711731, - -0.0032152431085705757, - 0.013908391818404198, - -0.050229016691446304, - -0.01925613358616829, - 0.017270535230636597, - 0.06111428141593933, - -0.08161693066358566, - -0.04565566033124924, - 0.019952932372689247, - 0.021331798285245895, - 0.0056177591904997826, - 0.03059665858745575, - 0.05080237612128258, - 0.010925977490842342, - 0.04018120467662811, - -0.08479554206132889, - 0.011016296222805977, - -0.11183982342481613, - -0.06443434953689575, - -0.025700028985738754, - -0.019076114520430565, - -0.00666585611179471, - 0.08366718888282776, - 0.00783555954694748, - 0.028873024508357048, - -0.004083580337464809, - -0.08913102000951767, - -0.07488339394330978, - 0.07882171869277954, - 0.09218160063028336, - -0.005183601286262274, - 0.04809688776731491, - 0.049967970699071884, - -0.03552994504570961, - 0.04761362075805664, - 0.04599515721201897, - 0.10308775305747986, - -0.01695864088833332, - 0.014222340658307076, - -0.09289102256298065, - 0.07657654583454132, - 0.08020355552434921, - -0.09848613291978836, - -0.08836112916469574, - 0.0039378684014081955, - -0.06599529832601547, - 0.025393830612301826, - -0.02892601117491722, - 0.0049562654457986355, - 0.04748081415891647, - 6.835884414613247e-05, - -0.09207058697938919, - -0.08813222497701645, - 0.10073535144329071, - -0.09169846773147583, - -0.019248684868216515, - -0.0721120685338974, - 0.04407724365592003, - 0.09232749789953232, - 0.04549960047006607, - -0.03842763602733612, - -0.008677591569721699, - 0.05421547591686249, - -0.04442988708615303, - -0.007950632832944393, - 0.039528023451566696, - 0.01881370320916176, - -0.1321561634540558, - 0.00788298062980175, - -0.0783316120505333, - 0.06109057739377022, - -0.08186092972755432, - 0.140180766582489, - -0.007290482986718416, - -0.06880410015583038, - -0.08298700302839279, - 0.05013761669397354, - -0.01638776622712612, - 0.04276889190077782, - 0.03441886231303215, - 0.06435059010982513, - 0.0453796423971653, - -0.06823495030403137, - 0.10489839315414429, - 0.031164808198809624, - -0.018003329634666443, - -0.07761579006910324, - -0.02650955319404602, - -0.040319573134183884, - 0.03270123898983002, - 0.026091286912560463, - -0.10452570021152496, - -0.009347882121801376, - 0.02893173322081566, - -0.04637656360864639, - 0.06974027305841446, - 0.1362844705581665, - 0.05342552065849304, - -0.1435653567314148 - ] - }, - "p244_272.wav": { - "name": "p244", - "embedding": [ - 0.07805004715919495, - 0.031246481463313103, - 0.0403924360871315, - -0.05527679994702339, - 0.024828551337122917, - 0.07462207973003387, - -0.12186755239963531, - 0.07680010050535202, - -0.014242593199014664, - 0.057926736772060394, - -0.08840712904930115, - 0.04659002274274826, - 0.025284886360168457, - -0.1520388126373291, - -0.03570377081632614, - 0.030892131850123405, - -0.04072274640202522, - 0.024306446313858032, - -0.05477508157491684, - -0.03034302592277527, - -0.0067830272018909454, - 0.04069060832262039, - 0.036249976605176926, - -0.04064023867249489, - 0.040984589606523514, - 0.047366317361593246, - 0.013311544433236122, - 0.02635137364268303, - -0.02134903520345688, - -0.036444611847400665, - 0.0006156200543045998, - 0.07961243391036987, - -0.03660359978675842, - -0.04000692814588547, - 0.05057183653116226, - 0.005644030403345823, - 0.05831284448504448, - -0.09285643696784973, - -0.022177865728735924, - 0.051782768219709396, - -0.05667605251073837, - 0.07458725571632385, - 0.05092700198292732, - 0.030888816341757774, - 0.014505833387374878, - 0.030910607427358627, - 0.02317505143582821, - -0.07474349439144135, - -0.08601969480514526, - 0.1618729531764984, - 0.014286966994404793, - 0.041374675929546356, - -0.10537150502204895, - -0.013100223615765572, - 0.04306437075138092, - -0.011819606646895409, - -0.027152301743626595, - -0.007410903926938772, - 0.038424551486968994, - 0.09972322732210159, - 0.022540202364325523, - -0.03822816163301468, - 0.04328371584415436, - 0.055118706077337265, - -0.026188569143414497, - 0.014896324835717678, - 0.11809432506561279, - 0.06560206413269043, - 0.008971446193754673, - 0.026067521423101425, - 0.039699532091617584, - 0.01513068750500679, - 0.06188390403985977, - -0.04368027299642563, - 0.04448987543582916, - -0.027908308431506157, - -0.04238244146108627, - -0.01628924533724785, - -0.02337472140789032, - -0.01637083664536476, - 0.06354888528585434, - 0.018838247284293175, - 0.017638787627220154, - 0.06269198656082153, - -0.05855787545442581, - 0.018404502421617508, - -0.018946334719657898, - 0.0524844229221344, - 0.0754566490650177, - 0.04872932657599449, - 0.04560946673154831, - -0.005865195766091347, - -0.04433590918779373, - -0.0777931660413742, - 0.03516163304448128, - 0.027359621599316597, - -0.012207778170704842, - 0.007468577474355698, - 0.03845154866576195, - -0.049091488122940063, - 0.09061408787965775, - -0.010038855485618114, - 0.002318674698472023, - -0.01295918133109808, - -0.07040002197027206, - 0.060140158981084824, - 0.09907764196395874, - -0.015951979905366898, - 0.04184911027550697, - -0.03884124010801315, - 0.008190998807549477, - 0.06033554673194885, - -0.09694486856460571, - -0.041078198701143265, - 0.03351639211177826, - 0.012129362672567368, - 0.07398790866136551, - 0.11422621458768845, - -0.0016760625876486301, - 0.018616054207086563, - 0.029490642249584198, - -0.06932834535837173, - -0.02365504764020443, - 0.02712034061551094, - -0.0032923854887485504, - -0.022457998245954514, - 0.0092119500041008, - 0.023451542481780052, - 0.040889251977205276, - -0.06427560746669769, - 0.0527741014957428, - 0.010937150567770004, - 0.009991750121116638, - -0.10067594796419144, - 0.07235223054885864, - 0.04502633959054947, - -0.0011446168646216393, - -0.04225616529583931, - 0.007886041887104511, - 0.06918466091156006, - -0.014319105073809624, - 0.06925106048583984, - -0.08320833742618561, - -0.10994590073823929, - -0.038774192333221436, - 0.0011140275746583939, - 0.03918425738811493, - -0.035329923033714294, - -0.02905648574233055, - -0.07947008311748505, - 0.032268088310956955, - -0.01167863979935646, - -0.01231518667191267, - 0.030090592801570892, - 0.09888110309839249, - -0.04613158106803894, - 0.07447901368141174, - -0.03751831501722336, - 0.022598695009946823, - -0.009025701321661472, - -0.007163614500313997, - 0.02782125025987625, - 0.017612474039196968, - 0.005257181823253632, - -0.06694945693016052, - -0.0005585253238677979, - -0.059513263404369354, - 0.005501090548932552, - 0.00797060877084732, - 0.020931215956807137, - -0.012566907331347466, - -0.03347695246338844, - -0.11056963354349136, - 0.021343054249882698, - -0.07710330188274384, - -0.033407628536224365, - 0.07335171103477478, - 0.0013008173555135727, - -0.02465185523033142, - 0.10292619466781616, - 0.018680822104215622, - 0.017956409603357315, - -0.07259131222963333, - -0.05193762108683586, - 0.017226621508598328, - 0.04458422213792801, - 0.06698817759752274, - -0.005020072218030691, - -0.0042329225689172745, - -0.025899047031998634, - 0.03187107667326927, - 0.0690484419465065, - 0.05349622666835785, - 0.03670891746878624, - -0.03689820319414139, - -0.02484549582004547, - 0.035276077687740326, - 0.10420235991477966, - -0.02229044958949089, - -0.011279079131782055, - -0.03782124072313309, - 0.04193677753210068, - -0.0345267578959465, - 0.014670413918793201, - 0.029176101088523865, - 0.03896758332848549, - 0.03579922765493393, - -0.032069213688373566, - -0.060753900557756424, - -0.03974713385105133, - 0.017953645437955856, - -0.05051875859498978, - -0.030922263860702515, - -0.04569966718554497, - 0.055334389209747314, - 0.09403257071971893, - -0.006817622110247612, - 0.016337305307388306, - -0.022613225504755974, - -0.039114195853471756, - -0.04312022030353546, - -0.05394390597939491, - -0.036319658160209656, - 0.026847518980503082, - -0.07230760902166367, - 0.02256101928651333, - -0.06537202000617981, - 0.06207843869924545, - -0.016198329627513885, - 0.04776257649064064, - 0.04713447019457817, - -0.04444450885057449, - -0.07119201868772507, - -0.006379054859280586, - -0.008983755484223366, - 0.03671051934361458, - 0.022441480308771133, - -0.0002881418913602829, - 0.05042334645986557, - -0.056568440049886703, - 0.04519500955939293, - 0.032964859157800674, - -0.04395901784300804, - -0.05827764794230461, - -0.02664433792233467, - 0.010392685420811176, - 0.021448174491524696, - -0.030511366203427315, - -0.022718951106071472, - 0.03794592246413231, - 0.037708837538957596, - 0.030361898243427277, - 0.02101735584437847, - 0.05144747719168663, - 0.001114354468882084, - -0.07820219546556473 - ] - }, - "p244_210.wav": { - "name": "p244", - "embedding": [ - 0.030596919357776642, - 0.0841556191444397, - 0.012820704840123653, - 0.010635925456881523, - 0.008473701775074005, - 0.028797658160328865, - -0.1492796540260315, - 0.14613549411296844, - -0.003934000618755817, - 0.12034957110881805, - -0.07674948126077652, - 0.05096691846847534, - -0.03624391183257103, - -0.1290227472782135, - -0.03811531886458397, - 0.02606789767742157, - -0.034172289073467255, - -0.02522493712604046, - -0.006144885439425707, - -0.006501024588942528, - 0.03783539682626724, - 0.019031988456845284, - -0.0009674839675426483, - 0.01439635083079338, - 0.037747837603092194, - 0.012713033705949783, - 0.016097357496619225, - 0.061483800411224365, - 0.025261247530579567, - -0.013186433352530003, - 0.03253801539540291, - 0.11990076303482056, - -0.0628390684723854, - -0.009552542120218277, - 0.048650167882442474, - 0.007677403278648853, - -0.027684640139341354, - -0.03144530951976776, - -0.058763280510902405, - 0.026295050978660583, - -0.044312141835689545, - 0.05063920468091965, - 0.01699085719883442, - 0.0011239736340939999, - 0.03825441375374794, - 0.022916747257113457, - -0.0019340435974299908, - -0.034722182899713516, - -0.08818639814853668, - 0.13072866201400757, - 0.06585775315761566, - 0.012756201438605785, - -0.08909894526004791, - -0.090900719165802, - 0.06726817786693573, - 0.007602536119520664, - -0.07183565199375153, - 0.002192273736000061, - 0.06536427140235901, - 0.14639964699745178, - -0.007427135482430458, - -0.01235495787113905, - 0.018868179991841316, - 0.07820919156074524, - 0.07840124517679214, - 0.045271143317222595, - 0.04875032603740692, - 0.0846790075302124, - 0.029304085299372673, - 0.029179414734244347, - 0.059164032340049744, - 0.021112974733114243, - 0.009686710312962532, - -0.042836036533117294, - 0.030365262180566788, - 0.03601401299238205, - -0.02768142893910408, - 0.004443887621164322, - 0.01381439995020628, - 0.0046913400292396545, - 0.03584422916173935, - -1.531653106212616e-05, - -0.013592083938419819, - 0.06888803839683533, - -0.039438508450984955, - 0.042061954736709595, - -0.004070714116096497, - -0.01485615223646164, - 0.08001046627759933, - 0.03558462858200073, - 0.023850612342357635, - 0.07595677673816681, - -0.07829700410366058, - -0.08305729925632477, - -0.006581442430615425, - -0.003209050977602601, - 0.024796640500426292, - 0.05243242159485817, - 0.037644971162080765, - -0.02066842094063759, - 0.12771877646446228, - 0.034893687814474106, - 0.013780414126813412, - -0.0042670974507927895, - -0.1260133981704712, - 0.07696455717086792, - 0.04633644223213196, - -0.02695537358522415, - 0.0515616312623024, - -0.012208234518766403, - 0.04175709933042526, - 0.04974275454878807, - -0.13143886625766754, - -0.03920525684952736, - 0.05118044093251228, - 0.0059749591164290905, - 0.01594759337604046, - 0.1069403663277626, - 0.03104320913553238, - -0.01620885170996189, - 0.07889629900455475, - -0.08621074259281158, - -0.055649906396865845, - -0.033559974282979965, - 0.1016840785741806, - -0.08952215313911438, - 0.027700264006853104, - 0.024675438180565834, - -0.014423297718167305, - -0.04531712830066681, - 0.07375186681747437, - 0.000415031798183918, - -0.00015851296484470367, - -0.028294507414102554, - 0.01749030500650406, - 0.08891933411359787, - -0.021659063175320625, - 0.03105173259973526, - 0.01992894522845745, - 0.04125868156552315, - 0.025921441614627838, - 0.01935938559472561, - -0.049375589936971664, - -0.07961546629667282, - -0.009436559863388538, - 0.0684974193572998, - 0.06708923727273941, - -0.0491051971912384, - -0.030637552961707115, - -0.0654284656047821, - -0.05686984211206436, - 0.02030065283179283, - 0.04222528636455536, - 0.08421556651592255, - 0.046449583023786545, - -0.029040930792689323, - 0.13530217111110687, - -0.03105255588889122, - 0.007283971644937992, - -0.020225167274475098, - 0.025831453502178192, - 0.009825004264712334, - 0.04207317531108856, - -0.06330402940511703, - -0.07473613321781158, - 0.02230144292116165, - 0.0007133600302040577, - 0.022106168791651726, - 0.029444189742207527, - -0.0011781472712755203, - -0.0005464546848088503, - 0.019190713763237, - -0.06677652150392532, - 0.013764157891273499, - -0.0881725549697876, - -0.07823389768600464, - -0.007210577372461557, - 0.013173889368772507, - -0.019713273271918297, - 0.07604013383388519, - -0.00691785104572773, - 0.047817979007959366, - 0.027661941945552826, - -0.09357676655054092, - -0.07103085517883301, - 0.06767357885837555, - 0.05215778946876526, - -0.012474924325942993, - 0.04100147634744644, - 0.06916986405849457, - -0.0339847169816494, - 0.023280568420886993, - 0.06203930824995041, - 0.07159791886806488, - -0.05701250582933426, - -0.012226616963744164, - -0.08411754667758942, - 0.09320881962776184, - 0.047804687172174454, - -0.09929536283016205, - -0.08394557982683182, - -0.011899353936314583, - -0.05481933802366257, - 0.012348607182502747, - -0.004481784068048, - 0.06157462298870087, - 0.007839015685021877, - -0.0472693033516407, - -0.06354792416095734, - -0.08071665465831757, - 0.07271368056535721, - -0.06602893024682999, - -0.04005580395460129, - -0.04836101830005646, - 0.03449997678399086, - 0.08083398640155792, - 0.05337708070874214, - 0.03816365450620651, - -0.039333928376436234, - 0.034648336470127106, - -0.05005088075995445, - -0.07325781136751175, - 0.04599399119615555, - -0.026650480926036835, - -0.10073283314704895, - -0.017291313037276268, - -0.050028689205646515, - 0.09322719275951385, - -0.06154647096991539, - 0.10789820551872253, - -0.013691608794033527, - -0.07906541228294373, - -0.07174591720104218, - -0.025496678426861763, - 0.0209258534014225, - 0.03191053494811058, - 0.027914701029658318, - 0.04535887390375137, - 0.031264886260032654, - -0.011600816622376442, - 0.08953496813774109, - 0.01850002072751522, - 0.009259818121790886, - -0.048829250037670135, - -0.0622490718960762, - 0.0012840889394283295, - 0.01808755099773407, - -0.0008657914586365223, - -0.09528379887342453, - 0.04542069509625435, - 0.0033216187730431557, - -0.0407499261200428, - 0.015438757836818695, - 0.0888296440243721, - 0.051443349570035934, - -0.14641030132770538 - ] - }, - "p244_201.wav": { - "name": "p244", - "embedding": [ - 0.05511818081140518, - 0.11212310194969177, - -0.011525323614478111, - 0.016972655430436134, - -0.04211655631661415, - 0.0638246089220047, - -0.16440251469612122, - 0.1507434844970703, - -0.026916876435279846, - 0.13388268649578094, - -0.037310678511857986, - 0.12266439944505692, - -0.020745359361171722, - -0.17097729444503784, - -0.03719726949930191, - 0.059551902115345, - -0.04489855840802193, - -0.036431364715099335, - -0.014066828414797783, - -0.01691630855202675, - 0.009256268851459026, - 0.02300920896232128, - 0.040245041251182556, - 0.02279983088374138, - 0.03718739002943039, - 0.06513645499944687, - 0.0007651466876268387, - 0.05713482201099396, - 0.00963128823786974, - -0.03747817873954773, - -0.029261961579322815, - 0.08851687610149384, - -0.06712214648723602, - 0.023853596299886703, - 0.05486403405666351, - -0.013791164383292198, - 0.003468405921012163, - -0.05426535755395889, - -0.011016378179192543, - 0.003150020493194461, - -0.025247231125831604, - 0.10075338929891586, - 0.03476456552743912, - -0.008219363167881966, - 0.01719394326210022, - 0.03493858128786087, - 0.008156637661159039, - -0.0324087031185627, - -0.11855581402778625, - 0.1498035192489624, - 0.06533762067556381, - -0.0043103876523673534, - -0.0772293359041214, - -0.05846061557531357, - 0.08848056942224503, - -0.027996767312288284, - -0.10237906873226166, - -0.03466286510229111, - 0.07236357033252716, - 0.14088992774486542, - -0.031598836183547974, - -0.0486932098865509, - 0.023812200874090195, - 0.13915732502937317, - 0.08070148527622223, - 0.07763877511024475, - 0.07992343604564667, - 0.12148387730121613, - -0.050063468515872955, - -0.0021491101942956448, - 0.050942204892635345, - 0.0586591511964798, - 0.04539824277162552, - 0.009091577492654324, - 0.012125764042139053, - -0.017939668148756027, - -0.004847826436161995, - -0.005730635020881891, - -0.014895502477884293, - -0.029740257188677788, - -0.029120707884430885, - 0.013473547995090485, - -0.011863608844578266, - 0.06011473387479782, - -0.012197759002447128, - 0.0584108941257, - 0.034900542348623276, - -0.018841322511434555, - 0.0773913562297821, - 0.05043083429336548, - 0.0210711732506752, - 0.06707257777452469, - -0.0912616178393364, - -0.05538351833820343, - 0.0398763008415699, - -0.008284758776426315, - 0.038146667182445526, - 0.07084225118160248, - 0.041463833302259445, - -0.0010061735520139337, - 0.12212863564491272, - 0.06449627876281738, - -0.014100637286901474, - 0.016240563243627548, - -0.08583803474903107, - 0.13689729571342468, - 0.06536121666431427, - -0.03450407832860947, - 0.055621471256017685, - -0.04011617228388786, - 0.04346810281276703, - 0.060454487800598145, - -0.12322668731212616, - -0.0895187184214592, - 0.04595860093832016, - 0.04117373004555702, - -0.0230595450848341, - 0.12120827287435532, - -0.001005854457616806, - 0.0545198880136013, - 0.08080488443374634, - -0.07027877867221832, - -0.04748065769672394, - -0.009639699943363667, - 0.06234338507056236, - -0.06941592693328857, - 0.05164248123764992, - 0.06436388194561005, - -0.013249555602669716, - 0.010334555990993977, - 0.08919903635978699, - 0.011683602817356586, - 0.000299295992590487, - 0.02489382028579712, - -0.036725860089063644, - 0.014538826420903206, - -0.0019320540595799685, - 0.012876464053988457, - 0.015764329582452774, - 0.021520916372537613, - 0.04543602466583252, - 0.005655610002577305, - -0.024667367339134216, - -0.1309337466955185, - 0.003189387731254101, - 0.0531509593129158, - 0.08745987713336945, - -0.024010051041841507, - -0.040880054235458374, - -0.030893104150891304, - -0.03797308728098869, - 0.0009898971766233444, - 0.006269948557019234, - 0.0656789243221283, - -0.03542296215891838, - -0.009637041948735714, - 0.10649190843105316, - 0.030321605503559113, - 0.0031170290894806385, - -0.04022235423326492, - -0.016823559999465942, - 0.0015661268262192607, - 0.047295406460762024, - -0.08259402215480804, - -0.07387891411781311, - -0.004735726863145828, - 0.04221796989440918, - -0.01233053021132946, - 0.08891333639621735, - 0.05673213303089142, - 0.016745546832680702, - 0.0222429558634758, - -0.048097945749759674, - 0.011405489407479763, - -0.07478676736354828, - -0.07258903235197067, - -0.018395038321614265, - 0.009205790236592293, - -0.03617504984140396, - 0.07776371389627457, - 0.04206109046936035, - 0.09293448179960251, - -0.023142961785197258, - -0.05291867256164551, - -0.07306499779224396, - 0.04751640930771828, - 0.06554031372070312, - -0.025272902101278305, - 0.03950625658035278, - 0.07353940606117249, - -0.024351969361305237, - 0.05548709258437157, - 0.07088024914264679, - 0.08119156956672668, - -0.05111321806907654, - 0.024134550243616104, - -0.07701750099658966, - 0.060233116149902344, - 0.0856102705001831, - -0.10147425532341003, - -0.07619839906692505, - -0.013500827364623547, - -0.061241574585437775, - 0.006847718730568886, - -0.0328960083425045, - 0.029118482023477554, - 0.03181857243180275, - -0.005155395716428757, - -0.08790645003318787, - -0.12165117263793945, - 0.08395262062549591, - -0.08868646621704102, - 0.019166551530361176, - -0.06920987367630005, - 0.05198763310909271, - 0.08661377429962158, - 0.03899727016687393, - -0.029150929301977158, - -0.018633730709552765, - 0.034087590873241425, - 0.0008559771813452244, - 0.008367626927793026, - 0.07127957046031952, - 0.04484396427869797, - -0.12551236152648926, - 0.008474432863295078, - -0.06450192630290985, - 0.06808453798294067, - -0.035618893802165985, - 0.16381029784679413, - 0.021532177925109863, - -0.054629646241664886, - -0.08315492421388626, - 0.003878412302583456, - -0.04005561023950577, - 0.05593789368867874, - 0.015326911583542824, - 0.06255761533975601, - 0.03487628698348999, - -0.041331011801958084, - 0.11909664422273636, - 0.049699876457452774, - -0.05620461702346802, - -0.08857350051403046, - -0.045126304030418396, - -0.030415156856179237, - 0.06337439268827438, - 0.0274224691092968, - -0.08693434298038483, - -0.03429974988102913, - 0.021948659792542458, - -0.018025502562522888, - 0.0702352374792099, - 0.14869332313537598, - 0.07642989605665207, - -0.12858504056930542 - ] - }, - "p244_136.wav": { - "name": "p244", - "embedding": [ - 0.05141834914684296, - 0.09384244680404663, - 0.0027724015526473522, - 0.048024777323007584, - -0.03925531357526779, - 0.06964029371738434, - -0.07960496842861176, - 0.08917447924613953, - -0.05906029790639877, - 0.14789757132530212, - -0.11277738213539124, - 0.11306633800268173, - -0.021489301696419716, - -0.16951832175254822, - -0.03842146694660187, - 0.06441636383533478, - -0.027990078553557396, - 0.030925128608942032, - -0.030577704310417175, - 0.0270548015832901, - 0.04513400420546532, - 0.0441758967936039, - 0.07102750241756439, - -0.051528967916965485, - 0.062090471386909485, - 0.049823418259620667, - 0.029422150924801826, - 0.08429831266403198, - 0.04295084625482559, - -0.10208781063556671, - -0.052613869309425354, - 0.13765741884708405, - -0.036743395030498505, - 0.026554159820079803, - 0.04950394481420517, - 0.011309279128909111, - 0.0005480997497215867, - -0.061575815081596375, - 0.000676786876283586, - -0.0182732492685318, - -0.01846231147646904, - 0.056750133633613586, - 0.006017546635121107, - -0.010398592799901962, - 0.0258325282484293, - 0.021399367600679398, - -0.04424873739480972, - -0.0469798780977726, - -0.09055374562740326, - 0.14626476168632507, - 0.02010076679289341, - 0.022107237949967384, - -0.07736627757549286, - -0.09531641006469727, - 0.09994763135910034, - 0.01042456366121769, - -0.10447446256875992, - -0.026107992976903915, - 0.07764921337366104, - 0.17855390906333923, - 0.0013499065535143018, - -0.03455064073204994, - 0.004637734033167362, - 0.08558331429958344, - 0.012575481086969376, - 0.11652513593435287, - 0.050336919724941254, - 0.05314097926020622, - 0.06140861660242081, - 0.08126457035541534, - 0.02980859950184822, - 0.07705634832382202, - 0.01710939221084118, - -0.026365702971816063, - 0.013730703853070736, - -0.013302801176905632, - -0.0603434219956398, - 0.03303295373916626, - -0.010137918405234814, - -0.011267154477536678, - -0.004585144575685263, - -0.014200631529092789, - 0.03355584293603897, - -0.039536818861961365, - -0.033892177045345306, - 0.032373566180467606, - -0.010474840179085732, - -0.009296310134232044, - 0.06975413113832474, - 0.01981363445520401, - -0.022136781364679337, - 0.02798370271921158, - -0.05673570930957794, - -0.1416313648223877, - -0.006681807804852724, - 0.02671816758811474, - 0.013314202427864075, - 0.06863708794116974, - 0.03743428364396095, - -0.045212581753730774, - 0.08942880481481552, - 0.04641281068325043, - 0.02805173024535179, - 0.03454264998435974, - -0.08436690270900726, - 0.09035779535770416, - 0.09968797862529755, - 0.025750044733285904, - 0.05775569751858711, - -0.03618744760751724, - 0.11050941050052643, - 0.1042468398809433, - -0.16119490563869476, - -0.07683303207159042, - -0.024384746327996254, - -0.034818004816770554, - 0.007066630758345127, - 0.06654946506023407, - -0.027014728635549545, - -0.01130053773522377, - 0.09593239426612854, - -0.11562374979257584, - -0.0719260573387146, - -0.032707080245018005, - 0.02501877211034298, - -0.08276085555553436, - 0.049125753343105316, - 0.013773162849247456, - -0.03938998281955719, - -0.018643083050847054, - 0.06344294548034668, - -0.024832408875226974, - 0.01686427742242813, - 0.04303388670086861, - -0.07249826937913895, - 0.025042152032256126, - -0.09079482406377792, - 0.016426056623458862, - 0.09090790152549744, - 0.04403422027826309, - 0.06044825538992882, - -0.0033124065957963467, - -0.04384984076023102, - -0.08292171359062195, - -0.0028851458337157965, - 0.0525209978222847, - 0.020323116332292557, - -0.010496784932911396, - -0.028149064630270004, - -0.04103463143110275, - -0.07869160175323486, - 0.07913064956665039, - -0.0011206634808331728, - 0.08580173552036285, - 0.030030835419893265, - 0.018346428871154785, - 0.0923272967338562, - 0.006899341009557247, - -0.01107434555888176, - -0.0821005254983902, - -0.04700682684779167, - 0.05453604459762573, - 0.03173323720693588, - -0.10375726222991943, - -0.038108717650175095, - 0.020120572298765182, - -0.01418862584978342, - -0.04396382346749306, - 0.002357538789510727, - 0.04429242014884949, - 0.02557266503572464, - 0.052937597036361694, - -0.03040521964430809, - 0.00023684941697865725, - -0.1077771782875061, - -0.050389159470796585, - -0.022212030366063118, - -0.04610762372612953, - -0.018408508971333504, - 0.09210646152496338, - 0.00935431569814682, - -0.005422515328973532, - -0.0002923562133219093, - -0.05018161982297897, - -0.061742525547742844, - 0.07599705457687378, - 0.05665174126625061, - 0.04734191298484802, - 0.06706345081329346, - 0.014234588481485844, - -0.04093615710735321, - 0.06819590926170349, - 0.05485409498214722, - 0.09729917347431183, - -0.0037351511418819427, - -0.012426167726516724, - -0.07035854458808899, - 0.08780263364315033, - 0.10930603742599487, - -0.09341315180063248, - -0.1024673730134964, - -0.0436556302011013, - -0.07118580490350723, - 0.09446816146373749, - -0.02589349076151848, - -0.03805803135037422, - 0.02255435660481453, - -0.04031994566321373, - -0.08825281262397766, - -0.07669749855995178, - 0.09607619047164917, - -0.03330562263727188, - -0.06764556467533112, - -0.06447035074234009, - 0.03951749578118324, - 0.0531640350818634, - 0.03523951768875122, - -0.00457668537274003, - 0.02532750740647316, - 0.06489630043506622, - -0.11835372447967529, - -0.03565382584929466, - 0.04792428016662598, - -0.028515227138996124, - -0.0448799729347229, - 0.03351759910583496, - -0.07020387053489685, - 0.061290137469768524, - -0.08577300608158112, - 0.1748303323984146, - -0.05219673365354538, - -0.06337454915046692, - -0.06802007555961609, - 0.0746140107512474, - -0.037712790071964264, - 0.009680218994617462, - 0.07229800522327423, - 0.03549128398299217, - 0.036690570414066315, - -0.1087617352604866, - 0.10996214300394058, - -0.0017096211668103933, - 0.008962016552686691, - -0.04340721666812897, - -0.0443255677819252, - -0.06405270099639893, - 0.0012607452226802707, - -0.03241158276796341, - -0.08377400040626526, - 0.02377261407673359, - 0.020100770518183708, - 0.002682886552065611, - 0.04253046214580536, - 0.11782117187976837, - 0.03330816701054573, - -0.0671708881855011 - ] - }, - "p244_238.wav": { - "name": "p244", - "embedding": [ - 0.048192255198955536, - 0.0856732502579689, - -0.024784784764051437, - 0.034956980496644974, - -0.06625073403120041, - 0.05187675356864929, - -0.1189003437757492, - 0.1366071105003357, - -0.02329511195421219, - 0.13937202095985413, - -0.06657830625772476, - 0.13776913285255432, - -0.015011260285973549, - -0.17779940366744995, - -0.020704206079244614, - 0.04880214482545853, - -0.041755590587854385, - -0.039138369262218475, - -0.024401327595114708, - -0.02936430647969246, - 0.0556807667016983, - 0.055693209171295166, - 0.03320441395044327, - 0.00034835212863981724, - 0.017719268798828125, - 0.07283156365156174, - -0.003327935701236129, - 0.03543262183666229, - 0.00414060615003109, - -0.07725800573825836, - -0.05338648706674576, - 0.09614154696464539, - -0.050617948174476624, - 0.018481513485312462, - 0.03167777135968208, - -0.02287757396697998, - 0.0005867118015885353, - -0.0536423958837986, - -0.020605625584721565, - 0.011464349925518036, - -0.030290240421891212, - 0.0711221992969513, - 0.020660096779465675, - -0.015318632125854492, - 0.04880041256546974, - 0.01688324846327305, - -0.028967643156647682, - -0.03955049067735672, - -0.11184601485729218, - 0.17146752774715424, - 0.08238431811332703, - -0.002738955896347761, - -0.058955587446689606, - -0.06897035241127014, - 0.09003840386867523, - -0.009812616743147373, - -0.10784505307674408, - -0.027097230777144432, - 0.06440021097660065, - 0.14617036283016205, - -0.01969076506793499, - -0.055733270943164825, - 0.038849085569381714, - 0.11995720863342285, - 0.049979887902736664, - 0.07123299688100815, - 0.08621516823768616, - 0.10666322708129883, - -0.032921262085437775, - 0.006459346506744623, - 0.041732095181941986, - 0.0870308130979538, - 0.07335962355136871, - -0.0020383328665047884, - 0.033529508858919144, - 0.0009053430985659361, - -0.015052133239805698, - -0.014228877611458302, - -0.0341176837682724, - -0.022708691656589508, - -0.0058417534455657005, - 0.008260474540293217, - 0.020324915647506714, - 0.027046389877796173, - -0.02797975018620491, - 0.0632672905921936, - 0.041860174387693405, - -0.00863546784967184, - 0.05933716893196106, - 0.01817016303539276, - 0.01571546122431755, - 0.07002922892570496, - -0.09937640279531479, - -0.08078598976135254, - 0.04861612617969513, - 0.017239488661289215, - 0.03527238965034485, - 0.07749965786933899, - 0.040935199707746506, - -0.02634143829345703, - 0.11926497519016266, - 0.04318404942750931, - -0.010764160193502903, - 0.013201180845499039, - -0.09105083346366882, - 0.12342653423547745, - 0.11026807874441147, - -0.027273029088974, - 0.051274314522743225, - -0.05674508959054947, - 0.08958464115858078, - 0.051044873893260956, - -0.13859692215919495, - -0.07745301723480225, - 0.015450185164809227, - 0.015069538727402687, - -0.017095256596803665, - 0.12328608334064484, - -0.0021681305952370167, - 0.06407656520605087, - 0.10999579727649689, - -0.10157221555709839, - -0.05042215436697006, - -0.025978311896324158, - 0.048142313957214355, - -0.09797748923301697, - 0.059781208634376526, - 0.05708244442939758, - -0.011131984181702137, - 0.020146246999502182, - 0.06837328523397446, - -0.021472342312335968, - 0.009674872271716595, - 0.01459462009370327, - -0.05541980266571045, - 0.0023015919141471386, - -0.031046949326992035, - -0.011620761826634407, - 0.03468741849064827, - 0.027203360572457314, - 0.046746961772441864, - -0.0187997967004776, - -0.029246270656585693, - -0.13109919428825378, - 0.025988835841417313, - 0.03092006966471672, - 0.056365422904491425, - -0.012007994577288628, - -0.039373014122247696, - -0.034047313034534454, - -0.07035766541957855, - 0.013507400639355183, - -0.007875584997236729, - 0.05060463398694992, - -0.02387099526822567, - 0.007717732340097427, - 0.09041944891214371, - 0.041866544634103775, - -0.01242828369140625, - -0.03630158677697182, - -0.05333526059985161, - 0.010161603800952435, - 0.05040629208087921, - -0.08434578776359558, - -0.08028256148099899, - -0.016978222876787186, - 0.029886778444051743, - -0.019844239577651024, - 0.061177946627140045, - 0.05779300630092621, - 0.02064438909292221, - 0.022764405235648155, - -0.06299805641174316, - 0.006624080240726471, - -0.1037154346704483, - -0.08396510779857635, - -0.011568926274776459, - -0.016440793871879578, - -0.020698431879281998, - 0.07582233846187592, - 0.013021954335272312, - 0.06354506313800812, - -0.038435399532318115, - -0.04189471900463104, - -0.08367975056171417, - 0.053421203047037125, - 0.05864348262548447, - 0.006749191787093878, - 0.05156416445970535, - 0.05735238268971443, - -0.02956988848745823, - 0.06539896130561829, - 0.05777057260274887, - 0.10557493567466736, - -0.023623373359441757, - 0.028875652700662613, - -0.06988620012998581, - 0.09637941420078278, - 0.09502626955509186, - -0.06928315758705139, - -0.08859211206436157, - -0.036927372217178345, - -0.08109502494335175, - 0.048474378883838654, - -0.0327536016702652, - -0.001456666854210198, - 0.03568661957979202, - 0.00914892740547657, - -0.11304029822349548, - -0.08176206052303314, - 0.08448360860347748, - -0.05312156304717064, - -0.006756352260708809, - -0.08260433375835419, - 0.05436480790376663, - 0.109525166451931, - 0.037000566720962524, - -0.0370929092168808, - -0.0195329487323761, - 0.0471968874335289, - -0.025126691907644272, - 0.016944408416748047, - 0.0459243580698967, - 0.05811868607997894, - -0.10650826245546341, - -0.001933423918671906, - -0.07025714218616486, - 0.031967777758836746, - -0.05384049564599991, - 0.1429595649242401, - 0.01064557395875454, - -0.0460495725274086, - -0.08517690747976303, - 0.068721242249012, - -0.008044741116464138, - 0.04722782224416733, - 0.024256261065602303, - 0.05122235417366028, - 0.043867725878953934, - -0.09508968889713287, - 0.1171967089176178, - 0.042246345430612564, - -0.046473052352666855, - -0.06898881494998932, - -0.04760158807039261, - -0.03766796737909317, - 0.03268912807106972, - 0.016161737963557243, - -0.08264794945716858, - -0.02973749116063118, - 0.02060704305768013, - 0.009672337211668491, - 0.06370183825492859, - 0.14448684453964233, - 0.041367240250110626, - -0.12331701815128326 - ] - }, - "p244_196.wav": { - "name": "p244", - "embedding": [ - 0.021600846201181412, - 0.004570044577121735, - -0.07494718581438065, - 0.11656808853149414, - -0.08416303992271423, - -0.0036705578677356243, - -0.0676426962018013, - 0.028364302590489388, - 0.004655107855796814, - 0.0421636700630188, - -0.020549116656184196, - 0.10482598096132278, - -0.007486165966838598, - -0.15837056934833527, - 0.017453154549002647, - 0.05888497084379196, - -0.018500788137316704, - -0.04646013304591179, - -0.0852256640791893, - 0.0017188191413879395, - 0.0239394661039114, - 0.058483004570007324, - 0.09829157590866089, - -0.11539868265390396, - 0.05027247592806816, - 0.06059977039694786, - 0.03152298182249069, - 0.0605325847864151, - 0.006205031182616949, - -0.08786999434232712, - -0.02531738579273224, - 0.07218952476978302, - -0.04300328716635704, - -0.04287872835993767, - -0.006608361378312111, - -0.017997456714510918, - 0.006549905054271221, - -0.05062362551689148, - -0.00022188297589309514, - 0.060666222125291824, - -0.03764817863702774, - 0.08683430403470993, - 0.0381389781832695, - -0.06500234454870224, - 0.044205278158187866, - -0.014747124165296555, - -0.07458034157752991, - -0.011999599635601044, - -0.14061351120471954, - 0.1476481556892395, - 0.0013768341159448028, - 0.03952260687947273, - -0.07445188611745834, - -0.10498807579278946, - 0.08857572078704834, - 0.03125270456075668, - -0.07170958071947098, - -0.07785048335790634, - 0.019192785024642944, - 0.14542174339294434, - 0.01966034434735775, - 0.031899575144052505, - 0.060237716883420944, - 0.04126972332596779, - 0.10605190694332123, - 0.022118283435702324, - 0.04622618108987808, - 0.09566080570220947, - 0.03816326707601547, - 0.04114250838756561, - 0.05145137757062912, - 0.10741766542196274, - -0.03579790145158768, - 0.03237021714448929, - -0.0016727469628676772, - 0.0007892122375778854, - -0.04242180287837982, - -0.05049879848957062, - -0.00753529230132699, - -0.021233510226011276, - 0.029774416238069534, - -0.01037671323865652, - 0.08324018120765686, - 0.008410842157900333, - -0.07947350293397903, - 0.05544404685497284, - 0.07956980913877487, - -0.051099494099617004, - 0.03790952265262604, - 0.015305854380130768, - -0.028178324922919273, - 0.04381226375699043, - -0.05355055630207062, - -0.09496687352657318, - -0.038160040974617004, - 0.0489855632185936, - 0.03625588119029999, - 0.025230666622519493, - 0.011667909100651741, - -0.04750958830118179, - 0.09341155737638474, - 0.028735613450407982, - -0.002344172215089202, - 0.014013756066560745, - 0.011318717151880264, - 0.06484272330999374, - 0.1116248294711113, - 0.02786775305867195, - 0.03783769533038139, - -0.005671270191669464, - 0.02077414095401764, - 0.028183581307530403, - -0.07662416249513626, - -0.08070453256368637, - 0.002776081906631589, - -0.04332665726542473, - 0.0015102250035852194, - 0.12315301597118378, - 0.012537411414086819, - 0.04657234251499176, - 0.11499587446451187, - -0.12760981917381287, - -0.0385301373898983, - 0.013204270973801613, - 0.05735161900520325, - -0.014100005850195885, - 0.016016315668821335, - 0.057698749005794525, - -0.0548892468214035, - -0.011758845299482346, - 0.03290052339434624, - -0.0022033657878637314, - 0.07848820835351944, - 0.041470713913440704, - -0.05197889357805252, - 0.11259084939956665, - -0.049750421196222305, - -0.04358360916376114, - 0.1818459928035736, - 0.02459142357110977, - 0.085120290517807, - -0.0760008692741394, - -0.025670839473605156, - -0.12971827387809753, - 0.05193028599023819, - 0.027295392006635666, - 0.05988822504878044, - -0.036803022027015686, - -0.01406625285744667, - -0.0860980674624443, - -0.1182086393237114, - 0.09125997126102448, - 0.026377592235803604, - 0.12329612672328949, - -0.01577657461166382, - -0.004697935190051794, - 0.07087470591068268, - -0.01746348850429058, - -0.02045099250972271, - 0.00040763261495158076, - -0.05951942503452301, - 0.02545331045985222, - 0.03147123381495476, - -0.04082140326499939, - -0.04136192798614502, - -0.03162946552038193, - 0.02418454922735691, - -0.02802218496799469, - 0.04737013578414917, - 0.04965860769152641, - 0.004983807448297739, - -0.007092426065355539, - -0.0015535918064415455, - -0.0005961758433841169, - -0.012993017211556435, - 0.01917100138962269, - -0.023778550326824188, - -0.062470052391290665, - -0.0899285301566124, - 0.11358119547367096, - 0.060554951429367065, - 0.050150010734796524, - -0.03811769187450409, - -0.046608246862888336, - -0.06418602913618088, - 0.04399752989411354, - -0.0017196411499753594, - -0.016996687278151512, - 0.06712747365236282, - 0.05948321148753166, - -0.006635765545070171, - 0.02376386895775795, - 0.056312933564186096, - 0.018657678738236427, - -0.013202209025621414, - -0.07997986674308777, - -0.05439700558781624, - 0.16799308359622955, - 0.09062279015779495, - -0.06793129444122314, - 0.003616803791373968, - -0.06300493329763412, - -0.10651971399784088, - 0.0637146532535553, - -0.01129967998713255, - 0.014622806571424007, - 0.07740678638219833, - -0.0005111450445838273, - -0.14024436473846436, - -0.08714594691991806, - 0.0643690973520279, - -0.049423135817050934, - -0.026361502707004547, - -0.042946238070726395, - -0.045069437474012375, - 0.07249227166175842, - 0.06336527317762375, - 0.02762836031615734, - 0.01384671963751316, - 0.05033210292458534, - -0.05946294963359833, - 0.053952306509017944, - 0.1397915631532669, - 0.023047752678394318, - -0.0274214930832386, - -0.044140443205833435, - -0.043370265513658524, - 0.04463500529527664, - -0.059287115931510925, - 0.11878107488155365, - 0.026769720017910004, - -0.001993618905544281, - -0.07708421349525452, - 0.12255621701478958, - -0.06935304403305054, - 0.09766803681850433, - 0.07733367383480072, - 0.047418490052223206, - 0.058376822620630264, - -0.0943300724029541, - 0.12575404345989227, - 0.04397275671362877, - -0.03334272652864456, - -0.07298876345157623, - -0.04376649111509323, - -0.03700684756040573, - 0.06267010420560837, - 0.05292423442006111, - -0.029407741501927376, - 0.05177991837263107, - 0.0552787110209465, - -0.009431647136807442, - 0.025952467694878578, - 0.12382227927446365, - 0.0839836448431015, - -0.017081599682569504 - ] - }, - "p244_257.wav": { - "name": "p244", - "embedding": [ - 0.054217152297496796, - 0.06817907840013504, - 0.03713423013687134, - -0.010684062726795673, - 0.01508484035730362, - 0.02617986500263214, - -0.1607087105512619, - 0.0865040272474289, - -0.027016805484890938, - 0.13708442449569702, - -0.10475902259349823, - 0.05688543990254402, - -0.010460307821631432, - -0.18352359533309937, - -0.03182586282491684, - 0.046695150434970856, - -0.04403897002339363, - -0.00015656184405088425, - -0.03932412341237068, - -0.007941464893519878, - 0.01766897365450859, - 0.05982992425560951, - 0.010327210649847984, - -0.03081132099032402, - 0.06301897764205933, - 0.03556942567229271, - 0.026293715462088585, - 0.06525366008281708, - 0.015808887779712677, - -0.007385138422250748, - 0.03630516678094864, - 0.1110234260559082, - -0.015532521530985832, - -0.021643897518515587, - 0.024781692773103714, - 0.03119952790439129, - 0.02551283687353134, - -0.06725099682807922, - -0.0099920853972435, - 0.03957259654998779, - -0.03227991983294487, - 0.059548743069171906, - 0.04365657642483711, - 0.013627806678414345, - 0.022105857729911804, - 0.03285133093595505, - 0.007680032402276993, - -0.07825607061386108, - -0.10873427987098694, - 0.15644240379333496, - 0.031608760356903076, - 0.014791199006140232, - -0.09001362323760986, - -0.06924799084663391, - 0.053502969443798065, - -0.002283245325088501, - -0.05754539743065834, - -0.03387531638145447, - 0.08830463886260986, - 0.15600371360778809, - -0.006379101425409317, - -0.04725562408566475, - 0.031896013766527176, - 0.08861653506755829, - 0.014177089557051659, - 0.08891838043928146, - 0.07531522214412689, - 0.054293036460876465, - 0.02357693575322628, - 0.011974422261118889, - 0.04840375855565071, - 0.02700851298868656, - -0.003739798441529274, - -0.034415025264024734, - 0.023159505799412727, - 0.021604256704449654, - -0.06547054648399353, - 0.023687567561864853, - 0.007296266499906778, - 0.010971713811159134, - 0.019776316359639168, - 0.0020363214425742626, - -0.014962133951485157, - 0.032938964664936066, - -0.0303499773144722, - 0.022993918508291245, - -0.00038847560063004494, - 0.01102515496313572, - 0.0934532880783081, - 0.03400835394859314, - 0.03465603291988373, - 0.026850994676351547, - -0.03414849564433098, - -0.09130959957838058, - 0.010474520735442638, - 0.021718217059969902, - -0.014649230986833572, - 0.030711600556969643, - 0.042217232286930084, - -0.03350149840116501, - 0.11534915864467621, - 0.010818365961313248, - 0.004705140367150307, - 0.005516288802027702, - -0.09385565668344498, - 0.08167917281389236, - 0.09037114679813385, - -0.025205662474036217, - 0.05022481828927994, - -0.0373944453895092, - 0.010105933994054794, - 0.07151336222887039, - -0.13596861064434052, - -0.0687650740146637, - 0.04273831471800804, - 0.015815328806638718, - 0.01326176431030035, - 0.11737816035747528, - -0.003587041050195694, - -0.01472906768321991, - 0.06475979089736938, - -0.06688492745161057, - -0.0668620839715004, - -0.006667150184512138, - 0.060433533042669296, - -0.0788603350520134, - 0.011358421295881271, - 0.06165245175361633, - -0.014212185516953468, - -0.031060297042131424, - 0.06001724302768707, - -0.005857196636497974, - 0.016740523278713226, - -0.05987732112407684, - 0.017589537426829338, - 0.0864129289984703, - -0.04939686134457588, - -0.002140121068805456, - 0.016073305159807205, - 0.0471375435590744, - 0.009931059554219246, - 0.047132834792137146, - -0.07978732883930206, - -0.10603523999452591, - -0.011530506424605846, - 0.03299398720264435, - 0.05002181977033615, - -0.03655140474438667, - -0.015670813620090485, - -0.08277647197246552, - -0.056168489158153534, - 0.02863014116883278, - -0.0033410582691431046, - 0.07885763794183731, - 0.03353947773575783, - -0.043872468173503876, - 0.1273277848958969, - -0.030313070863485336, - 0.021686825901269913, - -0.026045599952340126, - 0.013170342892408371, - 0.015548569150269032, - 0.025662554427981377, - -0.03252416104078293, - -0.06663279980421066, - 0.0026471256278455257, - 0.004096983931958675, - 0.0015172576531767845, - -0.003519449383020401, - 0.01300845481455326, - 0.0012318952940404415, - 0.01108726765960455, - -0.08890679478645325, - 0.024663930758833885, - -0.10311698913574219, - -0.044249389320611954, - 0.010110977105796337, - 0.007091917097568512, - 0.0025250613689422607, - 0.09350241720676422, - 0.014535675756633282, - 0.026898739859461784, - -0.012900945730507374, - -0.09027010202407837, - -0.042928844690322876, - 0.06134141981601715, - 0.1257837563753128, - -0.017717817798256874, - 0.027924351394176483, - 0.018012765794992447, - -0.0049772243946790695, - 0.03948676586151123, - 0.055222801864147186, - 0.07461942732334137, - -0.011198907159268856, - -0.029866714030504227, - -0.050751943141222, - 0.08282352238893509, - 0.035378821194171906, - -0.07516846060752869, - -0.061053477227687836, - 0.012696491554379463, - -0.05744007229804993, - 0.036156993359327316, - 0.007852068170905113, - 0.03852957487106323, - 0.01347978413105011, - -0.0425565168261528, - -0.07943952828645706, - -0.08678993582725525, - 0.016128182411193848, - -0.016244612634181976, - -0.034425437450408936, - -0.06773430109024048, - 0.06063462048768997, - 0.05729877948760986, - 0.05248463153839111, - 0.026279035955667496, - -0.0323423333466053, - -0.015695445239543915, - -0.07194054871797562, - -0.054092179983854294, - 0.0022027073428034782, - -0.03613854572176933, - -0.09956088662147522, - 0.024854637682437897, - -0.06626009941101074, - 0.10389111936092377, - -0.056514859199523926, - 0.10046537220478058, - 0.018408868461847305, - -0.07223938405513763, - -0.099718376994133, - -0.0012365737929940224, - -0.019542958587408066, - 0.05479367822408676, - 0.037622544914484024, - 0.013263262808322906, - 0.05212530121207237, - -0.048746272921562195, - 0.05929608270525932, - 0.020935308188199997, - 0.010361323133111, - -0.06887972354888916, - -0.034353163093328476, - -0.011098933406174183, - 0.03636820986866951, - -0.01962437480688095, - -0.049291301518678665, - 0.014690026640892029, - 0.02708308771252632, - -0.03550346940755844, - 0.05014926195144653, - 0.07363013178110123, - 0.03114086017012596, - -0.1266014575958252 - ] - }, - "p244_243.wav": { - "name": "p244", - "embedding": [ - 0.0496537983417511, - 0.07148614525794983, - 0.021776840090751648, - -0.04420365393161774, - -0.01760343834757805, - 0.10234972089529037, - -0.057350486516952515, - 0.055450133979320526, - -0.026158912107348442, - 0.04957691580057144, - -0.09098969399929047, - 0.018589302897453308, - 0.013466292060911655, - -0.13033759593963623, - -0.006506165489554405, - 0.017749708145856857, - -0.04192372038960457, - 0.022413771599531174, - -0.03578998148441315, - -0.03640943393111229, - 0.0020634308457374573, - 0.009275656193494797, - 0.05191638693213463, - -0.03734276816248894, - 0.046207915991544724, - 0.05116480216383934, - 0.03750753402709961, - 0.03076435811817646, - -0.008631564676761627, - -0.0362841933965683, - -0.04665122553706169, - 0.07105650007724762, - -0.048958275467157364, - -0.02607041411101818, - 0.06438344717025757, - -0.03418348729610443, - 0.053798459470272064, - -0.08436086773872375, - -0.035632822662591934, - 0.04042034223675728, - -0.06375569105148315, - 0.0798109918832779, - 0.028169002383947372, - 0.03995240479707718, - -0.0016235699877142906, - 0.02437409944832325, - 0.013301012106239796, - -0.04227359965443611, - -0.0427711196243763, - 0.125056654214859, - 0.04826640710234642, - 0.0048364270478487015, - -0.04363624006509781, - -0.022009389474987984, - 0.07150287926197052, - -0.011498454958200455, - -0.03685254231095314, - -0.0005462775006890297, - 0.03539516404271126, - 0.04325321316719055, - 0.00407005287706852, - -0.029902592301368713, - 0.04099159687757492, - 0.0728224515914917, - -0.01900591515004635, - 0.05258384346961975, - 0.07483074814081192, - 0.06308706849813461, - 0.012157123535871506, - 0.01546664908528328, - 0.05176263302564621, - 0.031836096197366714, - 0.03280312940478325, - -0.05306887626647949, - 0.0751296803355217, - 0.007853830233216286, - -0.03479786962270737, - -0.0008172448724508286, - -0.019581403583288193, - 0.0011207624338567257, - 0.058312512934207916, - 0.02676708996295929, - 0.00859091803431511, - 0.0021422291174530983, - -0.044636260718107224, - 0.03409015014767647, - -0.032026100903749466, - 0.11473701894283295, - 0.06617042422294617, - 0.015520346350967884, - 0.04059837386012077, - 0.005340930074453354, - -0.035301968455314636, - -0.0752391442656517, - 0.05727509781718254, - 0.043912678956985474, - -0.026067981496453285, - 0.019499771296977997, - 0.060590069741010666, - -0.046020012348890305, - 0.08839106559753418, - 0.013256851583719254, - -0.01371961459517479, - 0.026423536241054535, - -0.04773329570889473, - 0.04620172828435898, - 0.06265450268983841, - -0.015434358268976212, - 0.05078808590769768, - -0.030986063182353973, - 0.0565127395093441, - 0.061163291335105896, - -0.09150287508964539, - -0.04668935388326645, - -0.008939883671700954, - -0.02446798048913479, - 0.025457177311182022, - 0.09199629724025726, - -0.0632307156920433, - -0.003209749236702919, - 0.03623364865779877, - -0.04287661612033844, - -0.024834370240569115, - 0.028979206457734108, - -0.015589846298098564, - -0.016861289739608765, - -0.024578209966421127, - 0.011902537196874619, - 0.02433544024825096, - -0.06909365952014923, - 0.036940060555934906, - 0.008511897176504135, - 0.021490387618541718, - -0.03275580704212189, - 0.015811150893568993, - 0.006363799795508385, - -0.013089841231703758, - -0.05089762806892395, - 0.012664316222071648, - 0.040065620094537735, - 0.0045433808118104935, - 0.018461642786860466, - -0.011409259401261806, - -0.08628358691930771, - -0.028506871312856674, - -0.043545424938201904, - 0.014133861288428307, - 0.014757659286260605, - -0.007810079492628574, - -0.05664723739027977, - 0.005982495844364166, - -0.031260378658771515, - -0.03412795811891556, - 0.005835369229316711, - 0.08807926625013351, - -0.07623422890901566, - 0.06397680193185806, - -0.008761722594499588, - -0.0024147694930434227, - -0.02402361109852791, - -0.039437536150217056, - 0.038130760192871094, - 0.03420870006084442, - 0.01828708127140999, - -0.08088166266679764, - 0.008070899173617363, - -0.058747030794620514, - -0.016414711251854897, - 0.007791649550199509, - 0.03728866949677467, - 0.011414555832743645, - -0.03592882305383682, - -0.10362247377634048, - 0.008158802054822445, - -0.059648364782333374, - -0.03001588210463524, - 0.05846205726265907, - 0.03796972706913948, - -0.029759153723716736, - 0.08839068561792374, - 0.015214415267109871, - 0.01153050921857357, - -0.044976428151130676, - -0.04810979217290878, - 0.02229764312505722, - 0.049450017511844635, - 0.05249151960015297, - 0.010856163688004017, - 0.02078171819448471, - 0.019478069618344307, - -0.013212203048169613, - 0.019681233912706375, - 0.05850540101528168, - 0.040312185883522034, - 0.012158304452896118, - 0.018736816942691803, - 0.033820632845163345, - 0.0789564847946167, - -0.03840504586696625, - -0.05302596464753151, - -0.011583568528294563, - 0.03829023614525795, - -0.030618302524089813, - 0.03171209990978241, - 0.03412092849612236, - 0.029437704011797905, - 0.01697186566889286, - -0.0162479430437088, - -0.019336581230163574, - -0.04806980863213539, - 0.04005665332078934, - -0.05400575324892998, - -0.053565315902233124, - -0.04512491077184677, - 0.06284303963184357, - 0.09372460842132568, - 0.003204282373189926, - -0.010787910781800747, - 0.007113994099199772, - 0.024702662602066994, - 0.002831178717315197, - -0.04153360798954964, - -0.005381220951676369, - 0.0162077397108078, - -0.06178746744990349, - 0.03063601441681385, - -0.07237537205219269, - 0.0566478967666626, - 0.0004073847085237503, - 0.04033561423420906, - 0.034208349883556366, - -0.03643691539764404, - -0.06485859304666519, - 0.00234314426779747, - 0.023937370628118515, - 0.01727699488401413, - 0.015712106600403786, - 0.0025768503546714783, - 0.02442970499396324, - -0.05173017829656601, - 0.06560733914375305, - 0.018253043293952942, - -0.062135741114616394, - -0.06955192238092422, - 0.019178681075572968, - -0.009437156841158867, - -0.0030983006581664085, - -0.017779942601919174, - -0.06672994792461395, - 0.031055737286806107, - 0.044334687292575836, - 0.007163724862039089, - -0.003793437033891678, - 0.04955937713384628, - 0.016003098338842392, - -0.03738771751523018 - ] - }, - "p244_314.wav": { - "name": "p244", - "embedding": [ - 0.058189090341329575, - 0.08328896015882492, - -0.019870830699801445, - 0.04033106565475464, - -0.05518024414777756, - 0.05683111771941185, - -0.14662623405456543, - 0.15226973593235016, - -0.017862394452095032, - 0.12585902214050293, - -0.04486176371574402, - 0.11680450290441513, - -0.0017784859519451857, - -0.18154475092887878, - -0.014797395095229149, - 0.05158832296729088, - -0.03777815029025078, - -0.03121890127658844, - -0.036893799901008606, - -0.019995711743831635, - 0.027361994609236717, - 0.04641467332839966, - 0.03780312463641167, - -0.011549239978194237, - 0.033320337533950806, - 0.06110489368438721, - -0.006291741039603949, - 0.04302414506673813, - 0.00817878358066082, - -0.05899279564619064, - -0.032528720796108246, - 0.09335144609212875, - -0.06489218771457672, - 0.0038668960332870483, - 0.04622727259993553, - -0.03809979557991028, - -0.020089540630578995, - -0.06341849267482758, - -0.026350483298301697, - 0.008132942020893097, - -0.03756358474493027, - 0.08730803430080414, - 0.04473651200532913, - -0.009048603475093842, - 0.04271477460861206, - 0.01764708012342453, - -0.014358106069266796, - -0.0492914542555809, - -0.11002098023891449, - 0.15273647010326385, - 0.07353895902633667, - 0.0044957115314900875, - -0.07629137486219406, - -0.04969843477010727, - 0.09433846175670624, - -0.012889936566352844, - -0.10728929936885834, - -0.04489409178495407, - 0.07027588039636612, - 0.14630010724067688, - -0.02927815169095993, - -0.028377022594213486, - 0.03878505155444145, - 0.11661815643310547, - 0.0734134167432785, - 0.0770699605345726, - 0.08848022669553757, - 0.1081513911485672, - -0.02446851134300232, - 0.027669355273246765, - 0.03946433216333389, - 0.06152413412928581, - 0.027478236705064774, - -0.006568976677954197, - 0.017857316881418228, - -0.013308866880834103, - -0.022153761237859726, - -0.035098083317279816, - -0.016449620947241783, - -0.007675682660192251, - -0.009231727570295334, - 0.013680900447070599, - 0.01681022346019745, - 0.05187910050153732, - -0.033181335777044296, - 0.058382004499435425, - 0.031433332711458206, - -0.020052604377269745, - 0.07001323252916336, - 0.017471078783273697, - 0.015135802328586578, - 0.05827289819717407, - -0.09021304547786713, - -0.07201912254095078, - 0.027981897816061974, - 0.008285891264677048, - 0.019174732267856598, - 0.0709538534283638, - 0.0399681031703949, - -0.019897790625691414, - 0.12926897406578064, - 0.049333423376083374, - -0.02260538749396801, - 0.021187951788306236, - -0.07937096059322357, - 0.12588301301002502, - 0.06677859276533127, - -0.018462661653757095, - 0.06658520549535751, - -0.0637638121843338, - 0.059569936245679855, - 0.04461345076560974, - -0.1420869529247284, - -0.06438659131526947, - 0.04538906738162041, - 0.024091191589832306, - -0.020170483738183975, - 0.14517489075660706, - 0.008319725282490253, - 0.05785977467894554, - 0.09981721639633179, - -0.08425429463386536, - -0.05074786767363548, - -0.0065811555832624435, - 0.0756840705871582, - -0.08425749838352203, - 0.057109665125608444, - 0.05769902467727661, - -0.03566598519682884, - 0.019076049327850342, - 0.07852409034967422, - -0.0024287491105496883, - 0.001566002145409584, - 0.020290274173021317, - -0.03629479557275772, - 0.03554604947566986, - -0.02274053357541561, - 0.00030595375574193895, - 0.020214663818478584, - 0.019848506897687912, - 0.05514785274863243, - -0.01920432038605213, - -0.033546604216098785, - -0.11244093626737595, - 0.012729580514132977, - 0.014519269578158855, - 0.09060710668563843, - -0.016394881531596184, - -0.025541752576828003, - -0.04367658495903015, - -0.06002841517329216, - 0.005690529011189938, - -0.005733620375394821, - 0.06822238862514496, - -0.02594325691461563, - 0.009213937446475029, - 0.09218312799930573, - 0.04258815944194794, - 0.012296490371227264, - -0.038743309676647186, - -0.028646690770983696, - 0.008165912702679634, - 0.06090899556875229, - -0.07143577933311462, - -0.05946118384599686, - -0.004967029672116041, - 0.028952833265066147, - -0.023998720571398735, - 0.05868818610906601, - 0.044262226670980453, - 0.029638690873980522, - 0.017709076404571533, - -0.0644371509552002, - 0.01606839708983898, - -0.08243139088153839, - -0.06460702419281006, - -0.011517878621816635, - 0.003940228838473558, - -0.05052667111158371, - 0.08392050862312317, - 0.03881645202636719, - 0.0732821524143219, - -0.014804787933826447, - -0.054264187812805176, - -0.07968159019947052, - 0.04153744876384735, - 0.060080237686634064, - -0.03577987104654312, - 0.02996356412768364, - 0.05711451917886734, - -0.030609674751758575, - 0.03967222571372986, - 0.06678580492734909, - 0.07600799947977066, - -0.026193827390670776, - 0.006314205937087536, - -0.07750841230154037, - 0.08896313607692719, - 0.09156018495559692, - -0.09196722507476807, - -0.07050235569477081, - -0.01968182437121868, - -0.07564805448055267, - 0.02069227211177349, - -0.017966702580451965, - 0.01135404221713543, - 0.03758442401885986, - 0.0012297378852963448, - -0.10626548528671265, - -0.09850363433361053, - 0.08135496824979782, - -0.08703020215034485, - 0.008375107310712337, - -0.08168002218008041, - 0.03508300334215164, - 0.10222812741994858, - 0.03336772322654724, - -0.016128789633512497, - -0.039159901440143585, - 0.04077637940645218, - -0.01705327443778515, - 0.023092731833457947, - 0.07385499775409698, - 0.04902614280581474, - -0.12242518365383148, - 0.003336608875542879, - -0.054648544639348984, - 0.04984314367175102, - -0.04390290379524231, - 0.14673185348510742, - 0.027665581554174423, - -0.04729912430047989, - -0.09152021259069443, - 0.040928665548563004, - -0.024485599249601364, - 0.05533696338534355, - 0.018295910209417343, - 0.060188330709934235, - 0.05471951887011528, - -0.06382420659065247, - 0.10541071742773056, - 0.0420050248503685, - -0.040507327765226364, - -0.07317264378070831, - -0.05019377917051315, - -0.033423732966184616, - 0.03914516419172287, - 0.02516632340848446, - -0.09057886898517609, - -0.02471725456416607, - 0.026833143085241318, - -0.015160108916461468, - 0.06940527260303497, - 0.13769495487213135, - 0.06705563515424728, - -0.1282826066017151 - ] - }, - "p244_084.wav": { - "name": "p244", - "embedding": [ - 0.051604341715574265, - 0.09811769425868988, - -0.014263994991779327, - 0.0610053651034832, - -0.0416816845536232, - 0.08750665187835693, - -0.12090042233467102, - 0.12208235263824463, - -0.03654148057103157, - 0.14760874211788177, - -0.07977951318025589, - 0.11291170120239258, - -0.02385380119085312, - -0.1708386391401291, - -0.02671956829726696, - 0.05178339406847954, - -0.026934895664453506, - 0.00409318134188652, - -0.02340730093419552, - 0.0346224382519722, - 0.03688936308026314, - 0.018883828073740005, - 0.0432685948908329, - -0.025522038340568542, - 0.017313934862613678, - 0.04718276485800743, - 0.010341386310756207, - 0.07456313073635101, - 0.039054397493600845, - -0.05054716020822525, - -0.04417014122009277, - 0.14093933999538422, - -0.0545610673725605, - 0.032919444143772125, - 0.0736430212855339, - 0.001354882726445794, - -0.0376882366836071, - -0.04634205996990204, - 0.019827060401439667, - -0.026523705571889877, - -0.04861428216099739, - 0.06439264863729477, - 0.02031162567436695, - -0.008433395996689796, - 0.05738072469830513, - 0.014285392127931118, - -0.03192329779267311, - -0.03650354593992233, - -0.0944942757487297, - 0.1373983472585678, - 0.06005046144127846, - -0.010155048221349716, - -0.059394270181655884, - -0.06725683808326721, - 0.07570242136716843, - 0.011265772394835949, - -0.11842174082994461, - -0.06226905807852745, - 0.08579135686159134, - 0.14969249069690704, - 0.002429233631119132, - -0.020549530163407326, - 0.0024186880327761173, - 0.11962328106164932, - 0.0493924543261528, - 0.13044627010822296, - 0.056852683424949646, - 0.10640191286802292, - 0.022912979125976562, - 0.07021445035934448, - 0.05065598338842392, - 0.04676847159862518, - 0.03733495622873306, - -0.012725704349577427, - 0.03820490837097168, - -0.019375376403331757, - -0.013355287723243237, - 0.02856229618191719, - -0.00545619847252965, - -0.02089039795100689, - -0.006917298771440983, - -0.0023123316932469606, - 0.006824534386396408, - 0.015750303864479065, - -0.02445332705974579, - 0.05177246406674385, - 0.024833135306835175, - -0.0024375231005251408, - 0.05845513567328453, - 0.04720700904726982, - -0.004579523578286171, - 0.048411156982183456, - -0.07170287519693375, - -0.10785875469446182, - 0.02008138969540596, - -0.0035158831160515547, - 0.022593645378947258, - 0.07504834234714508, - 0.020558828487992287, - -0.0062482766807079315, - 0.08665294200181961, - 0.046918921172618866, - 0.002952472073957324, - 0.05231308937072754, - -0.09236903488636017, - 0.13568313419818878, - 0.05673353374004364, - -0.002633399562910199, - 0.05058702081441879, - -0.05336853116750717, - 0.09097936749458313, - 0.08665481209754944, - -0.13190144300460815, - -0.05041259527206421, - 0.02217324823141098, - -0.02286217175424099, - -0.029726730659604073, - 0.11200840026140213, - 0.004216296132653952, - 0.00020546141604427248, - 0.10521154850721359, - -0.10657675564289093, - -0.07603424042463303, - -0.028257951140403748, - 0.04241570830345154, - -0.1027575209736824, - 0.056877363473176956, - 0.01674332097172737, - -0.020381741225719452, - -0.02296331711113453, - 0.09616480767726898, - -0.015201859176158905, - 0.017796436324715614, - 0.039782628417015076, - -0.05108533799648285, - 0.037633053958415985, - -0.055824849754571915, - 0.02805270068347454, - 0.04100172221660614, - 0.013236277736723423, - 0.06155730411410332, - -0.009169825352728367, - -0.009187893010675907, - -0.09479092806577682, - -0.0055715106427669525, - 0.07103476673364639, - 0.05320173129439354, - -0.012456915341317654, - -0.03242434561252594, - -0.028705483302474022, - -0.07609817385673523, - 0.05597716569900513, - -0.02447592467069626, - 0.06675741076469421, - 0.006179492454975843, - -0.017926599830389023, - 0.09886594116687775, - 0.000275897269602865, - 0.013314693234860897, - -0.08470045775175095, - -0.038066793233156204, - 0.03989410772919655, - 0.05198024585843086, - -0.1146978810429573, - -0.054715439677238464, - 0.011165555566549301, - -0.0004064561799168587, - -0.02484569512307644, - 0.016470544040203094, - 0.06268839538097382, - 0.023333106189966202, - 0.03522251173853874, - -0.057563938200473785, - -0.007925435900688171, - -0.10611504316329956, - -0.07634145766496658, - -0.03927495330572128, - -0.031650058925151825, - -0.008765924721956253, - 0.07862423360347748, - 0.00533115491271019, - 0.023257698863744736, - 0.0031812211964279413, - -0.049759391695261, - -0.08077029883861542, - 0.07584704458713531, - 0.06460115313529968, - 0.013984402641654015, - 0.07015544921159744, - 0.024263303726911545, - -0.059308186173439026, - 0.04224339872598648, - 0.03889017552137375, - 0.1080479845404625, - -0.02980426885187626, - -0.0014536608941853046, - -0.10237404704093933, - 0.07834376394748688, - 0.12810739874839783, - -0.10312961786985397, - -0.09728986769914627, - -0.008417700417339802, - -0.06349428743124008, - 0.03650590032339096, - -0.06534174829721451, - -0.022363172844052315, - 0.048402391374111176, - -0.03054070472717285, - -0.0976184755563736, - -0.11152041703462601, - 0.09158995002508163, - -0.08530271798372269, - -0.028057396411895752, - -0.07118166983127594, - 0.05288759246468544, - 0.05012667179107666, - 0.03095475398004055, - -0.06199873983860016, - 0.013133074156939983, - 0.07272883504629135, - -0.061854228377342224, - -0.009538339450955391, - 0.042992960661649704, - 0.01094140112400055, - -0.09632518142461777, - 0.014837837778031826, - -0.059064172208309174, - 0.049364279955625534, - -0.09104690700769424, - 0.16856735944747925, - -0.036067042499780655, - -0.06645169109106064, - -0.06130995973944664, - 0.05301263928413391, - -0.008653507567942142, - 0.00774807995185256, - 0.04118992015719414, - 0.05217945948243141, - 0.010038829408586025, - -0.0882728099822998, - 0.1309017390012741, - 0.0032823383808135986, - 0.004697061609476805, - -0.06261685490608215, - -0.03354364633560181, - -0.07051791995763779, - 0.039884086698293686, - 0.0049809785559773445, - -0.11908350884914398, - -0.0051313587464392185, - 0.04084852710366249, - -0.010133069939911366, - 0.04241776093840599, - 0.14744196832180023, - 0.03705946356058121, - -0.09257277101278305 - ] - }, - "p244_381.wav": { - "name": "p244", - "embedding": [ - 0.04341677948832512, - 0.1073475107550621, - -0.008771320804953575, - 0.025793597102165222, - -0.06034603342413902, - 0.05284808203577995, - -0.12969771027565002, - 0.15179681777954102, - -0.03252333030104637, - 0.13070034980773926, - -0.07093685865402222, - 0.12346307933330536, - -0.02149377390742302, - -0.1783321499824524, - -0.029719378799200058, - 0.05239094793796539, - -0.042203910648822784, - -0.023475302383303642, - -0.03338625654578209, - -0.02097449079155922, - 0.04296841844916344, - 0.04079088196158409, - 0.03570307791233063, - 0.006935593672096729, - 0.019928239285945892, - 0.06358444690704346, - 0.012185068801045418, - 0.05421772599220276, - 0.024306144565343857, - -0.05819404125213623, - -0.044390082359313965, - 0.10158322751522064, - -0.03824760019779205, - 0.016141919419169426, - 0.05444764718413353, - -0.028317561373114586, - 0.0009654347086325288, - -0.05414428561925888, - -0.018788300454616547, - 0.010425617918372154, - -0.03227647393941879, - 0.07732071727514267, - 0.033353567123413086, - -0.006563347764313221, - 0.04413064569234848, - 0.03297431766986847, - -0.01601649448275566, - -0.04956702142953873, - -0.10220091789960861, - 0.16640128195285797, - 0.08102753013372421, - -0.01479036919772625, - -0.061633482575416565, - -0.06500162929296494, - 0.09764530509710312, - -0.019478721544146538, - -0.11207052320241928, - -0.03911671042442322, - 0.08399231731891632, - 0.14033445715904236, - -0.020377619192004204, - -0.03329949826002121, - 0.032989464700222015, - 0.1351226419210434, - 0.03600941225886345, - 0.08121860027313232, - 0.07209289073944092, - 0.09634991735219955, - -0.03067067079246044, - 0.02809285745024681, - 0.036013782024383545, - 0.06857641786336899, - 0.024744777008891106, - -0.0057105920277535915, - 0.023424573242664337, - -0.013522958382964134, - -0.013475018553435802, - 0.0030408918391913176, - -0.02372049167752266, - -0.017203763127326965, - -0.023289095610380173, - 0.020534060895442963, - -0.004774767439812422, - 0.014394199475646019, - -0.021375581622123718, - 0.07199624180793762, - 0.01304722111672163, - 0.0014974919613450766, - 0.07224538922309875, - 0.030003635212779045, - 0.021132756024599075, - 0.05846944451332092, - -0.06949639320373535, - -0.08348613232374191, - 0.025071745738387108, - 0.002429547719657421, - 0.025900837033987045, - 0.07609982788562775, - 0.028654366731643677, - -0.018264619633555412, - 0.1265159696340561, - 0.06027061864733696, - -0.017972778528928757, - 0.025379231199622154, - -0.0926315188407898, - 0.13038262724876404, - 0.07949034869670868, - -0.01922530308365822, - 0.05550000071525574, - -0.05309709161520004, - 0.07634508609771729, - 0.048877447843551636, - -0.13367250561714172, - -0.07862475514411926, - 0.02520143985748291, - 0.02739669941365719, - -0.021427828818559647, - 0.11429973691701889, - -0.006505858153104782, - 0.04265352711081505, - 0.10180032253265381, - -0.07890903949737549, - -0.056678272783756256, - -0.021216150373220444, - 0.05551435053348541, - -0.08390554040670395, - 0.057996638119220734, - 0.06116005405783653, - -0.02618424966931343, - 0.014149047434329987, - 0.07943625003099442, - -0.00888913869857788, - 0.009824625216424465, - 0.024802178144454956, - -0.05356365442276001, - 0.013201368972659111, - -0.03795601427555084, - 0.003438686951994896, - 0.023607995361089706, - 0.04340258240699768, - 0.04475387558341026, - -0.005942606832832098, - -0.03690020367503166, - -0.11095878481864929, - 0.01246271189302206, - 0.023430785164237022, - 0.06750155240297318, - -0.0032700037118047476, - -0.03140381723642349, - -0.03426390513777733, - -0.05181468650698662, - -0.004592780023813248, - -0.004905383102595806, - 0.06533487141132355, - -0.03434694558382034, - 0.00934026949107647, - 0.0926489531993866, - 0.03468146175146103, - -0.006690116599202156, - -0.05517193675041199, - -0.03978569060564041, - 0.015130773186683655, - 0.04002753272652626, - -0.07221086323261261, - -0.0672585517168045, - -0.006059734150767326, - 0.034211110323667526, - -0.016887914389371872, - 0.05225538834929466, - 0.046110399067401886, - 0.01715187355875969, - 0.03540686517953873, - -0.06373138725757599, - 0.021797746419906616, - -0.09525369107723236, - -0.07104472070932388, - -0.016137883067131042, - -0.00022903134231455624, - -0.028076112270355225, - 0.07450765371322632, - 0.02187679521739483, - 0.05859164148569107, - 0.0001997953950194642, - -0.05988259240984917, - -0.07644517719745636, - 0.05538828298449516, - 0.07648622989654541, - -0.0015153571730479598, - 0.060034848749637604, - 0.05793853849172592, - -0.03835876286029816, - 0.06262432038784027, - 0.05504261702299118, - 0.09003640711307526, - -0.022267840802669525, - 0.01021746639162302, - -0.07668166607618332, - 0.06484633684158325, - 0.08177302032709122, - -0.10056883096694946, - -0.08299553394317627, - -0.03199594467878342, - -0.0659000426530838, - 0.037376366555690765, - -0.015332475304603577, - 0.004760111216455698, - 0.034978121519088745, - 0.0030747801065444946, - -0.09585627168416977, - -0.0832873210310936, - 0.08112706243991852, - -0.07522360235452652, - 0.0017717391019687057, - -0.06651327013969421, - 0.04485924169421196, - 0.11069697141647339, - 0.03757959231734276, - -0.030086612328886986, - -0.03303404897451401, - 0.05046907067298889, - -0.03137282282114029, - 0.00520274369046092, - 0.039818476885557175, - 0.04454108700156212, - -0.10190726816654205, - 0.024199089035391808, - -0.07636377215385437, - 0.04972470551729202, - -0.05510641634464264, - 0.1527385711669922, - 0.016285350546240807, - -0.05682217329740524, - -0.08974766731262207, - 0.04562423378229141, - -0.03084569051861763, - 0.04445897042751312, - 0.019047817215323448, - 0.047827742993831635, - 0.03978996351361275, - -0.07643681764602661, - 0.12102888524532318, - 0.0374063216149807, - -0.0512007437646389, - -0.06802412867546082, - -0.039206959307193756, - -0.0369035080075264, - 0.032420527189970016, - 0.030841780826449394, - -0.08794756978750229, - -0.04251791536808014, - 0.016675978899002075, - -0.016585037112236023, - 0.08672520518302917, - 0.14482924342155457, - 0.05615047737956047, - -0.12799817323684692 - ] - }, - "p244_213.wav": { - "name": "p244", - "embedding": [ - 0.06063387542963028, - 0.09088286012411118, - -0.02059152163565159, - 0.032020073384046555, - -0.05988572537899017, - 0.0723220556974411, - -0.12940607964992523, - 0.12636318802833557, - -0.045298121869564056, - 0.14331963658332825, - -0.07684795558452606, - 0.12841464579105377, - -0.012536706402897835, - -0.1828201413154602, - -0.044974327087402344, - 0.051794108003377914, - -0.04740993306040764, - -0.041843660175800323, - -0.02893747203052044, - -0.02371636964380741, - 0.045474354177713394, - 0.03983817994594574, - 0.021494602784514427, - 0.026943404227495193, - 0.019927185028791428, - 0.07009950280189514, - -0.016969742253422737, - 0.030348345637321472, - 0.007913130335509777, - -0.05619708448648453, - -0.04856492951512337, - 0.11403857171535492, - -0.04882218688726425, - 0.02130783721804619, - 0.04543076828122139, - -0.002714884001761675, - 0.0006889792857691646, - -0.07370182126760483, - -0.024890892207622528, - -0.005919487681239843, - -0.04606601595878601, - 0.07007649540901184, - 0.030724164098501205, - -0.018031666055321693, - 0.03520209714770317, - 0.012746227905154228, - -0.016881104558706284, - -0.049773335456848145, - -0.0956871286034584, - 0.15483318269252777, - 0.06869284808635712, - -0.0011774423765018582, - -0.0601097047328949, - -0.05916410684585571, - 0.10911138355731964, - -0.015386508777737617, - -0.11659061163663864, - -0.027826296165585518, - 0.08022873848676682, - 0.165179044008255, - -0.036213479936122894, - -0.03594476357102394, - 0.02946079894900322, - 0.1263713389635086, - 0.05523587018251419, - 0.09272502362728119, - 0.08768778294324875, - 0.11858895421028137, - -0.020024627447128296, - 0.008001770824193954, - 0.06450255215167999, - 0.07732878625392914, - 0.07727347314357758, - -0.024613752961158752, - 0.025937147438526154, - 0.000599780585616827, - -0.020001614466309547, - -0.001691059791482985, - -0.03903985023498535, - -0.013570407405495644, - -0.020673740655183792, - -0.006278165150433779, - 0.008135601878166199, - 0.0234671700745821, - -0.0320683978497982, - 0.05334707722067833, - 0.048380665481090546, - -0.022934040054678917, - 0.059396419674158096, - 0.04593002051115036, - 0.013499906286597252, - 0.06337950378656387, - -0.08464644849300385, - -0.08219234645366669, - 0.04468477889895439, - 0.011790798977017403, - 0.022599758580327034, - 0.08553504943847656, - 0.048905011266469955, - -0.019148368388414383, - 0.1093948557972908, - 0.044121526181697845, - -0.0097575131803751, - 0.015011338517069817, - -0.09894067049026489, - 0.13299092650413513, - 0.09569236636161804, - -0.032668206840753555, - 0.03816305845975876, - -0.050188012421131134, - 0.08525186777114868, - 0.0781351774930954, - -0.14882831275463104, - -0.06755466014146805, - 0.03740571439266205, - 0.014290702529251575, - -0.0098529988899827, - 0.10992084443569183, - -0.007624533027410507, - 0.036408040672540665, - 0.09409704059362411, - -0.07637786865234375, - -0.052537258714437485, - -0.034368086606264114, - 0.04037864878773689, - -0.09293404221534729, - 0.06529705226421356, - 0.04387310892343521, - 7.978349458426237e-06, - 0.0015003073494881392, - 0.0818190947175026, - -0.015662573277950287, - -0.02210635133087635, - 0.014920007437467575, - -0.04609011486172676, - 0.01984061487019062, - -0.018978284671902657, - 0.006479289848357439, - 0.03024590015411377, - 0.02935195341706276, - 0.03965607285499573, - -0.01035943441092968, - -0.021309878677129745, - -0.11072330176830292, - 0.02414010278880596, - 0.033938195556402206, - 0.08211563527584076, - -0.0038225895259529352, - -0.026569539681077003, - -0.03467546030879021, - -0.06863697618246078, - 0.02942180633544922, - -0.0234998669475317, - 0.06906381249427795, - -0.009515669196844101, - 0.009773293510079384, - 0.09443320333957672, - 0.028624791651964188, - -0.005111118778586388, - -0.051091037690639496, - -0.021682217717170715, - 0.019416645169258118, - 0.06139908358454704, - -0.08284991979598999, - -0.07208112627267838, - -0.0005695982254110277, - 0.025722220540046692, - -0.02664319798350334, - 0.05433739349246025, - 0.04429156333208084, - 0.015179401263594627, - 0.02893536165356636, - -0.0710892453789711, - 0.006091423332691193, - -0.11605669558048248, - -0.06645922362804413, - -0.016112936660647392, - -0.02972782775759697, - -0.005067059304565191, - 0.0714607834815979, - 0.023215025663375854, - 0.03936361148953438, - -0.02654155343770981, - -0.07252992689609528, - -0.07677987217903137, - 0.06006006896495819, - 0.06129022315144539, - 0.007644683122634888, - 0.035955075174570084, - 0.05441352725028992, - -0.022394627332687378, - 0.05596000701189041, - 0.06422705948352814, - 0.10887253284454346, - -0.029055092483758926, - 0.02862909436225891, - -0.06333247572183609, - 0.09343652427196503, - 0.08779172599315643, - -0.08787742257118225, - -0.0927564799785614, - -0.031325407326221466, - -0.05740939825773239, - 0.03480291739106178, - -0.03157632425427437, - -0.0014722924679517746, - 0.024180792272090912, - -0.008458137512207031, - -0.10711413621902466, - -0.08941973745822906, - 0.09954413771629333, - -0.07037326693534851, - -0.00012685442925430834, - -0.09443262219429016, - 0.050966449081897736, - 0.09769462049007416, - 0.029412291944026947, - -0.0374615453183651, - 0.007662616670131683, - 0.04703688994050026, - -0.041162941604852676, - 0.0004979684017598629, - 0.04832858592271805, - 0.03411160409450531, - -0.12340855598449707, - -0.008817218244075775, - -0.0711788758635521, - 0.05617929995059967, - -0.057425230741500854, - 0.16144156455993652, - 0.003938300535082817, - -0.05674717202782631, - -0.0717567503452301, - 0.05079909786581993, - -0.010037404485046864, - 0.05019071698188782, - 0.04167948290705681, - 0.07027153670787811, - 0.023701779544353485, - -0.07378491014242172, - 0.11376636475324631, - 0.047560617327690125, - -0.0373103991150856, - -0.07237299531698227, - -0.04365935176610947, - -0.041462577879428864, - 0.024233229458332062, - 0.009656170383095741, - -0.09177235513925552, - -0.01771819218993187, - 0.026168525218963623, - -0.013938544318079948, - 0.07142147421836853, - 0.14851415157318115, - 0.0678894966840744, - -0.11533859372138977 - ] - }, - "p244_199.wav": { - "name": "p244", - "embedding": [ - 0.0515253059566021, - 0.0781516581773758, - 0.015591202303767204, - -0.005454557947814465, - -0.03741706162691116, - 0.09951154887676239, - -0.07629392296075821, - 0.08876053988933563, - -0.013808196410536766, - 0.055125392973423004, - -0.06339573860168457, - 0.07058443129062653, - -0.002876791637390852, - -0.15375757217407227, - -0.02818797528743744, - 0.054943330585956573, - -0.052403684705495834, - -0.007417659275233746, - -0.037122081965208054, - -0.022135278210043907, - -0.0006558820605278015, - 0.017426174134016037, - 0.05053384602069855, - 0.00025323405861854553, - 0.04605891928076744, - 0.03659071773290634, - 0.005085747689008713, - 0.03032520040869713, - 0.0009314244380220771, - -0.029023315757513046, - -0.037253063172101974, - 0.0771118551492691, - -0.04358398914337158, - -0.001609722850844264, - 0.051771130412817, - -0.0059588197618722916, - 0.04467284679412842, - -0.09088999032974243, - -0.040643706917762756, - 0.030002977699041367, - -0.057238172739744186, - 0.08236318826675415, - 0.06345027685165405, - 0.013683294877409935, - 0.03155011683702469, - 0.013654729351401329, - -0.013940221630036831, - -0.047814320772886276, - -0.09062564373016357, - 0.14417046308517456, - 0.030901728197932243, - 0.016144953668117523, - -0.0670660138130188, - -0.037469156086444855, - 0.08255068957805634, - -0.01054874062538147, - -0.06896492838859558, - -0.016996651887893677, - 0.060067903250455856, - 0.09527142345905304, - 0.025904245674610138, - -0.013279530219733715, - 0.017953775823116302, - 0.08883076906204224, - 0.014384515583515167, - 0.04394923895597458, - 0.07358303666114807, - 0.0882086306810379, - 0.010242545045912266, - 0.016005199402570724, - 0.06312528252601624, - 0.030802391469478607, - 0.017024725675582886, - -0.018670205026865005, - 0.02225683629512787, - -0.012782796286046505, - -0.01938924752175808, - -0.004006456583738327, - -0.01123197190463543, - 0.00039204536005854607, - 0.025888491421937943, - 0.02536902390420437, - 0.014358571730554104, - 0.028790762647986412, - -0.032772935926914215, - 0.0362735390663147, - -0.01699935644865036, - 0.07525705546140671, - 0.07198284566402435, - 0.0420040488243103, - 0.0051080710254609585, - 0.02759743109345436, - -0.03666677698493004, - -0.0857694074511528, - 0.006321651395410299, - 0.029647931456565857, - 0.0049115633592009544, - 0.02932656928896904, - 0.015420947223901749, - -0.03279978036880493, - 0.09893001616001129, - 0.027584057301282883, - -0.009622467681765556, - 0.016130313277244568, - -0.07808174192905426, - 0.06371686607599258, - 0.05084025859832764, - 0.014175447635352612, - 0.05897212028503418, - -0.025428589433431625, - 0.06895413994789124, - 0.07201745361089706, - -0.10541494190692902, - -0.03378060460090637, - 0.022057391703128815, - 0.019664252176880836, - 0.028965357691049576, - 0.11104699224233627, - -0.01027052104473114, - 0.030104324221611023, - 0.05868934094905853, - -0.06381748616695404, - -0.019420616328716278, - 0.029764844104647636, - 0.01786114275455475, - -0.006150787230581045, - -0.007064702920615673, - 0.029903193935751915, - -0.0004061249492224306, - -0.03964140638709068, - 0.0388387069106102, - 0.016306452453136444, - 0.007765031419694424, - -0.01647040620446205, - -0.000404862075811252, - 0.02117948979139328, - -0.011917376890778542, - -0.016646403819322586, - 0.05356692522764206, - 0.05714408680796623, - 0.007617838680744171, - 0.029117939993739128, - -0.05081919953227043, - -0.09269057959318161, - -0.01836255006492138, - -0.004589974880218506, - 0.045294612646102905, - 0.004566108342260122, - -0.030165761709213257, - -0.05856022983789444, - -0.01573970727622509, - 0.01829385571181774, - -0.0027406129520386457, - 0.05774373933672905, - 0.05793432518839836, - -0.03559926897287369, - 0.05678500235080719, - 0.004939840640872717, - 0.001797561882995069, - -0.026711363345384598, - -0.052105896174907684, - 0.010459581390023232, - 0.04185253009200096, - -0.03387986123561859, - -0.045205067843198776, - 0.014369356445968151, - -0.03208669275045395, - -0.01850346103310585, - 0.008973083458840847, - 0.039684563875198364, - 0.00264127179980278, - -0.0026501468382775784, - -0.07483922690153122, - 0.012152040377259254, - -0.06846988201141357, - -0.05148279294371605, - 0.041076380759477615, - 0.028126057237386703, - -0.015078878030180931, - 0.0859799012541771, - 0.0395595021545887, - 0.03200735151767731, - -0.02169964089989662, - -0.046125270426273346, - 0.0105536337941885, - 0.059758510440588, - 0.04317406937479973, - 0.011927935294806957, - 0.046162813901901245, - 0.02862430177628994, - -0.021896351128816605, - 0.0499800369143486, - 0.040697354823350906, - 0.052120983600616455, - -0.0375836044549942, - 0.00671741645783186, - 0.003652925370261073, - 0.0829562097787857, - 0.02082514390349388, - -0.07640743255615234, - -0.05182170122861862, - 0.01458804216235876, - -0.027261679992079735, - 0.022989584133028984, - -0.005417493637651205, - 0.012950967065989971, - 0.021657045930624008, - -0.01648538000881672, - -0.06083444878458977, - -0.08671491593122482, - 0.03897317871451378, - -0.05076318979263306, - -0.016939355060458183, - -0.03590865433216095, - 0.04006796330213547, - 0.10057501494884491, - 0.006605468690395355, - 0.004110180772840977, - 0.0146378418430686, - 0.01325188484042883, - -0.021154653280973434, - -0.03682897612452507, - 0.017494268715381622, - 0.020619060844182968, - -0.08293524384498596, - 0.010754333809018135, - -0.05873020738363266, - 0.0646713599562645, - 0.005118402652442455, - 0.11330229043960571, - 0.034359484910964966, - -0.028638577088713646, - -0.060726698487997055, - 0.0177301112562418, - -0.015682987868785858, - 0.033456556499004364, - 2.7138739824295044e-05, - 0.02812274917960167, - 0.04326074570417404, - -0.021995989605784416, - 0.08204948157072067, - 0.03323245048522949, - -0.06520384550094604, - -0.035167545080184937, - 0.009964263066649437, - -0.019823363050818443, - 0.015459887683391571, - -0.018587229773402214, - -0.059443216770887375, - 0.01209951937198639, - 0.0385206863284111, - 0.010227099061012268, - 0.029104044660925865, - 0.08205370604991913, - 0.0484386645257473, - -0.052750274538993835 - ] - }, - "p244_411.wav": { - "name": "p244", - "embedding": [ - 0.059642016887664795, - 0.07965384423732758, - -0.017480334267020226, - 0.032382380217313766, - -0.07022543251514435, - 0.06445472687482834, - -0.10327498614788055, - 0.13157373666763306, - -0.036996614187955856, - 0.1204289123415947, - -0.07153010368347168, - 0.155553936958313, - 0.010817132890224457, - -0.16849181056022644, - -0.04421375319361687, - 0.021253231912851334, - -0.028402701020240784, - -0.012568382546305656, - -0.030665863305330276, - -0.03868956118822098, - 0.06314156204462051, - 0.046973612159490585, - 0.06632973253726959, - -0.01128307543694973, - 0.02419472299516201, - 0.06172002851963043, - 0.015814218670129776, - 0.06072750687599182, - 0.035288579761981964, - -0.08502109348773956, - -0.062420718371868134, - 0.08902939409017563, - -0.038452401757240295, - 0.008308952674269676, - 0.043627720326185226, - -0.027807191014289856, - 0.009850320406258106, - -0.06962423026561737, - -0.04141726344823837, - 0.022096317261457443, - -0.02695256471633911, - 0.06750936806201935, - 0.018040001392364502, - -0.05057733878493309, - 0.05104286968708038, - -0.006933089345693588, - -0.017996080219745636, - -0.03484554588794708, - -0.1068103164434433, - 0.14827364683151245, - 0.06700162589550018, - 0.006629972718656063, - -0.07882218807935715, - -0.06683379411697388, - 0.11319448798894882, - -0.01637943647801876, - -0.09796091169118881, - -0.0016170380404219031, - 0.04051607847213745, - 0.1608947515487671, - -0.026370510458946228, - -0.03198838233947754, - 0.057372357696294785, - 0.08653994649648666, - 0.0500403568148613, - 0.06373332440853119, - 0.11838296055793762, - 0.08643607795238495, - -0.020476695150136948, - 0.043690260499715805, - 0.0178915336728096, - 0.11327745765447617, - 0.04557464271783829, - -0.013138031587004662, - 0.025271516293287277, - 0.0052980175241827965, - -0.028383862227201462, - -0.010867412202060223, - -0.034048523753881454, - -0.011182970367372036, - -0.009061112999916077, - 0.008970201015472412, - 0.04037800058722496, - 0.012237053364515305, - -0.06042659282684326, - 0.07673083990812302, - 0.003307380247861147, - -0.013342324644327164, - 0.03753608465194702, - 0.01959865540266037, - 0.002677563112229109, - 0.05220995843410492, - -0.07945673167705536, - -0.11511530727148056, - 0.01810387335717678, - 0.006329129450023174, - 0.009757252410054207, - 0.08746608346700668, - 0.05137185379862785, - -0.023995978757739067, - 0.1150900349020958, - 0.07158038765192032, - -0.02294269949197769, - 0.031177883967757225, - -0.06514222919940948, - 0.09730362147092819, - 0.1279926598072052, - -0.017209332436323166, - 0.0668187066912651, - -0.06833834946155548, - 0.09236054122447968, - 0.05210068076848984, - -0.13655820488929749, - -0.08375281095504761, - 0.01709597557783127, - 0.007149823009967804, - 0.02225184068083763, - 0.10935956239700317, - -0.02106388472020626, - 0.06052929908037186, - 0.09163307398557663, - -0.07616027444601059, - -0.047462575137615204, - -0.043469011783599854, - 0.05833851546049118, - -0.059093162417411804, - 0.07242715358734131, - 0.027418464422225952, - -0.000650362460874021, - -0.013235678896307945, - 0.056720178574323654, - -0.03717149794101715, - -0.001577108516357839, - 0.037457406520843506, - -0.05954141914844513, - 0.008438026532530785, - -0.03850235044956207, - -0.013227644376456738, - 0.06570252031087875, - 0.04044290632009506, - 0.04002637788653374, - -0.0018446396570652723, - -0.022247005254030228, - -0.10768553614616394, - 0.017005234956741333, - 0.028609465807676315, - 0.06350462883710861, - -0.004099434241652489, - -0.046471428126096725, - -0.040874313563108444, - -0.06923195719718933, - 0.02761455439031124, - -0.005744852125644684, - 0.06792791187763214, - -0.02293807826936245, - 0.03558617830276489, - 0.0674629658460617, - 0.024610860273241997, - -0.011549009941518307, - -0.026513127610087395, - -0.02507929317653179, - 0.002460843650624156, - 0.04694586619734764, - -0.05512771010398865, - -0.08525311946868896, - -0.02097456157207489, - 0.009609050117433071, - -0.039024487137794495, - 0.049171432852745056, - 0.04547758400440216, - 0.013903401792049408, - 0.044464945793151855, - -0.07740233838558197, - -0.011149285361170769, - -0.12093240022659302, - -0.05409657210111618, - -0.015307456254959106, - -0.019875865429639816, - -0.021997680887579918, - 0.0676405131816864, - 0.049756284803152084, - 0.05250708758831024, - -0.0076362574473023415, - -0.044720955193042755, - -0.07624244689941406, - 0.034617550671100616, - 0.05160931497812271, - 0.027246862649917603, - 0.050259172916412354, - 0.07049086689949036, - -0.011070910841226578, - 0.08765627443790436, - 0.07695408165454865, - 0.054932139813899994, - -0.0009012601221911609, - 0.000523355498444289, - -0.06777406483888626, - 0.10285179316997528, - 0.09677831828594208, - -0.0737035721540451, - -0.10990612208843231, - -0.04993361234664917, - -0.10232850164175034, - 0.052597083151340485, - -0.013450665399432182, - 0.0073304190300405025, - 0.04062133654952049, - 0.004405973479151726, - -0.1042993888258934, - -0.08016376197338104, - 0.10289587825536728, - -0.0550079345703125, - -0.01939805969595909, - -0.0683455765247345, - 0.026967894285917282, - 0.11921452730894089, - 0.003333637025207281, - -0.012289858423173428, - -0.013178294524550438, - 0.05088487267494202, - -0.041406817734241486, - -0.003390500321984291, - 0.037062354385852814, - 0.027096610516309738, - -0.11242251098155975, - 0.016056720167398453, - -0.06145979464054108, - 0.036496102809906006, - -0.057857006788253784, - 0.1338413655757904, - 0.0107206329703331, - -0.053046815097332, - -0.08198243379592896, - 0.08529528975486755, - -0.017694635316729546, - 0.04824059456586838, - 0.04041486233472824, - 0.05968394875526428, - 0.010600298643112183, - -0.12796449661254883, - 0.10162600874900818, - 0.041107047349214554, - -0.06083913892507553, - -0.09762345999479294, - -0.05575675889849663, - -0.017922712489962578, - 0.018007460981607437, - 0.021308384835720062, - -0.049284156411886215, - -0.025588875636458397, - 0.011685170233249664, - -0.010148978792130947, - 0.0561300590634346, - 0.1417427659034729, - 0.05263352394104004, - -0.11148035526275635 - ] - }, - "p244_388.wav": { - "name": "p244", - "embedding": [ - 0.04279913753271103, - 0.07683821767568588, - -0.026776723563671112, - 0.07242654263973236, - -0.041509196162223816, - 0.08325468748807907, - -0.11956910789012909, - 0.0950818732380867, - -0.06007285416126251, - 0.13210678100585938, - -0.05847552418708801, - 0.08813778311014175, - -0.026149384677410126, - -0.166579008102417, - -0.03903099149465561, - 0.06916274130344391, - -0.06989790499210358, - -0.03631317615509033, - -0.06221272796392441, - 0.021014785394072533, - 0.02736428566277027, - 0.026379816234111786, - 0.05020748823881149, - -0.01987309381365776, - 0.02562793344259262, - 0.04216475039720535, - 0.004907548427581787, - 0.06414937973022461, - 0.034772150218486786, - -0.05441029369831085, - -0.02326892502605915, - 0.11783410608768463, - -0.03291363641619682, - 0.00463519711047411, - 0.037077855318784714, - 0.017232390120625496, - -0.006739448290318251, - -0.07905983924865723, - -0.017322368919849396, - -0.014660489745438099, - -0.057602040469646454, - 0.07148434221744537, - 0.03681974112987518, - -0.012246139347553253, - 0.03827977180480957, - -0.025573786348104477, - -0.05503149330615997, - -0.05449046194553375, - -0.11662720143795013, - 0.15778791904449463, - 0.07166272401809692, - 0.02231377176940441, - -0.06547696888446808, - -0.07713396847248077, - 0.10203243792057037, - 0.010455077514052391, - -0.11760962009429932, - -0.07778866589069366, - 0.06702810525894165, - 0.19254183769226074, - -0.0036716212052851915, - 0.015085672028362751, - 0.017253438010811806, - 0.13102467358112335, - 0.07079978287220001, - 0.10580535233020782, - 0.06114555895328522, - 0.08859376609325409, - 0.049201663583517075, - 0.04329535365104675, - 0.06624916940927505, - 0.05105634033679962, - 0.008615442551672459, - -0.0015586973167955875, - 0.02643129602074623, - -0.017454002052545547, - -0.03980826586484909, - 0.0027183685451745987, - -0.013855315744876862, - -0.01874593272805214, - -0.007366466335952282, - 0.0052628587000072, - 0.017303651198744774, - 0.03559975326061249, - -0.03322942554950714, - 0.04605250805616379, - -0.002605109941214323, - -0.03245530650019646, - 0.05909179896116257, - 0.023929957300424576, - -0.004493983928114176, - 0.03573611378669739, - -0.03361702337861061, - -0.10492219030857086, - -0.020809030160307884, - 0.016633985564112663, - 0.006826149765402079, - 0.057173892855644226, - 0.021113403141498566, - -0.036426786333322525, - 0.10008427500724792, - 0.03455492854118347, - -0.0063270339742302895, - 0.03484489023685455, - -0.08495824038982391, - 0.10796129703521729, - 0.057817794382572174, - 0.01556601282209158, - 0.03847911208868027, - -0.02231740392744541, - 0.06039247289299965, - 0.0912465751171112, - -0.14322376251220703, - -0.046759672462940216, - 0.05461625009775162, - -0.015554108656942844, - -0.008884796872735023, - 0.11654456704854965, - 0.0292135551571846, - 0.012401707470417023, - 0.09945473819971085, - -0.09154458343982697, - -0.05989929288625717, - -0.015061425045132637, - 0.07276488840579987, - -0.0658910721540451, - 0.03373792767524719, - 0.027579613029956818, - -0.04053768515586853, - -0.01888340525329113, - 0.07095083594322205, - -0.009811142459511757, - -0.0018079401925206184, - 0.04503504931926727, - -0.06619847565889359, - 0.07701301574707031, - -0.06334106624126434, - 0.006077686324715614, - 0.06886855512857437, - 0.03303665667772293, - 0.0552871897816658, - -0.02377418428659439, - -0.029360270127654076, - -0.09309427440166473, - -0.001175562385469675, - 0.055718690156936646, - 0.08294275403022766, - -0.010206620208919048, - -0.009148720651865005, - -0.05876978114247322, - -0.05823804438114166, - 0.05029996484518051, - -0.024256860837340355, - 0.10300520807504654, - -0.002360205166041851, - -0.007017430849373341, - 0.0888165757060051, - -0.029025930911302567, - 0.0034471487160772085, - -0.04323210194706917, - -0.014927180483937263, - 0.04266569763422012, - 0.04807581007480621, - -0.06337089836597443, - -0.036115776747465134, - 0.03981133550405502, - 0.024569189175963402, - -0.023068321868777275, - 0.007855734787881374, - 0.0272002425044775, - 0.021283529698848724, - 0.02660639025270939, - -0.05040641129016876, - 0.015161116607487202, - -0.0889514833688736, - -0.027425331994891167, - -0.010627709329128265, - -0.0389995276927948, - -0.022576503455638885, - 0.08996008336544037, - 0.039212338626384735, - 0.021808478981256485, - 0.01612863689661026, - -0.09127653390169144, - -0.06314870715141296, - 0.07969259470701218, - 0.061603933572769165, - 0.01238252967596054, - 0.04394424706697464, - 0.04798119142651558, - -0.014167435467243195, - 0.02011752687394619, - 0.055331334471702576, - 0.08263795077800751, - -0.007037494797259569, - -0.039183031767606735, - -0.09339691698551178, - 0.08077463507652283, - 0.1007310152053833, - -0.10723181068897247, - -0.060186564922332764, - -0.009054746478796005, - -0.06860488653182983, - 0.04117028787732124, - -0.04818103462457657, - -0.0016779854195192456, - 0.05251266807317734, - -0.037330422550439835, - -0.1221676766872406, - -0.10664443671703339, - 0.11448432505130768, - -0.09559007734060287, - -0.03472454100847244, - -0.056931011378765106, - 0.012130238115787506, - 0.06436227262020111, - 0.04443691298365593, - -0.014441188424825668, - 0.023071687668561935, - 0.055191535502672195, - -0.09020151942968369, - -0.009086200036108494, - 0.06647901237010956, - -0.017854567617177963, - -0.12300018966197968, - 0.013689089566469193, - -0.07876016199588776, - 0.07024633884429932, - -0.06827641278505325, - 0.1647666096687317, - -0.01431102305650711, - -0.03801912069320679, - -0.08726654946804047, - 0.04681612551212311, - -0.042981911450624466, - 0.04898793250322342, - 0.04049469530582428, - 0.06898501515388489, - 0.04306660592556, - -0.06444372236728668, - 0.11984724551439285, - 0.02570509910583496, - -0.009208137169480324, - -0.06738410890102386, - -0.028124570846557617, - -0.053668469190597534, - 0.026429519057273865, - -0.003367878030985594, - -0.07821069657802582, - 0.014155484735965729, - 0.03093869984149933, - -0.03153420239686966, - 0.06198987364768982, - 0.12716275453567505, - 0.07299923896789551, - -0.08960578590631485 - ] - }, - "p244_223.wav": { - "name": "p244", - "embedding": [ - 0.06746435165405273, - 0.03453626111149788, - 0.018802262842655182, - -0.007825586944818497, - -0.009814387187361717, - 0.05579018592834473, - -0.09531286358833313, - 0.08952674269676208, - 0.0019092746078968048, - 0.05800749734044075, - -0.11425498127937317, - 0.04001835361123085, - -0.015883518382906914, - -0.13597381114959717, - -0.015742767602205276, - 0.026558123528957367, - -0.014288059435784817, - 0.012245727702975273, - -0.07787568122148514, - -0.017433255910873413, - 0.0023683421313762665, - 0.019502606242895126, - 0.050130944699048996, - -0.026344383135437965, - 0.006037736311554909, - 0.03134957328438759, - 0.002301743719726801, - 0.0222611166536808, - 0.020945867523550987, - -0.0011597732082009315, - -0.00016056932508945465, - 0.06718454509973526, - -0.04193013533949852, - -0.02041812427341938, - 0.05378752201795578, - 0.016655851155519485, - 0.00016847462393343449, - -0.10018790513277054, - -0.03738325089216232, - 0.01944802887737751, - -0.07587802410125732, - 0.07158413529396057, - 0.06043025106191635, - -0.01085681188851595, - 0.0450977198779583, - 0.028120337054133415, - -0.00813515204936266, - -0.036066360771656036, - -0.09710974991321564, - 0.15066704154014587, - 0.038202062249183655, - 0.027333775535225868, - -0.09030097723007202, - -0.001152288168668747, - 0.09088161587715149, - -0.04268059879541397, - -0.049777813255786896, - -0.046671949326992035, - 0.04771159216761589, - 0.08742760866880417, - 0.00888905394822359, - -0.03385370224714279, - 0.0025641024112701416, - 0.034780971705913544, - -0.0037024933844804764, - 0.024121368303894997, - 0.11470529437065125, - 0.09740065038204193, - -0.01528053916990757, - 0.03571304678916931, - 0.06648300588130951, - 0.022431544959545135, - 0.018335528671741486, - -0.020860392600297928, - 0.051991596817970276, - -0.006882551126182079, - -0.03494260832667351, - 0.027872798964381218, - -0.029020942747592926, - 0.004292902071028948, - 0.04804347828030586, - 0.014665561728179455, - 0.021233877167105675, - -0.0003202699590474367, - -0.083039790391922, - 0.03834843263030052, - -0.016299637034535408, - 0.07488923519849777, - 0.09508562088012695, - 0.028424490243196487, - -0.006975365336984396, - 0.018224479630589485, - -0.0227232426404953, - -0.08809474855661392, - 0.0008995940443128347, - 0.006419919431209564, - -0.006341836880892515, - 0.012546876445412636, - 0.022339818999171257, - -0.027169516310095787, - 0.09633686393499374, - 0.008606428280472755, - -0.008391025476157665, - 0.011947759427130222, - -0.07165030390024185, - 0.07237375527620316, - 0.08989352732896805, - 0.022913016378879547, - 0.023092111572623253, - -0.045838937163352966, - 0.04516831040382385, - 0.06434302777051926, - -0.06889235228300095, - -0.02109365724027157, - 0.03842272609472275, - 0.025691688060760498, - 0.05670637637376785, - 0.11166322231292725, - -0.0345115028321743, - -0.011355207301676273, - 0.09559209644794464, - -0.07128887623548508, - -0.01865301840007305, - 0.04849075898528099, - -0.00918085128068924, - -0.0009427517652511597, - -0.009787343442440033, - 0.016089409589767456, - -0.008708180859684944, - -0.04379244148731232, - 0.06666576862335205, - -0.003015415742993355, - -0.003960400819778442, - -0.04926044121384621, - 0.03294874355196953, - 0.06298403441905975, - -0.02058054506778717, - -0.06400218605995178, - 0.061980441212654114, - 0.09161941707134247, - 0.014620400033891201, - 0.05029816925525665, - -0.06642168015241623, - -0.0890839472413063, - -0.024814171716570854, - 0.018034877255558968, - 0.05135874077677727, - -0.014013483189046383, - -0.022425733506679535, - -0.08444146811962128, - -0.0036991946399211884, - 0.019659902900457382, - -0.02198571339249611, - 0.05597304925322533, - 0.051497142761945724, - -0.0462024100124836, - 0.04202788323163986, - -0.0357813760638237, - 0.015549814328551292, - -0.06311838328838348, - -0.046413298696279526, - 0.024547286331653595, - 0.02782253921031952, - -0.006012763828039169, - -0.04778391867876053, - 3.1763920560479164e-06, - -0.0034371763467788696, - -0.007133588194847107, - -0.030627738684415817, - 0.04526460915803909, - -0.01648622751235962, - -0.013359026052057743, - -0.12920153141021729, - 0.044889360666275024, - -0.10495211184024811, - -0.0398227833211422, - 0.04703351482748985, - 0.021594205871224403, - 0.03445103019475937, - 0.0868418887257576, - -0.00621281610801816, - 0.005866593681275845, - -0.03537328913807869, - -0.11428296566009521, - -0.008001536130905151, - 0.05816343426704407, - 0.054338183254003525, - -0.000516034197062254, - 0.05152300000190735, - 0.033930640667676926, - -0.029608864337205887, - 0.05167367309331894, - 0.04011283814907074, - 0.06017167493700981, - -0.04184175655245781, - -0.020825427025556564, - 0.023401325568556786, - 0.0852283462882042, - 0.030077341943979263, - -0.06352971494197845, - -0.044702935963869095, - 0.005877570249140263, - -0.03520646318793297, - 0.018040383234620094, - 0.009867937304079533, - 0.006362102925777435, - 0.0412251241505146, - -0.012140120379626751, - -0.06588228046894073, - -0.04345769062638283, - 0.0077348146587610245, - -0.04040368273854256, - -0.015698954463005066, - -0.049078017473220825, - 0.022461842745542526, - 0.08226238936185837, - -0.004554638639092445, - 0.0009399037808179855, - -0.029615182429552078, - -0.015239452943205833, - -0.052473507821559906, - -0.08298250287771225, - -0.02115788124501705, - 0.016536949202418327, - -0.06285444647073746, - 0.026906626299023628, - -0.059773217886686325, - 0.06849846988916397, - 0.002102002501487732, - 0.07467304170131683, - 0.008652590215206146, - -0.014532679691910744, - -0.04937524348497391, - 0.02046164870262146, - -0.015169277787208557, - 0.053184084594249725, - 0.0541355162858963, - -0.014002952724695206, - 0.03024912253022194, - -0.06051519513130188, - 0.09172870218753815, - 0.03860616311430931, - -0.05396216735243797, - -0.03711579740047455, - 0.021270081400871277, - -0.046472761780023575, - -0.038003433495759964, - -0.015979822725057602, - -0.07203540205955505, - 0.031466804444789886, - 0.013499826192855835, - -0.03028171882033348, - 0.010555773973464966, - 0.047102928161621094, - 0.038047753274440765, - -0.06640853732824326 - ] - }, - "p244_105.wav": { - "name": "p244", - "embedding": [ - 0.04199103266000748, - 0.11617829650640488, - -0.03822670131921768, - 0.009970361366868019, - -0.06180695816874504, - 0.06572401523590088, - -0.08995041251182556, - 0.11087144911289215, - -0.040161289274692535, - 0.13533596694469452, - -0.06050288677215576, - 0.14237496256828308, - -0.021519970148801804, - -0.11296205967664719, - -0.051377072930336, - 0.041018079966306686, - -0.022327013313770294, - -0.010821400210261345, - -0.022188197821378708, - -0.026308249682188034, - 0.04904230684041977, - 0.013542171567678452, - 0.03373991698026657, - -0.0049488781951367855, - 0.023509174585342407, - 0.07685306668281555, - 0.015896936878561974, - 0.026470517739653587, - 0.015008306130766869, - -0.06461623311042786, - -0.053206026554107666, - 0.08346156775951385, - -0.04098587483167648, - 0.03245013207197189, - 0.05041162669658661, - -0.01328854076564312, - 0.013459051959216595, - -0.03604253754019737, - 0.02108015865087509, - 0.009602932259440422, - -0.022856276482343674, - 0.09376966953277588, - 0.01483251340687275, - -0.012880812399089336, - 0.03298836201429367, - 0.002260367153212428, - -0.012784450314939022, - -0.008848486468195915, - -0.06271973252296448, - 0.14742425084114075, - 0.05345187708735466, - -0.012334037572145462, - -0.07585030794143677, - -0.035776086151599884, - 0.0950363501906395, - -0.011479789391160011, - -0.0965292900800705, - -0.029636627063155174, - 0.03452540189027786, - 0.10701115429401398, - -0.0075934394262731075, - -0.0507061704993248, - 0.018968705087900162, - 0.10936087369918823, - 0.04047444462776184, - 0.05904686450958252, - 0.08163207024335861, - 0.10283955186605453, - -0.01567039266228676, - 0.012343108654022217, - 0.0296616293489933, - 0.08516241610050201, - 0.041909486055374146, - -0.006416182965040207, - 0.03499855101108551, - -0.038104794919490814, - 0.002573432633653283, - -0.006903701927512884, - -0.022830557078123093, - -0.03757607936859131, - -0.04911191761493683, - -0.0002809514699038118, - 0.0036431001499295235, - 0.01604396104812622, - -0.02919423207640648, - 0.05229528993368149, - 0.033879198133945465, - -0.04292520508170128, - 0.04799105226993561, - 0.057570502161979675, - 0.0033685490489006042, - 0.02855800651013851, - -0.0737912654876709, - -0.08116500079631805, - 0.04370058700442314, - 0.00637834845110774, - 0.026995999738574028, - 0.06688733398914337, - 0.04066891968250275, - 0.016165295615792274, - 0.08344607800245285, - 0.06817913055419922, - -0.015432355925440788, - -0.00027492642402648926, - -0.06354711949825287, - 0.1339571177959442, - 0.10456337779760361, - -0.033188626170158386, - 0.035492658615112305, - -0.027127256616950035, - 0.04902885481715202, - 0.03730037435889244, - -0.11478836834430695, - -0.09133437275886536, - 0.0011801639338955283, - 0.007715168409049511, - 0.005701042246073484, - 0.06321602314710617, - -0.0112722497433424, - 0.01958681084215641, - 0.07128651440143585, - -0.04924658685922623, - -0.07035790383815765, - -0.06190721318125725, - 0.029390333220362663, - -0.08773978799581528, - 0.06134861707687378, - 0.05012189596891403, - 0.02364715188741684, - -0.011407758109271526, - 0.08381160348653793, - 0.008381902240216732, - 0.01218886487185955, - 0.028661102056503296, - -0.024244703352451324, - 0.013345081359148026, - -0.007471784017980099, - 0.027959231287240982, - 0.04590198025107384, - 0.029659461230039597, - 0.06869475543498993, - -0.003996455110609531, - 0.02499471977353096, - -0.09376915544271469, - 0.0142821054905653, - 0.05111538618803024, - 0.014123952016234398, - -0.029080867767333984, - -0.045803528279066086, - -0.004303361289203167, - -0.06708916276693344, - -0.008562937378883362, - 0.0004720357828773558, - 0.07649107277393341, - -0.016655217856168747, - 0.017006948590278625, - 0.11920279264450073, - 0.018184518441557884, - -0.004393253941088915, - -0.04132121056318283, - -0.0013265833258628845, - 0.012190218083560467, - 0.04753274470567703, - -0.09258278459310532, - -0.07506147772073746, - -0.012659948319196701, - 0.011759753338992596, - -0.0015334058552980423, - 0.060365330427885056, - 0.07053540647029877, - -0.009500524029135704, - 0.05847875401377678, - -0.03705691546201706, - 0.005697905085980892, - -0.08066649734973907, - -0.03547865152359009, - -0.04819463938474655, - -0.06096942350268364, - -0.03281617909669876, - 0.07650876045227051, - 0.028784727677702904, - 0.056127794086933136, - 0.00027082115411758423, - -0.052896372973918915, - -0.06711860001087189, - 0.04537341743707657, - 0.06605416536331177, - -0.009477265179157257, - 0.03768934682011604, - 0.06395058333873749, - -0.01625695638358593, - 0.035413436591625214, - 0.05967690050601959, - 0.06340722739696503, - -0.04060867428779602, - 0.005485305096954107, - -0.06729786843061447, - 0.06758986413478851, - 0.0797397568821907, - -0.09445779025554657, - -0.08244279026985168, - -0.07224215567111969, - -0.042787104845047, - 0.01698298007249832, - -0.0538453571498394, - 0.007955098524689674, - 0.03596549481153488, - -0.01485449355095625, - -0.07828149944543839, - -0.11134330928325653, - 0.09029387682676315, - -0.05784526467323303, - 0.006046132650226355, - -0.051734842360019684, - 0.04293915256857872, - 0.06485158205032349, - 0.023911166936159134, - -0.05744285508990288, - 0.02017601951956749, - 0.03542225807905197, - -0.02280627191066742, - -0.0026409588754177094, - 0.03412122651934624, - 0.024010812863707542, - -0.07832947373390198, - -0.004358840640634298, - -0.06650857627391815, - 0.06273084878921509, - -0.0652836412191391, - 0.14062075316905975, - -0.005476667545735836, - -0.05514318495988846, - -0.06831812858581543, - 0.03729721158742905, - -0.02953445166349411, - 0.024901991710066795, - 0.0492917075753212, - 0.05519666522741318, - -0.009218895807862282, - -0.06570367515087128, - 0.1017032191157341, - 0.05959945172071457, - -0.033283643424510956, - -0.09524615854024887, - -0.03677475452423096, - -0.03181833028793335, - 0.04096755385398865, - 0.041259877383708954, - -0.0825209766626358, - 0.01629863865673542, - 0.023485228419303894, - -0.007235379423946142, - 0.08249468356370926, - 0.10868488997220993, - 0.06357407569885254, - -0.07810883224010468 - ] - }, - "p244_104.wav": { - "name": "p244", - "embedding": [ - 0.041993312537670135, - 0.0927915871143341, - -0.023635217919945717, - 0.03401413932442665, - -0.049704767763614655, - 0.09235957264900208, - -0.14399084448814392, - 0.12129074335098267, - -0.035267945379018784, - 0.1398114264011383, - -0.0600535050034523, - 0.11325986683368683, - -0.01964443549513817, - -0.18756522238254547, - -0.03948917239904404, - 0.05671172961592674, - -0.04484950006008148, - -0.035275910049676895, - -0.028493095189332962, - -0.00710280891507864, - 0.03766641765832901, - 0.02786479890346527, - 0.01050695963203907, - -0.005582625046372414, - 0.036100637167692184, - 0.06363923847675323, - -0.0031729359179735184, - 0.0393981859087944, - -0.00662595359608531, - -0.04091174155473709, - -0.03039582073688507, - 0.12437931448221207, - -0.06014012545347214, - 0.02942153438925743, - 0.05367758497595787, - 0.012539195828139782, - -0.00719422334805131, - -0.0525921992957592, - 0.0013659711694344878, - -0.001498503959737718, - -0.04412698373198509, - 0.08894520252943039, - 0.044096942991018295, - 0.010714509524405003, - 0.015667196363210678, - 0.031097274273633957, - -0.010116101242601871, - -0.04669087007641792, - -0.10243485867977142, - 0.1666468381881714, - 0.052448805421590805, - -0.0005351711879484355, - -0.06775981932878494, - -0.07216373085975647, - 0.0963415578007698, - 0.010191711597144604, - -0.11463125795125961, - -0.04616400599479675, - 0.09615646302700043, - 0.16290272772312164, - -0.029554234817624092, - -0.0435260534286499, - 0.006799326743930578, - 0.1317562609910965, - 0.04758976772427559, - 0.10423439741134644, - 0.0695679560303688, - 0.1393681913614273, - -0.0003243259561713785, - 0.006876935251057148, - 0.07549900561571121, - 0.060671474784612656, - 0.07056000828742981, - -0.01331544853746891, - 0.030147327110171318, - -0.024076879024505615, - 0.002624780172482133, - 0.0034128520637750626, - -0.034796204417943954, - -0.029568351805210114, - -0.0034408981446176767, - 0.003702497808262706, - 0.017516933381557465, - 0.04001220315694809, - -0.02220405824482441, - 0.04312530905008316, - 0.059406884014606476, - -0.027831654995679855, - 0.06485036015510559, - 0.062060121446847916, - 0.01610192470252514, - 0.058809198439121246, - -0.09474047273397446, - -0.08720813691616058, - 0.052215974777936935, - 0.006189660634845495, - 0.04568372666835785, - 0.07502438873052597, - 0.04258298873901367, - -0.004303544294089079, - 0.09306040406227112, - 0.028608692809939384, - -0.009236309677362442, - 0.022480159997940063, - -0.09946560859680176, - 0.14175835251808167, - 0.07973980903625488, - -0.018995195627212524, - 0.03168212249875069, - -0.055136825889348984, - 0.07474605739116669, - 0.07685787975788116, - -0.13622409105300903, - -0.0823507308959961, - 0.031062833964824677, - 0.019721344113349915, - -0.0368209145963192, - 0.1260622888803482, - -0.008385525085031986, - 0.0227363184094429, - 0.09151863306760788, - -0.09415683150291443, - -0.04459966719150543, - -0.0226836409419775, - 0.027638548985123634, - -0.08480838686227798, - 0.04222169145941734, - 0.040965426713228226, - -0.008196350187063217, - -0.0003213175805285573, - 0.08301109075546265, - 0.0029568444006145, - 0.004396231845021248, - 0.009786475449800491, - -0.03255288675427437, - 0.03162181377410889, - -0.010582532733678818, - 0.01605938747525215, - 0.031386442482471466, - 0.0246969535946846, - 0.05496756732463837, - -0.008291056379675865, - -0.026500826701521873, - -0.1195041611790657, - 0.009853058494627476, - 0.050079572945833206, - 0.07675682008266449, - -0.025990569964051247, - -0.0202273391187191, - -0.030775107443332672, - -0.08036734163761139, - 0.05014772340655327, - -0.01097302045673132, - 0.08064179122447968, - 0.013332556001842022, - -0.028773589059710503, - 0.11192211508750916, - 0.02456790953874588, - -0.0011019870871677995, - -0.05334194004535675, - -0.03009355068206787, - 0.02187325805425644, - 0.044389836490154266, - -0.11591000109910965, - -0.05547906830906868, - 0.0003466318594291806, - 0.015130819752812386, - -0.027434542775154114, - 0.04612204432487488, - 0.05507882311940193, - 0.025138316676020622, - 0.02772468514740467, - -0.045911893248558044, - -0.01048254780471325, - -0.10145393759012222, - -0.07158402353525162, - -0.008819213137030602, - -0.028672033920884132, - -0.02248135395348072, - 0.08878090232610703, - 0.012591863982379436, - 0.038297638297080994, - -0.0318383052945137, - -0.04675601050257683, - -0.06739017367362976, - 0.0647347941994667, - 0.05494198203086853, - 0.0007818698068149388, - 0.044629428535699844, - 0.04337198659777641, - -0.026525886729359627, - 0.04575919732451439, - 0.07308197766542435, - 0.12743665277957916, - -0.046412572264671326, - 0.02811635658144951, - -0.07216516882181168, - 0.1074354276061058, - 0.0878455713391304, - -0.08247501403093338, - -0.07868802547454834, - -0.012309428304433823, - -0.056923747062683105, - 0.018798766657710075, - -0.05857264995574951, - -0.0014582837466150522, - 0.020307812839746475, - -0.005348965059965849, - -0.10183601826429367, - -0.09745538979768753, - 0.0751880407333374, - -0.08353032916784286, - -0.000499181856866926, - -0.09331083297729492, - 0.0567728728055954, - 0.0895451009273529, - 0.04269560053944588, - -0.04776900261640549, - 0.006110005080699921, - 0.06342826038599014, - -0.04685213416814804, - 0.00283640343695879, - 0.050748687237501144, - 0.026887770742177963, - -0.10592646151781082, - -0.016883304342627525, - -0.06643162667751312, - 0.039897117763757706, - -0.05434108525514603, - 0.16183307766914368, - 0.0026806907262653112, - -0.054454121738672256, - -0.052208393812179565, - 0.03219299390912056, - -0.01592209003865719, - 0.04684852808713913, - 0.040493886917829514, - 0.07390118390321732, - 0.031165460124611855, - -0.0572657473385334, - 0.13536448776721954, - 0.03932786360383034, - -0.02746889367699623, - -0.06881848722696304, - -0.0402451790869236, - -0.035189367830753326, - 0.05021411180496216, - 0.009485137648880482, - -0.0997840166091919, - -0.012666463851928711, - 0.051296088844537735, - 0.000514302751980722, - 0.04523845762014389, - 0.14479690790176392, - 0.0645727589726448, - -0.09413698315620422 - ] - }, - "p244_228.wav": { - "name": "p244", - "embedding": [ - 0.036547183990478516, - 0.05494793504476547, - -0.03381495177745819, - -0.010115750133991241, - -0.04059382155537605, - 0.02810145542025566, - -0.13210858404636383, - 0.09303756058216095, - 0.005028697662055492, - 0.16204020380973816, - -0.05217421054840088, - 0.09659303724765778, - -0.0012686308473348618, - -0.11723019182682037, - 0.023297203704714775, - 0.03521076962351799, - -0.006184345111250877, - -0.0019950508140027523, - -0.004529932513833046, - -0.05533728748559952, - 0.03424292802810669, - 0.049391716718673706, - 0.007852649316191673, - -0.04434743896126747, - 0.02525271102786064, - 0.06144176423549652, - -0.024894338101148605, - -0.006331412121653557, - -0.01832963526248932, - -0.0581718273460865, - 0.011025835759937763, - 0.11011952906847, - -0.04667455703020096, - -0.004206397570669651, - 0.010972622781991959, - -0.013248814269900322, - -0.028623323887586594, - -0.04633243381977081, - 0.020680660381913185, - 0.033447153866291046, - -0.04960118979215622, - 0.0838746726512909, - 0.01760770007967949, - 0.010426776483654976, - 0.026980679482221603, - -0.030386094003915787, - -0.06536616384983063, - 0.004335332661867142, - -0.048969727009534836, - 0.14194506406784058, - 0.07445313036441803, - 0.007051954045891762, - -0.07249372452497482, - -0.01101214811205864, - 0.04477895796298981, - 0.02705524116754532, - -0.08595451712608337, - -0.034307949244976044, - 0.030470481142401695, - 0.10671170055866241, - 0.009791238233447075, - -0.06108497828245163, - 0.03524329140782356, - 0.10987058281898499, - 0.009562487713992596, - 0.03315334767103195, - 0.08764147758483887, - 0.10279177874326706, - -0.010249885730445385, - 0.006959708407521248, - 0.020144307985901833, - 0.07273457199335098, - 0.051266320049762726, - -0.025711428374052048, - 0.03318297117948532, - -0.018727295100688934, - -0.016509534791111946, - -0.04951774328947067, - -0.022715087980031967, - -0.05312328413128853, - -0.0448157861828804, - -0.022821705788373947, - -0.003900387790054083, - 0.09170660376548767, - -0.022880928590893745, - -0.029494643211364746, - 0.07554402202367783, - -0.04855826869606972, - 0.04615463316440582, - 0.03903011232614517, - 0.017772603780031204, - 0.006154010072350502, - -0.10188841074705124, - -0.05236378312110901, - 0.038186024874448776, - -0.002766687422990799, - 0.047838497906923294, - 0.06418476998806, - 0.027539290487766266, - 0.0002491651102900505, - 0.09445770829916, - 0.02097795158624649, - -0.005377943627536297, - -0.04734991118311882, - -0.07401047646999359, - 0.11700354516506195, - 0.11375206708908081, - -0.04591304063796997, - 0.03777534142136574, - -0.014602947980165482, - 0.014844397082924843, - -0.0070088207721710205, - -0.12812571227550507, - -0.029767531901597977, - -0.004303273744881153, - 0.0478520393371582, - 0.019742488861083984, - 0.11558857560157776, - 0.04125234857201576, - 0.05158422887325287, - 0.0784287303686142, - -0.05399606004357338, - -0.06061099097132683, - -0.05072500556707382, - 0.038478169590234756, - -0.10721170902252197, - 0.060248248279094696, - 0.055300697684288025, - 0.022702792659401894, - 0.003910653293132782, - 0.06804215162992477, - 0.024405136704444885, - 0.03485392779111862, - -0.05654182285070419, - 0.005347827449440956, - 0.036358222365379333, - -0.020238889381289482, - 0.041469231247901917, - 0.031049851328134537, - -0.006746730767190456, - 0.09990570694208145, - 0.029759474098682404, - -0.007160266861319542, - -0.09072452783584595, - 0.037418484687805176, - 0.007801290135830641, - 0.03955089673399925, - -0.052426502108573914, - -0.03093225508928299, - 0.01665990985929966, - -0.0764579176902771, - -0.0004300791770219803, - -0.009757639840245247, - 0.06864982843399048, - 0.030672062188386917, - -0.0229633841663599, - 0.10047703981399536, - 0.015504911541938782, - -0.00018723157700151205, - 0.010967081412672997, - -0.010971481911838055, - -0.005989436060190201, - 0.06344471871852875, - -0.12709718942642212, - -0.05961715802550316, - 0.011622114107012749, - 0.0128859244287014, - 0.011815086007118225, - 0.03485803306102753, - 0.09618727117776871, - -0.02078128233551979, - 0.024947889149188995, - -0.01679592952132225, - -0.003832906950265169, - -0.05250580608844757, - -0.06677301228046417, - 0.0032298071309924126, - -0.05456282198429108, - -0.0497753843665123, - 0.08213728666305542, - -0.02136092260479927, - 0.04913489520549774, - -0.04758963733911514, - -0.03340229019522667, - -0.0676318109035492, - 0.03568369895219803, - 0.03104977309703827, - -0.06299667060375214, - -0.0007210280746221542, - 0.08407070487737656, - -0.00670292042195797, - -0.02887452393770218, - 0.055874817073345184, - 0.09213539212942123, - -0.08104171603918076, - 0.005033660680055618, - -0.08486886322498322, - 0.1096893697977066, - 0.08756161481142044, - -0.0345761701464653, - -0.062121979892253876, - -0.06690338999032974, - -0.06330153346061707, - 0.0373421311378479, - -0.03550054132938385, - -0.017497580498456955, - 0.040321316570043564, - -0.05281955376267433, - -0.07797092199325562, - -0.07407867908477783, - 0.05309075862169266, - -0.05857566371560097, - 0.007959308102726936, - -0.07371783256530762, - 0.036032311618328094, - 0.04185828939080238, - 0.06944239884614944, - -0.06200557202100754, - 0.015215501189231873, - 0.02768900617957115, - -0.04563862830400467, - 0.006325381342321634, - 0.03160887211561203, - 0.034379299730062485, - -0.06544091552495956, - -0.06208460405468941, - -0.06095083802938461, - 0.03927738964557648, - -0.06617523729801178, - 0.055638596415519714, - 0.03216254338622093, - -0.05052667111158371, - -0.0727718323469162, - -0.004142915830016136, - 0.004101710394024849, - 0.03420416638255119, - 0.07264456152915955, - 0.06035304069519043, - 0.0509200245141983, - -0.053581397980451584, - 0.06901642680168152, - 0.05423349514603615, - 0.03478659316897392, - -0.05042131245136261, - -0.00014366023242473602, - -0.0034629814326763153, - 0.05168410390615463, - 0.018149469047784805, - -0.0771474614739418, - 0.04962316155433655, - 0.01681504398584366, - 0.004121999256312847, - 0.044393714517354965, - 0.04761321097612381, - 0.04781375825405121, - -0.10872853547334671 - ] - }, - "p244_188.wav": { - "name": "p244", - "embedding": [ - 0.017317287623882294, - 0.04498537629842758, - -0.049431826919317245, - 0.026250295341014862, - -0.07159970700740814, - 0.041431911289691925, - -0.14220894873142242, - 0.09918121993541718, - -0.02404780313372612, - 0.11870583891868591, - -0.033757831901311874, - 0.10897046327590942, - -0.01274899858981371, - -0.2121933251619339, - 0.01909901574254036, - 0.06232907623052597, - -0.03920887038111687, - -0.04471857100725174, - -0.06435555219650269, - -0.03345201909542084, - 0.03468197584152222, - 0.0357145331799984, - 0.025104904547333717, - -0.05580104887485504, - 0.01387088280171156, - 0.07723259925842285, - -0.008191756904125214, - 0.013709424063563347, - -0.023945387452840805, - -0.03753571957349777, - -0.049597322940826416, - 0.0883735865354538, - -0.06499285250902176, - -0.028659116476774216, - 0.0505051389336586, - -0.023918859660625458, - -0.028258681297302246, - -0.04561741650104523, - -0.009612597525119781, - 0.03508784621953964, - -0.06720846891403198, - 0.07514676451683044, - 0.051419928669929504, - -0.013838039711117744, - 0.05048087611794472, - 0.006804631091654301, - -0.022727705538272858, - -0.030414143577218056, - -0.10152660310268402, - 0.14894217252731323, - 0.06898372620344162, - -0.025127515196800232, - -0.05135069042444229, - -0.0408470593392849, - 0.08696570992469788, - 0.008966525085270405, - -0.13095322251319885, - -0.07086822390556335, - 0.0888456180691719, - 0.1253010779619217, - -0.035244591534137726, - -0.021543893963098526, - 0.03895064443349838, - 0.07749058306217194, - 0.06122463941574097, - 0.10049092024564743, - 0.06332235038280487, - 0.12807497382164001, - -0.0027650382835417986, - 0.0040116989985108376, - 0.0695246160030365, - 0.06422119587659836, - 0.030354848131537437, - -0.017443187534809113, - 0.04658213257789612, - 0.0029388070106506348, - -0.010607457719743252, - -0.022464144974946976, - -0.018317895010113716, - -0.012762738391757011, - 0.03116878867149353, - -0.007134473882615566, - 0.0351099967956543, - 0.02266528084874153, - -0.03112887218594551, - 0.04863879829645157, - 0.08685256540775299, - -0.0017822063528001308, - 0.06073993071913719, - 0.02116236463189125, - -0.0073343669064342976, - 0.07774338126182556, - -0.09492166340351105, - -0.06570316851139069, - 0.031402237713336945, - 0.0057772016152739525, - -0.0017051721224561334, - 0.05516954883933067, - 0.047507453709840775, - -0.020640410482883453, - 0.1228819489479065, - 0.03544235974550247, - -0.016452038660645485, - 0.04918748140335083, - -0.07279971987009048, - 0.12608854472637177, - 0.08431540429592133, - -0.030415885150432587, - 0.030399909242987633, - -0.06336770951747894, - 0.07243360579013824, - 0.043131835758686066, - -0.10869661718606949, - -0.049188461154699326, - 0.044710587710142136, - -0.023325065150856972, - -0.050837837159633636, - 0.16665911674499512, - -0.003387659788131714, - 0.01691051758825779, - 0.14217683672904968, - -0.1043357402086258, - -0.057786524295806885, - -0.0008437793585471809, - 0.030060134828090668, - -0.08626771718263626, - 0.04105145484209061, - 0.05152350664138794, - -0.00994603056460619, - 0.03077283501625061, - 0.09150253981351852, - -0.017743868753314018, - 0.015175789594650269, - -0.005155642982572317, - -0.015340684913098812, - 0.049425624310970306, - -0.010346350260078907, - -0.01423791516572237, - 0.07959248125553131, - 0.029327072203159332, - 0.04215708002448082, - -0.035785987973213196, - -0.027502745389938354, - -0.131309375166893, - 0.02814522758126259, - 0.01983937993645668, - 0.0819053202867508, - -0.014491342008113861, - 0.01907731592655182, - -0.06289822608232498, - -0.11390458047389984, - 0.02779809758067131, - -0.025660209357738495, - 0.07574279606342316, - -0.027025040239095688, - -0.03143087029457092, - 0.09052151441574097, - 0.04678970202803612, - 0.01202697865664959, - -0.05012039095163345, - -0.06305918097496033, - 0.016918502748012543, - 0.045033156871795654, - -0.10097062587738037, - -0.058853622525930405, - -0.046271972358226776, - 0.037637338042259216, - -0.009079734794795513, - 0.038432247936725616, - 0.06502270698547363, - 0.04015757888555527, - 0.015586724504828453, - -0.08537141978740692, - 0.017619166523218155, - -0.0705195963382721, - -0.04243101924657822, - -0.01802583411335945, - -0.02883341535925865, - -0.03243012726306915, - 0.08826066553592682, - -0.013770588673651218, - 0.023792801424860954, - -0.07443833351135254, - -0.06121410056948662, - -0.07203206419944763, - 0.05678550899028778, - 0.055465664714574814, - -0.03217874839901924, - 0.046823397278785706, - 0.04638488590717316, - -0.04013500362634659, - 0.0026283422484993935, - 0.06033400818705559, - 0.11864417791366577, - -0.026256369426846504, - 0.011101892217993736, - -0.055907152593135834, - 0.12708517909049988, - 0.07068803906440735, - -0.055651649832725525, - -0.0484439879655838, - -0.005763031542301178, - -0.06660846620798111, - 0.04331723600625992, - -0.04608432203531265, - -0.021472645923495293, - 0.020690463483333588, - 0.023847879841923714, - -0.0916101336479187, - -0.07911588251590729, - 0.05280515179038048, - -0.059972479939460754, - -0.01347692497074604, - -0.09861786663532257, - 0.04117956385016441, - 0.07657027244567871, - 0.044892556965351105, - -0.06180015206336975, - -0.007300299592316151, - 0.052679285407066345, - -0.020200956612825394, - 0.05991438776254654, - 0.0642707422375679, - 0.05839382857084274, - -0.09800872951745987, - -0.04367532953619957, - -0.07133033871650696, - 0.04467225819826126, - -0.046147119253873825, - 0.12688976526260376, - 0.02022826112806797, - -0.02163371443748474, - -0.060631610453128815, - 0.05313608795404434, - -0.00031630881130695343, - 0.06005815416574478, - 0.0646965503692627, - 0.08532170951366425, - 0.06233343482017517, - -0.056034162640571594, - 0.1290823519229889, - 0.030907586216926575, - -0.01748138852417469, - -0.06116333603858948, - -0.01653577759861946, - -0.04848343878984451, - 0.0357728973031044, - 0.045651160180568695, - -0.10712676495313644, - 0.001083730487152934, - 0.05164897441864014, - -0.002481299452483654, - 0.030789662152528763, - 0.12179458141326904, - 0.06833023577928543, - -0.08677087724208832 - ] - }, - "p244_176.wav": { - "name": "p244", - "embedding": [ - 0.06590309739112854, - 0.08273713290691376, - -0.022031202912330627, - 0.027331626042723656, - -0.05132855474948883, - 0.04373977705836296, - -0.15334570407867432, - 0.1566563993692398, - -0.009727679193019867, - 0.13052597641944885, - -0.03915196657180786, - 0.12613728642463684, - -0.00921361893415451, - -0.17011556029319763, - -0.0031224607955664396, - 0.05452784150838852, - -0.03364328294992447, - -0.0348631925880909, - -0.02278713509440422, - -0.029857030138373375, - 0.029342498630285263, - 0.04183362051844597, - 0.031725432723760605, - -0.0046009584330022335, - 0.028559327125549316, - 0.06831564009189606, - -0.017405208200216293, - 0.027609815821051598, - -0.0089272391051054, - -0.0710478276014328, - -0.02805780991911888, - 0.07103975862264633, - -0.0609106719493866, - 0.005562937818467617, - 0.03896316513419151, - -0.026390373706817627, - -0.013575540855526924, - -0.06560267508029938, - -0.029591700062155724, - 0.007092623971402645, - -0.037789665162563324, - 0.08400766551494598, - 0.02115662395954132, - -0.03572472184896469, - 0.03886793181300163, - 0.014422359876334667, - -0.004600794520229101, - -0.03717661648988724, - -0.11260801553726196, - 0.15533767640590668, - 0.07325652241706848, - 0.014653614722192287, - -0.08307540416717529, - -0.05747218057513237, - 0.08501579612493515, - -0.015743855386972427, - -0.09778197854757309, - -0.027945932000875473, - 0.05563493072986603, - 0.1365983933210373, - -0.032644666731357574, - -0.04546068608760834, - 0.04818868637084961, - 0.10732771456241608, - 0.07704716920852661, - 0.06185056269168854, - 0.09420525282621384, - 0.11288021504878998, - -0.04673559218645096, - 0.009247522801160812, - 0.036061182618141174, - 0.0793636366724968, - 0.0696311891078949, - 0.007205704227089882, - 0.018164895474910736, - -0.007456387858837843, - -0.015886083245277405, - -0.040691327303647995, - -0.023670226335525513, - -0.02646796964108944, - -0.003542952938005328, - 0.013792181387543678, - 0.020862823352217674, - 0.05419101566076279, - -0.026225855574011803, - 0.05407482013106346, - 0.057271093130111694, - -0.02712639793753624, - 0.0665774717926979, - 0.018475593999028206, - 0.020073935389518738, - 0.07006167620420456, - -0.1084972470998764, - -0.06667543947696686, - 0.05201352387666702, - 0.003527058055624366, - 0.03386840224266052, - 0.07018347829580307, - 0.048327378928661346, - -0.013828898780047894, - 0.12828075885772705, - 0.052020035684108734, - -0.01700139231979847, - 0.009118321351706982, - -0.07842226326465607, - 0.125259667634964, - 0.08640637993812561, - -0.03948485851287842, - 0.06417527794837952, - -0.06240531802177429, - 0.056600913405418396, - 0.048333585262298584, - -0.13238009810447693, - -0.07555337995290756, - 0.03135322779417038, - 0.01871408149600029, - -0.006715088617056608, - 0.14097750186920166, - 0.014059068635106087, - 0.07226261496543884, - 0.10537798702716827, - -0.09489516913890839, - -0.053132764995098114, - -0.013518152758479118, - 0.06651130318641663, - -0.09357684850692749, - 0.08118122071027756, - 0.06574410200119019, - -0.019548101350665092, - 0.030379649251699448, - 0.07033946365118027, - -0.004461872857064009, - 0.003948649857193232, - -0.0030166504438966513, - -0.025986608117818832, - 0.0010310538345947862, - -0.020243503153324127, - -0.015815503895282745, - 0.017549216747283936, - 0.016868874430656433, - 0.04138512164354324, - -0.011960888281464577, - -0.022519264370203018, - -0.13396292924880981, - 0.0199708491563797, - 0.025134574621915817, - 0.0808676928281784, - -0.021772390231490135, - -0.03277274966239929, - -0.030811121687293053, - -0.05993056297302246, - -0.006899719592183828, - -0.014716587960720062, - 0.05033014714717865, - -0.01804148405790329, - 0.015124909579753876, - 0.09540446847677231, - 0.049196772277355194, - 0.009166347794234753, - -0.032705970108509064, - -0.03616961091756821, - 0.006587449461221695, - 0.05745156854391098, - -0.07765307277441025, - -0.08155323565006256, - -0.029043225571513176, - 0.024371540173888206, - -0.020367398858070374, - 0.0753738135099411, - 0.04553629457950592, - 0.024564266204833984, - 0.007722645998001099, - -0.06545669585466385, - 0.01615370437502861, - -0.08819540590047836, - -0.08529090881347656, - -0.0008315509185194969, - -0.007010858040302992, - -0.03731034696102142, - 0.07583478093147278, - 0.03277184069156647, - 0.07850177586078644, - -0.05062877759337425, - -0.04603683948516846, - -0.08216080069541931, - 0.032328709959983826, - 0.04931224137544632, - -0.027668422088027, - 0.02368195913732052, - 0.059348881244659424, - -0.018062911927700043, - 0.051102038472890854, - 0.0644771158695221, - 0.09227493405342102, - -0.026067791506648064, - 0.022217441350221634, - -0.07000530511140823, - 0.10057233273983002, - 0.10241001844406128, - -0.0660070925951004, - -0.0833776593208313, - -0.034672241657972336, - -0.08395908772945404, - 0.018026867881417274, - -0.01758812554180622, - 0.020316768437623978, - 0.03906296193599701, - -0.0018471296643838286, - -0.1044909656047821, - -0.0998966246843338, - 0.08310158550739288, - -0.0647507905960083, - 0.00958292931318283, - -0.087298184633255, - 0.04991710186004639, - 0.09902515262365341, - 0.031223490834236145, - -0.026738043874502182, - -0.033829011023044586, - 0.03121050074696541, - -0.0005048485472798347, - 0.027047235518693924, - 0.06736314296722412, - 0.0641685351729393, - -0.11556115746498108, - -0.0037295869551599026, - -0.0594022274017334, - 0.04243311285972595, - -0.03628578037023544, - 0.13820697367191315, - 0.028575977310538292, - -0.04545023664832115, - -0.09418241679668427, - 0.04028555005788803, - -0.009200192987918854, - 0.06230112910270691, - 0.014625227078795433, - 0.06447426974773407, - 0.05719239264726639, - -0.07228986918926239, - 0.09338214993476868, - 0.050442688167095184, - -0.042689792811870575, - -0.07106788456439972, - -0.063497394323349, - -0.0327129140496254, - 0.04167948290705681, - 0.002049120608717203, - -0.0810183435678482, - -0.02905045449733734, - 0.021104484796524048, - 0.007179769687354565, - 0.05495418235659599, - 0.1424550712108612, - 0.04495810717344284, - -0.12958046793937683 - ] - }, - "p244_275.wav": { - "name": "p244", - "embedding": [ - 0.0372111052274704, - 0.050547100603580475, - -0.039791930466890335, - 0.06428533792495728, - -0.06765749305486679, - 0.040432676672935486, - -0.14868861436843872, - 0.10640327632427216, - -0.021880440413951874, - 0.10772843658924103, - -0.05929896980524063, - 0.08378919959068298, - -0.017492609098553658, - -0.19753682613372803, - -0.006421403028070927, - 0.06478886306285858, - -0.04720301553606987, - -0.03194117918610573, - -0.0735669732093811, - -0.028677726164460182, - 0.03851275146007538, - 0.0534440279006958, - 0.047147490084171295, - -0.0267333947122097, - 0.016785763204097748, - 0.05823175981640816, - -0.011137187480926514, - 0.028506604954600334, - 0.0070802937261760235, - -0.03567471727728844, - -0.029264654964208603, - 0.11077967286109924, - -0.006142396479845047, - -0.027134299278259277, - 0.033171698451042175, - -0.005992839112877846, - -0.01941157504916191, - -0.07562747597694397, - -0.027822960168123245, - 0.01068776287138462, - -0.06396210193634033, - 0.06659205257892609, - 0.0473058745265007, - -0.04108644276857376, - 0.06850926578044891, - -0.037930749356746674, - -0.05754496157169342, - -0.047843314707279205, - -0.13164585828781128, - 0.16440364718437195, - 0.09240882843732834, - 0.02109512872993946, - -0.07503265142440796, - -0.03818577900528908, - 0.11606360226869583, - -0.004305548965930939, - -0.11100426316261292, - -0.07306322455406189, - 0.07542389631271362, - 0.18429842591285706, - -0.016988929361104965, - 0.019483918324112892, - 0.05982273817062378, - 0.11252015829086304, - 0.04116428643465042, - 0.07991175353527069, - 0.07670343667268753, - 0.0956476479768753, - 0.014019510708749294, - 0.036897871643304825, - 0.04997949302196503, - 0.0666642040014267, - -0.0033631548285484314, - -0.018157746642827988, - 0.020306186750531197, - -0.01118550170212984, - -0.0523250550031662, - -0.02172210067510605, - -0.028238940984010696, - -0.01570945419371128, - 0.0034297779202461243, - -0.003977117128670216, - 0.028729159384965897, - 0.012515516951680183, - -0.06733973324298859, - 0.04054859280586243, - 0.04000149667263031, - -0.04084627702832222, - 0.05878767371177673, - 0.02424379624426365, - -0.010608808137476444, - 0.028196848928928375, - -0.030981626361608505, - -0.1025228425860405, - -0.005650188773870468, - 0.018151061609387398, - -0.009235326200723648, - 0.0494488850235939, - 0.03304683044552803, - -0.04707948863506317, - 0.12458515167236328, - 0.03188218176364899, - -0.015951815992593765, - 0.04687663912773132, - -0.07101300358772278, - 0.10087639838457108, - 0.09593609720468521, - 0.004735417664051056, - 0.0658436268568039, - -0.04067708179354668, - 0.04357825219631195, - 0.06105254963040352, - -0.11678953468799591, - -0.039993468672037125, - 0.046250149607658386, - -0.002066663233563304, - 0.0014543826691806316, - 0.13816797733306885, - 0.03370920568704605, - 0.035824354737997055, - 0.12066216766834259, - -0.09924739599227905, - -0.06310063600540161, - -0.01783032715320587, - 0.07728970795869827, - -0.06144742667675018, - 0.051109518855810165, - 0.06654154509305954, - -0.03428902104496956, - 0.013600043021142483, - 0.05042201653122902, - -0.01720242388546467, - 0.015457747504115105, - 0.00633569061756134, - -0.05480961129069328, - 0.05744437128305435, - -0.05916483327746391, - -0.02087836153805256, - 0.08025971055030823, - 0.032897986471652985, - 0.04981597512960434, - -0.0178227461874485, - -0.029598254710435867, - -0.10776936262845993, - -0.005454982630908489, - 0.02400267869234085, - 0.1018771380186081, - 0.0014026444405317307, - 0.006253059022128582, - -0.07616347074508667, - -0.0826883316040039, - 0.03763645514845848, - -0.053547292947769165, - 0.09755547344684601, - -0.02633102610707283, - -0.004980175755918026, - 0.06643056124448776, - 0.0013255062513053417, - 0.006942296400666237, - -0.043009497225284576, - -0.025869157165288925, - 0.0230241846293211, - 0.03868516907095909, - -0.061113178730010986, - -0.04628463089466095, - -0.006677571684122086, - 0.032870154827833176, - -0.03237747773528099, - 0.017305508255958557, - 0.021627631038427353, - 0.028258226811885834, - 0.0037730673793703318, - -0.09021933376789093, - 0.036487333476543427, - -0.07960869371891022, - -0.016955388709902763, - 0.013353020884096622, - -0.016371123492717743, - -0.04316435009241104, - 0.10222162306308746, - 0.04196551814675331, - 0.007445049472153187, - -0.02195524424314499, - -0.08111335337162018, - -0.06170753389596939, - 0.050415799021720886, - 0.04873126745223999, - -0.013593791052699089, - 0.0507008358836174, - 0.04373297095298767, - -0.022381126880645752, - 0.0268389955163002, - 0.06883329898118973, - 0.08232976496219635, - 0.0065101878717541695, - -0.039970606565475464, - -0.07118874788284302, - 0.10195834189653397, - 0.09972754120826721, - -0.07307245582342148, - -0.06400041282176971, - -0.03322445973753929, - -0.08305425196886063, - 0.045970916748046875, - -0.02062268927693367, - -0.010524102486670017, - 0.04042370617389679, - -0.018243473023176193, - -0.13788217306137085, - -0.09079774469137192, - 0.08598054200410843, - -0.07443965971469879, - -0.013190265744924545, - -0.06539787352085114, - 0.02527713030576706, - 0.09252861887216568, - 0.015022635459899902, - -0.028417464345693588, - -0.018887314945459366, - 0.04335290938615799, - -0.07408102601766586, - 0.022785726934671402, - 0.05588337033987045, - 0.02137768268585205, - -0.12280511856079102, - 0.010940550826489925, - -0.07326871156692505, - 0.06430086493492126, - -0.03907422348856926, - 0.13647128641605377, - 0.032093070447444916, - -0.023616179823875427, - -0.08593961596488953, - 0.07636019587516785, - -0.02165522798895836, - 0.0666738748550415, - 0.04711022973060608, - 0.06940796971321106, - 0.06648463010787964, - -0.09064563363790512, - 0.09680681675672531, - 0.034255027770996094, - -0.028422709554433823, - -0.07090790569782257, - -0.031739503145217896, - -0.04116027057170868, - 0.020132046192884445, - 0.001373582985252142, - -0.06732317805290222, - -0.009879304096102715, - 0.02314138039946556, - -0.01892411895096302, - 0.07125674933195114, - 0.11903060972690582, - 0.067520871758461, - -0.08741383999586105 - ] - }, - "p244_222.wav": { - "name": "p244", - "embedding": [ - 0.06108405068516731, - 0.10647977888584137, - -0.000617398414760828, - 0.02306094579398632, - -0.03677089512348175, - 0.06461239606142044, - -0.14455847442150116, - 0.1188560351729393, - -0.037819743156433105, - 0.1366496980190277, - -0.0777558982372284, - 0.1260986626148224, - -0.013707634061574936, - -0.20751075446605682, - -0.057540133595466614, - 0.06460794806480408, - -0.05266393721103668, - -0.015345701947808266, - -0.031993567943573, - -0.0010810154490172863, - 0.027816448360681534, - 0.026042643934488297, - 0.057558976113796234, - -0.013864386826753616, - 0.04250806197524071, - 0.06557751446962357, - 0.02284429594874382, - 0.07405853271484375, - 0.026938017457723618, - -0.04421895742416382, - -0.04515006020665169, - 0.12181121110916138, - -0.03756125271320343, - 0.004845899064093828, - 0.07181832939386368, - -0.001529536210000515, - 0.017629370093345642, - -0.06470608711242676, - -0.002787746489048004, - 0.009170708246529102, - -0.028057973831892014, - 0.08416552096605301, - 0.032940350472927094, - -0.014416085556149483, - 0.04113847017288208, - 0.04639853164553642, - -0.0049102287739515305, - -0.053554147481918335, - -0.11086501181125641, - 0.15409603714942932, - 0.045271433889865875, - 0.01465653907507658, - -0.07471352070569992, - -0.07080671191215515, - 0.09942316263914108, - -0.023636285215616226, - -0.09994032233953476, - -0.055198147892951965, - 0.08141282200813293, - 0.16549062728881836, - -0.028426170349121094, - -0.038404498249292374, - 0.02772606536746025, - 0.12711147964000702, - 0.04499347135424614, - 0.09814967215061188, - 0.0759621188044548, - 0.10287846624851227, - 0.007442581932991743, - 0.03093777596950531, - 0.05855100601911545, - 0.06003308296203613, - 0.0315227210521698, - -0.020807866007089615, - 0.028356939554214478, - -0.011214344762265682, - -0.026853125542402267, - -0.0011568637564778328, - -0.023175891488790512, - -0.008345823734998703, - -0.01349436305463314, - 0.0054573859088122845, - 0.003318965435028076, - 0.020443931221961975, - -0.034833770245313644, - 0.062183864414691925, - 0.019940689206123352, - -0.01843925006687641, - 0.07633303105831146, - 0.04648476094007492, - 0.006451481021940708, - 0.04481981694698334, - -0.07290449738502502, - -0.0989399403333664, - 0.024432167410850525, - -0.0006473178509622812, - -0.0009979411261156201, - 0.05842795968055725, - 0.0470779687166214, - -0.023900527507066727, - 0.11235892027616501, - 0.0650775134563446, - -0.009484140202403069, - 0.041433170437812805, - -0.08686938881874084, - 0.13090765476226807, - 0.08511263132095337, - -0.0171419158577919, - 0.035695623606443405, - -0.03681721165776253, - 0.05405735969543457, - 0.08810330927371979, - -0.14205609261989594, - -0.08561797440052032, - 0.0380837544798851, - -0.0025956700555980206, - -0.013711372390389442, - 0.10192014276981354, - -0.026365328580141068, - 0.01982794515788555, - 0.09954655170440674, - -0.07655389606952667, - -0.06609588861465454, - -0.02775553986430168, - 0.03888038173317909, - -0.09195458889007568, - 0.05020830035209656, - 0.045806337147951126, - -0.007562024053186178, - -0.025427894666790962, - 0.0920066088438034, - -0.002037553582340479, - -0.014566872268915176, - 0.01678907871246338, - -0.03626510500907898, - 0.04148344695568085, - -0.032590076327323914, - 0.006460740230977535, - 0.044672563672065735, - 0.04504762962460518, - 0.03837810829281807, - 0.01426954660564661, - -0.03653022274374962, - -0.11600615084171295, - -0.00519973412156105, - 0.0408778190612793, - 0.07300679385662079, - -0.007406510412693024, - -0.027017386630177498, - -0.05593958497047424, - -0.047655969858169556, - 0.038142282515764236, - -0.001864137127995491, - 0.08079181611537933, - -0.008619028143584728, - -0.009942388162016869, - 0.10925580561161041, - -0.0028608774300664663, - 0.015234522521495819, - -0.04282653331756592, - -0.011723631992936134, - 0.03105689026415348, - 0.03336199000477791, - -0.07925215363502502, - -0.06928686052560806, - 0.0021465288009494543, - 0.011984403245151043, - -0.018805846571922302, - 0.04306516796350479, - 0.050752654671669006, - 0.015741048380732536, - 0.036435529589653015, - -0.054405488073825836, - 0.002457967959344387, - -0.09544603526592255, - -0.04390803351998329, - -0.03200002387166023, - -0.025547679513692856, - -0.03497427701950073, - 0.08301126956939697, - 0.02629021927714348, - 0.043635718524456024, - -0.01585550606250763, - -0.06971190869808197, - -0.07166323810815811, - 0.06328172236680984, - 0.08925635367631912, - 0.009984223172068596, - 0.0418478325009346, - 0.028708338737487793, - -0.010551339015364647, - 0.06710711121559143, - 0.06426020711660385, - 0.08199739456176758, - -0.012986479327082634, - -0.0061281174421310425, - -0.07090484350919724, - 0.09049259126186371, - 0.08384969830513, - -0.10082690417766571, - -0.08927126228809357, - -0.015235744416713715, - -0.06333670020103455, - 0.035051699727773666, - -0.021348778158426285, - 0.015651199966669083, - 0.038222990930080414, - -0.015520840883255005, - -0.086278036236763, - -0.1118512749671936, - 0.08274443447589874, - -0.07864677906036377, - -0.01918899267911911, - -0.05852116644382477, - 0.04227006435394287, - 0.07503014802932739, - 0.02317352220416069, - -0.024019388481974602, - -0.0008100592531263828, - 0.034582674503326416, - -0.0597623735666275, - -0.01632051169872284, - 0.03955225646495819, - 0.012612666934728622, - -0.1105913370847702, - 0.02210206352174282, - -0.07639829069375992, - 0.0775880217552185, - -0.07166879624128342, - 0.16558100283145905, - -0.0013572783209383488, - -0.04954211413860321, - -0.07835662364959717, - 0.028120549395680428, - -0.05300430953502655, - 0.051034968346357346, - 0.05053573101758957, - 0.060512661933898926, - 0.012358414940536022, - -0.08027291297912598, - 0.12044014781713486, - 0.03400711715221405, - -0.033008355647325516, - -0.09692864120006561, - -0.05187544226646423, - -0.051885444670915604, - 0.03630934655666351, - 0.02796216681599617, - -0.09565617144107819, - -0.00820917822420597, - 0.03872651606798172, - -0.0242586862295866, - 0.06536050885915756, - 0.13753463327884674, - 0.049971528351306915, - -0.0948898121714592 - ] - }, - "p244_405.wav": { - "name": "p244", - "embedding": [ - 0.006150184199213982, - 0.07486303895711899, - -0.02663586288690567, - 0.0396827831864357, - -0.07888508588075638, - 0.010312719270586967, - -0.12243877351284027, - 0.13704636693000793, - -0.028949812054634094, - 0.09931938350200653, - -0.055680595338344574, - 0.10770174860954285, - -0.04940880835056305, - -0.16307318210601807, - 0.013370392844080925, - 0.0590081624686718, - 0.01580122858285904, - -0.0392984114587307, - 0.004905190784484148, - -0.04926897957921028, - 0.03190212696790695, - 0.029246345162391663, - 0.023797329515218735, - 0.012916888110339642, - 0.018231522291898727, - 0.08257376402616501, - -0.004941157530993223, - 0.016237521544098854, - -0.02850126102566719, - -0.029211970046162605, - -0.040705520659685135, - 0.08973772823810577, - -0.05868818610906601, - -0.019737152382731438, - 0.027195440605282784, - -0.022931616753339767, - -0.011572642251849174, - -0.027735145762562752, - -0.012257655151188374, - -0.003778803627938032, - -0.07221400737762451, - 0.0690208375453949, - 0.007677680812776089, - 0.0059084706008434296, - 0.04964328184723854, - 0.0069380514323711395, - -0.014495120383799076, - 0.00042348168790340424, - -0.1041998416185379, - 0.10878968238830566, - 0.07086145877838135, - -0.014892393723130226, - -0.07496088743209839, - -0.04954609274864197, - 0.10084711015224457, - -0.0036116731353104115, - -0.07893861830234528, - -0.03851358965039253, - 0.08017651736736298, - 0.11820194125175476, - -0.021269669756293297, - -0.025731150060892105, - 0.028402242809534073, - 0.09672196209430695, - 0.05306058004498482, - 0.06293874233961105, - 0.06270907819271088, - 0.10115713626146317, - -0.03169447183609009, - -0.017554961144924164, - 0.04578503593802452, - 0.0643862634897232, - 0.03271199390292168, - -0.03324565291404724, - -0.0011138077825307846, - -0.007808767259120941, - -0.010554883629083633, - -0.007996179163455963, - -0.02066575363278389, - -0.040589839220047, - -0.03887881711125374, - -0.023241635411977768, - 0.0036468892358243465, - -0.002424311824142933, - -0.016072357073426247, - 0.04164430499076843, - 0.0916631892323494, - -0.012127167545258999, - 0.09183749556541443, - 0.032345131039619446, - -0.027274835854768753, - 0.08409694582223892, - -0.09570327401161194, - -0.010594004765152931, - 0.028875943273305893, - 0.004311061929911375, - 0.03434719890356064, - 0.09402434527873993, - 0.04503396153450012, - -0.010267440229654312, - 0.11724266409873962, - 0.03866402804851532, - 0.02592509798705578, - 0.020174629986286163, - -0.08992619812488556, - 0.09675423055887222, - 0.08227004110813141, - -0.047772254794836044, - 0.06291826069355011, - -0.029017098248004913, - 0.046312734484672546, - 0.038410574197769165, - -0.10050421953201294, - -0.052188120782375336, - -0.010445058345794678, - 0.0026838649064302444, - -0.022569473832845688, - 0.11409549415111542, - 0.0013011815026402473, - 0.030930712819099426, - 0.1021089106798172, - -0.09437777101993561, - -0.08424870669841766, - -0.03104417771100998, - 0.06071043014526367, - -0.07492244243621826, - 0.05981636419892311, - 0.07829509675502777, - -0.0015183121431618929, - 0.04802033305168152, - 0.052258338779211044, - 0.003569698426872492, - 0.027483439072966576, - 0.02442401647567749, - -0.05770420283079147, - 0.007335989736020565, - -0.008484814316034317, - 0.010443726554512978, - 0.055802639573812485, - 0.018053952604532242, - 0.07853730767965317, - -0.01988217793405056, - 0.02538875676691532, - -0.10057611763477325, - 0.012353873811662197, - 0.050762537866830826, - 0.04853710159659386, - -0.02888815477490425, - -0.042304977774620056, - -0.03410155326128006, - -0.08970526605844498, - 0.006184403318911791, - 0.008147899992763996, - 0.08079163730144501, - -0.02827638015151024, - 0.009538035839796066, - 0.10582235455513, - 0.06337680667638779, - -0.02251357212662697, - -0.0641975998878479, - -0.0424477644264698, - 3.231666050851345e-05, - 0.06074313074350357, - -0.09988382458686829, - -0.0822218731045723, - -0.048506107181310654, - 0.05525355041027069, - -0.011318358592689037, - 0.06881704926490784, - 0.04739636555314064, - 0.013998052105307579, - -0.0018474189564585686, - -0.08094143122434616, - 0.04934513196349144, - -0.04532060772180557, - -0.06087994948029518, - -0.03767145797610283, - -0.02540403977036476, - -0.037186309695243835, - 0.07746666669845581, - 0.03033493459224701, - 0.05804086849093437, - -0.02209402807056904, - -0.06133315712213516, - -0.08052507042884827, - 0.018595688045024872, - 0.040038686245679855, - -0.0474863238632679, - 0.06294899433851242, - 0.06302913278341293, - -0.08780153840780258, - 0.04541824758052826, - 0.08086102455854416, - 0.09481661021709442, - -0.05498076602816582, - 0.040893882513046265, - -0.04828319698572159, - 0.06915664672851562, - 0.09316052496433258, - -0.08082294464111328, - -0.07157042622566223, - -0.06226029992103577, - -0.05875064432621002, - 0.05325916409492493, - -0.006705602630972862, - 0.007173493038862944, - 0.008922797627747059, - 0.0010051140561699867, - -0.08783672749996185, - -0.08716591447591782, - 0.09316055476665497, - -0.03933382406830788, - 0.001842681085690856, - -0.08648964017629623, - 0.05154842883348465, - 0.0715637058019638, - 0.03526312857866287, - -0.031575605273246765, - -0.018471233546733856, - 0.049379266798496246, - 0.0066135115921497345, - 0.024725373834371567, - 0.08367547392845154, - 0.05745554342865944, - -0.0649101734161377, - -0.03061269223690033, - -0.06204616278409958, - 0.07283425331115723, - -0.020063556730747223, - 0.1344831883907318, - 0.012971446849405766, - -0.04990969970822334, - -0.08142311871051788, - 0.04272284358739853, - 0.01761619932949543, - 0.04632534831762314, - 0.03681449592113495, - 0.06272977590560913, - 0.01905830018222332, - -0.03894062712788582, - 0.10986852645874023, - 0.03639582172036171, - -0.03918122500181198, - -0.05495746433734894, - -0.02624659799039364, - -0.03168144449591637, - 0.031790416687726974, - 0.0030091446824371815, - -0.10187118500471115, - -0.001163753680884838, - 0.01260887086391449, - 0.008416254073381424, - 0.06408717483282089, - 0.12489663064479828, - 0.07984329760074615, - -0.0996938943862915 - ] - }, - "p244_209.wav": { - "name": "p244", - "embedding": [ - 0.04554061219096184, - 0.11203058063983917, - -0.022690575569868088, - 0.012570882216095924, - -0.0615958496928215, - 0.07376416027545929, - -0.14235931634902954, - 0.15235722064971924, - -0.046706777065992355, - 0.12507732212543488, - -0.046855293214321136, - 0.129477858543396, - -0.024960055947303772, - -0.17176952958106995, - -0.021041613072156906, - 0.06449992954730988, - -0.045246973633766174, - -0.024001698940992355, - -0.03731225058436394, - -0.023389948531985283, - 0.012416157871484756, - 0.00969479326158762, - 0.02865147590637207, - -0.005654540844261646, - 0.04920028895139694, - 0.07328611612319946, - -0.004259578417986631, - 0.03601548820734024, - 0.008022502064704895, - -0.041606515645980835, - -0.045118484646081924, - 0.08548715710639954, - -0.0744706243276596, - 0.00891790259629488, - 0.06726544350385666, - -0.027431055903434753, - -0.009889774955809116, - -0.05986803025007248, - -0.01781226322054863, - 0.0095668388530612, - -0.03194738179445267, - 0.09477731585502625, - 0.03949063643813133, - -0.013258501887321472, - 0.027089383453130722, - 0.03415452316403389, - 0.013282028026878834, - -0.029356781393289566, - -0.10565045475959778, - 0.14943604171276093, - 0.050647784024477005, - -0.012686577625572681, - -0.08229793608188629, - -0.05077778548002243, - 0.10782690346240997, - -0.013646011240780354, - -0.10708905011415482, - -0.04757320135831833, - 0.07076491415500641, - 0.13209493458271027, - -0.032981354743242264, - -0.02989504486322403, - 0.014626540243625641, - 0.11616101861000061, - 0.07205488532781601, - 0.0941612720489502, - 0.06344182044267654, - 0.12834662199020386, - -0.02709992229938507, - 0.02772194892168045, - 0.05921303480863571, - 0.05661766231060028, - 0.03217185288667679, - -0.010190636850893497, - 0.020447812974452972, - -0.015202559530735016, - -0.009804517030715942, - -0.007958756759762764, - -0.020177006721496582, - -0.026570476591587067, - -0.020499303936958313, - 0.01465735025703907, - 0.006320127286016941, - 0.0368126705288887, - -0.019491689279675484, - 0.06378576904535294, - 0.049740225076675415, - -0.01400289498269558, - 0.07588404417037964, - 0.0477759912610054, - -0.004408291541039944, - 0.07181099057197571, - -0.0982455164194107, - -0.07705365866422653, - 0.030861997976899147, - -0.011823715642094612, - 0.02100476250052452, - 0.06868617236614227, - 0.052775196731090546, - 0.005227831192314625, - 0.12321065366268158, - 0.08036582916975021, - -0.0026582195423543453, - 0.03345930576324463, - -0.08013419061899185, - 0.1489182710647583, - 0.06777560710906982, - -0.032821498811244965, - 0.0617402046918869, - -0.0419139489531517, - 0.060627661645412445, - 0.06578347086906433, - -0.13268868625164032, - -0.08071302622556686, - 0.03206353634595871, - 0.007593153510242701, - -0.03766091167926788, - 0.12570424377918243, - -0.012996343895792961, - 0.040022894740104675, - 0.09272041916847229, - -0.08462142944335938, - -0.060799576342105865, - -0.005340151954442263, - 0.046294644474983215, - -0.06936579197645187, - 0.05176942050457001, - 0.059186920523643494, - -0.014587939716875553, - 0.026085246354341507, - 0.10344952344894409, - 0.006480107083916664, - 0.0066401599906384945, - 0.039710916578769684, - -0.026408351957798004, - 0.02463318407535553, - -0.0038742409087717533, - 0.013036051765084267, - 0.039368100464344025, - 0.0274701826274395, - 0.05387243628501892, - -0.010584131814539433, - 0.0007623103447258472, - -0.11440053582191467, - 0.007891575805842876, - 0.044833824038505554, - 0.09002957493066788, - -0.015656176954507828, - -0.019652806222438812, - -0.02561333030462265, - -0.07534916698932648, - -0.007397412322461605, - 0.0013407572405412793, - 0.08129993081092834, - -0.03605617210268974, - -0.002478420501574874, - 0.11295334994792938, - 0.052500493824481964, - 0.008838511072099209, - -0.05739651247859001, - -0.021529018878936768, - 0.009963859803974628, - 0.052483148872852325, - -0.08580954372882843, - -0.07665330171585083, - -0.013039784505963326, - 0.023344095796346664, - -0.0171915665268898, - 0.08285190910100937, - 0.05510025471448898, - 0.01969613879919052, - 0.03363834321498871, - -0.06921479105949402, - 0.023840559646487236, - -0.0830773338675499, - -0.04601935297250748, - -0.025027308613061905, - -0.017561502754688263, - -0.05032380670309067, - 0.08441346138715744, - 0.02640497125685215, - 0.07303734123706818, - -0.013393362984061241, - -0.05665639787912369, - -0.06498357653617859, - 0.05435187369585037, - 0.056136228144168854, - -0.029903363436460495, - 0.03915030509233475, - 0.07154837995767593, - -0.02146207168698311, - 0.03729398921132088, - 0.07908403873443604, - 0.08505338430404663, - -0.042784012854099274, - 0.018649999052286148, - -0.06908175349235535, - 0.08047108352184296, - 0.07198572903871536, - -0.11198446154594421, - -0.07691173255443573, - -0.014908134937286377, - -0.05353359878063202, - 0.011819988489151001, - -0.034393392503261566, - 0.01607479900121689, - 0.026513660326600075, - -0.0025348826311528683, - -0.07555601745843887, - -0.11043053865432739, - 0.08997412025928497, - -0.09585773944854736, - 0.011909783817827702, - -0.07016541063785553, - 0.03988944739103317, - 0.08187173306941986, - 0.0337202213704586, - -0.040319688618183136, - -0.009234657511115074, - 0.04479823634028435, - -0.0054154894314706326, - 0.017220513895154, - 0.07073770463466644, - 0.04830370098352432, - -0.1012454479932785, - 0.005688146688044071, - -0.06045256182551384, - 0.06970404088497162, - -0.03492727130651474, - 0.17103973031044006, - 0.009815742261707783, - -0.04843275994062424, - -0.08546597510576248, - 0.02463780902326107, - -0.033158447593450546, - 0.04538648948073387, - 0.03275530785322189, - 0.07747878134250641, - 0.03365189582109451, - -0.037520162761211395, - 0.13304531574249268, - 0.029347743839025497, - -0.046014294028282166, - -0.07504291832447052, - -0.047618694603443146, - -0.04382602125406265, - 0.04885208606719971, - 0.034145064651966095, - -0.10433944314718246, - -0.017432769760489464, - 0.02739243023097515, - -0.011629210785031319, - 0.07152494043111801, - 0.14030449092388153, - 0.0901455283164978, - -0.1088985800743103 - ] - }, - "p244_262.wav": { - "name": "p244", - "embedding": [ - 0.05120299756526947, - 0.10064674913883209, - -0.009198248386383057, - 0.03181561827659607, - -0.027464676648378372, - 0.059713803231716156, - -0.12019693851470947, - 0.10171031951904297, - -0.0549749955534935, - 0.14529161155223846, - -0.10167531669139862, - 0.08058565109968185, - -0.04520229250192642, - -0.1540006399154663, - -0.030811607837677002, - 0.05386172980070114, - -0.053299810737371445, - -0.01922711730003357, - -0.0534542016685009, - -0.014393138699233532, - 0.01883978210389614, - 0.0478510782122612, - 0.04279084503650665, - 0.000983256846666336, - 0.025578733533620834, - 0.048070650547742844, - -0.008330855518579483, - 0.046740561723709106, - 0.018217366188764572, - -0.04601719602942467, - -0.03640662133693695, - 0.10691242665052414, - -0.03787381947040558, - 0.013880571350455284, - 0.03360014408826828, - 0.02640683576464653, - 0.005446490831673145, - -0.07871174812316895, - -0.022228408604860306, - -0.01679687201976776, - -0.051559366285800934, - 0.05953097343444824, - 0.014877522364258766, - -0.02390565536916256, - 0.047724224627017975, - -0.001975785940885544, - -0.02440449222922325, - -0.04622616991400719, - -0.10330905765295029, - 0.14947204291820526, - 0.07587133347988129, - 0.011020049452781677, - -0.06762873381376266, - -0.07256826758384705, - 0.0993395671248436, - -0.017549198120832443, - -0.11445820331573486, - -0.03620462864637375, - 0.07281570881605148, - 0.16579386591911316, - -0.03506751358509064, - -0.020623572170734406, - 0.025090089067816734, - 0.09251000732183456, - 0.043006882071495056, - 0.09177093207836151, - 0.07299482077360153, - 0.08901026099920273, - 0.009673969820141792, - 0.019041597843170166, - 0.054912857711315155, - 0.05111443251371384, - 0.04096747934818268, - -0.02290019765496254, - 0.015500959008932114, - 0.010975207202136517, - -0.05548204109072685, - 0.029323814436793327, - -0.021801603958010674, - -0.0268276147544384, - -0.01562955603003502, - -0.01665002852678299, - 0.004028484225273132, - 0.0057489871978759766, - -0.02529078722000122, - 0.03868642449378967, - 0.017912309616804123, - -0.025504259392619133, - 0.081025630235672, - 0.01614363305270672, - -0.021524760872125626, - 0.039032407104969025, - -0.05297297239303589, - -0.0774117112159729, - 0.0019693090580403805, - 0.02007894031703472, - -0.020108114928007126, - 0.06561096757650375, - 0.032936111092567444, - -0.03397076576948166, - 0.11859112977981567, - 0.02914871647953987, - 0.012230394408106804, - 0.026038264855742455, - -0.10060828924179077, - 0.10992293059825897, - 0.09210561215877533, - -0.025584470480680466, - 0.04101255163550377, - -0.026945700868964195, - 0.05010461062192917, - 0.094532310962677, - -0.1409962922334671, - -0.06595657020807266, - 0.03477557376027107, - 0.005723160691559315, - 0.003163047833368182, - 0.08979048579931259, - 0.011873684823513031, - 0.009905392304062843, - 0.10700945556163788, - -0.09858332574367523, - -0.07193516194820404, - -0.010667238384485245, - 0.06605319678783417, - -0.07471666485071182, - 0.03627766668796539, - 0.05868104100227356, - -0.007499083876609802, - -0.012288684025406837, - 0.07106181234121323, - -0.011516093276441097, - -0.002640204969793558, - 0.01817549578845501, - -0.05530492216348648, - 0.016140220686793327, - -0.05048815533518791, - -0.021855786442756653, - 0.06002534180879593, - 0.042694251984357834, - 0.040740713477134705, - -0.007539510261267424, - -0.03849566727876663, - -0.09793002903461456, - -0.00781581737101078, - 0.05755595490336418, - 0.06336479634046555, - -0.015316218137741089, - -0.006803087890148163, - -0.04839935153722763, - -0.06794807314872742, - 0.03540760278701782, - -0.026256216689944267, - 0.08967643976211548, - -0.01670888438820839, - 0.0030486376490443945, - 0.10669426620006561, - 0.005334311630576849, - -0.012910946272313595, - -0.0673343613743782, - -0.017182420939207077, - 0.022405754774808884, - 0.0445699505507946, - -0.06255318224430084, - -0.07514600455760956, - 0.01455737091600895, - 0.02201361209154129, - -0.015958227217197418, - 0.04392615705728531, - 0.02607680857181549, - 0.024369925260543823, - 0.02490142360329628, - -0.0620080940425396, - 0.017749782651662827, - -0.09628967940807343, - -0.05716310441493988, - 0.0007887704996392131, - -0.016899889335036278, - 0.00347130442969501, - 0.0864909216761589, - 0.023680610582232475, - 0.019430886954069138, - -0.004094429314136505, - -0.09232793748378754, - -0.0800931453704834, - 0.0773281455039978, - 0.07245152443647385, - -0.002572190947830677, - 0.04278305172920227, - 0.05977634713053703, - -0.03460359200835228, - 0.04080736264586449, - 0.05990650877356529, - 0.09472056478261948, - -0.010851381346583366, - 0.0008565721800550818, - -0.0702894851565361, - 0.060493744909763336, - 0.07853777706623077, - -0.09640085697174072, - -0.08468067646026611, - -0.034121692180633545, - -0.05222040042281151, - 0.05006510019302368, - -0.02324375882744789, - 0.00355984247289598, - 0.02056746557354927, - -0.04795808717608452, - -0.10008635371923447, - -0.10249678790569305, - 0.0991460531949997, - -0.040329381823539734, - -0.03207778185606003, - -0.062081363052129745, - 0.038931041955947876, - 0.05032260715961456, - 0.04021667689085007, - -0.012123688124120235, - 0.023056063801050186, - 0.03829475864768028, - -0.07204142212867737, - -0.01737365499138832, - 0.05538780987262726, - 0.006631760857999325, - -0.09748014807701111, - 0.02391437254846096, - -0.07799693197011948, - 0.09640856832265854, - -0.0530552864074707, - 0.14040398597717285, - -0.012564594857394695, - -0.04234730452299118, - -0.08746644109487534, - 0.03843048959970474, - -0.01989157125353813, - 0.0356820747256279, - 0.027692623436450958, - 0.04851682111620903, - 0.03417710214853287, - -0.05843823403120041, - 0.09970708191394806, - 0.03376253694295883, - -0.019092349335551262, - -0.05432802438735962, - -0.05789197236299515, - -0.04716051369905472, - -0.0011810425203293562, - -0.020108606666326523, - -0.08368172496557236, - 0.0032345810905098915, - -0.0013456593733280897, - -0.014470599591732025, - 0.055579543113708496, - 0.12378937005996704, - 0.06954917311668396, - -0.11114807426929474 - ] - }, - "p244_307.wav": { - "name": "p244", - "embedding": [ - 0.07949461787939072, - 0.060568638145923615, - 0.011187783442437649, - -0.012897009961307049, - -0.021683555096387863, - 0.038954585790634155, - -0.11727048456668854, - 0.12728755176067352, - -0.01069733314216137, - 0.0712699443101883, - -0.10045093297958374, - 0.08795025944709778, - -0.009208133444190025, - -0.1474396288394928, - -0.05166105553507805, - 0.03411835432052612, - -0.04587198421359062, - 0.0029495980124920607, - -0.07381324470043182, - -0.0390251986682415, - 0.006124039646238089, - 0.03995516896247864, - 0.04736756533384323, - 0.0026155165396630764, - 0.02561923861503601, - 0.04640624672174454, - 0.00765447411686182, - 0.03446386754512787, - 0.022265907377004623, - -0.030223004519939423, - -0.001370082376524806, - 0.06214786693453789, - -0.024774428457021713, - -0.013426894322037697, - 0.06032898277044296, - 0.004201333969831467, - 0.025060102343559265, - -0.08458250761032104, - -0.053098034113645554, - 0.03669635206460953, - -0.04677743837237358, - 0.0747847780585289, - 0.04658300802111626, - -0.0320415161550045, - 0.04678977280855179, - 0.025038182735443115, - -0.007283718325197697, - -0.065359927713871, - -0.11309584230184555, - 0.16030576825141907, - 0.03372855484485626, - 0.038035694509744644, - -0.11493288725614548, - -0.020032528787851334, - 0.08441051840782166, - -0.051686905324459076, - -0.06517340987920761, - -0.021187935024499893, - 0.041899263858795166, - 0.1304379403591156, - -0.010436488315463066, - -0.02348453179001808, - 0.035457950085401535, - 0.07750619947910309, - 0.03274114429950714, - 0.02156207524240017, - 0.12371983379125595, - 0.08539639413356781, - -0.022217383608222008, - 0.046658843755722046, - 0.050084859132766724, - 0.049062035977840424, - 0.06012868136167526, - -0.007840721867978573, - 0.019550366327166557, - -0.013254883699119091, - -0.03472450375556946, - -0.007717333734035492, - -0.03391638025641441, - -0.013201042078435421, - 0.018303032964468002, - 0.029951438307762146, - 0.026134736835956573, - 0.03313012048602104, - -0.06049787625670433, - 0.06319088488817215, - -0.007476852275431156, - 0.012833978049457073, - 0.05554402992129326, - 0.0520857572555542, - 0.0007505137473344803, - 0.01314343698322773, - -0.04405715689063072, - -0.101631760597229, - -0.00985995028167963, - -0.012346148490905762, - 0.00989186018705368, - 0.021427204832434654, - 0.04406476020812988, - -0.020252034068107605, - 0.11778900027275085, - 0.04004111886024475, - -0.0057243406772613525, - 0.0118165984749794, - -0.07032965868711472, - 0.07441701740026474, - 0.1132490485906601, - -0.01473800279200077, - 0.04842686653137207, - -0.03676936775445938, - 0.03227347880601883, - 0.06824705004692078, - -0.10059110820293427, - -0.050666436553001404, - 0.034025922417640686, - 0.01992403343319893, - 0.06628663092851639, - 0.09773280471563339, - -0.00686648627743125, - 0.03480812534689903, - 0.07369277626276016, - -0.06246021017432213, - -0.02311760187149048, - 0.004844106733798981, - 0.025671040639281273, - -0.023734595626592636, - 0.035982199013233185, - 0.03417159616947174, - 0.02171308360993862, - -0.03762689232826233, - 0.06432121247053146, - 0.00026883557438850403, - -0.010563733987510204, - -0.04531251639127731, - 0.01793282851576805, - 0.04393079876899719, - -0.01043899916112423, - -0.03221121057868004, - 0.05454322695732117, - 0.08619183301925659, - -7.935737812658772e-05, - 0.057754889130592346, - -0.06459271907806396, - -0.0988495945930481, - -0.014938399195671082, - 0.013154792599380016, - 0.07626243680715561, - -0.011631235480308533, - -0.023521875962615013, - -0.0593317411839962, - 0.0027350708842277527, - 0.008922724053263664, - -0.0015894817188382149, - 0.05241117998957634, - 0.019609250128269196, - -0.0074869743548333645, - 0.07494091987609863, - -0.02073526754975319, - 0.005760747008025646, - -0.027702657505869865, - 0.0036679785698652267, - 0.013160894624888897, - 0.03709305822849274, - -0.01999766007065773, - -0.07556463778018951, - 0.003888395382091403, - -0.012878922745585442, - -0.021384499967098236, - 0.021495744585990906, - 0.018334360793232918, - -0.01882268860936165, - 0.007084686309099197, - -0.0957961231470108, - 0.024479221552610397, - -0.11162912845611572, - -0.044010233134031296, - 0.04427838325500488, - -0.010144739411771297, - -0.01014002040028572, - 0.07332593947649002, - 0.035177893936634064, - 0.04477391391992569, - -0.02435200661420822, - -0.0928417444229126, - -0.01848919317126274, - 0.05670997500419617, - 0.05213698372244835, - 0.006668459624052048, - 0.024060701951384544, - 0.03254369646310806, - 0.015387165360152721, - 0.07812749594449997, - 0.059329282492399216, - 0.043402787297964096, - -0.026623714715242386, - -0.0352184996008873, - -0.009905691258609295, - 0.08500052988529205, - 0.026410698890686035, - -0.06237661466002464, - -0.07447698712348938, - -0.013357012532651424, - -0.038861218839883804, - 0.014166364446282387, - 0.01808328554034233, - 0.03062797151505947, - 0.045820802450180054, - -0.017765365540981293, - -0.08114000409841537, - -0.06574037671089172, - 0.04714152216911316, - -0.05616933852434158, - -0.008574734441936016, - -0.04053812474012375, - 0.025975925847887993, - 0.09962654113769531, - -0.012783469632267952, - 0.012731073424220085, - -0.014211846515536308, - -0.0182407908141613, - -0.05733984708786011, - -0.058074288070201874, - -0.012579414062201977, - 0.016277872025966644, - -0.07515512406826019, - 0.02345399372279644, - -0.061218541115522385, - 0.06251329183578491, - -0.011283209547400475, - 0.09383877366781235, - 0.019841421395540237, - -0.04171907156705856, - -0.07871886342763901, - 0.006532335188239813, - -0.037885598838329315, - 0.06602694094181061, - 0.03854357451200485, - 0.026059377938508987, - 0.027344686910510063, - -0.07157064974308014, - 0.08329394459724426, - 0.04517119750380516, - -0.06972470879554749, - -0.062236689031124115, - -0.0462288074195385, - -0.020593494176864624, - -0.0034223159309476614, - -0.008592184633016586, - -0.024082964286208153, - 0.010761437937617302, - -0.0004382531042210758, - -0.015213320031762123, - 0.04773759841918945, - 0.08949684351682663, - 0.04265237972140312, - -0.09109517931938171 - ] - }, - "p244_317.wav": { - "name": "p244", - "embedding": [ - 0.07287262380123138, - 0.09812655299901962, - -0.021208832040429115, - 0.03850402310490608, - -0.07162696123123169, - 0.0648140236735344, - -0.12628519535064697, - 0.13974134624004364, - -0.02610226720571518, - 0.129885733127594, - -0.06640173494815826, - 0.14288440346717834, - -0.010287001729011536, - -0.1601899266242981, - -0.021731993183493614, - 0.04952923208475113, - -0.021700704470276833, - -0.02625288814306259, - -0.023985104635357857, - -0.028499871492385864, - 0.03118227608501911, - 0.04160599410533905, - 0.05332249402999878, - -0.002992046996951103, - 0.054745152592659, - 0.06966624408960342, - -0.0009395353263244033, - 0.04502046853303909, - 0.008063578978180885, - -0.08579669147729874, - -0.057160384953022, - 0.0945606380701065, - -0.061264101415872574, - 0.0032800287008285522, - 0.029076963663101196, - -0.022528348490595818, - 0.00380022544413805, - -0.06907157599925995, - -0.023876851424574852, - 0.007949399761855602, - -0.01676177605986595, - 0.08136487007141113, - 0.023283667862415314, - -0.036747563630342484, - 0.02962793968617916, - 0.012359404936432838, - -0.008387601934373379, - -0.03573586046695709, - -0.11570741981267929, - 0.1545926034450531, - 0.044398095458745956, - 0.014608017168939114, - -0.09082023799419403, - -0.06231624633073807, - 0.09607076644897461, - -0.018600165843963623, - -0.08647225052118301, - -0.01390514150261879, - 0.05296076089143753, - 0.14547762274742126, - -0.02452581189572811, - -0.054665327072143555, - 0.03569508343935013, - 0.09698200225830078, - 0.07168664038181305, - 0.061679258942604065, - 0.09329447150230408, - 0.10733305662870407, - -0.030396249145269394, - 0.026943553239107132, - 0.03952915221452713, - 0.08464960753917694, - 0.0612327866256237, - -0.005286802537739277, - 0.01881735771894455, - -0.011168573051691055, - -0.016965147107839584, - -0.015385551378130913, - -0.024055443704128265, - -0.031704798340797424, - -0.00820000097155571, - 0.0071626221761107445, - 0.02996157482266426, - 0.022731129080057144, - -0.0473756417632103, - 0.06988761574029922, - 0.03998790681362152, - -0.021025387570261955, - 0.0691564679145813, - 0.02385052666068077, - 0.0004879394546151161, - 0.06089800223708153, - -0.10552428662776947, - -0.08132579922676086, - 0.05395034700632095, - 0.010697264224290848, - 0.041333168745040894, - 0.07342034578323364, - 0.05016401782631874, - -0.01877385377883911, - 0.12157661467790604, - 0.06947772204875946, - 0.004803154617547989, - 0.02142377942800522, - -0.07109080255031586, - 0.13085311651229858, - 0.10612626373767853, - -0.027801712974905968, - 0.06976963579654694, - -0.043461378663778305, - 0.07607149332761765, - 0.050334494560956955, - -0.1334487795829773, - -0.0855933129787445, - 0.0005198372527956963, - 0.0016730213537812233, - -0.00435918103903532, - 0.10285373032093048, - -0.017508653923869133, - 0.0595431849360466, - 0.0861605703830719, - -0.09845541417598724, - -0.04790602624416351, - -0.011123725213110447, - 0.05006946250796318, - -0.09202638268470764, - 0.06582152098417282, - 0.060340359807014465, - -0.013127563521265984, - 0.010660240426659584, - 0.06433922052383423, - -0.008391168899834156, - -8.185161277651787e-05, - 0.026775870472192764, - -0.03909194469451904, - 0.003920567687600851, - -0.014250450767576694, - -0.013476291671395302, - 0.044944800436496735, - 0.024158291518688202, - 0.053910691291093826, - -0.011822624132037163, - 0.0022026468068361282, - -0.12252455204725266, - 0.023967724293470383, - 0.040107645094394684, - 0.06133612245321274, - -0.01878652721643448, - -0.039683207869529724, - -0.0421222485601902, - -0.0647391751408577, - 0.026795582845807076, - 0.014656484127044678, - 0.06179057061672211, - -0.013332745991647243, - 0.0279209166765213, - 0.10027885437011719, - 0.04867444187402725, - -0.0032559907995164394, - -0.04472486302256584, - -0.027477780357003212, - 0.0199548602104187, - 0.058781616389751434, - -0.06735870242118835, - -0.0880742073059082, - -0.01830691657960415, - 0.015597738325595856, - -0.03948426619172096, - 0.07772333920001984, - 0.056880123913288116, - 0.018179992213845253, - 0.025067970156669617, - -0.050757184624671936, - 0.0135984281077981, - -0.08538985252380371, - -0.06018362566828728, - -0.010940629988908768, - -0.018102725967764854, - -0.045388177037239075, - 0.08171119540929794, - 0.046842060983181, - 0.07542505860328674, - -0.03924477845430374, - -0.03681180253624916, - -0.07686837017536163, - 0.040634848177433014, - 0.04490532726049423, - 0.0009370064362883568, - 0.038233280181884766, - 0.054543301463127136, - -0.011375145986676216, - 0.07440096884965897, - 0.07758422195911407, - 0.07506166398525238, - -0.024680450558662415, - 0.009687655605375767, - -0.05667247623205185, - 0.09242541342973709, - 0.09380477666854858, - -0.08070839196443558, - -0.10032813251018524, - -0.0528007373213768, - -0.08782586455345154, - 0.047522641718387604, - -0.012635288760066032, - 0.009085020050406456, - 0.04629762843251228, - -0.00791641604155302, - -0.09959010779857635, - -0.10159891843795776, - 0.09411372244358063, - -0.05321040377020836, - -0.005753286182880402, - -0.08195038139820099, - 0.04734867811203003, - 0.0924757719039917, - 0.021127838641405106, - -0.02258911356329918, - -0.018679888918995857, - 0.04119525104761124, - -0.028386883437633514, - 0.011035250499844551, - 0.06891360878944397, - 0.043381884694099426, - -0.10275459289550781, - 0.010195378214120865, - -0.06297419965267181, - 0.05426783859729767, - -0.03645864129066467, - 0.16502799093723297, - 0.01321455743163824, - -0.04021880403161049, - -0.07766009122133255, - 0.06149517372250557, - -0.03305260092020035, - 0.049475111067295074, - 0.038428179919719696, - 0.04784597083926201, - 0.04143907129764557, - -0.08937501907348633, - 0.09718994051218033, - 0.0493609681725502, - -0.06215425580739975, - -0.0791134238243103, - -0.06024787575006485, - -0.03535911440849304, - 0.0430782288312912, - 0.01140533946454525, - -0.07397814095020294, - -0.01946890540421009, - 0.02563999593257904, - 0.008153471164405346, - 0.06780000776052475, - 0.14000800251960754, - 0.054974816739559174, - -0.10458836704492569 - ] - }, - "p244_415.wav": { - "name": "p244", - "embedding": [ - 0.058067284524440765, - 0.0893227607011795, - -0.030312389135360718, - 0.04646793380379677, - -0.07127591222524643, - 0.04332885518670082, - -0.12645582854747772, - 0.1532977819442749, - -0.025171171873807907, - 0.11037133634090424, - -0.04186585918068886, - 0.14367029070854187, - -0.02286054939031601, - -0.1568336933851242, - -0.00952941458672285, - 0.06290179491043091, - -0.02803073823451996, - -0.03793657571077347, - -0.027420761063694954, - -0.02836836315691471, - 0.025234702974557877, - 0.03681153804063797, - 0.048528462648391724, - 0.004666874185204506, - 0.033877380192279816, - 0.07434079051017761, - 0.000545359100215137, - 0.04132701829075813, - 0.005177669692784548, - -0.0808003693819046, - -0.03775056451559067, - 0.05911478400230408, - -0.045480161905288696, - 0.0018779075471684337, - 0.043788984417915344, - -0.02096332050859928, - 0.009326329454779625, - -0.06752228736877441, - -0.03043370321393013, - 0.009451724588871002, - -0.028687600046396255, - 0.08782792836427689, - 0.023714181035757065, - -0.05109623819589615, - 0.03368489816784859, - 0.016965797170996666, - -0.012417862191796303, - -0.034621674567461014, - -0.1304643750190735, - 0.15918204188346863, - 0.06985440850257874, - 0.02254994958639145, - -0.07797078788280487, - -0.0716136246919632, - 0.10306482017040253, - -0.01833372190594673, - -0.0862683653831482, - -0.03610682860016823, - 0.04159664362668991, - 0.14838957786560059, - -0.03147515654563904, - -0.0333709716796875, - 0.04611481726169586, - 0.11668632924556732, - 0.08487186580896378, - 0.05578969419002533, - 0.0848270058631897, - 0.1147758811712265, - -0.0378837063908577, - 0.014784060418605804, - 0.04396802932024002, - 0.09811017662286758, - 0.05499691516160965, - 0.02712377905845642, - 0.012732685543596745, - -0.0035715075209736824, - -0.017779627814888954, - -0.030222231522202492, - -0.01923312246799469, - -0.03810152783989906, - -0.011781765148043633, - 0.028557024896144867, - 0.031861163675785065, - 0.035915203392505646, - -0.02787952683866024, - 0.08333998918533325, - 0.04314670339226723, - -0.036074694246053696, - 0.05345572531223297, - 0.010091962292790413, - -0.0012261332012712955, - 0.06143466383218765, - -0.09292957186698914, - -0.07938869297504425, - 0.0391998291015625, - 0.007879040203988552, - 0.04109611734747887, - 0.06540139019489288, - 0.03824850171804428, - -0.011523354798555374, - 0.12833857536315918, - 0.06414703279733658, - -0.008417329750955105, - 0.015326978638768196, - -0.06074152886867523, - 0.12265419960021973, - 0.09261180460453033, - -0.02315191552042961, - 0.0666816234588623, - -0.04495909810066223, - 0.05614197999238968, - 0.051403872668743134, - -0.13539981842041016, - -0.09437233954668045, - 0.013843344524502754, - 0.016391493380069733, - -0.0013717780821025372, - 0.1151512861251831, - 0.004831231199204922, - 0.08363498747348785, - 0.11100906878709793, - -0.09734444320201874, - -0.05176212638616562, - -0.017288226634263992, - 0.06478697806596756, - -0.07065464556217194, - 0.07043248414993286, - 0.07251787185668945, - -0.02083948627114296, - 0.013036048971116543, - 0.06383423507213593, - -0.005000622943043709, - 0.005346992984414101, - 0.029670171439647675, - -0.04830852150917053, - 0.0018671108409762383, - -0.023306110873818398, - -0.020518699660897255, - 0.05410680174827576, - 0.029584288597106934, - 0.042308881878852844, - -0.021279219537973404, - -0.012007934972643852, - -0.1413489580154419, - 0.020468702539801598, - 0.025663383305072784, - 0.08102765679359436, - -0.01640687882900238, - -0.04258911311626434, - -0.03528730571269989, - -0.05767165124416351, - -0.0024513958487659693, - 0.002797134220600128, - 0.06926766037940979, - -0.03796062618494034, - 0.026113150641322136, - 0.08327862620353699, - 0.03159724548459053, - 0.0011524453293532133, - -0.026547076180577278, - -0.030328424647450447, - 0.011921278201043606, - 0.0483260303735733, - -0.054908387362957, - -0.09149367362260818, - -0.02303958497941494, - 0.03207702189683914, - -0.03456190228462219, - 0.07238362729549408, - 0.03153205290436745, - 0.02135132998228073, - 0.014784670434892178, - -0.03967716544866562, - 0.009070847183465958, - -0.07512524724006653, - -0.06463807076215744, - -0.0033189565874636173, - -0.007927434518933296, - -0.05632192641496658, - 0.06921432912349701, - 0.05591483414173126, - 0.09423528611660004, - -0.02666090801358223, - -0.039530448615550995, - -0.08316946029663086, - 0.029457014054059982, - 0.03649041801691055, - -0.003669874044135213, - 0.0331098698079586, - 0.06503357738256454, - -0.0008020875975489616, - 0.060752056539058685, - 0.06747779995203018, - 0.06465288996696472, - -0.011219233274459839, - -0.004629882052540779, - -0.06862035393714905, - 0.10259202867746353, - 0.10305620729923248, - -0.07967409491539001, - -0.07247686386108398, - -0.05361294746398926, - -0.08480080962181091, - 0.031255416572093964, - -0.019485395401716232, - 0.026248019188642502, - 0.04815208166837692, - 0.0016986991977319121, - -0.11271826922893524, - -0.10436701774597168, - 0.08799659460783005, - -0.06697031855583191, - 0.008180145174264908, - -0.06587572395801544, - 0.03425324708223343, - 0.10831750929355621, - 0.028170038014650345, - -0.013335422612726688, - -0.03229941800236702, - 0.04446359723806381, - -0.017090871930122375, - 0.022185014560818672, - 0.08182848989963531, - 0.05815521627664566, - -0.10734014213085175, - 0.006630954798310995, - -0.05975199118256569, - 0.046057406812906265, - -0.030730079859495163, - 0.1507444679737091, - 0.025428546592593193, - -0.0332195870578289, - -0.100026436150074, - 0.0454246923327446, - -0.032541461288928986, - 0.07304184883832932, - 0.01367249060422182, - 0.057981640100479126, - 0.04804261028766632, - -0.07732157409191132, - 0.11484897881746292, - 0.05566709488630295, - -0.06280164420604706, - -0.07976042479276657, - -0.06635139137506485, - -0.03813374415040016, - 0.050071291625499725, - 0.017020627856254578, - -0.06796260178089142, - -0.029163800179958344, - 0.011476422660052776, - 0.002468606922775507, - 0.0651286318898201, - 0.15095466375350952, - 0.0551203116774559, - -0.1047293096780777 - ] - }, - "p244_015.wav": { - "name": "p244", - "embedding": [ - 0.04768791422247887, - 0.1038023978471756, - -0.008375261910259724, - 0.02361338585615158, - -0.04966993257403374, - 0.04966174438595772, - -0.13655820488929749, - 0.1499980390071869, - -0.03699888288974762, - 0.12817606329917908, - -0.07830827683210373, - 0.11906859278678894, - -0.03640062361955643, - -0.1703571379184723, - -0.038617633283138275, - 0.0552348867058754, - -0.040082044899463654, - -0.028848471119999886, - -0.02262851595878601, - -0.022506285458803177, - 0.03725938871502876, - 0.03424092382192612, - 0.02840529754757881, - 0.030595460906624794, - 0.011483050882816315, - 0.06076318025588989, - 0.003220993559807539, - 0.05165772885084152, - 0.02488390915095806, - -0.034632109105587006, - -0.02764706313610077, - 0.10113180428743362, - -0.031724605709314346, - 0.026377566158771515, - 0.05848006531596184, - 0.004901512060314417, - -0.00010101590305566788, - -0.060751866549253464, - -0.025395167991518974, - -0.009939974173903465, - -0.04935191199183464, - 0.0657394751906395, - 0.03179045766592026, - -0.025397110730409622, - 0.04179215058684349, - 0.030536971986293793, - -0.01239502802491188, - -0.04455961659550667, - -0.11052795499563217, - 0.15598750114440918, - 0.07115281373262405, - 0.00021465029567480087, - -0.0696483626961708, - -0.0649842619895935, - 0.10455935448408127, - -0.029638420790433884, - -0.11381565034389496, - -0.027551673352718353, - 0.08945506066083908, - 0.16281172633171082, - -0.03651569411158562, - -0.03665367141366005, - 0.028626572340726852, - 0.14046983420848846, - 0.05646975710988045, - 0.08372870087623596, - 0.08327992260456085, - 0.11525706946849823, - -0.03297501429915428, - 0.005391135346144438, - 0.05052007734775543, - 0.07390698790550232, - 0.056996751576662064, - 0.002330843359231949, - 0.010515816509723663, - 0.0046604713425040245, - -0.011606510728597641, - 0.016207868233323097, - -0.03990662842988968, - -0.025540757924318314, - -0.033042244613170624, - 0.012594479136168957, - -0.005486670881509781, - 0.017588326707482338, - -0.01607774943113327, - 0.06642503291368484, - 0.033493414521217346, - -0.0109384311363101, - 0.06355946511030197, - 0.03995100408792496, - 0.009713450446724892, - 0.06375499814748764, - -0.06752899289131165, - -0.07547534257173538, - 0.009767625480890274, - -0.011508455500006676, - 0.029611457139253616, - 0.07538942992687225, - 0.03697431460022926, - -0.009724915027618408, - 0.12485173344612122, - 0.047102976590394974, - -0.008874129503965378, - 0.025667879730463028, - -0.10017427802085876, - 0.12589143216609955, - 0.0819205492734909, - -0.0282256081700325, - 0.045261189341545105, - -0.04803197830915451, - 0.06286067515611649, - 0.07022027671337128, - -0.12824732065200806, - -0.07029028236865997, - 0.034385766834020615, - 0.037629384547472, - -0.012226099148392677, - 0.11054117977619171, - -0.002343215746805072, - 0.04066471382975578, - 0.10653765499591827, - -0.07831638306379318, - -0.05854064226150513, - -0.026472916826605797, - 0.047836773097515106, - -0.06946991384029388, - 0.05861261487007141, - 0.05053884908556938, - -0.003966029733419418, - 0.007339124102145433, - 0.08144031465053558, - -0.008454571478068829, - -0.0008470308966934681, - 0.015244506299495697, - -0.06007556989789009, - 0.006225106306374073, - -0.03031955100595951, - 0.000731293112039566, - 0.030719637870788574, - 0.05225618928670883, - 0.037865765392780304, - 0.010966302827000618, - -0.04077623784542084, - -0.11998993903398514, - 0.0026885599363595247, - 0.04770486801862717, - 0.09139063954353333, - -0.0013836813159286976, - -0.0351170152425766, - -0.032790206372737885, - -0.041779905557632446, - 0.0065431976690888405, - -0.011324722319841385, - 0.06559690833091736, - -0.04281152784824371, - -0.0033611564431339502, - 0.09369189292192459, - 0.014679024927318096, - -0.005216902121901512, - -0.055509135127067566, - -0.02560071274638176, - 0.002007425297051668, - 0.04050833359360695, - -0.07383427023887634, - -0.08304480463266373, - -0.0002447531442157924, - 0.041305284947156906, - -0.02455410361289978, - 0.058123134076595306, - 0.032818008214235306, - 0.00947754830121994, - 0.03128841519355774, - -0.0596349872648716, - 0.004870274104177952, - -0.11454420536756516, - -0.08269444108009338, - -0.000829013530164957, - 0.00200573168694973, - -0.0019308160990476608, - 0.06140463799238205, - 0.02870461903512478, - 0.05767691880464554, - 0.0036675629671663046, - -0.07797309756278992, - -0.08698533475399017, - 0.0574752539396286, - 0.0593416765332222, - 0.006689848378300667, - 0.05444847047328949, - 0.06600314378738403, - -0.03726369887590408, - 0.06448431313037872, - 0.05622803419828415, - 0.09721706062555313, - -0.028397785499691963, - 0.014910204336047173, - -0.07911734282970428, - 0.06420159339904785, - 0.08964196592569351, - -0.09473291039466858, - -0.08922693878412247, - -0.03390422463417053, - -0.058025240898132324, - 0.025755729526281357, - -0.022725708782672882, - 0.013013463467359543, - 0.02353849448263645, - -0.00919348280876875, - -0.10230857878923416, - -0.09148150682449341, - 0.08303786814212799, - -0.07841156423091888, - 0.005270365159958601, - -0.06845597922801971, - 0.04583996906876564, - 0.1019999161362648, - 0.030643977224826813, - -0.024208730086684227, - -0.011073879897594452, - 0.044817790389060974, - -0.04460766911506653, - -0.0075659602880477905, - 0.04045931622385979, - 0.03475702553987503, - -0.10747605562210083, - 0.01045961119234562, - -0.07758840918540955, - 0.05325476452708244, - -0.04263392463326454, - 0.15609893202781677, - 0.0094844875857234, - -0.06034635007381439, - -0.08462570607662201, - 0.021879073232412338, - -0.02535025030374527, - 0.050990503281354904, - 0.023496998474001884, - 0.0638401210308075, - 0.022477077320218086, - -0.06755144894123077, - 0.12847772240638733, - 0.043955229222774506, - -0.05313151329755783, - -0.0669863373041153, - -0.05408445745706558, - -0.042849231511354446, - 0.019862400367856026, - 0.008999675512313843, - -0.08073919266462326, - -0.041148602962493896, - 0.007624457590281963, - -0.022051235660910606, - 0.07023415714502335, - 0.1460942178964615, - 0.06400677561759949, - -0.11963648349046707 - ] - }, - "p244_032.wav": { - "name": "p244", - "embedding": [ - -0.01188711915165186, - 0.06625522673130035, - -0.00831049308180809, - -0.004781907424330711, - -0.052668534219264984, - -0.0048242006450891495, - -0.11836540699005127, - 0.08616682142019272, - -0.04351551830768585, - 0.1175503134727478, - -0.05088035762310028, - 0.09620077908039093, - -0.061810627579689026, - -0.10452895611524582, - 0.01632961817085743, - 0.042015574872493744, - 0.005897304974496365, - -0.03409339860081673, - 0.027958499267697334, - -0.0645514577627182, - 0.03647718206048012, - 0.030470484867691994, - 0.030655601993203163, - -0.01934850588440895, - 0.003906670957803726, - 0.10976450890302658, - -0.00640774006024003, - -0.0059716845862567425, - -0.02210822142660618, - -0.06405752152204514, - -0.019168052822351456, - 0.058570604771375656, - -0.04099530354142189, - -0.03509947657585144, - 0.017616426572203636, - 0.005466646980494261, - -0.01976843550801277, - 0.00806850753724575, - 0.013202630914747715, - 0.020887523889541626, - -0.10191480070352554, - 0.07419765740633011, - 0.014681350439786911, - -0.028000010177493095, - 0.04671332985162735, - -0.027274053543806076, - -0.009805994108319283, - 0.05115870013833046, - -0.05446751415729523, - 0.07528532296419144, - 0.056024834513664246, - 0.02607259340584278, - -0.0389796607196331, - -0.005889305844902992, - 0.0819193422794342, - -0.0019398597069084644, - -0.10414610803127289, - -0.0556391105055809, - 0.03510364517569542, - 0.08774062991142273, - -0.020911961793899536, - -0.03733760491013527, - 0.03289172425866127, - 0.043754030019044876, - 0.02807454764842987, - 0.053819455206394196, - 0.079327292740345, - 0.04505787044763565, - 0.01673889346420765, - -0.043045904487371445, - 0.04236074909567833, - 0.08083927631378174, - 0.017340268939733505, - -0.01643211580812931, - 0.005147438496351242, - -0.01772492378950119, - -0.0033138245344161987, - -0.023161349818110466, - 0.0021698414348065853, - -0.04750949889421463, - -0.07763303816318512, - -0.010324839502573013, - -0.01793944649398327, - -0.017057523131370544, - 0.0038300591986626387, - 0.011483555659651756, - 0.0899091362953186, - -0.015438033267855644, - 0.07464599609375, - 0.021847082301974297, - -0.03105020895600319, - 0.024164939299225807, - -0.0552210807800293, - 0.02267400547862053, - -0.032534364610910416, - 0.0014012441970407963, - 0.07328041642904282, - 0.07513455301523209, - 0.018158914521336555, - 0.05976384878158569, - 0.07564116269350052, - 0.04120542109012604, - 0.03481660783290863, - -0.01308203674852848, - -0.10204945504665375, - 0.09059125185012817, - 0.08239862322807312, - -0.052623942494392395, - 0.02987281233072281, - 0.009111860767006874, - 0.019559646025300026, - -0.007728610187768936, - -0.04271340370178223, - -0.038701750338077545, - -0.028318999335169792, - 0.01738334447145462, - -0.009474573656916618, - 0.10328489542007446, - 0.008171099238097668, - 0.013271029107272625, - 0.10169035941362381, - -0.06226537749171257, - -0.09379822760820389, - -0.04555366188287735, - 0.006536991335451603, - -0.09034588932991028, - 0.0816916897892952, - 0.08206852525472641, - 0.025976384058594704, - 0.05753330886363983, - 0.10056596994400024, - 0.04490719735622406, - 0.028951425105333328, - -0.012007491663098335, - -0.0375346876680851, - -0.02729448676109314, - -0.0016618762165307999, - 0.03772684186697006, - 0.09772370010614395, - 0.022057216614484787, - 0.11797572672367096, - 0.017297696322202682, - 0.03930283337831497, - -0.08895692229270935, - -0.0028343163430690765, - 0.052743859589099884, - -0.005000583827495575, - -0.04438042640686035, - -0.057568684220314026, - -0.02071535773575306, - -0.0772814080119133, - -0.02856944128870964, - -0.015664374455809593, - 0.10269123315811157, - -0.02886970527470112, - 0.002438697963953018, - 0.10477792471647263, - 0.03162193298339844, - -0.035482730716466904, - -0.0743105486035347, - -0.027705896645784378, - -0.030887611210346222, - 0.03420909866690636, - -0.12244793772697449, - -0.08316662907600403, - -0.06264621019363403, - 0.056584492325782776, - 0.024196021258831024, - 0.0590653121471405, - 0.08234939724206924, - -0.0035608764737844467, - 0.024543220177292824, - -0.0035933051258325577, - 0.041111912578344345, - -0.0173359178006649, - -0.07775815576314926, - -0.03748437762260437, - -0.0736989974975586, - -0.055103011429309845, - 0.09780008345842361, - -0.02854042686522007, - 0.05790594220161438, - -0.005274574272334576, - -0.07474908232688904, - -0.09095799922943115, - 0.01939188688993454, - 0.009807697497308254, - -0.03281751275062561, - 0.034140028059482574, - 0.045652925968170166, - -0.07827167212963104, - 0.00867852196097374, - 0.027385763823986053, - 0.10019810497760773, - -0.08702340722084045, - 0.020692003890872, - -0.0337986946105957, - 0.037198178470134735, - 0.07832574844360352, - -0.056864477694034576, - -0.03808499872684479, - -0.0748356282711029, - -0.0433616116642952, - 0.0624387264251709, - -0.02401670813560486, - -0.003761251224204898, - -0.028872497379779816, - -0.010717782191932201, - -0.06464382261037827, - -0.08557192981243134, - 0.05694718658924103, - -0.0225386805832386, - -0.0021352171897888184, - -0.07006906718015671, - 0.00639671366661787, - -0.028113337233662605, - 0.07894715666770935, - -0.03238864988088608, - 0.04183259978890419, - 0.03258354961872101, - -0.027144934982061386, - 0.043469663709402084, - 0.10967309772968292, - 0.07313565909862518, - 0.04370087385177612, - -0.06198803335428238, - -0.09775716066360474, - 0.04039975255727768, - -0.013393670320510864, - 0.08587761968374252, - 0.003024713834747672, - -0.0345228835940361, - -0.03793001174926758, - -0.007078884169459343, - -0.009705470874905586, - 0.011357232928276062, - 0.08665861189365387, - 0.08444835245609283, - 0.017336489632725716, - -0.025160761550068855, - 0.09940199553966522, - 0.05023011937737465, - 0.019195787608623505, - -0.03249872103333473, - -0.007951718755066395, - -0.052655283361673355, - 0.02440662682056427, - 0.017055300995707512, - -0.09439820796251297, - 0.052865300327539444, - -0.014228131622076035, - 0.045272815972566605, - 0.06708119809627533, - 0.07031679153442383, - 0.06069574132561684, - -0.077654629945755 - ] - }, - "p244_269.wav": { - "name": "p244", - "embedding": [ - 0.043188270181417465, - 0.06754006445407867, - -0.0046090250834822655, - 0.03543921187520027, - -0.00901294406503439, - 0.016896938905119896, - -0.17503750324249268, - 0.1317102611064911, - -0.016218213364481926, - 0.11818666756153107, - -0.07899683713912964, - 0.0836830735206604, - -0.03136177733540535, - -0.18524695932865143, - -0.023374861106276512, - 0.0700950101017952, - -0.0433889776468277, - -0.04634470120072365, - -0.014967952854931355, - -0.019687380641698837, - 0.025393595919013023, - 0.05063102766871452, - 0.017916766926646233, - 0.04127265140414238, - 0.012588636949658394, - 0.05260131508111954, - -0.008248372934758663, - 0.04324382171034813, - 0.011535861529409885, - -0.011157146655023098, - 0.00830159243196249, - 0.09009288251399994, - -0.008959900587797165, - -0.012100247666239738, - 0.04191485419869423, - 0.02804763987660408, - 0.015345752239227295, - -0.08738559484481812, - -0.04963134601712227, - -0.013319544494152069, - -0.08665508776903152, - 0.06355902552604675, - 0.0249958299100399, - -0.044417623430490494, - 0.049563728272914886, - 0.014120201580226421, - -0.02172059938311577, - -0.05984076112508774, - -0.13904255628585815, - 0.15283802151679993, - 0.07860483974218369, - 0.05056928098201752, - -0.07592335343360901, - -0.06460545212030411, - 0.10170937329530716, - -0.015339731238782406, - -0.07761327922344208, - -0.033291544765233994, - 0.0715920701622963, - 0.19502979516983032, - -0.03760373592376709, - -0.020331304520368576, - 0.0625385195016861, - 0.11397353559732437, - 0.07562453299760818, - 0.0665394514799118, - 0.08445276319980621, - 0.09562565386295319, - -0.004549246747046709, - -0.018947312608361244, - 0.058560777455568314, - 0.07362554967403412, - 0.05120028555393219, - -0.009791478514671326, - -0.006725577637553215, - 0.0453454926609993, - -0.0548599474132061, - -0.0026478907093405724, - -0.019585244357585907, - -0.013843489810824394, - 0.00030223093926906586, - 0.011205877177417278, - -0.003757013939321041, - 0.04755447804927826, - -0.03764592483639717, - 0.044770389795303345, - 0.028700197115540504, - -0.04432448744773865, - 0.07111864537000656, - 0.003461036831140518, - -0.003499911166727543, - 0.04571731016039848, - -0.060762062668800354, - -0.06865407526493073, - 0.00071398273576051, - 0.004833770915865898, - -0.01154659129679203, - 0.06705448031425476, - 0.05232331156730652, - -0.037748683243989944, - 0.14481626451015472, - 0.026373064145445824, - -0.0021234648302197456, - 0.03736547753214836, - -0.09914448857307434, - 0.08727934956550598, - 0.07670259475708008, - -0.04015442356467247, - 0.054956886917352676, - -0.025876769796013832, - 0.02189938724040985, - 0.08436337113380432, - -0.13968423008918762, - -0.05992065370082855, - 0.07738327234983444, - 0.05129336938261986, - 0.020247388631105423, - 0.13317638635635376, - 0.03032919391989708, - 0.046734005212783813, - 0.10777594149112701, - -0.0812952071428299, - -0.07100014388561249, - -0.023438122123479843, - 0.08249648660421371, - -0.0684526115655899, - 0.07754072546958923, - 0.051120027899742126, - -0.003098198212683201, - -0.013298695906996727, - 0.0563349686563015, - -0.010315867140889168, - -0.014417883940041065, - -0.043545931577682495, - -0.02614917978644371, - 0.03231782093644142, - -0.0559900626540184, - -0.025218794122338295, - 0.029969472438097, - 0.038159675896167755, - 0.01856156624853611, - 0.031086310744285583, - -0.05751354992389679, - -0.14432883262634277, - -0.00914852600544691, - 0.047526322305202484, - 0.12105955183506012, - 0.001871981774456799, - -0.03011206164956093, - -0.07796687632799149, - -0.028393574059009552, - -0.006057681515812874, - -0.03213135153055191, - 0.0854203850030899, - -0.019392486661672592, - 0.01712975651025772, - 0.0738794356584549, - -0.028170831501483917, - 0.017100265249609947, - -0.013195020146667957, - -0.006544120144098997, - 0.00022461963817477226, - 0.02575882524251938, - -0.03552587702870369, - -0.08761981129646301, - -0.006609617732465267, - 0.04760165512561798, - -0.012265356257557869, - 0.04584185406565666, - -0.008293370716273785, - 0.02469658851623535, - -0.006775896996259689, - -0.0814058929681778, - 0.01850796677172184, - -0.10996183753013611, - -0.06694521754980087, - 0.010238923132419586, - 0.02293381839990616, - -0.005405546631664038, - 0.07504110783338547, - 0.04271293431520462, - 0.05312616750597954, - -0.012783853337168694, - -0.09331725537776947, - -0.08945153653621674, - 0.04453081637620926, - 0.07193391025066376, - -0.006654529832303524, - 0.028781499713659286, - 0.053874991834163666, - -0.0065183802507817745, - 0.043916866183280945, - 0.05222728103399277, - 0.0969514325261116, - 0.012298735789954662, - -0.012213082984089851, - -0.05426079407334328, - 0.08864711225032806, - 0.08832566440105438, - -0.06675060093402863, - -0.06448246538639069, - -0.01771804317831993, - -0.0857917070388794, - 0.02745750918984413, - 0.005977815482765436, - 0.03675169497728348, - 0.014475969597697258, - -0.03921148180961609, - -0.1100311353802681, - -0.08065205812454224, - 0.05797690898180008, - -0.07158307731151581, - -0.025568712502717972, - -0.06325100362300873, - 0.03438715264201164, - 0.09574148058891296, - 0.02740497514605522, - 0.012809514999389648, - -0.03570249304175377, - 0.014045970514416695, - -0.059785354882478714, - -0.019405698403716087, - 0.0686202123761177, - 0.0145002081990242, - -0.1368439942598343, - 0.019005727022886276, - -0.08088831603527069, - 0.08610788732767105, - -0.039045244455337524, - 0.11963413655757904, - 0.0189470537006855, - -0.04442707449197769, - -0.11223796010017395, - 0.00230557844042778, - 0.0001906536053866148, - 0.0760858952999115, - 0.004620065912604332, - 0.06601983308792114, - 0.05221652239561081, - -0.05759742483496666, - 0.09414134919643402, - 0.055526018142700195, - -0.027415843680500984, - -0.07023858278989792, - -0.0772908478975296, - -0.03206964209675789, - 0.00921714399009943, - -0.017963599413633347, - -0.053240980952978134, - -0.031061403453350067, - 0.0010671745985746384, - -0.020833026617765427, - 0.051593609154224396, - 0.12104552984237671, - 0.04042566195130348, - -0.13464613258838654 - ] - }, - "p244_037.wav": { - "name": "p244", - "embedding": [ - 0.04609669744968414, - 0.09222640097141266, - -0.021580945700407028, - -0.007860828191041946, - -0.061783574521541595, - 0.06006797030568123, - -0.13974528014659882, - 0.1572941690683365, - -0.01893703080713749, - 0.15708225965499878, - -0.04577142745256424, - 0.11284228414297104, - -0.018952466547489166, - -0.16305415332317352, - 0.016773587092757225, - 0.03552253544330597, - -0.025087224319577217, - -0.009207624942064285, - -0.04919926077127457, - -0.0416649729013443, - 0.03713240846991539, - 0.05016947537660599, - 0.0034473116975277662, - -0.04233551770448685, - 0.04089212790131569, - 0.06757853925228119, - -0.01526365801692009, - 0.014758951961994171, - -0.020787740126252174, - -0.09067264199256897, - -0.029084565117955208, - 0.0824318379163742, - -0.07493158429861069, - 0.02193271741271019, - 0.04490305483341217, - -0.033598922193050385, - -0.02999694272875786, - -0.048222094774246216, - -0.016400400549173355, - 0.026411881670355797, - -0.030350323766469955, - 0.07466590404510498, - 0.031496476382017136, - -0.013369981199502945, - 0.034805312752723694, - 0.02624635025858879, - 0.010254791006445885, - -0.05790404975414276, - -0.08454491198062897, - 0.17806588113307953, - 0.06169036775827408, - -0.010130185633897781, - -0.07536923140287399, - -0.06999798119068146, - 0.07886391878128052, - -0.010923977941274643, - -0.10704685747623444, - -0.035509947687387466, - 0.06493796408176422, - 0.1167929470539093, - -0.03196975216269493, - -0.05899728834629059, - 0.036019884049892426, - 0.09695275872945786, - 0.033059410750865936, - 0.08582562953233719, - 0.08032701909542084, - 0.10065419971942902, - -0.0390830934047699, - 0.018514294177293777, - 0.02781863324344158, - 0.06818731129169464, - 0.06486813724040985, - -0.0036366276908665895, - 0.035354167222976685, - -0.01616598106920719, - -0.006658309139311314, - -0.02056843973696232, - -0.02860332280397415, - -0.02609509788453579, - 0.005031350534409285, - 0.03522000461816788, - 0.034547239542007446, - 0.02819076180458069, - -0.01877441443502903, - 0.04965593293309212, - 0.045803338289260864, - -0.005627406761050224, - 0.06998837739229202, - 0.02237764373421669, - 0.0272560752928257, - 0.06686674803495407, - -0.10932575166225433, - -0.07156263291835785, - 0.047745078802108765, - -0.0029689257498830557, - 0.023999961093068123, - 0.07677839696407318, - 0.037881746888160706, - -0.005913769826292992, - 0.12067724019289017, - 0.04483922943472862, - -0.004491080529987812, - 0.014486407861113548, - -0.08959780633449554, - 0.13031843304634094, - 0.08334760367870331, - -0.03728418052196503, - 0.06964993476867676, - -0.09102222323417664, - 0.08135947585105896, - 0.033127930015325546, - -0.13510015606880188, - -0.08155511319637299, - 0.009679942391812801, - 0.013115852139890194, - -0.03724256902933121, - 0.1454598307609558, - -0.0009383014403283596, - 0.046949610114097595, - 0.11815674602985382, - -0.11829824000597, - -0.05062666907906532, - -0.0031384832691401243, - 0.05140610784292221, - -0.09652836620807648, - 0.05646078288555145, - 0.057847727090120316, - -0.033176254481077194, - 0.05630228668451309, - 0.08088172227144241, - -0.00880347564816475, - 0.03843264654278755, - -0.0032733329571783543, - -0.019882170483469963, - -0.00621398352086544, - -0.02687975764274597, - -0.009145697578787804, - 0.009932249784469604, - 0.04096008837223053, - 0.060400865972042084, - -0.01653945818543434, - -0.036286938935518265, - -0.12436745315790176, - 0.028956200927495956, - 0.023186005651950836, - 0.0665820837020874, - -0.026146600022912025, - -0.01369603630155325, - -0.02332121506333351, - -0.08666503429412842, - -0.014629652723670006, - -0.008633685298264027, - 0.052349481731653214, - -0.017126744613051414, - 0.013444039970636368, - 0.10813011229038239, - 0.08143388479948044, - -0.001739000785164535, - -0.055203285068273544, - -0.04999531805515289, - -0.003291212022304535, - 0.05781901627779007, - -0.08451740443706512, - -0.08357247710227966, - -0.026935193687677383, - 0.017547722905874252, - -0.015352196991443634, - 0.07713228464126587, - 0.0567568838596344, - 0.031177904456853867, - 0.03036363795399666, - -0.0856899619102478, - 0.0108160600066185, - -0.09755423665046692, - -0.0910363644361496, - -0.0035922054667025805, - -0.02248934842646122, - -0.034227244555950165, - 0.09109952300786972, - -0.0031366595067083836, - 0.058473341166973114, - -0.04336543381214142, - -0.03557639569044113, - -0.07899877429008484, - 0.044662900269031525, - 0.053626999258995056, - -0.03456380218267441, - 0.027364976704120636, - 0.052126195281744, - -0.03719847649335861, - 0.04360978305339813, - 0.07095316797494888, - 0.10449156165122986, - -0.028690554201602936, - 0.040072932839393616, - -0.06536900997161865, - 0.10065025091171265, - 0.08322034031152725, - -0.06778895854949951, - -0.08254542946815491, - -0.029918517917394638, - -0.08285269141197205, - 0.013713628053665161, - -0.020251410081982613, - 0.008273718878626823, - 0.014594011008739471, - 0.018047023564577103, - -0.08213038742542267, - -0.06951283663511276, - 0.06144186854362488, - -0.05227737873792648, - 0.003920239396393299, - -0.08412112295627594, - 0.058473143726587296, - 0.10167743265628815, - 0.06815382093191147, - -0.03507998585700989, - -0.043486788868904114, - 0.04966083914041519, - -0.010655608028173447, - 0.037047214806079865, - 0.05253640562295914, - 0.062124013900756836, - -0.0771397203207016, - 0.014247935265302658, - -0.06520361453294754, - 0.02729090303182602, - -0.044595688581466675, - 0.14254812896251678, - 0.02001035213470459, - -0.06780388951301575, - -0.08250142633914948, - 0.049276575446128845, - -0.015911217778921127, - 0.03274648264050484, - 0.005543240811675787, - 0.056914784014225006, - 0.08050018548965454, - -0.06584154069423676, - 0.10323192179203033, - 0.037204086780548096, - -0.0305505208671093, - -0.04460560530424118, - -0.0715683251619339, - -0.033582091331481934, - 0.03321485593914986, - 0.01046678051352501, - -0.09335173666477203, - -0.021143507212400436, - 0.022524219006299973, - 0.015885308384895325, - 0.05675407499074936, - 0.13817960023880005, - 0.05248038470745087, - -0.143670916557312 - ] - }, - "p244_393.wav": { - "name": "p244", - "embedding": [ - 0.05530662089586258, - 0.1088857501745224, - 0.008988786488771439, - 0.01784309186041355, - -0.030639272183179855, - 0.07027558982372284, - -0.10097402334213257, - 0.1023658961057663, - -0.0766238421201706, - 0.16351431608200073, - -0.10559310019016266, - 0.10644276440143585, - -0.02578745223581791, - -0.1821451485157013, - -0.03532141447067261, - 0.059792470186948776, - -0.0461631715297699, - 0.01539262942969799, - -0.046933915466070175, - 0.01586638204753399, - 0.04203175753355026, - 0.01844155415892601, - 0.046235255897045135, - -0.022742722183465958, - 0.02208073064684868, - 0.05181122571229935, - 0.01358347199857235, - 0.06403128057718277, - 0.03775842860341072, - -0.06724154949188232, - -0.0505983792245388, - 0.1335136890411377, - -0.030034013092517853, - 0.037271201610565186, - 0.07619142532348633, - 0.0005601946031674743, - -0.00622314028441906, - -0.06347787380218506, - -0.0028285153675824404, - -0.02228790894150734, - -0.03871477395296097, - 0.05279888957738876, - 0.007102621719241142, - -0.0027087335474789143, - 0.050753604620695114, - 0.026941947638988495, - -0.03679877519607544, - -0.04683280736207962, - -0.06946438550949097, - 0.13554079830646515, - 0.06651115417480469, - -0.0076645174995064735, - -0.055342089384794235, - -0.0814715325832367, - 0.09769266843795776, - -0.006122160237282515, - -0.1286291927099228, - -0.03884165734052658, - 0.08187872171401978, - 0.15789306163787842, - -0.01255965419113636, - -0.01965622790157795, - 0.000936754746362567, - 0.11203307658433914, - 0.013742724433541298, - 0.13842903077602386, - 0.047786012291908264, - 0.07087390124797821, - 0.030398428440093994, - 0.07165579497814178, - 0.053150005638599396, - 0.05984397977590561, - 0.029337119311094284, - -0.03959588706493378, - 0.03824008256196976, - -0.0011095469817519188, - -0.055469684302806854, - 0.03651096299290657, - -0.016719479113817215, - -0.002931940369307995, - -0.02610219642519951, - -0.010150215588510036, - 0.000319132290314883, - -0.029345188289880753, - -0.01799951121211052, - 0.03866168111562729, - -0.00132135977037251, - 0.002645906526595354, - 0.06611339002847672, - 0.0475812666118145, - -0.0018685436807572842, - 0.04292016848921776, - -0.05228336900472641, - -0.11982500553131104, - 0.005134557839483023, - 0.024468548595905304, - -0.013861969113349915, - 0.07783159613609314, - 0.03244499862194061, - -0.027328571304678917, - 0.08965101838111877, - 0.05981936305761337, - 0.013851205818355083, - 0.03916709125041962, - -0.10425898432731628, - 0.11276708543300629, - 0.07240784913301468, - -0.007321341894567013, - 0.03561032935976982, - -0.04126888886094093, - 0.1098979264497757, - 0.11309238523244858, - -0.1570119857788086, - -0.0599294975399971, - 0.009163441136479378, - -0.044725172221660614, - -0.011734546162188053, - 0.07368879020214081, - -0.02177392691373825, - -0.01804506964981556, - 0.09623777866363525, - -0.08770816028118134, - -0.08303876966238022, - -0.036671463400125504, - 0.03571299463510513, - -0.09542216360569, - 0.05138307809829712, - 0.013270329684019089, - -0.016620106995105743, - -0.021379929035902023, - 0.09141936898231506, - -0.0257705245167017, - 0.0022647941950708628, - 0.03724340721964836, - -0.05840606242418289, - 0.03802359104156494, - -0.07776792347431183, - 0.024501170963048935, - 0.048821136355400085, - 0.039485346525907516, - 0.04355578124523163, - -0.003665660973638296, - -0.02845750004053116, - -0.07236877083778381, - 0.0011151626240462065, - 0.05966826528310776, - 0.038260750472545624, - 0.002763192867860198, - -0.015233759768307209, - -0.03216845542192459, - -0.0736001506447792, - 0.03771291673183441, - -0.037575677037239075, - 0.0781431645154953, - 0.019384153187274933, - 0.012083210051059723, - 0.10935518145561218, - -0.000770034734159708, - -0.004057230893522501, - -0.0916900783777237, - -0.03057168610394001, - 0.052336398512125015, - 0.051838260143995285, - -0.09908740222454071, - -0.04938942939043045, - 0.03215978294610977, - -0.009341701865196228, - -0.01763584464788437, - 0.004455825313925743, - 0.0385122187435627, - 0.012533154338598251, - 0.051012393087148666, - -0.08356431126594543, - 0.018377896398305893, - -0.12244333326816559, - -0.06145000457763672, - -0.040509212762117386, - -0.049166321754455566, - 0.014641071669757366, - 0.07391637563705444, - -0.011827418580651283, - -0.01098037138581276, - 0.010094106197357178, - -0.08562122285366058, - -0.07483024895191193, - 0.09132589399814606, - 0.09051018208265305, - 0.019135357812047005, - 0.06368987262248993, - 0.025856012478470802, - -0.052498724311590195, - 0.04427434504032135, - 0.03813819959759712, - 0.101869598031044, - -0.01590631902217865, - 0.01648394949734211, - -0.07157225906848907, - 0.06433074176311493, - 0.09952537715435028, - -0.1102757602930069, - -0.10353618115186691, - -0.0224351417273283, - -0.042653314769268036, - 0.061965398490428925, - -0.029270488768815994, - -0.03451372683048248, - 0.027202606201171875, - -0.03634292632341385, - -0.08256484568119049, - -0.07669669389724731, - 0.1102551817893982, - -0.05407509207725525, - -0.04677741229534149, - -0.0627153068780899, - 0.048075832426548004, - 0.05095774307847023, - 0.04005669802427292, - -0.041475966572761536, - 0.026560351252555847, - 0.06449370086193085, - -0.0905550867319107, - -0.03770618885755539, - 0.024762704968452454, - -0.01287880726158619, - -0.07591540366411209, - 0.036659061908721924, - -0.06936539709568024, - 0.0742499977350235, - -0.09778933227062225, - 0.16195210814476013, - -0.04923267662525177, - -0.07773558050394058, - -0.07250361144542694, - 0.04834870994091034, - -0.014704234898090363, - 0.005917171016335487, - 0.05249428376555443, - 0.0451120063662529, - 0.010318396613001823, - -0.09057088196277618, - 0.11524202674627304, - -0.0012188596883788705, - 0.016066759824752808, - -0.0481545627117157, - -0.026720672845840454, - -0.06104463338851929, - 0.004469484090805054, - -0.009005793370306492, - -0.11097265779972076, - 0.01585230976343155, - 0.013256056234240532, - -0.030193552374839783, - 0.05704198032617569, - 0.13108649849891663, - 0.05106084793806076, - -0.10437096655368805 - ] - }, - "p244_195.wav": { - "name": "p244", - "embedding": [ - 0.04827830195426941, - 0.1026773452758789, - -0.01689162105321884, - 0.008859441615641117, - -0.053340598940849304, - 0.09638083726167679, - -0.0787772461771965, - 0.06287100166082382, - -0.08969427645206451, - 0.14988696575164795, - -0.10372394323348999, - 0.10696819424629211, - -0.026919838041067123, - -0.1417953073978424, - -0.07515859603881836, - 0.023175358772277832, - -0.052820585668087006, - 0.004614276811480522, - -0.0941750705242157, - -0.022364124655723572, - 0.04345572367310524, - 0.028496183454990387, - 0.06338748335838318, - -0.06624269485473633, - 0.05804012715816498, - 0.0455804280936718, - 0.014261881820857525, - 0.03877191245555878, - 0.021478688344359398, - -0.08018092811107635, - -0.05144444853067398, - 0.12878336012363434, - -0.041159532964229584, - 5.4697273299098015e-05, - 0.026911098510026932, - 0.011828627437353134, - 0.020086782053112984, - -0.06743556261062622, - -0.01238650269806385, - 0.026590799912810326, - -0.006153291091322899, - 0.055473826825618744, - -0.0046122707426548, - -0.024382077157497406, - 0.03174358606338501, - -0.010593142360448837, - -0.0375235341489315, - -0.03798094019293785, - -0.07185395807027817, - 0.1392531394958496, - 0.013006547465920448, - 0.0051694344729185104, - -0.09977493435144424, - -0.08611531555652618, - 0.12495452165603638, - -0.013304970227181911, - -0.10877165198326111, - -0.02003926783800125, - 0.04133256524801254, - 0.16522929072380066, - -0.02026687189936638, - -0.023397861048579216, - 0.020558368414640427, - 0.05235397070646286, - 0.02622240036725998, - 0.08548520505428314, - 0.09239251911640167, - 0.05220084264874458, - 0.034933604300022125, - 0.06399345397949219, - 0.05254298821091652, - 0.05128464102745056, - 0.03251422941684723, - -0.05417541787028313, - 0.04583678022027016, - -0.022759929299354553, - -0.03942933678627014, - 0.021520845592021942, - -0.03069712594151497, - -0.023581866174936295, - -0.006994626484811306, - -0.009042274206876755, - 0.03154977783560753, - -0.0341607928276062, - -0.08512470126152039, - 0.03482208028435707, - 0.0014998046681284904, - -0.019316941499710083, - 0.06912466883659363, - 0.06364008039236069, - -0.013631962239742279, - 0.02291388250887394, - -0.04950866475701332, - -0.12543661892414093, - 0.007727420423179865, - 0.020109748467803, - -0.02706182189285755, - 0.04560813307762146, - 0.04506213963031769, - -0.031866759061813354, - 0.07338059693574905, - 0.07352188974618912, - 0.020141100510954857, - 0.03188269957900047, - -0.09585852921009064, - 0.09127768874168396, - 0.11855800449848175, - -0.004327746573835611, - 0.02535541169345379, - 0.003577028401196003, - 0.08735962212085724, - 0.0874512791633606, - -0.12125638872385025, - -0.08865316957235336, - -0.0029713171534240246, - -0.05501050874590874, - 0.026011072099208832, - 0.052746064960956573, - -0.041187748312950134, - -0.026186328381299973, - 0.07902298867702484, - -0.06251072138547897, - -0.04418815299868584, - -0.030518215149641037, - 0.026305746287107468, - -0.04918249323964119, - 0.023371178656816483, - 0.02602410316467285, - -0.0003217114135622978, - -0.04035555198788643, - 0.06755928695201874, - -0.012393257580697536, - 0.013387958519160748, - 0.03462494909763336, - -0.03782178461551666, - 0.049526944756507874, - -0.025624113157391548, - -0.01968296989798546, - 0.10213899612426758, - 0.07237976789474487, - 0.05314534902572632, - -0.014990391209721565, - -0.00989020150154829, - -0.057128746062517166, - 0.017620353028178215, - 0.050104714930057526, - 0.01121944934129715, - -0.004682846367359161, - 0.019977612420916557, - -0.053008489310741425, - -0.08430016040802002, - 0.07264824956655502, - -0.0054061030969023705, - 0.12139920890331268, - 0.030680332332849503, - 0.014131243340671062, - 0.12432843446731567, - 0.002406906569376588, - -0.021691888570785522, - -0.044126734137535095, - 0.0058551691472530365, - 0.050916217267513275, - 0.045913346111774445, - -0.05325181037187576, - -0.06442204862833023, - 0.006222454831004143, - -0.013687129132449627, - -0.029885344207286835, - 0.03246060013771057, - 0.06582270562648773, - -0.013692069798707962, - 0.056936606764793396, - -0.06321452558040619, - 0.01233991701155901, - -0.09779045730829239, - 0.0073458291590213776, - -0.01484096609055996, - -0.10484959930181503, - -0.027622409164905548, - 0.09994994103908539, - 0.027432512491941452, - -0.0310318935662508, - -0.002121277153491974, - -0.10270730406045914, - -0.035300299525260925, - 0.07726682722568512, - 0.06102374941110611, - 0.03319225460290909, - 0.031189538538455963, - 0.050749506801366806, - 0.009378794580698013, - 0.0708124116063118, - 0.10507477819919586, - 0.05962938815355301, - 0.002073658164590597, - -0.026424942538142204, - -0.03950697183609009, - 0.0863160789012909, - 0.04411986097693443, - -0.10357911884784698, - -0.11163439601659775, - -0.05810891091823578, - -0.05505013093352318, - 0.0678786188364029, - -0.012645282782614231, - 0.014367069117724895, - 0.04535038396716118, - -0.03366231173276901, - -0.09086362272500992, - -0.10210288316011429, - 0.13081035017967224, - -0.024153484031558037, - -0.04369209334254265, - -0.042092785239219666, - 0.00964060053229332, - 0.03819739818572998, - 0.013664958998560905, - -0.005954277701675892, - 0.05341121181845665, - 0.04564730077981949, - -0.10502029210329056, - -0.029897810891270638, - 0.01573743298649788, - -0.034548185765743256, - -0.04748248681426048, - 0.021264715120196342, - -0.08316272497177124, - 0.10343590378761292, - -0.0662560984492302, - 0.15785500407218933, - -0.026739593595266342, - -0.04268960654735565, - -0.05823993682861328, - 0.08184152841567993, - -0.06470668315887451, - 0.03490499034523964, - 0.0829772800207138, - 0.07067333906888962, - 0.005528803914785385, - -0.08498436212539673, - 0.07747524976730347, - 0.017556020990014076, - -0.026148110628128052, - -0.07471171766519547, - -0.02921218052506447, - -0.05034668743610382, - -0.008241147734224796, - -0.004831814207136631, - -0.050959695130586624, - 0.05425529181957245, - 0.01966894418001175, - -0.004743877798318863, - 0.059194616973400116, - 0.10701952874660492, - 0.08642970025539398, - -0.06446842104196548 - ] - }, - "p244_066.wav": { - "name": "p244", - "embedding": [ - -0.0077630914747715, - 0.06212679296731949, - -0.029095031321048737, - 0.04807800427079201, - -0.09979154914617538, - -0.011325799860060215, - -0.09859539568424225, - 0.15455757081508636, - -0.0015637085307389498, - 0.09077074378728867, - -0.03634503856301308, - 0.11789576709270477, - -0.07192665338516235, - -0.1492106169462204, - 0.04691343754529953, - 0.07298552244901657, - 0.009551596827805042, - -0.060885265469551086, - -0.02599423937499523, - -0.05117535591125488, - 0.0178248081356287, - 0.03961044177412987, - 0.030315300449728966, - 0.0029597708489745855, - 0.01364608108997345, - 0.09334566444158554, - -0.004621140193194151, - 0.0198704581707716, - -0.009454210288822651, - -0.039348237216472626, - -0.0231894813477993, - 0.03402078524231911, - -0.07006881386041641, - -0.009674010798335075, - 0.024007730185985565, - -0.030278092250227928, - -0.02311311848461628, - -0.009588251821696758, - -0.028285054489970207, - 0.004965323954820633, - -0.08157123625278473, - 0.07757959514856339, - 0.023187167942523956, - -0.008365483023226261, - 0.05268028378486633, - 0.022256221622228622, - -0.038879770785570145, - -0.009175663813948631, - -0.1420152634382248, - 0.13813042640686035, - 0.07626407593488693, - -0.007778852712363005, - -0.07167428731918335, - -0.05480652302503586, - 0.09999435395002365, - -0.020814230665564537, - -0.08670436590909958, - -0.08495119959115982, - 0.07406032085418701, - 0.08715644478797913, - -0.022856593132019043, - -0.02539408765733242, - 0.018550610169768333, - 0.10273498296737671, - 0.07932594418525696, - 0.05336213484406471, - 0.03845370560884476, - 0.12385544180870056, - -0.05201958864927292, - -0.018596675246953964, - 0.05020606517791748, - 0.07094452530145645, - 0.01430055033415556, - 0.021955527365207672, - -0.017246752977371216, - 0.01157557312399149, - 0.021831808611750603, - -0.020078126341104507, - -0.011346502229571342, - -0.03046273998916149, - -0.023327527567744255, - 0.012779390439391136, - 0.006772393360733986, - -0.0042129154317080975, - 0.010185056366026402, - 0.08764004707336426, - 0.08824951946735382, - 0.008867944590747356, - 0.08223341405391693, - -0.00814065057784319, - -0.05953953042626381, - 0.08589067310094833, - -0.08400532603263855, - 0.0028118337504565716, - -0.016205905005335808, - -0.0018033592496067286, - 0.02545177936553955, - 0.08047227561473846, - 0.016994329169392586, - 7.825583452358842e-05, - 0.14811724424362183, - 0.027818048372864723, - 0.0010605386923998594, - 0.02271421067416668, - -0.06731268018484116, - 0.11856039613485336, - 0.061971329152584076, - -0.024232719093561172, - 0.048001643270254135, - -0.030434083193540573, - 0.037176962941884995, - 0.020549774169921875, - -0.09958325326442719, - -0.04676205664873123, - -0.02926865965127945, - 0.0057694269344210625, - -0.06073998287320137, - 0.13464143872261047, - 0.0002716788148973137, - 0.07382065802812576, - 0.17005881667137146, - -0.10015648603439331, - -0.0661592185497284, - 0.016334420070052147, - 0.05094142630696297, - -0.06953908503055573, - 0.043612148612737656, - 0.07132256776094437, - -0.01812724769115448, - 0.09500343352556229, - 0.06924550980329514, - -0.005538359750062227, - 0.045102961361408234, - 0.03517475724220276, - -0.07806044816970825, - -0.007951498031616211, - -0.027830777689814568, - -0.010484833270311356, - 0.09616238623857498, - 0.040282197296619415, - 0.10220807790756226, - -0.04751453548669815, - 0.00697948457673192, - -0.12977319955825806, - 0.023978019133210182, - 0.018472399562597275, - 0.07261732220649719, - -0.018571898341178894, - -0.02471042424440384, - -0.04819144681096077, - -0.08690645545721054, - -0.014551068656146526, - 0.02832389622926712, - 0.08143433928489685, - -0.0949617326259613, - 0.002755220979452133, - 0.08852490037679672, - 0.06482809782028198, - -0.022307103499770164, - -0.06576360762119293, - -0.08091609925031662, - -0.04684533178806305, - 0.04214273765683174, - -0.08497485518455505, - -0.08144988119602203, - -0.03612879663705826, - 0.09052322804927826, - -0.02720281481742859, - 0.08269672095775604, - 0.03126678615808487, - 0.04002169519662857, - -0.005330238025635481, - -0.05054665356874466, - 0.0319494791328907, - -0.007297709118574858, - -0.06955704838037491, - -0.010123031213879585, - 0.003082114504650235, - -0.05732957273721695, - 0.06033637747168541, - 0.02445564977824688, - 0.08980266004800797, - 0.008264157921075821, - -0.07539556920528412, - -0.11840244382619858, - 0.015741858631372452, - 0.0013391778338700533, - -0.06326083093881607, - 0.0636846199631691, - 0.09257593005895615, - -0.10514184087514877, - 0.04345356300473213, - 0.042700331658124924, - 0.08348044008016586, - -0.050993554294109344, - 0.03936244174838066, - -0.05943295359611511, - 0.07016190141439438, - 0.08867181092500687, - -0.08903425186872482, - -0.0440947525203228, - -0.07404907047748566, - -0.07128720730543137, - 0.05602087825536728, - -0.022398825734853745, - 0.0049375249072909355, - 0.024634554982185364, - 0.027141854166984558, - -0.09741058200597763, - -0.07526490837335587, - 0.04396592453122139, - -0.04957457259297371, - 0.00836198776960373, - -0.07985610514879227, - 0.024887222796678543, - 0.08291107416152954, - 0.06635834276676178, - 0.009280542843043804, - -0.03171687200665474, - 0.05296330526471138, - 0.015414518304169178, - 0.0478878878057003, - 0.13087497651576996, - 0.07354786247015, - -0.04201474413275719, - -0.0597412995994091, - -0.07587701082229614, - 0.043904103338718414, - 0.007860701531171799, - 0.12986992299556732, - 0.03976213559508324, - -0.027728118002414703, - -0.07746711373329163, - 0.01437259279191494, - -0.017655204981565475, - 0.06583189219236374, - 0.015605567023158073, - 0.04948633164167404, - 0.06586628407239914, - 0.005641864147037268, - 0.15866614878177643, - 0.05696696415543556, - -0.06103023141622543, - -0.03497155383229256, - -0.04244257137179375, - -0.06665113568305969, - 0.02710285410284996, - 0.041648995131254196, - -0.10715588927268982, - -0.0061855376698076725, - -0.00026045882259495556, - -0.017139311879873276, - 0.06754108518362045, - 0.1394340991973877, - 0.09705255925655365, - -0.08978267014026642 - ] - }, - "p244_012.wav": { - "name": "p244", - "embedding": [ - 0.040413081645965576, - 0.0830603837966919, - -0.022774528712034225, - -0.0005341863725334406, - -0.03794672340154648, - 0.05234938859939575, - -0.13388767838478088, - 0.13372640311717987, - -0.054108500480651855, - 0.12199720740318298, - -0.06777148693799973, - 0.09525827318429947, - -0.019477128982543945, - -0.15096716582775116, - -0.046066202223300934, - 0.043353330343961716, - -0.04619592800736427, - -0.03893730044364929, - -0.03926585242152214, - -0.02710663340985775, - 0.02975194714963436, - 0.030209191143512726, - -0.001423071837052703, - 0.01767009124159813, - 0.014533063396811485, - 0.061789803206920624, - 0.0020770556293427944, - 0.02855536714196205, - 0.0038799364119768143, - -0.007374171167612076, - -0.002614937722682953, - 0.08625348657369614, - -0.039034005254507065, - 0.01809553988277912, - 0.04712323471903801, - 0.00043094437569379807, - 0.0002795322798192501, - -0.07171767950057983, - -0.017839526757597923, - 0.0036740691866725683, - -0.04642723873257637, - 0.08478469401597977, - 0.043637968599796295, - 0.010240818373858929, - 0.01705770753324032, - 0.014662904664874077, - -0.004455404356122017, - -0.057040736079216, - -0.09834709763526917, - 0.16067162156105042, - 0.07033324241638184, - -0.0013096407055854797, - -0.08616489171981812, - -0.04449496790766716, - 0.10010585933923721, - -0.01945388689637184, - -0.09247705340385437, - -0.058926187455654144, - 0.06421282142400742, - 0.1438712179660797, - -0.02765613980591297, - -0.03928995877504349, - 0.015414133667945862, - 0.13032019138336182, - 0.03821246325969696, - 0.07300262898206711, - 0.08500176668167114, - 0.09541250020265579, - -0.03380883112549782, - 0.01018277183175087, - 0.060074418783187866, - 0.05779407545924187, - 0.032267194241285324, - -0.019839877262711525, - 0.023644432425498962, - -0.006142120808362961, - -0.01140713132917881, - 0.018052203580737114, - -0.025781875476241112, - -0.03170400857925415, - -0.027480022981762886, - 0.014921372756361961, - -0.00871280673891306, - 0.039258237928152084, - -0.023124337196350098, - 0.044205326586961746, - 0.03527587652206421, - -0.025986485183238983, - 0.06543485075235367, - 0.0649804174900055, - 0.017514225095510483, - 0.039923880249261856, - -0.060173433274030685, - -0.07515958696603775, - 0.021156642585992813, - -0.008265395648777485, - 0.02679346315562725, - 0.06942324340343475, - 0.03512595593929291, - -0.0003028702922165394, - 0.09636136144399643, - 0.035126201808452606, - -0.012339252978563309, - -0.005447839852422476, - -0.09485568106174469, - 0.12439955770969391, - 0.09117837995290756, - -0.029637495055794716, - 0.021180735900998116, - -0.04134117066860199, - 0.0428343266248703, - 0.0649833232164383, - -0.12068703770637512, - -0.06943859159946442, - 0.04117913544178009, - 0.03987664356827736, - -0.0014027506113052368, - 0.1096196174621582, - -0.0018225936219096184, - 0.014029955491423607, - 0.07854866981506348, - -0.06031420826911926, - -0.05430252104997635, - -0.02439490146934986, - 0.034904103726148605, - -0.06098751351237297, - 0.041726984083652496, - 0.05456957221031189, - 0.007434066850692034, - 0.0013277474790811539, - 0.0830441266298294, - 0.0019958200864493847, - -0.005506281740963459, - 0.0014513880014419556, - -0.010258546099066734, - 0.04812612384557724, - -0.012265488505363464, - 0.0007846709340810776, - 0.026168784126639366, - 0.047913338989019394, - 0.04084065929055214, - 0.015754010528326035, - -0.025927996262907982, - -0.09728501737117767, - 0.008215617388486862, - 0.0512690395116806, - 0.07119515538215637, - -0.028330130502581596, - -0.02829846739768982, - -0.025761589407920837, - -0.050660714507102966, - -0.018066642805933952, - -0.008528130128979683, - 0.07430551946163177, - -0.010310914367437363, - -0.0003291988978162408, - 0.1055549830198288, - 0.006170269101858139, - 0.0007037622854113579, - -0.041791822761297226, - 0.008994637057185173, - 0.008524062111973763, - 0.05217408388853073, - -0.0591299943625927, - -0.0724165141582489, - 0.008244737982749939, - 0.03672463446855545, - -0.009449097327888012, - 0.038269344717264175, - 0.03830341994762421, - -0.0043996647000312805, - 0.023331737145781517, - -0.08940884470939636, - 0.0342443510890007, - -0.1152038723230362, - -0.04307142645120621, - -0.0029060086235404015, - -0.031247032806277275, - -0.0012998562306165695, - 0.06992219388484955, - 0.01841125637292862, - 0.04389849305152893, - -0.0015250639989972115, - -0.10019814223051071, - -0.06024879589676857, - 0.0624699592590332, - 0.0886591300368309, - -0.02521747723221779, - 0.030167827382683754, - 0.06203741580247879, - -0.015615621581673622, - 0.025053836405277252, - 0.057888247072696686, - 0.09942366927862167, - -0.04888495057821274, - 0.0014969538897275925, - -0.052007272839546204, - 0.06846464425325394, - 0.04695957154035568, - -0.11025058478116989, - -0.05957163870334625, - -0.018552543595433235, - -0.03677377104759216, - 0.006400046870112419, - -0.020499147474765778, - 0.020892156288027763, - 0.027435507625341415, - -0.01587257906794548, - -0.10476444661617279, - -0.08054275810718536, - 0.06192772835493088, - -0.07315119355916977, - 0.01484622061252594, - -0.0769607424736023, - 0.03674861043691635, - 0.09326650947332382, - 0.04202606901526451, - -0.018240241333842278, - -0.013393988832831383, - 0.014037182554602623, - -0.03273104503750801, - -0.020009201020002365, - 0.016858907416462898, - 0.02530338615179062, - -0.09205272793769836, - -0.0017449520528316498, - -0.07689408212900162, - 0.075095534324646, - -0.042808711528778076, - 0.1277589350938797, - 0.009178093634545803, - -0.0628858283162117, - -0.09408976137638092, - -0.0038892626762390137, - -0.0174001082777977, - 0.056130461394786835, - 0.034797925502061844, - 0.04990113154053688, - 0.022978410124778748, - -0.0423492006957531, - 0.1094752624630928, - 0.06085175648331642, - -0.03767654299736023, - -0.06893106549978256, - -0.02513839676976204, - -0.017312169075012207, - 0.033020514994859695, - 0.014636870473623276, - -0.05768581107258797, - -0.008866620250046253, - 0.012733858078718185, - -0.03952283039689064, - 0.07950504869222641, - 0.11891117691993713, - 0.07795403897762299, - -0.1198640912771225 - ] - }, - "p244_166.wav": { - "name": "p244", - "embedding": [ - 0.053655095398426056, - 0.08844296634197235, - -0.04649278149008751, - 0.013936445116996765, - -0.03935004398226738, - 0.05479462072253227, - -0.13360700011253357, - 0.09471850097179413, - -0.033660002052783966, - 0.14835643768310547, - -0.0453655831515789, - 0.10396459698677063, - -0.005942014046013355, - -0.1326616257429123, - -0.019591329619288445, - 0.05505815148353577, - -0.03377779573202133, - -0.03852098807692528, - -0.018543312326073647, - -0.008368187583982944, - 0.03672625869512558, - 0.04902494698762894, - 0.02710963599383831, - -0.02074635587632656, - 0.032913096249103546, - 0.06197277829051018, - 0.0014466014690697193, - 0.021820535883307457, - -0.004275509621948004, - -0.04222218692302704, - -0.01896977797150612, - 0.09863245487213135, - -0.047002747654914856, - 0.004972544964402914, - 0.012576624751091003, - 0.007321698125451803, - 0.002351941540837288, - -0.07046922296285629, - 0.0007005079532973468, - 0.011394213885068893, - -0.03256703168153763, - 0.08399521559476852, - 0.014998058788478374, - -0.009147625416517258, - 0.0016161799430847168, - -0.018606062978506088, - -0.027188047766685486, - -0.026936573907732964, - -0.08517339080572128, - 0.17683064937591553, - 0.06996860355138779, - 0.0134064219892025, - -0.0780750960111618, - -0.04408973455429077, - 0.07826656103134155, - 0.026923730969429016, - -0.08075837790966034, - -0.05972130224108696, - 0.042407527565956116, - 0.13886141777038574, - -0.006989161483943462, - -0.05610661953687668, - 0.037248872220516205, - 0.12740808725357056, - 0.04869261384010315, - 0.053280092775821686, - 0.08517199009656906, - 0.09312839806079865, - -0.008113425225019455, - 0.007785463239997625, - 0.05904529243707657, - 0.07313312590122223, - 0.05591530725359917, - -0.010565748438239098, - 0.03037749044597149, - -0.028928544372320175, - -0.021889498457312584, - -0.012656692415475845, - -0.010193328373134136, - -0.05816423147916794, - -0.03159976750612259, - -0.014443970285356045, - -0.0038853748701512814, - 0.06717607378959656, - -0.01202497910708189, - 0.007008690387010574, - 0.058460675179958344, - -0.05275978893041611, - 0.06169342249631882, - 0.05394720286130905, - 0.02610999345779419, - 0.03156259283423424, - -0.07510482519865036, - -0.07358689606189728, - 0.06123858690261841, - 0.016693050041794777, - 0.03272085636854172, - 0.07263780385255814, - 0.045775532722473145, - -0.0033907294273376465, - 0.09135275334119797, - 0.019397348165512085, - 0.0024353615008294582, - -0.025197505950927734, - -0.07514859735965729, - 0.1269388198852539, - 0.10129731148481369, - -0.03968110680580139, - 0.030582956969738007, - -0.027220046147704124, - 0.023323342204093933, - 0.053116559982299805, - -0.12632519006729126, - -0.08291628956794739, - 0.018998507410287857, - 0.012775188311934471, - 0.0009156353771686554, - 0.09909415245056152, - 0.020280232653021812, - 0.030194073915481567, - 0.08315100520849228, - -0.08419731259346008, - -0.07775819301605225, - -0.03509482368826866, - 0.042510997503995895, - -0.0927007645368576, - 0.05401131138205528, - 0.06861019134521484, - 0.0017825644463300705, - -0.019021783024072647, - 0.07022847980260849, - 0.006236842833459377, - 0.0200313962996006, - -0.028062177821993828, - -0.0035452123265713453, - 0.04423457384109497, - -0.032316889613866806, - 0.006350439041852951, - 0.02390877716243267, - 0.0013469619443640113, - 0.06261691451072693, - 0.0019134643953293562, - -0.005199687089771032, - -0.11554916203022003, - 0.025548560544848442, - 0.05696594715118408, - 0.04851735755801201, - -0.04421606287360191, - -0.0370418019592762, - -0.004539420362561941, - -0.060816265642642975, - 0.010482232086360455, - -0.01083883922547102, - 0.07470370084047318, - 0.01877404749393463, - -0.001411761506460607, - 0.11913126707077026, - -0.004110011272132397, - 0.004352550953626633, - -0.014912760816514492, - 0.003801812883466482, - 0.04109359532594681, - 0.047184623777866364, - -0.08498860895633698, - -0.09137731045484543, - -0.0035503755789250135, - 0.014921177178621292, - 0.009820891544222832, - 0.04925699159502983, - 0.06569939851760864, - -0.015355650335550308, - 0.014127960428595543, - -0.0537368580698967, - 0.00809969287365675, - -0.07779267430305481, - -0.05698656663298607, - -0.014641610905528069, - -0.05571281537413597, - -0.024360492825508118, - 0.09402160346508026, - 0.018509771674871445, - 0.04330350086092949, - -0.050333172082901, - -0.0650399774312973, - -0.06768766045570374, - 0.051043443381786346, - 0.07187633216381073, - -0.03471110016107559, - 0.008212946355342865, - 0.06329125165939331, - 0.009072072803974152, - -0.0045273578725755215, - 0.04547902196645737, - 0.09381411969661713, - -0.056555137038230896, - -0.01935093104839325, - -0.06621578335762024, - 0.08163195848464966, - 0.08475353568792343, - -0.09308450669050217, - -0.05736543983221054, - -0.04593092203140259, - -0.06394603103399277, - 0.016700323671102524, - -0.04219955950975418, - 0.015847934409976006, - 0.0418318510055542, - -0.04094365984201431, - -0.10128842294216156, - -0.12677882611751556, - 0.08536802232265472, - -0.05766047164797783, - -0.0029032262973487377, - -0.07675062865018845, - 0.05029436945915222, - 0.057624541223049164, - 0.04686463996767998, - -0.04399394989013672, - 0.011516179889440536, - 0.010614532046020031, - -0.030909806489944458, - -0.00030715082539245486, - 0.04352226108312607, - 0.035192977637052536, - -0.10074742138385773, - -0.022891204804182053, - -0.08016446232795715, - 0.06337811052799225, - -0.07264944165945053, - 0.12457223981618881, - -0.006055818870663643, - -0.0585329607129097, - -0.10827597230672836, - 0.013784579001367092, - -0.014256780967116356, - 0.05224742740392685, - 0.03585461899638176, - 0.0427403599023819, - 0.038721948862075806, - -0.07541250437498093, - 0.0892203152179718, - 0.07800555229187012, - 0.005114484112709761, - -0.0927131399512291, - -0.025002729147672653, - -0.01710965856909752, - 0.06794629991054535, - 0.002855605911463499, - -0.04696786403656006, - 0.019650055095553398, - 0.023444827646017075, - 0.0013756786938756704, - 0.07318668812513351, - 0.10128151625394821, - 0.06210120767354965, - -0.10976234078407288 - ] - }, - "p244_075.wav": { - "name": "p244", - "embedding": [ - 0.03428453952074051, - 0.11064719408750534, - 0.0017526668962091208, - 0.0246326494961977, - -0.052845899015665054, - 0.06611949950456619, - -0.10521318018436432, - 0.13429750502109528, - -0.05651460960507393, - 0.1235857903957367, - -0.10048773884773254, - 0.10598120838403702, - -0.05684275180101395, - -0.1783761978149414, - -0.04228542745113373, - 0.06294967234134674, - -0.03110467828810215, - -0.00095291284378618, - -0.035121794790029526, - -0.013944773003458977, - 0.03131048008799553, - 0.010594845749437809, - 0.02496732771396637, - 0.014946140348911285, - 0.017528658732771873, - 0.06434151530265808, - 0.0018713257741183043, - 0.05689927935600281, - 0.017997276037931442, - -0.018579233437776566, - -0.03409453481435776, - 0.12057538330554962, - -0.03753228113055229, - 0.034450069069862366, - 0.08555713295936584, - 0.017218297347426414, - -0.012218305841088295, - -0.030455391854047775, - -0.008164172992110252, - -0.0141185587272048, - -0.0620722770690918, - 0.060246072709560394, - 0.024739062413573265, - 0.003376284148544073, - 0.04835595563054085, - 0.04146186634898186, - -0.01341229397803545, - -0.030139166861772537, - -0.09043428301811218, - 0.13250896334648132, - 0.055999018251895905, - -0.017828024923801422, - -0.07457873970270157, - -0.0697483941912651, - 0.11246555298566818, - -0.026754135265946388, - -0.12838967144489288, - -0.039564717561006546, - 0.10323658585548401, - 0.1580001413822174, - -0.027325229719281197, - -0.026766734197735786, - -0.01096925139427185, - 0.12341856956481934, - 0.023739060387015343, - 0.11721930652856827, - 0.051521383225917816, - 0.11331139504909515, - -0.0067277573980391026, - 0.03533324971795082, - 0.07012540847063065, - 0.053036224097013474, - 0.0504441000521183, - -0.02651439979672432, - 0.014645046554505825, - -0.004943884443491697, - -0.010933781042695045, - 0.034601617604494095, - -0.036210693418979645, - -0.016005119308829308, - -0.04069426655769348, - 0.0009622778743505478, - -0.016917364671826363, - -0.029449395835399628, - -0.005007491912692785, - 0.0615730881690979, - 0.03990306705236435, - -0.0031221776735037565, - 0.06841331720352173, - 0.07175624370574951, - -0.024039003998041153, - 0.061780400574207306, - -0.06226837635040283, - -0.07848657667636871, - -0.0046257274225354195, - -0.012960809282958508, - 0.022535288706421852, - 0.07917551696300507, - 0.03100755624473095, - 0.008274837397038937, - 0.09721153974533081, - 0.050989262759685516, - 0.012677839025855064, - 0.041036203503608704, - -0.10639114677906036, - 0.12764522433280945, - 0.07278670370578766, - -0.022095121443271637, - 0.03098338097333908, - -0.02898004837334156, - 0.0809275209903717, - 0.09534987807273865, - -0.1227051168680191, - -0.05885526165366173, - 0.0005997233092784882, - -0.0035510878078639507, - -0.021237578243017197, - 0.08182498067617416, - -0.024508893489837646, - -0.005949174519628286, - 0.11049088835716248, - -0.07752488553524017, - -0.06652219593524933, - -0.02911338210105896, - 0.0212554968893528, - -0.07800594717264175, - 0.047917529940605164, - 0.0359664224088192, - 0.008974568918347359, - 0.00486976932734251, - 0.09449593722820282, - -0.0018899358110502362, - -0.0003257538191974163, - 0.032444246113300323, - -0.055867474526166916, - 0.017791595309972763, - -0.0351385772228241, - 0.01986345462501049, - 0.057327769696712494, - 0.05041804909706116, - 0.059155598282814026, - 0.008122799918055534, - -0.01083378866314888, - -0.07895449548959732, - -0.00627483893185854, - 0.06800520420074463, - 0.05703945457935333, - -0.008550484664738178, - -0.015090275555849075, - -0.02927681803703308, - -0.07012715935707092, - 0.041542742401361465, - -0.012928883545100689, - 0.08516597747802734, - -0.024356510490179062, - -0.014819096773862839, - 0.12005850672721863, - 0.010945495218038559, - -0.017246559262275696, - -0.09791474044322968, - -0.024770662188529968, - 0.0011850083246827126, - 0.04086858779191971, - -0.11034372448921204, - -0.07452259212732315, - 0.006218722090125084, - 0.02181953378021717, - -0.016521282494068146, - 0.03904792293906212, - 0.03824132680892944, - 0.007279010955244303, - 0.037137240171432495, - -0.0573769137263298, - 0.007877781987190247, - -0.11130785197019577, - -0.06729962676763535, - -0.028296589851379395, - -0.04508214816451073, - -0.001398736611008644, - 0.061989620327949524, - 0.009105633944272995, - 0.016468387097120285, - 0.027100328356027603, - -0.08886811137199402, - -0.08833437412977219, - 0.07652020454406738, - 0.05635393410921097, - 0.010490206070244312, - 0.070200115442276, - 0.054011017084121704, - -0.08097734302282333, - 0.07192501425743103, - 0.0603579543530941, - 0.11222146451473236, - -0.04411302134394646, - 0.03944786638021469, - -0.07513889670372009, - 0.04705259948968887, - 0.08648710697889328, - -0.11583252251148224, - -0.10839773714542389, - -0.041446663439273834, - -0.0290602408349514, - 0.0446256548166275, - -0.031314633786678314, - -0.01224291231483221, - 0.024069389328360558, - -0.024504881352186203, - -0.07408291101455688, - -0.08164675533771515, - 0.08596008270978928, - -0.0648287758231163, - -0.00760210957378149, - -0.06233181804418564, - 0.04306813329458237, - 0.05370538681745529, - 0.025317681953310966, - -0.04027901962399483, - 0.03136410936713219, - 0.07048152387142181, - -0.06131252273917198, - -0.03257821127772331, - 0.039197325706481934, - 0.007110740523785353, - -0.06356337666511536, - -0.0007188073359429836, - -0.07171986997127533, - 0.07497894018888474, - -0.048499248921871185, - 0.1626286804676056, - -0.026472043246030807, - -0.07052823156118393, - -0.04782993346452713, - 0.02265041135251522, - -0.026331990957260132, - 0.02763562649488449, - 0.05033141374588013, - 0.06911881268024445, - -0.0130761181935668, - -0.03996057063341141, - 0.14837083220481873, - 0.008677903562784195, - -0.03402414172887802, - -0.050040263682603836, - -0.045453377068042755, - -0.06450536847114563, - 0.0004788478836417198, - 0.008729243651032448, - -0.11051183938980103, - -0.008394391275942326, - 0.007968345656991005, - -0.030474970117211342, - 0.054275304079055786, - 0.13971665501594543, - 0.0805155485868454, - -0.09118019044399261 - ] - }, - "p244_074.wav": { - "name": "p244", - "embedding": [ - 0.06014510244131088, - 0.09971879422664642, - 0.015584892593324184, - 0.021699270233511925, - -0.024226326495409012, - 0.11392833292484283, - -0.12430501729249954, - 0.1162688136100769, - -0.06320066750049591, - 0.16092291474342346, - -0.08765741437673569, - 0.09969928860664368, - -0.01792548969388008, - -0.15745452046394348, - -0.06303291022777557, - 0.041449688374996185, - -0.057555653154850006, - 0.0035726502537727356, - -0.0486614927649498, - -0.004805471282452345, - 0.0411190502345562, - 0.024463845416903496, - 0.058623261749744415, - -0.02493543177843094, - 0.031117452308535576, - 0.03865686058998108, - 0.015451236627995968, - 0.07207752764225006, - 0.02641092613339424, - -0.09324994683265686, - -0.027758805081248283, - 0.13227424025535583, - -0.03424966707825661, - 0.03947920352220535, - 0.04767537862062454, - 0.013357278890907764, - 0.006342347711324692, - -0.07750484347343445, - -0.014071457087993622, - -0.010173224844038486, - -0.014226230792701244, - 0.06542043387889862, - 0.014675341546535492, - -0.012166031636297703, - 0.01956893689930439, - 0.0038894633762538433, - -0.024501653388142586, - -0.049184542149305344, - -0.09260393679141998, - 0.15617680549621582, - 0.0518491193652153, - 0.004771186038851738, - -0.07177138328552246, - -0.08619700372219086, - 0.1051219254732132, - -0.015336241573095322, - -0.1134636402130127, - -0.02775711566209793, - 0.07479526102542877, - 0.1931106001138687, - -0.03001069277524948, - -0.03331910818815231, - 0.02120731770992279, - 0.11004520952701569, - 0.025130605325102806, - 0.10477791726589203, - 0.09282625466585159, - 0.08586355298757553, - 0.028017833828926086, - 0.05219336599111557, - 0.017089825123548508, - 0.06498713791370392, - 0.04176153987646103, - -0.011089975014328957, - 0.032536521553993225, - -0.03093256987631321, - -0.02084430307149887, - 0.015571310184895992, - -0.026068685576319695, - -0.02726149931550026, - -0.0037109642289578915, - -0.005104261916130781, - 0.02641938626766205, - 0.010872980579733849, - -0.03922935575246811, - 0.041547566652297974, - -0.020551878958940506, - -0.03216097131371498, - 0.06253150850534439, - 0.03755345195531845, - 0.0200633741915226, - 0.035502105951309204, - -0.05118311941623688, - -0.12056100368499756, - 0.013987716287374496, - 0.011165215633809566, - 0.008817262947559357, - 0.06909926235675812, - 0.039913907647132874, - -0.033625729382038116, - 0.0953153669834137, - 0.042153771966695786, - -0.007515524048358202, - 0.028902916237711906, - -0.10698682069778442, - 0.11187740415334702, - 0.08660847693681717, - -0.002844938775524497, - 0.042121924459934235, - -0.05157402530312538, - 0.08466915041208267, - 0.09120398759841919, - -0.1502046287059784, - -0.08364871889352798, - 0.0071958694607019424, - -0.008172833360731602, - 0.005273364018648863, - 0.08534418046474457, - -0.0036859335377812386, - -0.0008797831833362579, - 0.08766975998878479, - -0.08068522810935974, - -0.04992228001356125, - -0.03241259977221489, - 0.04746837168931961, - -0.0714477151632309, - 0.04672529175877571, - 0.012449185363948345, - -0.010422405786812305, - -0.0232987180352211, - 0.07312832027673721, - -0.01991652324795723, - -0.004882699344307184, - 0.03331601247191429, - -0.05931270122528076, - 0.02828357368707657, - -0.05358045548200607, - 0.019374718889594078, - 0.03794638067483902, - 0.05631332844495773, - 0.044307444244623184, - -0.0029720335733145475, - -0.05184668302536011, - -0.07062087208032608, - -0.009222757071256638, - 0.046010393649339676, - 0.051999520510435104, - -0.005567926447838545, - -0.02045314572751522, - -0.042064715176820755, - -0.05380910634994507, - 0.06741416454315186, - -0.01949601247906685, - 0.08342263102531433, - 0.02181383967399597, - 0.011088564991950989, - 0.10065892338752747, - -0.0020942343398928642, - -0.0040198094211518764, - -0.06658720225095749, - -0.0055602192878723145, - 0.035565100610256195, - 0.032847922295331955, - -0.07245933264493942, - -0.04627860337495804, - 0.027647484093904495, - 0.008904751390218735, - -0.03301059827208519, - 0.033254869282245636, - 0.04260602965950966, - 0.02298501878976822, - 0.043577805161476135, - -0.047388236969709396, - -0.01514421310275793, - -0.1021120473742485, - -0.046782445162534714, - -0.002416311064735055, - -0.03638681024312973, - -0.018268844112753868, - 0.08079420030117035, - 0.02545928955078125, - 0.018413040786981583, - -0.005437190178781748, - -0.07254447042942047, - -0.06903161108493805, - 0.06818627566099167, - 0.057744596153497696, - 0.022661438211798668, - 0.032348740845918655, - 0.0380667969584465, - -0.012004202231764793, - 0.07510870695114136, - 0.07461467385292053, - 0.09118086099624634, - -0.018249865621328354, - -0.007719416171312332, - -0.08865920454263687, - 0.08385604619979858, - 0.09812474250793457, - -0.0825810432434082, - -0.1069522574543953, - -0.028723765164613724, - -0.0832420140504837, - 0.0513782799243927, - -0.032212719321250916, - -0.014716488309204578, - 0.033219143748283386, - -0.032289646565914154, - -0.09897318482398987, - -0.07787275314331055, - 0.11439277976751328, - -0.07389659434556961, - -0.0342634841799736, - -0.06562066823244095, - 0.04722801595926285, - 0.0693758949637413, - 0.04545104503631592, - -0.016056319698691368, - 0.015001444146037102, - 0.05746561288833618, - -0.09436094015836716, - -0.0166219100356102, - 0.029135093092918396, - -0.01431970577687025, - -0.09565816819667816, - 0.022905312478542328, - -0.08642274141311646, - 0.039538733661174774, - -0.06991507858037949, - 0.16500133275985718, - -0.02460383251309395, - -0.07045608758926392, - -0.05873553454875946, - 0.04520758241415024, - -0.054409317672252655, - 0.028254954144358635, - 0.05157051980495453, - 0.06067713350057602, - 0.02536693960428238, - -0.09536367654800415, - 0.10134699940681458, - 0.024042507633566856, - -0.010347208008170128, - -0.08685632795095444, - -0.06046932190656662, - -0.042557694017887115, - 0.015346228145062923, - -0.018939699977636337, - -0.07674851268529892, - 0.0009209541603922844, - 0.02602284401655197, - -0.003074691630899906, - 0.0657355859875679, - 0.13165289163589478, - 0.05196277052164078, - -0.09723721444606781 - ] - }, - "p244_128.wav": { - "name": "p244", - "embedding": [ - 0.04285028576850891, - 0.10291832685470581, - -0.008294271305203438, - 0.0031440667808055878, - -0.05854008346796036, - 0.0744505375623703, - -0.11892271786928177, - 0.13265547156333923, - -0.0472327321767807, - 0.13479766249656677, - -0.0745711624622345, - 0.10561913251876831, - -0.02285316213965416, - -0.17996175587177277, - -0.05359140783548355, - 0.0317937433719635, - -0.05796866863965988, - -0.028445810079574585, - -0.057495832443237305, - -0.03565075248479843, - 0.035307884216308594, - 0.04116383194923401, - 0.0032741716131567955, - -0.014355423860251904, - 0.054791174829006195, - 0.06258786469697952, - 0.014593180269002914, - 0.04019845277070999, - 0.009189827367663383, - -0.0422927550971508, - -0.030498847365379333, - 0.10371505469083786, - -0.061426594853401184, - 0.023316510021686554, - 0.05623096972703934, - -0.004318609833717346, - 0.020198138430714607, - -0.050899848341941833, - -0.02848580852150917, - 0.04583275318145752, - -0.03608536720275879, - 0.08068013936281204, - 0.046967070549726486, - 0.010805629193782806, - 0.021731525659561157, - 0.05317696928977966, - 0.01321185939013958, - -0.06421341001987457, - -0.09013538062572479, - 0.18424123525619507, - 0.04776057228446007, - -0.0028770838398486376, - -0.07243786007165909, - -0.08860738575458527, - 0.10992558300495148, - -0.0163470096886158, - -0.1031622439622879, - -0.027590710669755936, - 0.0751342847943306, - 0.14967505633831024, - -0.04495275020599365, - -0.052671369165182114, - 0.00747661991044879, - 0.11520727723836899, - 0.03702854737639427, - 0.07464918494224548, - 0.08499055355787277, - 0.09904549270868301, - -0.00922226719558239, - 0.01108636986464262, - 0.0748717337846756, - 0.06487390398979187, - 0.05631181225180626, - -0.0338699109852314, - 0.031233523041009903, - 0.0019018733873963356, - -0.01824387162923813, - 0.008348758332431316, - -0.02586912177503109, - -0.0011229927185922861, - -0.009843980893492699, - 0.028770998120307922, - 0.018397890031337738, - 0.019719939678907394, - -0.02686728537082672, - 0.059890665113925934, - 0.017812829464673996, - -0.009032066911458969, - 0.07787267118692398, - 0.050689518451690674, - 0.004880410619080067, - 0.06256155669689178, - -0.08774784952402115, - -0.0894698053598404, - 0.03025517612695694, - -0.0019432483240962029, - 0.024727607145905495, - 0.07191336154937744, - 0.05225212499499321, - -0.015936629846692085, - 0.11002478748559952, - 0.05299503728747368, - -0.008342195302248001, - 0.021948836743831635, - -0.10554119944572449, - 0.11696275323629379, - 0.09277379512786865, - -0.03175366297364235, - 0.037857118993997574, - -0.04454944282770157, - 0.08099643886089325, - 0.058050110936164856, - -0.14657199382781982, - -0.09842027723789215, - 0.03615438938140869, - 0.023691225796937943, - -0.013943508267402649, - 0.10753928124904633, - -0.031842827796936035, - 0.015001642517745495, - 0.10138988494873047, - -0.08231890201568604, - -0.037937577813863754, - -0.028225857764482498, - 0.04748796671628952, - -0.06992723047733307, - 0.03258610889315605, - 0.05220450460910797, - -0.015021104365587234, - 0.00970245711505413, - 0.07571221888065338, - 0.0008274917490780354, - 0.0009434851817786694, - 0.0037812944501638412, - -0.016594819724559784, - 0.036868512630462646, - -0.006621015723794699, - -0.003088216530159116, - 0.04144478589296341, - 0.0634017288684845, - 0.05363544076681137, - 0.012106486596167088, - -0.04248375445604324, - -0.10744935274124146, - 0.02323581650853157, - 0.03876125067472458, - 0.06020769476890564, - -0.02511535957455635, - -0.013027509674429893, - -0.042832955718040466, - -0.07413189858198166, - 0.020877759903669357, - 0.015493260696530342, - 0.08876348286867142, - -0.01178110670298338, - 0.0026183626614511013, - 0.11945134401321411, - 0.024575982242822647, - -0.016531767323613167, - -0.03488043695688248, - -0.022817201912403107, - 0.0055765812285244465, - 0.050697289407253265, - -0.07481823861598969, - -0.0817171037197113, - -0.0049058618023991585, - 0.011322863399982452, - -0.009867454878985882, - 0.06068001687526703, - 0.03517413139343262, - 0.006912395358085632, - 0.039578747004270554, - -0.06977661699056625, - 0.003621757263317704, - -0.1171189397573471, - -0.04958612844347954, - -0.02333132177591324, - -0.037408117204904556, - -0.03562555089592934, - 0.09097154438495636, - 0.012545136734843254, - 0.04913122206926346, - -0.0006547458469867706, - -0.07709072530269623, - -0.048051562160253525, - 0.06257225573062897, - 0.08023197203874588, - -0.0017389459535479546, - 0.03188994526863098, - 0.06737224757671356, - -0.011643451638519764, - 0.05946042388677597, - 0.09167708456516266, - 0.10151728987693787, - -0.029805200174450874, - 0.031096410006284714, - -0.04898339882493019, - 0.10016895830631256, - 0.028483262285590172, - -0.09008339047431946, - -0.08827924728393555, - -0.03344443812966347, - -0.055373258888721466, - 0.02298158034682274, - -0.004768986254930496, - 0.03892204165458679, - 0.004340828862041235, - 0.009070918895304203, - -0.07332377135753632, - -0.07707536220550537, - 0.06340166926383972, - -0.056554581969976425, - -0.014352606609463692, - -0.07638509571552277, - 0.045238036662340164, - 0.11974451690912247, - 0.0533909797668457, - -0.004737730138003826, - -0.006433691363781691, - 0.04213054105639458, - -0.037932198494672775, - -0.020381726324558258, - 0.03291946277022362, - 0.013733863830566406, - -0.08372844755649567, - 0.013640576042234898, - -0.0693979412317276, - 0.07794291526079178, - -0.051908183842897415, - 0.14760559797286987, - 0.0021405257284641266, - -0.06954716891050339, - -0.07093621045351028, - 0.0385231152176857, - -0.03931885212659836, - 0.04432768374681473, - 0.03189799189567566, - 0.060877010226249695, - 0.033880751579999924, - -0.041171252727508545, - 0.11780042946338654, - 0.032729074358940125, - -0.04795774817466736, - -0.06289391964673996, - -0.06086689978837967, - -0.017920324578881264, - 0.01632593385875225, - 0.02147575467824936, - -0.07005555927753448, - -0.002590891905128956, - 0.022513344883918762, - -0.021650727838277817, - 0.059205275028944016, - 0.13990139961242676, - 0.08244998008012772, - -0.12977442145347595 - ] - }, - "p244_363.wav": { - "name": "p244", - "embedding": [ - 0.06403273344039917, - 0.06051492691040039, - -0.02012384496629238, - -0.017881762236356735, - -0.027586935088038445, - 0.04949760064482689, - -0.14439056813716888, - 0.09276485443115234, - -0.003955709747970104, - 0.15863388776779175, - -0.04848731309175491, - 0.11708610504865646, - 0.008923175744712353, - -0.1183699294924736, - -0.0009529429371468723, - 0.02462594211101532, - -0.026231907308101654, - -0.0009149847319349647, - -0.03142998367547989, - -0.04107664152979851, - 0.024890966713428497, - 0.027374088764190674, - 0.022732285782694817, - -0.02660374343395233, - 0.027254194021224976, - 0.06170704960823059, - -0.0024491813965141773, - 0.027911990880966187, - 0.0008403199608437717, - -0.05736023187637329, - 0.007845464162528515, - 0.10094092786312103, - -0.06058371067047119, - 0.014089441858232021, - 0.038132261484861374, - -0.011506977491080761, - -0.016614658758044243, - -0.06505867093801498, - -0.0033435611985623837, - 0.03163169324398041, - -0.042566388845443726, - 0.08961649239063263, - 0.02474232017993927, - 0.004860918037593365, - 0.020051240921020508, - 0.005838615354150534, - -0.0267366673797369, - -0.016912490129470825, - -0.06767590343952179, - 0.137917160987854, - 0.06183375418186188, - 0.002839596476405859, - -0.0751606747508049, - -0.019900521263480186, - 0.05900411307811737, - 0.0002964561281260103, - -0.0757521390914917, - -0.023973045870661736, - 0.02944762632250786, - 0.11183631420135498, - -0.033953357487916946, - -0.06368960440158844, - 0.027156000956892967, - 0.09929130971431732, - 0.04181322082877159, - 0.052422426640987396, - 0.099247507750988, - 0.10775365680456161, - -0.03121456503868103, - 0.013795128092169762, - 0.03532084822654724, - 0.06895013898611069, - 0.08076289296150208, - -0.004452466033399105, - 0.05283006280660629, - 0.0028274524956941605, - -0.003868196625262499, - -0.03429003059864044, - -0.022063929587602615, - -0.03299005329608917, - -0.02209332585334778, - -0.008881988003849983, - 0.023418426513671875, - 0.09854018688201904, - -0.02846275269985199, - 0.011028441600501537, - 0.049822621047496796, - -0.0425729975104332, - 0.02990562468767166, - 0.037396471947431564, - 0.014230488799512386, - 0.030722465366125107, - -0.09800295531749725, - -0.0838424414396286, - 0.03957703709602356, - -0.020706502720713615, - 0.0446818582713604, - 0.055889274924993515, - 0.04385174810886383, - -0.004087240435183048, - 0.08500337600708008, - 0.04163333773612976, - -0.022932028397917747, - -0.007839178666472435, - -0.05945534259080887, - 0.11431651562452316, - 0.10057404637336731, - -0.05528843402862549, - 0.030194278806447983, - -0.033868640661239624, - 0.043563853949308395, - 0.018794789910316467, - -0.12945233285427094, - -0.055467233061790466, - 0.024301959201693535, - 0.036756157875061035, - 0.008293507620692253, - 0.10468360036611557, - 0.008604477159678936, - 0.05039508268237114, - 0.07051946222782135, - -0.026770269498229027, - -0.03179869055747986, - -0.03430252894759178, - 0.036310695111751556, - -0.07879462838172913, - 0.04594317823648453, - 0.02598048560321331, - 0.024373015388846397, - -0.024430004879832268, - 0.09700754284858704, - 0.0073061189614236355, - -0.012344546616077423, - -0.03343578428030014, - 0.02182130143046379, - 0.055880945175886154, - -0.0009930426022037864, - 0.03629352152347565, - 0.02050788328051567, - 0.01343727670609951, - 0.05896482616662979, - 0.029373139142990112, - -0.019857658073306084, - -0.1102408915758133, - 0.03269043564796448, - 0.024887867271900177, - 0.06146380305290222, - -0.041399724781513214, - -0.02417270466685295, - -0.00849065463989973, - -0.06280441582202911, - 0.0016684045549482107, - -0.01296325959265232, - 0.05026625841856003, - 0.01690084859728813, - -0.006596662104129791, - 0.09954860806465149, - -0.0010454729199409485, - 0.012931148521602154, - 0.0148419588804245, - 0.004123309161514044, - 0.013352934271097183, - 0.07219018042087555, - -0.0987880676984787, - -0.06607095897197723, - 0.011087624356150627, - 0.015368583612143993, - 0.0029961182735860348, - 0.039021141827106476, - 0.05914757773280144, - -0.022443201392889023, - 0.0360303670167923, - -0.04600170999765396, - -0.02771448716521263, - -0.0938287079334259, - -0.04784083366394043, - -0.0161521527916193, - -0.046595387160778046, - -0.03091784566640854, - 0.061463065445423126, - -0.010084379464387894, - 0.07136915624141693, - -0.02919497899711132, - -0.047360315918922424, - -0.05189887806773186, - 0.03612043708562851, - 0.05802188441157341, - -0.04861808940768242, - 0.00468931719660759, - 0.07599315047264099, - 0.019815105944871902, - 0.008400033228099346, - 0.07461564242839813, - 0.07611342519521713, - -0.046885859221220016, - 0.001462546526454389, - -0.06221631169319153, - 0.11272623389959335, - 0.0724392980337143, - -0.05227070301771164, - -0.06521911919116974, - -0.03691735491156578, - -0.05702916905283928, - 0.017825230956077576, - -0.03583719953894615, - -0.0038431144785135984, - 0.04523668810725212, - -0.019796017557382584, - -0.0704396590590477, - -0.07848221808671951, - 0.05864795669913292, - -0.0761282667517662, - 0.0054170056246221066, - -0.0638924315571785, - 0.029236098751425743, - 0.06813766807317734, - 0.06036188453435898, - -0.03969743102788925, - 0.019263770431280136, - 0.029042627662420273, - -0.04254719242453575, - -0.0076590306125581264, - 0.030446184799075127, - 0.01466970331966877, - -0.09990754723548889, - -0.03380292281508446, - -0.06023750826716423, - 0.042855702340602875, - -0.0609348826110363, - 0.08603771775960922, - 0.014863325282931328, - -0.05509550869464874, - -0.05701571702957153, - -0.013307898305356503, - -0.012660689651966095, - 0.043151408433914185, - 0.054835908114910126, - 0.06222027167677879, - 0.03838126361370087, - -0.06193374842405319, - 0.0959349125623703, - 0.05506696552038193, - 0.0024874459486454725, - -0.0725620910525322, - -0.02287134900689125, - -0.009760105982422829, - 0.04641138017177582, - 0.03347271308302879, - -0.05269720405340195, - 0.017612092196941376, - 0.028211530297994614, - -0.03257675841450691, - 0.037428416311740875, - 0.08168216049671173, - 0.06732090562582016, - -0.11743035167455673 - ] - }, - "p244_295.wav": { - "name": "p244", - "embedding": [ - 0.05290251970291138, - 0.08866578340530396, - -0.014172036200761795, - 0.03047887608408928, - -0.0520898699760437, - 0.09630829095840454, - -0.13036440312862396, - 0.09883075952529907, - -0.05007344111800194, - 0.15091755986213684, - -0.04731025546789169, - 0.11103080213069916, - 0.011929815635085106, - -0.2080869972705841, - -0.029904644936323166, - 0.05783097445964813, - -0.08765420317649841, - -0.013555746525526047, - -0.08613084256649017, - -0.020421000197529793, - 0.03315795958042145, - 0.031439635902643204, - 0.04728688299655914, - -0.040597423911094666, - 0.02959975227713585, - 0.05423350632190704, - -0.017078906297683716, - 0.02361954376101494, - -0.004263904877007008, - -0.08039578795433044, - -0.06475915014743805, - 0.12110821902751923, - -0.028802108019590378, - 0.012491578236222267, - 0.05075102299451828, - -0.016131596639752388, - -0.007037237752228975, - -0.06531859934329987, - -0.028068624436855316, - 0.024828573688864708, - -0.02811659500002861, - 0.06960184872150421, - 0.03310901299118996, - -0.01496448926627636, - 0.056352488696575165, - -0.017263544723391533, - -0.039818596094846725, - -0.03839851915836334, - -0.08592745661735535, - 0.16973444819450378, - 0.08115704357624054, - -0.00883428193628788, - -0.06046222895383835, - -0.062448158860206604, - 0.09827961027622223, - -0.007846922613680363, - -0.14564767479896545, - -0.0326983705163002, - 0.07282871007919312, - 0.15935982763767242, - -0.015399754047393799, - -0.012290704995393753, - 0.024149175733327866, - 0.12355045229196548, - 0.01387656107544899, - 0.11754472553730011, - 0.05576509237289429, - 0.09296070039272308, - 0.0019340356811881065, - 0.051164157688617706, - 0.063483826816082, - 0.05950479209423065, - 0.043938253074884415, - -0.03550262749195099, - 0.041027605533599854, - -0.0240523349493742, - -0.037449248135089874, - -0.01831389218568802, - -0.025988414883613586, - 0.0010719280689954758, - -0.003004832658916712, - -0.021211858838796616, - 0.026496581733226776, - 0.0051918174140155315, - -0.03328615054488182, - 0.027924194931983948, - 0.030187323689460754, - -0.012468209490180016, - 0.051449112594127655, - 0.07266655564308167, - 0.03139781579375267, - 0.04979772865772247, - -0.04544838145375252, - -0.11425669491291046, - 0.03663652762770653, - 0.03352591395378113, - -0.0007319997530430555, - 0.052891675382852554, - 0.04801598936319351, - -0.031236916780471802, - 0.08309122920036316, - 0.06788374483585358, - -0.013497358188033104, - 0.0316450297832489, - -0.10186915844678879, - 0.11284466087818146, - 0.09876660257577896, - -0.002314150333404541, - 0.04355976730585098, - -0.039824169129133224, - 0.10397098958492279, - 0.08934269845485687, - -0.13914325833320618, - -0.05876270309090614, - 0.027994800359010696, - -0.03508389741182327, - 0.002701176330447197, - 0.10860823094844818, - 0.01188700832426548, - 0.011183975264430046, - 0.09440584480762482, - -0.08775536715984344, - -0.05217909440398216, - -0.03048260696232319, - 0.04033491015434265, - -0.10106860101222992, - 0.04850113391876221, - 0.037350866943597794, - -0.01968272402882576, - -0.007441813126206398, - 0.07533790171146393, - -0.021646160632371902, - -0.0017310635885223746, - 0.013509604148566723, - -0.037927478551864624, - 0.03929981589317322, - -0.036784231662750244, - 0.01562993973493576, - 0.055752623826265335, - 0.02243494987487793, - 0.03153522312641144, - -0.022017188370227814, - -0.02360452711582184, - -0.09017859399318695, - 0.012063869275152683, - 0.032551586627960205, - 0.058903768658638, - -0.005659362301230431, - 0.01366327702999115, - -0.03107360377907753, - -0.09516414254903793, - 0.06370949745178223, - -0.0582180917263031, - 0.06526194512844086, - 0.011835404671728611, - -0.02400565706193447, - 0.0968305915594101, - 0.015253373421728611, - -0.0012897446285933256, - -0.05431203544139862, - -0.025147121399641037, - 0.05116645246744156, - 0.044625066220760345, - -0.10463736206293106, - -0.04806501418352127, - 0.0033200837206095457, - -0.009190395474433899, - -0.014074652455747128, - 0.014267812483012676, - 0.053471509367227554, - 0.011426469311118126, - 0.039148926734924316, - -0.07803167402744293, - 0.016493376344442368, - -0.10991061478853226, - -0.04326704144477844, - -0.021416686475276947, - -0.0697161927819252, - -0.0099858483299613, - 0.10108533501625061, - 0.00226034433580935, - -0.011492466554045677, - -0.04758329689502716, - -0.06428387016057968, - -0.05141941457986832, - 0.06912635266780853, - 0.071955606341362, - 0.008642706088721752, - 0.036815255880355835, - 0.03473331779241562, - -0.008092626929283142, - 0.04696999490261078, - 0.054040051996707916, - 0.11258342862129211, - -0.01833399012684822, - 0.01800486631691456, - -0.08299419283866882, - 0.09973357617855072, - 0.09477218985557556, - -0.0731373280286789, - -0.10853767395019531, - -0.021285444498062134, - -0.05653847008943558, - 0.04914431646466255, - -0.04716038703918457, - -0.033013030886650085, - 0.04293026030063629, - -0.010498236864805222, - -0.08922325074672699, - -0.0917540043592453, - 0.11912663280963898, - -0.055475734174251556, - -0.02718234434723854, - -0.06428301334381104, - 0.04882869869470596, - 0.059380047023296356, - 0.026572778820991516, - -0.06824323534965515, - 0.03023555502295494, - 0.062191300094127655, - -0.05923333764076233, - 0.003709199372678995, - 0.02580970898270607, - 0.012109932489693165, - -0.11526891589164734, - -0.001838963944464922, - -0.07267390191555023, - 0.06847310811281204, - -0.07226385176181793, - 0.15533387660980225, - -0.004655337426811457, - -0.057828888297080994, - -0.062104471027851105, - 0.07144276797771454, - -0.02231518179178238, - 0.030752034857869148, - 0.059447064995765686, - 0.0737541913986206, - 0.035599373281002045, - -0.08204565942287445, - 0.08413322269916534, - 0.007639879826456308, - -0.0029468019492924213, - -0.06997314095497131, - -0.006133362650871277, - -0.041792504489421844, - 0.029643665999174118, - 0.00013725587632507086, - -0.10018723458051682, - 0.016295988112688065, - 0.027648676186800003, - -0.008695149794220924, - 0.06170041859149933, - 0.12852692604064941, - 0.058018703013658524, - -0.10498124361038208 - ] - }, - "p244_265.wav": { - "name": "p244", - "embedding": [ - 0.06141588091850281, - 0.0863850861787796, - -0.00772889144718647, - 0.006429128814488649, - -0.04527030885219574, - 0.05000637099146843, - -0.14279066026210785, - 0.1320023536682129, - -0.056966036558151245, - 0.14200010895729065, - -0.0780944675207138, - 0.12522992491722107, - -0.019226575270295143, - -0.17627684772014618, - -0.04489091783761978, - 0.05379902198910713, - -0.06346271932125092, - -0.04697665572166443, - -0.03622979298233986, - -0.04041717201471329, - 0.04363404959440231, - 0.053445830941200256, - 0.02921658754348755, - 0.01965351402759552, - 0.024492040276527405, - 0.07114890217781067, - 0.0007303707534447312, - 0.03748464584350586, - 0.008124567568302155, - -0.07660400867462158, - -0.03315816819667816, - 0.08190691471099854, - -0.028733596205711365, - 0.00120810407679528, - 0.03400120139122009, - -0.0018271005246788263, - 0.030979255214333534, - -0.08918013423681259, - -0.045051414519548416, - 0.007627800107002258, - -0.0354047492146492, - 0.06582905352115631, - 0.013605700805783272, - -0.030955586582422256, - 0.02764042653143406, - 0.021312881261110306, - -0.010659478604793549, - -0.06219052895903587, - -0.10788904130458832, - 0.16770416498184204, - 0.07065357267856598, - 0.022713806480169296, - -0.05951463431119919, - -0.08140042424201965, - 0.11799120903015137, - -0.02215052768588066, - -0.10574284195899963, - -0.02035026252269745, - 0.05858565866947174, - 0.18034133315086365, - -0.050429366528987885, - -0.048468366265296936, - 0.057583488523960114, - 0.11438995599746704, - 0.05638664960861206, - 0.064597487449646, - 0.10252750664949417, - 0.08532530069351196, - -0.016957592219114304, - -0.003322306089103222, - 0.056352391839027405, - 0.094028539955616, - 0.0768650472164154, - -0.007835718803107738, - 0.027863772585988045, - 0.022023748606443405, - -0.03772643208503723, - -0.005641659256070852, - -0.031409166753292084, - -0.02106664888560772, - -0.010805588215589523, - 0.013345547951757908, - 0.013816862367093563, - 0.02314738556742668, - -0.028986215591430664, - 0.06092710793018341, - 0.012848379090428352, - -0.02544492483139038, - 0.06588050723075867, - 0.01309226918965578, - 0.02681158483028412, - 0.0668388232588768, - -0.07371874153614044, - -0.0790446400642395, - 0.040636513382196426, - 0.015440435148775578, - 0.009443160146474838, - 0.06674832850694656, - 0.05638415366411209, - -0.035714857280254364, - 0.13445249199867249, - 0.051664482802152634, - 0.0027419414836913347, - 0.01137523166835308, - -0.09602459520101547, - 0.10689400136470795, - 0.10667445510625839, - -0.04308803379535675, - 0.051937036216259, - -0.041244879364967346, - 0.06648872047662735, - 0.06827705353498459, - -0.15634435415267944, - -0.10099723935127258, - 0.03558790683746338, - 0.022423533722758293, - 0.0029250963125377893, - 0.11810757219791412, - -0.009108901023864746, - 0.05770644173026085, - 0.10427931696176529, - -0.08280959725379944, - -0.05646088346838951, - -0.020561296492815018, - 0.057388439774513245, - -0.0824371948838234, - 0.07191649079322815, - 0.06053715944290161, - -0.004701548255980015, - 0.0077123260125517845, - 0.07615099847316742, - -0.02628055214881897, - -0.016148649156093597, - -0.010600737296044827, - -0.047366973012685776, - 0.004877621307969093, - -0.03101721592247486, - -0.026803234592080116, - 0.031856268644332886, - 0.048052143305540085, - 0.021104853600263596, - 0.005830016452819109, - -0.05748726427555084, - -0.13851776719093323, - 0.0194392092525959, - 0.027735350653529167, - 0.07751675695180893, - 0.0011948405299335718, - -0.025190945714712143, - -0.03790529817342758, - -0.04290200024843216, - -0.002937731798738241, - -0.017169035971164703, - 0.07741132378578186, - -0.02447914332151413, - 0.025848161429166794, - 0.09395711123943329, - 0.022960063070058823, - -0.004125075880438089, - -0.02629566192626953, - -0.018751507624983788, - 0.018105752766132355, - 0.04463201016187668, - -0.046960942447185516, - -0.09143471717834473, - -0.013318241573870182, - 0.04128715395927429, - -0.013524128124117851, - 0.06687702238559723, - 0.02442941442131996, - 0.01055664848536253, - 0.019471533596515656, - -0.0704900473356247, - 0.02539224922657013, - -0.11442510038614273, - -0.0675152838230133, - 0.009721603244543076, - -0.02033161371946335, - -0.01928350329399109, - 0.0666721984744072, - 0.027444487437605858, - 0.05788690596818924, - -0.038635265082120895, - -0.0817505270242691, - -0.08335334062576294, - 0.04522058367729187, - 0.07481241971254349, - 0.004759491421282291, - 0.023886388167738914, - 0.06340890377759933, - 0.015949996188282967, - 0.06555631756782532, - 0.057088494300842285, - 0.10183705389499664, - -0.004194200038909912, - 0.010300399735569954, - -0.051059022545814514, - 0.08699583262205124, - 0.06291025131940842, - -0.06870310008525848, - -0.07695413380861282, - -0.03393455967307091, - -0.07696463167667389, - 0.05199280008673668, - 0.011047711595892906, - 0.029042871668934822, - 0.023142365738749504, - -0.0053185345605015755, - -0.10475137084722519, - -0.07338863611221313, - 0.0940384715795517, - -0.05864279717206955, - -0.012832490727305412, - -0.07504788786172867, - 0.0514068566262722, - 0.11660397052764893, - 0.032704733312129974, - 0.004244822543114424, - -0.014622854068875313, - 0.022180471569299698, - -0.04421330988407135, - 0.0025789428036659956, - 0.04622779041528702, - 0.039170339703559875, - -0.11233170330524445, - 0.016567479819059372, - -0.09519881010055542, - 0.05243542045354843, - -0.046724990010261536, - 0.14224502444267273, - 0.006798848044127226, - -0.05118474364280701, - -0.11130020767450333, - 0.03792344033718109, - -0.026183992624282837, - 0.07226990908384323, - 0.02974279224872589, - 0.06457917392253876, - 0.04768770933151245, - -0.08781243860721588, - 0.0921948179602623, - 0.051670871675014496, - -0.04571196436882019, - -0.07563783973455429, - -0.06704097986221313, - -0.0293809175491333, - 0.011358235031366348, - -0.009815889410674572, - -0.05694393813610077, - -0.028338033705949783, - 0.005018941126763821, - 0.000653441995382309, - 0.07874833047389984, - 0.12727107107639313, - 0.04640696197748184, - -0.12975960969924927 - ] - }, - "p244_038.wav": { - "name": "p244", - "embedding": [ - 0.06439477205276489, - 0.11627796292304993, - -0.018857136368751526, - -0.011145049706101418, - -0.025873221457004547, - 0.049101777374744415, - -0.1650121510028839, - 0.13044854998588562, - -0.027952594682574272, - 0.15885549783706665, - -0.08671392500400543, - 0.11310912668704987, - -0.016927197575569153, - -0.14900633692741394, - -0.033550798892974854, - 0.018714770674705505, - -0.036722928285598755, - -0.014324760064482689, - -0.022692708298563957, - -0.02819386124610901, - 0.054330985993146896, - 0.05505513772368431, - 0.009814209304749966, - -0.018059393391013145, - 0.008099757134914398, - 0.05739843472838402, - 0.0039299605414271355, - 0.0375874787569046, - 0.014269409701228142, - -0.05008117854595184, - -0.025907929986715317, - 0.10695318877696991, - -0.03858288377523422, - 0.01771639473736286, - 0.03339051455259323, - -0.005038121249526739, - -0.0033116545528173447, - -0.07335206121206284, - 0.0052226148545742035, - 0.008138231001794338, - -0.018129779025912285, - 0.06418715417385101, - 0.017314670607447624, - -0.023593097925186157, - 0.026232846081256866, - 0.02572501264512539, - 0.011489740572869778, - -0.06279759854078293, - -0.07686542719602585, - 0.168763667345047, - 0.06735078990459442, - -0.00111345702316612, - -0.05967877432703972, - -0.03979071229696274, - 0.08087699115276337, - -0.018116841092705727, - -0.074142687022686, - -0.032986100763082504, - 0.054672449827194214, - 0.13474556803703308, - -0.03676103800535202, - -0.06252637505531311, - 0.05071040615439415, - 0.11635462939739227, - 0.026544924825429916, - 0.06582682579755783, - 0.10050135850906372, - 0.09124962985515594, - -0.026495974510908127, - -0.0028315093368291855, - 0.013345044106245041, - 0.06011321395635605, - 0.05108907073736191, - -0.025840725749731064, - 0.04631713032722473, - -0.020554862916469574, - -0.024403532966971397, - 0.014409735798835754, - -0.02092524617910385, - -0.045812174677848816, - -0.0015328023582696915, - 0.011809545569121838, - -0.012846815399825573, - 0.04751688241958618, - -0.04888773709535599, - 0.031168799847364426, - 0.024889757856726646, - -0.03402239829301834, - 0.07779605686664581, - 0.028156638145446777, - 0.04669620841741562, - 0.04032839462161064, - -0.08856549859046936, - -0.07841338217258453, - 0.06819409877061844, - -0.0027875984087586403, - 0.013581261038780212, - 0.08013671636581421, - 0.04817834496498108, - -0.02230714075267315, - 0.11979600042104721, - 0.04247979074716568, - -0.019626734778285027, - 0.0074136629700660706, - -0.09032045304775238, - 0.14209407567977905, - 0.1045672819018364, - -0.05363459512591362, - 0.036355264484882355, - -0.06699031591415405, - 0.047368377447128296, - 0.04370930418372154, - -0.12915927171707153, - -0.08462279289960861, - 0.05312618613243103, - 0.04017074406147003, - -0.00770151149481535, - 0.10889987647533417, - 0.0024326108396053314, - 0.02700762078166008, - 0.08302212506532669, - -0.0719294399023056, - -0.06971342861652374, - -0.037190478295087814, - 0.05197039246559143, - -0.09291410446166992, - 0.06969888508319855, - 0.07189285755157471, - -0.0032593084033578634, - 0.0007802906329743564, - 0.0739070475101471, - -0.010575811378657818, - 0.008843726478517056, - -0.017711874097585678, - -0.01732797920703888, - 0.020265422761440277, - -0.0185215063393116, - -0.007625448517501354, - -0.03312220424413681, - 0.040559276938438416, - 0.04554632306098938, - 0.008804453536868095, - -0.03333550691604614, - -0.11797411739826202, - 0.018385019153356552, - 0.046660587191581726, - 0.05299576371908188, - -0.011743198148906231, - -0.03923667594790459, - -0.04114318639039993, - -0.03889688849449158, - -0.021580945700407028, - -0.024570494890213013, - 0.05154753848910332, - -0.010507899336516857, - 0.018989600241184235, - 0.1126655861735344, - 0.027028437703847885, - 0.006295781582593918, - -0.027226507663726807, - -0.004959492944180965, - 0.026845797896385193, - 0.03674827516078949, - -0.051401712000370026, - -0.08731059730052948, - -0.02251921407878399, - 0.030141083523631096, - -0.006006236188113689, - 0.06439631432294846, - 0.05828789621591568, - 0.013215817511081696, - 0.03246751427650452, - -0.09111323207616806, - 0.023509180173277855, - -0.10091763734817505, - -0.050731733441352844, - -0.012368658557534218, - -0.01097035314887762, - -0.012854345142841339, - 0.079320028424263, - 0.0087592713534832, - 0.05264304205775261, - -0.03827190026640892, - -0.055144526064395905, - -0.07200711965560913, - 0.04566948115825653, - 0.09830781817436218, - -0.01894742250442505, - 0.022245291620492935, - 0.04311996325850487, - 0.0045318896882236, - 0.04133991897106171, - 0.06632495671510696, - 0.09142457693815231, - -0.010978798381984234, - -0.0015562947373837233, - -0.05638126656413078, - 0.07100266218185425, - 0.06787656992673874, - -0.0793527215719223, - -0.0751798003911972, - -0.029535826295614243, - -0.06890953332185745, - 0.004041846841573715, - -0.007809102535247803, - 0.02664385735988617, - 0.01961926743388176, - -0.01260912325233221, - -0.1013621985912323, - -0.08399906754493713, - 0.0572051964700222, - -0.06348063051700592, - 0.0034241406247019768, - -0.085358165204525, - 0.06912264227867126, - 0.09726061671972275, - 0.04884674400091171, - -0.0440090075135231, - -0.045738112181425095, - 0.011684160679578781, - -0.03165445476770401, - 0.01865381747484207, - 0.012331570498645306, - 0.06041670963168144, - -0.11584147810935974, - 0.0500732883810997, - -0.07793223857879639, - 0.05905335396528244, - -0.07582663744688034, - 0.13418897986412048, - 0.029116196557879448, - -0.06510952115058899, - -0.10680127143859863, - 0.04201100394129753, - -0.021726496517658234, - 0.0337463840842247, - 0.01406768523156643, - 0.027783513069152832, - 0.03574041277170181, - -0.10570641607046127, - 0.08106917887926102, - 0.04952608793973923, - -0.023613858968019485, - -0.09165468066930771, - -0.061425477266311646, - -0.02786344848573208, - 0.04794113337993622, - 0.02549189329147339, - -0.062400832772254944, - -0.04226354509592056, - 0.024085480719804764, - 0.004088684916496277, - 0.09167845547199249, - 0.1242532879114151, - 0.034429892897605896, - -0.14338025450706482 - ] - }, - "p244_217.wav": { - "name": "p244", - "embedding": [ - 0.05695503577589989, - 0.07583010196685791, - -0.016389742493629456, - 0.018431421369314194, - -0.040894389152526855, - 0.04120801016688347, - -0.1546989530324936, - 0.14659383893013, - -0.015423774719238281, - 0.13480515778064728, - -0.06425818055868149, - 0.12210576236248016, - 0.0032971855252981186, - -0.20861417055130005, - -0.013658901676535606, - 0.051295384764671326, - -0.028287667781114578, - -0.022000018507242203, - -0.03859560191631317, - -0.009296084754168987, - 0.0401318296790123, - 0.03239862620830536, - 0.001549319364130497, - -0.009849275462329388, - 0.020781300961971283, - 0.054708003997802734, - 0.0013669790932908654, - 0.046801090240478516, - 0.002334756776690483, - -0.029335247352719307, - -0.030995184555649757, - 0.10988393425941467, - -0.05703957751393318, - 0.017359916120767593, - 0.08969232439994812, - -0.016148347407579422, - -0.03298070654273033, - -0.0500020869076252, - -0.029819557443261147, - 0.003663610899820924, - -0.05784587189555168, - 0.07706837356090546, - 0.04449599236249924, - -0.008327395655214787, - 0.06315970420837402, - 0.055972568690776825, - 0.0015063886530697346, - -0.054875247180461884, - -0.09596193581819534, - 0.138583242893219, - 0.0606389194726944, - 0.00836460292339325, - -0.07635632157325745, - -0.04892273247241974, - 0.09018982946872711, - -0.027881067246198654, - -0.10177905112504959, - -0.03320343419909477, - 0.08164609968662262, - 0.14266330003738403, - -0.04466687887907028, - -0.04286735877394676, - 0.017054174095392227, - 0.10297219455242157, - 0.06363245099782944, - 0.10223960876464844, - 0.08230701088905334, - 0.12241026759147644, - -0.014631897211074829, - 0.025025956332683563, - 0.059896860271692276, - 0.0698169618844986, - 0.07432568073272705, - -0.023188291117548943, - 0.03386310115456581, - 0.02448231168091297, - -0.023037364706397057, - -0.012589871883392334, - -0.033811695873737335, - 0.01158376969397068, - 0.001882069744169712, - 0.02314615249633789, - 0.03053019940853119, - 0.03674817085266113, - -0.029230520129203796, - 0.05880194902420044, - 0.06158149614930153, - -0.01925525814294815, - 0.04934092238545418, - 0.03643257915973663, - -0.004568001255393028, - 0.062270596623420715, - -0.12189958244562149, - -0.1047031581401825, - 0.031784188002347946, - -0.015407895669341087, - 0.012638932093977928, - 0.06763593852519989, - 0.04626145958900452, - -0.005873025394976139, - 0.11342759430408478, - 0.05139974504709244, - -0.020759545266628265, - 0.05428338423371315, - -0.09721888601779938, - 0.1181439608335495, - 0.0793595165014267, - -0.031073730438947678, - 0.0436832532286644, - -0.07522480189800262, - 0.08172430098056793, - 0.06279304623603821, - -0.13817885518074036, - -0.06196904182434082, - 0.05790138989686966, - 0.010804906487464905, - -0.02299630269408226, - 0.1456695795059204, - -0.019599225372076035, - 0.03169623762369156, - 0.10761342942714691, - -0.08864068984985352, - -0.049610260874032974, - -0.017023073509335518, - 0.04631923884153366, - -0.08943146467208862, - 0.07312345504760742, - 0.024890314787626266, - 0.002169303596019745, - 0.0080955158919096, - 0.09349853545427322, - -0.0017502279952168465, - -0.01249099150300026, - -0.018021676689386368, - -0.0033812960609793663, - 0.03437964990735054, - -0.022166170179843903, - -0.002121887868270278, - 0.02192838490009308, - 0.029682371765375137, - 0.04028315842151642, - 0.010425377637147903, - -0.028041765093803406, - -0.1250048577785492, - 0.008147882297635078, - 0.034634895622730255, - 0.10226175934076309, - -0.01784675195813179, - -0.010427807457745075, - -0.05093197152018547, - -0.07607053220272064, - 0.003930846229195595, - -0.020810648798942566, - 0.055109620094299316, - 0.0025551526341587305, - 0.013672232627868652, - 0.10381767153739929, - 0.014201506972312927, - 0.01283918134868145, - -0.04554907977581024, - -0.027497630566358566, - 0.005998424254357815, - 0.06512703746557236, - -0.09334829449653625, - -0.06682019680738449, - -0.010354258120059967, - 0.004766783677041531, - -0.025279425084590912, - 0.037344325333833694, - 0.03449561819434166, - 0.036036308854818344, - 0.036823682487010956, - -0.08531507104635239, - 0.0018016083631664515, - -0.1394508183002472, - -0.0815252959728241, - -0.02151612378656864, - -0.0015938917640596628, - -0.012259655632078648, - 0.0693151131272316, - 0.0033840928226709366, - 0.052119988948106766, - -0.026590734720230103, - -0.06745981425046921, - -0.07988043129444122, - 0.06508442759513855, - 0.07555993646383286, - -0.010908445343375206, - 0.038952335715293884, - 0.04205147176980972, - -0.03055877983570099, - 0.03896339610219002, - 0.07675856351852417, - 0.11281244456768036, - -0.008918274194002151, - 0.03658916801214218, - -0.06202957034111023, - 0.12142127752304077, - 0.0861264169216156, - -0.06951456516981125, - -0.09837830066680908, - 0.005457638297230005, - -0.06019698828458786, - 0.01422215811908245, - -0.02416147291660309, - 0.005793252028524876, - 0.023187510669231415, - 0.0074515496380627155, - -0.08348351716995239, - -0.07295876741409302, - 0.05929452180862427, - -0.07700511068105698, - -0.003775406628847122, - -0.0873730480670929, - 0.047739215195178986, - 0.10900114476680756, - 0.024313991889357567, - -0.04424477368593216, - -0.03279256820678711, - 0.05699847638607025, - -0.03447532653808594, - -0.0061314767226576805, - 0.03095804899930954, - 0.035259686410427094, - -0.10586991906166077, - 0.004525955766439438, - -0.04176730290055275, - 0.05354766547679901, - -0.04886385798454285, - 0.13047727942466736, - -0.0014129416085779667, - -0.05769328773021698, - -0.061096373945474625, - 0.017582561820745468, - 0.010860014706850052, - 0.042609430849552155, - 0.027057643979787827, - 0.07789435982704163, - 0.04094276577234268, - -0.06281334161758423, - 0.12140953540802002, - 0.03557422012090683, - -0.03031773492693901, - -0.057436373084783554, - -0.06296677887439728, - -0.03395545110106468, - 0.021839486435055733, - 0.01674625836312771, - -0.09285302460193634, - -0.019008222967386246, - 0.026923567056655884, - -0.03376341238617897, - 0.02698184736073017, - 0.14462527632713318, - 0.05075627937912941, - -0.13280043005943298 - ] - }, - "p244_175.wav": { - "name": "p244", - "embedding": [ - 0.06346789002418518, - 0.07751361280679703, - -0.061345186084508896, - 0.0059855300933122635, - -0.06816507875919342, - 0.050359081476926804, - -0.1395430713891983, - 0.12861904501914978, - -0.0015069455839693546, - 0.13703063130378723, - -0.02308640256524086, - 0.12194506824016571, - 0.00845268089324236, - -0.14056716859340668, - -0.010019214823842049, - 0.016649287194013596, - -0.01854596473276615, - -0.010776717215776443, - -0.07068033516407013, - -0.052345190197229385, - 0.03140375390648842, - 0.02599193900823593, - 0.027596620842814445, - -0.06848743557929993, - 0.04689355939626694, - 0.047257475554943085, - -0.015023407526314259, - 0.013693500310182571, - -0.011562461964786053, - -0.07093634456396103, - -0.019092991948127747, - 0.08376101404428482, - -0.09498448669910431, - 0.008083469234406948, - 0.03845779597759247, - -0.04263698309659958, - -0.051721327006816864, - -0.037724271416664124, - 0.007709467317909002, - 0.023672278970479965, - -0.020013734698295593, - 0.08998864889144897, - 0.03202503174543381, - -0.030420318245887756, - 0.03258658945560455, - 0.001791088841855526, - -0.006609803065657616, - -0.03055848926305771, - -0.07270245999097824, - 0.13985535502433777, - 0.04490544646978378, - 0.010950845666229725, - -0.09802262485027313, - -0.03327689319849014, - 0.07671360671520233, - -0.03424697741866112, - -0.10362584888935089, - -0.035309724509716034, - 0.020134149119257927, - 0.10259351879358292, - -0.034387215971946716, - -0.04813402146100998, - 0.03244548290967941, - 0.08628875762224197, - 0.0844549611210823, - 0.0418822281062603, - 0.11302679032087326, - 0.12304940819740295, - -0.03118106722831726, - 0.042952124029397964, - 0.03557780757546425, - 0.0666932687163353, - 0.04517190530896187, - -0.014657807536423206, - 0.03452032059431076, - -0.046633247286081314, - 0.011902025900781155, - -0.06789163500070572, - -0.024341249838471413, - -0.037758272141218185, - -0.006508654914796352, - 0.018251894041895866, - 0.02663244679570198, - 0.05192834883928299, - -0.062040265649557114, - 0.02899051085114479, - 0.0837457999587059, - -0.0628102719783783, - 0.0670715719461441, - 0.06139007955789566, - 0.010444831103086472, - 0.042947880923748016, - -0.12700915336608887, - -0.07083833962678909, - 0.04285401478409767, - -0.0016075544990599155, - 0.04289363697171211, - 0.04432043060660362, - 0.037159513682127, - 0.003587345825508237, - 0.0998082309961319, - 0.0711551383137703, - -0.020768309012055397, - 0.003666960634291172, - -0.05657308176159859, - 0.1488042175769806, - 0.08466958999633789, - -0.04089108854532242, - 0.046057868748903275, - -0.05397312343120575, - 0.04399727284908295, - 0.03330078348517418, - -0.08752667903900146, - -0.07684275507926941, - 0.01432211697101593, - 0.006382961757481098, - -0.01619766280055046, - 0.13093313574790955, - 0.0027348671574145555, - 0.04161256179213524, - 0.08714604377746582, - -0.08063099533319473, - -0.04750104993581772, - -0.008746836334466934, - 0.04431828111410141, - -0.0802057683467865, - 0.05823252350091934, - 0.06678904592990875, - -0.006550130434334278, - 0.03733261674642563, - 0.09099490195512772, - 0.009603897109627724, - 0.02753298729658127, - 0.0021466300822794437, - 0.010971230454742908, - 0.04248962178826332, - 0.02431904710829258, - -0.01051582582294941, - 0.04359505698084831, - 0.028018495067954063, - 0.08911307901144028, - -0.007681314367800951, - 0.006342812441289425, - -0.09554597735404968, - 0.025849614292383194, - 0.03165729343891144, - 0.0675920695066452, - -0.057238973677158356, - -0.008086977526545525, - -0.026148777455091476, - -0.06742510199546814, - 0.017159990966320038, - 0.00811290554702282, - 0.06082607060670853, - 0.002425331389531493, - -0.011956543661653996, - 0.1416836380958557, - 0.04129130765795708, - 0.014940298162400723, - -0.03290032222867012, - 0.010639454238116741, - 0.00022791652008891106, - 0.07365251332521439, - -0.09108705073595047, - -0.05736298859119415, - -0.02716674469411373, - 0.013833167031407356, - -0.012481394223868847, - 0.08955036848783493, - 0.09413868188858032, - 0.0075254542753100395, - 0.03182124346494675, - -0.05812346190214157, - 0.013353829272091389, - -0.04923943802714348, - -0.03914391249418259, - -0.004920173902064562, - -0.055269740521907806, - -0.06653085350990295, - 0.09049324691295624, - 0.017146818339824677, - 0.053514279425144196, - -0.05546388775110245, - -0.06544967740774155, - -0.06264512985944748, - 0.023702749982476234, - 0.02649877779185772, - -0.060478150844573975, - -0.004596519283950329, - 0.05585126578807831, - -0.027569957077503204, - 0.019031893461942673, - 0.09241661429405212, - 0.06888863444328308, - -0.06637530773878098, - -0.00018554739654064178, - -0.05951085686683655, - 0.11070995032787323, - 0.07835686951875687, - -0.07178416848182678, - -0.07632406800985336, - -0.046406686305999756, - -0.051771312952041626, - -0.018572799861431122, - -0.02746032178401947, - 0.02444702759385109, - 0.056583959609270096, - -0.009931129403412342, - -0.08003847301006317, - -0.11080262809991837, - 0.08064588904380798, - -0.08228999376296997, - 0.024792760610580444, - -0.08462819457054138, - 0.028489451855421066, - 0.06298046559095383, - 0.026346109807491302, - -0.03569354489445686, - -0.023774772882461548, - 0.017565038055181503, - -0.005380216985940933, - 0.039895229041576385, - 0.060947537422180176, - 0.05775279179215431, - -0.06291563808917999, - -0.028329215943813324, - -0.04761023074388504, - 0.044990167021751404, - -0.023175090551376343, - 0.12658056616783142, - 0.026585116982460022, - -0.03660263866186142, - -0.07988627254962921, - 0.039842698723077774, - -0.037337832152843475, - 0.04629252478480339, - 0.06123068183660507, - 0.07132358849048615, - 0.04912687465548515, - -0.062370799481868744, - 0.08713943511247635, - 0.0624421201646328, - -0.027981458231806755, - -0.08425964415073395, - -0.060185227543115616, - -0.02597776986658573, - 0.04996762052178383, - 0.032887209206819534, - -0.0841042548418045, - 0.034382712095975876, - 0.028365720063447952, - -0.004861542489379644, - 0.03693706914782524, - 0.09719918668270111, - 0.0782008022069931, - -0.09507626295089722 - ] - }, - "p244_207.wav": { - "name": "p244", - "embedding": [ - 0.005714900325983763, - 0.06457733362913132, - 0.004187434911727905, - -0.021525951102375984, - -0.0065626781433820724, - 0.02792624942958355, - -0.14002498984336853, - 0.06731373071670532, - -0.01818159781396389, - 0.1356664001941681, - -0.05324416235089302, - 0.06830120831727982, - -0.034483082592487335, - -0.10734449326992035, - -0.007863657549023628, - 0.022485030815005302, - -0.05902174860239029, - -0.026858985424041748, - -0.0009185560047626495, - -0.08321932703256607, - 0.02623319998383522, - 0.005208658054471016, - 0.013213034719228745, - -0.04361630231142044, - -0.02752767875790596, - 0.07028138637542725, - 0.002143390476703644, - -0.0146803492680192, - -0.009182943031191826, - -0.04172234237194061, - 0.01835324987769127, - 0.06217292696237564, - -0.0318247489631176, - 0.004048257600516081, - 0.04170429706573486, - 0.007519562728703022, - -0.01493147574365139, - 0.01532783918082714, - 0.0287703275680542, - 0.06161107122898102, - -0.06338603794574738, - 0.07941804826259613, - 0.036901164799928665, - 0.014048144221305847, - 0.06236494705080986, - -0.01656649261713028, - -0.028536368161439896, - 0.034821610897779465, - -0.03549067676067352, - 0.10615966469049454, - 0.06451530009508133, - -0.017689723521471024, - -0.027370542287826538, - 0.012758234515786171, - 0.07373268902301788, - 0.0021164226345717907, - -0.11973743140697479, - -0.004540946334600449, - 0.03217212110757828, - 0.08122918009757996, - -0.040893152356147766, - -0.06576414406299591, - 0.014500039629638195, - 0.07964563369750977, - -0.0014269910752773285, - 0.062040407210588455, - 0.07595833390951157, - 0.07689637690782547, - -0.026510760188102722, - -0.040906645357608795, - 0.04899820685386658, - 0.05743949115276337, - 0.05673843249678612, - -0.024928472936153412, - 0.06329768896102905, - -0.034276604652404785, - 0.012909727171063423, - -0.02175063267350197, - -0.010366223752498627, - -0.04512477666139603, - -0.05208081007003784, - -0.02282804436981678, - 0.003028125036507845, - 0.045927394181489944, - -0.0029825950041413307, - -0.014140933752059937, - 0.06439346075057983, - -0.02593814767897129, - 0.03771301358938217, - 0.050027865916490555, - 0.014379791915416718, - 0.0230235792696476, - -0.05738743022084236, - -0.013791057281196117, - 0.003596492111682892, - -0.03006008267402649, - 0.07999237626791, - 0.036222681403160095, - 0.036017417907714844, - 0.03391757607460022, - 0.06323987990617752, - 0.04017386585474014, - -0.017293326556682587, - -0.019558804109692574, - -0.09338685870170593, - 0.09457619488239288, - 0.09398174285888672, - -0.06248994916677475, - 0.014357410371303558, - -5.624443292617798e-05, - 0.03288285806775093, - -0.015759091824293137, - -0.06893797963857651, - -0.023726005107164383, - 0.009546736255288124, - 0.08211015909910202, - 0.0017561540007591248, - 0.1265469193458557, - 0.016067221760749817, - 0.009599420242011547, - 0.09014800190925598, - -0.007023267447948456, - -0.026835009455680847, - -0.06230008974671364, - 0.018501663580536842, - -0.09613300859928131, - 0.06004936248064041, - 0.04435037449002266, - 0.03709470108151436, - 0.017522094771265984, - 0.09381219744682312, - 0.015421802178025246, - -0.004207766614854336, - -0.06147175654768944, - 0.00561306020244956, - 0.03227153420448303, - 0.020716127008199692, - 0.04621957987546921, - 0.054952818900346756, - 0.008233473636209965, - 0.1018039733171463, - 0.04387457296252251, - -0.013423305004835129, - -0.08311109244823456, - 0.021318968385457993, - 0.019052643328905106, - 0.01211455836892128, - -0.03850438445806503, - -0.03483520820736885, - -0.008608279749751091, - -0.07386927306652069, - -0.005466017872095108, - -0.03254125639796257, - 0.07076390087604523, - 0.0018328777514398098, - -0.034657251089811325, - 0.10914607346057892, - 0.03254685923457146, - -0.020932482555508614, - -0.007662458345293999, - -0.03775492310523987, - -0.036882780492305756, - 0.05189044028520584, - -0.16695855557918549, - -0.05213463306427002, - -0.03214156627655029, - 0.05830372869968414, - 0.04806680604815483, - 0.02171982452273369, - 0.09682385623455048, - -0.01593824289739132, - 0.034122928977012634, - 0.019758760929107666, - 0.0075564393773674965, - -0.05600166320800781, - -0.09161937236785889, - -0.0397486612200737, - -0.08457554876804352, - -0.03153682500123978, - 0.049176983535289764, - -0.05968166142702103, - 0.043516017496585846, - -0.016835235059261322, - -0.06165733188390732, - -0.052258171141147614, - 0.04853470250964165, - 0.022019289433956146, - -0.0495682992041111, - 0.008231607265770435, - 0.09220928698778152, - -0.01490121241658926, - 0.010350488126277924, - 0.02598405070602894, - 0.11678995937108994, - -0.07933177053928375, - 0.034209318459033966, - -0.05690230056643486, - 0.04964562505483627, - 0.06604070961475372, - -0.024854913353919983, - -0.04516545683145523, - -0.04230199381709099, - -0.033467452973127365, - 0.04247598350048065, - -0.05804087966680527, - -0.023922963067889214, - -0.02045528031885624, - 0.001905662938952446, - -0.043074484914541245, - -0.06196685880422592, - 0.04031866788864136, - -0.042273685336112976, - 0.01316012255847454, - -0.048686493188142776, - 0.014568752609193325, - -0.0010052993893623352, - 0.06246006488800049, - -0.06711981445550919, - 0.06435006111860275, - 0.013680890202522278, - -0.02490854635834694, - 0.025920730084180832, - 0.01244838535785675, - 0.048085447400808334, - -0.02043239399790764, - -0.07742955535650253, - -0.09716372936964035, - 0.026665080338716507, - -0.04094772785902023, - 0.04497615993022919, - 0.010428737848997116, - -0.038724079728126526, - 0.001246955245733261, - -0.029422644525766373, - -0.03412716090679169, - 0.021321220323443413, - 0.07773859053850174, - 0.07390090823173523, - 0.02460348978638649, - -0.0009994925931096077, - 0.09132890403270721, - 0.039713699370622635, - 0.02696148492395878, - -0.02657892368733883, - 0.013455790467560291, - -0.03710121288895607, - 0.006606810260564089, - 0.042904119938611984, - -0.09355448186397552, - 0.03492759168148041, - -0.006384681910276413, - 0.022673599421977997, - 0.025408102199435234, - 0.05549946799874306, - 0.03747066855430603, - -0.06575259566307068 - ] - }, - "p244_410.wav": { - "name": "p244", - "embedding": [ - 0.06138628348708153, - 0.11542730033397675, - 0.013618210330605507, - 0.0043386900797486305, - -0.02632880210876465, - 0.07874049246311188, - -0.12588030099868774, - 0.1312543749809265, - -0.06868959963321686, - 0.15047144889831543, - -0.07057936489582062, - 0.11297422647476196, - -0.024098871275782585, - -0.1708507537841797, - -0.04770872741937637, - 0.06264124810695648, - -0.04859438166022301, - 0.002145136473700404, - -0.02605314552783966, - 0.02059422805905342, - 0.03261344134807587, - 0.010087705217301846, - 0.050151657313108444, - -0.019247662276029587, - 0.036634813994169235, - 0.049692511558532715, - 0.022401003167033195, - 0.0738116055727005, - 0.031047113239765167, - -0.059921614825725555, - -0.029059529304504395, - 0.11814715713262558, - -0.03588221222162247, - 0.03566500544548035, - 0.08219851553440094, - 0.003195669502019882, - -0.0030348829459398985, - -0.07293616235256195, - -0.008689919486641884, - -0.01337275467813015, - -0.027580013498663902, - 0.06656365841627121, - 0.013780351728200912, - -0.007230506278574467, - 0.03034483641386032, - 0.02612973004579544, - -0.005744854919612408, - -0.04188116639852524, - -0.08389604091644287, - 0.13862720131874084, - 0.047218628227710724, - 0.00871156807988882, - -0.0780838280916214, - -0.09332337975502014, - 0.09848659485578537, - -0.018711350858211517, - -0.1180376410484314, - -0.03769146651029587, - 0.07095952332019806, - 0.1657940149307251, - -0.01791992597281933, - -0.026444222778081894, - 0.009156377986073494, - 0.11890661716461182, - 0.028830749914050102, - 0.12218604981899261, - 0.06318780034780502, - 0.08197610825300217, - 0.01749119721353054, - 0.05555614084005356, - 0.04741935059428215, - 0.05871226638555527, - 0.020235486328601837, - -0.01295311190187931, - 0.02967890165746212, - -0.010496165603399277, - -0.03945232182741165, - 0.02183038368821144, - -0.010659299790859222, - -0.016780901700258255, - -0.034632548689842224, - 0.007578754797577858, - -0.0019083371153101325, - 0.01640445366501808, - -0.008604365400969982, - 0.045778315514326096, - -0.009708210825920105, - -0.008862346410751343, - 0.07167281210422516, - 0.050735436379909515, - 0.020126227289438248, - 0.053325824439525604, - -0.05838897079229355, - -0.10883063077926636, - 0.003109367098659277, - 0.0016980597283691168, - 0.0108483312651515, - 0.07835330814123154, - 0.03138541430234909, - -0.014842085540294647, - 0.08973574638366699, - 0.06415779888629913, - 0.007397042587399483, - 0.026149261742830276, - -0.10174152255058289, - 0.10870009660720825, - 0.06329715251922607, - -0.019336581230163574, - 0.04037659615278244, - -0.04727781563997269, - 0.08257965743541718, - 0.09861951321363449, - -0.14841406047344208, - -0.08689580857753754, - 0.03101716935634613, - -0.00731317326426506, - -5.131463331053965e-05, - 0.09431871771812439, - -0.012281810864806175, - 0.001758349477313459, - 0.08549165725708008, - -0.08166474103927612, - -0.06902052462100983, - -0.026373399421572685, - 0.049318306148052216, - -0.06889750063419342, - 0.05453240126371384, - 0.031536247581243515, - -0.017920486629009247, - -0.02202051505446434, - 0.08621321618556976, - -0.006947343237698078, - 0.004568722099065781, - 0.034689128398895264, - -0.047042228281497955, - 0.0336570180952549, - -0.05507899448275566, - 0.029752647504210472, - 0.02880193293094635, - 0.0472036674618721, - 0.042597874999046326, - 0.007979786954820156, - -0.04230373352766037, - -0.08210102468729019, - -0.010056205093860626, - 0.06830783188343048, - 0.054157599806785583, - -0.015459793619811535, - -0.03502073884010315, - -0.025027073919773102, - -0.04586402326822281, - 0.024098828434944153, - -0.013705159537494183, - 0.08127333968877792, - 0.009081423282623291, - 0.0028022523038089275, - 0.11192270368337631, - -0.0038240584544837475, - 0.003933777566999197, - -0.06656401604413986, - -0.020861174911260605, - 0.03896436467766762, - 0.04738524183630943, - -0.08721837401390076, - -0.0633912906050682, - 0.02096131443977356, - -0.00287054106593132, - -0.015570729970932007, - 0.02618386410176754, - 0.04338506981730461, - 0.011953679844737053, - 0.05130385980010033, - -0.06290173530578613, - 0.009931986220180988, - -0.12084567546844482, - -0.06573657691478729, - -0.03267340362071991, - -0.02831471711397171, - -0.00558051560074091, - 0.07871821522712708, - 0.014146724715828896, - 0.03070511668920517, - 0.009243200533092022, - -0.07759562134742737, - -0.0696643590927124, - 0.07821585237979889, - 0.09075450897216797, - 0.007773653604090214, - 0.05091632157564163, - 0.037621937692165375, - -0.02680756151676178, - 0.0488693043589592, - 0.05618232488632202, - 0.08351285755634308, - -0.027692638337612152, - 0.005666225682944059, - -0.0912637710571289, - 0.0723094791173935, - 0.09403886646032333, - -0.11352118104696274, - -0.09781872481107712, - -0.018661251291632652, - -0.05001499876379967, - 0.03118080273270607, - -0.025698017328977585, - 0.006016460247337818, - 0.030104126781225204, - -0.036268360912799835, - -0.08565820753574371, - -0.09698472917079926, - 0.10658232867717743, - -0.07032830268144608, - -0.020525306463241577, - -0.05380408093333244, - 0.04795943200588226, - 0.06001579016447067, - 0.041961412876844406, - -0.027583729475736618, - 0.013682641088962555, - 0.046150289475917816, - -0.06453683227300644, - -0.03261297568678856, - 0.02873014286160469, - -0.006042590364813805, - -0.08512724936008453, - 0.03716982528567314, - -0.06654595583677292, - 0.07547879219055176, - -0.08775123953819275, - 0.1703391969203949, - -0.04174051806330681, - -0.08346080780029297, - -0.08242104947566986, - 0.016172874718904495, - -0.031128808856010437, - 0.016164379194378853, - 0.031993091106414795, - 0.05852271243929863, - 0.008681602776050568, - -0.07399953901767731, - 0.11765526235103607, - 0.012885339558124542, - -0.0033774811308830976, - -0.06865650415420532, - -0.04924626275897026, - -0.04310857504606247, - 0.0314045250415802, - -0.012140999548137188, - -0.08920430392026901, - 0.002188728656619787, - 0.014187728986144066, - -0.020532403141260147, - 0.061600007116794586, - 0.1364554464817047, - 0.05143813416361809, - -0.12346476316452026 - ] - }, - "p244_268.wav": { - "name": "p244", - "embedding": [ - 0.06310431659221649, - 0.08891062438488007, - 0.057315338402986526, - -0.008858971297740936, - 0.031672459095716476, - 0.02658783830702305, - -0.07486759126186371, - 0.07301227748394012, - 0.050209399312734604, - 0.0840902104973793, - -0.11808949708938599, - 0.04236871376633644, - -0.052433691918849945, - -0.12814535200595856, - -0.051364652812480927, - 0.020134927704930305, - -0.0855218842625618, - -0.00544728385284543, - -0.04091191291809082, - -0.025319723412394524, - 0.009479985572397709, - 0.01872437074780464, - 0.05280330032110214, - -0.022985313087701797, - 0.00765775702893734, - 0.026311120018363, - -0.01164957880973816, - 0.0036260634660720825, - 0.0226412583142519, - -0.02220800518989563, - 0.055221930146217346, - 0.031026408076286316, - 0.009599806740880013, - 0.03356578201055527, - 0.04034927859902382, - 0.0368569940328598, - 0.003639408852905035, - -0.03918633610010147, - -0.03377586230635643, - 0.06772951036691666, - -0.0343666709959507, - 0.04551781713962555, - 0.04054827243089676, - -0.037262845784425735, - 0.06552249193191528, - 0.017257429659366608, - -0.04550604522228241, - -0.017996232956647873, - -0.10338733345270157, - 0.1516112983226776, - 0.028339693322777748, - 0.040444083511829376, - -0.08263899385929108, - -0.009530819952487946, - 0.06374624371528625, - -0.021870657801628113, - -0.0972333624958992, - -0.0007095485925674438, - 0.06050730496644974, - 0.06377357989549637, - 0.0028351168148219585, - -0.027675624936819077, - -0.017260735854506493, - 0.042442962527275085, - 0.0008119605481624603, - 0.012130390852689743, - 0.08333855122327805, - 0.08334726095199585, - 0.00598897784948349, - 0.03944366052746773, - 0.06778285652399063, - -0.009524425491690636, - 0.04882204160094261, - -0.013460765592753887, - 0.007070770487189293, - -0.030017070472240448, - -0.02819071151316166, - -0.002772220876067877, - -0.0037603285163640976, - -0.020120825618505478, - 0.02786005474627018, - -0.02203180640935898, - 0.013314452953636646, - 0.028675565496087074, - -0.03209492936730385, - -0.01110602542757988, - -0.007717551663517952, - 0.04579617455601692, - 0.06896176934242249, - 0.05184534192085266, - 0.017284339293837547, - 0.033198677003383636, - -0.02694527618587017, - -0.10608524084091187, - -0.04547639191150665, - -0.029947763308882713, - 0.02002204954624176, - 0.005893515422940254, - 0.04120960831642151, - -0.0018764566630125046, - 0.09274991601705551, - 0.015705928206443787, - -0.017828630283474922, - -0.016607899218797684, - -0.10144427418708801, - 0.038542818278074265, - 0.08532913029193878, - -0.00023947053705342114, - 0.011417156085371971, - -0.012561132200062275, - 0.05507110059261322, - 0.07522506266832352, - -0.06105435639619827, - 0.006394127383828163, - 0.032938163727521896, - 0.04430108889937401, - 0.051403701305389404, - 0.08237497508525848, - 0.011897895485162735, - 0.01515619270503521, - 0.1135254055261612, - -0.06646746397018433, - 0.00946538895368576, - -0.0026697758585214615, - -0.000601351261138916, - -0.01414368487894535, - 0.026824194937944412, - 0.015875209122896194, - 0.008434277027845383, - -0.023086605593562126, - 0.02801133133471012, - 0.01820078119635582, - 0.007520037703216076, - -0.08520317077636719, - 0.021558113396167755, - 0.06758968532085419, - -0.028813021257519722, - 0.01090240478515625, - 0.06225084140896797, - 0.07790062576532364, - 0.009946642443537712, - 0.08515550941228867, - -0.07937370240688324, - -0.03198190778493881, - 0.016087235882878304, - 0.025300810113549232, - 0.016921505331993103, - -0.01847926713526249, - -0.041926927864551544, - -0.04404903203248978, - 0.010373488068580627, - 0.07995498180389404, - -0.022619884461164474, - 0.04849045351147652, - 0.051200851798057556, - -0.02890632301568985, - 0.09097415208816528, - -0.029832040891051292, - -0.014637788757681847, - -0.03373027592897415, - -0.06292355060577393, - -0.017978297546505928, - 0.025941012427210808, - -0.14169664680957794, - -0.028501026332378387, - -0.012339752167463303, - -0.02788308635354042, - 0.002613095100969076, - -0.0028673741035163403, - 0.05240756645798683, - -0.03357310593128204, - 0.005628190003335476, - -0.03130502998828888, - 0.00947977788746357, - -0.06364037096500397, - -0.08878746628761292, - 0.03150235116481781, - -0.018351947888731956, - 0.039620839059352875, - 0.08282946050167084, - -0.03261521831154823, - -0.0008367574773728848, - -0.03674977272748947, - -0.0852208212018013, - 0.008686866611242294, - 0.101239874958992, - 0.031720276921987534, - 0.005959689617156982, - 0.0405784547328949, - 0.0440894216299057, - -0.024530742317438126, - 0.05612146109342575, - -0.007912315428256989, - 0.07587370276451111, - -0.07104907929897308, - 0.008375139907002449, - -0.012511083856225014, - 0.04508136957883835, - 0.04878731817007065, - -0.03532436862587929, - -0.09116031229496002, - -0.04800465330481529, - -0.017353862524032593, - 0.021244684234261513, - -0.016801459714770317, - -0.025423120707273483, - 0.008604750968515873, - -0.04332951456308365, - -0.037103623151779175, - -0.0843779593706131, - 0.004076346755027771, - 0.012920545414090157, - -0.007513933815062046, - -0.050823867321014404, - 0.02897595427930355, - 0.017536111176013947, - -0.0022208113223314285, - -0.01085618231445551, - 0.06907113641500473, - -0.035663239657878876, - -0.04684930294752121, - -0.07966738194227219, - -0.028518524020910263, - 0.011889120563864708, - -0.022107306867837906, - -0.04321623593568802, - -0.048167552798986435, - 0.07959474623203278, - -0.015826363116502762, - 0.07123249769210815, - 0.009701437316834927, - -0.00923224724829197, - 0.0072501786053180695, - -0.011874960735440254, - -0.04539987072348595, - 0.028477970510721207, - 0.03939606994390488, - 0.0022410042583942413, - 0.03137281537055969, - -0.0145358145236969, - 0.06984752416610718, - 0.025273308157920837, - -0.004561700392514467, - -0.016134023666381836, - -0.0041047632694244385, - -0.05413687601685524, - -0.059700362384319305, - -0.028672901913523674, - -0.0455009862780571, - 0.044798754155635834, - -0.011599814519286156, - 0.03188484162092209, - 0.011966836638748646, - 0.0701262354850769, - 0.017792966216802597, - -0.0608154833316803 - ] - }, - "p244_020.wav": { - "name": "p244", - "embedding": [ - 0.020111050456762314, - 0.09247728437185287, - 0.025166435167193413, - 0.010333132930099964, - -0.056210409849882126, - 0.01853836700320244, - -0.09827360510826111, - 0.07573895156383514, - -0.04189908131957054, - 0.07756853103637695, - -0.05870659276843071, - 0.08700592815876007, - -0.06342567503452301, - -0.14062091708183289, - -0.031100889667868614, - 0.021081268787384033, - -0.03437665104866028, - -0.02160629630088806, - -0.04198909550905228, - -0.012814931571483612, - 0.01871916651725769, - -0.020449180155992508, - 0.035803817212581635, - 0.008470350876450539, - -0.03875792771577835, - 0.05794673413038254, - 0.0016769858775660396, - 0.019986871629953384, - 0.005749349948018789, - -0.02471870183944702, - 0.02758297324180603, - 0.06641179323196411, - -0.010039208456873894, - -0.005528332199901342, - 0.03912268579006195, - -0.005993373226374388, - -0.005713280290365219, - -0.05293441563844681, - -0.04953199625015259, - 0.014004185795783997, - -0.07651299983263016, - 0.030638379976153374, - 0.023359425365924835, - -0.0324578583240509, - 0.05405449867248535, - 0.0034008524380624294, - -0.03579028695821762, - -0.015064412727952003, - -0.08754132688045502, - 0.09980251640081406, - 0.06604974716901779, - -0.0009139559115283191, - -0.02642335742712021, - -0.038833267986774445, - 0.11125248670578003, - -0.03282087296247482, - -0.07986927032470703, - -0.04186466336250305, - 0.07153049111366272, - 0.1067778468132019, - -0.03292055428028107, - -0.035826176404953, - -0.011656848713755608, - 0.07207497954368591, - 0.053108539432287216, - 0.06990865617990494, - 0.07931245863437653, - 0.08371011912822723, - -0.03666648268699646, - -0.007143992930650711, - 0.06109270453453064, - 0.051477786153554916, - 0.022509783506393433, - -0.015039490535855293, - 0.021543193608522415, - 0.016744941473007202, - -0.026245316490530968, - 0.024499056860804558, - -0.007970703765749931, - 0.0026396973989903927, - -0.018890388309955597, - -0.009461496025323868, - -0.005383766256272793, - -0.013061519712209702, - -0.021321987733244896, - 0.04273631423711777, - 0.03139588236808777, - 0.011878791265189648, - 0.06219147890806198, - 0.05063939839601517, - 0.0008488788153044879, - 0.08594416081905365, - -0.04098690301179886, - -0.07568081468343735, - -0.017578821629285812, - -0.003560521174222231, - 0.016415735706686974, - 0.05457286164164543, - 0.0023028801660984755, - -0.010014718398451805, - 0.07237141579389572, - 0.02977786771953106, - -0.0027614531572908163, - 0.024141548201441765, - -0.11407139897346497, - 0.054244957864284515, - 0.04059650003910065, - -0.015274407342076302, - 0.006759863346815109, - -0.025715915486216545, - 0.09273432195186615, - 0.07683676481246948, - -0.03982778638601303, - -0.06374648213386536, - 0.03759436309337616, - 0.04261960834264755, - -0.00803883746266365, - 0.10744534432888031, - -0.017380472272634506, - 0.006272796541452408, - 0.11523531377315521, - -0.06526540219783783, - -0.03705465421080589, - -0.012595325708389282, - 0.010098084807395935, - -0.04520164430141449, - 0.0245953481644392, - 0.042069196701049805, - -0.022006560117006302, - 0.01372842863202095, - 0.08870820701122284, - -0.006402289029210806, - -0.013793490827083588, - -0.006970482878386974, - -0.059971489012241364, - 0.03013474866747856, - -0.0041718631982803345, - -0.015474086627364159, - 0.022079743444919586, - 0.08087258040904999, - 0.028789296746253967, - -0.0023215345572680235, - -0.02867100201547146, - -0.05714616924524307, - 0.023201212286949158, - 0.0642385333776474, - 0.040239740163087845, - 0.011647403240203857, - -0.02849597856402397, - -0.07064931839704514, - -0.013435274362564087, - 0.022055521607398987, - -0.04722315073013306, - 0.0829038918018341, - -0.023268667981028557, - 0.0057359253987669945, - 0.06697870790958405, - -0.003052075859159231, - -0.017235036939382553, - -0.05294032394886017, - -0.05445124953985214, - 0.01674816571176052, - 0.04757261276245117, - -0.07878684252500534, - -0.05606096237897873, - -0.05666513741016388, - 0.052628397941589355, - 0.026166167110204697, - 0.0031677584629505873, - 0.037842586636543274, - -0.01681971177458763, - 0.008235390298068523, - -0.053279027342796326, - 0.03407876938581467, - -0.04982725530862808, - -0.04811428114771843, - 0.00028219912201166153, - -0.007377403788268566, - 0.01042214222252369, - 0.03375440090894699, - -0.029170675203204155, - 0.02626769058406353, - -0.018943093717098236, - -0.1053246557712555, - -0.05474048852920532, - 0.04039070010185242, - 0.03152260184288025, - 0.0017168143531307578, - 0.04159450903534889, - 0.067286416888237, - -0.035605937242507935, - 0.045907825231552124, - 0.04507463425397873, - 0.08741877973079681, - -0.060339268296957016, - 0.022528639063239098, - -0.004920828156173229, - 0.042768143117427826, - 0.059048693627119064, - -0.07067345827817917, - -0.09288397431373596, - -0.023263832554221153, - -0.062192898243665695, - 0.025707727298140526, - -0.01939145103096962, - -0.021507736295461655, - 0.029672157019376755, - -0.005507215857505798, - -0.08770778030157089, - -0.0758291482925415, - 0.07726240158081055, - -0.03542296588420868, - 0.014739079400897026, - -0.06024390086531639, - 0.008896338753402233, - 0.047745928168296814, - 0.07181842625141144, - -0.005642815493047237, - 0.007414764724671841, - 0.039597287774086, - -0.0265686996281147, - -0.009603145532310009, - 0.025013327598571777, - 0.05142961069941521, - -0.026072543114423752, - 0.017455385997891426, - -0.04093378409743309, - 0.04691533371806145, - -0.007908816449344158, - 0.09570178389549255, - 0.01324513927102089, - -0.03373609855771065, - -0.04519186541438103, - 0.011305350810289383, - -0.017221562564373016, - 0.04737751930952072, - 0.009630376473069191, - 0.05060143396258354, - 0.027384359389543533, - -0.05469958111643791, - 0.11512438952922821, - 0.03068365715444088, - -0.007685971911996603, - -0.04486910253763199, - 0.015228860080242157, - -0.06025262176990509, - -0.01608678698539734, - -0.010557505302131176, - -0.057354506105184555, - -0.0034065209329128265, - -0.0003556075389496982, - -0.0018839886179193854, - 0.051765598356723785, - 0.12646539509296417, - 0.06309166550636292, - -0.05137067288160324 - ] - }, - "p244_163.wav": { - "name": "p244", - "embedding": [ - 0.05841439217329025, - 0.09662588685750961, - -0.0061739301308989525, - -0.002237170934677124, - -0.0277771707624197, - 0.10140382498502731, - -0.04726060479879379, - 0.07432474195957184, - -0.00906817615032196, - 0.08759608864784241, - -0.08986325562000275, - 0.05857470631599426, - -0.031229551881551743, - -0.11394838988780975, - -0.02688022330403328, - 0.04017500579357147, - -0.04897162318229675, - -0.00450885808095336, - -0.038108449429273605, - -0.023775113746523857, - 0.0035048499703407288, - 0.006729887332767248, - 0.018333856016397476, - -0.0008832204039208591, - 0.0207950659096241, - 0.0375790111720562, - -0.0007985268603079021, - 0.01566438376903534, - -0.001614327309653163, - -0.03306248039007187, - -0.03332936018705368, - 0.07491204142570496, - -0.030627798289060593, - 0.0007486430695280433, - 0.04377755522727966, - -0.002278407569974661, - 0.02718573808670044, - -0.09462835639715195, - -0.0294888224452734, - 0.033161405473947525, - -0.04029253125190735, - 0.06710030138492584, - 0.019457699730992317, - -0.00834108330309391, - -0.002293851226568222, - 0.020104432478547096, - -0.029140889644622803, - -0.028434645384550095, - -0.06606759130954742, - 0.1440230906009674, - 0.053341470658779144, - 0.005462430417537689, - -0.05329783260822296, - -0.036008354276418686, - 0.08846418559551239, - -0.0031364555470645428, - -0.06557545810937881, - -0.020512767136096954, - 0.048026930540800095, - 0.07501393556594849, - 0.01893289014697075, - -0.029027706012129784, - 0.009401940740644932, - 0.10228752344846725, - 0.015846794471144676, - 0.0614558681845665, - 0.06616979837417603, - 0.10708193480968475, - -0.005989402532577515, - 0.020386233925819397, - 0.07188090682029724, - 0.026576941832900047, - 0.04715946316719055, - -0.023954156786203384, - 0.044818129390478134, - -0.021003147587180138, - -0.019935499876737595, - 0.01245113741606474, - -0.0332430861890316, - -0.0432429164648056, - 0.03391849994659424, - 0.004320711828768253, - 0.009877056814730167, - 0.004860926419496536, - -0.04436563700437546, - 0.024806179106235504, - 0.013585629872977734, - 0.06439605355262756, - 0.0663529634475708, - 0.036417096853256226, - 0.03045489452779293, - 0.047612227499485016, - -0.05296152085065842, - -0.08916735649108887, - 0.03690622001886368, - 0.02019021287560463, - 0.00821962021291256, - 0.039982110261917114, - 0.0407865010201931, - -0.02024291828274727, - 0.08885294198989868, - 0.019455110654234886, - -0.0012448076158761978, - 0.011308285407721996, - -0.06887713074684143, - 0.07067835330963135, - 0.06961586326360703, - -0.008308272808790207, - 0.036000657826662064, - -0.015452384017407894, - 0.09051434695720673, - 0.07199264317750931, - -0.09637239575386047, - -0.04512724280357361, - 0.0006475374102592468, - -0.005851843860000372, - -0.006102154962718487, - 0.09125592559576035, - -0.030349669978022575, - 0.017558574676513672, - 0.0658513754606247, - -0.05648725479841232, - -0.006466813385486603, - 0.02142878621816635, - -0.011057816445827484, - -0.008932436816394329, - 0.007018874399363995, - 0.020267408341169357, - -0.0030883229337632656, - -0.036680594086647034, - 0.04770880192518234, - 0.010833981446921825, - 0.0029827263206243515, - -0.020794425159692764, - -0.004892662167549133, - 0.02534985914826393, - -0.0098141860216856, - -0.02050180360674858, - 0.023007284849882126, - 0.04670095443725586, - 0.01775568164885044, - -0.0026280980091542006, - -0.03649647533893585, - -0.07093364000320435, - 0.00864366628229618, - 0.007204011082649231, - 0.01648777350783348, - 0.014602276496589184, - -0.012358425185084343, - -0.03325846046209335, - -0.01984560303390026, - 0.021259360015392303, - -0.04084467515349388, - 0.04148033261299133, - 0.059877678751945496, - -0.05124928802251816, - 0.08260767161846161, - -0.0012720997910946608, - -0.0076899281702935696, - -0.03545330837368965, - -0.045284971594810486, - 0.034459054470062256, - 0.042196448892354965, - -0.053837403655052185, - -0.05046524852514267, - 0.0033853824716061354, - -0.039978958666324615, - -0.029626306146383286, - 0.006336470600217581, - 0.05984225124120712, - -0.011045667342841625, - -0.012948170304298401, - -0.08348678797483444, - 0.00969365332275629, - -0.07289309054613113, - -0.04234948754310608, - 0.040735792368650436, - -0.003280259668827057, - 0.00513502536341548, - 0.07622112333774567, - 0.0023975037038326263, - 0.006626129150390625, - -0.04571637511253357, - -0.06639240682125092, - 0.018399417400360107, - 0.06874015182256699, - 0.03879721835255623, - 0.014644498936831951, - 0.0469251349568367, - 0.06297238171100616, - 0.0021610483527183533, - 0.027958616614341736, - 0.039892397820949554, - 0.0855751782655716, - -0.023211505264043808, - 0.012845052406191826, - 0.0016873478889465332, - 0.082424595952034, - 0.021720226854085922, - -0.0700012668967247, - -0.05708795040845871, - -0.015773000195622444, - -0.038030482828617096, - 0.031374819576740265, - -0.004319166298955679, - 0.011662925593554974, - 0.023937970399856567, - -0.022233333438634872, - -0.07208476960659027, - -0.08108754456043243, - 0.05409551411867142, - -0.05163487046957016, - -0.02346532605588436, - -0.05439407378435135, - 0.04438807815313339, - 0.0686459168791771, - 0.032846350222826004, - -0.03742487356066704, - 0.03992089629173279, - 0.02078905701637268, - -0.028435055166482925, - -0.05065528303384781, - -0.006213558372110128, - 0.025874238461256027, - -0.06516356021165848, - 0.0005761708016507328, - -0.0627983808517456, - 0.06496476382017136, - -0.01604381576180458, - 0.09772796928882599, - 0.02124573104083538, - -0.011922435835003853, - -0.05777374655008316, - 0.034009236842393875, - -0.011686310172080994, - 0.03818716108798981, - 0.036626510322093964, - 0.01663830690085888, - 0.026756130158901215, - -0.06055809557437897, - 0.09657292068004608, - 0.022792678326368332, - -0.04041813313961029, - -0.05038847774267197, - 0.020560598000884056, - -0.04055638983845711, - -0.002742315409705043, - -0.0030675954185426235, - -0.07888146489858627, - 0.002169286832213402, - 0.037083711475133896, - 0.009535001590847969, - 0.01609252393245697, - 0.08241428434848785, - 0.05649503320455551, - -0.04198306053876877 - ] - }, - "p244_174.wav": { - "name": "p244", - "embedding": [ - 0.06053908169269562, - 0.08558464050292969, - -0.018965184688568115, - 0.0060822078958153725, - -0.058025211095809937, - 0.04829690605401993, - -0.15755316615104675, - 0.15240031480789185, - -0.044602636247873306, - 0.137856587767601, - -0.07941167801618576, - 0.12801824510097504, - -0.031585097312927246, - -0.18661773204803467, - -0.03130514174699783, - 0.05720669776201248, - -0.02270910143852234, - -0.035225965082645416, - -0.016919728368520737, - -0.03193862363696098, - 0.040963124483823776, - 0.019222203642129898, - 0.016967246308922768, - 0.02326958440244198, - 0.010996158234775066, - 0.07366849482059479, - -0.00920411478728056, - 0.028062259778380394, - -0.015596326440572739, - -0.014677177183330059, - -0.03142034634947777, - 0.10493294894695282, - -0.043143488466739655, - -0.01729748398065567, - 0.039214786142110825, - -0.015097531490027905, - -0.008306695148348808, - -0.06746401637792587, - 0.004913870710879564, - -0.02021232433617115, - -0.04165096580982208, - 0.06204339116811752, - -0.006956617813557386, - -0.012596439570188522, - 0.0532010979950428, - 0.011642388999462128, - -0.020254941657185555, - -0.036211512982845306, - -0.1110805869102478, - 0.12352153658866882, - 0.0714971274137497, - 0.02566937543451786, - -0.09412231296300888, - -0.03582538664340973, - 0.10712945461273193, - -0.023610206320881844, - -0.08403027802705765, - -0.05404921621084213, - 0.06401799619197845, - 0.16266614198684692, - -0.044669680297374725, - -0.046707071363925934, - 0.03989778459072113, - 0.10140331089496613, - 0.053454235196113586, - 0.07785943895578384, - 0.09924812614917755, - 0.09417085349559784, - -0.034340281039476395, - 0.015459941700100899, - 0.04340926557779312, - 0.05862921476364136, - 0.06078168377280235, - -0.03103979304432869, - 0.027251489460468292, - -0.014847335405647755, - -0.011730505153536797, - 0.0032020213548094034, - -0.031521931290626526, - -0.03952204808592796, - -0.021138817071914673, - 0.001015878631733358, - -0.00703272083774209, - 0.017776522785425186, - -0.046797264367341995, - 0.04575476422905922, - 0.054252494126558304, - -0.03515557944774628, - 0.07513362914323807, - 0.037983037531375885, - 0.004451265092939138, - 0.06522634625434875, - -0.09930534660816193, - -0.07327760756015778, - 0.0673816129565239, - -0.002339091617614031, - 0.012199750170111656, - 0.06315010786056519, - 0.036556266248226166, - -0.02129976451396942, - 0.1067400574684143, - 0.050953444093465805, - 0.0050945100374519825, - 0.02508370392024517, - -0.09362341463565826, - 0.1274382472038269, - 0.10374052822589874, - -0.05730605870485306, - 0.04155851528048515, - -0.03230087459087372, - 0.03375503048300743, - 0.06299611926078796, - -0.11127364635467529, - -0.07434968650341034, - 0.021692616865038872, - 0.017203565686941147, - -0.007193603552877903, - 0.11787600815296173, - -0.0026278397999703884, - 0.03939511626958847, - 0.10966388881206512, - -0.07608084380626678, - -0.07123257219791412, - -0.024885917082428932, - 0.045376308262348175, - -0.08241355419158936, - 0.08154720067977905, - 0.08450458198785782, - 0.025532372295856476, - 0.015833169221878052, - 0.07506553083658218, - -0.008143452927470207, - -0.013271811418235302, - -0.007883160375058651, - -0.040905918926000595, - 0.013033452443778515, - -0.014070827513933182, - -0.022556472569704056, - 0.030848516151309013, - 0.03128411993384361, - 0.048257872462272644, - 0.010475965216755867, - -0.005857937037944794, - -0.11833178997039795, - 0.005440273322165012, - 0.057075582444667816, - 0.06255810707807541, - -0.02172510325908661, - -0.032551079988479614, - -0.036506086587905884, - -0.047954998910427094, - -0.0022448524832725525, - -0.0046116653829813, - 0.07790759205818176, - -0.012245937250554562, - 0.01959780603647232, - 0.0952703207731247, - 0.037075772881507874, - 0.017934000119566917, - -0.0387270450592041, - -0.0182648878544569, - 0.020462749525904655, - 0.05743202939629555, - -0.081120565533638, - -0.07685534656047821, - -0.043960489332675934, - 0.05843103304505348, - -0.022667063400149345, - 0.06382974982261658, - 0.06521397829055786, - 0.0032231160439550877, - -0.0037277741357684135, - -0.08563626557588577, - 0.05547960847616196, - -0.09182780236005783, - -0.05968383699655533, - -0.005924026481807232, - -0.033981502056121826, - -0.023522641509771347, - 0.06392447650432587, - 0.019974686205387115, - 0.051858775317668915, - -0.052253663539886475, - -0.08003184199333191, - -0.08746812492609024, - 0.039200589060783386, - 0.08401018381118774, - -0.021278902888298035, - 0.043560490012168884, - 0.03696700558066368, - -0.02436467446386814, - 0.06060680001974106, - 0.06839732825756073, - 0.1203126609325409, - -0.029048707336187363, - 0.01523737981915474, - -0.05702322721481323, - 0.07002775371074677, - 0.08962385356426239, - -0.07633150368928909, - -0.09829647839069366, - -0.04284178465604782, - -0.05069104582071304, - 0.044792987406253815, - -0.01423504576086998, - 0.02151448279619217, - 0.049060989171266556, - -0.016450626775622368, - -0.12159506976604462, - -0.09810302406549454, - 0.08257488906383514, - -0.05797458440065384, - 0.0109921395778656, - -0.0930691733956337, - 0.06734311580657959, - 0.08471283316612244, - -0.008471265435218811, - -0.04161234200000763, - -0.02609671652317047, - 0.012457402423024178, - -0.013217940926551819, - 0.0031602447852492332, - 0.024377934634685516, - 0.04004962369799614, - -0.10128220915794373, - -0.0013495211023837328, - -0.08456601947546005, - 0.07523411512374878, - -0.03479805216193199, - 0.15023118257522583, - 0.008240321651101112, - -0.025441840291023254, - -0.10053075850009918, - 0.041153669357299805, - 0.00902634859085083, - 0.057733193039894104, - 0.03792540729045868, - 0.06747318059206009, - 0.015904121100902557, - -0.08649022877216339, - 0.08776737749576569, - 0.04737918823957443, - -0.049008697271347046, - -0.0898362547159195, - -0.03831641003489494, - -0.04605083167552948, - 0.024221740663051605, - -0.01501629687845707, - -0.0882963240146637, - -0.02549821138381958, - 0.01554032787680626, - 0.009332826361060143, - 0.07228730618953705, - 0.12009193003177643, - 0.03756209462881088, - -0.10823303461074829 - ] - }, - "p244_264.wav": { - "name": "p244", - "embedding": [ - 0.061170563101768494, - 0.0708121731877327, - -0.021257635205984116, - 0.01069109607487917, - -0.040154241025447845, - 0.07165251672267914, - -0.1463283896446228, - 0.1330227255821228, - -0.02723396196961403, - 0.15805542469024658, - -0.022783884778618813, - 0.11406855285167694, - 0.0049973949790000916, - -0.16913628578186035, - -0.01917419582605362, - 0.043057698756456375, - -0.05838467925786972, - -0.0277927964925766, - -0.05301709100604057, - -0.032037436962127686, - 0.04029052332043648, - 0.0528525710105896, - 0.032823655754327774, - -0.0474269762635231, - 0.03485497087240219, - 0.06042475998401642, - -0.018764130771160126, - 0.026501458138227463, - -0.024335134774446487, - -0.10746573656797409, - -0.033123914152383804, - 0.08541350066661835, - -0.056892432272434235, - 0.014906872063875198, - 0.024899205192923546, - -0.027130426838994026, - -0.0026952363550662994, - -0.06057935953140259, - -0.026362087577581406, - 0.024887191131711006, - -0.01079667080193758, - 0.07780696451663971, - 0.019829317927360535, - -0.0123857157304883, - 0.029647447168827057, - -0.0032248913776129484, - -0.015579422004520893, - -0.049463145434856415, - -0.09595844149589539, - 0.18051806092262268, - 0.07073637843132019, - 0.014501250348985195, - -0.06670577079057693, - -0.07222127914428711, - 0.08422359824180603, - -0.016195133328437805, - -0.117047518491745, - -0.02392880618572235, - 0.05013751983642578, - 0.15348616242408752, - -0.03439287096261978, - -0.056075289845466614, - 0.0506671741604805, - 0.09622706472873688, - 0.04493853449821472, - 0.054402466863393784, - 0.1061578094959259, - 0.08969119191169739, - -0.020474471151828766, - 0.011118492111563683, - 0.021666109561920166, - 0.08146689832210541, - 0.07790334522724152, - 0.00850432924926281, - 0.041391126811504364, - -0.019355138763785362, - -0.021714605391025543, - -0.0469542071223259, - -0.03980112448334694, - -0.02237231843173504, - 0.012850751169025898, - 0.017891250550746918, - 0.04626927524805069, - 0.0576079860329628, - -0.026667367666959763, - 0.03776039183139801, - 0.027250248938798904, - -0.03271190822124481, - 0.06143586337566376, - 0.017719008028507233, - 0.043225184082984924, - 0.06251790374517441, - -0.10524812340736389, - -0.0806269496679306, - 0.060623615980148315, - 0.019871611148118973, - 0.02424066886305809, - 0.05451924726366997, - 0.04766447842121124, - -0.03062250278890133, - 0.11262212693691254, - 0.03681463003158569, - -0.01660098508000374, - -0.002976907417178154, - -0.0903116762638092, - 0.11418511718511581, - 0.10884575545787811, - -0.024835417047142982, - 0.05217685550451279, - -0.0696776956319809, - 0.06651949882507324, - 0.04097208380699158, - -0.14030703902244568, - -0.09351084381341934, - 0.0297505222260952, - 0.006893041543662548, - 0.0013177674263715744, - 0.14301751554012299, - 0.020266547799110413, - 0.06687614321708679, - 0.10617867112159729, - -0.10518555343151093, - -0.036028746515512466, - -0.01152839045971632, - 0.062018394470214844, - -0.09279567748308182, - 0.06243874132633209, - 0.05241338163614273, - -0.02619791403412819, - 0.03498176485300064, - 0.06206202507019043, - -0.014992700889706612, - 0.005642796400934458, - -0.008870108984410763, - -0.03202883526682854, - 0.002469003200531006, - -0.028763562440872192, - -0.021907683461904526, - 0.014602002687752247, - 0.029262810945510864, - 0.04242852330207825, - -0.01813708245754242, - -0.05406168848276138, - -0.12713457643985748, - 0.020240655168890953, - 0.012656119652092457, - 0.05605028197169304, - -0.028521768748760223, - -0.007609011605381966, - -0.02470196783542633, - -0.0640157163143158, - 0.015513423830270767, - -0.02379671484231949, - 0.057583123445510864, - 0.0030892388895154, - 0.007311254274100065, - 0.100212462246418, - 0.042428627610206604, - 0.0025723862927407026, - -0.024301942437887192, - -0.03729318082332611, - 0.00872349739074707, - 0.0480252206325531, - -0.07708413898944855, - -0.06433989107608795, - -0.019324276596307755, - 0.014511507004499435, - -0.012205028906464577, - 0.0673813745379448, - 0.0568520613014698, - 0.030706971883773804, - 0.019773781299591064, - -0.04987790435552597, - 0.008274450898170471, - -0.09333652257919312, - -0.07631611824035645, - 0.01272669155150652, - -0.03200675547122955, - -0.040890756994485855, - 0.09280463308095932, - 0.015433721244335175, - 0.051651064306497574, - -0.07728773355484009, - -0.043639373034238815, - -0.06989146769046783, - 0.044980552047491074, - 0.05253284052014351, - -0.02048523537814617, - 0.005327143706381321, - 0.0474584624171257, - 0.012078986503183842, - 0.05485370010137558, - 0.07238372415304184, - 0.10454734414815903, - -0.016847819089889526, - 0.02153768762946129, - -0.07578417658805847, - 0.11806175112724304, - 0.09070637077093124, - -0.038415685296058655, - -0.08808137476444244, - -0.01870245486497879, - -0.09472069144248962, - 0.030040353536605835, - -0.0241569671779871, - 0.008800324983894825, - 0.04111138731241226, - 0.008878892287611961, - -0.1063944399356842, - -0.08212573826313019, - 0.08964437246322632, - -0.05568983778357506, - -0.007774032652378082, - -0.08109153807163239, - 0.05996863916516304, - 0.10082027316093445, - 0.03871668875217438, - -0.02253272570669651, - -0.019287575036287308, - 0.03597132861614227, - -0.024417150765657425, - 0.039355453103780746, - 0.04196571186184883, - 0.04748799651861191, - -0.10886409878730774, - 0.002635924145579338, - -0.0655687153339386, - 0.015472646802663803, - -0.04091915115714073, - 0.129876047372818, - 0.015315208584070206, - -0.041399046778678894, - -0.08035553246736526, - 0.061411887407302856, - -0.022989546880126, - 0.05643794685602188, - 0.018910111859440804, - 0.06725603342056274, - 0.07677512615919113, - -0.0904262587428093, - 0.07782033830881119, - 0.04176116734743118, - -0.03365887328982353, - -0.07620540261268616, - -0.06524284183979034, - -0.02479676902294159, - 0.03360970318317413, - -0.005805825814604759, - -0.06837321072816849, - -0.015479182824492455, - 0.023814361542463303, - 0.02572166547179222, - 0.05136411637067795, - 0.1195039451122284, - 0.028964992612600327, - -0.1339917778968811 - ] - }, - "p244_240.wav": { - "name": "p244", - "embedding": [ - 0.07945258915424347, - 0.037747014313936234, - -0.012152545154094696, - 0.007275744341313839, - -0.014487722888588905, - 0.03468915820121765, - -0.12849202752113342, - 0.11345958709716797, - 0.013497058302164078, - 0.08077574521303177, - -0.0872984230518341, - 0.0822061076760292, - 0.0016370187513530254, - -0.11219489574432373, - -0.030771251767873764, - 0.023793870583176613, - -0.014414789155125618, - 0.0005447063595056534, - -0.03974929824471474, - -0.011801485903561115, - 0.0245984997600317, - 0.059601105749607086, - 0.03990330919623375, - -0.031564414501190186, - 0.018286608159542084, - 0.03809820115566254, - 0.002444220706820488, - 0.023952443152666092, - 0.017742546275258064, - -0.0024557597935199738, - 0.023994049057364464, - 0.08010049164295197, - -0.042573895305395126, - 0.006394711323082447, - 0.03645411878824234, - 0.014577844180166721, - -0.010644922964274883, - -0.0915645956993103, - -0.007276620715856552, - 0.020632022991776466, - -0.030547045171260834, - 0.07944682240486145, - 0.05260749161243439, - -0.023790664970874786, - 0.02275526523590088, - 0.004906552378088236, - -0.008267361670732498, - -0.050835464149713516, - -0.11496752500534058, - 0.17796942591667175, - 0.01652267947793007, - 0.038168445229530334, - -0.12758690118789673, - -0.015560433268547058, - 0.05775945633649826, - -0.00300811231136322, - -0.03468114137649536, - -0.04003487899899483, - 0.02979302406311035, - 0.12023387849330902, - 0.020758872851729393, - -0.05356209725141525, - 0.03158777952194214, - 0.06444811820983887, - 0.023464851081371307, - 0.0087087731808424, - 0.13327732682228088, - 0.09698787331581116, - -0.0204075425863266, - 0.044966477900743484, - 0.03150532767176628, - 0.036849506199359894, - 0.03115699253976345, - -0.007958273403346539, - 0.026652969419956207, - -0.03630942106246948, - -0.031139474362134933, - 0.01702917367219925, - -0.017358968034386635, - -0.04958589747548103, - 0.02184557355940342, - -0.001390503835864365, - 0.01721680350601673, - 0.08281633257865906, - -0.07614994049072266, - 0.027157723903656006, - 0.0061440966092050076, - -0.0018952672835439444, - 0.07651069760322571, - 0.045599356293678284, - 0.007365130819380283, - 0.002516951411962509, - -0.05274444818496704, - -0.0972677543759346, - 0.008244259282946587, - -0.011233488097786903, - 0.056871604174375534, - 0.03745889291167259, - 0.035175494849681854, - -0.018397707492113113, - 0.09340852499008179, - 0.012594624422490597, - -0.010898916982114315, - -0.022984102368354797, - -0.060990530997514725, - 0.0979171022772789, - 0.12481649219989777, - 0.0024895616807043552, - 0.03210488706827164, - -0.06360240280628204, - 0.014394976198673248, - 0.041251152753829956, - -0.0887005627155304, - -0.043185044080019, - 0.05143744498491287, - 0.0423990860581398, - 0.06395760178565979, - 0.11878544092178345, - 0.026364324614405632, - 0.026161154732108116, - 0.06311032921075821, - -0.08785594999790192, - -0.03784794360399246, - 0.008842014707624912, - 0.024887248873710632, - -0.029665281996130943, - 0.023432079702615738, - 0.04108967259526253, - -0.0015136916190385818, - -0.0415712408721447, - 0.04753076285123825, - 0.0020745694637298584, - 0.031828783452510834, - -0.04287783056497574, - 0.03687690570950508, - 0.09085529297590256, - -0.005477588623762131, - -0.02045380137860775, - 0.03153949975967407, - 0.06132512167096138, - 0.032796140760183334, - 0.04804295673966408, - -0.06140383332967758, - -0.11391064524650574, - -0.008075371384620667, - 0.05906808376312256, - 0.043983783572912216, - -0.05965961515903473, - -0.06208455190062523, - -0.04980771616101265, - -0.02059316262602806, - 0.02420753613114357, - 0.009649348445236683, - 0.045536912977695465, - 0.038392938673496246, - -0.019172009080648422, - 0.08760308474302292, - -0.013360435143113136, - 0.011101778596639633, - -0.015698373317718506, - -0.00834093801677227, - 0.0266251377761364, - 0.03771558031439781, - -0.038136813789606094, - -0.06483782082796097, - -0.004165465943515301, - 0.0039901044219732285, - -0.020854417234659195, - -0.007284097373485565, - 0.04928981140255928, - -0.028580283746123314, - 0.006293036043643951, - -0.09898647665977478, - 0.020142365247011185, - -0.10804945975542068, - -0.0278143510222435, - 0.03615271672606468, - -0.01160081010311842, - 0.0078703872859478, - 0.1000448614358902, - 0.021497631445527077, - 0.05574941262602806, - -0.03412169963121414, - -0.07285572588443756, - -0.011138292029500008, - 0.05459606274962425, - 0.07091782987117767, - -0.03213128447532654, - 0.025681670755147934, - 0.02844378724694252, - 0.01579461060464382, - 0.02972789853811264, - 0.05796937644481659, - 0.053558215498924255, - -0.058030787855386734, - -0.06176538020372391, - -0.028024667873978615, - 0.10882784426212311, - 0.052942514419555664, - -0.06703929603099823, - -0.05992818623781204, - -0.023831607773900032, - -0.0470818430185318, - 0.0012477822601795197, - -0.011533379554748535, - 0.019788701087236404, - 0.05094805732369423, - -0.03088667429983616, - -0.11719512939453125, - -0.0796465203166008, - 0.016997097060084343, - -0.04180814325809479, - 0.010835467837750912, - -0.06469458341598511, - 0.03327431157231331, - 0.08082059025764465, - 0.013061001896858215, - -0.005433460231870413, - -0.03264967352151871, - -0.045302554965019226, - -0.07096290588378906, - -0.0670178011059761, - -0.021672651171684265, - 0.03161638230085373, - -0.0751357227563858, - 0.0054919826798141, - -0.04638237506151199, - 0.06188648194074631, - -0.04609490931034088, - 0.09754610061645508, - 0.013642609119415283, - -0.063230499625206, - -0.0821678638458252, - 0.0019817333668470383, - -0.02547764964401722, - 0.049427520483732224, - 0.04247651621699333, - -0.004833294078707695, - 0.018832392990589142, - -0.08992515504360199, - 0.0752616748213768, - 0.057467587292194366, - -0.034379757940769196, - -0.07014762610197067, - -0.022873571142554283, - -0.0086132250726223, - 0.034332435578107834, - -0.007526383735239506, - -0.013657476752996445, - 0.022340625524520874, - 0.012931828387081623, - -0.00490580964833498, - 0.03775404021143913, - 0.08461810648441315, - 0.038802288472652435, - -0.10554558038711548 - ] - }, - "p244_124.wav": { - "name": "p244", - "embedding": [ - 0.03170587867498398, - 0.08337774127721786, - 0.005988603457808495, - 0.022015362977981567, - -0.03809655085206032, - 0.04862849786877632, - -0.17864833772182465, - 0.11590668559074402, - -0.004251439590007067, - 0.11418318748474121, - -0.06332193315029144, - 0.12706343829631805, - 0.007978797890245914, - -0.21318550407886505, - -0.025420328602194786, - 0.052706990391016006, - -0.004550730809569359, - -0.032258786261081696, - 0.05641491338610649, - -0.0051533617079257965, - 0.05624686926603317, - 0.05355072021484375, - 0.030250616371631622, - -0.00528571056202054, - 0.04349508509039879, - 0.050252728164196014, - 0.02283732406795025, - 0.07225767523050308, - 0.026461178436875343, - -0.022242756560444832, - -0.04346585273742676, - 0.10946331173181534, - -0.04760754853487015, - 0.007036465220153332, - 0.04530885070562363, - 0.006022229790687561, - 0.0027556954883038998, - -0.03855211287736893, - 0.015568596310913563, - 0.007916059345006943, - -0.039558637887239456, - 0.0829901397228241, - 0.04689755290746689, - -0.006185658276081085, - 0.02769695781171322, - 0.06560301780700684, - 0.014573135413229465, - -0.04673599451780319, - -0.12139610946178436, - 0.14271366596221924, - 0.02954898774623871, - -0.010554103180766106, - -0.06857357174158096, - -0.06143921613693237, - 0.08245620131492615, - 0.004737256094813347, - -0.058175064623355865, - -0.01705184020102024, - 0.10011923313140869, - 0.13233692944049835, - -0.00607535894960165, - -0.06560482084751129, - 0.029593029990792274, - 0.11501942574977875, - 0.02782154642045498, - 0.08473536372184753, - 0.06236148253083229, - 0.10173208266496658, - -0.01613222248852253, - -0.024523122236132622, - 0.026860609650611877, - 0.07221655547618866, - 0.007049261592328548, - -0.03168938681483269, - 0.011986669152975082, - 0.0017140938434749842, - -0.014257064089179039, - 0.039836686104536057, - -0.0046739340759813786, - -0.007756643928587437, - -0.011570341885089874, - -0.016560228541493416, - -0.015016797930002213, - 0.027744995430111885, - -0.03683807700872421, - 0.038525283336639404, - 0.02958448976278305, - 0.024273499846458435, - 0.07799981534481049, - 0.01855200156569481, - 0.00717667443677783, - 0.05616503208875656, - -0.08753527700901031, - -0.06484109163284302, - 0.06581572443246841, - 0.0005181650631129742, - 0.028639022260904312, - 0.09741240739822388, - 0.035708338022232056, - -0.02880062162876129, - 0.12707358598709106, - 0.04755779355764389, - -0.016986733302474022, - 0.03022596426308155, - -0.08656430244445801, - 0.1457136869430542, - 0.06571777909994125, - -0.01340070553123951, - 0.057336896657943726, - -0.06582877784967422, - 0.05227863788604736, - 0.05573532357811928, - -0.14566341042518616, - -0.058580536395311356, - 0.05270298570394516, - 0.05646684765815735, - -0.028481710702180862, - 0.13403955101966858, - -0.011803973466157913, - 0.008416474796831608, - 0.08787916600704193, - -0.09145224094390869, - -0.08116000890731812, - -0.026079412549734116, - 0.036661870777606964, - -0.10347755253314972, - 0.06219000369310379, - 0.05738727003335953, - -0.015513967722654343, - -0.0009644592646509409, - 0.07257674634456635, - -0.012942686676979065, - 0.03661982715129852, - 0.005432886071503162, - -0.014694012701511383, - 0.021071139723062515, - -0.041059546172618866, - 0.027589980512857437, - 0.013847963884472847, - 0.0013940695207566023, - 0.053623657673597336, - 0.02588818408548832, - -0.041975319385528564, - -0.16352543234825134, - -0.0020953137427568436, - 0.06650181114673615, - 0.08624054491519928, - -0.016762496903538704, - -0.08626042306423187, - -0.06894153356552124, - -0.06362982094287872, - 0.02273893728852272, - 0.019530976191163063, - 0.06194871664047241, - -0.009592647664248943, - -0.010934796184301376, - 0.07108527421951294, - 0.027290258556604385, - -0.0021267954725772142, - -0.029089268296957016, - -0.05554259568452835, - 0.01095462217926979, - 0.015999842435121536, - -0.08508267998695374, - -0.063910573720932, - -0.02453514188528061, - 0.04000595211982727, - -0.02731701359152794, - 0.04292478784918785, - 0.06084790825843811, - 0.03235755115747452, - 0.04052947461605072, - -0.07176034152507782, - -0.003871637163683772, - -0.08743201196193695, - -0.080325186252594, - -0.03779982775449753, - 0.05357345938682556, - -0.02694448083639145, - 0.0908622145652771, - 0.02377660758793354, - 0.06642621755599976, - -0.02637840062379837, - -0.009373457171022892, - -0.08071614801883698, - 0.0342387780547142, - 0.07000908255577087, - 0.015808602795004845, - 0.07223792374134064, - 0.032930366694927216, - -0.05480942130088806, - 0.07242150604724884, - 0.05716224014759064, - 0.08938159048557281, - -0.025073565542697906, - 0.03268623724579811, - -0.03881744295358658, - 0.08041863143444061, - 0.09149853885173798, - -0.07416573166847229, - -0.07900340855121613, - -0.008463677950203419, - -0.08851130306720734, - 0.04195529967546463, - -0.021565068513154984, - 0.016400709748268127, - -0.007465182337909937, - -0.0030099733266979456, - -0.09339006245136261, - -0.09322210401296616, - 0.009683771058917046, - -0.05928615480661392, - -0.016967447474598885, - -0.0799696147441864, - 0.07500840723514557, - 0.10562212020158768, - 0.031572375446558, - -0.02784167230129242, - -0.06569699943065643, - 0.03901921212673187, - -0.039085812866687775, - 0.00012580468319356441, - 0.05484466999769211, - 0.04465609788894653, - -0.1222488060593605, - 0.02164340950548649, - -0.07860557734966278, - 0.045376431196928024, - -0.07000018656253815, - 0.15229500830173492, - 0.026605168357491493, - -0.06785998493432999, - -0.06001497805118561, - 0.02592596411705017, - -0.014781899750232697, - 0.02684714086353779, - 0.021956829354166985, - 0.02227221243083477, - 0.02568269520998001, - -0.06728293746709824, - 0.11107145249843597, - 0.05057144910097122, - -0.034160859882831573, - -0.07631144672632217, - -0.033525384962558746, - -0.030538246035575867, - 0.07135964184999466, - 0.03325861692428589, - -0.10000577569007874, - -0.054031096398830414, - 0.06677914410829544, - 0.007879644632339478, - 0.04934922605752945, - 0.1542784869670868, - 0.028544317930936813, - -0.1159692108631134 - ] - }, - "p244_140.wav": { - "name": "p244", - "embedding": [ - 0.032106462866067886, - 0.10258646309375763, - -0.03863545134663582, - 0.033056873828172684, - -0.047408685088157654, - 0.06788535416126251, - -0.10650399327278137, - 0.08408309519290924, - -0.051745232194662094, - 0.1439906358718872, - -0.08300479501485825, - 0.09365612268447876, - -0.03637726232409477, - -0.18144014477729797, - -0.023146042600274086, - 0.05650520324707031, - -0.06916254758834839, - -0.007570366840809584, - -0.10011936724185944, - -0.025479473173618317, - 0.033929843455553055, - 0.031131725758314133, - 0.036277081817388535, - -0.05022752285003662, - 0.00512390211224556, - 0.06359908729791641, - -0.013848669826984406, - 0.01940905675292015, - -0.002903031650930643, - -0.052057087421417236, - -0.054398469626903534, - 0.12623244524002075, - -0.02393820695579052, - 0.010701628401875496, - 0.041291724890470505, - 0.006800917908549309, - -0.023599712178111076, - -0.05122655630111694, - 0.0024571120738983154, - 0.01036273967474699, - -0.05014950782060623, - 0.04443689063191414, - 0.012572221457958221, - -0.027460843324661255, - 0.06866328418254852, - -0.024788357317447662, - -0.04691766947507858, - -0.02474340982735157, - -0.07061152160167694, - 0.16436609625816345, - 0.0976928323507309, - -0.019638914614915848, - -0.061314284801483154, - -0.061559274792671204, - 0.08832861483097076, - -0.0034463140182197094, - -0.15653139352798462, - -0.05037454515695572, - 0.07711216062307358, - 0.14175602793693542, - -0.007941044867038727, - -0.008940596133470535, - 0.019500672817230225, - 0.10958696901798248, - 0.010021863505244255, - 0.11309292912483215, - 0.051235757768154144, - 0.08879242092370987, - -0.0009065513731911778, - 0.04219233617186546, - 0.07376864552497864, - 0.046731702983379364, - 0.05028190091252327, - -0.035868722945451736, - 0.045829400420188904, - -0.023557033389806747, - -0.04582108557224274, - 0.004530781880021095, - -0.03949066251516342, - -0.03243137151002884, - -0.016561349853873253, - -0.02351978048682213, - -0.0009434190578758717, - -0.018667828291654587, - -0.02451932057738304, - 0.026422306895256042, - 0.06407799571752548, - -0.016930431127548218, - 0.05635236203670502, - 0.0839669480919838, - 0.013598821125924587, - 0.04602637141942978, - -0.04804681986570358, - -0.09976606070995331, - 0.010982569307088852, - 0.01683744788169861, - -0.009247435256838799, - 0.03935539722442627, - 0.04463207721710205, - -0.025607701390981674, - 0.08564548194408417, - 0.05055559426546097, - -0.004110095556825399, - 0.028953861445188522, - -0.09502167999744415, - 0.11557327210903168, - 0.11670465767383575, - -0.009867667220532894, - 0.016392692923545837, - -0.02477916143834591, - 0.08448526263237, - 0.08767551183700562, - -0.10353397578001022, - -0.04955824464559555, - 0.009557865560054779, - -0.04511438310146332, - -0.0010399797465652227, - 0.08924844861030579, - 0.011568907648324966, - -0.008110846392810345, - 0.11209669709205627, - -0.09427085518836975, - -0.06674505025148392, - -0.03728098422288895, - 0.02603866159915924, - -0.08407330513000488, - 0.036358293145895004, - 0.05977318435907364, - 0.004564437083899975, - -0.008266814984381199, - 0.08175940811634064, - -0.01644720509648323, - 0.012890792451798916, - 0.012213528156280518, - -0.04958978295326233, - 0.03690819814801216, - -0.03605053573846817, - -0.010096623562276363, - 0.06823625415563583, - 0.03848765790462494, - 0.04159748926758766, - -0.021061619743704796, - -0.005195945501327515, - -0.07666628062725067, - 0.012601872906088829, - 0.051536425948143005, - 0.03423471376299858, - -0.006671909708529711, - 0.024622339755296707, - -0.03014795482158661, - -0.08822052925825119, - 0.05422282591462135, - -0.06322105973958969, - 0.06704350560903549, - -0.013142933137714863, - -0.038733117282390594, - 0.12557129561901093, - 0.006835254840552807, - -0.01664559915661812, - -0.07807378470897675, - -0.028825603425502777, - 0.04406910389661789, - 0.04852832481265068, - -0.10376385599374771, - -0.06857436895370483, - 0.0002958932891488075, - -0.0040213665924966335, - 0.003764195367693901, - 0.028094250708818436, - 0.06835572421550751, - -0.004557745531201363, - 0.025327123701572418, - -0.07800909876823425, - 0.02716459333896637, - -0.10865183174610138, - -0.03786635398864746, - -0.018588313832879066, - -0.09402740001678467, - 0.014487672597169876, - 0.09529520571231842, - -0.008645059540867805, - -0.024473730474710464, - -0.03339703008532524, - -0.09031054377555847, - -0.06751986593008041, - 0.08582481741905212, - 0.0816536620259285, - 0.00204279413446784, - 0.058895424008369446, - 0.04315165430307388, - -0.025246107950806618, - 0.032529447227716446, - 0.05211769789457321, - 0.11295288801193237, - -0.027575239539146423, - 0.006363452412188053, - -0.0968601256608963, - 0.07241726666688919, - 0.09214647859334946, - -0.08937746286392212, - -0.09590311348438263, - -0.044798385351896286, - -0.03440181165933609, - 0.053835880011320114, - -0.051275983452796936, - -0.027386613190174103, - 0.05266179144382477, - -0.026864871382713318, - -0.09085887670516968, - -0.10242354869842529, - 0.12072047591209412, - -0.03682032600045204, - -0.012964700348675251, - -0.059800196439027786, - 0.03209955245256424, - 0.031012140214443207, - 0.031149979680776596, - -0.08320239186286926, - 0.0573907308280468, - 0.06590268015861511, - -0.05510091036558151, - 0.008635872043669224, - 0.008013262413442135, - 0.011779405176639557, - -0.08518533408641815, - -0.0024354278575628996, - -0.07600978761911392, - 0.0963110625743866, - -0.07082103937864304, - 0.1437510848045349, - -0.004958377219736576, - -0.044762689620256424, - -0.07384620606899261, - 0.08307861536741257, - -0.02379506081342697, - 0.03228211775422096, - 0.07300714403390884, - 0.07005840539932251, - 0.011233575642108917, - -0.08835166692733765, - 0.0944766253232956, - 0.0034095614682883024, - 0.0017764036310836673, - -0.05539702624082565, - -0.012404147535562515, - -0.06053109094500542, - 0.010805798694491386, - 0.011267581954598427, - -0.09127777814865112, - 0.02628166973590851, - 0.015385827049612999, - -0.01762445829808712, - 0.0643961951136589, - 0.1152602881193161, - 0.07447779923677444, - -0.08879270404577255 - ] - }, - "p244_004.wav": { - "name": "p244", - "embedding": [ - 0.057244203984737396, - 0.051239121705293655, - -0.006493191234767437, - 0.0046587856486439705, - -0.014370900578796864, - 0.04889317974448204, - -0.1505855768918991, - 0.11744870990514755, - -0.02296508103609085, - 0.10681253671646118, - -0.0728701651096344, - 0.08201058208942413, - -0.00767209567129612, - -0.16516365110874176, - -0.041001345962285995, - 0.04549176245927811, - -0.03501646965742111, - -0.027579933404922485, - -0.0311755258589983, - -0.008836065419018269, - 0.03076852858066559, - 0.0471736416220665, - -0.0001659514382481575, - 0.009035672061145306, - 0.012241963297128677, - 0.04364144057035446, - -0.0051876576617360115, - 0.026616103947162628, - -0.004384532570838928, - 0.00222670566290617, - 0.0057466886937618256, - 0.10275017470121384, - -0.03850072622299194, - 0.009041273966431618, - 0.05855696648359299, - 0.013160438276827335, - -0.006170983891934156, - -0.06826630234718323, - -0.020206864923238754, - 0.01614033244550228, - -0.05412178859114647, - 0.06679560244083405, - 0.051490284502506256, - 0.012002089992165565, - 0.027559733018279076, - 0.028028646484017372, - -0.00822331104427576, - -0.05394599959254265, - -0.09966468065977097, - 0.15860942006111145, - 0.04013802856206894, - 0.017943119630217552, - -0.0922805443406105, - -0.03724759444594383, - 0.0840732753276825, - -0.004480568692088127, - -0.07635274529457092, - -0.028386738151311874, - 0.06654711067676544, - 0.15144842863082886, - -0.006654726341366768, - -0.044933855533599854, - 0.027211084961891174, - 0.10585152357816696, - 0.034167565405368805, - 0.05825532227754593, - 0.09924449026584625, - 0.10678430646657944, - -0.01214150246232748, - 0.007117943838238716, - 0.06554816663265228, - 0.0388072170317173, - 0.05638907104730606, - -0.031034370884299278, - 0.025171399116516113, - 0.0017415564507246017, - -0.028098978102207184, - 0.009883041493594646, - -0.031081851571798325, - -0.024425338953733444, - 0.008048723451793194, - 0.008548153564333916, - 0.008548242971301079, - 0.062324102967977524, - -0.04049144312739372, - 0.03220600262284279, - 0.03287477791309357, - -0.006772756110876799, - 0.06856678426265717, - 0.059678614139556885, - 0.020501142367720604, - 0.03826247155666351, - -0.06959246844053268, - -0.08232609927654266, - 0.019670691341161728, - -0.0022162762470543385, - 0.03304598107933998, - 0.04985179752111435, - 0.03948202356696129, - -0.01198204979300499, - 0.09804360568523407, - 0.008098515681922436, - -0.0002941172569990158, - 0.00815909169614315, - -0.09762193262577057, - 0.09791037440299988, - 0.08280383795499802, - -0.02812999300658703, - 0.028420105576515198, - -0.058993589133024216, - 0.04419970139861107, - 0.0630403384566307, - -0.11383549869060516, - -0.052459198981523514, - 0.06827473640441895, - 0.04491904005408287, - 0.02058722823858261, - 0.13593994081020355, - 0.011091722175478935, - 0.021835027262568474, - 0.0744437426328659, - -0.07690946757793427, - -0.03526616841554642, - -0.006011516787111759, - 0.035444751381874084, - -0.04602028429508209, - 0.04425273463129997, - 0.03155776113271713, - 0.009502381086349487, - -0.024248994886875153, - 0.06927596032619476, - 0.00029218941926956177, - 0.00799286738038063, - -0.05023977532982826, - 0.01537276804447174, - 0.0709199532866478, - -0.009143814444541931, - 0.0015159700997173786, - 0.017510656267404556, - 0.04747721925377846, - 0.02624204196035862, - 0.03590153902769089, - -0.06248483061790466, - -0.11470767855644226, - -0.004738791845738888, - 0.04673238843679428, - 0.07807391881942749, - -0.02831854298710823, - -0.03755154460668564, - -0.0521104596555233, - -0.02906210348010063, - 0.010854961350560188, - -0.012914886698126793, - 0.06041932851076126, - 0.0300108902156353, - -0.012922441586852074, - 0.08949941396713257, - -0.00761021114885807, - 0.008169690147042274, - -0.02969200164079666, - -0.015670523047447205, - 0.009761703200638294, - 0.0460873618721962, - -0.05769249051809311, - -0.06362049281597137, - 0.0023356154561042786, - 0.013007670640945435, - -0.012593654915690422, - 0.01909327134490013, - 0.031186336651444435, - 0.0023230817168951035, - 0.007525439839810133, - -0.08917870372533798, - 0.014167784713208675, - -0.1180512011051178, - -0.059466756880283356, - 0.0179979857057333, - -0.012941773980855942, - 0.0009621425997465849, - 0.0856703668832779, - 0.015797816216945648, - 0.03727533668279648, - -0.03235930949449539, - -0.07736298441886902, - -0.04276653006672859, - 0.06202222406864166, - 0.07064232230186462, - -0.01980535127222538, - 0.025075972080230713, - 0.029654894024133682, - -0.005805652588605881, - 0.04072924703359604, - 0.05624306946992874, - 0.08792721480131149, - -0.05024013668298721, - -0.004494858905673027, - -0.03317595273256302, - 0.10440943390130997, - 0.04974979907274246, - -0.06304767727851868, - -0.07033741474151611, - 0.005304677411913872, - -0.047600824385881424, - 0.005815478973090649, - -0.019581694155931473, - 0.02000458724796772, - 0.02556712180376053, - -0.0237729549407959, - -0.11421756446361542, - -0.06738296151161194, - 0.03838469460606575, - -0.06318210810422897, - 0.00331917149014771, - -0.07444030046463013, - 0.04339484125375748, - 0.09425723552703857, - 0.02007249742746353, - -0.017583642154932022, - -0.021532295271754265, - 0.00424446165561676, - -0.05374759063124657, - -0.03725024685263634, - 0.004368685185909271, - 0.030680663883686066, - -0.08983869850635529, - -0.009140770882368088, - -0.058546602725982666, - 0.06307493895292282, - -0.049770474433898926, - 0.11064916849136353, - 0.011756817810237408, - -0.06703746318817139, - -0.0680784210562706, - -0.003931783139705658, - -0.0014525093138217926, - 0.05368048697710037, - 0.02675137296319008, - 0.04655763506889343, - 0.03197465464472771, - -0.04880567640066147, - 0.1013551652431488, - 0.05008199065923691, - -0.030540935695171356, - -0.05939823016524315, - -0.02996395155787468, - -0.014429381117224693, - 0.0277912225574255, - -0.006201401352882385, - -0.04977040737867355, - 0.004798954352736473, - 0.02141060307621956, - -0.009165780618786812, - 0.04160452261567116, - 0.11496564745903015, - 0.049962591379880905, - -0.12135732918977737 - ] - }, - "p244_169.wav": { - "name": "p244", - "embedding": [ - 0.057029567658901215, - 0.08338451385498047, - -0.01734072156250477, - 0.038463957607746124, - -0.05738261714577675, - 0.08633057028055191, - -0.13482148945331573, - 0.11841713637113571, - -0.0672321617603302, - 0.13830581307411194, - -0.04638269916176796, - 0.10157979279756546, - -0.02636878751218319, - -0.1886727213859558, - -0.02977590076625347, - 0.07470418512821198, - -0.07409191876649857, - -0.04069636017084122, - -0.07145829498767853, - -0.003243983956053853, - 0.01020850706845522, - 0.019279690459370613, - 0.037069663405418396, - 0.0052407956682145596, - 0.0376032255589962, - 0.0675714835524559, - -0.01886574551463127, - 0.043965794146060944, - 0.01845916360616684, - -0.06929130852222443, - -0.03393295407295227, - 0.09713002294301987, - -0.05504804104566574, - -0.008165374398231506, - 0.04820776730775833, - -0.007374047301709652, - -0.009997377172112465, - -0.06639043241739273, - -0.025024890899658203, - -0.00019767200865317136, - -0.05997892841696739, - 0.08781640231609344, - 0.0316188745200634, - -0.016193915158510208, - 0.04006927087903023, - -0.010623528622090816, - -0.02601289562880993, - -0.055488407611846924, - -0.10404876619577408, - 0.1514267474412918, - 0.07180014997720718, - 0.0007413647253997624, - -0.0652066171169281, - -0.06657960265874863, - 0.10237142443656921, - -0.016412867233157158, - -0.14202113449573517, - -0.07418593764305115, - 0.07471315562725067, - 0.16235481202602386, - -0.03485307842493057, - 0.0017970151966437697, - 0.02049916237592697, - 0.12295348942279816, - 0.0891043022274971, - 0.11592104285955429, - 0.06453748047351837, - 0.09670441597700119, - 0.006898547988384962, - 0.03541051968932152, - 0.08895045518875122, - 0.04363706707954407, - 0.04513071849942207, - -0.0030966391786932945, - 0.03634212166070938, - -0.009360048919916153, - -0.01824885979294777, - -0.015100239776074886, - 0.001968139549717307, - 0.0007456461898982525, - -0.0065033650025725365, - 0.00976000726222992, - 0.0030725549440830946, - 0.027006959542632103, - -0.027332181110978127, - 0.051742322742938995, - 0.02186988666653633, - -0.016360126435756683, - 0.06705182045698166, - 0.04799802601337433, - 0.012044823728501797, - 0.05976928398013115, - -0.051586706191301346, - -0.07648489624261856, - 0.015033205971121788, - 0.012112302705645561, - 0.007237287238240242, - 0.04883294925093651, - 0.029767388477921486, - -0.011775006540119648, - 0.11153513938188553, - 0.05835574492812157, - -0.004567086696624756, - 0.042401619255542755, - -0.09106332808732986, - 0.13329333066940308, - 0.04985566809773445, - -0.011587032116949558, - 0.05712316930294037, - -0.015900438651442528, - 0.06157167628407478, - 0.08525945246219635, - -0.14287279546260834, - -0.058312006294727325, - 0.047777220606803894, - -0.019714927300810814, - -0.022126100957393646, - 0.11741900444030762, - 0.010651095770299435, - 0.014133838005363941, - 0.10121676325798035, - -0.08445888012647629, - -0.05385727062821388, - -0.0005828676512464881, - 0.06015734001994133, - -0.0936628058552742, - 0.05022328346967697, - 0.04663466662168503, - -0.02767125703394413, - 0.004958232864737511, - 0.10852095484733582, - -0.009199898689985275, - -0.012001347728073597, - 0.02455342933535576, - -0.0366758368909359, - 0.0424298495054245, - -0.029558448120951653, - 0.006994884926825762, - 0.06476634740829468, - 0.013324043713510036, - 0.04511486366391182, - -0.025048796087503433, - -0.017671888694167137, - -0.1164848804473877, - 0.009979200549423695, - 0.03409599885344505, - 0.0973581075668335, - -0.011334016919136047, - 0.01386767067015171, - -0.04685838520526886, - -0.071267269551754, - 0.0312788300216198, - -0.027630312368273735, - 0.09542803466320038, - -0.015073378570377827, - -0.016483070328831673, - 0.10623481124639511, - 0.010985083878040314, - 0.02556760236620903, - -0.052403368055820465, - -0.01147842314094305, - 0.03319564089179039, - 0.069051593542099, - -0.07736990600824356, - -0.05358013138175011, - 0.017084144055843353, - 0.03136401250958443, - -0.0032287281937897205, - 0.04497158154845238, - 0.049444250762462616, - 0.007242798339575529, - 0.019563665613532066, - -0.06911169737577438, - 0.037850528955459595, - -0.07883647829294205, - -0.04935717582702637, - -0.013661636970937252, - -0.03714895620942116, - -0.02986377477645874, - 0.08735671639442444, - 0.022886047139763832, - 0.027004661038517952, - -0.017222218215465546, - -0.10290086269378662, - -0.07346212863922119, - 0.06715315580368042, - 0.06836634129285812, - -0.01346024964004755, - 0.031949419528245926, - 0.05771039426326752, - -0.027490884065628052, - 0.030200574547052383, - 0.049648597836494446, - 0.1049681082367897, - -0.03021169826388359, - 0.000637968594674021, - -0.07491497695446014, - 0.07274871319532394, - 0.08364419639110565, - -0.1093386709690094, - -0.061665698885917664, - -0.0003366165328770876, - -0.052009209990501404, - 0.035503089427948, - -0.0368952751159668, - 0.008412673138082027, - 0.055118121206760406, - -0.023035917431116104, - -0.0857432633638382, - -0.11854654550552368, - 0.11555308848619461, - -0.09432242810726166, - -0.014157623052597046, - -0.07081761956214905, - 0.03196137398481369, - 0.06329343467950821, - 0.044685300439596176, - -0.034853242337703705, - 0.015262763015925884, - 0.040013570338487625, - -0.04142971709370613, - 0.0026692869141697884, - 0.08138493448495865, - 0.005325319245457649, - -0.12417425960302353, - -0.006527154240757227, - -0.0869840532541275, - 0.07885152846574783, - -0.04930106922984123, - 0.16691666841506958, - -0.00925438292324543, - -0.040394578129053116, - -0.08786991238594055, - 0.0327502004802227, - -0.03264082968235016, - 0.06058737635612488, - 0.046394918113946915, - 0.08468504995107651, - 0.06254935264587402, - -0.03359273448586464, - 0.10600753873586655, - 0.03855243697762489, - -0.019256064668297768, - -0.05811845138669014, - -0.027169078588485718, - -0.060603175312280655, - 0.03630848228931427, - 0.004633820150047541, - -0.11385249346494675, - 0.01475260965526104, - 0.030828822404146194, - -0.033128850162029266, - 0.06024675443768501, - 0.1311168521642685, - 0.06941784173250198, - -0.10493093729019165 - ] - }, - "p244_313.wav": { - "name": "p244", - "embedding": [ - 0.02142168954014778, - 0.049886684864759445, - -0.04737619683146477, - 0.03312927111983299, - -0.0724833682179451, - 0.025982335209846497, - -0.10125404596328735, - 0.11237995326519012, - -0.016938187181949615, - 0.1240723729133606, - -0.057187702506780624, - 0.112162284553051, - -0.03423161059617996, - -0.17403459548950195, - 0.01640089601278305, - 0.04892852157354355, - -0.026485878974199295, - -0.036173831671476364, - -0.07597172260284424, - -0.05111394077539444, - 0.03252503648400307, - 0.04747713729739189, - 0.020761726424098015, - -0.030358506366610527, - 0.007589813321828842, - 0.08350235223770142, - -0.01819518767297268, - 0.008206741884350777, - -0.01724264770746231, - -0.06443729251623154, - -0.047212135046720505, - 0.07249844074249268, - -0.0695524588227272, - 0.0015347761800512671, - 0.036939892917871475, - -0.02219861000776291, - -0.0233923252671957, - -0.028293907642364502, - -0.02022527903318405, - 0.013947761617600918, - -0.07670603692531586, - 0.0656580775976181, - 0.029969459399580956, - -0.008617842569947243, - 0.05774608999490738, - 0.01041030790656805, - -0.02956559881567955, - -0.03704890236258507, - -0.09309722483158112, - 0.15833771228790283, - 0.07991187274456024, - -0.0236746184527874, - -0.04585540294647217, - -0.04510103911161423, - 0.08938821405172348, - -0.009732533246278763, - -0.12872089445590973, - -0.06405602395534515, - 0.07925166189670563, - 0.11178164929151535, - -0.0383923202753067, - -0.02909669280052185, - 0.028173549100756645, - 0.0861702412366867, - 0.0682726725935936, - 0.07643285393714905, - 0.07359316945075989, - 0.12612062692642212, - -0.02053428627550602, - 0.0034753684885799885, - 0.06644515693187714, - 0.072492316365242, - 0.0769229531288147, - -0.0005894061177968979, - 0.021558700129389763, - 0.0148240951821208, - -0.004262634553015232, - -0.0337153784930706, - -0.03341085463762283, - -0.01247863657772541, - 0.008604643866419792, - -0.0028425739146769047, - 0.02461695298552513, - 0.004409964196383953, - -0.012768270447850227, - 0.0563889816403389, - 0.09075548499822617, - -0.012507534585893154, - 0.05127323791384697, - 0.017769459635019302, - -0.019381878897547722, - 0.07396526634693146, - -0.09262778609991074, - -0.04413747042417526, - 0.01436161994934082, - 0.009535644203424454, - -0.00625405041500926, - 0.061799537390470505, - 0.04148771986365318, - -0.01660812273621559, - 0.12313693761825562, - 0.01719614677131176, - -0.00957178883254528, - 0.02671133726835251, - -0.07920872420072556, - 0.12369725108146667, - 0.09580912441015244, - -0.030843552201986313, - 0.029534852132201195, - -0.050272103399038315, - 0.0692659318447113, - 0.040993209928274155, - -0.11497996747493744, - -0.05024636536836624, - 0.008883442729711533, - -0.02624170482158661, - -0.04495804011821747, - 0.1271926760673523, - 0.004026795271784067, - 0.03888726234436035, - 0.14366203546524048, - -0.10506200790405273, - -0.05239793658256531, - -0.0012600127374753356, - 0.03464144468307495, - -0.08841224759817123, - 0.04136303812265396, - 0.05112754553556442, - 0.0011233033146709204, - 0.0516161248087883, - 0.09388379752635956, - -0.017144110053777695, - 0.008297096937894821, - -0.004844239912927151, - -0.03991668298840523, - 0.013256723992526531, - -0.015149693936109543, - -0.023126162588596344, - 0.07030081003904343, - 0.036917105317115784, - 0.05841983109712601, - -0.04302629083395004, - -0.021770363673567772, - -0.11899854242801666, - 0.03372488543391228, - 0.024367112666368484, - 0.06567483395338058, - -0.02054380625486374, - 0.02614741027355194, - -0.047301650047302246, - -0.10456521809101105, - 0.024221524596214294, - -0.02210712991654873, - 0.06742219626903534, - -0.054348863661289215, - -0.013684777542948723, - 0.11857466399669647, - 0.04056893661618233, - -0.007575647439807653, - -0.05717083811759949, - -0.052838217467069626, - -0.006848352961242199, - 0.04980176314711571, - -0.09226065129041672, - -0.07509312778711319, - -0.030813217163085938, - 0.04452245682477951, - -0.00011402818927308545, - 0.06774844229221344, - 0.04638856649398804, - 0.02343478798866272, - 0.006943050771951675, - -0.07064477354288101, - -0.0006331975455395877, - -0.06736897677183151, - -0.057541511952877045, - -0.011784079484641552, - -0.040383338928222656, - -0.021517081186175346, - 0.072021484375, - -0.006972750183194876, - 0.034830741584300995, - -0.04687376320362091, - -0.08340221643447876, - -0.08604519814252853, - 0.048979684710502625, - 0.035802148282527924, - -0.04106026515364647, - 0.03976672887802124, - 0.06865504384040833, - -0.0578019917011261, - 0.020123563706874847, - 0.05720202252268791, - 0.11239179223775864, - -0.03434876352548599, - 0.038983166217803955, - -0.05767671763896942, - 0.1055237203836441, - 0.07481840997934341, - -0.06025584787130356, - -0.06102852150797844, - -0.03594226390123367, - -0.06284841895103455, - 0.049261629581451416, - -0.04006171226501465, - -0.016076108440756798, - 0.029867185279726982, - 0.025098517537117004, - -0.07913494110107422, - -0.0733911395072937, - 0.0698438286781311, - -0.05169570446014404, - -0.005870752036571503, - -0.09513655304908752, - 0.032577306032180786, - 0.07396671921014786, - 0.05974563956260681, - -0.031271547079086304, - 0.00485944002866745, - 0.05167495459318161, - -0.014154445379972458, - 0.04268321394920349, - 0.07700317353010178, - 0.05174528807401657, - -0.08144669234752655, - -0.04967574402689934, - -0.06901288032531738, - 0.03783658891916275, - -0.03139082342386246, - 0.11470809578895569, - 0.014636139385402203, - -0.02812395617365837, - -0.06898641586303711, - 0.051667165011167526, - -0.005063525401055813, - 0.06066303700208664, - 0.04841357469558716, - 0.07028861343860626, - 0.059153005480766296, - -0.04929915815591812, - 0.13303810358047485, - 0.0391136072576046, - -0.031435348093509674, - -0.04060107469558716, - -0.05390309542417526, - -0.052223604172468185, - 0.012352163903415203, - 0.034251339733600616, - -0.09305623173713684, - 0.007786917500197887, - 0.02105364017188549, - -0.018030185252428055, - 0.04245876520872116, - 0.11875030398368835, - 0.08289225399494171, - -0.09679828584194183 - ] - }, - "p244_189.wav": { - "name": "p244", - "embedding": [ - 0.054061584174633026, - 0.11470216512680054, - 0.016316469758749008, - -0.020602762699127197, - -0.02756618522107601, - 0.06860370934009552, - -0.15209344029426575, - 0.12005740404129028, - -0.060834091156721115, - 0.14446377754211426, - -0.09283483028411865, - 0.10139843076467514, - -0.014834349974989891, - -0.16928303241729736, - -0.05371050536632538, - 0.050717901438474655, - -0.04537893086671829, - -0.010936446487903595, - -0.01692710630595684, - -0.027092676609754562, - 0.03606000542640686, - 0.04401242733001709, - 0.04083456099033356, - -0.011781331151723862, - 0.051066093146800995, - 0.0534324124455452, - 0.03273087739944458, - 0.07584463804960251, - 0.02319362759590149, - -0.05936663597822189, - -0.03450694680213928, - 0.10983429849147797, - -0.02830195426940918, - 0.011660071089863777, - 0.0442812405526638, - 0.002715721260756254, - 0.034936338663101196, - -0.08276695758104324, - -0.007814133539795876, - 0.009511386975646019, - -0.006412091664969921, - 0.07810306549072266, - 0.027308408170938492, - -0.0023602754808962345, - 0.016765834763646126, - 0.03881479799747467, - 0.011776605620980263, - -0.07582377642393112, - -0.09905959665775299, - 0.1619507074356079, - 0.04109371826052666, - 0.011514004319906235, - -0.06973206996917725, - -0.08052308857440948, - 0.10235860198736191, - -0.023670658469200134, - -0.08146195113658905, - -0.033827897161245346, - 0.07704507559537888, - 0.15914320945739746, - -0.040653541684150696, - -0.05438581109046936, - 0.034578584134578705, - 0.10603852570056915, - 0.00698121590539813, - 0.08897261321544647, - 0.07400938123464584, - 0.060290850698947906, - 0.009071099571883678, - 0.014636531472206116, - 0.02936544641852379, - 0.06479693949222565, - -0.0038491198793053627, - -0.017406105995178223, - 0.021649464964866638, - -0.004924245178699493, - -0.03714916855096817, - 0.0400061160326004, - -0.010739690624177456, - -0.014694343321025372, - -0.012363161891698837, - 0.01900310069322586, - -0.010543467476963997, - 0.008182458579540253, - -0.02884434163570404, - 0.045528560876846313, - -0.023044809699058533, - -0.002590528456494212, - 0.09047289937734604, - 0.012260100804269314, - 0.016220485791563988, - 0.034721896052360535, - -0.05224500596523285, - -0.09895993769168854, - 0.03114529699087143, - 0.016769982874393463, - -0.001952069578692317, - 0.06945250928401947, - 0.031156614422798157, - -0.039112742990255356, - 0.12584392726421356, - 0.05463337153196335, - 0.0014311475679278374, - 0.024224836379289627, - -0.09696173667907715, - 0.12023141235113144, - 0.08631692826747894, - -0.0130640072748065, - 0.05441105365753174, - -0.053509727120399475, - 0.05512527748942375, - 0.07659163326025009, - -0.1541886329650879, - -0.09999258816242218, - 0.031785473227500916, - 0.032652467489242554, - -0.003077820874750614, - 0.08291192352771759, - -0.020125795155763626, - 0.0013200268149375916, - 0.08556358516216278, - -0.08341815322637558, - -0.0733201652765274, - -0.0185023732483387, - 0.052630871534347534, - -0.07558268308639526, - 0.039250582456588745, - 0.07296265661716461, - -0.023450978100299835, - -0.003632880514487624, - 0.0705694928765297, - -0.0021453395020216703, - 0.0062775034457445145, - 0.016538191586732864, - -0.033143579959869385, - 0.018510211259126663, - -0.04315420985221863, - -0.0027942857705056667, - 0.021535461768507957, - 0.06784075498580933, - 0.02893092855811119, - 0.021419523283839226, - -0.06008894369006157, - -0.11445252597332001, - -0.009073866531252861, - 0.034023817628622055, - 0.05537131428718567, - -0.012290950864553452, - -0.035908497869968414, - -0.05667175352573395, - -0.04714053124189377, - -0.00381668983027339, - 0.005961798131465912, - 0.08780786395072937, - -0.0020860484801232815, - 0.022010212764143944, - 0.09874808043241501, - 0.024450024589896202, - -0.004167753271758556, - -0.054217346012592316, - -0.013665186241269112, - 0.03161023557186127, - 0.02077224850654602, - -0.046125851571559906, - -0.07084117829799652, - 0.008410995826125145, - 0.024053949862718582, - -0.02418225072324276, - 0.041069842875003815, - 0.031204944476485252, - 0.022411314770579338, - 0.05253579840064049, - -0.07542093843221664, - 0.03250299021601677, - -0.10383333265781403, - -0.04506240412592888, - -0.004484906792640686, - 0.007167072035372257, - -0.028640177100896835, - 0.09136617183685303, - 0.017007891088724136, - 0.04663955792784691, - -0.008205385878682137, - -0.0667840987443924, - -0.0615413598716259, - 0.061117734760046005, - 0.0996965765953064, - 0.0084078935906291, - 0.04220139607787132, - 0.032252345234155655, - -0.0048997774720191956, - 0.06294463574886322, - 0.06534877419471741, - 0.07824238389730453, - -0.0006872769445180893, - -0.01005035825073719, - -0.047618985176086426, - 0.06074374541640282, - 0.04725376516580582, - -0.10643108189105988, - -0.07524313032627106, - -0.0251776035875082, - -0.06120811402797699, - 0.042097002267837524, - 0.008933242410421371, - 0.018248479813337326, - 0.0032928939908742905, - -0.019674506038427353, - -0.08447685837745667, - -0.0873546451330185, - 0.061360131949186325, - -0.05344153568148613, - -0.023623239248991013, - -0.054395854473114014, - 0.05509696528315544, - 0.09705829620361328, - 0.05161996930837631, - 0.0072556789964437485, - -0.03857619687914848, - 0.022206325083971024, - -0.07385842502117157, - -0.016611680388450623, - 0.02502818964421749, - 0.013440942391753197, - -0.08975663036108017, - 0.0679871141910553, - -0.0937887653708458, - 0.06893813610076904, - -0.055279821157455444, - 0.1566605567932129, - 0.004919194150716066, - -0.06815310567617416, - -0.10012626647949219, - 0.015767451375722885, - -0.0593147873878479, - 0.028425073251128197, - 0.02212471514940262, - 0.022095924243330956, - 0.05156773328781128, - -0.0739322081208229, - 0.08749933540821075, - 0.04144130274653435, - -0.03708742931485176, - -0.07542967051267624, - -0.05963771790266037, - -0.028486791998147964, - 0.03200472891330719, - -0.00276842899620533, - -0.0686369389295578, - -0.032860077917575836, - 0.025503020733594894, - -0.011452632956206799, - 0.09059660136699677, - 0.12143524736166, - 0.04256148263812065, - -0.1243513822555542 - ] - }, - "p244_014.wav": { - "name": "p244", - "embedding": [ - 0.0456618033349514, - 0.09947610646486282, - -0.0351579487323761, - 0.01769324578344822, - -0.03846055269241333, - 0.03294319659471512, - -0.1384236067533493, - 0.1454164683818817, - -0.03573080152273178, - 0.11553234606981277, - -0.0607529878616333, - 0.1252995729446411, - -0.039623670279979706, - -0.1287994235754013, - -0.025616401806473732, - 0.059261664748191833, - 0.0065677352249622345, - -0.024798106402158737, - 0.012047134339809418, - -0.011180071160197258, - 0.045637913048267365, - 0.02454722300171852, - 0.013781548477709293, - 0.02438787743449211, - 0.025713670998811722, - 0.062442049384117126, - 0.008027640171349049, - 0.023942165076732635, - -0.004922201856970787, - -0.02145509049296379, - 0.0020491499453783035, - 0.08045138418674469, - -0.028491167351603508, - 0.029588503763079643, - 0.047634731978178024, - 0.006369514856487513, - -0.016286443918943405, - -0.07070358097553253, - -0.010438184253871441, - -0.024547982960939407, - -0.038875553756952286, - 0.07682274281978607, - 0.017487555742263794, - -0.029269102960824966, - 0.027799539268016815, - 0.006001647561788559, - -0.0035741108004003763, - -0.03324389457702637, - -0.1038001999258995, - 0.12629824876785278, - 0.042398691177368164, - 0.04587283730506897, - -0.09751556068658829, - -0.04450879245996475, - 0.10620276629924774, - -0.007475041784346104, - -0.05505678430199623, - -0.0349879153072834, - 0.05194047465920448, - 0.1577078402042389, - -0.012517052702605724, - -0.040527522563934326, - 0.03556269407272339, - 0.10202843695878983, - 0.04841536283493042, - 0.0538499541580677, - 0.0951853096485138, - 0.0903569832444191, - -0.02120477706193924, - 0.00038562389090657234, - 0.023219358175992966, - 0.08689197152853012, - 0.025803115218877792, - -0.012411314994096756, - -0.007968703284859657, - -0.002945534884929657, - -0.027890753000974655, - -0.0026419139467179775, - -0.019570011645555496, - -0.05071458965539932, - -0.05330786854028702, - 0.012360257096588612, - 0.0007026037201285362, - 0.02548249252140522, - -0.015036750584840775, - 0.0378415510058403, - 0.04665284976363182, - -0.058008939027786255, - 0.0587211437523365, - 0.02665218524634838, - -0.01011449471116066, - 0.03193049877882004, - -0.076620914041996, - -0.07339684665203094, - 0.025463296100497246, - 0.0021541332826018333, - 0.022215019911527634, - 0.08271461725234985, - 0.03895801305770874, - 0.004185925237834454, - 0.10523208975791931, - 0.03697848320007324, - 0.005295770242810249, - -0.019892394542694092, - -0.06409311294555664, - 0.11022298038005829, - 0.07042629271745682, - -0.03810158371925354, - 0.05560486763715744, - -0.0493827685713768, - 0.015588978305459023, - 0.053994275629520416, - -0.11514697968959808, - -0.07873079180717468, - 0.027407001703977585, - 0.035015251487493515, - 0.01579325459897518, - 0.10628814995288849, - 0.01557882595807314, - 0.04157496988773346, - 0.07264241576194763, - -0.07872103899717331, - -0.07472427934408188, - -0.04022175073623657, - 0.05695508047938347, - -0.05361801013350487, - 0.08196534216403961, - 0.07280725240707397, - 0.007446852512657642, - 0.0009589539840817451, - 0.054964397102594376, - 0.00770481675863266, - 0.006735594943165779, - 0.0017329519614577293, - -0.023623213171958923, - 0.006417369470000267, - -0.03334959223866463, - -0.0058499048464000225, - 0.013856390491127968, - 0.036187827587127686, - 0.05148895084857941, - 0.012061990797519684, - -0.01096294168382883, - -0.10962604731321335, - -0.005911238957196474, - 0.07075758278369904, - 0.0666264072060585, - -0.0211165938526392, - -0.060836538672447205, - -0.02669548988342285, - -0.03672284632921219, - -0.030006997287273407, - -0.00560013996437192, - 0.08636757731437683, - -0.012779127806425095, - 0.04771970212459564, - 0.09276529401540756, - 0.020862631499767303, - 0.0015486115589737892, - -0.03773873299360275, - 0.0011763554066419601, - 0.0017245570197701454, - 0.04134422913193703, - -0.05242372304201126, - -0.0871952474117279, - -0.02570885792374611, - 0.037271082401275635, - -0.02657049521803856, - 0.05901411175727844, - 0.01927550882101059, - 0.016223667189478874, - 0.016166068613529205, - -0.05623400956392288, - 0.01310694683343172, - -0.10516701638698578, - -0.05479121580719948, - -0.015248250216245651, - 0.0053838989697396755, - -0.02046903781592846, - 0.07061156630516052, - 0.057423245161771774, - 0.07197509706020355, - 0.006083223968744278, - -0.05638034641742706, - -0.07956670224666595, - 0.03524193912744522, - 0.05869004875421524, - -0.01918291673064232, - 0.019595062360167503, - 0.04000133275985718, - -0.013602444902062416, - 0.034899353981018066, - 0.06724784523248672, - 0.06343290209770203, - -0.03596850484609604, - 0.0012189392000436783, - -0.053810086101293564, - 0.07253456115722656, - 0.09896670281887054, - -0.09662356227636337, - -0.07373400777578354, - -0.05366010218858719, - -0.06369131058454514, - 0.009729236364364624, - -0.023127544671297073, - 0.027799593284726143, - 0.021347586065530777, - -0.0376795269548893, - -0.12406335771083832, - -0.09899730980396271, - 0.06215960904955864, - -0.048071980476379395, - 0.024179209023714066, - -0.0599585585296154, - 0.036651648581027985, - 0.09318123012781143, - 0.01891211047768593, - -0.00443354994058609, - -0.02552139014005661, - 0.02204076573252678, - -0.03201678395271301, - -0.00341423531062901, - 0.05311751738190651, - 0.032578807324171066, - -0.09171418845653534, - 0.010781090706586838, - -0.058642059564590454, - 0.07592502236366272, - -0.043430980294942856, - 0.14329004287719727, - 0.006454888731241226, - -0.06720374524593353, - -0.09921152144670486, - 0.002791309729218483, - 0.0005907490849494934, - 0.046496711671352386, - -0.010645516216754913, - 0.05001773312687874, - 0.01717197336256504, - -0.06269966810941696, - 0.0962488055229187, - 0.06484914571046829, - -0.03050391748547554, - -0.07122256606817245, - -0.061058107763528824, - -0.02213059365749359, - 0.03828231245279312, - -0.012656682170927525, - -0.047123540192842484, - -0.024648265913128853, - 0.010331484489142895, - 0.012792368419468403, - 0.08453378081321716, - 0.12315244227647781, - 0.05332903936505318, - -0.11324436217546463 - ] - }, - "p244_093.wav": { - "name": "p244", - "embedding": [ - 0.05074314773082733, - 0.090809166431427, - -0.013290628790855408, - 0.015098122879862785, - -0.03353681415319443, - 0.07280128449201584, - -0.16247853636741638, - 0.12200742959976196, - -0.038645461201667786, - 0.140935480594635, - -0.06970199942588806, - 0.10677939653396606, - -0.015908164903521538, - -0.19865746796131134, - -0.0289695393294096, - 0.057447899132966995, - -0.04007676616311073, - -0.0360996276140213, - 0.009147069416940212, - -0.003172045573592186, - 0.04778694361448288, - 0.03840216249227524, - -0.0015303976833820343, - -0.0033095041289925575, - 0.03224800154566765, - 0.05935615301132202, - 0.00954018160700798, - 0.04134117066860199, - -0.005329861771315336, - -0.02657070755958557, - -0.03769402205944061, - 0.11924472451210022, - -0.05533643439412117, - 0.006156974472105503, - 0.05714326351881027, - 0.010049121454358101, - -4.3819774873554707e-05, - -0.06700471043586731, - -0.0012456621043384075, - -0.0037426804192364216, - -0.0500551238656044, - 0.0754559114575386, - 0.04676090180873871, - 0.00682303961366415, - 0.016727151349186897, - 0.05280639976263046, - 0.007143775001168251, - -0.05887789651751518, - -0.0993725061416626, - 0.16611286997795105, - 0.04758661240339279, - 0.006035572849214077, - -0.05677713453769684, - -0.07110647857189178, - 0.09511614590883255, - 0.019881442189216614, - -0.08745481818914413, - -0.03761862590909004, - 0.09009537845849991, - 0.15992924571037292, - -0.028263116255402565, - -0.05992526561021805, - 0.02318868786096573, - 0.11784019321203232, - 0.03675505518913269, - 0.10231959819793701, - 0.06000570207834244, - 0.11065860092639923, - 0.009880606085062027, - -0.0056321825832128525, - 0.06433378159999847, - 0.06186582148075104, - 0.0557703897356987, - -0.03159122169017792, - 0.03314778581261635, - 0.0030629471875727177, - -0.027840513736009598, - 0.024595201015472412, - -0.01803481951355934, - -0.017497047781944275, - 0.005985913798213005, - -0.0021278513595461845, - 0.0140004251152277, - 0.03877772390842438, - -0.02312973514199257, - 0.03503366932272911, - 0.0379556380212307, - -0.005760233383625746, - 0.08118031919002533, - 0.02081253193318844, - 0.018608156591653824, - 0.06975807994604111, - -0.09668467938899994, - -0.08453261852264404, - 0.06258927285671234, - 0.01369533222168684, - 0.025164879858493805, - 0.08311672508716583, - 0.051353029906749725, - -0.026406943798065186, - 0.11544302850961685, - 0.02830936759710312, - 0.004805782809853554, - 0.035251013934612274, - -0.10384169220924377, - 0.13374894857406616, - 0.0701487809419632, - -0.03527000546455383, - 0.0386669896543026, - -0.06636445224285126, - 0.07947658002376556, - 0.08027878403663635, - -0.16000542044639587, - -0.07755297422409058, - 0.055938445031642914, - 0.03538131341338158, - -0.03299558162689209, - 0.14470471441745758, - -0.01536556240171194, - 0.011838282458484173, - 0.09792724251747131, - -0.09889156371355057, - -0.06377687305212021, - -0.028526391834020615, - 0.03751164674758911, - -0.09809593111276627, - 0.0531526580452919, - 0.04835750162601471, - -0.014352550730109215, - 0.0021915100514888763, - 0.07922118902206421, - -0.014146468602120876, - 0.00040054344572126865, - -0.006033643148839474, - -0.01888749934732914, - 0.038111671805381775, - -0.0358765684068203, - 0.016435174271464348, - 0.010315737687051296, - 0.020565688610076904, - 0.03732144832611084, - 0.011628430336713791, - -0.04108860343694687, - -0.13757212460041046, - 0.010281476192176342, - 0.05475397780537605, - 0.07942627370357513, - -0.018292147666215897, - -0.04738131910562515, - -0.047075577080249786, - -0.06998344510793686, - 0.018743351101875305, - -0.0010394174605607986, - 0.06967242062091827, - 0.016308948397636414, - -0.004125738050788641, - 0.09388042986392975, - 0.030768249183893204, - 0.002254853490740061, - -0.047350138425827026, - -0.04300922155380249, - 0.0307645034044981, - 0.03491809219121933, - -0.09616328775882721, - -0.06445501744747162, - -0.015645071864128113, - 0.02320963703095913, - -0.023742932826280594, - 0.03132423013448715, - 0.04512029141187668, - 0.03353787958621979, - 0.030718671157956123, - -0.07515047490596771, - 0.014204693958163261, - -0.11770935356616974, - -0.07615149021148682, - -0.019917674362659454, - -0.0024251937866210938, - -0.012518848292529583, - 0.0842566192150116, - -0.004955656360834837, - 0.04481224715709686, - -0.0415770560503006, - -0.04331125319004059, - -0.06461913883686066, - 0.0594070665538311, - 0.08434751629829407, - 0.0023477990180253983, - 0.04480049014091492, - 0.02785741537809372, - -0.026571273803710938, - 0.03960242494940758, - 0.05644042044878006, - 0.12907400727272034, - -0.022564353421330452, - 0.0271480493247509, - -0.049875058233737946, - 0.10417333245277405, - 0.07374027371406555, - -0.07385571300983429, - -0.07694696635007858, - -0.0014689902309328318, - -0.0646185502409935, - 0.0317489355802536, - -0.029963523149490356, - 0.007138731423765421, - -0.011343549937009811, - -0.008046459406614304, - -0.0948844850063324, - -0.08245319128036499, - 0.048624053597450256, - -0.06483778357505798, - -0.02410692349076271, - -0.10119737684726715, - 0.06962455809116364, - 0.09975449740886688, - 0.047382839024066925, - -0.03321690857410431, - -0.025760939344763756, - 0.03593400865793228, - -0.046623896807432175, - 0.0031484849750995636, - 0.04533783346414566, - 0.03373042866587639, - -0.11636415123939514, - 0.010867936536669731, - -0.07314219325780869, - 0.055471889674663544, - -0.07504880428314209, - 0.1612653136253357, - -0.004218073096126318, - -0.06314291059970856, - -0.07583891600370407, - 0.029648810625076294, - -0.0033663371577858925, - 0.03395656496286392, - 0.030652225017547607, - 0.050599485635757446, - 0.031894005835056305, - -0.06051668897271156, - 0.11911025643348694, - 0.03137093037366867, - -0.012358525767922401, - -0.05907273665070534, - -0.04374746233224869, - -0.03692643344402313, - 0.03913130238652229, - 0.002792461309581995, - -0.09477012604475021, - -0.02743423357605934, - 0.05291053652763367, - 0.011326944455504417, - 0.05075114592909813, - 0.137893944978714, - 0.03861163556575775, - -0.12447661906480789 - ] - }, - "p244_333.wav": { - "name": "p244", - "embedding": [ - 0.014325177296996117, - 0.11449761688709259, - 0.012907424010336399, - 0.02295769192278385, - -0.02159927971661091, - 0.08031825721263885, - -0.08673080801963806, - 0.089596226811409, - -0.08615908026695251, - 0.1452193558216095, - -0.12105554342269897, - 0.06368371844291687, - -0.061172179877758026, - -0.17030206322669983, - -0.059386245906353, - 0.05200222134590149, - -0.061178386211395264, - -0.0033570416271686554, - -0.04070690646767616, - -0.020595546811819077, - 0.036457717418670654, - 0.04992419108748436, - 0.030987495556473732, - 0.0071773407980799675, - 0.026273498311638832, - 0.046439576894044876, - -0.01594150811433792, - 0.042374029755592346, - 0.022514771670103073, - -0.043104641139507294, - -0.03561869263648987, - 0.14091166853904724, - -0.027828924357891083, - 0.0056991600431501865, - 0.02491716854274273, - 0.02859354019165039, - 0.026210512965917587, - -0.05052930861711502, - -0.013044025748968124, - 0.009513557888567448, - -0.06214935705065727, - 0.042675912380218506, - -0.002387512242421508, - 0.03468039259314537, - 0.055267397314310074, - -0.017738917842507362, - -0.03823193535208702, - -0.035165783017873764, - -0.07704415917396545, - 0.17336824536323547, - 0.085908904671669, - -0.014627894386649132, - -0.06946154683828354, - -0.09298597276210785, - 0.10219079256057739, - 0.0032926856074482203, - -0.14382252097129822, - -0.02091677486896515, - 0.08752000331878662, - 0.17398592829704285, - 0.007514073979109526, - -0.017070455476641655, - 0.006985836662352085, - 0.11117805540561676, - -0.005598222836852074, - 0.10442517697811127, - 0.045129984617233276, - 0.06134156882762909, - 0.027165057137608528, - 0.012549011036753654, - 0.06926406919956207, - 0.019101139158010483, - 0.015344534069299698, - -0.06840186566114426, - 0.018872717395424843, - 0.006669655907899141, - -0.05188501626253128, - 0.04140395671129227, - -0.004680470563471317, - -0.009352735243737698, - -0.012629471719264984, - -0.018779274076223373, - -0.04645264893770218, - -0.02054588496685028, - -0.027635712176561356, - 0.012356160208582878, - -0.009202951565384865, - 0.01766585186123848, - 0.10236281156539917, - 0.05875537171959877, - 0.006056458689272404, - 0.04346970096230507, - -0.021999120712280273, - -0.06923200190067291, - -0.006203395314514637, - 0.04469767212867737, - -0.03433457389473915, - 0.07388408482074738, - 0.021825894713401794, - -0.03577183932065964, - 0.10948977619409561, - 0.033876899629831314, - 0.022338975220918655, - 0.013979647308588028, - -0.14595705270767212, - 0.10110965371131897, - 0.08872570097446442, - -0.017452171072363853, - 0.03066416271030903, - 0.014129428192973137, - 0.08227038383483887, - 0.10475742816925049, - -0.15073342621326447, - -0.05055554583668709, - 0.03314922749996185, - 2.4902168661355972e-05, - 0.02677762880921364, - 0.06092622131109238, - 0.001700022374279797, - -0.029652591794729233, - 0.09441964328289032, - -0.08368164300918579, - -0.07247618585824966, - -0.04964471235871315, - 0.05269414186477661, - -0.07956992834806442, - 0.006856137420982122, - 0.05506017059087753, - -0.005718818865716457, - -0.025411920621991158, - 0.06056251376867294, - -0.010853514075279236, - 0.013400735333561897, - 0.025045031681656837, - -0.05244510993361473, - 0.038665324449539185, - -0.05577777326107025, - -0.0031976664904505014, - 0.05971081927418709, - 0.04759639501571655, - 0.046779509633779526, - -0.002805879805237055, - -0.04341663047671318, - -0.06454512476921082, - 0.001617221161723137, - 0.06299180537462234, - 0.014177510514855385, - -0.019614066928625107, - 0.00024880608543753624, - -0.05706607550382614, - -0.07140447199344635, - 0.0518784299492836, - -0.011081857606768608, - 0.10744550079107285, - 0.010400813072919846, - -0.02988320402801037, - 0.13033558428287506, - -0.0014120237901806831, - -0.020904697477817535, - -0.0692158043384552, - -0.0308064054697752, - 0.015778839588165283, - 0.024709677323698997, - -0.08348163962364197, - -0.07419822365045547, - 0.02880706638097763, - 0.007583524566143751, - 0.011873099021613598, - 0.01575925573706627, - 0.04312850162386894, - -0.010429495945572853, - 0.037689998745918274, - -0.07981939613819122, - 0.03625351935625076, - -0.09346616268157959, - -0.04569482058286667, - -0.014393470250070095, - -0.050761498510837555, - 0.02313956245779991, - 0.10098429024219513, - -0.0046724844723939896, - -0.03694465756416321, - 0.02082902565598488, - -0.11700962483882904, - -0.05665389448404312, - 0.09227119386196136, - 0.09701196849346161, - 0.016451703384518623, - 0.0752602219581604, - 0.06502072513103485, - -0.06645902246236801, - 0.05917561799287796, - 0.06014357879757881, - 0.1082269549369812, - -0.03990686684846878, - 0.02011851780116558, - -0.06517590582370758, - 0.039902880787849426, - 0.044074639678001404, - -0.1100197583436966, - -0.11120107769966125, - -0.04242481663823128, - -0.03375177085399628, - 0.07429786026477814, - -0.01551996823400259, - 0.004195597488433123, - 0.023307176306843758, - -0.06684321165084839, - -0.07075336575508118, - -0.09011738747358322, - 0.11423295736312866, - -0.008603518828749657, - -0.06628627330064774, - -0.059577569365501404, - 0.05242491513490677, - 0.04369697719812393, - 0.03867795690894127, - -0.02787746489048004, - 0.040127720683813095, - 0.03824784606695175, - -0.08688057214021683, - -0.05431417375802994, - 0.03451377898454666, - -0.01647210493683815, - -0.08394553512334824, - 0.01727335713803768, - -0.09145916998386383, - 0.14186407625675201, - -0.07816192507743835, - 0.13590964674949646, - -0.034235186874866486, - -0.0706147849559784, - -0.08537694811820984, - 0.06276419758796692, - -0.015496889129281044, - 0.019552160054445267, - 0.04243379831314087, - 0.04914851114153862, - 0.012894198298454285, - -0.026504509150981903, - 0.08944068849086761, - 0.000611976720392704, - -0.011331465095281601, - -0.0376971960067749, - -0.009449148550629616, - -0.04812125861644745, - -0.002982812002301216, - -0.010595280677080154, - -0.10758279263973236, - 0.025325309485197067, - -0.0011015544878318906, - -0.023155320435762405, - 0.06819279491901398, - 0.10175779461860657, - 0.06305922567844391, - -0.12680867314338684 - ] - }, - "p244_362.wav": { - "name": "p244", - "embedding": [ - 0.03714986890554428, - 0.11861540377140045, - -0.02694416418671608, - 0.018069982528686523, - -0.06029801815748215, - 0.06273024529218674, - -0.09477032721042633, - 0.13931161165237427, - -0.03693581372499466, - 0.13718795776367188, - -0.08105975389480591, - 0.11021724343299866, - -0.062452685087919235, - -0.1252080649137497, - -0.012359030544757843, - 0.03384510055184364, - -0.0191726703196764, - -0.0022099781781435013, - -0.061176497489213943, - -0.05286918208003044, - 0.020209483802318573, - 0.016866516321897507, - 0.006714319810271263, - -0.005302141886204481, - 0.016877098008990288, - 0.06890036165714264, - -0.016572443768382072, - 0.02256537787616253, - -0.005866106599569321, - -0.03498264029622078, - -0.04177607595920563, - 0.09079831838607788, - -0.043500836938619614, - 0.014600591734051704, - 0.044675786048173904, - -0.0011057229712605476, - -0.014213219285011292, - -0.029972242191433907, - -0.005092155653983355, - 0.0165712907910347, - -0.06285179406404495, - 0.05990879610180855, - 0.013404877856373787, - -0.02127569355070591, - 0.03938429802656174, - 0.017529966309666634, - 0.0025645866990089417, - -0.0315263532102108, - -0.0941479504108429, - 0.14149542152881622, - 0.07550904899835587, - -0.02064705826342106, - -0.06563283503055573, - -0.04693109542131424, - 0.10806945711374283, - -0.014377479441463947, - -0.10845473408699036, - -0.028144216164946556, - 0.06368552148342133, - 0.12150625884532928, - -0.04792851209640503, - -0.03814571350812912, - 0.01005981769412756, - 0.1209573745727539, - 0.045149363577365875, - 0.08341637253761292, - 0.073396697640419, - 0.1257757693529129, - -0.05149020254611969, - 0.0047470335848629475, - 0.06224173307418823, - 0.05636017024517059, - 0.08150970935821533, - -0.004099342506378889, - 0.009345509111881256, - -0.02637176774442196, - 0.0007333536632359028, - 0.0012962855398654938, - -0.0281669944524765, - -0.049601804465055466, - -0.019783865660429, - -0.006203534081578255, - -0.01857660338282585, - -0.002953978255391121, - -0.016848746687173843, - 0.06084948778152466, - 0.08057194203138351, - -0.02419147826731205, - 0.07164037227630615, - 0.053120002150535583, - -0.0002075880765914917, - 0.06655681878328323, - -0.0820050835609436, - -0.060152534395456314, - 0.014284870587289333, - -0.02120385505259037, - 0.04449407011270523, - 0.0728786438703537, - 0.03976330906152725, - 0.017309065908193588, - 0.11342354118824005, - 0.039738647639751434, - 0.012049498036503792, - 0.025491636246442795, - -0.07365502417087555, - 0.14513546228408813, - 0.0999944806098938, - -0.05388166755437851, - 0.02957596816122532, - -0.015162109397351742, - 0.054915815591812134, - 0.04895123094320297, - -0.10357514023780823, - -0.06921754032373428, - -0.0004478837363421917, - 0.024426940828561783, - -0.02955877222120762, - 0.08053833246231079, - -0.008099090307950974, - 0.017462952062487602, - 0.1267172396183014, - -0.07129847258329391, - -0.047261983156204224, - -0.03093167021870613, - 0.030397800728678703, - -0.0729895532131195, - 0.047438330948352814, - 0.07170914858579636, - 0.010131323710083961, - 0.02670990489423275, - 0.09648784250020981, - -0.00031225383281707764, - -0.004033057484775782, - 0.015619473531842232, - -0.043840061873197556, - 0.00024279503850266337, - -0.004729769192636013, - -0.0022626626305282116, - 0.047340791672468185, - 0.044742316007614136, - 0.07039082795381546, - -0.010655401274561882, - 0.0035246331244707108, - -0.09063299000263214, - 0.035034943372011185, - 0.05182880908250809, - 0.0462273508310318, - -0.022194791585206985, - -0.004890982992947102, - -0.03134872764348984, - -0.07135814428329468, - 0.015117624774575233, - -0.0014271652325987816, - 0.07455414533615112, - -0.05122922360897064, - -0.004802582785487175, - 0.14125652611255646, - 0.03219471871852875, - -0.0038775685243308544, - -0.06265702843666077, - -0.03045324981212616, - -0.0151737742125988, - 0.04008708521723747, - -0.11106640100479126, - -0.1059940829873085, - -0.022385109215974808, - 0.030467946082353592, - -0.00916038267314434, - 0.07014982402324677, - 0.03957320749759674, - -0.001113635953515768, - 0.03728679567575455, - -0.03269844502210617, - 0.023429932072758675, - -0.07356943935155869, - -0.045245274901390076, - -0.023619238287210464, - -0.05043447017669678, - -0.015969255939126015, - 0.0663817822933197, - -0.002460706979036331, - 0.03434757515788078, - 0.0013443343341350555, - -0.08223195374011993, - -0.07770854234695435, - 0.046657003462314606, - 0.047073714435100555, - -0.017923103645443916, - 0.03930729255080223, - 0.08944554626941681, - -0.0469549298286438, - 0.03953076899051666, - 0.07125431299209595, - 0.1110820472240448, - -0.03320571780204773, - 0.03872177377343178, - -0.07537054270505905, - 0.06179335340857506, - 0.07532834261655807, - -0.09486472606658936, - -0.10171042382717133, - -0.07866500318050385, - -0.028609924018383026, - 0.02569190412759781, - -0.046558927744627, - 0.003873845562338829, - 0.02945076674222946, - -0.013101544231176376, - -0.05669301375746727, - -0.09358786791563034, - 0.08399897813796997, - -0.04926712065935135, - 0.00591583177447319, - -0.08540445566177368, - 0.04149056226015091, - 0.05383109673857689, - 0.04541078209877014, - -0.04073396325111389, - 0.016913186758756638, - 0.06351201981306076, - -0.0194476917386055, - 0.024849308654665947, - 0.06731212139129639, - 0.03595453500747681, - -0.07395228743553162, - -0.018031014129519463, - -0.07708698511123657, - 0.07212372124195099, - -0.026801716536283493, - 0.1407599151134491, - 0.021320484578609467, - -0.045722898095846176, - -0.06706468015909195, - 0.04540078341960907, - -0.025644458830356598, - 0.04586338996887207, - 0.03935934603214264, - 0.05735268443822861, - 0.022805247455835342, - -0.04245341941714287, - 0.12603536248207092, - 0.023159151896834373, - -0.0430176705121994, - -0.05810045450925827, - -0.050544872879981995, - -0.06093861907720566, - 0.010261114686727524, - 0.033409520983695984, - -0.08241680264472961, - -0.022583546116948128, - -0.006148810498416424, - -0.008769982494413853, - 0.07730481028556824, - 0.12032492458820343, - 0.09402702748775482, - -0.09408625960350037 - ] - }, - "p244_402.wav": { - "name": "p244", - "embedding": [ - 0.0508735328912735, - 0.07379981130361557, - -0.0406593456864357, - 0.037621837109327316, - -0.036522991955280304, - 0.05845237895846367, - -0.1042163074016571, - 0.09248632192611694, - -0.0330301970243454, - 0.1548629105091095, - -0.06278659403324127, - 0.12126767635345459, - 0.00612430227920413, - -0.16300934553146362, - -0.025052737444639206, - 0.0379757396876812, - -0.03638918325304985, - -0.012205805629491806, - -0.048974018543958664, - -0.022220304235816002, - 0.05700377747416496, - 0.0723387822508812, - 0.032509442418813705, - -0.04959699138998985, - 0.02640809491276741, - 0.055027998983860016, - -0.02195710502564907, - 0.01272258348762989, - -0.008890101686120033, - -0.12577980756759644, - -0.06351986527442932, - 0.09425278753042221, - -0.03645401448011398, - 0.03239458054304123, - 0.01819569244980812, - 0.008899547159671783, - 0.010858158580958843, - -0.05905009061098099, - -0.0254974327981472, - 0.02161114476621151, - -0.03308264911174774, - 0.05033128708600998, - -0.0018922369927167892, - -0.04131113737821579, - 0.05364016443490982, - -0.016715360805392265, - -0.017162229865789413, - -0.02491765096783638, - -0.08130045980215073, - 0.1714319884777069, - 0.05640130490064621, - 0.013079941272735596, - -0.06929761916399002, - -0.08488892018795013, - 0.08526989072561264, - -0.009844035841524601, - -0.12087604403495789, - -3.451605880400166e-05, - 0.043561987578868866, - 0.14840668439865112, - -0.006341175641864538, - -0.051768358796834946, - 0.045168694108724594, - 0.08870804309844971, - 0.02943137288093567, - 0.06059722602367401, - 0.08375724405050278, - 0.07937578856945038, - 0.0016159487422555685, - 0.004422195255756378, - 0.031079735606908798, - 0.11223737895488739, - 0.10097592324018478, - -0.028863202780485153, - 0.029681768268346786, - 0.0026491829194128513, - -0.05049065500497818, - -0.025705374777317047, - -0.04260547086596489, - -0.025787746533751488, - 0.000731926120352, - -0.012470347806811333, - 0.03584346920251846, - 0.013764582574367523, - -0.04847987741231918, - 0.02870183251798153, - 0.0612388513982296, - -0.04680672287940979, - 0.03681580722332001, - 0.052709661424160004, - 0.04116778075695038, - 0.036362018436193466, - -0.08563335984945297, - -0.09518816322088242, - 0.04457642138004303, - 0.03660421073436737, - 0.00043100863695144653, - 0.06126052886247635, - 0.06995650380849838, - -0.03779887780547142, - 0.09688234329223633, - 0.017242174595594406, - 0.008235731162130833, - -0.010043280199170113, - -0.08334952592849731, - 0.08413618803024292, - 0.14761894941329956, - -0.014356866478919983, - 0.045407623052597046, - -0.056622978299856186, - 0.08711928129196167, - 0.07282703369855881, - -0.14034190773963928, - -0.07816387712955475, - 0.006479734554886818, - -0.026812221854925156, - 0.02828856185078621, - 0.1035076230764389, - 0.014560109935700893, - 0.04915304109454155, - 0.09340524673461914, - -0.11248641461133957, - -0.049020834267139435, - -0.045334458351135254, - 0.03757977485656738, - -0.09982053935527802, - 0.08366958796977997, - 0.03844127804040909, - -0.0037756150122731924, - -0.0020173736847937107, - 0.047444261610507965, - -0.03268556669354439, - 0.02319594845175743, - -0.032461978495121, - -0.045328907668590546, - -0.013971710577607155, - -0.044613298028707504, - -0.01694551669061184, - 0.05389242619276047, - 0.0199870802462101, - 0.051351398229599, - -0.022664040327072144, - -0.04059381037950516, - -0.12111130356788635, - 0.02624417096376419, - 0.03731387481093407, - 0.03083357959985733, - -0.016961323097348213, - -0.025061853229999542, - -0.029168304055929184, - -0.08020936697721481, - 0.06208762526512146, - -0.046974681317806244, - 0.0634661316871643, - 0.022950230166316032, - 0.007771766744554043, - 0.1115635484457016, - 0.010986441746354103, - -0.02087082341313362, - -0.022358935326337814, - -0.037896811962127686, - 0.008442696183919907, - 0.04136109724640846, - -0.0935450941324234, - -0.08827902376651764, - -0.018671076744794846, - -0.019474998116493225, - -0.011375385336577892, - 0.06158566474914551, - 0.05662206932902336, - 0.017474018037319183, - 0.024866504594683647, - -0.06552673876285553, - -0.021970730274915695, - -0.12603862583637238, - -0.07713282108306885, - -0.012118677608668804, - -0.07413344085216522, - -0.000942267186474055, - 0.10987742245197296, - 0.01569310389459133, - 0.0030647581443190575, - -0.07118270546197891, - -0.051316093653440475, - -0.07931159436702728, - 0.04717697948217392, - 0.03994818776845932, - 0.021829068660736084, - 0.008511672727763653, - 0.04116184636950493, - 0.011327322572469711, - 0.06375991553068161, - 0.06705322116613388, - 0.09342639893293381, - -0.0019416648428887129, - 0.03156933933496475, - -0.06465055793523788, - 0.1387975662946701, - 0.10464684665203094, - -0.023013398051261902, - -0.11047522723674774, - -0.04860864579677582, - -0.09196440875530243, - 0.05945059657096863, - -0.033380985260009766, - -0.006021165754646063, - 0.03114924393594265, - -0.006030192598700523, - -0.11608670651912689, - -0.08018843829631805, - 0.1011839359998703, - -0.019012505188584328, - -0.03212039917707443, - -0.08153139799833298, - 0.04545474797487259, - 0.07152257859706879, - 0.03886404260993004, - -0.03274347633123398, - 0.023190123960375786, - 0.06713353097438812, - -0.05542673170566559, - 0.011438285931944847, - 0.04052858054637909, - 0.019948141649365425, - -0.08865487575531006, - -0.00962294451892376, - -0.06575658917427063, - 0.043593283742666245, - -0.07244224846363068, - 0.12439824640750885, - 0.0002766617981251329, - -0.07151350378990173, - -0.07043205201625824, - 0.09591775387525558, - -0.0038696867413818836, - 0.03135880455374718, - 0.039293088018894196, - 0.06671574711799622, - 0.052934497594833374, - -0.12110096216201782, - 0.06568339467048645, - 0.05482257530093193, - -0.004840767942368984, - -0.06641611456871033, - -0.07954990863800049, - -0.020583869889378548, - 0.022653883323073387, - -0.007633887231349945, - -0.06359496712684631, - 0.0257723368704319, - 0.004820989444851875, - 0.037046290934085846, - 0.03749874234199524, - 0.11962032318115234, - 0.026607941836118698, - -0.11625548452138901 - ] - }, - "p244_361.wav": { - "name": "p244", - "embedding": [ - 0.011926394887268543, - 0.06210249662399292, - -0.017835557460784912, - -0.01735677197575569, - -0.020619401708245277, - 0.028118301182985306, - -0.13155071437358856, - 0.0676778256893158, - -0.03457015007734299, - 0.13890595734119415, - -0.011586526408791542, - 0.08402418345212936, - -0.02614414319396019, - -0.1015537828207016, - -0.00249448511749506, - 0.050869256258010864, - -0.07413353025913239, - -0.029104825109243393, - 0.011877566576004028, - -0.07702042907476425, - 0.014003106392920017, - 0.004240121692419052, - 0.030682045966386795, - -0.05778014659881592, - 0.010506515391170979, - 0.07814309000968933, - 0.005116107873618603, - -0.010419691912829876, - -0.008949613198637962, - -0.07176841795444489, - 0.006712498143315315, - 0.061862438917160034, - -0.02689170278608799, - -0.008617695420980453, - 0.020216556265950203, - -0.0031817900016903877, - -0.00239486969076097, - -0.024698350578546524, - 0.025762923061847687, - 0.05596732720732689, - -0.04905436187982559, - 0.08756843209266663, - 0.03150226175785065, - -0.001595320412889123, - 0.04404531791806221, - -0.054801687598228455, - -0.04728090018033981, - 0.037360504269599915, - -0.0491497702896595, - 0.1084604412317276, - 0.06694461405277252, - -0.012261574156582355, - -0.04498547315597534, - -0.006163235753774643, - 0.07266216725111008, - 0.026168860495090485, - -0.12393708527088165, - 0.000909857451915741, - 0.017232131212949753, - 0.10199634730815887, - -0.014873003587126732, - -0.052437350153923035, - 0.022934047505259514, - 0.09842145442962646, - 0.007212614640593529, - 0.0503145270049572, - 0.07597789168357849, - 0.06822536885738373, - 0.0014334091683849692, - -0.02090320736169815, - 0.05105771869421005, - 0.08020811527967453, - 0.02390703186392784, - -0.00915088877081871, - 0.048017989844083786, - -0.04172316938638687, - -0.012648390606045723, - -0.05305678769946098, - -0.0018478273414075375, - -0.07383989542722702, - -0.07785394042730331, - -0.025790760293602943, - 0.01661345735192299, - 0.06963403522968292, - 0.023828279227018356, - -0.014390707015991211, - 0.05120624229311943, - -0.043101049959659576, - 0.032904960215091705, - 0.0441870354115963, - 0.015095490962266922, - 0.012522710487246513, - -0.05493451654911041, - -0.03461775556206703, - 0.0038149338215589523, - -0.009417260996997356, - 0.08902069181203842, - 0.028932757675647736, - 0.03136727213859558, - 0.02723829448223114, - 0.0671997219324112, - 0.05518867075443268, - 0.0028429776430130005, - -0.037112124264240265, - -0.06971690058708191, - 0.08399337530136108, - 0.09831470251083374, - -0.04336649179458618, - 0.03436507657170296, - 0.003378668799996376, - 0.03170507028698921, - -0.015983428806066513, - -0.09478430449962616, - -0.026415903121232986, - -0.00772077776491642, - 0.06072218716144562, - 0.005304585210978985, - 0.12128622829914093, - 0.04068703576922417, - 0.044860366731882095, - 0.07096271216869354, - -0.024594897404313087, - -0.037789031863212585, - -0.07295336574316025, - 0.05428667366504669, - -0.08637398481369019, - 0.0680186003446579, - 0.05840304493904114, - 0.024261580780148506, - 0.0199790820479393, - 0.06717151403427124, - 0.028107551857829094, - 0.005176726263016462, - -0.04185377061367035, - -0.019797256216406822, - 0.028216931968927383, - 0.0006682863458991051, - 0.05167779326438904, - 0.07252205908298492, - -0.0023833205923438072, - 0.09705781936645508, - 0.02792045846581459, - 0.0002648690715432167, - -0.06792549043893814, - 0.017863335087895393, - 0.013883218169212341, - 0.020725630223751068, - -0.03879057615995407, - -0.04778476431965828, - 0.015979815274477005, - -0.0791681557893753, - -0.01946365088224411, - -0.02372746355831623, - 0.08049359917640686, - 0.008949203416705132, - -0.027766037732362747, - 0.09724756330251694, - 0.03667234256863594, - -0.01743493601679802, - 0.01892685703933239, - -0.033436112105846405, - -0.004656711593270302, - 0.06611120700836182, - -0.16065530478954315, - -0.06247282773256302, - -0.009763971902430058, - 0.04171407222747803, - 0.027861274778842926, - 0.02400818094611168, - 0.08764767646789551, - -0.00726656336337328, - 0.029627498239278793, - 0.02908611111342907, - 0.011773352511227131, - -0.0522930733859539, - -0.07493104040622711, - -0.03004358522593975, - -0.08556779474020004, - -0.06650198251008987, - 0.06261762231588364, - -0.03993543982505798, - 0.06129869818687439, - -0.026727210730314255, - -0.03586728498339653, - -0.03839658200740814, - 0.05009118467569351, - 0.012728995643556118, - -0.042257070541381836, - -0.0008904095739126205, - 0.08502168208360672, - 0.015666598454117775, - -0.020299626514315605, - 0.025418436154723167, - 0.09600627422332764, - -0.07311512529850006, - 0.004467342980206013, - -0.08632595837116241, - 0.06632199883460999, - 0.083644337952137, - -0.03791866451501846, - -0.03993052989244461, - -0.053744133561849594, - -0.051202625036239624, - 0.060480110347270966, - -0.06026186794042587, - -0.01937800645828247, - -0.00283963605761528, - -0.02168123982846737, - -0.07485203444957733, - -0.0799861028790474, - 0.06528396904468536, - -0.04957328736782074, - 0.0045782532542943954, - -0.041151441633701324, - 0.014797884039580822, - 0.02262934483587742, - 0.05956597626209259, - -0.06028364598751068, - 0.071349136531353, - 0.024354899302124977, - -0.02623426541686058, - 0.04037865996360779, - 0.026476269587874413, - 0.0479184091091156, - -0.040939413011074066, - -0.07319542020559311, - -0.08010071516036987, - 0.03327075392007828, - -0.04423072561621666, - 0.07101716846227646, - 0.023721270263195038, - -0.04136078432202339, - -0.03521153703331947, - -0.017769034951925278, - -0.03665494918823242, - 0.035116832703351974, - 0.07723022997379303, - 0.06804180145263672, - 0.03684590384364128, - -0.014876087196171284, - 0.0800434947013855, - 0.03677428141236305, - 0.033866897225379944, - -0.022375160828232765, - 0.02145783230662346, - -0.02475687302649021, - 0.035890039056539536, - 0.018056144937872887, - -0.07325161248445511, - 0.04230191931128502, - -0.009376225993037224, - 0.03160526230931282, - 0.04663422703742981, - 0.04431857913732529, - 0.04164893552660942, - -0.049721576273441315 - ] - }, - "p244_291.wav": { - "name": "p244", - "embedding": [ - 0.05653196573257446, - 0.05744553357362747, - -0.010101023130118847, - 0.03477645665407181, - 0.009010691195726395, - 0.03316812589764595, - -0.16285166144371033, - 0.08147744089365005, - -0.009365832433104515, - 0.13844230771064758, - -0.07716867327690125, - 0.07004237174987793, - -0.00985901802778244, - -0.17918479442596436, - -0.022741595283150673, - 0.06453901529312134, - -0.04945105314254761, - -0.029401374980807304, - -0.06174631416797638, - -0.00577281229197979, - 0.026523195207118988, - 0.06619623303413391, - 0.04189817234873772, - -0.02920486405491829, - 0.001042497344315052, - 0.05541340261697769, - -0.02161526493728161, - 0.044304490089416504, - -0.009373464621603489, - -0.04095196723937988, - -0.0032643554732203484, - 0.10909703373908997, - -0.009142058901488781, - -0.007068801671266556, - 0.019824158400297165, - 0.033456288278102875, - 0.01448397058993578, - -0.07869595289230347, - -0.01614023558795452, - -0.007305679377168417, - -0.04907343536615372, - 0.06283993273973465, - 0.011824797838926315, - -0.003527384717017412, - 0.06333991885185242, - -0.011748899705708027, - -0.042461931705474854, - -0.059883859008550644, - -0.12348918616771698, - 0.16513605415821075, - 0.07370646297931671, - 0.028700843453407288, - -0.0699508860707283, - -0.04859967529773712, - 0.07200693339109421, - -0.024003902450203896, - -0.08906427025794983, - -0.06390678137540817, - 0.07664825767278671, - 0.16959789395332336, - -0.01744137518107891, - -0.027310781180858612, - 0.06106606125831604, - 0.10061557590961456, - 0.04850436747074127, - 0.07381200790405273, - 0.07796597480773926, - 0.08826704323291779, - 0.009567253291606903, - -0.024113329127430916, - 0.031289830803871155, - 0.04872254282236099, - 0.04984084516763687, - -0.004073705989867449, - 0.02214059792459011, - 0.03283502534031868, - -0.054000403732061386, - -0.01370060071349144, - -0.03259289637207985, - -0.004622192122042179, - 0.01529073528945446, - -0.016702119261026382, - -0.005910279229283333, - 0.05146987736225128, - -0.04720882326364517, - 0.01871165633201599, - 0.04463500529527664, - -0.03925901651382446, - 0.06355088204145432, - 0.03098701313138008, - 0.029529860243201256, - 0.025433247908949852, - -0.043836772441864014, - -0.06708760559558868, - 0.018870966508984566, - 0.04181307926774025, - -0.040593285113573074, - 0.032822348177433014, - 0.031903281807899475, - -0.05954078957438469, - 0.11365513503551483, - -0.013360017910599709, - -0.02449231594800949, - 0.019175786525011063, - -0.08929558843374252, - 0.0828859731554985, - 0.10547081381082535, - -0.014093929901719093, - 0.023713380098342896, - -0.03266219049692154, - -0.0021490007638931274, - 0.07845509052276611, - -0.1201271265745163, - -0.06347402930259705, - 0.0733075886964798, - 0.011677144095301628, - 0.02490481361746788, - 0.11678928136825562, - 0.04689744859933853, - 0.031108636409044266, - 0.09833311289548874, - -0.08828514814376831, - -0.0675790011882782, - 0.0002295470330864191, - 0.06222303956747055, - -0.08815935254096985, - 0.044006749987602234, - 0.0561574324965477, - 0.009411957114934921, - -0.022000424563884735, - 0.06423250585794449, - -0.0007938900380395353, - 0.0011680489405989647, - -0.058905091136693954, - -0.025374790653586388, - 0.04440532624721527, - -0.05525900423526764, - -0.04058346897363663, - 0.027781018987298012, - 0.03461107611656189, - 0.025873281061649323, - -0.006481332238763571, - -0.06672745943069458, - -0.14000210165977478, - -0.003837387077510357, - 0.04243334382772446, - 0.06932566314935684, - -0.011297444812953472, - 0.0016276300884783268, - -0.0831928551197052, - -0.054975565522909164, - 0.03477539122104645, - -0.07214365154504776, - 0.07728385180234909, - -0.003395428415387869, - -0.02345716580748558, - 0.09611286967992783, - -0.055531494319438934, - 0.024228377267718315, - -0.015129270032048225, - -0.00016601057723164558, - 0.006085158325731754, - 0.01693904772400856, - -0.03595491126179695, - -0.06455264985561371, - 0.0006522396579384804, - 0.03174114599823952, - 0.00576036749407649, - 0.042818546295166016, - 0.03130481392145157, - 0.01311424095183611, - -0.010274097323417664, - -0.07109777629375458, - 0.0022865617647767067, - -0.08382311463356018, - -0.04510429874062538, - 0.02398776076734066, - -0.008675994351506233, - 0.004675428383052349, - 0.09344565868377686, - 0.034400805830955505, - 0.014322618022561073, - -0.0612013153731823, - -0.10590728372335434, - -0.09243351966142654, - 0.06331376731395721, - 0.09841512888669968, - -0.02659648284316063, - 0.027998030185699463, - 0.03496672213077545, - -0.003518480807542801, - 0.043661653995513916, - 0.0556676983833313, - 0.08575332164764404, - 0.007445987313985825, - -0.014939786866307259, - -0.07363130897283554, - 0.1023159995675087, - 0.09045994281768799, - -0.046829983592033386, - -0.05536901578307152, - 0.0099516985937953, - -0.08499684929847717, - 0.03546002507209778, - -0.011773918755352497, - 0.007577155716717243, - 0.06328392028808594, - -0.03762400150299072, - -0.12730145454406738, - -0.09601770341396332, - 0.05835698917508125, - -0.05064333230257034, - -0.025512665510177612, - -0.04877271503210068, - 0.043280553072690964, - 0.04968026280403137, - 0.04338892549276352, - -0.006041164975613356, - -0.010160963051021099, - 0.009188663214445114, - -0.06626776605844498, - -0.006650590803474188, - 0.03760852664709091, - 0.01120177935808897, - -0.12998977303504944, - 0.01460969913750887, - -0.07528911530971527, - 0.09206510335206985, - -0.05481262505054474, - 0.09221293032169342, - 0.022736545652151108, - -0.03006705641746521, - -0.09784440696239471, - 0.03020942211151123, - -0.021444763988256454, - 0.07392783463001251, - 0.017632948234677315, - 0.04561767354607582, - 0.062301427125930786, - -0.07722395658493042, - 0.06893503665924072, - 0.047920286655426025, - -0.005739230662584305, - -0.08970271050930023, - -0.060988862067461014, - -0.04112662374973297, - 0.028439588844776154, - -0.006277387961745262, - -0.057027190923690796, - 0.0037156955804675817, - 0.01790113002061844, - -0.024796364828944206, - 0.045733410865068436, - 0.10559581220149994, - 0.02144555002450943, - -0.13053618371486664 - ] - }, - "p244_017.wav": { - "name": "p244", - "embedding": [ - 0.04551132768392563, - 0.06415122002363205, - -0.017733527347445488, - 0.03264474496245384, - -0.07500273734331131, - 0.020579088479280472, - -0.1253458857536316, - 0.14299044013023376, - -0.00961694959551096, - 0.13035373389720917, - -0.07003148645162582, - 0.13815540075302124, - -0.02762509696185589, - -0.19022342562675476, - 0.004209984093904495, - 0.053910475224256516, - -0.017790915444493294, - -0.03436313569545746, - -0.021709471940994263, - -0.04708186909556389, - 0.0494837760925293, - 0.058601364493370056, - 0.04033002257347107, - -0.0033888574689626694, - 0.01651679538190365, - 0.08687520027160645, - -0.006717074662446976, - 0.03210324048995972, - -0.006902260240167379, - -0.0688478872179985, - -0.03937457501888275, - 0.08154523372650146, - -0.047710441052913666, - -0.0034445729106664658, - 0.022727204486727715, - -0.028142675757408142, - -0.01970871165394783, - -0.04205350577831268, - -0.024377483874559402, - 0.0020326629746705294, - -0.05211620032787323, - 0.06269744038581848, - 0.01649254932999611, - -0.02494468353688717, - 0.05550023913383484, - 0.01424156129360199, - -0.033675581216812134, - -0.039072006940841675, - -0.12252863496541977, - 0.15420544147491455, - 0.07669760286808014, - 0.009820655919611454, - -0.0753401592373848, - -0.05156977102160454, - 0.09463080018758774, - -0.019091788679361343, - -0.10122635215520859, - -0.03978918120265007, - 0.07927292585372925, - 0.1420087218284607, - -0.033467408269643784, - -0.04978711158037186, - 0.045224979519844055, - 0.09982176870107651, - 0.047859981656074524, - 0.07166547328233719, - 0.08884882926940918, - 0.10237070173025131, - -0.03612620383501053, - 0.01046236976981163, - 0.03317948430776596, - 0.08862706273794174, - 0.062111109495162964, - -0.003372638951987028, - 0.01489005982875824, - 0.0020809494890272617, - -0.010987769812345505, - -0.022202875465154648, - -0.03120948001742363, - -0.026399977505207062, - -0.0015130944084376097, - -8.469614840578288e-05, - 0.025568857789039612, - 0.0031969361007213593, - -0.025830646976828575, - 0.06517083197832108, - 0.061920296400785446, - -0.008120927959680557, - 0.06156442314386368, - 0.004203286953270435, - -0.0047052945010364056, - 0.07692272961139679, - -0.09793667495250702, - -0.0626755803823471, - 0.03350024297833443, - 0.007563699968159199, - 0.030076518654823303, - 0.07627351582050323, - 0.04246315360069275, - -0.021636895835399628, - 0.13168179988861084, - 0.037125565111637115, - -0.004069649614393711, - 0.0195348858833313, - -0.08348248898983002, - 0.1167168915271759, - 0.11068558692932129, - -0.030621081590652466, - 0.0626697838306427, - -0.0600992813706398, - 0.07373440265655518, - 0.044265203177928925, - -0.12565574049949646, - -0.05848854035139084, - -0.00881976168602705, - 0.0045157852582633495, - -0.023772848770022392, - 0.13803784549236298, - -0.009123890660703182, - 0.06756705045700073, - 0.13475897908210754, - -0.10733338445425034, - -0.058913104236125946, - -0.01531960442662239, - 0.04756344109773636, - -0.1066696047782898, - 0.07106006890535355, - 0.06615190207958221, - -0.01328849047422409, - 0.05136212706565857, - 0.06530500948429108, - -0.0272357240319252, - 0.010920132510364056, - 0.0036190941464155912, - -0.05993682146072388, - -0.01378500834107399, - -0.037842459976673126, - -0.0210232213139534, - 0.05585433542728424, - 0.03165086358785629, - 0.056189026683568954, - -0.012611661106348038, - -0.02951662801206112, - -0.13414493203163147, - 0.0244239941239357, - 0.024080296978354454, - 0.06328719109296799, - -0.009367435239255428, - -0.027340954169631004, - -0.03853777050971985, - -0.0716903805732727, - 0.012366360984742641, - -0.003340009367093444, - 0.052719950675964355, - -0.04044071584939957, - 0.010161965154111385, - 0.08515878766775131, - 0.05905775725841522, - -0.004965747706592083, - -0.055269382894039154, - -0.06255163997411728, - -0.005615612026304007, - 0.04623153805732727, - -0.09525196999311447, - -0.0752137154340744, - -0.03790876269340515, - 0.05037284642457962, - -0.036295101046562195, - 0.059920281171798706, - 0.052922483533620834, - 0.031520258635282516, - 0.009990028105676174, - -0.0676911398768425, - 0.022685334086418152, - -0.08050095289945602, - -0.09212951362133026, - 0.007913382723927498, - -0.008901170454919338, - -0.02691173180937767, - 0.06328042596578598, - 0.011979928240180016, - 0.05409592390060425, - -0.05048719048500061, - -0.04822889715433121, - -0.09685957431793213, - 0.034914687275886536, - 0.036640822887420654, - -0.009118038229644299, - 0.05351642891764641, - 0.0505867563188076, - -0.06257537007331848, - 0.0674782544374466, - 0.05028088018298149, - 0.11296842992305756, - -0.027889098972082138, - 0.03151630982756615, - -0.06035736948251724, - 0.08891995251178741, - 0.1049027144908905, - -0.05697165057063103, - -0.08397306501865387, - -0.05400363355875015, - -0.08573877811431885, - 0.06583724170923233, - -0.016489189118146896, - -0.011132235638797283, - 0.032532453536987305, - 0.01319345086812973, - -0.11198969930410385, - -0.07107928395271301, - 0.06660787761211395, - -0.040029145777225494, - -0.006766983773559332, - -0.09840899705886841, - 0.061110369861125946, - 0.09982843697071075, - 0.026168126612901688, - -0.02273973450064659, - -0.030583884567022324, - 0.03935161605477333, - -0.025035209953784943, - 0.02752809040248394, - 0.06146261841058731, - 0.06354182213544846, - -0.08621850609779358, - -0.02619505487382412, - -0.08017340302467346, - 0.02744808793067932, - -0.025768090039491653, - 0.13682353496551514, - 0.020675629377365112, - -0.03231636807322502, - -0.07989175617694855, - 0.05841931328177452, - 0.002659314312040806, - 0.06054389476776123, - 0.03865800052881241, - 0.054399751126766205, - 0.05783791095018387, - -0.08701840043067932, - 0.10963024944067001, - 0.04223506152629852, - -0.04994489252567291, - -0.059356510639190674, - -0.04454854130744934, - -0.043831657618284225, - 0.020010121166706085, - -0.0014113312354311347, - -0.09292681515216827, - -0.03428909555077553, - 0.021666087210178375, - 0.009830035269260406, - 0.05867670476436615, - 0.12548168003559113, - 0.03800232708454132, - -0.10345952957868576 - ] - }, - "p244_424.wav": { - "name": "p244", - "embedding": [ - 0.001892124768346548, - 0.0772138237953186, - -0.05105011910200119, - 0.08649444580078125, - -0.06884513050317764, - -0.0190134197473526, - -0.07367052882909775, - 0.017979174852371216, - 0.022998588159680367, - 0.08416342735290527, - -0.022213542833924294, - 0.07985962927341461, - -0.04986017569899559, - -0.11662525683641434, - -0.006861692760139704, - 0.010529093444347382, - 0.00916682742536068, - -0.004596509039402008, - -0.011971337720751762, - -0.03673101216554642, - -0.03320680186152458, - 0.009705863893032074, - -0.04170793294906616, - 0.005271383561193943, - -0.02524394355714321, - 0.02333664894104004, - -0.04947361722588539, - 0.011702897027134895, - -0.03431544452905655, - -0.041045695543289185, - -0.011258951388299465, - 0.030208313837647438, - -0.025297805666923523, - -0.014371076598763466, - -0.021888524293899536, - 0.0097556347027421, - 0.005079334601759911, - -0.018675310537219048, - -0.02694312483072281, - -0.025036359205842018, - -0.06483050435781479, - 0.011079924181103706, - 0.038781020790338516, - -0.05759361386299133, - 0.023310624063014984, - -0.001765955239534378, - -0.04806482791900635, - -0.017630165442824364, - -0.03928813710808754, - 0.10365454852581024, - 0.04273460432887077, - 0.06820251792669296, - -0.025177232921123505, - -0.02783232182264328, - 0.10823054611682892, - 0.03038344904780388, - -0.01864982396364212, - -0.04602112993597984, - -0.0005400218069553375, - 0.08031546324491501, - 0.02614920772612095, - 0.021776292473077774, - 0.03543626517057419, - 0.06318740546703339, - 0.01108668465167284, - 0.019740842282772064, - 0.041690222918987274, - 0.06949252635240555, - -0.017195500433444977, - 0.017991041764616966, - 0.07301604002714157, - 0.021120239049196243, - -0.006679270416498184, - 0.025009671226143837, - -0.004963694140315056, - 0.020498983561992645, - 0.013965277932584286, - 0.04474381357431412, - -0.034953176975250244, - -0.017981886863708496, - 0.00047330581583082676, - 0.013516085222363472, - 0.004257809836417437, - -0.047235190868377686, - -0.0456538125872612, - -0.03226173296570778, - 0.08474662899971008, - 0.007308783009648323, - 0.018003705888986588, - 0.02876271866261959, - 0.027806201949715614, - 0.004568150267004967, - -0.04330280050635338, - -0.02593892067670822, - 0.026001999154686928, - 0.003323769196867943, - 0.045396678149700165, - -0.0034433137625455856, - -0.001234445720911026, - -0.005669116508215666, - 0.046726785600185394, - -0.028828799724578857, - 0.037842635065317154, - -0.00912972167134285, - -0.04166071116924286, - -0.0012883618474006653, - 0.04236513748764992, - 0.0365850105881691, - 0.04079907387495041, - 0.02312416583299637, - 0.045103807002305984, - 0.07970334589481354, - -0.03381809592247009, - -0.027355695143342018, - 0.01703854650259018, - 0.03694966062903404, - -0.04440494626760483, - 0.08193200826644897, - 0.004134703427553177, - 0.03884819522500038, - 0.07160670310258865, - 0.00787758082151413, - -0.02921435236930847, - -0.018526839092373848, - -0.0002670101821422577, - -0.020455019548535347, - 0.03478541970252991, - 0.044058382511138916, - -0.02747879922389984, - -0.03507460653781891, - 0.042751893401145935, - -0.014009594917297363, - -0.019881609827280045, - 0.005095541477203369, - 0.012303829193115234, - -0.025181781500577927, - 0.07532091438770294, - -0.06336486339569092, - 0.043386999517679214, - 0.055714838206768036, - -0.01950147934257984, - -0.022999467328190804, - 0.012332761660218239, - -0.059406716376543045, - 0.03855019807815552, - 0.008160186000168324, - -0.0043372660875320435, - 0.07506471872329712, - -0.028780676424503326, - -0.09152845293283463, - -0.05286616086959839, - 0.046648021787405014, - -0.03389543294906616, - 0.08285452425479889, - 0.06334945559501648, - 0.006106425076723099, - 0.040543332695961, - -0.015038829296827316, - -0.004678965546190739, - 0.012173406779766083, - -0.10825236886739731, - 0.01270017959177494, - 0.003984680399298668, - -0.005302663892507553, - -0.011670955456793308, - 0.008671769872307777, - 0.010861430317163467, - -0.021331295371055603, - 0.0015154052525758743, - 0.03517214208841324, - 0.007879979908466339, - 0.03798873722553253, - -0.11924606561660767, - 0.006683839485049248, - -0.01857401430606842, - -0.027625910937786102, - 0.03697021305561066, - -0.04582538083195686, - -0.004122628830373287, - 0.029169471934437752, - 0.026857441291213036, - -0.036605942994356155, - -0.05907382816076279, - -0.05671650916337967, - 0.00041788816452026367, - 0.017625387758016586, - -0.005624011158943176, - -0.0006361128762364388, - -0.009943610057234764, - 0.00891917385160923, - 0.045022912323474884, - 0.007917322218418121, - 0.010795578360557556, - 0.06558217108249664, - -0.03762105107307434, - 0.003218233585357666, - 0.027659520506858826, - 0.1093207448720932, - 0.030215095728635788, - -0.0753413587808609, - -0.06082756817340851, - -0.009038607589900494, - -0.04680025205016136, - 0.03892268240451813, - -0.031270358711481094, - 0.028085455298423767, - 0.008766830898821354, - 0.013674145564436913, - 0.02871040254831314, - -0.1364755779504776, - 0.028236977756023407, - -0.012823724187910557, - -0.04241030663251877, - -0.002849690616130829, - -0.006056215614080429, - 0.030734006315469742, - 0.024353256449103355, - -0.04100526124238968, - -0.031241128221154213, - 0.025435829535126686, - 0.012575473636388779, - 0.034635163843631744, - 0.06672202050685883, - 0.034462615847587585, - -0.009500522166490555, - -0.01987200789153576, - -0.03887777402997017, - 0.023832570761442184, - 0.011506957933306694, - 0.03953535854816437, - 0.021431051194667816, - 0.003945156931877136, - -0.07682430744171143, - 0.06606461107730865, - -0.011586638167500496, - 0.06724752485752106, - -0.009915713220834732, - 0.010711012408137321, - 0.02962656319141388, - -0.021923230960965157, - 0.11724457144737244, - 0.049839720129966736, - -0.02063119038939476, - -0.02429637312889099, - 0.005326147191226482, - -0.031162194907665253, - 0.06698041409254074, - 0.05022807419300079, - -0.04585089161992073, - -0.0038546943105757236, - 0.06947977840900421, - 0.03226684778928757, - 0.08526334166526794, - 0.05644106864929199, - 0.08154194802045822, - 0.06088612973690033 - ] - }, - "p244_132.wav": { - "name": "p244", - "embedding": [ - 0.03260638937354088, - 0.09399698674678802, - -0.035386864095926285, - 0.05806262791156769, - -0.08149316161870956, - 0.043726928532123566, - -0.0940699651837349, - 0.134440615773201, - -0.05114878714084625, - 0.10476505756378174, - -0.08709513396024704, - 0.1573345810174942, - -0.051515739411115646, - -0.16643977165222168, - -0.04075360298156738, - 0.07093706727027893, - -0.01389460451900959, - -0.041025321930646896, - -0.0026325047947466373, - -0.025880133733153343, - 0.030740557238459587, - 0.03304968401789665, - 0.053043920546770096, - 0.04788118973374367, - 0.026182854548096657, - 0.09770189970731735, - -0.002955665113404393, - 0.04950987920165062, - 0.02381107024848461, - -0.04350738972425461, - -0.07612182945013046, - 0.08906009048223495, - -0.06307755410671234, - -0.013278120197355747, - 0.03531384468078613, - -0.007287627086043358, - 0.011101476848125458, - -0.03917499631643295, - -0.017185188829898834, - -0.011529114097356796, - -0.06620696932077408, - 0.06883741170167923, - -0.006378654856234789, - -0.03500991314649582, - 0.04777050018310547, - 0.007460827007889748, - -0.012459388934075832, - -0.013197670690715313, - -0.12156148999929428, - 0.12092535197734833, - 0.060598257929086685, - 0.0007129204459488392, - -0.0844765305519104, - -0.051393844187259674, - 0.11440671235322952, - -0.026712127029895782, - -0.09053613990545273, - -0.03214731067419052, - 0.06702802330255508, - 0.14992451667785645, - -0.019853565841913223, - -0.032586097717285156, - 0.02203180082142353, - 0.09293755143880844, - 0.08520234376192093, - 0.07199826836585999, - 0.07808248698711395, - 0.09867506474256516, - -0.032448358833789825, - 0.008202950470149517, - 0.06359554827213287, - 0.08268047869205475, - 0.061312563717365265, - -0.0198469590395689, - 0.004455184563994408, - 0.008482166565954685, - -0.018621699884533882, - 0.01714889518916607, - -0.0220473725348711, - -0.030542364344000816, - -0.03594156354665756, - -0.008346921764314175, - -0.011205275543034077, - -0.0067113363184034824, - -0.030816983431577682, - 0.08600862324237823, - 0.05690658092498779, - -0.018294651061296463, - 0.07089287787675858, - 0.0367298386991024, - -0.04338241368532181, - 0.07423049956560135, - -0.09959115087985992, - -0.05026960000395775, - 0.02022615820169449, - -0.005251947324723005, - 0.020974071696400642, - 0.08046488463878632, - 0.051035162061452866, - -0.00633549178019166, - 0.12704136967658997, - 0.06459269672632217, - 0.02370535209774971, - 0.03212760388851166, - -0.07726636528968811, - 0.1268271803855896, - 0.10775546729564667, - -0.03617163002490997, - 0.051975004374980927, - 5.0303096941206604e-05, - 0.058961864560842514, - 0.0694785863161087, - -0.11963710188865662, - -0.064275823533535, - 0.003734781639650464, - -0.0014558644033968449, - -0.00025247837766073644, - 0.0831163078546524, - -0.026175325736403465, - 0.04558470845222473, - 0.10177630931138992, - -0.08110617101192474, - -0.06506282836198807, - -0.028316976502537727, - 0.03614886477589607, - -0.07896237820386887, - 0.07235944271087646, - 0.058452311903238297, - 0.019652705639600754, - 0.005900269839912653, - 0.08191858232021332, - -0.016376137733459473, - -0.02049291506409645, - 0.04943307489156723, - -0.0644930750131607, - -0.012972029857337475, - -0.010747896507382393, - -0.014048404060304165, - 0.08476679027080536, - 0.027141321450471878, - 0.06009293720126152, - -0.004161167424172163, - 0.023482363671064377, - -0.12726831436157227, - 0.009498685598373413, - 0.06570904701948166, - 0.06216664984822273, - -0.006843872833997011, - -0.04708636552095413, - -0.05319267511367798, - -0.061546746641397476, - 0.02431337721645832, - 0.024048957973718643, - 0.0908319428563118, - -0.05391200631856918, - 0.013125956989824772, - 0.0983332172036171, - 0.028251992538571358, - -0.010638647712767124, - -0.057336390018463135, - -0.03091302141547203, - -0.004886920098215342, - 0.0541202686727047, - -0.06740494817495346, - -0.1109127402305603, - -0.02370842732489109, - 0.0466248020529747, - -0.015590556897222996, - 0.08520086854696274, - 0.06365678459405899, - 0.0039962646551430225, - 0.013784377835690975, - -0.05601000040769577, - 0.02084384858608246, - -0.08098699897527695, - -0.053172845393419266, - -0.03875025734305382, - -0.028264416381716728, - -0.030976612120866776, - 0.06523030251264572, - 0.044615738093853, - 0.06615976244211197, - -0.0029882071539759636, - -0.06888537108898163, - -0.09621395915746689, - 0.04152441769838333, - 0.04183657839894295, - 0.019423827528953552, - 0.06345868110656738, - 0.07092377543449402, - -0.042487408965826035, - 0.08566654473543167, - 0.07208713889122009, - 0.08675440400838852, - -0.0327550545334816, - 0.01740824058651924, - -0.050104349851608276, - 0.05790972709655762, - 0.09300605207681656, - -0.10995476692914963, - -0.09736377000808716, - -0.056880753487348557, - -0.06394055485725403, - 0.07422906160354614, - -0.029384411871433258, - 0.017187846824526787, - 0.04619833454489708, - -0.013021755963563919, - -0.09317721426486969, - -0.12109997868537903, - 0.10906024277210236, - -0.04892798140645027, - -0.005154452286660671, - -0.07026378810405731, - 0.030873756855726242, - 0.06785143911838531, - -0.0014085366856306791, - -0.02773134969174862, - 0.014761348254978657, - 0.046958766877651215, - -0.013604813255369663, - -0.0045954086817801, - 0.08245713263750076, - 0.03253864496946335, - -0.09620503336191177, - -0.015460392460227013, - -0.07779322564601898, - 0.09320205450057983, - -0.028716111555695534, - 0.1694604903459549, - -0.00520617701113224, - -0.025842033326625824, - -0.08260329067707062, - 0.06074840575456619, - -0.013271425850689411, - 0.053757015615701675, - 0.05105070397257805, - 0.06906425207853317, - 0.0011770090786740184, - -0.06531141698360443, - 0.1297733187675476, - 0.05122879892587662, - -0.07624483853578568, - -0.07589210569858551, - -0.05109146237373352, - -0.05203467234969139, - 0.02747061476111412, - 0.03636185824871063, - -0.0942639708518982, - -0.01957610249519348, - 0.0039090346544981, - -0.004059700295329094, - 0.06686082482337952, - 0.1402718722820282, - 0.0708284005522728, - -0.08142716437578201 - ] - }, - "p244_101.wav": { - "name": "p244", - "embedding": [ - 0.04393080621957779, - 0.07435603439807892, - -0.05854286253452301, - 0.032097429037094116, - -0.057750627398490906, - 0.05548716336488724, - -0.12118790298700333, - 0.12042001634836197, - -0.0008363872766494751, - 0.14400643110275269, - -0.023708384484052658, - 0.12623317539691925, - 0.0017389392014592886, - -0.14117203652858734, - -0.005656491965055466, - 0.025246016681194305, - -0.03841045871376991, - -0.03833971917629242, - -0.05910252407193184, - -0.0404319241642952, - 0.03692815825343132, - 0.05090132728219032, - 0.029159987345337868, - -0.03643464669585228, - 0.022817090153694153, - 0.07085692882537842, - -0.0162968747317791, - 0.025756381452083588, - 0.009590355679392815, - -0.12203177809715271, - -0.03894274681806564, - 0.06515449285507202, - -0.0720425397157669, - 0.024638934060931206, - 0.019399764016270638, - -0.048048362135887146, - 0.002327980473637581, - -0.048224203288555145, - -0.020821284502744675, - 0.0350300669670105, - -0.03278016671538353, - 0.09893735498189926, - 0.014127345755696297, - -0.012538513168692589, - 0.023425765335559845, - 0.005040713120251894, - -0.013049292378127575, - -0.03376048803329468, - -0.09110219776630402, - 0.1761135756969452, - 0.07616430521011353, - -0.027057670056819916, - -0.06762366741895676, - -0.04664966091513634, - 0.06678256392478943, - -0.014770272187888622, - -0.11345554888248444, - -0.04930358752608299, - 0.04347904771566391, - 0.10480742156505585, - -0.030313408002257347, - -0.04478244483470917, - 0.037645209580659866, - 0.11807277798652649, - 0.103485606610775, - 0.040309756994247437, - 0.09568393230438232, - 0.1371174156665802, - -0.03508085012435913, - 0.013373331166803837, - 0.022291868925094604, - 0.09891407191753387, - 0.07263055443763733, - 0.028245192021131516, - 0.023090720176696777, - -0.01891189068555832, - 0.007848791778087616, - -0.06283363699913025, - -0.037548258900642395, - -0.019962536171078682, - 0.026574475690722466, - 0.006854726932942867, - 0.029698016121983528, - 0.06273766607046127, - -0.025400731712579727, - 0.04461083933711052, - 0.0685114860534668, - -0.04776136204600334, - 0.044669076800346375, - 0.021701261401176453, - 0.03225504606962204, - 0.06272798776626587, - -0.12017607688903809, - -0.06843782216310501, - 0.048636823892593384, - 0.017193008214235306, - 0.020065564662218094, - 0.056193627417087555, - 0.049998946487903595, - -0.00976267084479332, - 0.1330414116382599, - 0.01617378182709217, - -0.04352360963821411, - -0.0023975172080099583, - -0.06166123226284981, - 0.14340612292289734, - 0.09357452392578125, - -0.0378553681075573, - 0.036752935498952866, - -0.06734546273946762, - 0.07444983720779419, - 0.019914958626031876, - -0.12749674916267395, - -0.08508291840553284, - 0.023080896586179733, - -0.008569952100515366, - -0.029328078031539917, - 0.1212901622056961, - 0.011001866310834885, - 0.07051713764667511, - 0.10095645487308502, - -0.07959383726119995, - -0.02739454060792923, - -0.015415861271321774, - 0.051321402192115784, - -0.09417974948883057, - 0.05687381699681282, - 0.03739936649799347, - -0.0036201062612235546, - 0.027840476483106613, - 0.09118669480085373, - -0.0037724217399954796, - 0.0061034816317260265, - 0.00661796610802412, - -0.027808792889118195, - 0.017984122037887573, - -0.00478682154789567, - -0.008896744810044765, - 0.02155323326587677, - 0.020121334120631218, - 0.08162852376699448, - -0.050899870693683624, - -0.022332090884447098, - -0.12257926166057587, - 0.041842021048069, - -0.0020697112195193768, - 0.06557897478342056, - -0.024463139474391937, - -0.0031010392121970654, - -0.03318736329674721, - -0.0735674500465393, - 0.008096644654870033, - -0.016462737694382668, - 0.05191255733370781, - -0.019359173253178596, - 0.0039686416275799274, - 0.11881740391254425, - 0.040744598954916, - 0.01764502003788948, - -0.027964893728494644, - -0.028498679399490356, - -0.003936432767659426, - 0.05654461681842804, - -0.0764678567647934, - -0.07045317441225052, - -0.01335081271827221, - 0.013610102236270905, - -0.013680093921720982, - 0.08456757664680481, - 0.05939373001456261, - 0.030316825956106186, - 0.020607996731996536, - -0.052867621183395386, - -0.025318045169115067, - -0.04939018189907074, - -0.05645453929901123, - -0.013354497030377388, - -0.018715478479862213, - -0.0613485649228096, - 0.08285346627235413, - 0.022038612514734268, - 0.07016417384147644, - -0.06262849271297455, - -0.04494304955005646, - -0.08057421445846558, - 0.03565920889377594, - 0.0308663509786129, - -0.038832079619169235, - 0.009409904479980469, - 0.06978203356266022, - -0.007524227257817984, - 0.015855573117733, - 0.06958257406949997, - 0.07760700583457947, - -0.03471839800477028, - 0.018965618684887886, - -0.06736879795789719, - 0.13152381777763367, - 0.08391255140304565, - -0.053618501871824265, - -0.06412506103515625, - -0.025526680052280426, - -0.09217415004968643, - 0.0057884398847818375, - -0.0467953160405159, - -0.007205738686025143, - 0.051461488008499146, - 0.006017627194523811, - -0.10712246596813202, - -0.08681885898113251, - 0.0851973295211792, - -0.08631724119186401, - -0.004221698734909296, - -0.10155054181814194, - 0.03763340413570404, - 0.09219184517860413, - 0.05993299186229706, - -0.042895130813121796, - -0.021885735914111137, - 0.06038403883576393, - 9.364041034132242e-06, - 0.06076393648982048, - 0.08356288820505142, - 0.06483960151672363, - -0.11414799839258194, - -0.02804030105471611, - -0.03811675310134888, - 0.00848240964114666, - -0.028482656925916672, - 0.10550107061862946, - 0.04504585638642311, - -0.035646818578243256, - -0.08085301518440247, - 0.06802998483181, - -0.025425676256418228, - 0.07374214380979538, - 0.019013788551092148, - 0.055566709488630295, - 0.08171863853931427, - -0.07945773005485535, - 0.1155330240726471, - 0.0620589442551136, - -0.04441720247268677, - -0.08999545872211456, - -0.0701604038476944, - -0.014728373847901821, - 0.06278650462627411, - 0.05661192163825035, - -0.08293735980987549, - -0.01895913854241371, - 0.02844253182411194, - -0.009349027648568153, - 0.06700235605239868, - 0.12397964298725128, - 0.08363264799118042, - -0.10710255801677704 - ] - }, - "p244_058.wav": { - "name": "p244", - "embedding": [ - 0.040095459669828415, - 0.08464542031288147, - -0.04939677566289902, - 0.014512901194393635, - -0.07138354331254959, - 0.04491971433162689, - -0.10891199856996536, - 0.1074625551700592, - -0.018529588356614113, - 0.14358967542648315, - -0.04172215983271599, - 0.10718019306659698, - -0.029614493250846863, - -0.1654200255870819, - -0.02470208704471588, - 0.033946696668863297, - -0.061574261635541916, - -0.039167966693639755, - -0.1046236976981163, - -0.057243213057518005, - 0.028788022696971893, - 0.041503019630908966, - 0.023259451612830162, - -0.05123131722211838, - 0.04018116742372513, - 0.07723955810070038, - -0.0037555000744760036, - 0.02745998650789261, - -0.009026124142110348, - -0.08279910683631897, - -0.02577996999025345, - 0.0779109001159668, - -0.07188583165407181, - 0.013400848954916, - 0.02771996334195137, - -0.021952811628580093, - 0.002271291334182024, - -0.02076265588402748, - 0.0015286747366189957, - 0.04080076515674591, - -0.02674764022231102, - 0.09794457256793976, - 0.026061145588755608, - -0.005648459307849407, - 0.024599438533186913, - 0.03318100795149803, - -0.012113397940993309, - -0.05698513612151146, - -0.06834378093481064, - 0.18212305009365082, - 0.06183427572250366, - -0.01667407713830471, - -0.06017722934484482, - -0.0626637190580368, - 0.0802101194858551, - -0.036388546228408813, - -0.12866735458374023, - -0.06929294764995575, - 0.06191838160157204, - 0.11942581832408905, - -0.04503461718559265, - -0.041215017437934875, - 0.01962238922715187, - 0.09320805966854095, - 0.07015824317932129, - 0.05225303769111633, - 0.08624694496393204, - 0.11506983637809753, - -0.020544448867440224, - 0.00987608078867197, - 0.06508006155490875, - 0.0620880052447319, - 0.07603543996810913, - 0.007600646466016769, - 0.034637436270713806, - -0.030395209789276123, - 0.013141512870788574, - -0.046201255172491074, - -0.03336643800139427, - -0.017351767048239708, - 0.0030971807427704334, - 0.01595836877822876, - 0.01205148734152317, - 0.013282045722007751, - -0.017725473269820213, - 0.04133062809705734, - 0.06863003224134445, - -0.03953195735812187, - 0.06554718315601349, - 0.048890337347984314, - 0.024386338889598846, - 0.06082901358604431, - -0.10012871026992798, - -0.047424085438251495, - 0.029217731207609177, - 0.008305085822939873, - 0.021794088184833527, - 0.025527501478791237, - 0.03165813535451889, - -0.013124652206897736, - 0.1059289425611496, - 0.041483789682388306, - -0.03520410507917404, - 0.008428756147623062, - -0.07794594019651413, - 0.15078213810920715, - 0.08974793553352356, - -0.024279996752738953, - 0.027033494785428047, - -0.03267820179462433, - 0.04069007560610771, - 0.03302048146724701, - -0.09919734299182892, - -0.10005587339401245, - 0.004104494582861662, - -0.013532605953514576, - -0.043864574283361435, - 0.09833259880542755, - 0.0065202871337533, - 0.03401154652237892, - 0.12143230438232422, - -0.08350333571434021, - -0.03641325235366821, - 0.0043602604418993, - 0.036070115864276886, - -0.09031931310892105, - 0.029859870672225952, - 0.0739813968539238, - -0.008123692125082016, - 0.0523805245757103, - 0.1155560165643692, - 0.007525917142629623, - 0.018350474536418915, - -0.010702775791287422, - -0.01918228156864643, - 0.022715440019965172, - 0.004538293462246656, - -0.02426518127322197, - 0.06786809116601944, - 0.042829547077417374, - 0.07436146587133408, - -0.02296571619808674, - -0.038298338651657104, - -0.11370620876550674, - 0.04181668907403946, - 0.018801283091306686, - 0.051418814808130264, - -0.03838001936674118, - 0.029144568368792534, - -0.033389121294021606, - -0.07871393859386444, - 0.03047719970345497, - -5.7707540690898895e-05, - 0.07840865850448608, - -0.028981033712625504, - -0.02751855179667473, - 0.16068927943706512, - 0.02838863432407379, - -0.00025691185146570206, - -0.04189702868461609, - -0.016339469701051712, - 0.005008699372410774, - 0.05224251747131348, - -0.08856847137212753, - -0.05894537270069122, - -0.01632559485733509, - 0.04332207143306732, - 0.006242827512323856, - 0.09948636591434479, - 0.08242589235305786, - -0.0016651973128318787, - 0.010041027329862118, - -0.035589877516031265, - 0.0014838525094091892, - -0.03982983157038689, - -0.04284268990159035, - 0.0014124466106295586, - -0.06503404676914215, - -0.05635921657085419, - 0.08021029084920883, - -0.0012482330203056335, - 0.0435648038983345, - -0.05897326022386551, - -0.0940689966082573, - -0.07942241430282593, - 0.04363465681672096, - 0.04206574335694313, - -0.043560825288295746, - 0.022975264117121696, - 0.06940773874521255, - -0.025889672338962555, - 0.037286754697561264, - 0.07076471298933029, - 0.11400671303272247, - -0.05141589790582657, - 0.020602580159902573, - -0.0713539570569992, - 0.09544692933559418, - 0.04542768746614456, - -0.06997442990541458, - -0.04869373142719269, - -0.04131823778152466, - -0.050733186304569244, - 0.016862383112311363, - -0.027418747544288635, - 0.02805482968688011, - 0.057703107595443726, - 0.018549412488937378, - -0.07145245373249054, - -0.10544666647911072, - 0.0726003348827362, - -0.07308027148246765, - 0.007214994169771671, - -0.07264198362827301, - 0.02439333312213421, - 0.06990259885787964, - 0.07494648545980453, - -0.017653556540608406, - 0.008677108213305473, - 0.028631966561079025, - -0.014501434750854969, - 0.033806782215833664, - 0.06531447917222977, - 0.04266134649515152, - -0.06118036061525345, - -0.030454672873020172, - -0.09307092428207397, - 0.03885189816355705, - -0.021546320989727974, - 0.13097772002220154, - 0.020692095160484314, - -0.03433218225836754, - -0.0835191160440445, - 0.04706661030650139, - -0.06663493812084198, - 0.08518781512975693, - 0.05078582465648651, - 0.06582995504140854, - 0.06733830273151398, - -0.04006108641624451, - 0.11541539430618286, - 0.05684829503297806, - -0.03704323619604111, - -0.07099970430135727, - -0.07046829909086227, - -0.04796279966831207, - 0.032388441264629364, - 0.031165868043899536, - -0.0913955569267273, - 0.01884661801159382, - 0.030615055933594704, - -0.02289772219955921, - 0.05372690409421921, - 0.1057821586728096, - 0.08194398880004883, - -0.0843496173620224 - ] - }, - "p244_024.wav": { - "name": "p244", - "embedding": [ - 0.04860005900263786, - 0.13365040719509125, - 0.005188239272683859, - -0.007631541229784489, - -0.06357205659151077, - 0.055444296449422836, - -0.11113158613443375, - 0.14507606625556946, - -0.06605346500873566, - 0.12376834452152252, - -0.09833568334579468, - 0.12805351614952087, - -0.046480391174554825, - -0.13841275870800018, - -0.06650926917791367, - 0.044916536659002304, - -0.04643157869577408, - -0.015450340695679188, - -0.03431691601872444, - -0.03474448248744011, - 0.032083820551633835, - 0.023633794859051704, - 0.04697386175394058, - 0.023828618228435516, - 0.03568379953503609, - 0.0631122812628746, - 0.026003241539001465, - 0.06289685517549515, - 0.04021076858043671, - -0.04751605540513992, - -0.03811714053153992, - 0.09202314168214798, - -0.034220077097415924, - 0.02479376830160618, - 0.05797666311264038, - -0.004366706591099501, - 0.027224576100707054, - -0.06366776674985886, - -0.02344970405101776, - 0.0027259918861091137, - -0.015660934150218964, - 0.07009530067443848, - 0.019623158499598503, - -0.021674981340765953, - 0.025135308504104614, - 0.041232265532016754, - 0.0028540731873363256, - -0.04730714112520218, - -0.10117337852716446, - 0.1489221751689911, - 0.04751132056117058, - -0.007243161555379629, - -0.07903963327407837, - -0.07444322109222412, - 0.1213841661810875, - -0.05554497241973877, - -0.09977951645851135, - -0.024243319407105446, - 0.06540544331073761, - 0.14674149453639984, - -0.03724440559744835, - -0.04374585300683975, - 0.01693914085626602, - 0.11825428158044815, - 0.03569081053137779, - 0.0753612145781517, - 0.08030637353658676, - 0.08412176370620728, - -0.0316772535443306, - 0.027474910020828247, - 0.04578263685107231, - 0.07438791543245316, - 0.018667394295334816, - -0.01057466585189104, - 0.015312567353248596, - -0.004980470519512892, - -0.017349613830447197, - 0.039941322058439255, - -0.030104318633675575, - -0.02378353476524353, - -0.05073578283190727, - 0.020296549424529076, - -0.021932750940322876, - -0.01929684914648533, - -0.02258743718266487, - 0.08814115822315216, - -0.012019251473248005, - -0.003507012501358986, - 0.07939010858535767, - 0.047040652483701706, - -0.003144817193970084, - 0.05297129973769188, - -0.05507722496986389, - -0.0809173434972763, - 0.00025035813450813293, - -0.011652662418782711, - 0.021493054926395416, - 0.07551927119493484, - 0.03094794787466526, - -0.014037019573152065, - 0.11400190740823746, - 0.07999470084905624, - 0.005635857582092285, - 0.015396341681480408, - -0.10169004648923874, - 0.12436876446008682, - 0.08504507690668106, - -0.026727071031928062, - 0.03709007427096367, - -0.027228647843003273, - 0.06766551733016968, - 0.06970846652984619, - -0.12298206239938736, - -0.0971146747469902, - 0.004526240285485983, - 0.02746000699698925, - 0.0027486197650432587, - 0.062490131705999374, - -0.03380702808499336, - 0.019239531829953194, - 0.09373849630355835, - -0.05814457684755325, - -0.05950869992375374, - -0.02160336822271347, - 0.03824774548411369, - -0.05608155205845833, - 0.04353508725762367, - 0.06766485422849655, - -0.003041743068024516, - 0.004225033801048994, - 0.08421509712934494, - 0.00017703957564663142, - -0.0010390699608251452, - 0.04705546796321869, - -0.06358326226472855, - 0.00034183525713160634, - -0.015891849994659424, - -0.002021754626184702, - 0.05134209617972374, - 0.08724097162485123, - 0.04011628031730652, - 0.019229834899306297, - -0.03025737963616848, - -0.08454438298940659, - 0.005993340630084276, - 0.04916848614811897, - 0.05402490124106407, - 0.00048129374044947326, - -0.03917890414595604, - -0.03408196195960045, - -0.03487294539809227, - -0.008320807479321957, - 0.021197954192757607, - 0.08605959266424179, - -0.04811973497271538, - 0.016008159145712852, - 0.10645530372858047, - 0.025218332186341286, - -0.017298437654972076, - -0.06314175575971603, - -0.008154580369591713, - 0.015691498294472694, - 0.03530903533101082, - -0.04360399395227432, - -0.09208467602729797, - 0.010146601125597954, - 0.03526558727025986, - -0.020250951871275902, - 0.06626804172992706, - 0.03982805833220482, - -0.006070274394005537, - 0.04938044771552086, - -0.05812805891036987, - 0.029701484367251396, - -0.10431033372879028, - -0.048345278948545456, - -0.016431819647550583, - -0.014630720019340515, - -0.02587161399424076, - 0.05953620746731758, - 0.030425986275076866, - 0.059347450733184814, - 0.03141079470515251, - -0.0968332439661026, - -0.07510203123092651, - 0.05774034187197685, - 0.07826472818851471, - 0.018633490428328514, - 0.05628128722310066, - 0.06899655610322952, - -0.02497268281877041, - 0.08149556070566177, - 0.07042711228132248, - 0.06955641508102417, - -0.028492186218500137, - 0.0019789652433246374, - -0.060929059982299805, - 0.03403991833329201, - 0.04915456846356392, - -0.13164399564266205, - -0.08483780920505524, - -0.05679689720273018, - -0.040560707449913025, - 0.03440957888960838, - 0.008089478127658367, - 0.02630826272070408, - 0.02569650113582611, - -0.010009543038904667, - -0.08766819536685944, - -0.08839675784111023, - 0.08809170871973038, - -0.062497496604919434, - 0.006235625594854355, - -0.038621556013822556, - 0.032127439975738525, - 0.09276729077100754, - 0.026825709268450737, - 0.0031276263762265444, - -0.006966277491301298, - 0.032421525567770004, - -0.05033433437347412, - -0.026408985257148743, - 0.02409588173031807, - 0.017501119524240494, - -0.06563516706228256, - 0.04499836638569832, - -0.08486517518758774, - 0.07676851749420166, - -0.037436340004205704, - 0.17410025000572205, - -0.008606033399701118, - -0.06391268223524094, - -0.09141229093074799, - 0.018358217552304268, - -0.0684792771935463, - 0.04056498035788536, - 0.03488364443182945, - 0.04328327998518944, - 0.0009061801247298717, - -0.0624275878071785, - 0.12078380584716797, - 0.037144459784030914, - -0.07165496051311493, - -0.07345613092184067, - -0.053707756102085114, - -0.04189889505505562, - 0.007667348720133305, - 0.01936129480600357, - -0.06773543357849121, - -0.029206300154328346, - -0.006783606018871069, - -0.030652347952127457, - 0.10359456390142441, - 0.13664346933364868, - 0.07869520038366318, - -0.10931243747472763 - ] - }, - "p244_365.wav": { - "name": "p244", - "embedding": [ - 0.04112584516406059, - 0.08726230263710022, - 0.00127321295440197, - 0.010671555995941162, - 0.0015711896121501923, - 0.0467485636472702, - -0.12623216211795807, - 0.10142230242490768, - -0.04352802783250809, - 0.13175086677074432, - -0.10391835868358612, - 0.076558917760849, - -0.04221866652369499, - -0.15657715499401093, - -0.05823620781302452, - 0.05103347450494766, - -0.062332674860954285, - -0.04096382483839989, - -0.01970863528549671, - -0.0045085689052939415, - 0.039077937602996826, - 0.03307407349348068, - 0.016010694205760956, - 0.011748049408197403, - 0.0069719599559903145, - 0.050648033618927, - 0.012161587364971638, - 0.04174281284213066, - 0.034639906138181686, - -0.005568390712141991, - 0.0030991919338703156, - 0.09042387455701828, - -0.021874770522117615, - -0.003955637104809284, - 0.039373524487018585, - 0.02128692716360092, - 0.010052254423499107, - -0.06381519883871078, - -0.004180500283837318, - 0.011333816684782505, - -0.0465678907930851, - 0.054415784776210785, - 0.026203203946352005, - -0.0018796678632497787, - 0.024655090644955635, - 0.01858300156891346, - -0.023569587618112564, - -0.04451902583241463, - -0.10099248588085175, - 0.15526244044303894, - 0.08120197057723999, - 0.028176836669445038, - -0.06371336430311203, - -0.04195840656757355, - 0.10417163372039795, - 0.01197050604969263, - -0.08476345986127853, - -0.04097287356853485, - 0.06222613528370857, - 0.16537320613861084, - -0.02098729833960533, - -0.032440803945064545, - 0.025616241618990898, - 0.11778637766838074, - 0.025889577344059944, - 0.07177326828241348, - 0.09140962362289429, - 0.08379519730806351, - 0.011768057942390442, - 0.01607573963701725, - 0.06931505352258682, - 0.04476068168878555, - 0.03727860748767853, - -0.03985612094402313, - 0.016967138275504112, - 0.0008534220978617668, - -0.030293578281998634, - 0.018324896693229675, - -0.023679357022047043, - -0.046116020530462265, - -0.009451212361454964, - 0.005411647260189056, - -0.012021057307720184, - 0.030059784650802612, - -0.014583633281290531, - 0.037205930799245834, - 0.009698644280433655, - -0.01826796494424343, - 0.07759881764650345, - 0.0224064439535141, - 0.002851322293281555, - 0.02503081224858761, - -0.05489741638302803, - -0.08285070955753326, - 0.014180326834321022, - 0.008382025174796581, - -0.002772320993244648, - 0.061474066227674484, - 0.05221863090991974, - -0.01393075566738844, - 0.10943654924631119, - 0.02581770345568657, - -0.00017723068594932556, - 0.007316095754504204, - -0.10933838039636612, - 0.10973824560642242, - 0.0835016518831253, - -0.03164515644311905, - 0.020785687491297722, - -0.02924453467130661, - 0.04409591853618622, - 0.0824899896979332, - -0.13250473141670227, - -0.05412771552801132, - 0.04982062429189682, - 0.031956009566783905, - 6.668455898761749e-05, - 0.09407924860715866, - -0.00658376095816493, - 0.0060056885704398155, - 0.10368411988019943, - -0.07001943141222, - -0.06153719499707222, - -0.04400152340531349, - 0.04230962693691254, - -0.05268959701061249, - 0.050423964858055115, - 0.04410075768828392, - 0.0024622040800750256, - -0.025723040103912354, - 0.06466230750083923, - -0.005422959104180336, - -0.009957254864275455, - -0.027571795508265495, - -0.012881789356470108, - 0.06236990541219711, - -0.0556793287396431, - -0.0014831596054136753, - 0.012708916328847408, - 0.04171910881996155, - 0.03606502339243889, - 0.030228327959775925, - -0.03435101360082626, - -0.07704522460699081, - 0.005444097798317671, - 0.039757706224918365, - 0.06681306660175323, - -0.006908778101205826, - -0.043528519570827484, - -0.04595840349793434, - -0.012746384367346764, - -0.0036422049161046743, - -0.02871209941804409, - 0.08052375167608261, - 0.015930969268083572, - 0.010621496476233006, - 0.09187150746583939, - -0.027965731918811798, - -6.091967225074768e-05, - -0.040724802762269974, - -0.017955511808395386, - 0.031000010669231415, - 0.022714396938681602, - -0.06409069150686264, - -0.07308612763881683, - 0.016763221472501755, - 0.010439878329634666, - -0.009144148789346218, - 0.022250358015298843, - 0.018423013389110565, - 0.007613107096403837, - 0.0018019573763012886, - -0.062012240290641785, - 0.01793850213289261, - -0.09877065569162369, - -0.051235560327768326, - -0.0012287469580769539, - -0.024206828325986862, - -0.003313561202958226, - 0.07147953659296036, - 0.008255045861005783, - 0.025920119136571884, - -0.009584838524460793, - -0.09076570719480515, - -0.060340553522109985, - 0.08660906553268433, - 0.08346366137266159, - 0.004642804153263569, - 0.03309104964137077, - 0.050737038254737854, - -0.005033697001636028, - 0.03554762527346611, - 0.030979547649621964, - 0.09034738689661026, - -0.031212197616696358, - -0.03361131250858307, - -0.043710581958293915, - 0.05813612416386604, - 0.06395599246025085, - -0.09340469539165497, - -0.060637347400188446, - -0.03221616521477699, - -0.06122324615716934, - 0.031303949654102325, - -0.021684149280190468, - 0.010560864582657814, - 0.018786268308758736, - -0.050503358244895935, - -0.10379624366760254, - -0.08728988468647003, - 0.057631514966487885, - -0.05874260142445564, - -0.02306721732020378, - -0.07183223962783813, - 0.04564748331904411, - 0.08136852085590363, - 0.012906410731375217, - -0.01273279171437025, - 0.005995762534439564, - 0.005747789517045021, - -0.05391283705830574, - -0.03464343398809433, - 0.012833112850785255, - 0.028973987326025963, - -0.09113708138465881, - 0.005296451970934868, - -0.07694781571626663, - 0.06952116638422012, - -0.0602588877081871, - 0.10060738027095795, - -0.008128389716148376, - -0.0403563529253006, - -0.09242768585681915, - 0.01637028530240059, - -0.00890114065259695, - 0.06383129954338074, - 0.031996216624975204, - 0.03165358304977417, - 0.02813158743083477, - -0.06673400849103928, - 0.12569426000118256, - 0.0421484038233757, - -0.018706554546952248, - -0.07676831632852554, - -0.028314810246229172, - -0.0475817546248436, - 0.005302261561155319, - -0.00678743002936244, - -0.05808396637439728, - -0.011384803801774979, - 0.004848166834563017, - -0.016317343339323997, - 0.06753429025411606, - 0.11009517312049866, - 0.03625589236617088, - -0.1056508868932724 - ] - }, - "p244_031.wav": { - "name": "p244", - "embedding": [ - -0.0031721927225589752, - 0.08524402976036072, - -0.03624449670314789, - 0.007653478533029556, - -0.07755075395107269, - 0.013027937151491642, - -0.07759065181016922, - 0.10879097133874893, - -0.06021568924188614, - 0.13402292132377625, - -0.03959908336400986, - 0.11754312366247177, - -0.05208691954612732, - -0.09908919781446457, - 0.006137712858617306, - 0.05045641213655472, - -0.013862957246601582, - -0.030133042484521866, - -0.021975351497530937, - -0.06501494348049164, - 0.03146013617515564, - 0.036248765885829926, - 0.03857751190662384, - -0.030518101528286934, - 0.015737639740109444, - 0.09964320063591003, - -0.014124457724392414, - -0.004658829420804977, - -0.03618874400854111, - -0.09830702841281891, - -0.0565132275223732, - 0.04885271191596985, - -0.04080817103385925, - -0.021246083080768585, - 0.011830486357212067, - -0.023814676329493523, - -0.008890162222087383, - -0.024142621085047722, - 0.0032822154462337494, - 0.0011559776030480862, - -0.06783229112625122, - 0.07031477987766266, - 0.008366720750927925, - -0.04857456684112549, - 0.037570614367723465, - -0.02686663344502449, - -0.022127103060483932, - 0.004770314320921898, - -0.05465042591094971, - 0.12126389145851135, - 0.07148054242134094, - 0.0013978746719658375, - -0.052000582218170166, - -0.038945917040109634, - 0.0877581313252449, - -0.0012853490188717842, - -0.1108427494764328, - -0.0606062151491642, - 0.018383409827947617, - 0.09237228333950043, - -0.01754496805369854, - -0.022982580587267876, - 0.04116424173116684, - 0.08166461437940598, - 0.021070770919322968, - 0.05902737379074097, - 0.06914369761943817, - 0.06157761067152023, - 0.0006750235334038734, - -0.005168559029698372, - 0.0316203273832798, - 0.08342833817005157, - 0.03138510510325432, - 0.0012933446560055017, - 0.01936165615916252, - -0.037838663905858994, - -0.024873023852705956, - -0.03308756649494171, - -0.021764367818832397, - -0.06759238988161087, - -0.05789382755756378, - 0.0017544161528348923, - 0.014489218592643738, - -0.027200797572731972, - -0.005004999227821827, - 0.040076881647109985, - 0.08280247449874878, - -0.03549404442310333, - 0.07287822663784027, - 0.028236713260412216, - 0.005485543981194496, - 0.037038326263427734, - -0.06721062958240509, - -0.01733156479895115, - -0.008239630609750748, - 0.013282595202326775, - 0.060987960547208786, - 0.07531580328941345, - 0.028587471693754196, - 0.01072730217128992, - 0.07777917385101318, - 0.04216352105140686, - 0.029492966830730438, - -0.013710791245102882, - -0.08731023967266083, - 0.09865622222423553, - 0.11385050415992737, - -0.028927259147167206, - 0.02764062210917473, - -0.017414452508091927, - 0.0449213832616806, - 0.01242845319211483, - -0.07170018553733826, - -0.07027943432331085, - -0.04182536154985428, - -0.015742875635623932, - -0.003213199321180582, - 0.09362383186817169, - 0.019830595701932907, - 0.023868106305599213, - 0.09431757032871246, - -0.09610351920127869, - -0.10151641815900803, - -0.04136377573013306, - 0.03665371984243393, - -0.08635959774255753, - 0.0752180740237236, - 0.09716824442148209, - -0.0036956556141376495, - 0.05878785252571106, - 0.06644292175769806, - 0.03405730798840523, - 0.04098832607269287, - 0.029591821134090424, - -0.06001533195376396, - -0.02920944057404995, - -0.008939823135733604, - 0.014368940144777298, - 0.08213324844837189, - 0.05014430731534958, - 0.08771958202123642, - -0.021660495549440384, - 0.034290019422769547, - -0.07653642445802689, - 0.01075804140418768, - 0.035639986395835876, - -0.006889358162879944, - -0.03735308349132538, - -0.034836456179618835, - 0.0062777139246463776, - -0.0801110491156578, - -0.03233237937092781, - -0.013735095970332623, - 0.0917508453130722, - -0.0327858105301857, - 0.01868968829512596, - 0.1274670660495758, - 0.05708180367946625, - -0.03218041732907295, - -0.04901830852031708, - -0.024625025689601898, - 0.0012115312274545431, - 0.04969457909464836, - -0.10093742609024048, - -0.08161555975675583, - -0.043133363127708435, - 0.033579617738723755, - 0.019424431025981903, - 0.06229546666145325, - 0.07398265600204468, - 0.015393667854368687, - 0.025826681405305862, - -0.03185419365763664, - 0.05849052220582962, - -0.03296176344156265, - -0.04562387615442276, - -0.0325213260948658, - -0.09356756508350372, - -0.04916716739535332, - 0.0909791886806488, - -0.001040048897266388, - 0.05649947375059128, - -0.0184773076325655, - -0.06064695864915848, - -0.08358320593833923, - 0.011102572083473206, - 0.02335767261683941, - -0.025431666523218155, - 0.030378557741642, - 0.04727745056152344, - -0.06678543984889984, - -0.004855260252952576, - 0.042953010648489, - 0.09259198606014252, - -0.04301677271723747, - -0.0035032983869314194, - -0.05748031288385391, - 0.06704645603895187, - 0.09279294312000275, - -0.08104707300662994, - -0.03734207525849342, - -0.10613393038511276, - -0.026010671630501747, - 0.03861268609762192, - -0.023124318569898605, - 0.005864271894097328, - -0.007030686363577843, - 0.011617453768849373, - -0.06166680157184601, - -0.0882810652256012, - 0.09725643694400787, - -0.03475767746567726, - 0.011090045794844627, - -0.06370721757411957, - 0.019157353788614273, - 0.019455373287200928, - 0.06488795578479767, - -0.039806053042411804, - 0.023175522685050964, - 0.04877842217683792, - -6.431154906749725e-05, - 0.06412075459957123, - 0.08830168098211288, - 0.0709967091679573, - 0.01203211024403572, - -0.035194747149944305, - -0.08956709504127502, - 0.04621568322181702, - -0.027156643569469452, - 0.12659144401550293, - 0.008517014794051647, - -0.03722283989191055, - -0.09492410719394684, - 0.03638170287013054, - -0.008441217243671417, - 0.0255669504404068, - 0.07092460989952087, - 0.06971216946840286, - 0.02679571323096752, - -0.053276143968105316, - 0.09300364553928375, - 0.05749564245343208, - -0.0035181809216737747, - -0.03821427375078201, - -0.03906550258398056, - -0.05522899329662323, - 0.017660778015851974, - 0.007254130207002163, - -0.0853128731250763, - 0.039259783923625946, - -0.005107475910335779, - 0.037499185651540756, - 0.09226663410663605, - 0.0829063355922699, - 0.06584793329238892, - -0.09056061506271362 - ] - }, - "p244_245.wav": { - "name": "p244", - "embedding": [ - 0.040469616651535034, - 0.06697149574756622, - -0.028536299243569374, - 0.03860078006982803, - -0.03649842366576195, - 0.08415406197309494, - -0.13170062005519867, - 0.1127922534942627, - -0.03434142842888832, - 0.13944363594055176, - -0.048680078238248825, - 0.10478870570659637, - 0.002407509833574295, - -0.1726829707622528, - -0.03935525566339493, - 0.0237045306712389, - -0.0475279837846756, - -0.009100881405174732, - -0.0736503005027771, - -0.02344600111246109, - 0.060068707913160324, - 0.03575403243303299, - 0.02900128997862339, - -0.04906942695379257, - -0.0032114554196596146, - 0.04482799023389816, - -0.012749578803777695, - 0.03877810016274452, - 0.01054377667605877, - -0.07627420872449875, - -0.02277340739965439, - 0.11499439179897308, - -0.048417653888463974, - 0.026249002665281296, - 0.040331415832042694, - -0.006751219276338816, - -0.017194421961903572, - -0.04119975119829178, - -0.014180649071931839, - 0.01706862263381481, - -0.02906564436852932, - 0.05582103133201599, - 0.020991722121834755, - -0.0034312624484300613, - 0.06332585960626602, - -0.015573405660688877, - -0.039775263518095016, - -0.024358276277780533, - -0.08939310908317566, - 0.157721146941185, - 0.06292953342199326, - -0.010863220319151878, - -0.07574648410081863, - -0.06337282061576843, - 0.09160132706165314, - -0.012078986503183842, - -0.13812774419784546, - -0.026275936514139175, - 0.07188798487186432, - 0.1630236804485321, - -0.023256924003362656, - -0.03001389466226101, - 0.03802190348505974, - 0.09937144815921783, - 0.05001205578446388, - 0.08253724873065948, - 0.09962158650159836, - 0.1048799455165863, - -0.007802274543792009, - 0.02256222814321518, - 0.027724727988243103, - 0.0760016068816185, - 0.06456547975540161, - -0.007335794623941183, - 0.04875495657324791, - -0.005384575575590134, - 0.004458636976778507, - -0.021884478628635406, - -0.04839785024523735, - -0.01384691521525383, - 0.01243191584944725, - 0.005546243861317635, - 0.032536011189222336, - 0.02778775244951248, - -0.05343516543507576, - 0.040348172187805176, - 0.03786475956439972, - -0.01819605566561222, - 0.04128112643957138, - 0.060705363750457764, - 0.035927243530750275, - 0.04794657230377197, - -0.07246753573417664, - -0.0977635383605957, - 0.021170837804675102, - 0.01245868019759655, - 0.01223048660904169, - 0.045533470809459686, - 0.028808288276195526, - -0.0068528070114552975, - 0.09040618687868118, - 0.037028685212135315, - -0.03731880709528923, - 0.024439087137579918, - -0.08863583207130432, - 0.11545675992965698, - 0.10208885371685028, - -0.011238603852689266, - 0.03215021640062332, - -0.06371717154979706, - 0.071348175406456, - 0.057960424572229385, - -0.1159331202507019, - -0.07033968716859818, - 0.0311172716319561, - 0.008666956797242165, - -0.00534119363874197, - 0.1311578005552292, - 0.013315784744918346, - 0.02748023346066475, - 0.09390349686145782, - -0.07587197422981262, - -0.033088281750679016, - -0.023208852857351303, - 0.04134207218885422, - -0.06593947857618332, - 0.04860245808959007, - 0.014203306287527084, - -0.00037322891876101494, - -0.003943283576518297, - 0.07663953304290771, - -0.020262496545910835, - 0.021513596177101135, - 0.007742593064904213, - -0.047884151339530945, - 0.033850912004709244, - -0.02896062284708023, - -2.3963861167430878e-05, - 0.042762577533721924, - 0.03897835686802864, - 0.063753642141819, - -0.02734399400651455, - -0.0418197363615036, - -0.10401983559131622, - 0.01063578762114048, - 0.02953163906931877, - 0.06402745097875595, - -0.014130592346191406, - 0.0007553929463028908, - -0.03305567055940628, - -0.07836858928203583, - 0.05484578758478165, - -0.04186864569783211, - 0.07789556682109833, - 0.0054706912487745285, - -0.011557930149137974, - 0.09604483097791672, - 0.0058167120441794395, - 0.0031894436106085777, - -0.039714790880680084, - -0.023130377754569054, - 0.00124570750631392, - 0.041653916239738464, - -0.08527734875679016, - -0.054195620119571686, - -0.006153625901788473, - 0.023451585322618484, - -0.016231298446655273, - 0.04577047750353813, - 0.0631980374455452, - 0.010974802076816559, - 0.02405364438891411, - -0.06229448318481445, - -0.0193592868745327, - -0.1025584489107132, - -0.06289488077163696, - -0.006051839794963598, - -0.047883838415145874, - -0.009523879736661911, - 0.08666342496871948, - 0.024977881461381912, - 0.01414379384368658, - -0.03422355651855469, - -0.06939958781003952, - -0.08586375415325165, - 0.05577857419848442, - 0.04572942480444908, - -0.006547700613737106, - 0.0334157794713974, - 0.05490213632583618, - -0.02856912463903427, - 0.06284814327955246, - 0.07645009458065033, - 0.08860714733600616, - -0.031002987176179886, - 0.009740835055708885, - -0.08953236043453217, - 0.1090899184346199, - 0.10271036624908447, - -0.05937965214252472, - -0.0976703017950058, - -0.009388644248247147, - -0.08970456570386887, - 0.027566464617848396, - -0.054483138024806976, - -0.015807637944817543, - 0.06063133478164673, - -0.006865249015390873, - -0.1236935406923294, - -0.08057098090648651, - 0.09565722942352295, - -0.07615500688552856, - -0.013083500787615776, - -0.07414872199296951, - 0.0373181477189064, - 0.08579879254102707, - 0.01893925666809082, - -0.04318736121058464, - 0.0015953457914292812, - 0.06155230849981308, - -0.05155723914504051, - 0.009965279139578342, - 0.03288400173187256, - 0.023278342559933662, - -0.10208860784769058, - -0.01829860359430313, - -0.06304147094488144, - 0.008918233215808868, - -0.05091467499732971, - 0.1172068864107132, - 0.010979154147207737, - -0.056741323322057724, - -0.05618629604578018, - 0.07545953243970871, - -0.022234296426177025, - 0.05180518701672554, - 0.04076996445655823, - 0.08367861807346344, - 0.04136915132403374, - -0.09157460927963257, - 0.10898593068122864, - 0.030023545026779175, - -0.030543768778443336, - -0.09345605224370956, - -0.03846116364002228, - -0.043233878910541534, - 0.02639087289571762, - 0.017378129065036774, - -0.0801430344581604, - -0.003115958534181118, - 0.0249668937176466, - -0.006593803409487009, - 0.04361836239695549, - 0.12243619561195374, - 0.046990104019641876, - -0.10784579813480377 - ] - }, - "p244_219.wav": { - "name": "p244", - "embedding": [ - 0.07222731411457062, - 0.020960157737135887, - -0.012612464837729931, - -0.010866774246096611, - -0.024798311293125153, - 0.041596509516239166, - -0.12056693434715271, - 0.1051354855298996, - -0.014153889380395412, - 0.07093960791826248, - -0.0833030492067337, - 0.09026588499546051, - -0.0006825346499681473, - -0.11566475033760071, - -0.04158276319503784, - 0.027302339673042297, - -0.015957005321979523, - -0.016128556802868843, - -0.06023886427283287, - -0.022953743115067482, - 0.013349421322345734, - 0.0479513481259346, - 0.01142415963113308, - -0.0032521607354283333, - 0.026839502155780792, - 0.0386260524392128, - -0.009299049153923988, - 0.010715622454881668, - 0.002526539145037532, - 0.016378700733184814, - 0.024460837244987488, - 0.07257473468780518, - -0.03677280619740486, - -0.0036418421659618616, - 0.041019268333911896, - 0.01662302576005459, - 0.009967396035790443, - -0.09088870882987976, - -0.026297269389033318, - 0.029302295297384262, - -0.05176599323749542, - 0.07723300158977509, - 0.06828534603118896, - -0.012409724295139313, - 0.010292649269104004, - 0.011088041588664055, - 0.0020930839236825705, - -0.05703490227460861, - -0.11804747581481934, - 0.16962739825248718, - -0.0030464492738246918, - 0.036971334367990494, - -0.12387686967849731, - -0.005087150260806084, - 0.0691189244389534, - -0.01608886942267418, - -0.04239609092473984, - -0.04493209347128868, - 0.03722387179732323, - 0.12413974851369858, - 0.00318712554872036, - -0.04723324626684189, - 0.018990851938724518, - 0.06539860367774963, - 0.04080486670136452, - 0.0038003958761692047, - 0.13416001200675964, - 0.10878852009773254, - -0.01956210285425186, - 0.028149627149105072, - 0.0668376013636589, - 0.03167200833559036, - 0.036696452647447586, - -0.014818298630416393, - 0.013944604434072971, - -0.02147645317018032, - -0.02467886172235012, - 0.011683049611747265, - -0.027359914034605026, - -0.03582581877708435, - 0.009972562082111835, - 0.011266171932220459, - 0.016464529559016228, - 0.07649891078472137, - -0.06265327334403992, - 0.05017147213220596, - 0.030588701367378235, - -0.0023483335971832275, - 0.06914664804935455, - 0.07247161120176315, - -0.005590131971985102, - 0.0004338361322879791, - -0.05602840334177017, - -0.08998550474643707, - -0.005046145990490913, - -0.00946731586009264, - 0.04419659078121185, - 0.02627626061439514, - 0.03161316365003586, - -0.0028024488128721714, - 0.09361158311367035, - 0.007027469575405121, - 0.004248812794685364, - -0.014038534834980965, - -0.06931654363870621, - 0.09949930012226105, - 0.1126985251903534, - -0.01706080138683319, - 0.015995021909475327, - -0.04667337238788605, - 0.007100168615579605, - 0.04082728177309036, - -0.07544156163930893, - -0.042587485164403915, - 0.05652504414319992, - 0.031760238111019135, - 0.06085653230547905, - 0.11034698784351349, - 0.01021426822990179, - 0.023538703098893166, - 0.05772740766406059, - -0.07498112320899963, - -0.025298113003373146, - 0.01985420659184456, - 0.014938198029994965, - -0.01102566346526146, - 0.01983753964304924, - 0.0340501107275486, - 0.030473582446575165, - -0.02773580327630043, - 0.06282347440719604, - 0.011202976107597351, - 0.0073677608743309975, - -0.05712639167904854, - 0.04998690262436867, - 0.09543541073799133, - 0.026846786960959435, - -0.02943497709929943, - 0.05854041129350662, - 0.08381514251232147, - 0.02618376538157463, - 0.055659547448158264, - -0.05341917276382446, - -0.10958400368690491, - -0.005204768851399422, - 0.049045201390981674, - 0.06588643789291382, - -0.05262218043208122, - -0.024723384529352188, - -0.06857429444789886, - -0.01420474611222744, - 0.005946789868175983, - 0.018610086292028427, - 0.06461013853549957, - 0.03411216288805008, - -0.013558970764279366, - 0.0823804959654808, - -0.02489832043647766, - 0.022905703634023666, - -0.017179548740386963, - 0.01042818184942007, - 0.009969260543584824, - 0.04411905258893967, - -0.011171195656061172, - -0.07573098689317703, - 0.0016736872494220734, - 0.0069807711988687515, - -0.01731184870004654, - 0.01400594413280487, - 0.032033585011959076, - -0.03228658437728882, - 0.003496539546176791, - -0.10312718152999878, - 0.031407810747623444, - -0.09921270608901978, - -0.004203546792268753, - 0.04617861658334732, - -0.030386850237846375, - -0.0023897187784314156, - 0.09489292651414871, - 0.022600259631872177, - 0.0468139722943306, - -0.025521378964185715, - -0.09814317524433136, - -0.01159774698317051, - 0.049467772245407104, - 0.061336699873209, - -0.04028693586587906, - 0.010425148531794548, - 0.024396009743213654, - 0.03187078982591629, - 0.03316335380077362, - 0.05949288606643677, - 0.050487831234931946, - -0.06617512553930283, - -0.05275246128439903, - -0.005630879662930965, - 0.11891871690750122, - 0.014252698980271816, - -0.062019020318984985, - -0.04791417717933655, - -0.009605512954294682, - -0.030403906479477882, - -0.012217089533805847, - -0.0018911436200141907, - 0.02707720547914505, - 0.05189976468682289, - -0.03051159903407097, - -0.1098608449101448, - -0.06041586399078369, - 0.00713726133108139, - -0.055069535970687866, - 0.014702294021844864, - -0.0674569383263588, - 0.017536701634526253, - 0.09175148606300354, - 0.007593287155032158, - 0.015194819308817387, - -0.022600969299674034, - -0.04721808433532715, - -0.06713007390499115, - -0.060297027230262756, - -0.011572282761335373, - 0.02616897039115429, - -0.0563252717256546, - -0.015114138834178448, - -0.052414096891880035, - 0.07349498569965363, - -0.023053035140037537, - 0.09905221313238144, - 0.026766197755932808, - -0.0525803379714489, - -0.06694452464580536, - -0.02237970568239689, - -0.030701957643032074, - 0.06547613441944122, - 0.05125664174556732, - 0.014116205275058746, - 0.0268840454518795, - -0.04486292600631714, - 0.08183442056179047, - 0.0683550089597702, - -0.054693207144737244, - -0.06583307683467865, - -0.02677665464580059, - 0.002136124297976494, - 0.025869105011224747, - 0.0006372611969709396, - -0.0019800327718257904, - 0.03802599385380745, - 0.015055319294333458, - -0.021273203194141388, - 0.04764735698699951, - 0.0814167708158493, - 0.06924223154783249, - -0.09193402528762817 - ] - }, - "p244_046.wav": { - "name": "p244", - "embedding": [ - 0.04791818931698799, - 0.08609864115715027, - -0.02030625194311142, - 0.019749164581298828, - -0.04697047173976898, - 0.06421241909265518, - -0.1733590066432953, - 0.14996123313903809, - -0.036069706082344055, - 0.14066368341445923, - -0.06150658428668976, - 0.0978202074766159, - -0.026696739718317986, - -0.18999455869197845, - 0.00092223787214607, - 0.058914393186569214, - -0.005148790776729584, - -0.037921808660030365, - -0.006316957529634237, - -0.015434525907039642, - 0.023458244279026985, - 0.021961109712719917, - -0.008580186404287815, - 0.013651471585035324, - 0.03340781107544899, - 0.05684586986899376, - -0.029509807005524635, - 0.003958610817790031, - -0.01880345493555069, - -0.00290899770334363, - -0.026967283338308334, - 0.1127498671412468, - -0.06037798523902893, - -0.00849539041519165, - 0.06841224431991577, - -0.007149490527808666, - -0.03532452508807182, - -0.06844106316566467, - -0.0024724407121539116, - -0.021227112039923668, - -0.07278308272361755, - 0.0775364339351654, - 0.041226793080568314, - -0.013608792796730995, - 0.039751432836055756, - 0.024538526311516762, - 0.008911735378205776, - -0.03718043863773346, - -0.0983007401227951, - 0.1237051710486412, - 0.06161168962717056, - -0.005780732724815607, - -0.07843081653118134, - -0.03526226058602333, - 0.09053707867860794, - 0.005079975351691246, - -0.09155043959617615, - -0.05482185259461403, - 0.09161026030778885, - 0.1439078152179718, - -0.03793584555387497, - -0.03414825350046158, - 0.023337747901678085, - 0.12157924473285675, - 0.05672366917133331, - 0.09753498435020447, - 0.05818276107311249, - 0.1317387819290161, - -0.021914232522249222, - 0.007747824303805828, - 0.05691039562225342, - 0.036855340003967285, - 0.04286675155162811, - -0.044416047632694244, - 0.014036049135029316, - -0.011720127426087856, - -0.022281821817159653, - -0.0031427089124917984, - -0.02866743877530098, - -0.02997453510761261, - -0.007567734457552433, - -0.01350860670208931, - -0.002449492923915386, - 0.04129207879304886, - -0.02476903423666954, - 0.02982398308813572, - 0.09159794449806213, - -0.0196663960814476, - 0.08686796575784683, - 0.04026409238576889, - 0.00786940474063158, - 0.06666909158229828, - -0.11174146831035614, - -0.05790012702345848, - 0.05675750970840454, - -0.007265503518283367, - 0.002614246681332588, - 0.07997490465641022, - 0.04901735484600067, - -0.009443875402212143, - 0.12860631942749023, - 0.022172836586833, - 0.006866768002510071, - 0.036836639046669006, - -0.09122829139232635, - 0.14913401007652283, - 0.05719463527202606, - -0.04908089339733124, - 0.04208863526582718, - -0.06420233845710754, - 0.04331347718834877, - 0.07234324514865875, - -0.13189789652824402, - -0.04517822712659836, - 0.054003894329071045, - 0.012185444124042988, - -0.04223601892590523, - 0.15393370389938354, - 0.008404126390814781, - 0.014087095856666565, - 0.10197106748819351, - -0.08806939423084259, - -0.07262252271175385, - -0.019862279295921326, - 0.04963568598031998, - -0.09022919833660126, - 0.0740722194314003, - 0.06498444825410843, - -0.004559494089335203, - 0.021265864372253418, - 0.07214614748954773, - -0.0029693455435335636, - -0.001893337583169341, - -0.009868279099464417, - -0.020660530775785446, - 0.03809455782175064, - -0.015640880912542343, - 0.01762366108596325, - 0.005972175393253565, - 0.005791465751826763, - 0.05788028985261917, - -0.004773234482854605, - 0.006649308372288942, - -0.10859546065330505, - 0.006629674695432186, - 0.04130848869681358, - 0.10004925727844238, - -0.01395219936966896, - -0.02369247004389763, - -0.04772362858057022, - -0.07501162588596344, - 0.0024065510369837284, - -0.02374560758471489, - 0.07877032458782196, - 0.005498568993061781, - 0.0076546743512153625, - 0.10204358398914337, - 0.04980762302875519, - 0.027168525382876396, - -0.06702670454978943, - -0.022298963740468025, - 0.008537614718079567, - 0.062157463282346725, - -0.09259136021137238, - -0.06668514013290405, - -0.021348848938941956, - 0.028708118945360184, - -0.027795374393463135, - 0.0534653477370739, - 0.04086209088563919, - 0.04209458455443382, - 0.012112114578485489, - -0.08924613893032074, - 0.02957664057612419, - -0.0890149474143982, - -0.06426816433668137, - -0.01918785274028778, - -0.0034944163635373116, - -0.02150624617934227, - 0.0808963030576706, - 0.014248626306653023, - 0.03842344135046005, - -0.03283168375492096, - -0.05696577578783035, - -0.07742127776145935, - 0.045184046030044556, - 0.059112273156642914, - -0.04070518910884857, - 0.02882145345211029, - 0.04365237057209015, - -0.04898493364453316, - 0.01126204151660204, - 0.06374762952327728, - 0.10832351446151733, - -0.029205352067947388, - 0.028193579986691475, - -0.05941461771726608, - 0.10252612829208374, - 0.0975145474076271, - -0.08362990617752075, - -0.08715152740478516, - -0.020395338535308838, - -0.04796089231967926, - 0.013318775221705437, - -0.03955643251538277, - -0.0023355367593467236, - 0.0001646681921556592, - -0.023714236915111542, - -0.09558136016130447, - -0.09607821702957153, - 0.06602247059345245, - -0.07804249227046967, - 0.004021617118269205, - -0.11487875133752823, - 0.05909181013703346, - 0.07432693243026733, - 0.03395532816648483, - -0.05898323655128479, - -0.03330725058913231, - 0.04996313899755478, - -0.017530035227537155, - 0.025102373212575912, - 0.06493964791297913, - 0.04012791067361832, - -0.1265983283519745, - -0.016959384083747864, - -0.05619068816304207, - 0.08316856622695923, - -0.04807935655117035, - 0.15506158769130707, - 0.024122335016727448, - -0.04619833081960678, - -0.07194448262453079, - 0.017747873440384865, - 0.024276399984955788, - 0.04009713977575302, - 0.019906984642148018, - 0.06824712455272675, - 0.04056765139102936, - -0.036776453256607056, - 0.10655753314495087, - 0.036514878273010254, - -0.009652627632021904, - -0.05594159662723541, - -0.04375306889414787, - -0.04857981204986572, - 0.030800441280007362, - 0.00521886209025979, - -0.12298768013715744, - -0.022811580449342728, - 0.046436429023742676, - 0.0037898181471973658, - 0.06626251339912415, - 0.13355503976345062, - 0.06465938687324524, - -0.12205636501312256 - ] - }, - "p244_300.wav": { - "name": "p244", - "embedding": [ - 0.049968041479587555, - 0.09801331162452698, - 0.01460002176463604, - -0.005377164110541344, - -0.0104905404150486, - 0.07790542393922806, - -0.1693437546491623, - 0.1378060132265091, - -0.05347730219364166, - 0.1628655195236206, - -0.0824340283870697, - 0.08920694887638092, - -0.012255407869815826, - -0.2125743329524994, - -0.04178578406572342, - 0.03335980325937271, - -0.04350697249174118, - 0.005362793803215027, - -0.042598895728588104, - -0.02142670378088951, - 0.03858514130115509, - 0.03654477000236511, - 0.0021675927564501762, - -0.00543582160025835, - 0.02252454124391079, - 0.04389685019850731, - -0.011978646740317345, - 0.029601523652672768, - -0.009745283983647823, - -0.042751483619213104, - -0.024842703714966774, - 0.13371127843856812, - -0.04272344708442688, - 0.02748459205031395, - 0.07552188634872437, - -0.002824552357196808, - -0.01807442493736744, - -0.043116770684719086, - -0.013014223426580429, - 0.014325144700706005, - -0.04472476989030838, - 0.05777670443058014, - 0.024044761434197426, - 0.017070749774575233, - 0.057123128324747086, - 0.039233241230249405, - 0.011941354721784592, - -0.04855477064847946, - -0.07187508046627045, - 0.14665763080120087, - 0.06575113534927368, - -0.007841753773391247, - -0.06874606758356094, - -0.0667777806520462, - 0.10466133803129196, - -0.021709300577640533, - -0.11968672275543213, - -0.015139508992433548, - 0.09630942344665527, - 0.1690642237663269, - -0.03314473479986191, - -0.04365881532430649, - 0.02511690929532051, - 0.11127861589193344, - 0.0002902494743466377, - 0.11083859205245972, - 0.07260331511497498, - 0.08234839141368866, - -0.005470833275467157, - 0.017871864140033722, - 0.03815460950136185, - 0.03642918914556503, - 0.06226321682333946, - -0.061770565807819366, - 0.027827410027384758, - 0.0015827817842364311, - -0.031456634402275085, - 0.010313575156033039, - -0.02652036026120186, - 2.4028937332332134e-05, - -0.01255882903933525, - -0.0021326979622244835, - -0.006473037879914045, - 0.006419507786631584, - -0.03508232906460762, - 0.015024224296212196, - 0.026230130344629288, - -0.012025833129882812, - 0.07365226745605469, - 0.06338165700435638, - 0.03642941638827324, - 0.053670480847358704, - -0.06668940931558609, - -0.08650785684585571, - 0.03812621161341667, - -0.002086791442707181, - -0.0179511196911335, - 0.0647687315940857, - 0.05084738880395889, - -0.010798136703670025, - 0.10493838787078857, - 0.04226839542388916, - 0.0013655535876750946, - 0.03332860767841339, - -0.12789404392242432, - 0.10738347470760345, - 0.07821457087993622, - -0.033362314105033875, - 0.054702404886484146, - -0.05284057557582855, - 0.07704795897006989, - 0.09062460064888, - -0.14442186057567596, - -0.06370437145233154, - 0.046465251594781876, - 0.024929773062467575, - -0.0005151897203177214, - 0.11791570484638214, - -0.00872720219194889, - -0.005677691660821438, - 0.0838419571518898, - -0.07578405737876892, - -0.05144283547997475, - -0.04001475125551224, - 0.05565605312585831, - -0.09013524651527405, - 0.06665147095918655, - 0.03782406076788902, - -0.0024431077763438225, - -0.004615898244082928, - 0.08816733956336975, - -0.016630027443170547, - -0.0006712350295856595, - -0.024540826678276062, - -0.005647690035402775, - 0.020359162241220474, - -0.03564242273569107, - 0.02166319079697132, - 0.0017500901594758034, - 0.037341468036174774, - 0.03697217255830765, - 0.024965092539787292, - -0.053579505532979965, - -0.0859847366809845, - -0.005547437816858292, - 0.04842324182391167, - 0.07005086541175842, - -0.009699261747300625, - -0.012924430891871452, - -0.04207606986165047, - -0.06437771022319794, - 0.033018600195646286, - -0.04126707464456558, - 0.08047182857990265, - 0.01330801472067833, - 0.007306352723389864, - 0.10757339000701904, - 0.02102476917207241, - -0.006282346323132515, - -0.0706862136721611, - -0.014108334667980671, - -0.003657124238088727, - 0.039428357034921646, - -0.09215399622917175, - -0.06160061061382294, - -0.006053785793483257, - 0.009721261449158192, - -0.007377368398010731, - 0.0491500049829483, - 0.04245437681674957, - 0.01808256283402443, - 0.0395950973033905, - -0.08897961676120758, - 0.005591139663010836, - -0.13117045164108276, - -0.07865756750106812, - -0.023884737864136696, - -0.03147459775209427, - 0.001926939468830824, - 0.09207874536514282, - 0.002940988866612315, - 0.00806216336786747, - -0.02848585695028305, - -0.07214745134115219, - -0.07034303992986679, - 0.0618055984377861, - 0.07659806311130524, - -0.01004987582564354, - 0.03028515726327896, - 0.03506414592266083, - -0.038056470453739166, - 0.07746073603630066, - 0.08469566702842712, - 0.11450894176959991, - -0.019682489335536957, - 0.052997857332229614, - -0.0664597749710083, - 0.08537492156028748, - 0.07700799405574799, - -0.06556370854377747, - -0.11971497535705566, - -0.014681736938655376, - -0.057039935141801834, - 0.02835647016763687, - -0.015776991844177246, - 0.005518275313079357, - 0.007290154695510864, - -0.019666224718093872, - -0.06684578210115433, - -0.0738009661436081, - 0.08203267306089401, - -0.054844025522470474, - -0.01612848788499832, - -0.07367096096277237, - 0.06959375739097595, - 0.07275247573852539, - 0.034886546432971954, - -0.037770915776491165, - -0.010585675947368145, - 0.04974190145730972, - -0.05061698704957962, - -0.010638154111802578, - 0.014809029176831245, - 0.008751391433179379, - -0.10545440763235092, - 0.019290614873170853, - -0.07960225641727448, - 0.08578118681907654, - -0.07007355988025665, - 0.13631197810173035, - -0.013089260086417198, - -0.08219916373491287, - -0.06222696602344513, - 0.031383223831653595, - -0.005087338387966156, - 0.024380620568990707, - 0.024639854207634926, - 0.07244230806827545, - 0.029566925019025803, - -0.051001351326704025, - 0.08489914238452911, - 0.01831376738846302, - -0.008295181207358837, - -0.05863580107688904, - -0.05338042974472046, - -0.031499359756708145, - 0.01197637990117073, - -0.011564143002033234, - -0.1041250228881836, - -0.011529695242643356, - 0.01753697171807289, - -0.002906979527324438, - 0.05715493857860565, - 0.1306975781917572, - 0.04335624724626541, - -0.1530175358057022 - ] - }, - "p244_359.wav": { - "name": "p244", - "embedding": [ - 0.030348509550094604, - 0.07768439501523972, - 0.008555657230317593, - 0.026563158258795738, - -0.003425696399062872, - 0.03968236595392227, - -0.14213767647743225, - 0.09931924939155579, - -0.03579817712306976, - 0.11898067593574524, - -0.1088065654039383, - 0.03258625045418739, - -0.05459073558449745, - -0.1744261384010315, - -0.03414885699748993, - 0.047865115106105804, - -0.059553518891334534, - -0.027496717870235443, - -0.018090086057782173, - 0.0011552581563591957, - 0.039432890713214874, - 0.02287905663251877, - -0.021516846492886543, - 0.022532237693667412, - 0.019280992448329926, - 0.036701351404190063, - 0.02423138916492462, - 0.0501369908452034, - 0.014246553182601929, - 0.024666864424943924, - 0.009850061498582363, - 0.1277129352092743, - -0.013467584736645222, - 0.008990117348730564, - 0.0611703135073185, - 0.04214859753847122, - -0.02114127390086651, - -0.043290071189403534, - -0.015811145305633545, - 0.0068585313856601715, - -0.0882788747549057, - 0.04824105650186539, - 0.053009338676929474, - 0.01199687086045742, - 0.029852204024791718, - 0.04430702328681946, - 0.007568409666419029, - -0.05850266292691231, - -0.09625974297523499, - 0.15484432876110077, - 0.07401220500469208, - -0.017841212451457977, - -0.050559982657432556, - -0.0809403508901596, - 0.08972951024770737, - 0.00837460346519947, - -0.09471327066421509, - -0.02482648566365242, - 0.11383843421936035, - 0.16216732561588287, - -0.03047655150294304, - -0.01958788000047207, - 0.003326050005853176, - 0.12937864661216736, - 0.03136890381574631, - 0.10415197163820267, - 0.03820474445819855, - 0.0994965136051178, - 0.014583373442292213, - 0.018332550302147865, - 0.09276241809129715, - 0.0392945222556591, - 0.03993486240506172, - -0.044743433594703674, - 0.016079897060990334, - 0.04637405276298523, - -0.044201891869306564, - 0.05792469531297684, - 0.003222801722586155, - -5.4017058573663235e-05, - 0.002703331410884857, - -0.018949167802929878, - -0.01241887267678976, - 0.00048419320955872536, - -0.010416262783110142, - 0.029480237513780594, - 0.023609528318047523, - -0.004579249769449234, - 0.0852782130241394, - 0.04276464879512787, - -0.0032359501346945763, - 0.06789330393075943, - -0.038316838443279266, - -0.09003821015357971, - -0.004708915017545223, - -0.019900182262063026, - 0.027956852689385414, - 0.06483131647109985, - 0.046050697565078735, - -0.010565008036792278, - 0.09901370108127594, - 0.011695018038153648, - 0.015961287543177605, - 0.037968698889017105, - -0.13788272440433502, - 0.10301129519939423, - 0.05034896731376648, - -0.034958381205797195, - 0.01763630285859108, - -0.023578613996505737, - 0.0717649757862091, - 0.10025953501462936, - -0.14547041058540344, - -0.0309885423630476, - 0.06549885123968124, - 0.028332870453596115, - -0.007599616423249245, - 0.11848878860473633, - -0.010113263502717018, - -0.056973766535520554, - 0.11067688465118408, - -0.08056318759918213, - -0.0626942366361618, - -0.04061775654554367, - 0.05491669476032257, - -0.08855116367340088, - 0.01893702708184719, - 0.04150834679603577, - -0.008965986780822277, - -0.03933119773864746, - 0.08321428298950195, - -0.018402911722660065, - -0.004150300286710262, - -0.02816198393702507, - -0.001608746126294136, - 0.08218800276517868, - -0.0534159317612648, - 0.03766867518424988, - 0.03371047601103783, - 0.0400828942656517, - 0.015166142955422401, - 0.04485899955034256, - -0.06117885187268257, - -0.09417816996574402, - 0.002391309477388859, - 0.07609342038631439, - 0.07274405658245087, - -0.019503481686115265, - -0.03525914251804352, - -0.05850470811128616, - -0.06206020712852478, - 0.05045386776328087, - -0.001446128822863102, - 0.07098669558763504, - 0.023719200864434242, - -0.04152993857860565, - 0.12781396508216858, - -0.024683237075805664, - 0.006563086993992329, - -0.07417108863592148, - -0.011478226631879807, - 0.01909732073545456, - 0.043920695781707764, - -0.08255484700202942, - -0.07366518676280975, - 0.012730870395898819, - 0.020668990910053253, - 0.012241153046488762, - -0.0249724630266428, - 0.00860169529914856, - 0.010125966742634773, - 0.021382739767432213, - -0.07976174354553223, - 0.012401029467582703, - -0.13077697157859802, - -0.06890575587749481, - -0.023223867639899254, - -0.005381791386753321, - 0.030310755595564842, - 0.0655221939086914, - -0.019187504425644875, - -0.010231351479887962, - 0.014959679916501045, - -0.09263556450605392, - -0.04564449563622475, - 0.09276473522186279, - 0.10907714068889618, - 0.012481685727834702, - 0.0659794807434082, - 0.04486147314310074, - -0.06362027674913406, - 0.019148707389831543, - 0.04368545487523079, - 0.14140041172504425, - -0.03712480515241623, - 0.007988227531313896, - -0.05061483383178711, - 0.08063691854476929, - 0.04381818324327469, - -0.09705153107643127, - -0.086191326379776, - -0.005536822602152824, - -0.03728656470775604, - 0.0372922383248806, - -0.02223260886967182, - 0.012410702183842659, - -0.020342914387583733, - -0.04747268930077553, - -0.06914907693862915, - -0.07041965425014496, - 0.045562516897916794, - -0.031698767095804214, - -0.029494337737560272, - -0.07949737459421158, - 0.06260428577661514, - 0.0687737762928009, - 0.05155980587005615, - -0.013788032345473766, - 0.006924600340425968, - 0.037457339465618134, - -0.08222178369760513, - -0.06086341291666031, - 0.007522867992520332, - -0.03559621796011925, - -0.10168305039405823, - -0.003255570773035288, - -0.07277602702379227, - 0.10974694788455963, - -0.07327708601951599, - 0.12061531841754913, - -0.03703213110566139, - -0.07921376824378967, - -0.06840967386960983, - -0.004409912042319775, - 0.00881499145179987, - 0.03542075678706169, - 0.04922432824969292, - 0.03733903169631958, - 0.007337949704378843, - -0.01376580074429512, - 0.1118457168340683, - 0.004669263958930969, - 0.0177265927195549, - -0.032833073288202286, - -0.02352018468081951, - -0.022904200479388237, - 0.00863576028496027, - -0.019273050129413605, - -0.09106748551130295, - -0.0032625719904899597, - 0.01978735812008381, - -0.04562909156084061, - 0.030306469649076462, - 0.11061010509729385, - 0.055528730154037476, - -0.11465846002101898 - ] - }, - "p244_102.wav": { - "name": "p244", - "embedding": [ - 0.0430225133895874, - 0.0539373978972435, - -0.03737715631723404, - 0.03839384764432907, - -0.07569047063589096, - 0.0445113405585289, - -0.13211029767990112, - 0.11113637685775757, - -0.041927166283130646, - 0.1266823709011078, - -0.05347640812397003, - 0.11221153289079666, - -0.01134815625846386, - -0.21096853911876678, - -0.01795266941189766, - 0.061899203807115555, - -0.06458897888660431, - -0.06837959587574005, - -0.053076136857271194, - -0.04615628719329834, - 0.03242522478103638, - 0.060048721730709076, - 0.018194379284977913, - 0.023188291117548943, - 0.019636016339063644, - 0.07649858295917511, - -0.020031925290822983, - 0.018023021519184113, - -0.002662018174305558, - -0.048287149518728256, - -0.059319376945495605, - 0.08876129984855652, - -0.05029842257499695, - -0.01397632248699665, - 0.03139262646436691, - -0.009115978144109249, - 0.004804037511348724, - -0.0705767571926117, - -0.05654650554060936, - 0.023940205574035645, - -0.07582558691501617, - 0.07638464868068695, - 0.049024228006601334, - -0.019833985716104507, - 0.05372598394751549, - -0.010075511410832405, - -0.03245002403855324, - -0.05059707164764404, - -0.11141987144947052, - 0.16354015469551086, - 0.09242982417345047, - -0.004909676034003496, - -0.04896428436040878, - -0.05694033205509186, - 0.11498412489891052, - -0.011041943915188313, - -0.13472098112106323, - -0.03895661234855652, - 0.07875931262969971, - 0.15260660648345947, - -0.03568674623966217, - -0.023113053292036057, - 0.036222200840711594, - 0.11538784205913544, - 0.06419387459754944, - 0.08427874743938446, - 0.07476839423179626, - 0.10366985201835632, - -0.021568220108747482, - -0.002773015294224024, - 0.10140321403741837, - 0.07675415277481079, - 0.04877643659710884, - -0.0250396691262722, - 0.024526633322238922, - 0.028665583580732346, - -0.031440041959285736, - -0.009204463101923466, - -0.009552412666380405, - 0.0131557397544384, - -0.004523593001067638, - -0.004756622016429901, - 0.016074756160378456, - 0.017824772745370865, - -0.027924057096242905, - 0.0570589043200016, - 0.05087224394083023, - -0.0014556339010596275, - 0.05766984075307846, - 0.03507053107023239, - -0.0019134795293211937, - 0.06863532215356827, - -0.06402253359556198, - -0.07259349524974823, - 0.02617669850587845, - 0.02047777734696865, - 0.008621025830507278, - 0.07255026698112488, - 0.045982763171195984, - -0.02597293257713318, - 0.12951169908046722, - 0.04235372692346573, - -0.008816368877887726, - 0.03464014083147049, - -0.09544213116168976, - 0.1047326922416687, - 0.09472894668579102, - -0.02723640203475952, - 0.04840164631605148, - -0.0429169200360775, - 0.09450362622737885, - 0.06854903697967529, - -0.14027078449726105, - -0.04946266859769821, - 0.04936899244785309, - 0.009163052774965763, - -0.010623672045767307, - 0.13939180970191956, - -0.004662188235670328, - 0.038035519421100616, - 0.11626236885786057, - -0.08133769035339355, - -0.044369108974933624, - -0.022429462522268295, - 0.05786089971661568, - -0.0917532816529274, - 0.0550692155957222, - 0.051606930792331696, - -0.014153923839330673, - 0.017764169722795486, - 0.07237815856933594, - -0.027876053005456924, - -0.01682601310312748, - -0.003176904283463955, - -0.03572098910808563, - 0.0347004309296608, - -0.014770491980016232, - -0.009532537311315536, - 0.08457052707672119, - 0.02287433296442032, - 0.02701174095273018, - -0.016597239300608635, - -0.030893463641405106, - -0.13113197684288025, - 0.035148635506629944, - 0.010990448296070099, - 0.09693142026662827, - -0.006166107952594757, - 0.0016965181566774845, - -0.05810495465993881, - -0.09464967250823975, - 0.023657631129026413, - -0.019306715577840805, - 0.08095501363277435, - -0.02825925499200821, - -0.009544768370687962, - 0.07593156397342682, - 0.03461727872490883, - -0.00948033481836319, - -0.035972680896520615, - -0.0491919219493866, - 0.01014435850083828, - 0.06618952006101608, - -0.08035778999328613, - -0.06676628440618515, - -0.005774345248937607, - 0.03371158987283707, - -0.01720990613102913, - 0.03451649844646454, - 0.03245050460100174, - 0.024616623297333717, - 0.02158227376639843, - -0.09568929672241211, - 0.03199521079659462, - -0.11019712686538696, - -0.06290261447429657, - -0.01081261970102787, - -0.018080558627843857, - -0.007430730387568474, - 0.08192767202854156, - 0.005604485981166363, - 0.02585793286561966, - -0.03650568053126335, - -0.08845193684101105, - -0.06960691511631012, - 0.06260506808757782, - 0.06530150771141052, - 0.0011411313898861408, - 0.04428445175290108, - 0.06581991910934448, - -0.03202700614929199, - 0.03726353496313095, - 0.04070156067609787, - 0.12071744352579117, - -0.01693282276391983, - 0.031210407614707947, - -0.04292115569114685, - 0.10087241977453232, - 0.060816869139671326, - -0.07864196598529816, - -0.06585988402366638, - -0.020686758682131767, - -0.05931799113750458, - 0.05354519188404083, - -0.022308506071567535, - 0.002782419789582491, - 0.011945844627916813, - 0.006805784069001675, - -0.10159777104854584, - -0.08181186020374298, - 0.08036187291145325, - -0.04692530632019043, - -0.01781248301267624, - -0.09689954668283463, - 0.0362117625772953, - 0.10981318354606628, - 0.03773040324449539, - -0.026323864236474037, - 0.00456186942756176, - 0.043397460132837296, - -0.028127577155828476, - 0.016535427421331406, - 0.06927508860826492, - 0.03388071805238724, - -0.12066423147916794, - -0.034208547323942184, - -0.07544130831956863, - 0.07587596774101257, - -0.04062763974070549, - 0.14039717614650726, - 0.015053401701152325, - -0.03591234236955643, - -0.07308107614517212, - 0.05595755949616432, - 0.0017035757191479206, - 0.06483720242977142, - 0.05129917711019516, - 0.0727454125881195, - 0.052974216639995575, - -0.04354061931371689, - 0.10226841270923615, - 0.04978279024362564, - -0.041273295879364014, - -0.043258845806121826, - -0.013074418529868126, - -0.030807897448539734, - 0.02389458194375038, - 0.022466275840997696, - -0.08973407000303268, - -0.0030692466534674168, - 0.02394942194223404, - -0.030545353889465332, - 0.05711883306503296, - 0.1369554102420807, - 0.07677972316741943, - -0.11180759966373444 - ] - }, - "p244_073.wav": { - "name": "p244", - "embedding": [ - 0.050025369971990585, - 0.09468891471624374, - -0.006306699477136135, - 0.025102226063609123, - -0.04868593439459801, - 0.07750745117664337, - -0.13614723086357117, - 0.1285698562860489, - -0.03822711482644081, - 0.14091086387634277, - -0.06929503381252289, - 0.12306427955627441, - -0.010437111370265484, - -0.18395625054836273, - -0.04701977223157883, - 0.04812866076827049, - -0.051997050642967224, - -0.02401163801550865, - -0.035993412137031555, - -0.020998410880565643, - 0.042366739362478256, - 0.035661038011312485, - 0.04340088367462158, - 0.008436123840510845, - 0.02057529240846634, - 0.061848919838666916, - 0.014651848934590816, - 0.06731360405683517, - 0.02986729145050049, - -0.05034512281417847, - -0.039283379912376404, - 0.115561842918396, - -0.04078389331698418, - 0.024425527080893517, - 0.04877111315727234, - -0.009167520329356194, - 0.007816383615136147, - -0.06248391419649124, - -0.012126735411584377, - 0.009464703500270844, - -0.030846383422613144, - 0.07554687559604645, - 0.03140247240662575, - 0.00025807012571021914, - 0.03240381181240082, - 0.023040732368826866, - -0.018590042367577553, - -0.045769866555929184, - -0.1027064248919487, - 0.16036877036094666, - 0.07553015649318695, - -0.003921149764209986, - -0.06191285699605942, - -0.06800320744514465, - 0.10461169481277466, - -0.014925338327884674, - -0.11423198878765106, - -0.02995961904525757, - 0.0834035575389862, - 0.16206830739974976, - -0.034719228744506836, - -0.036888182163238525, - 0.024924151599407196, - 0.1350749135017395, - 0.043276816606521606, - 0.09140702337026596, - 0.08970780670642853, - 0.11004974693059921, - -0.013502801768481731, - 0.02018960565328598, - 0.04397713392972946, - 0.07516889274120331, - 0.04350581392645836, - -0.0042374818585813046, - 0.028446203097701073, - -0.009860394522547722, - -0.007762949448078871, - 0.014648607932031155, - -0.034249454736709595, - -0.017816556617617607, - -0.014192802831530571, - 0.007740188390016556, - 0.0055510373786091805, - 0.020933568477630615, - -0.024694232270121574, - 0.058536797761917114, - 0.011033186689019203, - -0.007938012480735779, - 0.06242240592837334, - 0.03340506553649902, - 0.013554271310567856, - 0.061150263994932175, - -0.06900466978549957, - -0.09568478167057037, - 0.02689513936638832, - 0.004911785013973713, - 0.027743559330701828, - 0.07634192705154419, - 0.04007009416818619, - -0.013964062556624413, - 0.11124905198812485, - 0.055918898433446884, - -0.023619771003723145, - 0.03462102264165878, - -0.09409746527671814, - 0.1252983808517456, - 0.08816325664520264, - -0.018559778109192848, - 0.04702261835336685, - -0.060387998819351196, - 0.08684112876653671, - 0.06394079327583313, - -0.13587582111358643, - -0.07668689638376236, - 0.0288423802703619, - 0.024168789386749268, - -0.021931758150458336, - 0.10796979069709778, - -0.0223039910197258, - 0.032515764236450195, - 0.09685595333576202, - -0.06980850547552109, - -0.04726937413215637, - -0.027023321017622948, - 0.04679577052593231, - -0.07220196723937988, - 0.040553875267505646, - 0.03369423374533653, - -0.007609399035573006, - -0.00770993297919631, - 0.08336915820837021, - -0.010960239917039871, - -0.007674570195376873, - 0.029892727732658386, - -0.05243418738245964, - 0.02836260199546814, - -0.030233047902584076, - 0.011005209758877754, - 0.03724243491888046, - 0.04648425430059433, - 0.04421566054224968, - 0.0024422656279057264, - -0.038187094032764435, - -0.10685497522354126, - 0.00795949250459671, - 0.034948933869600296, - 0.07179580628871918, - -0.009818065911531448, - -0.03200843930244446, - -0.041476961225271225, - -0.05986769497394562, - 0.030073752626776695, - -0.012694183737039566, - 0.07140501588582993, - -0.0210605226457119, - -0.0019267270108684897, - 0.08836772292852402, - 0.014559405855834484, - -0.004175232257694006, - -0.05113280564546585, - -0.0276580061763525, - 0.01576733961701393, - 0.04091668874025345, - -0.08266079425811768, - -0.0626341849565506, - 0.0060415118932724, - 0.02659047767519951, - -0.03424331173300743, - 0.04230711981654167, - 0.04197145253419876, - 0.015760626643896103, - 0.03797220438718796, - -0.06182323396205902, - -0.0037741544656455517, - -0.11045217514038086, - -0.06344986706972122, - -0.012600040063261986, - -0.009686823934316635, - -0.014872429892420769, - 0.0753248929977417, - 0.021330304443836212, - 0.049755584448575974, - -0.009720422327518463, - -0.06223946809768677, - -0.07657334208488464, - 0.061113081872463226, - 0.07651621103286743, - 0.009165244176983833, - 0.059780895709991455, - 0.056060634553432465, - -0.024654731154441833, - 0.06656038016080856, - 0.06306269019842148, - 0.09853903949260712, - -0.027438243851065636, - 0.01570606417953968, - -0.07912309467792511, - 0.07436473667621613, - 0.08575873076915741, - -0.0932183489203453, - -0.09049467742443085, - -0.02201438508927822, - -0.07154171168804169, - 0.03490672633051872, - -0.029067521914839745, - -0.004530402831733227, - 0.03233179450035095, - -0.004893789999186993, - -0.10126271098852158, - -0.08511736243963242, - 0.08919872343540192, - -0.07849450409412384, - -0.010427067056298256, - -0.07118475437164307, - 0.05186426267027855, - 0.10312867164611816, - 0.030673181638121605, - -0.029781712219119072, - -0.008348381146788597, - 0.056848566979169846, - -0.04707678407430649, - -0.0067833526991307735, - 0.03531728312373161, - 0.024210384115576744, - -0.11635036766529083, - 0.013965512625873089, - -0.07389486581087112, - 0.04277389869093895, - -0.05636947974562645, - 0.15073639154434204, - 0.0035770591348409653, - -0.057158462703228, - -0.07108616083860397, - 0.04859982430934906, - -0.03221463784575462, - 0.04725079983472824, - 0.036441951990127563, - 0.05647174268960953, - 0.02352149784564972, - -0.0855683833360672, - 0.13024096190929413, - 0.03629671782255173, - -0.04844909906387329, - -0.08672253787517548, - -0.030435342341661453, - -0.029809799045324326, - 0.03421724960207939, - 0.019117143005132675, - -0.08216220140457153, - -0.03539983183145523, - 0.025588396936655045, - -0.0269588902592659, - 0.06715121865272522, - 0.1439489722251892, - 0.06829582154750824, - -0.11346214264631271 - ] - }, - "p244_380.wav": { - "name": "p244", - "embedding": [ - 0.013977156952023506, - 0.06790954619646072, - -0.04052652418613434, - 0.031308140605688095, - -0.06747622042894363, - 0.04213244467973709, - -0.11638307571411133, - 0.08593550324440002, - -0.05164726823568344, - 0.11586429178714752, - -0.057797424495220184, - 0.08693459630012512, - -0.05798383429646492, - -0.16135907173156738, - -0.004745818674564362, - 0.08203017711639404, - -0.029021086171269417, - -0.045582547783851624, - -0.045329272747039795, - -0.027362871915102005, - 0.021520139649510384, - 0.01095966063439846, - 0.036966145038604736, - -0.024295005947351456, - 0.029374420642852783, - 0.06388232111930847, - -0.015622885897755623, - 0.00853461492806673, - -0.020870843902230263, - 0.006142172962427139, - -0.02938772365450859, - 0.08799991011619568, - -0.0328793004155159, - -0.04465601593255997, - 0.03385099396109581, - 0.007239095866680145, - -0.010864785872399807, - -0.07567732036113739, - 0.020904667675495148, - -0.02299526333808899, - -0.05988239124417305, - 0.07587135583162308, - 0.019331030547618866, - -0.038673289120197296, - 0.03174209967255592, - -0.030125092715024948, - -0.037907037883996964, - -0.007095793262124062, - -0.11728226393461227, - 0.13979537785053253, - 0.05963439494371414, - 0.008984653279185295, - -0.084353506565094, - -0.052475836127996445, - 0.10475218296051025, - 0.018175670877099037, - -0.09120997786521912, - -0.08472849428653717, - 0.06579320132732391, - 0.14563682675361633, - -0.011699935421347618, - -0.013315165415406227, - 0.02523159421980381, - 0.08954809606075287, - 0.04779740795493126, - 0.07663659751415253, - 0.05395541340112686, - 0.09860788285732269, - 0.00479824049398303, - 0.020014436915516853, - 0.07727955281734467, - 0.03503269702196121, - 0.010948042385280132, - -0.02449103444814682, - 0.016600431874394417, - -0.030751654878258705, - -0.03424938768148422, - -0.0009031300432980061, - -0.023626547306776047, - -0.06795116513967514, - -0.02011554315686226, - -0.037875354290008545, - 0.014735216274857521, - 0.009382423013448715, - -0.021297704428434372, - 0.018951866775751114, - 0.07411405444145203, - -0.038430437445640564, - 0.08233015239238739, - 0.03920704126358032, - -0.028404532000422478, - 0.04277238994836807, - -0.07377149164676666, - -0.061056748032569885, - 0.025939863175153732, - 0.003056139685213566, - -0.005695072002708912, - 0.054062873125076294, - 0.037920013070106506, - -0.03033341094851494, - 0.10569413751363754, - 0.04000004008412361, - 0.02254459448158741, - 0.029939282685518265, - -0.08991887420415878, - 0.11167331039905548, - 0.0881820023059845, - -0.021342061460018158, - 0.020952347666025162, - -0.007511255331337452, - 0.0290372371673584, - 0.08119228482246399, - -0.1016245111823082, - -0.05910422280430794, - 0.005798760801553726, - -0.025263924151659012, - -0.01820685714483261, - 0.1013495922088623, - 0.020612603053450584, - 0.0031752996146678925, - 0.11809593439102173, - -0.1006234809756279, - -0.09614263474941254, - -0.022758638486266136, - 0.04308545961976051, - -0.06667616218328476, - 0.03673451021313667, - 0.09041289240121841, - 0.004973910748958588, - 0.0020864875987172127, - 0.05238916724920273, - 0.002670613117516041, - 0.013621492311358452, - 0.013434219174087048, - -0.0373506061732769, - 0.05703084543347359, - -0.031240394338965416, - -0.02986977808177471, - 0.07929966598749161, - 0.03415234014391899, - 0.05755551904439926, - -0.021560262888669968, - 0.03445431590080261, - -0.09477758407592773, - 0.007923225872218609, - 0.059557944536209106, - 0.047068119049072266, - -0.01991090178489685, - 0.006372484378516674, - -0.04884664714336395, - -0.09643448889255524, - 0.02145705185830593, - -0.016571827232837677, - 0.10778673738241196, - -0.012352574616670609, - -0.008642743341624737, - 0.11329932510852814, - 0.018727000802755356, - 0.0071049961261451244, - -0.03396013379096985, - -0.023094134405255318, - 0.048170171678066254, - 0.043377846479415894, - -0.08602429926395416, - -0.05497325584292412, - -0.0309092216193676, - 0.04159211367368698, - -0.005331383552402258, - 0.028301598504185677, - 0.05750802159309387, - 0.01612606830894947, - -0.0077966381795704365, - -0.07166031002998352, - 0.06478056311607361, - -0.04721618443727493, - -0.0059195272624492645, - -0.009956683032214642, - -0.06868822127580643, - -0.022694185376167297, - 0.08215251564979553, - 0.021549042314291, - 0.0036403872072696686, - -0.04225257411599159, - -0.0926898941397667, - -0.06481640785932541, - 0.03595063090324402, - 0.0550440177321434, - -0.03400982916355133, - 0.04179961606860161, - 0.05777309834957123, - -0.027368739247322083, - -0.010111319832503796, - 0.055434584617614746, - 0.09657125174999237, - -0.027499718591570854, - -0.03702538460493088, - -0.06309280544519424, - 0.08289249241352081, - 0.0918731838464737, - -0.09060847759246826, - -0.05475857853889465, - -0.056424424052238464, - -0.03783833608031273, - 0.03533169627189636, - -0.040616475045681, - 0.0018740375526249409, - 0.03135288879275322, - -0.0343964584171772, - -0.10193973779678345, - -0.13044196367263794, - 0.10127010196447372, - -0.04929221421480179, - -0.021886035799980164, - -0.06672253459692001, - 0.027334121987223625, - 0.030293557792901993, - 0.00800785981118679, - -0.04374115914106369, - 0.014034748077392578, - 0.0197441466152668, - -0.04227215796709061, - 0.0261215977370739, - 0.05880095809698105, - 0.015579446218907833, - -0.08835114538669586, - -0.02471441961824894, - -0.08328090608119965, - 0.11049963533878326, - -0.030021781101822853, - 0.14694847166538239, - -0.006484383717179298, - -0.0024389512836933136, - -0.08935835212469101, - 0.03483014926314354, - -0.006636002566665411, - 0.07277784496545792, - 0.06277797371149063, - 0.06766960769891739, - 0.017642345279455185, - -0.04242781922221184, - 0.1022244542837143, - 0.03702020272612572, - -0.02042987011373043, - -0.06337658315896988, - -0.0010861065238714218, - -0.06406739354133606, - 0.007201822474598885, - -0.006285202689468861, - -0.07866798341274261, - 0.021153774112462997, - 0.032188691198825836, - -0.007751215249300003, - 0.07644884288311005, - 0.0912589281797409, - 0.07644154131412506, - -0.06099837273359299 - ] - }, - "p244_366.wav": { - "name": "p244", - "embedding": [ - 0.05085409805178642, - 0.0670686736702919, - -0.017226673662662506, - 0.0293086227029562, - -0.044026538729667664, - -0.0011953134089708328, - -0.14928144216537476, - 0.13163118064403534, - 0.011134255677461624, - 0.13107284903526306, - -0.07640716433525085, - 0.11196180433034897, - -0.01359421294182539, - -0.20764228701591492, - -0.005072839558124542, - 0.052787747234106064, - -0.028041161596775055, - -0.04100683331489563, - -0.028515605255961418, - -0.03610483929514885, - 0.042826395481824875, - 0.06877894699573517, - 0.019374005496501923, - 0.012615036219358444, - 0.007909136824309826, - 0.0772084891796112, - -0.007314398419111967, - 0.029493529349565506, - 0.0008794280583970249, - -0.027700548991560936, - -0.017559165135025978, - 0.09173493832349777, - -0.0403544120490551, - -0.004228388424962759, - 0.0382133387029171, - -0.016267284750938416, - -0.01226496696472168, - -0.044029563665390015, - -0.025033926591277122, - 0.019150715321302414, - -0.0724925547838211, - 0.068132184445858, - 0.02039487473666668, - -0.019460193812847137, - 0.07364826649427414, - 0.028724944218993187, - -0.023469015955924988, - -0.05228933319449425, - -0.11072307825088501, - 0.15626144409179688, - 0.09449710696935654, - -0.000653789087664336, - -0.06498056650161743, - -0.046945542097091675, - 0.06887988746166229, - -0.017642518505454063, - -0.09521948546171188, - -0.048091333359479904, - 0.08075737953186035, - 0.12235631048679352, - -0.026006614789366722, - -0.04016610234975815, - 0.05044165998697281, - 0.12413829565048218, - 0.06748602539300919, - 0.06921380013227463, - 0.07931749522686005, - 0.10358836501836777, - -0.04982781410217285, - -0.0075846146792173386, - 0.056043967604637146, - 0.06321180611848831, - 0.06375768780708313, - -0.015242952853441238, - 0.01914917677640915, - 0.01893724501132965, - -0.01899206079542637, - -0.020946774631738663, - -0.015297727659344673, - 0.004510984756052494, - -0.004505652468651533, - 0.005002297926694155, - -0.020885147154331207, - 0.03709785267710686, - -0.032443128526210785, - 0.047464869916439056, - 0.07302549481391907, - -0.007000552024692297, - 0.06750082224607468, - 0.037738338112831116, - 0.020419891923666, - 0.0640973448753357, - -0.09228697419166565, - -0.0656832680106163, - 0.02940038964152336, - -0.004019502084702253, - 0.006502562668174505, - 0.07582731544971466, - 0.049078747630119324, - -0.025137916207313538, - 0.13060736656188965, - 0.031714390963315964, - -0.0243767611682415, - 0.025476818904280663, - -0.09873418509960175, - 0.11460059136152267, - 0.09725730121135712, - -0.04103093594312668, - 0.03775591775774956, - -0.04929732531309128, - 0.050757259130477905, - 0.05530647560954094, - -0.1175805851817131, - -0.04079030081629753, - 0.04339802265167236, - 0.013811683282256126, - -0.01518404483795166, - 0.13868063688278198, - 0.00020996108651161194, - 0.04843778535723686, - 0.11880333721637726, - -0.07298990339040756, - -0.06130088120698929, - -0.033031392842531204, - 0.057804226875305176, - -0.11218637228012085, - 0.06844715774059296, - 0.05549861118197441, - 0.0032898352947086096, - 0.01518731564283371, - 0.07789964973926544, - -0.011777608655393124, - 0.002540184184908867, - -0.04070531576871872, - -0.019211189821362495, - 0.029824092984199524, - -0.025816660374403, - -0.009925898164510727, - 0.02613704651594162, - 0.020925652235746384, - 0.03841459006071091, - 0.00516651663929224, - -0.030071567744016647, - -0.13356314599514008, - 0.03662843257188797, - 0.02257009968161583, - 0.08171272277832031, - -0.013699542731046677, - -0.02153829112648964, - -0.0628013163805008, - -0.06399285793304443, - 0.005680585280060768, - -0.018062133342027664, - 0.04864518344402313, - -0.029082879424095154, - -0.005540390498936176, - 0.10222171247005463, - 0.01824648678302765, - 0.02005079947412014, - -0.01191074587404728, - -0.04252376779913902, - -0.0077728345058858395, - 0.05392754077911377, - -0.08858421444892883, - -0.08242686092853546, - -0.024000003933906555, - 0.027447447180747986, - 0.0007757818093523383, - 0.0593448132276535, - 0.04908888041973114, - 0.007528652902692556, - 0.004842091351747513, - -0.10006989538669586, - 0.01182630192488432, - -0.09884762018918991, - -0.08765855431556702, - -0.01826735958456993, - -0.003998443018645048, - 0.0015570521354675293, - 0.07226147502660751, - -0.0009670673753134906, - 0.044813916087150574, - -0.037501826882362366, - -0.08301500976085663, - -0.0931137204170227, - 0.046649396419525146, - 0.08539436757564545, - -0.02161845564842224, - 0.04968719184398651, - 0.048751816153526306, - -0.05311344563961029, - 0.04359713941812515, - 0.04705842584371567, - 0.10929615795612335, - -0.024895353242754936, - 0.038282353430986404, - -0.060064613819122314, - 0.09248365461826324, - 0.08937928080558777, - -0.07307444512844086, - -0.07582604885101318, - -0.02635362558066845, - -0.07325046509504318, - 0.03173784911632538, - -0.009884057566523552, - 0.01593635231256485, - 0.036145277321338654, - 0.00439275149255991, - -0.08528005331754684, - -0.08604592084884644, - 0.05700783431529999, - -0.05143602937459946, - -0.0041984873823821545, - -0.09667955338954926, - 0.04341677948832512, - 0.09445275366306305, - 0.04271339997649193, - -0.03443188592791557, - -0.04000169038772583, - 0.027259886264801025, - -0.008615976199507713, - 0.004325446672737598, - 0.044155314564704895, - 0.04436783120036125, - -0.12072961032390594, - -0.021931877359747887, - -0.06812672317028046, - 0.07399549335241318, - -0.0575198195874691, - 0.10598163306713104, - 0.03043750487267971, - -0.04580631107091904, - -0.09369494765996933, - 0.03592119365930557, - 0.012223056517541409, - 0.06361805647611618, - 0.02238444611430168, - 0.05402231961488724, - 0.042594872415065765, - -0.06385616958141327, - 0.10012947767972946, - 0.0571836493909359, - -0.0303624477237463, - -0.05940689891576767, - -0.038931287825107574, - -0.025729596614837646, - 0.03405177593231201, - 0.03150327131152153, - -0.08148278295993805, - -0.02010997384786606, - 0.023361992090940475, - -0.0273139588534832, - 0.04828052222728729, - 0.13030493259429932, - 0.04777144640684128, - -0.13580790162086487 - ] - }, - "p244_372.wav": { - "name": "p244", - "embedding": [ - 0.05733104795217514, - 0.09035584330558777, - -0.0674799457192421, - 0.01678674854338169, - -0.02285352163016796, - 0.051871947944164276, - -0.14151254296302795, - 0.10145170241594315, - -0.04185459762811661, - 0.13366682827472687, - -0.03486177325248718, - 0.10930806398391724, - -0.0007387548685073853, - -0.12698563933372498, - -0.02672582119703293, - 0.043290864676237106, - 0.013508656993508339, - -0.00466608302667737, - -0.03365962207317352, - 0.000635968055576086, - 0.03677349537611008, - 0.017415087670087814, - 0.016871776431798935, - -0.052286166697740555, - 0.021442992612719536, - 0.04421444237232208, - 0.0150107741355896, - 0.010867506265640259, - 0.0008865110576152802, - 0.0034209704026579857, - 0.0069201430305838585, - 0.08041664958000183, - -0.04085970297455788, - -0.00730693805962801, - 0.05829421803355217, - 0.017184995114803314, - -0.03687230497598648, - -0.06707696616649628, - 0.00912418495863676, - 0.02171766757965088, - -0.04473855346441269, - 0.0750008076429367, - 0.03293878957629204, - -0.03214138746261597, - 0.05211421102285385, - -0.030220355838537216, - -0.0071022603660821915, - -0.013494142331182957, - -0.06668394058942795, - 0.13318251073360443, - 0.06431329250335693, - 0.017523903399705887, - -0.0957476869225502, - -0.009879414923489094, - 0.09297850728034973, - 0.011899620294570923, - -0.058020077645778656, - -0.07234961539506912, - 0.02504071407020092, - 0.129949152469635, - -0.007936263456940651, - -0.03676142916083336, - 0.030724268406629562, - 0.09560272842645645, - 0.04965270310640335, - 0.05461284890770912, - 0.08459322154521942, - 0.09206856787204742, - 0.004799109883606434, - 0.024314353242516518, - 0.036570191383361816, - 0.06704433262348175, - 0.009090223349630833, - -0.025997400283813477, - 0.029857806861400604, - -0.026604363694787025, - -0.031231887638568878, - -0.017487429082393646, - -0.020572379231452942, - -0.05050205439329147, - -0.025242380797863007, - 0.0005858428776264191, - 0.014840181916952133, - 0.0555109977722168, - -0.05065262317657471, - 0.021962732076644897, - 0.0536637008190155, - -0.061104051768779755, - 0.03855361044406891, - 0.0710848867893219, - 0.001259309588931501, - -0.0029928572475910187, - -0.061065398156642914, - -0.1031339019536972, - 0.033726662397384644, - -0.0077224550768733025, - -0.02910834550857544, - 0.06257793307304382, - 0.024022288620471954, - 0.02959100529551506, - 0.07827945053577423, - 0.04612663760781288, - -0.014843754470348358, - 0.00977691076695919, - -0.0459158793091774, - 0.12566959857940674, - 0.09223836660385132, - -0.018394213169813156, - 0.033365506678819656, - -0.04731784015893936, - -0.004409823566675186, - 0.041355542838573456, - -0.09878554940223694, - -0.07866127789020538, - 0.052483223378658295, - 0.030176879838109016, - 0.02491014637053013, - 0.11451079696416855, - 0.022274555638432503, - 0.008571521379053593, - 0.0778849720954895, - -0.04630091041326523, - -0.10109050571918488, - -0.05816987156867981, - 0.04357404261827469, - -0.0649087131023407, - 0.06832358241081238, - 0.04452177882194519, - 0.01403038576245308, - -0.024561025202274323, - 0.08152192831039429, - 0.01438787393271923, - 0.012281514704227448, - -0.011794395744800568, - 0.027140209451317787, - 0.05973951518535614, - -0.028061334043741226, - 0.02277158945798874, - 0.03398044779896736, - 0.021174680441617966, - 0.07734952121973038, - 0.013620274141430855, - 0.014688989147543907, - -0.09958376735448837, - -0.003773623611778021, - 0.0702660009264946, - 0.06208153814077377, - -0.042771726846694946, - -0.03063330054283142, - -0.013423687778413296, - -0.06739537417888641, - -0.017742808908224106, - -0.04598553851246834, - 0.09883978962898254, - 0.012268861755728722, - 0.025962816551327705, - 0.10167396068572998, - -0.03406553715467453, - 0.028727801516652107, - -0.018112368881702423, - 0.038294363766908646, - 0.015364090912044048, - 0.04440914839506149, - -0.07276734709739685, - -0.09709705412387848, - -0.033611685037612915, - 0.0015493594110012054, - 0.00544988177716732, - 0.02899564430117607, - 0.04482974112033844, - -0.027257267385721207, - 0.05124206840991974, - -0.08262453973293304, - 0.004344735760241747, - -0.10727809369564056, - -0.011226003058254719, - -0.05117690935730934, - -0.059016767889261246, - -0.01636984385550022, - 0.07590500265359879, - 0.025758033618330956, - 0.0504256896674633, - -0.013828850351274014, - -0.06937123090028763, - -0.06957569718360901, - 0.0428764633834362, - 0.07960563898086548, - -0.04210585728287697, - 0.012439573183655739, - 0.054749779403209686, - 0.026797067373991013, - 0.0030076801776885986, - 0.057123132050037384, - 0.03404882550239563, - -0.04285070300102234, - -0.03743429109454155, - -0.06306368112564087, - 0.08651576936244965, - 0.10523722320795059, - -0.09650164842605591, - -0.05970654636621475, - -0.05139657109975815, - -0.05676249414682388, - -0.02443491667509079, - -0.06439773738384247, - 0.02167343534529209, - 0.04126442223787308, - -0.04472264274954796, - -0.09704603254795074, - -0.12901823222637177, - 0.06351842731237411, - -0.07181698083877563, - 0.009529278613626957, - -0.03975483775138855, - 0.018235305324196815, - 0.05253224074840546, - 0.024941300973296165, - -0.0569583959877491, - -0.008068302646279335, - 0.00033845938742160797, - -0.03012045845389366, - -0.009283711202442646, - 0.019301997497677803, - 0.024861197918653488, - -0.10825774818658829, - 0.014226483181118965, - -0.03699026256799698, - 0.09965601563453674, - -0.07935299724340439, - 0.10811513662338257, - -0.005107831209897995, - -0.046056970953941345, - -0.09999237209558487, - 0.0037021860480308533, - 0.0023497771471738815, - 0.03718119487166405, - 0.027923423796892166, - 0.06295756995677948, - -0.010731782764196396, - -0.06636888533830643, - 0.09514481574296951, - 0.06648585200309753, - 0.007089182734489441, - -0.09984470158815384, - -0.02658105455338955, - -0.030848020687699318, - 0.0550755150616169, - 0.03441673889756203, - -0.05427945777773857, - 0.019471045583486557, - 0.024769499897956848, - -0.016197985038161278, - 0.05553022772073746, - 0.0916881263256073, - 0.05958426743745804, - -0.10344059765338898 - ] - }, - "p244_409.wav": { - "name": "p244", - "embedding": [ - 0.04685479402542114, - 0.08793620765209198, - -0.04375693202018738, - 0.02922828122973442, - -0.04073556512594223, - 0.048139847815036774, - -0.12432301044464111, - 0.10058197379112244, - -0.043299127370119095, - 0.14477354288101196, - -0.07895662635564804, - 0.10296115279197693, - -0.02315559796988964, - -0.13970181345939636, - -0.03226865455508232, - 0.04191824048757553, - -0.017668165266513824, - -0.026027221232652664, - -0.050915420055389404, - -0.026309136301279068, - 0.04001901298761368, - 0.04038793593645096, - 0.03480706736445427, - -0.01849052496254444, - -0.0022871121764183044, - 0.07005549967288971, - 0.004157315474003553, - 0.0292053185403347, - 0.006603945046663284, - -0.005187880247831345, - 0.0023290254175662994, - 0.09867174923419952, - -0.0269942507147789, - -0.01603705622255802, - 0.010927428491413593, - 0.011978043243288994, - -0.016052542254328728, - -0.05749648064374924, - 0.01834302395582199, - 0.010225404985249043, - -0.03608110174536705, - 0.06224112585186958, - 0.025711048394441605, - 0.004586122930049896, - 0.037158068269491196, - -0.0499148815870285, - -0.05249282717704773, - -0.027453351765871048, - -0.09517663717269897, - 0.16614505648612976, - 0.10721215605735779, - 0.007173639256507158, - -0.08721701800823212, - -0.020116083323955536, - 0.09986774623394012, - 0.00765939150005579, - -0.07520962506532669, - -0.07176291942596436, - 0.042786870151758194, - 0.14679358899593353, - -0.01359262503683567, - -0.04063251242041588, - 0.02059154585003853, - 0.127417653799057, - 0.01747730001807213, - 0.06593339890241623, - 0.09820875525474548, - 0.08636270463466644, - -0.017594821751117706, - 0.01667419821023941, - 0.03657269850373268, - 0.04605276510119438, - 0.03849438577890396, - -0.038436055183410645, - 0.03968048095703125, - -0.03194167837500572, - -0.0075933621264994144, - 0.0039037386886775494, - -0.028130915015935898, - -0.07411304116249084, - -0.02016177773475647, - -0.005383030045777559, - -0.00918504036962986, - 0.03807658702135086, - -0.05168043076992035, - 0.020047640427947044, - 0.04268265888094902, - -0.04129219800233841, - 0.058822210878133774, - 0.04602697864174843, - 0.016203677281737328, - 0.0070342086255550385, - -0.05871604382991791, - -0.07247129827737808, - 0.05148777365684509, - 0.005216647870838642, - 0.0015004808083176613, - 0.06330367177724838, - 0.028280191123485565, - -0.0035252743400633335, - 0.10147664695978165, - 0.03806959092617035, - -0.017253413796424866, - -0.012614872306585312, - -0.07122364640235901, - 0.11995884776115417, - 0.1300797164440155, - -0.021409673616290092, - 0.025097183883190155, - -0.023122824728488922, - 0.01762845367193222, - 0.04973446577787399, - -0.11322826147079468, - -0.05679073929786682, - 0.022512219846248627, - 0.03559865057468414, - 0.013029510155320168, - 0.0857982337474823, - 0.01186261884868145, - 0.010817972011864185, - 0.08849571645259857, - -0.05632779747247696, - -0.07177706807851791, - -0.06310583651065826, - 0.04269396513700485, - -0.08041463792324066, - 0.039707157760858536, - 0.06490860879421234, - 0.01983034797012806, - -0.031055090948939323, - 0.0718628317117691, - -0.00395666528493166, - -0.0010917802574113011, - -0.007577957585453987, - -0.006820116192102432, - 0.04068881645798683, - -0.03394937887787819, - -0.011689173057675362, - 0.010379351675510406, - 0.004798884503543377, - 0.06318500638008118, - 0.006048180628567934, - 0.03342343121767044, - -0.07824191451072693, - 0.02239268459379673, - 0.048955388367176056, - 0.03480323776602745, - -0.027532635256648064, - -0.03347981348633766, - -0.018102135509252548, - -0.05839384347200394, - 0.006764193996787071, - -0.042738210409879684, - 0.08275645971298218, - 0.004514245316386223, - 0.011263545602560043, - 0.10799264907836914, - -0.020866746082901955, - 0.0016718126134946942, - -0.02056361921131611, - 0.016043413430452347, - 0.023401670157909393, - 0.0368221290409565, - -0.07489927113056183, - -0.07478682696819305, - 0.0030160630121827126, - 0.030737020075321198, - 3.1249597668647766e-05, - 0.029846955090761185, - 0.05880098044872284, - -0.01874908246099949, - 0.017438052222132683, - -0.06023382395505905, - 0.0256100594997406, - -0.07969028502702713, - -0.025224952027201653, - -0.007644301746040583, - -0.06536135822534561, - 0.0027620792388916016, - 0.06685669720172882, - 0.02920559048652649, - 0.023602580651640892, - -0.035304196178913116, - -0.07948566973209381, - -0.07861854881048203, - 0.07067568600177765, - 0.09690631926059723, - -0.02623526006937027, - 0.028365906327962875, - 0.06704262644052505, - -0.00489993579685688, - 0.01765313744544983, - 0.056844357401132584, - 0.08495189994573593, - -0.03747512400150299, - -0.024069178849458694, - -0.07115550339221954, - 0.0529637336730957, - 0.09276048839092255, - -0.09650485217571259, - -0.0758967250585556, - -0.06013265252113342, - -0.06398917734622955, - 0.037336770445108414, - -0.04513486474752426, - 0.0010640843538567424, - 0.06461844593286514, - -0.038739580661058426, - -0.1080198734998703, - -0.10775075852870941, - 0.08864559233188629, - -0.044962890446186066, - -0.0010441341437399387, - -0.06791872531175613, - 0.04533177614212036, - 0.057183071970939636, - 0.02732718363404274, - -0.06489136815071106, - -0.006031383760273457, - 0.011503057554364204, - -0.03434861823916435, - -0.00504462793469429, - 0.005573205649852753, - 0.043108440935611725, - -0.11503780633211136, - 0.00022062845528125763, - -0.07902361452579498, - 0.09089290350675583, - -0.06943564116954803, - 0.09067340940237045, - 0.016049236059188843, - -0.021370848640799522, - -0.09845273196697235, - 0.04548756778240204, - -0.003312797285616398, - 0.0626494288444519, - 0.03883887827396393, - 0.037379782646894455, - 0.020783545449376106, - -0.08334361016750336, - 0.09147583693265915, - 0.06296940892934799, - -0.01402687281370163, - -0.09347584843635559, - 0.008111551403999329, - -0.04015237092971802, - 0.04742976650595665, - 0.020302262157201767, - -0.04552299156785011, - -0.009486149996519089, - 0.012873087078332901, - -0.027863290160894394, - 0.08127377927303314, - 0.08999764919281006, - 0.04994462803006172, - -0.09845499694347382 - ] - }, - "p244_383.wav": { - "name": "p244", - "embedding": [ - 0.051961928606033325, - 0.1003323644399643, - -0.017048493027687073, - 0.018067607656121254, - -0.07055257260799408, - 0.08750578761100769, - -0.12543126940727234, - 0.13217034935951233, - -0.07462392747402191, - 0.13187451660633087, - -0.056843094527721405, - 0.12461845576763153, - -0.023163778707385063, - -0.18079997599124908, - -0.0441136509180069, - 0.06553854793310165, - -0.06358849257230759, - -0.0434214249253273, - -0.044098399579524994, - -0.021019574254751205, - 0.029718656092882156, - 0.017701543867588043, - 0.029648669064044952, - 0.012301245704293251, - 0.040944695472717285, - 0.07280528545379639, - 0.00027831620536744595, - 0.04027874767780304, - 0.016047129407525063, - -0.05634850636124611, - -0.0489109642803669, - 0.09499888122081757, - -0.048477064818143845, - 0.008584467694163322, - 0.057903241366147995, - -0.01419786922633648, - 0.01219463162124157, - -0.07800684869289398, - -0.028425432741642, - 0.00809280201792717, - -0.03446090221405029, - 0.09030009061098099, - 0.04687321186065674, - -0.010356348939239979, - 0.016451876610517502, - 0.01680051162838936, - -0.008619408123195171, - -0.04263073578476906, - -0.10421565175056458, - 0.15752077102661133, - 0.056104473769664764, - -0.009202159941196442, - -0.06626339256763458, - -0.06975889205932617, - 0.12783098220825195, - -0.01600278913974762, - -0.12269507348537445, - -0.043098825961351395, - 0.07372093200683594, - 0.15820667147636414, - -0.033350471407175064, - -0.023331576958298683, - 0.013287276029586792, - 0.12921252846717834, - 0.05306554585695267, - 0.0991314947605133, - 0.06547370553016663, - 0.1119549348950386, - -0.0055655972100794315, - 0.03039177507162094, - 0.07324860990047455, - 0.06838526576757431, - 0.023079385980963707, - -0.021022500470280647, - 0.03220806270837784, - -0.0046750339679419994, - -0.025149229913949966, - 0.011302920058369637, - -0.023519933223724365, - -0.015441217459738255, - -0.023698799312114716, - 0.0074646794237196445, - 0.010292783379554749, - 0.014224608428776264, - -0.02153194695711136, - 0.06688288599252701, - 0.022209059447050095, - -0.006022770889103413, - 0.07282760739326477, - 0.044977832585573196, - 0.005059376358985901, - 0.06954288482666016, - -0.07200536131858826, - -0.09265932440757751, - 0.027055755257606506, - 0.008123675361275673, - 0.024042509496212006, - 0.07340489327907562, - 0.04390253126621246, - -0.012373756617307663, - 0.11459733545780182, - 0.0699889063835144, - 0.0016110099386423826, - 0.027886558324098587, - -0.09250708669424057, - 0.1322990208864212, - 0.07789024710655212, - -0.01871161162853241, - 0.045396819710731506, - -0.03997617959976196, - 0.09187410771846771, - 0.07895757257938385, - -0.14746510982513428, - -0.08441343903541565, - 0.03229851275682449, - 0.0033712172880768776, - -0.020488983020186424, - 0.11600017547607422, - -0.02533874660730362, - 0.023185715079307556, - 0.0937386229634285, - -0.07268008589744568, - -0.05123534053564072, - -0.01627180352807045, - 0.04241780936717987, - -0.07002796232700348, - 0.047854818403720856, - 0.05044017359614372, - -0.016877397894859314, - 0.009910564869642258, - 0.08756381273269653, - -0.011729761958122253, - -0.01523641124367714, - 0.04429970309138298, - -0.04510272666811943, - 0.037817202508449554, - -0.018301397562026978, - 0.014023780822753906, - 0.054726339876651764, - 0.04314921796321869, - 0.03982646018266678, - -0.012394670397043228, - -0.010857694782316685, - -0.10159504413604736, - 0.015221023932099342, - 0.03230646252632141, - 0.07798334956169128, - -0.0017948232125490904, - -0.019101493060588837, - -0.03811134397983551, - -0.07298411428928375, - 0.011663136072456837, - -0.009585989639163017, - 0.09579212963581085, - -0.01879912242293358, - 0.006130516063421965, - 0.09789858758449554, - 0.0342482291162014, - -0.0011248192749917507, - -0.05996484309434891, - -0.023943185806274414, - 0.02453167736530304, - 0.05605415627360344, - -0.07065753638744354, - -0.06291016936302185, - 0.009846445173025131, - 0.023003805428743362, - -0.027681700885295868, - 0.04410000145435333, - 0.03913647308945656, - 0.01910785399377346, - 0.04239189624786377, - -0.07289816439151764, - 0.034440405666828156, - -0.10424042493104935, - -0.04052029550075531, - -0.015168413519859314, - -0.028848329558968544, - -0.03157287836074829, - 0.0802823007106781, - 0.026244379580020905, - 0.04280152916908264, - -0.006335328333079815, - -0.0749741643667221, - -0.05914945900440216, - 0.06858363002538681, - 0.07021918892860413, - 0.000763176241889596, - 0.04322409629821777, - 0.06144925579428673, - -0.010214393958449364, - 0.04603702202439308, - 0.06312006711959839, - 0.0953521579504013, - -0.028142109513282776, - 0.010612444020807743, - -0.06260417401790619, - 0.08707071840763092, - 0.06325779110193253, - -0.11406780779361725, - -0.07898841798305511, - -0.021939242258667946, - -0.04755283147096634, - 0.037323251366615295, - -0.027789587154984474, - 0.0020862098317593336, - 0.015445382334291935, - -0.005642781034111977, - -0.0980280339717865, - -0.09309989213943481, - 0.09758290648460388, - -0.08088277280330658, - -0.005045594647526741, - -0.08008280396461487, - 0.041569650173187256, - 0.09665770828723907, - 0.040046967566013336, - -0.031826864928007126, - 0.006445502862334251, - 0.05165369063615799, - -0.034595124423503876, - 0.0036665690131485462, - 0.055092327296733856, - 0.02016792632639408, - -0.10122118890285492, - 0.005300299264490604, - -0.07198093086481094, - 0.0713411420583725, - -0.04767174273729324, - 0.17677190899848938, - -0.0032451448496431112, - -0.04714808613061905, - -0.07698563486337662, - 0.04146338999271393, - -0.03307162970304489, - 0.04928438365459442, - 0.0498884841799736, - 0.06690670549869537, - 0.031358830630779266, - -0.04890427365899086, - 0.1271275132894516, - 0.02913709171116352, - -0.04459039866924286, - -0.06731998920440674, - -0.027370931580662727, - -0.038073860108852386, - 0.03338006138801575, - 0.020839311182498932, - -0.09409113973379135, - -0.012980536557734013, - 0.02861589938402176, - -0.02328113466501236, - 0.08477555215358734, - 0.14055627584457397, - 0.08853550255298615, - -0.10171560943126678 - ] - }, - "p244_378.wav": { - "name": "p244", - "embedding": [ - 0.07356055825948715, - 0.05589265376329422, - -0.05945421755313873, - 0.03800595924258232, - -0.03501341491937637, - 0.02806919999420643, - -0.1278119683265686, - 0.09322462975978851, - 0.021685456857085228, - 0.1050618439912796, - -0.08123091608285904, - 0.0777692124247551, - -0.01877608150243759, - -0.09897693991661072, - 0.007780164014548063, - 0.0407402403652668, - -0.01226705964654684, - -0.019103296101093292, - -0.04354848712682724, - -0.007672389969229698, - 0.018578730523586273, - 0.03378306329250336, - 0.02888748236000538, - -0.040145620703697205, - 0.0014858078211545944, - 0.029446661472320557, - -0.013040252029895782, - -0.010183245874941349, - 0.01235133595764637, - 0.03054446540772915, - 0.022034214809536934, - 0.08431374281644821, - -0.03189873322844505, - 0.01479547843337059, - 0.04258693754673004, - 0.03870873153209686, - -0.034444473683834076, - -0.08442743122577667, - 0.006506294943392277, - -0.0027760425582528114, - -0.04542090743780136, - 0.07608649134635925, - 0.06165623292326927, - -0.06301800906658173, - 0.026480767875909805, - -0.00973721593618393, - -0.03223550692200661, - -0.02224026806652546, - -0.09143906831741333, - 0.16835880279541016, - 0.039792563766241074, - 0.020243171602487564, - -0.10544183850288391, - 0.0020604245364665985, - 0.06060638278722763, - 0.009718148969113827, - -0.04116726666688919, - -0.06553290784358978, - 0.025907723233103752, - 0.10810049623250961, - 0.004344447515904903, - -0.05155990272760391, - 0.016360482200980186, - 0.08970555663108826, - 0.04541507735848427, - 0.03530251979827881, - 0.07450313866138458, - 0.11716167628765106, - -0.024232065305113792, - 0.03948289155960083, - 0.07270722836256027, - 0.06019134819507599, - 0.04584244266152382, - 0.00047132931649684906, - 0.030714111402630806, - -0.026641711592674255, - -0.038248371332883835, - 0.01883004605770111, - -0.008875141851603985, - -0.06477877497673035, - -0.004779006354510784, - -0.0374729186296463, - 0.021545862779021263, - 0.06831329315900803, - -0.05458468198776245, - 0.00617500115185976, - 0.0787617638707161, - -0.0373375341296196, - 0.05991886556148529, - 0.0575408935546875, - 0.0020321765914559364, - 0.015993759036064148, - -0.0632714182138443, - -0.11278493702411652, - 0.009301645681262016, - -0.0337182953953743, - 0.06480618566274643, - 0.027052270248532295, - 0.039097510278224945, - 0.004699346609413624, - 0.07877302914857864, - 0.020960720255970955, - -0.006511107087135315, - 0.006062701344490051, - -0.060463957488536835, - 0.1382732391357422, - 0.12174190580844879, - -0.011481370776891708, - -0.0029270295053720474, - -0.043971166014671326, - 0.012903242371976376, - 0.045638203620910645, - -0.08375333249568939, - -0.03309832140803337, - 0.027462894096970558, - 0.03223282843828201, - 0.031752005219459534, - 0.12050914764404297, - 0.03856905922293663, - 0.022082416340708733, - 0.08624481409788132, - -0.08006644248962402, - -0.0688156932592392, - -0.00579611724242568, - 0.010021553374826908, - -0.058083657175302505, - 0.028511494398117065, - 0.057241059839725494, - 0.0008386839181184769, - -0.019197754561901093, - 0.06484843790531158, - 0.014739526435732841, - 0.024629533290863037, - -0.0394451878964901, - 0.02764122374355793, - 0.09091601520776749, - -0.005300463642925024, - 0.002080010250210762, - 0.07260888814926147, - 0.034074895083904266, - 0.06224292516708374, - 0.04912911355495453, - -0.0018699094653129578, - -0.11282136291265488, - 0.017588814720511436, - 0.08783174306154251, - 0.0471578873693943, - -0.05129261687397957, - -0.04582088440656662, - -0.02439703419804573, - -0.07250069826841354, - 0.04735745117068291, - -0.007515303790569305, - 0.05026981979608536, - 0.018632452934980392, - -0.02232292667031288, - 0.11856301128864288, - -0.03178063780069351, - 0.01418782863765955, - -0.02839784510433674, - 0.0079102274030447, - 0.025792010128498077, - 0.055774617940187454, - -0.08857817947864532, - -0.08377858996391296, - -0.0154368095099926, - 0.014051815494894981, - -0.015000306069850922, - -0.015888558700680733, - 0.06890768557786942, - -0.042123377323150635, - 0.032062508165836334, - -0.06658543646335602, - 0.014344142749905586, - -0.1122901663184166, - -0.037244632840156555, - -0.007160098757594824, - -0.039838001132011414, - 0.021749725565314293, - 0.08088943362236023, - -0.00023683346807956696, - 0.04669029638171196, - -0.030722428113222122, - -0.08501829206943512, - -0.0318550169467926, - 0.06577138602733612, - 0.05816980451345444, - -0.052318256348371506, - 0.02558310329914093, - 0.06252837926149368, - 0.02095206454396248, - -0.022422535344958305, - 0.0358896404504776, - 0.09545740485191345, - -0.0512487068772316, - -0.05405928194522858, - -0.06993772834539413, - 0.1120176613330841, - 0.09925265610218048, - -0.08723784238100052, - -0.05390038341283798, - -0.06408318132162094, - -0.028612671419978142, - -0.006222091615200043, - -0.05771072953939438, - -0.002332533011212945, - 0.04149501025676727, - -0.03364880383014679, - -0.10011672973632812, - -0.11556599289178848, - 0.028742685914039612, - -0.034020379185676575, - 0.019509855657815933, - -0.0727621465921402, - 0.01974644511938095, - 0.0215227622538805, - 0.027389343827962875, - -0.06032874435186386, - 0.019723227247595787, - -0.028119247406721115, - -0.061273664236068726, - -0.0449526384472847, - -0.01403660699725151, - 0.021733634173870087, - -0.08589866012334824, - -0.03290513530373573, - -0.05381286144256592, - 0.08086198568344116, - -0.04885432869195938, - 0.12307758629322052, - -0.007276137359440327, - -0.04249221086502075, - -0.07332247495651245, - -0.014989707618951797, - -0.026630859822034836, - 0.042871274054050446, - 0.07317540049552917, - 0.02236509695649147, - 0.0022440142929553986, - -0.06589357554912567, - 0.09296076744794846, - 0.062490496784448624, - 0.006272461730986834, - -0.06615958362817764, - -0.0058995019644498825, - -0.03407098352909088, - 0.039558045566082, - 0.00854878406971693, - -0.03187225013971329, - 0.047718171030282974, - 0.009061017073690891, - -0.02550385892391205, - 0.03765734285116196, - 0.06623832136392593, - 0.07305961102247238, - -0.08090965449810028 - ] - }, - "p244_316.wav": { - "name": "p244", - "embedding": [ - 0.052700091153383255, - 0.0929516851902008, - -0.023888561874628067, - 0.0279436893761158, - -0.06362634897232056, - 0.06653910875320435, - -0.1519125998020172, - 0.15338334441184998, - -0.03791432827711105, - 0.1356513798236847, - -0.05498111620545387, - 0.11340752243995667, - -0.02968265861272812, - -0.18666476011276245, - -0.009932130575180054, - 0.06142764165997505, - -0.02104286104440689, - -0.029441412538290024, - -0.027081826701760292, - -0.026479169726371765, - 0.023233771324157715, - 0.03504034876823425, - 0.012360403314232826, - 0.00651122909039259, - 0.041588641703128815, - 0.06240413337945938, - -0.022528182715177536, - 0.02042488567531109, - -0.011082634329795837, - -0.04184785485267639, - -0.04227110743522644, - 0.10580919682979584, - -0.06375288963317871, - 0.0057821571826934814, - 0.05385284870862961, - -0.012872878462076187, - -0.017697293311357498, - -0.06033528596162796, - -0.019461628049612045, - -0.001991869416087866, - -0.048481088131666183, - 0.07852614670991898, - 0.04392426088452339, - -0.007684227079153061, - 0.04456692934036255, - 0.017552457749843597, - -0.004163527395576239, - -0.043853141367435455, - -0.10957206040620804, - 0.15362334251403809, - 0.05158037692308426, - 0.0018751485040411353, - -0.08021630346775055, - -0.05423900485038757, - 0.10426251590251923, - -0.014155292883515358, - -0.10936152935028076, - -0.03749626874923706, - 0.08116064965724945, - 0.15562471747398376, - -0.030938956886529922, - -0.04333607852458954, - 0.023340702056884766, - 0.11511082202196121, - 0.059885162860155106, - 0.08908820152282715, - 0.07134212553501129, - 0.12082219123840332, - -0.022596009075641632, - 0.004966703709214926, - 0.058523282408714294, - 0.05392798036336899, - 0.05120730400085449, - -0.020771343261003494, - 0.017915882170200348, - -0.0011706710793077946, - -0.017064567655324936, - -0.0023517608642578125, - -0.024368327111005783, - -0.022327203303575516, - -0.01021807361394167, - 0.007941008545458317, - 0.010619237087666988, - 0.031403254717588425, - -0.0317842923104763, - 0.05075250566005707, - 0.0616997629404068, - -0.009904734790325165, - 0.08016122877597809, - 0.035082437098026276, - 0.0042455620132386684, - 0.0721815824508667, - -0.09732714295387268, - -0.06773847341537476, - 0.04387860745191574, - 9.427615441381931e-05, - 0.02445049025118351, - 0.06994818150997162, - 0.03845995292067528, - -0.012764198705554008, - 0.12626715004444122, - 0.04812723770737648, - 0.006713204551488161, - 0.03481718525290489, - -0.0925331637263298, - 0.13354972004890442, - 0.0752970352768898, - -0.026998694986104965, - 0.06647384911775589, - -0.05032973736524582, - 0.0625457763671875, - 0.06192457303404808, - -0.13637584447860718, - -0.06534100323915482, - 0.04106352850794792, - 0.02742895483970642, - -0.02337820641696453, - 0.1424683779478073, - 0.005762106738984585, - 0.04011613875627518, - 0.10318666696548462, - -0.10421924293041229, - -0.05735648050904274, - -0.007292265072464943, - 0.05085386335849762, - -0.08383700251579285, - 0.05903032049536705, - 0.07045300304889679, - -0.019930727779865265, - 0.02935514971613884, - 0.07605119794607162, - 0.001593107241205871, - 0.009753161109983921, - 0.009368106722831726, - -0.03470921516418457, - 0.016810979694128036, - -0.009193592704832554, - 0.0027433810755610466, - 0.0350138358771801, - 0.02556873857975006, - 0.05376753956079483, - -0.007857490330934525, - -0.01575278863310814, - -0.127521812915802, - 0.009785253554582596, - 0.04219074547290802, - 0.08773767203092575, - -0.01986626349389553, - -0.019652361050248146, - -0.040934719145298004, - -0.07552634179592133, - 0.012308219447731972, - -0.005414648912847042, - 0.08072786033153534, - -0.019961705431342125, - 0.0008645387133583426, - 0.1032775342464447, - 0.053825534880161285, - 0.002344182226806879, - -0.05937627702951431, - -0.03791382536292076, - 0.0008208039798773825, - 0.057626109570264816, - -0.09082728624343872, - -0.07520343363285065, - -0.01682969741523266, - 0.035550136119127274, - -0.027083538472652435, - 0.06699420511722565, - 0.04934248328208923, - 0.027304351329803467, - 0.02773827686905861, - -0.06642135977745056, - 0.02544267475605011, - -0.09791061282157898, - -0.06968384981155396, - -0.004751099739223719, - -0.005411320365965366, - -0.03227407857775688, - 0.08906125277280807, - 0.02509111911058426, - 0.05626029521226883, - -0.03150084614753723, - -0.05263696610927582, - -0.07094071060419083, - 0.054428473114967346, - 0.05072002485394478, - -0.02138522081077099, - 0.038732171058654785, - 0.05407753214240074, - -0.03880320116877556, - 0.04613623768091202, - 0.07538020610809326, - 0.10260307043790817, - -0.030366992577910423, - 0.03377996012568474, - -0.06664805114269257, - 0.09236228466033936, - 0.08922755718231201, - -0.08803154528141022, - -0.0937456339597702, - -0.02727394551038742, - -0.061081238090991974, - 0.02961682714521885, - -0.03202976658940315, - 0.009151730686426163, - 0.02037006802856922, - -0.007407433353364468, - -0.09795951843261719, - -0.09833365678787231, - 0.07409115135669708, - -0.06667649000883102, - 0.0068628969602286816, - -0.09085752069950104, - 0.053731128573417664, - 0.09055349230766296, - 0.034323737025260925, - -0.03714621812105179, - -0.023434627801179886, - 0.04656856507062912, - -0.02731327898800373, - 0.017679894343018532, - 0.06925743073225021, - 0.04674549773335457, - -0.10776910185813904, - -0.0018035814864560962, - -0.0635765790939331, - 0.07072868943214417, - -0.03822845220565796, - 0.16871008276939392, - 0.017064228653907776, - -0.04961357265710831, - -0.07662384957075119, - 0.036921948194503784, - -0.00830315425992012, - 0.04372786730527878, - 0.021670814603567123, - 0.07118090242147446, - 0.05179349333047867, - -0.042572442442178726, - 0.11008737981319427, - 0.03477926552295685, - -0.043584711849689484, - -0.054557688534259796, - -0.047779954969882965, - -0.04735986888408661, - 0.03721203655004501, - 0.0026129158213734627, - -0.10442133247852325, - -0.022919142618775368, - 0.03027445822954178, - 0.005656575318425894, - 0.06177434325218201, - 0.13987630605697632, - 0.06399593502283096, - -0.12579426169395447 - ] - }, - "p244_221.wav": { - "name": "p244", - "embedding": [ - 0.07544361799955368, - 0.04451741650700569, - -0.027681507170200348, - -0.004374104086309671, - -0.03241364285349846, - 0.03483644127845764, - -0.1356535702943802, - 0.12629100680351257, - -0.02857455611228943, - 0.08419238775968552, - -0.060268834233284, - 0.09003345668315887, - 0.008131748996675014, - -0.11563482880592346, - -0.033083476126194, - 0.025542940944433212, - 0.0027588587254285812, - -0.0035776710137724876, - -0.05997627601027489, - -0.022124825045466423, - 0.016603093594312668, - 0.0442960150539875, - 0.0009426684118807316, - -0.03988586738705635, - 0.03324153274297714, - 0.04289409518241882, - 0.010043145157396793, - 0.007975700311362743, - -0.005881816148757935, - 0.026675695553421974, - 0.009460016153752804, - 0.08440985530614853, - -0.05186442658305168, - -0.006030024960637093, - 0.059637054800987244, - 0.0069310637190938, - -0.015985246747732162, - -0.09521479904651642, - -0.016185719519853592, - 0.0013244310393929482, - -0.04903902858495712, - 0.08735046535730362, - 0.07502584159374237, - -0.02874191664159298, - 0.022333383560180664, - 0.026043782010674477, - 0.02701025828719139, - -0.06272056698799133, - -0.11332813650369644, - 0.16552746295928955, - -0.0015889890491962433, - 0.03540879487991333, - -0.12433241307735443, - -0.0137989092618227, - 0.08850128948688507, - -0.023125357925891876, - -0.0268558356910944, - -0.059244394302368164, - 0.02296876162290573, - 0.12654384970664978, - -0.01724345237016678, - -0.06185368075966835, - 0.02098693512380123, - 0.06467089056968689, - 0.05114338546991348, - 0.0362543947994709, - 0.11736927926540375, - 0.10611967742443085, - -0.026200182735919952, - 0.03454611822962761, - 0.04848644509911537, - 0.044430576264858246, - 0.013795167207717896, - -0.0289194006472826, - 0.027604494243860245, - -0.016849443316459656, - -0.03174396604299545, - 0.014437769539654255, - -0.02487555332481861, - -0.046981073915958405, - 0.010058768093585968, - 0.029266290366649628, - 0.03528539091348648, - 0.058564089238643646, - -0.08809112757444382, - 0.0531306117773056, - 0.046964868903160095, - -0.03604850545525551, - 0.07159565389156342, - 0.05380944535136223, - -0.0048292772844433784, - 0.0006522573530673981, - -0.07115405052900314, - -0.09153519570827484, - 0.019619170576334, - -0.014065293595194817, - 0.02214129827916622, - 0.04206022620201111, - 0.029126591980457306, - -0.00046254461631178856, - 0.09456859529018402, - 0.03324053809046745, - -0.0020092418417334557, - 0.00805889442563057, - -0.05740227550268173, - 0.11870633065700531, - 0.10924728214740753, - -0.010181987658143044, - 0.023776385933160782, - -0.0701700747013092, - 0.015464826487004757, - 0.049053654074668884, - -0.0961197093129158, - -0.07427269220352173, - 0.06160321831703186, - 0.032257817685604095, - 0.029683345928788185, - 0.1301005333662033, - -0.00784414354711771, - 0.013699506409466267, - 0.062298692762851715, - -0.08916642516851425, - -0.049913786351680756, - 0.008299124427139759, - 0.024506159126758575, - -0.03554802015423775, - 0.03293517231941223, - 0.05522609502077103, - -0.0003453441895544529, - -0.015393728390336037, - 0.06837913393974304, - 0.012430734932422638, - 0.010460647754371166, - -0.03049779310822487, - 0.04884966090321541, - 0.07646574079990387, - 0.02368527092039585, - -0.041405435651540756, - 0.028268422931432724, - 0.06265530735254288, - 0.046602096408605576, - 0.025626882910728455, - -0.013589153066277504, - -0.10694529116153717, - 0.002043513348326087, - 0.07029065489768982, - 0.06960459798574448, - -0.04823829233646393, - -0.037672240287065506, - -0.06410814076662064, - -0.04821501672267914, - -0.016810446977615356, - 0.0041579026728868484, - 0.0732460767030716, - 0.01337234303355217, - 0.01848025992512703, - 0.11203384399414062, - -0.00029760412871837616, - 0.028643043711781502, - -0.02242138981819153, - 0.021852931007742882, - 0.01564384438097477, - 0.0515604168176651, - -0.013542469590902328, - -0.08595363795757294, - -0.014480408281087875, - 0.012784597463905811, - -0.02818400040268898, - 0.00942278653383255, - 0.02582516148686409, - -0.00949062779545784, - 0.034442827105522156, - -0.12301231920719147, - 0.04304298385977745, - -0.12715674936771393, - 0.009744586423039436, - 0.006621603854000568, - -0.027041062712669373, - -0.008574966341257095, - 0.0894930437207222, - 0.025788266211748123, - 0.05943181738257408, - -0.01720021292567253, - -0.09868359565734863, - -0.028377655893564224, - 0.04999697208404541, - 0.08452276885509491, - -0.04848510026931763, - 0.004371732473373413, - 0.029633231461048126, - 0.03038657084107399, - 0.006165863946080208, - 0.07798436284065247, - 0.05496424436569214, - -0.030187522992491722, - -0.04236677289009094, - -0.020290227606892586, - 0.13149237632751465, - 0.03132545202970505, - -0.0879700630903244, - -0.05835426598787308, - -0.010684439912438393, - -0.04421423748135567, - -0.02981261909008026, - 0.002373363357037306, - 0.041454046964645386, - 0.03771060332655907, - -0.007370452396571636, - -0.11240511387586594, - -0.07204774022102356, - 0.019258588552474976, - -0.06044713780283928, - 0.014948980882763863, - -0.06785193085670471, - 0.023733096197247505, - 0.09173132479190826, - 0.026040010154247284, - -0.0038448739796876907, - -0.061807870864868164, - -0.03989121690392494, - -0.058476440608501434, - -0.03318732976913452, - -0.008631851524114609, - 0.034299299120903015, - -0.07333514094352722, - 0.025858450680971146, - -0.041163887828588486, - 0.08868387341499329, - -0.033839523792266846, - 0.12196126580238342, - 0.010845334269106388, - -0.07047492265701294, - -0.0878961831331253, - -0.010384556837379932, - -0.023336024954915047, - 0.0555521659553051, - 0.04085809737443924, - 0.018407411873340607, - 0.014211077243089676, - -0.06210947781801224, - 0.07970467209815979, - 0.0685562789440155, - -0.040377214550971985, - -0.06374724209308624, - -0.04796559363603592, - -0.015626423060894012, - 0.029782220721244812, - 0.015717513859272003, - -0.013266988098621368, - 0.014829211868345737, - 0.021852387115359306, - -0.03533736616373062, - 0.06431969255208969, - 0.0846015214920044, - 0.0581100769340992, - -0.10572266578674316 - ] - }, - "p244_187.wav": { - "name": "p244", - "embedding": [ - 0.012596029788255692, - 0.061141159385442734, - -0.05705878883600235, - 0.05083771422505379, - -0.07559505850076675, - 0.06834843754768372, - -0.12949217855930328, - 0.10235853493213654, - -0.04765508323907852, - 0.1339765042066574, - -0.03977084532380104, - 0.09403165429830551, - -0.04301803931593895, - -0.1925627440214157, - -0.010889668017625809, - 0.068511001765728, - -0.055938709527254105, - -0.07704132050275803, - -0.05660233274102211, - -0.022700419649481773, - 0.029209647327661514, - 0.04498206824064255, - -0.012401353567838669, - 0.010396387428045273, - 0.002286086091771722, - 0.08178050071001053, - -0.04011232405900955, - -0.006387907080352306, - -0.025729957967996597, - -0.031707413494586945, - -0.048216212540864944, - 0.10317922383546829, - -0.06678211688995361, - -0.010074969381093979, - 0.01823790743947029, - 0.00016468582907691598, - -0.0065436577424407005, - -0.0403321273624897, - 0.0036215484142303467, - 0.007762003690004349, - -0.07703083008527756, - 0.0746045932173729, - 0.029316946864128113, - 0.015015416778624058, - 0.05132196843624115, - -0.018086260184645653, - -0.04280591756105423, - -0.03409750387072563, - -0.10172679275274277, - 0.15774837136268616, - 0.09488138556480408, - -0.025287648662924767, - -0.042640987783670425, - -0.04880565032362938, - 0.09212595224380493, - 0.01593508943915367, - -0.14055019617080688, - -0.0841282308101654, - 0.08707362413406372, - 0.1419597566127777, - -0.017066320404410362, - -0.02310837060213089, - 0.018172737210989, - 0.11889756470918655, - 0.06390821188688278, - 0.08446422219276428, - 0.052047405391931534, - 0.11497338861227036, - -0.014206906780600548, - -0.025666479021310806, - 0.09210590273141861, - 0.04044613987207413, - 0.06135544553399086, - -0.01846320927143097, - 0.03767913207411766, - -0.012173598632216454, - -0.0037247275467962027, - -0.0049050841480493546, - -0.020324071869254112, - -0.02007388137280941, - -2.7015663363272324e-05, - -0.0033866402227431536, - -0.007547921501100063, - 0.035591065883636475, - -0.0162662323564291, - 0.03591470420360565, - 0.08923507481813431, - -0.020721787586808205, - 0.06747323274612427, - 0.05030103027820587, - -0.00071132299490273, - 0.07596778124570847, - -0.08439666032791138, - -0.044020406901836395, - 0.05147150158882141, - 0.015285339206457138, - 0.010167823173105717, - 0.05438341200351715, - 0.024745512753725052, - -0.01831781305372715, - 0.10467488318681717, - 0.004066504072397947, - -0.0061568450182676315, - 0.02328832820057869, - -0.10010657459497452, - 0.13986125588417053, - 0.08326171338558197, - -0.022993624210357666, - 0.01926986686885357, - -0.021677298471331596, - 0.05835209786891937, - 0.05689062923192978, - -0.11279657483100891, - -0.0498005636036396, - 0.045727308839559555, - 0.0048836832866072655, - -0.044865477830171585, - 0.14888601005077362, - 0.026633255183696747, - 0.027824513614177704, - 0.12680459022521973, - -0.10056325048208237, - -0.04986267909407616, - -0.013736365363001823, - 0.036769237369298935, - -0.08810079097747803, - 0.041473980993032455, - 0.07428628206253052, - -0.008025162853300571, - 0.03350050374865532, - 0.0784645527601242, - -0.00801876187324524, - 0.007479770574718714, - -4.6828266931697726e-05, - -0.04600667208433151, - 0.032336801290512085, - 0.0022146268747746944, - -0.007334074471145868, - 0.06355356425046921, - 0.0016760729486122727, - 0.058715928345918655, - -0.04301973432302475, - -0.00919408816844225, - -0.1290985494852066, - 0.028733201324939728, - 0.039158087223768234, - 0.06416044384241104, - -0.02491261437535286, - 0.012849229387938976, - -0.045506205409765244, - -0.0949413850903511, - 0.027799611911177635, - -0.027233976870775223, - 0.09099190682172775, - -0.033994294703006744, - -0.035373471677303314, - 0.09827195852994919, - 0.03844418004155159, - 9.681371011538431e-05, - -0.05182254686951637, - -0.049993935972452164, - 0.008803656324744225, - 0.061391640454530716, - -0.10460279881954193, - -0.055654119700193405, - -0.017895681783556938, - 0.05463574081659317, - 0.002846270566806197, - 0.05532701313495636, - 0.07213053852319717, - 0.02373330108821392, - 0.0012804149882867932, - -0.06415741890668869, - 0.0357990637421608, - -0.06807565689086914, - -0.05571776628494263, - -0.0122703080996871, - -0.04815077409148216, - -0.019920460879802704, - 0.09116028249263763, - 0.0012234277091920376, - 0.020913096144795418, - -0.055766765028238297, - -0.07920531183481216, - -0.06939610093832016, - 0.06947250664234161, - 0.06028511002659798, - -0.029401525855064392, - 0.04803619533777237, - 0.06251256167888641, - -0.04168091341853142, - 0.017523834481835365, - 0.052871666848659515, - 0.14806526899337769, - -0.04210107773542404, - 0.033903852105140686, - -0.06969629973173141, - 0.09020831435918808, - 0.07265383005142212, - -0.0707852691411972, - -0.05689510703086853, - -0.017131086438894272, - -0.04732293635606766, - 0.048709820955991745, - -0.06991229951381683, - 0.0026000456418842077, - 0.03500436618924141, - 0.005721741355955601, - -0.1188526526093483, - -0.10222496092319489, - 0.07778771966695786, - -0.06075313314795494, - 0.003890916472300887, - -0.10510808229446411, - 0.04672253131866455, - 0.065401092171669, - 0.047018345445394516, - -0.06819487363100052, - 0.018421677872538567, - 0.05455322191119194, - -0.012032059021294117, - 0.04431229457259178, - 0.0657096654176712, - 0.043636422604322433, - -0.11881764233112335, - -0.0529114231467247, - -0.08091261237859726, - 0.07293780148029327, - -0.03999851271510124, - 0.14216472208499908, - 0.01532393041998148, - -0.01431943941861391, - -0.07718434184789658, - 0.06583579629659653, - 0.006376232951879501, - 0.058955155313014984, - 0.038301605731248856, - 0.08492980152368546, - 0.057431332767009735, - -0.022452017292380333, - 0.11928348988294601, - 0.04299422726035118, - -0.024492546916007996, - -0.04528416320681572, - -0.012552957981824875, - -0.05504211038351059, - 0.04242349788546562, - 0.020605294033885002, - -0.1146371066570282, - -0.001904359902255237, - 0.04225528985261917, - 0.0016734092496335506, - 0.05993179231882095, - 0.12889130413532257, - 0.07609815895557404, - -0.09642072767019272 - ] - }, - "p244_244.wav": { - "name": "p244", - "embedding": [ - 0.015157620422542095, - 0.1280662566423416, - 0.012902977876365185, - 0.008541541174054146, - -0.023153753951191902, - 0.07905904203653336, - -0.10465726256370544, - 0.13588006794452667, - -0.09854014217853546, - 0.15237274765968323, - -0.11579623818397522, - 0.08611460775136948, - -0.05950622260570526, - -0.16523081064224243, - -0.061877913773059845, - 0.04828590527176857, - -0.05972617492079735, - 0.02642555721104145, - -0.05299194157123566, - 0.012029719538986683, - 0.056963786482810974, - 0.01583811081945896, - 0.01436976995319128, - -0.023658983409404755, - 0.023346658796072006, - 0.02925366349518299, - 0.034538548439741135, - 0.06582436710596085, - 0.05200430005788803, - -0.0500522181391716, - -0.019896874204277992, - 0.14044435322284698, - -0.015244483016431332, - 0.027770008891820908, - 0.08281218260526657, - 0.014411162585020065, - 0.009064699523150921, - -0.045264992862939835, - -0.001370408572256565, - 0.0006966405780985951, - -0.027426065877079964, - 0.03869946300983429, - 0.007182638626545668, - 0.02760354056954384, - 0.04760516434907913, - 0.04462026432156563, - -0.032199230045080185, - -0.0444796048104763, - -0.06649202108383179, - 0.16035136580467224, - 0.057884152978658676, - -0.016115663573145866, - -0.06668198108673096, - -0.10085226595401764, - 0.11680220067501068, - 0.003864242462441325, - -0.1287318915128708, - -0.03475351259112358, - 0.10727717727422714, - 0.18859662115573883, - -0.009541080333292484, - -0.008865938521921635, - -0.0021360195241868496, - 0.11548824608325958, - -0.02306295558810234, - 0.115117147564888, - 0.04356386139988899, - 0.05877058953046799, - 0.06309426575899124, - 0.06548969447612762, - 0.0502641424536705, - 0.03158501535654068, - -0.007655811496078968, - -0.04324665293097496, - 0.03878512233495712, - -0.021659985184669495, - -0.03017851710319519, - 0.05297819897532463, - -0.02193160355091095, - -0.024461058899760246, - -0.014537391252815723, - 0.02656308002769947, - -0.010496634989976883, - -0.02818768285214901, - -0.02320687659084797, - 0.05188872665166855, - -0.03935471922159195, - 0.006939942017197609, - 0.08570580929517746, - 0.04858342185616493, - 0.015884390100836754, - 0.030341383069753647, - -0.026812471449375153, - -0.13850785791873932, - -0.015858955681324005, - -0.003745785215869546, - -0.008354886434972286, - 0.05596143379807472, - 0.01924893818795681, - -0.021216878667473793, - 0.10027248412370682, - 0.061965975910425186, - 0.014054552651941776, - 0.03820875659584999, - -0.13620363175868988, - 0.10815736651420593, - 0.06344486773014069, - 0.005911736749112606, - 0.03330852836370468, - -0.02108769491314888, - 0.09143178910017014, - 0.09591739624738693, - -0.1506294161081314, - -0.08359047025442123, - 0.018436571583151817, - 0.002948738867416978, - 0.0035635745152831078, - 0.07334635406732559, - -0.010056732222437859, - -0.033189211040735245, - 0.09899751842021942, - -0.07976589351892471, - -0.07831475883722305, - -0.05339564010500908, - 0.049559157341718674, - -0.04860967397689819, - 0.04483095929026604, - 0.021273093298077583, - -0.02921343222260475, - -0.02183394506573677, - 0.07835209369659424, - -0.016324905678629875, - 0.025435157120227814, - 0.0355246365070343, - -0.051567915827035904, - 0.03772864490747452, - -0.07808506488800049, - 0.019515827298164368, - 0.03784070536494255, - 0.09629470109939575, - 0.04965567961335182, - 0.01230591256171465, - -0.06264735013246536, - -0.05170727148652077, - -0.019810933619737625, - 0.052450526505708694, - 0.026648562401533127, - 0.0005201101885177195, - -0.0082823121920228, - -0.028736691921949387, - -0.0499672070145607, - 0.014001957140862942, - -0.012483155354857445, - 0.11741535365581512, - 0.005480760242789984, - -0.0007769843796268106, - 0.10091301053762436, - -0.009140508249402046, - -0.011305494233965874, - -0.08737270534038544, - -0.02917810156941414, - 0.04699983447790146, - 0.00973961316049099, - -0.08278350532054901, - -0.04763023182749748, - 0.03154463320970535, - 0.0026425619143992662, - -0.018831267952919006, - 0.0025461509358137846, - 0.02188570238649845, - 0.007187790237367153, - 0.06341048330068588, - -0.055779047310352325, - 0.02527732029557228, - -0.11441327631473541, - -0.04378209263086319, - -0.0200076662003994, - -0.04527204856276512, - -0.018684620037674904, - 0.07624778151512146, - -0.0027864093426615, - -0.00929536484181881, - 0.04374432563781738, - -0.08929353207349777, - -0.048692017793655396, - 0.09048879891633987, - 0.0808616653084755, - 0.026113083586096764, - 0.07289928942918777, - 0.03635279834270477, - -0.03004615381360054, - 0.0690738782286644, - 0.07146404683589935, - 0.09707856178283691, - -0.0014301573392003775, - -0.02368122525513172, - -0.08191797137260437, - 0.05331761762499809, - 0.06625315546989441, - -0.11483199894428253, - -0.0994897335767746, - -0.0410405695438385, - -0.04697568342089653, - 0.052460819482803345, - -0.024758759886026382, - 0.007315436843782663, - 0.013924474827945232, - -0.03480202332139015, - -0.07345923036336899, - -0.06326351314783096, - 0.10047326982021332, - -0.06961528211832047, - -0.04817875847220421, - -0.03589896112680435, - 0.049925725907087326, - 0.08763585239648819, - 0.03277474641799927, - -0.02049325220286846, - 0.005890677683055401, - 0.059558264911174774, - -0.11488718539476395, - -0.04705577343702316, - -0.007321113720536232, - -0.017281435430049896, - -0.05174028128385544, - 0.06147269532084465, - -0.09238504618406296, - 0.07521699368953705, - -0.08781251311302185, - 0.16216593980789185, - -0.04535123333334923, - -0.07118268311023712, - -0.0862535834312439, - 0.04955045133829117, - -0.04490290582180023, - 0.013406594283878803, - 0.03827185928821564, - 0.06513432413339615, - 0.01425163447856903, - -0.06357578933238983, - 0.12632222473621368, - -0.014399769715964794, - -0.005276745185256004, - -0.04854385182261467, - -0.04046763479709625, - -0.06491805613040924, - -0.015935152769088745, - -0.015658725053071976, - -0.09553497284650803, - -0.009389840066432953, - 0.004181795287877321, - -0.013229004107415676, - 0.07735807448625565, - 0.11161790043115616, - 0.03208980709314346, - -0.09762602299451828 - ] - }, - "p244_158.wav": { - "name": "p244", - "embedding": [ - 0.03636794909834862, - 0.07408522069454193, - -0.029218478128314018, - 0.08177635073661804, - -0.06782162934541702, - 0.0618540421128273, - -0.09660547971725464, - 0.11868441104888916, - -0.03968634083867073, - 0.12036117911338806, - -0.06789775937795639, - 0.10166685283184052, - -0.053389035165309906, - -0.15586525201797485, - -0.010718374513089657, - 0.07490645349025726, - -0.04263267293572426, - -0.038016337901353836, - -0.07048040628433228, - -0.0015694987960159779, - 0.024698931723833084, - 0.028321029618382454, - 0.05222189426422119, - 0.005631127394735813, - -0.003852994879707694, - 0.05570049211382866, - -0.005814242176711559, - 0.0503392294049263, - 0.03300800174474716, - -0.059968627989292145, - -0.036748550832271576, - 0.10470617562532425, - -0.027219461277127266, - 0.013587514869868755, - 0.037255171686410904, - 0.011195352301001549, - -0.00705090444535017, - -0.057694315910339355, - -0.0158570297062397, - -0.029805712401866913, - -0.061803851276636124, - 0.06483978033065796, - 0.006504404824227095, - -0.02211831510066986, - 0.06239274889230728, - -0.023987803608179092, - -0.06901973485946655, - -0.0169401615858078, - -0.1138477474451065, - 0.14198577404022217, - 0.08901195973157883, - -0.005303285550326109, - -0.07042433321475983, - -0.0670144259929657, - 0.09023643285036087, - -0.018352758139371872, - -0.13455168902873993, - -0.06878501176834106, - 0.07643783092498779, - 0.16312626004219055, - 0.0027912412770092487, - 0.006091908551752567, - 0.01098263543099165, - 0.13018983602523804, - 0.08016090095043182, - 0.0921977311372757, - 0.06344588845968246, - 0.12187433242797852, - 0.0032693627290427685, - 0.03604263812303543, - 0.05848647654056549, - 0.05705815181136131, - 0.04459799826145172, - 0.024683550000190735, - 0.016520438715815544, - -0.011246333830058575, - -0.011799464002251625, - 0.0022719241678714752, - -0.03526310622692108, - -0.034555867314338684, - -0.0224318765103817, - -0.00931625533849001, - 0.00201701489277184, - 0.0015893243253231049, - -0.017011523246765137, - 0.05614441633224487, - 0.04730871319770813, - -0.028897108510136604, - 0.057838715612888336, - 0.03517724946141243, - -0.012876738794147968, - 0.054476045072078705, - -0.04793250933289528, - -0.07878871262073517, - -0.01127027627080679, - 0.012375024147331715, - 0.023755429312586784, - 0.044638101011514664, - 0.010993423871695995, - -0.014322813600301743, - 0.11365317553281784, - 0.027714502066373825, - -0.006206504534929991, - 0.04823929816484451, - -0.08984355628490448, - 0.12267597019672394, - 0.07083822786808014, - -0.0011475087376311421, - 0.036867767572402954, - -0.01526604499667883, - 0.06316839903593063, - 0.07226600497961044, - -0.10068142414093018, - -0.048931967467069626, - 0.007679302245378494, - -0.02346210926771164, - -0.02364109456539154, - 0.09442295134067535, - 0.031209997832775116, - 0.03442900627851486, - 0.11493868380784988, - -0.09506888687610626, - -0.05987504497170448, - 0.002745419042184949, - 0.053859613835811615, - -0.0700913816690445, - 0.046697113662958145, - 0.04093196988105774, - 0.0009490498341619968, - 0.00941290333867073, - 0.08174094557762146, - -0.006261578761041164, - 0.014371974393725395, - 0.03929998725652695, - -0.08935508131980896, - 0.03423840180039406, - -0.054238349199295044, - -0.014292575418949127, - 0.07969090342521667, - 0.030051421374082565, - 0.07168838381767273, - -0.042200855910778046, - 0.003494914388284087, - -0.0920737087726593, - -0.002001882530748844, - 0.046577922999858856, - 0.07320979237556458, - -0.0016381286550313234, - 0.002057683654129505, - -0.04588992893695831, - -0.06321508437395096, - 0.04935348033905029, - -0.03699737787246704, - 0.07722482085227966, - -0.042431462556123734, - -0.016282720491290092, - 0.10615359246730804, - -0.01031394861638546, - -0.009273335337638855, - -0.07583662867546082, - -0.03662590682506561, - 0.023021847009658813, - 0.05599135532975197, - -0.08044606447219849, - -0.05300554633140564, - 0.016175316646695137, - 0.0391780324280262, - -0.029483648017048836, - 0.040394652634859085, - 0.041059065610170364, - 0.013634743168950081, - 0.007760524749755859, - -0.0399499386548996, - 0.012870780192315578, - -0.07050175964832306, - -0.0517011433839798, - 0.004763354081660509, - -0.030512569472193718, - -0.014255639165639877, - 0.06707319617271423, - 0.03871876746416092, - 0.029323376715183258, - -0.0002216622233390808, - -0.09811811149120331, - -0.10160472244024277, - 0.07107927650213242, - 0.026411235332489014, - 0.0017819879576563835, - 0.07137942314147949, - 0.06284067779779434, - -0.05381152778863907, - 0.03594835847616196, - 0.04912285506725311, - 0.09870834648609161, - -0.026932405307888985, - -0.004567543510347605, - -0.11137527227401733, - 0.06321048736572266, - 0.122107595205307, - -0.09028545767068863, - -0.08155925571918488, - -0.03774857893586159, - -0.059436630457639694, - 0.056765250861644745, - -0.057279862463474274, - -0.021987317129969597, - 0.07938526570796967, - -0.03716309368610382, - -0.12952059507369995, - -0.10323606431484222, - 0.1277615875005722, - -0.08645600080490112, - -0.01288935262709856, - -0.06378473341464996, - 0.020325936377048492, - 0.048718489706516266, - 0.03205057233572006, - -0.05221455171704292, - 0.024769719690084457, - 0.07441788911819458, - -0.05886536091566086, - 0.010278910398483276, - 0.06928111612796783, - 0.013816374354064465, - -0.09825587272644043, - -0.016557861119508743, - -0.07341115921735764, - 0.049111366271972656, - -0.037480395287275314, - 0.1439986526966095, - -0.004929577466100454, - -0.02724667266011238, - -0.07297278940677643, - 0.0574522390961647, - -0.02209884487092495, - 0.06392282992601395, - 0.04267135262489319, - 0.06446905434131622, - 0.034349579364061356, - -0.06657631695270538, - 0.13590319454669952, - 0.034329745918512344, - -0.03836118057370186, - -0.05765734985470772, - -0.03171355649828911, - -0.0681348592042923, - 0.024496179074048996, - -0.003957423381507397, - -0.09631752967834473, - 0.0013710327912122011, - 0.009104754775762558, - -0.03447079658508301, - 0.06533177196979523, - 0.13263574242591858, - 0.08009309321641922, - -0.07407161593437195 - ] - }, - "p244_278.wav": { - "name": "p244", - "embedding": [ - 0.05478248745203018, - 0.0654914528131485, - -0.030155498534440994, - 0.05006328225135803, - -0.06119343638420105, - 0.035684555768966675, - -0.10848580300807953, - 0.1078013926744461, - -0.021831056103110313, - 0.13676849007606506, - -0.05876852571964264, - 0.11819253861904144, - -0.012822561897337437, - -0.16776534914970398, - -0.008926431648433208, - 0.05648058280348778, - -0.05177285149693489, - -0.035407066345214844, - -0.06169877201318741, - -0.02790026180446148, - 0.03653136268258095, - 0.06757098436355591, - 0.07132668793201447, - -0.023736946284770966, - 0.022700008004903793, - 0.06713889539241791, - -0.007135279942303896, - 0.04096405580639839, - 0.021322842687368393, - -0.10620146989822388, - -0.05070004612207413, - 0.08898956328630447, - -0.04560593143105507, - 0.016671057790517807, - 0.014638209715485573, - -0.01341228187084198, - 0.0010660383850336075, - -0.0646844357252121, - -0.056926026940345764, - 0.019003257155418396, - -0.053564853966236115, - 0.06721173226833344, - 0.01438442338258028, - -0.048880890011787415, - 0.053169410675764084, - -0.024588685482740402, - -0.048022232949733734, - -0.030644766986370087, - -0.10996608436107635, - 0.17169854044914246, - 0.07533164322376251, - 0.004216858185827732, - -0.06320375204086304, - -0.08148860186338425, - 0.09647262096405029, - -0.013156525790691376, - -0.13923096656799316, - -0.03373803198337555, - 0.06174682453274727, - 0.14544759690761566, - -0.016228679567575455, - -0.026643428951501846, - 0.05127153545618057, - 0.10532969236373901, - 0.0773783028125763, - 0.06499829143285751, - 0.08367543667554855, - 0.10377830266952515, - -0.015506149269640446, - 0.0350506454706192, - 0.04926124960184097, - 0.10120592266321182, - 0.05283767729997635, - 0.007985003292560577, - 0.01713675446808338, - 0.015566572546958923, - -0.032079484313726425, - -0.024455683305859566, - -0.015665283426642418, - -0.008391076698899269, - -0.006056316662579775, - -0.017124952748417854, - 0.017281435430049896, - 0.009548640809953213, - -0.033266644924879074, - 0.04581880569458008, - 0.04136952757835388, - -0.013271613977849483, - 0.056870944797992706, - 0.02831896021962166, - 0.011884119361639023, - 0.06806081533432007, - -0.059026796370744705, - -0.07520255446434021, - -0.007246255408972502, - 0.019319647923111916, - 0.021197669208049774, - 0.06681819260120392, - 0.04678625240921974, - -0.033802807331085205, - 0.1316288262605667, - 0.037030622363090515, - -0.005198957864195108, - 0.008820366114377975, - -0.07641861587762833, - 0.09652912616729736, - 0.10601826012134552, - -0.01883583888411522, - 0.05614205449819565, - -0.03866414725780487, - 0.08375433087348938, - 0.061983682215213776, - -0.12790998816490173, - -0.06512638181447983, - 0.012298696674406528, - -0.02458438277244568, - -0.001408421783708036, - 0.12263201177120209, - 0.013288180343806744, - 0.04702261835336685, - 0.11125840991735458, - -0.10991761088371277, - -0.05253775790333748, - -0.004227515310049057, - 0.05360811948776245, - -0.09626469761133194, - 0.06017468497157097, - 0.03829836845397949, - -0.02324896678328514, - 0.009931113570928574, - 0.07641367614269257, - -0.0294354110956192, - 0.02223369851708412, - 0.004720824770629406, - -0.06985270977020264, - 0.01434963196516037, - -0.0460321307182312, - -0.012183459475636482, - 0.08463872969150543, - 0.024527626112103462, - 0.05627722293138504, - -0.03708511218428612, - -0.04226204752922058, - -0.13128814101219177, - 0.03298772871494293, - 0.026217985898256302, - 0.06580395251512527, - -0.00681707076728344, - -0.009905772283673286, - -0.03391108289361, - -0.08708173036575317, - 0.05146803334355354, - -0.028685929253697395, - 0.07056191563606262, - -0.025998076424002647, - -0.007207034155726433, - 0.10676755011081696, - 0.02210184931755066, - -0.012761189602315426, - -0.0402388796210289, - -0.049234528094530106, - 0.005367421545088291, - 0.055032193660736084, - -0.08735334128141403, - -0.07822079956531525, - -0.008211322128772736, - 0.017171088606119156, - -0.006194661371409893, - 0.05070827156305313, - 0.0503276027739048, - 0.012079538777470589, - 0.019724011421203613, - -0.06969340890645981, - 0.0020727338269352913, - -0.0971924364566803, - -0.07336390763521194, - -0.007661875803023577, - -0.032338328659534454, - -0.010613098740577698, - 0.0916496217250824, - 0.012261785566806793, - 0.02863418683409691, - -0.03354836255311966, - -0.08079648017883301, - -0.09543775767087936, - 0.0639791339635849, - 0.037300340831279755, - 0.002587447641417384, - 0.043982330709695816, - 0.07693731784820557, - -0.03697185218334198, - 0.04250878095626831, - 0.03332526981830597, - 0.0956505760550499, - -0.025455493479967117, - 0.011223061010241508, - -0.07478432357311249, - 0.10043232142925262, - 0.0954500138759613, - -0.07794070243835449, - -0.07680858671665192, - -0.045787833631038666, - -0.08818846195936203, - 0.05907116085290909, - -0.016416313126683235, - -0.009622457437217236, - 0.04702538996934891, - -0.007945523597300053, - -0.11236733198165894, - -0.08484476059675217, - 0.11448071897029877, - -0.05408007279038429, - -0.023011289536952972, - -0.07300858944654465, - 0.026208505034446716, - 0.07481840252876282, - 0.057982541620731354, - -0.01708587259054184, - 0.02267123945057392, - 0.058120012283325195, - -0.046625152230262756, - 0.017153888940811157, - 0.08223636448383331, - 0.032293591648340225, - -0.08871110528707504, - -0.029793445020914078, - -0.07229975610971451, - 0.03841162472963333, - -0.051842860877513885, - 0.13208141922950745, - 0.0022065092343837023, - -0.057998765259981155, - -0.08510474860668182, - 0.06994156539440155, - -0.02224171906709671, - 0.05679536983370781, - 0.049887172877788544, - 0.06279656291007996, - 0.059543073177337646, - -0.098089300096035, - 0.1073068231344223, - 0.05193856731057167, - -0.03036480024456978, - -0.05680491030216217, - -0.044343676418066025, - -0.038341205567121506, - 0.029765717685222626, - 0.010471574030816555, - -0.07372936606407166, - 0.004315624013543129, - 0.009176323190331459, - -0.013452151790261269, - 0.053752653300762177, - 0.12671160697937012, - 0.06682229042053223, - -0.1108715832233429 - ] - }, - "p244_334.wav": { - "name": "p244", - "embedding": [ - 0.04873369261622429, - 0.10693557560443878, - -0.0036122030578553677, - 0.027499958872795105, - -0.03217095881700516, - 0.03909189999103546, - -0.07382022589445114, - 0.09170767664909363, - 0.03452327474951744, - 0.06702721118927002, - -0.07194428890943527, - 0.08427950739860535, - -0.02937258780002594, - -0.1347297728061676, - 0.016911733895540237, - 0.0387294664978981, - -0.020503666251897812, - 0.0031855504494160414, - -0.025329967960715294, - -0.021834973245859146, - -0.005436833016574383, - 0.015500199049711227, - 0.025590229779481888, - -0.017003227025270462, - 0.012133880518376827, - 0.024779539555311203, - -0.02642269991338253, - 0.016506386920809746, - -0.013045243918895721, - -0.044783830642700195, - -0.030460629612207413, - 0.06558965146541595, - -0.03640653192996979, - -0.0047957925125956535, - 0.009877799078822136, - -0.03595206141471863, - 0.0030451274942606688, - -0.06579308956861496, - -0.04624996334314346, - 0.02209617756307125, - -0.052699975669384, - 0.05233551189303398, - 0.03917326778173447, - -0.04705752432346344, - 0.04233626276254654, - 0.01647038199007511, - -0.0319753997027874, - -0.018268324434757233, - -0.09570550918579102, - 0.12502112984657288, - 0.032487884163856506, - 0.03818941116333008, - -0.06252004951238632, - -0.02137906849384308, - 0.08839713782072067, - 0.011459152214229107, - -0.0364052951335907, - -0.020795777440071106, - 0.033172428607940674, - 0.07304715365171432, - 0.030338570475578308, - -0.025331459939479828, - 0.033425796777009964, - 0.07909417152404785, - 0.044216569513082504, - 0.030128872022032738, - 0.07211612910032272, - 0.11590670794248581, - -0.024705886840820312, - 0.02309587225317955, - 0.03916897624731064, - 0.024899309501051903, - 0.02518191561102867, - -0.004878608509898186, - -0.0018378261011093855, - -0.0080089271068573, - -0.00011170034849783406, - -0.015379799529910088, - -0.017086666077375412, - -0.03629455342888832, - 0.03411717340350151, - 0.00014239922165870667, - 0.008746813982725143, - 0.018694989383220673, - -0.03848152980208397, - -0.004877845756709576, - 0.06771387904882431, - 0.038313619792461395, - 0.07434645295143127, - 0.023253921419382095, - 0.02067210152745247, - 0.05656753107905388, - -0.07962983101606369, - -0.07256370782852173, - 0.02649257332086563, - 0.0085770757868886, - 0.034118637442588806, - 0.04059663414955139, - 0.03565572202205658, - -0.022544417530298233, - 0.09793820977210999, - 0.006642095744609833, - 0.012323970906436443, - 0.0027670941781252623, - -0.05990158021450043, - 0.0496484600007534, - 0.05955754965543747, - -0.00415319949388504, - 0.06258679926395416, - 0.0010111108422279358, - 0.05643618851900101, - 0.058291252702474594, - -0.07653731107711792, - -0.014202798716723919, - -0.0010597892105579376, - 0.030780520290136337, - -0.005337671376764774, - 0.11156058311462402, - 0.010762704536318779, - 0.053148671984672546, - 0.09943026304244995, - -0.06494399905204773, - -0.018177129328250885, - 0.02894250676035881, - 0.006910689175128937, - -0.025696545839309692, - 0.04709519073367119, - 0.04810675233602524, - -0.019044259563088417, - -0.016387324780225754, - 0.0316070131957531, - 0.008910607546567917, - 0.016313519328832626, - -0.031074119731783867, - -0.003475576639175415, - -0.005818442907184362, - 0.006374956574290991, - -0.021304359659552574, - 0.018476711586117744, - 0.04271669685840607, - 0.009739421308040619, - 0.012309007346630096, - -0.030352434143424034, - -0.08430805057287216, - 0.023059625178575516, - -0.008350951597094536, - 0.0301833376288414, - 0.038034502416849136, - -0.0340069904923439, - -0.05100385472178459, - -0.028611307963728905, - 0.03031962178647518, - -0.020830025896430016, - 0.05372178182005882, - 0.052251748740673065, - -0.021049227565526962, - 0.061715610325336456, - 0.02695293352007866, - 0.026425324380397797, - -0.02373645454645157, - -0.09614600986242294, - 0.007587619125843048, - 0.02758411131799221, - -0.04478609561920166, - -0.048353008925914764, - -0.010006466880440712, - -0.030420511960983276, - -0.018697096034884453, - 0.015556196682155132, - 0.0558282844722271, - 0.0019114328315481544, - 0.0035986441653221846, - -0.0758344829082489, - 0.007346875965595245, - -0.03445557504892349, - -0.08681651204824448, - 0.04090768098831177, - 0.02839125506579876, - -0.0070141032338142395, - 0.07862793654203415, - 0.02051617205142975, - 0.018865486606955528, - -0.049923479557037354, - -0.028671864420175552, - -0.004431804176419973, - 0.028754226863384247, - 0.020658444613218307, - -0.004458627663552761, - 0.035873278975486755, - 0.03657901659607887, - -0.008428744040429592, - 0.023152269423007965, - 0.026673417538404465, - 0.061416976153850555, - -0.029842248186469078, - 0.004579775966703892, - -0.0046555399894714355, - 0.08981090039014816, - 0.0633201077580452, - -0.07316349446773529, - -0.07605834305286407, - -0.028967570513486862, - -0.048072449862957, - 0.015740511938929558, - -0.007654663175344467, - 0.019183872267603874, - 0.028416959568858147, - -0.009511109441518784, - -0.03297748044133186, - -0.11363355815410614, - 0.02397424541413784, - -0.029421448707580566, - -0.010374137200415134, - -0.046779390424489975, - 0.029495395720005035, - 0.058524906635284424, - 0.02355324476957321, - -0.031237466260790825, - -0.011365748941898346, - 0.02737213671207428, - 0.008947036229074001, - -0.0042488775216042995, - 0.038352008908987045, - 0.05719178542494774, - -0.04179975017905235, - -0.009760278277099133, - -0.05449621379375458, - 0.04594341665506363, - 0.014411951415240765, - 0.10113872587680817, - 0.04233062267303467, - -0.009858286008238792, - -0.08939790725708008, - 0.05329596623778343, - -0.008047381415963173, - 0.04138759523630142, - -0.02176138013601303, - 0.023307902738451958, - 0.058196406811475754, - -0.055288344621658325, - 0.08841335028409958, - 0.027476457878947258, - -0.03257935121655464, - -0.03810466080904007, - -0.007382941897958517, - -0.04656383395195007, - 0.030206400901079178, - 0.004072529263794422, - -0.05502880737185478, - -0.021597426384687424, - 0.038785599172115326, - 0.05064279958605766, - 0.051770783960819244, - 0.0858384221792221, - 0.03550642728805542, - -0.031274985522031784 - ] - }, - "p244_373.wav": { - "name": "p244", - "embedding": [ - 0.025988437235355377, - 0.09820541739463806, - -0.07655295729637146, - 0.019693441689014435, - 0.0015632472932338715, - 0.002512953244149685, - -0.13236570358276367, - 0.0769578069448471, - -0.019709181040525436, - 0.12228292971849442, - -0.04034237936139107, - 0.10550229251384735, - -0.06892996281385422, - -0.10437479615211487, - 0.011496221646666527, - 0.061133645474910736, - 0.003962080925703049, - -0.00980973057448864, - 0.00441686250269413, - -0.029012421146035194, - 0.057221878319978714, - 0.037220560014247894, - 0.024961143732070923, - -0.06629408895969391, - -0.021362772211432457, - 0.10583087056875229, - -0.016717858612537384, - -0.01013021357357502, - -0.03688303381204605, - -0.040557119995355606, - -0.015322180464863777, - 0.05310952663421631, - -0.0063266269862651825, - -0.006088280584663153, - 0.019386611878871918, - 0.026945384219288826, - -0.032562606036663055, - -0.02129427343606949, - 0.02387141063809395, - 0.014932794496417046, - -0.049344636499881744, - 0.04137878492474556, - 0.011501285247504711, - -0.04507818445563316, - 0.07293133437633514, - -0.05540666729211807, - -0.021381376311182976, - -0.009606706909835339, - -0.05594944953918457, - 0.11514291167259216, - 0.09847469627857208, - 0.01235372107475996, - -0.041726164519786835, - 0.006693335250020027, - 0.0688067227602005, - 0.033672209829092026, - -0.08874674141407013, - -0.045205000787973404, - 0.04132102057337761, - 0.11455559730529785, - -0.011413728818297386, - -0.02181203104555607, - 0.05688142031431198, - 0.07123453915119171, - 0.0074554383754730225, - 0.07296687364578247, - 0.0906069278717041, - 0.05650331825017929, - 0.012263098731637001, - -0.05245373770594597, - 0.005300190299749374, - 0.10092728585004807, - 0.04076027870178223, - -0.0005190724041312933, - 0.016314871609210968, - -0.029129959642887115, - -0.05042188987135887, - -0.025791462510824203, - -0.012380285188555717, - -0.09108548611402512, - -0.042661506682634354, - -0.01534661091864109, - 0.00789736956357956, - 0.02617065981030464, - 0.006602557376027107, - 0.018134452402591705, - 0.09590338170528412, - -0.0702386125922203, - 0.02530999667942524, - 0.004429425112903118, - 0.023549677804112434, - 0.008688906207680702, - -0.05143841728568077, - -0.06301959604024887, - 0.03597753122448921, - 0.039433401077985764, - 0.022894442081451416, - 0.0422198548913002, - 0.04887760058045387, - 0.030597684904932976, - 0.08671444654464722, - -0.0022908179089426994, - 0.009263802319765091, - -0.0226020235568285, - -0.03954731300473213, - 0.0862768143415451, - 0.11853201687335968, - -0.038837067782878876, - 0.04914525896310806, - -0.06082789599895477, - -0.023989427834749222, - 0.0034458301961421967, - -0.07507243007421494, - -0.03266632929444313, - 0.01374002918601036, - 0.02326524630188942, - 0.006310518831014633, - 0.10992632806301117, - 0.06194300949573517, - 0.036353904753923416, - 0.09295313060283661, - -0.0928887128829956, - -0.09954400360584259, - -0.08038656413555145, - 0.07480818778276443, - -0.06612022966146469, - 0.08799386024475098, - 0.09594659507274628, - 0.013327401131391525, - 0.029001597315073013, - 0.036311887204647064, - 0.027989590540528297, - 0.03874170035123825, - -0.03448348119854927, - -0.03784364089369774, - -0.01644155941903591, - -0.057676397264003754, - 0.011099273338913918, - 0.029926974326372147, - -0.002386469393968582, - 0.0668230950832367, - -0.01530742272734642, - 0.013561587780714035, - -0.10623090714216232, - -0.007145174778997898, - 0.0587586984038353, - 0.009654166176915169, - -0.03397119417786598, - -0.05040347948670387, - -0.0074806222692132, - -0.07279738038778305, - -0.05282333120703697, - -0.0766778513789177, - 0.08115430176258087, - -0.017442453652620316, - 0.025579238310456276, - 0.09499223530292511, - 0.011951069347560406, - -0.00854148156940937, - -0.034677669405937195, - -0.015701044350862503, - 0.004493666812777519, - 0.016761906445026398, - -0.10517837107181549, - -0.10933873057365417, - -0.05259307101368904, - 0.02531185746192932, - 0.016538385301828384, - 0.06609632074832916, - 0.04936101287603378, - 0.019311608746647835, - -0.0027266854885965586, - -0.011622831225395203, - 0.010196343064308167, - -0.07101771235466003, - -0.08215239644050598, - -0.01632404886186123, - -0.036348022520542145, - -0.02212928794324398, - 0.10357800871133804, - 0.00830297265201807, - 0.05375465750694275, - -0.0353054478764534, - -0.01025029644370079, - -0.08879391849040985, - 0.045894771814346313, - 0.047377828508615494, - -0.030138906091451645, - 0.015525770373642445, - 0.010622154921293259, - -0.02707100100815296, - -0.003325197845697403, - 0.04586614668369293, - 0.07359784096479416, - -0.016822580248117447, - -0.006815088912844658, - -0.08205129206180573, - 0.039483003318309784, - 0.13273406028747559, - -0.07597324997186661, - -0.03539995849132538, - -0.07370650768280029, - -0.08235020935535431, - 0.018575873225927353, - -0.07696881890296936, - 0.0021603491622954607, - -0.009484760463237762, - -0.0041832514107227325, - -0.12185937911272049, - -0.11209568381309509, - 0.04404143989086151, - -0.0019835233688354492, - 0.015067500062286854, - -0.05630561709403992, - 0.046252425760030746, - 0.04974498227238655, - 0.025762362405657768, - -0.05616918206214905, - 0.02369961515069008, - 0.03976144641637802, - -0.005783764645457268, - 0.05185233801603317, - 0.043437644839286804, - 0.10268016159534454, - -0.07472864538431168, - -0.014422083273530006, - -0.07585626095533371, - 0.04222417622804642, - -0.06329778581857681, - 0.09328177571296692, - 0.05219300091266632, - -0.02957436442375183, - -0.09310401976108551, - 0.05537908151745796, - 0.02255186066031456, - 0.03306068480014801, - -0.013540109619498253, - 0.0282684788107872, - 0.045438721776008606, - -0.09567025303840637, - 0.0685226321220398, - 0.03649486228823662, - 0.02875138819217682, - -0.07151172310113907, - -0.04839157685637474, - -0.04036583751440048, - 0.06036647409200668, - -0.00438026525080204, - -0.03908253088593483, - -0.02415274828672409, - -0.00627659447491169, - 0.07473570108413696, - 0.05670511722564697, - 0.07765699177980423, - 0.013433671556413174, - -0.078646719455719 - ] - }, - "p244_304.wav": { - "name": "p244", - "embedding": [ - 0.022711295634508133, - 0.07748173177242279, - 0.025834525004029274, - 0.008184421807527542, - -0.023033270612359047, - 0.08437056839466095, - -0.13064096868038177, - 0.08926959335803986, - -0.0762484073638916, - 0.14807948470115662, - -0.08903578668832779, - 0.051704198122024536, - -0.05598234012722969, - -0.19571346044540405, - -0.017107469961047173, - 0.06931046396493912, - -0.05810039862990379, - 0.0059250290505588055, - -0.08474580943584442, - -0.010211730375885963, - 0.014573503285646439, - 0.0010009087854996324, - 0.01747260056436062, - 0.020306620746850967, - 0.007357908878475428, - 0.055135417729616165, - -0.030081573873758316, - 0.027837570756673813, - -0.020328463986516, - -0.03754015266895294, - -0.01681126281619072, - 0.12032558768987656, - -0.03685387969017029, - 0.01620105281472206, - 0.08825662732124329, - 0.01890682615339756, - -0.03712807968258858, - -0.02135617844760418, - -0.005642293952405453, - -0.008479191921651363, - -0.07152386009693146, - 0.054391048848629, - -0.0012594076106324792, - 0.03424086794257164, - 0.07749515771865845, - 0.024106694385409355, - -0.016839729622006416, - -0.03357970342040062, - -0.07907180488109589, - 0.11650526523590088, - 0.08169906586408615, - -0.028337819501757622, - -0.026532793417572975, - -0.07965946942567825, - 0.08826316148042679, - -0.0355621762573719, - -0.15203070640563965, - -0.08715762197971344, - 0.10039637982845306, - 0.14046311378479004, - -0.046632762998342514, - -0.00476363068446517, - -0.006527372635900974, - 0.10522933304309845, - 0.011653348803520203, - 0.15772445499897003, - 0.006807137280702591, - 0.08539994060993195, - -0.000572943827137351, - 0.0258883535861969, - 0.07486965507268906, - 0.013907882384955883, - 0.06873930990695953, - -0.03511760011315346, - 0.039504941552877426, - 0.022473732009530067, - -0.0008677373407408595, - 0.026532527059316635, - 0.01022608857601881, - 0.014962945133447647, - -0.0024661002680659294, - -0.03310469165444374, - -0.03692680597305298, - -0.0394938588142395, - -0.0026312265545129776, - 0.019223330542445183, - 0.04809681326150894, - 0.0001370495738228783, - 0.06026380881667137, - 0.06940500438213348, - -0.016827460378408432, - 0.06810729950666428, - -0.021628154441714287, - -0.05956669896841049, - 0.010129084810614586, - 0.011063181795179844, - -0.028331128880381584, - 0.022709282115101814, - 0.010611528530716896, - 0.006038271356374025, - 0.07363495975732803, - 0.04817867651581764, - 0.00877306703478098, - 0.05714738741517067, - -0.12362018972635269, - 0.12945257127285004, - 0.038387883454561234, - -0.016903875395655632, - 0.04234904795885086, - -0.0001951254380401224, - 0.06232089176774025, - 0.110261470079422, - -0.11998284608125687, - -0.0339704193174839, - 0.0010467983083799481, - -0.053432803601026535, - -0.041706573218107224, - 0.0825280174612999, - 0.006255296058952808, - -0.05825299769639969, - 0.1329822689294815, - -0.08691225945949554, - -0.06604604423046112, - -0.008038188330829144, - 0.00900148507207632, - -0.13898621499538422, - 0.0192754827439785, - 0.04680553451180458, - 0.0102784913033247, - 0.00036384587292559445, - 0.15025316178798676, - -0.012897887267172337, - -0.0046776640228927135, - -0.008564743213355541, - -0.027394231408834457, - 0.02482428029179573, - -0.03371784836053848, - 0.03647928684949875, - 0.08281941711902618, - 0.015171117149293423, - 0.030740104615688324, - -0.017334870994091034, - -0.026558881625533104, - -0.08479554206132889, - -0.010086203925311565, - 0.05589460954070091, - 0.04483935981988907, - -0.008999710902571678, - 0.05178820714354515, - -0.03989846259355545, - -0.10083739459514618, - 0.06717672199010849, - -0.056261930614709854, - 0.09425389766693115, - 0.0036978188436478376, - -0.027439208701252937, - 0.12801530957221985, - -0.006857945583760738, - 0.006916288286447525, - -0.12446922063827515, - -0.00043053089757449925, - 0.03536829724907875, - 0.046749476343393326, - -0.10868663340806961, - -0.031571030616760254, - 0.02713542990386486, - 0.04419597610831261, - 0.02856263518333435, - 0.025127867236733437, - 0.04229838401079178, - 0.0008241615723818541, - 0.02129506878554821, - -0.04658876359462738, - 0.019512450322508812, - -0.06809564679861069, - -0.06443101912736893, - -0.023213515058159828, - -0.06891179084777832, - 0.007952879182994366, - 0.06904541701078415, - -0.04823429509997368, - -0.029340645298361778, - -0.014090826734900475, - -0.11455170810222626, - -0.09613367170095444, - 0.08904501795768738, - 0.07175253331661224, - -0.007502212654799223, - 0.04700871556997299, - 0.03642822057008743, - -0.08982168883085251, - 0.0499243326485157, - 0.042581163346767426, - 0.15260908007621765, - -0.052219536155462265, - 0.06762342154979706, - -0.08329164236783981, - 0.04724467918276787, - 0.0754045620560646, - -0.0763833075761795, - -0.08398013561964035, - 0.00939631462097168, - -0.012717029079794884, - 0.06586272269487381, - -0.055741336196660995, - -0.04147971048951149, - 0.04621530696749687, - -0.044215064495801926, - -0.04343722388148308, - -0.08591325581073761, - 0.10127062350511551, - -0.05069053918123245, - -0.01004981342703104, - -0.04669785127043724, - 0.046343009918928146, - -0.010672826319932938, - 0.07424084097146988, - -0.040462784469127655, - 0.041603416204452515, - 0.06315108388662338, - -0.05816970393061638, - -0.03648746758699417, - 0.04510973393917084, - -0.024843839928507805, - -0.06066644564270973, - -0.04027685523033142, - -0.11766115576028824, - 0.10020244121551514, - -0.049527671188116074, - 0.12818704545497894, - -0.05834294110536575, - -0.04999767988920212, - -0.031744468957185745, - -0.015066524967551231, - -0.010042618028819561, - 0.026611095294356346, - 0.06379668414592743, - 0.08535535633563995, - 0.03816480562090874, - 0.00819784589111805, - 0.10248463600873947, - -0.005560922436416149, - 0.038531430065631866, - -0.028577744960784912, - -0.017214465886354446, - -0.07231894880533218, - 0.0017309447284787893, - -0.016719846054911613, - -0.17118534445762634, - 0.043390046805143356, - 0.014364867471158504, - -0.04175948724150658, - 0.030008237808942795, - 0.11371616274118423, - 0.05733555927872658, - -0.10070354491472244 - ] - }, - "p244_115.wav": { - "name": "p244", - "embedding": [ - 0.043387725949287415, - 0.11231091618537903, - -0.003916000481694937, - 0.009882601909339428, - -0.054747194051742554, - 0.07636934518814087, - -0.12208505719900131, - 0.14207975566387177, - -0.05527171492576599, - 0.1381472498178482, - -0.06776908040046692, - 0.11894410848617554, - -0.03930240124464035, - -0.16356351971626282, - -0.05396844074130058, - 0.05102023482322693, - -0.0496596023440361, - -0.029463768005371094, - -0.04164385423064232, - -0.019953353330492973, - 0.022780798375606537, - 0.004782961681485176, - 0.02691066637635231, - 0.026409871876239777, - 0.03607138618826866, - 0.06601843982934952, - 0.008632799610495567, - 0.06571470201015472, - 0.028668176382780075, - -0.03407922387123108, - -0.03384008631110191, - 0.10132303088903427, - -0.054539501667022705, - 0.036883652210235596, - 0.07302998006343842, - -0.00542761106044054, - 0.0032011528965085745, - -0.047096531838178635, - -0.004907770082354546, - -0.0015979751478880644, - -0.039088062942028046, - 0.08952777832746506, - 0.02241676114499569, - 0.00442493474110961, - 0.02193446457386017, - 0.03968430683016777, - 0.0028938695322722197, - -0.04308926686644554, - -0.09924664348363876, - 0.14455197751522064, - 0.06625208258628845, - -0.01932726614177227, - -0.06858550012111664, - -0.07320526242256165, - 0.1061343252658844, - -0.037628136575222015, - -0.11545932292938232, - -0.04847247153520584, - 0.07793942838907242, - 0.1472417414188385, - -0.039471399039030075, - -0.03440989553928375, - -0.002847484080120921, - 0.1367272436618805, - 0.06090783327817917, - 0.09846580028533936, - 0.07505609095096588, - 0.1156468391418457, - -0.023791294544935226, - 0.0214972123503685, - 0.07073168456554413, - 0.05553985387086868, - 0.0449344739317894, - -0.005026431754231453, - 0.021073712036013603, - -0.0075178625993430614, - 0.003391070058569312, - 0.019270282238721848, - -0.025024106726050377, - -0.01593026891350746, - -0.0399935357272625, - 0.016689486801624298, - -0.01982315070927143, - 0.017254436388611794, - -0.0063963234424591064, - 0.06769010424613953, - 0.021447142586112022, - -0.01378849521279335, - 0.06907767802476883, - 0.06431375443935394, - -0.003343365853652358, - 0.06677393615245819, - -0.07856949418783188, - -0.07840704172849655, - 0.017980866134166718, - -0.013636510819196701, - 0.03128594905138016, - 0.07158458232879639, - 0.03643043339252472, - 0.004429791122674942, - 0.10795672982931137, - 0.06717909872531891, - -0.008991558104753494, - 0.028005464002490044, - -0.09401147067546844, - 0.1403331458568573, - 0.06828339397907257, - -0.03059801459312439, - 0.03733018785715103, - -0.025316689163446426, - 0.06774851679801941, - 0.07324408739805222, - -0.12855027616024017, - -0.08557166159152985, - 0.021088851615786552, - 0.00902944803237915, - -0.03106229566037655, - 0.08071941882371902, - -0.026057027280330658, - 0.019811101257801056, - 0.09252659976482391, - -0.0596553236246109, - -0.044678620994091034, - -0.019683992490172386, - 0.04097326844930649, - -0.06778547167778015, - 0.03849031776189804, - 0.04769861698150635, - 0.0038790679536759853, - 0.008564174175262451, - 0.10526256263256073, - 0.005555190145969391, - -0.013000641018152237, - 0.040261100977659225, - -0.045331161469221115, - 0.027491208165884018, - -0.010354146361351013, - 0.014817701652646065, - 0.044352225959300995, - 0.04833199828863144, - 0.053873978555202484, - 0.005366505589336157, - -0.0115616200491786, - -0.09530405700206757, - 0.0033737346529960632, - 0.055167488753795624, - 0.07145251333713531, - -0.02232576161623001, - -0.020091822370886803, - -0.028691880404949188, - -0.05672793090343475, - 0.010987645015120506, - 0.0018404526636004448, - 0.08758819103240967, - -0.03067968599498272, - -0.0027938554994761944, - 0.11813554167747498, - 0.014427493326365948, - -0.010303257033228874, - -0.06665486842393875, - -0.014806526713073254, - 0.004433467518538237, - 0.05507759377360344, - -0.08299261331558228, - -0.06513661891222, - 0.01767323911190033, - 0.03315040096640587, - -0.01806546561419964, - 0.07016691565513611, - 0.0455411896109581, - 0.006543578114360571, - 0.037425436079502106, - -0.0536341667175293, - 0.014983810484409332, - -0.08933089673519135, - -0.05407053232192993, - -0.028554178774356842, - -0.021868420764803886, - -0.02078847587108612, - 0.06556010246276855, - 0.02104736864566803, - 0.05847422406077385, - 0.013757916167378426, - -0.09379404038190842, - -0.07511549443006516, - 0.06460367143154144, - 0.06682710349559784, - -0.004587736912071705, - 0.04965873062610626, - 0.07594504207372665, - -0.039351027458906174, - 0.05320898815989494, - 0.07116397470235825, - 0.09496461600065231, - -0.04457472264766693, - 0.03189108520746231, - -0.07518292963504791, - 0.05866130813956261, - 0.06410959362983704, - -0.11716088652610779, - -0.0836414247751236, - -0.021253909915685654, - -0.03601228445768356, - 0.023579150438308716, - -0.030452851206064224, - 0.01744082383811474, - 0.03475135564804077, - -0.017504658550024033, - -0.07475198805332184, - -0.10161813348531723, - 0.09390457719564438, - -0.08480685204267502, - 0.004718102049082518, - -0.0679241269826889, - 0.04134657233953476, - 0.08306419849395752, - 0.04661604017019272, - -0.02856295369565487, - 0.01010741014033556, - 0.05332493036985397, - -0.026185041293501854, - -0.020032932981848717, - 0.04892241582274437, - 0.011737219989299774, - -0.09750422090291977, - 0.0054626609198749065, - -0.07203347980976105, - 0.07435194402933121, - -0.038043662905693054, - 0.16533881425857544, - -0.005695355590432882, - -0.05823620781302452, - -0.06599204242229462, - 0.009580838494002819, - -0.04067467898130417, - 0.04476385563611984, - 0.032868191599845886, - 0.06642282754182816, - 0.01357905101031065, - -0.032919712364673615, - 0.14244388043880463, - 0.03732621669769287, - -0.055055998265743256, - -0.07384319603443146, - -0.04408877342939377, - -0.04036155715584755, - 0.028797946870326996, - 0.02469916269183159, - -0.09745009243488312, - -0.010940195992588997, - 0.01534411683678627, - -0.04468837380409241, - 0.07173287123441696, - 0.14669269323349, - 0.09920390695333481, - -0.10882420837879181 - ] - }, - "p244_392.wav": { - "name": "p244", - "embedding": [ - 0.03167426958680153, - 0.10426194965839386, - -0.009920000098645687, - 0.05975175276398659, - -0.051560111343860626, - 0.002617916092276573, - -0.041866034269332886, - 0.044262245297431946, - 0.023521175608038902, - 0.07011357694864273, - -0.04536845535039902, - 0.0609307698905468, - -0.05406789854168892, - -0.09309213608503342, - -0.02389051765203476, - 0.007743997499346733, - -0.017074065282940865, - 0.02355622686445713, - -0.04101406782865524, - -0.014707939699292183, - -0.04180413484573364, - -0.0053919292986392975, - -0.014366772025823593, - 0.009368307888507843, - -0.05638735741376877, - 0.03238476812839508, - -0.018987352028489113, - 0.028417643159627914, - 0.00207655131816864, - -0.0936736986041069, - 0.009874638170003891, - 0.046511806547641754, - -0.010442698374390602, - -0.024606214836239815, - 0.011192393489181995, - -0.03466886281967163, - 0.0229241531342268, - -0.02251732163131237, - -0.052576255053281784, - -0.0013754535466432571, - -0.0446104034781456, - 0.011387551203370094, - 0.010763168334960938, - -0.07146912813186646, - 0.011566242203116417, - 0.01195025909692049, - -0.042745307087898254, - -0.02464255318045616, - -0.044301148504018784, - 0.11016646027565002, - 0.03779337555170059, - 0.0480181910097599, - -0.03398082032799721, - -0.04161173850297928, - 0.12668584287166595, - 0.013045506551861763, - -0.008224982768297195, - -0.0280438382178545, - -0.00505722314119339, - 0.07046718150377274, - 0.024526391178369522, - 0.019032027572393417, - 0.05669151246547699, - 0.07353459298610687, - 0.015029383823275566, - 0.03478962928056717, - 0.06489060819149017, - 0.07210944592952728, - -0.025110721588134766, - 0.033205196261405945, - 0.05080725997686386, - 0.01700931042432785, - 0.030414501205086708, - 0.04642302170395851, - -0.016246598213911057, - 0.01746777445077896, - 0.015920985490083694, - 0.032687414437532425, - -0.015234909020364285, - -0.029043670743703842, - 0.0059959497302770615, - 0.0030358266085386276, - -0.0024327002465724945, - -0.04927331954240799, - -0.051496781408786774, - -0.03316938132047653, - 0.04965706169605255, - 0.01234703604131937, - 0.041611090302467346, - -0.005302524194121361, - 0.07120639085769653, - 0.034922804683446884, - -0.01566764898598194, - -0.062077272683382034, - 0.015825804322957993, - -0.016143178567290306, - 0.051017627120018005, - 0.014940548688173294, - 0.002984323538839817, - 0.007143537979573011, - 0.05848165228962898, - -0.013863109052181244, - 0.03863525390625, - -0.00472786370664835, - -0.048347145318984985, - -0.012241236865520477, - 0.03483852371573448, - 0.02262440323829651, - 0.03246890380978584, - 0.05019484460353851, - 0.04098641127347946, - 0.08366838842630386, - -0.04658963531255722, - -0.04764125123620033, - 0.017100946977734566, - 0.052166521549224854, - -0.04593181982636452, - 0.07495757192373276, - -0.004719093907624483, - 0.0313219279050827, - 0.05603533983230591, - 0.006932998076081276, - -0.014059900306165218, - 0.00938648171722889, - 0.0014455020427703857, - -0.05241686478257179, - 0.050783656537532806, - 0.021564047783613205, - -0.044760480523109436, - -0.0585191547870636, - 0.07667779177427292, - -0.015426401048898697, - -0.024842334911227226, - -0.005533996503800154, - 0.007311370223760605, - -0.00817357562482357, - 0.04728040099143982, - -0.03528156131505966, - 0.019626516848802567, - 0.07099315524101257, - -0.015459954738616943, - -0.04206259176135063, - -0.012673921883106232, - -0.05273896083235741, - 0.03760179132223129, - 0.014722894877195358, - 0.0070520732551813126, - 0.07482288032770157, - -0.03879670798778534, - -0.05430058017373085, - -0.011570228263735771, - 0.04430118575692177, - -0.04889555647969246, - 0.08682427555322647, - 0.04381496459245682, - 0.020590102300047874, - 0.07151583582162857, - -0.04233044013381004, - 0.005601249635219574, - -0.011790143325924873, - -0.09783865511417389, - 0.010344371199607849, - 0.017214806750416756, - -0.001142384484410286, - -0.022605106234550476, - 0.00040830671787261963, - -0.006040768697857857, - -0.00026063359109684825, - 0.014820680022239685, - 0.025661464780569077, - -0.02437320537865162, - 0.05740160495042801, - -0.08502158522605896, - -0.004859911277890205, - -0.01352146826684475, - -0.03860706463456154, - 0.035165444016456604, - -0.012399137951433659, - -0.004625169560313225, - 0.023134753108024597, - 0.030916044488549232, - -0.030799563974142075, - -0.036819979548454285, - -0.08939138054847717, - 0.00655374675989151, - 0.028716757893562317, - 0.028335902839899063, - 0.003733353689312935, - -0.013399647548794746, - 0.042861200869083405, - 0.055462975054979324, - 0.020656302571296692, - 0.009753655642271042, - 0.06613370776176453, - -0.025952599942684174, - -0.022081241011619568, - 0.025753017514944077, - 0.08026733249425888, - 0.02579480968415737, - -0.08054385334253311, - -0.08532196283340454, - -0.03218194842338562, - -0.04993097484111786, - 0.049469754099845886, - -0.017412006855010986, - 0.03988263010978699, - 0.025414496660232544, - 0.005081942770630121, - 0.017681274563074112, - -0.13362669944763184, - 0.05527804419398308, - 0.00039356574416160583, - -0.031461045145988464, - -0.006021600216627121, - 0.0017837323248386383, - 0.019522959366440773, - 0.05130888521671295, - -0.020038940012454987, - -0.015512117184698582, - 0.021845843642950058, - -0.0066452473402023315, - 0.0017231928650289774, - 0.04843810573220253, - 0.034658752381801605, - -0.007764648646116257, - -0.006077399477362633, - -0.042845241725444794, - 0.016369037330150604, - 0.005373429507017136, - 0.034566015005111694, - 0.012757807038724422, - -0.016425279900431633, - -0.11399167776107788, - 0.07710530608892441, - -0.05213498696684837, - 0.07460986077785492, - -0.006902020424604416, - 0.017613302916288376, - 0.0500674769282341, - -0.02228529006242752, - 0.08610643446445465, - 0.029319485649466515, - -0.035165365785360336, - -0.04674747213721275, - -0.013413554057478905, - -0.0360177643597126, - 0.0384388342499733, - 0.0586557574570179, - -0.007834583520889282, - -0.02187827229499817, - 0.04739297926425934, - 0.009366696700453758, - 0.09909434616565704, - 0.06780128926038742, - 0.06554730981588364, - 0.026013102382421494 - ] - }, - "p244_172.wav": { - "name": "p244", - "embedding": [ - 0.05328046530485153, - 0.10069956630468369, - -0.015530981123447418, - 0.015568692237138748, - -0.03409476578235626, - 0.05483525991439819, - -0.13426366448402405, - 0.12839853763580322, - -0.05357379838824272, - 0.14794568717479706, - -0.0880264863371849, - 0.11787037551403046, - -0.021268021315336227, - -0.1846957802772522, - -0.039139121770858765, - 0.047906529158353806, - -0.05005773529410362, - -0.015305576846003532, - -0.05758603662252426, - -0.003040645271539688, - 0.04655206948518753, - 0.029886111617088318, - 0.017577793449163437, - -0.015141883864998817, - 0.016078172251582146, - 0.06496861577033997, - 0.006860947236418724, - 0.050126463174819946, - 0.01896042190492153, - -0.05026520416140556, - -0.03194788843393326, - 0.12021004408597946, - -0.04205349087715149, - 0.006707796361297369, - 0.06351794302463531, - -0.010104700922966003, - -0.008936571888625622, - -0.054179079830646515, - -0.009878999553620815, - 0.0009941949974745512, - -0.03997116535902023, - 0.06543129682540894, - 0.0131410276517272, - -0.0035837600007653236, - 0.05563399940729141, - 0.036036573350429535, - -0.014707996509969234, - -0.06272609531879425, - -0.09007234871387482, - 0.14857691526412964, - 0.06974101066589355, - 0.006612904369831085, - -0.06900987029075623, - -0.05858932435512543, - 0.0926736444234848, - -0.023383229970932007, - -0.10982576012611389, - -0.05123686045408249, - 0.07350354641675949, - 0.15843841433525085, - -0.03553340211510658, - -0.028127815574407578, - 0.03344814479351044, - 0.10828813910484314, - 0.05147753283381462, - 0.1048969253897667, - 0.07873382419347763, - 0.0800885334610939, - 0.0014799063792452216, - 0.03434686362743378, - 0.055983975529670715, - 0.05410975217819214, - 0.059437450021505356, - -0.0249684676527977, - 0.046496957540512085, - -0.00011265433568041772, - -0.02718399092555046, - -0.0018388144671916962, - -0.022165369242429733, - -0.0060430532321333885, - -0.004844858311116695, - 0.020409464836120605, - 0.005303974263370037, - 0.02365877293050289, - -0.04108075052499771, - 0.060492824763059616, - 0.02005637437105179, - -0.020773939788341522, - 0.0633162260055542, - 0.035031870007514954, - 0.02114015631377697, - 0.04657658189535141, - -0.07545431703329086, - -0.09998656809329987, - 0.031956739723682404, - 0.0006938837468624115, - -0.0056634037755429745, - 0.0512889139354229, - 0.03894150257110596, - -0.01717195473611355, - 0.1073397845029831, - 0.05296548828482628, - -0.009820147417485714, - 0.03681395947933197, - -0.09293647110462189, - 0.12162409722805023, - 0.08498598635196686, - -0.029003962874412537, - 0.04302334412932396, - -0.0393243134021759, - 0.0640905424952507, - 0.07003886252641678, - -0.13617388904094696, - -0.07703156024217606, - 0.04188472777605057, - -0.0027434974908828735, - -0.01546061784029007, - 0.1062188670039177, - -0.0072964271530508995, - 0.025952285155653954, - 0.09513642638921738, - -0.07974665611982346, - -0.05862666293978691, - -0.023430872708559036, - 0.04660612344741821, - -0.09293046593666077, - 0.0656660944223404, - 0.04869203269481659, - -0.009260022081434727, - -0.00439292099326849, - 0.10360374301671982, - -0.014487972483038902, - -0.0055283112451434135, - -0.0013810943346470594, - -0.03009209781885147, - 0.03186986222863197, - -0.03980226442217827, - -0.0073716845363378525, - 0.02353905700147152, - 0.03632710501551628, - 0.040201179683208466, - -0.0023763279896229506, - -0.03501234948635101, - -0.11208435148000717, - 0.009459732100367546, - 0.041710641235113144, - 0.06681032478809357, - -0.0059346770867705345, - -0.005967825651168823, - -0.04604911059141159, - -0.05021928995847702, - 0.004382844548672438, - -0.026179373264312744, - 0.07537036389112473, - -0.010914250276982784, - 0.006028651259839535, - 0.11042088270187378, - 0.000616279779933393, - 0.011490372940897942, - -0.050919823348522186, - -0.01174293365329504, - 0.030776500701904297, - 0.05170102417469025, - -0.06650855392217636, - -0.06819067150354385, - 0.00012394911027513444, - 0.026248008012771606, - -0.008239896968007088, - 0.04866882413625717, - 0.04761533439159393, - 0.010837987065315247, - 0.0285421684384346, - -0.07714320719242096, - 0.024356942623853683, - -0.11078554391860962, - -0.05829313024878502, - -0.02049107477068901, - -0.03182903304696083, - -0.023296533152461052, - 0.07409697026014328, - 0.012120941653847694, - 0.030805163085460663, - -0.018653515726327896, - -0.0897546038031578, - -0.08098743855953217, - 0.06678366661071777, - 0.0935417041182518, - -0.0020603658631443977, - 0.03990597277879715, - 0.03770091384649277, - -0.01316265668720007, - 0.05057818442583084, - 0.06646673381328583, - 0.10557480156421661, - -0.002194773405790329, - -0.0006860420107841492, - -0.06764396280050278, - 0.07547280192375183, - 0.07125060260295868, - -0.08722849935293198, - -0.07954218238592148, - -0.008046845905482769, - -0.0590706467628479, - 0.03370240703225136, - -0.017962973564863205, - 0.016899481415748596, - 0.04597979411482811, - -0.008341102860867977, - -0.09900788962841034, - -0.09048245847225189, - 0.0896284207701683, - -0.07918136566877365, - -0.0111524797976017, - -0.06500230729579926, - 0.04423707351088524, - 0.08531510829925537, - 0.02041160687804222, - -0.03175988793373108, - -0.013171052560210228, - 0.0306834913790226, - -0.05320463702082634, - -0.009222344495356083, - 0.023275045678019524, - 0.02134796231985092, - -0.10521458089351654, - 0.030978351831436157, - -0.08062485605478287, - 0.06755636632442474, - -0.06620991230010986, - 0.143857941031456, - -0.008605197072029114, - -0.05112457275390625, - -0.09345197677612305, - 0.04196741431951523, - -0.021997880190610886, - 0.04844974726438522, - 0.03618605434894562, - 0.06631191819906235, - 0.04038413614034653, - -0.08559726923704147, - 0.10513557493686676, - 0.02961728349328041, - -0.021717406809329987, - -0.07660029828548431, - -0.05497099086642265, - -0.053230129182338715, - 0.02041519619524479, - 0.018541604280471802, - -0.08590307086706161, - -0.011757295578718185, - 0.01535176020115614, - -0.021901747211813927, - 0.06670995056629181, - 0.1253884881734848, - 0.03364139422774315, - -0.12070481479167938 - ] - }, - "p244_143.wav": { - "name": "p244", - "embedding": [ - 0.04184994101524353, - 0.09428860992193222, - 0.010645839385688305, - 0.010888501070439816, - -0.029055725783109665, - 0.06402722001075745, - -0.15584418177604675, - 0.1271580457687378, - -0.06619051098823547, - 0.11769188940525055, - -0.08112804591655731, - 0.08851327747106552, - -0.02373885177075863, - -0.1908387839794159, - -0.06657776981592178, - 0.059456080198287964, - -0.04148675501346588, - -0.026541031897068024, - -0.008902423083782196, - -0.006662983447313309, - 0.036217715591192245, - 0.011808092705905437, - 0.021532896906137466, - 0.0334765799343586, - 0.022541530430316925, - 0.04832759499549866, - 0.013400953263044357, - 0.059601813554763794, - 0.014490913599729538, - -0.00476585328578949, - -0.011603492312133312, - 0.12306865304708481, - -0.03193487226963043, - -0.008044440299272537, - 0.07113578170537949, - 0.00410066545009613, - 0.00383190019056201, - -0.0649915337562561, - -0.004404890816658735, - -0.013429416343569756, - -0.05097422003746033, - 0.07641692459583282, - 0.02889288030564785, - 0.019557824358344078, - 0.04021153971552849, - 0.02833852916955948, - -0.00547438021749258, - -0.047851454466581345, - -0.10886617749929428, - 0.1315833032131195, - 0.05208972096443176, - 0.008821885101497173, - -0.08736114948987961, - -0.059351228177547455, - 0.11320991814136505, - -0.025807496160268784, - -0.09121562540531158, - -0.04701714962720871, - 0.08738429844379425, - 0.17206811904907227, - -0.03326084464788437, - -0.024036094546318054, - 0.024509388953447342, - 0.11141562461853027, - 0.0381050705909729, - 0.09966093301773071, - 0.06681782007217407, - 0.08818402141332626, - 0.001934309839271009, - 0.0152193708345294, - 0.06099681556224823, - 0.036837417632341385, - 0.016656646504998207, - -0.04221617430448532, - 0.026002466678619385, - 0.016049271449446678, - -0.02466241829097271, - 0.02905607782304287, - -0.018843408674001694, - -0.0032626772299408913, - -0.02033657394349575, - 0.006928074639290571, - -0.016060620546340942, - 0.015299877151846886, - -0.03568081185221672, - 0.04823293536901474, - 0.007566848304122686, - -0.004285029135644436, - 0.07963285595178604, - 0.05325556918978691, - 0.003978057764470577, - 0.04841625317931175, - -0.059608228504657745, - -0.08044113963842392, - 0.02077154442667961, - 0.0003820030833594501, - -0.016218222677707672, - 0.06474467366933823, - 0.02580983005464077, - -0.022742342203855515, - 0.09970265626907349, - 0.05864737555384636, - -0.0007104115793481469, - 0.03276856243610382, - -0.11037733405828476, - 0.11361926794052124, - 0.06760273873806, - -0.016312066465616226, - 0.04291301220655441, - -0.028618205338716507, - 0.04881608113646507, - 0.08824889361858368, - -0.13560786843299866, - -0.07566869258880615, - 0.05233592912554741, - 0.02483828365802765, - 0.002956368727609515, - 0.10989207029342651, - -0.015415707603096962, - -0.007515076547861099, - 0.08407189697027206, - -0.060011789202690125, - -0.07183945178985596, - -0.025250663980841637, - 0.04685008153319359, - -0.07184488326311111, - 0.04701438546180725, - 0.04618222266435623, - 0.01143421046435833, - -0.030484478920698166, - 0.0887065976858139, - -3.5829223634209484e-05, - -0.017796283587813377, - 0.005997110158205032, - -0.01966599002480507, - 0.05021780729293823, - -0.0293545201420784, - 0.0037592952139675617, - 0.031366609036922455, - 0.047960132360458374, - 0.031941745430231094, - 0.023489337414503098, - -0.028179382905364037, - -0.09630221128463745, - -0.023424675688147545, - 0.056784313172101974, - 0.07821419835090637, - -0.013793924823403358, - -0.025265701115131378, - -0.06158892437815666, - -0.045521851629018784, - 0.009584767743945122, - -0.008200234733521938, - 0.09907764196395874, - 0.008400815539062023, - 0.006592373829334974, - 0.09405991435050964, - -0.004040364176034927, - 0.013872742652893066, - -0.04959714412689209, - 0.0009657462942413986, - 0.02421344444155693, - 0.04896105080842972, - -0.057883404195308685, - -0.06314706057310104, - 0.003681553527712822, - 0.03518075495958328, - -0.012151641771197319, - 0.022868311032652855, - 0.03299618512392044, - 0.009383068419992924, - 0.025491898879408836, - -0.08730727434158325, - 0.04629608243703842, - -0.10041502118110657, - -0.04661624878644943, - -0.020765312016010284, - -0.010293352417647839, - -0.013416923582553864, - 0.07175701856613159, - 0.03053620271384716, - 0.028793223202228546, - 0.0034427910577505827, - -0.09598682820796967, - -0.06499901413917542, - 0.06358711421489716, - 0.09655596315860748, - 0.0029036931227892637, - 0.05007064342498779, - 0.039479102939367294, - -0.025728216394782066, - 0.060825273394584656, - 0.07051520049571991, - 0.08499304950237274, - -0.03300131857395172, - 0.0010429683607071638, - -0.04955942928791046, - 0.06396093964576721, - 0.05872654542326927, - -0.10223034024238586, - -0.08746303617954254, - 0.002991980640217662, - -0.041445694863796234, - 0.035602591931819916, - -0.014818340539932251, - 0.019820790737867355, - 0.025072623044252396, - -0.037108395248651505, - -0.09280560910701752, - -0.09614585340023041, - 0.0807623416185379, - -0.07481952011585236, - -0.015103710815310478, - -0.05831623822450638, - 0.041433896869421005, - 0.08630160987377167, - 0.015765566378831863, - -0.018387479707598686, - -0.020461130887269974, - 0.020097073167562485, - -0.05137387663125992, - -0.039864230901002884, - 0.024097442626953125, - -0.006324879825115204, - -0.10931193828582764, - 0.030139263719320297, - -0.0839049369096756, - 0.10349252074956894, - -0.054028645157814026, - 0.14437945187091827, - -0.016675271093845367, - -0.05906803905963898, - -0.08442769944667816, - -0.0025296476669609547, - -0.01479028444737196, - 0.04959484934806824, - 0.029672494158148766, - 0.06280151009559631, - 0.013846802525222301, - -0.03165620192885399, - 0.10608835518360138, - 0.03363058343529701, - -0.036029115319252014, - -0.07054778933525085, - -0.027592726051807404, - -0.04054246097803116, - 0.018527820706367493, - -0.0056319586001336575, - -0.09324796497821808, - -0.006910949945449829, - 0.02273549698293209, - -0.03458410128951073, - 0.0704135149717331, - 0.12127451598644257, - 0.04999300092458725, - -0.12125937640666962 - ] - } -} diff --git a/TTS/tests/data/dummy_speakers.pth b/TTS/tests/data/dummy_speakers.pth deleted file mode 100644 index bcb3e80ef73d1761e2aed2f0df8c0aab4042bb01..0000000000000000000000000000000000000000 --- a/TTS/tests/data/dummy_speakers.pth +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7d615cfb7f8244a21d506b8b69574cdb88f8b9559b4b8d504c3e472692ed25c9 -size 905903 diff --git a/TTS/tests/data/dummy_speakers2.json b/TTS/tests/data/dummy_speakers2.json deleted file mode 100644 index 9c431d609f711f00317a372496982a9507fd9825..0000000000000000000000000000000000000000 --- a/TTS/tests/data/dummy_speakers2.json +++ /dev/null @@ -1,100226 +0,0 @@ -{ - "p245_302.wav": { - "name": "p245", - "embedding": [ - 0.05539746582508087, - 0.08493061363697052, - -0.010013150051236153, - 0.04369359463453293, - -0.05871078372001648, - 0.07792330533266068, - -0.12001194059848785, - 0.09205509722232819, - -0.053687505424022675, - 0.13110113143920898, - -0.0672345906496048, - 0.09076011180877686, - -0.012022187933325768, - -0.1773194968700409, - -0.03690509498119354, - 0.052139587700366974, - -0.06511855870485306, - -0.014169753529131413, - -0.0788075178861618, - -0.022713735699653625, - 0.026002388447523117, - 0.04142642393708229, - 0.06633599102497101, - -0.040966324508190155, - 0.05216488242149353, - 0.043708473443984985, - 0.008947450667619705, - 0.043884553015232086, - 0.015242422930896282, - -0.07271697372198105, - -0.03943272680044174, - 0.11445401608943939, - -0.01976911909878254, - -0.001584329642355442, - 0.03226276487112045, - -0.002877067308872938, - 0.006218053866177797, - -0.09210439026355743, - -0.023884698748588562, - 0.019102394580841064, - -0.023189997300505638, - 0.07678322494029999, - 0.04511963576078415, - -0.028598245233297348, - 0.02654365450143814, - -0.026303084567189217, - -0.036059144884347916, - -0.04994352161884308, - -0.10899694263935089, - 0.16808779537677765, - 0.0568464957177639, - 0.017774248495697975, - -0.0766686350107193, - -0.08056356757879257, - 0.11318203061819077, - -0.0009237118065357208, - -0.11983267217874527, - -0.04011853411793709, - 0.06481920927762985, - 0.18528658151626587, - -0.020618144422769547, - 0.0030966848134994507, - 0.030582068488001823, - 0.11048240959644318, - 0.026203282177448273, - 0.08886025100946426, - 0.0776662528514862, - 0.08468905836343765, - 0.02009391225874424, - 0.053141623735427856, - 0.04102938249707222, - 0.059041380882263184, - -0.006237464025616646, - -0.018360337242484093, - 0.015418153256177902, - -0.03559226542711258, - -0.05805520713329315, - -0.00861218199133873, - -0.021234268322587013, - -0.025556275621056557, - -0.012332704849541187, - -0.009777471423149109, - 0.03721384331583977, - 0.010376224294304848, - -0.05210898444056511, - 0.035450324416160583, - 0.0026437342166900635, - -0.03329150378704071, - 0.07028764486312866, - 0.03101171739399433, - 0.003101848065853119, - 0.029428653419017792, - -0.03445912152528763, - -0.11992329359054565, - -0.006469260435551405, - 0.02472860924899578, - -0.0021879260893911123, - 0.06576769798994064, - 0.04159736633300781, - -0.044104330241680145, - 0.10868340730667114, - 0.06065361574292183, - -0.00814537052065134, - 0.029497724026441574, - -0.0820949599146843, - 0.09694784879684448, - 0.10299994796514511, - 0.007466038689017296, - 0.0573151595890522, - -0.04003140702843666, - 0.0748046338558197, - 0.07954449951648712, - -0.14061805605888367, - -0.07225356996059418, - 0.030713198706507683, - -0.01169175747781992, - 0.015277700498700142, - 0.101996049284935, - 0.0023796744644641876, - 0.013835912570357323, - 0.08836984634399414, - -0.08798637241125107, - -0.053786784410476685, - -0.025867177173495293, - 0.07090725004673004, - -0.05228910967707634, - 0.024839768186211586, - 0.0543626993894577, - -0.048099253326654434, - -0.01027676835656166, - 0.04654526337981224, - -0.0034045036882162094, - 0.003895972855389118, - 0.04250902682542801, - -0.05232023075222969, - 0.06287448853254318, - -0.04146592691540718, - -0.0022073618602007627, - 0.07169511169195175, - 0.057035692036151886, - 0.04202979430556297, - -0.01752091944217682, - -0.03615778684616089, - -0.07597745209932327, - 0.0076013305224478245, - 0.03388708084821701, - 0.06191568076610565, - -0.01607775315642357, - 0.004401837941259146, - -0.06070601940155029, - -0.07674850523471832, - 0.059249889105558395, - -0.02222420647740364, - 0.10215721279382706, - -0.000883960397914052, - 0.010600706562399864, - 0.09869417548179626, - 0.011313805356621742, - -0.01187396701425314, - -0.04851905256509781, - -0.020747501403093338, - 0.043711841106414795, - 0.04022590070962906, - -0.06653523445129395, - -0.04014153778553009, - 0.012923783622682095, - 0.0024894566740840673, - -0.03801071271300316, - 0.017412755638360977, - 0.03090047463774681, - 0.021060986444354057, - 0.04588426649570465, - -0.061013057827949524, - 0.022323710843920708, - -0.0921829417347908, - -0.009262383915483952, - -0.0024641728959977627, - -0.04311069846153259, - -0.02953970432281494, - 0.11183556914329529, - 0.041883185505867004, - 0.01362229697406292, - -0.009713159874081612, - -0.07398185133934021, - -0.03448636084794998, - 0.06774093955755234, - 0.06281304359436035, - 0.005423923954367638, - 0.04070146754384041, - 0.04723779857158661, - 0.0025808606296777725, - 0.04067641496658325, - 0.0840836763381958, - 0.0662192553281784, - 6.253225728869438e-05, - -0.03287994861602783, - -0.07941965758800507, - 0.09294897317886353, - 0.08651109039783478, - -0.09662938117980957, - -0.08838298916816711, - -0.05120178312063217, - -0.06626439094543457, - 0.04893879592418671, - -0.017820902168750763, - -0.007398976478725672, - 0.02896031364798546, - -0.025766948238015175, - -0.10214102268218994, - -0.10014186799526215, - 0.1211889386177063, - -0.0510331466794014, - -0.02461140602827072, - -0.06880723685026169, - 0.02751768007874489, - 0.07350686937570572, - 0.038249749690294266, - -0.009252945892512798, - 0.013650302775204182, - 0.04884907230734825, - -0.08785197138786316, - 0.003136417828500271, - 0.05015810579061508, - -0.00904669426381588, - -0.10715165734291077, - 0.026881497353315353, - -0.07288249582052231, - 0.08610662072896957, - -0.06228051334619522, - 0.1673828363418579, - 0.006395484320819378, - -0.0426831915974617, - -0.08067314326763153, - 0.06747708469629288, - -0.049200400710105896, - 0.0475490465760231, - 0.05716557055711746, - 0.060844384133815765, - 0.04086177423596382, - -0.08346255123615265, - 0.0869344025850296, - 0.019769223406910896, - -0.020300764590501785, - -0.0708683505654335, - -0.030514180660247803, - -0.027429744601249695, - 0.021853724494576454, - -0.012019682675600052, - -0.0613793209195137, - 0.009929075837135315, - 0.0261012464761734, - -0.018161576241254807, - 0.07936893403530121, - 0.12791746854782104, - 0.08958099782466888, - -0.09469571709632874 - ] - }, - "p245_342.wav": { - "name": "p245", - "embedding": [ - 0.05005024001002312, - 0.10739441215991974, - -0.015767700970172882, - 0.03197174146771431, - -0.049751877784729004, - 0.07368919253349304, - -0.11086710542440414, - 0.12266570329666138, - -0.055884428322315216, - 0.14480051398277283, - -0.09230168908834457, - 0.10953367501497269, - -0.0357954278588295, - -0.1691109836101532, - -0.04994215443730354, - 0.05317877233028412, - -0.04780467599630356, - -0.028082450851798058, - -0.030347973108291626, - -0.0015789138851687312, - 0.03955546021461487, - 0.04067610204219818, - 0.028119998052716255, - 0.00921852607280016, - 0.030067767947912216, - 0.061427608132362366, - -0.0016679083928465843, - 0.05357091501355171, - 0.023015424609184265, - -0.050316497683525085, - -0.04255743324756622, - 0.1287825107574463, - -0.04624408483505249, - 0.023578952997922897, - 0.047039519995450974, - 0.00930054672062397, - 0.004682430997490883, - -0.06462899595499039, - -0.019383519887924194, - -0.008494102396070957, - -0.048186637461185455, - 0.07191027700901031, - 0.015244226902723312, - -0.0003928039222955704, - 0.03503163531422615, - 0.008267269469797611, - -0.02512257918715477, - -0.05235607177019119, - -0.09180445224046707, - 0.15558570623397827, - 0.06139551103115082, - 0.006414560601115227, - -0.07681959867477417, - -0.07630625367164612, - 0.10429195314645767, - -0.00981030985713005, - -0.11445462703704834, - -0.036746423691511154, - 0.07292406260967255, - 0.16880059242248535, - -0.01842034049332142, - -0.033148035407066345, - 0.013845782727003098, - 0.11980786919593811, - 0.050728216767311096, - 0.10279352217912674, - 0.07316798716783524, - 0.09072566032409668, - 0.0038510854355990887, - 0.02752499468624592, - 0.06867751479148865, - 0.0616176500916481, - 0.05001520365476608, - -0.024926170706748962, - 0.026522532105445862, - 0.004151749890297651, - -0.03625208139419556, - 0.026617109775543213, - -0.01584431901574135, - -0.010617567226290703, - -0.020938802510499954, - 0.008502485230565071, - -0.004227738361805677, - 0.014398372732102871, - -0.025087807327508926, - 0.045862697064876556, - 0.023492811247706413, - -0.015581879764795303, - 0.07379084825515747, - 0.05002640560269356, - 0.004349455237388611, - 0.05815402418375015, - -0.07435561716556549, - -0.10093250125646591, - 0.012758184224367142, - 0.0040325382724404335, - 0.02395264059305191, - 0.08153457194566727, - 0.033792220056056976, - -0.019414838403463364, - 0.1033405214548111, - 0.0384766086935997, - 0.006529564969241619, - 0.027514591813087463, - -0.10867736488580704, - 0.1150912344455719, - 0.09220621734857559, - -0.024154093116521835, - 0.03327079489827156, - -0.029712006449699402, - 0.08647294342517853, - 0.08700971305370331, - -0.14513355493545532, - -0.07308748364448547, - 0.03144310414791107, - 0.007094813045114279, - 0.0018512541428208351, - 0.0968799740076065, - -0.016651807352900505, - 0.013502601534128189, - 0.09198576211929321, - -0.0859537273645401, - -0.054299745708703995, - -0.030169349163770676, - 0.04377683997154236, - -0.0789153128862381, - 0.04800377041101456, - 0.03584020584821701, - -0.0009612710564397275, - -0.012059178203344345, - 0.07625425606966019, - -0.007969949394464493, - -0.003650201950222254, - 0.025299428030848503, - -0.05164157599210739, - 0.033006470650434494, - -0.03845863789319992, - 0.0038426616229116917, - 0.05190078914165497, - 0.04112619906663895, - 0.05069519951939583, - 0.001691763405688107, - -0.022290080785751343, - -0.09915561228990555, - 0.013304539024829865, - 0.05602234601974487, - 0.05504598468542099, - -0.01420528907328844, - -0.025512415915727615, - -0.04316616803407669, - -0.0638405904173851, - 0.036458369344472885, - -0.0006715459749102592, - 0.08267225325107574, - 0.0027876130770891905, - 0.0013964123791083694, - 0.11250487715005875, - 0.014469620771706104, - -0.007276642601937056, - -0.05617782846093178, - -0.027922146022319794, - 0.01478651538491249, - 0.06186310201883316, - -0.08734073489904404, - -0.07542749494314194, - 0.015517745167016983, - 0.012257397174835205, - -0.020948491990566254, - 0.03487060219049454, - 0.054895590990781784, - 0.013588862493634224, - 0.04263032600283623, - -0.0647064745426178, - 0.01728040724992752, - -0.12200611084699631, - -0.06621172279119492, - -0.019416222348809242, - -0.030050568282604218, - -0.0017845522379502654, - 0.08169281482696533, - 0.017037319019436836, - 0.02421201765537262, - 0.0037975357845425606, - -0.08823724091053009, - -0.07071515917778015, - 0.08511896431446075, - 0.08436156809329987, - 0.01660916581749916, - 0.057988524436950684, - 0.05465036630630493, - -0.032873932272195816, - 0.05294205993413925, - 0.06271162629127502, - 0.11366848647594452, - -0.02610023133456707, - 0.015349031426012516, - -0.07377832382917404, - 0.07414689660072327, - 0.07684557139873505, - -0.11574330925941467, - -0.10163731873035431, - -0.023144066333770752, - -0.051269568502902985, - 0.045116886496543884, - -0.026288434863090515, - 0.011183633469045162, - 0.03164569288492203, - -0.030619151890277863, - -0.10015660524368286, - -0.09329545497894287, - 0.09745553135871887, - -0.04969329759478569, - -0.02546953782439232, - -0.08311304450035095, - 0.04494427889585495, - 0.07559853792190552, - 0.036820605397224426, - -0.030338197946548462, - 0.01947575807571411, - 0.05258313566446304, - -0.06045728921890259, - -0.023316536098718643, - 0.04226306453347206, - 0.0016495431773364544, - -0.09124850481748581, - 0.011782881803810596, - -0.06902118027210236, - 0.09021267294883728, - -0.06915663182735443, - 0.16398003697395325, - -0.022971302270889282, - -0.06647606194019318, - -0.08104446530342102, - 0.05106651410460472, - -0.017583303153514862, - 0.03503591939806938, - 0.042305998504161835, - 0.05885643512010574, - 0.02223961427807808, - -0.0645500048995018, - 0.11483395099639893, - 0.03016156330704689, - -0.03008243814110756, - -0.0585399866104126, - -0.04248024523258209, - -0.04242590814828873, - 0.026500295847654343, - 0.002028970280662179, - -0.08147037774324417, - 0.0017442512325942516, - 0.01499109622091055, - -0.02363378368318081, - 0.06126737967133522, - 0.1384272277355194, - 0.06977587938308716, - -0.11724086105823517 - ] - }, - "p245_379.wav": { - "name": "p245", - "embedding": [ - 0.04385417327284813, - 0.08368086814880371, - 0.0004669101908802986, - -0.010091540403664112, - -0.03873376548290253, - 0.046230755746364594, - -0.14813315868377686, - 0.13340362906455994, - -0.03948982059955597, - 0.15426620841026306, - -0.06360238790512085, - 0.11138015985488892, - -0.008127805776894093, - -0.18019263446331024, - -0.03770577162504196, - 0.04193387180566788, - -0.057793062180280685, - -0.04214119166135788, - -0.056620948016643524, - -0.04057123512029648, - 0.051402948796749115, - 0.05183681845664978, - 0.013680952601134777, - 0.018274657428264618, - 0.0034123891964554787, - 0.062409352511167526, - 0.02043917216360569, - 0.055918335914611816, - 0.023541729897260666, - -0.08195513486862183, - -0.02083502523601055, - 0.08724872767925262, - -0.028091277927160263, - 0.018559720367193222, - 0.04656890779733658, - -0.025418013334274292, - 0.030472083017230034, - -0.05127841979265213, - -0.03467317670583725, - 0.03528723865747452, - -0.03902474045753479, - 0.07907763868570328, - 0.0074369898065924644, - 0.007716057356446981, - 0.05388845503330231, - 0.029956858605146408, - -0.015823351219296455, - -0.0724020004272461, - -0.09075143933296204, - 0.1657782644033432, - 0.10434740036725998, - -0.019610103219747543, - -0.04357729107141495, - -0.07185962796211243, - 0.08603136241436005, - -0.052245061844587326, - -0.10766220092773438, - -0.05293136462569237, - 0.06449665129184723, - 0.12944144010543823, - -0.042106788605451584, - -0.04758021980524063, - 0.049494460225105286, - 0.12775693833827972, - 0.040527358651161194, - 0.07349203526973724, - 0.0795803964138031, - 0.0761307030916214, - -0.044778965413570404, - 0.003302923869341612, - 0.03309907764196396, - 0.07771170139312744, - 0.04621581360697746, - 0.005038945935666561, - 0.044806189835071564, - 0.020960239693522453, - -0.0068280380219221115, - 8.056375372689217e-05, - -0.019911594688892365, - 0.02049337327480316, - -0.010624206624925137, - 0.03540490195155144, - -0.021328754723072052, - 0.012203291058540344, - -0.02071482688188553, - 0.06538721919059753, - -0.008392799645662308, - 0.000987844541668892, - 0.060524582862854004, - 0.023379843682050705, - 0.04655498266220093, - 0.054990898817777634, - -0.05890372022986412, - -0.08285146206617355, - 0.028673967346549034, - 0.008595142513513565, - -0.011616579256951809, - 0.056019872426986694, - 0.017910296097397804, - -0.02655627205967903, - 0.1350702941417694, - 0.049260806292295456, - -0.028640856966376305, - 0.03055524453520775, - -0.10077312588691711, - 0.12397953122854233, - 0.07329561561346054, - -0.034036532044410706, - 0.03970664367079735, - -0.05486592650413513, - 0.06752245128154755, - 0.04661741852760315, - -0.1333666741847992, - -0.09235265851020813, - 0.043007396161556244, - 0.02136904001235962, - -0.02561361901462078, - 0.10230007022619247, - -0.005486679263412952, - 0.033191148191690445, - 0.10709051787853241, - -0.056307561695575714, - -0.04276499152183533, - -0.01762603223323822, - 0.05830918997526169, - -0.0918903574347496, - 0.060251664370298386, - 0.04541034623980522, - 0.0014724340289831161, - 0.017731232568621635, - 0.1095895916223526, - -0.022439848631620407, - -0.006722745485603809, - -0.012465088628232479, - -0.03208261355757713, - 0.01631762459874153, - -0.04512239620089531, - -0.009204409085214138, - 0.021059151738882065, - 0.0491592101752758, - 0.03468703478574753, - -0.0031415175180882215, - -0.0552615225315094, - -0.12650644779205322, - 0.018601013347506523, - -0.0013559520011767745, - 0.07058518379926682, - 0.0008318508043885231, - -0.0053475843742489815, - -0.05491418391466141, - -0.049462370574474335, - -0.024400413036346436, - -0.024958988651633263, - 0.06559912860393524, - -0.024860378354787827, - 0.02269887924194336, - 0.09741535037755966, - 0.012000896036624908, - 0.0035986807197332382, - -0.034669265151023865, - -0.025829574093222618, - -0.003224350977689028, - 0.047697536647319794, - -0.046893130987882614, - -0.06946690380573273, - 0.005941083189100027, - 0.04294610768556595, - 0.01209615170955658, - 0.06000249832868576, - 0.03875409811735153, - 0.012823483906686306, - 0.03734605759382248, - -0.09658080339431763, - 0.0314655676484108, - -0.10068618506193161, - -0.06583625078201294, - -0.01892363652586937, - -0.0025274772197008133, - -0.01628824882209301, - 0.0637492835521698, - -0.008107378147542477, - 0.048660408705472946, - -0.010005421936511993, - -0.10025914013385773, - -0.0969337448477745, - 0.059523966163396835, - 0.0996452122926712, - -0.004202151205390692, - 0.045321013778448105, - 0.05651431530714035, - -0.014919697307050228, - 0.06441773474216461, - 0.04368766397237778, - 0.10110782086849213, - -0.0043152268044650555, - 0.03423415124416351, - -0.059874605387449265, - 0.06583072245121002, - 0.04978032037615776, - -0.08416496962308884, - -0.073335662484169, - -0.010527554899454117, - -0.07210519164800644, - 0.035875968635082245, - -0.0031813548412173986, - 0.012447054497897625, - 0.04415292665362358, - 0.00752978352829814, - -0.08800460398197174, - -0.05641252547502518, - 0.07591962814331055, - -0.07787096500396729, - -0.011992206797003746, - -0.057379916310310364, - 0.036020129919052124, - 0.12026499956846237, - 0.0666547641158104, - -0.017779793590307236, - -0.04473390430212021, - 0.04401383921504021, - -0.02994568645954132, - 0.004939892329275608, - 0.027159716933965683, - 0.030616983771324158, - -0.10693733394145966, - 0.02875242382287979, - -0.09080235660076141, - 0.04131399840116501, - -0.05450586974620819, - 0.1073312759399414, - 0.010020781308412552, - -0.0629810318350792, - -0.09145230054855347, - 0.026476040482521057, - -0.0383373461663723, - 0.060232680290937424, - 0.0011733348947018385, - 0.04009602963924408, - 0.069184809923172, - -0.06585222482681274, - 0.10212516039609909, - 0.05953359603881836, - -0.04728677496314049, - -0.06880010664463043, - -0.04774005338549614, - -0.024935949593782425, - 0.03395010158419609, - 0.03719611465930939, - -0.07992134988307953, - -0.03410416841506958, - 0.012216593138873577, - -0.04541661962866783, - 0.09453573077917099, - 0.13344059884548187, - 0.05227658897638321, - -0.1507265418767929 - ] - }, - "p245_146.wav": { - "name": "p245", - "embedding": [ - 0.05173081159591675, - 0.08781048655509949, - 0.03257787972688675, - 0.005466929636895657, - -0.023618539795279503, - 0.015054089948534966, - -0.11388292163610458, - 0.1028447076678276, - 0.007264353334903717, - 0.07433748990297318, - -0.11498712748289108, - 0.10358240455389023, - -0.05607076734304428, - -0.1409558355808258, - -0.04124286398291588, - 0.03587265685200691, - -0.04401744529604912, - -0.01768949255347252, - -0.02214878797531128, - -0.010046346113085747, - 0.035469312220811844, - 0.014919303357601166, - 0.04470502957701683, - 0.018321475014090538, - -0.00444794399663806, - 0.04457274079322815, - -0.004052337259054184, - 0.03477124497294426, - 0.021253926679491997, - -0.005067147314548492, - 0.021340904757380486, - 0.039399079978466034, - -0.007815222255885601, - 0.055303506553173065, - 0.06028258427977562, - 0.02536826580762863, - -0.0054739429615437984, - -0.018883245065808296, - -0.03618921339511871, - 0.013414287939667702, - -0.04407748207449913, - 0.055351853370666504, - 0.02702566236257553, - -0.03960036486387253, - 0.0490243062376976, - 0.04641438648104668, - -0.016285691410303116, - -0.01790410652756691, - -0.10511147230863571, - 0.12259026616811752, - 0.010291787795722485, - 0.03289821743965149, - -0.08099640905857086, - -0.026124536991119385, - 0.09215167164802551, - -0.050865575671195984, - -0.09459369629621506, - -0.028084008023142815, - 0.07599273324012756, - 0.09264038503170013, - -0.023951835930347443, - -0.041913505643606186, - -0.005671866238117218, - 0.0582917258143425, - 0.041189368814229965, - 0.05618399381637573, - 0.0817662701010704, - 0.09764754772186279, - -0.03388510271906853, - 0.010172495618462563, - 0.06193658709526062, - 0.03605092316865921, - 0.06660737097263336, - 0.006852769758552313, - -0.004304143600165844, - -0.006190738640725613, - 0.0004641196574084461, - 0.019091667607426643, - -0.009173627942800522, - -0.004967373795807362, - -0.027705632150173187, - -0.008259315975010395, - -0.0029292358085513115, - 0.002002920024096966, - -0.02405666932463646, - 0.03258177638053894, - 0.031177019700407982, - 0.008372969925403595, - 0.06282497942447662, - 0.06677483022212982, - -0.01705140992999077, - 0.046009503304958344, - -0.03578224405646324, - -0.07554700970649719, - -0.03225565701723099, - -0.020589854568243027, - 0.03575562685728073, - 0.035922177135944366, - 0.03503880649805069, - 0.023354357108473778, - 0.0855662077665329, - 0.0254385843873024, - -0.0036251756828278303, - 0.0032674050889909267, - -0.10853132605552673, - 0.08199082314968109, - 0.05580103024840355, - -0.027594666928052902, - 0.019852720201015472, - -0.036443717777729034, - 0.048316389322280884, - 0.07583539932966232, - -0.05360352247953415, - -0.03800172358751297, - 0.024394333362579346, - 0.03642188012599945, - 0.03318864107131958, - 0.07662512362003326, - -0.01152440719306469, - 0.016784314066171646, - 0.11875718086957932, - -0.07176057249307632, - -0.024109384045004845, - 0.005587983876466751, - 0.009327013045549393, - -0.03365793824195862, - 0.05791780352592468, - 0.029259514063596725, - 0.02902703545987606, - 0.004038798622786999, - 0.06939239799976349, - 0.00478143896907568, - 0.009569157846271992, - -0.036234915256500244, - -0.015711260959506035, - 0.02211536280810833, - -0.02117694728076458, - 0.0007077722693793476, - 0.06763876974582672, - 0.06141200661659241, - 0.04103091359138489, - 0.06552741676568985, - -0.05750571936368942, - -0.0852167159318924, - 0.011977690272033215, - 0.05217904597520828, - 0.047709863632917404, - -0.007119899149984121, - -0.03633209317922592, - -0.04580448567867279, - -0.007685321383178234, - 0.04970385879278183, - -0.0024655070155858994, - 0.05368969962000847, - -0.0014410652220249176, - -0.009220248088240623, - 0.08319792151451111, - 0.004213802516460419, - -0.008937712758779526, - -0.07948096841573715, - -0.05960806831717491, - -0.025604955852031708, - 0.024362564086914062, - -0.10140591114759445, - -0.054099615663290024, - -0.023109978064894676, - 0.037883318960666656, - -0.0025205023121088743, - 0.0227670781314373, - 0.05524842441082001, - -0.005986891686916351, - 0.01179206557571888, - -0.03954809904098511, - 0.01663348637521267, - -0.06980662047863007, - -0.10311965644359589, - 0.01984083279967308, - -0.00989723764359951, - 0.021990396082401276, - 0.05811266228556633, - 0.005904274992644787, - 0.03793155774474144, - -0.01590459607541561, - -0.09037895500659943, - -0.06753981113433838, - 0.061282679438591, - 0.021295949816703796, - 0.0032610055059194565, - 0.05217217653989792, - 0.0253852941095829, - -0.0741269439458847, - 0.07798756659030914, - 0.01668640784919262, - 0.0862961933016777, - -0.07870747148990631, - 0.02164555713534355, - -0.027306711301207542, - 0.03223402425646782, - 0.06706254184246063, - -0.06367616355419159, - -0.08458103984594345, - -0.050511181354522705, - -0.02036047726869583, - 0.0028320476412773132, - -0.016799330711364746, - -0.005957796238362789, - 0.017700176686048508, - -0.01823967508971691, - -0.06084313616156578, - -0.08374806493520737, - 0.014344906434416771, - -0.03149090334773064, - 0.012745125219225883, - -0.05736103653907776, - 0.03571572154760361, - 0.025993801653385162, - -0.019825372844934464, - -0.0036927226465195417, - 0.021637266501784325, - -0.002274036407470703, - -0.04890124127268791, - -0.0485353097319603, - 0.024078156799077988, - 0.04139643907546997, - -0.011267557740211487, - -0.03186582773923874, - -0.07837104797363281, - 0.04924409091472626, - -0.010795444250106812, - 0.12591981887817383, - -0.012514190748333931, - -0.04951813071966171, - -0.0067854104563593864, - -0.032804928719997406, - -0.04248955100774765, - 0.03967583552002907, - 0.029716845601797104, - 0.032708458602428436, - 0.007038564886897802, - -0.02184302732348442, - 0.0928443893790245, - 0.05198834463953972, - -0.04275655746459961, - -0.04693467542529106, - -0.048397552222013474, - -0.05464000627398491, - -0.01461903564631939, - -0.031152945011854172, - -0.0545472614467144, - 0.0027494654059410095, - -0.013447854667901993, - 0.017987411469221115, - 0.04795508086681366, - 0.11922390758991241, - 0.04045257717370987, - -0.07620753347873688 - ] - }, - "p245_190.wav": { - "name": "p245", - "embedding": [ - 0.03891666978597641, - 0.08618548512458801, - -0.012352603487670422, - 0.0023647616617381573, - -0.04511157423257828, - 0.08262351155281067, - -0.15334278345108032, - 0.11335278302431107, - -0.07073113322257996, - 0.1437074840068817, - -0.05526787042617798, - 0.11605475842952728, - -0.02294749766588211, - -0.19488683342933655, - -0.06092676520347595, - 0.062192484736442566, - -0.07134442031383514, - -0.06475155055522919, - 0.005238390993326902, - -0.011493239551782608, - 0.05193570256233215, - 0.025915730744600296, - 0.013390488922595978, - 0.035989910364151, - 0.013592299073934555, - 0.07172174751758575, - 0.015837375074625015, - 0.05136915296316147, - 0.013818459585309029, - -0.02149501070380211, - -0.04269518703222275, - 0.1095333993434906, - -0.04994969069957733, - 0.008344747126102448, - 0.04553315043449402, - 0.002721929457038641, - 0.019683293998241425, - -0.07648376375436783, - -0.011557327583432198, - 0.005703666713088751, - -0.04630947858095169, - 0.08604322373867035, - 0.024151362478733063, - 0.009969284757971764, - 0.006591316312551498, - 0.016788501292467117, - -0.008936790749430656, - -0.04407847672700882, - -0.10332876443862915, - 0.14969968795776367, - 0.07188258320093155, - -0.004159452393651009, - -0.05464881286025047, - -0.07255028188228607, - 0.117868572473526, - 0.005936199799180031, - -0.10220304131507874, - -0.03999566659331322, - 0.07501912117004395, - 0.16038082540035248, - -0.03320574760437012, - -0.04479363560676575, - 0.02120385691523552, - 0.1265159398317337, - 0.044165074825286865, - 0.0974731296300888, - 0.07087424397468567, - 0.09011547267436981, - -0.011436786502599716, - -0.008907885290682316, - 0.07551225274801254, - 0.0740157887339592, - 0.028836743906140327, - -0.020702751353383064, - 0.04140472412109375, - 0.007198440842330456, - -0.02204008214175701, - 0.05030984431505203, - -0.012128639966249466, - -0.01338435523211956, - -0.02191055938601494, - -0.001331954263150692, - -0.0150510398671031, - 0.03325839340686798, - -0.01166414376348257, - 0.046062763780355453, - 0.010720659047365189, - -0.0016609709709882736, - 0.07922933995723724, - 0.03723090887069702, - 0.02604392170906067, - 0.08400508016347885, - -0.07623007893562317, - -0.07979101687669754, - 0.05053455010056496, - 0.008680237457156181, - 0.03445329889655113, - 0.08768151700496674, - 0.0446850061416626, - -0.024085253477096558, - 0.10533446818590164, - 0.05589498579502106, - -0.006498263217508793, - 0.02790868654847145, - -0.1080659031867981, - 0.12004449218511581, - 0.07869429886341095, - -0.04090873897075653, - 0.019370591267943382, - -0.04255497828125954, - 0.09387113153934479, - 0.08306798338890076, - -0.1440945565700531, - -0.08431284129619598, - 0.055854879319667816, - 0.042773813009262085, - -0.014650602824985981, - 0.13262630999088287, - -0.031001346185803413, - 0.007896746508777142, - 0.08489559590816498, - -0.05678100138902664, - -0.04893491417169571, - -0.033049799501895905, - 0.0443098209798336, - -0.07036128640174866, - 0.05185675621032715, - 0.03613513708114624, - 0.004043039865791798, - -0.011045982129871845, - 0.07997813820838928, - -0.0227487925440073, - -0.025182552635669708, - 0.02432696893811226, - -0.03223945200443268, - 0.046007998287677765, - -0.022601153701543808, - 0.016615698114037514, - 0.043354518711566925, - 0.04039819538593292, - 0.032384030520915985, - 0.01469055563211441, - -0.03640322387218475, - -0.12419065833091736, - 0.015508345328271389, - 0.05666865408420563, - 0.07116006314754486, - -0.015323542058467865, - -0.05304718390107155, - -0.05137743800878525, - -0.0591328926384449, - 0.012484293431043625, - 0.0029017780907452106, - 0.091408371925354, - -0.001773263793438673, - -0.00022884283680468798, - 0.07577857375144958, - 0.0194857157766819, - -0.003263377584517002, - -0.03675318509340286, - -0.041201747953891754, - 0.023517003282904625, - 0.04719114303588867, - -0.08032232522964478, - -0.06488973647356033, - -0.0009055742993950844, - 0.036279790103435516, - -0.015142029151320457, - 0.028365613892674446, - 0.05698738992214203, - 0.017797598615288734, - 0.0376548208296299, - -0.08761591464281082, - 0.043355900794267654, - -0.12279794365167618, - -0.06551626324653625, - -0.0320172980427742, - -0.010431734845042229, - 0.0024665198288857937, - 0.07042818516492844, - -0.004997836891561747, - 0.040651585906744, - -0.022141478955745697, - -0.07916876673698425, - -0.06485278904438019, - 0.07047265768051147, - 0.103216752409935, - 0.012911692261695862, - 0.062018103897571564, - 0.057831525802612305, - -0.012101317755877972, - 0.046879060566425323, - 0.05007849261164665, - 0.13482853770256042, - -0.03489668667316437, - 0.019783727824687958, - -0.04995163530111313, - 0.0744292289018631, - 0.05259699746966362, - -0.10245924443006516, - -0.06838458776473999, - 6.273388862609863e-05, - -0.04936979338526726, - 0.04081407189369202, - -0.02829176001250744, - 0.012483715079724789, - 0.003441236913204193, - -0.005567100830376148, - -0.1050506979227066, - -0.08585310727357864, - 0.07601556181907654, - -0.06117270886898041, - -0.012992369942367077, - -0.09122200310230255, - 0.055312518030405045, - 0.10301375389099121, - 0.037872932851314545, - -0.030580706894397736, - 0.005703204311430454, - 0.03272298350930214, - -0.025252459570765495, - -0.004251203499734402, - 0.03085319697856903, - 0.01622661016881466, - -0.1204351857304573, - 0.00017932639457285404, - -0.09284012019634247, - 0.0756625235080719, - -0.06378820538520813, - 0.16047629714012146, - -0.02003616839647293, - -0.05094631761312485, - -0.08163866400718689, - 0.028918597847223282, - -0.017792830243706703, - 0.04300200566649437, - 0.039597608149051666, - 0.06194380670785904, - 0.009485496208071709, - -0.0545857697725296, - 0.12352314591407776, - 0.042216140776872635, - -0.037687428295612335, - -0.07131104171276093, - -0.005493655800819397, - -0.01561376266181469, - 0.04466020315885544, - 0.016033610329031944, - -0.0759623795747757, - -0.029592476785182953, - 0.034450795501470566, - -0.020359832793474197, - 0.0662091001868248, - 0.13950827717781067, - 0.06911428272724152, - -0.1255066841840744 - ] - }, - "p245_369.wav": { - "name": "p245", - "embedding": [ - 0.028199300169944763, - 0.10727851092815399, - 0.0007854877039790154, - 0.014856789261102676, - -0.02383865788578987, - 0.05175522714853287, - -0.15402263402938843, - 0.14111328125, - -0.0471477210521698, - 0.14013467729091644, - -0.1019069105386734, - 0.093677818775177, - -0.03452619910240173, - -0.18918216228485107, - -0.06011847034096718, - 0.040417589247226715, - -0.04967929795384407, - -0.033519256860017776, - -0.0112451845780015, - -0.002914853859692812, - 0.06663721054792404, - 0.03348027914762497, - -0.009950281120836735, - 0.03041946142911911, - -0.001922254334203899, - 0.039967119693756104, - 0.01975911855697632, - 0.06062823534011841, - 0.0386592298746109, - -0.010230815038084984, - -0.009711163118481636, - 0.13572587072849274, - -0.018907783553004265, - 0.037021297961473465, - 0.06497976928949356, - 0.009449531324207783, - 0.008329341188073158, - -0.040101662278175354, - -0.015024878084659576, - 0.0030898405238986015, - -0.047345276921987534, - 0.061730872839689255, - 0.037560299038887024, - 0.011270963586866856, - 0.039189569652080536, - 0.05919507145881653, - -0.014882213436067104, - -0.054816409945487976, - -0.08506748080253601, - 0.1604343056678772, - 0.07355619966983795, - -0.016493886709213257, - -0.05894913151860237, - -0.06987728178501129, - 0.1099076122045517, - -0.01109024416655302, - -0.1018749549984932, - -0.033475831151008606, - 0.11122995615005493, - 0.1727573424577713, - -0.02717198245227337, - -0.03787035495042801, - 0.021621355786919594, - 0.14679546654224396, - 0.02834227867424488, - 0.09194448590278625, - 0.056256502866744995, - 0.10263821482658386, - 0.002833115868270397, - 0.008135393261909485, - 0.0622495636343956, - 0.05787428468465805, - 0.028404200449585915, - -0.04193072021007538, - 0.034289535135030746, - 0.008783059194684029, - -0.011217325925827026, - 0.040299057960510254, - -0.028623204678297043, - -0.01079061534255743, - -0.009426545351743698, - 0.02032358944416046, - -0.02184356190264225, - 0.011745870113372803, - -0.025703642517328262, - 0.052416764199733734, - 0.022887282073497772, - -0.006816552951931953, - 0.07264624536037445, - 0.0622590035200119, - 0.03945743665099144, - 0.05528624355792999, - -0.06214742362499237, - -0.10373042523860931, - 0.022373618558049202, - -0.013525377959012985, - 0.023544378578662872, - 0.07536736130714417, - 0.03749381750822067, - -0.011822872795164585, - 0.11691711843013763, - 0.038871005177497864, - -0.007304166443645954, - 0.03464965522289276, - -0.13144895434379578, - 0.12909510731697083, - 0.06521330028772354, - -0.02801908552646637, - 0.024824976921081543, - -0.04462732374668121, - 0.07613295316696167, - 0.07967578619718552, - -0.13630422949790955, - -0.07441186904907227, - 0.05125047266483307, - 0.0413830429315567, - -0.02172214165329933, - 0.11135700345039368, - -0.012063495814800262, - -0.002701223362237215, - 0.09428876638412476, - -0.06454937905073166, - -0.0689682736992836, - -0.049475304782390594, - 0.0462544709444046, - -0.082177072763443, - 0.06637449562549591, - 0.026514071971178055, - 0.0003492333344183862, - -0.017994390800595284, - 0.0893142968416214, - -0.018672045320272446, - 0.00800756923854351, - -0.00570314098149538, - -0.029605116695165634, - 0.049831829965114594, - -0.048813529312610626, - 0.019458573311567307, - 0.008507682010531425, - 0.04998883605003357, - 0.04737384617328644, - 0.025580327957868576, - -0.04806726425886154, - -0.10428784042596817, - -0.0008538421243429184, - 0.04670098423957825, - 0.08045955002307892, - 0.007464645896106958, - -0.036868758499622345, - -0.043867629021406174, - -0.04719647020101547, - 0.007677203975617886, - -0.01655011810362339, - 0.0799948200583458, - 0.003716093488037586, - -0.006608342751860619, - 0.09437038004398346, - -0.0012841126881539822, - -0.00011603336315602064, - -0.06334536522626877, - -0.01437787152826786, - 0.011144244112074375, - 0.02807004377245903, - -0.08281341195106506, - -0.06476549804210663, - 0.011694781482219696, - 0.03234819322824478, - -0.01226583868265152, - 0.028073497116565704, - 0.030791539698839188, - 0.018071219325065613, - 0.04037819057703018, - -0.08583992719650269, - 0.025005552917718887, - -0.12360372394323349, - -0.07989845424890518, - -0.022651176899671555, - -0.002108201151713729, - 0.0013351314701139927, - 0.06324441730976105, - 0.0018283510580658913, - 0.01843988336622715, - 0.016505595296621323, - -0.08618628233671188, - -0.08267609030008316, - 0.07102423906326294, - 0.08336284756660461, - 0.013562096282839775, - 0.06645528972148895, - 0.04629442095756531, - -0.03991423547267914, - 0.06404398381710052, - 0.04608313366770744, - 0.11671169102191925, - -0.02419842779636383, - 0.007976994849741459, - -0.06375421583652496, - 0.06935905665159225, - 0.06549336016178131, - -0.10340673476457596, - -0.08530882000923157, - -0.013326704502105713, - -0.05254099518060684, - 0.02138952538371086, - -0.01734915003180504, - 0.018607545644044876, - 0.007718452252447605, - -0.01408150140196085, - -0.09854468703269958, - -0.05838078260421753, - 0.06029728427529335, - -0.09261518716812134, - -0.01981927827000618, - -0.07572667300701141, - 0.05167001485824585, - 0.11062225699424744, - 0.037236444652080536, - -0.0400782972574234, - -0.02766759879887104, - 0.04832552373409271, - -0.07503670454025269, - -0.02767399698495865, - 0.010355996899306774, - 0.022310465574264526, - -0.09718108177185059, - 0.023773279041051865, - -0.08914737403392792, - 0.054145485162734985, - -0.07524878531694412, - 0.14482787251472473, - -0.0031678318046033382, - -0.08146260678768158, - -0.07533472776412964, - 0.02277853712439537, - -0.01881023868918419, - 0.04335108771920204, - 0.029217790812253952, - 0.05414988100528717, - 0.01590767502784729, - -0.055966816842556, - 0.12878789007663727, - 0.03935732692480087, - -0.029454415664076805, - -0.06619588285684586, - -0.03981907665729523, - -0.039492495357990265, - 0.022052889689803123, - 0.025556489825248718, - -0.09094993770122528, - -0.04063460975885391, - 0.02391265705227852, - -0.02889437787234783, - 0.07761697471141815, - 0.13333022594451904, - 0.045225322246551514, - -0.12099325656890869 - ] - }, - "p245_055.wav": { - "name": "p245", - "embedding": [ - 0.046574436128139496, - 0.08913436532020569, - -0.0023929483722895384, - 0.004350261762738228, - -0.04254953935742378, - 0.06514020264148712, - -0.1442471146583557, - 0.1451658010482788, - -0.0565878227353096, - 0.1407376527786255, - -0.09106993675231934, - 0.11484470963478088, - -0.03148968145251274, - -0.19993528723716736, - -0.022515378892421722, - 0.048772528767585754, - -0.04098231717944145, - -0.017407460138201714, - -0.029846753925085068, - -0.025409795343875885, - 0.04550321400165558, - 0.01899908110499382, - 0.009541154839098454, - 0.009712934494018555, - 0.007824135944247246, - 0.07307508587837219, - -0.004122601822018623, - 0.03266330435872078, - 0.002577691338956356, - -0.026551980525255203, - -0.03578141704201698, - 0.11213751137256622, - -0.05473366379737854, - 0.004312671720981598, - 0.07759320735931396, - -0.01027532760053873, - -0.024935448542237282, - -0.0615367516875267, - -0.014649576507508755, - -0.008107008412480354, - -0.06940373033285141, - 0.05909372866153717, - 0.024877093732357025, - -0.008142421022057533, - 0.04316188395023346, - 0.04451502859592438, - 0.0028448961675167084, - -0.043630972504615784, - -0.09380718320608139, - 0.1379014253616333, - 0.07744523882865906, - -0.004231967031955719, - -0.05677090585231781, - -0.05916500836610794, - 0.11454176902770996, - -0.003850226290524006, - -0.11819355189800262, - -0.04130569100379944, - 0.10107502341270447, - 0.15562397241592407, - -0.05671142041683197, - -0.026052938774228096, - 0.028546340763568878, - 0.10549560189247131, - 0.03289832919836044, - 0.11902220547199249, - 0.08150166273117065, - 0.1073945164680481, - -0.01186227984726429, - 0.024482499808073044, - 0.06277100741863251, - 0.055194370448589325, - 0.0640106201171875, - -0.03717948496341705, - 0.022137347608804703, - 0.011258618906140327, - -0.024129696190357208, - 0.016543114557862282, - -0.03129882737994194, - -0.01165520865470171, - -0.019313769415020943, - -0.005342992953956127, - 0.0018325226847082376, - 0.009058971889317036, - -0.019726015627384186, - 0.05271347239613533, - 0.03635776415467262, - -0.000942105136346072, - 0.07288220524787903, - 0.017791273072361946, - -0.0028136475011706352, - 0.07125572860240936, - -0.08712626248598099, - -0.07857319712638855, - 0.02426619827747345, - -0.011976849287748337, - -0.0002128448977600783, - 0.09163360297679901, - 0.05353984609246254, - -0.011702270247042179, - 0.12337925285100937, - 0.04680298641324043, - -0.0005060539115220308, - 0.03358887881040573, - -0.10153765976428986, - 0.12774483859539032, - 0.07750610262155533, - -0.05008864402770996, - 0.04139804095029831, - -0.059163689613342285, - 0.08013476431369781, - 0.08006198704242706, - -0.14718866348266602, - -0.0539596751332283, - 0.04259147495031357, - 0.02254943922162056, - -0.026735395193099976, - 0.1272776573896408, - -0.02291165292263031, - 0.0169075895100832, - 0.11666344106197357, - -0.08210164308547974, - -0.059017203748226166, - -0.024821419268846512, - 0.043551139533519745, - -0.08164355158805847, - 0.06433211266994476, - 0.04648889973759651, - -0.0016722474247217178, - 0.013577437028288841, - 0.10247376561164856, - -0.027321791276335716, - -0.02072293311357498, - 0.005596350412815809, - -0.03557903319597244, - 0.02170388586819172, - -0.03603385388851166, - 0.0076075354591012, - 0.024209316819906235, - 0.04263443499803543, - 0.0333988256752491, - 0.008780399337410927, - -0.037260085344314575, - -0.10201187431812286, - 0.012085439637303352, - 0.04208651930093765, - 0.08861590176820755, - -0.00486858282238245, - -0.02041034586727619, - -0.03934132307767868, - -0.06423559039831161, - 0.004675803240388632, - -0.02093695104122162, - 0.07811477780342102, - -0.027870360761880875, - 0.007149981334805489, - 0.08687368035316467, - 0.03586791083216667, - -0.003421555971726775, - -0.07692418992519379, - -0.03912508487701416, - 0.00718061625957489, - 0.047734081745147705, - -0.08591185510158539, - -0.07083427906036377, - -0.014545300975441933, - 0.03895916789770126, - -0.017533330246806145, - 0.05183684080839157, - 0.03833241015672684, - 0.025639843195676804, - 0.02463449165225029, - -0.08224032819271088, - 0.015124998986721039, - -0.11992624402046204, - -0.07971511036157608, - -0.01891009509563446, - -0.013322421349585056, - -0.004228496458381414, - 0.06551694869995117, - -0.0019042243948206306, - 0.03481516242027283, - -0.014965128153562546, - -0.07622719556093216, - -0.08238254487514496, - 0.06252120435237885, - 0.07650018483400345, - -0.011789831332862377, - 0.04586467891931534, - 0.05817842483520508, - -0.049839988350868225, - 0.0470852330327034, - 0.06303859502077103, - 0.1288510262966156, - -0.02223774418234825, - 0.03674256429076195, - -0.06645467132329941, - 0.07680311799049377, - 0.07735106348991394, - -0.08554330468177795, - -0.0876953974366188, - -0.018741222098469734, - -0.05704496055841446, - 0.03937928378582001, - -0.019623935222625732, - -0.0041176192462444305, - -0.0019676941446959972, - -0.0062654884532094, - -0.08003780245780945, - -0.07332847267389297, - 0.07443499565124512, - -0.0674520954489708, - -0.005016189534217119, - -0.09536699950695038, - 0.05337999761104584, - 0.0944749191403389, - 0.031060732901096344, - -0.026241417974233627, - -0.005389410071074963, - 0.04848342016339302, - -0.03311874344944954, - 0.0016810663510113955, - 0.0416463166475296, - 0.03446490317583084, - -0.11019304394721985, - -0.003943437710404396, - -0.08162915706634521, - 0.06479348242282867, - -0.05929083377122879, - 0.1414589285850525, - -0.00805061124265194, - -0.04871737211942673, - -0.0753415897488594, - 0.035351913422346115, - 0.00344419339671731, - 0.036168865859508514, - 0.03754804655909538, - 0.07143204659223557, - 0.02240382507443428, - -0.06710101664066315, - 0.12995368242263794, - 0.014064205810427666, - -0.023517899215221405, - -0.06127078831195831, - -0.04899080842733383, - -0.04501912370324135, - -0.0015472689410671592, - 0.005220281425863504, - -0.10901229083538055, - -0.028873872011899948, - 0.019628137350082397, - -0.016123972833156586, - 0.056438006460666656, - 0.14413830637931824, - 0.06163401901721954, - -0.12603460252285004 - ] - }, - "p245_416.wav": { - "name": "p245", - "embedding": [ - 0.0567907989025116, - 0.06137121841311455, - 0.03674077242612839, - -0.03178399056196213, - 0.00300041027367115, - 0.11558578163385391, - -0.09009912610054016, - 0.09349261224269867, - -0.0014780350029468536, - 0.027230067178606987, - -0.067775659263134, - 0.034372493624687195, - 0.0031084883958101273, - -0.1340586543083191, - -0.011272762902081013, - 0.047002751380205154, - -0.03475184738636017, - 0.025634601712226868, - -0.04725174978375435, - -0.01655474305152893, - -0.02471337839961052, - 0.008841507136821747, - 0.04945560172200203, - -0.02523030713200569, - 0.05547273904085159, - 0.03038673661649227, - 0.004403010942041874, - 0.019978735595941544, - -0.013245188631117344, - -0.014343657530844212, - -0.012119540013372898, - 0.07473617792129517, - -0.040856122970581055, - -0.032392777502536774, - 0.06482695788145065, - -0.003955521620810032, - 0.04602472856640816, - -0.09960207343101501, - -0.021383536979556084, - 0.03907986357808113, - -0.06382596492767334, - 0.08577613532543182, - 0.07248856127262115, - 0.031154153868556023, - 0.024028554558753967, - 0.012702086009085178, - 0.004519999492913485, - -0.050253767520189285, - -0.09138837456703186, - 0.14109325408935547, - 0.019830642268061638, - 0.030226966366171837, - -0.08460353314876556, - -0.0027941223233938217, - 0.05003519356250763, - 0.0001817962620407343, - -0.03909480199217796, - -0.01801268942654133, - 0.04741377383470535, - 0.08155964314937592, - 0.04193412885069847, - -0.00751175731420517, - 0.0282631553709507, - 0.07708166539669037, - -0.0008111521601676941, - 0.026783302426338196, - 0.08534255623817444, - 0.09093628823757172, - 0.020387357100844383, - 0.0287494957447052, - 0.05056292191147804, - -0.011136289685964584, - 0.012760885059833527, - -0.02051311917603016, - 0.034366849809885025, - -0.03974774479866028, - -0.014197340235114098, - -0.014851966872811317, - -0.0009447336196899414, - -0.02088828943669796, - 0.06970079243183136, - 0.03769897669553757, - 0.01453565526753664, - 0.06822018325328827, - -0.04767470434308052, - 0.027288168668746948, - -0.02114154025912285, - 0.09532777965068817, - 0.08049063384532928, - 0.044545844197273254, - 0.03397013992071152, - 0.00405912846326828, - -0.025210492312908173, - -0.08055074512958527, - 0.01917753927409649, - 0.028193194419145584, - 0.0009263250976800919, - 0.00024887174367904663, - 0.016075773164629936, - -0.03548377379775047, - 0.09358718991279602, - 0.007819762453436852, - -0.0052802651189267635, - 0.010923583060503006, - -0.06192692369222641, - 0.05942104011774063, - 0.04144691675901413, - 0.012968428432941437, - 0.06518562883138657, - -0.021607359871268272, - 0.0213124118745327, - 0.0648246482014656, - -0.08226243406534195, - -0.018341904506087303, - 0.029112935066223145, - 0.018069801852107048, - 0.049465928226709366, - 0.11785601824522018, - 0.015189849771559238, - 0.021076707169413567, - 0.035244591534137726, - -0.07194758206605911, - -0.019156519323587418, - 0.04732681065797806, - 0.001741865649819374, - 0.018829703330993652, - -0.0234701968729496, - 0.029811378568410873, - 0.01583380252122879, - -0.07465830445289612, - 0.03607070446014404, - 0.02948310784995556, - 0.024294618517160416, - -0.05371376872062683, - 0.04280327633023262, - 0.042849522083997726, - -0.0021061180159449577, - -0.025993550196290016, - 0.025131581351161003, - 0.05759604647755623, - -0.009550297632813454, - 0.041474323719739914, - -0.051814183592796326, - -0.09134930372238159, - -0.051411066204309464, - -0.017881054431200027, - 0.04415519908070564, - -0.020648781210184097, - -0.02756025455892086, - -0.06745801866054535, - 0.023630425333976746, - -0.0011830441653728485, - -0.007896332070231438, - 0.03980392962694168, - 0.09757402539253235, - -0.06991977989673615, - 0.05163955315947533, - -0.02070273831486702, - 0.032362744212150574, - -0.01946130022406578, - -0.03826843574643135, - 0.024332456290721893, - 0.023941773921251297, - -0.0042892321944236755, - -0.047967202961444855, - 0.014726214110851288, - -0.06178019195795059, - -0.012573277577757835, - -0.005452342331409454, - 0.02859993278980255, - -0.0017840638756752014, - -0.03733401000499725, - -0.07862615585327148, - 0.020164823159575462, - -0.043614305555820465, - -0.03302149847149849, - 0.07899540662765503, - 0.04223420098423958, - -0.03670389950275421, - 0.09814518690109253, - 0.044447124004364014, - 0.02855328656733036, - -0.03492702916264534, - -0.028882192447781563, - 0.04290291666984558, - 0.04755566641688347, - 0.0358084999024868, - -0.0017981259152293205, - 0.02763209491968155, - -0.006372924894094467, - -0.0008250924292951822, - 0.03864503279328346, - 0.039031289517879486, - 0.020886069163680077, - -0.037478022277355194, - -0.03772738575935364, - 0.022353626787662506, - 0.08378852903842926, - -0.006557576358318329, - -0.050600141286849976, - -0.029572520405054092, - 0.04553770646452904, - -0.017793282866477966, - 0.001892803586088121, - -0.00015062838792800903, - 0.025224143639206886, - 0.03570117801427841, - -0.033847302198410034, - -0.048651739954948425, - -0.0749111995100975, - 0.02383178099989891, - -0.0725645124912262, - -0.019341357052326202, - -0.033219676464796066, - 0.0482814759016037, - 0.08746325969696045, - -0.015543824061751366, - -0.004597595892846584, - -0.008085458539426327, - -0.017453357577323914, - -0.019890829920768738, - -0.042361900210380554, - -0.0017944574356079102, - 0.02992306649684906, - -0.0801640972495079, - 0.018427453935146332, - -0.051806218922138214, - 0.06349413841962814, - 0.015992505475878716, - 0.07570898532867432, - 0.059676650911569595, - -0.02038032002747059, - -0.06252992898225784, - -0.004649071022868156, - -0.0071282461285591125, - 0.027470968663692474, - -0.008077695034444332, - 0.0085157360881567, - 0.05133112519979477, - -0.021400058642029762, - 0.05884072184562683, - 0.018169095739722252, - -0.06082256883382797, - -0.04509517922997475, - 0.013953562825918198, - -0.016391271725296974, - 0.025656264275312424, - -0.027521420270204544, - -0.046593815088272095, - 0.025631526485085487, - 0.04764686897397041, - 0.03699498623609543, - 0.011318061500787735, - 0.04729567468166351, - 0.014677945524454117, - -0.04137536883354187 - ] - }, - "p245_022.wav": { - "name": "p245", - "embedding": [ - 0.05324256047606468, - 0.061302293092012405, - -0.005025130696594715, - 0.01198851503431797, - -0.057215042412281036, - 0.04223097488284111, - -0.10840871185064316, - 0.13754360377788544, - -0.02465054765343666, - 0.09339778870344162, - -0.07185589522123337, - 0.11825723946094513, - -0.030186904594302177, - -0.14125891029834747, - -0.016872841864824295, - 0.05601181462407112, - -0.025600483641028404, - -0.0234761293977499, - -0.04188695177435875, - -0.024710973724722862, - 0.013375586830079556, - 0.026865586638450623, - 0.0398847833275795, - 0.01684473268687725, - 0.022400561720132828, - 0.06845802068710327, - -0.0006524207419715822, - 0.038663335144519806, - 0.012818616814911366, - -0.037854522466659546, - -0.01886928454041481, - 0.06561212986707687, - -0.05319884419441223, - 0.0071054003201425076, - 0.05396874621510506, - -0.005310772452503443, - -0.008902838453650475, - -0.062401723116636276, - -0.026669198647141457, - -0.0033368864096701145, - -0.05418379232287407, - 0.07686834782361984, - 0.026250198483467102, - -0.018549030646681786, - 0.03559478744864464, - 0.017564356327056885, - -0.011372784152626991, - -0.035834427922964096, - -0.11986465752124786, - 0.13321977853775024, - 0.042802900075912476, - 0.00832411739975214, - -0.10078143328428268, - -0.040594760328531265, - 0.0821743980050087, - -0.038213491439819336, - -0.08589424192905426, - -0.04702872782945633, - 0.058764275163412094, - 0.11749287694692612, - -0.017929598689079285, - -0.029212012887001038, - 0.01113861333578825, - 0.08081115782260895, - 0.05228882655501366, - 0.057697027921676636, - 0.09072805941104889, - 0.10422497242689133, - -0.03733307123184204, - 0.034734275192022324, - 0.048660267144441605, - 0.05916241556406021, - 0.05137226730585098, - 0.012145251035690308, - 0.00894327461719513, - -0.010723164305090904, - -0.007460992783308029, - 0.009404128417372704, - -0.023798830807209015, - -0.022367704659700394, - -0.019436601549386978, - 0.009480023756623268, - 0.007161378860473633, - 0.020561737939715385, - -0.01759173348546028, - 0.07141675055027008, - 0.02871347777545452, - 0.0041181789711117744, - 0.0652528628706932, - 0.03488336130976677, - -0.027383113279938698, - 0.04738170653581619, - -0.07045860588550568, - -0.06743291020393372, - -0.007237815298140049, - -0.01465634722262621, - 0.03835726156830788, - 0.0582859106361866, - 0.023977557197213173, - 0.0012763416161760688, - 0.11218085139989853, - 0.04241640120744705, - 0.0026273243129253387, - 0.013760223984718323, - -0.0759207010269165, - 0.11506791412830353, - 0.08514852821826935, - -0.018498443067073822, - 0.03904011473059654, - -0.04295190051198006, - 0.048243194818496704, - 0.05668666958808899, - -0.10186289995908737, - -0.047524306923151016, - 0.008349123410880566, - 0.004310175776481628, - 0.0033535838592797518, - 0.1038592979311943, - -0.010126795619726181, - 0.03911980614066124, - 0.09584072232246399, - -0.08150944113731384, - -0.04041064903140068, - 0.016518017277121544, - 0.02416919730603695, - -0.056308772414922714, - 0.04082862287759781, - 0.042970508337020874, - 0.010659074410796165, - 0.01760186068713665, - 0.08590855449438095, - -0.0026000705547630787, - 0.0016993418103083968, - 0.010413152165710926, - -0.028262360021471977, - 0.020225364714860916, - -0.016469767317175865, - -0.014491048641502857, - 0.0718434676527977, - 0.06346558779478073, - 0.04298487305641174, - 0.009037402458488941, - -0.02301657944917679, - -0.10575832426548004, - -0.001162229455076158, - 0.04356175288558006, - 0.06886432319879532, - -0.029556620866060257, - -0.028247911483049393, - -0.041098855435848236, - -0.0413292832672596, - 0.006152871064841747, - 0.014197251759469509, - 0.062205392867326736, - -0.024410007521510124, - 0.004270531237125397, - 0.08781793713569641, - 0.02211890183389187, - -0.00658487668260932, - -0.06471861898899078, - -0.026197416707873344, - 0.000420949247200042, - 0.055853601545095444, - -0.059295106679201126, - -0.0691130980849266, - -0.003671650541946292, - 0.034395016729831696, - -0.027208132669329643, - 0.04693871736526489, - 0.04393736645579338, - 0.004974675364792347, - 0.014129765331745148, - -0.06800070405006409, - 0.024692555889487267, - -0.08237608522176743, - -0.058275967836380005, - 0.015931254252791405, - -0.01525780837982893, - -0.015050581656396389, - 0.06195163354277611, - 0.023209623992443085, - 0.06388459354639053, - -0.011865590699017048, - -0.08598818629980087, - -0.06828141212463379, - 0.05322566255927086, - 0.04108474776148796, - -0.015175786800682545, - 0.04581515118479729, - 0.0505252368748188, - -0.04002430662512779, - 0.0537480004131794, - 0.05123565346002579, - 0.07857302576303482, - -0.05612390115857124, - 0.0047832028940320015, - -0.04561203345656395, - 0.06616338342428207, - 0.06934478878974915, - -0.08487281948328018, - -0.0690789446234703, - -0.028633838519454002, - -0.04422156512737274, - 0.03621666878461838, - -0.020767319947481155, - -0.003627300728112459, - 0.04623904824256897, - -0.012674671597778797, - -0.09455786645412445, - -0.07809048891067505, - 0.06553131341934204, - -0.057748373597860336, - 0.013004057109355927, - -0.06921438127756119, - 0.02716211788356304, - 0.07098933309316635, - 0.02222384326159954, - -0.0037244276609271765, - -0.007137469481676817, - 0.023656774312257767, - -0.03247683122754097, - -0.022201651707291603, - 0.046808600425720215, - 0.031671714037656784, - -0.06424158811569214, - -0.01589217036962509, - -0.06142134591937065, - 0.052113499492406845, - -0.015291360206902027, - 0.133778914809227, - 0.0006001185975037515, - -0.04379967600107193, - -0.06352009624242783, - 0.0006721764802932739, - -0.029346132650971413, - 0.05153700336813927, - 0.041114747524261475, - 0.04483325406908989, - 0.029850849881768227, - -0.0434134267270565, - 0.11956961452960968, - 0.050123121589422226, - -0.05864757299423218, - -0.04936657473444939, - -0.04123452678322792, - -0.03550001233816147, - 0.014122906140983105, - -0.0006522267940454185, - -0.0715562105178833, - 0.0065712593495845795, - 0.0033439528197050095, - -0.022484436631202698, - 0.05486337095499039, - 0.12036079168319702, - 0.07447535544633865, - -0.09200917929410934 - ] - }, - "p245_335.wav": { - "name": "p245", - "embedding": [ - 0.04199257493019104, - 0.08892996609210968, - 0.008641382679343224, - -0.009453978389501572, - -0.02137896604835987, - 0.06362928450107574, - -0.12301419675350189, - 0.08644839376211166, - -0.03773996978998184, - 0.13767001032829285, - -0.05482705309987068, - 0.07192657887935638, - -0.008518553338944912, - -0.1373392939567566, - -0.05108211934566498, - 0.034587059170007706, - -0.07831590622663498, - -0.005116255953907967, - -0.05878249555826187, - -0.008343957364559174, - 0.03481651097536087, - 0.036918655037879944, - 0.04181723669171333, - -0.060623109340667725, - 0.0587172657251358, - 0.037981703877449036, - 0.0530821867287159, - 0.06958456337451935, - 0.06090376898646355, - -0.059416964650154114, - -0.020414866507053375, - 0.10418006777763367, - -0.02444155141711235, - 0.016964247450232506, - 0.03525381162762642, - 0.002311745658516884, - 0.04806772246956825, - -0.06123020499944687, - -0.021319659426808357, - 0.06647691130638123, - -0.012859487906098366, - 0.08751493692398071, - 0.027104495093226433, - 0.0101105822250247, - 0.009353546425700188, - 0.04908143728971481, - -0.005352572537958622, - -0.08023662865161896, - -0.07675178349018097, - 0.1825820505619049, - 0.040736597031354904, - -0.01549578458070755, - -0.05682007223367691, - -0.07847986370325089, - 0.09336146712303162, - -0.019799184054136276, - -0.06816112995147705, - -0.031503286212682724, - 0.07169219851493835, - 0.14021651446819305, - -0.029171908274292946, - 0.005227888002991676, - 0.016633763909339905, - 0.11838006973266602, - 0.022399093955755234, - 0.05357801541686058, - 0.06887462735176086, - 0.08455190062522888, - 0.04138166457414627, - 0.048407185822725296, - 0.025311864912509918, - 0.06889475882053375, - -0.015499012544751167, - -0.011595621705055237, - 0.029313433915376663, - -0.02255629375576973, - -0.0514276847243309, - 0.012401705607771873, - -0.007684722077101469, - -0.0027304328978061676, - 0.015446944162249565, - -0.0002575097605586052, - -0.0019865259528160095, - 0.023443857207894325, - -0.03219224512577057, - 0.04208652302622795, - -0.03812112659215927, - -0.006978310644626617, - 0.07214789092540741, - 0.01456240564584732, - 0.006361637730151415, - 0.04026614874601364, - -0.04209909215569496, - -0.12104970961809158, - -0.007916999980807304, - 0.005739630199968815, - 0.01301302295178175, - 0.05009947717189789, - 0.04211876913905144, - -0.049872443079948425, - 0.10778867453336716, - 0.041849687695503235, - -0.025697171688079834, - 0.02777659147977829, - -0.09451504051685333, - 0.11773648858070374, - 0.0697186291217804, - -0.007269886787980795, - 0.023536888882517815, - -0.04603276774287224, - 0.06318366527557373, - 0.044546082615852356, - -0.14325019717216492, - -0.06988342106342316, - 0.05604244023561478, - -0.02932731807231903, - 0.008439527824521065, - 0.06855004280805588, - -0.0033898716792464256, - -0.018165534362196922, - 0.07283703237771988, - -0.06284299492835999, - -0.04674302041530609, - -0.022204400971531868, - 0.0673355832695961, - -0.05229955166578293, - 0.0053389910608530045, - 0.03211677819490433, - -0.03647319972515106, - -0.01811276748776436, - 0.07836821675300598, - 0.01435836497694254, - 0.02559647150337696, - 0.020600534975528717, - -0.012520981952548027, - 0.06220254302024841, - -0.03484669327735901, - 0.029449913650751114, - 0.04761910066008568, - 0.08200129121541977, - 0.05170191079378128, - 0.007448915857821703, - -0.07090297341346741, - -0.08006048202514648, - 0.006199871655553579, - 0.01693909242749214, - 0.048258572816848755, - -0.019243672490119934, - -0.014141546562314034, - -0.06672597676515579, - -0.058080561459064484, - 0.022938579320907593, - 0.01846778579056263, - 0.10079550743103027, - 0.014553926885128021, - -0.03154242783784866, - 0.1280750185251236, - -0.0310067031532526, - -0.004371006973087788, - -0.008714258670806885, - -0.010095467790961266, - 0.04211525619029999, - 0.005994373932480812, - -0.04314360395073891, - -0.04779992997646332, - 0.025909392163157463, - -0.022329673171043396, - -0.017854366451501846, - -0.0004951246082782745, - -0.003264857456088066, - 0.020975276827812195, - 0.04464074224233627, - -0.05537869781255722, - -0.014321788214147091, - -0.07688619196414948, - 0.0074501242488622665, - -0.009183879010379314, - -0.010820964351296425, - -0.07537836581468582, - 0.10119102895259857, - -0.008822977542877197, - 0.013086620718240738, - 0.012761054560542107, - -0.07155165821313858, - -0.008827300742268562, - 0.06906633824110031, - 0.08144252002239227, - 0.017893217504024506, - 0.035997506231069565, - 0.04988212138414383, - 0.013876711949706078, - 0.03241956979036331, - 0.0907677710056305, - 0.060314640402793884, - 0.0072409361600875854, - -0.021741919219493866, - -0.03993678092956543, - 0.1135089099407196, - 0.010460760444402695, - -0.09237933903932571, - -0.06321438401937485, - -0.02145492658019066, - -0.07221998274326324, - 0.015705164521932602, - -0.007785316091030836, - 0.02918567880988121, - 0.016829241067171097, - -0.010494627989828587, - -0.08744720369577408, - -0.0733645111322403, - 0.06126019358634949, - -0.09093831479549408, - -0.0495544895529747, - -0.029355553910136223, - 0.04723712056875229, - 0.10146286338567734, - 0.07382183521986008, - 0.0197888370603323, - -0.01096520759165287, - 0.053285837173461914, - -0.10108982771635056, - -0.042458269745111465, - 0.01303887739777565, - -0.014631019905209541, - -0.07976728677749634, - 0.039096347987651825, - -0.05399172380566597, - 0.05580270290374756, - -0.06278306990861893, - 0.128276988863945, - 0.00547771668061614, - -0.0711478441953659, - -0.07058806717395782, - 0.03497830778360367, - -0.064044289290905, - 0.023915551602840424, - 0.0412735752761364, - 0.015875883400440216, - 0.043776970356702805, - -0.05875685065984726, - 0.12558326125144958, - 0.014873407781124115, - -0.021190688014030457, - -0.09137672930955887, - -0.04988788813352585, - -0.00418389867991209, - 0.04000279679894447, - 0.021027863025665283, - -0.0600716695189476, - -0.0002337014302611351, - 0.03781680762767792, - -0.03509362041950226, - 0.06237088888883591, - 0.1147623062133789, - 0.06811603158712387, - -0.0892682820558548 - ] - }, - "p245_234.wav": { - "name": "p245", - "embedding": [ - 0.03859855234622955, - 0.06536020338535309, - -0.05317090451717377, - 0.048265717923641205, - -0.07475513219833374, - 0.03391978517174721, - -0.11376482248306274, - 0.07741101086139679, - -0.024729568511247635, - 0.10837063938379288, - -0.06549143046140671, - 0.0974111258983612, - -0.03725048527121544, - -0.16334807872772217, - -0.022786781191825867, - 0.029134754091501236, - -0.021586617454886436, - -0.034028712660074234, - -0.07125753164291382, - -0.05357389524579048, - 0.03808830678462982, - 0.04620485007762909, - 0.037542980164289474, - -0.03874049335718155, - 0.024919772520661354, - 0.07656604051589966, - -0.0012513245455920696, - 0.020306438207626343, - -0.0073990351520478725, - -0.02825022302567959, - -0.033680260181427, - 0.12117268145084381, - -0.05313227325677872, - -0.02491612732410431, - 0.0220029316842556, - -0.011181545443832874, - -0.026563022285699844, - -0.06553985178470612, - 0.00677464809268713, - 0.0188668854534626, - -0.06003882735967636, - 0.07544171065092087, - 0.037750158458948135, - -0.02425515465438366, - 0.03790944069623947, - -0.02394789643585682, - -0.03895793855190277, - -0.031601451337337494, - -0.1135723739862442, - 0.15090526640415192, - 0.06480830907821655, - 0.005111951846629381, - -0.07643724977970123, - -0.03469008952379227, - 0.11702896654605865, - 0.00011325161904096603, - -0.10391978174448013, - -0.0601520910859108, - 0.05091874301433563, - 0.13522972166538239, - -0.021721580997109413, - -0.010522306896746159, - 0.04580019786953926, - 0.08238363265991211, - 0.05134568735957146, - 0.05934164673089981, - 0.09767190366983414, - 0.11020466685295105, - -0.01940980926156044, - 0.026963967829942703, - 0.0635671317577362, - 0.0512508898973465, - 0.004070617258548737, - -0.03484227508306503, - 0.028774341568350792, - -0.023614415898919106, - -0.03152000159025192, - -0.021742310374975204, - -0.0170968659222126, - -0.03713006153702736, - -0.014190487563610077, - -0.006610504351556301, - 0.023592984303832054, - 0.013758573681116104, - -0.07379648089408875, - 0.03989016264677048, - 0.05868522822856903, - -0.04482884332537651, - 0.07561008632183075, - 0.04234018176794052, - -0.02142864651978016, - 0.02775394916534424, - -0.06345707178115845, - -0.06695277243852615, - 0.006896377075463533, - 0.015231841243803501, - -0.002263029105961323, - 0.07118502259254456, - 0.041825756430625916, - -0.01341099664568901, - 0.1182360053062439, - 0.05332415923476219, - -0.00010971445590257645, - 0.016209347173571587, - -0.05489329993724823, - 0.11478199064731598, - 0.09783156961202621, - -0.021169234067201614, - 0.04628896340727806, - -0.025693543255329132, - 0.04850009083747864, - 0.03727053850889206, - -0.0980229601264, - -0.05620863288640976, - 0.01675214245915413, - -0.0005779140628874302, - -0.016480816528201103, - 0.12641844153404236, - -0.023657022044062614, - 0.029201500117778778, - 0.1001882255077362, - -0.07846298068761826, - -0.0468326061964035, - -0.02599833346903324, - 0.0507347472012043, - -0.05261535570025444, - 0.03368260711431503, - 0.06303907930850983, - -0.010581274516880512, - 0.010219539515674114, - 0.07421673089265823, - -0.0032368479296565056, - 0.011091831140220165, - 0.022239116951823235, - -0.030271630734205246, - 0.06623533368110657, - -0.009648853912949562, - -0.014935877174139023, - 0.08406563848257065, - 0.03172847628593445, - 0.07616819441318512, - -0.020973140373826027, - 0.0075493683107197285, - -0.08079719543457031, - 0.034587062895298004, - 0.03369280695915222, - 0.07178688794374466, - -0.02151252143085003, - -0.002016404177993536, - -0.06350171566009521, - -0.09410462528467178, - 0.036443352699279785, - -0.0070542446337640285, - 0.11022815108299255, - -0.02414689213037491, - 0.0006169844418764114, - 0.10694345086812973, - 0.03461815416812897, - -0.0037476629950106144, - -0.039060309529304504, - -0.012701804749667645, - 0.0005930531769990921, - 0.0647931694984436, - -0.06514895707368851, - -0.05673503875732422, - -0.017224684357643127, - 0.028163854032754898, - -0.013866370543837547, - 0.06153073161840439, - 0.06615598499774933, - 0.007006385363638401, - 0.015415019355714321, - -0.09403462707996368, - 0.040469661355018616, - -0.0571637861430645, - 0.0030420292168855667, - -0.018780099228024483, - -0.05402619391679764, - -0.03947633132338524, - 0.10606244206428528, - 0.028492046520113945, - 0.018114376813173294, - -0.00851733423769474, - -0.08809319138526917, - -0.05415783450007439, - 0.04925578832626343, - 0.0618937686085701, - -0.03630887717008591, - 0.04230650141835213, - 0.06619949638843536, - -0.02612951397895813, - 0.02468230575323105, - 0.08153250068426132, - 0.06665295362472534, - -0.05009851232171059, - -0.010692842304706573, - -0.046283796429634094, - 0.0961911752820015, - 0.057161860167980194, - -0.08834637701511383, - -0.058778949081897736, - -0.05279126390814781, - -0.0705227255821228, - 0.032884445041418076, - -0.00844891369342804, - 0.011212746612727642, - 0.04085033759474754, - -0.01949182152748108, - -0.11022347211837769, - -0.09587196260690689, - 0.08932378888130188, - -0.05024102330207825, - 0.0008833149913698435, - -0.08373536169528961, - 0.011574815027415752, - 0.07716451585292816, - 0.030302952975034714, - -0.018663160502910614, - 0.003427368588745594, - 0.026869148015975952, - -0.03749735653400421, - 0.025821998715400696, - 0.06695492565631866, - 0.030477840453386307, - -0.08606046438217163, - -0.01636342518031597, - -0.07262247055768967, - 0.09376001358032227, - -0.045824408531188965, - 0.13435187935829163, - 0.030832357704639435, - -0.029940340667963028, - -0.0678267776966095, - 0.08531317859888077, - -0.038513388484716415, - 0.0648491233587265, - 0.07825575023889542, - 0.06580692529678345, - 0.023558005690574646, - -0.07233178615570068, - 0.10416823625564575, - 0.0473080649971962, - -0.03588294982910156, - -0.07229477912187576, - -0.020407695323228836, - -0.02657570317387581, - 0.03915943577885628, - 0.04880320280790329, - -0.06501597911119461, - 0.018592577427625656, - 0.0319160558283329, - -0.024493027478456497, - 0.08041813969612122, - 0.110394686460495, - 0.11622071266174316, - -0.07773072272539139 - ] - }, - "p245_397.wav": { - "name": "p245", - "embedding": [ - 0.057540830224752426, - 0.06532454490661621, - -0.02408442460000515, - 0.042704205960035324, - -0.062366336584091187, - 0.056560419499874115, - -0.1079028993844986, - 0.11655204743146896, - -0.04469050094485283, - 0.13947443664073944, - -0.07262063026428223, - 0.11737707257270813, - -0.01949811726808548, - -0.17521195113658905, - -0.03316901624202728, - 0.05325757712125778, - -0.06746870279312134, - -0.04792320355772972, - -0.0665336474776268, - -0.03227730095386505, - 0.0373370423913002, - 0.05137907713651657, - 0.035126909613609314, - 0.02016899548470974, - 0.014160270802676678, - 0.07044355571269989, - -0.012833474203944206, - 0.03222101554274559, - 0.015369421802461147, - -0.07165725529193878, - -0.04738829657435417, - 0.09383641928434372, - -0.0397530198097229, - 0.011873606592416763, - 0.03279845416545868, - 0.00019890815019607544, - 0.00031969169504009187, - -0.08078673481941223, - -0.044617921113967896, - 0.0028171264566481113, - -0.05969257652759552, - 0.06437467038631439, - 0.01772245019674301, - -0.031186606734991074, - 0.04823547601699829, - -0.010540718212723732, - -0.04005371034145355, - -0.04987271875143051, - -0.10491453111171722, - 0.1607937067747116, - 0.09455075860023499, - 0.005585236009210348, - -0.06001652032136917, - -0.06775936484336853, - 0.10809382051229477, - -0.0183560773730278, - -0.1331251561641693, - -0.031904272735118866, - 0.06258156150579453, - 0.16119226813316345, - -0.03705383464694023, - -0.02197418175637722, - 0.034684278070926666, - 0.12138589471578598, - 0.06770135462284088, - 0.08071542531251907, - 0.09527765959501266, - 0.10467272996902466, - -0.023244358599185944, - 0.02007889375090599, - 0.07369059324264526, - 0.07845441997051239, - 0.0824674516916275, - -0.004242807626724243, - 0.028644919395446777, - 0.015267936512827873, - -0.029963966459035873, - -0.012296195141971111, - -0.03389760106801987, - -0.008340008556842804, - -0.016823895275592804, - -0.0030051961075514555, - 0.018570445477962494, - 0.015772460028529167, - -0.02580837905406952, - 0.05877598747611046, - 0.03376041352748871, - -0.023342913016676903, - 0.047215916216373444, - 0.027569323778152466, - -0.0004563244874589145, - 0.06384430825710297, - -0.06534422934055328, - -0.08968979120254517, - 0.01588067226111889, - 0.011095504276454449, - 0.014128206297755241, - 0.06967657804489136, - 0.04535719379782677, - -0.02505848929286003, - 0.11780580133199692, - 0.04420093819499016, - -0.010124864988029003, - 0.0207502581179142, - -0.0945325717329979, - 0.10449769347906113, - 0.10750206559896469, - -0.02789856493473053, - 0.03669149801135063, - -0.0426027774810791, - 0.09445399045944214, - 0.07198980450630188, - -0.14391843974590302, - -0.05636026710271835, - 0.030613554641604424, - -0.012263334356248379, - -0.004027357324957848, - 0.10700099170207977, - -0.006462668534368277, - 0.04592222720384598, - 0.10730355978012085, - -0.08114545047283173, - -0.03928473964333534, - -0.023136427626013756, - 0.053239788860082626, - -0.08261683583259583, - 0.052216537296772, - 0.036352451890707016, - -0.0025719678960740566, - 0.003824323182925582, - 0.07800237834453583, - -0.02541550248861313, - -0.026276595890522003, - 0.011455315165221691, - -0.05827484652400017, - 0.02425011619925499, - -0.02965531498193741, - -0.02056877315044403, - 0.06409473717212677, - 0.03817122057080269, - 0.02788360044360161, - -0.020514635369181633, - -0.02869958057999611, - -0.11039724946022034, - 0.0313028059899807, - 0.026596589013934135, - 0.07606153935194016, - -0.007155153900384903, - -0.00208934280090034, - -0.03904145956039429, - -0.07480637729167938, - 0.03183102607727051, - -0.030751032754778862, - 0.06840033829212189, - -0.030961211770772934, - 0.004520168527960777, - 0.09241440147161484, - 0.013798135332763195, - -0.011791705153882504, - -0.036504633724689484, - -0.029024504125118256, - 0.017915723845362663, - 0.06781511008739471, - -0.07024537026882172, - -0.070942722260952, - 0.004237617366015911, - 0.02153971791267395, - -0.023881524801254272, - 0.04084716737270355, - 0.028243567794561386, - 0.012064069509506226, - 0.02149488590657711, - -0.07491093128919601, - 0.008561758324503899, - -0.12347130477428436, - -0.060442790389060974, - 0.00012538924056570977, - -0.04127415642142296, - 0.00697859562933445, - 0.06804788112640381, - 0.016223493963479996, - 0.029025528579950333, - -0.022596752271056175, - -0.09798000752925873, - -0.07826878130435944, - 0.07046032696962357, - 0.06413925439119339, - 0.010672470554709435, - 0.04109174758195877, - 0.07330833375453949, - -0.016872752457857132, - 0.044797904789447784, - 0.05065843462944031, - 0.11130677163600922, - -0.015410601161420345, - 0.021907702088356018, - -0.07040541619062424, - 0.09405621141195297, - 0.07999931275844574, - -0.07885131239891052, - -0.08681308478116989, - -0.034416936337947845, - -0.06607018411159515, - 0.049803461879491806, - -0.025917261838912964, - 0.0004382620973046869, - 0.03776116669178009, - -0.005550956353545189, - -0.11164825409650803, - -0.08303257077932358, - 0.11659802496433258, - -0.05695090815424919, - -0.015014204196631908, - -0.08481454849243164, - 0.03651123866438866, - 0.09869354963302612, - 0.034791506826877594, - -0.018765516579151154, - 0.020810086280107498, - 0.05472680926322937, - -0.04323801025748253, - -0.004003293812274933, - 0.04698282107710838, - 0.019797801971435547, - -0.12165190279483795, - -0.017747284844517708, - -0.0698779746890068, - 0.06123388931155205, - -0.051786281168460846, - 0.13769465684890747, - -0.0026503829285502434, - -0.03999355062842369, - -0.08109214156866074, - 0.06105998158454895, - -0.005325633566826582, - 0.06430846452713013, - 0.04729950428009033, - 0.07043691724538803, - 0.0337294302880764, - -0.08141229301691055, - 0.11539270728826523, - 0.04767915606498718, - -0.04081384465098381, - -0.05705872178077698, - -0.038658443838357925, - -0.034047093242406845, - 0.007532726041972637, - 8.991795766633004e-05, - -0.07070273905992508, - -0.0014495283830910921, - 0.005676197819411755, - -0.0341653935611248, - 0.05727916583418846, - 0.14224930107593536, - 0.08008070290088654, - -0.11024807393550873 - ] - }, - "p245_106.wav": { - "name": "p245", - "embedding": [ - 0.0427519716322422, - 0.07694810628890991, - -0.02245134301483631, - -0.005665434058755636, - -0.010476135648787022, - 0.06258927285671234, - -0.1418188214302063, - 0.10302042961120605, - -0.06556939333677292, - 0.11914758384227753, - -0.07776011526584625, - 0.08804655075073242, - -0.011592025868594646, - -0.1432502567768097, - -0.08018187433481216, - 0.027180248871445656, - -0.01970004104077816, - -0.004508022218942642, - -0.026844289153814316, - -0.01862291246652603, - 0.04567750543355942, - 0.018382199108600616, - 0.0061140842735767365, - -0.00606498122215271, - 0.010840908624231815, - 0.03474259749054909, - 0.033002011477947235, - 0.03733992204070091, - -0.004828840494155884, - 0.02688691020011902, - 0.020637158304452896, - 0.10734124481678009, - -0.01397402212023735, - 0.027543287724256516, - 0.05704706907272339, - 0.030004329979419708, - -0.008690332062542439, - -0.07661132514476776, - 0.010858278721570969, - -0.0017732740379869938, - -0.024860268458724022, - 0.0724225789308548, - 0.05331461876630783, - 0.031018195673823357, - 0.016407746821641922, - -0.0012391991913318634, - -0.012477651238441467, - -0.0644802451133728, - -0.08840176463127136, - 0.15691760182380676, - 0.04493248835206032, - 0.024969400838017464, - -0.10528482496738434, - -0.04488055408000946, - 0.11523723602294922, - -0.004678588360548019, - -0.06408601999282837, - -0.0564829558134079, - 0.05434976890683174, - 0.1709747016429901, - -0.020079301670193672, - -0.04213612526655197, - 0.005624804645776749, - 0.11440606415271759, - -0.010934830643236637, - 0.06499598920345306, - 0.10186415910720825, - 0.08263866603374481, - 0.012216202914714813, - 0.020930536091327667, - 0.02490309253334999, - 0.04082687944173813, - 0.0038823112845420837, - -0.05641651153564453, - 0.028496716171503067, - -0.01733851246535778, - -0.016198333352804184, - 0.03138786926865578, - -0.03411983326077461, - -0.05369788780808449, - -0.02596319653093815, - 0.016600243747234344, - 0.005684027448296547, - 0.02999354712665081, - -0.05634834244847298, - 0.025477098301053047, - 0.0038183159194886684, - -0.04912189394235611, - 0.05777186527848244, - 0.0677749514579773, - -0.003958894871175289, - -0.005723932757973671, - -0.04160679131746292, - -0.09642630815505981, - 0.016420360654592514, - 0.00039441417902708054, - -0.009193778969347477, - 0.0674218237400055, - 0.021623987704515457, - -0.002396136522293091, - 0.07411657273769379, - 0.033429283648729324, - -0.019676407799124718, - -0.015580292791128159, - -0.08421895653009415, - 0.09572944790124893, - 0.09954970329999924, - -0.01319190114736557, - 0.009538757614791393, - -0.062058378010988235, - 0.02598610892891884, - 0.07688501477241516, - -0.1164083480834961, - -0.08166754990816116, - 0.06654050201177597, - 0.05794944614171982, - 0.03165165334939957, - 0.09595367312431335, - -0.007649307604879141, - -0.022623702883720398, - 0.059548377990722656, - -0.05058114230632782, - -0.06607181578874588, - -0.06546132266521454, - 0.040819473564624786, - -0.04138847067952156, - 0.024085860699415207, - 0.03412676602602005, - 0.02466416172683239, - -0.05497874319553375, - 0.06199301406741142, - 0.01113943662494421, - -0.008335095830261707, - -0.010134845972061157, - 0.026606829836964607, - 0.0726943239569664, - -0.021889425814151764, - -0.010633549652993679, - 0.009030130691826344, - 0.07020898163318634, - 0.032597240060567856, - 0.04164118692278862, - -0.030050138011574745, - -0.06943956017494202, - -0.014498108997941017, - 0.07804124057292938, - 0.04547502100467682, - -0.0435788631439209, - -0.05152851343154907, - -0.04110708460211754, - -0.032782066613435745, - -0.0016359263099730015, - -0.015720851719379425, - 0.09455867111682892, - 0.031994856894016266, - 0.031123023480176926, - 0.10014209151268005, - -0.02973327413201332, - -0.01036190614104271, - -0.02443264052271843, - 0.04108366742730141, - 0.018774792551994324, - 0.015921510756015778, - -0.045924410223960876, - -0.05289851874113083, - 0.003566407598555088, - 0.024182381108403206, - -0.022433005273342133, - -0.005906634032726288, - 0.01901666820049286, - -0.0029092319309711456, - 0.041755907237529755, - -0.08814629912376404, - 0.013949907384812832, - -0.13104656338691711, - -0.007741441950201988, - -0.008114174008369446, - -0.04755556955933571, - 0.012878422625362873, - 0.0642852932214737, - 0.03845012187957764, - 0.013791058212518692, - -0.004724073689430952, - -0.09635418653488159, - -0.03396987542510033, - 0.08273695409297943, - 0.10104820132255554, - -0.013546517118811607, - 0.007590843364596367, - 0.025754503905773163, - 0.004993945360183716, - 0.02900567278265953, - 0.0814787894487381, - 0.061993952840566635, - -0.04452437907457352, - -0.029020089656114578, - -0.04106205329298973, - 0.09100213646888733, - 0.0467894971370697, - -0.09919969737529755, - -0.0771709531545639, - -0.019369514659047127, - -0.04193383455276489, - -0.00019593536853790283, - -0.025279633700847626, - 0.017453771084547043, - 0.02317841723561287, - -0.04758284240961075, - -0.11623245477676392, - -0.08040468394756317, - 0.0547233484685421, - -0.05182869732379913, - -0.0026939632371068, - -0.05191291868686676, - 0.04142235592007637, - 0.0949823260307312, - 0.020158160477876663, - -0.007058457471430302, - -0.024548951536417007, - -0.00752929225564003, - -0.07997819781303406, - -0.043783482164144516, - -0.03655308857560158, - 0.006962346378713846, - -0.09107588231563568, - 0.02590060979127884, - -0.06737266480922699, - 0.09787330776453018, - -0.07624639570713043, - 0.10886448621749878, - -0.006393615156412125, - -0.06544225662946701, - -0.07187162339687347, - -0.02109329029917717, - -0.0179626252502203, - 0.05293448269367218, - 0.025958435609936714, - 0.04295800253748894, - -0.021494261920452118, - -0.057783521711826324, - 0.09629243612289429, - 0.07330377399921417, - -0.020481985062360764, - -0.08109760284423828, - -0.018762478604912758, - -0.002446417696774006, - 0.02659645862877369, - -0.004103943705558777, - -0.03248944133520126, - 0.004662847146391869, - 0.024305369704961777, - -0.04136628657579422, - 0.06538631021976471, - 0.10389071702957153, - 0.0602184496819973, - -0.10899677872657776 - ] - }, - "p245_191.wav": { - "name": "p245", - "embedding": [ - 0.022175565361976624, - 0.0747724249958992, - -0.027321409434080124, - 0.030165312811732292, - -0.05689185485243797, - 0.07187459617853165, - -0.15050649642944336, - 0.10399547219276428, - -0.037636712193489075, - 0.1342366337776184, - -0.04982148855924606, - 0.10650668293237686, - -0.008327571675181389, - -0.22470709681510925, - -0.04590329900383949, - 0.054470378905534744, - -0.06933785229921341, - -0.05900704115629196, - -0.051514819264411926, - -0.025101831182837486, - 0.044221095740795135, - 0.03885680064558983, - 0.0031743545550853014, - 0.0074349381029605865, - 0.009667285718023777, - 0.06393073499202728, - -0.009768174961209297, - 0.03430560976266861, - 0.008768603205680847, - -0.014811355620622635, - -0.028077878057956696, - 0.1162358820438385, - -0.04909404367208481, - 0.004908096045255661, - 0.04136002063751221, - -0.005539552308619022, - 0.007891043089330196, - -0.036787621676921844, - -0.0105166370049119, - 0.03261182829737663, - -0.05397137999534607, - 0.08123006671667099, - 0.056336089968681335, - 0.02756069228053093, - 0.042793285101652145, - 0.01947682537138462, - -0.03352392092347145, - -0.052572377026081085, - -0.10145284980535507, - 0.1726909726858139, - 0.08373115211725235, - -0.02637336030602455, - -0.042922284454107285, - -0.05629683658480644, - 0.1016121581196785, - 0.006244222167879343, - -0.13506515324115753, - -0.06101066246628761, - 0.10683766007423401, - 0.15685945749282837, - -0.027135232463479042, - -0.02631394751369953, - 0.016621630638837814, - 0.14870795607566833, - 0.046060968190431595, - 0.09830193221569061, - 0.06431888043880463, - 0.1227603331208229, - -0.012555280700325966, - -0.012496725656092167, - 0.08732208609580994, - 0.048278260976076126, - 0.02975551038980484, - -0.031862739473581314, - 0.03687242045998573, - -0.010816832073032856, - 0.013931049965322018, - 0.0018217662582173944, - -0.021716777235269547, - 0.004080775193870068, - 0.005389925092458725, - 0.008121881633996964, - -0.01443731039762497, - 0.031808264553546906, - -0.03613647073507309, - 0.046505335718393326, - 0.04709441959857941, - 0.0026023699901998043, - 0.06788568198680878, - 0.06565072387456894, - 0.026158148422837257, - 0.0611119419336319, - -0.06408911198377609, - -0.0799141675233841, - 0.04541116580367088, - 0.014736386016011238, - 0.01829720474779606, - 0.06068801134824753, - 0.033604465425014496, - -0.008374703116714954, - 0.10796406120061874, - 0.04096109792590141, - -0.03924153372645378, - 0.03126382827758789, - -0.10777614265680313, - 0.14503967761993408, - 0.07615648210048676, - -0.011648321524262428, - 0.028465423732995987, - -0.0382898710668087, - 0.07624278217554092, - 0.06406006217002869, - -0.12477913498878479, - -0.06001076102256775, - 0.05483951047062874, - 0.02717859297990799, - -0.04498917981982231, - 0.13747744262218475, - -0.009407522156834602, - 0.015672191977500916, - 0.10710211843252182, - -0.061838794499635696, - -0.043705619871616364, - -0.03202421963214874, - 0.03577689453959465, - -0.0925050601363182, - 0.03193860873579979, - 0.046968456357717514, - -0.015962304547429085, - 0.00843830220401287, - 0.0938134416937828, - -0.009952452965080738, - 0.004126099403947592, - 0.0025766040198504925, - -0.02352413907647133, - 0.0604381188750267, - -0.00112285150680691, - 0.010314145125448704, - 0.04976432025432587, - 0.023834409192204475, - 0.05055885761976242, - -0.012612798251211643, - -0.0377265028655529, - -0.12382485717535019, - 0.025742942467331886, - 0.024966957047581673, - 0.08417195081710815, - -0.013430200517177582, - 0.0034405088517814875, - -0.04963560029864311, - -0.08324241638183594, - 0.030722662806510925, - -0.02228548191487789, - 0.09034071862697601, - -0.008055459707975388, - -0.037861380726099014, - 0.08979056030511856, - 0.016244126483798027, - 0.0017152815125882626, - -0.035636186599731445, - -0.03838826343417168, - 0.013545718975365162, - 0.03792436048388481, - -0.10829644650220871, - -0.03670772165060043, - 0.002010050928220153, - 0.042315997183322906, - -0.0072885481640696526, - 0.037247128784656525, - 0.055533722043037415, - 0.011021795682609081, - 0.028642475605010986, - -0.07372120767831802, - 0.016794823110103607, - -0.08757111430168152, - -0.05934591963887215, - -0.014382150024175644, - -0.021497951820492744, - -0.013199860230088234, - 0.0862390547990799, - -0.0036681336350739002, - 0.019779764115810394, - -0.02517828717827797, - -0.07932916283607483, - -0.0665304884314537, - 0.0705956220626831, - 0.07664357870817184, - -0.0077321394346654415, - 0.054230138659477234, - 0.05223070830106735, - -0.039549436420202255, - 0.04978561773896217, - 0.055477555841207504, - 0.1299421638250351, - -0.04276376590132713, - 0.029367748647928238, - -0.0633784830570221, - 0.08539832383394241, - 0.05862031131982803, - -0.08714938163757324, - -0.059677526354789734, - 0.0008904297719709575, - -0.052549783140420914, - 0.02825263887643814, - -0.04864303395152092, - 0.005762938410043716, - 0.030967002734541893, - 0.009038272313773632, - -0.1029125452041626, - -0.08618417382240295, - 0.06293707340955734, - -0.08058104664087296, - -0.005472587421536446, - -0.09468360990285873, - 0.04746519774198532, - 0.10620653629302979, - 0.03684850037097931, - -0.049029648303985596, - -0.008159715682268143, - 0.04514487460255623, - -0.039109472185373306, - 0.0007048398838378489, - 0.039099399000406265, - 0.037268124520778656, - -0.12623754143714905, - -0.03399093076586723, - -0.09068727493286133, - 0.050463948398828506, - -0.0474587008357048, - 0.13753531873226166, - 0.028787899762392044, - -0.03845091164112091, - -0.060725659132003784, - 0.04398157447576523, - -0.016064437106251717, - 0.06347043067216873, - 0.047907594591379166, - 0.074980728328228, - 0.04420159384608269, - -0.03178921714425087, - 0.12935315072536469, - 0.04517108201980591, - -0.03804997354745865, - -0.07401292026042938, - 0.010099492967128754, - -0.032603826373815536, - 0.0480019710958004, - 0.04429735988378525, - -0.11224681884050369, - -0.02244671806693077, - 0.0525258332490921, - -0.03385701775550842, - 0.05783668905496597, - 0.1340969055891037, - 0.07120203226804733, - -0.0999627485871315 - ] - }, - "p245_408.wav": { - "name": "p245", - "embedding": [ - 0.05795387923717499, - 0.07993321120738983, - -0.028890900313854218, - 0.04526165500283241, - -0.053827352821826935, - 0.07763614505529404, - -0.1255510449409485, - 0.10473877191543579, - -0.03808465227484703, - 0.14794796705245972, - -0.054261621087789536, - 0.1166784018278122, - 0.008465890772640705, - -0.1844589114189148, - -0.033687327057123184, - 0.0470532588660717, - -0.05057710409164429, - -0.02854839526116848, - -0.0529794916510582, - -0.0006592115387320518, - 0.048261843621730804, - 0.05804350972175598, - 0.03579185903072357, - -0.034539684653282166, - 0.030921176075935364, - 0.04982202500104904, - 0.001303676050156355, - 0.04713825136423111, - 0.02033761329948902, - -0.09648922085762024, - -0.04627399146556854, - 0.11619056016206741, - -0.04022083058953285, - 0.02874002419412136, - 0.037012986838817596, - -0.004669602029025555, - 0.008763359859585762, - -0.06490179896354675, - -0.02678809128701687, - 0.02365734800696373, - -0.036279380321502686, - 0.0786181092262268, - 0.032284680753946304, - -0.007165825460106134, - 0.042665693908929825, - -0.0048924582079052925, - -0.030786365270614624, - -0.05162402242422104, - -0.0943618193268776, - 0.1822013556957245, - 0.05752633512020111, - -0.0026272409595549107, - -0.061701394617557526, - -0.08332651853561401, - 0.09486395120620728, - 0.002730137901380658, - -0.12565092742443085, - -0.04224316030740738, - 0.062358319759368896, - 0.15870404243469238, - -0.00639377674087882, - -0.03632984310388565, - 0.027366695925593376, - 0.12502487003803253, - 0.048423781991004944, - 0.09107780456542969, - 0.07537348568439484, - 0.10573868453502655, - 0.00944077130407095, - 0.03287335857748985, - 0.052275948226451874, - 0.07837960124015808, - 0.04395738244056702, - -0.017929136753082275, - 0.040936488658189774, - -0.0040151197463274, - -0.027951855212450027, - -0.008947746828198433, - -0.011454056948423386, - -0.0007989341393113136, - 0.003869995940476656, - 0.004563618451356888, - 0.021159760653972626, - 0.030073046684265137, - -0.047005705535411835, - 0.03801552206277847, - 0.02660352922976017, - -0.017359985038638115, - 0.05702454596757889, - 0.04981996864080429, - 0.0342940129339695, - 0.049222953617572784, - -0.0661940649151802, - -0.11556795239448547, - 0.03198021277785301, - 0.025216955691576004, - 0.0177287720143795, - 0.06385821104049683, - 0.03505943715572357, - -0.026817122474312782, - 0.10143935680389404, - 0.033250562846660614, - -0.01962314546108246, - 0.022350860759615898, - -0.08895082771778107, - 0.11319520324468613, - 0.09378618746995926, - -0.0030606850050389767, - 0.05085260793566704, - -0.058879315853118896, - 0.09249942004680634, - 0.0699605941772461, - -0.14641055464744568, - -0.08140605688095093, - 0.041800521314144135, - -0.00790295097976923, - -0.0018841137643903494, - 0.12380842864513397, - 0.00541010731831193, - 0.027493659406900406, - 0.08993594348430634, - -0.10014893859624863, - -0.047284893691539764, - -0.0257110595703125, - 0.04882792383432388, - -0.09543190151453018, - 0.05618387460708618, - 0.030164871364831924, - -0.026353899389505386, - -0.012837149202823639, - 0.0756593570113182, - -0.017210397869348526, - 0.026204951107501984, - 0.0013834394048899412, - -0.04166504740715027, - 0.04386794939637184, - -0.039340242743492126, - 0.007611640263348818, - 0.05172627419233322, - 0.01723569631576538, - 0.054618194699287415, - -0.024440079927444458, - -0.037975117564201355, - -0.1261913776397705, - 0.023831166326999664, - 0.031019095331430435, - 0.057257261127233505, - -0.01631343923509121, - -0.013952294364571571, - -0.039183732122182846, - -0.08422552049160004, - 0.052201323211193085, - -0.03210868313908577, - 0.07844893634319305, - 0.019184023141860962, - -0.007348168641328812, - 0.10857681930065155, - 0.006041594315320253, - 0.002210104838013649, - -0.03175653889775276, - -0.038547806441783905, - 0.02191019244492054, - 0.05476086214184761, - -0.09116437286138535, - -0.0550079345703125, - 0.0073479898273944855, - 0.0009390049381181598, - -0.012643402442336082, - 0.02743622660636902, - 0.05711442977190018, - 0.020645011216402054, - 0.04290563613176346, - -0.07044471055269241, - -0.007050788961350918, - -0.10893266648054123, - -0.05954836308956146, - -0.01748489774763584, - -0.035437729209661484, - -0.01827521063387394, - 0.10539530217647552, - 0.01852291449904442, - 0.020397283136844635, - -0.03199456259608269, - -0.061375267803668976, - -0.06714057922363281, - 0.06909464299678802, - 0.06822487711906433, - 0.010802545584738255, - 0.03910788893699646, - 0.04038555175065994, - -0.012726346030831337, - 0.04964650049805641, - 0.05538329482078552, - 0.09894035756587982, - -0.010316697880625725, - 0.012042976915836334, - -0.07650133967399597, - 0.12115707993507385, - 0.08962982147932053, - -0.0786755159497261, - -0.09203052520751953, - -0.020763112232089043, - -0.08135312795639038, - 0.03938748687505722, - -0.039056919515132904, - 0.0013477166648954153, - 0.04168971627950668, - -0.00751902861520648, - -0.1154029369354248, - -0.08849278092384338, - 0.09200016409158707, - -0.06380036473274231, - -0.024448929354548454, - -0.08399520814418793, - 0.04543715715408325, - 0.09038315713405609, - 0.05097802355885506, - -0.04044061526656151, - -0.001345152035355568, - 0.06383608281612396, - -0.060351815074682236, - 0.0017298684688284993, - 0.04822154343128204, - 0.017030300572514534, - -0.10195666551589966, - 0.0010009845718741417, - -0.06511762738227844, - 0.05057504400610924, - -0.08186712861061096, - 0.14817070960998535, - -5.755014717578888e-05, - -0.070331871509552, - -0.0739428848028183, - 0.0715414509177208, - -0.01954510062932968, - 0.040190234780311584, - 0.0398549884557724, - 0.05801467224955559, - 0.05601721629500389, - -0.08724776655435562, - 0.09807078540325165, - 0.0446489080786705, - -0.01285366527736187, - -0.07045096158981323, - -0.03892212361097336, - -0.031981877982616425, - 0.053543977439403534, - 0.012469088658690453, - -0.0838434100151062, - 0.00615954864770174, - 0.039289359003305435, - -0.010561258532106876, - 0.05536743998527527, - 0.13979165256023407, - 0.05070715770125389, - -0.11497946083545685 - ] - }, - "p245_197.wav": { - "name": "p245", - "embedding": [ - 0.058055635541677475, - 0.1074618473649025, - 0.021068284288048744, - -0.0010020845802500844, - -0.04170786216855049, - 0.08451616019010544, - -0.17002679407596588, - 0.1508990228176117, - -0.03895324096083641, - 0.1541563868522644, - -0.051700741052627563, - 0.10365165024995804, - -0.002696135314181447, - -0.19420285522937775, - -0.04791633039712906, - 0.055123891681432724, - -0.06069289147853851, - -0.027404047548770905, - -0.017811425030231476, - -0.03357461839914322, - 0.030294299125671387, - 0.04507025331258774, - 0.04362129047513008, - -0.0014828925486654043, - 0.05933642014861107, - 0.05420345440506935, - 0.009121217764914036, - 0.049728456884622574, - -0.000526254007127136, - -0.06650300323963165, - -0.025423135608434677, - 0.10703492909669876, - -0.048015132546424866, - 0.011957149021327496, - 0.04159965738654137, - -0.021543148905038834, - 0.009015759453177452, - -0.07240532338619232, - -0.01671900972723961, - 0.014973951503634453, - -0.01312252227216959, - 0.09170165657997131, - 0.04914812743663788, - 0.0187879279255867, - 0.014517447911202908, - 0.029300352558493614, - -0.004633763805031776, - -0.06220166012644768, - -0.11511097848415375, - 0.17847901582717896, - 0.05609407275915146, - 0.009741229005157948, - -0.06864548474550247, - -0.0787307620048523, - 0.10420095175504684, - -0.01636802777647972, - -0.10933462530374527, - -0.027812931686639786, - 0.08134518563747406, - 0.1686745285987854, - -0.029305512085556984, - -0.05873207747936249, - 0.0376870222389698, - 0.1378747969865799, - 0.0232933908700943, - 0.08510619401931763, - 0.08449776470661163, - 0.09587737172842026, - -0.013932125642895699, - 0.0073706479743123055, - 0.034882497042417526, - 0.05307560786604881, - 0.009565510787069798, - -0.020982712507247925, - 0.017607592046260834, - -0.019956450909376144, - -0.021204426884651184, - -0.0021228892728686333, - -0.013767629861831665, - -0.013673433102667332, - -0.007005990482866764, - 0.003988579381257296, - -0.0010128997964784503, - 0.04044744744896889, - -0.02840178832411766, - 0.03810817375779152, - -0.011452930979430676, - 0.002437965013086796, - 0.09827789664268494, - 0.019896171987056732, - 0.04258324205875397, - 0.06000569462776184, - -0.06600376218557358, - -0.06905841082334518, - 0.04455297067761421, - 0.01811547577381134, - 0.026311039924621582, - 0.07242988795042038, - 0.04268445074558258, - -0.03791908547282219, - 0.13067877292633057, - 0.05285258963704109, - -0.012711300514638424, - 0.008694911375641823, - -0.10869701951742172, - 0.12411991506814957, - 0.07382039725780487, - -0.017362473532557487, - 0.06939296424388885, - -0.054552335292100906, - 0.0707441046833992, - 0.06080062687397003, - -0.15742075443267822, - -0.0933922603726387, - 0.03836025297641754, - 0.05100821331143379, - -0.015163294039666653, - 0.1337669938802719, - 7.327039929805323e-05, - 0.034779444336891174, - 0.08967702835798264, - -0.0820172056555748, - -0.047974471002817154, - -0.013950485736131668, - 0.06435086578130722, - -0.0925464779138565, - 0.04168618097901344, - 0.07407135516405106, - -0.03881368413567543, - 0.016208147630095482, - 0.06853528320789337, - -0.008164691738784313, - 0.0060318936593830585, - 0.008668231777846813, - -0.042966317385435104, - 0.02779749222099781, - -0.02616289258003235, - 0.02356853149831295, - 0.006193407811224461, - 0.043752271682024, - 0.04131161794066429, - 0.00846865028142929, - -0.061276935040950775, - -0.11208146810531616, - 0.0010961816878989339, - 0.020529426634311676, - 0.06525661796331406, - -0.016497058793902397, - -0.040986113250255585, - -0.04217483103275299, - -0.03932361677289009, - 0.016968177631497383, - 0.005211802199482918, - 0.07559551298618317, - -0.0035012983717024326, - -0.0009613845031708479, - 0.09929198771715164, - 0.05012435466051102, - -0.0016848078230395913, - -0.04078972712159157, - -0.03895736113190651, - 0.014426643960177898, - 0.03421925753355026, - -0.08102822303771973, - -0.05011318251490593, - 0.005671427585184574, - 0.04207475110888481, - -0.020724017173051834, - 0.052591726183891296, - 0.044406261295080185, - 0.02426319569349289, - 0.03639514371752739, - -0.05352209508419037, - 0.026526305824518204, - -0.08224309980869293, - -0.06781580299139023, - 0.001592017593793571, - 0.010638938285410404, - -0.045833855867385864, - 0.09403815120458603, - 0.022935403510928154, - 0.0695425346493721, - -0.02482745051383972, - -0.04397549480199814, - -0.06354080885648727, - 0.047804396599531174, - 0.07627888023853302, - -0.016450703144073486, - 0.031017674133181572, - 0.04734286665916443, - -0.02203744277358055, - 0.06639260798692703, - 0.0652126893401146, - 0.09491625428199768, - -0.0347813256084919, - 0.02320261299610138, - -0.07312561571598053, - 0.07098966091871262, - 0.06723051518201828, - -0.08712327480316162, - -0.08389002829790115, - -0.02102913334965706, - -0.07230132818222046, - 0.038018643856048584, - -0.008482086472213268, - 0.008950849995017052, - 0.007707138080149889, - -0.006337166763842106, - -0.09167716652154922, - -0.08920707553625107, - 0.07076869159936905, - -0.07141191512346268, - -0.0038407405372709036, - -0.07515989989042282, - 0.06482430547475815, - 0.10594165325164795, - 0.05566047504544258, - -0.001486341585405171, - -0.03975987061858177, - 0.026226256042718887, - -0.03154412657022476, - 0.005256484728306532, - 0.053102798759937286, - 0.028496958315372467, - -0.11359695345163345, - 0.01944729872047901, - -0.08850865811109543, - 0.052623454481363297, - -0.04521642252802849, - 0.16470223665237427, - 0.021295713260769844, - -0.0673568993806839, - -0.08467940241098404, - 0.019602719694375992, - -0.04269549995660782, - 0.042172446846961975, - 0.022178830578923225, - 0.04342152178287506, - 0.058471474796533585, - -0.0572822168469429, - 0.0899905413389206, - 0.0321134477853775, - -0.04098472371697426, - -0.08059430122375488, - -0.03718848153948784, - -0.023323047906160355, - 0.03747283294796944, - -0.0025357201229780912, - -0.09115681052207947, - -0.030114056542515755, - 0.03872305899858475, - 0.004737819544970989, - 0.0894341990351677, - 0.1272176206111908, - 0.05156904458999634, - -0.14191167056560516 - ] - }, - "p245_336.wav": { - "name": "p245", - "embedding": [ - 0.04297199845314026, - 0.06637506932020187, - 0.0003252355381846428, - -0.04164819419384003, - -0.0164704080671072, - 0.02591972053050995, - -0.13879114389419556, - 0.09573985636234283, - -0.004450442269444466, - 0.15151214599609375, - -0.05243874341249466, - 0.09468136727809906, - -0.024470534175634384, - -0.09278792887926102, - 0.021567203104496002, - 0.02131728082895279, - -0.027086731046438217, - 9.04211774468422e-05, - -0.0008207745850086212, - -0.08896653354167938, - 0.010634129866957664, - 0.01587599143385887, - 0.02689112164080143, - -0.05673631653189659, - 0.014687832444906235, - 0.08172720670700073, - -0.007245142012834549, - -0.017211776226758957, - -0.014790334738790989, - -0.07775133848190308, - 0.02428421750664711, - 0.06400258839130402, - -0.05009445175528526, - -0.008332937024533749, - 0.03116048499941826, - -0.012234840542078018, - -0.021201271563768387, - -0.02297772653400898, - 0.02111024223268032, - 0.05742549151182175, - -0.044390276074409485, - 0.08910342305898666, - 0.03663421422243118, - 0.004380689933896065, - 0.03484594449400902, - -0.019738275557756424, - -0.028948847204446793, - 0.020697079598903656, - -0.04744671657681465, - 0.1116088479757309, - 0.05790285766124725, - -0.0015091700479388237, - -0.06089019030332565, - 0.013046946376562119, - 0.06016375496983528, - 0.0027748923748731613, - -0.08971203118562698, - -0.0043679457157850266, - 0.018695957958698273, - 0.07477156817913055, - -0.037917912006378174, - -0.07455902546644211, - 0.021636972203850746, - 0.06878378987312317, - -0.005640862509608269, - 0.047774724662303925, - 0.09340020269155502, - 0.07889383286237717, - -0.0365731380879879, - 0.0011922679841518402, - 0.02478170022368431, - 0.07595258951187134, - 0.05987626314163208, - -0.02564232610166073, - 0.053052566945552826, - -0.03301495686173439, - -0.004700921941548586, - -0.05111683905124664, - -0.000600697472691536, - -0.05951221287250519, - -0.04950045794248581, - -0.022256068885326385, - 0.021153628826141357, - 0.07263054698705673, - -3.6852434277534485e-05, - -0.010028915479779243, - 0.06456665694713593, - -0.040224798023700714, - 0.0445375069975853, - 0.02239389345049858, - 0.015698667615652084, - 0.021052440628409386, - -0.09284137189388275, - -0.02747391164302826, - 0.021850164979696274, - -0.038596514612436295, - 0.0730225071310997, - 0.044772081077098846, - 0.044825874269008636, - 0.020545249804854393, - 0.08739449083805084, - 0.05544038861989975, - 0.001629092963412404, - -0.04035439342260361, - -0.06761690974235535, - 0.10777570307254791, - 0.10720673203468323, - -0.07259534299373627, - 0.03398248925805092, - -0.005189461633563042, - 0.02227882668375969, - -0.0324593111872673, - -0.10422004014253616, - -0.029190029948949814, - -0.020331036299467087, - 0.06648590415716171, - 0.01597311906516552, - 0.12341463565826416, - 0.011800015345215797, - 0.04585743322968483, - 0.08070963621139526, - -0.019063778221607208, - -0.022774135693907738, - -0.05218600109219551, - 0.027308207005262375, - -0.10546234250068665, - 0.0696202740073204, - 0.05264337360858917, - 0.03131499141454697, - 0.03148127719759941, - 0.08422926068305969, - 0.01298036240041256, - -0.011416951194405556, - -0.05168282240629196, - 0.009225451387465, - 0.011088758707046509, - 0.010594906285405159, - 0.050012726336717606, - 0.03542950749397278, - 0.011802375316619873, - 0.10038711130619049, - 0.04961829632520676, - -0.007886858657002449, - -0.0796830803155899, - 0.036881640553474426, - 0.003776947967708111, - 0.02053573727607727, - -0.04421299695968628, - -0.031965840607881546, - 0.015910228714346886, - -0.07837881147861481, - -0.015975290909409523, - -0.00562854390591383, - 0.06497380137443542, - 0.004884698428213596, - -0.006149151362478733, - 0.10936041176319122, - 0.05248694121837616, - 0.0030342661775648594, - -0.0033281277865171432, - -0.014363911002874374, - -0.019560104236006737, - 0.07094424962997437, - -0.1463857740163803, - -0.06753361225128174, - -0.021173985674977303, - 0.03479725494980812, - 0.021704215556383133, - 0.042933911085128784, - 0.09864449501037598, - -0.018615618348121643, - 0.0384952686727047, - 0.023089613765478134, - 0.0036072293296456337, - -0.050257302820682526, - -0.08452620357275009, - -0.02091260440647602, - -0.07687711715698242, - -0.06702183932065964, - 0.04567151144146919, - -0.043574102222919464, - 0.06908570230007172, - -0.02905118092894554, - -0.027556948363780975, - -0.05216683819890022, - 0.026882434263825417, - 0.021881554275751114, - -0.0668681263923645, - -0.015298723243176937, - 0.09534942358732224, - 0.01464770920574665, - 0.0020034611225128174, - 0.05454543977975845, - 0.09636372327804565, - -0.07684508711099625, - 0.02490130253136158, - -0.06378153711557388, - 0.07028444111347198, - 0.07099933922290802, - -0.020072638988494873, - -0.054828282445669174, - -0.06908369064331055, - -0.054092518985271454, - 0.04419594630599022, - -0.0267596747726202, - -0.02340739406645298, - -0.0006609074771404266, - -0.004478516057133675, - -0.04075480252504349, - -0.053550899028778076, - 0.04134989529848099, - -0.031349148601293564, - 0.021280432119965553, - -0.06925119459629059, - 0.02097034826874733, - 0.018761366605758667, - 0.07122942805290222, - -0.04583998769521713, - 0.05291718244552612, - 0.01850764825940132, - -0.023767197504639626, - 0.030848052352666855, - 0.02042655646800995, - 0.05000197887420654, - -0.03353630751371384, - -0.06380531936883926, - -0.07287409901618958, - 0.029993098229169846, - -0.038242340087890625, - 0.0485946424305439, - 0.02599048614501953, - -0.031193427741527557, - -0.03089020401239395, - -0.02484181709587574, - -0.037060145288705826, - 0.025059210136532784, - 0.07898952066898346, - 0.055542346090078354, - 0.048502467572689056, - -0.023209938779473305, - 0.07391097396612167, - 0.03547685593366623, - 0.027104074135422707, - -0.026511378586292267, - -0.0020484812557697296, - -0.023154495283961296, - 0.032872721552848816, - 0.02549217827618122, - -0.07073508948087692, - 0.024470817297697067, - 0.0013566603884100914, - 0.022015897557139397, - 0.03684920445084572, - 0.03721669688820839, - 0.040202103555202484, - -0.0817594826221466 - ] - }, - "p245_246.wav": { - "name": "p245", - "embedding": [ - 0.062234725803136826, - 0.06518390029668808, - -0.03540882468223572, - 0.037405289709568024, - -0.05455930903553963, - 0.03411645069718361, - -0.14325088262557983, - 0.14795808494091034, - 0.02645295485854149, - 0.12226879596710205, - -0.04102587699890137, - 0.12960875034332275, - 0.0007471313001587987, - -0.16069212555885315, - 0.008489241823554039, - 0.02835860289633274, - -0.0019056424498558044, - 0.009615087881684303, - -0.06737266480922699, - -0.032690081745386124, - 0.028827182948589325, - 0.03656414896249771, - 0.05571463704109192, - -0.06944573670625687, - 0.0347844660282135, - 0.051989588886499405, - -0.007428913842886686, - 0.04363567754626274, - -0.004475218243896961, - -0.07549194246530533, - -0.014238673262298107, - 0.08848488330841064, - -0.07911901921033859, - 0.005589722190052271, - 0.05654514580965042, - -0.04831772297620773, - -0.04138533025979996, - -0.03560688719153404, - -0.01955695077776909, - 0.022490136325359344, - -0.030201975256204605, - 0.08055878430604935, - 0.025492113083600998, - -0.029204340651631355, - 0.07459831982851028, - 0.029252590611577034, - -0.016695860773324966, - -0.03644099831581116, - -0.11087613552808762, - 0.1458817720413208, - 0.03860539570450783, - 0.019598830491304398, - -0.11119317263364792, - -0.036532312631607056, - 0.06928285956382751, - -0.044481340795755386, - -0.08801126480102539, - -0.04170284420251846, - 0.048794571310281754, - 0.11482498794794083, - -0.0402633398771286, - -0.05157041549682617, - 0.041940752416849136, - 0.06955446302890778, - 0.1100507378578186, - 0.055275656282901764, - 0.11011705547571182, - 0.13010051846504211, - -0.03663085773587227, - 0.031186329200863838, - 0.008879574947059155, - 0.07947991788387299, - 0.0680614709854126, - 0.020778140053153038, - 0.02273562178015709, - -0.0005222858744673431, - 0.002409461885690689, - -0.06968048214912415, - -0.043244630098342896, - -0.006703294813632965, - 0.025375161319971085, - 0.028511039912700653, - 0.05909962207078934, - 0.052408598363399506, - -0.05707280710339546, - 0.07115450501441956, - 0.07252462208271027, - -0.03190404921770096, - 0.047037675976753235, - 0.014114072546362877, - -0.0008033867925405502, - 0.05534384399652481, - -0.13608433306217194, - -0.08927701413631439, - 0.021495027467608452, - -0.008207659237086773, - 0.0085078040137887, - 0.02958180382847786, - 0.036678846925497055, - -0.009311249479651451, - 0.12113740295171738, - 0.05633220821619034, - -0.038567107170820236, - 0.04020875319838524, - -0.05341002345085144, - 0.1243322342634201, - 0.09695638716220856, - -0.022481311112642288, - 0.051924265921115875, - -0.07940144836902618, - 0.041989393532276154, - 0.024286450818181038, - -0.10995928943157196, - -0.06781532615423203, - 0.026161516085267067, - -0.007904996164143085, - -0.012699516490101814, - 0.1411893218755722, - -0.0014471127651631832, - 0.07202480733394623, - 0.1189289391040802, - -0.09899033606052399, - -0.03218572214245796, - 0.0066069141030311584, - 0.054606273770332336, - -0.0759187713265419, - 0.04832048714160919, - 0.028710562735795975, - 0.0003779493272304535, - 0.022543838247656822, - 0.08694420754909515, - 0.01130138523876667, - 0.005096713081002235, - 0.0017715028952807188, - -0.018005847930908203, - 0.03301377221941948, - -0.004401381127536297, - -0.03748319670557976, - 0.043648861348629, - 0.04363642632961273, - 0.07328172028064728, - -0.017843572422862053, - -0.02216685563325882, - -0.12259674072265625, - 0.021692872047424316, - 0.008032059296965599, - 0.08469515293836594, - -0.03329864889383316, - 0.0017294064164161682, - -0.05610518157482147, - -0.06764674931764603, - 0.02713514119386673, - 0.0034611541777849197, - 0.04947759211063385, - -0.01971656084060669, - 0.013315335847437382, - 0.10871091485023499, - 0.03157930076122284, - 0.03563417121767998, - -0.02640039473772049, - -0.0332062803208828, - -0.021624762564897537, - 0.057052142918109894, - -0.07201257348060608, - -0.07685928046703339, - -0.028159311041235924, - 0.01147978100925684, - -0.033475611358881, - 0.07518038153648376, - 0.057338301092386246, - 0.027355404570698738, - 0.0265045128762722, - -0.03906038776040077, - -0.02538939006626606, - -0.07170476019382477, - -0.06387759745121002, - -0.004573984537273645, - -0.002391337649896741, - -0.05780286341905594, - 0.07712560892105103, - 0.03469777852296829, - 0.08039484918117523, - -0.053021810948848724, - -0.052227720618247986, - -0.09603653848171234, - 0.037728890776634216, - 0.02811294049024582, - -0.045195624232292175, - 0.02005293034017086, - 0.04451301693916321, - -0.030211258679628372, - 0.04744444414973259, - 0.09658835828304291, - 0.05439599230885506, - -0.013864046894013882, - 0.009558364748954773, - -0.08252006024122238, - 0.14363832771778107, - 0.11120176315307617, - -0.05009642243385315, - -0.09617748111486435, - -0.0201492290943861, - -0.095227912068367, - 0.006009896285831928, - -0.02647731453180313, - -0.0001439920160919428, - 0.0760733112692833, - 0.01558336429297924, - -0.09346333146095276, - -0.09026537835597992, - 0.06560471653938293, - -0.07884369790554047, - 0.00162464939057827, - -0.0754927396774292, - 0.02557339332997799, - 0.09053429216146469, - 0.007992707192897797, - -0.021941013634204865, - -0.04882774129509926, - 0.04420505836606026, - -0.01772095449268818, - 0.032647646963596344, - 0.06194338947534561, - 0.05249716341495514, - -0.09589116275310516, - -0.013015180826187134, - -0.02547292411327362, - 0.024815011769533157, - -0.014813199639320374, - 0.11465806514024734, - 0.02971246838569641, - -0.027110066264867783, - -0.05960920825600624, - 0.04442355036735535, - -0.028591053560376167, - 0.07079499959945679, - 0.02038370445370674, - 0.06699541211128235, - 0.058832522481679916, - -0.07945895195007324, - 0.10569782555103302, - 0.03929407522082329, - -0.06036685034632683, - -0.08901453763246536, - -0.08659602701663971, - -0.04641169309616089, - 0.031386587768793106, - 0.03945339098572731, - -0.07684697955846786, - -0.00206894613802433, - 0.025160953402519226, - -0.01587875746190548, - 0.02038617432117462, - 0.11597073823213577, - 0.05066359043121338, - -0.10850891470909119 - ] - }, - "p245_130.wav": { - "name": "p245", - "embedding": [ - 0.0483817420899868, - 0.07082764804363251, - -0.018744714558124542, - 0.039659298956394196, - -0.06096640229225159, - 0.004679184406995773, - -0.12546823918819427, - 0.14823207259178162, - 0.015305161476135254, - 0.10067307949066162, - -0.04685888811945915, - 0.15098433196544647, - -0.0017455627676099539, - -0.15939916670322418, - 0.024027159437537193, - 0.03704172372817993, - 0.009130998514592648, - -0.02013785019516945, - 0.013401441276073456, - -0.03525494039058685, - 0.055074721574783325, - 0.04819576069712639, - 0.05984567850828171, - -0.023445401340723038, - 0.027696605771780014, - 0.07229888439178467, - 0.004518445115536451, - 0.03639143705368042, - -0.0005885710706934333, - -0.06751259416341782, - -0.03823664039373398, - 0.05809609219431877, - -0.05971789360046387, - -0.0018191959243267775, - 0.035165827721357346, - -0.04505794495344162, - -0.034337569028139114, - -0.04791431874036789, - -0.022435128688812256, - 0.0128852017223835, - -0.038900792598724365, - 0.07302288711071014, - 0.02277919463813305, - -0.06429733335971832, - 0.04632265865802765, - 0.02333163097500801, - -0.0068079340271651745, - -0.010877195745706558, - -0.12315338850021362, - 0.13772797584533691, - 0.056093987077474594, - 0.02339167706668377, - -0.07882283627986908, - -0.05833493918180466, - 0.07601308822631836, - 0.0037426683120429516, - -0.06516733765602112, - -0.0029292176477611065, - 0.04751995950937271, - 0.10647952556610107, - -0.02084764465689659, - -0.045451950281858444, - 0.06714346259832382, - 0.07580310106277466, - 0.0760878473520279, - 0.04512735456228256, - 0.10616996139287949, - 0.11047235131263733, - -0.05297979712486267, - 0.006176195573061705, - 0.011929850094020367, - 0.10621093213558197, - 0.044848229736089706, - 0.0064920722506940365, - 0.004785965662449598, - 0.017359241843223572, - -0.017422406002879143, - -0.03614243492484093, - -0.022749029099941254, - -0.03305765613913536, - -0.0007780059240758419, - 0.006115839816629887, - 0.03840500861406326, - 0.046187907457351685, - -0.038807954639196396, - 0.06955067813396454, - 0.07115959376096725, - -0.0002790192957036197, - 0.054900094866752625, - -0.011141876690089703, - 0.008288074284791946, - 0.07651889324188232, - -0.1249968409538269, - -0.06300756335258484, - 0.038186654448509216, - -0.0006003642920404673, - 0.04554593563079834, - 0.10180588811635971, - 0.060806434601545334, - -0.021724587306380272, - 0.12779487669467926, - 0.06763186305761337, - -0.022588923573493958, - 0.00411205692216754, - -0.05090319737792015, - 0.1054033562541008, - 0.11008894443511963, - -0.03677869960665703, - 0.0696030706167221, - -0.07315269112586975, - 0.06190277636051178, - 0.026881014928221703, - -0.11970995366573334, - -0.06826762855052948, - 0.016256017610430717, - 0.019804831594228745, - 0.002884648507460952, - 0.14632290601730347, - 0.005431973375380039, - 0.08432426303625107, - 0.10937955230474472, - -0.1110774576663971, - -0.06225376948714256, - -0.0221081729978323, - 0.06104288622736931, - -0.07780227065086365, - 0.08430743217468262, - 0.060042139142751694, - -0.0233868770301342, - 0.016126718372106552, - 0.043488308787345886, - -0.01603449508547783, - 0.029745182022452354, - 0.006045798771083355, - -0.032596390694379807, - 0.006203831639140844, - -0.028141643851995468, - -0.019225429743528366, - 0.029528316110372543, - 0.019331365823745728, - 0.041358958929777145, - -0.014365693554282188, - -0.00958995334804058, - -0.1453835368156433, - 0.033181048929691315, - 0.03359852731227875, - 0.06236536428332329, - -0.030696779489517212, - -0.06875710934400558, - -0.04039425402879715, - -0.06977571547031403, - -0.005077578127384186, - 0.004829036071896553, - 0.02970641665160656, - -0.031681668013334274, - 0.030496647581458092, - 0.06999583542346954, - 0.052733615040779114, - -0.00029541010735556483, - -0.012492012232542038, - -0.07217376679182053, - 0.000859053514432162, - 0.04456605762243271, - -0.06580594182014465, - -0.09546233713626862, - -0.058730967342853546, - 0.022496569901704788, - -0.03035735711455345, - 0.06908684223890305, - 0.049859922379255295, - 0.026896487921476364, - 0.010915283113718033, - -0.05993424355983734, - -8.503844583174214e-05, - -0.08358120173215866, - -0.09428979456424713, - -0.018427304923534393, - 0.018659524619579315, - -0.02153618261218071, - 0.07418867945671082, - 0.03727605938911438, - 0.10246787965297699, - -0.03685007244348526, - -0.009295267052948475, - -0.08450650423765182, - 0.011907926760613918, - 0.03609730303287506, - -0.012805852107703686, - 0.048492640256881714, - 0.06477619707584381, - -0.03512146696448326, - 0.0536235086619854, - 0.05676162242889404, - 0.05978219956159592, - -0.014764445833861828, - 0.01151392050087452, - -0.06268353760242462, - 0.10880293697118759, - 0.12007027864456177, - -0.054786890745162964, - -0.07946425676345825, - -0.054703157395124435, - -0.10350140184164047, - 0.031033804640173912, - -0.005409087985754013, - 0.013613267801702023, - 0.0285273939371109, - 0.017124783247709274, - -0.09336404502391815, - -0.08844578266143799, - 0.05829755589365959, - -0.036124564707279205, - 0.005765251349657774, - -0.09375389665365219, - 0.0365976057946682, - 0.11474370211362839, - 0.02573411725461483, - -0.02051503211259842, - -0.051311880350112915, - 0.03134428337216377, - 0.016199007630348206, - 0.028238758444786072, - 0.07190842926502228, - 0.07987867295742035, - -0.09940101206302643, - -0.013664326630532742, - -0.05342360958456993, - 0.03217547386884689, - -0.045086801052093506, - 0.11238980293273926, - 0.03454163670539856, - -0.04369392246007919, - -0.09124766290187836, - 0.0571213960647583, - 0.016971921548247337, - 0.05072672665119171, - 0.009725001640617847, - 0.047851428389549255, - 0.03121873550117016, - -0.107744500041008, - 0.0983891412615776, - 0.04270121455192566, - -0.049248456954956055, - -0.07582562416791916, - -0.05434579402208328, - -0.02231798693537712, - 0.04242752492427826, - 0.018614668399095535, - -0.06351149082183838, - -0.03136802464723587, - 0.022570988163352013, - 0.019011355936527252, - 0.03019523248076439, - 0.14833936095237732, - 0.02832471951842308, - -0.1262088119983673 - ] - }, - "p245_327.wav": { - "name": "p245", - "embedding": [ - 0.013196651823818684, - 0.11890305578708649, - -0.004542496986687183, - 0.049333371222019196, - -0.05395256727933884, - 0.0022604726254940033, - -0.05548735707998276, - 0.0603465661406517, - -0.014438347890973091, - 0.08676643669605255, - -0.052193012088537216, - 0.09676573425531387, - -0.05464395508170128, - -0.08851510286331177, - -0.03548905625939369, - -0.008346905000507832, - 0.0050183795392513275, - 0.048899952322244644, - -0.007851855829358101, - -0.02263437584042549, - -0.029554076492786407, - -0.00037205033004283905, - -0.03293415904045105, - 0.005970536265522242, - -0.025503309443593025, - 0.0040174443274736404, - -0.029574351385235786, - 0.03110436350107193, - -0.002543959766626358, - -0.059578247368335724, - -0.0057619791477918625, - 0.03986481577157974, - -0.015394826419651508, - 0.006114695221185684, - 0.02552868239581585, - 0.001054611406289041, - 0.019006647169589996, - -0.016406074166297913, - -0.03704599663615227, - -0.028000200167298317, - -0.040925282984972, - 0.0011538434773683548, - 0.026364922523498535, - -0.056655582040548325, - 0.016938969492912292, - 0.03360353037714958, - -0.016993260011076927, - -0.016701243817806244, - -0.020338548347353935, - 0.09648387879133224, - 0.007653282955288887, - 0.06300763785839081, - -0.03990523889660835, - -0.05223686620593071, - 0.1198267787694931, - 0.010891223326325417, - -0.0231698676943779, - -0.014122292399406433, - -0.0020603127777576447, - 0.08130665123462677, - 0.027541426941752434, - 0.02126936987042427, - 0.02333941124379635, - 0.06686248630285263, - -0.008235132321715355, - 0.04003538936376572, - 0.055872298777103424, - 0.04654872789978981, - -0.020082751289010048, - 0.04276534169912338, - 0.041740477085113525, - 0.029323045164346695, - 0.014010610990226269, - 0.020290682092308998, - -0.026327984407544136, - 0.023227673023939133, - 0.004990508779883385, - 0.06915926933288574, - -0.04206033796072006, - -0.018709737807512283, - -0.02613747864961624, - 0.022307364270091057, - 0.00408798037096858, - -0.06944576650857925, - -0.04495447501540184, - -0.023478373885154724, - 0.03557122126221657, - 0.02305559627711773, - 0.021976882591843605, - 0.0325840562582016, - 0.04724317416548729, - -0.0015440434217453003, - -0.02642081491649151, - -0.06250319629907608, - 0.015172623097896576, - -0.02207833342254162, - 0.03864607959985733, - 0.0144144706428051, - 0.0005683731287717819, - 0.010063673369586468, - 0.040375966578722, - 0.006904032081365585, - 0.04348159208893776, - -0.008989842608571053, - -0.05335412546992302, - -0.011677954345941544, - 0.03380510210990906, - 0.01941431313753128, - 0.039031945168972015, - 0.02557201497256756, - 0.05923229828476906, - 0.09882311522960663, - -0.06384085863828659, - -0.04046373441815376, - 0.011066386476159096, - 0.04982154443860054, - -0.022073134779930115, - 0.05861622840166092, - -0.017771786078810692, - 0.019810007885098457, - 0.041077595204114914, - 0.013836231082677841, - -0.03430665656924248, - -0.026773793622851372, - -0.006333686411380768, - -0.01762358285486698, - 0.04304005578160286, - 0.020030632615089417, - -0.021824978291988373, - -0.05765622854232788, - 0.06692032516002655, - -0.014795970171689987, - -0.024689458310604095, - 0.02167966216802597, - -0.0006019920110702515, - -0.04315555468201637, - 0.05104271322488785, - -0.0393759086728096, - 0.02606905624270439, - 0.0695122629404068, - -0.025692598894238472, - 0.0008956068195402622, - 0.0042330604046583176, - -0.02331354282796383, - 0.03711045905947685, - 0.021936826407909393, - -0.024474799633026123, - 0.08449864387512207, - -0.05076161399483681, - -0.048262130469083786, - -0.031435199081897736, - 0.0399453341960907, - -0.03153136372566223, - 0.0893363282084465, - 0.058858778327703476, - 0.0398516021668911, - 0.0380668006837368, - -0.01898638904094696, - -0.005924876779317856, - -0.007116112858057022, - -0.10884974151849747, - 0.009590805508196354, - 0.0033424077555537224, - 0.0107746422290802, - -0.01896841824054718, - 0.015878286212682724, - -0.006613150238990784, - -0.01575806364417076, - 0.0012081637978553772, - 0.0272452961653471, - -0.004351332318037748, - 0.06987175345420837, - -0.10034775733947754, - -0.01674550212919712, - -0.06565854698419571, - -0.037267934530973434, - 0.023031752556562424, - -0.041140004992485046, - 0.008332076482474804, - 0.02062748372554779, - 0.04425511136651039, - -0.038273658603429794, - -0.009828265756368637, - -0.06143855303525925, - -0.00410238653421402, - 0.016067249700427055, - 0.018080443143844604, - 0.02678677812218666, - -0.007922947406768799, - 0.017894580960273743, - 0.035755135118961334, - 0.03582911938428879, - 0.022619053721427917, - 0.059399135410785675, - -0.021487753838300705, - 0.007093596272170544, - 0.02828720584511757, - 0.07983069121837616, - 0.018252849578857422, - -0.08761118352413177, - -0.11072571575641632, - -0.011294991709291935, - -0.04015304520726204, - 0.044461559504270554, - -0.010170679539442062, - 0.03207830339670181, - 0.001340415794402361, - 0.014513084664940834, - 0.04576552286744118, - -0.12580646574497223, - 0.04471628740429878, - -0.0003653205931186676, - -0.05186966434121132, - 0.013936681672930717, - 0.010181711986660957, - 0.02096298709511757, - 0.015369715169072151, - -0.02131561003625393, - -0.009356766939163208, - 0.023700354620814323, - -0.006348747760057449, - -0.015089953318238258, - 0.037345971912145615, - 0.010826123878359795, - 0.015073135495185852, - 0.020365171134471893, - -0.04196001961827278, - 0.029436469078063965, - -0.006438283249735832, - 0.04570543020963669, - -0.009088899940252304, - -0.03538886830210686, - -0.07537313550710678, - 0.07549562305212021, - -0.04007522761821747, - 0.04426063224673271, - -0.01176130399107933, - 0.02230175957083702, - 0.002984285354614258, - -0.022502023726701736, - 0.11341774463653564, - 0.021770846098661423, - -0.02735484205186367, - -0.020341908559203148, - -0.020718947052955627, - -0.04231278598308563, - 0.044872500002384186, - 0.046704672276973724, - -0.027051502838730812, - -0.011136801913380623, - 0.04829796031117439, - 0.03519148379564285, - 0.0918767973780632, - 0.06966596841812134, - 0.05598558858036995, - 0.03039107844233513 - ] - }, - "p245_118.wav": { - "name": "p245", - "embedding": [ - 0.08021856844425201, - 0.10969100892543793, - 0.03342356160283089, - 0.009949089959263802, - 0.057601261883974075, - 0.04524441435933113, - -0.1211153045296669, - 0.059965021908283234, - -0.020339827984571457, - 0.14657330513000488, - -0.11284252256155014, - 0.06286406517028809, - -0.020700976252555847, - -0.11063581705093384, - -0.030577220022678375, - 0.0448831170797348, - -0.009756211191415787, - 0.04334409534931183, - -0.02051616460084915, - 0.033768441528081894, - 0.00885817687958479, - 0.015843801200389862, - 0.05865012854337692, - -0.07426120340824127, - 0.08317530900239944, - 0.022432656958699226, - 0.05704435333609581, - 0.08689700067043304, - 0.03175964951515198, - -0.018328966572880745, - 0.029209870845079422, - 0.11342711746692657, - -0.02476494200527668, - 0.01682024449110031, - 0.032519806176424026, - 0.04995492845773697, - -0.0070250630378723145, - -0.07192917168140411, - 0.03270074352622032, - -0.005756274797022343, - 0.010225449688732624, - 0.05691733583807945, - 0.04085694998502731, - -0.029640285298228264, - -0.005855883471667767, - 0.05865361541509628, - 0.021647760644555092, - -0.04638085886836052, - -0.11118754744529724, - 0.12052658200263977, - 0.008098968304693699, - 0.023148424923419952, - -0.08550912141799927, - -0.07185272872447968, - 0.0470857210457325, - 0.029950033873319626, - -0.02184305340051651, - -0.021323945373296738, - 0.08827625215053558, - 0.1475561559200287, - -0.013476436957716942, - -0.051205698400735855, - 0.011677843518555164, - 0.08581048250198364, - 0.024764016270637512, - 0.09175382554531097, - 0.06725993007421494, - 0.06867270171642303, - 0.042651742696762085, - 0.0678689032793045, - 0.014246590435504913, - 0.03924500569701195, - -0.004332654178142548, - -0.014721066690981388, - -0.014425585977733135, - -0.023758664727211, - -0.046216245740652084, - 0.018436932936310768, - 0.008266807533800602, - -0.07028249651193619, - 0.0003694252809509635, - -0.05090713873505592, - 0.011282239109277725, - 0.027101241052150726, - -0.014320816844701767, - 0.0067093707621097565, - 0.03240598738193512, - -0.04147815704345703, - 0.0968562513589859, - 0.006448704749345779, - 0.01083011832088232, - -0.0035309400409460068, - -0.04104558378458023, - -0.12041911482810974, - -0.005356861278414726, - -0.00500280037522316, - 0.004404408857226372, - 0.027927152812480927, - 0.04572881758213043, - -0.018008248880505562, - 0.09197898209095001, - 0.008144675754010677, - 0.018935229629278183, - -0.010596564039587975, - -0.035210855305194855, - 0.09775760769844055, - 0.08336663246154785, - -0.004042668268084526, - 0.021012291312217712, - -0.042535874992609024, - -0.016166996210813522, - 0.11024556308984756, - -0.13234774768352509, - -0.0879531130194664, - 0.018417388200759888, - -0.011912384070456028, - -0.0057600741274654865, - 0.0507965162396431, - 0.007791630923748016, - -0.03545762598514557, - 0.06614147126674652, - -0.08127156645059586, - -0.07742097973823547, - -0.030510179698467255, - 0.05978544056415558, - -0.05713605880737305, - 0.00915742851793766, - 0.06365719437599182, - -0.02868960052728653, - -0.06758248060941696, - 0.05223947763442993, - -0.0006843593437224627, - 0.011516544967889786, - -0.021365884691476822, - -0.010801957920193672, - 0.07555743306875229, - -0.07588811218738556, - 0.03540682792663574, - 0.004379707388579845, - 0.025115743279457092, - 0.03285476192831993, - 0.022581836208701134, - -0.058954305946826935, - -0.060113325715065, - -0.007974544540047646, - 0.07487452775239944, - 0.0357213169336319, - -0.038779035210609436, - -0.07104304432868958, - -0.031658660620450974, - -0.02254287339746952, - 0.0645938515663147, - 0.011461847461760044, - 0.06996951997280121, - 0.06303934007883072, - 0.0007822467014193535, - 0.1435275375843048, - -0.0425516739487648, - 0.033266160637140274, - -0.05716407299041748, - 0.012439013458788395, - 0.06893227994441986, - 0.0005773305892944336, - -0.07196105271577835, - -0.058866627514362335, - 0.01889757066965103, - -0.016617491841316223, - -0.014492619782686234, - 0.005629643797874451, - 0.006959831342101097, - 0.015503142029047012, - 0.020521223545074463, - 0.002555912360548973, - -0.036060627549886703, - -0.06164941564202309, - -0.025468356907367706, - -0.020932916551828384, - -0.009335173293948174, - -0.00503320898860693, - 0.06612639874219894, - 0.03306607902050018, - 0.026818640530109406, - 0.005393319763243198, - -0.03500642254948616, - -0.044147342443466187, - 0.06242217868566513, - 0.10573065280914307, - -0.002897303318604827, - 0.018014175817370415, - 0.01841695047914982, - -0.009610586799681187, - 0.014421416446566582, - 0.05665088817477226, - 0.04340434819459915, - -0.006976466625928879, - -0.07730883359909058, - -0.07915009558200836, - 0.09371644258499146, - 0.08577200770378113, - -0.10061462968587875, - -0.06727772951126099, - -0.03836091235280037, - -0.055724043399095535, - 0.03469405323266983, - -0.03803228586912155, - -0.003129224292933941, - 0.011618871241807938, - -0.07181718200445175, - -0.0581618957221508, - -0.1111060157418251, - 0.04286568611860275, - -0.030137211084365845, - -0.03444654121994972, - -0.06273093819618225, - 0.04339297115802765, - 0.019260574132204056, - 0.05937652289867401, - 0.02199064940214157, - 0.01679362542927265, - 0.01639135368168354, - -0.10649415850639343, - -0.051960788667201996, - 0.027338160201907158, - -0.030154366046190262, - -0.06931205093860626, - 0.024207327514886856, - -0.04473692923784256, - 0.09450338035821915, - -0.06879223883152008, - 0.10711175948381424, - -0.007084609009325504, - -0.05299802124500275, - -0.09194636344909668, - -0.00240876991301775, - -0.052422549575567245, - 0.040736839175224304, - 0.03356121852993965, - -0.02506815455853939, - 0.02232864871621132, - -0.07647602260112762, - 0.08005044609308243, - 0.004780407063663006, - 0.04597420245409012, - -0.08066266030073166, - -0.05446663498878479, - -0.053460489958524704, - 0.03453965485095978, - -0.028911877423524857, - -0.025795945897698402, - 0.0029121432453393936, - 0.03358977660536766, - -0.004812704399228096, - 0.03617364540696144, - 0.0719185322523117, - 0.02065223827958107, - -0.05530675873160362 - ] - }, - "p245_400.wav": { - "name": "p245", - "embedding": [ - 0.05053942650556564, - 0.09646899998188019, - -0.027374617755413055, - 0.024246055632829666, - -0.05257076025009155, - 0.09351804107427597, - -0.11137928813695908, - 0.12616947293281555, - -0.04456082731485367, - 0.15492606163024902, - -0.051945388317108154, - 0.11233455687761307, - -0.018775006756186485, - -0.1520809829235077, - -0.04695861041545868, - 0.018748905509710312, - -0.07124253362417221, - -0.023805759847164154, - -0.10862024128437042, - -0.02287735417485237, - 0.030787251889705658, - 0.03205721080303192, - 0.025626754388213158, - -0.021082360297441483, - 0.031791239976882935, - 0.06859797239303589, - 0.00863736867904663, - 0.05237775295972824, - 0.02464832365512848, - -0.09288458526134491, - -0.03058764711022377, - 0.09527076780796051, - -0.06832201778888702, - 0.02968393638730049, - 0.050669021904468536, - -0.02569620870053768, - 0.014991317875683308, - -0.040170539170503616, - -0.009432490915060043, - 0.040505848824977875, - -0.022939687594771385, - 0.09011654555797577, - -0.0009731203899718821, - 0.035227663815021515, - 0.034676164388656616, - 0.024047493934631348, - -0.014489714056253433, - -0.07286138832569122, - -0.07280115783214569, - 0.18246901035308838, - 0.08122102916240692, - -0.023695914074778557, - -0.056694891303777695, - -0.08033302426338196, - 0.0821426510810852, - -0.029088255017995834, - -0.1365344226360321, - -0.06719265133142471, - 0.05663881450891495, - 0.1370963752269745, - -0.04770912975072861, - -0.028637737035751343, - 0.0112940464168787, - 0.12040476500988007, - 0.08527788519859314, - 0.0839025229215622, - 0.09662358462810516, - 0.10660937428474426, - -0.016998691484332085, - 0.024155355989933014, - 0.06180451065301895, - 0.04467274248600006, - 0.08433789014816284, - 0.018324395641684532, - 0.0502580925822258, - -0.013541549444198608, - 0.015926234424114227, - -0.02741243503987789, - -0.017203042283654213, - 0.009793896228075027, - 0.009469199925661087, - 0.036539480090141296, - -0.003526360262185335, - 0.04668328911066055, - -0.030008362606167793, - 0.06147938221693039, - 0.00850432738661766, - -0.026476800441741943, - 0.0516519770026207, - 0.03651402145624161, - 0.03542536869645119, - 0.06543764472007751, - -0.07363831996917725, - -0.0862838476896286, - 0.04344604164361954, - 0.01410445012152195, - 0.0037103150971233845, - 0.036826543509960175, - 0.03100178763270378, - -0.007787529844790697, - 0.10383725166320801, - 0.0494295209646225, - -0.042055025696754456, - 0.02392265386879444, - -0.08150888979434967, - 0.14098212122917175, - 0.07739824056625366, - -0.030676715075969696, - 0.03343028202652931, - -0.03434886783361435, - 0.0699676126241684, - 0.03870538994669914, - -0.13470511138439178, - -0.10837861895561218, - 0.04302896559238434, - -0.00874422024935484, - -0.029670823365449905, - 0.07562843710184097, - -0.002656846772879362, - 0.03161662817001343, - 0.10219651460647583, - -0.066884845495224, - -0.01801367662847042, - -0.012202414683997631, - 0.05396562069654465, - -0.07898958027362823, - 0.015454623848199844, - 0.04010533541440964, - -0.001971959136426449, - -0.00276409974321723, - 0.13414739072322845, - 0.005273330956697464, - -0.012891230173408985, - 0.01833406835794449, - -0.022578798234462738, - 0.041748158633708954, - -0.0066428473219275475, - -0.01478208415210247, - 0.03524940460920334, - 0.03562815487384796, - 0.055995918810367584, - -0.03283051773905754, - -0.0418962687253952, - -0.10740187764167786, - 0.033719323575496674, - 0.02134593203663826, - 0.05213851481676102, - -0.038598574697971344, - 0.021210819482803345, - -0.03093128278851509, - -0.06231634318828583, - 0.02418169006705284, - -0.009159738197922707, - 0.0772741436958313, - -0.03150858357548714, - -0.007958821952342987, - 0.13126052916049957, - 0.0033897990360856056, - 0.007149349432438612, - -0.03360576927661896, - -0.018871353939175606, - 0.013747945427894592, - 0.060412608087062836, - -0.06583832949399948, - -0.06400668621063232, - 0.006678346544504166, - 0.022931678220629692, - 0.0033535792026668787, - 0.0803307294845581, - 0.051240451633930206, - -0.009944802150130272, - 0.031103044748306274, - -0.036846745759248734, - -0.016207732260227203, - -0.07806430757045746, - -0.0458969846367836, - -0.023766152560710907, - -0.044228918850421906, - -0.041395753622055054, - 0.08404529094696045, - 0.012381714768707752, - 0.05741448700428009, - -0.02016575261950493, - -0.09285682439804077, - -0.06741909682750702, - 0.07487379759550095, - 0.07823365926742554, - -0.01932818815112114, - 0.029713913798332214, - 0.07107331603765488, - -0.005012538284063339, - 0.04666861146688461, - 0.08552233874797821, - 0.09391190111637115, - -0.023120302706956863, - 0.027389535680413246, - -0.091127410531044, - 0.09053464233875275, - 0.0428406186401844, - -0.09005285799503326, - -0.073916494846344, - -0.007085512392222881, - -0.057615190744400024, - 0.016361400485038757, - -0.0413484200835228, - 0.029719578102231026, - 0.07708516716957092, - 0.0002740445779636502, - -0.07349929213523865, - -0.10459575057029724, - 0.11195839941501617, - -0.09053973108530045, - -0.009640864096581936, - -0.0689467042684555, - 0.03942933678627014, - 0.08978866785764694, - 0.06725664436817169, - -0.018309906125068665, - -0.00024114875122904778, - 0.05321994796395302, - -0.016517654061317444, - 0.00033383630216121674, - 0.04865456372499466, - 0.015678534284234047, - -0.11634225398302078, - 0.006422641221433878, - -0.07633957266807556, - 0.051836688071489334, - -0.05980987101793289, - 0.1252908706665039, - 0.0033604034688323736, - -0.04055309295654297, - -0.08084645867347717, - 0.0545833483338356, - -0.049858130514621735, - 0.06814046204090118, - 0.013050705194473267, - 0.0619654543697834, - 0.05434957146644592, - -0.054302092641592026, - 0.12178653478622437, - 0.044727351516485214, - -0.04462964087724686, - -0.08999882638454437, - -0.06695359945297241, - -0.03502817451953888, - 0.043355923146009445, - 0.03577809035778046, - -0.08695538341999054, - 0.008675831370055676, - 0.023106645792722702, - -0.04838944226503372, - 0.05734530836343765, - 0.13678139448165894, - 0.08542408049106598, - -0.12853728234767914 - ] - }, - "p245_076.wav": { - "name": "p245", - "embedding": [ - 0.04037095233798027, - 0.13764843344688416, - 0.007012718357145786, - 0.02261301875114441, - -0.032263197004795074, - 0.07159577310085297, - -0.08193717896938324, - 0.11613215506076813, - -0.06130309775471687, - 0.13961389660835266, - -0.11655938625335693, - 0.10490601509809494, - -0.06449037790298462, - -0.13848866522312164, - -0.037140801548957825, - 0.05259323492646217, - -0.0348464697599411, - 0.03234892711043358, - -0.02132207714021206, - 0.0030829589813947678, - 0.030819809064269066, - 0.017189502716064453, - 0.06872552633285522, - -0.02526131644845009, - 0.04082213714718819, - 0.05645167455077171, - 0.02694776840507984, - 0.07625964283943176, - 0.04195638373494148, - -0.0509735643863678, - -0.04752815514802933, - 0.1251574158668518, - -0.032261840999126434, - 0.033561546355485916, - 0.0576615184545517, - 0.016482248902320862, - -0.0012533895205706358, - -0.05587492138147354, - -0.0011165686883032322, - -0.021076317876577377, - -0.0334252268075943, - 0.040446631610393524, - 0.0008315485902130604, - -0.02376745082437992, - 0.027616413310170174, - 0.024395866319537163, - -0.020841583609580994, - -0.025382153689861298, - -0.08509089052677155, - 0.1477886587381363, - 0.05559735745191574, - -0.0015781987458467484, - -0.07457108795642853, - -0.09058764576911926, - 0.10822287201881409, - 0.005029873922467232, - -0.11035969853401184, - -0.012881547212600708, - 0.08433149755001068, - 0.16410008072853088, - -0.009644023142755032, - -0.027379069477319717, - 0.0023826458491384983, - 0.10790708661079407, - -6.020348519086838e-05, - 0.112828828394413, - 0.0586782842874527, - 0.07315827906131744, - 0.031227514147758484, - 0.07111864537000656, - 0.037119604647159576, - 0.06497267633676529, - 0.017160294577479362, - -0.024218998849391937, - 0.004126985557377338, - -0.026237523183226585, - -0.0459447056055069, - 0.052518054842948914, - -0.015375608578324318, - -0.04730473831295967, - -0.0329255647957325, - -0.017924068495631218, - -0.008379505947232246, - -0.03960617259144783, - -0.00845858734101057, - 0.04162054508924484, - -0.009148597717285156, - -0.00582651374861598, - 0.08696100115776062, - 0.02784571796655655, - -0.023738257586956024, - 0.0439765527844429, - -0.037809647619724274, - -0.09898503124713898, - -0.01753910258412361, - 0.00706604216247797, - 0.019492272287607193, - 0.08926250040531158, - 0.03702676296234131, - -0.021501606330275536, - 0.10189008712768555, - 0.05460657551884651, - 0.03087984025478363, - 0.025580208748579025, - -0.09864602237939835, - 0.10859756916761398, - 0.08049934357404709, - -0.01699146255850792, - 0.04073077812790871, - -0.0175881776958704, - 0.08812698721885681, - 0.10243579745292664, - -0.14123377203941345, - -0.06874243170022964, - -0.01940654031932354, - -0.008445695042610168, - 0.0031498530879616737, - 0.05005911365151405, - -0.020407598465681076, - -0.014747008681297302, - 0.10300946235656738, - -0.09670090675354004, - -0.08348426222801208, - -0.04263151437044144, - 0.044025786221027374, - -0.057726748287677765, - 0.037608884274959564, - 0.041304659098386765, - -0.015584757551550865, - -0.018973151221871376, - 0.06120190769433975, - -0.013975674286484718, - 0.021961238235235214, - 0.060964688658714294, - -0.07643675804138184, - 0.0016423962078988552, - -0.07740730047225952, - 0.020345179364085197, - 0.056520938873291016, - 0.06204928457736969, - 0.05876106768846512, - 0.012037435546517372, - -0.029501445591449738, - -0.05763449892401695, - -0.013333426788449287, - 0.08377092331647873, - 0.025010403245687485, - -0.012123534455895424, - -0.04990389943122864, - -0.021398276090621948, - -0.051785264164209366, - 0.04337175190448761, - 0.0074604470282793045, - 0.0799565464258194, - -0.010167635045945644, - -0.005495373625308275, - 0.11491915583610535, - 0.009996838867664337, - -0.02934999018907547, - -0.09868563711643219, - -0.03302093967795372, - 0.03735147789120674, - 0.014893303625285625, - -0.09818150848150253, - -0.08328143507242203, - 0.014430168084800243, - -0.006564276292920113, - -0.027671217918395996, - 0.02406672202050686, - 0.03553932532668114, - 0.009732716716825962, - 0.041021060198545456, - -0.031582195311784744, - -0.0006226208060979843, - -0.09954287856817245, - -0.060952745378017426, - -0.023160364478826523, - -0.0334116593003273, - -0.007443828973919153, - 0.07629574835300446, - 0.010202744975686073, - 0.010963167995214462, - 0.03494274243712425, - -0.061509981751441956, - -0.05982247740030289, - 0.08414982259273529, - 0.0643981397151947, - 0.023676443845033646, - 0.07315056025981903, - 0.050914157181978226, - -0.06682533025741577, - 0.060128938406705856, - 0.05861974135041237, - 0.08930563181638718, - -0.027293624356389046, - -0.005892493762075901, - -0.0803760439157486, - 0.03835541754961014, - 0.09374020993709564, - -0.12522566318511963, - -0.1097838431596756, - -0.06733863055706024, - -0.050214678049087524, - 0.06219257414340973, - -0.02199053019285202, - -0.010140171274542809, - 0.01084477361291647, - -0.051775116473436356, - -0.07259685546159744, - -0.08979864418506622, - 0.10459926724433899, - -0.035193461924791336, - -0.04423952102661133, - -0.04723978042602539, - 0.05199592188000679, - 0.03887098655104637, - 0.03169165924191475, - -0.019173385575413704, - 0.04122205078601837, - 0.06062355637550354, - -0.093259796500206, - -0.03810175880789757, - 0.04094254598021507, - -0.000958690419793129, - -0.05110141262412071, - 0.036421142518520355, - -0.07109324634075165, - 0.08266282826662064, - -0.07566773146390915, - 0.17352139949798584, - -0.03900402411818504, - -0.07110479474067688, - -0.0783536285161972, - 0.05334654822945595, - -0.039068467915058136, - -0.0055625224485993385, - 0.04592191427946091, - 0.034208592027425766, - -0.010556260123848915, - -0.08727201819419861, - 0.1313057243824005, - -0.011344349943101406, - -0.009854376316070557, - -0.057933785021305084, - -0.05131971091032028, - -0.05881940945982933, - 0.00033874576911330223, - -0.024586688727140427, - -0.08287695050239563, - -0.005483762361109257, - -0.004566133953630924, - -0.0017496270593255758, - 0.057817209511995316, - 0.13085409998893738, - 0.06414993107318878, - -0.0817672535777092 - ] - }, - "p245_421.wav": { - "name": "p245", - "embedding": [ - 0.052359603345394135, - 0.08491339534521103, - -0.0052977679297327995, - 0.027988698333501816, - -0.054709941148757935, - 0.0558035783469677, - -0.13452669978141785, - 0.13362833857536316, - -0.03757494315505028, - 0.14037875831127167, - -0.06648547202348709, - 0.10888543725013733, - -0.029858548194169998, - -0.18481528759002686, - -0.024504847824573517, - 0.0695403665304184, - -0.043456271290779114, - -0.03300505131483078, - -0.03962382674217224, - -0.012660928070545197, - 0.02752881869673729, - 0.037373535335063934, - 0.04065645858645439, - 0.012203475460410118, - 0.021803414449095726, - 0.060740821063518524, - 0.002221314236521721, - 0.05864550918340683, - 0.018737390637397766, - -0.05807553976774216, - -0.02747165411710739, - 0.10151033103466034, - -0.042212747037410736, - 0.020324809476733208, - 0.053468845784664154, - -0.0034837238490581512, - -0.005158654879778624, - -0.06351504474878311, - -0.02001127414405346, - -0.00910661369562149, - -0.04769226163625717, - 0.08150672167539597, - 0.023300809785723686, - -0.005530927330255508, - 0.045759882777929306, - 0.015095775946974754, - -0.030782124027609825, - -0.053303610533475876, - -0.11417430639266968, - 0.14903146028518677, - 0.07275809347629547, - 0.0021658800542354584, - -0.06897446513175964, - -0.07877419888973236, - 0.09227396547794342, - -0.028562214225530624, - -0.1202654093503952, - -0.05955028161406517, - 0.07685442268848419, - 0.15787135064601898, - -0.02730032429099083, - -0.03053065948188305, - 0.019903123378753662, - 0.128347709774971, - 0.05918174609541893, - 0.09720789641141891, - 0.07236267626285553, - 0.10033013671636581, - -0.02036476880311966, - 0.02200353518128395, - 0.05133114755153656, - 0.061604928225278854, - 0.042029526084661484, - 0.011000072583556175, - 0.021969132125377655, - 0.00298164295963943, - -0.013397286646068096, - 0.009743070229887962, - -0.016798675060272217, - -0.0074360668659210205, - -0.024280427023768425, - 0.01408606581389904, - -0.002260783454403281, - 0.01663368195295334, - -0.013697940856218338, - 0.05663369223475456, - 0.021143531426787376, - -0.005746930837631226, - 0.0695028007030487, - 0.03222574293613434, - 0.00443997560068965, - 0.05952133238315582, - -0.06665770709514618, - -0.08225062489509583, - 0.009627111256122589, - 0.004235336557030678, - 0.022029904648661613, - 0.06457825005054474, - 0.0189584419131279, - -0.01946914941072464, - 0.11743514239788055, - 0.046374596655368805, - -0.00821107067167759, - 0.033387795090675354, - -0.09662780165672302, - 0.11897893249988556, - 0.06971326470375061, - -0.014988185837864876, - 0.051024388521909714, - -0.048399847000837326, - 0.06919652223587036, - 0.07528217881917953, - -0.13261821866035461, - -0.06689087301492691, - 0.025559432804584503, - 0.008176721632480621, - -0.021581675857305527, - 0.11641605943441391, - -0.00542498379945755, - 0.03229762613773346, - 0.10619594156742096, - -0.08651252090930939, - -0.05318313091993332, - -0.006541445851325989, - 0.04954063147306442, - -0.0865594670176506, - 0.045327093452215195, - 0.0434432327747345, - -0.01434248685836792, - 0.011201722547411919, - 0.0901261568069458, - -0.0059002055786550045, - 0.003480600891634822, - 0.02298714779317379, - -0.05986514315009117, - 0.02254810743033886, - -0.04001174867153168, - 0.0009383925935253501, - 0.05553753674030304, - 0.04159386828541756, - 0.0430096760392189, - -0.004365541972219944, - -0.034328117966651917, - -0.11798670142889023, - 0.005010065156966448, - 0.03674982488155365, - 0.07754839956760406, - -0.0124696409329772, - -0.015956806018948555, - -0.043485648930072784, - -0.06129337474703789, - 0.020878370851278305, - -0.009759507142007351, - 0.07530860602855682, - -0.024133212864398956, - 0.00018365922733210027, - 0.09656389057636261, - 0.01610649935901165, - 0.0009305290877819061, - -0.054944634437561035, - -0.035191625356674194, - 0.008118957281112671, - 0.057478539645671844, - -0.08140076696872711, - -0.05751657485961914, - 0.013857441954314709, - 0.04003417119383812, - -0.018604308366775513, - 0.0471780002117157, - 0.0489465668797493, - 0.018174225464463234, - 0.029334744438529015, - -0.06177128851413727, - 0.016143137589097023, - -0.09872758388519287, - -0.07609512656927109, - -0.0018860509153455496, - -0.007533456198871136, - -0.01084181945770979, - 0.07288126647472382, - 0.01838839054107666, - 0.05020969361066818, - -0.008386634290218353, - -0.08623592555522919, - -0.09076200425624847, - 0.06908263266086578, - 0.06968741118907928, - -0.0013668525498360395, - 0.05549834296107292, - 0.0528520867228508, - -0.05103222653269768, - 0.053178735077381134, - 0.04785279929637909, - 0.104213647544384, - -0.029271148145198822, - 0.02190653793513775, - -0.08060689270496368, - 0.06930804252624512, - 0.09676992893218994, - -0.09904275834560394, - -0.08024166524410248, - -0.020491164177656174, - -0.06414781510829926, - 0.04435170441865921, - -0.028730478137731552, - -0.003296114271506667, - 0.043042369186878204, - -0.014094225130975246, - -0.10101969540119171, - -0.09378762543201447, - 0.08977267146110535, - -0.06952670216560364, - -0.0030763084068894386, - -0.07000904530286789, - 0.03830642253160477, - 0.08000911772251129, - 0.04903144761919975, - -0.02160087786614895, - -0.011179282329976559, - 0.05266395956277847, - -0.045007988810539246, - -0.004609322175383568, - 0.05822475999593735, - 0.01822805032134056, - -0.09958585351705551, - 0.0022085928358137608, - -0.0774078443646431, - 0.05633009225130081, - -0.0453941784799099, - 0.15446597337722778, - -0.005352163687348366, - -0.05346453934907913, - -0.07835906744003296, - 0.020546667277812958, - -0.027687987312674522, - 0.05097168684005737, - 0.02886008284986019, - 0.06206386536359787, - 0.04512518644332886, - -0.05445303022861481, - 0.12324132025241852, - 0.04730850085616112, - -0.03821056708693504, - -0.05541013181209564, - -0.039593156427145004, - -0.04679294675588608, - 0.029032841324806213, - 0.00022608294966630638, - -0.09560677409172058, - -0.01142454706132412, - 0.02166072651743889, - -0.0305277518928051, - 0.05913497135043144, - 0.14018478989601135, - 0.0649317055940628, - -0.11952614784240723 - ] - }, - "p245_394.wav": { - "name": "p245", - "embedding": [ - 0.04221281781792641, - 0.07372567802667618, - -0.0659819096326828, - 0.006157597526907921, - -0.02978031150996685, - 0.03945683687925339, - -0.12181125581264496, - 0.058032795786857605, - -0.03868616372346878, - 0.14774687588214874, - -0.07240644097328186, - 0.09537186473608017, - -0.013648711144924164, - -0.11537807434797287, - -0.04489489644765854, - 0.024008475244045258, - -0.017972923815250397, - -0.02762364223599434, - -0.07296928763389587, - -0.05663127824664116, - 0.04322358965873718, - 0.047203414142131805, - 0.01330507267266512, - -0.054803602397441864, - 0.0009810198098421097, - 0.07010701298713684, - 0.004903367720544338, - 0.002591957338154316, - -0.004884074442088604, - 0.0023916661739349365, - 0.007890032604336739, - 0.09013614058494568, - -0.03697314113378525, - -0.013693119399249554, - 0.0155577901750803, - 0.030582480132579803, - -0.010209169238805771, - -0.04287702590227127, - 0.009402159601449966, - 0.05422542989253998, - -0.04355786740779877, - 0.07451993972063065, - 0.02853311412036419, - -0.0025416752323508263, - 0.032882463186979294, - -0.03931282460689545, - -0.03843151777982712, - 0.002634061500430107, - -0.052503764629364014, - 0.17036250233650208, - 0.10296783596277237, - 0.007376339286565781, - -0.07343405485153198, - -0.031032774597406387, - 0.09722359478473663, - -0.005868859123438597, - -0.08558053523302078, - -0.06655317544937134, - 0.002623163163661957, - 0.1131540983915329, - -0.012632308527827263, - -0.06558747589588165, - 0.00698844064027071, - 0.10186818242073059, - 0.02486557886004448, - 0.03929458558559418, - 0.0945490300655365, - 0.08909730613231659, - -0.021795857697725296, - 0.0030776322819292545, - 0.07897725701332092, - 0.06378591805696487, - 0.049082182347774506, - -0.06440963596105576, - 0.06504374742507935, - -0.01625491864979267, - -0.008609740994870663, - -0.01093031745404005, - -0.02692103572189808, - -0.06158566102385521, - -0.0005314182490110397, - -0.011568897403776646, - -0.017167942598462105, - 0.04275604337453842, - -0.08168315142393112, - -1.0542571544647217e-06, - 0.06265141069889069, - -0.05579163879156113, - 0.05064044147729874, - 0.09218795597553253, - 0.02366851642727852, - 0.0011337138712406158, - -0.0610482320189476, - -0.06813901662826538, - 0.04482470825314522, - -0.0032767076045274734, - 0.0015504853799939156, - 0.04853503406047821, - 0.033751919865608215, - 0.0024062134325504303, - 0.07271923124790192, - 0.04323473200201988, - -0.02236836776137352, - -0.019747108221054077, - -0.07916384190320969, - 0.11579327285289764, - 0.13964106142520905, - -0.03967355564236641, - -0.011013301089406013, - 0.0017855498008430004, - 0.037831664085388184, - 0.03917057067155838, - -0.09499269723892212, - -0.0749216079711914, - 0.028514113277196884, - 0.03920985758304596, - 0.037640832364559174, - 0.08007712662220001, - -0.0013311905786395073, - -0.002193443477153778, - 0.09710744023323059, - -0.02258693240582943, - -0.06172921508550644, - -0.06625495105981827, - 0.008981116116046906, - -0.07737134397029877, - 0.03650752827525139, - 0.061724476516246796, - 0.033231399953365326, - -0.02998354844748974, - 0.08500725775957108, - 0.002355338539928198, - 0.003857824020087719, - -0.045823559165000916, - 0.02854788862168789, - 0.05841199308633804, - 0.011052394285798073, - -0.003450383897870779, - 0.0456831119954586, - 0.013796903192996979, - 0.0868886411190033, - 0.021950632333755493, - 0.022808659821748734, - -0.09523002803325653, - 0.04796866700053215, - 0.0413176454603672, - 0.0050698332488536835, - -0.0522797517478466, - -0.01754833571612835, - -0.020438849925994873, - -0.06216639280319214, - 0.015912078320980072, - -0.048053402453660965, - 0.08413240313529968, - 0.02139638550579548, - -0.028737042099237442, - 0.14665734767913818, - -0.037699125707149506, - -0.007535828277468681, - 0.006085017696022987, - 0.032038867473602295, - -0.0022094841115176678, - 0.04081571847200394, - -0.10109880566596985, - -0.07877299189567566, - -0.014130750671029091, - 0.012173613533377647, - 0.04750073328614235, - 0.01893373392522335, - 0.08463788032531738, - -0.048994410783052444, - 0.03135241940617561, - -0.06985719501972198, - 0.016635265201330185, - -0.09746984392404556, - 0.003945829346776009, - -0.0282443817704916, - -0.11036363244056702, - -0.0005139214918017387, - 0.07725851982831955, - -0.01924262009561062, - 0.010488408617675304, - -0.05139767751097679, - -0.10992743074893951, - -0.06320053339004517, - 0.05239824950695038, - 0.10323932766914368, - -0.02312656305730343, - 0.01673564314842224, - 0.08824264258146286, - 0.028324509039521217, - 0.008866289630532265, - 0.045627690851688385, - 0.08047404885292053, - -0.0641738772392273, - -0.00593201257288456, - -0.04705319553613663, - 0.07765305042266846, - 0.05012659728527069, - -0.08386698365211487, - -0.0650007575750351, - -0.07331133633852005, - -0.03916112333536148, - 0.013628602959215641, - -0.04112265259027481, - 0.02014829032123089, - 0.05306567996740341, - -0.03210524469614029, - -0.0801018625497818, - -0.09217952191829681, - 0.07033544033765793, - -0.0350370891392231, - -0.0052529750391840935, - -0.05333959311246872, - 0.024838626384735107, - 0.02708384022116661, - 0.05357912555336952, - -0.06930997967720032, - 0.021345606073737144, - 0.0037568937987089157, - -0.037808675318956375, - -0.01639874465763569, - -0.003400258719921112, - 0.030739542096853256, - -0.07515322417020798, - -0.026407957077026367, - -0.0663398802280426, - 0.11452736705541611, - -0.07026782631874084, - 0.05067889764904976, - 0.004596891347318888, - -0.03442615643143654, - -0.0711522325873375, - 0.025660306215286255, - -0.011127292178571224, - 0.05089222639799118, - 0.08250969648361206, - 0.055533066391944885, - -0.006250837817788124, - -0.06509929150342941, - 0.07760076224803925, - 0.06454917043447495, - 0.002327009104192257, - -0.08449520915746689, - 0.02630813792347908, - -0.0261441208422184, - 0.038046471774578094, - 0.061569489538669586, - -0.05411284416913986, - 0.04874954745173454, - 0.004920903593301773, - -0.03563157096505165, - 0.050731562077999115, - 0.04804393649101257, - 0.05965430289506912, - -0.08994707465171814 - ] - }, - "p245_059.wav": { - "name": "p245", - "embedding": [ - 0.05211058259010315, - 0.09031020849943161, - -0.016787324100732803, - 0.044890522956848145, - -0.07434713840484619, - 0.04509442672133446, - -0.138683021068573, - 0.15274880826473236, - -0.014317094348371029, - 0.11448056995868683, - -0.05287359654903412, - 0.1250535100698471, - -0.025392839685082436, - -0.19026386737823486, - -0.003872975707054138, - 0.06730380654335022, - -0.008804458193480968, - -0.024860791862010956, - 0.006314050406217575, - -0.02803061529994011, - 0.02479531429708004, - 0.04429391771554947, - 0.043818652629852295, - 0.0028664530254900455, - 0.05632931739091873, - 0.06739361584186554, - -0.010996385477483273, - 0.030286163091659546, - 0.0024190880358219147, - -0.053098730742931366, - -0.04355702921748161, - 0.08344703912734985, - -0.05834344029426575, - 0.005014099180698395, - 0.051025375723838806, - -0.01388503983616829, - -0.020580502226948738, - -0.060148969292640686, - -0.02872304990887642, - -0.0010775126283988357, - -0.054255276918411255, - 0.0857522115111351, - 0.05023276060819626, - -0.03782668337225914, - 0.03837617114186287, - 0.01860402524471283, - -0.003439562860876322, - -0.03719545155763626, - -0.1267479658126831, - 0.1542169451713562, - 0.04489909112453461, - 0.012139051221311092, - -0.08407258987426758, - -0.06525923311710358, - 0.10446441173553467, - 0.0014876071363687515, - -0.09852991253137589, - -0.03226218745112419, - 0.08392706513404846, - 0.1515682339668274, - -0.01122039183974266, - -0.03162868693470955, - 0.028277942910790443, - 0.11791953444480896, - 0.05518379434943199, - 0.07797396183013916, - 0.06564490497112274, - 0.11697226762771606, - -0.019241739064455032, - 0.024206530302762985, - 0.04920335114002228, - 0.0724349096417427, - 0.018184814602136612, - -0.01683025434613228, - -0.01598476432263851, - -0.004768064711242914, - -0.023378970101475716, - -0.011343930847942829, - -0.005287173204123974, - -0.02188873663544655, - -0.024261534214019775, - -0.005456279031932354, - 0.011974446475505829, - 0.014671731740236282, - -0.023219861090183258, - 0.05448531731963158, - 0.0510338731110096, - -0.004323908593505621, - 0.07310354709625244, - 0.022049546241760254, - -0.015815729275345802, - 0.06292496621608734, - -0.08115273714065552, - -0.06564487516880035, - 0.018000714480876923, - -0.0011353300651535392, - 0.039665453135967255, - 0.09368514269590378, - 0.04481733590364456, - -0.015207127667963505, - 0.13545510172843933, - 0.0574614554643631, - 0.008050581440329552, - 0.018052363768219948, - -0.07626637071371078, - 0.12130442261695862, - 0.06759084761142731, - -0.010168075561523438, - 0.08639216423034668, - -0.04942810907959938, - 0.06838169693946838, - 0.06409639120101929, - -0.14163321256637573, - -0.0523344948887825, - 0.015249529853463173, - 0.022128598764538765, - -0.01690315082669258, - 0.14046034216880798, - 0.005391120444983244, - 0.05108964443206787, - 0.10216464102268219, - -0.10790012776851654, - -0.06773235648870468, - -0.01801345869898796, - 0.056593433022499084, - -0.09005950391292572, - 0.06811849772930145, - 0.07202481478452682, - -0.039467282593250275, - 0.031007032841444016, - 0.05758289992809296, - -0.002961705904453993, - 0.024321893230080605, - 0.024886082857847214, - -0.048783764243125916, - 0.008189593441784382, - -0.030337151139974594, - 0.01699521765112877, - 0.059775106608867645, - 0.016814284026622772, - 0.057762689888477325, - -0.001238397671841085, - -0.021220512688159943, - -0.12438033521175385, - 0.008859913796186447, - 0.04408992826938629, - 0.08999302238225937, - -0.0163830928504467, - -0.04759235680103302, - -0.03438553214073181, - -0.08179104328155518, - 0.02691732719540596, - 0.010365668684244156, - 0.07743996381759644, - -0.027045879513025284, - 0.004372643772512674, - 0.08790628612041473, - 0.056354813277721405, - -0.012188902124762535, - -0.05727371573448181, - -0.049839019775390625, - -0.00020913488697260618, - 0.043822042644023895, - -0.10179653763771057, - -0.06975045055150986, - -0.02184605598449707, - 0.028134597465395927, - -0.04036519303917885, - 0.05948321521282196, - 0.039885878562927246, - 0.031334299594163895, - 0.022022534161806107, - -0.05822766572237015, - 0.007934393361210823, - -0.084077388048172, - -0.0759524330496788, - -0.01076965406537056, - 0.008049480617046356, - -0.04031803458929062, - 0.08851504325866699, - 0.03602299839258194, - 0.06514918804168701, - -0.009855658747255802, - -0.03239437937736511, - -0.06953404098749161, - 0.03346630930900574, - 0.023713747039437294, - -0.007787439506500959, - 0.05046822875738144, - 0.06018594279885292, - -0.06341789662837982, - 0.0562901496887207, - 0.060678452253341675, - 0.0846179872751236, - -0.0357646644115448, - 0.022774893790483475, - -0.06300573796033859, - 0.08778300881385803, - 0.10481292009353638, - -0.09367352724075317, - -0.08410625159740448, - -0.053423330187797546, - -0.07847580313682556, - 0.04153309017419815, - -0.019026286900043488, - 0.0061453827656805515, - 0.004096143878996372, - -0.0075471303425729275, - -0.09132785350084305, - -0.10212084650993347, - 0.06480856239795685, - -0.055305205285549164, - 5.991733632981777e-05, - -0.08395881950855255, - 0.041417863219976425, - 0.09231184422969818, - 0.03960429131984711, - -0.004887227434664965, - -0.021804237738251686, - 0.05057108402252197, - -0.03523723781108856, - 0.01057150773704052, - 0.09661002457141876, - 0.0465642586350441, - -0.09745390713214874, - -0.01476682722568512, - -0.062276691198349, - 0.06255712360143661, - -0.03646198660135269, - 0.1689663827419281, - 0.021374596282839775, - -0.05630611628293991, - -0.0784098207950592, - 0.03436777740716934, - -0.018948176875710487, - 0.04361008107662201, - 0.02956235781311989, - 0.05381504446268082, - 0.03879433125257492, - -0.04818301647901535, - 0.11761713773012161, - 0.0379662811756134, - -0.040918607264757156, - -0.04715179651975632, - -0.047564469277858734, - -0.039870284497737885, - 0.037253767251968384, - 0.003212657291442156, - -0.09977522492408752, - -0.02584272250533104, - 0.03237131983041763, - 0.007361389230936766, - 0.058573536574840546, - 0.14789551496505737, - 0.06627048552036285, - -0.10891734063625336 - ] - }, - "p245_100.wav": { - "name": "p245", - "embedding": [ - 0.0663197785615921, - 0.09439428150653839, - -0.05860540270805359, - 0.04420878365635872, - -0.0157189778983593, - 0.05247534066438675, - -0.10924509167671204, - 0.10548478364944458, - -0.029878534376621246, - 0.11963379383087158, - -0.06781339645385742, - 0.09859782457351685, - -0.04731093719601631, - -0.10407844930887222, - -0.025321464985609055, - 0.0381789356470108, - -0.028281522914767265, - -0.005352920852601528, - -0.018945593386888504, - -0.016972610726952553, - 0.04892675578594208, - 0.009979571215808392, - 0.04857354611158371, - -0.043624814599752426, - -0.007384458556771278, - 0.059436164796352386, - -0.004885569680482149, - -0.010640589520335197, - 0.011995124630630016, - -0.007840579375624657, - 0.0026341602206230164, - 0.04913713037967682, - -0.017757225781679153, - 0.000975143164396286, - 0.04100700840353966, - 0.026308663189411163, - -0.03971042484045029, - -0.05527646467089653, - 0.016162578016519547, - 0.0015194378793239594, - -0.033707112073898315, - 0.059089966118335724, - 0.026121221482753754, - -0.0753602385520935, - 0.062055837363004684, - -0.05959121510386467, - -0.02531673014163971, - -0.007754381280392408, - -0.08055133372545242, - 0.13634063303470612, - 0.0722898468375206, - 0.04264960065484047, - -0.09108496457338333, - -0.0037523843348026276, - 0.0923738032579422, - 0.021413519978523254, - -0.08120468258857727, - -0.03694716840982437, - 0.020819321274757385, - 0.13331222534179688, - -0.026344316080212593, - -0.046072062104940414, - 0.04454554617404938, - 0.062435977160930634, - 0.038268934935331345, - 0.04812190681695938, - 0.11056789755821228, - 0.06409688293933868, - -0.0023174136877059937, - 0.030247226357460022, - 0.048067860305309296, - 0.08169476687908173, - 0.05583852529525757, - -0.01167504582554102, - 0.014711730182170868, - -0.048491790890693665, - -0.04016498476266861, - -0.008022511377930641, - 0.008780616335570812, - -0.0828246995806694, - -0.03210859373211861, - -0.037795573472976685, - 0.01731165125966072, - 0.031443674117326736, - -0.023595400154590607, - 0.01804482564330101, - 0.05807250365614891, - -0.057509537786245346, - 0.03341579809784889, - 0.04593736678361893, - -0.002328613307327032, - 0.019688639789819717, - -0.052042510360479355, - -0.10841652005910873, - 0.026302458718419075, - -0.010919563472270966, - 0.029422741383314133, - 0.038488660007715225, - 0.06177400052547455, - 0.026608601212501526, - 0.0835871696472168, - 0.04342842847108841, - 0.006749723106622696, - 0.0043671149760484695, - -0.0627894401550293, - 0.11522842943668365, - 0.1276656687259674, - -0.037673670798540115, - 0.029498660936951637, - -0.03411189839243889, - 0.007968232035636902, - 0.05691046267747879, - -0.08458146452903748, - -0.051257744431495667, - 0.01903976872563362, - 0.024734729900956154, - 0.045076634734869, - 0.10741623491048813, - 0.02892608568072319, - 0.009291954338550568, - 0.10416583716869354, - -0.09102657437324524, - -0.08732734620571136, - -0.07047225534915924, - 0.044792789965867996, - -0.06465359032154083, - 0.07475265115499496, - 0.07118361443281174, - 0.0050682323053479195, - -0.003476560115814209, - 0.04940428584814072, - -0.008041362278163433, - 0.00932995229959488, - -0.025251735001802444, - -0.00887626688927412, - 0.03655785694718361, - -0.05850313603878021, - -0.009714930318295956, - 0.06718210875988007, - 0.017471838742494583, - 0.06314821541309357, - 0.021001707762479782, - 0.017348608002066612, - -0.09711773693561554, - 0.00856832042336464, - 0.08780636638402939, - 0.012186123058199883, - -0.04391637444496155, - -0.04549715295433998, - -0.0033802613615989685, - -0.05527162551879883, - 0.016970159485936165, - -0.028318775817751884, - 0.07493670284748077, - -0.0031198784708976746, - 0.03987174108624458, - 0.10714699327945709, - -0.003863329067826271, - 0.004510321654379368, - -0.03685054928064346, - -0.008681939914822578, - 0.03332715481519699, - 0.03084845468401909, - -0.11221206933259964, - -0.10365574061870575, - -0.06344129145145416, - 0.022486770525574684, - 0.00369067769497633, - 0.025880323722958565, - 0.06596258282661438, - -0.009321731515228748, - 0.0115674939006567, - -0.028061628341674805, - 0.03308183327317238, - -0.10043562948703766, - -0.054394111037254333, - -0.033737242221832275, - -0.07232873886823654, - 0.012167712673544884, - 0.08024148643016815, - 0.008952250704169273, - 0.028988581150770187, - -0.03271050006151199, - -0.06773829460144043, - -0.06748488545417786, - 0.0571545735001564, - 0.05134906619787216, - -0.02053200639784336, - 0.009943072684109211, - 0.06056932732462883, - 0.011697516776621342, - 0.01142505556344986, - 0.022412709891796112, - 0.1010124683380127, - -0.03607857972383499, - -0.048399388790130615, - -0.07639270275831223, - 0.04189855605363846, - 0.12902554869651794, - -0.08879778534173965, - -0.07785983383655548, - -0.09564165025949478, - -0.05752214044332504, - 0.019074978306889534, - -0.07030005753040314, - -0.007959501817822456, - 0.019897159188985825, - -0.05385321378707886, - -0.09478220343589783, - -0.13109785318374634, - 0.06463485211133957, - -0.010974442586302757, - -0.004489540588110685, - -0.07305482029914856, - 0.04138777405023575, - 0.026729801669716835, - -0.014840628951787949, - -0.043802786618471146, - 0.05128946155309677, - -0.019664419814944267, - -0.02324110083281994, - -0.002534065395593643, - 0.012591449543833733, - 0.0510978102684021, - -0.0857885554432869, - -0.02150963433086872, - -0.06154468655586243, - 0.09006279706954956, - -0.06946229934692383, - 0.11457448452711105, - -0.027412837371230125, - -0.026068881154060364, - -0.08111831545829773, - 0.03654753044247627, - -0.008012485690414906, - 0.047931745648384094, - 0.04473424702882767, - 0.040938958525657654, - 0.0036564096808433533, - -0.09383370727300644, - 0.06946577876806259, - 0.042330384254455566, - 0.008626967668533325, - -0.09750566631555557, - -0.02568056248128414, - -0.05529318377375603, - 0.008041676133871078, - -0.01950201578438282, - -0.039776209741830826, - 0.018483854830265045, - -0.007487908937036991, - 0.04015301913022995, - 0.048131756484508514, - 0.07871736586093903, - 0.02605525404214859, - -0.05583636462688446 - ] - }, - "p245_023.wav": { - "name": "p245", - "embedding": [ - 0.03908824548125267, - 0.1017199233174324, - -0.009959769435226917, - 0.021438581869006157, - -0.06452645361423492, - 0.044496528804302216, - -0.13400962948799133, - 0.1451302468776703, - -0.044776733964681625, - 0.11464640498161316, - -0.07916643470525742, - 0.12784340977668762, - -0.029615890234708786, - -0.1755208522081375, - -0.048016875982284546, - 0.05921188369393349, - -0.0343744233250618, - -0.045235276222229004, - -0.0074041178449988365, - -0.0253108162432909, - 0.039457403123378754, - 0.03610103577375412, - 0.03011571429669857, - 0.03964009881019592, - 0.02795795351266861, - 0.06703013181686401, - 0.016632018610835075, - 0.05980275571346283, - 0.03333541005849838, - -0.029680419713258743, - -0.03519735857844353, - 0.09383947402238846, - -0.04114807769656181, - 0.014151819981634617, - 0.053443919867277145, - -0.0067961798049509525, - 0.016943257302045822, - -0.06032857298851013, - -0.02663329243659973, - -0.00046618329361081123, - -0.039308350533246994, - 0.07699462026357651, - 0.04193534702062607, - -0.005273374263197184, - 0.02674288861453533, - 0.04383581504225731, - -0.0043047694489359856, - -0.0473567396402359, - -0.11646394431591034, - 0.14727148413658142, - 0.05183038488030434, - -0.00142720399890095, - -0.06901705265045166, - -0.06773066520690918, - 0.11674400418996811, - -0.031111136078834534, - -0.0977528765797615, - -0.029965033754706383, - 0.08769207447767258, - 0.15565212070941925, - -0.03476284071803093, - -0.04429098591208458, - 0.023429809138178825, - 0.13291653990745544, - 0.057654645293951035, - 0.07660049945116043, - 0.07403185218572617, - 0.10676908493041992, - -0.02657163515686989, - -0.0007726012845523655, - 0.05820402503013611, - 0.08041516691446304, - 0.01997154764831066, - -0.012673151679337025, - 0.008889789693057537, - 0.0164633821696043, - -0.010283536277711391, - 0.027073834091424942, - -0.025768082588911057, - -0.011276870965957642, - -0.033658891916275024, - 0.016812419518828392, - -0.011569165624678135, - 0.010936538688838482, - -0.01961156167089939, - 0.08063401281833649, - 0.019893674179911613, - 0.0028532263822853565, - 0.07736208289861679, - 0.029046129435300827, - 0.0002845727140083909, - 0.06905665993690491, - -0.07306993007659912, - -0.06884765625, - 0.017564628273248672, - -0.0046822004951536655, - 0.029821451753377914, - 0.07846148312091827, - 0.0375356562435627, - -0.012686869129538536, - 0.13154901564121246, - 0.05841303989291191, - -0.005561016034334898, - 0.023732321336865425, - -0.09533876925706863, - 0.12531165778636932, - 0.07549038529396057, - -0.021976590156555176, - 0.04789264127612114, - -0.04142708331346512, - 0.0662362203001976, - 0.05911421775817871, - -0.13633295893669128, - -0.08132922649383545, - 0.03302367776632309, - 0.044984545558691025, - -0.02104741893708706, - 0.10965011268854141, - -0.028814515098929405, - 0.035344772040843964, - 0.09868381917476654, - -0.06828127056360245, - -0.056365661323070526, - -0.01856410503387451, - 0.04307914897799492, - -0.07022472470998764, - 0.05234229564666748, - 0.05905531346797943, - -0.009590099565684795, - 0.010263609699904919, - 0.08055105805397034, - -0.0061597395688295364, - -0.003881992306560278, - 0.028562072664499283, - -0.057598669081926346, - 0.019651295617222786, - -0.0191297959536314, - 0.005933896638453007, - 0.043608468025922775, - 0.05449352785944939, - 0.04584034904837608, - 0.011709746904671192, - -0.03451947867870331, - -0.12400718033313751, - 0.007686857134103775, - 0.03464972600340843, - 0.08371372520923615, - -0.0009035574039444327, - -0.044929251074790955, - -0.043272312730550766, - -0.04334426671266556, - -0.001561360084451735, - 0.01567970961332321, - 0.08219204843044281, - -0.039747532457113266, - 0.010228430852293968, - 0.08703365921974182, - 0.025471672415733337, - -0.006671713199466467, - -0.052804186940193176, - -0.030194992199540138, - 0.0002452497137710452, - 0.04281293973326683, - -0.059373751282691956, - -0.07548919320106506, - 0.0015809343894943595, - 0.052883878350257874, - -0.027732735499739647, - 0.05769096314907074, - 0.03231029957532883, - 0.013555985875427723, - 0.03596971556544304, - -0.05700072646141052, - 0.022291073575615883, - -0.10057568550109863, - -0.06620828062295914, - -0.014416437596082687, - 0.015316369943320751, - -0.025401776656508446, - 0.063944011926651, - 0.034537337720394135, - 0.07000309973955154, - 0.011429321952164173, - -0.0725812315940857, - -0.08231204748153687, - 0.053027551621198654, - 0.06893660128116608, - 0.007796157151460648, - 0.0591251477599144, - 0.06391574442386627, - -0.03666124865412712, - 0.06755539029836655, - 0.05735276639461517, - 0.08449211716651917, - -0.030076559633016586, - 0.014660472981631756, - -0.05635940283536911, - 0.06003953889012337, - 0.06228463724255562, - -0.11223392188549042, - -0.07457417994737625, - -0.03092467039823532, - -0.05540286377072334, - 0.04038581624627113, - -0.00673317164182663, - 0.01929626055061817, - 0.013313712552189827, - -0.0018207458779215813, - -0.10298387706279755, - -0.08288252353668213, - 0.06628750264644623, - -0.0733165293931961, - 0.005856611765921116, - -0.07208412885665894, - 0.040309373289346695, - 0.1149497926235199, - 0.02881626971065998, - -0.004198829643428326, - -0.029416609555482864, - 0.03783728554844856, - -0.036783572286367416, - -0.012174882926046848, - 0.05171601101756096, - 0.029560891911387444, - -0.09624523669481277, - 0.011329907923936844, - -0.08156187832355499, - 0.06035470962524414, - -0.03657836839556694, - 0.1633358746767044, - 0.011731870472431183, - -0.05558416619896889, - -0.08446737378835678, - 0.01829644851386547, - -0.03290078416466713, - 0.05489852651953697, - 0.0303493719547987, - 0.04956279695034027, - 0.02715081349015236, - -0.0494561493396759, - 0.1296415776014328, - 0.04800746962428093, - -0.06840189546346664, - -0.07137420773506165, - -0.03960240259766579, - -0.03337593004107475, - 0.027055565267801285, - 0.027266275137662888, - -0.08271216601133347, - -0.040648285299539566, - 0.015020700171589851, - -0.02820698171854019, - 0.08464384078979492, - 0.1389710009098053, - 0.07099004834890366, - -0.1135907769203186 - ] - }, - "p245_001.wav": { - "name": "p245", - "embedding": [ - 0.015332179144024849, - 0.07108315825462341, - -0.020739970728754997, - 0.05744510889053345, - -0.04570154845714569, - 0.020833274349570274, - -0.1109994649887085, - 0.14159035682678223, - 0.009848130866885185, - 0.11420293152332306, - -0.07159987092018127, - 0.0914527103304863, - -0.0625762864947319, - -0.17988622188568115, - 0.052134789526462555, - 0.051672205328941345, - 0.04731632024049759, - -0.006856944411993027, - 0.003111025085672736, - -0.007992730475962162, - 0.027882717549800873, - 0.05588168278336525, - -0.014738529920578003, - -0.02105940505862236, - 0.01581038162112236, - 0.06336754560470581, - -0.04263804107904434, - -0.01843671128153801, - -0.029094256460666656, - -0.018652595579624176, - -0.02964254654943943, - 0.0827953964471817, - -0.0799579918384552, - 0.010914979502558708, - 0.06217946112155914, - 0.009177275002002716, - -0.07105202972888947, - 0.016001801937818527, - -0.01115439087152481, - -0.005310261622071266, - -0.10693271458148956, - 0.047822482883930206, - 0.015527957119047642, - -0.018014488741755486, - 0.08667831122875214, - 0.029291581362485886, - 0.0021342034451663494, - -0.0023415519390255213, - -0.0867738425731659, - 0.1013704240322113, - 0.05490349233150482, - -0.02102711796760559, - -0.0681600347161293, - -0.05408202111721039, - 0.043294474482536316, - 0.01799607463181019, - -0.09437404572963715, - -0.021127671003341675, - 0.09878145158290863, - 0.11597470939159393, - 0.012194476090371609, - -0.03993900120258331, - 0.0261235274374485, - 0.0897771418094635, - 0.04261494427919388, - 0.08973386883735657, - 0.04110422730445862, - 0.11391530930995941, - -0.03944727033376694, - -0.02352098375558853, - 0.03497697040438652, - 0.0508694052696228, - 0.08620239794254303, - -0.032662659883499146, - -0.015647606924176216, - 0.00278669036924839, - -0.028113259002566338, - -0.012908965349197388, - -0.017692675814032555, - -0.018312573432922363, - -0.014719038270413876, - -0.021705131977796555, - -0.007278572767972946, - -0.0012894890969619155, - -0.0078122434206306934, - 0.018887579441070557, - 0.12920019030570984, - 0.009379029273986816, - 0.06988713145256042, - 0.03569526970386505, - -0.025971459224820137, - 0.07317141443490982, - -0.1158798336982727, - -0.003239100333303213, - 0.0035500172525644302, - -0.022510454058647156, - 0.02235689014196396, - 0.1020098477602005, - 0.04558086395263672, - 0.010756200179457664, - 0.12658396363258362, - 0.0006218478083610535, - 0.03367367386817932, - 0.03445741534233093, - -0.09070102870464325, - 0.11754370480775833, - 0.0624704584479332, - -0.042367011308670044, - 0.058698706328868866, - -0.043965213000774384, - 0.0372648686170578, - 0.06139852851629257, - -0.09974567592144012, - -0.01718933880329132, - 0.0024605211801826954, - 0.01508396491408348, - -0.04705511033535004, - 0.16210293769836426, - 0.026749365031719208, - 0.009849561378359795, - 0.11299304664134979, - -0.1387653350830078, - -0.09164271503686905, - -0.005564861930906773, - 0.028440717607736588, - -0.12368398904800415, - 0.07504577934741974, - 0.05022487789392471, - -0.006364494562149048, - 0.05789971351623535, - 0.07559937238693237, - -0.008155264891684055, - 0.06495187431573868, - -0.022819023579359055, - -0.022629395127296448, - -0.01611892506480217, - -0.03801148384809494, - 0.018936779350042343, - 0.036104340106248856, - -0.008834347128868103, - 0.09331975877285004, - -0.02421494573354721, - -0.00135873444378376, - -0.1277925968170166, - 0.0049688429571688175, - 0.08407506346702576, - 0.061537016183137894, - -0.030716441571712494, - -0.035312190651893616, - -0.04310460388660431, - -0.10013379901647568, - 0.03536054864525795, - -0.011094405315816402, - 0.038348257541656494, - -0.02725199982523918, - -0.011467266827821732, - 0.1260988712310791, - 0.05621485784649849, - -0.029998809099197388, - -0.07546477019786835, - -0.05859825015068054, - -0.04499642923474312, - 0.04695644602179527, - -0.1449158936738968, - -0.09980586171150208, - -0.055393971502780914, - 0.017905019223690033, - 0.0026516574434936047, - 0.06350744515657425, - 0.058349281549453735, - 0.038489554077386856, - -0.0006957833538763225, - -0.0564144067466259, - -0.004356719553470612, - -0.08724237978458405, - -0.11274762451648712, - -0.04256569966673851, - -0.018790483474731445, - 0.005788655020296574, - 0.07858725637197495, - -0.009145157411694527, - 0.03569881618022919, - -0.01142931543290615, - -0.02560727298259735, - -0.10053502768278122, - 0.04588941112160683, - 0.00034770439378917217, - -0.02873968705534935, - 0.047554414719343185, - 0.06538181006908417, - -0.1378755271434784, - 0.04275937378406525, - 0.06216815114021301, - 0.1073300838470459, - -0.04981303960084915, - 0.08144046366214752, - -0.05596820265054703, - 0.06934529542922974, - 0.12503361701965332, - -0.05679711326956749, - -0.09968920052051544, - -0.041347332298755646, - -0.06743539869785309, - 0.03525843098759651, - -0.06051412224769592, - -0.009532234631478786, - -0.004692481830716133, - -0.015292897820472717, - -0.06887029111385345, - -0.08320097625255585, - 0.057233698666095734, - -0.016128353774547577, - -0.0017727082595229149, - -0.09885057806968689, - 0.0449804849922657, - 0.015024697408080101, - 0.06777267158031464, - -0.039914682507514954, - -0.01014675758779049, - 0.0651957169175148, - -0.01678445190191269, - 0.023181021213531494, - 0.10439378023147583, - 0.05277450382709503, - -0.05962442234158516, - -0.05271410197019577, - -0.04789105802774429, - 0.05983292683959007, - -0.04893389344215393, - 0.10914941132068634, - 0.008151409216225147, - -0.07194779068231583, - -0.05372968316078186, - 0.026354417204856873, - 0.039717897772789, - 0.00383058562874794, - 0.010209467262029648, - 0.07519416511058807, - 0.03247915208339691, - -0.021991681307554245, - 0.12093430757522583, - 0.02438914030790329, - 0.013897374272346497, - -0.013209586963057518, - -0.07147912681102753, - -0.06426887214183807, - 0.01133603323251009, - 0.0048578823916614056, - -0.12598922848701477, - 0.004515137057751417, - 0.018026068806648254, - 0.030099008232355118, - 0.002299480140209198, - 0.13964521884918213, - 0.052897028625011444, - -0.12555529177188873 - ] - }, - "p245_418.wav": { - "name": "p245", - "embedding": [ - 0.03042732924222946, - 0.08651362359523773, - -0.013920066878199577, - 0.048780761659145355, - -0.052090711891651154, - 0.08329790085554123, - -0.11538572609424591, - 0.11805260181427002, - -0.05403435230255127, - 0.1214764341711998, - -0.06727450340986252, - 0.1027962788939476, - -0.03265245258808136, - -0.1598365306854248, - -0.04812697693705559, - 0.06039876490831375, - -0.060169413685798645, - -0.03810255974531174, - -0.027802687138319016, - 0.0004598855448421091, - 0.0426812581717968, - 0.03234236687421799, - 0.03217286616563797, - 0.005338083952665329, - 0.026176458224654198, - 0.05210056155920029, - 0.01715407334268093, - 0.0640350729227066, - 0.04269653186202049, - -0.043983157724142075, - -0.031350284814834595, - 0.11005459725856781, - -0.032013725489377975, - 0.01277065183967352, - 0.03910341486334801, - 0.017702404409646988, - 0.009509921073913574, - -0.07261432707309723, - -0.017713073641061783, - 0.0029306281358003616, - -0.056677162647247314, - 0.07570306211709976, - 0.03297759220004082, - 0.0011304605286568403, - 0.032163284718990326, - 0.0020733103156089783, - -0.033347513526678085, - -0.044419534504413605, - -0.11861996352672577, - 0.1733040064573288, - 0.07114322483539581, - 0.00046034157276153564, - -0.06837894022464752, - -0.08171238005161285, - 0.11344584077596664, - 0.008522684685885906, - -0.11059318482875824, - -0.040410589426755905, - 0.07804276794195175, - 0.16771946847438812, - -0.00998427253216505, - -0.012965536676347256, - 0.007841771468520164, - 0.13953067362308502, - 0.046284958720207214, - 0.08596092462539673, - 0.061943650245666504, - 0.1144830510020256, - 0.023485522717237473, - 0.02887917123734951, - 0.06789934635162354, - 0.06649571657180786, - 0.012322461232542992, - -0.008861749432981014, - 0.026057785376906395, - -0.0032019380014389753, - -0.022234968841075897, - 0.03055218979716301, - -0.016919052228331566, - -0.027719389647245407, - -0.006482791155576706, - 0.004953575320541859, - -0.00019641872495412827, - 0.02074054628610611, - -0.0189328882843256, - 0.061738744378089905, - -0.0003138644096907228, - -0.007053555455058813, - 0.06543485820293427, - 0.03294426202774048, - -0.007979125715792179, - 0.05275658890604973, - -0.047497041523456573, - -0.10310500860214233, - 0.008370448835194111, - 0.012577819637954235, - 0.032337382435798645, - 0.07281038165092468, - 0.025696445256471634, - -0.02632003091275692, - 0.11227305978536606, - 0.04462633281946182, - -0.0026685483753681183, - 0.029009569436311722, - -0.10383844375610352, - 0.11793702840805054, - 0.06773589551448822, - 0.0013511746656149626, - 0.04369799420237541, - -0.035197317600250244, - 0.0898575484752655, - 0.07476542890071869, - -0.14476880431175232, - -0.06473158299922943, - 0.04074136167764664, - 0.011845901608467102, - -0.010365951806306839, - 0.1114029511809349, - 0.0005197376012802124, - 0.01257854700088501, - 0.10317005217075348, - -0.09022516012191772, - -0.05977262184023857, - -0.027801748365163803, - 0.05695301294326782, - -0.06449718028306961, - 0.03565460443496704, - 0.03788425028324127, - -0.017154905945062637, - -0.019174739718437195, - 0.06904801726341248, - -0.007908841595053673, - 0.01101063471287489, - 0.034281887114048004, - -0.0528271421790123, - 0.047352395951747894, - -0.04941331595182419, - 0.008191721513867378, - 0.0674145519733429, - 0.04438894987106323, - 0.05146746337413788, - -0.006602135952562094, - -0.030637752264738083, - -0.1019003689289093, - -0.0015331199392676353, - 0.05343484878540039, - 0.06839784979820251, - -0.015266354195773602, - -0.03592716157436371, - -0.047860078513622284, - -0.07134748995304108, - 0.03448622301220894, - -0.006113764829933643, - 0.09391947835683823, - -0.010928637348115444, - -0.021680442616343498, - 0.09492798149585724, - -0.010043883696198463, - -0.004402143880724907, - -0.03908437117934227, - -0.03171183168888092, - 0.029661845415830612, - 0.034044280648231506, - -0.07901380956172943, - -0.06244722008705139, - 0.018996838480234146, - 0.015304110944271088, - -0.029031287878751755, - 0.007591585628688335, - 0.022095542401075363, - 0.01805446296930313, - 0.028784144669771194, - -0.059311896562576294, - 0.013762134127318859, - -0.10258348286151886, - -0.04074089229106903, - -0.0035348222590982914, - -0.018314126878976822, - -0.02378804050385952, - 0.08394932746887207, - 0.01932479813694954, - 0.02460772916674614, - 0.015703296288847923, - -0.08019258081912994, - -0.05558403581380844, - 0.0718565583229065, - 0.07005901634693146, - 0.022349661216139793, - 0.06703704595565796, - 0.06528645753860474, - -0.021125029772520065, - 0.03852381184697151, - 0.05289817973971367, - 0.10172756761312485, - -0.022602692246437073, - -0.011527790687978268, - -0.07194548845291138, - 0.08536722511053085, - 0.06805568933486938, - -0.10020886361598969, - -0.07833231985569, - -0.026089251041412354, - -0.06174907088279724, - 0.044399045407772064, - -0.04184674471616745, - 0.0021067787893116474, - 0.026352612301707268, - -0.026897024363279343, - -0.11908938735723495, - -0.0906689390540123, - 0.08755158632993698, - -0.08036810159683228, - -0.031581226736307144, - -0.06086207926273346, - 0.04355759546160698, - 0.09889324009418488, - 0.03754740208387375, - -0.02637976035475731, - 0.005788288079202175, - 0.05877317488193512, - -0.07560603320598602, - -0.024257352575659752, - 0.042853742837905884, - 0.0026402100920677185, - -0.10282234847545624, - 0.00972248986363411, - -0.07420995086431503, - 0.06533047556877136, - -0.06502285599708557, - 0.15314491093158722, - -0.012376468628644943, - -0.05757790058851242, - -0.07536821812391281, - 0.04355122894048691, - -0.024933792650699615, - 0.03695180267095566, - 0.042136382311582565, - 0.05257222056388855, - 0.029036542400717735, - -0.06018456071615219, - 0.13721179962158203, - 0.030541544780135155, - -0.031840644776821136, - -0.06002620980143547, - -0.02252354845404625, - -0.032839205116033554, - 0.03107338957488537, - 0.007079975213855505, - -0.0801437497138977, - -0.01041292492300272, - 0.024479543790221214, - -0.02416488528251648, - 0.061183638870716095, - 0.13520441949367523, - 0.06480760872364044, - -0.09626524150371552 - ] - }, - "p245_035.wav": { - "name": "p245", - "embedding": [ - 0.047512274235486984, - 0.08609914034605026, - -0.046957552433013916, - 0.027574673295021057, - -0.03924497961997986, - 0.03821911662817001, - -0.13186554610729218, - 0.10746931284666061, - -0.027431121096014977, - 0.12437397241592407, - -0.04287900775671005, - 0.11486640572547913, - -0.015343727543950081, - -0.1584114283323288, - -0.025371000170707703, - 0.04812903702259064, - -0.021808108314871788, - -0.027373217046260834, - -0.007206720300018787, - -0.021419469267129898, - 0.06363151967525482, - 0.04318461939692497, - 0.036855049431324005, - -0.022972911596298218, - -0.002549968659877777, - 0.06865663826465607, - 0.00332033634185791, - 0.019372913986444473, - 0.004853181075304747, - -0.03148690611124039, - -0.018673807382583618, - 0.08538803458213806, - -0.02187051624059677, - 0.007954302243888378, - 0.0301038920879364, - 0.008952243253588676, - -0.02129673957824707, - -0.05781055614352226, - -0.007296671159565449, - 0.015679871663451195, - -0.03887028619647026, - 0.06691883504390717, - 0.01664990559220314, - -0.03335646912455559, - 0.05290444940328598, - -0.053276486694812775, - -0.037761978805065155, - -0.019499806687235832, - -0.0798143744468689, - 0.14589202404022217, - 0.09664269536733627, - 0.027677249163389206, - -0.06830545514822006, - -0.03380965813994408, - 0.09383022040128708, - 0.018186433240771294, - -0.0948326587677002, - -0.0416414812207222, - 0.04243795573711395, - 0.14704479277133942, - 0.005419223569333553, - -0.02080828696489334, - 0.041589777916669846, - 0.10111330449581146, - 0.021087510511279106, - 0.06361795216798782, - 0.10026641935110092, - 0.07566763460636139, - -0.00036413720226846635, - 0.013197584077715874, - 0.02729940041899681, - 0.09100913256406784, - 0.014969943091273308, - -0.031735554337501526, - 0.017868466675281525, - -0.025481805205345154, - -0.03786304593086243, - -0.011180998757481575, - -0.008563697338104248, - -0.045560143887996674, - -0.030515586957335472, - -0.009088415652513504, - -0.0014375986065715551, - 0.02741953730583191, - -0.033017996698617935, - 0.017747124657034874, - 0.03437551483511925, - -0.040561579167842865, - 0.04603039473295212, - 0.045318882912397385, - 0.015366427600383759, - 0.022925768047571182, - -0.05694061145186424, - -0.08957916498184204, - 0.02947296015918255, - 0.02426670305430889, - 0.01292937807738781, - 0.08937977254390717, - 0.031166646629571915, - 0.00403913389891386, - 0.09304189682006836, - 0.038550134748220444, - -0.01802215538918972, - -0.009072205051779747, - -0.07091206312179565, - 0.1043706089258194, - 0.09936642646789551, - -0.0253828726708889, - 0.053714536130428314, - -0.05511198565363884, - 0.03667735308408737, - 0.04630982503294945, - -0.1055835410952568, - -0.05516941472887993, - 0.034832291305065155, - 0.03261159360408783, - 0.025443535298109055, - 0.11465909332036972, - 0.03726130723953247, - 0.030363252386450768, - 0.09185874462127686, - -0.08185656368732452, - -0.09117460250854492, - -0.06671448051929474, - 0.0653037577867508, - -0.07601243257522583, - 0.08106499910354614, - 0.05676394701004028, - -0.0019281134009361267, - -0.0022406044881790876, - 0.047236502170562744, - -0.0026236686389893293, - 0.02866353653371334, - -0.005930222570896149, - -0.03171057999134064, - 0.02295582741498947, - -0.059072356671094894, - 0.010003656148910522, - 0.03996270149946213, - 0.0051517183892428875, - 0.05573644861578941, - 0.0027772970497608185, - -0.0032236739061772823, - -0.10150401294231415, - 0.008834552951157093, - 0.05883560702204704, - 0.045625656843185425, - -0.027181189507246017, - -0.054899148643016815, - -0.01451468002051115, - -0.06837444007396698, - 0.002241502283141017, - -0.045617520809173584, - 0.07822269201278687, - -0.0005640421877615154, - 0.02417202852666378, - 0.07696916162967682, - 0.000522322952747345, - -0.005944509990513325, - -0.03242078423500061, - -0.013525960966944695, - 0.013982011005282402, - 0.03526326268911362, - -0.09811844676733017, - -0.07592052221298218, - -0.033725377172231674, - 0.014820109121501446, - -0.015350266359746456, - 0.02785833738744259, - 0.05280764028429985, - 0.004163810517638922, - 0.02141760103404522, - -0.07109146565198898, - 0.02428961917757988, - -0.09811060130596161, - -0.05941072106361389, - -0.027518145740032196, - -0.02331431210041046, - -0.0032530315220355988, - 0.08884786814451218, - 0.02086341381072998, - 0.028346367180347443, - -0.027570350095629692, - -0.057705070823431015, - -0.07781679183244705, - 0.05320239067077637, - 0.06403405964374542, - -0.0035114018246531487, - 0.03885791823267937, - 0.04390726983547211, - -0.02458917163312435, - 0.022658567875623703, - 0.036476388573646545, - 0.08441587537527084, - -0.046668022871017456, - -0.006689698901027441, - -0.07432778179645538, - 0.05822507664561272, - 0.11375582218170166, - -0.08773978054523468, - -0.07553941011428833, - -0.0564013347029686, - -0.07821381092071533, - 0.020092494785785675, - -0.04410077631473541, - 0.000687162100803107, - 0.027942299842834473, - -0.03650069236755371, - -0.12579014897346497, - -0.10675406455993652, - 0.0777093842625618, - -0.03278997540473938, - -0.006179330870509148, - -0.06986880302429199, - 0.0446537584066391, - 0.07444396615028381, - 0.02134857140481472, - -0.05210947245359421, - -0.0038992948830127716, - 0.020999623462557793, - -0.03290301188826561, - 0.004802831914275885, - 0.03310735523700714, - 0.052572257816791534, - -0.10819780826568604, - -0.0009580999612808228, - -0.06278321146965027, - 0.06290467083454132, - -0.07500292360782623, - 0.11263549327850342, - 0.007468120660632849, - -0.056552112102508545, - -0.0906960591673851, - 0.04758359119296074, - 0.021654268726706505, - 0.03939587622880936, - 0.01717129349708557, - 0.050779130309820175, - 0.00842757523059845, - -0.09632016718387604, - 0.08334605395793915, - 0.051021527498960495, - 0.0013994028558954597, - -0.08277277648448944, - -0.005998106673359871, - -0.020790688693523407, - 0.0514594130218029, - -0.0009228637209162116, - -0.06089923903346062, - -0.006041245069354773, - 0.005709233693778515, - 0.013314230367541313, - 0.06248827278614044, - 0.11817269772291183, - 0.03676634654402733, - -0.10958908498287201 - ] - }, - "p245_226.wav": { - "name": "p245", - "embedding": [ - 0.017812533304095268, - 0.09059041738510132, - -0.03313907980918884, - 0.04103659838438034, - -0.07077332586050034, - 0.0858350545167923, - -0.09737630188465118, - 0.08155152946710587, - -0.08273117989301682, - 0.12696227431297302, - -0.06535467505455017, - 0.07652875781059265, - -0.054977089166641235, - -0.1634788066148758, - -0.019013606011867523, - 0.06683763116598129, - -0.05668655410408974, - -0.02705809473991394, - -0.08173489570617676, - -0.014207035303115845, - 0.021991947665810585, - -0.0008913557976484299, - 0.0338105782866478, - -0.043577641248703, - 0.01690848171710968, - 0.061247799545526505, - -0.007964516058564186, - 0.014899916015565395, - -0.0015098992735147476, - -0.030810566619038582, - -0.041758790612220764, - 0.11071734130382538, - -0.048800788819789886, - -0.02021772228181362, - 0.03633880615234375, - 0.007430911995470524, - -0.021571576595306396, - -0.06781338155269623, - 0.023993993178009987, - -0.013845808804035187, - -0.04508243501186371, - 0.06458313018083572, - 0.01562678813934326, - -0.007549887988716364, - 0.03832894191145897, - -0.032098378986120224, - -0.04359281063079834, - -0.021026315167546272, - -0.09502652287483215, - 0.14071117341518402, - 0.0716174989938736, - -0.014656499028205872, - -0.07088983803987503, - -0.06469035148620605, - 0.1039232462644577, - 0.021482126787304878, - -0.12525664269924164, - -0.08519650995731354, - 0.07195033133029938, - 0.14371412992477417, - -0.0143812270835042, - 0.0027439752593636513, - -0.0018545370548963547, - 0.08409930765628815, - 0.032359957695007324, - 0.12321692705154419, - 0.050845690071582794, - 0.08650851249694824, - 0.01957816071808338, - 0.042425885796546936, - 0.07798807322978973, - 0.025242211297154427, - 0.017986726015806198, - -0.027062153443694115, - 0.05001316964626312, - -0.041238922625780106, - -0.021431762725114822, - 0.02151731587946415, - -0.011262292042374611, - -0.05123452469706535, - -0.007807143963873386, - -0.02646128460764885, - 0.015259671956300735, - -0.0050367871299386024, - -0.018694862723350525, - 0.03231633082032204, - 0.049393001943826675, - -0.009402278810739517, - 0.08503606170415878, - 0.05327557027339935, - -0.020933054387569427, - 0.0507267564535141, - -0.05928286910057068, - -0.07814568281173706, - 0.0231265090405941, - 0.010647416114807129, - -0.006972522474825382, - 0.054435472935438156, - 0.020305711776018143, - -0.020595472306013107, - 0.07533472031354904, - 0.062298484146595, - 0.0049236612394452095, - 0.038266535848379135, - -0.09032192826271057, - 0.13072529435157776, - 0.08264055848121643, - -0.0016047056997194886, - 0.01971760205924511, - -0.002422597259283066, - 0.06372210383415222, - 0.08181428164243698, - -0.11387448012828827, - -0.06097695976495743, - 0.0058185202069580555, - -0.03437022492289543, - -0.026582656428217888, - 0.10046318173408508, - 0.010077845305204391, - -0.01973363757133484, - 0.12020901590585709, - -0.09582118690013885, - -0.07433643937110901, - -0.017314458265900612, - 0.02952229604125023, - -0.06504113972187042, - 0.019193297252058983, - 0.07229027152061462, - -0.014313793741166592, - 0.006998042576014996, - 0.07392776757478714, - -0.00953326653689146, - 0.013012412935495377, - 0.05263940244913101, - -0.0539824441075325, - 0.05201076343655586, - -0.029374677687883377, - -0.008439918048679829, - 0.07707489281892776, - 0.03963133692741394, - 0.06181463971734047, - -0.03984887897968292, - 0.023428667336702347, - -0.07353004068136215, - 0.007975846529006958, - 0.06959986686706543, - 0.034159399569034576, - -0.020396485924720764, - 0.02756473794579506, - -0.03465186804533005, - -0.09888540208339691, - 0.03113856539130211, - -0.03112836368381977, - 0.10586914420127869, - -0.016313310712575912, - -0.010148300789296627, - 0.10745478421449661, - 0.02456034906208515, - 0.0011929835891351104, - -0.08267434686422348, - -0.036593787372112274, - 0.06966713070869446, - 0.05008133500814438, - -0.09171774238348007, - -0.046621330082416534, - -0.003816711250692606, - 0.03263888135552406, - -0.019197531044483185, - 0.024892134591937065, - 0.07395240664482117, - 0.01321241445839405, - 0.022703152149915695, - -0.06322157382965088, - 0.06555382907390594, - -0.06085039675235748, - -0.014930887147784233, - -0.01683466136455536, - -0.07916229963302612, - -0.021217316389083862, - 0.08617821335792542, - 0.009829986840486526, - -0.009620287455618382, - -0.014620725065469742, - -0.08855455368757248, - -0.05156542360782623, - 0.06566715985536575, - 0.06902584433555603, - -0.0161186084151268, - 0.05520292744040489, - 0.051071230322122574, - -0.02909225970506668, - 0.007875243201851845, - 0.06917604058980942, - 0.10452248156070709, - -0.03878478333353996, - -0.0131932832300663, - -0.09000295400619507, - 0.06527124345302582, - 0.08763380348682404, - -0.10467067360877991, - -0.0676594004034996, - -0.04176659137010574, - -0.031584903597831726, - 0.05053078010678291, - -0.06521078944206238, - -0.02410782314836979, - 0.05019301921129227, - -0.03197476267814636, - -0.09199391305446625, - -0.11977519094944, - 0.12044841796159744, - -0.052169881761074066, - -0.01880607008934021, - -0.07795597612857819, - 0.02965570241212845, - 0.02910565584897995, - 0.028086815029382706, - -0.06644060462713242, - 0.03515669330954552, - 0.046732522547245026, - -0.05202682316303253, - 0.02212521620094776, - 0.04053444415330887, - 0.0047126454301178455, - -0.08312739431858063, - 0.0004059639759361744, - -0.09185010194778442, - 0.0974762812256813, - -0.04912235960364342, - 0.16276174783706665, - -0.021926935762166977, - -0.015017393045127392, - -0.08026532828807831, - 0.0661572590470314, - -0.016571369022130966, - 0.043669480830430984, - 0.0596039779484272, - 0.0794236809015274, - 0.02443462237715721, - -0.04566018655896187, - 0.11101384460926056, - -0.003603626973927021, - -0.005719837266951799, - -0.0508153960108757, - 0.014219369739294052, - -0.07715022563934326, - 0.02015441283583641, - -0.016168801113963127, - -0.102598175406456, - 0.022079816088080406, - 0.03219984471797943, - -0.011841347441077232, - 0.07455947995185852, - 0.11495341360569, - 0.08404475450515747, - -0.0624585822224617 - ] - }, - "p245_299.wav": { - "name": "p245", - "embedding": [ - 0.06525465846061707, - 0.10495209693908691, - 0.03223846107721329, - 0.016825005412101746, - -0.022490717470645905, - 0.0565137080848217, - -0.09467238932847977, - 0.09756150096654892, - -0.04944169148802757, - 0.1523725688457489, - -0.11396205425262451, - 0.10953082144260406, - -0.03651455044746399, - -0.1839219629764557, - -0.08920477330684662, - 0.04318549856543541, - -0.1008606106042862, - 0.0006701675010845065, - -0.06478724628686905, - -0.025530997663736343, - 0.0459497906267643, - 0.054662637412548065, - 0.07263357192277908, - -0.0009710810845717788, - 0.04059436917304993, - 0.07352381944656372, - 0.019158611074090004, - 0.07684890180826187, - 0.04121684283018112, - -0.10462955385446548, - -0.028435807675123215, - 0.12060249596834183, - -0.021402571350336075, - 0.029443880543112755, - 0.02644909732043743, - 0.012790137901902199, - 0.03859560564160347, - -0.03909823298454285, - -0.02449653670191765, - 0.023418409749865532, - -0.022774219512939453, - 0.06648801267147064, - -0.0018441944848746061, - -0.003679991699755192, - 0.03021998703479767, - 0.0245768204331398, - -0.03373754769563675, - -0.04800606891512871, - -0.10045932978391647, - 0.17561951279640198, - 0.06669551879167557, - 0.022984713315963745, - -0.07473025470972061, - -0.0914839655160904, - 0.1033722385764122, - -0.04138606786727905, - -0.1324692666530609, - -0.015400592237710953, - 0.07188437879085541, - 0.1745031625032425, - -0.02837865985929966, - -0.04367165267467499, - 0.029865633696317673, - 0.1106882244348526, - 0.022444233298301697, - 0.085270456969738, - 0.0994037613272667, - 0.05433196946978569, - 0.009999201633036137, - 0.046106431633234024, - 0.0537010096013546, - 0.07132069766521454, - 0.07379911839962006, - -0.026058921590447426, - 0.024111108854413033, - -0.011033689603209496, - -0.020490849390625954, - 0.007766140624880791, - -0.014132874086499214, - 0.0008325775270350277, - -0.012159896083176136, - -0.004228881560266018, - -0.007673243060708046, - -0.030775906518101692, - -0.03162151202559471, - 0.050704240798950195, - -0.02407735399901867, - -0.01223254669457674, - 0.07154654711484909, - 0.057108353823423386, - 0.02514728531241417, - 0.03744937852025032, - -0.03559383004903793, - -0.10221049189567566, - 0.004771812818944454, - 0.006398889701813459, - 0.021163037046790123, - 0.05676198750734329, - 0.05728333070874214, - -0.03295552730560303, - 0.1011909544467926, - 0.057710736989974976, - 0.003964595962315798, - 0.0016684905858710408, - -0.12661729753017426, - 0.09040845185518265, - 0.12222171574831009, - -0.017466116696596146, - 0.03753943368792534, - 0.010324040427803993, - 0.09317605942487717, - 0.10224784910678864, - -0.14613954722881317, - -0.07852289080619812, - -0.01632460206747055, - -0.021364035084843636, - 0.024501658976078033, - 0.046979501843452454, - -0.04010120779275894, - 0.010432679206132889, - 0.09373456984758377, - -0.06838951259851456, - -0.03329191729426384, - -0.04200923815369606, - 0.03089362382888794, - -0.10082848370075226, - 0.04401632770895958, - 0.03614797443151474, - -0.0037154927849769592, - -0.025383666157722473, - 0.08150732517242432, - -0.024260053411126137, - -0.009058866649866104, - -0.0022542846854776144, - -0.06266731023788452, - 0.00518936850130558, - -0.06299592554569244, - 0.00224533979780972, - 0.07850766181945801, - 0.047631315886974335, - 0.030845433473587036, - 0.019286898896098137, - -0.057110559195280075, - -0.08896134048700333, - 0.018198121339082718, - 0.04260723292827606, - 0.008305331692099571, - -0.007923095487058163, - -0.01071025338023901, - -0.03632080554962158, - -0.04154243320226669, - 0.08141613006591797, - -0.0034014841075986624, - 0.07047772407531738, - 0.0032769411336630583, - -0.013654384762048721, - 0.12524522840976715, - -0.009069817140698433, - -0.012858973816037178, - -0.050339873880147934, - -0.012125964276492596, - 0.031177598983049393, - 0.028574947267770767, - -0.0954546183347702, - -0.06267496198415756, - 0.020996076986193657, - 0.009550933726131916, - -0.004062483552843332, - 0.04714687168598175, - 0.06491273641586304, - -0.01572195254266262, - 0.02811150625348091, - -0.040634118020534515, - 0.016217274591326714, - -0.10074228048324585, - -0.07388980686664581, - -0.005860468838363886, - -0.0651792660355568, - -0.002756331115961075, - 0.07921024411916733, - 0.012623680755496025, - -0.006509409751743078, - -0.01404818519949913, - -0.11291965842247009, - -0.06609392911195755, - 0.0731973797082901, - 0.09069140255451202, - 0.043645575642585754, - 0.05095747858285904, - 0.053662076592445374, - -0.026429863646626472, - 0.11103732138872147, - 0.05484195426106453, - 0.13079118728637695, - -0.032712168991565704, - 0.02296675741672516, - -0.06567157804965973, - 0.04224824532866478, - 0.05530143901705742, - -0.08168598264455795, - -0.10931160300970078, - -0.044377122074365616, - -0.0723477303981781, - 0.08402661234140396, - 0.014698334969580173, - 0.009212006814777851, - 0.05181252956390381, - -0.015379744581878185, - -0.07406057417392731, - -0.0743553563952446, - 0.11936365813016891, - -0.026120983064174652, - -0.050299275666475296, - -0.06002526730298996, - 0.049183186143636703, - 0.05959730222821236, - 0.026089487597346306, - -0.0026231701485812664, - 0.04825114831328392, - 0.030927781015634537, - -0.08415275067090988, - -0.05903004854917526, - 0.02372831664979458, - -0.024885375052690506, - -0.0731138363480568, - 0.00032999555696733296, - -0.11139626055955887, - 0.07734385877847672, - -0.06374754756689072, - 0.13184620440006256, - -0.04206470027565956, - -0.06348712742328644, - -0.07138999551534653, - 0.06452766060829163, - -0.05767722800374031, - 0.06281332671642303, - 0.08663783222436905, - 0.05028331279754639, - 0.023744475096464157, - -0.09078331291675568, - 0.09316637367010117, - 0.021749479696154594, - -0.042131755501031876, - -0.07219576835632324, - -0.03430481627583504, - -0.0368807390332222, - -0.003160016844049096, - -0.015943780541419983, - -0.06629819422960281, - 0.01755841262638569, - 0.0013367170467972755, - -0.025492778047919273, - 0.05650454759597778, - 0.10607189685106277, - 0.03448333963751793, - -0.08789954334497452 - ] - }, - "p245_344.wav": { - "name": "p245", - "embedding": [ - 0.05785099416971207, - 0.1109224408864975, - -0.007159736007452011, - 0.008349551819264889, - -0.0435284748673439, - 0.08217641711235046, - -0.13609643280506134, - 0.1284220814704895, - -0.05251353979110718, - 0.14806871116161346, - -0.08109495043754578, - 0.09958012402057648, - -0.014049846678972244, - -0.1978411078453064, - -0.035785600543022156, - 0.051955997943878174, - -0.04597517102956772, - -0.0016738830599933863, - -0.04772093892097473, - -0.010143155232071877, - 0.028294147923588753, - 0.02395155280828476, - 0.00914748478680849, - -0.02986595779657364, - 0.04369159787893295, - 0.05366864055395126, - -0.005277041345834732, - 0.030500197783112526, - -0.005059400107711554, - -0.04588552936911583, - -0.0467258058488369, - 0.13302773237228394, - -0.047579213976860046, - 0.026921693235635757, - 0.08929920196533203, - 0.0012285778066143394, - -0.017531603574752808, - -0.06672068685293198, - -0.010465852916240692, - 0.006913275923579931, - -0.03499038890004158, - 0.07198087126016617, - 0.04544607177376747, - 0.007247472647577524, - 0.04198122397065163, - 0.04771246761083603, - 0.010499674826860428, - -0.06133449077606201, - -0.06975804269313812, - 0.16359329223632812, - 0.04251303896307945, - -0.010465221479535103, - -0.07099996507167816, - -0.07582181692123413, - 0.09738533198833466, - -0.00836309976875782, - -0.11989572644233704, - -0.03652895241975784, - 0.09124121814966202, - 0.1507948487997055, - -0.03502993285655975, - -0.04249962419271469, - -0.0014890988823026419, - 0.11999700963497162, - 0.010711725801229477, - 0.11983908712863922, - 0.05363166332244873, - 0.10856938362121582, - 0.006699001416563988, - 0.04155507683753967, - 0.06656653434038162, - 0.047099314630031586, - 0.052688296884298325, - -0.047392070293426514, - 0.036343201994895935, - -0.005509236361831427, - -0.037099990993738174, - 0.015293164178729057, - -0.03229137510061264, - -0.002235549734905362, - -0.011757569387555122, - 0.0027793976478278637, - 0.019965749233961105, - 0.00708624254912138, - -0.017573408782482147, - 0.032505013048648834, - 0.040242984890937805, - -0.007144433446228504, - 0.07299722731113434, - 0.06345395743846893, - 0.007595045492053032, - 0.05285285413265228, - -0.08416520059108734, - -0.11388155817985535, - 0.04209868982434273, - -0.0005669667152687907, - 0.0016788875218480825, - 0.07130926847457886, - 0.04701681062579155, - -0.017556920647621155, - 0.09558342397212982, - 0.050410110503435135, - -0.0016123120440170169, - 0.03228164091706276, - -0.1072370707988739, - 0.1308879256248474, - 0.08197914063930511, - -0.013330936431884766, - 0.0350673533976078, - -0.06423955410718918, - 0.09303425252437592, - 0.09237924218177795, - -0.16140779852867126, - -0.07283392548561096, - 0.03918175399303436, - -0.008261866867542267, - -0.013359136879444122, - 0.11424532532691956, - -0.02375209704041481, - -0.005212510470300913, - 0.09676734358072281, - -0.09837020933628082, - -0.060571637004613876, - -0.03379792720079422, - 0.025965919718146324, - -0.09258256107568741, - 0.04301176220178604, - 0.044763460755348206, - -0.014842348173260689, - -0.002080074045807123, - 0.08291754871606827, - -0.0008366527035832405, - -0.002387942746281624, - 0.004649616777896881, - -0.019002005457878113, - 0.04031208157539368, - -0.023888621479272842, - 0.022209666669368744, - 0.0252758227288723, - 0.046621281653642654, - 0.03824624419212341, - 0.00593279954046011, - -0.028868485242128372, - -0.08815938234329224, - 0.003064821008592844, - 0.04442959278821945, - 0.06529945135116577, - -0.02092544361948967, - -0.002192132640630007, - -0.028183037415146828, - -0.08209900557994843, - 0.03580604866147041, - -0.026423681527376175, - 0.0711858868598938, - 0.02154758758842945, - -0.004989531822502613, - 0.12286464124917984, - 0.03290189057588577, - -0.005588519386947155, - -0.07340742647647858, - -0.026646949350833893, - 0.029122980311512947, - 0.05568907409906387, - -0.11040371656417847, - -0.06192261725664139, - 0.0011645122431218624, - -0.016356736421585083, - -0.025905780494213104, - 0.02242409810423851, - 0.04045805335044861, - 0.02268514223396778, - 0.05503729358315468, - -0.07334285229444504, - 0.0019255736842751503, - -0.13436110317707062, - -0.05416038632392883, - -0.025928620249032974, - -0.039887990802526474, - -0.010550256818532944, - 0.09001092612743378, - -0.0047018942423164845, - 0.01399797573685646, - -0.02610042691230774, - -0.05919145047664642, - -0.046540625393390656, - 0.08017183840274811, - 0.08122405409812927, - 0.0015265726251527667, - 0.03560664504766464, - 0.026534922420978546, - -0.023910829797387123, - 0.040683895349502563, - 0.07533729076385498, - 0.11010071635246277, - -0.022893184795975685, - 0.03910081833600998, - -0.07094786316156387, - 0.11056504398584366, - 0.07315543293952942, - -0.09186962246894836, - -0.11349812895059586, - -0.015909504145383835, - -0.037440814077854156, - 0.027942873537540436, - -0.0347382128238678, - -0.009762267582118511, - 0.004904330708086491, - -0.018296372145414352, - -0.0684630423784256, - -0.08263783156871796, - 0.0775475949048996, - -0.05198180675506592, - -0.013393385335803032, - -0.08564633131027222, - 0.061585888266563416, - 0.08239369839429855, - 0.040338799357414246, - -0.05126342922449112, - 0.005704818293452263, - 0.06052856519818306, - -0.060382381081581116, - -0.01515639666467905, - 0.016332531347870827, - 0.01277819462120533, - -0.08798089623451233, - 0.018368098884820938, - -0.04996307194232941, - 0.08702942728996277, - -0.0796576589345932, - 0.16390392184257507, - -0.014727666042745113, - -0.07781647145748138, - -0.05855898559093475, - 0.03564026579260826, - -0.015868691727519035, - 0.01871754601597786, - 0.04221160337328911, - 0.06321880221366882, - 0.021970443427562714, - -0.05272405967116356, - 0.1074758768081665, - 0.005036352202296257, - -0.0061488039791584015, - -0.04770372807979584, - -0.04779090732336044, - -0.04319775104522705, - 0.02141861990094185, - -0.0026098531670868397, - -0.1130748987197876, - 0.007606293074786663, - 0.03627312183380127, - -0.013938918709754944, - 0.052663687616586685, - 0.13975360989570618, - 0.06305785477161407, - -0.12126585841178894 - ] - }, - "p245_360.wav": { - "name": "p245", - "embedding": [ - 0.04818341135978699, - 0.0892372876405716, - -0.023963045328855515, - 0.03353828936815262, - -0.0587724894285202, - 0.04637666046619415, - -0.1390831172466278, - 0.13001206517219543, - -0.028515413403511047, - 0.13336704671382904, - -0.06780992448329926, - 0.12324316054582596, - -0.00434302631765604, - -0.20527401566505432, - -0.03509523347020149, - 0.052356064319610596, - -0.05108198896050453, - -0.04220440983772278, - -0.02751733362674713, - -0.024607710540294647, - 0.05460461974143982, - 0.0598616898059845, - 0.024827798828482628, - -0.0009294659830629826, - 0.0215434767305851, - 0.06283250451087952, - 0.007106424774974585, - 0.04856424406170845, - 0.019958490505814552, - -0.05086905509233475, - -0.04544483870267868, - 0.11000079661607742, - -0.04285122826695442, - 0.010822150856256485, - 0.04023807495832443, - -0.0172361321747303, - 0.004100871738046408, - -0.05445122346282005, - -0.03459722921252251, - 0.019841361790895462, - -0.04251132905483246, - 0.07924088835716248, - 0.049969062209129333, - -0.007279278244823217, - 0.049436770379543304, - 0.02144922874867916, - -0.02620839700102806, - -0.05495361238718033, - -0.10778412222862244, - 0.17434734106063843, - 0.07190129160881042, - 0.004165538586676121, - -0.05924128741025925, - -0.06530208140611649, - 0.1076882928609848, - -0.005999373272061348, - -0.11085349321365356, - -0.033510591834783554, - 0.07840707898139954, - 0.15708011388778687, - -0.020719420164823532, - -0.04222678393125534, - 0.035200491547584534, - 0.12964297831058502, - 0.0483706071972847, - 0.08025745302438736, - 0.07878462970256805, - 0.10153041779994965, - -0.007564951665699482, - 0.014279303140938282, - 0.062808096408844, - 0.08337651193141937, - 0.03345275670289993, - -0.027589987963438034, - 0.032149627804756165, - 0.010095231235027313, - -0.02473561465740204, - -0.0009514203993603587, - -0.01662163808941841, - -0.0019060338381677866, - -0.0013230836484581232, - 0.011667110957205296, - 0.008785568177700043, - 0.02372272126376629, - -0.03692757338285446, - 0.05743300914764404, - 0.034976400434970856, - -0.001934751751832664, - 0.06716115772724152, - 0.034734297543764114, - 0.01959652453660965, - 0.06311195343732834, - -0.07915162295103073, - -0.09368149936199188, - 0.033322520554065704, - 0.011361178010702133, - 0.02762276493012905, - 0.07484801113605499, - 0.04263082146644592, - -0.02613668702542782, - 0.12353827804327011, - 0.04825718328356743, - -0.017903637140989304, - 0.029046356678009033, - -0.09762896597385406, - 0.11958770453929901, - 0.09574230760335922, - -0.016620857641100883, - 0.05462227016687393, - -0.05322267860174179, - 0.08577287197113037, - 0.06266245990991592, - -0.1443309336900711, - -0.07345615327358246, - 0.043604299426078796, - 0.026158498600125313, - -0.012653142213821411, - 0.13935181498527527, - -0.006468495354056358, - 0.03820013999938965, - 0.10803616046905518, - -0.08957557380199432, - -0.059089384973049164, - -0.03278517723083496, - 0.05207153409719467, - -0.09878183901309967, - 0.06484998762607574, - 0.05092233419418335, - -0.021630026400089264, - 0.005786439403891563, - 0.07191776484251022, - -0.019467100501060486, - 0.009732222184538841, - 0.0004570989403873682, - -0.03916069120168686, - 0.034367792308330536, - -0.03271656483411789, - 0.0025011892430484295, - 0.042799726128578186, - 0.02957453764975071, - 0.047085750848054886, - -0.0011959981638938189, - -0.03680147975683212, - -0.13563141226768494, - 0.020480960607528687, - 0.026251450181007385, - 0.07421793043613434, - -0.007241176441311836, - -0.0312972366809845, - -0.04691696912050247, - -0.07139088213443756, - 0.019030258059501648, - -0.01212640292942524, - 0.07105046510696411, - -0.00853114016354084, - -0.0007098466157913208, - 0.0941433310508728, - 0.023770665749907494, - -0.0034995628520846367, - -0.03423214703798294, - -0.043204404413700104, - 0.013585953041911125, - 0.046025656163692474, - -0.08780065178871155, - -0.0678306445479393, - -0.0053627812303602695, - 0.026609428226947784, - -0.019446764141321182, - 0.03454305976629257, - 0.04616714268922806, - 0.023568496108055115, - 0.036026448011398315, - -0.08049984276294708, - 0.02272200398147106, - -0.1157190352678299, - -0.073982372879982, - -0.016189996153116226, - -0.0065652416087687016, - -0.02246159315109253, - 0.08463318645954132, - 0.009956256486475468, - 0.043271202594041824, - -0.019988102838397026, - -0.061487823724746704, - -0.07361534237861633, - 0.06201750785112381, - 0.07731617242097855, - 0.009294477291405201, - 0.05246388912200928, - 0.04720202833414078, - -0.028537709265947342, - 0.05688081309199333, - 0.04749014228582382, - 0.10813334584236145, - -0.01687084697186947, - 0.014279123395681381, - -0.06130410358309746, - 0.09323512017726898, - 0.07583028823137283, - -0.09023593366146088, - -0.08087369054555893, - -0.022342924028635025, - -0.06757941842079163, - 0.04381515085697174, - -0.016919147223234177, - 0.00869122613221407, - 0.02092628926038742, - 0.005649100057780743, - -0.10753688216209412, - -0.08004668354988098, - 0.06542098522186279, - -0.06795226037502289, - -0.015878837555646896, - -0.08632469177246094, - 0.048127323389053345, - 0.1169637143611908, - 0.03337424620985985, - -0.03121248260140419, - -0.026110628619790077, - 0.04236619919538498, - -0.044278666377067566, - 0.004427822306752205, - 0.04517524689435959, - 0.04218100756406784, - -0.10436249524354935, - 0.0029109488241374493, - -0.07495289295911789, - 0.05299672856926918, - -0.059955574572086334, - 0.14652499556541443, - 0.014607176184654236, - -0.0617627277970314, - -0.08570197224617004, - 0.05610182136297226, - -0.011980456300079823, - 0.04974393546581268, - 0.036598946899175644, - 0.053706955164670944, - 0.044027894735336304, - -0.07756789028644562, - 0.10961734503507614, - 0.03991749882698059, - -0.03993002325296402, - -0.06623899191617966, - -0.02951471321284771, - -0.03404852747917175, - 0.038766007870435715, - 0.026224222034215927, - -0.08289890736341476, - -0.029031813144683838, - 0.029849905520677567, - -0.013806086964905262, - 0.06660966575145721, - 0.13615640997886658, - 0.04583241790533066, - -0.12063522636890411 - ] - }, - "p245_090.wav": { - "name": "p245", - "embedding": [ - 0.04064396768808365, - 0.08127425611019135, - 0.0626651868224144, - 0.010515211150050163, - -0.0006475523114204407, - 0.006266243755817413, - -0.06174740567803383, - 0.0465511754155159, - 0.02600579708814621, - 0.0719980001449585, - -0.08814815431833267, - 0.07031863927841187, - -0.05689362809062004, - -0.12588611245155334, - -0.054793424904346466, - 0.0026247650384902954, - -0.08458973467350006, - -0.019523780792951584, - -0.022977255284786224, - -0.027991391718387604, - 0.01419652346521616, - -0.005771474912762642, - 0.07965461164712906, - -0.03457125648856163, - -0.025750059634447098, - 0.059703342616558075, - 0.012465003877878189, - 0.02703074924647808, - 0.03189624100923538, - -0.021269138902425766, - 0.03828392177820206, - 0.016185134649276733, - 0.008575506508350372, - 0.01700453646481037, - 0.030969278886914253, - 0.012255815789103508, - 0.0023500584065914154, - -0.018851539120078087, - -0.03283969312906265, - 0.054762423038482666, - -0.051807552576065063, - 0.054250169545412064, - 0.03277702257037163, - -0.06027974560856819, - 0.06507537513971329, - 0.01832493022084236, - -0.04006722941994667, - 0.010587694123387337, - -0.11249355971813202, - 0.10613133013248444, - 0.02595362439751625, - 0.02173946425318718, - -0.046614184975624084, - 0.001112576574087143, - 0.07961267232894897, - -0.022676020860671997, - -0.10368247330188751, - -0.020038418471813202, - 0.062287941575050354, - 0.05499210208654404, - -0.038513362407684326, - -0.03270542994141579, - -0.03815265744924545, - 0.0267141405493021, - 0.05871954560279846, - 0.028176359832286835, - 0.10708551853895187, - 0.08919653296470642, - -0.004631532821804285, - 0.028754757717251778, - 0.06231595575809479, - 0.01567215472459793, - 0.027146045118570328, - 0.004878790117800236, - 0.015389010310173035, - -0.03102223202586174, - -0.006385800428688526, - -0.004703775513917208, - 0.009810584597289562, - -0.01857198029756546, - 0.018842706456780434, - -0.03814390301704407, - 0.019134651869535446, - 0.011757351458072662, - -0.028971102088689804, - 0.017234614118933678, - 0.02773413062095642, - 0.03158588334918022, - 0.04936652630567551, - 0.0501798540353775, - -0.005821910221129656, - 0.058594685047864914, - -0.02979329042136669, - -0.08756905049085617, - -0.050675250589847565, - -0.03978967294096947, - 0.04243859648704529, - 0.037334974855184555, - 0.03551529347896576, - 0.019609754905104637, - 0.0737939178943634, - 0.02514183335006237, - -0.034302689135074615, - 0.0092157032340765, - -0.08985643833875656, - 0.03873419761657715, - 0.07328743487596512, - -0.012470136396586895, - -0.005603881552815437, - -0.0046141669154167175, - 0.08125514537096024, - 0.06594736129045486, - -0.02226751297712326, - 0.0002889372408390045, - 0.01647973246872425, - 0.03091169334948063, - 0.011780399829149246, - 0.07843362540006638, - -0.02702299878001213, - 0.0038549555465579033, - 0.13695725798606873, - -0.050181373953819275, - 0.005859868600964546, - -0.012817978858947754, - -0.010104721412062645, - -0.03332233428955078, - 0.030030228197574615, - 0.011784368194639683, - -0.00015557464212179184, - -0.004663496743887663, - 0.048312947154045105, - 0.019948840141296387, - -0.01283595897257328, - -0.04992695897817612, - -0.0158180333673954, - 0.06533131003379822, - -0.00957013200968504, - 0.007416803855448961, - 0.07714344561100006, - 0.0678035318851471, - 0.031001625582575798, - 0.045978475362062454, - -0.03039032220840454, - -0.022971563041210175, - 0.0387633852660656, - 0.03797642141580582, - 0.01062517799437046, - -0.0077188946306705475, - -0.054019927978515625, - -0.06872181594371796, - 0.011401109397411346, - 0.0697874128818512, - -0.0304543599486351, - 0.060097914189100266, - 0.01463514007627964, - -0.010936297476291656, - 0.08449341356754303, - -0.010837298817932606, - -0.009675005450844765, - -0.0336470901966095, - -0.08266518265008926, - -0.015317079611122608, - 0.025599392130970955, - -0.15433835983276367, - -0.03613152354955673, - -0.050635382533073425, - 0.01456288993358612, - 0.008349638432264328, - 0.00025600194931030273, - 0.06447562575340271, - -0.023840826004743576, - -0.005452310666441917, - -0.012684334069490433, - 0.009937944822013378, - -0.034454409033060074, - -0.07915346324443817, - 0.00742768682539463, - -0.031095465645194054, - 0.022986911237239838, - 0.05516264960169792, - -0.05528753623366356, - 0.015599982813000679, - -0.024020100012421608, - -0.0912422388792038, - -0.023345571011304855, - 0.07813675701618195, - 0.01678263209760189, - 0.007619466166943312, - 0.05370423197746277, - 0.043600715696811676, - -0.057052865624427795, - 0.056252673268318176, - -0.033938370645046234, - 0.08170104771852493, - -0.07578510046005249, - 0.012209897860884666, - -0.0052476003766059875, - 0.021156426519155502, - 0.07137377560138702, - -0.04816038906574249, - -0.08887307345867157, - -0.03825104236602783, - -0.034095779061317444, - 0.020649783313274384, - -0.021899720653891563, - -0.05128190666437149, - 0.01892632246017456, - -0.01499510370194912, - -0.05113307014107704, - -0.09644712507724762, - 0.017037585377693176, - -0.006728529930114746, - -0.002356880810111761, - -0.0784783661365509, - 0.015572423115372658, - -0.008868716657161713, - 0.021705541759729385, - -0.012285393662750721, - 0.06398647278547287, - -0.00813133642077446, - -0.01981765776872635, - -0.03380812704563141, - 0.010599728673696518, - 0.043498069047927856, - 0.015872284770011902, - -0.06370401382446289, - -0.05483846738934517, - 0.03882104158401489, - 0.003696262836456299, - 0.06969879567623138, - 0.02077825553715229, - 0.0002292674034833908, - 0.028231801465153694, - -6.337091326713562e-05, - -0.037019550800323486, - 0.04078030586242676, - 0.05615423619747162, - 0.01964956894516945, - 0.0013615414500236511, - -0.03153536841273308, - 0.09341824054718018, - 0.03599722683429718, - -0.0029991213232278824, - -0.03623276948928833, - 0.015962064266204834, - -0.06498231738805771, - -0.056303344666957855, - 0.0014917273074388504, - -0.05723215267062187, - 0.017543850466609, - -0.004169324412941933, - 0.018473897129297256, - 0.005040300078690052, - 0.08774666488170624, - 0.03280787914991379, - 0.00721321627497673 - ] - }, - "p245_330.wav": { - "name": "p245", - "embedding": [ - 0.028775177896022797, - 0.0942976251244545, - -0.007552044931799173, - 0.008686493150889874, - -0.050842370837926865, - 0.04642527550458908, - -0.1547546088695526, - 0.14853498339653015, - -0.04556361213326454, - 0.1401551365852356, - -0.07498010993003845, - 0.09947290271520615, - -0.028957396745681763, - -0.20971153676509857, - -0.024361716583371162, - 0.05742349475622177, - -0.049325551837682724, - -0.03760281205177307, - -0.028330618515610695, - -0.036062952131032944, - 0.04246811196208, - 0.05712404474616051, - 0.0010933857411146164, - 0.006788269616663456, - 0.035417355597019196, - 0.060848068445920944, - -0.00593825476244092, - 0.022392529994249344, - -0.002645763335749507, - -0.04228941351175308, - -0.02704721689224243, - 0.10263815522193909, - -0.04541067034006119, - -0.0016553238965570927, - 0.04527520015835762, - -0.012980104424059391, - 0.005061643663793802, - -0.05632397159934044, - -0.035657983273267746, - 0.021175328642129898, - -0.05598392337560654, - 0.07094807922840118, - 0.04540979862213135, - 0.009661754593253136, - 0.048433270305395126, - 0.03346649929881096, - -0.015975601971149445, - -0.0627770870923996, - -0.10571716725826263, - 0.1799689680337906, - 0.06859327852725983, - -0.0010220753028988838, - -0.06429551541805267, - -0.077412910759449, - 0.11247684061527252, - -0.0012093563564121723, - -0.1156325712800026, - -0.03648144379258156, - 0.09239096939563751, - 0.16624177992343903, - -0.019953126087784767, - -0.04572741314768791, - 0.040032509714365005, - 0.1287534534931183, - 0.02503649890422821, - 0.08262725919485092, - 0.06323330104351044, - 0.08655506372451782, - -0.009852055460214615, - 4.258615444996394e-05, - 0.06674792617559433, - 0.05819473788142204, - 0.02464931644499302, - -0.04103938490152359, - 0.022542722523212433, - 0.011651113629341125, - -0.031608715653419495, - -0.0006100579630583525, - -0.017362941056489944, - -0.006360533647239208, - -0.00681935902684927, - 0.019258219748735428, - -0.004623271990567446, - 0.01647677831351757, - -0.02628968469798565, - 0.04284828156232834, - 0.02720942720770836, - 0.0063293566927313805, - 0.08645815402269363, - 0.03611991927027702, - 0.02872610278427601, - 0.06712743639945984, - -0.07143925130367279, - -0.07111746072769165, - 0.028093665838241577, - 0.011730422265827656, - 0.008528018370270729, - 0.07223747670650482, - 0.046128008514642715, - -0.027298910543322563, - 0.13931550085544586, - 0.04103231057524681, - 0.004401904530823231, - 0.025906242430210114, - -0.11898987740278244, - 0.11477471888065338, - 0.07792922109365463, - -0.026407528668642044, - 0.058479174971580505, - -0.04493040218949318, - 0.07228315621614456, - 0.06652665138244629, - -0.152790829539299, - -0.07113491743803024, - 0.03901821747422218, - 0.034688226878643036, - -0.020282993093132973, - 0.15232884883880615, - -0.0008881477988325059, - 0.027568671852350235, - 0.10801813006401062, - -0.0980055034160614, - -0.06507053226232529, - -0.024508953094482422, - 0.060099925845861435, - -0.09166676551103592, - 0.05855695903301239, - 0.07104960829019547, - -0.029177578166127205, - 0.02858414128422737, - 0.06988789141178131, - -0.017563609406352043, - 0.020906032994389534, - -0.016088807955384254, - -0.03398805856704712, - 0.029657838866114616, - -0.036932263523340225, - 0.000521114852745086, - 0.030030759051442146, - 0.042283255606889725, - 0.04619602859020233, - 0.004907483235001564, - -0.05178247392177582, - -0.12175274640321732, - 0.015008042566478252, - 0.01987510174512863, - 0.07778052240610123, - -0.003235435811802745, - -0.020022328943014145, - -0.044971998780965805, - -0.06584125012159348, - -0.004014094825834036, - -0.005116398446261883, - 0.09099182486534119, - -0.011174105107784271, - -0.0026409414131194353, - 0.1033637747168541, - 0.0485977828502655, - -0.004749538376927376, - -0.04129302501678467, - -0.046134140342473984, - -0.001764293061569333, - 0.0420251227915287, - -0.08176632225513458, - -0.06909742951393127, - -0.011056512594223022, - 0.04126637801527977, - -0.003850417211651802, - 0.04995927959680557, - 0.03722752258181572, - 0.024100279435515404, - 0.027754345908761024, - -0.09293355792760849, - 0.03915109857916832, - -0.10830654948949814, - -0.0761324018239975, - -0.006361217238008976, - -0.012022493407130241, - -0.0258127823472023, - 0.09199270606040955, - 0.002167552476748824, - 0.03620534390211105, - -0.017047669738531113, - -0.06860188394784927, - -0.07338572293519974, - 0.055204544216394424, - 0.07647529244422913, - -0.011820715852081776, - 0.04574711248278618, - 0.0529719814658165, - -0.04489642381668091, - 0.053750310093164444, - 0.05419224128127098, - 0.11394426226615906, - -0.022352589294314384, - 0.02878769114613533, - -0.05205736309289932, - 0.08080983906984329, - 0.05842039734125137, - -0.08768323063850403, - -0.07520138472318649, - -0.023953553289175034, - -0.06678587943315506, - 0.04522787407040596, - -0.00245091924443841, - 0.01864619180560112, - 0.0017047241562977433, - -0.0016624588752165437, - -0.09359132498502731, - -0.06657226383686066, - 0.05649025738239288, - -0.05803738534450531, - -0.016047485172748566, - -0.08337128162384033, - 0.05354076251387596, - 0.11559978127479553, - 0.049841102212667465, - -0.015008434653282166, - -0.03896990790963173, - 0.03340882807970047, - -0.038215503096580505, - 0.0042031267657876015, - 0.05201674625277519, - 0.03596038743853569, - -0.09438767284154892, - 0.0034492751583456993, - -0.08936912566423416, - 0.07114681601524353, - -0.053649820387363434, - 0.14778290688991547, - 0.014951919205486774, - -0.06981822103261948, - -0.1001640185713768, - 0.0405099056661129, - -0.010781927965581417, - 0.048182617872953415, - 0.023616915568709373, - 0.06275665014982224, - 0.06097223609685898, - -0.040008544921875, - 0.1036645770072937, - 0.03136811405420303, - -0.03299437835812569, - -0.04510760307312012, - -0.03755544498562813, - -0.03452673926949501, - 0.018769390881061554, - 0.006894656457006931, - -0.0962354764342308, - -0.023216702044010162, - 0.024768684059381485, - 0.002940610283985734, - 0.08153677731752396, - 0.1194208562374115, - 0.04961024224758148, - -0.1429012417793274 - ] - }, - "p245_005.wav": { - "name": "p245", - "embedding": [ - 0.025751689448952675, - 0.09247411042451859, - -0.01481679081916809, - 0.002580709755420685, - -0.047820497304201126, - 0.031276993453502655, - -0.15323218703269958, - 0.13633522391319275, - -0.0312531478703022, - 0.12312326580286026, - -0.05915254354476929, - 0.10241879522800446, - -0.04438268765807152, - -0.16465875506401062, - -0.013169439509510994, - 0.06484699249267578, - -0.02492721937596798, - -0.03713805228471756, - 0.012213650159537792, - -0.02052169106900692, - 0.028823306784033775, - 0.019845543429255486, - 0.010030052624642849, - 0.0174336526542902, - 0.01750507764518261, - 0.07105695456266403, - -0.0018580554751679301, - 0.023838896304368973, - -8.113496005535126e-05, - -0.0011915796203538775, - -0.012518675997853279, - 0.08900490403175354, - -0.039401229470968246, - 0.007327149156481028, - 0.061140816658735275, - 0.0033923436421900988, - -0.008418516255915165, - -0.0373876616358757, - 0.009603055194020271, - -0.0022687034215778112, - -0.05736105516552925, - 0.08183414489030838, - 0.03330230340361595, - -0.003914451692253351, - 0.03413618728518486, - 0.030132634565234184, - -0.00441955029964447, - -0.01882593147456646, - -0.08758299052715302, - 0.13185621798038483, - 0.0608295276761055, - 0.009664368815720081, - -0.06682051718235016, - -0.034202467650175095, - 0.08539756387472153, - -0.013197868131101131, - -0.09733202308416367, - -0.05651670694351196, - 0.07982601225376129, - 0.1298866719007492, - -0.02178170159459114, - -0.041950952261686325, - 0.020245349034667015, - 0.11902689933776855, - 0.029456421732902527, - 0.07493413984775543, - 0.06037766858935356, - 0.10166652500629425, - -0.02030940353870392, - -0.009444179013371468, - 0.053118105977773666, - 0.05621718242764473, - 0.025752825662493706, - -0.015468365512788296, - 0.010053319856524467, - -0.012781363911926746, - -0.008865932933986187, - 0.012631827965378761, - -0.014924371615052223, - -0.03145730495452881, - -0.05392680689692497, - 0.004488821607083082, - -0.023478878661990166, - 0.026279447600245476, - 0.005703621078282595, - 0.03302256390452385, - 0.05726640298962593, - -0.012014302425086498, - 0.08122263103723526, - 0.042374927550554276, - -0.008360168896615505, - 0.04747333750128746, - -0.0784466490149498, - -0.04162577539682388, - 0.02184409275650978, - -0.007953012362122536, - 0.03751415014266968, - 0.06978607922792435, - 0.02579343318939209, - 0.016692832112312317, - 0.1087413802742958, - 0.03914780169725418, - 0.004087178036570549, - 0.007513151969760656, - -0.09907539933919907, - 0.1404232233762741, - 0.06030994653701782, - -0.0458175390958786, - 0.03655023127794266, - -0.032442737370729446, - 0.023660805076360703, - 0.042734142392873764, - -0.10230907052755356, - -0.05554288253188133, - 0.030258584767580032, - 0.044573355466127396, - -0.022863119840621948, - 0.12222959101200104, - 0.004582211375236511, - 0.022670665755867958, - 0.10225160419940948, - -0.07203736156225204, - -0.08265693485736847, - -0.023847756907343864, - 0.035272691398859024, - -0.08250445127487183, - 0.06003674864768982, - 0.07833289355039597, - 0.007364712655544281, - 0.027607271447777748, - 0.08703519403934479, - 0.0236942358314991, - 0.019190281629562378, - -0.005353455897420645, - -0.02498854510486126, - 0.01818469725549221, - -0.02052154950797558, - 0.020734982565045357, - 0.03831108286976814, - 0.028344979509711266, - 0.06835141032934189, - 0.026013633236289024, - -0.014806079678237438, - -0.11593671143054962, - -0.0050568473525345325, - 0.05435812473297119, - 0.06633037328720093, - -0.027806712314486504, - -0.043762363493442535, - -0.02780364826321602, - -0.05236717686057091, - -0.02628963626921177, - 0.0030397993978112936, - 0.08151530474424362, - -0.022789010778069496, - -0.005302906036376953, - 0.09771472215652466, - 0.02625555731356144, - -0.004160396289080381, - -0.06628470122814178, - -0.026820192113518715, - -0.005690340884029865, - 0.039222847670316696, - -0.09614644199609756, - -0.0746803879737854, - -0.0171371977776289, - 0.0507940910756588, - -0.004642564337700605, - 0.05241745337843895, - 0.057788994163274765, - 0.013224628753960133, - 0.015903351828455925, - -0.045140378177165985, - 0.035480767488479614, - -0.0744086354970932, - -0.0786619707942009, - -0.02025953121483326, - -0.004782547242939472, - -0.029815783724188805, - 0.07740012556314468, - 0.006323916371911764, - 0.06174571067094803, - -0.005351876374334097, - -0.06544952839612961, - -0.08191382139921188, - 0.049945052713155746, - 0.05891530588269234, - -0.03241581842303276, - 0.04496927559375763, - 0.04943684861063957, - -0.05588522180914879, - 0.023241456598043442, - 0.04074364900588989, - 0.10572715103626251, - -0.06369687616825104, - 0.019643960520625114, - -0.05950211361050606, - 0.05306880548596382, - 0.07781235128641129, - -0.09480667859315872, - -0.06370726972818375, - -0.03584478050470352, - -0.041032467037439346, - 0.019404901191592216, - -0.032237228006124496, - 0.0116353090852499, - 0.006078171543776989, - -0.025051867589354515, - -0.08602433651685715, - -0.10105009377002716, - 0.04299122467637062, - -0.0635981485247612, - 0.012628167867660522, - -0.06944680958986282, - 0.04417206719517708, - 0.057485032826662064, - 0.033591967076063156, - -0.040401894599199295, - -0.01090376265347004, - 0.02220587246119976, - -0.02587585709989071, - 0.002378108911216259, - 0.05339096859097481, - 0.04920055344700813, - -0.06807062029838562, - -0.015053587034344673, - -0.08359590172767639, - 0.06522922217845917, - -0.04064479470252991, - 0.1401396095752716, - 0.00669890409335494, - -0.051161497831344604, - -0.0719616636633873, - -0.01930060237646103, - -0.01189219206571579, - 0.034772831946611404, - 0.030210062861442566, - 0.057875823229551315, - 0.02430647611618042, - -0.022067708894610405, - 0.11881152540445328, - 0.04928240925073624, - -0.022224219515919685, - -0.060008931905031204, - -0.030271828174591064, - -0.04335605353116989, - 0.03636306896805763, - 0.014109629206359386, - -0.10383329540491104, - -0.01007533073425293, - 0.017167722806334496, - 0.003292742418125272, - 0.07619378715753555, - 0.11934701353311539, - 0.061288367956876755, - -0.11134073883295059 - ] - }, - "p245_338.wav": { - "name": "p245", - "embedding": [ - 0.04102391004562378, - 0.09404051303863525, - -0.013703575357794762, - 0.043323636054992676, - -0.0589664988219738, - 0.0326029509305954, - -0.12760983407497406, - 0.14680981636047363, - -0.02417687140405178, - 0.12538829445838928, - -0.08796220272779465, - 0.11340855807065964, - -0.03165631368756294, - -0.19505028426647186, - -0.02535703033208847, - 0.07253023982048035, - -0.047131799161434174, - -0.04184499382972717, - -0.037942349910736084, - -0.01847253367304802, - 0.038353584706783295, - 0.04341405630111694, - 0.028912773355841637, - 0.03292600065469742, - 0.0030481999274343252, - 0.06400053203105927, - -0.005463878624141216, - 0.04588539898395538, - 0.031159546226263046, - -0.013155660592019558, - -0.03663887083530426, - 0.11392031610012054, - -0.023835692554712296, - 0.009370487183332443, - 0.050447773188352585, - -0.006495075300335884, - -0.004920381121337414, - -0.05598188936710358, - -0.033462539315223694, - -0.007103222422301769, - -0.060744114220142365, - 0.06411627680063248, - 0.03661311790347099, - -0.008307775482535362, - 0.07547600567340851, - 0.020827434957027435, - -0.050890058279037476, - -0.050755392760038376, - -0.11806660145521164, - 0.15462371706962585, - 0.09738489240407944, - -0.0014778965851292014, - -0.06550323963165283, - -0.051741503179073334, - 0.09798663854598999, - -0.019104696810245514, - -0.11481021344661713, - -0.04825432598590851, - 0.0923953503370285, - 0.15434959530830383, - -0.01551961712539196, - -0.020738907158374786, - 0.0250251404941082, - 0.15619820356369019, - 0.05627680569887161, - 0.09270654618740082, - 0.062010325491428375, - 0.11288772523403168, - -0.03001170977950096, - 0.017727412283420563, - 0.07268472015857697, - 0.0596601627767086, - 0.035544008016586304, - -0.012070360593497753, - 0.019215280190110207, - 0.012073686346411705, - -0.017725301906466484, - 0.007525689899921417, - -0.034538932144641876, - -0.007980989292263985, - -0.025446800515055656, - 0.009731393307447433, - -0.016469363123178482, - 0.010556772351264954, - -0.01962146908044815, - 0.06840859353542328, - 0.04780596122145653, - 0.0061414241790771484, - 0.06742027401924133, - 0.04598572850227356, - 0.004867593292146921, - 0.06456311792135239, - -0.06450364738702774, - -0.086041659116745, - 0.009608002379536629, - -0.001914256950840354, - 0.024147581309080124, - 0.06559255719184875, - 0.02723701111972332, - -0.01865668222308159, - 0.1240086778998375, - 0.04605934023857117, - -0.01619747094810009, - 0.04223329573869705, - -0.10692392289638519, - 0.126690074801445, - 0.08142156898975372, - -0.021290220320224762, - 0.040113888680934906, - -0.03608899936079979, - 0.07253705710172653, - 0.07166515290737152, - -0.12288157641887665, - -0.04304562136530876, - 0.029197407886385918, - 0.014444700442254543, - -0.027562733739614487, - 0.11656133830547333, - 0.004667364992201328, - 0.042792391031980515, - 0.11476494371891022, - -0.07899925112724304, - -0.0684492439031601, - -0.02288840524852276, - 0.04763060808181763, - -0.09656398743391037, - 0.053603172302246094, - 0.05281418561935425, - -0.007395615801215172, - 0.010420829057693481, - 0.07941490411758423, - -0.005900798365473747, - 0.00013526731345336884, - 0.014369579032063484, - -0.06391957402229309, - 0.030904870480298996, - -0.03508904576301575, - -0.003078195033594966, - 0.04659448564052582, - 0.040982797741889954, - 0.040698982775211334, - -0.0021367508452385664, - -0.018278196454048157, - -0.10974903404712677, - 0.010570976883172989, - 0.031058212742209435, - 0.08584713935852051, - 0.008872914128005505, - -0.01721477322280407, - -0.04305783659219742, - -0.0623776875436306, - 0.005800226703286171, - -0.02083773724734783, - 0.06063871830701828, - -0.04043854400515556, - -0.013258038088679314, - 0.0933605283498764, - 0.009024466387927532, - 0.003986444789916277, - -0.047592610120773315, - -0.03874823451042175, - 0.011362962424755096, - 0.05025026202201843, - -0.08625790476799011, - -0.07113875448703766, - 0.011010151356458664, - 0.03381587564945221, - -0.025479283183813095, - 0.03287027031183243, - 0.02819760888814926, - 0.010258961468935013, - 0.023746557533740997, - -0.07637040317058563, - 0.029231026768684387, - -0.11355855315923691, - -0.07538261264562607, - -0.007543667685240507, - -0.0021072616800665855, - -0.0033139530569314957, - 0.05932000279426575, - 0.008054036647081375, - 0.039663612842559814, - 0.010288329795002937, - -0.09107789397239685, - -0.09306816756725311, - 0.0720660462975502, - 0.07757392525672913, - 0.007989971898496151, - 0.0750846266746521, - 0.0554271899163723, - -0.05560479313135147, - 0.048159655183553696, - 0.030037513002753258, - 0.11011700332164764, - -0.019759507849812508, - 0.013727596960961819, - -0.08091473579406738, - 0.05746433138847351, - 0.09096956253051758, - -0.11060699820518494, - -0.08227789402008057, - -0.025494307279586792, - -0.050003327429294586, - 0.039126306772232056, - -0.026564180850982666, - -0.003959990106523037, - 0.04524245113134384, - -0.009651796892285347, - -0.11342038959264755, - -0.08504398912191391, - 0.07966822385787964, - -0.07838701456785202, - -0.0018658809131011367, - -0.0688696950674057, - 0.03626197576522827, - 0.0955563336610794, - 0.01767021417617798, - -0.04212246090173721, - -0.017780475318431854, - 0.0479314848780632, - -0.044675808399915695, - -0.010200833901762962, - 0.032487496733665466, - 0.0371989831328392, - -0.11207787692546844, - -0.001362629234790802, - -0.07121067494153976, - 0.06254415214061737, - -0.04630634933710098, - 0.14817757904529572, - 0.017550859600305557, - -0.045733314007520676, - -0.08875660598278046, - 0.03624237701296806, - -0.004451698623597622, - 0.05125384032726288, - 0.029379427433013916, - 0.05633626878261566, - 0.02399054914712906, - -0.06488151848316193, - 0.129984050989151, - 0.03490384668111801, - -0.049936018884181976, - -0.056096404790878296, - -0.015089405700564384, - -0.052996568381786346, - 0.016771573573350906, - 0.02335342764854431, - -0.0932389348745346, - -0.03478509187698364, - 0.012313449755311012, - -0.04063805937767029, - 0.07577440142631531, - 0.13775473833084106, - 0.06095390021800995, - -0.11094637960195541 - ] - }, - "p245_391.wav": { - "name": "p245", - "embedding": [ - 0.04475565627217293, - 0.08445829898118973, - -0.03482842072844505, - 0.028779076412320137, - -0.05144379660487175, - 0.07730261981487274, - -0.1261998862028122, - 0.10576523840427399, - -0.034466277807950974, - 0.14886286854743958, - -0.0728699266910553, - 0.13544268906116486, - -0.005417270120233297, - -0.17050045728683472, - -0.019191410392522812, - 0.04791611060500145, - -0.0217113196849823, - -0.021417034789919853, - -0.04494427144527435, - -0.02324852906167507, - 0.04740201681852341, - 0.04067324101924896, - 0.04741324856877327, - -0.041410841047763824, - 0.031443677842617035, - 0.06916915625333786, - -0.01657356135547161, - 0.03314198926091194, - -0.008323051035404205, - -0.09121359139680862, - -0.06360432505607605, - 0.10366450250148773, - -0.06279800087213516, - 0.006447340361773968, - 0.030507370829582214, - -0.008925455622375011, - 0.010416969656944275, - -0.06755886226892471, - -0.010517291724681854, - 0.014069553464651108, - -0.024344198405742645, - 0.06747173517942429, - -0.009081847034394741, - -0.025300128385424614, - 0.03991752862930298, - 0.0052709029987454414, - -0.014901787042617798, - -0.028051448985934258, - -0.09598222374916077, - 0.15395468473434448, - 0.05070444568991661, - 0.0026327979285269976, - -0.07729495316743851, - -0.07014848291873932, - 0.0927153006196022, - -0.00932000856846571, - -0.09822805225849152, - -0.034471482038497925, - 0.05725415423512459, - 0.14293190836906433, - -0.024730799719691277, - -0.05496111884713173, - 0.049386873841285706, - 0.07950408011674881, - 0.049979060888290405, - 0.07378515601158142, - 0.10072334855794907, - 0.10587462782859802, - -0.016188785433769226, - 0.003911721520125866, - 0.031614284962415695, - 0.09812268614768982, - 0.0813341811299324, - -0.014089087955653667, - 0.040813107043504715, - -0.0020376797765493393, - -0.025137141346931458, - -0.019072165712714195, - -0.05207672342658043, - -0.03556160256266594, - 0.0030249105766415596, - -0.006976144388318062, - 0.024737738072872162, - 0.024147195741534233, - -0.047896239906549454, - 0.0465267039835453, - 0.06678692996501923, - -0.034494489431381226, - 0.06862171739339828, - 0.03676571324467659, - 0.015841543674468994, - 0.05871529132127762, - -0.12004963308572769, - -0.07510169595479965, - 0.0632457286119461, - 0.02912026271224022, - -0.01038141269236803, - 0.07163555920124054, - 0.0556488111615181, - -0.026362119242548943, - 0.11318233609199524, - 0.035304829478263855, - -0.0005532089853659272, - 0.012245634570717812, - -0.08129800111055374, - 0.13182812929153442, - 0.1263558715581894, - -0.04192619025707245, - 0.027076663449406624, - -0.04925129562616348, - 0.057712405920028687, - 0.06085308641195297, - -0.13565240800380707, - -0.09596654772758484, - 0.012001050636172295, - -0.020846327766776085, - -0.003182913176715374, - 0.1101795956492424, - -0.012469641864299774, - 0.044291310012340546, - 0.10889151692390442, - -0.10956189036369324, - -0.058276236057281494, - -0.0070252083241939545, - 0.03585992753505707, - -0.09176762402057648, - 0.06521953642368317, - 0.04517240822315216, - 0.015312273986637592, - -0.00339338555932045, - 0.07249868661165237, - -0.013997214846313, - 0.007416174281388521, - 0.0038231033831834793, - -0.037874698638916016, - 0.008054663427174091, - -0.027380961924791336, - -0.03448547050356865, - 0.0436052642762661, - 0.03516879305243492, - 0.06869257241487503, - -0.029147779569029808, - -0.017612360417842865, - -0.13826081156730652, - 0.024862486869096756, - 0.03652787581086159, - 0.04917508363723755, - -0.01798488013446331, - -0.015032642520964146, - -0.049134574830532074, - -0.07683062553405762, - 0.04029630869626999, - -0.020044395700097084, - 0.07759607583284378, - 0.004628386348485947, - 0.014294054359197617, - 0.11544560641050339, - 0.029482055455446243, - 0.00648410152643919, - -0.031085975468158722, - -0.03396117314696312, - 0.007486049085855484, - 0.043998751789331436, - -0.06972501426935196, - -0.10206920653581619, - -0.029392996802926064, - 0.0035860100761055946, - -0.005114537198096514, - 0.08452353626489639, - 0.07642000168561935, - 0.020112834870815277, - 0.01829945109784603, - -0.060348283499479294, - -0.009538174606859684, - -0.08370153605937958, - -0.0578397698700428, - -0.020565152168273926, - -0.050570763647556305, - -0.030210578814148903, - 0.10048534721136093, - 0.023672735318541527, - 0.03672643378376961, - -0.06911935657262802, - -0.05053436756134033, - -0.09950694441795349, - 0.04814744368195534, - 0.05687841400504112, - -0.009804955683648586, - 0.019170355051755905, - 0.05248704552650452, - -0.0027235078159719706, - 0.05640871077775955, - 0.08356982469558716, - 0.08389993011951447, - -0.02409106120467186, - 0.022876331582665443, - -0.060714107006788254, - 0.12603406608104706, - 0.10261187702417374, - -0.06148110702633858, - -0.0946405827999115, - -0.03647901862859726, - -0.09201876074075699, - 0.04842294007539749, - -0.031402166932821274, - -0.003240474732592702, - 0.05512641742825508, - -0.014015892520546913, - -0.10799790173768997, - -0.09559755772352219, - 0.09522709250450134, - -0.048895835876464844, - -0.017499355599284172, - -0.08222983032464981, - 0.04866539686918259, - 0.07448327541351318, - 0.02879994362592697, - -0.04282752051949501, - 0.0011830126168206334, - 0.05681319534778595, - -0.027522733435034752, - 0.024755720049142838, - 0.055269505828619, - 0.040254633873701096, - -0.10236751288175583, - -0.007689174730330706, - -0.07135006785392761, - 0.04229961708188057, - -0.06378545612096786, - 0.13410131633281708, - 0.0108482139185071, - -0.045616161078214645, - -0.07834893465042114, - 0.07525690644979477, - -0.016149261966347694, - 0.04846128448843956, - 0.030103370547294617, - 0.06719794124364853, - 0.04558586701750755, - -0.10772771388292313, - 0.10215885937213898, - 0.04660838097333908, - -0.03494365140795708, - -0.09867776930332184, - -0.07350967079401016, - -0.036285027861595154, - 0.03467181324958801, - 0.01720988005399704, - -0.08759579807519913, - 0.00595390098169446, - 0.024533240124583244, - 0.02508567087352276, - 0.05026039108633995, - 0.1316027194261551, - 0.05401219055056572, - -0.11442084610462189 - ] - }, - "p245_255.wav": { - "name": "p245", - "embedding": [ - 0.05430874228477478, - 0.09774158895015717, - 0.01347745954990387, - 0.004972044378519058, - -0.012308331206440926, - 0.05372491478919983, - -0.015709009021520615, - 0.0686049535870552, - 0.058810096234083176, - 0.028306618332862854, - -0.08619813621044159, - 0.04947549104690552, - -0.022378897294402122, - -0.09923802316188812, - 0.025608714669942856, - 0.026873666793107986, - -0.018502648919820786, - 0.015591317787766457, - -0.043779533356428146, - -0.026002051308751106, - -0.014537546783685684, - 0.006839936599135399, - 0.03584045544266701, - -0.018978744745254517, - 0.011685444973409176, - 0.002531846985220909, - -0.03858165442943573, - -0.007537835277616978, - -0.015930943191051483, - -0.04945084825158119, - -0.030241888016462326, - 0.03820665180683136, - -0.024072200059890747, - -0.010192835703492165, - -0.004791846964508295, - -0.04764346033334732, - 0.024696966633200645, - -0.07823380082845688, - -0.06926882266998291, - 0.04884723201394081, - -0.055877409875392914, - 0.042214974761009216, - 0.02864380180835724, - -0.0466630794107914, - 0.0625571608543396, - 0.011679427698254585, - -0.047914013266563416, - -0.00826011598110199, - -0.08712661266326904, - 0.12145355343818665, - 0.0217595212161541, - 0.022263966500759125, - -0.06696166843175888, - 0.005346570163965225, - 0.054151393473148346, - -0.008380424231290817, - -0.0278440173715353, - 0.00017682649195194244, - 0.02487005665898323, - 0.014670856297016144, - 0.06343583017587662, - -0.02097918838262558, - 0.0275642741471529, - 0.04632057994604111, - 0.04389994218945503, - -0.014888783916831017, - 0.07998812198638916, - 0.10132572799921036, - -0.03211326524615288, - 0.020754342898726463, - 0.01418408565223217, - 0.009712819010019302, - 0.042468585073947906, - -0.007901829667389393, - 0.00095329899340868, - -0.02055731974542141, - 0.008386963978409767, - -0.04433564469218254, - -0.02692912518978119, - -0.028600141406059265, - 0.06794092804193497, - 0.007959078066051006, - 0.02130330353975296, - 0.027074065059423447, - -0.0463731549680233, - -0.013050507754087448, - 0.05219823122024536, - 0.08347707986831665, - 0.06172531843185425, - 0.030457882210612297, - 0.01658627577126026, - 0.04357363283634186, - -0.06571778655052185, - -0.07064215838909149, - 0.015229208394885063, - 0.021436570212244987, - 0.0027671707794070244, - 0.013337412849068642, - 0.03716866672039032, - -0.027809806168079376, - 0.10106607526540756, - -0.011955322697758675, - 0.004767312668263912, - -0.00479104183614254, - -0.05073666572570801, - 0.012240037322044373, - 0.061280716210603714, - -0.00638702604919672, - 0.0681275874376297, - 0.017029546201229095, - 0.06522238254547119, - 0.043957993388175964, - -0.04780182987451553, - 0.013337705284357071, - -0.022062424570322037, - 0.008388960734009743, - 0.026759816333651543, - 0.10155860334634781, - 0.010886836796998978, - 0.057982828468084335, - 0.08869235217571259, - -0.06098257005214691, - 0.01550203375518322, - 0.05748186632990837, - -0.011237148195505142, - 0.004615951329469681, - 0.03253023326396942, - 0.02515196055173874, - -0.0034752970095723867, - -0.0286130141466856, - 0.0004828236997127533, - 0.01972118951380253, - 0.029773356392979622, - -0.07508664578199387, - 0.01647849939763546, - -0.01317545399069786, - -0.0030111498199403286, - -0.027988936752080917, - 0.01638893596827984, - 0.04712340235710144, - -0.006316136568784714, - 0.022809334099292755, - -0.049131277948617935, - -0.059588637202978134, - 0.02155737392604351, - -0.042042024433612823, - 0.005092935636639595, - 0.05131315439939499, - -0.02260187827050686, - -0.05235358327627182, - 0.00721769779920578, - 0.03811686858534813, - -0.028150059282779694, - 0.019183780997991562, - 0.08530475199222565, - -0.04081461951136589, - 0.05118509382009506, - 0.024056170135736465, - 0.029365716502070427, - -0.018594348803162575, - -0.09280963987112045, - -0.006896346341818571, - 0.03319235518574715, - -0.030784036964178085, - -0.044725202023983, - -0.016633763909339905, - -0.07315071672201157, - -0.0031818910501897335, - 0.015321135520935059, - 0.07648880779743195, - -0.018735330551862717, - -0.02757854200899601, - -0.0827283188700676, - -0.0026331646367907524, - -0.008053064346313477, - -0.0910884439945221, - 0.07206295430660248, - 0.038100820034742355, - 0.013404693454504013, - 0.0881463885307312, - 0.019160162657499313, - 0.00919361412525177, - -0.06912365555763245, - -0.027963832020759583, - 0.034555308520793915, - 0.031073711812496185, - 0.0018057804554700851, - -0.0025843651965260506, - 0.04371615871787071, - 0.041177865117788315, - -0.012960391119122505, - 0.035534925758838654, - 0.013252072036266327, - 0.0353245809674263, - -0.02948800101876259, - 0.0122229577973485, - 0.029015105217695236, - 0.09154590219259262, - 0.04014185443520546, - -0.027290519326925278, - -0.0880202203989029, - -0.026353871449828148, - -0.042294666171073914, - 0.013319004327058792, - 0.01445453055202961, - 0.012715521268546581, - 0.04443905130028725, - -0.01205204613506794, - -0.025969084352254868, - -0.09695051610469818, - -0.0004797913134098053, - -0.0025463085621595383, - -0.01854422315955162, - -0.028552358970046043, - 0.026280077174305916, - 0.05005079135298729, - 0.004732104018330574, - -0.025891238823533058, - 0.017430447041988373, - 0.00866516213864088, - 0.018742449581623077, - -0.022751860320568085, - 0.005694802850484848, - 0.050899628549814224, - -0.016456685960292816, - -0.01385124959051609, - -0.05806155502796173, - 0.04041241109371185, - 0.04801962897181511, - 0.0625956729054451, - 0.05974408611655235, - 0.017898771911859512, - -0.0724748894572258, - 0.05567363649606705, - -0.004642583429813385, - 0.03655055910348892, - -0.03209227696061134, - 0.014330834150314331, - 0.07109825313091278, - -0.04922118037939072, - 0.04186179116368294, - 0.02869436703622341, - -0.03642933815717697, - -0.0290510430932045, - 0.011721570044755936, - -0.045564111322164536, - -0.010473456233739853, - -0.009366411715745926, - -0.03548828139901161, - -0.004731165710836649, - 0.029181640595197678, - 0.07118245959281921, - 0.026769788935780525, - 0.049811460077762604, - 0.012321382761001587, - -0.018462814390659332 - ] - }, - "p245_248.wav": { - "name": "p245", - "embedding": [ - 0.03326428309082985, - 0.10503867268562317, - -0.006563019473105669, - 0.021382618695497513, - -0.035181332379579544, - 0.06641621887683868, - -0.14270910620689392, - 0.14689882099628448, - -0.0529194101691246, - 0.14005199074745178, - -0.08515670150518417, - 0.10863259434700012, - -0.02142701856791973, - -0.19966208934783936, - -0.05129221826791763, - 0.04734417796134949, - -0.037114884704351425, - -0.021756403148174286, - -0.020290590822696686, - 0.02037068083882332, - 0.054260432720184326, - 0.0197905283421278, - -0.008160501718521118, - 0.005950427148491144, - 0.011820094659924507, - 0.04632983356714249, - 0.018941283226013184, - 0.07119020819664001, - 0.038772545754909515, - -0.008806821890175343, - -0.021929437294602394, - 0.1389164924621582, - -0.04237101599574089, - 0.023965582251548767, - 0.09051065146923065, - -0.010492709465324879, - -0.010640027932822704, - -0.04174468666315079, - 0.0015000661369413137, - -0.005619301460683346, - -0.04801660403609276, - 0.07297725975513458, - 0.04421119764447212, - 0.029680799692869186, - 0.044248875230550766, - 0.06206236407160759, - -0.006960523780435324, - -0.059761714190244675, - -0.08272796124219894, - 0.14419464766979218, - 0.061015497893095016, - -0.013569101691246033, - -0.06060367450118065, - -0.06195567548274994, - 0.09821299463510513, - -0.0053466870449483395, - -0.10537618398666382, - -0.059383925050497055, - 0.10277719050645828, - 0.16306942701339722, - -0.025835031643509865, - -0.029996497556567192, - 0.005888940766453743, - 0.13256876170635223, - 0.038057293742895126, - 0.11651652306318283, - 0.06195082142949104, - 0.1047007367014885, - 0.016978176310658455, - 0.031210927292704582, - 0.06324133276939392, - 0.0424971729516983, - 0.018749108538031578, - -0.03604646399617195, - 0.041535235941410065, - 0.0004186670994386077, - -0.010627089068293571, - 0.029011476784944534, - -0.024011215195059776, - 0.0014914039056748152, - -0.008591105230152607, - 0.03372807055711746, - -0.007432431913912296, - 0.027847113087773323, - -0.02181638590991497, - 0.06372219324111938, - 0.016094636172056198, - 0.0001664205628912896, - 0.07467986643314362, - 0.04773971810936928, - 0.020981866866350174, - 0.05578187480568886, - -0.08660785108804703, - -0.11086946725845337, - 0.027062853798270226, - -0.011498336680233479, - 0.010076425038278103, - 0.07281024754047394, - 0.028779448941349983, - -0.0022513512521982193, - 0.10478446632623672, - 0.044505927711725235, - -0.015915464609861374, - 0.05098680406808853, - -0.11171170324087143, - 0.1369580328464508, - 0.05428781360387802, - -0.017963018268346786, - 0.03188413381576538, - -0.06151900812983513, - 0.07348376512527466, - 0.07083126157522202, - -0.14331021904945374, - -0.07584619522094727, - 0.06422212719917297, - 0.0241533350199461, - -0.03761085495352745, - 0.12506811320781708, - -0.023752253502607346, - 0.001755036530084908, - 0.09748087078332901, - -0.07048944383859634, - -0.0653095692396164, - -0.037154119461774826, - 0.04394792392849922, - -0.08155908435583115, - 0.05932453274726868, - 0.020151883363723755, - -0.01049033086746931, - -0.012261648662388325, - 0.09844256937503815, - -0.007093452848494053, - -0.0038391880225390196, - 0.01670568436384201, - -0.02559264935553074, - 0.06542926281690598, - -0.04142296314239502, - 0.02087036520242691, - 0.006950828246772289, - 0.04439277946949005, - 0.054226797074079514, - 0.011732866056263447, - -0.033627741038799286, - -0.10067842155694962, - -0.003911444917321205, - 0.039438504725694656, - 0.07828150689601898, - -0.008904989808797836, - -0.023920999839901924, - -0.04549529775977135, - -0.0516778863966465, - 0.00099505006801337, - -0.012249048799276352, - 0.0849609225988388, - 0.00759790139272809, - 0.0008260492468252778, - 0.09692353010177612, - -0.0005662136245518923, - 0.017252637073397636, - -0.06549599021673203, - -0.025167036801576614, - 0.01781909354031086, - 0.04906206578016281, - -0.08635608851909637, - -0.049549639225006104, - 0.014585984870791435, - 0.021570555865764618, - -0.02042437717318535, - 0.01902623102068901, - 0.040436070412397385, - 0.026762712746858597, - 0.049159519374370575, - -0.07578486204147339, - 0.021188899874687195, - -0.12176697701215744, - -0.06806919723749161, - -0.03642034903168678, - 0.0004002218774985522, - -0.015886256471276283, - 0.06698358058929443, - 0.0039036013185977936, - 0.037194326519966125, - 0.015204844065010548, - -0.0767972469329834, - -0.07526036351919174, - 0.07649330794811249, - 0.0991264134645462, - -0.001367559190839529, - 0.06216452270746231, - 0.031130140647292137, - -0.04054833948612213, - 0.04654073342680931, - 0.056162938475608826, - 0.10860594362020493, - -0.019133972004055977, - 0.00453865947201848, - -0.077931247651577, - 0.08217664062976837, - 0.07550106942653656, - -0.1111370176076889, - -0.08311592042446136, - 0.00900371465831995, - -0.044097039848566055, - 0.01728678308427334, - -0.03302762284874916, - 0.01365702971816063, - 0.0205699373036623, - -0.007566655054688454, - -0.09120527654886246, - -0.07581083476543427, - 0.058440614491701126, - -0.10131945461034775, - -0.016129354014992714, - -0.08538387715816498, - 0.05188335105776787, - 0.11250221729278564, - 0.02571343630552292, - -0.046410802751779556, - -0.03351137414574623, - 0.051456283777952194, - -0.05524391308426857, - -0.02375953458249569, - 0.017551101744174957, - 0.015847980976104736, - -0.10280276089906693, - 0.028751088306307793, - -0.06517082452774048, - 0.05934521183371544, - -0.0794801115989685, - 0.15510199964046478, - -0.013200648128986359, - -0.06854457408189774, - -0.07437928766012192, - 0.025352315977215767, - -0.006819678470492363, - 0.03801553323864937, - 0.028141608461737633, - 0.061457544565200806, - 0.019665881991386414, - -0.0542270727455616, - 0.13810986280441284, - 0.020569251850247383, - -0.0248253270983696, - -0.07060646265745163, - -0.039414022117853165, - -0.05000360682606697, - 0.02745663933455944, - 0.03320255130529404, - -0.10911651700735092, - -0.031119652092456818, - 0.03785828873515129, - -0.03898182511329651, - 0.0671602189540863, - 0.13517501950263977, - 0.042723946273326874, - -0.12259938567876816 - ] - }, - "p245_052.wav": { - "name": "p245", - "embedding": [ - 0.02461729198694229, - 0.11220350861549377, - 0.00576367974281311, - 0.019884226843714714, - -0.04553502798080444, - 0.09078769385814667, - -0.1215575635433197, - 0.1318088173866272, - -0.07248298823833466, - 0.1112847551703453, - -0.08531473577022552, - 0.0903068482875824, - -0.046396393328905106, - -0.16560135781764984, - -0.0748433843255043, - 0.03916962072253227, - -0.023979267105460167, - -0.00828811526298523, - 0.019866470247507095, - -0.017199667170643806, - 0.034716784954071045, - 0.024099452421069145, - 0.031233252957463264, - 0.047742970287799835, - 0.02351890131831169, - 0.04149694740772247, - -0.0010612073820084333, - 0.06147298216819763, - 0.02914806455373764, - -0.0073667969554662704, - -0.0359785333275795, - 0.1282387673854828, - -0.04221896827220917, - 0.022699439898133278, - 0.05404910445213318, - 0.008744747377932072, - 0.00874701701104641, - -0.04250281676650047, - -0.0013972679153084755, - -0.014133111573755741, - -0.06006339192390442, - 0.07375790178775787, - 0.046959202736616135, - 0.015315026976168156, - 0.037660617381334305, - -0.0009997468441724777, - -0.005216027610003948, - -0.03204164654016495, - -0.10133330523967743, - 0.1442474126815796, - 0.054993636906147, - -0.019869307056069374, - -0.08211657404899597, - -0.05116325616836548, - 0.12014009058475494, - -0.022556878626346588, - -0.11318440735340118, - -0.016502240672707558, - 0.09668166935443878, - 0.16815432906150818, - -0.008910097181797028, - -0.02278093434870243, - 0.008447269909083843, - 0.11771362274885178, - 0.0171053446829319, - 0.0892338976264, - 0.05988588184118271, - 0.09027130901813507, - 0.002936731092631817, - 0.017418542876839638, - 0.03888275474309921, - 0.03919089213013649, - -0.016603533178567886, - -0.05297697335481644, - -0.008933966048061848, - -0.01466728001832962, - -0.01987205632030964, - 0.053971461951732635, - -0.007564156781882048, - -0.014675319194793701, - -0.03689700365066528, - -0.0019894482102245092, - -0.03175489977002144, - -0.003526933491230011, - -0.031240373849868774, - 0.04904472082853317, - -0.018115155398845673, - 0.006456083618104458, - 0.08571235090494156, - 0.061489421874284744, - -0.013132041320204735, - 0.04120257869362831, - -0.03525439277291298, - -0.053384676575660706, - -0.0025698337703943253, - 0.011682536453008652, - 0.0021088719367980957, - 0.103084035217762, - 0.015489468351006508, - -0.0075929369777441025, - 0.11186592280864716, - 0.048607371747493744, - 0.017590107396245003, - 0.025880703702569008, - -0.1165463998913765, - 0.11485552787780762, - 0.06032179296016693, - -0.006168113090097904, - 0.054958827793598175, - -0.020840175449848175, - 0.07374560832977295, - 0.08006364107131958, - -0.13088193535804749, - -0.049307700246572495, - 0.05015387758612633, - 0.053890161216259, - 0.017599359154701233, - 0.09057211875915527, - -0.006140542216598988, - -0.013789824210107327, - 0.07432764768600464, - -0.059044960886240005, - -0.06589166074991226, - -0.04651696979999542, - 0.059359584003686905, - -0.05485941097140312, - 0.04034537449479103, - 0.04481913894414902, - -0.004485502373427153, - -0.015887927263975143, - 0.04910779371857643, - -0.005915951449424028, - -0.0010451485868543386, - 0.05398301035165787, - -0.049914829432964325, - 0.025554336607456207, - -0.03148936852812767, - 0.024627970531582832, - 0.03483326733112335, - 0.04228203371167183, - 0.056894294917583466, - 0.02319403737783432, - -0.026692498475313187, - -0.07117032259702682, - -0.025391101837158203, - 0.07293614745140076, - 0.06483370065689087, - -0.012316869571805, - -0.05095524340867996, - -0.05656690150499344, - -0.053292274475097656, - 0.03591407835483551, - 0.014254285022616386, - 0.10420675575733185, - -0.012310061603784561, - -0.009402175433933735, - 0.08443333208560944, - 0.021613098680973053, - -0.012500266544520855, - -0.07796072214841843, - -0.007898930460214615, - -0.009853281080722809, - 0.02404339239001274, - -0.0710131824016571, - -0.06594668328762054, - 0.012925908900797367, - 0.033652301877737045, - -0.02251022681593895, - 0.02441975474357605, - 0.04228997230529785, - 0.011201804503798485, - 0.051938001066446304, - -0.08097703754901886, - 0.03697438910603523, - -0.09129761904478073, - -0.052359070628881454, - -0.0262919832020998, - 0.0056367493234574795, - -0.006701742764562368, - 0.0776686817407608, - 0.04400784522294998, - 0.010905489325523376, - 0.04755881801247597, - -0.081350177526474, - -0.050006281584501266, - 0.06667609512805939, - 0.0676199346780777, - 0.005168521776795387, - 0.07405666261911392, - 0.06712150573730469, - -0.0817323848605156, - 0.07908907532691956, - 0.06922781467437744, - 0.07884333282709122, - -0.04767966270446777, - 0.013489321805536747, - -0.04463464021682739, - 0.03492811322212219, - 0.06259921193122864, - -0.12189766764640808, - -0.11362707614898682, - -0.02967889793217182, - -0.0356282964348793, - 0.035641077905893326, - -0.01859964244067669, - 0.009658269584178925, - -0.005589451640844345, - -0.03788786008954048, - -0.08369266986846924, - -0.09335709363222122, - 0.07418875396251678, - -0.055459871888160706, - -0.023473430424928665, - -0.06079328805208206, - 0.046317920088768005, - 0.07799415290355682, - 0.014707422815263271, - -0.024482211098074913, - 0.0015435069799423218, - 0.033230993896722794, - -0.06597688794136047, - -0.036313995718955994, - 0.04239746183156967, - -0.006132114678621292, - -0.10634181648492813, - 0.0341251865029335, - -0.07060961425304413, - 0.11117818206548691, - -0.041971705853939056, - 0.16613945364952087, - -0.016668274998664856, - -0.06820325553417206, - -0.0623968169093132, - 0.02231348678469658, - -0.026286892592906952, - 0.017103224992752075, - 0.02587055414915085, - 0.04509027674794197, - -0.012744843028485775, - -0.016076557338237762, - 0.1124788373708725, - 0.027185829356312752, - -0.05542168766260147, - -0.05452360212802887, - -0.021760813891887665, - -0.033542174845933914, - 0.01871402934193611, - 0.01952582411468029, - -0.09221219271421432, - -0.027059849351644516, - 0.01278475858271122, - -0.021847978234291077, - 0.07726338505744934, - 0.12456287443637848, - 0.07813167572021484, - -0.1188732385635376 - ] - }, - "p245_353.wav": { - "name": "p245", - "embedding": [ - 0.043939970433712006, - 0.10691487789154053, - -0.03382353112101555, - 0.024774219840765, - -0.06259916722774506, - 0.04711415618658066, - -0.14136506617069244, - 0.14516456425189972, - -0.02197573333978653, - 0.12541812658309937, - -0.06838381290435791, - 0.12074869871139526, - -0.029490657150745392, - -0.1730169951915741, - -0.0169266015291214, - 0.06136977672576904, - -0.024157673120498657, - -0.027413394302129745, - -0.023489084094762802, - -0.03913910314440727, - 0.026756517589092255, - 0.027055714279413223, - 0.02038307674229145, - 0.006067059934139252, - 0.027422845363616943, - 0.07447230815887451, - -0.01915745995938778, - 0.012766714207828045, - -0.013059066608548164, - -0.020452678203582764, - -0.042938947677612305, - 0.09641903638839722, - -0.04826776683330536, - -0.001437250291928649, - 0.04582596942782402, - -0.011489923112094402, - -0.01030330266803503, - -0.05598995089530945, - -0.00026965251890942454, - -0.004197809379547834, - -0.04700184985995293, - 0.07193886488676071, - 0.024902895092964172, - -0.026057027280330658, - 0.04780525714159012, - 0.016849588602781296, - -0.012146556749939919, - -0.031586647033691406, - -0.10496874153614044, - 0.14691615104675293, - 0.07423444092273712, - -0.0008038997184485197, - -0.08242611587047577, - -0.038067616522312164, - 0.09638342261314392, - -0.0076970322988927364, - -0.09671672433614731, - -0.03786900267004967, - 0.07513648271560669, - 0.13381272554397583, - -0.029442651197314262, - -0.03760174661874771, - 0.03242933750152588, - 0.12780199944972992, - 0.05309326946735382, - 0.07383023947477341, - 0.07119062542915344, - 0.1162438690662384, - -0.03798314929008484, - 0.002081445185467601, - 0.05844908207654953, - 0.061394400894641876, - 0.060104578733444214, - -0.02254362404346466, - 0.00842240173369646, - -0.02575605735182762, - -0.01775575987994671, - -0.017861973494291306, - -0.032954730093479156, - -0.04290040582418442, - -0.029251541942358017, - -0.006941178347915411, - -0.004586758092045784, - 0.02825237065553665, - -0.02763018012046814, - 0.044173017144203186, - 0.0750226154923439, - -0.032377734780311584, - 0.07098361104726791, - 0.04978755861520767, - -0.003548018168658018, - 0.058121442794799805, - -0.09239117801189423, - -0.060137294232845306, - 0.05180661007761955, - -0.002339379396289587, - 0.018108706921339035, - 0.07394929230213165, - 0.04876463860273361, - -0.011561593972146511, - 0.11747635900974274, - 0.049650516360998154, - 0.0027373291086405516, - 0.014396516606211662, - -0.0818329006433487, - 0.13982510566711426, - 0.09525132179260254, - -0.04213577136397362, - 0.042720548808574677, - -0.0363873690366745, - 0.04285022243857384, - 0.062207844108343124, - -0.12231659144163132, - -0.059776198118925095, - 0.017880823463201523, - 0.02003583498299122, - -0.01886848174035549, - 0.10633452981710434, - 0.008891570381820202, - 0.044902052730321884, - 0.10354335606098175, - -0.08470162749290466, - -0.07425521314144135, - -0.034826043993234634, - 0.047132622450590134, - -0.08839268982410431, - 0.06450497359037399, - 0.08593564480543137, - 0.0030951513908803463, - 0.01817740686237812, - 0.06573298573493958, - 0.0024766316637396812, - 0.0007607733714394271, - 0.007003994192928076, - -0.03736093267798424, - 0.01061282865703106, - -0.01007426530122757, - 0.0012555706780403852, - 0.025982683524489403, - 0.020591700449585915, - 0.05436306446790695, - -0.0006632544100284576, - 0.005667123943567276, - -0.11041754484176636, - 0.015894755721092224, - 0.047319523990154266, - 0.07157841324806213, - -0.017311550676822662, - -0.027808040380477905, - -0.02620134875178337, - -0.06364040821790695, - 0.005542825907468796, - -0.007868200540542603, - 0.06593191623687744, - -0.03174726665019989, - -0.001960505498573184, - 0.10873977839946747, - 0.04383071884512901, - 0.0022285464219748974, - -0.04395073652267456, - -0.020196333527565002, - 0.012962227687239647, - 0.04972103238105774, - -0.09548301994800568, - -0.08497324585914612, - -0.028217127546668053, - 0.033452823758125305, - -0.016314763575792313, - 0.07153943181037903, - 0.04869813472032547, - 0.010796202346682549, - 0.012075768783688545, - -0.06252385675907135, - 0.024236634373664856, - -0.07974513620138168, - -0.05849669873714447, - -0.020876843482255936, - -0.03045497089624405, - -0.031504787504673004, - 0.07692693173885345, - 0.030361225828528404, - 0.05152229219675064, - -0.034591592848300934, - -0.05497196316719055, - -0.07747530937194824, - 0.03953031823039055, - 0.058082230389118195, - -0.027342036366462708, - 0.035873111337423325, - 0.05944370478391647, - -0.03729637712240219, - 0.0356731116771698, - 0.06934027373790741, - 0.09381049871444702, - -0.037000373005867004, - 0.018823441118001938, - -0.06490135192871094, - 0.07236181944608688, - 0.09311109781265259, - -0.08784578740596771, - -0.08716148138046265, - -0.05564112961292267, - -0.05037158355116844, - 0.023461824283003807, - -0.0335405170917511, - 0.01222970336675644, - 0.02390909194946289, - -0.012353017926216125, - -0.09205956757068634, - -0.11025117337703705, - 0.0797870084643364, - -0.06430177390575409, - 0.009054852649569511, - -0.07965712249279022, - 0.05632390081882477, - 0.07357460260391235, - 0.013699891977012157, - -0.043824464082717896, - -0.0116160549223423, - 0.03202202543616295, - -0.016615988686680794, - 0.016063343733549118, - 0.053188424557447433, - 0.04957496374845505, - -0.11299188435077667, - -0.0062429821118712425, - -0.06451284140348434, - 0.07691487669944763, - -0.03716975077986717, - 0.1552359163761139, - 0.02833961695432663, - -0.03954467177391052, - -0.08787109702825546, - 0.03880289942026138, - -0.013706794008612633, - 0.04677604138851166, - 0.0314050018787384, - 0.06105167791247368, - 0.020481619983911514, - -0.05866445600986481, - 0.10519498586654663, - 0.04149964451789856, - -0.04062721133232117, - -0.07529982924461365, - -0.04706866666674614, - -0.04687320813536644, - 0.030921760946512222, - 0.01699727028608322, - -0.08952122926712036, - -0.020645545795559883, - 0.018967652693390846, - 0.0038050522562116385, - 0.07898121327161789, - 0.12863728404045105, - 0.06583650410175323, - -0.1036527007818222 - ] - }, - "p245_164.wav": { - "name": "p245", - "embedding": [ - 0.0594656839966774, - 0.10709811747074127, - -0.009478701278567314, - 0.014008665457367897, - -0.04990536719560623, - 0.07834392786026001, - -0.14610826969146729, - 0.15572059154510498, - -0.03834958374500275, - 0.14458638429641724, - -0.05045820772647858, - 0.11260189116001129, - -0.020351529121398926, - -0.17301446199417114, - -0.019511312246322632, - 0.060571715235710144, - -0.04906829446554184, - -0.03699567914009094, - -0.018836725503206253, - -0.026801511645317078, - 0.015098942443728447, - 0.03914260119199753, - 0.020265765488147736, - 0.011904153972864151, - 0.055603377521038055, - 0.07252798974514008, - -0.018950436264276505, - 0.028585443273186684, - -0.010216201655566692, - -0.07654242217540741, - -0.03248701989650726, - 0.09222359955310822, - -0.06877975165843964, - 0.017660843208432198, - 0.0494048148393631, - -0.01843917928636074, - -0.010575932450592518, - -0.06733650714159012, - -0.02305220626294613, - 6.938248407095671e-05, - -0.04125489294528961, - 0.09556032717227936, - 0.03692626953125, - -0.010760156437754631, - 0.01643647439777851, - 0.02905668318271637, - 0.003687824122607708, - -0.05119138956069946, - -0.10591503977775574, - 0.1611585021018982, - 0.05903426185250282, - -0.002332336502149701, - -0.07803048193454742, - -0.0695740357041359, - 0.0932781994342804, - -0.011613067239522934, - -0.11296188831329346, - -0.029901567846536636, - 0.07225608825683594, - 0.14319384098052979, - -0.030803438276052475, - -0.0417182520031929, - 0.025613486766815186, - 0.128589928150177, - 0.05874600261449814, - 0.09313248097896576, - 0.06954358518123627, - 0.11018253117799759, - -0.02993832528591156, - 0.022344328463077545, - 0.057668283581733704, - 0.057046227157115936, - 0.05641727149486542, - -0.017789684236049652, - 0.016078609973192215, - -0.0170163344591856, - -0.020496416836977005, - -0.02113696187734604, - -0.013186370953917503, - -0.025964956730604172, - -0.0121114831417799, - 0.0024513863027095795, - 0.008113515563309193, - 0.03615376353263855, - -0.011661062017083168, - 0.04284850135445595, - 0.044131629168987274, - -0.018957529217004776, - 0.08339321613311768, - 0.03797092288732529, - 0.021465379744768143, - 0.0708024799823761, - -0.09454603493213654, - -0.0607772096991539, - 0.0449020117521286, - 0.001478975173085928, - 0.03833973407745361, - 0.08255483955144882, - 0.04951360821723938, - -0.009843872860074043, - 0.12479770183563232, - 0.04491530358791351, - 0.006890221498906612, - 0.006743225269019604, - -0.09826315939426422, - 0.14281581342220306, - 0.06024184450507164, - -0.035629577934741974, - 0.06203886866569519, - -0.049200527369976044, - 0.0762380063533783, - 0.07117051631212234, - -0.15567734837532043, - -0.07161803543567657, - 0.020707186311483383, - 0.009617948904633522, - -0.026887325569987297, - 0.1291286051273346, - 0.0006019645370543003, - 0.03635036200284958, - 0.08926235884428024, - -0.0951957032084465, - -0.0520201250910759, - -0.011026940308511257, - 0.05075107142329216, - -0.10613619536161423, - 0.06694957613945007, - 0.0646403357386589, - -0.02390226349234581, - 0.03278383985161781, - 0.08511307835578918, - -0.0027913691010326147, - 0.004280788358300924, - 0.014742509461939335, - -0.029447827488183975, - 0.009352752938866615, - -0.024173688143491745, - 0.019747614860534668, - 0.011975567787885666, - 0.01541026122868061, - 0.051368460059165955, - -0.010944240726530552, - -0.021711276844143867, - -0.10878575593233109, - 0.01868097484111786, - 0.031388815492391586, - 0.07991840690374374, - -0.01489272527396679, - -0.029355479404330254, - -0.021170616149902344, - -0.0625380128622055, - 0.009269311092793941, - -0.0035207602195441723, - 0.0640183687210083, - -0.006121315993368626, - 0.003834654577076435, - 0.11720642447471619, - 0.06327647715806961, - 0.002736604306846857, - -0.059557244181632996, - -0.024205023422837257, - 0.015541747212409973, - 0.0673469677567482, - -0.09150288999080658, - -0.06817245483398438, - -0.001982145244255662, - 0.020541556179523468, - -0.023838162422180176, - 0.07395950704813004, - 0.04975065961480141, - 0.032182611525058746, - 0.014874253422021866, - -0.0633438229560852, - 0.016460036858916283, - -0.08519095182418823, - -0.07817889750003815, - -0.01045701839029789, - -0.01665334962308407, - -0.04219694808125496, - 0.0875631719827652, - 0.021297477185726166, - 0.05953603237867355, - -0.03363807871937752, - -0.05494934320449829, - -0.06964477896690369, - 0.05072474107146263, - 0.056322548538446426, - -0.02381245605647564, - 0.02447160705924034, - 0.05777783691883087, - -0.03476788476109505, - 0.040135473012924194, - 0.059586044400930405, - 0.11007022112607956, - -0.04677971452474594, - 0.032591432332992554, - -0.06050638109445572, - 0.07805934548377991, - 0.07897111773490906, - -0.0944739356637001, - -0.07798964530229568, - -0.02272661402821541, - -0.062202565371990204, - 0.02518220990896225, - -0.021116480231285095, - 0.009551675990223885, - 0.011311385780572891, - -0.012302102521061897, - -0.09029628336429596, - -0.09280556440353394, - 0.08553604781627655, - -0.07617902010679245, - -0.0009349153842777014, - -0.09397603571414948, - 0.0600925013422966, - 0.08066295087337494, - 0.06040782481431961, - -0.024022653698921204, - -0.014285099692642689, - 0.05054769665002823, - -0.01797836646437645, - 0.017552226781845093, - 0.085203155875206, - 0.040570832788944244, - -0.10100072622299194, - -0.007374167907983065, - -0.0655958279967308, - 0.06040674448013306, - -0.04505102336406708, - 0.1660071611404419, - 0.009140953421592712, - -0.06578747183084488, - -0.08166655898094177, - 0.027246372774243355, - -0.019429907202720642, - 0.043643347918987274, - 0.030838103964924812, - 0.057012416422367096, - 0.058647431433200836, - -0.038849279284477234, - 0.10850533097982407, - 0.040856122970581055, - -0.026720594614744186, - -0.051427848637104034, - -0.055083267390728, - -0.041140928864479065, - 0.04029040038585663, - 0.0024347722064703703, - -0.1077069416642189, - -0.014998281374573708, - 0.03404555842280388, - 0.004768904764205217, - 0.0754873976111412, - 0.14448189735412598, - 0.06581549346446991, - -0.12508776783943176 - ] - }, - "p245_230.wav": { - "name": "p245", - "embedding": [ - 0.056013286113739014, - 0.03714391589164734, - -0.006162726785987616, - 0.0007905091042630374, - -0.025705358013510704, - 0.06713633239269257, - -0.14226174354553223, - 0.11263689398765564, - -0.05571219325065613, - 0.08893713355064392, - -0.055112458765506744, - 0.0731644481420517, - -0.010182168334722519, - -0.14791817963123322, - -0.02855006977915764, - 0.06242036819458008, - -0.021413318812847137, - -0.022249605506658554, - -0.04029892757534981, - -0.006370568182319403, - 0.008403691463172436, - 0.031938906759023666, - 0.00801350362598896, - -0.01641983352601528, - 0.027265042066574097, - 0.05362307280302048, - -0.00018361459660809487, - 0.01898009516298771, - -0.027236532419919968, - 0.0019029267132282257, - 0.0025387518107891083, - 0.09532196819782257, - -0.037012532353401184, - -0.030520524829626083, - 0.05299223214387894, - 0.010502032935619354, - 0.0012134239077568054, - -0.09347701072692871, - -0.004099187906831503, - -0.006725732237100601, - -0.06607513129711151, - 0.07849696278572083, - 0.055674102157354355, - 0.01100136712193489, - 0.01824071630835533, - 0.006606068462133408, - -0.004261543974280357, - -0.05974356457591057, - -0.11420981585979462, - 0.15129908919334412, - 0.02386198565363884, - 0.03897732496261597, - -0.10510300099849701, - -0.029018577188253403, - 0.07838630676269531, - 0.00835583359003067, - -0.056262172758579254, - -0.07234429568052292, - 0.04734432324767113, - 0.15339669585227966, - -0.002796964254230261, - -0.03464989364147186, - 0.027139555662870407, - 0.09072297811508179, - 0.03211933374404907, - 0.06043105572462082, - 0.09267735481262207, - 0.0948609709739685, - 0.01259525865316391, - 0.026584986597299576, - 0.05674136430025101, - 0.027040211483836174, - 0.017330823466181755, - -0.025926560163497925, - 0.03535137325525284, - -0.02139151841402054, - -0.03667180985212326, - 0.005609530955553055, - -0.02083970420062542, - -0.045055702328681946, - 0.013960529118776321, - 0.012674015015363693, - 0.024131156504154205, - 0.05503500625491142, - -0.04470612108707428, - 0.03360062465071678, - 0.03432310372591019, - -0.01707579381763935, - 0.08083848655223846, - 0.044244568794965744, - 0.004788603167980909, - 0.020985690876841545, - -0.060382239520549774, - -0.08003890514373779, - 0.022601094096899033, - 0.012500055134296417, - 0.01914467290043831, - 0.030573755502700806, - 0.01478942297399044, - -0.02975829504430294, - 0.0911652073264122, - -0.005542195402085781, - 0.015651334077119827, - 0.008869946002960205, - -0.07910382002592087, - 0.10676756501197815, - 0.0715847983956337, - -0.01695254072546959, - 0.021068355068564415, - -0.046003829687833786, - 0.010163719765841961, - 0.07535072416067123, - -0.10606637597084045, - -0.058830954134464264, - 0.055338650941848755, - 0.017236042767763138, - 0.023401563987135887, - 0.14160703122615814, - 0.02438358962535858, - 0.010803459212183952, - 0.07776294648647308, - -0.09656594693660736, - -0.053666189312934875, - 0.007733501028269529, - 0.02650153636932373, - -0.03803712874650955, - 0.030671386048197746, - 0.05915973335504532, - 0.012527081184089184, - -0.0209103561937809, - 0.0619325265288353, - 0.00918325874954462, - 0.009638451039791107, - -0.031693607568740845, - 0.013476742431521416, - 0.07048434019088745, - -0.006475945934653282, - -0.022134929895401, - 0.03836553916335106, - 0.0501384399831295, - 0.026009608060121536, - 0.018488086760044098, - -0.03790687769651413, - -0.11187230050563812, - -0.029584437608718872, - 0.05646776407957077, - 0.06525199115276337, - -0.04061385989189148, - -0.030117198824882507, - -0.06170855462551117, - -0.030808523297309875, - -0.012271692976355553, - -0.002872450975701213, - 0.08010086417198181, - 0.042493920773267746, - -0.009057383984327316, - 0.08383893221616745, - -0.007440716028213501, - 0.03570020943880081, - -0.034287407994270325, - -0.004831552505493164, - 0.03721839562058449, - 0.03959018737077713, - -0.032654035836458206, - -0.05974603816866875, - -0.003963192459195852, - 0.014841060154139996, - -0.02452170103788376, - 0.0013139372458681464, - 0.0249284990131855, - 0.0124655244871974, - -0.007256511598825455, - -0.0891616940498352, - 0.0518822968006134, - -0.09128762781620026, - -0.01488957554101944, - 0.03961503505706787, - -0.02482362650334835, - -0.02994430810213089, - 0.09405364841222763, - 0.022211674600839615, - 0.03581884503364563, - -0.03610766679048538, - -0.08008735626935959, - -0.027728348970413208, - 0.04441916570067406, - 0.06797396391630173, - -0.03148669749498367, - 0.00954367034137249, - -0.0015327533474192023, - 0.005271201487630606, - 0.01340256817638874, - 0.056852132081985474, - 0.07405798882246017, - -0.03730624169111252, - -0.046241119503974915, - -0.022990159690380096, - 0.11287641525268555, - 0.035534534603357315, - -0.0650450587272644, - -0.05100494250655174, - 0.011640718206763268, - -0.034434724599123, - 0.009442973881959915, - -0.023103205487132072, - 0.019912462681531906, - 0.04292803257703781, - -0.03275977075099945, - -0.1272137612104416, - -0.07149083912372589, - 0.04267006739974022, - -0.07501514256000519, - -0.004336903803050518, - -0.07462344318628311, - 0.038579944521188736, - 0.0790209099650383, - 0.016775555908679962, - -0.01168876327574253, - -0.03275301679968834, - -0.004615466110408306, - -0.06482589244842529, - -0.016674190759658813, - 0.012881053611636162, - 0.030085651203989983, - -0.07199843227863312, - -0.0031549804843962193, - -0.06372497975826263, - 0.07417309284210205, - -0.03465184196829796, - 0.11975656449794769, - 0.0172154288738966, - -0.04511001706123352, - -0.08861349523067474, - -0.00874839536845684, - -0.0005107658798806369, - 0.05078420042991638, - 0.03108431026339531, - 0.04208550974726677, - 0.042323093861341476, - -0.041673868894577026, - 0.08590114116668701, - 0.048882972449064255, - -0.025937674567103386, - -0.054015349596738815, - -0.026187313720583916, - -0.025463899597525597, - 0.038449134677648544, - -0.030729934573173523, - -0.04977121576666832, - 0.020411644130945206, - 0.04302361235022545, - 0.008658559061586857, - 0.05402036011219025, - 0.09839686751365662, - 0.03958921879529953, - -0.08683746308088303 - ] - }, - "p245_178.wav": { - "name": "p245", - "embedding": [ - 0.03712261840701103, - 0.10299722105264664, - -0.00403292803093791, - 0.026907529681921005, - -0.05853986740112305, - 0.03755905106663704, - -0.12841719388961792, - 0.138652503490448, - -0.02681763470172882, - 0.13290223479270935, - -0.08146893233060837, - 0.12259525805711746, - -0.04527243226766586, - -0.19801700115203857, - -0.01635902002453804, - 0.06641770899295807, - -0.014850256964564323, - -0.007043277844786644, - -0.013415524736046791, - -0.021864118054509163, - 0.02971971407532692, - 0.04869363456964493, - 0.032104432582855225, - -0.0032524587586522102, - 0.039779260754585266, - 0.0765891820192337, - -0.0010581850074231625, - 0.04524082690477371, - 0.0003628884442150593, - -0.06143292412161827, - -0.038828812539577484, - 0.10332119464874268, - -0.054013416171073914, - 0.02078835293650627, - 0.052907370030879974, - -0.00028266478329896927, - -0.014157673344016075, - -0.025893185287714005, - -0.0017233524704352021, - 0.0013958578929305077, - -0.0463557168841362, - 0.06737864017486572, - 0.01205834373831749, - -3.2813288271427155e-05, - 0.04619474709033966, - 0.051478177309036255, - -0.004143240861594677, - -0.048191919922828674, - -0.10256132483482361, - 0.1568867266178131, - 0.050495970994234085, - -0.007260498590767384, - -0.07333797961473465, - -0.08386564254760742, - 0.08568930625915527, - -0.018067941069602966, - -0.11281709372997284, - -0.03989407420158386, - 0.10002265870571136, - 0.14609214663505554, - -0.02461106702685356, - -0.053070612251758575, - 0.012777771800756454, - 0.11683471500873566, - 0.023663681000471115, - 0.09530059248209, - 0.0567760095000267, - 0.0915597677230835, - -0.028181027621030807, - 0.012626001611351967, - 0.04473212733864784, - 0.062812939286232, - 0.06605339795351028, - -0.01565207540988922, - 0.006290452554821968, - -0.015162407420575619, - -0.003137855790555477, - 0.011556969955563545, - -0.01576746255159378, - -0.022488679736852646, - -0.020964205265045166, - 0.0021488498896360397, - -0.010705877095460892, - -0.01569433882832527, - -0.00373866967856884, - 0.04473067820072174, - 0.050707243382930756, - -0.0014077355153858662, - 0.08103881776332855, - 0.039343755692243576, - -0.007086962927132845, - 0.06777282804250717, - -0.08286634087562561, - -0.05878179147839546, - 0.03190059959888458, - -0.004369435366243124, - 0.034629739820957184, - 0.07383552938699722, - 0.03243429213762283, - -0.005696788430213928, - 0.11846515536308289, - 0.04383081942796707, - 0.011523867957293987, - 0.01973215863108635, - -0.10149984061717987, - 0.13023534417152405, - 0.08018310368061066, - -0.018835747614502907, - 0.06438010185956955, - -0.03974708169698715, - 0.06656348705291748, - 0.06779806315898895, - -0.13369201123714447, - -0.06812851130962372, - -0.009644665755331516, - 0.00868218857795, - -0.029070354998111725, - 0.11089421808719635, - -0.018454821780323982, - 0.02712063118815422, - 0.11820265650749207, - -0.1116076409816742, - -0.06902912259101868, - -0.020521564409136772, - 0.02741391584277153, - -0.11555635184049606, - 0.05735808610916138, - 0.07042264938354492, - -0.02060883305966854, - 0.03749286010861397, - 0.08846522867679596, - -0.0023412886075675488, - 0.031236154958605766, - 0.005439474247395992, - -0.05126297101378441, - -0.020799510180950165, - -0.03759344667196274, - 0.005050658714026213, - 0.0493328683078289, - 0.03366320580244064, - 0.06276095658540726, - 0.0029723765328526497, - -0.040692634880542755, - -0.12779691815376282, - 0.006258119363337755, - 0.055015888065099716, - 0.053064413368701935, - -0.02270687371492386, - -0.02574940398335457, - -0.024883266538381577, - -0.06726200133562088, - 0.029306646436452866, - 0.0072535243816673756, - 0.06752286106348038, - -0.02773122861981392, - -0.008305350318551064, - 0.12045978009700775, - 0.04753173887729645, - -0.019304681569337845, - -0.07876787334680557, - -0.04941553622484207, - 0.002045764122158289, - 0.03578618913888931, - -0.12068357318639755, - -0.07415036857128143, - -0.024593252688646317, - 0.03917188569903374, - -0.016258222982287407, - 0.067776620388031, - 0.0617227777838707, - 0.018349483609199524, - 0.023837992921471596, - -0.04080554097890854, - 0.0026069162413477898, - -0.08595094829797745, - -0.09882542490959167, - -0.011610809713602066, - -0.02239689975976944, - -0.02791624143719673, - 0.07917069643735886, - 0.002631774637848139, - 0.04317404329776764, - -0.03080374374985695, - -0.0523606538772583, - -0.08598465472459793, - 0.05262487009167671, - 0.04452838748693466, - 0.004893545061349869, - 0.05870331823825836, - 0.042578838765621185, - -0.08084826916456223, - 0.07944075763225555, - 0.061727993190288544, - 0.12253653258085251, - -0.04733484238386154, - 0.05089572072029114, - -0.06677445769309998, - 0.05795943737030029, - 0.09437147527933121, - -0.08475182950496674, - -0.0939042940735817, - -0.0475880429148674, - -0.0678853988647461, - 0.06170334294438362, - -0.02545233443379402, - 0.0018410562770441175, - 0.02366887778043747, - -0.005163310095667839, - -0.07524684071540833, - -0.08914919942617416, - 0.0695025697350502, - -0.037062037736177444, - -0.003804852720350027, - -0.07871198654174805, - 0.06456378102302551, - 0.06850453466176987, - 0.04466533660888672, - -0.02215014584362507, - -0.014458067715168, - 0.05620088428258896, - -0.046637795865535736, - -0.0033499212004244328, - 0.06430047750473022, - 0.04652746021747589, - -0.06467356532812119, - -0.00737482775002718, - -0.08667854964733124, - 0.057117097079753876, - -0.047693487256765366, - 0.16161498427391052, - -0.0028951384592801332, - -0.06593134999275208, - -0.07063286006450653, - 0.03259924054145813, - -0.023492828011512756, - 0.03652738407254219, - 0.03287685662508011, - 0.05605044215917587, - 0.0444687083363533, - -0.050842177122831345, - 0.12692990899085999, - 0.035019032657146454, - -0.0317072719335556, - -0.04341932758688927, - -0.05827448517084122, - -0.05472496151924133, - 0.029848232865333557, - -0.01177220605313778, - -0.1171531230211258, - -0.024804072454571724, - 0.022816404700279236, - 0.01220932137221098, - 0.05075586214661598, - 0.1443537473678589, - 0.04555417224764824, - -0.1103561520576477 - ] - }, - "p245_040.wav": { - "name": "p245", - "embedding": [ - 0.04495055601000786, - 0.08091925084590912, - -0.023899100720882416, - 0.06364770233631134, - 0.0043339719995856285, - 0.017842553555965424, - -0.15235336124897003, - 0.10670260339975357, - 0.007963153533637524, - 0.12191521376371384, - -0.08412328362464905, - 0.10776207596063614, - -0.0026113111525774, - -0.19686566293239594, - -0.025430435314774513, - 0.04363745450973511, - 0.0063882204703986645, - -0.0392884835600853, - 0.04481268301606178, - 0.020669160410761833, - 0.06594237685203552, - 0.0764748603105545, - 0.004484226461499929, - -0.007977046072483063, - 0.030034303665161133, - 0.037923891097307205, - 0.002517371205613017, - 0.04114250838756561, - 0.0273317638784647, - 0.012979288585484028, - 0.014537165872752666, - 0.1215284988284111, - -0.018760859966278076, - 0.010456711985170841, - 0.03460221737623215, - 0.021090570837259293, - -0.003616174915805459, - -0.05582403019070625, - -0.0283343605697155, - 0.006691006477922201, - -0.07339166104793549, - 0.06644338369369507, - 0.05084121599793434, - -0.02697248011827469, - 0.04172699525952339, - 0.023947030305862427, - -0.01215349417179823, - -0.038375936448574066, - -0.0995880514383316, - 0.15816575288772583, - 0.06119965761899948, - 0.03348084166646004, - -0.08770403265953064, - -0.05057140439748764, - 0.07704555243253708, - 0.044308632612228394, - -0.046811506152153015, - -0.013155868276953697, - 0.08359432965517044, - 0.18490557372570038, - 0.013240848667919636, - -0.03752153739333153, - 0.046499382704496384, - 0.13724452257156372, - 0.06937169283628464, - 0.06601040065288544, - 0.07093054801225662, - 0.11323708295822144, - 0.018576711416244507, - -0.0031576817855238914, - 0.0498509481549263, - 0.08755046129226685, - 0.014901616610586643, - -0.058390967547893524, - -0.019455134868621826, - 0.033823806792497635, - -0.06609778106212616, - -0.005165450274944305, - -0.009029597975313663, - -0.005711965728551149, - 0.00858728401362896, - -0.013741516508162022, - -0.005588752217590809, - 0.06467785686254501, - -0.028528055176138878, - 0.00831794273108244, - 0.08257483690977097, - -0.03213237598538399, - 0.060412608087062836, - 0.036047499626874924, - 0.03468085080385208, - 0.03456924483180046, - -0.08877044171094894, - -0.10367810726165771, - 0.018753085285425186, - 0.019932083785533905, - 0.001656953594647348, - 0.0951651781797409, - 0.06465445458889008, - -0.02606094628572464, - 0.12595856189727783, - -0.010712393559515476, - -0.014769189059734344, - 0.009770405478775501, - -0.09444763511419296, - 0.10428347438573837, - 0.0815771222114563, - -0.02266279049217701, - 0.0435517318546772, - -0.051708173006772995, - 0.024538608267903328, - 0.07642997056245804, - -0.14907562732696533, - -0.05421648919582367, - 0.08253740519285202, - 0.03526829183101654, - 0.01327831856906414, - 0.1492481231689453, - 0.03444350138306618, - 0.03188977390527725, - 0.08572719991207123, - -0.08569172769784927, - -0.09323955327272415, - -0.07331091910600662, - 0.07598268240690231, - -0.07419396936893463, - 0.08765041083097458, - 0.028623564168810844, - -0.001634847023524344, - -0.03797255828976631, - 0.0289253331720829, - -0.02151227928698063, - 0.029429927468299866, - -0.05495020002126694, - -0.015399664640426636, - 0.07979043573141098, - -0.0740356594324112, - 0.021387577056884766, - 0.006761624943464994, - -0.01709704101085663, - 0.05385821685194969, - 0.03471032530069351, - -0.03326821327209473, - -0.12563538551330566, - 0.003685401752591133, - 0.05497492477297783, - 0.09479479491710663, - -0.019053932279348373, - -0.07465942949056625, - -0.06583745777606964, - -0.05240589380264282, - 0.037893157452344894, - -0.028790488839149475, - 0.06153125315904617, - 0.038089219480752945, - -0.01391951460391283, - 0.10477640479803085, - -0.047057848423719406, - 0.030479364097118378, - -0.0016953053418546915, - -0.015339018777012825, - -0.007733749225735664, - 0.018341461196541786, - -0.0906587690114975, - -0.08532994240522385, - -0.02004626952111721, - -0.011209310963749886, - -0.019155094400048256, - 0.006984043400734663, - 0.00710704131051898, - 0.025630448013544083, - 0.0109371617436409, - -0.07828947901725769, - -0.02800135686993599, - -0.11755731701850891, - -0.07833923399448395, - -0.0259071234613657, - 0.02926010638475418, - -0.0016416204161942005, - 0.07786545902490616, - 0.04187348112463951, - 0.020147088915109634, - 0.0015260165091603994, - -0.048953574150800705, - -0.0736822634935379, - 0.03856421262025833, - 0.070896677672863, - -0.004274791106581688, - 0.05022195726633072, - 0.037424735724925995, - -0.024672996252775192, - 0.027671197429299355, - 0.04090285301208496, - 0.07970910519361496, - -0.006848360877484083, - -0.022482862696051598, - -0.06558993458747864, - 0.13110531866550446, - 0.11166006326675415, - -0.08023499697446823, - -0.08536139130592346, - -0.023370882496237755, - -0.08703171461820602, - 0.009509020484983921, - -0.02097439020872116, - 0.028122292831540108, - -0.00030433348729275167, - -0.03710223734378815, - -0.11090395599603653, - -0.09562809020280838, - 0.025277476757764816, - -0.05576304718852043, - -0.05077287554740906, - -0.10832804441452026, - 0.04808374494314194, - 0.09711091220378876, - 0.01782788150012493, - -0.02110099047422409, - -0.03539315611124039, - 0.030252281576395035, - -0.06695185601711273, - -0.03145667165517807, - 0.05306421220302582, - 0.02451188676059246, - -0.13823451101779938, - -0.019514748826622963, - -0.03546757251024246, - 0.09687231481075287, - -0.09072501212358475, - 0.101354219019413, - 0.021578939631581306, - -0.08464367687702179, - -0.10189229995012283, - 0.039914533495903015, - 0.04118196293711662, - 0.05118982493877411, - 0.008239515125751495, - 0.030299313366413116, - 0.018764406442642212, - -0.07884528487920761, - 0.09468279033899307, - 0.04409037530422211, - 0.01662810891866684, - -0.09230504930019379, - -0.05334858596324921, - -0.012485414743423462, - 0.056828539818525314, - 0.015249905176460743, - -0.05182284861803055, - -0.016369830816984177, - 0.035126689821481705, - -0.006698464043438435, - 0.030547412112355232, - 0.11847157776355743, - 0.03373018279671669, - -0.12432920932769775 - ] - }, - "p245_112.wav": { - "name": "p245", - "embedding": [ - -0.0009802263230085373, - 0.08174587786197662, - -0.022297613322734833, - 0.05671565979719162, - -0.07533954083919525, - 0.04122024402022362, - -0.07901707291603088, - 0.07334195077419281, - -0.040008895099163055, - 0.09940716624259949, - -0.074732705950737, - 0.10062313079833984, - -0.058968156576156616, - -0.16907745599746704, - 0.011732298880815506, - 0.07067835330963135, - -0.010217098519206047, - 0.015776891261339188, - -0.054323963820934296, - -0.03308413177728653, - 0.02753547951579094, - 0.004149802029132843, - 0.07034067809581757, - -0.07410216331481934, - 0.016815539449453354, - 0.0816277414560318, - 0.020690444856882095, - 0.03366517275571823, - -0.01031907182186842, - -0.056505244225263596, - -0.046657562255859375, - 0.10779893398284912, - -0.03677147626876831, - -0.02187792956829071, - 0.03771497309207916, - -0.01023287232965231, - -0.039262332022190094, - -0.03292806074023247, - 0.03921150416135788, - -0.012086894363164902, - -0.04110576957464218, - 0.04990589618682861, - 0.002277469728142023, - -0.022117502987384796, - 0.053709499537944794, - -0.029078945517539978, - -0.05086686089634895, - 0.008605746552348137, - -0.10042262077331543, - 0.12241555750370026, - 0.06355815380811691, - -0.009840436279773712, - -0.07614320516586304, - -0.06971330940723419, - 0.09044612944126129, - 0.026915261521935463, - -0.11820939183235168, - -0.05908767879009247, - 0.08081290125846863, - 0.1179690808057785, - -0.00016829418018460274, - -0.0023905811831355095, - 0.018842794001102448, - 0.07030780613422394, - -0.009298200719058514, - 0.10999328643083572, - 0.048297613859176636, - 0.08664128929376602, - 0.0066216373816132545, - 0.05596403032541275, - 0.0380781926214695, - 0.05797659605741501, - 0.005250042304396629, - -0.020069502294063568, - 0.017919423058629036, - -0.054512910544872284, - -0.024967892095446587, - -3.842124715447426e-05, - -0.009181708097457886, - -0.07244692742824554, - -0.022843975573778152, - -0.04403878375887871, - 0.024410400539636612, - -0.052098535001277924, - -0.009675349108874798, - 0.03293566405773163, - 0.07328155636787415, - -0.012279498390853405, - 0.08596457540988922, - 0.052158892154693604, - -0.03150991350412369, - 0.051902152597904205, - -0.055141765624284744, - -0.06645189225673676, - -0.0039552850648760796, - 0.01636188104748726, - 0.020017027854919434, - 0.06412402540445328, - 0.030177609995007515, - -0.009816373698413372, - 0.07664959132671356, - 0.07388676702976227, - 0.024874798953533173, - 0.0273908618837595, - -0.06444159895181656, - 0.09397181123495102, - 0.11117450892925262, - -0.002812185324728489, - 0.04502446949481964, - -0.019359134137630463, - 0.06258551776409149, - 0.06892985850572586, - -0.07889647036790848, - -0.061794668436050415, - -0.058790531009435654, - -0.04438777267932892, - -0.028374426066875458, - 0.09670434892177582, - -0.004261840134859085, - -0.004163431003689766, - 0.12552669644355774, - -0.12190863490104675, - -0.08938755095005035, - -0.03409399837255478, - 0.023814234882593155, - -0.0643991008400917, - 0.03387078270316124, - 0.07639537751674652, - -0.030473146587610245, - 0.02189747989177704, - 0.049688275903463364, - -0.013621720485389233, - 0.04722753167152405, - 0.05327651649713516, - -0.07378670573234558, - 0.009556584060192108, - -0.04394747316837311, - -0.00473697017878294, - 0.09845617413520813, - 0.05024895817041397, - 0.07578941434621811, - -0.041455067694187164, - 0.020339036360383034, - -0.07199618965387344, - -0.00032202573493123055, - 0.06411229074001312, - 0.005231868475675583, - -0.03483327478170395, - 0.001881057396531105, - -0.017777256667613983, - -0.10686129331588745, - 0.0411837063729763, - -0.01494716014713049, - 0.09120506793260574, - -0.022627366706728935, - -0.009103327989578247, - 0.11127546429634094, - 0.05352877080440521, - -0.025964023545384407, - -0.09588244557380676, - -0.06749939918518066, - 0.05777214094996452, - 0.02400066889822483, - -0.13540257513523102, - -0.05402431637048721, - -0.04703710973262787, - 0.014835123904049397, - -0.015248063951730728, - 0.028131704777479172, - 0.07688596844673157, - 0.02474958449602127, - 0.013577042147517204, - -0.03989001363515854, - 0.057824112474918365, - -0.04226052016019821, - -0.03806401416659355, - -0.023969005793333054, - -0.08808296173810959, - -0.024581748992204666, - 0.09127004444599152, - -0.00015879381680861115, - -0.0023662401363253593, - -0.011115769855678082, - -0.03736710548400879, - -0.06828293949365616, - 0.04172505810856819, - 0.03899235278367996, - -0.013100661337375641, - 0.07425445318222046, - 0.03501540422439575, - -0.07611650973558426, - 0.03888406977057457, - 0.05817209929227829, - 0.0886860191822052, - -0.05818326398730278, - -0.01082757767289877, - -0.08797362446784973, - 0.06570108234882355, - 0.12596997618675232, - -0.07915858924388885, - -0.07743801176548004, - -0.08394711464643478, - -0.04512365162372589, - 0.07957577705383301, - -0.05289927124977112, - -0.04932757839560509, - 0.03850160539150238, - -0.025188328698277473, - -0.08130116015672684, - -0.10619225353002548, - 0.12219294160604477, - -0.021180758252739906, - -0.008895516395568848, - -0.0709991455078125, - 0.03743146359920502, - 0.02384989894926548, - 0.01840767078101635, - -0.06096290424466133, - 0.04182836785912514, - 0.06620658189058304, - -0.03637291491031647, - 0.03359926491975784, - 0.04802922531962395, - 0.03619861230254173, - -0.02270526997745037, - -0.017054516822099686, - -0.0744648277759552, - 0.06370579451322556, - -0.03850877285003662, - 0.14627712965011597, - -0.008775411173701286, - -0.02794124186038971, - -0.06970594823360443, - 0.07781580835580826, - -0.014483317732810974, - 0.02895738184452057, - 0.06764410436153412, - 0.07853825390338898, - 0.01507125236093998, - -0.08431023359298706, - 0.1134813129901886, - -0.01131184957921505, - 0.0026457877829670906, - -0.04900173097848892, - 0.011052620597183704, - -0.0666150152683258, - 0.024891305714845657, - -0.025077415630221367, - -0.10422015190124512, - 0.01919066347181797, - 0.020873498171567917, - 0.016923341900110245, - 0.0581284761428833, - 0.1151733249425888, - 0.06967391073703766, - -0.027923349291086197 - ] - }, - "p245_214.wav": { - "name": "p245", - "embedding": [ - 0.047064945101737976, - 0.09374096989631653, - -0.029795479029417038, - 0.021070312708616257, - -0.05589009076356888, - 0.07865388691425323, - -0.09673842787742615, - 0.11000014841556549, - -0.05048755556344986, - 0.131479412317276, - -0.05370466411113739, - 0.12335020303726196, - -0.015409699641168118, - -0.14077019691467285, - -0.06206444278359413, - 0.04187578707933426, - -0.08741737902164459, - -0.03439265489578247, - -0.057838551700115204, - -0.02681402675807476, - 0.039697375148534775, - 0.025438295677304268, - 0.0642424076795578, - -0.03531991317868233, - 0.03902808204293251, - 0.06412626057863235, - 0.030178818851709366, - 0.060814641416072845, - 0.03210289403796196, - -0.08688667416572571, - -0.044193901121616364, - 0.09137901663780212, - -0.049057118594646454, - 0.02080947905778885, - 0.04218422248959541, - 0.0006431713700294495, - 0.015838002786040306, - -0.0843123123049736, - -0.02381298318505287, - 0.018406018614768982, - -0.015955021604895592, - 0.07347764074802399, - 0.013104238547384739, - -0.0401352196931839, - 0.006440825294703245, - -0.00018069567158818245, - -0.01934182085096836, - -0.04337479919195175, - -0.10113073885440826, - 0.18702459335327148, - 0.07387524843215942, - 0.015530914068222046, - -0.06757976114749908, - -0.09620954096317291, - 0.11589176207780838, - -0.007667948491871357, - -0.11702315509319305, - -0.024702582508325577, - 0.039730995893478394, - 0.15890994668006897, - -0.034337423741817474, - -0.020275689661502838, - 0.029227253049612045, - 0.12411117553710938, - 0.042949289083480835, - 0.062421295791864395, - 0.09880602359771729, - 0.09733450412750244, - 0.006113381125032902, - 0.05861132964491844, - 0.05956602841615677, - 0.10144306719303131, - 0.04811899736523628, - 0.006292167119681835, - 0.030547291040420532, - -0.02756848931312561, - -0.036115359514951706, - -0.016231752932071686, - -0.04358946532011032, - -0.041516147553920746, - -0.015501786023378372, - 0.009788262657821178, - 0.03226057067513466, - 0.019569098949432373, - -0.01108971331268549, - 0.07296542823314667, - -0.015121547505259514, - -0.04750765860080719, - 0.046328455209732056, - 0.022960711270570755, - -0.006325690075755119, - 0.041848886758089066, - -0.06744523346424103, - -0.10826902836561203, - 0.011240575462579727, - 0.01573677361011505, - 0.031987763941287994, - 0.07897083461284637, - 0.05564790964126587, - -0.033009812235832214, - 0.09721823036670685, - 0.06314319372177124, - -0.01413993164896965, - -0.0028952702414244413, - -0.07780136168003082, - 0.11032142490148544, - 0.111485555768013, - -0.01416182890534401, - 0.022237898781895638, - -0.05350640416145325, - 0.09373100101947784, - 0.06556052714586258, - -0.1477869749069214, - -0.09696733206510544, - 0.005461027845740318, - -0.019313577562570572, - 0.004709434229880571, - 0.0838983878493309, - -0.013766838237643242, - 0.03721331059932709, - 0.10485678166151047, - -0.08244822919368744, - -0.044463638216257095, - -0.03709612786769867, - 0.053563982248306274, - -0.050841473042964935, - 0.03447488695383072, - 0.04613909497857094, - -0.01970847323536873, - -0.010802707634866238, - 0.06719760596752167, - -0.018274515867233276, - -0.009892809204757214, - 0.045708656311035156, - -0.05996613949537277, - 0.02718154340982437, - -0.04021844640374184, - -0.010672122240066528, - 0.06381121277809143, - 0.06861798465251923, - 0.04255390912294388, - -0.013168737292289734, - -0.04493601620197296, - -0.07938000559806824, - 0.016043849289417267, - 0.03960055857896805, - 0.05487310141324997, - -0.029077205806970596, - -0.03648816794157028, - -0.01762356236577034, - -0.0602191686630249, - 0.030928272753953934, - -0.00013626401778310537, - 0.07913556694984436, - -0.01807384565472603, - 0.00330669479444623, - 0.10706989467144012, - 0.006294815801084042, - -0.032156262546777725, - -0.030468961223959923, - -0.008995155803859234, - 0.04417487606406212, - 0.043615393340587616, - -0.06412704288959503, - -0.07915131747722626, - 0.007170567288994789, - -0.0034205028787255287, - -0.02790575660765171, - 0.038497958332300186, - 0.02190997079014778, - 0.011776771396398544, - 0.02892483025789261, - -0.04509740322828293, - -0.013596253469586372, - -0.11366325616836548, - -0.02900163270533085, - -0.010162962600588799, - -0.06506217271089554, - -0.04136526957154274, - 0.08132496476173401, - 0.02283637784421444, - 0.04748018458485603, - -0.006393404211848974, - -0.07064872235059738, - -0.050806254148483276, - 0.06312011182308197, - 0.06869572401046753, - 0.023169487714767456, - 0.03028082475066185, - 0.07200144976377487, - 0.026990236714482307, - 0.0423385351896286, - 0.06885185837745667, - 0.07954250276088715, - -0.030644822865724564, - -0.022927861660718918, - -0.0760050043463707, - 0.09944835305213928, - 0.06745614856481552, - -0.09499670565128326, - -0.07299520075321198, - -0.05125616863369942, - -0.07023270428180695, - 0.03086809068918228, - -0.03088713437318802, - 0.010799797251820564, - 0.0277373306453228, - -0.015600482001900673, - -0.11233333498239517, - -0.09321694076061249, - 0.11651705205440521, - -0.06504756212234497, - -0.019255002960562706, - -0.05156809836626053, - 0.030898239463567734, - 0.11055074632167816, - 0.043039415031671524, - 0.0038550500757992268, - 0.03207135945558548, - 0.04429542273283005, - -0.05662743002176285, - -0.016363929957151413, - 0.0314166434109211, - 0.009591658599674702, - -0.09701497852802277, - 0.013765759766101837, - -0.05995069444179535, - 0.03888368234038353, - -0.06455570459365845, - 0.14857006072998047, - -0.013764876872301102, - -0.05282110720872879, - -0.0901290774345398, - 0.0639055147767067, - -0.06208319962024689, - 0.04900985211133957, - 0.05416499078273773, - 0.05222054570913315, - 0.014623776078224182, - -0.11301794648170471, - 0.13485057651996613, - 0.03911841660737991, - -0.03812802955508232, - -0.08746892213821411, - -0.06006479263305664, - -0.016906699165701866, - 0.01666960120201111, - 0.008866417221724987, - -0.04860284924507141, - 0.00625983439385891, - -0.0016223359853029251, - -0.022989757359027863, - 0.062379077076911926, - 0.14042839407920837, - 0.08589006960391998, - -0.08640982210636139 - ] - }, - "p245_215.wav": { - "name": "p245", - "embedding": [ - 0.05340327322483063, - 0.10633864998817444, - 0.016881447285413742, - 0.011955846101045609, - -0.028103653341531754, - 0.039301495999097824, - -0.007915105670690536, - 0.07690724730491638, - 0.03343275189399719, - 0.0071962811052799225, - -0.10044921934604645, - 0.05461234971880913, - -0.05114267021417618, - -0.1005287915468216, - 0.03138060122728348, - 0.04352860525250435, - -0.028951672837138176, - 0.011115949600934982, - -0.05946015566587448, - -0.027463845908641815, - -0.04222572222352028, - -0.01483626663684845, - 0.0420759841799736, - -0.007125634700059891, - 0.017293814569711685, - 0.02452283538877964, - -0.04159819334745407, - -0.008275894448161125, - -0.033947646617889404, - -0.015321293845772743, - -0.04088747873902321, - 0.02245538868010044, - -0.026904450729489326, - -0.017765305936336517, - 0.003981326706707478, - -0.03462702035903931, - 0.02976091578602791, - -0.06605526804924011, - -0.0760427936911583, - 0.035450588911771774, - -0.061423659324645996, - 0.043719857931137085, - 0.03152107819914818, - -0.06027592718601227, - 0.07246733456850052, - 0.03666800633072853, - -0.05529148504137993, - -0.0057771094143390656, - -0.10241740942001343, - 0.10199737548828125, - 0.015739869326353073, - 0.03047354705631733, - -0.06237658113241196, - -0.0009945407509803772, - 0.07519080489873886, - -0.02481830306351185, - -0.033776238560676575, - -0.019413195550441742, - 0.028561802580952644, - 0.019934870302677155, - 0.028781460598111153, - -0.007138711400330067, - 0.00945344753563404, - 0.030890248715877533, - 0.06488597393035889, - 0.005041081458330154, - 0.06499192118644714, - 0.09021380543708801, - -0.04256809875369072, - 0.02328052558004856, - 0.049421776086091995, - 0.0002708360552787781, - 0.048158034682273865, - -0.007632295601069927, - -0.0066888523288071156, - -0.0028166454285383224, - -0.0018488089554011822, - -0.036213528364896774, - -0.013678686693310738, - -0.020208947360515594, - 0.036172378808259964, - 0.009933008812367916, - 0.026395440101623535, - 0.003233599476516247, - -0.03619940206408501, - 0.0026943646371364594, - 0.06542219966650009, - 0.074161097407341, - 0.06696416437625885, - 0.03806217014789581, - -0.031037840992212296, - 0.06247745454311371, - -0.046704474836587906, - -0.0468948557972908, - 0.0014159264974296093, - 0.01603846065700054, - -0.007557017263025045, - 0.012560242787003517, - 0.030513733625411987, - -0.021396394819021225, - 0.09735725820064545, - -0.00040161237120628357, - 0.03699781745672226, - 0.00926295481622219, - -0.04896874353289604, - 0.022798974066972733, - 0.053600162267684937, - -0.025863278657197952, - 0.06389139592647552, - 0.05553627386689186, - 0.05068339407444, - 0.06422695517539978, - -0.04759574681520462, - 0.012998662889003754, - -0.03497140854597092, - 0.009746340103447437, - 0.030462805181741714, - 0.07011143863201141, - 0.002916098339483142, - 0.05067679286003113, - 0.1155703067779541, - -0.06528075039386749, - 0.015539305284619331, - 0.07424341887235641, - -0.001646561548113823, - 0.01806781068444252, - 0.02655821666121483, - 0.045040328055620193, - -0.003527548164129257, - -0.004002511501312256, - 0.009933184832334518, - 0.027712196111679077, - 0.012289375066757202, - -0.05542512238025665, - 0.0071549974381923676, - -0.02295861765742302, - 0.0007631317712366581, - -0.03404443711042404, - 0.04421551153063774, - 0.047018758952617645, - -0.0211980938911438, - 0.03315199539065361, - -0.03931222856044769, - -0.060177698731422424, - 0.029677048325538635, - -0.025737091898918152, - 0.0119534432888031, - 0.056419603526592255, - -0.0043476177379488945, - -0.05137646943330765, - 0.003010384738445282, - 0.042700670659542084, - -0.0047316947020590305, - 0.04177888110280037, - 0.04720599949359894, - -0.04274782910943031, - 0.04149050638079643, - 0.032853126525878906, - 0.02865358255803585, - -0.04825536534190178, - -0.09471835941076279, - -0.006813532207161188, - 0.03889298439025879, - -0.018483903259038925, - -0.05374060198664665, - -0.019268011674284935, - -0.03440209850668907, - 0.00211772951297462, - 0.023846661671996117, - 0.0755378007888794, - -0.025281261652708054, - -0.044753298163414, - -0.0645294263958931, - 0.022926198318600655, - 0.00519133172929287, - -0.10383737087249756, - 0.06645971536636353, - 0.019896792247891426, - 0.010932762175798416, - 0.09003394097089767, - 0.028335466980934143, - 0.016694311052560806, - -0.04772309213876724, - -0.05228255316615105, - 0.01909811794757843, - 0.03237741440534592, - -0.001835099421441555, - -0.01396514568477869, - 0.04869674891233444, - 0.04550394043326378, - -0.036374419927597046, - 0.04230061173439026, - 0.00609235092997551, - 0.037768810987472534, - -0.0290360189974308, - 0.011342196725308895, - 0.04197467863559723, - 0.0473606251180172, - 0.031079819425940514, - -0.05481845512986183, - -0.08514288812875748, - -0.04372561350464821, - -0.013911528512835503, - 0.015830835327506065, - 0.029978711158037186, - 0.02546517923474312, - 0.045097097754478455, - -0.0013326751068234444, - -0.010913103818893433, - -0.1187296062707901, - -0.004345055669546127, - 0.009404845535755157, - -0.015766851603984833, - -0.014623725786805153, - 0.019849084317684174, - 0.013312287628650665, - -0.00048827752470970154, - -0.003574371337890625, - 0.034068118780851364, - -0.00222137663513422, - 0.022723587229847908, - -0.033382244408130646, - 0.024314584210515022, - 0.038221798837184906, - 0.018750663846731186, - -0.019439980387687683, - -0.08463259041309357, - 0.06716679036617279, - 0.06160535290837288, - 0.09457183629274368, - 0.03948646038770676, - 0.03383138030767441, - -0.06190531700849533, - 0.038250964134931564, - -0.023806357756257057, - 0.02556297369301319, - -0.025996921584010124, - 0.0302744060754776, - 0.051189325749874115, - -0.009792758151888847, - 0.04220205917954445, - 0.02648290991783142, - -0.04122382029891014, - -0.01870855689048767, - 0.005629613995552063, - -0.07677137106657028, - -0.025150945410132408, - -0.022165482863783836, - -0.042740389704704285, - 0.010031008161604404, - 0.011736268177628517, - 0.07382740825414658, - 0.029676204547286034, - 0.056366175413131714, - 0.031996890902519226, - -0.006148543208837509 - ] - }, - "p245_110.wav": { - "name": "p245", - "embedding": [ - 0.02555643394589424, - 0.07235626876354218, - 0.01770714856684208, - 0.026068637147545815, - -0.04630326107144356, - 0.03194857016205788, - -0.11019507050514221, - 0.13463464379310608, - -0.0429706908762455, - 0.1285693645477295, - -0.09663064777851105, - 0.08202726393938065, - -0.07185394316911697, - -0.1800156533718109, - 0.020058924332261086, - 0.04866713285446167, - 0.0034322692081332207, - 0.006989171728491783, - -0.03739259019494057, - -0.01714503951370716, - 0.013698607683181763, - 0.022624261677265167, - 0.020074687898159027, - 0.012232186272740364, - 0.004504336975514889, - 0.0857618898153305, - -0.01760084182024002, - 0.02221524715423584, - -0.012096527963876724, - -0.021842781454324722, - -0.03781283646821976, - 0.11227633059024811, - -0.07059779763221741, - -0.0024249600246548653, - 0.09085740149021149, - -0.016050709411501884, - -0.07173023372888565, - -0.007009584456682205, - -0.010077418759465218, - -0.034766700118780136, - -0.09529420733451843, - 0.05475795269012451, - 0.01458156481385231, - 0.016427000984549522, - 0.06712383776903152, - 0.049199193716049194, - -0.0038540740497410297, - -0.018240638077259064, - -0.08559584617614746, - 0.08013657480478287, - 0.06938417255878448, - -0.015711436048150063, - -0.03539039194583893, - -0.05248210206627846, - 0.07989786565303802, - -0.016821742057800293, - -0.10916199535131454, - -0.059557169675827026, - 0.11869795620441437, - 0.11590433120727539, - -0.05694813281297684, - -0.02093386836349964, - 0.003558643162250519, - 0.086424820125103, - 0.029945047572255135, - 0.1258133053779602, - 0.047477301210165024, - 0.09240173548460007, - -0.01444920152425766, - 0.029028236865997314, - 0.052897460758686066, - 0.036802634596824646, - 0.07295069098472595, - -0.034984417259693146, - -0.0023337118327617645, - 0.023935696110129356, - -0.00937301479279995, - 0.015886934474110603, - -0.006022213026881218, - 0.0020228582434356213, - -0.01804099604487419, - -0.04307274892926216, - -0.009423762559890747, - -0.035697948187589645, - 0.013644331134855747, - 0.03897920995950699, - 0.08407110720872879, - 0.007962756790220737, - 0.08778700977563858, - 0.007871446199715137, - -0.05993299186229706, - 0.07932788878679276, - -0.07809124886989594, - -0.017535602673888206, - -0.011218776926398277, - -0.03262505680322647, - 0.012550795450806618, - 0.08188579976558685, - 0.03862619400024414, - 0.007160184904932976, - 0.11518634855747223, - 0.022629477083683014, - 0.028711212798953056, - 0.05931922793388367, - -0.11019732058048248, - 0.1228824257850647, - 0.048726409673690796, - -0.042014531791210175, - 0.0452614389359951, - -0.028597736731171608, - 0.0609288364648819, - 0.0787540152668953, - -0.11722566932439804, - -0.01935793273150921, - -0.016635458916425705, - -0.019967833533883095, - -0.05789241939783096, - 0.11276793479919434, - -0.023669414222240448, - -0.020678788423538208, - 0.1348908543586731, - -0.10980445146560669, - -0.07240233570337296, - -0.0003691096499096602, - 0.01737053133547306, - -0.13624191284179688, - 0.04622536897659302, - 0.04442868381738663, - -0.013762760907411575, - 0.04043731838464737, - 0.12342032045125961, - -0.01572316884994507, - -0.008604258298873901, - 0.0054579731076955795, - -0.051671016961336136, - -0.0074430713430047035, - -0.03893083333969116, - 0.02852053940296173, - 0.060383982956409454, - 0.03592574596405029, - 0.060844436287879944, - -0.01535792276263237, - -0.0077037084847688675, - -0.08128048479557037, - -0.008699445053935051, - 0.054758574813604355, - 0.05283838510513306, - -0.010027196258306503, - 0.003271749010309577, - -0.042886462062597275, - -0.08479133248329163, - 0.03776728734374046, - -0.013723475858569145, - 0.055247992277145386, - -0.040381886065006256, - 0.004527071490883827, - 0.11329612135887146, - 0.046185653656721115, - -0.013349653221666813, - -0.12891486287117004, - -0.038776032626628876, - 0.0022130890283733606, - 0.05557439476251602, - -0.12151066213846207, - -0.05831880867481232, - -0.02554401010274887, - 0.057104989886283875, - -0.009181196801364422, - 0.03971859812736511, - 0.03621897101402283, - 0.039036307483911514, - 0.011169672012329102, - -0.0295325368642807, - 0.014777950942516327, - -0.059585779905319214, - -0.087800994515419, - -0.0345965139567852, - -0.027754995971918106, - -0.014154193922877312, - 0.04475027322769165, - -0.032369453459978104, - 0.01805879734456539, - -0.0025275805965065956, - -0.07460813224315643, - -0.09717938303947449, - 0.0600360706448555, - 0.0318426676094532, - -0.018791604787111282, - 0.04684809595346451, - 0.041291236877441406, - -0.13143031299114227, - 0.036254823207855225, - 0.04524070769548416, - 0.14362019300460815, - -0.047457944601774216, - 0.06435289978981018, - -0.05861120671033859, - 0.03930116444826126, - 0.09640099853277206, - -0.08042299747467041, - -0.0909884124994278, - -0.018367188051342964, - -0.035890843719244, - 0.07536790519952774, - -0.03099660575389862, - -0.04874314367771149, - 0.0047473907470703125, - -0.01652522385120392, - -0.039226893335580826, - -0.06445834040641785, - 0.07846919447183609, - -0.03068755567073822, - -0.009995811618864536, - -0.09745784103870392, - 0.0478726401925087, - 0.003368699923157692, - 0.06446559727191925, - -0.014516664668917656, - 0.011852843686938286, - 0.0683678388595581, - -0.0370762012898922, - 0.004386263433843851, - 0.09676545113325119, - 0.02815013751387596, - -0.04111116752028465, - -0.052117787301540375, - -0.07754398137331009, - 0.07877151668071747, - -0.03502999246120453, - 0.11218953877687454, - -0.03431636095046997, - -0.0400056354701519, - -0.03413724526762962, - -0.0019906521774828434, - 0.01643894612789154, - 0.01642376184463501, - 0.059626124799251556, - 0.0699956938624382, - 0.02787698619067669, - -0.020561281591653824, - 0.1302621066570282, - -0.007433319464325905, - 0.011815494857728481, - -0.01599222794175148, - -0.03756856173276901, - -0.0720696672797203, - -0.021684154868125916, - -0.010201646015048027, - -0.15179437398910522, - 0.009371409192681313, - 0.00499859731644392, - -0.02156764827668667, - 0.02268831990659237, - 0.12261008471250534, - 0.06367574632167816, - -0.09981290996074677 - ] - }, - "p245_261.wav": { - "name": "p245", - "embedding": [ - 0.028719626367092133, - 0.0682663768529892, - -0.04940575361251831, - 0.03504057228565216, - -0.016620462760329247, - 0.04279787093400955, - -0.12955424189567566, - 0.06353916227817535, - -0.04909253492951393, - 0.14170783758163452, - -0.09153395891189575, - 0.06715115904808044, - -0.02883533574640751, - -0.1582050621509552, - -0.02464410848915577, - 0.055761996656656265, - -0.01921982318162918, - -0.00347290001809597, - -0.06350982189178467, - -0.015356123447418213, - 0.05540609359741211, - 0.06547226011753082, - 0.01876433566212654, - -0.049175627529621124, - 0.006675088312476873, - 0.05275445431470871, - -0.02564014494419098, - -0.0010150463785976171, - -0.03351340442895889, - -0.03141164034605026, - -0.008707764558494091, - 0.12295949459075928, - 0.0034940880723297596, - 0.003139996435493231, - 0.015117807313799858, - 0.051158081740140915, - -0.021998688578605652, - -0.07792427390813828, - -0.0007367711514234543, - -0.008576905354857445, - -0.0631859079003334, - 0.035880327224731445, - 0.006141346879303455, - -0.038210514932870865, - 0.07119050621986389, - -0.07058751583099365, - -0.04105035215616226, - -0.03922830522060394, - -0.08949838578701019, - 0.17172160744667053, - 0.06163036823272705, - 0.045889709144830704, - -0.09138541668653488, - -0.05498262494802475, - 0.1072787344455719, - 0.014204464852809906, - -0.08314104378223419, - -0.048729151487350464, - 0.05059795081615448, - 0.1794515699148178, - -0.004692745860666037, - -0.020559659227728844, - 0.060942020267248154, - 0.060778748244047165, - -0.015036608092486858, - 0.09242556989192963, - 0.07661066204309464, - 0.05347227305173874, - 0.0388450026512146, - 0.005949879996478558, - 0.04976240545511246, - 0.07206512987613678, - 0.027056021615862846, - -0.06214090436697006, - 0.02311357483267784, - 0.00044776126742362976, - -0.07447825372219086, - 0.011545495130121708, - -0.027642032131552696, - -0.05656038597226143, - 0.014318699017167091, - -0.026159826666116714, - 0.023067116737365723, - -0.005185766611248255, - -0.07371778786182404, - -0.02234519273042679, - 0.07163495570421219, - -0.06722832471132278, - 0.05723799020051956, - 0.06098293885588646, - 0.024096745997667313, - -0.001870916225016117, - -0.027889618650078773, - -0.10887596011161804, - 0.0246100053191185, - 0.04710167646408081, - -0.03869970142841339, - 0.04575304687023163, - 0.04728969559073448, - -0.03264822065830231, - 0.07574567198753357, - -0.002339482307434082, - 0.013620937243103981, - 0.006478495895862579, - -0.09110035747289658, - 0.07065313309431076, - 0.14203159511089325, - -0.0036951114889234304, - 0.04770747199654579, - -0.04089842364192009, - 0.021626245230436325, - 0.09142092615365982, - -0.10794660449028015, - -0.07400927692651749, - 0.027334842830896378, - -0.008714540861546993, - 0.051466234028339386, - 0.1170751303434372, - 0.0508880615234375, - -0.0033791083842515945, - 0.10336221754550934, - -0.12567271292209625, - -0.08851557970046997, - -0.04820217937231064, - 0.03977808356285095, - -0.06521207094192505, - 0.06675456464290619, - 0.07564829289913177, - 0.005411386024206877, - -0.016224874183535576, - 0.0325373075902462, - -0.022063452750444412, - 0.04771711677312851, - -0.05338918790221214, - -0.022877052426338196, - 0.039339084178209305, - -0.06750660389661789, - -0.03709257021546364, - 0.07008512318134308, - 0.0391334593296051, - 0.0582529678940773, - -0.012380555272102356, - -0.027346568182110786, - -0.10309469699859619, - -0.009733662940561771, - 0.07755441963672638, - 0.03022763319313526, - -0.020615937188267708, - -0.001985626295208931, - -0.05781591311097145, - -0.08478523045778275, - 0.05125606432557106, - -0.08793842792510986, - 0.10906244814395905, - 0.03553424030542374, - 0.012464728206396103, - 0.12585753202438354, - -0.020334316417574883, - -0.01074310578405857, - -0.050014056265354156, - -0.010473500937223434, - 0.03056339919567108, - 0.03348955512046814, - -0.07469385117292404, - -0.07651777565479279, - -0.02957879565656185, - 0.005555484443902969, - -0.013957532122731209, - 0.008994956500828266, - 0.04029555991292, - 0.015366200357675552, - 0.01623581536114216, - -0.1108129471540451, - 0.04026583582162857, - -0.11875109374523163, - -0.03266284987330437, - 0.007016483228653669, - -0.06607335805892944, - 0.018608558923006058, - 0.12396019697189331, - 0.01859358139336109, - -0.050637125968933105, - -0.058687955141067505, - -0.09448264539241791, - -0.060775838792324066, - 0.06692124903202057, - 0.07513782382011414, - -0.00427282927557826, - 0.020299918949604034, - 0.011965272948145866, - 0.0041732583194971085, - 0.015369415283203125, - 0.06248774379491806, - 0.10406634956598282, - -0.0048499819822609425, - -0.030295372009277344, - -0.06337064504623413, - 0.10416190326213837, - 0.09583314508199692, - -0.050846487283706665, - -0.07677732408046722, - -0.04408232867717743, - -0.06627500057220459, - 0.054286010563373566, - -0.04040510952472687, - -0.007627756800502539, - 0.03301994502544403, - -0.05689230561256409, - -0.14404836297035217, - -0.0914098471403122, - 0.07674422115087509, - 0.007081826217472553, - -0.023436736315488815, - -0.07264649868011475, - 0.03708415478467941, - 0.03996081277728081, - 0.01779070869088173, - -0.046048760414123535, - 0.01382038276642561, - 0.014750783331692219, - -0.08491375297307968, - -0.008266124874353409, - 0.0039771609008312225, - 0.0008199198637157679, - -0.07435379922389984, - 0.008985860273241997, - -0.07965540885925293, - 0.11350997537374496, - -0.06394005566835403, - 0.10732769966125488, - -0.013949532061815262, - -0.060727380216121674, - -0.08874869346618652, - 0.0719105526804924, - 0.01938960887491703, - 0.033333919942379, - 0.03244972229003906, - 0.05756678059697151, - 0.050989627838134766, - -0.0989881157875061, - 0.0424191839993, - 0.04609941691160202, - 0.024677548557519913, - -0.05812446027994156, - -0.04080793634057045, - -0.032777562737464905, - 0.02581276372075081, - -0.046896569430828094, - -0.046861421316862106, - 0.03433758765459061, - 0.009798077866435051, - 0.02808917500078678, - 0.06244601309299469, - 0.07803112268447876, - 0.032547835260629654, - -0.10110392421483994 - ] - }, - "p245_111.wav": { - "name": "p245", - "embedding": [ - 0.03550855442881584, - 0.14485898613929749, - -0.010829811915755272, - -0.03280510753393173, - -0.03996242582798004, - 0.039297379553318024, - -0.14222826063632965, - 0.1331581324338913, - -0.016904544085264206, - 0.12735259532928467, - -0.10943038016557693, - 0.11034969985485077, - -0.08529987931251526, - -0.10741734504699707, - -0.02197076380252838, - 0.012994790449738503, - 0.025103982537984848, - 0.02306518144905567, - -0.022478360682725906, - -0.030524447560310364, - 0.03684055060148239, - 0.03498847037553787, - 0.01673566922545433, - -0.02004510723054409, - 0.007751945871859789, - 0.0461181104183197, - -0.0013326248154044151, - 0.05583211034536362, - 0.012679265812039375, - -0.016813842579722404, - 0.0006979331374168396, - 0.08946909010410309, - -0.045991286635398865, - 0.041900523006916046, - 0.05703932046890259, - 0.010381726548075676, - -0.024921881034970284, - -0.0243266262114048, - 0.036851316690444946, - -0.0033594791311770678, - -0.0234886035323143, - 0.061311401426792145, - 0.022858023643493652, - -0.01987280137836933, - 0.0304512158036232, - 0.06362675130367279, - 0.028783652931451797, - -0.03097056970000267, - -0.07412416487932205, - 0.13080735504627228, - 0.02817368507385254, - -0.013529549352824688, - -0.07549724727869034, - -0.03104124590754509, - 0.08248063921928406, - -0.0479760579764843, - -0.05786697939038277, - -0.07814197987318039, - 0.060501545667648315, - 0.08764363825321198, - -0.048179976642131805, - -0.0659920945763588, - 0.007014569826424122, - 0.09848722815513611, - 0.018647005781531334, - 0.06673350185155869, - 0.08258254826068878, - 0.12289552390575409, - -0.041442207992076874, - -0.010779842734336853, - -0.0037249941378831863, - 0.04359939694404602, - 0.008133910596370697, - -0.0006030024960637093, - 0.016861408948898315, - -0.03304049000144005, - 0.009248674847185612, - 0.054975561797618866, - -0.04692225903272629, - -0.04663801193237305, - -0.03479180485010147, - 0.02962360344827175, - -0.047401636838912964, - -0.013485975563526154, - -0.021126369014382362, - 0.06323599815368652, - 0.044344738125801086, - -0.02065996080636978, - 0.09202764928340912, - 0.045098792761564255, - 0.004654675256460905, - 0.029217151924967766, - -0.08452662825584412, - -0.04490996152162552, - 0.013734543696045876, - -0.03426099568605423, - 0.004958480596542358, - 0.08601246774196625, - 0.014770184643566608, - 0.006437203846871853, - 0.11453334987163544, - 0.02017252892255783, - -0.00776681350544095, - 0.01847825199365616, - -0.0804281085729599, - 0.1612178385257721, - 0.07517047226428986, - -0.04474687576293945, - 0.015668615698814392, - -0.06843627244234085, - -0.0033770427107810974, - 0.03790973871946335, - -0.07300029695034027, - -0.08607394993305206, - 0.01222588773816824, - 0.041114211082458496, - -0.019171588122844696, - 0.07914507389068604, - -0.011501951143145561, - 0.0008063190616667271, - 0.12321918457746506, - -0.07063327729701996, - -0.08817235380411148, - -0.008862371556460857, - 0.030997196212410927, - -0.047107189893722534, - 0.04081398993730545, - 0.08151167631149292, - 0.007638392969965935, - 0.03005233407020569, - 0.08584250509738922, - 0.019545547664165497, - 0.046437494456768036, - 0.006292250473052263, - -0.04177769646048546, - 0.00728335976600647, - -0.013473732396960258, - -0.012093758210539818, - 0.0013461187481880188, - 0.09340496361255646, - 0.090224489569664, - 0.024059699848294258, - -0.02864828333258629, - -0.10220964252948761, - -0.010555543005466461, - 0.06303481757640839, - 0.03227592632174492, - -0.030729053542017937, - -0.019810186699032784, - -0.0417516827583313, - -0.03278498351573944, - -0.018932055681943893, - -0.0021347845904529095, - 0.07034353911876678, - -0.051769934594631195, - 0.01090044155716896, - 0.13358326256275177, - 0.037237100303173065, - 0.009262293577194214, - -0.06731415539979935, - -0.014622404240071774, - -0.02947082556784153, - 0.01738361455500126, - -0.07015276700258255, - -0.09717075526714325, - -0.03522675111889839, - 0.05434386804699898, - -0.006228724494576454, - 0.0832095593214035, - 0.060385528951883316, - 0.006247204728424549, - 0.044586025178432465, - -0.05626225844025612, - 0.02354953996837139, - -0.05149802565574646, - -0.051610447466373444, - -0.017696933820843697, - -0.0015532439574599266, - -0.009260283783078194, - 0.06963570415973663, - 0.008927978575229645, - 0.066965252161026, - 0.01630980521440506, - -0.08143803477287292, - -0.11671242117881775, - 0.015963826328516006, - 0.06909096240997314, - -0.041098590940237045, - 0.051891714334487915, - 0.04089884087443352, - -0.05928340181708336, - 0.0590372160077095, - 0.06834644079208374, - 0.0473015271127224, - -0.03937268629670143, - 0.009194767102599144, - -0.055180251598358154, - 0.02112501859664917, - 0.07843370735645294, - -0.10434204339981079, - -0.06425374746322632, - -0.06442097574472427, - -0.022550711408257484, - -0.03478993475437164, - -0.010842906311154366, - 0.014627031050622463, - 0.013083430007100105, - 0.0014417776837944984, - -0.0695328414440155, - -0.08121350407600403, - 0.011930480599403381, - -0.058943212032318115, - 0.034701064229011536, - -0.06020333617925644, - 0.04696594178676605, - 0.06092483177781105, - 0.04206293821334839, - -0.032730501145124435, - -0.04312049597501755, - 0.028974315151572227, - -0.029506759718060493, - 0.019039565697312355, - 0.0474838986992836, - 0.05166543275117874, - -0.032307956367731094, - 0.04034123569726944, - -0.08381982147693634, - 0.06599937379360199, - -0.047803476452827454, - 0.1456785947084427, - 0.027119625359773636, - -0.07268694043159485, - -0.08589650690555573, - -0.0002403393154963851, - -0.052077047526836395, - 0.021691421046853065, - -0.006582115776836872, - 0.016479825600981712, - 0.012505254708230495, - -0.046623602509498596, - 0.12616442143917084, - 0.0442710742354393, - -0.05161421746015549, - -0.08115414530038834, - -0.07762987911701202, - -0.06402859091758728, - 0.020394140854477882, - 0.030192259699106216, - -0.08394274115562439, - -0.0313834585249424, - 0.006412512622773647, - -0.014594304375350475, - 0.08737412095069885, - 0.12215501070022583, - 0.07093289494514465, - -0.12070630490779877 - ] - }, - "p245_041.wav": { - "name": "p245", - "embedding": [ - 0.0477493517100811, - 0.09237784147262573, - -0.04194314032793045, - 0.015993749722838402, - -0.06453871726989746, - 0.04421694204211235, - -0.11807951331138611, - 0.12396105378866196, - -0.02690242789685726, - 0.1365990936756134, - -0.06510811299085617, - 0.13611844182014465, - -0.008770588785409927, - -0.16155876219272614, - -0.034966230392456055, - 0.02737453207373619, - -0.043871812522411346, - -0.025151420384645462, - -0.061628472059965134, - -0.049977779388427734, - 0.051731400191783905, - 0.048346951603889465, - 0.03644756227731705, - -0.02840607985854149, - 0.016115382313728333, - 0.06663861870765686, - 0.005010311957448721, - 0.0280466228723526, - 0.007017101161181927, - -0.06567616760730743, - -0.044305138289928436, - 0.09010188281536102, - -0.05202030390501022, - 0.012884674593806267, - 0.038975901901721954, - -0.021395020186901093, - -0.004304943140596151, - -0.06211567670106888, - -0.026561586186289787, - 0.02595832198858261, - -0.03137664496898651, - 0.06644094735383987, - 0.01489008218050003, - -0.033769767731428146, - 0.05108369514346123, - 0.0031738176476210356, - -0.019590381532907486, - -0.04465639218688011, - -0.09283270686864853, - 0.1672413945198059, - 0.07739828526973724, - 0.004435134120285511, - -0.07296284288167953, - -0.05701959878206253, - 0.10157613456249237, - -0.024667665362358093, - -0.10168250650167465, - -0.029142102226614952, - 0.04136113449931145, - 0.1286768764257431, - -0.03394491225481033, - -0.04360955208539963, - 0.04500718042254448, - 0.10438748449087143, - 0.051580771803855896, - 0.05864544212818146, - 0.1077108085155487, - 0.10473759472370148, - -0.0309605710208416, - 0.023109566420316696, - 0.04447374865412712, - 0.09272312372922897, - 0.05901356786489487, - -0.011929653584957123, - 0.03504199534654617, - -0.004105374217033386, - -0.01844783127307892, - -0.020031172782182693, - -0.03811773657798767, - -0.02390196919441223, - -0.006757264956831932, - 0.012772822752594948, - 0.01802491582930088, - 0.02396896481513977, - -0.04342176765203476, - 0.06574518978595734, - 0.04898051545023918, - -0.03049437701702118, - 0.05111781880259514, - 0.041526615619659424, - 0.01291646622121334, - 0.05399622023105621, - -0.0910683199763298, - -0.09725426137447357, - 0.03494423255324364, - 0.0060155875980854034, - 0.00856709759682417, - 0.07191620767116547, - 0.05017685517668724, - -0.02178741991519928, - 0.10842698812484741, - 0.05835350602865219, - -0.02091311663389206, - 0.009147617034614086, - -0.07842686772346497, - 0.1159372627735138, - 0.12462387979030609, - -0.03323308005928993, - 0.033219143748283386, - -0.05944114178419113, - 0.0759272575378418, - 0.047366105020046234, - -0.1181628555059433, - -0.08785824477672577, - 0.024486316367983818, - 0.0008049008320085704, - 0.0021551456302404404, - 0.11213827133178711, - -0.004702751990407705, - 0.05059404298663139, - 0.11286967992782593, - -0.07962623238563538, - -0.054937005043029785, - -0.04110291972756386, - 0.045597486197948456, - -0.07029402256011963, - 0.060428276658058167, - 0.06039038300514221, - 0.004759245552122593, - 0.007408760488033295, - 0.06954717636108398, - -0.017764568328857422, - 0.004618425853550434, - 0.00407846225425601, - -0.041635021567344666, - 0.017860565334558487, - -0.013863824307918549, - -0.0257607102394104, - 0.04759707674384117, - 0.05385126918554306, - 0.0446147620677948, - -0.00906505435705185, - -0.022154850885272026, - -0.10992348194122314, - 0.032542936503887177, - 0.027880478650331497, - 0.05512824282050133, - -0.020555822178721428, - -0.01608181558549404, - -0.02974173054099083, - -0.0684344619512558, - 0.009244384244084358, - -0.01695946604013443, - 0.061791520565748215, - -0.02952212654054165, - 0.00883636437356472, - 0.10563653707504272, - 0.026330173015594482, - -0.009894780814647675, - -0.02149779722094536, - -0.0250079445540905, - 0.010634174570441246, - 0.050586216151714325, - -0.06921441853046417, - -0.09290610253810883, - -0.029016582295298576, - 0.012191740795969963, - -0.018572300672531128, - 0.06368248164653778, - 0.053111325949430466, - 0.007641030475497246, - 0.0381646454334259, - -0.07638256251811981, - 0.007735195569694042, - -0.11101382225751877, - -0.051872946321964264, - -0.016163796186447144, - -0.040560003370046616, - -0.021449659019708633, - 0.07260923087596893, - 0.012661389075219631, - 0.04406234622001648, - -0.030989903956651688, - -0.07271388918161392, - -0.06864629685878754, - 0.05229887366294861, - 0.06854039430618286, - 0.0027720890939235687, - 0.032364506274461746, - 0.06306475400924683, - -0.0015725692501291633, - 0.04637237638235092, - 0.07249733060598373, - 0.08299090713262558, - -0.020934831351041794, - 0.009450020268559456, - -0.0701339840888977, - 0.1035202294588089, - 0.07218052446842194, - -0.07887984812259674, - -0.08870985358953476, - -0.0490020290017128, - -0.06473680585622787, - 0.023912271484732628, - -0.022393954917788506, - 0.01675771176815033, - 0.03506441041827202, - 0.009061263874173164, - -0.10205816477537155, - -0.0841464027762413, - 0.08850695192813873, - -0.055125847458839417, - -0.0012489210348576307, - -0.0738770142197609, - 0.03230364993214607, - 0.10851822793483734, - 0.02782110497355461, - -0.030705278739333153, - -0.010481758043169975, - 0.041074901819229126, - -0.022446414455771446, - 0.01784534752368927, - 0.025507211685180664, - 0.045900341123342514, - -0.0955275446176529, - 0.0034386366605758667, - -0.06259236484766006, - 0.054756324738264084, - -0.055079083889722824, - 0.12476056814193726, - 0.016941087320446968, - -0.05011047050356865, - -0.09257613122463226, - 0.06569737941026688, - -0.01717977412045002, - 0.05570942163467407, - 0.02985534630715847, - 0.059644948691129684, - 0.022495320066809654, - -0.10366769880056381, - 0.10545758903026581, - 0.042949795722961426, - -0.0459798239171505, - -0.08494843542575836, - -0.05034906417131424, - -0.0250820592045784, - 0.030237583443522453, - 0.02807774394750595, - -0.05646726116538048, - -0.006900464650243521, - 0.005302296485751867, - -0.01282959058880806, - 0.06398545205593109, - 0.13197055459022522, - 0.06530894339084625, - -0.11476507037878036 - ] - }, - "p245_328.wav": { - "name": "p245", - "embedding": [ - 0.05617386847734451, - 0.07904292643070221, - -0.05768284201622009, - 0.01280163787305355, - -0.01526748575270176, - 0.0485241636633873, - -0.15064625442028046, - 0.10934114456176758, - -0.03235384821891785, - 0.1413254737854004, - -0.04893331974744797, - 0.10392957925796509, - 0.00040120165795087814, - -0.14071737229824066, - -0.03232470527291298, - 0.0321141853928566, - -0.0015894435346126556, - -0.011904029175639153, - -0.011431677266955376, - -0.021638354286551476, - 0.06593276560306549, - 0.03981903940439224, - 0.0029544932767748833, - -0.018907058984041214, - 0.001344342716038227, - 0.06283427029848099, - 0.007014612667262554, - 0.005726813338696957, - -0.027804411947727203, - -0.01787494495511055, - 0.003961613401770592, - 0.10440093278884888, - -0.013393338769674301, - 0.014731412753462791, - 0.02829013019800186, - 0.008674138225615025, - -0.026389606297016144, - -0.08025700598955154, - 0.0073259854689240456, - 0.007017776370048523, - -0.02491014450788498, - 0.07158514857292175, - 0.018068892881274223, - -0.009878246113657951, - 0.04825524240732193, - -0.05671892687678337, - -0.02168121188879013, - -0.03901250660419464, - -0.07670150697231293, - 0.15379369258880615, - 0.08683139830827713, - 0.05515015125274658, - -0.08740255981683731, - -0.01735696569085121, - 0.09593777358531952, - 0.02081870101392269, - -0.05083323270082474, - -0.04623928293585777, - 0.024533364921808243, - 0.16087546944618225, - -0.011430121958255768, - -0.0456274151802063, - 0.04772263020277023, - 0.0976860374212265, - 0.00822538137435913, - 0.04963439702987671, - 0.11910323798656464, - 0.0733649879693985, - 0.0013680141419172287, - 0.009420438669621944, - 0.006742628291249275, - 0.09184914827346802, - 0.0413745641708374, - -0.04767830669879913, - 0.035659365355968475, - -0.02246152237057686, - -0.03310563415288925, - -0.019495779648423195, - -0.025863494724035263, - -0.06216835603117943, - -0.008380716666579247, - 0.0034364003222435713, - 0.019272930920124054, - 0.049597930163145065, - -0.05142837390303612, - -0.00502572488039732, - 0.04930359125137329, - -0.08180411159992218, - 0.03782174736261368, - 0.04454237222671509, - 0.018986109644174576, - 0.007577402517199516, - -0.07519514858722687, - -0.10205693542957306, - 0.06489294767379761, - 0.02303912863135338, - -0.008926928974688053, - 0.0840153843164444, - 0.0438527949154377, - 0.0008392501622438431, - 0.06922023743391037, - 0.01919633522629738, - -0.019355930387973785, - -0.027148349210619926, - -0.05884486436843872, - 0.10010324418544769, - 0.12095650285482407, - -0.037342801690101624, - 0.04775581508874893, - -0.07086178660392761, - 0.008903516456484795, - 0.05004771426320076, - -0.11418317258358002, - -0.07147450000047684, - 0.046104028820991516, - 0.02718237228691578, - 0.04102572798728943, - 0.11280116438865662, - 0.03383931145071983, - 0.027148520573973656, - 0.07994554191827774, - -0.0745246633887291, - -0.0801478698849678, - -0.09133970737457275, - 0.05698493495583534, - -0.07129272818565369, - 0.08108112215995789, - 0.05352579057216644, - 0.019657142460346222, - -0.02620226889848709, - 0.0318094827234745, - -0.006074388511478901, - -0.0001315223053097725, - -0.03856272250413895, - 0.006228663958609104, - 0.03147214278578758, - -0.04583292454481125, - -0.003433307632803917, - -0.0030966829508543015, - 0.008602485060691833, - 0.0375945046544075, - 0.012672887183725834, - 0.0012815799564123154, - -0.0956883430480957, - -0.0017617587000131607, - 0.05918446183204651, - 0.038543879985809326, - -0.04297349974513054, - -0.04934300109744072, - -0.023013826459646225, - -0.05868016183376312, - -0.006701629608869553, - -0.056717418134212494, - 0.07512792199850082, - 0.04180514067411423, - 0.04520123079419136, - 0.09287647902965546, - -0.006895776838064194, - 0.017783477902412415, - -0.003460145089775324, - 0.02473307028412819, - 0.02298557572066784, - 0.03354668244719505, - -0.07770553976297379, - -0.07962100952863693, - -0.04650557041168213, - 0.0017606260953471065, - -0.024057237431406975, - 0.013286969624459743, - 0.02535199001431465, - 0.0076537225395441055, - 0.017590194940567017, - -0.09013740718364716, - 0.007999510504305363, - -0.12707996368408203, - -0.03398171067237854, - -0.021966902539134026, - -0.03939962014555931, - -0.0012892317026853561, - 0.08144719153642654, - 0.030042706057429314, - 0.017198117449879646, - -0.05104053393006325, - -0.05589691549539566, - -0.054754309356212616, - 0.05088431015610695, - 0.08637966215610504, - -0.015134629793465137, - -0.002071704715490341, - 0.012231019325554371, - 0.027255753055214882, - 0.014431443996727467, - 0.06546209752559662, - 0.08026807010173798, - -0.02532717026770115, - -0.009718581102788448, - -0.05980297923088074, - 0.1069805696606636, - 0.10707004368305206, - -0.0614449679851532, - -0.09145216643810272, - -0.04136540740728378, - -0.07436417043209076, - 0.00538298673927784, - -0.044389039278030396, - 0.008544267155230045, - 0.03614173084497452, - -0.04093204438686371, - -0.13392260670661926, - -0.09538638591766357, - 0.06791391968727112, - -0.02935994416475296, - -0.0032106838189065456, - -0.07973016798496246, - 0.0651625320315361, - 0.09330111742019653, - 0.011324265971779823, - -0.05224213749170303, - -0.025258494541049004, - 0.0014371015131473541, - -0.03626387566328049, - 0.0013702819123864174, - -0.005832750350236893, - 0.030596623197197914, - -0.12303905189037323, - 0.011951295658946037, - -0.0479188933968544, - 0.07796569168567657, - -0.08250056207180023, - 0.09229965507984161, - 0.00027545448392629623, - -0.0613454170525074, - -0.09219121932983398, - 0.04239840433001518, - 0.046963680535554886, - 0.036961205303668976, - -0.00227383803576231, - 0.05158303678035736, - 0.007124053314328194, - -0.11739473789930344, - 0.05927913635969162, - 0.062101248651742935, - 0.011960633099079132, - -0.09744171798229218, - -0.02750169299542904, - -0.0009344723075628281, - 0.05877801030874252, - -0.01584586128592491, - -0.03744545578956604, - -0.0023435503244400024, - 0.02005106210708618, - 0.023712754249572754, - 0.061332784593105316, - 0.09847626835107803, - 0.020485959947109222, - -0.11655662953853607 - ] - }, - "p245_048.wav": { - "name": "p245", - "embedding": [ - 0.04827209562063217, - 0.07733197510242462, - -0.003094793064519763, - 0.04265182465314865, - -0.04931697994470596, - 0.07825329899787903, - -0.13045519590377808, - 0.13008370995521545, - -0.05213911086320877, - 0.13751989603042603, - -0.08746270835399628, - 0.1242460161447525, - -0.019425880163908005, - -0.18289387226104736, - -0.044179804623126984, - 0.06216875836253166, - -0.01563127711415291, - -0.02073816768825054, - -0.0048699751496315, - 0.006337813567370176, - 0.05005989223718643, - 0.02714351937174797, - 0.04588029533624649, - 0.01888325996696949, - 0.014225313439965248, - 0.05118347331881523, - 0.010695486329495907, - 0.07697305828332901, - 0.037662725895643234, - -0.048459917306900024, - -0.03948194161057472, - 0.12638385593891144, - -0.04402773827314377, - 0.02371201291680336, - 0.05820462480187416, - 0.0047158473171293736, - -0.0040702433325350285, - -0.07582718133926392, - -0.015208657830953598, - -0.036827657371759415, - -0.048001714050769806, - 0.06616838276386261, - 0.018180236220359802, - -0.008400265127420425, - 0.039698801934719086, - 0.0044549996964633465, - -0.029463913291692734, - -0.0380723774433136, - -0.11143915355205536, - 0.12026453018188477, - 0.056759580969810486, - 0.011729151010513306, - -0.0793977826833725, - -0.07146266102790833, - 0.10772228240966797, - -0.014417052268981934, - -0.10487514734268188, - -0.03818989172577858, - 0.08424211293458939, - 0.18898943066596985, - -0.017520999535918236, - -0.030518971383571625, - 0.021288853138685226, - 0.10361947119235992, - 0.0527152344584465, - 0.1059795469045639, - 0.09200204908847809, - 0.09676412492990494, - 0.00929214246571064, - 0.03070054203271866, - 0.025073019787669182, - 0.08254441618919373, - 0.034201644361019135, - -0.006474196910858154, - 0.011831933632493019, - 0.012454196810722351, - -0.02525544911623001, - 0.02861812710762024, - -0.033858414739370346, - -0.012108471244573593, - -0.02703946642577648, - -0.001300246687605977, - 0.01257583498954773, - 0.011897867545485497, - -0.030838433653116226, - 0.05659656971693039, - 0.005704890005290508, - -0.013511136174201965, - 0.06260167807340622, - 0.019151829183101654, - -0.01630425825715065, - 0.05332048237323761, - -0.08144542574882507, - -0.10232388973236084, - 0.005137446336448193, - 0.0044280909933149815, - 0.009218962863087654, - 0.08582229912281036, - 0.028914859518408775, - -0.020744170993566513, - 0.1139017641544342, - 0.03861263766884804, - -0.0056467317044734955, - 0.04693478345870972, - -0.09190023690462112, - 0.11143511533737183, - 0.08087579905986786, - -0.009290654212236404, - 0.051562365144491196, - -0.06122512370347977, - 0.0812540128827095, - 0.08307251334190369, - -0.1430470496416092, - -0.06673327088356018, - 0.027310559526085854, - 0.016199221834540367, - -0.008983487263321877, - 0.11584265530109406, - -0.018362928181886673, - 0.02473014034330845, - 0.091159887611866, - -0.08273765444755554, - -0.05975021421909332, - -0.018027430400252342, - 0.04511408507823944, - -0.07047255337238312, - 0.05964837223291397, - 0.01350078172981739, - 0.0006645230459980667, - -0.011342974379658699, - 0.07541333138942719, - -0.017483746632933617, - -0.014441552571952343, - 0.04478956013917923, - -0.07441110908985138, - 0.02282283641397953, - -0.05053841695189476, - 0.0024701296351850033, - 0.054625071585178375, - 0.04182734340429306, - 0.055346667766571045, - 0.004719394259154797, - -0.030691489577293396, - -0.10647712647914886, - -0.014974161051213741, - 0.051886290311813354, - 0.080818310379982, - -0.0012216406175866723, - -0.04254882410168648, - -0.05467415973544121, - -0.057816725224256516, - 0.03811957687139511, - -0.008121978491544724, - 0.08739885687828064, - -0.00270849303342402, - 0.023016218096017838, - 0.0714796930551529, - 0.006914336234331131, - -0.001389464596286416, - -0.070253387093544, - -0.030554182827472687, - 0.006429283879697323, - 0.05303538218140602, - -0.0715801864862442, - -0.05467407405376434, - 0.016154427081346512, - 0.033158719539642334, - -0.042429156601428986, - 0.03310069441795349, - 0.04770341515541077, - 0.032174259424209595, - 0.04236266762018204, - -0.06367494910955429, - -0.00280338479205966, - -0.12100141495466232, - -0.06949446350336075, - -0.009603125043213367, - 0.007858033291995525, - -0.001059834728948772, - 0.0625513419508934, - 0.037704311311244965, - 0.04697214812040329, - 0.007810885552316904, - -0.06778083741664886, - -0.09864729642868042, - 0.062486808747053146, - 0.06209496408700943, - 0.023577526211738586, - 0.06678949296474457, - 0.045135557651519775, - -0.05043257400393486, - 0.07210192084312439, - 0.06486591696739197, - 0.09128132462501526, - -0.022669468075037003, - 0.012239282950758934, - -0.08310054242610931, - 0.08222278952598572, - 0.11855454742908478, - -0.09039004147052765, - -0.1022348403930664, - -0.016433820128440857, - -0.0805412083864212, - 0.05964312702417374, - -0.033202290534973145, - -0.017606928944587708, - 0.03513156622648239, - -0.03205867111682892, - -0.12043394148349762, - -0.08593438565731049, - 0.09556235373020172, - -0.07492953538894653, - -0.01863514631986618, - -0.07923662662506104, - 0.03670211881399155, - 0.0882929265499115, - 0.016785964369773865, - -0.019328579306602478, - -0.006718709133565426, - 0.06685979664325714, - -0.06807854771614075, - -0.019682439044117928, - 0.04808364808559418, - 1.0044197551906109e-05, - -0.11420659720897675, - 0.014631063677370548, - -0.06839814782142639, - 0.04320947080850601, - -0.05270499736070633, - 0.16021078824996948, - -0.01832277700304985, - -0.055416032671928406, - -0.0695975124835968, - 0.03730277344584465, - -0.012677269987761974, - 0.040440868586301804, - 0.03587840497493744, - 0.06559747457504272, - 0.014560209587216377, - -0.08525940775871277, - 0.13062810897827148, - 0.03711410611867905, - -0.040612734854221344, - -0.0745595246553421, - -0.04604172334074974, - -0.04146720468997955, - 0.015205984935164452, - -0.005205302499234676, - -0.08903783559799194, - -0.02617494761943817, - 0.02137882076203823, - -0.02170909382402897, - 0.052738163620233536, - 0.1374872624874115, - 0.05957169085741043, - -0.10747544467449188 - ] - }, - "p245_026.wav": { - "name": "p245", - "embedding": [ - 0.06586799025535583, - 0.11278679966926575, - 0.0049434844404459, - 0.028054434806108475, - -0.050383105874061584, - 0.060185957700014114, - -0.11728794127702713, - 0.14155426621437073, - -0.0459170788526535, - 0.13404732942581177, - -0.10389409959316254, - 0.11975269019603729, - -0.032792992889881134, - -0.16663172841072083, - -0.0439152866601944, - 0.04642602801322937, - -0.026820560917258263, - 0.004712419584393501, - -0.046308018267154694, - -0.03168323636054993, - 0.019950177520513535, - 0.045187026262283325, - 0.05844635143876076, - 0.016566717997193336, - 0.03047313541173935, - 0.0620131641626358, - -0.010942035354673862, - 0.05403365194797516, - 0.03414197266101837, - -0.053701892495155334, - -0.044500626623630524, - 0.11905394494533539, - -0.051627591252326965, - 0.012245481833815575, - 0.050309598445892334, - -0.007627889513969421, - -0.009441401809453964, - -0.0470849871635437, - -0.023912079632282257, - 0.00040835142135620117, - -0.04580874741077423, - 0.05982600152492523, - 0.017169905826449394, - -0.01894812285900116, - 0.07335232943296432, - 0.008407972753047943, - -0.021488133817911148, - -0.04493880271911621, - -0.10867172479629517, - 0.14045865833759308, - 0.05867236852645874, - -0.0006718453951179981, - -0.08618460595607758, - -0.05350463092327118, - 0.09918363392353058, - -0.04780343919992447, - -0.12267208844423294, - -0.030448067933321, - 0.07761223614215851, - 0.1502697616815567, - -0.029043741524219513, - -0.028298037126660347, - 0.02671806327998638, - 0.1055757999420166, - 0.05961158126592636, - 0.09839142858982086, - 0.08869531750679016, - 0.09445095807313919, - -0.028137894347310066, - 0.03457392752170563, - 0.04931679368019104, - 0.042325008660554886, - 0.04774358868598938, - -0.023446764796972275, - 0.009804775938391685, - -0.00511131901293993, - -0.008887168951332569, - 0.013712966814637184, - -0.014532960951328278, - -0.006879265420138836, - -0.027192190289497375, - 0.0052452050149440765, - -0.018263498321175575, - -0.0020943335257470608, - -0.054482102394104004, - 0.0717814564704895, - 0.020618127658963203, - 0.004537150729447603, - 0.07351469993591309, - 0.05744819715619087, - -0.009114952757954597, - 0.04616812244057655, - -0.05194506421685219, - -0.0707567036151886, - 0.002746155485510826, - -0.003859890392050147, - 0.00025226082652807236, - 0.0743798166513443, - 0.02977294661104679, - -0.008410993963479996, - 0.12026776373386383, - 0.0699431449174881, - 0.009360147640109062, - 0.03390972316265106, - -0.09845301508903503, - 0.12943825125694275, - 0.09846656024456024, - -0.019256005063652992, - 0.06757931411266327, - -0.02021576464176178, - 0.06509047001600266, - 0.07466380298137665, - -0.12672531604766846, - -0.04961514100432396, - 0.023249352350831032, - 0.005390803329646587, - 0.004474075045436621, - 0.08171842992305756, - -0.004117000848054886, - 0.022824615240097046, - 0.10177913308143616, - -0.07870312035083771, - -0.0565452016890049, - -0.019559189677238464, - 0.04730800539255142, - -0.0931725949048996, - 0.0495491698384285, - 0.05466557294130325, - -0.010689627379179, - -0.004761622287333012, - 0.09053339064121246, - -0.00405983766540885, - 0.0013721450231969357, - 0.028684459626674652, - -0.05138193070888519, - 0.010132534429430962, - -0.02009863778948784, - 0.00040217209607362747, - 0.053819164633750916, - 0.042085856199264526, - 0.05309782177209854, - -0.000862735090777278, - -0.0193669144064188, - -0.09966550767421722, - 0.004759381525218487, - 0.053793154656887054, - 0.06253529340028763, - -0.008933543227612972, - -0.01144277211278677, - -0.045943230390548706, - -0.06170273572206497, - 0.03640960901975632, - 0.0006338045932352543, - 0.07830873131752014, - -0.04069656506180763, - -0.0017511346377432346, - 0.11064109951257706, - 0.023758316412568092, - 0.0019833254627883434, - -0.06366121768951416, - -0.012429897673428059, - 0.005104259122163057, - 0.05324679985642433, - -0.07818473875522614, - -0.08689823746681213, - 0.00674787349998951, - 0.0329638235270977, - -0.01725333370268345, - 0.0686255618929863, - 0.05748320370912552, - -0.01090861577540636, - 0.04167197272181511, - -0.06881002336740494, - 0.023425288498401642, - -0.097846120595932, - -0.06627470254898071, - -0.018358347937464714, - -0.023377839475870132, - -0.010047231800854206, - 0.07810098677873611, - 0.03274979069828987, - 0.03823040425777435, - 0.01940709911286831, - -0.09928067773580551, - -0.08621026575565338, - 0.06613142788410187, - 0.065971240401268, - 0.004101244267076254, - 0.05681080371141434, - 0.0645536407828331, - -0.06128019839525223, - 0.0822572112083435, - 0.06855404376983643, - 0.07632607966661453, - -0.03120030090212822, - 0.01882569119334221, - -0.0711621642112732, - 0.0410422645509243, - 0.08664519339799881, - -0.11697583645582199, - -0.11304691433906555, - -0.046047408133745193, - -0.0542854480445385, - 0.04587730020284653, - -0.012150708585977554, - 0.006285725627094507, - 0.05040615424513817, - -0.023762140423059464, - -0.07985907793045044, - -0.11192364990711212, - 0.10189016163349152, - -0.060136765241622925, - -0.0045797983184456825, - -0.05888885632157326, - 0.03486146405339241, - 0.05931705981492996, - 0.018688436597585678, - -0.021912064403295517, - 0.003393254242837429, - 0.03480001538991928, - -0.05567473918199539, - -0.028087276965379715, - 0.054103415459394455, - 0.01772863045334816, - -0.09788274765014648, - 0.019465439021587372, - -0.08132140338420868, - 0.09603934735059738, - -0.04148917272686958, - 0.16371195018291473, - -0.004500369541347027, - -0.053607940673828125, - -0.07650648057460785, - 0.03987590968608856, - -0.03835117816925049, - 0.03776033967733383, - 0.041810162365436554, - 0.0628417506814003, - 0.016790427267551422, - -0.061725325882434845, - 0.09631823003292084, - 0.034476954489946365, - -0.05627333000302315, - -0.058845993131399155, - -0.04486531764268875, - -0.060280539095401764, - 0.01529710367321968, - 0.020937280729413033, - -0.09943728148937225, - -0.01247384399175644, - 0.0030751070007681847, - -0.02770974114537239, - 0.06942403316497803, - 0.13579750061035156, - 0.06446173042058945, - -0.1180371418595314 - ] - }, - "p245_085.wav": { - "name": "p245", - "embedding": [ - 0.018087055534124374, - 0.0933462604880333, - -0.0036630649119615555, - 0.0013941247016191483, - -0.001707153394818306, - 0.01125246286392212, - -0.143900066614151, - 0.054094523191452026, - -0.0603456124663353, - 0.1075640320777893, - -0.06990658491849899, - 0.056109458208084106, - -0.07267501205205917, - -0.1554218828678131, - -0.02299981564283371, - 0.024502132087945938, - 7.203221321105957e-05, - -0.012527445331215858, - -0.03593705594539642, - -0.010605812072753906, - 0.02705473266541958, - 0.0072975922375917435, - 0.05035639554262161, - -0.057835567742586136, - -0.04578536003828049, - 0.05118054896593094, - -0.007196454796940088, - 0.007599356584250927, - -0.0014428067952394485, - 0.02932841144502163, - 0.02643621899187565, - 0.061962079256772995, - 0.007674040272831917, - -0.02462301217019558, - 0.018094398081302643, - 0.04898426681756973, - -0.030484657734632492, - -0.039679307490587234, - -0.010059981606900692, - 0.024629417806863785, - -0.07595178484916687, - 0.024289939552545547, - 0.012777344323694706, - -0.035832587629556656, - 0.09996741265058517, - -0.05551682412624359, - -0.023658543825149536, - -0.010727426037192345, - -0.08434763550758362, - 0.08422692120075226, - 0.07921017706394196, - 0.039118826389312744, - -0.039305124431848526, - -0.012150153517723083, - 0.1050582230091095, - -0.022499412298202515, - -0.07330711930990219, - -0.07558267563581467, - 0.05910210311412811, - 0.11011790484189987, - -0.05361681059002876, - -0.03072173334658146, - 0.00934761855751276, - 0.03835664689540863, - 0.01825552247464657, - 0.07085765898227692, - 0.10325634479522705, - 0.026297535747289658, - -0.004400158300995827, - -0.03584076836705208, - 0.05724923685193062, - 0.06123337894678116, - -0.005622128024697304, - -0.05766342952847481, - 0.02699277736246586, - -0.008603029884397984, - -0.04304300248622894, - 0.03261411190032959, - 0.016424184665083885, - -0.03697900474071503, - -0.01802590861916542, - -0.050807561725378036, - -0.036922261118888855, - -0.013693712651729584, - -0.03206862509250641, - 0.0003787276800721884, - 0.06777765601873398, - -0.026665568351745605, - 0.07745389640331268, - 0.07400812208652496, - 0.006455200258642435, - 0.0296090729534626, - -0.014085926115512848, - -0.056382231414318085, - -0.002909161150455475, - 0.009341124445199966, - -0.02516353502869606, - 0.0503351166844368, - 0.017234181985259056, - 0.012665923684835434, - 0.047552742063999176, - 0.03175375610589981, - -0.007960866205394268, - 0.022750098258256912, - -0.1145852729678154, - 0.06509339064359665, - 0.0783756747841835, - -0.03670535981655121, - -0.005044805817306042, - -0.028172729536890984, - 0.007967358455061913, - 0.06971028447151184, - -0.01098247617483139, - -0.0416664183139801, - 0.047445230185985565, - 0.03468272462487221, - 0.045711714774370193, - 0.10030428320169449, - 0.032425347715616226, - -0.04412374272942543, - 0.12681105732917786, - -0.0804399847984314, - -0.106150783598423, - -0.06356216222047806, - 0.02112031728029251, - -0.06292861700057983, - 0.04266925901174545, - 0.0768735259771347, - 0.0052373274229466915, - -0.01824849843978882, - 0.06235845386981964, - 0.01196365151554346, - 0.00015286484267562628, - -0.04465065151453018, - -0.05017252638936043, - 0.03461996465921402, - -0.036610040813684464, - -0.034879498183727264, - 0.06972329318523407, - 0.055190056562423706, - 0.07166831195354462, - 0.02097162976861, - -0.004931293893605471, - -0.07623781263828278, - -0.008405450731515884, - 0.08921784162521362, - 0.007342057302594185, - -0.03738617151975632, - -0.01246339175850153, - -0.06843055784702301, - -0.03567283973097801, - 0.010461712256073952, - -0.07564270496368408, - 0.11346551775932312, - -0.0033607659861445427, - 0.015661735087633133, - 0.09067034721374512, - -0.04303101822733879, - 0.010769782587885857, - -0.030664116144180298, - -0.017958514392375946, - 0.0386456660926342, - 0.011988261714577675, - -0.11037346720695496, - -0.08271387219429016, - -0.09711509943008423, - 0.043262943625450134, - 0.03908117115497589, - -0.012103168293833733, - 0.029926935210824013, - -0.020721688866615295, - -0.01077366340905428, - -0.05128378048539162, - 0.07093960791826248, - -0.054347701370716095, - -0.03504074364900589, - -0.0441867932677269, - -0.05136359855532646, - 0.019310396164655685, - 0.08733035624027252, - -0.03214306756854057, - -0.028156131505966187, - -0.027446914464235306, - -0.12362004816532135, - -0.08885293453931808, - 0.016574662178754807, - 0.07487190514802933, - -0.010476477444171906, - 0.013593342155218124, - 0.016356026753783226, - -0.03763721138238907, - 0.024288944900035858, - 0.023187212646007538, - 0.09847237169742584, - -0.057714566588401794, - 0.003446787828579545, - -0.016983292996883392, - 0.011980373412370682, - 0.09920325875282288, - -0.06629854440689087, - -0.059505775570869446, - -0.05229927599430084, - -0.05217505991458893, - 0.0035718195140361786, - -0.052415888756513596, - -0.018414296209812164, - 0.016170214861631393, - -0.047011420130729675, - -0.09969283640384674, - -0.11133800446987152, - 0.05518141761422157, - 0.0028394125401973724, - -0.010484160855412483, - -0.06997545063495636, - 0.01673356629908085, - 0.006099766120314598, - 0.021040940657258034, - -0.0316634401679039, - 0.01940349116921425, - -0.0003433879464864731, - -0.035187605768442154, - -0.00431852089241147, - 0.019920406863093376, - 0.04871916398406029, - -0.022554144263267517, - 0.015205571427941322, - -0.06013894081115723, - 0.09862841665744781, - -0.0349789559841156, - 0.06779785454273224, - -0.004732479341328144, - -0.012840909883379936, - -0.04303565248847008, - 0.012043815106153488, - 0.002457635710015893, - 0.04344474524259567, - 0.0035958299413323402, - 0.0430680476129055, - -0.001043548807501793, - -0.06839619576931, - 0.06548592448234558, - 0.03918410837650299, - 0.030097827315330505, - -0.0629858747124672, - 0.03876311331987381, - -0.071984201669693, - -0.0004786290228366852, - -0.033461276441812515, - -0.049506548792123795, - 0.007829486392438412, - -0.02149169147014618, - 0.021478988230228424, - 0.03943754732608795, - 0.08372125029563904, - 0.008070766925811768, - -0.05953504890203476 - ] - }, - "p245_323.wav": { - "name": "p245", - "embedding": [ - 0.02871638536453247, - 0.051263488829135895, - -0.06377660483121872, - -0.0011825654655694962, - -0.062144167721271515, - 0.009119579568505287, - -0.09230530261993408, - 0.05599607899785042, - 0.010039747692644596, - 0.12691593170166016, - -0.03158995881676674, - 0.11866971850395203, - -0.01373649574816227, - -0.06472773104906082, - 0.035830430686473846, - 0.024272190406918526, - 0.0021013920195400715, - -0.032836731523275375, - 0.00861874409019947, - -0.07240842282772064, - 0.03786554932594299, - 0.03471728041768074, - 0.013183526694774628, - -0.05087427794933319, - 0.01974313333630562, - 0.08220608532428741, - -0.005121189635246992, - -0.032184090465307236, - -0.010909415781497955, - -0.07532564550638199, - -0.009868454188108444, - 0.056082457304000854, - -0.04622389376163483, - -0.023673072457313538, - 0.018023284152150154, - -0.016152994707226753, - -0.005786332301795483, - -0.021831970661878586, - 0.0301973894238472, - 0.04693290963768959, - -0.0706654042005539, - 0.086793452501297, - 0.027545075863599777, - -0.046459659934043884, - 0.015378075651824474, - -0.013875472359359264, - -0.03133957087993622, - 0.05000423640012741, - -0.04601828008890152, - 0.13840126991271973, - 0.05799878388643265, - 0.005497355945408344, - -0.045303866267204285, - -0.0010933764278888702, - 0.05176963657140732, - 0.029750416055321693, - -0.07023464888334274, - -0.03413277119398117, - -0.021266251802444458, - 0.04919935017824173, - -0.0023549627512693405, - -0.06728837639093399, - 0.053382910788059235, - 0.07895254343748093, - 0.0416635163128376, - -0.001432059332728386, - 0.06937859207391739, - 0.10092435777187347, - -0.022179771214723587, - -0.013597930781543255, - 0.05496983602643013, - 0.11263670772314072, - 0.057101696729660034, - -0.0059454431757330894, - 0.03954645246267319, - -0.009492919780313969, - -0.00903551746159792, - -0.055211760103702545, - -0.012809870764613152, - -0.05985936522483826, - -0.03533719480037689, - -0.030036769807338715, - 0.02666664496064186, - 0.06691686064004898, - -0.017516305670142174, - -0.005920063704252243, - 0.09066222608089447, - -0.048055559396743774, - 0.04691261798143387, - 0.014263049699366093, - 0.0005674464628100395, - 0.023161299526691437, - -0.09646491706371307, - -0.027800582349300385, - 0.02029002085328102, - -0.022283388301730156, - 0.06933422386646271, - 0.06327666342258453, - 0.030297348275780678, - 0.02270124852657318, - 0.07812336087226868, - 0.03223074972629547, - 0.005052454769611359, - -0.03579312935471535, - -0.04599575698375702, - 0.12966462969779968, - 0.10759195685386658, - -0.06264957040548325, - 0.015448414720594883, - 0.010730382055044174, - 0.02743333950638771, - -0.03560694307088852, - -0.09007301181554794, - -0.055008262395858765, - -0.02073560282588005, - 0.04592134803533554, - 0.0021925270557403564, - 0.11582744121551514, - 0.016268793493509293, - 0.06295105069875717, - 0.09980301558971405, - -0.03730154037475586, - -0.06772688031196594, - -0.03965190798044205, - 0.009277956560254097, - -0.10876169800758362, - 0.07391860336065292, - 0.06934487819671631, - 0.022319529205560684, - 0.03508362919092178, - 0.08821681886911392, - 0.0031576910987496376, - 0.022887010127305984, - -0.03740036115050316, - 0.005623174831271172, - 0.01935412362217903, - 0.018265677616000175, - 0.04518246278166771, - 0.0662398636341095, - 0.008614526130259037, - 0.11931255459785461, - 0.018186219036579132, - 0.017100248485803604, - -0.12548528611660004, - 0.055967703461647034, - 0.025920337066054344, - 0.014790941961109638, - -0.048439282923936844, - -0.03974846005439758, - 0.014888690784573555, - -0.06794696301221848, - -0.025159573182463646, - 0.0012388948816806078, - 0.05878271907567978, - -0.018764574080705643, - -0.014417821541428566, - 0.11121925711631775, - 0.029509639367461205, - 0.0007065150421112776, - 0.010009539313614368, - -0.03432059660553932, - -0.02066403068602085, - 0.05809623748064041, - -0.12603461742401123, - -0.09124049544334412, - -0.041157372295856476, - 0.021325435489416122, - 0.036489762365818024, - 0.04219236224889755, - 0.09379845857620239, - -0.021900057792663574, - 0.04154343158006668, - -0.01239454559981823, - -0.0066101509146392345, - -0.03764355182647705, - -0.04764707386493683, - -0.03731728345155716, - -0.07083473354578018, - -0.07130855321884155, - 0.06676249206066132, - -0.03487703204154968, - 0.07321414351463318, - -0.0342208668589592, - -0.023896537721157074, - -0.0660284161567688, - -0.002548346295952797, - 0.013067374937236309, - -0.05973179265856743, - 0.0015914635732769966, - 0.1021197959780693, - 0.014858659356832504, - -0.03718653321266174, - 0.023452315479516983, - 0.0683438777923584, - -0.0714542418718338, - -0.011024764738976955, - -0.05041978880763054, - 0.10450713336467743, - 0.06938096880912781, - -0.024714702740311623, - -0.02636539563536644, - -0.10218591243028641, - -0.05194422975182533, - 0.03712168335914612, - -0.040700528770685196, - 0.0009272522293031216, - 0.0009515304118394852, - -0.010160882025957108, - -0.055278852581977844, - -0.06971997767686844, - 0.03301675617694855, - -0.04334889352321625, - 0.004685009829699993, - -0.07197853922843933, - 0.006085403263568878, - 0.013866756111383438, - 0.06978773325681686, - -0.0544532835483551, - 0.045096561312675476, - 0.01829826831817627, - -0.013667093589901924, - 0.04202777519822121, - 0.0716504454612732, - 0.05905398726463318, - -0.028631076216697693, - -0.07850592583417892, - -0.0644499734044075, - 0.02972378209233284, - -0.04339110851287842, - 0.053262483328580856, - 0.02020193263888359, - -0.02496352419257164, - -0.05461408570408821, - 0.0017900094389915466, - -0.010763568803668022, - 0.0118790902197361, - 0.08973324298858643, - 0.06148537993431091, - 0.029789313673973083, - -0.04087475687265396, - 0.09612463414669037, - 0.0531892292201519, - 0.014539996162056923, - -0.06240740418434143, - -0.012929040938615799, - -0.020954158157110214, - 0.04648301750421524, - 0.06369830667972565, - -0.07293614745140076, - 0.0560353584587574, - 0.024033322930336, - 0.031354282051324844, - 0.052939482033252716, - 0.04367426782846451, - 0.07082176953554153, - -0.07048733532428741 - ] - }, - "p245_355.wav": { - "name": "p245", - "embedding": [ - 0.06036846339702606, - 0.08853242546319962, - -0.006428401451557875, - 0.0057867057621479034, - -0.05621178448200226, - 0.07643314450979233, - -0.14393797516822815, - 0.15075388550758362, - -0.04845606908202171, - 0.13624948263168335, - -0.05370578542351723, - 0.11401273310184479, - -0.017049454152584076, - -0.18980637192726135, - -0.037002988159656525, - 0.05715904384851456, - -0.07381679117679596, - -0.04442931339144707, - -0.059523701667785645, - -0.0323486290872097, - 0.0268989410251379, - 0.01874561980366707, - 0.0128057561814785, - 0.017308175563812256, - 0.030600521713495255, - 0.07107022404670715, - -0.007656680420041084, - 0.03900393098592758, - 0.002704054117202759, - -0.050151001662015915, - -0.015263024717569351, - 0.08578639477491379, - -0.052349597215652466, - 0.009188116528093815, - 0.055868931114673615, - -0.016971921548247337, - 0.0004109707660973072, - -0.06074458733201027, - -0.02889387682080269, - 0.014716987498104572, - -0.04133320227265358, - 0.09005272388458252, - 0.04280244931578636, - -0.0037300570402294397, - 0.027053333818912506, - 0.03978683054447174, - -0.006499607115983963, - -0.05823285132646561, - -0.10117165744304657, - 0.16214996576309204, - 0.07374725490808487, - -0.006576562765985727, - -0.06669057905673981, - -0.06315204501152039, - 0.10416731238365173, - -0.027336422353982925, - -0.127847820520401, - -0.044761914759874344, - 0.08030316978693008, - 0.15398317575454712, - -0.05999171733856201, - -0.03266638144850731, - 0.023023733869194984, - 0.1316802054643631, - 0.06947454065084457, - 0.09431891143321991, - 0.08449162542819977, - 0.11324270069599152, - -0.02958572842180729, - 0.014752449467778206, - 0.07405275851488113, - 0.05709080398082733, - 0.0714445561170578, - -0.001845009159296751, - 0.0357089638710022, - -0.004875649698078632, - 0.003105737268924713, - -0.01579306460916996, - -0.025587625801563263, - -0.004861369263380766, - -0.005901547148823738, - 0.021357715129852295, - 0.014941968023777008, - 0.03187756612896919, - -0.019702687859535217, - 0.0596734955906868, - 0.03226993978023529, - -0.01706724986433983, - 0.06491198390722275, - 0.04608175903558731, - 0.03139709308743477, - 0.07700126618146896, - -0.08459654450416565, - -0.08077813684940338, - 0.04145988076925278, - -0.0035000841598957777, - 0.03311444818973541, - 0.05329100042581558, - 0.037499383091926575, - -0.007407205179333687, - 0.11428084224462509, - 0.058987583965063095, - -0.02441546879708767, - 0.03157887980341911, - -0.10306955873966217, - 0.14112037420272827, - 0.07258675992488861, - -0.03568536043167114, - 0.04172355681657791, - -0.041546594351530075, - 0.07019535452127457, - 0.06077785789966583, - -0.13787710666656494, - -0.0791168212890625, - 0.032593343406915665, - 0.020355163142085075, - -0.03335819020867348, - 0.12284095585346222, - -0.011035183444619179, - 0.03483346849679947, - 0.10580459237098694, - -0.06588597595691681, - -0.03543132543563843, - -0.005835389252752066, - 0.04690001904964447, - -0.0812503919005394, - 0.051824286580085754, - 0.055925402790308, - -0.003960063215345144, - 0.02714613452553749, - 0.10642100870609283, - -0.001443480490706861, - -0.01698671653866768, - 0.008151775225996971, - -0.02514643967151642, - 0.027306247502565384, - -0.005876511801034212, - 0.002547395648434758, - 0.02831980213522911, - 0.03893304616212845, - 0.03358163684606552, - -0.0017246401403099298, - -0.0346517451107502, - -0.11204276233911514, - 0.018413864076137543, - 0.028104856610298157, - 0.0913316160440445, - -0.013658476993441582, - 0.00232383469119668, - -0.034915491938591, - -0.061004094779491425, - 0.0025341480504721403, - -0.009763648733496666, - 0.06943570077419281, - -0.021624647080898285, - -0.004388654604554176, - 0.1112128496170044, - 0.026822529733181, - 0.01602952927350998, - -0.043513745069503784, - -0.01502235233783722, - 0.022373944520950317, - 0.0614626482129097, - -0.0835481733083725, - -0.06088887155056, - -0.0020441864617168903, - 0.042370475828647614, - -0.01576180011034012, - 0.06601649522781372, - 0.04185749962925911, - 0.005543984472751617, - 0.01601308211684227, - -0.06310105323791504, - 0.028903983533382416, - -0.09743650257587433, - -0.06784515082836151, - 0.003060117596760392, - -0.025129593908786774, - -0.026015181094408035, - 0.066642627120018, - 0.013490845449268818, - 0.05782214552164078, - -0.02752104587852955, - -0.0952022522687912, - -0.07619073987007141, - 0.05597684532403946, - 0.08000271022319794, - -0.02649606764316559, - 0.036068618297576904, - 0.06840987503528595, - -0.018654316663742065, - 0.047797709703445435, - 0.06361024081707001, - 0.12446829676628113, - -0.03480725735425949, - 0.028284952044487, - -0.06907781958580017, - 0.0770389586687088, - 0.061118997633457184, - -0.08856939524412155, - -0.07044962048530579, - -0.010542751289904118, - -0.04937030002474785, - 0.020144402980804443, - -0.01816735789179802, - 0.017114227637648582, - 0.03734929859638214, - 0.0097791263833642, - -0.08579295128583908, - -0.0838615745306015, - 0.07927669584751129, - -0.0904659628868103, - 0.009595880284905434, - -0.08989790827035904, - 0.04700317978858948, - 0.10720080137252808, - 0.042399175465106964, - -0.023628637194633484, - -0.011450308375060558, - 0.034883882850408554, - -0.018237393349409103, - 0.004418144468218088, - 0.04620610177516937, - 0.03313702344894409, - -0.11405257135629654, - -0.011874860152602196, - -0.08303601294755936, - 0.04826189577579498, - -0.029718399047851562, - 0.15472456812858582, - 0.012197725474834442, - -0.04418008401989937, - -0.0826801210641861, - 0.01825789362192154, - -0.02464769408106804, - 0.0648951604962349, - 0.0428338497877121, - 0.07521780580282211, - 0.05374845862388611, - -0.03880413621664047, - 0.12024907767772675, - 0.04216542840003967, - -0.04555374011397362, - -0.067747101187706, - -0.040939636528491974, - -0.03998100757598877, - 0.023282814770936966, - 0.0054460447281599045, - -0.09071138501167297, - -0.020179126411676407, - 0.026966780424118042, - -0.029944490641355515, - 0.0648113340139389, - 0.13851043581962585, - 0.07271739840507507, - -0.11591905355453491 - ] - }, - "p245_293.wav": { - "name": "p245", - "embedding": [ - 0.018766077235341072, - 0.07832224667072296, - -0.01338904444128275, - 0.06080423295497894, - -0.0548609234392643, - 0.050576359033584595, - -0.09788424521684647, - 0.11394108831882477, - -0.056879106909036636, - 0.11803025007247925, - -0.10151873528957367, - 0.08068136870861053, - -0.08316683769226074, - -0.17655687034130096, - -0.01658007502555847, - 0.08558399975299835, - -0.03489235043525696, - -0.02801639586687088, - -0.03741428628563881, - -0.004323628731071949, - 0.023353835567831993, - 0.024913672357797623, - 0.013999580405652523, - 0.03661104664206505, - 0.005566709209233522, - 0.07210391759872437, - -0.020662488415837288, - 0.0316840298473835, - 0.009711146354675293, - -0.005394725129008293, - -0.03358791768550873, - 0.11052357405424118, - -0.034875884652137756, - 0.011503329500555992, - 0.06418995559215546, - 0.03379853069782257, - -0.024521518498659134, - -0.03241090103983879, - -0.006856228690594435, - -0.04489932954311371, - -0.10583367943763733, - 0.05011476203799248, - 0.024063870310783386, - 0.003499245271086693, - 0.052678219974040985, - 0.0156423207372427, - -0.03558489680290222, - -0.027634311467409134, - -0.1078028678894043, - 0.12505193054676056, - 0.07614916563034058, - -0.01134906429797411, - -0.05060739070177078, - -0.06302972882986069, - 0.11003569513559341, - -0.006011045537889004, - -0.13780753314495087, - -0.06591972708702087, - 0.11863414943218231, - 0.17017588019371033, - -0.022381220012903214, - -0.003695601597428322, - -0.0056387861259281635, - 0.1256171613931656, - 0.04616585373878479, - 0.11541697382926941, - 0.032799556851387024, - 0.1092979684472084, - 0.01792016252875328, - 0.009708814322948456, - 0.09480037540197372, - 0.039220839738845825, - 0.05978573113679886, - -0.0157419852912426, - -0.010820921510457993, - 0.016308126971125603, - -0.02257700264453888, - 0.03668336197733879, - -0.02355329319834709, - -0.01680375076830387, - -0.03980802744626999, - -0.027739854529500008, - -0.014905964024364948, - -0.03182728588581085, - 0.009705748409032822, - 0.045542094856500626, - 0.06020873785018921, - -0.00687247421592474, - 0.07128147780895233, - 0.037019360810518265, - -0.05557704344391823, - 0.06628328561782837, - -0.03983638435602188, - -0.04826798290014267, - -0.02397048845887184, - -0.0005372475134208798, - 0.012752880342304707, - 0.06341224908828735, - 0.03191596269607544, - -0.004981848411262035, - 0.11297659575939178, - 0.008063608780503273, - 0.03474205359816551, - 0.04326782375574112, - -0.10992805659770966, - 0.11436183750629425, - 0.05497283488512039, - -0.014645973220467567, - 0.03035632334649563, - -0.007069403771311045, - 0.06526973098516464, - 0.10979896038770676, - -0.1270352452993393, - -0.020149005576968193, - 0.01648905500769615, - -0.007942164316773415, - -0.037712834775447845, - 0.09686160087585449, - 0.0024537418503314257, - -0.006335014011710882, - 0.13672277331352234, - -0.10170070827007294, - -0.07488036155700684, - -0.012716513127088547, - 0.029769551008939743, - -0.08896783739328384, - 0.04051545262336731, - 0.04808410629630089, - -0.0030757482163608074, - 0.013942616991698742, - 0.08829846978187561, - -0.014227330684661865, - -0.009617168456315994, - 0.020743126049637794, - -0.0762581154704094, - 0.01839030720293522, - -0.05220619589090347, - 0.00865284912288189, - 0.08152864873409271, - 0.03222652152180672, - 0.05623181536793709, - -0.006721979938447475, - -0.01321941427886486, - -0.09449884295463562, - -0.007029630243778229, - 0.07050686329603195, - 0.06973870098590851, - 0.002110447734594345, - -0.005542682483792305, - -0.043368272483348846, - -0.07919786870479584, - 0.054487816989421844, - -0.022104062139987946, - 0.09615138918161392, - -0.0447135865688324, - -0.03454030677676201, - 0.1031801849603653, - 0.0011876635253429413, - -0.016548309475183487, - -0.11301251500844955, - -0.03576128929853439, - 0.0018747929716482759, - 0.044468630105257034, - -0.10457715392112732, - -0.06522348523139954, - 0.013756644912064075, - 0.05506196618080139, - -0.008104594424366951, - 0.026059618219733238, - 0.024717506021261215, - 0.01778505928814411, - 0.011430995538830757, - -0.04185657203197479, - 0.014964859932661057, - -0.09231160581111908, - -0.07081983983516693, - -0.0074061681516468525, - -0.038231849670410156, - 0.009655090980231762, - 0.05711817368865013, - 0.008274390362203121, - 0.004020174965262413, - 0.020683590322732925, - -0.09754687547683716, - -0.09733251482248306, - 0.07647679001092911, - 0.03809097409248352, - 0.003508695401251316, - 0.06882958859205246, - 0.06191876530647278, - -0.10502425581216812, - 0.04165640473365784, - 0.03898163139820099, - 0.1351521611213684, - -0.033675599843263626, - 0.0282076895236969, - -0.0727163627743721, - 0.044218823313713074, - 0.09947332739830017, - -0.10260143876075745, - -0.08041021227836609, - -0.04103296622633934, - -0.032291460782289505, - 0.07333236932754517, - -0.04375382140278816, - -0.02577655389904976, - 0.015982430428266525, - -0.036244653165340424, - -0.08553531765937805, - -0.0913504958152771, - 0.08446788787841797, - -0.05532671511173248, - -0.018455471843481064, - -0.0708339661359787, - 0.03648616001009941, - 0.028114615008234978, - 0.03032359853386879, - -0.01918690837919712, - 0.05045837536454201, - 0.0730222761631012, - -0.07147010415792465, - -0.017639808356761932, - 0.0766962543129921, - 0.001869450556114316, - -0.0802168995141983, - -0.03556222468614578, - -0.08752631396055222, - 0.08988158404827118, - -0.030184414237737656, - 0.15392524003982544, - -0.030985843390226364, - -0.04035087674856186, - -0.05721399188041687, - 0.02088957279920578, - -0.00838535651564598, - 0.04259791225194931, - 0.05062619224190712, - 0.07299064099788666, - 0.012801427394151688, - -0.015872951596975327, - 0.14752542972564697, - 0.011669939383864403, - -0.015471728518605232, - -0.02480458654463291, - -0.038634561002254486, - -0.0808815062046051, - -0.0224862489849329, - -0.012519699521362782, - -0.120182104408741, - -0.0019618342630565166, - 0.004150859545916319, - -0.022695783525705338, - 0.04961440712213516, - 0.12317359447479248, - 0.08003267645835876, - -0.07765915989875793 - ] - }, - "p245_193.wav": { - "name": "p245", - "embedding": [ - 0.028064658865332603, - 0.10093169659376144, - -0.0209024790674448, - 0.0005015037604607642, - -0.04624292626976967, - 0.07274523377418518, - -0.15114489197731018, - 0.11999926716089249, - -0.04301624372601509, - 0.15464086830615997, - -0.07388464361429214, - 0.09885291755199432, - -0.009067868813872337, - -0.19971846044063568, - -0.024177275598049164, - 0.02904629521071911, - -0.02677609771490097, - -0.013945994898676872, - -0.037669431418180466, - -0.025288552045822144, - 0.05819498747587204, - 0.0506451353430748, - -0.01479200180619955, - -0.05680122599005699, - 0.04410255327820778, - 0.049362678080797195, - 0.007612136658281088, - 0.019799187779426575, - -0.00015100942982826382, - -0.05961752310395241, - -0.03394631668925285, - 0.1318761557340622, - -0.035015612840652466, - 0.012703672051429749, - 0.048580244183540344, - -0.014072760939598083, - 0.0036075555253773928, - -0.05344409495592117, - 0.009733493439853191, - 0.038950033485889435, - -0.023327123373746872, - 0.07290294766426086, - 0.048989102244377136, - 0.03345615044236183, - 0.018166551366448402, - 0.05316765978932381, - 0.010791055858135223, - -0.06295697391033173, - -0.06711817532777786, - 0.19449837505817413, - 0.044383518397808075, - -0.02158026397228241, - -0.04870667681097984, - -0.06490049511194229, - 0.09780507534742355, - 0.01840827241539955, - -0.10608617961406708, - -0.053192123770713806, - 0.102013498544693, - 0.14631377160549164, - -0.02272331342101097, - -0.055770739912986755, - 0.018477950245141983, - 0.1361236423254013, - -0.0034078541211783886, - 0.089718759059906, - 0.06669244170188904, - 0.12168992310762405, - 0.0202292799949646, - 0.011864868924021721, - 0.04311855137348175, - 0.05122264847159386, - 0.017698725685477257, - -0.062245968729257584, - 0.04131901264190674, - -0.030735652893781662, - -0.01098595093935728, - 0.004761946387588978, - -0.029796747490763664, - -0.020606722682714462, - 0.019907385110855103, - 0.000877486658282578, - 0.005308923311531544, - 0.020342709496617317, - -0.040731605142354965, - 0.017835749313235283, - 0.04353313520550728, - -0.010599726811051369, - 0.094170942902565, - 0.03840005025267601, - 0.04946715012192726, - 0.04376824572682381, - -0.0874771773815155, - -0.09188377857208252, - 0.07096783816814423, - 0.016629032790660858, - 0.0019821543246507645, - 0.06621650606393814, - 0.05396273359656334, - -0.02276771329343319, - 0.12169624865055084, - 0.017844896763563156, - -0.018606580793857574, - 0.013554127886891365, - -0.10569509863853455, - 0.14705581963062286, - 0.08077208697795868, - -0.01915149949491024, - 0.047597579658031464, - -0.07196494936943054, - 0.07360904663801193, - 0.0430615171790123, - -0.15370124578475952, - -0.08593811094760895, - 0.04457654431462288, - 0.01647261157631874, - -0.04098517820239067, - 0.12814576923847198, - -0.01650349237024784, - 0.004972091410309076, - 0.09837710857391357, - -0.09899020940065384, - -0.0586339607834816, - -0.04442628473043442, - 0.029755819588899612, - -0.09374802559614182, - 0.04484346881508827, - 0.0703909620642662, - -0.03302557393908501, - 0.019055038690567017, - 0.07564608007669449, - -0.009183716028928757, - 0.034275613725185394, - -0.025118662044405937, - -0.017659621313214302, - 0.048619043081998825, - -0.020642878487706184, - 0.01947825588285923, - -0.006357635371387005, - 0.038111306726932526, - 0.06730303168296814, - -0.011889657005667686, - -0.04917293041944504, - -0.10561397671699524, - 0.023614857345819473, - 0.009614656679332256, - 0.055440161377191544, - -0.023745901882648468, - -0.004637076053768396, - -0.03961402550339699, - -0.07685063034296036, - 0.013602161779999733, - -0.022146614268422127, - 0.08944978564977646, - 0.02504526823759079, - -0.015570049174129963, - 0.12435919046401978, - 0.04165079444646835, - 0.003684479743242264, - -0.049653757363557816, - -0.044736072421073914, - 0.020284350961446762, - 0.019070114940404892, - -0.10015366226434708, - -0.04773537814617157, - -0.017175287008285522, - 0.00645119184628129, - -0.01676187291741371, - 0.03483615070581436, - 0.04950835928320885, - 0.029220538213849068, - 0.0433000773191452, - -0.07386346161365509, - 0.005387182347476482, - -0.08708079904317856, - -0.03846361115574837, - -0.008275208994746208, - -0.012573392130434513, - -0.051855187863111496, - 0.11334152519702911, - -0.011024225503206253, - 0.015157445333898067, - -0.044631943106651306, - -0.0408916138112545, - -0.04860717058181763, - 0.05073310807347298, - 0.07394257932901382, - -0.022264894098043442, - 0.026369821280241013, - 0.02444506250321865, - -0.011402787640690804, - 0.03376973047852516, - 0.0785791426897049, - 0.10599788278341293, - -0.015553602017462254, - 0.027493169531226158, - -0.06009837985038757, - 0.13035555183887482, - 0.049230996519327164, - -0.06425788998603821, - -0.08028513193130493, - -0.026675259694457054, - -0.06862812489271164, - 0.022149328142404556, - -0.023004727438092232, - 0.002290364122018218, - -0.007452433463186026, - 0.0032334483694285154, - -0.08550503104925156, - -0.06634517014026642, - 0.04706482216715813, - -0.06982442736625671, - -0.016020910814404488, - -0.10891351848840714, - 0.0779048353433609, - 0.11737146228551865, - 0.05526309460401535, - -0.048146817833185196, - -0.04920608177781105, - 0.04895175248384476, - -0.05627858266234398, - 0.01980765350162983, - 0.02313810959458351, - 0.04900076612830162, - -0.08923839032649994, - 0.01320543885231018, - -0.07215215265750885, - 0.04624795913696289, - -0.07483778148889542, - 0.13847589492797852, - 0.031741637736558914, - -0.07044603675603867, - -0.06914973258972168, - 0.06395974010229111, - -0.015005374327301979, - 0.031309694051742554, - 0.03386189788579941, - 0.04783611372113228, - 0.06502298265695572, - -0.07598915696144104, - 0.104585200548172, - 0.022739706560969353, - -0.005537805147469044, - -0.07495599240064621, - -0.04264640808105469, - -0.02485761232674122, - 0.046410996466875076, - 0.023422393947839737, - -0.11223297566175461, - -0.022592881694436073, - 0.057693783193826675, - 0.019227633252739906, - 0.08285953104496002, - 0.12196313589811325, - 0.045694947242736816, - -0.11441688239574432 - ] - }, - "p245_368.wav": { - "name": "p245", - "embedding": [ - 0.054597966372966766, - 0.06794026494026184, - -0.02768591418862343, - -0.005401697941124439, - -0.020188521593809128, - 0.04107090085744858, - -0.14340251684188843, - 0.12126179039478302, - -0.021215420216321945, - 0.10495319217443466, - -0.059717752039432526, - 0.09763114899396896, - -0.032423511147499084, - -0.152787446975708, - -0.03312711417675018, - 0.0368674211204052, - -0.02028288133442402, - -0.02517843246459961, - -0.027576742693781853, - -0.014677315019071102, - 0.0429673045873642, - 0.03135883808135986, - 0.002525127027183771, - -0.01153523102402687, - 0.004896932747215033, - 0.05532139539718628, - 0.00695518683642149, - 0.011402073316276073, - 0.014647096395492554, - 0.014217379502952099, - 0.005237075500190258, - 0.06142966076731682, - -0.024166006594896317, - 0.009274882264435291, - 0.05640403553843498, - 0.014400884509086609, - -0.024316739290952682, - -0.060479458421468735, - 0.0006956632132641971, - 0.024502307176589966, - -0.041442278772592545, - 0.07500746846199036, - 0.06557668745517731, - -0.022111516445875168, - 0.041771672666072845, - 0.0070436373353004456, - 0.005612244363874197, - -0.05346980690956116, - -0.10505198687314987, - 0.15771043300628662, - 0.053827062249183655, - 0.025785794481635094, - -0.06625185906887054, - -0.02419087290763855, - 0.09482318162918091, - 8.56202095746994e-05, - -0.08090624213218689, - -0.0659714862704277, - 0.06595274060964584, - 0.12809544801712036, - -0.0298458244651556, - -0.044891294091939926, - 0.023406565189361572, - 0.09892218559980392, - 0.0306496974080801, - 0.05206165462732315, - 0.11163072288036346, - 0.10073049366474152, - -0.017706627026200294, - 0.003945580683648586, - 0.057496510446071625, - 0.06304314732551575, - 0.012680932879447937, - -0.011091801337897778, - 0.011797195300459862, - -0.027157016098499298, - -0.011047573760151863, - 0.012354746460914612, - -0.0008024691487662494, - -0.04273931682109833, - -0.014057951048016548, - -0.001459690509364009, - -0.009018465876579285, - 0.05048226937651634, - -0.0195211973041296, - 0.049049124121665955, - 0.03578001260757446, - -0.02302272617816925, - 0.0659097284078598, - 0.03899890184402466, - -0.005676360335201025, - 0.017515873536467552, - -0.04500562697649002, - -0.08900042623281479, - 0.027018975466489792, - -0.005247652530670166, - 0.010233448818325996, - 0.064513199031353, - 0.03975391387939453, - 0.015497750602662563, - 0.10694428533315659, - 0.03259456902742386, - -0.017690710723400116, - 0.0008960801060311496, - -0.08283502608537674, - 0.12349831312894821, - 0.08296424150466919, - -0.028503989800810814, - 0.031295210123062134, - -0.07373412698507309, - 0.02208525501191616, - 0.05004064366221428, - -0.10610406845808029, - -0.052143897861242294, - 0.07557830214500427, - 0.03986836597323418, - 0.0187306459993124, - 0.12801772356033325, - 0.012325256131589413, - 0.0006934603443369269, - 0.10787783563137054, - -0.0833342894911766, - -0.06913228332996368, - -0.03961227834224701, - 0.04431707784533501, - -0.052155084908008575, - 0.05045519396662712, - 0.06766574084758759, - -0.014377645216882229, - -0.002127209212630987, - 0.06171921640634537, - -0.00032047121203504503, - -0.0026335555594414473, - -0.035901837050914764, - 0.01750933565199375, - 0.05526147410273552, - -0.01948964223265648, - -0.01272566244006157, - 0.02374565415084362, - 0.051132023334503174, - 0.04217388853430748, - 0.01760914921760559, - -0.05110933631658554, - -0.12104706466197968, - 0.002807683078572154, - 0.04644662141799927, - 0.07695146650075912, - -0.04856482893228531, - -0.02853672206401825, - -0.03597293794155121, - -0.04724053293466568, - -0.026257269084453583, - -0.016987793147563934, - 0.08190922439098358, - -0.006321170832961798, - 0.00892754178494215, - 0.08382084965705872, - 0.004374565090984106, - 0.01832118257880211, - -0.025459572672843933, - -0.027531318366527557, - 0.024592887610197067, - 0.015883151441812515, - -0.07838408648967743, - -0.074302077293396, - -0.03906022757291794, - 0.026572950184345245, - -0.012810841202735901, - 0.00791997741907835, - 0.013579031452536583, - 0.0035343915224075317, - 0.016205325722694397, - -0.08096267282962799, - 0.028728468343615532, - -0.10955439507961273, - -0.035989586263895035, - -0.010934676975011826, - -0.0073814066126942635, - 0.0007349936058744788, - 0.0874292254447937, - 0.0009223666856996715, - 0.04272165521979332, - -0.01941465586423874, - -0.07535108178853989, - -0.054687634110450745, - 0.052424073219299316, - 0.08294413983821869, - -0.023709189146757126, - 0.014289806596934795, - 0.035777926445007324, - -0.0030412874184548855, - 0.015678327530622482, - 0.033716361969709396, - 0.08050978928804398, - -0.040942296385765076, - -0.020942477509379387, - -0.027544483542442322, - 0.0814032331109047, - 0.07084417343139648, - -0.09136833250522614, - -0.048834603279829025, - -0.04359143227338791, - -0.045942436903715134, - -0.01427727472037077, - -0.04610138386487961, - 0.009285246022045612, - 0.0028468479868024588, - -0.026254139840602875, - -0.10221607983112335, - -0.090653195977211, - 0.02330595627427101, - -0.04653122276067734, - 0.01661672070622444, - -0.08013215661048889, - 0.058743562549352646, - 0.11125113815069199, - 0.01397441141307354, - -0.014740772545337677, - -0.02139434777200222, - -0.018331613391637802, - -0.03534567728638649, - -0.012891126796603203, - 0.013865387067198753, - 0.05214637145400047, - -0.0958641991019249, - -0.0034252412151545286, - -0.05333008989691734, - 0.061730869114398956, - -0.061814360320568085, - 0.11231162399053574, - 0.01744024083018303, - -0.04388999193906784, - -0.07586324214935303, - -0.0031678739469498396, - -0.004547739867120981, - 0.0561864972114563, - 0.011110684834420681, - 0.028143253177404404, - 0.026374276727437973, - -0.06230119988322258, - 0.09798835217952728, - 0.06055163964629173, - -0.025798462331295013, - -0.07412344217300415, - -0.01732182875275612, - -0.02169863134622574, - 0.03376752883195877, - 0.0015755556523799896, - -0.0434403195977211, - -0.021126046776771545, - 0.016976920887827873, - -0.0027252330910414457, - 0.05588299036026001, - 0.11567628383636475, - 0.034576695412397385, - -0.09895847737789154 - ] - }, - "p245_148.wav": { - "name": "p245", - "embedding": [ - 0.04248299449682236, - 0.1088084876537323, - -0.039898257702589035, - 0.016109680756926537, - -0.007761038839817047, - 0.032458849251270294, - -0.10358981043100357, - 0.11110831797122955, - -0.04506179690361023, - 0.13135957717895508, - -0.07696053385734558, - 0.10821495950222015, - -0.043233998119831085, - -0.11114148795604706, - -0.02046075649559498, - 0.057946763932704926, - -0.008570295758545399, - 0.026915019378066063, - 0.00514995539560914, - -0.008594631217420101, - 0.05259736627340317, - 0.022356022149324417, - 0.041673265397548676, - -0.04690439999103546, - -0.0031371526420116425, - 0.059676505625247955, - -0.012141656130552292, - -0.0055268798023462296, - 0.002419542521238327, - -0.02234533242881298, - -0.010623934678733349, - 0.06984658539295197, - 0.0016246447339653969, - 0.02020179107785225, - 0.05156949907541275, - 0.03143560141324997, - -0.02695651352405548, - -0.04271716624498367, - 0.012414712458848953, - -0.0036344260443001986, - -0.04752660542726517, - 0.0379205197095871, - 0.0074498895555734634, - -0.06874533742666245, - 0.060273632407188416, - -0.028537487611174583, - -0.02265193499624729, - 0.006309090182185173, - -0.04293375089764595, - 0.13157673180103302, - 0.0700802281498909, - 0.033397648483514786, - -0.07771100103855133, - -0.01575387641787529, - 0.09487232565879822, - 0.005112245678901672, - -0.08541784435510635, - -0.020819952711462975, - 0.0306388046592474, - 0.14434334635734558, - -0.012820703908801079, - -0.044141482561826706, - 0.03894544020295143, - 0.078412726521492, - 0.007539356593042612, - 0.07224211096763611, - 0.07755531370639801, - 0.0501728318631649, - 0.026598472148180008, - 0.015210765413939953, - 0.029122186824679375, - 0.09684719890356064, - 0.05640073120594025, - -0.03136436641216278, - -0.001794097712263465, - -0.028641223907470703, - -0.06381870806217194, - -0.006069047376513481, - -0.006458558142185211, - -0.07951106876134872, - -0.0599675327539444, - -0.04045707732439041, - 0.0038311833050101995, - -0.00022782199084758759, - -0.008839325979351997, - 0.006036813370883465, - 0.06356246769428253, - -0.058796174824237823, - 0.03489162400364876, - 0.06339679658412933, - 0.010602842085063457, - 0.00932422373443842, - -0.04932007938623428, - -0.10191045701503754, - 0.010955105535686016, - 0.011345273815095425, - 0.01914011687040329, - 0.05016087740659714, - 0.05357366055250168, - 0.02968147024512291, - 0.07375020533800125, - 0.03487242013216019, - 0.035464197397232056, - 0.0016346834599971771, - -0.08760132640600204, - 0.09856240451335907, - 0.11962580680847168, - -0.0428517609834671, - 0.035678066313266754, - -0.03504303842782974, - 0.03120984323322773, - 0.06372453272342682, - -0.10126155614852905, - -0.050504401326179504, - -0.006664739456027746, - 0.0156350489705801, - 0.0522531196475029, - 0.06485053151845932, - 0.043721262365579605, - 0.0033383150584995747, - 0.09240428358316422, - -0.09696812927722931, - -0.12102443724870682, - -0.08276250213384628, - 0.046721603721380234, - -0.07468682527542114, - 0.09312871098518372, - 0.06458370387554169, - 0.024062253534793854, - -0.007651632651686668, - 0.06311263144016266, - 0.013866707682609558, - 0.026757072657346725, - -0.029613759368658066, - -0.022419927641749382, - 0.0018990151584148407, - -0.08057676255702972, - 0.02023256942629814, - 0.0683978796005249, - 0.015799807384610176, - 0.074375681579113, - 0.032963573932647705, - 0.0141293965280056, - -0.07836262881755829, - -0.013821486383676529, - 0.0955047458410263, - 0.0025049839168787003, - -0.021450141444802284, - -0.0612109899520874, - -0.005396940279752016, - -0.060798950493335724, - 0.0039175283163785934, - -0.03677001968026161, - 0.07162518799304962, - 0.004333005752414465, - 0.038920190185308456, - 0.11667513847351074, - -0.02412485145032406, - -0.00836784765124321, - -0.04515838250517845, - -0.0004311520606279373, - 0.016081498935818672, - 0.016713464632630348, - -0.116643026471138, - -0.11761742830276489, - -0.04262144863605499, - 0.009450307115912437, - 0.015945205464959145, - 0.029861222952604294, - 0.054206930100917816, - -0.014322925359010696, - 0.016983643174171448, - -0.03505007177591324, - 0.022430334240198135, - -0.10759289562702179, - -0.07379721850156784, - -0.0471261665225029, - -0.07716687768697739, - 0.006430382374674082, - 0.08667804300785065, - 0.005794629920274019, - 0.013079619035124779, - -0.016471879556775093, - -0.07220794260501862, - -0.0874302014708519, - 0.03963758051395416, - 0.04099626466631889, - -0.012121981009840965, - 0.01696222834289074, - 0.03593946248292923, - -0.024275150150060654, - 0.012220092117786407, - 0.023516254499554634, - 0.09786400198936462, - -0.041868992149829865, - -0.015040406957268715, - -0.08167489618062973, - 0.050331830978393555, - 0.1317368447780609, - -0.08616477251052856, - -0.09435716271400452, - -0.1022263914346695, - -0.05445020645856857, - 0.02426890842616558, - -0.05544189363718033, - -0.011222044005990028, - 0.005908037535846233, - -0.05400668829679489, - -0.08300652354955673, - -0.11280298978090286, - 0.0708019807934761, - -0.02463448792695999, - -0.030180634930729866, - -0.04082821309566498, - 0.040906764566898346, - 0.0038041621446609497, - -0.0018810434266924858, - -0.06067786365747452, - 0.04300433024764061, - 0.0048789381980896, - -0.04923533648252487, - -0.01746589131653309, - 0.020950013771653175, - 0.0414959080517292, - -0.04940083250403404, - -0.005177237093448639, - -0.07816188782453537, - 0.08760306239128113, - -0.07669836282730103, - 0.12723694741725922, - -0.04411640390753746, - -0.06997726112604141, - -0.08404213190078735, - 0.014857415109872818, - 0.0036375648342072964, - 0.021724119782447815, - 0.04858018457889557, - 0.03941226750612259, - -0.009746450930833817, - -0.08930712938308716, - 0.0767572671175003, - 0.03971749171614647, - 0.03837615251541138, - -0.07917232811450958, - -0.04959459230303764, - -0.05392814055085182, - 0.002488921396434307, - -0.02051621675491333, - -0.050106726586818695, - 0.034129541367292404, - -0.03328149765729904, - 0.04441455379128456, - 0.06249994784593582, - 0.06472223252058029, - 0.019791193306446075, - -0.08799661695957184 - ] - }, - "p245_287.wav": { - "name": "p245", - "embedding": [ - 0.0692286342382431, - 0.05480683594942093, - 0.007684987038373947, - 0.0032945023849606514, - -0.02195264771580696, - 0.05035950988531113, - -0.14261296391487122, - 0.1083078533411026, - -0.03737542778253555, - 0.1022167056798935, - -0.06891612708568573, - 0.08420092612504959, - 0.005649595521390438, - -0.16731896996498108, - -0.05414462834596634, - 0.04770868644118309, - -0.04743783548474312, - -0.01798628829419613, - -0.05265462026000023, - -0.026190605014562607, - 0.015089110471308231, - 0.05945054441690445, - 0.040232300758361816, - -0.013521063141524792, - 0.03452802449464798, - 0.05620187520980835, - 0.009818429127335548, - 0.04042443260550499, - 0.0005402704700827599, - -0.04905647039413452, - -0.006263858638703823, - 0.09032385796308517, - -0.024130504578351974, - -0.015338076278567314, - 0.038439683616161346, - 0.002249504439532757, - 0.030774902552366257, - -0.08525492995977402, - -0.03178837522864342, - 0.026400890201330185, - -0.0451011136174202, - 0.08129338920116425, - 0.05663622170686722, - 0.0006870478391647339, - 0.023642301559448242, - 0.014209933578968048, - -0.0037164841778576374, - -0.07629619538784027, - -0.11188864707946777, - 0.17933812737464905, - 0.03267664462327957, - 0.032216623425483704, - -0.09039906412363052, - -0.04582812264561653, - 0.08925295621156693, - -0.01917594112455845, - -0.07608664780855179, - -0.04462350904941559, - 0.05636598914861679, - 0.1631850153207779, - -0.009876868687570095, - -0.0363830141723156, - 0.043847449123859406, - 0.10999936610460281, - 0.026485320180654526, - 0.04352160170674324, - 0.10503900051116943, - 0.08791948109865189, - 0.004083937965333462, - 0.022220395505428314, - 0.04441465437412262, - 0.048213113099336624, - 0.02719922550022602, - -0.02342405542731285, - 0.026014363393187523, - -0.013228056952357292, - -0.039156924933195114, - -0.01303048338741064, - -0.020297903567552567, - -0.01681068167090416, - 0.012318119406700134, - 0.015283848159015179, - 0.014192163944244385, - 0.042268432676792145, - -0.0550118088722229, - 0.04217224195599556, - 0.00210662093013525, - -0.012524041347205639, - 0.07037238776683807, - 0.04373300075531006, - 0.025661831721663475, - 0.014635907486081123, - -0.037032321095466614, - -0.08303970843553543, - 0.01293417438864708, - 0.017564896494150162, - 0.005596471950411797, - 0.036855876445770264, - 0.0346909798681736, - -0.04222099110484123, - 0.11262392997741699, - 0.01319817639887333, - -0.004733177833259106, - -0.004792144522070885, - -0.08267088234424591, - 0.0941539779305458, - 0.09530054032802582, - -0.003206122200936079, - 0.047448284924030304, - -0.04040597006678581, - 0.022858984768390656, - 0.06782518327236176, - -0.12642446160316467, - -0.07093212008476257, - 0.04961775243282318, - 0.019923804327845573, - 0.037647850811481476, - 0.11929202079772949, - 0.00948140025138855, - 0.029270555824041367, - 0.07347947359085083, - -0.07912205159664154, - -0.04406982287764549, - -0.0067990245297551155, - 0.0386674627661705, - -0.05977544188499451, - 0.03508898988366127, - 0.051611728966236115, - -0.004733145236968994, - -0.02855514921247959, - 0.06631622463464737, - -0.00045882631093263626, - 0.005783036816865206, - -0.039893604815006256, - 0.0017935745418071747, - 0.05008835345506668, - -0.013344003818929195, - -0.016096141189336777, - 0.032731786370277405, - 0.05889163166284561, - 0.01872183382511139, - 0.025728384032845497, - -0.0713554099202156, - -0.11876139044761658, - -0.01751829870045185, - 0.02349994331598282, - 0.06863129884004593, - -0.019667314365506172, - -0.025050390511751175, - -0.06488745659589767, - -0.01902407966554165, - 0.00878208503127098, - -0.010262690484523773, - 0.07641758024692535, - 0.02366775833070278, - -0.013284876942634583, - 0.09293458610773087, - -0.014687488786876202, - 0.017383567988872528, - -0.016538089141249657, - 0.0016597704961895943, - 0.020237665623426437, - 0.02548619918525219, - -0.025365207344293594, - -0.0640617087483406, - 0.007149113342165947, - 0.009432383812963963, - -0.011131688952445984, - 0.022257991135120392, - 0.01702532358467579, - 0.0013369610533118248, - 0.008878740482032299, - -0.08414817601442337, - 0.020464539527893066, - -0.08853347599506378, - -0.028630351647734642, - 0.03762521594762802, - -0.017337292432785034, - -0.0360490158200264, - 0.09711417555809021, - 0.036133892834186554, - 0.036103926599025726, - -0.03119988553225994, - -0.0778912901878357, - -0.03259140998125076, - 0.04367799311876297, - 0.06294777989387512, - -0.008116551674902439, - 0.0055156489834189415, - 0.015379343181848526, - 0.015287667512893677, - 0.05834120512008667, - 0.06027369573712349, - 0.053702905774116516, - -0.022857004776597023, - -0.03155399113893509, - -0.025409482419490814, - 0.10521921515464783, - 0.030779791995882988, - -0.06422463804483414, - -0.05962016433477402, - -0.004290957003831863, - -0.06072331964969635, - 0.02386871911585331, - 0.006661337800323963, - 0.035139523446559906, - 0.03961062803864479, - -0.018998555839061737, - -0.10254982858896255, - -0.07192068547010422, - 0.057048458606004715, - -0.07079260796308517, - -0.01409408263862133, - -0.055671386420726776, - 0.03869445621967316, - 0.0976174846291542, - 0.02797241508960724, - 0.01609788089990616, - -0.031307436525821686, - -0.00224253349006176, - -0.0715823769569397, - -0.02703169919550419, - 0.02031353861093521, - 0.024443984031677246, - -0.0876607820391655, - 0.013503563590347767, - -0.07867026329040527, - 0.06488778442144394, - -0.040746480226516724, - 0.11283106356859207, - 0.030320683494210243, - -0.06053103506565094, - -0.09321457892656326, - 0.008813604712486267, - -0.03633468225598335, - 0.0633057951927185, - 0.03598177060484886, - 0.03379935026168823, - 0.053377654403448105, - -0.06258979439735413, - 0.077357217669487, - 0.05837476626038551, - -0.04095661640167236, - -0.07174566388130188, - -0.04580726847052574, - -0.012428422458469868, - 0.03455574810504913, - -0.00936194509267807, - -0.04435930773615837, - 0.008833218365907669, - 0.03094535693526268, - -0.00499032624065876, - 0.06910305470228195, - 0.10018431395292282, - 0.04017564281821251, - -0.10175991803407669 - ] - }, - "p245_177.wav": { - "name": "p245", - "embedding": [ - 0.044507335871458054, - 0.10290037840604782, - -0.01942838914692402, - 0.0063907690346241, - -0.04126619175076485, - 0.0843627005815506, - -0.1418745219707489, - 0.14350973069667816, - -0.04559346288442612, - 0.15234117209911346, - -0.04654005169868469, - 0.11439628154039383, - -0.01790357381105423, - -0.18213427066802979, - -0.044224731624126434, - 0.042119164019823074, - -0.07358305901288986, - -0.038187477737665176, - -0.058632660657167435, - -0.017521066591143608, - 0.0413493886590004, - 0.02630498819053173, - 0.0078112343326210976, - -0.0012402207357808948, - 0.014448297210037708, - 0.06487567722797394, - -0.011467904783785343, - 0.04016463831067085, - 0.007768734358251095, - -0.07167845964431763, - -0.02149045094847679, - 0.10485772788524628, - -0.058698564767837524, - 0.03315238654613495, - 0.05382955074310303, - -0.022961340844631195, - -0.003142670262604952, - -0.04328037425875664, - -0.014102445915341377, - 0.015298848040401936, - -0.028260469436645508, - 0.08367998152971268, - 0.0210939422249794, - 0.009135067462921143, - 0.03220939636230469, - 0.02343090809881687, - -0.01149408146739006, - -0.04386613145470619, - -0.08241796493530273, - 0.16499371826648712, - 0.08151083439588547, - -0.020411022007465363, - -0.06182187795639038, - -0.0674542784690857, - 0.08925721794366837, - -0.026139482855796814, - -0.13917896151542664, - -0.044697415083646774, - 0.0769345611333847, - 0.15594087541103363, - -0.03628110885620117, - -0.03648683428764343, - 0.026295984163880348, - 0.13706699013710022, - 0.060307685285806656, - 0.09352603554725647, - 0.08576934039592743, - 0.10748005658388138, - -0.025145884603261948, - 0.011413290165364742, - 0.05874883010983467, - 0.05749337002635002, - 0.07069246470928192, - -0.007783948909491301, - 0.051094770431518555, - -0.019684571772813797, - 0.006331183481961489, - -0.020142074674367905, - -0.03404755890369415, - -0.015640851110219955, - -0.006409103516489267, - 0.024741489440202713, - 0.0010743311140686274, - 0.046937912702560425, - -0.019743602722883224, - 0.044876035302877426, - 0.036132004112005234, - -0.025616612285375595, - 0.0575033463537693, - 0.06666213274002075, - 0.05305125191807747, - 0.07089225202798843, - -0.08957815170288086, - -0.08050308376550674, - 0.04896273463964462, - -4.942466694046743e-05, - 0.029679100960493088, - 0.0570414699614048, - 0.037622272968292236, - -0.005926609970629215, - 0.10246354341506958, - 0.04696955159306526, - -0.025673234835267067, - 0.016343584284186363, - -0.10917592793703079, - 0.14109067618846893, - 0.07756783068180084, - -0.034430764615535736, - 0.03604024648666382, - -0.04463666304945946, - 0.06836666911840439, - 0.05606304481625557, - -0.12919269502162933, - -0.0906955748796463, - 0.03903983160853386, - 0.0145482262596488, - -0.03145833685994148, - 0.1191861629486084, - 0.009720953181385994, - 0.03448380529880524, - 0.09203238785266876, - -0.07754082977771759, - -0.04164496436715126, - -0.019547145813703537, - 0.04328896850347519, - -0.08834540843963623, - 0.05817221850156784, - 0.04665100574493408, - -0.0032242448069155216, - 0.01575862616300583, - 0.1058458685874939, - -0.0060029043816030025, - 0.0041887154802680016, - 0.005531563889235258, - -0.03112679347395897, - 0.02468976378440857, - -0.013656284660100937, - 0.010801400989294052, - 0.005599747411906719, - 0.02738834358751774, - 0.05051258206367493, - -0.017434172332286835, - -0.03983341529965401, - -0.10948289185762405, - 0.013040440157055855, - 0.03244007006287575, - 0.07351240515708923, - -0.015346869826316833, - -0.0029499991796910763, - -0.015452703461050987, - -0.05347593128681183, - 0.009149023331701756, - -0.028586266562342644, - 0.06400436908006668, - -0.011156049557030201, - -0.01872202195227146, - 0.11995216459035873, - 0.023755474016070366, - 0.004615433514118195, - -0.04865787923336029, - -0.01536521129310131, - 0.015331385657191277, - 0.062423255294561386, - -0.0918792113661766, - -0.06155911833047867, - 0.0020905390847474337, - 0.033234383910894394, - 0.0048028877936303616, - 0.07626350224018097, - 0.06587320566177368, - 0.005603136960417032, - 0.023449789732694626, - -0.06388477981090546, - 0.010032905265688896, - -0.09658244252204895, - -0.07583260536193848, - -0.011855741031467915, - -0.03673208877444267, - -0.026649339124560356, - 0.07699368894100189, - 0.010135439224541187, - 0.04810210317373276, - -0.03279845789074898, - -0.07675309479236603, - -0.07960840314626694, - 0.0640387237071991, - 0.07321665436029434, - -0.02039494179189205, - 0.03280410170555115, - 0.062203727662563324, - -0.0169824231415987, - 0.04802972823381424, - 0.06645660847425461, - 0.11753946542739868, - -0.04872111603617668, - 0.025700999423861504, - -0.08670076727867126, - 0.07631438970565796, - 0.07487630099058151, - -0.08698824793100357, - -0.0757039412856102, - -0.00127976736985147, - -0.056065235286951065, - 0.010733071714639664, - -0.038011085242033005, - 0.016188420355319977, - 0.04787304252386093, - -0.00043989234836772084, - -0.09895528852939606, - -0.08916385471820831, - 0.09480084478855133, - -0.0960225835442543, - 0.008184118196368217, - -0.08192850649356842, - 0.053381916135549545, - 0.09574402123689651, - 0.04957319051027298, - -0.05337437987327576, - -0.005033590365201235, - 0.04659406840801239, - -0.01844211108982563, - 0.011635253205895424, - 0.039850831031799316, - 0.04237517714500427, - -0.10864727199077606, - -0.008472432382404804, - -0.0758974552154541, - 0.03537415713071823, - -0.056284770369529724, - 0.14548859000205994, - 0.005222897510975599, - -0.06317712366580963, - -0.08173328638076782, - 0.041449468582868576, - -0.02393939159810543, - 0.053023483604192734, - 0.030388472601771355, - 0.08063406497240067, - 0.05251232534646988, - -0.06138286367058754, - 0.11442851275205612, - 0.03890982270240784, - -0.03311581537127495, - -0.08304301649332047, - -0.04845770448446274, - -0.0363117940723896, - 0.042048197239637375, - 0.021497942507267, - -0.09967577457427979, - -0.016620216891169548, - 0.024843836203217506, - -0.01707850955426693, - 0.07017605006694794, - 0.13972100615501404, - 0.060311540961265564, - -0.13035288453102112 - ] - }, - "p245_263.wav": { - "name": "p245", - "embedding": [ - 0.04128599539399147, - 0.07598605751991272, - -0.01703360117971897, - 0.02478514425456524, - -0.06335717439651489, - 0.08377527445554733, - -0.12763366103172302, - 0.11426429450511932, - -0.06585008651018143, - 0.130933940410614, - -0.07471145689487457, - 0.09078354388475418, - -0.03528660908341408, - -0.18902921676635742, - -0.04560801386833191, - 0.059346042573451996, - -0.07185767590999603, - -0.04309976100921631, - -0.07151428610086441, - -0.017230043187737465, - 0.029046662151813507, - 0.02187749184668064, - 0.003815083298832178, - 0.0077848127111792564, - 0.038880445063114166, - 0.05359562486410141, - -0.00587601400911808, - 0.03737001121044159, - 0.010253438726067543, - -0.022297155112028122, - -0.021236151456832886, - 0.11117593199014664, - -0.04131752997636795, - 0.009576773270964622, - 0.05776389688253403, - 0.015924660488963127, - 0.0037651374004781246, - -0.06612217426300049, - -0.030195903033018112, - 0.012611115351319313, - -0.06276153773069382, - 0.076931893825531, - 0.05328954756259918, - -0.0023592787329107523, - 0.02656152844429016, - 0.025806717574596405, - -0.023553449660539627, - -0.06257037818431854, - -0.1065969318151474, - 0.16351750493049622, - 0.05849403142929077, - 0.0027965775225311518, - -0.06692974269390106, - -0.07347643375396729, - 0.12299235165119171, - -0.016869191080331802, - -0.1290738582611084, - -0.04897785931825638, - 0.09080550074577332, - 0.18446344137191772, - -0.051156461238861084, - -0.014012139290571213, - 0.007214481942355633, - 0.12299323081970215, - 0.05643310770392418, - 0.09896814823150635, - 0.07080000638961792, - 0.11513865739107132, - 0.014350561425089836, - 0.012689726427197456, - 0.09455596655607224, - 0.055783070623874664, - 0.05863562971353531, - -0.01641079969704151, - 0.021119805052876472, - 0.009808136150240898, - -0.024745317175984383, - 0.012815197929739952, - -0.034563515335321426, - 0.004890691488981247, - -0.013302087783813477, - 0.01238696463406086, - 0.025868277996778488, - 0.011318932287395, - -0.027005527168512344, - 0.05232429504394531, - 0.0227592121809721, - -0.01808975450694561, - 0.06424864381551743, - 0.03846590965986252, - -0.02277255989611149, - 0.06032843142747879, - -0.0597979873418808, - -0.09974275529384613, - 0.004211927764117718, - 0.004095435608178377, - 0.018116604536771774, - 0.053751543164253235, - 0.03604555130004883, - -0.018202871084213257, - 0.11016976833343506, - 0.04118771478533745, - -0.0010136824566870928, - 0.04419294372200966, - -0.10390569269657135, - 0.11609356105327606, - 0.07350269705057144, - -0.014546538703143597, - 0.035217300057411194, - -0.03119894675910473, - 0.07928471267223358, - 0.07784344255924225, - -0.1420353800058365, - -0.06783810257911682, - 0.05091366544365883, - 0.013413838110864162, - -0.02013235352933407, - 0.11179488897323608, - -0.017391007393598557, - 0.006360135972499847, - 0.10977926850318909, - -0.07860468327999115, - -0.035291098058223724, - -0.008562113158404827, - 0.043972499668598175, - -0.05718036741018295, - 0.026436736807227135, - 0.0379178524017334, - -0.014167545363307, - 0.009817534126341343, - 0.08710454404354095, - -0.005403401795774698, - -0.015400934033095837, - 0.015755411237478256, - -0.03670327365398407, - 0.05373668670654297, - -0.0224139504134655, - -0.004703362472355366, - 0.07648744434118271, - 0.05891390144824982, - 0.04091031104326248, - 0.0071042245253920555, - -0.04414096847176552, - -0.10686540603637695, - 0.0027092299424111843, - 0.04072807729244232, - 0.0961134284734726, - -0.009441401809453964, - 0.01563969813287258, - -0.057062502950429916, - -0.0801522433757782, - 0.037142105400562286, - -0.014690391719341278, - 0.10363982617855072, - -0.012510514818131924, - -0.018634168431162834, - 0.0925869345664978, - 0.0008132611401379108, - -0.01129884272813797, - -0.05854763835668564, - -0.015685176476836205, - 0.016685033217072487, - 0.05314243584871292, - -0.07423895597457886, - -0.05283540487289429, - 0.01611187681555748, - 0.03279174864292145, - -0.024663999676704407, - 0.028591422364115715, - 0.020020995289087296, - 0.014441312290728092, - 0.032588060945272446, - -0.06198543682694435, - 0.01629823073744774, - -0.11632714420557022, - -0.04015820100903511, - 0.007386847399175167, - -0.03576727211475372, - -0.02159692347049713, - 0.07925155758857727, - 0.017603199928998947, - 0.02251569740474224, - -0.0007731998339295387, - -0.10292688012123108, - -0.05028044059872627, - 0.08091562986373901, - 0.061586037278175354, - 0.0030805757269263268, - 0.045238859951496124, - 0.0681837946176529, - -0.021632235497236252, - 0.041553035378456116, - 0.07853146642446518, - 0.12201513350009918, - -0.01677505485713482, - 0.010314326733350754, - -0.0555390864610672, - 0.09369504451751709, - 0.04927774518728256, - -0.09229934960603714, - -0.07560437172651291, - -0.019447151571512222, - -0.04411613941192627, - 0.03195546194911003, - -0.027498751878738403, - 0.015715764835476875, - 0.008266070857644081, - -0.0093894237652421, - -0.0955914855003357, - -0.08007149398326874, - 0.07545959949493408, - -0.07774260640144348, - -0.015143567696213722, - -0.07147689908742905, - 0.03594396263360977, - 0.10226476192474365, - 0.03887157142162323, - -0.003692230675369501, - 0.021670151501893997, - 0.052344802767038345, - -0.0735076442360878, - -0.021128442138433456, - 0.04399508982896805, - -0.0030346475541591644, - -0.10147459805011749, - 0.0016169245354831219, - -0.07501290738582611, - 0.07262503355741501, - -0.0329170897603035, - 0.1617656946182251, - -0.008428012952208519, - -0.04238666221499443, - -0.06451249867677689, - 0.028731701895594597, - -0.03555263951420784, - 0.05893290787935257, - 0.0522683821618557, - 0.07954270392656326, - 0.04428446665406227, - -0.03126406669616699, - 0.13565810024738312, - 0.026286523789167404, - -0.03735680133104324, - -0.052023373544216156, - -0.04361040145158768, - -0.047741711139678955, - -0.0012032240629196167, - -0.007811387535184622, - -0.07947827130556107, - 0.002552179852500558, - 0.02337745577096939, - -0.03732242062687874, - 0.04848259314894676, - 0.13554911315441132, - 0.09589840471744537, - -0.10047736018896103 - ] - }, - "p245_294.wav": { - "name": "p245", - "embedding": [ - 0.05459770932793617, - 0.09692078828811646, - 0.034110262989997864, - -0.0064083002507686615, - -0.0016159266233444214, - 0.06098071485757828, - -0.0019242726266384125, - 0.029791438952088356, - 0.043669626116752625, - 0.03141648694872856, - -0.13712216913700104, - 0.015368815511465073, - -0.04275570809841156, - -0.09147221595048904, - 0.0021834485232830048, - 0.003703085705637932, - -0.04947929084300995, - 0.033372387290000916, - -0.08244379609823227, - -0.04842475801706314, - -0.02709442377090454, - 0.01844625733792782, - 0.04003070294857025, - -0.012804122641682625, - 0.008990863338112831, - -0.0015538651496171951, - -0.033967334777116776, - 0.0038456767797470093, - -0.004893500357866287, - -0.02232736349105835, - -0.017596619203686714, - 0.052045293152332306, - -0.020494090393185616, - 0.003293451853096485, - -0.012989339418709278, - -0.01611274853348732, - 0.04672421142458916, - -0.058031462132930756, - -0.07602435350418091, - 0.08422161638736725, - -0.05447268858551979, - 0.039856910705566406, - 0.036663204431533813, - -0.03148551285266876, - 0.06773682683706284, - 0.028575213626027107, - -0.06859086453914642, - -0.018293052911758423, - -0.0930774137377739, - 0.12601858377456665, - 0.019773390144109726, - 0.0027833152562379837, - -0.043309565633535385, - -0.0038204602897167206, - 0.08016970753669739, - -0.026515642181038857, - -0.05711697041988373, - -0.013333331793546677, - 0.03941173851490021, - 0.01232369989156723, - 0.02178972214460373, - -0.018486149609088898, - -0.0008278060704469681, - 0.029108721762895584, - 0.032468684017658234, - 0.003423718735575676, - 0.07366481423377991, - 0.0882650762796402, - -0.034370917826890945, - 0.027483398094773293, - 0.041749030351638794, - -0.015110151842236519, - 0.035660263150930405, - -0.024566374719142914, - -0.002788074780255556, - 0.006025985814630985, - -0.0012370645999908447, - -0.00061781145632267, - -0.011827313341200352, - 0.0045961979776620865, - 0.05302602797746658, - -0.008314095437526703, - 0.005373794585466385, - -0.028439205139875412, - -0.06640344113111496, - -0.018115470185875893, - 0.020426370203495026, - 0.10739146918058395, - 0.06657235324382782, - 0.030314920470118523, - -0.02405921369791031, - 0.05070885270833969, - -0.004432052373886108, - -0.06371951103210449, - -0.014773405157029629, - 0.02326551079750061, - -0.0334271639585495, - 0.010177874937653542, - 0.0128205306828022, - -0.033079661428928375, - 0.10438427329063416, - -0.012929296121001244, - 0.017319563776254654, - 0.003089758800342679, - -0.05310531705617905, - 0.026461442932486534, - 0.06254327297210693, - -0.007300850469619036, - 0.05399668216705322, - 0.05127112194895744, - 0.07161993533372879, - 0.054211489856243134, - -0.04744037240743637, - 0.02229412831366062, - -0.01912686601281166, - 0.02145194821059704, - 0.027147062122821808, - 0.04858610779047012, - -0.014697854407131672, - 0.00962826982140541, - 0.11358815431594849, - -0.05141371488571167, - 0.045244377106428146, - 0.0693792775273323, - -0.013311095535755157, - 0.015627872198820114, - -0.010845188051462173, - 0.01296083815395832, - 0.0010310275247320533, - -0.018267296254634857, - 0.032023265957832336, - 0.02748061530292034, - 0.016742747277021408, - -0.058643072843551636, - 0.007779669016599655, - 0.014255264773964882, - -0.011432375758886337, - -0.032026465982198715, - 0.06818370521068573, - 0.0639820247888565, - -0.004529863595962524, - 0.03531370311975479, - -0.08471833169460297, - -0.041573092341423035, - 0.033655498176813126, - -0.029919598251581192, - -0.008899053558707237, - 0.0473807118833065, - 0.0228391382843256, - -0.07020162791013718, - -0.01822015270590782, - 0.0824078917503357, - -0.024868350476026535, - 0.05708181858062744, - 0.05647536367177963, - -0.04861126095056534, - 0.045512981712818146, - 0.007925758138298988, - 0.0029540322721004486, - -0.059834592044353485, - -0.08462066203355789, - -0.017674196511507034, - 0.02872186154127121, - -0.02420901134610176, - -0.03424072265625, - 0.00038669025525450706, - -0.036492180079221725, - 0.018306896090507507, - 0.003338536247611046, - 0.06238124147057533, - -0.05255705863237381, - -0.02036033384501934, - -0.07615116238594055, - 0.006157362833619118, - -0.01492508128285408, - -0.07994262129068375, - 0.07392583042383194, - 0.010979946702718735, - 0.03220098838210106, - 0.09884827584028244, - -0.0093125831335783, - -0.024086738005280495, - -0.02919691987335682, - -0.08508110046386719, - 0.03622109815478325, - 0.0648600310087204, - 0.014950856566429138, - 0.0005343131488189101, - 0.0695033073425293, - 0.07146354019641876, - -0.043819110840559006, - 0.06294053792953491, - 0.006943363696336746, - 0.04776650294661522, - -0.03678154945373535, - 0.02134629525244236, - 0.05925159901380539, - 0.021911825984716415, - -0.014504063874483109, - -0.05298515781760216, - -0.0887821614742279, - -0.03641137108206749, - -0.01660066470503807, - 0.0271434523165226, - 0.04009388014674187, - 0.0022525531239807606, - 0.029352184385061264, - -0.01085197739303112, - -0.014458512887358665, - -0.08562184125185013, - -0.02121656946837902, - 0.01790078915655613, - -0.03444860503077507, - -0.009848552756011486, - 0.010793544352054596, - 0.014673493802547455, - 0.032983336597681046, - 0.016017448157072067, - 0.057917576283216476, - 0.0021679699420928955, - -0.024285046383738518, - -0.06794047355651855, - -0.0030190758407115936, - 0.016725914552807808, - 0.023800421506166458, - -0.016430489718914032, - -0.08820229768753052, - 0.06737106293439865, - 0.04852858558297157, - 0.05988413840532303, - 0.04306931421160698, - 0.01472826860845089, - -0.02986275963485241, - 0.056540168821811676, - -0.05957406759262085, - 0.015854213386774063, - 0.008490528911352158, - -0.0008817892521619797, - 0.05486217141151428, - -0.005926603451371193, - 0.04668886959552765, - 0.013959752395749092, - -0.04538290947675705, - -0.0045194728299975395, - 0.02113373950123787, - -0.06746774166822433, - -0.06198063865303993, - -0.0027016643434762955, - -0.03714124858379364, - 0.014241979457437992, - 0.01456441730260849, - 0.03408201038837433, - 0.026708047837018967, - 0.05251551792025566, - 0.05870480462908745, - -0.029065687209367752 - ] - }, - "p245_135.wav": { - "name": "p245", - "embedding": [ - 0.023152079433202744, - 0.09741730242967606, - -0.0059401304461061954, - -0.005204157903790474, - 0.03634214773774147, - 0.03535531088709831, - -0.15766490995883942, - 0.09233208000659943, - -0.028851093724370003, - 0.1348705291748047, - -0.02905436046421528, - 0.08282940089702606, - -0.026874873787164688, - -0.10395929962396622, - -0.020957835018634796, - 0.04384145140647888, - -0.03349773585796356, - 0.005120584741234779, - 0.004561613313853741, - -0.04811861738562584, - 0.029772508889436722, - 0.018856395035982132, - 0.038218241184949875, - -0.07529878616333008, - -0.023433564230799675, - 0.09012305736541748, - -0.015199529007077217, - 0.020292077213525772, - -0.016277670860290527, - -0.05402466654777527, - -0.00019069109112024307, - 0.07217034697532654, - -0.017931345850229263, - -0.005795499309897423, - 0.0464404821395874, - 0.010099080391228199, - -0.019779304042458534, - -0.00823136791586876, - 0.0235019251704216, - 0.043510861694812775, - -0.04943716526031494, - 0.07658616453409195, - 0.011271169409155846, - 0.0025685979053378105, - 0.07787811756134033, - -0.024300359189510345, - -0.008092183619737625, - 0.02601260505616665, - -0.03273119404911995, - 0.08107335865497589, - 0.07730451971292496, - -0.035827118903398514, - -0.04903008043766022, - 0.0060870107263326645, - 0.07299045473337173, - -0.004551445133984089, - -0.11414709687232971, - -0.006249286234378815, - 0.04710996150970459, - 0.10727240145206451, - -0.03295926749706268, - -0.03396943211555481, - 0.03118891641497612, - 0.08713142573833466, - 0.01949862390756607, - 0.08233736455440521, - 0.0864095538854599, - 0.05616934224963188, - -0.002649313537403941, - -0.06313405930995941, - -0.0016063060611486435, - 0.06908921897411346, - 0.03489881008863449, - -0.008097958751022816, - 0.043651033192873, - -0.04006895795464516, - -0.03346656262874603, - -0.03596054017543793, - -0.030230427160859108, - -0.05994865298271179, - -0.055788472294807434, - -0.018438048660755157, - -0.004831886850297451, - 0.0500052385032177, - 0.005923507735133171, - 0.004992896690964699, - 0.07878495007753372, - -0.034897416830062866, - 0.027589812874794006, - 0.06915529072284698, - 0.05788910388946533, - 0.02284521982073784, - -0.055793389678001404, - -0.03556106984615326, - 0.01592733897268772, - -0.0023698201403021812, - 0.04201061278581619, - 0.03706873580813408, - 0.03596065938472748, - 0.02524399757385254, - 0.074647456407547, - 0.029606565833091736, - -0.02129148691892624, - -0.012736542150378227, - -0.07534854114055634, - 0.07479290664196014, - 0.11114946752786636, - -0.03819539397954941, - 0.01701013371348381, - -0.04315700754523277, - 0.001974867656826973, - 0.005336157977581024, - -0.08184857666492462, - -0.033932819962501526, - 0.030174821615219116, - 0.05284665524959564, - 0.017482154071331024, - 0.10176478326320648, - 0.03601876273751259, - 0.007964854128658772, - 0.06117773801088333, - -0.02712995745241642, - -0.06513582170009613, - -0.08050549775362015, - 0.0726812481880188, - -0.0772937461733818, - 0.08192472159862518, - 0.0410720556974411, - 0.053981244564056396, - -5.988357588648796e-05, - 0.07112900912761688, - 0.03771350905299187, - 0.002997546922415495, - -0.03868882730603218, - -0.011506887152791023, - 0.017934169620275497, - -0.02998996153473854, - 0.06013557314872742, - 0.0058275917544960976, - 0.006400484591722488, - 0.08703646063804626, - 0.010072679258883, - 0.018033944070339203, - -0.054202016443014145, - -0.012071235105395317, - 0.032916150987148285, - 0.009730007499456406, - -0.018693195655941963, - -0.052879441529512405, - -0.013050433248281479, - -0.06234798580408096, - -0.023303914815187454, - -0.08574208617210388, - 0.07188475131988525, - -0.007570648565888405, - 0.00465709064155817, - 0.10330045223236084, - 0.0035562007687985897, - 0.0039936089888215065, - -0.0093446159735322, - 0.0004977677017450333, - -0.024095721542835236, - 0.03508252277970314, - -0.12515079975128174, - -0.09142842143774033, - -0.01919148489832878, - 0.02442741021513939, - 0.04023757204413414, - 0.06503134965896606, - 0.0722869336605072, - -0.004145444370806217, - 0.013488314114511013, - 0.011189866811037064, - -0.008618982508778572, - -0.07647408545017242, - -0.07290400564670563, - -0.049331702291965485, - -0.07295039296150208, - -0.03239937126636505, - 0.07065114378929138, - -0.003519633784890175, - 0.061097707599401474, - -0.02508750930428505, - -0.045581988990306854, - -0.08626221120357513, - 0.04207466170191765, - 0.06388793885707855, - -0.04866380617022514, - 0.014923077076673508, - 0.06266094744205475, - -0.014633476734161377, - 0.023118089884519577, - 0.0540110319852829, - 0.06507842242717743, - -0.036700256168842316, - 0.01881781406700611, - -0.10154832899570465, - 0.03728842735290527, - 0.1263507604598999, - -0.0640719011425972, - -0.06301351636648178, - -0.028203463181853294, - -0.073729507625103, - 0.01431583147495985, - -0.058322980999946594, - -0.015351168811321259, - 0.011649432592093945, - -0.0032535537611693144, - -0.09025150537490845, - -0.08877411484718323, - 0.05652223527431488, - -0.05885806307196617, - 0.005997309461236, - -0.043803319334983826, - 0.032793596386909485, - 0.013186916708946228, - 0.06229151040315628, - -0.06326690316200256, - 0.03381779044866562, - 0.052496038377285004, - -0.005334106273949146, - 0.04825032502412796, - 0.03551916778087616, - 0.06365902721881866, - -0.06620834767818451, - -0.0168315302580595, - -0.06659018993377686, - 0.060722533613443375, - -0.07018409669399261, - 0.0692947655916214, - 0.0461626760661602, - -0.057385947555303574, - -0.04328979551792145, - 0.023377705365419388, - -0.007375683635473251, - 0.03373037651181221, - 0.03742073103785515, - 0.05114341527223587, - 0.019233204424381256, - -0.040658656507730484, - 0.05962540581822395, - 0.01966499537229538, - 0.02538778819143772, - -0.05764186009764671, - -0.027959484606981277, - -0.04696515575051308, - 0.033016059547662735, - 0.047041065990924835, - -0.07674629986286163, - 0.0011832164600491524, - -0.006663663312792778, - 0.01351076178252697, - 0.03883802145719528, - 0.07107052206993103, - 0.019237473607063293, - -0.0993230864405632 - ] - }, - "p245_039.wav": { - "name": "p245", - "embedding": [ - 0.03452495485544205, - 0.09113936126232147, - -0.02807021513581276, - 0.027674861252307892, - -0.06901799887418747, - 0.07104932516813278, - -0.1240689754486084, - 0.13344720005989075, - -0.05678536742925644, - 0.12918883562088013, - -0.04733916372060776, - 0.1164083257317543, - -0.0435982346534729, - -0.17250755429267883, - -0.019068442285060883, - 0.0685286745429039, - -0.06407567858695984, - -0.0567045658826828, - -0.05430130660533905, - -0.024232761934399605, - 0.02634439244866371, - 0.027563832700252533, - 0.021898195147514343, - 0.0037842821329832077, - 0.023540113121271133, - 0.07967697083950043, - -0.0024690390564501286, - 0.03802308812737465, - 0.006210951134562492, - -0.05959038436412811, - -0.038175068795681, - 0.07783909887075424, - -0.055609963834285736, - 0.004352572839707136, - 0.044309139251708984, - -0.006673365831375122, - 0.007752086967229843, - -0.05395379662513733, - -0.024816643446683884, - 0.010710205882787704, - -0.048644691705703735, - 0.0851868987083435, - 0.028173040598630905, - -0.015676124021410942, - 0.02468530274927616, - 0.01629478484392166, - -0.017444442957639694, - -0.04212478548288345, - -0.10894104838371277, - 0.16576528549194336, - 0.07792654633522034, - -0.011281299404799938, - -0.052508577704429626, - -0.07379334419965744, - 0.10837060213088989, - -0.01277498435229063, - -0.12587250769138336, - -0.05935867875814438, - 0.0760241448879242, - 0.1493900716304779, - -0.04268559068441391, - -0.028354642912745476, - 0.0199174452573061, - 0.11805108189582825, - 0.0691637396812439, - 0.08714838325977325, - 0.06688728928565979, - 0.11302471160888672, - -0.016877448186278343, - 0.0058128125965595245, - 0.07747972011566162, - 0.07227548956871033, - 0.05270903557538986, - 0.01096506230533123, - 0.03515718877315521, - -0.0074975392781198025, - -0.007881204597651958, - 0.0007107113488018513, - -0.0194461140781641, - -0.028660684823989868, - -0.005686155520379543, - 0.0169783066958189, - 0.012060223147273064, - 0.022798454388976097, - -0.002281412947922945, - 0.06908160448074341, - 0.039669353514909744, - -0.01327459141612053, - 0.06779712438583374, - 0.027073048055171967, - 0.003198810387402773, - 0.07844610512256622, - -0.08185259997844696, - -0.06457537412643433, - 0.03036617487668991, - 0.005941013339906931, - 0.029900038614869118, - 0.05931316316127777, - 0.03459172695875168, - -0.007403201423585415, - 0.1252930611371994, - 0.04622042179107666, - -0.001258991425856948, - 0.03196042776107788, - -0.09170105308294296, - 0.14176511764526367, - 0.06982070207595825, - -0.031273163855075836, - 0.03707767277956009, - -0.034169696271419525, - 0.06605812907218933, - 0.06151140481233597, - -0.12980085611343384, - -0.08624441921710968, - 0.02376975491642952, - 0.007056825328618288, - -0.03618696331977844, - 0.12434963881969452, - -0.0011281119659543037, - 0.03457741439342499, - 0.12813995778560638, - -0.09511110186576843, - -0.053252480924129486, - -0.001085975207388401, - 0.04598922282457352, - -0.07676871865987778, - 0.04736027866601944, - 0.05796707049012184, - -0.011520478874444962, - 0.029647361487150192, - 0.096123106777668, - -0.014565447345376015, - 0.0005589481443166733, - 0.027220789343118668, - -0.047706518322229385, - 0.015413366258144379, - -0.024416249245405197, - -0.008328471332788467, - 0.061628419905900955, - 0.03454606607556343, - 0.0511992946267128, - -0.02460273541510105, - -0.027242150157690048, - -0.1334373950958252, - 0.019158165901899338, - 0.034600451588630676, - 0.08311831951141357, - -0.011632947251200676, - -0.008430896326899529, - -0.036042604595422745, - -0.07167571783065796, - 0.008893825113773346, - -0.004112382419407368, - 0.08552367985248566, - -0.03929881751537323, - -0.011441257782280445, - 0.10401059687137604, - 0.032531190663576126, - 0.001271229819394648, - -0.05946318060159683, - -0.04089515283703804, - 0.01465566921979189, - 0.049633849412202835, - -0.07746708393096924, - -0.07782280445098877, - -0.003218310885131359, - 0.04652273654937744, - -0.012186771258711815, - 0.06431117653846741, - 0.04941924661397934, - 0.022992730140686035, - 0.019034449011087418, - -0.05408584326505661, - 0.02870144695043564, - -0.07829972356557846, - -0.06670744717121124, - -0.005202499683946371, - -0.02171381749212742, - -0.03455350920557976, - 0.07468392699956894, - 0.006643473170697689, - 0.05565433204174042, - -0.024039601907134056, - -0.07702488452196121, - -0.08659431338310242, - 0.059704288840293884, - 0.05510610342025757, - -0.010910090990364552, - 0.04358004778623581, - 0.0703972578048706, - -0.02365177683532238, - 0.03980516642332077, - 0.05007283017039299, - 0.11998628824949265, - -0.03361207991838455, - 0.010733604431152344, - -0.06827697157859802, - 0.07469190657138824, - 0.068604975938797, - -0.09395161271095276, - -0.05628751218318939, - -0.022331485524773598, - -0.05472203344106674, - 0.037674590945243835, - -0.03950042277574539, - 0.00900814589112997, - 0.0321948304772377, - 0.0036626129876822233, - -0.09853214770555496, - -0.09387937188148499, - 0.08493678271770477, - -0.08031099289655685, - -0.00446568476036191, - -0.07738938182592392, - 0.04300074279308319, - 0.08873571455478668, - 0.053508080542087555, - -0.03370709717273712, - 0.00267464155331254, - 0.05076988786458969, - -0.0256606787443161, - 0.027654945850372314, - 0.07335919141769409, - 0.04329894483089447, - -0.09374304860830307, - -0.013861390762031078, - -0.08887840807437897, - 0.04297950863838196, - -0.0341179184615612, - 0.16169285774230957, - 0.0035016387701034546, - -0.036780983209609985, - -0.08410822600126266, - 0.03573472797870636, - -0.03151992708444595, - 0.0613817535340786, - 0.032926950603723526, - 0.07025118172168732, - 0.05510089918971062, - -0.045611269772052765, - 0.13286525011062622, - 0.04163186624646187, - -0.04257578402757645, - -0.06335237622261047, - -0.04410955682396889, - -0.051591657102108, - 0.038163717836141586, - 0.020653005689382553, - -0.09552693367004395, - -0.021972300484776497, - 0.022965526208281517, - -0.008364957757294178, - 0.0680304765701294, - 0.13970616459846497, - 0.07336626946926117, - -0.09822914004325867 - ] - }, - "p245_250.wav": { - "name": "p245", - "embedding": [ - 0.062431447207927704, - 0.1055077388882637, - 0.0719587653875351, - -0.0017626192420721054, - 0.01648172177374363, - 0.011706388555467129, - -0.0732860416173935, - 0.07602834701538086, - 0.046242982149124146, - 0.08620595932006836, - -0.10527466237545013, - 0.07213811576366425, - -0.058775804936885834, - -0.10755819082260132, - -0.07280032336711884, - 0.0035202298313379288, - -0.07658751308917999, - -0.008769907057285309, - -0.011892813257873058, - -0.03454851359128952, - 0.017723968252539635, - 0.002853741869330406, - 0.07499523460865021, - -0.023043876513838768, - -0.025650162249803543, - 0.04952001944184303, - 0.01879957504570484, - 0.02826358750462532, - 0.034655049443244934, - -0.04409731179475784, - 0.059410445392131805, - 0.018725212663412094, - 0.019333552569150925, - 0.03222040832042694, - 0.04541291669011116, - 0.015718013048171997, - 0.01366178598254919, - -0.012472366914153099, - -0.015246894210577011, - 0.05869060009717941, - -0.011923854239284992, - 0.049618229269981384, - 0.017274901270866394, - -0.05264103040099144, - 0.05863826721906662, - 0.033894263207912445, - -0.037105221301317215, - 0.0021170377731323242, - -0.10726907849311829, - 0.1230846494436264, - 0.021869661286473274, - 0.02329801581799984, - -0.06757653504610062, - -0.004025541245937347, - 0.07061650604009628, - -0.042555369436740875, - -0.08233536779880524, - 0.00034937169402837753, - 0.04897359758615494, - 0.05953141674399376, - -0.03580698370933533, - -0.05203752964735031, - -0.017815086990594864, - 0.045831747353076935, - 0.03294871747493744, - 0.012103233486413956, - 0.10486552119255066, - 0.08104012161493301, - -0.019803527742624283, - 0.029939714819192886, - 0.0404583178460598, - 0.016506722196936607, - 0.04867973178625107, - 0.009029091335833073, - 0.014505889266729355, - -0.03871307522058487, - -0.005139422602951527, - -0.00021542096510529518, - -0.004956761375069618, - -0.035853900015354156, - 0.015884365886449814, - -0.02970482036471367, - 0.012992695905268192, - 0.01892855390906334, - -0.031174639239907265, - 0.02334025874733925, - -0.0011029792949557304, - 0.021739188581705093, - 0.05173725634813309, - 0.043126001954078674, - 0.033411115407943726, - 0.04900289699435234, - -0.04000385105609894, - -0.09918032586574554, - -0.031840428709983826, - -0.05493808910250664, - 0.05054762214422226, - 0.022552907466888428, - 0.03326025605201721, - 0.010650456883013248, - 0.08386949449777603, - 0.036290764808654785, - -0.0348379984498024, - -0.014407012611627579, - -0.08405423164367676, - 0.040549520403146744, - 0.09424307942390442, - -0.010251492261886597, - -0.00920802727341652, - -0.011925606057047844, - 0.057332783937454224, - 0.05337955802679062, - -0.037124279886484146, - -0.023837216198444366, - 0.005821993574500084, - 0.05783270299434662, - 0.03503227233886719, - 0.07044202089309692, - -0.013608439825475216, - 0.02767532505095005, - 0.1217494085431099, - -0.03475397825241089, - 0.008493371307849884, - -0.020756468176841736, - -0.00910147838294506, - -0.03746757656335831, - 0.04849274456501007, - 0.017566323280334473, - 0.013705388642847538, - -0.015677576884627342, - 0.044619832187891006, - 0.017076361924409866, - -0.011637162417173386, - -0.0628896951675415, - -0.015701444819569588, - 0.04721507802605629, - -0.00780488969758153, - 0.014239276759326458, - 0.034589026123285294, - 0.080256886780262, - 0.027128536254167557, - 0.06867227703332901, - -0.05274093151092529, - -0.028290964663028717, - 0.028087947517633438, - 0.030750615522265434, - -0.004874279722571373, - -0.008929851464927197, - -0.07355612516403198, - -0.040170133113861084, - 0.040504783391952515, - 0.06173902004957199, - -0.023618973791599274, - 0.047443144023418427, - 0.012195669114589691, - 0.003977837041020393, - 0.09765516966581345, - -0.011126579716801643, - -0.01099430676549673, - -0.027726374566555023, - -0.06543842703104019, - -0.025217559188604355, - 0.017444688826799393, - -0.14914390444755554, - -0.04372129216790199, - -0.04174049198627472, - 0.014871444553136826, - 0.011410490609705448, - 0.020001566037535667, - 0.05797942355275154, - -0.033873897045850754, - 0.01121208444237709, - 0.012561148963868618, - -0.0008125659078359604, - -0.040627654641866684, - -0.09612931311130524, - 0.009742990136146545, - -0.02788529545068741, - 0.013036103919148445, - 0.04047970846295357, - -0.02767289988696575, - 0.03477858379483223, - -0.02697950042784214, - -0.07211016863584518, - -0.02981290966272354, - 0.07507242262363434, - 0.02910318598151207, - 0.007929733023047447, - 0.041007086634635925, - 0.043032798916101456, - -0.018553080037236214, - 0.08752802014350891, - -0.021110326051712036, - 0.06976930797100067, - -0.06684784591197968, - 0.011702246963977814, - -0.022627564147114754, - 0.013361742720007896, - 0.08069506287574768, - -0.039607301354408264, - -0.10544412583112717, - -0.05867569148540497, - -0.03933628648519516, - 0.029441125690937042, - -0.015022898092865944, - -0.03169183060526848, - 0.019883954897522926, - -0.012003048323094845, - -0.0503416582942009, - -0.0827881395816803, - 0.014340793713927269, - 0.0034641996026039124, - 0.011428428813815117, - -0.06133219599723816, - 0.02851206809282303, - 0.006955187767744064, - 0.00915826391428709, - -0.012972543947398663, - 0.05632566660642624, - -0.025707431137561798, - -0.020661504939198494, - -0.0511556938290596, - -0.02719610556960106, - 0.04003056883811951, - 0.0014334768056869507, - -0.040297575294971466, - -0.05317388474941254, - 0.03939535841345787, - -0.008402019739151001, - 0.06413179636001587, - 0.02613222599029541, - -0.0028604064136743546, - 0.014601640403270721, - -0.005364725366234779, - -0.06329908967018127, - 0.038015615195035934, - 0.03844130039215088, - 0.0024194493889808655, - -0.00031972676515579224, - -0.042167793959379196, - 0.08011392503976822, - 0.03018803335726261, - -0.01578505150973797, - -0.05181126669049263, - -0.01699543185532093, - -0.0622689351439476, - -0.062031641602516174, - 0.00442867074161768, - -0.04469887539744377, - 0.005384992808103561, - -0.01816532388329506, - 0.029129192233085632, - 0.02449989877641201, - 0.0841723084449768, - 0.008989982306957245, - -0.01770438626408577 - ] - }, - "p245_395.wav": { - "name": "p245", - "embedding": [ - 0.06550323963165283, - 0.08433538675308228, - -0.01784982718527317, - 0.042128533124923706, - -0.0611109584569931, - 0.0825430303812027, - -0.11566765606403351, - 0.12361620366573334, - -0.048154883086681366, - 0.13537082076072693, - -0.07359838485717773, - 0.1323944330215454, - -0.023047588765621185, - -0.16341546177864075, - -0.04204190894961357, - 0.05769350379705429, - -0.045354656875133514, - -0.024428818374872208, - -0.05983767658472061, - -0.005813024938106537, - 0.030469555407762527, - 0.015851859003305435, - 0.04962851107120514, - 0.010186433792114258, - 0.019705165177583694, - 0.06448869407176971, - 0.010008448734879494, - 0.07087679952383041, - 0.04192063957452774, - -0.06828481703996658, - -0.044956106692552567, - 0.10697366297245026, - -0.041706833988428116, - 0.015813250094652176, - 0.05696561187505722, - -0.00443008728325367, - 0.005681009031832218, - -0.06760845333337784, - -0.019102338701486588, - -0.0051755537278950214, - -0.042273592203855515, - 0.07852160185575485, - 0.019778680056333542, - -0.02376950904726982, - 0.04094938561320305, - 0.016479993239045143, - -0.028815045952796936, - -0.04552776366472244, - -0.10375819355249405, - 0.1447528898715973, - 0.06393130123615265, - -0.011723598465323448, - -0.06754104793071747, - -0.05448810011148453, - 0.09959813952445984, - -0.029199954122304916, - -0.11930166929960251, - -0.055169977247714996, - 0.07341191172599792, - 0.15536415576934814, - -0.04089302942156792, - -0.023522716015577316, - 0.01840304583311081, - 0.12300778925418854, - 0.08684463798999786, - 0.09674455225467682, - 0.08758467435836792, - 0.12548743188381195, - -0.006790135521441698, - 0.042646609246730804, - 0.0560179203748703, - 0.06942833214998245, - 0.061708252876996994, - 0.013477151282131672, - 0.03933752700686455, - -0.008483430370688438, - 0.001742625143378973, - -0.0003776503726840019, - -0.03048553504049778, - -0.013693335466086864, - -0.004844842478632927, - 0.011782709509134293, - 0.012974073179066181, - 0.015144234523177147, - -0.0349220335483551, - 0.07906190305948257, - 0.02308282069861889, - -0.020901208743453026, - 0.050234150141477585, - 0.036390677094459534, - 0.0014946670271456242, - 0.06121912971138954, - -0.07839523255825043, - -0.09944514185190201, - 0.022250216454267502, - -0.0006318851956166327, - 0.02032862976193428, - 0.052526310086250305, - 0.031497515738010406, - -0.0024404043797403574, - 0.11751715838909149, - 0.061954744160175323, - -0.019176315516233444, - 0.055060286074876785, - -0.07769570499658585, - 0.14618411660194397, - 0.07447339594364166, - -0.021978769451379776, - 0.036761581897735596, - -0.037156060338020325, - 0.07684732973575592, - 0.06659726798534393, - -0.12881402671337128, - -0.07086119800806046, - 0.024343134835362434, - -0.021254505962133408, - -0.02728954888880253, - 0.09162120521068573, - -0.018867691978812218, - 0.02837556228041649, - 0.10054180026054382, - -0.06760302186012268, - -0.046280235052108765, - -0.00885520875453949, - 0.03753401339054108, - -0.08088141679763794, - 0.051847539842128754, - 0.021052204072475433, - 0.009135914035141468, - -0.006809916812926531, - 0.11279579252004623, - -0.008204659447073936, - -0.023509299382567406, - 0.03740396350622177, - -0.0526740737259388, - 0.03347979113459587, - -0.024213820695877075, - -0.004802764393389225, - 0.059255875647068024, - 0.03875081241130829, - 0.0485798642039299, - -0.019528187811374664, - -0.011809159070253372, - -0.10885215550661087, - 0.01261910516768694, - 0.031799495220184326, - 0.079539455473423, - -0.0022320784628391266, - -0.0003851871006190777, - -0.04649035632610321, - -0.06041101738810539, - 0.03568731248378754, - -0.015645936131477356, - 0.07626651227474213, - -0.026368524879217148, - 0.004640602506697178, - 0.10662159323692322, - -0.006209053099155426, - 0.02273491397500038, - -0.05773773044347763, - -0.007855311036109924, - 0.028580427169799805, - 0.05584920197725296, - -0.06564788520336151, - -0.06538498401641846, - 0.00945715606212616, - 0.02500418946146965, - -0.02937411703169346, - 0.049371227622032166, - 0.04602263122797012, - 0.01210583746433258, - 0.03564991056919098, - -0.053790681064128876, - 0.003295939415693283, - -0.0892810970544815, - -0.04139140993356705, - -0.012519673444330692, - -0.027147313579916954, - -0.02612319402396679, - 0.06090090423822403, - 0.0270896814763546, - 0.04251787066459656, - -0.008985700085759163, - -0.09190566837787628, - -0.08594243228435516, - 0.06631132960319519, - 0.059366270899772644, - 0.005575481336563826, - 0.04892541468143463, - 0.05515887588262558, - -0.020950686186552048, - 0.054844826459884644, - 0.06025625020265579, - 0.08997799456119537, - -0.014691060408949852, - -0.0008571925573050976, - -0.07554928958415985, - 0.08299057185649872, - 0.08920322358608246, - -0.09265848994255066, - -0.08691748976707458, - -0.01644587144255638, - -0.06504520028829575, - 0.03762195259332657, - -0.039312612265348434, - -0.008922424167394638, - 0.07188019901514053, - -0.008827592246234417, - -0.0992414727807045, - -0.09651048481464386, - 0.11100850999355316, - -0.1005588248372078, - -0.009016851894557476, - -0.0759815126657486, - 0.03321519121527672, - 0.07887186855077744, - 0.024975284934043884, - -0.0414896085858345, - 0.004556160420179367, - 0.05652583763003349, - -0.054578110575675964, - -0.003086267039179802, - 0.04762229323387146, - 0.014138929545879364, - -0.11925549805164337, - -0.00040640681982040405, - -0.07136248052120209, - 0.04329359158873558, - -0.04628782719373703, - 0.15944702923297882, - -0.0057054003700613976, - -0.031560610979795456, - -0.06449881941080093, - 0.0418616458773613, - -0.039061058312654495, - 0.05671829730272293, - 0.052179187536239624, - 0.06839682161808014, - 0.026597080752253532, - -0.07664692401885986, - 0.13425201177597046, - 0.04492074251174927, - -0.047954022884368896, - -0.08672016859054565, - -0.04469480738043785, - -0.05823684483766556, - 0.030289176851511, - 0.027064893394708633, - -0.09275262802839279, - -0.013293991796672344, - 0.030065184459090233, - -0.03977680951356888, - 0.06271173059940338, - 0.1367710381746292, - 0.07483130693435669, - -0.07990959286689758 - ] - }, - "p245_006.wav": { - "name": "p245", - "embedding": [ - 0.032584819942712784, - 0.1049271896481514, - -0.002525875810533762, - 0.003385673277080059, - -0.05324282497167587, - 0.043377261608839035, - -0.13818272948265076, - 0.14049102365970612, - -0.03734908252954483, - 0.12935465574264526, - -0.08139845728874207, - 0.10115008056163788, - -0.0506473183631897, - -0.17288002371788025, - -0.03645024076104164, - 0.048998553305864334, - -0.03691449016332626, - -0.02941044420003891, - -0.020614400506019592, - -0.031054820865392685, - 0.03942759335041046, - 0.03691130131483078, - 0.022531339898705482, - 0.0038436129689216614, - 0.024111609905958176, - 0.06306054443120956, - 0.00833013467490673, - 0.044451747089624405, - 0.017286362126469612, - -0.01843874156475067, - -0.021356038749217987, - 0.10783866047859192, - -0.04226216301321983, - 0.013979869894683361, - 0.03725777566432953, - 0.0003412840887904167, - 0.002151644788682461, - -0.04941617697477341, - -0.005643906537443399, - 0.004004535265266895, - -0.04352103918790817, - 0.06729330867528915, - 0.030861902981996536, - 0.0014430790906772017, - 0.032290518283843994, - 0.03224336728453636, - -0.009899266064167023, - -0.0457160547375679, - -0.10391190648078918, - 0.16303008794784546, - 0.06934019178152084, - -0.013200843706727028, - -0.07165385037660599, - -0.05886688083410263, - 0.10377968102693558, - -0.0190423633903265, - -0.11089439690113068, - -0.04303240403532982, - 0.09793652594089508, - 0.14531023800373077, - -0.03524527698755264, - -0.043960895389318466, - 0.02097223699092865, - 0.13054785132408142, - 0.027608783915638924, - 0.07388577610254288, - 0.07486177980899811, - 0.10373018682003021, - -0.03144093230366707, - 0.0023356922902166843, - 0.04236556962132454, - 0.05065072700381279, - 0.022266868501901627, - -0.017793145030736923, - 0.013374044559895992, - -0.014765307307243347, - -0.007625909522175789, - 0.023213110864162445, - -0.030211906880140305, - -0.029227502644062042, - -0.026578618213534355, - 0.007347418926656246, - -0.020503085106611252, - 0.0052078524604439735, - -0.013212007470428944, - 0.052431799471378326, - 0.02425723522901535, - 0.0011300855549052358, - 0.09152035415172577, - 0.03403962776064873, - 0.0031800991855561733, - 0.05837097391486168, - -0.06789390742778778, - -0.05538655072450638, - 0.021903950721025467, - -0.0018652449361979961, - 0.02344564162194729, - 0.07710041105747223, - 0.02651391550898552, - -0.0161783155053854, - 0.12691165506839752, - 0.038947202265262604, - -0.01102367602288723, - 0.01403308566659689, - -0.10447870194911957, - 0.13535141944885254, - 0.07990939170122147, - -0.029910052195191383, - 0.03957931324839592, - -0.043194729834795, - 0.05208694189786911, - 0.05332353711128235, - -0.1209440603852272, - -0.06707784533500671, - 0.020525116473436356, - 0.0413086861371994, - -0.027878012508153915, - 0.11308136582374573, - -0.013566798530519009, - 0.023569602519273758, - 0.11197449266910553, - -0.07672980427742004, - -0.06516806781291962, - -0.019179027527570724, - 0.04320067912340164, - -0.07537756860256195, - 0.03865492716431618, - 0.07633932679891586, - -0.015267954207956791, - 0.028615208342671394, - 0.07544175535440445, - 3.3990945667028427e-06, - 0.017168525606393814, - 0.01147286593914032, - -0.05397850275039673, - 0.010506335645914078, - -0.024102624505758286, - -0.003356616012752056, - 0.030709538608789444, - 0.059255875647068024, - 0.05510294809937477, - 0.009372744709253311, - -0.04574961960315704, - -0.10505867004394531, - 0.002091650851070881, - 0.04249827563762665, - 0.06434054672718048, - -0.0158955380320549, - -0.02750999480485916, - -0.03876878321170807, - -0.05259860306978226, - -0.005092475097626448, - 0.002838969463482499, - 0.07858627289533615, - -0.03373764082789421, - -0.018163787201046944, - 0.10624653100967407, - 0.03449534997344017, - -0.009036562405526638, - -0.06582380086183548, - -0.032328926026821136, - 0.0018797609955072403, - 0.03176433965563774, - -0.08226799219846725, - -0.07240099459886551, - -0.00923194270581007, - 0.050441548228263855, - -0.014044500887393951, - 0.05435492843389511, - 0.0474538579583168, - 0.009035871364176273, - 0.02526284009218216, - -0.06518673896789551, - 0.028520630672574043, - -0.0887334942817688, - -0.06937338411808014, - 0.006807276047766209, - -0.0011302940547466278, - -0.018455656245350838, - 0.07386765629053116, - 0.008288794197142124, - 0.04644479975104332, - 0.001334281638264656, - -0.07985314726829529, - -0.07701501995325089, - 0.05552231892943382, - 0.07348356395959854, - -0.014634881168603897, - 0.06306709349155426, - 0.06387119740247726, - -0.05427989736199379, - 0.06010766327381134, - 0.05643840879201889, - 0.10310705006122589, - -0.043063800781965256, - 0.016745667904615402, - -0.0649903193116188, - 0.047075483947992325, - 0.06403174251317978, - -0.1044611856341362, - -0.07372820377349854, - -0.04192366823554039, - -0.05399514362215996, - 0.027581652626395226, - -0.013948271051049232, - 0.015401473268866539, - 0.01587090641260147, - -0.008906680159270763, - -0.10232412815093994, - -0.08734972029924393, - 0.05813188850879669, - -0.05929386615753174, - 0.0036743972450494766, - -0.07567810267210007, - 0.05526915192604065, - 0.09819579124450684, - 0.034856781363487244, - -0.011518271639943123, - -0.023225978016853333, - 0.02949949912726879, - -0.04173942655324936, - -0.005806375294923782, - 0.03298297896981239, - 0.04307696223258972, - -0.08543585985898972, - 0.010868465527892113, - -0.08774351328611374, - 0.06024782359600067, - -0.035674452781677246, - 0.1530730426311493, - 0.019577646628022194, - -0.05333314463496208, - -0.08791891485452652, - 0.026680879294872284, - -0.03147127479314804, - 0.0434952974319458, - 0.029414352029561996, - 0.04575791209936142, - 0.03115924447774887, - -0.055549658834934235, - 0.12637826800346375, - 0.03869802877306938, - -0.04950588196516037, - -0.06578905880451202, - -0.036461152136325836, - -0.041822731494903564, - 0.018039824441075325, - 0.008888096548616886, - -0.08852120488882065, - -0.04211621731519699, - 0.015565511770546436, - -0.015324335545301437, - 0.0796964168548584, - 0.12744811177253723, - 0.06640426069498062, - -0.11343657225370407 - ] - }, - "p245_117.wav": { - "name": "p245", - "embedding": [ - 0.0663791298866272, - 0.06481096893548965, - -0.03348292037844658, - 0.020564712584018707, - -0.03492648899555206, - 0.02512381039559841, - -0.09711866080760956, - 0.07552213221788406, - -0.040559589862823486, - 0.11849957704544067, - -0.08109736442565918, - 0.08790730684995651, - -0.010697794146835804, - -0.11700117588043213, - -0.06738083064556122, - 0.03288768231868744, - -0.04765726998448372, - -0.04647444561123848, - -0.04495936632156372, - -0.01139787770807743, - 0.03867693245410919, - 0.043678607791662216, - 0.020771410316228867, - -0.03289779648184776, - 0.04199159890413284, - 0.05658009275794029, - 0.029611488804221153, - 0.025073807686567307, - -0.006493689492344856, - 0.026495207101106644, - 0.0011126045137643814, - 0.11153659224510193, - -0.044191014021635056, - -0.013819792307913303, - 0.0311887226998806, - 0.02249486930668354, - 0.011648205108940601, - -0.07382804155349731, - 0.008307871408760548, - 0.0019037476740777493, - -0.024948447942733765, - 0.08163805305957794, - 0.04867237061262131, - -0.010434059426188469, - -0.005144375376403332, - 0.029986664652824402, - -0.005942861549556255, - -0.054276760667562485, - -0.11896392703056335, - 0.1747700273990631, - 0.02796965464949608, - 0.026809019967913628, - -0.09365317970514297, - -0.04876662790775299, - 0.0796499028801918, - 0.0098640788346529, - -0.04191647097468376, - -0.045978181064128876, - 0.04680206626653671, - 0.15397390723228455, - -0.01689627207815647, - -0.04848678410053253, - 0.014617616310715675, - 0.08847671747207642, - 0.03875938802957535, - 0.023299671709537506, - 0.08159701526165009, - 0.09758806228637695, - 0.007904723286628723, - 0.047025568783283234, - 0.0659836083650589, - 0.029545437544584274, - 0.023729432374238968, - -0.05017070844769478, - 0.026821738108992577, - -0.025956720113754272, - -0.026093963533639908, - 0.0038982192054390907, - -0.040285468101501465, - -0.06192207336425781, - -0.010583801195025444, - -0.0030246595852077007, - 0.02301739528775215, - 0.03665097802877426, - -0.06552837789058685, - 0.051581718027591705, - 0.036703675985336304, - -0.058151982724666595, - 0.08319983631372452, - 0.03686737269163132, - -0.01637602411210537, - -0.0024369806051254272, - -0.06684253364801407, - -0.07785780727863312, - 0.035711102187633514, - 0.00615624850615859, - 0.018981322646141052, - 0.05096926540136337, - 0.04271988570690155, - -0.023800117895007133, - 0.08233090490102768, - 0.023124366998672485, - 0.0006741330726072192, - -0.02275349199771881, - -0.08901208639144897, - 0.12537899613380432, - 0.11221356689929962, - -0.01637592352926731, - -0.010132333263754845, - -0.02012024074792862, - 0.024066075682640076, - 0.06426465511322021, - -0.10625521093606949, - -0.08621283620595932, - 0.030181964859366417, - 0.00192217156291008, - 0.0046913279220461845, - 0.07177047431468964, - -0.01979185827076435, - 0.012640844099223614, - 0.07597804069519043, - -0.08043913543224335, - -0.04631512239575386, - -0.03861051797866821, - 0.014440439641475677, - -0.08531521260738373, - 0.020678933709859848, - 0.07579287886619568, - -0.01242291834205389, - -0.03175487369298935, - 0.06600604951381683, - 0.025848107412457466, - 0.004945406690239906, - -0.015682613477110863, - 0.03583322465419769, - 0.07717518508434296, - 0.002941790036857128, - -0.038786597549915314, - 0.02014279179275036, - 0.05632985010743141, - 0.051919858902692795, - 0.009324396960437298, - -0.002588793868198991, - -0.07343313843011856, - 0.031933434307575226, - 0.08379973471164703, - 0.021868597716093063, - -0.04236214607954025, - -0.04696473479270935, - -0.05884414166212082, - -0.0460367351770401, - 0.0138088408857584, - 0.017595849931240082, - 0.08983033150434494, - 0.030379775911569595, - 0.00941836554557085, - 0.1442602574825287, - -0.01569347269833088, - -0.009762893430888653, - -0.01568719372153282, - 0.0339643657207489, - 0.05143208056688309, - 0.032057058066129684, - -0.0357724130153656, - -0.07902616262435913, - 0.004774644039571285, - 0.010366776958107948, - -0.018539030104875565, - 0.029176995158195496, - 0.029292089864611626, - -0.020781368017196655, - 0.010427485220134258, - -0.06426107883453369, - 0.013449100777506828, - -0.08969840407371521, - 0.00946175865828991, - -0.001794168958440423, - -0.08096250891685486, - -0.03316441923379898, - 0.07327745854854584, - 0.023014485836029053, - 0.0393022745847702, - -0.027058064937591553, - -0.10035022348165512, - -0.023686770349740982, - 0.08339046686887741, - 0.0839746966958046, - -0.025258135050535202, - 0.015715466812253, - 0.023011572659015656, - 0.028393303975462914, - 0.011937202885746956, - 0.0633280873298645, - 0.0804753303527832, - -0.03716718405485153, - -0.06480783969163895, - -0.03089866042137146, - 0.116466224193573, - 0.021582720801234245, - -0.0926688015460968, - -0.04235338419675827, - -0.047869723290205, - -0.040671683847904205, - 0.00749615952372551, - 0.014579607173800468, - 0.04157961905002594, - 0.04385460168123245, - -0.04499632120132446, - -0.11614260077476501, - -0.10122857987880707, - 0.058299362659454346, - -0.04211875796318054, - -0.005418750457465649, - -0.05257604643702507, - 0.0265200212597847, - 0.0626673549413681, - 0.0114889619871974, - 0.01612227037549019, - -0.005144713446497917, - -0.03464069962501526, - -0.07651016861200333, - -0.03730890527367592, - -0.004086734727025032, - 0.03898791968822479, - -0.0624421052634716, - 0.003802548162639141, - -0.0599251314997673, - 0.08920934796333313, - -0.05726965144276619, - 0.12540869414806366, - -0.010254740715026855, - -0.036541931331157684, - -0.08108656108379364, - 0.008565537631511688, - -0.041284918785095215, - 0.07953342795372009, - 0.06964181363582611, - 0.017991025000810623, - -0.008446039631962776, - -0.07632865011692047, - 0.10225652903318405, - 0.07402639091014862, - -0.027663087472319603, - -0.07545515149831772, - -0.04524011164903641, - -0.02710394561290741, - 0.003935838118195534, - 0.01634923368692398, - -0.028507238253951073, - 0.014483869075775146, - 0.030218619853258133, - -0.030427830293774605, - 0.07724196463823318, - 0.09033051133155823, - 0.060144178569316864, - -0.06725859642028809 - ] - }, - "p245_414.wav": { - "name": "p245", - "embedding": [ - 0.05337275564670563, - 0.09347979724407196, - -0.01617208495736122, - 0.015344187617301941, - -0.051168859004974365, - 0.07525269687175751, - -0.12179407477378845, - 0.12432641535997391, - -0.06415523588657379, - 0.15049946308135986, - -0.07099460065364838, - 0.12227404117584229, - -0.02313445881009102, - -0.17240847647190094, - -0.04736506938934326, - 0.04944154620170593, - -0.0601639524102211, - -0.039453037083148956, - -0.032291024923324585, - 6.793421925976872e-05, - 0.05067278444766998, - 0.03623484447598457, - 0.021768562495708466, - 0.006948499940335751, - 0.00878700241446495, - 0.07093086838722229, - 0.014023074880242348, - 0.06032991409301758, - 0.028757669031620026, - -0.07819128036499023, - -0.03957583010196686, - 0.1095798909664154, - -0.04314263164997101, - 0.029746145009994507, - 0.060170628130435944, - -0.000363360159099102, - 0.007370705250650644, - -0.07157830893993378, - -0.016270935535430908, - -0.0039893025532364845, - -0.04488180950284004, - 0.07358165085315704, - 0.015919405966997147, - -0.012264054268598557, - 0.01863841712474823, - 0.02229408547282219, - -0.010928409174084663, - -0.05995403230190277, - -0.08643461018800735, - 0.1562034785747528, - 0.07088296115398407, - -0.004013930447399616, - -0.050174780189991, - -0.08669688552618027, - 0.10542869567871094, - -0.011490270495414734, - -0.12580139935016632, - -0.048519596457481384, - 0.07145947962999344, - 0.15937139093875885, - -0.03752167150378227, - -0.0384533628821373, - 0.024835262447595596, - 0.12317246198654175, - 0.044771235436201096, - 0.10647053271532059, - 0.08519617468118668, - 0.09169928729534149, - -0.001533685950562358, - 0.02733851782977581, - 0.06200683116912842, - 0.08383584022521973, - 0.059349097311496735, - -0.0019989125430583954, - 0.04737678915262222, - -0.0016305656172335148, - -0.022421574220061302, - 0.020158428698778152, - -0.016585052013397217, - -0.012505578808486462, - -0.017927024513483047, - 0.021225716918706894, - 0.0029016989283263683, - 0.020022213459014893, - -0.011623300611972809, - 0.061272792518138885, - 0.009784468449652195, - -0.015076527372002602, - 0.06223952770233154, - 0.033248208463191986, - 0.027849216014146805, - 0.06625443696975708, - -0.07395663857460022, - -0.10191988199949265, - 0.025953607633709908, - -0.0011344742961227894, - 0.02856616862118244, - 0.07920478284358978, - 0.03522225096821785, - -0.014241073280572891, - 0.10890447348356247, - 0.04155503958463669, - -0.0084445271641016, - 0.026931937783956528, - -0.09902231395244598, - 0.1268363893032074, - 0.0799713283777237, - -0.03023127093911171, - 0.028904562816023827, - -0.060109205543994904, - 0.09531669318675995, - 0.07547635585069656, - -0.14982913434505463, - -0.09231121838092804, - 0.033190034329891205, - 0.007038099691271782, - -0.02111329324543476, - 0.11351749300956726, - -0.025695431977510452, - 0.019240889698266983, - 0.1008530855178833, - -0.0826231837272644, - -0.0480121448636055, - -0.0257711261510849, - 0.037566471844911575, - -0.08659997582435608, - 0.06426386535167694, - 0.03095492161810398, - -0.009906553663313389, - -0.001334917964413762, - 0.09995832294225693, - -0.025347266346216202, - -0.00865009892731905, - 0.016087155789136887, - -0.05126236751675606, - 0.02221379242837429, - -0.043657850474119186, - 0.006328982301056385, - 0.03574098274111748, - 0.04346025735139847, - 0.04006488248705864, - -0.005997288040816784, - -0.04574074596166611, - -0.11877577006816864, - 0.016988495364785194, - 0.03338633477687836, - 0.06776638329029083, - -0.005708509124815464, - -0.025159288197755814, - -0.02828025631606579, - -0.0529685840010643, - 0.013637338764965534, - -0.01797289401292801, - 0.07487207651138306, - -0.005986368283629417, - 0.007802212610840797, - 0.0994187444448471, - 0.016678549349308014, - -0.00010740617290139198, - -0.05749409645795822, - -0.03445484861731529, - 0.024085022509098053, - 0.0630992203950882, - -0.07922924309968948, - -0.06572607159614563, - 0.010446312837302685, - 0.024683155119419098, - -0.01451587863266468, - 0.0391768142580986, - 0.05514409393072128, - 0.02439870312809944, - 0.04159264266490936, - -0.06749506294727325, - 0.01026029884815216, - -0.12275136262178421, - -0.07851161062717438, - -0.01657060533761978, - -0.02547772228717804, - -0.003994768485426903, - 0.07156360149383545, - 0.0017041168175637722, - 0.035028621554374695, - -0.01159695629030466, - -0.08217807114124298, - -0.08210548758506775, - 0.07249727100133896, - 0.08577492833137512, - 0.01932879537343979, - 0.04386300966143608, - 0.045057184994220734, - -0.01685880683362484, - 0.0473417304456234, - 0.044633276760578156, - 0.12211090326309204, - -0.019795356318354607, - 0.013241836801171303, - -0.0746978223323822, - 0.08316610753536224, - 0.07629567384719849, - -0.09628407657146454, - -0.07493922114372253, - -0.015265904366970062, - -0.059690605849027634, - 0.04075497016310692, - -0.02806091494858265, - 0.00484283734112978, - 0.026090744882822037, - -0.0063917869701981544, - -0.10699254274368286, - -0.07515783607959747, - 0.09153671562671661, - -0.07236147671937943, - -0.010375437326729298, - -0.09194009006023407, - 0.05121401324868202, - 0.09815976023674011, - 0.05290521681308746, - -0.03345044329762459, - 0.003943076357245445, - 0.058402158319950104, - -0.0485280379652977, - 0.00016099540516734123, - 0.04057348147034645, - 0.020463839173316956, - -0.09463279694318771, - 0.00874655693769455, - -0.08400268852710724, - 0.039982300251722336, - -0.0781797468662262, - 0.15764813125133514, - -0.020856384187936783, - -0.06966894865036011, - -0.08086109161376953, - 0.0453309565782547, - -0.021734872832894325, - 0.04313546419143677, - 0.04256168007850647, - 0.06295493990182877, - 0.041449107229709625, - -0.08462811261415482, - 0.12133316695690155, - 0.045901477336883545, - -0.0248493030667305, - -0.06361193209886551, - -0.048655495047569275, - -0.038715094327926636, - 0.03535463660955429, - 0.010105248540639877, - -0.08735272288322449, - -0.01854035258293152, - 0.02449534833431244, - -0.021589156240224838, - 0.06691836565732956, - 0.14419814944267273, - 0.05591727793216705, - -0.11574887484312057 - ] - }, - "p245_253.wav": { - "name": "p245", - "embedding": [ - 0.0659065991640091, - 0.07509010285139084, - -0.024440791457891464, - -0.001634875312447548, - -0.046231627464294434, - 0.03870411217212677, - -0.1354798674583435, - 0.14504340291023254, - -0.039977025240659714, - 0.09383848309516907, - -0.04805021360516548, - 0.10036615282297134, - 0.009969496168196201, - -0.11082163453102112, - -0.046134404838085175, - 0.023836283013224602, - 0.0014015557244420052, - -0.015952402725815773, - -0.028823979198932648, - -0.01151888445019722, - 0.015373526141047478, - 0.03339692950248718, - 0.009113047271966934, - -0.009018579497933388, - 0.037673816084861755, - 0.029065484181046486, - 0.005538268480449915, - 0.01837175339460373, - 0.007479529827833176, - 0.02990323305130005, - -0.0010585598647594452, - 0.08733303099870682, - -0.050202760845422745, - 0.010362047702074051, - 0.043523091822862625, - 0.011447603814303875, - -0.005951732397079468, - -0.0819530338048935, - -0.01541035994887352, - -0.0070488532073795795, - -0.029752040281891823, - 0.09017757326364517, - 0.05828443169593811, - -0.006793014705181122, - 0.007019433192908764, - 0.014472566545009613, - 0.01464794296771288, - -0.061176445335149765, - -0.10762913525104523, - 0.1486799418926239, - 0.004450784996151924, - 0.008131470531225204, - -0.12579701840877533, - -0.016540562734007835, - 0.0826941654086113, - -0.032750729471445084, - -0.03878742828965187, - -0.055116526782512665, - 0.03610720485448837, - 0.13918444514274597, - -0.015389349311590195, - -0.05884116515517235, - 0.005374635569751263, - 0.09946253150701523, - 0.05703935772180557, - 0.028374670073390007, - 0.1077100932598114, - 0.1067352443933487, - -0.030965689569711685, - 0.02396455779671669, - 0.03290452063083649, - 0.03955530375242233, - 0.011360063217580318, - -0.02434130758047104, - 0.012554807588458061, - -0.03345746174454689, - -0.006304372567683458, - 0.023870892822742462, - -0.022353515028953552, - -0.049800723791122437, - -0.02220963127911091, - 0.019474683329463005, - -0.004713356960564852, - 0.0714944452047348, - -0.06565125286579132, - 0.05690184235572815, - 0.040205713361501694, - -0.035322438925504684, - 0.07339352369308472, - 0.08051391690969467, - 0.006438813172280788, - 0.012984735891222954, - -0.07159963995218277, - -0.07156150043010712, - 0.02788781002163887, - -0.02782830037176609, - 0.05234832316637039, - 0.06279204785823822, - 0.021869642660021782, - 0.005398619454354048, - 0.08487403392791748, - 0.03819020837545395, - -0.006558696273714304, - -0.011617226526141167, - -0.06747996807098389, - 0.12636533379554749, - 0.09980346262454987, - -0.013211781159043312, - 0.020522916689515114, - -0.049001313745975494, - 0.010408591479063034, - 0.044483084231615067, - -0.0948638916015625, - -0.07751217484474182, - 0.067380890250206, - 0.05425296723842621, - 0.026540569961071014, - 0.09843991696834564, - 0.015075989998877048, - 0.01484285295009613, - 0.047278378158807755, - -0.07201935350894928, - -0.05516931414604187, - -0.008485788479447365, - 0.032912611961364746, - -0.05039115995168686, - 0.04347151517868042, - 0.061444345861673355, - 0.0006294646300375462, - -0.02945905737578869, - 0.06335999816656113, - 0.02476908639073372, - 0.01327902264893055, - -0.015673339366912842, - 0.03080238774418831, - 0.06649118661880493, - 0.025583066046237946, - -0.02487625926733017, - 0.02049708552658558, - 0.05804292485117912, - 0.05558866634964943, - 0.025322120636701584, - 0.0005338550545275211, - -0.09712747484445572, - 0.004549121484160423, - 0.08775191009044647, - 0.06214361637830734, - -0.059692010283470154, - -0.0601113960146904, - -0.03807923197746277, - -0.03510478138923645, - -0.01695621944963932, - 0.03143256902694702, - 0.06958773732185364, - -0.0020206328481435776, - 0.016987819224596024, - 0.11053489148616791, - -0.006412738934159279, - 0.007900618016719818, - -0.011927224695682526, - 0.04685390740633011, - 0.02254825457930565, - 0.046424709260463715, - -0.0289375688880682, - -0.0934915617108345, - -0.004640120547264814, - 0.033181458711624146, - -0.02525162324309349, - 0.02672378346323967, - 0.0471775084733963, - -0.026801731437444687, - 0.03799400478601456, - -0.08719084411859512, - 0.03613336756825447, - -0.11106973141431808, - -0.009208418428897858, - 0.0005084946751594543, - -0.029659219086170197, - -0.015466381795704365, - 0.07627661526203156, - 0.04467010125517845, - 0.07124413549900055, - -0.004158590454608202, - -0.09351237863302231, - -0.034465525299310684, - 0.048995740711688995, - 0.07400546967983246, - -0.04525791108608246, - 0.0006407536566257477, - 0.049952056258916855, - 0.012691473588347435, - 0.01874997466802597, - 0.08085097372531891, - 0.047892145812511444, - -0.0489029586315155, - -0.039329417049884796, - -0.044258613139390945, - 0.09503402560949326, - 0.04393851384520531, - -0.11533653736114502, - -0.0682753324508667, - -0.02465703897178173, - -0.037853043526411057, - -0.032204288989305496, - -0.016869917511940002, - 0.03891190141439438, - 0.0473678819835186, - -0.021637139841914177, - -0.12105533480644226, - -0.10460696369409561, - 0.047805506736040115, - -0.08263389021158218, - 0.029937192797660828, - -0.05965464189648628, - 0.01737012341618538, - 0.0810689851641655, - 0.01800205558538437, - -0.010326297953724861, - -0.04939088970422745, - -0.02670142985880375, - -0.051365356892347336, - -0.044225119054317474, - -0.006073169410228729, - 0.035165004432201385, - -0.0841970145702362, - 0.02438327670097351, - -0.05442404747009277, - 0.07993105798959732, - -0.03565894067287445, - 0.1460910439491272, - 0.020470960065722466, - -0.07599806040525436, - -0.09064380824565887, - -0.04182501882314682, - -0.03868559002876282, - 0.06587879359722137, - 0.032756395637989044, - 0.034168146550655365, - -1.4596618711948395e-05, - -0.05268435552716255, - 0.08482556790113449, - 0.09877606481313705, - -0.04556364566087723, - -0.0873718410730362, - -0.040023379027843475, - -0.015530819073319435, - 0.04508063197135925, - 0.01741029880940914, - -0.016096223145723343, - 0.0044369176030159, - 0.013603215105831623, - -0.04250704497098923, - 0.07414849102497101, - 0.10565780103206635, - 0.059978507459163666, - -0.11924143135547638 - ] - }, - "p245_109.wav": { - "name": "p245", - "embedding": [ - 0.05739546939730644, - 0.08613348007202148, - -0.006044930778443813, - 0.0352112278342247, - -0.06083273887634277, - 0.03468688577413559, - -0.14677467942237854, - 0.14680781960487366, - -0.021860700100660324, - 0.12390688061714172, - -0.06311961263418198, - 0.12757804989814758, - -0.022577140480279922, - -0.19756779074668884, - -0.008795039728283882, - 0.08517857640981674, - -0.032355278730392456, - -0.02848302572965622, - -0.025251664221286774, - -0.02377479337155819, - 0.02512427419424057, - 0.043954938650131226, - 0.060328077524900436, - 0.005702539347112179, - 0.031326524913311005, - 0.06979607045650482, - 0.002574204234406352, - 0.053611837327480316, - 0.0093069551512599, - -0.057945143431425095, - -0.035119932144880295, - 0.09045854210853577, - -0.03604564815759659, - -0.0005113724619150162, - 0.050318460911512375, - -0.011871270835399628, - 4.0381837607128546e-05, - -0.06830374896526337, - -0.0277443528175354, - -0.008360256440937519, - -0.040520697832107544, - 0.07810407876968384, - 0.0224294476211071, - -0.03035673499107361, - 0.060263119637966156, - 0.02106332592666149, - -0.033152010291814804, - -0.044141735881567, - -0.13355642557144165, - 0.1488659381866455, - 0.07038581371307373, - 0.02156125009059906, - -0.08391305059194565, - -0.07415102422237396, - 0.0971040353178978, - -0.030163947492837906, - -0.10386817157268524, - -0.04477739334106445, - 0.07305428385734558, - 0.16108199954032898, - -0.0229775533080101, - -0.034324757754802704, - 0.038250505924224854, - 0.11930715292692184, - 0.060493435710668564, - 0.09059705585241318, - 0.07020947337150574, - 0.1004265546798706, - -0.02927844226360321, - 0.016493503004312515, - 0.044844381511211395, - 0.07669737190008163, - 0.03551100939512253, - 0.006001103203743696, - 0.01228416245430708, - 0.007548165507614613, - -0.024507751688361168, - -0.008376196026802063, - -0.015511329285800457, - -0.017870772629976273, - -0.01723967306315899, - 0.008231448009610176, - 0.007556747179478407, - 0.011855248361825943, - -0.027854524552822113, - 0.062090061604976654, - 0.0341794528067112, - -0.004567167721688747, - 0.0724688395857811, - 0.019014395773410797, - -0.0008657457074150443, - 0.060691915452480316, - -0.07151425629854202, - -0.07954558730125427, - 0.020314980298280716, - 0.011950142681598663, - 0.022227173671126366, - 0.06036045774817467, - 0.023404493927955627, - -0.027063174173235893, - 0.1304457038640976, - 0.0630183145403862, - -0.0060635036788880825, - 0.03458651155233383, - -0.08411171287298203, - 0.11534597724676132, - 0.08304879069328308, - -0.014469115063548088, - 0.06840068101882935, - -0.041978105902671814, - 0.060439582914114, - 0.0727461725473404, - -0.1337536871433258, - -0.07041275501251221, - 0.015840495005249977, - 0.01233344804495573, - -0.013424286618828773, - 0.12322752177715302, - 0.005914837121963501, - 0.05673353001475334, - 0.117793969810009, - -0.09871840476989746, - -0.06949783861637115, - -0.0042399633675813675, - 0.0551203116774559, - -0.09464181959629059, - 0.06249776482582092, - 0.07012145966291428, - -0.02135149948298931, - 0.017793484032154083, - 0.07335391640663147, - -0.005597086623311043, - 0.011523909866809845, - 0.01644597016274929, - -0.058747705072164536, - 0.005872945301234722, - -0.04127098247408867, - -0.01425835769623518, - 0.0605582520365715, - 0.033361248672008514, - 0.04053114354610443, - -0.00681935204192996, - -0.03324224427342415, - -0.13778139650821686, - 0.003976250067353249, - 0.03389718756079674, - 0.08339881896972656, - -0.007886230945587158, - -0.030938230454921722, - -0.04448118805885315, - -0.0599418506026268, - 0.010695687495172024, - -0.009594394825398922, - 0.06870704889297485, - -0.02924153208732605, - 0.006847626995295286, - 0.08679477870464325, - 0.027226699516177177, - 0.0018853339133784175, - -0.04736558720469475, - -0.04945267736911774, - 0.016022196039557457, - 0.0454501137137413, - -0.08235573768615723, - -0.07084080576896667, - -0.0070708515122532845, - 0.04068135842680931, - -0.032321542501449585, - 0.04960598051548004, - 0.038274526596069336, - 0.022238314151763916, - 0.017885731533169746, - -0.05703619867563248, - 0.02338593453168869, - -0.09009230136871338, - -0.08075901865959167, - 0.002486435230821371, - 0.008224758319556713, - -0.029937084764242172, - 0.07189749926328659, - 0.030756091699004173, - 0.06540273129940033, - -0.02816474437713623, - -0.06498674303293228, - -0.09770011901855469, - 0.05295402556657791, - 0.05662689357995987, - 0.0015044284518808126, - 0.058535512536764145, - 0.04629106447100639, - -0.04560130834579468, - 0.061952006071805954, - 0.047713376581668854, - 0.09148293733596802, - -0.016202818602323532, - 0.012414633296430111, - -0.07333677262067795, - 0.07675021141767502, - 0.10897409170866013, - -0.08695634454488754, - -0.08112332224845886, - -0.036334481090307236, - -0.07327903062105179, - 0.057342421263456345, - -0.0145942447707057, - 0.0006856077234260738, - 0.04557185620069504, - -0.011704448610544205, - -0.1123899519443512, - -0.09791746735572815, - 0.08337440341711044, - -0.06064557284116745, - -0.004089634865522385, - -0.0628826916217804, - 0.04487769305706024, - 0.08675407618284225, - 0.02726869285106659, - -0.017857426777482033, - -0.031373947858810425, - 0.04116690158843994, - -0.042946889996528625, - 0.004726524464786053, - 0.06690191477537155, - 0.04441523179411888, - -0.10162967443466187, - 0.007017001509666443, - -0.07676421105861664, - 0.053607277572155, - -0.03338317945599556, - 0.15788988769054413, - 0.0119588328525424, - -0.04459541663527489, - -0.09059779345989227, - 0.026029985398054123, - -0.023152461275458336, - 0.05804430693387985, - 0.021228080615401268, - 0.05717020481824875, - 0.048421114683151245, - -0.06877723336219788, - 0.10947582125663757, - 0.04329445958137512, - -0.047781284898519516, - -0.06127448379993439, - -0.04130503535270691, - -0.055049192160367966, - 0.0326380580663681, - -0.005245511885732412, - -0.09330736100673676, - -0.028838014230132103, - 0.016722194850444794, - -0.010706339031457901, - 0.06182768568396568, - 0.1386440098285675, - 0.04118635505437851, - -0.11009286344051361 - ] - }, - "p245_312.wav": { - "name": "p245", - "embedding": [ - 0.015115632675588131, - 0.07223115861415863, - -0.0020533159840852022, - 0.04228286072611809, - -0.006371307652443647, - 0.04990001767873764, - -0.07020367681980133, - 0.0487297922372818, - -0.05339176952838898, - 0.15103980898857117, - -0.12234080582857132, - 0.08643540740013123, - -0.04453974962234497, - -0.14344476163387299, - -0.0251156073063612, - 0.02139274775981903, - -0.03654440864920616, - 0.03277100622653961, - -0.05478564649820328, - -0.03230539336800575, - 0.05921761319041252, - 0.07936245948076248, - 0.04668014496564865, - -0.052221983671188354, - 0.005212868098169565, - 0.06402292102575302, - -0.020825820043683052, - 0.036405764520168304, - 0.008070295676589012, - -0.13803991675376892, - -0.0482972115278244, - 0.11677175760269165, - -0.029670054093003273, - 0.02404903806746006, - -0.013602443039417267, - 0.017274048179388046, - -0.020915072411298752, - -0.018871530890464783, - -0.014337779954075813, - 0.0014606877230107784, - -0.052115097641944885, - 0.02135101892054081, - -0.02439035475254059, - -0.01282050646841526, - 0.04708550125360489, - -0.03330114856362343, - -0.03222230449318886, - -0.013768676668405533, - -0.07614147663116455, - 0.16634711623191833, - 0.053961075842380524, - -0.0026977118104696274, - -0.04983261972665787, - -0.08148597180843353, - 0.08884178847074509, - -0.004952655639499426, - -0.14231504499912262, - 0.011187897995114326, - 0.08110079169273376, - 0.13044947385787964, - -0.009287124499678612, - -0.04630175232887268, - 0.03958515077829361, - 0.05871117115020752, - -0.02902132272720337, - 0.0898125097155571, - 0.07278240472078323, - 0.041674237698316574, - 0.01308460533618927, - 0.020940300077199936, - 0.008747893385589123, - 0.08632219582796097, - 0.06605222821235657, - -0.0462956428527832, - 0.010121885687112808, - 0.007276811636984348, - -0.051074691116809845, - 0.028794409707188606, - -0.011513588950037956, - -0.029004141688346863, - 0.006922640837728977, - -0.049004796892404556, - -0.008345667272806168, - -0.06528280675411224, - -0.02787744626402855, - -0.0020188805647194386, - 0.03389494866132736, - -0.014308687299489975, - 0.07219575345516205, - 0.032453540712594986, - 0.01708252914249897, - 0.033069685101509094, - -0.030524233356118202, - -0.06059879809617996, - -0.002071019262075424, - 0.03162568435072899, - -0.0054235076531767845, - 0.06549955904483795, - 0.06157100945711136, - -0.028302693739533424, - 0.10277147591114044, - 0.011557220481336117, - 0.03959643468260765, - -0.018499260768294334, - -0.11130046099424362, - 0.06427522003650665, - 0.13470283150672913, - 0.003276452887803316, - 0.06343982368707657, - -0.017135923728346825, - 0.09468264132738113, - 0.0819682702422142, - -0.12226925790309906, - -0.05566508695483208, - -0.035344138741493225, - -0.017945565283298492, - 0.030227798968553543, - 0.08432887494564056, - -0.010283301584422588, - -0.020880941301584244, - 0.10020695626735687, - -0.13482952117919922, - -0.059246305376291275, - -0.03256281465291977, - 0.011748181656002998, - -0.11977741122245789, - 0.06418773531913757, - 0.04065250605344772, - -0.02072078175842762, - 0.014553282409906387, - 0.07624413073062897, - -0.05368376150727272, - 0.04327709600329399, - -0.024555768817663193, - -0.061816200613975525, - -0.041629400104284286, - -0.08573607355356216, - -0.0217968188226223, - 0.08240741491317749, - 0.0445537269115448, - 0.06262975931167603, - -0.019458848983049393, - -0.06651761382818222, - -0.10590438544750214, - 0.00962788239121437, - 0.05472379922866821, - -0.008921545930206776, - -0.010740948840975761, - 0.002315530553460121, - -0.03541753068566322, - -0.07608170062303543, - 0.07531290501356125, - -0.050457172095775604, - 0.06512399017810822, - 0.0033374689519405365, - -0.013107403181493282, - 0.12156622111797333, - 0.02566804364323616, - -0.04253965988755226, - -0.07956333458423615, - -0.04753100126981735, - 0.00883153360337019, - 0.009269867092370987, - -0.11197134852409363, - -0.06630025058984756, - -0.02749679610133171, - 0.004038706421852112, - 0.01835394650697708, - 0.0388292595744133, - 0.07381658256053925, - 0.01360377948731184, - 0.02391894906759262, - -0.04704713821411133, - 0.019652945920825005, - -0.08830897510051727, - -0.08141794055700302, - 0.007449087221175432, - -0.07520467042922974, - 0.03248056024312973, - 0.1157418042421341, - -0.032339610159397125, - -0.06660428643226624, - -0.05077730864286423, - -0.07081522792577744, - -0.0720144510269165, - 0.06092381104826927, - 0.04278179630637169, - 0.03951593488454819, - 0.03510010987520218, - 0.05421309918165207, - -0.048864975571632385, - 0.08979848772287369, - 0.041258305311203, - 0.14028732478618622, - -0.04146946221590042, - 0.03866475448012352, - -0.05740002170205116, - 0.05875694751739502, - 0.07405953109264374, - -0.024600287899374962, - -0.09972354769706726, - -0.039126377552747726, - -0.07141612470149994, - 0.10491704940795898, - -0.02136886492371559, - -0.04152430593967438, - 0.009420864284038544, - -0.04051225259900093, - -0.08547887951135635, - -0.04949510097503662, - 0.11076352000236511, - 0.016875144094228745, - -0.04979408159852028, - -0.07580237835645676, - 0.05460367724299431, - 0.02481137216091156, - 0.06275676190853119, - -0.015234648250043392, - 0.053780488669872284, - 0.05598363280296326, - -0.08687961101531982, - -0.004771187901496887, - 0.047404512763023376, - 0.004116476979106665, - -0.014873728156089783, - -0.009625840000808239, - -0.11008241772651672, - 0.058257095515728, - -0.06296917796134949, - 0.0923713743686676, - -0.026684515178203583, - -0.06853699684143066, - -0.06578568369150162, - 0.1008608266711235, - -0.01734708622097969, - 0.017783261835575104, - 0.08565252274274826, - 0.042901039123535156, - 0.08388683199882507, - -0.11167167127132416, - 0.06270655989646912, - 0.01114030834287405, - 0.021431084722280502, - -0.030852973461151123, - -0.03638945519924164, - -0.03772243857383728, - -0.006519352551549673, - -0.03680536150932312, - -0.09481385350227356, - 0.027113022282719612, - -0.012785693630576134, - 0.02386845275759697, - 0.02694052644073963, - 0.08384421467781067, - 0.009739955887198448, - -0.0888400673866272 - ] - }, - "p245_319.wav": { - "name": "p245", - "embedding": [ - 0.04419044405221939, - 0.09056366235017776, - -0.07513836026191711, - 0.048270877450704575, - -0.06125824153423309, - 0.02990613505244255, - -0.11891696602106094, - 0.1064797043800354, - 0.00932198017835617, - 0.11947310715913773, - -0.054237693548202515, - 0.11613690853118896, - -0.03302270919084549, - -0.13520264625549316, - 0.010527489706873894, - 0.025518450886011124, - 0.00029355473816394806, - -0.003963499329984188, - -0.0681152269244194, - -0.03505297377705574, - 0.03287924826145172, - 0.033635661005973816, - 0.03947008028626442, - -0.055014919489622116, - 0.0012865308672189713, - 0.06756991147994995, - -0.019457556307315826, - 0.00804508663713932, - -0.004007723182439804, - -0.03781922906637192, - -0.03979473561048508, - 0.09029709547758102, - -0.06172361597418785, - 0.002270035445690155, - 0.028337392956018448, - -0.016549136489629745, - -0.05441751703619957, - -0.04254625365138054, - 0.030088145285844803, - 0.0007468266412615776, - -0.044019412249326706, - 0.05973818153142929, - 0.02574634924530983, - -0.026936249807476997, - 0.046697117388248444, - -0.02530161291360855, - -0.04350415617227554, - -0.014194131828844547, - -0.07992391288280487, - 0.14254586398601532, - 0.07706809788942337, - 0.0025733564980328083, - -0.07799725979566574, - -0.012880346737802029, - 0.0860956460237503, - 0.0022530669812113047, - -0.10933447629213333, - -0.055939219892024994, - 0.03437776863574982, - 0.10422317683696747, - -0.012803660705685616, - -0.024806076660752296, - 0.035654909908771515, - 0.10237081348896027, - 0.07116690278053284, - 0.059178225696086884, - 0.09887969493865967, - 0.13833555579185486, - -0.025103075429797173, - 0.020181290805339813, - 0.03652666136622429, - 0.05671537667512894, - 0.0474429726600647, - -0.014889785088598728, - 0.033275529742240906, - -0.03486432880163193, - -0.002486539538949728, - -0.03660111129283905, - -0.020790424197912216, - -0.06735467910766602, - -0.004393347539007664, - -0.010831980966031551, - 0.006890885531902313, - 0.04052734375, - -0.05447879061102867, - 0.03268809616565704, - 0.10357707738876343, - -0.06316496431827545, - 0.052513524889945984, - 0.04743622615933418, - -0.000425887294113636, - 0.04073223099112511, - -0.0976434126496315, - -0.05778953433036804, - 0.037132732570171356, - -0.00030600622994825244, - 0.018300319090485573, - 0.06231734901666641, - 0.045891474932432175, - -0.005857191979885101, - 0.10039034485816956, - 0.04598373919725418, - -0.01883428730070591, - 0.016515430063009262, - -0.044203922152519226, - 0.1341182291507721, - 0.10516184568405151, - -0.03902968019247055, - 0.029400236904621124, - -0.04583703726530075, - 0.043536849319934845, - 0.029266290366649628, - -0.08817074447870255, - -0.05455995351076126, - 0.02221987210214138, - 0.005768245086073875, - -0.01587926596403122, - 0.11983644962310791, - 0.012560899369418621, - 0.04256709665060043, - 0.10850886255502701, - -0.08326700329780579, - -0.06865361332893372, - -0.03096238523721695, - 0.04412977024912834, - -0.06297232210636139, - 0.04253026098012924, - 0.06848850101232529, - 0.005618124268949032, - -0.007348539307713509, - 0.07355884462594986, - 0.004793113563209772, - 0.024968013167381287, - 0.004496053792536259, - -0.0257409680634737, - 0.042100951075553894, - 0.004556948319077492, - -0.015999233350157738, - 0.04011787101626396, - 0.019229650497436523, - 0.07722873985767365, - -0.027322782203555107, - 0.022300289943814278, - -0.09458456933498383, - 0.0307004377245903, - 0.055125877261161804, - 0.03879985213279724, - -0.03831888735294342, - -0.011866869404911995, - -0.029350044205784798, - -0.07556745409965515, - 0.02446538582444191, - -0.020898297429084778, - 0.0564456582069397, - -0.03940664976835251, - -0.01386672630906105, - 0.12792135775089264, - 0.017452819272875786, - 0.010838748887181282, - -0.03652416914701462, - -0.012017732486128807, - 0.009938303381204605, - 0.04889616370201111, - -0.09973563253879547, - -0.07184059172868729, - -0.03578529134392738, - 0.018186137080192566, - -0.014812970533967018, - 0.059717580676078796, - 0.08123335242271423, - 0.005960757844150066, - 0.018530843779444695, - -0.052632272243499756, - 0.013307937420904636, - -0.053198765963315964, - -0.0298524908721447, - -0.016808239743113518, - -0.05400118976831436, - -0.02831321954727173, - 0.08420003950595856, - 0.026544244959950447, - 0.03689193353056908, - -0.04465373605489731, - -0.05500436946749687, - -0.06921444833278656, - 0.038753002882003784, - 0.05172387510538101, - -0.056301530450582504, - 0.02814250811934471, - 0.06931400299072266, - -0.03347296640276909, - -0.0024425871670246124, - 0.07497180253267288, - 0.06604721397161484, - -0.04627583548426628, - -0.01683066040277481, - -0.08147799968719482, - 0.0840359628200531, - 0.10136692225933075, - -0.08423597365617752, - -0.07100728154182434, - -0.06724514067173004, - -0.06517535448074341, - 0.0012098010629415512, - -0.05655192583799362, - 0.0013812556862831116, - 0.056987032294273376, - -0.010655757039785385, - -0.09848500788211823, - -0.11914636939764023, - 0.08726778626441956, - -0.0534479022026062, - 0.015838682651519775, - -0.09185099601745605, - 0.036120302975177765, - 0.047316402196884155, - 0.015715980902314186, - -0.06873959302902222, - -0.002534897066652775, - 0.039400555193424225, - -0.006852324120700359, - 0.0453813336789608, - 0.061837416142225266, - 0.06594138592481613, - -0.09954193979501724, - -0.029201243072748184, - -0.052546679973602295, - 0.07438486814498901, - -0.06084191054105759, - 0.12268063426017761, - 0.03422657400369644, - -0.021232178434729576, - -0.08751991391181946, - 0.07305287569761276, - -0.01204090565443039, - 0.04914397373795509, - 0.05653859302401543, - 0.06471593677997589, - 0.015004511922597885, - -0.09018240869045258, - 0.10709134489297867, - 0.04311639815568924, - -0.020636938512325287, - -0.09339933842420578, - -0.03308381885290146, - -0.04181063547730446, - 0.05528061091899872, - 0.040337905287742615, - -0.06631528586149216, - 0.010500705800950527, - 0.023511139675974846, - -0.015705613419413567, - 0.05758930742740631, - 0.10737930238246918, - 0.08653219044208527, - -0.09123395383358002 - ] - }, - "p245_019.wav": { - "name": "p245", - "embedding": [ - 0.043645840138196945, - 0.09000486135482788, - -0.014766769483685493, - 0.024335574358701706, - -0.0678584948182106, - 0.05244502052664757, - -0.1327638179063797, - 0.14221879839897156, - -0.03032982163131237, - 0.13031697273254395, - -0.06544449180364609, - 0.12695704400539398, - -0.024368593469262123, - -0.1919749528169632, - -0.019306913018226624, - 0.06660457700490952, - -0.04614481329917908, - -0.0330330953001976, - -0.03133698180317879, - -0.031930774450302124, - 0.032004788517951965, - 0.03133589029312134, - 0.03268120810389519, - 0.007189165335148573, - 0.02343025617301464, - 0.0770869180560112, - 0.001116209547035396, - 0.04274427890777588, - 0.010093988850712776, - -0.04368862137198448, - -0.04230609908699989, - 0.09942979365587234, - -0.04613504558801651, - 0.010755178518593311, - 0.05125841498374939, - -0.019561579450964928, - -0.010448102839291096, - -0.05495961382985115, - -0.008619613945484161, - -0.0058892820961773396, - -0.040610186755657196, - 0.07927807420492172, - 0.03265079855918884, - -0.010018340311944485, - 0.04204524680972099, - 0.02684825100004673, - -0.02097545936703682, - -0.045395370572805405, - -0.11326402425765991, - 0.1502005159854889, - 0.08010874688625336, - -0.0087644774466753, - -0.0659211054444313, - -0.056693434715270996, - 0.09800469130277634, - -0.016896074637770653, - -0.11377488821744919, - -0.05146593973040581, - 0.0862141028046608, - 0.14185190200805664, - -0.03091595135629177, - -0.028108233585953712, - 0.021090393885970116, - 0.13312703371047974, - 0.04231356456875801, - 0.0971648097038269, - 0.06687565892934799, - 0.11238361895084381, - -0.02723124995827675, - 0.02333441935479641, - 0.05267775058746338, - 0.06660793721675873, - 0.041154082864522934, - -0.004256479907780886, - 0.017845699563622475, - -0.015710799023509026, - -0.007661410607397556, - 0.0005954798543825746, - -0.03233131021261215, - -0.0229560025036335, - -0.024913141503930092, - 0.000838741660118103, - 0.0021872781217098236, - 0.012059546075761318, - -0.012562994845211506, - 0.05847707390785217, - 0.04398197680711746, - -0.00904103647917509, - 0.0699722021818161, - 0.031126484274864197, - -0.004477318841964006, - 0.0674130842089653, - -0.0820566788315773, - -0.07817738503217697, - 0.030353788286447525, - 0.0009663403034210205, - 0.02671818993985653, - 0.07270333170890808, - 0.035691358149051666, - -0.014246786944568157, - 0.11493851244449615, - 0.05259993299841881, - -0.013765624724328518, - 0.02795824222266674, - -0.09309575706720352, - 0.13726358115673065, - 0.08433478325605392, - -0.01939130388200283, - 0.050675150007009506, - -0.05311408266425133, - 0.0750754252076149, - 0.06480636447668076, - -0.1301712691783905, - -0.05769859626889229, - 0.010755452327430248, - 0.010141793638467789, - -0.03680554777383804, - 0.11869124323129654, - -0.011384345591068268, - 0.04291548952460289, - 0.11379803717136383, - -0.0843738541007042, - -0.06104934215545654, - -0.017229463905096054, - 0.03901267051696777, - -0.09242506325244904, - 0.04979259893298149, - 0.06309882551431656, - -0.014141127467155457, - 0.030077943578362465, - 0.0837942585349083, - -0.004435176495462656, - 0.001128458185121417, - 0.030705690383911133, - -0.05405060574412346, - 0.009841765277087688, - -0.021983865648508072, - 0.005829300731420517, - 0.04252003878355026, - 0.03831961378455162, - 0.04597902297973633, - -0.00835330132395029, - -0.022460682317614555, - -0.11049767583608627, - 0.009778939187526703, - 0.03346436843276024, - 0.07855146378278732, - -0.009597251191735268, - -0.02321794629096985, - -0.03315868601202965, - -0.0723535344004631, - 0.005061472300440073, - -0.00934696290642023, - 0.06735693663358688, - -0.03835853189229965, - -0.0072474549524486065, - 0.09467984735965729, - 0.041568633168935776, - -0.001958973705768585, - -0.062190305441617966, - -0.038273438811302185, - 0.01835728995501995, - 0.048084139823913574, - -0.09380101412534714, - -0.0611860528588295, - -0.0055597214959561825, - 0.037320706993341446, - -0.03422966226935387, - 0.05231741815805435, - 0.04656871408224106, - 0.022631732746958733, - 0.02631610631942749, - -0.06933645159006119, - 0.017829904332756996, - -0.09372898191213608, - -0.07075932621955872, - -0.006447040941566229, - -0.009030413813889027, - -0.027176061645150185, - 0.06852483749389648, - 0.012436563149094582, - 0.05452544242143631, - -0.019362879917025566, - -0.0596567764878273, - -0.08112342655658722, - 0.05655614286661148, - 0.0631454661488533, - -0.007354711648076773, - 0.05686396360397339, - 0.0487113818526268, - -0.04727543145418167, - 0.04776395484805107, - 0.05420079827308655, - 0.11041741818189621, - -0.034343820065259933, - 0.02638939395546913, - -0.07589810341596603, - 0.07316949963569641, - 0.093514584004879, - -0.09648355841636658, - -0.07521901279687881, - -0.031918611377477646, - -0.05447818711400032, - 0.041970860213041306, - -0.031924474984407425, - -0.008569800294935703, - 0.027338897809386253, - -0.00042557166307233274, - -0.10086355358362198, - -0.09049829095602036, - 0.07902263104915619, - -0.07167840003967285, - 0.008777692914009094, - -0.08000784367322922, - 0.0513056218624115, - 0.09095417708158493, - 0.02948816679418087, - -0.0369478277862072, - -0.015693888068199158, - 0.051384251564741135, - -0.028523370623588562, - 0.010666112415492535, - 0.04596463218331337, - 0.047441937029361725, - -0.10504477471113205, - -0.0045044575817883015, - -0.06914548575878143, - 0.04738188907504082, - -0.03778764232993126, - 0.16144846379756927, - 0.016072994098067284, - -0.04059106856584549, - -0.07998155057430267, - 0.03733528032898903, - -0.016966860741376877, - 0.04525521770119667, - 0.03756619617342949, - 0.06081431731581688, - 0.03344818577170372, - -0.06778550893068314, - 0.13147157430648804, - 0.033681612461805344, - -0.04258108511567116, - -0.06240231916308403, - -0.03199373930692673, - -0.04285348206758499, - 0.03236526995897293, - 0.011768505908548832, - -0.10437305271625519, - -0.032722968608140945, - 0.02768459916114807, - -0.01433499064296484, - 0.07204347103834152, - 0.14273704588413239, - 0.07012146711349487, - -0.10024670511484146 - ] - }, - "p245_241.wav": { - "name": "p245", - "embedding": [ - 0.04855145141482353, - 0.10388829559087753, - 0.007621504832059145, - 0.014084719121456146, - -0.04301459342241287, - 0.06849325448274612, - -0.09801189601421356, - 0.10925611853599548, - -0.08141535520553589, - 0.13665910065174103, - -0.12346279621124268, - 0.09902921319007874, - -0.06005801260471344, - -0.16112415492534637, - -0.04238605499267578, - 0.04897911846637726, - -0.03166691213846207, - 0.008135289885103703, - -0.045518938452005386, - -0.02430955320596695, - 0.022337349131703377, - 0.03604353219270706, - 0.03823590651154518, - 0.01980532705783844, - 0.026693126186728477, - 0.06383757293224335, - -0.004623767454177141, - 0.05126023292541504, - 0.021751489490270615, - -0.05143981799483299, - -0.051273226737976074, - 0.11770674586296082, - -0.04369792342185974, - 0.013948287814855576, - 0.05998640134930611, - 0.021963942795991898, - 0.0004481850191950798, - -0.05225333198904991, - -0.021923648193478584, - -0.010574856773018837, - -0.06980741024017334, - 0.04147776961326599, - 0.003056139685213566, - -0.009921594522893429, - 0.05329664796590805, - 0.025850359350442886, - -0.011497590690851212, - -0.04397731274366379, - -0.09409703314304352, - 0.1313454806804657, - 0.04998315870761871, - -0.005225644912570715, - -0.061617471277713776, - -0.07721313089132309, - 0.11883231997489929, - -0.033477701246738434, - -0.12391061335802078, - -0.03029947727918625, - 0.0865338072180748, - 0.16138508915901184, - -0.04544484242796898, - -0.029190942645072937, - 0.010008024051785469, - 0.08031313121318817, - 0.02582111768424511, - 0.1161913275718689, - 0.0714988261461258, - 0.08074761927127838, - 0.005205424036830664, - 0.02900320664048195, - 0.06444621831178665, - 0.04472336918115616, - 0.053396329283714294, - -0.037300001829862595, - 0.005555342882871628, - 0.02497043088078499, - -0.03533528745174408, - 0.05489230901002884, - -0.014426913112401962, - -0.0039623393677175045, - -0.03082038089632988, - -0.0097047733142972, - -0.015025701373815536, - -0.0434880405664444, - -0.02828710898756981, - 0.05669764056801796, - 0.0005257711745798588, - 0.008027404546737671, - 0.07677888870239258, - 0.026675008237361908, - -0.04944892227649689, - 0.05094979703426361, - -0.03902903199195862, - -0.07506494224071503, - -0.014869222417473793, - 0.004144656006246805, - -0.026414018124341965, - 0.0847502052783966, - 0.030529940500855446, - -0.012968376278877258, - 0.1166490763425827, - 0.052746839821338654, - 0.0427168570458889, - 0.04046155512332916, - -0.10833506286144257, - 0.10884879529476166, - 0.08455890417098999, - -0.026933126151561737, - 0.048196226358413696, - -0.011005966924130917, - 0.0821273922920227, - 0.0976448506116867, - -0.14543811976909637, - -0.053050361573696136, - 0.017240280285477638, - -0.003042595461010933, - 0.003207179717719555, - 0.0640895813703537, - -0.030248042196035385, - -0.011854519136250019, - 0.11737500131130219, - -0.08714167773723602, - -0.061433304101228714, - -0.016499049961566925, - 0.036850713193416595, - -0.0701727420091629, - 0.040095001459121704, - 0.0403565987944603, - 0.0020230580121278763, - -0.0034932373091578484, - 0.09443716704845428, - -0.021341778337955475, - -0.012844682671129704, - 0.029157381504774094, - -0.05852624773979187, - 0.0026108077727258205, - -0.04634423553943634, - -0.002826808486133814, - 0.07767903804779053, - 0.06181219220161438, - 0.03926551714539528, - 0.008812297135591507, - -0.036281876266002655, - -0.09084829688072205, - -0.003346675308421254, - 0.06916650384664536, - 0.05068311095237732, - -0.0044388072565197945, - 0.0014686076901853085, - -0.05462687462568283, - -0.0681893527507782, - 0.04659188538789749, - -0.005526903551071882, - 0.10282546281814575, - -0.03730575367808342, - 0.009473313577473164, - 0.10287028551101685, - 0.014399701729416847, - -0.022871065884828568, - -0.09819097816944122, - -0.02461743727326393, - 0.007161572575569153, - 0.0411594919860363, - -0.06994098424911499, - -0.0859316885471344, - 0.00927063636481762, - 0.0360124297440052, - -0.0096918735653162, - 0.047297608107328415, - 0.03313833847641945, - 0.0044814180582761765, - 0.046500928699970245, - -0.06753655523061752, - 0.016161903738975525, - -0.10432673245668411, - -0.0543946772813797, - -0.020103605464100838, - -0.03209888935089111, - 0.007815122604370117, - 0.07899929583072662, - 0.009852278046309948, - 0.00455419160425663, - 0.02052672952413559, - -0.10859338194131851, - -0.07700277119874954, - 0.07874372601509094, - 0.06829214096069336, - 0.01762128807604313, - 0.05811459571123123, - 0.06048346310853958, - -0.060409173369407654, - 0.08008294552564621, - 0.07020724564790726, - 0.10097268223762512, - -0.019900325685739517, - 0.0370103120803833, - -0.050697922706604004, - 0.036122877150774, - 0.06127641350030899, - -0.10580562055110931, - -0.11345987021923065, - -0.046258002519607544, - -0.04944352060556412, - 0.08074247092008591, - -0.009374765679240227, - -0.0035515157505869865, - 0.008655051700770855, - -0.03376298397779465, - -0.06207156181335449, - -0.08288927376270294, - 0.09518016129732132, - -0.025089647620916367, - -0.0324341282248497, - -0.05632743984460831, - 0.03967411816120148, - 0.04602235555648804, - 0.03851163387298584, - -0.0002709056716412306, - 0.03235660493373871, - 0.04745863378047943, - -0.08346137404441833, - -0.03865830600261688, - 0.05321166664361954, - -0.010574307292699814, - -0.06656316667795181, - 0.023734666407108307, - -0.09398245811462402, - 0.11111139506101608, - -0.05355370044708252, - 0.1551147848367691, - -0.04079209640622139, - -0.05409376323223114, - -0.05981755256652832, - 0.03477563336491585, - -0.037898462265729904, - 0.019900977611541748, - 0.04998005926609039, - 0.05720070004463196, - 0.009731464087963104, - -0.042229704558849335, - 0.11460287123918533, - 0.009367861784994602, - -0.030984530225396156, - -0.03553812950849533, - -0.05675627291202545, - -0.05962741747498512, - -0.021136879920959473, - -0.0032997215166687965, - -0.10011956840753555, - 0.0004761507734656334, - -0.010803990997374058, - -0.024961348623037338, - 0.060372449457645416, - 0.13477203249931335, - 0.07770529389381409, - -0.1096356213092804 - ] - }, - "p245_306.wav": { - "name": "p245", - "embedding": [ - 0.05505622550845146, - 0.07680020481348038, - -0.03827314078807831, - 0.0035655181854963303, - -0.0046660639345645905, - 0.02073761634528637, - -0.1413261890411377, - 0.07939309626817703, - -0.03812088817358017, - 0.14609000086784363, - -0.04396982491016388, - 0.09468288719654083, - -0.029429864138364792, - -0.11848115921020508, - -0.009265345521271229, - 0.057256996631622314, - -0.0355813167989254, - -0.0283795353025198, - -0.0076742880046367645, - -0.028055639937520027, - 0.04498696327209473, - 0.04041751101613045, - 0.04749239981174469, - -0.03170397877693176, - -0.005378715228289366, - 0.07455624639987946, - -0.0028243588749319315, - 0.023833759129047394, - 0.016195468604564667, - -0.033213112503290176, - 0.007682809606194496, - 0.06728558242321014, - -0.0014248816296458244, - -0.01707622967660427, - 0.003660690039396286, - 0.019824368879199028, - -0.004316001199185848, - -0.0593959279358387, - 0.0025273840874433517, - 0.0374947153031826, - -0.040805961936712265, - 0.05585349723696709, - 0.018934044986963272, - -0.029842540621757507, - 0.03390195965766907, - -0.06957244127988815, - -0.05907613784074783, - -0.008028434589505196, - -0.06762120127677917, - 0.13579198718070984, - 0.10991869866847992, - 0.02149053104221821, - -0.04955786094069481, - 0.0034280698746442795, - 0.0963892936706543, - 0.01778365671634674, - -0.09388463199138641, - -0.049003083258867264, - 0.026032747700810432, - 0.13977527618408203, - -0.021188070997595787, - -0.02734021469950676, - 0.04864706099033356, - 0.09901722520589828, - 0.02095963805913925, - 0.049538541585206985, - 0.1066974550485611, - 0.047495778650045395, - 0.014780217781662941, - -0.013616404496133327, - 0.019388051703572273, - 0.08726206421852112, - 0.020648520439863205, - -0.010897047817707062, - 0.02282070927321911, - -0.013776706531643867, - -0.04380542039871216, - -0.01056300476193428, - -0.0001723114401102066, - -0.06448108702898026, - -0.06004903092980385, - -0.023561565205454826, - -0.01949315145611763, - 0.054675959050655365, - -0.0067515065893530846, - 0.0027969181537628174, - 0.026212245225906372, - -0.041123561561107635, - 0.035941608250141144, - 0.015969542786478996, - 0.023747731000185013, - 0.014893513172864914, - -0.033469509333372116, - -0.0790315568447113, - 0.014688857831060886, - 0.016097987070679665, - 0.021435314789414406, - 0.04335038363933563, - 0.033681608736515045, - 0.01696859858930111, - 0.10140206664800644, - 0.03156451880931854, - -0.00837996881455183, - -0.02197633683681488, - -0.05654747039079666, - 0.08613306283950806, - 0.11363258212804794, - -0.03464864194393158, - 0.048325322568416595, - -0.027570761740207672, - -0.010014321655035019, - 0.0037313923239707947, - -0.09995387494564056, - -0.03605522960424423, - 0.029343679547309875, - 0.05993777886033058, - 0.02685803920030594, - 0.09484286606311798, - 0.03450668230652809, - 0.03874657303094864, - 0.0922374352812767, - -0.04130696505308151, - -0.07843338698148727, - -0.05972140282392502, - 0.07574707269668579, - -0.060857005417346954, - 0.06701217591762543, - 0.05937100574374199, - 0.009569802321493626, - 0.0002467036247253418, - 0.06186249107122421, - 0.019481608644127846, - 0.014568346552550793, - -0.03743567690253258, - -0.023488711565732956, - 0.03462141752243042, - -0.0623919814825058, - 0.0265984907746315, - 0.046789415180683136, - 0.006928352639079094, - 0.06547141820192337, - 0.0300578810274601, - -0.0012788493186235428, - -0.09290700405836105, - 0.013414192944765091, - 0.036794938147068024, - 0.04122234135866165, - -0.024422885850071907, - -0.04641049727797508, - -0.006802916526794434, - -0.054350703954696655, - -0.030609797686338425, - -0.0559987835586071, - 0.0992480143904686, - -0.01778743416070938, - 0.03443723917007446, - 0.06636541336774826, - -0.03534723445773125, - -0.0029190946370363235, - -0.01694457232952118, - 0.015438850969076157, - 0.009172656573355198, - 0.028035113587975502, - -0.07191040366888046, - -0.08365357667207718, - 0.0023439358919858932, - 0.04300897568464279, - 0.02191540226340294, - 0.049554355442523956, - 0.05818035081028938, - -0.023233793675899506, - 0.013830053620040417, - -0.017325764521956444, - 0.017293429002165794, - -0.07358473539352417, - -0.06480465084314346, - -0.0010920651257038116, - -0.03592834994196892, - -0.024872202426195145, - 0.08201742172241211, - 0.011467477306723595, - 0.05391485244035721, - -0.01736217923462391, - -0.06846168637275696, - -0.08243231475353241, - 0.06161642074584961, - 0.07036758959293365, - -0.033649928867816925, - 0.00907411053776741, - 0.06846663355827332, - 0.01289813220500946, - 0.002310441806912422, - 0.026799112558364868, - 0.07719340175390244, - -0.03801887854933739, - -0.03133057430386543, - -0.08754429221153259, - 0.022657452151179314, - 0.10896364599466324, - -0.0877876877784729, - -0.04274103045463562, - -0.06856776773929596, - -0.09331691265106201, - 0.03670834004878998, - -0.03515349328517914, - 0.004988156724721193, - 0.030150409787893295, - -0.04532838612794876, - -0.11392181366682053, - -0.10930128395557404, - 0.06066618859767914, - -0.037151992321014404, - 0.006051860749721527, - -0.05155124142765999, - 0.025649290531873703, - 0.050248079001903534, - 0.04166022688150406, - -0.03138338401913643, - 0.027954040095210075, - 0.007608810439705849, - -0.028143342584371567, - 0.0008438541553914547, - 0.026732830330729485, - 0.05875341594219208, - -0.09967515617609024, - -0.010662459768354893, - -0.08705344796180725, - 0.06402252614498138, - -0.06523282825946808, - 0.08083129674196243, - 0.02737555280327797, - -0.01571253314614296, - -0.10060656070709229, - 0.014561232179403305, - -0.010295488871634007, - 0.05841793119907379, - 0.03223147988319397, - 0.03551070764660835, - 0.04109828919172287, - -0.07578560709953308, - 0.07033883780241013, - 0.058126144111156464, - 0.01752890646457672, - -0.08540873229503632, - 0.006016083061695099, - -0.027324464172124863, - 0.046412453055381775, - 0.005907483398914337, - -0.027537653222680092, - -0.004746068734675646, - -0.014799483120441437, - 0.003220837563276291, - 0.06860937178134918, - 0.06972348690032959, - 0.048717208206653595, - -0.10334914922714233 - ] - }, - "p245_027.wav": { - "name": "p245", - "embedding": [ - 0.04432281106710434, - 0.07354508340358734, - -0.03412673622369766, - 0.0028409529477357864, - -0.012658207677304745, - 0.05901127681136131, - -0.12379668653011322, - 0.08685243874788284, - 0.012447293847799301, - 0.13412760198116302, - -0.06889189779758453, - 0.11494535207748413, - 0.022990604862570763, - -0.15885275602340698, - -0.006521563045680523, - 0.004106161650270224, - 0.008960036560893059, - 0.0411091148853302, - -0.036406636238098145, - -0.02812749333679676, - 0.0601324662566185, - 0.05481727421283722, - 0.044593121856451035, - -0.14300663769245148, - 0.03986106812953949, - 0.05103269964456558, - 0.012283232063055038, - 0.052562467753887177, - -0.015370592474937439, - -0.10172130167484283, - -0.03452380746603012, - 0.10231205075979233, - -0.05644785612821579, - 0.01934194378554821, - 0.05006445199251175, - -0.019126635044813156, - -0.02801322564482689, - -0.042540453374385834, - 0.030695855617523193, - 0.031318336725234985, - 0.005516704171895981, - 0.053985387086868286, - 0.023677410557866096, - -0.03394247964024544, - 0.029108364135026932, - 0.04938003420829773, - 0.021068723872303963, - -0.055030401796102524, - -0.0659765899181366, - 0.16514599323272705, - 0.012818671762943268, - 0.016749534755945206, - -0.07091765105724335, - -0.05374474078416824, - 0.07389141619205475, - 0.012549187988042831, - -0.058447156101465225, - -0.027476154267787933, - 0.056489497423172, - 0.10836535692214966, - -0.02241826243698597, - -0.05815034359693527, - 0.05611545592546463, - 0.04972558468580246, - -0.012564528733491898, - 0.06321202218532562, - 0.1030239462852478, - 0.08244116604328156, - 0.029996566474437714, - 0.03186764940619469, - -0.0323331356048584, - 0.10459224879741669, - 0.03648272529244423, - -0.033128805458545685, - 0.0326327309012413, - -0.028120974078774452, - -0.04594683647155762, - -0.03663431853055954, - -0.05550771951675415, - -0.0330071821808815, - 0.03931658715009689, - -0.006884632632136345, - 0.0686824694275856, - 0.024757636711001396, - -0.06870334595441818, - 0.027374185621738434, - 0.040667325258255005, - -0.0534016378223896, - 0.046957019716501236, - -0.007710677571594715, - 0.02688753977417946, - 0.013953055255115032, - -0.1099095270037651, - -0.11291852593421936, - 0.04806957393884659, - 0.018868692219257355, - -0.025740426033735275, - 0.058151327073574066, - 0.07144999504089355, - -0.04021773487329483, - 0.09609010815620422, - 0.009181387722492218, - -0.038025110960006714, - -0.001317206653766334, - -0.040908198803663254, - 0.11304080486297607, - 0.13078133761882782, - 0.005507038906216621, - 0.03398223966360092, - -0.11903263628482819, - 0.035784296691417694, - 0.036333270370960236, - -0.14562994241714478, - -0.0747666209936142, - 0.0033839354291558266, - -0.01173822209239006, - 0.0062467013485729694, - 0.11940028518438339, - -0.003899088129401207, - 0.028578901663422585, - 0.10952045023441315, - -0.1148550808429718, - -0.053863491863012314, - -0.04510793089866638, - 0.03156639263033867, - -0.07044486701488495, - 0.06248483061790466, - 0.04448135197162628, - -0.026083804666996002, - 0.01805531047284603, - 0.044719040393829346, - -0.01635478250682354, - 0.03495458513498306, - -0.016607210040092468, - -0.014521969482302666, - 0.022298172116279602, - -0.05599301680922508, - -0.008513668552041054, - -0.0020260638557374477, - 0.04130125790834427, - 0.07170802354812622, - -0.010988626629114151, - -0.07091115415096283, - -0.10348059982061386, - 0.02258566953241825, - 0.009420241229236126, - 0.03773786500096321, - -0.03998532518744469, - -0.032974280416965485, - -0.03115672431886196, - -0.07251474261283875, - 0.04311061650514603, - -0.023966269567608833, - 0.06192421913146973, - 0.030083896592259407, - 0.023471448570489883, - 0.10188248008489609, - 0.02776740863919258, - -0.004157468676567078, - -0.034370824694633484, - -0.03946379944682121, - 0.0039813946932554245, - 0.004686253145337105, - -0.077348992228508, - -0.04909580573439598, - -0.03943309932947159, - -0.03568442538380623, - -0.03952997550368309, - 0.05051346868276596, - 0.04566514864563942, - 0.0454668328166008, - 0.026747507974505424, - -0.0385223850607872, - -0.0630970224738121, - -0.08967648446559906, - -0.04111894592642784, - -0.00871978234499693, - -0.026575561612844467, - -0.051508672535419464, - 0.12006650865077972, - 0.008227568119764328, - 0.03348005563020706, - -0.07317588478326797, - 0.0016684443689882755, - -0.07362757623195648, - 0.027828818187117577, - 0.04218640178442001, - -0.020466996356844902, - -0.002867426723241806, - -0.004060441628098488, - 0.00015130732208490372, - 0.053317341953516006, - 0.095311738550663, - 0.04253970831632614, - 0.013434167020022869, - -0.0034487536177039146, - -0.061610374599695206, - 0.15834152698516846, - 0.10514329373836517, - -0.01765006221830845, - -0.07048051059246063, - -0.036414600908756256, - -0.10194718092679977, - 0.02502007596194744, - -0.017176542431116104, - -0.010008294135332108, - 0.000814578088466078, - 0.018073352053761482, - -0.09646859765052795, - -0.05671139061450958, - 0.015663597732782364, - -0.04576176404953003, - -0.014507502317428589, - -0.08447213470935822, - 0.05495987460017204, - 0.09973976016044617, - 0.029841985553503036, - -0.0037116468884050846, - -0.031571075320243835, - 0.053076013922691345, - -0.05090910196304321, - 0.03330843150615692, - 0.01553352177143097, - 0.04024161398410797, - -0.06372494995594025, - 0.011975262314081192, - -0.03629833832383156, - -0.008213363587856293, - -0.06851102411746979, - 0.0992109403014183, - 0.04397306218743324, - -0.05417325720191002, - -0.05329791456460953, - 0.09340571612119675, - -0.02845717966556549, - 0.01837374083697796, - 0.03311600908637047, - 0.02748539298772812, - 0.04829017072916031, - -0.14807772636413574, - 0.07516683638095856, - 0.02214081585407257, - 0.0023267148062586784, - -0.09832902252674103, - -0.10687923431396484, - -0.024699702858924866, - 0.028222691267728806, - 0.02537519857287407, - -0.06494569778442383, - -0.003348737955093384, - 0.050109393894672394, - 0.03473294526338577, - 0.021052168682217598, - 0.11525900661945343, - 0.006066151428967714, - -0.08687369525432587 - ] - }, - "p245_077.wav": { - "name": "p245", - "embedding": [ - 0.0441247895359993, - 0.05577719584107399, - -0.011542562395334244, - 0.04647618532180786, - -0.07843305170536041, - 0.04447241127490997, - -0.12737514078617096, - 0.14008599519729614, - -0.022516822442412376, - 0.11242713034152985, - -0.05996832996606827, - 0.13259345293045044, - -0.02528795599937439, - -0.18848836421966553, - -0.00502127967774868, - 0.07134155929088593, - -0.014987419359385967, - -0.042251598089933395, - -0.008396918885409832, - -0.02066117525100708, - 0.030952034518122673, - 0.030579710379242897, - 0.05033896863460541, - 0.030778992921113968, - 0.014115611091256142, - 0.07981330156326294, - -0.013351555913686752, - 0.04463367164134979, - 0.019361531361937523, - -0.028901483863592148, - -0.0441368892788887, - 0.09508106112480164, - -0.06657519936561584, - 0.0026479996740818024, - 0.05398434400558472, - -0.017870793119072914, - -0.02787959761917591, - -0.05334862321615219, - -0.03318542614579201, - -0.021154779940843582, - -0.07629251480102539, - 0.07471948862075806, - 0.03834088519215584, - -0.01960926689207554, - 0.054473958909511566, - 0.008354767225682735, - -0.031763315200805664, - -0.019614068791270256, - -0.12774911522865295, - 0.11969154328107834, - 0.06087518483400345, - -0.0017305565997958183, - -0.07445700466632843, - -0.0444067120552063, - 0.10394944250583649, - -0.022765133529901505, - -0.11375965178012848, - -0.048930611461400986, - 0.09639698266983032, - 0.1404995620250702, - -0.03372683376073837, - -0.021637579426169395, - 0.02221793122589588, - 0.1013527512550354, - 0.08033356070518494, - 0.09617137908935547, - 0.07934974133968353, - 0.12718281149864197, - -0.026742536574602127, - 0.016393916681408882, - 0.053307823836803436, - 0.07378504425287247, - 0.037886109203100204, - -0.005526804365217686, - 0.0018383972346782684, - 0.02013028971850872, - 0.0002220624592155218, - 0.0023388895206153393, - -0.022234193980693817, - -0.00037703244015574455, - -0.021738335490226746, - -0.010839002206921577, - 0.010133093222975731, - 0.016255555674433708, - -0.02127884142100811, - 0.07280543446540833, - 0.05774432420730591, - 0.009844318963587284, - 0.06331487745046616, - 0.02046625316143036, - -0.03377727046608925, - 0.08063536137342453, - -0.09111381322145462, - -0.05468762665987015, - -0.0004921611398458481, - -0.009001150727272034, - 0.027706097811460495, - 0.09170880913734436, - 0.03438568115234375, - -0.009573924355208874, - 0.13051530718803406, - 0.046903930604457855, - -0.00993403047323227, - 0.04298553615808487, - -0.08616945147514343, - 0.1249568909406662, - 0.06969983875751495, - -0.02717544510960579, - 0.05156414955854416, - -0.05012320727109909, - 0.08062338083982468, - 0.061145517975091934, - -0.12330621480941772, - -0.030489381402730942, - 0.021639931946992874, - 0.00677353423088789, - -0.032268159091472626, - 0.1390179693698883, - -0.01703375019133091, - 0.041552312672138214, - 0.11843377351760864, - -0.08506986498832703, - -0.05398859083652496, - 0.0014515286311507225, - 0.03961411863565445, - -0.08837606012821198, - 0.058947350829839706, - 0.031523775309324265, - -0.005090508610010147, - 0.029098298400640488, - 0.0854685977101326, - -0.01350948866456747, - -0.010343389585614204, - 0.03508518636226654, - -0.06436306983232498, - 0.013971364125609398, - -0.020596493035554886, - 0.006497354246675968, - 0.07645373791456223, - 0.030720841139554977, - 0.06042849272489548, - -0.01582488603889942, - -0.008674650453031063, - -0.1221734881401062, - 0.012565107084810734, - 0.035887524485588074, - 0.09438872337341309, - -0.0019660682883113623, - -0.027055587619543076, - -0.052517496049404144, - -0.08269670605659485, - 0.026657959446310997, - 0.001751558156684041, - 0.07053229212760925, - -0.04909665882587433, - 0.0018528427463024855, - 0.06924028694629669, - 0.038046836853027344, - 0.0036381392274051905, - -0.06326187402009964, - -0.05350184440612793, - -0.010834218934178352, - 0.05925120413303375, - -0.09384602308273315, - -0.05921382084488869, - -0.014839387498795986, - 0.05338997393846512, - -0.03743450716137886, - 0.051080018281936646, - 0.04795766621828079, - 0.03266468644142151, - 0.01791839674115181, - -0.0691235139966011, - 0.011312424205243587, - -0.08719964325428009, - -0.07640030980110168, - -0.01496092975139618, - 0.0074958885088562965, - -0.013697894290089607, - 0.059496089816093445, - 0.02363206073641777, - 0.05525142699480057, - -0.005776542238891125, - -0.07624559104442596, - -0.10020535439252853, - 0.04826219007372856, - 0.03628809005022049, - -0.013998333364725113, - 0.06495166569948196, - 0.0707811713218689, - -0.08242375403642654, - 0.05237758159637451, - 0.045573752373456955, - 0.10469721257686615, - -0.04441332072019577, - 0.03467366099357605, - -0.0633363276720047, - 0.0810864269733429, - 0.10685169696807861, - -0.0902961939573288, - -0.08031240105628967, - -0.023051604628562927, - -0.0735018253326416, - 0.05149964615702629, - -0.030868660658597946, - -0.024761589244008064, - 0.030378814786672592, - 0.002915068995207548, - -0.10719775408506393, - -0.08636774122714996, - 0.07856257259845734, - -0.07141738384962082, - -0.0007749493233859539, - -0.09568405151367188, - 0.03428655490279198, - 0.08233478665351868, - 0.022525392472743988, - -0.02349892258644104, - -0.0033800352830439806, - 0.05736416205763817, - -0.02389426901936531, - 0.007860852405428886, - 0.0827043354511261, - 0.036795757710933685, - -0.10705377161502838, - -0.047763891518116, - -0.06690309196710587, - 0.049164410680532455, - -0.023161571472883224, - 0.15385277569293976, - 0.0024788815062493086, - -0.03624585270881653, - -0.04904076084494591, - 0.025826483964920044, - 0.0019155757036060095, - 0.04821204021573067, - 0.05015700310468674, - 0.07506665587425232, - 0.02887258306145668, - -0.04474882781505585, - 0.1433289647102356, - 0.04517758637666702, - -0.05305725708603859, - -0.056351616978645325, - -0.022155005484819412, - -0.05352121591567993, - 0.01626274362206459, - 0.02168426476418972, - -0.11227668076753616, - -0.020241057500243187, - 0.029854975640773773, - -0.029061123728752136, - 0.044770658016204834, - 0.14251279830932617, - 0.07589574158191681, - -0.09854022413492203 - ] - }, - "p245_364.wav": { - "name": "p245", - "embedding": [ - 0.07411766052246094, - 0.0688961073756218, - -0.03767406567931175, - -0.0035897730849683285, - -0.029766447842121124, - 0.046414099633693695, - -0.12934976816177368, - 0.09268532693386078, - -0.005761180073022842, - 0.14150846004486084, - -0.06534643471240997, - 0.1073131412267685, - 0.009341469034552574, - -0.10973008722066879, - -0.022096753120422363, - 0.019180428236722946, - -0.039482422173023224, - -0.018080715090036392, - -0.04646385833621025, - -0.03326559066772461, - 0.027837440371513367, - 0.05835944414138794, - 0.02847321890294552, - -0.03541101515293121, - 0.022809116169810295, - 0.047375187277793884, - -0.00468095950782299, - 0.011728998273611069, - -0.0037638982757925987, - -0.06544762849807739, - -0.001855323789641261, - 0.08075466006994247, - -0.05059591680765152, - 0.019316092133522034, - 0.009953207336366177, - 0.004052397795021534, - 0.00855876225978136, - -0.07630345970392227, - -0.009677673690021038, - 0.040510546416044235, - -0.010372968390583992, - 0.07524291425943375, - 0.022167598828673363, - -0.022396724671125412, - 0.00717608816921711, - -0.00957159511744976, - -0.016653750091791153, - -0.03913448378443718, - -0.08551868051290512, - 0.18275299668312073, - 0.048809558153152466, - 0.01193698775023222, - -0.08591070026159286, - -0.034239254891872406, - 0.060345228761434555, - -0.003848826512694359, - -0.06945644319057465, - -0.025525327771902084, - 0.02138989232480526, - 0.11611030995845795, - -0.01534538995474577, - -0.06660165637731552, - 0.037291429936885834, - 0.08991001546382904, - 0.030401840806007385, - 0.0201491080224514, - 0.11415170133113861, - 0.0930323451757431, - -0.03326226770877838, - 0.014700353145599365, - 0.03936295211315155, - 0.07029324024915695, - 0.08579345792531967, - -0.0018287412822246552, - 0.04666293412446976, - -0.029974348843097687, - -0.020235486328601837, - -0.01014566607773304, - -0.022014593705534935, - -0.056566379964351654, - -0.0003004016471095383, - -0.010959039442241192, - 0.018272504210472107, - 0.0851973295211792, - -0.04853484034538269, - 0.019574005156755447, - 0.03364041820168495, - -0.04355157911777496, - 0.05365624278783798, - 0.045190244913101196, - 0.03042224608361721, - 0.02210867404937744, - -0.07886255532503128, - -0.0850730836391449, - 0.053215377032756805, - 5.2145373047096655e-05, - 0.0519869439303875, - 0.05321744084358215, - 0.05672458931803703, - -0.013537104241549969, - 0.08900400251150131, - 0.02567974478006363, - -0.005181679967790842, - -0.04215504229068756, - -0.06359979510307312, - 0.11314573884010315, - 0.14001679420471191, - -0.037757281213998795, - 0.023854993283748627, - -0.042268212884664536, - 0.031940706074237823, - 0.027521274983882904, - -0.11223103106021881, - -0.07159793376922607, - 0.025317013263702393, - 0.027026234194636345, - 0.04232592508196831, - 0.09741935133934021, - 0.024838989600539207, - 0.04968748614192009, - 0.07410114258527756, - -0.06681782007217407, - -0.037675559520721436, - -0.025230515748262405, - 0.03447061777114868, - -0.07518871128559113, - 0.0433245524764061, - 0.05249509960412979, - 0.003272540867328644, - -0.02157735824584961, - 0.0655079334974289, - -0.008282921276986599, - 0.010799411684274673, - -0.04245069622993469, - 0.019343122839927673, - 0.0475752130150795, - 0.002618471859022975, - -0.0015741947572678328, - 0.022558771073818207, - 0.02955506555736065, - 0.044815391302108765, - 0.0234798863530159, - -0.04209362715482712, - -0.12220008671283722, - 0.03398098796606064, - 0.041929736733436584, - 0.03299722075462341, - -0.05535803362727165, - -0.03683823347091675, - -0.00916335266083479, - -0.048021018505096436, - 0.023520659655332565, - -0.005893264897167683, - 0.04973649978637695, - 0.02444392442703247, - -0.011596551164984703, - 0.11101164668798447, - 0.0012469416251406074, - -0.0016663861460983753, - -0.002089510438963771, - 0.005225991364568472, - 0.027256745845079422, - 0.05554088205099106, - -0.07215414196252823, - -0.08712362498044968, - -0.004855040460824966, - 0.005757532082498074, - 0.0021163932979106903, - 0.040705401450395584, - 0.06049233675003052, - -0.03540574014186859, - 0.028685539960861206, - -0.06474751234054565, - -0.003975156228989363, - -0.09975000470876694, - -0.0512579008936882, - 0.005521845072507858, - -0.05837303027510643, - -0.014604221098124981, - 0.09144848585128784, - 0.005041875876486301, - 0.05929539352655411, - -0.05762714892625809, - -0.05505233258008957, - -0.037216201424598694, - 0.049103111028671265, - 0.06742976605892181, - -0.0353429913520813, - -0.0027305083349347115, - 0.0564521849155426, - 0.04915950819849968, - 0.028110604733228683, - 0.06778980791568756, - 0.07989275455474854, - -0.05025125667452812, - -0.020636796951293945, - -0.05088840425014496, - 0.1061127632856369, - 0.0628167986869812, - -0.05226246640086174, - -0.06122283637523651, - -0.055083196610212326, - -0.0589204803109169, - 0.016531746834516525, - -0.02637522481381893, - 0.0182774867862463, - 0.04533546417951584, - -0.018756572157144547, - -0.0969420075416565, - -0.09481378644704819, - 0.0583159439265728, - -0.03491229563951492, - 0.008995480835437775, - -0.06785570830106735, - 0.04639941453933716, - 0.07237907499074936, - 0.048800449818372726, - -0.027813490480184555, - 0.011149127036333084, - -0.010462388396263123, - -0.04715214669704437, - -0.01963178999722004, - 0.0028442740440368652, - 0.03367045149207115, - -0.08749338239431381, - -0.01355995424091816, - -0.06922807544469833, - 0.04285108298063278, - -0.059916459023952484, - 0.10366028547286987, - 0.01412882935255766, - -0.058058008551597595, - -0.08771266788244247, - 0.02347324788570404, - -0.03683902323246002, - 0.04756538197398186, - 0.043209902942180634, - 0.028496388345956802, - 0.04044199734926224, - -0.09550120681524277, - 0.06856609880924225, - 0.0707521140575409, - -0.013329627923667431, - -0.08416861295700073, - -0.0413392037153244, - -0.0009588624234311283, - 0.04733605310320854, - 0.0095968097448349, - -0.022001352161169052, - 0.01775701902806759, - 0.008782084099948406, - 0.0021933193784207106, - 0.0537465438246727, - 0.09249182790517807, - 0.05076516792178154, - -0.1178692877292633 - ] - }, - "p245_205.wav": { - "name": "p245", - "embedding": [ - 0.03016308695077896, - 0.07631278038024902, - -0.02349473536014557, - -0.0017680339515209198, - -0.025959618389606476, - 0.011977539397776127, - -0.1266510784626007, - 0.07942116260528564, - -0.012677554972469807, - 0.1364721804857254, - -0.06258305162191391, - 0.0889732763171196, - -0.05844544619321823, - -0.09973613917827606, - 0.00487312488257885, - 0.04413086548447609, - -0.01881502754986286, - -0.005670476704835892, - 0.005553156137466431, - -0.07158921658992767, - 0.021017249673604965, - 0.0031952597200870514, - 0.028753286227583885, - -0.04739619791507721, - -0.008782098069787025, - 0.09371021389961243, - 0.001390613615512848, - -0.019207758828997612, - -0.01510784961283207, - -0.03508295863866806, - 0.011021770536899567, - 0.058934133499860764, - -0.022919263690710068, - -0.0034853527322411537, - 0.03721454739570618, - 0.02054639160633087, - -0.03435319662094116, - 0.0009646564722061157, - 0.049066949635744095, - 0.03440074995160103, - -0.06181098148226738, - 0.06955818831920624, - 0.007186093833297491, - -0.003993075340986252, - 0.057347480207681656, - -0.042310722172260284, - -0.04215339571237564, - 0.034727320075035095, - -0.04151586443185806, - 0.09577593207359314, - 0.06594061851501465, - 0.010294405743479729, - -0.06734541058540344, - 0.01236158236861229, - 0.07711176574230194, - 0.007514624390751123, - -0.11242041736841202, - -0.016460532322525978, - 0.03292901813983917, - 0.09196829050779343, - -0.031774237751960754, - -0.05448863282799721, - 0.00978437066078186, - 0.0871991366147995, - 0.003283141180872917, - 0.060162123292684555, - 0.08885753899812698, - 0.09054620563983917, - -0.00599433109164238, - -0.027453433722257614, - 0.040771447122097015, - 0.06526815891265869, - 0.06084730476140976, - -0.024752981960773468, - 0.03567638620734215, - -0.04636397585272789, - 0.0012313686311244965, - -0.025745250284671783, - -0.004358578473329544, - -0.08555863797664642, - -0.06419212371110916, - -0.041867781430482864, - 0.0004935902543365955, - 0.03392283245921135, - -0.0019047296373173594, - -0.015169690363109112, - 0.0805935189127922, - -0.04919591546058655, - 0.04117341339588165, - 0.04079952463507652, - -0.024259822443127632, - 0.006130870431661606, - -0.0655989721417427, - -0.019292734563350677, - 0.009497793391346931, - -0.019837111234664917, - 0.06371242552995682, - 0.04196896031498909, - 0.03817059099674225, - 0.044975943863391876, - 0.0781751498579979, - 0.041749581694602966, - 0.0076402341946959496, - -0.029130414128303528, - -0.062173351645469666, - 0.0958670824766159, - 0.11044518649578094, - -0.06733745336532593, - 0.027478892356157303, - -0.00026594940572977066, - 0.004652870818972588, - -0.0034995153546333313, - -0.08310652524232864, - -0.01802799291908741, - -0.013631366193294525, - 0.059266187250614166, - 0.011897288262844086, - 0.09876236319541931, - 0.016565734520554543, - 0.017642585560679436, - 0.10447601974010468, - -0.03063739836215973, - -0.06334168463945389, - -0.07251597195863724, - 0.03190169110894203, - -0.09228309988975525, - 0.06963847577571869, - 0.06185544282197952, - 0.04570194333791733, - 0.011232136748731136, - 0.06871529668569565, - 0.01743600331246853, - 0.009362057782709599, - -0.062454648315906525, - -0.0077316854149103165, - 0.009054852649569511, - -0.0016396455466747284, - 0.044532883912324905, - 0.05752849578857422, - -0.0030330857262015343, - 0.10861839354038239, - 0.037174634635448456, - 0.02606108784675598, - -0.0805550068616867, - 0.020083174109458923, - 0.03879685699939728, - 0.007034924812614918, - -0.05270201712846756, - -0.04865071922540665, - 0.01137634739279747, - -0.06903019547462463, - -0.005708023905754089, - -0.033123183995485306, - 0.073824942111969, - -0.007686281576752663, - -0.020624075084924698, - 0.11325747519731522, - 0.024462204426527023, - -0.019084304571151733, - -0.03392207622528076, - -0.02937910705804825, - -0.027688931673765182, - 0.048706650733947754, - -0.1823766827583313, - -0.07137907296419144, - -0.030675146728754044, - 0.0416785404086113, - 0.011940306052565575, - 0.024640271440148354, - 0.08288649469614029, - -0.003177657723426819, - 0.025145195424556732, - 0.032972194254398346, - 0.004632714670151472, - -0.0440162755548954, - -0.0829324722290039, - -0.023201609030365944, - -0.07680384814739227, - -0.035976164042949677, - 0.05989842861890793, - -0.032220836728811264, - 0.04643622040748596, - -0.03596806526184082, - -0.04324684664607048, - -0.0665208026766777, - 0.06019249185919762, - 0.013477716594934464, - -0.04814360290765762, - 0.0039572808891534805, - 0.07898157835006714, - -0.027035336941480637, - -0.005007045343518257, - 0.02664177678525448, - 0.09329436719417572, - -0.07667524367570877, - 0.020837122574448586, - -0.0740472599864006, - 0.038607027381658554, - 0.10655274987220764, - -0.04236876592040062, - -0.06561217457056046, - -0.09368140995502472, - -0.04921199381351471, - 0.059822387993335724, - -0.07126978784799576, - -0.031032122671604156, - -0.001142874825745821, - -0.04545274004340172, - -0.06689963489770889, - -0.0906432718038559, - 0.0516461580991745, - -0.014145022258162498, - 0.007073591463267803, - -0.06059178337454796, - 0.05127984285354614, - -0.008993417955935001, - 0.04388221353292465, - -0.06733091175556183, - 0.06072895973920822, - 0.020806273445487022, - -0.030553819611668587, - 0.025757934898138046, - 0.031326279044151306, - 0.06085589528083801, - -0.03650522977113724, - -0.07732366025447845, - -0.07856559753417969, - 0.05569041147828102, - -0.04994209483265877, - 0.05564780905842781, - 0.020791439339518547, - -0.03016388788819313, - -0.012631956487894058, - -0.016292493790388107, - -0.006613049656152725, - 0.023799734190106392, - 0.06291507184505463, - 0.06203335523605347, - 0.015896782279014587, - -0.029428161680698395, - 0.08116836845874786, - 0.03815999627113342, - 0.028297681361436844, - -0.04080859199166298, - 0.006520522758364677, - -0.0443902313709259, - 0.018002452328801155, - 0.0064173294231295586, - -0.10180249065160751, - 0.03926005959510803, - -0.016444198787212372, - 0.03178990259766579, - 0.0287665743380785, - 0.057476386427879333, - 0.031311824917793274, - -0.03543446585536003 - ] - }, - "p245_153.wav": { - "name": "p245", - "embedding": [ - 0.029908746480941772, - 0.08796428889036179, - 0.003561137244105339, - 0.05124139040708542, - -0.03838258981704712, - 0.0694885402917862, - -0.1072276160120964, - 0.11506807804107666, - -0.03839406371116638, - 0.09610925614833832, - -0.08132104575634003, - 0.1011568009853363, - -0.03140243515372276, - -0.16094990074634552, - -0.05393482372164726, - 0.053198784589767456, - -0.02203511819243431, - -0.016521615907549858, - 0.01955573260784149, - -0.0018976922146975994, - 0.03567659854888916, - 0.060260578989982605, - 0.06530128419399261, - 0.021815720945596695, - 0.034594371914863586, - 0.047837283462285995, - 0.009844763204455376, - 0.07774927467107773, - 0.05152718722820282, - -0.02773633413016796, - -0.049499064683914185, - 0.12236839532852173, - -0.034186042845249176, - 0.005283478647470474, - 0.04035300016403198, - 0.015342583879828453, - 0.022626454010605812, - -0.05843276157975197, - -0.02367490716278553, - -0.0004228993784636259, - -0.053719110786914825, - 0.06582271307706833, - 0.03062688186764717, - 0.006141499616205692, - 0.05435426905751228, - -0.01053429115563631, - -0.023255351930856705, - -0.027505073696374893, - -0.11757603287696838, - 0.1545579582452774, - 0.05283476412296295, - 0.011358948424458504, - -0.08650030195713043, - -0.07226473093032837, - 0.09286567568778992, - -0.012404659762978554, - -0.10434385389089584, - -0.004754845052957535, - 0.07416536659002304, - 0.1650507152080536, - 0.010440561920404434, - -0.029890703037381172, - 0.025686901062726974, - 0.11186371743679047, - 0.045836832374334335, - 0.07590942829847336, - 0.07507078349590302, - 0.08583184331655502, - 0.005289588123559952, - 0.011945978738367558, - 0.04197634011507034, - 0.057633113116025925, - -0.006659397855401039, - -0.022176772356033325, - -0.005409453064203262, - 0.02046557329595089, - -0.03861046954989433, - 0.042081087827682495, - -0.0004089409194421023, - -0.0010156872449442744, - -0.00868919026106596, - -0.0002444600686430931, - -0.018871985375881195, - 0.013513554818928242, - -0.028141943737864494, - 0.05924978852272034, - -0.015947844833135605, - 0.027160553261637688, - 0.08286624401807785, - 0.026302088052034378, - -0.014514127746224403, - 0.04845216125249863, - -0.040523711591959, - -0.06870316714048386, - -0.008588501252233982, - 0.01960325427353382, - 0.015888340771198273, - 0.08247237652540207, - 0.019546357914805412, - -0.03295070677995682, - 0.12452343106269836, - 0.0405028834939003, - 0.004306546412408352, - 0.03981367126107216, - -0.10950112342834473, - 0.0926700234413147, - 0.0770566314458847, - -0.006715069990605116, - 0.06003909930586815, - -0.023645147681236267, - 0.07512587308883667, - 0.06461478024721146, - -0.13270705938339233, - -0.051948510110378265, - 0.055488720536231995, - 0.043098319321870804, - 0.029987327754497528, - 0.10221464931964874, - -0.002652437426149845, - 0.009572223760187626, - 0.08839090168476105, - -0.08693386614322662, - -0.060796551406383514, - -0.028052741661667824, - 0.06288323551416397, - -0.056464701890945435, - 0.029760736972093582, - 0.04184230789542198, - -0.006167259067296982, - -0.029533741995692253, - 0.04234592989087105, - -0.004774926230311394, - 0.017861083149909973, - 0.04606383293867111, - -0.061881713569164276, - 0.02691880241036415, - -0.045809872448444366, - -0.0025958181358873844, - 0.06921854615211487, - 0.03920679911971092, - 0.045526109635829926, - 0.01668567769229412, - -0.044367674738168716, - -0.11068161576986313, - -0.022587129846215248, - 0.05972949415445328, - 0.055391937494277954, - -0.019681308418512344, - -0.05416606366634369, - -0.0694938525557518, - -0.05197073146700859, - 0.047747254371643066, - 0.02751024439930916, - 0.07250191271305084, - -0.024239996448159218, - -0.022324927151203156, - 0.08132641017436981, - -0.0012540584430098534, - -0.007914934307336807, - -0.04296570271253586, - -0.03436541184782982, - 0.002303579356521368, - 0.025939514860510826, - -0.06129169464111328, - -0.08254344761371613, - 0.009578917175531387, - 0.01595713384449482, - -0.02093738503754139, - 0.015819037333130836, - 0.04128260910511017, - 0.009775327518582344, - 0.033406831324100494, - -0.05089791119098663, - 0.008312804624438286, - -0.10598722100257874, - -0.057884979993104935, - -0.01282563991844654, - 0.02829064056277275, - -0.009662375785410404, - 0.0908101350069046, - 0.04490748420357704, - 0.03041825070977211, - 0.030597813427448273, - -0.07342524826526642, - -0.05376426875591278, - 0.06540121883153915, - 0.08210955560207367, - 0.027659712359309196, - 0.09065345674753189, - 0.06466289609670639, - -0.06027880311012268, - 0.07642999291419983, - 0.0599515363574028, - 0.07149791717529297, - -0.027665289118885994, - -0.00744996964931488, - -0.06514466553926468, - 0.0502924770116806, - 0.0699816346168518, - -0.10499098896980286, - -0.11024827510118484, - -0.016736045479774475, - -0.06558652222156525, - 0.05622667819261551, - -0.01895371451973915, - 0.014385553076863289, - 0.022288907319307327, - -0.03905046358704567, - -0.10988224297761917, - -0.10348936915397644, - 0.08278729766607285, - -0.03129652887582779, - -0.039153359830379486, - -0.055608995258808136, - 0.03957006335258484, - 0.07866915315389633, - 0.004229674115777016, - -0.013247305527329445, - -0.0019157640635967255, - 0.0330946147441864, - -0.06683085858821869, - -0.04622773081064224, - 0.04608287289738655, - -0.0011177631095051765, - -0.11169110238552094, - 0.025441113859415054, - -0.06304651498794556, - 0.10115350782871246, - -0.0571221262216568, - 0.14585107564926147, - -0.009756825864315033, - -0.05754952132701874, - -0.06882981956005096, - 0.04157806187868118, - -0.021346334367990494, - 0.022811686620116234, - 0.035449832677841187, - 0.039186086505651474, - 0.0056622447445988655, - -0.05191107094287872, - 0.10407206416130066, - 0.030057601630687714, - -0.057143434882164, - -0.06609752029180527, - -0.024134939536452293, - -0.026114612817764282, - 0.02671566978096962, - 0.01797613874077797, - -0.07374761998653412, - -0.01744576171040535, - 0.00899358931928873, - -0.02213093265891075, - 0.0421634316444397, - 0.1310834437608719, - 0.05119245499372482, - -0.12099143117666245 - ] - }, - "p245_413.wav": { - "name": "p245", - "embedding": [ - 0.05552748590707779, - 0.06643375009298325, - 0.0063137393444776535, - 0.038887862116098404, - -0.021131176501512527, - 0.08869626373052597, - -0.11887893080711365, - 0.11855585873126984, - -0.052547886967659, - 0.14150460064411163, - -0.07664511352777481, - 0.12353579699993134, - -0.008132260292768478, - -0.15871445834636688, - -0.057194918394088745, - 0.0658191367983818, - -0.03010125830769539, - -0.006774375215172768, - -0.026586201041936874, - 0.021808285266160965, - 0.04495798796415329, - 0.0243681613355875, - 0.06698594987392426, - -0.01693485863506794, - 0.027512365952134132, - 0.04701056331396103, - 0.032983992248773575, - 0.10896874219179153, - 0.05157843604683876, - -0.09362108260393143, - -0.020956801250576973, - 0.11279016733169556, - -0.04005863144993782, - 0.03653428703546524, - 0.0634993463754654, - 0.01574144884943962, - 0.018847458064556122, - -0.07978498935699463, - -0.0190176609903574, - -0.022713553160429, - -0.028643637895584106, - 0.06819503009319305, - 0.0020107771269977093, - -0.010499625466763973, - 0.02728862501680851, - 0.02273166924715042, - -0.025774050503969193, - -0.056974202394485474, - -0.10698744654655457, - 0.1389126181602478, - 0.03351801261305809, - 0.03023739904165268, - -0.079288549721241, - -0.09491343796253204, - 0.09026093035936356, - -0.019700828939676285, - -0.09688359498977661, - -0.0420842319726944, - 0.06795133650302887, - 0.18795260787010193, - -0.027427110821008682, - -0.02889133431017399, - 0.022119268774986267, - 0.10026641190052032, - 0.06310391426086426, - 0.09474997222423553, - 0.09602619707584381, - 0.09091298282146454, - 0.03454095125198364, - 0.044640809297561646, - 0.009785193018615246, - 0.09830987453460693, - 0.049372993409633636, - 0.03379545360803604, - 0.020351819694042206, - 0.008216971531510353, - -0.027445772662758827, - 0.005562667269259691, - -0.04314633458852768, - -0.011826267465949059, - -0.003884481033310294, - 0.01878754422068596, - 0.03315787389874458, - 0.025065675377845764, - -0.02491840161383152, - 0.07031452655792236, - -0.02640325203537941, - -0.03403852507472038, - 0.04275985062122345, - -0.004857080057263374, - -0.004863875452429056, - 0.038948945701122284, - -0.08327022939920425, - -0.12070327997207642, - -0.0023379367776215076, - 0.008535699918866158, - 0.011260807514190674, - 0.06192712485790253, - 0.027038482949137688, - -0.026114799082279205, - 0.11182981729507446, - 0.029974572360515594, - -0.019896410405635834, - 0.04478997737169266, - -0.08082740008831024, - 0.11399301886558533, - 0.0766785740852356, - 0.00101058732252568, - 0.03435847908258438, - -0.0655413419008255, - 0.06915264576673508, - 0.07939369231462479, - -0.15886840224266052, - -0.08740544319152832, - 0.024686507880687714, - -0.006875765044242144, - -0.0021982279140502214, - 0.0999336987733841, - -0.0126122385263443, - 0.027436088770627975, - 0.09133933484554291, - -0.08899252116680145, - -0.05001698434352875, - -0.007605938706547022, - 0.04212932661175728, - -0.06933107227087021, - 0.05320509523153305, - -0.0007477098843082786, - -0.002256180625408888, - -0.02303261309862137, - 0.08864404261112213, - -0.004568884614855051, - -0.014503145590424538, - 0.03994216024875641, - -0.06618905067443848, - 0.028465144336223602, - -0.06871537119150162, - -0.002379771787673235, - 0.04775664955377579, - 0.05490398406982422, - 0.06107613071799278, - -0.0026206476613879204, - -0.06289470195770264, - -0.11377197504043579, - -0.014492626301944256, - 0.0397581122815609, - 0.07092711329460144, - -0.00949084386229515, - -0.03062376007437706, - -0.050523847341537476, - -0.03790987282991409, - 0.050263628363609314, - -0.006090502254664898, - 0.08917921781539917, - 0.010893257334828377, - 0.027754753828048706, - 0.09274743497371674, - -0.03531840443611145, - 0.010466954670846462, - -0.05027315020561218, - -0.011201899498701096, - 0.01890147477388382, - 0.04252006858587265, - -0.051358383148908615, - -0.05104398354887962, - 0.030734572559595108, - 0.01547168754041195, - -0.038472339510917664, - 0.040820203721523285, - 0.031793635338544846, - 0.03252987563610077, - 0.04169648513197899, - -0.018572775647044182, - -0.04110284149646759, - -0.10871896147727966, - -0.05247989296913147, - -0.0007934365421533585, - -0.006549298297613859, - -0.025634920224547386, - 0.06595176458358765, - 0.038318850100040436, - 0.057129211723804474, - -0.0013733610976487398, - -0.06975972652435303, - -0.10146481543779373, - 0.06508670747280121, - 0.05807028338313103, - 0.02873513475060463, - 0.04772498086094856, - 0.03442928194999695, - -0.010035617277026176, - 0.06919601559638977, - 0.07061515003442764, - 0.07210110127925873, - -0.003882280085235834, - -0.01024559698998928, - -0.08845819532871246, - 0.10111252963542938, - 0.11110378801822662, - -0.07251887023448944, - -0.08826974034309387, - -0.004682965576648712, - -0.10096397250890732, - 0.05143251642584801, - -0.034302905201911926, - -0.012578219175338745, - 0.06033125892281532, - -0.030913520604372025, - -0.11542132496833801, - -0.07458457350730896, - 0.09471369534730911, - -0.09540969133377075, - -0.03394777700304985, - -0.056562505662441254, - 0.02710641361773014, - 0.08661946654319763, - 0.0342843160033226, - 0.013200325891375542, - -0.0048741428181529045, - 0.07087680697441101, - -0.0968417376279831, - -0.028699439018964767, - 0.05182900279760361, - -0.015251491218805313, - -0.10511530935764313, - 0.02316276915371418, - -0.0690665915608406, - 0.005918172188103199, - -0.0598493292927742, - 0.1405659019947052, - -0.026604073122143745, - -0.052839308977127075, - -0.06870703399181366, - 0.025515126064419746, - -0.04872877150774002, - 0.050505273044109344, - 0.033847369253635406, - 0.05386171489953995, - 0.03783049434423447, - -0.09490808099508286, - 0.14095443487167358, - 0.04343278333544731, - -0.038364771753549576, - -0.08966538310050964, - -0.08357422053813934, - -0.03950528800487518, - 0.016744229942560196, - -0.003149115713313222, - -0.06896740943193436, - -0.01977505348622799, - 0.026742100715637207, - -0.022353297099471092, - 0.03828902170062065, - 0.12637129426002502, - 0.039877377450466156, - -0.09273171424865723 - ] - }, - "p245_034.wav": { - "name": "p245", - "embedding": [ - 0.06562553346157074, - 0.048612311482429504, - 0.015203645452857018, - -0.0012235715985298157, - -0.03443368896842003, - 0.05501305311918259, - -0.1029471755027771, - 0.11168458312749863, - 0.017423667013645172, - 0.07007189095020294, - -0.08742016553878784, - 0.0821203738451004, - -0.006993485148996115, - -0.1573825180530548, - -0.008023237809538841, - 0.04416750371456146, - -0.03125345706939697, - -0.007048833183944225, - -0.05864045023918152, - -0.03840073198080063, - 0.012356491759419441, - 0.043636079877614975, - 0.053607277572155, - -0.0024839178659021854, - 0.03205051273107529, - 0.04524322599172592, - -0.01184853445738554, - 0.019582659006118774, - 0.0020372439175844193, - -0.046482667326927185, - -0.006112158298492432, - 0.06346125900745392, - -0.03171871230006218, - -0.010496973991394043, - 0.033257387578487396, - -0.006122102495282888, - 0.01347152516245842, - -0.08026003837585449, - -0.04488036781549454, - 0.04201894998550415, - -0.05190723389387131, - 0.07317086309194565, - 0.051554225385189056, - -0.015824010595679283, - 0.05274331197142601, - 0.0038529206067323685, - -0.03422069922089577, - -0.05027550086379051, - -0.1174953430891037, - 0.15826359391212463, - 0.04552783817052841, - 0.025667157024145126, - -0.09340095520019531, - -0.01947007328271866, - 0.07311001420021057, - -0.0266435444355011, - -0.06862623989582062, - -0.02304871380329132, - 0.059475041925907135, - 0.10230003297328949, - 0.014408551156520844, - -0.01942823827266693, - 0.032441359013319016, - 0.06341756135225296, - 0.01187172718346119, - 0.02172405831515789, - 0.10330133140087128, - 0.09432270377874374, - -0.020649559795856476, - 0.035143088549375534, - 0.04434032365679741, - 0.03849361091852188, - 0.03960993140935898, - -0.0031395829282701015, - 0.014636171981692314, - -0.019699156284332275, - -0.015449078753590584, - -0.018568111583590508, - -0.02272905968129635, - -0.003091132966801524, - 0.03170564025640488, - 0.01269453763961792, - 0.02450958453118801, - 0.027898622676730156, - -0.04987247288227081, - 0.04154077172279358, - 0.004989826586097479, - 0.05342442914843559, - 0.07077434659004211, - 0.029061879962682724, - 0.008336978033185005, - 0.03075072541832924, - -0.043387334793806076, - -0.09138722717761993, - 0.005141383036971092, - 0.010789508931338787, - 0.017937371507287025, - 0.030780762434005737, - 0.024082280695438385, - -0.025861745700240135, - 0.11531367152929306, - 0.02285810559988022, - -0.012274956330657005, - 0.0018036316614598036, - -0.07109217345714569, - 0.07755395770072937, - 0.09363259375095367, - 0.0005820145597681403, - 0.06153271347284317, - -0.04272299259901047, - 0.048228733241558075, - 0.052560191601514816, - -0.09407263994216919, - -0.02396334707736969, - 0.015526879578828812, - 0.018149055540561676, - 0.04114966094493866, - 0.11613212525844574, - 0.004743978381156921, - 0.04427904635667801, - 0.09413877129554749, - -0.08159561455249786, - -0.012154145166277885, - 0.025887874886393547, - 0.020455336198210716, - -0.03368502855300903, - 0.02239091321825981, - 0.039456807076931, - -0.00019180650997441262, - -0.01304236613214016, - 0.048595916479825974, - -0.0005361376097425818, - 0.013854669407010078, - -0.03764548897743225, - 0.008796806447207928, - 0.03606352210044861, - -0.029762111604213715, - -0.030115853995084763, - 0.06373052299022675, - 0.06733863055706024, - 0.011902834288775921, - 0.03505462035536766, - -0.06342729926109314, - -0.0978875458240509, - -0.0015799155225977302, - -0.007915060967206955, - 0.05789420008659363, - -0.012920069508254528, - -0.024410098791122437, - -0.06025725603103638, - -0.017454717308282852, - 0.028336133807897568, - -0.0020864568650722504, - 0.04961779713630676, - 0.03826633095741272, - -0.0179322250187397, - 0.05169997736811638, - 0.013553905300796032, - 0.0027613863348960876, - -0.041492484509944916, - -0.04961634799838066, - 0.0030799596570432186, - 0.037748388946056366, - -0.05053270608186722, - -0.0476413369178772, - -0.007074679713696241, - -0.01024414412677288, - -0.024845262989401817, - 0.01547197438776493, - 0.040204353630542755, - -0.010804510675370693, - -0.004049159586429596, - -0.08144941926002502, - 0.027288060635328293, - -0.0710800439119339, - -0.06883895397186279, - 0.05499356985092163, - 0.01186924334615469, - -0.004030154552310705, - 0.08174224197864532, - 0.023305434733629227, - 0.031559329479932785, - -0.047674696892499924, - -0.06275229901075363, - -0.01827729120850563, - 0.056984275579452515, - 0.034231606870889664, - -0.0018060453003272414, - 0.04879539832472801, - 0.026821276172995567, - -0.027623958885669708, - 0.07013483345508575, - 0.03366212174296379, - 0.06304562091827393, - -0.0448773130774498, - -0.00812606792896986, - -0.01052139699459076, - 0.08368801325559616, - 0.050083886831998825, - -0.04954775422811508, - -0.06648942083120346, - -0.018721820786595345, - -0.04476935788989067, - 0.03467569500207901, - 0.0025751139037311077, - -0.0037698138039559126, - 0.041302941739559174, - -0.014410212635993958, - -0.08020330965518951, - -0.06206473708152771, - 0.030090447515249252, - -0.03456461429595947, - -0.005840213503688574, - -0.058361537754535675, - 0.03530937433242798, - 0.09414809942245483, - -0.006623054854571819, - -0.003878684714436531, - -0.012763336300849915, - 0.0006068050861358643, - -0.03687785193324089, - -0.03678639605641365, - 0.01219350378960371, - 0.0361783504486084, - -0.07579641044139862, - -0.006687878631055355, - -0.06306930631399155, - 0.03952993080019951, - 0.0004062677617184818, - 0.09683389961719513, - 0.03247857838869095, - -0.020130399614572525, - -0.05690188705921173, - 0.031087344512343407, - -0.019660916179418564, - 0.05484982952475548, - 0.025913558900356293, - 0.01733427867293358, - 0.05963724106550217, - -0.05483750253915787, - 0.07693038135766983, - 0.038009028881788254, - -0.05759081989526749, - -0.0389627069234848, - -0.007351682987064123, - -0.030361158773303032, - -0.0009335912764072418, - -0.01841195672750473, - -0.05207183212041855, - 0.008091631345450878, - 0.020619958639144897, - 0.013020697981119156, - 0.04077501595020294, - 0.08046837151050568, - 0.038598451763391495, - -0.08290281891822815 - ] - }, - "p245_003.wav": { - "name": "p245", - "embedding": [ - 0.0295333843678236, - 0.06818605959415436, - -0.00016502142534591258, - 0.022960500791668892, - -0.04116135463118553, - 0.0252471175044775, - -0.13690705597400665, - 0.11414899677038193, - -0.0020723938941955566, - 0.11166918277740479, - -0.08013176918029785, - 0.09192591160535812, - -0.04262375459074974, - -0.16115251183509827, - -0.014802008867263794, - 0.043254509568214417, - -0.030447257682681084, - -0.053501784801483154, - -0.015254824422299862, - -0.009343627840280533, - 0.039815712720155716, - 0.035177480429410934, - 0.018444228917360306, - 0.016101902350783348, - 0.003158713225275278, - 0.054110314697027206, - -0.009109004400670528, - 0.02530478872358799, - 0.013888445682823658, - -0.008295020088553429, - 0.013123651035130024, - 0.06857029348611832, - -0.032917413860559464, - 0.032608598470687866, - 0.040043581277132034, - 0.017812302336096764, - -0.017666494473814964, - -0.039362866431474686, - -0.0261479951441288, - -0.0014135331148281693, - -0.0679730772972107, - 0.06807398051023483, - 0.0324995182454586, - -0.017256667837500572, - 0.043432679027318954, - 0.02631065621972084, - -0.02101738750934601, - -0.03066873922944069, - -0.1055397316813469, - 0.13855354487895966, - 0.05508971959352493, - 0.013379818759858608, - -0.06369727104902267, - -0.04134828597307205, - 0.08572905510663986, - -0.022043539211153984, - -0.09691758453845978, - -0.05206381157040596, - 0.08876153081655502, - 0.11121437698602676, - -0.030014842748641968, - -0.04228461906313896, - 0.011554970405995846, - 0.09005703777074814, - 0.052858322858810425, - 0.06045984849333763, - 0.07781072705984116, - 0.10947312414646149, - -0.026679182425141335, - -0.015123778954148293, - 0.06666175276041031, - 0.056673258543014526, - 0.04848107323050499, - -0.0026129595935344696, - 0.0132496552541852, - 0.011503173038363457, - -0.01166569348424673, - 0.016191817820072174, - -0.018551545217633247, - -0.0036922504659742117, - -0.021846560761332512, - -0.012725886888802052, - -0.004193407483398914, - 0.022679870948195457, - -0.014913520775735378, - 0.03395794704556465, - 0.04889579117298126, - -0.00021272581943776459, - 0.0750490352511406, - 0.0378580205142498, - -0.003489042865112424, - 0.05743644759058952, - -0.07021570205688477, - -0.05749934911727905, - -0.004176382906734943, - -0.011763731017708778, - 0.0321279875934124, - 0.066522978246212, - 0.031300242990255356, - 0.003982923924922943, - 0.10867124050855637, - 0.010436068288981915, - -0.015197833068668842, - 0.00872453860938549, - -0.11299969255924225, - 0.10792400687932968, - 0.05790141969919205, - -0.03113420307636261, - 0.013999111019074917, - -0.052892643958330154, - 0.046940870583057404, - 0.06055445224046707, - -0.08770355582237244, - -0.047328345477581024, - 0.0492437444627285, - 0.04116356000304222, - -0.010526577942073345, - 0.12705299258232117, - 0.007765599526464939, - 0.01837928220629692, - 0.12015612423419952, - -0.08633997291326523, - -0.05526984855532646, - -0.006431904621422291, - 0.028700610622763634, - -0.07456450164318085, - 0.049012281000614166, - 0.04659518599510193, - 0.0033286120742559433, - 0.015890272334218025, - 0.07810961455106735, - 0.0056940908543765545, - 0.011244875378906727, - -0.02638048306107521, - -0.026325030252337456, - 0.031601328402757645, - -0.024860238656401634, - -0.002651314018294215, - 0.05492263659834862, - 0.04224498197436333, - 0.05766316130757332, - 0.02264775149524212, - -0.0422237291932106, - -0.11385434865951538, - 0.016186775639653206, - 0.05067789554595947, - 0.06854478269815445, - -0.02093648724257946, - -0.033872880041599274, - -0.05047303065657616, - -0.04880719259381294, - 0.019625676795840263, - -0.010662071406841278, - 0.06729476153850555, - -0.0068361894227564335, - -0.010815287940204144, - 0.09018208831548691, - 0.011250493116676807, - -0.006714948918670416, - -0.05294112116098404, - -0.05251975730061531, - -0.018979543820023537, - 0.04257283732295036, - -0.10115806013345718, - -0.06125190481543541, - -0.023261789232492447, - 0.04930824041366577, - -0.0049368105828762054, - 0.029348323121666908, - 0.046581678092479706, - 0.017598140984773636, - 0.01052377000451088, - -0.05512464791536331, - 0.02366301603615284, - -0.08300351351499557, - -0.09226083755493164, - -0.0067525687627494335, - 0.008845457807183266, - 0.011241708882153034, - 0.06768151372671127, - -0.008157648146152496, - 0.04334553703665733, - -0.016736004501581192, - -0.08927588164806366, - -0.08907850831747055, - 0.058233629912137985, - 0.04732293635606766, - -0.016672369092702866, - 0.05053155496716499, - 0.04913689196109772, - -0.06880442053079605, - 0.03210317716002464, - 0.025231758132576942, - 0.11282401531934738, - -0.058189429342746735, - 0.035158172249794006, - -0.04620283097028732, - 0.07102667540311813, - 0.08196061849594116, - -0.0762406662106514, - -0.06024560332298279, - -0.03166374936699867, - -0.04267769679427147, - 0.0125054270029068, - -0.028068695217370987, - -0.006948710884898901, - 0.010740067809820175, - -0.017177550122141838, - -0.09047006070613861, - -0.08063143491744995, - 0.028889387845993042, - -0.050079572945833206, - 0.0014487378066405654, - -0.08759210258722305, - 0.03647930547595024, - 0.06456023454666138, - 0.028283119201660156, - -0.016644684597849846, - -0.007800982799381018, - 0.024897441267967224, - -0.03692768141627312, - -0.009652554988861084, - 0.054503507912158966, - 0.040738411247730255, - -0.0612194649875164, - -0.03147048503160477, - -0.07065439969301224, - 0.052066314965486526, - -0.03769790753722191, - 0.12280608713626862, - -0.0019774094689637423, - -0.04481757432222366, - -0.03552081808447838, - -0.010182089172303677, - -0.0035797045566141605, - 0.04381715878844261, - 0.019970109686255455, - 0.04968859627842903, - 0.03286181762814522, - -0.03224371001124382, - 0.11276187747716904, - 0.05984009429812431, - -0.024158863350749016, - -0.04718280956149101, - -0.03275075554847717, - -0.041144657880067825, - 0.0072350515983998775, - -0.007992195896804333, - -0.08522205799818039, - -0.0021310315933078527, - 0.012713230215013027, - -0.004684712737798691, - 0.04930267855525017, - 0.1318783164024353, - 0.06259594112634659, - -0.10558916628360748 - ] - }, - "p245_030.wav": { - "name": "p245", - "embedding": [ - 0.05470728129148483, - 0.07676955312490463, - -0.02762940526008606, - 0.05767924338579178, - -0.07619606703519821, - 0.04276008903980255, - -0.11171802133321762, - 0.13443566858768463, - 0.014216672629117966, - 0.12439748644828796, - -0.03545985370874405, - 0.1309659779071808, - -0.019644618034362793, - -0.1529431939125061, - 0.02912980690598488, - 0.05755430459976196, - -0.004274472594261169, - -0.02756984531879425, - -0.014871301129460335, - -0.025451336055994034, - 0.026815159246325493, - 0.05262542515993118, - 0.06884843111038208, - -0.025878513231873512, - 0.035344719886779785, - 0.08189433813095093, - -0.016676263883709908, - 0.03463464602828026, - -0.004183952230960131, - -0.1075097993016243, - -0.04870396852493286, - 0.06653337180614471, - -0.06726223230361938, - 0.01787535473704338, - 0.02079075574874878, - -0.031276315450668335, - -0.02352435514330864, - -0.05166897177696228, - -0.010286376811563969, - 0.0036683299113065004, - -0.03095962479710579, - 0.08559343218803406, - 0.019595187157392502, - -0.05610499531030655, - 0.02678229659795761, - -0.0016871335683390498, - -0.025511208921670914, - -0.019675660878419876, - -0.12104354798793793, - 0.15562313795089722, - 0.06929443776607513, - 0.0057962979190051556, - -0.07313663512468338, - -0.07135674357414246, - 0.06761529296636581, - -0.0007422398775815964, - -0.09742194414138794, - -0.03820406645536423, - 0.05416587367653847, - 0.11439339816570282, - -0.011249566450715065, - -0.03667866811156273, - 0.0433211624622345, - 0.09483082592487335, - 0.07048407196998596, - 0.06450808048248291, - 0.0841134786605835, - 0.11811643838882446, - -0.04232597351074219, - 0.021638095378875732, - 0.012464185245335102, - 0.09455686807632446, - 0.055138133466243744, - 0.03224926441907883, - 0.0006414596573449671, - -0.02130945771932602, - -0.015845898538827896, - -0.03467155247926712, - -0.01327726524323225, - -0.04097800701856613, - -0.0034745950251817703, - -0.010024461895227432, - 0.034938354045152664, - 0.02906501665711403, - -0.020026667043566704, - 0.05671773850917816, - 0.062143027782440186, - -0.0180739164352417, - 0.06378280371427536, - -0.008467407897114754, - -0.006435783114284277, - 0.06746965646743774, - -0.10297304391860962, - -0.05244568735361099, - 0.033282771706581116, - 0.014758987352252007, - 0.04851013422012329, - 0.0939134731888771, - 0.041356537491083145, - -0.022815290838479996, - 0.12511798739433289, - 0.04143769294023514, - -0.012946373783051968, - 0.0026330742985010147, - -0.052655741572380066, - 0.1248498409986496, - 0.09045326709747314, - -0.017180759459733963, - 0.07442940771579742, - -0.06850285083055496, - 0.07324356585741043, - 0.037742242217063904, - -0.12452586740255356, - -0.0637553334236145, - -0.013753941282629967, - -0.006501892115920782, - -0.01811373233795166, - 0.12327870726585388, - 0.018540682271122932, - 0.07552286982536316, - 0.11820340901613235, - -0.12442626059055328, - -0.05893946439027786, - -0.0007568219443783164, - 0.05576680600643158, - -0.09783821552991867, - 0.06099921464920044, - 0.06353416293859482, - -0.03922055661678314, - 0.03726281598210335, - 0.054679617285728455, - -0.010034135542809963, - 0.03613394498825073, - 0.03675030171871185, - -0.06013532727956772, - -0.01117075514048338, - -0.03954803943634033, - -0.005952105857431889, - 0.048808448016643524, - 0.009786593727767467, - 0.06733052432537079, - -0.043168265372514725, - -0.01037953794002533, - -0.13466255366802216, - 0.029157396405935287, - 0.034274522215127945, - 0.05720892176032066, - -0.029842007905244827, - -0.04731646180152893, - -0.02947131358087063, - -0.07857740670442581, - 0.026416301727294922, - -0.0038499748334288597, - 0.03999471664428711, - -0.03648192808032036, - 0.017898237332701683, - 0.08382024616003036, - 0.06179053336381912, - -0.014123756438493729, - -0.05873624235391617, - -0.06598500907421112, - 0.00648857094347477, - 0.050255510956048965, - -0.08953459560871124, - -0.07552239298820496, - -0.0285145565867424, - 0.02494506537914276, - -0.04001874476671219, - 0.07711224257946014, - 0.06339746713638306, - 0.03856305405497551, - 0.002129770815372467, - -0.03816752880811691, - -0.011841261759400368, - -0.05057452619075775, - -0.08925756067037582, - -0.005924629513174295, - -0.0015792513731867075, - -0.041762690991163254, - 0.08837725222110748, - 0.04063595086336136, - 0.08196276426315308, - -0.047005802392959595, - -0.010510338470339775, - -0.09416946768760681, - 0.025445953011512756, - 0.014178285375237465, - -0.01749601773917675, - 0.04425964504480362, - 0.059983398765325546, - -0.05745777487754822, - 0.04824567586183548, - 0.053836409002542496, - 0.07614849507808685, - -0.037899937480688095, - 0.017541049048304558, - -0.07810387760400772, - 0.0930262953042984, - 0.13822007179260254, - -0.06520669907331467, - -0.07337333261966705, - -0.0694187581539154, - -0.10342937707901001, - 0.041308846324682236, - -0.03650330752134323, - -0.013999367132782936, - 0.03666064143180847, - 0.002039629267528653, - -0.10853581130504608, - -0.1032566949725151, - 0.08476080000400543, - -0.04359114170074463, - 0.0030293113086372614, - -0.09174497425556183, - 0.044643521308898926, - 0.07275035977363586, - 0.057189296931028366, - -0.026364460587501526, - -0.01764502376317978, - 0.06311649084091187, - -0.008676948957145214, - 0.04276953265070915, - 0.10869312286376953, - 0.06944498419761658, - -0.09542709589004517, - -0.018323691561818123, - -0.05242624878883362, - 0.01803870126605034, - -0.037017881870269775, - 0.14510849118232727, - 0.029216380789875984, - -0.04170714318752289, - -0.07686308026313782, - 0.06558069586753845, - -0.017520304769277573, - 0.048418521881103516, - 0.01869634911417961, - 0.03934627026319504, - 0.05995792895555496, - -0.08986963331699371, - 0.1134452149271965, - 0.04789048433303833, - -0.0365600511431694, - -0.06660213321447372, - -0.05832260102033615, - -0.04478484392166138, - 0.05500505492091179, - 0.004616708494722843, - -0.0925792008638382, - -0.021152371540665627, - 0.024854060262441635, - 0.016134504228830338, - 0.04518268257379532, - 0.15707702934741974, - 0.05744396150112152, - -0.1055162101984024 - ] - }, - "p245_249.wav": { - "name": "p245", - "embedding": [ - 0.012935522012412548, - 0.09927419573068619, - -0.024993648752570152, - 0.04509132355451584, - -0.05368250608444214, - 0.060529448091983795, - -0.0839657261967659, - 0.10867979377508163, - -0.07567229121923447, - 0.10712631046772003, - -0.13276126980781555, - 0.07911356538534164, - -0.09166958183050156, - -0.14737306535243988, - -0.0715826228260994, - 0.04715517535805702, - -0.017219772562384605, - -0.04937504976987839, - 0.006780656054615974, - -0.010438249446451664, - 0.04826318472623825, - 0.03554379194974899, - 8.224325574701652e-05, - 0.06011860817670822, - 0.01483230385929346, - 0.05356563627719879, - -0.0007025262457318604, - 0.06787404417991638, - 0.038646623492240906, - 0.02557419240474701, - -0.019631613045930862, - 0.13727380335330963, - -0.05240580067038536, - -0.015167741104960442, - 0.021254021674394608, - 0.037348441779613495, - 0.0300596933811903, - -0.04376578703522682, - -0.007100844290107489, - -0.015584741719067097, - -0.10023512691259384, - 0.05997200310230255, - 0.009028336964547634, - 0.010574288666248322, - 0.031171562150120735, - -0.006243289913982153, - -0.02563583105802536, - -0.02633700706064701, - -0.12020395696163177, - 0.1268252730369568, - 0.06137459725141525, - 0.01221002172678709, - -0.09540942311286926, - -0.0676732212305069, - 0.12198535352945328, - -0.01483103260397911, - -0.08746879547834396, - -0.0397750660777092, - 0.07313300669193268, - 0.1875762939453125, - -0.013813882134854794, - -0.02578629180788994, - 0.019833292812108994, - 0.08182096481323242, - 0.07705184072256088, - 0.07122629880905151, - 0.07838647812604904, - 0.08692800253629684, - 0.016382649540901184, - -0.019005723297595978, - 0.08939873427152634, - 0.04651903733611107, - 0.023835137486457825, - -0.0531136579811573, - -0.0037986375391483307, - 0.03557954728603363, - -0.02296283096075058, - 0.06596098095178604, - -0.017140677198767662, - -0.007329446263611317, - -0.028013966977596283, - 0.01259949803352356, - -0.04364576190710068, - -0.004426313564181328, - -0.03909788280725479, - 0.06070079654455185, - 0.007922438904643059, - -0.008891773410141468, - 0.1033315435051918, - 0.038845568895339966, - -0.0515342652797699, - 0.05017722025513649, - -0.07063961029052734, - -0.04186994954943657, - -0.02348773553967476, - -0.0009436081745661795, - -0.0025916362646967173, - 0.10672426223754883, - 0.02616169862449169, - -0.018439998850226402, - 0.12969665229320526, - 0.02538936398923397, - 0.04393988475203514, - 0.03814641758799553, - -0.12770715355873108, - 0.10855274647474289, - 0.07451435923576355, - -0.036402951925992966, - 0.027284573763608932, - 0.03557748347520828, - 0.04942774400115013, - 0.06636208295822144, - -0.11313772201538086, - -0.05737714469432831, - 0.04062531888484955, - 0.04659825935959816, - 0.006506338715553284, - 0.07647179812192917, - -0.039271123707294464, - -0.009470909833908081, - 0.10287342965602875, - -0.055081818252801895, - -0.06007155403494835, - -0.03266264498233795, - 0.04245371371507645, - -0.04170932248234749, - 0.03218434005975723, - 0.0382448248565197, - 0.039504993706941605, - -0.012289178557693958, - 0.06953231245279312, - -0.007693782448768616, - -0.013923222199082375, - 0.03387003764510155, - -0.05377437174320221, - 0.05353546142578125, - -0.04104000702500343, - -0.03804019093513489, - 0.09091018885374069, - 0.05472839996218681, - 0.0798858106136322, - 0.02622653730213642, - -0.0010170680470764637, - -0.08546695113182068, - -0.006697039119899273, - 0.0795888602733612, - 0.062414806336164474, - -0.01590139977633953, - -0.028021443635225296, - -0.10086825489997864, - -0.052615344524383545, - 0.03260738402605057, - 0.03941960260272026, - 0.11866677552461624, - -0.018320243805646896, - 0.0005236418801359832, - 0.10138029605150223, - -0.006560175679624081, - -0.01788152940571308, - -0.05558563396334648, - -0.01329271961003542, - -0.021850038319826126, - 0.05118302255868912, - -0.04921804368495941, - -0.10621524602174759, - 0.011298242025077343, - 0.0506180115044117, - -0.0025212641339749098, - 0.052181415259838104, - 0.055101606994867325, - -0.007459715474396944, - 0.009913264773786068, - -0.09084285795688629, - 0.06088470295071602, - -0.09334676712751389, - -0.037019032984972, - -0.022635476663708687, - -0.018536237999796867, - 0.003790324553847313, - 0.07412982732057571, - 0.03162064775824547, - 0.01260063610970974, - 0.0646538957953453, - -0.15381334722042084, - -0.07888547331094742, - 0.07864928990602493, - 0.09040091186761856, - 0.011129902675747871, - 0.08324947953224182, - 0.08978580683469772, - -0.061792463064193726, - 0.06304390728473663, - 0.07358133047819138, - 0.10434794425964355, - -0.05192577838897705, - -0.0018468810012564063, - -0.02810545451939106, - 0.017826221883296967, - 0.03070542775094509, - -0.12759071588516235, - -0.08754231780767441, - -0.0346057154238224, - -0.04267074540257454, - 0.06150691956281662, - 0.001976055558770895, - 0.04200102016329765, - 0.019065219908952713, - -0.05994474142789841, - -0.10044196248054504, - -0.08682776242494583, - 0.07510696351528168, - -0.0410810261964798, - -0.047067947685718536, - -0.07730194181203842, - -0.002518618246540427, - 0.06757852435112, - 0.014476128853857517, - 0.000981855089776218, - 0.0257673729211092, - 0.020144488662481308, - -0.06789638847112656, - -0.0522676557302475, - 0.07216951996088028, - -0.021084681153297424, - -0.08619770407676697, - 0.01282979641109705, - -0.08609282225370407, - 0.13633054494857788, - -0.04155348241329193, - 0.14530400931835175, - -0.03721082583069801, - -0.05338159203529358, - -0.08183901011943817, - 0.039759375154972076, - -0.027577422559261322, - 0.05348000302910805, - 0.04731455445289612, - 0.05943932384252548, - -0.0067628007382154465, - -0.01098265964537859, - 0.13872428238391876, - 0.04102689027786255, - -0.07474246621131897, - -0.0558406226336956, - -0.03822559118270874, - -0.055315352976322174, - -0.015425224788486958, - 0.02848370373249054, - -0.06721736490726471, - 0.014461886137723923, - -0.009060640819370747, - -0.041844263672828674, - 0.06357363611459732, - 0.11187741905450821, - 0.09933291375637054, - -0.10855313390493393 - ] - }, - "p245_325.wav": { - "name": "p245", - "embedding": [ - 0.04966717213392258, - 0.08694766461849213, - -0.012625151313841343, - -0.00333605008199811, - -0.054571639746427536, - 0.06827566027641296, - -0.13681650161743164, - 0.14079231023788452, - -0.05652210861444473, - 0.1499648094177246, - -0.07269900292158127, - 0.12226858735084534, - -0.02143661491572857, - -0.18968161940574646, - -0.01778835989534855, - 0.04816300421953201, - -0.04101085662841797, - -0.02439987286925316, - -0.04568105936050415, - -0.0217617005109787, - 0.04689629375934601, - 0.02851555496454239, - 0.006267506163567305, - -0.01548614539206028, - 0.020500976592302322, - 0.06706105172634125, - -0.0013503337977454066, - 0.03221709281206131, - -0.0010236594825983047, - -0.05861405283212662, - -0.0418982207775116, - 0.1028124988079071, - -0.05563540756702423, - 0.017795199528336525, - 0.06905356049537659, - -0.012193439528346062, - -0.010338643565773964, - -0.06881534308195114, - -0.026384342461824417, - 0.0025092957075685263, - -0.04409679025411606, - 0.06917420029640198, - 0.027254996821284294, - -0.004066402558237314, - 0.034804701805114746, - 0.040940672159194946, - -0.0013422956690192223, - -0.05357092618942261, - -0.08283291012048721, - 0.15489768981933594, - 0.06422407925128937, - -0.007211022544652224, - -0.062371835112571716, - -0.07197795063257217, - 0.10829363018274307, - -0.01292574591934681, - -0.12013749778270721, - -0.03944230079650879, - 0.08368775993585587, - 0.14994242787361145, - -0.04818883538246155, - -0.0466359406709671, - 0.02133755013346672, - 0.10212883353233337, - 0.036463163793087006, - 0.10289247334003448, - 0.08162319660186768, - 0.10675529390573502, - -0.010096531361341476, - 0.022563256323337555, - 0.05517695099115372, - 0.07468937337398529, - 0.07003836333751678, - -0.02187785878777504, - 0.04528842866420746, - 0.010652739554643631, - -0.024704448878765106, - 0.006845420226454735, - -0.039860405027866364, - -0.010626170784235, - -0.007208168040961027, - 0.013719648122787476, - 0.02561389096081257, - 0.01668722555041313, - -0.01544229220598936, - 0.056099895387887955, - 0.039016760885715485, - -0.0065971361473202705, - 0.06699902564287186, - 0.028059016913175583, - 0.01333620399236679, - 0.07469695806503296, - -0.10454930365085602, - -0.0935489684343338, - 0.04098852723836899, - -0.0011533864308148623, - 0.007668512407690287, - 0.0752333253622055, - 0.04500114172697067, - -0.017139587551355362, - 0.11948438733816147, - 0.04693763330578804, - -0.003338349750265479, - 0.03240814805030823, - -0.10219991207122803, - 0.12679052352905273, - 0.08641367405653, - -0.04284123331308365, - 0.035013142973184586, - -0.07300899922847748, - 0.09186586737632751, - 0.06711637228727341, - -0.1508287787437439, - -0.08321239799261093, - 0.03424824774265289, - 0.004776747431606054, - -0.02780088223516941, - 0.13528096675872803, - -0.026613906025886536, - 0.02791471593081951, - 0.11105003952980042, - -0.09543438255786896, - -0.0535685233771801, - -0.013050749897956848, - 0.037612125277519226, - -0.08245661854743958, - 0.060058485716581345, - 0.03796648234128952, - -0.002163125667721033, - 0.02153128571808338, - 0.09307429939508438, - -0.01862884685397148, - -0.004344776272773743, - 0.0032302397303283215, - -0.03349637985229492, - 0.016122985631227493, - -0.031178709119558334, - -0.0061846645548939705, - 0.029227789491415024, - 0.04861590266227722, - 0.04031187295913696, - -0.003569886088371277, - -0.03822077065706253, - -0.11567361652851105, - 0.018854305148124695, - 0.03079787641763687, - 0.0776229053735733, - -0.010300492867827415, - -0.007661917246878147, - -0.0339072048664093, - -0.07512915134429932, - -0.0013691673520952463, - -0.016950692981481552, - 0.07187387347221375, - -0.008953878656029701, - 0.013965497724711895, - 0.10073987394571304, - 0.04174278676509857, - -0.0016268487088382244, - -0.06149154156446457, - -0.042421549558639526, - 0.012927472591400146, - 0.05488825589418411, - -0.08420486748218536, - -0.0717003345489502, - -0.012175071984529495, - 0.02066364511847496, - -0.019151728600263596, - 0.05008373409509659, - 0.04730449616909027, - 0.03039482608437538, - 0.03697170689702034, - -0.08086833357810974, - 0.017663858830928802, - -0.12649551033973694, - -0.07574167847633362, - -0.0068981279619038105, - -0.022750329226255417, - -0.011448211967945099, - 0.07025618851184845, - -0.0037273778580129147, - 0.038678668439388275, - -0.03346174955368042, - -0.07171659171581268, - -0.08048898726701736, - 0.06606294959783554, - 0.07402089238166809, - -0.010351193137466908, - 0.03651900961995125, - 0.05470327287912369, - -0.025639459490776062, - 0.03978167474269867, - 0.06857487559318542, - 0.12023566663265228, - -0.017861492931842804, - 0.03880258649587631, - -0.06221162527799606, - 0.10736630856990814, - 0.07197622954845428, - -0.07603555917739868, - -0.08909307420253754, - -0.013390164822340012, - -0.06062651425600052, - 0.033977534621953964, - -0.020843125879764557, - -0.005121609196066856, - 0.014978908933699131, - 0.005755345802754164, - -0.0876794382929802, - -0.06285345554351807, - 0.07738222181797028, - -0.06504037976264954, - -0.01028781570494175, - -0.09509485960006714, - 0.057529449462890625, - 0.105836421251297, - 0.04114073887467384, - -0.03801435977220535, - -0.011728797107934952, - 0.056232597678899765, - -0.038454413414001465, - 0.011725552380084991, - 0.033920325338840485, - 0.038447387516498566, - -0.09217006713151932, - 0.003505860222503543, - -0.06905852258205414, - 0.04261811822652817, - -0.06036914885044098, - 0.14646580815315247, - -0.008204489946365356, - -0.056593842804431915, - -0.07322032749652863, - 0.03865882754325867, - -0.003404405666515231, - 0.03998562693595886, - 0.03483697026968002, - 0.07470151782035828, - 0.044311121106147766, - -0.0735577791929245, - 0.12321104109287262, - 0.028826171532273293, - -0.028087828308343887, - -0.05595666170120239, - -0.05587945878505707, - -0.03696545213460922, - 0.01333977933973074, - 0.0031317879911512136, - -0.09466608613729477, - -0.015701090916991234, - 0.02463914081454277, - -0.008789020590484142, - 0.05304677039384842, - 0.1365112066268921, - 0.06213065981864929, - -0.12903247773647308 - ] - }, - "p245_198.wav": { - "name": "p245", - "embedding": [ - 0.04573114216327667, - 0.08617543429136276, - -0.02858794294297695, - 0.045825034379959106, - -0.05586448311805725, - 0.015705913305282593, - -0.14525958895683289, - 0.14441385865211487, - -0.007577837444841862, - 0.12012898176908493, - -0.08360494673252106, - 0.10557852685451508, - -0.036870889365673065, - -0.17176644504070282, - -0.003762185573577881, - 0.06278923898935318, - -0.007680974900722504, - -0.053558558225631714, - -0.01869705133140087, - -0.01734916865825653, - 0.032301511615514755, - 0.03452988341450691, - 0.02038854919373989, - 0.014368487522006035, - 0.013691375963389874, - 0.06397934257984161, - -0.013846836984157562, - 0.029486337676644325, - -0.0007169125601649284, - 0.010544600896537304, - -0.010950813069939613, - 0.10610571503639221, - -0.05792625993490219, - -0.012156374752521515, - 0.03588303551077843, - -0.0003430732467677444, - -0.015359587967395782, - -0.055918894708156586, - -0.017944518476724625, - -0.02053442783653736, - -0.07188434898853302, - 0.06898166239261627, - 0.019391119480133057, - -0.020578131079673767, - 0.05303849279880524, - 0.025202907621860504, - -0.033700939267873764, - -0.030474219471216202, - -0.12311089038848877, - 0.13435962796211243, - 0.0680011734366417, - 0.02365124598145485, - -0.09387233853340149, - -0.04124774783849716, - 0.08823093771934509, - -0.010408556088805199, - -0.07647858560085297, - -0.05022794008255005, - 0.07796560227870941, - 0.1482400894165039, - -0.03063991665840149, - -0.038071926683187485, - 0.03562512621283531, - 0.11228753626346588, - 0.09648095071315765, - 0.06766235828399658, - 0.08470303565263748, - 0.12467707693576813, - -0.034814320504665375, - -0.005743354558944702, - 0.06785984337329865, - 0.059568386524915695, - 0.058094535022974014, - -0.02290506288409233, - 0.010997187346220016, - 0.0072613125666975975, - -0.011212692596018314, - -0.011183119378983974, - -0.027541745454072952, - -0.031197141855955124, - -0.013685786165297031, - 0.004870687611401081, - -0.004314986988902092, - 0.045276716351509094, - -0.03659700229763985, - 0.05031836777925491, - 0.09069882333278656, - -0.025898782536387444, - 0.08491881191730499, - 0.03384856879711151, - -0.007800151128321886, - 0.06583129614591599, - -0.11183460056781769, - -0.04853647202253342, - 0.03173079341650009, - -0.0050321235321462154, - 0.027479570358991623, - 0.08051649481058121, - 0.03731761872768402, - -0.014671975746750832, - 0.12701721489429474, - 0.028830107301473618, - -0.0015379930846393108, - 0.025718828663229942, - -0.08901875466108322, - 0.13019844889640808, - 0.07983462512493134, - -0.05251915752887726, - 0.030518166720867157, - -0.025044186040759087, - 0.023425936698913574, - 0.05075475573539734, - -0.10527608543634415, - -0.05957867577672005, - 0.03125949949026108, - 0.021248646080493927, - -0.028054513037204742, - 0.13006699085235596, - 0.010323820635676384, - 0.04855002462863922, - 0.11611439287662506, - -0.09012424200773239, - -0.07026010751724243, - -0.004726876504719257, - 0.04934266209602356, - -0.08412440121173859, - 0.06654663383960724, - 0.06829831004142761, - 0.008332595229148865, - 0.01660689152777195, - 0.07168363034725189, - 0.0018737774807959795, - 0.009136000648140907, - -0.0175600815564394, - -0.041738223284482956, - 0.0398765429854393, - -0.02146129682660103, - -0.02454327791929245, - 0.03338729590177536, - 0.019490718841552734, - 0.07131679356098175, - -0.0028607449494302273, - 0.006023178808391094, - -0.12588702142238617, - 0.018045753240585327, - 0.05641790106892586, - 0.08506707847118378, - -0.017318833619356155, - -0.02772548422217369, - -0.05546362325549126, - -0.05531419441103935, - 0.00559897581115365, - -0.0008896330837160349, - 0.06779243052005768, - -0.02197936549782753, - 0.00267136562615633, - 0.11170823127031326, - 0.017964042723178864, - 0.013985203579068184, - -0.0338824987411499, - -0.029022324830293655, - 0.0008136490359902382, - 0.05989436060190201, - -0.0837642103433609, - -0.08694818615913391, - -0.025673506781458855, - 0.05180685222148895, - -0.017752964049577713, - 0.06915580481290817, - 0.04728826880455017, - 0.0171771552413702, - -0.008071793243288994, - -0.07093185186386108, - 0.03269710764288902, - -0.07537884265184402, - -0.07543797045946121, - -0.011488859541714191, - -0.0065704891458153725, - -0.023778622969985008, - 0.06810300052165985, - 0.025751084089279175, - 0.057915762066841125, - -0.017445450648665428, - -0.08929392695426941, - -0.10142609477043152, - 0.048392679542303085, - 0.06272386014461517, - -0.03545256704092026, - 0.048410121351480484, - 0.06473474204540253, - -0.0548214390873909, - 0.027810579165816307, - 0.05268535763025284, - 0.10579436272382736, - -0.03883456066250801, - 0.011074000969529152, - -0.06225326657295227, - 0.06963302195072174, - 0.09237271547317505, - -0.09263814985752106, - -0.07666580379009247, - -0.03390684723854065, - -0.06416483223438263, - 0.022711586207151413, - -0.013901068828999996, - 0.025143830105662346, - 0.042900338768959045, - -0.02062884159386158, - -0.11979401111602783, - -0.09554505348205566, - 0.06356225907802582, - -0.07423657178878784, - -0.0008085041772574186, - -0.09670431911945343, - 0.035818152129650116, - 0.07554256170988083, - 0.02146162837743759, - -0.028629526495933533, - -0.03222452104091644, - 0.02494540624320507, - -0.021514831110835075, - 0.0033187177032232285, - 0.07233118265867233, - 0.046795666217803955, - -0.09871554374694824, - -0.017479687929153442, - -0.06945660710334778, - 0.07331635057926178, - -0.03326781094074249, - 0.1357022076845169, - 0.020543619990348816, - -0.03964664414525032, - -0.09272287040948868, - 0.02300575003027916, - 0.008829619735479355, - 0.06554687768220901, - 0.020907409489154816, - 0.05970393866300583, - 0.03596484288573265, - -0.057768143713474274, - 0.12148874998092651, - 0.05166614055633545, - -0.03916317597031593, - -0.07552072405815125, - -0.04630008339881897, - -0.056811995804309845, - 0.02795395627617836, - 0.014243417419493198, - -0.08052065968513489, - -0.012850725091993809, - 0.014679081737995148, - -0.013156717643141747, - 0.058125466108322144, - 0.13021086156368256, - 0.06566799432039261, - -0.11359727382659912 - ] - }, - "p245_159.wav": { - "name": "p245", - "embedding": [ - 0.058413147926330566, - 0.0851493775844574, - -0.01938800700008869, - 0.034967441111803055, - -0.06543193757534027, - 0.07954458892345428, - -0.1346077024936676, - 0.14574402570724487, - -0.058722496032714844, - 0.1336444765329361, - -0.0524507611989975, - 0.1330804079771042, - -0.017090793699026108, - -0.16936129331588745, - -0.04304691404104233, - 0.05415913462638855, - -0.04199191927909851, - -0.0380057618021965, - -0.05088915675878525, - -0.009263405576348305, - 0.04141171649098396, - 0.023143654689192772, - 0.037514809519052505, - 0.005587120074778795, - 0.019456548616290092, - 0.05461234226822853, - 0.001579886768013239, - 0.059790968894958496, - 0.028279192745685577, - -0.07147859036922455, - -0.023932291194796562, - 0.09955228120088577, - -0.04808495193719864, - 0.013571491464972496, - 0.042836204171180725, - -0.017299702391028404, - 0.0015348431188613176, - -0.06544842571020126, - -0.028561929240822792, - -0.005550609435886145, - -0.02939167059957981, - 0.07087188959121704, - 0.021183058619499207, - -0.012081865221261978, - 0.045907698571681976, - -0.004005631431937218, - -0.03639606386423111, - -0.04180077835917473, - -0.11158914864063263, - 0.14163821935653687, - 0.06460636854171753, - 0.01153847761452198, - -0.08199407160282135, - -0.07088756561279297, - 0.11114148050546646, - -0.028697293251752853, - -0.12238836288452148, - -0.043736644089221954, - 0.0589846596121788, - 0.18154636025428772, - -0.03646986186504364, - -0.028366971760988235, - 0.034096501767635345, - 0.11927962303161621, - 0.08460699766874313, - 0.08264227211475372, - 0.10199432820081711, - 0.104372039437294, - -0.009565104730427265, - 0.02626793645322323, - 0.04569845646619797, - 0.07976773381233215, - 0.049327000975608826, - 0.015197510831058025, - 0.03785546496510506, - -0.0021829847246408463, - 0.0028939866460859776, - -0.011847763322293758, - -0.02904510498046875, - -0.01801573485136032, - -0.013712520711123943, - 0.03416603431105614, - 0.016758522018790245, - 0.03353836387395859, - -0.039441246539354324, - 0.07412821054458618, - 0.014228343032300472, - -0.022725345566868782, - 0.052542611956596375, - 0.03700548782944679, - 0.01803748682141304, - 0.06138095632195473, - -0.0786462277173996, - -0.09951856732368469, - 0.02177383378148079, - 0.004044240340590477, - 0.0341787151992321, - 0.05324501544237137, - 0.0178073700517416, - -0.007979007437825203, - 0.11131744086742401, - 0.05885232985019684, - -0.014886860735714436, - 0.035755183547735214, - -0.08536800742149353, - 0.1259189397096634, - 0.07854315638542175, - -0.01486610621213913, - 0.05409734696149826, - -0.0419207364320755, - 0.06442134082317352, - 0.05710768699645996, - -0.12515130639076233, - -0.09122486412525177, - 0.026567600667476654, - 0.0212209802120924, - -0.01835457980632782, - 0.12408091127872467, - -0.003833891125395894, - 0.051880791783332825, - 0.09631906449794769, - -0.07687751203775406, - -0.04282434284687042, - -0.002761050360277295, - 0.05375911295413971, - -0.06647136807441711, - 0.058102138340473175, - 0.037846677005290985, - -0.0060182781890034676, - 0.003675130195915699, - 0.0896177589893341, - -0.011278442107141018, - 0.002197357127442956, - 0.03172638639807701, - -0.06291276216506958, - 0.025404684245586395, - -0.021125055849552155, - -0.010551205836236477, - 0.05474591255187988, - 0.04287055879831314, - 0.056560762226581573, - -0.01729593239724636, - -0.025317426770925522, - -0.1177828311920166, - 0.0031550980638712645, - 0.028308046981692314, - 0.08317138254642487, - -0.007012281566858292, - -0.017009031027555466, - -0.03824325650930405, - -0.049531158059835434, - 0.015359850600361824, - -0.008112877607345581, - 0.08716776967048645, - -0.01764707639813423, - 0.013395133428275585, - 0.08997654914855957, - 0.013790569268167019, - 0.013510936871170998, - -0.04022020846605301, - -0.016576815396547318, - 0.013002024032175541, - 0.06430725008249283, - -0.06638894975185394, - -0.06313949823379517, - 0.0073865256272256374, - 0.04728049784898758, - -0.025099273771047592, - 0.057141780853271484, - 0.05243726447224617, - 0.01260291412472725, - 0.03382009267807007, - -0.05118957534432411, - 0.019361114129424095, - -0.09620572626590729, - -0.06528978794813156, - 0.007228863891214132, - -0.018684368580579758, - -0.03585337847471237, - 0.06467610597610474, - 0.04336762800812721, - 0.06281490623950958, - -0.0077796257100999355, - -0.0794244110584259, - -0.09477965533733368, - 0.05507725477218628, - 0.055404528975486755, - 0.00026303762570023537, - 0.040793463587760925, - 0.05808216333389282, - -0.015401584096252918, - 0.06726420670747757, - 0.0677766501903534, - 0.08394092321395874, - -0.025968968868255615, - -0.004199789837002754, - -0.08528822660446167, - 0.07715778052806854, - 0.0974041074514389, - -0.09428833425045013, - -0.08270764350891113, - -0.019037652760744095, - -0.07656624913215637, - 0.03579473868012428, - -0.03251129388809204, - 0.009883809834718704, - 0.07214915007352829, - -0.01128344889730215, - -0.12907877564430237, - -0.09040738642215729, - 0.10556988418102264, - -0.09632175415754318, - 0.0028497972525656223, - -0.07180330157279968, - 0.03239740803837776, - 0.1037566214799881, - 0.015980158001184464, - -0.025148779153823853, - -0.019905555993318558, - 0.0505656898021698, - -0.04484933614730835, - 0.004202523268759251, - 0.052196599543094635, - 0.0269288569688797, - -0.10545407235622406, - 0.0031444099731743336, - -0.07538380473852158, - 0.027356499806046486, - -0.0340481661260128, - 0.15492624044418335, - 0.001511018956080079, - -0.042291343212127686, - -0.08816663175821304, - 0.044423576444387436, - -0.036082275211811066, - 0.0653405711054802, - 0.032282911241054535, - 0.08144906908273697, - 0.05112887918949127, - -0.07640519738197327, - 0.12074606120586395, - 0.05320623517036438, - -0.05867772549390793, - -0.0895145982503891, - -0.04446505755186081, - -0.04716450348496437, - 0.03641282767057419, - 0.007578905206173658, - -0.0761210173368454, - -0.023382557556033134, - 0.018243834376335144, - -0.01702934131026268, - 0.06948816776275635, - 0.12938576936721802, - 0.05923928692936897, - -0.10708929598331451 - ] - }, - "p245_320.wav": { - "name": "p245", - "embedding": [ - 0.025520801544189453, - 0.07877252995967865, - -0.003103757742792368, - 0.033836882561445236, - -0.08043865859508514, - 0.0457850843667984, - -0.11211296170949936, - 0.11164680123329163, - -0.027138078585267067, - 0.11066503077745438, - -0.09568971395492554, - 0.0965370386838913, - -0.016866173595190048, - -0.19909408688545227, - -0.017862588167190552, - 0.05212496221065521, - -0.049090828746557236, - -0.02265555039048195, - -0.02733519673347473, - -0.04589300975203514, - 0.04851827770471573, - 0.055428534746170044, - 0.050118379294872284, - 0.0025774845853447914, - 0.043658867478370667, - 0.05856213718652725, - 0.015148472040891647, - 0.0464465357363224, - 0.02517641894519329, - -0.043575722724199295, - -0.05331163853406906, - 0.1046111211180687, - -0.009041492827236652, - -0.012373365461826324, - 0.032275933772325516, - -0.019374284893274307, - 0.007885291241109371, - -0.06459587812423706, - -0.03704747557640076, - 0.033120665699243546, - -0.05432902276515961, - 0.07299421727657318, - 0.06089409440755844, - -0.016993261873722076, - 0.037817858159542084, - 0.009072830900549889, - -0.03586292266845703, - -0.055808745324611664, - -0.12454576790332794, - 0.1887241005897522, - 0.07881983369588852, - -0.012671553529798985, - -0.057992804795503616, - -0.06267143785953522, - 0.12205424904823303, - 0.012421952560544014, - -0.10446374118328094, - -0.016401691362261772, - 0.09666335582733154, - 0.15409152209758759, - -0.013929875567555428, - -0.01580873876810074, - 0.036068208515644073, - 0.12577728927135468, - -0.005117212422192097, - 0.09175033122301102, - 0.05273692309856415, - 0.08473008871078491, - -0.006884884089231491, - 0.04424678534269333, - 0.05382002890110016, - 0.07339969277381897, - -0.029947789385914803, - -0.03862817957997322, - -0.004522421862930059, - 0.0015955782728269696, - -0.05324070155620575, - 0.030611634254455566, - -0.009906492196023464, - 0.00014639180153608322, - -0.003053084947168827, - -0.008608316071331501, - 0.009825386106967926, - -0.04046602174639702, - -0.028976455330848694, - 0.05257901921868324, - -0.004623483866453171, - 0.031562693417072296, - 0.07770092785358429, - 0.004387503489851952, - -0.014716900885105133, - 0.04621315374970436, - -0.028419988229870796, - -0.10382391512393951, - 0.003904375247657299, - 0.022020693868398666, - 0.011379226110875607, - 0.09337257593870163, - 0.0345635712146759, - -0.04893741384148598, - 0.13333404064178467, - 0.054878875613212585, - -0.004535716027021408, - 0.03689620643854141, - -0.09091217815876007, - 0.09812438488006592, - 0.09628951549530029, - 0.002807183191180229, - 0.07539047300815582, - -0.042548783123493195, - 0.10629554837942123, - 0.05668673291802406, - -0.14158661663532257, - -0.04556601867079735, - 0.012369860894978046, - 0.02958417497575283, - -0.001235730480402708, - 0.10671583563089371, - -0.01761295460164547, - 0.008461223915219307, - 0.11134716868400574, - -0.09489066898822784, - -0.06414701044559479, - -0.034735988825559616, - 0.05360417813062668, - -0.06968238949775696, - 0.031240612268447876, - 0.06621511280536652, - -0.03984420374035835, - 0.01821187511086464, - 0.04201790690422058, - -0.031000137329101562, - 0.022071823477745056, - 0.03235841915011406, - -0.05499796196818352, - 0.03371907398104668, - -0.0667421743273735, - 0.011573335155844688, - 0.08141951262950897, - 0.051439594477415085, - 0.030979935079813004, - 0.015057777054607868, - -0.04582558944821358, - -0.09321261197328568, - 0.016480151563882828, - 0.017121383920311928, - 0.07412862777709961, - 0.0035083144903182983, - -0.025581354275345802, - -0.062389880418777466, - -0.0835554450750351, - 0.025608256459236145, - -0.004866618663072586, - 0.07624217122793198, - -0.02494824305176735, - 0.0010127227287739515, - 0.056198667734861374, - 0.04309277981519699, - -0.029178284108638763, - -0.06340880692005157, - -0.07106196880340576, - 0.01193341612815857, - 0.02568979375064373, - -0.07379039376974106, - -0.05820883810520172, - -0.008504355326294899, - 0.022267483174800873, - -0.041610024869441986, - -0.0005361400544643402, - 0.011520364321768284, - 0.023507241159677505, - 0.04325632005929947, - -0.08259670436382294, - 0.03512035310268402, - -0.09949750453233719, - -0.04365795850753784, - -0.007120637688785791, - 0.013626787811517715, - -0.027239196002483368, - 0.08776382356882095, - 0.005865401588380337, - 0.014887961558997631, - 0.006898198276758194, - -0.03954825550317764, - -0.03754882887005806, - 0.06032465398311615, - 0.06547810137271881, - 0.027362583205103874, - 0.0935697853565216, - 0.062348753213882446, - -0.05896969139575958, - 0.057689473032951355, - 0.040895912796258926, - 0.09860705584287643, - -0.006726451683789492, - 0.000279892235994339, - -0.04421014338731766, - 0.06964688003063202, - 0.05661206692457199, - -0.09451404958963394, - -0.0817442461848259, - -0.048741914331912994, - -0.06386011093854904, - 0.07009054720401764, - 0.0011014719493687153, - -0.022415097802877426, - -0.017177147790789604, - -0.007621739991009235, - -0.07507762312889099, - -0.05295128375291824, - 0.04943493753671646, - -0.025051366537809372, - -0.03307938948273659, - -0.07187759131193161, - 0.04678461700677872, - 0.12320798635482788, - 0.03921324387192726, - -0.009760253131389618, - -0.02440573461353779, - 0.04600626975297928, - -0.06350357830524445, - -0.00517002958804369, - 0.049542710185050964, - 0.015346411615610123, - -0.08599340915679932, - 0.01961633935570717, - -0.0815107598900795, - 0.07330404222011566, - -0.05598717927932739, - 0.1525687724351883, - 0.021213382482528687, - -0.04798867553472519, - -0.0737653523683548, - 0.0767839252948761, - -0.01707714982330799, - 0.029994748532772064, - 0.050640784204006195, - 0.012454717420041561, - 0.051881421357393265, - -0.07105045020580292, - 0.11011287569999695, - 0.006932501681149006, - -0.04478736221790314, - -0.04011773318052292, - -0.005451499484479427, - -0.023584691807627678, - 0.0030439498368650675, - 0.001462601125240326, - -0.07537886500358582, - -0.03603881224989891, - 0.026913758367300034, - -0.02891014888882637, - 0.07795421779155731, - 0.13605740666389465, - 0.07035727053880692, - -0.09568221122026443 - ] - }, - "p245_267.wav": { - "name": "p245", - "embedding": [ - 0.04089002311229706, - 0.08040937781333923, - 0.05000807344913483, - -0.0070318905636668205, - 0.008723873645067215, - 0.07464659214019775, - -0.11834269762039185, - 0.1018214225769043, - -0.04301316291093826, - 0.13808655738830566, - -0.10668472945690155, - 0.06459633260965347, - 0.013080033473670483, - -0.16938516497612, - -0.0646447241306305, - 0.017802206799387932, - -0.04766518250107765, - 0.039930008351802826, - -0.03393450751900673, - -0.010385828092694283, - 0.062403604388237, - 0.057696856558322906, - 0.04255995899438858, - -0.061506301164627075, - 0.04749395698308945, - 0.009770615957677364, - 0.03562210500240326, - 0.07580393552780151, - 0.050825536251068115, - -0.08106863498687744, - -0.0231953002512455, - 0.13198384642601013, - 0.0015208730474114418, - 0.030939212068915367, - 0.04094603657722473, - 0.00992706511169672, - 0.031001130118966103, - -0.04581299051642418, - -0.031974270939826965, - 0.045957040041685104, - -0.013186722993850708, - 0.057713862508535385, - 0.035606760531663895, - 0.01743660680949688, - 0.03220895677804947, - 0.03501259535551071, - -0.012407653033733368, - -0.06057533621788025, - -0.08138827979564667, - 0.17724911868572235, - 0.026143399998545647, - -0.0017656413838267326, - -0.07492661476135254, - -0.08444344252347946, - 0.10468797385692596, - -0.013748415745794773, - -0.09538333117961884, - 0.017244767397642136, - 0.09012005478143692, - 0.17713619768619537, - 0.003649749793112278, - -0.041360899806022644, - 0.03068859502673149, - 0.08699106425046921, - -0.037116240710020065, - 0.07794386893510818, - 0.07276590168476105, - 0.039734940975904465, - 0.06012583523988724, - 0.05856478214263916, - -0.012993717566132545, - 0.06079424172639847, - -0.022939421236515045, - -0.06243829429149628, - 0.004789378494024277, - 0.004343423526734114, - -0.06441061198711395, - 0.033424824476242065, - -0.015343820676207542, - 0.025518257170915604, - 0.01456561591476202, - -0.01243472658097744, - 0.016527898609638214, - -0.015675794333219528, - -0.05754144489765167, - 0.016180193051695824, - -0.06933006644248962, - 0.015319699421525002, - 0.07244564592838287, - 0.026999380439519882, - 0.03303860127925873, - 0.014041176997125149, - -0.011146186850965023, - -0.13782307505607605, - -0.01228814572095871, - 0.022822659462690353, - -0.033740848302841187, - 0.04843050241470337, - 0.04773620888590813, - -0.06402254104614258, - 0.10926861315965652, - 0.019560925662517548, - -0.011908043175935745, - 0.02584703266620636, - -0.11332231760025024, - 0.04632158577442169, - 0.09927937388420105, - 0.028471410274505615, - 0.0660373866558075, - -0.0635748878121376, - 0.08980832993984222, - 0.06897356361150742, - -0.156078040599823, - -0.06994686275720596, - 0.034303344786167145, - 0.013385571539402008, - 0.055527638643980026, - 0.07519859075546265, - -0.009599572978913784, - -0.03178717568516731, - 0.05675498768687248, - -0.08693210780620575, - -0.04817034676671028, - -0.041984155774116516, - 0.05391543358564377, - -0.04625561088323593, - 0.03939437121152878, - 0.01379892136901617, - -0.032152507454156876, - -0.03476390242576599, - 0.037203822284936905, - -0.024082684889435768, - 0.04144737496972084, - -0.02462238073348999, - -0.027651842683553696, - 0.033668678253889084, - -0.08139661699533463, - 0.03142492100596428, - 0.035938624292612076, - 0.07558830082416534, - 0.031962353736162186, - 0.038796812295913696, - -0.10666034370660782, - -0.060587868094444275, - -0.031992703676223755, - 0.025321437045931816, - 0.02320745959877968, - -0.010833362117409706, - -0.02502829022705555, - -0.07051452994346619, - -0.05833090469241142, - 0.058272723108530045, - -0.02111818641424179, - 0.09312470257282257, - 0.041767701506614685, - -0.004681993275880814, - 0.09134726226329803, - -0.029596125707030296, - -0.023587215691804886, - -0.05084984377026558, - -0.027825910598039627, - 0.012946934439241886, - -0.01631007343530655, - -0.05537319555878639, - -0.02790706604719162, - 0.022779371589422226, - -0.025850091129541397, - -0.023266222327947617, - -0.021136850118637085, - 0.007566055282950401, - 0.020570658147335052, - 0.06101328134536743, - -0.08109825104475021, - -0.01259965542703867, - -0.12628933787345886, - -0.03314174339175224, - 0.006773616187274456, - -0.006627519614994526, - -0.019430387765169144, - 0.10877761989831924, - 0.014117586426436901, - -0.027515683323144913, - 0.005301102064549923, - -0.06428813934326172, - -0.026269692927598953, - 0.06154746562242508, - 0.07906775176525116, - 0.03647599369287491, - 0.04911907762289047, - 0.03478210046887398, - -0.018287887796759605, - 0.09326697885990143, - 0.07508493959903717, - 0.06459780037403107, - 0.026122933253645897, - -0.003883889876306057, - -0.04503998905420303, - 0.09965449571609497, - 0.035454824566841125, - -0.047789111733436584, - -0.11980824172496796, - -0.020889632403850555, - -0.09032846987247467, - 0.06199394911527634, - 0.010868974961340427, - -0.002025547670200467, - -0.019454307854175568, - -0.013309402391314507, - -0.08036572486162186, - -0.028606118634343147, - 0.047644853591918945, - -0.03588501363992691, - -0.0644679144024849, - -0.033684246242046356, - 0.05091279372572899, - 0.08927328884601593, - 0.034298285841941833, - 0.019498834386467934, - -0.016765590757131577, - 0.03656992316246033, - -0.12758934497833252, - -0.06662915647029877, - -0.011847520247101784, - -0.04146898165345192, - -0.05854378640651703, - 0.05294590815901756, - -0.06130136176943779, - 0.06894461810588837, - -0.0754314661026001, - 0.11578963696956635, - -0.004171848297119141, - -0.09924408793449402, - -0.05959136411547661, - 0.053625643253326416, - -0.04109543561935425, - 0.0036542071029543877, - 0.06296193599700928, - 0.013312599621713161, - 0.0511101633310318, - -0.0864224061369896, - 0.0662599727511406, - -0.0013344483450055122, - -0.0021012951619923115, - -0.06593005359172821, - -0.05514055863022804, - -0.00924589578062296, - -0.013202570378780365, - -0.024397898465394974, - -0.04346625134348869, - 0.0026541510596871376, - 0.01563926972448826, - -0.013218116015195847, - 0.04669560492038727, - 0.09310673177242279, - 0.007529200986027718, - -0.12247913330793381 - ] - }, - "p245_211.wav": { - "name": "p245", - "embedding": [ - 0.05561555176973343, - 0.07476101815700531, - -0.052211008965969086, - 0.026955675333738327, - -0.05322640389204025, - 0.03661806508898735, - -0.1373979151248932, - 0.1361597180366516, - -0.012683428823947906, - 0.1356649398803711, - -0.0324353352189064, - 0.12370516359806061, - 0.006509109400212765, - -0.17643816769123077, - -0.013529859483242035, - 0.03817180171608925, - -0.05228463560342789, - -0.037346456199884415, - -0.06533680856227875, - -0.03281663358211517, - 0.04387222230434418, - 0.050544463098049164, - 0.012072822079062462, - -0.04519437626004219, - 0.029870914295315742, - 0.06636123359203339, - -0.0035710344091057777, - 0.022054746747016907, - 0.005078745074570179, - -0.07734794914722443, - -0.031176943331956863, - 0.08020225167274475, - -0.06060321256518364, - 0.0051995860412716866, - 0.03883940726518631, - -0.036200523376464844, - -0.008651331067085266, - -0.05984622240066528, - -0.03858014941215515, - 0.036591291427612305, - -0.04583512246608734, - 0.08515188097953796, - 0.034839026629924774, - -0.01952531933784485, - 0.048758406192064285, - 0.017685972154140472, - -0.009091068059206009, - -0.053028590977191925, - -0.08681647479534149, - 0.18202757835388184, - 0.07922704517841339, - -0.0011413302272558212, - -0.07443785667419434, - -0.04456184059381485, - 0.08431188017129898, - -0.010584240779280663, - -0.11034146696329117, - -0.04460762068629265, - 0.0503133088350296, - 0.13076087832450867, - -0.036837439984083176, - -0.03333016484975815, - 0.04087750241160393, - 0.11446449160575867, - 0.08727821707725525, - 0.05246981978416443, - 0.09329789131879807, - 0.12436968088150024, - -0.015837140381336212, - 0.03008127771317959, - 0.057855479419231415, - 0.08494603633880615, - 0.06157143414020538, - -0.008879698812961578, - 0.04087744653224945, - -0.010015686973929405, - -0.009288820438086987, - -0.06433969736099243, - -0.02304484322667122, - -0.005173154175281525, - 0.02611020766198635, - 0.021895278245210648, - 0.027947112917900085, - 0.06532160937786102, - -0.03830118477344513, - 0.04961472749710083, - 0.06292508542537689, - -0.048523757606744766, - 0.046999916434288025, - 0.033453889191150665, - 0.026609007269144058, - 0.05786164849996567, - -0.11185987293720245, - -0.09477086365222931, - 0.04972974210977554, - 0.00779179111123085, - 0.01772131398320198, - 0.05159105360507965, - 0.05798032879829407, - -0.01643475331366062, - 0.12167476117610931, - 0.038890138268470764, - -0.034270405769348145, - 0.012571039609611034, - -0.08048106729984283, - 0.1291421353816986, - 0.0926733911037445, - -0.03286352753639221, - 0.043652333319187164, - -0.061568863689899445, - 0.07348719239234924, - 0.02780885249376297, - -0.13319814205169678, - -0.0759279727935791, - 0.04850144684314728, - -0.012471156194806099, - -0.01813753880560398, - 0.13866285979747772, - 0.009152228012681007, - 0.06203901022672653, - 0.10936550796031952, - -0.08230889588594437, - -0.04436946660280228, - -0.027178756892681122, - 0.06267385929822922, - -0.10013187676668167, - 0.06900951266288757, - 0.05117321386933327, - -0.01755327172577381, - 0.02061193250119686, - 0.0841592475771904, - -0.005175595637410879, - 0.0025618202053010464, - -0.02132461965084076, - -0.006105925887823105, - 0.040046803653240204, - -0.005014043301343918, - -0.014901263639330864, - 0.02035597339272499, - 0.017970576882362366, - 0.055543072521686554, - -0.028462860733270645, - -0.026065878570079803, - -0.119926318526268, - 0.03612257540225983, - 0.0034357786644250154, - 0.07882676273584366, - -0.023357613012194633, - 0.0021365750581026077, - -0.0362718403339386, - -0.07706248760223389, - -0.0027817520312964916, - -0.019782818853855133, - 0.060455694794654846, - -0.008558814413845539, - -0.004156298004090786, - 0.12639448046684265, - 0.02850279211997986, - 0.02800658345222473, - -0.0064366040751338005, - -0.017596498131752014, - 0.017183849588036537, - 0.05843152850866318, - -0.08233487606048584, - -0.07428313791751862, - -0.02307450771331787, - -0.0003148764371871948, - -0.00482788123190403, - 0.055707767605781555, - 0.033807434141635895, - 0.021727226674556732, - 0.02055608108639717, - -0.08225865662097931, - 0.003446632996201515, - -0.0926632434129715, - -0.05106983706355095, - -0.012522444128990173, - -0.03198954463005066, - -0.05880741775035858, - 0.080826535820961, - 0.007645905017852783, - 0.047904014587402344, - -0.047136273235082626, - -0.06485400348901749, - -0.06541036814451218, - 0.04404671490192413, - 0.06206110119819641, - -0.03320083022117615, - 0.009351923130452633, - 0.05454473942518234, - 0.0026818979531526566, - 0.011116365902125835, - 0.07128830254077911, - 0.0951414704322815, - -0.015848718583583832, - 0.008449976332485676, - -0.06262824684381485, - 0.13949379324913025, - 0.06430038064718246, - -0.06512638181447983, - -0.07184892892837524, - -0.022798646241426468, - -0.07825500518083572, - 0.003076508641242981, - -0.022325653582811356, - 0.02487379126250744, - 0.04365435242652893, - 0.013782620429992676, - -0.09706795960664749, - -0.08698441088199615, - 0.0768311470746994, - -0.08895616978406906, - -0.005962833762168884, - -0.09124652296304703, - 0.03530086204409599, - 0.11600761115550995, - 0.039607878774404526, - -0.03638194501399994, - -0.03423493728041649, - 0.03955703228712082, - -0.017453700304031372, - 0.027179241180419922, - 0.04660420119762421, - 0.06128426268696785, - -0.11945350468158722, - -0.013160161674022675, - -0.0415797233581543, - 0.0394231341779232, - -0.04532665014266968, - 0.11346608400344849, - 0.03232453763484955, - -0.0451977513730526, - -0.09722869098186493, - 0.056215204298496246, - -0.00927736982703209, - 0.0627959594130516, - 0.02523762360215187, - 0.06942947208881378, - 0.06505091488361359, - -0.07707616686820984, - 0.10791420191526413, - 0.05018983408808708, - -0.029584821313619614, - -0.07997827231884003, - -0.06634309887886047, - -0.016911637037992477, - 0.048534516245126724, - 0.036889348179101944, - -0.07415550947189331, - -0.010050700977444649, - 0.0272953100502491, - -0.012888816185295582, - 0.057177603244781494, - 0.11965953558683395, - 0.06349019706249237, - -0.11336217820644379 - ] - }, - "p245_165.wav": { - "name": "p245", - "embedding": [ - 0.03967594727873802, - 0.11585744470357895, - -0.008639282546937466, - 0.020129162818193436, - -0.06774327158927917, - 0.0625583678483963, - -0.11016085743904114, - 0.15146467089653015, - -0.04860122501850128, - 0.13405165076255798, - -0.08476852625608444, - 0.12267416715621948, - -0.04478985071182251, - -0.16407841444015503, - -0.03766641393303871, - 0.06088217720389366, - -0.040658533573150635, - -0.024455390870571136, - -0.037225570529699326, - -0.025911470875144005, - 0.02810397557914257, - 0.018418874591588974, - 0.02706461399793625, - 0.023228801786899567, - 0.02667958103120327, - 0.06969434022903442, - 0.00436252448707819, - 0.05329588055610657, - 0.025567099452018738, - -0.03724467381834984, - -0.04781217500567436, - 0.10602779686450958, - -0.049003686755895615, - 0.02519882097840309, - 0.06171729415655136, - -0.013418648391962051, - 0.0024574301205575466, - -0.04842984676361084, - -0.00952373631298542, - -0.0033513978123664856, - -0.036917783319950104, - 0.07925011217594147, - 0.023896804079413414, - 0.0006462677265517414, - 0.03923942893743515, - 0.036784667521715164, - -0.012810589745640755, - -0.04202618822455406, - -0.10374557226896286, - 0.15303929150104523, - 0.07213838398456573, - -0.026199575513601303, - -0.0721045583486557, - -0.0621412992477417, - 0.10370802134275436, - -0.0309724360704422, - -0.11170091480016708, - -0.04647126793861389, - 0.08283820748329163, - 0.13622578978538513, - -0.028179805725812912, - -0.034623660147190094, - 0.0015617292374372482, - 0.13400229811668396, - 0.044177573174238205, - 0.09309019148349762, - 0.05910392850637436, - 0.1103207916021347, - -0.035859934985637665, - 0.030682718381285667, - 0.0537598691880703, - 0.05562162399291992, - 0.03778868168592453, - -0.008430171757936478, - 0.022472640499472618, - -0.014264455996453762, - -0.0016798058059066534, - 0.02416589856147766, - -0.03488977998495102, - -0.023770660161972046, - -0.037995595484972, - 0.01511642336845398, - -0.015401272103190422, - -0.0016783864703029394, - -0.012259754352271557, - 0.07910149544477463, - 0.027622051537036896, - -0.0008163368329405785, - 0.0767674595117569, - 0.04940398782491684, - -0.011513065546751022, - 0.06224565953016281, - -0.08076849579811096, - -0.07767949253320694, - 0.020146973431110382, - -0.010552426800131798, - 0.02722552977502346, - 0.07289230078458786, - 0.026804868131875992, - -0.004942950326949358, - 0.11428235471248627, - 0.06732738763093948, - -0.006283899303525686, - 0.03265165910124779, - -0.09857062995433807, - 0.1445649266242981, - 0.0813715010881424, - -0.02178370952606201, - 0.04157993942499161, - -0.03250889480113983, - 0.07710427790880203, - 0.06216999143362045, - -0.12639182806015015, - -0.07282953709363937, - 0.0034495964646339417, - 0.008697226643562317, - -0.030725397169589996, - 0.08657179772853851, - -0.025908906012773514, - 0.030586540699005127, - 0.09950512647628784, - -0.07126377522945404, - -0.055402129888534546, - -0.019063675776124, - 0.034799061715602875, - -0.0755910575389862, - 0.04377538710832596, - 0.053865931928157806, - -0.0034394979011267424, - 0.02299828827381134, - 0.0909913033246994, - 0.0041182758286595345, - 0.0004711151123046875, - 0.05070638656616211, - -0.057587310671806335, - 0.009657394140958786, - -0.016324883326888084, - 0.004814613610506058, - 0.046114277094602585, - 0.056198835372924805, - 0.05687164515256882, - -0.0037865196354687214, - -0.0046349624171853065, - -0.09198613464832306, - 0.008206354454159737, - 0.0464017391204834, - 0.061579763889312744, - -0.011508050374686718, - -0.02121482416987419, - -0.0332116037607193, - -0.06690096855163574, - -0.0002730429987423122, - 0.006457747425884008, - 0.0766737163066864, - -0.04605969041585922, - 0.004488477949053049, - 0.11394591629505157, - 0.03200026601552963, - -0.015776630491018295, - -0.07389393448829651, - -0.025715522468090057, - 0.006654556840658188, - 0.048764050006866455, - -0.07982741296291351, - -0.07480873912572861, - 0.005237420555204153, - 0.03231421113014221, - -0.022735368460416794, - 0.06632789224386215, - 0.04875322803854942, - 0.008680691942572594, - 0.0384768545627594, - -0.06221424788236618, - 0.024033470079302788, - -0.093968465924263, - -0.05359342694282532, - -0.01922314614057541, - -0.022807035595178604, - -0.025805925950407982, - 0.06608009338378906, - 0.015927810221910477, - 0.05658772215247154, - 0.016445299610495567, - -0.08115064352750778, - -0.07686804980039597, - 0.07033812999725342, - 0.06715753674507141, - -0.0018075741827487946, - 0.06631970405578613, - 0.06917589157819748, - -0.047905974090099335, - 0.0630243793129921, - 0.06990984827280045, - 0.09791704267263412, - -0.03824529051780701, - 0.02791735529899597, - -0.0748954564332962, - 0.054023947566747665, - 0.07346709817647934, - -0.12069100141525269, - -0.09216158837080002, - -0.039735909551382065, - -0.043230753391981125, - 0.037867799401283264, - -0.029833585023880005, - 0.0035556077491492033, - 0.03954966366291046, - -0.0061808316968381405, - -0.08369222283363342, - -0.09028251469135284, - 0.09089213609695435, - -0.07503612339496613, - 0.00924255046993494, - -0.06325525790452957, - 0.039707720279693604, - 0.08755951374769211, - 0.03303712233901024, - -0.034828610718250275, - -0.0016722469590604305, - 0.05430574342608452, - -0.031120292842388153, - -0.010548003017902374, - 0.037798333913087845, - 0.0297946035861969, - -0.08675667643547058, - 0.014282351359724998, - -0.06989174336194992, - 0.07082843780517578, - -0.038404837250709534, - 0.16890528798103333, - 0.0020773860160261393, - -0.04848208278417587, - -0.07494451105594635, - 0.029797043651342392, - -0.03563976287841797, - 0.03672938048839569, - 0.035480476915836334, - 0.05658628046512604, - 0.014400872401893139, - -0.04764615744352341, - 0.14371421933174133, - 0.033516138792037964, - -0.061540957540273666, - -0.059838876128196716, - -0.0389665886759758, - -0.04797103628516197, - 0.02227701246738434, - 0.030173322185873985, - -0.09946665167808533, - -0.025316527113318443, - 0.011935308575630188, - -0.03308209031820297, - 0.08439870923757553, - 0.14766719937324524, - 0.08619862049818039, - -0.1089140772819519 - ] - }, - "p245_356.wav": { - "name": "p245", - "embedding": [ - 0.04086939990520477, - 0.08951200544834137, - -0.026374438777565956, - 0.03856663405895233, - -0.06730605661869049, - 0.0873529389500618, - -0.10553879290819168, - 0.11942847073078156, - -0.06356222182512283, - 0.151752769947052, - -0.06456775963306427, - 0.10343065857887268, - -0.03862103819847107, - -0.16911888122558594, - -0.03482303395867348, - 0.05769289284944534, - -0.06591907143592834, - -0.043339088559150696, - -0.06732074916362762, - -0.022766653448343277, - 0.03342362493276596, - 0.040194205939769745, - 0.01719977706670761, - 0.0039030457846820354, - 0.03261745721101761, - 0.06683658808469772, - -0.014979502186179161, - 0.030012287199497223, - 0.008016941137611866, - -0.08423100411891937, - -0.04582330584526062, - 0.10858146101236343, - -0.04576100409030914, - 0.025592606514692307, - 0.032217759639024734, - 0.0006537479348480701, - 0.004875914193689823, - -0.06298317015171051, - -0.019257143139839172, - 0.0005593490786850452, - -0.049346521496772766, - 0.07798685878515244, - 0.025978393852710724, - 0.0004016320453956723, - 0.02908991277217865, - -0.006298460997641087, - -0.033271800726652145, - -0.05221286416053772, - -0.0937284529209137, - 0.18031814694404602, - 0.07851989567279816, - -0.012121371924877167, - -0.05992363393306732, - -0.07952374219894409, - 0.10676153004169464, - -0.005858476273715496, - -0.14307348430156708, - -0.053222015500068665, - 0.07925372570753098, - 0.16216279566287994, - -0.020424779504537582, - -0.018776120617985725, - 0.0074111116118729115, - 0.1364484429359436, - 0.04707653820514679, - 0.09105082601308823, - 0.07038827240467072, - 0.10942619293928146, - 0.0017424310790374875, - 0.02338968962430954, - 0.07447397708892822, - 0.05923231691122055, - 0.06232087314128876, - -0.009397023357450962, - 0.03479659929871559, - -0.016016103327274323, - -0.015911351889371872, - -0.0009062483441084623, - -0.03415266424417496, - -0.023133162409067154, - -0.021057307720184326, - 0.005176630802452564, - 0.009483702480793, - 0.010469830594956875, - -0.01430918462574482, - 0.04501991719007492, - 0.034592047333717346, - -0.02202957309782505, - 0.06608723104000092, - 0.048086170107126236, - 0.009918369352817535, - 0.060980021953582764, - -0.06518412381410599, - -0.08466757833957672, - 0.02336093969643116, - 0.015045255422592163, - 0.026683226227760315, - 0.06649713963270187, - 0.033746909350156784, - -0.019483964890241623, - 0.1067667081952095, - 0.03334623947739601, - -0.002106674946844578, - 0.01401473954319954, - -0.10387741029262543, - 0.13408410549163818, - 0.08653315901756287, - -0.00869319960474968, - 0.04028468579053879, - -0.029592256993055344, - 0.08483413606882095, - 0.07535626739263535, - -0.14697687327861786, - -0.06821461021900177, - 0.01582537591457367, - -0.01609744317829609, - -0.02322383224964142, - 0.10218681395053864, - 0.0051074945367872715, - 0.022427907213568687, - 0.1023264229297638, - -0.09726029634475708, - -0.04470622539520264, - -0.01842515729367733, - 0.04056418687105179, - -0.08730257302522659, - 0.04035990685224533, - 0.04516203701496124, - -0.01682428829371929, - 0.018705403432250023, - 0.08134029805660248, - -0.008416708558797836, - 0.00244336761534214, - 0.02857125736773014, - -0.06176706403493881, - 0.027274195104837418, - -0.02988981455564499, - 0.0030025558080524206, - 0.05451573058962822, - 0.03475082665681839, - 0.054191768169403076, - -0.029301758855581284, - -0.019413653761148453, - -0.0967000424861908, - 0.01952831819653511, - 0.030948691070079803, - 0.06650516390800476, - -0.01649133302271366, - 0.0050955163314938545, - -0.026191718876361847, - -0.08118981868028641, - 0.03647289425134659, - -0.025159452110528946, - 0.08692571520805359, - -0.013840983621776104, - -0.014536605216562748, - 0.12050910294055939, - 0.02689511328935623, - -0.015167511999607086, - -0.06247050315141678, - -0.026502516120672226, - 0.021901793777942657, - 0.06385867297649384, - -0.08855246007442474, - -0.05560731887817383, - 0.017624270170927048, - 0.02216988615691662, - -0.01880536414682865, - 0.05033149570226669, - 0.046090055257081985, - 0.01750963181257248, - 0.028113212436437607, - -0.05739482492208481, - 0.011944243684411049, - -0.09569239616394043, - -0.05275866016745567, - 0.000302922329865396, - -0.054119616746902466, - -0.017465630546212196, - 0.08965660631656647, - 0.014668621122837067, - 0.02036041021347046, - -0.01609942875802517, - -0.08675159513950348, - -0.06559126079082489, - 0.07725353538990021, - 0.05012989044189453, - 0.003195937257260084, - 0.0420549213886261, - 0.06380848586559296, - -0.02766098827123642, - 0.03873578831553459, - 0.0595577135682106, - 0.11881475150585175, - -0.029372617602348328, - 0.024797804653644562, - -0.07991312444210052, - 0.08599613606929779, - 0.07942035794258118, - -0.09733115136623383, - -0.08269278705120087, - -0.03404483199119568, - -0.05191946402192116, - 0.04673101380467415, - -0.041733354330062866, - -0.00048792490269988775, - 0.03443985804915428, - -0.0145350880920887, - -0.10161145031452179, - -0.0894225686788559, - 0.11258187890052795, - -0.07217399775981903, - -0.011903337202966213, - -0.08650445938110352, - 0.0452762097120285, - 0.0853215903043747, - 0.0592464804649353, - -0.03526864945888519, - 0.027561983093619347, - 0.07129386067390442, - -0.05256011337041855, - 0.007490691263228655, - 0.05711611732840538, - 0.014849871397018433, - -0.09769967198371887, - -0.012917572632431984, - -0.07902374863624573, - 0.05670669674873352, - -0.053847476840019226, - 0.15977267920970917, - -0.003217934397980571, - -0.05182019621133804, - -0.07304446399211884, - 0.05916804075241089, - -0.025032419711351395, - 0.048482805490493774, - 0.044112756848335266, - 0.07247015833854675, - 0.04754685238003731, - -0.05276981741189957, - 0.12296392023563385, - 0.039938054978847504, - -0.02849949151277542, - -0.0488908514380455, - -0.03706773743033409, - -0.04777908697724342, - 0.0248568132519722, - -0.003756074234843254, - -0.09971877932548523, - 0.010898696258664131, - 0.026814734563231468, - -0.015190057456493378, - 0.07238695025444031, - 0.1374489814043045, - 0.08575549721717834, - -0.10293564200401306 - ] - }, - "p245_399.wav": { - "name": "p245", - "embedding": [ - 0.043407708406448364, - 0.08514630794525146, - -0.004393481649458408, - -0.017237260937690735, - -0.027270518243312836, - 0.038521382957696915, - -0.11699099838733673, - 0.1150565892457962, - -0.03607865050435066, - 0.1637323647737503, - -0.06965497136116028, - 0.07763926684856415, - -0.009350992739200592, - -0.14831416308879852, - -0.04423484951257706, - 0.012057676911354065, - -0.07149875909090042, - 0.020692303776741028, - -0.08802884817123413, - 0.0032151222694665194, - 0.07314873486757278, - 0.058580655604600906, - 0.02529294788837433, - -0.10331368446350098, - 0.03364839032292366, - 0.03980763256549835, - 0.06568023562431335, - 0.05860733613371849, - 0.04895852133631706, - -0.10105137526988983, - -0.010964975692331791, - 0.1181853711605072, - -0.02922952175140381, - 0.03131198137998581, - 0.04253586754202843, - -0.03794465959072113, - 0.009031357243657112, - -0.0376671701669693, - -0.040401890873909, - 0.06202126294374466, - -0.02167307771742344, - 0.06562337279319763, - 0.006518195383250713, - 0.011429822072386742, - 0.05421014875173569, - 0.03634736314415932, - -0.025013383477926254, - -0.08090966939926147, - -0.05387640744447708, - 0.1955152153968811, - 0.06107282638549805, - -0.005303638055920601, - -0.07695049792528152, - -0.08275580406188965, - 0.08707845211029053, - -0.009905875660479069, - -0.08993817865848541, - -0.034108612686395645, - 0.054829783737659454, - 0.1368941068649292, - -0.028208032250404358, - -0.015052329748868942, - 0.022843828424811363, - 0.0715927854180336, - -0.0010192799381911755, - 0.044366396963596344, - 0.07649503648281097, - 0.03229347988963127, - 0.05760540813207626, - 0.10044670850038528, - -0.003477548249065876, - 0.07733965665102005, - 0.0009144004434347153, - -0.022935424000024796, - 0.04968501254916191, - -0.005019399803131819, - -0.06939955055713654, - -0.0021369503811001778, - -0.014622367918491364, - 0.028308648616075516, - 0.03437855467200279, - 0.03125846013426781, - 0.019676368683576584, - 0.004109161905944347, - -0.04377274960279465, - 0.04807640612125397, - -0.0622292198240757, - -0.01346023939549923, - 0.048401277512311935, - -0.0034759631380438805, - 0.026329033076763153, - 0.03414757549762726, - -0.05391175299882889, - -0.17603802680969238, - -0.018477359786629677, - 0.0055984798818826675, - -0.01211104542016983, - 0.02662937343120575, - 0.04154057800769806, - -0.06734733283519745, - 0.09840120375156403, - 0.027053028345108032, - -0.031699128448963165, - 0.029967427253723145, - -0.09623030573129654, - 0.06701046228408813, - 0.07976463437080383, - 0.019208690151572227, - 0.032371360808610916, - -0.09073149412870407, - 0.09181475639343262, - 0.0308143999427557, - -0.1284741461277008, - -0.0825284868478775, - 0.04926585406064987, - -0.04131811857223511, - 0.023724224418401718, - 0.09970830380916595, - 0.00023345567751675844, - -0.019320406019687653, - 0.08103495836257935, - -0.08968541026115417, - -0.042313579469919205, - -0.040758296847343445, - 0.06690813601016998, - -0.06204451620578766, - 0.0415092371404171, - 0.008520049042999744, - -0.05466149002313614, - -0.01350567676126957, - 0.07163883745670319, - -0.019098002463579178, - 0.04717077314853668, - -0.018486324697732925, - -0.020546559244394302, - 0.04924091324210167, - -0.08019986003637314, - -0.002873710822314024, - 0.04371439293026924, - 0.09363424777984619, - 0.04580260440707207, - 0.014807956293225288, - -0.09634441137313843, - -0.06610545516014099, - 0.0019455874571576715, - 0.0017015831544995308, - 0.025520039722323418, - -0.01260680053383112, - -0.001566617051139474, - -0.06118291988968849, - -0.05729690566658974, - 0.0018601319752633572, - -0.017036782577633858, - 0.0833219438791275, - 0.022019457072019577, - 0.017744986340403557, - 0.1212051659822464, - -0.023838693276047707, - -0.01061723567545414, - -0.02597096934914589, - -0.028454719111323357, - 0.03623758256435394, - 0.02798575349152088, - -0.046151597052812576, - -0.04130226746201515, - 0.006558964028954506, - -0.02732974663376808, - 0.007865079678595066, - -0.010325999930500984, - -0.00023810472339391708, - 0.024877462536096573, - 0.055413391441106796, - -0.08336721360683441, - -0.01316053606569767, - -0.12758152186870575, - -0.02248723804950714, - -0.020609617233276367, - -0.039464905858039856, - -0.06324316561222076, - 0.09323467314243317, - -0.03642461821436882, - -0.011015796102583408, - -0.011010970920324326, - -0.07861576229333878, - -0.026543892920017242, - 0.08534091711044312, - 0.09695500880479813, - 0.023573437705636024, - 0.03926955536007881, - 0.02396240644156933, - 0.006417909637093544, - 0.043264664709568024, - 0.07744477689266205, - 0.08910040557384491, - 0.03543535992503166, - -0.02767322212457657, - -0.04132278636097908, - 0.11849206686019897, - 0.03320126235485077, - -0.06905090808868408, - -0.08573455363512039, - -0.02476121112704277, - -0.08664263784885406, - 0.030558835715055466, - -0.006718845572322607, - 0.00779906939715147, - 0.019522856920957565, - 0.016397511586546898, - -0.096031054854393, - -0.026959164068102837, - 0.05537264794111252, - -0.07411211729049683, - -0.050628259778022766, - -0.02682347409427166, - 0.026658786460757256, - 0.1291964203119278, - 0.07049524039030075, - 0.014440370723605156, - -0.03224454075098038, - 0.06706452369689941, - -0.11083965748548508, - -0.029099933803081512, - -0.023874379694461823, - -0.025118602439761162, - -0.05290934070944786, - 0.06555207818746567, - -0.03741598501801491, - 0.03360322117805481, - -0.09411516040563583, - 0.09540413320064545, - -0.02489689737558365, - -0.08482369035482407, - -0.09301001578569412, - 0.06976577639579773, - -0.046728700399398804, - 0.021285828202962875, - 0.030839871615171432, - 0.01062258891761303, - 0.07393287122249603, - -0.12058000266551971, - 0.10721905529499054, - 0.004731575958430767, - 0.013897083699703217, - -0.061224132776260376, - -0.07533226162195206, - -0.015477333217859268, - -0.010902968235313892, - 0.001196539495140314, - -0.03732926771044731, - 0.009925230406224728, - 0.012417476624250412, - -0.026409873738884926, - 0.049373526126146317, - 0.08713968098163605, - 0.010785295628011227, - -0.11902668327093124 - ] - }, - "p245_292.wav": { - "name": "p245", - "embedding": [ - 0.02978472411632538, - 0.00844737607985735, - -0.022143715992569923, - 0.07281013578176498, - -0.02330043911933899, - 0.07798058539628983, - -0.10541976243257523, - 0.07966556400060654, - -0.05141333118081093, - 0.1361052691936493, - -0.08067888021469116, - 0.05543431267142296, - -0.010731135495007038, - -0.17521022260189056, - -0.0180555060505867, - 0.061209071427583694, - -0.05542079731822014, - -0.0006583239301107824, - -0.08810283988714218, - 0.02877158857882023, - 0.06928957253694534, - 0.07792311161756516, - 0.02024732157588005, - -0.051773060113191605, - 0.010985376313328743, - 0.021596424281597137, - 0.01120042335242033, - 0.07479297369718552, - 0.04911467805504799, - -0.09630712866783142, - -0.005978746805340052, - 0.12200847268104553, - -0.01801954209804535, - 0.014994977973401546, - 0.030241530388593674, - 0.0155265424400568, - 0.0009099359740503132, - -0.03831105679273605, - -0.028641412034630775, - 0.016760200262069702, - -0.07368175685405731, - 0.05674555152654648, - 0.03237203136086464, - 0.03398388996720314, - 0.08281849324703217, - -0.008106161840260029, - -0.08759444206953049, - -0.07100453972816467, - -0.1120789647102356, - 0.1613544225692749, - 0.05960554629564285, - 0.009728522971272469, - -0.044778719544410706, - -0.07683882862329483, - 0.0909070074558258, - 0.01107009407132864, - -0.12459607422351837, - -0.08191263675689697, - 0.09382978826761246, - 0.1923878788948059, - -0.0019968939013779163, - 0.013254500925540924, - 0.03994491696357727, - 0.08640435338020325, - 0.04014137014746666, - 0.09069765359163284, - 0.053090475499629974, - 0.06117432564496994, - 0.09111525863409042, - 0.03566819801926613, - 0.01563529670238495, - 0.07747708261013031, - 0.0007923566736280918, - 0.0036026551388204098, - 0.0272341500967741, - 0.034250639379024506, - -0.04543229937553406, - 0.0031557055190205574, - -0.031035585328936577, - 0.0502319298684597, - 0.034504495561122894, - 0.018384940922260284, - 0.04751954227685928, - -0.006692108232527971, - -0.0625535175204277, - 0.043901484459638596, - -0.034086961299180984, - 0.0001770639355527237, - 0.0413428395986557, - -0.024855032563209534, - 0.001108216238208115, - 0.023319272324442863, - -0.01741201803088188, - -0.1326574683189392, - -0.04704342782497406, - 0.03093782067298889, - -0.021161584183573723, - 0.006018002517521381, - -0.00518689164891839, - -0.05481847748160362, - 0.12718717753887177, - -0.026280276477336884, - -0.027132853865623474, - 0.06241834536194801, - -0.08875400573015213, - 0.07980675250291824, - 0.05902193859219551, - 0.053044773638248444, - 0.050138067454099655, - -0.04974028468132019, - 0.060327544808387756, - 0.0655059739947319, - -0.14963261783123016, - -0.028454886749386787, - 0.06327219307422638, - -0.012809679843485355, - -0.007210670039057732, - 0.14251743257045746, - 0.024538135156035423, - -0.011140108108520508, - 0.11241748183965683, - -0.11833605170249939, - -0.033140141516923904, - 0.007824218831956387, - 0.06312833726406097, - -0.0639585480093956, - 0.053029920905828476, - -0.026817718520760536, - -0.0368630476295948, - 0.008135326206684113, - 0.07525601238012314, - -0.03474194183945656, - 0.02815941907465458, - 0.0048700966872274876, - -0.05952896922826767, - 0.0734386220574379, - -0.12032050639390945, - -0.010470408014953136, - 0.09427011758089066, - 0.05006031692028046, - 0.08284653723239899, - -0.029075944796204567, - -0.09600839763879776, - -0.11729686707258224, - -0.010005713440477848, - -0.0068902322091162205, - 0.07979514449834824, - 0.00613864092156291, - 0.026466138660907745, - -0.0870661586523056, - -0.07945363968610764, - 0.0769726112484932, - -0.05543803796172142, - 0.11835591495037079, - 0.0162125825881958, - 0.0027792956680059433, - 0.052065782248973846, - -0.049297869205474854, - 0.009339897893369198, - -0.04202976077795029, - -0.0557120218873024, - -0.0009214148158207536, - 0.023042500019073486, - -0.05398085340857506, - -0.0027062115259468555, - 0.044533368200063705, - 0.025707069784402847, - -0.011558673344552517, - -0.010034295730292797, - 0.012893454171717167, - 0.03819505125284195, - 0.020159991458058357, - -0.04656371846795082, - -0.006478699389845133, - -0.094541534781456, - -0.021168410778045654, - 0.011217146180570126, - -0.01657198742032051, - -0.0295425932854414, - 0.10062684118747711, - 0.008051402866840363, - -0.01711026020348072, - -0.001680716872215271, - -0.09159387648105621, - -0.09306102991104126, - 0.09266086667776108, - 0.04368305578827858, - 0.011623713187873363, - 0.05852610990405083, - 0.03634224086999893, - -0.03923001140356064, - 0.044802065938711166, - 0.05468299239873886, - 0.0972294807434082, - 0.046213969588279724, - -0.02021324262022972, - -0.05593721196055412, - 0.11970607936382294, - 0.09194639325141907, - -0.04186704382300377, - -0.0506104975938797, - 0.014429462142288685, - -0.11097955703735352, - 0.08465274423360825, - -0.03146445006132126, - -0.040149785578250885, - 0.053672537207603455, - -0.0060563478618860245, - -0.13333512842655182, - -0.019666306674480438, - 0.05323227122426033, - -0.1026659831404686, - -0.06263666599988937, - -0.04058093577623367, - 0.011989978142082691, - 0.10436394065618515, - 0.04677855595946312, - 0.030187595635652542, - -0.002272543963044882, - 0.07451274991035461, - -0.1316886693239212, - 0.0020504635758697987, - 0.05662250518798828, - -0.03712950646877289, - -0.07926171272993088, - 0.0037090876139700413, - -0.07958752661943436, - 0.00390845350921154, - -0.05563895404338837, - 0.09774356335401535, - -0.02173725515604019, - -0.034459371119737625, - -0.05764124169945717, - 0.08004993945360184, - -0.03101935051381588, - 0.04732012003660202, - 0.04447893425822258, - 0.05280740559101105, - 0.11529012024402618, - -0.06742821633815765, - 0.11136690527200699, - 0.021314358338713646, - -0.006134507711976767, - -0.037167228758335114, - -0.04780614748597145, - -0.06523802131414413, - -0.028220772743225098, - 0.003216435434296727, - -0.06819122284650803, - 0.005061344243586063, - 0.0370168499648571, - -0.01879378966987133, - 0.032584886997938156, - 0.08438259363174438, - 0.009825991466641426, - -0.09319378435611725 - ] - }, - "p245_079.wav": { - "name": "p245", - "embedding": [ - 0.06516256183385849, - 0.09580160677433014, - -0.010024912655353546, - 0.028830762952566147, - -0.0722404196858406, - 0.04410260170698166, - -0.12284588813781738, - 0.140308678150177, - -0.026371777057647705, - 0.13703271746635437, - -0.07013494521379471, - 0.14145883917808533, - -0.0287533737719059, - -0.1753140091896057, - -0.020089223980903625, - 0.06814181804656982, - -0.024494217708706856, - -0.01852126605808735, - -0.04487146437168121, - -0.009977125562727451, - 0.023365594446659088, - 0.026251815259456635, - 0.06408986449241638, - -0.009501132182776928, - 0.04037458822131157, - 0.07798200845718384, - 0.011470229364931583, - 0.06849347054958344, - 0.024142172187566757, - -0.07543677091598511, - -0.043644312769174576, - 0.09946713596582413, - -0.06297313421964645, - 0.01536078006029129, - 0.051502976566553116, - -0.021028434857726097, - -0.013401273638010025, - -0.05042524263262749, - -0.019526313990354538, - -0.0067052049562335014, - -0.03078743815422058, - 0.08218748867511749, - 0.012076299637556076, - -0.029669523239135742, - 0.04701274633407593, - 0.03221958875656128, - -0.0238468237221241, - -0.0433136522769928, - -0.11535975337028503, - 0.14637990295886993, - 0.04629471153020859, - 0.009074930101633072, - -0.09432247281074524, - -0.06899213790893555, - 0.0928945541381836, - -0.04236429184675217, - -0.10814248025417328, - -0.0603962168097496, - 0.06318166851997375, - 0.13227872550487518, - -0.03318799287080765, - -0.04776616394519806, - 0.014100514352321625, - 0.1020800769329071, - 0.07988174259662628, - 0.0888691172003746, - 0.07963944971561432, - 0.10757699608802795, - -0.02693941816687584, - 0.048616521060466766, - 0.04493517428636551, - 0.075970858335495, - 0.0588279590010643, - 0.013869773596525192, - 0.026416122913360596, - -0.003352896310389042, - -0.002936075208708644, - -0.007241982501000166, - -0.016357282176613808, - -0.015565671026706696, - -0.013938527554273605, - 0.015750925987958908, - 0.012026733718812466, - 0.0059774634428322315, - -0.02928123250603676, - 0.07431838661432266, - 0.036998599767684937, - -0.014820186421275139, - 0.06684798002243042, - 0.030558597296476364, - -0.0173952616751194, - 0.06289484351873398, - -0.10084779560565948, - -0.08981823921203613, - 0.01646825112402439, - -0.011834731325507164, - 0.030426006764173508, - 0.05790908262133598, - 0.026028063148260117, - -0.009957386180758476, - 0.11783450096845627, - 0.07251115143299103, - -0.005082995630800724, - 0.03915700316429138, - -0.07243093848228455, - 0.13601046800613403, - 0.08595867455005646, - -0.016306884586811066, - 0.05203995108604431, - -0.03906119614839554, - 0.07126761972904205, - 0.06326884031295776, - -0.12511089444160461, - -0.08278553187847137, - -0.008053545840084553, - -0.022284874692559242, - -0.030374838039278984, - 0.10552652180194855, - -0.027563486248254776, - 0.04734759032726288, - 0.11284604668617249, - -0.09717071056365967, - -0.054251790046691895, - 0.007773173041641712, - 0.031180864199995995, - -0.09953389316797256, - 0.05676734820008278, - 0.04854784160852432, - -0.006961371749639511, - 0.018301382660865784, - 0.10394886136054993, - -0.0035078434739261866, - 0.007843966595828533, - 0.02568798139691353, - -0.061050452291965485, - 0.005224249325692654, - -0.023605231195688248, - -0.0071538230404257774, - 0.07506098598241806, - 0.03730127587914467, - 0.0615386925637722, - -0.0086620282381773, - -0.007373702712357044, - -0.12529276311397552, - 0.011405468918383121, - 0.04152694344520569, - 0.06523949652910233, - -0.016931375488638878, - -0.017557824030518532, - -0.03932113200426102, - -0.060288846492767334, - 0.025387771427631378, - 0.01169002614915371, - 0.06566314399242401, - -0.03005640022456646, - 0.013669880107045174, - 0.1229715421795845, - 0.028635794296860695, - 0.0065623014234006405, - -0.06518053263425827, - -0.03174331411719322, - 0.011019711382687092, - 0.06399239599704742, - -0.09251774847507477, - -0.06803411990404129, - -0.0032121860422194004, - 0.03338535130023956, - -0.02481101080775261, - 0.06714528799057007, - 0.07079502195119858, - 0.022468185052275658, - 0.037124164402484894, - -0.04624837636947632, - 0.013048010878264904, - -0.08079132437705994, - -0.0706033855676651, - -0.00602807616814971, - -0.01950966939330101, - -0.03886004164814949, - 0.066257543861866, - 0.02169523760676384, - 0.06392017006874084, - -0.025257427245378494, - -0.07497726380825043, - -0.09656015038490295, - 0.061889246106147766, - 0.052845295518636703, - -0.0002559491840656847, - 0.05314617604017258, - 0.048261500895023346, - -0.047096386551856995, - 0.06495040655136108, - 0.058088771998882294, - 0.09279659390449524, - -0.034642692655324936, - 0.020721999928355217, - -0.07892473042011261, - 0.07680954039096832, - 0.09880086779594421, - -0.09906453639268875, - -0.09369700402021408, - -0.03440767526626587, - -0.07206651568412781, - 0.050891950726509094, - -0.02989235147833824, - -0.003563639475032687, - 0.06643103063106537, - -0.0022542979568243027, - -0.09432574361562729, - -0.10080718994140625, - 0.08983003348112106, - -0.06773792207241058, - -0.0012895718682557344, - -0.0749431848526001, - 0.035775937139987946, - 0.07154205441474915, - 0.03231631964445114, - -0.028951279819011688, - -0.012004037387669086, - 0.05119956284761429, - -0.03849438950419426, - -0.0009040175937116146, - 0.06436005979776382, - 0.030313212424516678, - -0.07667014002799988, - -0.003539234632626176, - -0.07074956595897675, - 0.04775746911764145, - -0.03263372927904129, - 0.1630285680294037, - -0.008396154269576073, - -0.04302608221769333, - -0.07123927772045135, - 0.028731761500239372, - -0.04127562791109085, - 0.05254625901579857, - 0.046864256262779236, - 0.0590631365776062, - 0.04338300973176956, - -0.07303330302238464, - 0.12959596514701843, - 0.048778362572193146, - -0.05276206508278847, - -0.06825324892997742, - -0.05494856834411621, - -0.05755572021007538, - 0.04025141894817352, - 0.0131063312292099, - -0.09747196733951569, - -0.00620085746049881, - 0.021146811544895172, - -0.027976226061582565, - 0.055900782346725464, - 0.13161638379096985, - 0.06194650009274483, - -0.09125107526779175 - ] - }, - "p245_417.wav": { - "name": "p245", - "embedding": [ - 0.05909836292266846, - 0.08160175383090973, - -0.07030828297138214, - 0.011782796122133732, - 0.025327229872345924, - 0.05053437128663063, - -0.13075393438339233, - 0.07129392772912979, - -0.038319140672683716, - 0.13663902878761292, - -0.04119236022233963, - 0.11303113400936127, - -0.011498070321977139, - -0.10368526726961136, - -0.03302355483174324, - 0.0602126345038414, - -0.015298991464078426, - -0.0010763611644506454, - -0.010557844303548336, - 0.017065340653061867, - 0.06165258586406708, - 0.03136908635497093, - 0.024239016696810722, - -0.05923013389110565, - 0.004103496670722961, - 0.05849559232592583, - 0.019867662340402603, - 0.007513002492487431, - -0.01094362698495388, - -0.026498273015022278, - 0.01610308326780796, - 0.06772201508283615, - 0.0048959869891405106, - 0.04399401322007179, - 0.028874894604086876, - 0.047758735716342926, - -0.01651011034846306, - -0.05631769448518753, - 0.024276209995150566, - 0.016915326938033104, - -0.006811744999140501, - 0.05868542939424515, - 0.011618515476584435, - -0.03999960422515869, - 0.045762963593006134, - -0.05200161039829254, - -0.021532367914915085, - -0.014844749122858047, - -0.05701658874750137, - 0.1442849040031433, - 0.05042952299118042, - 0.06697671860456467, - -0.08402715623378754, - -0.018702922388911247, - 0.08897987753152847, - 0.03815074637532234, - -0.06362417340278625, - -0.043369024991989136, - 0.02607535570859909, - 0.1534719467163086, - -0.0019072418799623847, - -0.04298985004425049, - 0.04340633749961853, - 0.0731189176440239, - 0.0009420793503522873, - 0.04949144646525383, - 0.10599350929260254, - 0.049234434962272644, - 0.04804335534572601, - 0.00664458516985178, - 0.015810616314411163, - 0.09508240222930908, - 0.04241625592112541, - -0.018506541848182678, - 0.02625420317053795, - -0.0387938916683197, - -0.04149240255355835, - -0.019300974905490875, - -0.019704679027199745, - -0.08427698165178299, - -0.04882911965250969, - -0.02197306603193283, - 0.02618379145860672, - 0.03960245102643967, - -0.016376499086618423, - -0.0038973260670900345, - 0.037387698888778687, - -0.09241961687803268, - 0.014897347427904606, - 0.0459207147359848, - 0.008868705481290817, - -0.015156161040067673, - -0.030490398406982422, - -0.11602529883384705, - 0.036987531930208206, - 0.02778133749961853, - 0.007633493281900883, - 0.04099714010953903, - 0.05399581044912338, - 0.03645102679729462, - 0.05131783336400986, - -0.0022190194576978683, - -0.010710250586271286, - -0.04364379122853279, - -0.03711196035146713, - 0.08210805058479309, - 0.11589988321065903, - -0.022554457187652588, - 0.03075755015015602, - -0.06686490774154663, - -0.01652601733803749, - 0.04832708090543747, - -0.08810297399759293, - -0.07225038856267929, - 0.02643495611846447, - 0.00782470591366291, - 0.05593413859605789, - 0.09123110771179199, - 0.04908927530050278, - 0.013989736326038837, - 0.07796026766300201, - -0.07409682869911194, - -0.09257493913173676, - -0.08532830327749252, - 0.04421807825565338, - -0.056917883455753326, - 0.09170624613761902, - 0.057820141315460205, - 0.020159270614385605, - -0.029578659683465958, - 0.04342036321759224, - 0.010445686988532543, - 0.03175807744264603, - -0.053649917244911194, - 0.014682024717330933, - 0.034018997102975845, - -0.06942272186279297, - 0.01105683483183384, - 0.025826385244727135, - 0.012040230445563793, - 0.05236422270536423, - 0.011512226425111294, - -0.02166522853076458, - -0.09067350625991821, - -0.010335113853216171, - 0.0841900110244751, - 0.015186644159257412, - -0.037455059587955475, - -0.05919199436903, - -0.009369528852403164, - -0.04918203130364418, - -0.008586794137954712, - -0.07027163356542587, - 0.08636704832315445, - 0.03705809637904167, - 0.045824263244867325, - 0.0931997075676918, - -0.04799710586667061, - -0.003033669199794531, - -0.022821493446826935, - 0.014738349243998528, - 0.04186870902776718, - 0.00905478373169899, - -0.08448685705661774, - -0.08272877335548401, - -0.036763694137334824, - 0.005915842019021511, - -0.01258518360555172, - 0.02452155016362667, - 0.019416294991970062, - 0.00042718928307294846, - 0.015424338169395924, - -0.04108411446213722, - -0.029329627752304077, - -0.1307343989610672, - -0.04976578801870346, - -0.03194744884967804, - -0.06242218613624573, - -0.001822001300752163, - 0.09731131792068481, - 0.02909584902226925, - 0.0361294224858284, - -0.04363678768277168, - -0.05799331143498421, - -0.06978301703929901, - 0.06613919883966446, - 0.07298628985881805, - -0.010914690792560577, - -0.006618715822696686, - 0.0006062202155590057, - 0.054281141608953476, - 0.014420747756958008, - 0.024333177134394646, - 0.05964489281177521, - -0.025259647518396378, - -0.04551899433135986, - -0.07691792398691177, - 0.08032470941543579, - 0.13576894998550415, - -0.07084605097770691, - -0.05785665661096573, - -0.06607513129711151, - -0.07666939496994019, - 0.004633105359971523, - -0.06901639699935913, - 0.0024745126720517874, - 0.030072888359427452, - -0.06653248518705368, - -0.14836283028125763, - -0.11879001557826996, - 0.04005735367536545, - -0.01500088069587946, - -0.001864453312009573, - -0.03363480046391487, - 0.05235423892736435, - 0.053054485470056534, - 0.0012810584157705307, - -0.03355234116315842, - 0.033964578062295914, - 0.00257265567779541, - -0.054090466350317, - 0.003916524816304445, - -0.005782747641205788, - 0.031482093036174774, - -0.08382150530815125, - -0.0027385219000279903, - -0.05115952342748642, - 0.05881929770112038, - -0.10346367955207825, - 0.10519222915172577, - -0.01679205149412155, - -0.06308574974536896, - -0.07517553120851517, - 0.026690855622291565, - -0.0042991191148757935, - 0.03806775063276291, - -0.0045922622084617615, - 0.03564491868019104, - -0.0004764758050441742, - -0.12449732422828674, - 0.06663791835308075, - 0.07047554850578308, - 0.04356139153242111, - -0.10867809504270554, - -0.04062619060277939, - -0.031341418623924255, - 0.04778260737657547, - -0.026821356266736984, - -0.019748523831367493, - 0.016232892870903015, - 0.0102919340133667, - 0.049607787281274796, - 0.060328833758831024, - 0.09035275876522064, - 0.0076279789209365845, - -0.07072833180427551 - ] - }, - "p245_108.wav": { - "name": "p245", - "embedding": [ - 0.037769027054309845, - 0.0710381492972374, - -0.013538839295506477, - 0.030405599623918533, - -0.048303909599781036, - 0.047502100467681885, - -0.12979720532894135, - 0.13112381100654602, - -0.04121986776590347, - 0.13865065574645996, - -0.06637080013751984, - 0.11918260157108307, - -0.02338600717484951, - -0.17452624440193176, - -0.03334740549325943, - 0.053329914808273315, - -0.052101992070674896, - -0.051867153495550156, - -0.02814045548439026, - -0.015195145271718502, - 0.06074162945151329, - 0.05908415466547012, - 0.027038339525461197, - 0.016313016414642334, - -0.0019269927870482206, - 0.06195680797100067, - 0.00941650103777647, - 0.05909734219312668, - 0.030846452340483665, - -0.06887990236282349, - -0.027073901146650314, - 0.09607156366109848, - -0.035451002418994904, - 0.019882015883922577, - 0.030511513352394104, - -0.006075890269130468, - 0.005407089367508888, - -0.060771238058805466, - -0.027218779549002647, - 0.0007485868409276009, - -0.04762926325201988, - 0.064360111951828, - 0.017738550901412964, - -0.004371512681245804, - 0.044193193316459656, - 0.010321813635528088, - -0.03718484193086624, - -0.049315135926008224, - -0.10986790060997009, - 0.15704680979251862, - 0.08583162724971771, - 0.002673715353012085, - -0.054422348737716675, - -0.08579865097999573, - 0.0989055335521698, - -0.014484390616416931, - -0.11814837157726288, - -0.03308306634426117, - 0.07271839678287506, - 0.16380542516708374, - -0.023201337084174156, - -0.04115494713187218, - 0.04155807942152023, - 0.1233464702963829, - 0.053849734365940094, - 0.07423166930675507, - 0.09269973635673523, - 0.09026002138853073, - -0.01808060333132744, - -0.0031782067380845547, - 0.04294588789343834, - 0.09047387540340424, - 0.04572029411792755, - 0.011087577790021896, - 0.03329905867576599, - 0.020404307171702385, - -0.016010120511054993, - 0.012689856812357903, - -0.02847563847899437, - -0.011781329289078712, - -0.013834763318300247, - 0.02012418769299984, - -0.001295606605708599, - 0.026633528992533684, - -0.01753336563706398, - 0.06517314910888672, - 0.009562328457832336, - 0.001202161773107946, - 0.06457757949829102, - 0.0090591199696064, - 0.026839464902877808, - 0.06940041482448578, - -0.06883049011230469, - -0.08096461743116379, - 0.017309095710515976, - 0.00798952765762806, - 0.030694887042045593, - 0.071352019906044, - 0.026322495192289352, - -0.02666120044887066, - 0.12993334233760834, - 0.031112438067793846, - -0.018255699425935745, - 0.0215463750064373, - -0.1017928346991539, - 0.11137932538986206, - 0.08648931980133057, - -0.022003335878252983, - 0.043162472546100616, - -0.05501672253012657, - 0.07904902845621109, - 0.056521736085414886, - -0.13755005598068237, - -0.07910493016242981, - 0.03956972807645798, - 0.03755289316177368, - -0.01744893193244934, - 0.13272981345653534, - -0.0025059031322598457, - 0.044972460716962814, - 0.10937439650297165, - -0.08695052564144135, - -0.0469745509326458, - -0.013501530513167381, - 0.05740271136164665, - -0.08264053612947464, - 0.058961138129234314, - 0.03909563645720482, - -0.013607785105705261, - 0.00901024229824543, - 0.08045458793640137, - -0.02897498570382595, - 0.01139548234641552, - 0.006714156828820705, - -0.06346580386161804, - 0.019933141767978668, - -0.051351290196180344, - -0.01442717295140028, - 0.04159499332308769, - 0.045513030141592026, - 0.045417528599500656, - -0.010866502299904823, - -0.05763040482997894, - -0.13829928636550903, - 0.013783352449536324, - 0.025993984192609787, - 0.07238723337650299, - -0.003234532428905368, - -0.034839000552892685, - -0.04261712729930878, - -0.0482478104531765, - 0.0030171263497322798, - -0.01660945639014244, - 0.06876339763402939, - -0.026470273733139038, - 0.007127915974706411, - 0.07978830486536026, - 0.014804217964410782, - -0.007156125735491514, - -0.03436718136072159, - -0.05446624383330345, - 0.0011916083749383688, - 0.050004031509160995, - -0.06330541521310806, - -0.06627877056598663, - 0.0073267011903226376, - 0.05267653614282608, - -0.014921151101589203, - 0.0441112220287323, - 0.04526621103286743, - 0.02363879606127739, - 0.027524542063474655, - -0.062001269310712814, - 0.017758777365088463, - -0.11300303786993027, - -0.08872376382350922, - 0.0010788652580231428, - 0.00575434323400259, - -0.0014929225435480475, - 0.06600398570299149, - 0.010372169315814972, - 0.05465450882911682, - -0.011330771259963512, - -0.07699830830097198, - -0.10192805528640747, - 0.06034308671951294, - 0.07360713183879852, - 0.013644381426274776, - 0.058742474764585495, - 0.05997880920767784, - -0.031363487243652344, - 0.06095287948846817, - 0.03652942180633545, - 0.10963128507137299, - -0.014189288020133972, - 0.0131861362606287, - -0.07598196715116501, - 0.07306838035583496, - 0.08477163314819336, - -0.07896190881729126, - -0.06811490654945374, - -0.01841197907924652, - -0.07801651209592819, - 0.05320187658071518, - -0.019152428954839706, - 0.004496054723858833, - 0.03913014009594917, - -0.006063781213015318, - -0.12831251323223114, - -0.06573736667633057, - 0.08094042539596558, - -0.0684390664100647, - -0.010018846951425076, - -0.0766594186425209, - 0.04366012662649155, - 0.11602740734815598, - 0.0430748425424099, - -0.01758422516286373, - -0.024480555206537247, - 0.05124711990356445, - -0.04431149363517761, - 0.008394647389650345, - 0.046755388379096985, - 0.03474678844213486, - -0.10223262757062912, - 0.0017594726523384452, - -0.09047816693782806, - 0.026896348223090172, - -0.058137476444244385, - 0.13104358315467834, - 0.0028527029789984226, - -0.05642174184322357, - -0.09072732925415039, - 0.04773995280265808, - -0.011190174147486687, - 0.05739889666438103, - 0.019390763714909554, - 0.05372073873877525, - 0.056175973266363144, - -0.0820341631770134, - 0.11841245740652084, - 0.0530717596411705, - -0.047464609146118164, - -0.06119228154420853, - -0.03717399388551712, - -0.03339669108390808, - 0.024605661630630493, - 0.009874189272522926, - -0.07432351261377335, - -0.03453310579061508, - 0.014192461967468262, - -0.015464729629456997, - 0.0650659054517746, - 0.13560165464878082, - 0.04126901552081108, - -0.12902331352233887 - ] - }, - "p245_404.wav": { - "name": "p245", - "embedding": [ - 0.06419070810079575, - 0.03918735682964325, - 0.018891897052526474, - -0.024760231375694275, - -0.0044189319014549255, - 0.061069127172231674, - -0.12353234738111496, - 0.11402365565299988, - -0.01301989983767271, - 0.0726519376039505, - -0.074640654027462, - 0.07257071137428284, - 0.013570642098784447, - -0.16925662755966187, - -0.016988839954137802, - 0.0402834415435791, - -0.033827416598796844, - 0.0018439119448885322, - -0.05225320905447006, - -0.023063872009515762, - 0.007399502210319042, - 0.035385504364967346, - 0.019246816635131836, - -0.019139209762215614, - 0.03528938814997673, - 0.051592618227005005, - 0.008245360106229782, - 0.030118336901068687, - -0.00805277656763792, - -0.02223818376660347, - -0.0024345237761735916, - 0.07700461149215698, - -0.047400347888469696, - -0.023779628798365593, - 0.07173925638198853, - -0.01097535528242588, - 0.024193670600652695, - -0.08065156638622284, - -0.03758898377418518, - 0.04157523065805435, - -0.07463541626930237, - 0.07886776328086853, - 0.05739801377058029, - 0.017474792897701263, - 0.030995994806289673, - 0.04302537068724632, - 0.0185097549110651, - -0.06454786658287048, - -0.08851965516805649, - 0.14850017428398132, - 0.03784302622079849, - 0.02680383250117302, - -0.09480651468038559, - -0.02694118022918701, - 0.06176032871007919, - -0.00958809070289135, - -0.05352582037448883, - -0.018147751688957214, - 0.052148692309856415, - 0.10750074684619904, - -0.002527217147871852, - -0.03069782257080078, - 0.034207865595817566, - 0.07760173082351685, - 0.02324984036386013, - 0.043913256376981735, - 0.10409825295209885, - 0.09321358054876328, - -0.0036606565117836, - 0.02431890368461609, - 0.05929890275001526, - 0.030513204634189606, - 0.05708102881908417, - -0.0316973477602005, - 0.03701934963464737, - 7.894884038250893e-05, - -0.030291549861431122, - -0.024996792897582054, - -0.02041189931333065, - -0.0008447397849522531, - 0.04634835943579674, - 0.033863142132759094, - 0.02291455678641796, - 0.06275485455989838, - -0.04199187085032463, - 0.04416771978139877, - 0.010940715670585632, - 0.041617464274168015, - 0.06766355037689209, - 0.039431121200323105, - 0.029266422614455223, - 0.0252792090177536, - -0.07499801367521286, - -0.08459967374801636, - 0.02049117721617222, - 0.0074583785608410835, - -0.001809485605917871, - 0.027394866570830345, - 0.0390801802277565, - -0.02715630829334259, - 0.10793386399745941, - 0.0133076636120677, - -0.013719815760850906, - 0.016668228432536125, - -0.07613083720207214, - 0.07515460252761841, - 0.07862353324890137, - -0.024481292814016342, - 0.047744035720825195, - -0.05333958566188812, - 0.034810639917850494, - 0.05320924520492554, - -0.11187504231929779, - -0.043811604380607605, - 0.04977675899863243, - 0.01474270410835743, - 0.03419841453433037, - 0.1369720995426178, - -0.008887114934623241, - 0.03133609890937805, - 0.059311773627996445, - -0.07049624621868134, - -0.02666119858622551, - 0.01818070188164711, - 0.023506611585617065, - -0.03075127862393856, - 0.0290546715259552, - 0.01889539323747158, - 0.02487761899828911, - -0.03740197792649269, - 0.06636646389961243, - 0.008534574881196022, - 0.0024177252780646086, - -0.07108943164348602, - 0.04890812560915947, - 0.04983970522880554, - -0.00212167389690876, - -0.029463589191436768, - 0.011981675401329994, - 0.05491115152835846, - 0.005321655422449112, - 0.044630855321884155, - -0.05937693640589714, - -0.11505681276321411, - -0.0185006782412529, - -0.0015292007010430098, - 0.07068949192762375, - -0.025997823104262352, - -0.01903698779642582, - -0.07173436880111694, - -0.0023146148305386305, - -0.023053180426359177, - -0.013655908405780792, - 0.03999319300055504, - 0.05996199697256088, - -0.02522510103881359, - 0.07778358459472656, - -0.017628181725740433, - 0.02842363715171814, - -0.011958295479416847, - -0.024478040635585785, - 0.00924835167825222, - 0.04183658957481384, - -0.01981481909751892, - -0.06968905031681061, - -0.0037176895420998335, - -0.03756232187151909, - -0.004527131095528603, - 0.017100661993026733, - 0.013365581631660461, - 0.005815163254737854, - -0.016466617584228516, - -0.10252156108617783, - 0.014748352579772472, - -0.09593423455953598, - -0.050770483911037445, - 0.04162231832742691, - 0.01304446067661047, - -0.024725615978240967, - 0.08434300124645233, - 0.019340988248586655, - 0.04165211319923401, - -0.0411079041659832, - -0.060147762298583984, - -0.016400877386331558, - 0.04762309044599533, - 0.0675269216299057, - -0.017000969499349594, - 0.014390714466571808, - 0.010720767080783844, - 0.004498566035181284, - 0.04444005340337753, - 0.05338844656944275, - 0.053616635501384735, - -0.023164525628089905, - -0.00481156911700964, - -0.0004819085297640413, - 0.11780031770467758, - 0.009947620332241058, - -0.03936826437711716, - -0.04667234420776367, - 0.032626569271087646, - -0.04150997847318649, - 0.006006588693708181, - 0.015647653490304947, - 0.03623216226696968, - 0.03108939155936241, - -0.013885598629713058, - -0.0617140494287014, - -0.04628079757094383, - 0.028406960889697075, - -0.07054746150970459, - -0.018730072304606438, - -0.06522786617279053, - 0.042094405740499496, - 0.1134909987449646, - 0.00495230033993721, - 0.002252227393910289, - -0.03561714291572571, - -0.0019150078296661377, - -0.021867990493774414, - -0.037140652537345886, - 0.0005945439334027469, - 0.035443346947431564, - -0.0881577655673027, - 0.006026825867593288, - -0.05300630256533623, - 0.0634591281414032, - -0.022257929667830467, - 0.07022680342197418, - 0.04091481864452362, - -0.046875618398189545, - -0.07154149562120438, - -0.005084961652755737, - 0.013852670788764954, - 0.04405937343835831, - 0.012489140033721924, - 0.0331738218665123, - 0.05204693228006363, - -0.040726177394390106, - 0.0817209854722023, - 0.03359841927886009, - -0.04797407612204552, - -0.05069175362586975, - -0.03561512380838394, - -0.00046914443373680115, - 0.016547078266739845, - -0.008146703243255615, - -0.04674345254898071, - 0.01621292345225811, - 0.030225535854697227, - -0.0018810307374224067, - 0.017799293622374535, - 0.0843789204955101, - 0.02765839919447899, - -0.09700661152601242 - ] - }, - "p245_049.wav": { - "name": "p245", - "embedding": [ - 0.0475463829934597, - 0.09513473510742188, - -0.006068339571356773, - 0.021098626777529716, - -0.04044165834784508, - 0.04198088496923447, - -0.14156155288219452, - 0.13876782357692719, - -0.03534679114818573, - 0.13478629291057587, - -0.09711000323295593, - 0.12022916972637177, - -0.02514369785785675, - -0.20709945261478424, - -0.023456240072846413, - 0.053956516087055206, - -0.0449865385890007, - -0.027352971956133842, - -0.008817016147077084, - -0.024683747440576553, - 0.048486825078725815, - 0.044479403644800186, - 0.00867047905921936, - 0.022702138870954514, - 0.0016932659782469273, - 0.07166951894760132, - 0.0005249902023933828, - 0.04029426351189613, - 0.02112444117665291, - -0.029109513387084007, - -0.04090667515993118, - 0.10708269476890564, - -0.03454422950744629, - 0.0020850077271461487, - 0.0637882649898529, - -0.004405135754495859, - -0.004943423438817263, - -0.05423498898744583, - -0.01772003062069416, - -0.006364059634506702, - -0.07122121751308441, - 0.059955839067697525, - 0.03056979738175869, - -0.02366606704890728, - 0.0536670908331871, - 0.047796089202165604, - -0.009355583228170872, - -0.05812649801373482, - -0.10274310410022736, - 0.15152902901172638, - 0.08465466648340225, - -0.011770433746278286, - -0.04562000185251236, - -0.05469464883208275, - 0.09929494559764862, - 5.6900560593931004e-05, - -0.10337064415216446, - -0.03899132087826729, - 0.0991852805018425, - 0.1506568193435669, - -0.031215783208608627, - -0.029513003304600716, - 0.039236750453710556, - 0.12928339838981628, - 0.03271016851067543, - 0.10827409476041794, - 0.06029234826564789, - 0.10210902988910675, - -0.01437874510884285, - 0.01629011332988739, - 0.06418173760175705, - 0.06052457541227341, - 0.05344700813293457, - -0.0374826155602932, - 0.019597206264734268, - 0.0101812444627285, - -0.032910238951444626, - 0.01618269644677639, - -0.014839684590697289, - -0.013028068467974663, - -0.008910229429602623, - -0.006597636267542839, - -0.012438446283340454, - 0.00730512198060751, - -0.025430859997868538, - 0.05521159619092941, - 0.039102017879486084, - 0.003691272111609578, - 0.06712035089731216, - 0.023203451186418533, - 0.012753480114042759, - 0.06530016660690308, - -0.07615182548761368, - -0.08094727247953415, - 0.03181953728199005, - -0.002851153491064906, - 0.004683312028646469, - 0.09019245207309723, - 0.05108082294464111, - -0.01864493452012539, - 0.13329198956489563, - 0.03792903572320938, - -0.0014252597466111183, - 0.04303397238254547, - -0.10739202797412872, - 0.1354880928993225, - 0.07648725807666779, - -0.04246428236365318, - 0.04589829221367836, - -0.05546974018216133, - 0.08001882582902908, - 0.08458433300256729, - -0.14827829599380493, - -0.04540344327688217, - 0.044439516961574554, - 0.02248564176261425, - -0.029364116489887238, - 0.12351515144109726, - -0.006620639003813267, - 0.023162584751844406, - 0.11297736316919327, - -0.08203953504562378, - -0.07665301859378815, - -0.04098742455244064, - 0.046205732971429825, - -0.11254053562879562, - 0.07936838269233704, - 0.052473943680524826, - -0.006090579088777304, - 0.01039053127169609, - 0.0940728634595871, - -0.03134115785360336, - -0.0054808794520795345, - -0.0039880163967609406, - -0.03030667081475258, - 0.01616595685482025, - -0.047957442700862885, - 0.011981154792010784, - 0.014473007060587406, - 0.023792922496795654, - 0.03315510228276253, - 0.0068056886084377766, - -0.036574095487594604, - -0.11832774430513382, - 0.018171975389122963, - 0.042477816343307495, - 0.08915697038173676, - 0.013131125830113888, - -0.03833124414086342, - -0.044536832720041275, - -0.06207020580768585, - 0.00030853203497827053, - -0.022233178839087486, - 0.06557407975196838, - -0.02755184844136238, - 0.006208732724189758, - 0.08769842982292175, - 0.027013512328267097, - 0.0049041141755878925, - -0.05983532592654228, - -0.041174035519361496, - 0.01868407614529133, - 0.03740725666284561, - -0.08608248829841614, - -0.07837054133415222, - -0.00900968722999096, - 0.03450753912329674, - -0.019652539864182472, - 0.0420735627412796, - 0.034488264471292496, - 0.024492621421813965, - 0.023953653872013092, - -0.09959570318460464, - 0.019592974334955215, - -0.11650485545396805, - -0.08623222261667252, - -0.027420461177825928, - 0.0019349019275978208, - -0.0024711433798074722, - 0.06545230746269226, - -0.009740003384649754, - 0.035744477063417435, - -0.013761785812675953, - -0.0660208910703659, - -0.08851736038923264, - 0.0549754835665226, - 0.08370275050401688, - 0.006444267462939024, - 0.05500565096735954, - 0.04012533277273178, - -0.05145742744207382, - 0.05105600506067276, - 0.033011242747306824, - 0.12542292475700378, - -0.010914579965174198, - 0.02344227023422718, - -0.05586374178528786, - 0.06902960687875748, - 0.08258596062660217, - -0.08731798082590103, - -0.07631795108318329, - -0.024579746648669243, - -0.06024374067783356, - 0.04319954290986061, - -0.016182495281100273, - -0.000923074665479362, - 0.0014819487696513534, - -0.008515158668160439, - -0.089241623878479, - -0.07614150643348694, - 0.057811181992292404, - -0.07190749794244766, - -0.019181611016392708, - -0.09324660897254944, - 0.05874720588326454, - 0.0962495282292366, - 0.033562399446964264, - -0.04117560759186745, - -0.027032088488340378, - 0.03990776091814041, - -0.045605093240737915, - 0.0015980829484760761, - 0.04379775747656822, - 0.05125972256064415, - -0.11862359941005707, - 0.0056625958532094955, - -0.08322019129991531, - 0.06070470064878464, - -0.07032650709152222, - 0.14923729002475739, - 0.008735728450119495, - -0.05821780860424042, - -0.08965730667114258, - 0.04144864156842232, - 0.006865859497338533, - 0.03835439682006836, - 0.03526514396071434, - 0.04721233993768692, - 0.02700684405863285, - -0.07600522041320801, - 0.1189938336610794, - 0.029594114050269127, - -0.019516535103321075, - -0.05715472251176834, - -0.04561162739992142, - -0.04984667897224426, - 0.017764806747436523, - 0.025110041722655296, - -0.10677909851074219, - -0.049841295927762985, - 0.03037760965526104, - -0.01036197878420353, - 0.07492029666900635, - 0.14541363716125488, - 0.037221912294626236, - -0.11960726231336594 - ] - }, - "p245_351.wav": { - "name": "p245", - "embedding": [ - 0.06704145669937134, - 0.05823506787419319, - 0.030241966247558594, - -0.03705039620399475, - 0.006909685209393501, - 0.0932241901755333, - -0.06810291856527328, - 0.06883310526609421, - 0.00155550055205822, - 0.04379822313785553, - -0.08923117816448212, - 0.04777928814291954, - 0.008395617827773094, - -0.136733740568161, - -0.01879725605249405, - 0.046538516879081726, - -0.05091383308172226, - 0.02822810597717762, - -0.06763501465320587, - -0.024408429861068726, - -0.010235240682959557, - 0.02395259216427803, - 0.059341199696063995, - -0.03244274854660034, - 0.0438317134976387, - 0.03897450119256973, - 0.0065063368529081345, - 0.02308381348848343, - -0.006782982498407364, - -0.03565731644630432, - -0.019158361479640007, - 0.0782981887459755, - -0.026104524731636047, - -0.02209126204252243, - 0.05125085264444351, - 0.009704766795039177, - 0.059460680931806564, - -0.10379713773727417, - -0.034776072949171066, - 0.043902166187763214, - -0.06420910358428955, - 0.0628296360373497, - 0.049240801483392715, - 0.0029306765645742416, - 0.032963827252388, - 0.004978878889232874, - -0.0046936082653701305, - -0.061599548906087875, - -0.07922981679439545, - 0.1526414155960083, - 0.030769091099500656, - 0.04064822569489479, - -0.08091539889574051, - -0.018084930256009102, - 0.048893265426158905, - -0.010109447874128819, - -0.04269569739699364, - -0.0027581676840782166, - 0.0360928438603878, - 0.08483288437128067, - 0.039877187460660934, - -0.007614978589117527, - 0.040842268615961075, - 0.064113549888134, - -0.014371966943144798, - 0.026534665375947952, - 0.09887561202049255, - 0.06561963260173798, - 0.022939587011933327, - 0.03532765805721283, - 0.05432305485010147, - 0.017604021355509758, - 0.05098516866564751, - -0.024919988587498665, - 0.03871893137693405, - -0.02850848063826561, - -0.03807409852743149, - -0.019279640167951584, - -0.013364613056182861, - -0.01836494728922844, - 0.067538321018219, - 0.028540581464767456, - 0.018481124192476273, - 0.041880302131175995, - -0.04994499683380127, - 0.02163398265838623, - -0.024133171886205673, - 0.08421847969293594, - 0.07045003026723862, - 0.044835299253463745, - 0.030816011130809784, - -0.006503632292151451, - -0.022939639165997505, - -0.09851651638746262, - 0.009312189184129238, - 0.032479122281074524, - -0.013365810737013817, - -0.002710772678256035, - 0.02432195097208023, - -0.04618127644062042, - 0.08671192824840546, - 0.0036795511841773987, - -0.006280895788222551, - 0.004515236243605614, - -0.06504005193710327, - 0.043493784964084625, - 0.0792287290096283, - 0.00462745688855648, - 0.05508670583367348, - -0.020342670381069183, - 0.03571278601884842, - 0.07519960403442383, - -0.08603756874799728, - -0.021520232781767845, - 0.011256717145442963, - -0.007585185579955578, - 0.07266493886709213, - 0.08963727951049805, - 0.008370034396648407, - 0.026655040681362152, - 0.041409529745578766, - -0.073029063642025, - -0.021643180400133133, - 0.03481026738882065, - -0.005380101501941681, - 0.0035184770822525024, - -0.013319611549377441, - 0.0224656630307436, - 0.03054683282971382, - -0.07471266388893127, - 0.034888170659542084, - 0.01191724743694067, - 0.015840142965316772, - -0.07374249398708344, - 0.03549838066101074, - 0.0224164929240942, - -0.017805660143494606, - -0.04488350823521614, - 0.03473108261823654, - 0.0675075501203537, - -0.016258355230093002, - 0.05133683979511261, - -0.06452854722738266, - -0.0906495749950409, - -0.03532847389578819, - -0.013745943084359169, - 0.03072349727153778, - -0.00711077218875289, - -0.020660752430558205, - -0.0649898573756218, - 0.03042362444102764, - 0.00642771553248167, - -0.027265753597021103, - 0.028220463544130325, - 0.09902530908584595, - -0.05122558772563934, - 0.060032181441783905, - -0.035985250025987625, - 0.01873202808201313, - -0.015580343082547188, - -0.0337342731654644, - 0.02912384457886219, - 0.027779292315244675, - -0.000771593302488327, - -0.06464264541864395, - 0.014612175524234772, - -0.0725935697555542, - -0.004106349777430296, - -0.0010228119790554047, - 0.02510572038590908, - -0.013170212507247925, - -0.03557687625288963, - -0.08968241512775421, - 0.006630235817283392, - -0.06688438355922699, - -0.04054092988371849, - 0.07745760679244995, - 0.014819085597991943, - -0.010020339861512184, - 0.09203378856182098, - 0.03292340785264969, - 0.0066065192222595215, - -0.05413554608821869, - -0.04648738354444504, - 0.02979138121008873, - 0.05529949814081192, - 0.050144582986831665, - 0.019709505140781403, - 0.022195138037204742, - -0.012681165710091591, - 0.012812916189432144, - 0.04796817898750305, - 0.028981631621718407, - 0.034979429095983505, - -0.027928978204727173, - -0.030164793133735657, - 0.02286100760102272, - 0.08644644170999527, - -0.0002261437475681305, - -0.03957487642765045, - -0.034387193620204926, - 0.02911531738936901, - -0.02363932505249977, - 0.016472451388835907, - 0.012730593793094158, - 0.019347818568348885, - 0.04383888095617294, - -0.040693968534469604, - -0.047640323638916016, - -0.06191657856106758, - 0.03659037500619888, - -0.04567191004753113, - -0.031197071075439453, - -0.026576252654194832, - 0.04854495823383331, - 0.08480000495910645, - -0.020679092034697533, - 0.0015879161655902863, - 0.013026267290115356, - -0.019762394949793816, - -0.0332379974424839, - -0.05657337233424187, - -0.024955058470368385, - 0.025027822703123093, - -0.07732786983251572, - 0.023637311533093452, - -0.05580015480518341, - 0.059601880609989166, - 0.00220605731010437, - 0.06466390192508698, - 0.04856862872838974, - -0.02864808402955532, - -0.06842250376939774, - 0.01873037777841091, - -0.001178903505206108, - 0.028635935857892036, - 0.0026000821962952614, - 0.00303029827773571, - 0.05007866397500038, - -0.05784064158797264, - 0.048221755772829056, - 0.024801796302199364, - -0.053993869572877884, - -0.04294169321656227, - -0.002083864063024521, - -0.0129734231159091, - 0.005749902687966824, - -0.04221602529287338, - -0.026547254994511604, - 0.03614458069205284, - 0.026439839974045753, - 0.03091368079185486, - 0.009394442662596703, - 0.0422995388507843, - 0.005992533639073372, - -0.036101650446653366 - ] - }, - "p245_184.wav": { - "name": "p245", - "embedding": [ - 0.043890755623579025, - 0.08505771309137344, - -0.014418607577681541, - 0.05119144171476364, - -0.07487911731004715, - 0.039904240518808365, - -0.0789528340101242, - 0.12820200622081757, - -0.038454413414001465, - 0.09622292220592499, - -0.07556413859128952, - 0.167055144906044, - -0.010330495424568653, - -0.17147041857242584, - -0.07540953159332275, - 0.03999222815036774, - -0.026614608243107796, - -0.028791245073080063, - 0.015424036420881748, - -0.02673296444118023, - 0.0702357217669487, - 0.08003674447536469, - 0.07933282852172852, - 0.018238360062241554, - 0.03354933112859726, - 0.07591891288757324, - 0.03875710442662239, - 0.09171140193939209, - 0.053987402468919754, - -0.09499023109674454, - -0.0666663721203804, - 0.08714472502470016, - -0.0329500250518322, - 0.012769694440066814, - 0.021275892853736877, - -0.019346900284290314, - 0.0480443574488163, - -0.043350137770175934, - -0.03835352882742882, - 0.027153311297297478, - -0.02492375485599041, - 0.06955984979867935, - 0.006105436943471432, - -0.025699805468320847, - 0.0529632568359375, - -0.005154609214514494, - -0.023983687162399292, - -0.03335484117269516, - -0.12110687792301178, - 0.16359923779964447, - 0.05461646988987923, - 0.031083887442946434, - -0.08836103975772858, - -0.08555283397436142, - 0.11411811411380768, - -0.02772662229835987, - -0.07916954159736633, - 0.00560044776648283, - 0.03567344322800636, - 0.16897299885749817, - 0.0020335703156888485, - -0.04417891427874565, - 0.0477592870593071, - 0.09379659593105316, - 0.04681135341525078, - 0.04155230149626732, - 0.09959916025400162, - 0.057315435260534286, - -0.008235082030296326, - 0.02711101807653904, - 0.018748415634036064, - 0.12074065953493118, - 0.027918657287955284, - -0.006959917023777962, - 0.0006813450600020587, - 0.023227302357554436, - -0.03171291947364807, - 0.016142068430781364, - -0.01406625472009182, - -0.0037790213245898485, - -0.019053807482123375, - 0.01949171908199787, - 0.015480420552194118, - -0.009981020353734493, - -0.037590038031339645, - 0.08450647443532944, - -0.02401881292462349, - -0.006191688124090433, - 0.04215914383530617, - 0.006862887181341648, - -0.011351067572832108, - 0.051584187895059586, - -0.06960795819759369, - -0.1019834503531456, - 0.001985696842893958, - 0.013733861967921257, - 0.0297338105738163, - 0.09063045680522919, - 0.03341888636350632, - -0.03361824154853821, - 0.11747490614652634, - 0.06494419276714325, - -0.0026375590823590755, - 0.01859324239194393, - -0.08523046225309372, - 0.07872146368026733, - 0.12975522875785828, - 0.006621855776757002, - 0.07833165675401688, - -0.03364546597003937, - 0.09074798971414566, - 0.0536341667175293, - -0.14509478211402893, - -0.08406513184309006, - 0.003765242639929056, - 0.03314562141895294, - 0.04313020408153534, - 0.07648768275976181, - -0.0283002108335495, - 0.06041765585541725, - 0.09415999054908752, - -0.0854165181517601, - -0.046685054898262024, - -0.053394865244627, - 0.057289306074380875, - -0.06280698627233505, - 0.06906235218048096, - 0.045254096388816833, - 0.0013116456102579832, - -0.021103205159306526, - 0.038884151726961136, - -0.030252229422330856, - 0.007258565630763769, - 0.05298084393143654, - -0.07948058098554611, - -0.012687699869275093, - -0.05962829664349556, - -0.01423613727092743, - 0.09236863255500793, - 0.04087842255830765, - 0.04636557027697563, - 0.017751868814229965, - -0.0312421265989542, - -0.12579035758972168, - 0.0071611590683460236, - 0.04106401652097702, - 0.03752791881561279, - -0.009522752836346626, - -0.08183171600103378, - -0.04686363786458969, - -0.05321026220917702, - 0.038066260516643524, - 0.0400669164955616, - 0.07196805626153946, - -0.036398086696863174, - 0.03303104639053345, - 0.0691780373454094, - 0.01096411608159542, - -0.025769485160708427, - -0.015307455323636532, - -0.02977103739976883, - -0.009425358846783638, - 0.03558971732854843, - -0.05349878594279289, - -0.09915625303983688, - -0.01775696873664856, - 0.02489335462450981, - -0.027579359710216522, - 0.04895031079649925, - 0.048750706017017365, - -0.0001891324936877936, - 0.04464235529303551, - -0.04382289573550224, - -0.006914936471730471, - -0.1152111068367958, - -0.06727608293294907, - -0.024730389937758446, - -0.007135397754609585, - -0.03739252686500549, - 0.07210288196802139, - 0.06634336709976196, - 0.05646740645170212, - 0.010103200562298298, - -0.04375826567411423, - -0.07646053284406662, - 0.03941487893462181, - 0.06055415794253349, - 0.06438817828893661, - 0.0835215374827385, - 0.06230328977108002, - -0.022786781191825867, - 0.12653151154518127, - 0.07117488235235214, - 0.05934397131204605, - -0.010505910031497478, - 0.005181418266147375, - -0.05573165789246559, - 0.06675601750612259, - 0.0884820744395256, - -0.09574930369853973, - -0.11331278085708618, - -0.06252880394458771, - -0.1048608049750328, - 0.08730683475732803, - -0.00012744062405545264, - 0.02955835498869419, - 0.046797964721918106, - 0.0008930893382057548, - -0.11105445772409439, - -0.0872381404042244, - 0.09520980715751648, - -0.02480298839509487, - -0.03677918016910553, - -0.04398595541715622, - 0.023222243413329124, - 0.11804411560297012, - 4.9878188292495906e-05, - 0.013271125964820385, - -0.017938243225216866, - 0.04117550700902939, - -0.05391534045338631, - -0.03508086875081062, - 0.04264451563358307, - 0.006528493016958237, - -0.09303133934736252, - 0.027545975521206856, - -0.07321067899465561, - 0.05899357423186302, - -0.05544789507985115, - 0.13341733813285828, - -0.018868740648031235, - -0.054445359855890274, - -0.09287986159324646, - 0.08792873471975327, - -0.031962037086486816, - 0.046662312000989914, - 0.033910978585481644, - 0.03124554082751274, - 0.008196335285902023, - -0.10700886696577072, - 0.10969391465187073, - 0.05273907631635666, - -0.09013558179140091, - -0.08190502971410751, - -0.05302773043513298, - -0.011819390580058098, - 0.027898680418729782, - 0.02523074485361576, - -0.034925032407045364, - -0.030958760529756546, - -0.004015491809695959, - -0.0022458883468061686, - 0.06051085889339447, - 0.13358932733535767, - 0.02728516235947609, - -0.10576461255550385 - ] - }, - "p245_002.wav": { - "name": "p245", - "embedding": [ - 0.02358773536980152, - 0.07826605439186096, - -0.027543067932128906, - 0.031680479645729065, - -0.07373817265033722, - 0.050326019525527954, - -0.12228147685527802, - 0.12812471389770508, - -0.03913921117782593, - 0.12552094459533691, - -0.063118577003479, - 0.1157759428024292, - -0.046507250517606735, - -0.18721237778663635, - 0.0004700678982771933, - 0.07076182961463928, - -0.028337620198726654, - -0.051535118371248245, - -0.025464870035648346, - -0.03454870358109474, - 0.029593035578727722, - 0.029509365558624268, - 0.003851971821859479, - 0.02604139782488346, - 0.015128349885344505, - 0.08368734270334244, - -0.02362710051238537, - 0.0106833316385746, - -0.0232837051153183, - -0.03319923207163811, - -0.045803382992744446, - 0.08455102145671844, - -0.06445177644491196, - 0.011724996380507946, - 0.047038301825523376, - 0.0013751982478424907, - -0.015428800135850906, - -0.04209304228425026, - -0.01663612760603428, - -0.00877833366394043, - -0.08127505332231522, - 0.07297591120004654, - 0.02443988062441349, - -0.016256440430879593, - 0.04076751321554184, - 0.017612911760807037, - -0.016523662954568863, - -0.031120549887418747, - -0.11199674755334854, - 0.14118105173110962, - 0.07491213083267212, - -0.01583864912390709, - -0.058698512613773346, - -0.060395874083042145, - 0.10201830416917801, - -0.008420097641646862, - -0.11700267344713211, - -0.04858531057834625, - 0.08741970360279083, - 0.1385299414396286, - -0.03007463552057743, - -0.032490409910678864, - 0.018984273076057434, - 0.10844701528549194, - 0.056400366127491, - 0.09863264113664627, - 0.054077714681625366, - 0.11717013269662857, - -0.039178911596536636, - -0.016189374029636383, - 0.07102316617965698, - 0.07059231400489807, - 0.07944108545780182, - -0.011055003851652145, - 0.009577132761478424, - 0.008006935007870197, - -0.013070395216345787, - 0.0075176190584897995, - -0.025560803711414337, - -0.025546584278345108, - -0.02846902422606945, - -0.010807862505316734, - 0.001602032221853733, - 0.008516959846019745, - -0.005555284209549427, - 0.05008368939161301, - 0.07965726405382156, - -0.013095414265990257, - 0.06566435098648071, - 0.03424368053674698, - -0.025594614446163177, - 0.08266881108283997, - -0.09044355154037476, - -0.04109787940979004, - 0.02378132753074169, - 0.0014220110606402159, - 0.02196289598941803, - 0.09291413426399231, - 0.04062889516353607, - -0.005350210703909397, - 0.1164693683385849, - 0.030876826494932175, - 0.012760510668158531, - 0.02262270823121071, - -0.09269329905509949, - 0.1272474229335785, - 0.07751910388469696, - -0.04080330953001976, - 0.041031546890735626, - -0.03814410790801048, - 0.07047991454601288, - 0.07510924339294434, - -0.12477375566959381, - -0.04994071647524834, - 0.01527847908437252, - 0.015763960778713226, - -0.03540327027440071, - 0.13015125691890717, - -0.0015134529676288366, - 0.034743472933769226, - 0.12304578721523285, - -0.09818711876869202, - -0.06383582204580307, - -0.010296138934791088, - 0.033754292875528336, - -0.09067896753549576, - 0.056689921766519547, - 0.05938276648521423, - 0.0013965866528451443, - 0.040264323353767395, - 0.08552718162536621, - -0.015032759867608547, - 0.0052743032574653625, - 0.017005007714033127, - -0.047505784779787064, - -0.0034433994442224503, - -0.01980522647500038, - 0.003273322246968746, - 0.06160595640540123, - 0.021210571750998497, - 0.05466904863715172, - -0.017585575580596924, - -0.009554693475365639, - -0.13104790449142456, - 0.02533816546201706, - 0.05835263431072235, - 0.08430012315511703, - -0.013944342732429504, - -0.024379678070545197, - -0.03711916506290436, - -0.08951502293348312, - 0.014764171093702316, - -0.00650345254689455, - 0.078699491918087, - -0.04668764770030975, - -0.004294841084629297, - 0.09571234881877899, - 0.0528540164232254, - -0.0220005065202713, - -0.07365991175174713, - -0.04793429747223854, - -0.013625634834170341, - 0.05680353194475174, - -0.09912532567977905, - -0.08124546706676483, - -0.019717229530215263, - 0.05668644234538078, - -0.011334139853715897, - 0.07291688770055771, - 0.05611800402402878, - 0.029576651751995087, - 0.01304707396775484, - -0.0732540637254715, - 0.015658125281333923, - -0.09017372131347656, - -0.08548907935619354, - -0.017555225640535355, - -0.027347825467586517, - -0.006128217093646526, - 0.06830267608165741, - 0.012454835698008537, - 0.04593104496598244, - -0.023782506585121155, - -0.06570237874984741, - -0.09388864040374756, - 0.05440802127122879, - 0.04032035171985626, - -0.01430125255137682, - 0.04942398518323898, - 0.07252196967601776, - -0.07328368723392487, - 0.042637377977371216, - 0.058200906962156296, - 0.1299072802066803, - -0.04843887686729431, - 0.057595498859882355, - -0.05590197071433067, - 0.07234153151512146, - 0.0904366672039032, - -0.08401448279619217, - -0.07548040896654129, - -0.039046335965394974, - -0.05667746067047119, - 0.04639512300491333, - -0.04596441984176636, - -0.0032003677915781736, - 0.0073587168008089066, - 0.001806933432817459, - -0.0926545113325119, - -0.08737234771251678, - 0.07453086972236633, - -0.051295891404151917, - 0.006884843576699495, - -0.09308046847581863, - 0.043042056262493134, - 0.06748859584331512, - 0.05167599022388458, - -0.03423576429486275, - 0.014277677051723003, - 0.06291401386260986, - -0.015866756439208984, - 0.02137969434261322, - 0.08569542318582535, - 0.046959757804870605, - -0.0943174958229065, - -0.0365343876183033, - -0.0801193118095398, - 0.06505569815635681, - -0.03039010800421238, - 0.1565544605255127, - 0.006734907627105713, - -0.04568962752819061, - -0.06981738656759262, - 0.02863404154777527, - -0.0015778010711073875, - 0.04543830826878548, - 0.0291912741959095, - 0.07866893708705902, - 0.03238718956708908, - -0.026903148740530014, - 0.13715890049934387, - 0.04452521353960037, - -0.03350624442100525, - -0.044210076332092285, - -0.04607298970222473, - -0.05255250632762909, - 0.022222690284252167, - 0.008832775056362152, - -0.10808197408914566, - -0.015592294745147228, - 0.02139430120587349, - -5.829939618706703e-05, - 0.051591672003269196, - 0.1530590057373047, - 0.08657270669937134, - -0.10864903032779694 - ] - }, - "p245_185.wav": { - "name": "p245", - "embedding": [ - 0.061931438744068146, - 0.0943182036280632, - 0.017586873844265938, - -0.016560431569814682, - -0.01549588143825531, - 0.06860578060150146, - -0.1735783964395523, - 0.10738663375377655, - -0.06024941802024841, - 0.1527029573917389, - -0.10229989886283875, - 0.0820830762386322, - -0.024862563237547874, - -0.1922997534275055, - -0.06880733370780945, - 0.04849780350923538, - -0.06502246856689453, - -0.03457893803715706, - 0.0012382371351122856, - -0.03095114231109619, - 0.038484349846839905, - 0.05193109065294266, - 0.008144903928041458, - 0.02631678432226181, - 0.0451781302690506, - 0.05656164139509201, - 0.010965327732264996, - 0.049336764961481094, - -0.005590734537690878, - -0.03349357470870018, - -0.02043190225958824, - 0.13056224584579468, - -0.03088408149778843, - -0.005155405029654503, - 0.028637176379561424, - 0.023479096591472626, - 0.03669722378253937, - -0.0857032984495163, - -0.002330233808606863, - -0.003384561976417899, - -0.03503650426864624, - 0.06760133057832718, - 0.02083505317568779, - 0.018323713913559914, - 0.0068146237172186375, - 0.04039827734231949, - 0.0028054174035787582, - -0.07450364530086517, - -0.10297901928424835, - 0.16271817684173584, - 0.04333998262882233, - 0.018857136368751526, - -0.0736873671412468, - -0.08138163387775421, - 0.10239444673061371, - -0.011204741895198822, - -0.08961302042007446, - -0.018971525132656097, - 0.08370642364025116, - 0.1880270391702652, - -0.045557837933301926, - -0.06589552760124207, - 0.03892253339290619, - 0.10237638652324677, - 0.01838921755552292, - 0.08959254622459412, - 0.08224697411060333, - 0.0660763531923294, - 0.012882357463240623, - -0.01609390787780285, - 0.060892581939697266, - 0.04428984969854355, - 0.04501251131296158, - -0.04964422062039375, - 0.026755765080451965, - 0.01607527770102024, - -0.04234948381781578, - 0.04744495451450348, - -0.0172147024422884, - -0.007962924428284168, - 0.0005255321739241481, - -0.008809900842607021, - -0.014055125415325165, - 0.017560552805662155, - -0.035148583352565765, - 0.015296468511223793, - -0.00401654839515686, - -0.009734917432069778, - 0.10195815563201904, - 0.02065407671034336, - 0.020383402705192566, - 0.060295410454273224, - -0.06215808168053627, - -0.07610048353672028, - 0.05746382474899292, - 0.021879538893699646, - -0.0019333818927407265, - 0.06846021860837936, - 0.04975048080086708, - -0.05284110829234123, - 0.12015827000141144, - 0.029055429622530937, - 0.019173379987478256, - 0.02234555594623089, - -0.12423446029424667, - 0.10854637622833252, - 0.0924525335431099, - -0.04406654089689255, - 0.038346078246831894, - -0.03121175616979599, - 0.06448947638273239, - 0.08739827573299408, - -0.15698984265327454, - -0.089156374335289, - 0.05125739797949791, - 0.04494181647896767, - 0.0008481969125568867, - 0.10862427949905396, - -0.028039967641234398, - -0.006550223100930452, - 0.08231733739376068, - -0.07706663012504578, - -0.061941809952259064, - -0.020563066005706787, - 0.04454972594976425, - -0.09160491824150085, - 0.03808602690696716, - 0.060925837606191635, - 0.005269246641546488, - -0.015477458946406841, - 0.06979642808437347, - -0.011888453736901283, - -0.015624463558197021, - -0.02562510408461094, - -0.020971886813640594, - 0.03489968553185463, - -0.029899869114160538, - -0.008173709735274315, - 0.014536741189658642, - 0.056775838136672974, - 0.014111342839896679, - 0.03855336830019951, - -0.06912229210138321, - -0.11743748188018799, - -0.0033062375150620937, - 0.054164811968803406, - 0.057940319180488586, - -0.017601799219846725, - -0.031252745538949966, - -0.072161465883255, - -0.03870869800448418, - 0.023170702159404755, - 0.005680281203240156, - 0.08354271948337555, - 0.015904748812317848, - 0.0032762247137725353, - 0.10606884956359863, - 0.023646127432584763, - -0.0023334778379648924, - -0.05040481314063072, - -0.012844240292906761, - 0.03589194267988205, - 0.03635179251432419, - -0.06052795797586441, - -0.06869138777256012, - -0.0025041282642632723, - 0.04248450696468353, - -0.01490707602351904, - 0.03628591075539589, - 0.03992671146988869, - 0.015115615911781788, - 0.02881280519068241, - -0.08762317895889282, - 0.04189129173755646, - -0.11166097223758698, - -0.05664055794477463, - 0.0014595371903851628, - -0.009036744944751263, - -0.0038564163260161877, - 0.08789880573749542, - 0.005479919724166393, - 0.028801556676626205, - -0.0506991371512413, - -0.0854375958442688, - -0.05812521651387215, - 0.06582494080066681, - 0.11485972255468369, - 0.005417494103312492, - 0.036176636815071106, - 0.02856173738837242, - -0.003962871618568897, - 0.061177995055913925, - 0.06648282706737518, - 0.13206112384796143, - -0.020873498171567917, - 0.019060513004660606, - -0.03514261171221733, - 0.06428977847099304, - 0.034177958965301514, - -0.07694768905639648, - -0.08694911003112793, - -0.00605004234239459, - -0.05699876323342323, - 0.05943584442138672, - 0.014504838734865189, - 0.025877878069877625, - -0.009845886379480362, - -0.03490893542766571, - -0.0897604376077652, - -0.07291705906391144, - 0.05996953696012497, - -0.02755383774638176, - -0.03472472354769707, - -0.08967968821525574, - 0.07644389569759369, - 0.08695225417613983, - 0.043586790561676025, - 0.00286676362156868, - -0.016348622739315033, - 0.005012219306081533, - -0.06722348928451538, - -0.022148026153445244, - 0.023505806922912598, - 0.00038319453597068787, - -0.1097593754529953, - 0.03014691174030304, - -0.09828896820545197, - 0.09809508919715881, - -0.06587450206279755, - 0.15200844407081604, - -0.007465310860425234, - -0.06238946691155434, - -0.09271591901779175, - 0.019227854907512665, - -0.025916390120983124, - 0.044934600591659546, - 0.0454816073179245, - 0.03466986119747162, - 0.03788481652736664, - -0.056064315140247345, - 0.07617609202861786, - 0.035814326256513596, - -0.02204306423664093, - -0.06533538550138474, - -0.04845082759857178, - -0.023975593969225883, - 0.009637643583118916, - -0.031131941825151443, - -0.07051219046115875, - -0.01244270522147417, - 0.033741891384124756, - -0.0015441062860190868, - 0.0764072835445404, - 0.11345212906599045, - 0.04249701276421547, - -0.13651220500469208 - ] - }, - "p245_382.wav": { - "name": "p245", - "embedding": [ - 0.012547873891890049, - 0.05160238593816757, - 0.011362994089722633, - 0.010442528873682022, - -0.02396126464009285, - 0.013589495792984962, - -0.11730173975229263, - 0.036210618913173676, - -0.010385122150182724, - 0.11090656369924545, - -0.06143496558070183, - 0.06634905934333801, - -0.045379187911748886, - -0.10618384927511215, - 0.01740165799856186, - 0.03435014933347702, - -0.006350047420710325, - -0.00864393636584282, - -0.031849052757024765, - -0.09376578032970428, - 0.020534124225378036, - 0.036604393273591995, - 0.036742858588695526, - -0.06433065235614777, - -0.03600381687283516, - 0.08359530568122864, - 0.01833106204867363, - 0.00012774299830198288, - -0.01433572731912136, - -0.05799144506454468, - 0.012074185535311699, - 0.05872979015111923, - -0.022189244627952576, - -0.04682639613747597, - 0.03789011389017105, - 0.021736960858106613, - -0.011056792922317982, - 0.032406531274318695, - 0.03573356941342354, - 0.048331134021282196, - -0.10984036326408386, - 0.08040735870599747, - 0.035817697644233704, - -0.013468739576637745, - 0.05903147906064987, - -0.010543732903897762, - -0.0302356518805027, - 0.04786694049835205, - -0.05198640376329422, - 0.10123961418867111, - 0.09019836783409119, - -0.01387955155223608, - -0.0026811081916093826, - -0.0028360895812511444, - 0.06472156941890717, - 0.006172278895974159, - -0.09047840535640717, - -0.06961512565612793, - 0.01754872500896454, - 0.048186399042606354, - -0.0459323488175869, - -0.03905865177512169, - 0.021418139338493347, - 0.07180844992399216, - 0.02538359723985195, - 0.08152899891138077, - 0.04512246698141098, - 0.06418582797050476, - -0.015758180990815163, - -0.03462575748562813, - 0.04637700319290161, - 0.06378970295190811, - 0.05963975191116333, - -0.009656872600317001, - 0.04629376903176308, - -0.027568265795707703, - -0.0015075068222358823, - -0.015118101611733437, - -0.0021336134523153305, - -0.02977989986538887, - -0.016649462282657623, - -0.03093707747757435, - 0.0054865069687366486, - -0.011831393465399742, - -0.02760191448032856, - -0.013728601858019829, - 0.07599321007728577, - -0.011270669288933277, - 0.05656953155994415, - 0.017831265926361084, - 0.010215329006314278, - 0.04234057292342186, - -0.024735376238822937, - 0.013357169926166534, - -0.021729113534092903, - -0.023060370236635208, - 0.05408324673771858, - 0.04192613810300827, - -0.009943902492523193, - 0.03809733688831329, - 0.07158517092466354, - 0.012510206550359726, - -0.01156134344637394, - 0.02253643423318863, - -0.08828597515821457, - 0.09063994139432907, - 0.07299457490444183, - -0.04215797781944275, - 0.011265666224062443, - 0.005750037729740143, - 0.0337931364774704, - 0.004370613023638725, - -0.04674713686108589, - -0.026644859462976456, - -0.017069317400455475, - 0.05421210452914238, - -0.023538794368505478, - 0.11078331619501114, - -0.004369608126580715, - -0.001963440328836441, - 0.13071255385875702, - -0.011764176189899445, - -0.0530334934592247, - -0.0342542938888073, - 0.0011928481981158257, - -0.11772595345973969, - 0.04352394863963127, - 0.061838164925575256, - 0.010597269982099533, - 0.04860387742519379, - 0.12782812118530273, - -0.001282795681618154, - 0.007060809060931206, - -0.04113354533910751, - -0.02608216181397438, - 0.005709658842533827, - 0.005518050864338875, - 0.03675176203250885, - 0.06943594664335251, - 0.022506503388285637, - 0.10988815128803253, - 0.00980820506811142, - 0.017211895436048508, - -0.10632960498332977, - 0.02222321182489395, - 0.029957246035337448, - -0.008503291755914688, - -0.03047473356127739, - -0.02670774981379509, - -0.0339556559920311, - -0.06403562426567078, - 0.020782222971320152, - -0.06388944387435913, - 0.08039310574531555, - -0.035465702414512634, - -0.03365049511194229, - 0.12671050429344177, - 0.011926470324397087, - -0.018395351245999336, - -0.0451463907957077, - -0.04775174707174301, - -0.03024212270975113, - 0.02390103042125702, - -0.15910173952579498, - -0.03548077493906021, - -0.06562969833612442, - 0.06842155754566193, - 0.061021797358989716, - 0.01578560657799244, - 0.08299657702445984, - -0.026273656636476517, - 0.024967610836029053, - 0.005361704155802727, - 0.007530272472649813, - -0.025087492540478706, - -0.07498277723789215, - -0.028843076899647713, - -0.09150299429893494, - -0.03826965391635895, - 0.04488532990217209, - -0.05601165071129799, - 0.025278553366661072, - -0.01570734940469265, - -0.08624249696731567, - -0.09655316174030304, - 0.01300131343305111, - 0.032063499093055725, - -0.034426964819431305, - 0.036032259464263916, - 0.06893187016248703, - -0.05150822922587395, - 0.02387727051973343, - 0.01330776046961546, - 0.1009955108165741, - -0.06870239228010178, - 0.02597085013985634, - -0.04178846627473831, - 0.015592994168400764, - 0.07868680357933044, - -0.02680528722703457, - -0.03693900629878044, - -0.05068472772836685, - -0.03574802726507187, - 0.06267403811216354, - -0.04315007105469704, - -0.03363295644521713, - -0.017319170758128166, - 0.028717953711748123, - -0.043894216418266296, - -0.060050118714571, - 0.05433402955532074, - -0.03880521282553673, - 0.0020879385992884636, - -0.06176038086414337, - 0.0007769614458084106, - -0.05895606428384781, - 0.11176969110965729, - -0.0466681532561779, - 0.046651311218738556, - 0.03920469433069229, - -0.036042407155036926, - 0.05796392634510994, - 0.06418243795633316, - 0.06173306331038475, - 0.013650529086589813, - -0.06049313396215439, - -0.0877370685338974, - 0.026592738926410675, - -0.016280457377433777, - 0.0243687704205513, - 0.03331802785396576, - -0.012801187112927437, - -0.0022738445550203323, - 0.00848740991204977, - -0.035573720932006836, - 0.012242107652127743, - 0.09276110678911209, - 0.06797154247760773, - 0.016932833939790726, - -0.020362310111522675, - 0.09237921237945557, - 0.023318475112318993, - 0.028431814163923264, - -0.029714711010456085, - 0.03502645716071129, - -0.06460855901241302, - 0.014962121844291687, - 0.05536523461341858, - -0.10144593566656113, - 0.024608131498098373, - 0.01699121668934822, - 0.012575887143611908, - 0.018135521560907364, - 0.05983434617519379, - 0.055573634803295135, - -0.037474654614925385 - ] - }, - "p245_054.wav": { - "name": "p245", - "embedding": [ - 0.044531773775815964, - 0.08339071273803711, - -0.043592821806669235, - 0.032639503479003906, - -0.041242025792598724, - 0.03188537061214447, - -0.12195440381765366, - 0.12405737489461899, - -0.039067547768354416, - 0.11954139173030853, - -0.06776689738035202, - 0.10958655178546906, - -0.036398995667696, - -0.15811637043952942, - -0.0032070246525108814, - 0.060783497989177704, - -0.013422037474811077, - -0.024434328079223633, - -0.0128059983253479, - -0.006297648884356022, - 0.05196934938430786, - 0.030873890966176987, - 0.02055971696972847, - 0.004828694276511669, - -0.0059669530019164085, - 0.06463739275932312, - -0.01451481319963932, - 0.016734275966882706, - 0.0023957248777151108, - -0.009596682153642178, - -0.028207283467054367, - 0.0838286280632019, - -0.025441495701670647, - -0.001375867985188961, - 0.04361264035105705, - 0.013163789175450802, - -0.027481794357299805, - -0.06679468601942062, - -0.014668326824903488, - -0.021882986649870872, - -0.06359701603651047, - 0.049910545349121094, - 0.011246456764638424, - -0.04057619720697403, - 0.05698006972670555, - -0.032979294657707214, - -0.03630266711115837, - -0.02610834687948227, - -0.08936958014965057, - 0.1295086145401001, - 0.08682025969028473, - 0.030690256506204605, - -0.07012548297643661, - -0.03371772915124893, - 0.10229375213384628, - 0.013465752825140953, - -0.08645573258399963, - -0.044837117195129395, - 0.048386506736278534, - 0.15683308243751526, - -0.008068239316344261, - -0.014551311731338501, - 0.03809425234794617, - 0.09007300436496735, - 0.04222553223371506, - 0.08796178549528122, - 0.08538471162319183, - 0.08014971017837524, - 0.0014690251555293798, - 0.007828207686543465, - 0.0482005700469017, - 0.07763230055570602, - 0.04141215234994888, - -0.027177661657333374, - 0.011572152376174927, - 0.009257100522518158, - -0.04612048715353012, - 0.008623328059911728, - -0.007388022728264332, - -0.04041937366127968, - -0.03299110010266304, - -0.008901793509721756, - -0.0006154334987513721, - 0.016461152583360672, - -0.023357797414064407, - 0.028125744313001633, - 0.05248458683490753, - -0.0352524071931839, - 0.051901452243328094, - 0.027309920638799667, - -0.01561039499938488, - 0.03811197355389595, - -0.07006604224443436, - -0.08662566542625427, - 0.023440055549144745, - 0.0154373524710536, - 0.00595161272212863, - 0.08428120613098145, - 0.04134146124124527, - -0.0005706424708478153, - 0.09696288406848907, - 0.035293079912662506, - 0.005181587301194668, - 0.02159595489501953, - -0.07563850283622742, - 0.10091414302587509, - 0.09128039330244064, - -0.03950861096382141, - 0.04708978161215782, - -0.047100722789764404, - 0.04237062856554985, - 0.07073447108268738, - -0.11546891927719116, - -0.04164433479309082, - 0.037117987871170044, - 0.019331369549036026, - 0.018671944737434387, - 0.10687331855297089, - 0.025190195068717003, - 0.022847510874271393, - 0.09897732734680176, - -0.0918402224779129, - -0.09489685297012329, - -0.045933157205581665, - 0.06433014571666718, - -0.07319973409175873, - 0.07652459293603897, - 0.05230450630187988, - 0.010129591450095177, - -0.00817757286131382, - 0.05129304528236389, - -0.010708371177315712, - 0.003669125959277153, - -0.002487152349203825, - -0.03125491365790367, - 0.027580542489886284, - -0.05913276597857475, - -0.011526434682309628, - 0.048139046877622604, - 0.015221628360450268, - 0.042926251888275146, - 0.0016710280906409025, - 0.011386695317924023, - -0.10330268740653992, - 0.006572123151272535, - 0.07021503895521164, - 0.06470756977796555, - -0.014764896593987942, - -0.042874034494161606, - -0.03324338048696518, - -0.07297824323177338, - -0.007540812250226736, - -0.035766687244176865, - 0.08067728579044342, - -0.011344107799232006, - 0.035138264298439026, - 0.07291869074106216, - -0.001958150416612625, - 0.0014686796348541975, - -0.04221239313483238, - -0.017281625419855118, - 0.018143512308597565, - 0.04632008820772171, - -0.06905063986778259, - -0.09081631898880005, - -0.022073036059737206, - 0.02567869983613491, - -0.016295934095978737, - 0.029283598065376282, - 0.03530899062752724, - 0.01007854100316763, - 0.009313436225056648, - -0.08200067281723022, - 0.029111281037330627, - -0.1150745078921318, - -0.0669938176870346, - -0.02214871160686016, - -0.017387447878718376, - 0.017351120710372925, - 0.07316271960735321, - 0.024209685623645782, - 0.029132088646292686, - -0.014923411421477795, - -0.0653960257768631, - -0.09251268953084946, - 0.05088326334953308, - 0.06618297845125198, - -0.010669587180018425, - 0.03743422031402588, - 0.044326361268758774, - -0.044679902493953705, - 0.017755715176463127, - 0.04266372323036194, - 0.09544762223958969, - -0.02135905995965004, - -0.0040208748541772366, - -0.06608234345912933, - 0.06355912238359451, - 0.11735900491476059, - -0.09566470980644226, - -0.07402803003787994, - -0.04731234163045883, - -0.06647393107414246, - 0.023328756913542747, - -0.04298260062932968, - -0.0005063054850324988, - 0.02435779571533203, - -0.040551625192165375, - -0.11309491842985153, - -0.10754703730344772, - 0.07565949857234955, - -0.032360099256038666, - -0.014236598275601864, - -0.07610159367322922, - 0.03851526975631714, - 0.068403460085392, - 0.008493021130561829, - -0.04496745765209198, - -0.0027959574945271015, - 0.025532986968755722, - -0.02969980798661709, - -0.010796865448355675, - 0.04664656147360802, - 0.037412308156490326, - -0.10859899967908859, - -0.0028363890014588833, - -0.06875377893447876, - 0.0795290470123291, - -0.0637238547205925, - 0.13003848493099213, - -0.008818810805678368, - -0.04281790554523468, - -0.10158710181713104, - 0.03621697053313255, - 0.036350153386592865, - 0.04004887118935585, - 0.015556114725768566, - 0.055863939225673676, - 0.009571072645485401, - -0.0766301304101944, - 0.09556584805250168, - 0.04306706786155701, - -0.006984502077102661, - -0.07146522402763367, - -0.030883878469467163, - -0.03619595617055893, - 0.02568429335951805, - -0.015237387269735336, - -0.058929115533828735, - -0.005680184345692396, - 0.000603125779889524, - -0.0004595927894115448, - 0.05696096271276474, - 0.11993834376335144, - 0.04048936069011688, - -0.11684443056583405 - ] - }, - "p245_315.wav": { - "name": "p245", - "embedding": [ - 0.03413383662700653, - 0.11248143017292023, - -0.04909581318497658, - -0.01946149580180645, - -0.05494026094675064, - 0.05198469012975693, - -0.10419207811355591, - 0.06858484447002411, - -0.03169497847557068, - 0.15407967567443848, - -0.045282673090696335, - 0.11573299020528793, - -0.048958953469991684, - -0.11797276884317398, - 0.01691889949142933, - 0.046824801713228226, - -0.011813892051577568, - -0.008026326075196266, - -0.07579988241195679, - -0.0490071140229702, - 0.006307331379503012, - 0.006721321493387222, - 0.055475570261478424, - -0.08238747715950012, - 0.025415092706680298, - 0.06830001622438431, - -0.02267875149846077, - 0.009058261290192604, - -0.022792411968111992, - -0.05325685441493988, - -0.05768198519945145, - 0.0705752819776535, - -0.07316683232784271, - -0.005149628035724163, - 0.015670960769057274, - -0.000647758599370718, - -0.007105298340320587, - -0.04145439714193344, - 0.04939868673682213, - 0.008313881233334541, - -0.008967209607362747, - 0.07133138179779053, - -0.018732253462076187, - -0.03521409258246422, - 0.02477094531059265, - -0.003414227394387126, - -0.025668339803814888, - -0.009604323655366898, - -0.05513915419578552, - 0.12803515791893005, - 0.0672895759344101, - -0.028591400012373924, - -0.05910041928291321, - -0.04063919931650162, - 0.0807579904794693, - -0.0106466393917799, - -0.09221473336219788, - -0.08951853215694427, - 0.018430430442094803, - 0.07097722589969635, - -0.014687201008200645, - -0.03409990295767784, - 0.006377875339239836, - 0.06148528680205345, - 0.032162778079509735, - 0.08445896208286285, - 0.06989485025405884, - 0.10910843312740326, - -0.028483934700489044, - 0.023875702172517776, - 0.03908916562795639, - 0.03176497668027878, - 0.03761683776974678, - -0.0023465966805815697, - 0.039592765271663666, - -0.06574079394340515, - -0.007427575532346964, - 0.010662117972970009, - -0.022269485518336296, - -0.09172341972589493, - -0.033294033259153366, - -0.044124770909547806, - -0.02916226163506508, - -0.001995379338040948, - -0.0143654216080904, - 0.018939625471830368, - 0.10067899525165558, - -0.027329163625836372, - 0.09213057160377502, - 0.05443928390741348, - 0.0037899818271398544, - 0.04963983595371246, - -0.09650826454162598, - -0.03462880477309227, - 0.034820307046175, - -0.0007875389419496059, - 0.004731725435703993, - 0.04835128039121628, - 0.024307332932949066, - -0.020640313625335693, - 0.07182465493679047, - 0.07269822061061859, - 0.002478731330484152, - 0.013228606432676315, - -0.06202029436826706, - 0.1436268836259842, - 0.11806733906269073, - -0.035913363099098206, - 0.0031225793063640594, - -0.018875202164053917, - 0.03541206941008568, - 0.04431717097759247, - -0.0552237369120121, - -0.0839335173368454, - -0.030153775587677956, - -0.028216522186994553, - -0.021700209006667137, - 0.056338679045438766, - 0.012501124292612076, - 0.012556970119476318, - 0.10519523918628693, - -0.07827557623386383, - -0.0943988561630249, - -0.001382332295179367, - 0.028694912791252136, - -0.06438609212636948, - 0.023066814988851547, - 0.09650695323944092, - 0.02172049880027771, - 0.022864725440740585, - 0.09543150663375854, - 0.019513897597789764, - 0.034896932542324066, - 0.02922985702753067, - -0.021459218114614487, - 0.009129984304308891, - 0.014786722138524055, - -0.029674747958779335, - 0.06844797730445862, - 0.04813861474394798, - 0.07747222483158112, - -0.02400597371160984, - 0.04565712809562683, - -0.07895905524492264, - 0.03376833349466324, - 0.06263545900583267, - -0.0058061107993125916, - -0.04849748685956001, - 0.015252277255058289, - -0.010260669514536858, - -0.09156184643507004, - 0.006445238366723061, - -0.022827867418527603, - 0.08660911023616791, - -0.03378603607416153, - -0.015216754749417305, - 0.1553623527288437, - 0.03669090196490288, - -0.013548744842410088, - -0.059314094483852386, - -0.027013130486011505, - 0.0441359281539917, - 0.03447284549474716, - -0.10293310880661011, - -0.0661337822675705, - -0.02860097587108612, - 0.024177582934498787, - 0.003979003056883812, - 0.08148729056119919, - 0.11319103837013245, - -0.0069936830550432205, - 0.029588159173727036, - -0.05135303735733032, - 0.0418066643178463, - -0.015039725229144096, - -0.013632766902446747, - -0.018243515864014626, - -0.09486951678991318, - -0.026181941851973534, - 0.07402196526527405, - -0.004380423575639725, - 0.0331728495657444, - -0.06885910779237747, - -0.07564035058021545, - -0.08704549074172974, - 0.02460172027349472, - 0.054089777171611786, - -0.05204082652926445, - 0.03461485356092453, - 0.05356509983539581, - -0.02620266191661358, - 0.010335616767406464, - 0.07561412453651428, - 0.07537376135587692, - -0.051287420094013214, - -0.00031730160117149353, - -0.08707383275032043, - 0.060790468007326126, - 0.09890241920948029, - -0.09302216023206711, - -0.049903638660907745, - -0.08977462351322174, - -0.023200221359729767, - 0.0029694996774196625, - -0.05973154306411743, - -0.004922495689243078, - 0.05704745650291443, - -0.00866637472063303, - -0.05818870663642883, - -0.14534473419189453, - 0.10099364817142487, - -0.03192056342959404, - 0.011476516723632812, - -0.05229166895151138, - 0.03170435130596161, - -0.010224081575870514, - 0.04247201606631279, - -0.07210371643304825, - 0.035147733986377716, - 0.03281755745410919, - 0.012498822063207626, - 0.05496523529291153, - 0.04321397840976715, - 0.06977403163909912, - -0.04002279415726662, - -0.016014492139220238, - -0.08187700808048248, - 0.09048968553543091, - -0.03173889219760895, - 0.1459461748600006, - 0.01020322646945715, - -0.001790856011211872, - -0.09119556844234467, - 0.048776544630527496, - -0.04592974856495857, - 0.04166581481695175, - 0.06384682655334473, - 0.0476040281355381, - 0.005869491025805473, - -0.04697089642286301, - 0.0986829400062561, - 0.03343397378921509, - -0.02489675022661686, - -0.07331164926290512, - -0.014144917018711567, - -0.0687505304813385, - 0.050350695848464966, - 0.014541254378855228, - -0.08110079914331436, - 0.02182883396744728, - 0.023041747510433197, - -0.013296023942530155, - 0.07973086088895798, - 0.09263253957033157, - 0.09798845648765564, - -0.07878242433071136 - ] - }, - "p245_290.wav": { - "name": "p245", - "embedding": [ - 0.01912044547498226, - 0.0878903716802597, - -0.00811822060495615, - 0.040054745972156525, - -0.05176994204521179, - 0.026453204452991486, - -0.029326923191547394, - 0.06288449466228485, - 0.03335327282547951, - 0.06359043717384338, - -0.0520898662507534, - 0.04585761949419975, - -0.061563968658447266, - -0.10855460166931152, - -0.010652425698935986, - 0.023728996515274048, - -0.005488347262144089, - 0.020646758377552032, - -0.03890529274940491, - -0.01703776977956295, - -0.04177787899971008, - -0.022052664309740067, - -0.04700027406215668, - 0.025646071881055832, - -0.05263756960630417, - 0.04717602580785751, - -0.033035993576049805, - -0.0008956827223300934, - -0.026933956891298294, - -0.04906585067510605, - 0.02629845216870308, - 0.05654216557741165, - -0.02185446210205555, - -0.039292111992836, - 0.04170616716146469, - -0.04133742302656174, - 0.008103480562567711, - -0.023746736347675323, - -0.044792115688323975, - -0.0015041893348097801, - -0.063213050365448, - 0.00797811895608902, - 0.015389461070299149, - -0.07636027783155441, - 0.002584769856184721, - 0.03233061358332634, - -0.011692564934492111, - -0.01648004725575447, - -0.036780282855033875, - 0.09442220628261566, - 0.0322970375418663, - 0.029101412743330002, - -0.028388291597366333, - -0.029950594529509544, - 0.12743638455867767, - 0.015334445051848888, - 0.021385349333286285, - -0.029812147840857506, - 0.012949611991643906, - 0.06365389376878738, - 0.009745093062520027, - -0.01222170889377594, - 0.0481518991291523, - 0.052945736795663834, - -0.0042460206896066666, - 0.0463312566280365, - 0.057978421449661255, - 0.10464777052402496, - -0.020650649443268776, - 0.007968008518218994, - 0.05429162085056305, - 0.0014821551740169525, - 0.053401075303554535, - 0.022862186655402184, - -0.02775970846414566, - 0.011058037169277668, - 0.00011264253407716751, - 0.02712939865887165, - -0.028745047748088837, - -0.03999347239732742, - 0.01725243777036667, - -0.000758882611989975, - 0.01597965508699417, - -0.042269542813301086, - -0.032369546592235565, - -0.03964819386601448, - 0.0617033913731575, - -0.0014846604317426682, - 0.06334895640611649, - -0.014688508585095406, - 0.04743838310241699, - 0.05074680224061012, - -0.05440659075975418, - -0.05539717525243759, - 0.014292231760919094, - -0.019001878798007965, - 0.03565326705574989, - 0.037062324583530426, - 0.009589990600943565, - 0.014036282896995544, - 0.06806677579879761, - -0.024226054549217224, - 0.05962487682700157, - 0.01211432833224535, - -0.07123999297618866, - -0.02635989338159561, - 0.03756067156791687, - 0.005959119647741318, - 0.024486029520630836, - 0.044524870812892914, - 0.03301968052983284, - 0.08831869065761566, - -0.04037364944815636, - -0.05762895196676254, - 0.030030623078346252, - 0.07834096252918243, - -0.06656120717525482, - 0.10810627043247223, - -0.021274428814649582, - 0.028830530121922493, - 0.07025730609893799, - -0.006297927349805832, - -0.001488884910941124, - 0.013544036075472832, - -0.0005233306437730789, - -0.033376362174749374, - 0.0672052726149559, - 0.03341102972626686, - -0.030123023316264153, - -0.033759087324142456, - 0.04925951734185219, - -0.023741915822029114, - -0.033747073262929916, - -0.043573372066020966, - 0.03504834324121475, - 0.008837351575493813, - 0.039331164211034775, - -0.02504708059132099, - -0.0018461518920958042, - 0.0803990587592125, - -0.0009807944297790527, - -0.03415236994624138, - -0.010165511630475521, - -0.04275501146912575, - 0.019379690289497375, - 0.03222106397151947, - 0.03502677381038666, - 0.06861163675785065, - -0.03326110169291496, - -0.06489211320877075, - -0.006306573748588562, - 0.03422148898243904, - -0.05326361954212189, - 0.08789268136024475, - 0.058206744492053986, - 0.01831907406449318, - 0.07299650460481644, - -0.03483293205499649, - -0.0014111967757344246, - -0.030852051451802254, - -0.08148300647735596, - -0.01032851543277502, - 0.01567525416612625, - -0.02900564856827259, - -0.03451034426689148, - -0.028528772294521332, - -0.007494870573282242, - 0.007547067478299141, - 0.022373061627149582, - 0.021143479272723198, - -0.01800907962024212, - 0.04096347093582153, - -0.0828053206205368, - -0.006824616342782974, - -0.0184059739112854, - -0.038303181529045105, - 0.04072409123182297, - 0.012901604175567627, - 0.0010232338681817055, - 0.022037165239453316, - 0.009273068979382515, - -0.0196218378841877, - -0.053866732865571976, - -0.08367647975683212, - 0.016084197908639908, - 0.027223750948905945, - 0.025060266256332397, - -0.01541376393288374, - -0.005240677855908871, - 0.04960779473185539, - 0.05163364112377167, - 0.011579295620322227, - 0.03604981675744057, - 0.07421388477087021, - -0.033744823187589645, - -0.0032753143459558487, - 0.027166450396180153, - 0.10652270913124084, - 0.03926441818475723, - -0.053613074123859406, - -0.09483854472637177, - -0.0335165411233902, - -0.036572933197021484, - 0.05009347200393677, - -0.022581521421670914, - 0.03593762218952179, - -0.0089015644043684, - 0.005714827217161655, - 0.020998116582632065, - -0.10319957137107849, - 0.020687537267804146, - 0.007287014275789261, - -0.014180734753608704, - -0.018811218440532684, - 0.008932719938457012, - 0.021662309765815735, - 0.04693171754479408, - -0.022302716970443726, - -0.021310104057192802, - 0.020492244511842728, - -0.0006692931056022644, - -0.0024574417620897293, - 0.04556262865662575, - 0.0514710433781147, - -0.0010628588497638702, - -0.01849389635026455, - -0.025267377495765686, - 0.04617158696055412, - 0.015502825379371643, - 0.05003879964351654, - 0.009656425565481186, - -0.008890802040696144, - -0.09754496812820435, - 0.06594467163085938, - -0.021181201562285423, - 0.06645216047763824, - -0.007990904152393341, - 0.0376305915415287, - 0.06180844083428383, - -0.00667180772870779, - 0.08812643587589264, - 0.005475944839417934, - -0.0222301222383976, - -0.044031497091054916, - -0.0431826077401638, - -0.02952864021062851, - -0.001858039409853518, - 0.05068175867199898, - -0.01804637908935547, - -0.03750092163681984, - 0.04238550737500191, - 0.016636352986097336, - 0.07106532156467438, - 0.07458914071321487, - 0.0646275132894516, - 0.0074406638741493225 - ] - }, - "p245_341.wav": { - "name": "p245", - "embedding": [ - 0.05144480988383293, - 0.09490710496902466, - -0.021923646330833435, - 0.025897063314914703, - -0.060403577983379364, - 0.07773204892873764, - -0.1412520408630371, - 0.13891853392124176, - -0.04217970371246338, - 0.1378546953201294, - -0.035827118903398514, - 0.11010695993900299, - -0.022878920659422874, - -0.17258340120315552, - -0.029567096382379532, - 0.07048855721950531, - -0.05807400494813919, - -0.04977872222661972, - -0.052923671901226044, - -0.009816604666411877, - 0.008188669569790363, - 0.015158360823988914, - 0.03498988598585129, - -0.00605994276702404, - 0.03965850546956062, - 0.06300187110900879, - -0.006520512513816357, - 0.055122967809438705, - 0.007679138332605362, - -0.06641988456249237, - -0.014704719185829163, - 0.08735961467027664, - -0.06784327328205109, - 0.017183993011713028, - 0.04393257945775986, - -0.01377885602414608, - -0.0021048171911388636, - -0.06173987686634064, - -0.014424381777644157, - -0.006023450754582882, - -0.034361060708761215, - 0.10261380672454834, - 0.02472495660185814, - -0.007815316319465637, - 0.01871519535779953, - 0.013764625415205956, - -0.017168574035167694, - -0.047201819717884064, - -0.1079639196395874, - 0.15566271543502808, - 0.06997188925743103, - 0.0003933088155463338, - -0.08531288057565689, - -0.07673226296901703, - 0.08558286726474762, - -0.0208512581884861, - -0.12377744913101196, - -0.07109367847442627, - 0.06526520103216171, - 0.1547544300556183, - -0.03256845101714134, - -0.025883059948682785, - 0.010721691884100437, - 0.12660090625286102, - 0.08642827719449997, - 0.08840705454349518, - 0.07699798047542572, - 0.11311851441860199, - -0.019651539623737335, - 0.026744019240140915, - 0.06717963516712189, - 0.05525387451052666, - 0.04959084466099739, - 0.014187723398208618, - 0.0288851261138916, - -0.03147173672914505, - -0.0007630875916220248, - -0.028616424649953842, - -0.018456537276506424, - -0.02608596906065941, - -0.021630095317959785, - 0.020860102027654648, - 0.005859169643372297, - 0.05097389221191406, - -0.008726393803954124, - 0.04270967096090317, - 0.034227192401885986, - -0.0370824933052063, - 0.07148225605487823, - 0.049353644251823425, - 0.013594419695436954, - 0.06155559420585632, - -0.09407760947942734, - -0.07176750898361206, - 0.028547782450914383, - 0.0036114000249654055, - 0.028942083939909935, - 0.05231490731239319, - 0.023434635251760483, - -0.007127637974917889, - 0.10949581861495972, - 0.046734586358070374, - -0.0178220197558403, - 0.015526052564382553, - -0.08812092244625092, - 0.14471960067749023, - 0.05609337240457535, - -0.014147101901471615, - 0.04629359394311905, - -0.036612898111343384, - 0.04154061898589134, - 0.060822244733572006, - -0.12675780057907104, - -0.0879315584897995, - 0.02080797404050827, - -0.003991410601884127, - -0.03631272166967392, - 0.11920009553432465, - 0.01180082093924284, - 0.045656461268663406, - 0.09535133838653564, - -0.08752863854169846, - -0.050203315913677216, - 0.007991038262844086, - 0.05196003243327141, - -0.08059116452932358, - 0.04225955903530121, - 0.06067333742976189, - -0.017503179609775543, - 0.02666880004107952, - 0.09904748201370239, - 0.012025121599435806, - 0.009307839907705784, - 0.027502041310071945, - -0.04676958918571472, - 0.029968073591589928, - -0.011394794099032879, - -0.002331534866243601, - 0.039806317538022995, - 0.017847564071416855, - 0.06357142329216003, - -0.01853979378938675, - -0.020683813840150833, - -0.11147885024547577, - -0.0007262104190886021, - 0.03840206190943718, - 0.08944395929574966, - -0.029955651611089706, - -0.0004986696876585484, - -0.02589883655309677, - -0.05605993792414665, - 0.012824616394937038, - -0.004544756840914488, - 0.08468576520681381, - -0.011032759211957455, - -0.015628637745976448, - 0.13016214966773987, - 0.02594016119837761, - 0.009066566824913025, - -0.04820541664958, - -0.011101684533059597, - 0.01899886690080166, - 0.07315941154956818, - -0.0899038016796112, - -0.05063747987151146, - 0.01304718665778637, - 0.036304451525211334, - -0.009482748806476593, - 0.07670986652374268, - 0.06042204797267914, - 0.01884995773434639, - 0.012809822335839272, - -0.04806660860776901, - 0.016181349754333496, - -0.059673674404621124, - -0.06470909714698792, - 0.0014662076719105244, - -0.023437581956386566, - -0.051634907722473145, - 0.08094987273216248, - 0.0331161692738533, - 0.06778091937303543, - -0.025496773421764374, - -0.0826568678021431, - -0.08372054249048233, - 0.055319420993328094, - 0.05553797632455826, - -0.034959372133016586, - 0.027661526575684547, - 0.0661623403429985, - -0.0268266424536705, - 0.030382946133613586, - 0.06150016188621521, - 0.09969155490398407, - -0.05662955343723297, - 0.01419757679104805, - -0.08851909637451172, - 0.07444809377193451, - 0.08771632611751556, - -0.10171777009963989, - -0.06157103180885315, - -0.010723607614636421, - -0.055419087409973145, - 0.0169186070561409, - -0.04167061299085617, - 0.022828031331300735, - 0.056738466024398804, - -0.018225129693746567, - -0.10133303701877594, - -0.11747681349515915, - 0.09777864813804626, - -0.0977693498134613, - 0.01351673062890768, - -0.07692878693342209, - 0.03325483947992325, - 0.07665561139583588, - 0.055152133107185364, - -0.028388746082782745, - -0.005988146178424358, - 0.04631059616804123, - -0.020998038351535797, - 0.012032933533191681, - 0.0781719982624054, - 0.029342520982027054, - -0.10526087880134583, - -0.00933622196316719, - -0.0654182881116867, - 0.04446505755186081, - -0.030080342665314674, - 0.16331614553928375, - 0.011038949713110924, - -0.04740135371685028, - -0.09075221419334412, - 0.01164920348674059, - -0.04199260473251343, - 0.06427827477455139, - 0.028239388018846512, - 0.07292013615369797, - 0.06301284581422806, - -0.03558768332004547, - 0.12175273895263672, - 0.05364023149013519, - -0.03373897075653076, - -0.06901658326387405, - -0.05237111449241638, - -0.04455861821770668, - 0.05221952497959137, - 0.0010546408593654633, - -0.10342967510223389, - 0.004786589182913303, - 0.03170613944530487, - -0.02323976904153824, - 0.06615154445171356, - 0.1356145441532135, - 0.08601370453834534, - -0.10246265679597855 - ] - }, - "p245_296.wav": { - "name": "p245", - "embedding": [ - 0.041318681091070175, - 0.0945296585559845, - -0.026775799691677094, - 0.045866094529628754, - -0.055853065103292465, - 0.04816087707877159, - -0.10735886543989182, - 0.13000677525997162, - -0.04410688579082489, - 0.13508228957653046, - -0.06848134845495224, - 0.10222294181585312, - -0.006338165141642094, - -0.1870807558298111, - -0.03953560069203377, - 0.03323279321193695, - -0.07274294644594193, - -0.029713099822402, - -0.0779244601726532, - -0.0008681975305080414, - 0.05867717042565346, - 0.04237307235598564, - 0.014544080942869186, - -0.0234934464097023, - 0.006065462715923786, - 0.044528622180223465, - 0.019178733229637146, - 0.056521471589803696, - 0.058167532086372375, - -0.04547460377216339, - -0.0328659862279892, - 0.12109345197677612, - -0.029036706313490868, - 0.03205665200948715, - 0.05403066426515579, - -0.02390475943684578, - -0.007008626591414213, - -0.037837665528059006, - -0.04116789251565933, - 0.030151614919304848, - -0.054543085396289825, - 0.06686088442802429, - 0.0665142685174942, - 0.004767619073390961, - 0.056362103670835495, - 0.015434455126523972, - -0.047723133116960526, - -0.05780066177248955, - -0.07999444007873535, - 0.18002712726593018, - 0.08711431920528412, - -0.02807789295911789, - -0.05149059370160103, - -0.047855574637651443, - 0.10140743106603622, - -0.0037548760883510113, - -0.15592895448207855, - -0.04236697033047676, - 0.10501722246408463, - 0.15432967245578766, - -0.016631536185741425, - 0.0028191402088850737, - 0.00797203928232193, - 0.15575803816318512, - 0.05745095759630203, - 0.0968722477555275, - 0.059764306992292404, - 0.11765952408313751, - 0.011920973658561707, - 0.05072137713432312, - 0.06883751600980759, - 0.06562920659780502, - 0.005385405849665403, - -0.026856614276766777, - 0.03951319679617882, - -0.006331588141620159, - -0.0206725113093853, - -0.005500771105289459, - -0.030993448570370674, - 0.022903921082615852, - -0.0052184490486979485, - 0.014078463427722454, - 0.0032910448499023914, - 0.014566889964044094, - -0.0353395976126194, - 0.07072412967681885, - 0.014765985310077667, - 0.005105732940137386, - 0.043322768062353134, - 0.04887993633747101, - 0.025364618748426437, - 0.04704684019088745, - -0.04609707370400429, - -0.11718489974737167, - -0.014623098075389862, - 0.001542488345876336, - 0.02529967576265335, - 0.06292904913425446, - 0.03873699903488159, - -0.015730854123830795, - 0.11337673664093018, - 0.039424363523721695, - -0.041698943823575974, - 0.029235277324914932, - -0.09620600938796997, - 0.12352906912565231, - 0.0674699917435646, - 0.008962842635810375, - 0.03628653660416603, - -0.05478410795331001, - 0.0964847132563591, - 0.04554268717765808, - -0.13312795758247375, - -0.045462604612112045, - 0.06395375728607178, - -0.003645610297098756, - -0.02261500246822834, - 0.1143454983830452, - 0.00031702342675998807, - 0.010378554463386536, - 0.09764956682920456, - -0.06914980709552765, - -0.04608475789427757, - -0.03610144555568695, - 0.05797521770000458, - -0.08386005461215973, - 0.046092256903648376, - 0.009382068179547787, - -0.047608595341444016, - -0.0012762827100232244, - 0.08843357861042023, - -0.012790529057383537, - 0.013585151173174381, - 0.022525502368807793, - -0.04850340262055397, - 0.07277356088161469, - -0.04308157414197922, - 0.023064637556672096, - 0.03960254788398743, - 0.04245040938258171, - 0.0598858967423439, - -0.022455569356679916, - -0.044262465089559555, - -0.0901675894856453, - 0.023209083825349808, - 0.014932384714484215, - 0.07892078161239624, - 0.004284909460693598, - -0.0022143537644296885, - -0.04088211432099342, - -0.08096452057361603, - 0.01720733940601349, - -0.03373314440250397, - 0.07582180947065353, - -0.021895410493016243, - -0.030406001955270767, - 0.10198938101530075, - -0.007291710469871759, - 0.0030485086608678102, - -0.05230522155761719, - -0.024559469893574715, - 0.015485113486647606, - 0.04864849895238876, - -0.09028993546962738, - -0.04405295476317406, - 0.024547187611460686, - 0.007781818974763155, - -0.010542208328843117, - 0.005231906659901142, - 0.017798909917473793, - 0.0024374243803322315, - 0.0523248016834259, - -0.08068772405385971, - 0.010028494521975517, - -0.12339293211698532, - -0.05186411365866661, - -0.021564709022641182, - -0.0227389857172966, - -0.016183309257030487, - 0.07365275919437408, - 0.0012940015876665711, - 0.017588775604963303, - 0.03823458403348923, - -0.08692120015621185, - -0.06424491107463837, - 0.08963587880134583, - 0.06753387302160263, - 0.002155711641535163, - 0.06636876612901688, - 0.06379912048578262, - -0.043997108936309814, - 0.03490740805864334, - 0.049191415309906006, - 0.09566248953342438, - -0.008505954407155514, - -0.0019705158192664385, - -0.08357450366020203, - 0.08678137511014938, - 0.06673752516508102, - -0.11800973117351532, - -0.07379437237977982, - -0.020728258416056633, - -0.05262252315878868, - 0.007787683513015509, - -0.029094474390149117, - 0.0003525139472912997, - 0.03164540231227875, - 0.015931393951177597, - -0.10209763795137405, - -0.07028472423553467, - 0.08402393013238907, - -0.1088315024971962, - -0.01746816374361515, - -0.07123661041259766, - 0.026188498362898827, - 0.12433307617902756, - 0.04734567925333977, - -0.029640348628163338, - -0.0016770545626059175, - 0.0705217719078064, - -0.07041095197200775, - -0.017768193036317825, - 0.02826724946498871, - 0.020265942439436913, - -0.10742716491222382, - 0.006870593409985304, - -0.05989695340394974, - 0.037293531000614166, - -0.07067269831895828, - 0.13812874257564545, - 0.015748854726552963, - -0.0676906406879425, - -0.08093681931495667, - 0.06581062823534012, - -0.019399330019950867, - 0.044615477323532104, - 0.05384982377290726, - 0.05743812769651413, - 0.04006803035736084, - -0.07658716291189194, - 0.1392107456922531, - 0.021193357184529305, - -0.02970031090080738, - -0.06526640057563782, - -0.0215093232691288, - -0.03709458187222481, - 0.016958212479948997, - 0.0481191910803318, - -0.08683504909276962, - -0.02103733830153942, - 0.024913201108574867, - -0.06485319137573242, - 0.07178670167922974, - 0.13823001086711884, - 0.07610105723142624, - -0.10873140394687653 - ] - }, - "p245_281.wav": { - "name": "p245", - "embedding": [ - 0.04316239804029465, - 0.09389373660087585, - -0.004338981583714485, - 0.02047625370323658, - -0.050993047654628754, - 0.068476602435112, - -0.1208743304014206, - 0.12484188377857208, - -0.07613775134086609, - 0.1500626802444458, - -0.11026425659656525, - 0.1104574203491211, - -0.04054606705904007, - -0.18952953815460205, - -0.0257693063467741, - 0.05206223577260971, - -0.0442204549908638, - 0.0008913697674870491, - -0.04847009479999542, - -0.03451327979564667, - 0.04897636920213699, - 0.036467544734478, - 0.025049470365047455, - -0.004559813067317009, - 0.02676309645175934, - 0.06207616627216339, - -0.01977812498807907, - 0.016210488975048065, - 0.004305846989154816, - -0.07645659148693085, - -0.049201600253582, - 0.11599043011665344, - -0.02723785862326622, - 0.0043502310290932655, - 0.048825591802597046, - -0.0014877127250656486, - -0.008433063514530659, - -0.07079911231994629, - -0.024381348863244057, - -0.008154544979333878, - -0.053825974464416504, - 0.04391765967011452, - 0.01588037610054016, - -0.022000059485435486, - 0.04293741658329964, - 0.012471312656998634, - -0.020323943346738815, - -0.04164234548807144, - -0.08783012628555298, - 0.1584375947713852, - 0.06209580972790718, - 0.003575683571398258, - -0.06467777490615845, - -0.07489050924777985, - 0.12742935121059418, - 0.0025154389441013336, - -0.12956053018569946, - -0.01891259476542473, - 0.09117413312196732, - 0.17949531972408295, - -0.03186075761914253, - -0.023736614733934402, - 0.0336587093770504, - 0.10539084672927856, - 0.0021025659516453743, - 0.10217355936765671, - 0.06640615314245224, - 0.08427748084068298, - 0.01719059981405735, - 0.042019739747047424, - 0.05327766388654709, - 0.0626484751701355, - 0.046641625463962555, - -0.05263303965330124, - 0.006512587424367666, - 0.0006292110774666071, - -0.048804864287376404, - 0.008333852514624596, - -0.03805795684456825, - -0.026150163263082504, - -0.01371549442410469, - -0.01841064728796482, - 0.015263654291629791, - -0.032870713621377945, - -0.03372101113200188, - 0.03469639644026756, - 0.024499110877513885, - -0.015447386540472507, - 0.0741010457277298, - 0.02746744453907013, - 0.004795158747583628, - 0.04854855313897133, - -0.055203042924404144, - -0.09991756826639175, - 0.021872874349355698, - 0.021441973745822906, - -0.010287429206073284, - 0.07411578297615051, - 0.058819130063056946, - -0.028419315814971924, - 0.1258266568183899, - 0.044557999819517136, - 0.027902871370315552, - 0.020803408697247505, - -0.10969652235507965, - 0.11149384081363678, - 0.10121595114469528, - -0.017748437821865082, - 0.060041315853595734, - -0.04024200141429901, - 0.10059916973114014, - 0.09553758800029755, - -0.160922110080719, - -0.05883362144231796, - 0.0019642841070890427, - -0.00855749100446701, - -3.0842842534184456e-05, - 0.10438629984855652, - -0.014789480715990067, - 0.015048881061375141, - 0.10627907514572144, - -0.10361991077661514, - -0.06523903459310532, - -0.036818645894527435, - 0.04138176143169403, - -0.08383512496948242, - 0.06932668387889862, - 0.05693099647760391, - -0.021924462169408798, - 0.01642550528049469, - 0.07105615735054016, - -0.03741040453314781, - -0.0012498274445533752, - 0.005890397354960442, - -0.05652263015508652, - 0.010543439537286758, - -0.059381477534770966, - -0.0016308611957356334, - 0.05255758389830589, - 0.048733849078416824, - 0.041055403649806976, - 0.00028462009504437447, - -0.03760337084531784, - -0.0806020051240921, - 0.007694039959460497, - 0.03671346604824066, - 0.05928145349025726, - 0.008565877564251423, - -0.007897469215095043, - -0.03692619130015373, - -0.07190090417861938, - 0.03099704720079899, - -0.034588899463415146, - 0.09157770127058029, - -0.00566551648080349, - 0.017080388963222504, - 0.0929098129272461, - 0.04333870857954025, - -0.01783258095383644, - -0.08507756888866425, - -0.039767101407051086, - 0.020575709640979767, - 0.03145882859826088, - -0.08532088249921799, - -0.06350696086883545, - -0.007995542138814926, - 0.020544854924082756, - -0.025409091264009476, - 0.041259557008743286, - 0.03125467151403427, - 0.021289899945259094, - 0.03556213900446892, - -0.07972882688045502, - 0.028546597808599472, - -0.11305233836174011, - -0.06000962853431702, - 0.004138820804655552, - -0.0448276624083519, - -0.0060881758108735085, - 0.09007851779460907, - 0.005987387616187334, - -0.004957599099725485, - -0.025380559265613556, - -0.06755310297012329, - -0.06653745472431183, - 0.05965537950396538, - 0.05057786777615547, - 0.009551698341965675, - 0.04264432191848755, - 0.04539789259433746, - -0.03645608201622963, - 0.06734208762645721, - 0.05736595019698143, - 0.11864569783210754, - -0.009800620377063751, - 0.020939519628882408, - -0.061349056661129, - 0.08253012597560883, - 0.0883067324757576, - -0.07265673577785492, - -0.10535315424203873, - -0.05579511076211929, - -0.06478118151426315, - 0.07777097821235657, - -0.012174505740404129, - -0.02264985628426075, - 0.0001900692004710436, - -0.030676869675517082, - -0.08952242136001587, - -0.06041882559657097, - 0.09801868349313736, - -0.038460567593574524, - -0.0325746014714241, - -0.08659961819648743, - 0.05395590141415596, - 0.08195780217647552, - 0.025128480046987534, - -0.024774737656116486, - 0.008562793023884296, - 0.05355486273765564, - -0.07659287750720978, - -0.006160122808068991, - 0.04255946725606918, - 0.017358507961034775, - -0.08650492131710052, - 0.007121242582798004, - -0.09494180232286453, - 0.07364729791879654, - -0.058140769600868225, - 0.15665312111377716, - -0.011113450862467289, - -0.05189599096775055, - -0.08183331787586212, - 0.07581934332847595, - -0.010511255823075771, - 0.03715214133262634, - 0.05822507292032242, - 0.06378577649593353, - 0.04279954731464386, - -0.08393155038356781, - 0.09939467161893845, - 0.00495325680822134, - -0.0136440210044384, - -0.04334452748298645, - -0.04805696755647659, - -0.046550579369068146, - -0.015952609479427338, - -0.024811657145619392, - -0.10690297186374664, - -0.00766246672719717, - 0.00816418882459402, - 0.011764800176024437, - 0.07797898352146149, - 0.1134762093424797, - 0.051282189786434174, - -0.10418900102376938 - ] - }, - "p245_200.wav": { - "name": "p245", - "embedding": [ - 0.024939430877566338, - 0.07433727383613586, - -0.02525252290070057, - -0.02982010878622532, - -0.04866282641887665, - 0.03008236363530159, - -0.10671471804380417, - 0.08964802324771881, - -0.02626296691596508, - 0.13251730799674988, - -0.031405266374349594, - 0.12363055348396301, - -0.012178616598248482, - -0.08940556645393372, - 0.0018033534288406372, - 0.03925182297825813, - -0.02653134986758232, - -0.018556490540504456, - 0.026375677436590195, - -0.09278352558612823, - 0.01694541983306408, - 0.012202143669128418, - 0.010271896608173847, - -0.02886061742901802, - 0.03657793253660202, - 0.08312389999628067, - -0.010484747588634491, - -0.015864841639995575, - -0.0163906030356884, - -0.07271693646907806, - -0.023432716727256775, - 0.07284985482692719, - -0.0495089590549469, - -0.036293063312768936, - 0.03591129183769226, - -0.017441047355532646, - 0.012030897662043571, - -0.030306216329336166, - 0.011072250083088875, - 0.050925251096487045, - -0.05886799469590187, - 0.09645560383796692, - 0.015479094348847866, - -0.012519692070782185, - 0.03595249354839325, - -0.0164759811013937, - -0.03039535880088806, - 0.04172850400209427, - -0.04935479164123535, - 0.09674926102161407, - 0.048564258962869644, - -0.000288613693555817, - -0.0673631876707077, - -0.014889011159539223, - 0.0623813234269619, - 6.916932761669159e-05, - -0.08723580837249756, - 0.014711225405335426, - -0.008832443505525589, - 0.08853672444820404, - 0.0005101468414068222, - -0.05904746800661087, - 0.03553440421819687, - 0.07162363827228546, - 0.01699855551123619, - 0.019998032599687576, - 0.07644030451774597, - 0.07371202111244202, - -0.024670282378792763, - -0.013962291181087494, - 0.050953831523656845, - 0.09373202919960022, - 0.042279232293367386, - -0.028921708464622498, - 0.029026946052908897, - -0.012677819468080997, - -0.01491071842610836, - -0.053724255412817, - -0.02286776900291443, - -0.04822743311524391, - -0.07667197287082672, - -0.008525769226253033, - 0.00692553399130702, - 0.06857479363679886, - -0.0091291144490242, - 0.0035489723086357117, - 0.05871639400720596, - -0.03512198105454445, - 0.043976426124572754, - 0.040980033576488495, - -0.004412780050188303, - 0.01763414777815342, - -0.09585338830947876, - -0.020235881209373474, - 0.0206478089094162, - -0.020029375329613686, - 0.055878497660160065, - 0.06788526475429535, - 0.026739640161395073, - 0.018899738788604736, - 0.08721262216567993, - 0.0679880827665329, - 0.024675853550434113, - -0.04514288902282715, - -0.06802409142255783, - 0.11047828197479248, - 0.10541452467441559, - -0.06352011114358902, - 0.02776617370545864, - 0.029069572687149048, - 0.028467632830142975, - -0.019322458654642105, - -0.1172647774219513, - -0.04296399652957916, - -0.017716901376843452, - 0.05623961612582207, - 0.028697222471237183, - 0.09767939895391464, - 0.014171984046697617, - 0.0632934719324112, - 0.0728757306933403, - -0.015174215659499168, - -0.043012503534555435, - -0.05897904187440872, - 0.035041432827711105, - -0.0940159261226654, - 0.08481593430042267, - 0.06827917695045471, - 0.0398956835269928, - 0.027891317382454872, - 0.07555405795574188, - 0.020095162093639374, - -0.001981164328753948, - -0.03519681468605995, - -0.005365423858165741, - 0.004899994470179081, - 0.0011436042841523886, - 0.05051884427666664, - 0.0682157501578331, - 0.006879162043333054, - 0.10563625395298004, - 0.03429514169692993, - 0.02302711457014084, - -0.07805975526571274, - 0.03918889909982681, - 0.013640772551298141, - 0.02186778001487255, - -0.040986474603414536, - -0.05063813924789429, - 0.01307217963039875, - -0.05762668699026108, - -0.03132152184844017, - 0.012684009969234467, - 0.08698233962059021, - -0.0092921182513237, - -0.00035212747752666473, - 0.09546104073524475, - 0.048112861812114716, - -0.014029380865395069, - 0.026199499145150185, - -0.027232758700847626, - -0.02722012996673584, - 0.07394665479660034, - -0.1244584321975708, - -0.08965231478214264, - -0.017049642279744148, - 0.023505130782723427, - 0.024891991168260574, - 0.06786487996578217, - 0.09854506701231003, - -0.023347780108451843, - 0.03873459994792938, - 0.002268165349960327, - 0.007273775991052389, - -0.052528440952301025, - -0.05805787444114685, - -0.04761459678411484, - -0.07977532595396042, - -0.08394771814346313, - 0.06359367072582245, - -0.021463530138134956, - 0.07687333971261978, - -0.019330628216266632, - -0.030743122100830078, - -0.05443199723958969, - 0.022308409214019775, - 0.015683092176914215, - -0.039642155170440674, - 0.005122012458741665, - 0.09998506307601929, - 0.022308651357889175, - 0.001636601984500885, - 0.04902666062116623, - 0.06823647022247314, - -0.07573557645082474, - 0.019600939005613327, - -0.06206582486629486, - 0.08165790140628815, - 0.06261108070611954, - -0.033628933131694794, - -0.06303587555885315, - -0.08612208068370819, - -0.04926425963640213, - 0.06854651123285294, - -0.015825580805540085, - 0.001919277012348175, - 0.004753971006721258, - -0.02591554820537567, - -0.05505221709609032, - -0.06278872489929199, - 0.0532737672328949, - -0.042514581233263016, - -0.0005053229979239404, - -0.04744567722082138, - 0.008204679004848003, - 0.025649558752775192, - 0.06280621141195297, - -0.04345583915710449, - 0.05438661575317383, - 0.025178682059049606, - -0.018067140132188797, - 0.021471034735441208, - 0.058836158365011215, - 0.03464612364768982, - -0.03089158982038498, - -0.05643361061811447, - -0.06605249643325806, - 0.058067843317985535, - -0.046560630202293396, - 0.06214062124490738, - 0.026599962264299393, - -0.044281624257564545, - -0.043504875153303146, - 0.0005766376852989197, - -0.023025842383503914, - 0.022232720628380775, - 0.08538094162940979, - 0.07625876367092133, - 0.022420961409807205, - -0.014766862615942955, - 0.07176991552114487, - 0.03368942439556122, - 0.0020218826830387115, - -0.033641137182712555, - -0.009077683091163635, - -0.020941833034157753, - 0.03228991478681564, - 0.053042322397232056, - -0.09055463969707489, - 0.05898561328649521, - 0.00012491096276789904, - 0.022904491052031517, - 0.05739465355873108, - 0.04272972792387009, - 0.052329860627651215, - -0.07928024232387543 - ] - }, - "p245_099.wav": { - "name": "p245", - "embedding": [ - 0.04797389730811119, - 0.05731881782412529, - -0.01664837822318077, - 0.06621331721544266, - -0.037036310881376266, - 0.04248513653874397, - -0.09955631196498871, - 0.09833134710788727, - -0.028889445587992668, - 0.1185491755604744, - -0.08084610104560852, - 0.12563496828079224, - -0.04067962244153023, - -0.12601245939731598, - 0.020635247230529785, - 0.03957397863268852, - -0.0029155127704143524, - -0.018910743296146393, - -0.03386684134602547, - 0.003915635868906975, - 0.018154732882976532, - 0.024123037233948708, - 0.08103647828102112, - -0.04928715154528618, - 0.01759207621216774, - 0.06991182267665863, - 0.019663583487272263, - 0.07400402426719666, - 0.029341569170355797, - -0.07665659487247467, - -0.03882969543337822, - 0.06719779968261719, - -0.061870746314525604, - -0.006127007771283388, - 0.035242341458797455, - -0.0017320187762379646, - -0.01734486222267151, - -0.06741787493228912, - -0.014015083201229572, - 0.005804424174129963, - -0.06314443796873093, - 0.06655818223953247, - -0.011562912724912167, - -0.06722623109817505, - 0.029264191165566444, - 0.0032405396923422813, - -0.0038957998622208834, - -0.012525351718068123, - -0.12379302084445953, - 0.12770959734916687, - 0.034488823264837265, - 0.017717232927680016, - -0.05976395308971405, - -0.08137929439544678, - 0.08960846066474915, - 0.017543073743581772, - -0.07438570261001587, - -0.04093882441520691, - 0.0653700977563858, - 0.11880487203598022, - -0.033533886075019836, - -0.029918277636170387, - 0.04755759611725807, - 0.06378337740898132, - 0.1010880395770073, - 0.06463412195444107, - 0.07664380967617035, - 0.11635836958885193, - 0.0021344833076000214, - 0.024340124800801277, - 0.032780971378088, - 0.0974268764257431, - 0.009732979349792004, - 0.03125299885869026, - -0.013230005279183388, - 0.03494032844901085, - -0.036179449409246445, - 0.007988890632987022, - -0.005469565745443106, - -0.03135570511221886, - 0.026901038363575935, - -0.030528370290994644, - 0.03191215917468071, - 0.012297059409320354, - -0.03444536775350571, - 0.06359434872865677, - 0.03217943012714386, - -0.02028823085129261, - 0.05408889055252075, - -0.04371800273656845, - -0.020244712010025978, - 0.046688586473464966, - -0.08195452392101288, - -0.07157929986715317, - 0.0015675760805606842, - 0.011018885299563408, - 0.005806446075439453, - 0.08384741842746735, - 0.0452895313501358, - -0.02232355624437332, - 0.14760661125183105, - 0.04032951965928078, - -0.011120690032839775, - 0.01873120665550232, - -0.023098144680261612, - 0.10003713518381119, - 0.08632374554872513, - -0.014551489613950253, - 0.03517834469676018, - -0.0368342250585556, - 0.05442814156413078, - 0.05583671107888222, - -0.12702547013759613, - -0.0734264925122261, - 0.012456387281417847, - -0.006074516102671623, - -0.002131884451955557, - 0.10714790225028992, - -0.0018328316509723663, - 0.029803579673171043, - 0.12262587249279022, - -0.11412858963012695, - -0.05872868373990059, - 0.0019734473899006844, - 0.0458216667175293, - -0.04639827832579613, - 0.05771676450967789, - 0.05319635942578316, - -0.013182412832975388, - -0.0181103702634573, - 0.0763944685459137, - -0.024806607514619827, - -0.0013747243210673332, - 0.030301911756396294, - -0.0450468584895134, - 0.03634897619485855, - -0.05253252759575844, - -0.02253030613064766, - 0.09377595037221909, - 0.025862909853458405, - 0.0702534019947052, - -0.04127182438969612, - -0.024843038991093636, - -0.1249043419957161, - 0.03717726096510887, - 0.04913254454731941, - 0.06471754610538483, - -0.039670512080192566, - -0.05141894146800041, - -0.06116370111703873, - -0.07510469853878021, - 0.03804895281791687, - -0.008929936215281487, - 0.07653331756591797, - -0.03723600506782532, - 0.026008635759353638, - 0.0677201971411705, - -0.0020098406821489334, - -0.017148375511169434, - -0.05122039467096329, - -0.07550272345542908, - -0.008807705715298653, - 0.025530848652124405, - -0.05315689742565155, - -0.08590848743915558, - -0.04814942553639412, - 0.017998334020376205, - -0.03655826300382614, - 0.04605000466108322, - 0.018693581223487854, - 0.0278000608086586, - 0.011537164449691772, - -0.02198604680597782, - -0.010920695960521698, - -0.06340960413217545, - -0.03395809605717659, - -0.03288775309920311, - 0.009680969640612602, - -0.01693061739206314, - 0.08156916499137878, - 0.029080234467983246, - 0.06477776169776917, - -0.02653038315474987, - -0.04795694723725319, - -0.09764037281274796, - 0.053057290613651276, - 0.029055697843432426, - -0.0038898885250091553, - 0.046625442802906036, - 0.08647708594799042, - -0.02352616935968399, - 0.02273315191268921, - 0.03572075068950653, - 0.052214041352272034, - 0.0035590827465057373, - -0.008618451654911041, - -0.06136263906955719, - 0.11565394699573517, - 0.10002350807189941, - -0.06544682383537292, - -0.04990899935364723, - -0.03754248097538948, - -0.09936943650245667, - 0.06782529503107071, - -0.03666696697473526, - -0.010957189835608006, - 0.047450751066207886, - -0.04349039867520332, - -0.09827381372451782, - -0.08476640284061432, - 0.0804053246974945, - -0.03720587491989136, - -0.02907801792025566, - -0.07870368659496307, - 0.009352538734674454, - 0.058842990547418594, - 0.06708842515945435, - 0.011715766042470932, - 0.01123451255261898, - 0.03538103401660919, - -0.03175191953778267, - 0.019035685807466507, - 0.11148630082607269, - 0.010102298110723495, - -0.08917774260044098, - -0.02202148549258709, - -0.059331461787223816, - 0.05914332717657089, - -0.048362839967012405, - 0.10305222868919373, - 0.0019009602256119251, - -0.020299125462770462, - -0.07116810977458954, - 0.05938335880637169, - -0.031602777540683746, - 0.05474865436553955, - 0.03143714740872383, - 0.034149542450904846, - 0.03435913473367691, - -0.09433424472808838, - 0.1179744154214859, - 0.032009437680244446, - -0.02853197604417801, - -0.06957449018955231, - -0.050554729998111725, - -0.042635612189769745, - 0.02992558665573597, - 0.029597483575344086, - -0.07063183188438416, - -0.0011022929102182388, - 0.016902685165405273, - -0.02418183907866478, - 0.03027252107858658, - 0.1287989318370819, - 0.048080917447805405, - -0.07848779857158661 - ] - }, - "p245_050.wav": { - "name": "p245", - "embedding": [ - 0.05023301765322685, - 0.08407358825206757, - 0.012249777093529701, - -0.004582732915878296, - 0.00921735167503357, - 0.03914384916424751, - -0.1385028064250946, - 0.10706543177366257, - -0.038663528859615326, - 0.13633409142494202, - -0.10946248471736908, - 0.10321488231420517, - -0.06059561297297478, - -0.16560634970664978, - -0.03220677375793457, - 0.03134256973862648, - -0.012396692298352718, - 0.007105602882802486, - -0.009908203966915607, - -0.027424683794379234, - 0.04879109188914299, - 0.032814767211675644, - 0.0404229611158371, - -0.016135631129145622, - -0.02184418961405754, - 0.06487292796373367, - 0.001284771948121488, - 0.03454388305544853, - 0.024741049855947495, - -0.0221596360206604, - 0.007210791110992432, - 0.07492826879024506, - -0.014464574865996838, - 0.023417605087161064, - 0.047493986785411835, - 0.03747191280126572, - -0.028197024017572403, - -0.043357040733098984, - -0.00019876348960679024, - 0.0013277034740895033, - -0.05088428780436516, - 0.050801992416381836, - 0.006723180413246155, - -0.01704547181725502, - 0.07095968723297119, - -0.01579451374709606, - -0.01814933679997921, - -0.016627049073576927, - -0.08284677565097809, - 0.1097920835018158, - 0.0793813094496727, - 0.030496686697006226, - -0.06401565670967102, - -0.022432729601860046, - 0.09402446448802948, - -0.02061808668076992, - -0.10900342464447021, - -0.04879279062151909, - 0.07701753079891205, - 0.14399832487106323, - -0.04000835120677948, - -0.039612721651792526, - 0.0062844278290867805, - 0.06933045387268066, - -0.0021418731193989515, - 0.08384978026151657, - 0.11210405826568604, - 0.07143969088792801, - 0.0017284353962168097, - 0.01101828645914793, - 0.01896217092871666, - 0.056189291179180145, - 0.041943322867155075, - -0.03135531395673752, - 0.011549843475222588, - -0.01569194719195366, - -0.018923219293355942, - 0.023408878594636917, - -0.02063116803765297, - -0.04125453904271126, - -0.030472127720713615, - -0.021046843379735947, - -0.023883666843175888, - -0.008352704346179962, - -0.018687037751078606, - 0.019816428422927856, - 0.03232010453939438, - -0.01079557090997696, - 0.050949014723300934, - 0.0433989092707634, - -0.005060452502220869, - 0.024456534534692764, - -0.04327687621116638, - -0.061716478317976, - 0.0017756118904799223, - 0.007055922411382198, - -0.019221888855099678, - 0.07131462544202805, - 0.035756729543209076, - 0.01814980059862137, - 0.10414302349090576, - 0.023390082642436028, - -0.009977656416594982, - 0.002370603382587433, - -0.09756433218717575, - 0.09115295112133026, - 0.09864702075719833, - -0.04001914709806442, - 0.03529156744480133, - -0.05400681495666504, - 0.02995765022933483, - 0.07381685078144073, - -0.09159816801548004, - -0.026553085073828697, - 0.024876292794942856, - 0.03304285556077957, - 0.025642594322562218, - 0.09719684720039368, - 0.002858811989426613, - -0.0025673508644104004, - 0.11778514087200165, - -0.06069906800985336, - -0.08164152503013611, - -0.050629623234272, - 0.023459255695343018, - -0.06639887392520905, - 0.07500357180833817, - 0.0432649664580822, - 0.0249970443546772, - 0.007935889065265656, - 0.0689091831445694, - -0.003879968076944351, - -0.003371685743331909, - -0.03303280472755432, - -0.03112868033349514, - 0.005660293623805046, - -0.06665004789829254, - -0.0003721409884747118, - 0.03621627390384674, - 0.045871801674366, - 0.0525544099509716, - 0.03317507728934288, - -0.03997926786541939, - -0.08191762864589691, - -0.009530076757073402, - 0.05157766863703728, - 0.042967699468135834, - -0.02040005475282669, - -0.03236093372106552, - -0.04035399481654167, - -0.04318874701857567, - 0.01618031971156597, - -0.061329469084739685, - 0.08321692794561386, - -0.010404542088508606, - 0.01469092071056366, - 0.07953208684921265, - -0.020822763442993164, - -0.011731987819075584, - -0.07514123618602753, - -0.015800151973962784, - -0.002479126676917076, - 0.008888563141226768, - -0.09747322648763657, - -0.07021086663007736, - -0.03552898392081261, - 0.03687005490064621, - -0.011990826576948166, - 0.03773476183414459, - 0.048297666013240814, - -0.0001280568540096283, - 0.004878080449998379, - -0.059530820697546005, - 0.006472278386354446, - -0.11003661155700684, - -0.08119408041238785, - -0.007553338073194027, - -0.025208037346601486, - 0.029597129672765732, - 0.06932783126831055, - -0.007433533668518066, - 0.011366916820406914, - -0.017465949058532715, - -0.10035966336727142, - -0.10316044092178345, - 0.06292540580034256, - 0.06025577336549759, - 0.0047773150727152824, - 0.04025264084339142, - 0.03914668411016464, - -0.04787943884730339, - 0.07229110598564148, - 0.02674618922173977, - 0.09172123670578003, - -0.04650774225592613, - 0.02007182314991951, - -0.05496493726968765, - 0.026629026979207993, - 0.1155325397849083, - -0.06653355062007904, - -0.08573679625988007, - -0.05051653832197189, - -0.06250812858343124, - 0.039306141436100006, - -0.028587397187948227, - -0.03125658631324768, - 0.01702810451388359, - -0.04568246006965637, - -0.09682674705982208, - -0.08427475392818451, - 0.048536404967308044, - -0.02547849714756012, - -0.001573527930304408, - -0.07549740374088287, - 0.05138392373919487, - 0.037759825587272644, - 0.02291359379887581, - -0.019467901438474655, - 0.017523251473903656, - 0.009189575910568237, - -0.05531178042292595, - -0.01360197365283966, - 0.016984183341264725, - 0.03654772788286209, - -0.0690145492553711, - -0.0010855160653591156, - -0.08244650065898895, - 0.06669095903635025, - -0.061314743012189865, - 0.08719583600759506, - -0.003984938375651836, - -0.037146057933568954, - -0.048084571957588196, - 0.0083693265914917, - 0.003241797909140587, - 0.03946899622678757, - 0.02690153382718563, - 0.043775223195552826, - 0.0009269304573535919, - -0.08752890676259995, - 0.0961446464061737, - 0.037892162799835205, - 0.003973602317273617, - -0.05850657448172569, - -0.02105182409286499, - -0.059252798557281494, - -0.0024594441056251526, - -0.019940117374062538, - -0.08833538740873337, - -0.01831350475549698, - -0.008458632044494152, - 0.0074912733398377895, - 0.03735307604074478, - 0.11042550206184387, - 0.013948485255241394, - -0.09502600878477097 - ] - }, - "p245_403.wav": { - "name": "p245", - "embedding": [ - 0.0377490296959877, - 0.0732356607913971, - -0.019850432872772217, - 0.0333767831325531, - -0.07099741697311401, - 0.05619765818119049, - -0.1509312242269516, - 0.1263742446899414, - -0.027428142726421356, - 0.1251850426197052, - -0.04978351294994354, - 0.1028362438082695, - -0.002218975918367505, - -0.22137275338172913, - 0.006918236147612333, - 0.0729297548532486, - -0.014897100627422333, - -0.022236498072743416, - -0.031686216592788696, - -0.025594644248485565, - 0.018437325954437256, - 0.05417141318321228, - 0.020603956654667854, - -0.017678197473287582, - 0.06263827532529831, - 0.055562734603881836, - -0.02087223157286644, - 0.01868341863155365, - -0.01220864336937666, - -0.048225805163383484, - -0.05367189645767212, - 0.09862232953310013, - -0.06352758407592773, - -0.008043133653700352, - 0.05733560770750046, - -0.011390184983611107, - -0.012570415623486042, - -0.04948428273200989, - -0.02673189342021942, - 0.024310864508152008, - -0.059616900980472565, - 0.09221051633358002, - 0.06049450486898422, - -0.0023746411316096783, - 0.05961926281452179, - 0.015207107178866863, - -0.007485062815248966, - -0.05887911468744278, - -0.11336857080459595, - 0.15759360790252686, - 0.04255159944295883, - -0.01151873730123043, - -0.07437939941883087, - -0.0654408186674118, - 0.09553039073944092, - -0.0043128496035933495, - -0.10397833585739136, - -0.04489545151591301, - 0.08238612115383148, - 0.1481323093175888, - -0.004289031028747559, - -0.03150048106908798, - 0.026212798431515694, - 0.09638091921806335, - 0.039877258241176605, - 0.10572708398103714, - 0.04421164095401764, - 0.09841453284025192, - -0.0050971657037734985, - 0.012710859067738056, - 0.06164707988500595, - 0.05109027028083801, - 0.010820966213941574, - -0.04045774042606354, - 0.01703864522278309, - 0.009230081923305988, - -0.030867155641317368, - -0.001352402614429593, - 0.001722430344671011, - 0.009927773848176003, - -0.0018683752277866006, - 0.003392999991774559, - 0.015851695090532303, - 0.011007177643477917, - -0.0496663823723793, - 0.03806179761886597, - 0.049583856016397476, - 0.016059570014476776, - 0.07973407208919525, - 0.03753602132201195, - -0.011931311339139938, - 0.05727504938840866, - -0.0767231434583664, - -0.07214605063199997, - 0.03396015614271164, - 0.016391996294260025, - -0.0017494803760200739, - 0.06703546643257141, - 0.03006320632994175, - -0.01927153207361698, - 0.12514999508857727, - 0.055862873792648315, - 0.002293237717822194, - 0.0503060556948185, - -0.08753368258476257, - 0.1179405152797699, - 0.07085679471492767, - -0.0001921962248161435, - 0.08866031467914581, - -0.04881196469068527, - 0.07010506093502045, - 0.06854349374771118, - -0.14733177423477173, - -0.05160451680421829, - 0.0433259978890419, - 0.007557045668363571, - -0.021415123715996742, - 0.15008965134620667, - 0.006820023991167545, - 0.01624210737645626, - 0.0982942134141922, - -0.11900971829891205, - -0.07204529643058777, - -0.0007706643082201481, - 0.0513414591550827, - -0.10332310944795609, - 0.04690876230597496, - 0.06416155397891998, - -0.040872395038604736, - 0.019163815304636955, - 0.06826205551624298, - 0.0007301387377083302, - 0.041555047035217285, - 0.008249817416071892, - -0.01041487231850624, - 0.03226141631603241, - -0.022251099348068237, - 0.007512851618230343, - 0.06927990168333054, - 0.00921021867543459, - 0.05257350206375122, - -0.013672875240445137, - -0.017679965123534203, - -0.13836930692195892, - 0.008151741698384285, - 0.03629102557897568, - 0.08736777305603027, - -0.02026567980647087, - -0.009210661053657532, - -0.06033314764499664, - -0.11327636986970901, - 0.028572317212820053, - -0.008258670568466187, - 0.09571856260299683, - -0.003611412364989519, - -0.005928050726652145, - 0.10117276757955551, - 0.04710693657398224, - -0.006630953401327133, - -0.051499143242836, - -0.04675263911485672, - 0.0014382260851562023, - 0.05600534379482269, - -0.08773181587457657, - -0.06035488471388817, - -0.016414295881986618, - 0.022271832451224327, - -0.02416715770959854, - 0.039517588913440704, - 0.04905982315540314, - 0.03403179347515106, - 0.043375611305236816, - -0.09376996755599976, - 0.022426482290029526, - -0.09017930179834366, - -0.0545673742890358, - -0.028377365320920944, - -0.002430593129247427, - -0.03984657675027847, - 0.10902615636587143, - 0.022513747215270996, - 0.035332273691892624, - -0.030425477772951126, - -0.0381329171359539, - -0.06094350665807724, - 0.058856137096881866, - 0.04914209246635437, - -0.010538293980062008, - 0.048013120889663696, - 0.04214265197515488, - -0.06385670602321625, - 0.04088686406612396, - 0.07497887313365936, - 0.08795854449272156, - -0.01327254343777895, - 0.03594272583723068, - -0.044732414186000824, - 0.10898943990468979, - 0.08237890899181366, - -0.08857299387454987, - -0.08345945179462433, - -0.017827525734901428, - -0.06994134187698364, - 0.04780062288045883, - -0.02667645923793316, - 0.0025994793977588415, - 0.014067212119698524, - -0.00599027331918478, - -0.07769648730754852, - -0.09515123814344406, - 0.05552405118942261, - -0.043748997151851654, - -0.014083610847592354, - -0.07232087850570679, - 0.046409305185079575, - 0.0833406001329422, - 0.04265587031841278, - -0.03337465226650238, - -0.037892088294029236, - 0.052113085985183716, - -0.04029715806245804, - 0.00981439184397459, - 0.08255501091480255, - 0.03312237560749054, - -0.10218776762485504, - 0.00043972209095954895, - -0.06067749112844467, - 0.09044945240020752, - -0.047911547124385834, - 0.16199392080307007, - 0.015095770359039307, - -0.05655485391616821, - -0.06871742010116577, - 0.03671246021986008, - -0.003715657629072666, - 0.03331994637846947, - 0.025603413581848145, - 0.06348010897636414, - 0.06485005468130112, - -0.019126396626234055, - 0.09705483168363571, - 0.037519216537475586, - -0.028215497732162476, - -0.033869847655296326, - -0.02794579043984413, - -0.04226047545671463, - 0.048254698514938354, - 0.012315713800489902, - -0.11845612525939941, - -0.0005446719587780535, - 0.04830523207783699, - -0.0038991388864815235, - 0.046570613980293274, - 0.1376451700925827, - 0.0616631954908371, - -0.13084611296653748 - ] - }, - "p245_051.wav": { - "name": "p245", - "embedding": [ - 0.045718200504779816, - 0.07814808189868927, - -0.022502843290567398, - 0.0345439612865448, - -0.051323942840099335, - 0.071048803627491, - -0.12195656448602676, - 0.1288100779056549, - 0.006800434552133083, - 0.13863827288150787, - -0.056577168405056, - 0.11115185916423798, - -0.013747458346188068, - -0.14130006730556488, - -0.00955258123576641, - 0.030395613983273506, - -0.0014988072216510773, - 0.018854573369026184, - -0.07543803751468658, - -0.030781254172325134, - 0.03106451779603958, - 0.04985269159078598, - 0.06654403358697891, - -0.07023470103740692, - 0.03807223588228226, - 0.04907004535198212, - -0.004326869733631611, - 0.060035914182662964, - 0.008692435920238495, - -0.10099340230226517, - -0.016854148358106613, - 0.11121881008148193, - -0.0654132142663002, - 0.029565026983618736, - 0.02955807000398636, - -0.039671700447797775, - -0.02099781297147274, - -0.032290175557136536, - -0.005050659645348787, - 0.01921827904880047, - -0.002769326791167259, - 0.07135940343141556, - 0.020010901615023613, - -0.002847805619239807, - 0.04927193373441696, - 0.014986333437263966, - -0.03531285747885704, - -0.03632693737745285, - -0.09852772951126099, - 0.16049720346927643, - 0.026491917669773102, - -0.002244291827082634, - -0.09792020171880722, - -0.05734919384121895, - 0.080751933157444, - -0.035606399178504944, - -0.09206739813089371, - -0.054172586649656296, - 0.0593574121594429, - 0.1254468709230423, - -0.01763366535305977, - -0.05385550111532211, - 0.026340872049331665, - 0.08332055807113647, - 0.061912551522254944, - 0.06390613317489624, - 0.09732405841350555, - 0.11813553422689438, - -0.016838407143950462, - 0.040032822638750076, - -0.022121939808130264, - 0.08001182973384857, - 0.03151440620422363, - 0.026716018095612526, - 0.016527488827705383, - -0.0277165025472641, - 0.011138040572404861, - -0.01962466537952423, - -0.04782872274518013, - -0.02105182409286499, - 0.012222223915159702, - 0.013110589236021042, - 0.03360828384757042, - 0.010957952588796616, - -0.047239482402801514, - 0.0485336109995842, - 0.03982091695070267, - -0.024835579097270966, - 0.06507693231105804, - 0.014884350821375847, - 0.004096033982932568, - 0.04506729543209076, - -0.09053198993206024, - -0.08962118625640869, - 0.008276755921542645, - 0.007184777408838272, - 0.012478053569793701, - 0.03677140176296234, - 0.0197935588657856, - -0.014974843710660934, - 0.11253708600997925, - 0.028747625648975372, - -0.030179714784026146, - 0.027362504974007607, - -0.06210380047559738, - 0.1302015632390976, - 0.09526360034942627, - 0.0033987753558903933, - 0.05254428833723068, - -0.07106545567512512, - 0.04407435655593872, - 0.03023122251033783, - -0.10974492877721786, - -0.0793764740228653, - -0.01271610613912344, - -0.005240126047283411, - -0.024861207231879234, - 0.10951578617095947, - -0.0011123642325401306, - 0.04358101636171341, - 0.11311906576156616, - -0.09732146561145782, - -0.030524391680955887, - 0.012786861509084702, - 0.03871888667345047, - -0.0693420022726059, - 0.026883520185947418, - 0.024641642346978188, - -0.010376667603850365, - 0.02571887895464897, - 0.07903122156858444, - 0.0032168482430279255, - 0.03503262996673584, - 0.03094591572880745, - -0.05997152626514435, - 0.03157106041908264, - -0.030329175293445587, - -0.011543367058038712, - 0.05789976567029953, - 0.060659561306238174, - 0.10066156089305878, - -0.03530433773994446, - -0.03605501353740692, - -0.10295362770557404, - 0.01207150612026453, - 0.008135126903653145, - 0.053194694221019745, - -0.02623765729367733, - 0.0026844320818781853, - -0.04492941126227379, - -0.07102026045322418, - 0.05340743437409401, - 0.0024783103726804256, - 0.07553350925445557, - -0.011634002439677715, - 0.011383520439267159, - 0.1108168438076973, - 0.034075766801834106, - 0.00588107667863369, - -0.06093894690275192, - -0.036231156438589096, - -0.024960467591881752, - 0.03524819388985634, - -0.0733175054192543, - -0.0526459738612175, - 0.0024429571349173784, - 0.023876946419477463, - -0.04030609875917435, - 0.07071715593338013, - 0.06764596700668335, - 0.028779897838830948, - 0.03869398683309555, - -0.012509806081652641, - -0.03194332495331764, - -0.04880797863006592, - -0.05567163974046707, - 0.00893435813486576, - -0.00252919876947999, - -0.05981268733739853, - 0.08401110768318176, - 0.035109564661979675, - 0.05701560899615288, - -0.03525567427277565, - -0.04844788461923599, - -0.10192984342575073, - 0.051501646637916565, - 0.012331448495388031, - -0.02791045419871807, - 0.035872284322977066, - 0.03841182589530945, - -0.05187975615262985, - 0.06851222366094589, - 0.09011781960725784, - 0.05522051453590393, - -0.03169730678200722, - 0.008116046898066998, - -0.0959625095129013, - 0.1069781631231308, - 0.11132871359586716, - -0.0743902251124382, - -0.09637438505887985, - -0.03360144793987274, - -0.09452845901250839, - 0.029925107955932617, - -0.03429165109992027, - -0.02270779386162758, - 0.06702468544244766, - 0.001764132408425212, - -0.1091214120388031, - -0.07458578050136566, - 0.06920494139194489, - -0.07603760063648224, - -0.002438775496557355, - -0.0638931393623352, - 0.030917895957827568, - 0.07071851193904877, - 0.03271857649087906, - -0.013270213268697262, - -0.029767053201794624, - 0.06868032366037369, - -0.04773161560297012, - 0.032205693423748016, - 0.06881655752658844, - 0.03367075324058533, - -0.05578242987394333, - -0.012317117303609848, - -0.04807884618639946, - 0.00622282549738884, - -0.01894450932741165, - 0.13298092782497406, - 0.027140147984027863, - -0.038350049406290054, - -0.050428710877895355, - 0.06762756407260895, - -0.06128579378128052, - 0.05508648231625557, - 0.019695326685905457, - 0.03885522484779358, - 0.06511763483285904, - -0.07835085690021515, - 0.11472852528095245, - 0.03113851509988308, - -0.061922840774059296, - -0.08783504366874695, - -0.07309067249298096, - -0.04796215146780014, - 0.04110460728406906, - 0.03031926602125168, - -0.08058655261993408, - -0.012373680248856544, - 0.03283856064081192, - -0.009387717582285404, - 0.05421913415193558, - 0.11533720791339874, - 0.06810104846954346, - -0.08834759145975113 - ] - }, - "p245_346.wav": { - "name": "p245", - "embedding": [ - 0.07210871577262878, - 0.11166694760322571, - -0.026589415967464447, - 0.030031569302082062, - -0.05290517210960388, - 0.06579455733299255, - -0.12648563086986542, - 0.13862329721450806, - -0.025357862934470177, - 0.14204758405685425, - -0.06121651083230972, - 0.1268324851989746, - -0.01438700221478939, - -0.16671913862228394, - -0.031155217438936234, - 0.05034483224153519, - -0.057185109704732895, - -0.027700150385499, - -0.03843969106674194, - -0.029972784221172333, - 0.025088196620345116, - 0.04572126269340515, - 0.033618099987506866, - 0.010355454869568348, - 0.03802390769124031, - 0.08006399869918823, - -0.012983969412744045, - 0.030424833297729492, - 0.0018929843790829182, - -0.06949885189533234, - -0.05493546277284622, - 0.1018865630030632, - -0.05870597064495087, - 0.016578517854213715, - 0.04055076837539673, - -0.016119560226798058, - -0.0006655063480138779, - -0.06159809231758118, - -0.019451359286904335, - 0.015043022111058235, - -0.035419102758169174, - 0.07804234325885773, - 0.02223268151283264, - -0.030461439862847328, - 0.03514702618122101, - 0.012019072659313679, - -0.007501565385609865, - -0.04286115616559982, - -0.10102902352809906, - 0.1699438989162445, - 0.07436004281044006, - -0.00016392780526075512, - -0.0704466700553894, - -0.0563688799738884, - 0.09077860414981842, - -0.011636397801339626, - -0.11089707165956497, - -0.023114528506994247, - 0.05805956572294235, - 0.13712985813617706, - -0.02690938301384449, - -0.042380958795547485, - 0.03662398084998131, - 0.13466346263885498, - 0.067609503865242, - 0.08088449388742447, - 0.07952743768692017, - 0.11223019659519196, - -0.04120715335011482, - 0.023579660803079605, - 0.0641297996044159, - 0.0662492960691452, - 0.08014080673456192, - -0.013523911125957966, - 0.02260228991508484, - -0.015035864897072315, - -0.01987355761229992, - -0.015860063955187798, - -0.01458186749368906, - -0.027581356465816498, - -0.01184071321040392, - -0.0022914642468094826, - 0.0015340391546487808, - 0.03595581278204918, - -0.03148810192942619, - 0.05267483741044998, - 0.05145016312599182, - -0.028606746345758438, - 0.0662049800157547, - 0.050139352679252625, - 0.02193133346736431, - 0.06545385718345642, - -0.08312764763832092, - -0.08141277730464935, - 0.050871506333351135, - 0.0019451389089226723, - 0.040741316974163055, - 0.07857110351324081, - 0.05487683415412903, - -0.012801513075828552, - 0.10977913439273834, - 0.056246720254421234, - -0.0006764865247532725, - 0.009939451701939106, - -0.08667836338281631, - 0.13208161294460297, - 0.103082075715065, - -0.04022331163287163, - 0.05104866623878479, - -0.03539847582578659, - 0.07707816362380981, - 0.07098853588104248, - -0.1389017254114151, - -0.07217241823673248, - 0.025976743549108505, - 0.009854231961071491, - -0.008709657937288284, - 0.0991295576095581, - 0.003028789535164833, - 0.049470946192741394, - 0.09339207410812378, - -0.08505438268184662, - -0.04880012199282646, - -0.03519634157419205, - 0.04732624068856239, - -0.10224151611328125, - 0.06668078899383545, - 0.06605608761310577, - -0.010493254289031029, - 3.6819837987422943e-06, - 0.07942492514848709, - -0.009084750898182392, - -0.005228916648775339, - 0.009002912789583206, - -0.033270735293626785, - 0.008502000942826271, - -0.014110216870903969, - 0.01087709330022335, - 0.024162493646144867, - 0.014641442336142063, - 0.03536529839038849, - -0.010668939910829067, - -0.011433234438300133, - -0.11826251447200775, - 0.03521667793393135, - 0.04551813751459122, - 0.06312485039234161, - -0.01719171553850174, - -0.0330636128783226, - -0.01640160381793976, - -0.06579912453889847, - 0.024562742561101913, - -0.009991688653826714, - 0.051906682550907135, - -0.022704631090164185, - -0.0007774537662044168, - 0.11164286732673645, - 0.038637712597846985, - -1.3448763638734818e-05, - -0.04170120507478714, - -0.022312477231025696, - 0.025479204952716827, - 0.059130266308784485, - -0.09289409220218658, - -0.09222902357578278, - -0.01051497831940651, - 0.012984300032258034, - -0.014248975552618504, - 0.07088484615087509, - 0.05621228367090225, - 0.003572426037862897, - 0.024213973432779312, - -0.061184998601675034, - 0.006932617165148258, - -0.10452644526958466, - -0.07151442021131516, - -0.020617865025997162, - -0.03697817400097847, - -0.021631551906466484, - 0.0833590179681778, - 0.022454526275396347, - 0.055356234312057495, - -0.03631935268640518, - -0.05389655381441116, - -0.06547439098358154, - 0.05798552185297012, - 0.07042905688285828, - 0.0003022877499461174, - 0.03276430815458298, - 0.05818331614136696, - -0.013985903933644295, - 0.049035146832466125, - 0.060382381081581116, - 0.10376324504613876, - -0.03490917384624481, - 0.01874351128935814, - -0.0734420046210289, - 0.077022023499012, - 0.08631910383701324, - -0.09909568727016449, - -0.09585420787334442, - -0.04311494529247284, - -0.06203712522983551, - 0.026148581877350807, - -0.029802629724144936, - 0.016733741387724876, - 0.034567661583423615, - -0.008480810560286045, - -0.08948124945163727, - -0.11097423732280731, - 0.10051584243774414, - -0.0623873770236969, - -0.0011464687995612621, - -0.08466720581054688, - 0.0560152530670166, - 0.07863102853298187, - 0.036488354206085205, - -0.042816877365112305, - 0.00606294721364975, - 0.04221480339765549, - -0.01655549183487892, - 0.00408388115465641, - 0.05716034024953842, - 0.04579092562198639, - -0.11718948185443878, - -0.004729651380330324, - -0.06429540365934372, - 0.07563677430152893, - -0.05978791415691376, - 0.15995538234710693, - 0.010114320553839207, - -0.054568588733673096, - -0.08873523771762848, - 0.05909750610589981, - -0.019260264933109283, - 0.04408474639058113, - 0.03442694619297981, - 0.055299047380685806, - 0.030035164207220078, - -0.07887953519821167, - 0.10196585953235626, - 0.04201589152216911, - -0.03978707641363144, - -0.07471296191215515, - -0.04805316776037216, - -0.03540157899260521, - 0.04803115129470825, - 0.020751869305968285, - -0.08235003054141998, - -0.01914026215672493, - 0.017218807712197304, - -0.0037166166584938765, - 0.07060544192790985, - 0.151498943567276, - 0.061921000480651855, - -0.11944206804037094 - ] - }, - "p245_280.wav": { - "name": "p245", - "embedding": [ - 0.060478486120700836, - 0.07014969736337662, - -0.0003303766716271639, - 0.03782152011990547, - -0.03082103468477726, - 0.07061322778463364, - -0.1573628932237625, - 0.12538211047649384, - -0.03756590187549591, - 0.13343311846256256, - -0.061775628477334976, - 0.09434889256954193, - -0.012579934671521187, - -0.18807080388069153, - -0.0476452074944973, - 0.06009714677929878, - -0.04862841218709946, - -0.030980505049228668, - -0.030674036592245102, - -0.0053529394790530205, - 0.02953764982521534, - 0.047824740409851074, - 0.037942495197057724, - 0.005611931439489126, - 0.04103648662567139, - 0.045796703547239304, - 0.0025880367029458284, - 0.06205648556351662, - 0.017863420769572258, - -0.05217069387435913, - -0.008744262158870697, - 0.11043752729892731, - -0.04434295743703842, - 0.012487146072089672, - 0.04547634348273277, - 0.01933441311120987, - 0.003564878599718213, - -0.0836782157421112, - -0.03571081534028053, - -0.0026182434521615505, - -0.057573460042476654, - 0.07964299619197845, - 0.048467136919498444, - -0.005043788347393274, - 0.034075137227773666, - 0.010259522125124931, - -0.01572520099580288, - -0.06692887842655182, - -0.12203095853328705, - 0.16736356914043427, - 0.04114377498626709, - 0.03100799024105072, - -0.07878031581640244, - -0.08628706634044647, - 0.10114747285842896, - -0.009735843166708946, - -0.11582085490226746, - -0.03876187652349472, - 0.08211887627840042, - 0.19482824206352234, - -0.032070789486169815, - -0.03762795031070709, - 0.03315575793385506, - 0.11731021106243134, - 0.07215867936611176, - 0.08511636406183243, - 0.09045302867889404, - 0.11017961800098419, - 0.01949392817914486, - -0.0006871321238577366, - 0.05344098061323166, - 0.0596701018512249, - 0.03936806321144104, - -0.0022030463442206383, - 0.016414135694503784, - 0.02472023293375969, - -0.028909089043736458, - 0.0037146545946598053, - -0.013230424374341965, - 0.0028750647325068712, - 0.005122964736074209, - 0.013863536529242992, - 0.01978185586631298, - 0.05334577336907387, - -0.04296736791729927, - 0.045819856226444244, - 0.0030826441943645477, - -0.015915557742118835, - 0.06957364082336426, - 0.01776098646223545, - 0.010859650559723377, - 0.05378272384405136, - -0.057663775980472565, - -0.09368374943733215, - 0.004344256594777107, - 0.008660512045025826, - 0.011232402175664902, - 0.05625608190894127, - 0.03634929656982422, - -0.034326665103435516, - 0.12762080132961273, - 0.0305621474981308, - -0.015298018231987953, - 0.03482647240161896, - -0.09564433246850967, - 0.09422804415225983, - 0.07521044462919235, - -0.0016128204297274351, - 0.0644950419664383, - -0.05217842757701874, - 0.05746022239327431, - 0.077559694647789, - -0.15510886907577515, - -0.07660350203514099, - 0.07537676393985748, - 0.038983121514320374, - 0.003099447349086404, - 0.14587566256523132, - 0.0094251474365592, - 0.03234625980257988, - 0.0948590487241745, - -0.09525232762098312, - -0.04483780264854431, - -0.007484804838895798, - 0.0642944797873497, - -0.07523420453071594, - 0.041439399123191833, - 0.034983936697244644, - -0.028654197230935097, - -0.01614030823111534, - 0.07284779846668243, - -0.0013894164003431797, - -0.00017082225531339645, - -0.010916239582002163, - -0.039183609187603, - 0.04822877049446106, - -0.03047354519367218, - -0.0013511828146874905, - 0.0478319376707077, - 0.0468166247010231, - 0.030552595853805542, - 0.011445598676800728, - -0.07172305881977081, - -0.14100781083106995, - -0.009380286559462547, - 0.04078041762113571, - 0.09323626756668091, - -0.0193291325122118, - -0.021773088723421097, - -0.059698499739170074, - -0.05373607575893402, - 0.04152636229991913, - -0.010325471870601177, - 0.09380179643630981, - 0.0008813398890197277, - -0.011472019366919994, - 0.09109489619731903, - -0.006185851059854031, - 0.011839545331895351, - -0.026966169476509094, - -0.02594616636633873, - 0.0022142822854220867, - 0.042140789330005646, - -0.06941162049770355, - -0.05290977656841278, - 0.011227907612919807, - 0.038221877068281174, - -0.019123263657093048, - 0.03171005845069885, - 0.025507617741823196, - 0.02013111114501953, - 0.034457430243492126, - -0.055262792855501175, - -0.002053313422948122, - -0.11382970213890076, - -0.06424825638532639, - 0.018081890419125557, - 0.007068316452205181, - -0.011743100360035896, - 0.0919254720211029, - 0.03653419762849808, - 0.05397625267505646, - -0.014124181121587753, - -0.07891079783439636, - -0.06933921575546265, - 0.0627862885594368, - 0.06671788543462753, - 0.003754342906177044, - 0.03462069109082222, - 0.04744644835591316, - -0.01629844680428505, - 0.05497806519269943, - 0.06399870663881302, - 0.09277167916297913, - -0.008421486243605614, - 0.0008284798823297024, - -0.07660794258117676, - 0.10520949959754944, - 0.07809194177389145, - -0.07596531510353088, - -0.07989215850830078, - -0.00189402315299958, - -0.07995735108852386, - 0.03510107845067978, - -0.018750691786408424, - 0.022173797711730003, - 0.021866794675588608, - -0.02222725749015808, - -0.10737795382738113, - -0.09425497055053711, - 0.07138977944850922, - -0.07614212483167648, - -0.018508248031139374, - -0.07459993660449982, - 0.03939858078956604, - 0.10009239614009857, - 0.04365496709942818, - 0.009761950932443142, - -0.015313250944018364, - 0.03632032871246338, - -0.0698617547750473, - -0.023288385942578316, - 0.06016835197806358, - -0.0010722246952354908, - -0.12363427132368088, - 0.005966808646917343, - -0.07906326651573181, - 0.06645837426185608, - -0.04923289269208908, - 0.15301790833473206, - 0.0033569803927093744, - -0.06137098744511604, - -0.08379287272691727, - 0.012940006330609322, - -0.025993112474679947, - 0.058549702167510986, - 0.029668355360627174, - 0.07477380335330963, - 0.05629333108663559, - -0.05086246877908707, - 0.10138367116451263, - 0.04571443423628807, - -0.03205813467502594, - -0.06697387993335724, - -0.05641714483499527, - -0.028425320982933044, - 0.023195780813694, - -0.016321396455168724, - -0.07328684628009796, - -0.008601004257798195, - 0.03166140615940094, - -0.0185615886002779, - 0.03842851147055626, - 0.12477824836969376, - 0.05128330737352371, - -0.12961441278457642 - ] - }, - "p245_065.wav": { - "name": "p245", - "embedding": [ - 0.007054517976939678, - 0.08852758258581161, - -0.0030881152488291264, - 0.0636865422129631, - -0.02267257496714592, - -0.024485107511281967, - -0.11980750411748886, - 0.05317477136850357, - 0.028464192524552345, - 0.08153848350048065, - -0.03808337822556496, - 0.08043301105499268, - -0.049214012920856476, - -0.1045268103480339, - 0.011294144205749035, - 0.007210413925349712, - 0.04944579675793648, - 0.012070726603269577, - 0.05308769270777702, - -0.00642412668094039, - -0.012724775820970535, - 0.014442275278270245, - -0.05375155061483383, - 0.010946331545710564, - -0.017190538346767426, - 0.00409560464322567, - -0.03997906297445297, - 0.030390020459890366, - -0.02666877582669258, - -0.03509528934955597, - 0.023254292085766792, - 0.024275124073028564, - -0.03428839519619942, - -0.00648182537406683, - -0.006953302770853043, - 0.020122431218624115, - -0.01958870142698288, - -0.019027702510356903, - -0.033361345529556274, - -0.053111203014850616, - -0.06355586647987366, - 0.007037436589598656, - 0.024053290486335754, - -0.041075557470321655, - 0.01932276040315628, - 0.04714740812778473, - -0.02205568179488182, - -0.007933729328215122, - -0.03981979936361313, - 0.06050863116979599, - 0.007435048930346966, - 0.09415753185749054, - -0.04852147772908211, - -0.04339141398668289, - 0.08928994089365005, - 0.032963402569293976, - 0.022321002557873726, - -0.009264932945370674, - 0.008072290569543839, - 0.08619340509176254, - 0.02580038085579872, - 0.0016125477850437164, - 0.05168456584215164, - 0.03864423930644989, - 0.021270928904414177, - 0.018495289608836174, - 0.05618312954902649, - 0.04735862463712692, - -0.024951014667749405, - -0.015342317521572113, - 0.032533105462789536, - 0.02854267694056034, - -0.003760816529393196, - 0.024109598249197006, - -0.01245660986751318, - 0.05564098805189133, - 0.0069576771929860115, - 0.052089814096689224, - -0.039382994174957275, - -0.007599366828799248, - -0.005017128773033619, - 0.02545362338423729, - 0.012090643867850304, - -0.003604564815759659, - -0.04543128237128258, - -0.044524699449539185, - 0.07269853353500366, - 0.03109152987599373, - 0.02478325180709362, - -0.0010882458882406354, - 0.04931827634572983, - 0.011062037199735641, - -0.07306485623121262, - -0.006963550113141537, - 0.029459502547979355, - -0.014439661987125874, - 0.05608278140425682, - 0.006197329610586166, - 0.004131363704800606, - -0.0008229962550103664, - 0.06696853786706924, - -0.038628462702035904, - 0.04334733635187149, - -0.01070895604789257, - -0.04666449502110481, - -0.00774046778678894, - 0.009578716941177845, - 0.011090116575360298, - 0.062096551060676575, - -0.005763772875070572, - 0.025457151234149933, - 0.07299954444169998, - -0.05411238968372345, - -0.036584626883268356, - 0.040011610835790634, - 0.08659297227859497, - -0.026051782071590424, - 0.105359748005867, - 0.012498749420046806, - 0.03378230705857277, - 0.03779051452875137, - -0.008045244961977005, - -0.04387284070253372, - 0.001744009554386139, - 0.018662968650460243, - -0.01628388836979866, - 0.060004279017448425, - 0.01878431998193264, - -0.026796922087669373, - -0.05688052996993065, - 0.04540418088436127, - -0.013780368492007256, - -0.006090857088565826, - -0.020738810300827026, - 0.03176988288760185, - -0.040732331573963165, - 0.05360192060470581, - -0.05600165203213692, - -0.018467068672180176, - 0.04460231214761734, - -0.021325290203094482, - -0.002376510761678219, - -0.010872955434024334, - -0.08862053602933884, - 0.019667156040668488, - 0.017193248495459557, - 0.00880078598856926, - 0.07495932281017303, - -0.07368112355470657, - -0.09551052004098892, - -0.02687603235244751, - 0.01950133591890335, - -0.011110908351838589, - 0.06437593698501587, - 0.07642767578363419, - 0.03576076775789261, - 0.026395520195364952, - -0.00975878443568945, - 0.016826525330543518, - 0.030054941773414612, - -0.12074629962444305, - -0.004736792296171188, - 0.003714575432240963, - 0.035051919519901276, - -0.021945547312498093, - 0.008539482951164246, - 0.02285677008330822, - -0.016836900264024734, - 0.008142596110701561, - 0.03265974298119545, - 0.03339824825525284, - 0.03713845834136009, - -0.11179555952548981, - -0.006665410939604044, - -0.041757918894290924, - -0.08026179671287537, - 0.028926577419042587, - 0.020995359867811203, - 0.004242144525051117, - 0.024909673258662224, - 0.044699542224407196, - 0.010940499603748322, - -0.030128225684165955, - -0.02363281510770321, - -0.04188314825296402, - -0.005710013676434755, - 0.0007939375936985016, - -0.0037873294204473495, - -0.010398989543318748, - 0.0022998731583356857, - 0.02183486893773079, - 0.02785884588956833, - 0.01234511286020279, - 0.044538822025060654, - -0.021557513624429703, - 0.009014240466058254, - 0.043109044432640076, - 0.1039772778749466, - 0.050274889916181564, - -0.06282788515090942, - -0.07150369882583618, - 0.01840965822339058, - -0.07788141071796417, - 0.023911356925964355, - -0.005105285905301571, - 0.036022037267684937, - -0.008091493509709835, - 0.006417714059352875, - 0.031618375331163406, - -0.12832170724868774, - 0.0010662898421287537, - -0.021570947021245956, - -0.03863372653722763, - 0.0058544352650642395, - -0.00021003000438213348, - 0.038972217589616776, - 0.01815401017665863, - -0.01616358757019043, - -0.08109483867883682, - 0.015411155298352242, - 0.018661584705114365, - 0.021232973784208298, - 0.07534293830394745, - 0.030911121517419815, - -0.01609310507774353, - -8.790404535830021e-05, - -0.038275957107543945, - 0.013330904766917229, - 0.008816724643111229, - 0.020381882786750793, - 0.016050497069954872, - -0.019882112741470337, - -0.07982417941093445, - 0.016075707972049713, - 0.01653657853603363, - 0.04855777323246002, - -0.05607140064239502, - 0.003358134999871254, - 0.03295283764600754, - -0.020481236279010773, - 0.0936817079782486, - 0.05501065403223038, - -0.004118446726351976, - -0.024199025705456734, - -0.022350359708070755, - -0.030676506459712982, - 0.06899551302194595, - 0.027223506942391396, - -0.04199513420462608, - -0.023756854236125946, - 0.06762238591909409, - 0.061578549444675446, - 0.06401962041854858, - 0.06752371788024902, - 0.0323612280189991, - 0.008513741195201874 - ] - }, - "p245_401.wav": { - "name": "p245", - "embedding": [ - 0.04489310085773468, - 0.07182004302740097, - 0.0011177249252796173, - -0.004109829664230347, - -0.034445881843566895, - 0.07682614028453827, - -0.11882264912128448, - 0.10732126235961914, - -0.028650319203734398, - 0.10478071868419647, - -0.07900713384151459, - 0.09189572930335999, - -0.03820741921663284, - -0.15655018389225006, - -0.040688566863536835, - 0.039437856525182724, - -0.028592970222234726, - -0.002292851684615016, - -0.023234358057379723, - -0.011581746861338615, - 0.031602825969457626, - 0.028258662670850754, - 0.012293512932956219, - -0.007524948567152023, - 0.03390558063983917, - 0.051076389849185944, - 0.01826249063014984, - 0.03736492991447449, - 0.019276108592748642, - -0.02670341730117798, - -0.0020804828964173794, - 0.08596721291542053, - -0.022331437095999718, - 0.006396051496267319, - 0.04163404181599617, - -0.004347694106400013, - 0.011006522923707962, - -0.06619955599308014, - 0.00893741101026535, - 0.035417478531599045, - -0.032548002898693085, - 0.07003971189260483, - 0.07857532799243927, - 0.0029592267237603664, - 0.025644049048423767, - 0.01917346566915512, - 0.021810319274663925, - -0.05014675483107567, - -0.09140770137310028, - 0.17448531091213226, - 0.029064586386084557, - -0.003430331591516733, - -0.08150865137577057, - -0.030426636338233948, - 0.0925912857055664, - 0.013099310919642448, - -0.07282260060310364, - -0.0327586755156517, - 0.08186417073011398, - 0.13813602924346924, - 0.005199912004172802, - -0.04613731801509857, - 0.01917032152414322, - 0.11498075723648071, - 0.00905969925224781, - 0.06572088599205017, - 0.08403681963682175, - 0.08654722571372986, - -0.001270835637114942, - 0.020083539187908173, - 0.03906271234154701, - 0.04610569030046463, - -0.010907359421253204, - -0.02932312712073326, - 0.015360893681645393, - -0.02838645689189434, - -0.04259275645017624, - 0.014861616306006908, - 0.0005569010972976685, - -0.02950633130967617, - -0.00064772495534271, - 0.009545441716909409, - 0.016760990023612976, - 0.012044175527989864, - -0.012275079265236855, - 0.04524761438369751, - -0.015177300199866295, - 0.024818813428282738, - 0.07859313488006592, - 0.015163875184953213, - 0.007043452933430672, - 0.02522212825715542, - -0.04402400180697441, - -0.08786113560199738, - -0.0013720368733629584, - 0.005846457555890083, - -0.007249782793223858, - 0.04216877743601799, - 0.04215012118220329, - -0.02289453148841858, - 0.11355797946453094, - 0.03916066139936447, - -0.01779448799788952, - 0.015762940049171448, - -0.06729009747505188, - 0.0975072979927063, - 0.07447269558906555, - 0.0046886904165148735, - 0.07150852680206299, - -0.07578445225954056, - 0.04128572344779968, - 0.04009030759334564, - -0.12140516936779022, - -0.038901109248399734, - 0.04106326401233673, - 0.019915258511900902, - 0.017193442210555077, - 0.13464881479740143, - -0.01360523235052824, - -0.006719199474900961, - 0.06171268969774246, - -0.09263436496257782, - -0.05506977066397667, - -0.020614199340343475, - 0.049023985862731934, - -0.028678346425294876, - 0.013152997009456158, - 0.04140090569853783, - -0.005198844708502293, - -0.009676923975348473, - 0.05090288817882538, - -0.02106054499745369, - -0.010947386734187603, - 0.0070092095993459225, - -0.0031143552623689175, - 0.05345790088176727, - -0.021911390125751495, - 0.014261135831475258, - 0.015416580252349377, - 0.056310348212718964, - 0.03309084475040436, - 0.028845787048339844, - -0.0822661742568016, - -0.08312277495861053, - -0.016405954957008362, - 0.02270328812301159, - 0.0729580968618393, - -0.020277883857488632, - -0.03376463055610657, - -0.04484662413597107, - -0.0312936007976532, - -0.003465568646788597, - 0.002198886126279831, - 0.07714059948921204, - 0.019428126513957977, - -0.0009956683497875929, - 0.09624773263931274, - 0.03908269852399826, - 0.004569241777062416, - -0.044861942529678345, - -0.03633127734065056, - -0.007806172128766775, - 0.035614993423223495, - -0.04768701642751694, - -0.055022209882736206, - -0.012597106397151947, - 0.0009983207564800978, - -0.022495344281196594, - -0.00691523402929306, - 0.011133741587400436, - 0.023090727627277374, - 0.028663285076618195, - -0.09162688255310059, - 0.0077186645939946175, - -0.10169520229101181, - -0.013930174522101879, - 0.003624526783823967, - -0.006425138097256422, - -0.02408706210553646, - 0.07169730961322784, - 0.027275746688246727, - 0.042725272476673126, - -0.012898693792521954, - -0.017067894339561462, - -0.018911590799689293, - 0.04049438238143921, - 0.08427852392196655, - -0.0075738802552223206, - 0.024786634370684624, - 0.03650485724210739, - -0.014552943408489227, - 0.0440838560461998, - 0.05364827439188957, - 0.04882293567061424, - -0.025804173201322556, - -0.01869308203458786, - -0.024130692705512047, - 0.0934181660413742, - 0.05555276572704315, - -0.06930126249790192, - -0.0791609063744545, - -0.023157767951488495, - -0.05146999657154083, - 0.031920306384563446, - -0.029901180416345596, - 0.00803244486451149, - 0.008386016823351383, - -0.02284039556980133, - -0.07294479757547379, - -0.052257053554058075, - 0.03019798919558525, - -0.025340361520648003, - 0.0014590885257348418, - -0.08998271077871323, - 0.062331221997737885, - 0.12441585958003998, - 0.012446841225028038, - -0.00011241436004638672, - -0.009898337535560131, - 0.008208958432078362, - -0.04118141531944275, - -0.017398323863744736, - 0.007388897240161896, - 0.011968409642577171, - -0.10124349594116211, - 0.010999663732945919, - -0.038165345788002014, - 0.07665795087814331, - -0.05123162269592285, - 0.13270463049411774, - 0.022762609645724297, - -0.07037785649299622, - -0.07649403810501099, - 0.04354443401098251, - -0.022880151867866516, - 0.026879917830228806, - 0.026550687849521637, - 0.002287554321810603, - 0.045405417680740356, - -0.04320551082491875, - 0.07766204327344894, - 0.012355471029877663, - -0.03675200417637825, - -0.052819471806287766, - -0.026048731058835983, - -0.007226914167404175, - 0.034377098083496094, - -0.02456560730934143, - -0.047170452773571014, - -0.03708440065383911, - 0.03570055961608887, - -0.00039428070886060596, - 0.07206713408231735, - 0.08851854503154755, - 0.05097908899188042, - -0.10105577111244202 - ] - }, - "p245_028.wav": { - "name": "p245", - "embedding": [ - 0.04755127429962158, - 0.10183662176132202, - 0.0010523957898840308, - 0.02922067604959011, - -0.04274490475654602, - 0.038365814834833145, - -0.06552916765213013, - 0.08610039204359055, - 0.035453494638204575, - 0.06006334349513054, - -0.07028511166572571, - 0.08537688106298447, - -0.04050898179411888, - -0.1390821784734726, - 0.024735689163208008, - 0.042568638920784, - -0.014613419771194458, - 0.014225073158740997, - -0.029939576983451843, - -0.034473054111003876, - -0.010743875056505203, - 0.00788539182394743, - 0.03904461860656738, - -0.02794816344976425, - 0.011626980267465115, - 0.03243539482355118, - -0.03089280053973198, - 0.0042264265939593315, - -0.02236943319439888, - -0.049150656908750534, - -0.03482130542397499, - 0.06426028907299042, - -0.039804838597774506, - -0.01849549077451229, - 0.007050680927932262, - -0.03167414292693138, - -0.008302778005599976, - -0.05966934561729431, - -0.040282219648361206, - 0.02036818116903305, - -0.05221115052700043, - 0.04385153949260712, - 0.0334717333316803, - -0.05056173354387283, - 0.052905336022377014, - 0.0016782870516180992, - -0.037295300513505936, - -0.01027694158256054, - -0.09702881425619125, - 0.11669182032346725, - 0.021666383370757103, - 0.03943680226802826, - -0.07181055843830109, - -0.018096525222063065, - 0.08736743777990341, - 0.00660637766122818, - -0.04432570934295654, - -0.01977316103875637, - 0.04292946308851242, - 0.06551717966794968, - 0.025621537119150162, - -0.023061856627464294, - 0.029861142858862877, - 0.051065441220998764, - 0.03569559007883072, - 0.03514891117811203, - 0.07030251622200012, - 0.10977679491043091, - -0.025406427681446075, - 0.02344321832060814, - 0.040315043181180954, - 0.016602082177996635, - 0.030591100454330444, - -0.0058657038025557995, - -0.00417511910200119, - -0.0190811138600111, - 0.007784759160131216, - -0.018561270087957382, - -0.012272404506802559, - -0.03856922313570976, - 0.0358729213476181, - -0.011877069249749184, - 0.024296961724758148, - 0.003412483958527446, - -0.03995659202337265, - 0.0005717501044273376, - 0.07475002855062485, - 0.04483198747038841, - 0.07419504970312119, - 0.023583896458148956, - 0.0038302745670080185, - 0.06575292348861694, - -0.08080480992794037, - -0.0626729428768158, - 0.02762717567384243, - 0.0047406721860170364, - 0.0345180444419384, - 0.03522268682718277, - 0.03593577444553375, - -0.021924622356891632, - 0.09303209185600281, - 0.016171371564269066, - 0.02173789218068123, - 0.0038622687570750713, - -0.06000085920095444, - 0.04291970655322075, - 0.06911487877368927, - -0.0031252149492502213, - 0.06710980087518692, - 0.003924044780433178, - 0.0574735552072525, - 0.0593157634139061, - -0.06362977623939514, - -0.007711254060268402, - -0.013962488621473312, - 0.014901747927069664, - -0.0062421150505542755, - 0.11572062224149704, - 0.005575128830969334, - 0.047401800751686096, - 0.11153077334165573, - -0.08428153395652771, - -0.017851917073130608, - 0.03323207423090935, - -0.006795029155910015, - -0.03945271670818329, - 0.04119458794593811, - 0.05774679034948349, - -0.023836631327867508, - -0.003152022836729884, - 0.02888466790318489, - 0.007186677306890488, - 0.013508424162864685, - -0.031240282580256462, - -0.00527383154258132, - -0.01741006039083004, - 0.013710341416299343, - -0.026303980499505997, - 0.04059672728180885, - 0.0510963499546051, - 0.005595838185399771, - 0.0031259420793503523, - -0.023735901340842247, - -0.0815017819404602, - 0.024494286626577377, - 0.005684319883584976, - 0.015271495096385479, - 0.027004096657037735, - -0.02345387265086174, - -0.05020205304026604, - -0.04126422107219696, - 0.05323927849531174, - -0.01286892220377922, - 0.0534650981426239, - 0.04284551739692688, - -0.02408970147371292, - 0.0656687468290329, - 0.04228387027978897, - 0.018443554639816284, - -0.03604736924171448, - -0.10777660459280014, - 0.011916114948689938, - 0.027050882577896118, - -0.06734307110309601, - -0.041548795998096466, - -0.03302937000989914, - -0.026736650615930557, - -0.02513352781534195, - 0.018220387399196625, - 0.06891888380050659, - -0.001024129567667842, - 0.005385813768953085, - -0.06709214299917221, - 0.01778745837509632, - -0.025751546025276184, - -0.08605223894119263, - 0.04397451505064964, - 0.013558605685830116, - -0.005675298627465963, - 0.07290878146886826, - 0.011174386367201805, - 0.007607316132634878, - -0.06834818422794342, - -0.03054022789001465, - 0.0006859104032628238, - 0.028349969536066055, - 0.009199216030538082, - -0.0023368187248706818, - 0.038524508476257324, - 0.03716970235109329, - -0.02000138722360134, - 0.03221309557557106, - 0.027532130479812622, - 0.0699729472398758, - -0.041125424206256866, - 0.011979207396507263, - -0.003780066967010498, - 0.09037631005048752, - 0.06973788142204285, - -0.0585121214389801, - -0.09334539622068405, - -0.0418572723865509, - -0.05219274386763573, - 0.03597882390022278, - -0.013921931385993958, - 0.0046239858493208885, - 0.0304935984313488, - -0.005541916936635971, - -0.027760235592722893, - -0.12137407064437866, - 0.03088071197271347, - -0.00470554968342185, - -0.011253468692302704, - -0.04905698448419571, - 0.03508400917053223, - 0.04082183167338371, - 0.013387786224484444, - -0.029505278915166855, - 0.0028569649439305067, - 0.021662142127752304, - 0.005729150027036667, - 0.0009606803650967777, - 0.03738084062933922, - 0.05761587247252464, - -0.032028183341026306, - -0.025989770889282227, - -0.05615795776247978, - 0.05168236419558525, - 0.025567544624209404, - 0.10789619386196136, - 0.03592901676893234, - 0.0039420402608811855, - -0.07238127291202545, - 0.05853618308901787, - -0.007556072436273098, - 0.044537194073200226, - -0.000889735936652869, - 0.03255235031247139, - 0.05939881503582001, - -0.05622616410255432, - 0.07850207388401031, - 0.02056068181991577, - -0.03140944242477417, - -0.02984531596302986, - 0.0037734932266175747, - -0.055665504187345505, - 0.018798034638166428, - -0.006064708344638348, - -0.06632205098867416, - -0.009425180032849312, - 0.04087073355913162, - 0.061400409787893295, - 0.039582133293151855, - 0.0802602469921112, - 0.028447499498724937, - -0.012771984562277794 - ] - }, - "p245_375.wav": { - "name": "p245", - "embedding": [ - 0.059578537940979004, - 0.09280254691839218, - -0.0066365948878228664, - 0.024891652166843414, - -0.053558267652988434, - 0.06540051102638245, - -0.11934581398963928, - 0.12229330837726593, - -0.0509914830327034, - 0.15572336316108704, - -0.07859791815280914, - 0.11564308404922485, - -0.021675940603017807, - -0.18438056111335754, - -0.015552418306469917, - 0.06570121645927429, - -0.02968379110097885, - -0.010172601789236069, - -0.05178419500589371, - -0.009660843759775162, - 0.01647229492664337, - 0.04650793597102165, - 0.04146043211221695, - -0.027816975489258766, - 0.06240103021264076, - 0.06358069181442261, - -0.017046866938471794, - 0.03668953850865364, - -0.0048728445544838905, - -0.10522384196519852, - -0.05157117545604706, - 0.10016235709190369, - -0.062238238751888275, - 0.015529388561844826, - 0.05061105638742447, - 0.00023448059801012278, - -0.002044137567281723, - -0.06672107428312302, - -0.03165212646126747, - 0.0012310049496591091, - -0.040847357362508774, - 0.07420497387647629, - 0.004687570966780186, - -0.029070932418107986, - 0.04449932277202606, - 0.014169570058584213, - -0.008884252980351448, - -0.050716713070869446, - -0.09780256450176239, - 0.14669272303581238, - 0.03418397158384323, - 0.021093983203172684, - -0.0908086970448494, - -0.09299582988023758, - 0.09701521694660187, - -0.025175780057907104, - -0.11251315474510193, - -0.03461805358529091, - 0.06012021750211716, - 0.1627790480852127, - -0.02188902720808983, - -0.04220303148031235, - 0.019917529076337814, - 0.07649338990449905, - 0.0470145046710968, - 0.09943431615829468, - 0.06948114931583405, - 0.07604683935642242, - 0.005181148182600737, - 0.03605261445045471, - 0.0520034059882164, - 0.07600453495979309, - 0.06825710088014603, - -0.01941586285829544, - 0.016241174191236496, - 0.002721425611525774, - -0.04470668360590935, - -0.010297677479684353, - -0.020321939140558243, - -0.009839298203587532, - -0.014528479427099228, - 0.0029372014105319977, - 0.028109008446335793, - -0.005147801712155342, - -0.02741917409002781, - 0.038570158183574677, - 0.03876641392707825, - -0.0266829002648592, - 0.06695496290922165, - 0.038391269743442535, - -0.01220671646296978, - 0.04704676568508148, - -0.08746813237667084, - -0.09188591688871384, - 0.02267633005976677, - 0.015564397908747196, - -0.0035276205744594336, - 0.06636932492256165, - 0.04641081020236015, - -0.023868784308433533, - 0.11050665378570557, - 0.04873201996088028, - 0.026215987280011177, - 0.02176022343337536, - -0.09232854843139648, - 0.10331210494041443, - 0.0937546119093895, - -0.012360389344394207, - 0.06315313279628754, - -0.03728475421667099, - 0.07729382812976837, - 0.08975464105606079, - -0.15307822823524475, - -0.0802825316786766, - -0.007423429749906063, - -0.0359358973801136, - 0.0044212304055690765, - 0.09970168769359589, - -0.012956305406987667, - 0.02692350186407566, - 0.09899879992008209, - -0.12060088664293289, - -0.05770988017320633, - -0.004800276830792427, - 0.040592700242996216, - -0.09787033498287201, - 0.0659930408000946, - 0.040485505014657974, - -0.01716802455484867, - 0.00959782488644123, - 0.07381284236907959, - -0.00859649758785963, - 0.00956201646476984, - 0.00805002823472023, - -0.04012591764330864, - 0.0008313688449561596, - -0.042600467801094055, - -0.008403842337429523, - 0.07794525474309921, - 0.032944850623607635, - 0.061015062034130096, - -0.011487586423754692, - -0.02267439104616642, - -0.11197391152381897, - 0.009205866605043411, - 0.040095292031764984, - 0.06204332411289215, - -0.0201509241014719, - -0.006357738748192787, - -0.043703507632017136, - -0.0847778171300888, - 0.04851159453392029, - -0.010166676715016365, - 0.08910751342773438, - 0.009700733236968517, - 0.021795623004436493, - 0.11651267111301422, - 0.036139898002147675, - -0.012692245654761791, - -0.063199482858181, - -0.029565289616584778, - 0.0086702611297369, - 0.06336972117424011, - -0.08738499879837036, - -0.07571856677532196, - 0.0010187309235334396, - -0.003994225990027189, - -0.021148551255464554, - 0.06660972535610199, - 0.052289340645074844, - 0.029873261228203773, - 0.03169350326061249, - -0.0618247352540493, - 0.0031243953853845596, - -0.10155005753040314, - -0.07095028460025787, - -0.016942543908953667, - -0.0493391677737236, - -0.030458148568868637, - 0.10075749456882477, - 0.022182809188961983, - 0.028399672359228134, - -0.037996806204319, - -0.0672098770737648, - -0.08322595059871674, - 0.06166207790374756, - 0.0402684286236763, - 0.0059422701597213745, - 0.021377118304371834, - 0.04352794587612152, - -0.03173092007637024, - 0.06193907931447029, - 0.07415612041950226, - 0.09858869016170502, - -0.018818747252225876, - 0.03497813642024994, - -0.05843231454491615, - 0.10435932129621506, - 0.09960930049419403, - -0.08169743418693542, - -0.10250139236450195, - -0.041442614048719406, - -0.07611596584320068, - 0.06408633291721344, - -0.019564621150493622, - 0.00157434050925076, - 0.030543766915798187, - -0.026445912197232246, - -0.08242195844650269, - -0.0919657051563263, - 0.0996866375207901, - -0.03322572633624077, - -0.028335459530353546, - -0.06936761736869812, - 0.04020280763506889, - 0.05407722294330597, - 0.049542464315891266, - -0.011735916137695312, - 0.015297822654247284, - 0.060945961624383926, - -0.05752795934677124, - -0.004825894255191088, - 0.07949329912662506, - 0.0022117667831480503, - -0.06799446791410446, - 0.0049944594502449036, - -0.06599101424217224, - 0.0729508101940155, - -0.05294749513268471, - 0.1609140783548355, - -0.023618346080183983, - -0.06585977971553802, - -0.07187116146087646, - 0.04707232490181923, - -0.029453633353114128, - 0.038448482751846313, - 0.04046997055411339, - 0.071866974234581, - 0.05872473120689392, - -0.06087472662329674, - 0.09252091497182846, - 0.03984646499156952, - -0.0178317129611969, - -0.04091453552246094, - -0.08009994775056839, - -0.05055548995733261, - 0.016472145915031433, - -0.020330043509602547, - -0.09813778102397919, - 0.031845033168792725, - 0.015062674880027771, - 0.006186965387314558, - 0.04824165254831314, - 0.13069140911102295, - 0.05769135057926178, - -0.11621339619159698 - ] - }, - "p245_092.wav": { - "name": "p245", - "embedding": [ - 0.046102799475193024, - 0.1064535602927208, - 0.03882990777492523, - 0.007487049326300621, - 0.00428888201713562, - 0.021372683346271515, - -0.03719458356499672, - 0.07438396662473679, - 0.05713196471333504, - 0.03525877371430397, - -0.08500215411186218, - 0.0642709955573082, - -0.04784000292420387, - -0.11319784820079803, - 0.00696053309366107, - 0.02920011430978775, - -0.04282845929265022, - 0.008282708004117012, - -0.017733167856931686, - -0.013514751568436623, - -0.008095936849713326, - -0.01753217726945877, - 0.038109809160232544, - -0.012525534257292747, - -0.021155208349227905, - 0.015163109637796879, - -0.03453231230378151, - 0.006535589229315519, - -0.008898885920643806, - -0.016865571960806847, - 0.0025727860629558563, - 0.03577691316604614, - 0.0010335445404052734, - 0.006816348992288113, - 0.0066894181072711945, - -0.023162085562944412, - 0.002310875803232193, - -0.051988910883665085, - -0.0719069167971611, - 0.04178440198302269, - -0.045457273721694946, - 0.038020215928554535, - 0.03348635882139206, - -0.07091621309518814, - 0.07716374099254608, - 0.017605872824788094, - -0.06732846796512604, - 0.002190190367400646, - -0.10653941333293915, - 0.0980999767780304, - 0.01689918152987957, - 0.02511964738368988, - -0.06662436574697495, - 0.007720688357949257, - 0.07335393875837326, - -0.02371140569448471, - -0.0503150150179863, - -0.0016451980918645859, - 0.04434879869222641, - 0.0359160378575325, - 0.029808776453137398, - -0.01780438795685768, - -0.006639616563916206, - 0.024667447432875633, - 0.05476382374763489, - 0.012440737336874008, - 0.0739692896604538, - 0.09163016825914383, - -0.03765476122498512, - 0.031139355152845383, - 0.025126319378614426, - -0.0078003183007240295, - 0.041260406374931335, - -0.003057287074625492, - -0.009109203703701496, - -0.019441546872258186, - -0.0030809524469077587, - -0.029171768575906754, - -0.000464538112282753, - -0.019734226167201996, - 0.03652775660157204, - -0.011969586834311485, - 0.03430986404418945, - 0.02560114488005638, - -0.0371861606836319, - -0.015020813792943954, - 0.05930951237678528, - 0.06193121522665024, - 0.055845413357019424, - 0.04522349685430527, - -0.0033451991621404886, - 0.08283627033233643, - -0.05941439047455788, - -0.08488892018795013, - -0.012808052822947502, - -0.012809467501938343, - 0.023438578471541405, - 0.034978240728378296, - 0.029422586783766747, - -0.014472197741270065, - 0.08584047853946686, - -0.0011968445032835007, - 0.007447962649166584, - 0.00256266538053751, - -0.07293926924467087, - 0.008252881467342377, - 0.05080214515328407, - -0.016282476484775543, - 0.05042785406112671, - 0.022402819246053696, - 0.07470276951789856, - 0.05985689163208008, - -0.0324404314160347, - 0.021031370386481285, - 0.007160048000514507, - 0.038123033940792084, - 0.02340659126639366, - 0.10042808949947357, - 0.008154327049851418, - 0.04819753021001816, - 0.1180533617734909, - -0.06895293295383453, - 0.028081845492124557, - 0.041626282036304474, - -0.009441891685128212, - -0.007816918194293976, - 0.0510195828974247, - 0.0171507578343153, - -0.013345770537853241, - 0.004236073233187199, - 0.007495969533920288, - 0.024195585399866104, - 0.010949238203465939, - -0.060463737696409225, - -0.0007464159280061722, - 0.009811539202928543, - -0.024902820587158203, - -0.004825470969080925, - 0.022217990830540657, - 0.05351581051945686, - -0.0034582987427711487, - 0.03593512624502182, - -0.05492741987109184, - -0.03803575038909912, - 0.029162567108869553, - 0.0038121212273836136, - 0.011272409930825233, - 0.03133147582411766, - -0.032537639141082764, - -0.05462552234530449, - 0.00949428603053093, - 0.06676427274942398, - -0.03231997787952423, - 0.04331296309828758, - 0.05982999503612518, - -0.012316036969423294, - 0.04005206748843193, - 0.02436148002743721, - 0.004238395486027002, - -0.03714202344417572, - -0.10295673459768295, - -0.017503172159194946, - 0.035558219999074936, - -0.08419470489025116, - -0.022950150072574615, - -0.04408934712409973, - -0.03376606106758118, - -0.005433212500065565, - -0.007501991465687752, - 0.07606455683708191, - -0.01956539787352085, - -0.023461323231458664, - -0.05429337918758392, - 0.02085306867957115, - -0.022151967510581017, - -0.11239247024059296, - 0.055110231041908264, - 0.017243439331650734, - 0.031251806765794754, - 0.061051297932863235, - -0.013462391681969166, - 0.007184591144323349, - -0.05044195428490639, - -0.04503496736288071, - 0.021522115916013718, - 0.04583548754453659, - -0.005309795029461384, - 0.00023113004863262177, - 0.05684908106923103, - 0.04979639872908592, - -0.04319640249013901, - 0.05203596502542496, - -0.016613345593214035, - 0.054124653339385986, - -0.04773581773042679, - 0.010217105969786644, - 0.02970133349299431, - 0.04535802826285362, - 0.06896093487739563, - -0.028549883514642715, - -0.12263995409011841, - -0.04257612302899361, - -0.042543064802885056, - 0.008781581185758114, - 0.005966579541563988, - -0.009652921929955482, - 0.03065895289182663, - -0.011680271476507187, - -0.03733941167593002, - -0.1088545098900795, - 0.001846805214881897, - 0.010092360898852348, - -0.00575418071821332, - -0.04098682478070259, - 0.01856289431452751, - 0.007557962089776993, - 0.0033586565405130386, - -0.023028098046779633, - 0.028080232441425323, - 0.0025641191750764847, - -0.0024903863668441772, - -0.03747071325778961, - -0.0052144937217235565, - 0.05973551794886589, - 0.010085277259349823, - -0.03185553476214409, - -0.0480203703045845, - 0.03725714981555939, - 0.0360775850713253, - 0.08504394441843033, - 0.040999654680490494, - 0.007665744051337242, - -0.022576870396733284, - 0.03460155427455902, - -0.019515953958034515, - 0.026071704924106598, - -0.014560465700924397, - 0.02562776952981949, - 0.05236086994409561, - -0.030892319977283478, - 0.053186215460300446, - 0.03204383701086044, - -0.012995278462767601, - -0.01589767076075077, - 0.009988261386752129, - -0.07885195314884186, - -0.035886481404304504, - -0.01613621599972248, - -0.0346883088350296, - -0.010800416581332684, - 0.007152854464948177, - 0.07665567845106125, - 0.02376319281756878, - 0.07549691945314407, - 0.015777645632624626, - -0.024306349456310272 - ] - }, - "p245_155.wav": { - "name": "p245", - "embedding": [ - 0.038709141314029694, - 0.043836869299411774, - -0.06396207213401794, - 0.04326394200325012, - -0.013039220124483109, - 0.0816001296043396, - -0.12744568288326263, - 0.04817115515470505, - -0.008936937898397446, - 0.13784155249595642, - -0.021501243114471436, - 0.07812226563692093, - 0.010580182075500488, - -0.1325506865978241, - -0.025479409843683243, - 0.009881933219730854, - -0.05875460058450699, - -0.012978470884263515, - -0.09415224194526672, - -0.01109527051448822, - 0.03044036589562893, - 0.04656811058521271, - 0.029310565441846848, - -0.07565078884363174, - -0.017435453832149506, - 0.041611168533563614, - -0.03085864707827568, - 0.032696839421987534, - 0.03225797787308693, - -0.06318903714418411, - -0.0015083067119121552, - 0.08648298680782318, - -0.05842342972755432, - 0.030528143048286438, - 0.028480829671025276, - 0.024362945929169655, - -0.014088524505496025, - -0.05996789038181305, - 0.015227108262479305, - 0.030005622655153275, - -0.05273135006427765, - 0.06654505431652069, - 0.016269003972411156, - 0.0005897665396332741, - 0.037468940019607544, - -0.02293059416115284, - -0.028184011578559875, - -0.04152239114046097, - -0.07217125594615936, - 0.15526792407035828, - 0.06199213117361069, - -0.04013952612876892, - -0.04978558421134949, - -0.03067539632320404, - 0.06878992170095444, - -0.0108029805123806, - -0.10697904974222183, - -0.0534791573882103, - 0.0492333360016346, - 0.12223925441503525, - -0.024633046239614487, - -0.0035367757081985474, - 0.03653936833143234, - 0.10729417204856873, - 0.07732705771923065, - 0.08159413188695908, - 0.08719471096992493, - 0.13844552636146545, - -0.003963734954595566, - -0.014521709643304348, - 0.02702314406633377, - 0.07397551834583282, - 0.04139146953821182, - 0.017629068344831467, - 0.046669792383909225, - 0.00708424299955368, - -0.016581423580646515, - -0.02016923762857914, - -0.03360714390873909, - -0.006741231307387352, - 0.03577711060643196, - -0.01876078173518181, - 0.009083036333322525, - 0.05862201750278473, - -0.047700248658657074, - 0.017685096710920334, - 0.06044720858335495, - -0.0414934903383255, - 0.025639966130256653, - 0.058089740574359894, - 0.04993915557861328, - 0.03617924451828003, - -0.05439300835132599, - -0.07959708571434021, - 0.018747450783848763, - 0.023512057960033417, - -0.01631442829966545, - 0.03148621693253517, - 0.02198919653892517, - -0.013070760294795036, - 0.08281363546848297, - 0.00024617649614810944, - -0.07482937723398209, - 0.023715108633041382, - -0.055486973375082016, - 0.13352099061012268, - 0.09609562158584595, - -0.014771975576877594, - -0.018591301515698433, - -0.06443176418542862, - 0.051209624856710434, - 0.04648289456963539, - -0.11433684825897217, - -0.05108414590358734, - 0.0841970443725586, - 0.003375728614628315, - -0.008407028391957283, - 0.12312732636928558, - 0.03540223836898804, - 0.005191072355955839, - 0.08774043619632721, - -0.03753364086151123, - -0.021206999197602272, - -0.017795555293560028, - 0.0500633642077446, - -0.039844218641519547, - 0.0184720978140831, - 0.010412727482616901, - 0.023461967706680298, - -0.019044948741793633, - 0.10482227802276611, - -0.00271056592464447, - 0.005580555647611618, - 0.004776953253895044, - -0.015123852528631687, - 0.0774531364440918, - -0.011077302508056164, - 0.0016978110652416945, - 0.040417931973934174, - 0.03850406035780907, - 0.07998046278953552, - -0.04676659032702446, - -0.03834376856684685, - -0.106003537774086, - 0.0288406889885664, - 0.04193590208888054, - 0.0633968785405159, - -0.02126298099756241, - 0.015216912142932415, - -0.06166090816259384, - -0.0843062549829483, - 0.06419310718774796, - -0.07349217683076859, - 0.0806356891989708, - -0.006198268383741379, - -0.04442786052823067, - 0.10852636396884918, - -0.041549552232027054, - 0.0294739231467247, - 0.002143656834959984, - -0.011323148384690285, - -0.011787602677941322, - 0.028720956295728683, - -0.07168862968683243, - -0.05025062710046768, - 0.00545505341142416, - 0.019485659897327423, - -0.0074730138294398785, - 0.044146038591861725, - 0.052180252969264984, - 0.009438680484890938, - 0.013756041415035725, - -0.04974091798067093, - -0.041357506066560745, - -0.07107856124639511, - 0.0017826128751039505, - -0.017409687861800194, - -0.03978564217686653, - -0.0028044055216014385, - 0.08520350605249405, - 0.005610228516161442, - 0.007441772148013115, - -0.04621688276529312, - -0.08248014748096466, - -0.06893877685070038, - 0.05399763211607933, - 0.06844192743301392, - -0.042343560606241226, - 0.02398272417485714, - 0.07128758728504181, - 0.00042195338755846024, - 0.0003962703049182892, - 0.08211225271224976, - 0.06570414453744888, - -0.02653568610548973, - 0.005126255098730326, - -0.09310240298509598, - 0.1334727704524994, - 0.07533380389213562, - -0.06525146216154099, - -0.04615272581577301, - 0.010399042628705502, - -0.07800833135843277, - -0.0011621806770563126, - -0.07775026559829712, - -0.01909555308520794, - 0.0613197460770607, - -0.012403747998178005, - -0.11790768802165985, - -0.08019264042377472, - 0.04837048426270485, - -0.09151708334684372, - -0.01653306744992733, - -0.07922130823135376, - 0.027308156713843346, - 0.055980268865823746, - 0.07508037984371185, - -0.04733382165431976, - 0.019509542733430862, - 0.05709865316748619, - -0.036791153252124786, - 0.03562687709927559, - 0.06118527427315712, - 0.01394906360656023, - -0.12607155740261078, - -0.030854877084493637, - -0.05060849338769913, - 0.05079884082078934, - -0.0685778260231018, - 0.09104838967323303, - 0.0360553078353405, - -0.048803217709064484, - -0.05063339322805405, - 0.07499854266643524, - -0.025002621114253998, - 0.055632367730140686, - 0.043725281953811646, - 0.05133059248328209, - 0.04578588157892227, - -0.05071654170751572, - 0.11553595960140228, - 0.022255556657910347, - -0.014213662594556808, - -0.09727587550878525, - -0.03352759778499603, - -0.03071572631597519, - 0.05789727717638016, - 0.06460973620414734, - -0.07017071545124054, - 0.007500883191823959, - 0.03614375740289688, - -0.0549197793006897, - 0.03965677320957184, - 0.11726978421211243, - 0.09742529690265656, - -0.09380317479372025 - ] - }, - "p245_147.wav": { - "name": "p245", - "embedding": [ - 0.01687598042190075, - 0.06943561881780624, - -0.007168432231992483, - 0.05266550928354263, - -0.042319826781749725, - 0.01016500499099493, - -0.09822674840688705, - 0.08250243216753006, - -0.0007278798148036003, - 0.0965728759765625, - -0.0959683209657669, - 0.0973936915397644, - -0.05587733909487724, - -0.1327417939901352, - 0.02922956645488739, - 0.0429067388176918, - 0.022647663950920105, - 0.025980796664953232, - -0.016756445169448853, - -0.06472177803516388, - 0.03813295066356659, - 0.049331240355968475, - 0.06756006181240082, - -0.0461440235376358, - -0.021891430020332336, - 0.07544268667697906, - -0.008549144491553307, - 0.019413096830248833, - 0.012278901413083076, - -0.055473875254392624, - -0.01793714426457882, - 0.09056406468153, - -0.006831254810094833, - -0.016637753695249557, - 0.03704149276018143, - 0.029418956488370895, - -0.045027729123830795, - -0.01147896982729435, - 0.0032222128938883543, - 0.007434912025928497, - -0.08236000686883926, - 0.04922019690275192, - 0.017478952184319496, - -0.0376509390771389, - 0.07833422720432281, - -0.047492578625679016, - -0.06431808322668076, - 0.031461507081985474, - -0.07579408586025238, - 0.09862212836742401, - 0.08787371963262558, - 0.008924763649702072, - -0.0470295324921608, - -0.021108150482177734, - 0.0765337124466896, - -0.005508362781256437, - -0.09920899569988251, - -0.03975412994623184, - 0.04680348560214043, - 0.11293455958366394, - -0.004147372208535671, - -0.008561430498957634, - 0.029330581426620483, - 0.07162770628929138, - -0.006370825227349997, - 0.08896437287330627, - 0.0730324387550354, - 0.07857243716716766, - -0.011741924099624157, - 0.016542578116059303, - 0.013277491554617882, - 0.08568202704191208, - 0.0365888848900795, - -0.009046215564012527, - 0.00134345144033432, - -0.010595113039016724, - -0.03115909919142723, - 0.001813046634197235, - -0.016159240156412125, - -0.0438741073012352, - -0.03822213411331177, - -0.0296674445271492, - 0.009476404637098312, - -0.03547278791666031, - -0.030248742550611496, - 0.0015751596074551344, - 0.08084380626678467, - -0.013797730207443237, - 0.05011191964149475, - 0.028738608583807945, - -0.017701828852295876, - 0.028609108179807663, - -0.04165536165237427, - -0.04038427770137787, - -0.033882759511470795, - 0.003850731998682022, - 0.029894759878516197, - 0.06803813576698303, - 0.010777734220027924, - 0.02098166011273861, - 0.10072540491819382, - 0.037381548434495926, - 0.013857911340892315, - 0.014234564267098904, - -0.08099372684955597, - 0.08434265851974487, - 0.1128661036491394, - -0.019581366330385208, - 0.05152810737490654, - -0.014639541506767273, - 0.04346306622028351, - 0.028025131672620773, - -0.07644529640674591, - -0.0149867944419384, - -0.03752937540411949, - 0.03354319557547569, - 0.01883382722735405, - 0.10219782590866089, - 0.024212142452597618, - 0.023683704435825348, - 0.12026466429233551, - -0.07696861028671265, - -0.07811364531517029, - -0.04685017466545105, - 0.020663248375058174, - -0.08006954193115234, - 0.06868821382522583, - 0.049958180636167526, - 0.018483765423297882, - 0.027916600927710533, - 0.0651274248957634, - 0.001998619642108679, - 0.03573717549443245, - 0.0033614288549870253, - -0.07070489972829819, - -0.02143549732863903, - -0.06060607358813286, - 0.025016959756612778, - 0.08599035441875458, - 0.02988770604133606, - 0.10118745267391205, - 0.006766083650290966, - 0.025512486696243286, - -0.08451934158802032, - -0.003950513433665037, - 0.04807303473353386, - 0.02188900113105774, - -0.0190617386251688, - -0.029232874512672424, - -0.019365286454558372, - -0.09402510523796082, - 0.03969733417034149, - -0.05569050833582878, - 0.08042807877063751, - -0.033141449093818665, - -4.494811219046824e-05, - 0.0841088518500328, - 0.0019143037497997284, - -0.030746646225452423, - -0.07616119086742401, - -0.03583524376153946, - -0.0154340248554945, - 0.025227200239896774, - -0.12619835138320923, - -0.0742165595293045, - -0.036740221083164215, - 0.025796081870794296, - -0.005953145679086447, - 0.02056020125746727, - 0.07888464629650116, - -0.017125576734542847, - 0.021695397794246674, - -0.0013919075718149543, - 0.014222665689885616, - -0.06085383892059326, - -0.08637982606887817, - -0.008353529497981071, - -0.052160099148750305, - -0.012566241435706615, - 0.0632978230714798, - -0.0007249763002619147, - 0.021564027294516563, - 0.006890064105391502, - -0.053601957857608795, - -0.10291656851768494, - 0.03308693692088127, - 0.011536362580955029, - 0.0006774887442588806, - 0.0648837760090828, - 0.07050660997629166, - -0.06708021461963654, - 0.04630706459283829, - 0.04192341864109039, - 0.08083929121494293, - -0.06159328669309616, - 0.018643440678715706, - -0.09010124206542969, - 0.03023688867688179, - 0.13584372401237488, - -0.051041215658187866, - -0.08429925888776779, - -0.07979002594947815, - -0.0765543133020401, - 0.07438375800848007, - -0.03615685552358627, - -0.05224291980266571, - 0.015784140676259995, - -0.026803268119692802, - -0.08065406233072281, - -0.07475551962852478, - 0.08840927481651306, - -0.019861675798892975, - 0.000561397522687912, - -0.0594276487827301, - 0.005635014735162258, - -0.011994479224085808, - 0.05452972650527954, - -0.05477689951658249, - 0.03244395554065704, - 0.06490307301282883, - -0.06395669281482697, - 0.018686428666114807, - 0.05370347201824188, - 0.055524300783872604, - -0.01574614644050598, - -0.01902826502919197, - -0.07318990677595139, - 0.04314978048205376, - -0.0285206139087677, - 0.0673958957195282, - 0.02181817591190338, - -0.027508800849318504, - -0.047594424337148666, - 0.04699129983782768, - -0.010133549571037292, - 0.01799565553665161, - 0.06949862837791443, - 0.06538397073745728, - 0.007716785650700331, - -0.08463312685489655, - 0.10020949691534042, - 0.009254100732505322, - 0.009770847856998444, - -0.029096392914652824, - 0.0018080523004755378, - -0.058436810970306396, - 0.02323175221681595, - 1.7389655113220215e-05, - -0.08250914514064789, - -0.002193694468587637, - -0.019860494881868362, - 0.00676284683868289, - 0.03341388329863548, - 0.08732720464468002, - 0.04965898394584656, - -0.06717147678136826 - ] - }, - "p245_229.wav": { - "name": "p245", - "embedding": [ - 0.017833705991506577, - 0.10620729625225067, - -0.02716187760233879, - 0.06193678453564644, - -0.05028887465596199, - -0.01674700900912285, - -0.08416841179132462, - 0.0586332343518734, - 0.018962420523166656, - 0.09082196652889252, - -0.024159403517842293, - 0.10156888514757156, - -0.04226793348789215, - -0.10385236889123917, - -0.004946193657815456, - 0.003811277449131012, - 0.015462502837181091, - 0.018416576087474823, - 0.012632036581635475, - -0.026110099628567696, - -0.03203895688056946, - 0.004537452943623066, - -0.03025299310684204, - 0.000410422682762146, - -0.013634571805596352, - 0.018337521702051163, - -0.0398084819316864, - 0.03187377005815506, - -0.019862772896885872, - -0.060700614005327225, - -0.004677378572523594, - 0.022295722737908363, - -0.03438471257686615, - -0.0035824680235236883, - -0.007223563268780708, - -0.008648294024169445, - -0.004147071857005358, - -0.01863870583474636, - -0.031555965542793274, - -0.0344526432454586, - -0.04499049484729767, - 0.0218128003180027, - 0.02852516621351242, - -0.059561338275671005, - 0.020503636449575424, - 0.02322128415107727, - -0.027357393875718117, - -0.01871231012046337, - -0.038537222892045975, - 0.0892009288072586, - 0.029826998710632324, - 0.07851661741733551, - -0.04619782790541649, - -0.03014095313847065, - 0.10330498218536377, - 0.01882355473935604, - -0.009541727602481842, - -0.027155457064509392, - -0.011539775878190994, - 0.07540429383516312, - 0.02208646759390831, - 0.013419600203633308, - 0.042072951793670654, - 0.06542489677667618, - 0.026318825781345367, - 0.0207879189401865, - 0.05928638577461243, - 0.05388724058866501, - -0.03340350463986397, - 0.032644789665937424, - 0.04676036536693573, - 0.035159528255462646, - 0.0031194668263196945, - 0.03228311240673065, - -0.005200378596782684, - 0.018861297518014908, - 0.01503603346645832, - 0.03180718049407005, - -0.031021390110254288, - -0.01753920689225197, - -0.003928624093532562, - 0.027134915813803673, - 0.007655126042664051, - -0.027180857956409454, - -0.04441680386662483, - -0.027815070003271103, - 0.07109994441270828, - 0.008170605637133121, - 0.018829017877578735, - 0.019240474328398705, - 0.04515431448817253, - 0.007108947262167931, - -0.06692110002040863, - -0.03214964270591736, - 0.03002394735813141, - -0.017836879938840866, - 0.0601254403591156, - 0.000507846474647522, - 0.00819731131196022, - 0.0015452175866812468, - 0.05034971609711647, - -0.012081120163202286, - 0.03314417600631714, - -0.006373772397637367, - -0.04044809937477112, - 0.011094868183135986, - 0.03351490944623947, - 0.021656449884176254, - 0.059381045401096344, - 0.006152201443910599, - 0.040625881403684616, - 0.07226324081420898, - -0.05167388543486595, - -0.036990970373153687, - 0.01653316803276539, - 0.04657892510294914, - -0.032473526895046234, - 0.08378227055072784, - 0.003351696766912937, - 0.05009856075048447, - 0.0572018139064312, - 0.0042100027203559875, - -0.03722354769706726, - -0.016422713175415993, - 0.010823165997862816, - -0.028255663812160492, - 0.054991669952869415, - 0.03505391627550125, - -0.0277281291782856, - -0.0378371886909008, - 0.06286531686782837, - -0.009166107513010502, - -0.0195931326597929, - 0.009264307096600533, - 0.01508574839681387, - -0.05154145881533623, - 0.06666966527700424, - -0.05569108948111534, - 0.008931046351790428, - 0.04931595176458359, - -0.019608136266469955, - -0.010359052568674088, - 0.007967304438352585, - -0.060940101742744446, - 0.037310630083084106, - 0.004216235596686602, - -0.004898916929960251, - 0.07396860420703888, - -0.05401541292667389, - -0.07106470316648483, - -0.030234647914767265, - 0.01728491485118866, - -0.016407834365963936, - 0.06678484380245209, - 0.06425316631793976, - 0.02962702140212059, - 0.04817122220993042, - 0.0010351669043302536, - 0.01694277673959732, - 0.019808391109108925, - -0.1101369857788086, - 0.009859793819487095, - 0.01395457610487938, - 0.0019650347530841827, - -0.022062331438064575, - 0.009369672276079655, - 0.0010352330282330513, - -0.02205272763967514, - 0.012263722717761993, - 0.041676051914691925, - 0.016890935599803925, - 0.046777721494436264, - -0.11090710759162903, - 0.003162207081913948, - -0.033976003527641296, - -0.050292376428842545, - 0.030784860253334045, - -0.025186769664287567, - -0.02213302068412304, - 0.02199498936533928, - 0.034588564187288284, - -0.005461312830448151, - -0.04336395859718323, - -0.035829924046993256, - -0.02146868407726288, - 0.006920505315065384, - 0.0031632333993911743, - -0.0021576033905148506, - -0.02171609178185463, - 0.007879875600337982, - 0.04192621260881424, - 0.016796531155705452, - 0.011167256161570549, - 0.056430600583553314, - -0.034959372133016586, - -0.0005472246557474136, - 0.024400025606155396, - 0.09771516919136047, - 0.04066973179578781, - -0.08596210181713104, - -0.07395122945308685, - 0.00012766290456056595, - -0.0559719055891037, - 0.023752085864543915, - -0.01878785341978073, - 0.0335935540497303, - 0.015935957431793213, - 0.014390076510608196, - 0.039736147969961166, - -0.14267529547214508, - 0.03004344180226326, - -0.030806226655840874, - -0.03931436687707901, - 0.00065656378865242, - 0.000554962083697319, - 0.040239207446575165, - 0.016702713444828987, - -0.03528685122728348, - -0.05296364799141884, - 0.021238017827272415, - 0.028150256723165512, - 0.029138362035155296, - 0.0690004751086235, - 0.04669996723532677, - -0.008775357156991959, - -0.0012180993799120188, - -0.03143259137868881, - 0.007968328893184662, - 0.011450434103608131, - 0.04193948954343796, - 0.016909148544073105, - -0.015046491287648678, - -0.08710579574108124, - 0.05308601260185242, - -0.010983648709952831, - 0.05314164608716965, - -0.02919692173600197, - 0.01054445095360279, - 0.03424951061606407, - -0.03450099378824234, - 0.11250001192092896, - 0.04888845607638359, - -0.02481604367494583, - -0.030990026891231537, - -0.017108354717493057, - -0.036871287971735, - 0.07498010993003845, - 0.04275849089026451, - -0.04594205319881439, - -0.016575051471590996, - 0.06173774600028992, - 0.04882063716650009, - 0.08966310322284698, - 0.06832963973283768, - 0.05440453067421913, - 0.03674720972776413 - ] - }, - "p245_305.wav": { - "name": "p245", - "embedding": [ - 0.03680841997265816, - 0.11020034551620483, - -0.005404968746006489, - 0.042662445455789566, - -0.08041616529226303, - 0.08192805200815201, - -0.09941112995147705, - 0.11860743165016174, - -0.0606069341301918, - 0.12563851475715637, - -0.09892147034406662, - 0.1306304782629013, - -0.014961876906454563, - -0.18951694667339325, - -0.03994905576109886, - 0.05225594714283943, - -0.028645865619182587, - 0.008471691980957985, - -0.04621202498674393, - -0.01793196052312851, - 0.05020938441157341, - 0.019284356385469437, - 0.06857504695653915, - -0.013151300139725208, - 0.031644877046346664, - 0.046304889023303986, - 0.015884162858128548, - 0.0573231503367424, - 0.0376487597823143, - -0.05762620270252228, - -0.07605525851249695, - 0.12885041534900665, - -0.014173022471368313, - 0.005599393509328365, - 0.05730842053890228, - -0.023400746285915375, - 0.0107292914763093, - -0.061165884137153625, - -0.008159165270626545, - 0.010970084927976131, - -0.025679657235741615, - 0.06106745824217796, - 0.020902398973703384, - -0.0282975472509861, - 0.06579822301864624, - -0.00013658902025781572, - -0.04225555807352066, - -0.023120585829019547, - -0.09900441765785217, - 0.14053599536418915, - 0.07213610410690308, - -0.02566283755004406, - -0.075237937271595, - -0.06398482620716095, - 0.12165427207946777, - -0.002922208048403263, - -0.11024611443281174, - -0.03415912017226219, - 0.07996848970651627, - 0.16135293245315552, - 0.007831237278878689, - 0.0005735987797379494, - 0.020971955731511116, - 0.11034524440765381, - -0.009645863436162472, - 0.10238414257764816, - 0.04607567936182022, - 0.07685147970914841, - 0.0033366908319294453, - 0.08128233253955841, - 0.02057475410401821, - 0.06220689043402672, - -0.030061066150665283, - -0.04662223532795906, - 0.01886085979640484, - -0.037505168467760086, - -0.03627442196011543, - 0.028389321640133858, - -0.03163444623351097, - -0.02072555013000965, - -0.03730696067214012, - -0.008698281832039356, - 0.004216532222926617, - -0.05045827850699425, - -0.05701678246259689, - 0.06090954318642616, - -0.0005308945546858013, - 0.0026624053716659546, - 0.07018835097551346, - 0.058347903192043304, - -0.015369430184364319, - 0.030175304040312767, - -0.03861163556575775, - -0.12848998606204987, - 0.003807591274380684, - 0.019269131124019623, - -0.011519728228449821, - 0.07888594269752502, - 0.015645693987607956, - -0.026519672945141792, - 0.10311182588338852, - 0.08790585398674011, - -0.003693113336339593, - 0.05167796090245247, - -0.07798141241073608, - 0.12200459837913513, - 0.10174231976270676, - 0.007830099202692509, - 0.05984542891383171, - -0.031067993491888046, - 0.09622670710086823, - 0.07772275805473328, - -0.12174350768327713, - -0.06391138583421707, - -0.015521051362156868, - -0.018069177865982056, - -0.0008157648844644427, - 0.07142185419797897, - -0.015518763102591038, - 0.007603475823998451, - 0.08897192031145096, - -0.07205375283956528, - -0.07780874520540237, - -0.040904443711042404, - 0.04534268006682396, - -0.06015076860785484, - 0.059068720787763596, - 0.04122454300522804, - -0.01691916584968567, - -0.0098841218277812, - 0.055033717304468155, - -0.017712585628032684, - 0.01491404790431261, - 0.07901303470134735, - -0.07045823335647583, - 0.022614985704421997, - -0.05301900580525398, - 0.011059349402785301, - 0.07335592061281204, - 0.05476197227835655, - 0.0561140775680542, - -0.008677709847688675, - 0.004275009501725435, - -0.05714411288499832, - -0.0068344492465257645, - 0.046769410371780396, - 0.04538201913237572, - 0.01631047949194908, - -0.025193823501467705, - -0.055848535150289536, - -0.09241708368062973, - 0.03677891939878464, - -0.01886765845119953, - 0.10332703590393066, - -0.014842845499515533, - 0.024641763418912888, - 0.07389681041240692, - 0.023641254752874374, - -0.01999754272401333, - -0.08563105762004852, - -0.03083745203912258, - 0.035126619040966034, - 0.025894906371831894, - -0.07319611310958862, - -0.057273030281066895, - 0.0014720156323164701, - 2.184821460105013e-05, - -0.04095613956451416, - 0.02348559908568859, - 0.04756169766187668, - 0.00873467419296503, - 0.06310738623142242, - -0.08655968308448792, - 0.027806872501969337, - -0.09011808782815933, - -0.01761840656399727, - -0.0385696180164814, - -0.043738093227148056, - -0.030356185510754585, - 0.08681339025497437, - 0.0356714241206646, - 0.005997860804200172, - 0.03047958016395569, - -0.05473127216100693, - -0.06523144990205765, - 0.06382925808429718, - 0.059864506125450134, - 0.022563794627785683, - 0.08718200027942657, - 0.047233566641807556, - -0.0451233796775341, - 0.08615673333406448, - 0.07195208966732025, - 0.05867895483970642, - -0.002825414063408971, - -0.011505942791700363, - -0.07360249757766724, - 0.06834246963262558, - 0.10501454770565033, - -0.11997657269239426, - -0.11935344338417053, - -0.06379147619009018, - -0.06624368578195572, - 0.06997809559106827, - -0.02433452196419239, - -0.0262463241815567, - 0.04251294583082199, - -0.023216083645820618, - -0.0944429561495781, - -0.08610774576663971, - 0.11461147665977478, - -0.057830873876810074, - -0.02340402454137802, - -0.03950190544128418, - 0.023174431174993515, - 0.07389065623283386, - 0.005727465730160475, - -0.04888283461332321, - -0.00010191417095484212, - 0.0781739354133606, - -0.07571560889482498, - -0.007918321527540684, - 0.02574598230421543, - 0.005559690296649933, - -0.08457118272781372, - 0.047549787908792496, - -0.07322046905755997, - 0.07703110575675964, - -0.06899742037057877, - 0.18086005747318268, - 0.004408083390444517, - -0.043381791561841965, - -0.07191946357488632, - 0.08766552805900574, - -0.039148908108472824, - 0.013512498699128628, - 0.052040182054042816, - 0.05019459128379822, - -0.004328541923314333, - -0.10064201802015305, - 0.12004023790359497, - 0.009381997399032116, - -0.03776310011744499, - -0.07108494639396667, - -0.016123419627547264, - -0.048631854355335236, - 0.011479893699288368, - 0.027229811996221542, - -0.09176034480333328, - -0.023768458515405655, - 0.018228860571980476, - -0.01637456752359867, - 0.09974496811628342, - 0.14912520349025726, - 0.08032150566577911, - -0.08421117812395096 - ] - }, - "p245_321.wav": { - "name": "p245", - "embedding": [ - 0.019796855747699738, - 0.04795306921005249, - -0.019162900745868683, - -0.0013976339250802994, - -0.05059266462922096, - 0.024233508855104446, - -0.11165747791528702, - 0.08841949701309204, - -0.009336846880614758, - 0.12800636887550354, - -0.042159970849752426, - 0.11095093935728073, - 0.0015247608534991741, - -0.1398591846227646, - 0.014686169102787971, - 0.026818890124559402, - -0.01941770501434803, - -0.017896147444844246, - -0.00888101477175951, - -0.08759269118309021, - 0.04669930413365364, - 0.06280328333377838, - 0.023890424519777298, - -0.03796340525150299, - 0.00501624308526516, - 0.07881958037614822, - -0.00682907784357667, - 0.004837107844650745, - -0.011024710722267628, - -0.09525908529758453, - -0.04165209084749222, - 0.07646425068378448, - -0.04464235156774521, - -0.024425994604825974, - 0.01538074016571045, - -0.02293332666158676, - -0.008042561821639538, - -0.020627465099096298, - -0.004315420985221863, - 0.04895251989364624, - -0.06276361644268036, - 0.07247351109981537, - 0.026428688317537308, - -0.01012672483921051, - 0.05220962315797806, - -0.01447707787156105, - -0.03048100508749485, - -0.0012980960309505463, - -0.07267862558364868, - 0.13778889179229736, - 0.07741786539554596, - -0.02722783014178276, - -0.028835080564022064, - -0.039682306349277496, - 0.06727282702922821, - 0.00670588668435812, - -0.10694492608308792, - -0.012221192941069603, - 0.03368746489286423, - 0.08983111381530762, - -0.018398467451334, - -0.05516328290104866, - 0.05287482589483261, - 0.08594126999378204, - 0.01762217842042446, - 0.05788952857255936, - 0.08418719470500946, - 0.07011488825082779, - -0.03242700919508934, - -0.022819530218839645, - 0.02979768067598343, - 0.0952475368976593, - 0.0562124066054821, - -0.020052915439009666, - 0.0411151684820652, - 0.002737700939178467, - -0.009134945459663868, - -0.029955647885799408, - -0.015836356207728386, - -0.01971692405641079, - -0.018036289140582085, - -0.009873829782009125, - 0.020086398348212242, - 0.03005480021238327, - -0.0292836781591177, - 0.01388915441930294, - 0.05110170692205429, - 0.004012066870927811, - 0.04873056337237358, - 0.007368580903857946, - 0.02270909771323204, - 0.054285578429698944, - -0.07641416788101196, - -0.027434296905994415, - 0.025849001482129097, - -0.0042922478169202805, - 0.035942044109106064, - 0.08234238624572754, - 0.03569891303777695, - -0.013023817911744118, - 0.10679589211940765, - 0.042937107384204865, - -0.006507156416773796, - -0.008870118297636509, - -0.07570001482963562, - 0.08984769880771637, - 0.11224710941314697, - -0.038124315440654755, - 0.0507424920797348, - -0.03510075435042381, - 0.0725833848118782, - -0.0006898492574691772, - -0.12000507861375809, - -0.04006369039416313, - 0.006407805718481541, - 0.04356196150183678, - -0.0028378437273204327, - 0.13622228801250458, - 0.006731804460287094, - 0.04774729162454605, - 0.10489606112241745, - -0.06673643738031387, - -0.048521216958761215, - -0.046600136905908585, - 0.035671234130859375, - -0.11617111414670944, - 0.07023552805185318, - 0.05316717550158501, - 0.0024900510907173157, - 0.0377872996032238, - 0.07560620456933975, - -0.023201899603009224, - 0.01714150607585907, - -0.026662565767765045, - -0.029489167034626007, - -0.005715946201235056, - -0.01771145686507225, - 0.01756838895380497, - 0.04702644795179367, - 0.017122114077210426, - 0.0696008950471878, - -0.002864556387066841, - -0.019465235993266106, - -0.11771953850984573, - 0.04103127121925354, - 0.009452946484088898, - 0.037627145648002625, - -0.025642866268754005, - -0.0359167642891407, - -0.011247633025050163, - -0.08937516808509827, - -0.003203418105840683, - -0.02582256682217121, - 0.058227479457855225, - -0.031154057011008263, - -0.001993859652429819, - 0.08229762315750122, - 0.057472631335258484, - -0.01950656995177269, - -0.001266084611415863, - -0.05629737675189972, - -0.01752004586160183, - 0.04999757558107376, - -0.11136072874069214, - -0.07291733473539352, - -0.03777594491839409, - 0.03453898802399635, - 0.017137693241238594, - 0.04605704918503761, - 0.07797226309776306, - -0.0021591167896986008, - 0.03852430358529091, - -0.045857787132263184, - 0.0037035192362964153, - -0.07883689552545547, - -0.08240285515785217, - -0.024815313518047333, - -0.047267187386751175, - -0.035947155207395554, - 0.0677686557173729, - -0.026642654091119766, - 0.04849773645401001, - -0.045029167085886, - -0.02876419387757778, - -0.07279334962368011, - 0.022052543237805367, - 0.042411379516124725, - -0.014073062688112259, - 0.024032149463891983, - 0.08131226152181625, - -0.025271791964769363, - 0.031216438859701157, - 0.0436992421746254, - 0.09169494360685349, - -0.03659851849079132, - 0.04318968579173088, - -0.05520794168114662, - 0.0829092338681221, - 0.07640048116445541, - -0.020023712888360023, - -0.063369020819664, - -0.043132685124874115, - -0.0794314593076706, - 0.06705223023891449, - -0.020340420305728912, - -0.014383744448423386, - -0.0043847993947565556, - 0.022201169282197952, - -0.0691576898097992, - -0.04532690346240997, - 0.06268709152936935, - -0.02989770844578743, - -0.00779334269464016, - -0.08017323911190033, - 0.02725606970489025, - 0.06483534723520279, - 0.07840752601623535, - -0.04323766380548477, - 0.003998568281531334, - 0.04557940363883972, - -0.02123401314020157, - 0.04879053309559822, - 0.051013581454753876, - 0.06213816627860069, - -0.06196678429841995, - -0.035608939826488495, - -0.07556778937578201, - 0.02215547114610672, - -0.05067184194922447, - 0.06656070053577423, - 0.037851981818675995, - -0.0398666076362133, - -0.0593203566968441, - 0.053124748170375824, - -0.0021822997368872166, - 0.022914491593837738, - 0.058885447680950165, - 0.06444264948368073, - 0.05139835178852081, - -0.06555067747831345, - 0.0732717290520668, - 0.03350609540939331, - -0.006020057946443558, - -0.03344335779547691, - -0.00962885096669197, - -0.01858488656580448, - 0.029179146513342857, - 0.036740198731422424, - -0.07965373992919922, - 0.0013965889811515808, - 0.01820480264723301, - 0.018503092229366302, - 0.03805097937583923, - 0.09350802004337311, - 0.03438076749444008, - -0.11205171793699265 - ] - }, - "p245_068.wav": { - "name": "p245", - "embedding": [ - 0.021957755088806152, - 0.08661796152591705, - -0.045143336057662964, - 0.045182548463344574, - -0.047540441155433655, - 0.010512247681617737, - -0.11310746520757675, - 0.10278674960136414, - -0.036397069692611694, - 0.11621536314487457, - -0.08819311112165451, - 0.10504996031522751, - -0.07022294402122498, - -0.15615186095237732, - -0.023822052404284477, - 0.0656767338514328, - -0.0005303770303726196, - -0.038710445165634155, - -0.006298385560512543, - -0.029215510934591293, - 0.07068923115730286, - 0.05148620530962944, - 0.017076954245567322, - 0.007087378762662411, - -0.012709235772490501, - 0.07656851410865784, - -0.008050093427300453, - 0.011457858607172966, - -0.004715288989245892, - 0.010694569908082485, - -0.012077799066901207, - 0.09943683445453644, - -0.014580751769244671, - -0.021040506660938263, - 0.02109205350279808, - 0.03495434671640396, - -0.019907262176275253, - -0.03617654740810394, - -0.000608989386819303, - -0.006250749342143536, - -0.0753464549779892, - 0.039726804941892624, - -0.0034810006618499756, - -0.02756824716925621, - 0.07469600439071655, - -0.03918081149458885, - -0.050030939280986786, - -0.008366195484995842, - -0.10358190536499023, - 0.13226330280303955, - 0.09312580525875092, - 0.042326267808675766, - -0.06573665142059326, - -0.035372018814086914, - 0.10529046505689621, - 0.009614803828299046, - -0.07926337420940399, - -0.055499326437711716, - 0.05049272999167442, - 0.16806785762310028, - -0.0018078784924000502, - -0.02924937568604946, - 0.04494518041610718, - 0.08643177151679993, - 0.04230610281229019, - 0.06142454966902733, - 0.08683254569768906, - 0.07367929816246033, - 0.007889879867434502, - -0.02790161967277527, - 0.05355392396450043, - 0.07458736002445221, - 0.03828192874789238, - -0.03543815761804581, - 0.01036419440060854, - 0.006485484540462494, - -0.029976023361086845, - 0.018398797139525414, - -0.023383930325508118, - -0.051529936492443085, - -0.022684192284941673, - -0.004640957340598106, - -0.013122609816491604, - 0.001032407395541668, - -0.04056040570139885, - 0.02226077765226364, - 0.06955316662788391, - -0.0331730917096138, - 0.06142030283808708, - 0.030625488609075546, - -0.015783414244651794, - 0.03583595156669617, - -0.05616746470332146, - -0.06951442360877991, - 0.02198934182524681, - 0.02224070392549038, - 0.0034164737444370985, - 0.07401338964700699, - 0.02572927437722683, - 0.002608424751088023, - 0.10432995855808258, - 0.023159176111221313, - 0.02326396480202675, - 0.01384873129427433, - -0.09176649153232574, - 0.1016901433467865, - 0.10549823939800262, - -0.03362666070461273, - 0.0482378713786602, - -0.009836315177381039, - 0.017206335440278053, - 0.05310118943452835, - -0.09218424558639526, - -0.04348192363977432, - 0.01949073001742363, - 0.02991928532719612, - 0.01068449392914772, - 0.10253587365150452, - 0.02146149054169655, - 0.028457026928663254, - 0.1260330080986023, - -0.09592334926128387, - -0.10011017322540283, - -0.057887911796569824, - 0.040403492748737335, - -0.0695645660161972, - 0.06672489643096924, - 0.06927646696567535, - 0.023627087473869324, - 0.004220356233417988, - 0.05582958087325096, - -0.006523303687572479, - 0.029547661542892456, - -0.014327874407172203, - -0.055371325463056564, - 0.017639292404055595, - -0.05609823018312454, - -0.015749260783195496, - 0.07552137225866318, - 0.02237766608595848, - 0.06844121217727661, - 0.008556347340345383, - 0.020640438422560692, - -0.12003402411937714, - 0.0007948220591060817, - 0.0727209597826004, - 0.03607843816280365, - -0.020361270755529404, - -0.044254548847675323, - -0.04218670725822449, - -0.06681978702545166, - 0.006706803105771542, - -0.03010953590273857, - 0.09841638803482056, - -0.023907622322440147, - 0.012109657749533653, - 0.08864200115203857, - -0.004977382719516754, - -0.007578730117529631, - -0.04252775013446808, - -0.02234969660639763, - -0.007929573766887188, - 0.03151892125606537, - -0.09064247459173203, - -0.1010613963007927, - -0.042087361216545105, - 0.05107451602816582, - -0.004260665737092495, - 0.042364686727523804, - 0.052337389439344406, - -0.013811245560646057, - 0.007843616418540478, - -0.06644966453313828, - 0.04462031275033951, - -0.08869294822216034, - -0.056289754807949066, - -0.014875976368784904, - -0.03884541988372803, - 0.006139889359474182, - 0.08160577714443207, - 0.013248255476355553, - 0.024326007813215256, - -0.0032954688649624586, - -0.08268805593252182, - -0.1023300513625145, - 0.05481996759772301, - 0.061673473566770554, - 0.003450061660259962, - 0.0645458847284317, - 0.04077550023794174, - -0.044062625616788864, - 0.038811683654785156, - 0.03586976230144501, - 0.10323973000049591, - -0.04386085271835327, - 0.004681393504142761, - -0.060749601572752, - 0.036128636449575424, - 0.10026691854000092, - -0.08631306886672974, - -0.07773762196302414, - -0.06431446224451065, - -0.07211191207170486, - 0.05085686594247818, - -0.03988942131400108, - 0.01222461462020874, - 0.028577325865626335, - -0.0391903892159462, - -0.12443135678768158, - -0.09700140357017517, - 0.07328532636165619, - -0.015357635915279388, - -0.014184346422553062, - -0.061515968292951584, - 0.03144798055291176, - 0.05173064395785332, - 0.008370292373001575, - -0.048340167850255966, - -0.0010128326248377562, - 0.011528288945555687, - -0.04620502144098282, - -0.009316708892583847, - 0.05019637197256088, - 0.04620800167322159, - -0.07486826181411743, - -0.013767186552286148, - -0.088576540350914, - 0.08730854839086533, - -0.05167301744222641, - 0.11671514809131622, - -0.004235226195305586, - -0.03978075832128525, - -0.09189099073410034, - 0.05710427090525627, - 0.028938813135027885, - 0.049866896122694016, - 0.02716229483485222, - 0.06394459307193756, - 0.0003793786163441837, - -0.07575772702693939, - 0.09853824973106384, - 0.04341161996126175, - -0.015513102523982525, - -0.07642939686775208, - -0.016793806105852127, - -0.05546639487147331, - 0.018490217626094818, - -0.0011689866660162807, - -0.05994240194559097, - -0.000582697510253638, - -0.0060240477323532104, - 0.025851421058177948, - 0.06462063640356064, - 0.09856706857681274, - 0.035542722791433334, - -0.09254105389118195 - ] - }, - "p245_376.wav": { - "name": "p245", - "embedding": [ - 0.08005376160144806, - 0.05755379796028137, - -0.06888500601053238, - -0.012651419267058372, - -0.035178836435079575, - 0.05041232705116272, - -0.14282119274139404, - 0.05526858940720558, - -0.017436450347304344, - 0.15130344033241272, - -0.03355814889073372, - 0.11094611138105392, - 0.027208877727389336, - -0.10332140326499939, - -0.02636384405195713, - 0.006753427907824516, - -0.017748337239027023, - -0.004211030900478363, - -0.06095856428146362, - -0.04716094210743904, - 0.010429040528833866, - 0.05530063062906265, - 0.03440217301249504, - -0.06851283460855484, - 0.02622714266180992, - 0.04758075624704361, - -0.002288578078150749, - 0.01325017586350441, - -0.02644115313887596, - -0.04145092889666557, - 0.00013965927064418793, - 0.08812232315540314, - -0.05831935256719589, - -0.007134494371712208, - -0.00359090487472713, - 0.00300761591643095, - -0.0018879435956478119, - -0.07648806273937225, - -0.002619081176817417, - 0.05342339351773262, - -0.0006017116829752922, - 0.08844119310379028, - 0.04588779807090759, - 0.012877222150564194, - -0.013752523809671402, - -0.02985967881977558, - -0.025843659415841103, - -0.0272990670055151, - -0.06780489534139633, - 0.18060865998268127, - 0.06884300708770752, - 0.005504269618541002, - -0.08884146809577942, - -0.017812181264162064, - 0.06815776228904724, - -0.013821378350257874, - -0.06650679558515549, - -0.051671311259269714, - -0.0009009093046188354, - 0.10872600972652435, - -0.018352646380662918, - -0.05834049731492996, - 0.02400658279657364, - 0.10218660533428192, - 0.024838706478476524, - 0.01669878512620926, - 0.10635505616664886, - 0.10029220581054688, - -0.030666068196296692, - 0.012608409859240055, - 0.03512316942214966, - 0.04906298592686653, - 0.05049573630094528, - -0.030832210555672646, - 0.0599546879529953, - -0.032943420112133026, - 0.0007438166067004204, - -0.020310375839471817, - -0.03576834127306938, - -0.07504996657371521, - 0.0055182864889502525, - -0.005051222629845142, - 0.019051004201173782, - 0.1001109629869461, - -0.10099520534276962, - 0.0008055642247200012, - 0.054867908358573914, - -0.061348363757133484, - 0.05157175660133362, - 0.07086262106895447, - 0.038022495806217194, - 0.0048141684383153915, - -0.059027619659900665, - -0.06818430125713348, - 0.06334421038627625, - 0.005557971075177193, - 0.030040446668863297, - 0.04530750960111618, - 0.03309766203165054, - -0.015002413652837276, - 0.06790737062692642, - 0.03983112424612045, - -0.028200428932905197, - -0.031751230359077454, - -0.04700809717178345, - 0.11032786965370178, - 0.1379425972700119, - -0.03843233734369278, - 0.007988182827830315, - -0.022303558886051178, - 0.0240476131439209, - 0.023102665320038795, - -0.09188297390937805, - -0.07471267879009247, - 0.04373764246702194, - 0.05013854801654816, - 0.04415269196033478, - 0.09229746460914612, - 0.01910434290766716, - 0.044870488345623016, - 0.058838970959186554, - -0.022323831915855408, - -0.05037125200033188, - -0.031643085181713104, - 0.014776039868593216, - -0.06577251851558685, - 0.020165421068668365, - 0.061019591987133026, - 0.004524789750576019, - -0.03427709639072418, - 0.07929814606904984, - 0.01673387736082077, - 0.013604751788079739, - -0.024389877915382385, - 0.043047912418842316, - 0.07457157224416733, - 0.02622353844344616, - -0.0023830030113458633, - 0.02857119031250477, - 0.020267723128199577, - 0.057761844247579575, - 0.026318516582250595, - -0.010373399592936039, - -0.11678669601678848, - 0.04177180677652359, - 0.038499727845191956, - 0.03413465619087219, - -0.07446363568305969, - -0.028032515197992325, - -0.011551225557923317, - -0.03445816785097122, - 0.0166546031832695, - -0.03555645793676376, - 0.04926202446222305, - 0.02559366077184677, - -0.03673495352268219, - 0.1158822774887085, - -0.033373527228832245, - -0.014727499336004257, - 0.01235896721482277, - 0.045747436583042145, - 0.019564781337976456, - 0.04482809826731682, - -0.06912360340356827, - -0.05930550396442413, - 0.001979677937924862, - 0.01577814482152462, - 0.013632276095449924, - 0.038298387080430984, - 0.07666600495576859, - -0.048963628709316254, - 0.041163742542266846, - -0.06342019140720367, - -0.009470120072364807, - -0.07057616114616394, - 0.0076567791402339935, - 0.010691531002521515, - -0.09257781505584717, - -0.03947608545422554, - 0.08207451552152634, - 0.01605331525206566, - 0.03958521783351898, - -0.08270879089832306, - -0.07009458541870117, - -0.021396761760115623, - 0.042822498828172684, - 0.0718824714422226, - -0.055736735463142395, - -0.010422486811876297, - 0.058570556342601776, - 0.04986683279275894, - 0.015990938991308212, - 0.08449632674455643, - 0.04153852164745331, - -0.061078086495399475, - -0.03711984306573868, - -0.03062603622674942, - 0.09993880987167358, - 0.04734416678547859, - -0.05824292451143265, - -0.04347402602434158, - -0.05519230663776398, - -0.049645937979221344, - -0.0006622616201639175, - -0.014162433333694935, - 0.024793529883027077, - 0.06623566150665283, - -0.021464698016643524, - -0.08998558670282364, - -0.0979444831609726, - 0.06329875439405441, - -0.05878762528300285, - 0.013441061601042747, - -0.05012490227818489, - 0.027473634108901024, - 0.043029628694057465, - 0.05713218078017235, - -0.040637753903865814, - 0.007757308892905712, - -0.020825708284974098, - -0.060269929468631744, - 0.0030862241983413696, - 0.013228049501776695, - 0.04468826949596405, - -0.08472061902284622, - -0.011824308894574642, - -0.06840802729129791, - 0.07352784276008606, - -0.07417911291122437, - 0.07702597230672836, - 0.03445609286427498, - -0.028549835085868835, - -0.07389676570892334, - 0.004822645336389542, - -0.04218965023756027, - 0.057287391275167465, - 0.07284535467624664, - 0.03744577243924141, - 0.02262120321393013, - -0.08249017596244812, - 0.06453859806060791, - 0.08595191687345505, - -0.007596771232783794, - -0.09834901243448257, - 0.0011981930583715439, - -0.0032746782526373863, - 0.060035690665245056, - 0.05292436107993126, - -0.025849156081676483, - 0.040095530450344086, - 0.029390152543783188, - -0.03652733191847801, - 0.04038412123918533, - 0.07081020623445511, - 0.0669822245836258, - -0.10407344251871109 - ] - }, - "p245_070.wav": { - "name": "p245", - "embedding": [ - 0.02991032972931862, - 0.09713266789913177, - -0.027360284700989723, - 0.02170083485543728, - -0.047729186713695526, - 0.055943526327610016, - -0.13302892446517944, - 0.09923289716243744, - -0.0437522754073143, - 0.14577391743659973, - -0.07060668617486954, - 0.08505018055438995, - -0.029882129281759262, - -0.18598291277885437, - -0.029957802966237068, - 0.06529025733470917, - -0.059457626193761826, - -0.03936466574668884, - -0.04785887897014618, - -0.023037217557430267, - 0.0352051705121994, - 0.05845373868942261, - 0.02115449495613575, - -0.022364582866430283, - 0.023670166730880737, - 0.06351901590824127, - 0.00473762396723032, - 0.039859239012002945, - 0.0013181092217564583, - -0.05319696292281151, - -0.029683595523238182, - 0.11725907027721405, - -0.03794175386428833, - 0.018588010221719742, - 0.025406356900930405, - 0.014373437501490116, - 0.018563341349363327, - -0.06947159767150879, - -0.010458077304065228, - 0.014902902767062187, - -0.0382770337164402, - 0.06767833232879639, - 0.028078097850084305, - 0.00964970514178276, - 0.03624027594923973, - 0.008601536974310875, - -0.03129652887582779, - -0.06333072483539581, - -0.09231466054916382, - 0.1972379833459854, - 0.08844916522502899, - -0.006180133670568466, - -0.048308469355106354, - -0.09691385924816132, - 0.09024622291326523, - 0.016768306493759155, - -0.12709854543209076, - -0.06816892325878143, - 0.0870758593082428, - 0.16377541422843933, - -0.015808267518877983, - -0.0325927734375, - 0.013753147795796394, - 0.13827481865882874, - 0.01878228224813938, - 0.09819979965686798, - 0.0577523335814476, - 0.09746627509593964, - 0.004603349603712559, - 0.0063022105023264885, - 0.07522371411323547, - 0.05628213658928871, - 0.03123718872666359, - -0.016654256731271744, - 0.035716086626052856, - -0.014248053543269634, - -0.025026725605130196, - 0.012815079651772976, - -0.009755978360772133, - -0.02446960285305977, - -0.0052015832625329494, - 0.002701279241591692, - -0.01197902113199234, - 0.015339416451752186, - -0.013912796974182129, - 0.02174682915210724, - 0.029543699696660042, - -0.009072719141840935, - 0.08121216297149658, - 0.03776708245277405, - 0.015159412287175655, - 0.04681462049484253, - -0.05047263950109482, - -0.08258160948753357, - 0.029082901775836945, - 0.030308786779642105, - 0.012764479964971542, - 0.06561272591352463, - 0.02340395748615265, - -0.03610274940729141, - 0.10929451882839203, - 0.02647586166858673, - -0.016308387741446495, - 0.012034917250275612, - -0.10742451250553131, - 0.1267780065536499, - 0.07977531850337982, - -0.011146089062094688, - 0.03917150944471359, - -0.0402151495218277, - 0.06598741561174393, - 0.07048916816711426, - -0.142117440700531, - -0.07743804156780243, - 0.025727108120918274, - 0.010038471780717373, - -0.028583722189068794, - 0.10993412137031555, - 0.0159462783485651, - 0.010519732721149921, - 0.1172567829489708, - -0.10484252125024796, - -0.07501819729804993, - -0.025926880538463593, - 0.047169029712677, - -0.09261322766542435, - 0.018937285989522934, - 0.07269708812236786, - -0.029842954128980637, - 0.007695285603404045, - 0.07650066912174225, - -0.0011957152746617794, - 0.034363117069005966, - 0.006253550760447979, - -0.04821476340293884, - 0.03430265188217163, - -0.0352766327559948, - -0.0020013500470668077, - 0.045845627784729004, - 0.038289979100227356, - 0.049407415091991425, - -0.01659550704061985, - -0.05738826096057892, - -0.1140483021736145, - 0.01262338925153017, - 0.033136963844299316, - 0.06008845195174217, - -0.01889149844646454, - -0.00403453316539526, - -0.03142246976494789, - -0.08135172724723816, - 0.021794293075799942, - -0.02001180127263069, - 0.08747489005327225, - -0.0022539724595844746, - -0.027037477120757103, - 0.11984295397996902, - 0.01634308136999607, - -0.013876904733479023, - -0.05187677592039108, - -0.04038695991039276, - 0.03837493807077408, - 0.04228370636701584, - -0.09457358717918396, - -0.061183761805295944, - 0.017095627263188362, - 0.027456611394882202, - -0.00366988405585289, - 0.034399040043354034, - 0.04362881928682327, - 0.011307156644761562, - 0.023048173636198044, - -0.07092536985874176, - 0.006714926101267338, - -0.08838729560375214, - -0.0592900887131691, - -0.006112528499215841, - -0.028270918875932693, - -0.022105993703007698, - 0.09926992654800415, - -0.009517538361251354, - 0.0219819787889719, - -0.021933868527412415, - -0.07600809633731842, - -0.06995662301778793, - 0.07575470209121704, - 0.08184435963630676, - 8.164811879396439e-05, - 0.0515405610203743, - 0.04392187297344208, - -0.0358964279294014, - 0.027801673859357834, - 0.05057409405708313, - 0.11894149333238602, - -0.03312252461910248, - 0.010453984141349792, - -0.07434603571891785, - 0.0778932273387909, - 0.06405719369649887, - -0.10046273469924927, - -0.05399708077311516, - -0.03222255781292915, - -0.05673178285360336, - 0.03812501206994057, - -0.032521992921829224, - 0.007975148037075996, - 0.023129835724830627, - -0.01954576186835766, - -0.10331720858812332, - -0.09622026234865189, - 0.08285944163799286, - -0.04898538440465927, - -0.014663532376289368, - -0.06842975318431854, - 0.05165817216038704, - 0.08830922842025757, - 0.07179246097803116, - -0.028822287917137146, - -0.004184132441878319, - 0.048411935567855835, - -0.06446801126003265, - 0.0017306981608271599, - 0.04234875738620758, - 0.037913233041763306, - -0.09251242130994797, - 0.004728993866592646, - -0.08809943497180939, - 0.0548415444791317, - -0.06621024012565613, - 0.14646996557712555, - 0.01086841244250536, - -0.06429386138916016, - -0.09507139772176743, - 0.04500804841518402, - -0.03568064421415329, - 0.038801148533821106, - 0.02710224688053131, - 0.04702979698777199, - 0.05346471816301346, - -0.058262720704078674, - 0.11559824645519257, - 0.04072568565607071, - -0.005541316233575344, - -0.052699729800224304, - -0.026144415140151978, - -0.042245879769325256, - 0.047387562692165375, - -0.0011509372852742672, - -0.09449885785579681, - -0.007616832386702299, - 0.03220047429203987, - -0.014819370582699776, - 0.07149173319339752, - 0.13382050395011902, - 0.06893161684274673, - -0.1137724369764328 - ] - }, - "p245_260.wav": { - "name": "p245", - "embedding": [ - 0.052443671971559525, - 0.058890312910079956, - -0.030283790081739426, - 0.054286450147628784, - -0.05942036956548691, - 0.03844401612877846, - -0.13732722401618958, - 0.08087147772312164, - -0.026981018483638763, - 0.1198892891407013, - -0.060615673661231995, - 0.07791361212730408, - -0.019531795755028725, - -0.18594130873680115, - -0.01834254525601864, - 0.06921707838773727, - -0.06945834308862686, - -0.057750023901462555, - -0.07611195743083954, - -0.032044682651758194, - 0.020030103623867035, - 0.05806142836809158, - 0.03044389933347702, - -0.013777684420347214, - 0.033260051161050797, - 0.053187862038612366, - -0.005918641574680805, - 0.027794208377599716, - 0.009298181161284447, - -0.034195128828287125, - -0.010616540908813477, - 0.10243809968233109, - -0.01972627080976963, - -0.011815393343567848, - 0.005173263140022755, - 0.03616705164313316, - 0.002077273791655898, - -0.08505409955978394, - -0.03782462701201439, - 0.01574067585170269, - -0.06782083213329315, - 0.06345131993293762, - 0.03816036134958267, - -0.0339784175157547, - 0.039595648646354675, - -0.025284461677074432, - -0.050554897636175156, - -0.05418383330106735, - -0.12210095673799515, - 0.18167096376419067, - 0.07810959219932556, - 0.021752292290329933, - -0.068272665143013, - -0.07620363682508469, - 0.09472226351499557, - 0.0032911384478211403, - -0.12374389171600342, - -0.050256822258234024, - 0.07356399297714233, - 0.17306257784366608, - -0.023705286905169487, - -0.0021210014820098877, - 0.027197862043976784, - 0.13342586159706116, - 0.06263761967420578, - 0.07645954191684723, - 0.06787553429603577, - 0.11010432988405228, - 0.002539274049922824, - 0.016204629093408585, - 0.09764999151229858, - 0.059212684631347656, - 0.03640780970454216, - -0.0123871685937047, - 0.01393324974924326, - -0.0020597586408257484, - -0.03439733386039734, - -0.006506206467747688, - -0.017389077693223953, - -0.02587355673313141, - 0.0013553816825151443, - -0.019604841247200966, - 0.009471730329096317, - 0.018233075737953186, - -0.03592627868056297, - 0.02556605450809002, - 0.054522350430488586, - -0.03486078977584839, - 0.06509394943714142, - 0.050987839698791504, - 0.003218352561816573, - 0.0436897911131382, - -0.03764643147587776, - -0.0888967365026474, - 0.009503361769020557, - 0.023859849199652672, - 0.024276316165924072, - 0.048773396760225296, - 0.03251905366778374, - -0.030649341642856598, - 0.1110071912407875, - 0.02671528235077858, - -0.011274587363004684, - 0.01955975592136383, - -0.09594254940748215, - 0.11146451532840729, - 0.09117516875267029, - -0.011454186402261257, - 0.040852826088666916, - -0.021633144468069077, - 0.05776110664010048, - 0.0782390683889389, - -0.12134939432144165, - -0.04581364244222641, - 0.025709660723805428, - -0.006021748296916485, - -0.006508306600153446, - 0.11656110733747482, - 0.02181277610361576, - 0.022313140332698822, - 0.11436766386032104, - -0.09455771744251251, - -0.05395294725894928, - -0.013253034092485905, - 0.0563943050801754, - -0.08456818014383316, - 0.03143411874771118, - 0.06915058195590973, - -0.024777468293905258, - 0.005611828062683344, - 0.06044044345617294, - -0.0011769109405577183, - 0.01612609066069126, - -0.017426365986466408, - -0.03795291483402252, - 0.06245235726237297, - -0.027717262506484985, - -0.0146824661642313, - 0.08564204722642899, - 0.030956588685512543, - 0.04711495339870453, - -0.011472516693174839, - -0.03338033705949783, - -0.10827721655368805, - 0.02675252966582775, - 0.04157167673110962, - 0.08721060305833817, - -0.019418086856603622, - 0.009227249771356583, - -0.058872297406196594, - -0.08381900936365128, - 0.056617505848407745, - -0.030123643577098846, - 0.08945368230342865, - -0.005842579994350672, - -0.030310453847050667, - 0.11009860038757324, - -0.009250789880752563, - -0.0023176763206720352, - -0.029247581958770752, - -0.023278385400772095, - 0.04241662472486496, - 0.0491216778755188, - -0.08824587613344193, - -0.05917992815375328, - 0.012933153659105301, - 0.022040069103240967, - -0.028918232768774033, - 0.01963481307029724, - 0.017823772504925728, - -0.003989948891103268, - 0.006159224547445774, - -0.07605648040771484, - 0.025758519768714905, - -0.09067247807979584, - -0.04475948214530945, - 0.021828006953001022, - -0.04493986442685127, - -0.00769712682813406, - 0.09507131576538086, - 0.012354816310107708, - 0.007893905974924564, - -0.03547287732362747, - -0.11190629750490189, - -0.06183738261461258, - 0.06806796044111252, - 0.06126062572002411, - -0.005525221116840839, - 0.044351838529109955, - 0.05669216066598892, - -0.01432847324758768, - 0.01546574104577303, - 0.04030876234173775, - 0.11800795793533325, - -0.03175816312432289, - -0.00919390469789505, - -0.06634333729743958, - 0.08731898665428162, - 0.07194938510656357, - -0.08271962404251099, - -0.053904324769973755, - -0.040673449635505676, - -0.062066707760095596, - 0.0386207140982151, - -0.021277619525790215, - 0.005010928027331829, - 0.04068051651120186, - -0.03413543850183487, - -0.12400849163532257, - -0.1026727557182312, - 0.08904910832643509, - -0.050866737961769104, - -0.02218184620141983, - -0.07930473238229752, - 0.03549589961767197, - 0.07337690144777298, - 0.04734059423208237, - -0.01640145853161812, - 0.008923745714128017, - 0.02853236347436905, - -0.07541575282812119, - -0.01096288301050663, - 0.04997691139578819, - 0.00787083525210619, - -0.10931070894002914, - -0.02784734219312668, - -0.0821065753698349, - 0.07258278131484985, - -0.04227996617555618, - 0.1414038985967636, - 0.01636827364563942, - -0.0457879975438118, - -0.08554629236459732, - 0.04441457241773605, - -0.024595730006694794, - 0.07259853184223175, - 0.06704141199588776, - 0.056777939200401306, - 0.05424455553293228, - -0.060157254338264465, - 0.09853781759738922, - 0.048772942274808884, - -0.010409444570541382, - -0.04846806824207306, - -0.01409197598695755, - -0.03018895536661148, - 0.028375796973705292, - -0.022878238931298256, - -0.06497061252593994, - 0.014018911868333817, - 0.024653032422065735, - -0.03470531478524208, - 0.05763044208288193, - 0.11638481914997101, - 0.08661766350269318, - -0.08111521601676941 - ] - }, - "p245_192.wav": { - "name": "p245", - "embedding": [ - 0.03262646123766899, - 0.12379908561706543, - 0.016163086518645287, - -0.00663268007338047, - -0.05911390855908394, - 0.09224914014339447, - -0.10246001183986664, - 0.13159795105457306, - -0.08496902137994766, - 0.14029830694198608, - -0.06387554854154587, - 0.12614262104034424, - -0.02968781255185604, - -0.18280376493930817, - -0.08825138211250305, - 0.038232047110795975, - -0.08782477676868439, - -0.012869427911937237, - -0.05663047358393669, - -0.03225100040435791, - 0.045121416449546814, - 0.021371454000473022, - 0.038543567061424255, - 0.014830940403044224, - 0.03173444792628288, - 0.06083229184150696, - 0.03976612165570259, - 0.06885115057229996, - 0.058115214109420776, - -0.09211589395999908, - -0.0532311350107193, - 0.0960359275341034, - -0.039316657930612564, - 0.01907646283507347, - 0.05744375288486481, - -0.027037344872951508, - 0.05597357451915741, - -0.026630999520421028, - -0.014653770253062248, - 0.0547000952064991, - -0.005754037760198116, - 0.08610182255506516, - 0.022965729236602783, - 0.026887163519859314, - 0.02968793734908104, - 0.03296804800629616, - -0.006874381564557552, - -0.04925329610705376, - -0.08828482031822205, - 0.17789803445339203, - 0.07549478858709335, - -0.04517019912600517, - -0.04509381577372551, - -0.08592663705348969, - 0.11843317002058029, - -0.047517500817775726, - -0.13891443610191345, - -0.0443793386220932, - 0.07666254788637161, - 0.14082317054271698, - -0.02262004092335701, - -0.025023939087986946, - 0.01558383833616972, - 0.12578435242176056, - 0.0017377515323460102, - 0.09159385412931442, - 0.06470347940921783, - 0.0568973682820797, - -0.006759846117347479, - 0.04127608239650726, - 0.04138202592730522, - 0.05442634969949722, - -0.003463547211140394, - -0.028999852016568184, - 0.04508412629365921, - -0.04047863930463791, - 0.007330487947911024, - 0.025570763275027275, - -0.001731345895677805, - 0.011806417256593704, - -0.025929901748895645, - 0.03188137710094452, - -0.032630082219839096, - -0.020052870735526085, - -0.028647303581237793, - 0.08918803185224533, - -0.06625811010599136, - 0.020840546116232872, - 0.08517219871282578, - 0.056607574224472046, - 0.03346594423055649, - 0.05179920047521591, - -0.026437651365995407, - -0.08375440537929535, - 0.01749361678957939, - 0.010003789328038692, - 0.0013587971916422248, - 0.06163894012570381, - 0.030074529349803925, - -0.009656962938606739, - 0.11676964163780212, - 0.0974079817533493, - -0.015413512475788593, - 0.018763558939099312, - -0.1064629852771759, - 0.13343174755573273, - 0.06986691802740097, - -0.0060981521382927895, - 0.048893094062805176, - -0.012913327664136887, - 0.0947539359331131, - 0.06055876240134239, - -0.13951069116592407, - -0.09990041702985764, - 0.02111734077334404, - 0.018239859491586685, - -0.006232604384422302, - 0.06367859989404678, - -0.038519486784935, - 0.0013844977365806699, - 0.09338568150997162, - -0.037311892956495285, - -0.03465544059872627, - -0.04517214000225067, - 0.047214996069669724, - -0.08431456983089447, - 0.04411686584353447, - 0.0476948618888855, - -0.03336651623249054, - 0.010245944373309612, - 0.10439297556877136, - -0.027889762073755264, - -0.006752275861799717, - 0.05106702446937561, - -0.05176100134849548, - 0.020060457289218903, - -0.043331947177648544, - 0.0307435542345047, - 0.05499693751335144, - 0.06152747943997383, - 0.0451640710234642, - -0.0065767355263233185, - -0.047320377081632614, - -0.07724594324827194, - 0.01527004037052393, - 0.007835125550627708, - 0.029460886493325233, - 0.002716443035751581, - -0.01829267293214798, - -0.04220691695809364, - -0.0415181890130043, - 0.009277798235416412, - 0.011681064032018185, - 0.10670042783021927, - -0.0373481810092926, - 0.011390705592930317, - 0.09584599733352661, - 0.02628462389111519, - -0.012467705644667149, - -0.06510966271162033, - -0.01812545396387577, - 0.018218478187918663, - 0.021362971514463425, - -0.06408677995204926, - -0.04967020824551582, - 0.015409364365041256, - 0.03610571473836899, - 0.007837394252419472, - 0.05593043565750122, - 0.055983323603868484, - -0.007863645441830158, - 0.06584001332521439, - -0.06082644313573837, - 0.04337921366095543, - -0.07438793033361435, - -0.04220271110534668, - -0.04701162502169609, - -0.04382346570491791, - -0.053444165736436844, - 0.07747042179107666, - 0.013824761845171452, - 0.030396370217204094, - 0.023242823779582977, - -0.08791415393352509, - -0.04846861958503723, - 0.06330010294914246, - 0.08721206337213516, - 0.022446848452091217, - 0.05515456572175026, - 0.0662652924656868, - -0.02282850444316864, - 0.10573237389326096, - 0.07012295722961426, - 0.08537440747022629, - -0.02867060713469982, - 0.02211076021194458, - -0.0632515475153923, - 0.032728876918554306, - 0.03469701483845711, - -0.11599639058113098, - -0.09122373908758163, - -0.03641390800476074, - -0.05869691073894501, - 0.053902365267276764, - -0.008009104989469051, - 0.014753764495253563, - 0.0302495788782835, - 0.012730518355965614, - -0.06036784127354622, - -0.08083370327949524, - 0.10071447491645813, - -0.06936222314834595, - -0.02176787331700325, - -0.04625125601887703, - 0.04283015802502632, - 0.10944625735282898, - 0.051922429352998734, - -0.017396582290530205, - -0.002459428273141384, - 0.03914971277117729, - -0.039964254945516586, - -0.022487320005893707, - 0.02524956688284874, - 0.0014459765516221523, - -0.08683238923549652, - 0.037161603569984436, - -0.11110566556453705, - 0.06750425696372986, - -0.06399993598461151, - 0.15809762477874756, - -0.018155252560973167, - -0.05730913206934929, - -0.07170087844133377, - 0.06281932443380356, - -0.08599540591239929, - 0.04444502294063568, - 0.045324452221393585, - 0.05362018570303917, - 0.03590121120214462, - -0.04842270910739899, - 0.11408175528049469, - 0.02636745199561119, - -0.05775199085474014, - -0.0828903317451477, - -0.021566241979599, - -0.040971413254737854, - 0.025289272889494896, - 0.049910563975572586, - -0.1077699288725853, - -0.01977474056184292, - 0.02118963748216629, - -0.036079291254282, - 0.1123875305056572, - 0.12693852186203003, - 0.05807378143072128, - -0.10722947120666504 - ] - }, - "p245_283.wav": { - "name": "p245", - "embedding": [ - 0.039232030510902405, - 0.04001661390066147, - -0.0031923092901706696, - 0.01469759177416563, - -0.030734937638044357, - 0.03192451596260071, - -0.11696989834308624, - 0.0813559889793396, - -0.0394848957657814, - 0.10779696702957153, - -0.08436741679906845, - 0.033969469368457794, - -0.038807567209005356, - -0.14530779421329498, - -0.014879296533763409, - 0.03799489140510559, - -0.06091165542602539, - -0.032437942922115326, - -0.0676305890083313, - -0.026015490293502808, - 0.030592216178774834, - 0.03598465025424957, - 0.016055293381214142, - -0.020193390548229218, - 0.007442080415785313, - 0.05791006609797478, - 0.021558858454227448, - 0.03837969899177551, - 0.007267209701240063, - -0.02674448862671852, - 0.0013659819960594177, - 0.08930043876171112, - -0.020491085946559906, - -0.048027679324150085, - 0.023123454302549362, - 0.01599838212132454, - 0.001458665356040001, - -0.05919037386775017, - -0.02921389788389206, - 0.02535497024655342, - -0.06072108447551727, - 0.050209060311317444, - 0.02088596671819687, - 0.009203490801155567, - 0.021353889256715775, - 0.020389307290315628, - -0.029122738167643547, - -0.060888539999723434, - -0.09751646220684052, - 0.17787866294384003, - 0.07247117161750793, - -0.002008268842473626, - -0.0502011701464653, - -0.06404097378253937, - 0.10148391127586365, - 0.0032503509428352118, - -0.07468050718307495, - -0.047246359288692474, - 0.07784225046634674, - 0.1442847102880478, - -0.033880677074193954, - -0.01677069440484047, - 0.025779258459806442, - 0.08851069211959839, - 0.012007324025034904, - 0.05170857533812523, - 0.08094961941242218, - 0.0826890617609024, - 0.019261198118329048, - 0.01898733153939247, - 0.08610763400793076, - 0.04475600644946098, - 0.04295939952135086, - -0.02593531832098961, - 0.05717357248067856, - 0.03452795743942261, - -0.04352286085486412, - 0.016954660415649414, - -0.01345846988260746, - -0.01772265136241913, - 0.04204338788986206, - -0.016601774841547012, - 0.013175204396247864, - 0.014141897670924664, - -0.03879683464765549, - 0.037507250905036926, - 0.00757070817053318, - 0.003475553123280406, - 0.07302048802375793, - 0.009177839383482933, - 0.019743120297789574, - 0.05916476249694824, - -0.04525167867541313, - -0.08441450446844101, - 0.019859010353684425, - 0.012698805890977383, - 0.014833247289061546, - 0.037402380257844925, - 0.05333958566188812, - -0.045696139335632324, - 0.11021425575017929, - 0.02164195105433464, - 0.011721721850335598, - 0.024101829156279564, - -0.11210121214389801, - 0.10297517478466034, - 0.09022724628448486, - -0.012470535933971405, - 0.023200623691082, - -0.02056589350104332, - 0.06078717112541199, - 0.05715538188815117, - -0.14052119851112366, - -0.056609563529491425, - 0.03597521781921387, - 0.002670317655429244, - 0.017241600900888443, - 0.11350379884243011, - -0.00435231626033783, - -0.026707038283348083, - 0.11042928695678711, - -0.10169180482625961, - -0.05147615075111389, - -0.008788736537098885, - 0.04958194121718407, - -0.08600907772779465, - 0.0028126961551606655, - 0.06777589023113251, - -0.03514304757118225, - -0.025616973638534546, - 0.09346672147512436, - -0.0063130296766757965, - -0.0005574353854171932, - -0.050451964139938354, - 0.009761122986674309, - 0.07647810131311417, - -0.035720814019441605, - -0.021647488698363304, - 0.03993307054042816, - 0.05119851976633072, - 0.013027305714786053, - 0.007492732256650925, - -0.06469928473234177, - -0.11385206878185272, - 0.020658567547798157, - 0.03075352869927883, - 0.04238678514957428, - -0.020495446398854256, - 0.001584527431987226, - -0.04922589659690857, - -0.056288160383701324, - 0.0074312081560492516, - -0.00858324859291315, - 0.07519644498825073, - 0.019060436636209488, - -0.03340581804513931, - 0.12344402074813843, - -0.020817503333091736, - 0.013176415115594864, - -0.02140885405242443, - -0.019554313272237778, - 0.04474584758281708, - 0.033792316913604736, - -0.054356422275304794, - -0.06857017427682877, - 0.0013102320954203606, - 0.01623266562819481, - 0.028343770653009415, - -0.018343066796660423, - 0.01499768253415823, - -0.011074679903686047, - 0.001171500189229846, - -0.08690568059682846, - 0.05001261830329895, - -0.09137199819087982, - -0.043171025812625885, - 0.0218740776181221, - -0.023452039808034897, - 0.006724332459270954, - 0.08522772789001465, - -0.03320242092013359, - -0.0005520532722584903, - -0.04186738654971123, - -0.09571130573749542, - -0.02740243636071682, - 0.0722603052854538, - 0.08467152714729309, - -0.0056976331397891045, - 0.039137668907642365, - 0.044860970228910446, - -0.012593826279044151, - 0.02291056327521801, - 0.04710756987333298, - 0.1249910220503807, - -0.015299561433494091, - -0.013998322188854218, - -0.03501644730567932, - 0.09460246562957764, - 0.03299938142299652, - -0.06793376803398132, - -0.04781394451856613, - -0.017772313207387924, - -0.0501258485019207, - 0.05202708765864372, - -0.00376477325335145, - 0.017450060695409775, - 0.02385827898979187, - -0.025509625673294067, - -0.08307081460952759, - -0.06406915932893753, - 0.059717610478401184, - -0.020572561770677567, - -0.04520442336797714, - -0.06958864629268646, - 0.05237307399511337, - 0.09158962965011597, - 0.057359956204891205, - -0.009468848817050457, - -0.016166023910045624, - 0.014479326084256172, - -0.058091334998607635, - -0.04781114310026169, - 0.006234246306121349, - 0.0026140189729630947, - -0.0882546454668045, - -0.0040228660218417645, - -0.10071736574172974, - 0.05490674078464508, - -0.04665672034025192, - 0.0811089426279068, - -0.018870998173952103, - -0.03884682059288025, - -0.0983276516199112, - 0.030058693140745163, - 0.01853208616375923, - 0.06611476838588715, - 0.06005669757723808, - 0.026961153373122215, - 0.06335900723934174, - -0.05181583762168884, - 0.09810954332351685, - 0.009274730458855629, - -0.000679048418533057, - -0.048414409160614014, - -0.011094672605395317, - -0.023080993443727493, - 0.00956993643194437, - -0.03550200164318085, - -0.08103357255458832, - 0.013593828305602074, - 0.026865746825933456, - -0.02848776802420616, - 0.041616037487983704, - 0.057346295565366745, - 0.034800585359334946, - -0.09665316343307495 - ] - }, - "p245_236.wav": { - "name": "p245", - "embedding": [ - 0.04820508509874344, - 0.10878953337669373, - -0.00947614386677742, - -0.0003535933792591095, - -0.04852373152971268, - 0.08393901586532593, - -0.11278443783521652, - 0.14334747195243835, - -0.08266112208366394, - 0.14938929677009583, - -0.09045444428920746, - 0.12153787910938263, - -0.03380352258682251, - -0.1644965559244156, - -0.06996169686317444, - 0.04691207408905029, - -0.06985533237457275, - -0.03311828896403313, - -0.05637100338935852, - -0.022647444158792496, - 0.03965609520673752, - 0.012664943002164364, - 0.009896627627313137, - 0.01723404787480831, - 0.03526989370584488, - 0.06919237226247787, - 0.0037125730887055397, - 0.040071550756692886, - 0.008713934570550919, - -0.051345594227313995, - -0.030846770852804184, - 0.10160335898399353, - -0.0481330007314682, - 0.016990812495350838, - 0.06602165102958679, - 0.0025146990083158016, - 0.014945178292691708, - -0.06995779275894165, - -0.02499580569565296, - 0.004144517704844475, - -0.03736572712659836, - 0.07600238174200058, - 0.00015054602408781648, - -0.00893908366560936, - 0.01967032440006733, - 0.03309566155076027, - -0.0016683717258274555, - -0.0550842210650444, - -0.08720910549163818, - 0.14490476250648499, - 0.06668956577777863, - 0.013609993271529675, - -0.08508859574794769, - -0.07864023745059967, - 0.1228390485048294, - -0.028607016429305077, - -0.10472586005926132, - -0.029922716319561005, - 0.055135756731033325, - 0.1741729974746704, - -0.05482381582260132, - -0.03255802392959595, - 0.017149999737739563, - 0.10389762371778488, - 0.0510408915579319, - 0.09742671251296997, - 0.08957777917385101, - 0.07893287390470505, - -0.007838211953639984, - 0.03179732710123062, - 0.07636762410402298, - 0.07055525481700897, - 0.08114434778690338, - -0.02431241236627102, - 0.029850732535123825, - -0.0014123732689768076, - -0.027026109397411346, - 0.015605702064931393, - -0.034852564334869385, - -0.014863528311252594, - -0.03151274472475052, - 0.023755531758069992, - 0.009298218414187431, - 0.009798758663237095, - -0.01909622736275196, - 0.06469061225652695, - 0.00819188542664051, - -0.03863329440355301, - 0.06194514408707619, - 0.05268247425556183, - 0.0052335914224386215, - 0.059845663607120514, - -0.08664561063051224, - -0.10503512620925903, - 0.02540104277431965, - -0.01200943998992443, - 0.016580455005168915, - 0.07227786630392075, - 0.05260920897126198, - -0.0127695482224226, - 0.09336817264556885, - 0.06439413875341415, - 0.0066719455644488335, - 0.015260877087712288, - -0.11065904796123505, - 0.10796335339546204, - 0.10224591940641403, - -0.041906751692295074, - 0.018132474273443222, - -0.017762072384357452, - 0.08129678666591644, - 0.08055371046066284, - -0.14529111981391907, - -0.10058961808681488, - 0.01881277561187744, - 0.007373459171503782, - 0.008507193997502327, - 0.07839669287204742, - -0.034401699900627136, - 0.020863482728600502, - 0.08997596055269241, - -0.05576471611857414, - -0.036810919642448425, - -0.03261200711131096, - 0.0408412329852581, - -0.054378122091293335, - 0.05939074605703354, - 0.0389554537832737, - 0.018266424536705017, - -0.00621865876019001, - 0.08780462294816971, - -0.012491317465901375, - -0.0341871939599514, - 0.02302609011530876, - -0.037475988268852234, - 0.023640180006623268, - -0.020730774849653244, - -0.008431666530668736, - 0.048404715955257416, - 0.06805644184350967, - 0.03736625984311104, - 0.014366347342729568, - -0.025486215949058533, - -0.08414452522993088, - 0.013811491429805756, - 0.05308109149336815, - 0.059004999697208405, - -0.014732841402292252, - -0.011847937479615211, - -0.033606112003326416, - -0.05253882706165314, - 0.012648035772144794, - 0.0009992653504014015, - 0.0962996631860733, - -0.010550910606980324, - 0.024433404207229614, - 0.10697051882743835, - 0.011619520373642445, - -0.015601426362991333, - -0.04500630497932434, - -0.00020239880541339517, - 0.020814690738916397, - 0.06258518248796463, - -0.06208540499210358, - -0.08312119543552399, - 0.0038182176649570465, - 0.018675215542316437, - -0.022086210548877716, - 0.061458975076675415, - 0.03930175304412842, - 0.005808436311781406, - 0.03233630582690239, - -0.06515025347471237, - 0.023756559938192368, - -0.12939141690731049, - -0.04911305010318756, - -0.024706944823265076, - -0.05979182571172714, - -0.018310382962226868, - 0.05946996062994003, - 0.023050716146826744, - 0.040581114590168, - 0.001777112134732306, - -0.10548600554466248, - -0.06767678260803223, - 0.06569081544876099, - 0.08394081890583038, - 0.014556505717337132, - 0.0347890630364418, - 0.07125942409038544, - 0.008142087608575821, - 0.06304094195365906, - 0.0910014659166336, - 0.11787177622318268, - -0.018391568213701248, - 0.014040175825357437, - -0.061126336455345154, - 0.07746598869562149, - 0.05195401608943939, - -0.10281551629304886, - -0.09707718342542648, - -0.036570996046066284, - -0.04190056398510933, - 0.03774503618478775, - -0.011199538595974445, - 0.03354952484369278, - 0.02544495463371277, - -0.011408906430006027, - -0.08432602882385254, - -0.08067432790994644, - 0.10441898554563522, - -0.05864937603473663, - -0.008841561153531075, - -0.06917839497327805, - 0.03518252819776535, - 0.09449824690818787, - 0.022959351539611816, - -0.005297847557812929, - 0.025215094909071922, - 0.04239176958799362, - -0.038950107991695404, - -0.025728100910782814, - 0.021930865943431854, - -0.006618882063776255, - -0.09107661247253418, - 0.019343502819538116, - -0.07480685412883759, - 0.09088470041751862, - -0.04888838902115822, - 0.15754434466362, - -0.02769552543759346, - -0.04993031173944473, - -0.0872674435377121, - 0.034873005002737045, - -0.03391573205590248, - 0.0581282377243042, - 0.04402262717485428, - 0.0796821117401123, - 0.010697830468416214, - -0.06277894228696823, - 0.11729097366333008, - 0.032235559076070786, - -0.04771881550550461, - -0.0723021849989891, - -0.06284220516681671, - -0.03661695495247841, - 0.0004031551070511341, - -9.724032133817673e-05, - -0.062462352216243744, - 0.0009330874308943748, - -0.0061837732791900635, - -0.026214733719825745, - 0.06998561322689056, - 0.13696980476379395, - 0.08397702127695084, - -0.11739620566368103 - ] - }, - "p245_252.wav": { - "name": "p245", - "embedding": [ - 0.07716768980026245, - 0.04761534184217453, - 0.022936426103115082, - -0.01818549446761608, - -0.02361423335969448, - 0.09606628119945526, - -0.11084376275539398, - 0.09879275411367416, - -0.01856781542301178, - 0.08185043931007385, - -0.0704033151268959, - 0.07855867594480515, - -0.0007906816899776459, - -0.14765167236328125, - -0.028049219399690628, - 0.049288731068372726, - -0.04007682576775551, - -0.007258512079715729, - -0.05120792239904404, - -0.017174510285258293, - 0.0006373462965711951, - 0.0317862294614315, - 0.04892366752028465, - -0.012307718396186829, - 0.04618589207530022, - 0.047960370779037476, - -0.0022773458622395992, - 0.033281974494457245, - -0.004639841616153717, - -0.06337213516235352, - -0.008107287809252739, - 0.07646127790212631, - -0.05012640357017517, - -0.005116280168294907, - 0.04253533482551575, - 0.004233282059431076, - 0.03603450953960419, - -0.09249454736709595, - -0.028095990419387817, - 0.029318884015083313, - -0.03973676264286041, - 0.08701322972774506, - 0.04862217232584953, - 0.010080568492412567, - 0.009718114510178566, - 0.010890218429267406, - -0.007595764007419348, - -0.05470741540193558, - -0.10715685784816742, - 0.15896251797676086, - 0.023291587829589844, - 0.02394668012857437, - -0.09805776923894882, - -0.042856305837631226, - 0.0678141862154007, - -0.02080141380429268, - -0.06842844188213348, - -0.020687028765678406, - 0.0457315556704998, - 0.12150713056325912, - 0.00650379341095686, - -0.038537707179784775, - 0.020190967246890068, - 0.06558647751808167, - 0.01745457760989666, - 0.03496813401579857, - 0.10727386176586151, - 0.09574540704488754, - -0.0043279025703668594, - 0.027904434129595757, - 0.047822266817092896, - 0.03478327766060829, - 0.05985298007726669, - -0.004163273144513369, - 0.034400686621665955, - -0.025424672290682793, - -0.019376840442419052, - -0.004690757021307945, - -0.020117968320846558, - -0.015141252428293228, - 0.035345081239938736, - 0.013400128111243248, - 0.032083556056022644, - 0.05194786190986633, - -0.04222938418388367, - 0.036896854639053345, - -0.010872950777411461, - 0.04008467122912407, - 0.07687951624393463, - 0.03662335127592087, - 0.022966397926211357, - 0.03104298934340477, - -0.062205057591199875, - -0.0847967267036438, - 0.026772333309054375, - 0.021584510803222656, - 0.024301722645759583, - 0.024316977709531784, - 0.022458655759692192, - -0.030945148319005966, - 0.10055385529994965, - 0.016075003892183304, - -0.0005864178529009223, - -0.0004686601459980011, - -0.07390236109495163, - 0.08552559465169907, - 0.08547310531139374, - -0.005103106610476971, - 0.04666489362716675, - -0.04283273220062256, - 0.04751395434141159, - 0.06039704382419586, - -0.10840564221143723, - -0.0551137775182724, - 0.02095617912709713, - 0.011739959940314293, - 0.041054725646972656, - 0.11576496064662933, - -0.006472109816968441, - 0.031181734055280685, - 0.057312365621328354, - -0.08539610356092453, - -0.013761365786194801, - 0.03754434734582901, - 0.010123850777745247, - -0.03408979997038841, - 0.008371716365218163, - 0.02369045466184616, - 0.012939779087901115, - -0.035803236067295074, - 0.06357365101575851, - 0.005891553126275539, - 0.006101024337112904, - -0.03183082863688469, - 0.01424261461943388, - 0.037585943937301636, - -0.006662173196673393, - -0.029049456119537354, - 0.04843834042549133, - 0.0595395490527153, - 0.012075426988303661, - 0.030909210443496704, - -0.061696119606494904, - -0.11236244440078735, - -0.017913268879055977, - 0.010937197133898735, - 0.0498560331761837, - -0.031363457441329956, - -0.024469276890158653, - -0.06001213192939758, - -0.009219100698828697, - 0.02502514235675335, - 0.003918850794434547, - 0.054274022579193115, - 0.06396757811307907, - -0.028168698772788048, - 0.07540445029735565, - -0.0026130876503884792, - 0.011308208107948303, - -0.03668171912431717, - -0.02977321669459343, - 0.016988396644592285, - 0.04607531055808067, - -0.03489614650607109, - -0.050719693303108215, - 0.011316904798150063, - -0.01980675384402275, - -0.012938972562551498, - 0.021747849881649017, - 0.04534756764769554, - -0.0015244546812027693, - -0.00390112167224288, - -0.06848718225955963, - 0.018934527412056923, - -0.07049661874771118, - -0.053243763744831085, - 0.05872231349349022, - 0.0002640386519487947, - -0.02055390551686287, - 0.08759373426437378, - 0.03117450885474682, - 0.03949025273323059, - -0.057931311428546906, - -0.0559668242931366, - -0.016329504549503326, - 0.058916669338941574, - 0.04654241353273392, - -0.0031460896134376526, - 0.02492399513721466, - 0.017247971147298813, - 0.002409940119832754, - 0.06758801639080048, - 0.04950052499771118, - 0.06565926223993301, - -0.0504579171538353, - -0.006733857095241547, - -0.004204904194921255, - 0.10001038759946823, - 0.032257337123155594, - -0.0443548820912838, - -0.060041576623916626, - 0.010238075628876686, - -0.045519229024648666, - 0.032666780054569244, - -0.004553451202809811, - 0.009114152751863003, - 0.04385507106781006, - -0.023009493947029114, - -0.08292701840400696, - -0.061900608241558075, - 0.046312179416418076, - -0.0468490794301033, - -0.011925039812922478, - -0.0627334862947464, - 0.046067014336586, - 0.08596786111593246, - 0.01104133389890194, - -0.0009143439820036292, - -0.0007118040230125189, - -3.193567317794077e-05, - -0.04350648075342178, - -0.03599806874990463, - 0.016398241743445396, - 0.024121612310409546, - -0.07949941605329514, - -0.0010461978381499648, - -0.06150464341044426, - 0.04389932006597519, - -0.009544586762785912, - 0.10946111381053925, - 0.018009494990110397, - -0.03305317461490631, - -0.05472590774297714, - 0.010353559628129005, - -0.029074829071760178, - 0.04577895253896713, - 0.030117368325591087, - 0.020630067214369774, - 0.058496929705142975, - -0.04316342994570732, - 0.07929673790931702, - 0.03900561481714249, - -0.053236447274684906, - -0.05053195357322693, - -0.023328524082899094, - -0.017847547307610512, - 0.018769679591059685, - -0.029451027512550354, - -0.049021925777196884, - 0.024573471397161484, - 0.03654532879590988, - 0.018014010041952133, - 0.029905572533607483, - 0.08131217211484909, - 0.03999240696430206, - -0.07961864769458771 - ] - }, - "p245_060.wav": { - "name": "p245", - "embedding": [ - 0.010319357737898827, - 0.0850897878408432, - -0.03894076868891716, - 0.026983702555298805, - -0.08828854560852051, - 0.02914612926542759, - -0.12848438322544098, - 0.1303921341896057, - -0.033224545419216156, - 0.11203675717115402, - -0.055660296231508255, - 0.11407133936882019, - -0.04252006858587265, - -0.1845645159482956, - 0.008322346024215221, - 0.06202714145183563, - -0.00772900553420186, - -0.06893395632505417, - -0.010762635618448257, - -0.058170855045318604, - 0.019024470821022987, - 0.05188191682100296, - 0.009776233695447445, - 0.02144307643175125, - 0.0466361939907074, - 0.08826763182878494, - -0.01392319891601801, - 0.008796894922852516, - -0.013954735361039639, - -0.02961748279631138, - -0.04825478047132492, - 0.06644025444984436, - -0.07807009667158127, - -0.013634485192596912, - 0.025580374523997307, - -0.012992185540497303, - 0.002267067087814212, - -0.05052456259727478, - -0.02736019529402256, - 0.023870903998613358, - -0.07653500139713287, - 0.09130758047103882, - 0.04592723026871681, - -0.015383795835077763, - 0.02227753773331642, - 0.026673022657632828, - 0.0010515314061194658, - -0.039813652634620667, - -0.12150304019451141, - 0.15330061316490173, - 0.06767918169498444, - -0.019426468759775162, - -0.0538233257830143, - -0.058774277567863464, - 0.11442490667104721, - 0.005418546963483095, - -0.08697262406349182, - -0.05489328131079674, - 0.0808868482708931, - 0.1208563894033432, - -0.023710474371910095, - -0.039113108068704605, - 0.029464852064847946, - 0.11568918824195862, - 0.06337639689445496, - 0.06569229811429977, - 0.05648089200258255, - 0.11258888244628906, - -0.0427105575799942, - -0.020454401150345802, - 0.07935763895511627, - 0.065859355032444, - 0.005731577984988689, - -0.0349247120320797, - -0.009022481739521027, - 0.01164968777447939, - -0.013493604026734829, - 0.0012932498939335346, - 0.0013600762467831373, - -0.025590956211090088, - -0.02267385646700859, - -0.0027841173578053713, - -0.014395585283637047, - 0.009059876203536987, - -0.018825633451342583, - 0.055172353982925415, - 0.07010673731565475, - 0.005263277795165777, - 0.0985979288816452, - 0.01685400679707527, - -0.02920975536108017, - 0.07298513501882553, - -0.09121734648942947, - -0.025173617526888847, - 0.026747766882181168, - 0.002089724177494645, - 0.0161639004945755, - 0.10048042982816696, - 0.04460211098194122, - -0.006978645455092192, - 0.15180979669094086, - 0.04709753021597862, - 0.00613615196198225, - 0.018375253304839134, - -0.07542149722576141, - 0.13488836586475372, - 0.06756802648305893, - -0.03203896805644035, - 0.06115478277206421, - -0.028003297746181488, - 0.05214086174964905, - 0.043575968593358994, - -0.13225015997886658, - -0.059863172471523285, - 0.019882699474692345, - 0.031307581812143326, - -0.045711699873209, - 0.13543730974197388, - -0.008268368430435658, - 0.038935061544179916, - 0.11968955397605896, - -0.09310030192136765, - -0.07240497320890427, - -0.011716950684785843, - 0.05096723139286041, - -0.07887426018714905, - 0.05373120307922363, - 0.08968839049339294, - -0.023526102304458618, - 0.05787473917007446, - 0.06969986110925674, - -0.006690591108053923, - 0.02990853786468506, - 0.025639597326517105, - -0.03730863705277443, - 0.01607578434050083, - -0.002495318418368697, - 0.0059391530230641365, - 0.06705472618341446, - 0.018811028450727463, - 0.07272481173276901, - -0.016190147027373314, - -0.002926398301497102, - -0.1372460424900055, - 0.03927961736917496, - 0.027552923187613487, - 0.09074218571186066, - -0.012215186841785908, - -0.03261037543416023, - -0.04710067808628082, - -0.08708988130092621, - -0.012460575439035892, - 0.024923868477344513, - 0.1019999086856842, - -0.05604429915547371, - 0.009859636425971985, - 0.09739726781845093, - 0.07259497046470642, - -0.022275546565651894, - -0.05157797783613205, - -0.05215566232800484, - -0.021176153793931007, - 0.056844379752874374, - -0.0702158585190773, - -0.08331730961799622, - -0.026942776516079903, - 0.06617077440023422, - -0.013111292384564877, - 0.08779062330722809, - 0.04665382578969002, - 0.02885263040661812, - 0.018075959756970406, - -0.08566723763942719, - 0.03140733763575554, - -0.050884511321783066, - -0.04698203131556511, - -0.03114417754113674, - 0.005914061330258846, - -0.04932389408349991, - 0.08828851580619812, - 0.02260974980890751, - 0.0691206157207489, - -0.007027794606983662, - -0.05315271392464638, - -0.07366085797548294, - 0.03419667109847069, - 0.04459504038095474, - -0.03229214996099472, - 0.046945732086896896, - 0.0862363874912262, - -0.06363877654075623, - 0.03426161780953407, - 0.060030825436115265, - 0.08963975310325623, - -0.044932879507541656, - 0.04023361951112747, - -0.03113686293363571, - 0.07413095980882645, - 0.049196142703294754, - -0.1073906198143959, - -0.04382339119911194, - -0.05128374695777893, - -0.06565576791763306, - 0.044274844229221344, - -0.011771533638238907, - 0.02642114832997322, - -0.012519543059170246, - 0.006477381102740765, - -0.08157273381948471, - -0.08441781997680664, - 0.04868568107485771, - -0.047600157558918, - 0.0062561542727053165, - -0.0975136086344719, - 0.03167145699262619, - 0.10504133254289627, - 0.06389369815587997, - -0.010879270732402802, - -0.03164425864815712, - 0.04633409529924393, - 0.00375395268201828, - 0.030372655019164085, - 0.1151462122797966, - 0.06429405510425568, - -0.08760999888181686, - -0.030764011666178703, - -0.08119678497314453, - 0.08690568804740906, - -0.021799977868795395, - 0.14866431057453156, - 0.0437784343957901, - -0.03950846940279007, - -0.09059536457061768, - 0.03331327065825462, - -0.014637211337685585, - 0.05456538498401642, - 0.02798890508711338, - 0.05034765228629112, - 0.05131957307457924, - -0.005473603960126638, - 0.1309117078781128, - 0.058576859533786774, - -0.04967375099658966, - -0.04827294871211052, - -0.028375117108225822, - -0.0350322425365448, - 0.049600750207901, - 0.05065053328871727, - -0.10405796021223068, - -0.023053869605064392, - 0.028034038841724396, - -0.009889252483844757, - 0.08101300895214081, - 0.1456712782382965, - 0.10626771301031113, - -0.11374877393245697 - ] - }, - "p245_345.wav": { - "name": "p245", - "embedding": [ - 0.045877546072006226, - 0.11875580251216888, - -0.017863981425762177, - 0.025564592331647873, - -0.0524015799164772, - 0.05442719906568527, - -0.13574808835983276, - 0.16307680308818817, - -0.039542656391859055, - 0.11975181102752686, - -0.07524090260267258, - 0.12576846778392792, - -0.03437037765979767, - -0.16086065769195557, - -0.03810508921742439, - 0.0649118721485138, - -0.03300544247031212, - -0.04286783188581467, - -0.022135574370622635, - -0.011394473724067211, - 0.023545145988464355, - 0.010001571848988533, - 0.013483229093253613, - 0.042971931397914886, - 0.024895548820495605, - 0.0677359402179718, - -0.0016721499850973487, - 0.05110224336385727, - 0.01848067156970501, - -0.016396086663007736, - -0.028569933027029037, - 0.10196627676486969, - -0.05123291537165642, - 0.022947272285819054, - 0.07415245473384857, - -0.009256826713681221, - 0.0021574050188064575, - -0.05563361570239067, - -0.015556368045508862, - -0.015096426010131836, - -0.042186420410871506, - 0.09021161496639252, - 0.036202408373355865, - -0.005907810293138027, - 0.027726221829652786, - 0.056590788066387177, - -0.0009712614119052887, - -0.03755756467580795, - -0.10771737992763519, - 0.13905805349349976, - 0.059124529361724854, - -0.004364447668194771, - -0.08264568448066711, - -0.051852934062480927, - 0.1013861745595932, - -0.03576742112636566, - -0.09168543666601181, - -0.03592255711555481, - 0.07751351594924927, - 0.14390945434570312, - -0.03813654184341431, - -0.039009541273117065, - 0.012218079529702663, - 0.13961222767829895, - 0.08239584416151047, - 0.08826127648353577, - 0.06760676205158234, - 0.1323280781507492, - -0.04040486738085747, - 0.007209773641079664, - 0.07157877087593079, - 0.06490863859653473, - 0.05382317304611206, - -0.010858990252017975, - 0.018394378945231438, - 0.0025679762475192547, - -0.003073283936828375, - 0.009680027142167091, - -0.037728674709796906, - -0.027807047590613365, - -0.031216097995638847, - 0.024840623140335083, - -0.008932779543101788, - 0.03718067705631256, - -0.011907346546649933, - 0.07937295734882355, - 0.0574285164475441, - -0.02353842183947563, - 0.07348953187465668, - 0.058348722755908966, - 0.005962574388831854, - 0.0689300000667572, - -0.10440932214260101, - -0.06982174515724182, - 0.03642618656158447, - -0.015895333141088486, - 0.038859959691762924, - 0.0743815153837204, - 0.0405430793762207, - 0.004581686109304428, - 0.1142737865447998, - 0.06260409206151962, - -0.007013286463916302, - 0.028690434992313385, - -0.09515450894832611, - 0.14377647638320923, - 0.06991235911846161, - -0.039168957620859146, - 0.033977773040533066, - -0.03357969969511032, - 0.05543025955557823, - 0.06131080910563469, - -0.12389364838600159, - -0.08814802020788193, - 0.03295309096574783, - 0.02797437272965908, - -0.028329655528068542, - 0.10221065580844879, - -0.013809229247272015, - 0.0428425595164299, - 0.08823131024837494, - -0.06793893873691559, - -0.05846641585230827, - -0.011932412162423134, - 0.037948958575725555, - -0.0711013600230217, - 0.06252309679985046, - 0.056145377457141876, - 0.008678766898810863, - 0.004064670763909817, - 0.0944502055644989, - 0.014080911874771118, - -0.009564951993525028, - 0.02134818211197853, - -0.03823674097657204, - 0.029147882014513016, - -0.004485559184104204, - 0.004731260240077972, - 0.01844809763133526, - 0.04029298946261406, - 0.0517243817448616, - 0.0017030885210260749, - 0.00338127464056015, - -0.11428224295377731, - 0.007480166386812925, - 0.05130084604024887, - 0.08715660870075226, - -0.010842518880963326, - -0.03009987436234951, - -0.032463982701301575, - -0.042041465640068054, - -0.013163061812520027, - -0.00044929361320100725, - 0.06675392389297485, - -0.029656700789928436, - 0.005936486646533012, - 0.11347314715385437, - 0.014091256074607372, - 0.00526619516313076, - -0.05493510887026787, - -0.009215408936142921, - 0.012615012004971504, - 0.06002745032310486, - -0.06845264136791229, - -0.08309277147054672, - 0.0008251086692325771, - 0.036288537085056305, - -0.023976562544703484, - 0.07259766757488251, - 0.03733580559492111, - 0.016606401652097702, - 0.022160761058330536, - -0.055476006120443344, - 0.022810615599155426, - -0.09436427056789398, - -0.06395740807056427, - -0.023368408903479576, - -0.0029617114923894405, - -0.02930443361401558, - 0.0593186616897583, - 0.03916984423995018, - 0.07658252120018005, - 0.0026528197340667248, - -0.0781402736902237, - -0.08464892953634262, - 0.058636393398046494, - 0.07157339155673981, - -0.011574629694223404, - 0.04964999482035637, - 0.06817468255758286, - -0.02451152727007866, - 0.04405029118061066, - 0.0652138888835907, - 0.09252564609050751, - -0.04052755609154701, - 0.014083432033658028, - -0.06899388134479523, - 0.06478458642959595, - 0.07376208156347275, - -0.11341925710439682, - -0.0793699398636818, - -0.01703120581805706, - -0.03897799551486969, - 0.010684812441468239, - -0.026505019515752792, - 0.023590460419654846, - 0.03499063476920128, - -0.009903956204652786, - -0.10002534091472626, - -0.09431063383817673, - 0.07781700789928436, - -0.0976959764957428, - 0.018235698342323303, - -0.07326072454452515, - 0.04077434539794922, - 0.09585803002119064, - 0.025075923651456833, - -0.04243334382772446, - -0.019204750657081604, - 0.04406733810901642, - -0.01527250837534666, - -0.010890774428844452, - 0.05198314040899277, - 0.03822604566812515, - -0.10163716971874237, - 0.010504502803087234, - -0.0579083077609539, - 0.07480528950691223, - -0.037262991070747375, - 0.16336590051651, - 0.010644020512700081, - -0.05460762977600098, - -0.08188417553901672, - 0.005301930010318756, - -0.01990138739347458, - 0.05716840922832489, - 0.021901428699493408, - 0.062422942370176315, - 0.019573554396629333, - -0.04018236696720123, - 0.14014992117881775, - 0.04381345957517624, - -0.06128812953829765, - -0.07661556452512741, - -0.04957921802997589, - -0.045815713703632355, - 0.03981441259384155, - 0.03583936765789986, - -0.09163767099380493, - -0.027579031884670258, - 0.01335985865443945, - -0.035417258739471436, - 0.07811953872442245, - 0.1480201929807663, - 0.07594288885593414, - -0.11549913138151169 - ] - }, - "p245_122.wav": { - "name": "p245", - "embedding": [ - 0.03743371739983559, - 0.10720232874155045, - -0.018781617283821106, - 0.04856396093964577, - -0.07787799090147018, - 0.09338998794555664, - -0.08635412901639938, - 0.132926344871521, - -0.09560003876686096, - 0.11818298697471619, - -0.08316017687320709, - 0.11397704482078552, - -0.06699466705322266, - -0.13302141427993774, - -0.03900410234928131, - 0.07091595232486725, - -0.03225522115826607, - -0.011559952981770039, - -0.03053993359208107, - 0.0019339919090270996, - 0.024532150477170944, - 0.004498928319662809, - 0.03958319500088692, - 0.006275035906583071, - 0.04688907414674759, - 0.058034494519233704, - 0.001993780955672264, - 0.046386830508708954, - 0.02587943710386753, - -0.05183255672454834, - -0.04817590117454529, - 0.11246327310800552, - -0.0480869896709919, - 0.004008980467915535, - 0.060408905148506165, - 0.009594632312655449, - -0.008777286857366562, - -0.06991462409496307, - -0.005293631460517645, - -0.02828967571258545, - -0.04537370055913925, - 0.06305830925703049, - 0.027596797794103622, - -0.012072106823325157, - 0.02364671789109707, - -0.00946541503071785, - -0.028811603784561157, - -0.027421480044722557, - -0.11157301068305969, - 0.13974159955978394, - 0.02989085391163826, - 0.009215213358402252, - -0.08537621796131134, - -0.08293554186820984, - 0.12916776537895203, - -0.0034411009401082993, - -0.11670493334531784, - -0.04251917451620102, - 0.07298141717910767, - 0.17307496070861816, - -0.007816367782652378, - -0.0010156766511499882, - -0.0017665550112724304, - 0.10236340761184692, - 0.042613349854946136, - 0.1062050610780716, - 0.04865824058651924, - 0.0957416445016861, - 0.03394673764705658, - 0.052192337810993195, - 0.06361228972673416, - 0.050172463059425354, - 0.0018313052132725716, - -0.014574884437024593, - 0.012013012543320656, - -0.018153436481952667, - -0.02861083298921585, - 0.04035335034132004, - -0.020496390759944916, - -0.04161035269498825, - -0.03830898553133011, - 0.010159906931221485, - 0.013967495411634445, - -0.00866398774087429, - -0.023196931928396225, - 0.07164852321147919, - 0.0011555850505828857, - -0.003916345536708832, - 0.07917851209640503, - 0.031976956874132156, - -0.039139606058597565, - 0.05405601114034653, - -0.049285341054201126, - -0.09560078382492065, - -0.010390949435532093, - 0.006245959550142288, - 0.028321517631411552, - 0.08238692581653595, - 0.022060247138142586, - -0.012857005931437016, - 0.10433919727802277, - 0.062318310141563416, - 0.043363239616155624, - 0.02795252576470375, - -0.09443861246109009, - 0.11549369990825653, - 0.06495235860347748, - 0.004485428333282471, - 0.051787763833999634, - -0.013774391263723373, - 0.08958699554204941, - 0.0867702066898346, - -0.14117901027202606, - -0.0677584707736969, - 0.010466031730175018, - -0.006722311954945326, - -0.0036849668249487877, - 0.0950571745634079, - -0.008553601801395416, - 0.005356732755899429, - 0.10411150008440018, - -0.09842915832996368, - -0.06597709655761719, - -0.014846889302134514, - 0.04449513554573059, - -0.04619382321834564, - 0.03834206238389015, - 0.05252353847026825, - -0.03631815314292908, - 0.006494474597275257, - 0.06149832159280777, - -0.005749039351940155, - 0.0011753792641684413, - 0.07839253544807434, - -0.07852672040462494, - 0.033325277268886566, - -0.0436285100877285, - 0.006331406533718109, - 0.08405425399541855, - 0.06468705832958221, - 0.062078624963760376, - -0.022429736331105232, - -0.0006883870810270309, - -0.07655367255210876, - -0.0037659863010048866, - 0.06873098760843277, - 0.05087975040078163, - -0.016011929139494896, - -0.027592938393354416, - -0.0344330370426178, - -0.07718139886856079, - 0.03035605698823929, - 0.00870976597070694, - 0.12011028826236725, - -0.025040265172719955, - 0.005098174326121807, - 0.08854014426469803, - 0.02952500618994236, - -0.016712194308638573, - -0.08891536295413971, - -0.03628239780664444, - 0.031522754579782486, - 0.04699038714170456, - -0.07000486552715302, - -0.05858318507671356, - 0.01704219914972782, - 0.02237371914088726, - -0.04608524218201637, - 0.028855513781309128, - 0.03540954738855362, - 0.018313037231564522, - 0.047766849398612976, - -0.045039497315883636, - 0.03940672427415848, - -0.09270790219306946, - -0.03135111927986145, - -0.007384052034467459, - -0.0429653562605381, - -0.03355783969163895, - 0.07964133471250534, - 0.04177909716963768, - 0.028094423934817314, - 0.03671655058860779, - -0.07740931212902069, - -0.04950239881873131, - 0.07339277863502502, - 0.040769919753074646, - 0.01997051015496254, - 0.0645984336733818, - 0.05923932045698166, - -0.03651990741491318, - 0.049070119857788086, - 0.07296834886074066, - 0.08073194324970245, - -0.02513333410024643, - -0.022510387003421783, - -0.07116544246673584, - 0.05991154536604881, - 0.08492305874824524, - -0.12777595221996307, - -0.09180017560720444, - -0.054328687489032745, - -0.04336068034172058, - 0.0594538152217865, - -0.03820797801017761, - -0.002230334095656872, - 0.014107787981629372, - -0.039769500494003296, - -0.10806524753570557, - -0.10429500043392181, - 0.11634322255849838, - -0.0626748725771904, - -0.019094964489340782, - -0.05899760127067566, - 0.029658494517207146, - 0.06473022699356079, - 0.03282465413212776, - -0.016576441004872322, - 0.030899109318852425, - 0.05824644863605499, - -0.07691401988267899, - -0.012888756580650806, - 0.06102752685546875, - -0.012921885587275028, - -0.06557910144329071, - 0.026414114981889725, - -0.07013809680938721, - 0.09113122522830963, - -0.04826099053025246, - 0.2017737329006195, - -0.03359649330377579, - -0.04099184274673462, - -0.07443004846572876, - 0.05125390738248825, - -0.04524015635251999, - 0.030260004103183746, - 0.044194724410772324, - 0.07291244715452194, - 0.011812632903456688, - -0.04344344884157181, - 0.12826985120773315, - 0.003006895072758198, - -0.03864568844437599, - -0.03855869174003601, - -0.032189831137657166, - -0.06864183396100998, - 0.006718698423355818, - -0.007533951196819544, - -0.09214520454406738, - 0.0040212357416749, - 0.011203983798623085, - -0.00021398533135652542, - 0.0785241574048996, - 0.1321500688791275, - 0.07848693430423737, - -0.07616489380598068 - ] - }, - "p245_170.wav": { - "name": "p245", - "embedding": [ - 0.05748377740383148, - 0.0796695351600647, - -0.008959709666669369, - 0.017229732125997543, - -0.03572970628738403, - 0.042074054479599, - -0.14395171403884888, - 0.12015019357204437, - -0.023967813700437546, - 0.12188416719436646, - -0.0479796901345253, - 0.10505375266075134, - -0.008924026042222977, - -0.1674666851758957, - -0.06612429022789001, - 0.045074429363012314, - -0.0664149671792984, - -0.020073339343070984, - -0.0651918277144432, - -0.009307630360126495, - 0.0353832021355629, - 0.053181421011686325, - 0.05575935170054436, - -0.02728326991200447, - 0.03762940689921379, - 0.046655409038066864, - 0.024258267134428024, - 0.0758737251162529, - 0.04325859248638153, - -0.0859338566660881, - -0.010597070679068565, - 0.08684079349040985, - -0.03945229575037956, - 0.002797730965539813, - 0.04961937293410301, - -0.0023637539707124233, - 0.019432269036769867, - -0.04971079155802727, - -0.032629162073135376, - 0.038272857666015625, - -0.03687658533453941, - 0.08606031537055969, - 0.014470947906374931, - 0.00042985318577848375, - 0.05761588364839554, - 0.022943397983908653, - -0.02185143157839775, - -0.06937938928604126, - -0.10850593447685242, - 0.16270595788955688, - 0.048342641443014145, - 0.020467355847358704, - -0.08551698923110962, - -0.07008664309978485, - 0.08488969504833221, - -0.060921430587768555, - -0.10177715867757797, - -0.04281995818018913, - 0.04743306338787079, - 0.15300270915031433, - -0.034507136791944504, - -0.021585840731859207, - 0.04405404254794121, - 0.09956991672515869, - 0.06956490129232407, - 0.0496709868311882, - 0.09219267219305038, - 0.07645878195762634, - 0.007524482905864716, - 0.029480105265975, - 0.03507820516824722, - 0.07300250977277756, - 0.03396718576550484, - 0.016427617520093918, - 0.025354888290166855, - 0.007970473729074001, - -0.025605706498026848, - -0.01369947474449873, - -0.021254710853099823, - 0.017700668424367905, - 0.0009108397061936557, - 0.0339067243039608, - 0.0005838572978973389, - 0.02060249075293541, - -0.036197926849126816, - 0.07709024846553802, - -0.027796588838100433, - -0.008777523413300514, - 0.05383291095495224, - 0.02646770142018795, - 0.01451475452631712, - 0.04008987918496132, - -0.053662534803152084, - -0.10190849006175995, - -0.016087394207715988, - 0.003562054131180048, - 0.009038129821419716, - 0.015864994376897812, - 0.01680494286119938, - -0.03324166685342789, - 0.11492624878883362, - 0.05243725702166557, - -0.02014010027050972, - 0.03435374051332474, - -0.0850381851196289, - 0.0909820944070816, - 0.07062637805938721, - -0.006881219334900379, - 0.03946191817522049, - -0.04892871901392937, - 0.04284268617630005, - 0.06308159232139587, - -0.11988546699285507, - -0.08542710542678833, - 0.0697358250617981, - 0.014273954555392265, - 0.017158182337880135, - 0.10223032534122467, - 0.004407420754432678, - 0.02800765447318554, - 0.09694602340459824, - -0.06870314478874207, - -0.030770590528845787, - -0.004913199692964554, - 0.058905959129333496, - -0.05724268779158592, - 0.04725160822272301, - 0.03419005870819092, - -0.006721088197082281, - -0.015799738466739655, - 0.09465306997299194, - -0.004607826471328735, - 0.010878166183829308, - -0.00011261676991125569, - -0.03291517123579979, - 0.030339231714606285, - -0.04807319492101669, - -0.022467290982604027, - 0.08329416811466217, - 0.07380926609039307, - 0.04109102487564087, - 0.01992044597864151, - -0.07709814608097076, - -0.1221996396780014, - -0.004207264166325331, - 0.019444618374109268, - 0.07642588019371033, - -0.012831549160182476, - -0.014584934338927269, - -0.06304802000522614, - -0.03221304342150688, - 0.024402514100074768, - 0.00975395180284977, - 0.08332888782024384, - -0.014043513685464859, - -0.008711714297533035, - 0.0906527191400528, - -0.03770761936903, - 0.010202913545072079, - -0.009045541286468506, - -0.007258260622620583, - 0.007969088852405548, - 0.03107650950551033, - -0.03641550987958908, - -0.06938638538122177, - 0.012345305643975735, - 0.02711482346057892, - -0.006814546883106232, - 0.04785529524087906, - 0.04359513148665428, - 0.006706336513161659, - 0.03680199012160301, - -0.041372548788785934, - 0.0026394943706691265, - -0.09423838555812836, - -0.053378552198410034, - 0.0013387305662035942, - -0.014718569815158844, - -0.05621272325515747, - 0.07806216925382614, - 0.02076493762433529, - 0.04274290055036545, - -0.01845531538128853, - -0.09669941663742065, - -0.06985851377248764, - 0.0628296285867691, - 0.06807747483253479, - 0.02067222259938717, - 0.0357564240694046, - 0.04432541877031326, - -0.009395377710461617, - 0.07972109317779541, - 0.0748312771320343, - 0.06763284653425217, - -0.004407945554703474, - -0.022697430104017258, - -0.05931934714317322, - 0.086830735206604, - 0.04781627655029297, - -0.07891084253787994, - -0.06726589053869247, - -0.004925444256514311, - -0.08367767184972763, - 0.023849986493587494, - -0.010991059243679047, - 0.03048563562333584, - 0.06296008825302124, - -0.004094384144991636, - -0.10446479171514511, - -0.08738195896148682, - 0.07364118099212646, - -0.09402193874120712, - -0.027812443673610687, - -0.023291196674108505, - 0.015333132818341255, - 0.0980805978178978, - 0.021116070449352264, - 0.01902790740132332, - -0.016613459214568138, - 0.04200465604662895, - -0.07272464036941528, - -0.029187094420194626, - 0.04031291604042053, - 0.0022139656357467175, - -0.07990922778844833, - 0.03259692341089249, - -0.07306845486164093, - 0.04753194749355316, - -0.044937558472156525, - 0.12213563919067383, - -0.013774930499494076, - -0.0411345511674881, - -0.08523625135421753, - 0.02425447478890419, - -0.0713401734828949, - 0.07204298675060272, - 0.022641194984316826, - 0.05019098520278931, - 0.05937380716204643, - -0.06890332698822021, - 0.12420996278524399, - 0.052706968039274216, - -0.05510779470205307, - -0.09198163449764252, - -0.07292493432760239, - -0.03229665011167526, - 0.022051174193620682, - 0.013844112865626812, - -0.05184826999902725, - 0.00027040144777856767, - 0.009622372686862946, - -0.031015580520033836, - 0.04380853474140167, - 0.11941279470920563, - 0.033248137682676315, - -0.11495515704154968 - ] - }, - "p245_069.wav": { - "name": "p245", - "embedding": [ - 0.042389072477817535, - 0.060909055173397064, - -0.03267619386315346, - 0.002641531638801098, - -0.01857568323612213, - 0.01183414924889803, - -0.1024591401219368, - 0.11261001229286194, - -0.03575439378619194, - 0.09899791330099106, - -0.06624089181423187, - 0.12662726640701294, - -0.042341820895671844, - -0.16291534900665283, - -0.00860240776091814, - 0.029767565429210663, - 0.04389046132564545, - 0.03515121340751648, - 0.021808674558997154, - 0.0020727962255477905, - 0.08016923069953918, - 0.020399831235408783, - 0.02387755550444126, - -0.061178356409072876, - -0.0027651293203234673, - 0.05555344745516777, - 0.015508322976529598, - 0.04360657185316086, - -0.0023571676574647427, - -0.003749505616724491, - 0.021052023395895958, - 0.09535599499940872, - -0.008906003087759018, - 0.01894993893802166, - 0.05497564375400543, - 0.014511961489915848, - -0.03168598189949989, - -0.05401148647069931, - -0.0075623453594744205, - -0.010130887851119041, - -0.03362499549984932, - 0.04273761436343193, - -0.00011577457189559937, - -0.0386732742190361, - 0.08641842007637024, - -0.021072236821055412, - -0.025557029992341995, - -0.022640634328126907, - -0.0796433687210083, - 0.09799011796712875, - 0.03548601269721985, - 0.07013832777738571, - -0.10872337222099304, - -0.04984432831406593, - 0.08539055287837982, - 0.0159637201577425, - -0.04192604497075081, - -0.027110770344734192, - 0.03984592482447624, - 0.1743972897529602, - 0.018841281533241272, - -0.016089502722024918, - 0.023046329617500305, - 0.01481558382511139, - 0.007711809128522873, - 0.08097852766513824, - 0.11568149924278259, - 0.03625311329960823, - 0.04287005960941315, - 0.04006768763065338, - -0.013683229684829712, - 0.10724496841430664, - -0.021905681118369102, - -0.052615076303482056, - -0.0004883408546447754, - 0.024844884872436523, - -0.07848293334245682, - 0.010138795711100101, - 0.004058877006173134, - -0.01877998560667038, - -0.012701638042926788, - -0.0051839714869856834, - 0.036180153489112854, - -0.004358217585831881, - -0.04561818391084671, - 0.0024591945111751556, - 0.027727672830224037, - -0.033819593489170074, - 0.03178202360868454, - 0.013203229755163193, - -0.022299204021692276, - 0.014154805801808834, - -0.07717344164848328, - -0.14431096613407135, - -0.02045532502233982, - 0.01677081175148487, - -0.024711361154913902, - 0.07528313994407654, - 0.016613762825727463, - -0.008961262181401253, - 0.0721164345741272, - 0.037327345460653305, - -0.004819595254957676, - 0.02987496741116047, - -0.05986471474170685, - 0.04961073771119118, - 0.08666570484638214, - -0.014121350832283497, - 0.0759602040052414, - -0.06417098641395569, - 0.017668139189481735, - 0.04760894179344177, - -0.09103067219257355, - -0.044606439769268036, - 0.02660381607711315, - 0.005931918043643236, - 0.06229817494750023, - 0.1233488991856575, - 0.03419329226016998, - 0.0265579205006361, - 0.06784731149673462, - -0.1113286018371582, - -0.10652370750904083, - -0.06957471370697021, - 0.06035409867763519, - -0.011010304093360901, - 0.08161742240190506, - 0.04019465669989586, - 0.012358935549855232, - 0.0049023712053895, - 0.018766041845083237, - -0.000120493583381176, - 0.047260113060474396, - 0.008240207098424435, - -0.033083610236644745, - 0.024753378704190254, - -0.08594093471765518, - -0.010837981477379799, - 0.05789615586400032, - 0.035636741667985916, - 0.044445864856243134, - 0.0333406999707222, - -0.027318958193063736, - -0.07351724058389664, - -0.023325413465499878, - 0.09436725080013275, - 0.0356861837208271, - -0.035730328410863876, - -0.043299898505210876, - -0.048382289707660675, - -0.07916504889726639, - -0.0031764497980475426, - -0.023856284096837044, - 0.0894659161567688, - 0.01325690932571888, - 0.0575961172580719, - 0.08197653293609619, - -0.021808994933962822, - 0.002389457542449236, - -0.03929046168923378, - -0.01464114896953106, - -0.011560480110347271, - 0.02792140655219555, - -0.07199744135141373, - -0.07748468220233917, - -0.062362540513277054, - 0.003370748832821846, - -0.04592014104127884, - -0.003650350496172905, - 0.02482995018362999, - 0.015676122158765793, - 0.02550121396780014, - -0.08696705102920532, - 0.0027029630728065968, - -0.13820025324821472, - -0.039592500776052475, - -0.022139739245176315, - 0.021407321095466614, - -0.005270976573228836, - 0.07514826208353043, - 0.02643505483865738, - 0.02515743114054203, - 0.0066955555230379105, - -0.05152153596282005, - -0.07023081183433533, - 0.04150098189711571, - 0.05895484983921051, - 0.006566681433469057, - 0.05536797642707825, - -0.003086986020207405, - -0.04773534834384918, - 0.04597030580043793, - 0.0845419317483902, - 0.059260379523038864, - 0.006793409585952759, - 0.005690903402864933, - -0.06108565628528595, - 0.08743776381015778, - 0.13043445348739624, - -0.058101505041122437, - -0.10552392899990082, - -0.044606540352106094, - -0.08202724158763885, - 0.02622777409851551, - -0.011979629285633564, - 0.008905715309083462, - 0.029565244913101196, - -0.03393614664673805, - -0.11569207906723022, - -0.06938490271568298, - 0.031257372349500656, - 0.01972610130906105, - -0.018224963918328285, - -0.06464698165655136, - 0.02669561468064785, - 0.07991744577884674, - -0.015330341644585133, - -0.009182688780128956, - -0.016383636742830276, - 0.012035254389047623, - -0.0684083104133606, - -0.024530213326215744, - 0.013870317488908768, - 0.012000054121017456, - -0.06282660365104675, - 0.01696491241455078, - -0.019633010029792786, - 0.07732855528593063, - -0.056663841009140015, - 0.09623023122549057, - -0.022688264027237892, - -0.06618054956197739, - -0.07370336353778839, - 0.04491158202290535, - 0.06285522133111954, - 0.00042776018381118774, - -0.0054189544171094894, - 0.0467192716896534, - -0.011271262541413307, - -0.10400275886058807, - 0.06921228766441345, - -0.008432026021182537, - 0.015983790159225464, - -0.06062867119908333, - -0.043254513293504715, - -0.019985631108283997, - 0.031779009848833084, - -0.05549731105566025, - -0.025366276502609253, - 0.002890250412747264, - 0.006617321632802486, - 0.021016422659158707, - 0.013747095130383968, - 0.09621340036392212, - 0.0036958791315555573, - -0.10211804509162903 - ] - }, - "p245_347.wav": { - "name": "p245", - "embedding": [ - 0.0412711426615715, - 0.05669066682457924, - 0.0026466804556548595, - -0.013535615056753159, - -0.012290127575397491, - 0.05207832157611847, - -0.11556962877511978, - 0.04488130658864975, - -0.03145916759967804, - 0.13418292999267578, - -0.05039643496274948, - 0.09852319955825806, - -0.008905481547117233, - -0.08545409142971039, - -0.029720518738031387, - 0.015832580626010895, - -0.05277622863650322, - -0.01431513112038374, - -0.008151955902576447, - -0.07682820409536362, - 0.02734529599547386, - 0.018164165318012238, - 0.04664066433906555, - -0.030748898163437843, - -0.01775631681084633, - 0.0599295012652874, - 0.008151862770318985, - 0.018725769594311714, - 0.019111307337880135, - -0.05802386254072189, - 0.016101142391562462, - 0.07306662946939468, - -0.03258818760514259, - -0.008821018040180206, - 0.036667704582214355, - 0.02222164161503315, - -0.001985148061066866, - -0.01419311948120594, - 0.009656942449510098, - 0.045648518949747086, - -0.06915364414453506, - 0.09444315731525421, - 0.017069676890969276, - -0.007167252246290445, - 0.03239572048187256, - -0.03653346747159958, - -0.04547145962715149, - 0.06134096533060074, - -0.037075694650411606, - 0.09916102886199951, - 0.0790301263332367, - -0.0058848136104643345, - -0.04327109456062317, - -0.003551008179783821, - 0.07426905632019043, - -0.013668294996023178, - -0.11215940862894058, - -0.007052119821310043, - -0.007789473980665207, - 0.08425324410200119, - -0.02867584489285946, - -0.05079594999551773, - 0.011486916802823544, - 0.08159174770116806, - 0.03348308429121971, - 0.04700622335076332, - 0.0868123322725296, - 0.07694805413484573, - -0.013397812843322754, - -0.009495899081230164, - 0.05626486986875534, - 0.07804311811923981, - 0.05993897467851639, - -0.01853775605559349, - 0.05605451017618179, - -0.022127756848931313, - -0.0038471929728984833, - -0.022197816520929337, - -0.016036830842494965, - -0.03030901774764061, - -0.055075276643037796, - -0.030812369659543037, - 0.004299653694033623, - 0.06146626174449921, - -0.02501361258327961, - -0.01709631085395813, - 0.029184209182858467, - -0.03381877392530441, - 0.023456662893295288, - 0.06639024615287781, - 0.015539669431746006, - 0.023865021765232086, - -0.04032358527183533, - -0.03108346462249756, - -0.009654205292463303, - -0.026263751089572906, - 0.0561036542057991, - 0.05736720934510231, - 0.020820975303649902, - 0.030338812619447708, - 0.05575665086507797, - 0.05765734612941742, - -0.018747318536043167, - -0.009165119379758835, - -0.08851375430822372, - 0.08497588336467743, - 0.09434656798839569, - -0.0587095245718956, - 0.002375600393861532, - 0.02574363723397255, - 0.05182548239827156, - 0.010134536772966385, - -0.08147353678941727, - -0.03569801151752472, - 0.014600043185055256, - 0.07553279399871826, - 0.037950627505779266, - 0.09037680923938751, - 0.0008282165508717299, - 0.021755561232566833, - 0.0763978660106659, - 0.03208310902118683, - -0.033214911818504333, - -0.054609719663858414, - 0.01931104250252247, - -0.08515143394470215, - 0.06209424138069153, - 0.014453418552875519, - 0.05049937963485718, - -0.013458872213959694, - 0.10869995504617691, - 0.0037034200504422188, - -0.027995191514492035, - -0.036268141120672226, - 0.00253349170088768, - 0.04465457797050476, - 0.0075359102338552475, - 0.05478878319263458, - 0.06163358315825462, - 0.011904487386345863, - 0.09669404476881027, - 0.04883698746562004, - 0.008974113501608372, - -0.08142051100730896, - 0.03174172341823578, - 0.0340711884200573, - 0.016802538186311722, - -0.03692558780312538, - -0.04192771017551422, - 0.00202106311917305, - -0.043695177882909775, - 0.02224118635058403, - -0.04560896009206772, - 0.0677952691912651, - 0.0011676126159727573, - -0.032591842114925385, - 0.09846597909927368, - -0.019296349957585335, - -0.01346222497522831, - 0.0036270413547754288, - -0.0007555702468380332, - -0.025264816358685493, - 0.054064296185970306, - -0.14167112112045288, - -0.055227093398571014, - -0.006791448220610619, - 0.037377677857875824, - 0.04774264618754387, - 0.01624024286866188, - 0.10128265619277954, - -0.058761972934007645, - 0.05141361057758331, - -0.0005744025111198425, - -0.006706186104565859, - -0.07836834341287613, - -0.0615382045507431, - -0.0359075590968132, - -0.0996285155415535, - -0.017887085676193237, - 0.03606034442782402, - -0.03364332765340805, - 0.041625794023275375, - -0.007175257429480553, - -0.08883555233478546, - -0.07037220895290375, - 0.03378533199429512, - 0.04039790853857994, - -0.026106970384716988, - 0.022121211513876915, - 0.11218108236789703, - 0.007509727030992508, - 0.02783248946070671, - 0.021564345806837082, - 0.0824040099978447, - -0.08386042714118958, - 0.014419618993997574, - -0.05962219089269638, - 0.031088335439562798, - 0.07668279111385345, - -0.03974822163581848, - -0.065896175801754, - -0.0494840107858181, - -0.025581711903214455, - 0.04325051233172417, - -0.03431348875164986, - -0.020339643582701683, - 0.015450803562998772, - -0.023189883679151535, - -0.04450700059533119, - -0.0699068158864975, - 0.07984033972024918, - -0.061840031296014786, - -0.0043916888535022736, - -0.03970395028591156, - -0.005336089059710503, - -0.02459822967648506, - 0.06447196751832962, - -0.06031797453761101, - 0.09303230792284012, - 0.015215856023132801, - -0.04186929762363434, - 0.002140691503882408, - 0.02776448428630829, - 0.015336650423705578, - -0.03899999335408211, - -0.06077704578638077, - -0.07876808196306229, - 0.05405525118112564, - -0.05180056020617485, - 0.04063853621482849, - -0.006929229944944382, - -0.035339005291461945, - -0.008251747116446495, - -0.022141527384519577, - -0.03096598945558071, - 0.02070022001862526, - 0.10553033649921417, - 0.08118073642253876, - -0.021488819271326065, - -0.02310914359986782, - 0.07726868242025375, - 0.04008672013878822, - 0.01673300936818123, - -0.05181705206632614, - 0.03634129464626312, - -0.029078567400574684, - 0.014757100492715836, - 0.05690399929881096, - -0.07162076234817505, - 0.05197465792298317, - -0.0025249968748539686, - -0.020353052765130997, - 0.014066814444959164, - 0.04892072081565857, - 0.06346987187862396, - -0.06699855625629425 - ] - }, - "p245_157.wav": { - "name": "p245", - "embedding": [ - 0.06274768710136414, - 0.03825800120830536, - -0.0033065180759876966, - -0.006682202219963074, - -0.01771368458867073, - 0.055959559977054596, - -0.13801440596580505, - 0.12309806793928146, - -0.034329187124967575, - 0.08862051367759705, - -0.06109682843089104, - 0.08656501770019531, - 0.007827946916222572, - -0.15208062529563904, - -0.03614667430520058, - 0.03548501431941986, - -0.024202939122915268, - -0.008609562180936337, - -0.054639190435409546, - -0.012602399103343487, - 0.02119191363453865, - 0.04405825585126877, - 0.0028640534728765488, - -0.023142129182815552, - 0.017828378826379776, - 0.05189964175224304, - 0.004527223762124777, - 0.023284612223505974, - -0.0057751489803195, - -0.01309884712100029, - 0.007959551177918911, - 0.08831426501274109, - -0.03701397776603699, - -0.010631110519170761, - 0.05668676644563675, - -0.010418376885354519, - 0.001741559011861682, - -0.07652382552623749, - -0.02150186523795128, - 0.02483842894434929, - -0.058899007737636566, - 0.07595877349376678, - 0.07162299752235413, - 0.015666477382183075, - 0.028073750436306, - 0.025942470878362656, - 0.014092875644564629, - -0.06324666738510132, - -0.10040765255689621, - 0.16741704940795898, - 0.027573097497224808, - 0.01804249919950962, - -0.10138100385665894, - -0.02015196904540062, - 0.07756535708904266, - -0.005804148968309164, - -0.06629043072462082, - -0.050849221646785736, - 0.055925674736499786, - 0.13648945093154907, - -0.006125593092292547, - -0.03875351697206497, - 0.02991393767297268, - 0.0978822112083435, - 0.0293409526348114, - 0.04434789717197418, - 0.11220666766166687, - 0.10735618323087692, - -0.003646738361567259, - 0.02512589655816555, - 0.044776543974876404, - 0.03431624174118042, - 0.030787356197834015, - -0.02672792598605156, - 0.036868393421173096, - -0.015505118295550346, - -0.026290182024240494, - -0.010984379798173904, - -0.03000492975115776, - -0.022326432168483734, - 0.018413206562399864, - 0.026656724512577057, - 0.021801531314849854, - 0.06617453694343567, - -0.05302262306213379, - 0.04811028763651848, - 0.02560536563396454, - -0.004730940796434879, - 0.06375011801719666, - 0.052400581538677216, - 0.02656303346157074, - 0.017524149268865585, - -0.06161477789282799, - -0.08669359982013702, - 0.018443187698721886, - 0.0006426457548514009, - 0.013397922739386559, - 0.03400969132781029, - 0.03068729117512703, - -0.021045871078968048, - 0.10060818493366241, - 0.0020663875620812178, - -0.01124049723148346, - 0.00016079223132692277, - -0.07695870101451874, - 0.10415235161781311, - 0.08591245114803314, - -0.013983006589114666, - 0.03742546588182449, - -0.06544427573680878, - 0.01936090551316738, - 0.04765874147415161, - -0.10838233679533005, - -0.058138199150562286, - 0.06782806664705276, - 0.028023432940244675, - 0.028606921434402466, - 0.14478760957717896, - 0.01191443856805563, - 0.025621986016631126, - 0.06474218517541885, - -0.08207213878631592, - -0.0389985665678978, - 0.0018848404288291931, - 0.03159947693347931, - -0.03883250057697296, - 0.03337228298187256, - 0.038793690502643585, - 0.010944174602627754, - -0.022375576198101044, - 0.07655879855155945, - 0.0033097839914262295, - 0.009736997075378895, - -0.04954742640256882, - 0.032036442309617996, - 0.07004294544458389, - 0.0069518922828137875, - -0.018580995500087738, - 0.01105495821684599, - 0.05577467009425163, - 0.024866636842489243, - 0.025071561336517334, - -0.059047795832157135, - -0.11163818836212158, - -0.019772712141275406, - 0.031170329079031944, - 0.07466323673725128, - -0.03351680934429169, - -0.023961633443832397, - -0.060349948704242706, - -0.021305903792381287, - -0.022203072905540466, - -0.015400081872940063, - 0.06040715426206589, - 0.029994137585163116, - -0.017065487802028656, - 0.08778540790081024, - -0.01113156508654356, - 0.03423745185136795, - -0.01649390161037445, - -0.0018926325719803572, - 0.013770075514912605, - 0.034245144575834274, - -0.026725511997938156, - -0.06654241681098938, - -0.0058194417506456375, - 0.001194218872115016, - -0.010738056153059006, - 0.012048224918544292, - 0.015798911452293396, - 0.0018528278451412916, - 0.004602747969329357, - -0.10483839362859726, - 0.0255399402230978, - -0.1051347479224205, - -0.02282046340405941, - 0.03679654747247696, - -0.013239650055766106, - -0.027232229709625244, - 0.09114474058151245, - 0.020934097468852997, - 0.04278257116675377, - -0.02396356873214245, - -0.07292294502258301, - -0.02666199766099453, - 0.04258349537849426, - 0.07128126919269562, - -0.035406723618507385, - 0.005308506544679403, - 0.014439131133258343, - 0.011806134134531021, - 0.03380893915891647, - 0.06416885554790497, - 0.05430710315704346, - -0.03258613124489784, - -0.030579276382923126, - -0.023772327229380608, - 0.12372585386037827, - 0.02314685843884945, - -0.0544075183570385, - -0.05280038341879845, - 0.016436295583844185, - -0.0444490909576416, - -0.006520816590636969, - -0.008584277704358101, - 0.031740956008434296, - 0.04188862442970276, - -0.008750460110604763, - -0.10833059996366501, - -0.05442196875810623, - 0.03239291161298752, - -0.08703356981277466, - 0.0047711823135614395, - -0.06967581808567047, - 0.03747133910655975, - 0.11157047748565674, - 0.017352882772684097, - -0.006289730779826641, - -0.049069903790950775, - -0.005863155238330364, - -0.0528264194726944, - -0.024261508136987686, - -0.0033458347897976637, - 0.04210058972239494, - -0.08488588035106659, - 0.004092587158083916, - -0.053820788860321045, - 0.059624847024679184, - -0.0436747744679451, - 0.09754639863967896, - 0.03522047400474548, - -0.0663733035326004, - -0.08282151818275452, - -0.0007431879639625549, - -0.005893544759601355, - 0.049697570502758026, - 0.026152510195970535, - 0.03760453313589096, - 0.046701349318027496, - -0.0530659519135952, - 0.08974557369947433, - 0.05037372559309006, - -0.03692547231912613, - -0.0663122832775116, - -0.04270852357149124, - -0.006302577909082174, - 0.03392454981803894, - 0.00201242184266448, - -0.04211777448654175, - 0.008807561360299587, - 0.03336133062839508, - -0.007241835352033377, - 0.0544072687625885, - 0.09891193360090256, - 0.04132698476314545, - -0.11022458970546722 - ] - }, - "p245_086.wav": { - "name": "p245", - "embedding": [ - 0.04058758541941643, - 0.05707496404647827, - -0.03836807608604431, - 0.03512593358755112, - -0.07383444905281067, - 0.04957398772239685, - -0.13017742335796356, - 0.11729548871517181, - -0.039957642555236816, - 0.12198658287525177, - -0.04513384401798248, - 0.1239967793226242, - -0.010964492335915565, - -0.19818654656410217, - -0.013189973309636116, - 0.05734149366617203, - -0.05365602672100067, - -0.0625680461525917, - -0.04966297373175621, - -0.034478046000003815, - 0.036917801946401596, - 0.05233831703662872, - 0.019359372556209564, - 0.0030397744849324226, - 0.020032258704304695, - 0.07939080893993378, - -0.009967454709112644, - 0.024669989943504333, - 0.001333344727754593, - -0.05349157005548477, - -0.048599258065223694, - 0.07821957767009735, - -0.06079249829053879, - -0.01427432894706726, - 0.036619942635297775, - -0.01747128553688526, - 0.0007379520684480667, - -0.05678967759013176, - -0.03972814604640007, - 0.02851865254342556, - -0.06608286499977112, - 0.07830791175365448, - 0.0477905198931694, - -0.015870993956923485, - 0.04767383635044098, - 0.008565939962863922, - -0.020001649856567383, - -0.045987483114004135, - -0.11187990009784698, - 0.15980158746242523, - 0.07865479588508606, - -0.012689968571066856, - -0.05196975916624069, - -0.054953932762145996, - 0.10646001994609833, - -0.011847546324133873, - -0.12508486211299896, - -0.04689028486609459, - 0.07448107749223709, - 0.14265106618404388, - -0.04204976186156273, - -0.03148014098405838, - 0.038656722754240036, - 0.10301309823989868, - 0.07791075110435486, - 0.0800962746143341, - 0.07613751292228699, - 0.11102531850337982, - -0.01735655963420868, - -0.006543383933603764, - 0.07973690330982208, - 0.07934500277042389, - 0.05118989571928978, - -0.012880037538707256, - 0.03483256697654724, - 0.020528405904769897, - -0.015322490595281124, - -0.01661631092429161, - -0.01214521937072277, - 0.004847847856581211, - 0.005531628616154194, - 0.008465563878417015, - 0.023781727999448776, - 0.03004276752471924, - -0.03144514933228493, - 0.07102768123149872, - 0.0543365404009819, - -0.003726797876879573, - 0.056550078094005585, - 0.024787262082099915, - 0.0032945151906460524, - 0.07655567675828934, - -0.08138968050479889, - -0.06683298945426941, - 0.03440267965197563, - 0.019296666607260704, - 0.009587163105607033, - 0.063373863697052, - 0.04588541015982628, - -0.018813274800777435, - 0.12973400950431824, - 0.04215530306100845, - -0.011943644843995571, - 0.03597428277134895, - -0.08418693393468857, - 0.1198873445391655, - 0.08880268037319183, - -0.029398974031209946, - 0.04533214494585991, - -0.049159400165081024, - 0.08031581342220306, - 0.05285089462995529, - -0.13597974181175232, - -0.06376269459724426, - 0.05149390548467636, - 0.006144902668893337, - -0.025638848543167114, - 0.1461046189069748, - -0.008281498216092587, - 0.040571462363004684, - 0.12188776582479477, - -0.08619432896375656, - -0.044897690415382385, - -0.01341365184634924, - 0.052110083401203156, - -0.08784531056880951, - 0.05693289265036583, - 0.049084704369306564, - -0.012311004102230072, - 0.022327056154608727, - 0.08460091054439545, - -0.02457287907600403, - -0.007772268261760473, - 0.0021988588850945234, - -0.027888190001249313, - 0.03187965601682663, - -0.011864447966217995, - -0.013593818061053753, - 0.06836052983999252, - 0.02206624671816826, - 0.03742603212594986, - -0.024825064465403557, - -0.0301041416823864, - -0.1429411917924881, - 0.03209402784705162, - 0.016581948846578598, - 0.09144237637519836, - -0.00959692057222128, - -0.005573159083724022, - -0.058278173208236694, - -0.09083827584981918, - 0.015277802012860775, - -0.01225945632904768, - 0.08049440383911133, - -0.03330737352371216, - -0.006423125043511391, - 0.08229725062847137, - 0.03271114453673363, - 0.006481239106506109, - -0.03171835467219353, - -0.04404463991522789, - 0.008224808610975742, - 0.05602450668811798, - -0.07359646260738373, - -0.07248391956090927, - -0.02017083391547203, - 0.04001403599977493, - -0.011114749126136303, - 0.050568774342536926, - 0.04193432256579399, - 0.02349749766290188, - 0.020095184445381165, - -0.0834217518568039, - 0.024718699976801872, - -0.09383046627044678, - -0.06108575314283371, - -0.01371628325432539, - -0.019321896135807037, - -0.022519215941429138, - 0.07915105670690536, - 0.01181795448064804, - 0.04354029893875122, - -0.03930105268955231, - -0.07850587368011475, - -0.07777340710163116, - 0.05252227932214737, - 0.0632658526301384, - -0.015045162290334702, - 0.03825882077217102, - 0.06574724614620209, - -0.026200678199529648, - 0.0372898206114769, - 0.051983561366796494, - 0.10803788900375366, - -0.01902872882783413, - 0.020945537835359573, - -0.0446934811770916, - 0.11168535053730011, - 0.06274493038654327, - -0.07197760790586472, - -0.05890105292201042, - -0.017712388187646866, - -0.0668000727891922, - 0.045169398188591, - -0.026235414668917656, - 0.007637351751327515, - 0.022234197705984116, - 0.02016567438840866, - -0.10075777024030685, - -0.08245828002691269, - 0.07092501223087311, - -0.06577587872743607, - -0.011416262947022915, - -0.0934334397315979, - 0.037599124014377594, - 0.10930037498474121, - 0.0385400652885437, - -0.02920175902545452, - -0.010879136621952057, - 0.039247818291187286, - -0.01921367272734642, - 0.026680922135710716, - 0.0700419545173645, - 0.04611950367689133, - -0.11677803099155426, - -0.030073177069425583, - -0.07577842473983765, - 0.0585419163107872, - -0.04171869158744812, - 0.14076575636863708, - 0.013987628743052483, - -0.0328177772462368, - -0.07807652652263641, - 0.049609191715717316, - -0.004282123409211636, - 0.06763955950737, - 0.04454671964049339, - 0.07316531240940094, - 0.06067637726664543, - -0.04748491942882538, - 0.11469197273254395, - 0.054574400186538696, - -0.040320541709661484, - -0.05957065522670746, - -0.0322323739528656, - -0.036504730582237244, - 0.03230755031108856, - 0.036879416555166245, - -0.08869340270757675, - -0.0110970139503479, - 0.030039120465517044, - -0.01634569838643074, - 0.052931975573301315, - 0.1340961903333664, - 0.06646884977817535, - -0.11248211562633514 - ] - }, - "p245_134.wav": { - "name": "p245", - "embedding": [ - 0.0622018463909626, - 0.1327560842037201, - -0.026491519063711166, - 0.03965924680233002, - -0.05983572453260422, - 0.07172872126102448, - -0.09572288393974304, - 0.15615679323673248, - -0.047941505908966064, - 0.11980122327804565, - -0.10109180957078934, - 0.14807407557964325, - -0.04070136696100235, - -0.1288943886756897, - -0.06004098430275917, - 0.04093494638800621, - -0.010518948547542095, - -0.011621727608144283, - -0.014310152269899845, - -0.013755956664681435, - 0.02872421219944954, - 0.009694254957139492, - 0.036946024745702744, - 0.029177136719226837, - 0.040951453149318695, - 0.063828244805336, - 0.0034961490891873837, - 0.06040937453508377, - 0.030641386285424232, - -0.03643089532852173, - -0.05544741451740265, - 0.11300627887248993, - -0.055516891181468964, - 0.017353275790810585, - 0.05894283950328827, - -0.00020205974578857422, - 0.0033030719496309757, - -0.04933089762926102, - -0.00725951325148344, - -0.016243144869804382, - -0.020947769284248352, - 0.06707493960857391, - 0.010141802951693535, - -0.03671390563249588, - 0.029064463451504707, - 0.027157649397850037, - 0.003513710107654333, - -0.026831332594156265, - -0.10181010514497757, - 0.1282554566860199, - 0.032813552767038345, - 0.016223134472966194, - -0.10427436232566833, - -0.05072477459907532, - 0.10793045908212662, - -0.0376259908080101, - -0.07871465384960175, - -0.0028020869940519333, - 0.05185255408287048, - 0.15715593099594116, - -0.03203558176755905, - -0.04067929834127426, - 0.01443856954574585, - 0.10073094069957733, - 0.08034796267747879, - 0.07018522918224335, - 0.09205205738544464, - 0.1086721271276474, - -0.025567198172211647, - 0.033587805926799774, - 0.05205640196800232, - 0.07386362552642822, - 0.07442335039377213, - -0.019369393587112427, - 0.008443720638751984, - -0.013719220645725727, - -0.007741993293166161, - 0.01937638595700264, - -0.03527840971946716, - -0.045300163328647614, - -0.024530448019504547, - 0.022466804832220078, - 0.00741222919896245, - 0.016732580959796906, - -0.04707795009016991, - 0.0869964212179184, - 0.03724443539977074, - -0.04334992915391922, - 0.06521935760974884, - 0.0508296936750412, - -0.02222064509987831, - 0.05124201253056526, - -0.10589244961738586, - -0.09038302302360535, - 0.036771975457668304, - -0.02868126891553402, - 0.040719956159591675, - 0.08264879882335663, - 0.05071950703859329, - 0.006061921827495098, - 0.10374876856803894, - 0.07461705058813095, - 0.014417007565498352, - 0.030950188636779785, - -0.0826287567615509, - 0.13508948683738708, - 0.10684458166360855, - -0.03642892464995384, - 0.04120572656393051, - -0.008325044065713882, - 0.061466529965400696, - 0.06510888040065765, - -0.1193639487028122, - -0.08827556669712067, - 0.003733537159860134, - 0.018154004588723183, - 0.017135079950094223, - 0.05855339393019676, - -0.031154703348875046, - 0.03954688087105751, - 0.08034920692443848, - -0.06683668494224548, - -0.04941023141145706, - -0.03574524074792862, - 0.03460447117686272, - -0.06021100655198097, - 0.0708598643541336, - 0.044335439801216125, - 0.019089361652731895, - -0.021764487028121948, - 0.07222854346036911, - 0.00030676904134452343, - -0.02399158477783203, - 0.04847247898578644, - -0.040297456085681915, - 0.0020639775320887566, - 0.002081210957840085, - -0.009715343825519085, - 0.041291698813438416, - 0.051991626620292664, - 0.05807889997959137, - 0.011871043592691422, - 0.019927164539694786, - -0.09270739555358887, - 0.007123466581106186, - 0.07272288203239441, - 0.05771661549806595, - -0.01963166706264019, - -0.04582394286990166, - -0.03658342361450195, - -0.03922621160745621, - 0.029612090438604355, - 0.031892791390419006, - 0.07143702358007431, - -0.02476927638053894, - 0.030063264071941376, - 0.11151249706745148, - 0.018040018156170845, - -0.005392676685005426, - -0.05694349855184555, - 0.005480976775288582, - 0.01041684951633215, - 0.05482897162437439, - -0.06139064580202103, - -0.10707433521747589, - -0.007486686110496521, - 0.013832524418830872, - -0.04370430111885071, - 0.07752937078475952, - 0.05068504810333252, - 0.005762046203017235, - 0.03755341097712517, - -0.03167432174086571, - 0.0015448546037077904, - -0.10362815111875534, - -0.047716014087200165, - -0.028951041400432587, - -0.030049197375774384, - -0.032629672437906265, - 0.05871205776929855, - 0.05865924060344696, - 0.07069949805736542, - 0.01280115358531475, - -0.059996623545885086, - -0.07138459384441376, - 0.05062780901789665, - 0.048659540712833405, - 0.02274874784052372, - 0.04370371997356415, - 0.06451734900474548, - -0.004164085723459721, - 0.08456026017665863, - 0.09698827564716339, - 0.07018941640853882, - -0.023288819938898087, - -0.010122159495949745, - -0.05788757652044296, - 0.057798102498054504, - 0.0836566835641861, - -0.11314018815755844, - -0.12190453708171844, - -0.06107761710882187, - -0.05114412680268288, - 0.03179720789194107, - -0.025040172040462494, - 0.03414640575647354, - 0.0466463640332222, - -0.027013324201107025, - -0.08368606865406036, - -0.11304448544979095, - 0.10386017709970474, - -0.05776321887969971, - 0.0014743907377123833, - -0.06786850839853287, - 0.03872167319059372, - 0.07316740602254868, - -0.011720423586666584, - -0.029916729778051376, - 0.013210982084274292, - 0.03754677623510361, - -0.0407559759914875, - -0.025794383138418198, - 0.04394083842635155, - 0.01615135371685028, - -0.09156452119350433, - 0.025174185633659363, - -0.055095139890909195, - 0.08706554770469666, - -0.03749625012278557, - 0.1771300882101059, - -0.007881375961005688, - -0.040389735251665115, - -0.0687192901968956, - 0.04410019516944885, - -0.040084898471832275, - 0.03894632309675217, - 0.04144362360239029, - 0.06238207966089249, - -0.012978958897292614, - -0.0763697549700737, - 0.11493854224681854, - 0.04401835426688194, - -0.07852423191070557, - -0.09453123807907104, - -0.07565627247095108, - -0.04914827644824982, - 0.026203107088804245, - 0.030564583837985992, - -0.06608007848262787, - -0.018777944147586823, - -0.00116734579205513, - -0.006987260654568672, - 0.06478210538625717, - 0.14419645071029663, - 0.06578686833381653, - -0.08597676455974579 - ] - }, - "p245_133.wav": { - "name": "p245", - "embedding": [ - 0.041297547519207, - 0.11455926299095154, - -0.0017132259672507644, - 0.018165865913033485, - -0.051963645964860916, - 0.09041957557201385, - -0.08692163974046707, - 0.12645292282104492, - -0.09143020957708359, - 0.15465213358402252, - -0.11593572795391083, - 0.11773064732551575, - -0.044806286692619324, - -0.1490412950515747, - -0.06706982851028442, - 0.03986232727766037, - -0.04833361506462097, - 0.002107993932440877, - -0.060350093990564346, - 0.0069448016583919525, - 0.05833254009485245, - 0.000788657576777041, - 0.03213661536574364, - -0.01207007747143507, - 0.021789170801639557, - 0.04163859784603119, - 0.03385450690984726, - 0.06263872981071472, - 0.04133098945021629, - -0.05485771596431732, - -0.03725240379571915, - 0.13898667693138123, - -0.02946937270462513, - 0.03784608840942383, - 0.0781920775771141, - 0.012042203918099403, - -0.0014045416610315442, - -0.06810173392295837, - -0.01753845065832138, - -0.02219734899699688, - -0.02109723538160324, - 0.04637330397963524, - 0.004315180238336325, - -0.009702122770249844, - 0.033445652574300766, - 0.023403994739055634, - -0.03825129196047783, - -0.03742963448166847, - -0.07289575785398483, - 0.1262144297361374, - 0.04913631081581116, - 0.004767424892634153, - -0.08466526865959167, - -0.08497320860624313, - 0.12530331313610077, - -0.010960602201521397, - -0.1129029244184494, - -0.030695561319589615, - 0.08174505084753036, - 0.18919098377227783, - -0.022884823381900787, - -0.012764216400682926, - -0.0019257356179878116, - 0.10391833633184433, - 0.021053628996014595, - 0.11531467735767365, - 0.0751236230134964, - 0.0809326320886612, - 0.04574631154537201, - 0.0760323777794838, - 0.05403928458690643, - 0.06185106188058853, - 0.03970938175916672, - -0.02811742015182972, - 0.039041414856910706, - -0.015278642065823078, - -0.028954897075891495, - 0.03921008110046387, - -0.05481412634253502, - -0.02577005885541439, - -0.03172075003385544, - 0.01496118400245905, - 0.02791183441877365, - -0.021887533366680145, - -0.026877062395215034, - 0.061779119074344635, - -0.008785966783761978, - -0.022177185863256454, - 0.053655318915843964, - 0.05277888476848602, - -0.010125143453478813, - 0.03967394307255745, - -0.06804991513490677, - -0.14738930761814117, - -0.012449276633560658, - -0.016071254387497902, - 0.011165747418999672, - 0.07467452436685562, - 0.036343421787023544, - -0.019686389714479446, - 0.08277130872011185, - 0.0648355633020401, - 0.008782033808529377, - 0.0366487056016922, - -0.11050742864608765, - 0.1022585779428482, - 0.08801715075969696, - -0.003631700063124299, - 0.016802899539470673, - -0.03087206557393074, - 0.10668429732322693, - 0.09522587060928345, - -0.13953015208244324, - -0.08506143093109131, - -0.00264726672321558, - -0.025648826733231544, - -0.0010603005066514015, - 0.06754474341869354, - -0.027455255389213562, - -0.008131668902933598, - 0.09003298729658127, - -0.0673074796795845, - -0.06193699687719345, - -0.04229079186916351, - 0.03137551620602608, - -0.04543914645910263, - 0.05138185992836952, - -0.004624051973223686, - 0.007637045346200466, - -0.03060484677553177, - 0.07636098563671112, - -0.019327733665704727, - -0.012097650207579136, - 0.053983524441719055, - -0.07345453649759293, - 0.042408209294080734, - -0.049985166639089584, - 0.008950160816311836, - 0.05210144445300102, - 0.08750709891319275, - 0.05141513794660568, - 0.002851310884580016, - -0.018281059339642525, - -0.04121723771095276, - -0.01046680472791195, - 0.055975887924432755, - 0.043200232088565826, - 0.012413250282406807, - -0.016545619815587997, - -0.027319665998220444, - -0.06217388063669205, - 0.03314356505870819, - -0.013571945950388908, - 0.09823563694953918, - 0.0019467358943074942, - 0.021671226248145103, - 0.09472833573818207, - -0.0051863593980669975, - -0.01598552241921425, - -0.07899544388055801, - -0.0031464819330722094, - 0.04760095104575157, - 0.052674226462841034, - -0.07419611513614655, - -0.05610281974077225, - 0.024660281836986542, - -0.0022799137514084578, - -0.04687836766242981, - 0.014581711031496525, - 0.02412720024585724, - 0.010095291770994663, - 0.06529437750577927, - -0.05785476788878441, - 0.004069725051522255, - -0.135610431432724, - -0.033472005277872086, - -0.02212948352098465, - -0.06666119396686554, - -0.011357763782143593, - 0.04767968878149986, - 0.02581382915377617, - 0.007326185703277588, - 0.04437337443232536, - -0.08830290287733078, - -0.061657555401325226, - 0.08468224108219147, - 0.05942381173372269, - 0.03753438964486122, - 0.060077324509620667, - 0.050926726311445236, - -0.01278261374682188, - 0.06519371271133423, - 0.08476236462593079, - 0.08517537266016006, - -0.0007953721797093749, - -0.012795460410416126, - -0.07919950038194656, - 0.07496115565299988, - 0.09045148640871048, - -0.11373654752969742, - -0.11356612294912338, - -0.039007291197776794, - -0.0497543029487133, - 0.04672514647245407, - -0.0340145118534565, - -0.00975661538541317, - 0.030717633664608, - -0.025635145604610443, - -0.09907827526330948, - -0.07132606953382492, - 0.13276441395282745, - -0.0745672658085823, - -0.028220923617482185, - -0.05113302171230316, - 0.02091464214026928, - 0.08047666400671005, - 0.01702745445072651, - -0.028631914407014847, - 0.034702155739068985, - 0.07751099765300751, - -0.10417625308036804, - -0.03942802548408508, - -0.004535287618637085, - -0.028360813856124878, - -0.07269437611103058, - 0.03828089311718941, - -0.06709221750497818, - 0.060136713087558746, - -0.07069261372089386, - 0.17005649209022522, - -0.0424695685505867, - -0.05571698769927025, - -0.06540583819150925, - 0.052116844803094864, - -0.038852546364068985, - 0.027352681383490562, - 0.05796901136636734, - 0.08096598833799362, - -0.018361283466219902, - -0.09400112181901932, - 0.13685202598571777, - 0.005040790420025587, - -0.022602172568440437, - -0.06846167892217636, - -0.04854939877986908, - -0.061454616487026215, - -0.023517979308962822, - -0.009991307742893696, - -0.06929834932088852, - 0.006569344084709883, - 0.0038476220797747374, - -0.026457427069544792, - 0.06944996118545532, - 0.13379625976085663, - 0.07714101672172546, - -0.07563582807779312 - ] - }, - "p245_129.wav": { - "name": "p245", - "embedding": [ - 0.05392615497112274, - 0.07443667948246002, - -0.009994728490710258, - -0.009014388546347618, - -0.02173648029565811, - 0.03859037905931473, - -0.12552936375141144, - 0.1256403923034668, - -0.06035454571247101, - 0.09997209906578064, - -0.06202982738614082, - 0.10489467531442642, - -0.005122889764606953, - -0.1571434736251831, - -0.0880635678768158, - 0.03198288381099701, - -0.045143015682697296, - -0.006307042203843594, - -0.027759509161114693, - -0.024430638179183006, - 0.03673839196562767, - 0.03499136120080948, - 0.020181884989142418, - -0.012590021826326847, - 0.04001505672931671, - 0.03888263180851936, - 0.028153423219919205, - 0.04097350686788559, - 0.027295127511024475, - 0.003928378224372864, - 0.002996165305376053, - 0.09662798047065735, - -0.018309295177459717, - 0.013687074184417725, - 0.07015502452850342, - 0.033664800226688385, - 0.004545565228909254, - -0.0794612467288971, - -0.02087850496172905, - 0.009411952458322048, - -0.045582108199596405, - 0.07155988365411758, - 0.040919363498687744, - -0.019065722823143005, - 0.0299101322889328, - 0.016979368403553963, - 0.0036395557690411806, - -0.07593900710344315, - -0.10309791564941406, - 0.15288719534873962, - 0.01870296709239483, - 0.047613222151994705, - -0.11891864240169525, - -0.06445339322090149, - 0.11014333367347717, - -0.03317048400640488, - -0.07327345013618469, - -0.020378394052386284, - 0.02845267578959465, - 0.17581988871097565, - -0.02416062355041504, - -0.027550997212529182, - 0.01721351221203804, - 0.10199615359306335, - 0.02705969847738743, - 0.04991358146071434, - 0.1079227477312088, - 0.06764909625053406, - 0.020355235785245895, - 0.04830589145421982, - 0.04662405699491501, - 0.0597914382815361, - 0.005850202403962612, - -0.04733363911509514, - 0.007627889513969421, - -0.003365917131304741, - -0.05620148777961731, - 0.011901435442268848, - -0.02279374748468399, - -0.019748002290725708, - -0.028799837455153465, - 0.030615627765655518, - 0.002194210421293974, - 0.0270709041506052, - -0.050927430391311646, - 0.05480382591485977, - -0.015551891177892685, - -0.04787268489599228, - 0.05460184067487717, - 0.07094497978687286, - -0.011764146387577057, - 0.013380622491240501, - -0.055755071341991425, - -0.10712259262800217, - -0.020806077867746353, - -0.01791190728545189, - 0.006997612304985523, - 0.06865952908992767, - 0.037363409996032715, - -0.019053038209676743, - 0.08073477447032928, - 0.05926159396767616, - -0.004894784651696682, - 0.0075787147507071495, - -0.09441211819648743, - 0.0782688558101654, - 0.10550709813833237, - -0.01682424172759056, - 0.017590994015336037, - -0.0476725772023201, - 0.05361957848072052, - 0.08424115926027298, - -0.12738361954689026, - -0.07545700669288635, - 0.07856108248233795, - 0.03635145723819733, - 0.05592794343829155, - 0.09744493663311005, - -0.005688908509910107, - -0.0019249757751822472, - 0.06625314056873322, - -0.06221519783139229, - -0.05811835080385208, - -0.05217359960079193, - 0.054616786539554596, - -0.04010135307908058, - 0.05409979820251465, - 0.04592623561620712, - 0.008029206655919552, - -0.04225748032331467, - 0.05206568166613579, - 0.010796322487294674, - -0.0030347637366503477, - -0.016415055841207504, - 0.018820129334926605, - 0.06336290389299393, - -0.01777966320514679, - -0.024717368185520172, - 0.037478700280189514, - 0.0927240252494812, - 0.02607731707394123, - 0.05414276197552681, - -0.04490037262439728, - -0.07333119958639145, - -0.010936434380710125, - 0.09308279305696487, - 0.05582552030682564, - -0.040384046733379364, - -0.05247347429394722, - -0.05684541165828705, - -0.021842073649168015, - 0.0004816511645913124, - 0.012069856747984886, - 0.09166248887777328, - -0.0019981549121439457, - 0.03308132290840149, - 0.11047571897506714, - -0.038139186799526215, - -0.007936987094581127, - 0.0028473716229200363, - 0.03919798135757446, - 0.026521438732743263, - 0.023982921615242958, - -0.03588304668664932, - -0.08112575113773346, - -0.0022799649741500616, - -0.001674160361289978, - -0.0358114168047905, - 0.0005139485001564026, - 0.010183852165937424, - -0.0015047881752252579, - 0.0435851514339447, - -0.0954829528927803, - 0.022527482360601425, - -0.16106975078582764, - -0.00900324247777462, - -0.015356677584350109, - -0.04914845898747444, - -0.006328769493848085, - 0.07458657026290894, - 0.04068043455481529, - 0.02095233090221882, - 0.012564263306558132, - -0.11711712181568146, - -0.024375971406698227, - 0.06816166639328003, - 0.09943650662899017, - 0.013466029427945614, - 0.0071571338921785355, - 0.028654180467128754, - 0.023938678205013275, - 0.032016463577747345, - 0.07807129621505737, - 0.05729295313358307, - -0.018133021891117096, - -0.04137236252427101, - -0.0445544607937336, - 0.09838218986988068, - 0.02983623556792736, - -0.09720556437969208, - -0.0902697890996933, - -0.027857154607772827, - -0.0417763777077198, - -0.0021216869354248047, - 0.00452845823019743, - 0.044691868126392365, - 0.014556209556758404, - -0.04080378636717796, - -0.11652612686157227, - -0.08267544209957123, - 0.05755245313048363, - -0.05149652063846588, - -0.01796053722500801, - -0.044719576835632324, - 0.02303094044327736, - 0.09662321209907532, - -0.003799034282565117, - 0.023075276985764503, - -0.022207390516996384, - -0.016091376543045044, - -0.09067900478839874, - -0.06383467465639114, - -0.02560262195765972, - -0.007304156199097633, - -0.08523023128509521, - 0.041381530463695526, - -0.05000466853380203, - 0.11790335178375244, - -0.06316035985946655, - 0.13298948109149933, - -0.01973225176334381, - -0.07779376953840256, - -0.08542152494192123, - -0.01643693633377552, - -0.02898472547531128, - 0.055288925766944885, - 0.044188156723976135, - 0.05746244639158249, - -0.022932549938559532, - -0.06478139758110046, - 0.09215466678142548, - 0.06123930588364601, - -0.035009823739528656, - -0.06930521130561829, - -0.0554036945104599, - 0.0020948778837919235, - 0.008704611100256443, - -0.007246280089020729, - -0.013204630464315414, - 0.007811293005943298, - -0.002652811584994197, - -0.04926186054944992, - 0.0598335862159729, - 0.10606255382299423, - 0.054550208151340485, - -0.12116880714893341 - ] - }, - "p245_113.wav": { - "name": "p245", - "embedding": [ - 0.05266711488366127, - 0.08582263439893723, - -0.02592119202017784, - 0.019899480044841766, - -0.06496009230613708, - 0.048812996596097946, - -0.1588859111070633, - 0.13600994646549225, - -0.030165988951921463, - 0.13593433797359467, - -0.04642648249864578, - 0.12987945973873138, - -0.020480554550886154, - -0.18912239372730255, - -0.021262919530272484, - 0.06009237468242645, - -0.02741141803562641, - -0.05052557960152626, - -0.015856029465794563, - -0.027928199619054794, - 0.02803090214729309, - 0.042347684502601624, - 0.025782620534300804, - 0.0022609729785472155, - 0.041953157633543015, - 0.07605547457933426, - -0.007571537978947163, - 0.03295883908867836, - -0.0030406098812818527, - -0.05938256159424782, - -0.03306674212217331, - 0.08316744863986969, - -0.06765448302030563, - -0.004874638747423887, - 0.033529132604599, - -0.014325467869639397, - 0.0013069804990664124, - -0.06559905409812927, - -0.018419045954942703, - 0.010221763513982296, - -0.04732197895646095, - 0.08943614363670349, - 0.026139071211218834, - -0.02501012571156025, - 0.023983489722013474, - 0.022603865712881088, - 0.002640419639647007, - -0.04471921920776367, - -0.11350669711828232, - 0.15213394165039062, - 0.05256342515349388, - 0.008560108952224255, - -0.07780388742685318, - -0.06634317338466644, - 0.09941860288381577, - -0.010311364196240902, - -0.09696295112371445, - -0.052800457924604416, - 0.06888774782419205, - 0.14631260931491852, - -0.03388986364006996, - -0.05362073704600334, - 0.03783417493104935, - 0.11092883348464966, - 0.07482509315013885, - 0.06419740617275238, - 0.0879727154970169, - 0.11161946505308151, - -0.02705576829612255, - -0.004465590231120586, - 0.05596315488219261, - 0.07429435104131699, - 0.04771411418914795, - -0.014407447539269924, - 0.02334466576576233, - -0.007317695766687393, - -0.011422003619372845, - -0.019164983183145523, - -0.015534501522779465, - -0.027109500020742416, - -0.012050880119204521, - 0.0062237330712378025, - 0.002427445026114583, - 0.042277999222278595, - -0.030984140932559967, - 0.047915127128362656, - 0.059436503797769547, - -0.025418559089303017, - 0.08329557627439499, - 0.034678295254707336, - 0.012928245589137077, - 0.07167655229568481, - -0.10910872370004654, - -0.05550219118595123, - 0.049642592668533325, - 0.001558721880428493, - 0.020475173369050026, - 0.06777223199605942, - 0.0511762760579586, - -0.015133535489439964, - 0.13422654569149017, - 0.048582110553979874, - -0.00784805603325367, - 0.014216885901987553, - -0.08218632638454437, - 0.1341009885072708, - 0.08056965470314026, - -0.035237401723861694, - 0.05655606836080551, - -0.04740045219659805, - 0.04677413031458855, - 0.05319509282708168, - -0.13338381052017212, - -0.08521207422018051, - 0.033410973846912384, - 0.01281578466296196, - -0.024215031415224075, - 0.14557114243507385, - -0.00869741104543209, - 0.04875190928578377, - 0.10435070097446442, - -0.09193342179059982, - -0.06268054246902466, - -0.013657070696353912, - 0.049857206642627716, - -0.09539420157670975, - 0.07522916793823242, - 0.06951335072517395, - -0.012824811972677708, - 0.02431079000234604, - 0.07977151870727539, - -0.004391202703118324, - 0.007424943149089813, - -0.003942327573895454, - -0.030067792162299156, - 0.015791919082403183, - -0.002340142149478197, - -0.008628172799944878, - 0.0364588238298893, - 0.021641982719302177, - 0.05973050743341446, - -0.004062551073729992, - -0.021350668743252754, - -0.14606045186519623, - 0.019084783270955086, - 0.03022613190114498, - 0.08562620729207993, - -0.017911944538354874, - -0.03051462396979332, - -0.04280445724725723, - -0.06004221737384796, - 0.002937659854069352, - 0.0018669666023924947, - 0.08669067174196243, - -0.016913872212171555, - 0.006382003892213106, - 0.11146383732557297, - 0.046541500836610794, - 0.012049530632793903, - -0.02926841750741005, - -0.030022265389561653, - 0.004241586197167635, - 0.057848334312438965, - -0.08068471401929855, - -0.07798247039318085, - -0.0290053877979517, - 0.04081055894494057, - -0.008505836129188538, - 0.08182427287101746, - 0.06039590761065483, - 0.021579179912805557, - 0.014276997186243534, - -0.07375432550907135, - 0.020761828869581223, - -0.07047093659639359, - -0.06523757427930832, - -0.011761642061173916, - -0.015990277752280235, - -0.045896563678979874, - 0.08601028472185135, - 0.028392210602760315, - 0.06888741999864578, - -0.04887698218226433, - -0.05965172126889229, - -0.0852140411734581, - 0.03415220230817795, - 0.05710722133517265, - -0.025758277624845505, - 0.02026914246380329, - 0.056293901056051254, - -0.019123535603284836, - 0.04892539605498314, - 0.06510180234909058, - 0.09337292611598969, - -0.0375477597117424, - 0.02333034574985504, - -0.052902404218912125, - 0.10347604751586914, - 0.08357144892215729, - -0.07872869819402695, - -0.06853903084993362, - -0.03240904584527016, - -0.0754864513874054, - 0.032725293189287186, - -0.014659631997346878, - 0.029350321739912033, - 0.02840963937342167, - -0.004350689705461264, - -0.10283681005239487, - -0.1052875965833664, - 0.07420540601015091, - -0.07010527700185776, - 0.008501279167830944, - -0.09442303329706192, - 0.04686177894473076, - 0.09679373353719711, - 0.040300656110048294, - -0.024278780445456505, - -0.02721174620091915, - 0.033263299614191055, - -0.010030240751802921, - 0.02370413951575756, - 0.07773198187351227, - 0.05175931379199028, - -0.10856864601373672, - -0.016282837837934494, - -0.07674230635166168, - 0.06133342161774635, - -0.03762954846024513, - 0.15692093968391418, - 0.02711891569197178, - -0.048004016280174255, - -0.09299994260072708, - 0.027254121378064156, - -0.020146537572145462, - 0.06552023440599442, - 0.03268613666296005, - 0.07247371971607208, - 0.05437099561095238, - -0.055424656718969345, - 0.10389180481433868, - 0.06420666724443436, - -0.03823890537023544, - -0.07564503699541092, - -0.05463288351893425, - -0.03448047488927841, - 0.05037635564804077, - 0.015081064775586128, - -0.09624598175287247, - -0.016583899036049843, - 0.03790034353733063, - 0.007881008088588715, - 0.06808155030012131, - 0.13471582531929016, - 0.061022914946079254, - -0.11671235412359238 - ] - }, - "p245_125.wav": { - "name": "p245", - "embedding": [ - 0.04512891545891762, - 0.10432637482881546, - -0.026215000078082085, - 0.03385285288095474, - -0.08149534463882446, - 0.10970335453748703, - -0.11565253883600235, - 0.1056872308254242, - -0.06380829960107803, - 0.1443595141172409, - -0.042785510420799255, - 0.11578189581632614, - -0.016190458089113235, - -0.17944610118865967, - -0.03558603301644325, - 0.06630606949329376, - -0.034195397049188614, - -0.005926445126533508, - -0.047937747091054916, - -0.0010083622764796019, - 0.01739398017525673, - 0.021829038858413696, - 0.04105433076620102, - -0.04893742874264717, - 0.07487490028142929, - 0.052493225783109665, - 0.008113069459795952, - 0.04738616198301315, - 0.002095246920362115, - -0.09708696603775024, - -0.06657794117927551, - 0.11366607248783112, - -0.059582456946372986, - 0.0235900841653347, - 0.053876057267189026, - -0.007159947883337736, - 0.010989903472363949, - -0.0587448813021183, - 0.011473600752651691, - 0.021653857082128525, - -0.006518281996250153, - 0.09408535063266754, - 0.03983663022518158, - -0.002927956636995077, - 0.011783753521740437, - 0.016308235004544258, - -0.0052011096850037575, - -0.04499087110161781, - -0.09166138619184494, - 0.16865481436252594, - 0.023754121735692024, - -0.026250839233398438, - -0.07726902514696121, - -0.09046296030282974, - 0.10517049580812454, - -0.005890835542231798, - -0.10882264375686646, - -0.06222473084926605, - 0.06772004067897797, - 0.1498308628797531, - -0.0031964019872248173, - -0.03413783013820648, - -0.009236854501068592, - 0.10852149873971939, - 0.011532392352819443, - 0.10324481129646301, - 0.03358490765094757, - 0.09139684587717056, - 0.019114602357149124, - 0.05334613099694252, - 0.03903999924659729, - 0.059925973415374756, - 0.003664352698251605, - -0.019248846918344498, - 0.034947361797094345, - -0.05856955796480179, - -0.019251830875873566, - 0.015843171626329422, - -0.0069058844819664955, - -0.023239202797412872, - -0.018647603690624237, - 0.005984857678413391, - 0.02566693350672722, - -0.009859294630587101, - -0.03400120139122009, - 0.04397953674197197, - 0.014859405346214771, - -0.01965768076479435, - 0.07944491505622864, - 0.06610117852687836, - -0.010992285795509815, - 0.03727010264992714, - -0.06801246851682663, - -0.10969861596822739, - 0.03757087141275406, - 0.02315947599709034, - 0.01897449977695942, - 0.06112867221236229, - 0.020707352086901665, - -0.01669279672205448, - 0.08805934339761734, - 0.06901668757200241, - 0.013307984918355942, - 0.030067598447203636, - -0.07806509733200073, - 0.13966026902198792, - 0.07341732084751129, - 0.020065249875187874, - 0.06132183223962784, - -0.038206715136766434, - 0.08776731789112091, - 0.07752826064825058, - -0.14298465847969055, - -0.09741400927305222, - -0.0070975469425320625, - -0.024273836985230446, - -0.02258213609457016, - 0.09308410435914993, - -0.024363458156585693, - -0.0012514310656115413, - 0.08733444660902023, - -0.09904124587774277, - -0.05525195598602295, - -0.015873271971940994, - 0.030854692682623863, - -0.0808526873588562, - 0.03413348272442818, - 0.046862296760082245, - -0.04644785448908806, - 0.013428938575088978, - 0.07309228181838989, - 0.003995553124696016, - 0.029969770461320877, - 0.065598264336586, - -0.039192795753479004, - 0.026482343673706055, - -0.026106547564268112, - 0.025038346648216248, - 0.07799410820007324, - 0.03637745976448059, - 0.07396122813224792, - -0.024779651314020157, - -0.0132305808365345, - -0.09724399447441101, - 0.0023832041770219803, - 0.04702654108405113, - 0.047006089240312576, - -0.02175857312977314, - -0.011672073043882847, - -0.03722044825553894, - -0.10271601378917694, - 0.052550312131643295, - 0.00657836627215147, - 0.11014967411756516, - 0.01651615835726261, - 0.005980789661407471, - 0.10929179191589355, - 0.04564369469881058, - -0.014958723448216915, - -0.07665686309337616, - -0.02384403720498085, - 0.03758100047707558, - 0.038161713629961014, - -0.09398920834064484, - -0.04468710348010063, - 0.010997436009347439, - -0.0045196665450930595, - -0.0298407394438982, - 0.046191826462745667, - 0.0697917491197586, - 0.02932918816804886, - 0.06488846242427826, - -0.05145473778247833, - 0.010845218785107136, - -0.06489353626966476, - -0.022748468443751335, - -0.03324192017316818, - -0.06173117458820343, - -0.06745723634958267, - 0.1137159988284111, - 0.025899073109030724, - 0.024418696761131287, - -0.02072727493941784, - -0.03085111640393734, - -0.03956538811326027, - 0.06374966353178024, - 0.037675824016332626, - 0.006032956298440695, - 0.03632340580224991, - 0.028634967282414436, - -0.02249719761312008, - 0.06109248474240303, - 0.09133797883987427, - 0.07837530970573425, - -0.032901983708143234, - 0.012392661534249783, - -0.06136041507124901, - 0.11161164194345474, - 0.09009142965078354, - -0.1054024025797844, - -0.0950327143073082, - -0.04629550501704216, - -0.06075979396700859, - 0.04947635531425476, - -0.048837777227163315, - -0.004198533017188311, - 0.02499806322157383, - -0.01532420702278614, - -0.07993901520967484, - -0.10609419643878937, - 0.09526405483484268, - -0.05893123894929886, - -0.017346439883112907, - -0.05751090124249458, - 0.04680261015892029, - 0.06576312333345413, - 0.06334643810987473, - -0.041471004486083984, - 0.007180421147495508, - 0.07584094256162643, - -0.06248830631375313, - 0.013814223930239677, - 0.0633963942527771, - 0.006562592461705208, - -0.06464602053165436, - 0.02832934632897377, - -0.06338690221309662, - 0.0677010789513588, - -0.06531787663698196, - 0.20250418782234192, - -0.011792201548814774, - -0.05663381516933441, - -0.057102687656879425, - 0.059156037867069244, - -0.0693090632557869, - 0.016006743535399437, - 0.04589393734931946, - 0.060533832758665085, - 0.046223729848861694, - -0.04861221835017204, - 0.11730561405420303, - 0.03099760413169861, - -0.017490530386567116, - -0.05587955191731453, - -0.04201593995094299, - -0.04608694091439247, - 0.06122569739818573, - 0.00919948611408472, - -0.1138974204659462, - 0.018559828400611877, - 0.05176904797554016, - 0.011245728470385075, - 0.07479051500558853, - 0.1446010321378708, - 0.08672527223825455, - -0.07816220819950104 - ] - }, - "p245_142.wav": { - "name": "p245", - "embedding": [ - 0.044091422110795975, - 0.07743866741657257, - -0.008428291417658329, - 0.030143287032842636, - -0.020201601088047028, - 0.08146895468235016, - -0.16609877347946167, - 0.10837343335151672, - -0.054010625928640366, - 0.14748694002628326, - -0.05846453085541725, - 0.08908722549676895, - -0.00979151576757431, - -0.21999913454055786, - -0.022897057235240936, - 0.06719061732292175, - -0.04753673076629639, - -0.022768575698137283, - -0.024456845596432686, - 0.02589966543018818, - 0.031428031623363495, - 0.01232027355581522, - 0.012082988396286964, - -0.009386545047163963, - 0.027116162702441216, - 0.04895694553852081, - -0.0206296406686306, - 0.038302868604660034, - -0.00407725153490901, - -0.012179161421954632, - -0.016930075362324715, - 0.1352418214082718, - -0.06851913034915924, - 0.001655557076446712, - 0.07899977266788483, - 0.0037230250891298056, - -0.04877312481403351, - -0.05199562385678291, - 0.0016954276943579316, - -0.023792948573827744, - -0.07425396889448166, - 0.07345152646303177, - 0.030001258477568626, - 0.009505374357104301, - 0.04755253344774246, - 0.015463468618690968, - -0.012125799432396889, - -0.035624660551548004, - -0.08789891749620438, - 0.11724990606307983, - 0.058107439428567886, - 0.00503843929618597, - -0.06582161784172058, - -0.06505601853132248, - 0.08617187291383743, - 0.015430380590260029, - -0.11312363296747208, - -0.06555827707052231, - 0.09202402830123901, - 0.16443733870983124, - -0.02339477278292179, - -0.019992755725979805, - 0.01177819725126028, - 0.10955788940191269, - 0.05824762210249901, - 0.13660144805908203, - 0.04057910665869713, - 0.10317262262105942, - 0.026862991973757744, - 0.03629329428076744, - 0.08264689147472382, - 0.036499351263046265, - 0.04852892458438873, - -0.047179389744997025, - 0.02811608836054802, - -0.00022103595256339759, - -0.030083760619163513, - -0.0045753479935228825, - -0.014025572687387466, - -0.00016731731011532247, - -0.001117827370762825, - -0.024101480841636658, - 0.0016721455613151193, - 0.03795992210507393, - -0.014634850434958935, - 0.008282522670924664, - 0.06142982468008995, - -0.021815435960888863, - 0.06625853478908539, - 0.06827973574399948, - 0.012328526936471462, - 0.06346876919269562, - -0.0868157371878624, - -0.08818034082651138, - 0.031383052468299866, - 0.006197072099894285, - 0.0005468082381412387, - 0.057138171046972275, - 0.04718642681837082, - -0.0053126877173781395, - 0.08353392779827118, - 0.03018593229353428, - 0.005062393378466368, - 0.046734608709812164, - -0.10961950570344925, - 0.11949074268341064, - 0.045873645693063736, - -0.017947908490896225, - 0.03215749189257622, - -0.050151146948337555, - 0.06887584179639816, - 0.1098480075597763, - -0.13919194042682648, - -0.046134889125823975, - 0.05155736953020096, - -0.024865809828042984, - -0.03445601835846901, - 0.14712075889110565, - 0.0021482466254383326, - -0.015834737569093704, - 0.0877358615398407, - -0.09279146045446396, - -0.06910572201013565, - -0.025697927922010422, - 0.03996589407324791, - -0.1131061464548111, - 0.06024720519781113, - 0.021332452073693275, - -0.008160749450325966, - -0.020695582032203674, - 0.09601693600416183, - -0.015088719315826893, - -0.011547433212399483, - -0.006499287206679583, - -0.018710995092988014, - 0.06689240038394928, - -0.03599360212683678, - 0.03126445412635803, - 0.035963233560323715, - -0.0025377669371664524, - 0.054147783666849136, - -0.0023579730186611414, - -0.01101789902895689, - -0.09605683386325836, - -0.009743058122694492, - 0.05777978524565697, - 0.08672703057527542, - -0.01718573272228241, - -0.00951284822076559, - -0.044255468994379044, - -0.09024734795093536, - 0.05528480187058449, - -0.0391538143157959, - 0.08561825007200241, - 0.04492386803030968, - -0.020393267273902893, - 0.1072118803858757, - 0.006132496986538172, - 0.026425933465361595, - -0.061918579041957855, - -0.009826728142797947, - 0.03627658635377884, - 0.0687282383441925, - -0.11699320375919342, - -0.03933601453900337, - 0.0048781465739011765, - 0.00863227155059576, - -0.0027903656009584665, - 0.012056820094585419, - 0.05353269726037979, - 0.023276688531041145, - 0.018112661316990852, - -0.07971055805683136, - 0.013795309700071812, - -0.10655240714550018, - -0.07264188677072525, - -0.03917001187801361, - -0.048284098505973816, - -0.0007066698744893074, - 0.07883720099925995, - -0.012125194072723389, - 0.003237518249079585, - -0.035836875438690186, - -0.06985735893249512, - -0.08264351636171341, - 0.061692140996456146, - 0.07784304767847061, - -0.01511172205209732, - 0.03541022911667824, - 0.02296164073050022, - -0.050339046865701675, - 0.019817473366856575, - 0.04740717262029648, - 0.13291172683238983, - -0.047311920672655106, - 0.023881183937191963, - -0.07386672496795654, - 0.10570187866687775, - 0.1119840145111084, - -0.08409196883440018, - -0.07879561930894852, - 0.025941869243979454, - -0.044020798057317734, - 0.024145582690835, - -0.06075059622526169, - -0.021853962913155556, - 0.02493392489850521, - -0.03968885540962219, - -0.08674146980047226, - -0.10423794388771057, - 0.08893847465515137, - -0.08463059365749359, - -0.023387346416711807, - -0.08728238940238953, - 0.039996951818466187, - 0.042412009090185165, - 0.030743541195988655, - -0.06090109050273895, - 0.012743172235786915, - 0.054827190935611725, - -0.04240451008081436, - -0.01562053058296442, - 0.05694739520549774, - -0.005967938341200352, - -0.1200098916888237, - -0.02897501550614834, - -0.05907841771841049, - 0.08186513185501099, - -0.07347573339939117, - 0.15074819326400757, - -0.03388827666640282, - -0.06125997006893158, - -0.06807532906532288, - 0.01246599294245243, - 0.019586147740483284, - 0.03979422524571419, - 0.051129817962646484, - 0.08657147735357285, - 0.02677091769874096, - -0.03884980082511902, - 0.11124187707901001, - 0.014219792559742928, - 0.02706090174615383, - -0.053942833095788956, - -0.017855612561106682, - -0.04901871457695961, - 0.028953639790415764, - -0.007471634075045586, - -0.12662649154663086, - 0.017938710749149323, - 0.046976376324892044, - -0.01961124874651432, - 0.028681958094239235, - 0.11557317525148392, - 0.04550383612513542, - -0.10988728702068329 - ] - }, - "p245_071.wav": { - "name": "p245", - "embedding": [ - 0.05807351693511009, - 0.0887608751654625, - -0.018991809338331223, - 0.026218712329864502, - -0.06738467514514923, - 0.06312461942434311, - -0.11771702021360397, - 0.13595294952392578, - -0.044640056788921356, - 0.13572809100151062, - -0.07144707441329956, - 0.12897056341171265, - -0.021063080057501793, - -0.17505864799022675, - -0.035056471824645996, - 0.051293086260557175, - -0.055298082530498505, - -0.036122217774391174, - -0.04738318920135498, - -0.03124941885471344, - 0.036118894815444946, - 0.03986750915646553, - 0.030062025412917137, - 0.008247941732406616, - 0.030315328389406204, - 0.07848373055458069, - -0.0013130693696439266, - 0.040251947939395905, - 0.011462969705462456, - -0.07026667892932892, - -0.0469355434179306, - 0.09271174669265747, - -0.05489548295736313, - 0.00905666220933199, - 0.04792410135269165, - -0.011996923014521599, - 0.0028056292794644833, - -0.061709921807050705, - -0.02898849919438362, - 0.012501413002610207, - -0.044021159410476685, - 0.07473638653755188, - 0.03001815639436245, - -0.02070397138595581, - 0.030848098918795586, - 0.0298746507614851, - -0.008098583668470383, - -0.0543169341981411, - -0.10264801234006882, - 0.16388052701950073, - 0.06808345019817352, - -0.0044543808326125145, - -0.06020621582865715, - -0.06678085029125214, - 0.107156902551651, - -0.021159198135137558, - -0.11694003641605377, - -0.03393065929412842, - 0.07648836076259613, - 0.1490037739276886, - -0.04737032949924469, - -0.0404522530734539, - 0.027859574183821678, - 0.11551656574010849, - 0.05921501666307449, - 0.08507843315601349, - 0.08967580646276474, - 0.10563677549362183, - -0.02200581505894661, - 0.017706282436847687, - 0.06513924896717072, - 0.07775908708572388, - 0.07296648621559143, - -0.006723630242049694, - 0.03007356822490692, - -0.0008583361050114036, - -0.013761173002421856, - -0.004629965405911207, - -0.02577507123351097, - -0.012327159754931927, - -0.01200829353183508, - 0.009919436648488045, - 0.02142050862312317, - 0.015394649468362331, - -0.024856513366103172, - 0.07157839834690094, - 0.03046455793082714, - -0.012260248884558678, - 0.06340380758047104, - 0.025663509964942932, - 0.001453674165531993, - 0.06762465089559555, - -0.08565789461135864, - -0.08278287947177887, - 0.03236193209886551, - -0.0008894894272089005, - 0.02836447022855282, - 0.07022207230329514, - 0.048096250742673874, - -0.01548395212739706, - 0.12118487805128098, - 0.055480197072029114, - -0.00924451369792223, - 0.0221734456717968, - -0.09177523851394653, - 0.12997305393218994, - 0.0964130312204361, - -0.030925147235393524, - 0.04553816840052605, - -0.04472580552101135, - 0.08717553317546844, - 0.06115412712097168, - -0.14649495482444763, - -0.07435113191604614, - 0.020150555297732353, - 0.006237914320081472, - -0.015351386740803719, - 0.10890376567840576, - -0.025419116020202637, - 0.03974146023392677, - 0.11107337474822998, - -0.08194974064826965, - -0.04027193784713745, - -0.019799618050456047, - 0.04232291132211685, - -0.0882759541273117, - 0.056093111634254456, - 0.05033014714717865, - -0.00853983499109745, - 0.018487893044948578, - 0.08929496258497238, - -0.01683453470468521, - -0.018333125859498978, - 0.01930348202586174, - -0.04238429293036461, - 0.00946978572756052, - -0.015492500737309456, - -0.0059771365486085415, - 0.04728580266237259, - 0.04450833797454834, - 0.03942327946424484, - -0.007866519503295422, - -0.0298530962318182, - -0.11994849890470505, - 0.028765495866537094, - 0.027658436447381973, - 0.07270434498786926, - -0.00797295942902565, - -0.015379039570689201, - -0.03664929419755936, - -0.06578201055526733, - 0.015182415023446083, - -0.0008842225070111454, - 0.06897900998592377, - -0.030236070975661278, - 0.007262660190463066, - 0.09760522097349167, - 0.03429961949586868, - -0.004371834918856621, - -0.049546971917152405, - -0.03016752004623413, - 0.01798054948449135, - 0.056147199124097824, - -0.07348093390464783, - -0.07664106786251068, - -0.0060156118124723434, - 0.031485747545957565, - -0.02355564385652542, - 0.06153585761785507, - 0.0442175529897213, - 0.01591101847589016, - 0.027632173150777817, - -0.058986809104681015, - 0.008831396698951721, - -0.10336852073669434, - -0.06577182561159134, - -0.007753692101687193, - -0.02752024494111538, - -0.02377166412770748, - 0.07231250405311584, - 0.01875799521803856, - 0.05377378687262535, - -0.02304949425160885, - -0.07208409905433655, - -0.0737532526254654, - 0.05691802501678467, - 0.06316342949867249, - 0.0032272636890411377, - 0.03649712726473808, - 0.06256909668445587, - -0.01961454749107361, - 0.061703138053417206, - 0.06847445666790009, - 0.10836170613765717, - -0.021329190582036972, - 0.024009298533201218, - -0.06080351397395134, - 0.08838444948196411, - 0.06952297687530518, - -0.08604490756988525, - -0.08216174691915512, - -0.03451235219836235, - -0.06587493419647217, - 0.045420825481414795, - -0.019218463450670242, - 0.010467138141393661, - 0.028323298320174217, - 0.007349638268351555, - -0.09139257669448853, - -0.08464118093252182, - 0.0891350656747818, - -0.063229501247406, - -0.004910801537334919, - -0.08516650646924973, - 0.04788077995181084, - 0.10579688847064972, - 0.03687785565853119, - -0.01713266223669052, - -0.00036536407424136996, - 0.04605476185679436, - -0.03225358948111534, - 0.004635300952941179, - 0.04822668433189392, - 0.03494442254304886, - -0.10395854711532593, - -0.004747320432215929, - -0.07803529500961304, - 0.0534597747027874, - -0.04090527817606926, - 0.15619845688343048, - 0.005727827083319426, - -0.043876927345991135, - -0.07576988637447357, - 0.04942955821752548, - -0.026885464787483215, - 0.05324612185359001, - 0.046804629266262054, - 0.06528818607330322, - 0.041673608124256134, - -0.06905834376811981, - 0.11932535469532013, - 0.041629157960414886, - -0.04979165643453598, - -0.06603531539440155, - -0.05023183673620224, - -0.04068956524133682, - 0.019361453130841255, - 0.015713181346654892, - -0.0864185094833374, - -0.019584305584430695, - 0.020179200917482376, - -0.014209382236003876, - 0.06364451348781586, - 0.14248047769069672, - 0.06541594862937927, - -0.106376051902771 - ] - }, - "p245_063.wav": { - "name": "p245", - "embedding": [ - 0.03105643019080162, - 0.08554035425186157, - 0.02433938905596733, - 0.019092461094260216, - -0.0036414898931980133, - -0.01012413576245308, - -0.029033754020929337, - 0.04582410305738449, - 0.06644009798765182, - 0.02422577328979969, - -0.08776270598173141, - 0.0483083538711071, - -0.056201156228780746, - -0.11252660304307938, - 0.02410043217241764, - 0.021764587610960007, - -0.04266195371747017, - 0.002342715859413147, - -0.040058959275484085, - -0.022652525454759598, - -0.022885702550411224, - -0.020170196890830994, - 0.030278079211711884, - -0.021206647157669067, - -0.036231908947229385, - 0.027360834181308746, - -0.0344056710600853, - -0.011803285218775272, - -0.018552079796791077, - 0.009720159694552422, - -0.001115383580327034, - 0.023647086694836617, - -0.00857304222881794, - -0.013584845699369907, - 0.009184879250824451, - -0.02673809602856636, - -0.009676256217062473, - -0.04102008789777756, - -0.06477876752614975, - 0.04573163762688637, - -0.0870649516582489, - 0.03277049958705902, - 0.046226851642131805, - -0.08387885242700577, - 0.08200499415397644, - 0.015560347586870193, - -0.0662885382771492, - 0.0077109914273023605, - -0.10351966321468353, - 0.0825604498386383, - 0.02445063367486, - 0.012079034931957722, - -0.0478934645652771, - 0.032485127449035645, - 0.06814618408679962, - -0.009565731510519981, - -0.060235340148210526, - -0.03071798011660576, - 0.04650052636861801, - 0.012404244393110275, - 0.010495691560208797, - -0.0052714878693223, - -0.01747097261250019, - 0.010691734030842781, - 0.07982178032398224, - 0.030011223629117012, - 0.0594479963183403, - 0.10784439742565155, - -0.03956669941544533, - 0.02430770732462406, - 0.05397195741534233, - -0.01737232506275177, - 0.037402622401714325, - -0.014770830981433392, - -0.00738118588924408, - 0.000979708507657051, - -0.014488596469163895, - -0.029111109673976898, - 0.01994919404387474, - -0.013119641691446304, - 0.0511932335793972, - -0.02710065245628357, - 0.023998023942112923, - 0.010849249549210072, - -0.04423877224326134, - -0.009255893528461456, - 0.10118195414543152, - 0.06053862348198891, - 0.04538895934820175, - 0.04245872050523758, - -0.030890226364135742, - 0.08711840212345123, - -0.05158989876508713, - -0.07107601314783096, - -0.03224097192287445, - -0.022391056641936302, - -0.0006772801280021667, - 0.036936912685632706, - 0.03606313467025757, - -0.018891457468271255, - 0.08996282517910004, - -0.0126413032412529, - 0.004430259577929974, - 0.021129967644810677, - -0.05228395760059357, - 0.014107000082731247, - 0.049310408532619476, - -0.028827577829360962, - 0.02147824689745903, - 0.03756196051836014, - 0.07700464129447937, - 0.0568147674202919, - -0.011988703161478043, - 0.04279327020049095, - 0.012430463917553425, - 0.020698750391602516, - -0.0008149035274982452, - 0.10153654217720032, - 0.00040434766560792923, - 0.031080074608325958, - 0.14214791357517242, - -0.05370105803012848, - 0.02049648016691208, - 0.043775737285614014, - -0.031228037551045418, - -0.014731254428625107, - 0.040111713111400604, - 0.014631280675530434, - -0.0007974607869982719, - 0.013930161483585835, - 0.02547520026564598, - 0.019608493894338608, - 0.0004660021513700485, - -0.07362757623195648, - 0.008002600632607937, - 0.03063669241964817, - -0.006437936797738075, - -0.008299417793750763, - 0.04793029651045799, - 0.04554450511932373, - -0.0013055391609668732, - 0.027068475261330605, - -0.04203086346387863, - -0.0392727367579937, - 0.0451681949198246, - 0.004858033731579781, - 0.01825796253979206, - 0.037626806646585464, - -0.008093742653727531, - -0.0695081353187561, - -0.00869007408618927, - 0.07364516705274582, - -0.04527127742767334, - 0.05107257515192032, - 0.025569718331098557, - -0.03791782259941101, - 0.04115404188632965, - 0.024648400023579597, - 0.009502576664090157, - -0.03840293735265732, - -0.11246615648269653, - -0.017843477427959442, - 0.03647778928279877, - -0.09027460217475891, - -0.029078323394060135, - -0.06343092769384384, - -0.01789630390703678, - 0.01277280692011118, - -0.015472803264856339, - 0.06734797358512878, - -0.021008610725402832, - -0.03386368229985237, - -0.0638267919421196, - 0.015611624345183372, - -0.003619130700826645, - -0.09523309022188187, - 0.039222851395606995, - 0.009249047376215458, - 0.035757191479206085, - 0.054674141108989716, - -0.03741035610437393, - -0.008628038689494133, - -0.045913130044937134, - -0.06450282782316208, - 0.019198831170797348, - 0.037115760147571564, - -0.007926956750452518, - -0.012477781623601913, - 0.055236831307411194, - 0.06221051514148712, - -0.057778459042310715, - 0.018592093139886856, - -0.01754257269203663, - 0.06259797513484955, - -0.045437343418598175, - 0.010842733085155487, - 0.04513061046600342, - 0.04570592939853668, - 0.047213684767484665, - -0.030376357957720757, - -0.09519802778959274, - -0.04083241522312164, - -0.02832810766994953, - 0.014120924286544323, - 0.002846464514732361, - -0.012063547968864441, - 0.022236157208681107, - 0.0012738360092043877, - -0.018109116703271866, - -0.10475285351276398, - -0.015032557770609856, - 0.010158160701394081, - -0.011292430572211742, - -0.06401592493057251, - 0.00038685090839862823, - -0.02081780880689621, - 0.03182196617126465, - -0.021548328921198845, - 0.04672554135322571, - 0.015559805557131767, - 0.00895227026194334, - -0.02360260672867298, - 0.014144625514745712, - 0.05879434943199158, - 0.02050899714231491, - -0.060546405613422394, - -0.05004870146512985, - 0.058372870087623596, - 0.039183273911476135, - 0.0634753406047821, - 0.0581124909222126, - 0.024736538529396057, - -0.01376645639538765, - 0.03098839521408081, - -0.01460226345807314, - 0.027210760861635208, - 0.018743272870779037, - 0.03199074789881706, - 0.04323304444551468, - -0.008895537815988064, - 0.07203303277492523, - 0.03568592295050621, - -0.0032968265004456043, - -0.001707201823592186, - 0.018686160445213318, - -0.09120447933673859, - -0.04628748074173927, - 0.017872925847768784, - -0.045394644141197205, - 0.005250438116490841, - 0.015030574053525925, - 0.05049777776002884, - 0.003858765121549368, - 0.07143180072307587, - 0.04214390367269516, - -0.0038417577743530273 - ] - }, - "p245_013.wav": { - "name": "p245", - "embedding": [ - 0.04180122911930084, - 0.09214162826538086, - -0.023953890427947044, - 0.033022597432136536, - -0.05570778250694275, - 0.062306858599185944, - -0.12841181457042694, - 0.15746766328811646, - -0.02411716803908348, - 0.13524729013442993, - -0.06339174509048462, - 0.12076590955257416, - -0.041479554027318954, - -0.15628328919410706, - 0.0033186450600624084, - 0.05365518853068352, - -0.0064680688083171844, - -0.02130661904811859, - -0.024971408769488335, - -0.01502863597124815, - 0.027534110471606255, - 0.022711116820573807, - 0.011029191315174103, - -0.006697091739624739, - 0.03608196973800659, - 0.06516958773136139, - -0.018898561596870422, - 0.029230449348688126, - -0.005271849688142538, - -0.05269036814570427, - -0.027185529470443726, - 0.09689103066921234, - -0.07007506489753723, - 0.014870780520141125, - 0.05317511409521103, - -0.021288137882947922, - -0.031244633719325066, - -0.04405716806650162, - 0.0020173387601971626, - -0.02095952257514, - -0.049467217177152634, - 0.07526838034391403, - 0.01684637740254402, - -0.012001371011137962, - 0.03228865563869476, - 0.027417033910751343, - -0.010017581284046173, - -0.026068396866321564, - -0.10345882177352905, - 0.1320187747478485, - 0.054364752024412155, - 0.010060951113700867, - -0.09031840413808823, - -0.050685565918684006, - 0.088133804500103, - -0.005484725348651409, - -0.09754212200641632, - -0.04370247572660446, - 0.07120070606470108, - 0.13908639550209045, - -0.02591714821755886, - -0.037886153906583786, - 0.019719060510396957, - 0.09992881864309311, - 0.07219521701335907, - 0.08328386396169662, - 0.07846216857433319, - 0.12435492128133774, - -0.019095713272690773, - 0.016601845622062683, - 0.04097136855125427, - 0.060054175555706024, - 0.06731104850769043, - -0.0005042863776907325, - 0.009632173925638199, - -0.016460828483104706, - -0.007587812375277281, - -0.019918402656912804, - -0.03549594432115555, - -0.04073633253574371, - -0.010511688888072968, - 0.011776662431657314, - 0.02103639952838421, - 0.035723209381103516, - -0.014737311750650406, - 0.05293334648013115, - 0.07555471360683441, - -0.03248133510351181, - 0.07212894409894943, - 0.019678011536598206, - -0.0035595810040831566, - 0.06935756653547287, - -0.12128299474716187, - -0.06480127573013306, - 0.03666117787361145, - -0.004663382191210985, - 0.02658022567629814, - 0.07021257281303406, - 0.04215478524565697, - -0.0014582121511921287, - 0.1214357241988182, - 0.03208373486995697, - 0.007184488233178854, - 0.02348063886165619, - -0.08203645050525665, - 0.14015400409698486, - 0.07637452334165573, - -0.03448845446109772, - 0.052705369889736176, - -0.050920527428388596, - 0.052040498703718185, - 0.05532774329185486, - -0.1277979612350464, - -0.06570499390363693, - 0.007321244105696678, - 0.0015962962061166763, - -0.036100488156080246, - 0.1262112259864807, - 0.004486396908760071, - 0.04735985025763512, - 0.10633707046508789, - -0.10624785721302032, - -0.058018118143081665, - -0.005772040691226721, - 0.04285059869289398, - -0.07732734829187393, - 0.06460559368133545, - 0.05450254678726196, - -0.006709379609674215, - 0.03220319747924805, - 0.07729875296354294, - 0.002653898438438773, - 0.007862737402319908, - 0.017341790720820427, - -0.0407961905002594, - 0.009697271510958672, - -0.020843302831053734, - -0.0047683995217084885, - 0.021697912365198135, - 0.022755347192287445, - 0.07159145176410675, - -0.018902845680713654, - -0.0014484189450740814, - -0.11145545542240143, - 0.008788513019680977, - 0.044541746377944946, - 0.0721859261393547, - -0.0292716845870018, - -0.020181458443403244, - -0.02958027832210064, - -0.06776988506317139, - 0.008942861109972, - -0.0021678556222468615, - 0.06922096014022827, - -0.017078066244721413, - 0.006485714577138424, - 0.10922037065029144, - 0.047116126865148544, - 0.008538180962204933, - -0.07208286225795746, - -0.0340455062687397, - -0.0003438859130255878, - 0.058403000235557556, - -0.09053274244070053, - -0.07285749912261963, - -0.01625024899840355, - 0.028661159798502922, - -0.03577844426035881, - 0.07629077881574631, - 0.05391363427042961, - 0.036884114146232605, - 0.013693151995539665, - -0.04572390764951706, - 0.010387314483523369, - -0.07715493440628052, - -0.07679317891597748, - -0.0039046690799295902, - -0.016595548018813133, - -0.03808900713920593, - 0.07443471252918243, - 0.029606353491544724, - 0.06747093796730042, - -0.027109559625387192, - -0.049743857234716415, - -0.09094046801328659, - 0.043254464864730835, - 0.031138062477111816, - -0.03484842926263809, - 0.03799951449036598, - 0.057091549038887024, - -0.04655960202217102, - 0.03534773737192154, - 0.07292725145816803, - 0.0973801463842392, - -0.035579096525907516, - 0.020460793748497963, - -0.0753767341375351, - 0.08986330032348633, - 0.1107315644621849, - -0.07787105441093445, - -0.08640953153371811, - -0.039389558136463165, - -0.0650918260216713, - 0.027072690427303314, - -0.039555057883262634, - 0.004868770018219948, - 0.030602451413869858, - -0.00993249099701643, - -0.09708236902952194, - -0.09578721225261688, - 0.08067167550325394, - -0.07769184559583664, - 0.005996673833578825, - -0.0971374660730362, - 0.04981131851673126, - 0.06969193369150162, - 0.0295806135982275, - -0.034254394471645355, - -0.017549563199281693, - 0.05788266286253929, - -0.01689348928630352, - 0.02332819625735283, - 0.07809992879629135, - 0.0437905415892601, - -0.09219998121261597, - -0.013689766637980938, - -0.052776336669921875, - 0.0472794733941555, - -0.031283989548683167, - 0.15503309667110443, - 0.011733030900359154, - -0.04290162771940231, - -0.07679995894432068, - 0.03731664642691612, - -0.0027612466365098953, - 0.04682622104883194, - 0.02213919721543789, - 0.06984446942806244, - 0.04407970607280731, - -0.05545263737440109, - 0.12399067729711533, - 0.03447185084223747, - -0.03532817214727402, - -0.06159738823771477, - -0.07154671847820282, - -0.056981466710567474, - 0.02826017700135708, - -0.0011807818664237857, - -0.10187993943691254, - -0.015239959582686424, - 0.02550121769309044, - 0.008778824470937252, - 0.05148731917142868, - 0.1295362412929535, - 0.062025539577007294, - -0.10440461337566376 - ] - }, - "p245_422.wav": { - "name": "p245", - "embedding": [ - 0.04541833698749542, - 0.08458312600851059, - -0.023454783484339714, - 0.034486714750528336, - -0.06569331139326096, - 0.08166154474020004, - -0.10306773334741592, - 0.11541111022233963, - -0.06664577126502991, - 0.1469326764345169, - -0.0744980201125145, - 0.1275518238544464, - -0.02101374790072441, - -0.17484790086746216, - -0.03702579811215401, - 0.046783193945884705, - -0.04963590204715729, - -0.020609663799405098, - -0.05518731102347374, - -0.008572538383305073, - 0.05503934249281883, - 0.04530587047338486, - 0.03069922886788845, - -0.02644139900803566, - 0.029758132994174957, - 0.05602380633354187, - 0.01148210372775793, - 0.0443878248333931, - 0.021111946552991867, - -0.09415147453546524, - -0.05215606093406677, - 0.10799876600503922, - -0.042590439319610596, - 0.024378152564167976, - 0.04700938239693642, - 0.006542799063026905, - 0.007808975875377655, - -0.06589578837156296, - -0.02965022251009941, - 0.014180677011609077, - -0.044283993542194366, - 0.06340132653713226, - 0.018022162839770317, - -0.016951337456703186, - 0.03702714294195175, - 0.005523263942450285, - -0.026546133682131767, - -0.03932574391365051, - -0.09015718102455139, - 0.1703866869211197, - 0.05058049410581589, - -0.0029137905221432447, - -0.0669962540268898, - -0.09811115264892578, - 0.1144866794347763, - 0.0038611034397035837, - -0.13156317174434662, - -0.030452024191617966, - 0.06977283954620361, - 0.1672186404466629, - -0.019561922177672386, - -0.04077700898051262, - 0.020243890583515167, - 0.10603959113359451, - 0.033650953322649, - 0.091997429728508, - 0.07575692236423492, - 0.09621387720108032, - 0.0177758801728487, - 0.03607472777366638, - 0.060398396104574203, - 0.08784779906272888, - 0.05488348379731178, - -0.015069113112986088, - 0.03863956034183502, - 8.72766540851444e-05, - -0.02677016332745552, - 0.012962518259882927, - -0.028015250340104103, - -0.015588689595460892, - -0.005776535719633102, - 0.013448293320834637, - 0.030180932953953743, - 0.00013139439397491515, - -0.030962733551859856, - 0.056462615728378296, - 0.02322574146091938, - -0.012342063710093498, - 0.05526026338338852, - 0.046231746673583984, - 0.0170885156840086, - 0.059908606112003326, - -0.07249534130096436, - -0.12434734404087067, - 0.0189268309623003, - 0.012780689634382725, - 0.02083045430481434, - 0.06770552694797516, - 0.039627399295568466, - -0.01924307458102703, - 0.10678678005933762, - 0.04480630159378052, - 0.004858614411205053, - 0.026508526876568794, - -0.09574019908905029, - 0.10585805773735046, - 0.10635103285312653, - -0.00851711817085743, - 0.037962574511766434, - -0.05263345688581467, - 0.10930723696947098, - 0.07997693121433258, - -0.14693857729434967, - -0.09290163964033127, - 0.018383167684078217, - -0.00992563832551241, - -0.0005949775222688913, - 0.11755628883838654, - -0.018640587106347084, - 0.02285652421414852, - 0.10849317163228989, - -0.1019386574625969, - -0.04690127819776535, - -0.03197425231337547, - 0.038750652223825455, - -0.0705902948975563, - 0.06172307953238487, - 0.02591230720281601, - -0.012785526923835278, - -0.003375417785719037, - 0.07257199287414551, - -0.03204205259680748, - 0.016749585047364235, - 0.013025358319282532, - -0.05999693647027016, - 0.024329418316483498, - -0.04753658547997475, - -0.004451957996934652, - 0.07646813988685608, - 0.04985387995839119, - 0.05346887931227684, - -0.014890183694660664, - -0.03708735108375549, - -0.11680256575345993, - 0.02105340175330639, - 0.0380379743874073, - 0.04715924710035324, - -0.011000190861523151, - -0.01658296398818493, - -0.029534200206398964, - -0.08115171641111374, - 0.04553832486271858, - -0.016616538166999817, - 0.09122822433710098, - 0.0007307507330551744, - 0.0025862623006105423, - 0.09746529906988144, - 0.01971001923084259, - -0.011201451532542706, - -0.04757167771458626, - -0.05075792968273163, - 0.01659035123884678, - 0.04615657031536102, - -0.09459192305803299, - -0.06831562519073486, - -0.006062419153749943, - 0.005153947044163942, - -0.02177676372230053, - 0.03420368582010269, - 0.05226865038275719, - 0.01881447620689869, - 0.050769686698913574, - -0.06105195730924606, - 0.004163816571235657, - -0.12745454907417297, - -0.06377451866865158, - -0.01025293581187725, - -0.055922988802194595, - -0.008037387393414974, - 0.08714110404253006, - 0.010349174961447716, - 0.014007600955665112, - -0.019033897668123245, - -0.06697788834571838, - -0.06847860664129257, - 0.06912989914417267, - 0.054943978786468506, - 0.026518283411860466, - 0.050358060747385025, - 0.0540132150053978, - -0.01333160325884819, - 0.06103567034006119, - 0.06090788170695305, - 0.10781397670507431, - -0.008715350180864334, - 0.015866965055465698, - -0.07559799402952194, - 0.11775265634059906, - 0.08472425490617752, - -0.07624869793653488, - -0.10165652632713318, - -0.040690235793590546, - -0.07324263453483582, - 0.061560120433568954, - -0.0384230874478817, - -0.0031766362953931093, - 0.026019444689154625, - -0.0035079438239336014, - -0.10405293107032776, - -0.07224126160144806, - 0.09929147362709045, - -0.052750762552022934, - -0.030151432380080223, - -0.0856558158993721, - 0.0414586067199707, - 0.09855987131595612, - 0.043341271579265594, - -0.03213178738951683, - 0.01844930462539196, - 0.07316546142101288, - -0.06688538193702698, - 0.00011240405001444742, - 0.03938597813248634, - 0.006907101254910231, - -0.0756271556019783, - -0.001042670919559896, - -0.0773075670003891, - 0.05040000006556511, - -0.07534458488225937, - 0.15776090323925018, - -0.02002742886543274, - -0.06325960159301758, - -0.07376483827829361, - 0.07833678275346756, - -0.019484220072627068, - 0.03947871923446655, - 0.05043086037039757, - 0.0736052617430687, - 0.03817128762602806, - -0.08851241320371628, - 0.11513213813304901, - 0.03098997473716736, - -0.02461356669664383, - -0.0550229586660862, - -0.04713433235883713, - -0.039751727133989334, - 0.019792353734374046, - -0.003768391441553831, - -0.07755888998508453, - 0.004410837776958942, - 0.022804660722613335, - 0.0012865568278357387, - 0.052790626883506775, - 0.13204078376293182, - 0.055120617151260376, - -0.09807848185300827 - ] - }, - "p245_349.wav": { - "name": "p245", - "embedding": [ - 0.08540891110897064, - 0.058250218629837036, - -0.012711707502603531, - 0.010913546197116375, - -0.02710677497088909, - 0.047694385051727295, - -0.124262735247612, - 0.09863723814487457, - 0.014355293475091457, - 0.10110175609588623, - -0.09421265125274658, - 0.08098426461219788, - 0.0105329230427742, - -0.13205063343048096, - -0.01683698408305645, - 0.02207673154771328, - -0.029234804213047028, - -0.011948125436902046, - -0.04459882900118828, - -0.02646157145500183, - 0.026781944558024406, - 0.05505087971687317, - 0.02969173714518547, - -0.028447303920984268, - 0.011826466768980026, - 0.047629959881305695, - 0.017836060374975204, - 0.030722439289093018, - 0.014373427256941795, - -0.019731616601347923, - -0.010528886690735817, - 0.09963102638721466, - -0.04415366053581238, - -0.001232187612913549, - 0.039728373289108276, - 0.012414194643497467, - 0.009998729452490807, - -0.08705490082502365, - -0.01833634451031685, - 0.02830887958407402, - -0.028729084879159927, - 0.08252543210983276, - 0.05862324684858322, - -0.022307252511382103, - 0.016683407127857208, - 0.03279050439596176, - -0.002284369198605418, - -0.05492330715060234, - -0.09989649057388306, - 0.18919336795806885, - 0.04894007369875908, - 0.009525242261588573, - -0.08266939967870712, - -0.028124278411269188, - 0.06982710212469101, - -0.01275735255330801, - -0.0371808260679245, - -0.02138627879321575, - 0.041986849159002304, - 0.1095627099275589, - -0.01373211294412613, - -0.056958239525556564, - 0.021656101569533348, - 0.08172081410884857, - 0.017425764352083206, - 0.04288431629538536, - 0.09412529319524765, - 0.11123912781476974, - -0.02966512367129326, - 0.020743966102600098, - 0.058004822582006454, - 0.06339043378829956, - 0.06896809488534927, - -0.015414141118526459, - 0.052423786371946335, - -0.011913759633898735, - -0.03395117074251175, - 0.0209461972117424, - -0.025050632655620575, - -0.03093639388680458, - 0.039338916540145874, - -0.007561462931334972, - 0.029064171016216278, - 0.057590946555137634, - -0.08605705201625824, - 0.03638822212815285, - 0.017086384817957878, - 0.011760610155761242, - 0.06750627607107162, - 0.017311399802565575, - 0.02671937644481659, - 0.030181407928466797, - -0.06563965976238251, - -0.0993516594171524, - 0.04442785307765007, - -0.004955397453159094, - 0.04499300569295883, - 0.04858509823679924, - 0.042385734617710114, - -0.025584038347005844, - 0.10022928565740585, - 0.03266632556915283, - -0.02193629741668701, - 0.0061015053652226925, - -0.06473364681005478, - 0.11887188255786896, - 0.12711608409881592, - -0.0025452065747231245, - 0.021680917590856552, - -0.059343963861465454, - 0.05260802060365677, - 0.03638646379113197, - -0.11722113192081451, - -0.04973914474248886, - 0.03135228902101517, - 0.040642909705638885, - 0.03446685150265694, - 0.10699605196714401, - -0.015008322894573212, - 0.030230766162276268, - 0.06898210942745209, - -0.07640878856182098, - -0.030434798449277878, - 0.0009467800846323371, - 0.0144145917147398, - -0.06574729084968567, - 0.01355134230107069, - 0.02871314063668251, - -0.011575380340218544, - -0.03486074507236481, - 0.07009276002645493, - -0.007925139740109444, - 0.0034914433490484953, - -0.02545424923300743, - 0.022998027503490448, - 0.06354846805334091, - -0.004102764185518026, - -0.024549957364797592, - 0.024519838392734528, - 0.042749207466840744, - 0.03245797008275986, - 0.03332022204995155, - -0.0439610593020916, - -0.13172119855880737, - 0.0188288651406765, - 0.0338139608502388, - 0.05362704396247864, - -0.03647772967815399, - -0.04939907789230347, - -0.052901264280080795, - -0.049329664558172226, - 0.02882273867726326, - -0.00579820154234767, - 0.03838112950325012, - 0.032717250287532806, - -0.029096631333231926, - 0.09640783071517944, - -0.008007340133190155, - -0.0013703161384910345, - -0.02021518163383007, - -0.015804030001163483, - 0.03113214671611786, - 0.04158685728907585, - -0.047837287187576294, - -0.0662064403295517, - 0.001580905169248581, - -0.003128214506432414, - -0.022414717823266983, - -0.011353373527526855, - 0.03561578691005707, - -0.01849271170794964, - 0.028660621494054794, - -0.09624510258436203, - 0.00881007220596075, - -0.11597937345504761, - -0.04871399328112602, - 0.013783697038888931, - -0.0026244446635246277, - 0.009489571675658226, - 0.07479843497276306, - -0.0009749364107847214, - 0.04950837418437004, - -0.04377108812332153, - -0.06294356286525726, - -0.02207951806485653, - 0.06318537890911102, - 0.0710412859916687, - -0.007000393234193325, - 0.03631216287612915, - 0.04741024971008301, - 0.019181789830327034, - 0.038925912231206894, - 0.06555253267288208, - 0.08878957480192184, - -0.018117303028702736, - -0.016201388090848923, - -0.014072326943278313, - 0.11503031104803085, - 0.0418236069381237, - -0.05530969426035881, - -0.05751148983836174, - -0.015735020861029625, - -0.0547705814242363, - 0.02074793539941311, - -0.0044256290420889854, - 0.020954011008143425, - 0.02769204042851925, - 0.005833758972585201, - -0.08535482734441757, - -0.05664476007223129, - 0.03385096788406372, - -0.03923582285642624, - -0.009810577146708965, - -0.07013048976659775, - 0.04954316467046738, - 0.0873485654592514, - 0.04243951290845871, - -0.02536085806787014, - -0.027801496908068657, - -0.013402402400970459, - -0.06600793451070786, - -0.05737914890050888, - -0.01806335151195526, - 0.03436524048447609, - -0.10731378197669983, - 0.016827620565891266, - -0.053686272352933884, - 0.04782935231924057, - -0.04589269682765007, - 0.10324844717979431, - 0.017581896856427193, - -0.054719746112823486, - -0.06637399643659592, - 0.025925684720277786, - -0.0315590426325798, - 0.04078938066959381, - 0.05448117107152939, - -0.009613792411983013, - 0.02574933134019375, - -0.08420148491859436, - 0.09530393779277802, - 0.03864520788192749, - -0.03345613181591034, - -0.06460580229759216, - -0.028467323631048203, - -0.020778222009539604, - 0.03040323406457901, - 0.01706008054316044, - -0.04301028698682785, - -0.003909021615982056, - 0.02198522910475731, - -0.02423027902841568, - 0.0343119315803051, - 0.09058769047260284, - 0.04472474008798599, - -0.096591055393219 - ] - }, - "p245_298.wav": { - "name": "p245", - "embedding": [ - 0.0783153623342514, - 0.04486734792590141, - -0.03558306023478508, - 0.022604607045650482, - -0.009468507021665573, - 0.017579689621925354, - -0.1448608785867691, - 0.09454167634248734, - -0.010854416526854038, - 0.09866137057542801, - -0.08153223991394043, - 0.07843281328678131, - 0.005925238132476807, - -0.1220955103635788, - -0.022552667185664177, - 0.04597381874918938, - -0.003340328112244606, - -0.0003471421077847481, - -0.05397111549973488, - 0.002467063721269369, - 0.013333065435290337, - 0.05771683529019356, - 0.02660403586924076, - -0.044326797127723694, - 0.024812573567032814, - 0.034753669053316116, - -0.0035345316864550114, - 0.015890037640929222, - -0.004101975355297327, - 0.02681456133723259, - 0.03311733528971672, - 0.10977243632078171, - -0.02149936929345131, - -0.0034764958545565605, - 0.03331802785396576, - 0.03492150083184242, - -0.017748737707734108, - -0.10053358227014542, - -0.006926415022462606, - -0.01801607757806778, - -0.0489988848567009, - 0.0686577633023262, - 0.05895029753446579, - -0.02180906943976879, - 0.026191536337137222, - -0.006195317953824997, - -0.020656749606132507, - -0.06300091743469238, - -0.11293397098779678, - 0.1733628511428833, - 0.010862482711672783, - 0.061366863548755646, - -0.12394580990076065, - -0.013097794726490974, - 0.058895308524370193, - -0.003234550356864929, - -0.035752613097429276, - -0.07516436278820038, - 0.041185539215803146, - 0.15332958102226257, - -0.00027687568217515945, - -0.04494452476501465, - 0.030546151101589203, - 0.09159915149211884, - 0.0491509884595871, - 0.04296111315488815, - 0.10902520269155502, - 0.09630227833986282, - 0.009345638565719128, - 0.04124707728624344, - 0.0423772856593132, - 0.038456812500953674, - 0.02613762952387333, - -0.025760576128959656, - 0.02131805010139942, - -0.0170186348259449, - -0.04316383972764015, - 0.006306009367108345, - -0.020465513691306114, - -0.05683024600148201, - 0.010927809402346611, - -0.004765205085277557, - 0.02153712511062622, - 0.07214502990245819, - -0.0712527334690094, - 0.012937184423208237, - 0.06659115105867386, - -0.0567387230694294, - 0.06816545128822327, - 0.06045649200677872, - 0.0018454701639711857, - -0.011259032413363457, - -0.051385410130023956, - -0.10195751488208771, - 0.008097678422927856, - 0.0003301333636045456, - 0.024047812446951866, - 0.02176598086953163, - 0.03327599912881851, - -0.019416116178035736, - 0.08248540014028549, - -0.008758355863392353, - 0.0007432121783494949, - -0.013671837747097015, - -0.06470733880996704, - 0.1097816675901413, - 0.11527879536151886, - -0.014673611149191856, - 0.013993321917951107, - -0.04987140744924545, - -0.01517330389469862, - 0.07111507654190063, - -0.09263627976179123, - -0.050832316279411316, - 0.055070918053388596, - 0.009448597207665443, - 0.04152873903512955, - 0.11458305269479752, - 0.039318718016147614, - 0.013146838173270226, - 0.06974419206380844, - -0.10073088109493256, - -0.06746795773506165, - -0.005582009442150593, - 0.02534407004714012, - -0.060782793909311295, - 0.028066866099834442, - 0.06245073676109314, - 0.0065525611862540245, - -0.044309474527835846, - 0.05730561167001724, - 0.015031469985842705, - 0.018446076661348343, - -0.05952349305152893, - 0.02918555960059166, - 0.09582728147506714, - -0.012697113677859306, - -0.03522792458534241, - 0.03355211764574051, - 0.04821883514523506, - 0.03775961697101593, - 0.032743506133556366, - -0.02601339854300022, - -0.11340316385030746, - -0.005859032738953829, - 0.08502575010061264, - 0.054179828613996506, - -0.05415614694356918, - -0.027379555627703667, - -0.0590558797121048, - -0.03867267817258835, - 0.021324295550584793, - -0.013695325702428818, - 0.060611508786678314, - 0.03834274411201477, - -0.007643892429769039, - 0.11931717395782471, - -0.04876114800572395, - 0.03685218095779419, - -0.01933169923722744, - 0.03703108802437782, - 0.0433482751250267, - 0.037367917597293854, - -0.04029347747564316, - -0.07037602365016937, - 0.0024285546969622374, - 0.010377885773777962, - -0.022722166031599045, - -0.00872567854821682, - 0.029660653322935104, - -0.021610666066408157, - 0.0057167490012943745, - -0.08704697340726852, - 0.023718245327472687, - -0.11360763013362885, - -0.012324569746851921, - 0.034791380167007446, - -0.037861838936805725, - 0.0048785824328660965, - 0.0975361168384552, - 0.030398281291127205, - 0.02705276757478714, - -0.03759271651506424, - -0.10856139659881592, - -0.0357990600168705, - 0.059820253401994705, - 0.08740724623203278, - -0.049302391707897186, - -0.005269133485853672, - 0.0003327936865389347, - 0.026355082169175148, - -0.012095901183784008, - 0.055634740740060806, - 0.06892257183790207, - -0.040863633155822754, - -0.07823437452316284, - -0.0519237220287323, - 0.11780060827732086, - 0.06420783698558807, - -0.07833965122699738, - -0.053266607224941254, - -0.009619832038879395, - -0.045403797179460526, - -0.012149225920438766, - -0.01588856428861618, - 0.013819454237818718, - 0.062056638300418854, - -0.05083910748362541, - -0.14196781814098358, - -0.10112844407558441, - 0.03565697371959686, - -0.05574406683444977, - -0.0027304021641612053, - -0.07112748175859451, - 0.02799573540687561, - 0.046260084956884384, - 0.0164666585624218, - -0.014325562864542007, - -0.03065035678446293, - -0.039814673364162445, - -0.10131550580263138, - -0.04837861657142639, - -0.010866813361644745, - 0.015578078106045723, - -0.0769130066037178, - 5.078595131635666e-05, - -0.056136466562747955, - 0.08581120520830154, - -0.049361880868673325, - 0.11011503636837006, - 0.008481668308377266, - -0.06276503205299377, - -0.09720103442668915, - -0.01675868220627308, - -0.0160441305488348, - 0.06392525881528854, - 0.047983601689338684, - 0.021097492426633835, - 0.029247887432575226, - -0.0867052972316742, - 0.06496419757604599, - 0.07208430767059326, - -0.0005047102458775043, - -0.07958857715129852, - -0.0334341861307621, - -0.020782334730029106, - 0.040011532604694366, - -0.016867419704794884, - -0.007381606847047806, - 0.0317048579454422, - 0.025594156235456467, - -0.02639741078019142, - 0.053974978625774384, - 0.06923414766788483, - 0.0375593937933445, - -0.09193511307239532 - ] - }, - "p245_061.wav": { - "name": "p245", - "embedding": [ - 0.010503833182156086, - 0.07383543252944946, - -0.016542084515094757, - 0.012019818648695946, - -0.04151562973856926, - -0.020791402086615562, - -0.11385171115398407, - 0.06947172433137894, - -0.03628823161125183, - 0.09727707505226135, - -0.05810140073299408, - 0.09898405522108078, - -0.057805225253105164, - -0.10939942300319672, - -0.022850457578897476, - 0.036566466093063354, - -0.0534239336848259, - -0.026703137904405594, - -0.013698762282729149, - -0.06186290830373764, - 0.03921116888523102, - 0.020700370892882347, - 0.0695619136095047, - -0.05865180492401123, - -0.009902337566018105, - 0.08839148283004761, - 0.03088214434683323, - 0.023921171203255653, - 0.018199335783720016, - -0.06475703418254852, - 0.013161275535821915, - 0.03705478832125664, - 0.0007729083299636841, - -0.004861840978264809, - 0.01599164865911007, - 0.01235099509358406, - -0.009464501403272152, - 0.006483843550086021, - 0.01098025031387806, - 0.04673808813095093, - -0.05720778927206993, - 0.0529603511095047, - 0.002980251330882311, - -0.04305103421211243, - 0.06909830868244171, - -0.054810021072626114, - -0.02551485039293766, - 0.04205501079559326, - -0.06361868232488632, - 0.09851347655057907, - 0.06359386444091797, - 0.03271337226033211, - -0.05402759462594986, - -0.0011928901076316833, - 0.09332353621721268, - -0.02536720782518387, - -0.13511063158512115, - -0.033564016222953796, - 0.03294172137975693, - 0.10094667971134186, - -0.02611926943063736, - -0.023370955139398575, - 0.026872577145695686, - 0.047649916261434555, - 0.026842184364795685, - 0.0445898212492466, - 0.1110273227095604, - 0.04294699802994728, - 0.02638382837176323, - -0.016651874408125877, - 0.03973395377397537, - 0.08609452843666077, - 0.0077682435512542725, - 0.003985174931585789, - 0.022044053301215172, - -0.05459677800536156, - -0.0046559590846300125, - -0.031538791954517365, - -0.008538326248526573, - -0.05782307684421539, - -0.0910380557179451, - -0.01406343188136816, - 0.0035837190225720406, - -0.02373800054192543, - -0.003686077892780304, - 0.014293171465396881, - 0.04337034747004509, - -0.03884441405534744, - 0.05448584258556366, - 0.04829871654510498, - -0.024612754583358765, - -0.006182447075843811, - -0.017899438738822937, - -0.03282230347394943, - -0.05259358137845993, - 0.020701829344034195, - 0.06864460557699203, - 0.024832911789417267, - 0.025403568521142006, - 0.07236802577972412, - 0.06778188049793243, - 0.04925151541829109, - 0.0033265934325754642, - -0.025807548314332962, - -0.08680272102355957, - 0.05969361588358879, - 0.09965786337852478, - -0.02880961075425148, - 0.040903665125370026, - -0.016247164458036423, - 0.014681282453238964, - -0.011436587199568748, - -0.014758501201868057, - -0.04151485487818718, - -0.01939372718334198, - 0.013222092762589455, - 0.016262739896774292, - 0.07775906473398209, - 0.00627591647207737, - 0.02597089484333992, - 0.10190996527671814, - -0.04874615743756294, - -0.06950819492340088, - -0.0687536895275116, - 0.04424936696887016, - -0.05221402272582054, - 0.06808855384588242, - 0.0745353102684021, - 0.029006335884332657, - 0.03840961679816246, - 0.0714312195777893, - 0.0459996834397316, - 0.030135516077280045, - -0.023774681612849236, - -0.05253520980477333, - 0.007193325087428093, - -0.011947530321776867, - 0.0031251590698957443, - 0.12023049592971802, - 0.034215740859508514, - 0.11386828124523163, - 0.021032562479376793, - 0.019968319684267044, - -0.05792011693120003, - -0.008707597851753235, - 0.04271010681986809, - -0.004224861040711403, - -0.05100340023636818, - -0.05411183089017868, - -0.027316758409142494, - -0.05744759365916252, - -0.016456816345453262, - -0.04456716775894165, - 0.0972992479801178, - -0.011926674284040928, - -0.0006774088833481073, - 0.10733026266098022, - 0.012175491079688072, - -0.04454914107918739, - -0.05713679641485214, - -0.027568140998482704, - -0.019110843539237976, - 0.03704819083213806, - -0.13727952539920807, - -0.07754117250442505, - -0.057516977190971375, - 0.04801909625530243, - 0.009561143815517426, - 0.04344985634088516, - 0.06921812891960144, - -0.0227131936699152, - 0.01063104160130024, - 0.01005251519382, - 0.04331858456134796, - -0.03098268434405327, - -0.07494499534368515, - -0.016767974942922592, - -0.07594367861747742, - -0.045961350202560425, - 0.09026035666465759, - -0.01376914419233799, - 0.059039242565631866, - -0.010324150323867798, - -0.0952242985367775, - -0.07355916500091553, - 0.05698993057012558, - 0.007061205338686705, - -0.0304392259567976, - 0.030798139050602913, - 0.026353420689702034, - -0.05475950613617897, - 0.02391527034342289, - 0.022022049874067307, - 0.06968840956687927, - -0.0952993631362915, - 0.0018919302383437753, - -0.06795518100261688, - 0.025494331493973732, - 0.09529565274715424, - -0.06826399266719818, - -0.04033336043357849, - -0.08081422746181488, - -0.04762030020356178, - 0.04861374944448471, - -0.030655009672045708, - -0.01004729513078928, - 0.006124161183834076, - -0.031252987682819366, - -0.088677778840065, - -0.10544636845588684, - 0.07235821336507797, - -0.024289406836032867, - -0.0010815453715622425, - -0.040017180144786835, - 0.007286242675036192, - 0.009337343275547028, - 0.025132909417152405, - -0.02728910744190216, - 0.04744695872068405, - 0.0029693227261304855, - -0.03418800234794617, - 0.028190884739160538, - 0.05699702724814415, - 0.08039338886737823, - 0.03288767486810684, - -0.04579857736825943, - -0.08449687063694, - 0.033274490386247635, - -0.0187789648771286, - 0.0910448208451271, - 0.004878797102719545, - -0.035113222897052765, - -0.02455628290772438, - 0.012131564319133759, - -0.03887154906988144, - 0.04349634796380997, - 0.06392054259777069, - 0.06324782967567444, - 0.011202742345631123, - -0.061195697635412216, - 0.07890881597995758, - 0.049680642783641815, - -0.0033997371792793274, - -0.04919392615556717, - -0.008915805257856846, - -0.038483768701553345, - 0.011282350867986679, - -0.013656266033649445, - -0.06140866130590439, - 0.05136915296316147, - -0.04518759250640869, - 0.0378573015332222, - 0.07140222936868668, - 0.07738418877124786, - 0.056116946041584015, - -0.03015414997935295 - ] - }, - "p245_036.wav": { - "name": "p245", - "embedding": [ - 0.039696451276540756, - 0.07900166511535645, - -0.03502984344959259, - 0.001488078385591507, - -0.04796702787280083, - -0.007704870775341988, - -0.11515000462532043, - 0.11792300641536713, - -0.006122824735939503, - 0.12819629907608032, - -0.05480644106864929, - 0.126910999417305, - -0.03232337534427643, - -0.0947665125131607, - 0.014001257717609406, - 0.0387929305434227, - -0.026176713407039642, - -0.021547775715589523, - 0.02614351361989975, - -0.03343471884727478, - 0.04482840374112129, - 0.03203378617763519, - 0.04191741347312927, - -0.03329453244805336, - 0.014557702466845512, - 0.08128000795841217, - -0.006069991737604141, - -0.010209326632320881, - 0.0017964591970667243, - -0.04160566255450249, - 0.006297718733549118, - 0.05584024265408516, - -0.029551396146416664, - 0.0172466691583395, - 0.033043429255485535, - -0.006160011515021324, - -0.0294638741761446, - -0.03317053243517876, - 0.002704608254134655, - 0.011645063757896423, - -0.054771557450294495, - 0.07515023648738861, - 0.010668998584151268, - -0.06582660228013992, - 0.03622075170278549, - -0.019955553114414215, - -0.021793009713292122, - 0.01973731815814972, - -0.05598358064889908, - 0.13411536812782288, - 0.04202825948596001, - 0.05436961352825165, - -0.08185459673404694, - 0.009210711345076561, - 0.06650005280971527, - 0.0002536596730351448, - -0.086894690990448, - -0.029942207038402557, - 0.024715105071663857, - 0.09667101502418518, - -0.014627203345298767, - -0.054063230752944946, - 0.04994397982954979, - 0.06874984502792358, - 0.03454384580254555, - 0.03129365295171738, - 0.10296916961669922, - 0.08128376305103302, - -0.004657566547393799, - 0.014649923890829086, - 0.03687429428100586, - 0.09047475457191467, - 0.04890032485127449, - -0.0023312317207455635, - 0.007084229029715061, - -0.030093371868133545, - -0.026402411982417107, - -0.04439539834856987, - -0.0024288874119520187, - -0.059110499918460846, - -0.08051137626171112, - -0.01982063613831997, - 0.01331713330000639, - 0.03629866987466812, - 0.009104162454605103, - 0.00870920717716217, - 0.07833587378263474, - -0.05017024278640747, - 0.04939065873622894, - 0.033726178109645844, - -0.01456803735345602, - 0.009120665490627289, - -0.09196499735116959, - -0.050080977380275726, - -0.005661372095346451, - -0.014132464304566383, - 0.07505285739898682, - 0.06012466549873352, - 0.048706162720918655, - 0.04341353103518486, - 0.08402121067047119, - 0.03331269696354866, - 0.007629400584846735, - -0.040091097354888916, - -0.07908697426319122, - 0.12384488433599472, - 0.10022184252738953, - -0.06589409708976746, - 0.032079536467790604, - -0.032655153423547745, - 0.006819132715463638, - -0.004454446956515312, - -0.07505501806735992, - -0.04442037642002106, - -0.010505639016628265, - 0.020856546238064766, - 0.021828463301062584, - 0.10846095532178879, - 0.0320945680141449, - 0.05220886319875717, - 0.0971718430519104, - -0.08202537894248962, - -0.08927089720964432, - -0.04340739548206329, - 0.039753615856170654, - -0.097220778465271, - 0.09664259105920792, - 0.0757996141910553, - 0.03085213340818882, - 0.03681663051247597, - 0.07658296823501587, - 0.04002885892987251, - 0.03453121706843376, - -0.04865395277738571, - -0.00394897535443306, - 0.006425143219530582, - -0.028068479150533676, - 0.015059907920658588, - 0.07034169882535934, - 0.019843172281980515, - 0.10434575378894806, - 0.037197694182395935, - 0.009082874283194542, - -0.09497249126434326, - 0.020384294912219048, - 0.06136561930179596, - 0.01703318953514099, - -0.043061237782239914, - -0.06168171018362045, - -0.009724212810397148, - -0.056085407733917236, - -0.03192100673913956, - 0.006132389418780804, - 0.058645397424697876, - -0.008427866734564304, - 0.023568224161863327, - 0.11412405967712402, - 0.020760629326105118, - -0.005317517556250095, - -0.03144900128245354, - -0.019740229472517967, - -0.01343044824898243, - 0.05508983135223389, - -0.11658359318971634, - -0.10302060842514038, - -0.047438159584999084, - 0.028975151479244232, - 0.0046210698783397675, - 0.0543365553021431, - 0.08943154662847519, - -0.006475461646914482, - 0.005902215372771025, - -0.008919097483158112, - 0.025085752829909325, - -0.06045353785157204, - -0.08726175129413605, - -0.020090853795409203, - -0.04674510657787323, - -0.04142329469323158, - 0.0830049067735672, - -0.00825763214379549, - 0.07419272512197495, - -0.02403843402862549, - -0.06681835651397705, - -0.07453533262014389, - 0.03593842312693596, - 0.015746906399726868, - -0.06332405656576157, - 0.0056026391685009, - 0.055119022727012634, - -0.026377443224191666, - -0.0183092150837183, - 0.014950566925108433, - 0.10145875811576843, - -0.0856412798166275, - -0.014706939458847046, - -0.07549495995044708, - 0.07272934913635254, - 0.1018032357096672, - -0.07302296161651611, - -0.05466547980904579, - -0.08435799181461334, - -0.05623549595475197, - 0.00935031846165657, - -0.03244401514530182, - -0.0003330435138195753, - 0.014386954717338085, - -0.04248708486557007, - -0.08264987170696259, - -0.11466667056083679, - 0.03702050447463989, - -0.03772899881005287, - 0.002540057757869363, - -0.06888452917337418, - 0.022443683817982674, - 0.01781071349978447, - 0.02222575806081295, - -0.03691492974758148, - 0.024909881874918938, - -0.014810662716627121, - -0.021678956225514412, - 0.010898753069341183, - 0.053276997059583664, - 0.07110464572906494, - -0.015498161315917969, - -0.060730189085006714, - -0.0829211175441742, - 0.04473395645618439, - -0.046907782554626465, - 0.10802876949310303, - -0.01765967160463333, - -0.05644248425960541, - -0.0660654753446579, - -0.023356230929493904, - -0.006721619050949812, - 0.03198873996734619, - 0.06324706971645355, - 0.05243811756372452, - 0.02564788982272148, - -0.06232444941997528, - 0.08388499170541763, - 0.07024085521697998, - 0.013579219579696655, - -0.06624753028154373, - -0.049042217433452606, - -0.030707955360412598, - 0.023042382672429085, - -0.00033287331461906433, - -0.063911572098732, - 0.05250997096300125, - -0.01413326058536768, - 0.03689776360988617, - 0.0767374336719513, - 0.07504931092262268, - 0.04817044734954834, - -0.08827077597379684 - ] - }, - "p245_137.wav": { - "name": "p245", - "embedding": [ - 0.07323402166366577, - 0.04701566323637962, - -0.03407219424843788, - -0.012443309649825096, - -0.052713777869939804, - 0.05072305351495743, - -0.1369348168373108, - 0.083346888422966, - -0.029676249250769615, - 0.1251402050256729, - -0.030146399512887, - 0.10617455840110779, - 0.0004471093416213989, - -0.14881309866905212, - -0.05102582275867462, - 0.026798482984304428, - -0.06987975537776947, - -0.019881077110767365, - -0.08919119834899902, - -0.04895108938217163, - 0.028941020369529724, - 0.03658512607216835, - 0.06155029684305191, - -0.081780806183815, - 0.04772460460662842, - 0.054173119366168976, - 0.0011837980709969997, - 0.03629201650619507, - -0.005539597012102604, - -0.0769825354218483, - -0.007821701467037201, - 0.07083937525749207, - -0.07476836442947388, - -0.015395007096230984, - 0.032972149550914764, - -0.010023701936006546, - -0.01503636222332716, - -0.07573936134576797, - -0.012586395256221294, - 0.048920415341854095, - -0.022296112030744553, - 0.09835036098957062, - 0.033725909888744354, - -0.045888371765613556, - 0.01916206255555153, - 0.0004385198699310422, - 0.000893506221473217, - -0.04467454180121422, - -0.09139126539230347, - 0.1573576033115387, - 0.011268718168139458, - 0.027591580525040627, - -0.09971460700035095, - -0.055402517318725586, - 0.0914253517985344, - -0.0517367348074913, - -0.09656410664319992, - -0.04162157326936722, - 0.015442490577697754, - 0.12979888916015625, - -0.049116406589746475, - -0.04449981451034546, - 0.04587629809975624, - 0.053686946630477905, - 0.08161471784114838, - 0.0282039325684309, - 0.12598221004009247, - 0.09968308359384537, - -0.006171942222863436, - 0.0403103269636631, - 0.05260257422924042, - 0.06849610805511475, - 0.029213018715381622, - 0.006409008987247944, - 0.042101070284843445, - -0.022989381104707718, - -0.012170197442173958, - -0.04559522494673729, - -0.02409525215625763, - -0.024511262774467468, - 0.017215341329574585, - 0.016802771016955376, - 0.04515107348561287, - 0.05234968662261963, - -0.06451591849327087, - 0.03960376977920532, - 0.04394268989562988, - -0.04873551055788994, - 0.0624396950006485, - 0.06528867781162262, - 0.02384638786315918, - 0.041767656803131104, - -0.09128506481647491, - -0.09978775680065155, - 0.012783454731106758, - 0.010417213663458824, - 0.030834242701530457, - 0.01819121278822422, - 0.04190941900014877, - -0.02935558743774891, - 0.08560215681791306, - 0.07491399347782135, - -0.02291879989206791, - 0.01884651929140091, - -0.06593538820743561, - 0.11619137227535248, - 0.10952077805995941, - -0.02838185988366604, - 0.016298631206154823, - -0.04978831112384796, - 0.03408537805080414, - 0.054956674575805664, - -0.0895986557006836, - -0.0922883152961731, - 0.037310995161533356, - -0.014090909622609615, - 0.02099648304283619, - 0.12910661101341248, - -0.008333265781402588, - 0.024744190275669098, - 0.08971239626407623, - -0.06946422159671783, - -0.026211461052298546, - 0.0037510537076741457, - 0.03790688514709473, - -0.04257971793413162, - 0.03757815062999725, - 0.05519421398639679, - 0.005291100591421127, - 0.008724266663193703, - 0.08928349614143372, - 0.004024004563689232, - 0.00590260187163949, - -0.010149299167096615, - 0.00730150006711483, - 0.07397693395614624, - 0.015930086374282837, - -0.034333303570747375, - 0.09817247837781906, - 0.07742985337972641, - 0.04726383090019226, - 0.010349077172577381, - -0.038224589079618454, - -0.1082267239689827, - 0.018956340849399567, - 0.025141257792711258, - 0.05967985838651657, - -0.047370050102472305, - 0.005567436572164297, - -0.060044705867767334, - -0.06234858185052872, - 0.04380882903933525, - 0.007086709141731262, - 0.08184448629617691, - 0.007063056342303753, - -0.025985410436987877, - 0.12440069764852524, - -0.0010097082704305649, - 0.025082135573029518, - 0.004870504140853882, - 0.0020038411021232605, - 0.01643371768295765, - 0.059934407472610474, - -0.050406575202941895, - -0.0577012374997139, - -0.029048709198832512, - 0.01412963680922985, - -0.00985980499535799, - 0.06265769153833389, - 0.08610108494758606, - -0.00437965476885438, - 0.02930818684399128, - -0.06474530696868896, - 0.018012654036283493, - -0.06760760396718979, - -0.004771389067173004, - 0.011742699891328812, - -0.07271106541156769, - -0.05105860158801079, - 0.09905054420232773, - 0.008971092291176319, - 0.034508515149354935, - -0.07160092890262604, - -0.10660918056964874, - -0.04197307676076889, - 0.027732256799936295, - 0.056387901306152344, - -0.025404997169971466, - -0.00295102596282959, - 0.0391593798995018, - 0.026075223460793495, - 0.038801200687885284, - 0.08246750384569168, - 0.06608185172080994, - -0.045813582837581635, - -0.03664502501487732, - -0.04121950641274452, - 0.14050422608852386, - 0.0377991683781147, - -0.04623603820800781, - -0.0512462854385376, - -0.021551743149757385, - -0.05791545659303665, - 0.002480804920196533, - -0.0013288995251059532, - 0.03373163938522339, - 0.06470980495214462, - 0.0011280989274382591, - -0.09180772304534912, - -0.09985987842082977, - 0.06479770690202713, - -0.0658077672123909, - -0.0053179021924734116, - -0.06633488833904266, - 0.009957075119018555, - 0.07213683426380157, - 0.031549811363220215, - -0.007009602151811123, - 0.005476254969835281, - -0.012819638475775719, - -0.04475744068622589, - 0.014464026317000389, - 0.04359792545437813, - 0.01910415105521679, - -0.05417538434267044, - -0.030229883268475533, - -0.0734155997633934, - 0.06711634993553162, - -0.028289776295423508, - 0.11958017945289612, - -0.0030914433300495148, - -0.03456159681081772, - -0.06999552249908447, - 0.03639760613441467, - -0.06454180181026459, - 0.07271772623062134, - 0.09131985902786255, - 0.06695115566253662, - 0.045604173094034195, - -0.059106260538101196, - 0.09006214886903763, - 0.05803312361240387, - -0.042356938123703, - -0.08483725786209106, - -0.05335173010826111, - -0.024826427921652794, - 0.03546859323978424, - 0.026413235813379288, - -0.04585723206400871, - 0.057613927870988846, - 0.033775992691516876, - -0.013522894121706486, - 0.02359507791697979, - 0.0853094831109047, - 0.06051453948020935, - -0.07958009839057922 - ] - }, - "p245_064.wav": { - "name": "p245", - "embedding": [ - 0.008073003962635994, - 0.08285491913557053, - -0.028157172724604607, - 0.06573159992694855, - -0.0554533526301384, - -0.02481571026146412, - -0.08226963877677917, - 0.05811410769820213, - 0.01850319467484951, - 0.07986201345920563, - -0.0282637607306242, - 0.09572188556194305, - -0.032036565244197845, - -0.12506912648677826, - 0.006754709407687187, - 0.006025562062859535, - 0.02327914535999298, - 0.016029734164476395, - 0.016798008233308792, - -0.024326611310243607, - -0.02280670404434204, - 0.0013512670993804932, - -0.04506585747003555, - 0.009816441684961319, - -0.015753760933876038, - 0.009264109656214714, - -0.043210867792367935, - 0.020358748733997345, - -0.024531273171305656, - -0.022729191929101944, - -0.00346355140209198, - 0.028613679111003876, - -0.03164613991975784, - -0.015002998523414135, - 0.007012704387307167, - -0.008996935561299324, - -0.018092893064022064, - -0.021090079098939896, - -0.04626358300447464, - -0.04103551059961319, - -0.07599478960037231, - 0.009250197559595108, - 0.04560007527470589, - -0.058144696056842804, - 0.03333031386137009, - 0.021891143172979355, - -0.02973495051264763, - -0.024465270340442657, - -0.041638825088739395, - 0.07266988605260849, - 0.025158818811178207, - 0.07875867187976837, - -0.04601132124662399, - -0.022743722423911095, - 0.11506137996912003, - 0.021386640146374702, - 0.002506434917449951, - -0.020643513649702072, - -0.0041916705667972565, - 0.08226695656776428, - 0.02678918093442917, - 0.01671762950718403, - 0.041184768080711365, - 0.04360993206501007, - 0.02105596289038658, - 0.04237477481365204, - 0.054725222289562225, - 0.0538550466299057, - -0.015155108645558357, - 0.02800930291414261, - 0.06236835569143295, - 0.02802305854856968, - -0.009396242909133434, - 0.004089821130037308, - -0.012259213253855705, - 0.04935428872704506, - -0.0016519725322723389, - 0.040427833795547485, - -0.025010839104652405, - 0.0007421821355819702, - 0.0003476180136203766, - 0.02041826955974102, - 0.016220219433307648, - -0.040934011340141296, - -0.050862230360507965, - -0.028849074617028236, - 0.07131238281726837, - 0.025313757359981537, - 0.020388789474964142, - 0.012514823116362095, - 0.021862730383872986, - 0.011575905606150627, - -0.06464927643537521, - -0.037729039788246155, - 0.014027376659214497, - -0.012412749230861664, - 0.038013506680727005, - 0.009691670536994934, - 0.007364816963672638, - -0.0003252946771681309, - 0.04953968524932861, - -0.019130192697048187, - 0.03827701136469841, - 0.018272604793310165, - -0.04982520267367363, - -0.0194728784263134, - 0.022449076175689697, - 0.018033284693956375, - 0.05674382671713829, - 0.005432464182376862, - 0.05533427372574806, - 0.0824822336435318, - -0.050678398460149765, - -0.01896451786160469, - 0.038239363580942154, - 0.0547531358897686, - -0.030329927802085876, - 0.10726689547300339, - -0.004390609450638294, - 0.036274608224630356, - 0.05998578295111656, - 0.005488622933626175, - -0.035031065344810486, - -0.012115872465074062, - 0.014282059855759144, - -0.019235748797655106, - 0.06082679331302643, - 0.01668960601091385, - -0.01851656287908554, - -0.04215440899133682, - 0.047648318111896515, - -0.023941755294799805, - -0.02541382610797882, - -0.005890370812267065, - 0.03238661214709282, - -0.032256510108709335, - 0.05578060448169708, - -0.05678391084074974, - 0.01750776544213295, - 0.05285665765404701, - -0.023921141400933266, - 0.00218186411075294, - 0.007912974804639816, - -0.05279063805937767, - 0.031054846942424774, - 0.011985421180725098, - 0.016678936779499054, - 0.08475092053413391, - -0.056048065423965454, - -0.09518636763095856, - -0.04432906210422516, - 0.018017835915088654, - -0.02686208114027977, - 0.07699866592884064, - 0.07470855861902237, - 0.03309299424290657, - 0.026293829083442688, - -0.005313487723469734, - 0.014934655278921127, - 0.014928527176380157, - -0.11858431994915009, - 0.0025797300040721893, - 0.018775252625346184, - 0.012170355767011642, - -0.018563110381364822, - 0.008147730492055416, - 0.0044998470693826675, - -0.031025545671582222, - -0.01478531863540411, - 0.02612193301320076, - 0.029462894424796104, - 0.047810621559619904, - -0.13897770643234253, - 0.009146193973720074, - -0.05225842818617821, - -0.052055828273296356, - 0.022394906729459763, - 0.0005108844488859177, - -0.006495494395494461, - 0.015602083876729012, - 0.02254321239888668, - -0.01711433008313179, - -0.03826015070080757, - -0.04095692187547684, - -0.015238618478178978, - 0.004249135032296181, - 0.006023623049259186, - 0.002120460383594036, - -0.012878527864813805, - 0.0017192941159009933, - 0.022670254111289978, - 0.0069946590811014175, - 0.013229338452219963, - 0.06178675591945648, - -0.02049620822072029, - 0.008565949276089668, - 0.04393836110830307, - 0.1151999831199646, - 0.037574078887701035, - -0.07984953373670578, - -0.07641103863716125, - 0.013078344985842705, - -0.050771456211805344, - 0.03375804424285889, - -0.009442889131605625, - 0.029631327837705612, - -0.006700159981846809, - 0.009019304066896439, - 0.039935238659381866, - -0.11725741624832153, - 0.0012909658253192902, - -0.02296554110944271, - -0.05315922945737839, - -0.003896240144968033, - -0.004889799281954765, - 0.049395281821489334, - 0.006247611716389656, - -0.031720440834760666, - -0.06393852829933167, - 0.020570116117596626, - 0.018650364130735397, - 0.018874062225222588, - 0.06854256242513657, - 0.03835316002368927, - -0.009198036044836044, - -0.002077037002891302, - -0.022908898070454597, - 0.034073200076818466, - 0.006593231111764908, - 0.044001415371894836, - 0.011244134046137333, - -0.012179341167211533, - -0.07697649300098419, - 0.04772772639989853, - 0.021452302113175392, - 0.048440106213092804, - -0.029465805739164352, - 0.017431490123271942, - 0.03159251809120178, - -0.019094113260507584, - 0.11066094040870667, - 0.03656743839383125, - -0.01628035679459572, - -0.012127243913710117, - -0.009914837777614594, - -0.03556737303733826, - 0.047875288873910904, - 0.03907151520252228, - -0.04478989169001579, - -0.017625361680984497, - 0.06298432499170303, - 0.038594506680965424, - 0.07337473332881927, - 0.0686052069067955, - 0.05127863958477974, - 0.030096881091594696 - ] - }, - "p245_116.wav": { - "name": "p245", - "embedding": [ - 0.026206303387880325, - 0.0870557427406311, - -0.031800564378499985, - 0.03391792252659798, - -0.046698667109012604, - 0.08534678816795349, - -0.16658273339271545, - 0.13364169001579285, - -0.03994257003068924, - 0.13041645288467407, - -0.042279601097106934, - 0.0682499036192894, - -0.04535885527729988, - -0.1648472249507904, - -0.0011063702404499054, - 0.06920823454856873, - -0.029199155047535896, - -0.05062545835971832, - -0.041224405169487, - -0.006878157611936331, - 0.00823267363011837, - 0.03437193110585213, - -0.01196223869919777, - -0.01792658120393753, - 0.04224570095539093, - 0.052962690591812134, - -0.01605040766298771, - 0.026313968002796173, - -0.02262882888317108, - -0.04536876082420349, - -0.006420617923140526, - 0.09725066274404526, - -0.05911702662706375, - -0.0040521943010389805, - 0.03993048146367073, - 0.0038983169943094254, - -0.0029922418761998415, - -0.07162532210350037, - 0.0008092247880995274, - -0.00086886843200773, - -0.0504748560488224, - 0.09489797055721283, - 0.05033232271671295, - 0.014569630846381187, - 0.013880239799618721, - 0.02584090270102024, - -0.002059028949588537, - -0.060770247131586075, - -0.10385298728942871, - 0.17202679812908173, - 0.06102000176906586, - -0.0003504775813780725, - -0.05936667323112488, - -0.06881854683160782, - 0.08519840985536575, - 0.021892044693231583, - -0.09799736738204956, - -0.09496836364269257, - 0.08372001349925995, - 0.16316553950309753, - -0.02758689969778061, - -0.03166946396231651, - 0.0193328894674778, - 0.12465889751911163, - 0.05687375366687775, - 0.07553974539041519, - 0.05244285985827446, - 0.12438154220581055, - 0.012407002970576286, - -0.012851450592279434, - 0.05765034630894661, - 0.03135097399353981, - 0.0207177996635437, - 0.005379687529057264, - 0.03346143662929535, - -0.027114737778902054, - -0.013732386752963066, - -0.009842348285019398, - -0.01835620030760765, - -0.03842465952038765, - 0.008297521620988846, - 0.03200364112854004, - 0.016961023211479187, - 0.061113446950912476, - -0.01410306990146637, - 0.02622094377875328, - 0.0455208346247673, - -0.03591391071677208, - 0.09161274135112762, - 0.010056025348603725, - 0.0018795325886458158, - 0.049939267337322235, - -0.08770015835762024, - -0.05661017447710037, - 0.049550555646419525, - 0.01573294587433338, - 0.008452299050986767, - 0.0465301051735878, - 0.01902879774570465, - -0.01893848180770874, - 0.13692250847816467, - 0.0063081649132072926, - -0.005656961817294359, - 0.02673012763261795, - -0.08552642166614532, - 0.15257230401039124, - 0.028820201754570007, - -0.009973833337426186, - 0.0537065714597702, - -0.05198920518159866, - 0.014364134520292282, - 0.045994147658348083, - -0.14206749200820923, - -0.0830812156200409, - 0.05460478365421295, - 0.0251338891685009, - -0.05105239525437355, - 0.1529836803674698, - 0.03480285778641701, - 0.026686403900384903, - 0.11159271001815796, - -0.11851374804973602, - -0.07005777955055237, - 0.009028308093547821, - 0.06546522676944733, - -0.06755473464727402, - 0.028424758464097977, - 0.08120614290237427, - -0.03927188739180565, - 0.030569370836019516, - 0.07677066326141357, - 0.020035814493894577, - 0.025743741542100906, - 0.004887916147708893, - -0.026523731648921967, - 0.04686063155531883, - -0.015688950195908546, - -0.008490651845932007, - 0.015294539742171764, - 0.018724041059613228, - 0.06374606490135193, - -0.029174381867051125, - -0.03510284423828125, - -0.1314167082309723, - -0.01545157190412283, - 0.024854429066181183, - 0.09983950108289719, - -0.027889424934983253, - 0.004549515899270773, - -0.04875047132372856, - -0.07016092538833618, - -0.007065870799124241, - -0.0117063969373703, - 0.10565370321273804, - 4.535890184342861e-05, - -0.015448075719177723, - 0.10956123471260071, - 0.03712017089128494, - 0.016568314284086227, - -0.05109051614999771, - -0.021917346864938736, - 0.01675349846482277, - 0.04576878249645233, - -0.06387738138437271, - -0.05400563403964043, - 0.0003287973813712597, - 0.04667960852384567, - -0.008596284314990044, - 0.06346990168094635, - 0.03464750200510025, - 0.046771030873060226, - 0.005699501372873783, - -0.053875576704740524, - 0.022539041936397552, - -0.04357587918639183, - -0.03636154532432556, - 0.011438531801104546, - 0.004058046266436577, - -0.07187315821647644, - 0.10332147777080536, - 0.028414800763130188, - 0.06598779559135437, - -0.025210976600646973, - -0.04689367115497589, - -0.06525686383247375, - 0.04820077866315842, - 0.04841648414731026, - -0.052594710141420364, - 0.019348938018083572, - 0.04825716093182564, - -0.019123604521155357, - 0.008446082472801208, - 0.07624737918376923, - 0.09311379492282867, - -0.02453649416565895, - -0.004148264415562153, - -0.0666135847568512, - 0.10110478103160858, - 0.07015637308359146, - -0.0842842161655426, - -0.04048370569944382, - -0.005877007730305195, - -0.06628985702991486, - 0.010554682463407516, - -0.04181568697094917, - 0.02767411433160305, - 0.019909244030714035, - -0.019710995256900787, - -0.10630884766578674, - -0.10019253939390182, - 0.056776415556669235, - -0.09683962166309357, - 0.007209221366792917, - -0.07556276023387909, - 0.045698381960392, - 0.09420475363731384, - 0.07326105237007141, - -0.028026890009641647, - -0.04498768597841263, - 0.049674808979034424, - -0.03841136395931244, - 0.041742339730262756, - 0.09235819429159164, - 0.047276757657527924, - -0.10901515185832977, - 0.014002731069922447, - -0.06860703974962234, - 0.053145959973335266, - -0.038949355483055115, - 0.1533702313899994, - 0.03870934993028641, - -0.039243437349796295, - -0.09733320772647858, - 0.016834599897265434, - -0.033303290605545044, - 0.05384053662419319, - -0.004111143760383129, - 0.06296724081039429, - 0.08997665345668793, - -0.01389042753726244, - 0.1130770742893219, - 0.042675409466028214, - -0.016742032021284103, - -0.052376970648765564, - -0.06528536975383759, - -0.049585774540901184, - 0.05759061127901077, - 0.0047167628072202206, - -0.10972248017787933, - -0.014114035293459892, - 0.05395267903804779, - 0.014432688243687153, - 0.07244445383548737, - 0.1318526566028595, - 0.07724472880363464, - -0.11529317498207092 - ] - }, - "p245_216.wav": { - "name": "p245", - "embedding": [ - 0.005050513427704573, - 0.03837194666266441, - 0.005418553948402405, - 0.055746566504240036, - -0.050176482647657394, - -0.014155305922031403, - -0.07702336460351944, - 0.07438337802886963, - 0.008550649508833885, - 0.0816316157579422, - -0.05169358104467392, - 0.10954662412405014, - -0.03955812007188797, - -0.13056251406669617, - 0.004008145071566105, - 0.02883581444621086, - -0.014740677550435066, - 0.0015757757937535644, - 0.0018871304346248507, - -0.08889325708150864, - 0.03142702579498291, - 0.041287243366241455, - 0.10917645692825317, - -0.04542539641261101, - -0.010929431766271591, - 0.08688090741634369, - 0.019439389929175377, - 0.038496531546115875, - 0.006717031821608543, - -0.06696125864982605, - -0.017160862684249878, - 0.046849410980939865, - -0.033362679183483124, - -0.034051209688186646, - 0.017070777714252472, - -0.03092655912041664, - -0.017797861248254776, - 0.023451250046491623, - -0.005198194645345211, - 0.03770628944039345, - -0.06574392318725586, - 0.061571091413497925, - 0.004475114401429892, - -0.0355054996907711, - 0.06688785552978516, - -0.0336417555809021, - -0.04801703989505768, - 0.060571085661649704, - -0.09510727971792221, - 0.1043686494231224, - 0.08565127104520798, - -0.006477054208517075, - -0.05472811311483383, - -0.03031889721751213, - 0.06610922515392303, - -0.02342265658080578, - -0.10264177620410919, - -0.02378898113965988, - 0.03450561687350273, - 0.0723593682050705, - -0.019676538184285164, - -0.03702038154006004, - 0.02346557006239891, - 0.0585310272872448, - 0.03663717210292816, - 0.027803806588053703, - 0.08438434451818466, - 0.056078698486089706, - -0.03789341077208519, - 0.023495744913816452, - 0.013664104044437408, - 0.08113572746515274, - 0.047856103628873825, - 0.012783223763108253, - 0.007815196178853512, - -0.022541433572769165, - -0.0013378288131207228, - -0.024215053766965866, - -0.01741562969982624, - -0.033809274435043335, - -0.026879753917455673, - -0.04576704651117325, - 0.02017657272517681, - -0.023189907893538475, - -0.004947920795530081, - 0.02598796784877777, - 0.055610816925764084, - 0.0063562532886862755, - 0.038349419832229614, - 0.023640867322683334, - -0.025260746479034424, - 0.06014727056026459, - -0.053290169686079025, - -0.004640375263988972, - -0.028023306280374527, - -0.011708798818290234, - 0.048023246228694916, - 0.05608978867530823, - 0.03543567657470703, - -0.005607225000858307, - 0.08987357467412949, - 0.05642988905310631, - -0.002444575307890773, - 0.006879492662847042, - -0.08711465448141098, - 0.05988682433962822, - 0.12077635526657104, - -0.020973442122340202, - 0.05374884232878685, - -0.011692593805491924, - 0.05550151318311691, - 0.018598265945911407, - -0.056220751255750656, - -0.016013164073228836, - -0.056455619633197784, - 0.015841584652662277, - 0.014797080308198929, - 0.08970996737480164, - -0.011381561867892742, - 0.034239333122968674, - 0.12139938771724701, - -0.05488577485084534, - -0.05754374712705612, - -0.052062734961509705, - 0.027437981218099594, - -0.08927728980779648, - 0.03894751891493797, - 0.05005880817770958, - 0.0023588924668729305, - 0.033137399703264236, - 0.06590083986520767, - -0.0010675042867660522, - 0.015768742188811302, - 0.0010590851306915283, - -0.055256910622119904, - -0.010855491273105145, - -0.030183736234903336, - 0.007347285747528076, - 0.10568894445896149, - 0.02490714192390442, - 0.0780995711684227, - 0.012859819456934929, - 0.021017147228121758, - -0.08323003351688385, - 0.0134481992572546, - 0.02905542403459549, - -0.010488798841834068, - -0.0433945469558239, - -0.05058302730321884, - -0.024740807712078094, - -0.0648549348115921, - 0.04095859080553055, - -0.016681663691997528, - 0.04605083912611008, - -0.039368972182273865, - -0.017245754599571228, - 0.09159683436155319, - 0.018118780106306076, - -0.03911110758781433, - -0.03853283077478409, - -0.04979106783866882, - -0.013144823722541332, - 0.024024493992328644, - -0.14373517036437988, - -0.07408706098794937, - -0.07393872737884521, - 0.05194120854139328, - 0.03831130266189575, - 0.03749269247055054, - 0.08431114256381989, - -0.040897566825151443, - -0.015654532238841057, - -0.0046629635617136955, - 0.0029440242797136307, - -0.0365060493350029, - -0.07701775431632996, - -0.028207622468471527, - -0.07155455648899078, - -0.023582246154546738, - 0.05362280458211899, - -0.01084048580378294, - 0.05410457402467728, - -0.042400434613227844, - -0.06520429253578186, - -0.08439745754003525, - 0.017195893451571465, - 0.007366342004388571, - -0.011369919404387474, - 0.06681790947914124, - 0.07491111010313034, - -0.07899633049964905, - 0.08052435517311096, - 0.016803188249468803, - 0.08231620490550995, - -0.08814448118209839, - 0.016920704394578934, - -0.064263254404068, - 0.01689610630273819, - 0.13715393841266632, - -0.04987175390124321, - -0.07743959873914719, - -0.0721811056137085, - -0.07619887590408325, - 0.08832260221242905, - -0.019805550575256348, - -0.047732871025800705, - 0.033461734652519226, - 0.003329787403345108, - -0.051791250705718994, - -0.09765299409627914, - 0.09773095697164536, - -0.013897779397666454, - -0.013289999216794968, - -0.044936250895261765, - 0.015601358376443386, - -0.004568840377032757, - 0.03622458875179291, - -0.02787911705672741, - 0.034366000443696976, - 0.027753150090575218, - 0.0070157740265131, - 0.013481042347848415, - 0.06054134666919708, - 0.07139156758785248, - -0.01143829058855772, - -0.07067518681287766, - -0.06704524159431458, - 0.03562408685684204, - -0.00837002508342266, - 0.05289943143725395, - 0.0018538765143603086, - -0.015500355511903763, - -0.030728653073310852, - 0.05081811174750328, - -0.013012362644076347, - 0.04631124436855316, - 0.09559158980846405, - 0.060394078493118286, - -0.0059871673583984375, - -0.07505792379379272, - 0.100405752658844, - 0.02583060786128044, - -0.032470159232616425, - -0.047120265662670135, - 0.013522963039577007, - -0.04196019470691681, - -0.014827296137809753, - 0.02837984822690487, - -0.08888687938451767, - 0.024314193055033684, - -0.008817065507173538, - 0.005312844179570675, - 0.005563404411077499, - 0.0775805339217186, - 0.036363132297992706, - -0.04132216423749924 - ] - }, - "p245_326.wav": { - "name": "p245", - "embedding": [ - 0.05647645890712738, - 0.07903605699539185, - -0.004121718928217888, - 0.0019325204193592072, - -0.049081914126873016, - 0.038870666176080704, - -0.17135155200958252, - 0.15737147629261017, - -0.027951620519161224, - 0.13319209218025208, - -0.05079863220453262, - 0.11452760547399521, - 0.0022181151434779167, - -0.20568430423736572, - -0.011569373309612274, - 0.05091247707605362, - -0.03208211064338684, - -0.03403328359127045, - -0.02147858217358589, - -0.04425549507141113, - 0.04236111789941788, - 0.05011980980634689, - 0.02916918322443962, - 0.0011963311117142439, - 0.022949669510126114, - 0.06001188978552818, - 0.00044258800335228443, - 0.03015023097395897, - -0.0040679313242435455, - -0.0348568819463253, - -0.03410216420888901, - 0.09089004993438721, - -0.03857149928808212, - -0.013817212544381618, - 0.04207659885287285, - -0.03440301492810249, - -0.00778503343462944, - -0.0743178129196167, - -0.029665200039744377, - 0.013971026986837387, - -0.04077344760298729, - 0.0804327130317688, - 0.03363679349422455, - -0.004382612183690071, - 0.061580829322338104, - 0.006162175443023443, - -0.01832357794046402, - -0.04825931787490845, - -0.11529036611318588, - 0.151228129863739, - 0.08180355280637741, - 0.009078157134354115, - -0.07779133319854736, - -0.044410672038793564, - 0.10451439023017883, - -0.01526350062340498, - -0.09601058810949326, - -0.03452193737030029, - 0.06472700834274292, - 0.14778700470924377, - -0.031788721680641174, - -0.03927962854504585, - 0.054874569177627563, - 0.11718955636024475, - 0.0390625074505806, - 0.07301878184080124, - 0.09164915978908539, - 0.09407659620046616, - -0.039267901331186295, - 0.012233918532729149, - 0.03642059117555618, - 0.05842337757349014, - 0.0138986362144351, - -0.027262387797236443, - 0.02389431558549404, - 0.004721355624496937, - -0.020589269697666168, - -0.00980563648045063, - -0.014243396930396557, - -0.007784364279359579, - -0.00384308397769928, - 0.00722363218665123, - -0.003884421195834875, - 0.033975034952163696, - -0.04485015198588371, - 0.04347986727952957, - 0.031524911522865295, - 0.0033555100671947002, - 0.0774640440940857, - 0.024448400363326073, - 0.03461942449212074, - 0.06385176628828049, - -0.07538408041000366, - -0.07524696737527847, - 0.0495070219039917, - 0.009413221850991249, - 0.010432607494294643, - 0.07613398879766464, - 0.037244245409965515, - -0.031528618186712265, - 0.12774954736232758, - 0.0625736266374588, - -0.02060304768383503, - 0.0313524454832077, - -0.09481717646121979, - 0.1129370629787445, - 0.09118568897247314, - -0.031262971460819244, - 0.06947764754295349, - -0.05978141352534294, - 0.05725526809692383, - 0.047938309609889984, - -0.12872180342674255, - -0.0648694857954979, - 0.0469001941382885, - 0.0385744608938694, - -0.008684594184160233, - 0.14922146499156952, - 0.011114565655589104, - 0.04434294253587723, - 0.10491957515478134, - -0.07646625488996506, - -0.06805442273616791, - -0.019770199432969093, - 0.07203864306211472, - -0.08883814513683319, - 0.07083283364772797, - 0.07794561982154846, - -0.01631910912692547, - 0.016206717118620872, - 0.06730979681015015, - -0.011082170531153679, - 0.010066624730825424, - -0.014413034543395042, - -0.023694686591625214, - 0.02766743116080761, - -0.02585180476307869, - -0.005592920817434788, - 0.020905254408717155, - 0.031094839796423912, - 0.03175541013479233, - 0.001233138027600944, - -0.029830869287252426, - -0.12184932082891464, - 0.010508127510547638, - 0.01802799664437771, - 0.07637999951839447, - -0.015570408664643764, - -0.029947910457849503, - -0.04754545912146568, - -0.06413667649030685, - -0.016748948022723198, - -0.015571588650345802, - 0.06889452040195465, - -0.015651628375053406, - 0.011496755294501781, - 0.08591806143522263, - 0.04651890695095062, - 0.014679962769150734, - -0.01411455124616623, - -0.04216204211115837, - 0.01124353613704443, - 0.049257613718509674, - -0.07660109549760818, - -0.0668872818350792, - -0.03297725319862366, - 0.039453309029340744, - -0.0196552574634552, - 0.040541429072618484, - 0.041925571858882904, - 0.015136521309614182, - 0.020173950120806694, - -0.10130882263183594, - 0.04977213591337204, - -0.10537748038768768, - -0.06801893562078476, - -0.0028433194383978844, - 0.006322941742837429, - -0.023407211527228355, - 0.08147451281547546, - 0.016330068930983543, - 0.05409392714500427, - -0.030439695343375206, - -0.06312473863363266, - -0.0732867568731308, - 0.03937825188040733, - 0.08545289933681488, - -0.022739550098776817, - 0.04721982777118683, - 0.048184268176555634, - -0.029300507158041, - 0.046093251556158066, - 0.054711490869522095, - 0.0953032597899437, - -0.011328532360494137, - 0.02001500129699707, - -0.06193692237138748, - 0.08260598033666611, - 0.08038806170225143, - -0.0836341604590416, - -0.08670918643474579, - -0.024671923369169235, - -0.06764788180589676, - 0.03385632485151291, - -0.0028617912903428078, - 0.015496130101382732, - 0.029228515923023224, - 0.00102093699388206, - -0.10297652333974838, - -0.08681529015302658, - 0.06565834581851959, - -0.05890960618853569, - -7.892772555351257e-05, - -0.08781218528747559, - 0.052917592227458954, - 0.1129583939909935, - 0.020902689546346664, - -0.026498064398765564, - -0.05960073322057724, - 0.021304255351424217, - -0.008080968633294106, - 0.012233974412083626, - 0.04004616290330887, - 0.05252767726778984, - -0.11715561151504517, - 0.008802996948361397, - -0.081198550760746, - 0.0649220198392868, - -0.043660055845975876, - 0.1275567263364792, - 0.02994544804096222, - -0.04751164838671684, - -0.1005706787109375, - 0.037465181201696396, - 0.010169055312871933, - 0.04947688430547714, - 0.01565558835864067, - 0.0547947995364666, - 0.04639807343482971, - -0.07283086329698563, - 0.08394279330968857, - 0.04525873064994812, - -0.04548519104719162, - -0.07351969927549362, - -0.017760049551725388, - -0.023599453270435333, - 0.039142947643995285, - 0.0019877138547599316, - -0.08344948291778564, - -0.036214396357536316, - 0.02449866198003292, - -0.008161312900483608, - 0.0730876475572586, - 0.12449346482753754, - 0.04325075075030327, - -0.14535921812057495 - ] - }, - "p245_419.wav": { - "name": "p245", - "embedding": [ - 0.06083516404032707, - 0.11662372946739197, - -0.010951412841677666, - 0.0263645201921463, - -0.0674663782119751, - 0.07690811157226562, - -0.13070333003997803, - 0.13485047221183777, - -0.03932299092411995, - 0.1097576692700386, - -0.04920841380953789, - 0.13261674344539642, - -0.01585199125111103, - -0.17799976468086243, - -0.037467412650585175, - 0.07317551970481873, - -0.04008955508470535, - -0.0023596957325935364, - -0.030376046895980835, - -0.007567227352410555, - 0.010918810963630676, - 0.007402253802865744, - 0.06254812330007553, - -0.012820769101381302, - 0.05959368497133255, - 0.05872346833348274, - 0.02781469002366066, - 0.07284603267908096, - 0.03543016314506531, - -0.03931150212883949, - -0.04573261737823486, - 0.09794783592224121, - -0.043906599283218384, - 0.01869359239935875, - 0.07258836925029755, - -0.002346000401303172, - 0.006400824524462223, - -0.07021138072013855, - -0.008998343721032143, - 0.006079293321818113, - -0.011671755462884903, - 0.08647403120994568, - 0.053747326135635376, - -0.02551126480102539, - 0.02642642892897129, - 0.03566354513168335, - -0.00420792680233717, - -0.047181226313114166, - -0.11689212918281555, - 0.15690991282463074, - 0.03090955875813961, - 0.005013628862798214, - -0.0859299749135971, - -0.08353278785943985, - 0.10580959916114807, - -0.016131579875946045, - -0.10650736093521118, - -0.0424816831946373, - 0.07766459882259369, - 0.15099643170833588, - -0.02301827259361744, - -0.0205608569085598, - 0.0033584285993129015, - 0.13728797435760498, - 0.04627763107419014, - 0.10518422722816467, - 0.05480710417032242, - 0.1170174852013588, - -0.010952591896057129, - 0.04857170954346657, - 0.05849912017583847, - 0.07163064926862717, - 0.009242474101483822, - 0.013024954125285149, - 0.014280444011092186, - -0.026946572586894035, - -0.01150105893611908, - 0.022526027634739876, - -0.012215487658977509, - -0.025782596319913864, - -0.031099211424589157, - 0.015242155641317368, - 0.010931520722806454, - 0.012196353636682034, - -0.026906870305538177, - 0.07545508444309235, - 0.010470365174114704, - -0.0011720983311533928, - 0.06510636955499649, - 0.04995344579219818, - -0.009989118203520775, - 0.05351223051548004, - -0.053027283400297165, - -0.1062372475862503, - 0.009820534847676754, - -0.0058873724192380905, - 0.04402993246912956, - 0.0660303458571434, - 0.02297598123550415, - -0.00495131453499198, - 0.09830664098262787, - 0.09491933882236481, - -0.008639329113066196, - 0.03967539966106415, - -0.06774254143238068, - 0.1321856677532196, - 0.06997360289096832, - 0.0021841833367943764, - 0.06331697851419449, - -0.04716039076447487, - 0.07264742255210876, - 0.08234654366970062, - -0.13311713933944702, - -0.08550317585468292, - 0.019442839547991753, - 0.019908394664525986, - -0.019610024988651276, - 0.10110601782798767, - -0.01835044100880623, - 0.028228241950273514, - 0.09351484477519989, - -0.07935181260108948, - -0.06512089818716049, - -0.012635830789804459, - 0.037400390952825546, - -0.06374944746494293, - 0.027713490650057793, - 0.0608680322766304, - -0.03684769198298454, - -0.00977357104420662, - 0.08218265324831009, - 0.016834445297718048, - 0.015206827782094479, - 0.06292486190795898, - -0.046363115310668945, - 0.024377569556236267, - -0.015522792935371399, - 0.020801743492484093, - 0.06598635017871857, - 0.057184718549251556, - 0.04022335261106491, - 0.0031346192117780447, - -0.029957424849271774, - -0.11696556955575943, - 0.0007094676839187741, - 0.058494724333286285, - 0.08337339758872986, - -0.02051680162549019, - -0.03961547464132309, - -0.026886215433478355, - -0.0662282332777977, - 0.023662175983190536, - 0.020926430821418762, - 0.08748117089271545, - -0.026798447594046593, - -0.01203005202114582, - 0.09355267137289047, - 0.017791345715522766, - -0.004080181010067463, - -0.05586542934179306, - -0.02533883973956108, - 0.04271090030670166, - 0.03122773766517639, - -0.09068462252616882, - -0.06610505282878876, - 0.008217401802539825, - 0.01269354298710823, - -0.04585854336619377, - 0.033451635390520096, - 0.03700171411037445, - 0.0045049479231238365, - 0.05514219403266907, - -0.03782859444618225, - 0.0029868311248719692, - -0.10349141061306, - -0.050935838371515274, - -0.013891038484871387, - -0.007841261103749275, - -0.038354843854904175, - 0.08054852485656738, - 0.03754604607820511, - 0.07043623924255371, - 0.009298709221184254, - -0.04432382062077522, - -0.05677574872970581, - 0.06236385926604271, - 0.0651523619890213, - 0.01677655056118965, - 0.060372285544872284, - 0.04500025138258934, - -0.021298842504620552, - 0.06054048612713814, - 0.07007988542318344, - 0.06017880141735077, - -0.031840041279792786, - -0.009376992471516132, - -0.08214021474123001, - 0.07381021231412888, - 0.09016189724206924, - -0.12650716304779053, - -0.07929831743240356, - -0.03434703126549721, - -0.04745608940720558, - 0.020430151373147964, - -0.03529493510723114, - 0.007513072807341814, - 0.033408813178539276, - -0.010800879448652267, - -0.08751987665891647, - -0.1251140981912613, - 0.08608241379261017, - -0.08125439286231995, - 0.006926291156560183, - -0.0435793474316597, - 0.04188838601112366, - 0.08625149726867676, - 0.02780303545296192, - -0.018457993865013123, - -0.006067521870136261, - 0.052661895751953125, - -0.057967767119407654, - -0.017828509211540222, - 0.04688819870352745, - 0.02235068380832672, - -0.09449154883623123, - 0.03194766864180565, - -0.05927123874425888, - 0.05683661997318268, - -0.04885485768318176, - 0.1955493539571762, - 0.006093400530517101, - -0.05609149485826492, - -0.07668501883745193, - 0.018956057727336884, - -0.06362532824277878, - 0.03209010884165764, - 0.03578523173928261, - 0.06080184131860733, - 0.008849730715155602, - -0.06689353287220001, - 0.13770708441734314, - 0.02647826075553894, - -0.05171520262956619, - -0.07367865741252899, - -0.03191560506820679, - -0.03901107236742973, - 0.05744992196559906, - 0.012534620240330696, - -0.08805913478136063, - -0.02861597016453743, - 0.030343791469931602, - -0.02510196343064308, - 0.06250257790088654, - 0.1583583652973175, - 0.07638853788375854, - -0.08378622680902481 - ] - }, - "p245_340.wav": { - "name": "p245", - "embedding": [ - 0.06639134883880615, - 0.08019162714481354, - -0.0027581891044974327, - 0.004180664662271738, - -0.030272439122200012, - 0.048977553844451904, - -0.1245986744761467, - 0.1365082561969757, - 0.009521890431642532, - 0.10858672857284546, - -0.09621915221214294, - 0.09146901220083237, - -0.03681021183729172, - -0.13924184441566467, - -0.007102347910404205, - 0.042863357812166214, - -0.03392926603555679, - -0.022205114364624023, - -0.038932789117097855, - -0.008115699514746666, - 0.015234426595270634, - 0.007234741002321243, - 0.01680072769522667, - 0.008193664252758026, - 0.020926427096128464, - 0.04164732247591019, - -0.015389865264296532, - 0.0136415995657444, - 0.008672126568853855, - -0.005748657509684563, - 0.014228813350200653, - 0.0760236456990242, - -0.04467058554291725, - 0.03631991893053055, - 0.07519757002592087, - 0.015932073816657066, - -0.023643437772989273, - -0.060222700238227844, - -0.013411266729235649, - -0.0013590147718787193, - -0.040331389755010605, - 0.07436111569404602, - 0.030003592371940613, - -0.02226611040532589, - 0.03718755394220352, - 0.043628811836242676, - -0.010191012173891068, - -0.03746765851974487, - -0.09806478023529053, - 0.13987596333026886, - 0.039679620414972305, - 0.010337457992136478, - -0.10140713304281235, - -0.029269620776176453, - 0.06586898863315582, - -0.02568648010492325, - -0.08333948999643326, - -0.0408974215388298, - 0.07074789702892303, - 0.10099364072084427, - -0.020467672497034073, - -0.04077022895216942, - -0.004249453544616699, - 0.08768243342638016, - 0.039876539260149, - 0.05888636037707329, - 0.07596106827259064, - 0.12785689532756805, - -0.03381903097033501, - 0.0382893830537796, - 0.06609951704740524, - 0.03227633982896805, - 0.08410327136516571, - 0.004174867644906044, - 0.01832503266632557, - -0.019428031519055367, - -0.015371739864349365, - 0.007760817185044289, - -0.02981926128268242, - -0.022213822230696678, - -0.015078537166118622, - -0.009039074182510376, - 0.006208865903317928, - 0.04495428502559662, - -0.014489944092929363, - 0.0324760302901268, - 0.04820657894015312, - -0.005023290403187275, - 0.07005922496318817, - 0.04904730245471001, - -0.008960306644439697, - 0.04829821735620499, - -0.08658397197723389, - -0.09277187287807465, - 0.013114173896610737, - -0.0337505042552948, - 0.04326009750366211, - 0.04207330942153931, - 0.039886631071567535, - 0.007571110036224127, - 0.10040537267923355, - 0.03025638870894909, - -0.006090020295232534, - 0.011271117255091667, - -0.09047084301710129, - 0.12773479521274567, - 0.07634005695581436, - -0.03252033144235611, - 0.014107977971434593, - -0.04958254098892212, - 0.03959175571799278, - 0.06129565089941025, - -0.09590176492929459, - -0.03559233248233795, - 0.028872815892100334, - 0.016722846776247025, - 0.00038526952266693115, - 0.10121827572584152, - 0.004214008338749409, - 0.02676658146083355, - 0.09626264870166779, - -0.08186472207307816, - -0.03469136729836464, - 0.007905438542366028, - 0.017963996157050133, - -0.05624501407146454, - 0.04268525540828705, - 0.04294935241341591, - 0.019407492130994797, - 0.008044121786952019, - 0.08362578600645065, - 0.01402804534882307, - -0.0015495724510401487, - -0.02666974812746048, - 0.00781327486038208, - 0.04793216660618782, - -0.01652440056204796, - 0.00012958655133843422, - 0.03809443861246109, - 0.05035661906003952, - 0.041099101305007935, - 0.0405113659799099, - -0.02772117219865322, - -0.09168410301208496, - 0.00730043975636363, - 0.052525199949741364, - 0.06806518137454987, - -0.03680209070444107, - -0.023750513792037964, - -0.022470341995358467, - -0.04228659346699715, - 0.024037525057792664, - 0.0025971680879592896, - 0.04648330435156822, - 0.010084804147481918, - -0.012208247557282448, - 0.10476034134626389, - 0.012795300222933292, - 0.0004179964307695627, - -0.06421824544668198, - -0.024929407984018326, - 0.0037254979833960533, - 0.05674167722463608, - -0.10214373469352722, - -0.061027493327856064, - -0.008299363777041435, - 0.012122754007577896, - -0.019059723243117332, - 0.03881477564573288, - 0.05121390521526337, - -0.007847309112548828, - 0.014536220580339432, - -0.054082807153463364, - 0.008495871908962727, - -0.09904608130455017, - -0.08127027004957199, - 0.013614809140563011, - -0.015359293669462204, - 0.00932619720697403, - 0.06560306251049042, - -0.00076671177521348, - 0.051303550601005554, - -0.02514202520251274, - -0.0811050534248352, - -0.05205173045396805, - 0.0779341459274292, - 0.04712040349841118, - -0.03177156671881676, - 0.040250204503536224, - 0.05301342159509659, - -0.030997931957244873, - 0.02893413044512272, - 0.05376358702778816, - 0.10341478139162064, - -0.0588308721780777, - 0.01917843706905842, - -0.055761415511369705, - 0.08098762482404709, - 0.07878062129020691, - -0.07567794620990753, - -0.08167435228824615, - -0.036413874477148056, - -0.020301852375268936, - 0.005011129193007946, - -0.03511064499616623, - -0.007393251173198223, - 0.02708134427666664, - -0.027660030871629715, - -0.06989926844835281, - -0.08587639778852463, - 0.04238252341747284, - -0.05383865535259247, - 0.020441412925720215, - -0.07664134353399277, - 0.0404881127178669, - 0.0507473461329937, - 0.012512242421507835, - -0.03588709980249405, - 0.014069817960262299, - 0.013960480690002441, - -0.035563401877880096, - -0.04448779299855232, - 0.01059906929731369, - 0.026837708428502083, - -0.07180899381637573, - -0.025497715920209885, - -0.045538775622844696, - 0.060949455946683884, - -0.032372038811445236, - 0.13015858829021454, - -0.005669048521667719, - -0.04213802143931389, - -0.04043497517704964, - -0.02032424882054329, - -0.02200600691139698, - 0.0392804890871048, - 0.03568727523088455, - 0.040386863052845, - 0.02337987907230854, - -0.03212041035294533, - 0.11466336995363235, - 0.03853045403957367, - -0.027079515159130096, - -0.0475112609565258, - -0.04738258570432663, - -0.04195820912718773, - 0.0007492341101169586, - -0.0158979631960392, - -0.07680543512105942, - 0.014782892540097237, - 0.004984106868505478, - -0.01322584692388773, - 0.033086612820625305, - 0.11723743379116058, - 0.07080477476119995, - -0.0995333269238472 - ] - }, - "p245_239.wav": { - "name": "p245", - "embedding": [ - 0.07127400487661362, - 0.019093776121735573, - 0.01414394099265337, - -0.011523932218551636, - -0.013843409717082977, - 0.0429999902844429, - -0.11181488633155823, - 0.09210527688264847, - -0.051988907158374786, - 0.06096595153212547, - -0.08969350904226303, - 0.08204600214958191, - 0.019030727446079254, - -0.12784619629383087, - -0.06960482895374298, - 0.026802966371178627, - -0.022742750123143196, - -0.0012724511325359344, - -0.05044564977288246, - -0.024079613387584686, - 0.022867467254400253, - 0.059336770325899124, - 0.03110773302614689, - -0.01116505078971386, - 0.008191319182515144, - 0.05949847400188446, - 0.027810193598270416, - 0.043228629976511, - 0.0029876260086894035, - -0.005984343588352203, - 0.0005563944578170776, - 0.09297096729278564, - -0.024394700303673744, - -0.02786426432430744, - 0.03871412202715874, - -0.0035634443629533052, - 0.027407187968492508, - -0.09005075693130493, - -0.02802146226167679, - 0.024221867322921753, - -0.058861080557107925, - 0.06764927506446838, - 0.06804198026657104, - 0.017803382128477097, - 0.015552683733403683, - 0.012702573090791702, - 0.004298015497624874, - -0.06711240112781525, - -0.10869817435741425, - 0.16304926574230194, - 0.0069725047796964645, - 0.03469327092170715, - -0.10918616503477097, - -0.004171609878540039, - 0.0829123854637146, - -0.007965498603880405, - -0.03523474186658859, - -0.031712256371974945, - 0.03830372542142868, - 0.14346832036972046, - 0.01051875576376915, - -0.0437149703502655, - 0.04311894625425339, - 0.08204641193151474, - 0.014975320547819138, - 0.020011013373732567, - 0.1371983289718628, - 0.08168377727270126, - 5.484931170940399e-05, - 0.03883256018161774, - 0.03779157996177673, - 0.04149949178099632, - 0.016846805810928345, - -0.036675140261650085, - 0.03393048048019409, - -0.007770964875817299, - -0.036692384630441666, - 0.011459278874099255, - -0.03477047011256218, - -0.03154977783560753, - 0.015536344610154629, - 0.016264664009213448, - 0.021259237080812454, - 0.044192470610141754, - -0.07296409457921982, - 0.05625876039266586, - -0.004139753058552742, - 0.0060454062186181545, - 0.0600721500813961, - 0.05596785992383957, - 0.01783670112490654, - -0.0015761107206344604, - -0.030506260693073273, - -0.09027876704931259, - -0.004364637657999992, - 0.007507472764700651, - 0.027169086039066315, - 0.03355260565876961, - 0.02715018205344677, - -0.03729039430618286, - 0.08606458455324173, - -0.007123356685042381, - 0.004398429300636053, - -0.01685267686843872, - -0.06783889979124069, - 0.07272452861070633, - 0.11239971965551376, - -0.004071911796927452, - 0.022723225876688957, - -0.047756996005773544, - 0.012102460488677025, - 0.0588613897562027, - -0.0905846357345581, - -0.05410899221897125, - 0.045872077345848083, - 0.03321833163499832, - 0.06676512211561203, - 0.11658039689064026, - -0.008802798576653004, - 0.02088093012571335, - 0.04114298149943352, - -0.06236909329891205, - -0.026366010308265686, - 0.0023633111268281937, - 0.008877340704202652, - -0.012683948501944542, - 0.02095046080648899, - 0.02316000498831272, - 0.034441880881786346, - -0.05924255773425102, - 0.06334992498159409, - -0.004052160307765007, - 0.002737640403211117, - -0.04595591500401497, - 0.027514228597283363, - 0.07666558772325516, - 0.00889552477747202, - -0.025774721056222916, - 0.038250602781772614, - 0.07810305058956146, - 0.007095523178577423, - 0.04939836636185646, - -0.06631563603878021, - -0.10145246982574463, - -0.029270604252815247, - 0.03936555236577988, - 0.04891711845993996, - -0.027486711740493774, - -0.053716253489255905, - -0.07629136741161346, - 0.005359183996915817, - -0.01069799717515707, - 0.007228119298815727, - 0.05622076243162155, - 0.044690702110528946, - -0.012043043971061707, - 0.07024528086185455, - -0.03508200868964195, - 0.027698000892996788, - -0.011489249765872955, - 0.010456315241754055, - 0.01987171545624733, - 0.025585021823644638, - 0.016467289999127388, - -0.07188097387552261, - 0.008071591146290302, - -0.001341152936220169, - -0.01675121672451496, - -0.005555272102355957, - 0.01658037304878235, - -0.018899204209446907, - -0.0030862707644701004, - -0.11138496547937393, - 0.033861398696899414, - -0.10947717726230621, - -0.002798810601234436, - 0.056818753480911255, - -0.021806513890624046, - -0.013877428136765957, - 0.08745700120925903, - 0.03198591619729996, - 0.033464930951595306, - -0.015329709276556969, - -0.08588293939828873, - -0.005722682923078537, - 0.03773140162229538, - 0.06973476707935333, - -0.007243748754262924, - 0.010962575674057007, - -0.0011178664863109589, - 0.022056449204683304, - 0.058426182717084885, - 0.056818168610334396, - 0.032578226178884506, - -0.042369045317173004, - -0.06312602758407593, - 0.010349487885832787, - 0.10465070605278015, - -0.012116104364395142, - -0.06008843332529068, - -0.05170039087533951, - 0.019996510818600655, - -0.042729154229164124, - 0.014916767366230488, - 0.014680233784019947, - 0.03672060742974281, - 0.05459703505039215, - -0.013234852813184261, - -0.11752871423959732, - -0.03486056253314018, - 0.03271418809890747, - -0.07190996408462524, - -0.008984608575701714, - -0.0554688386619091, - 0.02521122246980667, - 0.11016703397035599, - -0.001111089251935482, - 0.02533961459994316, - -0.035138338804244995, - -0.029855214059352875, - -0.08012183010578156, - -0.057451412081718445, - -0.030463306233286858, - 0.028177790343761444, - -0.04955669492483139, - 0.005125638097524643, - -0.07297259569168091, - 0.058610301464796066, - -0.03174437955021858, - 0.07638567686080933, - 0.02632550150156021, - -0.06413320451974869, - -0.08980400860309601, - 0.0011020172387361526, - -0.016635259613394737, - 0.05730810388922691, - 0.0527595616877079, - 0.012529173865914345, - 0.017594855278730392, - -0.07702326774597168, - 0.08198077231645584, - 0.06108960509300232, - -0.06026972830295563, - -0.07305431365966797, - -0.01985214650630951, - 0.012401393614709377, - 0.028201133012771606, - -0.0014108233153820038, - 0.0041879042983055115, - 0.0209663063287735, - 0.026940345764160156, - -0.011645923368632793, - 0.06098298728466034, - 0.07873081415891647, - 0.036621641367673874, - -0.07907790690660477 - ] - }, - "p245_227.wav": { - "name": "p245", - "embedding": [ - 0.06037134677171707, - 0.08570896089076996, - -0.019702520221471786, - 0.022366613149642944, - -0.07531517744064331, - 0.07544559985399246, - -0.12379723787307739, - 0.14445246756076813, - -0.04340231418609619, - 0.14070409536361694, - -0.07161542028188705, - 0.1391201764345169, - -0.0004176038783043623, - -0.18650177121162415, - -0.0181155763566494, - 0.03891553357243538, - -0.03167455270886421, - -0.005392352119088173, - -0.053561482578516006, - -0.029414039105176926, - 0.04016154631972313, - 0.029714740812778473, - 0.035814691334962845, - -0.023127835243940353, - 0.02899923175573349, - 0.06704011559486389, - -0.010245775803923607, - 0.034223780035972595, - 0.012145204469561577, - -0.07225147634744644, - -0.061436425894498825, - 0.10887479782104492, - -0.06607499718666077, - 0.005742373876273632, - 0.0644531399011612, - -0.03770455718040466, - -0.02444148249924183, - -0.06412821263074875, - -0.02814031019806862, - 0.0045563047751784325, - -0.0350966602563858, - 0.06708647310733795, - 0.034414179623126984, - -0.023326324298977852, - 0.05697493627667427, - 0.015522249042987823, - -0.011106668971478939, - -0.04738255962729454, - -0.08933813869953156, - 0.1410139501094818, - 0.06501325964927673, - -0.015082523226737976, - -0.07161733508110046, - -0.0435834676027298, - 0.1068471223115921, - -0.017745455726981163, - -0.12056022882461548, - -0.030402742326259613, - 0.07582388818264008, - 0.14390461146831512, - -0.039118990302085876, - -0.028490055352449417, - 0.029065797105431557, - 0.08872385323047638, - 0.04287610575556755, - 0.10764962434768677, - 0.08694794028997421, - 0.10373049974441528, - -0.011214769445359707, - 0.056350044906139374, - 0.03859269618988037, - 0.06862278282642365, - 0.04696699604392052, - -0.031149927526712418, - 0.0350484699010849, - -0.008445067331194878, - -0.025201544165611267, - -0.015529055148363113, - -0.028943222016096115, - -0.0017155238892883062, - -0.003591958899050951, - 0.006237707566469908, - 0.040478311479091644, - 0.0066591971553862095, - -0.04383482038974762, - 0.07017461955547333, - 0.028217725455760956, - -0.005691654048860073, - 0.05217348039150238, - 0.03057531639933586, - -0.007049663458019495, - 0.055375583469867706, - -0.09654393792152405, - -0.10485202074050903, - 0.031433381140232086, - 0.0061244722455739975, - -0.0027027763426303864, - 0.0787169486284256, - 0.04314332455396652, - -0.012910754419863224, - 0.1122114434838295, - 0.06743180751800537, - -0.010364268906414509, - 0.044879235327243805, - -0.0835464745759964, - 0.1287938952445984, - 0.09315474331378937, - -0.019612416625022888, - 0.0631938949227333, - -0.07716260105371475, - 0.10375265777111053, - 0.057239778339862823, - -0.14380934834480286, - -0.060594379901885986, - 0.01816524751484394, - -0.013938801363110542, - -0.02389213815331459, - 0.1250602751970291, - -0.022790445014834404, - 0.038707759231328964, - 0.10168983042240143, - -0.08606225252151489, - -0.053587380796670914, - -0.019488949328660965, - 0.048445168882608414, - -0.085906982421875, - 0.0631561428308487, - 0.03454866260290146, - -0.018750105053186417, - 0.022732049226760864, - 0.08373497426509857, - -0.019818153232336044, - -0.012598307803273201, - 0.03540262207388878, - -0.039321206510066986, - 0.0159012321382761, - -0.02145484834909439, - 0.0023860055953264236, - 0.039884619414806366, - 0.03538494557142258, - 0.04765427112579346, - -0.020397935062646866, - -0.01177804172039032, - -0.08741892129182816, - 0.01649581827223301, - 0.02263766899704933, - 0.07652141153812408, - -0.002356482669711113, - -0.006948956288397312, - -0.042637523263692856, - -0.0931013897061348, - 0.013425029814243317, - -0.020280778408050537, - 0.0697951465845108, - -0.018908970057964325, - 0.024380605667829514, - 0.08535847067832947, - 0.05487808585166931, - 0.004974113777279854, - -0.0680510550737381, - -0.029298128560185432, - 0.017211752012372017, - 0.06064422428607941, - -0.0817132443189621, - -0.06587617844343185, - -0.01283592451363802, - 0.008852152153849602, - -0.03935614973306656, - 0.04913647100329399, - 0.04603557661175728, - 0.030678432434797287, - 0.04446561634540558, - -0.09261421114206314, - 0.010217836126685143, - -0.11238285899162292, - -0.05385879427194595, - -0.018265459686517715, - -0.0251108817756176, - -0.03299194574356079, - 0.07536908239126205, - 0.01846587099134922, - 0.04141339287161827, - -0.019112002104520798, - -0.05137632042169571, - -0.07393202185630798, - 0.05355052277445793, - 0.055620186030864716, - -0.01335783489048481, - 0.04116807132959366, - 0.0487552247941494, - -0.036438003182411194, - 0.058290984481573105, - 0.07508772611618042, - 0.08659902215003967, - -0.015032120048999786, - 0.022882547229528427, - -0.06408246606588364, - 0.10252620279788971, - 0.09582817554473877, - -0.08702091872692108, - -0.10179796069860458, - -0.02871435508131981, - -0.07349397987127304, - 0.03968850523233414, - -0.02762385830283165, - -0.019550630822777748, - 0.027073998004198074, - 0.009995599277317524, - -0.09180231392383575, - -0.08091013878583908, - 0.09065079689025879, - -0.07136523723602295, - -0.01066931989043951, - -0.08579641580581665, - 0.04663429409265518, - 0.10176980495452881, - 0.01736580766737461, - -0.04070871323347092, - -0.01898895390331745, - 0.055287159979343414, - -0.034810587763786316, - 0.01455785147845745, - 0.04177185893058777, - 0.04016496241092682, - -0.10704472661018372, - 0.01202833466231823, - -0.048827074468135834, - 0.04372423142194748, - -0.048256728798151016, - 0.161650151014328, - 0.0031913002021610737, - -0.04870273917913437, - -0.06659187376499176, - 0.07048682123422623, - -0.010164874605834484, - 0.03241579234600067, - 0.04637807607650757, - 0.07134668529033661, - 0.035752009600400925, - -0.08948419243097305, - 0.11096765100955963, - 0.016276035457849503, - -0.03500794246792793, - -0.06615947186946869, - -0.050319962203502655, - -0.047357331961393356, - 0.013476955704391003, - 0.022592905908823013, - -0.10324914753437042, - -0.020539050921797752, - 0.026094775646924973, - -0.013407817110419273, - 0.06635773181915283, - 0.13746339082717896, - 0.06524045765399933, - -0.10997216403484344 - ] - }, - "p245_160.wav": { - "name": "p245", - "embedding": [ - 0.026559598743915558, - 0.1116848886013031, - -0.016116315498948097, - 0.051389217376708984, - -0.05837224796414375, - 0.017432451248168945, - -0.022781696170568466, - 0.04519841820001602, - 0.0255142729729414, - 0.07495652139186859, - -0.04130738973617554, - 0.07807604968547821, - -0.0513303279876709, - -0.09406927973031998, - -0.007932877168059349, - 0.020030591636896133, - -0.006581081077456474, - 0.02560054138302803, - -0.023602964356541634, - -0.010282590985298157, - -0.050811320543289185, - -0.00525493361055851, - 0.002204073593020439, - -0.008879566565155983, - -0.040683846920728683, - 0.03986447677016258, - -0.031193401664495468, - 0.012891063466668129, - -0.019032025709748268, - -0.1048523336648941, - -0.010010089725255966, - 0.05138653144240379, - -0.028826337307691574, - -0.026896072551608086, - 0.007702079601585865, - -0.03902773559093475, - 0.014631949365139008, - -0.028339151293039322, - -0.054345883429050446, - -0.015875523909926414, - -0.0364132821559906, - 0.00630771741271019, - -0.01191217266023159, - -0.07795916497707367, - 0.016351427882909775, - -0.0012911586090922356, - -0.04717263951897621, - -0.006497536785900593, - -0.04528365656733513, - 0.10074131935834885, - 0.025250926613807678, - 0.05538181960582733, - -0.04879321902990341, - -0.04657234624028206, - 0.12063401937484741, - 0.014146438799798489, - 0.005084522068500519, - -0.01622661016881466, - -0.01819690130650997, - 0.05265335366129875, - 0.04058893769979477, - -0.0028991326689720154, - 0.05349726974964142, - 0.05099568888545036, - 0.008044037967920303, - 0.037750180810689926, - 0.058458127081394196, - 0.06295692175626755, - -0.022748533636331558, - 0.036461763083934784, - 0.04959450662136078, - 0.026321707293391228, - 0.04101115092635155, - 0.041950855404138565, - -0.022483622655272484, - 0.005180465057492256, - 0.003750205971300602, - 0.025160280987620354, - -0.01991969719529152, - -0.042616672813892365, - 0.0027666196692734957, - -0.004818296059966087, - 0.01092077512294054, - -0.04666807875037193, - -0.02696220576763153, - -0.04495837166905403, - 0.06898374855518341, - 0.005142414942383766, - 0.047648072242736816, - 0.004516623914241791, - 0.053117770701646805, - 0.0462389811873436, - -0.040140800178050995, - -0.05522499606013298, - 0.02683410979807377, - 0.003386897034943104, - 0.050053078681230545, - 0.029816962778568268, - 0.005843058228492737, - 0.004132304340600967, - 0.04547717049717903, - -0.01720576174557209, - 0.06789544224739075, - -0.01553838700056076, - -0.05814449489116669, - -0.031201064586639404, - 0.04844619706273079, - 0.018837835639715195, - 0.033266641199588776, - 0.0484301894903183, - 0.0575186088681221, - 0.09253117442131042, - -0.03851114958524704, - -0.057117901742458344, - -0.00688267033547163, - 0.03141169622540474, - -0.039591070264577866, - 0.08456496894359589, - -0.005943231750279665, - 0.03955782949924469, - 0.05599345266819, - -0.029588595032691956, - -0.01905791088938713, - 0.016566919162869453, - -0.008770550601184368, - -0.05794387310743332, - 0.058530230075120926, - 0.031134668737649918, - -0.03416421636939049, - -0.04878013953566551, - 0.052470795810222626, - -0.021651186048984528, - -0.018802674487233162, - -0.014108812436461449, - -0.003923185169696808, - -0.02743849717080593, - 0.037589505314826965, - -0.04890361428260803, - 0.025228170678019524, - 0.0692390725016594, - -0.0014297310262918472, - -0.05619741976261139, - 0.001806040178053081, - -0.0505979098379612, - 0.03501978516578674, - 0.03337126970291138, - -0.010297193191945553, - 0.05970190465450287, - -0.04140562564134598, - -0.04531535506248474, - -0.02139427326619625, - 0.051135823130607605, - -0.0441482849419117, - 0.0745561495423317, - 0.05846432223916054, - 0.02120148204267025, - 0.07236268371343613, - -0.02390219457447529, - -0.006168705876916647, - -0.01925705373287201, - -0.10689781606197357, - 0.016164032742381096, - 0.025825107470154762, - -0.020861327648162842, - -0.03136304020881653, - -0.02024385705590248, - -0.024434704333543777, - -0.0028209052979946136, - 0.022269051522016525, - 0.04599447548389435, - -0.008368403650820255, - 0.049845099449157715, - -0.0799744501709938, - -0.005105664953589439, - -0.012980857864022255, - -0.05203929543495178, - 0.03248864412307739, - -0.020502634346485138, - -0.008597271516919136, - 0.033127136528491974, - 0.02249806933104992, - -0.037907686084508896, - -0.06620056182146072, - -0.07399959862232208, - 0.007195569574832916, - 0.029491569846868515, - 0.016986342146992683, - 0.007693079765886068, - -0.013965637423098087, - 0.03907273709774017, - 0.051342613995075226, - 0.01718650758266449, - 0.007847528904676437, - 0.07077126950025558, - -0.04855210334062576, - -0.006412457674741745, - 0.030008159577846527, - 0.09268131852149963, - 0.048097409307956696, - -0.07212166488170624, - -0.10743173211812973, - -0.03378477692604065, - -0.05552264675498009, - 0.0688861832022667, - -0.030944589525461197, - 0.020307613536715508, - 0.020808249711990356, - -0.007350586354732513, - 0.0056816451251506805, - -0.1304166167974472, - 0.061731744557619095, - 0.03215894103050232, - -0.03690272569656372, - -0.007082510739564896, - 0.006484119221568108, - -0.0048206280916929245, - 0.05094684660434723, - -0.03103126958012581, - -0.0005900515243411064, - 0.016392599791288376, - -0.003268212080001831, - 0.007919812574982643, - 0.055651649832725525, - 0.0423818975687027, - 0.018856879323720932, - -0.013363394886255264, - -0.023763928562402725, - 0.03382803127169609, - 0.006204478442668915, - 0.0458715595304966, - -0.003102308139204979, - -0.013315879739820957, - -0.106963150203228, - 0.08787776529788971, - -0.03548796474933624, - 0.057874154299497604, - -0.010665055364370346, - 0.017566632479429245, - 0.05890590697526932, - -0.03642525151371956, - 0.07835541665554047, - 0.021359838545322418, - -0.0193508081138134, - -0.03404254838824272, - -0.013302493840456009, - -0.035955529659986496, - 0.035202693194150925, - 0.042525772005319595, - -0.01032334566116333, - -0.006047356873750687, - 0.03645598888397217, - 0.042794372886419296, - 0.08431451767683029, - 0.07425171136856079, - 0.055540118366479874, - 0.027588654309511185 - ] - }, - "p245_056.wav": { - "name": "p245", - "embedding": [ - 0.038328371942043304, - 0.06367671489715576, - -0.027478108182549477, - 0.053355857729911804, - -0.05999847501516342, - 0.08225319534540176, - -0.14614485204219818, - 0.1154351755976677, - -0.02209380455315113, - 0.12605777382850647, - -0.03030681237578392, - 0.09915250539779663, - -0.02087361179292202, - -0.18541213870048523, - -0.0023089428432285786, - 0.08155229687690735, - -0.007917769253253937, - -0.01564657874405384, - -0.05361519753932953, - -0.005513269454240799, - 0.005140484776347876, - 0.030321989208459854, - 0.03555504232645035, - -0.027472959831357002, - 0.04679049551486969, - 0.03893141448497772, - -0.01573146879673004, - 0.053847476840019226, - 0.004548178054392338, - -0.06983290612697601, - -0.025777123868465424, - 0.08817800879478455, - -0.05765452980995178, - 0.027357857674360275, - 0.05434811860322952, - 0.005703633651137352, - -0.004371881019324064, - -0.04762175679206848, - -0.004995710216462612, - 0.0020579956471920013, - -0.04185333102941513, - 0.09500788152217865, - 0.0452316515147686, - -0.01057750266045332, - 0.042994141578674316, - 0.014600496739149094, - -0.01879080757498741, - -0.04451435059309006, - -0.11859199404716492, - 0.14696958661079407, - 0.029264669865369797, - -0.01479214709252119, - -0.08258024603128433, - -0.07070136070251465, - 0.09047552943229675, - -0.02678380161523819, - -0.10557340085506439, - -0.08048279583454132, - 0.0840415358543396, - 0.15198521316051483, - -0.010024361312389374, - -0.01821364276111126, - 0.002189514460042119, - 0.11044515669345856, - 0.06453007459640503, - 0.0904700979590416, - 0.0374385267496109, - 0.1305156946182251, - 0.0015142466872930527, - 0.007919435389339924, - 0.020688869059085846, - 0.06220712512731552, - 0.015139110386371613, - 0.01849103532731533, - 0.011681335046887398, - -0.014993296936154366, - -0.007299354765564203, - -0.004437160678207874, - -0.027512013912200928, - -0.011841649189591408, - -0.01434422843158245, - 0.0023328829556703568, - 0.027927620336413383, - 0.014589717611670494, - -0.036527119576931, - 0.04561164975166321, - 0.047775376588106155, - -0.028939470648765564, - 0.05588280409574509, - 0.040653008967638016, - -0.027852699160575867, - 0.040589358657598495, - -0.0725463405251503, - -0.07555719465017319, - 0.006225344259291887, - 0.01126736681908369, - -0.004792221821844578, - 0.03662295639514923, - 0.0037884991616010666, - -0.007372761145234108, - 0.11891268193721771, - 0.03254926949739456, - -0.01723564602434635, - 0.04737314209342003, - -0.0680658295750618, - 0.13920092582702637, - 0.05126619338989258, - 0.026127591729164124, - 0.06337494403123856, - -0.056040287017822266, - 0.03214118629693985, - 0.06679442524909973, - -0.12897734344005585, - -0.06014731898903847, - 0.01990739442408085, - -0.0070129260420799255, - -0.0365622341632843, - 0.12884365022182465, - 0.012689088471233845, - 0.021939659491181374, - 0.1049538105726242, - -0.10255618393421173, - -0.05850471928715706, - 0.020309578627347946, - 0.04694744199514389, - -0.07767294347286224, - 0.0318603441119194, - 0.030406324192881584, - -0.025112081319093704, - 0.021169589832425117, - 0.08431406319141388, - 0.022275879979133606, - 0.034444332122802734, - 0.04291002079844475, - -0.03720298409461975, - 0.03455735370516777, - -0.02514510229229927, - 0.007068756967782974, - 0.07924430072307587, - 0.029403533786535263, - 0.09271825850009918, - -0.03362305089831352, - -0.031318217515945435, - -0.13683345913887024, - -0.011278930120170116, - 0.03819924220442772, - 0.10330018401145935, - -0.018379729241132736, - 0.00244515435770154, - -0.058840662240982056, - -0.10101937502622604, - 0.05231962352991104, - -0.014565413817763329, - 0.1185389906167984, - -0.009202133864164352, - -0.004613430239260197, - 0.10359296202659607, - 0.015815144404768944, - 0.0018608442042022943, - -0.06523013859987259, - -0.02134281024336815, - -0.01475444994866848, - 0.03678862005472183, - -0.07916846871376038, - -0.03944757580757141, - 0.016942711547017097, - 0.032575272023677826, - -0.03222767263650894, - 0.05971198529005051, - 0.04335341602563858, - 0.038127753883600235, - 0.034792717546224594, - -0.044339898973703384, - -0.021466948091983795, - -0.04879412055015564, - -0.04230405390262604, - -0.0034981335047632456, - -0.008795037865638733, - -0.0518103651702404, - 0.0975133627653122, - 0.04820462316274643, - 0.05235876888036728, - -0.018672702834010124, - -0.051297612488269806, - -0.10104307532310486, - 0.054405152797698975, - 0.005037857685238123, - -0.027715278789401054, - 0.03686122968792915, - 0.044303834438323975, - -0.05497080832719803, - 0.050464704632759094, - 0.08660118281841278, - 0.059202197939157486, - -0.026598041877150536, - 0.02196887880563736, - -0.07423491775989532, - 0.12015064060688019, - 0.12374447286128998, - -0.08341850340366364, - -0.07052579522132874, - -0.019805671647191048, - -0.07627588510513306, - 0.027864931151270866, - -0.05387416481971741, - -0.004778549540787935, - 0.04778347909450531, - -0.019103879109025, - -0.10759029537439346, - -0.1048310399055481, - 0.06568128615617752, - -0.0942007452249527, - 0.0012340828543528914, - -0.0469803661108017, - 0.029530808329582214, - 0.06226624175906181, - 0.05579405277967453, - -0.015114019624888897, - -0.017105918377637863, - 0.08538550138473511, - -0.0633305162191391, - 0.020461436361074448, - 0.09949508309364319, - 0.01492242980748415, - -0.09198328852653503, - -0.007643409073352814, - -0.05490371584892273, - 0.039846695959568024, - -0.022794198244810104, - 0.16857904195785522, - 0.022090043872594833, - -0.04276996850967407, - -0.05042840540409088, - 0.014080922119319439, - -0.0516873337328434, - 0.053385525941848755, - 0.01847190037369728, - 0.06780648976564407, - 0.06270890682935715, - -0.01408656220883131, - 0.13060125708580017, - 0.0571218840777874, - -0.03772319480776787, - -0.05590088292956352, - -0.06338523328304291, - -0.05283889174461365, - 0.05294118821620941, - 0.01910148561000824, - -0.12151288986206055, - -0.0011200555600225925, - 0.04946079105138779, - -0.020088355988264084, - 0.04812328517436981, - 0.14391952753067017, - 0.09139038622379303, - -0.08823636174201965 - ] - }, - "p245_078.wav": { - "name": "p245", - "embedding": [ - 0.055630218237638474, - 0.1067352369427681, - 0.002760309260338545, - 0.020574919879436493, - -0.038188669830560684, - 0.0941101610660553, - -0.09879721701145172, - 0.106082983314991, - -0.08724622428417206, - 0.16249629855155945, - -0.09837605059146881, - 0.12139571458101273, - -0.018660595640540123, - -0.15788023173809052, - -0.06801563501358032, - 0.04094967246055603, - -0.07233306765556335, - -0.012670725584030151, - -0.030045168474316597, - -0.008351616561412811, - 0.05629514530301094, - 0.0474000982940197, - 0.05469570681452751, - -0.006902947090566158, - 0.0279505904763937, - 0.05331993103027344, - 0.006443081423640251, - 0.05493545904755592, - 0.02974170260131359, - -0.11172091215848923, - -0.06248054280877113, - 0.12382711470127106, - -0.023882700130343437, - 0.016918832436203957, - 0.027727941051125526, - 0.0012149892281740904, - 0.03127792105078697, - -0.08427728712558746, - -0.02286512218415737, - -0.004720490891486406, - -0.016724610701203346, - 0.05678213760256767, - -0.008819813840091228, - -0.020762315019965172, - 0.016446148976683617, - -0.020085155963897705, - -0.03122781589627266, - -0.042162854224443436, - -0.08499240130186081, - 0.15938058495521545, - 0.0632585734128952, - 0.016745148226618767, - -0.06889068335294724, - -0.08602249622344971, - 0.11774913221597672, - -0.0037802455481141806, - -0.11549004167318344, - -0.0056350515224039555, - 0.05256785452365875, - 0.19134508073329926, - -0.01288327481597662, - -0.028405997902154922, - 0.041795507073402405, - 0.09828393906354904, - 0.012277642264962196, - 0.09504145383834839, - 0.08769989758729935, - 0.04927289858460426, - 0.031748756766319275, - 0.04910534247756004, - 0.034943435341119766, - 0.07930120080709457, - 0.038688480854034424, - -0.037833523005247116, - 0.025218788534402847, - -0.019915523007512093, - -0.05998706817626953, - 0.021445412188768387, - -0.020591862499713898, - -0.02663932926952839, - -0.0153141338378191, - -0.008027773350477219, - 0.0070179784670472145, - -0.004541077185422182, - -0.03750359266996384, - 0.036534544080495834, - -0.027762984856963158, - -0.024407943710684776, - 0.07256761938333511, - 0.029750952497124672, - 0.02671189419925213, - 0.04122646898031235, - -0.0477452278137207, - -0.11737048625946045, - 0.020861215889453888, - 0.031394343823194504, - 0.0016068917466327548, - 0.08763805776834488, - 0.05224749073386192, - -0.04364006966352463, - 0.10341253876686096, - 0.04862023517489433, - 0.019776152446866035, - 0.0049330126494169235, - -0.11249294877052307, - 0.09830232709646225, - 0.11616941541433334, - -0.014970390126109123, - 0.04488604515790939, - -0.026193594560027122, - 0.10363094508647919, - 0.09409166127443314, - -0.16502316296100616, - -0.08759430050849915, - 0.008928144350647926, - -0.011504007503390312, - 0.0340847410261631, - 0.07251366227865219, - -0.01425595860928297, - 0.01328407134860754, - 0.08133666962385178, - -0.0839223712682724, - -0.058623820543289185, - -0.048220425844192505, - 0.05373107269406319, - -0.07759253680706024, - 0.06660626828670502, - 0.027627989649772644, - -0.011569928377866745, - -0.02027498558163643, - 0.05959482118487358, - -0.04370884597301483, - -0.00953164603561163, - 0.03459625318646431, - -0.06948640942573547, - 0.016997747123241425, - -0.07292965054512024, - 0.001577579416334629, - 0.0519273616373539, - 0.04581351578235626, - 0.040306150913238525, - -0.005860194563865662, - -0.04170579835772514, - -0.07742556929588318, - 0.007583111058920622, - 0.042086441069841385, - 0.028847387060523033, - -0.0007596837822347879, - -0.036219775676727295, - -0.03948000818490982, - -0.046713266521692276, - 0.04621388390660286, - -0.015276334248483181, - 0.0842442438006401, - 0.014856208115816116, - 0.028215540573000908, - 0.08941014111042023, - 0.01986808329820633, - -0.019871439784765244, - -0.05743054300546646, - -0.02193480357527733, - 0.040594082325696945, - 0.04170772805809975, - -0.06216242536902428, - -0.06606973707675934, - 0.015140027739107609, - 0.003207495668902993, - -0.026440391317009926, - 0.029404249042272568, - 0.05135619267821312, - 0.017684534192085266, - 0.045513201504945755, - -0.06714869290590286, - 0.024346038699150085, - -0.11197793483734131, - -0.04892519861459732, - -0.016080524772405624, - -0.05219294875860214, - -0.009945571422576904, - 0.08835085481405258, - 0.027112849056720734, - -0.0024880480486899614, - -0.013584609143435955, - -0.07527217268943787, - -0.05660012736916542, - 0.06697279959917068, - 0.07509242743253708, - 0.037866540253162384, - 0.038694173097610474, - 0.046378105878829956, - 0.0064362529665231705, - 0.07628372311592102, - 0.05895989015698433, - 0.10219667106866837, - -0.009982917457818985, - -0.01127435453236103, - -0.07062623649835587, - 0.06987965106964111, - 0.08156045526266098, - -0.0872301384806633, - -0.11450573056936264, - -0.04452529549598694, - -0.0767161026597023, - 0.08281093835830688, - -0.015804573893547058, - -0.0020173536613583565, - 0.021954553201794624, - -0.03985925018787384, - -0.10587214678525925, - -0.0773933157324791, - 0.13195228576660156, - -0.03250063955783844, - -0.05269068107008934, - -0.07849941402673721, - 0.051247190684080124, - 0.07176458835601807, - 0.03178824111819267, - -0.020844925194978714, - 0.03256065398454666, - 0.04053771495819092, - -0.0851791724562645, - -0.020112428814172745, - 0.03442341834306717, - -0.010670512914657593, - -0.09209192544221878, - 0.03319999575614929, - -0.0941704660654068, - 0.07270291447639465, - -0.08972466737031937, - 0.16377297043800354, - -0.0324772484600544, - -0.06603601574897766, - -0.08975996822118759, - 0.08654289692640305, - -0.03915800899267197, - 0.03179012984037399, - 0.06263607740402222, - 0.049225758761167526, - 0.02835780568420887, - -0.1102827712893486, - 0.07609602808952332, - 0.023705288767814636, - -0.016242744401097298, - -0.07431349158287048, - -0.045934394001960754, - -0.03657393902540207, - 0.007536218035966158, - -0.01845720410346985, - -0.0711108073592186, - 0.010064364410936832, - 0.0036284979432821274, - 0.007677001412957907, - 0.08542200177907944, - 0.12095218151807785, - 0.04364725574851036, - -0.10538380593061447 - ] - }, - "p245_062.wav": { - "name": "p245", - "embedding": [ - 0.021794212982058525, - 0.07907729595899582, - -0.02841346152126789, - -0.015859708189964294, - -0.06424835324287415, - 0.06387975811958313, - -0.11144575476646423, - 0.12209363281726837, - -0.06114812195301056, - 0.13196012377738953, - -0.07439765334129333, - 0.09188421815633774, - -0.05453932285308838, - -0.14907890558242798, - -0.0390595979988575, - 0.026605786755681038, - -0.04232645779848099, - -0.021957313641905785, - -0.087961845099926, - -0.04156852141022682, - 0.03828243538737297, - 0.007931772619485855, - -0.02519194968044758, - -0.008817838504910469, - 0.017104677855968475, - 0.05094083026051521, - 0.0004894123412668705, - 0.031202970072627068, - 0.002435644157230854, - -0.011450054123997688, - -0.015073923394083977, - 0.09006287902593613, - -0.05852273106575012, - 0.02499542385339737, - 0.06425312906503677, - 0.012921303510665894, - -0.025711527094244957, - -0.042459890246391296, - 0.0018460024148225784, - 0.026552977040410042, - -0.0718337818980217, - 0.06952087581157684, - 0.02226673811674118, - -0.0020950566977262497, - 0.0315837636590004, - 0.0329069122672081, - 0.0022115297615528107, - -0.06436945497989655, - -0.08765766024589539, - 0.1378021538257599, - 0.06539446115493774, - -0.028171617537736893, - -0.06404684484004974, - -0.06096411123871803, - 0.12313007563352585, - -0.04145287349820137, - -0.1264445036649704, - -0.04790085554122925, - 0.06480594724416733, - 0.13758891820907593, - -0.06513374298810959, - -0.02956644631922245, - -0.0007622246630489826, - 0.10006635636091232, - 0.05754372850060463, - 0.0836755633354187, - 0.09292846918106079, - 0.11577112227678299, - -0.026309117674827576, - 0.0005640224553644657, - 0.07485707104206085, - 0.04527078941464424, - 0.0684117004275322, - -0.0035286853089928627, - 0.034221578389406204, - 0.010326101444661617, - 0.0006285249255597591, - 0.024298526346683502, - -0.0360148586332798, - -0.010448945686221123, - -0.02834143489599228, - 0.0246539618819952, - -0.009179140441119671, - 0.0022719306871294975, - -0.02260502427816391, - 0.06468090415000916, - 0.04094701632857323, - -0.015857215970754623, - 0.06263691931962967, - 0.06454430520534515, - -0.028945326805114746, - 0.0730544775724411, - -0.07714489102363586, - -0.081499382853508, - -0.004363709129393101, - -0.027288399636745453, - 0.02606525830924511, - 0.0558144748210907, - 0.025309979915618896, - 0.005748945754021406, - 0.09176786243915558, - 0.04580090567469597, - -0.001802746206521988, - 0.04070059210062027, - -0.0878300666809082, - 0.11983676254749298, - 0.07847346365451813, - -0.035752587020397186, - 0.014184404164552689, - -0.04365314543247223, - 0.07216737419366837, - 0.0494089275598526, - -0.09954509139060974, - -0.07211105525493622, - 0.046957388520240784, - 0.029278963804244995, - -0.02720465511083603, - 0.09144176542758942, - -0.024550890550017357, - -0.015109876170754433, - 0.12353020161390305, - -0.06131336838006973, - -0.03163054585456848, - -0.00985715538263321, - 0.03938358277082443, - -0.03256215155124664, - 0.02536025643348694, - 0.04210666939616203, - 0.013145418837666512, - 0.019744323566555977, - 0.11745338141918182, - 0.002565953880548477, - -0.0046151974238455296, - 0.004640447441488504, - -0.01160176657140255, - 0.03936464712023735, - 0.006603270769119263, - -0.020428884774446487, - 0.07607868313789368, - 0.08538609743118286, - 0.041804492473602295, - 0.014903525821864605, - -0.039826810359954834, - -0.08922447264194489, - 0.013417287729680538, - 0.05620255321264267, - 0.07754065096378326, - -0.03470059856772423, - 0.017016157507896423, - -0.0518205426633358, - -0.08239337801933289, - 0.0068237208761274815, - -0.009328922256827354, - 0.09967579692602158, - -0.049350544810295105, - -0.014919477514922619, - 0.11594163626432419, - 0.0040334854274988174, - -0.008862588554620743, - -0.05128038302063942, - -0.01910565420985222, - -0.006497434340417385, - 0.057690273970365524, - -0.06555988639593124, - -0.0783952847123146, - -0.002121283207088709, - 0.03951757401227951, - 0.0036794249899685383, - 0.05851081758737564, - 0.04518513381481171, - -0.0038719484582543373, - 0.036255642771720886, - -0.08122381567955017, - 0.01836446113884449, - -0.12228478491306305, - -0.028511982411146164, - -0.011650661937892437, - -0.05292245000600815, - 0.0061986492946743965, - 0.07129751890897751, - -0.017159277573227882, - 0.025866545736789703, - 0.01357787661254406, - -0.13572727143764496, - -0.06041032820940018, - 0.06825228780508041, - 0.07815296202898026, - -0.016630569472908974, - 0.04512578248977661, - 0.0904008150100708, - -0.03705696761608124, - 0.029913946986198425, - 0.0918593555688858, - 0.11844207346439362, - -0.031447071582078934, - 0.024922136217355728, - -0.056631527841091156, - 0.08434765040874481, - 0.03192727267742157, - -0.09711845219135284, - -0.0736217349767685, - -0.0392693355679512, - -0.01587245613336563, - 0.0004422329366207123, - -0.03323450684547424, - 0.022801723331212997, - 0.021854812279343605, - -0.002091458300128579, - -0.07529273629188538, - -0.0779525488615036, - 0.05402090400457382, - -0.07683536410331726, - 0.016498014330863953, - -0.06550651788711548, - 0.02364080771803856, - 0.09570302069187164, - 0.05481031537055969, - -0.009080225601792336, - 0.01197740901261568, - 0.05472739040851593, - -0.03618208318948746, - -0.010378731414675713, - 0.019115785136818886, - 0.007613572292029858, - -0.06855800747871399, - 0.0037479265592992306, - -0.07659077644348145, - 0.07853808999061584, - -0.03008956089615822, - 0.1388910412788391, - -0.008087326772511005, - -0.04959932342171669, - -0.07068032026290894, - 0.008142957463860512, - -0.03131917491555214, - 0.053351350128650665, - 0.04390658438205719, - 0.0793236494064331, - 0.027297910302877426, - -0.02160029113292694, - 0.15010517835617065, - 0.04446285963058472, - -0.04441145062446594, - -0.048087507486343384, - -0.05718188360333443, - -0.04617037624120712, - -0.010363179259002209, - 0.020320087671279907, - -0.06806303560733795, - 0.014382373541593552, - -0.003251938149333, - -0.051646891981363297, - 0.040618300437927246, - 0.1404690146446228, - 0.11432871222496033, - -0.12149269878864288 - ] - }, - "p245_254.wav": { - "name": "p245", - "embedding": [ - 0.02267284132540226, - 0.08950132131576538, - 0.001772264949977398, - -0.007002172060310841, - -0.043781403452157974, - 0.07006856054067612, - -0.12842966616153717, - 0.1217845007777214, - -0.06789173930883408, - 0.15788127481937408, - -0.07104265689849854, - 0.08979351818561554, - -0.024333367124199867, - -0.20156364142894745, - -0.03780628368258476, - 0.05626312643289566, - -0.06781038641929626, - -0.011971860192716122, - -0.0709281712770462, - -0.016078006476163864, - 0.054661765694618225, - 0.03927809000015259, - 0.014632712118327618, - -0.026649275794625282, - 0.01823336072266102, - 0.05039310082793236, - 0.019736649468541145, - 0.055123135447502136, - 0.025863392278552055, - -0.08084969967603683, - -0.03343670070171356, - 0.10604381561279297, - -0.031401269137859344, - 0.03500845283269882, - 0.06250065565109253, - -0.006048311945050955, - 0.017024002969264984, - -0.041905052959918976, - -0.01837330125272274, - 0.030735468491911888, - -0.039884667843580246, - 0.06538999080657959, - 0.030266832560300827, - 0.0221833698451519, - 0.057657185941934586, - 0.029406949877738953, - -0.02092100866138935, - -0.06744278967380524, - -0.07698270678520203, - 0.18445947766304016, - 0.08587168902158737, - -0.034685175865888596, - -0.03320767357945442, - -0.10137896984815598, - 0.10593029111623764, - -0.02107778750360012, - -0.15286000072956085, - -0.06655935198068619, - 0.10060349851846695, - 0.15369179844856262, - -0.020365405827760696, - -0.02726658619940281, - 0.013924109749495983, - 0.12650908529758453, - -0.012485582381486893, - 0.1056627556681633, - 0.043741028755903244, - 0.0696001797914505, - 0.013850214891135693, - 0.02924380451440811, - 0.03949317708611488, - 0.06465169042348862, - 0.010466444306075573, - -0.019939659163355827, - 0.048722002655267715, - 0.0037677884101867676, - -0.027086449787020683, - 0.024974798783659935, - -0.02324608340859413, - 0.01931760273873806, - -0.0223697442561388, - 0.02485673315823078, - -0.011648105457425117, - -0.01984689012169838, - -0.014308599755167961, - 0.04988565295934677, - -0.02361106500029564, - 0.014154995791614056, - 0.06518375873565674, - 0.036780040711164474, - 0.019127173349261284, - 0.04675702378153801, - -0.03646767511963844, - -0.10256878286600113, - -0.0009558231104165316, - 0.016554323956370354, - -0.016134019941091537, - 0.04751855880022049, - 0.01622507907450199, - -0.03139703348278999, - 0.11870048195123672, - 0.038625456392765045, - -0.017814885824918747, - 0.03130226954817772, - -0.11381719261407852, - 0.11681395024061203, - 0.07140105217695236, - 0.008671518415212631, - 0.04424026608467102, - -0.06266017258167267, - 0.09019289165735245, - 0.0737273171544075, - -0.14745956659317017, - -0.0777050107717514, - 0.03056967817246914, - 0.0023697202559560537, - -0.024548741057515144, - 0.11161129921674728, - -0.008922174572944641, - -0.010600641369819641, - 0.1171237975358963, - -0.0916517972946167, - -0.05656455084681511, - -0.024845119565725327, - 0.04811275377869606, - -0.08362922072410583, - 0.03778211399912834, - 0.038325369358062744, - -0.03550461307168007, - 0.021209044381976128, - 0.09921400249004364, - -0.02430238574743271, - 0.0280729029327631, - 0.014888405799865723, - -0.05205099657177925, - 0.023402482271194458, - -0.06809167563915253, - 0.014149989001452923, - 0.05656815320253372, - 0.06378643214702606, - 0.04633314907550812, - -0.004467300605028868, - -0.0804833471775055, - -0.10245928168296814, - -0.002957882359623909, - 0.013201483525335789, - 0.05815167352557182, - -0.00012937959400005639, - 0.0006998542230576277, - -0.039799969643354416, - -0.08054407685995102, - 0.010311481542885303, - -0.03324545919895172, - 0.10333181172609329, - -0.009456876665353775, - -0.002893076278269291, - 0.10194623470306396, - 0.015406377613544464, - -0.020343879237771034, - -0.07443255931138992, - -0.04750433564186096, - 0.008626674301922321, - 0.03097820095717907, - -0.08455244451761246, - -0.03965308889746666, - 0.023441532626748085, - 0.027392562478780746, - 0.014931093901395798, - 0.03306759521365166, - 0.04002920165657997, - 0.013606026768684387, - 0.05221894755959511, - -0.08975961804389954, - 0.01714259944856167, - -0.11647796630859375, - -0.06259243935346603, - -0.01730668731033802, - -0.037339240312576294, - -0.00779766496270895, - 0.09336385875940323, - -0.025324106216430664, - 0.012019439600408077, - 0.00288563990034163, - -0.08692871779203415, - -0.08279089629650116, - 0.0888817235827446, - 0.08361510932445526, - 0.006263306830078363, - 0.06132703647017479, - 0.0456986203789711, - -0.047159235924482346, - 0.06329408288002014, - 0.05485544353723526, - 0.10920080542564392, - -0.008428208529949188, - 0.033179763704538345, - -0.0736638531088829, - 0.07989007234573364, - 0.06301747262477875, - -0.09383939951658249, - -0.07224112749099731, - -0.017554650083184242, - -0.05685288831591606, - 0.050482284277677536, - -0.022692793980240822, - -0.009400018490850925, - 0.016151705756783485, - 0.005223544780164957, - -0.08291236311197281, - -0.05807602405548096, - 0.06960805505514145, - -0.06974229216575623, - -0.019771402701735497, - -0.04360705614089966, - 0.0423688106238842, - 0.10989385843276978, - 0.07894083857536316, - -0.01238461583852768, - -0.006537243723869324, - 0.07101429253816605, - -0.06634881347417831, - -0.01016603410243988, - 0.016114355996251106, - 0.005355095025151968, - -0.07101620733737946, - 0.02863890677690506, - -0.09414098411798477, - 0.03883692994713783, - -0.07073958963155746, - 0.14297594130039215, - -0.014428096823394299, - -0.07590172439813614, - -0.08147718757390976, - 0.04531485214829445, - -0.04757470265030861, - 0.023833908140659332, - 0.029940733686089516, - 0.05362982675433159, - 0.06394033133983612, - -0.05830772966146469, - 0.12204479426145554, - 0.027873637154698372, - -0.013711145147681236, - -0.04286234453320503, - -0.04472770169377327, - -0.041315849870443344, - 0.009365711361169815, - 0.011626794934272766, - -0.10894149541854858, - -0.009801985695958138, - 0.022848108783364296, - -0.027861744165420532, - 0.07467971742153168, - 0.1273859292268753, - 0.05719268321990967, - -0.1358308345079422 - ] - }, - "p245_271.wav": { - "name": "p245", - "embedding": [ - 0.057645201683044434, - 0.0522216260433197, - -0.016730522736907005, - 0.04023532569408417, - -0.04599135369062424, - 0.01421796903014183, - -0.14918893575668335, - 0.13732680678367615, - -0.006119074299931526, - 0.12446120381355286, - -0.06242717057466507, - 0.12070503830909729, - -0.008513492532074451, - -0.1773672103881836, - -0.0035244268365204334, - 0.05956079065799713, - -0.023398486897349358, - -0.04099506139755249, - -0.022574730217456818, - -0.04124479740858078, - 0.039195407181978226, - 0.06727701425552368, - 0.042618099600076675, - 0.00013865064829587936, - 0.03249586373567581, - 0.06079108268022537, - -0.011989271268248558, - 0.03230298310518265, - -0.0014632532838732004, - -0.0675337165594101, - -0.013594978488981724, - 0.07291044294834137, - -0.035699307918548584, - -0.00637893658131361, - 0.026181882247328758, - -0.009651538915932178, - 0.0035682141315191984, - -0.08618289977312088, - -0.05564896762371063, - 0.0007229861803352833, - -0.05842367559671402, - 0.0689009502530098, - 0.028169099241495132, - -0.046671390533447266, - 0.051316551864147186, - 0.010972786694765091, - -0.02745550125837326, - -0.0518372617661953, - -0.13427606225013733, - 0.16263169050216675, - 0.06281419843435287, - 0.0428144708275795, - -0.07910054922103882, - -0.07005368173122406, - 0.10406118631362915, - -0.01458258368074894, - -0.08127206563949585, - -0.02513802796602249, - 0.05648406594991684, - 0.17644548416137695, - -0.03262477368116379, - -0.047475408762693405, - 0.06382229924201965, - 0.09621010720729828, - 0.0806242972612381, - 0.045787516981363297, - 0.10362613201141357, - 0.10905762016773224, - -0.01700802892446518, - -0.005089037586003542, - 0.0375291146337986, - 0.10394600033760071, - 0.056084200739860535, - -0.0007612472400069237, - 0.0024307407438755035, - 0.03590548038482666, - -0.038377776741981506, - -0.039751481264829636, - -0.033238984644412994, - -0.016377098858356476, - 0.005728748627007008, - 0.008211709558963776, - 0.038420505821704865, - 0.041770704090595245, - -0.0430108867585659, - 0.05411100015044212, - 0.04587821662425995, - -0.032544154673814774, - 0.06098322942852974, - -0.008483397774398327, - -0.0010454041184857488, - 0.061437271535396576, - -0.09184131026268005, - -0.07204633951187134, - 0.020317886024713516, - 0.02035820670425892, - 0.009742151945829391, - 0.06786319613456726, - 0.05574149638414383, - -0.04042826592922211, - 0.14737583696842194, - 0.034708138555288315, - -0.009336868301033974, - 0.014033161103725433, - -0.07744282484054565, - 0.09101902693510056, - 0.103970468044281, - -0.027645952999591827, - 0.07163559645414352, - -0.05604071915149689, - 0.049251753836870193, - 0.05181020870804787, - -0.147222638130188, - -0.07301433384418488, - 0.034258291125297546, - 0.01853165216743946, - 0.004912801552563906, - 0.1522858738899231, - 0.012938303872942924, - 0.08543366193771362, - 0.11822488903999329, - -0.10506215691566467, - -0.05713406205177307, - -0.012322880327701569, - 0.07293687760829926, - -0.0871485024690628, - 0.0767558366060257, - 0.05422208458185196, - -0.020910784602165222, - 0.021453406661748886, - 0.04741090536117554, - -0.018971379846334457, - 0.001412482582964003, - -0.025089384987950325, - -0.04493342712521553, - 0.020168103277683258, - -0.03967045992612839, - -0.035306405276060104, - 0.045289862900972366, - 0.03356914967298508, - 0.04138214513659477, - -0.004025834612548351, - -0.04669450595974922, - -0.1451512575149536, - 0.018440131098031998, - 0.016490837559103966, - 0.0952434241771698, - -0.006791363470256329, - -0.029295364394783974, - -0.05709148943424225, - -0.061325572431087494, - 0.005849067587405443, - -0.01900847628712654, - 0.07369867712259293, - -0.015769490972161293, - 0.02874220535159111, - 0.08293113112449646, - 0.024048801511526108, - 0.005152805242687464, - -0.011926950886845589, - -0.03857610374689102, - -0.0041598966345191, - 0.04460723325610161, - -0.05170983448624611, - -0.08146385103464127, - -0.023161929100751877, - 0.0389215350151062, - -0.030733171850442886, - 0.05901958793401718, - 0.008873896673321724, - 0.029586229473352432, - 0.0038467594422399998, - -0.0661846473813057, - 0.003719617612659931, - -0.09510025382041931, - -0.07293621450662613, - 0.01977679505944252, - 0.008334549143910408, - -0.031437139958143234, - 0.0715172216296196, - 0.041669655591249466, - 0.07302892208099365, - -0.0416928306221962, - -0.0628652423620224, - -0.09711092710494995, - 0.02791094407439232, - 0.035985175520181656, - -0.014699403196573257, - 0.021091777831315994, - 0.05986753851175308, - -0.012188548222184181, - 0.05124721676111221, - 0.05844375491142273, - 0.07975989580154419, - 0.0036592292599380016, - 0.008387072943150997, - -0.054620251059532166, - 0.12821269035339355, - 0.1001145988702774, - -0.04460150748491287, - -0.07461026310920715, - -0.03888298571109772, - -0.10516244918107986, - 0.04814879223704338, - 0.012637008912861347, - 0.0189889557659626, - 0.0300883986055851, - -0.00805343221873045, - -0.12038549035787582, - -0.06939695030450821, - 0.06515085697174072, - -0.053924404084682465, - -0.01570354960858822, - -0.08085495978593826, - 0.03609049320220947, - 0.11877266317605972, - 0.03245849162340164, - 0.017538949847221375, - -0.04086510092020035, - 0.028179019689559937, - -0.04456644877791405, - 0.01193064171820879, - 0.08079929649829865, - 0.0485471673309803, - -0.1125328317284584, - -0.009575989097356796, - -0.06625263392925262, - 0.04212479665875435, - -0.023885540664196014, - 0.12376153469085693, - 0.029859911650419235, - -0.04269330948591232, - -0.10050852596759796, - 0.03531353920698166, - -0.0015867208130657673, - 0.07996632903814316, - 0.0156500656157732, - 0.06358222663402557, - 0.06748707592487335, - -0.08029983937740326, - 0.09023921191692352, - 0.05495235696434975, - -0.04432224482297897, - -0.06448254734277725, - -0.07485339045524597, - -0.02856951765716076, - 0.010917482897639275, - -0.012713112868368626, - -0.05862396955490112, - -0.022699255496263504, - 0.015809088945388794, - 0.0043995073065161705, - 0.05281329154968262, - 0.11953572928905487, - 0.04049871116876602, - -0.12376582622528076 - ] - }, - "p245_203.wav": { - "name": "p245", - "embedding": [ - 0.05320492386817932, - 0.047799136489629745, - 0.011436599306762218, - -0.008054366335272789, - -0.023845171555876732, - 0.06632715463638306, - -0.09804938733577728, - 0.09147490561008453, - 0.0045898850075900555, - 0.06327089667320251, - -0.06883655488491058, - 0.07314512133598328, - 0.0008444140548817813, - -0.14797191321849823, - 0.006608190946280956, - 0.04039071500301361, - -0.024048037827014923, - -0.004019101615995169, - -0.027416495606303215, - -0.0368630588054657, - 0.011207511648535728, - 0.04311623424291611, - 0.049417950212955475, - -0.024218495935201645, - 0.03420667350292206, - 0.06108112633228302, - -0.0023637874983251095, - 0.01371063943952322, - -0.022748593240976334, - -0.049748972058296204, - -0.030147580429911613, - 0.06466563045978546, - -0.04744365066289902, - -0.022828012704849243, - 0.03418948873877525, - -0.012585325166583061, - 0.028086630627512932, - -0.07548638433218002, - -0.02437128871679306, - 0.038551606237888336, - -0.059517960995435715, - 0.07637225836515427, - 0.04218212887644768, - -0.0038494295440614223, - 0.026847651228308678, - 0.009754986502230167, - -0.006152359768748283, - -0.03972157835960388, - -0.09933986514806747, - 0.15292508900165558, - 0.04567469656467438, - 0.01721138320863247, - -0.07361916452646255, - -0.027512740343809128, - 0.05169306695461273, - 0.00804288499057293, - -0.05235716700553894, - -0.010487522929906845, - 0.047256242483854294, - 0.08451905101537704, - 0.01697452738881111, - -0.02971804141998291, - 0.05106857419013977, - 0.07204754650592804, - 0.012445634230971336, - 0.025537747889757156, - 0.09421484917402267, - 0.09218649566173553, - -0.015106268227100372, - 0.005118653178215027, - 0.039460767060518265, - 0.04211316257715225, - 0.057070206850767136, - -0.014465108513832092, - 0.02861526608467102, - -0.016212793067097664, - -0.023425936698913574, - -0.0255250483751297, - -0.019385553896427155, - -0.02792409062385559, - 0.04901750013232231, - 0.008402163162827492, - 0.026795990765094757, - 0.04951261729001999, - -0.04182060807943344, - 0.03410498797893524, - 0.02267496846616268, - 0.05738399177789688, - 0.06915000081062317, - 0.0239560604095459, - 0.02781721204519272, - 0.03333546966314316, - -0.06266138702630997, - -0.05615337938070297, - 0.03887941688299179, - 0.03169476240873337, - 0.015654591843485832, - 0.04569553956389427, - 0.03876877576112747, - -0.0370047427713871, - 0.1081358790397644, - 0.008898444473743439, - -0.0037924880161881447, - -0.004547609481960535, - -0.059149276465177536, - 0.07554659247398376, - 0.09009566158056259, - -0.01851879060268402, - 0.05776584893465042, - -0.04132988676428795, - 0.04004490748047829, - 0.048314645886421204, - -0.09926323592662811, - -0.03564335033297539, - 0.011855682358145714, - 0.007635089568793774, - 0.03141538053750992, - 0.12859253585338593, - 0.009843738749623299, - 0.045731477439403534, - 0.06879091262817383, - -0.09167176485061646, - -0.037506163120269775, - 0.02302504889667034, - 0.017064429819583893, - -0.03809773176908493, - 0.01874214969575405, - 0.04098629206418991, - 0.010148350149393082, - -0.028210317716002464, - 0.036555882543325424, - 0.0032372898422181606, - 0.0311819426715374, - -0.04642470180988312, - 0.01508938055485487, - 0.018128652125597, - -0.013283981010317802, - -0.03218214213848114, - 0.027341201901435852, - 0.036524105817079544, - 0.010732549242675304, - 0.01738336682319641, - -0.04456997662782669, - -0.12605251371860504, - -0.008674852550029755, - 0.0010722950100898743, - 0.03957218676805496, - -0.02159672975540161, - -0.041124794632196426, - -0.05869763344526291, - -0.01643262431025505, - 0.0005537364631891251, - -0.01112966425716877, - 0.024158060550689697, - 0.05013992637395859, - -0.03911668807268143, - 0.0631740391254425, - 0.013196773827075958, - 0.005221178289502859, - -0.020275859162211418, - -0.05122780054807663, - 0.013813035562634468, - 0.030995093286037445, - -0.03232130408287048, - -0.07681521028280258, - -0.022009892389178276, - -0.027872085571289062, - -0.00691666966304183, - 0.030607599765062332, - 0.043206244707107544, - 0.0057489401660859585, - -0.03163832426071167, - -0.08502250164747238, - 0.015029589645564556, - -0.05445132777094841, - -0.06380262225866318, - 0.047905921936035156, - 0.014210125431418419, - -0.02075188420712948, - 0.09374929964542389, - 0.027967195957899094, - 0.04231597110629082, - -0.06153659150004387, - -0.022731691598892212, - -0.012186696752905846, - 0.03814654424786568, - 0.03575189411640167, - -0.00915575958788395, - 0.033084526658058167, - 0.020828580483794212, - -0.016791023313999176, - 0.0513828806579113, - 0.03743875026702881, - 0.052771344780921936, - -0.03646264970302582, - -0.0021127290092408657, - 0.0041466159746050835, - 0.09631451964378357, - 0.033778030425310135, - -0.03219907730817795, - -0.04204895719885826, - 0.0024648234248161316, - -0.054525911808013916, - 0.02790418267250061, - 0.00226418930105865, - 0.016059136018157005, - 0.02665839157998562, - -0.009727763012051582, - -0.07046971470117569, - -0.06503443419933319, - 0.03668923303484917, - -0.03864191100001335, - -0.019197283312678337, - -0.06485207378864288, - 0.05504381284117699, - 0.0919666439294815, - 0.013247310183942318, - -0.011289517395198345, - -0.012406980618834496, - -0.0014653801918029785, - -0.008494708687067032, - -0.009265957400202751, - 0.025266608223319054, - 0.05778200924396515, - -0.08423022925853729, - -0.005291566252708435, - -0.06840603053569794, - 0.041275035589933395, - -0.01362069882452488, - 0.07468315958976746, - 0.05122219771146774, - -0.02949412912130356, - -0.07358384877443314, - 0.02857038378715515, - 0.01028354186564684, - 0.03694801777601242, - 0.007761284708976746, - 0.016958113759756088, - 0.047975361347198486, - -0.0629507526755333, - 0.07172977924346924, - 0.034149229526519775, - -0.04743167385458946, - -0.05342298373579979, - -0.015073215588927269, - -0.012188675813376904, - 0.02875084988772869, - -0.013990381732583046, - -0.05342768132686615, - 0.009889054112136364, - 0.035517312586307526, - 0.04193177819252014, - 0.017920322716236115, - 0.08575962483882904, - 0.022102240473031998, - -0.07489384710788727 - ] - }, - "p245_152.wav": { - "name": "p245", - "embedding": [ - 0.06568039953708649, - 0.07050301134586334, - 0.015121426433324814, - 0.03542715683579445, - -0.007639400660991669, - 0.000384732149541378, - -0.11704064905643463, - 0.06026551127433777, - 0.06049394607543945, - 0.0890810489654541, - -0.11136486381292343, - 0.06300534307956696, - -0.03144402056932449, - -0.11153105646371841, - 0.011645074933767319, - 0.004853077232837677, - -0.021283747628331184, - -0.019176630303263664, - -0.014977691695094109, - -0.03683779016137123, - 0.031739816069602966, - 0.028890985995531082, - 0.051894064992666245, - -0.051564548164606094, - -0.01084556058049202, - 0.03681202605366707, - -0.009445001371204853, - -0.02565644681453705, - 0.006432653404772282, - -0.007784731686115265, - 0.05918963626027107, - 0.011419139802455902, - -0.00481805857270956, - 0.04123397544026375, - 0.0390835665166378, - 0.037033021450042725, - -0.023634470999240875, - -0.0033903345465660095, - -0.015534022822976112, - 0.05760395526885986, - -0.049196623265743256, - 0.07449229061603546, - 0.05927181988954544, - -0.06591930985450745, - 0.054184507578611374, - -0.0069709280505776405, - -0.02410479262471199, - 0.012685774825513363, - -0.0924324095249176, - 0.1296849548816681, - 0.032415907829999924, - 0.049245622009038925, - -0.06852807104587555, - 0.011016981676220894, - 0.06610535085201263, - -0.0039020217955112457, - -0.0638691857457161, - -0.03165901079773903, - 0.02272486872971058, - 0.0452842190861702, - -0.02567441388964653, - -0.05181419476866722, - -0.006496144458651543, - 0.03539993241429329, - 0.024695932865142822, - 0.03415378928184509, - 0.07912105321884155, - 0.10679687559604645, - -0.033390022814273834, - 0.01811676099896431, - 0.07058060169219971, - 0.046678733080625534, - 0.05361613631248474, - -0.010610930621623993, - 0.008627021685242653, - -0.033300288021564484, - -0.028978338465094566, - -0.008193012326955795, - 0.034127965569496155, - -0.022994857281446457, - -0.005106198135763407, - -0.054289668798446655, - 0.00948486290872097, - 0.03841902315616608, - -0.0521470308303833, - -0.02019362896680832, - 0.08034151792526245, - -0.01214711181819439, - 0.05394124984741211, - 0.06095908582210541, - 0.0067995465360581875, - 0.015406320802867413, - -0.045767344534397125, - -0.06889083981513977, - -0.017969008535146713, - -0.0266830213367939, - 0.06068703159689903, - 0.03987390547990799, - 0.0448191873729229, - 0.02920946106314659, - 0.06690320372581482, - 0.01593732088804245, - -0.02332831360399723, - -0.027879005298018456, - -0.07674582302570343, - 0.09171070903539658, - 0.09511812776327133, - -0.03631272912025452, - 0.00815240852534771, - -0.01907288283109665, - 0.011825218796730042, - 0.03335467353463173, - -0.03220153972506523, - -0.024864561855793, - 0.015264173969626427, - 0.06606915593147278, - 0.050294890999794006, - 0.10389401018619537, - 0.030422233045101166, - 0.014141361229121685, - 0.11506776511669159, - -0.05551592633128166, - -0.037076231092214584, - -0.019839921966195107, - 0.0027153100818395615, - -0.07247728109359741, - 0.06413573026657104, - 0.046325549483299255, - 0.012318139895796776, - 0.002652701223269105, - 0.04738154262304306, - 0.0047084493562579155, - 0.021685883402824402, - -0.0804065614938736, - 0.02493578940629959, - 0.06412941962480545, - -0.004564137198030949, - 0.020893307402729988, - 0.07060474157333374, - 0.004942305386066437, - 0.08554500341415405, - 0.07560121268033981, - -0.017686428502202034, - -0.09360737353563309, - 0.03937064856290817, - 0.04402584582567215, - 0.011577093973755836, - -0.049636200070381165, - -0.04219415411353111, - -0.03464174270629883, - -0.050765715539455414, - 0.07800976932048798, - -0.03237457573413849, - 0.05607454851269722, - 0.03024885803461075, - -0.025695523247122765, - 0.11722832918167114, - -0.015280376188457012, - 0.0021266797557473183, - -0.03746919333934784, - -0.06223081052303314, - -0.02988281100988388, - 0.028580032289028168, - -0.1587752401828766, - -0.05835855007171631, - -0.06271016597747803, - 0.018332980573177338, - 0.02145416848361492, - -0.009620556607842445, - 0.07113045454025269, - -0.030116654932498932, - 0.01783253811299801, - -0.0028718672692775726, - 0.005618592724204063, - -0.04031171277165413, - -0.10369075834751129, - -0.008024596609175205, - -0.03695688396692276, - 0.012727197259664536, - 0.07196111977100372, - -0.0263172946870327, - 0.023576980456709862, - -0.025948306545615196, - -0.07018887996673584, - -0.05338285118341446, - 0.040716271847486496, - 0.008761843666434288, - -0.03361821919679642, - 0.0235324427485466, - 0.053621962666511536, - -0.030684035271406174, - 0.02026905119419098, - -0.0004247799515724182, - 0.08760958909988403, - -0.07562284916639328, - 0.007745894603431225, - -0.027319807559251785, - 0.05717445909976959, - 0.0958368331193924, - -0.031041249632835388, - -0.056582316756248474, - -0.08980703353881836, - -0.01526031643152237, - -0.0061603933572769165, - -0.03898739069700241, - -0.02920238859951496, - -0.012367170304059982, - -0.017699792981147766, - -0.02984776720404625, - -0.09936054050922394, - -0.017922768369317055, - 0.003220178186893463, - 0.016064416617155075, - -0.08474445343017578, - 0.016015449538826942, - -0.03626994043588638, - 0.016837196424603462, - -0.0303809717297554, - 0.0441390797495842, - -0.02560199610888958, - -0.03497883677482605, - -0.03319574519991875, - 0.02868572250008583, - 0.05245283991098404, - 0.002589680254459381, - -0.06905016303062439, - -0.060260094702243805, - 0.05613602697849274, - -0.017674973234534264, - 0.05546843633055687, - 0.007831376045942307, - -0.024376019835472107, - 0.011616818606853485, - -0.0378858782351017, - -0.025648297742009163, - 0.017465008422732353, - 0.05622566118836403, - 0.01388239860534668, - 0.010057474486529827, - -0.02033090963959694, - 0.06108627840876579, - 0.054762739688158035, - 0.02007434144616127, - -0.04783332347869873, - -0.011268765665590763, - -0.04247445985674858, - 0.000974167138338089, - -0.003802998922765255, - -0.052601687610149384, - 0.04212568327784538, - -0.012764737010002136, - 0.035188090056180954, - 0.008754042908549309, - 0.07769253104925156, - 0.03181547671556473, - -0.05080236494541168 - ] - }, - "p245_168.wav": { - "name": "p245", - "embedding": [ - 0.056565508246421814, - 0.10569661855697632, - 0.01976991631090641, - 0.016167454421520233, - -0.01686066761612892, - 0.05318206548690796, - -0.09300638735294342, - 0.1022619903087616, - -0.0028305761516094208, - 0.11097203195095062, - -0.07566644251346588, - 0.07825879007577896, - -0.04601753130555153, - -0.13325703144073486, - -0.03003876470029354, - 0.037246305495500565, - -0.06474657356739044, - -0.014575082808732986, - -0.0264684297144413, - -0.021955300122499466, - 0.009934083558619022, - 0.018253004178404808, - 0.043765172362327576, - -0.01032787561416626, - 0.004264790564775467, - 0.0464717335999012, - -0.0137382997199893, - 0.01764575019478798, - 0.003650949103757739, - -0.05782259255647659, - -0.010250275954604149, - 0.06251734495162964, - -0.02665332891047001, - 0.02203410305082798, - 0.0396132618188858, - 0.0016502225771546364, - -0.0013912394642829895, - -0.0550323985517025, - -0.03445427119731903, - 0.02622019499540329, - -0.0410459041595459, - 0.06113039329648018, - 0.028976740315556526, - -0.04266804829239845, - 0.04016966372728348, - 0.009342637844383717, - -0.03406491130590439, - -0.02069433033466339, - -0.10190615803003311, - 0.1413787454366684, - 0.04822705313563347, - 0.012435030192136765, - -0.06034659966826439, - -0.04195810854434967, - 0.09271474927663803, - -0.012511786073446274, - -0.10435543954372406, - -0.01934734545648098, - 0.05127720907330513, - 0.1035361960530281, - -0.015034444630146027, - -0.034601837396621704, - -0.0006921999156475067, - 0.0784897431731224, - 0.04153509438037872, - 0.06304416060447693, - 0.07200072705745697, - 0.09118663519620895, - -0.022404808551073074, - 0.028127577155828476, - 0.05848971754312515, - 0.03265898674726486, - 0.05510114133358002, - -0.006718305870890617, - 0.021895799785852432, - -0.017620040103793144, - -0.0296504907310009, - -0.0004278969136066735, - -0.004838461987674236, - -0.03186143562197685, - 0.008121516555547714, - -0.011741980910301208, - 0.014575828798115253, - 0.017020730301737785, - -0.026703685522079468, - 0.022150270640850067, - 0.026279255747795105, - 0.02104608342051506, - 0.06673584133386612, - 0.04156454652547836, - 0.02037002332508564, - 0.07593825459480286, - -0.056258246302604675, - -0.08281802386045456, - 0.0035218074917793274, - -0.011316908523440361, - 0.03560544550418854, - 0.05660180002450943, - 0.03805754333734512, - -0.015298187732696533, - 0.09920457005500793, - 0.03190723434090614, - 0.006925049237906933, - -0.002623538486659527, - -0.09016817808151245, - 0.08034653961658478, - 0.07268591970205307, - -0.01996028982102871, - 0.02928842231631279, - -0.01607932150363922, - 0.08490611612796783, - 0.08069181442260742, - -0.10030349344015121, - -0.03755411505699158, - 0.01686638779938221, - 0.023562200367450714, - 0.011748241260647774, - 0.10431400686502457, - 0.0036321133375167847, - 0.025132248178124428, - 0.11550642549991608, - -0.0804922953248024, - -0.019314246252179146, - -0.00261731818318367, - 0.01315247267484665, - -0.06227680668234825, - 0.0479128398001194, - 0.029852773994207382, - -0.016977770254015923, - 0.003962523303925991, - 0.056579262018203735, - -0.003590494394302368, - -0.0027589770033955574, - -0.014792868867516518, - -0.029546651989221573, - 0.025381311774253845, - -0.029416430741548538, - 0.011119483038783073, - 0.04061873257160187, - 0.04402565211057663, - 0.02762262523174286, - 0.020840629935264587, - -0.04530724883079529, - -0.07301972806453705, - 0.022980893030762672, - 0.0374937430024147, - 0.03745894134044647, - -0.0025378642603754997, - -0.042062897235155106, - -0.02515600249171257, - -0.02632288634777069, - 0.053740113973617554, - -0.02566761150956154, - 0.061681587249040604, - 0.009704223833978176, - -0.011917075142264366, - 0.08598228543996811, - 0.024193791672587395, - -0.012578501366078854, - -0.05083724856376648, - -0.06380100548267365, - 0.004806314595043659, - 0.044742271304130554, - -0.11028078198432922, - -0.054466620087623596, - -0.019980769604444504, - 0.00043937284499406815, - -0.004930587485432625, - 0.023000026121735573, - 0.056260038167238235, - -0.007063616067171097, - 0.012684051878750324, - -0.042122963815927505, - 0.015917006880044937, - -0.07711641490459442, - -0.09213312715291977, - 0.005742879584431648, - -0.02615552581846714, - 0.009976689703762531, - 0.07130679488182068, - -0.013923478312790394, - 0.02293221279978752, - -0.03153935819864273, - -0.06742885708808899, - -0.031680211424827576, - 0.0642232894897461, - 0.031702347099781036, - 0.008542610332369804, - 0.03702723607420921, - 0.06184356287121773, - -0.026360029354691505, - 0.0495012141764164, - 0.01424497738480568, - 0.09329962730407715, - -0.05293044447898865, - 0.01893806643784046, - -0.03423337638378143, - 0.05290659889578819, - 0.07764897495508194, - -0.06535385549068451, - -0.09471289813518524, - -0.040083594620227814, - -0.047701042145490646, - 0.03219965100288391, - -0.026276051998138428, - -0.010520808398723602, - 0.01824675314128399, - -0.01838953047990799, - -0.07038309425115585, - -0.09503281116485596, - 0.061373695731163025, - -0.027713842689990997, - -0.007684936746954918, - -0.07138590514659882, - 0.037943996489048004, - 0.030346957966685295, - 0.04433427378535271, - -0.021969594061374664, - 0.03747117146849632, - 0.027651622891426086, - -0.02950470894575119, - -0.021597977727651596, - 0.031217336654663086, - 0.032784946262836456, - -0.049545299261808395, - -0.018668031319975853, - -0.06159907206892967, - 0.05239469185471535, - -0.03028920479118824, - 0.12433380633592606, - 0.007899793796241283, - -0.03463663160800934, - -0.043083272874355316, - 0.030646683648228645, - -0.031581319868564606, - 0.03180946037173271, - 0.03660577908158302, - 0.03586579114198685, - 0.02999577485024929, - -0.043787047266960144, - 0.0906069427728653, - 0.03280480206012726, - -0.015752756968140602, - -0.0313909612596035, - -0.01949360966682434, - -0.06354457139968872, - -0.01424131914973259, - -0.008922316133975983, - -0.07690262049436569, - 0.003482172265648842, - 0.007449437864124775, - 0.02683500200510025, - 0.03875287249684334, - 0.11064650118350983, - 0.03921329975128174, - -0.08053995668888092 - ] - }, - "p245_412.wav": { - "name": "p245", - "embedding": [ - 0.059551071375608444, - 0.09396977722644806, - -0.007790356408804655, - 0.03827323019504547, - -0.031122148036956787, - 0.08021914213895798, - -0.13160111010074615, - 0.1297227442264557, - -0.03387943655252457, - 0.13853919506072998, - -0.08293893188238144, - 0.11878636479377747, - -0.006550307851284742, - -0.1708064079284668, - -0.041420020163059235, - 0.04908297583460808, - -0.01511390134692192, - 0.010826004669070244, - -0.00890287570655346, - 0.010085998103022575, - 0.050186432898044586, - 0.0425027534365654, - 0.04095324128866196, - -0.025668812915682793, - 0.0361940935254097, - 0.036053795367479324, - 0.01619900017976761, - 0.06936417520046234, - 0.02931908331811428, - -0.06283420324325562, - -0.03523242473602295, - 0.13757073879241943, - -0.03425612673163414, - 0.03379429876804352, - 0.07027476280927658, - 0.014631631784141064, - -0.012448492459952831, - -0.07274185866117477, - -0.0018677401822060347, - -0.02096092514693737, - -0.025742243975400925, - 0.05728081986308098, - 0.02749268338084221, - -0.006675062235444784, - 0.04198485240340233, - 0.01832471787929535, - -0.017652049660682678, - -0.051068760454654694, - -0.09912580251693726, - 0.15159271657466888, - 0.03060276061296463, - 0.024431198835372925, - -0.08318814635276794, - -0.0815662294626236, - 0.09044089913368225, - -0.00455247750505805, - -0.09931713342666626, - -0.018587984144687653, - 0.07565685361623764, - 0.18303295969963074, - -0.010835006833076477, - -0.041080743074417114, - 0.021704111248254776, - 0.10754959285259247, - 0.03294294327497482, - 0.10348986834287643, - 0.08616535365581512, - 0.09886334836483002, - 0.029273122549057007, - 0.03710238263010979, - 0.020716063678264618, - 0.07193975150585175, - 0.0438961498439312, - -0.014550592750310898, - 0.016445836052298546, - 0.00466400571167469, - -0.03322482854127884, - 0.024070069193840027, - -0.03337256237864494, - -0.015817489475011826, - -0.005727203097194433, - 0.006391867529600859, - 0.029035791754722595, - 0.025645751506090164, - -0.04106895625591278, - 0.04555663466453552, - 0.0073151011019945145, - -0.016664739698171616, - 0.058821287006139755, - 0.02043408527970314, - 0.00013909365225117654, - 0.04111506789922714, - -0.07460179179906845, - -0.12922067940235138, - 0.019843820482492447, - 0.002329119248315692, - 0.014328515157103539, - 0.07003022730350494, - 0.03540678322315216, - -0.03142236918210983, - 0.10023465007543564, - 0.036998823285102844, - -0.0054785399697721004, - 0.03650575131177902, - -0.09243693202733994, - 0.10729318112134933, - 0.09154709428548813, - 0.00496859522536397, - 0.058631282299757004, - -0.07062047719955444, - 0.08093982934951782, - 0.07895738631486893, - -0.1539396047592163, - -0.07585584372282028, - 0.03915075212717056, - 0.02207566797733307, - 0.012164573185145855, - 0.11254385113716125, - 0.0005174963735044003, - 0.024131037294864655, - 0.09192382544279099, - -0.10582148283720016, - -0.06048337742686272, - -0.035661470144987106, - 0.03839374706149101, - -0.0737416073679924, - 0.054281871765851974, - 0.02367679588496685, - -0.01686018332839012, - -0.022690005600452423, - 0.06175989657640457, - -0.00546395406126976, - 0.01441828440874815, - 0.017339123412966728, - -0.05324285849928856, - 0.02747204154729843, - -0.052139945328235626, - 0.00864584930241108, - 0.03275572136044502, - 0.04912107437849045, - 0.043823085725307465, - 0.012414149008691311, - -0.05398445576429367, - -0.11230254173278809, - -0.016785483807325363, - 0.05911783128976822, - 0.061964720487594604, - -0.020540151745080948, - -0.04015234857797623, - -0.03434581682085991, - -0.05891314148902893, - 0.05093757063150406, - -0.01295282319188118, - 0.06875548511743546, - 0.013460883870720863, - 0.00600619800388813, - 0.08526816964149475, - -0.0013410001993179321, - -0.000845342583488673, - -0.057320207357406616, - -0.03240108862519264, - 0.02450636401772499, - 0.03732983022928238, - -0.08661596477031708, - -0.05807797238230705, - 0.006895546801388264, - 0.0024755909107625484, - -0.047786809504032135, - 0.01871403679251671, - 0.03775128722190857, - 0.022860705852508545, - 0.05361276865005493, - -0.03679286688566208, - -0.026529472321271896, - -0.13456949591636658, - -0.06961002200841904, - -0.0020515008363872766, - -0.0010099774226546288, - -0.008797619491815567, - 0.08168214559555054, - 0.03459955006837845, - 0.043608199805021286, - -0.008597624488174915, - -0.04494110494852066, - -0.06701546907424927, - 0.06338801234960556, - 0.06272050738334656, - 0.030632514506578445, - 0.0563620924949646, - 0.019242025911808014, - -0.017249440774321556, - 0.06670928746461868, - 0.0789564922451973, - 0.08576953411102295, - -0.0011255552526563406, - -0.00410756841301918, - -0.09396969527006149, - 0.1029408797621727, - 0.11418573558330536, - -0.07202354073524475, - -0.11462907493114471, - -0.02302691899240017, - -0.07886506617069244, - 0.045495133846998215, - -0.033001236617565155, - -0.004796125926077366, - 0.02436123788356781, - -0.03048814833164215, - -0.10970458388328552, - -0.08865918964147568, - 0.08036887645721436, - -0.060385968536138535, - -0.021434027701616287, - -0.07117162644863129, - 0.054617077112197876, - 0.08526913821697235, - 0.012556545436382294, - -0.019951485097408295, - -0.012037888169288635, - 0.05951451510190964, - -0.09091498702764511, - -0.025194905698299408, - 0.020978357642889023, - 0.004785995930433273, - -0.10062437504529953, - 0.033920541405677795, - -0.05357489734888077, - 0.05097579583525658, - -0.07629111409187317, - 0.15890458226203918, - -0.015446837991476059, - -0.06800419092178345, - -0.0695822462439537, - 0.044950924813747406, - -0.017370080575346947, - 0.02149895951151848, - 0.03292621672153473, - 0.05680186673998833, - 0.01768268272280693, - -0.1016058549284935, - 0.10827549546957016, - 0.020568612962961197, - -0.02066868543624878, - -0.07249072939157486, - -0.06639677286148071, - -0.04306124895811081, - 0.021274492144584656, - -0.01809285394847393, - -0.07401397079229355, - -0.016246456652879715, - 0.02581849694252014, - 0.0021219714544713497, - 0.0340658500790596, - 0.13973397016525269, - 0.030186116695404053, - -0.1141631230711937 - ] - }, - "p245_120.wav": { - "name": "p245", - "embedding": [ - 0.0345221683382988, - 0.11285677552223206, - -0.006185987964272499, - 0.00444819126278162, - -0.04851618409156799, - 0.04443643242120743, - -0.14280781149864197, - 0.16455696523189545, - -0.054629914462566376, - 0.11926575005054474, - -0.08495447039604187, - 0.09751155972480774, - -0.0506727397441864, - -0.1767335832118988, - -0.04004449024796486, - 0.069318987429142, - -0.0488586388528347, - -0.04349035769701004, - -0.040879592299461365, - -0.02426302433013916, - 0.01655694469809532, - 0.004437287803739309, - -0.009126175194978714, - 0.057895857840776443, - 0.021293045952916145, - 0.0665641576051712, - -0.0037109688855707645, - 0.045338451862335205, - 0.017536109313368797, - 0.007746345363557339, - -0.009824639186263084, - 0.09418481588363647, - -0.029059838503599167, - 0.013081266544759274, - 0.07159115374088287, - -0.00026314088609069586, - 0.011893361806869507, - -0.043273866176605225, - -0.02280638925731182, - 0.005177565850317478, - -0.058620356023311615, - 0.07651512324810028, - 0.043367937207221985, - 0.00030603446066379547, - 0.03683783486485481, - 0.05965195223689079, - -0.0029484110418707132, - -0.05564282089471817, - -0.10472553968429565, - 0.14723926782608032, - 0.0845227986574173, - -0.02044135332107544, - -0.07024499028921127, - -0.055844470858573914, - 0.10607326030731201, - -0.03724218159914017, - -0.11428283900022507, - -0.05419738590717316, - 0.0979962944984436, - 0.15035147964954376, - -0.04854988306760788, - -0.01990264095366001, - 0.010210538282990456, - 0.16217073798179626, - 0.06145327538251877, - 0.09531673789024353, - 0.04559844732284546, - 0.11191905289888382, - -0.04619233310222626, - 0.004203858319669962, - 0.08833819627761841, - 0.041186489164829254, - 0.046529099345207214, - -0.014624322764575481, - 0.01584678143262863, - 0.005087331403046846, - 0.0007320850272662938, - 0.0194782093167305, - -0.02834141254425049, - -0.013659695163369179, - -0.04466176778078079, - 0.030789121985435486, - -0.03721405193209648, - 0.008746621198952198, - -0.006488821469247341, - 0.07020560652017593, - 0.04476916044950485, - -0.009815419092774391, - 0.07588279992341995, - 0.07513284683227539, - 0.010681292973458767, - 0.06956884264945984, - -0.06521964818239212, - -0.06147092580795288, - 0.011778132058680058, - -0.02267150580883026, - 0.02839742973446846, - 0.06304428726434708, - 0.031682223081588745, - 0.007486862130463123, - 0.11619949340820312, - 0.05684630572795868, - -0.0018135188147425652, - 0.03489911928772926, - -0.10900737345218658, - 0.14764909446239471, - 0.05465555936098099, - -0.04299356788396835, - 0.029297037050127983, - -0.014288803562521935, - 0.0414859876036644, - 0.07062771916389465, - -0.11803363263607025, - -0.06383292376995087, - 0.03299330174922943, - 0.037048954516649246, - -0.03904881328344345, - 0.0872720330953598, - -0.008770468644797802, - 0.01533513143658638, - 0.10238590091466904, - -0.05033291131258011, - -0.06311125308275223, - -0.01857956126332283, - 0.043770015239715576, - -0.07190638780593872, - 0.04814283549785614, - 0.06744087487459183, - 0.005141375586390495, - 0.0175476111471653, - 0.10697303712368011, - 0.014797304756939411, - -0.008125048130750656, - 0.017246047034859657, - -0.03243488073348999, - 0.03565003722906113, - -0.011775722727179527, - 0.014176595956087112, - 0.02908923104405403, - 0.04835540056228638, - 0.041539084166288376, - 0.015653640031814575, - -0.017810266464948654, - -0.09884323179721832, - 0.006732898764312267, - 0.04855845123529434, - 0.10380532592535019, - -0.003862161422148347, - -0.0040578898042440414, - -0.03480366989970207, - -0.04818146675825119, - -0.0247996523976326, - -0.003616938367486, - 0.08203420042991638, - -0.044428907334804535, - -0.009084219112992287, - 0.11731656640768051, - 0.003149626310914755, - 0.007940972223877907, - -0.060447268187999725, - 0.005992789752781391, - 0.004215777385979891, - 0.0528411865234375, - -0.0694071501493454, - -0.0820966362953186, - 0.015340112149715424, - 0.05275840312242508, - -0.003037865739315748, - 0.07079257071018219, - 0.023328151553869247, - -0.002711064647883177, - 0.015954559668898582, - -0.07223737239837646, - 0.04205968230962753, - -0.09430976212024689, - -0.059846825897693634, - -0.0208941288292408, - -0.018279600888490677, - -0.01656361296772957, - 0.052218444645404816, - 0.018482070416212082, - 0.05238855257630348, - 0.025909263640642166, - -0.11537493020296097, - -0.08688834309577942, - 0.06682883948087692, - 0.08272383362054825, - -0.02036820910871029, - 0.059195246547460556, - 0.07914192974567413, - -0.05107014626264572, - 0.04094104841351509, - 0.052519600838422775, - 0.10583151131868362, - -0.03903021663427353, - 0.016622763127088547, - -0.06429634243249893, - 0.035176992416381836, - 0.052942998707294464, - -0.13259881734848022, - -0.06305655837059021, - -0.03044966608285904, - -0.021380890160799026, - 0.006965217180550098, - -0.011119682341814041, - 0.03047073259949684, - 0.02747570537030697, - -0.014237066730856895, - -0.07584354281425476, - -0.0850161537528038, - 0.0657251700758934, - -0.1002492755651474, - 0.019911937415599823, - -0.06504003703594208, - 0.031941067427396774, - 0.0934300571680069, - 0.0373072549700737, - -0.02253125235438347, - -0.014421112835407257, - 0.03891584649682045, - -0.027869481593370438, - -0.01874903216958046, - 0.04147224500775337, - 0.026441780850291252, - -0.10136489570140839, - 0.009756246581673622, - -0.08010652661323547, - 0.0838051438331604, - -0.031622424721717834, - 0.1586567610502243, - 0.015823224559426308, - -0.053576741367578506, - -0.09206540882587433, - -0.016890795901417732, - -0.034552544355392456, - 0.057748619467020035, - 0.022549351677298546, - 0.061687394976615906, - 0.0239492766559124, - -0.005867598112672567, - 0.14386054873466492, - 0.0446644052863121, - -0.05506458878517151, - -0.05955399572849274, - -0.042109981179237366, - -0.054780587553977966, - 0.019849447533488274, - 0.030567895621061325, - -0.09644058346748352, - -0.03136271610856056, - 0.005498300772160292, - -0.05479053407907486, - 0.09022976458072662, - 0.14143067598342896, - 0.09358908236026764, - -0.12136007845401764 - ] - }, - "p245_067.wav": { - "name": "p245", - "embedding": [ - 0.020868409425020218, - 0.0868513286113739, - -0.012039963155984879, - 0.019087977707386017, - -0.0729515552520752, - 0.07583948224782944, - -0.10541653633117676, - 0.11873645335435867, - -0.07380959391593933, - 0.14194393157958984, - -0.08430862426757812, - 0.11622262746095657, - -0.0546979159116745, - -0.17934924364089966, - -0.017293427139520645, - 0.06783819198608398, - -0.04402795806527138, - -0.04271041601896286, - -0.04180052503943443, - -0.028469868004322052, - 0.03680458664894104, - 0.01561243087053299, - 0.01897319406270981, - 0.028721995651721954, - 0.006416977383196354, - 0.08553045243024826, - -0.012912136502563953, - 0.030799776315689087, - 0.01150369644165039, - -0.050855159759521484, - -0.05115745961666107, - 0.10553304851055145, - -0.056656867265701294, - 0.01121559552848339, - 0.04766120761632919, - -0.00876043550670147, - -0.008931387215852737, - -0.050337910652160645, - -0.011606164276599884, - -0.017599213868379593, - -0.06905359029769897, - 0.07020455598831177, - 0.00306877912953496, - 0.0001026339887175709, - 0.0311671681702137, - 0.00494158361107111, - -0.029914572834968567, - -0.026356277987360954, - -0.09261718392372131, - 0.12716248631477356, - 0.08353427797555923, - -0.031998563557863235, - -0.05076141282916069, - -0.06290306150913239, - 0.11054226756095886, - -0.014636765234172344, - -0.13588395714759827, - -0.06840340793132782, - 0.09216269105672836, - 0.13853719830513, - -0.032242052257061005, - -0.020886607468128204, - 0.005845916457474232, - 0.11510229110717773, - 0.040641821920871735, - 0.12292227149009705, - 0.049254514276981354, - 0.1059156283736229, - -0.023208286613225937, - 0.02244659513235092, - 0.06283772736787796, - 0.06280370056629181, - 0.05181184411048889, - -0.015416629612445831, - 0.025779955089092255, - -0.0022751784417778254, - -0.006654226686805487, - 0.03142628073692322, - -0.02260248363018036, - -0.01621728017926216, - -0.03134561702609062, - -0.014710749499499798, - -0.021795710548758507, - -0.021698681637644768, - 0.003551172325387597, - 0.054710499942302704, - 0.05024096369743347, - 0.000979394419118762, - 0.07397016882896423, - 0.04378657042980194, - -0.01866992563009262, - 0.08207811415195465, - -0.07188402116298676, - -0.05842689424753189, - 0.01084179151803255, - 0.004157151561230421, - 0.011689719744026661, - 0.08458214998245239, - 0.033798880875110626, - -0.003460160456597805, - 0.11204814910888672, - 0.04379774630069733, - 0.006874361541122198, - 0.03510897234082222, - -0.09786175191402435, - 0.14100712537765503, - 0.07588119804859161, - -0.035735756158828735, - 0.03177005052566528, - -0.02765769511461258, - 0.09233300387859344, - 0.07977771759033203, - -0.12316806614398956, - -0.05609642341732979, - -0.011355175636708736, - -0.015557361766695976, - -0.04847920686006546, - 0.09977260231971741, - -0.029047349467873573, - 0.005727539304643869, - 0.11568583548069, - -0.07327874004840851, - -0.05858144909143448, - -0.009706265293061733, - 0.018438544124364853, - -0.09241557121276855, - 0.050521910190582275, - 0.03653712198138237, - 0.007419217377901077, - 0.038794904947280884, - 0.10721154510974884, - -0.027727147564291954, - -0.01003716979175806, - 0.04247761145234108, - -0.06914205849170685, - 0.007558742538094521, - -0.032879382371902466, - 0.015886986628174782, - 0.07359768450260162, - 0.04000311717391014, - 0.061109937727451324, - -0.023807067424058914, - 0.0012497404823079705, - -0.09182318300008774, - 0.01841042935848236, - 0.037720777094364166, - 0.06340830028057098, - 0.0013550283620133996, - 0.0004873467842116952, - -0.034900542348623276, - -0.08777841925621033, - 0.016995344310998917, - -0.018115662038326263, - 0.08811838924884796, - -0.03945860639214516, - 0.001946773030795157, - 0.09453526139259338, - 0.045616745948791504, - -0.013560041785240173, - -0.10332232713699341, - -0.04099069535732269, - 0.003214046359062195, - 0.05721449851989746, - -0.0923265665769577, - -0.060605041682720184, - 0.007285548839718103, - 0.051176127046346664, - -0.01324876956641674, - 0.05760982632637024, - 0.06655386090278625, - 0.024315889924764633, - 0.025252368301153183, - -0.0742875188589096, - 0.03546706587076187, - -0.08509795367717743, - -0.06393812596797943, - -0.018804963678121567, - -0.040829822421073914, - -0.0029831058345735073, - 0.06176944822072983, - -0.008249293081462383, - 0.023371916264295578, - -0.000571876298636198, - -0.09278358519077301, - -0.09932700544595718, - 0.06875362992286682, - 0.05416400730609894, - -0.003684660652652383, - 0.06501224637031555, - 0.06914102286100388, - -0.07024751603603363, - 0.04835633188486099, - 0.042042143642902374, - 0.13709813356399536, - -0.049365803599357605, - 0.04294247180223465, - -0.07167274504899979, - 0.04976804181933403, - 0.08467129617929459, - -0.10611759126186371, - -0.07544932514429092, - -0.035962000489234924, - -0.04060329496860504, - 0.06351238489151001, - -0.043235473334789276, - -0.03657742962241173, - 0.024615004658699036, - -0.016037333756685257, - -0.08906956017017365, - -0.07769998908042908, - 0.10148769617080688, - -0.0646141767501831, - -0.0024357701186090708, - -0.09675583988428116, - 0.043204087764024734, - 0.052898846566677094, - 0.05180158466100693, - -0.046868979930877686, - 0.03207521140575409, - 0.0725894346833229, - -0.025808483362197876, - 0.01369834691286087, - 0.06474174559116364, - 0.022981004789471626, - -0.07859141379594803, - -0.03240450844168663, - -0.09464406967163086, - 0.06016550213098526, - -0.03589615598320961, - 0.160593181848526, - -0.016197221353650093, - -0.043579649180173874, - -0.06344643235206604, - 0.04137660935521126, - -0.012816869653761387, - 0.03843008354306221, - 0.06086871027946472, - 0.0787402018904686, - 0.030957505106925964, - -0.04526152461767197, - 0.14024889469146729, - 0.028170615434646606, - -0.02721204236149788, - -0.053903162479400635, - -0.020322106778621674, - -0.059405043721199036, - 0.0197504460811615, - 0.014078475534915924, - -0.1281036138534546, - -0.00748630054295063, - 0.019126102328300476, - -0.02727348729968071, - 0.07681892067193985, - 0.13779094815254211, - 0.0967927947640419, - -0.09268027544021606 - ] - }, - "p245_348.wav": { - "name": "p245", - "embedding": [ - 0.06416963785886765, - 0.0763169527053833, - -0.03299425542354584, - 0.04098282381892204, - -0.06967906653881073, - 0.047166064381599426, - -0.11756372451782227, - 0.11179213225841522, - -0.019342811778187752, - 0.14263132214546204, - -0.05705989897251129, - 0.13704779744148254, - -0.0022996054030954838, - -0.1816350519657135, - -0.030605586245656013, - 0.043044961988925934, - -0.04927428066730499, - -0.04703671112656593, - -0.0530998557806015, - -0.04178537428379059, - 0.03982323408126831, - 0.06660129129886627, - 0.0455942340195179, - 0.006632889620959759, - 0.024298429489135742, - 0.07572554796934128, - -0.010593682527542114, - 0.03301914781332016, - 0.011640319600701332, - -0.10006465017795563, - -0.05677707493305206, - 0.08164320886135101, - -0.05086119472980499, - 0.010672129690647125, - 0.014715148136019707, - -0.018537038937211037, - 0.014582466334104538, - -0.058439094573259354, - -0.036608338356018066, - 0.030830949544906616, - -0.04347511753439903, - 0.07392939925193787, - 0.018461402505636215, - -0.03597142547369003, - 0.05048117786645889, - -0.0034174006432294846, - -0.025858085602521896, - -0.04569001495838165, - -0.10903674364089966, - 0.17590458691120148, - 0.08129538595676422, - -0.008880347944796085, - -0.05846276879310608, - -0.06529244780540466, - 0.09038583934307098, - -0.025317519903182983, - -0.12211281061172485, - -0.03669178485870361, - 0.0553026981651783, - 0.13649219274520874, - -0.02917296066880226, - -0.04795972630381584, - 0.045753784477710724, - 0.12120044231414795, - 0.08033176511526108, - 0.05919057875871658, - 0.09365145862102509, - 0.10905051231384277, - -0.03795982152223587, - 0.0016961735673248768, - 0.05388873815536499, - 0.08848769217729568, - 0.08406290411949158, - -0.0003825872263405472, - 0.030380364507436752, - 0.005348149221390486, - -0.009688726626336575, - -0.031847935169935226, - -0.018902946263551712, - -0.005971909966319799, - -0.0016954416641965508, - -0.0025203523691743612, - 0.010228863917291164, - 0.02720189467072487, - -0.04551564157009125, - 0.06288662552833557, - 0.04906798154115677, - -0.022211231291294098, - 0.051218800246715546, - 0.03666144609451294, - 0.018922779709100723, - 0.06296109408140182, - -0.07955645024776459, - -0.0784418061375618, - 0.03906489908695221, - 0.01877228543162346, - 0.012471899390220642, - 0.06295335292816162, - 0.051156848669052124, - -0.024583876132965088, - 0.12628428637981415, - 0.04476037994027138, - -0.020415350794792175, - 0.012895047664642334, - -0.07944655418395996, - 0.12012055516242981, - 0.11362238228321075, - -0.026701495051383972, - 0.05360058695077896, - -0.04528056085109711, - 0.08192526549100876, - 0.056361161172389984, - -0.13404487073421478, - -0.07066284120082855, - 0.023433204740285873, - -0.008017717860639095, - -0.006984381470829248, - 0.1085088849067688, - -0.006292938254773617, - 0.06264964491128922, - 0.1077122688293457, - -0.08239695429801941, - -0.0391920767724514, - -0.03114943765103817, - 0.05154057592153549, - -0.10968014597892761, - 0.061816513538360596, - 0.04747128486633301, - -0.006041971500962973, - 0.006270749494433403, - 0.08324433118104935, - -0.024418562650680542, - -0.003103762399405241, - -0.0017465186538174748, - -0.04680066555738449, - 0.006634939461946487, - -0.013291368260979652, - -0.01601908728480339, - 0.06028125062584877, - 0.01936379447579384, - 0.040837325155735016, - -0.023072805255651474, - -0.024967461824417114, - -0.13793975114822388, - 0.042109642177820206, - 0.015544407069683075, - 0.06919063627719879, - -0.006869792938232422, - -0.01729438826441765, - -0.0438687726855278, - -0.07317142188549042, - 0.03169111907482147, - -0.014413293451070786, - 0.05965622514486313, - -0.030996613204479218, - 0.006164215505123138, - 0.09972159564495087, - 0.02927928976714611, - -0.0006327853770926595, - -0.019514229148626328, - -0.029328860342502594, - 0.005025753751397133, - 0.05842050909996033, - -0.07635505497455597, - -0.08322034776210785, - -0.012893766164779663, - 0.02761763334274292, - -0.00658753514289856, - 0.07751573622226715, - 0.057326652109622955, - 0.004889404866844416, - 0.024311507120728493, - -0.07353408634662628, - -0.005548990797251463, - -0.08532489836215973, - -0.06867697834968567, - -0.011845898814499378, - -0.03660754859447479, - -0.02051054872572422, - 0.0806734636425972, - 0.025295086205005646, - 0.05031318590044975, - -0.04750332981348038, - -0.06907308101654053, - -0.08586178719997406, - 0.04537511616945267, - 0.05123066529631615, - 0.0036835186183452606, - 0.02592979371547699, - 0.06370057910680771, - -0.019487395882606506, - 0.06826324760913849, - 0.057477302849292755, - 0.0885062888264656, - -0.022730223834514618, - 0.03245188668370247, - -0.060124047100543976, - 0.10704690217971802, - 0.08858537673950195, - -0.06782245635986328, - -0.08526552468538284, - -0.045309655368328094, - -0.08879561722278595, - 0.046389006078243256, - -0.026801470667123795, - 0.010144572705030441, - 0.04984457045793533, - 0.005001446232199669, - -0.10068418085575104, - -0.09918620437383652, - 0.10351140797138214, - -0.05554025247693062, - -0.01126169040799141, - -0.08422324061393738, - 0.03590209037065506, - 0.09755320101976395, - 0.045386701822280884, - -0.029424484819173813, - -0.0033509526401758194, - 0.04767423868179321, - -0.022274363785982132, - 0.014419065788388252, - 0.06711696088314056, - 0.04518205672502518, - -0.12307103723287582, - -0.022879544645547867, - -0.07614308595657349, - 0.05048812925815582, - -0.05015058442950249, - 0.1369452029466629, - 0.025236688554286957, - -0.042625993490219116, - -0.08200784027576447, - 0.06793235242366791, - -0.024855712428689003, - 0.0686807930469513, - 0.039610885083675385, - 0.0635165274143219, - 0.05367117375135422, - -0.08354263007640839, - 0.09824296832084656, - 0.0734625905752182, - -0.04576064646244049, - -0.0790901780128479, - -0.0505632683634758, - -0.03072902001440525, - 0.038853466510772705, - 0.02813848853111267, - -0.07984182983636856, - -0.004669418558478355, - 0.023210391402244568, - -0.012019085697829723, - 0.06310807913541794, - 0.14355075359344482, - 0.06386779248714447, - -0.11344774067401886 - ] - }, - "p245_044.wav": { - "name": "p245", - "embedding": [ - 0.05540139600634575, - 0.0351874977350235, - -0.0029585787560790777, - -0.0036408863961696625, - -0.009717918932437897, - 0.026989303529262543, - -0.13735339045524597, - 0.10246618837118149, - -0.02932894229888916, - 0.1057426854968071, - -0.08385153114795685, - 0.0787532776594162, - -0.005749681498855352, - -0.14476078748703003, - -0.03264135122299194, - 0.04958081245422363, - -0.02901853248476982, - -0.013268353417515755, - -0.04734598845243454, - -0.013348409906029701, - 0.03271309658885002, - 0.05585765093564987, - 0.017678800970315933, - -0.018751535564661026, - -2.394833973085042e-05, - 0.05371611565351486, - 0.008370274677872658, - 0.03865957260131836, - 0.009304262697696686, - -0.017450083047151566, - 0.015023577027022839, - 0.09004774689674377, - -0.026044484227895737, - 0.0009122826159000397, - 0.04927607998251915, - 0.02071547694504261, - -0.003611566498875618, - -0.0842553973197937, - -0.021370701491832733, - 0.013384552672505379, - -0.06065421551465988, - 0.060138292610645294, - 0.038274116814136505, - 0.0030879653058946133, - 0.024408888071775436, - 0.02827766351401806, - -0.0088332649320364, - -0.06442015618085861, - -0.10005885362625122, - 0.16790227591991425, - 0.04864255338907242, - 0.014047691598534584, - -0.08935472369194031, - -0.03855591267347336, - 0.08309578895568848, - -0.0077942973002791405, - -0.062055446207523346, - -0.04749360680580139, - 0.057343170046806335, - 0.1353236436843872, - -0.01041158102452755, - -0.044429339468479156, - 0.03171449154615402, - 0.09943391382694244, - 0.013505324721336365, - 0.06197275221347809, - 0.10125812143087387, - 0.09637221693992615, - -0.01094371359795332, - 0.020567288622260094, - 0.04689057916402817, - 0.05445460230112076, - 0.04057963192462921, - -0.014234514907002449, - 0.03683260828256607, - 0.0012604668736457825, - -0.0359886959195137, - 0.014987404458224773, - -0.03495274484157562, - -0.03806743025779724, - 0.020563479512929916, - 0.0005404595285654068, - 0.011878499761223793, - 0.04789520427584648, - -0.04487988352775574, - 0.03433726355433464, - 0.02138691209256649, - 0.0005418236833065748, - 0.06738737225532532, - 0.0329102948307991, - 0.030989371240139008, - 0.025151332840323448, - -0.0516933873295784, - -0.09323399513959885, - 0.008121470920741558, - -0.0024637330789119005, - 0.023736722767353058, - 0.043473612517118454, - 0.02698652073740959, - -0.028227433562278748, - 0.10058945417404175, - -0.002524597104638815, - -0.014985373243689537, - -0.0031128115952014923, - -0.07942080497741699, - 0.09619386494159698, - 0.099323570728302, - -0.015833454206585884, - 0.014053039252758026, - -0.06924107670783997, - 0.03721923753619194, - 0.05781635269522667, - -0.11579690873622894, - -0.0548018142580986, - 0.052189093083143234, - 0.03476516529917717, - 0.026683229953050613, - 0.13142159581184387, - 0.010898714885115623, - 0.020617790520191193, - 0.08051857352256775, - -0.07659701257944107, - -0.04957641288638115, - 0.0006005354225635529, - 0.02204623818397522, - -0.03960549086332321, - 0.03626979514956474, - 0.032854702323675156, - 0.010973429307341576, - -0.02172589860856533, - 0.08298837393522263, - -0.010839487425982952, - 0.020128600299358368, - -0.043658968061208725, - 0.0002710595726966858, - 0.060335662215948105, - -0.021085208281874657, - -0.009002873674035072, - 0.02431986853480339, - 0.0639747604727745, - 0.029162375256419182, - 0.025574831292033195, - -0.07356759160757065, - -0.11855047941207886, - -0.007786398287862539, - 0.03783252835273743, - 0.06678080558776855, - -0.02601083740592003, - -0.03537067398428917, - -0.05401691049337387, - -0.025844207033514977, - -0.0037404238246381283, - -0.029338188469409943, - 0.05766249820590019, - 0.021084189414978027, - -0.017874745652079582, - 0.09360738843679428, - -0.025284549221396446, - 0.013361017219722271, - -0.02724376693367958, - -0.022132039070129395, - 0.017302291467785835, - 0.03225565329194069, - -0.041591793298721313, - -0.05928799510002136, - 0.01305367611348629, - 0.015114177018404007, - -0.014453674666583538, - -0.001210155664011836, - 0.018828436732292175, - 0.004517893306910992, - 0.013616982847452164, - -0.10014872997999191, - 0.01490868628025055, - -0.1160678118467331, - -0.04340996965765953, - 0.030036643147468567, - -0.000349000736605376, - 0.006367855705320835, - 0.07502906769514084, - -0.0036811628378927708, - 0.03091811202466488, - -0.03298807889223099, - -0.08331942558288574, - -0.03943921998143196, - 0.05338000878691673, - 0.0753025934100151, - -0.009122584015130997, - 0.02758536860346794, - 0.029099121689796448, - -0.0034411102533340454, - 0.02397848293185234, - 0.05102162063121796, - 0.08103230595588684, - -0.030999958515167236, - -0.01997513882815838, - -0.03418756648898125, - 0.10940631479024887, - 0.03795918822288513, - -0.06236086040735245, - -0.04988820478320122, - 0.0030434816144406796, - -0.05253837630152702, - 0.020179901272058487, - -0.0199077520519495, - 0.01477649062871933, - 0.0338677354156971, - -0.014915850013494492, - -0.12014935910701752, - -0.03963743522763252, - 0.03166377171874046, - -0.06261864304542542, - -0.002676093950867653, - -0.07130350917577744, - 0.03663774952292442, - 0.1020917147397995, - 0.037786319851875305, - -0.014607070945203304, - -0.031856633722782135, - 0.002835892140865326, - -0.06941057741641998, - -0.03648950159549713, - -0.008691705763339996, - 0.037000514566898346, - -0.07694466412067413, - -0.002713435096666217, - -0.06846268475055695, - 0.049588948488235474, - -0.04926304146647453, - 0.09001024812459946, - 0.021845895797014236, - -0.06423349678516388, - -0.08003246039152145, - -0.0019804886542260647, - -0.003215455450117588, - 0.05571264028549194, - 0.03837262839078903, - 0.018403928726911545, - 0.044507842510938644, - -0.07045572996139526, - 0.10923983156681061, - 0.04475123807787895, - -0.02649056911468506, - -0.05786821246147156, - -0.027255138382315636, - -0.01597152277827263, - 0.03250078856945038, - -0.005201913416385651, - -0.03966651111841202, - -0.0032188917975872755, - 0.02061603218317032, - -0.021886512637138367, - 0.04958562180399895, - 0.09706853330135345, - 0.037583090364933014, - -0.10383137315511703 - ] - }, - "p245_057.wav": { - "name": "p245", - "embedding": [ - 0.042658597230911255, - 0.07373440265655518, - -0.042017921805381775, - 0.04971172660589218, - -0.08102007210254669, - 0.06125273555517197, - -0.11694268882274628, - 0.13449028134346008, - -0.03624627739191055, - 0.12037333846092224, - -0.04670920968055725, - 0.14087115228176117, - 0.00011318037286400795, - -0.17798201739788055, - -0.02754015475511551, - 0.040677260607481, - -0.04235752671957016, - -0.016533244401216507, - -0.0717368796467781, - -0.024673495441675186, - 0.05648712068796158, - 0.024630118161439896, - 0.05028512701392174, - -0.04432780295610428, - 0.006298882886767387, - 0.052003875374794006, - 0.008977169170975685, - 0.04707060009241104, - 0.02072804793715477, - -0.05827939510345459, - -0.04008573293685913, - 0.11003127694129944, - -0.05210462212562561, - 0.00895748008042574, - 0.05134767293930054, - -0.04342135041952133, - -0.029322419315576553, - -0.047930993139743805, - -0.018395300954580307, - 0.009645577520132065, - -0.03082261234521866, - 0.06193145364522934, - 0.025976713746786118, - -0.025547288358211517, - 0.07112058997154236, - -0.014389791525900364, - -0.05688486248254776, - -0.013784706592559814, - -0.1082160472869873, - 0.13892841339111328, - 0.08027221262454987, - -0.0033687162213027477, - -0.08491973578929901, - -0.047700412571430206, - 0.11100733280181885, - -0.014018434099853039, - -0.12360776215791702, - -0.04192376136779785, - 0.05141473934054375, - 0.15656176209449768, - -0.021107863634824753, - -0.011425882577896118, - 0.03725047409534454, - 0.1016295775771141, - 0.056882549077272415, - 0.08021517097949982, - 0.09563928842544556, - 0.10773084312677383, - -0.013878921046853065, - 0.0630386471748352, - 0.027519889175891876, - 0.0867965966463089, - 0.018995199352502823, - -0.00758158415555954, - 0.03319406509399414, - -0.020736895501613617, - -0.009845266118645668, - -0.03240451216697693, - -0.04514143243432045, - -0.019291093572974205, - -0.01708867773413658, - 0.017963888123631477, - 0.035908762365579605, - 0.012050234712660313, - -0.049016982316970825, - 0.07073120772838593, - 0.03209540247917175, - -0.024402478709816933, - 0.037249986082315445, - 0.04311056435108185, - -0.00636585708707571, - 0.050601810216903687, - -0.08048838376998901, - -0.11849690973758698, - 0.003383701667189598, - 0.011985288932919502, - 0.01919235847890377, - 0.0612993985414505, - 0.021035224199295044, - -0.0037703639827668667, - 0.09749886393547058, - 0.07026691734790802, - -0.02102075144648552, - 0.030336380004882812, - -0.06137215346097946, - 0.11697441339492798, - 0.10063496977090836, - -0.004330971743911505, - 0.04971890151500702, - -0.05922890827059746, - 0.08101237565279007, - 0.04440369829535484, - -0.10373479872941971, - -0.07120360434055328, - 0.006141620688140392, - -0.005235287360846996, - -0.023264802992343903, - 0.134757399559021, - -0.006947047542780638, - 0.055613260716199875, - 0.10629017651081085, - -0.07855509221553802, - -0.04463636502623558, - -0.021638011559844017, - 0.055245526134967804, - -0.04844392091035843, - 0.06252002716064453, - 0.032610103487968445, - -0.013118140399456024, - 0.01573919877409935, - 0.07210180163383484, - -0.02472047321498394, - 0.016713324934244156, - 0.049177348613739014, - -0.07215912640094757, - 0.041919007897377014, - -0.03672518953680992, - -0.007667713798582554, - 0.07663096487522125, - 0.04351896792650223, - 0.07501128315925598, - -0.028448665514588356, - -0.008285744115710258, - -0.08659380674362183, - 0.005693176295608282, - 0.024349119514226913, - 0.06949149817228317, - -0.009844282642006874, - -0.01269880123436451, - -0.029022859409451485, - -0.08014222979545593, - 0.025880802422761917, - -0.027504265308380127, - 0.08404827862977982, - -0.026718009263277054, - 0.010596396401524544, - 0.07617653906345367, - 0.02967570535838604, - -0.006403231993317604, - -0.04598081111907959, - -0.028654057532548904, - 0.008319772779941559, - 0.053879186511039734, - -0.0867946594953537, - -0.05442504584789276, - -0.021900422871112823, - 0.02703044004738331, - -0.028688717633485794, - 0.04261992126703262, - 0.0548551008105278, - 0.015629053115844727, - 0.034706294536590576, - -0.07209552824497223, - 0.014745630323886871, - -0.09644142538309097, - -0.04417610540986061, - -0.018349912017583847, - -0.04618903622031212, - -0.040281087160110474, - 0.07412734627723694, - 0.03254743665456772, - 0.0423596128821373, - -0.003541739657521248, - -0.05816451832652092, - -0.08474371582269669, - 0.05352664738893509, - 0.03902830183506012, - -0.007147971540689468, - 0.05684029310941696, - 0.058591827750205994, - -0.03242700546979904, - 0.056032270193099976, - 0.07266870141029358, - 0.07109204679727554, - -0.03621084615588188, - -0.003321175929158926, - -0.09544070065021515, - 0.09888750314712524, - 0.11192983388900757, - -0.08583962917327881, - -0.0921175628900528, - -0.037021514028310776, - -0.07837015390396118, - 0.03923950344324112, - -0.04536805674433708, - -0.014613630250096321, - 0.06497185677289963, - 0.0039850943721830845, - -0.1330309361219406, - -0.07600510865449905, - 0.10415568202733994, - -0.09434092044830322, - 0.0005877655930817127, - -0.061691198498010635, - 0.017683925107121468, - 0.10313122719526291, - 0.000999506562948227, - -0.03477863967418671, - -0.011027686297893524, - 0.062136210501194, - -0.03392190486192703, - 0.022306038066744804, - 0.03726818412542343, - 0.03559507429599762, - -0.08566252142190933, - -0.0013286432949826121, - -0.049543119966983795, - 0.02244129590690136, - -0.03894244134426117, - 0.13845036923885345, - 0.006760017946362495, - -0.038349516689777374, - -0.08156262338161469, - 0.08797506988048553, - -0.02791464887559414, - 0.053304776549339294, - 0.04674801975488663, - 0.07543385028839111, - 0.022843074053525925, - -0.10655760765075684, - 0.13490071892738342, - 0.02066524140536785, - -0.0457330048084259, - -0.09066809713840485, - -0.027774915099143982, - -0.04519465193152428, - 0.021998699754476547, - 0.029997579753398895, - -0.07456813752651215, - -0.018419792875647545, - 0.011191231198608875, - -0.01641165465116501, - 0.06939584016799927, - 0.12185235321521759, - 0.07355348765850067, - -0.08811970055103302 - ] - }, - "p245_033.wav": { - "name": "p245", - "embedding": [ - 0.05503704398870468, - 0.04126527160406113, - 0.028578555211424828, - -0.021874483674764633, - -0.009847121313214302, - 0.0940089076757431, - -0.06819070130586624, - 0.07790213078260422, - 0.012370242737233639, - 0.02222418040037155, - -0.0717296376824379, - 0.05137820169329643, - -0.0009726779535412788, - -0.13882096111774445, - -0.00807705894112587, - 0.0543212816119194, - -0.03527560085058212, - 0.014220127835869789, - -0.06138240173459053, - -0.019632671028375626, - -0.014992786571383476, - 0.01048943679779768, - 0.06166643649339676, - -0.0200663935393095, - 0.04159843176603317, - 0.03275735676288605, - 0.004174490459263325, - 0.025599969550967216, - 0.0024124151095747948, - -0.016274787485599518, - -0.009249405935406685, - 0.058753468096256256, - -0.03836642578244209, - -0.021624622866511345, - 0.049998216331005096, - -0.006679716520011425, - 0.04524123668670654, - -0.09250281751155853, - -0.032838352024555206, - 0.0467701256275177, - -0.06930014491081238, - 0.07942825555801392, - 0.07616984844207764, - 0.013530037365853786, - 0.03430735692381859, - 0.010687392204999924, - -0.013379319570958614, - -0.044989049434661865, - -0.09564291685819626, - 0.13972485065460205, - 0.02319157123565674, - 0.02359095774590969, - -0.0843544751405716, - -0.006598832085728645, - 0.05079162120819092, - -0.006757604889571667, - -0.04895760491490364, - -0.02604241855442524, - 0.05102890729904175, - 0.06556835025548935, - 0.047526516020298004, - -0.004110292065888643, - 0.01991882175207138, - 0.06621947139501572, - 0.009147971868515015, - 0.017581192776560783, - 0.09697175025939941, - 0.09611494839191437, - 0.011887033469974995, - 0.027554944157600403, - 0.0553416982293129, - 0.006610002368688583, - 0.014754112809896469, - -0.003383040428161621, - 0.025151968002319336, - -0.030998259782791138, - -0.012653917074203491, - -0.025196246802806854, - -0.0029356912709772587, - -0.008422995917499065, - 0.061520420014858246, - 0.03234238922595978, - 0.01717015542089939, - 0.050243716686964035, - -0.04374992847442627, - 0.033682480454444885, - -0.013783849775791168, - 0.10162042081356049, - 0.0746852234005928, - 0.0407617911696434, - 0.010323528200387955, - 0.0009243618696928024, - -0.028158560395240784, - -0.08587627112865448, - -0.008755132555961609, - 0.02521700970828533, - -0.003991944715380669, - -0.006430109962821007, - 0.006756959483027458, - -0.03189900517463684, - 0.10079100728034973, - 0.008428608067333698, - -0.02478889934718609, - 0.01860320009291172, - -0.05652153119444847, - 0.057058185338974, - 0.04892893135547638, - 0.01361973024904728, - 0.05956698954105377, - -0.025912873446941376, - 0.03085711970925331, - 0.0531538724899292, - -0.06980676203966141, - -0.00903877429664135, - 0.022771088406443596, - 0.004799459595233202, - 0.04482216387987137, - 0.11981566250324249, - 0.003450536634773016, - 0.03170914947986603, - 0.04556145519018173, - -0.06718897074460983, - -0.013340558856725693, - 0.062368884682655334, - 0.0018227379769086838, - 0.024645287543535233, - -0.027156272903084755, - 0.022594686597585678, - 0.02368982322514057, - -0.0520721971988678, - 0.0425841361284256, - 0.027727916836738586, - 0.025195419788360596, - -0.05521911010146141, - 0.035098329186439514, - 0.03956956788897514, - 0.000834080739878118, - -0.04249418526887894, - 0.050750792026519775, - 0.06984292715787888, - -0.0005850158631801605, - 0.043573640286922455, - -0.06163248047232628, - -0.09233947098255157, - -0.0383978933095932, - -0.02143182046711445, - 0.04378749802708626, - -0.006941661238670349, - -0.018346618860960007, - -0.0790707990527153, - 0.023840874433517456, - 1.263245940208435e-05, - -0.009724571369588375, - 0.038023218512535095, - 0.07959675043821335, - -0.05844411998987198, - 0.050648804754018784, - -0.025519538670778275, - 0.028987377882003784, - -0.022427359595894814, - -0.05055466294288635, - 0.007468527182936668, - 0.031119007617235184, - -0.00751885399222374, - -0.04164040833711624, - 0.011285919696092606, - -0.050722166895866394, - -0.004625143948942423, - 0.001974336802959442, - 0.039731934666633606, - -0.00563558004796505, - -0.03561624884605408, - -0.07944482564926147, - 0.013095082715153694, - -0.03421042114496231, - -0.03314093127846718, - 0.07991906255483627, - 0.04608798772096634, - -0.019420582801103592, - 0.08691956102848053, - 0.04034686088562012, - 0.02982557751238346, - -0.03717201203107834, - -0.04152484983205795, - 0.02425471693277359, - 0.05419965833425522, - 0.03612910583615303, - -0.005846992135047913, - 0.042186662554740906, - 0.005433021113276482, - -0.01671779900789261, - 0.04475399851799011, - 0.023597944527864456, - 0.02329040691256523, - -0.04797558858990669, - -0.027197031304240227, - 0.022699818015098572, - 0.08339535444974899, - 0.0032104365527629852, - -0.04503514617681503, - -0.021230213344097137, - 0.03628489375114441, - -0.023001430556178093, - 0.005420295055955648, - -0.0006123166531324387, - 0.011518686078488827, - 0.0485251322388649, - -0.027095016092061996, - -0.05361117050051689, - -0.0662553533911705, - 0.013231858611106873, - -0.058311667293310165, - -0.007921005599200726, - -0.0318119153380394, - 0.034134261310100555, - 0.09536511451005936, - -0.020250875502824783, - 0.0023607080802321434, - 0.0007106075063347816, - -0.014448193833231926, - -0.01130728516727686, - -0.039694465696811676, - -0.0023696087300777435, - 0.041263043880462646, - -0.07747235149145126, - -0.00010490883141756058, - -0.0497434064745903, - 0.050729431211948395, - 0.025525305420160294, - 0.06620647758245468, - 0.06714387983083725, - -0.008791105821728706, - -0.054592691361904144, - 0.003910398110747337, - -0.007692305371165276, - 0.035516027361154556, - -0.0005606263875961304, - 0.006531648337841034, - 0.06001660227775574, - -0.01902925781905651, - 0.07483260333538055, - 0.03050580620765686, - -0.0711502805352211, - -0.03632104769349098, - 0.02073141559958458, - -0.014771663583815098, - 0.018105216324329376, - -0.021234482526779175, - -0.040807321667671204, - 0.026090865954756737, - 0.04086343199014664, - 0.01827331632375717, - 0.006655510514974594, - 0.048183273524045944, - 0.028873968869447708, - -0.027636181563138962 - ] - }, - "p245_273.wav": { - "name": "p245", - "embedding": [ - 0.0026476019993424416, - 0.05040179193019867, - -0.02965957298874855, - -0.034782592207193375, - -0.022863516584038734, - 0.03144398704171181, - -0.14000385999679565, - 0.051099713891744614, - -0.04079238325357437, - 0.13728491961956024, - -0.007415551692247391, - 0.08959319442510605, - -0.013946100138127804, - -0.09861291199922562, - -0.0044763414189219475, - 0.05538463220000267, - -0.048577889800071716, - -0.032904960215091705, - 0.01900862343609333, - -0.08309365063905716, - 0.02128327637910843, - -0.003264501690864563, - -0.01786132901906967, - -0.033455558121204376, - 0.02312278002500534, - 0.07343585789203644, - -0.0038511897437274456, - -0.01767529733479023, - -0.028988216072320938, - -0.05128886178135872, - -0.004760146141052246, - 0.07865680009126663, - -0.031286630779504776, - -0.027404900640249252, - 0.0321369543671608, - -0.005473798606544733, - 0.006576112005859613, - -0.016731375828385353, - 0.028515463694930077, - 0.05061473324894905, - -0.08200086653232574, - 0.08887961506843567, - 0.02601844072341919, - 0.011357372626662254, - 0.03733556717634201, - -0.016124669462442398, - -0.02678702399134636, - 0.036197301000356674, - -0.029411114752292633, - 0.09708891808986664, - 0.05593682825565338, - -0.02425423264503479, - -0.0386524498462677, - -0.007788142189383507, - 0.0639965683221817, - 0.029921142384409904, - -0.10787051171064377, - 0.0056901611387729645, - 0.015934761613607407, - 0.09393545985221863, - -0.014263492077589035, - -0.05579478293657303, - 0.03485441952943802, - 0.0968020036816597, - 0.02439579740166664, - 0.04180368036031723, - 0.05488671362400055, - 0.07529357075691223, - 0.0026147146709263325, - -0.055362768471241, - 0.06008877977728844, - 0.07915298640727997, - 0.0430389828979969, - -0.01995036005973816, - 0.04954618960618973, - -0.011623811908066273, - -0.006167737767100334, - -0.05614133179187775, - -0.03622627258300781, - -0.048705801367759705, - -0.07243897020816803, - -0.014460626058280468, - 0.018311824649572372, - 0.07117718458175659, - 0.010565374977886677, - -0.025768399238586426, - 0.06887920200824738, - -0.042999908328056335, - 0.03278893977403641, - 0.04510287940502167, - 0.011646484956145287, - 0.018368449062108994, - -0.07040495425462723, - -0.01980988308787346, - 0.01990605518221855, - -0.006179517600685358, - 0.06271880865097046, - 0.03327307105064392, - 0.02138558402657509, - 0.03103802353143692, - 0.06835385411977768, - 0.03468228876590729, - 0.01039789617061615, - -0.02561241202056408, - -0.07081673294305801, - 0.09570132195949554, - 0.07046829909086227, - -0.06066931411623955, - 0.027953507378697395, - 0.011127099394798279, - 0.025985557585954666, - -0.014827873557806015, - -0.10529714822769165, - -0.03224654868245125, - 0.010995421558618546, - 0.05927664786577225, - -0.014649520628154278, - 0.12406080216169357, - 0.020794177427887917, - 0.03692144528031349, - 0.06189810112118721, - -0.009922102093696594, - -0.04693252220749855, - -0.06247655674815178, - 0.04660366475582123, - -0.0950712263584137, - 0.07217497378587723, - 0.05943816155195236, - 0.03775598853826523, - 0.02648629993200302, - 0.0937858447432518, - 0.031699247658252716, - 0.00045697903260588646, - -0.05652068182826042, - 0.005226939916610718, - 0.029063716530799866, - 0.011619489639997482, - 0.0555356927216053, - 0.056166961789131165, - -0.004735746420919895, - 0.09648586809635162, - 0.028552792966365814, - 0.008195789530873299, - -0.08477400988340378, - 0.018421396613121033, - 0.018365738913416862, - 0.0406486876308918, - -0.034434232860803604, - -0.03627825155854225, - 0.006090272217988968, - -0.06791737675666809, - -0.049891479313373566, - -0.03130611777305603, - 0.08802126348018646, - 0.011686543002724648, - -0.028816476464271545, - 0.09757503867149353, - 0.04058592766523361, - -0.009651847183704376, - 0.024637019261717796, - -0.025973135605454445, - -0.024761321023106575, - 0.06587699055671692, - -0.14869078993797302, - -0.0584012009203434, - -0.014292672276496887, - 0.03659965470433235, - 0.046618424355983734, - 0.04329434037208557, - 0.07247595489025116, - -0.006700476631522179, - 0.03669091314077377, - -0.006628260016441345, - 0.0065744612365961075, - -0.059426456689834595, - -0.05883348733186722, - -0.037214841693639755, - -0.07949355244636536, - -0.07062729448080063, - 0.06170422583818436, - -0.0452277846634388, - 0.055910624563694, - -0.031131815165281296, - -0.040166616439819336, - -0.044766124337911606, - 0.038244858384132385, - 0.020098481327295303, - -0.049127593636512756, - 0.004920534789562225, - 0.07999622821807861, - 0.007382713258266449, - -0.03009817749261856, - 0.03157437965273857, - 0.08087754249572754, - -0.06818441301584244, - 0.020835569128394127, - -0.058606937527656555, - 0.0851200595498085, - 0.055453091859817505, - -0.02522546611726284, - -0.031772222369909286, - -0.03446222096681595, - -0.042361222207546234, - 0.053891852498054504, - -0.048653945326805115, - -0.0010657142847776413, - -0.014853335916996002, - -0.021661918610334396, - -0.0667293444275856, - -0.05397786945104599, - 0.05126090347766876, - -0.07112500816583633, - -0.0023414152674376965, - -0.03467349335551262, - 0.01196509599685669, - 0.024627475067973137, - 0.06790965050458908, - -0.058424755930900574, - 0.05146559700369835, - 0.03203999623656273, - -0.03010169044137001, - 0.04194901883602142, - 0.04581429064273834, - 0.039138708263635635, - -0.048563115298748016, - -0.06794974207878113, - -0.0779951810836792, - 0.03790833055973053, - -0.04594273865222931, - 0.059765059500932693, - 0.0409092903137207, - -0.04962727427482605, - -0.02866518124938011, - -0.02079601213335991, - -0.014579536393284798, - 0.023257005959749222, - 0.07405896484851837, - 0.08979281038045883, - 0.03659071773290634, - 0.011373279616236687, - 0.08352388441562653, - 0.03708831965923309, - 0.028296543285250664, - -0.020455490797758102, - 0.005406586453318596, - -0.020148176699876785, - 0.022320300340652466, - 0.04028785973787308, - -0.09396903216838837, - 0.048410166054964066, - 0.021559784188866615, - 0.029390135779976845, - 0.04379183053970337, - 0.036473553627729416, - 0.05472201108932495, - -0.06304406374692917 - ] - }, - "p245_114.wav": { - "name": "p245", - "embedding": [ - 0.06669951975345612, - 0.10124754905700684, - -0.0022013874258846045, - 0.03649517148733139, - -0.021619021892547607, - 0.053168296813964844, - -0.16219760477542877, - 0.11655928194522858, - -0.01387164555490017, - 0.1186247318983078, - -0.06351030617952347, - 0.10898423194885254, - -0.01726130209863186, - -0.16677242517471313, - -0.024964701384305954, - 0.06468411535024643, - -0.026851870119571686, - -0.032134346663951874, - -0.0033342628739774227, - -0.008759641088545322, - 0.0032952409237623215, - 0.03859074413776398, - 0.049083881080150604, - -0.02073134109377861, - 0.06332868337631226, - 0.05428619682788849, - 0.014313665218651295, - 0.066304512321949, - -0.010303741320967674, - -0.051963094621896744, - -0.013814348727464676, - 0.0884525328874588, - -0.054471034556627274, - 0.006114103831350803, - 0.04680199548602104, - 0.026793599128723145, - 0.020099684596061707, - -0.08509883284568787, - -0.01705184578895569, - -0.005261139944195747, - -0.02789417654275894, - 0.09863394498825073, - 0.03861689195036888, - -0.0397944338619709, - 0.007458297535777092, - 0.04691072925925255, - 0.01988939195871353, - -0.0555143803358078, - -0.13748982548713684, - 0.15095984935760498, - 0.013565191067755222, - 0.05258611589670181, - -0.08982804417610168, - -0.09698932617902756, - 0.08381138741970062, - -0.004245487041771412, - -0.062168098986148834, - -0.03301975503563881, - 0.06551120430231094, - 0.16978979110717773, - -0.02783021330833435, - -0.0541827455163002, - 0.031541407108306885, - 0.09513824433088303, - 0.0769338458776474, - 0.07380522787570953, - 0.083738312125206, - 0.11341849714517593, - -0.0014829318970441818, - -0.016546843573451042, - 0.05440804362297058, - 0.07229621708393097, - 0.04665745794773102, - 0.014899211004376411, - -0.004094243980944157, - 0.008550656959414482, - -0.03569471091032028, - -0.002781311981379986, - -0.018585097044706345, - -0.035936299711465836, - -0.011547836475074291, - 0.016961177811026573, - 0.025844469666481018, - 0.05370710790157318, - -0.024885138496756554, - 0.05165655538439751, - 0.045758239924907684, - -0.03461221233010292, - 0.07788741588592529, - 0.016297314316034317, - -0.007213803008198738, - 0.03925038501620293, - -0.09498238563537598, - -0.07026637345552444, - 0.028194207698106766, - 0.007803819607943296, - 0.01729004830121994, - 0.0715162456035614, - 0.04602537304162979, - -0.02796456590294838, - 0.12523646652698517, - 0.03793541342020035, - 0.006545787677168846, - 0.011256947182118893, - -0.06981537491083145, - 0.11090090125799179, - 0.07812876999378204, - -0.01100641954690218, - 0.054404400289058685, - -0.04454074800014496, - 0.017416132614016533, - 0.08018931746482849, - -0.14238345623016357, - -0.1061008870601654, - 0.04114401340484619, - 0.030631156638264656, - 0.0026168236508965492, - 0.11518049240112305, - 0.0005010650493204594, - 0.04926629364490509, - 0.09329401701688766, - -0.11661004275083542, - -0.06290889531373978, - 0.0024043903686106205, - 0.06123144179582596, - -0.06810425221920013, - 0.04396265745162964, - 0.0688818171620369, - -0.02121102623641491, - -0.017339549958705902, - 0.05694655701518059, - 0.026569832116365433, - 0.008694757707417011, - -0.007300286553800106, - -0.02416439726948738, - 0.022513214498758316, - -0.019183343276381493, - -0.02127186954021454, - 0.04039110988378525, - 0.040891021490097046, - 0.032756298780441284, - 0.0137447165325284, - -0.04398074746131897, - -0.15867531299591064, - -0.004860861226916313, - 0.06436794251203537, - 0.08836264908313751, - -0.03412599861621857, - -0.047433964908123016, - -0.061883583664894104, - -0.046971842646598816, - 0.025024034082889557, - 0.014585485681891441, - 0.07874025404453278, - -0.004638315178453922, - 0.002713327994570136, - 0.11288897693157196, - 0.006145218852907419, - 0.0037173195742070675, - -0.017560182139277458, - -0.01592506282031536, - 0.009115886874496937, - 0.029176663607358932, - -0.056749127805233, - -0.09481942653656006, - -0.014187329448759556, - 0.019675396382808685, - -0.023463424295186996, - 0.08248897641897202, - 0.03267376869916916, - 0.02932296320796013, - 0.017345400527119637, - -0.03329450264573097, - -0.019061576575040817, - -0.08452650904655457, - -0.06144671142101288, - 0.0008327392861247063, - 0.005450002383440733, - -0.035220760852098465, - 0.0977049171924591, - 0.055239804089069366, - 0.09511526674032211, - -0.031255364418029785, - -0.04565175622701645, - -0.07411039620637894, - 0.0403832271695137, - 0.059165194630622864, - -0.005458163097500801, - 0.01866809092462063, - 0.043018363416194916, - 0.011813637800514698, - 0.056993789970874786, - 0.07636085152626038, - 0.06494415551424026, - -0.01523410715162754, - -0.0013035740703344345, - -0.06747864186763763, - 0.10821281373500824, - 0.09415844082832336, - -0.08186593651771545, - -0.06548730283975601, - -0.02638210356235504, - -0.08318708091974258, - 0.022101102396845818, - -0.0077890669927001, - 0.04065181314945221, - 0.0186697356402874, - -0.02592366747558117, - -0.0911296159029007, - -0.121262326836586, - 0.053475432097911835, - -0.056022629141807556, - -0.010926328599452972, - -0.059962570667266846, - 0.032457493245601654, - 0.07609052211046219, - 0.055883247405290604, - 0.020474789664149284, - -0.024406442418694496, - 0.03677567094564438, - -0.04756082966923714, - -0.0005149353528395295, - 0.09520062804222107, - 0.023777177557349205, - -0.1029689684510231, - 0.026280013844370842, - -0.06712538003921509, - 0.07708365470170975, - -0.04668726399540901, - 0.15436357259750366, - 0.021601703017950058, - -0.06359592825174332, - -0.09732343256473541, - -0.00601994851604104, - -0.04985116422176361, - 0.06155013293027878, - 0.011149303987622261, - 0.05528872460126877, - 0.046844758093357086, - -0.05233580619096756, - 0.09394358843564987, - 0.04739709198474884, - -0.03704778105020523, - -0.07554302364587784, - -0.09069973975419998, - -0.0346965566277504, - 0.04656268283724785, - -0.01053727325052023, - -0.06500908732414246, - -0.002842111513018608, - 0.033416878432035446, - 0.006041018292307854, - 0.0415038987994194, - 0.1435728669166565, - 0.050778940320014954, - -0.11512802541255951 - ] - }, - "p245_098.wav": { - "name": "p245", - "embedding": [ - 0.04837983846664429, - 0.07397189736366272, - -0.015257400460541248, - 0.004226955119520426, - -0.0217236690223217, - 0.04345892369747162, - -0.16690826416015625, - 0.10852667689323425, - -0.017744475975632668, - 0.12906280159950256, - -0.0865454226732254, - 0.09669071435928345, - -0.028869260102510452, - -0.1700381636619568, - 0.008216941729187965, - 0.04893476143479347, - 0.0021732402965426445, - -0.003368159756064415, - -0.02969559282064438, - -0.019953763112425804, - 0.04410291090607643, - 0.03686554357409477, - 0.03652225807309151, - -0.07071204483509064, - 0.018293865025043488, - 0.07157804071903229, - 0.0033935662358999252, - 0.053154293447732925, - -0.005582939367741346, - -0.03573019802570343, - -0.012815169990062714, - 0.09875959903001785, - -0.040312353521585464, - -0.02933599427342415, - 0.02862393856048584, - -0.0016386136412620544, - -0.0300297848880291, - -0.08071736991405487, - 0.021702971309423447, - -0.005472929682582617, - -0.04542834311723709, - 0.07055270671844482, - 0.020278697833418846, - -0.03449685871601105, - 0.031579796224832535, - 0.016280796378850937, - 0.004470291547477245, - -0.04703650623559952, - -0.10625828057527542, - 0.15504711866378784, - 0.05663695186376572, - 0.024519825354218483, - -0.08005991578102112, - -0.025812696665525436, - 0.08329600840806961, - 0.02192092500627041, - -0.06178736314177513, - -0.06989549100399017, - 0.08307104557752609, - 0.1362994909286499, - -0.0526692196726799, - -0.03864138573408127, - 0.058870889246463776, - 0.06797685474157333, - 0.028171837329864502, - 0.07244863361120224, - 0.09931854903697968, - 0.10579518973827362, - 0.011454739607870579, - 0.010721366852521896, - 0.005931943655014038, - 0.06777166575193405, - 0.0060185398906469345, - -0.0027391379699110985, - 0.020594749599695206, - -0.02383052371442318, - -0.037465650588274, - 0.005291081499308348, - -0.028236083686351776, - -0.051930129528045654, - 0.036599185317754745, - -0.0039236522279679775, - 0.01938287355005741, - 0.03994649648666382, - -0.0483199879527092, - 0.029257463291287422, - 0.046966832131147385, - -0.034857410937547684, - 0.09018257260322571, - -0.020626991987228394, - 0.011873006820678711, - 0.033042412251234055, - -0.10080374777317047, - -0.0901232659816742, - 0.0473480150103569, - 0.014334257692098618, - -0.002812618389725685, - 0.06270328909158707, - 0.047439202666282654, - -0.029730264097452164, - 0.14102405309677124, - 0.02559536322951317, - -0.027706529945135117, - 0.034407421946525574, - -0.06206132099032402, - 0.13693787157535553, - 0.10564863681793213, - -0.019914600998163223, - 0.043340325355529785, - -0.07963314652442932, - 0.004914093762636185, - 0.04742511361837387, - -0.12345616519451141, - -0.06824080646038055, - 0.03785701096057892, - 0.021179266273975372, - -0.012078160420060158, - 0.1373988687992096, - 0.00678655132651329, - 0.019382013007998466, - 0.119720458984375, - -0.11037038266658783, - -0.089786596596241, - -0.00984465517103672, - 0.05732637271285057, - -0.07139059156179428, - 0.05901322513818741, - 0.08729320019483566, - -0.01768692582845688, - 0.018650315701961517, - 0.06390143930912018, - -0.005462422035634518, - 0.021591048687696457, - -0.019534112885594368, - -0.017429277300834656, - 0.03725701570510864, - -0.046739932149648666, - -0.03273056447505951, - 0.015863344073295593, - 0.04314257949590683, - 0.05571836978197098, - -0.0027665982488542795, - -0.03711618110537529, - -0.1370280236005783, - -0.003486255183815956, - 0.031079839915037155, - 0.07326079159975052, - -0.03008180484175682, - -0.01804978959262371, - -0.0631231740117073, - -0.05878232419490814, - -0.011977490037679672, - -0.03093951940536499, - 0.07846591621637344, - 0.0038145771250128746, - 0.017129892483353615, - 0.09291879832744598, - 0.019267885014414787, - 0.032569874078035355, - -0.04674635827541351, - -0.04252927005290985, - 0.028227098286151886, - 0.015208818018436432, - -0.06798401474952698, - -0.06236961483955383, - -0.04348182678222656, - 0.024289807304739952, - -0.028147011995315552, - 0.04094310104846954, - 0.04463409632444382, - 0.04146460443735123, - 0.006917104125022888, - -0.07282091677188873, - 0.037571981549263, - -0.06347844749689102, - -0.03339000418782234, - 0.023619018495082855, - 0.011770635843276978, - -0.03156188502907753, - 0.09836532175540924, - 0.010770116932690144, - 0.0384446419775486, - -0.0594913549721241, - -0.043212853372097015, - -0.08475650101900101, - 0.032853178679943085, - 0.07375316321849823, - -0.041910912841558456, - 0.03750850260257721, - 0.024050042033195496, - -0.016666170209646225, - 0.019358089193701744, - 0.06663091480731964, - 0.08477072417736053, - 0.0016039833426475525, - -0.03596211224794388, - -0.04994069039821625, - 0.10153074562549591, - 0.09700529277324677, - -0.052259691059589386, - -0.04572824016213417, - -0.03073439933359623, - -0.08259276300668716, - 0.021225402131676674, - -0.019002296030521393, - -0.010798409581184387, - 0.029618043452501297, - -0.02029169350862503, - -0.10508082062005997, - -0.08839097619056702, - 0.031039409339427948, - -0.06059584766626358, - -0.005972542800009251, - -0.10417849570512772, - 0.0615026131272316, - 0.09850043058395386, - 0.02322964183986187, - -0.03207894787192345, - -0.05575793981552124, - 0.010520120151340961, - -0.044707559049129486, - 0.03450167179107666, - 0.043019164353609085, - 0.05543632060289383, - -0.10299453884363174, - 0.02348225936293602, - -0.07682305574417114, - 0.040648236870765686, - -0.03621683642268181, - 0.10659989714622498, - 0.04252257198095322, - -0.012846319004893303, - -0.09913890808820724, - 0.048100292682647705, - -0.001361750066280365, - 0.049081750214099884, - 0.026375235989689827, - 0.030131394043564796, - 0.07254589349031448, - -0.10557491332292557, - 0.09367348998785019, - 0.038298726081848145, - -0.020881816744804382, - -0.09438943862915039, - -0.050282105803489685, - -0.038230083882808685, - 0.04092351347208023, - -0.0033249109983444214, - -0.07708792388439178, - -0.03910594806075096, - 0.04860986769199371, - 0.009706912562251091, - 0.04692884534597397, - 0.09414441883563995, - 0.02205154299736023, - -0.08977436274290085 - ] - }, - "p245_286.wav": { - "name": "p245", - "embedding": [ - 0.03965359181165695, - 0.08334919065237045, - -0.03466814383864403, - 0.04762045666575432, - -0.05989878624677658, - 0.0547928623855114, - -0.11458101123571396, - 0.09626089781522751, - -0.04710391163825989, - 0.13282105326652527, - -0.0829072892665863, - 0.10916483402252197, - -0.0280429869890213, - -0.18205790221691132, - -0.05485405772924423, - 0.058250319212675095, - -0.071883425116539, - -0.0554778128862381, - -0.060775768011808395, - -0.023007620126008987, - 0.04706360399723053, - 0.053651344031095505, - 0.030458535999059677, - 0.014448348432779312, - 0.012662037275731564, - 0.06297767162322998, - 0.006117767654359341, - 0.04464814066886902, - 0.026059694588184357, - -0.05101980268955231, - -0.0373312383890152, - 0.11033035814762115, - -0.019709400832653046, - 0.017575323581695557, - 0.025407766923308372, - 0.014861850999295712, - 0.027334976941347122, - -0.06484168767929077, - -0.02902950346469879, - 0.012129507958889008, - -0.05121062695980072, - 0.06807412207126617, - 0.035225760191679, - -0.011037054471671581, - 0.03571804612874985, - 0.006440630182623863, - -0.04688020050525665, - -0.055549006909132004, - -0.10779765248298645, - 0.18085426092147827, - 0.08498485386371613, - 0.0013532856246456504, - -0.049499206244945526, - -0.07108765840530396, - 0.1134115681052208, - -0.010858546942472458, - -0.1234833225607872, - -0.05628567934036255, - 0.08164706081151962, - 0.17708179354667664, - -0.024145109578967094, - -0.01859411783516407, - 0.026249539107084274, - 0.1542750895023346, - 0.0541277639567852, - 0.07544867694377899, - 0.06862325966358185, - 0.1094503402709961, - 0.002875420032069087, - 0.00574179133400321, - 0.07665570080280304, - 0.07955022901296616, - 0.05018950626254082, - -0.012543427757918835, - 0.028607051819562912, - 0.000623376457951963, - -0.02043360285460949, - 0.005165505222976208, - -0.03938993066549301, - -0.01378672756254673, - -0.017424678429961205, - 0.0035220100544393063, - 0.0038184314034879208, - 0.005550440400838852, - -0.03064497373998165, - 0.05782994255423546, - 0.035546645522117615, - -0.02710813097655773, - 0.05448796600103378, - 0.046151816844940186, - 0.009554852731525898, - 0.049803655594587326, - -0.0439445897936821, - -0.09304702281951904, - 0.01230230089277029, - 0.01750217378139496, - 0.01815630868077278, - 0.057669252157211304, - 0.039531491696834564, - -0.030741414055228233, - 0.11637061834335327, - 0.028872525319457054, - -0.014081710949540138, - 0.01844765990972519, - -0.09600609540939331, - 0.12252411246299744, - 0.09930967539548874, - -0.01117746438831091, - 0.028271004557609558, - -0.023595262318849564, - 0.0728687047958374, - 0.07677887380123138, - -0.13526326417922974, - -0.06867365539073944, - 0.02532915771007538, - -0.002198990900069475, - -0.0194699726998806, - 0.0965455025434494, - -0.0052479831501841545, - 0.030898435041308403, - 0.10627418011426926, - -0.07768365740776062, - -0.050768714398145676, - -0.033573444932699203, - 0.03934682160615921, - -0.08280032128095627, - 0.037756457924842834, - 0.04382206127047539, - -0.007731298916041851, - -0.005797511897981167, - 0.08098673820495605, - -0.016620200127363205, - -0.004476112779229879, - 0.012059062719345093, - -0.06691382080316544, - 0.041057877242565155, - -0.03441961854696274, - -0.009010056033730507, - 0.06690674275159836, - 0.04378747195005417, - 0.04359416291117668, - -0.011721762828528881, - -0.03514957055449486, - -0.11276938766241074, - 0.016450412571430206, - 0.03223695605993271, - 0.07436487078666687, - 0.00576063571497798, - -0.005503570195287466, - -0.04481299966573715, - -0.0670711025595665, - 0.04269587993621826, - -0.025289416313171387, - 0.0870809555053711, - -0.02201303094625473, - -0.019382236525416374, - 0.10005062073469162, - -0.008835656568408012, - -0.013770369812846184, - -0.040185824036598206, - -0.014881419949233532, - 0.021023428067564964, - 0.039408572018146515, - -0.07216029614210129, - -0.06286806613206863, - 0.0189787857234478, - 0.034160830080509186, - -0.01696130447089672, - 0.03892875835299492, - 0.029355008155107498, - 0.00521048903465271, - 0.027820482850074768, - -0.06123510003089905, - 0.008841984905302525, - -0.09887248277664185, - -0.04599880427122116, - -0.0002470402978360653, - -0.04383402317762375, - -0.015362843871116638, - 0.07556407153606415, - 0.02148246578872204, - 0.0204310342669487, - -0.003336530877277255, - -0.09509699046611786, - -0.07216265797615051, - 0.07253819704055786, - 0.059912629425525665, - 0.021152537316083908, - 0.05105268582701683, - 0.05847620964050293, - -0.014046954922378063, - 0.0504198893904686, - 0.04916255176067352, - 0.10716527700424194, - -0.015229424461722374, - 1.4662742614746094e-05, - -0.06413403153419495, - 0.08112047612667084, - 0.06648196280002594, - -0.09531855583190918, - -0.06758002936840057, - -0.03555349260568619, - -0.06101922690868378, - 0.04711758717894554, - -0.02551228553056717, - 0.0076766228303313255, - 0.0366310216486454, - -0.007850791327655315, - -0.11808868497610092, - -0.08245821297168732, - 0.09915246069431305, - -0.07534398883581161, - -0.0184329766780138, - -0.0680866613984108, - 0.029651332646608353, - 0.09529390186071396, - 0.04011979699134827, - -0.02150655910372734, - 0.016918279230594635, - 0.05355050414800644, - -0.0731503963470459, - -0.00512725068256259, - 0.04470835253596306, - 0.01859690062701702, - -0.10760574042797089, - -0.008668920956552029, - -0.09228496998548508, - 0.055723294615745544, - -0.05420416593551636, - 0.14775095880031586, - 0.00951094925403595, - -0.043959733098745346, - -0.08135919272899628, - 0.05623441934585571, - -0.03840135782957077, - 0.06650450825691223, - 0.05323943495750427, - 0.06078232824802399, - 0.03487376868724823, - -0.07409492135047913, - 0.12832532823085785, - 0.054068438708782196, - -0.04190947860479355, - -0.07186160236597061, - -0.03206105902791023, - -0.03780420124530792, - 0.022655298933386803, - 0.020889680832624435, - -0.07102075219154358, - -0.008038150146603584, - 0.021124642342329025, - -0.029339898377656937, - 0.07949034869670868, - 0.13116487860679626, - 0.08380748331546783, - -0.08898495137691498 - ] - }, - "p245_145.wav": { - "name": "p245", - "embedding": [ - 0.000866294838488102, - 0.0798451155424118, - -0.013673443347215652, - 0.020723972469568253, - -0.06435421854257584, - 0.013350107707083225, - -0.12047069519758224, - 0.10891728103160858, - 0.016164865344762802, - 0.1136094480752945, - -0.06224357336759567, - 0.06195935606956482, - -0.058374445885419846, - -0.15152528882026672, - 0.055977534502744675, - 0.04750707745552063, - 0.021167410537600517, - -0.031977105885744095, - -0.04057375714182854, - -0.06225855275988579, - 0.004077243618667126, - 0.03531269729137421, - 0.030513400211930275, - -0.038371842354536057, - 0.023270083591341972, - 0.07396102696657181, - -0.02587416023015976, - -0.010700749233365059, - -0.04742564633488655, - -0.009029113687574863, - -0.05130244418978691, - 0.09797510504722595, - -0.06502918899059296, - -0.04335843399167061, - 0.04531361535191536, - -0.01698923669755459, - -0.02718903310596943, - -0.014191309921443462, - 0.005399320274591446, - 0.002884971909224987, - -0.0742228627204895, - 0.0817498117685318, - 0.03162350505590439, - 0.005313806235790253, - 0.03373723477125168, - 0.022291768342256546, - -0.00377840967848897, - -0.0063735488802194595, - -0.08136189728975296, - 0.11646412312984467, - 0.061205849051475525, - -0.010834423825144768, - -0.04973047599196434, - -0.02657543309032917, - 0.07113885879516602, - 0.005776381120085716, - -0.07698143273591995, - -0.0701075941324234, - 0.08882682025432587, - 0.06968583911657333, - -0.04100600630044937, - -0.020746076479554176, - 0.024267567321658134, - 0.07723593711853027, - 0.043395187705755234, - 0.08277633041143417, - 0.03791458159685135, - 0.11603325605392456, - -0.04079378396272659, - -0.008615761063992977, - 0.06929008662700653, - 0.01784130558371544, - 0.04518788680434227, - -0.03668772056698799, - -0.0043637314811348915, - -0.03244310989975929, - -0.007317100651562214, - -0.013275925070047379, - -0.0024896259419620037, - -0.041739773005247116, - 0.002316845115274191, - -0.05241987481713295, - -0.0029617012478411198, - -0.004984825849533081, - -0.00041303783655166626, - 0.01132383942604065, - 0.13004425168037415, - 0.002126149833202362, - 0.11696454882621765, - 0.014218205586075783, - -0.019793100655078888, - 0.07654641568660736, - -0.10456772148609161, - 0.024764958769083023, - 0.01925661787390709, - -0.026303928345441818, - 0.02189370058476925, - 0.07398516684770584, - 0.04710300266742706, - -0.013466921634972095, - 0.12686243653297424, - 0.020702531561255455, - 0.013879034668207169, - 0.04477982968091965, - -0.10073322802782059, - 0.13517625629901886, - 0.06391899287700653, - -0.060432784259319305, - 0.026656776666641235, - -0.016443196684122086, - 0.02790289930999279, - 0.026460178196430206, - -0.0722956657409668, - -0.03719186782836914, - -0.019390523433685303, - -0.0018782955594360828, - -0.05677981674671173, - 0.10295814275741577, - 0.006859760731458664, - -0.008002869784832, - 0.13616155087947845, - -0.10636334121227264, - -0.09849551320075989, - 0.006072650663554668, - 0.021749399602413177, - -0.12145094573497772, - 0.02007569745182991, - 0.07979589700698853, - 3.603869117796421e-05, - 0.05640546232461929, - 0.09385153651237488, - 0.010712558403611183, - 0.026797764003276825, - -0.016875602304935455, - -0.021045895293354988, - 0.012506329454481602, - 0.011942090466618538, - 0.0034771799109876156, - 0.053242526948451996, - 0.022998377680778503, - 0.08401992917060852, - -0.025539761409163475, - 0.028318075463175774, - -0.09664975851774216, - 0.027834001928567886, - 0.02957802824676037, - 0.04041682183742523, - -0.028063789010047913, - 0.018232114613056183, - -0.0432368703186512, - -0.10172879695892334, - 0.030729077756404877, - 0.01185903511941433, - 0.056991416960954666, - -0.04150890186429024, - -0.013196945190429688, - 0.14347302913665771, - 0.0668364018201828, - 0.0015882495790719986, - -0.07713723927736282, - -0.046904057264328, - 0.011026029475033283, - 0.05249374359846115, - -0.12046463787555695, - -0.07032088935375214, - -0.05698117986321449, - 0.041615184396505356, - 0.009288751520216465, - 0.0559646338224411, - 0.057193122804164886, - 0.03295191749930382, - 0.0011447503929957747, - -0.03908756002783775, - 0.03927215561270714, - -0.001677151769399643, - -0.039620012044906616, - -0.04620375484228134, - -0.026760349050164223, - -0.04354633390903473, - 0.08639715611934662, - -0.013604691252112389, - 0.02473180741071701, - -0.040581025183200836, - -0.05611288547515869, - -0.09409336745738983, - 0.004870757460594177, - 0.03614380210638046, - -0.06562957167625427, - 0.038515910506248474, - 0.06316792964935303, - -0.0866309329867363, - 0.0017547979950904846, - 0.05832800269126892, - 0.12391996383666992, - -0.05042435601353645, - 0.03219211846590042, - -0.05329654738306999, - 0.06256245821714401, - 0.07453096657991409, - -0.057908717542886734, - -0.05597337335348129, - -0.058611754328012466, - -0.036907948553562164, - 0.02614029310643673, - -0.02483871951699257, - -0.01442926935851574, - 0.005469983443617821, - 0.0015806432347744703, - -0.02993520349264145, - -0.10144856572151184, - 0.07258644700050354, - -0.020328521728515625, - -0.009655105881392956, - -0.10214070230722427, - 0.04523385316133499, - -0.001953795552253723, - 0.0534239187836647, - -0.04590844362974167, - -0.004398705437779427, - 0.043311767280101776, - 0.009254002943634987, - 0.06503857672214508, - 0.10150010883808136, - 0.0621287077665329, - -0.04731246083974838, - -0.05667645111680031, - -0.08424383401870728, - 0.08999298512935638, - -0.0075050294399261475, - 0.10175660997629166, - 0.03155006468296051, - -0.008158411830663681, - -0.046788379549980164, - 0.01786966808140278, - 0.004166973754763603, - 0.04085596650838852, - 0.06444135308265686, - 0.04867866262793541, - 0.04261824116110802, - 0.0021858741529285908, - 0.0928221046924591, - 0.03612302988767624, - -0.02014216221868992, - -0.04622621089220047, - -0.0173117034137249, - -0.06618103384971619, - 0.02471117675304413, - 0.03890076279640198, - -0.1259387731552124, - 0.016684317961335182, - 0.031813181936740875, - -0.008885195478796959, - 0.05564308911561966, - 0.09895449131727219, - 0.08597353100776672, - -0.08025602996349335 - ] - }, - "p245_352.wav": { - "name": "p245", - "embedding": [ - 0.027903886511921883, - 0.11415190249681473, - -0.04790414497256279, - 0.026707950979471207, - -0.018786540254950523, - 0.06470722705125809, - -0.1429920345544815, - 0.10831661522388458, - -0.034385357052087784, - 0.14468461275100708, - -0.057334356009960175, - 0.09034624695777893, - -0.05191733315587044, - -0.15536558628082275, - -0.00742834759876132, - 0.06274017691612244, - -0.02650057151913643, - -0.019660096615552902, - -0.03253774717450142, - 0.01039358600974083, - 0.022948743775486946, - 0.03404460847377777, - 0.01648814231157303, - -0.04296881705522537, - 0.01888411119580269, - 0.07106846570968628, - -0.002423522062599659, - 0.04482313245534897, - -0.014000087045133114, - -0.02699931338429451, - -0.028906112536787987, - 0.09947431087493896, - -0.05262455344200134, - 0.011102014221251011, - 0.0380474217236042, - 0.021925456821918488, - -0.022539017722010612, - -0.055622175335884094, - 0.03062969446182251, - -0.015329653397202492, - -0.05330852046608925, - 0.06953661143779755, - 0.02011418156325817, - -0.022405199706554413, - 0.03537743538618088, - 0.0013935146853327751, - 0.0005968024488538504, - -0.036983244121074677, - -0.0984746664762497, - 0.16575849056243896, - 0.09433721005916595, - 0.0035479580983519554, - -0.0513468012213707, - -0.05323337763547897, - 0.07536119222640991, - 0.02783386968076229, - -0.0995003879070282, - -0.07364583760499954, - 0.08300929516553879, - 0.15202495455741882, - -0.013569614849984646, - -0.021898936480283737, - 0.03672587871551514, - 0.11170487105846405, - 0.030833197757601738, - 0.0919969230890274, - 0.06481793522834778, - 0.09096160531044006, - 0.020300161093473434, - -0.002672998933121562, - 0.04485250264406204, - 0.04836146533489227, - 0.036209188401699066, - 0.00044649187475442886, - 0.02045116201043129, - -0.034408390522003174, - -0.03879784047603607, - 0.00043190945871174335, - -0.01596132293343544, - -0.06398924440145493, - -0.021290134638547897, - 3.605196252465248e-05, - 0.00096085574477911, - 0.03985308110713959, - 0.003571564331650734, - 0.022082265466451645, - 0.047020189464092255, - -0.0471661351621151, - 0.07490761578083038, - 0.020649980753660202, - -0.001139187254011631, - 0.03662538155913353, - -0.07390881329774857, - -0.06005021929740906, - 0.027182593941688538, - 0.015231535769999027, - -0.0006300150416791439, - 0.05722701549530029, - 0.03306960314512253, - -0.006450926885008812, - 0.11368940770626068, - 0.004762811586260796, - -0.004556384868919849, - 0.0221753790974617, - -0.07366780191659927, - 0.1262688785791397, - 0.06650125235319138, - -0.015598105266690254, - 0.03341161087155342, - -0.05215980112552643, - 0.0076317209750413895, - 0.06491941958665848, - -0.12095680832862854, - -0.07196345180273056, - 0.0449582040309906, - 0.017957298085093498, - -0.028348425403237343, - 0.11951908469200134, - 0.03818431496620178, - 0.014776283875107765, - 0.11245018988847733, - -0.11389647424221039, - -0.09117236733436584, - -0.030420556664466858, - 0.07737965881824493, - -0.06443020701408386, - 0.04842883348464966, - 0.08554523438215256, - -0.015290562994778156, - 0.005104021169245243, - 0.0626864954829216, - 0.006563291884958744, - 0.0270241592079401, - 0.010510570369660854, - -0.03985866159200668, - 0.014187393710017204, - -0.05674777925014496, - -0.0056015849113464355, - 0.018129663541913033, - 0.01700945943593979, - 0.055413588881492615, - -0.013049107044935226, - -0.03319576382637024, - -0.11505954712629318, - -0.016973815858364105, - 0.06654006242752075, - 0.07067476212978363, - -0.023813635110855103, - -0.03125523403286934, - -0.03188708424568176, - -0.06084626168012619, - -0.004812777973711491, - -0.03345659747719765, - 0.08851666748523712, - -0.014804107137024403, - -0.010163087397813797, - 0.11573286354541779, - 0.0019109472632408142, - -0.0005967402830719948, - -0.06391730904579163, - -0.01619056984782219, - 0.02532208524644375, - 0.032463036477565765, - -0.08146776258945465, - -0.07911534607410431, - -0.008213222026824951, - 0.024202415719628334, - 0.004798787645995617, - 0.06354346871376038, - 0.052032820880413055, - 0.0353596955537796, - -0.0008856877684593201, - -0.051867205649614334, - 0.006956511177122593, - -0.0706096887588501, - -0.04703080654144287, - -0.015954166650772095, - -0.030352376401424408, - -0.025803562253713608, - 0.0980248749256134, - 0.02150784246623516, - 0.04114314913749695, - -0.02575737237930298, - -0.04563649743795395, - -0.07864087074995041, - 0.055667150765657425, - 0.0779569000005722, - -0.03978807479143143, - 0.036223724484443665, - 0.05191851779818535, - -0.03555375337600708, - 0.007482793182134628, - 0.06534615904092789, - 0.09108556807041168, - -0.01974594220519066, - -0.025349974632263184, - -0.0822688415646553, - 0.06946583837270737, - 0.10867691040039062, - -0.09719139337539673, - -0.03970339894294739, - -0.03347230330109596, - -0.06146158277988434, - 0.007929987274110317, - -0.0631377249956131, - 0.01729501783847809, - 0.021671714261174202, - -0.02958552911877632, - -0.09739544987678528, - -0.1294325888156891, - 0.06472821533679962, - -0.06674446165561676, - -0.001584033714607358, - -0.05773462355136871, - 0.0472959503531456, - 0.06292291730642319, - 0.0546550378203392, - -0.043937746435403824, - 0.006834802217781544, - 0.04036595672369003, - -0.03309433162212372, - 0.039026204496622086, - 0.06429195404052734, - 0.03936392813920975, - -0.11006450653076172, - 0.024218343198299408, - -0.06988352537155151, - 0.07901452481746674, - -0.06447377800941467, - 0.15054550766944885, - 0.013008290901780128, - -0.03672163188457489, - -0.1127423346042633, - 0.03657326474785805, - -0.02566785365343094, - 0.03327825292944908, - 0.00048699136823415756, - 0.050732336938381195, - 0.04640598222613335, - -0.060877859592437744, - 0.11389008909463882, - 0.03285582736134529, - 0.007169988006353378, - -0.07271468639373779, - -0.061879776418209076, - -0.05909551680088043, - 0.03964494913816452, - 0.004095983691513538, - -0.07776191830635071, - -0.019568875432014465, - 0.02665437012910843, - 0.013542751781642437, - 0.07008476555347443, - 0.12661629915237427, - 0.056342367082834244, - -0.1183590292930603 - ] - }, - "p245_008.wav": { - "name": "p245", - "embedding": [ - 0.039513878524303436, - 0.07909629493951797, - -0.038770534098148346, - 0.0327041856944561, - -0.05641026049852371, - 0.014332274906337261, - -0.12009327858686447, - 0.10119545459747314, - -0.018728960305452347, - 0.10527503490447998, - -0.06064216420054436, - 0.12288598716259003, - -0.03122006729245186, - -0.13796360790729523, - -0.01639382541179657, - 0.0637514516711235, - -0.038995955139398575, - -0.046994589269161224, - -0.009234906174242496, - -0.03133096173405647, - 0.03958454728126526, - 0.04382617771625519, - 0.03852836415171623, - 0.007387572433799505, - 0.018128884956240654, - 0.0705672949552536, - 0.005204600282013416, - 0.028237273916602135, - -0.0016749268397688866, - -0.04088608920574188, - -0.012447429820895195, - 0.06859572976827621, - -0.01795373111963272, - 0.01633540913462639, - 0.029273319989442825, - 0.0016611374448984861, - 0.013443110510706902, - -0.049109604209661484, - -0.01720798760652542, - 0.006688239052891731, - -0.040972210466861725, - 0.07344033569097519, - 0.028256084769964218, - -0.03818638250231743, - 0.020737024024128914, - 0.007735445164144039, - -0.03072717785835266, - -0.02640649303793907, - -0.10358743369579315, - 0.15726891160011292, - 0.05397598445415497, - 0.023792622610926628, - -0.06669197976589203, - -0.04396532103419304, - 0.09702610224485397, - -0.010626784525811672, - -0.08489739149808884, - -0.03304330259561539, - 0.04935958981513977, - 0.1380203664302826, - -0.02528848499059677, - -0.040924470871686935, - 0.04238341003656387, - 0.11290633678436279, - 0.059677790850400925, - 0.0510471872985363, - 0.07893804460763931, - 0.10233412683010101, - -0.015668055042624474, - -0.010304788127541542, - 0.056144773960113525, - 0.09653525054454803, - 0.05569203943014145, - 0.01034574955701828, - 0.00625847652554512, - 0.00014209530490916222, - -0.031023502349853516, - -0.011181945912539959, - -0.021251436322927475, - -0.044935740530490875, - -0.041518982499837875, - -0.00843728706240654, - 0.022131910547614098, - 0.019020933657884598, - -0.006263173185288906, - 0.0436544269323349, - 0.06281575560569763, - -0.042734041810035706, - 0.05449814349412918, - 0.026043463498353958, - -0.01034363079816103, - 0.04628857597708702, - -0.07016055285930634, - -0.06909722834825516, - 0.012961129657924175, - 0.018828894942998886, - 0.04907117411494255, - 0.05535848066210747, - 0.04460000991821289, - -0.0017285272479057312, - 0.10297612845897675, - 0.026457324624061584, - 0.008337809704244137, - -0.006018521264195442, - -0.07360824942588806, - 0.11333294212818146, - 0.09616672247648239, - -0.03373955935239792, - 0.04212629050016403, - -0.04265093803405762, - 0.03882293030619621, - 0.04288604483008385, - -0.10755352675914764, - -0.07527566701173782, - 0.006028910167515278, - 0.01955416239798069, - -5.770226562162861e-05, - 0.09991393983364105, - 0.007132283877581358, - 0.05472737178206444, - 0.09964706748723984, - -0.08907028287649155, - -0.06829674541950226, - -0.028726322576403618, - 0.05415859818458557, - -0.06862740218639374, - 0.05374690890312195, - 0.07115484774112701, - 0.007600478362292051, - 0.013574568554759026, - 0.06500902771949768, - 0.00834614597260952, - 0.018878545612096786, - -0.009039871394634247, - -0.04007747396826744, - 0.02418578416109085, - -0.030702337622642517, - -0.00492717232555151, - 0.06748516857624054, - 0.028090212494134903, - 0.057854555547237396, - 0.0038598976098001003, - -0.012338299304246902, - -0.1263551414012909, - 0.016844825819134712, - 0.05090313404798508, - 0.05546088144183159, - -0.021372433751821518, - -0.04049351438879967, - -0.033505067229270935, - -0.05648123845458031, - -0.0021226233802735806, - -0.005176561418920755, - 0.06427891552448273, - -0.022564534097909927, - 0.014879985712468624, - 0.10262786597013474, - 0.013848081231117249, - -0.015709880739450455, - -0.035439178347587585, - -0.020820967853069305, - 0.006157045718282461, - 0.04766130447387695, - -0.0785871297121048, - -0.09080027043819427, - -0.018941668793559074, - 0.04475794732570648, - -0.011631695553660393, - 0.05054289102554321, - 0.037730228155851364, - 0.010627719573676586, - 0.007027782499790192, - -0.03486822545528412, - 0.013682324439287186, - -0.07636146247386932, - -0.0688614696264267, - -0.0037491396069526672, - -0.016645360738039017, - -0.030306901782751083, - 0.07677282392978668, - 0.033976390957832336, - 0.07495146244764328, - -0.024683427065610886, - -0.06513631343841553, - -0.0777592808008194, - 0.04816911742091179, - 0.03779111057519913, - -0.021404629573225975, - 0.033410802483558655, - 0.045552462339401245, - -0.02002175897359848, - 0.028809700161218643, - 0.04019254446029663, - 0.08596429228782654, - -0.04565665125846863, - -0.005720173008739948, - -0.06268956512212753, - 0.07553169131278992, - 0.09040579199790955, - -0.08701770752668381, - -0.05009842664003372, - -0.060127004981040955, - -0.05938676744699478, - 0.02922808937728405, - -0.025477472692728043, - 0.009625066071748734, - 0.01655624806880951, - -0.015479977242648602, - -0.11396532505750656, - -0.09799760580062866, - 0.061736732721328735, - -0.04954129084944725, - -0.0004789404047187418, - -0.06177568435668945, - 0.03774429112672806, - 0.07778225839138031, - 0.024979565292596817, - -0.014359983615577221, - 0.003015118418261409, - 0.022015955299139023, - -0.031146174296736717, - 0.010306322947144508, - 0.06568862497806549, - 0.05681601166725159, - -0.06998932361602783, - -0.023770418018102646, - -0.0756036639213562, - 0.05078805610537529, - -0.03409186005592346, - 0.13871105015277863, - 0.00909865740686655, - -0.053936123847961426, - -0.08164601027965546, - 0.014933167956769466, - -0.022704225033521652, - 0.0662720799446106, - 0.031069371849298477, - 0.039036720991134644, - 0.03828074783086777, - -0.06260357797145844, - 0.10861402750015259, - 0.06348785758018494, - -0.03521537780761719, - -0.07163076102733612, - -0.05024534463882446, - -0.033390264958143234, - 0.03413733094930649, - -0.0021868175826966763, - -0.052751123905181885, - 0.0025727166794240475, - 0.00847792997956276, - 0.0023390576243400574, - 0.07736755907535553, - 0.11673449724912643, - 0.06847669929265976, - -0.08555512875318527 - ] - }, - "p245_204.wav": { - "name": "p245", - "embedding": [ - 0.021620549261569977, - 0.07910554111003876, - -0.029602771624922752, - 0.005245045758783817, - -0.07521495968103409, - 0.02685179002583027, - -0.12578876316547394, - 0.15610788762569427, - -0.022922364994883537, - 0.14713451266288757, - -0.08117420971393585, - 0.1377536952495575, - -0.03466911241412163, - -0.18588680028915405, - 0.02607247792184353, - 0.03931224346160889, - 0.02169107086956501, - -0.016864748671650887, - -0.044106971472501755, - -0.045448750257492065, - 0.03236180171370506, - 0.03707735612988472, - 0.0025132019072771072, - -0.020725637674331665, - 0.03817856311798096, - 0.08177869021892548, - -0.024342479184269905, - -0.0037554181180894375, - -0.016854457557201385, - -0.04801994189620018, - -0.04592582955956459, - 0.08890283852815628, - -0.0953814685344696, - -0.011339335702359676, - 0.05178200826048851, - -0.049624595791101456, - -0.04213443771004677, - -0.03400759398937225, - -0.018996406346559525, - 0.015408488921821117, - -0.06682349741458893, - 0.07053438574075699, - 0.004916166886687279, - 0.005188826471567154, - 0.06428449600934982, - 0.04866940528154373, - 0.005172084551304579, - -0.03555886447429657, - -0.0917367935180664, - 0.12154380232095718, - 0.05958052724599838, - -0.013892536982893944, - -0.07621726393699646, - -0.03925538808107376, - 0.09524309635162354, - -0.006158028729259968, - -0.07950548082590103, - -0.06647326052188873, - 0.06954745948314667, - 0.09595178812742233, - -0.030090106651186943, - -0.0493813194334507, - 0.02632339671254158, - 0.07273902744054794, - 0.06166967377066612, - 0.08624575287103653, - 0.07580458372831345, - 0.10825874656438828, - -0.040398336946964264, - 0.02396935410797596, - 0.04443128779530525, - 0.03894231095910072, - 0.047293126583099365, - -0.054341211915016174, - 0.013147315010428429, - 0.01396704651415348, - -0.0033481356222182512, - -0.028694532811641693, - -0.02588217332959175, - -0.010961364023387432, - -0.010297078639268875, - 0.0047026327811181545, - -0.0010811975225806236, - 0.0031684867572039366, - -0.03889324143528938, - 0.05109832063317299, - 0.08500693738460541, - -0.0009861905127763748, - 0.09225407242774963, - 0.010104137472808361, - -0.022546740248799324, - 0.07191568613052368, - -0.14134357869625092, - -0.04597463831305504, - 0.03677152097225189, - -0.022138582542538643, - -0.02792692743241787, - 0.0762842670083046, - 0.05191322788596153, - -0.000995749607682228, - 0.14354124665260315, - 0.04801831394433975, - -0.00037388806231319904, - 0.03427601605653763, - -0.08139047026634216, - 0.13231946527957916, - 0.08073902130126953, - -0.05076228082180023, - 0.0578991174697876, - -0.04984896630048752, - 0.05862916260957718, - 0.025643032044172287, - -0.11973633617162704, - -0.0525621697306633, - 0.0032067110296338797, - -0.02235792577266693, - -0.057501956820487976, - 0.1392737627029419, - -0.027735510841012, - 0.048089221119880676, - 0.11955547332763672, - -0.0974925085902214, - -0.06753597408533096, - -0.0023316359147429466, - 0.037860386073589325, - -0.09910393506288528, - 0.07272092252969742, - 0.05784321203827858, - 0.002411584137007594, - 0.07156773656606674, - 0.10577785968780518, - -0.006294758524745703, - 0.015425491146743298, - -0.0051282658241689205, - -0.019897883757948875, - 0.01092411670833826, - 0.0016404323978349566, - -0.013521437533199787, - 0.0346493162214756, - 0.033270370215177536, - 0.0848134309053421, - -0.023158662021160126, - 0.016552351415157318, - -0.09683579206466675, - 0.039614275097846985, - 0.025033194571733475, - 0.06819972395896912, - -0.016517875716090202, - -0.0012368502793833613, - -0.05667738616466522, - -0.0866817981004715, - -0.020541131496429443, - 0.0038866258691996336, - 0.08593631535768509, - -0.045914459973573685, - 0.0413024015724659, - 0.12665170431137085, - 0.07821060717105865, - 0.00013071556168142706, - -0.05476207286119461, - -0.05856912583112717, - -0.031504206359386444, - 0.07027675211429596, - -0.0809619277715683, - -0.07815688103437424, - -0.04652511700987816, - 0.037681177258491516, - -0.007138380780816078, - 0.10270943492650986, - 0.058885350823402405, - 0.027535097673535347, - 0.027343537658452988, - -0.103610098361969, - 0.019108954817056656, - -0.06506158411502838, - -0.04881369695067406, - -0.044671546667814255, - -0.021028753370046616, - -0.054578594863414764, - 0.08287395536899567, - -0.005928212311118841, - 0.0646088719367981, - -0.03127380833029747, - -0.0658736526966095, - -0.09443346410989761, - 0.039175309240818024, - 0.05237019434571266, - -0.058106910437345505, - 0.03092692419886589, - 0.06382396817207336, - -0.05578877404332161, - 0.036983609199523926, - 0.08623147755861282, - 0.09601902961730957, - -0.02972327545285225, - 0.06982023268938065, - -0.049849867820739746, - 0.1053542047739029, - 0.07236816734075546, - -0.07546801120042801, - -0.08463121950626373, - -0.03607209399342537, - -0.07658535242080688, - 0.045290689915418625, - -0.013076988980174065, - 0.0059357136487960815, - 0.029451463371515274, - 0.015801111236214638, - -0.06129278242588043, - -0.06774111837148666, - 0.06390300393104553, - -0.0494936965405941, - 0.005540984217077494, - -0.10533817112445831, - 0.03350371867418289, - 0.08554068207740784, - 0.043537333607673645, - -0.035782717168331146, - -0.04976189136505127, - 0.047483887523412704, - 0.022914495319128036, - 0.037533048540353775, - 0.07122839987277985, - 0.05834416672587395, - -0.07703907787799835, - -0.027631178498268127, - -0.057438384741544724, - 0.08356929570436478, - -0.036973875015974045, - 0.1234494298696518, - 0.022361617535352707, - -0.030692601576447487, - -0.07844868302345276, - 0.04921601340174675, - 0.016829973086714745, - 0.0415031723678112, - 0.031282126903533936, - 0.06980385631322861, - 0.054031457751989365, - -0.044957246631383896, - 0.1195613369345665, - 0.033129509538412094, - -0.03471432998776436, - -0.04458899423480034, - -0.060265179723501205, - -0.04377664253115654, - 0.014578146860003471, - 0.049820538610219955, - -0.12224040925502777, - 0.002240369562059641, - 0.019118357449769974, - -0.009389598853886127, - 0.06701179593801498, - 0.12330880016088486, - 0.08151233941316605, - -0.134560689330101 - ] - }, - "p245_081.wav": { - "name": "p245", - "embedding": [ - 0.03213370591402054, - 0.0979895368218422, - -0.012609624303877354, - 0.048052191734313965, - -0.0562005490064621, - 0.07871226966381073, - -0.12662386894226074, - 0.12949472665786743, - -0.04685886204242706, - 0.12473385781049728, - -0.07641522586345673, - 0.10852976143360138, - -0.025535428896546364, - -0.19434329867362976, - -0.04311336949467659, - 0.05754229426383972, - -0.032044123858213425, - -0.0032568282913416624, - -0.03204956278204918, - 0.002665461041033268, - 0.043540313839912415, - 0.026270674541592598, - 0.03089885041117668, - -0.010260563343763351, - 0.022191310301423073, - 0.04829544946551323, - 0.004813422914594412, - 0.06099959462881088, - 0.03897271677851677, - -0.018686043098568916, - -0.0417955107986927, - 0.1457860767841339, - -0.05086737126111984, - 0.02043311670422554, - 0.06907306611537933, - 0.0006892679375596344, - -0.02304399572312832, - -0.03535531461238861, - 0.0022397604770958424, - -0.0036825707647949457, - -0.04613088443875313, - 0.06442543119192123, - 0.05690540745854378, - 0.019137680530548096, - 0.05947133153676987, - 0.021372394636273384, - -0.03565455973148346, - -0.03948509320616722, - -0.1022753119468689, - 0.15575294196605682, - 0.04468391463160515, - -0.021333055570721626, - -0.0652478039264679, - -0.060193486511707306, - 0.10389100015163422, - 0.0026625385507941246, - -0.13639198243618011, - -0.044928062707185745, - 0.11714807152748108, - 0.1639849692583084, - -0.009660583920776844, - -0.025412529706954956, - -0.002576845698058605, - 0.12975521385669708, - 0.037616174668073654, - 0.11934775114059448, - 0.0599881149828434, - 0.11855623871088028, - 0.015588351525366306, - 0.03530234098434448, - 0.06565146148204803, - 0.04178553447127342, - 0.007349045947194099, - -0.028251519426703453, - 0.029389014467597008, - -0.012512795627117157, - 0.005195807199925184, - 0.03841552138328552, - -0.017168011516332626, - -0.008922298438847065, - -0.006632693111896515, - 0.005583820398896933, - -0.0034381363075226545, - 0.005803799722343683, - -0.03664793819189072, - 0.0656885877251625, - 0.024731013923883438, - 0.02787303738296032, - 0.07271914184093475, - 0.06153174489736557, - -0.002128938678652048, - 0.05529940873384476, - -0.05544855073094368, - -0.09829540550708771, - 0.013611490838229656, - -0.002596162725239992, - 0.03281403332948685, - 0.06703225523233414, - 0.022330395877361298, - -0.007098186761140823, - 0.10069988667964935, - 0.06033281981945038, - -0.010919515043497086, - 0.05001094564795494, - -0.09959090501070023, - 0.13427840173244476, - 0.06541270017623901, - 0.01142967026680708, - 0.05221201851963997, - -0.04324822872877121, - 0.08778797835111618, - 0.07631527632474899, - -0.1288968026638031, - -0.050719600170850754, - 0.04300855100154877, - 0.0260040033608675, - -0.025349507108330727, - 0.12612482905387878, - -0.007611442357301712, - -0.0021340330131351948, - 0.10850021988153458, - -0.09003597497940063, - -0.06333781778812408, - -0.027979085221886635, - 0.031626224517822266, - -0.08314096927642822, - 0.03670233115553856, - 0.030735015869140625, - -0.03317011892795563, - -0.009088266640901566, - 0.08486603200435638, - -0.008403741754591465, - 0.020784305408596992, - 0.03625890985131264, - -0.04986405000090599, - 0.049977947026491165, - -0.02965582348406315, - 0.02761470340192318, - 0.055096790194511414, - 0.044264595955610275, - 0.05940474569797516, - -0.003939729183912277, - -0.032343845814466476, - -0.10818034410476685, - 0.0023454930633306503, - 0.05126441270112991, - 0.06651972234249115, - -0.011429212056100368, - -0.019640181213617325, - -0.036482539027929306, - -0.08061010390520096, - 0.0513400174677372, - -0.009244145825505257, - 0.09090688079595566, - -0.0151980584487319, - -0.03436033055186272, - 0.08398816734552383, - 0.013349571265280247, - 0.007005738560110331, - -0.0803329199552536, - -0.05062820017337799, - 0.02000533975660801, - 0.033226415514945984, - -0.11413382738828659, - -0.0446985587477684, - 0.01275942474603653, - 0.028429506346583366, - -0.031280722469091415, - 0.011581659317016602, - 0.055851973593235016, - 0.008818534202873707, - 0.05434439703822136, - -0.05087029188871384, - 0.01276406180113554, - -0.10937576740980148, - -0.0671301856637001, - -0.01922297477722168, - -0.008153161965310574, - -0.010482192039489746, - 0.08286858350038528, - 0.009223862551152706, - 0.021133888512849808, - 0.01188607607036829, - -0.064598947763443, - -0.06657154113054276, - 0.07595282047986984, - 0.06222962588071823, - 0.01599958725273609, - 0.08065498620271683, - 0.03951767086982727, - -0.06793556362390518, - 0.06399747729301453, - 0.05769545957446098, - 0.10521434992551804, - -0.03498142957687378, - 0.0023059917148202658, - -0.08800952136516571, - 0.06736696511507034, - 0.09266314655542374, - -0.11013470590114594, - -0.09424010664224625, - -0.01322482991963625, - -0.04873482510447502, - 0.039785467088222504, - -0.050593774765729904, - -0.0182709489017725, - 0.03194830194115639, - -0.009394100867211819, - -0.09513884782791138, - -0.096921905875206, - 0.07279365509748459, - -0.08087120205163956, - -0.013512670062482357, - -0.07499399781227112, - 0.05270504951477051, - 0.08768204599618912, - 0.01209377869963646, - -0.05245205760002136, - -0.0009882780723273754, - 0.057265426963567734, - -0.07470221072435379, - -0.019615644589066505, - 0.030566250905394554, - 0.0185557771474123, - -0.09472685307264328, - 0.0028135227039456367, - -0.07665684074163437, - 0.05617022514343262, - -0.0562426820397377, - 0.1731330007314682, - -0.010448402725160122, - -0.05660713091492653, - -0.052503615617752075, - 0.05048142001032829, - -0.023679519072175026, - 0.029432743787765503, - 0.052778951823711395, - 0.07074064016342163, - 0.015421571210026741, - -0.0555206723511219, - 0.13676826655864716, - 0.006412816699594259, - -0.035486191511154175, - -0.06173129752278328, - -0.001885883859358728, - -0.06570940464735031, - 0.02868037112057209, - 0.024407723918557167, - -0.11543022096157074, - -0.029168330132961273, - 0.04029463231563568, - -0.021747678518295288, - 0.05247454717755318, - 0.13362474739551544, - 0.0449431836605072, - -0.09310270100831985 - ] - }, - "p245_385.wav": { - "name": "p245", - "embedding": [ - 0.045871417969465256, - 0.11186913400888443, - 0.00438494049012661, - -0.011742634698748589, - -0.04474398121237755, - 0.09747549146413803, - -0.1404711753129959, - 0.1555105298757553, - -0.06613657623529434, - 0.16012690961360931, - -0.0687192901968956, - 0.1107354387640953, - -0.018052924424409866, - -0.18716958165168762, - -0.05368705466389656, - 0.03638600558042526, - -0.06502287089824677, - -0.016972960904240608, - -0.04884461686015129, - -0.008174742572009563, - 0.04831221327185631, - 0.007531135343015194, - -0.0047982861287891865, - -0.0019827138166874647, - 0.017027605324983597, - 0.054750051349401474, - 0.01732824370265007, - 0.05932663008570671, - 0.021189065650105476, - -0.062108445912599564, - -0.02803128771483898, - 0.11786743253469467, - -0.049675535410642624, - 0.03487037494778633, - 0.08826304227113724, - -0.031047485768795013, - 0.0022557186894118786, - -0.04956532642245293, - -0.0028623149264603853, - 0.00996128749102354, - -0.016439735889434814, - 0.0840008407831192, - 0.031104199588298798, - 0.028288541361689568, - 0.02927723526954651, - 0.0585792176425457, - 0.011306039057672024, - -0.06859191507101059, - -0.06719674915075302, - 0.15906275808811188, - 0.07665354758501053, - -0.030672527849674225, - -0.04710652306675911, - -0.07172360271215439, - 0.10005084425210953, - -0.03228176757693291, - -0.1188296303153038, - -0.055814746767282486, - 0.08605849742889404, - 0.15157842636108398, - -0.04420950263738632, - -0.03782351315021515, - 0.011202430352568626, - 0.12784533202648163, - 0.017743747681379318, - 0.11453984677791595, - 0.07027567923069, - 0.0843321830034256, - -0.003724726615473628, - 0.03982752189040184, - 0.03881325572729111, - 0.04802235960960388, - 0.043487437069416046, - -0.019419943913817406, - 0.05808219313621521, - -0.016763733699917793, - -0.005238555371761322, - 0.014152929186820984, - -0.024627618491649628, - 0.006610215175896883, - -0.01443529687821865, - 0.03908499702811241, - 0.008336817845702171, - 0.01766454242169857, - -0.010166262276470661, - 0.059298932552337646, - -0.01987832598388195, - -0.007360312156379223, - 0.06711704283952713, - 0.04001389071345329, - 0.035235047340393066, - 0.05773480609059334, - -0.08370012044906616, - -0.10547614842653275, - 0.042522888630628586, - -0.005578859709203243, - 0.007751731667667627, - 0.06490164250135422, - 0.024526158347725868, - -0.00856785848736763, - 0.1030300185084343, - 0.05986305698752403, - -0.02195248194038868, - 0.038277577608823776, - -0.1145762950181961, - 0.14229969680309296, - 0.053986333310604095, - -0.023819994181394577, - 0.041623108088970184, - -0.0687195286154747, - 0.09064706414937973, - 0.056877076625823975, - -0.15005357563495636, - -0.09600003063678741, - 0.03820410370826721, - 0.019480934366583824, - -0.04020973667502403, - 0.10717343538999557, - -0.029797552153468132, - 0.009655368514358997, - 0.09000623226165771, - -0.0618533231317997, - -0.04383796826004982, - -0.02796785533428192, - 0.04741745442152023, - -0.08143442124128342, - 0.05012882873415947, - 0.03258078545331955, - -0.010219903662800789, - 0.01636679284274578, - 0.11275582760572433, - -0.010713944211602211, - -0.01651557721197605, - 0.02912227250635624, - -0.0266458448022604, - 0.03346564993262291, - -0.036162324249744415, - 0.02600618451833725, - -0.0030781321693211794, - 0.0527995340526104, - 0.04263389855623245, - 0.003189775859937072, - -0.043684836477041245, - -0.07907427847385406, - 0.0006774531793780625, - 0.019977513700723648, - 0.06711924076080322, - -0.0071228258311748505, - -0.012071134522557259, - -0.03611143305897713, - -0.0524408333003521, - -0.013392012566328049, - -0.01527265552431345, - 0.07425066828727722, - -0.0012095257407054305, - 0.020006101578474045, - 0.10346958786249161, - 0.029455851763486862, - 0.0007626976585015655, - -0.07459330558776855, - -0.016935721039772034, - 0.020794715732336044, - 0.05543822795152664, - -0.07505100965499878, - -0.044984616339206696, - 0.012338891625404358, - 0.02657809853553772, - -0.010118257254362106, - 0.04897993803024292, - 0.04975210875272751, - 0.025209985673427582, - 0.04663657024502754, - -0.07825689017772675, - 0.02224918268620968, - -0.11303100734949112, - -0.06090568006038666, - -0.02896808460354805, - -0.018171295523643494, - -0.0316518098115921, - 0.06599346548318863, - -0.0007092852029018104, - 0.04945264011621475, - -0.00348032102920115, - -0.07399351894855499, - -0.06731084734201431, - 0.07268933951854706, - 0.09860076010227203, - -0.013203510083258152, - 0.042342592030763626, - 0.04282982274889946, - -0.02149653621017933, - 0.0605279877781868, - 0.07342345267534256, - 0.11338246613740921, - -0.023849500343203545, - 0.02937689609825611, - -0.07826597988605499, - 0.07550396025180817, - 0.06194820627570152, - -0.09974642097949982, - -0.08785484731197357, - 0.005303366109728813, - -0.049881331622600555, - 0.019132710993289948, - -0.0242499690502882, - 0.006114527117460966, - 0.0212209802120924, - 0.00938879419118166, - -0.07497288286685944, - -0.06556227803230286, - 0.07407844811677933, - -0.09435851126909256, - -0.0073996190913021564, - -0.07422924786806107, - 0.05978701636195183, - 0.11779443919658661, - 0.055191319435834885, - -0.03697899356484413, - -0.0272142942994833, - 0.05121101438999176, - -0.03528626263141632, - -0.0016348283970728517, - 0.01197389978915453, - 0.020866582170128822, - -0.1000773087143898, - 0.04218969866633415, - -0.0723632350564003, - 0.04216983914375305, - -0.06630398333072662, - 0.15699294209480286, - -0.016808493062853813, - -0.07099200785160065, - -0.07270801812410355, - 0.03401869535446167, - -0.03845476359128952, - 0.03282615542411804, - 0.02502809837460518, - 0.06195691227912903, - 0.04220603033900261, - -0.05840633809566498, - 0.12266574054956436, - 0.017571592703461647, - -0.029280629009008408, - -0.07419605553150177, - -0.055782463401556015, - -0.041236817836761475, - 0.024900421500205994, - 0.024229034781455994, - -0.11052656918764114, - -0.027387814596295357, - 0.031266603618860245, - -0.03102274239063263, - 0.08931320160627365, - 0.1403033435344696, - 0.05686182156205177, - -0.13733287155628204 - ] - }, - "p245_284.wav": { - "name": "p245", - "embedding": [ - 0.04141642898321152, - 0.06979545950889587, - -0.019032523036003113, - 0.0390816256403923, - -0.043868135660886765, - 0.06532397866249084, - -0.11736100912094116, - 0.09019085019826889, - -0.06744042038917542, - 0.12230528891086578, - -0.06797505915164948, - 0.09747536480426788, - -0.01648901030421257, - -0.17341503500938416, - -0.054784566164016724, - 0.0424853190779686, - -0.06551390886306763, - -0.032326653599739075, - -0.07067592442035675, - -0.0049887532368302345, - 0.04271107539534569, - 0.04007439315319061, - 0.03347145393490791, - -0.019418317824602127, - 0.033270448446273804, - 0.04106369614601135, - 0.005285894498229027, - 0.042339012026786804, - 0.03307656571269035, - -0.04388793557882309, - -0.024313900619745255, - 0.11311817169189453, - -0.021848518401384354, - -0.007152605801820755, - 0.03852579742670059, - 0.01580837368965149, - -0.003727669594809413, - -0.07809041440486908, - -0.03819633647799492, - 0.00834386795759201, - -0.056444283574819565, - 0.06837356090545654, - 0.03744346648454666, - -0.017337609082460403, - 0.04702596366405487, - -0.025707252323627472, - -0.037150632590055466, - -0.05421062931418419, - -0.1029304713010788, - 0.1610407531261444, - 0.05368327349424362, - 0.018700847402215004, - -0.08519278466701508, - -0.0660209059715271, - 0.11482568830251694, - -0.013651309534907341, - -0.11893503367900848, - -0.044651664793491364, - 0.06012747436761856, - 0.1813526749610901, - -0.020620031282305717, - 0.0038448225241154432, - 0.026122961193323135, - 0.10145090520381927, - 0.048468392342329025, - 0.08712530136108398, - 0.08492505550384521, - 0.08808408677577972, - 0.027660097926855087, - 0.033076416701078415, - 0.06910654157400131, - 0.05137063190340996, - 0.022279199212789536, - -0.03102794848382473, - 0.029225781559944153, - 0.0017949480097740889, - -0.04483289644122124, - 0.003275876631960273, - -0.022943561896681786, - -0.002547027077525854, - -0.004529222846031189, - 0.006550888530910015, - 0.021823525428771973, - 0.024601589888334274, - -0.05423561856150627, - 0.04232274740934372, - 0.006816928740590811, - -0.0280821081250906, - 0.05533795803785324, - 0.042043350636959076, - 0.0007511208532378078, - 0.027507033199071884, - -0.038378119468688965, - -0.10773613303899765, - -0.010008382610976696, - 0.014144865795969963, - -0.01612825319170952, - 0.0561729297041893, - 0.04122903198003769, - -0.030249420553445816, - 0.10074333846569061, - 0.0488659143447876, - -0.015792477875947952, - 0.03387673944234848, - -0.10013174265623093, - 0.09112514555454254, - 0.0901968702673912, - 0.0022102929651737213, - 0.042065154761075974, - -0.02508392557501793, - 0.0649300217628479, - 0.07821866869926453, - -0.1372946947813034, - -0.05955647677183151, - 0.06794905662536621, - -0.0034256819635629654, - 0.02056579664349556, - 0.1159113198518753, - 0.00536385178565979, - 0.005847449414432049, - 0.08433307707309723, - -0.07659203559160233, - -0.04995877668261528, - -0.02838127873837948, - 0.062301672995090485, - -0.06246389448642731, - 0.043179526925086975, - 0.031634822487831116, - -0.01866913214325905, - -0.024759050458669662, - 0.07096080482006073, - -0.011106367222964764, - -0.0032295244745910168, - 0.008477922528982162, - -0.031070424243807793, - 0.06400710344314575, - -0.041499435901641846, - -0.014915753155946732, - 0.07021591067314148, - 0.05228372663259506, - 0.0431116484105587, - -0.010864054784178734, - -0.03191244229674339, - -0.09366914629936218, - 0.0002226183860329911, - 0.039261579513549805, - 0.07691851258277893, - -0.009308917447924614, - 0.01134653389453888, - -0.06734026968479156, - -0.06866125762462616, - 0.03303215652704239, - -0.033099010586738586, - 0.10547616332769394, - 0.006046065595000982, - -0.006494411267340183, - 0.09562556445598602, - -0.022267041727900505, - 0.0013959072530269623, - -0.01959322951734066, - -0.002048219321295619, - 0.02998843416571617, - 0.049768831580877304, - -0.05107250437140465, - -0.050383299589157104, - 0.015026159584522247, - 0.00774481613188982, - -0.02084973081946373, - 0.002089640125632286, - 0.025806095451116562, - 0.008929691277444363, - 0.04049064591526985, - -0.08050184696912766, - 0.027125172317028046, - -0.11228012293577194, - -0.020122552290558815, - 0.002663110150024295, - -0.04198998957872391, - -0.0131063936278224, - 0.08673688024282455, - 0.03347950428724289, - -0.0008789798012003303, - 0.004454189911484718, - -0.10653974860906601, - -0.042314063757658005, - 0.06982344388961792, - 0.06771819293498993, - 0.01876017637550831, - 0.035832278430461884, - 0.057350873947143555, - 0.005859625991433859, - 0.03373382240533829, - 0.07599811255931854, - 0.07678279280662537, - 0.0023659071885049343, - -0.028074581176042557, - -0.05995447561144829, - 0.1001565009355545, - 0.05846802517771721, - -0.08766864985227585, - -0.07658152282238007, - -0.016321495175361633, - -0.061697762459516525, - 0.035262107849121094, - -0.020403580740094185, - 0.02010262943804264, - 0.034007780253887177, - -0.03171507641673088, - -0.10942661017179489, - -0.10004278272390366, - 0.10807790607213974, - -0.06583673506975174, - -0.03333992883563042, - -0.05982062965631485, - 0.01562969945371151, - 0.08392059057950974, - 0.021171271800994873, - -0.011283649131655693, - 0.010521436110138893, - 0.030436046421527863, - -0.0862221047282219, - -0.025896865874528885, - 0.03126629441976547, - -0.012270445935428143, - -0.11129117012023926, - 0.017236925661563873, - -0.076917365193367, - 0.09629207849502563, - -0.06398941576480865, - 0.14145654439926147, - -0.008674035780131817, - -0.04693850874900818, - -0.08016742765903473, - 0.04609028249979019, - -0.029501326382160187, - 0.05558779835700989, - 0.04978852719068527, - 0.08113552629947662, - 0.0382465198636055, - -0.06253757327795029, - 0.09452789276838303, - 0.03421499580144882, - -0.021824760362505913, - -0.06579199433326721, - -0.031653475016355515, - -0.03478645533323288, - 0.01003987342119217, - -0.009544308297336102, - -0.05965317413210869, - 0.015635376796126366, - 0.02291708067059517, - -0.03659220039844513, - 0.0568128377199173, - 0.11286088079214096, - 0.07105669379234314, - -0.09920184314250946 - ] - }, - "p245_082.wav": { - "name": "p245", - "embedding": [ - 0.009411174803972244, - 0.08323510736227036, - -0.04857800900936127, - 0.029742909595370293, - -0.057362064719200134, - 0.04094798117876053, - -0.1382228434085846, - 0.08897451311349869, - -0.04493768885731697, - 0.10658545792102814, - -0.07055925577878952, - 0.10487526655197144, - -0.030202943831682205, - -0.20856811106204987, - -0.06325679272413254, - 0.06275913864374161, - -0.05976363271474838, - -0.07527010142803192, - -0.04118075221776962, - -0.018783489242196083, - 0.05728233978152275, - 0.042633481323719025, - -0.009143693372607231, - 0.011600812897086143, - 0.0013446449302136898, - 0.0663529708981514, - 0.015016966499388218, - 0.03444671258330345, - 0.01594073511660099, - 0.007594255730509758, - -0.02965313382446766, - 0.11619430035352707, - -0.02377568744122982, - 0.007002450991421938, - 0.047205667942762375, - 0.03281540423631668, - 0.030444353818893433, - -0.04127202183008194, - -0.011317635886371136, - 0.035685937851667404, - -0.07206816971302032, - 0.07363279163837433, - 0.034547243267297745, - 0.010727166198194027, - 0.05058418959379196, - 0.02445879578590393, - -0.03089790791273117, - -0.049073249101638794, - -0.10659847408533096, - 0.1731153428554535, - 0.08125479519367218, - -0.015048407018184662, - -0.0494743287563324, - -0.07082439959049225, - 0.1080903559923172, - -0.008389386348426342, - -0.11675167828798294, - -0.06075400859117508, - 0.09706941992044449, - 0.15158149600028992, - -0.018457647413015366, - -0.026260415092110634, - 0.016313740983605385, - 0.1482800394296646, - 0.04631701856851578, - 0.07797910273075104, - 0.04749668389558792, - 0.12294045090675354, - -0.00970434956252575, - -0.02651379629969597, - 0.12090296298265457, - 0.0732836127281189, - 0.023590464144945145, - -0.04570477828383446, - 0.0390847809612751, - 0.0214807391166687, - -0.011423197574913502, - 0.030962955206632614, - -0.02656143717467785, - -0.006641690153628588, - -0.008897986263036728, - 0.01583193615078926, - -0.03470209985971451, - 0.016625670716166496, - -0.02421959862112999, - 0.0678267702460289, - 0.07286550104618073, - -0.01156865805387497, - 0.05863085016608238, - 0.09633757919073105, - 0.020386775955557823, - 0.05461570620536804, - -0.06643228232860565, - -0.08959316462278366, - 0.03463796153664589, - 0.00827353447675705, - 0.018163369968533516, - 0.06372036039829254, - 0.03379521146416664, - -0.017196208238601685, - 0.10332553088665009, - 0.03757525980472565, - -0.01448835339397192, - 0.026851868256926537, - -0.10643801093101501, - 0.12773369252681732, - 0.09552449733018875, - -0.02199445478618145, - -0.008014488965272903, - -0.020254118368029594, - 0.06972513347864151, - 0.07754160463809967, - -0.10743217170238495, - -0.07968710362911224, - 0.055382125079631805, - 0.023620393127202988, - -0.021427322179079056, - 0.12267042696475983, - -0.008210848085582256, - 0.0027259818743914366, - 0.11488700658082962, - -0.06672704964876175, - -0.06719198077917099, - -0.043614983558654785, - 0.020578186959028244, - -0.07784849405288696, - 0.048601940274238586, - 0.0639006495475769, - 0.017551138997077942, - -0.019592275843024254, - 0.08678491413593292, - -0.00807617511600256, - 0.004243718925863504, - -0.025327831506729126, - -0.019358357414603233, - 0.06537950783967972, - -0.010837739333510399, - -0.012346676550805569, - 0.07549881935119629, - 0.03967012092471123, - 0.045830607414245605, - 0.0013602623948827386, - -0.03151504695415497, - -0.1291232407093048, - 0.024233289062976837, - 0.04815968498587608, - 0.07571224123239517, - -0.015101255849003792, - -0.01381041668355465, - -0.05592862889170647, - -0.07876960188150406, - 0.03084312379360199, - -0.02304004691541195, - 0.10026149451732635, - -0.005592876113951206, - -0.04701017960906029, - 0.1049978956580162, - -0.018784694373607635, - -0.0066004260443151, - -0.025569746270775795, - -0.036011822521686554, - 0.013088454492390156, - 0.036392226815223694, - -0.09904009103775024, - -0.0846695527434349, - -0.004475453868508339, - 0.022818515077233315, - 0.0068465229123830795, - 0.026776809245347977, - 0.04669120907783508, - 0.001870704465545714, - 0.027750639244914055, - -0.08918944001197815, - 0.03525206074118614, - -0.11673890799283981, - -0.05327051132917404, - -0.029964253306388855, - -0.04133564233779907, - -0.0030565818306058645, - 0.08169017732143402, - -0.008359239436686039, - 0.004224564414471388, - -0.011324957013130188, - -0.10791286826133728, - -0.07242006808519363, - 0.08339009433984756, - 0.09452908486127853, - 0.02411576732993126, - 0.07288530468940735, - 0.0544586218893528, - -0.006983669940382242, - 0.041727472096681595, - 0.042256295680999756, - 0.13072146475315094, - -0.02864881046116352, - 0.010814046487212181, - -0.047910600900650024, - 0.08523382991552353, - 0.033189740031957626, - -0.10427984595298767, - -0.056293684989213943, - -0.013072704896330833, - -0.03354141116142273, - 0.032415322959423065, - -0.03511476144194603, - 0.026913179084658623, - 0.026824524626135826, - 0.0010047397809103131, - -0.11934097111225128, - -0.08471548557281494, - 0.051463719457387924, - -0.06151154637336731, - -0.009184977039694786, - -0.07765986770391464, - 0.03273706138134003, - 0.10582055151462555, - 0.03917999938130379, - -0.056362319737672806, - 0.009582164697349072, - 0.03869963809847832, - -0.051336877048015594, - -0.012613809667527676, - 0.007583669852465391, - 0.027266785502433777, - -0.0950557067990303, - -0.018024984747171402, - -0.09256584942340851, - 0.08323374390602112, - -0.06041473150253296, - 0.12585674226284027, - 0.0070867701433598995, - -0.05049802362918854, - -0.07285327464342117, - 0.035981278866529465, - -0.023722613230347633, - 0.06461898237466812, - 0.04261399060487747, - 0.06368102133274078, - 0.009700990281999111, - -0.048192787915468216, - 0.13488326966762543, - 0.05653298273682594, - -0.03816651925444603, - -0.0662367194890976, - -0.0075411563739180565, - -0.025510886684060097, - 0.05108931288123131, - 0.05768226459622383, - -0.07609832286834717, - -0.014019026421010494, - 0.028443632647395134, - -0.03756922110915184, - 0.05862042307853699, - 0.12917949259281158, - 0.06986866146326065, - -0.09145446121692657 - ] - }, - "p245_218.wav": { - "name": "p245", - "embedding": [ - 0.06673995405435562, - 0.09241461753845215, - -0.04671558737754822, - 0.005720822140574455, - -0.04166216030716896, - 0.021131504327058792, - -0.13404692709445953, - 0.09596005827188492, - 0.009214630350470543, - 0.12595249712467194, - -0.06881837546825409, - 0.08258086442947388, - -0.04355539381504059, - -0.10822881758213043, - 0.009794319979846478, - 0.03366012126207352, - 0.00036196294240653515, - -0.01178551372140646, - -0.05208093672990799, - -0.04542585089802742, - 0.015606909990310669, - 0.05928616225719452, - 0.03245805948972702, - -0.08387447148561478, - 0.02475116401910782, - 0.08091872930526733, - -0.011844740249216557, - 0.004846625030040741, - -0.013500849716365337, - -0.036631010472774506, - -0.011087826453149319, - 0.07231725752353668, - -0.07530510425567627, - -0.016270868480205536, - 0.026694197207689285, - 0.01794445887207985, - -0.02220413088798523, - -0.06130357086658478, - 0.009617235511541367, - 0.026830632239580154, - -0.04883992671966553, - 0.08181708306074142, - 0.03895075246691704, - -0.0401669442653656, - 0.025874869897961617, - 0.027915049344301224, - 0.010074172168970108, - -0.04031967371702194, - -0.08327020704746246, - 0.18530426919460297, - 0.050702378153800964, - -0.00048330845311284065, - -0.07360462844371796, - -0.02074882946908474, - 0.07327612489461899, - -0.008302642963826656, - -0.05100390687584877, - -0.07220813632011414, - 0.05020608752965927, - 0.08551609516143799, - -0.04471487179398537, - -0.05941503494977951, - 0.03845163807272911, - 0.08454490453004837, - 0.04414811730384827, - 0.042242731899023056, - 0.09319295734167099, - 0.1278742551803589, - -0.031150344759225845, - -0.0013818519655615091, - 0.03789704293012619, - 0.06335889548063278, - 0.0383380763232708, - -0.002171811182051897, - 0.025673845782876015, - -0.028235426172614098, - -0.01745263859629631, - -0.004064389504492283, - -0.018047470599412918, - -0.06305825710296631, - 0.02313840761780739, - -0.00674998015165329, - 0.004048997536301613, - 0.048994652926921844, - -0.03848019987344742, - 0.023486563935875893, - 0.09877488017082214, - -0.04409158602356911, - 0.08935674279928207, - 0.02204792946577072, - 0.012775031849741936, - 0.030318424105644226, - -0.09796352684497833, - -0.055483508855104446, - 0.03484194353222847, - -0.00657587731257081, - 0.024930257350206375, - 0.06521096080541611, - 0.04179495573043823, - -0.022350311279296875, - 0.12113296985626221, - 0.017137957736849785, - -0.015005506575107574, - -0.002767186611890793, - -0.06037360429763794, - 0.15837937593460083, - 0.1218695268034935, - -0.03505280613899231, - 0.014612356200814247, - -0.04748029261827469, - 0.01335287094116211, - 0.03550170361995697, - -0.11038891226053238, - -0.07553435862064362, - 0.017396938055753708, - 0.03284015506505966, - -0.0008369721472263336, - 0.10557593405246735, - 0.013690419495105743, - 0.012181827798485756, - 0.13112908601760864, - -0.0927133858203888, - -0.07104067504405975, - -0.0042142667807638645, - 0.037650760263204575, - -0.0820700079202652, - 0.032728411257267, - 0.10643388330936432, - -0.013440646231174469, - 0.02328268624842167, - 0.07236253470182419, - 0.021005120128393173, - 0.032534319907426834, - -0.032793428748846054, - 0.003447011113166809, - 0.036398567259311676, - 0.0006801164126954973, - -0.01696469448506832, - 0.03490343689918518, - 0.05360676720738411, - 0.08189666271209717, - -0.006878489162772894, - -0.02048259973526001, - -0.1363704949617386, - 0.039053499698638916, - 0.03193531185388565, - 0.037786729633808136, - -0.04440353065729141, - -0.007418894208967686, - -0.029864240437746048, - -0.07562088221311569, - 0.001393111888319254, - -0.011884447187185287, - 0.05794353783130646, - -0.022241737693548203, - -0.01787719316780567, - 0.1491033434867859, - 0.027059899643063545, - 0.021256128326058388, - -0.021346963942050934, - -0.016197465360164642, - 0.014491203241050243, - 0.026206161826848984, - -0.09537866711616516, - -0.09075523912906647, - -0.046413715928792953, - 0.018450338393449783, - 0.00672380905598402, - 0.05369650572538376, - 0.0625077337026596, - 0.006286041811108589, - 0.018740981817245483, - -0.0527520515024662, - 0.019446130841970444, - -0.047873418778181076, - -0.023290500044822693, - -0.005407287739217281, - -0.037413738667964935, - -0.027827031910419464, - 0.09225767850875854, - -0.004187794402241707, - 0.041743017733097076, - -0.046815741807222366, - -0.06845550239086151, - -0.05745353549718857, - 0.028204983100295067, - 0.062291186302900314, - -0.0586608462035656, - 0.010917039588093758, - 0.06356892734766006, - -0.014507530257105827, - -0.0026156194508075714, - 0.070974200963974, - 0.07693815976381302, - -0.035423390567302704, - -0.01701207086443901, - -0.05271977186203003, - 0.10168087482452393, - 0.06159539520740509, - -0.08040063083171844, - -0.03370402753353119, - -0.07339389622211456, - -0.05034111440181732, - -0.012771296314895153, - -0.025148048996925354, - 0.01490765530616045, - 0.019698305055499077, - -0.00143462885171175, - -0.07982230186462402, - -0.10257213562726974, - 0.0267894696444273, - -0.03584497794508934, - 0.007640083320438862, - -0.09003444761037827, - 0.041306376457214355, - 0.055980607867240906, - 0.07535381615161896, - -0.027003316208720207, - -0.020421011373400688, - -0.005871819332242012, - -0.030469907447695732, - 0.024197686463594437, - 0.04127150774002075, - 0.05883333459496498, - -0.06733577698469162, - -0.012668863870203495, - -0.06967277079820633, - 0.08528416603803635, - -0.04000786691904068, - 0.09443873912096024, - 0.027870740741491318, - -0.033193059265613556, - -0.0991239994764328, - 0.03142354637384415, - -0.03074929304420948, - 0.03852801024913788, - 0.04193933680653572, - 0.0056736283004283905, - 0.05675719678401947, - -0.047608088701963425, - 0.10432156175374985, - 0.04758857190608978, - -0.014785085804760456, - -0.06801826506853104, - -0.050628721714019775, - -0.052018903195858, - 0.049489185214042664, - 0.03528051823377609, - -0.067943274974823, - 0.004121929407119751, - 0.029231710359454155, - -0.0023907579015940428, - 0.05455969274044037, - 0.08119166642427444, - 0.06660211086273193, - -0.10265371948480606 - ] - }, - "p245_258.wav": { - "name": "p245", - "embedding": [ - 0.07679141312837601, - 0.03285347297787666, - -0.005191308446228504, - 0.017157545313239098, - -0.01648176833987236, - 0.04638223722577095, - -0.088742196559906, - 0.057948336005210876, - -0.022573599591851234, - 0.07319176197052002, - -0.11689199507236481, - 0.021522829309105873, - -0.003921594470739365, - -0.0912213921546936, - 0.002323621418327093, - 0.014264101162552834, - 0.002201654016971588, - 0.012111756019294262, - -0.09432931244373322, - -0.01385512389242649, - 0.0003177318722009659, - 0.034604333341121674, - 0.01753060147166252, - -0.059732384979724884, - -0.0020971104968339205, - 0.042796872556209564, - 0.010780866257846355, - 0.005441932938992977, - 0.004265574738383293, - -0.002715539187192917, - -0.009840097278356552, - 0.11150279641151428, - -0.04598115012049675, - -0.01988230086863041, - 0.03898988664150238, - 0.04225374758243561, - 0.007714281789958477, - -0.10172348469495773, - -0.019400203600525856, - 0.0038004154339432716, - -0.07217127084732056, - 0.06552952527999878, - 0.055657122284173965, - -0.015563245862722397, - 0.007612681016325951, - 0.012087170034646988, - 0.007316205650568008, - -0.013617804273962975, - -0.06583358347415924, - 0.15554118156433105, - 0.031136982142925262, - 0.0055865030735731125, - -0.07283760607242584, - -0.021615318953990936, - 0.10212336480617523, - -0.0070214164443314075, - -0.036226727068424225, - -0.030113667249679565, - 0.026174569502472878, - 0.10048529505729675, - 0.008407581597566605, - -0.03803853318095207, - -0.01644132472574711, - 0.017940891906619072, - -0.014630669727921486, - 0.055051594972610474, - 0.09959582984447479, - 0.11093810200691223, - 0.0049186935648322105, - 0.025319887325167656, - 0.06981988251209259, - 0.0289970301091671, - 0.04492059350013733, - -0.05474399775266647, - 0.06897800415754318, - 0.005950739607214928, - -0.06861895322799683, - 0.05169109255075455, - -0.04048681631684303, - -0.03773059695959091, - 0.0584164597094059, - -0.015366610139608383, - 0.034149251878261566, - 0.006377383600920439, - -0.11505354195833206, - 0.0046930452808737755, - 0.005290476605296135, - 0.038996078073978424, - 0.10869783163070679, - 0.018349923193454742, - 0.009688381105661392, - 0.01598978228867054, - -0.036223456263542175, - -0.08092721551656723, - 0.01347358338534832, - 0.00746909761801362, - 0.013366539031267166, - 0.029650598764419556, - 0.0247380118817091, - -0.018677975982427597, - 0.07955006510019302, - -0.025160063058137894, - 0.00850014016032219, - -0.009872529655694962, - -0.03528575599193573, - 0.0710277408361435, - 0.11302268505096436, - 0.02511666528880596, - 0.01139133796095848, - -0.041211847215890884, - 0.04427892342209816, - 0.05170672759413719, - -0.07742707431316376, - -0.05129126459360123, - 0.028028609231114388, - 0.037942662835121155, - 0.06499990075826645, - 0.09817469865083694, - -0.040436845272779465, - -0.02128174901008606, - 0.05847795307636261, - -0.06975678354501724, - -0.004629859700798988, - 0.04635251313447952, - -0.007115555927157402, - -0.007278773933649063, - -0.007724538445472717, - -0.0016099689528346062, - -0.029732869938015938, - -0.058376964181661606, - 0.055915676057338715, - -0.027520939707756042, - 0.0052959127351641655, - -0.0474945567548275, - 0.02992713451385498, - 0.08013647794723511, - 0.006267134100198746, - -0.06800227612257004, - 0.04786580801010132, - 0.05581164360046387, - 0.03627294301986694, - 0.01124153845012188, - -0.04230596125125885, - -0.08089552074670792, - 0.0007849982939660549, - 0.0416392907500267, - 0.042494021356105804, - -0.021547436714172363, - -0.026843221858143806, - -0.10129571706056595, - -0.043941665440797806, - 0.027755694463849068, - -0.0478389635682106, - 0.0665149912238121, - 0.0659036710858345, - -0.043209102004766464, - 0.08743710815906525, - -0.03005043976008892, - -0.006855689454823732, - -0.07787776738405228, - -0.043079689145088196, - 0.03751013055443764, - 0.03974080830812454, - 0.0006978809833526611, - -0.04671081155538559, - 0.021193694323301315, - 0.0026710564270615578, - -0.010079368948936462, - -0.04505263641476631, - 0.034987062215805054, - -0.010533876717090607, - 0.01829933375120163, - -0.1373869776725769, - 0.019953547045588493, - -0.12611842155456543, - -0.029317855834960938, - 0.034984566271305084, - 0.01392775122076273, - 0.04856440797448158, - 0.07969792187213898, - -0.013384771533310413, - 0.0044553703628480434, - -0.044323064386844635, - -0.12362749874591827, - 0.006815183907747269, - 0.0634303092956543, - 0.06017370522022247, - -0.005435607396066189, - 0.037726692855358124, - 0.05026915669441223, - 0.00932311825454235, - 0.027295488864183426, - 0.07428344339132309, - 0.07999062538146973, - -0.01062973402440548, - -0.019960129633545876, - 0.005895745009183884, - 0.11012575030326843, - 0.02762814797461033, - -0.05788486450910568, - -0.04115934297442436, - 0.01942356303334236, - -0.032451555132865906, - 0.03567459434270859, - 0.00912648718804121, - 0.013185901567339897, - 0.026380911469459534, - -0.015013724565505981, - -0.08134867250919342, - -0.016082588583230972, - 0.03090437687933445, - -0.011898979544639587, - -0.019635427743196487, - -0.06859276443719864, - 0.01730221137404442, - 0.050356995314359665, - 0.04189112037420273, - -0.024182943627238274, - -0.02373354136943817, - 0.006139649078249931, - -0.08314862102270126, - -0.07653996348381042, - -0.024275556206703186, - 0.008871578611433506, - -0.066228486597538, - 0.042074281722307205, - -0.0472719706594944, - 0.07996881753206253, - -0.02567720040678978, - 0.07942695915699005, - 0.0016464916989207268, - -0.05625027418136597, - -0.04452471807599068, - 0.05419591814279556, - -0.011272326111793518, - 0.04632297530770302, - 0.07949044555425644, - -0.029907487332820892, - 0.01672234944999218, - -0.08599400520324707, - 0.08126738667488098, - 0.006985564716160297, - -0.0048313080333173275, - -0.03543149679899216, - -0.0006830152124166489, - -0.04757782071828842, - -0.009476684965193272, - -0.011244406923651695, - -0.058826301246881485, - 0.0307366494089365, - 0.015632303431630135, - -0.03818799927830696, - 0.01670285500586033, - 0.041338443756103516, - 0.051368676126003265, - -0.06183270364999771 - ] - }, - "p245_091.wav": { - "name": "p245", - "embedding": [ - 0.04309367388486862, - 0.0720987468957901, - -0.0132478391751647, - 0.017731424421072006, - -0.06165162846446037, - 0.06395068019628525, - -0.13169601559638977, - 0.14464542269706726, - -0.046683065593242645, - 0.1385502815246582, - -0.04386259242892265, - 0.12500441074371338, - -0.01278278511017561, - -0.19199281930923462, - -0.02863188646733761, - 0.05434998869895935, - -0.057081859558820724, - -0.04133368283510208, - -0.053575754165649414, - -0.024377061054110527, - 0.04223744198679924, - 0.0311942920088768, - 0.0261395126581192, - -0.0014756987802684307, - 0.021796882152557373, - 0.0695478767156601, - -0.0006583810318261385, - 0.047250326722860336, - 0.012663107365369797, - -0.07275444269180298, - -0.025742821395397186, - 0.08432137966156006, - -0.058854520320892334, - 0.010051047429442406, - 0.04828295856714249, - -0.028486598283052444, - -0.009382815100252628, - -0.04764934629201889, - -0.03271391987800598, - 0.013127505779266357, - -0.047004178166389465, - 0.08635374158620834, - 0.0333406999707222, - -0.00034673017216846347, - 0.042563408613204956, - 0.013922426849603653, - -0.02209658920764923, - -0.04705999791622162, - -0.10563153028488159, - 0.1506836712360382, - 0.075776606798172, - -0.006607173942029476, - -0.0648643970489502, - -0.06669889390468597, - 0.10503864288330078, - -0.025230523198843002, - -0.13188141584396362, - -0.047879062592983246, - 0.07593496143817902, - 0.15364305675029755, - -0.041862230747938156, - -0.031919319182634354, - 0.02820572629570961, - 0.1098124235868454, - 0.06707937270402908, - 0.0889878123998642, - 0.09234442561864853, - 0.10160738229751587, - -0.01282145269215107, - 0.019284797832369804, - 0.05580781027674675, - 0.0751730427145958, - 0.04807524383068085, - -0.0008225438068620861, - 0.037131816148757935, - 0.0014572007348760962, - -0.0006831804057583213, - -0.021310074254870415, - -0.023456593975424767, - -0.003276883391663432, - -0.0038925036787986755, - 0.02375621162354946, - 0.017930250614881516, - 0.028639446943998337, - -0.02274405211210251, - 0.06532417982816696, - 0.02309400588274002, - -0.010117791593074799, - 0.05741807818412781, - 0.03127700090408325, - 0.018069909885525703, - 0.07340972870588303, - -0.09006212651729584, - -0.07940064370632172, - 0.0225283931940794, - 0.0030012200586497784, - 0.024960016831755638, - 0.06134403869509697, - 0.031337201595306396, - -0.00855853222310543, - 0.11929445713758469, - 0.052166104316711426, - -0.01905599795281887, - 0.028067348524928093, - -0.09640559554100037, - 0.12266942858695984, - 0.08031803369522095, - -0.022284023463726044, - 0.04782688617706299, - -0.051695507019758224, - 0.0787573754787445, - 0.05408960208296776, - -0.1350681036710739, - -0.0754668191075325, - 0.0330924391746521, - 0.009739085100591183, - -0.02826535701751709, - 0.13806474208831787, - -0.010384946130216122, - 0.04305350407958031, - 0.11038455367088318, - -0.08230754733085632, - -0.03646830469369888, - -0.0055635301396250725, - 0.054766371846199036, - -0.08317561447620392, - 0.05998267978429794, - 0.03684881329536438, - -0.013172414153814316, - 0.02731870859861374, - 0.09247037768363953, - -0.018216188997030258, - -0.004504123702645302, - 0.016312040388584137, - -0.04332476109266281, - 0.022890862077474594, - -0.025876715779304504, - -0.002924907486885786, - 0.049809135496616364, - 0.036981649696826935, - 0.05224273353815079, - -0.017538845539093018, - -0.037159230560064316, - -0.119931161403656, - 0.016010232269763947, - 0.01986614614725113, - 0.08030147850513458, - -0.014970451593399048, - -0.006482881959527731, - -0.0401659831404686, - -0.06644508987665176, - 0.007841970771551132, - -0.008373289369046688, - 0.07976173609495163, - -0.021678447723388672, - 0.0011113336076959968, - 0.10172917693853378, - 0.03010474517941475, - 0.008834779262542725, - -0.04021097347140312, - -0.035399019718170166, - 0.003066539764404297, - 0.05836181342601776, - -0.0846424549818039, - -0.05683001130819321, - -0.004309183917939663, - 0.043701838701963425, - -0.010717585682868958, - 0.05616123974323273, - 0.05136401578783989, - 0.022349296137690544, - 0.028967753052711487, - -0.06828059256076813, - 0.02481108531355858, - -0.0951242744922638, - -0.0741296261548996, - -0.003367321565747261, - -0.0185336172580719, - -0.02813224494457245, - 0.07075908035039902, - 0.011294732801616192, - 0.051759183406829834, - -0.023240529000759125, - -0.08101250976324081, - -0.08983057737350464, - 0.05698192119598389, - 0.06296256184577942, - -0.016562119126319885, - 0.03837001323699951, - 0.0679793655872345, - -0.03630131110548973, - 0.050037138164043427, - 0.06037301942706108, - 0.11213769018650055, - -0.031672198325395584, - 0.02792520448565483, - -0.07070574164390564, - 0.09044340252876282, - 0.0789322555065155, - -0.08119912445545197, - -0.07228894531726837, - -0.008563557639718056, - -0.06970565021038055, - 0.04068715497851372, - -0.02785094641149044, - 0.0017837516497820616, - 0.0431668758392334, - 0.012809227220714092, - -0.0992497056722641, - -0.07491475343704224, - 0.08240143954753876, - -0.08449393510818481, - -0.00450856564566493, - -0.08662715554237366, - 0.04068160802125931, - 0.11025522649288177, - 0.0415530726313591, - -0.023766905069351196, - -0.017375074326992035, - 0.050013281404972076, - -0.02350243180990219, - 0.012389621697366238, - 0.0574544295668602, - 0.03179460018873215, - -0.10195067524909973, - -0.01964683085680008, - -0.07553237676620483, - 0.03137651085853577, - -0.033169474452733994, - 0.1412326544523239, - 0.0024874797090888023, - -0.04609978199005127, - -0.07931625097990036, - 0.03564610704779625, - -0.01348478626459837, - 0.060373455286026, - 0.03673099726438522, - 0.07927213609218597, - 0.0639696940779686, - -0.055534981191158295, - 0.12298642098903656, - 0.04358307272195816, - -0.04595636948943138, - -0.06615161895751953, - -0.04008050262928009, - -0.03524373471736908, - 0.023251861333847046, - 0.014349992386996746, - -0.09259232878684998, - -0.01610407419502735, - 0.024809114634990692, - -0.020766835659742355, - 0.05673844739794731, - 0.12615686655044556, - 0.05869127810001373, - -0.11874385923147202 - ] - }, - "p245_149.wav": { - "name": "p245", - "embedding": [ - 0.03768186271190643, - 0.08385203778743744, - 0.003771065967157483, - 0.016704736277461052, - -0.02278084307909012, - 0.04204532504081726, - -0.16192631423473358, - 0.16337457299232483, - -0.028415264561772346, - 0.13345271348953247, - -0.07519504427909851, - 0.10003703832626343, - -0.02614821307361126, - -0.18881404399871826, - -0.024122655391693115, - 0.05158974230289459, - -0.0221388041973114, - -0.018566664308309555, - -0.016828352585434914, - 0.005564190912991762, - 0.05611561983823776, - 0.049695853143930435, - 0.004307721275836229, - -0.001803562045097351, - 0.012524161487817764, - 0.04730432853102684, - 0.00986695196479559, - 0.06021067500114441, - 0.02476823329925537, - -0.03380019590258598, - -0.00223548524081707, - 0.11448952555656433, - -0.04335777088999748, - 0.030037984251976013, - 0.07191549241542816, - -0.00968906655907631, - -0.024295175448060036, - -0.04914316534996033, - -0.018657123669981956, - -0.0071354638785123825, - -0.054571714252233505, - 0.06066074222326279, - 0.043791115283966064, - 0.02487028017640114, - 0.052724555134773254, - 0.0570414774119854, - -0.007172238547354937, - -0.05884827673435211, - -0.0950125902891159, - 0.16391783952713013, - 0.06042741984128952, - 0.0028025214560329914, - -0.06446389108896255, - -0.07849854975938797, - 0.09417851269245148, - -0.010156840085983276, - -0.11376545578241348, - -0.04148290306329727, - 0.10617800801992416, - 0.16100741922855377, - -0.0250163022428751, - -0.04480304569005966, - 0.0320194736123085, - 0.1292324811220169, - 0.04362428933382034, - 0.09016602486371994, - 0.08338652551174164, - 0.10966627299785614, - -0.002137948991730809, - 0.006961085833609104, - 0.035613901913166046, - 0.053405776619911194, - 0.033508457243442535, - -0.011102542281150818, - 0.024848341941833496, - 0.027205847203731537, - -0.010422540828585625, - 0.007268413435667753, - -0.03176813945174217, - 0.001368687953799963, - -0.005691193044185638, - 0.034977711737155914, - 0.002772694919258356, - 0.037705063819885254, - -0.014800334349274635, - 0.058759916573762894, - 0.013955675065517426, - 0.010913911275565624, - 0.07828021049499512, - 0.01347639411687851, - 0.02955559641122818, - 0.06418874859809875, - -0.0798056498169899, - -0.08031607419252396, - 0.017876846715807915, - -0.004576188512146473, - 0.014666064642369747, - 0.07051225751638412, - 0.028934121131896973, - -0.01445766631513834, - 0.13701120018959045, - 0.02543218433856964, - -0.01817462593317032, - 0.03026607260107994, - -0.11601606756448746, - 0.11854873597621918, - 0.04868794232606888, - -0.0228131003677845, - 0.05795200914144516, - -0.077306367456913, - 0.06261872500181198, - 0.055262207984924316, - -0.15220719575881958, - -0.06971816718578339, - 0.06351606547832489, - 0.04874006286263466, - -0.03217070549726486, - 0.1579434871673584, - -0.002579244552180171, - 0.028287317603826523, - 0.10888787358999252, - -0.09761328995227814, - -0.06145886331796646, - -0.011445235460996628, - 0.060192376375198364, - -0.08660709112882614, - 0.05724826455116272, - 0.03938935697078705, - -0.027138710021972656, - 0.005414584651589394, - 0.09243336319923401, - -0.00719593046233058, - 0.02358940802514553, - -0.015410438179969788, - -0.03600359335541725, - 0.03849741071462631, - -0.05553814396262169, - 0.00407925620675087, - -0.007076476700603962, - 0.04599997401237488, - 0.04391339793801308, - 0.007961018942296505, - -0.07285860925912857, - -0.12969304621219635, - -0.009119763039052486, - 0.022251714020967484, - 0.08857829123735428, - -0.00926095899194479, - -0.027449872344732285, - -0.03495349735021591, - -0.04527740180492401, - -0.010584015399217606, - -0.01791813038289547, - 0.06671866774559021, - -0.00796806626021862, - -0.005068654660135508, - 0.09341266751289368, - 0.015182343311607838, - 0.009166423231363297, - -0.054214511066675186, - -0.04482874274253845, - -0.006100847385823727, - 0.041935257613658905, - -0.07273270189762115, - -0.05464041605591774, - 0.0032572061754763126, - 0.04191582649946213, - -0.007699319627135992, - 0.03734232112765312, - 0.029372671619057655, - 0.029092110693454742, - 0.02629699930548668, - -0.06226622313261032, - 0.006399726029485464, - -0.12177871912717819, - -0.09955225884914398, - 0.0018630328122526407, - 0.028377551585435867, - -0.00882348045706749, - 0.07371123135089874, - 0.01345228124409914, - 0.056676216423511505, - 0.0026063756085932255, - -0.07180155813694, - -0.09480110555887222, - 0.05946919322013855, - 0.07905697077512741, - -0.016860011965036392, - 0.0557427853345871, - 0.04409220069646835, - -0.058635152876377106, - 0.05230488255620003, - 0.04737548902630806, - 0.097597636282444, - -0.016359668225049973, - 0.018242985010147095, - -0.07807204127311707, - 0.08407483994960785, - 0.08453156054019928, - -0.08569619059562683, - -0.07536394894123077, - 0.00361895770765841, - -0.07456056773662567, - 0.019792921841144562, - -0.011527043767273426, - 0.017840590327978134, - 0.017282098531723022, - -0.003985610790550709, - -0.10447810590267181, - -0.0651320070028305, - 0.05125219374895096, - -0.08799359202384949, - -0.00356765603646636, - -0.07514673471450806, - 0.053844936192035675, - 0.12126345932483673, - 0.038374364376068115, - -0.011949478648602962, - -0.0579039603471756, - 0.042095355689525604, - -0.048414088785648346, - -0.00973714143037796, - 0.03740885481238365, - 0.03555256500840187, - -0.09930659830570221, - 0.016074690967798233, - -0.07543778419494629, - 0.03346505016088486, - -0.06566616892814636, - 0.1308433711528778, - 0.002985036000609398, - -0.07399366796016693, - -0.08267852663993835, - 0.013626091182231903, - -0.0031136367470026016, - 0.04493806138634682, - 0.003336617723107338, - 0.05804196745157242, - 0.05074665695428848, - -0.054444264620542526, - 0.12769778072834015, - 0.03700132668018341, - -0.0334160141646862, - -0.05462217703461647, - -0.05680021643638611, - -0.04155223071575165, - 0.014036959037184715, - 0.008526414632797241, - -0.09706000983715057, - -0.040051259100437164, - 0.027229513972997665, - -0.016197683289647102, - 0.0530916228890419, - 0.1305728554725647, - 0.028189923614263535, - -0.1510210782289505 - ] - }, - "p245_282.wav": { - "name": "p245", - "embedding": [ - 0.04918473958969116, - 0.08637490123510361, - -0.007416686043143272, - 0.011736655607819557, - -0.034126728773117065, - 0.09576372057199478, - -0.16671088337898254, - 0.11537657678127289, - -0.07332129776477814, - 0.15138636529445648, - -0.06084202975034714, - 0.08286546170711517, - -0.016679655760526657, - -0.19939547777175903, - -0.04118802025914192, - 0.060039639472961426, - -0.0485377162694931, - -0.03061012551188469, - -0.061128370463848114, - -0.021811429411172867, - 0.02710186503827572, - 0.03617182374000549, - 0.003836966585367918, - -0.015880730003118515, - 0.06001034751534462, - 0.04411380738019943, - -0.009789112024009228, - 0.02384761907160282, - -0.023135032504796982, - -0.07027004659175873, - -0.017313463613390923, - 0.11355763673782349, - -0.04108476638793945, - 0.0054458873346447945, - 0.049676381051540375, - 0.010946200229227543, - 0.022713428363204002, - -0.0690869390964508, - -0.025180278345942497, - 0.022344209253787994, - -0.03395051136612892, - 0.08637428283691406, - 0.04206613823771477, - 0.02410716935992241, - 0.018926391378045082, - 0.022452645003795624, - -0.0033003794960677624, - -0.0629497617483139, - -0.09105990827083588, - 0.1637907326221466, - 0.03488153591752052, - 0.02003924548625946, - -0.07264581322669983, - -0.09036867320537567, - 0.11691020429134369, - -0.01661752536892891, - -0.11093058437108994, - -0.041040897369384766, - 0.07760954648256302, - 0.1973458081483841, - -0.03649074211716652, - -0.04468505457043648, - 0.024507921189069748, - 0.10280981659889221, - 0.033941738307476044, - 0.0926000103354454, - 0.07198548316955566, - 0.09376473724842072, - 0.02536942809820175, - -0.006938672624528408, - 0.06506480276584625, - 0.05119505152106285, - 0.04949592798948288, - -0.04402872920036316, - 0.038263265043497086, - 0.0034496309235692024, - -0.033596690744161606, - -0.004746205173432827, - -0.026907946914434433, - -0.005863695405423641, - 0.005246943794190884, - 0.013683231547474861, - 0.02701464667916298, - 0.022461578249931335, - -0.04446312412619591, - 0.01840929128229618, - 0.03137648478150368, - -0.030592940747737885, - 0.08245187997817993, - 0.04999903216958046, - 0.029997780919075012, - 0.05336563289165497, - -0.07607252895832062, - -0.08314183354377747, - 0.04955289512872696, - 0.030490122735500336, - -0.0097513347864151, - 0.04004715383052826, - 0.04669622331857681, - -0.029973922297358513, - 0.11153507232666016, - 0.03164280578494072, - 0.011941333301365376, - 0.028219493106007576, - -0.11870015412569046, - 0.11242745816707611, - 0.07347170263528824, - -0.019780682399868965, - 0.05719504505395889, - -0.03001154586672783, - 0.058226972818374634, - 0.08163052797317505, - -0.15437033772468567, - -0.10382787883281708, - 0.0460633710026741, - 0.011677831411361694, - -0.002385564148426056, - 0.12334049493074417, - -0.005099774803966284, - 0.00373261421918869, - 0.08679091930389404, - -0.09700756520032883, - -0.04592788964509964, - -0.008215099573135376, - 0.051422297954559326, - -0.07695111632347107, - 0.04211403429508209, - 0.05514785274863243, - -0.01441549975425005, - -0.002632137155160308, - 0.0784575343132019, - 0.0010088167618960142, - 0.003617632668465376, - -0.020375492051243782, - -0.00885198824107647, - 0.04245833307504654, - -0.019077708944678307, - -0.0023816616740077734, - 0.040753982961177826, - 0.041563913226127625, - 0.04827522486448288, - -0.0011446280404925346, - -0.048880934715270996, - -0.11934922635555267, - -0.005425691604614258, - 0.031441982835531235, - 0.0708688497543335, - -0.019094662740826607, - 0.015499190427362919, - -0.05891560763120651, - -0.06943809986114502, - 0.03880215436220169, - -0.022658992558717728, - 0.11601532995700836, - 0.03702371567487717, - 0.0017082486301660538, - 0.12184203416109085, - 0.01326817087829113, - 0.003069052705541253, - -0.04492931067943573, - -0.007773939054459333, - 0.01448272354900837, - 0.0442669615149498, - -0.06655454635620117, - -0.0586044043302536, - 0.002862915163859725, - 0.02099073864519596, - -0.006853929720818996, - 0.052816517651081085, - 0.03505631536245346, - 0.02370835654437542, - 0.02798202447593212, - -0.06569341570138931, - 0.021529115736484528, - -0.09267281740903854, - -0.041293468326330185, - 0.0020594631787389517, - -0.03777649253606796, - -0.04203295335173607, - 0.11180447787046432, - 0.031770844012498856, - 0.022221706807613373, - -0.04405190050601959, - -0.07476504147052765, - -0.05941647291183472, - 0.05638466775417328, - 0.059406913816928864, - -0.01249806396663189, - 0.008707843720912933, - 0.036489181220531464, - 0.008604108355939388, - 0.05506923794746399, - 0.09578022360801697, - 0.10153677314519882, - -0.013855861499905586, - 0.023530006408691406, - -0.045515142381191254, - 0.11799225211143494, - 0.054027266800403595, - -0.06644414365291595, - -0.0875316858291626, - -0.015532460063695908, - -0.06729471683502197, - 0.04164282605051994, - -0.015173353254795074, - 0.0241103433072567, - 0.01613209769129753, - -0.024961547926068306, - -0.08904419094324112, - -0.08301189541816711, - 0.08476808667182922, - -0.06067796051502228, - -0.021545374765992165, - -0.07147687673568726, - 0.051183976233005524, - 0.08135366439819336, - 0.0504799410700798, - -0.012078030034899712, - -0.012088810093700886, - 0.04369615390896797, - -0.06308901309967041, - 0.002464691177010536, - 0.05622190982103348, - 0.0018578750314190984, - -0.09580859541893005, - 0.013557873666286469, - -0.08640974760055542, - 0.0827709287405014, - -0.049802280962467194, - 0.15335458517074585, - -0.002155531430616975, - -0.06400637328624725, - -0.072476327419281, - 0.02539350464940071, - -0.031643129885196686, - 0.05469140410423279, - 0.030460383743047714, - 0.08160100877285004, - 0.07404012233018875, - -0.026813236996531487, - 0.07912090420722961, - 0.03971291333436966, - -0.018852807581424713, - -0.06498745828866959, - -0.05719950795173645, - -0.033781807869672775, - 0.027375701814889908, - -0.025486808270215988, - -0.09414863586425781, - 0.019231317564845085, - 0.04031920060515404, - 0.014105978421866894, - 0.06413815915584564, - 0.11309399455785751, - 0.058938100934028625, - -0.12928643822669983 - ] - }, - "p245_144.wav": { - "name": "p245", - "embedding": [ - 0.06451576948165894, - 0.07863955944776535, - -0.054214559495449066, - -0.0013287020847201347, - -0.04699229821562767, - 0.05234336107969284, - -0.11202690005302429, - 0.1264936923980713, - -0.04261700063943863, - 0.1227116659283638, - -0.05619831755757332, - 0.1020348072052002, - -0.0021212296560406685, - -0.0959632620215416, - -0.031342703849077225, - 0.031068187206983566, - -0.016820518299937248, - -0.012836553156375885, - -0.0575728565454483, - -0.007126937620341778, - 0.01864396035671234, - 0.042010921984910965, - -0.0033465642482042313, - -0.04457543045282364, - 0.03951434791088104, - 0.04612615704536438, - -0.003626084653660655, - -0.0012710131704807281, - -9.020802099257708e-05, - -0.014274194836616516, - 0.002750260755419731, - 0.09270736575126648, - -0.0549585297703743, - 0.02991463616490364, - 0.04406115040183067, - 0.013795966282486916, - -0.0028166677802801132, - -0.0755537897348404, - -0.004171857610344887, - 0.0017133401706814766, - -0.020847436040639877, - 0.09847398102283478, - 0.04870182275772095, - -0.01996915228664875, - 0.0008741049095988274, - 0.023187611252069473, - 0.0064304484985768795, - -0.06064082682132721, - -0.0796089768409729, - 0.18075178563594818, - 0.021234050393104553, - 0.007563202176243067, - -0.10967054218053818, - -0.030316786840558052, - 0.07097498327493668, - -0.011462385766208172, - -0.04815720021724701, - -0.06891772150993347, - 0.022153671830892563, - 0.12933334708213806, - -0.008986820466816425, - -0.06296688318252563, - 0.00954245962202549, - 0.10089502483606339, - 0.04547721892595291, - 0.03384922072291374, - 0.08851581066846848, - 0.1031089574098587, - -0.014161994680762291, - 0.0418732725083828, - 0.05211334675550461, - 0.06060950458049774, - 0.04798581451177597, - -0.013754267245531082, - 0.041533492505550385, - -0.04157410189509392, - -0.021936986595392227, - 0.00012329593300819397, - -0.026196949183940887, - -0.06331545859575272, - -0.0151357501745224, - 0.012079700827598572, - 0.018896345049142838, - 0.07096876204013824, - -0.05173385143280029, - 0.03253144398331642, - 0.05863405019044876, - -0.057456113398075104, - 0.07040925323963165, - 0.07698200643062592, - 0.019345292821526527, - 0.010062191635370255, - -0.07948547601699829, - -0.0973343774676323, - 0.04828553646802902, - -0.017899371683597565, - 0.05202047899365425, - 0.042936474084854126, - 0.03044051304459572, - 0.017331190407276154, - 0.07494838535785675, - 0.017454246059060097, - 0.0014740910846740007, - -0.021523334085941315, - -0.06535103172063828, - 0.15509024262428284, - 0.11784021556377411, - -0.01838667131960392, - 0.008557137101888657, - -0.03870384395122528, - 0.015690870583057404, - 0.04523897171020508, - -0.11500421166419983, - -0.09417371451854706, - 0.02455427311360836, - 0.010425731539726257, - 0.011744928546249866, - 0.09375882148742676, - 0.026946041733026505, - 0.016524648293852806, - 0.05758378282189369, - -0.09494365751743317, - -0.06495655328035355, - -0.006743422709405422, - 0.010163147002458572, - -0.08007995039224625, - 0.041595760732889175, - 0.07645824551582336, - -0.010622847825288773, - -0.00458108726888895, - 0.07820293307304382, - 0.02537374198436737, - 0.02983633056282997, - -0.020779289305210114, - 0.03136895224452019, - 0.05646835267543793, - 0.009946179576218128, - -0.006923624314367771, - 0.02413981407880783, - 0.03297823667526245, - 0.07414369285106659, - 0.007161813322454691, - -0.00267966091632843, - -0.10024695098400116, - 0.022871360182762146, - 0.07752461731433868, - 0.03979470208287239, - -0.05954083800315857, - -0.0264838095754385, - -0.007483895402401686, - -0.05975719541311264, - -0.004031844437122345, - 0.006820830050855875, - 0.07728968560695648, - 0.019074691459536552, - 0.002906989539042115, - 0.1524740308523178, - -0.007221294566988945, - 0.011522188782691956, - -0.028411056846380234, - 0.04153662919998169, - 0.034812286496162415, - 0.05945446342229843, - -0.04929729923605919, - -0.09740880131721497, - 0.0042921812273561954, - 0.01036841794848442, - -0.014612752012908459, - 0.03148571774363518, - 0.05867883190512657, - -0.027848713099956512, - 0.04501333832740784, - -0.07449093461036682, - 0.01893012970685959, - -0.11056061834096909, - -0.013285566121339798, - -0.006873646751046181, - -0.061138808727264404, - -0.030024878680706024, - 0.0877450704574585, - 0.016684407368302345, - 0.05443602427840233, - -0.028466980904340744, - -0.09104223549365997, - -0.03484445437788963, - 0.05966056138277054, - 0.07343141734600067, - -0.054386381059885025, - -0.004553365521132946, - 0.05119304358959198, - 0.036805443465709686, - -0.01783037930727005, - 0.0653134137392044, - 0.0833202451467514, - -0.048128098249435425, - -0.03658363223075867, - -0.06021568924188614, - 0.12124153971672058, - 0.04905258119106293, - -0.10331075638532639, - -0.05194811522960663, - -0.0427817665040493, - -0.031648486852645874, - -0.020182698965072632, - -0.026452865451574326, - 0.030227527022361755, - 0.05226399004459381, - -0.027822185307741165, - -0.1087491512298584, - -0.1005541980266571, - 0.05035927891731262, - -0.07216939330101013, - 0.0235403161495924, - -0.06493920087814331, - 0.03590066730976105, - 0.05739014595746994, - 0.04634343832731247, - -0.044089142233133316, - -0.01857799105346203, - -0.023557066917419434, - -0.061096809804439545, - -0.03005470335483551, - -0.008483832702040672, - 0.03132792189717293, - -0.06305155158042908, - 0.00618013646453619, - -0.05518964305520058, - 0.05967462807893753, - -0.05417861044406891, - 0.13946104049682617, - -0.011814150959253311, - -0.08001607656478882, - -0.09965641796588898, - -0.015382720157504082, - -0.038887836039066315, - 0.05071520432829857, - 0.04677646607160568, - 0.025949567556381226, - 0.020992448553442955, - -0.06595253944396973, - 0.09091810882091522, - 0.08341232687234879, - -0.007141642272472382, - -0.07471198588609695, - -0.051463689655065536, - -0.026010246947407722, - 0.05512811616063118, - 0.016546163707971573, - -0.03272877633571625, - 0.029712345451116562, - 0.016880350187420845, - -0.023146355524659157, - 0.08148369193077087, - 0.07711365818977356, - 0.0578840896487236, - -0.10065698623657227 - ] - }, - "p245_318.wav": { - "name": "p245", - "embedding": [ - 0.04507553204894066, - 0.10920147597789764, - -0.022158142179250717, - 0.011556160636246204, - -0.06520803272724152, - 0.05223945528268814, - -0.13449203968048096, - 0.13945050537586212, - -0.03241237252950668, - 0.13587743043899536, - -0.06733669340610504, - 0.11064039915800095, - -0.04449087381362915, - -0.14924824237823486, - -0.014828489162027836, - 0.059912145137786865, - -0.051316335797309875, - -0.04313979297876358, - -0.06568493694067001, - -0.04600934311747551, - 0.018532564863562584, - 0.023898029699921608, - 0.02709241770207882, - 0.014347524382174015, - 0.035172414034605026, - 0.07545115798711777, - 6.184587255120277e-05, - 0.03931276127696037, - 0.002304574241861701, - -0.043067969381809235, - -0.03390832245349884, - 0.08618511259555817, - -0.05207951366901398, - 0.00672593479976058, - 0.03976500779390335, - -0.022910870611667633, - 0.009279772639274597, - -0.04141080379486084, - -0.008341005071997643, - 0.018926098942756653, - -0.027027040719985962, - 0.09029260277748108, - 0.009867168962955475, - -0.005765540990978479, - 0.025646712630987167, - 0.03594989329576492, - -0.006896687671542168, - -0.044028256088495255, - -0.10330000519752502, - 0.16128036379814148, - 0.08075575530529022, - -0.01955389976501465, - -0.06548656523227692, - -0.05060984194278717, - 0.09168876707553864, - -0.0356663353741169, - -0.1006714403629303, - -0.06021656095981598, - 0.07082536816596985, - 0.11834166198968887, - -0.047988057136535645, - -0.04068361595273018, - 0.02116357535123825, - 0.13058772683143616, - 0.07561755925416946, - 0.07317395508289337, - 0.0645039975643158, - 0.11565060913562775, - -0.06145942956209183, - 0.002869861666113138, - 0.06504159420728683, - 0.052801087498664856, - 0.06237401068210602, - 0.009972390718758106, - 0.022321166470646858, - -0.01706426590681076, - 0.009798907674849033, - -0.003948776051402092, - -0.022489584982395172, - -0.0320168063044548, - -0.01852479949593544, - 0.013525784946978092, - -0.015719957649707794, - 0.019091691821813583, - -0.012450532987713814, - 0.059192802757024765, - 0.06244989112019539, - -0.02332986518740654, - 0.08280375599861145, - 0.03874257206916809, - 0.015305336564779282, - 0.07569806277751923, - -0.0913001000881195, - -0.05676039680838585, - 0.04459819197654724, - -0.003976620268076658, - 0.03136901929974556, - 0.046301960945129395, - 0.03205833584070206, - -0.004987073130905628, - 0.12204782664775848, - 0.058196671307086945, - -0.008118255995213985, - 0.029100563377141953, - -0.0868886336684227, - 0.15975579619407654, - 0.08245521783828735, - -0.04829215258359909, - 0.04312577843666077, - -0.017702851444482803, - 0.03541550412774086, - 0.040521711111068726, - -0.10498850047588348, - -0.08655978739261627, - 0.0007403949275612831, - 0.006318551953881979, - -0.049518685787916183, - 0.08220335841178894, - -0.0022732438519597054, - 0.040700219571590424, - 0.11848847568035126, - -0.07807755470275879, - -0.05293574556708336, - 0.007153650745749474, - 0.045477889478206635, - -0.08164584636688232, - 0.0372631810605526, - 0.08606104552745819, - 0.002052789553999901, - 0.042651813477277756, - 0.11153598874807358, - 0.010337131097912788, - 0.0033313168678432703, - 0.013698937371373177, - -0.03761139512062073, - 0.009935274720191956, - 0.0017573998775333166, - -0.009830291382968426, - 0.03997397422790527, - 0.03306715190410614, - 0.05466125160455704, - -0.01318013109266758, - -0.0031720383558422327, - -0.12026414275169373, - 0.02907611057162285, - 0.038955021649599075, - 0.06646828353404999, - -0.02589097060263157, - 0.0007897550240159035, - -0.03274973854422569, - -0.06406117975711823, - -0.005779765546321869, - 0.004290500655770302, - 0.06758448481559753, - -0.049288880079984665, - -0.007854145020246506, - 0.1344522088766098, - 0.036866143345832825, - 0.009831075556576252, - -0.06030388921499252, - -0.018817909061908722, - 0.011213169433176517, - 0.052855901420116425, - -0.07131435722112656, - -0.08908241987228394, - -0.011078552342951298, - 0.05069715529680252, - -0.0054439883679151535, - 0.10068371146917343, - 0.058539845049381256, - -0.0010237207170575857, - 0.015886269509792328, - -0.04767495393753052, - 0.03443163260817528, - -0.054864950478076935, - -0.055831171572208405, - -0.007442827802151442, - -0.022288542240858078, - -0.045784592628479004, - 0.07440043985843658, - 0.010203235782682896, - 0.06714300066232681, - -0.025977984070777893, - -0.08768455684185028, - -0.08800902962684631, - 0.05272018164396286, - 0.06623592972755432, - -0.03501349315047264, - 0.049074240028858185, - 0.08077995479106903, - -0.02768271416425705, - 0.03973587974905968, - 0.06374876946210861, - 0.11115764826536179, - -0.03982605040073395, - 0.022942883893847466, - -0.07662893831729889, - 0.049810923635959625, - 0.05544648319482803, - -0.10768159478902817, - -0.07013879716396332, - -0.038094114512205124, - -0.04538816958665848, - 0.0239694956690073, - -0.022712329402565956, - 0.02705361135303974, - 0.05473530292510986, - 0.0023576742969453335, - -0.07717382162809372, - -0.11067014932632446, - 0.087740957736969, - -0.0760345607995987, - 0.019093003123998642, - -0.07037229835987091, - 0.045412786304950714, - 0.0776141807436943, - 0.05505777895450592, - -0.029280412942171097, - -0.015065735206007957, - 0.03831012174487114, - 0.0002976396935991943, - 0.02039031870663166, - 0.05480428412556648, - 0.05185496434569359, - -0.09379037469625473, - -0.0010709408670663834, - -0.09537047892808914, - 0.0642523318529129, - -0.014521993696689606, - 0.1528104990720749, - 0.027624811977148056, - -0.03512641787528992, - -0.09572188556194305, - 0.021997952833771706, - -0.04331353306770325, - 0.058442965149879456, - 0.021160349249839783, - 0.05122164264321327, - 0.05405889451503754, - -0.039488621056079865, - 0.11723458766937256, - 0.04998578876256943, - -0.05880585312843323, - -0.07599344104528427, - -0.04550326615571976, - -0.04497572034597397, - 0.047326985746622086, - 0.021340832114219666, - -0.08772169798612595, - -0.023435043171048164, - 0.011185297742486, - -0.02631141059100628, - 0.08280722796916962, - 0.13119782507419586, - 0.08854357898235321, - -0.10515636205673218 - ] - }, - "p245_007.wav": { - "name": "p245", - "embedding": [ - 0.045149561017751694, - 0.09462827444076538, - -0.004983566235750914, - 0.01441553607583046, - -0.040921974927186966, - 0.0460314117372036, - -0.1374877691268921, - 0.14266598224639893, - -0.02844548225402832, - 0.14590361714363098, - -0.10295730829238892, - 0.10899394005537033, - -0.03622077777981758, - -0.1817992627620697, - -0.010942138731479645, - 0.049713678658008575, - -0.018514594063162804, - -0.01720358617603779, - -0.01836828701198101, - -0.02213156782090664, - 0.05242509767413139, - 0.03886376693844795, - 0.011565125547349453, - 0.0005401832750067115, - 0.008142187260091305, - 0.060174088925123215, - -0.002350371330976486, - 0.036150168627500534, - 0.009359965100884438, - -0.028012793511152267, - -0.02911045402288437, - 0.11387284845113754, - -0.042926009744405746, - 0.01754629611968994, - 0.05512300133705139, - -0.0023006401024758816, - -0.015515687875449657, - -0.059416264295578, - -0.0034726187586784363, - -0.01844344660639763, - -0.052459970116615295, - 0.051387228071689606, - 0.018303057178854942, - -0.006816095672547817, - 0.048413462936878204, - 0.04628662019968033, - -0.016710927709937096, - -0.04815246909856796, - -0.0959140956401825, - 0.14691177010536194, - 0.07315322756767273, - 0.0010720882564783096, - -0.060489654541015625, - -0.05905752629041672, - 0.09213852137327194, - -0.004349768161773682, - -0.09773315489292145, - -0.03875022754073143, - 0.09545882046222687, - 0.15052419900894165, - -0.03678842633962631, - -0.04767787456512451, - 0.029551643878221512, - 0.11777134984731674, - 0.03265444561839104, - 0.09840225428342819, - 0.07757331430912018, - 0.10743063688278198, - -0.01601983606815338, - 0.0037266486324369907, - 0.0393899604678154, - 0.06142648309469223, - 0.05681558698415756, - -0.024123316630721092, - 0.019066978245973587, - 0.005068219266831875, - -0.021948404610157013, - 0.018842605873942375, - -0.03453856706619263, - -0.024402549490332603, - -0.01040874794125557, - -0.0016926064854487777, - -0.0013946382096037269, - 0.014890472404658794, - -0.02607232891023159, - 0.04491014406085014, - 0.04575467109680176, - -0.0022593028843402863, - 0.07943510264158249, - 0.00871972180902958, - 0.0077266693115234375, - 0.06365819275379181, - -0.08963986486196518, - -0.07812100648880005, - 0.03682796657085419, - 0.0006405137246474624, - 0.006351283751428127, - 0.0839984342455864, - 0.04083499312400818, - -0.02534095197916031, - 0.1304074376821518, - 0.027666514739394188, - -0.001957169035449624, - 0.028884446248412132, - -0.10244368016719818, - 0.13300222158432007, - 0.0867403969168663, - -0.040909938514232635, - 0.040179602801799774, - -0.06159123778343201, - 0.06630713492631912, - 0.06784448772668839, - -0.14018531143665314, - -0.05995617434382439, - 0.027340415865182877, - 0.02889484167098999, - -0.032858945429325104, - 0.11932780593633652, - -0.007023673038929701, - 0.029417915269732475, - 0.11900245398283005, - -0.0956362634897232, - -0.07041047513484955, - -0.024063672870397568, - 0.04008038341999054, - -0.08925782144069672, - 0.059200387448072433, - 0.05558852478861809, - -0.00468786945566535, - 0.023262869566679, - 0.0776807963848114, - -0.019946567714214325, - 0.006450870539993048, - -0.002378875855356455, - -0.05001462623476982, - 0.01711973547935486, - -0.045849110931158066, - -0.0012377402745187283, - 0.01026424765586853, - 0.041825130581855774, - 0.052442729473114014, - 0.005560107529163361, - -0.03959401324391365, - -0.11477609723806381, - 0.011388657614588737, - 0.0426616445183754, - 0.06983286142349243, - -0.006180457770824432, - -0.030488889664411545, - -0.03860398381948471, - -0.056340109556913376, - 0.005566542502492666, - -0.01672866940498352, - 0.05992467328906059, - -0.02122928760945797, - 0.009386766701936722, - 0.09203469753265381, - 0.03568700700998306, - -0.001121892943046987, - -0.06701791286468506, - -0.05225416272878647, - 0.006604105234146118, - 0.03601774573326111, - -0.08915388584136963, - -0.0722610354423523, - -0.01153799332678318, - 0.041301801800727844, - -0.02586875855922699, - 0.052861955016851425, - 0.04162454232573509, - 0.023200949653983116, - 0.02434510551393032, - -0.07235388457775116, - 0.015180274844169617, - -0.10750853270292282, - -0.08713891357183456, - -0.004747116472572088, - 0.003373709972947836, - -6.0791149735450745e-05, - 0.06760033965110779, - -0.0034182898234575987, - 0.045295488089323044, - -0.0170745886862278, - -0.06334178149700165, - -0.0921957939863205, - 0.059231236577034, - 0.07021010667085648, - -0.01315352227538824, - 0.0540599450469017, - 0.04610733315348625, - -0.057014286518096924, - 0.04529346153140068, - 0.05259294435381889, - 0.11683603376150131, - -0.017661986872553825, - 0.031231671571731567, - -0.06803632527589798, - 0.07313703000545502, - 0.09136772155761719, - -0.07618334889411926, - -0.08612386882305145, - -0.036052532494068146, - -0.06151314824819565, - 0.039730288088321686, - -0.019058262929320335, - -0.006168651860207319, - 0.0071921637281775475, - -0.010274677537381649, - -0.09668649733066559, - -0.0691647082567215, - 0.05889381095767021, - -0.06229701638221741, - -0.010126300156116486, - -0.09735549986362457, - 0.06448353826999664, - 0.09117724001407623, - 0.03756062686443329, - -0.029363583773374557, - -0.03031315468251705, - 0.040525857359170914, - -0.04621623083949089, - 0.0024459604173898697, - 0.03496124967932701, - 0.04540511965751648, - -0.09806956350803375, - 0.008444282226264477, - -0.07950171828269958, - 0.04574510455131531, - -0.05788262188434601, - 0.1417692005634308, - 0.009513124823570251, - -0.054678451269865036, - -0.08371474593877792, - 0.03866763785481453, - 0.003159400075674057, - 0.030905848369002342, - 0.020846746861934662, - 0.04654347896575928, - 0.03371462970972061, - -0.08124206960201263, - 0.11730848252773285, - 0.024292364716529846, - -0.023562973365187645, - -0.061257652938365936, - -0.05499252676963806, - -0.050434406846761703, - 0.009189965203404427, - -0.002579478081315756, - -0.09833388030529022, - -0.037157781422138214, - 0.018929090350866318, - 9.888783097267151e-05, - 0.0609932541847229, - 0.13144658505916595, - 0.046483367681503296, - -0.12329264730215073 - ] - }, - "p245_161.wav": { - "name": "p245", - "embedding": [ - 0.06870262324810028, - 0.10832621902227402, - 0.018237516283988953, - 0.0003815444651991129, - -0.018562277778983116, - 0.07336337864398956, - -0.15925759077072144, - 0.13991522789001465, - -0.060507576912641525, - 0.15200191736221313, - -0.08756881207227707, - 0.10665490478277206, - -0.03218308091163635, - -0.1784062385559082, - -0.051562707871198654, - 0.06383423507213593, - -0.051114290952682495, - -0.021441539749503136, - -0.010848100297152996, - -0.00442859809845686, - 0.03806187957525253, - 0.026988688856363297, - 0.028587399050593376, - 0.029623044654726982, - 0.022562410682439804, - 0.06481856107711792, - 0.006737282034009695, - 0.05229507014155388, - 0.0069920942187309265, - -0.05479402840137482, - -0.018677551299333572, - 0.11925399303436279, - -0.029504429548978806, - 0.025281410664319992, - 0.06654888391494751, - 0.013784918002784252, - 0.007076592650264502, - -0.08078533411026001, - -0.010977746918797493, - -0.02224605530500412, - -0.035707853734493256, - 0.06702031940221786, - 0.013324787840247154, - -0.002375748474150896, - 0.020236758515238762, - 0.04379139095544815, - 0.0005133097874931991, - -0.04975833743810654, - -0.09307645261287689, - 0.1431887149810791, - 0.05501990765333176, - 0.012574536725878716, - -0.0724792629480362, - -0.0848955512046814, - 0.10336392372846603, - -0.027185775339603424, - -0.11092164367437363, - -0.025609731674194336, - 0.08587907254695892, - 0.17760726809501648, - -0.046085044741630554, - -0.050447843968868256, - 0.029222603887319565, - 0.12457051873207092, - 0.03412794694304466, - 0.10647805780172348, - 0.07635490596294403, - 0.09448458254337311, - -0.010382408276200294, - 0.008122078143060207, - 0.048811670392751694, - 0.05862194299697876, - 0.06506988406181335, - -0.020888125523924828, - 0.02912452444434166, - 0.006172207184135914, - -0.027292665094137192, - 0.025266330689191818, - -0.023525765165686607, - -0.024357467889785767, - -0.02253073826432228, - -0.00208936701528728, - -0.011701757088303566, - 0.01969437301158905, - -0.015462040901184082, - 0.039249107241630554, - 0.01680240035057068, - -0.018924657255411148, - 0.08197642862796783, - 0.040215566754341125, - 0.037328775972127914, - 0.06807029247283936, - -0.065538689494133, - -0.0797659158706665, - 0.04386014863848686, - 0.0059586199931800365, - 0.0171256922185421, - 0.07328593730926514, - 0.044418882578611374, - -0.022651297971606255, - 0.11246055364608765, - 0.04188261553645134, - 0.009091696701943874, - 0.015819981694221497, - -0.1156444177031517, - 0.12238971889019012, - 0.07270428538322449, - -0.04746101424098015, - 0.03256046026945114, - -0.0442255400121212, - 0.07173807919025421, - 0.09776537120342255, - -0.15303656458854675, - -0.09183570742607117, - 0.04038841277360916, - 0.02522859536111355, - -0.0050983852706849575, - 0.10459312796592712, - -0.014848722144961357, - 0.011565989814698696, - 0.09376179426908493, - -0.07401733100414276, - -0.05897212028503418, - -0.022061064839363098, - 0.039304040372371674, - -0.09357898682355881, - 0.06608165055513382, - 0.0492662712931633, - 0.0027238510083407164, - -0.017883144319057465, - 0.09324191510677338, - -0.01609242893755436, - -0.01770544983446598, - -0.008201437070965767, - -0.04062352329492569, - 0.017123602330684662, - -0.04358793422579765, - 0.011792747303843498, - 0.002367309993132949, - 0.04382942244410515, - 0.025523971766233444, - 0.015377247706055641, - -0.05584787577390671, - -0.11316414922475815, - -0.0018854388035833836, - 0.0531994067132473, - 0.06586024910211563, - -0.0036472126375883818, - -0.039595119655132294, - -0.03285756707191467, - -0.02714969962835312, - 0.022000622004270554, - -0.0215320885181427, - 0.07059452682733536, - 0.005336389876902103, - 0.006951726507395506, - 0.1057104766368866, - 0.014294530265033245, - 0.011490853503346443, - -0.06466006487607956, - -0.019668901339173317, - 0.03289859741926193, - 0.04279383271932602, - -0.07607969641685486, - -0.07183100283145905, - 0.0034481151960790157, - 0.03494783490896225, - -0.014473985880613327, - 0.0458655022084713, - 0.03803864121437073, - 0.014231516048312187, - 0.025620516389608383, - -0.0582166388630867, - 0.014855700545012951, - -0.11558549106121063, - -0.08754715323448181, - -0.008582242764532566, - -0.011124735698103905, - 0.003764317836612463, - 0.06719385087490082, - 0.01484648883342743, - 0.03679465875029564, - -0.03116190806031227, - -0.0819769948720932, - -0.08818960189819336, - 0.06477537751197815, - 0.09183748066425323, - 0.006224717013537884, - 0.03845309466123581, - 0.0348658561706543, - -0.020722847431898117, - 0.06271000951528549, - 0.05161736533045769, - 0.11731331795454025, - -0.027741428464651108, - 0.02158561907708645, - -0.06975573301315308, - 0.07015620172023773, - 0.08249412477016449, - -0.08361397683620453, - -0.09463249891996384, - -0.019229568541049957, - -0.05283684656023979, - 0.04383622109889984, - -0.008865853771567345, - 0.005712880752980709, - 0.015254969708621502, - -0.032408811151981354, - -0.09880499541759491, - -0.08109933882951736, - 0.09112220257520676, - -0.06285277009010315, - -0.009766589850187302, - -0.08192508667707443, - 0.07207295298576355, - 0.07351924479007721, - 0.04085075855255127, - -0.024230893701314926, - -0.004076804965734482, - 0.03783038258552551, - -0.05463511496782303, - -0.019450504332780838, - 0.03397679701447487, - 0.016385337337851524, - -0.10431455075740814, - 0.01707218773663044, - -0.09213979542255402, - 0.07221890985965729, - -0.07339034974575043, - 0.16168177127838135, - -0.02109682373702526, - -0.07328248023986816, - -0.08050103485584259, - 0.009347349405288696, - -0.01990067958831787, - 0.045343443751335144, - 0.029147714376449585, - 0.0550139918923378, - 0.02574208192527294, - -0.06777419149875641, - 0.10246551036834717, - 0.03721686452627182, - -0.017056453973054886, - -0.07194140553474426, - -0.05997295305132866, - -0.04421697184443474, - 0.022755298763513565, - -0.020484410226345062, - -0.09410213679075241, - -0.023953229188919067, - 0.018044713884592056, - -0.0023260421585291624, - 0.07099057734012604, - 0.13451765477657318, - 0.03564916178584099, - -0.12935785949230194 - ] - }, - "p245_322.wav": { - "name": "p245", - "embedding": [ - 0.05867404490709305, - 0.08776416629552841, - -0.009117075242102146, - 0.006275969557464123, - -0.05828960984945297, - 0.05608009174466133, - -0.15756559371948242, - 0.15339866280555725, - -0.043311361223459244, - 0.12987080216407776, - -0.04376037046313286, - 0.13991306722164154, - -4.772613010572968e-06, - -0.19379335641860962, - -0.037924982607364655, - 0.0577777698636055, - -0.056644003838300705, - -0.04867164045572281, - -0.009366032667458057, - -0.03086036816239357, - 0.04147467762231827, - 0.04401761293411255, - 0.03154900297522545, - 0.021233724430203438, - 0.025893524289131165, - 0.08144257962703705, - 0.015503056347370148, - 0.05473456159234047, - 0.020258257165551186, - -0.06304898113012314, - -0.04084392264485359, - 0.07913471013307571, - -0.05371316149830818, - -0.007965032942593098, - 0.04409767687320709, - -0.03573685139417648, - 0.007143785711377859, - -0.06800752133131027, - -0.02970271185040474, - 0.017500991001725197, - -0.03473828732967377, - 0.09454252570867538, - 0.03404957056045532, - -0.01597454585134983, - 0.023009149357676506, - 0.03175893798470497, - -0.0014671747339889407, - -0.05008109658956528, - -0.1111796572804451, - 0.14726674556732178, - 0.08040410280227661, - -0.002775174332782626, - -0.06350021809339523, - -0.05659450590610504, - 0.10560932010412216, - -0.016208071261644363, - -0.1032608300447464, - -0.03512602671980858, - 0.07019481062889099, - 0.1424742490053177, - -0.04023712873458862, - -0.04222244396805763, - 0.04894430190324783, - 0.1261807233095169, - 0.05756570026278496, - 0.07596937566995621, - 0.09350641071796417, - 0.09585306793451309, - -0.03165556862950325, - 0.018457213416695595, - 0.049356598407030106, - 0.08357895910739899, - 0.025122439488768578, - -0.008470152504742146, - 0.025872208178043365, - -0.00923940259963274, - -0.014261228032410145, - -0.011694937944412231, - -0.007796307094395161, - -0.010588720440864563, - -0.008430177345871925, - 0.014417783357203007, - -0.0044074226170778275, - 0.03972719609737396, - -0.02282765321433544, - 0.07116247713565826, - 0.010834299959242344, - -0.006394419819116592, - 0.07449810951948166, - 0.021347124129533768, - 0.03531501069664955, - 0.07125614583492279, - -0.086465023458004, - -0.07489131391048431, - 0.04830196872353554, - -0.0001503361272625625, - 0.037160806357860565, - 0.07645300030708313, - 0.04441075026988983, - -0.015106570906937122, - 0.13763055205345154, - 0.06629740446805954, - -0.02261001244187355, - 0.023913847282528877, - -0.08670985698699951, - 0.1360081434249878, - 0.07539215683937073, - -0.03781836852431297, - 0.05808195844292641, - -0.057647716253995895, - 0.07614754140377045, - 0.049175336956977844, - -0.14671207964420319, - -0.08810988813638687, - 0.04085970297455788, - 0.039393968880176544, - -0.022739311680197716, - 0.14198949933052063, - -0.01827811822295189, - 0.05077064409852028, - 0.09974881261587143, - -0.06040159985423088, - -0.0496547557413578, - -0.018630361184477806, - 0.06358248740434647, - -0.09324121475219727, - 0.08466548472642899, - 0.06435555219650269, - -0.01880018040537834, - 0.01887170970439911, - 0.09250757098197937, - -0.019450407475233078, - -0.008574271574616432, - 0.013556569814682007, - -0.03143060952425003, - 0.0165313258767128, - -0.021760541945695877, - 0.007706217002123594, - 0.020902518182992935, - 0.0266584400087595, - 0.03983909636735916, - -0.0017553266370669007, - -0.04117373377084732, - -0.1326344758272171, - 0.01696479506790638, - 0.009681995026767254, - 0.0847819596529007, - -0.0011977946851402521, - -0.04532928764820099, - -0.041529830545186996, - -0.0410635843873024, - -0.020994078367948532, - 0.007407172117382288, - 0.06456858664751053, - -0.028331449255347252, - 0.013436204753816128, - 0.08333013206720352, - 0.04634971171617508, - 0.015180795453488827, - -0.030198749154806137, - -0.03350245580077171, - 0.020259691402316093, - 0.05327599495649338, - -0.07026441395282745, - -0.06719457358121872, - -0.011357349343597889, - 0.04443669319152832, - -0.02031329646706581, - 0.05439165607094765, - 0.0497092641890049, - 0.028534119948744774, - 0.02472635731101036, - -0.07578153163194656, - 0.04309258237481117, - -0.08571420609951019, - -0.07007020711898804, - -0.015253056772053242, - 0.011146986857056618, - -0.047452718019485474, - 0.06553606688976288, - 0.01987873949110508, - 0.07775586098432541, - -0.026488518342375755, - -0.05859935283660889, - -0.07976828515529633, - 0.03688163310289383, - 0.08365271240472794, - -0.011485207825899124, - 0.041748978197574615, - 0.0557313933968544, - -0.012076572515070438, - 0.0557733029127121, - 0.04484863951802254, - 0.10123520344495773, - -0.025056693702936172, - 0.00805388018488884, - -0.05475130304694176, - 0.07183671742677689, - 0.06349208950996399, - -0.09084787964820862, - -0.06388452649116516, - -0.01715942658483982, - -0.06846684217453003, - 0.039339762181043625, - -0.0042763021774590015, - 0.017304273322224617, - 0.0237430389970541, - 0.008652533404529095, - -0.1057690903544426, - -0.08377397805452347, - 0.07391486316919327, - -0.08307552337646484, - 0.0057650376111269, - -0.08851455897092819, - 0.05180005356669426, - 0.12259875237941742, - 0.028729919344186783, - -0.025784656405448914, - -0.04210766777396202, - 0.027388472110033035, - -0.008438419550657272, - 0.02171332761645317, - 0.057243864983320236, - 0.05695510655641556, - -0.11887624114751816, - 0.0033189682289958, - -0.08494004607200623, - 0.03907385095953941, - -0.04326308146119118, - 0.1467370092868805, - 0.023233477026224136, - -0.0502345971763134, - -0.0973343551158905, - 0.03095272183418274, - -0.023961668834090233, - 0.06033830717206001, - 0.03715446963906288, - 0.05577002838253975, - 0.05007936432957649, - -0.07353881001472473, - 0.10891478508710861, - 0.05222782492637634, - -0.048930149525403976, - -0.08264405280351639, - -0.02988201566040516, - -0.02504650317132473, - 0.049169961363077164, - 0.03359472379088402, - -0.08841452747583389, - -0.048421625047922134, - 0.02786114625632763, - -0.011260537430644035, - 0.08766349405050278, - 0.13737866282463074, - 0.047570183873176575, - -0.1182001456618309 - ] - }, - "p245_029.wav": { - "name": "p245", - "embedding": [ - 0.02780189737677574, - 0.06881777197122574, - -0.02166341058909893, - 0.035300370305776596, - -0.08039987087249756, - 0.03737490996718407, - -0.13218814134597778, - 0.10533221811056137, - -0.025261640548706055, - 0.13056746125221252, - -0.06294182687997818, - 0.11150313168764114, - -0.04067876562476158, - -0.19179928302764893, - 0.01603834703564644, - 0.07331312447786331, - -0.009981782175600529, - -0.05697910487651825, - -0.030502507463097572, - -0.03456566482782364, - 0.018658112734556198, - 0.04433068633079529, - 0.030695535242557526, - 0.009590781293809414, - 0.030597832053899765, - 0.08441580086946487, - -0.01755676046013832, - 0.020735016092658043, - -0.011478307656943798, - -0.03744737058877945, - -0.05290212854743004, - 0.08481673896312714, - -0.06441842019557953, - -0.016748838126659393, - 0.022417467087507248, - -0.007377291098237038, - -0.008932935073971748, - -0.04833114892244339, - -0.009816067293286324, - 0.0020654138643294573, - -0.06729279458522797, - 0.0770978033542633, - 0.012322187423706055, - -0.013452468439936638, - 0.03841298446059227, - 0.011561397463083267, - -0.024539481848478317, - -0.02239598147571087, - -0.1207062155008316, - 0.13176241517066956, - 0.06389179825782776, - -0.01150287501513958, - -0.06859362870454788, - -0.05717504769563675, - 0.09275449812412262, - -0.008093236945569515, - -0.09542311728000641, - -0.07539010047912598, - 0.08015977591276169, - 0.11930983513593674, - -0.026469871401786804, - -0.03782252222299576, - 0.023962363600730896, - 0.09392349421977997, - 0.06957662850618362, - 0.08792545646429062, - 0.05430028215050697, - 0.11039911210536957, - -0.03676654398441315, - -0.007545675151050091, - 0.0666150227189064, - 0.05513319373130798, - 0.03976689279079437, - -0.019877765327692032, - 0.010215479880571365, - 0.007984207943081856, - -0.0031649149022996426, - 0.008714050054550171, - -0.00264170253649354, - -0.021914878860116005, - -0.012283986434340477, - -0.026817915961146355, - -0.011580743826925755, - -0.002369352150708437, - -0.021885622292757034, - 0.04338505491614342, - 0.08456631004810333, - -0.0020076162181794643, - 0.08473724871873856, - 0.02747882902622223, - -0.02704799361526966, - 0.0778418481349945, - -0.08801056444644928, - -0.028749868273735046, - 0.03529080003499985, - 0.006499058101326227, - 0.003503114450722933, - 0.0772712379693985, - 0.03805812448263168, - -0.017157312482595444, - 0.12923437356948853, - 0.04269561544060707, - 0.006646237336099148, - 0.03647709637880325, - -0.08015980571508408, - 0.13249893486499786, - 0.07367956638336182, - -0.037179671227931976, - 0.04943344369530678, - -0.02214723825454712, - 0.051948897540569305, - 0.05367725342512131, - -0.10972532629966736, - -0.05366886779665947, - -0.00395756121724844, - -0.01649671234190464, - -0.05136849731206894, - 0.12127330899238586, - -0.013668501749634743, - 0.02866087108850479, - 0.12481474876403809, - -0.09382082521915436, - -0.07580876350402832, - 0.008934416808187962, - 0.027468513697385788, - -0.10574019700288773, - 0.049265168607234955, - 0.06492609530687332, - 0.001026851125061512, - 0.036990828812122345, - 0.08854550123214722, - -0.01331368274986744, - 0.019535653293132782, - 0.006677671801298857, - -0.04297717660665512, - 0.014578481204807758, - -0.010654295794665813, - -0.009864230640232563, - 0.08132299035787582, - 0.011906872503459454, - 0.06819181144237518, - -0.025784719735383987, - 0.006931353360414505, - -0.1369224637746811, - 0.028833262622356415, - 0.04176367074251175, - 0.0686354860663414, - -0.012330367229878902, - -0.008494798094034195, - -0.057070568203926086, - -0.09885986149311066, - 0.02841872163116932, - -0.0012829565675929189, - 0.08452381193637848, - -0.0442269928753376, - 0.005829977802932262, - 0.09953711926937103, - 0.05012792348861694, - -0.005873378366231918, - -0.0641418918967247, - -0.049663521349430084, - 0.00015880540013313293, - 0.05739030987024307, - -0.0848923772573471, - -0.06908732652664185, - -0.026412172242999077, - 0.05897587910294533, - -0.01342968363314867, - 0.07305772602558136, - 0.06559213995933533, - 0.026138633489608765, - 0.004874559119343758, - -0.07479707151651382, - 0.03167376294732094, - -0.041544221341609955, - -0.05901027098298073, - -0.023487603291869164, - -0.020500417798757553, - -0.03167291730642319, - 0.08064433932304382, - 0.013003415428102016, - 0.04186970368027687, - -0.03767181560397148, - -0.07162640243768692, - -0.10102683305740356, - 0.03790765255689621, - 0.046678703278303146, - -0.029464757069945335, - 0.04837606102228165, - 0.06666761636734009, - -0.06644361466169357, - 0.04189606010913849, - 0.046696633100509644, - 0.10919620096683502, - -0.04652491956949234, - 0.0415828600525856, - -0.044446270912885666, - 0.07271315157413483, - 0.08629599958658218, - -0.0788758173584938, - -0.06641732156276703, - -0.04304632544517517, - -0.0710979551076889, - 0.06476205587387085, - -0.027910947799682617, - -0.0032920720987021923, - 0.03390655666589737, - -0.007626053877174854, - -0.09001055359840393, - -0.10095858573913574, - 0.07489994913339615, - -0.038231879472732544, - -0.006134871859103441, - -0.09589746594429016, - 0.038394395262002945, - 0.04740843176841736, - 0.054574836045503616, - -0.03585117310285568, - -0.007327437400817871, - 0.046828169375658035, - -0.012232083827257156, - 0.027652762830257416, - 0.09809942543506622, - 0.04111935943365097, - -0.08717308938503265, - -0.04641895741224289, - -0.09534372389316559, - 0.08270589262247086, - -0.027644727379083633, - 0.1443927139043808, - 0.017893584445118904, - -0.023883726447820663, - -0.063459612429142, - 0.02851518988609314, - -0.010903319343924522, - 0.05522590130567551, - 0.045986589044332504, - 0.06351014971733093, - 0.045878518372774124, - -0.02977527305483818, - 0.11506573855876923, - 0.05919646471738815, - -0.031413257122039795, - -0.05762070417404175, - -0.0213331189006567, - -0.05005037412047386, - 0.04196877032518387, - 0.022439155727624893, - -0.1201159879565239, - 0.0053299106657505035, - 0.03308534622192383, - -0.013428907841444016, - 0.06381815671920776, - 0.1387225091457367, - 0.08890995383262634, - -0.09253202378749847 - ] - }, - "p245_407.wav": { - "name": "p245", - "embedding": [ - -0.003104584291577339, - 0.04657316207885742, - -0.032337043434381485, - 0.006645446643233299, - -0.05889582633972168, - 0.023109564557671547, - -0.0836152508854866, - 0.05858964845538139, - -0.03308698907494545, - 0.1238940954208374, - -0.03413597121834755, - 0.1005193442106247, - -0.01499311812222004, - -0.08105746656656265, - 0.023426655679941177, - 0.05755702406167984, - -0.011530330404639244, - -0.040308378636837006, - -0.0003295931965112686, - -0.08617779612541199, - 0.026843346655368805, - 0.013807281851768494, - -0.005035571753978729, - -0.01111688930541277, - 0.0010062993969768286, - 0.08500957489013672, - -0.016075022518634796, - -0.013842049986124039, - -0.019869215786457062, - -0.0630098357796669, - -0.04138507694005966, - 0.09601067006587982, - -0.037356168031692505, - -0.05952814221382141, - 0.02426801063120365, - -0.012836904264986515, - -0.005598604213446379, - -0.011211697943508625, - 0.02020454593002796, - 0.008303358219563961, - -0.10945820808410645, - 0.0837821438908577, - -0.018392261117696762, - -0.011588041670620441, - 0.05007948726415634, - -0.034542445093393326, - -0.05800371617078781, - 0.05362749844789505, - -0.042021967470645905, - 0.07242666929960251, - 0.08492620289325714, - -0.02868054062128067, - -0.04110778868198395, - -0.02114693820476532, - 0.05137369781732559, - 0.019055377691984177, - -0.1011195182800293, - -0.024596519768238068, - -0.0002370290458202362, - 0.07408127188682556, - -0.0005028368905186653, - -0.033601824194192886, - 0.03478960692882538, - 0.09339827299118042, - 0.06205793470144272, - 0.04223657771945, - 0.05290503799915314, - 0.06885270029306412, - -0.022216254845261574, - -0.029701411724090576, - 0.06996627151966095, - 0.0864732414484024, - 0.08215707540512085, - -0.0019089310662820935, - 0.02766697108745575, - -0.006614426150918007, - 0.0011562397703528404, - -0.05672324076294899, - -0.03587431460618973, - -0.028931934386491776, - -0.05705353617668152, - -0.021391846239566803, - -0.0013540992513298988, - 0.03384846821427345, - 0.0011343229562044144, - -0.006994025781750679, - 0.08271786570549011, - -0.02858877182006836, - 0.04757063835859299, - 0.031527962535619736, - -0.014183513820171356, - 0.04894658550620079, - -0.08426105231046677, - 0.008590849116444588, - 0.016310518607497215, - -0.019878674298524857, - 0.05104648321866989, - 0.07355128228664398, - 0.007673108018934727, - 0.017706256359815598, - 0.08254500478506088, - 0.029020095244050026, - 0.020456653088331223, - -0.0029742568731307983, - -0.07228829711675644, - 0.1103634387254715, - 0.07806919515132904, - -0.0640028715133667, - 0.006874486804008484, - 0.03914283961057663, - 0.040454551577568054, - -0.004827793687582016, - -0.09616594016551971, - -0.023870384320616722, - -0.024942860007286072, - 0.012525135651230812, - -0.012076758779585361, - 0.09087841212749481, - 0.01347122248262167, - 0.03773888200521469, - 0.09482701122760773, - -0.02195243164896965, - -0.0607881098985672, - -0.05246800556778908, - 0.02600812539458275, - -0.12688294053077698, - 0.0887662023305893, - 0.05488528311252594, - 0.045933984220027924, - 0.05349424108862877, - 0.10580737888813019, - 0.005932166241109371, - -0.008115613833069801, - -0.03361114114522934, - -0.03186650201678276, - -0.003121431451290846, - -0.00012975651770830154, - 0.04425520822405815, - 0.07043840736150742, - -0.006851738318800926, - 0.10119348019361496, - -0.007384748198091984, - 0.060464370995759964, - -0.07564433664083481, - 0.03929874673485756, - 0.0343942791223526, - 0.02475239336490631, - -0.03344819322228432, - -0.02465083636343479, - 0.0072366707026958466, - -0.06678535044193268, - -0.02442559227347374, - -0.023924626410007477, - 0.06874669343233109, - -0.029876066371798515, - -0.009793409146368504, - 0.09930677711963654, - 0.031654663383960724, - -0.0060859257355332375, - -0.002396952360868454, - -0.03451858088374138, - -0.013528370298445225, - 0.0750058963894844, - -0.13117572665214539, - -0.07055386900901794, - -0.020009178668260574, - 0.032913632690906525, - 0.045135047286748886, - 0.053581275045871735, - 0.08896920830011368, - -0.018656853586435318, - 0.026856394484639168, - -0.020285427570343018, - 0.024043720215559006, - -0.053148895502090454, - -0.05038430914282799, - -0.046974774450063705, - -0.08690065145492554, - -0.057863496243953705, - 0.04483678936958313, - -0.04021107405424118, - 0.045361801981925964, - -0.028334293514490128, - -0.07365195453166962, - -0.08450794219970703, - 0.017343856394290924, - 0.03447098284959793, - -0.026992756873369217, - 0.03211980685591698, - 0.10205669701099396, - -0.02623457834124565, - -0.01944817788898945, - 0.015529869124293327, - 0.10556671023368835, - -0.0641951709985733, - 0.02835429087281227, - -0.06852920353412628, - 0.05496248975396156, - 0.0796789675951004, - -0.024761170148849487, - -0.061186533421278, - -0.0679822713136673, - -0.03255509212613106, - 0.08795242756605148, - -0.04374832659959793, - -0.016944946721196175, - 0.026646820828318596, - -0.027378231287002563, - -0.061976246535778046, - -0.05818817391991615, - 0.0926298126578331, - -0.05986655876040459, - -0.012708021327853203, - -0.06789904087781906, - 0.008965477347373962, - -0.015787430107593536, - 0.07708202302455902, - -0.07744063436985016, - 0.05499912053346634, - 0.05589529499411583, - -0.016781218349933624, - 0.05208747088909149, - 0.08026955276727676, - 0.03256071358919144, - -0.04298686236143112, - -0.07182008028030396, - -0.06363420188426971, - 0.0448843352496624, - -0.026755396276712418, - 0.0501389242708683, - 0.026474572718143463, - -0.026602022349834442, - -0.046603161841630936, - 0.02742432802915573, - 0.01171579398214817, - 0.010041594505310059, - 0.1002071425318718, - 0.1084214597940445, - 0.01527472585439682, - -0.016209213063120842, - 0.07432680577039719, - 0.028180165216326714, - 0.0075395843014121056, - -0.022618385031819344, - 0.007898639887571335, - -0.04450123757123947, - 0.016117246821522713, - 0.049493271857500076, - -0.11122187972068787, - 0.06742001324892044, - 0.015724629163742065, - 0.01118016429245472, - 0.04433777183294296, - 0.05172194540500641, - 0.0658288300037384, - -0.06423455476760864 - ] - }, - "p245_235.wav": { - "name": "p245", - "embedding": [ - 0.08414724469184875, - 0.031948335468769073, - 0.008943088352680206, - -0.02238096296787262, - -0.02330591529607773, - 0.047428738325834274, - -0.10531490296125412, - 0.09980402886867523, - -0.04704798012971878, - 0.0699850395321846, - -0.08023872971534729, - 0.08879193663597107, - 0.017676588147878647, - -0.12182343006134033, - -0.0659368485212326, - 0.02796243131160736, - -0.03592311963438988, - 0.005282433703541756, - -0.06951486319303513, - -0.029010048136115074, - 0.011277561075985432, - 0.05407358705997467, - 0.033470313996076584, - -0.02317504957318306, - 0.029628541320562363, - 0.058356016874313354, - 0.03048108145594597, - 0.03721782565116882, - -0.00400970783084631, - -0.021969571709632874, - -0.0018918104469776154, - 0.08224688470363617, - -0.019491994753479958, - -0.022157397121191025, - 0.0456538200378418, - -0.0007916120812296867, - 0.03099163994193077, - -0.09128797054290771, - -0.03188329190015793, - 0.03247610852122307, - -0.04240315407514572, - 0.07372508943080902, - 0.06276065111160278, - -0.0047044456005096436, - 0.009728895500302315, - 0.015967829152941704, - 0.009108318015933037, - -0.08033211529254913, - -0.11000896990299225, - 0.17768913507461548, - 0.005370305851101875, - 0.04462099075317383, - -0.11519655585289001, - -0.01280895620584488, - 0.08057249337434769, - -0.022846464067697525, - -0.03344767168164253, - -0.03641297668218613, - 0.024675730615854263, - 0.14093877375125885, - -0.002063194289803505, - -0.03948536887764931, - 0.03993751108646393, - 0.07905098795890808, - 0.01084806490689516, - 0.021227842196822166, - 0.1313486546278, - 0.0696532279253006, - -0.0011959066614508629, - 0.0597175657749176, - 0.04390156269073486, - 0.0480753555893898, - 0.030905958265066147, - -0.021440064534544945, - 0.03045884147286415, - -0.02206547185778618, - -0.045527294278144836, - 0.0067911092191934586, - -0.028769362717866898, - -0.032696593552827835, - 0.010667145252227783, - 0.024968117475509644, - 0.037860311567783356, - 0.032501377165317535, - -0.0674109160900116, - 0.060953445732593536, - -0.010538906790316105, - -0.012828954495489597, - 0.055500272661447525, - 0.05890392139554024, - 0.008883259259164333, - -0.010890992358326912, - -0.027336928993463516, - -0.11041491478681564, - -0.003958722576498985, - 0.002464384539052844, - 0.03246554732322693, - 0.027331676334142685, - 0.026970436796545982, - -0.02828892692923546, - 0.07926802337169647, - 0.011447388678789139, - 0.013722170144319534, - -0.01360907033085823, - -0.06630753725767136, - 0.0808674767613411, - 0.11701808869838715, - -0.006666000932455063, - 0.025465281680226326, - -0.04413112998008728, - 0.021561142057180405, - 0.06509619951248169, - -0.09490412473678589, - -0.06714627891778946, - 0.03217704966664314, - 0.01808125711977482, - 0.07384863495826721, - 0.09053315222263336, - -0.00805019773542881, - 0.019038518890738487, - 0.04889168590307236, - -0.07183147966861725, - -0.026759475469589233, - -8.155964314937592e-05, - 0.012430368922650814, - -0.02079918049275875, - 0.02140168286859989, - 0.036056291311979294, - 0.02562927082180977, - -0.0455782487988472, - 0.06624790281057358, - 0.0035619856789708138, - -0.004401146434247494, - -0.039004165679216385, - 0.038433872163295746, - 0.0660308301448822, - 0.0013722097501158714, - -0.03185052424669266, - 0.049162380397319794, - 0.09024513512849808, - 0.004282768815755844, - 0.053114861249923706, - -0.062113165855407715, - -0.0957697331905365, - -0.019128186628222466, - 0.04619210585951805, - 0.047117047011852264, - -0.035239361226558685, - -0.0407211072742939, - -0.06313902139663696, - -0.004834108054637909, - -0.008600874803960323, - 0.014729546383023262, - 0.05742064118385315, - 0.03767884150147438, - 0.0048480164259672165, - 0.07689369469881058, - -0.03033529780805111, - 0.018571069464087486, - -0.017184583470225334, - 0.026356305927038193, - 0.034995414316654205, - 0.027773484587669373, - 0.009876169264316559, - -0.08222924172878265, - 0.004199131391942501, - -0.015613555908203125, - -0.026801731437444687, - -0.0025995224714279175, - 0.010991642251610756, - -0.024151857942342758, - 0.007024191319942474, - -0.10378921031951904, - 0.03716892749071121, - -0.11630301922559738, - 0.0037630535662174225, - 0.050034526735544205, - -0.04498978704214096, - -0.02551146224141121, - 0.09027744829654694, - 0.0293334499001503, - 0.03520354628562927, - -0.02103339321911335, - -0.0888897180557251, - 0.00338873453438282, - 0.04604913294315338, - 0.06833773851394653, - -0.005775232799351215, - 0.00189307052642107, - -0.004502268508076668, - 0.04314936324954033, - 0.05591220408678055, - 0.06444937735795975, - 0.0380018949508667, - -0.03494517505168915, - -0.06984288990497589, - 0.008918458595871925, - 0.10586248338222504, - -0.007336929440498352, - -0.06716549396514893, - -0.056028276681900024, - -0.002254173159599304, - -0.03827476128935814, - 0.006087338551878929, - 0.01722545549273491, - 0.037802811712026596, - 0.053151801228523254, - -0.013767322525382042, - -0.10574370622634888, - -0.046843286603689194, - 0.04101041331887245, - -0.06096049025654793, - -0.009861629456281662, - -0.041982538998126984, - 0.026280207559466362, - 0.10085171461105347, - 0.005654484033584595, - 0.03152710199356079, - -0.02600701153278351, - -0.03461811691522598, - -0.0877743661403656, - -0.0573757141828537, - -0.032806240022182465, - 0.019656050950288773, - -0.040631845593452454, - 0.024713240563869476, - -0.06452464312314987, - 0.06095213443040848, - -0.031063474714756012, - 0.09285181760787964, - 0.013319146819412708, - -0.06253103911876678, - -0.08947643637657166, - -0.0007865540683269501, - -0.04162108525633812, - 0.05814853683114052, - 0.05279542878270149, - 0.010547339916229248, - 0.021966557949781418, - -0.08115498721599579, - 0.07450666278600693, - 0.062321167439222336, - -0.05725353956222534, - -0.06883177161216736, - -0.037378374487161636, - 0.006283266469836235, - 0.026729024946689606, - -0.01295035146176815, - 0.014990851283073425, - 0.026568707078695297, - 0.016074951738119125, - -0.013926400803029537, - 0.06668197363615036, - 0.08498382568359375, - 0.04286962375044823, - -0.07782401889562607 - ] - }, - "p245_162.wav": { - "name": "p245", - "embedding": [ - 0.04829081892967224, - 0.07129817456007004, - 0.051060669124126434, - 0.01499593909829855, - 0.006851959973573685, - -0.03260171040892601, - -0.08099651336669922, - 0.0637405589222908, - 0.042777325958013535, - 0.07052373886108398, - -0.1430099606513977, - 0.07106330990791321, - -0.08491027355194092, - -0.10734517872333527, - -0.0011229310184717178, - 0.0048606786876916885, - -0.0260935015976429, - 0.004033581353724003, - 0.0005641123279929161, - -0.030605744570493698, - 0.024690553545951843, - 0.002459196373820305, - 0.063155397772789, - -0.03677212446928024, - -0.020689982920885086, - 0.061141762882471085, - 0.01590825244784355, - 0.01885281503200531, - 0.01796097308397293, - -0.014633886516094208, - 0.0576229952275753, - -0.004206769168376923, - -0.004706941545009613, - 0.03355146571993828, - 0.044683653861284256, - 0.04711952432990074, - -0.031321462243795395, - 0.01808738335967064, - -0.011247927322983742, - 0.03334259241819382, - -0.05550412833690643, - 0.02937045320868492, - 0.01106729544699192, - -0.06507216393947601, - 0.05344980210065842, - 0.03527987003326416, - -0.01651758700609207, - -0.010242031887173653, - -0.1056196391582489, - 0.07300670444965363, - -0.00381536316126585, - 0.05724401772022247, - -0.07236778736114502, - 0.008820079267024994, - 0.06905412673950195, - -0.027067359536886215, - -0.06065972149372101, - -0.002367055043578148, - 0.0663047507405281, - 0.05490785464644432, - -0.057445064187049866, - -0.04136288911104202, - -0.015054792165756226, - -0.009747395291924477, - 0.019799938425421715, - 0.05514756962656975, - 0.09970948100090027, - 0.07663170993328094, - -0.001820526085793972, - 0.012564287520945072, - 0.04491446539759636, - 0.030097443610429764, - 0.07451489567756653, - 0.003090151585638523, - -0.025342805311083794, - -0.01995203085243702, - -0.018643762916326523, - 0.021785348653793335, - 0.029633793979883194, - -0.03783007711172104, - -0.005959200672805309, - -0.05608599632978439, - 0.030384628102183342, - -0.020527375862002373, - -0.024479135870933533, - 0.0070673758164048195, - 0.04662042483687401, - 0.0055808331817388535, - 0.05391581356525421, - 0.006396042183041573, - -0.05223555862903595, - 0.016951095312833786, - -0.04365228861570358, - -0.06470535695552826, - -0.06035321578383446, - -0.04102332144975662, - 0.05799346789717674, - 0.04061641916632652, - 0.05916895717382431, - 0.03652959316968918, - 0.08606840670108795, - 0.01245332695543766, - 0.01622013933956623, - -0.007563130930066109, - -0.07510185986757278, - 0.04551553726196289, - 0.07953262329101562, - -0.03560539335012436, - 0.01461092010140419, - -0.02374665066599846, - 0.017668411135673523, - 0.04932129383087158, - -0.03196987882256508, - 0.0005330704152584076, - -0.0102433105930686, - 0.0466730110347271, - 0.03221350535750389, - 0.06516797095537186, - -0.013123176991939545, - 0.014387490227818489, - 0.14503583312034607, - -0.07748457789421082, - -0.021284718066453934, - -0.016460951417684555, - -0.00297079561278224, - -0.045399948954582214, - 0.07853630185127258, - 0.022576481103897095, - 0.03634403645992279, - 0.02891157940030098, - 0.04597816243767738, - -6.0051679611206055e-06, - 0.007174585945904255, - -0.07001560181379318, - -0.0062933992594480515, - 0.033886175602674484, - -0.049763910472393036, - -0.0002592746168375015, - 0.08288367092609406, - 0.044630762189626694, - 0.07149235904216766, - 0.08638546615839005, - -0.03478264436125755, - -0.058708563446998596, - 0.022461488842964172, - 0.052463121712207794, - 0.013278926722705364, - -0.030438873916864395, - -0.06200844794511795, - -0.050558045506477356, - -0.009217949584126472, - 0.07866780459880829, - -0.005517421755939722, - 0.05016082525253296, - 0.006720272824168205, - 0.013659686781466007, - 0.08834490180015564, - 0.015174908563494682, - -0.03221818804740906, - -0.07967913150787354, - -0.08492235839366913, - -0.042138565331697464, - 0.011063575744628906, - -0.16297471523284912, - -0.059360262006521225, - -0.0707269161939621, - 0.04095064103603363, - -0.019250744953751564, - 0.007106492295861244, - 0.03798842430114746, - 0.0003156587481498718, - -0.0002084793522953987, - 0.03658463805913925, - 0.012920170091092587, - -0.015694666653871536, - -0.12953589856624603, - 0.031466078013181686, - -0.015922950580716133, - 0.01862953044474125, - 0.03950270265340805, - -0.03379764035344124, - 0.0347873829305172, - -0.026543226093053818, - -0.0705251470208168, - -0.04750291630625725, - 0.06966233253479004, - -0.03216658532619476, - -0.007991489954292774, - 0.028201598674058914, - 0.016452794894576073, - -0.0805661603808403, - 0.05922037363052368, - -0.001249874010682106, - 0.09122666716575623, - -0.0651148334145546, - 0.022558391094207764, - -0.008464845828711987, - 0.0015021003782749176, - 0.085782989859581, - -0.0171499066054821, - -0.07387082278728485, - -0.08045917749404907, - -0.024955278262495995, - 0.04449775815010071, - -0.016574623063206673, - -0.03539040684700012, - -0.03342164307832718, - -0.02457502856850624, - -0.01841406151652336, - -0.06822459399700165, - -0.031038597226142883, - 0.028844032436609268, - -0.012666555121541023, - -0.08779608458280563, - 0.030437305569648743, - -0.03140716254711151, - -0.009308185428380966, - 0.016618382185697556, - 0.04579534754157066, - -0.021695084869861603, - -0.05439550429582596, - -0.04313071072101593, - 0.03656603395938873, - 0.061044517904520035, - 0.048750195652246475, - -0.07004205137491226, - -0.08202021569013596, - 0.030084650963544846, - 0.010904965922236443, - 0.0544193834066391, - -0.007780302315950394, - -0.01956063136458397, - 0.038042858242988586, - -0.05090366303920746, - -0.021977724507451057, - 0.026563208550214767, - 0.046450383961200714, - -0.003090105950832367, - 0.01573701575398445, - -0.02198765240609646, - 0.08512962609529495, - 0.027058618143200874, - -7.81303970143199e-06, - -0.022902492433786392, - -0.06274542212486267, - -0.061719294637441635, - -0.059388771653175354, - -0.05725156143307686, - -0.05289582535624504, - 0.031797170639038086, - -0.05301262065768242, - 0.05503222346305847, - 0.0015455090906471014, - 0.09750083088874817, - 0.010077114216983318, - -0.01228514313697815 - ] - }, - "p245_179.wav": { - "name": "p245", - "embedding": [ - 0.030571645125746727, - 0.08619459718465805, - -0.016192864626646042, - 0.031087905168533325, - -0.057278215885162354, - 0.07416775077581406, - -0.09019750356674194, - 0.10113927721977234, - -0.060720138251781464, - 0.1361154019832611, - -0.09812057018280029, - 0.12131239473819733, - -0.04670654982328415, - -0.17017166316509247, - -0.02837412618100643, - 0.058825891464948654, - -0.034396205097436905, - 0.0024779802188277245, - -0.05535587668418884, - -0.024263184517621994, - 0.04062965139746666, - 0.02393612638115883, - 0.04757293313741684, - -0.020466435700654984, - 0.01712745800614357, - 0.07184048742055893, - -0.0002682122285477817, - 0.04832533001899719, - 0.007551028858870268, - -0.07667022198438644, - -0.058858178555965424, - 0.10712940990924835, - -0.04223278909921646, - 0.019811954349279404, - 0.05423697084188461, - 0.011132519692182541, - -0.003056335262954235, - -0.0478329062461853, - -0.0034378503914922476, - -0.011444422416388988, - -0.044155582785606384, - 0.05112019181251526, - -0.006352514028549194, - -0.023807942867279053, - 0.05234072729945183, - 0.01447363942861557, - -0.028755847364664078, - -0.027758397161960602, - -0.09399205446243286, - 0.13870251178741455, - 0.0579192154109478, - -0.013906346634030342, - -0.06775277853012085, - -0.0807543396949768, - 0.10503064841032028, - -0.01718464121222496, - -0.12325428426265717, - -0.0415889248251915, - 0.07923341542482376, - 0.1536082923412323, - -0.02759230136871338, - -0.034631647169589996, - 0.013573359698057175, - 0.09162097424268723, - 0.018155556172132492, - 0.10615106672048569, - 0.06383427232503891, - 0.09351585805416107, - -0.004068485461175442, - 0.032757192850112915, - 0.04195607453584671, - 0.08625063300132751, - 0.07285959273576736, - -0.007157584186643362, - 0.03145573288202286, - -0.0011888457229360938, - -0.02785051427781582, - 0.025799527764320374, - -0.04441903159022331, - -0.031139878556132317, - -0.01888282783329487, - -0.010782881639897823, - 0.020020633935928345, - -0.04007243737578392, - -0.018312649801373482, - 0.05557441711425781, - 0.04506079480051994, - -0.015550896525382996, - 0.052601590752601624, - 0.03852296993136406, - -0.02566887065768242, - 0.055641066282987595, - -0.07030117511749268, - -0.0899798721075058, - 0.014209027402102947, - 0.01588517427444458, - -0.0013428847305476665, - 0.061403971165418625, - 0.031709328293800354, - -0.016449660062789917, - 0.0992315411567688, - 0.04493049904704094, - 0.0154700493440032, - 0.03664861619472504, - -0.0863228440284729, - 0.11838136613368988, - 0.11464715003967285, - -0.015835151076316833, - 0.030355069786310196, - -0.037218958139419556, - 0.08494094014167786, - 0.09600099176168442, - -0.13206098973751068, - -0.07194055616855621, - -0.027682622894644737, - -0.03497975692152977, - -0.01695835217833519, - 0.08218910545110703, - -0.022721877321600914, - 0.010010723024606705, - 0.11872994154691696, - -0.1014866828918457, - -0.06436829268932343, - -0.021778110414743423, - 0.018398024141788483, - -0.07755455374717712, - 0.04881449043750763, - 0.036511510610580444, - 0.017951201647520065, - 0.004995942115783691, - 0.08541607856750488, - -0.029691128060221672, - 0.0033705513924360275, - 0.036358386278152466, - -0.07027767598628998, - -0.008424963802099228, - -0.05272942781448364, - -0.012739395722746849, - 0.08978040516376495, - 0.05215379595756531, - 0.05632282793521881, - -0.018879681825637817, - -0.016407718881964684, - -0.10121433436870575, - -0.0013988418504595757, - 0.053860437124967575, - 0.044518791139125824, - -0.006905117072165012, - -0.005888267885893583, - -0.030689379200339317, - -0.08670379966497421, - 0.051256321370601654, - -0.025720639154314995, - 0.0827542170882225, - -0.0174130667001009, - 0.0017660766607150435, - 0.10364135354757309, - 0.02007053606212139, - -0.023596424609422684, - -0.08628662675619125, - -0.03753092885017395, - 0.015446661040186882, - 0.03851909190416336, - -0.09172306954860687, - -0.08230212330818176, - -0.006774085573852062, - 0.02032453566789627, - -0.021618491038680077, - 0.04923762381076813, - 0.054791249334812164, - 0.018143504858016968, - 0.027777664363384247, - -0.05341195687651634, - -0.003582623554393649, - -0.10147850960493088, - -0.058054789900779724, - -0.0103674391284585, - -0.06462931632995605, - -0.0018470166251063347, - 0.0738021582365036, - 0.0049993619322776794, - 0.012638866901397705, - -0.01818142831325531, - -0.06478318572044373, - -0.09603165090084076, - 0.06740697473287582, - 0.04037811607122421, - 0.02259417250752449, - 0.05606265366077423, - 0.04504580423235893, - -0.048457350581884384, - 0.07444643974304199, - 0.06457282602787018, - 0.10059687495231628, - -0.024822916835546494, - 0.02699822001159191, - -0.07105910778045654, - 0.07941639423370361, - 0.10358962416648865, - -0.0788687989115715, - -0.10156002640724182, - -0.04550536721944809, - -0.059704940766096115, - 0.07852086424827576, - -0.04858074709773064, - -0.034332044422626495, - 0.040348827838897705, - -0.022306490689516068, - -0.09576012194156647, - -0.08172659575939178, - 0.10498189181089401, - -0.044428423047065735, - -0.023250237107276917, - -0.06271548569202423, - 0.04286088049411774, - 0.05300229415297508, - 0.030528580769896507, - -0.03509475290775299, - 0.037150751799345016, - 0.0760376825928688, - -0.06404687464237213, - -0.0011810499709099531, - 0.04259870573878288, - 0.013071316294372082, - -0.061304450035095215, - -0.005143480841070414, - -0.08300714194774628, - 0.046151161193847656, - -0.05058329552412033, - 0.15314170718193054, - -0.02044074609875679, - -0.04971642792224884, - -0.05920543521642685, - 0.06445460766553879, - -0.026811551302671432, - 0.029481317847967148, - 0.05114942789077759, - 0.06528611481189728, - 0.018429845571517944, - -0.08800383657217026, - 0.12919296324253082, - 0.016551926732063293, - -0.02735801599919796, - -0.05854961276054382, - -0.0559699647128582, - -0.05918307229876518, - 0.0008963110740296543, - -0.009198951534926891, - -0.09892384707927704, - 0.004933548625558615, - 0.009357663802802563, - 0.0010615966748446226, - 0.04635327309370041, - 0.13274195790290833, - 0.0661928653717041, - -0.07634106278419495 - ] - }, - "p245_151.wav": { - "name": "p245", - "embedding": [ - 0.05338154733181, - 0.07692953944206238, - -0.014915263280272484, - 0.017773957923054695, - -0.06250782310962677, - 0.07432658970355988, - -0.1349685788154602, - 0.126249760389328, - -0.04604538530111313, - 0.15463483333587646, - -0.053544916212558746, - 0.10725729167461395, - -0.030185209587216377, - -0.18928208947181702, - -0.010301225818693638, - 0.06485643982887268, - -0.057404763996601105, - -0.03540218621492386, - -0.07023858278989792, - -0.027816802263259888, - 0.025902029126882553, - 0.047697313129901886, - 0.0183144211769104, - -0.00888589583337307, - 0.032714106142520905, - 0.07206510752439499, - -0.019219059497117996, - 0.02560625970363617, - -0.021043477579951286, - -0.0932825356721878, - -0.03926796466112137, - 0.0931343212723732, - -0.055780746042728424, - 0.009114207699894905, - 0.03935887664556503, - -0.010610794648528099, - -0.002836352214217186, - -0.04435507953166962, - -0.02503439411520958, - 0.019594432786107063, - -0.040795788168907166, - 0.07587078213691711, - 0.016821514815092087, - -0.0006884306785650551, - 0.0466751754283905, - 0.014027215540409088, - -0.02387208491563797, - -0.05771256238222122, - -0.10067372769117355, - 0.17035824060440063, - 0.06818369030952454, - -0.0034879762679338455, - -0.060495488345623016, - -0.07923023402690887, - 0.09581132233142853, - -0.03183387219905853, - -0.134304940700531, - -0.05645330250263214, - 0.07098782062530518, - 0.1509125530719757, - -0.04128161072731018, - -0.04748644679784775, - 0.027616092935204506, - 0.09805630147457123, - 0.049848735332489014, - 0.09751050174236298, - 0.06945262849330902, - 0.0908101499080658, - -0.01977325975894928, - 0.006688814610242844, - 0.061421941965818405, - 0.05686631053686142, - 0.08493521809577942, - 0.0004338165745139122, - 0.042795952409505844, - -0.0010274001397192478, - -0.011535627767443657, - -0.01253002043813467, - -0.015385286882519722, - -0.0053469715639948845, - 0.0023587404284626245, - 0.015199463814496994, - 0.021320056170225143, - 0.008909085765480995, - -0.022398579865694046, - 0.04738030955195427, - 0.04108746349811554, - -0.012559186667203903, - 0.06764794886112213, - 0.030138878151774406, - 0.016081376001238823, - 0.07339587062597275, - -0.0819292888045311, - -0.06931192427873611, - 0.04381158575415611, - 0.017003946006298065, - 0.011945467442274094, - 0.04491691291332245, - 0.025100961327552795, - -0.01912400871515274, - 0.11456035822629929, - 0.038164470344781876, - 0.005056596361100674, - 0.03075678087770939, - -0.10413150489330292, - 0.12567977607250214, - 0.08012968301773071, - -0.030693447217345238, - 0.050216399133205414, - -0.03954636678099632, - 0.07639139890670776, - 0.06447548419237137, - -0.13578617572784424, - -0.07799884676933289, - 0.020948413759469986, - -0.004169312305748463, - -0.020297545939683914, - 0.12309718877077103, - -0.0006718793883919716, - 0.029021989554166794, - 0.12414532899856567, - -0.11150306463241577, - -0.03991929814219475, - 0.006012200377881527, - 0.04379991441965103, - -0.10680531710386276, - 0.050182685256004333, - 0.05441530421376228, - -0.01033379603177309, - 0.03289240226149559, - 0.09933243691921234, - -0.016157232224941254, - 0.007249072194099426, - -0.004718083888292313, - -0.03527181223034859, - 0.0015940385637804866, - -0.02847292274236679, - -0.01587466150522232, - 0.058956194669008255, - 0.02762434259057045, - 0.04672842472791672, - -0.020860277116298676, - -0.04069723188877106, - -0.13734041154384613, - 0.02481251023709774, - 0.02375340461730957, - 0.0650215893983841, - -0.01844874769449234, - 0.012373916804790497, - -0.03875350207090378, - -0.07846923172473907, - 0.02957528829574585, - -0.015639083459973335, - 0.07587534934282303, - -0.018191874027252197, - -0.0012868910562247038, - 0.10822582244873047, - 0.041814275085926056, - 0.004464832134544849, - -0.05965173989534378, - -0.04472074657678604, - 0.006731791887432337, - 0.05795472860336304, - -0.0859435573220253, - -0.0651235356926918, - -0.00693739578127861, - 0.039246946573257446, - -0.0027100276201963425, - 0.06693608313798904, - 0.06515911221504211, - 0.02362545020878315, - 0.022761203348636627, - -0.05538514256477356, - 0.0250663124024868, - -0.08307922631502151, - -0.08149533718824387, - -0.0006556776352226734, - -0.039784662425518036, - -0.02876432053744793, - 0.08780990540981293, - 0.002508232370018959, - 0.030806537717580795, - -0.0612480491399765, - -0.07779560983181, - -0.08647386729717255, - 0.0672992467880249, - 0.06014605611562729, - -0.01298338733613491, - 0.029198117554187775, - 0.049173541367053986, - -0.03662455826997757, - 0.059224989265203476, - 0.06037263572216034, - 0.13589826226234436, - -0.023976674303412437, - 0.04590022563934326, - -0.062300749123096466, - 0.09153693914413452, - 0.07727071642875671, - -0.06391610205173492, - -0.08505367487668991, - -0.020878100767731667, - -0.0698758065700531, - 0.053322214633226395, - -0.032328225672245026, - 0.0019058722537010908, - 0.042897243052721024, - 0.0021038458216935396, - -0.09081218391656876, - -0.08085671067237854, - 0.08750441670417786, - -0.04706183448433876, - -0.01079383585602045, - -0.07860804349184036, - 0.05731835216283798, - 0.07274751365184784, - 0.05638352781534195, - -0.034406356513500214, - -0.003083118936046958, - 0.047633200883865356, - -0.03546527400612831, - 0.025678370147943497, - 0.06251882761716843, - 0.030412035062909126, - -0.08691278100013733, - -0.013631895184516907, - -0.08894501626491547, - 0.05345285311341286, - -0.03952764719724655, - 0.1526717245578766, - -0.010541461408138275, - -0.03926369547843933, - -0.06898391991853714, - 0.04631609842181206, - -0.026039013639092445, - 0.05616597831249237, - 0.03304118663072586, - 0.070219486951828, - 0.08123277127742767, - -0.03954586759209633, - 0.09585540741682053, - 0.045004505664110184, - -0.03133155405521393, - -0.04682401195168495, - -0.05581985414028168, - -0.05603248253464699, - 0.024348953738808632, - -0.006897169630974531, - -0.1039557158946991, - 0.0009472938254475594, - 0.026775918900966644, - 0.0035683715250343084, - 0.05396405979990959, - 0.13006016612052917, - 0.04612473398447037, - -0.12077564001083374 - ] - }, - "p245_047.wav": { - "name": "p245", - "embedding": [ - 0.06592823565006256, - 0.08634445816278458, - -0.05203823000192642, - 0.022983569651842117, - -0.00553181953728199, - 0.04818369075655937, - -0.1382196545600891, - 0.100897878408432, - -0.02517542988061905, - 0.12603816390037537, - -0.07611290365457535, - 0.11310906708240509, - 0.002127218060195446, - -0.12196719646453857, - -0.04750456660985947, - 0.0340161994099617, - -0.022115785628557205, - -0.005590872839093208, - -0.021228544414043427, - -0.005754104815423489, - 0.04956686869263649, - 0.031655631959438324, - 0.01635877788066864, - -0.02284124679863453, - 0.012919880449771881, - 0.05458870902657509, - 0.030053364112973213, - 0.035363420844078064, - 0.010314006358385086, - 0.004139812663197517, - 0.018835382536053658, - 0.10752004384994507, - -0.024731086567044258, - 0.021443117409944534, - 0.0341707319021225, - 0.011841820552945137, - -0.025024110451340675, - -0.06894447654485703, - 0.007605442777276039, - 0.006737133488059044, - -0.02988891862332821, - 0.07450156658887863, - 0.04596211761236191, - -0.012590151280164719, - 0.01613054983317852, - -0.0033343154937028885, - -0.01497122272849083, - -0.05013280361890793, - -0.09199265390634537, - 0.16674596071243286, - 0.05915763974189758, - 0.030991625040769577, - -0.09406575560569763, - -0.009818894788622856, - 0.09341020882129669, - 0.020607685670256615, - -0.041559766978025436, - -0.05375760793685913, - 0.049641311168670654, - 0.15271402895450592, - -0.017432039603590965, - -0.043175965547561646, - 0.03913137689232826, - 0.12286661565303802, - 0.03423837572336197, - 0.05694129690527916, - 0.10740529000759125, - 0.09109769761562347, - 0.0035390518605709076, - 0.038384366780519485, - 0.033550769090652466, - 0.07336247712373734, - 0.03583502024412155, - -0.030067026615142822, - 0.029840033501386642, - -0.024235369637608528, - -0.019593534991145134, - -0.0034263969864696264, - -0.02303505316376686, - -0.06312770396471024, - -0.020670877769589424, - 0.002357965800911188, - 0.01862325705587864, - 0.06174740195274353, - -0.041777193546295166, - 0.028745215386152267, - 0.04310256987810135, - -0.07678806781768799, - 0.03418527916073799, - 0.050089623779058456, - 0.01349277887493372, - 0.002735711634159088, - -0.05580076947808266, - -0.11501264572143555, - 0.033295489847660065, - -0.006879905238747597, - 0.02203415147960186, - 0.06237472593784332, - 0.05400538444519043, - 0.011446223594248295, - 0.07700318843126297, - 0.021614382043480873, - -0.022246181964874268, - -0.024690061807632446, - -0.050893597304821014, - 0.116461381316185, - 0.11012955009937286, - -0.02678968757390976, - 0.025255849584937096, - -0.059779297560453415, - 0.01227518729865551, - 0.06082569435238838, - -0.11335492134094238, - -0.06902417540550232, - 0.03451678156852722, - 0.02915201708674431, - 0.01753680780529976, - 0.10128960013389587, - 0.006060037761926651, - 0.01746409572660923, - 0.065096415579319, - -0.056160781532526016, - -0.0627235397696495, - -0.07041087746620178, - 0.04766854643821716, - -0.06201068311929703, - 0.05851907283067703, - 0.045629046857357025, - 0.011815855279564857, - -0.05049819126725197, - 0.07386770844459534, - -0.0033091730438172817, - -0.00961120706051588, - -0.019955364987254143, - 0.028728440403938293, - 0.06521470099687576, - -0.03563466668128967, - 0.007318600080907345, - -0.003750898875296116, - 0.026417143642902374, - 0.03748757019639015, - 0.026447271928191185, - -0.01050395518541336, - -0.08193591237068176, - 0.009270614013075829, - 0.06918269395828247, - 0.056311193853616714, - -0.03413223475217819, - -0.05644124746322632, - -0.02421751618385315, - -0.04152216762304306, - -0.0011794923339039087, - -0.02481546625494957, - 0.06741110980510712, - 0.024912703782320023, - 0.023557016626000404, - 0.10761044919490814, - -0.0313621424138546, - 0.014151579700410366, - -0.01747249811887741, - 0.03744783252477646, - 0.03733870014548302, - 0.027481097728013992, - -0.06134762614965439, - -0.07908773422241211, - -0.010789117775857449, - 0.009928219020366669, - -0.019895588979125023, - 0.012810485437512398, - 0.017583327367901802, - -0.006856146268546581, - 0.024190029129385948, - -0.07462447881698608, - -0.010698225349187851, - -0.1276930570602417, - -0.028874143958091736, - -0.01974429003894329, - -0.04464239254593849, - -0.00983351655304432, - 0.06675009429454803, - 0.037056177854537964, - 0.04110782593488693, - -0.013327017426490784, - -0.0669906735420227, - -0.04840049147605896, - 0.06413404643535614, - 0.09464256465435028, - -0.01924043893814087, - 0.0026499461382627487, - 0.027335720136761665, - 0.03339831903576851, - 0.012847086414694786, - 0.062497250735759735, - 0.06524231284856796, - -0.03510156273841858, - -0.05481558293104172, - -0.060433171689510345, - 0.0923689529299736, - 0.08497798442840576, - -0.10058562457561493, - -0.06161234527826309, - -0.03219972923398018, - -0.06334944814443588, - -0.0018226122483611107, - -0.03567150980234146, - 0.01452193409204483, - 0.044877488166093826, - -0.038239486515522, - -0.12325076758861542, - -0.10446220636367798, - 0.0528663769364357, - -0.06480579078197479, - 0.005558964796364307, - -0.0653512179851532, - 0.044351108372211456, - 0.08800370991230011, - 0.015784073621034622, - -0.025861406698822975, - -0.00241960515268147, - -0.010029720142483711, - -0.06049330532550812, - -0.01963091269135475, - -0.012720050290226936, - 0.026492467150092125, - -0.1071920320391655, - 0.0017960708355531096, - -0.05885661393404007, - 0.07329477369785309, - -0.07474247366189957, - 0.11086786538362503, - -0.0019602221436798573, - -0.06511756032705307, - -0.09652253985404968, - 0.018370740115642548, - -0.01414383202791214, - 0.05176272243261337, - 0.0293699000030756, - 0.032051242887973785, - 0.0016629381570965052, - -0.10479559749364853, - 0.09490065276622772, - 0.06754730641841888, - -0.00018845684826374054, - -0.10491541028022766, - -0.031102946028113365, - -0.009768453426659107, - 0.0564497634768486, - 0.016670752316713333, - -0.014845199882984161, - -0.015359252691268921, - 0.031931206583976746, - -0.019525855779647827, - 0.07610532641410828, - 0.09976024925708771, - 0.04823916405439377, - -0.09098787605762482 - ] - }, - "p245_387.wav": { - "name": "p245", - "embedding": [ - 0.05354906618595123, - 0.09765110909938812, - -0.05324000120162964, - 0.01336327288299799, - 0.0005212724208831787, - 0.04374198615550995, - -0.17443504929542542, - 0.11053217947483063, - -0.03025122359395027, - 0.14385399222373962, - -0.03728903830051422, - 0.09514616429805756, - -0.04378384351730347, - -0.13015100359916687, - -0.020348254591226578, - 0.0590820387005806, - -0.020964570343494415, - -0.008310393430292606, - -0.013095324859023094, - -0.005703997798264027, - 0.0466109998524189, - 0.02175387553870678, - 0.01760837994515896, - -0.018259473145008087, - -0.02049732580780983, - 0.06909360736608505, - -0.016545677557587624, - 0.01709672249853611, - -0.009089938364923, - 0.0025545363314449787, - 0.004110085777938366, - 0.0888431966304779, - 0.0026269257068634033, - 0.006760727148503065, - 0.030522389337420464, - 0.03299310430884361, - -0.03321494162082672, - -0.05414698272943497, - 0.024370180442929268, - -0.0019585900008678436, - -0.037366438657045364, - 0.04417842999100685, - 0.0027837734669446945, - -0.025961261242628098, - 0.05526050552725792, - -0.06428706645965576, - -0.02854008600115776, - -0.013471122831106186, - -0.06524255126714706, - 0.13522595167160034, - 0.10719707608222961, - 0.027081046253442764, - -0.06699232757091522, - 0.0013939402997493744, - 0.09225818514823914, - 0.013461964204907417, - -0.08650701493024826, - -0.052536047995090485, - 0.038395099341869354, - 0.15935875475406647, - -0.023923469707369804, - -0.02494906261563301, - 0.03567003458738327, - 0.11294953525066376, - 0.020205214619636536, - 0.07185454666614532, - 0.09708480536937714, - 0.07319282740354538, - 0.00600969884544611, - -0.021706517785787582, - 0.009677791967988014, - 0.05809071660041809, - 0.06017580255866051, - -0.007883155718445778, - 0.03415533900260925, - -0.03268399089574814, - -0.02937799133360386, - 2.344651147723198e-05, - -0.02055910788476467, - -0.08310361951589584, - -0.03602138161659241, - -0.009546364657580853, - -0.019303947687149048, - 0.055985722690820694, - -0.016760921105742455, - -0.008992908522486687, - 0.0577261745929718, - -0.0758432000875473, - 0.03576980531215668, - 0.04526446759700775, - 0.021973520517349243, - 0.026411227881908417, - -0.05568648874759674, - -0.09455728530883789, - 0.050509948283433914, - 0.002184647135436535, - 0.013582345098257065, - 0.04680690914392471, - 0.0325813964009285, - 0.016247186809778214, - 0.07681549340486526, - 0.013082959689199924, - -0.009824356995522976, - -0.0007351897656917572, - -0.06217750906944275, - 0.10632684826850891, - 0.10209167748689651, - -0.04193472862243652, - 0.040388159453868866, - -0.04647144675254822, - -0.0163577813655138, - 0.04564157873392105, - -0.08820956200361252, - -0.04130534455180168, - 0.056680403649806976, - 0.053834687918424606, - 0.02340078353881836, - 0.10123381018638611, - 0.05094054341316223, - 0.02665385603904724, - 0.0934397503733635, - -0.06041048839688301, - -0.08739293366670609, - -0.0709250420331955, - 0.07208696007728577, - -0.05781517177820206, - 0.07073374092578888, - 0.0641392394900322, - 0.02788388356566429, - -0.011555745266377926, - 0.05087069422006607, - 0.01812530681490898, - 0.006914706900715828, - -0.03490523621439934, - -0.024205069988965988, - 0.01688438653945923, - -0.05153709277510643, - 0.017614539712667465, - 0.005037687718868256, - 0.004737320356070995, - 0.04738428071141243, - 0.0252805408090353, - 0.009697499684989452, - -0.09615115076303482, - -0.02097797393798828, - 0.07822176069021225, - 0.045730650424957275, - -0.029787501320242882, - -0.04409850388765335, - -0.011932299472391605, - -0.043656785041093826, - -0.01956712268292904, - -0.07777930051088333, - 0.08318998664617538, - -0.004047340247780085, - 0.021316220983862877, - 0.08009546250104904, - -0.03045850247144699, - 0.019091876223683357, - -0.02928493730723858, - 0.021585237234830856, - 0.012359283864498138, - 0.01861005462706089, - -0.09552836418151855, - -0.08658338338136673, - -0.023134730756282806, - 0.032868642359972, - 0.004126129671931267, - 0.042933389544487, - 0.04229239374399185, - -0.00515346135944128, - 0.006446721963584423, - -0.03709350526332855, - 0.013891741633415222, - -0.09959129989147186, - -0.05918333679437637, - -0.0018269403371959925, - -0.035192832350730896, - 0.0006221001967787743, - 0.07590551674365997, - 0.026714149862527847, - 0.03314167261123657, - -0.04623878002166748, - -0.04831302911043167, - -0.07755360007286072, - 0.05093060061335564, - 0.07633493840694427, - -0.02667674794793129, - 0.018942879512906075, - 0.03513457626104355, - 0.004706918261945248, - 0.01301814615726471, - 0.057114146649837494, - 0.09225666522979736, - -0.02478555589914322, - -0.01479764562100172, - -0.10062605142593384, - 0.03879788890480995, - 0.13930216431617737, - -0.08616366982460022, - -0.08117936551570892, - -0.04904048517346382, - -0.07912970334291458, - -0.0022717141546308994, - -0.07979755103588104, - 0.010628344491124153, - 0.040879394859075546, - -0.04890758544206619, - -0.11566022038459778, - -0.125263050198555, - 0.06886452436447144, - -0.045262426137924194, - 0.010862018913030624, - -0.057173795998096466, - 0.0657719150185585, - 0.0443018302321434, - 0.012802252545952797, - -0.07093697786331177, - 0.00039125699549913406, - 0.021834442391991615, - -0.027714937925338745, - 0.012332821264863014, - 0.008706901222467422, - 0.050707317888736725, - -0.12938737869262695, - 0.013751399703323841, - -0.06924933940172195, - 0.07748182117938995, - -0.0754193365573883, - 0.11137852072715759, - 0.022869590669870377, - -0.028854383155703545, - -0.09795855730772018, - 0.03347766026854515, - 0.016184503212571144, - 0.041924718767404556, - -0.004175333306193352, - 0.053666599094867706, - 0.017667608335614204, - -0.08689325302839279, - 0.07405539602041245, - 0.04489438980817795, - 0.01188390702009201, - -0.099245086312294, - -0.02994922548532486, - -0.036934610456228256, - 0.05011643469333649, - -0.020317981019616127, - -0.036633025854825974, - -0.03258639946579933, - -0.0011051604524254799, - 0.02551230788230896, - 0.05911894142627716, - 0.08626800775527954, - 0.0274351816624403, - -0.10613103955984116 - ] - }, - "p245_370.wav": { - "name": "p245", - "embedding": [ - 0.06358363479375839, - 0.052086930721998215, - -0.033375632017850876, - 0.024352174252271652, - -0.029548410326242447, - 0.04322075471282005, - -0.12358683347702026, - 0.0980907678604126, - -0.028239868581295013, - 0.09883289039134979, - -0.06776271760463715, - 0.10071702301502228, - -0.003912396728992462, - -0.13626070320606232, - -0.036885831505060196, - 0.049305807799100876, - -0.029518790543079376, - -0.02014755643904209, - -0.04283095523715019, - -0.0034735207445919514, - 0.034562982618808746, - 0.04898704215884209, - 0.02501325123012066, - -0.016140256077051163, - 0.003224332584068179, - 0.050173815339803696, - 0.004041686188429594, - 0.025037167593836784, - 0.010121937841176987, - -0.0007708693738095462, - -0.00936773233115673, - 0.10003810375928879, - -0.020182596519589424, - 0.008550230413675308, - 0.04188136011362076, - 0.02348760887980461, - -0.005613319575786591, - -0.0899352952837944, - -0.009353580884635448, - -0.0033507130574434996, - -0.05088331922888756, - 0.06189851090312004, - 0.0455242395401001, - -0.03018762730062008, - 0.026718024164438248, - -0.005332240369170904, - -0.022811628878116608, - -0.04764222726225853, - -0.10759177058935165, - 0.17088580131530762, - 0.043301060795784, - 0.030866894870996475, - -0.08962439745664597, - -0.02926292084157467, - 0.07840068638324738, - 0.007265242747962475, - -0.06605461984872818, - -0.05507994815707207, - 0.04273151978850365, - 0.1474609375, - 0.0053265998139977455, - -0.0353923998773098, - 0.03343440592288971, - 0.11094405502080917, - 0.038835376501083374, - 0.051008909940719604, - 0.10195668786764145, - 0.10674421489238739, - -0.0032077631913125515, - 0.03315971419215202, - 0.05357072502374649, - 0.06047172471880913, - 0.03474898263812065, - -0.012428490445017815, - 0.026341404765844345, - -0.014956079423427582, - -0.037227459251880646, - 0.015154647640883923, - -0.030725430697202682, - -0.05124049633741379, - -0.004478194285184145, - -0.0011889568995684385, - 0.01397707499563694, - 0.05128103122115135, - -0.04815045744180679, - 0.03926636651158333, - 0.046017538756132126, - -0.035012852400541306, - 0.057239383459091187, - 0.05723331496119499, - 0.011852627620100975, - 0.020283186808228493, - -0.05228623002767563, - -0.10401515662670135, - 0.011727344244718552, - 0.00226261536590755, - 0.0369267612695694, - 0.04888961836695671, - 0.03214789554476738, - -0.017729442566633224, - 0.08660130947828293, - 0.010889412835240364, - -0.0039831423200666904, - 0.0024034357629716396, - -0.07095792889595032, - 0.11455190181732178, - 0.10765324532985687, - -0.01739230751991272, - 0.011458965949714184, - -0.05707177519798279, - 0.03527267277240753, - 0.07158884406089783, - -0.09827883541584015, - -0.05695202574133873, - 0.05055902525782585, - 0.01594480313360691, - 0.025098759680986404, - 0.11537399142980576, - 0.024101069197058678, - 0.027589883655309677, - 0.08033628761768341, - -0.09245534241199493, - -0.05840960144996643, - -0.01812942698597908, - 0.02659742906689644, - -0.04826899990439415, - 0.04274073988199234, - 0.047342848032712936, - 0.009312302805483341, - -0.03238561376929283, - 0.06430177390575409, - -0.004671956412494183, - 0.013287797570228577, - -0.025483980774879456, - -0.003528903005644679, - 0.06853683292865753, - -0.018641289323568344, - -0.020502910017967224, - 0.04244101047515869, - 0.05076661705970764, - 0.028665540739893913, - 0.01829468458890915, - -0.03106623888015747, - -0.11081772297620773, - -0.0005156360566616058, - 0.07608922570943832, - 0.06021679937839508, - -0.030876431614160538, - -0.045001864433288574, - -0.046545885503292084, - -0.03892975673079491, - 0.014904765412211418, - -0.0188447292894125, - 0.05615964159369469, - 0.0101771280169487, - -0.0049799103289842606, - 0.09185302257537842, - -0.028422880917787552, - 0.016626134514808655, - -0.026544060558080673, - -0.0035445517860352993, - 0.03769306093454361, - 0.03424353152513504, - -0.049838386476039886, - -0.07820651680231094, - -0.0031218070071190596, - 0.00999393966048956, - -0.02342018485069275, - 0.007535461336374283, - 0.037368044257164, - -0.00901389867067337, - 0.01478247344493866, - -0.08844810724258423, - 0.018496345728635788, - -0.12130551040172577, - -0.028652943670749664, - 0.01603725180029869, - -0.0366351418197155, - 0.010690420866012573, - 0.08611470460891724, - 0.018213268369436264, - 0.032499413937330246, - -0.02826966904103756, - -0.08564408868551254, - -0.04284198582172394, - 0.06024631857872009, - 0.07628051936626434, - -0.011440441012382507, - 0.02643408440053463, - 0.01984279789030552, - 0.01848333515226841, - 0.013331098482012749, - 0.039503421634435654, - 0.08019526302814484, - -0.04073656350374222, - -0.04949706420302391, - -0.05718610808253288, - 0.10537546873092651, - 0.0680176317691803, - -0.07953892648220062, - -0.06308607757091522, - -0.016499940305948257, - -0.04990826174616814, - 0.0013425549259409308, - -0.033544380217790604, - 0.006573493592441082, - 0.04878033325076103, - -0.027558881789445877, - -0.1395055055618286, - -0.08631736040115356, - 0.054967280477285385, - -0.06340521574020386, - -0.00035998784005641937, - -0.07162298262119293, - 0.030102554708719254, - 0.07785527408123016, - 0.014623328112065792, - -0.03358393907546997, - -0.008013874292373657, - -0.0011572515359148383, - -0.072145015001297, - -0.026260074228048325, - -0.005862375255674124, - 0.03931247442960739, - -0.08920542895793915, - -0.0023228744976222515, - -0.061324357986450195, - 0.06155848503112793, - -0.06112359091639519, - 0.12354496121406555, - 0.007984168827533722, - -0.05936148017644882, - -0.08903499692678452, - 0.018638623878359795, - -0.01284672599285841, - 0.05320116877555847, - 0.04392097517848015, - 0.035797856748104095, - 0.010480914264917374, - -0.09665390104055405, - 0.09956544637680054, - 0.06119024008512497, - -0.021366572007536888, - -0.07915973663330078, - -0.02441607415676117, - -0.017493724822998047, - 0.04341648146510124, - -0.0002006373106269166, - -0.023859083652496338, - 0.009792476892471313, - 0.02212761901319027, - -0.015774572268128395, - 0.058409400284290314, - 0.10812409967184067, - 0.05167866498231888, - -0.09207665175199509 - ] - }, - "p245_094.wav": { - "name": "p245", - "embedding": [ - 0.036822110414505005, - 0.07242009043693542, - -0.03309670090675354, - -0.003048468381166458, - -0.04386954382061958, - -0.0069147199392318726, - -0.12519848346710205, - 0.09353595972061157, - 0.0010776873677968979, - 0.1182837188243866, - -0.04163239896297455, - 0.1122724711894989, - -0.042727746069431305, - -0.10052508860826492, - 0.0033552562817931175, - 0.03179413080215454, - -0.04065268486738205, - -0.018443435430526733, - 0.013175498694181442, - -0.0526496022939682, - 0.028364267200231552, - 0.025354256853461266, - 0.048551734536886215, - -0.048213206231594086, - 0.015067324042320251, - 0.08254222571849823, - 0.007271159440279007, - -0.009745016694068909, - -0.006072564981877804, - -0.05856800079345703, - 0.025633469223976135, - 0.03369980677962303, - -0.020547989755868912, - 0.028014807030558586, - 0.021404704079031944, - 0.007647130638360977, - -0.018102232366800308, - -0.02085983008146286, - 0.020786212757229805, - 0.03888123482465744, - -0.041176121681928635, - 0.07970619201660156, - 0.025005556643009186, - -0.043162617832422256, - 0.04116996377706528, - -0.052835602313280106, - -0.02516220323741436, - 0.02510622888803482, - -0.06655316054821014, - 0.13633355498313904, - 0.04500214383006096, - 0.047181203961372375, - -0.077740877866745, - 0.004249364137649536, - 0.06375887989997864, - 0.006304305978119373, - -0.12372950464487076, - -0.02603471837937832, - 0.035960450768470764, - 0.09387969970703125, - -0.008010385558009148, - -0.04498652368783951, - 0.02632390335202217, - 0.07419561594724655, - 0.010307151824235916, - 0.02524694614112377, - 0.11624124646186829, - 0.09580099582672119, - 0.004578115418553352, - 0.0006483753677457571, - 0.026631953194737434, - 0.08535744249820709, - 0.02605813927948475, - 0.011120393872261047, - 0.009190461598336697, - -0.06851828843355179, - -0.003289947286248207, - -0.045305199921131134, - 0.003732684999704361, - -0.07966253161430359, - -0.08729877322912216, - -0.017239820212125778, - 0.011701574549078941, - 0.03995276987552643, - 0.016065631061792374, - 0.0032900068908929825, - 0.0605255551636219, - -0.05310510843992233, - 0.04639972001314163, - 0.04993167147040367, - -0.02462589181959629, - -0.006307780742645264, - -0.057300861924886703, - -0.04256671667098999, - -0.01977190002799034, - -0.002005410846322775, - 0.08204307407140732, - 0.05164267122745514, - 0.043841101229190826, - 0.06345724314451218, - 0.07971853762865067, - 0.03579944744706154, - -0.0014951155753806233, - -0.06037520244717598, - -0.06967750936746597, - 0.09940171241760254, - 0.10683947801589966, - -0.054134123027324677, - 0.044979795813560486, - -0.03446132689714432, - -0.004506383091211319, - -0.014328483492136002, - -0.05021153390407562, - -0.03431627154350281, - -0.007207631133496761, - 0.03747543692588806, - 0.030941026285290718, - 0.10742281377315521, - 0.03565647080540657, - 0.046510279178619385, - 0.09481403231620789, - -0.0695134848356247, - -0.06875143945217133, - -0.06445220857858658, - 0.05341656506061554, - -0.06355087459087372, - 0.08065932244062424, - 0.07191523164510727, - 0.022466683760285378, - 0.03860599920153618, - 0.043286219239234924, - 0.04631999135017395, - 0.04550920054316521, - -0.04700487107038498, - -0.009830931201577187, - 0.01268603652715683, - -0.00519970990717411, - 0.017201753333210945, - 0.08121289312839508, - 0.0255601704120636, - 0.09990699589252472, - 0.037457071244716644, - -0.004490953870117664, - -0.08814029395580292, - 0.014860142022371292, - 0.04880005866289139, - 0.015370822511613369, - -0.0703241229057312, - -0.05383877083659172, - 0.00047181732952594757, - -0.0644407570362091, - -0.02265036478638649, - -0.007319060154259205, - 0.07243052124977112, - -0.001426486298441887, - -0.00921764224767685, - 0.10356497764587402, - 0.02925504744052887, - -0.022865386679768562, - -0.03902352601289749, - -0.030284838750958443, - -0.011967724189162254, - 0.03957284241914749, - -0.15744337439537048, - -0.07778098434209824, - -0.0451216958463192, - 0.02714158594608307, - -0.0036962516605854034, - 0.0470903106033802, - 0.08343033492565155, - -0.00291498564183712, - 0.007713680155575275, - 0.009778233245015144, - 0.017260070890188217, - -0.0405857115983963, - -0.08749169111251831, - -0.0031842044554650784, - -0.05087461695075035, - -0.03871949762105942, - 0.10236622393131256, - -0.0058644115924835205, - 0.07155845314264297, - -0.03593955561518669, - -0.05258514732122421, - -0.051043830811977386, - 0.05202056095004082, - 0.00041935592889785767, - -0.06088961660861969, - 0.006526827812194824, - 0.0462937131524086, - -0.030801162123680115, - -0.004340748302638531, - 0.029814936220645905, - 0.08274928480386734, - -0.10477759689092636, - -0.005980929359793663, - -0.0748855471611023, - 0.05844786390662193, - 0.10525840520858765, - -0.05913669615983963, - -0.04547093063592911, - -0.09805968403816223, - -0.05136168375611305, - 0.011522175744175911, - -0.04839431867003441, - -0.012120232917368412, - 0.0010702842846512794, - -0.04265597090125084, - -0.08253851532936096, - -0.11632935702800751, - 0.037482257932424545, - -0.02459690347313881, - 0.016678372398018837, - -0.06416452676057816, - 0.04302721098065376, - 0.031156009063124657, - 0.02446451038122177, - -0.03664455562829971, - 0.048583198338747025, - -0.007140323519706726, - -0.02506367489695549, - 0.029407629743218422, - 0.04427163675427437, - 0.0771368145942688, - -0.008016351610422134, - -0.06885376572608948, - -0.07182422280311584, - 0.029722614213824272, - -0.0405505932867527, - 0.09799253940582275, - 0.011097833514213562, - -0.048780474811792374, - -0.03552151098847389, - -0.025461331009864807, - -0.02536981739103794, - 0.03774099051952362, - 0.05317344516515732, - 0.054422132670879364, - 0.027769843116402626, - -0.047993600368499756, - 0.07540889084339142, - 0.06735294312238693, - 0.005908850580453873, - -0.05712722986936569, - -0.02110944874584675, - -0.0179589856415987, - 0.03770499303936958, - -0.015163765288889408, - -0.06058238819241524, - 0.04539172723889351, - -0.013005126267671585, - 0.05264304578304291, - 0.06468474864959717, - 0.08613322675228119, - 0.04964660480618477, - -0.05588657408952713 - ] - }, - "p245_377.wav": { - "name": "p245", - "embedding": [ - 0.04733222723007202, - 0.09046431630849838, - -0.007729042321443558, - 0.023351922631263733, - -0.045406218618154526, - 0.0695141851902008, - -0.14895758032798767, - 0.13072697818279266, - -0.03740275651216507, - 0.13736365735530853, - -0.061719201505184174, - 0.11193593591451645, - -0.012872840277850628, - -0.19223563373088837, - -0.04125719517469406, - 0.05775046348571777, - -0.05566421151161194, - -0.04179064556956291, - -0.01767709106206894, - -0.016842788085341454, - 0.04336528107523918, - 0.039042405784130096, - 0.024615731090307236, - 0.019655853509902954, - 0.018564637750387192, - 0.06023978441953659, - 0.006099242717027664, - 0.04876285791397095, - 0.011892968788743019, - -0.04463401436805725, - -0.03324940428137779, - 0.10493414103984833, - -0.033655568957328796, - 0.016802456229925156, - 0.04893812537193298, - -0.005977705121040344, - 0.010311475023627281, - -0.07104698568582535, - -0.01493571326136589, - 0.005471229087561369, - -0.04094529524445534, - 0.08284159004688263, - 0.0349363274872303, - -0.0021036460530012846, - 0.02977772057056427, - 0.020967869088053703, - -0.01297469437122345, - -0.05224353075027466, - -0.10763004422187805, - 0.16375944018363953, - 0.07977543026208878, - -0.004425516352057457, - -0.057821862399578094, - -0.07021655887365341, - 0.09861578792333603, - -0.005678652785718441, - -0.1081778034567833, - -0.045505356043577194, - 0.07989533990621567, - 0.16195233166217804, - -0.02595449611544609, - -0.0380433015525341, - 0.03098231554031372, - 0.14104890823364258, - 0.040164824575185776, - 0.09193927049636841, - 0.07257379591464996, - 0.10661174356937408, - -0.02201034501194954, - 0.005454308819025755, - 0.051565513014793396, - 0.06457283347845078, - 0.03750522434711456, - -0.01008233055472374, - 0.026899609714746475, - -0.004043132066726685, - -0.015529944561421871, - 0.011348563246428967, - -0.01910034939646721, - -0.011130217462778091, - -0.017013324424624443, - 0.004208702128380537, - -0.0074163442477583885, - 0.03168845921754837, - -0.022276248782873154, - 0.05006998032331467, - 0.021145593374967575, - -0.010872529819607735, - 0.06869891285896301, - 0.03454512357711792, - 0.02676863595843315, - 0.06201603263616562, - -0.06676843017339706, - -0.08428718894720078, - 0.03883475065231323, - 0.011023982428014278, - 0.020811481401324272, - 0.07552500814199448, - 0.03640558943152428, - -0.02461135946214199, - 0.11043436825275421, - 0.044609084725379944, - -0.022144397720694542, - 0.02399427816271782, - -0.10074125230312347, - 0.12465481460094452, - 0.07897934317588806, - -0.02425292693078518, - 0.0445183627307415, - -0.054526086896657944, - 0.07095321267843246, - 0.0692463219165802, - -0.13837578892707825, - -0.07763507217168808, - 0.04583822935819626, - 0.03376290202140808, - -0.01840008795261383, - 0.12454652786254883, - -0.0008544350857846439, - 0.030636047944426537, - 0.09778328984975815, - -0.07056055217981339, - -0.05649099871516228, - -0.031130269169807434, - 0.05065948888659477, - -0.08655708283185959, - 0.05324557423591614, - 0.05073268339037895, - -0.012185122817754745, - -0.0032959484960883856, - 0.07827114313840866, - -0.009260710328817368, - -0.0033345255069434643, - 0.011785428039729595, - -0.039946116507053375, - 0.03251684457063675, - -0.029809778556227684, - 0.012041283771395683, - 0.02555250935256481, - 0.03331790864467621, - 0.031097471714019775, - 0.0016900639748200774, - -0.04283086583018303, - -0.11885258555412292, - 0.007231834810227156, - 0.036401525139808655, - 0.07811887562274933, - -0.010405996814370155, - -0.034443892538547516, - -0.042231760919094086, - -0.058891575783491135, - 0.013215364888310432, - -0.015550191514194012, - 0.07276944816112518, - -0.01287914626300335, - -0.003698386251926422, - 0.08664282411336899, - 0.015264466404914856, - 0.0011708190431818366, - -0.04073679447174072, - -0.031158100813627243, - 0.019602570682764053, - 0.038766101002693176, - -0.07748782634735107, - -0.06124364584684372, - -0.00022036582231521606, - 0.03349297121167183, - -0.01661285199224949, - 0.03932264819741249, - 0.04105234518647194, - 0.015920568257570267, - 0.027934208512306213, - -0.0695836991071701, - 0.013799848966300488, - -0.10334327071905136, - -0.06709205359220505, - -0.014693690463900566, - -0.0046608950942754745, - -0.015061387792229652, - 0.07610457390546799, - 0.017258161678910255, - 0.051063209772109985, - -0.016528960317373276, - -0.06407789885997772, - -0.0741993859410286, - 0.056603118777275085, - 0.08332005143165588, - 0.004241840448230505, - 0.04837234318256378, - 0.04887954518198967, - -0.023131929337978363, - 0.05168752372264862, - 0.05290812999010086, - 0.10788771510124207, - -0.023714736104011536, - 0.015375932678580284, - -0.07529333233833313, - 0.08378778398036957, - 0.08201092481613159, - -0.0899907574057579, - -0.07696673274040222, - -0.02056359499692917, - -0.06307683885097504, - 0.03234029561281204, - -0.02875496819615364, - 0.008930492214858532, - 0.022837094962596893, - -0.00964735820889473, - -0.10226570814847946, - -0.09338478744029999, - 0.0775962695479393, - -0.07447759807109833, - -0.0003247287531848997, - -0.07987533509731293, - 0.05032431334257126, - 0.10073523223400116, - 0.0409855842590332, - -0.027450840920209885, - -0.018690699711441994, - 0.04257289692759514, - -0.034710608422756195, - 3.053806722164154e-05, - 0.039272792637348175, - 0.031003182753920555, - -0.12332575023174286, - 0.00576448580250144, - -0.0801028460264206, - 0.05784715712070465, - -0.06268148869276047, - 0.15345041453838348, - 0.01110049244016409, - -0.05558255314826965, - -0.08508320152759552, - 0.029661260545253754, - -0.02098817378282547, - 0.04710116982460022, - 0.02508586458861828, - 0.0568326860666275, - 0.028572171926498413, - -0.06707557290792465, - 0.11390320956707001, - 0.04429692029953003, - -0.033711306750774384, - -0.07568075507879257, - -0.03493708744645119, - -0.027595657855272293, - 0.040212761610746384, - 0.012148179113864899, - -0.08643628656864166, - -0.03368380293250084, - 0.03219104930758476, - -0.01587980054318905, - 0.07350198924541473, - 0.1479368358850479, - 0.06011173129081726, - -0.1269829273223877 - ] - }, - "p245_277.wav": { - "name": "p245", - "embedding": [ - 0.04264187067747116, - 0.06311096251010895, - -0.023551030084490776, - 0.0025000344030559063, - -0.057646460831165314, - 0.00225723534822464, - -0.11004720628261566, - 0.07569189369678497, - -0.03535941243171692, - 0.13863961398601532, - -0.05673816427588463, - 0.09984621405601501, - -0.02892191894352436, - -0.12817013263702393, - 0.010409042239189148, - 0.04462805762887001, - -0.034322742372751236, - -0.0507219135761261, - -0.0610097199678421, - -0.057701073586940765, - 0.026611264795064926, - 0.060849081724882126, - 0.028283659368753433, - -0.02435755357146263, - 0.02505907416343689, - 0.07433561980724335, - -0.014201589860022068, - -0.0020288852974772453, - -0.024021558463573456, - -0.07985426485538483, - -0.0157223641872406, - 0.03277362138032913, - -0.0407225526869297, - -0.016750629991292953, - 0.012855478562414646, - 0.0014595035463571548, - 0.0031131920404732227, - -0.0452728196978569, - -0.034499913454055786, - 0.02210972085595131, - -0.07554882019758224, - 0.06354205310344696, - 0.0002334974706172943, - -0.07364454865455627, - 0.022563796490430832, - -0.00024508778005838394, - -0.0025662570260465145, - -0.013982882723212242, - -0.07237289100885391, - 0.14286483824253082, - 0.07294850051403046, - 0.024620216339826584, - -0.044067081063985825, - -0.03783527389168739, - 0.087599977850914, - -0.024627361446619034, - -0.08886294811964035, - -0.06635920703411102, - 0.01920413412153721, - 0.09394382685422897, - -0.05642993748188019, - -0.04926179349422455, - 0.059584908187389374, - 0.046132609248161316, - 0.0660858228802681, - 0.03160572052001953, - 0.07284341007471085, - 0.06849180907011032, - -0.02200448140501976, - -0.002484874567016959, - 0.059769004583358765, - 0.08756299316883087, - 0.0719323381781578, - -0.0010794373229146004, - 0.021357227116823196, - 0.028888575732707977, - -0.042473286390304565, - -0.026766955852508545, - -0.021503642201423645, - -0.016207046806812286, - -0.0060727521777153015, - -0.0017984514124691486, - 0.028757430613040924, - -0.018070241436362267, - -0.018856022506952286, - 0.04063067585229874, - 0.05448971688747406, - -0.03964638337492943, - 0.060966476798057556, - 0.004664110951125622, - -0.011398667469620705, - 0.04361611604690552, - -0.08058154582977295, - -0.03437003120779991, - 0.01716829091310501, - 0.01690690591931343, - -0.012456999160349369, - 0.05685466527938843, - 0.03253331780433655, - -0.003275204449892044, - 0.099212646484375, - 0.017133908346295357, - 0.00788399949669838, - -0.004772128537297249, - -0.07832632213830948, - 0.12250611931085587, - 0.08846046775579453, - -0.04815295338630676, - 0.014907857403159142, - -0.03462682291865349, - 0.03354254737496376, - 0.04674684256315231, - -0.09301337599754333, - -0.087657630443573, - -0.006601814646273851, - -0.018905671313405037, - 0.0013481024652719498, - 0.09413935244083405, - 0.0020515201613307, - 0.04556795582175255, - 0.1325456202030182, - -0.08294179290533066, - -0.07228812575340271, - -0.0012694617034867406, - 0.02431389130651951, - -0.09716517478227615, - 0.07305336743593216, - 0.0702163353562355, - 0.004958189092576504, - 0.04787379875779152, - 0.0946945995092392, - -0.015924906358122826, - -0.0011008083820343018, - -0.02557320147752762, - -0.025193018838763237, - -0.018104009330272675, - -0.029397133737802505, - -0.02496369741857052, - 0.08315920829772949, - 0.03424597904086113, - 0.053083233535289764, - -0.005343281663954258, - -0.015508508309721947, - -0.12803561985492706, - 0.03876134380698204, - 0.03950865566730499, - 0.04070867970585823, - -0.019142312929034233, - 0.009575407952070236, - -0.04028969258069992, - -0.07258483022451401, - -0.008832355029881, - -0.038102902472019196, - 0.07548213005065918, - -0.03485502302646637, - 0.04116066172719002, - 0.10541260987520218, - 0.01915627345442772, - -0.00029413867741823196, - -0.05262730270624161, - -0.021592440083622932, - -0.008701791986823082, - 0.04718241095542908, - -0.04831003397703171, - -0.09325270354747772, - -0.04639029875397682, - 0.03858348727226257, - 0.018506933003664017, - 0.07129750400781631, - 0.0396333746612072, - 0.0033629750832915306, - 0.00828552059829235, - -0.07426701486110687, - 0.03370433300733566, - -0.05994594097137451, - -0.05434270575642586, - -0.008889112621545792, - -0.05110438913106918, - -0.02826916053891182, - 0.06683064252138138, - -0.008082222193479538, - 0.04435339570045471, - -0.04691636562347412, - -0.09931562095880508, - -0.11064563691616058, - 0.004934659227728844, - 0.036238037049770355, - -0.029476074501872063, - 0.008395855315029621, - 0.05499150976538658, - -0.012559883296489716, - 0.02311696857213974, - 0.020174259319901466, - 0.09117074310779572, - -0.03786388784646988, - 0.012111879885196686, - -0.023081757128238678, - 0.0757397934794426, - 0.06704360246658325, - -0.055841103196144104, - -0.037043072283267975, - -0.07037146389484406, - -0.07031042873859406, - 0.03177401423454285, - -0.0011859583901241422, - 0.008750032633543015, - 0.018187981098890305, - -0.0074934326112270355, - -0.0681600496172905, - -0.07481291890144348, - 0.057219941169023514, - -0.041216135025024414, - -0.017641713842749596, - -0.06915230304002762, - 0.0043623484671115875, - 0.03144053742289543, - 0.058244090527296066, - 0.0012780011165887117, - -0.0020744120702147484, - 0.012411200441420078, - -0.0251882616430521, - 0.037169575691223145, - 0.09109952300786972, - 0.036118537187576294, - -0.03495539352297783, - -0.01692371442914009, - -0.08257092535495758, - 0.05267810821533203, - -0.015549730509519577, - 0.09850166738033295, - -0.013627718202769756, - -0.02539307251572609, - -0.08449490368366241, - 0.015916192904114723, - -0.0176605936139822, - 0.063267782330513, - 0.04489488899707794, - 0.06108396500349045, - 0.04919436573982239, - -0.06144469976425171, - 0.0855003073811531, - 0.07372401654720306, - -0.011811371892690659, - -0.05288457125425339, - -0.0619916133582592, - -0.049867428839206696, - -0.011114935390651226, - 0.006419411860406399, - -0.06830126792192459, - 0.02813584730029106, - 0.003600649768486619, - 0.0007874211296439171, - 0.07652373611927032, - 0.09360671043395996, - 0.06632298231124878, - -0.10903823375701904 - ] - }, - "p245_010.wav": { - "name": "p245", - "embedding": [ - 0.028725378215312958, - 0.10670597106218338, - -0.013663104735314846, - 0.049690186977386475, - -0.06104345619678497, - 0.06506575644016266, - -0.12935765087604523, - 0.1428772509098053, - -0.03178021311759949, - 0.0916590467095375, - -0.09041033685207367, - 0.14234593510627747, - -0.028014011681079865, - -0.17712175846099854, - -0.026547489687800407, - 0.0555666945874691, - 0.003901268355548382, - -0.005483678076416254, - 0.023041341453790665, - -0.011615506373345852, - 0.05064955726265907, - 0.01587148942053318, - 0.05886288732290268, - 0.013373097404837608, - 0.03190702944993973, - 0.056823499500751495, - 0.018164364621043205, - 0.06301610171794891, - 0.029072750359773636, - -0.016369102522730827, - -0.05543539673089981, - 0.10893231630325317, - -0.0157815869897604, - 0.002462020143866539, - 0.06886240839958191, - -0.007040664553642273, - -0.0037082922644913197, - -0.06262369453907013, - -0.0014248085208237171, - -0.02177208662033081, - -0.02147660031914711, - 0.06623233109712601, - 0.040154967457056046, - -0.0349268913269043, - 0.03514464199542999, - 0.0244491808116436, - -0.009560373611748219, - -0.015133281238377094, - -0.12620337307453156, - 0.128758504986763, - 0.043029993772506714, - 0.013383596204221249, - -0.08306790143251419, - -0.05327610298991203, - 0.11673308908939362, - 0.0037154806777834892, - -0.0717497318983078, - -0.012218031100928783, - 0.08629606664180756, - 0.18141299486160278, - -0.005386904813349247, - -0.02255343273282051, - 0.03178722783923149, - 0.10652004927396774, - 0.028859883546829224, - 0.0872742235660553, - 0.07398101687431335, - 0.11215727776288986, - -0.0018404878210276365, - 0.02770141139626503, - 0.017030417919158936, - 0.08586126565933228, - -0.0024256715551018715, - -0.020028676837682724, - -0.010820229537785053, - -0.005327487830072641, - -0.02738869935274124, - 0.03361598029732704, - -0.0383361354470253, - -0.0462166853249073, - -0.022930003702640533, - -0.009437731467187405, - 0.01947222836315632, - 6.002793088555336e-05, - -0.04381745308637619, - 0.06869108974933624, - 0.026850320398807526, - -0.012992391362786293, - 0.0617077462375164, - 0.010400219820439816, - -0.024428587406873703, - 0.0535995289683342, - -0.07261838018894196, - -0.10296855866909027, - 0.02543533593416214, - -0.0024873341899365187, - 0.025066573172807693, - 0.0891386941075325, - 0.04712182655930519, - -0.020786520093679428, - 0.11509157717227936, - 0.06848638504743576, - -0.0008477892260998487, - 0.04748477041721344, - -0.07441697269678116, - 0.12000942975282669, - 0.09091515839099884, - -0.004055557306855917, - 0.07382682710886002, - -0.04909979924559593, - 0.0602409765124321, - 0.06179901957511902, - -0.12094734609127045, - -0.07089880108833313, - 0.014706685207784176, - 0.041342414915561676, - 0.002742488868534565, - 0.10451318323612213, - -0.00913223810493946, - 0.04099633917212486, - 0.0883367657661438, - -0.0933537483215332, - -0.07883404195308685, - -0.0391116663813591, - 0.04052465781569481, - -0.04352322965860367, - 0.05479617416858673, - 0.05855022370815277, - -0.008855506777763367, - -0.01494442019611597, - 0.045939669013023376, - -0.0074395835399627686, - 0.014088914729654789, - 0.06511983275413513, - -0.06878434866666794, - 0.008816284127533436, - -0.03868421912193298, - 0.00898418202996254, - 0.05127020180225372, - 0.04162725433707237, - 0.040688395500183105, - 0.018520019948482513, - -0.015696054324507713, - -0.1123669371008873, - -0.025542566552758217, - 0.07176807522773743, - 0.07686452567577362, - -0.0035655226092785597, - -0.06837192177772522, - -0.04631870985031128, - -0.05864271521568298, - 0.02417045831680298, - 0.009200849570333958, - 0.07643677294254303, - -0.027439165860414505, - 0.01286247093230486, - 0.051882702857255936, - 0.024856867268681526, - -0.008481026627123356, - -0.07212729752063751, - -0.03712907433509827, - 0.019971342757344246, - 0.011348159983754158, - -0.06558899581432343, - -0.07371678948402405, - -0.021353378891944885, - 0.03119572065770626, - -0.06447643041610718, - 0.03798682242631912, - 0.038434408605098724, - 0.02241576462984085, - 0.03698313236236572, - -0.037804167717695236, - -0.002959656063467264, - -0.09651385247707367, - -0.05180474743247032, - -0.009964662604033947, - 0.031705763190984726, - -0.0287723857909441, - 0.06844978779554367, - 0.06184413656592369, - 0.06942988187074661, - 0.008909285999834538, - -0.006876582279801369, - -0.07053043693304062, - 0.030965980142354965, - 0.04503471404314041, - 0.028909485787153244, - 0.08840499818325043, - 0.04474673792719841, - -0.036640655249357224, - 0.08059094846248627, - 0.08203427493572235, - 0.06344818323850632, - -0.01037412229925394, - -0.020454753190279007, - -0.07374860346317291, - 0.06970997154712677, - 0.11968529224395752, - -0.09022782742977142, - -0.1003156453371048, - -0.04872199892997742, - -0.07762288302183151, - 0.04848495498299599, - -0.028974764049053192, - -0.002572589088231325, - 0.01237446814775467, - -0.017692934721708298, - -0.1055043637752533, - -0.099042609333992, - 0.07173991203308105, - -0.0579565092921257, - -0.0008106371387839317, - -0.05996666103601456, - 0.04513000696897507, - 0.0959613025188446, - -0.016461580991744995, - -0.02952190488576889, - -0.02839544788002968, - 0.054464954882860184, - -0.05942635238170624, - -0.008524757809937, - 0.04394569620490074, - 0.03610827773809433, - -0.10853509604930878, - 0.03327574580907822, - -0.0647948831319809, - 0.05671197175979614, - -0.047558050602674484, - 0.17820847034454346, - 0.01884525641798973, - -0.03572610765695572, - -0.08030148595571518, - 0.05138568580150604, - -0.016077954322099686, - 0.03466182202100754, - 0.03344974294304848, - 0.05271591618657112, - -0.013466671109199524, - -0.10121957957744598, - 0.12472590804100037, - 0.010765277780592442, - -0.05773167312145233, - -0.09374077618122101, - -0.04166870564222336, - -0.03574949502944946, - 0.028676796704530716, - 0.0072265565395355225, - -0.07576675713062286, - -0.06061454489827156, - 0.022106267511844635, - 0.010483967140316963, - 0.0645110011100769, - 0.14586959779262543, - 0.051320455968379974, - -0.08237648010253906 - ] - }, - "p245_303.wav": { - "name": "p245", - "embedding": [ - 0.05086994171142578, - 0.08072485029697418, - 0.040910255163908005, - 0.0013891905546188354, - -0.014478957280516624, - 0.03669634088873863, - -0.09335188567638397, - 0.07901257276535034, - 0.014464322477579117, - 0.08860625326633453, - -0.12932388484477997, - 0.0366247333586216, - -0.05844385549426079, - -0.12876854836940765, - -0.03077705204486847, - 0.021804828196763992, - -0.04318710044026375, - 0.007399998605251312, - -0.04967281594872475, - -0.04463738575577736, - 0.019266493618488312, - 0.01893220655620098, - 0.05309247225522995, - -0.0314900204539299, - -0.027108270674943924, - 0.02366781048476696, - 0.0024859225377440453, - 0.010353431105613708, - 0.018924426287412643, - 0.0027833953499794006, - 0.027088072150945663, - 0.04175854101777077, - -0.000131973996758461, - 0.008983499370515347, - 0.04687155783176422, - 0.04443495720624924, - -0.010417547076940536, - -0.0334966778755188, - -0.026688016951084137, - 0.06783045828342438, - -0.04978682100772858, - 0.0629938393831253, - 0.048324186354875565, - -0.01743905618786812, - 0.05304032564163208, - -0.002429172396659851, - -0.0651036947965622, - -0.005244677886366844, - -0.10726199299097061, - 0.14259158074855804, - 0.054975174367427826, - 0.018864206969738007, - -0.07321242988109589, - -0.01979796402156353, - 0.11842131614685059, - -0.02936933934688568, - -0.08809123188257217, - -0.04840527102351189, - 0.036557577550411224, - 0.07616955786943436, - -0.006615160498768091, - -0.03273646533489227, - -0.040768593549728394, - 0.043823353946208954, - -0.019574299454689026, - 0.06636378914117813, - 0.08028679341077805, - 0.07933355867862701, - -0.01782982051372528, - 0.035356756299734116, - 0.08476553857326508, - 0.00943467952311039, - 0.01453235000371933, - -0.033368516713380814, - 0.027517026290297508, - -0.024607796221971512, - -0.027229975908994675, - 0.04379443824291229, - 0.010878156870603561, - -0.022651487961411476, - 0.019058922305703163, - -0.020240318030118942, - -0.00400744192302227, - -0.007379990536719561, - -0.06787237524986267, - -0.001393275335431099, - -0.006609325297176838, - 0.05506915599107742, - 0.07482090592384338, - 0.06983830779790878, - 0.0030721938237547874, - 0.03625817596912384, - -0.014485575258731842, - -0.09609570354223251, - -0.03183092921972275, - -0.02788097783923149, - 0.022880004718899727, - 0.0371972993016243, - 0.015818441286683083, - -0.004957647994160652, - 0.07519248872995377, - 0.04007837176322937, - 0.003095117397606373, - 0.0005476865917444229, - -0.11065604537725449, - 0.045733485370874405, - 0.09538108110427856, - -0.0049351295456290245, - 0.005513550713658333, - -0.010928180068731308, - 0.09307888895273209, - 0.07535122334957123, - -0.0694999024271965, - -0.022451302036643028, - 0.02165895700454712, - 0.06930910795927048, - 0.0748559907078743, - 0.08120141178369522, - -0.009417391382157803, - -0.03359581530094147, - 0.13591331243515015, - -0.05253691226243973, - -0.0068921782076358795, - -0.0020351381972432137, - -0.0020439699292182922, - -0.010730847716331482, - 0.019805535674095154, - 0.020882681012153625, - 0.0009033810347318649, - -0.02671380713582039, - 0.042021244764328, - -0.00638983678072691, - 0.002193121239542961, - -0.047575682401657104, - 0.006564216688275337, - 0.06948788464069366, - -0.025066815316677094, - 0.0034740683622658253, - 0.08385401964187622, - 0.07601861655712128, - 0.04497477784752846, - 0.07866920530796051, - -0.05052900314331055, - -0.045000601559877396, - 0.020842349156737328, - 0.03276495635509491, - 0.008508268743753433, - -0.015079807490110397, - -0.04481314867734909, - -0.050781890749931335, - -0.029487382620573044, - 0.08121202886104584, - -0.027118362486362457, - 0.0812443345785141, - 0.015863755717873573, - -0.034007616341114044, - 0.07388241589069366, - -0.031191222369670868, - -0.022215748205780983, - -0.04986584186553955, - -0.07730323821306229, - -0.0037364806048572063, - 0.017251040786504745, - -0.12774981558322906, - -0.03113045170903206, - -0.02424062043428421, - 0.005722923204302788, - 0.0077817002311348915, - -0.050905559211969376, - 0.06880206614732742, - -0.04607398435473442, - 0.0271031241863966, - -0.06728782504796982, - 0.04851977527141571, - -0.08129298686981201, - -0.06558481603860855, - 0.006172357127070427, - -0.03902430087327957, - 0.035720452666282654, - 0.07345400750637054, - -0.03674108535051346, - -0.02113676443696022, - -0.018549378961324692, - -0.11090287566184998, - -0.013332740403711796, - 0.07086677849292755, - 0.04954908415675163, - 0.011247997172176838, - 0.06500115990638733, - 0.0801166296005249, - -0.039803557097911835, - 0.0606718473136425, - 0.01620657369494438, - 0.0858481153845787, - -0.07190751284360886, - 0.012757385149598122, - -0.005361108109354973, - 0.03920765221118927, - 0.04750397056341171, - -0.05647473409771919, - -0.0880991667509079, - -0.06131656840443611, - -0.02567828819155693, - 0.02819378301501274, - -0.029608365148305893, - -0.03244323283433914, - 0.005862005054950714, - -0.017094694077968597, - -0.051371246576309204, - -0.07057394087314606, - 0.019255897030234337, - 0.010236331261694431, - -0.0066207945346832275, - -0.04347224533557892, - 0.020936865359544754, - 0.002386130392551422, - 0.02471340447664261, - -0.020868349820375443, - 0.03521343320608139, - -0.008208176121115685, - -0.057333897799253464, - -0.07976987957954407, - -0.027563974261283875, - 0.006840787827968597, - -0.0043005309998989105, - -0.006566083058714867, - -0.06918224692344666, - 0.08459626883268356, - -0.012925414368510246, - 0.06600619852542877, - -0.007634011562913656, - -0.009500415995717049, - -0.0029632877558469772, - -0.0020032599568367004, - -0.04413478076457977, - 0.03092007152736187, - 0.0714048370718956, - 0.006414875388145447, - -0.0025811661034822464, - -0.02007622830569744, - 0.08884145319461823, - 0.02687453106045723, - -0.012341579422354698, - -0.02021118625998497, - 0.05025880038738251, - -0.06245449185371399, - -0.04651808738708496, - -0.010262799449265003, - -0.05070169270038605, - 0.03186872974038124, - -0.02141043171286583, - -0.009322119876742363, - 0.0147930346429348, - 0.06873107701539993, - 0.02929753065109253, - -0.06964659690856934 - ] - }, - "p245_232.wav": { - "name": "p245", - "embedding": [ - 0.030955003574490547, - 0.08225686848163605, - -0.026167739182710648, - 0.034364327788352966, - -0.055399082601070404, - 0.05940912663936615, - -0.1497858315706253, - 0.1509069800376892, - -0.03663818538188934, - 0.1248239278793335, - -0.0603150948882103, - 0.1123816967010498, - -0.026475079357624054, - -0.1824588179588318, - -0.02223712019622326, - 0.06200999766588211, - -0.03276641666889191, - -0.05313640087842941, - -0.028874503448605537, - -0.008750061504542828, - 0.026636511087417603, - 0.022036101669073105, - -0.0004767272621393204, - 0.035958029329776764, - 0.018418053165078163, - 0.057225774973630905, - -0.00893328245729208, - 0.04563155770301819, - 0.019728491082787514, - -0.013275843113660812, - -0.028433043509721756, - 0.100715771317482, - -0.05943729728460312, - 0.008357983082532883, - 0.06376755982637405, - -0.013840243220329285, - -0.014781555160880089, - -0.05871795117855072, - -0.019421186298131943, - -0.007225473411381245, - -0.06464377045631409, - 0.08721588551998138, - 0.04328744113445282, - 0.0009219245985150337, - 0.04154667630791664, - 0.03276629000902176, - -0.009504780173301697, - -0.04713617265224457, - -0.1121065691113472, - 0.1356859803199768, - 0.07888346910476685, - -0.013625338673591614, - -0.06818297505378723, - -0.04119180887937546, - 0.10064180195331573, - -0.016587089747190475, - -0.10427527129650116, - -0.05555611848831177, - 0.0860384851694107, - 0.14325544238090515, - -0.03649243712425232, - -0.025906547904014587, - 0.017998311668634415, - 0.13315555453300476, - 0.08517007529735565, - 0.08853767812252045, - 0.06979244202375412, - 0.1303124874830246, - -0.028727956116199493, - -0.0018185931257903576, - 0.06994375586509705, - 0.05707184225320816, - 0.04032492637634277, - -0.0053398082964122295, - 0.019982216879725456, - 0.011023357510566711, - -0.00556158646941185, - 0.005987999495118856, - -0.02921021357178688, - -0.004633207805454731, - -0.01667523756623268, - 0.02470996230840683, - -0.004161872435361147, - 0.04750695824623108, - -0.017112310975790024, - 0.06861309707164764, - 0.05199010670185089, - -0.01693868823349476, - 0.07043921947479248, - 0.03453134372830391, - -0.0027603227645158768, - 0.06514585763216019, - -0.09954482316970825, - -0.07337656617164612, - 0.028049040585756302, - -0.010628284886479378, - 0.018603162840008736, - 0.07038712501525879, - 0.03109721466898918, - -0.0019274418009445071, - 0.13062971830368042, - 0.04392148554325104, - -0.01758021116256714, - 0.045508481562137604, - -0.0909043699502945, - 0.13980942964553833, - 0.058309681713581085, - -0.026628196239471436, - 0.042237989604473114, - -0.049634356051683426, - 0.05781242251396179, - 0.0522179901599884, - -0.1284443885087967, - -0.059402432292699814, - 0.06277811527252197, - 0.035799045115709305, - -0.04045063629746437, - 0.13847792148590088, - -0.0049690427258610725, - 0.038601987063884735, - 0.10101017355918884, - -0.0708998590707779, - -0.05300513654947281, - -0.009106209501624107, - 0.05786249786615372, - -0.06362000852823257, - 0.05602806806564331, - 0.04469164088368416, - -0.00024171569384634495, - 0.013101227581501007, - 0.09494341909885406, - 0.004752127919346094, - -0.013464430347084999, - 0.01538572832942009, - -0.03090580180287361, - 0.04443518444895744, - -0.010465172119438648, - 0.0006785569712519646, - 0.033403921872377396, - 0.028841624036431313, - 0.05300929397344589, - -0.007053093984723091, - -0.012311217375099659, - -0.12023797631263733, - 0.0045458474196493626, - 0.03103308193385601, - 0.11261628568172455, - -0.013627579435706139, - -0.01721094362437725, - -0.05851977318525314, - -0.060338519513607025, - -0.016285033896565437, - -0.008334862068295479, - 0.08106769621372223, - -0.028965385630726814, - 0.0035702052991837263, - 0.087030328810215, - 0.020359423011541367, - 0.01530112512409687, - -0.04681496322154999, - -0.024376949295401573, - -0.005033688619732857, - 0.06387915462255478, - -0.07089253515005112, - -0.06645822525024414, - 0.002432561945170164, - 0.042131394147872925, - -0.020987922325730324, - 0.05834024399518967, - 0.03505070134997368, - 0.03231378644704819, - 0.023026399314403534, - -0.07291001826524734, - 0.02770531177520752, - -0.09786864370107651, - -0.05986499786376953, - -0.01803792268037796, - 0.016358211636543274, - -0.024587152525782585, - 0.06809000670909882, - 0.025577712804079056, - 0.06966913491487503, - 0.004402273800224066, - -0.07678177952766418, - -0.08311372995376587, - 0.060352958738803864, - 0.0684356614947319, - -0.025736043229699135, - 0.052126433700323105, - 0.0699366107583046, - -0.0360199511051178, - 0.027775436639785767, - 0.064737468957901, - 0.09838823974132538, - -0.02781607210636139, - 0.020914599299430847, - -0.06858585774898529, - 0.08611253648996353, - 0.07740860432386398, - -0.10443754494190216, - -0.06946203112602234, - 0.0011498844251036644, - -0.0512927770614624, - 0.012925932183861732, - -0.039728835225105286, - 0.013339024968445301, - 0.028628556057810783, - -0.0028679983224719763, - -0.09937349706888199, - -0.09012958407402039, - 0.06622787564992905, - -0.10237047076225281, - 0.012176545336842537, - -0.08945709466934204, - 0.031761594116687775, - 0.11416492611169815, - 0.027827873826026917, - -0.03773145377635956, - -0.03059513121843338, - 0.055243417620658875, - -0.012641758657991886, - 0.00845520943403244, - 0.0636475682258606, - 0.0392475463449955, - -0.12736910581588745, - -0.0009595244191586971, - -0.059611327946186066, - 0.06867016851902008, - -0.03509185463190079, - 0.1494835764169693, - 0.021333612501621246, - -0.03771695867180824, - -0.07975314557552338, - 0.017768308520317078, - -0.004101933911442757, - 0.05537090077996254, - 0.014293333515524864, - 0.07221437990665436, - 0.04722786694765091, - -0.03195471316576004, - 0.14044740796089172, - 0.050141796469688416, - -0.0511203296482563, - -0.06355500966310501, - -0.041622135788202286, - -0.04044727236032486, - 0.03785739466547966, - 0.0339277908205986, - -0.09896513819694519, - -0.03048505261540413, - 0.026035085320472717, - -0.039641860872507095, - 0.06470636278390884, - 0.14841541647911072, - 0.08750447630882263, - -0.12302286922931671 - ] - }, - "p245_386.wav": { - "name": "p245", - "embedding": [ - 0.031649477779865265, - 0.07646173983812332, - -0.03148992359638214, - 0.052173126488924026, - -0.009548192843794823, - 0.05671019107103348, - -0.11025732755661011, - 0.04974089190363884, - -0.032562751322984695, - 0.13640549778938293, - -0.07717396318912506, - 0.07606972008943558, - -0.03287271782755852, - -0.16226907074451447, - -0.03962043672800064, - 0.06625166535377502, - -0.06991659104824066, - -0.03414027392864227, - -0.07099336385726929, - 0.004159691743552685, - 0.021393030881881714, - 0.045025646686553955, - 0.04835662245750427, - -0.02847697213292122, - 0.015876639634370804, - 0.07108022272586823, - 0.005270687863230705, - 0.053520023822784424, - 0.019035978242754936, - -0.014788918197154999, - -0.017116323113441467, - 0.11924406886100769, - -0.025705359876155853, - 0.011664564721286297, - 0.012256763875484467, - 0.05011039972305298, - 0.0011061616241931915, - -0.0535585917532444, - 0.006119484081864357, - 0.0008402115199714899, - -0.0679161548614502, - 0.05726798623800278, - 0.01713777333498001, - 0.00038415100425481796, - 0.04642557352781296, - -0.026818644255399704, - -0.057028114795684814, - -0.041265588253736496, - -0.10324981808662415, - 0.18313279747962952, - 0.09561291337013245, - 0.002732375171035528, - -0.06283178925514221, - -0.06810610741376877, - 0.08464275300502777, - 0.0027346834540367126, - -0.11771519482135773, - -0.05812404304742813, - 0.07848899066448212, - 0.1573343276977539, - 0.0008205575868487358, - -0.012080795131623745, - 0.013525392860174179, - 0.13324788212776184, - 0.044215209782123566, - 0.09904691576957703, - 0.06427250802516937, - 0.09096527099609375, - 0.024918677285313606, - 0.012453887611627579, - 0.09327840059995651, - 0.051750071346759796, - 0.05452318862080574, - -0.025828810408711433, - 0.02530427649617195, - 0.008843940682709217, - -0.03821789473295212, - 0.007995064370334148, - -0.00885915569961071, - -0.027870621532201767, - -0.01016781385987997, - -0.038475148379802704, - -0.020360104739665985, - 0.022097362205386162, - -0.012947442941367626, - 0.019672485068440437, - 0.04778805375099182, - -0.03624803200364113, - 0.05572628229856491, - 0.06616448611021042, - 0.004147545900195837, - 0.0384577177464962, - -0.022854197770357132, - -0.0798768550157547, - -0.005360814742743969, - 0.021205708384513855, - 0.0058741495013237, - 0.04019877314567566, - 0.04669239744544029, - -0.02885352075099945, - 0.07884927839040756, - 0.013295728713274002, - -0.011601023375988007, - 0.015225466340780258, - -0.0960804671049118, - 0.09479682147502899, - 0.10039801895618439, - -0.011088932864367962, - -0.002814692445099354, - -0.0030156525317579508, - 0.05556480959057808, - 0.09981440752744675, - -0.11694090068340302, - -0.04579015076160431, - 0.035769350826740265, - -0.020206402987241745, - 0.004826541990041733, - 0.0826086699962616, - 0.020274579524993896, - -0.010239641182124615, - 0.10876694321632385, - -0.07385456562042236, - -0.057519882917404175, - -0.04038620367646217, - 0.04464328661561012, - -0.08643260598182678, - 0.012069916352629662, - 0.05321726202964783, - 0.01035312470048666, - -0.048268113285303116, - 0.07908546179533005, - -0.008166933432221413, - 0.0024181418120861053, - -0.01672356389462948, - -0.032482050359249115, - 0.06223515793681145, - -0.054473478347063065, - -0.004516275599598885, - 0.06853006780147552, - 0.01806415431201458, - 0.04293894022703171, - -0.0002868594601750374, - -0.027835572138428688, - -0.0888238251209259, - 0.016806710511446, - 0.06457258015871048, - 0.036462608724832535, - -0.018106846138834953, - -0.012780562043190002, - -0.04917676001787186, - -0.06469360738992691, - 0.08024219423532486, - -0.037855107337236404, - 0.080410435795784, - 0.0010232441127300262, - -0.05984511598944664, - 0.1319093406200409, - -0.05424684286117554, - -0.005210271570831537, - -0.03288478031754494, - -0.01364852860569954, - 0.03927774727344513, - 0.031974393874406815, - -0.09523142874240875, - -0.06245991215109825, - 0.023493686690926552, - 0.007143914699554443, - 0.011369949206709862, - 0.004833690822124481, - 0.04307461157441139, - -0.006663513835519552, - -0.004109029192477465, - -0.04627680778503418, - -0.009475663304328918, - -0.09625554084777832, - -0.04432388022542, - -0.012137578800320625, - -0.06808105111122131, - 0.020495522767305374, - 0.08719237148761749, - 0.011581341736018658, - -0.02281828224658966, - -0.020354295149445534, - -0.11550386250019073, - -0.06183753162622452, - 0.09062296897172928, - 0.10387173295021057, - 0.006936357822269201, - 0.053012944757938385, - 0.053312644362449646, - -0.027003593742847443, - 0.017472604289650917, - 0.0384615883231163, - 0.11574673652648926, - -0.03329072892665863, - -0.013949348591268063, - -0.08618734776973724, - 0.07743092626333237, - 0.07602544873952866, - -0.09142109751701355, - -0.06249772757291794, - -0.021195027977228165, - -0.04711662232875824, - 0.05338535085320473, - -0.04962320253252983, - -0.000934468349441886, - 0.05762859433889389, - -0.04432222247123718, - -0.10845957696437836, - -0.12000110745429993, - 0.09313343465328217, - -0.03256407752633095, - -0.03908460959792137, - -0.0546737015247345, - 0.038468413054943085, - 0.024689989164471626, - 0.038590602576732635, - -0.0395713709294796, - 0.07005934417247772, - 0.03545287996530533, - -0.07135067135095596, - -0.037966590374708176, - 0.01848294399678707, - -0.013839974999427795, - -0.10702270269393921, - -0.0300307497382164, - -0.07974396646022797, - 0.11046966910362244, - -0.06991369277238846, - 0.1135016530752182, - -0.02276787720620632, - -0.04138772934675217, - -0.06875388324260712, - 0.049664974212646484, - -0.03177066892385483, - 0.05610818788409233, - 0.060398831963539124, - 0.046858787536621094, - 0.011969218030571938, - -0.06032554805278778, - 0.10747948288917542, - 0.03370114415884018, - 0.012704925611615181, - -0.071434885263443, - -0.0022916351445019245, - -0.04706091061234474, - 0.04040273278951645, - 0.0057310545817017555, - -0.05830095708370209, - 0.029064958915114403, - 0.021631691604852676, - -0.0445687472820282, - 0.04271232336759567, - 0.09893974661827087, - 0.07274339348077774, - -0.08253943175077438 - ] - }, - "p245_301.wav": { - "name": "p245", - "embedding": [ - 0.057568274438381195, - 0.09223821014165878, - 0.007904359139502048, - 0.009360878728330135, - -0.05180535838007927, - 0.048424966633319855, - -0.13868360221385956, - 0.12880083918571472, - -0.05091404169797897, - 0.14076541364192963, - -0.0888776183128357, - 0.11056727170944214, - -0.028841275721788406, - -0.19478873908519745, - -0.031966038048267365, - 0.06778732687234879, - -0.05272502452135086, - -0.017331931740045547, - -0.030604835599660873, - -0.03833030164241791, - 0.030700307339429855, - 0.04406757280230522, - 0.04959128051996231, - 0.0025467961095273495, - 0.036366261541843414, - 0.06365272402763367, - -0.0035961742978543043, - 0.038380078971385956, - -0.0005476729711517692, - -0.06377257406711578, - -0.040321171283721924, - 0.10129543393850327, - -0.027603134512901306, - 0.0005738348118029535, - 0.04033486917614937, - -0.0038666005712002516, - 0.01028286200016737, - -0.07850514352321625, - -0.028521744534373283, - -0.005902342032641172, - -0.030111927539110184, - 0.062242597341537476, - 0.018771197646856308, - -0.023722808808088303, - 0.04266452044248581, - 0.016253197565674782, - -0.02212587371468544, - -0.051569223403930664, - -0.11230802536010742, - 0.15956172347068787, - 0.058610379695892334, - 0.01764579676091671, - -0.08062902092933655, - -0.08030031621456146, - 0.11157318204641342, - -0.020428361371159554, - -0.11070533841848373, - -0.029925629496574402, - 0.07958759367465973, - 0.1769854724407196, - -0.03261929750442505, - -0.03844251483678818, - 0.03673999011516571, - 0.10619242489337921, - 0.021103203296661377, - 0.09065048396587372, - 0.07233696430921555, - 0.07809402793645859, - -0.007173887919634581, - 0.02198970690369606, - 0.043946199119091034, - 0.06531546264886856, - 0.03806215897202492, - -0.02396574430167675, - 0.008523855358362198, - -0.0003651070292107761, - -0.039425112307071686, - 0.007121828384697437, - -0.02786560356616974, - -0.02154955267906189, - -0.02398958057165146, - -0.013112209737300873, - 0.00716791208833456, - -0.00997895561158657, - -0.029585793614387512, - 0.037681058049201965, - 0.018233096227049828, - -0.011726005002856255, - 0.08116354048252106, - 0.020696040242910385, - 0.0010887833777815104, - 0.05523429065942764, - -0.05894294008612633, - -0.08556370437145233, - 0.019801979884505272, - 0.018817182630300522, - 0.0012730273883789778, - 0.06652579456567764, - 0.04354375600814819, - -0.04097859561443329, - 0.12280085682868958, - 0.0563124418258667, - 0.011998578906059265, - 0.016338754445314407, - -0.10847403109073639, - 0.10571916401386261, - 0.10303105413913727, - -0.018500104546546936, - 0.057639554142951965, - -0.03330636024475098, - 0.07022090256214142, - 0.09000542014837265, - -0.14976483583450317, - -0.06731857359409332, - 0.005179397761821747, - 0.004760426934808493, - 0.004492407664656639, - 0.10216490924358368, - -0.008764456026256084, - 0.03062225878238678, - 0.10736056417226791, - -0.09608791768550873, - -0.06707940995693207, - -0.01942978985607624, - 0.047624245285987854, - -0.09213035553693771, - 0.05182105302810669, - 0.06826537847518921, - -0.016363760456442833, - 0.014646435156464577, - 0.06341733783483505, - -0.013831235468387604, - 0.0006679337238892913, - 0.014714477583765984, - -0.057459622621536255, - 0.004620720632374287, - -0.040540874004364014, - -0.013093220070004463, - 0.05659019201993942, - 0.056231118738651276, - 0.03017984889447689, - 0.008781541138887405, - -0.04713290184736252, - -0.10730623453855515, - 0.0018080560257658362, - 0.039404671639204025, - 0.0640001893043518, - -0.004524265415966511, - -0.01980147510766983, - -0.040244586765766144, - -0.06377777457237244, - 0.019537638872861862, - -0.006887010298669338, - 0.08165401220321655, - -0.015925323590636253, - 0.011493921279907227, - 0.09520278871059418, - 0.0398494154214859, - -0.015489242970943451, - -0.059635013341903687, - -0.03367886692285538, - 0.024076364934444427, - 0.031787239015102386, - -0.07955163717269897, - -0.064188152551651, - -0.004629002884030342, - 0.033348675817251205, - -0.030268795788288116, - 0.048232655972242355, - 0.0365501344203949, - 0.017679031938314438, - 0.031582847237586975, - -0.06808843463659286, - 0.03319443389773369, - -0.09929189085960388, - -0.0706048309803009, - 0.010325675830245018, - -0.021829819306731224, - -0.01639660820364952, - 0.07677091658115387, - 0.019103065133094788, - 0.030340274795889854, - -0.03465960547327995, - -0.07381446659564972, - -0.07497461140155792, - 0.059479884803295135, - 0.05848969146609306, - 0.007035806775093079, - 0.04001577943563461, - 0.04349610209465027, - -0.036494385451078415, - 0.06861573457717896, - 0.06017628312110901, - 0.10490620136260986, - -0.018062766641378403, - 0.019025573506951332, - -0.06426830589771271, - 0.07456734776496887, - 0.08552327752113342, - -0.08499103784561157, - -0.09438055008649826, - -0.0479549877345562, - -0.06438026577234268, - 0.06781607121229172, - 0.0005342429503798485, - 0.000799510336946696, - 0.017691489309072495, - -0.024699386209249496, - -0.09493192285299301, - -0.0831979364156723, - 0.09308241307735443, - -0.03512897342443466, - -0.020412854850292206, - -0.06987360864877701, - 0.051389843225479126, - 0.07810716331005096, - 0.028827784582972527, - -9.47900116443634e-05, - -0.007626057602465153, - 0.03066258132457733, - -0.06585600972175598, - -0.008351843804121017, - 0.040980204939842224, - 0.024061432108283043, - -0.09204276651144028, - 0.010062674060463905, - -0.09098725020885468, - 0.07235553860664368, - -0.04125840216875076, - 0.16192816197872162, - -0.00015349453315138817, - -0.046393897384405136, - -0.09159310907125473, - 0.034498684108257294, - -0.029201602563261986, - 0.046501275151968, - 0.040973108261823654, - 0.05589176341891289, - 0.037237588316202164, - -0.06892435997724533, - 0.09393317997455597, - 0.02951010689139366, - -0.036253638565540314, - -0.05330682545900345, - -0.04663770645856857, - -0.04110775142908096, - 0.001878537004813552, - -0.03317738324403763, - -0.08862005174160004, - -0.0120218051597476, - 0.013715273700654507, - 0.0009218305349349976, - 0.07436086982488632, - 0.12232868373394012, - 0.05545676499605179, - -0.11029675602912903 - ] - }, - "p245_270.wav": { - "name": "p245", - "embedding": [ - 0.06799270212650299, - 0.06986050307750702, - -0.030308954417705536, - 0.009406200610101223, - -0.0280753206461668, - 0.04757925122976303, - -0.15357211232185364, - 0.07828021049499512, - -0.025264710187911987, - 0.14144983887672424, - -0.08151759207248688, - 0.08363526314496994, - -0.038718331605196, - -0.1377076953649521, - -0.035343438386917114, - 0.03952331840991974, - -0.038099486380815506, - -0.026263367384672165, - -0.03320247679948807, - -0.04013172537088394, - 0.035255067050457, - 0.04455157741904259, - 0.03481442481279373, - -0.02171032503247261, - 0.013106733560562134, - 0.05328827351331711, - -0.006691508926451206, - 0.004149415530264378, - -0.0027372678741812706, - -0.015064834617078304, - 0.015518597327172756, - 0.0787128284573555, - -0.025712989270687103, - 0.008137466385960579, - 0.027371030300855637, - 0.04111115634441376, - -0.00980415754020214, - -0.07554060220718384, - -0.002641502767801285, - 0.027434928342700005, - -0.04423069208860397, - 0.07521319389343262, - 0.05543341860175133, - -0.029544582590460777, - 0.013403094373643398, - -0.02985316514968872, - -0.022139674052596092, - -0.028378035873174667, - -0.08750086277723312, - 0.17022018134593964, - 0.049229517579078674, - 0.04327505826950073, - -0.08021430671215057, - -0.02661857381463051, - 0.10918998718261719, - 0.002991946181282401, - -0.08516161143779755, - -0.05540993809700012, - 0.04097442328929901, - 0.14431564509868622, - -0.03581167757511139, - -0.05663484334945679, - 0.014659020118415356, - 0.09168395400047302, - 0.02321115881204605, - 0.05371744930744171, - 0.10288208723068237, - 0.10380702465772629, - -0.004797391593456268, - 0.00024840733385644853, - 0.07075881958007812, - 0.06166936084628105, - 0.04630058631300926, - -0.030442573130130768, - 0.02644006535410881, - -0.02474067732691765, - -0.027147820219397545, - 0.013351775705814362, - -0.00498542096465826, - -0.05953351780772209, - -0.018255535513162613, - -0.022663993760943413, - 0.009124348871409893, - 0.04385858029127121, - -0.048377107828855515, - -0.00128183513879776, - 0.055021341890096664, - -0.04844118282198906, - 0.06293805688619614, - 0.05118151754140854, - 0.004495254717767239, - 0.017500076442956924, - -0.05158805102109909, - -0.08397918939590454, - 0.0215607937425375, - -1.3715277418668848e-05, - 0.029940873384475708, - 0.04640599340200424, - 0.04902661591768265, - -0.001838482916355133, - 0.09337493032217026, - 0.036085344851017, - 0.0014516152441501617, - -0.008137430064380169, - -0.08914171904325485, - 0.10762730240821838, - 0.11927849054336548, - -0.03658577427268028, - 0.030142251402139664, - -0.0354972742497921, - 0.031178509816527367, - 0.056456953287124634, - -0.10893867909908295, - -0.05645158514380455, - 0.04027913138270378, - 0.048129916191101074, - 0.03372490406036377, - 0.11904533207416534, - 0.0066388314589858055, - 0.006417814642190933, - 0.09890909492969513, - -0.06482607126235962, - -0.05654880031943321, - -0.03464934229850769, - 0.029620913788676262, - -0.06323816627264023, - 0.040416471660137177, - 0.05517037957906723, - 0.0026294346898794174, - -0.012145090848207474, - 0.06144228205084801, - 0.004542961250990629, - 0.001486417604610324, - -0.04767225310206413, - 0.0011693686246871948, - 0.058297790586948395, - -0.0051822843961417675, - 0.001652231439948082, - 0.06307755410671234, - 0.04204031452536583, - 0.060373857617378235, - 0.04696718603372574, - -0.02939853072166443, - -0.1203867718577385, - 0.017689043655991554, - 0.05398954078555107, - 0.045486174523830414, - -0.039891310036182404, - -0.02353554219007492, - -0.029192402958869934, - -0.06690873205661774, - 0.04063386097550392, - -0.023980434983968735, - 0.09611372649669647, - 0.019894331693649292, - -0.008288721553981304, - 0.11201837658882141, - -0.011443797498941422, - -0.0014377329498529434, - -0.029375141486525536, - 0.0017132697394117713, - 0.012996098026633263, - 0.037378232926130295, - -0.1013718992471695, - -0.06755703687667847, - -0.02031397819519043, - 0.03224779665470123, - 0.0060243732295930386, - 0.016036614775657654, - 0.061923276633024216, - -0.017473440617322922, - 0.03167106211185455, - -0.05162401497364044, - 0.014683408662676811, - -0.09121719002723694, - -0.040306106209754944, - 0.010868720710277557, - -0.061787452548742294, - 0.0035548019222915173, - 0.09469505399465561, - 0.0020755156874656677, - 0.021223535761237144, - -0.04330555722117424, - -0.08449256420135498, - -0.05020967125892639, - 0.05761520192027092, - 0.05676736682653427, - -0.023077700287103653, - 0.004592872224748135, - 0.06153615564107895, - 0.017525020986795425, - 0.019843533635139465, - 0.04900500923395157, - 0.10481980443000793, - -0.055756598711013794, - -0.015864495187997818, - -0.04481380432844162, - 0.08426442742347717, - 0.0744682177901268, - -0.07107919454574585, - -0.06658408045768738, - -0.06271475553512573, - -0.0548674538731575, - 0.015327002853155136, - -0.03906814754009247, - 0.007808073423802853, - 0.007038188632577658, - -0.03538782522082329, - -0.09278490394353867, - -0.10324453562498093, - 0.05112820118665695, - -0.02323496900498867, - 0.010151720605790615, - -0.07668624818325043, - 0.0360274463891983, - 0.044782306998968124, - 0.04083431512117386, - -0.021566664800047874, - 0.03244791179895401, - -0.00563589483499527, - -0.059588849544525146, - -0.0204447191208601, - 0.019399069249629974, - 0.027902822941541672, - -0.0801028311252594, - -0.027346324175596237, - -0.08761890977621078, - 0.08654701709747314, - -0.05193805322051048, - 0.10969868302345276, - 0.004548600409179926, - -0.03667440637946129, - -0.06438678503036499, - -0.005068215541541576, - -0.029014956206083298, - 0.05610468611121178, - 0.06325861811637878, - 0.04696780443191528, - 0.027549726888537407, - -0.05382007360458374, - 0.08028334379196167, - 0.06447622179985046, - -0.0007913423469290137, - -0.06454464048147202, - -0.00570499524474144, - -0.02104426920413971, - 0.026596155017614365, - -0.011489320546388626, - -0.04393615573644638, - 0.025307562202215195, - 0.011626522056758404, - 0.0023843436501920223, - 0.04302237555384636, - 0.07981114834547043, - 0.06109225004911423, - -0.08637422323226929 - ] - }, - "p245_173.wav": { - "name": "p245", - "embedding": [ - 0.07176820933818817, - 0.09407888352870941, - -0.011364780366420746, - 0.010159902274608612, - -0.016106361523270607, - 0.05601426213979721, - -0.15782994031906128, - 0.10752272605895996, - -0.01731758937239647, - 0.16062405705451965, - -0.0568208247423172, - 0.10075299441814423, - -0.006862226873636246, - -0.1627231240272522, - -0.005759446881711483, - 0.04793665558099747, - -0.022647885605692863, - -0.01614522375166416, - -0.012670285999774933, - -0.011533843353390694, - 0.0270843468606472, - 0.06354396045207977, - 0.02789982780814171, - -0.04641401022672653, - 0.04943964257836342, - 0.07072983682155609, - -0.026536909863352776, - 0.020545681938529015, - -0.03066398948431015, - -0.09755146503448486, - -0.028680959716439247, - 0.09456484019756317, - -0.0629541426897049, - 0.004870763048529625, - 0.010024232789874077, - 0.0037586414255201817, - -0.009080039337277412, - -0.07031209766864777, - 0.003934313543140888, - 0.006634276360273361, - -0.026572339236736298, - 0.07697838544845581, - 0.008321565575897694, - -0.028096474707126617, - 0.018405137583613396, - 0.008620363660156727, - 0.015106569975614548, - -0.046957701444625854, - -0.09293113648891449, - 0.1733725517988205, - 0.040017981082201004, - 0.018934788182377815, - -0.0762978121638298, - -0.06529507786035538, - 0.05791374295949936, - 0.011339535936713219, - -0.07870632410049438, - -0.026602882891893387, - 0.06393817067146301, - 0.12505125999450684, - -0.01607131026685238, - -0.06907400488853455, - 0.05594916269183159, - 0.09082278609275818, - 0.031827427446842194, - 0.06660838425159454, - 0.08085164427757263, - 0.08245068043470383, - -0.014189053326845169, - -0.0047857495956122875, - 0.023275600746273994, - 0.06424253433942795, - 0.06848644465208054, - -0.019990667700767517, - 0.022112617269158363, - -0.02770320326089859, - -0.03607051074504852, - -0.02559647522866726, - -0.015543723478913307, - -0.043046653270721436, - 0.010368452407419682, - -0.023759517818689346, - 0.0066072107292711735, - 0.047005683183670044, - -0.03279145061969757, - -0.00031907856464385986, - 0.06352050602436066, - -0.03349427133798599, - 0.0873803198337555, - 0.03147701919078827, - 0.047228965908288956, - 0.04499738663434982, - -0.0993172824382782, - -0.05194021761417389, - 0.0814802423119545, - 0.02768086828291416, - 0.021833667531609535, - 0.06721874326467514, - 0.06602063030004501, - -0.026171432808041573, - 0.11556895077228546, - 0.01782584935426712, - 0.006803395226597786, - -0.01679006777703762, - -0.0866253674030304, - 0.1195625513792038, - 0.10142633318901062, - -0.03202471882104874, - 0.05930221080780029, - -0.05675867572426796, - 0.03749794512987137, - 0.061748430132865906, - -0.1386668086051941, - -0.07783924788236618, - 0.01595931686460972, - -0.004411232192069292, - -0.0006495704874396324, - 0.12575292587280273, - 0.01999078318476677, - 0.029421869665384293, - 0.07984790951013565, - -0.12089603394269943, - -0.07428208738565445, - -0.014167513698339462, - 0.04148555174469948, - -0.13301032781600952, - 0.07904093712568283, - 0.07656114548444748, - -0.027148105204105377, - 0.017414215952157974, - 0.05377041548490524, - -0.007800941821187735, - 0.03367157652974129, - -0.041114598512649536, - -0.004928048234432936, - 0.0014044824056327343, - -0.03247660771012306, - -0.011709107086062431, - -0.007882753387093544, - 0.0020699799060821533, - 0.04860632121562958, - -0.009369758889079094, - -0.031571898609399796, - -0.1366378366947174, - 0.02385927364230156, - 0.04236344248056412, - 0.04399466887116432, - -0.026446310803294182, - -0.03849812597036362, - -0.029361609369516373, - -0.06658098101615906, - 0.01916542835533619, - -0.027384649962186813, - 0.049863725900650024, - 0.026535917073488235, - 0.0006802743300795555, - 0.1292160153388977, - 0.04050588980317116, - 0.008325567469000816, - -0.034439072012901306, - -0.0182051844894886, - 0.035081617534160614, - 0.03761845454573631, - -0.08179673552513123, - -0.07960256934165955, - -0.035053886473178864, - 0.0015208013355731964, - 0.00039042532444000244, - 0.07526734471321106, - 0.06694494932889938, - 0.02038998156785965, - 0.00393206812441349, - -0.07140673696994781, - 0.015561315231025219, - -0.07188624143600464, - -0.07797953486442566, - -0.0011919899843633175, - -0.038577593863010406, - -0.023005720227956772, - 0.11078164726495743, - 0.011829000897705555, - 0.030275991186499596, - -0.09112456440925598, - -0.03231711685657501, - -0.0775674432516098, - 0.03312600031495094, - 0.06938186287879944, - -0.027957189828157425, - -0.005439095199108124, - 0.03145615756511688, - -0.01234870683401823, - 0.04460148513317108, - 0.06083906441926956, - 0.10649219155311584, - -0.031135428696870804, - 0.01706313155591488, - -0.04707447439432144, - 0.10066907107830048, - 0.09728628396987915, - -0.0434102863073349, - -0.06789210438728333, - -0.027286015450954437, - -0.09110747277736664, - 0.024142339825630188, - -0.01407662034034729, - 0.010439066216349602, - 0.027954814955592155, - -0.0264646764844656, - -0.09735719859600067, - -0.10639109462499619, - 0.06820908188819885, - -0.03417264297604561, - -0.01120026409626007, - -0.09239445626735687, - 0.07127836346626282, - 0.05764802545309067, - 0.062376610934734344, - -0.02964300662279129, - -0.021027889102697372, - 0.01798599399626255, - -0.023972038179636, - 0.019715020433068275, - 0.055095501244068146, - 0.04365352541208267, - -0.10191469639539719, - 0.0012429035268723965, - -0.0725974589586258, - 0.06259524077177048, - -0.05908035486936569, - 0.12826167047023773, - 0.019626274704933167, - -0.055374495685100555, - -0.09822532534599304, - 0.0451180674135685, - -0.012566395103931427, - 0.038176268339157104, - 0.025728680193424225, - 0.03536828234791756, - 0.07543665915727615, - -0.08609627932310104, - 0.05570127069950104, - 0.056159213185310364, - 0.008486177772283554, - -0.07039356976747513, - -0.06544645130634308, - -0.027505137026309967, - 0.05889352411031723, - -0.014390192925930023, - -0.08508481085300446, - -0.002448371611535549, - 0.04183949902653694, - 0.04390355199575424, - 0.05432435870170593, - 0.11898042261600494, - 0.014156199991703033, - -0.1298334300518036 - ] - }, - "p245_212.wav": { - "name": "p245", - "embedding": [ - 0.04926248639822006, - 0.09347432851791382, - -0.02989881858229637, - 0.04287482425570488, - -0.07121097296476364, - 0.06113899499177933, - -0.12194943428039551, - 0.1443902850151062, - -0.026454035192728043, - 0.12350095808506012, - -0.06389691680669785, - 0.13769842684268951, - -0.010839363560080528, - -0.1748703420162201, - -0.009052792564034462, - 0.051553875207901, - -0.03032657504081726, - -0.027276592329144478, - -0.01762459985911846, - -0.02490421012043953, - 0.04523976519703865, - 0.026174617931246758, - 0.042886923998594284, - -0.0011535920202732086, - 0.02268734574317932, - 0.06813979893922806, - -0.008159923367202282, - 0.03383906930685043, - 0.012882075272500515, - -0.04250115901231766, - -0.05369354039430618, - 0.09711077809333801, - -0.04795306175947189, - 0.005942797288298607, - 0.04737791419029236, - -0.029083454981446266, - -0.016851384192705154, - -0.06789243221282959, - -0.015624778345227242, - -0.004724005237221718, - -0.03770575299859047, - 0.07108642160892487, - 0.03683258593082428, - -0.04691920056939125, - 0.040689773857593536, - 0.0017856033518910408, - -0.025633830577135086, - -0.022076554596424103, - -0.1124044805765152, - 0.1485075056552887, - 0.08334562182426453, - 0.004351007752120495, - -0.06874970346689224, - -0.04564416781067848, - 0.10296206921339035, - 0.011801138520240784, - -0.10092521458864212, - -0.02880946546792984, - 0.06590692698955536, - 0.14732694625854492, - -0.017298776656389236, - -0.01934986189007759, - 0.03992252051830292, - 0.12292594462633133, - 0.05581901967525482, - 0.08670341968536377, - 0.08431488275527954, - 0.12420819699764252, - -0.02458467148244381, - 0.036521416157484055, - 0.04772704094648361, - 0.08484551310539246, - 0.03571600466966629, - -0.013911524787545204, - 0.016172481700778008, - -0.01837928779423237, - -0.022812267765402794, - -0.011723371222615242, - -0.03292742371559143, - -0.041716281324625015, - -0.014236153103411198, - -0.0020793424919247627, - 0.022282516583800316, - 0.028689857572317123, - -0.03425309807062149, - 0.06377941370010376, - 0.05432802066206932, - -0.014670338481664658, - 0.05781891196966171, - 0.02322547324001789, - 0.0008584093884564936, - 0.06046289950609207, - -0.0935458093881607, - -0.09158241748809814, - 0.03851895034313202, - 0.009966236539185047, - 0.03802908957004547, - 0.09636756032705307, - 0.04850156977772713, - -0.015959028154611588, - 0.11254779249429703, - 0.06478337943553925, - -0.009102988056838512, - 0.024678101763129234, - -0.07216702401638031, - 0.13344532251358032, - 0.09953349828720093, - -0.028674017637968063, - 0.05954040586948395, - -0.05857591703534126, - 0.08252397179603577, - 0.0627819150686264, - -0.12963241338729858, - -0.059737276285886765, - 0.015851616859436035, - 0.010762259364128113, - -0.021799711510539055, - 0.12426159530878067, - 0.009573590941727161, - 0.05866051837801933, - 0.10245257616043091, - -0.09398536384105682, - -0.06916390359401703, - -0.03563554212450981, - 0.053915515542030334, - -0.0720360055565834, - 0.06783805042505264, - 0.05705127865076065, - -0.016505202278494835, - 0.008189246989786625, - 0.05618195980787277, - -0.018990276381373405, - 0.005063587799668312, - 0.04427889734506607, - -0.055357616394758224, - 0.021597588434815407, - -0.029596343636512756, - 0.007059850730001926, - 0.038379229605197906, - 0.018356427550315857, - 0.04641779139637947, - -0.017772115767002106, - 0.005433990154415369, - -0.10581168532371521, - 0.018909212201833725, - 0.041864145547151566, - 0.08023247122764587, - -0.00948785524815321, - -0.04590172320604324, - -0.027374034747481346, - -0.07832708954811096, - 0.009802371263504028, - -0.015804335474967957, - 0.05598200112581253, - -0.02208850346505642, - 0.006917305290699005, - 0.07315942645072937, - 0.038381580263376236, - -0.002510452875867486, - -0.053397759795188904, - -0.03993199020624161, - 0.026768989861011505, - 0.04826163500547409, - -0.0876753032207489, - -0.07765023410320282, - -0.01559979934245348, - 0.017758280038833618, - -0.043765634298324585, - 0.0477977991104126, - 0.044568829238414764, - 0.023309417068958282, - 0.022982459515333176, - -0.07431454956531525, - 0.014876702800393105, - -0.09874092042446136, - -0.06252795457839966, - -0.013873577117919922, - -0.010914936661720276, - -0.023025624454021454, - 0.07346211373806, - 0.028459902852773666, - 0.06103762984275818, - -0.012941684573888779, - -0.03182506188750267, - -0.0742461234331131, - 0.04373345524072647, - 0.04771711304783821, - -0.0023526393342763186, - 0.055207058787345886, - 0.06242801249027252, - -0.032313913106918335, - 0.03726121038198471, - 0.05519833415746689, - 0.08633619546890259, - -0.02889649197459221, - -0.0041061509400606155, - -0.08075399696826935, - 0.08854243159294128, - 0.11216777563095093, - -0.09398438781499863, - -0.08515109121799469, - -0.046981871128082275, - -0.07143368571996689, - 0.02817981131374836, - -0.04188070446252823, - -0.008412213064730167, - 0.024546276777982712, - -0.006018579937517643, - -0.11036016047000885, - -0.09961618483066559, - 0.09249331057071686, - -0.07802318036556244, - -0.0007111175800673664, - -0.088178351521492, - 0.04190279543399811, - 0.10098787397146225, - 0.012273182161152363, - -0.05088677257299423, - -0.013336263597011566, - 0.049407146871089935, - -0.022840479388833046, - 0.01786416582763195, - 0.05521143227815628, - 0.058342739939689636, - -0.11871907860040665, - -0.0011970819905400276, - -0.05556679144501686, - 0.037498194724321365, - -0.05119210481643677, - 0.15708871185779572, - 0.021797113120555878, - -0.042812660336494446, - -0.08902624249458313, - 0.06639361381530762, - 2.842256799340248e-05, - 0.038995031267404556, - 0.03430986404418945, - 0.057846926152706146, - 0.015145277604460716, - -0.10340934246778488, - 0.1268310844898224, - 0.02518150396645069, - -0.03879963606595993, - -0.08295939862728119, - -0.02969885803759098, - -0.03879639133810997, - 0.03559086471796036, - 0.018966900184750557, - -0.08289770036935806, - -0.036304399371147156, - 0.02229735255241394, - -0.0009657228365540504, - 0.06664615869522095, - 0.14926570653915405, - 0.06402461975812912, - -0.10259199142456055 - ] - }, - "p245_297.wav": { - "name": "p245", - "embedding": [ - 0.07629692554473877, - 0.019971350207924843, - -0.03802793100476265, - -0.006920741870999336, - -0.012514205649495125, - 0.008400335907936096, - -0.1661592721939087, - 0.05450918525457382, - -0.005334441550076008, - 0.1383333057165146, - -0.04782237857580185, - 0.09122902154922485, - 0.05695922300219536, - -0.11926629394292831, - -0.026478007435798645, - -0.0032569197937846184, - -0.0037452802062034607, - -0.01487928256392479, - -0.03494531288743019, - -0.03976662829518318, - 0.018306411802768707, - 0.0729287788271904, - 0.018423713743686676, - -0.02867380529642105, - 0.022599918767809868, - 0.03466223552823067, - 0.016785111278295517, - 0.03369872644543648, - -0.012988896109163761, - -0.0051640113815665245, - 0.03835226222872734, - 0.09454752504825592, - -0.03953073173761368, - -0.015669522807002068, - 0.0002562357112765312, - -0.0037231799215078354, - 0.010481055825948715, - -0.06576351821422577, - -0.031258899718523026, - 0.060968827456235886, - -0.026809804141521454, - 0.08423973619937897, - 0.07316368818283081, - 0.03806396946310997, - -0.015905175358057022, - 0.007131893187761307, - -0.015634985640645027, - -0.04342108592391014, - -0.07481781393289566, - 0.17867104709148407, - 0.059898246079683304, - 0.01981240138411522, - -0.08707676827907562, - -0.014873607084155083, - 0.05679138004779816, - -0.020422862842679024, - -0.042762722820043564, - -0.03297768533229828, - 0.023651596158742905, - 0.11516857147216797, - -0.011122106574475765, - -0.061041586101055145, - 0.03531097620725632, - 0.0985541045665741, - 0.026169762015342712, - -0.0008743098005652428, - 0.10756926238536835, - 0.09035806357860565, - -0.022079408168792725, - 0.0003854893147945404, - 0.027243316173553467, - 0.04686136543750763, - 0.03756828233599663, - -0.057963777333498, - 0.0463244803249836, - 0.017470043152570724, - -0.002822326496243477, - -0.009697090834379196, - -0.0333847813308239, - -0.030203914269804955, - 0.029083535075187683, - -0.007038524374365807, - 0.014345266856253147, - 0.10834480077028275, - -0.12180013209581375, - 0.0009901653975248337, - 0.02897222340106964, - -0.039978988468647, - 0.06123960018157959, - 0.04182210564613342, - 0.05178956314921379, - 0.0012031756341457367, - -0.04275290668010712, - -0.041629284620285034, - 0.04267159476876259, - 0.001502116210758686, - 0.026989420875906944, - 0.03683321550488472, - 0.03040151484310627, - -0.02361932024359703, - 0.0913555696606636, - 0.0122599545866251, - -0.04111108183860779, - -0.03137291222810745, - -0.05846916139125824, - 0.09025005996227264, - 0.10722416639328003, - -0.04756893217563629, - 0.010950114578008652, - -0.00423665065318346, - -0.0002347724512219429, - 0.003550526686012745, - -0.10134103894233704, - -0.062464095652103424, - 0.07700498402118683, - 0.08343572914600372, - 0.04594942554831505, - 0.12246283888816833, - 0.021112067624926567, - 0.045787788927555084, - 0.05157501623034477, - -0.00040265917778015137, - -0.03345586359500885, - -0.01539759524166584, - 0.028891535475850105, - -0.07772502303123474, - 0.029788680374622345, - 0.0491885244846344, - -0.0067960843443870544, - -0.049767691642045975, - 0.08093934506177902, - 0.007673865184187889, - 0.01841999962925911, - -0.0654219314455986, - 0.06309318542480469, - 0.09555287659168243, - 0.01710500940680504, - 0.01704421639442444, - 0.003249748144298792, - 0.008811423555016518, - 0.055022697895765305, - 0.054727066308259964, - -0.054593898355960846, - -0.14069455862045288, - 0.03490566834807396, - 0.030424585565924644, - 0.04977791756391525, - -0.06496742367744446, - -0.047632452100515366, - -0.05405411124229431, - -0.002910137176513672, - 0.005666239187121391, - -0.01811882108449936, - 0.04784992337226868, - 0.03455706685781479, - -0.039973221719264984, - 0.1071385070681572, - -0.06219460070133209, - -0.004876335151493549, - 0.02228272147476673, - 0.0539839044213295, - -0.008913730271160603, - 0.03449740260839462, - -0.036798641085624695, - -0.04819076135754585, - 0.01632244884967804, - 0.039813846349716187, - 0.030323179438710213, - 0.01755298301577568, - 0.04531760513782501, - -0.04706723988056183, - 0.03339900076389313, - -0.07254259288311005, - -0.01250685378909111, - -0.06893104314804077, - -0.0036847665905952454, - 0.025534726679325104, - -0.03282387554645538, - -0.04400666430592537, - 0.06764364242553711, - 0.02060113474726677, - 0.05287296324968338, - -0.05018552392721176, - -0.07889688014984131, - -0.02753717079758644, - 0.025382716208696365, - 0.08142886310815811, - -0.06796963512897491, - -0.005324011668562889, - 0.0546257346868515, - 0.034353598952293396, - 0.02660982683300972, - 0.07399705797433853, - 0.03870521858334541, - -0.04743567481637001, - -0.025365836918354034, - -0.012146467342972755, - 0.11036759614944458, - 0.01119477953761816, - -0.0339694581925869, - -0.03719257563352585, - -0.03000205010175705, - -0.06114179641008377, - 0.010866746306419373, - 0.04313436895608902, - 0.04434502124786377, - 0.062102459371089935, - -0.016348928213119507, - -0.08330464363098145, - -0.052538808435201645, - 0.011660106480121613, - -0.0668366402387619, - 2.127978950738907e-05, - -0.04786863550543785, - 0.01919173076748848, - 0.05848894268274307, - 0.06234728917479515, - -0.0020749401301145554, - -0.0330393947660923, - -0.032533567398786545, - -0.07975277304649353, - -0.027455519884824753, - 0.019928976893424988, - 0.03278620168566704, - -0.08646176755428314, - -0.016873378306627274, - -0.09054318070411682, - 0.06774342060089111, - -0.06268683075904846, - 0.033310286700725555, - 0.048422921448946, - -0.04793819412589073, - -0.06293939054012299, - -0.034452885389328, - -0.030322391539812088, - 0.060948535799980164, - 0.057113468647003174, - 0.02951253205537796, - 0.04063909128308296, - -0.06381344050168991, - 0.053798358887434006, - 0.09327006340026855, - -0.011326191015541553, - -0.0931345596909523, - 8.282624185085297e-05, - 0.024634400382637978, - 0.03995777666568756, - 0.062418267130851746, - -0.023690296337008476, - 0.017248474061489105, - 0.03683752566576004, - -0.05682305991649628, - 0.03897673264145851, - 0.05409426987171173, - 0.05446132645010948, - -0.12581440806388855 - ] - }, - "p245_208.wav": { - "name": "p245", - "embedding": [ - 0.05125076323747635, - 0.11419150233268738, - -0.025501761585474014, - 0.026101000607013702, - -0.008544359356164932, - 0.06391303241252899, - -0.11612982302904129, - 0.08943429589271545, - -0.051306888461112976, - 0.12412339448928833, - -0.0921008288860321, - 0.09335722029209137, - -0.0444030836224556, - -0.11974431574344635, - -0.03559380769729614, - 0.03892037272453308, - -0.024653399363160133, - -0.009654968976974487, - -0.027000732719898224, - 0.013440657407045364, - 0.01123119704425335, - 0.0397481694817543, - 0.027141539379954338, - -0.03496481478214264, - 0.057529255747795105, - 0.051261916756629944, - 0.014046593569219112, - 0.05508347228169441, - 0.009758812375366688, - -0.03700024634599686, - -0.016322080045938492, - 0.0984763503074646, - -0.058843642473220825, - 0.012739856727421284, - 0.03934529796242714, - 0.04367176815867424, - 0.0019126555416733027, - -0.06717853993177414, - -0.00011252891272306442, - -0.0013750223442912102, - -0.04891732707619667, - 0.0629829615354538, - 0.01425075065344572, - -0.04114707559347153, - 0.004804631229490042, - 0.02511514350771904, - 0.024984922260046005, - -0.05233056843280792, - -0.09256522357463837, - 0.13978534936904907, - 0.007139792665839195, - 0.029415536671876907, - -0.07998111099004745, - -0.08232612907886505, - 0.08668428659439087, - 0.009077733382582664, - -0.06827464699745178, - -0.03016751818358898, - 0.0566578209400177, - 0.1562870293855667, - -0.021291103214025497, - -0.03526361286640167, - 0.021431736648082733, - 0.07608122378587723, - 0.06751179695129395, - 0.08654499053955078, - 0.07225680351257324, - 0.08797501027584076, - 0.03173702582716942, - 0.012589674443006516, - 0.06281158328056335, - 0.05196135491132736, - 0.04360462725162506, - -0.0199274979531765, - -0.00046735070645809174, - -0.0003736445214599371, - -0.04351101815700531, - 0.02821057289838791, - -0.0018056074623018503, - -0.05079984664916992, - -0.002817056141793728, - 0.004377659875899553, - 0.001524798572063446, - 0.028849530965089798, - -0.027030812576413155, - 0.037783533334732056, - 0.04753422737121582, - -0.0519958958029747, - 0.07566116005182266, - 0.0326567068696022, - -0.010243198834359646, - 0.03281642124056816, - -0.07016395032405853, - -0.08529186993837357, - 0.009472963400185108, - -0.0013765832409262657, - 0.001708323135972023, - 0.07339968532323837, - 0.05608911067247391, - -0.006538934540003538, - 0.09834583103656769, - 0.016034189611673355, - 0.03622647747397423, - 0.01470652874559164, - -0.0769614726305008, - 0.10847531259059906, - 0.07698879390954971, - -0.028939982876181602, - 0.032963041216135025, - -0.02088911645114422, - 0.027025917544960976, - 0.09028632938861847, - -0.13116732239723206, - -0.08939984440803528, - 0.039894949644804, - 0.004922441206872463, - 0.005088046193122864, - 0.08056143671274185, - -0.0014945559669286013, - -0.0068378872238099575, - 0.09679040312767029, - -0.1027953177690506, - -0.07012687623500824, - -0.021615853533148766, - 0.05138783901929855, - -0.054190538823604584, - 0.039423245936632156, - 0.06339075416326523, - -0.013208101503551006, - -0.04085865616798401, - 0.06894146651029587, - 0.008153419941663742, - 0.020064057782292366, - 9.135343134403229e-05, - -0.014587385579943657, - 0.03393830358982086, - -0.03440434858202934, - -0.009682769887149334, - 0.04648035764694214, - 0.03619641438126564, - 0.051738858222961426, - 0.004564904607832432, - -0.034195683896541595, - -0.11797688156366348, - 0.010923285037279129, - 0.08597961813211441, - 0.05481487140059471, - -0.03411075472831726, - -0.03295685723423958, - -0.03991026058793068, - -0.05341802537441254, - 0.03717910498380661, - 0.014164534397423267, - 0.09592233598232269, - 0.005031134933233261, - -0.004775440786033869, - 0.13432247936725616, - -0.005793027579784393, - 0.00704911258071661, - -0.03959937393665314, - 0.0026470068842172623, - 0.02113662101328373, - 0.03298279270529747, - -0.058486148715019226, - -0.10803937166929245, - -0.007899343967437744, - 0.00174621120095253, - -0.011188600212335587, - 0.05900624021887779, - 0.03674301132559776, - 0.01179041713476181, - 0.028104089200496674, - -0.0358993224799633, - -0.010864193551242352, - -0.09579557180404663, - -0.04460500553250313, - -0.020270323380827904, - -0.032305702567100525, - -0.011009836569428444, - 0.09381204843521118, - 0.03437057510018349, - 0.032235510647296906, - -0.0011680247262120247, - -0.07181525230407715, - -0.05891504883766174, - 0.05968004837632179, - 0.06921112537384033, - 9.620329365134239e-05, - 0.01788141205906868, - 0.04756581783294678, - -0.002611130475997925, - 0.02369558997452259, - 0.07196229696273804, - 0.07695899158716202, - -0.01221809908747673, - -0.03209751099348068, - -0.058739446103572845, - 0.08297953754663467, - 0.05804389715194702, - -0.11153349280357361, - -0.06065557897090912, - -0.0368708074092865, - -0.05111505836248398, - 0.016518335789442062, - -0.02241358533501625, - 0.05150509998202324, - 0.003765938337892294, - -0.04792702943086624, - -0.07965269684791565, - -0.12038996815681458, - 0.06834189593791962, - -0.037262238562107086, - -0.028588397428393364, - -0.06584685295820236, - 0.028936758637428284, - 0.031042225658893585, - 0.05225653946399689, - 0.0010111918672919273, - 0.024980131536722183, - 0.03724896162748337, - -0.06834117323160172, - -0.020135698840022087, - 0.07245460152626038, - -0.001701096072793007, - -0.07039386034011841, - 0.020550265908241272, - -0.07188960909843445, - 0.10665726661682129, - -0.06960248947143555, - 0.15118984878063202, - -0.01805129647254944, - -0.07085611671209335, - -0.10296998918056488, - 0.017364734783768654, - -0.034966666251420975, - 0.034675318747758865, - 0.021118618547916412, - 0.046076975762844086, - 0.021706534549593925, - -0.04627785086631775, - 0.09942415356636047, - 0.03874754533171654, - -0.004360751248896122, - -0.06609224528074265, - -0.089366115629673, - -0.04460126906633377, - 0.033301226794719696, - -0.0055572260171175, - -0.05169789493083954, - 0.013971950858831406, - 0.016396237537264824, - 0.00987611897289753, - 0.04228082299232483, - 0.1234031617641449, - 0.060734257102012634, - -0.09420932829380035 - ] - }, - "p245_126.wav": { - "name": "p245", - "embedding": [ - 0.060276102274656296, - 0.10743342339992523, - 0.022987917065620422, - -0.021033264696598053, - -0.021439027041196823, - 0.07483284175395966, - -0.06769314408302307, - 0.09959492087364197, - -0.003704679664224386, - 0.06015157699584961, - -0.10082963109016418, - 0.08416327834129333, - -0.0033188601955771446, - -0.13983041048049927, - -0.02683335356414318, - 0.03296198695898056, - -0.039197247475385666, - 0.011853891424834728, - -0.028025781735777855, - -0.03097955510020256, - 0.0131643395870924, - 0.017187735065817833, - 0.055144302546978, - -0.004673599265515804, - 0.03625783324241638, - 0.04145725816488266, - 0.01909453794360161, - 0.0378464050590992, - 0.01077343337237835, - -0.036670975387096405, - -0.044595759361982346, - 0.07184606790542603, - -0.037301287055015564, - -0.006060857325792313, - 0.05372486636042595, - -0.021383030340075493, - 0.04996330291032791, - -0.08223645389080048, - -0.04609699174761772, - 0.033471666276454926, - -0.04277456924319267, - 0.06639231741428375, - 0.0306229367852211, - -0.006403905339539051, - 0.03139862045645714, - 0.04951004683971405, - -0.0010821273317560554, - -0.04407871887087822, - -0.07879745960235596, - 0.13030210137367249, - 0.03422272205352783, - 0.016165826469659805, - -0.0627593994140625, - -0.031019166111946106, - 0.08138328790664673, - -0.028556479141116142, - -0.04194782301783562, - 0.008330968208611012, - 0.051011376082897186, - 0.07240282744169235, - 0.010012256912887096, - -0.03621017187833786, - 0.03859952837228775, - 0.07630112022161484, - 0.012344986200332642, - 0.038448430597782135, - 0.09056162089109421, - 0.07001557946205139, - -0.009482350200414658, - 0.013522451743483543, - 0.04224702715873718, - 0.046314649283885956, - 0.03834046423435211, - -0.02975088357925415, - 0.03224742412567139, - -0.0036381403915584087, - -0.021601876243948936, - -0.006208098493516445, - -0.019239753484725952, - -0.006544872187077999, - 0.03382453694939613, - 0.02823467180132866, - 0.006495587527751923, - 0.010953640565276146, - -0.04835706949234009, - 0.04895298182964325, - -0.016508445143699646, - 0.07658147811889648, - 0.07289744913578033, - 0.027002310380339622, - 0.01608724519610405, - 0.029596593230962753, - -0.05557520315051079, - -0.08576392382383347, - 0.03198881819844246, - 0.016156647354364395, - -0.010536057874560356, - 0.035520993173122406, - 0.04566342383623123, - -0.031579237431287766, - 0.1086253970861435, - 0.03952968120574951, - -0.01291958149522543, - 0.01971152424812317, - -0.07607865333557129, - 0.06416411697864532, - 0.07246428728103638, - -0.01685943268239498, - 0.050458960235118866, - -0.01639564149081707, - 0.06503182649612427, - 0.06319156289100647, - -0.10356451570987701, - -0.052363067865371704, - 0.005080516450107098, - 0.01879105716943741, - 0.03251377493143082, - 0.08255527913570404, - -0.03586138039827347, - 0.03309435397386551, - 0.06900020688772202, - -0.049934666603803635, - -0.02494620904326439, - 0.015644891187548637, - 0.007722519338130951, - -0.02038024365901947, - 0.02241111546754837, - 0.03562706708908081, - 0.017094654962420464, - -0.04560891538858414, - 0.043694984167814255, - 0.0060726492665708065, - 0.005004418548196554, - -0.035136040300130844, - 0.007139201276004314, - -0.005530822090804577, - -0.020593177527189255, - -0.028182528913021088, - 0.01247173361480236, - 0.05715559050440788, - 0.006377595476806164, - 0.037852250039577484, - -0.043610453605651855, - -0.09432698786258698, - -0.0010650096228346229, - -0.009283925406634808, - 0.024017006158828735, - 0.02309003286063671, - -0.041179824620485306, - -0.052725329995155334, - 0.01539422757923603, - -0.0031656306236982346, - -0.004998265765607357, - 0.02614317461848259, - 0.04530863091349602, - -0.01980159431695938, - 0.06348380446434021, - 0.002737609203904867, - 0.007668794598430395, - -0.02342359535396099, - -0.04502991959452629, - 0.018195219337940216, - 0.03136162459850311, - -0.010419152677059174, - -0.07989799976348877, - -0.006481997203081846, - -0.03328252583742142, - -0.013683601282536983, - 0.03470136970281601, - 0.05236878618597984, - -0.0052366117015480995, - -0.00716061657294631, - -0.07312414050102234, - 0.0032258755527436733, - -0.07030171900987625, - -0.06507742404937744, - 0.025859151035547256, - 0.040030330419540405, - -0.017705120146274567, - 0.07526713609695435, - 0.032592982053756714, - 0.04028020054101944, - -0.03211855888366699, - -0.043448612093925476, - -0.0046804845333099365, - 0.048828691244125366, - 0.05837429687380791, - 0.01816587708890438, - 0.04255989193916321, - 0.031063003465533257, - -0.009992222301661968, - 0.06856922805309296, - 0.050552479922771454, - 0.04652805253863335, - -0.009125716984272003, - 0.009852642193436623, - 0.012126500718295574, - 0.06528227031230927, - 0.01505771093070507, - -0.0673830509185791, - -0.05860796198248863, - -0.0058288476429879665, - -0.04162576422095299, - 0.031100472435355186, - 0.03190494328737259, - 0.02960197627544403, - 0.026081394404172897, - -0.0081310560926795, - -0.04280052334070206, - -0.07205747812986374, - 0.028458010405302048, - -0.04414428770542145, - -0.026520688086748123, - -0.03470790013670921, - 0.051165830343961716, - 0.09821806848049164, - -0.006167824380099773, - -0.0010318731656298041, - -0.006127180065959692, - 0.0061864531598985195, - -0.012101506814360619, - -0.04184962809085846, - -0.0015382766723632812, - 0.03160073608160019, - -0.06789115071296692, - 0.03475356101989746, - -0.07483793795108795, - 0.05938262864947319, - -0.003016571281477809, - 0.0904371440410614, - 0.03648079186677933, - -0.02464001625776291, - -0.07144004106521606, - 0.025891322642564774, - -0.009742679074406624, - 0.03344042971730232, - 0.000156499445438385, - 0.014185163192451, - 0.02812061831355095, - -0.06517656147480011, - 0.06944935023784637, - 0.03066737949848175, - -0.07193551957607269, - -0.06680554151535034, - -0.009874850511550903, - -0.030184758827090263, - 0.0028842329047620296, - 0.0014550735941156745, - -0.053957514464855194, - -0.008624620735645294, - 0.023186035454273224, - 0.01699202135205269, - 0.0342695377767086, - 0.0812079906463623, - 0.014652922749519348, - -0.05705541372299194 - ] - }, - "p245_343.wav": { - "name": "p245", - "embedding": [ - 0.04048285260796547, - 0.050855204463005066, - -0.04111466184258461, - -0.01708024926483631, - -0.045686352998018265, - 0.041656494140625, - -0.1261962652206421, - 0.07455097138881683, - -0.005745976231992245, - 0.15562069416046143, - -0.02061404287815094, - 0.11013163626194, - 0.007303598336875439, - -0.10282115638256073, - 0.018437756225466728, - 0.024569332599639893, - -0.02578464150428772, - -0.004576869308948517, - -0.01225886307656765, - -0.07069813460111618, - 0.028024721890687943, - 0.030405886471271515, - 0.02746352180838585, - -0.06279630959033966, - 0.01839635893702507, - 0.06060687080025673, - -0.013895709998905659, - -0.004747550003230572, - -0.010169142857193947, - -0.07565844058990479, - -0.01652393490076065, - 0.08838427066802979, - -0.04680223390460014, - -0.016897987574338913, - 0.01990644633769989, - -0.017104018479585648, - -0.026446189731359482, - -0.03877663612365723, - 0.01733200065791607, - 0.04610736668109894, - -0.043801404535770416, - 0.08983806520700455, - 0.020851127803325653, - -0.013959072530269623, - 0.029988856986165047, - -0.05556454882025719, - -0.058505598455667496, - 0.0375538133084774, - -0.04095020890235901, - 0.11656245589256287, - 0.08041796088218689, - 0.0031306305900216103, - -0.06218336150050163, - -0.004902448505163193, - 0.057975783944129944, - 0.00917382724583149, - -0.10093078762292862, - -0.019349712878465652, - -0.009282464161515236, - 0.09114935994148254, - -0.001632831059396267, - -0.05908629298210144, - 0.031125348061323166, - 0.08755418658256531, - 0.02008543536067009, - 0.02993987500667572, - 0.09234490990638733, - 0.08019337058067322, - -0.014564476907253265, - 0.008977140299975872, - 0.03931872546672821, - 0.08820055425167084, - 0.05184897407889366, - -0.02005847916007042, - 0.04542212188243866, - -0.030288120731711388, - -0.012041673064231873, - -0.058913350105285645, - -0.010794056579470634, - -0.05675097927451134, - -0.053684256970882416, - -0.026349803432822227, - 0.010762011632323265, - 0.089112788438797, - -0.02302808128297329, - -0.027715425938367844, - 0.06155753880739212, - -0.05336911231279373, - 0.03030720353126526, - 0.047166936099529266, - 0.010137850418686867, - 0.011287245899438858, - -0.08667226880788803, - -0.05202798545360565, - 0.02901623025536537, - -0.010442557744681835, - 0.05318186804652214, - 0.05278075486421585, - 0.03072032891213894, - 0.007445366121828556, - 0.07861006259918213, - 0.06375391036272049, - 0.0005516544915735722, - -0.026715759187936783, - -0.06337056308984756, - 0.09740497171878815, - 0.10956341028213501, - -0.04964444041252136, - 0.0407428964972496, - -0.0003967657685279846, - 0.039645757526159286, - -0.01401291973888874, - -0.10797692835330963, - -0.03048950433731079, - 0.0006152484565973282, - 0.050987523049116135, - 0.030641769990324974, - 0.10672831535339355, - 0.029062816873192787, - 0.0520622543990612, - 0.07446759194135666, - -0.028189940378069878, - -0.05075071007013321, - -0.05501377955079079, - 0.03480115532875061, - -0.09697028249502182, - 0.06871119141578674, - 0.03955377638339996, - 0.027193769812583923, - 0.005783365108072758, - 0.07503387331962585, - 0.01007310301065445, - 0.009224120527505875, - -0.04262863099575043, - 0.006299678236246109, - 0.025967424735426903, - -0.006247186101973057, - 0.043900266289711, - 0.05639313906431198, - -0.008831813000142574, - 0.10313312709331512, - 0.033233642578125, - 0.010255120694637299, - -0.09374222904443741, - 0.04032016545534134, - 0.008093034848570824, - 0.04000284895300865, - -0.0517435185611248, - -0.032055214047431946, - 0.02673550881445408, - -0.0746106207370758, - -0.0048705581575632095, - -0.018290644511580467, - 0.061789728701114655, - 0.013421861454844475, - -0.016090987250208855, - 0.08622059971094131, - 0.015592485666275024, - -0.007235540077090263, - 0.018917901441454887, - -0.005323478952050209, - -0.0019005760550498962, - 0.07276856899261475, - -0.13172996044158936, - -0.06415256857872009, - -0.002425233833491802, - 0.01210082694888115, - 0.027545087039470673, - 0.02959677204489708, - 0.10955505073070526, - -0.03130568936467171, - 0.04264047369360924, - -0.011558061465620995, - -0.0036917943507432938, - -0.05989084765315056, - -0.05101752281188965, - -0.021976713091135025, - -0.08806974440813065, - -0.058260489255189896, - 0.0745333731174469, - -0.025795953348279, - 0.049068886786699295, - -0.052847445011138916, - -0.03229995444417, - -0.05956869199872017, - 0.022989457473158836, - 0.026988033205270767, - -0.04920592159032822, - -0.01300679799169302, - 0.10437968373298645, - 0.023749232292175293, - -0.02082212083041668, - 0.04441311955451965, - 0.07953150570392609, - -0.07751595228910446, - 0.0014803651720285416, - -0.0711224228143692, - 0.08944322168827057, - 0.09335390478372574, - -0.025321798399090767, - -0.06632337719202042, - -0.07104109972715378, - -0.06386034190654755, - 0.04492798447608948, - -0.04763428866863251, - -0.01699564978480339, - 0.032989297062158585, - -0.038258809596300125, - -0.05784458667039871, - -0.0793478935956955, - 0.08160287886857986, - -0.05243944376707077, - 0.0033914465457201004, - -0.052534617483615875, - 0.015824686735868454, - 0.02074095606803894, - 0.06124778836965561, - -0.0765281394124031, - 0.051489442586898804, - 0.033592574298381805, - -0.031927138566970825, - 0.021895835176110268, - 0.0362342894077301, - 0.03668513149023056, - -0.0640970841050148, - -0.05757332593202591, - -0.055847086012363434, - 0.037555575370788574, - -0.060103073716163635, - 0.05226214975118637, - 0.022088661789894104, - -0.036174941807985306, - -0.051780179142951965, - -0.00021217763423919678, - -0.016391150653362274, - 0.025964174419641495, - 0.09227732568979263, - 0.08194012194871902, - 0.03681248053908348, - -0.05572652444243431, - 0.05870746076107025, - 0.053479552268981934, - 0.031480200588703156, - -0.052254222333431244, - 0.017325764521956444, - -0.013203416019678116, - 0.04549732059240341, - 0.03555392101407051, - -0.06641463190317154, - 0.062012121081352234, - 0.003890520893037319, - 0.003987109288573265, - 0.028409229591488838, - 0.036373719573020935, - 0.04860718920826912, - -0.08962382376194 - ] - }, - "p245_072.wav": { - "name": "p245", - "embedding": [ - 0.05091477558016777, - 0.11082984507083893, - 0.051068346947431564, - -6.896443665027618e-05, - 0.004510428756475449, - 0.02594395913183689, - -0.04000703990459442, - 0.08396007865667343, - 0.05519246309995651, - 0.03307126834988594, - -0.09776068478822708, - 0.0557841882109642, - -0.061339594423770905, - -0.10850565135478973, - -0.00012551993131637573, - 0.030610868707299232, - -0.0343116819858551, - 0.0137474425137043, - -0.04527265951037407, - -0.0024438651744276285, - -0.024632621556520462, - -0.026822201907634735, - 0.02566588670015335, - 0.01287630945444107, - -0.020881423726677895, - 0.012098722159862518, - -0.032319575548172, - 0.012072020210325718, - -0.00538181746378541, - -0.008382931351661682, - 0.013652271591126919, - 0.04279010370373726, - -0.012426517903804779, - 0.010377652943134308, - 0.020282883197069168, - -0.02840505540370941, - 0.003805076703429222, - -0.03410978615283966, - -0.06279856711626053, - 0.04059663787484169, - -0.050617292523384094, - 0.04934890940785408, - 0.040801938623189926, - -0.04486571252346039, - 0.07830934226512909, - 0.04147917032241821, - -0.05824130028486252, - -0.005142692476511002, - -0.10169768333435059, - 0.09046393632888794, - 0.01140446774661541, - 0.012037391774356365, - -0.06532743573188782, - 0.013636242598295212, - 0.06930286437273026, - -0.040415309369564056, - -0.044998809695243835, - -0.028575116768479347, - 0.04460948333144188, - 0.024814743548631668, - 0.01968178153038025, - -0.020989829674363136, - -0.023300884291529655, - 0.02660304680466652, - 0.06825980544090271, - 0.02043815143406391, - 0.06954092532396317, - 0.0983593612909317, - -0.05290396884083748, - 0.028369782492518425, - 0.032488152384757996, - -0.0331563875079155, - 0.052240923047065735, - 0.002033014316111803, - -0.00991674792021513, - -0.015759840607643127, - 0.021839089691638947, - -0.021720899268984795, - 0.011581401340663433, - -0.0016735438257455826, - 0.0380132682621479, - 0.0005111955106258392, - 0.014836706221103668, - 0.026892144232988358, - -0.03513069450855255, - -0.009438976645469666, - 0.055736325681209564, - 0.060582391917705536, - 0.06524187326431274, - 0.05387242138385773, - -0.002449044259265065, - 0.07538674771785736, - -0.058331429958343506, - -0.07883276045322418, - -0.013998386450111866, - -0.024245578795671463, - 0.010735786519944668, - 0.012819748371839523, - 0.0171203650534153, - -0.0027646017260849476, - 0.08516664803028107, - 0.0024237781763076782, - 0.0030618617311120033, - 0.01611291989684105, - -0.07569067180156708, - 0.014593832194805145, - 0.03155166283249855, - -0.021580228582024574, - 0.04565523564815521, - 0.038734547793865204, - 0.05454707145690918, - 0.05893401801586151, - -0.026516977697610855, - 0.01660340465605259, - 0.010513239540159702, - 0.041991882026195526, - 0.020761560648679733, - 0.09022515267133713, - 0.00021610985277220607, - 0.03162631392478943, - 0.11191713809967041, - -0.05030633881688118, - 0.03419942408800125, - 0.0578744001686573, - -0.014067539945244789, - -0.007369965314865112, - 0.04264577478170395, - 0.007035624235868454, - 0.003830372355878353, - -0.009351001121103764, - 0.043671220541000366, - 0.029724854975938797, - -0.001637422014027834, - -0.06448015570640564, - 0.013684873469173908, - 0.016040632501244545, - 0.0004542004317045212, - -0.0029164364095777273, - 0.017174653708934784, - 0.05282069742679596, - -0.009367251768708229, - 0.048460058867931366, - -0.04815210774540901, - -0.03313309699296951, - 0.027842078357934952, - -0.005812202580273151, - 0.02107108384370804, - 0.04077579826116562, - -0.016027728095650673, - -0.059943415224552155, - 0.02154986746609211, - 0.05715598538517952, - -0.020085208117961884, - 0.051889996975660324, - 0.05069435387849808, - -0.014212406240403652, - 0.05441562086343765, - 0.014320979826152325, - 0.03053002804517746, - -0.054683975875377655, - -0.08944999426603317, - -0.023147616535425186, - 0.040887556970119476, - -0.06970347464084625, - -0.014076425693929195, - -0.02496548369526863, - -0.022463548928499222, - 0.018935494124889374, - 0.0006937161087989807, - 0.0747917890548706, - -0.030357692390680313, - -0.010939407162368298, - -0.050109103322029114, - 0.024446573108434677, - -0.005866717547178268, - -0.11105966567993164, - 0.051256075501441956, - 0.02396795153617859, - 0.028293127194046974, - 0.04782991111278534, - -0.0033507151529192924, - 0.013028092682361603, - -0.03827323392033577, - -0.06591889262199402, - 0.010163530707359314, - 0.04859050735831261, - 0.015476723201572895, - -0.010164043866097927, - 0.056660957634449005, - 0.04535314440727234, - -0.049201227724552155, - 0.05555194988846779, - -0.00920093059539795, - 0.05638732761144638, - -0.056285761296749115, - 0.01770615205168724, - 0.027490660548210144, - 0.029073908925056458, - 0.052364032715559006, - -0.04126725718379021, - -0.11722627282142639, - -0.021119151264429092, - -0.02100757136940956, - 0.0005582878366112709, - -0.0005367044359445572, - 0.0036107914056628942, - 0.048533424735069275, - -0.004896373022347689, - -0.007967781275510788, - -0.1081191897392273, - -0.003447897732257843, - 0.0002133697271347046, - 0.009057855233550072, - -0.034529320895671844, - 0.013528825715184212, - -0.00154181569814682, - 0.0035048341378569603, - -0.02506220154464245, - 0.02238447777926922, - 0.001650981605052948, - 0.013996691443026066, - -0.05007544159889221, - -0.005328020080924034, - 0.04637805372476578, - 0.007008839398622513, - -0.029255885630846024, - -0.05403870344161987, - 0.054928045719861984, - 0.045772429555654526, - 0.08533405512571335, - 0.031425803899765015, - 0.014947559684515, - -0.02466295287013054, - 0.012441747821867466, - -0.032198794186115265, - 0.029913613572716713, - -0.02174210734665394, - 0.028558528050780296, - 0.05295272916555405, - 0.007579335011541843, - 0.060258980840444565, - 0.03201170638203621, - -0.017680102959275246, - -0.01360813993960619, - -0.0015189871191978455, - -0.08491042256355286, - -0.028589241206645966, - -0.00767325796186924, - -0.03906512260437012, - -0.007060392759740353, - 0.012488571926951408, - 0.054467055946588516, - 0.03447853773832321, - 0.07207818329334259, - 0.020658820867538452, - -0.030700940638780594 - ] - }, - "p245_371.wav": { - "name": "p245", - "embedding": [ - 0.03227641433477402, - 0.07893455028533936, - -0.003008049912750721, - -0.02006196603178978, - -0.012401927262544632, - 0.020664788782596588, - -0.13638852536678314, - 0.07639500498771667, - -0.022286780178546906, - 0.1394807994365692, - -0.05815175175666809, - 0.09103092551231384, - -0.017967024818062782, - -0.13092158734798431, - -0.026399848982691765, - 0.03507838025689125, - -0.07203131169080734, - -0.009481187909841537, - -0.010336998850107193, - -0.06760882586240768, - 0.03291138634085655, - 0.006558132357895374, - 0.04447223246097565, - -0.06333409249782562, - -0.005651502870023251, - 0.06446963548660278, - 0.025199880823493004, - 0.015213461592793465, - 0.021492887288331985, - -0.025948047637939453, - 0.017750808969140053, - 0.06744347512722015, - -0.010210562497377396, - 0.007555130869150162, - 0.051741406321525574, - 0.0046320101246237755, - -0.013758942484855652, - -0.015026512555778027, - 0.022221513092517853, - 0.0648978129029274, - -0.03392181172966957, - 0.08260823786258698, - 0.04356994479894638, - 0.004897799808532, - 0.06078849732875824, - -0.0277726911008358, - -0.0462493970990181, - 0.01788242533802986, - -0.05303872004151344, - 0.1206045150756836, - 0.06604209542274475, - -0.004654387012124062, - -0.06057612597942352, - 0.010613691061735153, - 0.09292103350162506, - -0.0040059383027255535, - -0.1242314949631691, - -0.00563264824450016, - 0.03555014356970787, - 0.10576723515987396, - -0.03464776650071144, - -0.04644881188869476, - 0.0024156481958925724, - 0.10119637846946716, - -0.0018182694911956787, - 0.06835620105266571, - 0.09282024204730988, - 0.07859265804290771, - 0.004812122788280249, - 0.007401864975690842, - 0.054654866456985474, - 0.06204240769147873, - 0.017942586913704872, - -0.03141889348626137, - 0.05323202908039093, - -0.04748234152793884, - -0.007433713413774967, - -0.024028928950428963, - -0.003700780216604471, - -0.05373591184616089, - -0.05975489690899849, - -0.021994510665535927, - 0.005917379632592201, - 0.04507405683398247, - -0.009225860238075256, - 0.0019493326544761658, - 0.02532758191227913, - -0.020517483353614807, - 0.0316905602812767, - 0.0638870894908905, - 0.004317956045269966, - 0.0017329230904579163, - -0.04223298281431198, - -0.06712155044078827, - -0.007157105952501297, - -0.021823067218065262, - 0.06653784215450287, - 0.03614731505513191, - 0.03914476931095123, - 0.030541783198714256, - 0.0668286606669426, - 0.07110290229320526, - -0.023772098124027252, - -0.010852713137865067, - -0.07836492359638214, - 0.0844816267490387, - 0.10738882422447205, - -0.03860627859830856, - 0.02868693321943283, - -0.021105684340000153, - 0.04606686905026436, - -0.00011913105845451355, - -0.08615939319133759, - -0.025819644331932068, - 0.018519770354032516, - 0.07057251036167145, - 0.018239911645650864, - 0.10097189247608185, - 0.008362851105630398, - 0.016340095549821854, - 0.08805924654006958, - -0.0026069916784763336, - -0.042908355593681335, - -0.07718533277511597, - 0.042381614446640015, - -0.07085731625556946, - 0.05826074630022049, - 0.03642083704471588, - 0.029401075094938278, - -0.005581636913120747, - 0.07468406856060028, - 0.0231492817401886, - 0.0003915046399924904, - -0.05088362470269203, - 0.005963008850812912, - 0.06247413903474808, - -0.006602025590837002, - 0.050059158354997635, - 0.058450911194086075, - 0.020052675157785416, - 0.09255939722061157, - 0.053725678473711014, - -0.008070921525359154, - -0.060385435819625854, - 0.022250596433877945, - 0.01926630735397339, - 0.020541919395327568, - -0.035011403262615204, - -0.04660602658987045, - -0.009186917915940285, - -0.06800634413957596, - -0.0007893447764217854, - -0.03717979043722153, - 0.07326235622167587, - 0.011153215542435646, - -0.022582361474633217, - 0.1033172607421875, - 0.0005239443853497505, - -0.015004586428403854, - 0.0018104743212461472, - -0.021707868203520775, - -0.0069784484803676605, - 0.05017644912004471, - -0.16441015899181366, - -0.053960446268320084, - -0.013316246680915356, - 0.03525568172335625, - 0.01271000038832426, - -0.0021763681434094906, - 0.07563194632530212, - -0.020028769969940186, - 0.039418213069438934, - -0.0026795826852321625, - 0.008740264922380447, - -0.0803966149687767, - -0.06385741382837296, - -0.035338547080755234, - -0.07374973595142365, - -0.03639139235019684, - 0.05982355400919914, - -0.03856709972023964, - 0.04521141201257706, - -0.011947247199714184, - -0.06854445487260818, - -0.03994475677609444, - 0.06963108479976654, - 0.0475093349814415, - -0.03724616765975952, - 0.020763475447893143, - 0.0793621614575386, - -0.0019649025052785873, - 0.009077351540327072, - 0.024843920022249222, - 0.08805812895298004, - -0.0656127855181694, - -0.0009819060796871781, - -0.07022621482610703, - 0.046319104731082916, - 0.0814773365855217, - -0.06484180688858032, - -0.06355142593383789, - -0.05763907730579376, - -0.039179425686597824, - 0.036811403930187225, - -0.049308329820632935, - -0.02700643055140972, - 0.0033810893073678017, - -0.022560294717550278, - -0.06166971102356911, - -0.08655437082052231, - 0.04492838680744171, - -0.04982927441596985, - -0.0020562559366226196, - -0.040295813232660294, - 0.029725197702646255, - 0.03380037844181061, - 0.030435828492045403, - -0.05710452422499657, - 0.05291185900568962, - 0.005867356434464455, - -0.04476577416062355, - -0.0017581810243427753, - -0.0075097717344760895, - 0.04464172571897507, - -0.04374231398105621, - -0.04347284883260727, - -0.07547937333583832, - 0.053342245519161224, - -0.053910695016384125, - 0.06947334855794907, - 0.009540295228362083, - -0.04560142010450363, - -0.016805680468678474, - -0.023156872019171715, - -0.038032419979572296, - 0.037289898842573166, - 0.07728054374456406, - 0.05242393910884857, - 0.007996432483196259, - -0.03643183782696724, - 0.09355387836694717, - 0.03745007514953613, - 0.01697434112429619, - -0.04983559250831604, - 0.03119225986301899, - -0.03829854726791382, - 0.012120218947529793, - 0.03494340926408768, - -0.07356956601142883, - 0.029912598431110382, - -0.015489637851715088, - -0.00717683881521225, - 0.040845803916454315, - 0.06143088638782501, - 0.03821150213479996, - -0.05639513581991196 - ] - }, - "p245_237.wav": { - "name": "p245", - "embedding": [ - 0.062478117644786835, - 0.08805671334266663, - -0.02701466903090477, - 0.03598133474588394, - -0.07690879702568054, - 0.06420727074146271, - -0.12137028574943542, - 0.15541139245033264, - -0.03752361610531807, - 0.12034769356250763, - -0.05400796979665756, - 0.15097662806510925, - -0.011816158890724182, - -0.16544224321842194, - -0.009200764819979668, - 0.05478277802467346, - -0.03287597373127937, - -0.02415657415986061, - -0.03408486023545265, - -0.025752220302820206, - 0.03161536902189255, - 0.016185950487852097, - 0.048119641840457916, - -0.004026359878480434, - 0.027900943532586098, - 0.07276415824890137, - -0.005021668039262295, - 0.037588223814964294, - 0.013086924329400063, - -0.06067211925983429, - -0.053979743272066116, - 0.08161202073097229, - -0.061278510838747025, - 0.0006353624630719423, - 0.05743684619665146, - -0.03418692946434021, - -0.016989169642329216, - -0.07235880941152573, - -0.024300675839185715, - -0.005221587140113115, - -0.028233444318175316, - 0.07381439208984375, - 0.025142934173345566, - -0.046350352466106415, - 0.043835945427417755, - 0.010748608969151974, - -0.012153811752796173, - -0.021170055493712425, - -0.11025504767894745, - 0.13349317014217377, - 0.069571852684021, - 0.002749471925199032, - -0.08233949542045593, - -0.048098716884851456, - 0.104718878865242, - -0.013645684346556664, - -0.10558249056339264, - -0.03026825562119484, - 0.057154491543769836, - 0.14035625755786896, - -0.036229223012924194, - -0.027161872014403343, - 0.03229169920086861, - 0.09954825043678284, - 0.0756656602025032, - 0.08606154471635818, - 0.08958965539932251, - 0.12150564789772034, - -0.03269243612885475, - 0.04268181324005127, - 0.04451560229063034, - 0.08201420307159424, - 0.04899541288614273, - -0.00022266758605837822, - 0.02575509063899517, - -0.013191865757107735, - -0.01470563467592001, - -0.019229203462600708, - -0.029503345489501953, - -0.03195473551750183, - -0.011629972606897354, - 0.009657690301537514, - 0.0330524742603302, - 0.029375743120908737, - -0.031165163964033127, - 0.08170977234840393, - 0.04960762336850166, - -0.01955675147473812, - 0.053336236625909805, - 0.021318037062883377, - -0.0055083041079342365, - 0.07204363495111465, - -0.10473954677581787, - -0.09303762763738632, - 0.042858708649873734, - 0.0008611101657152176, - 0.031141679733991623, - 0.07449442148208618, - 0.04478573799133301, - -0.008067564107477665, - 0.11609692871570587, - 0.07905703037977219, - -0.009608324617147446, - 0.033123329281806946, - -0.06986745446920395, - 0.1358831226825714, - 0.09568972885608673, - -0.033319856971502304, - 0.05726880580186844, - -0.05880068242549896, - 0.08086007833480835, - 0.05691419541835785, - -0.1282206028699875, - -0.07169242203235626, - 0.013588154688477516, - -0.00384822441264987, - -0.017541950568556786, - 0.1223708838224411, - -0.0063660042360424995, - 0.06443572044372559, - 0.10724899917840958, - -0.08622677624225616, - -0.057326652109622955, - -0.01775958761572838, - 0.051261596381664276, - -0.0701296254992485, - 0.06919596344232559, - 0.05582398921251297, - -0.009145856834948063, - 0.02050151117146015, - 0.0777398869395256, - -0.01273889560252428, - -0.009545340202748775, - 0.046829573810100555, - -0.04941624402999878, - 0.011287465691566467, - -0.01271025463938713, - -0.006767892278730869, - 0.045659709721803665, - 0.02967599779367447, - 0.041732121258974075, - -0.0246922355145216, - 0.005342630669474602, - -0.10961102694272995, - 0.01791636273264885, - 0.035969555377960205, - 0.07793932408094406, - -0.014361567795276642, - -0.030218031257390976, - -0.029936406761407852, - -0.0731051042675972, - 0.0035858757328242064, - -0.005743669345974922, - 0.059719935059547424, - -0.03382924944162369, - 0.01874733529984951, - 0.07892933487892151, - 0.04624543339014053, - 0.008689455687999725, - -0.05614771693944931, - -0.03463371470570564, - 0.028909631073474884, - 0.059867795556783676, - -0.07605750113725662, - -0.0788099616765976, - -0.02278270199894905, - 0.02078505977988243, - -0.04565538465976715, - 0.0618792399764061, - 0.04627395421266556, - 0.02144698053598404, - 0.024966023862361908, - -0.06481112539768219, - 0.018386628478765488, - -0.09612500667572021, - -0.059061888605356216, - -0.009723568335175514, - -0.01764582097530365, - -0.03347139433026314, - 0.06480272859334946, - 0.03506843000650406, - 0.0765841156244278, - -0.02614673599600792, - -0.049033064395189285, - -0.08097899705171585, - 0.04008316993713379, - 0.04488355293869972, - -0.012902098707854748, - 0.045022401958703995, - 0.06370033323764801, - -0.01737222447991371, - 0.04609743505716324, - 0.06887859851121902, - 0.07918258756399155, - -0.026797780767083168, - 0.002684700768440962, - -0.0785614401102066, - 0.09555377066135406, - 0.10551431775093079, - -0.08648798614740372, - -0.09077871590852737, - -0.04114428535103798, - -0.06787050515413284, - 0.03233399987220764, - -0.036318860948085785, - -0.0015345574356615543, - 0.04481567442417145, - 0.003793739713728428, - -0.10578152537345886, - -0.10483092069625854, - 0.10364645719528198, - -0.0776587724685669, - 0.008925843052566051, - -0.0856873095035553, - 0.04074029624462128, - 0.09557828307151794, - 0.008781029842793941, - -0.04159076511859894, - -0.014469398185610771, - 0.04487713426351547, - -0.00967913307249546, - 0.021334808319807053, - 0.05455067753791809, - 0.05536310374736786, - -0.1128218024969101, - -0.0036477381363511086, - -0.04945822060108185, - 0.041252292692661285, - -0.03801654651761055, - 0.16559556126594543, - 0.012511742301285267, - -0.03287249058485031, - -0.0847829058766365, - 0.0574336051940918, - -0.010976465418934822, - 0.04984276741743088, - 0.041278913617134094, - 0.07160691171884537, - 0.02191673219203949, - -0.09028167277574539, - 0.1194876953959465, - 0.03112691268324852, - -0.05098661035299301, - -0.08122666925191879, - -0.044997625052928925, - -0.04622385650873184, - 0.03200463950634003, - 0.01595987007021904, - -0.09011881053447723, - -0.025714095681905746, - 0.018508657813072205, - -0.007140908390283585, - 0.061176598072052, - 0.14482010900974274, - 0.06545878201723099, - -0.09433522820472717 - ] - }, - "p245_150.wav": { - "name": "p245", - "embedding": [ - 0.05445127934217453, - 0.09504492580890656, - -0.017335087060928345, - 0.0005590729415416718, - -0.006677444092929363, - 0.04324043542146683, - -0.1598438173532486, - 0.1521265208721161, - 0.015800952911376953, - 0.1326429843902588, - -0.048835158348083496, - 0.0989331379532814, - -0.005136210471391678, - -0.14589878916740417, - -0.04850536957383156, - 0.011442350223660469, - -0.030728237703442574, - 0.014277603477239609, - -0.05103939399123192, - -0.01851794309914112, - 0.045180030167102814, - 0.03869707137346268, - 0.033563558012247086, - -0.06366416066884995, - 0.025235624983906746, - 0.029222752898931503, - 0.017475837841629982, - 0.06741766631603241, - 0.02338658645749092, - -0.06970561295747757, - 0.024240758270025253, - 0.09504877775907516, - -0.05197633430361748, - 0.033248111605644226, - 0.07017750293016434, - -0.013887058012187481, - -0.024386439472436905, - -0.048670120537281036, - -0.01240481436252594, - 0.029740747064352036, - -0.024747541174292564, - 0.07934467494487762, - 0.01621522381901741, - -0.005670198705047369, - 0.053112003952264786, - 0.03493073582649231, - 0.009446266107261181, - -0.056866712868213654, - -0.08870917558670044, - 0.17104384303092957, - 0.042898599058389664, - 0.01768159680068493, - -0.10744079947471619, - -0.05929476022720337, - 0.06378844380378723, - -0.047138895839452744, - -0.07429944723844528, - -0.03783268854022026, - 0.04104207083582878, - 0.11972683668136597, - -0.02845608815550804, - -0.05077710002660751, - 0.03715653344988823, - 0.10548093914985657, - 0.05520070344209671, - 0.043782852590084076, - 0.09991559386253357, - 0.10533083975315094, - -0.01836565136909485, - 0.04458494111895561, - -0.00521993450820446, - 0.06749764829874039, - 0.03679005801677704, - 0.01765529438853264, - 0.02865200862288475, - -0.008177322335541248, - -0.007171163335442543, - -0.03467854857444763, - -0.04015803709626198, - -0.0035336739383637905, - 0.018306873738765717, - 0.04459645599126816, - 0.002496963134035468, - 0.061544694006443024, - -0.03148921951651573, - 0.050127506256103516, - 0.0038662105798721313, - -0.03732423856854439, - 0.05701339617371559, - 0.03474909067153931, - 0.04054331034421921, - 0.027622219175100327, - -0.08793716132640839, - -0.11432887613773346, - 0.0007522208616137505, - -0.01896682381629944, - 0.003803498111665249, - 0.038041431456804276, - 0.02822987735271454, - -0.012858950532972813, - 0.10713546723127365, - 0.03951896354556084, - -0.05070802941918373, - 0.01302795298397541, - -0.07655227929353714, - 0.10519850254058838, - 0.07445921003818512, - -0.012636429630219936, - 0.033837221562862396, - -0.09579169750213623, - 0.03084684908390045, - 0.0460226908326149, - -0.11251669377088547, - -0.08904886990785599, - 0.05482660233974457, - 0.026281513273715973, - 0.014545917510986328, - 0.12108919024467468, - 0.01869647018611431, - 0.03808961808681488, - 0.09633824229240417, - -0.06543208658695221, - -0.042110469192266464, - -0.03323754668235779, - 0.0576302707195282, - -0.05046115070581436, - 0.052969273179769516, - 0.030514420941472054, - 0.0023071318864822388, - -0.007951482199132442, - 0.08881241083145142, - 0.0023535944055765867, - 0.020196449011564255, - -0.021460825577378273, - -0.010890054516494274, - 0.04041213542222977, - -0.038867317140102386, - -0.013536549173295498, - 0.009058648720383644, - 0.07553917914628983, - 0.05397619679570198, - 0.023913858458399773, - -0.06078393757343292, - -0.08743506669998169, - -0.0055031250230968, - 0.02007358893752098, - 0.07694711536169052, - -0.040580905973911285, - -0.026430224999785423, - -0.04195965453982353, - -0.02747427113354206, - 0.0014347780961543322, - -0.00816923938691616, - 0.05164854973554611, - 0.004903111141175032, - -0.001956344349309802, - 0.1120600700378418, - -0.01691797375679016, - 0.02195458672940731, - -0.00655318982899189, - 0.0007120408117771149, - -0.018527142703533173, - 0.03203348070383072, - -0.05274778604507446, - -0.07529155910015106, - -0.009422887116670609, - 0.0026912791654467583, - -0.01571531407535076, - 0.054356373846530914, - 0.036526329815387726, - 0.019234666600823402, - 0.0369151309132576, - -0.053116705268621445, - -0.03291326388716698, - -0.10476283729076385, - -0.057671964168548584, - -0.008893082849681377, - -0.0005948860198259354, - -0.04530104622244835, - 0.07100029289722443, - 0.018888205289840698, - 0.05772804468870163, - -0.01787591353058815, - -0.06595436483621597, - -0.07405616343021393, - 0.04277785122394562, - 0.06701213121414185, - -0.01245732419192791, - 0.018164178356528282, - 0.03243707865476608, - -0.009980788454413414, - 0.06199754774570465, - 0.0889868512749672, - 0.04605251923203468, - -0.022417619824409485, - -0.007732506841421127, - -0.09337057173252106, - 0.1175006777048111, - 0.07790759950876236, - -0.06739962846040726, - -0.08892644941806793, - -0.00017318621394224465, - -0.08638440817594528, - -0.031016670167446136, - -0.026220280677080154, - 0.025334432721138, - 0.051826294511556625, - -0.015674695372581482, - -0.0880260020494461, - -0.07810349017381668, - 0.050383590161800385, - -0.09572884440422058, - -0.008797546848654747, - -0.045625604689121246, - 0.020948154851794243, - 0.10767039656639099, - 0.03592601791024208, - -0.0036805658601224422, - -0.05265194922685623, - 0.03810866177082062, - -0.038443513214588165, - -0.01184895634651184, - 0.023958120495080948, - 0.019777752459049225, - -0.08414611220359802, - 0.03260072320699692, - -0.03366226702928543, - 0.03722888231277466, - -0.061745695769786835, - 0.09403915703296661, - 0.018213409930467606, - -0.0672248899936676, - -0.07968960702419281, - 0.023506173864006996, - -0.05182614177465439, - 0.053563233464956284, - -0.010357051156461239, - 0.03555510565638542, - 0.04073306918144226, - -0.07910112291574478, - 0.11850571632385254, - 0.03808992728590965, - -0.037928007543087006, - -0.09998872876167297, - -0.10208195447921753, - -0.02480815351009369, - 0.04088554158806801, - 0.023231646046042442, - -0.05354025959968567, - -0.00515914848074317, - 0.012200551107525826, - -0.033005621284246445, - 0.035563550889492035, - 0.12522609531879425, - 0.032806456089019775, - -0.12793779373168945 - ] - }, - "p245_123.wav": { - "name": "p245", - "embedding": [ - 0.047935813665390015, - 0.09868910163640976, - -0.02358902618288994, - 0.039254672825336456, - -0.08080698549747467, - 0.01979684643447399, - -0.1290421485900879, - 0.14838680624961853, - -0.01925787329673767, - 0.09545451402664185, - -0.0655849352478981, - 0.15221551060676575, - -0.026543449610471725, - -0.1803678274154663, - -0.031248360872268677, - 0.07790245115756989, - -0.022635377943515778, - -0.042884618043899536, - -0.011101074516773224, - -0.024351127445697784, - 0.018490398302674294, - 0.02723417431116104, - 0.06314945220947266, - 0.03816467151045799, - 0.026572411879897118, - 0.08199214190244675, - 0.016079099848866463, - 0.06612670421600342, - 0.03773189336061478, - -0.026156505569815636, - -0.049615275114774704, - 0.07632870972156525, - -0.04222646355628967, - -0.007784062065184116, - 0.05659156292676926, - -0.020539313554763794, - 0.010034045204520226, - -0.0572444312274456, - -0.02125987783074379, - -0.006358354352414608, - -0.03878733515739441, - 0.08554770797491074, - 0.02923593483865261, - -0.041204482316970825, - 0.04980042204260826, - 0.034969545900821686, - -0.012981700710952282, - -0.031637709587812424, - -0.136001318693161, - 0.12609539926052094, - 0.06247280538082123, - 0.0049299378879368305, - -0.0876971036195755, - -0.04676724597811699, - 0.0985020250082016, - -0.050785817205905914, - -0.08533252775669098, - -0.04530923813581467, - 0.07116612046957016, - 0.13595515489578247, - -0.027138888835906982, - -0.028523694723844528, - 0.02811417728662491, - 0.12468639016151428, - 0.08511309325695038, - 0.07142630219459534, - 0.07455113530158997, - 0.11343652009963989, - -0.04902837797999382, - 0.016779478639364243, - 0.05108056589961052, - 0.08679787814617157, - 0.02159731835126877, - 0.00569456210359931, - 0.0042259581387043, - 0.0007285761530511081, - -0.009510291740298271, - 0.006272531114518642, - -0.02393496036529541, - -0.018868491053581238, - -0.04187668487429619, - 0.012432875111699104, - -0.008963399566709995, - 0.011986427009105682, - -0.022273089736700058, - 0.1004435271024704, - 0.042855530977249146, - -0.00926428847014904, - 0.06705661863088608, - 0.03570529818534851, - -0.02310272864997387, - 0.06416408717632294, - -0.08750297874212265, - -0.0670657679438591, - 0.011473655700683594, - -0.015031831339001656, - 0.024471379816532135, - 0.0659395381808281, - 0.037837572395801544, - -0.0075630322098731995, - 0.1322927474975586, - 0.08378434181213379, - -0.010745341889560223, - 0.040007565170526505, - -0.06994685530662537, - 0.1312371790409088, - 0.08377501368522644, - -0.02062736451625824, - 0.05747717618942261, - -0.034366365522146225, - 0.04676353931427002, - 0.05633261054754257, - -0.11159484088420868, - -0.06889460235834122, - 0.015194023959338665, - 0.012482589110732079, - -0.017916742712259293, - 0.10312461107969284, - -0.02651827782392502, - 0.059082500636577606, - 0.10515463352203369, - -0.06520505249500275, - -0.06996916234493256, - -0.012537147849798203, - 0.04434474557638168, - -0.0749981477856636, - 0.060916464775800705, - 0.0659603402018547, - 0.00183815136551857, - 0.00949239544570446, - 0.08374138176441193, - 0.004408447537571192, - -0.008399765007197857, - 0.04493667930364609, - -0.06115281209349632, - 0.00882935244590044, - -0.009041817858815193, - -0.011205955408513546, - 0.06833150237798691, - 0.04499555379152298, - 0.044427044689655304, - 0.005526232998818159, - -0.0013271027710288763, - -0.13187739253044128, - 0.0029732505790889263, - 0.03732961416244507, - 0.09435002505779266, - 0.0006489133229479194, - -0.04298786818981171, - -0.051117103546857834, - -0.04414571449160576, - -0.007264079060405493, - 0.020839324221014977, - 0.06787355244159698, - -0.0624614879488945, - 0.008336108177900314, - 0.08739246428012848, - 0.01971442624926567, - 0.008241701871156693, - -0.04189733415842056, - -0.020518694072961807, - 0.006500543095171452, - 0.0513586699962616, - -0.0604424886405468, - -0.08609747886657715, - -0.012232346460223198, - 0.046607114374637604, - -0.0355626605451107, - 0.06916355341672897, - 0.04407934471964836, - 0.012806417420506477, - 0.020992964506149292, - -0.05804038792848587, - 0.023951802402734756, - -0.07645511627197266, - -0.05613651126623154, - -0.02277601882815361, - 0.012747762724757195, - -0.039644304662942886, - 0.055075209587812424, - 0.05049785226583481, - 0.08725063502788544, - 0.0011182089801877737, - -0.07058509439229965, - -0.09501567482948303, - 0.04005023092031479, - 0.06036540865898132, - 0.004332630895078182, - 0.06460879743099213, - 0.05896572768688202, - -0.036681003868579865, - 0.06764934957027435, - 0.055881284177303314, - 0.06115977466106415, - -0.028115984052419662, - -0.00039863772690296173, - -0.06316331028938293, - 0.057546548545360565, - 0.09326006472110748, - -0.11558821052312851, - -0.07488150149583817, - -0.03998482972383499, - -0.056760214269161224, - 0.04024461284279823, - -0.01527421921491623, - 0.017751840874552727, - 0.047286100685596466, - 0.001247235108166933, - -0.1040644496679306, - -0.11439242213964462, - 0.08464350551366806, - -0.07662586867809296, - 0.017329208552837372, - -0.0555596649646759, - 0.0290832556784153, - 0.09408316016197205, - 0.00019073513976763934, - -0.02277049422264099, - -0.029403764754533768, - 0.03492112457752228, - -0.015735380351543427, - -0.0010919775813817978, - 0.06162617728114128, - 0.04125378653407097, - -0.10668320953845978, - 0.00865055900067091, - -0.06471343338489532, - 0.06943607330322266, - -0.023811817169189453, - 0.16725806891918182, - 0.021339697763323784, - -0.032372549176216125, - -0.09002547711133957, - 0.016651824116706848, - -0.0340128093957901, - 0.06592398881912231, - 0.03635784238576889, - 0.054862987250089645, - 0.011859702877700329, - -0.06403880566358566, - 0.13180667161941528, - 0.05661667138338089, - -0.07817618548870087, - -0.08639197051525116, - -0.03598418086767197, - -0.04523245990276337, - 0.04229831323027611, - 0.04203055053949356, - -0.090467169880867, - -0.03499970957636833, - 0.00952528603374958, - -0.03472364693880081, - 0.07906821370124817, - 0.14434456825256348, - 0.07129251956939697, - -0.086697518825531 - ] - }, - "p245_279.wav": { - "name": "p245", - "embedding": [ - 0.0520191453397274, - 0.06683322042226791, - -0.05218029022216797, - 0.009071988984942436, - -0.00949503667652607, - 0.018779944628477097, - -0.1245230883359909, - 0.07804550975561142, - -0.056330606341362, - 0.13133792579174042, - -0.07470617443323135, - 0.08096323162317276, - -0.020086199045181274, - -0.13068002462387085, - -0.054525647312402725, - 0.032097481191158295, - -0.04229017347097397, - -0.019590429961681366, - -0.07944805175065994, - -0.025222357362508774, - 0.035048045217990875, - 0.05781761556863785, - 0.025801002979278564, - -0.05447918176651001, - 0.012016301974654198, - 0.0608753003180027, - 0.012441380880773067, - 0.017905104905366898, - 0.007546348962932825, - -0.007106134667992592, - 0.01191239058971405, - 0.0835629403591156, - -0.03399771451950073, - -0.010156111791729927, - 0.012086132541298866, - 0.03906512260437012, - -0.00043959449976682663, - -0.06790551543235779, - 0.010043170303106308, - 0.016791533678770065, - -0.042105402797460556, - 0.054084762930870056, - 0.03865585848689079, - -0.022079667076468468, - 0.0368582159280777, - -0.0146127725020051, - -0.03163152188062668, - -0.07022309303283691, - -0.08575502783060074, - 0.17867203056812286, - 0.07932297885417938, - 0.04412449896335602, - -0.07738173007965088, - -0.03472016006708145, - 0.10072579979896545, - 0.004298762418329716, - -0.06597690284252167, - -0.07603298127651215, - 0.016661036759614944, - 0.1536272019147873, - -0.024027584120631218, - -0.03949277848005295, - 0.020423799753189087, - 0.09840992093086243, - 0.005495581775903702, - 0.03965126350522041, - 0.10977207124233246, - 0.05614548176527023, - 0.019403541460633278, - 0.024645822122693062, - 0.0408913716673851, - 0.050808850675821304, - 0.030882734805345535, - -0.05330682173371315, - 0.05576683208346367, - -0.02075422741472721, - -0.04296060651540756, - 0.0017399471253156662, - -0.026645533740520477, - -0.07209558039903641, - -0.0076570333912968636, - 0.015097926370799541, - 0.006781320553272963, - 0.02138354815542698, - -0.06528018414974213, - 0.029388809576630592, - 0.027205435559153557, - -0.058518312871456146, - 0.06716534495353699, - 0.038299545645713806, - -0.00743325287476182, - -0.024749377742409706, - -0.04626326262950897, - -0.08060380816459656, - 0.022845624014735222, - 0.006770520471036434, - -0.016435548663139343, - 0.030038874596357346, - 0.03380761295557022, - -0.026185167953372, - 0.07946860045194626, - 0.02947250008583069, - -0.019602373242378235, - -0.027460381388664246, - -0.06599431484937668, - 0.11118429154157639, - 0.1396806687116623, - -0.006802147254347801, - 0.0026200972497463226, - -0.032686181366443634, - 0.01057338248938322, - 0.06713508814573288, - -0.11419455707073212, - -0.07052184641361237, - 0.0548800453543663, - 0.030668586492538452, - 0.030700329691171646, - 0.07999694347381592, - 0.019764676690101624, - -0.009286267682909966, - 0.08549840748310089, - -0.08144000172615051, - -0.07725387811660767, - -0.060516178607940674, - 0.04315546527504921, - -0.07481749355792999, - 0.03985782712697983, - 0.07825423777103424, - -0.006186093669384718, - -0.037569183856248856, - 0.06172458082437515, - 0.012102059088647366, - -0.006403912790119648, - -0.04141402989625931, - 0.043237313628196716, - 0.054311491549015045, - -0.026584520936012268, - -0.04333289712667465, - 0.01529704686254263, - 0.0445157065987587, - 0.04538054019212723, - 0.021498408168554306, - -0.012310020625591278, - -0.0844266340136528, - 0.024476516991853714, - 0.06225130707025528, - 0.025506403297185898, - -0.03862001374363899, - -0.023227086290717125, - -0.030311886221170425, - -0.03701767325401306, - -0.015341464430093765, - -0.04773303493857384, - 0.09846585988998413, - 0.00785382091999054, - 0.029214119538664818, - 0.11849590390920639, - -0.05175226554274559, - -0.0027003567665815353, - -0.005204865708947182, - 0.04099271073937416, - 0.04894743859767914, - 0.013694122433662415, - -0.036463987082242966, - -0.07727885246276855, - 0.0074785854667425156, - 0.007762848865240812, - 0.006016571074724197, - 0.011575054377317429, - 0.022281501442193985, - -0.019407734274864197, - 0.006433653645217419, - -0.07725550979375839, - 0.01835590973496437, - -0.12018996477127075, - 0.003141818568110466, - -0.007673362269997597, - -0.07878651469945908, - 0.00708797387778759, - 0.08978602290153503, - 0.01866057701408863, - 0.013536175712943077, - -0.045769430696964264, - -0.11441882699728012, - -0.042273275554180145, - 0.08821281790733337, - 0.10511176288127899, - -0.015396878123283386, - -0.01159561425447464, - 0.024827174842357635, - 0.037263356149196625, - -0.008314723148941994, - 0.06436347216367722, - 0.06946414709091187, - -0.008239863440394402, - -0.07226821780204773, - -0.0398029088973999, - 0.08776760846376419, - 0.04970499873161316, - -0.09706464409828186, - -0.03450682386755943, - -0.05589821934700012, - -0.05155661329627037, - 0.01245830673724413, - -0.022623302415013313, - 0.02387787215411663, - 0.03990945219993591, - -0.039009034633636475, - -0.12075541913509369, - -0.09642039239406586, - 0.06341516971588135, - -0.040683284401893616, - -0.008881762623786926, - -0.04353077709674835, - 0.034678421914577484, - 0.06704499572515488, - 0.008364738896489143, - -0.009846445173025131, - -0.014528504572808743, - -0.02198714017868042, - -0.06812019646167755, - -0.0252497848123312, - -0.0285518616437912, - 0.0410170704126358, - -0.08738823235034943, - 0.031555213034152985, - -0.0722704827785492, - 0.0873974859714508, - -0.06831436604261398, - 0.08111992478370667, - 0.0020491108298301697, - -0.02732449769973755, - -0.11388514935970306, - 0.029330717399716377, - -0.018018225207924843, - 0.07232734560966492, - 0.049911100417375565, - 0.033157579600811005, - 0.02780042588710785, - -0.09500128030776978, - 0.08650533854961395, - 0.08225865662097931, - -0.005279342643916607, - -0.07847237586975098, - -0.02644912153482437, - -0.03823351860046387, - 0.022987350821495056, - 0.001889458973892033, - -0.010943258181214333, - -0.0028536678291857243, - 0.006852135527879, - -0.03145923465490341, - 0.0767761617898941, - 0.07135774195194244, - 0.022094519808888435, - -0.10847096145153046 - ] - }, - "p245_186.wav": { - "name": "p245", - "embedding": [ - 0.049780651926994324, - 0.09498939663171768, - -0.011941144242882729, - 0.025888066738843918, - -0.037194035947322845, - 0.05615521967411041, - -0.1325494647026062, - 0.13605374097824097, - -0.02295851707458496, - 0.13731497526168823, - -0.06083249673247337, - 0.09459879249334335, - -0.016566215083003044, - -0.15367192029953003, - -0.03788261115550995, - 0.04270133376121521, - -0.0591256245970726, - -0.023712610825896263, - -0.03981366753578186, - -0.0033279280178248882, - 0.039632685482501984, - 0.0440482571721077, - 0.020980030298233032, - -0.03662561997771263, - 0.044919371604919434, - 0.048804059624671936, - 0.020211923867464066, - 0.057196978479623795, - 0.03199577331542969, - -0.05255095660686493, - -0.015256383456289768, - 0.11538469046354294, - -0.04307785630226135, - 0.019466117024421692, - 0.03486809879541397, - -0.00032154936343431473, - -0.009850124828517437, - -0.07209324836730957, - -0.019919173792004585, - 0.017468048259615898, - -0.03899131715297699, - 0.08111665397882462, - 0.03616027906537056, - -0.008590081706643105, - 0.025768987834453583, - 0.014063315466046333, - -0.006635394878685474, - -0.06832893192768097, - -0.10622978955507278, - 0.1869138926267624, - 0.056873105466365814, - 0.007400006987154484, - -0.08579879999160767, - -0.07059236615896225, - 0.08114106953144073, - -0.0040430836379528046, - -0.10034534335136414, - -0.033646032214164734, - 0.06214534491300583, - 0.15712344646453857, - -0.023823387920856476, - -0.03319559618830681, - 0.018809616565704346, - 0.12001721560955048, - 0.057272713631391525, - 0.07024353742599487, - 0.08927302062511444, - 0.10318976640701294, - 0.0013709496706724167, - 0.04490320011973381, - 0.03413322567939758, - 0.05794113874435425, - 0.023188617080450058, - -0.00040143157821148634, - 0.02711189165711403, - -0.020066890865564346, - -0.03524855896830559, - 0.0030172038823366165, - -0.01195192988961935, - -0.02428671531379223, - 0.005008189473301172, - 0.02575261890888214, - 0.011594429612159729, - 0.056109216064214706, - -0.024052705615758896, - 0.05364781618118286, - 0.0024599097669124603, - -0.025418920442461967, - 0.07601740956306458, - 0.020341258496046066, - 0.013301611877977848, - 0.050985176116228104, - -0.07911110669374466, - -0.11158083379268646, - 0.009729173965752125, - -0.0071069360710680485, - 0.046111881732940674, - 0.06801579892635345, - 0.03950390964746475, - -0.026529837399721146, - 0.11196405440568924, - 0.04042007774114609, - -0.022448640316724777, - 0.014554007910192013, - -0.0860765278339386, - 0.11390452086925507, - 0.08796030282974243, - -0.016473572701215744, - 0.048987872898578644, - -0.060133930295705795, - 0.06924648582935333, - 0.04526021331548691, - -0.13611623644828796, - -0.07596048712730408, - 0.04822613671422005, - 0.022315096110105515, - -0.004644811153411865, - 0.12823879718780518, - 0.005842046346515417, - 0.031274229288101196, - 0.08919675648212433, - -0.09538307785987854, - -0.0461282804608345, - -0.021206222474575043, - 0.06171686202287674, - -0.07238461077213287, - 0.039248351007699966, - 0.05201123654842377, - -0.03691919893026352, - 0.0013806335628032684, - 0.06983670592308044, - -0.0011842255480587482, - 0.020656948909163475, - 0.00756952166557312, - -0.0357440784573555, - 0.05000495910644531, - -0.03807573765516281, - 0.0036224927753210068, - 0.031258419156074524, - 0.0527312308549881, - 0.0484200045466423, - 0.004734721500426531, - -0.047661200165748596, - -0.10588062554597855, - 0.0045497845858335495, - 0.04596410319209099, - 0.06315878033638, - -0.03719942271709442, - -0.030062830075621605, - -0.04634224250912666, - -0.051202692091464996, - 0.015086007304489613, - 0.004031861200928688, - 0.06949175894260406, - -0.003637679386883974, - -0.012160002253949642, - 0.1269933432340622, - 0.011015105992555618, - -0.0008069919422268867, - -0.032828234136104584, - -0.025377415120601654, - 0.015222224406898022, - 0.0528106614947319, - -0.07549412548542023, - -0.06384138017892838, - 0.006625814363360405, - 0.008787952363491058, - -0.021066462621092796, - 0.027520207688212395, - 0.036008816212415695, - 0.025656141340732574, - 0.03806747496128082, - -0.060057297348976135, - 0.010157227516174316, - -0.11259924620389938, - -0.05163257569074631, - 0.001529137371107936, - -0.00845365971326828, - -0.031535740941762924, - 0.0914374589920044, - 0.012499975971877575, - 0.05353322625160217, - -0.001693258062005043, - -0.06909862160682678, - -0.0455293282866478, - 0.06612171232700348, - 0.08565175533294678, - 0.002202434465289116, - 0.046733416616916656, - 0.049875035881996155, - -0.0014274637214839458, - 0.030810199677944183, - 0.06460615992546082, - 0.10363326966762543, - -0.022446565330028534, - -0.01786843314766884, - -0.09056596457958221, - 0.09339028596878052, - 0.060664091259241104, - -0.09198956191539764, - -0.08776917308568954, - -0.017218543216586113, - -0.07294963300228119, - 0.01954902522265911, - -0.025054577738046646, - 0.026129813864827156, - 0.026914816349744797, - -0.01855437271296978, - -0.11046057939529419, - -0.08695186674594879, - 0.06816712021827698, - -0.0699438750743866, - -0.012322836555540562, - -0.08002462983131409, - 0.04649566859006882, - 0.10242058336734772, - 0.04990389943122864, - -0.013408978469669819, - -0.020994018763303757, - 0.035579584538936615, - -0.057652220129966736, - -0.009350299835205078, - 0.02777467481791973, - 0.010307356715202332, - -0.09487438201904297, - 0.027934473007917404, - -0.05723356083035469, - 0.06135866045951843, - -0.06065633147954941, - 0.15114903450012207, - 0.007244945503771305, - -0.0714966356754303, - -0.09494678676128387, - 0.04025014862418175, - -0.03390611708164215, - 0.04048825800418854, - 0.034435372799634933, - 0.04029976204037666, - 0.049797311425209045, - -0.08118963241577148, - 0.11395411938428879, - 0.027208494022488594, - -0.02166212722659111, - -0.06798888742923737, - -0.05895119160413742, - -0.018733887001872063, - 0.036244772374629974, - 0.006609201431274414, - -0.058978307992219925, - -0.016218818724155426, - 0.019838619977235794, - -0.022571798413991928, - 0.061886150389909744, - 0.12519052624702454, - 0.05719219893217087, - -0.12144674360752106 - ] - }, - "p245_389.wav": { - "name": "p245", - "embedding": [ - 0.04964253306388855, - 0.07147164642810822, - -0.023855488747358322, - 0.009601152502000332, - -0.03650026023387909, - 0.0252509918063879, - -0.14053422212600708, - 0.13478609919548035, - -0.017778024077415466, - 0.1325148046016693, - -0.06748643517494202, - 0.12535309791564941, - -0.005407724529504776, - -0.18714392185211182, - -0.0038822144269943237, - 0.029013734310865402, - -0.02789529412984848, - -0.013960222713649273, - -0.029330529272556305, - -0.032227523624897, - 0.06844169646501541, - 0.05408642813563347, - 0.011623265221714973, - -0.02318566106259823, - -0.015936443582177162, - 0.06676285713911057, - 0.0077512613497674465, - 0.035172995179891586, - 0.009118190966546535, - -0.048626817762851715, - -0.03151613101363182, - 0.08784034103155136, - -0.03133663162589073, - 0.013059570454061031, - 0.05865493416786194, - -0.01998130790889263, - -0.02221369557082653, - -0.05281658098101616, - -0.0278736874461174, - 0.01690276525914669, - -0.05741718411445618, - 0.051280390471220016, - 0.021318530663847923, - -0.03186129033565521, - 0.07071669399738312, - 0.018691975623369217, - -0.011189226061105728, - -0.0458110049366951, - -0.09346655011177063, - 0.15409106016159058, - 0.08942298591136932, - 0.00563018349930644, - -0.055634163320064545, - -0.04712982475757599, - 0.08556137979030609, - -0.011394977569580078, - -0.09742304682731628, - -0.02711251750588417, - 0.0626111775636673, - 0.1299046277999878, - -0.03835728019475937, - -0.035862356424331665, - 0.05873362347483635, - 0.09533900022506714, - 0.03565296158194542, - 0.08913514018058777, - 0.0988224670290947, - 0.09537652134895325, - -0.024873949587345123, - 0.009020083583891392, - 0.03127939999103546, - 0.08881151676177979, - 0.0618852898478508, - -0.01940850540995598, - 0.04258141666650772, - 0.03239329159259796, - -0.035421356558799744, - -0.003220668062567711, - -0.024362778291106224, - -0.0025995809119194746, - 0.006880385335534811, - 0.018820548430085182, - 0.023136839270591736, - 0.030249077826738358, - -0.04412847384810448, - 0.05700276419520378, - 0.03787606582045555, - -0.0025889745447784662, - 0.04101213812828064, - 0.01078611146658659, - 0.025310678407549858, - 0.06093835085630417, - -0.09138470888137817, - -0.09233307838439941, - 0.026226183399558067, - -0.000831136479973793, - -0.0036285407841205597, - 0.08612217754125595, - 0.048663657158613205, - -0.018391352146863937, - 0.11880064010620117, - 0.041312217712402344, - -0.024444010108709335, - 0.03639297932386398, - -0.08512981235980988, - 0.10115258395671844, - 0.10371828079223633, - -0.038159266114234924, - 0.049265604466199875, - -0.0879659578204155, - 0.07459738105535507, - 0.047489386051893234, - -0.12783177196979523, - -0.06034495681524277, - 0.05674789473414421, - 0.024518083781003952, - -0.00571811106055975, - 0.148992657661438, - 0.004579258617013693, - 0.04639511555433273, - 0.11653193831443787, - -0.09323574602603912, - -0.06669460237026215, - -0.037002742290496826, - 0.05766318365931511, - -0.08456750214099884, - 0.0829339325428009, - 0.03849758580327034, - -0.00476697226986289, - 0.007714379578828812, - 0.07273873686790466, - -0.03140334412455559, - 0.013713590800762177, - -0.025193532928824425, - -0.02423720806837082, - 0.017991913482546806, - -0.04869674891233444, - -0.009695064276456833, - 0.015489794313907623, - 0.033399488776922226, - 0.02593194507062435, - 0.0020804922096431255, - -0.04575156420469284, - -0.1324165165424347, - 0.017629174515604973, - 0.034133076667785645, - 0.07721230387687683, - -0.011460991576313972, - -0.030183393508195877, - -0.04280737042427063, - -0.06815729290246964, - -0.011978501453995705, - -0.046983253210783005, - 0.04523259401321411, - -0.02150619775056839, - 0.018531300127506256, - 0.08077391982078552, - 0.016388606280088425, - 0.004657186102122068, - -0.024618666619062424, - -0.04792141169309616, - 0.0007916279137134552, - 0.04553179070353508, - -0.0725981742143631, - -0.08912689983844757, - -0.033685874193906784, - 0.020242737606167793, - -0.012520924210548401, - 0.03694436699151993, - 0.03833423927426338, - 0.02411615662276745, - 0.02653633803129196, - -0.10931293666362762, - 0.012123778462409973, - -0.13374003767967224, - -0.08708872646093369, - -0.01953904889523983, - 0.0017591805662959814, - 0.009442574344575405, - 0.06969283521175385, - -0.001415996695868671, - 0.0444008968770504, - -0.03092077001929283, - -0.05863282084465027, - -0.0863884910941124, - 0.048835813999176025, - 0.08602620661258698, - -0.004547545686364174, - 0.04455546289682388, - 0.04448841139674187, - -0.02577764168381691, - 0.04145362228155136, - 0.05063789710402489, - 0.1003967672586441, - 0.006545286625623703, - 0.023936178535223007, - -0.0645827054977417, - 0.10333234071731567, - 0.09196887910366058, - -0.054392870515584946, - -0.08496984094381332, - -0.017037218436598778, - -0.07981628179550171, - 0.020779818296432495, - -0.013802110217511654, - 0.006919558625668287, - 0.01613161526620388, - 0.013877051882445812, - -0.09816001355648041, - -0.06542323529720306, - 0.05088915675878525, - -0.05183778703212738, - -0.012386116199195385, - -0.0886194109916687, - 0.05039968341588974, - 0.11728017032146454, - 0.03749311715364456, - -0.03848762437701225, - -0.04207203537225723, - 0.034046150743961334, - -0.025762498378753662, - 0.01390274427831173, - 0.02045624516904354, - 0.05512845516204834, - -0.1097072884440422, - 0.01596188172698021, - -0.06605931371450424, - 0.04116734117269516, - -0.07096131891012192, - 0.10229065269231796, - 0.011715034954249859, - -0.05940639227628708, - -0.09298370778560638, - 0.05071388930082321, - 0.02423255145549774, - 0.03490743041038513, - 0.009444080293178558, - 0.05541565269231796, - 0.036875348538160324, - -0.10995044559240341, - 0.09450041502714157, - 0.031227100640535355, - -0.02044413797557354, - -0.06892361491918564, - -0.05475762486457825, - -0.02239786647260189, - 0.022677583619952202, - 0.016151851043105125, - -0.0708613321185112, - -0.032538071274757385, - 0.011150333099067211, - -0.012001276016235352, - 0.04270801693201065, - 0.13865134119987488, - 0.02483021467924118, - -0.14446961879730225 - ] - }, - "p245_025.wav": { - "name": "p245", - "embedding": [ - 0.04728066176176071, - 0.09132519364356995, - -0.0266993660479784, - 0.014039554633200169, - -0.06971262395381927, - 0.0015893001109361649, - -0.06117280572652817, - 0.1088259220123291, - -0.017518499866127968, - 0.10607945173978806, - -0.09705836325883865, - 0.1183314323425293, - -0.060748979449272156, - -0.07807207852602005, - -0.015277368016541004, - 0.01768813468515873, - 0.00882519967854023, - -0.015771502628922462, - -0.03676807880401611, - -0.013335805386304855, - 0.04646868258714676, - 0.03957943618297577, - 0.032906629145145416, - -0.021989382803440094, - 0.0050403159111738205, - 0.07141248136758804, - 0.006551366299390793, - -0.0022186916321516037, - 0.01907799020409584, - -0.01741943508386612, - 0.00974871963262558, - 0.044684696942567825, - -0.031482212245464325, - 0.03326811641454697, - 0.04526546597480774, - 0.03129633888602257, - -0.037986814975738525, - -0.017496518790721893, - -0.012590011581778526, - 0.000543401634786278, - -0.06637702137231827, - 0.045201633125543594, - 0.009126069024205208, - -0.08740653842687607, - 0.03196221590042114, - 0.0008265916258096695, - -0.0031872917897999287, - -0.0008214432746171951, - -0.07785055041313171, - 0.13492977619171143, - 0.022686874493956566, - 0.049052923917770386, - -0.08332902193069458, - -0.018849007785320282, - 0.09554073214530945, - -0.02876932919025421, - -0.06366067379713058, - -0.07523071765899658, - 0.02019379287958145, - 0.0781453400850296, - -0.032315660268068314, - -0.04980345442891121, - 0.01791449822485447, - 0.039823293685913086, - 0.032374948263168335, - 0.04197629913687706, - 0.08284154534339905, - 0.08710107207298279, - -0.022611506283283234, - 0.042292509227991104, - 0.06746797263622284, - 0.08345398306846619, - 0.04449405521154404, - -0.00808747485280037, - 0.006780174560844898, - -0.01332017034292221, - -0.02537577971816063, - 0.02388228476047516, - -3.645848482847214e-05, - -0.03148433566093445, - -0.03693670779466629, - -0.000999006791971624, - 0.009746003895998001, - -0.04150763154029846, - -0.03425607830286026, - 0.06543602049350739, - 0.055986642837524414, - -0.03789931535720825, - 0.05830211192369461, - 0.054321613162755966, - -0.037993114441633224, - 0.021350963041186333, - -0.062318190932273865, - -0.07305333018302917, - -0.030844910070300102, - -0.03561857342720032, - 0.045457303524017334, - 0.08888489007949829, - 0.02863730490207672, - 0.05255160480737686, - 0.06512414664030075, - 0.02646852843463421, - 0.03002905286848545, - -0.009629910811781883, - -0.08390727639198303, - 0.1374681293964386, - 0.0997086614370346, - -0.039803870022296906, - -0.01094500720500946, - -0.031186792999505997, - 0.030149733647704124, - 0.04288199171423912, - -0.055234357714653015, - -0.07929259538650513, - -0.02113642729818821, - -0.0023737112060189247, - 0.025490527972579002, - 0.07405589520931244, - -0.003513803705573082, - -0.0003266558051109314, - 0.1349898725748062, - -0.09396745264530182, - -0.08919544517993927, - -0.02063814364373684, - -0.02076747640967369, - -0.07658687233924866, - 0.070269376039505, - 0.060781680047512054, - 0.011432209983468056, - 0.029541268944740295, - 0.09501159191131592, - -0.001910191960632801, - 0.02806958183646202, - -0.011061329394578934, - -0.02147325873374939, - -0.004888467490673065, - -0.025288943201303482, - 0.005936942063271999, - 0.10234484076499939, - 0.06296571344137192, - 0.1000697985291481, - 0.026982193812727928, - 0.01060149073600769, - -0.0879545658826828, - 0.022408539429306984, - 0.10782898217439651, - -0.007051026448607445, - -0.03832744434475899, - -0.03476756811141968, - -0.014071768149733543, - -0.06264172494411469, - 0.02122318744659424, - 0.007265170104801655, - 0.07849688827991486, - -0.033829424530267715, - 0.027128618210554123, - 0.12101788818836212, - -0.003733959048986435, - -0.0019902344793081284, - -0.08114194869995117, - -0.017888862639665604, - -0.02297256328165531, - 0.0381234809756279, - -0.09798060357570648, - -0.11297637969255447, - -0.06335989385843277, - 0.025235041975975037, - -0.011736004613339901, - 0.026038821786642075, - 0.057422883808612823, - -0.017501628026366234, - 0.04528648033738136, - -0.04488951712846756, - 0.05101536214351654, - -0.0784270241856575, - -0.049702972173690796, - -0.048079974949359894, - -0.06671763956546783, - 0.0022890325635671616, - 0.06637407839298248, - -0.018089480698108673, - 0.02861608937382698, - 0.025617124512791634, - -0.10746562480926514, - -0.09760837256908417, - 0.02613038569688797, - 0.03304443135857582, - -0.01710517145693302, - 0.043048322200775146, - 0.05472904443740845, - -0.045455992221832275, - 0.022019008174538612, - 0.010858343914151192, - 0.09878860414028168, - -0.07357415556907654, - -0.0042722392827272415, - -0.038643043488264084, - 0.05250518023967743, - 0.07596319913864136, - -0.10704830288887024, - -0.060466423630714417, - -0.12184098362922668, - -0.029531046748161316, - -0.004727337509393692, - -0.027492262423038483, - 0.0058106123469769955, - 0.012840759940445423, - -0.02136811800301075, - -0.06257054954767227, - -0.0891914963722229, - 0.02585662342607975, - -0.014219660311937332, - 0.0016826819628477097, - -0.06680537015199661, - 0.010963051579892635, - -0.0003173463046550751, - 0.03191859647631645, - -0.011891636997461319, - 0.018400467932224274, - -0.011010151356458664, - -0.056199342012405396, - -0.022005779668688774, - 0.05189729481935501, - 0.026533037424087524, - 0.032330870628356934, - -0.02206023968756199, - -0.06971227377653122, - 0.06681889295578003, - -0.042676106095314026, - 0.13253949582576752, - -0.06805618852376938, - -0.05376983806490898, - -0.044418513774871826, - 0.0011334531009197235, - -0.02395021542906761, - 0.01614169403910637, - 0.06772264093160629, - 0.03880290314555168, - -0.02249978482723236, - -0.07261064648628235, - 0.11414507031440735, - 0.06347735226154327, - -0.009585547260940075, - -0.06244874373078346, - -0.053595464676618576, - -0.06424856930971146, - -0.004242710769176483, - 0.0030150925740599632, - -0.053490862250328064, - 0.04673640429973602, - -0.023656141012907028, - 0.0003688698634505272, - 0.0835297629237175, - 0.1028333380818367, - 0.07413534820079803, - -0.07562227547168732 - ] - }, - "p245_329.wav": { - "name": "p245", - "embedding": [ - -0.005544627085328102, - 0.06198248267173767, - 0.004634879529476166, - 0.021113816648721695, - -0.044267334043979645, - -0.031414665281772614, - -0.09524384140968323, - 0.07862409204244614, - -0.029118720442056656, - 0.09866597503423691, - -0.07544707506895065, - 0.09305178374052048, - -0.05698026344180107, - -0.12308865785598755, - 0.0180025827139616, - 0.033627789467573166, - 0.009352291002869606, - -0.02268972061574459, - -0.01778477057814598, - -0.04896176978945732, - 0.03435751050710678, - 0.06365825980901718, - 0.02586447075009346, - -0.021655237302184105, - -0.008241991512477398, - 0.07650616019964218, - -0.012857471592724323, - -0.003986007999628782, - -0.022557053714990616, - -0.06080430746078491, - -0.00031503589707426727, - 0.03554786369204521, - -0.022862931713461876, - -0.0228655394166708, - 0.018445748835802078, - 0.021002281457185745, - -0.023799780756235123, - 0.01135361846536398, - -0.02672605589032173, - 0.012114268727600574, - -0.12098908424377441, - 0.030034363269805908, - -0.0048117609694600105, - -0.048177570104599, - 0.06104302033782005, - 0.016689537093043327, - -0.006458019372075796, - 0.016416212543845177, - -0.06254874169826508, - 0.08453187346458435, - 0.061173390597105026, - 0.01850994862616062, - -0.03041110932826996, - -0.01941123604774475, - 0.06710182875394821, - -0.01897074654698372, - -0.07495981454849243, - -0.06148586794734001, - 0.04911886900663376, - 0.062065910547971725, - -0.05005854368209839, - -0.03270219638943672, - 0.04875677451491356, - 0.039867546409368515, - 0.02703641913831234, - 0.055593665689229965, - 0.05901962146162987, - 0.03524057939648628, - -0.011570108123123646, - -0.03959264978766441, - 0.057695675641298294, - 0.07419515401124954, - 0.06387314945459366, - -0.01761275716125965, - 0.013430282473564148, - 0.03664001449942589, - -0.03950544074177742, - -0.008957642130553722, - -0.010413320735096931, - -0.01036157738417387, - -0.03097372129559517, - -0.013436786830425262, - -0.00023613292432855815, - -0.05614519864320755, - -0.0077747986651957035, - 0.03682340309023857, - 0.07967673242092133, - 0.0007643811404705048, - 0.059014905244112015, - 0.026371365413069725, - -0.014461099170148373, - 0.04225132241845131, - -0.05795370414853096, - 0.008060790598392487, - -0.030709654092788696, - -0.01028340682387352, - 0.020751409232616425, - 0.07499875873327255, - 0.017875991761684418, - 0.030727699398994446, - 0.07834219187498093, - -0.007102827075868845, - 0.026036430150270462, - 0.004032354801893234, - -0.10909755527973175, - 0.09570895880460739, - 0.0696415975689888, - -0.04072205349802971, - 0.0034895152784883976, - -0.02699539065361023, - 0.027414733543992043, - 0.04818747192621231, - -0.05155643820762634, - -0.049935758113861084, - -0.01530660130083561, - -0.0020182596053928137, - -0.00699925422668457, - 0.0961560532450676, - 0.015446463599801064, - 0.005732082761824131, - 0.13439252972602844, - -0.09265976399183273, - -0.10652390867471695, - -0.018225042149424553, - -0.006649364717304707, - -0.10694273561239243, - 0.07759647816419601, - 0.07681707292795181, - 0.012503315694630146, - 0.057671286165714264, - 0.11152992397546768, - 0.006875825580209494, - 0.02438422292470932, - -0.03399043157696724, - -0.04218409210443497, - -0.033269450068473816, - -0.03208575397729874, - 5.464367495733313e-05, - 0.07965957373380661, - 0.03992646560072899, - 0.07209324091672897, - 0.006200456526130438, - -0.0037965283263474703, - -0.09806735813617706, - 0.01492305751889944, - 0.076610267162323, - 0.004444792866706848, - -0.024339355528354645, - -0.024795832112431526, - -0.037871815264225006, - -0.053092874586582184, - 0.005128528457134962, - -0.041391272097826004, - 0.06062359735369682, - -0.04469582438468933, - 0.018589405342936516, - 0.11447858065366745, - -0.0017805651295930147, - -0.027430733665823936, - -0.0734269767999649, - -0.031009305268526077, - -0.016635244712233543, - 0.031740203499794006, - -0.09768009185791016, - -0.09541608393192291, - -0.07081269472837448, - 0.06204848363995552, - 0.03061353601515293, - 0.052115004509687424, - 0.044423289597034454, - 0.0016121268272399902, - 0.005247681401669979, - -0.04739367589354515, - 0.043722111731767654, - -0.03980259224772453, - -0.08861198276281357, - -0.03918468579649925, - -0.053784485906362534, - -0.009916325099766254, - 0.06018403172492981, - -0.035982247442007065, - 0.024668967351317406, - -0.0211794376373291, - -0.10341373831033707, - -0.11254493147134781, - 0.0018819079268723726, - 0.02707829140126705, - -0.011820084415376186, - 0.03811441734433174, - 0.02679506316781044, - -0.08152776211500168, - 0.0311566349118948, - 0.013653472065925598, - 0.08790870755910873, - -0.05919070169329643, - 0.0336502380669117, - -0.015940843150019646, - 0.01199861615896225, - 0.07962381839752197, - -0.05437647923827171, - -0.037804629653692245, - -0.06536708027124405, - -0.045384764671325684, - 0.05194753408432007, - -0.005883814301341772, - -0.014137446880340576, - -0.00609972421079874, - 0.003839246230199933, - -0.05598258972167969, - -0.06314468383789062, - 0.04020438715815544, - -0.024574175477027893, - -0.015057406388223171, - -0.08187941461801529, - -0.004326094873249531, - -0.014390842989087105, - 0.07337900251150131, - 0.0031799187418073416, - -0.0037213906180113554, - 0.030000625178217888, - -0.039977043867111206, - 0.028816191479563713, - 0.10328862816095352, - 0.06476470828056335, - 0.0350937619805336, - -0.02926509641110897, - -0.08768477290868759, - 0.04801398143172264, - -0.024401629343628883, - 0.0722629725933075, - -0.006581056397408247, - -0.04384986683726311, - -0.04814082011580467, - 0.0001794517011148855, - -0.002577307168394327, - 0.022349826991558075, - 0.05108978971838951, - 0.060505837202072144, - 0.015153774991631508, - -0.053677525371313095, - 0.0886063203215599, - 0.05088115856051445, - 0.01599227450788021, - -0.034507203847169876, - -0.037383854389190674, - -0.06879597902297974, - -0.02244390733540058, - -0.0009749099845066667, - -0.08880208432674408, - 0.029364068061113358, - -0.015180820599198341, - 0.019148169085383415, - 0.05424491688609123, - 0.09361078590154648, - 0.040511246770620346, - -0.0897696241736412 - ] - }, - "p245_357.wav": { - "name": "p245", - "embedding": [ - 0.06972910463809967, - 0.06739023327827454, - -0.06170198693871498, - 0.018775634467601776, - -0.03588758781552315, - 0.0649954304099083, - -0.13766621053218842, - 0.10362699627876282, - -0.03624305874109268, - 0.10524637997150421, - -0.046022526919841766, - 0.09719941020011902, - -0.002834675367921591, - -0.10584241151809692, - -0.0377446785569191, - 0.03572224825620651, - -0.0021057967096567154, - 0.0013607954606413841, - -0.041360754519701004, - 0.009375831112265587, - 0.03295276686549187, - 0.03323345631361008, - 0.012944510206580162, - -0.041706379503011703, - 0.025914648547768593, - 0.030174151062965393, - 0.014126356691122055, - 0.02248372882604599, - 0.0036759087815880775, - 0.0009140335023403168, - -0.0012793485075235367, - 0.0893627256155014, - -0.0299682654440403, - 0.02160615473985672, - 0.04417218267917633, - 0.011334434151649475, - -0.01733045093715191, - -0.08580219745635986, - 0.0105465492233634, - -0.0010910485871136189, - -0.01050049439072609, - 0.08448060601949692, - 0.07084998488426208, - -0.00499091949313879, - 0.0025040628388524055, - -0.006714037619531155, - -0.005206972360610962, - -0.05556436628103256, - -0.0966198742389679, - 0.1689758151769638, - 0.0143450191244483, - 0.03579188883304596, - -0.10329142212867737, - -0.015243053436279297, - 0.09332321584224701, - 0.008697101846337318, - -0.04352220520377159, - -0.08054336905479431, - 0.026705633848905563, - 0.14721164107322693, - -0.002385042142122984, - -0.05746109038591385, - 0.018784577026963234, - 0.10421192646026611, - 0.039660222828388214, - 0.0409710593521595, - 0.10622353851795197, - 0.09024246037006378, - 0.002522810362279415, - 0.024903880432248116, - 0.02735091745853424, - 0.060085512697696686, - -0.0017608420457690954, - 0.003584047546610236, - 0.02670731022953987, - -0.03584801405668259, - -0.02187918871641159, - 0.021168118342757225, - -0.00762348435819149, - -0.05962866172194481, - -0.013089446350932121, - 0.02323010191321373, - 0.027965519577264786, - 0.06914739310741425, - -0.05049928277730942, - 0.02922941744327545, - 0.028659392148256302, - -0.05947839841246605, - 0.05637276545166969, - 0.05255650728940964, - -0.010411053895950317, - -0.008278166875243187, - -0.04766537994146347, - -0.12366069108247757, - 0.030465014278888702, - 0.00013085361570119858, - 0.032128140330314636, - 0.04259221628308296, - 0.021499060094356537, - 0.00375279039144516, - 0.0713067501783371, - 0.02708558738231659, - -0.008532686159014702, - -0.006281804293394089, - -0.04381237551569939, - 0.12141285836696625, - 0.10051020979881287, - 0.0014802692458033562, - 0.03445610776543617, - -0.06818720698356628, - 0.017130697146058083, - 0.049766018986701965, - -0.101842001080513, - -0.08296908438205719, - 0.06256444752216339, - 0.03921586647629738, - 0.03046710044145584, - 0.10825768113136292, - 0.011512940749526024, - 0.005230730399489403, - 0.05423043668270111, - -0.08202383667230606, - -0.0667533352971077, - -0.02116292156279087, - 0.03881089389324188, - -0.03389594331383705, - 0.024548720568418503, - 0.05810442566871643, - -0.016244828701019287, - -0.029061466455459595, - 0.05179385095834732, - 0.010683749802410603, - 0.00983046367764473, - -0.006054816767573357, - 0.02387930080294609, - 0.08193044364452362, - -0.005693188868463039, - -0.013211306184530258, - 0.027593664824962616, - 0.051229268312454224, - 0.04209590330719948, - 0.01836562156677246, - -0.018793325871229172, - -0.11360463500022888, - -0.008760695345699787, - 0.0781717598438263, - 0.05345386266708374, - -0.056430596858263016, - -0.03362216427922249, - -0.028318308293819427, - -0.049307338893413544, - -0.009060056880116463, - -0.011526191607117653, - 0.07274100929498672, - 0.017242776229977608, - 0.032199710607528687, - 0.08604419976472855, - -0.016052665188908577, - 0.018490906804800034, - -0.024630920961499214, - 0.023259969428181648, - 0.04637088626623154, - 0.033066749572753906, - -0.0375385507941246, - -0.07127895951271057, - -0.009788970462977886, - 0.016655512154102325, - -0.028947461396455765, - -0.004227755591273308, - 0.03065069019794464, - -0.009251004084944725, - 0.0477210097014904, - -0.0722513496875763, - 0.012178759090602398, - -0.1234005019068718, - 0.01049613207578659, - -0.00025842548348009586, - -0.035158053040504456, - -0.01364965084940195, - 0.09684853255748749, - 0.04605598747730255, - 0.056741323322057724, - -0.01744954288005829, - -0.05632244795560837, - -0.021669741719961166, - 0.05704730749130249, - 0.08692049980163574, - -0.030953887850046158, - 0.0007817652076482773, - 0.01813158392906189, - 0.045482292771339417, - 0.004471767693758011, - 0.07399888336658478, - 0.040188610553741455, - -0.028395257890224457, - -0.06494726985692978, - -0.045659083873033524, - 0.10116519033908844, - 0.0771910771727562, - -0.09601793438196182, - -0.05631272494792938, - -0.027462515980005264, - -0.05516643449664116, - -0.02065207064151764, - -0.0525970533490181, - 0.012513198889791965, - 0.04407810419797897, - -0.02918807417154312, - -0.13304215669631958, - -0.10536287724971771, - 0.03618479520082474, - -0.05555425584316254, - 0.021637538447976112, - -0.06295222043991089, - 0.037156254053115845, - 0.09378945827484131, - 0.020421963185071945, - -0.022969432175159454, - -0.03247111290693283, - -0.01447397843003273, - -0.07073706388473511, - -0.016013137996196747, - 0.0003811251372098923, - 0.023362331092357635, - -0.09457676112651825, - 0.03389350324869156, - -0.048120371997356415, - 0.07254493236541748, - -0.05955251678824425, - 0.1370476484298706, - 0.009384021162986755, - -0.05852793529629707, - -0.09808972477912903, - 0.0009142011404037476, - -0.03109685331583023, - 0.04899543523788452, - 0.022091086953878403, - 0.021921755746006966, - 0.02702271193265915, - -0.07844947278499603, - 0.0810246467590332, - 0.07411861419677734, - -0.027226194739341736, - -0.09629100561141968, - -0.023695094510912895, - -0.013731062412261963, - 0.0657021701335907, - 0.0005412332247942686, - -0.0006784871220588684, - 0.0008903555572032928, - 0.03201688826084137, - -0.020708387717604637, - 0.06397310644388199, - 0.0922405943274498, - 0.048202451318502426, - -0.09531234204769135 - ] - }, - "p245_016.wav": { - "name": "p245", - "embedding": [ - 0.04051810875535011, - 0.06690486520528793, - -0.033708859235048294, - 0.03671709820628166, - -0.03845207020640373, - 0.032780032604932785, - -0.14912444353103638, - 0.13018101453781128, - -0.0010805726051330566, - 0.12852822244167328, - -0.04286907985806465, - 0.10912932455539703, - -0.00573818851262331, - -0.177122101187706, - 0.0028319985140115023, - 0.051830168813467026, - -0.030473405495285988, - -0.05070249363780022, - -0.010931533761322498, - -0.016053451225161552, - 0.0456344299018383, - 0.06058346852660179, - 0.01461214479058981, - -0.004392530303448439, - 0.014387959614396095, - 0.06585042923688889, - -0.009662941098213196, - 0.0324079766869545, - 0.007896742783486843, - -0.050136029720306396, - -0.026401950046420097, - 0.08292513340711594, - -0.04552718997001648, - 0.008650950156152248, - 0.03522353619337082, - -0.013688315637409687, - -0.015335598960518837, - -0.06033455207943916, - -0.02980225160717964, - 0.009661932475864887, - -0.05967609956860542, - 0.08095196634531021, - 0.03956491872668266, - -0.034930385649204254, - 0.035889722406864166, - 0.011980006471276283, - -0.01231046486645937, - -0.04335959628224373, - -0.10692300647497177, - 0.1572565734386444, - 0.08295287936925888, - 0.0073030912317335606, - -0.0570632703602314, - -0.04932660609483719, - 0.08073550462722778, - 0.008689356036484241, - -0.0966644138097763, - -0.0378798246383667, - 0.07101687043905258, - 0.1358330249786377, - -0.019165491685271263, - -0.02883703075349331, - 0.05291098356246948, - 0.11967045068740845, - 0.06932578235864639, - 0.06779652088880539, - 0.08289850503206253, - 0.11162374168634415, - -0.019288862124085426, - -0.0031644494738429785, - 0.04786653816699982, - 0.08686845749616623, - 0.04189016669988632, - -0.0001112177997129038, - 0.01635715179145336, - 0.008836068212985992, - -0.028658390045166016, - -0.01963823474943638, - -0.015792587772011757, - -0.01580667681992054, - 0.0040189181454479694, - 0.008919058367609978, - 0.014408099465072155, - 0.05892181396484375, - -0.025555426254868507, - 0.04514877125620842, - 0.05674052983522415, - -0.022173216566443443, - 0.05973997339606285, - 0.011843579821288586, - 0.024693438783288002, - 0.0603720061480999, - -0.09063177555799484, - -0.06547486037015915, - 0.03342488408088684, - 0.005790857598185539, - 0.029917040839791298, - 0.0837230235338211, - 0.05385090783238411, - -0.01909828558564186, - 0.12960182130336761, - 0.023425666615366936, - -0.021913761273026466, - 0.019606955349445343, - -0.0787922590970993, - 0.11407951265573502, - 0.07720455527305603, - -0.027124259620904922, - 0.05694260820746422, - -0.07036172598600388, - 0.06096518784761429, - 0.04461970180273056, - -0.13190896809101105, - -0.058255910873413086, - 0.055646199733018875, - 0.028786802664399147, - -0.016899121925234795, - 0.1520422101020813, - 0.02525480091571808, - 0.05128249153494835, - 0.10620071738958359, - -0.09688061475753784, - -0.06232024356722832, - -0.02122008055448532, - 0.06690078973770142, - -0.0887972041964531, - 0.0786643847823143, - 0.048729509115219116, - -0.028080791234970093, - 0.013619333505630493, - 0.0625675618648529, - -0.0130501389503479, - 0.017447112128138542, - -0.014992785640060902, - -0.024081243202090263, - 0.028229236602783203, - -0.0367024801671505, - 0.003026180434972048, - 0.016970409080386162, - 0.008277904242277145, - 0.044564470648765564, - -0.01177924033254385, - -0.0393252819776535, - -0.14389453828334808, - 0.018038541078567505, - 0.027318662032485008, - 0.09478374570608139, - -0.013233949430286884, - -0.03757332265377045, - -0.0450616255402565, - -0.06943442672491074, - -0.0020399573259055614, - -0.02811126410961151, - 0.05477302893996239, - -0.014403223991394043, - -0.0010520702926442027, - 0.08142606914043427, - 0.020454496145248413, - 0.011113223619759083, - -0.025445638224482536, - -0.038584448397159576, - 0.007810632232576609, - 0.04612548276782036, - -0.07453037053346634, - -0.07559381425380707, - -0.014829359948635101, - 0.02373846247792244, - -0.018207039684057236, - 0.0480978861451149, - 0.037044707685709, - 0.03864092379808426, - 0.01082706544548273, - -0.08361036330461502, - 0.00647435337305069, - -0.09939318150281906, - -0.08051186054944992, - -0.00996298249810934, - 0.013587194494903088, - -0.019608015194535255, - 0.08560257405042648, - 0.01767372153699398, - 0.05805790051817894, - -0.027385732159018517, - -0.04634594917297363, - -0.08442296087741852, - 0.036416199058294296, - 0.06011306121945381, - -0.018580064177513123, - 0.03815450146794319, - 0.0541682243347168, - -0.026287520304322243, - 0.02207903191447258, - 0.04216459393501282, - 0.09922679513692856, - -0.011121436953544617, - 0.004603381734341383, - -0.06368358433246613, - 0.1052146926522255, - 0.09675245732069016, - -0.06895194947719574, - -0.05487356707453728, - -0.020620230585336685, - -0.08344074338674545, - 0.01203469093888998, - -0.019137948751449585, - 0.013086751103401184, - 0.012765067629516125, - 0.003509512171149254, - -0.11139048635959625, - -0.085530124604702, - 0.053799260407686234, - -0.07429026067256927, - -0.0024241183418780565, - -0.09297332912683487, - 0.04146304354071617, - 0.10614720731973648, - 0.045611411333084106, - -0.028677864000201225, - -0.03646695613861084, - 0.04328562691807747, - -0.022161992266774178, - 0.026895800605416298, - 0.07181604951620102, - 0.05712796375155449, - -0.1235656887292862, - -0.007126865442842245, - -0.06264682859182358, - 0.038573626428842545, - -0.05264133960008621, - 0.12364890426397324, - 0.03203369304537773, - -0.05668767914175987, - -0.0939750075340271, - 0.039070554077625275, - 0.009730945341289043, - 0.05214281752705574, - 0.012974734418094158, - 0.05390125513076782, - 0.06048962101340294, - -0.07861433178186417, - 0.10344332456588745, - 0.05393049865961075, - -0.019272439181804657, - -0.06681125611066818, - -0.04907776042819023, - -0.02446931041777134, - 0.04851621761918068, - 0.021766094490885735, - -0.07594799250364304, - -0.033533915877342224, - 0.02563137374818325, - -0.0046650259755551815, - 0.048620808869600296, - 0.14016841351985931, - 0.04956796392798424, - -0.13117723166942596 - ] - }, - "p245_337.wav": { - "name": "p245", - "embedding": [ - 0.06357072293758392, - 0.12591025233268738, - 0.07006644457578659, - -0.015215903520584106, - 0.02714518830180168, - 0.03264628350734711, - -0.06606484949588776, - 0.06581936031579971, - 0.05310523509979248, - 0.09040797501802444, - -0.09511347115039825, - 0.035431869328022, - -0.04092997685074806, - -0.11102703213691711, - -0.01735813170671463, - 0.017631951719522476, - -0.07755692303180695, - 0.011045120656490326, - -0.03363728150725365, - -0.03453698009252548, - -0.014923900365829468, - -0.0030812565237283707, - 0.07160196453332901, - -0.04828950762748718, - 0.002502996474504471, - 0.03974238783121109, - -0.01536097563803196, - -0.0005635404959321022, - -0.009577825665473938, - -0.06541632115840912, - 0.02475626766681671, - 0.022668685764074326, - 0.005876651033759117, - 0.03617662936449051, - 0.030242349952459335, - 0.007141558453440666, - 0.003515218384563923, - -0.029527120292186737, - -0.0292219165712595, - 0.07796933501958847, - -0.009438793174922466, - 0.0568702295422554, - 0.023875031620264053, - -0.05550827458500862, - 0.0599316842854023, - 0.011658438481390476, - -0.0370093509554863, - -0.010489502921700478, - -0.09112150967121124, - 0.12110947072505951, - 0.021221477538347244, - 0.020916149020195007, - -0.06362378597259521, - -0.001623939722776413, - 0.05629764497280121, - -0.02382519282400608, - -0.08513681590557098, - 0.0033728405833244324, - 0.035544488579034805, - 0.02385822683572769, - -0.01722223497927189, - -0.03426945582032204, - -0.024537622928619385, - 0.025006119161844254, - 0.0008355386089533567, - 0.03662567958235741, - 0.06661416590213776, - 0.054919660091400146, - -0.027265775948762894, - 0.04690919816493988, - 0.034029848873615265, - -0.008298519998788834, - 0.06274469941854477, - 9.690411388874054e-05, - 0.016773881390690804, - -0.0643966943025589, - -0.01949666626751423, - -0.020516373217105865, - 0.024980969727039337, - -0.036277443170547485, - 0.03005598857998848, - -0.03174200654029846, - 0.027659287676215172, - 0.018558474257588387, - -0.032030120491981506, - -0.023672999814152718, - 0.020671119913458824, - 0.03555385023355484, - 0.062437884509563446, - 0.05043475329875946, - 0.03648427873849869, - 0.056479066610336304, - -0.03731931373476982, - -0.09246250241994858, - -0.013015715405344963, - -0.03496254235506058, - 0.04955560714006424, - 0.017191331833600998, - 0.043338462710380554, - -0.0008696811273694038, - 0.07697781920433044, - 0.030423954129219055, - -0.01410999707877636, - -0.025233402848243713, - -0.0676155835390091, - 0.03485284000635147, - 0.08324001729488373, - -0.011431500315666199, - 0.02322409860789776, - -0.0007219631224870682, - 0.0694468766450882, - 0.060692198574543, - -0.04339031130075455, - -0.00032777339220046997, - -0.020498031750321388, - 0.02604079432785511, - 0.04291475564241409, - 0.06246257573366165, - 0.006132986396551132, - 0.02121514081954956, - 0.11166727542877197, - -0.06699950993061066, - 0.030972689390182495, - 0.003795386292040348, - -0.012878019362688065, - -0.0490633100271225, - 0.04782489687204361, - 0.020377017557621002, - -0.003418991342186928, - 0.0001584421843290329, - 0.02110578492283821, - 0.02077466994524002, - 0.003818400204181671, - -0.054585035890340805, - 0.0018689632415771484, - 0.02700348012149334, - -0.02421363815665245, - 0.022694306448101997, - 0.03226364403963089, - 0.04870469868183136, - 0.016613781452178955, - 0.06239878386259079, - -0.0503784716129303, - -0.015207886695861816, - 0.03068344108760357, - 0.012323945760726929, - -0.009966287761926651, - -0.012963440269231796, - -0.04543355852365494, - -0.02260706201195717, - -0.002241317182779312, - 0.09423957020044327, - -0.025701560080051422, - 0.03858235850930214, - 0.04459567740559578, - -0.001337686786428094, - 0.1019161120057106, - 0.034563373774290085, - -0.021709445863962173, - -0.04325784742832184, - -0.07394756376743317, - -0.010701078921556473, - 0.03200690075755119, - -0.1614108383655548, - -0.021555878221988678, - -0.03734583780169487, - -0.03584977611899376, - 0.006048415321856737, - 0.013734642416238785, - 0.07061280310153961, - -0.027480563148856163, - 0.007907764054834843, - 0.0013669952750205994, - 0.011461102403700352, - -0.02868250384926796, - -0.11659567058086395, - 0.020381135866045952, - -0.047726765275001526, - 0.01552228257060051, - 0.07287449389696121, - -0.04410259798169136, - 0.004859298933297396, - -0.04880005866289139, - -0.04692478105425835, - 0.015201244503259659, - 0.07477204501628876, - 0.017476705834269524, - -2.1323212422430515e-05, - 0.020455945283174515, - 0.034225694835186005, - -0.026310931891202927, - 0.05604342371225357, - -0.009844496846199036, - 0.0813305675983429, - -0.06089827045798302, - 0.027818668633699417, - -0.005416626110672951, - 0.014772187918424606, - 0.06832297146320343, - -0.021546149626374245, - -0.11031489074230194, - -0.06080133467912674, - -0.02116691693663597, - 0.027910171076655388, - -0.016317958012223244, - -0.03824947774410248, - 0.007023532874882221, - -0.011336670257151127, - -0.013859203085303307, - -0.09113756567239761, - 0.02342355065047741, - 0.02837616205215454, - 0.004606687463819981, - -0.06532706320285797, - 0.027152802795171738, - -0.03189672529697418, - 0.02507844939827919, - -0.032639749348163605, - 0.07138194888830185, - 0.0022166483104228973, - -0.014683031477034092, - -0.0430789440870285, - -0.01697285659611225, - 0.031949955970048904, - 0.011931685730814934, - -0.03563685342669487, - -0.0554065927863121, - 0.047775380313396454, - 0.007679596543312073, - 0.07990893721580505, - 0.03215881809592247, - -0.011561330407857895, - 0.015731219202280045, - 0.0026624388992786407, - -0.06192142516374588, - 0.003511176211759448, - 0.033074114471673965, - 0.005636034533381462, - 0.03974713757634163, - -0.024308715015649796, - 0.03552728891372681, - 0.027024682611227036, - 0.01616571843624115, - -0.007707834243774414, - -0.014502554200589657, - -0.06470315903425217, - -0.043164581060409546, - -0.023556098341941833, - -0.04584721848368645, - 0.021824803203344345, - -0.022979341447353363, - 0.06951957941055298, - 0.01898857206106186, - 0.08085615932941437, - 0.011693358421325684, - -0.047889843583106995 - ] - }, - "p245_396.wav": { - "name": "p245", - "embedding": [ - 0.06517630815505981, - 0.10721991956233978, - -0.026210322976112366, - 0.02655503898859024, - -0.03522571548819542, - 0.06942230463027954, - -0.11102457344532013, - 0.12470437586307526, - -0.028148166835308075, - 0.16116848587989807, - -0.05939150229096413, - 0.12537911534309387, - 0.002466081641614437, - -0.16047430038452148, - -0.025566497817635536, - 0.039198294281959534, - -0.044055912643671036, - -0.003115265630185604, - -0.04788688197731972, - 0.003106349613517523, - 0.04585167393088341, - 0.04467109218239784, - 0.04544520378112793, - -0.04946667701005936, - 0.02919802814722061, - 0.05480317771434784, - -0.0013365903869271278, - 0.04785804823040962, - 0.011247104965150356, - -0.10752403736114502, - -0.04367070645093918, - 0.10983128845691681, - -0.042708106338977814, - 0.04068087786436081, - 0.05139332264661789, - -0.01772719994187355, - -0.012709896080195904, - -0.06883697211742401, - -0.013414707034826279, - 0.005680189933627844, - -0.022992700338363647, - 0.06731124222278595, - 0.008581933565437794, - -0.03604145720601082, - 0.0368812121450901, - 0.004855903796851635, - -0.019964639097452164, - -0.04552185535430908, - -0.07436802983283997, - 0.1696459949016571, - 0.06883874535560608, - 0.011203248053789139, - -0.06979367136955261, - -0.07916714251041412, - 0.07860253751277924, - -0.0017830193974077702, - -0.11333741247653961, - -0.027933157980442047, - 0.04430707171559334, - 0.14919014275074005, - -0.010751070454716682, - -0.028372839093208313, - 0.03801906853914261, - 0.11634698510169983, - 0.040157102048397064, - 0.088083915412426, - 0.0870276689529419, - 0.08878590166568756, - 0.006489753723144531, - 0.05652322992682457, - 0.028659621253609657, - 0.08469879627227783, - 0.06456289440393448, - -0.010897435247898102, - 0.03275791183114052, - -0.024754337966442108, - -0.04490974545478821, - -0.02952863834798336, - -0.025987200438976288, - -0.026346305385231972, - -0.007786503527313471, - 0.006081285420805216, - 0.027438336983323097, - 0.03851122781634331, - -0.030722923576831818, - 0.03364578261971474, - 0.024736011400818825, - -0.04859985038638115, - 0.048089176416397095, - 0.038405902683734894, - 0.03868989273905754, - 0.04249880835413933, - -0.08509248495101929, - -0.11658293008804321, - 0.029262281954288483, - 0.014601492322981358, - 0.017014412209391594, - 0.08175350725650787, - 0.049749284982681274, - -0.027871903032064438, - 0.09385992586612701, - 0.03826487809419632, - -0.013534833677113056, - 0.0005872240290045738, - -0.07795710116624832, - 0.11196853220462799, - 0.10102922469377518, - -0.016416946426033974, - 0.046119365841150284, - -0.06792338192462921, - 0.08339055627584457, - 0.06787735223770142, - -0.14817942678928375, - -0.08350761979818344, - 0.019396947696805, - -0.024958504363894463, - 0.0075767082162201405, - 0.09991246461868286, - 0.02037220448255539, - 0.04211430996656418, - 0.08934465050697327, - -0.10430359840393066, - -0.06072365492582321, - -0.04291628673672676, - 0.055879466235637665, - -0.09226059913635254, - 0.0775848776102066, - 0.03358490392565727, - -0.0186989214271307, - -0.011364801786839962, - 0.06770117580890656, - -0.015590742230415344, - 0.01835024170577526, - 0.008083555847406387, - -0.04789236560463905, - 0.022914139553904533, - -0.058133624494075775, - 0.013061843812465668, - 0.012555889785289764, - 0.02218298800289631, - 0.05212775990366936, - -0.01836366392672062, - -0.0316888652741909, - -0.09081701934337616, - 0.0176241472363472, - 0.04111219942569733, - 0.04795978218317032, - -0.01748806983232498, - -0.03008992224931717, - -0.014394992962479591, - -0.05571184307336807, - 0.03071283921599388, - -0.03396749123930931, - 0.05361219868063927, - 0.01325300894677639, - 0.015651697292923927, - 0.11935000866651535, - 0.008567150682210922, - -0.001899931812658906, - -0.03708351030945778, - -0.019476210698485374, - 0.031346894800662994, - 0.058785729110240936, - -0.08987122774124146, - -0.06835330277681351, - -0.0011888910084962845, - -0.016794703900814056, - -0.0119209298864007, - 0.04924074932932854, - 0.0498056560754776, - 0.018354468047618866, - 0.03197338059544563, - -0.059796907007694244, - -0.02137620747089386, - -0.11094969511032104, - -0.06660529971122742, - -0.026609044522047043, - -0.053207144141197205, - -0.022704333066940308, - 0.09328952431678772, - 0.02344149351119995, - 0.03072524629533291, - -0.0297149159014225, - -0.04843574017286301, - -0.07187207788228989, - 0.05697520077228546, - 0.06802003085613251, - 0.0008193914545699954, - 0.022981014102697372, - 0.03956327214837074, - -0.0033469372428953648, - 0.033217623829841614, - 0.05818531662225723, - 0.08356843888759613, - -0.017114058136940002, - 0.001056239940226078, - -0.09554487466812134, - 0.10885017365217209, - 0.11455187201499939, - -0.07943351566791534, - -0.09818488359451294, - -0.03901026397943497, - -0.08240342885255814, - 0.02317032217979431, - -0.035247549414634705, - 0.0040632588788867, - 0.03994818031787872, - -0.01680007204413414, - -0.1005466878414154, - -0.09014047682285309, - 0.10579557716846466, - -0.06792503595352173, - -0.021382413804531097, - -0.0751475915312767, - 0.0429789237678051, - 0.0774446502327919, - 0.04907786846160889, - -0.041583120822906494, - 0.006374651566147804, - 0.06434763967990875, - -0.049181804060935974, - 0.0031090732663869858, - 0.04416338726878166, - 0.023342810571193695, - -0.09791085124015808, - 0.01773425191640854, - -0.04863790050148964, - 0.04365210235118866, - -0.09506496787071228, - 0.14368534088134766, - -0.005144298542290926, - -0.07950660586357117, - -0.09214206039905548, - 0.07147965580224991, - -0.01729930005967617, - 0.02507266029715538, - 0.029670685529708862, - 0.051528457552194595, - 0.03800062835216522, - -0.11955156922340393, - 0.09893016517162323, - 0.03362716734409332, - 0.00511011341586709, - -0.0811774730682373, - -0.07450739294290543, - -0.0336877778172493, - 0.03602423518896103, - 0.0038190397899597883, - -0.07339638471603394, - 0.01095831673592329, - 0.015445513650774956, - 0.0006300406530499458, - 0.05763588100671768, - 0.13967403769493103, - 0.04407641664147377, - -0.12899541854858398 - ] - }, - "p245_266.wav": { - "name": "p245", - "embedding": [ - 0.06275972723960876, - 0.10458409786224365, - -0.016859009861946106, - 0.041719552129507065, - -0.05976272374391556, - 0.08425871282815933, - -0.1139720231294632, - 0.11842691898345947, - -0.06820785999298096, - 0.1367681324481964, - -0.059513628482818604, - 0.11924424767494202, - -0.029219742864370346, - -0.15291652083396912, - -0.055678531527519226, - 0.056495338678359985, - -0.05656929314136505, - -0.03382333368062973, - -0.053548652678728104, - -0.012108069844543934, - 0.019336778670549393, - 0.026876257732510567, - 0.06881733238697052, - 0.010827560909092426, - 0.03989651799201965, - 0.05641339346766472, - -0.0027742963284254074, - 0.055488113313913345, - 0.030304603278636932, - -0.08616435527801514, - -0.050449904054403305, - 0.09712797403335571, - -0.04303281009197235, - 0.01880800724029541, - 0.034522153437137604, - -0.0034501992631703615, - 0.018394574522972107, - -0.07735978066921234, - -0.03030386194586754, - -0.003677834989503026, - -0.027858294546604156, - 0.08223546296358109, - 0.020708100870251656, - -0.034314870834350586, - 0.022450122982263565, - -0.03282851725816727, - -0.024700362235307693, - -0.028004543855786324, - -0.10558931529521942, - 0.15091395378112793, - 0.06254488974809647, - 0.008824310265481472, - -0.0832078605890274, - -0.07657890021800995, - 0.11659140139818192, - -0.027609556913375854, - -0.13063302636146545, - -0.03658204525709152, - 0.05352015420794487, - 0.17844796180725098, - -0.015451924875378609, - -0.00901712104678154, - 0.024675089865922928, - 0.12304750084877014, - 0.0773555338382721, - 0.07592643797397614, - 0.0871802270412445, - 0.09822160005569458, - -0.003057264257222414, - 0.035391438752412796, - 0.052185989916324615, - 0.0679408460855484, - 0.03263004869222641, - -0.005798683501780033, - 0.01762537658214569, - -0.021588413044810295, - -0.03007441759109497, - -0.006682452280074358, - -0.020017992705106735, - -0.03128517419099808, - -0.040192827582359314, - 0.0009146551601588726, - 0.003359758760780096, - 0.02354622073471546, - -0.03548082709312439, - 0.0556405633687973, - 0.008179174736142159, - -0.03888179361820221, - 0.062490176409482956, - 0.05662870407104492, - 0.006768522784113884, - 0.047149911522865295, - -0.0548359751701355, - -0.08042454719543457, - 0.0018875326495617628, - 0.010982846841216087, - 0.012556401081383228, - 0.0741402804851532, - 0.042389899492263794, - -0.019322898238897324, - 0.11022689938545227, - 0.06383726000785828, - 0.005732770077884197, - 0.01422690600156784, - -0.08839423209428787, - 0.11207915842533112, - 0.08923239260911942, - -0.011756308376789093, - 0.05343710258603096, - -0.013429244048893452, - 0.06370701640844345, - 0.08137749135494232, - -0.1313275843858719, - -0.08043543994426727, - 0.024216052144765854, - -0.012891063466668129, - 0.01359106320887804, - 0.08228619396686554, - 0.0016628594603389502, - 0.032983340322971344, - 0.07362677901983261, - -0.07221278548240662, - -0.050070129334926605, - -0.01869276538491249, - 0.06632186472415924, - -0.06181447207927704, - 0.0451107956469059, - 0.04258367419242859, - -0.01631988026201725, - -0.019103124737739563, - 0.0688035786151886, - -0.005099877715110779, - -0.00914565846323967, - 0.05334053188562393, - -0.06745366752147675, - 0.030854910612106323, - -0.021866487339138985, - 0.00345616415143013, - 0.06318770349025726, - 0.034494396299123764, - 0.051546044647693634, - -0.020824428647756577, - -0.008118115365505219, - -0.08988383412361145, - 0.0050772977992892265, - 0.05215409770607948, - 0.06953738629817963, - -0.010564915835857391, - -0.01703966036438942, - -0.040006499737501144, - -0.05445738881826401, - 0.04455437883734703, - -0.011390249244868755, - 0.09923287481069565, - -0.019289400428533554, - 0.01112386118620634, - 0.11131057143211365, - 0.007414557505398989, - -0.009932797402143478, - -0.04962749779224396, - 0.004140329547226429, - 0.020935652777552605, - 0.05963125824928284, - -0.05633137747645378, - -0.07001110911369324, - 0.021303271874785423, - 0.018475018441677094, - -0.01819244772195816, - 0.06341169029474258, - 0.04877929389476776, - 0.00554093811661005, - 0.03536195680499077, - -0.05592143535614014, - 0.015182938426733017, - -0.08435918390750885, - -0.03751921281218529, - -0.01346663199365139, - -0.04503343254327774, - -0.026056470349431038, - 0.08853857219219208, - 0.06391701102256775, - 0.04124690219759941, - 0.005767180118709803, - -0.08943105489015579, - -0.07201839983463287, - 0.06090395152568817, - 0.046102941036224365, - 0.006043666508048773, - 0.032095517963171005, - 0.07614442706108093, - -0.01004391722381115, - 0.05742378905415535, - 0.07475529611110687, - 0.05713532119989395, - -0.029169835150241852, - -0.013026731088757515, - -0.08042380958795547, - 0.06478587538003922, - 0.09427034854888916, - -0.1158149242401123, - -0.092522531747818, - -0.044841885566711426, - -0.06462964415550232, - 0.03804730623960495, - -0.024530325084924698, - 0.018008101731538773, - 0.0534059964120388, - -0.03458288311958313, - -0.10203512758016586, - -0.1257103830575943, - 0.14744949340820312, - -0.0744117796421051, - -0.008387519046664238, - -0.061107221990823746, - 0.022889189422130585, - 0.06047376990318298, - 0.03595353662967682, - -0.01875624805688858, - 0.030477866530418396, - 0.05256212502717972, - -0.05230649560689926, - -0.004871675278991461, - 0.07330705225467682, - -0.0023340322077274323, - -0.1180487796664238, - 0.01086245384067297, - -0.07277999073266983, - 0.08402067422866821, - -0.050315700471401215, - 0.175079345703125, - -0.009606784209609032, - -0.04910197854042053, - -0.08703337609767914, - 0.04491184651851654, - -0.05352848768234253, - 0.05318020284175873, - 0.0428909957408905, - 0.0743495300412178, - 0.021179206669330597, - -0.06641532480716705, - 0.10372385382652283, - 0.0538320317864418, - -0.04913196340203285, - -0.08250683546066284, - -0.04653572291135788, - -0.0360957607626915, - 0.03450682386755943, - 0.004789314232766628, - -0.07222826778888702, - 0.01192548405379057, - 0.011586499400436878, - -0.024299541488289833, - 0.08379250019788742, - 0.13765215873718262, - 0.09894561767578125, - -0.10718527436256409 - ] - }, - "p245_088.wav": { - "name": "p245", - "embedding": [ - 0.04236525297164917, - 0.0754239484667778, - -0.045186206698417664, - 0.017724841833114624, - -0.05314382165670395, - 0.039793021976947784, - -0.10560227930545807, - 0.08876095712184906, - -0.024642176926136017, - 0.13936582207679749, - -0.056469183415174484, - 0.11251355707645416, - -0.025432568043470383, - -0.131851464509964, - 0.016572829335927963, - 0.05110277235507965, - 0.00490798382088542, - 0.002525883726775646, - -0.022889379411935806, - -0.011963474564254284, - 0.03135685250163078, - 0.02465794049203396, - 0.027101527899503708, - -0.0571042001247406, - 0.030960900709033012, - 0.06672944873571396, - -0.020442238077521324, - -0.0123983733355999, - -0.0274873785674572, - -0.04356111213564873, - -0.014801619574427605, - 0.0810440331697464, - -0.049000270664691925, - 0.021360039710998535, - 0.047575559467077255, - 0.014525718986988068, - -0.05328334867954254, - -0.04646814987063408, - 0.018019547685980797, - -0.005874117370694876, - -0.06566236168146133, - 0.07170110940933228, - 0.021989118307828903, - -0.05264194309711456, - 0.03709504008293152, - -0.02321106567978859, - -0.01464831456542015, - 0.0007167396834120154, - -0.06337251514196396, - 0.1360478699207306, - 0.03794759511947632, - 0.024134796112775803, - -0.08403553068637848, - -0.035290926694869995, - 0.06470327079296112, - 0.019074328243732452, - -0.10654830187559128, - -0.058657824993133545, - 0.04420551657676697, - 0.11027829349040985, - -0.004422395955771208, - -0.03993586450815201, - 0.021196871995925903, - 0.07929973304271698, - 0.022144824266433716, - 0.0743233785033226, - 0.06557686626911163, - 0.11367546021938324, - 0.004306766204535961, - 0.033876389265060425, - 0.04230637475848198, - 0.07662834227085114, - 0.05118350312113762, - -0.013198355212807655, - 0.01101980172097683, - -0.029172873124480247, - -0.03249881789088249, - -0.01671185903251171, - -0.015918301418423653, - -0.05581733211874962, - -0.04373576492071152, - -0.03005111590027809, - 0.017875809222459793, - 0.012417186051607132, - -0.012060903012752533, - 0.0020107373129576445, - 0.10785671323537827, - -0.047186147421598434, - 0.04970058426260948, - 0.06769898533821106, - -0.01986728049814701, - 0.022695254534482956, - -0.08581473678350449, - -0.06847154349088669, - 0.011790100485086441, - 0.0014627976343035698, - 0.02513846568763256, - 0.0700957402586937, - 0.03988618776202202, - 0.02200813964009285, - 0.0703100636601448, - 0.023964952677488327, - 0.014909503981471062, - -0.010527588427066803, - -0.060880087316036224, - 0.1303771585226059, - 0.10453125834465027, - -0.0334869921207428, - 0.029558852314949036, - -0.04625929892063141, - 0.028897378593683243, - 0.05807436630129814, - -0.09177964180707932, - -0.057013027369976044, - -0.010535283014178276, - -0.019309118390083313, - -0.0007236426463350654, - 0.11596311628818512, - 0.02552586793899536, - 0.0073189823888242245, - 0.10318364948034286, - -0.11327483505010605, - -0.09830202162265778, - -0.02680278941988945, - 0.010000979527831078, - -0.0974183902144432, - 0.06776617467403412, - 0.0634193941950798, - 0.009705807082355022, - 0.009710841812193394, - 0.07640868425369263, - 0.015296265482902527, - 0.04788470268249512, - -0.02279328927397728, - -0.004113178700208664, - 0.019310237839818, - -0.02490140311419964, - 0.022229334339499474, - 0.07778877764940262, - 0.018070844933390617, - 0.08573661744594574, - 0.001061081886291504, - 0.015682900324463844, - -0.10538306087255478, - 0.011464020237326622, - 0.08083142340183258, - 0.026681188493967056, - -0.047883540391922, - -0.02291342429816723, - -0.009277289733290672, - -0.0929560661315918, - 0.025853481143712997, - -0.02502596192061901, - 0.07388801872730255, - 0.007943443953990936, - -0.009611682966351509, - 0.13422970473766327, - 0.012996269389986992, - 0.0029671199154108763, - -0.06125715374946594, - -0.01954694092273712, - 0.004312800709158182, - 0.05019153282046318, - -0.1347048580646515, - -0.08504339307546616, - -0.03595571592450142, - -0.003675208194181323, - 0.004475640133023262, - 0.03553519770503044, - 0.08206185698509216, - 0.002802877454087138, - 0.027015861123800278, - -0.04695117101073265, - 0.006720840930938721, - -0.07637880742549896, - -0.05834929645061493, - -0.022947674617171288, - -0.07970127463340759, - -0.004842136055231094, - 0.09929104894399643, - -0.007080617360770702, - 0.018930353224277496, - -0.034353189170360565, - -0.054217901080846786, - -0.07930701225996017, - 0.045394912362098694, - 0.029179122298955917, - -0.04350883886218071, - 0.015973228961229324, - 0.04174887388944626, - -0.044578202068805695, - -0.017151078209280968, - 0.03466076776385307, - 0.09698228538036346, - -0.0734417662024498, - 0.004493778105825186, - -0.07623273134231567, - 0.10808276385068893, - 0.11594148725271225, - -0.07232116907835007, - -0.07124092429876328, - -0.07698666304349899, - -0.03539056330919266, - 0.01261798944324255, - -0.06289085745811462, - -0.02799104154109955, - 0.023715287446975708, - -0.05077308043837547, - -0.0756128579378128, - -0.1193140372633934, - 0.062068209052085876, - -0.03669997677206993, - 0.007340624928474426, - -0.07714134454727173, - 0.032271284610033035, - -0.0031958750914782286, - 0.04009813070297241, - -0.0646197497844696, - 0.044082652777433395, - 0.03337187319993973, - -0.03719500079751015, - 0.012969679199159145, - 0.058170340955257416, - 0.02635194920003414, - -0.0319247841835022, - -0.05222412943840027, - -0.06367869675159454, - 0.06894227862358093, - -0.05995966121554375, - 0.12644216418266296, - -0.02645149454474449, - -0.06243101879954338, - -0.06587567180395126, - -0.002566605806350708, - 0.009437533095479012, - 0.013487285003066063, - 0.06623219698667526, - 0.06982529908418655, - 0.017574332654476166, - -0.06234272941946983, - 0.10064071416854858, - 0.05192526429891586, - 0.0380561426281929, - -0.056160181760787964, - -0.04067622125148773, - -0.04052918031811714, - 0.03014150820672512, - -0.004749623127281666, - -0.09433123469352722, - 0.06469447910785675, - 0.02332175150513649, - 0.024281909689307213, - 0.04411012679338455, - 0.09125831723213196, - 0.06726011633872986, - -0.08644570410251617 - ] - }, - "p245_251.wav": { - "name": "p245", - "embedding": [ - 0.049328289926052094, - 0.059953488409519196, - -0.01054478157311678, - 0.020352214574813843, - -0.0199117548763752, - 0.05276632308959961, - -0.11319814622402191, - 0.06005311757326126, - -0.03570986166596413, - 0.16524741053581238, - -0.10067404061555862, - 0.09237560629844666, - -0.010569012723863125, - -0.17408621311187744, - -0.021804997697472572, - 0.04224531352519989, - -0.04727105796337128, - 0.00436815619468689, - -0.04831356555223465, - -0.03102274239063263, - 0.06311007589101791, - 0.09043288230895996, - 0.04414050281047821, - -0.05400954931974411, - 0.0042407820001244545, - 0.06681108474731445, - -0.025087375193834305, - 0.03582890331745148, - -0.028526578098535538, - -0.14018011093139648, - -0.07212929427623749, - 0.11119742691516876, - -0.027697492390871048, - 0.025717835873365402, - -0.0017318916507065296, - 0.018676547333598137, - 0.00516867870464921, - -0.03892746567726135, - -0.005725560709834099, - 0.00348449544981122, - -0.017069881781935692, - 0.0355876162648201, - -0.015043491497635841, - -0.008019731380045414, - 0.06229155510663986, - 0.0017029240261763334, - -0.03863031417131424, - -0.04859350621700287, - -0.08093905448913574, - 0.1773947775363922, - 0.06079889088869095, - -0.005341731011867523, - -0.0387200228869915, - -0.07986727356910706, - 0.07623015344142914, - -0.026826025918126106, - -0.13215351104736328, - -0.026669472455978394, - 0.07634372264146805, - 0.14381921291351318, - -0.022608619183301926, - -0.07395382225513458, - 0.05345578119158745, - 0.06411219388246536, - -0.025302492082118988, - 0.07952225208282471, - 0.07111746072769165, - 0.03671516478061676, - 0.0023251762613654137, - -0.015842296183109283, - 0.009580474346876144, - 0.0881299078464508, - 0.10273173451423645, - -0.02085926942527294, - 0.04295113682746887, - 0.013505339622497559, - -0.046422675251960754, - 0.01220475509762764, - -0.04360032081604004, - -0.005511448718607426, - 0.011075293645262718, - -0.032045405358076096, - 0.014161832630634308, - -0.034202009439468384, - -0.03750857710838318, - 0.009857445023953915, - 0.03544248268008232, - -0.014740318059921265, - 0.05080818012356758, - 0.0199776329100132, - 0.03391994535923004, - 0.035608358681201935, - -0.05160940811038017, - -0.0641646683216095, - 0.058570489287376404, - 0.05968838930130005, - -0.0176845695823431, - 0.04797288775444031, - 0.046034883707761765, - -0.07386460900306702, - 0.102744922041893, - -0.005570786073803902, - 0.014623268507421017, - -0.005881818942725658, - -0.10371869057416916, - 0.08173513412475586, - 0.14124202728271484, - -0.002029349096119404, - 0.03605691343545914, - -0.05607824772596359, - 0.08291968703269958, - 0.07880977541208267, - -0.14043837785720825, - -0.06603536754846573, - -0.006447142921388149, - -0.018748588860034943, - 0.02126128599047661, - 0.09051737189292908, - 0.00649992935359478, - 0.009501633234322071, - 0.11749141663312912, - -0.1311604231595993, - -0.05950690060853958, - -0.012895062565803528, - 0.019873417913913727, - -0.1369878649711609, - 0.05963912606239319, - 0.04787156730890274, - 0.002567657735198736, - 0.009192496538162231, - 0.0749645084142685, - -0.045056115835905075, - 0.023208580911159515, - -0.040937650948762894, - -0.050383709371089935, - -0.03924104943871498, - -0.07999251782894135, - -0.04218427836894989, - 0.05701034143567085, - 0.029537491500377655, - 0.03700511157512665, - -0.017973028123378754, - -0.0868062824010849, - -0.140301913022995, - 0.014460212551057339, - 0.0260839331895113, - 0.01212030928581953, - -0.0024296967312693596, - -0.00913532916456461, - -0.03982291370630264, - -0.08167420327663422, - 0.0697038471698761, - -0.058382548391819, - 0.03966904431581497, - 0.0042314352467656136, - 0.0007226946763694286, - 0.08827710151672363, - 0.020843632519245148, - -0.027329083532094955, - -0.056936465203762054, - -0.05073275417089462, - 0.022085975855588913, - 0.019711047410964966, - -0.08167755603790283, - -0.06705820560455322, - -0.017035579308867455, - 0.019519371911883354, - 0.011421735398471355, - 0.05200369656085968, - 0.07803940773010254, - 0.019217800348997116, - 0.006655774544924498, - -0.0657368004322052, - 0.00040613164310343564, - -0.10277131199836731, - -0.09155014157295227, - 0.008352401666343212, - -0.06651359796524048, - 0.023270629346370697, - 0.11062470078468323, - -0.02021205425262451, - -0.02643536776304245, - -0.10284361243247986, - -0.061432551592588425, - -0.0966632068157196, - 0.06050602346658707, - 0.06663714349269867, - 0.02348233386874199, - 0.020204821601510048, - 0.02230023592710495, - -0.03305267542600632, - 0.08827963471412659, - 0.04610329121351242, - 0.13187098503112793, - -0.007613573223352432, - 0.04823947325348854, - -0.039790716022253036, - 0.09473560750484467, - 0.08938881754875183, - -0.005552427843213081, - -0.08788211643695831, - -0.02698804996907711, - -0.08806759119033813, - 0.09903028607368469, - -0.02297016605734825, - -0.04481854289770126, - 0.03193691745400429, - -0.008596988394856453, - -0.10733656585216522, - -0.05774542689323425, - 0.0790112167596817, - 0.009053654037415981, - -0.04344800114631653, - -0.06411679834127426, - 0.0662645697593689, - 0.052377767860889435, - 0.0593242421746254, - -0.018326755613088608, - 0.024680186063051224, - 0.04674012213945389, - -0.07952851802110672, - 0.012883469462394714, - 0.02382596954703331, - 0.024478016421198845, - -0.06606549024581909, - 0.005899862386286259, - -0.10745332390069962, - 0.023255206644535065, - -0.07051318883895874, - 0.1077079176902771, - -0.014976700767874718, - -0.05343962460756302, - -0.06335050612688065, - 0.08788689970970154, - -0.03633427247405052, - 0.027967587113380432, - 0.050388187170028687, - 0.03291618078947067, - 0.08403430879116058, - -0.11826460808515549, - 0.0543389655649662, - 0.052195750176906586, - 0.008650942705571651, - -0.04869018495082855, - -0.06905244290828705, - -0.0529961958527565, - -0.005277123302221298, - -0.028453629463911057, - -0.08558467030525208, - 0.020153438672423363, - 0.01427987590432167, - 0.04202116280794144, - 0.03267994523048401, - 0.10085238516330719, - -0.009471339173614979, - -0.1218496710062027 - ] - }, - "p245_406.wav": { - "name": "p245", - "embedding": [ - 0.022433273494243622, - 0.11010242998600006, - -0.00825293455272913, - 0.0286464411765337, - -0.07395180314779282, - 0.05012383684515953, - -0.12714862823486328, - 0.14757871627807617, - -0.04032038152217865, - 0.10994261503219604, - -0.07795362919569016, - 0.12456173449754715, - -0.06213505193591118, - -0.18791791796684265, - -0.023377323523163795, - 0.08217857033014297, - 0.008465186692774296, - -0.004512334708124399, - -0.004613865632563829, - -0.011728457175195217, - 0.014283307828009129, - -0.004827337339520454, - 0.03108474239706993, - 0.008688081987202168, - 0.046692222356796265, - 0.0611715242266655, - 0.01224487740546465, - 0.0638929083943367, - 0.004131973255425692, - 0.0055716331116855145, - -0.027185827493667603, - 0.10582759976387024, - -0.05903424695134163, - 0.021410971879959106, - 0.08168889582157135, - 0.011746183037757874, - -0.015315328724682331, - -0.03388787806034088, - 0.009365646168589592, - -0.024647563695907593, - -0.046410251408815384, - 0.07175841182470322, - 0.024881821125745773, - 0.008763165213167667, - 0.04082033410668373, - 0.0612298883497715, - -0.004612419288605452, - -0.0269665215164423, - -0.12224484980106354, - 0.12598580121994019, - 0.01978444680571556, - 0.002172099193558097, - -0.10446738451719284, - -0.0774807408452034, - 0.10754960775375366, - -0.021365001797676086, - -0.09653037041425705, - -0.05904841050505638, - 0.10277979075908661, - 0.1550615131855011, - -0.02624199166893959, - -0.043827105313539505, - -0.02491120621562004, - 0.11231652647256851, - 0.04204030707478523, - 0.10449327528476715, - 0.0451502650976181, - 0.13080008327960968, - -0.01876417174935341, - 0.02138260006904602, - 0.05753375217318535, - 0.04959304258227348, - 0.02698889933526516, - -0.01137266494333744, - -0.0019854996353387833, - -0.008908815681934357, - 0.01426773052662611, - 0.041263844817876816, - -0.02699982188642025, - -0.03687213733792305, - -0.043809905648231506, - 0.012480275705456734, - -0.0067670284770429134, - -0.015618935227394104, - -0.005444853100925684, - 0.06822241842746735, - 0.056879524141550064, - -0.005852878093719482, - 0.08322931081056595, - 0.05207604542374611, - -0.05484650284051895, - 0.06743285059928894, - -0.09576766192913055, - -0.06958533078432083, - 0.009045041166245937, - -0.019883116707205772, - 0.03549882769584656, - 0.07247328758239746, - 0.012957296334207058, - 0.013708283193409443, - 0.10199087858200073, - 0.061259057372808456, - 0.01730342209339142, - 0.04120148718357086, - -0.08406860381364822, - 0.13011270761489868, - 0.06231855973601341, - -0.012005441822111607, - 0.04700308293104172, - -0.03417704626917839, - 0.04836944490671158, - 0.07589543610811234, - -0.1075824648141861, - -0.07824350148439407, - -0.01381006371229887, - 0.016014596447348595, - -0.04581049457192421, - 0.1094963327050209, - -0.036450717598199844, - 0.028939707204699516, - 0.11604727059602737, - -0.0929003581404686, - -0.07065986841917038, - -0.006767651066184044, - 0.018073400482535362, - -0.06184563785791397, - 0.035943079739809036, - 0.060829613357782364, - 0.0009416225366294384, - 0.025887329131364822, - 0.08263947069644928, - 0.02154458314180374, - 0.023379093036055565, - 0.03917766362428665, - -0.06726950407028198, - 0.007558941841125488, - -0.013419078662991524, - 0.0044156648218631744, - 0.08153006434440613, - 0.055984947830438614, - 0.07435870170593262, - 0.012628359720110893, - -0.007919891737401485, - -0.10971485078334808, - -0.015739768743515015, - 0.07960822433233261, - 0.06753089278936386, - -0.03338081017136574, - -0.030068732798099518, - -0.029494402930140495, - -0.07300763577222824, - 0.02699226699769497, - 0.03174315392971039, - 0.10782495141029358, - -0.030381515622138977, - -0.006868352647870779, - 0.11232158541679382, - 0.0364680290222168, - -0.016050897538661957, - -0.08812564611434937, - -0.04741069674491882, - -0.010606169700622559, - 0.03333564102649689, - -0.12429565191268921, - -0.06682263314723969, - -0.017341116443276405, - 0.04887819662690163, - -0.03813241794705391, - 0.05993665009737015, - 0.04879587143659592, - 0.022781575098633766, - 0.033962611109018326, - -0.029881419613957405, - 0.006083779968321323, - -0.0786898210644722, - -0.07324090600013733, - -0.007931698113679886, - -0.011931668035686016, - -0.03465215489268303, - 0.06462141126394272, - 0.02420193701982498, - 0.06448564678430557, - 0.011100980453193188, - -0.06012969836592674, - -0.09225257486104965, - 0.057550642639398575, - 0.03213885799050331, - -0.0028893230482935905, - 0.0760091170668602, - 0.04881973937153816, - -0.0874478742480278, - 0.07650589942932129, - 0.07824760675430298, - 0.09871044754981995, - -0.06014077737927437, - 0.04279525205492973, - -0.07939570397138596, - 0.06016266718506813, - 0.09840571880340576, - -0.11393151432275772, - -0.10124827176332474, - -0.044690296053886414, - -0.04529865086078644, - 0.0433080717921257, - -0.04151226207613945, - 0.007362959906458855, - 0.026500094681978226, - -0.016556164249777794, - -0.0832802802324295, - -0.10136456787586212, - 0.05681251361966133, - -0.06221964955329895, - 0.008924389258027077, - -0.06465260684490204, - 0.04324430227279663, - 0.06933638453483582, - 0.018118569627404213, - -0.018436025828123093, - -0.008176364004611969, - 0.06551843136548996, - -0.04315779358148575, - -0.02036682888865471, - 0.05997240170836449, - 0.025921640917658806, - -0.04682108759880066, - -0.008312494494020939, - -0.06844659149646759, - 0.07077407091856003, - -0.018362656235694885, - 0.18124262988567352, - -0.005586482584476471, - -0.049223992973566055, - -0.055040910840034485, - -0.0043085478246212006, - -0.03021119348704815, - 0.040172625333070755, - 0.026781173422932625, - 0.07101870328187943, - 0.0014859841903671622, - -0.018747827038168907, - 0.16909834742546082, - 0.025779128074645996, - -0.058207977563142776, - -0.05218813568353653, - -0.04835975915193558, - -0.058003440499305725, - 0.021850500255823135, - -0.0049940901808440685, - -0.11896137148141861, - -0.019330821931362152, - 0.019596410915255547, - -0.012157253921031952, - 0.04467516019940376, - 0.14526787400245667, - 0.08396502584218979, - -0.07826828956604004 - ] - }, - "p245_018.wav": { - "name": "p245", - "embedding": [ - 0.03764362633228302, - 0.09154234081506729, - -0.01500939205288887, - 0.028700580820441246, - -0.04713848978281021, - 0.04220254719257355, - -0.14503705501556396, - 0.14676356315612793, - -0.026814399287104607, - 0.1316307634115219, - -0.07282541692256927, - 0.10995055735111237, - -0.030329391360282898, - -0.18260616064071655, - -0.024929527193307877, - 0.060952335596084595, - -0.057107873260974884, - -0.05216919258236885, - -0.029472116380929947, - -0.03406848385930061, - 0.03186372295022011, - 0.043869826942682266, - 0.02480209805071354, - 0.042479485273361206, - 0.009154178202152252, - 0.07734604179859161, - -0.012624327093362808, - 0.03543419390916824, - 0.014923883602023125, - -0.029815804213285446, - -0.026638299226760864, - 0.09449411928653717, - -0.044534169137477875, - 0.0047486284747719765, - 0.03883387893438339, - -0.015306773595511913, - -0.006794194225221872, - -0.05252738669514656, - -0.02585734613239765, - -0.0024617682211101055, - -0.06378418207168579, - 0.07526711374521255, - 0.026857584714889526, - -0.013827614486217499, - 0.04137516766786575, - 0.017740922048687935, - -0.02246253192424774, - -0.03978245332837105, - -0.10990358889102936, - 0.1443898230791092, - 0.10094386339187622, - -0.011521545238792896, - -0.0602971687912941, - -0.04417018964886665, - 0.09648551791906357, - -0.01685475744307041, - -0.12209080159664154, - -0.03975705802440643, - 0.09193167835474014, - 0.14617785811424255, - -0.03656116873025894, - -0.024837318807840347, - 0.041759323328733444, - 0.14488957822322845, - 0.07192541658878326, - 0.0860205739736557, - 0.0774093046784401, - 0.11114364862442017, - -0.04562363773584366, - -0.004283388610929251, - 0.06778092682361603, - 0.06189418584108353, - 0.052877843379974365, - -0.007849927060306072, - 0.009774241596460342, - -0.0023856530897319317, - -0.009205885231494904, - -0.005678159184753895, - -0.02607208862900734, - -0.018539177253842354, - -0.02201419323682785, - -0.0015125880017876625, - -0.0222533717751503, - 0.032405536621809006, - -0.01320338062942028, - 0.055061180144548416, - 0.05358836054801941, - -0.011499579064548016, - 0.07383372634649277, - 0.039092641323804855, - 0.022722944617271423, - 0.07295548915863037, - -0.07043106108903885, - -0.052647124975919724, - 0.022289332002401352, - -0.005592279136180878, - 0.02574138157069683, - 0.07316920161247253, - 0.05053160339593887, - -0.012173017486929893, - 0.13138136267662048, - 0.039022963494062424, - -0.015197357162833214, - 0.022221194580197334, - -0.10390225797891617, - 0.1305568367242813, - 0.07771643251180649, - -0.041435956954956055, - 0.043465472757816315, - -0.03624916821718216, - 0.056415800005197525, - 0.06254167854785919, - -0.12350660562515259, - -0.050076842308044434, - 0.03929123282432556, - 0.03178086876869202, - -0.02937980927526951, - 0.12179442495107651, - 0.006015018559992313, - 0.04337229207158089, - 0.1066557839512825, - -0.06533510237932205, - -0.05633750930428505, - -0.02094077132642269, - 0.05509558320045471, - -0.08800698071718216, - 0.060511376708745956, - 0.058736544102430344, - -0.004252209793776274, - 0.017218418419361115, - 0.08921100199222565, - -0.011730597354471684, - -0.009119277819991112, - 0.003968897275626659, - -0.0507071390748024, - 0.019811999052762985, - -0.018805263563990593, - 0.008205834776163101, - 0.026582758873701096, - 0.02569599449634552, - 0.03908529132604599, - -0.005167054478079081, - -0.029924875125288963, - -0.11901851743459702, - 0.01826886460185051, - 0.027276957407593727, - 0.09127062559127808, - 0.0017137329559773207, - -0.02138015814125538, - -0.037254586815834045, - -0.04874496906995773, - -0.0005164108006283641, - -0.017661932855844498, - 0.05890849605202675, - -0.04590122401714325, - -0.018569065257906914, - 0.09410692751407623, - 0.027656808495521545, - 0.010529249906539917, - -0.050668325275182724, - -0.027563506737351418, - 0.0026391465216875076, - 0.05307858809828758, - -0.08083528280258179, - -0.07554952800273895, - -0.0001614801585674286, - 0.052309438586235046, - -0.010271302424371243, - 0.06478386372327805, - 0.042986806482076645, - 0.013125678524374962, - 0.00799109973013401, - -0.07204458117485046, - 0.022329751402139664, - -0.09145520627498627, - -0.08002033084630966, - -0.007434266619384289, - 0.0012075421400368214, - -0.008884293027222157, - 0.0639994814991951, - 0.016127046197652817, - 0.05375587195158005, - -0.011737806722521782, - -0.08225305378437042, - -0.0935329869389534, - 0.05271512642502785, - 0.07052402198314667, - -0.01769179478287697, - 0.05305507034063339, - 0.07153312861919403, - -0.04968443140387535, - 0.04087692126631737, - 0.04003684222698212, - 0.11682800203561783, - -0.03704041242599487, - 0.017538178712129593, - -0.07418105006217957, - 0.04964343458414078, - 0.08312442898750305, - -0.10155589133501053, - -0.06480942666530609, - -0.025586828589439392, - -0.05473422259092331, - 0.03188405930995941, - -0.024246953427791595, - 0.006356997415423393, - 0.025086306035518646, - -0.0049482667818665504, - -0.1010873094201088, - -0.09280122071504593, - 0.08394641429185867, - -0.08323238790035248, - 0.011020710691809654, - -0.08684509247541428, - 0.04471810907125473, - 0.08881159871816635, - 0.029325654730200768, - -0.032305918633937836, - -0.012388265691697598, - 0.041262850165367126, - -0.010964948683977127, - 0.011134950444102287, - 0.06203185394406319, - 0.04745800048112869, - -0.12669628858566284, - -0.022570312023162842, - -0.08204594254493713, - 0.062097832560539246, - -0.03753640875220299, - 0.14323924481868744, - 0.025786053389310837, - -0.045844126492738724, - -0.0949782133102417, - 0.030293602496385574, - -0.004052481148391962, - 0.06212465465068817, - 0.03314443677663803, - 0.06611765921115875, - 0.03992925211787224, - -0.057246748358011246, - 0.11820288002490997, - 0.04609298333525658, - -0.04439686983823776, - -0.07164696604013443, - -0.03039267472922802, - -0.040580786764621735, - 0.02873329073190689, - 0.025070957839488983, - -0.09447844326496124, - -0.038386739790439606, - 0.014619055204093456, - -0.02579638361930847, - 0.07778245955705643, - 0.13773494958877563, - 0.07198118418455124, - -0.11946538090705872 - ] - }, - "p245_171.wav": { - "name": "p245", - "embedding": [ - 0.048756081610918045, - 0.10788099467754364, - -0.015114023350179195, - 0.011512534692883492, - -0.04713154211640358, - 0.06162680685520172, - -0.1253783404827118, - 0.13322007656097412, - -0.03776686638593674, - 0.13973170518875122, - -0.07304860651493073, - 0.13877861201763153, - -0.01722518913447857, - -0.178676575422287, - -0.0655965805053711, - 0.041443996131420135, - -0.0508502796292305, - -0.02661816030740738, - -0.03518000245094299, - -0.010728603228926659, - 0.06004888564348221, - 0.031563468277454376, - 0.025766754522919655, - 0.008738480508327484, - 0.004412919748574495, - 0.06819488108158112, - 0.027018524706363678, - 0.07064399123191833, - 0.047100163996219635, - -0.05526864156126976, - -0.0397224985063076, - 0.11563403904438019, - -0.030901232734322548, - 0.0389702282845974, - 0.05596928298473358, - -0.005339030176401138, - 0.016688555479049683, - -0.04657135531306267, - 0.005024332087486982, - 0.011187591589987278, - -0.02432718500494957, - 0.07588692009449005, - 0.018434898927807808, - -0.003303242614492774, - 0.03780677169561386, - 0.040311750024557114, - -0.013515792787075043, - -0.05391480028629303, - -0.08915295451879501, - 0.16478806734085083, - 0.07315248996019363, - -0.018548952415585518, - -0.0543912872672081, - -0.0677674412727356, - 0.0878400057554245, - -0.02745378017425537, - -0.1169440895318985, - -0.0463714599609375, - 0.08114601671695709, - 0.14538335800170898, - -0.026894118636846542, - -0.04318784922361374, - 0.022913847118616104, - 0.15118637681007385, - 0.04801703244447708, - 0.08850812911987305, - 0.08872583508491516, - 0.11048711091279984, - -0.02008085697889328, - 0.016718624159693718, - 0.051669590175151825, - 0.07550366222858429, - 0.04862320423126221, - -0.001224815845489502, - 0.04683710262179375, - -0.01575394719839096, - 0.014198355376720428, - 0.016827991232275963, - -0.02759290486574173, - -0.01795351132750511, - -0.016925204545259476, - 0.02255924418568611, - -0.02233215980231762, - 0.026395462453365326, - -0.029256489127874374, - 0.07548694312572479, - 0.019365482032299042, - -0.010187491774559021, - 0.05716826766729355, - 0.05902569741010666, - 0.041420385241508484, - 0.060123853385448456, - -0.07182320952415466, - -0.10445757955312729, - 0.0424509271979332, - -0.012181096710264683, - 0.037834297865629196, - 0.06358584761619568, - 0.03178483247756958, - -0.0027521606534719467, - 0.10499188303947449, - 0.05855675786733627, - -0.037732724100351334, - 0.032149188220500946, - -0.09303632378578186, - 0.14386561512947083, - 0.09384411573410034, - -0.02661513350903988, - 0.027049528434872627, - -0.04984838515520096, - 0.07522110641002655, - 0.060198865830898285, - -0.12207189202308655, - -0.09108433872461319, - 0.029622238129377365, - 0.02106487937271595, - -0.027309224009513855, - 0.09333403408527374, - -0.01536241453140974, - 0.031974077224731445, - 0.09518208354711533, - -0.060793448239564896, - -0.05631709843873978, - -0.03943692892789841, - 0.028135620057582855, - -0.08980363607406616, - 0.0626974105834961, - 0.04496128857135773, - 0.002481867093592882, - -0.007878376170992851, - 0.10467808693647385, - -0.00851157121360302, - 0.008898183703422546, - 0.011487308889627457, - -0.04572311043739319, - 0.023658456280827522, - -0.02107226848602295, - 0.011845976114273071, - 0.021882344037294388, - 0.04806576669216156, - 0.041651174426078796, - 0.0021060099825263023, - -0.036074213683605194, - -0.11784979701042175, - 0.014952259138226509, - 0.037581268697977066, - 0.05971430242061615, - -0.007005677092820406, - -0.035375431180000305, - -0.024502793326973915, - -0.04102998226881027, - 0.009020538069307804, - -0.01272731926292181, - 0.06389932334423065, - -0.024287838488817215, - -0.014425510540604591, - 0.10816574096679688, - -0.00445717154070735, - 0.004040740430355072, - -0.04767029359936714, - -0.02507316693663597, - 0.027433931827545166, - 0.04105466604232788, - -0.08448050916194916, - -0.06702357530593872, - 0.002646862296387553, - 0.033555034548044205, - -0.017439104616642, - 0.05496995896100998, - 0.06342251598834991, - 0.0007091599400155246, - 0.04484397545456886, - -0.061908598989248276, - 0.005099175963550806, - -0.10752078890800476, - -0.06950725615024567, - -0.020398156717419624, - -0.01927923783659935, - -0.01337464153766632, - 0.06500561535358429, - 0.008506903424859047, - 0.04837486147880554, - -0.008027157746255398, - -0.07648869603872299, - -0.08697380125522614, - 0.06110098212957382, - 0.08827006816864014, - 0.023793108761310577, - 0.06287623941898346, - 0.04477966949343681, - -0.013410470448434353, - 0.06897540390491486, - 0.05162268131971359, - 0.10352706909179688, - -0.022335799410939217, - 0.008817421272397041, - -0.08764206618070602, - 0.06651510298252106, - 0.07290469110012054, - -0.09856373071670532, - -0.08053789287805557, - -0.021058687940239906, - -0.05695857107639313, - 0.021678728982806206, - -0.032520830631256104, - 0.018302321434020996, - 0.05524074658751488, - 0.0036722910590469837, - -0.10566379129886627, - -0.09024463593959808, - 0.08234959840774536, - -0.09206800162792206, - 0.003938575275242329, - -0.07406823337078094, - 0.05583396926522255, - 0.11015675961971283, - 0.03372165188193321, - -0.05074060708284378, - -0.013541603460907936, - 0.044080086052417755, - -0.044000640511512756, - -0.008936327882111073, - 0.005447791889309883, - 0.03692197799682617, - -0.10317489504814148, - 0.01576639898121357, - -0.08872266113758087, - 0.03166333585977554, - -0.06905488669872284, - 0.1497354656457901, - 0.01104644499719143, - -0.06141091138124466, - -0.08196337521076202, - 0.04192446544766426, - -0.03701178729534149, - 0.04831523448228836, - 0.039102789014577866, - 0.055049218237400055, - 0.01417083851993084, - -0.09580568224191666, - 0.12973815202713013, - 0.05164837837219238, - -0.04808277636766434, - -0.09841989725828171, - -0.03322279453277588, - -0.034084200859069824, - 0.052762411534786224, - 0.040813714265823364, - -0.082816943526268, - -0.04035034775733948, - 0.026957236230373383, - -0.03289157897233963, - 0.07755455374717712, - 0.14474698901176453, - 0.04329165071249008, - -0.10240413248538971 - ] - }, - "p245_045.wav": { - "name": "p245", - "embedding": [ - 0.036409180611371994, - 0.06373345851898193, - -0.04850875213742256, - 0.0012590696569532156, - -0.0655830129981041, - 0.043895818293094635, - -0.12458140403032303, - 0.10167236626148224, - -0.01149693038314581, - 0.13705159723758698, - -0.03965980187058449, - 0.10947172343730927, - -0.007635345682501793, - -0.16530273854732513, - -0.010866695083677769, - 0.021307123824954033, - -0.02756701223552227, - -0.006040188483893871, - -0.07994157075881958, - -0.0484396256506443, - 0.03522863984107971, - 0.043894726783037186, - 0.03130299597978592, - -0.09033254534006119, - 0.04276881739497185, - 0.049529194831848145, - 0.009891757741570473, - 0.036779966205358505, - -0.00973771046847105, - -0.07737540453672409, - -0.02124992571771145, - 0.09549771249294281, - -0.07894158363342285, - 0.015054848045110703, - 0.04750899225473404, - -0.02162482589483261, - -0.023351959884166718, - -0.038765259087085724, - -0.0073468806222081184, - 0.04152461886405945, - -0.036400359123945236, - 0.07820509374141693, - 0.03232400119304657, - -0.028038693591952324, - 0.05439256131649017, - 0.019738323986530304, - -0.011991242878139019, - -0.05228567123413086, - -0.08575982600450516, - 0.15669089555740356, - 0.03329421579837799, - -0.003134464845061302, - -0.08130383491516113, - -0.0701078474521637, - 0.08273150771856308, - -0.03147679939866066, - -0.10889844596385956, - -0.05446823686361313, - 0.04780600219964981, - 0.11897586286067963, - -0.03460344299674034, - -0.04509624466300011, - 0.032144591212272644, - 0.07155874371528625, - 0.05732978135347366, - 0.06744895875453949, - 0.0877368301153183, - 0.10208085179328918, - -0.010492564179003239, - 0.03598418086767197, - 0.03696993365883827, - 0.0879252701997757, - 0.03163312003016472, - -0.005844987463206053, - 0.03779713064432144, - -0.011790177784860134, - -0.015229344367980957, - -0.03421752154827118, - -0.030828654766082764, - -0.006605314090847969, - 0.006194352172315121, - 0.023673221468925476, - 0.04953373968601227, - 0.014020876958966255, - -0.05010061711072922, - 0.05289199575781822, - 0.054383210837841034, - -0.028982415795326233, - 0.054083094000816345, - 0.04069673269987106, - -0.006503037177026272, - 0.045567888766527176, - -0.09922129660844803, - -0.0970517247915268, - -0.004961349070072174, - -0.0029878681525588036, - 0.005250225774943829, - 0.04367164522409439, - 0.022428929805755615, - -0.016702774912118912, - 0.10158343613147736, - 0.04256047308444977, - -0.014677779749035835, - 0.03042411431670189, - -0.06267350167036057, - 0.11361376196146011, - 0.09337268769741058, - -0.016695033758878708, - 0.033519189804792404, - -0.07685229182243347, - 0.05857387185096741, - 0.04186607152223587, - -0.10366949439048767, - -0.08254759013652802, - 0.02052883617579937, - -0.012891009449958801, - -0.028348566964268684, - 0.13967370986938477, - -0.006839882582426071, - 0.021905580535531044, - 0.12210458517074585, - -0.09927570074796677, - -0.04383537918329239, - -0.009029564447700977, - 0.04083845391869545, - -0.06358872354030609, - 0.04009952396154404, - 0.038503486663103104, - -0.014631219208240509, - 0.0349312424659729, - 0.0866166204214096, - -0.001095527783036232, - 0.03843126818537712, - 0.0076775867491960526, - -0.021519560366868973, - 0.03769470378756523, - -0.015402357093989849, - -0.015597800724208355, - 0.07944595813751221, - 0.06551666557788849, - 0.0781731903553009, - -0.014774523675441742, - -0.04573675990104675, - -0.10937036573886871, - 0.024098757654428482, - 0.02056432142853737, - 0.07296841591596603, - -0.030045025050640106, - 0.0053977956995368, - -0.04413025826215744, - -0.09769289195537567, - 0.031458646059036255, - 0.0046644010581076145, - 0.08497168123722076, - -0.009289938025176525, - -0.0042288536205887794, - 0.11800014972686768, - 0.037131939083337784, - -0.0033342335373163223, - -0.038018785417079926, - -0.03281279280781746, - -0.014849001541733742, - 0.056446775794029236, - -0.0863642692565918, - -0.06582127511501312, - -0.02366805635392666, - 0.014046663418412209, - -0.014413945376873016, - 0.06533527374267578, - 0.0694565549492836, - 0.024139652028679848, - 0.04405529797077179, - -0.07130910456180573, - -0.014843943528831005, - -0.08857505023479462, - -0.0410175621509552, - -0.0230402834713459, - -0.04828879237174988, - -0.05237221345305443, - 0.09565780311822891, - -0.005147187039256096, - 0.04034685716032982, - -0.031523481011390686, - -0.07084348797798157, - -0.07660600543022156, - 0.05688017979264259, - 0.03928137570619583, - -0.023704711347818375, - 0.020886853337287903, - 0.04073280468583107, - -0.03065858967602253, - 0.03230053558945656, - 0.08439664542675018, - 0.06984895467758179, - -0.02489544451236725, - 0.007882220670580864, - -0.0605912059545517, - 0.13794445991516113, - 0.06979639083147049, - -0.07512485235929489, - -0.06894218176603317, - -0.03242199122905731, - -0.06852367520332336, - 0.010146543383598328, - -0.02471516840159893, - 0.011098667047917843, - 0.02745484560728073, - 0.01733534224331379, - -0.09166112542152405, - -0.07267217338085175, - 0.05370981618762016, - -0.06865569949150085, - -0.00790631864219904, - -0.06420284509658813, - 0.014538805931806564, - 0.08597350865602493, - 0.05690353736281395, - -0.00878701452165842, - -0.008382181636989117, - 0.057446569204330444, - -0.04996214807033539, - 0.03720337152481079, - 0.056372448801994324, - 0.033424291759729385, - -0.04152454063296318, - -0.01176535151898861, - -0.048215679824352264, - 0.027980845421552658, - -0.039744336158037186, - 0.13341759145259857, - 0.014345242641866207, - -0.058308348059654236, - -0.05801123380661011, - 0.051401592791080475, - -0.0452803373336792, - 0.043751880526542664, - 0.04491008073091507, - 0.06822976469993591, - 0.05634336918592453, - -0.07143687456846237, - 0.11643654853105545, - 0.04153633117675781, - -0.025006501004099846, - -0.06321591138839722, - -0.07403762638568878, - -0.04065658897161484, - 0.030912788584828377, - 0.038822632282972336, - -0.0725584551692009, - 0.023880701512098312, - 0.03400370478630066, - -0.007432215381413698, - 0.03394685685634613, - 0.12482020258903503, - 0.08397350460290909, - -0.09825662523508072 - ] - }, - "p245_011.wav": { - "name": "p245", - "embedding": [ - 0.04693511500954628, - 0.09151306003332138, - -0.015350173227488995, - 0.01501099206507206, - -0.05352330207824707, - 0.024777594953775406, - -0.11958026885986328, - 0.13174134492874146, - -0.03121187724173069, - 0.11712955683469772, - -0.07886708527803421, - 0.12884557247161865, - -0.03458358719944954, - -0.1426384150981903, - -0.037757065147161484, - 0.044479768723249435, - -0.041767336428165436, - -0.043814342468976974, - -0.005046903621405363, - -0.03032349981367588, - 0.03716897591948509, - 0.03688639774918556, - 0.03818846866488457, - 0.0272796880453825, - 0.016458002850413322, - 0.07186990231275558, - 0.0034022170584648848, - 0.035620372742414474, - 0.02769152633845806, - -0.026159582659602165, - -0.0077646332792937756, - 0.06918182224035263, - -0.04000372067093849, - 0.022949062287807465, - 0.03956812992691994, - 0.0021731534507125616, - 0.0021572664845734835, - -0.05360705778002739, - -0.02615455724298954, - 0.006823182106018066, - -0.050907909870147705, - 0.07867929339408875, - 0.021527081727981567, - -0.034393176436424255, - 0.02676575817167759, - 0.00946024339646101, - -0.01362234354019165, - -0.016480371356010437, - -0.09921713173389435, - 0.14778493344783783, - 0.05703011155128479, - 0.022879837080836296, - -0.08257072418928146, - -0.03717171773314476, - 0.10028153657913208, - -0.02581956796348095, - -0.1014406681060791, - -0.030647045001387596, - 0.059790290892124176, - 0.13068018853664398, - -0.028375966474413872, - -0.04566575959324837, - 0.02301890030503273, - 0.10864495486021042, - 0.056900300085544586, - 0.0498492605984211, - 0.09485321491956711, - 0.10639964789152145, - -0.03414921835064888, - 0.011846917681396008, - 0.061606764793395996, - 0.08003950119018555, - 0.041194938123226166, - -0.010102824307978153, - 0.004090904723852873, - -0.007145411800593138, - -0.013436323963105679, - 0.004326218273490667, - -0.016671283170580864, - -0.028611352667212486, - -0.05065273866057396, - -0.002835388295352459, - -0.015028364956378937, - 0.02607208490371704, - -0.010497629642486572, - 0.05200168490409851, - 0.03615011274814606, - -0.02207058109343052, - 0.06440500915050507, - 0.05203700065612793, - -0.005159619729965925, - 0.04691538214683533, - -0.0748772844672203, - -0.05882537364959717, - -0.001121237874031067, - -0.01175533514469862, - 0.044174011796712875, - 0.08308183401823044, - 0.04617855325341225, - 0.01403222419321537, - 0.11239280551671982, - 0.049323976039886475, - -0.006587873678654432, - -0.013005129992961884, - -0.09525784850120544, - 0.12376048415899277, - 0.09235859662294388, - -0.042835406959056854, - 0.030474955216050148, - -0.02863466553390026, - 0.042455077171325684, - 0.04740241914987564, - -0.10655175894498825, - -0.06431827694177628, - 0.020908359438180923, - 0.03831387683749199, - 0.010186552070081234, - 0.10208350419998169, - -0.007704551797360182, - 0.041669271886348724, - 0.09961819648742676, - -0.05906952545046806, - -0.06040550395846367, - -0.027082595974206924, - 0.03710734471678734, - -0.06680440157651901, - 0.07056431472301483, - 0.05684357509016991, - 0.012937569990754128, - 0.013492563739418983, - 0.07756072282791138, - 0.004854758270084858, - 0.0016230002511292696, - -0.004766053054481745, - -0.031538475304841995, - 0.023391051217913628, - -0.017501024529337883, - 0.00579298147931695, - 0.056401170790195465, - 0.043436940759420395, - 0.06694584339857101, - 0.02649066410958767, - -0.02080940082669258, - -0.10680897533893585, - 0.021535338833928108, - 0.05269007757306099, - 0.06138451769948006, - -0.02455325424671173, - -0.04900142550468445, - -0.027948278933763504, - -0.03953804820775986, - -0.003613616107031703, - 0.010626162402331829, - 0.07250669598579407, - -0.029650498181581497, - 0.00503036892041564, - 0.1020331159234047, - 0.01196464616805315, - -0.00870331097394228, - -0.04239264130592346, - -0.019085511565208435, - -0.011673356406390667, - 0.04814722761511803, - -0.08738696575164795, - -0.08782561123371124, - -0.016146989539265633, - 0.040562499314546585, - -0.00870204996317625, - 0.05808655172586441, - 0.05818870663642883, - -0.008133861236274242, - 0.017620747908949852, - -0.05324352905154228, - 0.026560891419649124, - -0.09001462906599045, - -0.07081657648086548, - -0.013763591647148132, - -0.020148402079939842, - -0.011310645379126072, - 0.06907995045185089, - 0.01780843548476696, - 0.06420137733221054, - 0.001113583566620946, - -0.09472236782312393, - -0.08345158398151398, - 0.05078394338488579, - 0.05246732756495476, - -0.02011728286743164, - 0.04108734801411629, - 0.07679054141044617, - -0.029277771711349487, - 0.043227437883615494, - 0.033382292836904526, - 0.09315013885498047, - -0.07060300558805466, - 0.007743968162685633, - -0.05747741460800171, - 0.052234042435884476, - 0.07412166148424149, - -0.10356845706701279, - -0.06901421397924423, - -0.058231987059116364, - -0.04774828255176544, - 0.02056937851011753, - -0.014962839893996716, - 0.013775983825325966, - 0.024671588093042374, - -0.02619941532611847, - -0.09307463467121124, - -0.09923496097326279, - 0.06260036677122116, - -0.060408320277929306, - 0.008377525955438614, - -0.07549357414245605, - 0.03015982173383236, - 0.07258807122707367, - 0.02156328223645687, - -0.013451685197651386, - 0.00790953729301691, - 0.005418199580162764, - -0.02525339089334011, - -0.018708324059844017, - 0.05127616599202156, - 0.038760047405958176, - -0.06665867567062378, - -0.026355160400271416, - -0.07957812398672104, - 0.06650206446647644, - -0.03824251517653465, - 0.1345810741186142, - -0.008153272792696953, - -0.05615853890776634, - -0.07514964044094086, - -0.0017292529810220003, - -0.022700471803545952, - 0.053166139870882034, - 0.04759633541107178, - 0.05596443638205528, - 0.010722211562097073, - -0.0535164549946785, - 0.1146818995475769, - 0.0649646446108818, - -0.043889325112104416, - -0.07289095222949982, - -0.033148143440485, - -0.028311440721154213, - 0.022350577637553215, - 0.019162673503160477, - -0.06904880702495575, - -0.0017095506191253662, - -0.005666177719831467, - -0.015931710600852966, - 0.07856272906064987, - 0.11935938894748688, - 0.0751008614897728, - -0.10518162697553635 - ] - }, - "p245_138.wav": { - "name": "p245", - "embedding": [ - 0.0700933188199997, - 0.0377182811498642, - -0.006153803318738937, - -0.008792988955974579, - -0.01029633916914463, - 0.06081300973892212, - -0.10449773818254471, - 0.05837077274918556, - -0.016417216509580612, - 0.08198314905166626, - -0.08462048321962357, - 0.07559515535831451, - 0.010649865493178368, - -0.1105349063873291, - -0.049864549189805984, - 0.028284763917326927, - -0.0215237308293581, - 0.0077948011457920074, - -0.05577688664197922, - 0.004510017111897469, - 0.015806157141923904, - 0.029210276901721954, - 0.0397406741976738, - -0.046633027493953705, - 0.016121678054332733, - 0.02957761660218239, - 0.02926536090672016, - 0.047166623175144196, - 0.04204349219799042, - 0.011825904250144958, - 0.007843952625989914, - 0.08851593732833862, - -0.013868517242372036, - -0.01586082950234413, - 0.04913341626524925, - 0.029168786481022835, - 0.013422926887869835, - -0.08862494677305222, - -0.0008264980278909206, - 0.0478745736181736, - -0.022770477458834648, - 0.0700978934764862, - 0.05314859747886658, - 0.011500800028443336, - -0.01110411062836647, - 0.012603465467691422, - -0.020398985594511032, - -0.049812182784080505, - -0.09821194410324097, - 0.16786211729049683, - 0.03350654989480972, - -0.001977858366444707, - -0.10501866787672043, - -0.017769109457731247, - 0.08057454228401184, - -0.008657335303723812, - -0.029612254351377487, - -0.045323342084884644, - 0.020617350935935974, - 0.11189388483762741, - 0.014370227232575417, - -0.036810312420129776, - 0.0023287988733500242, - 0.08959723263978958, - -0.0040346551686525345, - 0.048174213618040085, - 0.10340115427970886, - 0.10218804329633713, - -0.0018373546190559864, - 0.03814993053674698, - 0.07398408651351929, - 0.04268969967961311, - 0.019909044727683067, - -0.02334015816450119, - 0.04232386499643326, - -0.01496145874261856, - -0.03174427151679993, - 0.03793960064649582, - -0.01772383600473404, - -0.055531736463308334, - 0.025936629623174667, - -0.012942067347466946, - 0.008283143863081932, - 0.08056256920099258, - -0.07879214733839035, - 0.04175274074077606, - -2.6310328394174576e-05, - 0.016693077981472015, - 0.06180515140295029, - 0.06533603370189667, - 0.028443939983844757, - 0.004371471703052521, - -0.02654329314827919, - -0.11455459892749786, - 0.007954401895403862, - -0.004122806712985039, - 0.025998856872320175, - 0.029509756714105606, - 0.030390221625566483, - -0.008637006394565105, - 0.06519265472888947, - 0.04027631878852844, - -0.017089582979679108, - 0.01539282500743866, - -0.05229375511407852, - 0.09466859698295593, - 0.12216692417860031, - 0.008287385106086731, - 0.0025515519082546234, - -0.048837412148714066, - 0.04525119438767433, - 0.03641248121857643, - -0.098570317029953, - -0.05471383035182953, - 0.060472600162029266, - 0.04027802497148514, - 0.06161133944988251, - 0.0813916027545929, - -0.0029232604429125786, - -0.0002641519531607628, - 0.04492009058594704, - -0.05212651938199997, - -0.045050930231809616, - 0.005184590816497803, - 0.003385903313755989, - 0.0001318417489528656, - -0.005962742492556572, - 0.011397925205528736, - 0.005217838101089001, - -0.08035160601139069, - 0.083350270986557, - 0.005274652503430843, - 0.010940833017230034, - -0.041902244091033936, - 0.03870531916618347, - 0.113883376121521, - -0.0008794106543064117, - -0.009889818727970123, - 0.05096101015806198, - 0.06472828984260559, - 0.03843250498175621, - 0.04841066896915436, - -0.03987744078040123, - -0.10456392168998718, - 0.0015691224252805114, - 0.04382818192243576, - 0.046617865562438965, - -0.056362759321928024, - -0.04848276078701019, - -0.05004505068063736, - -0.009818851947784424, - 0.02410774677991867, - -0.015900276601314545, - 0.0555308535695076, - 0.04682601988315582, - -0.04986138641834259, - 0.09564351290464401, - -0.0859374925494194, - 0.003384761279448867, - -0.006825659424066544, - -0.0012053176760673523, - 0.03988638147711754, - 0.025213807821273804, - -0.030601859092712402, - -0.06182052195072174, - 0.031095515936613083, - -0.018277062103152275, - -0.015841705724596977, - -0.048798274248838425, - 0.03619398921728134, - -0.0316365584731102, - 0.03343591094017029, - -0.0954868346452713, - 0.011421136558055878, - -0.09681153297424316, - 0.00432366319000721, - 0.016019439324736595, - -0.026051219552755356, - -0.003913429100066423, - 0.07487329095602036, - 0.012472547590732574, - 0.012945892289280891, - -0.024861523881554604, - -0.08066530525684357, - 0.003796197474002838, - 0.07142336666584015, - 0.08017975836992264, - 0.0042107198387384415, - 0.035059794783592224, - 0.04922247678041458, - 0.040788229554891586, - 0.0242929644882679, - 0.06684544682502747, - 0.03171093016862869, - -0.038825489580631256, - -0.06607095152139664, - -0.01302734762430191, - 0.11494527012109756, - 0.01928497664630413, - -0.07260964810848236, - -0.046309322118759155, - -0.016786161810159683, - -0.05228213220834732, - 0.022402217611670494, - -0.03037768043577671, - 0.018248820677399635, - 0.05267509073019028, - -0.03130359202623367, - -0.09463240206241608, - -0.06523000448942184, - 0.03587363287806511, - -0.04817706346511841, - -0.007058877032250166, - -0.04091645032167435, - 0.023375002667307854, - 0.07097339630126953, - 0.02264590561389923, - -0.025574853643774986, - 0.002775501925498247, - -0.03003949113190174, - -0.08194026350975037, - -0.09228100627660751, - -0.043983664363622665, - 0.014984121546149254, - -0.08094244450330734, - 0.012860621325671673, - -0.04829484969377518, - 0.07830144464969635, - -0.05900753289461136, - 0.08163068443536758, - 0.022269975394010544, - -0.0518019013106823, - -0.05760157108306885, - -0.018490605056285858, - -0.046950988471508026, - 0.061665259301662445, - 0.06822863221168518, - -0.01342926174402237, - 0.00778565090149641, - -0.06658805906772614, - 0.10745098441839218, - 0.042737770825624466, - -0.02777242660522461, - -0.09870735555887222, - 0.014597277157008648, - -0.010621944442391396, - 0.05519593879580498, - 0.017933133989572525, - -0.0048694908618927, - 0.029852233827114105, - 0.010921476408839226, - -0.0545937642455101, - 0.023371294140815735, - 0.07272682338953018, - 0.05420816317200661, - -0.06974054872989655 - ] - }, - "p245_121.wav": { - "name": "p245", - "embedding": [ - 0.05420980975031853, - 0.10433891415596008, - -0.002371707931160927, - 0.020668279379606247, - -0.062030401080846786, - 0.04665670171380043, - -0.14484882354736328, - 0.16389036178588867, - -0.03254805877804756, - 0.1299302577972412, - -0.04473206400871277, - 0.13779394328594208, - -0.023932889103889465, - -0.16968263685703278, - -0.03426493704319, - 0.06643204391002655, - -0.037543244659900665, - -0.03569311648607254, - -0.018265314400196075, - -0.020131167024374008, - 0.023475490510463715, - 0.04014807194471359, - 0.0508076474070549, - 0.018009144812822342, - 0.038952454924583435, - 0.07226864248514175, - 0.00013127876445651054, - 0.05769720673561096, - 0.015796735882759094, - -0.08617471158504486, - -0.028159286826848984, - 0.07532615959644318, - -0.0640748143196106, - 0.023477481678128242, - 0.050398264080286026, - -0.027185093611478806, - 0.0007421582704409957, - -0.052032992243766785, - -0.03202911466360092, - 5.494197830557823e-05, - -0.026282360777258873, - 0.08942057192325592, - 0.0127931609749794, - -0.013073738664388657, - 0.03898070007562637, - 0.029325444251298904, - -0.007269487716257572, - -0.039107270538806915, - -0.11962693929672241, - 0.14749082922935486, - 0.05608372390270233, - 0.003949814476072788, - -0.09281918406486511, - -0.07841530442237854, - 0.0938212126493454, - -0.052570588886737823, - -0.10997049510478973, - -0.03562942147254944, - 0.06064043939113617, - 0.14383962750434875, - -0.02476629428565502, - -0.05246924236416817, - 0.03413013368844986, - 0.11553512513637543, - 0.07347337901592255, - 0.06802143156528473, - 0.08190984278917313, - 0.09528174251317978, - -0.04751479625701904, - 0.013920800760388374, - 0.033005841076374054, - 0.07544243335723877, - 0.04563790559768677, - 0.011751430109143257, - 0.015539208427071571, - -1.2705335393548012e-05, - -0.0038763682823628187, - -0.019443053752183914, - -0.017570193856954575, - -0.014361182227730751, - -0.033393293619155884, - 0.02703552320599556, - -0.0016232822090387344, - 0.03060579113662243, - -0.01138681173324585, - 0.07251236587762833, - 0.017457157373428345, - -0.010640464723110199, - 0.06827431917190552, - 0.03848595172166824, - 0.01570388302206993, - 0.06788620352745056, - -0.09191546589136124, - -0.05857941880822182, - 0.02314208820462227, - -0.0037599471397697926, - 0.03216229006648064, - 0.06510032713413239, - 0.026834748685359955, - -0.007788940332829952, - 0.12890613079071045, - 0.06693337112665176, - -0.006075536832213402, - 0.0040418291464447975, - -0.09198859333992004, - 0.12205406278371811, - 0.06841802597045898, - -0.018052613362669945, - 0.06684797257184982, - -0.04273418337106705, - 0.05855492874979973, - 0.05181191861629486, - -0.13271838426589966, - -0.09420039504766464, - 0.0129048777744174, - 0.016212984919548035, - -0.0145639106631279, - 0.12382704764604568, - -0.0074400519952178, - 0.06595636904239655, - 0.09348036348819733, - -0.08727648109197617, - -0.048237577080726624, - 0.0034920484758913517, - 0.055652230978012085, - -0.09223422408103943, - 0.07151056826114655, - 0.06163690611720085, - -0.017924435436725616, - 0.027824589982628822, - 0.08913451433181763, - 0.0011070951586589217, - 0.013404087163507938, - 0.022202227264642715, - -0.05987752974033356, - -0.010100746527314186, - -0.022031325846910477, - -0.0036397739313542843, - 0.03698786720633507, - 0.032855454832315445, - 0.05669660121202469, - -0.00853847898542881, - -0.03218870237469673, - -0.13003608584403992, - 0.002222585491836071, - 0.03106776811182499, - 0.07201901078224182, - -0.011891582980751991, - -0.03763050585985184, - -0.026040777564048767, - -0.04013928025960922, - -0.003471312578767538, - 0.00908602960407734, - 0.06965924799442291, - -0.03596119582653046, - 0.015903249382972717, - 0.10955451428890228, - 0.047489821910858154, - -0.0040491316467523575, - -0.04420807957649231, - -0.027716761454939842, - -0.008892526850104332, - 0.06171005219221115, - -0.0735800638794899, - -0.07369723170995712, - -0.005328902043402195, - 0.04626666009426117, - -0.006353202275931835, - 0.08953050523996353, - 0.059936851263046265, - 0.01968693919479847, - 0.024121977388858795, - -0.05000599846243858, - 0.01973305456340313, - -0.07669686526060104, - -0.08990556001663208, - -0.009098267182707787, - -0.002223168732598424, - -0.04789714515209198, - 0.07107093930244446, - 0.04477805644273758, - 0.08857405930757523, - -0.020753053948283195, - -0.06478407233953476, - -0.09558364003896713, - 0.044731177389621735, - 0.051224276423454285, - -0.011965077370405197, - 0.03919252008199692, - 0.066912442445755, - -0.03924969956278801, - 0.0796569287776947, - 0.0604277066886425, - 0.07815545797348022, - -0.04826827347278595, - 0.03236033022403717, - -0.07221107184886932, - 0.060588933527469635, - 0.09354443848133087, - -0.09701211750507355, - -0.08625448495149612, - -0.026837002485990524, - -0.07930216193199158, - 0.042531609535217285, - -0.011242630891501904, - 0.023232558742165565, - 0.05087307095527649, - -0.0017697298899292946, - -0.10703520476818085, - -0.09764380753040314, - 0.09167136996984482, - -0.07334596663713455, - 0.01491341833025217, - -0.058493319898843765, - 0.040147699415683746, - 0.09295397251844406, - 0.03933216631412506, - -0.01162954792380333, - -0.03260267525911331, - 0.04031674563884735, - -0.009134911000728607, - 0.0050201937556266785, - 0.07226568460464478, - 0.04269695281982422, - -0.09170492738485336, - 0.005055755842477083, - -0.07237952202558517, - 0.04862818494439125, - -0.029337037354707718, - 0.15892544388771057, - 0.004040901083499193, - -0.06510515511035919, - -0.08938401937484741, - 0.01596609130501747, - -0.0412583127617836, - 0.061232030391693115, - 0.01430846843868494, - 0.0633939728140831, - 0.054595205932855606, - -0.048005711287260056, - 0.11012687534093857, - 0.05717059224843979, - -0.063078373670578, - -0.06797784566879272, - -0.06504462659358978, - -0.03918616101145744, - 0.04230204224586487, - 0.01452500931918621, - -0.09345594048500061, - -0.024548668414354324, - 0.01076485589146614, - -0.006039399653673172, - 0.08096581697463989, - 0.13920244574546814, - 0.055372096598148346, - -0.13247406482696533 - ] - }, - "p245_331.wav": { - "name": "p245", - "embedding": [ - 0.03541579097509384, - 0.0816521942615509, - -0.012221673503518105, - 0.012426997534930706, - -0.040238942950963974, - 0.08783203363418579, - -0.14746879041194916, - 0.09265685081481934, - -0.08654499053955078, - 0.1622808426618576, - -0.09461624175310135, - 0.09993752092123032, - -0.038974132388830185, - -0.17777110636234283, - -0.057347845286130905, - 0.04853283241391182, - -0.05085389316082001, - -0.05372815206646919, - -0.04684190824627876, - -0.0032470766454935074, - 0.061999496072530746, - 0.03692714124917984, - 0.0014325641095638275, - 0.010339765809476376, - 0.015984781086444855, - 0.051798634231090546, - -0.003846462583169341, - 0.04651078209280968, - 0.0055691152811050415, - -0.05945006012916565, - -0.017140604555606842, - 0.1259884536266327, - -0.04461679607629776, - 0.012495743110775948, - 0.019269734621047974, - 0.02090282551944256, - 0.02442237362265587, - -0.06516962498426437, - -0.008429610170423985, - -0.001907103811390698, - -0.03992881253361702, - 0.05954951047897339, - -0.005811501760035753, - 0.028921978548169136, - 0.011498075909912586, - 0.007941762916743755, - -0.03373553603887558, - -0.04980475455522537, - -0.09024978429079056, - 0.14310427010059357, - 0.051989879459142685, - 0.009912103414535522, - -0.06032196804881096, - -0.09596925228834152, - 0.11927606165409088, - 0.0018951395759359002, - -0.11591041088104248, - -0.05492280051112175, - 0.07581627368927002, - 0.19796814024448395, - -0.03416939824819565, - -0.04985221475362778, - 0.03073951043188572, - 0.0916435718536377, - 0.048828016966581345, - 0.09417574107646942, - 0.09466355293989182, - 0.08180411159992218, - 0.021081503480672836, - -0.024011464789509773, - 0.07200424373149872, - 0.06034855544567108, - 0.06768033653497696, - -0.02673531509935856, - 0.047355808317661285, - 0.019006023183465004, - -0.00662753963842988, - 0.03522117808461189, - -0.03266746923327446, - -0.014477008953690529, - -0.008514937944710255, - 0.010027474723756313, - -0.011535647325217724, - 0.012374328449368477, - -0.03871690854430199, - 0.03026578016579151, - 0.028054356575012207, - -0.018768228590488434, - 0.08365121483802795, - 0.04314650222659111, - 0.03223786875605583, - 0.06849844008684158, - -0.0776033103466034, - -0.07629218697547913, - 0.05171087384223938, - 0.02957124449312687, - 0.002694519469514489, - 0.05777736008167267, - 0.030600065365433693, - -0.03157910332083702, - 0.10725909471511841, - 0.022535985335707664, - 0.012225919403135777, - 0.016766047105193138, - -0.12019062042236328, - 0.1189369186758995, - 0.08406544476747513, - -0.04210780933499336, - 0.02105756849050522, - -0.014496641233563423, - 0.05981947109103203, - 0.07588721811771393, - -0.13372643291950226, - -0.10916389524936676, - 0.0372701920568943, - 0.02367197722196579, - -0.022109616547822952, - 0.11264190077781677, - -0.020507248118519783, - 0.00626147398725152, - 0.09513746947050095, - -0.08201045542955399, - -0.050255924463272095, - -0.0029273105319589376, - 0.034200429916381836, - -0.07355986535549164, - 0.04518639296293259, - 0.03625653684139252, - 0.02164197340607643, - -0.01521256286650896, - 0.09786180406808853, - -0.02204759605228901, - 0.006522484589368105, - -0.013778411783277988, - -0.043217483907938004, - 0.04097282886505127, - -0.032853610813617706, - -0.02832372859120369, - 0.05739249661564827, - 0.04623105004429817, - 0.06224474683403969, - -0.0027581541799008846, - -0.04563479870557785, - -0.13216279447078705, - 0.008978284895420074, - 0.050044041126966476, - 0.05378037318587303, - -0.010215730406343937, - -0.002609184244647622, - -0.05991087481379509, - -0.058252375572919846, - 0.034909091889858246, - -0.014852546155452728, - 0.11469104140996933, - 0.016988882794976234, - 0.0025289137847721577, - 0.10041376203298569, - -0.00028351403307169676, - -0.0020893134642392397, - -0.04796756058931351, - -0.021590260788798332, - 0.013540289364755154, - 0.053607601672410965, - -0.058453384786844254, - -0.06942971050739288, - 0.005301427561789751, - 0.06184694916009903, - 0.010216601192951202, - 0.07055143266916275, - 0.07513122260570526, - 0.0007667512982152402, - 0.020512782037258148, - -0.05919606611132622, - 0.034454457461833954, - -0.08991119265556335, - -0.06496554613113403, - 0.004474753513932228, - -0.04367688670754433, - -0.0024121080059558153, - 0.08297397196292877, - 0.013606883585453033, - 0.01881113089621067, - -0.03440484032034874, - -0.1082039400935173, - -0.09895014762878418, - 0.06505335867404938, - 0.08122184127569199, - -0.0016685303999111056, - 0.03677600994706154, - 0.059178099036216736, - -0.009844358079135418, - 0.06286277621984482, - 0.07264810055494308, - 0.1308685690164566, - -0.03740754351019859, - 0.018966030329465866, - -0.05577864497900009, - 0.07950403541326523, - 0.055514488369226456, - -0.07599318772554398, - -0.06791509687900543, - -0.010446444153785706, - -0.07375945150852203, - 0.06095854192972183, - -0.021290533244609833, - 0.019405076280236244, - 0.048066675662994385, - -0.03073003515601158, - -0.11433113366365433, - -0.07640784978866577, - 0.09234999865293503, - -0.059330545365810394, - -0.019570494070649147, - -0.0894651785492897, - 0.04015011340379715, - 0.07895421981811523, - 0.04484124109148979, - -0.015935782343149185, - 0.01086941733956337, - 0.04565582796931267, - -0.06120605394244194, - -0.004541727248579264, - 0.05140858143568039, - 0.00817751232534647, - -0.09109561145305634, - -0.006130436901003122, - -0.1253180205821991, - 0.05774698778986931, - -0.06462391465902328, - 0.1439346969127655, - -0.016630418598651886, - -0.05334024503827095, - -0.08961011469364166, - 0.04076334089040756, - -0.02999519370496273, - 0.0687546655535698, - 0.042265649884939194, - 0.07961881905794144, - 0.05788794159889221, - -0.05281192064285278, - 0.10735557228326797, - 0.05628572776913643, - -0.030042653903365135, - -0.07711321860551834, - -0.04306810349225998, - -0.04259932413697243, - 0.016305210068821907, - -0.019216010347008705, - -0.07786834239959717, - 0.009043860249221325, - 0.02674337476491928, - 0.0008316270541399717, - 0.06443923711776733, - 0.11581195145845413, - 0.05936264619231224, - -0.11903617531061172 - ] - }, - "p245_009.wav": { - "name": "p245", - "embedding": [ - 0.03290610387921333, - 0.08333328366279602, - -0.014391103759407997, - 0.03857538476586342, - -0.057077277451753616, - 0.0047579314559698105, - -0.10529172420501709, - 0.12756314873695374, - -0.004455195739865303, - 0.104286789894104, - -0.07982030510902405, - 0.12462792545557022, - -0.05842305347323418, - -0.14488382637500763, - -0.014104433357715607, - 0.0633617490530014, - -0.01144502405077219, - -0.01146823912858963, - 0.006739433854818344, - -0.03120742179453373, - 0.03622310236096382, - 0.046508997678756714, - 0.06616988778114319, - -0.0016240356490015984, - 0.008199850097298622, - 0.08053796738386154, - -0.0022529433481395245, - 0.030590787529945374, - 0.011158742010593414, - -0.03716909885406494, - -0.007432682439684868, - 0.061043620109558105, - -0.013746824115514755, - 0.01777333952486515, - 0.025905504822731018, - 0.014887186698615551, - -0.00883655808866024, - -0.03131641447544098, - -0.006488006561994553, - -0.010581636801362038, - -0.05273634195327759, - 0.05792669579386711, - 0.0069999173283576965, - -0.04620152711868286, - 0.05337395891547203, - -0.003029255196452141, - -0.03159916028380394, - -0.011096817441284657, - -0.10760626196861267, - 0.14992429316043854, - 0.04811668395996094, - 0.02662993222475052, - -0.08908692002296448, - -0.0403478778898716, - 0.08363235741853714, - -0.025169089436531067, - -0.0932357981801033, - -0.04197346419095993, - 0.0749293714761734, - 0.1356501281261444, - -0.01578334905207157, - -0.042207829654216766, - 0.031088298186659813, - 0.09933555871248245, - 0.03422577306628227, - 0.05418774113059044, - 0.08088222146034241, - 0.09444867074489594, - -0.02446182817220688, - 0.003708901349455118, - 0.02211766317486763, - 0.08883614093065262, - 0.047666702419519424, - 0.015000523068010807, - -0.014961561188101768, - -0.021019399166107178, - -0.013484487310051918, - 0.0034485410433262587, - -0.020270880311727524, - -0.04885249212384224, - -0.048257194459438324, - -0.027113303542137146, - -0.0027742625679820776, - -0.01651928760111332, - -0.005384180229157209, - 0.043192241340875626, - 0.05892901122570038, - -0.018471181392669678, - 0.06013456732034683, - 0.035338740795850754, - -0.022221896797418594, - 0.044151850044727325, - -0.05702565610408783, - -0.04898470640182495, - -0.013930716551840305, - -0.0022831978276371956, - 0.04580358415842056, - 0.06563348323106766, - 0.03550197184085846, - 0.007841670885682106, - 0.10671895742416382, - 0.02599121630191803, - 0.0043195998296141624, - -0.0025952039286494255, - -0.0934603214263916, - 0.10964865237474442, - 0.10816070437431335, - -0.024411596357822418, - 0.046036675572395325, - -0.034352269023656845, - 0.01966046541929245, - 0.04859580844640732, - -0.08874480426311493, - -0.04727163910865784, - -0.02022959478199482, - 0.0157342329621315, - 0.016454599797725677, - 0.09834884107112885, - 0.01735919900238514, - 0.03737746551632881, - 0.12326224148273468, - -0.10016807913780212, - -0.09266705811023712, - -0.03160642459988594, - 0.03176315873861313, - -0.09092157334089279, - 0.06275834143161774, - 0.07296454906463623, - 0.008957098238170147, - 0.029911672696471214, - 0.059294555336236954, - 0.011397802270948887, - 0.03669579699635506, - -0.004788540303707123, - -0.061024945229291916, - -0.018016789108514786, - -0.04988691210746765, - -0.007763370871543884, - 0.08740144968032837, - 0.04229965806007385, - 0.07493235915899277, - 0.01616298407316208, - -0.020788973197340965, - -0.11774794012308121, - 0.0003076753346249461, - 0.06607553362846375, - 0.03273431584239006, - -0.023462504148483276, - -0.0511879101395607, - -0.023802796378731728, - -0.057312972843647, - 0.023569168522953987, - 0.0038475836627185345, - 0.06572814285755157, - -0.038017284125089645, - -0.0033452454954385757, - 0.10601448267698288, - 0.014992693439126015, - -0.014330792240798473, - -0.056976012885570526, - -0.038848187774419785, - -0.011372795328497887, - 0.020188990980386734, - -0.11092783510684967, - -0.0934695452451706, - -0.04296105355024338, - 0.055108942091464996, - -0.01912037841975689, - 0.04681546241044998, - 0.05948136746883392, - -0.0024230442941188812, - -0.0009722725953906775, - -0.02059830352663994, - 0.011703070253133774, - -0.06589550524950027, - -0.09323522448539734, - -0.001835276372730732, - -0.021795958280563354, - -0.007641312200576067, - 0.06791874766349792, - 0.020152149721980095, - 0.05164969339966774, - -0.022221006453037262, - -0.0693928673863411, - -0.10133972764015198, - 0.038995932787656784, - 0.02053011581301689, - -0.00844467245042324, - 0.05497853830456734, - 0.04694122448563576, - -0.07966507971286774, - 0.06087392568588257, - 0.02980203740298748, - 0.10071810334920883, - -0.06234333664178848, - 0.007728932425379753, - -0.07707223296165466, - 0.04718461632728577, - 0.12590500712394714, - -0.08345238119363785, - -0.07745872437953949, - -0.08545085787773132, - -0.06679253280162811, - 0.04591762647032738, - -0.029235392808914185, - -0.010717829689383507, - 0.03232759237289429, - -0.025126105174422264, - -0.10085204243659973, - -0.10697224736213684, - 0.056809864938259125, - -0.03047030046582222, - -0.004984191618859768, - -0.06127926707267761, - 0.04727930948138237, - 0.039400458335876465, - 0.013793750666081905, - -0.015099452808499336, - 0.007690818980336189, - 0.015575211495161057, - -0.045287180691957474, - -0.0115211121737957, - 0.05708640068769455, - 0.05113761126995087, - -0.042249903082847595, - -0.038948528468608856, - -0.09032081067562103, - 0.05272318795323372, - -0.03209463506937027, - 0.13962438702583313, - -0.004263963550329208, - -0.048091232776641846, - -0.06869148463010788, - 0.010186580941081047, - -0.016271507367491722, - 0.05376783758401871, - 0.043973468244075775, - 0.04174920916557312, - 0.012833533808588982, - -0.06805049628019333, - 0.10944811999797821, - 0.0558023527264595, - -0.032690275460481644, - -0.066848024725914, - -0.047987475991249084, - -0.04779447615146637, - 0.013941776007413864, - -0.020745795220136642, - -0.08239023387432098, - -0.0035557392984628677, - -0.0050284368917346, - 0.01777922734618187, - 0.06079863756895065, - 0.114070825278759, - 0.04020806774497032, - -0.07465103268623352 - ] - }, - "p245_127.wav": { - "name": "p245", - "embedding": [ - 0.04658830910921097, - 0.06260549277067184, - -0.006287736352533102, - 0.024215614423155785, - -0.019602863118052483, - 0.06372515857219696, - -0.13202497363090515, - 0.11467951536178589, - -0.011525056324899197, - 0.13998782634735107, - -0.08808180689811707, - 0.11441274732351303, - -0.0037071583792567253, - -0.1515623927116394, - -0.019572248682379723, - 0.031747639179229736, - -0.00026290927780792117, - 0.014862647280097008, - -0.007206363137811422, - -0.01091399323195219, - 0.06945531070232391, - 0.07098910212516785, - 0.040798820555210114, - -0.04977024346590042, - 0.034653451293706894, - 0.05427345260977745, - 0.005055768880993128, - 0.06353043019771576, - 0.0022681551054120064, - -0.09526313841342926, - -0.023277804255485535, - 0.11598458141088486, - -0.017313525080680847, - 0.014803117141127586, - 0.014584030024707317, - -0.007661606650799513, - -0.014505650848150253, - -0.0625762939453125, - 0.011438107118010521, - 0.01185659971088171, - -0.01616045832633972, - 0.049701690673828125, - 0.023318318650126457, - -0.015806090086698532, - 0.034538254141807556, - -0.0009171826532110572, - -0.011900722980499268, - -0.05578138679265976, - -0.10989811271429062, - 0.17207221686840057, - 0.024038737639784813, - 0.02493540570139885, - -0.07878866046667099, - -0.06328605860471725, - 0.08350934088230133, - 0.0077207498252391815, - -0.06403134018182755, - -0.016696106642484665, - 0.06292547285556793, - 0.16110067069530487, - -0.010943852365016937, - -0.058716218918561935, - 0.06317492574453354, - 0.06314487755298615, - -0.005325620528310537, - 0.0704900324344635, - 0.10005318373441696, - 0.07264034450054169, - 0.02517593279480934, - 0.0148459542542696, - -0.021879859268665314, - 0.08725609630346298, - 0.016613127663731575, - -0.0073416875675320625, - 0.02053922228515148, - -0.0033455914817750454, - -0.035645242780447006, - 0.01729992777109146, - -0.03468381613492966, - -0.03027549386024475, - 0.023294072598218918, - 0.0029266304336488247, - 0.03214956820011139, - 0.023959046229720116, - -0.055630505084991455, - 0.0348842591047287, - 0.0011369313579052687, - -0.014479635283350945, - 0.06491304188966751, - -0.0171013455837965, - 0.020700231194496155, - 0.03855355829000473, - -0.06517244130373001, - -0.11348254978656769, - 0.03670442849397659, - 0.021799206733703613, - 0.011915899813175201, - 0.06533152610063553, - 0.05046561360359192, - -0.04921099543571472, - 0.11094015836715698, - 0.01865033246576786, - -0.01207005139440298, - 0.003989707678556442, - -0.06642302870750427, - 0.0855250284075737, - 0.12379711866378784, - 0.004956814460456371, - 0.08126046508550644, - -0.0907628983259201, - 0.05807500332593918, - 0.03417370468378067, - -0.13315434753894806, - -0.08021371066570282, - 0.01635052263736725, - 0.029660116881132126, - 0.022714344784617424, - 0.1263212263584137, - 0.0037559240590780973, - 0.03628788888454437, - 0.08916031569242477, - -0.1201762780547142, - -0.05086067318916321, - -0.02359720878303051, - 0.039999544620513916, - -0.07151632010936737, - 0.059445809572935104, - 0.04963528364896774, - -0.02567708119750023, - 0.0016434730496257544, - 0.03686103969812393, - -0.032526928931474686, - 0.03571029379963875, - -0.010871256701648235, - -0.04564623534679413, - 0.021675823256373405, - -0.06487111747264862, - -0.022027797996997833, - 0.024676360189914703, - 0.052233144640922546, - 0.044405072927474976, - 0.0022868788801133633, - -0.07289264351129532, - -0.1260998249053955, - -0.004170695319771767, - 0.03340679407119751, - 0.037976693361997604, - -0.028692152351140976, - -0.039732035249471664, - -0.056720905005931854, - -0.06840913742780685, - 0.03389532119035721, - -0.028629226610064507, - 0.06423278152942657, - 0.01169472187757492, - 0.01982017420232296, - 0.07205839455127716, - 0.019033191725611687, - -0.00809904932975769, - -0.04061006382107735, - -0.048766326159238815, - 0.008097197860479355, - 0.010801266878843307, - -0.04781961441040039, - -0.05832257866859436, - -0.02562042325735092, - 0.01620791107416153, - -0.041379477828741074, - 0.028882190585136414, - 0.041352707892656326, - 0.03783556818962097, - 0.03214290365576744, - -0.05074073374271393, - -0.011035635136067867, - -0.10127341747283936, - -0.06457854807376862, - 0.016947541385889053, - 0.008741732686758041, - -0.019055141136050224, - 0.09269105643033981, - 0.02707105502486229, - 0.033004049211740494, - -0.05711086839437485, - -0.017399966716766357, - -0.06857027113437653, - 0.04161455109715462, - 0.05821641534566879, - 0.015034226700663567, - 0.04238680750131607, - 0.013804599642753601, - -0.012920196168124676, - 0.07800231873989105, - 0.07381346821784973, - 0.07853017002344131, - 0.01876921020448208, - -0.01598728448152542, - -0.06785853952169418, - 0.1082458347082138, - 0.10947208106517792, - -0.02701704204082489, - -0.08586087077856064, - -0.025790922343730927, - -0.11441995948553085, - 0.06302960216999054, - -0.013127107173204422, - -0.009299460798501968, - 0.01957782171666622, - -0.015136376023292542, - -0.1261642873287201, - -0.05232756584882736, - 0.03815246373414993, - -0.021039143204689026, - -0.014643959701061249, - -0.07588966190814972, - 0.05869888886809349, - 0.10201459378004074, - 0.025809211656451225, - -0.003931641578674316, - -0.038445066660642624, - 0.03567447513341904, - -0.06961512565612793, - 0.0071885958313941956, - 0.018263740465044975, - 0.025493260473012924, - -0.0879364013671875, - 0.03344513103365898, - -0.06425642967224121, - 0.022746529430150986, - -0.0661846324801445, - 0.12518291175365448, - 0.018635880202054977, - -0.04994634538888931, - -0.07431639730930328, - 0.08005322515964508, - -0.012550096027553082, - 0.02522459253668785, - 0.020094329491257668, - 0.01730910688638687, - 0.06951040029525757, - -0.13160404562950134, - 0.0784558355808258, - 0.027975033968687057, - -0.027666527777910233, - -0.07800722122192383, - -0.07368484139442444, - -0.020990831777453423, - 0.028741326183080673, - -0.017479144036769867, - -0.04319344088435173, - -0.03360884636640549, - 0.03481416776776314, - 0.038555216044187546, - 0.049933891743421555, - 0.11130048334598541, - -0.0071829236112535, - -0.11586718261241913 - ] - }, - "p245_131.wav": { - "name": "p245", - "embedding": [ - 0.051773663610219955, - 0.11920531839132309, - -0.017388202250003815, - 0.00801470223814249, - -0.053291283547878265, - 0.08008962869644165, - -0.14152702689170837, - 0.13869786262512207, - -0.06063380464911461, - 0.13399645686149597, - -0.08124585449695587, - 0.1243433803319931, - -0.02791563980281353, - -0.16790561378002167, - -0.03832479566335678, - 0.056006934493780136, - -0.02642492949962616, - -0.021153349429368973, - -0.029843613505363464, - -0.01801777444779873, - 0.02627597376704216, - 0.0016101183136925101, - 0.014214443042874336, - 0.0020707491785287857, - 0.04575660079717636, - 0.05909210443496704, - 0.0027672320138663054, - 0.03775542601943016, - -0.0012633068254217505, - -0.0262643750756979, - -0.04282417148351669, - 0.10847103595733643, - -0.05040731281042099, - 0.005238312296569347, - 0.0695110410451889, - 0.004018851555883884, - 0.0013476479798555374, - -0.08221562951803207, - -0.006653761025518179, - -0.012197775766253471, - -0.027806490659713745, - 0.07341498136520386, - 0.0196712426841259, - -0.024899905547499657, - 0.02405600994825363, - 0.038215458393096924, - 0.009255281649529934, - -0.046461135149002075, - -0.09786874055862427, - 0.13107037544250488, - 0.04400842636823654, - 0.011600933969020844, - -0.09161623567342758, - -0.06429623812437057, - 0.11179177463054657, - -0.014369804412126541, - -0.08008041232824326, - -0.02826160565018654, - 0.06530298292636871, - 0.15863749384880066, - -0.03980468586087227, - -0.042695533484220505, - 0.014585405588150024, - 0.10486936569213867, - 0.04771605134010315, - 0.09672224521636963, - 0.07401271909475327, - 0.10617061704397202, - -0.014771237038075924, - 0.02012082003057003, - 0.06321466714143753, - 0.06497268378734589, - 0.05378652736544609, - -0.031599752604961395, - 0.030269965529441833, - -0.00839713029563427, - -0.027909105643630028, - 0.01970379427075386, - -0.04190796613693237, - -0.040651991963386536, - -0.02526729367673397, - 0.011208882555365562, - 0.011837984435260296, - 0.017618713900446892, - -0.030671343207359314, - 0.054828397929668427, - 0.04742934927344322, - -0.030792851001024246, - 0.0753750279545784, - 0.05128327012062073, - -0.007923362776637077, - 0.057089969515800476, - -0.10551302134990692, - -0.0930054634809494, - 0.05335550010204315, - -0.004006318747997284, - 0.011687538586556911, - 0.07276883721351624, - 0.0472969114780426, - -0.008699174039065838, - 0.10147623717784882, - 0.07395502924919128, - 0.010805686935782433, - 0.03500901162624359, - -0.08613039553165436, - 0.13689228892326355, - 0.08635851740837097, - -0.03649013116955757, - 0.03314037621021271, - -0.038866739720106125, - 0.06129535287618637, - 0.0781913697719574, - -0.13437868654727936, - -0.09328192472457886, - 0.02348935417830944, - 0.007293185219168663, - -0.013193312101066113, - 0.0976811870932579, - -0.02401071786880493, - 0.019212350249290466, - 0.08764948695898056, - -0.0785221979022026, - -0.07158657908439636, - -0.022475769743323326, - 0.03214990720152855, - -0.06492529809474945, - 0.06085385009646416, - 0.057107701897621155, - 0.013710787519812584, - -0.0067566074430942535, - 0.07545354962348938, - 0.004002261906862259, - -0.015050138346850872, - 0.025699054822325706, - -0.02662610076367855, - 0.026017412543296814, - -0.006892682518810034, - -0.009361796081066132, - 0.027427449822425842, - 0.05025481432676315, - 0.044319652020931244, - 0.009692894294857979, - 0.004204666707664728, - -0.10147213190793991, - 0.0006517904694192111, - 0.06280013918876648, - 0.07969294488430023, - -0.014023507945239544, - -0.026885345578193665, - -0.03972513601183891, - -0.06018434092402458, - 0.0011818509083241224, - -0.004179387353360653, - 0.08737614005804062, - -0.0017851374577730894, - 0.02197900041937828, - 0.10882064700126648, - 0.027451803907752037, - -0.0006058961153030396, - -0.0544869601726532, - -0.003399872686713934, - 0.037098612636327744, - 0.055405810475349426, - -0.06441332399845123, - -0.0911090224981308, - -0.012462671846151352, - 0.012206878513097763, - -0.03538180887699127, - 0.05990897864103317, - 0.03708581626415253, - 0.01570219174027443, - 0.03672369197010994, - -0.06958041340112686, - 0.021782031282782555, - -0.1099281907081604, - -0.03805774822831154, - -0.02388021908700466, - -0.03261515498161316, - -0.026013564318418503, - 0.06997651606798172, - 0.03265005722641945, - 0.053749483078718185, - -0.015251873061060905, - -0.06236136704683304, - -0.07106058299541473, - 0.05539129301905632, - 0.07320192456245422, - 0.00047182230628095567, - 0.03349994122982025, - 0.04923785850405693, - 0.0042983125895261765, - 0.04841270670294762, - 0.09075738489627838, - 0.08412593603134155, - -0.020233657211065292, - 0.011173320934176445, - -0.05772450566291809, - 0.0908752977848053, - 0.07853017747402191, - -0.0999670922756195, - -0.09733794629573822, - -0.0314897857606411, - -0.044976554811000824, - 0.023222923278808594, - -0.023158585652709007, - 0.018883084878325462, - 0.026271507143974304, - -0.026486029848456383, - -0.0903608426451683, - -0.0990128144621849, - 0.08923383802175522, - -0.06793790310621262, - 0.0019103498198091984, - -0.0708601325750351, - 0.043945472687482834, - 0.08585767447948456, - 0.015695583075284958, - -0.03577731177210808, - -0.007984409108757973, - 0.04524214193224907, - -0.040539972484111786, - -0.006983797065913677, - 0.03293531760573387, - 0.023067450150847435, - -0.10118408501148224, - 0.03308899700641632, - -0.059888310730457306, - 0.08571215718984604, - -0.05049239099025726, - 0.1737249344587326, - 0.0047993953339755535, - -0.04805077239871025, - -0.08287292718887329, - 0.023064663633704185, - -0.023640461266040802, - 0.04154631122946739, - 0.03071696124970913, - 0.06575850397348404, - 0.004734584596008062, - -0.06670975685119629, - 0.1147979125380516, - 0.029987230896949768, - -0.038460299372673035, - -0.07809272408485413, - -0.05830715224146843, - -0.04498923569917679, - 0.027115676552057266, - 0.0030816548969596624, - -0.08249428868293762, - -0.014225131832063198, - 0.019196022301912308, - -0.006374415010213852, - 0.07042526453733444, - 0.14711768925189972, - 0.07646961510181427, - -0.1051764190196991 - ] - }, - "p245_220.wav": { - "name": "p245", - "embedding": [ - 0.03879730403423309, - 0.09055493772029877, - -0.013449713587760925, - 0.02201610803604126, - -0.05717796832323074, - 0.0815148651599884, - -0.12207820266485214, - 0.11224985122680664, - -0.060486312955617905, - 0.1440199613571167, - -0.07286649197340012, - 0.11312384903430939, - -0.019619306549429893, - -0.19507959485054016, - -0.04555293545126915, - 0.052274953573942184, - -0.05741092190146446, - -0.026642274111509323, - -0.03728384152054787, - -0.025818457826972008, - 0.0455283522605896, - 0.05022699758410454, - 0.028865983709692955, - 0.0031799792777746916, - 0.03064601682126522, - 0.05860237404704094, - -0.00041064945980906487, - 0.04074525833129883, - 0.011033182963728905, - -0.06751112639904022, - -0.05683927983045578, - 0.11227892339229584, - -0.045693494379520416, - 0.023093216121196747, - 0.04455939680337906, - 0.005104595795273781, - 0.012291442602872849, - -0.06127537041902542, - -0.02649378776550293, - 0.015792740508913994, - -0.04402081295847893, - 0.06688160449266434, - 0.03025428019464016, - -0.0003331135958433151, - 0.039093393832445145, - 0.0072454228065907955, - -0.019478455185890198, - -0.0503864660859108, - -0.09392698854207993, - 0.1703638881444931, - 0.062744140625, - -0.0065002660267055035, - -0.05478322133421898, - -0.09012486040592194, - 0.11785050481557846, - -0.0051047103479504585, - -0.13170382380485535, - -0.027212215587496758, - 0.0818513035774231, - 0.16934679448604584, - -0.020376477390527725, - -0.040059130638837814, - 0.01990499161183834, - 0.11665328592061996, - 0.019441386684775352, - 0.1002735048532486, - 0.06772534549236298, - 0.08665567636489868, - 0.0014297913294285536, - 0.007924351841211319, - 0.06708859652280807, - 0.07308071851730347, - 0.04511871561408043, - -0.026148442178964615, - 0.02646047994494438, - 0.005571114830672741, - -0.02838445082306862, - 0.025852523744106293, - -0.019251462072134018, - -0.002665368840098381, - -0.020315591245889664, - 0.0013356282142922282, - 0.005613367073237896, - -0.0006534084677696228, - -0.026520565152168274, - 0.04145396500825882, - 0.012017980217933655, - 0.004497114103287458, - 0.06751247495412827, - 0.04404584318399429, - 0.00844128429889679, - 0.06120280548930168, - -0.05212843045592308, - -0.0926857441663742, - 0.022167038172483444, - 0.01979418843984604, - 0.011135349981486797, - 0.07833263278007507, - 0.03854385018348694, - -0.02573969028890133, - 0.11011773347854614, - 0.05281824991106987, - 0.0032901037484407425, - 0.024407315999269485, - -0.10709923505783081, - 0.10679684579372406, - 0.09270425140857697, - -0.009921396151185036, - 0.05202547833323479, - -0.045261450111866, - 0.10293298959732056, - 0.08683113753795624, - -0.15195858478546143, - -0.07544927299022675, - 0.03328393027186394, - 0.021967818960547447, - -0.0022797503042966127, - 0.1113390251994133, - -0.013943596743047237, - 0.01276822667568922, - 0.10044863820075989, - -0.09282051771879196, - -0.054333608597517014, - -0.033119358122348785, - 0.042725201696157455, - -0.08001001924276352, - 0.0430799201130867, - 0.039619144052267075, - -0.01773996464908123, - 0.00014796573668718338, - 0.07431536167860031, - -0.024226512759923935, - 0.004928186535835266, - 0.02313924953341484, - -0.050774913281202316, - 0.019231736660003662, - -0.037040047347545624, - 0.008389119058847427, - 0.06587131321430206, - 0.04547805339097977, - 0.03970226272940636, - -8.527810859959573e-05, - -0.04865244776010513, - -0.11709722131490707, - 0.01301967166364193, - 0.04203265905380249, - 0.06552766263484955, - -0.008239119313657284, - -0.02330688200891018, - -0.03644777834415436, - -0.08237116038799286, - 0.04103248938918114, - -0.012745723128318787, - 0.09000204503536224, - -0.01131061464548111, - -0.00408023688942194, - 0.08427457511425018, - 0.03021332249045372, - -0.025550007820129395, - -0.05551968142390251, - -0.04676496610045433, - 0.01076146587729454, - 0.042087048292160034, - -0.08938419073820114, - -0.06806981563568115, - 0.0052156224846839905, - 0.023495769128203392, - -0.016163988038897514, - 0.03915276378393173, - 0.049200914800167084, - 0.01324817817658186, - 0.05049874633550644, - -0.07602536678314209, - 0.009448867291212082, - -0.12491156905889511, - -0.0672941654920578, - -0.018088815733790398, - -0.03395524621009827, - -0.001566180377267301, - 0.09039953351020813, - 0.008829125203192234, - 0.021368809044361115, - -0.01361086405813694, - -0.06383176892995834, - -0.06541204452514648, - 0.07006420195102692, - 0.06460034847259521, - 0.025414317846298218, - 0.053112201392650604, - 0.05500742793083191, - -0.03475232422351837, - 0.06942816823720932, - 0.06279851496219635, - 0.11005311459302902, - -0.022728553041815758, - 0.03446103632450104, - -0.061128031462430954, - 0.08493976294994354, - 0.0739341750741005, - -0.09063868224620819, - -0.09390824288129807, - -0.032900579273700714, - -0.06158585473895073, - 0.057387083768844604, - -0.02975746989250183, - -0.0012641990324482322, - 0.008109633810818195, - -0.008847979828715324, - -0.08933817595243454, - -0.08393734693527222, - 0.09103529155254364, - -0.0433959886431694, - -0.022728756070137024, - -0.0708194375038147, - 0.048191651701927185, - 0.09499004483222961, - 0.04553939402103424, - -0.02243354730308056, - 0.014007735066115856, - 0.05793747305870056, - -0.058781158179044724, - -0.006644446402788162, - 0.047453057020902634, - 0.015412582084536552, - -0.09625618159770966, - 0.008070964366197586, - -0.08590416610240936, - 0.0674610584974289, - -0.06626740097999573, - 0.16323433816432953, - -0.012062348425388336, - -0.06744888424873352, - -0.0719728171825409, - 0.058629315346479416, - -0.027350004762411118, - 0.032272979617118835, - 0.039434365928173065, - 0.06757237762212753, - 0.031247874721884727, - -0.06235533207654953, - 0.1072753369808197, - 0.032561205327510834, - -0.0334937646985054, - -0.05052363872528076, - -0.03174809366464615, - -0.0367119163274765, - 0.02287173829972744, - -0.0005507778259925544, - -0.08926013112068176, - -0.008259646594524384, - 0.023013412952423096, - -0.006786442827433348, - 0.05982303246855736, - 0.14092090725898743, - 0.06602182984352112, - -0.12202151119709015 - ] - }, - "p245_374.wav": { - "name": "p245", - "embedding": [ - 0.023449799045920372, - 0.09643372893333435, - -0.032250478863716125, - 0.005322292447090149, - -0.016022540628910065, - 0.0508054755628109, - -0.13578638434410095, - 0.09502934664487839, - -0.056720755994319916, - 0.1447373479604721, - -0.03489553555846214, - 0.09041651338338852, - -0.03130771964788437, - -0.1395520269870758, - -0.027699880301952362, - 0.05204661935567856, - -0.051412902772426605, - -0.02630513161420822, - -0.0019895657896995544, - -0.04401072859764099, - 0.046441029757261276, - 0.03166159242391586, - 0.011625888757407665, - -0.029704419896006584, - 0.004238383378833532, - 0.08030026406049728, - 0.005667436867952347, - 0.014578722417354584, - -0.0003715492784976959, - -0.06751219928264618, - -0.03447506204247475, - 0.09523941576480865, - -0.022197291254997253, - -0.008337460458278656, - 0.027852412313222885, - 0.009596243500709534, - 0.0008364307577721775, - -0.050223857164382935, - 0.000549623160623014, - 0.02582681179046631, - -0.0528397411108017, - 0.0737689957022667, - 0.023051604628562927, - -0.005195187404751778, - 0.05737006664276123, - -0.05281570181250572, - -0.02818243019282818, - -0.017421789467334747, - -0.06383350491523743, - 0.1298730969429016, - 0.10277587175369263, - -0.007928198203444481, - -0.0379345640540123, - -0.037560053169727325, - 0.08777811378240585, - 0.022373056039214134, - -0.1208801120519638, - -0.0252310112118721, - 0.04938438534736633, - 0.14853988587856293, - -0.011800747364759445, - -0.026561260223388672, - 0.03328322991728783, - 0.11597199738025665, - 0.012417681515216827, - 0.07975783944129944, - 0.08920113742351532, - 0.05056234821677208, - 0.02026141993701458, - -0.016240660101175308, - 0.03821743652224541, - 0.08321662247180939, - 0.03376757353544235, - -0.0201406367123127, - 0.03548591211438179, - -0.03312789648771286, - -0.033397823572158813, - -0.024128664284944534, - -0.011269854381680489, - -0.04666639864444733, - -0.050403352826833725, - -0.00040141059434972703, - 0.002832874422892928, - 0.03926333785057068, - 0.0014116069069132209, - 0.013494587503373623, - 0.028113186359405518, - -0.038565732538700104, - 0.038569074124097824, - 0.03380490094423294, - 0.028290167450904846, - 0.028291037306189537, - -0.050817154347896576, - -0.06457144021987915, - 0.02594846300780773, - 0.009456822648644447, - 0.030960887670516968, - 0.06504091620445251, - 0.03901662677526474, - 0.0018195733428001404, - 0.09513044357299805, - 0.04242563992738724, - 0.0013941613724455237, - -0.00964332651346922, - -0.08384327590465546, - 0.08617278188467026, - 0.09848646819591522, - -0.030436735600233078, - 0.04858040809631348, - -0.026909753680229187, - 0.037407875061035156, - 0.030659686774015427, - -0.12841413915157318, - -0.044140756130218506, - 0.029600482434034348, - 0.03816960006952286, - 0.0023257534485310316, - 0.10797127336263657, - 0.03385370224714279, - 0.02210618183016777, - 0.08123153448104858, - -0.06448104977607727, - -0.06887614727020264, - -0.09283602237701416, - 0.06871804594993591, - -0.09410824626684189, - 0.07797706127166748, - 0.05561335012316704, - 0.007313728332519531, - 0.008195910602807999, - 0.055985815823078156, - 0.008309325203299522, - -0.003935560584068298, - -0.01303067710250616, - -0.04327896237373352, - 0.004225160926580429, - -0.04742027074098587, - 0.03935592621564865, - 0.027425501495599747, - 0.008239563554525375, - 0.05436950549483299, - 0.002620019717141986, - -0.0037700410466641188, - -0.07606267184019089, - 0.004679839126765728, - 0.025717658922076225, - 0.03588217869400978, - -0.021849848330020905, - -0.041657865047454834, - 0.001358928857371211, - -0.07490625232458115, - -0.020749058574438095, - -0.045521121472120285, - 0.08894895762205124, - -0.0032843926455825567, - 0.0088884886354208, - 0.0840899869799614, - 0.01933881640434265, - -0.0074418894946575165, - -0.016723372042179108, - -0.009743014350533485, - 0.02282208763062954, - 0.04553689807653427, - -0.10854979604482651, - -0.07491825520992279, - -0.006919624283909798, - 0.01743520423769951, - 0.012150495313107967, - 0.03819242864847183, - 0.056162089109420776, - 0.00873025692999363, - 0.038402944803237915, - -0.022650912404060364, - 0.017682809382677078, - -0.09988783299922943, - -0.06519915908575058, - -0.031922828406095505, - -0.06194712966680527, - -0.03511340543627739, - 0.07849004864692688, - -0.007298754062503576, - 0.03678799793124199, - -0.01956704631447792, - -0.048037197440862656, - -0.053779806941747665, - 0.06473030894994736, - 0.07054997980594635, - 0.00425155321136117, - 0.017644930630922318, - 0.05806760489940643, - 0.006640546955168247, - 0.009750778786838055, - 0.041887760162353516, - 0.104054294526577, - -0.022354010492563248, - 0.0025161877274513245, - -0.08518111705780029, - 0.05406004935503006, - 0.09197567403316498, - -0.06775777041912079, - -0.06599339097738266, - -0.03665510565042496, - -0.07428398728370667, - 0.04573630914092064, - -0.0492304265499115, - 0.000265246257185936, - -0.008219039998948574, - -0.013596093282103539, - -0.10187450051307678, - -0.08742545545101166, - 0.0933118388056755, - -0.045064859092235565, - -0.01372772827744484, - -0.0618569515645504, - 0.04460422322154045, - 0.0685817301273346, - 0.05725841969251633, - -0.057626865804195404, - 0.027187949046492577, - 0.047102004289627075, - -0.04292602464556694, - 0.03270243853330612, - 0.025353293865919113, - 0.04611819237470627, - -0.09895791113376617, - -0.0016420434694737196, - -0.06781023740768433, - 0.05189454182982445, - -0.07250219583511353, - 0.09858774393796921, - 0.017517752945423126, - -0.050958409905433655, - -0.08054932951927185, - 0.05003558099269867, - -0.008419888094067574, - 0.029420314356684685, - 0.03812549635767937, - 0.07518221437931061, - 0.030836796388030052, - -0.06830979883670807, - 0.0732167661190033, - 0.02889445424079895, - 0.016833506524562836, - -0.048200011253356934, - -0.009828130714595318, - -0.03241066634654999, - 0.041101641952991486, - 0.006099475082010031, - -0.06915758550167084, - -0.006090696435421705, - 0.00019398207950871438, - 0.020913206040859222, - 0.06758694350719452, - 0.08900843560695648, - 0.02920929156243801, - -0.09521955251693726 - ] - }, - "p245_384.wav": { - "name": "p245", - "embedding": [ - 0.05566015467047691, - 0.11395697295665741, - 0.016208510845899582, - 0.01644066348671913, - -0.024002349004149437, - 0.054477911442518234, - -0.06622035056352615, - 0.08821912854909897, - 0.020203595981001854, - 0.07493787258863449, - -0.08233807235956192, - 0.07063636928796768, - -0.040873635560274124, - -0.1317119002342224, - -0.002980649471282959, - 0.0365707166492939, - -0.03391682356595993, - 0.007290172390639782, - -0.03264535591006279, - -0.028852222487330437, - -0.013985025696456432, - 0.010282794013619423, - 0.03223650902509689, - 0.0045434534549713135, - -0.0029877275228500366, - 0.027245599776506424, - -0.030182931572198868, - 0.013489204458892345, - -0.006926137953996658, - -0.0492633581161499, - -0.023077093064785004, - 0.07702772319316864, - -0.02443801425397396, - 0.0008054872741922736, - 0.014587613753974438, - -0.030850771814584732, - 0.010230448096990585, - -0.0658850222826004, - -0.04567558690905571, - 0.02418021485209465, - -0.043879434466362, - 0.051380373537540436, - 0.025394242256879807, - -0.042888231575489044, - 0.039149150252342224, - 0.0022595818154513836, - -0.04928196594119072, - -0.00761794438585639, - -0.09855502843856812, - 0.10403876006603241, - 0.033704712986946106, - 0.022440306842327118, - -0.06818641722202301, - -0.020435117185115814, - 0.1011800765991211, - -0.0034335616510361433, - -0.05934975668787956, - -0.009920991957187653, - 0.042349811643362045, - 0.08056049793958664, - 0.01637434959411621, - -0.020987948402762413, - 0.023552950471639633, - 0.07456541061401367, - 0.04375208169221878, - 0.04541177302598953, - 0.07541152834892273, - 0.10399436950683594, - -0.033417265862226486, - 0.027119828388094902, - 0.03373056650161743, - 0.011724199168384075, - 0.04241838678717613, - -0.012726284563541412, - -0.004522574134171009, - -0.017244575545191765, - -0.002019263803958893, - -0.009453907608985901, - -0.01497898530215025, - -0.04106542095541954, - 0.02151159942150116, - -0.022283729165792465, - 0.003852484282106161, - 0.011755655519664288, - -0.040615763515233994, - -0.009845077991485596, - 0.057101499289274216, - 0.03894852101802826, - 0.07229340076446533, - 0.03508644551038742, - 0.026812713593244553, - 0.07455843687057495, - -0.06594584882259369, - -0.06658811867237091, - 0.014251867309212685, - -0.004513641819357872, - 0.034751296043395996, - 0.04799506068229675, - 0.03846416622400284, - -0.016666464507579803, - 0.10123103857040405, - 0.00968961976468563, - 0.026942379772663116, - 0.0037530555855482817, - -0.06388043612241745, - 0.042672865092754364, - 0.06472232192754745, - -0.012896097265183926, - 0.06440748274326324, - 0.01062367670238018, - 0.06981091946363449, - 0.06846883147954941, - -0.07536599785089493, - -0.014261203818023205, - -0.003836844116449356, - 0.031877219676971436, - 0.0012222162913531065, - 0.10023045539855957, - -0.003363877534866333, - 0.036561690270900726, - 0.08934098482131958, - -0.059772785753011703, - 0.0007901564240455627, - 0.030527103692293167, - 0.0047083026729524136, - -0.03602129593491554, - 0.045893482863903046, - 0.02402573451399803, - -0.018750881776213646, - -0.01842883974313736, - 0.04225537180900574, - 0.009178774431347847, - -0.002205016789957881, - -0.023625221103429794, - -0.014965901151299477, - 0.0016625039279460907, - 0.0035599893890321255, - 7.717932749073952e-05, - 0.027427583932876587, - 0.04772336408495903, - 0.012440296821296215, - 0.006515865679830313, - -0.04017090052366257, - -0.06528477370738983, - 0.024902252480387688, - 0.0067955926060676575, - 0.025829432532191277, - 0.03323550522327423, - -0.02986619435250759, - -0.04087820276618004, - -0.027270019054412842, - 0.062224578112363815, - -0.025220494717359543, - 0.06402501463890076, - 0.04003491252660751, - -0.010010424070060253, - 0.07204889506101608, - 0.03619522601366043, - 0.013378968462347984, - -0.04099726676940918, - -0.07827086746692657, - -0.004374640993773937, - 0.042702071368694305, - -0.07098110020160675, - -0.034417614340782166, - -0.012448584660887718, - -0.024141617119312286, - -0.01612934097647667, - 0.01713244616985321, - 0.06172192841768265, - -0.01600707694888115, - 0.012988138012588024, - -0.07074102759361267, - 0.015045110136270523, - -0.044114768505096436, - -0.08719181269407272, - 0.035293471068143845, - 0.0063250502571463585, - 0.009485555812716484, - 0.07353170216083527, - 0.015584670007228851, - 0.00660300999879837, - -0.036142997443675995, - -0.051705487072467804, - -0.00463007902726531, - 0.04233451187610626, - 0.026176786050200462, - -0.0022782832384109497, - 0.03917685151100159, - 0.05707709491252899, - -0.016167620196938515, - 0.0413212776184082, - 0.02133442834019661, - 0.0711769312620163, - -0.043713055551052094, - 0.01626548171043396, - -0.005085880868136883, - 0.06328696012496948, - 0.06897328048944473, - -0.0725037008523941, - -0.10481145977973938, - -0.04440099745988846, - -0.044441476464271545, - 0.031490959227085114, - -0.009176194667816162, - 0.0003801745770033449, - 0.03060680627822876, - -0.018050074577331543, - -0.03994433581829071, - -0.11339092254638672, - 0.05120830237865448, - -0.017044490203261375, - -0.007945175282657146, - -0.053484879434108734, - 0.03012763522565365, - 0.028895672410726547, - 0.031500112265348434, - -0.027842644602060318, - 0.022633550688624382, - 0.03358602151274681, - -0.005996193736791611, - -0.020609170198440552, - 0.03077751025557518, - 0.035197652876377106, - -0.04148676618933678, - -0.026999717578291893, - -0.05664321780204773, - 0.059217438101768494, - 0.01310439221560955, - 0.10835233330726624, - 0.03155405446887016, - -0.01899263821542263, - -0.07134135067462921, - 0.05220211669802666, - -0.025549456477165222, - 0.04190117120742798, - 0.008280213922262192, - 0.03209483623504639, - 0.047817789018154144, - -0.0439918115735054, - 0.07255464047193527, - 0.025607986375689507, - -0.028876788914203644, - -0.03586782515048981, - 0.0011342864017933607, - -0.05578766390681267, - 0.0039499131962656975, - 0.000495461979880929, - -0.05514378473162651, - -0.01818789914250374, - 0.024498112499713898, - 0.042953379452228546, - 0.05583646148443222, - 0.08736936748027802, - 0.05355657637119293, - -0.04766364023089409 - ] - }, - "p245_311.wav": { - "name": "p245", - "embedding": [ - 0.051357634365558624, - 0.08640292286872864, - -0.023266131058335304, - 0.02229953557252884, - -0.06447425484657288, - 0.07222622632980347, - -0.13573625683784485, - 0.1333259791135788, - -0.04352742061018944, - 0.14977094531059265, - -0.05300269275903702, - 0.11877299845218658, - -0.01130568515509367, - -0.17859090864658356, - -0.04289994761347771, - 0.0334707610309124, - -0.03931748867034912, - -0.039801016449928284, - -0.04093143343925476, - -0.03651154786348343, - 0.036497943103313446, - 0.05618300288915634, - 0.015927409753203392, - 0.009223002940416336, - 0.04482416808605194, - 0.05732090026140213, - -0.009629062376916409, - 0.03104410693049431, - 0.005513321608304977, - -0.07702966779470444, - -0.038203924894332886, - 0.0964803695678711, - -0.06254828721284866, - 0.029088163748383522, - 0.028710223734378815, - -0.010501404292881489, - 0.010291682556271553, - -0.06586772203445435, - -0.03337614983320236, - 0.027852701023221016, - -0.03957948088645935, - 0.08354207873344421, - 0.03790400177240372, - -0.0027799096424132586, - 0.029529694467782974, - 0.006164429243654013, - -0.0006938234437257051, - -0.05417706072330475, - -0.09687276184558868, - 0.1767762005329132, - 0.05619187653064728, - -0.007181104738265276, - -0.06980688869953156, - -0.0776086151599884, - 0.11143673956394196, - -0.016323860734701157, - -0.1179150640964508, - -0.02359612286090851, - 0.06593306362628937, - 0.15822909772396088, - -0.029200537130236626, - -0.056219637393951416, - 0.025904085487127304, - 0.12358596920967102, - 0.055603161454200745, - 0.06216292828321457, - 0.09565773606300354, - 0.10930820554494858, - -0.02649831771850586, - -0.0010681552812457085, - 0.05225870758295059, - 0.07488647103309631, - 0.052707020193338394, - -0.021133607253432274, - 0.023522090166807175, - 0.003000113647431135, - -0.014402510598301888, - -0.0042637246660888195, - -0.023517247289419174, - -0.006714884657412767, - -0.016419006511569023, - 0.016467660665512085, - 0.010034924373030663, - 0.03235607594251633, - -0.038288574665784836, - 0.046929627656936646, - 0.028022320941090584, - -0.018424823880195618, - 0.06956097483634949, - 0.047474659979343414, - 0.0226121935993433, - 0.06090710312128067, - -0.08389033377170563, - -0.0798303559422493, - 0.035781875252723694, - 0.007912063039839268, - 0.02175053581595421, - 0.07769251614809036, - 0.04378724843263626, - -0.01348889246582985, - 0.12146754562854767, - 0.044603876769542694, - -0.012466082349419594, - 0.007494073361158371, - -0.09475603699684143, - 0.11331655085086823, - 0.09762737154960632, - -0.019908040761947632, - 0.06147930026054382, - -0.056610412895679474, - 0.08070899546146393, - 0.05401461198925972, - -0.14500020444393158, - -0.08816921710968018, - 0.040170855820178986, - 0.030931632965803146, - -0.005460510030388832, - 0.131168395280838, - -0.011465403251349926, - 0.044736944139003754, - 0.08541398495435715, - -0.08328656852245331, - -0.03487028554081917, - -0.027626361697912216, - 0.06220778077840805, - -0.07433606684207916, - 0.053497716784477234, - 0.0505019947886467, - -0.019700603559613228, - 0.013632059097290039, - 0.06955055147409439, - -0.008388577029109001, - 0.005705136340111494, - 0.004309090785682201, - -0.037476446479558945, - 0.02089506760239601, - -0.004578168969601393, - 0.001466446090489626, - 0.043698713183403015, - 0.03842398524284363, - 0.054924771189689636, - -0.006294566672295332, - -0.037312932312488556, - -0.11995771527290344, - 0.026603087782859802, - 0.027026604861021042, - 0.07196778059005737, - -0.022917944937944412, - -0.02381109818816185, - -0.04027148336172104, - -0.07303570210933685, - 0.02255737967789173, - -0.003647993318736553, - 0.09252651035785675, - -0.011052945628762245, - 0.010942134074866772, - 0.10676807165145874, - 0.04383505508303642, - -0.01471814326941967, - -0.02746441960334778, - -0.029986966401338577, - -0.017777137458324432, - 0.06124287098646164, - -0.07759775966405869, - -0.07165796309709549, - -0.007651845924556255, - 0.025621674954891205, - -0.01494077779352665, - 0.07042072713375092, - 0.04821113869547844, - 0.01670840196311474, - 0.04153861105442047, - -0.07673287391662598, - 0.0016940627247095108, - -0.10998199135065079, - -0.06242836266756058, - -0.008893463760614395, - -0.022390324622392654, - -0.023218736052513123, - 0.09397567808628082, - 0.03106657788157463, - 0.05410348251461983, - -0.02080501988530159, - -0.060123544186353683, - -0.06440001726150513, - 0.05380197614431381, - 0.053523868322372437, - -0.0066789621487259865, - 0.027786459773778915, - 0.06938782334327698, - -0.0177437923848629, - 0.06584183126688004, - 0.08010941743850708, - 0.08836636692285538, - -0.03083617426455021, - 0.04386240243911743, - -0.06199156492948532, - 0.10994042456150055, - 0.06841009855270386, - -0.0839373916387558, - -0.09480857849121094, - -0.035347942262887955, - -0.07720832526683807, - 0.030661912634968758, - -0.02123548835515976, - 0.026769477874040604, - 0.018754659220576286, - 0.0011099257972091436, - -0.09803085029125214, - -0.08783013373613358, - 0.08327104151248932, - -0.057306498289108276, - -0.00015311618335545063, - -0.09112933278083801, - 0.04500465840101242, - 0.11834831535816193, - 0.05302465707063675, - -0.012607109732925892, - -0.013908649794757366, - 0.05101641267538071, - -0.023482875898480415, - 0.0057307276874780655, - 0.060634415596723557, - 0.02579566463828087, - -0.10661022365093231, - -0.0024223041255027056, - -0.06767679005861282, - 0.06707805395126343, - -0.04907575249671936, - 0.15105122327804565, - 0.01744437776505947, - -0.06619874387979507, - -0.07671445608139038, - 0.0547390878200531, - -0.023104017600417137, - 0.050892770290374756, - 0.02182084694504738, - 0.06905778497457504, - 0.05052930861711502, - -0.05335437133908272, - 0.10176366567611694, - 0.05871710553765297, - -0.050939638167619705, - -0.06275615096092224, - -0.05191664397716522, - -0.011560317128896713, - 0.03879278153181076, - 0.011536180973052979, - -0.07817871868610382, - -0.011468037962913513, - 0.026277780532836914, - -0.009750363416969776, - 0.06902795284986496, - 0.1414240151643753, - 0.0844682902097702, - -0.13844546675682068 - ] - }, - "p245_276.wav": { - "name": "p245", - "embedding": [ - 0.07513131946325302, - 0.02545362338423729, - -0.0007975666667334735, - 0.0007347576320171356, - -0.014446436427533627, - -0.0018529929220676422, - -0.1630624234676361, - 0.12214868515729904, - -0.001670363126322627, - 0.07535199820995331, - -0.051437895745038986, - 0.09921683371067047, - 0.013241864740848541, - -0.15327613055706024, - -0.021063577383756638, - 0.04479089006781578, - -0.005546256899833679, - -0.015442103147506714, - -0.022954702377319336, - -0.03150840848684311, - 0.020176153630018234, - 0.06058849021792412, - 0.031246734783053398, - -0.019195646047592163, - 0.025389356538653374, - 0.05622461438179016, - 0.015163104049861431, - 0.03469700366258621, - -0.01221897266805172, - -0.009008258581161499, - 0.01926465332508087, - 0.061990123242139816, - -0.028483707457780838, - -0.032817672938108444, - 0.03926622122526169, - -0.0018425974994897842, - -0.0015973140252754092, - -0.08711747825145721, - -0.03546024113893509, - 0.015213991515338421, - -0.06350058317184448, - 0.08013074845075607, - 0.05164342746138573, - -0.03413361310958862, - 0.03368685394525528, - 0.025439295917749405, - 0.011682569049298763, - -0.064358189702034, - -0.1342936009168625, - 0.151157945394516, - 0.014985228888690472, - 0.06193343922495842, - -0.11136561632156372, - -0.018629081547260284, - 0.07343872636556625, - -0.02206953428685665, - -0.02288104221224785, - -0.04405027627944946, - 0.04169435799121857, - 0.13684767484664917, - -0.019486747682094574, - -0.0519028902053833, - 0.06259241700172424, - 0.07143506407737732, - 0.06255485862493515, - 0.016289565712213516, - 0.12722131609916687, - 0.0883333832025528, - -0.02125145122408867, - 0.006384031381458044, - 0.02852659486234188, - 0.06598511338233948, - 0.02192794531583786, - -0.007386332377791405, - 0.013409084640443325, - 0.018812738358974457, - -0.03646520525217056, - -0.022810813039541245, - -0.021267544478178024, - -0.024511411786079407, - 0.01405554823577404, - 0.02284611389040947, - 0.02818315289914608, - 0.06552787125110626, - -0.06397907435894012, - 0.05365968868136406, - 0.0382208451628685, - -0.025596462190151215, - 0.06153101846575737, - 0.027358587831258774, - 0.007291970308870077, - 0.01601489633321762, - -0.07241231948137283, - -0.07202789932489395, - 0.011328734457492828, - -0.0033673529978841543, - 0.015303499065339565, - 0.040278173983097076, - 0.03942414000630379, - -0.0285886712372303, - 0.11708387732505798, - 0.025230389088392258, - -0.01589309796690941, - 0.0013176712673157454, - -0.05587373673915863, - 0.08489914983510971, - 0.09609320014715195, - -0.023247260600328445, - 0.04496036469936371, - -0.05696377158164978, - -0.011959615163505077, - 0.04828553646802902, - -0.10010834783315659, - -0.06327567249536514, - 0.05855641886591911, - 0.03563724085688591, - 0.045757003128528595, - 0.1486397087574005, - 0.012655029073357582, - 0.0502140074968338, - 0.08141949772834778, - -0.08284391462802887, - -0.05485440418124199, - 0.004507214762270451, - 0.04715452343225479, - -0.05526868253946304, - 0.06577930599451065, - 0.05322889983654022, - 0.006675058510154486, - -0.016785262152552605, - 0.056993406265974045, - 0.011212694458663464, - -0.00012188901746412739, - -0.06596982479095459, - 0.036848943680524826, - 0.05157247930765152, - -0.005241219885647297, - -0.043959300965070724, - 0.025657981634140015, - 0.059320058673620224, - 0.014650347642600536, - 0.04271932691335678, - -0.05382728576660156, - -0.1463930308818817, - -0.008406261913478374, - 0.041148796677589417, - 0.08537115156650543, - -0.032415278255939484, - -0.04834642633795738, - -0.07863584160804749, - -0.023011289536952972, - -0.029490754008293152, - -0.001999839209020138, - 0.057922668755054474, - 0.008890870027244091, - 0.017409829422831535, - 0.07651060819625854, - -0.017208917066454887, - 0.04339132830500603, - 0.01516370102763176, - 0.002494536340236664, - 0.008127131499350071, - 0.028701579198241234, - -0.0042880079708993435, - -0.08832081407308578, - -0.03724939376115799, - 0.023126747459173203, - -0.01982273906469345, - 0.027472496032714844, - 0.007182744797319174, - -0.002531040459871292, - -0.008446760475635529, - -0.10211595147848129, - 0.029691239818930626, - -0.09596455097198486, - -0.029073771089315414, - 0.03172459453344345, - 0.0033631238620728254, - -0.026961371302604675, - 0.07979995012283325, - 0.04175744205713272, - 0.07449490576982498, - -0.042166538536548615, - -0.07729753851890564, - -0.053343381732702255, - 0.012318165972828865, - 0.06639628112316132, - -0.03494974225759506, - -0.002078404650092125, - 0.009801940992474556, - 0.02757570892572403, - 0.04453955590724945, - 0.058736201375722885, - 0.04062897711992264, - -0.01466267928481102, - -0.039879556745290756, - -0.008759453892707825, - 0.12539933621883392, - 0.048204414546489716, - -0.0434136837720871, - -0.04680304974317551, - 0.0005535235395655036, - -0.07774858176708221, - -0.000574390112888068, - 0.03343776613473892, - 0.04662688076496124, - 0.05060954391956329, - -0.01016424410045147, - -0.11285319179296494, - -0.06839986145496368, - 0.015341583639383316, - -0.060285188257694244, - -0.0014953764621168375, - -0.05849572271108627, - 0.029280435293912888, - 0.10980862379074097, - 0.015062114223837852, - 0.027394801378250122, - -0.0706247091293335, - -0.036756765097379684, - -0.046370141208171844, - -0.019908517599105835, - 0.02065538987517357, - 0.045064907521009445, - -0.08134107291698456, - 0.006947098299860954, - -0.06597991287708282, - 0.06346414983272552, - -0.01968800649046898, - 0.08218702673912048, - 0.040747594088315964, - -0.05304236710071564, - -0.10162591189146042, - -0.020573318004608154, - -0.011410156264901161, - 0.07832687348127365, - 0.02096492424607277, - 0.039235204458236694, - 0.04070473089814186, - -0.07032576948404312, - 0.06468284130096436, - 0.07685994356870651, - -0.046594396233558655, - -0.07684477418661118, - -0.054644010961055756, - -0.0035267286002635956, - 0.03640913590788841, - -0.004815790336579084, - -0.011477336287498474, - -0.004399165511131287, - 0.02710307203233242, - -0.008676138706505299, - 0.0436553955078125, - 0.09508110582828522, - 0.01512140966951847, - -0.11000603437423706 - ] - }, - "p245_119.wav": { - "name": "p245", - "embedding": [ - 0.041035328060388565, - 0.1171216368675232, - -0.01179348025470972, - 0.03046359308063984, - -0.04702170193195343, - 0.09453181177377701, - -0.10668397694826126, - 0.12248910963535309, - -0.08323294669389725, - 0.14492663741111755, - -0.09888210147619247, - 0.10447487235069275, - -0.05675545334815979, - -0.1498221755027771, - -0.05997239425778389, - 0.05494444817304611, - -0.06274647265672684, - -0.023233912885189056, - -0.04553444683551788, - -0.005147829651832581, - 0.03341696783900261, - 0.012462028302252293, - 0.025516755878925323, - 0.022354155778884888, - 0.027508899569511414, - 0.06286543607711792, - 0.001179900486022234, - 0.048382315784692764, - 0.022447364404797554, - -0.050107475370168686, - -0.040904365479946136, - 0.12279647588729858, - -0.04318425804376602, - 0.014436806552112103, - 0.05204117298126221, - 0.019102005288004875, - 0.006252304185181856, - -0.06737777590751648, - -0.0053457641042768955, - -0.021111296489834785, - -0.04827390983700752, - 0.06416188925504684, - 0.00558291282504797, - -0.004469968844205141, - 0.028955701738595963, - 0.006233080290257931, - -0.019877638667821884, - -0.04545636475086212, - -0.09355872869491577, - 0.15283310413360596, - 0.07247988134622574, - -0.002529071643948555, - -0.07150186598300934, - -0.07887449860572815, - 0.10880424082279205, - -0.007559535093605518, - -0.12024316191673279, - -0.04662764444947243, - 0.07981253415346146, - 0.17828938364982605, - -0.02430693805217743, - -0.01474565640091896, - 0.010893961414694786, - 0.12074629962444305, - 0.044923555105924606, - 0.10954049229621887, - 0.06623528152704239, - 0.08859512209892273, - 0.017126547172665596, - 0.031472571194171906, - 0.07967846095561981, - 0.0410277396440506, - 0.05896005779504776, - -0.021644819527864456, - 0.03180265426635742, - -0.01761065609753132, - -0.01831923797726631, - 0.032657016068696976, - -0.02466539293527603, - -0.03449594974517822, - -0.030181854963302612, - 0.00802590325474739, - -0.004851335193961859, - 0.005722460336983204, - -0.021320605650544167, - 0.05398112162947655, - 0.009338266216218472, - -0.0218175258487463, - 0.07274986803531647, - 0.051705602556467056, - -0.002791539765894413, - 0.05145624279975891, - -0.05410643666982651, - -0.0874621570110321, - 0.01553080789744854, - 0.0018303999677300453, - 0.010888876393437386, - 0.07250514626502991, - 0.03416242077946663, - -0.015027493238449097, - 0.0963885635137558, - 0.052156828343868256, - 0.018163956701755524, - 0.02427164651453495, - -0.1131306141614914, - 0.12617751955986023, - 0.0781724825501442, - -0.02230972982943058, - 0.028605753555893898, - -0.0042348201386630535, - 0.07369662076234818, - 0.09680469334125519, - -0.1422722339630127, - -0.07125332206487656, - 0.022511953487992287, - -0.007162821479141712, - -0.008128483779728413, - 0.07181699573993683, - -0.0035393889993429184, - 0.0033530760556459427, - 0.09313615411520004, - -0.07921084761619568, - -0.06184364855289459, - -0.03161986917257309, - 0.045311339199543, - -0.07356663048267365, - 0.043095991015434265, - 0.04346722364425659, - 0.001474400283768773, - -0.01761433854699135, - 0.08378525078296661, - -0.010551784187555313, - -0.015932224690914154, - 0.042461566627025604, - -0.05689840763807297, - 0.02786139026284218, - -0.037262171506881714, - 0.0036523835733532906, - 0.04492847993969917, - 0.05050475895404816, - 0.04371700435876846, - -0.007069278042763472, - -0.009565704502165318, - -0.0784645527601242, - -0.0012035290710628033, - 0.06865569949150085, - 0.05565640330314636, - -0.008396778255701065, - -0.013615313917398453, - -0.03218509256839752, - -0.056504637002944946, - 0.02951989322900772, - -0.011214896105229855, - 0.09775665402412415, - -0.01146942563354969, - -0.005394458770751953, - 0.10931695997714996, - 0.005259362049400806, - -0.009987985715270042, - -0.07161106169223785, - -0.006231918931007385, - 0.03999503329396248, - 0.05255555734038353, - -0.06762631237506866, - -0.07490804046392441, - 0.02168220467865467, - 0.023013144731521606, - -0.019276540726423264, - 0.04656728357076645, - 0.042168669402599335, - 0.004543937277048826, - 0.031079240143299103, - -0.05665223300457001, - 0.02340463176369667, - -0.0977492481470108, - -0.04623570665717125, - -0.01847703568637371, - -0.05729732662439346, - -0.01188218966126442, - 0.0690579041838646, - 0.02865620329976082, - 0.02114933356642723, - 0.013684026896953583, - -0.0934654101729393, - -0.06491606682538986, - 0.07864168286323547, - 0.0688200294971466, - 0.018624501302838326, - 0.05195033177733421, - 0.06353733688592911, - -0.024179628118872643, - 0.050453878939151764, - 0.07028040289878845, - 0.1048823893070221, - -0.022610560059547424, - -0.0059287287294864655, - -0.07370325177907944, - 0.05497792363166809, - 0.07311097532510757, - -0.11497239768505096, - -0.08855105191469193, - -0.035394515842199326, - -0.04312887787818909, - 0.04550495371222496, - -0.0346343070268631, - 0.013257147744297981, - 0.03421206399798393, - -0.04018382728099823, - -0.08878929913043976, - -0.1068856343626976, - 0.1229618713259697, - -0.06971406936645508, - -0.022279294207692146, - -0.06242777034640312, - 0.04196704179048538, - 0.06394918262958527, - 0.03370310366153717, - -0.0312601774930954, - 0.03787950053811073, - 0.04882405698299408, - -0.06794276833534241, - -0.02030945010483265, - 0.03759439289569855, - -0.00434664823114872, - -0.10304947197437286, - 0.022803107276558876, - -0.08713734149932861, - 0.09344163537025452, - -0.06279364228248596, - 0.17406919598579407, - -0.029436789453029633, - -0.048017099499702454, - -0.08457805216312408, - 0.04212973266839981, - -0.036227550357580185, - 0.03667278587818146, - 0.039252158254384995, - 0.07407870888710022, - 0.00952131673693657, - -0.05543564260005951, - 0.11899800598621368, - 0.021641097962856293, - -0.0313698872923851, - -0.06194864958524704, - -0.0465119443833828, - -0.058486443012952805, - 0.010606616735458374, - -0.008879156783223152, - -0.09011583030223846, - 0.003236854914575815, - 0.012624252587556839, - -0.015175329521298409, - 0.0782565027475357, - 0.1355554461479187, - 0.07503320276737213, - -0.0978284627199173 - ] - }, - "p245_183.wav": { - "name": "p245", - "embedding": [ - 0.04004361480474472, - 0.1142340749502182, - 0.01573406346142292, - 0.008702335879206657, - -0.026102041825652122, - 0.01421207096427679, - -0.05444011092185974, - 0.09331192076206207, - 0.030600570142269135, - 0.06351393461227417, - -0.08533996343612671, - 0.07840592414140701, - -0.06860426068305969, - -0.10734489560127258, - 0.008671983145177364, - 0.035235267132520676, - -0.037064485251903534, - -0.006941264029592276, - -0.020846206694841385, - -0.04411144182085991, - -0.019091255962848663, - 0.01464475691318512, - 0.023537633940577507, - 0.02783234789967537, - -0.0023410916328430176, - 0.05802048742771149, - -0.022554244846105576, - 0.002357428427785635, - -0.009786895476281643, - -0.0505397766828537, - -0.01694747619330883, - 0.03900054097175598, - -0.03462659940123558, - -0.012639855965971947, - -4.806742072105408e-05, - -0.032658763229846954, - 0.014093822799623013, - -0.0402003675699234, - -0.046144478023052216, - 0.03959941864013672, - -0.0663345605134964, - 0.051373012363910675, - 0.0051093799993395805, - -0.06451612710952759, - 0.031120896339416504, - 0.02127220295369625, - -0.02785540372133255, - -0.009320992045104504, - -0.11060484498739243, - 0.10683252662420273, - 0.042785607278347015, - 0.01784227229654789, - -0.05954263359308243, - -0.02501940354704857, - 0.08733145892620087, - -0.0021991929970681667, - -0.03732706606388092, - -0.0202924907207489, - 0.02913406305015087, - 0.04478723928332329, - 0.002322676358744502, - -0.03601595014333725, - 0.029787488281726837, - 0.06767427176237106, - 0.06451044231653214, - 0.028775891289114952, - 0.06827805936336517, - 0.08838818967342377, - -0.0701795443892479, - 0.001795570133253932, - 0.05021118372678757, - 0.020627638325095177, - 0.06979973614215851, - 0.005090269260108471, - -0.02057863026857376, - 0.0007662351126782596, - 0.009133713319897652, - -0.009617729112505913, - 0.009377913549542427, - -0.043493762612342834, - 0.017148837447166443, - -0.02034933678805828, - -0.01801767572760582, - 0.00206182524561882, - -0.020618274807929993, - 0.006135655101388693, - 0.07763402909040451, - 0.0382198840379715, - 0.08375623822212219, - 0.02762819454073906, - 0.012393539771437645, - 0.09375175088644028, - -0.07711796462535858, - -0.040032483637332916, - 0.006372353993356228, - -0.024415001273155212, - 0.04663130268454552, - 0.058602865785360336, - 0.054348163306713104, - -0.007863905280828476, - 0.10615401715040207, - 0.01535364892333746, - 0.032873425632715225, - -0.006063016131520271, - -0.06522908806800842, - 0.05220669507980347, - 0.0654420554637909, - -0.04212576150894165, - 0.04679134488105774, - 0.04497436434030533, - 0.04629715532064438, - 0.06347309052944183, - -0.06397742033004761, - -0.013589812442660332, - -0.019445527344942093, - 0.035097844898700714, - -0.005463359411805868, - 0.08890075981616974, - -0.015350909903645515, - 0.03926539421081543, - 0.1120821163058281, - -0.059573426842689514, - -0.00844486616551876, - 0.025637462735176086, - -0.006960737518966198, - -0.057128291577100754, - 0.05967188999056816, - 0.036719538271427155, - -0.0010291710495948792, - 0.011213904246687889, - 0.05888380855321884, - 0.0024499837309122086, - -0.0001847290841396898, - -0.037351541221141815, - -0.006991258822381496, - -0.026712220162153244, - 0.008545072749257088, - -0.008541903458535671, - 0.03254855424165726, - 0.05428321287035942, - 0.010814297012984753, - 0.02313941717147827, - -0.026378391310572624, - -0.08601202815771103, - 0.047178126871585846, - 0.015321163460612297, - 0.021147971972823143, - 0.03083699196577072, - -0.04194445535540581, - -0.03578154370188713, - -0.01372518204152584, - 0.029537610709667206, - -0.0041631124913692474, - 0.05572943389415741, - -0.0008132308721542358, - -0.0012410444905981421, - 0.07629962265491486, - 0.04363131523132324, - 0.014784732833504677, - -0.030621131882071495, - -0.08758185803890228, - -0.009393461048603058, - 0.036248113960027695, - -0.06479854881763458, - -0.07270146161317825, - -0.035207197070121765, - -0.009832712821662426, - 0.01271092426031828, - 0.045438237488269806, - 0.06104039400815964, - -0.02665194869041443, - -0.002569361124187708, - -0.06129225343465805, - 0.0247060414403677, - -0.01936211995780468, - -0.09773583710193634, - 0.018274758011102676, - 0.0011608017375692725, - 0.003764840541407466, - 0.052485670894384384, - -0.0030179969035089016, - 0.02800317108631134, - -0.04018954560160637, - -0.057796746492385864, - -0.014679154381155968, - 0.02069707028567791, - 0.02277674898505211, - -0.001057436689734459, - 0.031517356634140015, - 0.07840427756309509, - -0.01953011006116867, - 0.04013515263795853, - 0.011267222464084625, - 0.08430679887533188, - -0.05262231081724167, - 0.023029936477541924, - 0.01687745377421379, - 0.03873715549707413, - 0.048860371112823486, - -0.07173056900501251, - -0.07870382815599442, - -0.062005363404750824, - -0.05009894073009491, - 0.03723980486392975, - 0.0012853461084887385, - 0.02723969891667366, - 0.025289051234722137, - -0.005822490435093641, - -0.00565047562122345, - -0.10714810341596603, - 0.03927227854728699, - -0.0018325697164982557, - -0.005222877021878958, - -0.05847787857055664, - 0.02401411533355713, - 0.02280975691974163, - 0.052191611379384995, - -0.00558630283921957, - 0.01785661280155182, - 0.01825030893087387, - 0.032320376485586166, - -0.016544198617339134, - 0.05133195221424103, - 0.0547487698495388, - -0.0240594781935215, - -0.04512994736433029, - -0.0745638757944107, - 0.07238838076591492, - 0.023735735565423965, - 0.08931230753660202, - 0.03413977846503258, - -0.008464518934488297, - -0.08797469735145569, - 0.03390021622180939, - -0.02840748056769371, - 0.04909130930900574, - 0.005772958509624004, - 0.026611965149641037, - 0.053455837070941925, - -0.018304210156202316, - 0.08503516763448715, - 0.04462161287665367, - -0.03644011169672012, - -0.02813814952969551, - -0.02026468515396118, - -0.05901561304926872, - 0.000768480240367353, - 0.014603976160287857, - -0.04559175670146942, - -0.01959086023271084, - 0.013073625974357128, - 0.050295960158109665, - 0.057487405836582184, - 0.09151953458786011, - 0.04710816591978073, - -0.0457567498087883 - ] - }, - "p245_225.wav": { - "name": "p245", - "embedding": [ - 0.051310356706380844, - 0.0834568589925766, - -0.007183582987636328, - 0.024922311305999756, - -0.05904063582420349, - 0.05854015052318573, - -0.12535451352596283, - 0.13923655450344086, - -0.048962414264678955, - 0.13454389572143555, - -0.08436745405197144, - 0.12003946304321289, - -0.018191056326031685, - -0.18622538447380066, - -0.04205184429883957, - 0.05584371089935303, - -0.05870799347758293, - -0.03711184859275818, - -0.04091525822877884, - -0.024240415543317795, - 0.04846750944852829, - 0.046098366379737854, - 0.02297571860253811, - 0.023305930197238922, - 0.0161106176674366, - 0.0672079548239708, - 0.006895146332681179, - 0.05087154358625412, - 0.025754354894161224, - -0.05391912907361984, - -0.04346948117017746, - 0.10569560527801514, - -0.029959870502352715, - 0.012836702167987823, - 0.05633143335580826, - -0.008604303002357483, - 0.007666845805943012, - -0.0707116574048996, - -0.03749518841505051, - 0.002286672592163086, - -0.046102285385131836, - 0.0695449560880661, - 0.03421386331319809, - -0.0005849180743098259, - 0.04492742940783501, - 0.026415377855300903, - -0.02220986597239971, - -0.06214544177055359, - -0.10468965023756027, - 0.1593395471572876, - 0.08075140416622162, - 0.0007237071986310184, - -0.056593798100948334, - -0.06586285680532455, - 0.11136949062347412, - -0.023772722110152245, - -0.12023966014385223, - -0.032618336379528046, - 0.08353757858276367, - 0.1662822961807251, - -0.03776085376739502, - -0.03253000229597092, - 0.02880828082561493, - 0.12897907197475433, - 0.04153900220990181, - 0.09347943961620331, - 0.0847809910774231, - 0.09913381934165955, - -0.013993805274367332, - 0.02056264504790306, - 0.06070602685213089, - 0.075182244181633, - 0.050415150821208954, - -0.011057760566473007, - 0.028329208493232727, - 0.019188813865184784, - -0.024003982543945312, - 0.013095136731863022, - -0.03203959763050079, - 0.0020693736150860786, - -0.016150690615177155, - 0.015914611518383026, - 0.00934388767927885, - 0.004301947541534901, - -0.021690620109438896, - 0.07170313596725464, - 0.012773110531270504, - 0.0011356908362358809, - 0.062143921852111816, - 0.024439770728349686, - 0.009733228944242, - 0.06504429131746292, - -0.0682581290602684, - -0.09829120337963104, - 0.02016337215900421, - 0.004274268634617329, - 0.021691270172595978, - 0.07123589515686035, - 0.0369928702712059, - -0.02347165159881115, - 0.12361294031143188, - 0.048631519079208374, - -0.010325217619538307, - 0.03487465903162956, - -0.1055663675069809, - 0.11801376193761826, - 0.08848124742507935, - -0.024073978886008263, - 0.044693246483802795, - -0.05175858736038208, - 0.09415145218372345, - 0.06779108941555023, - -0.14691698551177979, - -0.07015042752027512, - 0.03770233690738678, - 0.021970687434077263, - -0.01646597310900688, - 0.11501292884349823, - -0.022866234183311462, - 0.03493736684322357, - 0.10662199556827545, - -0.07663226872682571, - -0.04691013693809509, - -0.02115100994706154, - 0.04523073136806488, - -0.08182382583618164, - 0.05350396782159805, - 0.042129211127758026, - -0.008851347491145134, - 0.010719409212470055, - 0.08423992991447449, - -0.018655668944120407, - -0.017582222819328308, - 0.016056731343269348, - -0.053253501653671265, - 0.022326787933707237, - -0.03952012211084366, - -0.0036005841102451086, - 0.04588611051440239, - 0.05219850689172745, - 0.0284300334751606, - 0.0018955932464450598, - -0.04513990506529808, - -0.11290672421455383, - 0.013492641970515251, - 0.021745748817920685, - 0.07653792947530746, - 0.0019345910986885428, - -0.016105739399790764, - -0.04283713549375534, - -0.06032940745353699, - 0.010123149491846561, - -0.014821472577750683, - 0.06825020164251328, - -0.025392016395926476, - 0.009346231818199158, - 0.08582484722137451, - 0.018835386261343956, - -0.002730567706748843, - -0.05414818227291107, - -0.03663495182991028, - 0.014556418173015118, - 0.050860535353422165, - -0.07009952515363693, - -0.06716781109571457, - 0.009577251970767975, - 0.029556702822446823, - -0.028313755989074707, - 0.03512787073850632, - 0.031155100092291832, - 0.019702419638633728, - 0.0357375293970108, - -0.06907254457473755, - 0.022252175956964493, - -0.12954393029212952, - -0.06845229119062424, - -0.0014752396382391453, - -0.0039057238027453423, - -0.007702663540840149, - 0.06386175751686096, - 0.01073797419667244, - 0.042002737522125244, - -0.004782171919941902, - -0.08473232388496399, - -0.0756043940782547, - 0.06864666938781738, - 0.08150909841060638, - 0.016689594835042953, - 0.05930107459425926, - 0.05765974149107933, - -0.02660529874265194, - 0.059486594051122665, - 0.052595850080251694, - 0.1166267842054367, - -0.009347288869321346, - 0.01946708932518959, - -0.06721298396587372, - 0.07768040895462036, - 0.06711600720882416, - -0.09189391136169434, - -0.08728042244911194, - -0.022854052484035492, - -0.059434063732624054, - 0.05167289078235626, - -0.01226080022752285, - -0.0005905249854549766, - 0.02559918724000454, - 0.001991212833672762, - -0.10102181881666183, - -0.06682616472244263, - 0.08294108510017395, - -0.06717744469642639, - -0.010215646587312222, - -0.08186393231153488, - 0.04807831346988678, - 0.11755266040563583, - 0.02768605202436447, - -0.017336614429950714, - -0.012437839061021805, - 0.049414195120334625, - -0.05128028243780136, - -0.007469031028449535, - 0.03093288466334343, - 0.024964459240436554, - -0.10463273525238037, - 0.010376625694334507, - -0.079476498067379, - 0.05149449035525322, - -0.04900449141860008, - 0.14601962268352509, - -0.004348237533122301, - -0.04973670840263367, - -0.08056377619504929, - 0.04329552501440048, - -0.015312936156988144, - 0.05326518043875694, - 0.04006648436188698, - 0.059056758880615234, - 0.038145314902067184, - -0.0742846131324768, - 0.1193387508392334, - 0.033959515392780304, - -0.051414769142866135, - -0.05939514562487602, - -0.036965176463127136, - -0.03650502488017082, - 0.008558135479688644, - 0.009751654230058193, - -0.08333491533994675, - -0.033416714519262314, - 0.015308569185435772, - -0.031427640467882156, - 0.07233746349811554, - 0.13444292545318604, - 0.05726928636431694, - -0.11903858184814453 - ] - }, - "p245_181.wav": { - "name": "p245", - "embedding": [ - 0.04853549972176552, - 0.07374346256256104, - -0.001116683823056519, - -0.004097479395568371, - -0.05194046348333359, - 0.032380111515522, - -0.15319423377513885, - 0.1677865833044052, - -0.03134298697113991, - 0.14076322317123413, - -0.05758073553442955, - 0.13522285223007202, - -0.0045502083376049995, - -0.2062889188528061, - -0.01282620057463646, - 0.05268338695168495, - -0.023829998448491096, - -0.017512261867523193, - -0.029962552711367607, - -0.01580413244664669, - 0.056428417563438416, - 0.03410758450627327, - 0.01014520600438118, - -0.012165883556008339, - 0.01225997693836689, - 0.05962875112891197, - 0.025165636092424393, - 0.061515845358371735, - 0.011232085525989532, - -0.05249512940645218, - -0.017271436750888824, - 0.08193641901016235, - -0.04830748960375786, - 0.015094342641532421, - 0.07996463775634766, - -0.03762584179639816, - -0.01477043516933918, - -0.0492141991853714, - -0.040189262479543686, - 0.012100317515432835, - -0.05262179672718048, - 0.07870141416788101, - 0.04001838341355324, - -0.0012544456403702497, - 0.06015627086162567, - 0.06565815955400467, - -0.006570492871105671, - -0.06202240660786629, - -0.10482068359851837, - 0.1445426493883133, - 0.07270271331071854, - 0.0028371138032525778, - -0.06960224360227585, - -0.0651412233710289, - 0.10882683098316193, - -0.027654144912958145, - -0.09092991054058075, - -0.04937249794602394, - 0.08291393518447876, - 0.14302006363868713, - -0.039390768855810165, - -0.041358478367328644, - 0.03378795087337494, - 0.10844965279102325, - 0.04374459385871887, - 0.0949270948767662, - 0.08207087218761444, - 0.09717680513858795, - -0.011792026460170746, - 0.0363716296851635, - 0.032117169350385666, - 0.08845886588096619, - 0.03672913461923599, - -0.007556884549558163, - 0.03091672994196415, - 0.02143774926662445, - -0.01366843469440937, - -0.013842469081282616, - -0.02877255156636238, - 0.008468045853078365, - -0.008475390262901783, - 0.040177036076784134, - 0.029854124411940575, - 0.014830820262432098, - -0.018003882840275764, - 0.07784435153007507, - 0.0208574328571558, - -0.0002615501289255917, - 0.052651312202215195, - 0.013198098167777061, - 0.013720996677875519, - 0.06634802371263504, - -0.1027640625834465, - -0.10428232699632645, - 0.014153995551168919, - -0.015950949862599373, - 0.010771851055324078, - 0.0733986347913742, - 0.0238480381667614, - -0.005900437943637371, - 0.1312226802110672, - 0.0532442107796669, - -0.02058122307062149, - 0.04952317848801613, - -0.10026396065950394, - 0.1128343939781189, - 0.06282803416252136, - -0.030719399452209473, - 0.052864156663417816, - -0.08830054104328156, - 0.08695419132709503, - 0.051488880068063736, - -0.14639277756214142, - -0.07902682572603226, - 0.03511642664670944, - 0.022750703617930412, - -0.03486593812704086, - 0.1531457006931305, - -0.025465352460741997, - 0.046481434255838394, - 0.11906690150499344, - -0.07846203446388245, - -0.055537011474370956, - -0.016915205866098404, - 0.0648004338145256, - -0.08302264660596848, - 0.08443479239940643, - 0.026740243658423424, - -0.009410153143107891, - 0.027778157964348793, - 0.09605671465396881, - -0.017449194565415382, - 0.0035791348200291395, - 0.0011096944799646735, - -0.026050278916954994, - 0.018737956881523132, - -0.05604676529765129, - 0.0008088279282674193, - 0.022545162588357925, - 0.05101313441991806, - 0.05300116911530495, - 0.009291495196521282, - -0.046177081763744354, - -0.11584735661745071, - 0.008204870857298374, - 0.007565791253000498, - 0.09485208988189697, - 0.00445913802832365, - -0.02815094403922558, - -0.045742250978946686, - -0.06417097896337509, - -0.029459692537784576, - -0.007919691503047943, - 0.07071837037801743, - -0.015393108129501343, - 0.040643878281116486, - 0.08823003619909286, - 0.02858070842921734, - 0.011487992480397224, - -0.040893036872148514, - -0.04137302190065384, - -0.0060546607710421085, - 0.05033597722649574, - -0.07571807503700256, - -0.06315838545560837, - -0.01347871869802475, - 0.03451967239379883, - -0.022088471800088882, - 0.04240419343113899, - 0.024976396933197975, - 0.041568558663129807, - 0.03842240199446678, - -0.09280429035425186, - 0.020226500928401947, - -0.11809604614973068, - -0.08533738553524017, - -0.022438112646341324, - 0.003981985151767731, - -0.03767376393079758, - 0.05087290331721306, - 0.005034510046243668, - 0.06469130516052246, - -0.002973736496642232, - -0.06831032782793045, - -0.09751009196043015, - 0.048866864293813705, - 0.07535960525274277, - -0.019422877579927444, - 0.046537987887859344, - 0.04640880599617958, - -0.04698324576020241, - 0.05519653111696243, - 0.06034466251730919, - 0.0976715013384819, - 8.228563092416152e-05, - 0.03282411769032478, - -0.05300220474600792, - 0.1086861789226532, - 0.08543731272220612, - -0.07902968674898148, - -0.08156649023294449, - -0.008789177052676678, - -0.08046814799308777, - 0.026485934853553772, - -0.002566782757639885, - 0.0038669253699481487, - 0.02527458965778351, - 0.026181191205978394, - -0.09029557555913925, - -0.04500250890851021, - 0.04789915680885315, - -0.09012192487716675, - -0.009148224256932735, - -0.0724482461810112, - 0.03745226189494133, - 0.132490336894989, - 0.03726755455136299, - -0.01586213894188404, - -0.06267713755369186, - 0.05438413843512535, - -0.03506023809313774, - 0.013881347142159939, - 0.042518507689237595, - 0.043448496609926224, - -0.08421245217323303, - 0.015443815849721432, - -0.06268421560525894, - 0.020667875185608864, - -0.04616343230009079, - 0.12721915543079376, - 0.0010249214246869087, - -0.06269851326942444, - -0.0810132846236229, - 0.01638193242251873, - -0.005842297337949276, - 0.049309249967336655, - 0.010862704366445541, - 0.06154543161392212, - 0.05593006685376167, - -0.06132841482758522, - 0.13494554162025452, - 0.03964308649301529, - -0.04365214705467224, - -0.05405324697494507, - -0.059244342148303986, - -0.03747475892305374, - 0.01179627887904644, - 0.022646265104413033, - -0.08147099614143372, - -0.04162844642996788, - 0.0229788850992918, - -0.024886325001716614, - 0.06388237327337265, - 0.13688220083713531, - 0.044621385633945465, - -0.13598714768886566 - ] - }, - "p245_107.wav": { - "name": "p245", - "embedding": [ - 0.018986329436302185, - 0.07078036665916443, - 0.006265767849981785, - 0.02359943464398384, - -0.021356943994760513, - 0.08659772574901581, - -0.13949386775493622, - 0.07979732751846313, - -0.06393814086914062, - 0.1497763693332672, - -0.06465169787406921, - 0.07656559348106384, - -0.024128064513206482, - -0.18016406893730164, - -0.08015492558479309, - 0.03792214393615723, - -0.08288389444351196, - -0.05135296285152435, - -0.012154608964920044, - -0.01092481892555952, - 0.07797106355428696, - 0.06504654139280319, - 0.010650359094142914, - 0.013227639719843864, - -0.00042673488496802747, - 0.04103270173072815, - 0.01009832601994276, - 0.050835248082876205, - 0.01654806360602379, - -0.0785716325044632, - -0.029552340507507324, - 0.11881434917449951, - -0.04304300993680954, - 0.047803036868572235, - 0.011636339128017426, - 0.03811034560203552, - 0.030043434351682663, - -0.040382977575063705, - -0.030305400490760803, - 0.019964013248682022, - -0.036857783794403076, - 0.06805232167243958, - 0.006876373663544655, - 0.044883519411087036, - 0.017787471413612366, - -0.016511091962456703, - -0.024941591545939445, - -0.03105109930038452, - -0.08011465519666672, - 0.17052917182445526, - 0.06246097385883331, - -0.014357741922140121, - -0.04994981735944748, - -0.11703971028327942, - 0.1090301126241684, - -0.0014445552369579673, - -0.1395440548658371, - -0.008596444502472878, - 0.08908972144126892, - 0.17083905637264252, - 0.006106068380177021, - -0.052606768906116486, - 0.022033292800188065, - 0.09799718856811523, - 0.0003657626803033054, - 0.0765744149684906, - 0.06276323646306992, - 0.05974283441901207, - 0.007905557751655579, - -0.036622487008571625, - 0.052865348756313324, - 0.06904914975166321, - 0.03529331088066101, - -0.04167652130126953, - 0.045096442103385925, - 0.01656993106007576, - -0.014775793068110943, - 0.052089761942625046, - -0.01925453543663025, - 0.003051417414098978, - -0.015225245617330074, - -0.015594327822327614, - -0.015718944370746613, - 0.011332297697663307, - -0.022591035813093185, - 0.010972678661346436, - -0.012020682916045189, - 0.002858270425349474, - 0.07237361371517181, - 0.07124389708042145, - 0.05658094212412834, - 0.06093538552522659, - -0.03981662169098854, - -0.06070934236049652, - 0.03469102829694748, - 0.03705674037337303, - 0.016070283949375153, - 0.08140319585800171, - 0.0365169420838356, - -0.02945508062839508, - 0.09506413340568542, - 0.01847119815647602, - -0.004679569974541664, - -0.012284490279853344, - -0.15561553835868835, - 0.0781673789024353, - 0.08458705991506577, - -0.014894695952534676, - 0.014846181496977806, - -0.039537906646728516, - 0.1071552187204361, - 0.09049631655216217, - -0.13942833244800568, - -0.08672802895307541, - 0.04133039712905884, - 0.0416400283575058, - 0.020161911845207214, - 0.11683528870344162, - -0.014187408611178398, - -0.015081814490258694, - 0.07005643844604492, - -0.0705585703253746, - -0.03392527997493744, - -0.03995451703667641, - 0.04487442597746849, - -0.08848090469837189, - 0.03944464772939682, - 0.007544742431491613, - -0.004261431284248829, - -0.02394506335258484, - 0.060046106576919556, - -0.03800112009048462, - 0.012030383571982384, - -0.002693778369575739, - -0.042180873453617096, - 0.024834778159856796, - -0.048504095524549484, - 0.014299875125288963, - 0.06087065488100052, - 0.04069444164633751, - 0.0522843673825264, - -0.0036741429939866066, - -0.07643705606460571, - -0.11633668839931488, - 0.0056757754646241665, - 0.0534629225730896, - 0.028400704264640808, - -0.01787242852151394, - -0.039167050272226334, - -0.04316931217908859, - -0.07920325547456741, - 0.07119631767272949, - -0.01749090477824211, - 0.0982508659362793, - 0.029152927920222282, - -0.02141754887998104, - 0.0911213755607605, - 0.011613093316555023, - -0.03806714713573456, - -0.037456244230270386, - -0.047122322022914886, - -0.0009285841952078044, - 0.02391948364675045, - -0.08757875859737396, - -0.05143696069717407, - 0.015609733760356903, - 0.028181953355669975, - 0.0180954709649086, - 0.03240957856178284, - 0.06839299201965332, - 0.00494399294257164, - 0.0423361174762249, - -0.08937080204486847, - 0.011890641413629055, - -0.12494389712810516, - -0.09722138941287994, - -0.0166076198220253, - -0.04433054476976395, - 0.03799745440483093, - 0.09615711867809296, - -0.0030421435367316008, - -0.018143337219953537, - -0.01988799311220646, - -0.08525364100933075, - -0.07768607139587402, - 0.07390022277832031, - 0.0739513635635376, - 0.03481234610080719, - 0.055766306817531586, - 0.06132469326257706, - -0.03944970294833183, - 0.08940285444259644, - 0.053724393248558044, - 0.1362406462430954, - -0.05846592038869858, - 0.05685748904943466, - -0.05243150144815445, - 0.0797581672668457, - 0.05632391571998596, - -0.06626347452402115, - -0.08350029587745667, - -0.00929337926208973, - -0.0768534392118454, - 0.06385917961597443, - -0.033822763711214066, - 0.006117173936218023, - 0.008199060335755348, - -0.017200030386447906, - -0.11949693411588669, - -0.06962133944034576, - 0.09143565595149994, - -0.027929916977882385, - -0.03770570456981659, - -0.07410022616386414, - 0.052244603633880615, - 0.08327490091323853, - 0.06563417613506317, - -0.010562488809227943, - 0.028810199350118637, - 0.04854373261332512, - -0.056534282863140106, - -0.0273711197078228, - 0.022549763321876526, - -0.019329529255628586, - -0.09160171449184418, - -0.016648469492793083, - -0.10516708344221115, - 0.05289390683174133, - -0.08231537789106369, - 0.12841537594795227, - -0.0357721745967865, - -0.09255094826221466, - -0.05272103101015091, - 0.047350283712148666, - -0.021463148295879364, - 0.03665878623723984, - 0.039248254150152206, - 0.06672525405883789, - 0.02034568041563034, - -0.04230334609746933, - 0.07991709560155869, - 0.05416296049952507, - -0.023108704015612602, - -0.045002829283475876, - -0.010626382194459438, - 0.003869683248922229, - 0.027586787939071655, - -0.0053460909985005856, - -0.08179886639118195, - 0.013816035352647305, - 0.02730204164981842, - -0.002952365204691887, - 0.042515143752098083, - 0.11149786412715912, - 0.05035954713821411, - -0.1337471604347229 - ] - }, - "p245_224.wav": { - "name": "p245", - "embedding": [ - 0.04962719604372978, - 0.09732125699520111, - -0.0143382977694273, - 0.02728196047246456, - -0.06896641850471497, - 0.0552939847111702, - -0.10239609330892563, - 0.14319078624248505, - -0.052431076765060425, - 0.1283714473247528, - -0.08825169503688812, - 0.1425744891166687, - -0.034931644797325134, - -0.16779926419258118, - -0.031961627304553986, - 0.059813402593135834, - -0.04328319430351257, - -0.03515210375189781, - -0.030132224783301353, - -0.038394536823034286, - 0.035689376294612885, - 0.027956193313002586, - 0.039848215878009796, - 0.0350717194378376, - 0.012987012974917889, - 0.08265584707260132, - 0.0008173746755346656, - 0.04667996987700462, - 0.02069834992289543, - -0.05261540412902832, - -0.05512323975563049, - 0.08663111180067062, - -0.045588575303554535, - 0.011046282947063446, - 0.04991162568330765, - -0.010892706923186779, - 0.009458189830183983, - -0.06487947702407837, - -0.0286991186439991, - -0.009078212082386017, - -0.051371634006500244, - 0.06625634431838989, - 0.016617964953184128, - -0.03296768665313721, - 0.03816141188144684, - 0.025730393826961517, - -0.021823478862643242, - -0.035476066172122955, - -0.11402949690818787, - 0.14825060963630676, - 0.0843455046415329, - -0.004118979908525944, - -0.06286304444074631, - -0.06260013580322266, - 0.11318610608577728, - -0.023049727082252502, - -0.10841351002454758, - -0.025535790249705315, - 0.07253169268369675, - 0.15246140956878662, - -0.03746199607849121, - -0.03258427605032921, - 0.028609059751033783, - 0.12159141898155212, - 0.05789707228541374, - 0.0897446870803833, - 0.08512584865093231, - 0.10896792262792587, - -0.03643473982810974, - 0.01998995989561081, - 0.061563991010189056, - 0.08648942410945892, - 0.06491782516241074, - -0.004056436475366354, - 0.011502666398882866, - 0.005630706436932087, - -0.02097097411751747, - 0.00923735648393631, - -0.03812224417924881, - -0.029163045808672905, - -0.03368283808231354, - 0.0007098371861502528, - 0.00538286566734314, - 0.0009792795171961188, - -0.015939347445964813, - 0.08044539391994476, - 0.030145376920700073, - -0.0072248405776917934, - 0.06023592874407768, - 0.020126961171627045, - -0.012134900316596031, - 0.0692741721868515, - -0.08108511567115784, - -0.0763382539153099, - 0.017370417714118958, - 0.002023442182689905, - 0.022333841770887375, - 0.0892980545759201, - 0.04410454258322716, - -0.013034462928771973, - 0.12683239579200745, - 0.060135047882795334, - 0.0009284485131502151, - 0.02179778181016445, - -0.09034089744091034, - 0.12779009342193604, - 0.09989762306213379, - -0.03615942224860191, - 0.041501980274915695, - -0.03599080070853233, - 0.08386196196079254, - 0.0731990858912468, - -0.1398015022277832, - -0.06821295619010925, - 0.006960911210626364, - 0.012176195159554482, - -0.013337856158614159, - 0.08957992494106293, - -0.018812956288456917, - 0.05378841608762741, - 0.10989981889724731, - -0.07602980732917786, - -0.05461965128779411, - -0.02553100883960724, - 0.04327293485403061, - -0.07406872510910034, - 0.06069129332900047, - 0.053797103464603424, - 0.0065932548604905605, - 0.016853980720043182, - 0.08326350152492523, - -0.02526889741420746, - -0.019924145191907883, - 0.04177658259868622, - -0.06791895627975464, - -0.000978151336312294, - -0.03056339919567108, - -0.007666699588298798, - 0.05261984467506409, - 0.04701119288802147, - 0.04026451334357262, - -0.005929887294769287, - -0.013597341254353523, - -0.10850181430578232, - 0.02067003771662712, - 0.04102496802806854, - 0.07485508173704147, - 0.0013909948756918311, - -0.0361965149641037, - -0.03173280507326126, - -0.05560848116874695, - 0.004811486229300499, - -0.0008209968218579888, - 0.06774955242872238, - -0.054226890206336975, - 0.014018885791301727, - 0.08759158849716187, - 0.03004780039191246, - -0.01708192378282547, - -0.059488922357559204, - -0.03584703058004379, - 0.008219394832849503, - 0.04993153735995293, - -0.06751155108213425, - -0.0873916894197464, - -0.0032585635781288147, - 0.040782149881124496, - -0.03189239278435707, - 0.0657217726111412, - 0.03473864495754242, - 0.012142978608608246, - 0.02388724684715271, - -0.06332354992628098, - 0.01221928559243679, - -0.10184069722890854, - -0.06907028704881668, - -0.012476525269448757, - -0.01689266972243786, - -0.01256043091416359, - 0.05241880938410759, - 0.025876570492982864, - 0.06134306639432907, - -0.0024604620411992073, - -0.07519222795963287, - -0.08729800581932068, - 0.05448159575462341, - 0.057663559913635254, - 0.010470318607985973, - 0.05588189885020256, - 0.07581347227096558, - -0.03498871251940727, - 0.06422655284404755, - 0.05413016304373741, - 0.09791615605354309, - -0.026707544922828674, - 0.02322123572230339, - -0.06447356939315796, - 0.06213940680027008, - 0.08329996466636658, - -0.09603621810674667, - -0.08694516122341156, - -0.04871954023838043, - -0.061167120933532715, - 0.054186563938856125, - -0.024595504626631737, - 0.00024648121325299144, - 0.02719011716544628, - -0.00308419531211257, - -0.09797334671020508, - -0.08452215045690536, - 0.09873801469802856, - -0.06415601074695587, - -0.0030830642208456993, - -0.07649759948253632, - 0.040085867047309875, - 0.09742473065853119, - 0.02509359084069729, - -0.021539052948355675, - 0.004630350973457098, - 0.04759451746940613, - -0.030850231647491455, - -0.0027519073337316513, - 0.054138630628585815, - 0.03846846520900726, - -0.1047482118010521, - -0.0027216044254601, - -0.07578456401824951, - 0.05717060714960098, - -0.0362926721572876, - 0.1545051634311676, - 0.004095475655049086, - -0.03923984244465828, - -0.08584123104810715, - 0.0467841736972332, - -0.01851397007703781, - 0.05204775929450989, - 0.04069438576698303, - 0.05585354566574097, - 0.013542990200221539, - -0.07543648034334183, - 0.13558673858642578, - 0.03662727028131485, - -0.06127173826098442, - -0.06918633729219437, - -0.04369966685771942, - -0.04464063048362732, - 0.010191565379500389, - 0.020701343193650246, - -0.08413331210613251, - -0.0305267833173275, - 0.001832252717576921, - -0.022537413984537125, - 0.07631073892116547, - 0.1475430577993393, - 0.07468569278717041, - -0.10101490467786789 - ] - }, - "p245_141.wav": { - "name": "p245", - "embedding": [ - 0.068923220038414, - 0.0924782082438469, - 0.02698499709367752, - -0.01698596216738224, - -0.022123616188764572, - 0.07684674113988876, - -0.08014806360006332, - 0.11866427958011627, - 0.013518492691218853, - 0.06179654598236084, - -0.09089430421590805, - 0.09500541538000107, - -0.0075258477590978146, - -0.14115139842033386, - -0.019810549914836884, - 0.039922088384628296, - -0.03582993149757385, - 0.015733567997813225, - -0.04923884570598602, - -0.024042293429374695, - 0.004346251487731934, - 0.009345974773168564, - 0.05112504959106445, - 0.004298120737075806, - 0.029690828174352646, - 0.037295252084732056, - -0.0033339790534228086, - 0.028432216495275497, - 0.01325818058103323, - -0.03045157715678215, - -0.02788727544248104, - 0.07552196830511093, - -0.03660047799348831, - 0.0074586328119039536, - 0.061181288212537766, - -0.0200702715665102, - 0.023195739835500717, - -0.07623811811208725, - -0.036821089684963226, - 0.02984483540058136, - -0.040129657834768295, - 0.07058500498533249, - 0.05127548426389694, - -0.015639178454875946, - 0.05347995460033417, - 0.03377233445644379, - -0.008445807732641697, - -0.034044049680233, - -0.09286578744649887, - 0.1335347592830658, - 0.03304428979754448, - 0.009045018814504147, - -0.08136817067861557, - -0.010237561538815498, - 0.06691109389066696, - -0.03663356602191925, - -0.06309717893600464, - -0.007281227968633175, - 0.05802008509635925, - 0.07650483399629593, - 0.021154876798391342, - -0.022795071825385094, - 0.02272713929414749, - 0.07861630618572235, - 0.02577219158411026, - 0.03663335740566254, - 0.0939372181892395, - 0.10263802856206894, - -0.025683850049972534, - 0.03480205684900284, - 0.04027433693408966, - 0.026075702160596848, - 0.04253336042165756, - -0.009162602946162224, - 0.01882908120751381, - -0.022082194685935974, - -0.006963628809899092, - -0.018189910799264908, - -0.023454774171113968, - -0.006281568668782711, - 0.024233005940914154, - 0.024674441665410995, - 0.01229693740606308, - 0.03318728134036064, - -0.04538854956626892, - 0.04809953272342682, - 0.005983038805425167, - 0.06514596939086914, - 0.06771441549062729, - 0.05024484544992447, - 0.015811212360858917, - 0.03091355413198471, - -0.055564917623996735, - -0.0970439463853836, - 0.01133184414356947, - 0.0005957087269052863, - 0.004527910612523556, - 0.028108973056077957, - 0.026921523734927177, - -0.015116693452000618, - 0.1057809516787529, - 0.042175233364105225, - -0.017813026905059814, - 0.02040094882249832, - -0.07687985152006149, - 0.0824103131890297, - 0.06754721701145172, - -0.010242084972560406, - 0.057601384818553925, - -0.029330871999263763, - 0.05856937915086746, - 0.061335694044828415, - -0.08648469299077988, - -0.025834694504737854, - 0.012828582897782326, - 0.01590515673160553, - 0.03241315111517906, - 0.09338172525167465, - -0.00867719016969204, - 0.045204129070043564, - 0.0653485581278801, - -0.06094851344823837, - -0.015735197812318802, - 0.026987185701727867, - 0.011037036776542664, - -0.015367105603218079, - 0.021218154579401016, - 0.030355684459209442, - 0.01667485013604164, - -0.03186711296439171, - 0.06219978258013725, - 0.01475514005869627, - 0.00443243607878685, - -0.028041090816259384, - 0.009053267538547516, - 0.009680083952844143, - -0.00848004687577486, - -0.019272593781352043, - 0.025945579633116722, - 0.06428781151771545, - 0.003554773982614279, - 0.03786199167370796, - -0.04213632270693779, - -0.08019794523715973, - -0.009167403914034367, - -0.0004635453224182129, - 0.04594936966896057, - 0.012174731120467186, - -0.030211467295885086, - -0.05239854380488396, - 0.002455689013004303, - 0.004877150058746338, - -0.0075872777961194515, - 0.031820811331272125, - 0.03895227238535881, - -0.02012220397591591, - 0.06151208281517029, - 0.007341994903981686, - 0.018575768917798996, - -0.0442054346203804, - -0.0441681444644928, - 0.005569660570472479, - 0.041040368378162384, - -0.034946098923683167, - -0.05877748131752014, - -0.0004004749353043735, - -0.032616838812828064, - -0.014384198933839798, - 0.032256826758384705, - 0.05332021042704582, - -0.011078780516982079, - 0.001790625392459333, - -0.08127550780773163, - 0.00835905410349369, - -0.07179434597492218, - -0.06660371273756027, - 0.038152486085891724, - 0.027067236602306366, - -0.004106359090656042, - 0.06933911144733429, - 0.036187149584293365, - 0.043000128120183945, - -0.027768274769186974, - -0.04768511280417442, - -0.010287761688232422, - 0.053026072680950165, - 0.043087996542453766, - 0.0040331194177269936, - 0.05106344819068909, - 0.028503969311714172, - -0.023405587300658226, - 0.06892295181751251, - 0.03908409923315048, - 0.041366592049598694, - -0.04180203005671501, - 0.0004790624079760164, - -0.0073122731409966946, - 0.06569291651248932, - 0.044690437614917755, - -0.0682908445596695, - -0.07503515481948853, - 0.0014045065036043525, - -0.032103247940540314, - 0.007540534250438213, - -7.934620225569233e-05, - 0.006172175519168377, - 0.047262903302907944, - -0.01286875270307064, - -0.05351176857948303, - -0.08234937489032745, - 0.03974941745400429, - -0.05515018850564957, - 0.0029463693499565125, - -0.03557360917329788, - 0.040601350367069244, - 0.08469371497631073, - -0.01683524250984192, - -0.023156389594078064, - -0.001939891604706645, - 0.002462851582095027, - -0.0087631456553936, - -0.03998411074280739, - -0.006535450927913189, - 0.044557806104421616, - -0.08075080811977386, - 0.01455008890479803, - -0.050404518842697144, - 0.05211418867111206, - 0.0033184513449668884, - 0.10874741524457932, - 0.04036594182252884, - -0.028343355283141136, - -0.05510684847831726, - 0.025554046034812927, - -0.02090444043278694, - 0.032358042895793915, - 0.004022589884698391, - 0.02583552896976471, - 0.03393810614943504, - -0.05043305456638336, - 0.07956372201442719, - 0.027327917516231537, - -0.06777572631835938, - -0.051680758595466614, - -0.011212892830371857, - -0.036767132580280304, - 0.007731962949037552, - -0.00023343414068222046, - -0.05771992728114128, - -0.003808550536632538, - 0.02401779592037201, - 0.012112687341868877, - 0.042980797588825226, - 0.08600609004497528, - 0.033650681376457214, - -0.0658734142780304 - ] - }, - "p245_180.wav": { - "name": "p245", - "embedding": [ - 0.04287217929959297, - 0.08562701940536499, - -0.015287653543055058, - 0.036764249205589294, - -0.04638880491256714, - 0.04878851771354675, - -0.1254628598690033, - 0.13322418928146362, - -0.04258638620376587, - 0.13999226689338684, - -0.09335038810968399, - 0.10710559785366058, - -0.03508500009775162, - -0.1945321261882782, - -0.03503262996673584, - 0.06371995806694031, - -0.06115536019206047, - -0.03210833668708801, - -0.05164248123764992, - -0.014452077448368073, - 0.04337220638990402, - 0.04441754147410393, - 0.02052772045135498, - 0.012482683174312115, - 0.012612485326826572, - 0.0665159672498703, - -0.009948942810297012, - 0.0402454249560833, - 0.00976457167416811, - -0.03758953511714935, - -0.022761408239603043, - 0.1160731166601181, - -0.037258755415678024, - 0.023569952696561813, - 0.05849108844995499, - 0.0050984835252165794, - -0.005451524164527655, - -0.055714357644319534, - -0.03563567250967026, - -0.007449758239090443, - -0.06463293731212616, - 0.06334054470062256, - 0.025538090616464615, - -0.004314308986067772, - 0.051937881857156754, - 0.026081426069140434, - -0.0381358340382576, - -0.04920509457588196, - -0.10323816537857056, - 0.159244567155838, - 0.08181116729974747, - 0.019467290490865707, - -0.07092482596635818, - -0.07579121738672256, - 0.11322926729917526, - -0.012180223129689693, - -0.1223359927535057, - -0.039783768355846405, - 0.08074229955673218, - 0.1788947880268097, - -0.033803459256887436, - -0.031111378222703934, - 0.0253484845161438, - 0.12656015157699585, - 0.05155251920223236, - 0.1021069884300232, - 0.07734425365924835, - 0.10235083103179932, - -0.0037702443078160286, - 0.02231024019420147, - 0.07893197238445282, - 0.07348102331161499, - 0.07408797740936279, - -0.02287248894572258, - 0.020641451701521873, - 0.021848231554031372, - -0.032741837203502655, - -0.0005036769434809685, - -0.03305608034133911, - -0.006087020039558411, - -0.015949970111250877, - 0.011261356994509697, - 0.010060756467282772, - 0.009770382195711136, - -0.019627364352345467, - 0.048058610409498215, - 0.04291192442178726, - -0.022824563086032867, - 0.062159132212400436, - 0.039522890001535416, - 0.004643607884645462, - 0.06180132180452347, - -0.07286012172698975, - -0.09708299487829208, - 0.008771114982664585, - 0.0035176516976207495, - 0.021517109125852585, - 0.06355897337198257, - 0.044992536306381226, - -0.021221591159701347, - 0.11107702553272247, - 0.03340764343738556, - -0.0004985607229173183, - 0.02741919830441475, - -0.11414609849452972, - 0.10387134552001953, - 0.09328484535217285, - -0.028874654322862625, - 0.03562599793076515, - -0.0332423634827137, - 0.0846838504076004, - 0.0898602306842804, - -0.14424557983875275, - -0.06692004948854446, - 0.02809644117951393, - 0.009229492396116257, - -0.010721873492002487, - 0.119399294257164, - -0.010611619800329208, - 0.031077859923243523, - 0.10898005962371826, - -0.09330882877111435, - -0.04938614368438721, - -0.023604173213243484, - 0.04384623467922211, - -0.08141624927520752, - 0.05874110385775566, - 0.03711886331439018, - -0.0003137262538075447, - -0.0015751449391245842, - 0.08045978844165802, - -0.018024854362010956, - -0.006810707040131092, - -0.0032768247183412313, - -0.05479854717850685, - 0.031644560396671295, - -0.04633217304944992, - -0.010116659104824066, - 0.05587824434041977, - 0.03809250891208649, - 0.04481849446892738, - 0.005171018186956644, - -0.03733333200216293, - -0.11193248629570007, - 0.011853637173771858, - 0.03896187245845795, - 0.07517776638269424, - -0.003814305877313018, - -0.009121467359364033, - -0.03450698405504227, - -0.0647905170917511, - 0.033882513642311096, - -0.025436406955122948, - 0.07367978990077972, - -0.009349098429083824, - -0.004832168109714985, - 0.104781873524189, - 0.006044739857316017, - -0.009774036705493927, - -0.05064236372709274, - -0.03197922557592392, - 0.004540130961686373, - 0.0560140535235405, - -0.0912093073129654, - -0.06879136711359024, - 0.008184043690562248, - 0.028505831956863403, - -0.011029754765331745, - 0.03687044605612755, - 0.035428911447525024, - 0.018672361969947815, - 0.019027046859264374, - -0.06336243450641632, - 0.00952989887446165, - -0.1304386854171753, - -0.08182943612337112, - -0.004146466497331858, - -0.03175421059131622, - -0.0003050958039239049, - 0.07162944972515106, - 0.01157375518232584, - 0.02589418739080429, - -0.009354421868920326, - -0.08987092971801758, - -0.08629173785448074, - 0.07768312096595764, - 0.07189644128084183, - 0.00918702781200409, - 0.05069814994931221, - 0.05711710825562477, - -0.043779946863651276, - 0.05178084224462509, - 0.05450008064508438, - 0.13465994596481323, - -0.020610075443983078, - 0.024871082976460457, - -0.07336477935314178, - 0.08318401873111725, - 0.08415284752845764, - -0.08872678875923157, - -0.09011656045913696, - -0.02447526715695858, - -0.05621317774057388, - 0.0489952452480793, - -0.021398957818746567, - 0.003726938273757696, - 0.029173649847507477, - -0.01271715760231018, - -0.10573464632034302, - -0.0675889179110527, - 0.08780509233474731, - -0.06232892721891403, - -0.015668850392103195, - -0.0789867490530014, - 0.03913281857967377, - 0.08829204738140106, - 0.024565041065216064, - -0.024829076603055, - 0.011869668029248714, - 0.055623821914196014, - -0.054621972143650055, - -0.020805392414331436, - 0.041097190231084824, - 0.016251320019364357, - -0.09385091066360474, - -0.013513226062059402, - -0.07502492517232895, - 0.06739393621683121, - -0.04968585819005966, - 0.13732515275478363, - -0.016053739935159683, - -0.056435588747262955, - -0.08078397810459137, - 0.04247337579727173, - -0.0038466856349259615, - 0.05834244564175606, - 0.041751060634851456, - 0.07223579287528992, - 0.03435615450143814, - -0.06490053981542587, - 0.12374728918075562, - 0.02952367626130581, - -0.03260251507163048, - -0.054583314806222916, - -0.04587647318840027, - -0.04500049725174904, - 0.003952471073716879, - -0.005704508163034916, - -0.08034328371286392, - -0.007313928566873074, - 0.006328531075268984, - -0.024210944771766663, - 0.047043636441230774, - 0.12548011541366577, - 0.05870911478996277, - -0.11604777723550797 - ] - }, - "p245_167.wav": { - "name": "p245", - "embedding": [ - 0.04707973822951317, - 0.08512790501117706, - 0.017433252185583115, - -0.010049238801002502, - -0.027678970247507095, - 0.09129085391759872, - -0.07708367705345154, - 0.10728625953197479, - -0.023322490975260735, - 0.06904000043869019, - -0.0714399516582489, - 0.08210638165473938, - -0.011329654604196548, - -0.12147276848554611, - -0.0015023425221443176, - 0.05498618632555008, - -0.029536675661802292, - 0.0027658964972943068, - -0.04268315061926842, - -0.014539126306772232, - -0.009536261670291424, - 0.00696258619427681, - 0.058693867176771164, - -0.020710289478302002, - 0.03857957199215889, - 0.05058648809790611, - -0.000273537531029433, - 0.027161478996276855, - 0.0004217643290758133, - -0.0439465194940567, - -0.03740622475743294, - 0.07502558082342148, - -0.056660816073417664, - -0.008298594504594803, - 0.05187267065048218, - -0.013564445078372955, - 0.024587390944361687, - -0.09216286987066269, - -0.03276935964822769, - 0.009169310331344604, - -0.056369051337242126, - 0.07358594238758087, - 0.02663174830377102, - 0.007156963460147381, - 0.024815743789076805, - 0.0062155211344361305, - -0.0034827683120965958, - -0.023563673719763756, - -0.08253515511751175, - 0.12691868841648102, - 0.03767480328679085, - 0.019493775442242622, - -0.07521302253007889, - -0.0295400470495224, - 0.07755976170301437, - -0.018448349088430405, - -0.06302373856306076, - -0.012354684993624687, - 0.04073628783226013, - 0.0865408405661583, - 0.025180846452713013, - -0.023361138999462128, - 0.021092116832733154, - 0.06708208471536636, - 0.023151254281401634, - 0.053722649812698364, - 0.08739151805639267, - 0.08955836296081543, - -0.0065083070658147335, - 0.027378231287002563, - 0.048375409096479416, - 0.036388516426086426, - 0.02471884712576866, - -0.010595530271530151, - 0.028296595439314842, - -0.01590379700064659, - -0.03191643953323364, - -0.008536002598702908, - -0.017039146274328232, - -0.01747817173600197, - 0.022909987717866898, - 0.022554030641913414, - 0.009545434266328812, - 0.027733517810702324, - -0.028594069182872772, - 0.04081657528877258, - -0.0029537356458604336, - 0.06451727449893951, - 0.08688073605298996, - 0.02574579045176506, - 0.014948733150959015, - 0.03415994346141815, - -0.060237299650907516, - -0.06995562463998795, - 0.020499086007475853, - 0.031554386019706726, - 0.0036485109012573957, - 0.03065515123307705, - 0.025369582697749138, - -0.027931563556194305, - 0.10070967674255371, - 0.023287784308195114, - -0.0009688375284895301, - 0.001203195541165769, - -0.06778344511985779, - 0.07224768400192261, - 0.05726079270243645, - -0.0040361955761909485, - 0.048369914293289185, - -0.025990938767790794, - 0.0551203116774559, - 0.05932316184043884, - -0.09196369349956512, - -0.04974181577563286, - 0.007547107990831137, - 0.0041877878829836845, - 0.035280995070934296, - 0.10521729290485382, - -0.009196754544973373, - 0.0372876301407814, - 0.058194637298583984, - -0.08105669170618057, - -0.02356204390525818, - 0.039087925106287, - 0.010740846395492554, - -0.007051540073007345, - 0.007526857312768698, - 0.0390218049287796, - 0.005931292660534382, - -0.02777162566781044, - 0.05320620536804199, - 0.008385999128222466, - 0.009738633409142494, - -0.01149764470756054, - -0.009483715519309044, - 0.0010052463039755821, - -0.015930140390992165, - -0.038347966969013214, - 0.03739845007658005, - 0.051481373608112335, - 0.029979199171066284, - 0.003185371635481715, - -0.025677524507045746, - -0.0847093015909195, - -0.019944485276937485, - 0.010563371703028679, - 0.031666189432144165, - -0.00785780604928732, - -0.0317373163998127, - -0.05702310800552368, - -0.00612629484385252, - -0.009472507983446121, - -0.009091544896364212, - 0.0502474308013916, - 0.04683661460876465, - -0.026863310486078262, - 0.06821515411138535, - 0.007443234324455261, - 0.004543836694210768, - -0.040841296315193176, - -0.062287937849760056, - 0.011087912134826183, - 0.04299960657954216, - -0.01109161227941513, - -0.07103273272514343, - 0.0023626885376870632, - -0.027720585465431213, - -0.01672457903623581, - 0.02954830974340439, - 0.04956777021288872, - 0.009142892435193062, - -0.0127300675958395, - -0.06628468632698059, - 0.014434169046580791, - -0.07022538781166077, - -0.05645657703280449, - 0.03632683306932449, - 0.031128432601690292, - -0.024220317602157593, - 0.07866879552602768, - 0.03261057287454605, - 0.04827475547790527, - -0.0349263995885849, - -0.05173870921134949, - -0.015932749956846237, - 0.05100814625620842, - 0.03704618662595749, - 0.002308618277311325, - 0.038799941539764404, - 0.0432167574763298, - -0.020732365548610687, - 0.037445541471242905, - 0.051251985132694244, - 0.0512886568903923, - -0.03503634035587311, - 0.008252796716988087, - -0.014522379264235497, - 0.07860466837882996, - 0.03661031275987625, - -0.07371249049901962, - -0.05090833455324173, - 0.01257159560918808, - -0.04109746217727661, - 0.0277106873691082, - -0.006819318979978561, - 0.011071180924773216, - 0.04564926028251648, - -0.02753159962594509, - -0.06565520167350769, - -0.07913267612457275, - 0.06392000615596771, - -0.05291129648685455, - -0.009865141473710537, - -0.044501226395368576, - 0.04317125305533409, - 0.079008549451828, - 0.0036972227972000837, - -0.01048391591757536, - 0.005263200029730797, - 0.02147604152560234, - 0.004751445725560188, - -0.02239108644425869, - 0.024752311408519745, - 0.037187036126852036, - -0.07118416577577591, - 0.015515079721808434, - -0.046753764152526855, - 0.0659591406583786, - 0.008004775270819664, - 0.10493459552526474, - 0.027253877371549606, - -0.03027404099702835, - -0.07307233661413193, - 0.03192661702632904, - 0.0001670519559411332, - 0.03432702645659447, - 0.004586372058838606, - 0.023750942200422287, - 0.04797280579805374, - -0.05145956203341484, - 0.08629883825778961, - 0.025798249989748, - -0.05911736935377121, - -0.044936250895261765, - -0.008365584537386894, - -0.03264952823519707, - 0.02177836373448372, - -0.02301935665309429, - -0.06799818575382233, - 0.01904139295220375, - 0.021186351776123047, - 0.011413270607590675, - 0.029889201745390892, - 0.07833109050989151, - 0.036050260066986084, - -0.06394705176353455 - ] - }, - "p245_080.wav": { - "name": "p245", - "embedding": [ - 0.022935442626476288, - 0.09640032052993774, - -0.00262433011084795, - 0.00919140875339508, - -0.022395236417651176, - -0.0027653351426124573, - -0.10289772599935532, - 0.0792112648487091, - -0.025138236582279205, - 0.11822348088026047, - -0.10249543190002441, - 0.08955548703670502, - -0.07592034339904785, - -0.10798313468694687, - -0.02383330650627613, - 0.03619668260216713, - -0.006831965409219265, - 0.006147237494587898, - -0.026636846363544464, - -0.06548704206943512, - 0.04381079971790314, - 0.023009691387414932, - 0.05674208700656891, - -0.05197969824075699, - -0.02874726429581642, - 0.10414999723434448, - 0.0033289343118667603, - 0.014779753983020782, - -0.005131295416504145, - -0.035717450082302094, - 0.0016329586505889893, - 0.03423984721302986, - -0.018916528671979904, - 0.014781697653234005, - 0.03858477249741554, - 0.04465959221124649, - -0.041259974241256714, - 0.018253441900014877, - 0.013986133970320225, - 0.02905401401221752, - -0.06952391564846039, - 0.052167169749736786, - -0.004307717550545931, - -0.035446494817733765, - 0.08575202524662018, - -0.025628745555877686, - -0.01232240255922079, - 0.009164616465568542, - -0.06502345204353333, - 0.0973408967256546, - 0.06095746159553528, - 0.015500586479902267, - -0.05821622908115387, - -0.011755358427762985, - 0.1052543893456459, - -0.027858003973960876, - -0.10372836887836456, - -0.028162376955151558, - 0.047136325389146805, - 0.09003078937530518, - -0.06292364001274109, - -0.05182661861181259, - 0.009000720456242561, - 0.049195241183042526, - 0.03263609856367111, - 0.08903387188911438, - 0.11052943021059036, - 0.06148676201701164, - -0.008279198780655861, - -0.04386623203754425, - 0.0374402292072773, - 0.08248496055603027, - 0.06774741411209106, - -0.010443861596286297, - 0.025451309978961945, - -0.03772726282477379, - 0.007184172514826059, - 0.0012357961386442184, - -0.010979774408042431, - -0.06406047195196152, - -0.03685372695326805, - -0.028270073235034943, - 0.0037496155127882957, - -0.03674938529729843, - -0.03346597030758858, - 0.022938372567296028, - 0.0737951248884201, - -0.026175372302532196, - 0.04679589718580246, - 0.04721876233816147, - -0.020461056381464005, - 0.01643197052180767, - -0.03926379233598709, - -0.025848062708973885, - -0.0250605009496212, - -0.012646771036088467, - 0.058042388409376144, - 0.06492941826581955, - 0.037546515464782715, - 0.06273335963487625, - 0.06380569189786911, - 0.039636969566345215, - 0.0002344781532883644, - -0.0022067087702453136, - -0.08454318344593048, - 0.057148903608322144, - 0.12178117781877518, - -0.042248956859111786, - 0.026501305401325226, - -0.034538887441158295, - 0.03554641455411911, - 0.02890169620513916, - -0.04485159367322922, - -0.04294715076684952, - -0.023335903882980347, - 0.026320401579141617, - 0.02236473560333252, - 0.06880465894937515, - -0.005760335363447666, - -0.014488864690065384, - 0.12077110260725021, - -0.06384418904781342, - -0.07678333669900894, - -0.07603100687265396, - 0.022697359323501587, - -0.0791313648223877, - 0.07144536823034286, - 0.04848698899149895, - 0.03562559187412262, - 0.019893446937203407, - 0.06547132879495621, - 0.010206692852079868, - 0.020238369703292847, - -0.034656405448913574, - -0.03764572739601135, - -0.010647440329194069, - -0.019053788855671883, - 0.014916029758751392, - 0.09002663940191269, - 0.03564060479402542, - 0.09896186739206314, - 0.01198516320437193, - 0.03503521531820297, - -0.07820829749107361, - 0.010020527057349682, - 0.06754842400550842, - -0.019115395843982697, - -0.042204827070236206, - -0.05533764511346817, - -0.02979818731546402, - -0.06848762929439545, - 0.01644035428762436, - -0.05761922150850296, - 0.07225719094276428, - -0.026507336646318436, - 0.014494970440864563, - 0.1318766474723816, - 0.019118081778287888, - -0.04242726042866707, - -0.05576483905315399, - -0.040118467062711716, - -0.03527712821960449, - 0.023533428087830544, - -0.16723714768886566, - -0.08374740183353424, - -0.07266789674758911, - 0.04033157601952553, - 0.005697854794561863, - 0.03307320177555084, - 0.05674409866333008, - -0.00736004114151001, - 0.025302359834313393, - -0.008941157720983028, - 0.024136634543538094, - -0.06608708202838898, - -0.08500169217586517, - -0.03722498565912247, - -0.0820484310388565, - 0.0030963472090661526, - 0.06611262261867523, - -0.027501927688717842, - 0.02997785061597824, - -0.014206597581505775, - -0.0897846519947052, - -0.09211274981498718, - 0.06178612634539604, - 0.025527819991111755, - -0.004660853184759617, - 0.029044259339571, - 0.04766248166561127, - -0.08930860459804535, - 0.041857700794935226, - 0.021609416231513023, - 0.09293758869171143, - -0.06496190279722214, - 0.04089675098657608, - -0.04615473374724388, - 0.008139315992593765, - 0.10298070311546326, - -0.07245919108390808, - -0.06786300241947174, - -0.08537886291742325, - -0.04386327043175697, - 0.03143146634101868, - -0.06382175534963608, - -0.022953975945711136, - -0.014260202646255493, - -0.00770226726308465, - -0.0735427588224411, - -0.08604089915752411, - 0.054536253213882446, - -0.002473333850502968, - -0.007351551204919815, - -0.05520911514759064, - 0.04073307663202286, - -0.005512945353984833, - 0.04282146319746971, - -0.034995317459106445, - 0.038817062973976135, - 0.01078060083091259, - -0.03456932306289673, - 0.014562118798494339, - 0.04662066698074341, - 0.06337518990039825, - 0.015382414683699608, - -0.03802090138196945, - -0.08534346520900726, - 0.05308078974485397, - -0.025435537099838257, - 0.0836106389760971, - -0.008187885396182537, - -0.04709063470363617, - -0.006285067647695541, - 0.012433654628694057, - -0.005599376279860735, - 0.02429061010479927, - 0.04455827176570892, - 0.05604148656129837, - -0.008471336215734482, - -0.06035800278186798, - 0.0891936868429184, - 0.03530941158533096, - 0.0009362921118736267, - -0.04584295675158501, - -0.02124122902750969, - -0.06280230730772018, - -0.007850621826946735, - -0.006578205153346062, - -0.07067693769931793, - 0.022704359143972397, - -0.03307250887155533, - 0.025164103135466576, - 0.029459595680236816, - 0.09369748830795288, - 0.028062455356121063, - -0.050122179090976715 - ] - }, - "p245_310.wav": { - "name": "p245", - "embedding": [ - 0.062333762645721436, - 0.11135416477918625, - -0.010516969487071037, - -0.006485992576926947, - -0.05130276083946228, - 0.06126203387975693, - -0.14945679903030396, - 0.1642509400844574, - -0.053004682064056396, - 0.13242875039577484, - -0.0558055154979229, - 0.1253504604101181, - -0.013647131621837616, - -0.1708347499370575, - -0.048024486750364304, - 0.04792303591966629, - -0.06457256525754929, - -0.04175776243209839, - -0.04514404758810997, - -0.042643945664167404, - 0.023041173815727234, - 0.02632591687142849, - 0.009444857016205788, - 0.019633198156952858, - 0.0445408932864666, - 0.06953977048397064, - 0.0009119375608861446, - 0.02979297563433647, - 0.0033158750738948584, - -0.056146290153265, - -0.022432927042245865, - 0.07109639048576355, - -0.05427337437868118, - 0.006242684554308653, - 0.056439489126205444, - -0.023334486410021782, - 0.019439522176980972, - -0.07142479717731476, - -0.03865321725606918, - 0.02475246600806713, - -0.023804016411304474, - 0.09528770297765732, - 0.03319437801837921, - -0.015879716724157333, - 0.020103946328163147, - 0.04602956399321556, - 0.018373748287558556, - -0.05385857820510864, - -0.09695323556661606, - 0.1576339304447174, - 0.060154348611831665, - 0.003256745170801878, - -0.08038675785064697, - -0.06254622340202332, - 0.10964995622634888, - -0.033896103501319885, - -0.09776374697685242, - -0.02907993644475937, - 0.056550975888967514, - 0.14644931256771088, - -0.050270020961761475, - -0.044469814747571945, - 0.03467117249965668, - 0.12549498677253723, - 0.06777068227529526, - 0.06362436711788177, - 0.08401626348495483, - 0.10009558498859406, - -0.04259272664785385, - 0.014622258953750134, - 0.06307181715965271, - 0.06722456216812134, - 0.05293458327651024, - -0.01901255175471306, - 0.0256817527115345, - -0.004500877112150192, - -0.014562606811523438, - -0.016639545559883118, - -0.022020038217306137, - -0.018084583804011345, - -0.02398824319243431, - 0.02738938480615616, - 0.00420380337163806, - 0.03587711974978447, - -0.021967288106679916, - 0.06440689414739609, - 0.030048459768295288, - -0.030402695760130882, - 0.07170552015304565, - 0.05547770857810974, - 0.03398648649454117, - 0.06849531829357147, - -0.09338508546352386, - -0.07385315746068954, - 0.04826626926660538, - -0.00901690311729908, - 0.020674970000982285, - 0.06259172409772873, - 0.0551062673330307, - -0.005868728272616863, - 0.12045145034790039, - 0.0753273293375969, - -0.00876203179359436, - 0.00862166564911604, - -0.09939444065093994, - 0.13078439235687256, - 0.08275123685598373, - -0.046129416674375534, - 0.047482818365097046, - -0.03654826059937477, - 0.053228553384542465, - 0.05904535949230194, - -0.13952064514160156, - -0.10209541022777557, - 0.03199651837348938, - 0.02433048002421856, - -0.009237615391612053, - 0.11519865691661835, - -0.009365643374621868, - 0.04630453884601593, - 0.08908770978450775, - -0.05981840938329697, - -0.05235005542635918, - -0.020699501037597656, - 0.05867981165647507, - -0.07363149523735046, - 0.0775236189365387, - 0.07276376336812973, - -0.0017665711930021644, - 0.020374348387122154, - 0.09087875485420227, - 0.0007007376989349723, - -0.014258968643844128, - 0.002553727477788925, - -0.013424744829535484, - 0.01827506348490715, - 0.0010108643909916282, - 0.000856323167681694, - 0.012265734374523163, - 0.04437711089849472, - 0.036183103919029236, - 0.007288246415555477, - -0.02180321328341961, - -0.10839347541332245, - 0.021832622587680817, - 0.030520638450980186, - 0.08195261657238007, - -0.009910766035318375, - -0.020321935415267944, - -0.024892106652259827, - -0.04641749709844589, - -0.022338520735502243, - -0.0005006389692425728, - 0.0804557204246521, - -0.027200235053896904, - 0.02207481861114502, - 0.1158241257071495, - 0.03636608272790909, - 0.010507237166166306, - -0.026340406388044357, - 0.002669725101441145, - 0.01554177887737751, - 0.059437137097120285, - -0.05581275373697281, - -0.08813385665416718, - -0.01614191010594368, - 0.028714101761579514, - -0.010185315273702145, - 0.0893682986497879, - 0.03561735153198242, - 0.003323871176689863, - 0.021243175491690636, - -0.07853252440690994, - 0.0366552472114563, - -0.09887391328811646, - -0.05439227446913719, - -0.017395587638020515, - -0.03081517666578293, - -0.048097848892211914, - 0.06837590038776398, - 0.03603004664182663, - 0.075649693608284, - -0.020068824291229248, - -0.08150546252727509, - -0.07169344276189804, - 0.03834502771496773, - 0.0763382837176323, - -0.025374209508299828, - 0.018010210245847702, - 0.0705205574631691, - 0.014005008153617382, - 0.05430516600608826, - 0.07449464499950409, - 0.08702366054058075, - -0.031685881316661835, - 0.016271088272333145, - -0.05655751749873161, - 0.07943019270896912, - 0.04702039062976837, - -0.09766217321157455, - -0.07521934807300568, - -0.03131193667650223, - -0.052844297140836716, - 0.010865757241845131, - 0.007213325705379248, - 0.04729142040014267, - 0.02575257048010826, - 0.003015512600541115, - -0.0818973034620285, - -0.09146809577941895, - 0.08307889103889465, - -0.08757950365543365, - 0.013212001882493496, - -0.0730065256357193, - 0.0410885252058506, - 0.11009232699871063, - 0.03561345115303993, - -0.0081672677770257, - -0.0246304702013731, - 0.019638020545244217, - -0.0005461095715872943, - 0.0066030896268785, - 0.04522112011909485, - 0.03942589461803436, - -0.1044793352484703, - 0.015239045023918152, - -0.07528360933065414, - 0.07470488548278809, - -0.03606195002794266, - 0.15367625653743744, - 0.01645088382065296, - -0.059046514332294464, - -0.10648392885923386, - 0.014447370544075966, - -0.03611423447728157, - 0.06656364351511002, - 0.02394464984536171, - 0.06695408374071121, - 0.03547429293394089, - -0.042541008442640305, - 0.10056301951408386, - 0.047229327261447906, - -0.05342699587345123, - -0.07886892557144165, - -0.06227856129407883, - -0.023887883871793747, - 0.03216726332902908, - 0.018341396003961563, - -0.0730758085846901, - -0.02213200554251671, - 0.01135922595858574, - -0.015492855571210384, - 0.094337098300457, - 0.13425292074680328, - 0.07430572807788849, - -0.13209103047847748 - ] - }, - "p245_390.wav": { - "name": "p245", - "embedding": [ - 0.05390515550971031, - 0.08928265422582626, - -0.009095130488276482, - 0.0331672802567482, - -0.03521709889173508, - 0.07289695739746094, - -0.134585902094841, - 0.12634585797786713, - -0.04289443790912628, - 0.15653173625469208, - -0.058817293494939804, - 0.10553275793790817, - -0.0011788542615249753, - -0.1952839344739914, - -0.04377306252717972, - 0.04105088487267494, - -0.07260677218437195, - -0.02957030013203621, - -0.06161730736494064, - 0.0018908885540440679, - 0.04718029499053955, - 0.04348362237215042, - 0.031137706711888313, - -7.213740173028782e-05, - 0.007394982967525721, - 0.05135253071784973, - 7.532518066000193e-05, - 0.05643025413155556, - 0.03473090007901192, - -0.06871864944696426, - -0.036472972482442856, - 0.12149496376514435, - -0.04107067734003067, - 0.026809513568878174, - 0.055561088025569916, - -0.02963853068649769, - -0.007271257229149342, - -0.04845721274614334, - -0.029888229444622993, - 0.016986336559057236, - -0.045228127390146255, - 0.07154866307973862, - 0.03585415706038475, - 0.013049333356320858, - 0.05837123468518257, - 0.005929145030677319, - -0.03145897388458252, - -0.05738860368728638, - -0.08443523198366165, - 0.1713896542787552, - 0.09075279533863068, - -0.014891610480844975, - -0.049283236265182495, - -0.05789681524038315, - 0.09286869317293167, - -0.015881182625889778, - -0.1446750909090042, - -0.054379530251026154, - 0.0792398601770401, - 0.15658412873744965, - -0.016973700374364853, - -0.018962474539875984, - 0.025595594197511673, - 0.1400173306465149, - 0.05862336978316307, - 0.10565488040447235, - 0.07664918154478073, - 0.09592867642641068, - 0.0021817826200276613, - 0.03837255761027336, - 0.05230647325515747, - 0.0448959618806839, - 0.037463411688804626, - -0.020335907116532326, - 0.050175171345472336, - 0.003201348939910531, - -0.019272953271865845, - -0.010164099745452404, - -0.006473494693636894, - 0.02481451816856861, - -0.001570268883369863, - 0.01204477995634079, - -0.0032795509323477745, - 0.034901563078165054, - -0.03703448921442032, - 0.049503225833177567, - -0.002315206453204155, - -0.0015280717052519321, - 0.05702874809503555, - 0.039399269968271255, - 0.04136405140161514, - 0.061849117279052734, - -0.05117488279938698, - -0.09778434038162231, - 0.015687324106693268, - 0.010577641427516937, - -6.401844439096749e-05, - 0.05919798091053963, - 0.038666751235723495, - -0.023059936240315437, - 0.1095709279179573, - 0.046080607920885086, - -0.03148084506392479, - 0.036561522632837296, - -0.10593611747026443, - 0.11764362454414368, - 0.06253674626350403, - -0.010973717086017132, - 0.053999822586774826, - -0.04982920363545418, - 0.08696375042200089, - 0.06308745592832565, - -0.14470164477825165, - -0.05770739167928696, - 0.06784173846244812, - -0.00554050225764513, - -0.01823246106505394, - 0.12491173297166824, - 0.006918720435351133, - 0.016837649047374725, - 0.09361709654331207, - -0.0745864138007164, - -0.04860581085085869, - -0.02651151642203331, - 0.06534599512815475, - -0.10346052050590515, - 0.04956859350204468, - 0.02006286382675171, - -0.026648448780179024, - -0.012086551636457443, - 0.10539241135120392, - -0.018278049305081367, - -0.002573288744315505, - 0.009611809626221657, - -0.03760271146893501, - 0.05780063197016716, - -0.04063032940030098, - 0.022076835855841637, - 0.020960509777069092, - 0.018808521330356598, - 0.03726546838879585, - -0.01462057139724493, - -0.045741137117147446, - -0.1042439416050911, - 0.012642532587051392, - 0.02781568467617035, - 0.07075914740562439, - -0.001994219608604908, - -0.005888078361749649, - -0.043102920055389404, - -0.06279237568378448, - 0.02562461420893669, - -0.038862429559230804, - 0.06611211597919464, - -0.0100297462195158, - -0.010633885860443115, - 0.10490754246711731, - -0.0032152431085705757, - 0.013908391818404198, - -0.050229016691446304, - -0.01925613358616829, - 0.017270535230636597, - 0.06111428141593933, - -0.08161693066358566, - -0.04565566033124924, - 0.019952932372689247, - 0.021331798285245895, - 0.0056177591904997826, - 0.03059665858745575, - 0.05080237612128258, - 0.010925977490842342, - 0.04018120467662811, - -0.08479554206132889, - 0.011016296222805977, - -0.11183982342481613, - -0.06443434953689575, - -0.025700028985738754, - -0.019076114520430565, - -0.00666585611179471, - 0.08366718888282776, - 0.00783555954694748, - 0.028873024508357048, - -0.004083580337464809, - -0.08913102000951767, - -0.07488339394330978, - 0.07882171869277954, - 0.09218160063028336, - -0.005183601286262274, - 0.04809688776731491, - 0.049967970699071884, - -0.03552994504570961, - 0.04761362075805664, - 0.04599515721201897, - 0.10308775305747986, - -0.01695864088833332, - 0.014222340658307076, - -0.09289102256298065, - 0.07657654583454132, - 0.08020355552434921, - -0.09848613291978836, - -0.08836112916469574, - 0.0039378684014081955, - -0.06599529832601547, - 0.025393830612301826, - -0.02892601117491722, - 0.0049562654457986355, - 0.04748081415891647, - 6.835884414613247e-05, - -0.09207058697938919, - -0.08813222497701645, - 0.10073535144329071, - -0.09169846773147583, - -0.019248684868216515, - -0.0721120685338974, - 0.04407724365592003, - 0.09232749789953232, - 0.04549960047006607, - -0.03842763602733612, - -0.008677591569721699, - 0.05421547591686249, - -0.04442988708615303, - -0.007950632832944393, - 0.039528023451566696, - 0.01881370320916176, - -0.1321561634540558, - 0.00788298062980175, - -0.0783316120505333, - 0.06109057739377022, - -0.08186092972755432, - 0.140180766582489, - -0.007290482986718416, - -0.06880410015583038, - -0.08298700302839279, - 0.05013761669397354, - -0.01638776622712612, - 0.04276889190077782, - 0.03441886231303215, - 0.06435059010982513, - 0.0453796423971653, - -0.06823495030403137, - 0.10489839315414429, - 0.031164808198809624, - -0.018003329634666443, - -0.07761579006910324, - -0.02650955319404602, - -0.040319573134183884, - 0.03270123898983002, - 0.026091286912560463, - -0.10452570021152496, - -0.009347882121801376, - 0.02893173322081566, - -0.04637656360864639, - 0.06974027305841446, - 0.1362844705581665, - 0.05342552065849304, - -0.1435653567314148 - ] - }, - "p245_272.wav": { - "name": "p245", - "embedding": [ - 0.07805004715919495, - 0.031246481463313103, - 0.0403924360871315, - -0.05527679994702339, - 0.024828551337122917, - 0.07462207973003387, - -0.12186755239963531, - 0.07680010050535202, - -0.014242593199014664, - 0.057926736772060394, - -0.08840712904930115, - 0.04659002274274826, - 0.025284886360168457, - -0.1520388126373291, - -0.03570377081632614, - 0.030892131850123405, - -0.04072274640202522, - 0.024306446313858032, - -0.05477508157491684, - -0.03034302592277527, - -0.0067830272018909454, - 0.04069060832262039, - 0.036249976605176926, - -0.04064023867249489, - 0.040984589606523514, - 0.047366317361593246, - 0.013311544433236122, - 0.02635137364268303, - -0.02134903520345688, - -0.036444611847400665, - 0.0006156200543045998, - 0.07961243391036987, - -0.03660359978675842, - -0.04000692814588547, - 0.05057183653116226, - 0.005644030403345823, - 0.05831284448504448, - -0.09285643696784973, - -0.022177865728735924, - 0.051782768219709396, - -0.05667605251073837, - 0.07458725571632385, - 0.05092700198292732, - 0.030888816341757774, - 0.014505833387374878, - 0.030910607427358627, - 0.02317505143582821, - -0.07474349439144135, - -0.08601969480514526, - 0.1618729531764984, - 0.014286966994404793, - 0.041374675929546356, - -0.10537150502204895, - -0.013100223615765572, - 0.04306437075138092, - -0.011819606646895409, - -0.027152301743626595, - -0.007410903926938772, - 0.038424551486968994, - 0.09972322732210159, - 0.022540202364325523, - -0.03822816163301468, - 0.04328371584415436, - 0.055118706077337265, - -0.026188569143414497, - 0.014896324835717678, - 0.11809432506561279, - 0.06560206413269043, - 0.008971446193754673, - 0.026067521423101425, - 0.039699532091617584, - 0.01513068750500679, - 0.06188390403985977, - -0.04368027299642563, - 0.04448987543582916, - -0.027908308431506157, - -0.04238244146108627, - -0.01628924533724785, - -0.02337472140789032, - -0.01637083664536476, - 0.06354888528585434, - 0.018838247284293175, - 0.017638787627220154, - 0.06269198656082153, - -0.05855787545442581, - 0.018404502421617508, - -0.018946334719657898, - 0.0524844229221344, - 0.0754566490650177, - 0.04872932657599449, - 0.04560946673154831, - -0.005865195766091347, - -0.04433590918779373, - -0.0777931660413742, - 0.03516163304448128, - 0.027359621599316597, - -0.012207778170704842, - 0.007468577474355698, - 0.03845154866576195, - -0.049091488122940063, - 0.09061408787965775, - -0.010038855485618114, - 0.002318674698472023, - -0.01295918133109808, - -0.07040002197027206, - 0.060140158981084824, - 0.09907764196395874, - -0.015951979905366898, - 0.04184911027550697, - -0.03884124010801315, - 0.008190998807549477, - 0.06033554673194885, - -0.09694486856460571, - -0.041078198701143265, - 0.03351639211177826, - 0.012129362672567368, - 0.07398790866136551, - 0.11422621458768845, - -0.0016760625876486301, - 0.018616054207086563, - 0.029490642249584198, - -0.06932834535837173, - -0.02365504764020443, - 0.02712034061551094, - -0.0032923854887485504, - -0.022457998245954514, - 0.0092119500041008, - 0.023451542481780052, - 0.040889251977205276, - -0.06427560746669769, - 0.0527741014957428, - 0.010937150567770004, - 0.009991750121116638, - -0.10067594796419144, - 0.07235223054885864, - 0.04502633959054947, - -0.0011446168646216393, - -0.04225616529583931, - 0.007886041887104511, - 0.06918466091156006, - -0.014319105073809624, - 0.06925106048583984, - -0.08320833742618561, - -0.10994590073823929, - -0.038774192333221436, - 0.0011140275746583939, - 0.03918425738811493, - -0.035329923033714294, - -0.02905648574233055, - -0.07947008311748505, - 0.032268088310956955, - -0.01167863979935646, - -0.01231518667191267, - 0.030090592801570892, - 0.09888110309839249, - -0.04613158106803894, - 0.07447901368141174, - -0.03751831501722336, - 0.022598695009946823, - -0.009025701321661472, - -0.007163614500313997, - 0.02782125025987625, - 0.017612474039196968, - 0.005257181823253632, - -0.06694945693016052, - -0.0005585253238677979, - -0.059513263404369354, - 0.005501090548932552, - 0.00797060877084732, - 0.020931215956807137, - -0.012566907331347466, - -0.03347695246338844, - -0.11056963354349136, - 0.021343054249882698, - -0.07710330188274384, - -0.033407628536224365, - 0.07335171103477478, - 0.0013008173555135727, - -0.02465185523033142, - 0.10292619466781616, - 0.018680822104215622, - 0.017956409603357315, - -0.07259131222963333, - -0.05193762108683586, - 0.017226621508598328, - 0.04458422213792801, - 0.06698817759752274, - -0.005020072218030691, - -0.0042329225689172745, - -0.025899047031998634, - 0.03187107667326927, - 0.0690484419465065, - 0.05349622666835785, - 0.03670891746878624, - -0.03689820319414139, - -0.02484549582004547, - 0.035276077687740326, - 0.10420235991477966, - -0.02229044958949089, - -0.011279079131782055, - -0.03782124072313309, - 0.04193677753210068, - -0.0345267578959465, - 0.014670413918793201, - 0.029176101088523865, - 0.03896758332848549, - 0.03579922765493393, - -0.032069213688373566, - -0.060753900557756424, - -0.03974713385105133, - 0.017953645437955856, - -0.05051875859498978, - -0.030922263860702515, - -0.04569966718554497, - 0.055334389209747314, - 0.09403257071971893, - -0.006817622110247612, - 0.016337305307388306, - -0.022613225504755974, - -0.039114195853471756, - -0.04312022030353546, - -0.05394390597939491, - -0.036319658160209656, - 0.026847518980503082, - -0.07230760902166367, - 0.02256101928651333, - -0.06537202000617981, - 0.06207843869924545, - -0.016198329627513885, - 0.04776257649064064, - 0.04713447019457817, - -0.04444450885057449, - -0.07119201868772507, - -0.006379054859280586, - -0.008983755484223366, - 0.03671051934361458, - 0.022441480308771133, - -0.0002881418913602829, - 0.05042334645986557, - -0.056568440049886703, - 0.04519500955939293, - 0.032964859157800674, - -0.04395901784300804, - -0.05827764794230461, - -0.02664433792233467, - 0.010392685420811176, - 0.021448174491524696, - -0.030511366203427315, - -0.022718951106071472, - 0.03794592246413231, - 0.037708837538957596, - 0.030361898243427277, - 0.02101735584437847, - 0.05144747719168663, - 0.001114354468882084, - -0.07820219546556473 - ] - }, - "p245_210.wav": { - "name": "p245", - "embedding": [ - 0.030596919357776642, - 0.0841556191444397, - 0.012820704840123653, - 0.010635925456881523, - 0.008473701775074005, - 0.028797658160328865, - -0.1492796540260315, - 0.14613549411296844, - -0.003934000618755817, - 0.12034957110881805, - -0.07674948126077652, - 0.05096691846847534, - -0.03624391183257103, - -0.1290227472782135, - -0.03811531886458397, - 0.02606789767742157, - -0.034172289073467255, - -0.02522493712604046, - -0.006144885439425707, - -0.006501024588942528, - 0.03783539682626724, - 0.019031988456845284, - -0.0009674839675426483, - 0.01439635083079338, - 0.037747837603092194, - 0.012713033705949783, - 0.016097357496619225, - 0.061483800411224365, - 0.025261247530579567, - -0.013186433352530003, - 0.03253801539540291, - 0.11990076303482056, - -0.0628390684723854, - -0.009552542120218277, - 0.048650167882442474, - 0.007677403278648853, - -0.027684640139341354, - -0.03144530951976776, - -0.058763280510902405, - 0.026295050978660583, - -0.044312141835689545, - 0.05063920468091965, - 0.01699085719883442, - 0.0011239736340939999, - 0.03825441375374794, - 0.022916747257113457, - -0.0019340435974299908, - -0.034722182899713516, - -0.08818639814853668, - 0.13072866201400757, - 0.06585775315761566, - 0.012756201438605785, - -0.08909894526004791, - -0.090900719165802, - 0.06726817786693573, - 0.007602536119520664, - -0.07183565199375153, - 0.002192273736000061, - 0.06536427140235901, - 0.14639964699745178, - -0.007427135482430458, - -0.01235495787113905, - 0.018868179991841316, - 0.07820919156074524, - 0.07840124517679214, - 0.045271143317222595, - 0.04875032603740692, - 0.0846790075302124, - 0.029304085299372673, - 0.029179414734244347, - 0.059164032340049744, - 0.021112974733114243, - 0.009686710312962532, - -0.042836036533117294, - 0.030365262180566788, - 0.03601401299238205, - -0.02768142893910408, - 0.004443887621164322, - 0.01381439995020628, - 0.0046913400292396545, - 0.03584422916173935, - -1.531653106212616e-05, - -0.013592083938419819, - 0.06888803839683533, - -0.039438508450984955, - 0.042061954736709595, - -0.004070714116096497, - -0.01485615223646164, - 0.08001046627759933, - 0.03558462858200073, - 0.023850612342357635, - 0.07595677673816681, - -0.07829700410366058, - -0.08305729925632477, - -0.006581442430615425, - -0.003209050977602601, - 0.024796640500426292, - 0.05243242159485817, - 0.037644971162080765, - -0.02066842094063759, - 0.12771877646446228, - 0.034893687814474106, - 0.013780414126813412, - -0.0042670974507927895, - -0.1260133981704712, - 0.07696455717086792, - 0.04633644223213196, - -0.02695537358522415, - 0.0515616312623024, - -0.012208234518766403, - 0.04175709933042526, - 0.04974275454878807, - -0.13143886625766754, - -0.03920525684952736, - 0.05118044093251228, - 0.0059749591164290905, - 0.01594759337604046, - 0.1069403663277626, - 0.03104320913553238, - -0.01620885170996189, - 0.07889629900455475, - -0.08621074259281158, - -0.055649906396865845, - -0.033559974282979965, - 0.1016840785741806, - -0.08952215313911438, - 0.027700264006853104, - 0.024675438180565834, - -0.014423297718167305, - -0.04531712830066681, - 0.07375186681747437, - 0.000415031798183918, - -0.00015851296484470367, - -0.028294507414102554, - 0.01749030500650406, - 0.08891933411359787, - -0.021659063175320625, - 0.03105173259973526, - 0.01992894522845745, - 0.04125868156552315, - 0.025921441614627838, - 0.01935938559472561, - -0.049375589936971664, - -0.07961546629667282, - -0.009436559863388538, - 0.0684974193572998, - 0.06708923727273941, - -0.0491051971912384, - -0.030637552961707115, - -0.0654284656047821, - -0.05686984211206436, - 0.02030065283179283, - 0.04222528636455536, - 0.08421556651592255, - 0.046449583023786545, - -0.029040930792689323, - 0.13530217111110687, - -0.03105255588889122, - 0.007283971644937992, - -0.020225167274475098, - 0.025831453502178192, - 0.009825004264712334, - 0.04207317531108856, - -0.06330402940511703, - -0.07473613321781158, - 0.02230144292116165, - 0.0007133600302040577, - 0.022106168791651726, - 0.029444189742207527, - -0.0011781472712755203, - -0.0005464546848088503, - 0.019190713763237, - -0.06677652150392532, - 0.013764157891273499, - -0.0881725549697876, - -0.07823389768600464, - -0.007210577372461557, - 0.013173889368772507, - -0.019713273271918297, - 0.07604013383388519, - -0.00691785104572773, - 0.047817979007959366, - 0.027661941945552826, - -0.09357676655054092, - -0.07103085517883301, - 0.06767357885837555, - 0.05215778946876526, - -0.012474924325942993, - 0.04100147634744644, - 0.06916986405849457, - -0.0339847169816494, - 0.023280568420886993, - 0.06203930824995041, - 0.07159791886806488, - -0.05701250582933426, - -0.012226616963744164, - -0.08411754667758942, - 0.09320881962776184, - 0.047804687172174454, - -0.09929536283016205, - -0.08394557982683182, - -0.011899353936314583, - -0.05481933802366257, - 0.012348607182502747, - -0.004481784068048, - 0.06157462298870087, - 0.007839015685021877, - -0.0472693033516407, - -0.06354792416095734, - -0.08071665465831757, - 0.07271368056535721, - -0.06602893024682999, - -0.04005580395460129, - -0.04836101830005646, - 0.03449997678399086, - 0.08083398640155792, - 0.05337708070874214, - 0.03816365450620651, - -0.039333928376436234, - 0.034648336470127106, - -0.05005088075995445, - -0.07325781136751175, - 0.04599399119615555, - -0.026650480926036835, - -0.10073283314704895, - -0.017291313037276268, - -0.050028689205646515, - 0.09322719275951385, - -0.06154647096991539, - 0.10789820551872253, - -0.013691608794033527, - -0.07906541228294373, - -0.07174591720104218, - -0.025496678426861763, - 0.0209258534014225, - 0.03191053494811058, - 0.027914701029658318, - 0.04535887390375137, - 0.031264886260032654, - -0.011600816622376442, - 0.08953496813774109, - 0.01850002072751522, - 0.009259818121790886, - -0.048829250037670135, - -0.0622490718960762, - 0.0012840889394283295, - 0.01808755099773407, - -0.0008657914586365223, - -0.09528379887342453, - 0.04542069509625435, - 0.0033216187730431557, - -0.0407499261200428, - 0.015438757836818695, - 0.0888296440243721, - 0.051443349570035934, - -0.14641030132770538 - ] - }, - "p245_201.wav": { - "name": "p245", - "embedding": [ - 0.05511818081140518, - 0.11212310194969177, - -0.011525323614478111, - 0.016972655430436134, - -0.04211655631661415, - 0.0638246089220047, - -0.16440251469612122, - 0.1507434844970703, - -0.026916876435279846, - 0.13388268649578094, - -0.037310678511857986, - 0.12266439944505692, - -0.020745359361171722, - -0.17097729444503784, - -0.03719726949930191, - 0.059551902115345, - -0.04489855840802193, - -0.036431364715099335, - -0.014066828414797783, - -0.01691630855202675, - 0.009256268851459026, - 0.02300920896232128, - 0.040245041251182556, - 0.02279983088374138, - 0.03718739002943039, - 0.06513645499944687, - 0.0007651466876268387, - 0.05713482201099396, - 0.00963128823786974, - -0.03747817873954773, - -0.029261961579322815, - 0.08851687610149384, - -0.06712214648723602, - 0.023853596299886703, - 0.05486403405666351, - -0.013791164383292198, - 0.003468405921012163, - -0.05426535755395889, - -0.011016378179192543, - 0.003150020493194461, - -0.025247231125831604, - 0.10075338929891586, - 0.03476456552743912, - -0.008219363167881966, - 0.01719394326210022, - 0.03493858128786087, - 0.008156637661159039, - -0.0324087031185627, - -0.11855581402778625, - 0.1498035192489624, - 0.06533762067556381, - -0.0043103876523673534, - -0.0772293359041214, - -0.05846061557531357, - 0.08848056942224503, - -0.027996767312288284, - -0.10237906873226166, - -0.03466286510229111, - 0.07236357033252716, - 0.14088992774486542, - -0.031598836183547974, - -0.0486932098865509, - 0.023812200874090195, - 0.13915732502937317, - 0.08070148527622223, - 0.07763877511024475, - 0.07992343604564667, - 0.12148387730121613, - -0.050063468515872955, - -0.0021491101942956448, - 0.050942204892635345, - 0.0586591511964798, - 0.04539824277162552, - 0.009091577492654324, - 0.012125764042139053, - -0.017939668148756027, - -0.004847826436161995, - -0.005730635020881891, - -0.014895502477884293, - -0.029740257188677788, - -0.029120707884430885, - 0.013473547995090485, - -0.011863608844578266, - 0.06011473387479782, - -0.012197759002447128, - 0.0584108941257, - 0.034900542348623276, - -0.018841322511434555, - 0.0773913562297821, - 0.05043083429336548, - 0.0210711732506752, - 0.06707257777452469, - -0.0912616178393364, - -0.05538351833820343, - 0.0398763008415699, - -0.008284758776426315, - 0.038146667182445526, - 0.07084225118160248, - 0.041463833302259445, - -0.0010061735520139337, - 0.12212863564491272, - 0.06449627876281738, - -0.014100637286901474, - 0.016240563243627548, - -0.08583803474903107, - 0.13689729571342468, - 0.06536121666431427, - -0.03450407832860947, - 0.055621471256017685, - -0.04011617228388786, - 0.04346810281276703, - 0.060454487800598145, - -0.12322668731212616, - -0.0895187184214592, - 0.04595860093832016, - 0.04117373004555702, - -0.0230595450848341, - 0.12120827287435532, - -0.001005854457616806, - 0.0545198880136013, - 0.08080488443374634, - -0.07027877867221832, - -0.04748065769672394, - -0.009639699943363667, - 0.06234338507056236, - -0.06941592693328857, - 0.05164248123764992, - 0.06436388194561005, - -0.013249555602669716, - 0.010334555990993977, - 0.08919903635978699, - 0.011683602817356586, - 0.000299295992590487, - 0.02489382028579712, - -0.036725860089063644, - 0.014538826420903206, - -0.0019320540595799685, - 0.012876464053988457, - 0.015764329582452774, - 0.021520916372537613, - 0.04543602466583252, - 0.005655610002577305, - -0.024667367339134216, - -0.1309337466955185, - 0.003189387731254101, - 0.0531509593129158, - 0.08745987713336945, - -0.024010051041841507, - -0.040880054235458374, - -0.030893104150891304, - -0.03797308728098869, - 0.0009898971766233444, - 0.006269948557019234, - 0.0656789243221283, - -0.03542296215891838, - -0.009637041948735714, - 0.10649190843105316, - 0.030321605503559113, - 0.0031170290894806385, - -0.04022235423326492, - -0.016823559999465942, - 0.0015661268262192607, - 0.047295406460762024, - -0.08259402215480804, - -0.07387891411781311, - -0.004735726863145828, - 0.04221796989440918, - -0.01233053021132946, - 0.08891333639621735, - 0.05673213303089142, - 0.016745546832680702, - 0.0222429558634758, - -0.048097945749759674, - 0.011405489407479763, - -0.07478676736354828, - -0.07258903235197067, - -0.018395038321614265, - 0.009205790236592293, - -0.03617504984140396, - 0.07776371389627457, - 0.04206109046936035, - 0.09293448179960251, - -0.023142961785197258, - -0.05291867256164551, - -0.07306499779224396, - 0.04751640930771828, - 0.06554031372070312, - -0.025272902101278305, - 0.03950625658035278, - 0.07353940606117249, - -0.024351969361305237, - 0.05548709258437157, - 0.07088024914264679, - 0.08119156956672668, - -0.05111321806907654, - 0.024134550243616104, - -0.07701750099658966, - 0.060233116149902344, - 0.0856102705001831, - -0.10147425532341003, - -0.07619839906692505, - -0.013500827364623547, - -0.061241574585437775, - 0.006847718730568886, - -0.0328960083425045, - 0.029118482023477554, - 0.03181857243180275, - -0.005155395716428757, - -0.08790645003318787, - -0.12165117263793945, - 0.08395262062549591, - -0.08868646621704102, - 0.019166551530361176, - -0.06920987367630005, - 0.05198763310909271, - 0.08661377429962158, - 0.03899727016687393, - -0.029150929301977158, - -0.018633730709552765, - 0.034087590873241425, - 0.0008559771813452244, - 0.008367626927793026, - 0.07127957046031952, - 0.04484396427869797, - -0.12551236152648926, - 0.008474432863295078, - -0.06450192630290985, - 0.06808453798294067, - -0.035618893802165985, - 0.16381029784679413, - 0.021532177925109863, - -0.054629646241664886, - -0.08315492421388626, - 0.003878412302583456, - -0.04005561023950577, - 0.05593789368867874, - 0.015326911583542824, - 0.06255761533975601, - 0.03487628698348999, - -0.041331011801958084, - 0.11909664422273636, - 0.049699876457452774, - -0.05620461702346802, - -0.08857350051403046, - -0.045126304030418396, - -0.030415156856179237, - 0.06337439268827438, - 0.0274224691092968, - -0.08693434298038483, - -0.03429974988102913, - 0.021948659792542458, - -0.018025502562522888, - 0.0702352374792099, - 0.14869332313537598, - 0.07642989605665207, - -0.12858504056930542 - ] - }, - "p245_136.wav": { - "name": "p245", - "embedding": [ - 0.05141834914684296, - 0.09384244680404663, - 0.0027724015526473522, - 0.048024777323007584, - -0.03925531357526779, - 0.06964029371738434, - -0.07960496842861176, - 0.08917447924613953, - -0.05906029790639877, - 0.14789757132530212, - -0.11277738213539124, - 0.11306633800268173, - -0.021489301696419716, - -0.16951832175254822, - -0.03842146694660187, - 0.06441636383533478, - -0.027990078553557396, - 0.030925128608942032, - -0.030577704310417175, - 0.0270548015832901, - 0.04513400420546532, - 0.0441758967936039, - 0.07102750241756439, - -0.051528967916965485, - 0.062090471386909485, - 0.049823418259620667, - 0.029422150924801826, - 0.08429831266403198, - 0.04295084625482559, - -0.10208781063556671, - -0.052613869309425354, - 0.13765741884708405, - -0.036743395030498505, - 0.026554159820079803, - 0.04950394481420517, - 0.011309279128909111, - 0.0005480997497215867, - -0.061575815081596375, - 0.000676786876283586, - -0.0182732492685318, - -0.01846231147646904, - 0.056750133633613586, - 0.006017546635121107, - -0.010398592799901962, - 0.0258325282484293, - 0.021399367600679398, - -0.04424873739480972, - -0.0469798780977726, - -0.09055374562740326, - 0.14626476168632507, - 0.02010076679289341, - 0.022107237949967384, - -0.07736627757549286, - -0.09531641006469727, - 0.09994763135910034, - 0.01042456366121769, - -0.10447446256875992, - -0.026107992976903915, - 0.07764921337366104, - 0.17855390906333923, - 0.0013499065535143018, - -0.03455064073204994, - 0.004637734033167362, - 0.08558331429958344, - 0.012575481086969376, - 0.11652513593435287, - 0.050336919724941254, - 0.05314097926020622, - 0.06140861660242081, - 0.08126457035541534, - 0.02980859950184822, - 0.07705634832382202, - 0.01710939221084118, - -0.026365702971816063, - 0.013730703853070736, - -0.013302801176905632, - -0.0603434219956398, - 0.03303295373916626, - -0.010137918405234814, - -0.011267154477536678, - -0.004585144575685263, - -0.014200631529092789, - 0.03355584293603897, - -0.039536818861961365, - -0.033892177045345306, - 0.032373566180467606, - -0.010474840179085732, - -0.009296310134232044, - 0.06975413113832474, - 0.01981363445520401, - -0.022136781364679337, - 0.02798370271921158, - -0.05673570930957794, - -0.1416313648223877, - -0.006681807804852724, - 0.02671816758811474, - 0.013314202427864075, - 0.06863708794116974, - 0.03743428364396095, - -0.045212581753730774, - 0.08942880481481552, - 0.04641281068325043, - 0.02805173024535179, - 0.03454264998435974, - -0.08436690270900726, - 0.09035779535770416, - 0.09968797862529755, - 0.025750044733285904, - 0.05775569751858711, - -0.03618744760751724, - 0.11050941050052643, - 0.1042468398809433, - -0.16119490563869476, - -0.07683303207159042, - -0.024384746327996254, - -0.034818004816770554, - 0.007066630758345127, - 0.06654946506023407, - -0.027014728635549545, - -0.01130053773522377, - 0.09593239426612854, - -0.11562374979257584, - -0.0719260573387146, - -0.032707080245018005, - 0.02501877211034298, - -0.08276085555553436, - 0.049125753343105316, - 0.013773162849247456, - -0.03938998281955719, - -0.018643083050847054, - 0.06344294548034668, - -0.024832408875226974, - 0.01686427742242813, - 0.04303388670086861, - -0.07249826937913895, - 0.025042152032256126, - -0.09079482406377792, - 0.016426056623458862, - 0.09090790152549744, - 0.04403422027826309, - 0.06044825538992882, - -0.0033124065957963467, - -0.04384984076023102, - -0.08292171359062195, - -0.0028851458337157965, - 0.0525209978222847, - 0.020323116332292557, - -0.010496784932911396, - -0.028149064630270004, - -0.04103463143110275, - -0.07869160175323486, - 0.07913064956665039, - -0.0011206634808331728, - 0.08580173552036285, - 0.030030835419893265, - 0.018346428871154785, - 0.0923272967338562, - 0.006899341009557247, - -0.01107434555888176, - -0.0821005254983902, - -0.04700682684779167, - 0.05453604459762573, - 0.03173323720693588, - -0.10375726222991943, - -0.038108717650175095, - 0.020120572298765182, - -0.01418862584978342, - -0.04396382346749306, - 0.002357538789510727, - 0.04429242014884949, - 0.02557266503572464, - 0.052937597036361694, - -0.03040521964430809, - 0.00023684941697865725, - -0.1077771782875061, - -0.050389159470796585, - -0.022212030366063118, - -0.04610762372612953, - -0.018408508971333504, - 0.09210646152496338, - 0.00935431569814682, - -0.005422515328973532, - -0.0002923562133219093, - -0.05018161982297897, - -0.061742525547742844, - 0.07599705457687378, - 0.05665174126625061, - 0.04734191298484802, - 0.06706345081329346, - 0.014234588481485844, - -0.04093615710735321, - 0.06819590926170349, - 0.05485409498214722, - 0.09729917347431183, - -0.0037351511418819427, - -0.012426167726516724, - -0.07035854458808899, - 0.08780263364315033, - 0.10930603742599487, - -0.09341315180063248, - -0.1024673730134964, - -0.0436556302011013, - -0.07118580490350723, - 0.09446816146373749, - -0.02589349076151848, - -0.03805803135037422, - 0.02255435660481453, - -0.04031994566321373, - -0.08825281262397766, - -0.07669749855995178, - 0.09607619047164917, - -0.03330562263727188, - -0.06764556467533112, - -0.06447035074234009, - 0.03951749578118324, - 0.0531640350818634, - 0.03523951768875122, - -0.00457668537274003, - 0.02532750740647316, - 0.06489630043506622, - -0.11835372447967529, - -0.03565382584929466, - 0.04792428016662598, - -0.028515227138996124, - -0.0448799729347229, - 0.03351759910583496, - -0.07020387053489685, - 0.061290137469768524, - -0.08577300608158112, - 0.1748303323984146, - -0.05219673365354538, - -0.06337454915046692, - -0.06802007555961609, - 0.0746140107512474, - -0.037712790071964264, - 0.009680218994617462, - 0.07229800522327423, - 0.03549128398299217, - 0.036690570414066315, - -0.1087617352604866, - 0.10996214300394058, - -0.0017096211668103933, - 0.008962016552686691, - -0.04340721666812897, - -0.0443255677819252, - -0.06405270099639893, - 0.0012607452226802707, - -0.03241158276796341, - -0.08377400040626526, - 0.02377261407673359, - 0.020100770518183708, - 0.002682886552065611, - 0.04253046214580536, - 0.11782117187976837, - 0.03330816701054573, - -0.0671708881855011 - ] - }, - "p245_238.wav": { - "name": "p245", - "embedding": [ - 0.048192255198955536, - 0.0856732502579689, - -0.024784784764051437, - 0.034956980496644974, - -0.06625073403120041, - 0.05187675356864929, - -0.1189003437757492, - 0.1366071105003357, - -0.02329511195421219, - 0.13937202095985413, - -0.06657830625772476, - 0.13776913285255432, - -0.015011260285973549, - -0.17779940366744995, - -0.020704206079244614, - 0.04880214482545853, - -0.041755590587854385, - -0.039138369262218475, - -0.024401327595114708, - -0.02936430647969246, - 0.0556807667016983, - 0.055693209171295166, - 0.03320441395044327, - 0.00034835212863981724, - 0.017719268798828125, - 0.07283156365156174, - -0.003327935701236129, - 0.03543262183666229, - 0.00414060615003109, - -0.07725800573825836, - -0.05338648706674576, - 0.09614154696464539, - -0.050617948174476624, - 0.018481513485312462, - 0.03167777135968208, - -0.02287757396697998, - 0.0005867118015885353, - -0.0536423958837986, - -0.020605625584721565, - 0.011464349925518036, - -0.030290240421891212, - 0.0711221992969513, - 0.020660096779465675, - -0.015318632125854492, - 0.04880041256546974, - 0.01688324846327305, - -0.028967643156647682, - -0.03955049067735672, - -0.11184601485729218, - 0.17146752774715424, - 0.08238431811332703, - -0.002738955896347761, - -0.058955587446689606, - -0.06897035241127014, - 0.09003840386867523, - -0.009812616743147373, - -0.10784505307674408, - -0.027097230777144432, - 0.06440021097660065, - 0.14617036283016205, - -0.01969076506793499, - -0.055733270943164825, - 0.038849085569381714, - 0.11995720863342285, - 0.049979887902736664, - 0.07123299688100815, - 0.08621516823768616, - 0.10666322708129883, - -0.032921262085437775, - 0.006459346506744623, - 0.041732095181941986, - 0.0870308130979538, - 0.07335962355136871, - -0.0020383328665047884, - 0.033529508858919144, - 0.0009053430985659361, - -0.015052133239805698, - -0.014228877611458302, - -0.0341176837682724, - -0.022708691656589508, - -0.0058417534455657005, - 0.008260474540293217, - 0.020324915647506714, - 0.027046389877796173, - -0.02797975018620491, - 0.0632672905921936, - 0.041860174387693405, - -0.00863546784967184, - 0.05933716893196106, - 0.01817016303539276, - 0.01571546122431755, - 0.07002922892570496, - -0.09937640279531479, - -0.08078598976135254, - 0.04861612617969513, - 0.017239488661289215, - 0.03527238965034485, - 0.07749965786933899, - 0.040935199707746506, - -0.02634143829345703, - 0.11926497519016266, - 0.04318404942750931, - -0.010764160193502903, - 0.013201180845499039, - -0.09105083346366882, - 0.12342653423547745, - 0.11026807874441147, - -0.027273029088974, - 0.051274314522743225, - -0.05674508959054947, - 0.08958464115858078, - 0.051044873893260956, - -0.13859692215919495, - -0.07745301723480225, - 0.015450185164809227, - 0.015069538727402687, - -0.017095256596803665, - 0.12328608334064484, - -0.0021681305952370167, - 0.06407656520605087, - 0.10999579727649689, - -0.10157221555709839, - -0.05042215436697006, - -0.025978311896324158, - 0.048142313957214355, - -0.09797748923301697, - 0.059781208634376526, - 0.05708244442939758, - -0.011131984181702137, - 0.020146246999502182, - 0.06837328523397446, - -0.021472342312335968, - 0.009674872271716595, - 0.01459462009370327, - -0.05541980266571045, - 0.0023015919141471386, - -0.031046949326992035, - -0.011620761826634407, - 0.03468741849064827, - 0.027203360572457314, - 0.046746961772441864, - -0.0187997967004776, - -0.029246270656585693, - -0.13109919428825378, - 0.025988835841417313, - 0.03092006966471672, - 0.056365422904491425, - -0.012007994577288628, - -0.039373014122247696, - -0.034047313034534454, - -0.07035766541957855, - 0.013507400639355183, - -0.007875584997236729, - 0.05060463398694992, - -0.02387099526822567, - 0.007717732340097427, - 0.09041944891214371, - 0.041866544634103775, - -0.01242828369140625, - -0.03630158677697182, - -0.05333526059985161, - 0.010161603800952435, - 0.05040629208087921, - -0.08434578776359558, - -0.08028256148099899, - -0.016978222876787186, - 0.029886778444051743, - -0.019844239577651024, - 0.061177946627140045, - 0.05779300630092621, - 0.02064438909292221, - 0.022764405235648155, - -0.06299805641174316, - 0.006624080240726471, - -0.1037154346704483, - -0.08396510779857635, - -0.011568926274776459, - -0.016440793871879578, - -0.020698431879281998, - 0.07582233846187592, - 0.013021954335272312, - 0.06354506313800812, - -0.038435399532318115, - -0.04189471900463104, - -0.08367975056171417, - 0.053421203047037125, - 0.05864348262548447, - 0.006749191787093878, - 0.05156416445970535, - 0.05735238268971443, - -0.02956988848745823, - 0.06539896130561829, - 0.05777057260274887, - 0.10557493567466736, - -0.023623373359441757, - 0.028875652700662613, - -0.06988620012998581, - 0.09637941420078278, - 0.09502626955509186, - -0.06928315758705139, - -0.08859211206436157, - -0.036927372217178345, - -0.08109502494335175, - 0.048474378883838654, - -0.0327536016702652, - -0.001456666854210198, - 0.03568661957979202, - 0.00914892740547657, - -0.11304029822349548, - -0.08176206052303314, - 0.08448360860347748, - -0.05312156304717064, - -0.006756352260708809, - -0.08260433375835419, - 0.05436480790376663, - 0.109525166451931, - 0.037000566720962524, - -0.0370929092168808, - -0.0195329487323761, - 0.0471968874335289, - -0.025126691907644272, - 0.016944408416748047, - 0.0459243580698967, - 0.05811868607997894, - -0.10650826245546341, - -0.001933423918671906, - -0.07025714218616486, - 0.031967777758836746, - -0.05384049564599991, - 0.1429595649242401, - 0.01064557395875454, - -0.0460495725274086, - -0.08517690747976303, - 0.068721242249012, - -0.008044741116464138, - 0.04722782224416733, - 0.024256261065602303, - 0.05122235417366028, - 0.043867725878953934, - -0.09508968889713287, - 0.1171967089176178, - 0.042246345430612564, - -0.046473052352666855, - -0.06898881494998932, - -0.04760158807039261, - -0.03766796737909317, - 0.03268912807106972, - 0.016161737963557243, - -0.08264794945716858, - -0.02973749116063118, - 0.02060704305768013, - 0.009672337211668491, - 0.06370183825492859, - 0.14448684453964233, - 0.041367240250110626, - -0.12331701815128326 - ] - }, - "p245_196.wav": { - "name": "p245", - "embedding": [ - 0.021600846201181412, - 0.004570044577121735, - -0.07494718581438065, - 0.11656808853149414, - -0.08416303992271423, - -0.0036705578677356243, - -0.0676426962018013, - 0.028364302590489388, - 0.004655107855796814, - 0.0421636700630188, - -0.020549116656184196, - 0.10482598096132278, - -0.007486165966838598, - -0.15837056934833527, - 0.017453154549002647, - 0.05888497084379196, - -0.018500788137316704, - -0.04646013304591179, - -0.0852256640791893, - 0.0017188191413879395, - 0.0239394661039114, - 0.058483004570007324, - 0.09829157590866089, - -0.11539868265390396, - 0.05027247592806816, - 0.06059977039694786, - 0.03152298182249069, - 0.0605325847864151, - 0.006205031182616949, - -0.08786999434232712, - -0.02531738579273224, - 0.07218952476978302, - -0.04300328716635704, - -0.04287872835993767, - -0.006608361378312111, - -0.017997456714510918, - 0.006549905054271221, - -0.05062362551689148, - -0.00022188297589309514, - 0.060666222125291824, - -0.03764817863702774, - 0.08683430403470993, - 0.0381389781832695, - -0.06500234454870224, - 0.044205278158187866, - -0.014747124165296555, - -0.07458034157752991, - -0.011999599635601044, - -0.14061351120471954, - 0.1476481556892395, - 0.0013768341159448028, - 0.03952260687947273, - -0.07445188611745834, - -0.10498807579278946, - 0.08857572078704834, - 0.03125270456075668, - -0.07170958071947098, - -0.07785048335790634, - 0.019192785024642944, - 0.14542174339294434, - 0.01966034434735775, - 0.031899575144052505, - 0.060237716883420944, - 0.04126972332596779, - 0.10605190694332123, - 0.022118283435702324, - 0.04622618108987808, - 0.09566080570220947, - 0.03816326707601547, - 0.04114250838756561, - 0.05145137757062912, - 0.10741766542196274, - -0.03579790145158768, - 0.03237021714448929, - -0.0016727469628676772, - 0.0007892122375778854, - -0.04242180287837982, - -0.05049879848957062, - -0.00753529230132699, - -0.021233510226011276, - 0.029774416238069534, - -0.01037671323865652, - 0.08324018120765686, - 0.008410842157900333, - -0.07947350293397903, - 0.05544404685497284, - 0.07956980913877487, - -0.051099494099617004, - 0.03790952265262604, - 0.015305854380130768, - -0.028178324922919273, - 0.04381226375699043, - -0.05355055630207062, - -0.09496687352657318, - -0.038160040974617004, - 0.0489855632185936, - 0.03625588119029999, - 0.025230666622519493, - 0.011667909100651741, - -0.04750958830118179, - 0.09341155737638474, - 0.028735613450407982, - -0.002344172215089202, - 0.014013756066560745, - 0.011318717151880264, - 0.06484272330999374, - 0.1116248294711113, - 0.02786775305867195, - 0.03783769533038139, - -0.005671270191669464, - 0.02077414095401764, - 0.028183581307530403, - -0.07662416249513626, - -0.08070453256368637, - 0.002776081906631589, - -0.04332665726542473, - 0.0015102250035852194, - 0.12315301597118378, - 0.012537411414086819, - 0.04657234251499176, - 0.11499587446451187, - -0.12760981917381287, - -0.0385301373898983, - 0.013204270973801613, - 0.05735161900520325, - -0.014100005850195885, - 0.016016315668821335, - 0.057698749005794525, - -0.0548892468214035, - -0.011758845299482346, - 0.03290052339434624, - -0.0022033657878637314, - 0.07848820835351944, - 0.041470713913440704, - -0.05197889357805252, - 0.11259084939956665, - -0.049750421196222305, - -0.04358360916376114, - 0.1818459928035736, - 0.02459142357110977, - 0.085120290517807, - -0.0760008692741394, - -0.025670839473605156, - -0.12971827387809753, - 0.05193028599023819, - 0.027295392006635666, - 0.05988822504878044, - -0.036803022027015686, - -0.01406625285744667, - -0.0860980674624443, - -0.1182086393237114, - 0.09125997126102448, - 0.026377592235803604, - 0.12329612672328949, - -0.01577657461166382, - -0.004697935190051794, - 0.07087470591068268, - -0.01746348850429058, - -0.02045099250972271, - 0.00040763261495158076, - -0.05951942503452301, - 0.02545331045985222, - 0.03147123381495476, - -0.04082140326499939, - -0.04136192798614502, - -0.03162946552038193, - 0.02418454922735691, - -0.02802218496799469, - 0.04737013578414917, - 0.04965860769152641, - 0.004983807448297739, - -0.007092426065355539, - -0.0015535918064415455, - -0.0005961758433841169, - -0.012993017211556435, - 0.01917100138962269, - -0.023778550326824188, - -0.062470052391290665, - -0.0899285301566124, - 0.11358119547367096, - 0.060554951429367065, - 0.050150010734796524, - -0.03811769187450409, - -0.046608246862888336, - -0.06418602913618088, - 0.04399752989411354, - -0.0017196411499753594, - -0.016996687278151512, - 0.06712747365236282, - 0.05948321148753166, - -0.006635765545070171, - 0.02376386895775795, - 0.056312933564186096, - 0.018657678738236427, - -0.013202209025621414, - -0.07997986674308777, - -0.05439700558781624, - 0.16799308359622955, - 0.09062279015779495, - -0.06793129444122314, - 0.003616803791373968, - -0.06300493329763412, - -0.10651971399784088, - 0.0637146532535553, - -0.01129967998713255, - 0.014622806571424007, - 0.07740678638219833, - -0.0005111450445838273, - -0.14024436473846436, - -0.08714594691991806, - 0.0643690973520279, - -0.049423135817050934, - -0.026361502707004547, - -0.042946238070726395, - -0.045069437474012375, - 0.07249227166175842, - 0.06336527317762375, - 0.02762836031615734, - 0.01384671963751316, - 0.05033210292458534, - -0.05946294963359833, - 0.053952306509017944, - 0.1397915631532669, - 0.023047752678394318, - -0.0274214930832386, - -0.044140443205833435, - -0.043370265513658524, - 0.04463500529527664, - -0.059287115931510925, - 0.11878107488155365, - 0.026769720017910004, - -0.001993618905544281, - -0.07708421349525452, - 0.12255621701478958, - -0.06935304403305054, - 0.09766803681850433, - 0.07733367383480072, - 0.047418490052223206, - 0.058376822620630264, - -0.0943300724029541, - 0.12575404345989227, - 0.04397275671362877, - -0.03334272652864456, - -0.07298876345157623, - -0.04376649111509323, - -0.03700684756040573, - 0.06267010420560837, - 0.05292423442006111, - -0.029407741501927376, - 0.05177991837263107, - 0.0552787110209465, - -0.009431647136807442, - 0.025952467694878578, - 0.12382227927446365, - 0.0839836448431015, - -0.017081599682569504 - ] - }, - "p245_257.wav": { - "name": "p245", - "embedding": [ - 0.054217152297496796, - 0.06817907840013504, - 0.03713423013687134, - -0.010684062726795673, - 0.01508484035730362, - 0.02617986500263214, - -0.1607087105512619, - 0.0865040272474289, - -0.027016805484890938, - 0.13708442449569702, - -0.10475902259349823, - 0.05688543990254402, - -0.010460307821631432, - -0.18352359533309937, - -0.03182586282491684, - 0.046695150434970856, - -0.04403897002339363, - -0.00015656184405088425, - -0.03932412341237068, - -0.007941464893519878, - 0.01766897365450859, - 0.05982992425560951, - 0.010327210649847984, - -0.03081132099032402, - 0.06301897764205933, - 0.03556942567229271, - 0.026293715462088585, - 0.06525366008281708, - 0.015808887779712677, - -0.007385138422250748, - 0.03630516678094864, - 0.1110234260559082, - -0.015532521530985832, - -0.021643897518515587, - 0.024781692773103714, - 0.03119952790439129, - 0.02551283687353134, - -0.06725099682807922, - -0.0099920853972435, - 0.03957259654998779, - -0.03227991983294487, - 0.059548743069171906, - 0.04365657642483711, - 0.013627806678414345, - 0.022105857729911804, - 0.03285133093595505, - 0.007680032402276993, - -0.07825607061386108, - -0.10873427987098694, - 0.15644240379333496, - 0.031608760356903076, - 0.014791199006140232, - -0.09001362323760986, - -0.06924799084663391, - 0.053502969443798065, - -0.002283245325088501, - -0.05754539743065834, - -0.03387531638145447, - 0.08830463886260986, - 0.15600371360778809, - -0.006379101425409317, - -0.04725562408566475, - 0.031896013766527176, - 0.08861653506755829, - 0.014177089557051659, - 0.08891838043928146, - 0.07531522214412689, - 0.054293036460876465, - 0.02357693575322628, - 0.011974422261118889, - 0.04840375855565071, - 0.02700851298868656, - -0.003739798441529274, - -0.034415025264024734, - 0.023159505799412727, - 0.021604256704449654, - -0.06547054648399353, - 0.023687567561864853, - 0.007296266499906778, - 0.010971713811159134, - 0.019776316359639168, - 0.0020363214425742626, - -0.014962133951485157, - 0.032938964664936066, - -0.0303499773144722, - 0.022993918508291245, - -0.00038847560063004494, - 0.01102515496313572, - 0.0934532880783081, - 0.03400835394859314, - 0.03465603291988373, - 0.026850994676351547, - -0.03414849564433098, - -0.09130959957838058, - 0.010474520735442638, - 0.021718217059969902, - -0.014649230986833572, - 0.030711600556969643, - 0.042217232286930084, - -0.03350149840116501, - 0.11534915864467621, - 0.010818365961313248, - 0.004705140367150307, - 0.005516288802027702, - -0.09385565668344498, - 0.08167917281389236, - 0.09037114679813385, - -0.025205662474036217, - 0.05022481828927994, - -0.0373944453895092, - 0.010105933994054794, - 0.07151336222887039, - -0.13596861064434052, - -0.0687650740146637, - 0.04273831471800804, - 0.015815328806638718, - 0.01326176431030035, - 0.11737816035747528, - -0.003587041050195694, - -0.01472906768321991, - 0.06475979089736938, - -0.06688492745161057, - -0.0668620839715004, - -0.006667150184512138, - 0.060433533042669296, - -0.0788603350520134, - 0.011358421295881271, - 0.06165245175361633, - -0.014212185516953468, - -0.031060297042131424, - 0.06001724302768707, - -0.005857196636497974, - 0.016740523278713226, - -0.05987732112407684, - 0.017589537426829338, - 0.0864129289984703, - -0.04939686134457588, - -0.002140121068805456, - 0.016073305159807205, - 0.0471375435590744, - 0.009931059554219246, - 0.047132834792137146, - -0.07978732883930206, - -0.10603523999452591, - -0.011530506424605846, - 0.03299398720264435, - 0.05002181977033615, - -0.03655140474438667, - -0.015670813620090485, - -0.08277647197246552, - -0.056168489158153534, - 0.02863014116883278, - -0.0033410582691431046, - 0.07885763794183731, - 0.03353947773575783, - -0.043872468173503876, - 0.1273277848958969, - -0.030313070863485336, - 0.021686825901269913, - -0.026045599952340126, - 0.013170342892408371, - 0.015548569150269032, - 0.025662554427981377, - -0.03252416104078293, - -0.06663279980421066, - 0.0026471256278455257, - 0.004096983931958675, - 0.0015172576531767845, - -0.003519449383020401, - 0.01300845481455326, - 0.0012318952940404415, - 0.01108726765960455, - -0.08890679478645325, - 0.024663930758833885, - -0.10311698913574219, - -0.044249389320611954, - 0.010110977105796337, - 0.007091917097568512, - 0.0025250613689422607, - 0.09350241720676422, - 0.014535675756633282, - 0.026898739859461784, - -0.012900945730507374, - -0.09027010202407837, - -0.042928844690322876, - 0.06134141981601715, - 0.1257837563753128, - -0.017717817798256874, - 0.027924351394176483, - 0.018012765794992447, - -0.0049772243946790695, - 0.03948676586151123, - 0.055222801864147186, - 0.07461942732334137, - -0.011198907159268856, - -0.029866714030504227, - -0.050751943141222, - 0.08282352238893509, - 0.035378821194171906, - -0.07516846060752869, - -0.061053477227687836, - 0.012696491554379463, - -0.05744007229804993, - 0.036156993359327316, - 0.007852068170905113, - 0.03852957487106323, - 0.01347978413105011, - -0.0425565168261528, - -0.07943952828645706, - -0.08678993582725525, - 0.016128182411193848, - -0.016244612634181976, - -0.034425437450408936, - -0.06773430109024048, - 0.06063462048768997, - 0.05729877948760986, - 0.05248463153839111, - 0.026279035955667496, - -0.0323423333466053, - -0.015695445239543915, - -0.07194054871797562, - -0.054092179983854294, - 0.0022027073428034782, - -0.03613854572176933, - -0.09956088662147522, - 0.024854637682437897, - -0.06626009941101074, - 0.10389111936092377, - -0.056514859199523926, - 0.10046537220478058, - 0.018408868461847305, - -0.07223938405513763, - -0.099718376994133, - -0.0012365737929940224, - -0.019542958587408066, - 0.05479367822408676, - 0.037622544914484024, - 0.013263262808322906, - 0.05212530121207237, - -0.048746272921562195, - 0.05929608270525932, - 0.020935308188199997, - 0.010361323133111, - -0.06887972354888916, - -0.034353163093328476, - -0.011098933406174183, - 0.03636820986866951, - -0.01962437480688095, - -0.049291301518678665, - 0.014690026640892029, - 0.02708308771252632, - -0.03550346940755844, - 0.05014926195144653, - 0.07363013178110123, - 0.03114086017012596, - -0.1266014575958252 - ] - }, - "p245_243.wav": { - "name": "p245", - "embedding": [ - 0.0496537983417511, - 0.07148614525794983, - 0.021776840090751648, - -0.04420365393161774, - -0.01760343834757805, - 0.10234972089529037, - -0.057350486516952515, - 0.055450133979320526, - -0.026158912107348442, - 0.04957691580057144, - -0.09098969399929047, - 0.018589302897453308, - 0.013466292060911655, - -0.13033759593963623, - -0.006506165489554405, - 0.017749708145856857, - -0.04192372038960457, - 0.022413771599531174, - -0.03578998148441315, - -0.03640943393111229, - 0.0020634308457374573, - 0.009275656193494797, - 0.05191638693213463, - -0.03734276816248894, - 0.046207915991544724, - 0.05116480216383934, - 0.03750753402709961, - 0.03076435811817646, - -0.008631564676761627, - -0.0362841933965683, - -0.04665122553706169, - 0.07105650007724762, - -0.048958275467157364, - -0.02607041411101818, - 0.06438344717025757, - -0.03418348729610443, - 0.053798459470272064, - -0.08436086773872375, - -0.035632822662591934, - 0.04042034223675728, - -0.06375569105148315, - 0.0798109918832779, - 0.028169002383947372, - 0.03995240479707718, - -0.0016235699877142906, - 0.02437409944832325, - 0.013301012106239796, - -0.04227359965443611, - -0.0427711196243763, - 0.125056654214859, - 0.04826640710234642, - 0.0048364270478487015, - -0.04363624006509781, - -0.022009389474987984, - 0.07150287926197052, - -0.011498454958200455, - -0.03685254231095314, - -0.0005462775006890297, - 0.03539516404271126, - 0.04325321316719055, - 0.00407005287706852, - -0.029902592301368713, - 0.04099159687757492, - 0.0728224515914917, - -0.01900591515004635, - 0.05258384346961975, - 0.07483074814081192, - 0.06308706849813461, - 0.012157123535871506, - 0.01546664908528328, - 0.05176263302564621, - 0.031836096197366714, - 0.03280312940478325, - -0.05306887626647949, - 0.0751296803355217, - 0.007853830233216286, - -0.03479786962270737, - -0.0008172448724508286, - -0.019581403583288193, - 0.0011207624338567257, - 0.058312512934207916, - 0.02676708996295929, - 0.00859091803431511, - 0.0021422291174530983, - -0.044636260718107224, - 0.03409015014767647, - -0.032026100903749466, - 0.11473701894283295, - 0.06617042422294617, - 0.015520346350967884, - 0.04059837386012077, - 0.005340930074453354, - -0.035301968455314636, - -0.0752391442656517, - 0.05727509781718254, - 0.043912678956985474, - -0.026067981496453285, - 0.019499771296977997, - 0.060590069741010666, - -0.046020012348890305, - 0.08839106559753418, - 0.013256851583719254, - -0.01371961459517479, - 0.026423536241054535, - -0.04773329570889473, - 0.04620172828435898, - 0.06265450268983841, - -0.015434358268976212, - 0.05078808590769768, - -0.030986063182353973, - 0.0565127395093441, - 0.061163291335105896, - -0.09150287508964539, - -0.04668935388326645, - -0.008939883671700954, - -0.02446798048913479, - 0.025457177311182022, - 0.09199629724025726, - -0.0632307156920433, - -0.003209749236702919, - 0.03623364865779877, - -0.04287661612033844, - -0.024834370240569115, - 0.028979206457734108, - -0.015589846298098564, - -0.016861289739608765, - -0.024578209966421127, - 0.011902537196874619, - 0.02433544024825096, - -0.06909365952014923, - 0.036940060555934906, - 0.008511897176504135, - 0.021490387618541718, - -0.03275580704212189, - 0.015811150893568993, - 0.006363799795508385, - -0.013089841231703758, - -0.05089762806892395, - 0.012664316222071648, - 0.040065620094537735, - 0.0045433808118104935, - 0.018461642786860466, - -0.011409259401261806, - -0.08628358691930771, - -0.028506871312856674, - -0.043545424938201904, - 0.014133861288428307, - 0.014757659286260605, - -0.007810079492628574, - -0.05664723739027977, - 0.005982495844364166, - -0.031260378658771515, - -0.03412795811891556, - 0.005835369229316711, - 0.08807926625013351, - -0.07623422890901566, - 0.06397680193185806, - -0.008761722594499588, - -0.0024147694930434227, - -0.02402361109852791, - -0.039437536150217056, - 0.038130760192871094, - 0.03420870006084442, - 0.01828708127140999, - -0.08088166266679764, - 0.008070899173617363, - -0.058747030794620514, - -0.016414711251854897, - 0.007791649550199509, - 0.03728866949677467, - 0.011414555832743645, - -0.03592882305383682, - -0.10362247377634048, - 0.008158802054822445, - -0.059648364782333374, - -0.03001588210463524, - 0.05846205726265907, - 0.03796972706913948, - -0.029759153723716736, - 0.08839068561792374, - 0.015214415267109871, - 0.01153050921857357, - -0.044976428151130676, - -0.04810979217290878, - 0.02229764312505722, - 0.049450017511844635, - 0.05249151960015297, - 0.010856163688004017, - 0.02078171819448471, - 0.019478069618344307, - -0.013212203048169613, - 0.019681233912706375, - 0.05850540101528168, - 0.040312185883522034, - 0.012158304452896118, - 0.018736816942691803, - 0.033820632845163345, - 0.0789564847946167, - -0.03840504586696625, - -0.05302596464753151, - -0.011583568528294563, - 0.03829023614525795, - -0.030618302524089813, - 0.03171209990978241, - 0.03412092849612236, - 0.029437704011797905, - 0.01697186566889286, - -0.0162479430437088, - -0.019336581230163574, - -0.04806980863213539, - 0.04005665332078934, - -0.05400575324892998, - -0.053565315902233124, - -0.04512491077184677, - 0.06284303963184357, - 0.09372460842132568, - 0.003204282373189926, - -0.010787910781800747, - 0.007113994099199772, - 0.024702662602066994, - 0.002831178717315197, - -0.04153360798954964, - -0.005381220951676369, - 0.0162077397108078, - -0.06178746744990349, - 0.03063601441681385, - -0.07237537205219269, - 0.0566478967666626, - 0.0004073847085237503, - 0.04033561423420906, - 0.034208349883556366, - -0.03643691539764404, - -0.06485859304666519, - 0.00234314426779747, - 0.023937370628118515, - 0.01727699488401413, - 0.015712106600403786, - 0.0025768503546714783, - 0.02442970499396324, - -0.05173017829656601, - 0.06560733914375305, - 0.018253043293952942, - -0.062135741114616394, - -0.06955192238092422, - 0.019178681075572968, - -0.009437156841158867, - -0.0030983006581664085, - -0.017779942601919174, - -0.06672994792461395, - 0.031055737286806107, - 0.044334687292575836, - 0.007163724862039089, - -0.003793437033891678, - 0.04955937713384628, - 0.016003098338842392, - -0.03738771751523018 - ] - }, - "p245_314.wav": { - "name": "p245", - "embedding": [ - 0.058189090341329575, - 0.08328896015882492, - -0.019870830699801445, - 0.04033106565475464, - -0.05518024414777756, - 0.05683111771941185, - -0.14662623405456543, - 0.15226973593235016, - -0.017862394452095032, - 0.12585902214050293, - -0.04486176371574402, - 0.11680450290441513, - -0.0017784859519451857, - -0.18154475092887878, - -0.014797395095229149, - 0.05158832296729088, - -0.03777815029025078, - -0.03121890127658844, - -0.036893799901008606, - -0.019995711743831635, - 0.027361994609236717, - 0.04641467332839966, - 0.03780312463641167, - -0.011549239978194237, - 0.033320337533950806, - 0.06110489368438721, - -0.006291741039603949, - 0.04302414506673813, - 0.00817878358066082, - -0.05899279564619064, - -0.032528720796108246, - 0.09335144609212875, - -0.06489218771457672, - 0.0038668960332870483, - 0.04622727259993553, - -0.03809979557991028, - -0.020089540630578995, - -0.06341849267482758, - -0.026350483298301697, - 0.008132942020893097, - -0.03756358474493027, - 0.08730803430080414, - 0.04473651200532913, - -0.009048603475093842, - 0.04271477460861206, - 0.01764708012342453, - -0.014358106069266796, - -0.0492914542555809, - -0.11002098023891449, - 0.15273647010326385, - 0.07353895902633667, - 0.0044957115314900875, - -0.07629137486219406, - -0.04969843477010727, - 0.09433846175670624, - -0.012889936566352844, - -0.10728929936885834, - -0.04489409178495407, - 0.07027588039636612, - 0.14630010724067688, - -0.02927815169095993, - -0.028377022594213486, - 0.03878505155444145, - 0.11661815643310547, - 0.0734134167432785, - 0.0770699605345726, - 0.08848022669553757, - 0.1081513911485672, - -0.02446851134300232, - 0.027669355273246765, - 0.03946433216333389, - 0.06152413412928581, - 0.027478236705064774, - -0.006568976677954197, - 0.017857316881418228, - -0.013308866880834103, - -0.022153761237859726, - -0.035098083317279816, - -0.016449620947241783, - -0.007675682660192251, - -0.009231727570295334, - 0.013680900447070599, - 0.01681022346019745, - 0.05187910050153732, - -0.033181335777044296, - 0.058382004499435425, - 0.031433332711458206, - -0.020052604377269745, - 0.07001323252916336, - 0.017471078783273697, - 0.015135802328586578, - 0.05827289819717407, - -0.09021304547786713, - -0.07201912254095078, - 0.027981897816061974, - 0.008285891264677048, - 0.019174732267856598, - 0.0709538534283638, - 0.0399681031703949, - -0.019897790625691414, - 0.12926897406578064, - 0.049333423376083374, - -0.02260538749396801, - 0.021187951788306236, - -0.07937096059322357, - 0.12588301301002502, - 0.06677859276533127, - -0.018462661653757095, - 0.06658520549535751, - -0.0637638121843338, - 0.059569936245679855, - 0.04461345076560974, - -0.1420869529247284, - -0.06438659131526947, - 0.04538906738162041, - 0.024091191589832306, - -0.020170483738183975, - 0.14517489075660706, - 0.008319725282490253, - 0.05785977467894554, - 0.09981721639633179, - -0.08425429463386536, - -0.05074786767363548, - -0.0065811555832624435, - 0.0756840705871582, - -0.08425749838352203, - 0.057109665125608444, - 0.05769902467727661, - -0.03566598519682884, - 0.019076049327850342, - 0.07852409034967422, - -0.0024287491105496883, - 0.001566002145409584, - 0.020290274173021317, - -0.03629479557275772, - 0.03554604947566986, - -0.02274053357541561, - 0.00030595375574193895, - 0.020214663818478584, - 0.019848506897687912, - 0.05514785274863243, - -0.01920432038605213, - -0.033546604216098785, - -0.11244093626737595, - 0.012729580514132977, - 0.014519269578158855, - 0.09060710668563843, - -0.016394881531596184, - -0.025541752576828003, - -0.04367658495903015, - -0.06002841517329216, - 0.005690529011189938, - -0.005733620375394821, - 0.06822238862514496, - -0.02594325691461563, - 0.009213937446475029, - 0.09218312799930573, - 0.04258815944194794, - 0.012296490371227264, - -0.038743309676647186, - -0.028646690770983696, - 0.008165912702679634, - 0.06090899556875229, - -0.07143577933311462, - -0.05946118384599686, - -0.004967029672116041, - 0.028952833265066147, - -0.023998720571398735, - 0.05868818610906601, - 0.044262226670980453, - 0.029638690873980522, - 0.017709076404571533, - -0.0644371509552002, - 0.01606839708983898, - -0.08243139088153839, - -0.06460702419281006, - -0.011517878621816635, - 0.003940228838473558, - -0.05052667111158371, - 0.08392050862312317, - 0.03881645202636719, - 0.0732821524143219, - -0.014804787933826447, - -0.054264187812805176, - -0.07968159019947052, - 0.04153744876384735, - 0.060080237686634064, - -0.03577987104654312, - 0.02996356412768364, - 0.05711451917886734, - -0.030609674751758575, - 0.03967222571372986, - 0.06678580492734909, - 0.07600799947977066, - -0.026193827390670776, - 0.006314205937087536, - -0.07750841230154037, - 0.08896313607692719, - 0.09156018495559692, - -0.09196722507476807, - -0.07050235569477081, - -0.01968182437121868, - -0.07564805448055267, - 0.02069227211177349, - -0.017966702580451965, - 0.01135404221713543, - 0.03758442401885986, - 0.0012297378852963448, - -0.10626548528671265, - -0.09850363433361053, - 0.08135496824979782, - -0.08703020215034485, - 0.008375107310712337, - -0.08168002218008041, - 0.03508300334215164, - 0.10222812741994858, - 0.03336772322654724, - -0.016128789633512497, - -0.039159901440143585, - 0.04077637940645218, - -0.01705327443778515, - 0.023092731833457947, - 0.07385499775409698, - 0.04902614280581474, - -0.12242518365383148, - 0.003336608875542879, - -0.054648544639348984, - 0.04984314367175102, - -0.04390290379524231, - 0.14673185348510742, - 0.027665581554174423, - -0.04729912430047989, - -0.09152021259069443, - 0.040928665548563004, - -0.024485599249601364, - 0.05533696338534355, - 0.018295910209417343, - 0.060188330709934235, - 0.05471951887011528, - -0.06382420659065247, - 0.10541071742773056, - 0.0420050248503685, - -0.040507327765226364, - -0.07317264378070831, - -0.05019377917051315, - -0.033423732966184616, - 0.03914516419172287, - 0.02516632340848446, - -0.09057886898517609, - -0.02471725456416607, - 0.026833143085241318, - -0.015160108916461468, - 0.06940527260303497, - 0.13769495487213135, - 0.06705563515424728, - -0.1282826066017151 - ] - }, - "p245_084.wav": { - "name": "p245", - "embedding": [ - 0.051604341715574265, - 0.09811769425868988, - -0.014263994991779327, - 0.0610053651034832, - -0.0416816845536232, - 0.08750665187835693, - -0.12090042233467102, - 0.12208235263824463, - -0.03654148057103157, - 0.14760874211788177, - -0.07977951318025589, - 0.11291170120239258, - -0.02385380119085312, - -0.1708386391401291, - -0.02671956829726696, - 0.05178339406847954, - -0.026934895664453506, - 0.00409318134188652, - -0.02340730093419552, - 0.0346224382519722, - 0.03688936308026314, - 0.018883828073740005, - 0.0432685948908329, - -0.025522038340568542, - 0.017313934862613678, - 0.04718276485800743, - 0.010341386310756207, - 0.07456313073635101, - 0.039054397493600845, - -0.05054716020822525, - -0.04417014122009277, - 0.14093933999538422, - -0.0545610673725605, - 0.032919444143772125, - 0.0736430212855339, - 0.001354882726445794, - -0.0376882366836071, - -0.04634205996990204, - 0.019827060401439667, - -0.026523705571889877, - -0.04861428216099739, - 0.06439264863729477, - 0.02031162567436695, - -0.008433395996689796, - 0.05738072469830513, - 0.014285392127931118, - -0.03192329779267311, - -0.03650354593992233, - -0.0944942757487297, - 0.1373983472585678, - 0.06005046144127846, - -0.010155048221349716, - -0.059394270181655884, - -0.06725683808326721, - 0.07570242136716843, - 0.011265772394835949, - -0.11842174082994461, - -0.06226905807852745, - 0.08579135686159134, - 0.14969249069690704, - 0.002429233631119132, - -0.020549530163407326, - 0.0024186880327761173, - 0.11962328106164932, - 0.0493924543261528, - 0.13044627010822296, - 0.056852683424949646, - 0.10640191286802292, - 0.022912979125976562, - 0.07021445035934448, - 0.05065598338842392, - 0.04676847159862518, - 0.03733495622873306, - -0.012725704349577427, - 0.03820490837097168, - -0.019375376403331757, - -0.013355287723243237, - 0.02856229618191719, - -0.00545619847252965, - -0.02089039795100689, - -0.006917298771440983, - -0.0023123316932469606, - 0.006824534386396408, - 0.015750303864479065, - -0.02445332705974579, - 0.05177246406674385, - 0.024833135306835175, - -0.0024375231005251408, - 0.05845513567328453, - 0.04720700904726982, - -0.004579523578286171, - 0.048411156982183456, - -0.07170287519693375, - -0.10785875469446182, - 0.02008138969540596, - -0.0035158831160515547, - 0.022593645378947258, - 0.07504834234714508, - 0.020558828487992287, - -0.0062482766807079315, - 0.08665294200181961, - 0.046918921172618866, - 0.002952472073957324, - 0.05231308937072754, - -0.09236903488636017, - 0.13568313419818878, - 0.05673353374004364, - -0.002633399562910199, - 0.05058702081441879, - -0.05336853116750717, - 0.09097936749458313, - 0.08665481209754944, - -0.13190144300460815, - -0.05041259527206421, - 0.02217324823141098, - -0.02286217175424099, - -0.029726730659604073, - 0.11200840026140213, - 0.004216296132653952, - 0.00020546141604427248, - 0.10521154850721359, - -0.10657675564289093, - -0.07603424042463303, - -0.028257951140403748, - 0.04241570830345154, - -0.1027575209736824, - 0.056877363473176956, - 0.01674332097172737, - -0.020381741225719452, - -0.02296331711113453, - 0.09616480767726898, - -0.015201859176158905, - 0.017796436324715614, - 0.039782628417015076, - -0.05108533799648285, - 0.037633053958415985, - -0.055824849754571915, - 0.02805270068347454, - 0.04100172221660614, - 0.013236277736723423, - 0.06155730411410332, - -0.009169825352728367, - -0.009187893010675907, - -0.09479092806577682, - -0.0055715106427669525, - 0.07103476673364639, - 0.05320173129439354, - -0.012456915341317654, - -0.03242434561252594, - -0.028705483302474022, - -0.07609817385673523, - 0.05597716569900513, - -0.02447592467069626, - 0.06675741076469421, - 0.006179492454975843, - -0.017926599830389023, - 0.09886594116687775, - 0.000275897269602865, - 0.013314693234860897, - -0.08470045775175095, - -0.038066793233156204, - 0.03989410772919655, - 0.05198024585843086, - -0.1146978810429573, - -0.054715439677238464, - 0.011165555566549301, - -0.0004064561799168587, - -0.02484569512307644, - 0.016470544040203094, - 0.06268839538097382, - 0.023333106189966202, - 0.03522251173853874, - -0.057563938200473785, - -0.007925435900688171, - -0.10611504316329956, - -0.07634145766496658, - -0.03927495330572128, - -0.031650058925151825, - -0.008765924721956253, - 0.07862423360347748, - 0.00533115491271019, - 0.023257698863744736, - 0.0031812211964279413, - -0.049759391695261, - -0.08077029883861542, - 0.07584704458713531, - 0.06460115313529968, - 0.013984402641654015, - 0.07015544921159744, - 0.024263303726911545, - -0.059308186173439026, - 0.04224339872598648, - 0.03889017552137375, - 0.1080479845404625, - -0.02980426885187626, - -0.0014536608941853046, - -0.10237404704093933, - 0.07834376394748688, - 0.12810739874839783, - -0.10312961786985397, - -0.09728986769914627, - -0.008417700417339802, - -0.06349428743124008, - 0.03650590032339096, - -0.06534174829721451, - -0.022363172844052315, - 0.048402391374111176, - -0.03054070472717285, - -0.0976184755563736, - -0.11152041703462601, - 0.09158995002508163, - -0.08530271798372269, - -0.028057396411895752, - -0.07118166983127594, - 0.05288759246468544, - 0.05012667179107666, - 0.03095475398004055, - -0.06199873983860016, - 0.013133074156939983, - 0.07272883504629135, - -0.061854228377342224, - -0.009538339450955391, - 0.042992960661649704, - 0.01094140112400055, - -0.09632518142461777, - 0.014837837778031826, - -0.059064172208309174, - 0.049364279955625534, - -0.09104690700769424, - 0.16856735944747925, - -0.036067042499780655, - -0.06645169109106064, - -0.06130995973944664, - 0.05301263928413391, - -0.008653507567942142, - 0.00774807995185256, - 0.04118992015719414, - 0.05217945948243141, - 0.010038829408586025, - -0.0882728099822998, - 0.1309017390012741, - 0.0032823383808135986, - 0.004697061609476805, - -0.06261685490608215, - -0.03354364633560181, - -0.07051791995763779, - 0.039884086698293686, - 0.0049809785559773445, - -0.11908350884914398, - -0.0051313587464392185, - 0.04084852710366249, - -0.010133069939911366, - 0.04241776093840599, - 0.14744196832180023, - 0.03705946356058121, - -0.09257277101278305 - ] - }, - "p245_381.wav": { - "name": "p245", - "embedding": [ - 0.04341677948832512, - 0.1073475107550621, - -0.008771320804953575, - 0.025793597102165222, - -0.06034603342413902, - 0.05284808203577995, - -0.12969771027565002, - 0.15179681777954102, - -0.03252333030104637, - 0.13070034980773926, - -0.07093685865402222, - 0.12346307933330536, - -0.02149377390742302, - -0.1783321499824524, - -0.029719378799200058, - 0.05239094793796539, - -0.042203910648822784, - -0.023475302383303642, - -0.03338625654578209, - -0.02097449079155922, - 0.04296841844916344, - 0.04079088196158409, - 0.03570307791233063, - 0.006935593672096729, - 0.019928239285945892, - 0.06358444690704346, - 0.012185068801045418, - 0.05421772599220276, - 0.024306144565343857, - -0.05819404125213623, - -0.044390082359313965, - 0.10158322751522064, - -0.03824760019779205, - 0.016141919419169426, - 0.05444764718413353, - -0.028317561373114586, - 0.0009654347086325288, - -0.05414428561925888, - -0.018788300454616547, - 0.010425617918372154, - -0.03227647393941879, - 0.07732071727514267, - 0.033353567123413086, - -0.006563347764313221, - 0.04413064569234848, - 0.03297431766986847, - -0.01601649448275566, - -0.04956702142953873, - -0.10220091789960861, - 0.16640128195285797, - 0.08102753013372421, - -0.01479036919772625, - -0.061633482575416565, - -0.06500162929296494, - 0.09764530509710312, - -0.019478721544146538, - -0.11207052320241928, - -0.03911671042442322, - 0.08399231731891632, - 0.14033445715904236, - -0.020377619192004204, - -0.03329949826002121, - 0.032989464700222015, - 0.1351226419210434, - 0.03600941225886345, - 0.08121860027313232, - 0.07209289073944092, - 0.09634991735219955, - -0.03067067079246044, - 0.02809285745024681, - 0.036013782024383545, - 0.06857641786336899, - 0.024744777008891106, - -0.0057105920277535915, - 0.023424573242664337, - -0.013522958382964134, - -0.013475018553435802, - 0.0030408918391913176, - -0.02372049167752266, - -0.017203763127326965, - -0.023289095610380173, - 0.020534060895442963, - -0.004774767439812422, - 0.014394199475646019, - -0.021375581622123718, - 0.07199624180793762, - 0.01304722111672163, - 0.0014974919613450766, - 0.07224538922309875, - 0.030003635212779045, - 0.021132756024599075, - 0.05846944451332092, - -0.06949639320373535, - -0.08348613232374191, - 0.025071745738387108, - 0.002429547719657421, - 0.025900837033987045, - 0.07609982788562775, - 0.028654366731643677, - -0.018264619633555412, - 0.1265159696340561, - 0.06027061864733696, - -0.017972778528928757, - 0.025379231199622154, - -0.0926315188407898, - 0.13038262724876404, - 0.07949034869670868, - -0.01922530308365822, - 0.05550000071525574, - -0.05309709161520004, - 0.07634508609771729, - 0.048877447843551636, - -0.13367250561714172, - -0.07862475514411926, - 0.02520143985748291, - 0.02739669941365719, - -0.021427828818559647, - 0.11429973691701889, - -0.006505858153104782, - 0.04265352711081505, - 0.10180032253265381, - -0.07890903949737549, - -0.056678272783756256, - -0.021216150373220444, - 0.05551435053348541, - -0.08390554040670395, - 0.057996638119220734, - 0.06116005405783653, - -0.02618424966931343, - 0.014149047434329987, - 0.07943625003099442, - -0.00888913869857788, - 0.009824625216424465, - 0.024802178144454956, - -0.05356365442276001, - 0.013201368972659111, - -0.03795601427555084, - 0.003438686951994896, - 0.023607995361089706, - 0.04340258240699768, - 0.04475387558341026, - -0.005942606832832098, - -0.03690020367503166, - -0.11095878481864929, - 0.01246271189302206, - 0.023430785164237022, - 0.06750155240297318, - -0.0032700037118047476, - -0.03140381723642349, - -0.03426390513777733, - -0.05181468650698662, - -0.004592780023813248, - -0.004905383102595806, - 0.06533487141132355, - -0.03434694558382034, - 0.00934026949107647, - 0.0926489531993866, - 0.03468146175146103, - -0.006690116599202156, - -0.05517193675041199, - -0.03978569060564041, - 0.015130773186683655, - 0.04002753272652626, - -0.07221086323261261, - -0.0672585517168045, - -0.006059734150767326, - 0.034211110323667526, - -0.016887914389371872, - 0.05225538834929466, - 0.046110399067401886, - 0.01715187355875969, - 0.03540686517953873, - -0.06373138725757599, - 0.021797746419906616, - -0.09525369107723236, - -0.07104472070932388, - -0.016137883067131042, - -0.00022903134231455624, - -0.028076112270355225, - 0.07450765371322632, - 0.02187679521739483, - 0.05859164148569107, - 0.0001997953950194642, - -0.05988259240984917, - -0.07644517719745636, - 0.05538828298449516, - 0.07648622989654541, - -0.0015153571730479598, - 0.060034848749637604, - 0.05793853849172592, - -0.03835876286029816, - 0.06262432038784027, - 0.05504261702299118, - 0.09003640711307526, - -0.022267840802669525, - 0.01021746639162302, - -0.07668166607618332, - 0.06484633684158325, - 0.08177302032709122, - -0.10056883096694946, - -0.08299553394317627, - -0.03199594467878342, - -0.0659000426530838, - 0.037376366555690765, - -0.015332475304603577, - 0.004760111216455698, - 0.034978121519088745, - 0.0030747801065444946, - -0.09585627168416977, - -0.0832873210310936, - 0.08112706243991852, - -0.07522360235452652, - 0.0017717391019687057, - -0.06651327013969421, - 0.04485924169421196, - 0.11069697141647339, - 0.03757959231734276, - -0.030086612328886986, - -0.03303404897451401, - 0.05046907067298889, - -0.03137282282114029, - 0.00520274369046092, - 0.039818476885557175, - 0.04454108700156212, - -0.10190726816654205, - 0.024199089035391808, - -0.07636377215385437, - 0.04972470551729202, - -0.05510641634464264, - 0.1527385711669922, - 0.016285350546240807, - -0.05682217329740524, - -0.08974766731262207, - 0.04562423378229141, - -0.03084569051861763, - 0.04445897042751312, - 0.019047817215323448, - 0.047827742993831635, - 0.03978996351361275, - -0.07643681764602661, - 0.12102888524532318, - 0.0374063216149807, - -0.0512007437646389, - -0.06802412867546082, - -0.039206959307193756, - -0.0369035080075264, - 0.032420527189970016, - 0.030841780826449394, - -0.08794756978750229, - -0.04251791536808014, - 0.016675978899002075, - -0.016585037112236023, - 0.08672520518302917, - 0.14482924342155457, - 0.05615047737956047, - -0.12799817323684692 - ] - }, - "p245_213.wav": { - "name": "p245", - "embedding": [ - 0.06063387542963028, - 0.09088286012411118, - -0.02059152163565159, - 0.032020073384046555, - -0.05988572537899017, - 0.0723220556974411, - -0.12940607964992523, - 0.12636318802833557, - -0.045298121869564056, - 0.14331963658332825, - -0.07684795558452606, - 0.12841464579105377, - -0.012536706402897835, - -0.1828201413154602, - -0.044974327087402344, - 0.051794108003377914, - -0.04740993306040764, - -0.041843660175800323, - -0.02893747203052044, - -0.02371636964380741, - 0.045474354177713394, - 0.03983817994594574, - 0.021494602784514427, - 0.026943404227495193, - 0.019927185028791428, - 0.07009950280189514, - -0.016969742253422737, - 0.030348345637321472, - 0.007913130335509777, - -0.05619708448648453, - -0.04856492951512337, - 0.11403857171535492, - -0.04882218688726425, - 0.02130783721804619, - 0.04543076828122139, - -0.002714884001761675, - 0.0006889792857691646, - -0.07370182126760483, - -0.024890892207622528, - -0.005919487681239843, - -0.04606601595878601, - 0.07007649540901184, - 0.030724164098501205, - -0.018031666055321693, - 0.03520209714770317, - 0.012746227905154228, - -0.016881104558706284, - -0.049773335456848145, - -0.0956871286034584, - 0.15483318269252777, - 0.06869284808635712, - -0.0011774423765018582, - -0.0601097047328949, - -0.05916410684585571, - 0.10911138355731964, - -0.015386508777737617, - -0.11659061163663864, - -0.027826296165585518, - 0.08022873848676682, - 0.165179044008255, - -0.036213479936122894, - -0.03594476357102394, - 0.02946079894900322, - 0.1263713389635086, - 0.05523587018251419, - 0.09272502362728119, - 0.08768778294324875, - 0.11858895421028137, - -0.020024627447128296, - 0.008001770824193954, - 0.06450255215167999, - 0.07732878625392914, - 0.07727347314357758, - -0.024613752961158752, - 0.025937147438526154, - 0.000599780585616827, - -0.020001614466309547, - -0.001691059791482985, - -0.03903985023498535, - -0.013570407405495644, - -0.020673740655183792, - -0.006278165150433779, - 0.008135601878166199, - 0.0234671700745821, - -0.0320683978497982, - 0.05334707722067833, - 0.048380665481090546, - -0.022934040054678917, - 0.059396419674158096, - 0.04593002051115036, - 0.013499906286597252, - 0.06337950378656387, - -0.08464644849300385, - -0.08219234645366669, - 0.04468477889895439, - 0.011790798977017403, - 0.022599758580327034, - 0.08553504943847656, - 0.048905011266469955, - -0.019148368388414383, - 0.1093948557972908, - 0.044121526181697845, - -0.0097575131803751, - 0.015011338517069817, - -0.09894067049026489, - 0.13299092650413513, - 0.09569236636161804, - -0.032668206840753555, - 0.03816305845975876, - -0.050188012421131134, - 0.08525186777114868, - 0.0781351774930954, - -0.14882831275463104, - -0.06755466014146805, - 0.03740571439266205, - 0.014290702529251575, - -0.0098529988899827, - 0.10992084443569183, - -0.007624533027410507, - 0.036408040672540665, - 0.09409704059362411, - -0.07637786865234375, - -0.052537258714437485, - -0.034368086606264114, - 0.04037864878773689, - -0.09293404221534729, - 0.06529705226421356, - 0.04387310892343521, - 7.978349458426237e-06, - 0.0015003073494881392, - 0.0818190947175026, - -0.015662573277950287, - -0.02210635133087635, - 0.014920007437467575, - -0.04609011486172676, - 0.01984061487019062, - -0.018978284671902657, - 0.006479289848357439, - 0.03024590015411377, - 0.02935195341706276, - 0.03965607285499573, - -0.01035943441092968, - -0.021309878677129745, - -0.11072330176830292, - 0.02414010278880596, - 0.033938195556402206, - 0.08211563527584076, - -0.0038225895259529352, - -0.026569539681077003, - -0.03467546030879021, - -0.06863697618246078, - 0.02942180633544922, - -0.0234998669475317, - 0.06906381249427795, - -0.009515669196844101, - 0.009773293510079384, - 0.09443320333957672, - 0.028624791651964188, - -0.005111118778586388, - -0.051091037690639496, - -0.021682217717170715, - 0.019416645169258118, - 0.06139908358454704, - -0.08284991979598999, - -0.07208112627267838, - -0.0005695982254110277, - 0.025722220540046692, - -0.02664319798350334, - 0.05433739349246025, - 0.04429156333208084, - 0.015179401263594627, - 0.02893536165356636, - -0.0710892453789711, - 0.006091423332691193, - -0.11605669558048248, - -0.06645922362804413, - -0.016112936660647392, - -0.02972782775759697, - -0.005067059304565191, - 0.0714607834815979, - 0.023215025663375854, - 0.03936361148953438, - -0.02654155343770981, - -0.07252992689609528, - -0.07677987217903137, - 0.06006006896495819, - 0.06129022315144539, - 0.007644683122634888, - 0.035955075174570084, - 0.05441352725028992, - -0.022394627332687378, - 0.05596000701189041, - 0.06422705948352814, - 0.10887253284454346, - -0.029055092483758926, - 0.02862909436225891, - -0.06333247572183609, - 0.09343652427196503, - 0.08779172599315643, - -0.08787742257118225, - -0.0927564799785614, - -0.031325407326221466, - -0.05740939825773239, - 0.03480291739106178, - -0.03157632425427437, - -0.0014722924679517746, - 0.024180792272090912, - -0.008458137512207031, - -0.10711413621902466, - -0.08941973745822906, - 0.09954413771629333, - -0.07037326693534851, - -0.00012685442925430834, - -0.09443262219429016, - 0.050966449081897736, - 0.09769462049007416, - 0.029412291944026947, - -0.0374615453183651, - 0.007662616670131683, - 0.04703688994050026, - -0.041162941604852676, - 0.0004979684017598629, - 0.04832858592271805, - 0.03411160409450531, - -0.12340855598449707, - -0.008817218244075775, - -0.0711788758635521, - 0.05617929995059967, - -0.057425230741500854, - 0.16144156455993652, - 0.003938300535082817, - -0.05674717202782631, - -0.0717567503452301, - 0.05079909786581993, - -0.010037404485046864, - 0.05019071698188782, - 0.04167948290705681, - 0.07027153670787811, - 0.023701779544353485, - -0.07378491014242172, - 0.11376636475324631, - 0.047560617327690125, - -0.0373103991150856, - -0.07237299531698227, - -0.04365935176610947, - -0.041462577879428864, - 0.024233229458332062, - 0.009656170383095741, - -0.09177235513925552, - -0.01771819218993187, - 0.026168525218963623, - -0.013938544318079948, - 0.07142147421836853, - 0.14851415157318115, - 0.0678894966840744, - -0.11533859372138977 - ] - }, - "p245_199.wav": { - "name": "p245", - "embedding": [ - 0.0515253059566021, - 0.0781516581773758, - 0.015591202303767204, - -0.005454557947814465, - -0.03741706162691116, - 0.09951154887676239, - -0.07629392296075821, - 0.08876053988933563, - -0.013808196410536766, - 0.055125392973423004, - -0.06339573860168457, - 0.07058443129062653, - -0.002876791637390852, - -0.15375757217407227, - -0.02818797528743744, - 0.054943330585956573, - -0.052403684705495834, - -0.007417659275233746, - -0.037122081965208054, - -0.022135278210043907, - -0.0006558820605278015, - 0.017426174134016037, - 0.05053384602069855, - 0.00025323405861854553, - 0.04605891928076744, - 0.03659071773290634, - 0.005085747689008713, - 0.03032520040869713, - 0.0009314244380220771, - -0.029023315757513046, - -0.037253063172101974, - 0.0771118551492691, - -0.04358398914337158, - -0.001609722850844264, - 0.051771130412817, - -0.0059588197618722916, - 0.04467284679412842, - -0.09088999032974243, - -0.040643706917762756, - 0.030002977699041367, - -0.057238172739744186, - 0.08236318826675415, - 0.06345027685165405, - 0.013683294877409935, - 0.03155011683702469, - 0.013654729351401329, - -0.013940221630036831, - -0.047814320772886276, - -0.09062564373016357, - 0.14417046308517456, - 0.030901728197932243, - 0.016144953668117523, - -0.0670660138130188, - -0.037469156086444855, - 0.08255068957805634, - -0.01054874062538147, - -0.06896492838859558, - -0.016996651887893677, - 0.060067903250455856, - 0.09527142345905304, - 0.025904245674610138, - -0.013279530219733715, - 0.017953775823116302, - 0.08883076906204224, - 0.014384515583515167, - 0.04394923895597458, - 0.07358303666114807, - 0.0882086306810379, - 0.010242545045912266, - 0.016005199402570724, - 0.06312528252601624, - 0.030802391469478607, - 0.017024725675582886, - -0.018670205026865005, - 0.02225683629512787, - -0.012782796286046505, - -0.01938924752175808, - -0.004006456583738327, - -0.01123197190463543, - 0.00039204536005854607, - 0.025888491421937943, - 0.02536902390420437, - 0.014358571730554104, - 0.028790762647986412, - -0.032772935926914215, - 0.0362735390663147, - -0.01699935644865036, - 0.07525705546140671, - 0.07198284566402435, - 0.0420040488243103, - 0.0051080710254609585, - 0.02759743109345436, - -0.03666677698493004, - -0.0857694074511528, - 0.006321651395410299, - 0.029647931456565857, - 0.0049115633592009544, - 0.02932656928896904, - 0.015420947223901749, - -0.03279978036880493, - 0.09893001616001129, - 0.027584057301282883, - -0.009622467681765556, - 0.016130313277244568, - -0.07808174192905426, - 0.06371686607599258, - 0.05084025859832764, - 0.014175447635352612, - 0.05897212028503418, - -0.025428589433431625, - 0.06895413994789124, - 0.07201745361089706, - -0.10541494190692902, - -0.03378060460090637, - 0.022057391703128815, - 0.019664252176880836, - 0.028965357691049576, - 0.11104699224233627, - -0.01027052104473114, - 0.030104324221611023, - 0.05868934094905853, - -0.06381748616695404, - -0.019420616328716278, - 0.029764844104647636, - 0.01786114275455475, - -0.006150787230581045, - -0.007064702920615673, - 0.029903193935751915, - -0.0004061249492224306, - -0.03964140638709068, - 0.0388387069106102, - 0.016306452453136444, - 0.007765031419694424, - -0.01647040620446205, - -0.000404862075811252, - 0.02117948979139328, - -0.011917376890778542, - -0.016646403819322586, - 0.05356692522764206, - 0.05714408680796623, - 0.007617838680744171, - 0.029117939993739128, - -0.05081919953227043, - -0.09269057959318161, - -0.01836255006492138, - -0.004589974880218506, - 0.045294612646102905, - 0.004566108342260122, - -0.030165761709213257, - -0.05856022983789444, - -0.01573970727622509, - 0.01829385571181774, - -0.0027406129520386457, - 0.05774373933672905, - 0.05793432518839836, - -0.03559926897287369, - 0.05678500235080719, - 0.004939840640872717, - 0.001797561882995069, - -0.026711363345384598, - -0.052105896174907684, - 0.010459581390023232, - 0.04185253009200096, - -0.03387986123561859, - -0.045205067843198776, - 0.014369356445968151, - -0.03208669275045395, - -0.01850346103310585, - 0.008973083458840847, - 0.039684563875198364, - 0.00264127179980278, - -0.0026501468382775784, - -0.07483922690153122, - 0.012152040377259254, - -0.06846988201141357, - -0.05148279294371605, - 0.041076380759477615, - 0.028126057237386703, - -0.015078878030180931, - 0.0859799012541771, - 0.0395595021545887, - 0.03200735151767731, - -0.02169964089989662, - -0.046125270426273346, - 0.0105536337941885, - 0.059758510440588, - 0.04317406937479973, - 0.011927935294806957, - 0.046162813901901245, - 0.02862430177628994, - -0.021896351128816605, - 0.0499800369143486, - 0.040697354823350906, - 0.052120983600616455, - -0.0375836044549942, - 0.00671741645783186, - 0.003652925370261073, - 0.0829562097787857, - 0.02082514390349388, - -0.07640743255615234, - -0.05182170122861862, - 0.01458804216235876, - -0.027261679992079735, - 0.022989584133028984, - -0.005417493637651205, - 0.012950967065989971, - 0.021657045930624008, - -0.01648538000881672, - -0.06083444878458977, - -0.08671491593122482, - 0.03897317871451378, - -0.05076318979263306, - -0.016939355060458183, - -0.03590865433216095, - 0.04006796330213547, - 0.10057501494884491, - 0.006605468690395355, - 0.004110180772840977, - 0.0146378418430686, - 0.01325188484042883, - -0.021154653280973434, - -0.03682897612452507, - 0.017494268715381622, - 0.020619060844182968, - -0.08293524384498596, - 0.010754333809018135, - -0.05873020738363266, - 0.0646713599562645, - 0.005118402652442455, - 0.11330229043960571, - 0.034359484910964966, - -0.028638577088713646, - -0.060726698487997055, - 0.0177301112562418, - -0.015682987868785858, - 0.033456556499004364, - 2.7138739824295044e-05, - 0.02812274917960167, - 0.04326074570417404, - -0.021995989605784416, - 0.08204948157072067, - 0.03323245048522949, - -0.06520384550094604, - -0.035167545080184937, - 0.009964263066649437, - -0.019823363050818443, - 0.015459887683391571, - -0.018587229773402214, - -0.059443216770887375, - 0.01209951937198639, - 0.0385206863284111, - 0.010227099061012268, - 0.029104044660925865, - 0.08205370604991913, - 0.0484386645257473, - -0.052750274538993835 - ] - }, - "p245_411.wav": { - "name": "p245", - "embedding": [ - 0.059642016887664795, - 0.07965384423732758, - -0.017480334267020226, - 0.032382380217313766, - -0.07022543251514435, - 0.06445472687482834, - -0.10327498614788055, - 0.13157373666763306, - -0.036996614187955856, - 0.1204289123415947, - -0.07153010368347168, - 0.155553936958313, - 0.010817132890224457, - -0.16849181056022644, - -0.04421375319361687, - 0.021253231912851334, - -0.028402701020240784, - -0.012568382546305656, - -0.030665863305330276, - -0.03868956118822098, - 0.06314156204462051, - 0.046973612159490585, - 0.06632973253726959, - -0.01128307543694973, - 0.02419472299516201, - 0.06172002851963043, - 0.015814218670129776, - 0.06072750687599182, - 0.035288579761981964, - -0.08502109348773956, - -0.062420718371868134, - 0.08902939409017563, - -0.038452401757240295, - 0.008308952674269676, - 0.043627720326185226, - -0.027807191014289856, - 0.009850320406258106, - -0.06962423026561737, - -0.04141726344823837, - 0.022096317261457443, - -0.02695256471633911, - 0.06750936806201935, - 0.018040001392364502, - -0.05057733878493309, - 0.05104286968708038, - -0.006933089345693588, - -0.017996080219745636, - -0.03484554588794708, - -0.1068103164434433, - 0.14827364683151245, - 0.06700162589550018, - 0.006629972718656063, - -0.07882218807935715, - -0.06683379411697388, - 0.11319448798894882, - -0.01637943647801876, - -0.09796091169118881, - -0.0016170380404219031, - 0.04051607847213745, - 0.1608947515487671, - -0.026370510458946228, - -0.03198838233947754, - 0.057372357696294785, - 0.08653994649648666, - 0.0500403568148613, - 0.06373332440853119, - 0.11838296055793762, - 0.08643607795238495, - -0.020476695150136948, - 0.043690260499715805, - 0.0178915336728096, - 0.11327745765447617, - 0.04557464271783829, - -0.013138031587004662, - 0.025271516293287277, - 0.0052980175241827965, - -0.028383862227201462, - -0.010867412202060223, - -0.034048523753881454, - -0.011182970367372036, - -0.009061112999916077, - 0.008970201015472412, - 0.04037800058722496, - 0.012237053364515305, - -0.06042659282684326, - 0.07673083990812302, - 0.003307380247861147, - -0.013342324644327164, - 0.03753608465194702, - 0.01959865540266037, - 0.002677563112229109, - 0.05220995843410492, - -0.07945673167705536, - -0.11511530727148056, - 0.01810387335717678, - 0.006329129450023174, - 0.009757252410054207, - 0.08746608346700668, - 0.05137185379862785, - -0.023995978757739067, - 0.1150900349020958, - 0.07158038765192032, - -0.02294269949197769, - 0.031177883967757225, - -0.06514222919940948, - 0.09730362147092819, - 0.1279926598072052, - -0.017209332436323166, - 0.0668187066912651, - -0.06833834946155548, - 0.09236054122447968, - 0.05210068076848984, - -0.13655820488929749, - -0.08375281095504761, - 0.01709597557783127, - 0.007149823009967804, - 0.02225184068083763, - 0.10935956239700317, - -0.02106388472020626, - 0.06052929908037186, - 0.09163307398557663, - -0.07616027444601059, - -0.047462575137615204, - -0.043469011783599854, - 0.05833851546049118, - -0.059093162417411804, - 0.07242715358734131, - 0.027418464422225952, - -0.000650362460874021, - -0.013235678896307945, - 0.056720178574323654, - -0.03717149794101715, - -0.001577108516357839, - 0.037457406520843506, - -0.05954141914844513, - 0.008438026532530785, - -0.03850235044956207, - -0.013227644376456738, - 0.06570252031087875, - 0.04044290632009506, - 0.04002637788653374, - -0.0018446396570652723, - -0.022247005254030228, - -0.10768553614616394, - 0.017005234956741333, - 0.028609465807676315, - 0.06350462883710861, - -0.004099434241652489, - -0.046471428126096725, - -0.040874313563108444, - -0.06923195719718933, - 0.02761455439031124, - -0.005744852125644684, - 0.06792791187763214, - -0.02293807826936245, - 0.03558617830276489, - 0.0674629658460617, - 0.024610860273241997, - -0.011549009941518307, - -0.026513127610087395, - -0.02507929317653179, - 0.002460843650624156, - 0.04694586619734764, - -0.05512771010398865, - -0.08525311946868896, - -0.02097456157207489, - 0.009609050117433071, - -0.039024487137794495, - 0.049171432852745056, - 0.04547758400440216, - 0.013903401792049408, - 0.044464945793151855, - -0.07740233838558197, - -0.011149285361170769, - -0.12093240022659302, - -0.05409657210111618, - -0.015307456254959106, - -0.019875865429639816, - -0.021997680887579918, - 0.0676405131816864, - 0.049756284803152084, - 0.05250708758831024, - -0.0076362574473023415, - -0.044720955193042755, - -0.07624244689941406, - 0.034617550671100616, - 0.05160931497812271, - 0.027246862649917603, - 0.050259172916412354, - 0.07049086689949036, - -0.011070910841226578, - 0.08765627443790436, - 0.07695408165454865, - 0.054932139813899994, - -0.0009012601221911609, - 0.000523355498444289, - -0.06777406483888626, - 0.10285179316997528, - 0.09677831828594208, - -0.0737035721540451, - -0.10990612208843231, - -0.04993361234664917, - -0.10232850164175034, - 0.052597083151340485, - -0.013450665399432182, - 0.0073304190300405025, - 0.04062133654952049, - 0.004405973479151726, - -0.1042993888258934, - -0.08016376197338104, - 0.10289587825536728, - -0.0550079345703125, - -0.01939805969595909, - -0.0683455765247345, - 0.026967894285917282, - 0.11921452730894089, - 0.003333637025207281, - -0.012289858423173428, - -0.013178294524550438, - 0.05088487267494202, - -0.041406817734241486, - -0.003390500321984291, - 0.037062354385852814, - 0.027096610516309738, - -0.11242251098155975, - 0.016056720167398453, - -0.06145979464054108, - 0.036496102809906006, - -0.057857006788253784, - 0.1338413655757904, - 0.0107206329703331, - -0.053046815097332, - -0.08198243379592896, - 0.08529528975486755, - -0.017694635316729546, - 0.04824059456586838, - 0.04041486233472824, - 0.05968394875526428, - 0.010600298643112183, - -0.12796449661254883, - 0.10162600874900818, - 0.041107047349214554, - -0.06083913892507553, - -0.09762345999479294, - -0.05575675889849663, - -0.017922712489962578, - 0.018007460981607437, - 0.021308384835720062, - -0.049284156411886215, - -0.025588875636458397, - 0.011685170233249664, - -0.010148978792130947, - 0.0561300590634346, - 0.1417427659034729, - 0.05263352394104004, - -0.11148035526275635 - ] - }, - "p245_388.wav": { - "name": "p245", - "embedding": [ - 0.04279913753271103, - 0.07683821767568588, - -0.026776723563671112, - 0.07242654263973236, - -0.041509196162223816, - 0.08325468748807907, - -0.11956910789012909, - 0.0950818732380867, - -0.06007285416126251, - 0.13210678100585938, - -0.05847552418708801, - 0.08813778311014175, - -0.026149384677410126, - -0.166579008102417, - -0.03903099149465561, - 0.06916274130344391, - -0.06989790499210358, - -0.03631317615509033, - -0.06221272796392441, - 0.021014785394072533, - 0.02736428566277027, - 0.026379816234111786, - 0.05020748823881149, - -0.01987309381365776, - 0.02562793344259262, - 0.04216475039720535, - 0.004907548427581787, - 0.06414937973022461, - 0.034772150218486786, - -0.05441029369831085, - -0.02326892502605915, - 0.11783410608768463, - -0.03291363641619682, - 0.00463519711047411, - 0.037077855318784714, - 0.017232390120625496, - -0.006739448290318251, - -0.07905983924865723, - -0.017322368919849396, - -0.014660489745438099, - -0.057602040469646454, - 0.07148434221744537, - 0.03681974112987518, - -0.012246139347553253, - 0.03827977180480957, - -0.025573786348104477, - -0.05503149330615997, - -0.05449046194553375, - -0.11662720143795013, - 0.15778791904449463, - 0.07166272401809692, - 0.02231377176940441, - -0.06547696888446808, - -0.07713396847248077, - 0.10203243792057037, - 0.010455077514052391, - -0.11760962009429932, - -0.07778866589069366, - 0.06702810525894165, - 0.19254183769226074, - -0.0036716212052851915, - 0.015085672028362751, - 0.017253438010811806, - 0.13102467358112335, - 0.07079978287220001, - 0.10580535233020782, - 0.06114555895328522, - 0.08859376609325409, - 0.049201663583517075, - 0.04329535365104675, - 0.06624916940927505, - 0.05105634033679962, - 0.008615442551672459, - -0.0015586973167955875, - 0.02643129602074623, - -0.017454002052545547, - -0.03980826586484909, - 0.0027183685451745987, - -0.013855315744876862, - -0.01874593272805214, - -0.007366466335952282, - 0.0052628587000072, - 0.017303651198744774, - 0.03559975326061249, - -0.03322942554950714, - 0.04605250805616379, - -0.002605109941214323, - -0.03245530650019646, - 0.05909179896116257, - 0.023929957300424576, - -0.004493983928114176, - 0.03573611378669739, - -0.03361702337861061, - -0.10492219030857086, - -0.020809030160307884, - 0.016633985564112663, - 0.006826149765402079, - 0.057173892855644226, - 0.021113403141498566, - -0.036426786333322525, - 0.10008427500724792, - 0.03455492854118347, - -0.0063270339742302895, - 0.03484489023685455, - -0.08495824038982391, - 0.10796129703521729, - 0.057817794382572174, - 0.01556601282209158, - 0.03847911208868027, - -0.02231740392744541, - 0.06039247289299965, - 0.0912465751171112, - -0.14322376251220703, - -0.046759672462940216, - 0.05461625009775162, - -0.015554108656942844, - -0.008884796872735023, - 0.11654456704854965, - 0.0292135551571846, - 0.012401707470417023, - 0.09945473819971085, - -0.09154458343982697, - -0.05989929288625717, - -0.015061425045132637, - 0.07276488840579987, - -0.0658910721540451, - 0.03373792767524719, - 0.027579613029956818, - -0.04053768515586853, - -0.01888340525329113, - 0.07095083594322205, - -0.009811142459511757, - -0.0018079401925206184, - 0.04503504931926727, - -0.06619847565889359, - 0.07701301574707031, - -0.06334106624126434, - 0.006077686324715614, - 0.06886855512857437, - 0.03303665667772293, - 0.0552871897816658, - -0.02377418428659439, - -0.029360270127654076, - -0.09309427440166473, - -0.001175562385469675, - 0.055718690156936646, - 0.08294275403022766, - -0.010206620208919048, - -0.009148720651865005, - -0.05876978114247322, - -0.05823804438114166, - 0.05029996484518051, - -0.024256860837340355, - 0.10300520807504654, - -0.002360205166041851, - -0.007017430849373341, - 0.0888165757060051, - -0.029025930911302567, - 0.0034471487160772085, - -0.04323210194706917, - -0.014927180483937263, - 0.04266569763422012, - 0.04807581007480621, - -0.06337089836597443, - -0.036115776747465134, - 0.03981133550405502, - 0.024569189175963402, - -0.023068321868777275, - 0.007855734787881374, - 0.0272002425044775, - 0.021283529698848724, - 0.02660639025270939, - -0.05040641129016876, - 0.015161116607487202, - -0.0889514833688736, - -0.027425331994891167, - -0.010627709329128265, - -0.0389995276927948, - -0.022576503455638885, - 0.08996008336544037, - 0.039212338626384735, - 0.021808478981256485, - 0.01612863689661026, - -0.09127653390169144, - -0.06314870715141296, - 0.07969259470701218, - 0.061603933572769165, - 0.01238252967596054, - 0.04394424706697464, - 0.04798119142651558, - -0.014167435467243195, - 0.02011752687394619, - 0.055331334471702576, - 0.08263795077800751, - -0.007037494797259569, - -0.039183031767606735, - -0.09339691698551178, - 0.08077463507652283, - 0.1007310152053833, - -0.10723181068897247, - -0.060186564922332764, - -0.009054746478796005, - -0.06860488653182983, - 0.04117028787732124, - -0.04818103462457657, - -0.0016779854195192456, - 0.05251266807317734, - -0.037330422550439835, - -0.1221676766872406, - -0.10664443671703339, - 0.11448432505130768, - -0.09559007734060287, - -0.03472454100847244, - -0.056931011378765106, - 0.012130238115787506, - 0.06436227262020111, - 0.04443691298365593, - -0.014441188424825668, - 0.023071687668561935, - 0.055191535502672195, - -0.09020151942968369, - -0.009086200036108494, - 0.06647901237010956, - -0.017854567617177963, - -0.12300018966197968, - 0.013689089566469193, - -0.07876016199588776, - 0.07024633884429932, - -0.06827641278505325, - 0.1647666096687317, - -0.01431102305650711, - -0.03801912069320679, - -0.08726654946804047, - 0.04681612551212311, - -0.042981911450624466, - 0.04898793250322342, - 0.04049469530582428, - 0.06898501515388489, - 0.04306660592556, - -0.06444372236728668, - 0.11984724551439285, - 0.02570509910583496, - -0.009208137169480324, - -0.06738410890102386, - -0.028124570846557617, - -0.053668469190597534, - 0.026429519057273865, - -0.003367878030985594, - -0.07821069657802582, - 0.014155484735965729, - 0.03093869984149933, - -0.03153420239686966, - 0.06198987364768982, - 0.12716275453567505, - 0.07299923896789551, - -0.08960578590631485 - ] - }, - "p245_223.wav": { - "name": "p245", - "embedding": [ - 0.06746435165405273, - 0.03453626111149788, - 0.018802262842655182, - -0.007825586944818497, - -0.009814387187361717, - 0.05579018592834473, - -0.09531286358833313, - 0.08952674269676208, - 0.0019092746078968048, - 0.05800749734044075, - -0.11425498127937317, - 0.04001835361123085, - -0.015883518382906914, - -0.13597381114959717, - -0.015742767602205276, - 0.026558123528957367, - -0.014288059435784817, - 0.012245727702975273, - -0.07787568122148514, - -0.017433255910873413, - 0.0023683421313762665, - 0.019502606242895126, - 0.050130944699048996, - -0.026344383135437965, - 0.006037736311554909, - 0.03134957328438759, - 0.002301743719726801, - 0.0222611166536808, - 0.020945867523550987, - -0.0011597732082009315, - -0.00016056932508945465, - 0.06718454509973526, - -0.04193013533949852, - -0.02041812427341938, - 0.05378752201795578, - 0.016655851155519485, - 0.00016847462393343449, - -0.10018790513277054, - -0.03738325089216232, - 0.01944802887737751, - -0.07587802410125732, - 0.07158413529396057, - 0.06043025106191635, - -0.01085681188851595, - 0.0450977198779583, - 0.028120337054133415, - -0.00813515204936266, - -0.036066360771656036, - -0.09710974991321564, - 0.15066704154014587, - 0.038202062249183655, - 0.027333775535225868, - -0.09030097723007202, - -0.001152288168668747, - 0.09088161587715149, - -0.04268059879541397, - -0.049777813255786896, - -0.046671949326992035, - 0.04771159216761589, - 0.08742760866880417, - 0.00888905394822359, - -0.03385370224714279, - 0.0025641024112701416, - 0.034780971705913544, - -0.0037024933844804764, - 0.024121368303894997, - 0.11470529437065125, - 0.09740065038204193, - -0.01528053916990757, - 0.03571304678916931, - 0.06648300588130951, - 0.022431544959545135, - 0.018335528671741486, - -0.020860392600297928, - 0.051991596817970276, - -0.006882551126182079, - -0.03494260832667351, - 0.027872798964381218, - -0.029020942747592926, - 0.004292902071028948, - 0.04804347828030586, - 0.014665561728179455, - 0.021233877167105675, - -0.0003202699590474367, - -0.083039790391922, - 0.03834843263030052, - -0.016299637034535408, - 0.07488923519849777, - 0.09508562088012695, - 0.028424490243196487, - -0.006975365336984396, - 0.018224479630589485, - -0.0227232426404953, - -0.08809474855661392, - 0.0008995940443128347, - 0.006419919431209564, - -0.006341836880892515, - 0.012546876445412636, - 0.022339818999171257, - -0.027169516310095787, - 0.09633686393499374, - 0.008606428280472755, - -0.008391025476157665, - 0.011947759427130222, - -0.07165030390024185, - 0.07237375527620316, - 0.08989352732896805, - 0.022913016378879547, - 0.023092111572623253, - -0.045838937163352966, - 0.04516831040382385, - 0.06434302777051926, - -0.06889235228300095, - -0.02109365724027157, - 0.03842272609472275, - 0.025691688060760498, - 0.05670637637376785, - 0.11166322231292725, - -0.0345115028321743, - -0.011355207301676273, - 0.09559209644794464, - -0.07128887623548508, - -0.01865301840007305, - 0.04849075898528099, - -0.00918085128068924, - -0.0009427517652511597, - -0.009787343442440033, - 0.016089409589767456, - -0.008708180859684944, - -0.04379244148731232, - 0.06666576862335205, - -0.003015415742993355, - -0.003960400819778442, - -0.04926044121384621, - 0.03294874355196953, - 0.06298403441905975, - -0.02058054506778717, - -0.06400218605995178, - 0.061980441212654114, - 0.09161941707134247, - 0.014620400033891201, - 0.05029816925525665, - -0.06642168015241623, - -0.0890839472413063, - -0.024814171716570854, - 0.018034877255558968, - 0.05135874077677727, - -0.014013483189046383, - -0.022425733506679535, - -0.08444146811962128, - -0.0036991946399211884, - 0.019659902900457382, - -0.02198571339249611, - 0.05597304925322533, - 0.051497142761945724, - -0.0462024100124836, - 0.04202788323163986, - -0.0357813760638237, - 0.015549814328551292, - -0.06311838328838348, - -0.046413298696279526, - 0.024547286331653595, - 0.02782253921031952, - -0.006012763828039169, - -0.04778391867876053, - 3.1763920560479164e-06, - -0.0034371763467788696, - -0.007133588194847107, - -0.030627738684415817, - 0.04526460915803909, - -0.01648622751235962, - -0.013359026052057743, - -0.12920153141021729, - 0.044889360666275024, - -0.10495211184024811, - -0.0398227833211422, - 0.04703351482748985, - 0.021594205871224403, - 0.03445103019475937, - 0.0868418887257576, - -0.00621281610801816, - 0.005866593681275845, - -0.03537328913807869, - -0.11428296566009521, - -0.008001536130905151, - 0.05816343426704407, - 0.054338183254003525, - -0.000516034197062254, - 0.05152300000190735, - 0.033930640667676926, - -0.029608864337205887, - 0.05167367309331894, - 0.04011283814907074, - 0.06017167493700981, - -0.04184175655245781, - -0.020825427025556564, - 0.023401325568556786, - 0.0852283462882042, - 0.030077341943979263, - -0.06352971494197845, - -0.044702935963869095, - 0.005877570249140263, - -0.03520646318793297, - 0.018040383234620094, - 0.009867937304079533, - 0.006362102925777435, - 0.0412251241505146, - -0.012140120379626751, - -0.06588228046894073, - -0.04345769062638283, - 0.0077348146587610245, - -0.04040368273854256, - -0.015698954463005066, - -0.049078017473220825, - 0.022461842745542526, - 0.08226238936185837, - -0.004554638639092445, - 0.0009399037808179855, - -0.029615182429552078, - -0.015239452943205833, - -0.052473507821559906, - -0.08298250287771225, - -0.02115788124501705, - 0.016536949202418327, - -0.06285444647073746, - 0.026906626299023628, - -0.059773217886686325, - 0.06849846988916397, - 0.002102002501487732, - 0.07467304170131683, - 0.008652590215206146, - -0.014532679691910744, - -0.04937524348497391, - 0.02046164870262146, - -0.015169277787208557, - 0.053184084594249725, - 0.0541355162858963, - -0.014002952724695206, - 0.03024912253022194, - -0.06051519513130188, - 0.09172870218753815, - 0.03860616311430931, - -0.05396216735243797, - -0.03711579740047455, - 0.021270081400871277, - -0.046472761780023575, - -0.038003433495759964, - -0.015979822725057602, - -0.07203540205955505, - 0.031466804444789886, - 0.013499826192855835, - -0.03028171882033348, - 0.010555773973464966, - 0.047102928161621094, - 0.038047753274440765, - -0.06640853732824326 - ] - }, - "p245_105.wav": { - "name": "p245", - "embedding": [ - 0.04199103266000748, - 0.11617829650640488, - -0.03822670131921768, - 0.009970361366868019, - -0.06180695816874504, - 0.06572401523590088, - -0.08995041251182556, - 0.11087144911289215, - -0.040161289274692535, - 0.13533596694469452, - -0.06050288677215576, - 0.14237496256828308, - -0.021519970148801804, - -0.11296205967664719, - -0.051377072930336, - 0.041018079966306686, - -0.022327013313770294, - -0.010821400210261345, - -0.022188197821378708, - -0.026308249682188034, - 0.04904230684041977, - 0.013542171567678452, - 0.03373991698026657, - -0.0049488781951367855, - 0.023509174585342407, - 0.07685306668281555, - 0.015896936878561974, - 0.026470517739653587, - 0.015008306130766869, - -0.06461623311042786, - -0.053206026554107666, - 0.08346156775951385, - -0.04098587483167648, - 0.03245013207197189, - 0.05041162669658661, - -0.01328854076564312, - 0.013459051959216595, - -0.03604253754019737, - 0.02108015865087509, - 0.009602932259440422, - -0.022856276482343674, - 0.09376966953277588, - 0.01483251340687275, - -0.012880812399089336, - 0.03298836201429367, - 0.002260367153212428, - -0.012784450314939022, - -0.008848486468195915, - -0.06271973252296448, - 0.14742425084114075, - 0.05345187708735466, - -0.012334037572145462, - -0.07585030794143677, - -0.035776086151599884, - 0.0950363501906395, - -0.011479789391160011, - -0.0965292900800705, - -0.029636627063155174, - 0.03452540189027786, - 0.10701115429401398, - -0.0075934394262731075, - -0.0507061704993248, - 0.018968705087900162, - 0.10936087369918823, - 0.04047444462776184, - 0.05904686450958252, - 0.08163207024335861, - 0.10283955186605453, - -0.01567039266228676, - 0.012343108654022217, - 0.0296616293489933, - 0.08516241610050201, - 0.041909486055374146, - -0.006416182965040207, - 0.03499855101108551, - -0.038104794919490814, - 0.002573432633653283, - -0.006903701927512884, - -0.022830557078123093, - -0.03757607936859131, - -0.04911191761493683, - -0.0002809514699038118, - 0.0036431001499295235, - 0.01604396104812622, - -0.02919423207640648, - 0.05229528993368149, - 0.033879198133945465, - -0.04292520508170128, - 0.04799105226993561, - 0.057570502161979675, - 0.0033685490489006042, - 0.02855800651013851, - -0.0737912654876709, - -0.08116500079631805, - 0.04370058700442314, - 0.00637834845110774, - 0.026995999738574028, - 0.06688733398914337, - 0.04066891968250275, - 0.016165295615792274, - 0.08344607800245285, - 0.06817913055419922, - -0.015432355925440788, - -0.00027492642402648926, - -0.06354711949825287, - 0.1339571177959442, - 0.10456337779760361, - -0.033188626170158386, - 0.035492658615112305, - -0.027127256616950035, - 0.04902885481715202, - 0.03730037435889244, - -0.11478836834430695, - -0.09133437275886536, - 0.0011801639338955283, - 0.007715168409049511, - 0.005701042246073484, - 0.06321602314710617, - -0.0112722497433424, - 0.01958681084215641, - 0.07128651440143585, - -0.04924658685922623, - -0.07035790383815765, - -0.06190721318125725, - 0.029390333220362663, - -0.08773978799581528, - 0.06134861707687378, - 0.05012189596891403, - 0.02364715188741684, - -0.011407758109271526, - 0.08381160348653793, - 0.008381902240216732, - 0.01218886487185955, - 0.028661102056503296, - -0.024244703352451324, - 0.013345081359148026, - -0.007471784017980099, - 0.027959231287240982, - 0.04590198025107384, - 0.029659461230039597, - 0.06869475543498993, - -0.003996455110609531, - 0.02499471977353096, - -0.09376915544271469, - 0.0142821054905653, - 0.05111538618803024, - 0.014123952016234398, - -0.029080867767333984, - -0.045803528279066086, - -0.004303361289203167, - -0.06708916276693344, - -0.008562937378883362, - 0.0004720357828773558, - 0.07649107277393341, - -0.016655217856168747, - 0.017006948590278625, - 0.11920279264450073, - 0.018184518441557884, - -0.004393253941088915, - -0.04132121056318283, - -0.0013265833258628845, - 0.012190218083560467, - 0.04753274470567703, - -0.09258278459310532, - -0.07506147772073746, - -0.012659948319196701, - 0.011759753338992596, - -0.0015334058552980423, - 0.060365330427885056, - 0.07053540647029877, - -0.009500524029135704, - 0.05847875401377678, - -0.03705691546201706, - 0.005697905085980892, - -0.08066649734973907, - -0.03547865152359009, - -0.04819463938474655, - -0.06096942350268364, - -0.03281617909669876, - 0.07650876045227051, - 0.028784727677702904, - 0.056127794086933136, - 0.00027082115411758423, - -0.052896372973918915, - -0.06711860001087189, - 0.04537341743707657, - 0.06605416536331177, - -0.009477265179157257, - 0.03768934682011604, - 0.06395058333873749, - -0.01625695638358593, - 0.035413436591625214, - 0.05967690050601959, - 0.06340722739696503, - -0.04060867428779602, - 0.005485305096954107, - -0.06729786843061447, - 0.06758986413478851, - 0.0797397568821907, - -0.09445779025554657, - -0.08244279026985168, - -0.07224215567111969, - -0.042787104845047, - 0.01698298007249832, - -0.0538453571498394, - 0.007955098524689674, - 0.03596549481153488, - -0.01485449355095625, - -0.07828149944543839, - -0.11134330928325653, - 0.09029387682676315, - -0.05784526467323303, - 0.006046132650226355, - -0.051734842360019684, - 0.04293915256857872, - 0.06485158205032349, - 0.023911166936159134, - -0.05744285508990288, - 0.02017601951956749, - 0.03542225807905197, - -0.02280627191066742, - -0.0026409588754177094, - 0.03412122651934624, - 0.024010812863707542, - -0.07832947373390198, - -0.004358840640634298, - -0.06650857627391815, - 0.06273084878921509, - -0.0652836412191391, - 0.14062075316905975, - -0.005476667545735836, - -0.05514318495988846, - -0.06831812858581543, - 0.03729721158742905, - -0.02953445166349411, - 0.024901991710066795, - 0.0492917075753212, - 0.05519666522741318, - -0.009218895807862282, - -0.06570367515087128, - 0.1017032191157341, - 0.05959945172071457, - -0.033283643424510956, - -0.09524615854024887, - -0.03677475452423096, - -0.03181833028793335, - 0.04096755385398865, - 0.041259877383708954, - -0.0825209766626358, - 0.01629863865673542, - 0.023485228419303894, - -0.007235379423946142, - 0.08249468356370926, - 0.10868488997220993, - 0.06357407569885254, - -0.07810883224010468 - ] - }, - "p245_104.wav": { - "name": "p245", - "embedding": [ - 0.041993312537670135, - 0.0927915871143341, - -0.023635217919945717, - 0.03401413932442665, - -0.049704767763614655, - 0.09235957264900208, - -0.14399084448814392, - 0.12129074335098267, - -0.035267945379018784, - 0.1398114264011383, - -0.0600535050034523, - 0.11325986683368683, - -0.01964443549513817, - -0.18756522238254547, - -0.03948917239904404, - 0.05671172961592674, - -0.04484950006008148, - -0.035275910049676895, - -0.028493095189332962, - -0.00710280891507864, - 0.03766641765832901, - 0.02786479890346527, - 0.01050695963203907, - -0.005582625046372414, - 0.036100637167692184, - 0.06363923847675323, - -0.0031729359179735184, - 0.0393981859087944, - -0.00662595359608531, - -0.04091174155473709, - -0.03039582073688507, - 0.12437931448221207, - -0.06014012545347214, - 0.02942153438925743, - 0.05367758497595787, - 0.012539195828139782, - -0.00719422334805131, - -0.0525921992957592, - 0.0013659711694344878, - -0.001498503959737718, - -0.04412698373198509, - 0.08894520252943039, - 0.044096942991018295, - 0.010714509524405003, - 0.015667196363210678, - 0.031097274273633957, - -0.010116101242601871, - -0.04669087007641792, - -0.10243485867977142, - 0.1666468381881714, - 0.052448805421590805, - -0.0005351711879484355, - -0.06775981932878494, - -0.07216373085975647, - 0.0963415578007698, - 0.010191711597144604, - -0.11463125795125961, - -0.04616400599479675, - 0.09615646302700043, - 0.16290272772312164, - -0.029554234817624092, - -0.0435260534286499, - 0.006799326743930578, - 0.1317562609910965, - 0.04758976772427559, - 0.10423439741134644, - 0.0695679560303688, - 0.1393681913614273, - -0.0003243259561713785, - 0.006876935251057148, - 0.07549900561571121, - 0.060671474784612656, - 0.07056000828742981, - -0.01331544853746891, - 0.030147327110171318, - -0.024076879024505615, - 0.002624780172482133, - 0.0034128520637750626, - -0.034796204417943954, - -0.029568351805210114, - -0.0034408981446176767, - 0.003702497808262706, - 0.017516933381557465, - 0.04001220315694809, - -0.02220405824482441, - 0.04312530905008316, - 0.059406884014606476, - -0.027831654995679855, - 0.06485036015510559, - 0.062060121446847916, - 0.01610192470252514, - 0.058809198439121246, - -0.09474047273397446, - -0.08720813691616058, - 0.052215974777936935, - 0.006189660634845495, - 0.04568372666835785, - 0.07502438873052597, - 0.04258298873901367, - -0.004303544294089079, - 0.09306040406227112, - 0.028608692809939384, - -0.009236309677362442, - 0.022480159997940063, - -0.09946560859680176, - 0.14175835251808167, - 0.07973980903625488, - -0.018995195627212524, - 0.03168212249875069, - -0.055136825889348984, - 0.07474605739116669, - 0.07685787975788116, - -0.13622409105300903, - -0.0823507308959961, - 0.031062833964824677, - 0.019721344113349915, - -0.0368209145963192, - 0.1260622888803482, - -0.008385525085031986, - 0.0227363184094429, - 0.09151863306760788, - -0.09415683150291443, - -0.04459966719150543, - -0.0226836409419775, - 0.027638548985123634, - -0.08480838686227798, - 0.04222169145941734, - 0.040965426713228226, - -0.008196350187063217, - -0.0003213175805285573, - 0.08301109075546265, - 0.0029568444006145, - 0.004396231845021248, - 0.009786475449800491, - -0.03255288675427437, - 0.03162181377410889, - -0.010582532733678818, - 0.01605938747525215, - 0.031386442482471466, - 0.0246969535946846, - 0.05496756732463837, - -0.008291056379675865, - -0.026500826701521873, - -0.1195041611790657, - 0.009853058494627476, - 0.050079572945833206, - 0.07675682008266449, - -0.025990569964051247, - -0.0202273391187191, - -0.030775107443332672, - -0.08036734163761139, - 0.05014772340655327, - -0.01097302045673132, - 0.08064179122447968, - 0.013332556001842022, - -0.028773589059710503, - 0.11192211508750916, - 0.02456790953874588, - -0.0011019870871677995, - -0.05334194004535675, - -0.03009355068206787, - 0.02187325805425644, - 0.044389836490154266, - -0.11591000109910965, - -0.05547906830906868, - 0.0003466318594291806, - 0.015130819752812386, - -0.027434542775154114, - 0.04612204432487488, - 0.05507882311940193, - 0.025138316676020622, - 0.02772468514740467, - -0.045911893248558044, - -0.01048254780471325, - -0.10145393759012222, - -0.07158402353525162, - -0.008819213137030602, - -0.028672033920884132, - -0.02248135395348072, - 0.08878090232610703, - 0.012591863982379436, - 0.038297638297080994, - -0.0318383052945137, - -0.04675601050257683, - -0.06739017367362976, - 0.0647347941994667, - 0.05494198203086853, - 0.0007818698068149388, - 0.044629428535699844, - 0.04337198659777641, - -0.026525886729359627, - 0.04575919732451439, - 0.07308197766542435, - 0.12743665277957916, - -0.046412572264671326, - 0.02811635658144951, - -0.07216516882181168, - 0.1074354276061058, - 0.0878455713391304, - -0.08247501403093338, - -0.07868802547454834, - -0.012309428304433823, - -0.056923747062683105, - 0.018798766657710075, - -0.05857264995574951, - -0.0014582837466150522, - 0.020307812839746475, - -0.005348965059965849, - -0.10183601826429367, - -0.09745538979768753, - 0.0751880407333374, - -0.08353032916784286, - -0.000499181856866926, - -0.09331083297729492, - 0.0567728728055954, - 0.0895451009273529, - 0.04269560053944588, - -0.04776900261640549, - 0.006110005080699921, - 0.06342826038599014, - -0.04685213416814804, - 0.00283640343695879, - 0.050748687237501144, - 0.026887770742177963, - -0.10592646151781082, - -0.016883304342627525, - -0.06643162667751312, - 0.039897117763757706, - -0.05434108525514603, - 0.16183307766914368, - 0.0026806907262653112, - -0.054454121738672256, - -0.052208393812179565, - 0.03219299390912056, - -0.01592209003865719, - 0.04684852808713913, - 0.040493886917829514, - 0.07390118390321732, - 0.031165460124611855, - -0.0572657473385334, - 0.13536448776721954, - 0.03932786360383034, - -0.02746889367699623, - -0.06881848722696304, - -0.0402451790869236, - -0.035189367830753326, - 0.05021411180496216, - 0.009485137648880482, - -0.0997840166091919, - -0.012666463851928711, - 0.051296088844537735, - 0.000514302751980722, - 0.04523845762014389, - 0.14479690790176392, - 0.0645727589726448, - -0.09413698315620422 - ] - }, - "p245_228.wav": { - "name": "p245", - "embedding": [ - 0.036547183990478516, - 0.05494793504476547, - -0.03381495177745819, - -0.010115750133991241, - -0.04059382155537605, - 0.02810145542025566, - -0.13210858404636383, - 0.09303756058216095, - 0.005028697662055492, - 0.16204020380973816, - -0.05217421054840088, - 0.09659303724765778, - -0.0012686308473348618, - -0.11723019182682037, - 0.023297203704714775, - 0.03521076962351799, - -0.006184345111250877, - -0.0019950508140027523, - -0.004529932513833046, - -0.05533728748559952, - 0.03424292802810669, - 0.049391716718673706, - 0.007852649316191673, - -0.04434743896126747, - 0.02525271102786064, - 0.06144176423549652, - -0.024894338101148605, - -0.006331412121653557, - -0.01832963526248932, - -0.0581718273460865, - 0.011025835759937763, - 0.11011952906847, - -0.04667455703020096, - -0.004206397570669651, - 0.010972622781991959, - -0.013248814269900322, - -0.028623323887586594, - -0.04633243381977081, - 0.020680660381913185, - 0.033447153866291046, - -0.04960118979215622, - 0.0838746726512909, - 0.01760770007967949, - 0.010426776483654976, - 0.026980679482221603, - -0.030386094003915787, - -0.06536616384983063, - 0.004335332661867142, - -0.048969727009534836, - 0.14194506406784058, - 0.07445313036441803, - 0.007051954045891762, - -0.07249372452497482, - -0.01101214811205864, - 0.04477895796298981, - 0.02705524116754532, - -0.08595451712608337, - -0.034307949244976044, - 0.030470481142401695, - 0.10671170055866241, - 0.009791238233447075, - -0.06108497828245163, - 0.03524329140782356, - 0.10987058281898499, - 0.009562487713992596, - 0.03315334767103195, - 0.08764147758483887, - 0.10279177874326706, - -0.010249885730445385, - 0.006959708407521248, - 0.020144307985901833, - 0.07273457199335098, - 0.051266320049762726, - -0.025711428374052048, - 0.03318297117948532, - -0.018727295100688934, - -0.016509534791111946, - -0.04951774328947067, - -0.022715087980031967, - -0.05312328413128853, - -0.0448157861828804, - -0.022821705788373947, - -0.003900387790054083, - 0.09170660376548767, - -0.022880928590893745, - -0.029494643211364746, - 0.07554402202367783, - -0.04855826869606972, - 0.04615463316440582, - 0.03903011232614517, - 0.017772603780031204, - 0.006154010072350502, - -0.10188841074705124, - -0.05236378312110901, - 0.038186024874448776, - -0.002766687422990799, - 0.047838497906923294, - 0.06418476998806, - 0.027539290487766266, - 0.0002491651102900505, - 0.09445770829916, - 0.02097795158624649, - -0.005377943627536297, - -0.04734991118311882, - -0.07401047646999359, - 0.11700354516506195, - 0.11375206708908081, - -0.04591304063796997, - 0.03777534142136574, - -0.014602947980165482, - 0.014844397082924843, - -0.0070088207721710205, - -0.12812571227550507, - -0.029767531901597977, - -0.004303273744881153, - 0.0478520393371582, - 0.019742488861083984, - 0.11558857560157776, - 0.04125234857201576, - 0.05158422887325287, - 0.0784287303686142, - -0.05399606004357338, - -0.06061099097132683, - -0.05072500556707382, - 0.038478169590234756, - -0.10721170902252197, - 0.060248248279094696, - 0.055300697684288025, - 0.022702792659401894, - 0.003910653293132782, - 0.06804215162992477, - 0.024405136704444885, - 0.03485392779111862, - -0.05654182285070419, - 0.005347827449440956, - 0.036358222365379333, - -0.020238889381289482, - 0.041469231247901917, - 0.031049851328134537, - -0.006746730767190456, - 0.09990570694208145, - 0.029759474098682404, - -0.007160266861319542, - -0.09072452783584595, - 0.037418484687805176, - 0.007801290135830641, - 0.03955089673399925, - -0.052426502108573914, - -0.03093225508928299, - 0.01665990985929966, - -0.0764579176902771, - -0.0004300791770219803, - -0.009757639840245247, - 0.06864982843399048, - 0.030672062188386917, - -0.0229633841663599, - 0.10047703981399536, - 0.015504911541938782, - -0.00018723157700151205, - 0.010967081412672997, - -0.010971481911838055, - -0.005989436060190201, - 0.06344471871852875, - -0.12709718942642212, - -0.05961715802550316, - 0.011622114107012749, - 0.0128859244287014, - 0.011815086007118225, - 0.03485803306102753, - 0.09618727117776871, - -0.02078128233551979, - 0.024947889149188995, - -0.01679592952132225, - -0.003832906950265169, - -0.05250580608844757, - -0.06677301228046417, - 0.0032298071309924126, - -0.05456282198429108, - -0.0497753843665123, - 0.08213728666305542, - -0.02136092260479927, - 0.04913489520549774, - -0.04758963733911514, - -0.03340229019522667, - -0.0676318109035492, - 0.03568369895219803, - 0.03104977309703827, - -0.06299667060375214, - -0.0007210280746221542, - 0.08407070487737656, - -0.00670292042195797, - -0.02887452393770218, - 0.055874817073345184, - 0.09213539212942123, - -0.08104171603918076, - 0.005033660680055618, - -0.08486886322498322, - 0.1096893697977066, - 0.08756161481142044, - -0.0345761701464653, - -0.062121979892253876, - -0.06690338999032974, - -0.06330153346061707, - 0.0373421311378479, - -0.03550054132938385, - -0.017497580498456955, - 0.040321316570043564, - -0.05281955376267433, - -0.07797092199325562, - -0.07407867908477783, - 0.05309075862169266, - -0.05857566371560097, - 0.007959308102726936, - -0.07371783256530762, - 0.036032311618328094, - 0.04185828939080238, - 0.06944239884614944, - -0.06200557202100754, - 0.015215501189231873, - 0.02768900617957115, - -0.04563862830400467, - 0.006325381342321634, - 0.03160887211561203, - 0.034379299730062485, - -0.06544091552495956, - -0.06208460405468941, - -0.06095083802938461, - 0.03927738964557648, - -0.06617523729801178, - 0.055638596415519714, - 0.03216254338622093, - -0.05052667111158371, - -0.0727718323469162, - -0.004142915830016136, - 0.004101710394024849, - 0.03420416638255119, - 0.07264456152915955, - 0.06035304069519043, - 0.0509200245141983, - -0.053581397980451584, - 0.06901642680168152, - 0.05423349514603615, - 0.03478659316897392, - -0.05042131245136261, - -0.00014366023242473602, - -0.0034629814326763153, - 0.05168410390615463, - 0.018149469047784805, - -0.0771474614739418, - 0.04962316155433655, - 0.01681504398584366, - 0.004121999256312847, - 0.044393714517354965, - 0.04761321097612381, - 0.04781375825405121, - -0.10872853547334671 - ] - }, - "p245_188.wav": { - "name": "p245", - "embedding": [ - 0.017317287623882294, - 0.04498537629842758, - -0.049431826919317245, - 0.026250295341014862, - -0.07159970700740814, - 0.041431911289691925, - -0.14220894873142242, - 0.09918121993541718, - -0.02404780313372612, - 0.11870583891868591, - -0.033757831901311874, - 0.10897046327590942, - -0.01274899858981371, - -0.2121933251619339, - 0.01909901574254036, - 0.06232907623052597, - -0.03920887038111687, - -0.04471857100725174, - -0.06435555219650269, - -0.03345201909542084, - 0.03468197584152222, - 0.0357145331799984, - 0.025104904547333717, - -0.05580104887485504, - 0.01387088280171156, - 0.07723259925842285, - -0.008191756904125214, - 0.013709424063563347, - -0.023945387452840805, - -0.03753571957349777, - -0.049597322940826416, - 0.0883735865354538, - -0.06499285250902176, - -0.028659116476774216, - 0.0505051389336586, - -0.023918859660625458, - -0.028258681297302246, - -0.04561741650104523, - -0.009612597525119781, - 0.03508784621953964, - -0.06720846891403198, - 0.07514676451683044, - 0.051419928669929504, - -0.013838039711117744, - 0.05048087611794472, - 0.006804631091654301, - -0.022727705538272858, - -0.030414143577218056, - -0.10152660310268402, - 0.14894217252731323, - 0.06898372620344162, - -0.025127515196800232, - -0.05135069042444229, - -0.0408470593392849, - 0.08696570992469788, - 0.008966525085270405, - -0.13095322251319885, - -0.07086822390556335, - 0.0888456180691719, - 0.1253010779619217, - -0.035244591534137726, - -0.021543893963098526, - 0.03895064443349838, - 0.07749058306217194, - 0.06122463941574097, - 0.10049092024564743, - 0.06332235038280487, - 0.12807497382164001, - -0.0027650382835417986, - 0.0040116989985108376, - 0.0695246160030365, - 0.06422119587659836, - 0.030354848131537437, - -0.017443187534809113, - 0.04658213257789612, - 0.0029388070106506348, - -0.010607457719743252, - -0.022464144974946976, - -0.018317895010113716, - -0.012762738391757011, - 0.03116878867149353, - -0.007134473882615566, - 0.0351099967956543, - 0.02266528084874153, - -0.03112887218594551, - 0.04863879829645157, - 0.08685256540775299, - -0.0017822063528001308, - 0.06073993071913719, - 0.02116236463189125, - -0.0073343669064342976, - 0.07774338126182556, - -0.09492166340351105, - -0.06570316851139069, - 0.031402237713336945, - 0.0057772016152739525, - -0.0017051721224561334, - 0.05516954883933067, - 0.047507453709840775, - -0.020640410482883453, - 0.1228819489479065, - 0.03544235974550247, - -0.016452038660645485, - 0.04918748140335083, - -0.07279971987009048, - 0.12608854472637177, - 0.08431540429592133, - -0.030415885150432587, - 0.030399909242987633, - -0.06336770951747894, - 0.07243360579013824, - 0.043131835758686066, - -0.10869661718606949, - -0.049188461154699326, - 0.044710587710142136, - -0.023325065150856972, - -0.050837837159633636, - 0.16665911674499512, - -0.003387659788131714, - 0.01691051758825779, - 0.14217683672904968, - -0.1043357402086258, - -0.057786524295806885, - -0.0008437793585471809, - 0.030060134828090668, - -0.08626771718263626, - 0.04105145484209061, - 0.05152350664138794, - -0.00994603056460619, - 0.03077283501625061, - 0.09150253981351852, - -0.017743868753314018, - 0.015175789594650269, - -0.005155642982572317, - -0.015340684913098812, - 0.049425624310970306, - -0.010346350260078907, - -0.01423791516572237, - 0.07959248125553131, - 0.029327072203159332, - 0.04215708002448082, - -0.035785987973213196, - -0.027502745389938354, - -0.131309375166893, - 0.02814522758126259, - 0.01983937993645668, - 0.0819053202867508, - -0.014491342008113861, - 0.01907731592655182, - -0.06289822608232498, - -0.11390458047389984, - 0.02779809758067131, - -0.025660209357738495, - 0.07574279606342316, - -0.027025040239095688, - -0.03143087029457092, - 0.09052151441574097, - 0.04678970202803612, - 0.01202697865664959, - -0.05012039095163345, - -0.06305918097496033, - 0.016918502748012543, - 0.045033156871795654, - -0.10097062587738037, - -0.058853622525930405, - -0.046271972358226776, - 0.037637338042259216, - -0.009079734794795513, - 0.038432247936725616, - 0.06502270698547363, - 0.04015757888555527, - 0.015586724504828453, - -0.08537141978740692, - 0.017619166523218155, - -0.0705195963382721, - -0.04243101924657822, - -0.01802583411335945, - -0.02883341535925865, - -0.03243012726306915, - 0.08826066553592682, - -0.013770588673651218, - 0.023792801424860954, - -0.07443833351135254, - -0.06121410056948662, - -0.07203206419944763, - 0.05678550899028778, - 0.055465664714574814, - -0.03217874839901924, - 0.046823397278785706, - 0.04638488590717316, - -0.04013500362634659, - 0.0026283422484993935, - 0.06033400818705559, - 0.11864417791366577, - -0.026256369426846504, - 0.011101892217993736, - -0.055907152593135834, - 0.12708517909049988, - 0.07068803906440735, - -0.055651649832725525, - -0.0484439879655838, - -0.005763031542301178, - -0.06660846620798111, - 0.04331723600625992, - -0.04608432203531265, - -0.021472645923495293, - 0.020690463483333588, - 0.023847879841923714, - -0.0916101336479187, - -0.07911588251590729, - 0.05280515179038048, - -0.059972479939460754, - -0.01347692497074604, - -0.09861786663532257, - 0.04117956385016441, - 0.07657027244567871, - 0.044892556965351105, - -0.06180015206336975, - -0.007300299592316151, - 0.052679285407066345, - -0.020200956612825394, - 0.05991438776254654, - 0.0642707422375679, - 0.05839382857084274, - -0.09800872951745987, - -0.04367532953619957, - -0.07133033871650696, - 0.04467225819826126, - -0.046147119253873825, - 0.12688976526260376, - 0.02022826112806797, - -0.02163371443748474, - -0.060631610453128815, - 0.05313608795404434, - -0.00031630881130695343, - 0.06005815416574478, - 0.0646965503692627, - 0.08532170951366425, - 0.06233343482017517, - -0.056034162640571594, - 0.1290823519229889, - 0.030907586216926575, - -0.01748138852417469, - -0.06116333603858948, - -0.01653577759861946, - -0.04848343878984451, - 0.0357728973031044, - 0.045651160180568695, - -0.10712676495313644, - 0.001083730487152934, - 0.05164897441864014, - -0.002481299452483654, - 0.030789662152528763, - 0.12179458141326904, - 0.06833023577928543, - -0.08677087724208832 - ] - }, - "p245_176.wav": { - "name": "p245", - "embedding": [ - 0.06590309739112854, - 0.08273713290691376, - -0.022031202912330627, - 0.027331626042723656, - -0.05132855474948883, - 0.04373977705836296, - -0.15334570407867432, - 0.1566563993692398, - -0.009727679193019867, - 0.13052597641944885, - -0.03915196657180786, - 0.12613728642463684, - -0.00921361893415451, - -0.17011556029319763, - -0.0031224607955664396, - 0.05452784150838852, - -0.03364328294992447, - -0.0348631925880909, - -0.02278713509440422, - -0.029857030138373375, - 0.029342498630285263, - 0.04183362051844597, - 0.031725432723760605, - -0.0046009584330022335, - 0.028559327125549316, - 0.06831564009189606, - -0.017405208200216293, - 0.027609815821051598, - -0.0089272391051054, - -0.0710478276014328, - -0.02805780991911888, - 0.07103975862264633, - -0.0609106719493866, - 0.005562937818467617, - 0.03896316513419151, - -0.026390373706817627, - -0.013575540855526924, - -0.06560267508029938, - -0.029591700062155724, - 0.007092623971402645, - -0.037789665162563324, - 0.08400766551494598, - 0.02115662395954132, - -0.03572472184896469, - 0.03886793181300163, - 0.014422359876334667, - -0.004600794520229101, - -0.03717661648988724, - -0.11260801553726196, - 0.15533767640590668, - 0.07325652241706848, - 0.014653614722192287, - -0.08307540416717529, - -0.05747218057513237, - 0.08501579612493515, - -0.015743855386972427, - -0.09778197854757309, - -0.027945932000875473, - 0.05563493072986603, - 0.1365983933210373, - -0.032644666731357574, - -0.04546068608760834, - 0.04818868637084961, - 0.10732771456241608, - 0.07704716920852661, - 0.06185056269168854, - 0.09420525282621384, - 0.11288021504878998, - -0.04673559218645096, - 0.009247522801160812, - 0.036061182618141174, - 0.0793636366724968, - 0.0696311891078949, - 0.007205704227089882, - 0.018164895474910736, - -0.007456387858837843, - -0.015886083245277405, - -0.040691327303647995, - -0.023670226335525513, - -0.02646796964108944, - -0.003542952938005328, - 0.013792181387543678, - 0.020862823352217674, - 0.05419101566076279, - -0.026225855574011803, - 0.05407482013106346, - 0.057271093130111694, - -0.02712639793753624, - 0.0665774717926979, - 0.018475593999028206, - 0.020073935389518738, - 0.07006167620420456, - -0.1084972470998764, - -0.06667543947696686, - 0.05201352387666702, - 0.003527058055624366, - 0.03386840224266052, - 0.07018347829580307, - 0.048327378928661346, - -0.013828898780047894, - 0.12828075885772705, - 0.052020035684108734, - -0.01700139231979847, - 0.009118321351706982, - -0.07842226326465607, - 0.125259667634964, - 0.08640637993812561, - -0.03948485851287842, - 0.06417527794837952, - -0.06240531802177429, - 0.056600913405418396, - 0.048333585262298584, - -0.13238009810447693, - -0.07555337995290756, - 0.03135322779417038, - 0.01871408149600029, - -0.006715088617056608, - 0.14097750186920166, - 0.014059068635106087, - 0.07226261496543884, - 0.10537798702716827, - -0.09489516913890839, - -0.053132764995098114, - -0.013518152758479118, - 0.06651130318641663, - -0.09357684850692749, - 0.08118122071027756, - 0.06574410200119019, - -0.019548101350665092, - 0.030379649251699448, - 0.07033946365118027, - -0.004461872857064009, - 0.003948649857193232, - -0.0030166504438966513, - -0.025986608117818832, - 0.0010310538345947862, - -0.020243503153324127, - -0.015815503895282745, - 0.017549216747283936, - 0.016868874430656433, - 0.04138512164354324, - -0.011960888281464577, - -0.022519264370203018, - -0.13396292924880981, - 0.0199708491563797, - 0.025134574621915817, - 0.0808676928281784, - -0.021772390231490135, - -0.03277274966239929, - -0.030811121687293053, - -0.05993056297302246, - -0.006899719592183828, - -0.014716587960720062, - 0.05033014714717865, - -0.01804148405790329, - 0.015124909579753876, - 0.09540446847677231, - 0.049196772277355194, - 0.009166347794234753, - -0.032705970108509064, - -0.03616961091756821, - 0.006587449461221695, - 0.05745156854391098, - -0.07765307277441025, - -0.08155323565006256, - -0.029043225571513176, - 0.024371540173888206, - -0.020367398858070374, - 0.0753738135099411, - 0.04553629457950592, - 0.024564266204833984, - 0.007722645998001099, - -0.06545669585466385, - 0.01615370437502861, - -0.08819540590047836, - -0.08529090881347656, - -0.0008315509185194969, - -0.007010858040302992, - -0.03731034696102142, - 0.07583478093147278, - 0.03277184069156647, - 0.07850177586078644, - -0.05062877759337425, - -0.04603683948516846, - -0.08216080069541931, - 0.032328709959983826, - 0.04931224137544632, - -0.027668422088027, - 0.02368195913732052, - 0.059348881244659424, - -0.018062911927700043, - 0.051102038472890854, - 0.0644771158695221, - 0.09227493405342102, - -0.026067791506648064, - 0.022217441350221634, - -0.07000530511140823, - 0.10057233273983002, - 0.10241001844406128, - -0.0660070925951004, - -0.0833776593208313, - -0.034672241657972336, - -0.08395908772945404, - 0.018026867881417274, - -0.01758812554180622, - 0.020316768437623978, - 0.03906296193599701, - -0.0018471296643838286, - -0.1044909656047821, - -0.0998966246843338, - 0.08310158550739288, - -0.0647507905960083, - 0.00958292931318283, - -0.087298184633255, - 0.04991710186004639, - 0.09902515262365341, - 0.031223490834236145, - -0.026738043874502182, - -0.033829011023044586, - 0.03121050074696541, - -0.0005048485472798347, - 0.027047235518693924, - 0.06736314296722412, - 0.0641685351729393, - -0.11556115746498108, - -0.0037295869551599026, - -0.0594022274017334, - 0.04243311285972595, - -0.03628578037023544, - 0.13820697367191315, - 0.028575977310538292, - -0.04545023664832115, - -0.09418241679668427, - 0.04028555005788803, - -0.009200192987918854, - 0.06230112910270691, - 0.014625227078795433, - 0.06447426974773407, - 0.05719239264726639, - -0.07228986918926239, - 0.09338214993476868, - 0.050442688167095184, - -0.042689792811870575, - -0.07106788456439972, - -0.063497394323349, - -0.0327129140496254, - 0.04167948290705681, - 0.002049120608717203, - -0.0810183435678482, - -0.02905045449733734, - 0.021104484796524048, - 0.007179769687354565, - 0.05495418235659599, - 0.1424550712108612, - 0.04495810717344284, - -0.12958046793937683 - ] - }, - "p245_275.wav": { - "name": "p245", - "embedding": [ - 0.0372111052274704, - 0.050547100603580475, - -0.039791930466890335, - 0.06428533792495728, - -0.06765749305486679, - 0.040432676672935486, - -0.14868861436843872, - 0.10640327632427216, - -0.021880440413951874, - 0.10772843658924103, - -0.05929896980524063, - 0.08378919959068298, - -0.017492609098553658, - -0.19753682613372803, - -0.006421403028070927, - 0.06478886306285858, - -0.04720301553606987, - -0.03194117918610573, - -0.0735669732093811, - -0.028677726164460182, - 0.03851275146007538, - 0.0534440279006958, - 0.047147490084171295, - -0.0267333947122097, - 0.016785763204097748, - 0.05823175981640816, - -0.011137187480926514, - 0.028506604954600334, - 0.0070802937261760235, - -0.03567471727728844, - -0.029264654964208603, - 0.11077967286109924, - -0.006142396479845047, - -0.027134299278259277, - 0.033171698451042175, - -0.005992839112877846, - -0.01941157504916191, - -0.07562747597694397, - -0.027822960168123245, - 0.01068776287138462, - -0.06396210193634033, - 0.06659205257892609, - 0.0473058745265007, - -0.04108644276857376, - 0.06850926578044891, - -0.037930749356746674, - -0.05754496157169342, - -0.047843314707279205, - -0.13164585828781128, - 0.16440364718437195, - 0.09240882843732834, - 0.02109512872993946, - -0.07503265142440796, - -0.03818577900528908, - 0.11606360226869583, - -0.004305548965930939, - -0.11100426316261292, - -0.07306322455406189, - 0.07542389631271362, - 0.18429842591285706, - -0.016988929361104965, - 0.019483918324112892, - 0.05982273817062378, - 0.11252015829086304, - 0.04116428643465042, - 0.07991175353527069, - 0.07670343667268753, - 0.0956476479768753, - 0.014019510708749294, - 0.036897871643304825, - 0.04997949302196503, - 0.0666642040014267, - -0.0033631548285484314, - -0.018157746642827988, - 0.020306186750531197, - -0.01118550170212984, - -0.0523250550031662, - -0.02172210067510605, - -0.028238940984010696, - -0.01570945419371128, - 0.0034297779202461243, - -0.003977117128670216, - 0.028729159384965897, - 0.012515516951680183, - -0.06733973324298859, - 0.04054859280586243, - 0.04000149667263031, - -0.04084627702832222, - 0.05878767371177673, - 0.02424379624426365, - -0.010608808137476444, - 0.028196848928928375, - -0.030981626361608505, - -0.1025228425860405, - -0.005650188773870468, - 0.018151061609387398, - -0.009235326200723648, - 0.0494488850235939, - 0.03304683044552803, - -0.04707948863506317, - 0.12458515167236328, - 0.03188218176364899, - -0.015951815992593765, - 0.04687663912773132, - -0.07101300358772278, - 0.10087639838457108, - 0.09593609720468521, - 0.004735417664051056, - 0.0658436268568039, - -0.04067708179354668, - 0.04357825219631195, - 0.06105254963040352, - -0.11678953468799591, - -0.039993468672037125, - 0.046250149607658386, - -0.002066663233563304, - 0.0014543826691806316, - 0.13816797733306885, - 0.03370920568704605, - 0.035824354737997055, - 0.12066216766834259, - -0.09924739599227905, - -0.06310063600540161, - -0.01783032715320587, - 0.07728970795869827, - -0.06144742667675018, - 0.051109518855810165, - 0.06654154509305954, - -0.03428902104496956, - 0.013600043021142483, - 0.05042201653122902, - -0.01720242388546467, - 0.015457747504115105, - 0.00633569061756134, - -0.05480961129069328, - 0.05744437128305435, - -0.05916483327746391, - -0.02087836153805256, - 0.08025971055030823, - 0.032897986471652985, - 0.04981597512960434, - -0.0178227461874485, - -0.029598254710435867, - -0.10776936262845993, - -0.005454982630908489, - 0.02400267869234085, - 0.1018771380186081, - 0.0014026444405317307, - 0.006253059022128582, - -0.07616347074508667, - -0.0826883316040039, - 0.03763645514845848, - -0.053547292947769165, - 0.09755547344684601, - -0.02633102610707283, - -0.004980175755918026, - 0.06643056124448776, - 0.0013255062513053417, - 0.006942296400666237, - -0.043009497225284576, - -0.025869157165288925, - 0.0230241846293211, - 0.03868516907095909, - -0.061113178730010986, - -0.04628463089466095, - -0.006677571684122086, - 0.032870154827833176, - -0.03237747773528099, - 0.017305508255958557, - 0.021627631038427353, - 0.028258226811885834, - 0.0037730673793703318, - -0.09021933376789093, - 0.036487333476543427, - -0.07960869371891022, - -0.016955388709902763, - 0.013353020884096622, - -0.016371123492717743, - -0.04316435009241104, - 0.10222162306308746, - 0.04196551814675331, - 0.007445049472153187, - -0.02195524424314499, - -0.08111335337162018, - -0.06170753389596939, - 0.050415799021720886, - 0.04873126745223999, - -0.013593791052699089, - 0.0507008358836174, - 0.04373297095298767, - -0.022381126880645752, - 0.0268389955163002, - 0.06883329898118973, - 0.08232976496219635, - 0.0065101878717541695, - -0.039970606565475464, - -0.07118874788284302, - 0.10195834189653397, - 0.09972754120826721, - -0.07307245582342148, - -0.06400041282176971, - -0.03322445973753929, - -0.08305425196886063, - 0.045970916748046875, - -0.02062268927693367, - -0.010524102486670017, - 0.04042370617389679, - -0.018243473023176193, - -0.13788217306137085, - -0.09079774469137192, - 0.08598054200410843, - -0.07443965971469879, - -0.013190265744924545, - -0.06539787352085114, - 0.02527713030576706, - 0.09252861887216568, - 0.015022635459899902, - -0.028417464345693588, - -0.018887314945459366, - 0.04335290938615799, - -0.07408102601766586, - 0.022785726934671402, - 0.05588337033987045, - 0.02137768268585205, - -0.12280511856079102, - 0.010940550826489925, - -0.07326871156692505, - 0.06430086493492126, - -0.03907422348856926, - 0.13647128641605377, - 0.032093070447444916, - -0.023616179823875427, - -0.08593961596488953, - 0.07636019587516785, - -0.02165522798895836, - 0.0666738748550415, - 0.04711022973060608, - 0.06940796971321106, - 0.06648463010787964, - -0.09064563363790512, - 0.09680681675672531, - 0.034255027770996094, - -0.028422709554433823, - -0.07090790569782257, - -0.031739503145217896, - -0.04116027057170868, - 0.020132046192884445, - 0.001373582985252142, - -0.06732317805290222, - -0.009879304096102715, - 0.02314138039946556, - -0.01892411895096302, - 0.07125674933195114, - 0.11903060972690582, - 0.067520871758461, - -0.08741383999586105 - ] - }, - "p245_222.wav": { - "name": "p245", - "embedding": [ - 0.06108405068516731, - 0.10647977888584137, - -0.000617398414760828, - 0.02306094579398632, - -0.03677089512348175, - 0.06461239606142044, - -0.14455847442150116, - 0.1188560351729393, - -0.037819743156433105, - 0.1366496980190277, - -0.0777558982372284, - 0.1260986626148224, - -0.013707634061574936, - -0.20751075446605682, - -0.057540133595466614, - 0.06460794806480408, - -0.05266393721103668, - -0.015345701947808266, - -0.031993567943573, - -0.0010810154490172863, - 0.027816448360681534, - 0.026042643934488297, - 0.057558976113796234, - -0.013864386826753616, - 0.04250806197524071, - 0.06557751446962357, - 0.02284429594874382, - 0.07405853271484375, - 0.026938017457723618, - -0.04421895742416382, - -0.04515006020665169, - 0.12181121110916138, - -0.03756125271320343, - 0.004845899064093828, - 0.07181832939386368, - -0.001529536210000515, - 0.017629370093345642, - -0.06470608711242676, - -0.002787746489048004, - 0.009170708246529102, - -0.028057973831892014, - 0.08416552096605301, - 0.032940350472927094, - -0.014416085556149483, - 0.04113847017288208, - 0.04639853164553642, - -0.0049102287739515305, - -0.053554147481918335, - -0.11086501181125641, - 0.15409603714942932, - 0.045271433889865875, - 0.01465653907507658, - -0.07471352070569992, - -0.07080671191215515, - 0.09942316263914108, - -0.023636285215616226, - -0.09994032233953476, - -0.055198147892951965, - 0.08141282200813293, - 0.16549062728881836, - -0.028426170349121094, - -0.038404498249292374, - 0.02772606536746025, - 0.12711147964000702, - 0.04499347135424614, - 0.09814967215061188, - 0.0759621188044548, - 0.10287846624851227, - 0.007442581932991743, - 0.03093777596950531, - 0.05855100601911545, - 0.06003308296203613, - 0.0315227210521698, - -0.020807866007089615, - 0.028356939554214478, - -0.011214344762265682, - -0.026853125542402267, - -0.0011568637564778328, - -0.023175891488790512, - -0.008345823734998703, - -0.01349436305463314, - 0.0054573859088122845, - 0.003318965435028076, - 0.020443931221961975, - -0.034833770245313644, - 0.062183864414691925, - 0.019940689206123352, - -0.01843925006687641, - 0.07633303105831146, - 0.04648476094007492, - 0.006451481021940708, - 0.04481981694698334, - -0.07290449738502502, - -0.0989399403333664, - 0.024432167410850525, - -0.0006473178509622812, - -0.0009979411261156201, - 0.05842795968055725, - 0.0470779687166214, - -0.023900527507066727, - 0.11235892027616501, - 0.0650775134563446, - -0.009484140202403069, - 0.041433170437812805, - -0.08686938881874084, - 0.13090765476226807, - 0.08511263132095337, - -0.0171419158577919, - 0.035695623606443405, - -0.03681721165776253, - 0.05405735969543457, - 0.08810330927371979, - -0.14205609261989594, - -0.08561797440052032, - 0.0380837544798851, - -0.0025956700555980206, - -0.013711372390389442, - 0.10192014276981354, - -0.026365328580141068, - 0.01982794515788555, - 0.09954655170440674, - -0.07655389606952667, - -0.06609588861465454, - -0.02775553986430168, - 0.03888038173317909, - -0.09195458889007568, - 0.05020830035209656, - 0.045806337147951126, - -0.007562024053186178, - -0.025427894666790962, - 0.0920066088438034, - -0.002037553582340479, - -0.014566872268915176, - 0.01678907871246338, - -0.03626510500907898, - 0.04148344695568085, - -0.032590076327323914, - 0.006460740230977535, - 0.044672563672065735, - 0.04504762962460518, - 0.03837810829281807, - 0.01426954660564661, - -0.03653022274374962, - -0.11600615084171295, - -0.00519973412156105, - 0.0408778190612793, - 0.07300679385662079, - -0.007406510412693024, - -0.027017386630177498, - -0.05593958497047424, - -0.047655969858169556, - 0.038142282515764236, - -0.001864137127995491, - 0.08079181611537933, - -0.008619028143584728, - -0.009942388162016869, - 0.10925580561161041, - -0.0028608774300664663, - 0.015234522521495819, - -0.04282653331756592, - -0.011723631992936134, - 0.03105689026415348, - 0.03336199000477791, - -0.07925215363502502, - -0.06928686052560806, - 0.0021465288009494543, - 0.011984403245151043, - -0.018805846571922302, - 0.04306516796350479, - 0.050752654671669006, - 0.015741048380732536, - 0.036435529589653015, - -0.054405488073825836, - 0.002457967959344387, - -0.09544603526592255, - -0.04390803351998329, - -0.03200002387166023, - -0.025547679513692856, - -0.03497427701950073, - 0.08301126956939697, - 0.02629021927714348, - 0.043635718524456024, - -0.01585550606250763, - -0.06971190869808197, - -0.07166323810815811, - 0.06328172236680984, - 0.08925635367631912, - 0.009984223172068596, - 0.0418478325009346, - 0.028708338737487793, - -0.010551339015364647, - 0.06710711121559143, - 0.06426020711660385, - 0.08199739456176758, - -0.012986479327082634, - -0.0061281174421310425, - -0.07090484350919724, - 0.09049259126186371, - 0.08384969830513, - -0.10082690417766571, - -0.08927126228809357, - -0.015235744416713715, - -0.06333670020103455, - 0.035051699727773666, - -0.021348778158426285, - 0.015651199966669083, - 0.038222990930080414, - -0.015520840883255005, - -0.086278036236763, - -0.1118512749671936, - 0.08274443447589874, - -0.07864677906036377, - -0.01918899267911911, - -0.05852116644382477, - 0.04227006435394287, - 0.07503014802932739, - 0.02317352220416069, - -0.024019388481974602, - -0.0008100592531263828, - 0.034582674503326416, - -0.0597623735666275, - -0.01632051169872284, - 0.03955225646495819, - 0.012612666934728622, - -0.1105913370847702, - 0.02210206352174282, - -0.07639829069375992, - 0.0775880217552185, - -0.07166879624128342, - 0.16558100283145905, - -0.0013572783209383488, - -0.04954211413860321, - -0.07835662364959717, - 0.028120549395680428, - -0.05300430953502655, - 0.051034968346357346, - 0.05053573101758957, - 0.060512661933898926, - 0.012358414940536022, - -0.08027291297912598, - 0.12044014781713486, - 0.03400711715221405, - -0.033008355647325516, - -0.09692864120006561, - -0.05187544226646423, - -0.051885444670915604, - 0.03630934655666351, - 0.02796216681599617, - -0.09565617144107819, - -0.00820917822420597, - 0.03872651606798172, - -0.0242586862295866, - 0.06536050885915756, - 0.13753463327884674, - 0.049971528351306915, - -0.0948898121714592 - ] - }, - "p245_405.wav": { - "name": "p245", - "embedding": [ - 0.006150184199213982, - 0.07486303895711899, - -0.02663586288690567, - 0.0396827831864357, - -0.07888508588075638, - 0.010312719270586967, - -0.12243877351284027, - 0.13704636693000793, - -0.028949812054634094, - 0.09931938350200653, - -0.055680595338344574, - 0.10770174860954285, - -0.04940880835056305, - -0.16307318210601807, - 0.013370392844080925, - 0.0590081624686718, - 0.01580122858285904, - -0.0392984114587307, - 0.004905190784484148, - -0.04926897957921028, - 0.03190212696790695, - 0.029246345162391663, - 0.023797329515218735, - 0.012916888110339642, - 0.018231522291898727, - 0.08257376402616501, - -0.004941157530993223, - 0.016237521544098854, - -0.02850126102566719, - -0.029211970046162605, - -0.040705520659685135, - 0.08973772823810577, - -0.05868818610906601, - -0.019737152382731438, - 0.027195440605282784, - -0.022931616753339767, - -0.011572642251849174, - -0.027735145762562752, - -0.012257655151188374, - -0.003778803627938032, - -0.07221400737762451, - 0.0690208375453949, - 0.007677680812776089, - 0.0059084706008434296, - 0.04964328184723854, - 0.0069380514323711395, - -0.014495120383799076, - 0.00042348168790340424, - -0.1041998416185379, - 0.10878968238830566, - 0.07086145877838135, - -0.014892393723130226, - -0.07496088743209839, - -0.04954609274864197, - 0.10084711015224457, - -0.0036116731353104115, - -0.07893861830234528, - -0.03851358965039253, - 0.08017651736736298, - 0.11820194125175476, - -0.021269669756293297, - -0.025731150060892105, - 0.028402242809534073, - 0.09672196209430695, - 0.05306058004498482, - 0.06293874233961105, - 0.06270907819271088, - 0.10115713626146317, - -0.03169447183609009, - -0.017554961144924164, - 0.04578503593802452, - 0.0643862634897232, - 0.03271199390292168, - -0.03324565291404724, - -0.0011138077825307846, - -0.007808767259120941, - -0.010554883629083633, - -0.007996179163455963, - -0.02066575363278389, - -0.040589839220047, - -0.03887881711125374, - -0.023241635411977768, - 0.0036468892358243465, - -0.002424311824142933, - -0.016072357073426247, - 0.04164430499076843, - 0.0916631892323494, - -0.012127167545258999, - 0.09183749556541443, - 0.032345131039619446, - -0.027274835854768753, - 0.08409694582223892, - -0.09570327401161194, - -0.010594004765152931, - 0.028875943273305893, - 0.004311061929911375, - 0.03434719890356064, - 0.09402434527873993, - 0.04503396153450012, - -0.010267440229654312, - 0.11724266409873962, - 0.03866402804851532, - 0.02592509798705578, - 0.020174629986286163, - -0.08992619812488556, - 0.09675423055887222, - 0.08227004110813141, - -0.047772254794836044, - 0.06291826069355011, - -0.029017098248004913, - 0.046312734484672546, - 0.038410574197769165, - -0.10050421953201294, - -0.052188120782375336, - -0.010445058345794678, - 0.0026838649064302444, - -0.022569473832845688, - 0.11409549415111542, - 0.0013011815026402473, - 0.030930712819099426, - 0.1021089106798172, - -0.09437777101993561, - -0.08424870669841766, - -0.03104417771100998, - 0.06071043014526367, - -0.07492244243621826, - 0.05981636419892311, - 0.07829509675502777, - -0.0015183121431618929, - 0.04802033305168152, - 0.052258338779211044, - 0.003569698426872492, - 0.027483439072966576, - 0.02442401647567749, - -0.05770420283079147, - 0.007335989736020565, - -0.008484814316034317, - 0.010443726554512978, - 0.055802639573812485, - 0.018053952604532242, - 0.07853730767965317, - -0.01988217793405056, - 0.02538875676691532, - -0.10057611763477325, - 0.012353873811662197, - 0.050762537866830826, - 0.04853710159659386, - -0.02888815477490425, - -0.042304977774620056, - -0.03410155326128006, - -0.08970526605844498, - 0.006184403318911791, - 0.008147899992763996, - 0.08079163730144501, - -0.02827638015151024, - 0.009538035839796066, - 0.10582235455513, - 0.06337680667638779, - -0.02251357212662697, - -0.0641975998878479, - -0.0424477644264698, - 3.231666050851345e-05, - 0.06074313074350357, - -0.09988382458686829, - -0.0822218731045723, - -0.048506107181310654, - 0.05525355041027069, - -0.011318358592689037, - 0.06881704926490784, - 0.04739636555314064, - 0.013998052105307579, - -0.0018474189564585686, - -0.08094143122434616, - 0.04934513196349144, - -0.04532060772180557, - -0.06087994948029518, - -0.03767145797610283, - -0.02540403977036476, - -0.037186309695243835, - 0.07746666669845581, - 0.03033493459224701, - 0.05804086849093437, - -0.02209402807056904, - -0.06133315712213516, - -0.08052507042884827, - 0.018595688045024872, - 0.040038686245679855, - -0.0474863238632679, - 0.06294899433851242, - 0.06302913278341293, - -0.08780153840780258, - 0.04541824758052826, - 0.08086102455854416, - 0.09481661021709442, - -0.05498076602816582, - 0.040893882513046265, - -0.04828319698572159, - 0.06915664672851562, - 0.09316052496433258, - -0.08082294464111328, - -0.07157042622566223, - -0.06226029992103577, - -0.05875064432621002, - 0.05325916409492493, - -0.006705602630972862, - 0.007173493038862944, - 0.008922797627747059, - 0.0010051140561699867, - -0.08783672749996185, - -0.08716591447591782, - 0.09316055476665497, - -0.03933382406830788, - 0.001842681085690856, - -0.08648964017629623, - 0.05154842883348465, - 0.0715637058019638, - 0.03526312857866287, - -0.031575605273246765, - -0.018471233546733856, - 0.049379266798496246, - 0.0066135115921497345, - 0.024725373834371567, - 0.08367547392845154, - 0.05745554342865944, - -0.0649101734161377, - -0.03061269223690033, - -0.06204616278409958, - 0.07283425331115723, - -0.020063556730747223, - 0.1344831883907318, - 0.012971446849405766, - -0.04990969970822334, - -0.08142311871051788, - 0.04272284358739853, - 0.01761619932949543, - 0.04632534831762314, - 0.03681449592113495, - 0.06272977590560913, - 0.01905830018222332, - -0.03894062712788582, - 0.10986852645874023, - 0.03639582172036171, - -0.03918122500181198, - -0.05495746433734894, - -0.02624659799039364, - -0.03168144449591637, - 0.031790416687726974, - 0.0030091446824371815, - -0.10187118500471115, - -0.001163753680884838, - 0.01260887086391449, - 0.008416254073381424, - 0.06408717483282089, - 0.12489663064479828, - 0.07984329760074615, - -0.0996938943862915 - ] - }, - "p245_209.wav": { - "name": "p245", - "embedding": [ - 0.04554061219096184, - 0.11203058063983917, - -0.022690575569868088, - 0.012570882216095924, - -0.0615958496928215, - 0.07376416027545929, - -0.14235931634902954, - 0.15235722064971924, - -0.046706777065992355, - 0.12507732212543488, - -0.046855293214321136, - 0.129477858543396, - -0.024960055947303772, - -0.17176952958106995, - -0.021041613072156906, - 0.06449992954730988, - -0.045246973633766174, - -0.024001698940992355, - -0.03731225058436394, - -0.023389948531985283, - 0.012416157871484756, - 0.00969479326158762, - 0.02865147590637207, - -0.005654540844261646, - 0.04920028895139694, - 0.07328611612319946, - -0.004259578417986631, - 0.03601548820734024, - 0.008022502064704895, - -0.041606515645980835, - -0.045118484646081924, - 0.08548715710639954, - -0.0744706243276596, - 0.00891790259629488, - 0.06726544350385666, - -0.027431055903434753, - -0.009889774955809116, - -0.05986803025007248, - -0.01781226322054863, - 0.0095668388530612, - -0.03194738179445267, - 0.09477731585502625, - 0.03949063643813133, - -0.013258501887321472, - 0.027089383453130722, - 0.03415452316403389, - 0.013282028026878834, - -0.029356781393289566, - -0.10565045475959778, - 0.14943604171276093, - 0.050647784024477005, - -0.012686577625572681, - -0.08229793608188629, - -0.05077778548002243, - 0.10782690346240997, - -0.013646011240780354, - -0.10708905011415482, - -0.04757320135831833, - 0.07076491415500641, - 0.13209493458271027, - -0.032981354743242264, - -0.02989504486322403, - 0.014626540243625641, - 0.11616101861000061, - 0.07205488532781601, - 0.0941612720489502, - 0.06344182044267654, - 0.12834662199020386, - -0.02709992229938507, - 0.02772194892168045, - 0.05921303480863571, - 0.05661766231060028, - 0.03217185288667679, - -0.010190636850893497, - 0.020447812974452972, - -0.015202559530735016, - -0.009804517030715942, - -0.007958756759762764, - -0.020177006721496582, - -0.026570476591587067, - -0.020499303936958313, - 0.01465735025703907, - 0.006320127286016941, - 0.0368126705288887, - -0.019491689279675484, - 0.06378576904535294, - 0.049740225076675415, - -0.01400289498269558, - 0.07588404417037964, - 0.0477759912610054, - -0.004408291541039944, - 0.07181099057197571, - -0.0982455164194107, - -0.07705365866422653, - 0.030861997976899147, - -0.011823715642094612, - 0.02100476250052452, - 0.06868617236614227, - 0.052775196731090546, - 0.005227831192314625, - 0.12321065366268158, - 0.08036582916975021, - -0.0026582195423543453, - 0.03345930576324463, - -0.08013419061899185, - 0.1489182710647583, - 0.06777560710906982, - -0.032821498811244965, - 0.0617402046918869, - -0.0419139489531517, - 0.060627661645412445, - 0.06578347086906433, - -0.13268868625164032, - -0.08071302622556686, - 0.03206353634595871, - 0.007593153510242701, - -0.03766091167926788, - 0.12570424377918243, - -0.012996343895792961, - 0.040022894740104675, - 0.09272041916847229, - -0.08462142944335938, - -0.060799576342105865, - -0.005340151954442263, - 0.046294644474983215, - -0.06936579197645187, - 0.05176942050457001, - 0.059186920523643494, - -0.014587939716875553, - 0.026085246354341507, - 0.10344952344894409, - 0.006480107083916664, - 0.0066401599906384945, - 0.039710916578769684, - -0.026408351957798004, - 0.02463318407535553, - -0.0038742409087717533, - 0.013036051765084267, - 0.039368100464344025, - 0.0274701826274395, - 0.05387243628501892, - -0.010584131814539433, - 0.0007623103447258472, - -0.11440053582191467, - 0.007891575805842876, - 0.044833824038505554, - 0.09002957493066788, - -0.015656176954507828, - -0.019652806222438812, - -0.02561333030462265, - -0.07534916698932648, - -0.007397412322461605, - 0.0013407572405412793, - 0.08129993081092834, - -0.03605617210268974, - -0.002478420501574874, - 0.11295334994792938, - 0.052500493824481964, - 0.008838511072099209, - -0.05739651247859001, - -0.021529018878936768, - 0.009963859803974628, - 0.052483148872852325, - -0.08580954372882843, - -0.07665330171585083, - -0.013039784505963326, - 0.023344095796346664, - -0.0171915665268898, - 0.08285190910100937, - 0.05510025471448898, - 0.01969613879919052, - 0.03363834321498871, - -0.06921479105949402, - 0.023840559646487236, - -0.0830773338675499, - -0.04601935297250748, - -0.025027308613061905, - -0.017561502754688263, - -0.05032380670309067, - 0.08441346138715744, - 0.02640497125685215, - 0.07303734123706818, - -0.013393362984061241, - -0.05665639787912369, - -0.06498357653617859, - 0.05435187369585037, - 0.056136228144168854, - -0.029903363436460495, - 0.03915030509233475, - 0.07154837995767593, - -0.02146207168698311, - 0.03729398921132088, - 0.07908403873443604, - 0.08505338430404663, - -0.042784012854099274, - 0.018649999052286148, - -0.06908175349235535, - 0.08047108352184296, - 0.07198572903871536, - -0.11198446154594421, - -0.07691173255443573, - -0.014908134937286377, - -0.05353359878063202, - 0.011819988489151001, - -0.034393392503261566, - 0.01607479900121689, - 0.026513660326600075, - -0.0025348826311528683, - -0.07555601745843887, - -0.11043053865432739, - 0.08997412025928497, - -0.09585773944854736, - 0.011909783817827702, - -0.07016541063785553, - 0.03988944739103317, - 0.08187173306941986, - 0.0337202213704586, - -0.040319688618183136, - -0.009234657511115074, - 0.04479823634028435, - -0.0054154894314706326, - 0.017220513895154, - 0.07073770463466644, - 0.04830370098352432, - -0.1012454479932785, - 0.005688146688044071, - -0.06045256182551384, - 0.06970404088497162, - -0.03492727130651474, - 0.17103973031044006, - 0.009815742261707783, - -0.04843275994062424, - -0.08546597510576248, - 0.02463780902326107, - -0.033158447593450546, - 0.04538648948073387, - 0.03275530785322189, - 0.07747878134250641, - 0.03365189582109451, - -0.037520162761211395, - 0.13304531574249268, - 0.029347743839025497, - -0.046014294028282166, - -0.07504291832447052, - -0.047618694603443146, - -0.04382602125406265, - 0.04885208606719971, - 0.034145064651966095, - -0.10433944314718246, - -0.017432769760489464, - 0.02739243023097515, - -0.011629210785031319, - 0.07152494043111801, - 0.14030449092388153, - 0.0901455283164978, - -0.1088985800743103 - ] - }, - "p245_262.wav": { - "name": "p245", - "embedding": [ - 0.05120299756526947, - 0.10064674913883209, - -0.009198248386383057, - 0.03181561827659607, - -0.027464676648378372, - 0.059713803231716156, - -0.12019693851470947, - 0.10171031951904297, - -0.0549749955534935, - 0.14529161155223846, - -0.10167531669139862, - 0.08058565109968185, - -0.04520229250192642, - -0.1540006399154663, - -0.030811607837677002, - 0.05386172980070114, - -0.053299810737371445, - -0.01922711730003357, - -0.0534542016685009, - -0.014393138699233532, - 0.01883978210389614, - 0.0478510782122612, - 0.04279084503650665, - 0.000983256846666336, - 0.025578733533620834, - 0.048070650547742844, - -0.008330855518579483, - 0.046740561723709106, - 0.018217366188764572, - -0.04601719602942467, - -0.03640662133693695, - 0.10691242665052414, - -0.03787381947040558, - 0.013880571350455284, - 0.03360014408826828, - 0.02640683576464653, - 0.005446490831673145, - -0.07871174812316895, - -0.022228408604860306, - -0.01679687201976776, - -0.051559366285800934, - 0.05953097343444824, - 0.014877522364258766, - -0.02390565536916256, - 0.047724224627017975, - -0.001975785940885544, - -0.02440449222922325, - -0.04622616991400719, - -0.10330905765295029, - 0.14947204291820526, - 0.07587133347988129, - 0.011020049452781677, - -0.06762873381376266, - -0.07256826758384705, - 0.0993395671248436, - -0.017549198120832443, - -0.11445820331573486, - -0.03620462864637375, - 0.07281570881605148, - 0.16579386591911316, - -0.03506751358509064, - -0.020623572170734406, - 0.025090089067816734, - 0.09251000732183456, - 0.043006882071495056, - 0.09177093207836151, - 0.07299482077360153, - 0.08901026099920273, - 0.009673969820141792, - 0.019041597843170166, - 0.054912857711315155, - 0.05111443251371384, - 0.04096747934818268, - -0.02290019765496254, - 0.015500959008932114, - 0.010975207202136517, - -0.05548204109072685, - 0.029323814436793327, - -0.021801603958010674, - -0.0268276147544384, - -0.01562955603003502, - -0.01665002852678299, - 0.004028484225273132, - 0.0057489871978759766, - -0.02529078722000122, - 0.03868642449378967, - 0.017912309616804123, - -0.025504259392619133, - 0.081025630235672, - 0.01614363305270672, - -0.021524760872125626, - 0.039032407104969025, - -0.05297297239303589, - -0.0774117112159729, - 0.0019693090580403805, - 0.02007894031703472, - -0.020108114928007126, - 0.06561096757650375, - 0.032936111092567444, - -0.03397076576948166, - 0.11859112977981567, - 0.02914871647953987, - 0.012230394408106804, - 0.026038264855742455, - -0.10060828924179077, - 0.10992293059825897, - 0.09210561215877533, - -0.025584470480680466, - 0.04101255163550377, - -0.026945700868964195, - 0.05010461062192917, - 0.094532310962677, - -0.1409962922334671, - -0.06595657020807266, - 0.03477557376027107, - 0.005723160691559315, - 0.003163047833368182, - 0.08979048579931259, - 0.011873684823513031, - 0.009905392304062843, - 0.10700945556163788, - -0.09858332574367523, - -0.07193516194820404, - -0.010667238384485245, - 0.06605319678783417, - -0.07471666485071182, - 0.03627766668796539, - 0.05868104100227356, - -0.007499083876609802, - -0.012288684025406837, - 0.07106181234121323, - -0.011516093276441097, - -0.002640204969793558, - 0.01817549578845501, - -0.05530492216348648, - 0.016140220686793327, - -0.05048815533518791, - -0.021855786442756653, - 0.06002534180879593, - 0.042694251984357834, - 0.040740713477134705, - -0.007539510261267424, - -0.03849566727876663, - -0.09793002903461456, - -0.00781581737101078, - 0.05755595490336418, - 0.06336479634046555, - -0.015316218137741089, - -0.006803087890148163, - -0.04839935153722763, - -0.06794807314872742, - 0.03540760278701782, - -0.026256216689944267, - 0.08967643976211548, - -0.01670888438820839, - 0.0030486376490443945, - 0.10669426620006561, - 0.005334311630576849, - -0.012910946272313595, - -0.0673343613743782, - -0.017182420939207077, - 0.022405754774808884, - 0.0445699505507946, - -0.06255318224430084, - -0.07514600455760956, - 0.01455737091600895, - 0.02201361209154129, - -0.015958227217197418, - 0.04392615705728531, - 0.02607680857181549, - 0.024369925260543823, - 0.02490142360329628, - -0.0620080940425396, - 0.017749782651662827, - -0.09628967940807343, - -0.05716310441493988, - 0.0007887704996392131, - -0.016899889335036278, - 0.00347130442969501, - 0.0864909216761589, - 0.023680610582232475, - 0.019430886954069138, - -0.004094429314136505, - -0.09232793748378754, - -0.0800931453704834, - 0.0773281455039978, - 0.07245152443647385, - -0.002572190947830677, - 0.04278305172920227, - 0.05977634713053703, - -0.03460359200835228, - 0.04080736264586449, - 0.05990650877356529, - 0.09472056478261948, - -0.010851381346583366, - 0.0008565721800550818, - -0.0702894851565361, - 0.060493744909763336, - 0.07853777706623077, - -0.09640085697174072, - -0.08468067646026611, - -0.034121692180633545, - -0.05222040042281151, - 0.05006510019302368, - -0.02324375882744789, - 0.00355984247289598, - 0.02056746557354927, - -0.04795808717608452, - -0.10008635371923447, - -0.10249678790569305, - 0.0991460531949997, - -0.040329381823539734, - -0.03207778185606003, - -0.062081363052129745, - 0.038931041955947876, - 0.05032260715961456, - 0.04021667689085007, - -0.012123688124120235, - 0.023056063801050186, - 0.03829475864768028, - -0.07204142212867737, - -0.01737365499138832, - 0.05538780987262726, - 0.006631760857999325, - -0.09748014807701111, - 0.02391437254846096, - -0.07799693197011948, - 0.09640856832265854, - -0.0530552864074707, - 0.14040398597717285, - -0.012564594857394695, - -0.04234730452299118, - -0.08746644109487534, - 0.03843048959970474, - -0.01989157125353813, - 0.0356820747256279, - 0.027692623436450958, - 0.04851682111620903, - 0.03417710214853287, - -0.05843823403120041, - 0.09970708191394806, - 0.03376253694295883, - -0.019092349335551262, - -0.05432802438735962, - -0.05789197236299515, - -0.04716051369905472, - -0.0011810425203293562, - -0.020108606666326523, - -0.08368172496557236, - 0.0032345810905098915, - -0.0013456593733280897, - -0.014470599591732025, - 0.055579543113708496, - 0.12378937005996704, - 0.06954917311668396, - -0.11114807426929474 - ] - }, - "p245_307.wav": { - "name": "p245", - "embedding": [ - 0.07949461787939072, - 0.060568638145923615, - 0.011187783442437649, - -0.012897009961307049, - -0.021683555096387863, - 0.038954585790634155, - -0.11727048456668854, - 0.12728755176067352, - -0.01069733314216137, - 0.0712699443101883, - -0.10045093297958374, - 0.08795025944709778, - -0.009208133444190025, - -0.1474396288394928, - -0.05166105553507805, - 0.03411835432052612, - -0.04587198421359062, - 0.0029495980124920607, - -0.07381324470043182, - -0.0390251986682415, - 0.006124039646238089, - 0.03995516896247864, - 0.04736756533384323, - 0.0026155165396630764, - 0.02561923861503601, - 0.04640624672174454, - 0.00765447411686182, - 0.03446386754512787, - 0.022265907377004623, - -0.030223004519939423, - -0.001370082376524806, - 0.06214786693453789, - -0.024774428457021713, - -0.013426894322037697, - 0.06032898277044296, - 0.004201333969831467, - 0.025060102343559265, - -0.08458250761032104, - -0.053098034113645554, - 0.03669635206460953, - -0.04677743837237358, - 0.0747847780585289, - 0.04658300802111626, - -0.0320415161550045, - 0.04678977280855179, - 0.025038182735443115, - -0.007283718325197697, - -0.065359927713871, - -0.11309584230184555, - 0.16030576825141907, - 0.03372855484485626, - 0.038035694509744644, - -0.11493288725614548, - -0.020032528787851334, - 0.08441051840782166, - -0.051686905324459076, - -0.06517340987920761, - -0.021187935024499893, - 0.041899263858795166, - 0.1304379403591156, - -0.010436488315463066, - -0.02348453179001808, - 0.035457950085401535, - 0.07750619947910309, - 0.03274114429950714, - 0.02156207524240017, - 0.12371983379125595, - 0.08539639413356781, - -0.022217383608222008, - 0.046658843755722046, - 0.050084859132766724, - 0.049062035977840424, - 0.06012868136167526, - -0.007840721867978573, - 0.019550366327166557, - -0.013254883699119091, - -0.03472450375556946, - -0.007717333734035492, - -0.03391638025641441, - -0.013201042078435421, - 0.018303032964468002, - 0.029951438307762146, - 0.026134736835956573, - 0.03313012048602104, - -0.06049787625670433, - 0.06319088488817215, - -0.007476852275431156, - 0.012833978049457073, - 0.05554402992129326, - 0.0520857572555542, - 0.0007505137473344803, - 0.01314343698322773, - -0.04405715689063072, - -0.101631760597229, - -0.00985995028167963, - -0.012346148490905762, - 0.00989186018705368, - 0.021427204832434654, - 0.04406476020812988, - -0.020252034068107605, - 0.11778900027275085, - 0.04004111886024475, - -0.0057243406772613525, - 0.0118165984749794, - -0.07032965868711472, - 0.07441701740026474, - 0.1132490485906601, - -0.01473800279200077, - 0.04842686653137207, - -0.03676936775445938, - 0.03227347880601883, - 0.06824705004692078, - -0.10059110820293427, - -0.050666436553001404, - 0.034025922417640686, - 0.01992403343319893, - 0.06628663092851639, - 0.09773280471563339, - -0.00686648627743125, - 0.03480812534689903, - 0.07369277626276016, - -0.06246021017432213, - -0.02311760187149048, - 0.004844106733798981, - 0.025671040639281273, - -0.023734595626592636, - 0.035982199013233185, - 0.03417159616947174, - 0.02171308360993862, - -0.03762689232826233, - 0.06432121247053146, - 0.00026883557438850403, - -0.010563733987510204, - -0.04531251639127731, - 0.01793282851576805, - 0.04393079876899719, - -0.01043899916112423, - -0.03221121057868004, - 0.05454322695732117, - 0.08619183301925659, - -7.935737812658772e-05, - 0.057754889130592346, - -0.06459271907806396, - -0.0988495945930481, - -0.014938399195671082, - 0.013154792599380016, - 0.07626243680715561, - -0.011631235480308533, - -0.023521875962615013, - -0.0593317411839962, - 0.0027350708842277527, - 0.008922724053263664, - -0.0015894817188382149, - 0.05241117998957634, - 0.019609250128269196, - -0.0074869743548333645, - 0.07494091987609863, - -0.02073526754975319, - 0.005760747008025646, - -0.027702657505869865, - 0.0036679785698652267, - 0.013160894624888897, - 0.03709305822849274, - -0.01999766007065773, - -0.07556463778018951, - 0.003888395382091403, - -0.012878922745585442, - -0.021384499967098236, - 0.021495744585990906, - 0.018334360793232918, - -0.01882268860936165, - 0.007084686309099197, - -0.0957961231470108, - 0.024479221552610397, - -0.11162912845611572, - -0.044010233134031296, - 0.04427838325500488, - -0.010144739411771297, - -0.01014002040028572, - 0.07332593947649002, - 0.035177893936634064, - 0.04477391391992569, - -0.02435200661420822, - -0.0928417444229126, - -0.01848919317126274, - 0.05670997500419617, - 0.05213698372244835, - 0.006668459624052048, - 0.024060701951384544, - 0.03254369646310806, - 0.015387165360152721, - 0.07812749594449997, - 0.059329282492399216, - 0.043402787297964096, - -0.026623714715242386, - -0.0352184996008873, - -0.009905691258609295, - 0.08500052988529205, - 0.026410698890686035, - -0.06237661466002464, - -0.07447698712348938, - -0.013357012532651424, - -0.038861218839883804, - 0.014166364446282387, - 0.01808328554034233, - 0.03062797151505947, - 0.045820802450180054, - -0.017765365540981293, - -0.08114000409841537, - -0.06574037671089172, - 0.04714152216911316, - -0.05616933852434158, - -0.008574734441936016, - -0.04053812474012375, - 0.025975925847887993, - 0.09962654113769531, - -0.012783469632267952, - 0.012731073424220085, - -0.014211846515536308, - -0.0182407908141613, - -0.05733984708786011, - -0.058074288070201874, - -0.012579414062201977, - 0.016277872025966644, - -0.07515512406826019, - 0.02345399372279644, - -0.061218541115522385, - 0.06251329183578491, - -0.011283209547400475, - 0.09383877366781235, - 0.019841421395540237, - -0.04171907156705856, - -0.07871886342763901, - 0.006532335188239813, - -0.037885598838329315, - 0.06602694094181061, - 0.03854357451200485, - 0.026059377938508987, - 0.027344686910510063, - -0.07157064974308014, - 0.08329394459724426, - 0.04517119750380516, - -0.06972470879554749, - -0.062236689031124115, - -0.0462288074195385, - -0.020593494176864624, - -0.0034223159309476614, - -0.008592184633016586, - -0.024082964286208153, - 0.010761437937617302, - -0.0004382531042210758, - -0.015213320031762123, - 0.04773759841918945, - 0.08949684351682663, - 0.04265237972140312, - -0.09109517931938171 - ] - }, - "p245_317.wav": { - "name": "p245", - "embedding": [ - 0.07287262380123138, - 0.09812655299901962, - -0.021208832040429115, - 0.03850402310490608, - -0.07162696123123169, - 0.0648140236735344, - -0.12628519535064697, - 0.13974134624004364, - -0.02610226720571518, - 0.129885733127594, - -0.06640173494815826, - 0.14288440346717834, - -0.010287001729011536, - -0.1601899266242981, - -0.021731993183493614, - 0.04952923208475113, - -0.021700704470276833, - -0.02625288814306259, - -0.023985104635357857, - -0.028499871492385864, - 0.03118227608501911, - 0.04160599410533905, - 0.05332249402999878, - -0.002992046996951103, - 0.054745152592659, - 0.06966624408960342, - -0.0009395353263244033, - 0.04502046853303909, - 0.008063578978180885, - -0.08579669147729874, - -0.057160384953022, - 0.0945606380701065, - -0.061264101415872574, - 0.0032800287008285522, - 0.029076963663101196, - -0.022528348490595818, - 0.00380022544413805, - -0.06907157599925995, - -0.023876851424574852, - 0.007949399761855602, - -0.01676177605986595, - 0.08136487007141113, - 0.023283667862415314, - -0.036747563630342484, - 0.02962793968617916, - 0.012359404936432838, - -0.008387601934373379, - -0.03573586046695709, - -0.11570741981267929, - 0.1545926034450531, - 0.044398095458745956, - 0.014608017168939114, - -0.09082023799419403, - -0.06231624633073807, - 0.09607076644897461, - -0.018600165843963623, - -0.08647225052118301, - -0.01390514150261879, - 0.05296076089143753, - 0.14547762274742126, - -0.02452581189572811, - -0.054665327072143555, - 0.03569508343935013, - 0.09698200225830078, - 0.07168664038181305, - 0.061679258942604065, - 0.09329447150230408, - 0.10733305662870407, - -0.030396249145269394, - 0.026943553239107132, - 0.03952915221452713, - 0.08464960753917694, - 0.0612327866256237, - -0.005286802537739277, - 0.01881735771894455, - -0.011168573051691055, - -0.016965147107839584, - -0.015385551378130913, - -0.024055443704128265, - -0.031704798340797424, - -0.00820000097155571, - 0.0071626221761107445, - 0.02996157482266426, - 0.022731129080057144, - -0.0473756417632103, - 0.06988761574029922, - 0.03998790681362152, - -0.021025387570261955, - 0.0691564679145813, - 0.02385052666068077, - 0.0004879394546151161, - 0.06089800223708153, - -0.10552428662776947, - -0.08132579922676086, - 0.05395034700632095, - 0.010697264224290848, - 0.041333168745040894, - 0.07342034578323364, - 0.05016401782631874, - -0.01877385377883911, - 0.12157661467790604, - 0.06947772204875946, - 0.004803154617547989, - 0.02142377942800522, - -0.07109080255031586, - 0.13085311651229858, - 0.10612626373767853, - -0.027801712974905968, - 0.06976963579654694, - -0.043461378663778305, - 0.07607149332761765, - 0.050334494560956955, - -0.1334487795829773, - -0.0855933129787445, - 0.0005198372527956963, - 0.0016730213537812233, - -0.00435918103903532, - 0.10285373032093048, - -0.017508653923869133, - 0.0595431849360466, - 0.0861605703830719, - -0.09845541417598724, - -0.04790602624416351, - -0.011123725213110447, - 0.05006946250796318, - -0.09202638268470764, - 0.06582152098417282, - 0.060340359807014465, - -0.013127563521265984, - 0.010660240426659584, - 0.06433922052383423, - -0.008391168899834156, - -8.185161277651787e-05, - 0.026775870472192764, - -0.03909194469451904, - 0.003920567687600851, - -0.014250450767576694, - -0.013476291671395302, - 0.044944800436496735, - 0.024158291518688202, - 0.053910691291093826, - -0.011822624132037163, - 0.0022026468068361282, - -0.12252455204725266, - 0.023967724293470383, - 0.040107645094394684, - 0.06133612245321274, - -0.01878652721643448, - -0.039683207869529724, - -0.0421222485601902, - -0.0647391751408577, - 0.026795582845807076, - 0.014656484127044678, - 0.06179057061672211, - -0.013332745991647243, - 0.0279209166765213, - 0.10027885437011719, - 0.04867444187402725, - -0.0032559907995164394, - -0.04472486302256584, - -0.027477780357003212, - 0.0199548602104187, - 0.058781616389751434, - -0.06735870242118835, - -0.0880742073059082, - -0.01830691657960415, - 0.015597738325595856, - -0.03948426619172096, - 0.07772333920001984, - 0.056880123913288116, - 0.018179992213845253, - 0.025067970156669617, - -0.050757184624671936, - 0.0135984281077981, - -0.08538985252380371, - -0.06018362566828728, - -0.010940629988908768, - -0.018102725967764854, - -0.045388177037239075, - 0.08171119540929794, - 0.046842060983181, - 0.07542505860328674, - -0.03924477845430374, - -0.03681180253624916, - -0.07686837017536163, - 0.040634848177433014, - 0.04490532726049423, - 0.0009370064362883568, - 0.038233280181884766, - 0.054543301463127136, - -0.011375145986676216, - 0.07440096884965897, - 0.07758422195911407, - 0.07506166398525238, - -0.024680450558662415, - 0.009687655605375767, - -0.05667247623205185, - 0.09242541342973709, - 0.09380477666854858, - -0.08070839196443558, - -0.10032813251018524, - -0.0528007373213768, - -0.08782586455345154, - 0.047522641718387604, - -0.012635288760066032, - 0.009085020050406456, - 0.04629762843251228, - -0.00791641604155302, - -0.09959010779857635, - -0.10159891843795776, - 0.09411372244358063, - -0.05321040377020836, - -0.005753286182880402, - -0.08195038139820099, - 0.04734867811203003, - 0.0924757719039917, - 0.021127838641405106, - -0.02258911356329918, - -0.018679888918995857, - 0.04119525104761124, - -0.028386883437633514, - 0.011035250499844551, - 0.06891360878944397, - 0.043381884694099426, - -0.10275459289550781, - 0.010195378214120865, - -0.06297419965267181, - 0.05426783859729767, - -0.03645864129066467, - 0.16502799093723297, - 0.01321455743163824, - -0.04021880403161049, - -0.07766009122133255, - 0.06149517372250557, - -0.03305260092020035, - 0.049475111067295074, - 0.038428179919719696, - 0.04784597083926201, - 0.04143907129764557, - -0.08937501907348633, - 0.09718994051218033, - 0.0493609681725502, - -0.06215425580739975, - -0.0791134238243103, - -0.06024787575006485, - -0.03535911440849304, - 0.0430782288312912, - 0.01140533946454525, - -0.07397814095020294, - -0.01946890540421009, - 0.02563999593257904, - 0.008153471164405346, - 0.06780000776052475, - 0.14000800251960754, - 0.054974816739559174, - -0.10458836704492569 - ] - }, - "p245_415.wav": { - "name": "p245", - "embedding": [ - 0.058067284524440765, - 0.0893227607011795, - -0.030312389135360718, - 0.04646793380379677, - -0.07127591222524643, - 0.04332885518670082, - -0.12645582854747772, - 0.1532977819442749, - -0.025171171873807907, - 0.11037133634090424, - -0.04186585918068886, - 0.14367029070854187, - -0.02286054939031601, - -0.1568336933851242, - -0.00952941458672285, - 0.06290179491043091, - -0.02803073823451996, - -0.03793657571077347, - -0.027420761063694954, - -0.02836836315691471, - 0.025234702974557877, - 0.03681153804063797, - 0.048528462648391724, - 0.004666874185204506, - 0.033877380192279816, - 0.07434079051017761, - 0.000545359100215137, - 0.04132701829075813, - 0.005177669692784548, - -0.0808003693819046, - -0.03775056451559067, - 0.05911478400230408, - -0.045480161905288696, - 0.0018779075471684337, - 0.043788984417915344, - -0.02096332050859928, - 0.009326329454779625, - -0.06752228736877441, - -0.03043370321393013, - 0.009451724588871002, - -0.028687600046396255, - 0.08782792836427689, - 0.023714181035757065, - -0.05109623819589615, - 0.03368489816784859, - 0.016965797170996666, - -0.012417862191796303, - -0.034621674567461014, - -0.1304643750190735, - 0.15918204188346863, - 0.06985440850257874, - 0.02254994958639145, - -0.07797078788280487, - -0.0716136246919632, - 0.10306482017040253, - -0.01833372190594673, - -0.0862683653831482, - -0.03610682860016823, - 0.04159664362668991, - 0.14838957786560059, - -0.03147515654563904, - -0.0333709716796875, - 0.04611481726169586, - 0.11668632924556732, - 0.08487186580896378, - 0.05578969419002533, - 0.0848270058631897, - 0.1147758811712265, - -0.0378837063908577, - 0.014784060418605804, - 0.04396802932024002, - 0.09811017662286758, - 0.05499691516160965, - 0.02712377905845642, - 0.012732685543596745, - -0.0035715075209736824, - -0.017779627814888954, - -0.030222231522202492, - -0.01923312246799469, - -0.03810152783989906, - -0.011781765148043633, - 0.028557024896144867, - 0.031861163675785065, - 0.035915203392505646, - -0.02787952683866024, - 0.08333998918533325, - 0.04314670339226723, - -0.036074694246053696, - 0.05345572531223297, - 0.010091962292790413, - -0.0012261332012712955, - 0.06143466383218765, - -0.09292957186698914, - -0.07938869297504425, - 0.0391998291015625, - 0.007879040203988552, - 0.04109611734747887, - 0.06540139019489288, - 0.03824850171804428, - -0.011523354798555374, - 0.12833857536315918, - 0.06414703279733658, - -0.008417329750955105, - 0.015326978638768196, - -0.06074152886867523, - 0.12265419960021973, - 0.09261180460453033, - -0.02315191552042961, - 0.0666816234588623, - -0.04495909810066223, - 0.05614197999238968, - 0.051403872668743134, - -0.13539981842041016, - -0.09437233954668045, - 0.013843344524502754, - 0.016391493380069733, - -0.0013717780821025372, - 0.1151512861251831, - 0.004831231199204922, - 0.08363498747348785, - 0.11100906878709793, - -0.09734444320201874, - -0.05176212638616562, - -0.017288226634263992, - 0.06478697806596756, - -0.07065464556217194, - 0.07043248414993286, - 0.07251787185668945, - -0.02083948627114296, - 0.013036048971116543, - 0.06383423507213593, - -0.005000622943043709, - 0.005346992984414101, - 0.029670171439647675, - -0.04830852150917053, - 0.0018671108409762383, - -0.023306110873818398, - -0.020518699660897255, - 0.05410680174827576, - 0.029584288597106934, - 0.042308881878852844, - -0.021279219537973404, - -0.012007934972643852, - -0.1413489580154419, - 0.020468702539801598, - 0.025663383305072784, - 0.08102765679359436, - -0.01640687882900238, - -0.04258911311626434, - -0.03528730571269989, - -0.05767165124416351, - -0.0024513958487659693, - 0.002797134220600128, - 0.06926766037940979, - -0.03796062618494034, - 0.026113150641322136, - 0.08327862620353699, - 0.03159724548459053, - 0.0011524453293532133, - -0.026547076180577278, - -0.030328424647450447, - 0.011921278201043606, - 0.0483260303735733, - -0.054908387362957, - -0.09149367362260818, - -0.02303958497941494, - 0.03207702189683914, - -0.03456190228462219, - 0.07238362729549408, - 0.03153205290436745, - 0.02135132998228073, - 0.014784670434892178, - -0.03967716544866562, - 0.009070847183465958, - -0.07512524724006653, - -0.06463807076215744, - -0.0033189565874636173, - -0.007927434518933296, - -0.05632192641496658, - 0.06921432912349701, - 0.05591483414173126, - 0.09423528611660004, - -0.02666090801358223, - -0.039530448615550995, - -0.08316946029663086, - 0.029457014054059982, - 0.03649041801691055, - -0.003669874044135213, - 0.0331098698079586, - 0.06503357738256454, - -0.0008020875975489616, - 0.060752056539058685, - 0.06747779995203018, - 0.06465288996696472, - -0.011219233274459839, - -0.004629882052540779, - -0.06862035393714905, - 0.10259202867746353, - 0.10305620729923248, - -0.07967409491539001, - -0.07247686386108398, - -0.05361294746398926, - -0.08480080962181091, - 0.031255416572093964, - -0.019485395401716232, - 0.026248019188642502, - 0.04815208166837692, - 0.0016986991977319121, - -0.11271826922893524, - -0.10436701774597168, - 0.08799659460783005, - -0.06697031855583191, - 0.008180145174264908, - -0.06587572395801544, - 0.03425324708223343, - 0.10831750929355621, - 0.028170038014650345, - -0.013335422612726688, - -0.03229941800236702, - 0.04446359723806381, - -0.017090871930122375, - 0.022185014560818672, - 0.08182848989963531, - 0.05815521627664566, - -0.10734014213085175, - 0.006630954798310995, - -0.05975199118256569, - 0.046057406812906265, - -0.030730079859495163, - 0.1507444679737091, - 0.025428546592593193, - -0.0332195870578289, - -0.100026436150074, - 0.0454246923327446, - -0.032541461288928986, - 0.07304184883832932, - 0.01367249060422182, - 0.057981640100479126, - 0.04804261028766632, - -0.07732157409191132, - 0.11484897881746292, - 0.05566709488630295, - -0.06280164420604706, - -0.07976042479276657, - -0.06635139137506485, - -0.03813374415040016, - 0.050071291625499725, - 0.017020627856254578, - -0.06796260178089142, - -0.029163800179958344, - 0.011476422660052776, - 0.002468606922775507, - 0.0651286318898201, - 0.15095466375350952, - 0.0551203116774559, - -0.1047293096780777 - ] - }, - "p245_015.wav": { - "name": "p245", - "embedding": [ - 0.04768791422247887, - 0.1038023978471756, - -0.008375261910259724, - 0.02361338585615158, - -0.04966993257403374, - 0.04966174438595772, - -0.13655820488929749, - 0.1499980390071869, - -0.03699888288974762, - 0.12817606329917908, - -0.07830827683210373, - 0.11906859278678894, - -0.03640062361955643, - -0.1703571379184723, - -0.038617633283138275, - 0.0552348867058754, - -0.040082044899463654, - -0.028848471119999886, - -0.02262851595878601, - -0.022506285458803177, - 0.03725938871502876, - 0.03424092382192612, - 0.02840529754757881, - 0.030595460906624794, - 0.011483050882816315, - 0.06076318025588989, - 0.003220993559807539, - 0.05165772885084152, - 0.02488390915095806, - -0.034632109105587006, - -0.02764706313610077, - 0.10113180428743362, - -0.031724605709314346, - 0.026377566158771515, - 0.05848006531596184, - 0.004901512060314417, - -0.00010101590305566788, - -0.060751866549253464, - -0.025395167991518974, - -0.009939974173903465, - -0.04935191199183464, - 0.0657394751906395, - 0.03179045766592026, - -0.025397110730409622, - 0.04179215058684349, - 0.030536971986293793, - -0.01239502802491188, - -0.04455961659550667, - -0.11052795499563217, - 0.15598750114440918, - 0.07115281373262405, - 0.00021465029567480087, - -0.0696483626961708, - -0.0649842619895935, - 0.10455935448408127, - -0.029638420790433884, - -0.11381565034389496, - -0.027551673352718353, - 0.08945506066083908, - 0.16281172633171082, - -0.03651569411158562, - -0.03665367141366005, - 0.028626572340726852, - 0.14046983420848846, - 0.05646975710988045, - 0.08372870087623596, - 0.08327992260456085, - 0.11525706946849823, - -0.03297501429915428, - 0.005391135346144438, - 0.05052007734775543, - 0.07390698790550232, - 0.056996751576662064, - 0.002330843359231949, - 0.010515816509723663, - 0.0046604713425040245, - -0.011606510728597641, - 0.016207868233323097, - -0.03990662842988968, - -0.025540757924318314, - -0.033042244613170624, - 0.012594479136168957, - -0.005486670881509781, - 0.017588326707482338, - -0.01607774943113327, - 0.06642503291368484, - 0.033493414521217346, - -0.0109384311363101, - 0.06355946511030197, - 0.03995100408792496, - 0.009713450446724892, - 0.06375499814748764, - -0.06752899289131165, - -0.07547534257173538, - 0.009767625480890274, - -0.011508455500006676, - 0.029611457139253616, - 0.07538942992687225, - 0.03697431460022926, - -0.009724915027618408, - 0.12485173344612122, - 0.047102976590394974, - -0.008874129503965378, - 0.025667879730463028, - -0.10017427802085876, - 0.12589143216609955, - 0.0819205492734909, - -0.0282256081700325, - 0.045261189341545105, - -0.04803197830915451, - 0.06286067515611649, - 0.07022027671337128, - -0.12824732065200806, - -0.07029028236865997, - 0.034385766834020615, - 0.037629384547472, - -0.012226099148392677, - 0.11054117977619171, - -0.002343215746805072, - 0.04066471382975578, - 0.10653765499591827, - -0.07831638306379318, - -0.05854064226150513, - -0.026472916826605797, - 0.047836773097515106, - -0.06946991384029388, - 0.05861261487007141, - 0.05053884908556938, - -0.003966029733419418, - 0.007339124102145433, - 0.08144031465053558, - -0.008454571478068829, - -0.0008470308966934681, - 0.015244506299495697, - -0.06007556989789009, - 0.006225106306374073, - -0.03031955100595951, - 0.000731293112039566, - 0.030719637870788574, - 0.05225618928670883, - 0.037865765392780304, - 0.010966302827000618, - -0.04077623784542084, - -0.11998993903398514, - 0.0026885599363595247, - 0.04770486801862717, - 0.09139063954353333, - -0.0013836813159286976, - -0.0351170152425766, - -0.032790206372737885, - -0.041779905557632446, - 0.0065431976690888405, - -0.011324722319841385, - 0.06559690833091736, - -0.04281152784824371, - -0.0033611564431339502, - 0.09369189292192459, - 0.014679024927318096, - -0.005216902121901512, - -0.055509135127067566, - -0.02560071274638176, - 0.002007425297051668, - 0.04050833359360695, - -0.07383427023887634, - -0.08304480463266373, - -0.0002447531442157924, - 0.041305284947156906, - -0.02455410361289978, - 0.058123134076595306, - 0.032818008214235306, - 0.00947754830121994, - 0.03128841519355774, - -0.0596349872648716, - 0.004870274104177952, - -0.11454420536756516, - -0.08269444108009338, - -0.000829013530164957, - 0.00200573168694973, - -0.0019308160990476608, - 0.06140463799238205, - 0.02870461903512478, - 0.05767691880464554, - 0.0036675629671663046, - -0.07797309756278992, - -0.08698533475399017, - 0.0574752539396286, - 0.0593416765332222, - 0.006689848378300667, - 0.05444847047328949, - 0.06600314378738403, - -0.03726369887590408, - 0.06448431313037872, - 0.05622803419828415, - 0.09721706062555313, - -0.028397785499691963, - 0.014910204336047173, - -0.07911734282970428, - 0.06420159339904785, - 0.08964196592569351, - -0.09473291039466858, - -0.08922693878412247, - -0.03390422463417053, - -0.058025240898132324, - 0.025755729526281357, - -0.022725708782672882, - 0.013013463467359543, - 0.02353849448263645, - -0.00919348280876875, - -0.10230857878923416, - -0.09148150682449341, - 0.08303786814212799, - -0.07841156423091888, - 0.005270365159958601, - -0.06845597922801971, - 0.04583996906876564, - 0.1019999161362648, - 0.030643977224826813, - -0.024208730086684227, - -0.011073879897594452, - 0.044817790389060974, - -0.04460766911506653, - -0.0075659602880477905, - 0.04045931622385979, - 0.03475702553987503, - -0.10747605562210083, - 0.01045961119234562, - -0.07758840918540955, - 0.05325476452708244, - -0.04263392463326454, - 0.15609893202781677, - 0.0094844875857234, - -0.06034635007381439, - -0.08462570607662201, - 0.021879073232412338, - -0.02535025030374527, - 0.050990503281354904, - 0.023496998474001884, - 0.0638401210308075, - 0.022477077320218086, - -0.06755144894123077, - 0.12847772240638733, - 0.043955229222774506, - -0.05313151329755783, - -0.0669863373041153, - -0.05408445745706558, - -0.042849231511354446, - 0.019862400367856026, - 0.008999675512313843, - -0.08073919266462326, - -0.041148602962493896, - 0.007624457590281963, - -0.022051235660910606, - 0.07023415714502335, - 0.1460942178964615, - 0.06400677561759949, - -0.11963648349046707 - ] - }, - "p245_032.wav": { - "name": "p245", - "embedding": [ - -0.01188711915165186, - 0.06625522673130035, - -0.00831049308180809, - -0.004781907424330711, - -0.052668534219264984, - -0.0048242006450891495, - -0.11836540699005127, - 0.08616682142019272, - -0.04351551830768585, - 0.1175503134727478, - -0.05088035762310028, - 0.09620077908039093, - -0.061810627579689026, - -0.10452895611524582, - 0.01632961817085743, - 0.042015574872493744, - 0.005897304974496365, - -0.03409339860081673, - 0.027958499267697334, - -0.0645514577627182, - 0.03647718206048012, - 0.030470484867691994, - 0.030655601993203163, - -0.01934850588440895, - 0.003906670957803726, - 0.10976450890302658, - -0.00640774006024003, - -0.0059716845862567425, - -0.02210822142660618, - -0.06405752152204514, - -0.019168052822351456, - 0.058570604771375656, - -0.04099530354142189, - -0.03509947657585144, - 0.017616426572203636, - 0.005466646980494261, - -0.01976843550801277, - 0.00806850753724575, - 0.013202630914747715, - 0.020887523889541626, - -0.10191480070352554, - 0.07419765740633011, - 0.014681350439786911, - -0.028000010177493095, - 0.04671332985162735, - -0.027274053543806076, - -0.009805994108319283, - 0.05115870013833046, - -0.05446751415729523, - 0.07528532296419144, - 0.056024834513664246, - 0.02607259340584278, - -0.0389796607196331, - -0.005889305844902992, - 0.0819193422794342, - -0.0019398597069084644, - -0.10414610803127289, - -0.0556391105055809, - 0.03510364517569542, - 0.08774062991142273, - -0.020911961793899536, - -0.03733760491013527, - 0.03289172425866127, - 0.043754030019044876, - 0.02807454764842987, - 0.053819455206394196, - 0.079327292740345, - 0.04505787044763565, - 0.01673889346420765, - -0.043045904487371445, - 0.04236074909567833, - 0.08083927631378174, - 0.017340268939733505, - -0.01643211580812931, - 0.005147438496351242, - -0.01772492378950119, - -0.0033138245344161987, - -0.023161349818110466, - 0.0021698414348065853, - -0.04750949889421463, - -0.07763303816318512, - -0.010324839502573013, - -0.01793944649398327, - -0.017057523131370544, - 0.0038300591986626387, - 0.011483555659651756, - 0.0899091362953186, - -0.015438033267855644, - 0.07464599609375, - 0.021847082301974297, - -0.03105020895600319, - 0.024164939299225807, - -0.0552210807800293, - 0.02267400547862053, - -0.032534364610910416, - 0.0014012441970407963, - 0.07328041642904282, - 0.07513455301523209, - 0.018158914521336555, - 0.05976384878158569, - 0.07564116269350052, - 0.04120542109012604, - 0.03481660783290863, - -0.01308203674852848, - -0.10204945504665375, - 0.09059125185012817, - 0.08239862322807312, - -0.052623942494392395, - 0.02987281233072281, - 0.009111860767006874, - 0.019559646025300026, - -0.007728610187768936, - -0.04271340370178223, - -0.038701750338077545, - -0.028318999335169792, - 0.01738334447145462, - -0.009474573656916618, - 0.10328489542007446, - 0.008171099238097668, - 0.013271029107272625, - 0.10169035941362381, - -0.06226537749171257, - -0.09379822760820389, - -0.04555366188287735, - 0.006536991335451603, - -0.09034588932991028, - 0.0816916897892952, - 0.08206852525472641, - 0.025976384058594704, - 0.05753330886363983, - 0.10056596994400024, - 0.04490719735622406, - 0.028951425105333328, - -0.012007491663098335, - -0.0375346876680851, - -0.02729448676109314, - -0.0016618762165307999, - 0.03772684186697006, - 0.09772370010614395, - 0.022057216614484787, - 0.11797572672367096, - 0.017297696322202682, - 0.03930283337831497, - -0.08895692229270935, - -0.0028343163430690765, - 0.052743859589099884, - -0.005000583827495575, - -0.04438042640686035, - -0.057568684220314026, - -0.02071535773575306, - -0.0772814080119133, - -0.02856944128870964, - -0.015664374455809593, - 0.10269123315811157, - -0.02886970527470112, - 0.002438697963953018, - 0.10477792471647263, - 0.03162193298339844, - -0.035482730716466904, - -0.0743105486035347, - -0.027705896645784378, - -0.030887611210346222, - 0.03420909866690636, - -0.12244793772697449, - -0.08316662907600403, - -0.06264621019363403, - 0.056584492325782776, - 0.024196021258831024, - 0.0590653121471405, - 0.08234939724206924, - -0.0035608764737844467, - 0.024543220177292824, - -0.0035933051258325577, - 0.041111912578344345, - -0.0173359178006649, - -0.07775815576314926, - -0.03748437762260437, - -0.0736989974975586, - -0.055103011429309845, - 0.09780008345842361, - -0.02854042686522007, - 0.05790594220161438, - -0.005274574272334576, - -0.07474908232688904, - -0.09095799922943115, - 0.01939188688993454, - 0.009807697497308254, - -0.03281751275062561, - 0.034140028059482574, - 0.045652925968170166, - -0.07827167212963104, - 0.00867852196097374, - 0.027385763823986053, - 0.10019810497760773, - -0.08702340722084045, - 0.020692003890872, - -0.0337986946105957, - 0.037198178470134735, - 0.07832574844360352, - -0.056864477694034576, - -0.03808499872684479, - -0.0748356282711029, - -0.0433616116642952, - 0.0624387264251709, - -0.02401670813560486, - -0.003761251224204898, - -0.028872497379779816, - -0.010717782191932201, - -0.06464382261037827, - -0.08557192981243134, - 0.05694718658924103, - -0.0225386805832386, - -0.0021352171897888184, - -0.07006906718015671, - 0.00639671366661787, - -0.028113337233662605, - 0.07894715666770935, - -0.03238864988088608, - 0.04183259978890419, - 0.03258354961872101, - -0.027144934982061386, - 0.043469663709402084, - 0.10967309772968292, - 0.07313565909862518, - 0.04370087385177612, - -0.06198803335428238, - -0.09775716066360474, - 0.04039975255727768, - -0.013393670320510864, - 0.08587761968374252, - 0.003024713834747672, - -0.0345228835940361, - -0.03793001174926758, - -0.007078884169459343, - -0.009705470874905586, - 0.011357232928276062, - 0.08665861189365387, - 0.08444835245609283, - 0.017336489632725716, - -0.025160761550068855, - 0.09940199553966522, - 0.05023011937737465, - 0.019195787608623505, - -0.03249872103333473, - -0.007951718755066395, - -0.052655283361673355, - 0.02440662682056427, - 0.017055300995707512, - -0.09439820796251297, - 0.052865300327539444, - -0.014228131622076035, - 0.045272815972566605, - 0.06708119809627533, - 0.07031679153442383, - 0.06069574132561684, - -0.077654629945755 - ] - }, - "p245_269.wav": { - "name": "p245", - "embedding": [ - 0.043188270181417465, - 0.06754006445407867, - -0.0046090250834822655, - 0.03543921187520027, - -0.00901294406503439, - 0.016896938905119896, - -0.17503750324249268, - 0.1317102611064911, - -0.016218213364481926, - 0.11818666756153107, - -0.07899683713912964, - 0.0836830735206604, - -0.03136177733540535, - -0.18524695932865143, - -0.023374861106276512, - 0.0700950101017952, - -0.0433889776468277, - -0.04634470120072365, - -0.014967952854931355, - -0.019687380641698837, - 0.025393595919013023, - 0.05063102766871452, - 0.017916766926646233, - 0.04127265140414238, - 0.012588636949658394, - 0.05260131508111954, - -0.008248372934758663, - 0.04324382171034813, - 0.011535861529409885, - -0.011157146655023098, - 0.00830159243196249, - 0.09009288251399994, - -0.008959900587797165, - -0.012100247666239738, - 0.04191485419869423, - 0.02804763987660408, - 0.015345752239227295, - -0.08738559484481812, - -0.04963134601712227, - -0.013319544494152069, - -0.08665508776903152, - 0.06355902552604675, - 0.0249958299100399, - -0.044417623430490494, - 0.049563728272914886, - 0.014120201580226421, - -0.02172059938311577, - -0.05984076112508774, - -0.13904255628585815, - 0.15283802151679993, - 0.07860483974218369, - 0.05056928098201752, - -0.07592335343360901, - -0.06460545212030411, - 0.10170937329530716, - -0.015339731238782406, - -0.07761327922344208, - -0.033291544765233994, - 0.0715920701622963, - 0.19502979516983032, - -0.03760373592376709, - -0.020331304520368576, - 0.0625385195016861, - 0.11397353559732437, - 0.07562453299760818, - 0.0665394514799118, - 0.08445276319980621, - 0.09562565386295319, - -0.004549246747046709, - -0.018947312608361244, - 0.058560777455568314, - 0.07362554967403412, - 0.05120028555393219, - -0.009791478514671326, - -0.006725577637553215, - 0.0453454926609993, - -0.0548599474132061, - -0.0026478907093405724, - -0.019585244357585907, - -0.013843489810824394, - 0.00030223093926906586, - 0.011205877177417278, - -0.003757013939321041, - 0.04755447804927826, - -0.03764592483639717, - 0.044770389795303345, - 0.028700197115540504, - -0.04432448744773865, - 0.07111864537000656, - 0.003461036831140518, - -0.003499911166727543, - 0.04571731016039848, - -0.060762062668800354, - -0.06865407526493073, - 0.00071398273576051, - 0.004833770915865898, - -0.01154659129679203, - 0.06705448031425476, - 0.05232331156730652, - -0.037748683243989944, - 0.14481626451015472, - 0.026373064145445824, - -0.0021234648302197456, - 0.03736547753214836, - -0.09914448857307434, - 0.08727934956550598, - 0.07670259475708008, - -0.04015442356467247, - 0.054956886917352676, - -0.025876769796013832, - 0.02189938724040985, - 0.08436337113380432, - -0.13968423008918762, - -0.05992065370082855, - 0.07738327234983444, - 0.05129336938261986, - 0.020247388631105423, - 0.13317638635635376, - 0.03032919391989708, - 0.046734005212783813, - 0.10777594149112701, - -0.0812952071428299, - -0.07100014388561249, - -0.023438122123479843, - 0.08249648660421371, - -0.0684526115655899, - 0.07754072546958923, - 0.051120027899742126, - -0.003098198212683201, - -0.013298695906996727, - 0.0563349686563015, - -0.010315867140889168, - -0.014417883940041065, - -0.043545931577682495, - -0.02614917978644371, - 0.03231782093644142, - -0.0559900626540184, - -0.025218794122338295, - 0.029969472438097, - 0.038159675896167755, - 0.01856156624853611, - 0.031086310744285583, - -0.05751354992389679, - -0.14432883262634277, - -0.00914852600544691, - 0.047526322305202484, - 0.12105955183506012, - 0.001871981774456799, - -0.03011206164956093, - -0.07796687632799149, - -0.028393574059009552, - -0.006057681515812874, - -0.03213135153055191, - 0.0854203850030899, - -0.019392486661672592, - 0.01712975651025772, - 0.0738794356584549, - -0.028170831501483917, - 0.017100265249609947, - -0.013195020146667957, - -0.006544120144098997, - 0.00022461963817477226, - 0.02575882524251938, - -0.03552587702870369, - -0.08761981129646301, - -0.006609617732465267, - 0.04760165512561798, - -0.012265356257557869, - 0.04584185406565666, - -0.008293370716273785, - 0.02469658851623535, - -0.006775896996259689, - -0.0814058929681778, - 0.01850796677172184, - -0.10996183753013611, - -0.06694521754980087, - 0.010238923132419586, - 0.02293381839990616, - -0.005405546631664038, - 0.07504110783338547, - 0.04271293431520462, - 0.05312616750597954, - -0.012783853337168694, - -0.09331725537776947, - -0.08945153653621674, - 0.04453081637620926, - 0.07193391025066376, - -0.006654529832303524, - 0.028781499713659286, - 0.053874991834163666, - -0.0065183802507817745, - 0.043916866183280945, - 0.05222728103399277, - 0.0969514325261116, - 0.012298735789954662, - -0.012213082984089851, - -0.05426079407334328, - 0.08864711225032806, - 0.08832566440105438, - -0.06675060093402863, - -0.06448246538639069, - -0.01771804317831993, - -0.0857917070388794, - 0.02745750918984413, - 0.005977815482765436, - 0.03675169497728348, - 0.014475969597697258, - -0.03921148180961609, - -0.1100311353802681, - -0.08065205812454224, - 0.05797690898180008, - -0.07158307731151581, - -0.025568712502717972, - -0.06325100362300873, - 0.03438715264201164, - 0.09574148058891296, - 0.02740497514605522, - 0.012809514999389648, - -0.03570249304175377, - 0.014045970514416695, - -0.059785354882478714, - -0.019405698403716087, - 0.0686202123761177, - 0.0145002081990242, - -0.1368439942598343, - 0.019005727022886276, - -0.08088831603527069, - 0.08610788732767105, - -0.039045244455337524, - 0.11963413655757904, - 0.0189470537006855, - -0.04442707449197769, - -0.11223796010017395, - 0.00230557844042778, - 0.0001906536053866148, - 0.0760858952999115, - 0.004620065912604332, - 0.06601983308792114, - 0.05221652239561081, - -0.05759742483496666, - 0.09414134919643402, - 0.055526018142700195, - -0.027415843680500984, - -0.07023858278989792, - -0.0772908478975296, - -0.03206964209675789, - 0.00921714399009943, - -0.017963599413633347, - -0.053240980952978134, - -0.031061403453350067, - 0.0010671745985746384, - -0.020833026617765427, - 0.051593609154224396, - 0.12104552984237671, - 0.04042566195130348, - -0.13464613258838654 - ] - }, - "p245_037.wav": { - "name": "p245", - "embedding": [ - 0.04609669744968414, - 0.09222640097141266, - -0.021580945700407028, - -0.007860828191041946, - -0.061783574521541595, - 0.06006797030568123, - -0.13974528014659882, - 0.1572941690683365, - -0.01893703080713749, - 0.15708225965499878, - -0.04577142745256424, - 0.11284228414297104, - -0.018952466547489166, - -0.16305415332317352, - 0.016773587092757225, - 0.03552253544330597, - -0.025087224319577217, - -0.009207624942064285, - -0.04919926077127457, - -0.0416649729013443, - 0.03713240846991539, - 0.05016947537660599, - 0.0034473116975277662, - -0.04233551770448685, - 0.04089212790131569, - 0.06757853925228119, - -0.01526365801692009, - 0.014758951961994171, - -0.020787740126252174, - -0.09067264199256897, - -0.029084565117955208, - 0.0824318379163742, - -0.07493158429861069, - 0.02193271741271019, - 0.04490305483341217, - -0.033598922193050385, - -0.02999694272875786, - -0.048222094774246216, - -0.016400400549173355, - 0.026411881670355797, - -0.030350323766469955, - 0.07466590404510498, - 0.031496476382017136, - -0.013369981199502945, - 0.034805312752723694, - 0.02624635025858879, - 0.010254791006445885, - -0.05790404975414276, - -0.08454491198062897, - 0.17806588113307953, - 0.06169036775827408, - -0.010130185633897781, - -0.07536923140287399, - -0.06999798119068146, - 0.07886391878128052, - -0.010923977941274643, - -0.10704685747623444, - -0.035509947687387466, - 0.06493796408176422, - 0.1167929470539093, - -0.03196975216269493, - -0.05899728834629059, - 0.036019884049892426, - 0.09695275872945786, - 0.033059410750865936, - 0.08582562953233719, - 0.08032701909542084, - 0.10065419971942902, - -0.0390830934047699, - 0.018514294177293777, - 0.02781863324344158, - 0.06818731129169464, - 0.06486813724040985, - -0.0036366276908665895, - 0.035354167222976685, - -0.01616598106920719, - -0.006658309139311314, - -0.02056843973696232, - -0.02860332280397415, - -0.02609509788453579, - 0.005031350534409285, - 0.03522000461816788, - 0.034547239542007446, - 0.02819076180458069, - -0.01877441443502903, - 0.04965593293309212, - 0.045803338289260864, - -0.005627406761050224, - 0.06998837739229202, - 0.02237764373421669, - 0.0272560752928257, - 0.06686674803495407, - -0.10932575166225433, - -0.07156263291835785, - 0.047745078802108765, - -0.0029689257498830557, - 0.023999961093068123, - 0.07677839696407318, - 0.037881746888160706, - -0.005913769826292992, - 0.12067724019289017, - 0.04483922943472862, - -0.004491080529987812, - 0.014486407861113548, - -0.08959780633449554, - 0.13031843304634094, - 0.08334760367870331, - -0.03728418052196503, - 0.06964993476867676, - -0.09102222323417664, - 0.08135947585105896, - 0.033127930015325546, - -0.13510015606880188, - -0.08155511319637299, - 0.009679942391812801, - 0.013115852139890194, - -0.03724256902933121, - 0.1454598307609558, - -0.0009383014403283596, - 0.046949610114097595, - 0.11815674602985382, - -0.11829824000597, - -0.05062666907906532, - -0.0031384832691401243, - 0.05140610784292221, - -0.09652836620807648, - 0.05646078288555145, - 0.057847727090120316, - -0.033176254481077194, - 0.05630228668451309, - 0.08088172227144241, - -0.00880347564816475, - 0.03843264654278755, - -0.0032733329571783543, - -0.019882170483469963, - -0.00621398352086544, - -0.02687975764274597, - -0.009145697578787804, - 0.009932249784469604, - 0.04096008837223053, - 0.060400865972042084, - -0.01653945818543434, - -0.036286938935518265, - -0.12436745315790176, - 0.028956200927495956, - 0.023186005651950836, - 0.0665820837020874, - -0.026146600022912025, - -0.01369603630155325, - -0.02332121506333351, - -0.08666503429412842, - -0.014629652723670006, - -0.008633685298264027, - 0.052349481731653214, - -0.017126744613051414, - 0.013444039970636368, - 0.10813011229038239, - 0.08143388479948044, - -0.001739000785164535, - -0.055203285068273544, - -0.04999531805515289, - -0.003291212022304535, - 0.05781901627779007, - -0.08451740443706512, - -0.08357247710227966, - -0.026935193687677383, - 0.017547722905874252, - -0.015352196991443634, - 0.07713228464126587, - 0.0567568838596344, - 0.031177904456853867, - 0.03036363795399666, - -0.0856899619102478, - 0.0108160600066185, - -0.09755423665046692, - -0.0910363644361496, - -0.0035922054667025805, - -0.02248934842646122, - -0.034227244555950165, - 0.09109952300786972, - -0.0031366595067083836, - 0.058473341166973114, - -0.04336543381214142, - -0.03557639569044113, - -0.07899877429008484, - 0.044662900269031525, - 0.053626999258995056, - -0.03456380218267441, - 0.027364976704120636, - 0.052126195281744, - -0.03719847649335861, - 0.04360978305339813, - 0.07095316797494888, - 0.10449156165122986, - -0.028690554201602936, - 0.040072932839393616, - -0.06536900997161865, - 0.10065025091171265, - 0.08322034031152725, - -0.06778895854949951, - -0.08254542946815491, - -0.029918517917394638, - -0.08285269141197205, - 0.013713628053665161, - -0.020251410081982613, - 0.008273718878626823, - 0.014594011008739471, - 0.018047023564577103, - -0.08213038742542267, - -0.06951283663511276, - 0.06144186854362488, - -0.05227737873792648, - 0.003920239396393299, - -0.08412112295627594, - 0.058473143726587296, - 0.10167743265628815, - 0.06815382093191147, - -0.03507998585700989, - -0.043486788868904114, - 0.04966083914041519, - -0.010655608028173447, - 0.037047214806079865, - 0.05253640562295914, - 0.062124013900756836, - -0.0771397203207016, - 0.014247935265302658, - -0.06520361453294754, - 0.02729090303182602, - -0.044595688581466675, - 0.14254812896251678, - 0.02001035213470459, - -0.06780388951301575, - -0.08250142633914948, - 0.049276575446128845, - -0.015911217778921127, - 0.03274648264050484, - 0.005543240811675787, - 0.056914784014225006, - 0.08050018548965454, - -0.06584154069423676, - 0.10323192179203033, - 0.037204086780548096, - -0.0305505208671093, - -0.04460560530424118, - -0.0715683251619339, - -0.033582091331481934, - 0.03321485593914986, - 0.01046678051352501, - -0.09335173666477203, - -0.021143507212400436, - 0.022524219006299973, - 0.015885308384895325, - 0.05675407499074936, - 0.13817960023880005, - 0.05248038470745087, - -0.143670916557312 - ] - }, - "p245_393.wav": { - "name": "p245", - "embedding": [ - 0.05530662089586258, - 0.1088857501745224, - 0.008988786488771439, - 0.01784309186041355, - -0.030639272183179855, - 0.07027558982372284, - -0.10097402334213257, - 0.1023658961057663, - -0.0766238421201706, - 0.16351431608200073, - -0.10559310019016266, - 0.10644276440143585, - -0.02578745223581791, - -0.1821451485157013, - -0.03532141447067261, - 0.059792470186948776, - -0.0461631715297699, - 0.01539262942969799, - -0.046933915466070175, - 0.01586638204753399, - 0.04203175753355026, - 0.01844155415892601, - 0.046235255897045135, - -0.022742722183465958, - 0.02208073064684868, - 0.05181122571229935, - 0.01358347199857235, - 0.06403128057718277, - 0.03775842860341072, - -0.06724154949188232, - -0.0505983792245388, - 0.1335136890411377, - -0.030034013092517853, - 0.037271201610565186, - 0.07619142532348633, - 0.0005601946031674743, - -0.00622314028441906, - -0.06347787380218506, - -0.0028285153675824404, - -0.02228790894150734, - -0.03871477395296097, - 0.05279888957738876, - 0.007102621719241142, - -0.0027087335474789143, - 0.050753604620695114, - 0.026941947638988495, - -0.03679877519607544, - -0.04683280736207962, - -0.06946438550949097, - 0.13554079830646515, - 0.06651115417480469, - -0.0076645174995064735, - -0.055342089384794235, - -0.0814715325832367, - 0.09769266843795776, - -0.006122160237282515, - -0.1286291927099228, - -0.03884165734052658, - 0.08187872171401978, - 0.15789306163787842, - -0.01255965419113636, - -0.01965622790157795, - 0.000936754746362567, - 0.11203307658433914, - 0.013742724433541298, - 0.13842903077602386, - 0.047786012291908264, - 0.07087390124797821, - 0.030398428440093994, - 0.07165579497814178, - 0.053150005638599396, - 0.05984397977590561, - 0.029337119311094284, - -0.03959588706493378, - 0.03824008256196976, - -0.0011095469817519188, - -0.055469684302806854, - 0.03651096299290657, - -0.016719479113817215, - -0.002931940369307995, - -0.02610219642519951, - -0.010150215588510036, - 0.000319132290314883, - -0.029345188289880753, - -0.01799951121211052, - 0.03866168111562729, - -0.00132135977037251, - 0.002645906526595354, - 0.06611339002847672, - 0.0475812666118145, - -0.0018685436807572842, - 0.04292016848921776, - -0.05228336900472641, - -0.11982500553131104, - 0.005134557839483023, - 0.024468548595905304, - -0.013861969113349915, - 0.07783159613609314, - 0.03244499862194061, - -0.027328571304678917, - 0.08965101838111877, - 0.05981936305761337, - 0.013851205818355083, - 0.03916709125041962, - -0.10425898432731628, - 0.11276708543300629, - 0.07240784913301468, - -0.007321341894567013, - 0.03561032935976982, - -0.04126888886094093, - 0.1098979264497757, - 0.11309238523244858, - -0.1570119857788086, - -0.0599294975399971, - 0.009163441136479378, - -0.044725172221660614, - -0.011734546162188053, - 0.07368879020214081, - -0.02177392691373825, - -0.01804506964981556, - 0.09623777866363525, - -0.08770816028118134, - -0.08303876966238022, - -0.036671463400125504, - 0.03571299463510513, - -0.09542216360569, - 0.05138307809829712, - 0.013270329684019089, - -0.016620106995105743, - -0.021379929035902023, - 0.09141936898231506, - -0.0257705245167017, - 0.0022647941950708628, - 0.03724340721964836, - -0.05840606242418289, - 0.03802359104156494, - -0.07776792347431183, - 0.024501170963048935, - 0.048821136355400085, - 0.039485346525907516, - 0.04355578124523163, - -0.003665660973638296, - -0.02845750004053116, - -0.07236877083778381, - 0.0011151626240462065, - 0.05966826528310776, - 0.038260750472545624, - 0.002763192867860198, - -0.015233759768307209, - -0.03216845542192459, - -0.0736001506447792, - 0.03771291673183441, - -0.037575677037239075, - 0.0781431645154953, - 0.019384153187274933, - 0.012083210051059723, - 0.10935518145561218, - -0.000770034734159708, - -0.004057230893522501, - -0.0916900783777237, - -0.03057168610394001, - 0.052336398512125015, - 0.051838260143995285, - -0.09908740222454071, - -0.04938942939043045, - 0.03215978294610977, - -0.009341701865196228, - -0.01763584464788437, - 0.004455825313925743, - 0.0385122187435627, - 0.012533154338598251, - 0.051012393087148666, - -0.08356431126594543, - 0.018377896398305893, - -0.12244333326816559, - -0.06145000457763672, - -0.040509212762117386, - -0.049166321754455566, - 0.014641071669757366, - 0.07391637563705444, - -0.011827418580651283, - -0.01098037138581276, - 0.010094106197357178, - -0.08562122285366058, - -0.07483024895191193, - 0.09132589399814606, - 0.09051018208265305, - 0.019135357812047005, - 0.06368987262248993, - 0.025856012478470802, - -0.052498724311590195, - 0.04427434504032135, - 0.03813819959759712, - 0.101869598031044, - -0.01590631902217865, - 0.01648394949734211, - -0.07157225906848907, - 0.06433074176311493, - 0.09952537715435028, - -0.1102757602930069, - -0.10353618115186691, - -0.0224351417273283, - -0.042653314769268036, - 0.061965398490428925, - -0.029270488768815994, - -0.03451372683048248, - 0.027202606201171875, - -0.03634292632341385, - -0.08256484568119049, - -0.07669669389724731, - 0.1102551817893982, - -0.05407509207725525, - -0.04677741229534149, - -0.0627153068780899, - 0.048075832426548004, - 0.05095774307847023, - 0.04005669802427292, - -0.041475966572761536, - 0.026560351252555847, - 0.06449370086193085, - -0.0905550867319107, - -0.03770618885755539, - 0.024762704968452454, - -0.01287880726158619, - -0.07591540366411209, - 0.036659061908721924, - -0.06936539709568024, - 0.0742499977350235, - -0.09778933227062225, - 0.16195210814476013, - -0.04923267662525177, - -0.07773558050394058, - -0.07250361144542694, - 0.04834870994091034, - -0.014704234898090363, - 0.005917171016335487, - 0.05249428376555443, - 0.0451120063662529, - 0.010318396613001823, - -0.09057088196277618, - 0.11524202674627304, - -0.0012188596883788705, - 0.016066759824752808, - -0.0481545627117157, - -0.026720672845840454, - -0.06104463338851929, - 0.004469484090805054, - -0.009005793370306492, - -0.11097265779972076, - 0.01585230976343155, - 0.013256056234240532, - -0.030193552374839783, - 0.05704198032617569, - 0.13108649849891663, - 0.05106084793806076, - -0.10437096655368805 - ] - }, - "p245_195.wav": { - "name": "p245", - "embedding": [ - 0.04827830195426941, - 0.1026773452758789, - -0.01689162105321884, - 0.008859441615641117, - -0.053340598940849304, - 0.09638083726167679, - -0.0787772461771965, - 0.06287100166082382, - -0.08969427645206451, - 0.14988696575164795, - -0.10372394323348999, - 0.10696819424629211, - -0.026919838041067123, - -0.1417953073978424, - -0.07515859603881836, - 0.023175358772277832, - -0.052820585668087006, - 0.004614276811480522, - -0.0941750705242157, - -0.022364124655723572, - 0.04345572367310524, - 0.028496183454990387, - 0.06338748335838318, - -0.06624269485473633, - 0.05804012715816498, - 0.0455804280936718, - 0.014261881820857525, - 0.03877191245555878, - 0.021478688344359398, - -0.08018092811107635, - -0.05144444853067398, - 0.12878336012363434, - -0.041159532964229584, - 5.4697273299098015e-05, - 0.026911098510026932, - 0.011828627437353134, - 0.020086782053112984, - -0.06743556261062622, - -0.01238650269806385, - 0.026590799912810326, - -0.006153291091322899, - 0.055473826825618744, - -0.0046122707426548, - -0.024382077157497406, - 0.03174358606338501, - -0.010593142360448837, - -0.0375235341489315, - -0.03798094019293785, - -0.07185395807027817, - 0.1392531394958496, - 0.013006547465920448, - 0.0051694344729185104, - -0.09977493435144424, - -0.08611531555652618, - 0.12495452165603638, - -0.013304970227181911, - -0.10877165198326111, - -0.02003926783800125, - 0.04133256524801254, - 0.16522929072380066, - -0.02026687189936638, - -0.023397861048579216, - 0.020558368414640427, - 0.05235397070646286, - 0.02622240036725998, - 0.08548520505428314, - 0.09239251911640167, - 0.05220084264874458, - 0.034933604300022125, - 0.06399345397949219, - 0.05254298821091652, - 0.05128464102745056, - 0.03251422941684723, - -0.05417541787028313, - 0.04583678022027016, - -0.022759929299354553, - -0.03942933678627014, - 0.021520845592021942, - -0.03069712594151497, - -0.023581866174936295, - -0.006994626484811306, - -0.009042274206876755, - 0.03154977783560753, - -0.0341607928276062, - -0.08512470126152039, - 0.03482208028435707, - 0.0014998046681284904, - -0.019316941499710083, - 0.06912466883659363, - 0.06364008039236069, - -0.013631962239742279, - 0.02291388250887394, - -0.04950866475701332, - -0.12543661892414093, - 0.007727420423179865, - 0.020109748467803, - -0.02706182189285755, - 0.04560813307762146, - 0.04506213963031769, - -0.031866759061813354, - 0.07338059693574905, - 0.07352188974618912, - 0.020141100510954857, - 0.03188269957900047, - -0.09585852921009064, - 0.09127768874168396, - 0.11855800449848175, - -0.004327746573835611, - 0.02535541169345379, - 0.003577028401196003, - 0.08735962212085724, - 0.0874512791633606, - -0.12125638872385025, - -0.08865316957235336, - -0.0029713171534240246, - -0.05501050874590874, - 0.026011072099208832, - 0.052746064960956573, - -0.041187748312950134, - -0.026186328381299973, - 0.07902298867702484, - -0.06251072138547897, - -0.04418815299868584, - -0.030518215149641037, - 0.026305746287107468, - -0.04918249323964119, - 0.023371178656816483, - 0.02602410316467285, - -0.0003217114135622978, - -0.04035555198788643, - 0.06755928695201874, - -0.012393257580697536, - 0.013387958519160748, - 0.03462494909763336, - -0.03782178461551666, - 0.049526944756507874, - -0.025624113157391548, - -0.01968296989798546, - 0.10213899612426758, - 0.07237976789474487, - 0.05314534902572632, - -0.014990391209721565, - -0.00989020150154829, - -0.057128746062517166, - 0.017620353028178215, - 0.050104714930057526, - 0.01121944934129715, - -0.004682846367359161, - 0.019977612420916557, - -0.053008489310741425, - -0.08430016040802002, - 0.07264824956655502, - -0.0054061030969023705, - 0.12139920890331268, - 0.030680332332849503, - 0.014131243340671062, - 0.12432843446731567, - 0.002406906569376588, - -0.021691888570785522, - -0.044126734137535095, - 0.0058551691472530365, - 0.050916217267513275, - 0.045913346111774445, - -0.05325181037187576, - -0.06442204862833023, - 0.006222454831004143, - -0.013687129132449627, - -0.029885344207286835, - 0.03246060013771057, - 0.06582270562648773, - -0.013692069798707962, - 0.056936606764793396, - -0.06321452558040619, - 0.01233991701155901, - -0.09779045730829239, - 0.0073458291590213776, - -0.01484096609055996, - -0.10484959930181503, - -0.027622409164905548, - 0.09994994103908539, - 0.027432512491941452, - -0.0310318935662508, - -0.002121277153491974, - -0.10270730406045914, - -0.035300299525260925, - 0.07726682722568512, - 0.06102374941110611, - 0.03319225460290909, - 0.031189538538455963, - 0.050749506801366806, - 0.009378794580698013, - 0.0708124116063118, - 0.10507477819919586, - 0.05962938815355301, - 0.002073658164590597, - -0.026424942538142204, - -0.03950697183609009, - 0.0863160789012909, - 0.04411986097693443, - -0.10357911884784698, - -0.11163439601659775, - -0.05810891091823578, - -0.05505013093352318, - 0.0678786188364029, - -0.012645282782614231, - 0.014367069117724895, - 0.04535038396716118, - -0.03366231173276901, - -0.09086362272500992, - -0.10210288316011429, - 0.13081035017967224, - -0.024153484031558037, - -0.04369209334254265, - -0.042092785239219666, - 0.00964060053229332, - 0.03819739818572998, - 0.013664958998560905, - -0.005954277701675892, - 0.05341121181845665, - 0.04564730077981949, - -0.10502029210329056, - -0.029897810891270638, - 0.01573743298649788, - -0.034548185765743256, - -0.04748248681426048, - 0.021264715120196342, - -0.08316272497177124, - 0.10343590378761292, - -0.0662560984492302, - 0.15785500407218933, - -0.026739593595266342, - -0.04268960654735565, - -0.05823993682861328, - 0.08184152841567993, - -0.06470668315887451, - 0.03490499034523964, - 0.0829772800207138, - 0.07067333906888962, - 0.005528803914785385, - -0.08498436212539673, - 0.07747524976730347, - 0.017556020990014076, - -0.026148110628128052, - -0.07471171766519547, - -0.02921218052506447, - -0.05034668743610382, - -0.008241147734224796, - -0.004831814207136631, - -0.050959695130586624, - 0.05425529181957245, - 0.01966894418001175, - -0.004743877798318863, - 0.059194616973400116, - 0.10701952874660492, - 0.08642970025539398, - -0.06446842104196548 - ] - }, - "p245_066.wav": { - "name": "p245", - "embedding": [ - -0.0077630914747715, - 0.06212679296731949, - -0.029095031321048737, - 0.04807800427079201, - -0.09979154914617538, - -0.011325799860060215, - -0.09859539568424225, - 0.15455757081508636, - -0.0015637085307389498, - 0.09077074378728867, - -0.03634503856301308, - 0.11789576709270477, - -0.07192665338516235, - -0.1492106169462204, - 0.04691343754529953, - 0.07298552244901657, - 0.009551596827805042, - -0.060885265469551086, - -0.02599423937499523, - -0.05117535591125488, - 0.0178248081356287, - 0.03961044177412987, - 0.030315300449728966, - 0.0029597708489745855, - 0.01364608108997345, - 0.09334566444158554, - -0.004621140193194151, - 0.0198704581707716, - -0.009454210288822651, - -0.039348237216472626, - -0.0231894813477993, - 0.03402078524231911, - -0.07006881386041641, - -0.009674010798335075, - 0.024007730185985565, - -0.030278092250227928, - -0.02311311848461628, - -0.009588251821696758, - -0.028285054489970207, - 0.004965323954820633, - -0.08157123625278473, - 0.07757959514856339, - 0.023187167942523956, - -0.008365483023226261, - 0.05268028378486633, - 0.022256221622228622, - -0.038879770785570145, - -0.009175663813948631, - -0.1420152634382248, - 0.13813042640686035, - 0.07626407593488693, - -0.007778852712363005, - -0.07167428731918335, - -0.05480652302503586, - 0.09999435395002365, - -0.020814230665564537, - -0.08670436590909958, - -0.08495119959115982, - 0.07406032085418701, - 0.08715644478797913, - -0.022856593132019043, - -0.02539408765733242, - 0.018550610169768333, - 0.10273498296737671, - 0.07932594418525696, - 0.05336213484406471, - 0.03845370560884476, - 0.12385544180870056, - -0.05201958864927292, - -0.018596675246953964, - 0.05020606517791748, - 0.07094452530145645, - 0.01430055033415556, - 0.021955527365207672, - -0.017246752977371216, - 0.01157557312399149, - 0.021831808611750603, - -0.020078126341104507, - -0.011346502229571342, - -0.03046273998916149, - -0.023327527567744255, - 0.012779390439391136, - 0.006772393360733986, - -0.0042129154317080975, - 0.010185056366026402, - 0.08764004707336426, - 0.08824951946735382, - 0.008867944590747356, - 0.08223341405391693, - -0.00814065057784319, - -0.05953953042626381, - 0.08589067310094833, - -0.08400532603263855, - 0.0028118337504565716, - -0.016205905005335808, - -0.0018033592496067286, - 0.02545177936553955, - 0.08047227561473846, - 0.016994329169392586, - 7.825583452358842e-05, - 0.14811724424362183, - 0.027818048372864723, - 0.0010605386923998594, - 0.02271421067416668, - -0.06731268018484116, - 0.11856039613485336, - 0.061971329152584076, - -0.024232719093561172, - 0.048001643270254135, - -0.030434083193540573, - 0.037176962941884995, - 0.020549774169921875, - -0.09958325326442719, - -0.04676205664873123, - -0.02926865965127945, - 0.0057694269344210625, - -0.06073998287320137, - 0.13464143872261047, - 0.0002716788148973137, - 0.07382065802812576, - 0.17005881667137146, - -0.10015648603439331, - -0.0661592185497284, - 0.016334420070052147, - 0.05094142630696297, - -0.06953908503055573, - 0.043612148612737656, - 0.07132256776094437, - -0.01812724769115448, - 0.09500343352556229, - 0.06924550980329514, - -0.005538359750062227, - 0.045102961361408234, - 0.03517475724220276, - -0.07806044816970825, - -0.007951498031616211, - -0.027830777689814568, - -0.010484833270311356, - 0.09616238623857498, - 0.040282197296619415, - 0.10220807790756226, - -0.04751453548669815, - 0.00697948457673192, - -0.12977319955825806, - 0.023978019133210182, - 0.018472399562597275, - 0.07261732220649719, - -0.018571898341178894, - -0.02471042424440384, - -0.04819144681096077, - -0.08690645545721054, - -0.014551068656146526, - 0.02832389622926712, - 0.08143433928489685, - -0.0949617326259613, - 0.002755220979452133, - 0.08852490037679672, - 0.06482809782028198, - -0.022307103499770164, - -0.06576360762119293, - -0.08091609925031662, - -0.04684533178806305, - 0.04214273765683174, - -0.08497485518455505, - -0.08144988119602203, - -0.03612879663705826, - 0.09052322804927826, - -0.02720281481742859, - 0.08269672095775604, - 0.03126678615808487, - 0.04002169519662857, - -0.005330238025635481, - -0.05054665356874466, - 0.0319494791328907, - -0.007297709118574858, - -0.06955704838037491, - -0.010123031213879585, - 0.003082114504650235, - -0.05732957273721695, - 0.06033637747168541, - 0.02445564977824688, - 0.08980266004800797, - 0.008264157921075821, - -0.07539556920528412, - -0.11840244382619858, - 0.015741858631372452, - 0.0013391778338700533, - -0.06326083093881607, - 0.0636846199631691, - 0.09257593005895615, - -0.10514184087514877, - 0.04345356300473213, - 0.042700331658124924, - 0.08348044008016586, - -0.050993554294109344, - 0.03936244174838066, - -0.05943295359611511, - 0.07016190141439438, - 0.08867181092500687, - -0.08903425186872482, - -0.0440947525203228, - -0.07404907047748566, - -0.07128720730543137, - 0.05602087825536728, - -0.022398825734853745, - 0.0049375249072909355, - 0.024634554982185364, - 0.027141854166984558, - -0.09741058200597763, - -0.07526490837335587, - 0.04396592453122139, - -0.04957457259297371, - 0.00836198776960373, - -0.07985610514879227, - 0.024887222796678543, - 0.08291107416152954, - 0.06635834276676178, - 0.009280542843043804, - -0.03171687200665474, - 0.05296330526471138, - 0.015414518304169178, - 0.0478878878057003, - 0.13087497651576996, - 0.07354786247015, - -0.04201474413275719, - -0.0597412995994091, - -0.07587701082229614, - 0.043904103338718414, - 0.007860701531171799, - 0.12986992299556732, - 0.03976213559508324, - -0.027728118002414703, - -0.07746711373329163, - 0.01437259279191494, - -0.017655204981565475, - 0.06583189219236374, - 0.015605567023158073, - 0.04948633164167404, - 0.06586628407239914, - 0.005641864147037268, - 0.15866614878177643, - 0.05696696415543556, - -0.06103023141622543, - -0.03497155383229256, - -0.04244257137179375, - -0.06665113568305969, - 0.02710285410284996, - 0.041648995131254196, - -0.10715588927268982, - -0.0061855376698076725, - -0.00026045882259495556, - -0.017139311879873276, - 0.06754108518362045, - 0.1394340991973877, - 0.09705255925655365, - -0.08978267014026642 - ] - }, - "p245_012.wav": { - "name": "p245", - "embedding": [ - 0.040413081645965576, - 0.0830603837966919, - -0.022774528712034225, - -0.0005341863725334406, - -0.03794672340154648, - 0.05234938859939575, - -0.13388767838478088, - 0.13372640311717987, - -0.054108500480651855, - 0.12199720740318298, - -0.06777148693799973, - 0.09525827318429947, - -0.019477128982543945, - -0.15096716582775116, - -0.046066202223300934, - 0.043353330343961716, - -0.04619592800736427, - -0.03893730044364929, - -0.03926585242152214, - -0.02710663340985775, - 0.02975194714963436, - 0.030209191143512726, - -0.001423071837052703, - 0.01767009124159813, - 0.014533063396811485, - 0.061789803206920624, - 0.0020770556293427944, - 0.02855536714196205, - 0.0038799364119768143, - -0.007374171167612076, - -0.002614937722682953, - 0.08625348657369614, - -0.039034005254507065, - 0.01809553988277912, - 0.04712323471903801, - 0.00043094437569379807, - 0.0002795322798192501, - -0.07171767950057983, - -0.017839526757597923, - 0.0036740691866725683, - -0.04642723873257637, - 0.08478469401597977, - 0.043637968599796295, - 0.010240818373858929, - 0.01705770753324032, - 0.014662904664874077, - -0.004455404356122017, - -0.057040736079216, - -0.09834709763526917, - 0.16067162156105042, - 0.07033324241638184, - -0.0013096407055854797, - -0.08616489171981812, - -0.04449496790766716, - 0.10010585933923721, - -0.01945388689637184, - -0.09247705340385437, - -0.058926187455654144, - 0.06421282142400742, - 0.1438712179660797, - -0.02765613980591297, - -0.03928995877504349, - 0.015414133667945862, - 0.13032019138336182, - 0.03821246325969696, - 0.07300262898206711, - 0.08500176668167114, - 0.09541250020265579, - -0.03380883112549782, - 0.01018277183175087, - 0.060074418783187866, - 0.05779407545924187, - 0.032267194241285324, - -0.019839877262711525, - 0.023644432425498962, - -0.006142120808362961, - -0.01140713132917881, - 0.018052203580737114, - -0.025781875476241112, - -0.03170400857925415, - -0.027480022981762886, - 0.014921372756361961, - -0.00871280673891306, - 0.039258237928152084, - -0.023124337196350098, - 0.044205326586961746, - 0.03527587652206421, - -0.025986485183238983, - 0.06543485075235367, - 0.0649804174900055, - 0.017514225095510483, - 0.039923880249261856, - -0.060173433274030685, - -0.07515958696603775, - 0.021156642585992813, - -0.008265395648777485, - 0.02679346315562725, - 0.06942324340343475, - 0.03512595593929291, - -0.0003028702922165394, - 0.09636136144399643, - 0.035126201808452606, - -0.012339252978563309, - -0.005447839852422476, - -0.09485568106174469, - 0.12439955770969391, - 0.09117837995290756, - -0.029637495055794716, - 0.021180735900998116, - -0.04134117066860199, - 0.0428343266248703, - 0.0649833232164383, - -0.12068703770637512, - -0.06943859159946442, - 0.04117913544178009, - 0.03987664356827736, - -0.0014027506113052368, - 0.1096196174621582, - -0.0018225936219096184, - 0.014029955491423607, - 0.07854866981506348, - -0.06031420826911926, - -0.05430252104997635, - -0.02439490146934986, - 0.034904103726148605, - -0.06098751351237297, - 0.041726984083652496, - 0.05456957221031189, - 0.007434066850692034, - 0.0013277474790811539, - 0.0830441266298294, - 0.0019958200864493847, - -0.005506281740963459, - 0.0014513880014419556, - -0.010258546099066734, - 0.04812612384557724, - -0.012265488505363464, - 0.0007846709340810776, - 0.026168784126639366, - 0.047913338989019394, - 0.04084065929055214, - 0.015754010528326035, - -0.025927996262907982, - -0.09728501737117767, - 0.008215617388486862, - 0.0512690395116806, - 0.07119515538215637, - -0.028330130502581596, - -0.02829846739768982, - -0.025761589407920837, - -0.050660714507102966, - -0.018066642805933952, - -0.008528130128979683, - 0.07430551946163177, - -0.010310914367437363, - -0.0003291988978162408, - 0.1055549830198288, - 0.006170269101858139, - 0.0007037622854113579, - -0.041791822761297226, - 0.008994637057185173, - 0.008524062111973763, - 0.05217408388853073, - -0.0591299943625927, - -0.0724165141582489, - 0.008244737982749939, - 0.03672463446855545, - -0.009449097327888012, - 0.038269344717264175, - 0.03830341994762421, - -0.0043996647000312805, - 0.023331737145781517, - -0.08940884470939636, - 0.0342443510890007, - -0.1152038723230362, - -0.04307142645120621, - -0.0029060086235404015, - -0.031247032806277275, - -0.0012998562306165695, - 0.06992219388484955, - 0.01841125637292862, - 0.04389849305152893, - -0.0015250639989972115, - -0.10019814223051071, - -0.06024879589676857, - 0.0624699592590332, - 0.0886591300368309, - -0.02521747723221779, - 0.030167827382683754, - 0.06203741580247879, - -0.015615621581673622, - 0.025053836405277252, - 0.057888247072696686, - 0.09942366927862167, - -0.04888495057821274, - 0.0014969538897275925, - -0.052007272839546204, - 0.06846464425325394, - 0.04695957154035568, - -0.11025058478116989, - -0.05957163870334625, - -0.018552543595433235, - -0.03677377104759216, - 0.006400046870112419, - -0.020499147474765778, - 0.020892156288027763, - 0.027435507625341415, - -0.01587257906794548, - -0.10476444661617279, - -0.08054275810718536, - 0.06192772835493088, - -0.07315119355916977, - 0.01484622061252594, - -0.0769607424736023, - 0.03674861043691635, - 0.09326650947332382, - 0.04202606901526451, - -0.018240241333842278, - -0.013393988832831383, - 0.014037182554602623, - -0.03273104503750801, - -0.020009201020002365, - 0.016858907416462898, - 0.02530338615179062, - -0.09205272793769836, - -0.0017449520528316498, - -0.07689408212900162, - 0.075095534324646, - -0.042808711528778076, - 0.1277589350938797, - 0.009178093634545803, - -0.0628858283162117, - -0.09408976137638092, - -0.0038892626762390137, - -0.0174001082777977, - 0.056130461394786835, - 0.034797925502061844, - 0.04990113154053688, - 0.022978410124778748, - -0.0423492006957531, - 0.1094752624630928, - 0.06085175648331642, - -0.03767654299736023, - -0.06893106549978256, - -0.02513839676976204, - -0.017312169075012207, - 0.033020514994859695, - 0.014636870473623276, - -0.05768581107258797, - -0.008866620250046253, - 0.012733858078718185, - -0.03952283039689064, - 0.07950504869222641, - 0.11891117691993713, - 0.07795403897762299, - -0.1198640912771225 - ] - }, - "p245_166.wav": { - "name": "p245", - "embedding": [ - 0.053655095398426056, - 0.08844296634197235, - -0.04649278149008751, - 0.013936445116996765, - -0.03935004398226738, - 0.05479462072253227, - -0.13360700011253357, - 0.09471850097179413, - -0.033660002052783966, - 0.14835643768310547, - -0.0453655831515789, - 0.10396459698677063, - -0.005942014046013355, - -0.1326616257429123, - -0.019591329619288445, - 0.05505815148353577, - -0.03377779573202133, - -0.03852098807692528, - -0.018543312326073647, - -0.008368187583982944, - 0.03672625869512558, - 0.04902494698762894, - 0.02710963599383831, - -0.02074635587632656, - 0.032913096249103546, - 0.06197277829051018, - 0.0014466014690697193, - 0.021820535883307457, - -0.004275509621948004, - -0.04222218692302704, - -0.01896977797150612, - 0.09863245487213135, - -0.047002747654914856, - 0.004972544964402914, - 0.012576624751091003, - 0.007321698125451803, - 0.002351941540837288, - -0.07046922296285629, - 0.0007005079532973468, - 0.011394213885068893, - -0.03256703168153763, - 0.08399521559476852, - 0.014998058788478374, - -0.009147625416517258, - 0.0016161799430847168, - -0.018606062978506088, - -0.027188047766685486, - -0.026936573907732964, - -0.08517339080572128, - 0.17683064937591553, - 0.06996860355138779, - 0.0134064219892025, - -0.0780750960111618, - -0.04408973455429077, - 0.07826656103134155, - 0.026923730969429016, - -0.08075837790966034, - -0.05972130224108696, - 0.042407527565956116, - 0.13886141777038574, - -0.006989161483943462, - -0.05610661953687668, - 0.037248872220516205, - 0.12740808725357056, - 0.04869261384010315, - 0.053280092775821686, - 0.08517199009656906, - 0.09312839806079865, - -0.008113425225019455, - 0.007785463239997625, - 0.05904529243707657, - 0.07313312590122223, - 0.05591530725359917, - -0.010565748438239098, - 0.03037749044597149, - -0.028928544372320175, - -0.021889498457312584, - -0.012656692415475845, - -0.010193328373134136, - -0.05816423147916794, - -0.03159976750612259, - -0.014443970285356045, - -0.0038853748701512814, - 0.06717607378959656, - -0.01202497910708189, - 0.007008690387010574, - 0.058460675179958344, - -0.05275978893041611, - 0.06169342249631882, - 0.05394720286130905, - 0.02610999345779419, - 0.03156259283423424, - -0.07510482519865036, - -0.07358689606189728, - 0.06123858690261841, - 0.016693050041794777, - 0.03272085636854172, - 0.07263780385255814, - 0.045775532722473145, - -0.0033907294273376465, - 0.09135275334119797, - 0.019397348165512085, - 0.0024353615008294582, - -0.025197505950927734, - -0.07514859735965729, - 0.1269388198852539, - 0.10129731148481369, - -0.03968110680580139, - 0.030582956969738007, - -0.027220046147704124, - 0.023323342204093933, - 0.053116559982299805, - -0.12632519006729126, - -0.08291628956794739, - 0.018998507410287857, - 0.012775188311934471, - 0.0009156353771686554, - 0.09909415245056152, - 0.020280232653021812, - 0.030194073915481567, - 0.08315100520849228, - -0.08419731259346008, - -0.07775819301605225, - -0.03509482368826866, - 0.042510997503995895, - -0.0927007645368576, - 0.05401131138205528, - 0.06861019134521484, - 0.0017825644463300705, - -0.019021783024072647, - 0.07022847980260849, - 0.006236842833459377, - 0.0200313962996006, - -0.028062177821993828, - -0.0035452123265713453, - 0.04423457384109497, - -0.032316889613866806, - 0.006350439041852951, - 0.02390877716243267, - 0.0013469619443640113, - 0.06261691451072693, - 0.0019134643953293562, - -0.005199687089771032, - -0.11554916203022003, - 0.025548560544848442, - 0.05696594715118408, - 0.04851735755801201, - -0.04421606287360191, - -0.0370418019592762, - -0.004539420362561941, - -0.060816265642642975, - 0.010482232086360455, - -0.01083883922547102, - 0.07470370084047318, - 0.01877404749393463, - -0.001411761506460607, - 0.11913126707077026, - -0.004110011272132397, - 0.004352550953626633, - -0.014912760816514492, - 0.003801812883466482, - 0.04109359532594681, - 0.047184623777866364, - -0.08498860895633698, - -0.09137731045484543, - -0.0035503755789250135, - 0.014921177178621292, - 0.009820891544222832, - 0.04925699159502983, - 0.06569939851760864, - -0.015355650335550308, - 0.014127960428595543, - -0.0537368580698967, - 0.00809969287365675, - -0.07779267430305481, - -0.05698656663298607, - -0.014641610905528069, - -0.05571281537413597, - -0.024360492825508118, - 0.09402160346508026, - 0.018509771674871445, - 0.04330350086092949, - -0.050333172082901, - -0.0650399774312973, - -0.06768766045570374, - 0.051043443381786346, - 0.07187633216381073, - -0.03471110016107559, - 0.008212946355342865, - 0.06329125165939331, - 0.009072072803974152, - -0.0045273578725755215, - 0.04547902196645737, - 0.09381411969661713, - -0.056555137038230896, - -0.01935093104839325, - -0.06621578335762024, - 0.08163195848464966, - 0.08475353568792343, - -0.09308450669050217, - -0.05736543983221054, - -0.04593092203140259, - -0.06394603103399277, - 0.016700323671102524, - -0.04219955950975418, - 0.015847934409976006, - 0.0418318510055542, - -0.04094365984201431, - -0.10128842294216156, - -0.12677882611751556, - 0.08536802232265472, - -0.05766047164797783, - -0.0029032262973487377, - -0.07675062865018845, - 0.05029436945915222, - 0.057624541223049164, - 0.04686463996767998, - -0.04399394989013672, - 0.011516179889440536, - 0.010614532046020031, - -0.030909806489944458, - -0.00030715082539245486, - 0.04352226108312607, - 0.035192977637052536, - -0.10074742138385773, - -0.022891204804182053, - -0.08016446232795715, - 0.06337811052799225, - -0.07264944165945053, - 0.12457223981618881, - -0.006055818870663643, - -0.0585329607129097, - -0.10827597230672836, - 0.013784579001367092, - -0.014256780967116356, - 0.05224742740392685, - 0.03585461899638176, - 0.0427403599023819, - 0.038721948862075806, - -0.07541250437498093, - 0.0892203152179718, - 0.07800555229187012, - 0.005114484112709761, - -0.0927131399512291, - -0.025002729147672653, - -0.01710965856909752, - 0.06794629991054535, - 0.002855605911463499, - -0.04696786403656006, - 0.019650055095553398, - 0.023444827646017075, - 0.0013756786938756704, - 0.07318668812513351, - 0.10128151625394821, - 0.06210120767354965, - -0.10976234078407288 - ] - }, - "p245_075.wav": { - "name": "p245", - "embedding": [ - 0.03428453952074051, - 0.11064719408750534, - 0.0017526668962091208, - 0.0246326494961977, - -0.052845899015665054, - 0.06611949950456619, - -0.10521318018436432, - 0.13429750502109528, - -0.05651460960507393, - 0.1235857903957367, - -0.10048773884773254, - 0.10598120838403702, - -0.05684275180101395, - -0.1783761978149414, - -0.04228542745113373, - 0.06294967234134674, - -0.03110467828810215, - -0.00095291284378618, - -0.035121794790029526, - -0.013944773003458977, - 0.03131048008799553, - 0.010594845749437809, - 0.02496732771396637, - 0.014946140348911285, - 0.017528658732771873, - 0.06434151530265808, - 0.0018713257741183043, - 0.05689927935600281, - 0.017997276037931442, - -0.018579233437776566, - -0.03409453481435776, - 0.12057538330554962, - -0.03753228113055229, - 0.034450069069862366, - 0.08555713295936584, - 0.017218297347426414, - -0.012218305841088295, - -0.030455391854047775, - -0.008164172992110252, - -0.0141185587272048, - -0.0620722770690918, - 0.060246072709560394, - 0.024739062413573265, - 0.003376284148544073, - 0.04835595563054085, - 0.04146186634898186, - -0.01341229397803545, - -0.030139166861772537, - -0.09043428301811218, - 0.13250896334648132, - 0.055999018251895905, - -0.017828024923801422, - -0.07457873970270157, - -0.0697483941912651, - 0.11246555298566818, - -0.026754135265946388, - -0.12838967144489288, - -0.039564717561006546, - 0.10323658585548401, - 0.1580001413822174, - -0.027325229719281197, - -0.026766734197735786, - -0.01096925139427185, - 0.12341856956481934, - 0.023739060387015343, - 0.11721930652856827, - 0.051521383225917816, - 0.11331139504909515, - -0.0067277573980391026, - 0.03533324971795082, - 0.07012540847063065, - 0.053036224097013474, - 0.0504441000521183, - -0.02651439979672432, - 0.014645046554505825, - -0.004943884443491697, - -0.010933781042695045, - 0.034601617604494095, - -0.036210693418979645, - -0.016005119308829308, - -0.04069426655769348, - 0.0009622778743505478, - -0.016917364671826363, - -0.029449395835399628, - -0.005007491912692785, - 0.0615730881690979, - 0.03990306705236435, - -0.0031221776735037565, - 0.06841331720352173, - 0.07175624370574951, - -0.024039003998041153, - 0.061780400574207306, - -0.06226837635040283, - -0.07848657667636871, - -0.0046257274225354195, - -0.012960809282958508, - 0.022535288706421852, - 0.07917551696300507, - 0.03100755624473095, - 0.008274837397038937, - 0.09721153974533081, - 0.050989262759685516, - 0.012677839025855064, - 0.041036203503608704, - -0.10639114677906036, - 0.12764522433280945, - 0.07278670370578766, - -0.022095121443271637, - 0.03098338097333908, - -0.02898004837334156, - 0.0809275209903717, - 0.09534987807273865, - -0.1227051168680191, - -0.05885526165366173, - 0.0005997233092784882, - -0.0035510878078639507, - -0.021237578243017197, - 0.08182498067617416, - -0.024508893489837646, - -0.005949174519628286, - 0.11049088835716248, - -0.07752488553524017, - -0.06652219593524933, - -0.02911338210105896, - 0.0212554968893528, - -0.07800594717264175, - 0.047917529940605164, - 0.0359664224088192, - 0.008974568918347359, - 0.00486976932734251, - 0.09449593722820282, - -0.0018899358110502362, - -0.0003257538191974163, - 0.032444246113300323, - -0.055867474526166916, - 0.017791595309972763, - -0.0351385772228241, - 0.01986345462501049, - 0.057327769696712494, - 0.05041804909706116, - 0.059155598282814026, - 0.008122799918055534, - -0.01083378866314888, - -0.07895449548959732, - -0.00627483893185854, - 0.06800520420074463, - 0.05703945457935333, - -0.008550484664738178, - -0.015090275555849075, - -0.02927681803703308, - -0.07012715935707092, - 0.041542742401361465, - -0.012928883545100689, - 0.08516597747802734, - -0.024356510490179062, - -0.014819096773862839, - 0.12005850672721863, - 0.010945495218038559, - -0.017246559262275696, - -0.09791474044322968, - -0.024770662188529968, - 0.0011850083246827126, - 0.04086858779191971, - -0.11034372448921204, - -0.07452259212732315, - 0.006218722090125084, - 0.02181953378021717, - -0.016521282494068146, - 0.03904792293906212, - 0.03824132680892944, - 0.007279010955244303, - 0.037137240171432495, - -0.0573769137263298, - 0.007877781987190247, - -0.11130785197019577, - -0.06729962676763535, - -0.028296589851379395, - -0.04508214816451073, - -0.001398736611008644, - 0.061989620327949524, - 0.009105633944272995, - 0.016468387097120285, - 0.027100328356027603, - -0.08886811137199402, - -0.08833437412977219, - 0.07652020454406738, - 0.05635393410921097, - 0.010490206070244312, - 0.070200115442276, - 0.054011017084121704, - -0.08097734302282333, - 0.07192501425743103, - 0.0603579543530941, - 0.11222146451473236, - -0.04411302134394646, - 0.03944786638021469, - -0.07513889670372009, - 0.04705259948968887, - 0.08648710697889328, - -0.11583252251148224, - -0.10839773714542389, - -0.041446663439273834, - -0.0290602408349514, - 0.0446256548166275, - -0.031314633786678314, - -0.01224291231483221, - 0.024069389328360558, - -0.024504881352186203, - -0.07408291101455688, - -0.08164675533771515, - 0.08596008270978928, - -0.0648287758231163, - -0.00760210957378149, - -0.06233181804418564, - 0.04306813329458237, - 0.05370538681745529, - 0.025317681953310966, - -0.04027901962399483, - 0.03136410936713219, - 0.07048152387142181, - -0.06131252273917198, - -0.03257821127772331, - 0.039197325706481934, - 0.007110740523785353, - -0.06356337666511536, - -0.0007188073359429836, - -0.07171986997127533, - 0.07497894018888474, - -0.048499248921871185, - 0.1626286804676056, - -0.026472043246030807, - -0.07052823156118393, - -0.04782993346452713, - 0.02265041135251522, - -0.026331990957260132, - 0.02763562649488449, - 0.05033141374588013, - 0.06911881268024445, - -0.0130761181935668, - -0.03996057063341141, - 0.14837083220481873, - 0.008677903562784195, - -0.03402414172887802, - -0.050040263682603836, - -0.045453377068042755, - -0.06450536847114563, - 0.0004788478836417198, - 0.008729243651032448, - -0.11051183938980103, - -0.008394391275942326, - 0.007968345656991005, - -0.030474970117211342, - 0.054275304079055786, - 0.13971665501594543, - 0.0805155485868454, - -0.09118019044399261 - ] - }, - "p245_074.wav": { - "name": "p245", - "embedding": [ - 0.06014510244131088, - 0.09971879422664642, - 0.015584892593324184, - 0.021699270233511925, - -0.024226326495409012, - 0.11392833292484283, - -0.12430501729249954, - 0.1162688136100769, - -0.06320066750049591, - 0.16092291474342346, - -0.08765741437673569, - 0.09969928860664368, - -0.01792548969388008, - -0.15745452046394348, - -0.06303291022777557, - 0.041449688374996185, - -0.057555653154850006, - 0.0035726502537727356, - -0.0486614927649498, - -0.004805471282452345, - 0.0411190502345562, - 0.024463845416903496, - 0.058623261749744415, - -0.02493543177843094, - 0.031117452308535576, - 0.03865686058998108, - 0.015451236627995968, - 0.07207752764225006, - 0.02641092613339424, - -0.09324994683265686, - -0.027758805081248283, - 0.13227424025535583, - -0.03424966707825661, - 0.03947920352220535, - 0.04767537862062454, - 0.013357278890907764, - 0.006342347711324692, - -0.07750484347343445, - -0.014071457087993622, - -0.010173224844038486, - -0.014226230792701244, - 0.06542043387889862, - 0.014675341546535492, - -0.012166031636297703, - 0.01956893689930439, - 0.0038894633762538433, - -0.024501653388142586, - -0.049184542149305344, - -0.09260393679141998, - 0.15617680549621582, - 0.0518491193652153, - 0.004771186038851738, - -0.07177138328552246, - -0.08619700372219086, - 0.1051219254732132, - -0.015336241573095322, - -0.1134636402130127, - -0.02775711566209793, - 0.07479526102542877, - 0.1931106001138687, - -0.03001069277524948, - -0.03331910818815231, - 0.02120731770992279, - 0.11004520952701569, - 0.025130605325102806, - 0.10477791726589203, - 0.09282625466585159, - 0.08586355298757553, - 0.028017833828926086, - 0.05219336599111557, - 0.017089825123548508, - 0.06498713791370392, - 0.04176153987646103, - -0.011089975014328957, - 0.032536521553993225, - -0.03093256987631321, - -0.02084430307149887, - 0.015571310184895992, - -0.026068685576319695, - -0.02726149931550026, - -0.0037109642289578915, - -0.005104261916130781, - 0.02641938626766205, - 0.010872980579733849, - -0.03922935575246811, - 0.041547566652297974, - -0.020551878958940506, - -0.03216097131371498, - 0.06253150850534439, - 0.03755345195531845, - 0.0200633741915226, - 0.035502105951309204, - -0.05118311941623688, - -0.12056100368499756, - 0.013987716287374496, - 0.011165215633809566, - 0.008817262947559357, - 0.06909926235675812, - 0.039913907647132874, - -0.033625729382038116, - 0.0953153669834137, - 0.042153771966695786, - -0.007515524048358202, - 0.028902916237711906, - -0.10698682069778442, - 0.11187740415334702, - 0.08660847693681717, - -0.002844938775524497, - 0.042121924459934235, - -0.05157402530312538, - 0.08466915041208267, - 0.09120398759841919, - -0.1502046287059784, - -0.08364871889352798, - 0.0071958694607019424, - -0.008172833360731602, - 0.005273364018648863, - 0.08534418046474457, - -0.0036859335377812386, - -0.0008797831833362579, - 0.08766975998878479, - -0.08068522810935974, - -0.04992228001356125, - -0.03241259977221489, - 0.04746837168931961, - -0.0714477151632309, - 0.04672529175877571, - 0.012449185363948345, - -0.010422405786812305, - -0.0232987180352211, - 0.07312832027673721, - -0.01991652324795723, - -0.004882699344307184, - 0.03331601247191429, - -0.05931270122528076, - 0.02828357368707657, - -0.05358045548200607, - 0.019374718889594078, - 0.03794638067483902, - 0.05631332844495773, - 0.044307444244623184, - -0.0029720335733145475, - -0.05184668302536011, - -0.07062087208032608, - -0.009222757071256638, - 0.046010393649339676, - 0.051999520510435104, - -0.005567926447838545, - -0.02045314572751522, - -0.042064715176820755, - -0.05380910634994507, - 0.06741416454315186, - -0.01949601247906685, - 0.08342263102531433, - 0.02181383967399597, - 0.011088564991950989, - 0.10065892338752747, - -0.0020942343398928642, - -0.0040198094211518764, - -0.06658720225095749, - -0.0055602192878723145, - 0.035565100610256195, - 0.032847922295331955, - -0.07245933264493942, - -0.04627860337495804, - 0.027647484093904495, - 0.008904751390218735, - -0.03301059827208519, - 0.033254869282245636, - 0.04260602965950966, - 0.02298501878976822, - 0.043577805161476135, - -0.047388236969709396, - -0.01514421310275793, - -0.1021120473742485, - -0.046782445162534714, - -0.002416311064735055, - -0.03638681024312973, - -0.018268844112753868, - 0.08079420030117035, - 0.02545928955078125, - 0.018413040786981583, - -0.005437190178781748, - -0.07254447042942047, - -0.06903161108493805, - 0.06818627566099167, - 0.057744596153497696, - 0.022661438211798668, - 0.032348740845918655, - 0.0380667969584465, - -0.012004202231764793, - 0.07510870695114136, - 0.07461467385292053, - 0.09118086099624634, - -0.018249865621328354, - -0.007719416171312332, - -0.08865920454263687, - 0.08385604619979858, - 0.09812474250793457, - -0.0825810432434082, - -0.1069522574543953, - -0.028723765164613724, - -0.0832420140504837, - 0.0513782799243927, - -0.032212719321250916, - -0.014716488309204578, - 0.033219143748283386, - -0.032289646565914154, - -0.09897318482398987, - -0.07787275314331055, - 0.11439277976751328, - -0.07389659434556961, - -0.0342634841799736, - -0.06562066823244095, - 0.04722801595926285, - 0.0693758949637413, - 0.04545104503631592, - -0.016056319698691368, - 0.015001444146037102, - 0.05746561288833618, - -0.09436094015836716, - -0.0166219100356102, - 0.029135093092918396, - -0.01431970577687025, - -0.09565816819667816, - 0.022905312478542328, - -0.08642274141311646, - 0.039538733661174774, - -0.06991507858037949, - 0.16500133275985718, - -0.02460383251309395, - -0.07045608758926392, - -0.05873553454875946, - 0.04520758241415024, - -0.054409317672252655, - 0.028254954144358635, - 0.05157051980495453, - 0.06067713350057602, - 0.02536693960428238, - -0.09536367654800415, - 0.10134699940681458, - 0.024042507633566856, - -0.010347208008170128, - -0.08685632795095444, - -0.06046932190656662, - -0.042557694017887115, - 0.015346228145062923, - -0.018939699977636337, - -0.07674851268529892, - 0.0009209541603922844, - 0.02602284401655197, - -0.003074691630899906, - 0.0657355859875679, - 0.13165289163589478, - 0.05196277052164078, - -0.09723721444606781 - ] - }, - "p245_128.wav": { - "name": "p245", - "embedding": [ - 0.04285028576850891, - 0.10291832685470581, - -0.008294271305203438, - 0.0031440667808055878, - -0.05854008346796036, - 0.0744505375623703, - -0.11892271786928177, - 0.13265547156333923, - -0.0472327321767807, - 0.13479766249656677, - -0.0745711624622345, - 0.10561913251876831, - -0.02285316213965416, - -0.17996175587177277, - -0.05359140783548355, - 0.0317937433719635, - -0.05796866863965988, - -0.028445810079574585, - -0.057495832443237305, - -0.03565075248479843, - 0.035307884216308594, - 0.04116383194923401, - 0.0032741716131567955, - -0.014355423860251904, - 0.054791174829006195, - 0.06258786469697952, - 0.014593180269002914, - 0.04019845277070999, - 0.009189827367663383, - -0.0422927550971508, - -0.030498847365379333, - 0.10371505469083786, - -0.061426594853401184, - 0.023316510021686554, - 0.05623096972703934, - -0.004318609833717346, - 0.020198138430714607, - -0.050899848341941833, - -0.02848580852150917, - 0.04583275318145752, - -0.03608536720275879, - 0.08068013936281204, - 0.046967070549726486, - 0.010805629193782806, - 0.021731525659561157, - 0.05317696928977966, - 0.01321185939013958, - -0.06421341001987457, - -0.09013538062572479, - 0.18424123525619507, - 0.04776057228446007, - -0.0028770838398486376, - -0.07243786007165909, - -0.08860738575458527, - 0.10992558300495148, - -0.0163470096886158, - -0.1031622439622879, - -0.027590710669755936, - 0.0751342847943306, - 0.14967505633831024, - -0.04495275020599365, - -0.052671369165182114, - 0.00747661991044879, - 0.11520727723836899, - 0.03702854737639427, - 0.07464918494224548, - 0.08499055355787277, - 0.09904549270868301, - -0.00922226719558239, - 0.01108636986464262, - 0.0748717337846756, - 0.06487390398979187, - 0.05631181225180626, - -0.0338699109852314, - 0.031233523041009903, - 0.0019018733873963356, - -0.01824387162923813, - 0.008348758332431316, - -0.02586912177503109, - -0.0011229927185922861, - -0.009843980893492699, - 0.028770998120307922, - 0.018397890031337738, - 0.019719939678907394, - -0.02686728537082672, - 0.059890665113925934, - 0.017812829464673996, - -0.009032066911458969, - 0.07787267118692398, - 0.050689518451690674, - 0.004880410619080067, - 0.06256155669689178, - -0.08774784952402115, - -0.0894698053598404, - 0.03025517612695694, - -0.0019432483240962029, - 0.024727607145905495, - 0.07191336154937744, - 0.05225212499499321, - -0.015936629846692085, - 0.11002478748559952, - 0.05299503728747368, - -0.008342195302248001, - 0.021948836743831635, - -0.10554119944572449, - 0.11696275323629379, - 0.09277379512786865, - -0.03175366297364235, - 0.037857118993997574, - -0.04454944282770157, - 0.08099643886089325, - 0.058050110936164856, - -0.14657199382781982, - -0.09842027723789215, - 0.03615438938140869, - 0.023691225796937943, - -0.013943508267402649, - 0.10753928124904633, - -0.031842827796936035, - 0.015001642517745495, - 0.10138988494873047, - -0.08231890201568604, - -0.037937577813863754, - -0.028225857764482498, - 0.04748796671628952, - -0.06992723047733307, - 0.03258610889315605, - 0.05220450460910797, - -0.015021104365587234, - 0.00970245711505413, - 0.07571221888065338, - 0.0008274917490780354, - 0.0009434851817786694, - 0.0037812944501638412, - -0.016594819724559784, - 0.036868512630462646, - -0.006621015723794699, - -0.003088216530159116, - 0.04144478589296341, - 0.0634017288684845, - 0.05363544076681137, - 0.012106486596167088, - -0.04248375445604324, - -0.10744935274124146, - 0.02323581650853157, - 0.03876125067472458, - 0.06020769476890564, - -0.02511535957455635, - -0.013027509674429893, - -0.042832955718040466, - -0.07413189858198166, - 0.020877759903669357, - 0.015493260696530342, - 0.08876348286867142, - -0.01178110670298338, - 0.0026183626614511013, - 0.11945134401321411, - 0.024575982242822647, - -0.016531767323613167, - -0.03488043695688248, - -0.022817201912403107, - 0.0055765812285244465, - 0.050697289407253265, - -0.07481823861598969, - -0.0817171037197113, - -0.0049058618023991585, - 0.011322863399982452, - -0.009867454878985882, - 0.06068001687526703, - 0.03517413139343262, - 0.006912395358085632, - 0.039578747004270554, - -0.06977661699056625, - 0.003621757263317704, - -0.1171189397573471, - -0.04958612844347954, - -0.02333132177591324, - -0.037408117204904556, - -0.03562555089592934, - 0.09097154438495636, - 0.012545136734843254, - 0.04913122206926346, - -0.0006547458469867706, - -0.07709072530269623, - -0.048051562160253525, - 0.06257225573062897, - 0.08023197203874588, - -0.0017389459535479546, - 0.03188994526863098, - 0.06737224757671356, - -0.011643451638519764, - 0.05946042388677597, - 0.09167708456516266, - 0.10151728987693787, - -0.029805200174450874, - 0.031096410006284714, - -0.04898339882493019, - 0.10016895830631256, - 0.028483262285590172, - -0.09008339047431946, - -0.08827924728393555, - -0.03344443812966347, - -0.055373258888721466, - 0.02298158034682274, - -0.004768986254930496, - 0.03892204165458679, - 0.004340828862041235, - 0.009070918895304203, - -0.07332377135753632, - -0.07707536220550537, - 0.06340166926383972, - -0.056554581969976425, - -0.014352606609463692, - -0.07638509571552277, - 0.045238036662340164, - 0.11974451690912247, - 0.0533909797668457, - -0.004737730138003826, - -0.006433691363781691, - 0.04213054105639458, - -0.037932198494672775, - -0.020381726324558258, - 0.03291946277022362, - 0.013733863830566406, - -0.08372844755649567, - 0.013640576042234898, - -0.0693979412317276, - 0.07794291526079178, - -0.051908183842897415, - 0.14760559797286987, - 0.0021405257284641266, - -0.06954716891050339, - -0.07093621045351028, - 0.0385231152176857, - -0.03931885212659836, - 0.04432768374681473, - 0.03189799189567566, - 0.060877010226249695, - 0.033880751579999924, - -0.041171252727508545, - 0.11780042946338654, - 0.032729074358940125, - -0.04795774817466736, - -0.06289391964673996, - -0.06086689978837967, - -0.017920324578881264, - 0.01632593385875225, - 0.02147575467824936, - -0.07005555927753448, - -0.002590891905128956, - 0.022513344883918762, - -0.021650727838277817, - 0.059205275028944016, - 0.13990139961242676, - 0.08244998008012772, - -0.12977442145347595 - ] - }, - "p245_363.wav": { - "name": "p245", - "embedding": [ - 0.06403273344039917, - 0.06051492691040039, - -0.02012384496629238, - -0.017881762236356735, - -0.027586935088038445, - 0.04949760064482689, - -0.14439056813716888, - 0.09276485443115234, - -0.003955709747970104, - 0.15863388776779175, - -0.04848731309175491, - 0.11708610504865646, - 0.008923175744712353, - -0.1183699294924736, - -0.0009529429371468723, - 0.02462594211101532, - -0.026231907308101654, - -0.0009149847319349647, - -0.03142998367547989, - -0.04107664152979851, - 0.024890966713428497, - 0.027374088764190674, - 0.022732285782694817, - -0.02660374343395233, - 0.027254194021224976, - 0.06170704960823059, - -0.0024491813965141773, - 0.027911990880966187, - 0.0008403199608437717, - -0.05736023187637329, - 0.007845464162528515, - 0.10094092786312103, - -0.06058371067047119, - 0.014089441858232021, - 0.038132261484861374, - -0.011506977491080761, - -0.016614658758044243, - -0.06505867093801498, - -0.0033435611985623837, - 0.03163169324398041, - -0.042566388845443726, - 0.08961649239063263, - 0.02474232017993927, - 0.004860918037593365, - 0.020051240921020508, - 0.005838615354150534, - -0.0267366673797369, - -0.016912490129470825, - -0.06767590343952179, - 0.137917160987854, - 0.06183375418186188, - 0.002839596476405859, - -0.0751606747508049, - -0.019900521263480186, - 0.05900411307811737, - 0.0002964561281260103, - -0.0757521390914917, - -0.023973045870661736, - 0.02944762632250786, - 0.11183631420135498, - -0.033953357487916946, - -0.06368960440158844, - 0.027156000956892967, - 0.09929130971431732, - 0.04181322082877159, - 0.052422426640987396, - 0.099247507750988, - 0.10775365680456161, - -0.03121456503868103, - 0.013795128092169762, - 0.03532084822654724, - 0.06895013898611069, - 0.08076289296150208, - -0.004452466033399105, - 0.05283006280660629, - 0.0028274524956941605, - -0.003868196625262499, - -0.03429003059864044, - -0.022063929587602615, - -0.03299005329608917, - -0.02209332585334778, - -0.008881988003849983, - 0.023418426513671875, - 0.09854018688201904, - -0.02846275269985199, - 0.011028441600501537, - 0.049822621047496796, - -0.0425729975104332, - 0.02990562468767166, - 0.037396471947431564, - 0.014230488799512386, - 0.030722465366125107, - -0.09800295531749725, - -0.0838424414396286, - 0.03957703709602356, - -0.020706502720713615, - 0.0446818582713604, - 0.055889274924993515, - 0.04385174810886383, - -0.004087240435183048, - 0.08500337600708008, - 0.04163333773612976, - -0.022932028397917747, - -0.007839178666472435, - -0.05945534259080887, - 0.11431651562452316, - 0.10057404637336731, - -0.05528843402862549, - 0.030194278806447983, - -0.033868640661239624, - 0.043563853949308395, - 0.018794789910316467, - -0.12945233285427094, - -0.055467233061790466, - 0.024301959201693535, - 0.036756157875061035, - 0.008293507620692253, - 0.10468360036611557, - 0.008604477159678936, - 0.05039508268237114, - 0.07051946222782135, - -0.026770269498229027, - -0.03179869055747986, - -0.03430252894759178, - 0.036310695111751556, - -0.07879462838172913, - 0.04594317823648453, - 0.02598048560321331, - 0.024373015388846397, - -0.024430004879832268, - 0.09700754284858704, - 0.0073061189614236355, - -0.012344546616077423, - -0.03343578428030014, - 0.02182130143046379, - 0.055880945175886154, - -0.0009930426022037864, - 0.03629352152347565, - 0.02050788328051567, - 0.01343727670609951, - 0.05896482616662979, - 0.029373139142990112, - -0.019857658073306084, - -0.1102408915758133, - 0.03269043564796448, - 0.024887867271900177, - 0.06146380305290222, - -0.041399724781513214, - -0.02417270466685295, - -0.00849065463989973, - -0.06280441582202911, - 0.0016684045549482107, - -0.01296325959265232, - 0.05026625841856003, - 0.01690084859728813, - -0.006596662104129791, - 0.09954860806465149, - -0.0010454729199409485, - 0.012931148521602154, - 0.0148419588804245, - 0.004123309161514044, - 0.013352934271097183, - 0.07219018042087555, - -0.0987880676984787, - -0.06607095897197723, - 0.011087624356150627, - 0.015368583612143993, - 0.0029961182735860348, - 0.039021141827106476, - 0.05914757773280144, - -0.022443201392889023, - 0.0360303670167923, - -0.04600170999765396, - -0.02771448716521263, - -0.0938287079334259, - -0.04784083366394043, - -0.0161521527916193, - -0.046595387160778046, - -0.03091784566640854, - 0.061463065445423126, - -0.010084379464387894, - 0.07136915624141693, - -0.02919497899711132, - -0.047360315918922424, - -0.05189887806773186, - 0.03612043708562851, - 0.05802188441157341, - -0.04861808940768242, - 0.00468931719660759, - 0.07599315047264099, - 0.019815105944871902, - 0.008400033228099346, - 0.07461564242839813, - 0.07611342519521713, - -0.046885859221220016, - 0.001462546526454389, - -0.06221631169319153, - 0.11272623389959335, - 0.0724392980337143, - -0.05227070301771164, - -0.06521911919116974, - -0.03691735491156578, - -0.05702916905283928, - 0.017825230956077576, - -0.03583719953894615, - -0.0038431144785135984, - 0.04523668810725212, - -0.019796017557382584, - -0.0704396590590477, - -0.07848221808671951, - 0.05864795669913292, - -0.0761282667517662, - 0.0054170056246221066, - -0.0638924315571785, - 0.029236098751425743, - 0.06813766807317734, - 0.06036188453435898, - -0.03969743102788925, - 0.019263770431280136, - 0.029042627662420273, - -0.04254719242453575, - -0.0076590306125581264, - 0.030446184799075127, - 0.01466970331966877, - -0.09990754723548889, - -0.03380292281508446, - -0.06023750826716423, - 0.042855702340602875, - -0.0609348826110363, - 0.08603771775960922, - 0.014863325282931328, - -0.05509550869464874, - -0.05701571702957153, - -0.013307898305356503, - -0.012660689651966095, - 0.043151408433914185, - 0.054835908114910126, - 0.06222027167677879, - 0.03838126361370087, - -0.06193374842405319, - 0.0959349125623703, - 0.05506696552038193, - 0.0024874459486454725, - -0.0725620910525322, - -0.02287134900689125, - -0.009760105982422829, - 0.04641138017177582, - 0.03347271308302879, - -0.05269720405340195, - 0.017612092196941376, - 0.028211530297994614, - -0.03257675841450691, - 0.037428416311740875, - 0.08168216049671173, - 0.06732090562582016, - -0.11743035167455673 - ] - }, - "p245_295.wav": { - "name": "p245", - "embedding": [ - 0.05290251970291138, - 0.08866578340530396, - -0.014172036200761795, - 0.03047887608408928, - -0.0520898699760437, - 0.09630829095840454, - -0.13036440312862396, - 0.09883075952529907, - -0.05007344111800194, - 0.15091755986213684, - -0.04731025546789169, - 0.11103080213069916, - 0.011929815635085106, - -0.2080869972705841, - -0.029904644936323166, - 0.05783097445964813, - -0.08765420317649841, - -0.013555746525526047, - -0.08613084256649017, - -0.020421000197529793, - 0.03315795958042145, - 0.031439635902643204, - 0.04728688299655914, - -0.040597423911094666, - 0.02959975227713585, - 0.05423350632190704, - -0.017078906297683716, - 0.02361954376101494, - -0.004263904877007008, - -0.08039578795433044, - -0.06475915014743805, - 0.12110821902751923, - -0.028802108019590378, - 0.012491578236222267, - 0.05075102299451828, - -0.016131596639752388, - -0.007037237752228975, - -0.06531859934329987, - -0.028068624436855316, - 0.024828573688864708, - -0.02811659500002861, - 0.06960184872150421, - 0.03310901299118996, - -0.01496448926627636, - 0.056352488696575165, - -0.017263544723391533, - -0.039818596094846725, - -0.03839851915836334, - -0.08592745661735535, - 0.16973444819450378, - 0.08115704357624054, - -0.00883428193628788, - -0.06046222895383835, - -0.062448158860206604, - 0.09827961027622223, - -0.007846922613680363, - -0.14564767479896545, - -0.0326983705163002, - 0.07282871007919312, - 0.15935982763767242, - -0.015399754047393799, - -0.012290704995393753, - 0.024149175733327866, - 0.12355045229196548, - 0.01387656107544899, - 0.11754472553730011, - 0.05576509237289429, - 0.09296070039272308, - 0.0019340356811881065, - 0.051164157688617706, - 0.063483826816082, - 0.05950479209423065, - 0.043938253074884415, - -0.03550262749195099, - 0.041027605533599854, - -0.0240523349493742, - -0.037449248135089874, - -0.01831389218568802, - -0.025988414883613586, - 0.0010719280689954758, - -0.003004832658916712, - -0.021211858838796616, - 0.026496581733226776, - 0.0051918174140155315, - -0.03328615054488182, - 0.027924194931983948, - 0.030187323689460754, - -0.012468209490180016, - 0.051449112594127655, - 0.07266655564308167, - 0.03139781579375267, - 0.04979772865772247, - -0.04544838145375252, - -0.11425669491291046, - 0.03663652762770653, - 0.03352591395378113, - -0.0007319997530430555, - 0.052891675382852554, - 0.04801598936319351, - -0.031236916780471802, - 0.08309122920036316, - 0.06788374483585358, - -0.013497358188033104, - 0.0316450297832489, - -0.10186915844678879, - 0.11284466087818146, - 0.09876660257577896, - -0.002314150333404541, - 0.04355976730585098, - -0.039824169129133224, - 0.10397098958492279, - 0.08934269845485687, - -0.13914325833320618, - -0.05876270309090614, - 0.027994800359010696, - -0.03508389741182327, - 0.002701176330447197, - 0.10860823094844818, - 0.01188700832426548, - 0.011183975264430046, - 0.09440584480762482, - -0.08775536715984344, - -0.05217909440398216, - -0.03048260696232319, - 0.04033491015434265, - -0.10106860101222992, - 0.04850113391876221, - 0.037350866943597794, - -0.01968272402882576, - -0.007441813126206398, - 0.07533790171146393, - -0.021646160632371902, - -0.0017310635885223746, - 0.013509604148566723, - -0.037927478551864624, - 0.03929981589317322, - -0.036784231662750244, - 0.01562993973493576, - 0.055752623826265335, - 0.02243494987487793, - 0.03153522312641144, - -0.022017188370227814, - -0.02360452711582184, - -0.09017859399318695, - 0.012063869275152683, - 0.032551586627960205, - 0.058903768658638, - -0.005659362301230431, - 0.01366327702999115, - -0.03107360377907753, - -0.09516414254903793, - 0.06370949745178223, - -0.0582180917263031, - 0.06526194512844086, - 0.011835404671728611, - -0.02400565706193447, - 0.0968305915594101, - 0.015253373421728611, - -0.0012897446285933256, - -0.05431203544139862, - -0.025147121399641037, - 0.05116645246744156, - 0.044625066220760345, - -0.10463736206293106, - -0.04806501418352127, - 0.0033200837206095457, - -0.009190395474433899, - -0.014074652455747128, - 0.014267812483012676, - 0.053471509367227554, - 0.011426469311118126, - 0.039148926734924316, - -0.07803167402744293, - 0.016493376344442368, - -0.10991061478853226, - -0.04326704144477844, - -0.021416686475276947, - -0.0697161927819252, - -0.0099858483299613, - 0.10108533501625061, - 0.00226034433580935, - -0.011492466554045677, - -0.04758329689502716, - -0.06428387016057968, - -0.05141941457986832, - 0.06912635266780853, - 0.071955606341362, - 0.008642706088721752, - 0.036815255880355835, - 0.03473331779241562, - -0.008092626929283142, - 0.04696999490261078, - 0.054040051996707916, - 0.11258342862129211, - -0.01833399012684822, - 0.01800486631691456, - -0.08299419283866882, - 0.09973357617855072, - 0.09477218985557556, - -0.0731373280286789, - -0.10853767395019531, - -0.021285444498062134, - -0.05653847008943558, - 0.04914431646466255, - -0.04716038703918457, - -0.033013030886650085, - 0.04293026030063629, - -0.010498236864805222, - -0.08922325074672699, - -0.0917540043592453, - 0.11912663280963898, - -0.055475734174251556, - -0.02718234434723854, - -0.06428301334381104, - 0.04882869869470596, - 0.059380047023296356, - 0.026572778820991516, - -0.06824323534965515, - 0.03023555502295494, - 0.062191300094127655, - -0.05923333764076233, - 0.003709199372678995, - 0.02580970898270607, - 0.012109932489693165, - -0.11526891589164734, - -0.001838963944464922, - -0.07267390191555023, - 0.06847310811281204, - -0.07226385176181793, - 0.15533387660980225, - -0.004655337426811457, - -0.057828888297080994, - -0.062104471027851105, - 0.07144276797771454, - -0.02231518179178238, - 0.030752034857869148, - 0.059447064995765686, - 0.0737541913986206, - 0.035599373281002045, - -0.08204565942287445, - 0.08413322269916534, - 0.007639879826456308, - -0.0029468019492924213, - -0.06997314095497131, - -0.006133362650871277, - -0.041792504489421844, - 0.029643665999174118, - 0.00013725587632507086, - -0.10018723458051682, - 0.016295988112688065, - 0.027648676186800003, - -0.008695149794220924, - 0.06170041859149933, - 0.12852692604064941, - 0.058018703013658524, - -0.10498124361038208 - ] - }, - "p245_265.wav": { - "name": "p245", - "embedding": [ - 0.06141588091850281, - 0.0863850861787796, - -0.00772889144718647, - 0.006429128814488649, - -0.04527030885219574, - 0.05000637099146843, - -0.14279066026210785, - 0.1320023536682129, - -0.056966036558151245, - 0.14200010895729065, - -0.0780944675207138, - 0.12522992491722107, - -0.019226575270295143, - -0.17627684772014618, - -0.04489091783761978, - 0.05379902198910713, - -0.06346271932125092, - -0.04697665572166443, - -0.03622979298233986, - -0.04041717201471329, - 0.04363404959440231, - 0.053445830941200256, - 0.02921658754348755, - 0.01965351402759552, - 0.024492040276527405, - 0.07114890217781067, - 0.0007303707534447312, - 0.03748464584350586, - 0.008124567568302155, - -0.07660400867462158, - -0.03315816819667816, - 0.08190691471099854, - -0.028733596205711365, - 0.00120810407679528, - 0.03400120139122009, - -0.0018271005246788263, - 0.030979255214333534, - -0.08918013423681259, - -0.045051414519548416, - 0.007627800107002258, - -0.0354047492146492, - 0.06582905352115631, - 0.013605700805783272, - -0.030955586582422256, - 0.02764042653143406, - 0.021312881261110306, - -0.010659478604793549, - -0.06219052895903587, - -0.10788904130458832, - 0.16770416498184204, - 0.07065357267856598, - 0.022713806480169296, - -0.05951463431119919, - -0.08140042424201965, - 0.11799120903015137, - -0.02215052768588066, - -0.10574284195899963, - -0.02035026252269745, - 0.05858565866947174, - 0.18034133315086365, - -0.050429366528987885, - -0.048468366265296936, - 0.057583488523960114, - 0.11438995599746704, - 0.05638664960861206, - 0.064597487449646, - 0.10252750664949417, - 0.08532530069351196, - -0.016957592219114304, - -0.003322306089103222, - 0.056352391839027405, - 0.094028539955616, - 0.0768650472164154, - -0.007835718803107738, - 0.027863772585988045, - 0.022023748606443405, - -0.03772643208503723, - -0.005641659256070852, - -0.031409166753292084, - -0.02106664888560772, - -0.010805588215589523, - 0.013345547951757908, - 0.013816862367093563, - 0.02314738556742668, - -0.028986215591430664, - 0.06092710793018341, - 0.012848379090428352, - -0.02544492483139038, - 0.06588050723075867, - 0.01309226918965578, - 0.02681158483028412, - 0.0668388232588768, - -0.07371874153614044, - -0.0790446400642395, - 0.040636513382196426, - 0.015440435148775578, - 0.009443160146474838, - 0.06674832850694656, - 0.05638415366411209, - -0.035714857280254364, - 0.13445249199867249, - 0.051664482802152634, - 0.0027419414836913347, - 0.01137523166835308, - -0.09602459520101547, - 0.10689400136470795, - 0.10667445510625839, - -0.04308803379535675, - 0.051937036216259, - -0.041244879364967346, - 0.06648872047662735, - 0.06827705353498459, - -0.15634435415267944, - -0.10099723935127258, - 0.03558790683746338, - 0.022423533722758293, - 0.0029250963125377893, - 0.11810757219791412, - -0.009108901023864746, - 0.05770644173026085, - 0.10427931696176529, - -0.08280959725379944, - -0.05646088346838951, - -0.020561296492815018, - 0.057388439774513245, - -0.0824371948838234, - 0.07191649079322815, - 0.06053715944290161, - -0.004701548255980015, - 0.0077123260125517845, - 0.07615099847316742, - -0.02628055214881897, - -0.016148649156093597, - -0.010600737296044827, - -0.047366973012685776, - 0.004877621307969093, - -0.03101721592247486, - -0.026803234592080116, - 0.031856268644332886, - 0.048052143305540085, - 0.021104853600263596, - 0.005830016452819109, - -0.05748726427555084, - -0.13851776719093323, - 0.0194392092525959, - 0.027735350653529167, - 0.07751675695180893, - 0.0011948405299335718, - -0.025190945714712143, - -0.03790529817342758, - -0.04290200024843216, - -0.002937731798738241, - -0.017169035971164703, - 0.07741132378578186, - -0.02447914332151413, - 0.025848161429166794, - 0.09395711123943329, - 0.022960063070058823, - -0.004125075880438089, - -0.02629566192626953, - -0.018751507624983788, - 0.018105752766132355, - 0.04463201016187668, - -0.046960942447185516, - -0.09143471717834473, - -0.013318241573870182, - 0.04128715395927429, - -0.013524128124117851, - 0.06687702238559723, - 0.02442941442131996, - 0.01055664848536253, - 0.019471533596515656, - -0.0704900473356247, - 0.02539224922657013, - -0.11442510038614273, - -0.0675152838230133, - 0.009721603244543076, - -0.02033161371946335, - -0.01928350329399109, - 0.0666721984744072, - 0.027444487437605858, - 0.05788690596818924, - -0.038635265082120895, - -0.0817505270242691, - -0.08335334062576294, - 0.04522058367729187, - 0.07481241971254349, - 0.004759491421282291, - 0.023886388167738914, - 0.06340890377759933, - 0.015949996188282967, - 0.06555631756782532, - 0.057088494300842285, - 0.10183705389499664, - -0.004194200038909912, - 0.010300399735569954, - -0.051059022545814514, - 0.08699583262205124, - 0.06291025131940842, - -0.06870310008525848, - -0.07695413380861282, - -0.03393455967307091, - -0.07696463167667389, - 0.05199280008673668, - 0.011047711595892906, - 0.029042871668934822, - 0.023142365738749504, - -0.0053185345605015755, - -0.10475137084722519, - -0.07338863611221313, - 0.0940384715795517, - -0.05864279717206955, - -0.012832490727305412, - -0.07504788786172867, - 0.0514068566262722, - 0.11660397052764893, - 0.032704733312129974, - 0.004244822543114424, - -0.014622854068875313, - 0.022180471569299698, - -0.04421330988407135, - 0.0025789428036659956, - 0.04622779041528702, - 0.039170339703559875, - -0.11233170330524445, - 0.016567479819059372, - -0.09519881010055542, - 0.05243542045354843, - -0.046724990010261536, - 0.14224502444267273, - 0.006798848044127226, - -0.05118474364280701, - -0.11130020767450333, - 0.03792344033718109, - -0.026183992624282837, - 0.07226990908384323, - 0.02974279224872589, - 0.06457917392253876, - 0.04768770933151245, - -0.08781243860721588, - 0.0921948179602623, - 0.051670871675014496, - -0.04571196436882019, - -0.07563783973455429, - -0.06704097986221313, - -0.0293809175491333, - 0.011358235031366348, - -0.009815889410674572, - -0.05694393813610077, - -0.028338033705949783, - 0.005018941126763821, - 0.000653441995382309, - 0.07874833047389984, - 0.12727107107639313, - 0.04640696197748184, - -0.12975960969924927 - ] - }, - "p245_038.wav": { - "name": "p245", - "embedding": [ - 0.06439477205276489, - 0.11627796292304993, - -0.018857136368751526, - -0.011145049706101418, - -0.025873221457004547, - 0.049101777374744415, - -0.1650121510028839, - 0.13044854998588562, - -0.027952594682574272, - 0.15885549783706665, - -0.08671392500400543, - 0.11310912668704987, - -0.016927197575569153, - -0.14900633692741394, - -0.033550798892974854, - 0.018714770674705505, - -0.036722928285598755, - -0.014324760064482689, - -0.022692708298563957, - -0.02819386124610901, - 0.054330985993146896, - 0.05505513772368431, - 0.009814209304749966, - -0.018059393391013145, - 0.008099757134914398, - 0.05739843472838402, - 0.0039299605414271355, - 0.0375874787569046, - 0.014269409701228142, - -0.05008117854595184, - -0.025907929986715317, - 0.10695318877696991, - -0.03858288377523422, - 0.01771639473736286, - 0.03339051455259323, - -0.005038121249526739, - -0.0033116545528173447, - -0.07335206121206284, - 0.0052226148545742035, - 0.008138231001794338, - -0.018129779025912285, - 0.06418715417385101, - 0.017314670607447624, - -0.023593097925186157, - 0.026232846081256866, - 0.02572501264512539, - 0.011489740572869778, - -0.06279759854078293, - -0.07686542719602585, - 0.168763667345047, - 0.06735078990459442, - -0.00111345702316612, - -0.05967877432703972, - -0.03979071229696274, - 0.08087699115276337, - -0.018116841092705727, - -0.074142687022686, - -0.032986100763082504, - 0.054672449827194214, - 0.13474556803703308, - -0.03676103800535202, - -0.06252637505531311, - 0.05071040615439415, - 0.11635462939739227, - 0.026544924825429916, - 0.06582682579755783, - 0.10050135850906372, - 0.09124962985515594, - -0.026495974510908127, - -0.0028315093368291855, - 0.013345044106245041, - 0.06011321395635605, - 0.05108907073736191, - -0.025840725749731064, - 0.04631713032722473, - -0.020554862916469574, - -0.024403532966971397, - 0.014409735798835754, - -0.02092524617910385, - -0.045812174677848816, - -0.0015328023582696915, - 0.011809545569121838, - -0.012846815399825573, - 0.04751688241958618, - -0.04888773709535599, - 0.031168799847364426, - 0.024889757856726646, - -0.03402239829301834, - 0.07779605686664581, - 0.028156638145446777, - 0.04669620841741562, - 0.04032839462161064, - -0.08856549859046936, - -0.07841338217258453, - 0.06819409877061844, - -0.0027875984087586403, - 0.013581261038780212, - 0.08013671636581421, - 0.04817834496498108, - -0.02230714075267315, - 0.11979600042104721, - 0.04247979074716568, - -0.019626734778285027, - 0.0074136629700660706, - -0.09032045304775238, - 0.14209407567977905, - 0.1045672819018364, - -0.05363459512591362, - 0.036355264484882355, - -0.06699031591415405, - 0.047368377447128296, - 0.04370930418372154, - -0.12915927171707153, - -0.08462279289960861, - 0.05312618613243103, - 0.04017074406147003, - -0.00770151149481535, - 0.10889987647533417, - 0.0024326108396053314, - 0.02700762078166008, - 0.08302212506532669, - -0.0719294399023056, - -0.06971342861652374, - -0.037190478295087814, - 0.05197039246559143, - -0.09291410446166992, - 0.06969888508319855, - 0.07189285755157471, - -0.0032593084033578634, - 0.0007802906329743564, - 0.0739070475101471, - -0.010575811378657818, - 0.008843726478517056, - -0.017711874097585678, - -0.01732797920703888, - 0.020265422761440277, - -0.0185215063393116, - -0.007625448517501354, - -0.03312220424413681, - 0.040559276938438416, - 0.04554632306098938, - 0.008804453536868095, - -0.03333550691604614, - -0.11797411739826202, - 0.018385019153356552, - 0.046660587191581726, - 0.05299576371908188, - -0.011743198148906231, - -0.03923667594790459, - -0.04114318639039993, - -0.03889688849449158, - -0.021580945700407028, - -0.024570494890213013, - 0.05154753848910332, - -0.010507899336516857, - 0.018989600241184235, - 0.1126655861735344, - 0.027028437703847885, - 0.006295781582593918, - -0.027226507663726807, - -0.004959492944180965, - 0.026845797896385193, - 0.03674827516078949, - -0.051401712000370026, - -0.08731059730052948, - -0.02251921407878399, - 0.030141083523631096, - -0.006006236188113689, - 0.06439631432294846, - 0.05828789621591568, - 0.013215817511081696, - 0.03246751427650452, - -0.09111323207616806, - 0.023509180173277855, - -0.10091763734817505, - -0.050731733441352844, - -0.012368658557534218, - -0.01097035314887762, - -0.012854345142841339, - 0.079320028424263, - 0.0087592713534832, - 0.05264304205775261, - -0.03827190026640892, - -0.055144526064395905, - -0.07200711965560913, - 0.04566948115825653, - 0.09830781817436218, - -0.01894742250442505, - 0.022245291620492935, - 0.04311996325850487, - 0.0045318896882236, - 0.04133991897106171, - 0.06632495671510696, - 0.09142457693815231, - -0.010978798381984234, - -0.0015562947373837233, - -0.05638126656413078, - 0.07100266218185425, - 0.06787656992673874, - -0.0793527215719223, - -0.0751798003911972, - -0.029535826295614243, - -0.06890953332185745, - 0.004041846841573715, - -0.007809102535247803, - 0.02664385735988617, - 0.01961926743388176, - -0.01260912325233221, - -0.1013621985912323, - -0.08399906754493713, - 0.0572051964700222, - -0.06348063051700592, - 0.0034241406247019768, - -0.085358165204525, - 0.06912264227867126, - 0.09726061671972275, - 0.04884674400091171, - -0.0440090075135231, - -0.045738112181425095, - 0.011684160679578781, - -0.03165445476770401, - 0.01865381747484207, - 0.012331570498645306, - 0.06041670963168144, - -0.11584147810935974, - 0.0500732883810997, - -0.07793223857879639, - 0.05905335396528244, - -0.07582663744688034, - 0.13418897986412048, - 0.029116196557879448, - -0.06510952115058899, - -0.10680127143859863, - 0.04201100394129753, - -0.021726496517658234, - 0.0337463840842247, - 0.01406768523156643, - 0.027783513069152832, - 0.03574041277170181, - -0.10570641607046127, - 0.08106917887926102, - 0.04952608793973923, - -0.023613858968019485, - -0.09165468066930771, - -0.061425477266311646, - -0.02786344848573208, - 0.04794113337993622, - 0.02549189329147339, - -0.062400832772254944, - -0.04226354509592056, - 0.024085480719804764, - 0.004088684916496277, - 0.09167845547199249, - 0.1242532879114151, - 0.034429892897605896, - -0.14338025450706482 - ] - }, - "p245_217.wav": { - "name": "p245", - "embedding": [ - 0.05695503577589989, - 0.07583010196685791, - -0.016389742493629456, - 0.018431421369314194, - -0.040894389152526855, - 0.04120801016688347, - -0.1546989530324936, - 0.14659383893013, - -0.015423774719238281, - 0.13480515778064728, - -0.06425818055868149, - 0.12210576236248016, - 0.0032971855252981186, - -0.20861417055130005, - -0.013658901676535606, - 0.051295384764671326, - -0.028287667781114578, - -0.022000018507242203, - -0.03859560191631317, - -0.009296084754168987, - 0.0401318296790123, - 0.03239862620830536, - 0.001549319364130497, - -0.009849275462329388, - 0.020781300961971283, - 0.054708003997802734, - 0.0013669790932908654, - 0.046801090240478516, - 0.002334756776690483, - -0.029335247352719307, - -0.030995184555649757, - 0.10988393425941467, - -0.05703957751393318, - 0.017359916120767593, - 0.08969232439994812, - -0.016148347407579422, - -0.03298070654273033, - -0.0500020869076252, - -0.029819557443261147, - 0.003663610899820924, - -0.05784587189555168, - 0.07706837356090546, - 0.04449599236249924, - -0.008327395655214787, - 0.06315970420837402, - 0.055972568690776825, - 0.0015063886530697346, - -0.054875247180461884, - -0.09596193581819534, - 0.138583242893219, - 0.0606389194726944, - 0.00836460292339325, - -0.07635632157325745, - -0.04892273247241974, - 0.09018982946872711, - -0.027881067246198654, - -0.10177905112504959, - -0.03320343419909477, - 0.08164609968662262, - 0.14266330003738403, - -0.04466687887907028, - -0.04286735877394676, - 0.017054174095392227, - 0.10297219455242157, - 0.06363245099782944, - 0.10223960876464844, - 0.08230701088905334, - 0.12241026759147644, - -0.014631897211074829, - 0.025025956332683563, - 0.059896860271692276, - 0.0698169618844986, - 0.07432568073272705, - -0.023188291117548943, - 0.03386310115456581, - 0.02448231168091297, - -0.023037364706397057, - -0.012589871883392334, - -0.033811695873737335, - 0.01158376969397068, - 0.001882069744169712, - 0.02314615249633789, - 0.03053019940853119, - 0.03674817085266113, - -0.029230520129203796, - 0.05880194902420044, - 0.06158149614930153, - -0.01925525814294815, - 0.04934092238545418, - 0.03643257915973663, - -0.004568001255393028, - 0.062270596623420715, - -0.12189958244562149, - -0.1047031581401825, - 0.031784188002347946, - -0.015407895669341087, - 0.012638932093977928, - 0.06763593852519989, - 0.04626145958900452, - -0.005873025394976139, - 0.11342759430408478, - 0.05139974504709244, - -0.020759545266628265, - 0.05428338423371315, - -0.09721888601779938, - 0.1181439608335495, - 0.0793595165014267, - -0.031073730438947678, - 0.0436832532286644, - -0.07522480189800262, - 0.08172430098056793, - 0.06279304623603821, - -0.13817885518074036, - -0.06196904182434082, - 0.05790138989686966, - 0.010804906487464905, - -0.02299630269408226, - 0.1456695795059204, - -0.019599225372076035, - 0.03169623762369156, - 0.10761342942714691, - -0.08864068984985352, - -0.049610260874032974, - -0.017023073509335518, - 0.04631923884153366, - -0.08943146467208862, - 0.07312345504760742, - 0.024890314787626266, - 0.002169303596019745, - 0.0080955158919096, - 0.09349853545427322, - -0.0017502279952168465, - -0.01249099150300026, - -0.018021676689386368, - -0.0033812960609793663, - 0.03437964990735054, - -0.022166170179843903, - -0.002121887868270278, - 0.02192838490009308, - 0.029682371765375137, - 0.04028315842151642, - 0.010425377637147903, - -0.028041765093803406, - -0.1250048577785492, - 0.008147882297635078, - 0.034634895622730255, - 0.10226175934076309, - -0.01784675195813179, - -0.010427807457745075, - -0.05093197152018547, - -0.07607053220272064, - 0.003930846229195595, - -0.020810648798942566, - 0.055109620094299316, - 0.0025551526341587305, - 0.013672232627868652, - 0.10381767153739929, - 0.014201506972312927, - 0.01283918134868145, - -0.04554907977581024, - -0.027497630566358566, - 0.005998424254357815, - 0.06512703746557236, - -0.09334829449653625, - -0.06682019680738449, - -0.010354258120059967, - 0.004766783677041531, - -0.025279425084590912, - 0.037344325333833694, - 0.03449561819434166, - 0.036036308854818344, - 0.036823682487010956, - -0.08531507104635239, - 0.0018016083631664515, - -0.1394508183002472, - -0.0815252959728241, - -0.02151612378656864, - -0.0015938917640596628, - -0.012259655632078648, - 0.0693151131272316, - 0.0033840928226709366, - 0.052119988948106766, - -0.026590734720230103, - -0.06745981425046921, - -0.07988043129444122, - 0.06508442759513855, - 0.07555993646383286, - -0.010908445343375206, - 0.038952335715293884, - 0.04205147176980972, - -0.03055877983570099, - 0.03896339610219002, - 0.07675856351852417, - 0.11281244456768036, - -0.008918274194002151, - 0.03658916801214218, - -0.06202957034111023, - 0.12142127752304077, - 0.0861264169216156, - -0.06951456516981125, - -0.09837830066680908, - 0.005457638297230005, - -0.06019698828458786, - 0.01422215811908245, - -0.02416147291660309, - 0.005793252028524876, - 0.023187510669231415, - 0.0074515496380627155, - -0.08348351716995239, - -0.07295876741409302, - 0.05929452180862427, - -0.07700511068105698, - -0.003775406628847122, - -0.0873730480670929, - 0.047739215195178986, - 0.10900114476680756, - 0.024313991889357567, - -0.04424477368593216, - -0.03279256820678711, - 0.05699847638607025, - -0.03447532653808594, - -0.0061314767226576805, - 0.03095804899930954, - 0.035259686410427094, - -0.10586991906166077, - 0.004525955766439438, - -0.04176730290055275, - 0.05354766547679901, - -0.04886385798454285, - 0.13047727942466736, - -0.0014129416085779667, - -0.05769328773021698, - -0.061096373945474625, - 0.017582561820745468, - 0.010860014706850052, - 0.042609430849552155, - 0.027057643979787827, - 0.07789435982704163, - 0.04094276577234268, - -0.06281334161758423, - 0.12140953540802002, - 0.03557422012090683, - -0.03031773492693901, - -0.057436373084783554, - -0.06296677887439728, - -0.03395545110106468, - 0.021839486435055733, - 0.01674625836312771, - -0.09285302460193634, - -0.019008222967386246, - 0.026923567056655884, - -0.03376341238617897, - 0.02698184736073017, - 0.14462527632713318, - 0.05075627937912941, - -0.13280043005943298 - ] - }, - "p245_175.wav": { - "name": "p245", - "embedding": [ - 0.06346789002418518, - 0.07751361280679703, - -0.061345186084508896, - 0.0059855300933122635, - -0.06816507875919342, - 0.050359081476926804, - -0.1395430713891983, - 0.12861904501914978, - -0.0015069455839693546, - 0.13703063130378723, - -0.02308640256524086, - 0.12194506824016571, - 0.00845268089324236, - -0.14056716859340668, - -0.010019214823842049, - 0.016649287194013596, - -0.01854596473276615, - -0.010776717215776443, - -0.07068033516407013, - -0.052345190197229385, - 0.03140375390648842, - 0.02599193900823593, - 0.027596620842814445, - -0.06848743557929993, - 0.04689355939626694, - 0.047257475554943085, - -0.015023407526314259, - 0.013693500310182571, - -0.011562461964786053, - -0.07093634456396103, - -0.019092991948127747, - 0.08376101404428482, - -0.09498448669910431, - 0.008083469234406948, - 0.03845779597759247, - -0.04263698309659958, - -0.051721327006816864, - -0.037724271416664124, - 0.007709467317909002, - 0.023672278970479965, - -0.020013734698295593, - 0.08998864889144897, - 0.03202503174543381, - -0.030420318245887756, - 0.03258658945560455, - 0.001791088841855526, - -0.006609803065657616, - -0.03055848926305771, - -0.07270245999097824, - 0.13985535502433777, - 0.04490544646978378, - 0.010950845666229725, - -0.09802262485027313, - -0.03327689319849014, - 0.07671360671520233, - -0.03424697741866112, - -0.10362584888935089, - -0.035309724509716034, - 0.020134149119257927, - 0.10259351879358292, - -0.034387215971946716, - -0.04813402146100998, - 0.03244548290967941, - 0.08628875762224197, - 0.0844549611210823, - 0.0418822281062603, - 0.11302679032087326, - 0.12304940819740295, - -0.03118106722831726, - 0.042952124029397964, - 0.03557780757546425, - 0.0666932687163353, - 0.04517190530896187, - -0.014657807536423206, - 0.03452032059431076, - -0.046633247286081314, - 0.011902025900781155, - -0.06789163500070572, - -0.024341249838471413, - -0.037758272141218185, - -0.006508654914796352, - 0.018251894041895866, - 0.02663244679570198, - 0.05192834883928299, - -0.062040265649557114, - 0.02899051085114479, - 0.0837457999587059, - -0.0628102719783783, - 0.0670715719461441, - 0.06139007955789566, - 0.010444831103086472, - 0.042947880923748016, - -0.12700915336608887, - -0.07083833962678909, - 0.04285401478409767, - -0.0016075544990599155, - 0.04289363697171211, - 0.04432043060660362, - 0.037159513682127, - 0.003587345825508237, - 0.0998082309961319, - 0.0711551383137703, - -0.020768309012055397, - 0.003666960634291172, - -0.05657308176159859, - 0.1488042175769806, - 0.08466958999633789, - -0.04089108854532242, - 0.046057868748903275, - -0.05397312343120575, - 0.04399727284908295, - 0.03330078348517418, - -0.08752667903900146, - -0.07684275507926941, - 0.01432211697101593, - 0.006382961757481098, - -0.01619766280055046, - 0.13093313574790955, - 0.0027348671574145555, - 0.04161256179213524, - 0.08714604377746582, - -0.08063099533319473, - -0.04750104993581772, - -0.008746836334466934, - 0.04431828111410141, - -0.0802057683467865, - 0.05823252350091934, - 0.06678904592990875, - -0.006550130434334278, - 0.03733261674642563, - 0.09099490195512772, - 0.009603897109627724, - 0.02753298729658127, - 0.0021466300822794437, - 0.010971230454742908, - 0.04248962178826332, - 0.02431904710829258, - -0.01051582582294941, - 0.04359505698084831, - 0.028018495067954063, - 0.08911307901144028, - -0.007681314367800951, - 0.006342812441289425, - -0.09554597735404968, - 0.025849614292383194, - 0.03165729343891144, - 0.0675920695066452, - -0.057238973677158356, - -0.008086977526545525, - -0.026148777455091476, - -0.06742510199546814, - 0.017159990966320038, - 0.00811290554702282, - 0.06082607060670853, - 0.002425331389531493, - -0.011956543661653996, - 0.1416836380958557, - 0.04129130765795708, - 0.014940298162400723, - -0.03290032222867012, - 0.010639454238116741, - 0.00022791652008891106, - 0.07365251332521439, - -0.09108705073595047, - -0.05736298859119415, - -0.02716674469411373, - 0.013833167031407356, - -0.012481394223868847, - 0.08955036848783493, - 0.09413868188858032, - 0.0075254542753100395, - 0.03182124346494675, - -0.05812346190214157, - 0.013353829272091389, - -0.04923943802714348, - -0.03914391249418259, - -0.004920173902064562, - -0.055269740521907806, - -0.06653085350990295, - 0.09049324691295624, - 0.017146818339824677, - 0.053514279425144196, - -0.05546388775110245, - -0.06544967740774155, - -0.06264512985944748, - 0.023702749982476234, - 0.02649877779185772, - -0.060478150844573975, - -0.004596519283950329, - 0.05585126578807831, - -0.027569957077503204, - 0.019031893461942673, - 0.09241661429405212, - 0.06888863444328308, - -0.06637530773878098, - -0.00018554739654064178, - -0.05951085686683655, - 0.11070995032787323, - 0.07835686951875687, - -0.07178416848182678, - -0.07632406800985336, - -0.046406686305999756, - -0.051771312952041626, - -0.018572799861431122, - -0.02746032178401947, - 0.02444702759385109, - 0.056583959609270096, - -0.009931129403412342, - -0.08003847301006317, - -0.11080262809991837, - 0.08064588904380798, - -0.08228999376296997, - 0.024792760610580444, - -0.08462819457054138, - 0.028489451855421066, - 0.06298046559095383, - 0.026346109807491302, - -0.03569354489445686, - -0.023774772882461548, - 0.017565038055181503, - -0.005380216985940933, - 0.039895229041576385, - 0.060947537422180176, - 0.05775279179215431, - -0.06291563808917999, - -0.028329215943813324, - -0.04761023074388504, - 0.044990167021751404, - -0.023175090551376343, - 0.12658056616783142, - 0.026585116982460022, - -0.03660263866186142, - -0.07988627254962921, - 0.039842698723077774, - -0.037337832152843475, - 0.04629252478480339, - 0.06123068183660507, - 0.07132358849048615, - 0.04912687465548515, - -0.062370799481868744, - 0.08713943511247635, - 0.0624421201646328, - -0.027981458231806755, - -0.08425964415073395, - -0.060185227543115616, - -0.02597776986658573, - 0.04996762052178383, - 0.032887209206819534, - -0.0841042548418045, - 0.034382712095975876, - 0.028365720063447952, - -0.004861542489379644, - 0.03693706914782524, - 0.09719918668270111, - 0.0782008022069931, - -0.09507626295089722 - ] - }, - "p245_207.wav": { - "name": "p245", - "embedding": [ - 0.005714900325983763, - 0.06457733362913132, - 0.004187434911727905, - -0.021525951102375984, - -0.0065626781433820724, - 0.02792624942958355, - -0.14002498984336853, - 0.06731373071670532, - -0.01818159781396389, - 0.1356664001941681, - -0.05324416235089302, - 0.06830120831727982, - -0.034483082592487335, - -0.10734449326992035, - -0.007863657549023628, - 0.022485030815005302, - -0.05902174860239029, - -0.026858985424041748, - -0.0009185560047626495, - -0.08321932703256607, - 0.02623319998383522, - 0.005208658054471016, - 0.013213034719228745, - -0.04361630231142044, - -0.02752767875790596, - 0.07028138637542725, - 0.002143390476703644, - -0.0146803492680192, - -0.009182943031191826, - -0.04172234237194061, - 0.01835324987769127, - 0.06217292696237564, - -0.0318247489631176, - 0.004048257600516081, - 0.04170429706573486, - 0.007519562728703022, - -0.01493147574365139, - 0.01532783918082714, - 0.0287703275680542, - 0.06161107122898102, - -0.06338603794574738, - 0.07941804826259613, - 0.036901164799928665, - 0.014048144221305847, - 0.06236494705080986, - -0.01656649261713028, - -0.028536368161439896, - 0.034821610897779465, - -0.03549067676067352, - 0.10615966469049454, - 0.06451530009508133, - -0.017689723521471024, - -0.027370542287826538, - 0.012758234515786171, - 0.07373268902301788, - 0.0021164226345717907, - -0.11973743140697479, - -0.004540946334600449, - 0.03217212110757828, - 0.08122918009757996, - -0.040893152356147766, - -0.06576414406299591, - 0.014500039629638195, - 0.07964563369750977, - -0.0014269910752773285, - 0.062040407210588455, - 0.07595833390951157, - 0.07689637690782547, - -0.026510760188102722, - -0.040906645357608795, - 0.04899820685386658, - 0.05743949115276337, - 0.05673843249678612, - -0.024928472936153412, - 0.06329768896102905, - -0.034276604652404785, - 0.012909727171063423, - -0.02175063267350197, - -0.010366223752498627, - -0.04512477666139603, - -0.05208081007003784, - -0.02282804436981678, - 0.003028125036507845, - 0.045927394181489944, - -0.0029825950041413307, - -0.014140933752059937, - 0.06439346075057983, - -0.02593814767897129, - 0.03771301358938217, - 0.050027865916490555, - 0.014379791915416718, - 0.0230235792696476, - -0.05738743022084236, - -0.013791057281196117, - 0.003596492111682892, - -0.03006008267402649, - 0.07999237626791, - 0.036222681403160095, - 0.036017417907714844, - 0.03391757607460022, - 0.06323987990617752, - 0.04017386585474014, - -0.017293326556682587, - -0.019558804109692574, - -0.09338685870170593, - 0.09457619488239288, - 0.09398174285888672, - -0.06248994916677475, - 0.014357410371303558, - -5.624443292617798e-05, - 0.03288285806775093, - -0.015759091824293137, - -0.06893797963857651, - -0.023726005107164383, - 0.009546736255288124, - 0.08211015909910202, - 0.0017561540007591248, - 0.1265469193458557, - 0.016067221760749817, - 0.009599420242011547, - 0.09014800190925598, - -0.007023267447948456, - -0.026835009455680847, - -0.06230008974671364, - 0.018501663580536842, - -0.09613300859928131, - 0.06004936248064041, - 0.04435037449002266, - 0.03709470108151436, - 0.017522094771265984, - 0.09381219744682312, - 0.015421802178025246, - -0.004207766614854336, - -0.06147175654768944, - 0.00561306020244956, - 0.03227153420448303, - 0.020716127008199692, - 0.04621957987546921, - 0.054952818900346756, - 0.008233473636209965, - 0.1018039733171463, - 0.04387457296252251, - -0.013423305004835129, - -0.08311109244823456, - 0.021318968385457993, - 0.019052643328905106, - 0.01211455836892128, - -0.03850438445806503, - -0.03483520820736885, - -0.008608279749751091, - -0.07386927306652069, - -0.005466017872095108, - -0.03254125639796257, - 0.07076390087604523, - 0.0018328777514398098, - -0.034657251089811325, - 0.10914607346057892, - 0.03254685923457146, - -0.020932482555508614, - -0.007662458345293999, - -0.03775492310523987, - -0.036882780492305756, - 0.05189044028520584, - -0.16695855557918549, - -0.05213463306427002, - -0.03214156627655029, - 0.05830372869968414, - 0.04806680604815483, - 0.02171982452273369, - 0.09682385623455048, - -0.01593824289739132, - 0.034122928977012634, - 0.019758760929107666, - 0.0075564393773674965, - -0.05600166320800781, - -0.09161937236785889, - -0.0397486612200737, - -0.08457554876804352, - -0.03153682500123978, - 0.049176983535289764, - -0.05968166142702103, - 0.043516017496585846, - -0.016835235059261322, - -0.06165733188390732, - -0.052258171141147614, - 0.04853470250964165, - 0.022019289433956146, - -0.0495682992041111, - 0.008231607265770435, - 0.09220928698778152, - -0.01490121241658926, - 0.010350488126277924, - 0.02598405070602894, - 0.11678995937108994, - -0.07933177053928375, - 0.034209318459033966, - -0.05690230056643486, - 0.04964562505483627, - 0.06604070961475372, - -0.024854913353919983, - -0.04516545683145523, - -0.04230199381709099, - -0.033467452973127365, - 0.04247598350048065, - -0.05804087966680527, - -0.023922963067889214, - -0.02045528031885624, - 0.001905662938952446, - -0.043074484914541245, - -0.06196685880422592, - 0.04031866788864136, - -0.042273685336112976, - 0.01316012255847454, - -0.048686493188142776, - 0.014568752609193325, - -0.0010052993893623352, - 0.06246006488800049, - -0.06711981445550919, - 0.06435006111860275, - 0.013680890202522278, - -0.02490854635834694, - 0.025920730084180832, - 0.01244838535785675, - 0.048085447400808334, - -0.02043239399790764, - -0.07742955535650253, - -0.09716372936964035, - 0.026665080338716507, - -0.04094772785902023, - 0.04497615993022919, - 0.010428737848997116, - -0.038724079728126526, - 0.001246955245733261, - -0.029422644525766373, - -0.03412716090679169, - 0.021321220323443413, - 0.07773859053850174, - 0.07390090823173523, - 0.02460348978638649, - -0.0009994925931096077, - 0.09132890403270721, - 0.039713699370622635, - 0.02696148492395878, - -0.02657892368733883, - 0.013455790467560291, - -0.03710121288895607, - 0.006606810260564089, - 0.042904119938611984, - -0.09355448186397552, - 0.03492759168148041, - -0.006384681910276413, - 0.022673599421977997, - 0.025408102199435234, - 0.05549946799874306, - 0.03747066855430603, - -0.06575259566307068 - ] - }, - "p245_410.wav": { - "name": "p245", - "embedding": [ - 0.06138628348708153, - 0.11542730033397675, - 0.013618210330605507, - 0.0043386900797486305, - -0.02632880210876465, - 0.07874049246311188, - -0.12588030099868774, - 0.1312543749809265, - -0.06868959963321686, - 0.15047144889831543, - -0.07057936489582062, - 0.11297422647476196, - -0.024098871275782585, - -0.1708507537841797, - -0.04770872741937637, - 0.06264124810695648, - -0.04859438166022301, - 0.002145136473700404, - -0.02605314552783966, - 0.02059422805905342, - 0.03261344134807587, - 0.010087705217301846, - 0.050151657313108444, - -0.019247662276029587, - 0.036634813994169235, - 0.049692511558532715, - 0.022401003167033195, - 0.0738116055727005, - 0.031047113239765167, - -0.059921614825725555, - -0.029059529304504395, - 0.11814715713262558, - -0.03588221222162247, - 0.03566500544548035, - 0.08219851553440094, - 0.003195669502019882, - -0.0030348829459398985, - -0.07293616235256195, - -0.008689919486641884, - -0.01337275467813015, - -0.027580013498663902, - 0.06656365841627121, - 0.013780351728200912, - -0.007230506278574467, - 0.03034483641386032, - 0.02612973004579544, - -0.005744854919612408, - -0.04188116639852524, - -0.08389604091644287, - 0.13862720131874084, - 0.047218628227710724, - 0.00871156807988882, - -0.0780838280916214, - -0.09332337975502014, - 0.09848659485578537, - -0.018711350858211517, - -0.1180376410484314, - -0.03769146651029587, - 0.07095952332019806, - 0.1657940149307251, - -0.01791992597281933, - -0.026444222778081894, - 0.009156377986073494, - 0.11890661716461182, - 0.028830749914050102, - 0.12218604981899261, - 0.06318780034780502, - 0.08197610825300217, - 0.01749119721353054, - 0.05555614084005356, - 0.04741935059428215, - 0.05871226638555527, - 0.020235486328601837, - -0.01295311190187931, - 0.02967890165746212, - -0.010496165603399277, - -0.03945232182741165, - 0.02183038368821144, - -0.010659299790859222, - -0.016780901700258255, - -0.034632548689842224, - 0.007578754797577858, - -0.0019083371153101325, - 0.01640445366501808, - -0.008604365400969982, - 0.045778315514326096, - -0.009708210825920105, - -0.008862346410751343, - 0.07167281210422516, - 0.050735436379909515, - 0.020126227289438248, - 0.053325824439525604, - -0.05838897079229355, - -0.10883063077926636, - 0.003109367098659277, - 0.0016980597283691168, - 0.0108483312651515, - 0.07835330814123154, - 0.03138541430234909, - -0.014842085540294647, - 0.08973574638366699, - 0.06415779888629913, - 0.007397042587399483, - 0.026149261742830276, - -0.10174152255058289, - 0.10870009660720825, - 0.06329715251922607, - -0.019336581230163574, - 0.04037659615278244, - -0.04727781563997269, - 0.08257965743541718, - 0.09861951321363449, - -0.14841406047344208, - -0.08689580857753754, - 0.03101716935634613, - -0.00731317326426506, - -5.131463331053965e-05, - 0.09431871771812439, - -0.012281810864806175, - 0.001758349477313459, - 0.08549165725708008, - -0.08166474103927612, - -0.06902052462100983, - -0.026373399421572685, - 0.049318306148052216, - -0.06889750063419342, - 0.05453240126371384, - 0.031536247581243515, - -0.017920486629009247, - -0.02202051505446434, - 0.08621321618556976, - -0.006947343237698078, - 0.004568722099065781, - 0.034689128398895264, - -0.047042228281497955, - 0.0336570180952549, - -0.05507899448275566, - 0.029752647504210472, - 0.02880193293094635, - 0.0472036674618721, - 0.042597874999046326, - 0.007979786954820156, - -0.04230373352766037, - -0.08210102468729019, - -0.010056205093860626, - 0.06830783188343048, - 0.054157599806785583, - -0.015459793619811535, - -0.03502073884010315, - -0.025027073919773102, - -0.04586402326822281, - 0.024098828434944153, - -0.013705159537494183, - 0.08127333968877792, - 0.009081423282623291, - 0.0028022523038089275, - 0.11192270368337631, - -0.0038240584544837475, - 0.003933777566999197, - -0.06656401604413986, - -0.020861174911260605, - 0.03896436467766762, - 0.04738524183630943, - -0.08721837401390076, - -0.0633912906050682, - 0.02096131443977356, - -0.00287054106593132, - -0.015570729970932007, - 0.02618386410176754, - 0.04338506981730461, - 0.011953679844737053, - 0.05130385980010033, - -0.06290173530578613, - 0.009931986220180988, - -0.12084567546844482, - -0.06573657691478729, - -0.03267340362071991, - -0.02831471711397171, - -0.00558051560074091, - 0.07871821522712708, - 0.014146724715828896, - 0.03070511668920517, - 0.009243200533092022, - -0.07759562134742737, - -0.0696643590927124, - 0.07821585237979889, - 0.09075450897216797, - 0.007773653604090214, - 0.05091632157564163, - 0.037621937692165375, - -0.02680756151676178, - 0.0488693043589592, - 0.05618232488632202, - 0.08351285755634308, - -0.027692638337612152, - 0.005666225682944059, - -0.0912637710571289, - 0.0723094791173935, - 0.09403886646032333, - -0.11352118104696274, - -0.09781872481107712, - -0.018661251291632652, - -0.05001499876379967, - 0.03118080273270607, - -0.025698017328977585, - 0.006016460247337818, - 0.030104126781225204, - -0.036268360912799835, - -0.08565820753574371, - -0.09698472917079926, - 0.10658232867717743, - -0.07032830268144608, - -0.020525306463241577, - -0.05380408093333244, - 0.04795943200588226, - 0.06001579016447067, - 0.041961412876844406, - -0.027583729475736618, - 0.013682641088962555, - 0.046150289475917816, - -0.06453683227300644, - -0.03261297568678856, - 0.02873014286160469, - -0.006042590364813805, - -0.08512724936008453, - 0.03716982528567314, - -0.06654595583677292, - 0.07547879219055176, - -0.08775123953819275, - 0.1703391969203949, - -0.04174051806330681, - -0.08346080780029297, - -0.08242104947566986, - 0.016172874718904495, - -0.031128808856010437, - 0.016164379194378853, - 0.031993091106414795, - 0.05852271243929863, - 0.008681602776050568, - -0.07399953901767731, - 0.11765526235103607, - 0.012885339558124542, - -0.0033774811308830976, - -0.06865650415420532, - -0.04924626275897026, - -0.04310857504606247, - 0.0314045250415802, - -0.012140999548137188, - -0.08920430392026901, - 0.002188728656619787, - 0.014187728986144066, - -0.020532403141260147, - 0.061600007116794586, - 0.1364554464817047, - 0.05143813416361809, - -0.12346476316452026 - ] - }, - "p245_268.wav": { - "name": "p245", - "embedding": [ - 0.06310431659221649, - 0.08891062438488007, - 0.057315338402986526, - -0.008858971297740936, - 0.031672459095716476, - 0.02658783830702305, - -0.07486759126186371, - 0.07301227748394012, - 0.050209399312734604, - 0.0840902104973793, - -0.11808949708938599, - 0.04236871376633644, - -0.052433691918849945, - -0.12814535200595856, - -0.051364652812480927, - 0.020134927704930305, - -0.0855218842625618, - -0.00544728385284543, - -0.04091191291809082, - -0.025319723412394524, - 0.009479985572397709, - 0.01872437074780464, - 0.05280330032110214, - -0.022985313087701797, - 0.00765775702893734, - 0.026311120018363, - -0.01164957880973816, - 0.0036260634660720825, - 0.0226412583142519, - -0.02220800518989563, - 0.055221930146217346, - 0.031026408076286316, - 0.009599806740880013, - 0.03356578201055527, - 0.04034927859902382, - 0.0368569940328598, - 0.003639408852905035, - -0.03918633610010147, - -0.03377586230635643, - 0.06772951036691666, - -0.0343666709959507, - 0.04551781713962555, - 0.04054827243089676, - -0.037262845784425735, - 0.06552249193191528, - 0.017257429659366608, - -0.04550604522228241, - -0.017996232956647873, - -0.10338733345270157, - 0.1516112983226776, - 0.028339693322777748, - 0.040444083511829376, - -0.08263899385929108, - -0.009530819952487946, - 0.06374624371528625, - -0.021870657801628113, - -0.0972333624958992, - -0.0007095485925674438, - 0.06050730496644974, - 0.06377357989549637, - 0.0028351168148219585, - -0.027675624936819077, - -0.017260735854506493, - 0.042442962527275085, - 0.0008119605481624603, - 0.012130390852689743, - 0.08333855122327805, - 0.08334726095199585, - 0.00598897784948349, - 0.03944366052746773, - 0.06778285652399063, - -0.009524425491690636, - 0.04882204160094261, - -0.013460765592753887, - 0.007070770487189293, - -0.030017070472240448, - -0.02819071151316166, - -0.002772220876067877, - -0.0037603285163640976, - -0.020120825618505478, - 0.02786005474627018, - -0.02203180640935898, - 0.013314452953636646, - 0.028675565496087074, - -0.03209492936730385, - -0.01110602542757988, - -0.007717551663517952, - 0.04579617455601692, - 0.06896176934242249, - 0.05184534192085266, - 0.017284339293837547, - 0.033198677003383636, - -0.02694527618587017, - -0.10608524084091187, - -0.04547639191150665, - -0.029947763308882713, - 0.02002204954624176, - 0.005893515422940254, - 0.04120960831642151, - -0.0018764566630125046, - 0.09274991601705551, - 0.015705928206443787, - -0.017828630283474922, - -0.016607899218797684, - -0.10144427418708801, - 0.038542818278074265, - 0.08532913029193878, - -0.00023947053705342114, - 0.011417156085371971, - -0.012561132200062275, - 0.05507110059261322, - 0.07522506266832352, - -0.06105435639619827, - 0.006394127383828163, - 0.032938163727521896, - 0.04430108889937401, - 0.051403701305389404, - 0.08237497508525848, - 0.011897895485162735, - 0.01515619270503521, - 0.1135254055261612, - -0.06646746397018433, - 0.00946538895368576, - -0.0026697758585214615, - -0.000601351261138916, - -0.01414368487894535, - 0.026824194937944412, - 0.015875209122896194, - 0.008434277027845383, - -0.023086605593562126, - 0.02801133133471012, - 0.01820078119635582, - 0.007520037703216076, - -0.08520317077636719, - 0.021558113396167755, - 0.06758968532085419, - -0.028813021257519722, - 0.01090240478515625, - 0.06225084140896797, - 0.07790062576532364, - 0.009946642443537712, - 0.08515550941228867, - -0.07937370240688324, - -0.03198190778493881, - 0.016087235882878304, - 0.025300810113549232, - 0.016921505331993103, - -0.01847926713526249, - -0.041926927864551544, - -0.04404903203248978, - 0.010373488068580627, - 0.07995498180389404, - -0.022619884461164474, - 0.04849045351147652, - 0.051200851798057556, - -0.02890632301568985, - 0.09097415208816528, - -0.029832040891051292, - -0.014637788757681847, - -0.03373027592897415, - -0.06292355060577393, - -0.017978297546505928, - 0.025941012427210808, - -0.14169664680957794, - -0.028501026332378387, - -0.012339752167463303, - -0.02788308635354042, - 0.002613095100969076, - -0.0028673741035163403, - 0.05240756645798683, - -0.03357310593128204, - 0.005628190003335476, - -0.03130502998828888, - 0.00947977788746357, - -0.06364037096500397, - -0.08878746628761292, - 0.03150235116481781, - -0.018351947888731956, - 0.039620839059352875, - 0.08282946050167084, - -0.03261521831154823, - -0.0008367574773728848, - -0.03674977272748947, - -0.0852208212018013, - 0.008686866611242294, - 0.101239874958992, - 0.031720276921987534, - 0.005959689617156982, - 0.0405784547328949, - 0.0440894216299057, - -0.024530742317438126, - 0.05612146109342575, - -0.007912315428256989, - 0.07587370276451111, - -0.07104907929897308, - 0.008375139907002449, - -0.012511083856225014, - 0.04508136957883835, - 0.04878731817007065, - -0.03532436862587929, - -0.09116031229496002, - -0.04800465330481529, - -0.017353862524032593, - 0.021244684234261513, - -0.016801459714770317, - -0.025423120707273483, - 0.008604750968515873, - -0.04332951456308365, - -0.037103623151779175, - -0.0843779593706131, - 0.004076346755027771, - 0.012920545414090157, - -0.007513933815062046, - -0.050823867321014404, - 0.02897595427930355, - 0.017536111176013947, - -0.0022208113223314285, - -0.01085618231445551, - 0.06907113641500473, - -0.035663239657878876, - -0.04684930294752121, - -0.07966738194227219, - -0.028518524020910263, - 0.011889120563864708, - -0.022107306867837906, - -0.04321623593568802, - -0.048167552798986435, - 0.07959474623203278, - -0.015826363116502762, - 0.07123249769210815, - 0.009701437316834927, - -0.00923224724829197, - 0.0072501786053180695, - -0.011874960735440254, - -0.04539987072348595, - 0.028477970510721207, - 0.03939606994390488, - 0.0022410042583942413, - 0.03137281537055969, - -0.0145358145236969, - 0.06984752416610718, - 0.025273308157920837, - -0.004561700392514467, - -0.016134023666381836, - -0.0041047632694244385, - -0.05413687601685524, - -0.059700362384319305, - -0.028672901913523674, - -0.0455009862780571, - 0.044798754155635834, - -0.011599814519286156, - 0.03188484162092209, - 0.011966836638748646, - 0.0701262354850769, - 0.017792966216802597, - -0.0608154833316803 - ] - }, - "p245_020.wav": { - "name": "p245", - "embedding": [ - 0.020111050456762314, - 0.09247728437185287, - 0.025166435167193413, - 0.010333132930099964, - -0.056210409849882126, - 0.01853836700320244, - -0.09827360510826111, - 0.07573895156383514, - -0.04189908131957054, - 0.07756853103637695, - -0.05870659276843071, - 0.08700592815876007, - -0.06342567503452301, - -0.14062091708183289, - -0.031100889667868614, - 0.021081268787384033, - -0.03437665104866028, - -0.02160629630088806, - -0.04198909550905228, - -0.012814931571483612, - 0.01871916651725769, - -0.020449180155992508, - 0.035803817212581635, - 0.008470350876450539, - -0.03875792771577835, - 0.05794673413038254, - 0.0016769858775660396, - 0.019986871629953384, - 0.005749349948018789, - -0.02471870183944702, - 0.02758297324180603, - 0.06641179323196411, - -0.010039208456873894, - -0.005528332199901342, - 0.03912268579006195, - -0.005993373226374388, - -0.005713280290365219, - -0.05293441563844681, - -0.04953199625015259, - 0.014004185795783997, - -0.07651299983263016, - 0.030638379976153374, - 0.023359425365924835, - -0.0324578583240509, - 0.05405449867248535, - 0.0034008524380624294, - -0.03579028695821762, - -0.015064412727952003, - -0.08754132688045502, - 0.09980251640081406, - 0.06604974716901779, - -0.0009139559115283191, - -0.02642335742712021, - -0.038833267986774445, - 0.11125248670578003, - -0.03282087296247482, - -0.07986927032470703, - -0.04186466336250305, - 0.07153049111366272, - 0.1067778468132019, - -0.03292055428028107, - -0.035826176404953, - -0.011656848713755608, - 0.07207497954368591, - 0.053108539432287216, - 0.06990865617990494, - 0.07931245863437653, - 0.08371011912822723, - -0.03666648268699646, - -0.007143992930650711, - 0.06109270453453064, - 0.051477786153554916, - 0.022509783506393433, - -0.015039490535855293, - 0.021543193608522415, - 0.016744941473007202, - -0.026245316490530968, - 0.024499056860804558, - -0.007970703765749931, - 0.0026396973989903927, - -0.018890388309955597, - -0.009461496025323868, - -0.005383766256272793, - -0.013061519712209702, - -0.021321987733244896, - 0.04273631423711777, - 0.03139588236808777, - 0.011878791265189648, - 0.06219147890806198, - 0.05063939839601517, - 0.0008488788153044879, - 0.08594416081905365, - -0.04098690301179886, - -0.07568081468343735, - -0.017578821629285812, - -0.003560521174222231, - 0.016415735706686974, - 0.05457286164164543, - 0.0023028801660984755, - -0.010014718398451805, - 0.07237141579389572, - 0.02977786771953106, - -0.0027614531572908163, - 0.024141548201441765, - -0.11407139897346497, - 0.054244957864284515, - 0.04059650003910065, - -0.015274407342076302, - 0.006759863346815109, - -0.025715915486216545, - 0.09273432195186615, - 0.07683676481246948, - -0.03982778638601303, - -0.06374648213386536, - 0.03759436309337616, - 0.04261960834264755, - -0.00803883746266365, - 0.10744534432888031, - -0.017380472272634506, - 0.006272796541452408, - 0.11523531377315521, - -0.06526540219783783, - -0.03705465421080589, - -0.012595325708389282, - 0.010098084807395935, - -0.04520164430141449, - 0.0245953481644392, - 0.042069196701049805, - -0.022006560117006302, - 0.01372842863202095, - 0.08870820701122284, - -0.006402289029210806, - -0.013793490827083588, - -0.006970482878386974, - -0.059971489012241364, - 0.03013474866747856, - -0.0041718631982803345, - -0.015474086627364159, - 0.022079743444919586, - 0.08087258040904999, - 0.028789296746253967, - -0.0023215345572680235, - -0.02867100201547146, - -0.05714616924524307, - 0.023201212286949158, - 0.0642385333776474, - 0.040239740163087845, - 0.011647403240203857, - -0.02849597856402397, - -0.07064931839704514, - -0.013435274362564087, - 0.022055521607398987, - -0.04722315073013306, - 0.0829038918018341, - -0.023268667981028557, - 0.0057359253987669945, - 0.06697870790958405, - -0.003052075859159231, - -0.017235036939382553, - -0.05294032394886017, - -0.05445124953985214, - 0.01674816571176052, - 0.04757261276245117, - -0.07878684252500534, - -0.05606096237897873, - -0.05666513741016388, - 0.052628397941589355, - 0.026166167110204697, - 0.0031677584629505873, - 0.037842586636543274, - -0.01681971177458763, - 0.008235390298068523, - -0.053279027342796326, - 0.03407876938581467, - -0.04982725530862808, - -0.04811428114771843, - 0.00028219912201166153, - -0.007377403788268566, - 0.01042214222252369, - 0.03375440090894699, - -0.029170675203204155, - 0.02626769058406353, - -0.018943093717098236, - -0.1053246557712555, - -0.05474048852920532, - 0.04039070010185242, - 0.03152260184288025, - 0.0017168143531307578, - 0.04159450903534889, - 0.067286416888237, - -0.035605937242507935, - 0.045907825231552124, - 0.04507463425397873, - 0.08741877973079681, - -0.060339268296957016, - 0.022528639063239098, - -0.004920828156173229, - 0.042768143117427826, - 0.059048693627119064, - -0.07067345827817917, - -0.09288397431373596, - -0.023263832554221153, - -0.062192898243665695, - 0.025707727298140526, - -0.01939145103096962, - -0.021507736295461655, - 0.029672157019376755, - -0.005507215857505798, - -0.08770778030157089, - -0.0758291482925415, - 0.07726240158081055, - -0.03542296588420868, - 0.014739079400897026, - -0.06024390086531639, - 0.008896338753402233, - 0.047745928168296814, - 0.07181842625141144, - -0.005642815493047237, - 0.007414764724671841, - 0.039597287774086, - -0.0265686996281147, - -0.009603145532310009, - 0.025013327598571777, - 0.05142961069941521, - -0.026072543114423752, - 0.017455385997891426, - -0.04093378409743309, - 0.04691533371806145, - -0.007908816449344158, - 0.09570178389549255, - 0.01324513927102089, - -0.03373609855771065, - -0.04519186541438103, - 0.011305350810289383, - -0.017221562564373016, - 0.04737751930952072, - 0.009630376473069191, - 0.05060143396258354, - 0.027384359389543533, - -0.05469958111643791, - 0.11512438952922821, - 0.03068365715444088, - -0.007685971911996603, - -0.04486910253763199, - 0.015228860080242157, - -0.06025262176990509, - -0.01608678698539734, - -0.010557505302131176, - -0.057354506105184555, - -0.0034065209329128265, - -0.0003556075389496982, - -0.0018839886179193854, - 0.051765598356723785, - 0.12646539509296417, - 0.06309166550636292, - -0.05137067288160324 - ] - }, - "p245_163.wav": { - "name": "p245", - "embedding": [ - 0.05841439217329025, - 0.09662588685750961, - -0.0061739301308989525, - -0.002237170934677124, - -0.0277771707624197, - 0.10140382498502731, - -0.04726060479879379, - 0.07432474195957184, - -0.00906817615032196, - 0.08759608864784241, - -0.08986325562000275, - 0.05857470631599426, - -0.031229551881551743, - -0.11394838988780975, - -0.02688022330403328, - 0.04017500579357147, - -0.04897162318229675, - -0.00450885808095336, - -0.038108449429273605, - -0.023775113746523857, - 0.0035048499703407288, - 0.006729887332767248, - 0.018333856016397476, - -0.0008832204039208591, - 0.0207950659096241, - 0.0375790111720562, - -0.0007985268603079021, - 0.01566438376903534, - -0.001614327309653163, - -0.03306248039007187, - -0.03332936018705368, - 0.07491204142570496, - -0.030627798289060593, - 0.0007486430695280433, - 0.04377755522727966, - -0.002278407569974661, - 0.02718573808670044, - -0.09462835639715195, - -0.0294888224452734, - 0.033161405473947525, - -0.04029253125190735, - 0.06710030138492584, - 0.019457699730992317, - -0.00834108330309391, - -0.002293851226568222, - 0.020104432478547096, - -0.029140889644622803, - -0.028434645384550095, - -0.06606759130954742, - 0.1440230906009674, - 0.053341470658779144, - 0.005462430417537689, - -0.05329783260822296, - -0.036008354276418686, - 0.08846418559551239, - -0.0031364555470645428, - -0.06557545810937881, - -0.020512767136096954, - 0.048026930540800095, - 0.07501393556594849, - 0.01893289014697075, - -0.029027706012129784, - 0.009401940740644932, - 0.10228752344846725, - 0.015846794471144676, - 0.0614558681845665, - 0.06616979837417603, - 0.10708193480968475, - -0.005989402532577515, - 0.020386233925819397, - 0.07188090682029724, - 0.026576941832900047, - 0.04715946316719055, - -0.023954156786203384, - 0.044818129390478134, - -0.021003147587180138, - -0.019935499876737595, - 0.01245113741606474, - -0.0332430861890316, - -0.0432429164648056, - 0.03391849994659424, - 0.004320711828768253, - 0.009877056814730167, - 0.004860926419496536, - -0.04436563700437546, - 0.024806179106235504, - 0.013585629872977734, - 0.06439605355262756, - 0.0663529634475708, - 0.036417096853256226, - 0.03045489452779293, - 0.047612227499485016, - -0.05296152085065842, - -0.08916735649108887, - 0.03690622001886368, - 0.02019021287560463, - 0.00821962021291256, - 0.039982110261917114, - 0.0407865010201931, - -0.02024291828274727, - 0.08885294198989868, - 0.019455110654234886, - -0.0012448076158761978, - 0.011308285407721996, - -0.06887713074684143, - 0.07067835330963135, - 0.06961586326360703, - -0.008308272808790207, - 0.036000657826662064, - -0.015452384017407894, - 0.09051434695720673, - 0.07199264317750931, - -0.09637239575386047, - -0.04512724280357361, - 0.0006475374102592468, - -0.005851843860000372, - -0.006102154962718487, - 0.09125592559576035, - -0.030349669978022575, - 0.017558574676513672, - 0.0658513754606247, - -0.05648725479841232, - -0.006466813385486603, - 0.02142878621816635, - -0.011057816445827484, - -0.008932436816394329, - 0.007018874399363995, - 0.020267408341169357, - -0.0030883229337632656, - -0.036680594086647034, - 0.04770880192518234, - 0.010833981446921825, - 0.0029827263206243515, - -0.020794425159692764, - -0.004892662167549133, - 0.02534985914826393, - -0.0098141860216856, - -0.02050180360674858, - 0.023007284849882126, - 0.04670095443725586, - 0.01775568164885044, - -0.0026280980091542006, - -0.03649647533893585, - -0.07093364000320435, - 0.00864366628229618, - 0.007204011082649231, - 0.01648777350783348, - 0.014602276496589184, - -0.012358425185084343, - -0.03325846046209335, - -0.01984560303390026, - 0.021259360015392303, - -0.04084467515349388, - 0.04148033261299133, - 0.059877678751945496, - -0.05124928802251816, - 0.08260767161846161, - -0.0012720997910946608, - -0.0076899281702935696, - -0.03545330837368965, - -0.045284971594810486, - 0.034459054470062256, - 0.042196448892354965, - -0.053837403655052185, - -0.05046524852514267, - 0.0033853824716061354, - -0.039978958666324615, - -0.029626306146383286, - 0.006336470600217581, - 0.05984225124120712, - -0.011045667342841625, - -0.012948170304298401, - -0.08348678797483444, - 0.00969365332275629, - -0.07289309054613113, - -0.04234948754310608, - 0.040735792368650436, - -0.003280259668827057, - 0.00513502536341548, - 0.07622112333774567, - 0.0023975037038326263, - 0.006626129150390625, - -0.04571637511253357, - -0.06639240682125092, - 0.018399417400360107, - 0.06874015182256699, - 0.03879721835255623, - 0.014644498936831951, - 0.0469251349568367, - 0.06297238171100616, - 0.0021610483527183533, - 0.027958616614341736, - 0.039892397820949554, - 0.0855751782655716, - -0.023211505264043808, - 0.012845052406191826, - 0.0016873478889465332, - 0.082424595952034, - 0.021720226854085922, - -0.0700012668967247, - -0.05708795040845871, - -0.015773000195622444, - -0.038030482828617096, - 0.031374819576740265, - -0.004319166298955679, - 0.011662925593554974, - 0.023937970399856567, - -0.022233333438634872, - -0.07208476960659027, - -0.08108754456043243, - 0.05409551411867142, - -0.05163487046957016, - -0.02346532605588436, - -0.05439407378435135, - 0.04438807815313339, - 0.0686459168791771, - 0.032846350222826004, - -0.03742487356066704, - 0.03992089629173279, - 0.02078905701637268, - -0.028435055166482925, - -0.05065528303384781, - -0.006213558372110128, - 0.025874238461256027, - -0.06516356021165848, - 0.0005761708016507328, - -0.0627983808517456, - 0.06496476382017136, - -0.01604381576180458, - 0.09772796928882599, - 0.02124573104083538, - -0.011922435835003853, - -0.05777374655008316, - 0.034009236842393875, - -0.011686310172080994, - 0.03818716108798981, - 0.036626510322093964, - 0.01663830690085888, - 0.026756130158901215, - -0.06055809557437897, - 0.09657292068004608, - 0.022792678326368332, - -0.04041813313961029, - -0.05038847774267197, - 0.020560598000884056, - -0.04055638983845711, - -0.002742315409705043, - -0.0030675954185426235, - -0.07888146489858627, - 0.002169286832213402, - 0.037083711475133896, - 0.009535001590847969, - 0.01609252393245697, - 0.08241428434848785, - 0.05649503320455551, - -0.04198306053876877 - ] - }, - "p245_174.wav": { - "name": "p245", - "embedding": [ - 0.06053908169269562, - 0.08558464050292969, - -0.018965184688568115, - 0.0060822078958153725, - -0.058025211095809937, - 0.04829690605401993, - -0.15755316615104675, - 0.15240031480789185, - -0.044602636247873306, - 0.137856587767601, - -0.07941167801618576, - 0.12801824510097504, - -0.031585097312927246, - -0.18661773204803467, - -0.03130514174699783, - 0.05720669776201248, - -0.02270910143852234, - -0.035225965082645416, - -0.016919728368520737, - -0.03193862363696098, - 0.040963124483823776, - 0.019222203642129898, - 0.016967246308922768, - 0.02326958440244198, - 0.010996158234775066, - 0.07366849482059479, - -0.00920411478728056, - 0.028062259778380394, - -0.015596326440572739, - -0.014677177183330059, - -0.03142034634947777, - 0.10493294894695282, - -0.043143488466739655, - -0.01729748398065567, - 0.039214786142110825, - -0.015097531490027905, - -0.008306695148348808, - -0.06746401637792587, - 0.004913870710879564, - -0.02021232433617115, - -0.04165096580982208, - 0.06204339116811752, - -0.006956617813557386, - -0.012596439570188522, - 0.0532010979950428, - 0.011642388999462128, - -0.020254941657185555, - -0.036211512982845306, - -0.1110805869102478, - 0.12352153658866882, - 0.0714971274137497, - 0.02566937543451786, - -0.09412231296300888, - -0.03582538664340973, - 0.10712945461273193, - -0.023610206320881844, - -0.08403027802705765, - -0.05404921621084213, - 0.06401799619197845, - 0.16266614198684692, - -0.044669680297374725, - -0.046707071363925934, - 0.03989778459072113, - 0.10140331089496613, - 0.053454235196113586, - 0.07785943895578384, - 0.09924812614917755, - 0.09417085349559784, - -0.034340281039476395, - 0.015459941700100899, - 0.04340926557779312, - 0.05862921476364136, - 0.06078168377280235, - -0.03103979304432869, - 0.027251489460468292, - -0.014847335405647755, - -0.011730505153536797, - 0.0032020213548094034, - -0.031521931290626526, - -0.03952204808592796, - -0.021138817071914673, - 0.001015878631733358, - -0.00703272083774209, - 0.017776522785425186, - -0.046797264367341995, - 0.04575476422905922, - 0.054252494126558304, - -0.03515557944774628, - 0.07513362914323807, - 0.037983037531375885, - 0.004451265092939138, - 0.06522634625434875, - -0.09930534660816193, - -0.07327760756015778, - 0.0673816129565239, - -0.002339091617614031, - 0.012199750170111656, - 0.06315010786056519, - 0.036556266248226166, - -0.02129976451396942, - 0.1067400574684143, - 0.050953444093465805, - 0.0050945100374519825, - 0.02508370392024517, - -0.09362341463565826, - 0.1274382472038269, - 0.10374052822589874, - -0.05730605870485306, - 0.04155851528048515, - -0.03230087459087372, - 0.03375503048300743, - 0.06299611926078796, - -0.11127364635467529, - -0.07434968650341034, - 0.021692616865038872, - 0.017203565686941147, - -0.007193603552877903, - 0.11787600815296173, - -0.0026278397999703884, - 0.03939511626958847, - 0.10966388881206512, - -0.07608084380626678, - -0.07123257219791412, - -0.024885917082428932, - 0.045376308262348175, - -0.08241355419158936, - 0.08154720067977905, - 0.08450458198785782, - 0.025532372295856476, - 0.015833169221878052, - 0.07506553083658218, - -0.008143452927470207, - -0.013271811418235302, - -0.007883160375058651, - -0.040905918926000595, - 0.013033452443778515, - -0.014070827513933182, - -0.022556472569704056, - 0.030848516151309013, - 0.03128411993384361, - 0.048257872462272644, - 0.010475965216755867, - -0.005857937037944794, - -0.11833178997039795, - 0.005440273322165012, - 0.057075582444667816, - 0.06255810707807541, - -0.02172510325908661, - -0.032551079988479614, - -0.036506086587905884, - -0.047954998910427094, - -0.0022448524832725525, - -0.0046116653829813, - 0.07790759205818176, - -0.012245937250554562, - 0.01959780603647232, - 0.0952703207731247, - 0.037075772881507874, - 0.017934000119566917, - -0.0387270450592041, - -0.0182648878544569, - 0.020462749525904655, - 0.05743202939629555, - -0.081120565533638, - -0.07685534656047821, - -0.043960489332675934, - 0.05843103304505348, - -0.022667063400149345, - 0.06382974982261658, - 0.06521397829055786, - 0.0032231160439550877, - -0.0037277741357684135, - -0.08563626557588577, - 0.05547960847616196, - -0.09182780236005783, - -0.05968383699655533, - -0.005924026481807232, - -0.033981502056121826, - -0.023522641509771347, - 0.06392447650432587, - 0.019974686205387115, - 0.051858775317668915, - -0.052253663539886475, - -0.08003184199333191, - -0.08746812492609024, - 0.039200589060783386, - 0.08401018381118774, - -0.021278902888298035, - 0.043560490012168884, - 0.03696700558066368, - -0.02436467446386814, - 0.06060680001974106, - 0.06839732825756073, - 0.1203126609325409, - -0.029048707336187363, - 0.01523737981915474, - -0.05702322721481323, - 0.07002775371074677, - 0.08962385356426239, - -0.07633150368928909, - -0.09829647839069366, - -0.04284178465604782, - -0.05069104582071304, - 0.044792987406253815, - -0.01423504576086998, - 0.02151448279619217, - 0.049060989171266556, - -0.016450626775622368, - -0.12159506976604462, - -0.09810302406549454, - 0.08257488906383514, - -0.05797458440065384, - 0.0109921395778656, - -0.0930691733956337, - 0.06734311580657959, - 0.08471283316612244, - -0.008471265435218811, - -0.04161234200000763, - -0.02609671652317047, - 0.012457402423024178, - -0.013217940926551819, - 0.0031602447852492332, - 0.024377934634685516, - 0.04004962369799614, - -0.10128220915794373, - -0.0013495211023837328, - -0.08456601947546005, - 0.07523411512374878, - -0.03479805216193199, - 0.15023118257522583, - 0.008240321651101112, - -0.025441840291023254, - -0.10053075850009918, - 0.041153669357299805, - 0.00902634859085083, - 0.057733193039894104, - 0.03792540729045868, - 0.06747318059206009, - 0.015904121100902557, - -0.08649022877216339, - 0.08776737749576569, - 0.04737918823957443, - -0.049008697271347046, - -0.0898362547159195, - -0.03831641003489494, - -0.04605083167552948, - 0.024221740663051605, - -0.01501629687845707, - -0.0882963240146637, - -0.02549821138381958, - 0.01554032787680626, - 0.009332826361060143, - 0.07228730618953705, - 0.12009193003177643, - 0.03756209462881088, - -0.10823303461074829 - ] - }, - "p245_264.wav": { - "name": "p245", - "embedding": [ - 0.061170563101768494, - 0.0708121731877327, - -0.021257635205984116, - 0.01069109607487917, - -0.040154241025447845, - 0.07165251672267914, - -0.1463283896446228, - 0.1330227255821228, - -0.02723396196961403, - 0.15805542469024658, - -0.022783884778618813, - 0.11406855285167694, - 0.0049973949790000916, - -0.16913628578186035, - -0.01917419582605362, - 0.043057698756456375, - -0.05838467925786972, - -0.0277927964925766, - -0.05301709100604057, - -0.032037436962127686, - 0.04029052332043648, - 0.0528525710105896, - 0.032823655754327774, - -0.0474269762635231, - 0.03485497087240219, - 0.06042475998401642, - -0.018764130771160126, - 0.026501458138227463, - -0.024335134774446487, - -0.10746573656797409, - -0.033123914152383804, - 0.08541350066661835, - -0.056892432272434235, - 0.014906872063875198, - 0.024899205192923546, - -0.027130426838994026, - -0.0026952363550662994, - -0.06057935953140259, - -0.026362087577581406, - 0.024887191131711006, - -0.01079667080193758, - 0.07780696451663971, - 0.019829317927360535, - -0.0123857157304883, - 0.029647447168827057, - -0.0032248913776129484, - -0.015579422004520893, - -0.049463145434856415, - -0.09595844149589539, - 0.18051806092262268, - 0.07073637843132019, - 0.014501250348985195, - -0.06670577079057693, - -0.07222127914428711, - 0.08422359824180603, - -0.016195133328437805, - -0.117047518491745, - -0.02392880618572235, - 0.05013751983642578, - 0.15348616242408752, - -0.03439287096261978, - -0.056075289845466614, - 0.0506671741604805, - 0.09622706472873688, - 0.04493853449821472, - 0.054402466863393784, - 0.1061578094959259, - 0.08969119191169739, - -0.020474471151828766, - 0.011118492111563683, - 0.021666109561920166, - 0.08146689832210541, - 0.07790334522724152, - 0.00850432924926281, - 0.041391126811504364, - -0.019355138763785362, - -0.021714605391025543, - -0.0469542071223259, - -0.03980112448334694, - -0.02237231843173504, - 0.012850751169025898, - 0.017891250550746918, - 0.04626927524805069, - 0.0576079860329628, - -0.026667367666959763, - 0.03776039183139801, - 0.027250248938798904, - -0.03271190822124481, - 0.06143586337566376, - 0.017719008028507233, - 0.043225184082984924, - 0.06251790374517441, - -0.10524812340736389, - -0.0806269496679306, - 0.060623615980148315, - 0.019871611148118973, - 0.02424066886305809, - 0.05451924726366997, - 0.04766447842121124, - -0.03062250278890133, - 0.11262212693691254, - 0.03681463003158569, - -0.01660098508000374, - -0.002976907417178154, - -0.0903116762638092, - 0.11418511718511581, - 0.10884575545787811, - -0.024835417047142982, - 0.05217685550451279, - -0.0696776956319809, - 0.06651949882507324, - 0.04097208380699158, - -0.14030703902244568, - -0.09351084381341934, - 0.0297505222260952, - 0.006893041543662548, - 0.0013177674263715744, - 0.14301751554012299, - 0.020266547799110413, - 0.06687614321708679, - 0.10617867112159729, - -0.10518555343151093, - -0.036028746515512466, - -0.01152839045971632, - 0.062018394470214844, - -0.09279567748308182, - 0.06243874132633209, - 0.05241338163614273, - -0.02619791403412819, - 0.03498176485300064, - 0.06206202507019043, - -0.014992700889706612, - 0.005642796400934458, - -0.008870108984410763, - -0.03202883526682854, - 0.002469003200531006, - -0.028763562440872192, - -0.021907683461904526, - 0.014602002687752247, - 0.029262810945510864, - 0.04242852330207825, - -0.01813708245754242, - -0.05406168848276138, - -0.12713457643985748, - 0.020240655168890953, - 0.012656119652092457, - 0.05605028197169304, - -0.028521768748760223, - -0.007609011605381966, - -0.02470196783542633, - -0.0640157163143158, - 0.015513423830270767, - -0.02379671484231949, - 0.057583123445510864, - 0.0030892388895154, - 0.007311254274100065, - 0.100212462246418, - 0.042428627610206604, - 0.0025723862927407026, - -0.024301942437887192, - -0.03729318082332611, - 0.00872349739074707, - 0.0480252206325531, - -0.07708413898944855, - -0.06433989107608795, - -0.019324276596307755, - 0.014511507004499435, - -0.012205028906464577, - 0.0673813745379448, - 0.0568520613014698, - 0.030706971883773804, - 0.019773781299591064, - -0.04987790435552597, - 0.008274450898170471, - -0.09333652257919312, - -0.07631611824035645, - 0.01272669155150652, - -0.03200675547122955, - -0.040890756994485855, - 0.09280463308095932, - 0.015433721244335175, - 0.051651064306497574, - -0.07728773355484009, - -0.043639373034238815, - -0.06989146769046783, - 0.044980552047491074, - 0.05253284052014351, - -0.02048523537814617, - 0.005327143706381321, - 0.0474584624171257, - 0.012078986503183842, - 0.05485370010137558, - 0.07238372415304184, - 0.10454734414815903, - -0.016847819089889526, - 0.02153768762946129, - -0.07578417658805847, - 0.11806175112724304, - 0.09070637077093124, - -0.038415685296058655, - -0.08808137476444244, - -0.01870245486497879, - -0.09472069144248962, - 0.030040353536605835, - -0.0241569671779871, - 0.008800324983894825, - 0.04111138731241226, - 0.008878892287611961, - -0.1063944399356842, - -0.08212573826313019, - 0.08964437246322632, - -0.05568983778357506, - -0.007774032652378082, - -0.08109153807163239, - 0.05996863916516304, - 0.10082027316093445, - 0.03871668875217438, - -0.02253272570669651, - -0.019287575036287308, - 0.03597132861614227, - -0.024417150765657425, - 0.039355453103780746, - 0.04196571186184883, - 0.04748799651861191, - -0.10886409878730774, - 0.002635924145579338, - -0.0655687153339386, - 0.015472646802663803, - -0.04091915115714073, - 0.129876047372818, - 0.015315208584070206, - -0.041399046778678894, - -0.08035553246736526, - 0.061411887407302856, - -0.022989546880126, - 0.05643794685602188, - 0.018910111859440804, - 0.06725603342056274, - 0.07677512615919113, - -0.0904262587428093, - 0.07782033830881119, - 0.04176116734743118, - -0.03365887328982353, - -0.07620540261268616, - -0.06524284183979034, - -0.02479676902294159, - 0.03360970318317413, - -0.005805825814604759, - -0.06837321072816849, - -0.015479182824492455, - 0.023814361542463303, - 0.02572166547179222, - 0.05136411637067795, - 0.1195039451122284, - 0.028964992612600327, - -0.1339917778968811 - ] - }, - "p245_240.wav": { - "name": "p245", - "embedding": [ - 0.07945258915424347, - 0.037747014313936234, - -0.012152545154094696, - 0.007275744341313839, - -0.014487722888588905, - 0.03468915820121765, - -0.12849202752113342, - 0.11345958709716797, - 0.013497058302164078, - 0.08077574521303177, - -0.0872984230518341, - 0.0822061076760292, - 0.0016370187513530254, - -0.11219489574432373, - -0.030771251767873764, - 0.023793870583176613, - -0.014414789155125618, - 0.0005447063595056534, - -0.03974929824471474, - -0.011801485903561115, - 0.0245984997600317, - 0.059601105749607086, - 0.03990330919623375, - -0.031564414501190186, - 0.018286608159542084, - 0.03809820115566254, - 0.002444220706820488, - 0.023952443152666092, - 0.017742546275258064, - -0.0024557597935199738, - 0.023994049057364464, - 0.08010049164295197, - -0.042573895305395126, - 0.006394711323082447, - 0.03645411878824234, - 0.014577844180166721, - -0.010644922964274883, - -0.0915645956993103, - -0.007276620715856552, - 0.020632022991776466, - -0.030547045171260834, - 0.07944682240486145, - 0.05260749161243439, - -0.023790664970874786, - 0.02275526523590088, - 0.004906552378088236, - -0.008267361670732498, - -0.050835464149713516, - -0.11496752500534058, - 0.17796942591667175, - 0.01652267947793007, - 0.038168445229530334, - -0.12758690118789673, - -0.015560433268547058, - 0.05775945633649826, - -0.00300811231136322, - -0.03468114137649536, - -0.04003487899899483, - 0.02979302406311035, - 0.12023387849330902, - 0.020758872851729393, - -0.05356209725141525, - 0.03158777952194214, - 0.06444811820983887, - 0.023464851081371307, - 0.0087087731808424, - 0.13327732682228088, - 0.09698787331581116, - -0.0204075425863266, - 0.044966477900743484, - 0.03150532767176628, - 0.036849506199359894, - 0.03115699253976345, - -0.007958273403346539, - 0.026652969419956207, - -0.03630942106246948, - -0.031139474362134933, - 0.01702917367219925, - -0.017358968034386635, - -0.04958589747548103, - 0.02184557355940342, - -0.001390503835864365, - 0.01721680350601673, - 0.08281633257865906, - -0.07614994049072266, - 0.027157723903656006, - 0.0061440966092050076, - -0.0018952672835439444, - 0.07651069760322571, - 0.045599356293678284, - 0.007365130819380283, - 0.002516951411962509, - -0.05274444818496704, - -0.0972677543759346, - 0.008244259282946587, - -0.011233488097786903, - 0.056871604174375534, - 0.03745889291167259, - 0.035175494849681854, - -0.018397707492113113, - 0.09340852499008179, - 0.012594624422490597, - -0.010898916982114315, - -0.022984102368354797, - -0.060990530997514725, - 0.0979171022772789, - 0.12481649219989777, - 0.0024895616807043552, - 0.03210488706827164, - -0.06360240280628204, - 0.014394976198673248, - 0.041251152753829956, - -0.0887005627155304, - -0.043185044080019, - 0.05143744498491287, - 0.0423990860581398, - 0.06395760178565979, - 0.11878544092178345, - 0.026364324614405632, - 0.026161154732108116, - 0.06311032921075821, - -0.08785594999790192, - -0.03784794360399246, - 0.008842014707624912, - 0.024887248873710632, - -0.029665281996130943, - 0.023432079702615738, - 0.04108967259526253, - -0.0015136916190385818, - -0.0415712408721447, - 0.04753076285123825, - 0.0020745694637298584, - 0.031828783452510834, - -0.04287783056497574, - 0.03687690570950508, - 0.09085529297590256, - -0.005477588623762131, - -0.02045380137860775, - 0.03153949975967407, - 0.06132512167096138, - 0.032796140760183334, - 0.04804295673966408, - -0.06140383332967758, - -0.11391064524650574, - -0.008075371384620667, - 0.05906808376312256, - 0.043983783572912216, - -0.05965961515903473, - -0.06208455190062523, - -0.04980771616101265, - -0.02059316262602806, - 0.02420753613114357, - 0.009649348445236683, - 0.045536912977695465, - 0.038392938673496246, - -0.019172009080648422, - 0.08760308474302292, - -0.013360435143113136, - 0.011101778596639633, - -0.015698373317718506, - -0.00834093801677227, - 0.0266251377761364, - 0.03771558031439781, - -0.038136813789606094, - -0.06483782082796097, - -0.004165465943515301, - 0.0039901044219732285, - -0.020854417234659195, - -0.007284097373485565, - 0.04928981140255928, - -0.028580283746123314, - 0.006293036043643951, - -0.09898647665977478, - 0.020142365247011185, - -0.10804945975542068, - -0.0278143510222435, - 0.03615271672606468, - -0.01160081010311842, - 0.0078703872859478, - 0.1000448614358902, - 0.021497631445527077, - 0.05574941262602806, - -0.03412169963121414, - -0.07285572588443756, - -0.011138292029500008, - 0.05459606274962425, - 0.07091782987117767, - -0.03213128447532654, - 0.025681670755147934, - 0.02844378724694252, - 0.01579461060464382, - 0.02972789853811264, - 0.05796937644481659, - 0.053558215498924255, - -0.058030787855386734, - -0.06176538020372391, - -0.028024667873978615, - 0.10882784426212311, - 0.052942514419555664, - -0.06703929603099823, - -0.05992818623781204, - -0.023831607773900032, - -0.0470818430185318, - 0.0012477822601795197, - -0.011533379554748535, - 0.019788701087236404, - 0.05094805732369423, - -0.03088667429983616, - -0.11719512939453125, - -0.0796465203166008, - 0.016997097060084343, - -0.04180814325809479, - 0.010835467837750912, - -0.06469458341598511, - 0.03327431157231331, - 0.08082059025764465, - 0.013061001896858215, - -0.005433460231870413, - -0.03264967352151871, - -0.045302554965019226, - -0.07096290588378906, - -0.0670178011059761, - -0.021672651171684265, - 0.03161638230085373, - -0.0751357227563858, - 0.0054919826798141, - -0.04638237506151199, - 0.06188648194074631, - -0.04609490931034088, - 0.09754610061645508, - 0.013642609119415283, - -0.063230499625206, - -0.0821678638458252, - 0.0019817333668470383, - -0.02547764964401722, - 0.049427520483732224, - 0.04247651621699333, - -0.004833294078707695, - 0.018832392990589142, - -0.08992515504360199, - 0.0752616748213768, - 0.057467587292194366, - -0.034379757940769196, - -0.07014762610197067, - -0.022873571142554283, - -0.0086132250726223, - 0.034332435578107834, - -0.007526383735239506, - -0.013657476752996445, - 0.022340625524520874, - 0.012931828387081623, - -0.00490580964833498, - 0.03775404021143913, - 0.08461810648441315, - 0.038802288472652435, - -0.10554558038711548 - ] - }, - "p245_124.wav": { - "name": "p245", - "embedding": [ - 0.03170587867498398, - 0.08337774127721786, - 0.005988603457808495, - 0.022015362977981567, - -0.03809655085206032, - 0.04862849786877632, - -0.17864833772182465, - 0.11590668559074402, - -0.004251439590007067, - 0.11418318748474121, - -0.06332193315029144, - 0.12706343829631805, - 0.007978797890245914, - -0.21318550407886505, - -0.025420328602194786, - 0.052706990391016006, - -0.004550730809569359, - -0.032258786261081696, - 0.05641491338610649, - -0.0051533617079257965, - 0.05624686926603317, - 0.05355072021484375, - 0.030250616371631622, - -0.00528571056202054, - 0.04349508509039879, - 0.050252728164196014, - 0.02283732406795025, - 0.07225767523050308, - 0.026461178436875343, - -0.022242756560444832, - -0.04346585273742676, - 0.10946331173181534, - -0.04760754853487015, - 0.007036465220153332, - 0.04530885070562363, - 0.006022229790687561, - 0.0027556954883038998, - -0.03855211287736893, - 0.015568596310913563, - 0.007916059345006943, - -0.039558637887239456, - 0.0829901397228241, - 0.04689755290746689, - -0.006185658276081085, - 0.02769695781171322, - 0.06560301780700684, - 0.014573135413229465, - -0.04673599451780319, - -0.12139610946178436, - 0.14271366596221924, - 0.02954898774623871, - -0.010554103180766106, - -0.06857357174158096, - -0.06143921613693237, - 0.08245620131492615, - 0.004737256094813347, - -0.058175064623355865, - -0.01705184020102024, - 0.10011923313140869, - 0.13233692944049835, - -0.00607535894960165, - -0.06560482084751129, - 0.029593029990792274, - 0.11501942574977875, - 0.02782154642045498, - 0.08473536372184753, - 0.06236148253083229, - 0.10173208266496658, - -0.01613222248852253, - -0.024523122236132622, - 0.026860609650611877, - 0.07221655547618866, - 0.007049261592328548, - -0.03168938681483269, - 0.011986669152975082, - 0.0017140938434749842, - -0.014257064089179039, - 0.039836686104536057, - -0.0046739340759813786, - -0.007756643928587437, - -0.011570341885089874, - -0.016560228541493416, - -0.015016797930002213, - 0.027744995430111885, - -0.03683807700872421, - 0.038525283336639404, - 0.02958448976278305, - 0.024273499846458435, - 0.07799981534481049, - 0.01855200156569481, - 0.00717667443677783, - 0.05616503208875656, - -0.08753527700901031, - -0.06484109163284302, - 0.06581572443246841, - 0.0005181650631129742, - 0.028639022260904312, - 0.09741240739822388, - 0.035708338022232056, - -0.02880062162876129, - 0.12707358598709106, - 0.04755779355764389, - -0.016986733302474022, - 0.03022596426308155, - -0.08656430244445801, - 0.1457136869430542, - 0.06571777909994125, - -0.01340070553123951, - 0.057336896657943726, - -0.06582877784967422, - 0.05227863788604736, - 0.05573532357811928, - -0.14566341042518616, - -0.058580536395311356, - 0.05270298570394516, - 0.05646684765815735, - -0.028481710702180862, - 0.13403955101966858, - -0.011803973466157913, - 0.008416474796831608, - 0.08787916600704193, - -0.09145224094390869, - -0.08116000890731812, - -0.026079412549734116, - 0.036661870777606964, - -0.10347755253314972, - 0.06219000369310379, - 0.05738727003335953, - -0.015513967722654343, - -0.0009644592646509409, - 0.07257674634456635, - -0.012942686676979065, - 0.03661982715129852, - 0.005432886071503162, - -0.014694012701511383, - 0.021071139723062515, - -0.041059546172618866, - 0.027589980512857437, - 0.013847963884472847, - 0.0013940695207566023, - 0.053623657673597336, - 0.02588818408548832, - -0.041975319385528564, - -0.16352543234825134, - -0.0020953137427568436, - 0.06650181114673615, - 0.08624054491519928, - -0.016762496903538704, - -0.08626042306423187, - -0.06894153356552124, - -0.06362982094287872, - 0.02273893728852272, - 0.019530976191163063, - 0.06194871664047241, - -0.009592647664248943, - -0.010934796184301376, - 0.07108527421951294, - 0.027290258556604385, - -0.0021267954725772142, - -0.029089268296957016, - -0.05554259568452835, - 0.01095462217926979, - 0.015999842435121536, - -0.08508267998695374, - -0.063910573720932, - -0.02453514188528061, - 0.04000595211982727, - -0.02731701359152794, - 0.04292478784918785, - 0.06084790825843811, - 0.03235755115747452, - 0.04052947461605072, - -0.07176034152507782, - -0.003871637163683772, - -0.08743201196193695, - -0.080325186252594, - -0.03779982775449753, - 0.05357345938682556, - -0.02694448083639145, - 0.0908622145652771, - 0.02377660758793354, - 0.06642621755599976, - -0.02637840062379837, - -0.009373457171022892, - -0.08071614801883698, - 0.0342387780547142, - 0.07000908255577087, - 0.015808602795004845, - 0.07223792374134064, - 0.032930366694927216, - -0.05480942130088806, - 0.07242150604724884, - 0.05716224014759064, - 0.08938159048557281, - -0.025073565542697906, - 0.03268623724579811, - -0.03881744295358658, - 0.08041863143444061, - 0.09149853885173798, - -0.07416573166847229, - -0.07900340855121613, - -0.008463677950203419, - -0.08851130306720734, - 0.04195529967546463, - -0.021565068513154984, - 0.016400709748268127, - -0.007465182337909937, - -0.0030099733266979456, - -0.09339006245136261, - -0.09322210401296616, - 0.009683771058917046, - -0.05928615480661392, - -0.016967447474598885, - -0.0799696147441864, - 0.07500840723514557, - 0.10562212020158768, - 0.031572375446558, - -0.02784167230129242, - -0.06569699943065643, - 0.03901921212673187, - -0.039085812866687775, - 0.00012580468319356441, - 0.05484466999769211, - 0.04465609788894653, - -0.1222488060593605, - 0.02164340950548649, - -0.07860557734966278, - 0.045376431196928024, - -0.07000018656253815, - 0.15229500830173492, - 0.026605168357491493, - -0.06785998493432999, - -0.06001497805118561, - 0.02592596411705017, - -0.014781899750232697, - 0.02684714086353779, - 0.021956829354166985, - 0.02227221243083477, - 0.02568269520998001, - -0.06728293746709824, - 0.11107145249843597, - 0.05057144910097122, - -0.034160859882831573, - -0.07631144672632217, - -0.033525384962558746, - -0.030538246035575867, - 0.07135964184999466, - 0.03325861692428589, - -0.10000577569007874, - -0.054031096398830414, - 0.06677914410829544, - 0.007879644632339478, - 0.04934922605752945, - 0.1542784869670868, - 0.028544317930936813, - -0.1159692108631134 - ] - }, - "p245_140.wav": { - "name": "p245", - "embedding": [ - 0.032106462866067886, - 0.10258646309375763, - -0.03863545134663582, - 0.033056873828172684, - -0.047408685088157654, - 0.06788535416126251, - -0.10650399327278137, - 0.08408309519290924, - -0.051745232194662094, - 0.1439906358718872, - -0.08300479501485825, - 0.09365612268447876, - -0.03637726232409477, - -0.18144014477729797, - -0.023146042600274086, - 0.05650520324707031, - -0.06916254758834839, - -0.007570366840809584, - -0.10011936724185944, - -0.025479473173618317, - 0.033929843455553055, - 0.031131725758314133, - 0.036277081817388535, - -0.05022752285003662, - 0.00512390211224556, - 0.06359908729791641, - -0.013848669826984406, - 0.01940905675292015, - -0.002903031650930643, - -0.052057087421417236, - -0.054398469626903534, - 0.12623244524002075, - -0.02393820695579052, - 0.010701628401875496, - 0.041291724890470505, - 0.006800917908549309, - -0.023599712178111076, - -0.05122655630111694, - 0.0024571120738983154, - 0.01036273967474699, - -0.05014950782060623, - 0.04443689063191414, - 0.012572221457958221, - -0.027460843324661255, - 0.06866328418254852, - -0.024788357317447662, - -0.04691766947507858, - -0.02474340982735157, - -0.07061152160167694, - 0.16436609625816345, - 0.0976928323507309, - -0.019638914614915848, - -0.061314284801483154, - -0.061559274792671204, - 0.08832861483097076, - -0.0034463140182197094, - -0.15653139352798462, - -0.05037454515695572, - 0.07711216062307358, - 0.14175602793693542, - -0.007941044867038727, - -0.008940596133470535, - 0.019500672817230225, - 0.10958696901798248, - 0.010021863505244255, - 0.11309292912483215, - 0.051235757768154144, - 0.08879242092370987, - -0.0009065513731911778, - 0.04219233617186546, - 0.07376864552497864, - 0.046731702983379364, - 0.05028190091252327, - -0.035868722945451736, - 0.045829400420188904, - -0.023557033389806747, - -0.04582108557224274, - 0.004530781880021095, - -0.03949066251516342, - -0.03243137151002884, - -0.016561349853873253, - -0.02351978048682213, - -0.0009434190578758717, - -0.018667828291654587, - -0.02451932057738304, - 0.026422306895256042, - 0.06407799571752548, - -0.016930431127548218, - 0.05635236203670502, - 0.0839669480919838, - 0.013598821125924587, - 0.04602637141942978, - -0.04804681986570358, - -0.09976606070995331, - 0.010982569307088852, - 0.01683744788169861, - -0.009247435256838799, - 0.03935539722442627, - 0.04463207721710205, - -0.025607701390981674, - 0.08564548194408417, - 0.05055559426546097, - -0.004110095556825399, - 0.028953861445188522, - -0.09502167999744415, - 0.11557327210903168, - 0.11670465767383575, - -0.009867667220532894, - 0.016392692923545837, - -0.02477916143834591, - 0.08448526263237, - 0.08767551183700562, - -0.10353397578001022, - -0.04955824464559555, - 0.009557865560054779, - -0.04511438310146332, - -0.0010399797465652227, - 0.08924844861030579, - 0.011568907648324966, - -0.008110846392810345, - 0.11209669709205627, - -0.09427085518836975, - -0.06674505025148392, - -0.03728098422288895, - 0.02603866159915924, - -0.08407330513000488, - 0.036358293145895004, - 0.05977318435907364, - 0.004564437083899975, - -0.008266814984381199, - 0.08175940811634064, - -0.01644720509648323, - 0.012890792451798916, - 0.012213528156280518, - -0.04958978295326233, - 0.03690819814801216, - -0.03605053573846817, - -0.010096623562276363, - 0.06823625415563583, - 0.03848765790462494, - 0.04159748926758766, - -0.021061619743704796, - -0.005195945501327515, - -0.07666628062725067, - 0.012601872906088829, - 0.051536425948143005, - 0.03423471376299858, - -0.006671909708529711, - 0.024622339755296707, - -0.03014795482158661, - -0.08822052925825119, - 0.05422282591462135, - -0.06322105973958969, - 0.06704350560903549, - -0.013142933137714863, - -0.038733117282390594, - 0.12557129561901093, - 0.006835254840552807, - -0.01664559915661812, - -0.07807378470897675, - -0.028825603425502777, - 0.04406910389661789, - 0.04852832481265068, - -0.10376385599374771, - -0.06857436895370483, - 0.0002958932891488075, - -0.0040213665924966335, - 0.003764195367693901, - 0.028094250708818436, - 0.06835572421550751, - -0.004557745531201363, - 0.025327123701572418, - -0.07800909876823425, - 0.02716459333896637, - -0.10865183174610138, - -0.03786635398864746, - -0.018588313832879066, - -0.09402740001678467, - 0.014487672597169876, - 0.09529520571231842, - -0.008645059540867805, - -0.024473730474710464, - -0.03339703008532524, - -0.09031054377555847, - -0.06751986593008041, - 0.08582481741905212, - 0.0816536620259285, - 0.00204279413446784, - 0.058895424008369446, - 0.04315165430307388, - -0.025246107950806618, - 0.032529447227716446, - 0.05211769789457321, - 0.11295288801193237, - -0.027575239539146423, - 0.006363452412188053, - -0.0968601256608963, - 0.07241726666688919, - 0.09214647859334946, - -0.08937746286392212, - -0.09590311348438263, - -0.044798385351896286, - -0.03440181165933609, - 0.053835880011320114, - -0.051275983452796936, - -0.027386613190174103, - 0.05266179144382477, - -0.026864871382713318, - -0.09085887670516968, - -0.10242354869842529, - 0.12072047591209412, - -0.03682032600045204, - -0.012964700348675251, - -0.059800196439027786, - 0.03209955245256424, - 0.031012140214443207, - 0.031149979680776596, - -0.08320239186286926, - 0.0573907308280468, - 0.06590268015861511, - -0.05510091036558151, - 0.008635872043669224, - 0.008013262413442135, - 0.011779405176639557, - -0.08518533408641815, - -0.0024354278575628996, - -0.07600978761911392, - 0.0963110625743866, - -0.07082103937864304, - 0.1437510848045349, - -0.004958377219736576, - -0.044762689620256424, - -0.07384620606899261, - 0.08307861536741257, - -0.02379506081342697, - 0.03228211775422096, - 0.07300714403390884, - 0.07005840539932251, - 0.011233575642108917, - -0.08835166692733765, - 0.0944766253232956, - 0.0034095614682883024, - 0.0017764036310836673, - -0.05539702624082565, - -0.012404147535562515, - -0.06053109094500542, - 0.010805798694491386, - 0.011267581954598427, - -0.09127777814865112, - 0.02628166973590851, - 0.015385827049612999, - -0.01762445829808712, - 0.0643961951136589, - 0.1152602881193161, - 0.07447779923677444, - -0.08879270404577255 - ] - }, - "p245_004.wav": { - "name": "p245", - "embedding": [ - 0.057244203984737396, - 0.051239121705293655, - -0.006493191234767437, - 0.0046587856486439705, - -0.014370900578796864, - 0.04889317974448204, - -0.1505855768918991, - 0.11744870990514755, - -0.02296508103609085, - 0.10681253671646118, - -0.0728701651096344, - 0.08201058208942413, - -0.00767209567129612, - -0.16516365110874176, - -0.041001345962285995, - 0.04549176245927811, - -0.03501646965742111, - -0.027579933404922485, - -0.0311755258589983, - -0.008836065419018269, - 0.03076852858066559, - 0.0471736416220665, - -0.0001659514382481575, - 0.009035672061145306, - 0.012241963297128677, - 0.04364144057035446, - -0.0051876576617360115, - 0.026616103947162628, - -0.004384532570838928, - 0.00222670566290617, - 0.0057466886937618256, - 0.10275017470121384, - -0.03850072622299194, - 0.009041273966431618, - 0.05855696648359299, - 0.013160438276827335, - -0.006170983891934156, - -0.06826630234718323, - -0.020206864923238754, - 0.01614033244550228, - -0.05412178859114647, - 0.06679560244083405, - 0.051490284502506256, - 0.012002089992165565, - 0.027559733018279076, - 0.028028646484017372, - -0.00822331104427576, - -0.05394599959254265, - -0.09966468065977097, - 0.15860942006111145, - 0.04013802856206894, - 0.017943119630217552, - -0.0922805443406105, - -0.03724759444594383, - 0.0840732753276825, - -0.004480568692088127, - -0.07635274529457092, - -0.028386738151311874, - 0.06654711067676544, - 0.15144842863082886, - -0.006654726341366768, - -0.044933855533599854, - 0.027211084961891174, - 0.10585152357816696, - 0.034167565405368805, - 0.05825532227754593, - 0.09924449026584625, - 0.10678430646657944, - -0.01214150246232748, - 0.007117943838238716, - 0.06554816663265228, - 0.0388072170317173, - 0.05638907104730606, - -0.031034370884299278, - 0.025171399116516113, - 0.0017415564507246017, - -0.028098978102207184, - 0.009883041493594646, - -0.031081851571798325, - -0.024425338953733444, - 0.008048723451793194, - 0.008548153564333916, - 0.008548242971301079, - 0.062324102967977524, - -0.04049144312739372, - 0.03220600262284279, - 0.03287477791309357, - -0.006772756110876799, - 0.06856678426265717, - 0.059678614139556885, - 0.020501142367720604, - 0.03826247155666351, - -0.06959246844053268, - -0.08232609927654266, - 0.019670691341161728, - -0.0022162762470543385, - 0.03304598107933998, - 0.04985179752111435, - 0.03948202356696129, - -0.01198204979300499, - 0.09804360568523407, - 0.008098515681922436, - -0.0002941172569990158, - 0.00815909169614315, - -0.09762193262577057, - 0.09791037440299988, - 0.08280383795499802, - -0.02812999300658703, - 0.028420105576515198, - -0.058993589133024216, - 0.04419970139861107, - 0.0630403384566307, - -0.11383549869060516, - -0.052459198981523514, - 0.06827473640441895, - 0.04491904005408287, - 0.02058722823858261, - 0.13593994081020355, - 0.011091722175478935, - 0.021835027262568474, - 0.0744437426328659, - -0.07690946757793427, - -0.03526616841554642, - -0.006011516787111759, - 0.035444751381874084, - -0.04602028429508209, - 0.04425273463129997, - 0.03155776113271713, - 0.009502381086349487, - -0.024248994886875153, - 0.06927596032619476, - 0.00029218941926956177, - 0.00799286738038063, - -0.05023977532982826, - 0.01537276804447174, - 0.0709199532866478, - -0.009143814444541931, - 0.0015159700997173786, - 0.017510656267404556, - 0.04747721925377846, - 0.02624204196035862, - 0.03590153902769089, - -0.06248483061790466, - -0.11470767855644226, - -0.004738791845738888, - 0.04673238843679428, - 0.07807391881942749, - -0.02831854298710823, - -0.03755154460668564, - -0.0521104596555233, - -0.02906210348010063, - 0.010854961350560188, - -0.012914886698126793, - 0.06041932851076126, - 0.0300108902156353, - -0.012922441586852074, - 0.08949941396713257, - -0.00761021114885807, - 0.008169690147042274, - -0.02969200164079666, - -0.015670523047447205, - 0.009761703200638294, - 0.0460873618721962, - -0.05769249051809311, - -0.06362049281597137, - 0.0023356154561042786, - 0.013007670640945435, - -0.012593654915690422, - 0.01909327134490013, - 0.031186336651444435, - 0.0023230817168951035, - 0.007525439839810133, - -0.08917870372533798, - 0.014167784713208675, - -0.1180512011051178, - -0.059466756880283356, - 0.0179979857057333, - -0.012941773980855942, - 0.0009621425997465849, - 0.0856703668832779, - 0.015797816216945648, - 0.03727533668279648, - -0.03235930949449539, - -0.07736298441886902, - -0.04276653006672859, - 0.06202222406864166, - 0.07064232230186462, - -0.01980535127222538, - 0.025075972080230713, - 0.029654894024133682, - -0.005805652588605881, - 0.04072924703359604, - 0.05624306946992874, - 0.08792721480131149, - -0.05024013668298721, - -0.004494858905673027, - -0.03317595273256302, - 0.10440943390130997, - 0.04974979907274246, - -0.06304767727851868, - -0.07033741474151611, - 0.005304677411913872, - -0.047600824385881424, - 0.005815478973090649, - -0.019581694155931473, - 0.02000458724796772, - 0.02556712180376053, - -0.0237729549407959, - -0.11421756446361542, - -0.06738296151161194, - 0.03838469460606575, - -0.06318210810422897, - 0.00331917149014771, - -0.07444030046463013, - 0.04339484125375748, - 0.09425723552703857, - 0.02007249742746353, - -0.017583642154932022, - -0.021532295271754265, - 0.00424446165561676, - -0.05374759063124657, - -0.03725024685263634, - 0.004368685185909271, - 0.030680663883686066, - -0.08983869850635529, - -0.009140770882368088, - -0.058546602725982666, - 0.06307493895292282, - -0.049770474433898926, - 0.11064916849136353, - 0.011756817810237408, - -0.06703746318817139, - -0.0680784210562706, - -0.003931783139705658, - -0.0014525093138217926, - 0.05368048697710037, - 0.02675137296319008, - 0.04655763506889343, - 0.03197465464472771, - -0.04880567640066147, - 0.1013551652431488, - 0.05008199065923691, - -0.030540935695171356, - -0.05939823016524315, - -0.02996395155787468, - -0.014429381117224693, - 0.0277912225574255, - -0.006201401352882385, - -0.04977040737867355, - 0.004798954352736473, - 0.02141060307621956, - -0.009165780618786812, - 0.04160452261567116, - 0.11496564745903015, - 0.049962591379880905, - -0.12135732918977737 - ] - }, - "p245_169.wav": { - "name": "p245", - "embedding": [ - 0.057029567658901215, - 0.08338451385498047, - -0.01734072156250477, - 0.038463957607746124, - -0.05738261714577675, - 0.08633057028055191, - -0.13482148945331573, - 0.11841713637113571, - -0.0672321617603302, - 0.13830581307411194, - -0.04638269916176796, - 0.10157979279756546, - -0.02636878751218319, - -0.1886727213859558, - -0.02977590076625347, - 0.07470418512821198, - -0.07409191876649857, - -0.04069636017084122, - -0.07145829498767853, - -0.003243983956053853, - 0.01020850706845522, - 0.019279690459370613, - 0.037069663405418396, - 0.0052407956682145596, - 0.0376032255589962, - 0.0675714835524559, - -0.01886574551463127, - 0.043965794146060944, - 0.01845916360616684, - -0.06929130852222443, - -0.03393295407295227, - 0.09713002294301987, - -0.05504804104566574, - -0.008165374398231506, - 0.04820776730775833, - -0.007374047301709652, - -0.009997377172112465, - -0.06639043241739273, - -0.025024890899658203, - -0.00019767200865317136, - -0.05997892841696739, - 0.08781640231609344, - 0.0316188745200634, - -0.016193915158510208, - 0.04006927087903023, - -0.010623528622090816, - -0.02601289562880993, - -0.055488407611846924, - -0.10404876619577408, - 0.1514267474412918, - 0.07180014997720718, - 0.0007413647253997624, - -0.0652066171169281, - -0.06657960265874863, - 0.10237142443656921, - -0.016412867233157158, - -0.14202113449573517, - -0.07418593764305115, - 0.07471315562725067, - 0.16235481202602386, - -0.03485307842493057, - 0.0017970151966437697, - 0.02049916237592697, - 0.12295348942279816, - 0.0891043022274971, - 0.11592104285955429, - 0.06453748047351837, - 0.09670441597700119, - 0.006898547988384962, - 0.03541051968932152, - 0.08895045518875122, - 0.04363706707954407, - 0.04513071849942207, - -0.0030966391786932945, - 0.03634212166070938, - -0.009360048919916153, - -0.01824885979294777, - -0.015100239776074886, - 0.001968139549717307, - 0.0007456461898982525, - -0.0065033650025725365, - 0.00976000726222992, - 0.0030725549440830946, - 0.027006959542632103, - -0.027332181110978127, - 0.051742322742938995, - 0.02186988666653633, - -0.016360126435756683, - 0.06705182045698166, - 0.04799802601337433, - 0.012044823728501797, - 0.05976928398013115, - -0.051586706191301346, - -0.07648489624261856, - 0.015033205971121788, - 0.012112302705645561, - 0.007237287238240242, - 0.04883294925093651, - 0.029767388477921486, - -0.011775006540119648, - 0.11153513938188553, - 0.05835574492812157, - -0.004567086696624756, - 0.042401619255542755, - -0.09106332808732986, - 0.13329333066940308, - 0.04985566809773445, - -0.011587032116949558, - 0.05712316930294037, - -0.015900438651442528, - 0.06157167628407478, - 0.08525945246219635, - -0.14287279546260834, - -0.058312006294727325, - 0.047777220606803894, - -0.019714927300810814, - -0.022126100957393646, - 0.11741900444030762, - 0.010651095770299435, - 0.014133838005363941, - 0.10121676325798035, - -0.08445888012647629, - -0.05385727062821388, - -0.0005828676512464881, - 0.06015734001994133, - -0.0936628058552742, - 0.05022328346967697, - 0.04663466662168503, - -0.02767125703394413, - 0.004958232864737511, - 0.10852095484733582, - -0.009199898689985275, - -0.012001347728073597, - 0.02455342933535576, - -0.0366758368909359, - 0.0424298495054245, - -0.029558448120951653, - 0.006994884926825762, - 0.06476634740829468, - 0.013324043713510036, - 0.04511486366391182, - -0.025048796087503433, - -0.017671888694167137, - -0.1164848804473877, - 0.009979200549423695, - 0.03409599885344505, - 0.0973581075668335, - -0.011334016919136047, - 0.01386767067015171, - -0.04685838520526886, - -0.071267269551754, - 0.0312788300216198, - -0.027630312368273735, - 0.09542803466320038, - -0.015073378570377827, - -0.016483070328831673, - 0.10623481124639511, - 0.010985083878040314, - 0.02556760236620903, - -0.052403368055820465, - -0.01147842314094305, - 0.03319564089179039, - 0.069051593542099, - -0.07736990600824356, - -0.05358013138175011, - 0.017084144055843353, - 0.03136401250958443, - -0.0032287281937897205, - 0.04497158154845238, - 0.049444250762462616, - 0.007242798339575529, - 0.019563665613532066, - -0.06911169737577438, - 0.037850528955459595, - -0.07883647829294205, - -0.04935717582702637, - -0.013661636970937252, - -0.03714895620942116, - -0.02986377477645874, - 0.08735671639442444, - 0.022886047139763832, - 0.027004661038517952, - -0.017222218215465546, - -0.10290086269378662, - -0.07346212863922119, - 0.06715315580368042, - 0.06836634129285812, - -0.01346024964004755, - 0.031949419528245926, - 0.05771039426326752, - -0.027490884065628052, - 0.030200574547052383, - 0.049648597836494446, - 0.1049681082367897, - -0.03021169826388359, - 0.000637968594674021, - -0.07491497695446014, - 0.07274871319532394, - 0.08364419639110565, - -0.1093386709690094, - -0.061665698885917664, - -0.0003366165328770876, - -0.052009209990501404, - 0.035503089427948, - -0.0368952751159668, - 0.008412673138082027, - 0.055118121206760406, - -0.023035917431116104, - -0.0857432633638382, - -0.11854654550552368, - 0.11555308848619461, - -0.09432242810726166, - -0.014157623052597046, - -0.07081761956214905, - 0.03196137398481369, - 0.06329343467950821, - 0.044685300439596176, - -0.034853242337703705, - 0.015262763015925884, - 0.040013570338487625, - -0.04142971709370613, - 0.0026692869141697884, - 0.08138493448495865, - 0.005325319245457649, - -0.12417425960302353, - -0.006527154240757227, - -0.0869840532541275, - 0.07885152846574783, - -0.04930106922984123, - 0.16691666841506958, - -0.00925438292324543, - -0.040394578129053116, - -0.08786991238594055, - 0.0327502004802227, - -0.03264082968235016, - 0.06058737635612488, - 0.046394918113946915, - 0.08468504995107651, - 0.06254935264587402, - -0.03359273448586464, - 0.10600753873586655, - 0.03855243697762489, - -0.019256064668297768, - -0.05811845138669014, - -0.027169078588485718, - -0.060603175312280655, - 0.03630848228931427, - 0.004633820150047541, - -0.11385249346494675, - 0.01475260965526104, - 0.030828822404146194, - -0.033128850162029266, - 0.06024675443768501, - 0.1311168521642685, - 0.06941784173250198, - -0.10493093729019165 - ] - }, - "p245_313.wav": { - "name": "p245", - "embedding": [ - 0.02142168954014778, - 0.049886684864759445, - -0.04737619683146477, - 0.03312927111983299, - -0.0724833682179451, - 0.025982335209846497, - -0.10125404596328735, - 0.11237995326519012, - -0.016938187181949615, - 0.1240723729133606, - -0.057187702506780624, - 0.112162284553051, - -0.03423161059617996, - -0.17403459548950195, - 0.01640089601278305, - 0.04892852157354355, - -0.026485878974199295, - -0.036173831671476364, - -0.07597172260284424, - -0.05111394077539444, - 0.03252503648400307, - 0.04747713729739189, - 0.020761726424098015, - -0.030358506366610527, - 0.007589813321828842, - 0.08350235223770142, - -0.01819518767297268, - 0.008206741884350777, - -0.01724264770746231, - -0.06443729251623154, - -0.047212135046720505, - 0.07249844074249268, - -0.0695524588227272, - 0.0015347761800512671, - 0.036939892917871475, - -0.02219861000776291, - -0.0233923252671957, - -0.028293907642364502, - -0.02022527903318405, - 0.013947761617600918, - -0.07670603692531586, - 0.0656580775976181, - 0.029969459399580956, - -0.008617842569947243, - 0.05774608999490738, - 0.01041030790656805, - -0.02956559881567955, - -0.03704890236258507, - -0.09309722483158112, - 0.15833771228790283, - 0.07991187274456024, - -0.0236746184527874, - -0.04585540294647217, - -0.04510103911161423, - 0.08938821405172348, - -0.009732533246278763, - -0.12872089445590973, - -0.06405602395534515, - 0.07925166189670563, - 0.11178164929151535, - -0.0383923202753067, - -0.02909669280052185, - 0.028173549100756645, - 0.0861702412366867, - 0.0682726725935936, - 0.07643285393714905, - 0.07359316945075989, - 0.12612062692642212, - -0.02053428627550602, - 0.0034753684885799885, - 0.06644515693187714, - 0.072492316365242, - 0.0769229531288147, - -0.0005894061177968979, - 0.021558700129389763, - 0.0148240951821208, - -0.004262634553015232, - -0.0337153784930706, - -0.03341085463762283, - -0.01247863657772541, - 0.008604643866419792, - -0.0028425739146769047, - 0.02461695298552513, - 0.004409964196383953, - -0.012768270447850227, - 0.0563889816403389, - 0.09075548499822617, - -0.012507534585893154, - 0.05127323791384697, - 0.017769459635019302, - -0.019381878897547722, - 0.07396526634693146, - -0.09262778609991074, - -0.04413747042417526, - 0.01436161994934082, - 0.009535644203424454, - -0.00625405041500926, - 0.061799537390470505, - 0.04148771986365318, - -0.01660812273621559, - 0.12313693761825562, - 0.01719614677131176, - -0.00957178883254528, - 0.02671133726835251, - -0.07920872420072556, - 0.12369725108146667, - 0.09580912441015244, - -0.030843552201986313, - 0.029534852132201195, - -0.050272103399038315, - 0.0692659318447113, - 0.040993209928274155, - -0.11497996747493744, - -0.05024636536836624, - 0.008883442729711533, - -0.02624170482158661, - -0.04495804011821747, - 0.1271926760673523, - 0.004026795271784067, - 0.03888726234436035, - 0.14366203546524048, - -0.10506200790405273, - -0.05239793658256531, - -0.0012600127374753356, - 0.03464144468307495, - -0.08841224759817123, - 0.04136303812265396, - 0.05112754553556442, - 0.0011233033146709204, - 0.0516161248087883, - 0.09388379752635956, - -0.017144110053777695, - 0.008297096937894821, - -0.004844239912927151, - -0.03991668298840523, - 0.013256723992526531, - -0.015149693936109543, - -0.023126162588596344, - 0.07030081003904343, - 0.036917105317115784, - 0.05841983109712601, - -0.04302629083395004, - -0.021770363673567772, - -0.11899854242801666, - 0.03372488543391228, - 0.024367112666368484, - 0.06567483395338058, - -0.02054380625486374, - 0.02614741027355194, - -0.047301650047302246, - -0.10456521809101105, - 0.024221524596214294, - -0.02210712991654873, - 0.06742219626903534, - -0.054348863661289215, - -0.013684777542948723, - 0.11857466399669647, - 0.04056893661618233, - -0.007575647439807653, - -0.05717083811759949, - -0.052838217467069626, - -0.006848352961242199, - 0.04980176314711571, - -0.09226065129041672, - -0.07509312778711319, - -0.030813217163085938, - 0.04452245682477951, - -0.00011402818927308545, - 0.06774844229221344, - 0.04638856649398804, - 0.02343478798866272, - 0.006943050771951675, - -0.07064477354288101, - -0.0006331975455395877, - -0.06736897677183151, - -0.057541511952877045, - -0.011784079484641552, - -0.040383338928222656, - -0.021517081186175346, - 0.072021484375, - -0.006972750183194876, - 0.034830741584300995, - -0.04687376320362091, - -0.08340221643447876, - -0.08604519814252853, - 0.048979684710502625, - 0.035802148282527924, - -0.04106026515364647, - 0.03976672887802124, - 0.06865504384040833, - -0.0578019917011261, - 0.020123563706874847, - 0.05720202252268791, - 0.11239179223775864, - -0.03434876352548599, - 0.038983166217803955, - -0.05767671763896942, - 0.1055237203836441, - 0.07481840997934341, - -0.06025584787130356, - -0.06102852150797844, - -0.03594226390123367, - -0.06284841895103455, - 0.049261629581451416, - -0.04006171226501465, - -0.016076108440756798, - 0.029867185279726982, - 0.025098517537117004, - -0.07913494110107422, - -0.0733911395072937, - 0.0698438286781311, - -0.05169570446014404, - -0.005870752036571503, - -0.09513655304908752, - 0.032577306032180786, - 0.07396671921014786, - 0.05974563956260681, - -0.031271547079086304, - 0.00485944002866745, - 0.05167495459318161, - -0.014154445379972458, - 0.04268321394920349, - 0.07700317353010178, - 0.05174528807401657, - -0.08144669234752655, - -0.04967574402689934, - -0.06901288032531738, - 0.03783658891916275, - -0.03139082342386246, - 0.11470809578895569, - 0.014636139385402203, - -0.02812395617365837, - -0.06898641586303711, - 0.051667165011167526, - -0.005063525401055813, - 0.06066303700208664, - 0.04841357469558716, - 0.07028861343860626, - 0.059153005480766296, - -0.04929915815591812, - 0.13303810358047485, - 0.0391136072576046, - -0.031435348093509674, - -0.04060107469558716, - -0.05390309542417526, - -0.052223604172468185, - 0.012352163903415203, - 0.034251339733600616, - -0.09305623173713684, - 0.007786917500197887, - 0.02105364017188549, - -0.018030185252428055, - 0.04245876520872116, - 0.11875030398368835, - 0.08289225399494171, - -0.09679828584194183 - ] - }, - "p245_189.wav": { - "name": "p245", - "embedding": [ - 0.054061584174633026, - 0.11470216512680054, - 0.016316469758749008, - -0.020602762699127197, - -0.02756618522107601, - 0.06860370934009552, - -0.15209344029426575, - 0.12005740404129028, - -0.060834091156721115, - 0.14446377754211426, - -0.09283483028411865, - 0.10139843076467514, - -0.014834349974989891, - -0.16928303241729736, - -0.05371050536632538, - 0.050717901438474655, - -0.04537893086671829, - -0.010936446487903595, - -0.01692710630595684, - -0.027092676609754562, - 0.03606000542640686, - 0.04401242733001709, - 0.04083456099033356, - -0.011781331151723862, - 0.051066093146800995, - 0.0534324124455452, - 0.03273087739944458, - 0.07584463804960251, - 0.02319362759590149, - -0.05936663597822189, - -0.03450694680213928, - 0.10983429849147797, - -0.02830195426940918, - 0.011660071089863777, - 0.0442812405526638, - 0.002715721260756254, - 0.034936338663101196, - -0.08276695758104324, - -0.007814133539795876, - 0.009511386975646019, - -0.006412091664969921, - 0.07810306549072266, - 0.027308408170938492, - -0.0023602754808962345, - 0.016765834763646126, - 0.03881479799747467, - 0.011776605620980263, - -0.07582377642393112, - -0.09905959665775299, - 0.1619507074356079, - 0.04109371826052666, - 0.011514004319906235, - -0.06973206996917725, - -0.08052308857440948, - 0.10235860198736191, - -0.023670658469200134, - -0.08146195113658905, - -0.033827897161245346, - 0.07704507559537888, - 0.15914320945739746, - -0.040653541684150696, - -0.05438581109046936, - 0.034578584134578705, - 0.10603852570056915, - 0.00698121590539813, - 0.08897261321544647, - 0.07400938123464584, - 0.060290850698947906, - 0.009071099571883678, - 0.014636531472206116, - 0.02936544641852379, - 0.06479693949222565, - -0.0038491198793053627, - -0.017406105995178223, - 0.021649464964866638, - -0.004924245178699493, - -0.03714916855096817, - 0.0400061160326004, - -0.010739690624177456, - -0.014694343321025372, - -0.012363161891698837, - 0.01900310069322586, - -0.010543467476963997, - 0.008182458579540253, - -0.02884434163570404, - 0.045528560876846313, - -0.023044809699058533, - -0.002590528456494212, - 0.09047289937734604, - 0.012260100804269314, - 0.016220485791563988, - 0.034721896052360535, - -0.05224500596523285, - -0.09895993769168854, - 0.03114529699087143, - 0.016769982874393463, - -0.001952069578692317, - 0.06945250928401947, - 0.031156614422798157, - -0.039112742990255356, - 0.12584392726421356, - 0.05463337153196335, - 0.0014311475679278374, - 0.024224836379289627, - -0.09696173667907715, - 0.12023141235113144, - 0.08631692826747894, - -0.0130640072748065, - 0.05441105365753174, - -0.053509727120399475, - 0.05512527748942375, - 0.07659163326025009, - -0.1541886329650879, - -0.09999258816242218, - 0.031785473227500916, - 0.032652467489242554, - -0.003077820874750614, - 0.08291192352771759, - -0.020125795155763626, - 0.0013200268149375916, - 0.08556358516216278, - -0.08341815322637558, - -0.0733201652765274, - -0.0185023732483387, - 0.052630871534347534, - -0.07558268308639526, - 0.039250582456588745, - 0.07296265661716461, - -0.023450978100299835, - -0.003632880514487624, - 0.0705694928765297, - -0.0021453395020216703, - 0.0062775034457445145, - 0.016538191586732864, - -0.033143579959869385, - 0.018510211259126663, - -0.04315420985221863, - -0.0027942857705056667, - 0.021535461768507957, - 0.06784075498580933, - 0.02893092855811119, - 0.021419523283839226, - -0.06008894369006157, - -0.11445252597332001, - -0.009073866531252861, - 0.034023817628622055, - 0.05537131428718567, - -0.012290950864553452, - -0.035908497869968414, - -0.05667175352573395, - -0.04714053124189377, - -0.00381668983027339, - 0.005961798131465912, - 0.08780786395072937, - -0.0020860484801232815, - 0.022010212764143944, - 0.09874808043241501, - 0.024450024589896202, - -0.004167753271758556, - -0.054217346012592316, - -0.013665186241269112, - 0.03161023557186127, - 0.02077224850654602, - -0.046125851571559906, - -0.07084117829799652, - 0.008410995826125145, - 0.024053949862718582, - -0.02418225072324276, - 0.041069842875003815, - 0.031204944476485252, - 0.022411314770579338, - 0.05253579840064049, - -0.07542093843221664, - 0.03250299021601677, - -0.10383333265781403, - -0.04506240412592888, - -0.004484906792640686, - 0.007167072035372257, - -0.028640177100896835, - 0.09136617183685303, - 0.017007891088724136, - 0.04663955792784691, - -0.008205385878682137, - -0.0667840987443924, - -0.0615413598716259, - 0.061117734760046005, - 0.0996965765953064, - 0.0084078935906291, - 0.04220139607787132, - 0.032252345234155655, - -0.0048997774720191956, - 0.06294463574886322, - 0.06534877419471741, - 0.07824238389730453, - -0.0006872769445180893, - -0.01005035825073719, - -0.047618985176086426, - 0.06074374541640282, - 0.04725376516580582, - -0.10643108189105988, - -0.07524313032627106, - -0.0251776035875082, - -0.06120811402797699, - 0.042097002267837524, - 0.008933242410421371, - 0.018248479813337326, - 0.0032928939908742905, - -0.019674506038427353, - -0.08447685837745667, - -0.0873546451330185, - 0.061360131949186325, - -0.05344153568148613, - -0.023623239248991013, - -0.054395854473114014, - 0.05509696528315544, - 0.09705829620361328, - 0.05161996930837631, - 0.0072556789964437485, - -0.03857619687914848, - 0.022206325083971024, - -0.07385842502117157, - -0.016611680388450623, - 0.02502818964421749, - 0.013440942391753197, - -0.08975663036108017, - 0.0679871141910553, - -0.0937887653708458, - 0.06893813610076904, - -0.055279821157455444, - 0.1566605567932129, - 0.004919194150716066, - -0.06815310567617416, - -0.10012626647949219, - 0.015767451375722885, - -0.0593147873878479, - 0.028425073251128197, - 0.02212471514940262, - 0.022095924243330956, - 0.05156773328781128, - -0.0739322081208229, - 0.08749933540821075, - 0.04144130274653435, - -0.03708742931485176, - -0.07542967051267624, - -0.05963771790266037, - -0.028486791998147964, - 0.03200472891330719, - -0.00276842899620533, - -0.0686369389295578, - -0.032860077917575836, - 0.025503020733594894, - -0.011452632956206799, - 0.09059660136699677, - 0.12143524736166, - 0.04256148263812065, - -0.1243513822555542 - ] - }, - "p245_014.wav": { - "name": "p245", - "embedding": [ - 0.0456618033349514, - 0.09947610646486282, - -0.0351579487323761, - 0.01769324578344822, - -0.03846055269241333, - 0.03294319659471512, - -0.1384236067533493, - 0.1454164683818817, - -0.03573080152273178, - 0.11553234606981277, - -0.0607529878616333, - 0.1252995729446411, - -0.039623670279979706, - -0.1287994235754013, - -0.025616401806473732, - 0.059261664748191833, - 0.0065677352249622345, - -0.024798106402158737, - 0.012047134339809418, - -0.011180071160197258, - 0.045637913048267365, - 0.02454722300171852, - 0.013781548477709293, - 0.02438787743449211, - 0.025713670998811722, - 0.062442049384117126, - 0.008027640171349049, - 0.023942165076732635, - -0.004922201856970787, - -0.02145509049296379, - 0.0020491499453783035, - 0.08045138418674469, - -0.028491167351603508, - 0.029588503763079643, - 0.047634731978178024, - 0.006369514856487513, - -0.016286443918943405, - -0.07070358097553253, - -0.010438184253871441, - -0.024547982960939407, - -0.038875553756952286, - 0.07682274281978607, - 0.017487555742263794, - -0.029269102960824966, - 0.027799539268016815, - 0.006001647561788559, - -0.0035741108004003763, - -0.03324389457702637, - -0.1038001999258995, - 0.12629824876785278, - 0.042398691177368164, - 0.04587283730506897, - -0.09751556068658829, - -0.04450879245996475, - 0.10620276629924774, - -0.007475041784346104, - -0.05505678430199623, - -0.0349879153072834, - 0.05194047465920448, - 0.1577078402042389, - -0.012517052702605724, - -0.040527522563934326, - 0.03556269407272339, - 0.10202843695878983, - 0.04841536283493042, - 0.0538499541580677, - 0.0951853096485138, - 0.0903569832444191, - -0.02120477706193924, - 0.00038562389090657234, - 0.023219358175992966, - 0.08689197152853012, - 0.025803115218877792, - -0.012411314994096756, - -0.007968703284859657, - -0.002945534884929657, - -0.027890753000974655, - -0.0026419139467179775, - -0.019570011645555496, - -0.05071458965539932, - -0.05330786854028702, - 0.012360257096588612, - 0.0007026037201285362, - 0.02548249252140522, - -0.015036750584840775, - 0.0378415510058403, - 0.04665284976363182, - -0.058008939027786255, - 0.0587211437523365, - 0.02665218524634838, - -0.01011449471116066, - 0.03193049877882004, - -0.076620914041996, - -0.07339684665203094, - 0.025463296100497246, - 0.0021541332826018333, - 0.022215019911527634, - 0.08271461725234985, - 0.03895801305770874, - 0.004185925237834454, - 0.10523208975791931, - 0.03697848320007324, - 0.005295770242810249, - -0.019892394542694092, - -0.06409311294555664, - 0.11022298038005829, - 0.07042629271745682, - -0.03810158371925354, - 0.05560486763715744, - -0.0493827685713768, - 0.015588978305459023, - 0.053994275629520416, - -0.11514697968959808, - -0.07873079180717468, - 0.027407001703977585, - 0.035015251487493515, - 0.01579325459897518, - 0.10628814995288849, - 0.01557882595807314, - 0.04157496988773346, - 0.07264241576194763, - -0.07872103899717331, - -0.07472427934408188, - -0.04022175073623657, - 0.05695508047938347, - -0.05361801013350487, - 0.08196534216403961, - 0.07280725240707397, - 0.007446852512657642, - 0.0009589539840817451, - 0.054964397102594376, - 0.00770481675863266, - 0.006735594943165779, - 0.0017329519614577293, - -0.023623213171958923, - 0.006417369470000267, - -0.03334959223866463, - -0.0058499048464000225, - 0.013856390491127968, - 0.036187827587127686, - 0.05148895084857941, - 0.012061990797519684, - -0.01096294168382883, - -0.10962604731321335, - -0.005911238957196474, - 0.07075758278369904, - 0.0666264072060585, - -0.0211165938526392, - -0.060836538672447205, - -0.02669548988342285, - -0.03672284632921219, - -0.030006997287273407, - -0.00560013996437192, - 0.08636757731437683, - -0.012779127806425095, - 0.04771970212459564, - 0.09276529401540756, - 0.020862631499767303, - 0.0015486115589737892, - -0.03773873299360275, - 0.0011763554066419601, - 0.0017245570197701454, - 0.04134422913193703, - -0.05242372304201126, - -0.0871952474117279, - -0.02570885792374611, - 0.037271082401275635, - -0.02657049521803856, - 0.05901411175727844, - 0.01927550882101059, - 0.016223667189478874, - 0.016166068613529205, - -0.05623400956392288, - 0.01310694683343172, - -0.10516701638698578, - -0.05479121580719948, - -0.015248250216245651, - 0.0053838989697396755, - -0.02046903781592846, - 0.07061156630516052, - 0.057423245161771774, - 0.07197509706020355, - 0.006083223968744278, - -0.05638034641742706, - -0.07956670224666595, - 0.03524193912744522, - 0.05869004875421524, - -0.01918291673064232, - 0.019595062360167503, - 0.04000133275985718, - -0.013602444902062416, - 0.034899353981018066, - 0.06724784523248672, - 0.06343290209770203, - -0.03596850484609604, - 0.0012189392000436783, - -0.053810086101293564, - 0.07253456115722656, - 0.09896670281887054, - -0.09662356227636337, - -0.07373400777578354, - -0.05366010218858719, - -0.06369131058454514, - 0.009729236364364624, - -0.023127544671297073, - 0.027799593284726143, - 0.021347586065530777, - -0.0376795269548893, - -0.12406335771083832, - -0.09899730980396271, - 0.06215960904955864, - -0.048071980476379395, - 0.024179209023714066, - -0.0599585585296154, - 0.036651648581027985, - 0.09318123012781143, - 0.01891211047768593, - -0.00443354994058609, - -0.02552139014005661, - 0.02204076573252678, - -0.03201678395271301, - -0.00341423531062901, - 0.05311751738190651, - 0.032578807324171066, - -0.09171418845653534, - 0.010781090706586838, - -0.058642059564590454, - 0.07592502236366272, - -0.043430980294942856, - 0.14329004287719727, - 0.006454888731241226, - -0.06720374524593353, - -0.09921152144670486, - 0.002791309729218483, - 0.0005907490849494934, - 0.046496711671352386, - -0.010645516216754913, - 0.05001773312687874, - 0.01717197336256504, - -0.06269966810941696, - 0.0962488055229187, - 0.06484914571046829, - -0.03050391748547554, - -0.07122256606817245, - -0.061058107763528824, - -0.02213059365749359, - 0.03828231245279312, - -0.012656682170927525, - -0.047123540192842484, - -0.024648265913128853, - 0.010331484489142895, - 0.012792368419468403, - 0.08453378081321716, - 0.12315244227647781, - 0.05332903936505318, - -0.11324436217546463 - ] - }, - "p245_093.wav": { - "name": "p245", - "embedding": [ - 0.05074314773082733, - 0.090809166431427, - -0.013290628790855408, - 0.015098122879862785, - -0.03353681415319443, - 0.07280128449201584, - -0.16247853636741638, - 0.12200742959976196, - -0.038645461201667786, - 0.140935480594635, - -0.06970199942588806, - 0.10677939653396606, - -0.015908164903521538, - -0.19865746796131134, - -0.0289695393294096, - 0.057447899132966995, - -0.04007676616311073, - -0.0360996276140213, - 0.009147069416940212, - -0.003172045573592186, - 0.04778694361448288, - 0.03840216249227524, - -0.0015303976833820343, - -0.0033095041289925575, - 0.03224800154566765, - 0.05935615301132202, - 0.00954018160700798, - 0.04134117066860199, - -0.005329861771315336, - -0.02657070755958557, - -0.03769402205944061, - 0.11924472451210022, - -0.05533643439412117, - 0.006156974472105503, - 0.05714326351881027, - 0.010049121454358101, - -4.3819774873554707e-05, - -0.06700471043586731, - -0.0012456621043384075, - -0.0037426804192364216, - -0.0500551238656044, - 0.0754559114575386, - 0.04676090180873871, - 0.00682303961366415, - 0.016727151349186897, - 0.05280639976263046, - 0.007143775001168251, - -0.05887789651751518, - -0.0993725061416626, - 0.16611286997795105, - 0.04758661240339279, - 0.006035572849214077, - -0.05677713453769684, - -0.07110647857189178, - 0.09511614590883255, - 0.019881442189216614, - -0.08745481818914413, - -0.03761862590909004, - 0.09009537845849991, - 0.15992924571037292, - -0.028263116255402565, - -0.05992526561021805, - 0.02318868786096573, - 0.11784019321203232, - 0.03675505518913269, - 0.10231959819793701, - 0.06000570207834244, - 0.11065860092639923, - 0.009880606085062027, - -0.0056321825832128525, - 0.06433378159999847, - 0.06186582148075104, - 0.0557703897356987, - -0.03159122169017792, - 0.03314778581261635, - 0.0030629471875727177, - -0.027840513736009598, - 0.024595201015472412, - -0.01803481951355934, - -0.017497047781944275, - 0.005985913798213005, - -0.0021278513595461845, - 0.0140004251152277, - 0.03877772390842438, - -0.02312973514199257, - 0.03503366932272911, - 0.0379556380212307, - -0.005760233383625746, - 0.08118031919002533, - 0.02081253193318844, - 0.018608156591653824, - 0.06975807994604111, - -0.09668467938899994, - -0.08453261852264404, - 0.06258927285671234, - 0.01369533222168684, - 0.025164879858493805, - 0.08311672508716583, - 0.051353029906749725, - -0.026406943798065186, - 0.11544302850961685, - 0.02830936759710312, - 0.004805782809853554, - 0.035251013934612274, - -0.10384169220924377, - 0.13374894857406616, - 0.0701487809419632, - -0.03527000546455383, - 0.0386669896543026, - -0.06636445224285126, - 0.07947658002376556, - 0.08027878403663635, - -0.16000542044639587, - -0.07755297422409058, - 0.055938445031642914, - 0.03538131341338158, - -0.03299558162689209, - 0.14470471441745758, - -0.01536556240171194, - 0.011838282458484173, - 0.09792724251747131, - -0.09889156371355057, - -0.06377687305212021, - -0.028526391834020615, - 0.03751164674758911, - -0.09809593111276627, - 0.0531526580452919, - 0.04835750162601471, - -0.014352550730109215, - 0.0021915100514888763, - 0.07922118902206421, - -0.014146468602120876, - 0.00040054344572126865, - -0.006033643148839474, - -0.01888749934732914, - 0.038111671805381775, - -0.0358765684068203, - 0.016435174271464348, - 0.010315737687051296, - 0.020565688610076904, - 0.03732144832611084, - 0.011628430336713791, - -0.04108860343694687, - -0.13757212460041046, - 0.010281476192176342, - 0.05475397780537605, - 0.07942627370357513, - -0.018292147666215897, - -0.04738131910562515, - -0.047075577080249786, - -0.06998344510793686, - 0.018743351101875305, - -0.0010394174605607986, - 0.06967242062091827, - 0.016308948397636414, - -0.004125738050788641, - 0.09388042986392975, - 0.030768249183893204, - 0.002254853490740061, - -0.047350138425827026, - -0.04300922155380249, - 0.0307645034044981, - 0.03491809219121933, - -0.09616328775882721, - -0.06445501744747162, - -0.015645071864128113, - 0.02320963703095913, - -0.023742932826280594, - 0.03132423013448715, - 0.04512029141187668, - 0.03353787958621979, - 0.030718671157956123, - -0.07515047490596771, - 0.014204693958163261, - -0.11770935356616974, - -0.07615149021148682, - -0.019917674362659454, - -0.0024251937866210938, - -0.012518848292529583, - 0.0842566192150116, - -0.004955656360834837, - 0.04481224715709686, - -0.0415770560503006, - -0.04331125319004059, - -0.06461913883686066, - 0.0594070665538311, - 0.08434751629829407, - 0.0023477990180253983, - 0.04480049014091492, - 0.02785741537809372, - -0.026571273803710938, - 0.03960242494940758, - 0.05644042044878006, - 0.12907400727272034, - -0.022564353421330452, - 0.0271480493247509, - -0.049875058233737946, - 0.10417333245277405, - 0.07374027371406555, - -0.07385571300983429, - -0.07694696635007858, - -0.0014689902309328318, - -0.0646185502409935, - 0.0317489355802536, - -0.029963523149490356, - 0.007138731423765421, - -0.011343549937009811, - -0.008046459406614304, - -0.0948844850063324, - -0.08245319128036499, - 0.048624053597450256, - -0.06483778357505798, - -0.02410692349076271, - -0.10119737684726715, - 0.06962455809116364, - 0.09975449740886688, - 0.047382839024066925, - -0.03321690857410431, - -0.025760939344763756, - 0.03593400865793228, - -0.046623896807432175, - 0.0031484849750995636, - 0.04533783346414566, - 0.03373042866587639, - -0.11636415123939514, - 0.010867936536669731, - -0.07314219325780869, - 0.055471889674663544, - -0.07504880428314209, - 0.1612653136253357, - -0.004218073096126318, - -0.06314291059970856, - -0.07583891600370407, - 0.029648810625076294, - -0.0033663371577858925, - 0.03395656496286392, - 0.030652225017547607, - 0.050599485635757446, - 0.031894005835056305, - -0.06051668897271156, - 0.11911025643348694, - 0.03137093037366867, - -0.012358525767922401, - -0.05907273665070534, - -0.04374746233224869, - -0.03692643344402313, - 0.03913130238652229, - 0.002792461309581995, - -0.09477012604475021, - -0.02743423357605934, - 0.05291053652763367, - 0.011326944455504417, - 0.05075114592909813, - 0.137893944978714, - 0.03861163556575775, - -0.12447661906480789 - ] - }, - "p245_333.wav": { - "name": "p245", - "embedding": [ - 0.014325177296996117, - 0.11449761688709259, - 0.012907424010336399, - 0.02295769192278385, - -0.02159927971661091, - 0.08031825721263885, - -0.08673080801963806, - 0.089596226811409, - -0.08615908026695251, - 0.1452193558216095, - -0.12105554342269897, - 0.06368371844291687, - -0.061172179877758026, - -0.17030206322669983, - -0.059386245906353, - 0.05200222134590149, - -0.061178386211395264, - -0.0033570416271686554, - -0.04070690646767616, - -0.020595546811819077, - 0.036457717418670654, - 0.04992419108748436, - 0.030987495556473732, - 0.0071773407980799675, - 0.026273498311638832, - 0.046439576894044876, - -0.01594150811433792, - 0.042374029755592346, - 0.022514771670103073, - -0.043104641139507294, - -0.03561869263648987, - 0.14091166853904724, - -0.027828924357891083, - 0.0056991600431501865, - 0.02491716854274273, - 0.02859354019165039, - 0.026210512965917587, - -0.05052930861711502, - -0.013044025748968124, - 0.009513557888567448, - -0.06214935705065727, - 0.042675912380218506, - -0.002387512242421508, - 0.03468039259314537, - 0.055267397314310074, - -0.017738917842507362, - -0.03823193535208702, - -0.035165783017873764, - -0.07704415917396545, - 0.17336824536323547, - 0.085908904671669, - -0.014627894386649132, - -0.06946154683828354, - -0.09298597276210785, - 0.10219079256057739, - 0.0032926856074482203, - -0.14382252097129822, - -0.02091677486896515, - 0.08752000331878662, - 0.17398592829704285, - 0.007514073979109526, - -0.017070455476641655, - 0.006985836662352085, - 0.11117805540561676, - -0.005598222836852074, - 0.10442517697811127, - 0.045129984617233276, - 0.06134156882762909, - 0.027165057137608528, - 0.012549011036753654, - 0.06926406919956207, - 0.019101139158010483, - 0.015344534069299698, - -0.06840186566114426, - 0.018872717395424843, - 0.006669655907899141, - -0.05188501626253128, - 0.04140395671129227, - -0.004680470563471317, - -0.009352735243737698, - -0.012629471719264984, - -0.018779274076223373, - -0.04645264893770218, - -0.02054588496685028, - -0.027635712176561356, - 0.012356160208582878, - -0.009202951565384865, - 0.01766585186123848, - 0.10236281156539917, - 0.05875537171959877, - 0.006056458689272404, - 0.04346970096230507, - -0.021999120712280273, - -0.06923200190067291, - -0.006203395314514637, - 0.04469767212867737, - -0.03433457389473915, - 0.07388408482074738, - 0.021825894713401794, - -0.03577183932065964, - 0.10948977619409561, - 0.033876899629831314, - 0.022338975220918655, - 0.013979647308588028, - -0.14595705270767212, - 0.10110965371131897, - 0.08872570097446442, - -0.017452171072363853, - 0.03066416271030903, - 0.014129428192973137, - 0.08227038383483887, - 0.10475742816925049, - -0.15073342621326447, - -0.05055554583668709, - 0.03314922749996185, - 2.4902168661355972e-05, - 0.02677762880921364, - 0.06092622131109238, - 0.001700022374279797, - -0.029652591794729233, - 0.09441964328289032, - -0.08368164300918579, - -0.07247618585824966, - -0.04964471235871315, - 0.05269414186477661, - -0.07956992834806442, - 0.006856137420982122, - 0.05506017059087753, - -0.005718818865716457, - -0.025411920621991158, - 0.06056251376867294, - -0.010853514075279236, - 0.013400735333561897, - 0.025045031681656837, - -0.05244510993361473, - 0.038665324449539185, - -0.05577777326107025, - -0.0031976664904505014, - 0.05971081927418709, - 0.04759639501571655, - 0.046779509633779526, - -0.002805879805237055, - -0.04341663047671318, - -0.06454512476921082, - 0.001617221161723137, - 0.06299180537462234, - 0.014177510514855385, - -0.019614066928625107, - 0.00024880608543753624, - -0.05706607550382614, - -0.07140447199344635, - 0.0518784299492836, - -0.011081857606768608, - 0.10744550079107285, - 0.010400813072919846, - -0.02988320402801037, - 0.13033558428287506, - -0.0014120237901806831, - -0.020904697477817535, - -0.0692158043384552, - -0.0308064054697752, - 0.015778839588165283, - 0.024709677323698997, - -0.08348163962364197, - -0.07419822365045547, - 0.02880706638097763, - 0.007583524566143751, - 0.011873099021613598, - 0.01575925573706627, - 0.04312850162386894, - -0.010429495945572853, - 0.037689998745918274, - -0.07981939613819122, - 0.03625351935625076, - -0.09346616268157959, - -0.04569482058286667, - -0.014393470250070095, - -0.050761498510837555, - 0.02313956245779991, - 0.10098429024219513, - -0.0046724844723939896, - -0.03694465756416321, - 0.02082902565598488, - -0.11700962483882904, - -0.05665389448404312, - 0.09227119386196136, - 0.09701196849346161, - 0.016451703384518623, - 0.0752602219581604, - 0.06502072513103485, - -0.06645902246236801, - 0.05917561799287796, - 0.06014357879757881, - 0.1082269549369812, - -0.03990686684846878, - 0.02011851780116558, - -0.06517590582370758, - 0.039902880787849426, - 0.044074639678001404, - -0.1100197583436966, - -0.11120107769966125, - -0.04242481663823128, - -0.03375177085399628, - 0.07429786026477814, - -0.01551996823400259, - 0.004195597488433123, - 0.023307176306843758, - -0.06684321165084839, - -0.07075336575508118, - -0.09011738747358322, - 0.11423295736312866, - -0.008603518828749657, - -0.06628627330064774, - -0.059577569365501404, - 0.05242491513490677, - 0.04369697719812393, - 0.03867795690894127, - -0.02787746489048004, - 0.040127720683813095, - 0.03824784606695175, - -0.08688057214021683, - -0.05431417375802994, - 0.03451377898454666, - -0.01647210493683815, - -0.08394553512334824, - 0.01727335713803768, - -0.09145916998386383, - 0.14186407625675201, - -0.07816192507743835, - 0.13590964674949646, - -0.034235186874866486, - -0.0706147849559784, - -0.08537694811820984, - 0.06276419758796692, - -0.015496889129281044, - 0.019552160054445267, - 0.04243379831314087, - 0.04914851114153862, - 0.012894198298454285, - -0.026504509150981903, - 0.08944068849086761, - 0.000611976720392704, - -0.011331465095281601, - -0.0376971960067749, - -0.009449148550629616, - -0.04812125861644745, - -0.002982812002301216, - -0.010595280677080154, - -0.10758279263973236, - 0.025325309485197067, - -0.0011015544878318906, - -0.023155320435762405, - 0.06819279491901398, - 0.10175779461860657, - 0.06305922567844391, - -0.12680867314338684 - ] - }, - "p245_362.wav": { - "name": "p245", - "embedding": [ - 0.03714986890554428, - 0.11861540377140045, - -0.02694416418671608, - 0.018069982528686523, - -0.06029801815748215, - 0.06273024529218674, - -0.09477032721042633, - 0.13931161165237427, - -0.03693581372499466, - 0.13718795776367188, - -0.08105975389480591, - 0.11021724343299866, - -0.062452685087919235, - -0.1252080649137497, - -0.012359030544757843, - 0.03384510055184364, - -0.0191726703196764, - -0.0022099781781435013, - -0.061176497489213943, - -0.05286918208003044, - 0.020209483802318573, - 0.016866516321897507, - 0.006714319810271263, - -0.005302141886204481, - 0.016877098008990288, - 0.06890036165714264, - -0.016572443768382072, - 0.02256537787616253, - -0.005866106599569321, - -0.03498264029622078, - -0.04177607595920563, - 0.09079831838607788, - -0.043500836938619614, - 0.014600591734051704, - 0.044675786048173904, - -0.0011057229712605476, - -0.014213219285011292, - -0.029972242191433907, - -0.005092155653983355, - 0.0165712907910347, - -0.06285179406404495, - 0.05990879610180855, - 0.013404877856373787, - -0.02127569355070591, - 0.03938429802656174, - 0.017529966309666634, - 0.0025645866990089417, - -0.0315263532102108, - -0.0941479504108429, - 0.14149542152881622, - 0.07550904899835587, - -0.02064705826342106, - -0.06563283503055573, - -0.04693109542131424, - 0.10806945711374283, - -0.014377479441463947, - -0.10845473408699036, - -0.028144216164946556, - 0.06368552148342133, - 0.12150625884532928, - -0.04792851209640503, - -0.03814571350812912, - 0.01005981769412756, - 0.1209573745727539, - 0.045149363577365875, - 0.08341637253761292, - 0.073396697640419, - 0.1257757693529129, - -0.05149020254611969, - 0.0047470335848629475, - 0.06224173307418823, - 0.05636017024517059, - 0.08150970935821533, - -0.004099342506378889, - 0.009345509111881256, - -0.02637176774442196, - 0.0007333536632359028, - 0.0012962855398654938, - -0.0281669944524765, - -0.049601804465055466, - -0.019783865660429, - -0.006203534081578255, - -0.01857660338282585, - -0.002953978255391121, - -0.016848746687173843, - 0.06084948778152466, - 0.08057194203138351, - -0.02419147826731205, - 0.07164037227630615, - 0.053120002150535583, - -0.0002075880765914917, - 0.06655681878328323, - -0.0820050835609436, - -0.060152534395456314, - 0.014284870587289333, - -0.02120385505259037, - 0.04449407011270523, - 0.0728786438703537, - 0.03976330906152725, - 0.017309065908193588, - 0.11342354118824005, - 0.039738647639751434, - 0.012049498036503792, - 0.025491636246442795, - -0.07365502417087555, - 0.14513546228408813, - 0.0999944806098938, - -0.05388166755437851, - 0.02957596816122532, - -0.015162109397351742, - 0.054915815591812134, - 0.04895123094320297, - -0.10357514023780823, - -0.06921754032373428, - -0.0004478837363421917, - 0.024426940828561783, - -0.02955877222120762, - 0.08053833246231079, - -0.008099090307950974, - 0.017462952062487602, - 0.1267172396183014, - -0.07129847258329391, - -0.047261983156204224, - -0.03093167021870613, - 0.030397800728678703, - -0.0729895532131195, - 0.047438330948352814, - 0.07170914858579636, - 0.010131323710083961, - 0.02670990489423275, - 0.09648784250020981, - -0.00031225383281707764, - -0.004033057484775782, - 0.015619473531842232, - -0.043840061873197556, - 0.00024279503850266337, - -0.004729769192636013, - -0.0022626626305282116, - 0.047340791672468185, - 0.044742316007614136, - 0.07039082795381546, - -0.010655401274561882, - 0.0035246331244707108, - -0.09063299000263214, - 0.035034943372011185, - 0.05182880908250809, - 0.0462273508310318, - -0.022194791585206985, - -0.004890982992947102, - -0.03134872764348984, - -0.07135814428329468, - 0.015117624774575233, - -0.0014271652325987816, - 0.07455414533615112, - -0.05122922360897064, - -0.004802582785487175, - 0.14125652611255646, - 0.03219471871852875, - -0.0038775685243308544, - -0.06265702843666077, - -0.03045324981212616, - -0.0151737742125988, - 0.04008708521723747, - -0.11106640100479126, - -0.1059940829873085, - -0.022385109215974808, - 0.030467946082353592, - -0.00916038267314434, - 0.07014982402324677, - 0.03957320749759674, - -0.001113635953515768, - 0.03728679567575455, - -0.03269844502210617, - 0.023429932072758675, - -0.07356943935155869, - -0.045245274901390076, - -0.023619238287210464, - -0.05043447017669678, - -0.015969255939126015, - 0.0663817822933197, - -0.002460706979036331, - 0.03434757515788078, - 0.0013443343341350555, - -0.08223195374011993, - -0.07770854234695435, - 0.046657003462314606, - 0.047073714435100555, - -0.017923103645443916, - 0.03930729255080223, - 0.08944554626941681, - -0.0469549298286438, - 0.03953076899051666, - 0.07125431299209595, - 0.1110820472240448, - -0.03320571780204773, - 0.03872177377343178, - -0.07537054270505905, - 0.06179335340857506, - 0.07532834261655807, - -0.09486472606658936, - -0.10171042382717133, - -0.07866500318050385, - -0.028609924018383026, - 0.02569190412759781, - -0.046558927744627, - 0.003873845562338829, - 0.02945076674222946, - -0.013101544231176376, - -0.05669301375746727, - -0.09358786791563034, - 0.08399897813796997, - -0.04926712065935135, - 0.00591583177447319, - -0.08540445566177368, - 0.04149056226015091, - 0.05383109673857689, - 0.04541078209877014, - -0.04073396325111389, - 0.016913186758756638, - 0.06351201981306076, - -0.0194476917386055, - 0.024849308654665947, - 0.06731212139129639, - 0.03595453500747681, - -0.07395228743553162, - -0.018031014129519463, - -0.07708698511123657, - 0.07212372124195099, - -0.026801716536283493, - 0.1407599151134491, - 0.021320484578609467, - -0.045722898095846176, - -0.06706468015909195, - 0.04540078341960907, - -0.025644458830356598, - 0.04586338996887207, - 0.03935934603214264, - 0.05735268443822861, - 0.022805247455835342, - -0.04245341941714287, - 0.12603536248207092, - 0.023159151896834373, - -0.0430176705121994, - -0.05810045450925827, - -0.050544872879981995, - -0.06093861907720566, - 0.010261114686727524, - 0.033409520983695984, - -0.08241680264472961, - -0.022583546116948128, - -0.006148810498416424, - -0.008769982494413853, - 0.07730481028556824, - 0.12032492458820343, - 0.09402702748775482, - -0.09408625960350037 - ] - }, - "p245_402.wav": { - "name": "p245", - "embedding": [ - 0.0508735328912735, - 0.07379981130361557, - -0.0406593456864357, - 0.037621837109327316, - -0.036522991955280304, - 0.05845237895846367, - -0.1042163074016571, - 0.09248632192611694, - -0.0330301970243454, - 0.1548629105091095, - -0.06278659403324127, - 0.12126767635345459, - 0.00612430227920413, - -0.16300934553146362, - -0.025052737444639206, - 0.0379757396876812, - -0.03638918325304985, - -0.012205805629491806, - -0.048974018543958664, - -0.022220304235816002, - 0.05700377747416496, - 0.0723387822508812, - 0.032509442418813705, - -0.04959699138998985, - 0.02640809491276741, - 0.055027998983860016, - -0.02195710502564907, - 0.01272258348762989, - -0.008890101686120033, - -0.12577980756759644, - -0.06351986527442932, - 0.09425278753042221, - -0.03645401448011398, - 0.03239458054304123, - 0.01819569244980812, - 0.008899547159671783, - 0.010858158580958843, - -0.05905009061098099, - -0.0254974327981472, - 0.02161114476621151, - -0.03308264911174774, - 0.05033128708600998, - -0.0018922369927167892, - -0.04131113737821579, - 0.05364016443490982, - -0.016715360805392265, - -0.017162229865789413, - -0.02491765096783638, - -0.08130045980215073, - 0.1714319884777069, - 0.05640130490064621, - 0.013079941272735596, - -0.06929761916399002, - -0.08488892018795013, - 0.08526989072561264, - -0.009844035841524601, - -0.12087604403495789, - -3.451605880400166e-05, - 0.043561987578868866, - 0.14840668439865112, - -0.006341175641864538, - -0.051768358796834946, - 0.045168694108724594, - 0.08870804309844971, - 0.02943137288093567, - 0.06059722602367401, - 0.08375724405050278, - 0.07937578856945038, - 0.0016159487422555685, - 0.004422195255756378, - 0.031079735606908798, - 0.11223737895488739, - 0.10097592324018478, - -0.028863202780485153, - 0.029681768268346786, - 0.0026491829194128513, - -0.05049065500497818, - -0.025705374777317047, - -0.04260547086596489, - -0.025787746533751488, - 0.000731926120352, - -0.012470347806811333, - 0.03584346920251846, - 0.013764582574367523, - -0.04847987741231918, - 0.02870183251798153, - 0.0612388513982296, - -0.04680672287940979, - 0.03681580722332001, - 0.052709661424160004, - 0.04116778075695038, - 0.036362018436193466, - -0.08563335984945297, - -0.09518816322088242, - 0.04457642138004303, - 0.03660421073436737, - 0.00043100863695144653, - 0.06126052886247635, - 0.06995650380849838, - -0.03779887780547142, - 0.09688234329223633, - 0.017242174595594406, - 0.008235731162130833, - -0.010043280199170113, - -0.08334952592849731, - 0.08413618803024292, - 0.14761894941329956, - -0.014356866478919983, - 0.045407623052597046, - -0.056622978299856186, - 0.08711928129196167, - 0.07282703369855881, - -0.14034190773963928, - -0.07816387712955475, - 0.006479734554886818, - -0.026812221854925156, - 0.02828856185078621, - 0.1035076230764389, - 0.014560109935700893, - 0.04915304109454155, - 0.09340524673461914, - -0.11248641461133957, - -0.049020834267139435, - -0.045334458351135254, - 0.03757977485656738, - -0.09982053935527802, - 0.08366958796977997, - 0.03844127804040909, - -0.0037756150122731924, - -0.0020173736847937107, - 0.047444261610507965, - -0.03268556669354439, - 0.02319594845175743, - -0.032461978495121, - -0.045328907668590546, - -0.013971710577607155, - -0.044613298028707504, - -0.01694551669061184, - 0.05389242619276047, - 0.0199870802462101, - 0.051351398229599, - -0.022664040327072144, - -0.04059381037950516, - -0.12111130356788635, - 0.02624417096376419, - 0.03731387481093407, - 0.03083357959985733, - -0.016961323097348213, - -0.025061853229999542, - -0.029168304055929184, - -0.08020936697721481, - 0.06208762526512146, - -0.046974681317806244, - 0.0634661316871643, - 0.022950230166316032, - 0.007771766744554043, - 0.1115635484457016, - 0.010986441746354103, - -0.02087082341313362, - -0.022358935326337814, - -0.037896811962127686, - 0.008442696183919907, - 0.04136109724640846, - -0.0935450941324234, - -0.08827902376651764, - -0.018671076744794846, - -0.019474998116493225, - -0.011375385336577892, - 0.06158566474914551, - 0.05662206932902336, - 0.017474018037319183, - 0.024866504594683647, - -0.06552673876285553, - -0.021970730274915695, - -0.12603862583637238, - -0.07713282108306885, - -0.012118677608668804, - -0.07413344085216522, - -0.000942267186474055, - 0.10987742245197296, - 0.01569310389459133, - 0.0030647581443190575, - -0.07118270546197891, - -0.051316093653440475, - -0.07931159436702728, - 0.04717697948217392, - 0.03994818776845932, - 0.021829068660736084, - 0.008511672727763653, - 0.04116184636950493, - 0.011327322572469711, - 0.06375991553068161, - 0.06705322116613388, - 0.09342639893293381, - -0.0019416648428887129, - 0.03156933933496475, - -0.06465055793523788, - 0.1387975662946701, - 0.10464684665203094, - -0.023013398051261902, - -0.11047522723674774, - -0.04860864579677582, - -0.09196440875530243, - 0.05945059657096863, - -0.033380985260009766, - -0.006021165754646063, - 0.03114924393594265, - -0.006030192598700523, - -0.11608670651912689, - -0.08018843829631805, - 0.1011839359998703, - -0.019012505188584328, - -0.03212039917707443, - -0.08153139799833298, - 0.04545474797487259, - 0.07152257859706879, - 0.03886404260993004, - -0.03274347633123398, - 0.023190123960375786, - 0.06713353097438812, - -0.05542673170566559, - 0.011438285931944847, - 0.04052858054637909, - 0.019948141649365425, - -0.08865487575531006, - -0.00962294451892376, - -0.06575658917427063, - 0.043593283742666245, - -0.07244224846363068, - 0.12439824640750885, - 0.0002766617981251329, - -0.07151350378990173, - -0.07043205201625824, - 0.09591775387525558, - -0.0038696867413818836, - 0.03135880455374718, - 0.039293088018894196, - 0.06671574711799622, - 0.052934497594833374, - -0.12110096216201782, - 0.06568339467048645, - 0.05482257530093193, - -0.004840767942368984, - -0.06641611456871033, - -0.07954990863800049, - -0.020583869889378548, - 0.022653883323073387, - -0.007633887231349945, - -0.06359496712684631, - 0.0257723368704319, - 0.004820989444851875, - 0.037046290934085846, - 0.03749874234199524, - 0.11962032318115234, - 0.026607941836118698, - -0.11625548452138901 - ] - }, - "p245_361.wav": { - "name": "p245", - "embedding": [ - 0.011926394887268543, - 0.06210249662399292, - -0.017835557460784912, - -0.01735677197575569, - -0.020619401708245277, - 0.028118301182985306, - -0.13155071437358856, - 0.0676778256893158, - -0.03457015007734299, - 0.13890595734119415, - -0.011586526408791542, - 0.08402418345212936, - -0.02614414319396019, - -0.1015537828207016, - -0.00249448511749506, - 0.050869256258010864, - -0.07413353025913239, - -0.029104825109243393, - 0.011877566576004028, - -0.07702042907476425, - 0.014003106392920017, - 0.004240121692419052, - 0.030682045966386795, - -0.05778014659881592, - 0.010506515391170979, - 0.07814309000968933, - 0.005116107873618603, - -0.010419691912829876, - -0.008949613198637962, - -0.07176841795444489, - 0.006712498143315315, - 0.061862438917160034, - -0.02689170278608799, - -0.008617695420980453, - 0.020216556265950203, - -0.0031817900016903877, - -0.00239486969076097, - -0.024698350578546524, - 0.025762923061847687, - 0.05596732720732689, - -0.04905436187982559, - 0.08756843209266663, - 0.03150226175785065, - -0.001595320412889123, - 0.04404531791806221, - -0.054801687598228455, - -0.04728090018033981, - 0.037360504269599915, - -0.0491497702896595, - 0.1084604412317276, - 0.06694461405277252, - -0.012261574156582355, - -0.04498547315597534, - -0.006163235753774643, - 0.07266216725111008, - 0.026168860495090485, - -0.12393708527088165, - 0.000909857451915741, - 0.017232131212949753, - 0.10199634730815887, - -0.014873003587126732, - -0.052437350153923035, - 0.022934047505259514, - 0.09842145442962646, - 0.007212614640593529, - 0.0503145270049572, - 0.07597789168357849, - 0.06822536885738373, - 0.0014334091683849692, - -0.02090320736169815, - 0.05105771869421005, - 0.08020811527967453, - 0.02390703186392784, - -0.00915088877081871, - 0.048017989844083786, - -0.04172316938638687, - -0.012648390606045723, - -0.05305678769946098, - -0.0018478273414075375, - -0.07383989542722702, - -0.07785394042730331, - -0.025790760293602943, - 0.01661345735192299, - 0.06963403522968292, - 0.023828279227018356, - -0.014390707015991211, - 0.05120624229311943, - -0.043101049959659576, - 0.032904960215091705, - 0.0441870354115963, - 0.015095490962266922, - 0.012522710487246513, - -0.05493451654911041, - -0.03461775556206703, - 0.0038149338215589523, - -0.009417260996997356, - 0.08902069181203842, - 0.028932757675647736, - 0.03136727213859558, - 0.02723829448223114, - 0.0671997219324112, - 0.05518867075443268, - 0.0028429776430130005, - -0.037112124264240265, - -0.06971690058708191, - 0.08399337530136108, - 0.09831470251083374, - -0.04336649179458618, - 0.03436507657170296, - 0.003378668799996376, - 0.03170507028698921, - -0.015983428806066513, - -0.09478430449962616, - -0.026415903121232986, - -0.00772077776491642, - 0.06072218716144562, - 0.005304585210978985, - 0.12128622829914093, - 0.04068703576922417, - 0.044860366731882095, - 0.07096271216869354, - -0.024594897404313087, - -0.037789031863212585, - -0.07295336574316025, - 0.05428667366504669, - -0.08637398481369019, - 0.0680186003446579, - 0.05840304493904114, - 0.024261580780148506, - 0.0199790820479393, - 0.06717151403427124, - 0.028107551857829094, - 0.005176726263016462, - -0.04185377061367035, - -0.019797256216406822, - 0.028216931968927383, - 0.0006682863458991051, - 0.05167779326438904, - 0.07252205908298492, - -0.0023833205923438072, - 0.09705781936645508, - 0.02792045846581459, - 0.0002648690715432167, - -0.06792549043893814, - 0.017863335087895393, - 0.013883218169212341, - 0.020725630223751068, - -0.03879057615995407, - -0.04778476431965828, - 0.015979815274477005, - -0.0791681557893753, - -0.01946365088224411, - -0.02372746355831623, - 0.08049359917640686, - 0.008949203416705132, - -0.027766037732362747, - 0.09724756330251694, - 0.03667234256863594, - -0.01743493601679802, - 0.01892685703933239, - -0.033436112105846405, - -0.004656711593270302, - 0.06611120700836182, - -0.16065530478954315, - -0.06247282773256302, - -0.009763971902430058, - 0.04171407222747803, - 0.027861274778842926, - 0.02400818094611168, - 0.08764767646789551, - -0.00726656336337328, - 0.029627498239278793, - 0.02908611111342907, - 0.011773352511227131, - -0.0522930733859539, - -0.07493104040622711, - -0.03004358522593975, - -0.08556779474020004, - -0.06650198251008987, - 0.06261762231588364, - -0.03993543982505798, - 0.06129869818687439, - -0.026727210730314255, - -0.03586728498339653, - -0.03839658200740814, - 0.05009118467569351, - 0.012728995643556118, - -0.042257070541381836, - -0.0008904095739126205, - 0.08502168208360672, - 0.015666598454117775, - -0.020299626514315605, - 0.025418436154723167, - 0.09600627422332764, - -0.07311512529850006, - 0.004467342980206013, - -0.08632595837116241, - 0.06632199883460999, - 0.083644337952137, - -0.03791866451501846, - -0.03993052989244461, - -0.053744133561849594, - -0.051202625036239624, - 0.060480110347270966, - -0.06026186794042587, - -0.01937800645828247, - -0.00283963605761528, - -0.02168123982846737, - -0.07485203444957733, - -0.0799861028790474, - 0.06528396904468536, - -0.04957328736782074, - 0.0045782532542943954, - -0.041151441633701324, - 0.014797884039580822, - 0.02262934483587742, - 0.05956597626209259, - -0.06028364598751068, - 0.071349136531353, - 0.024354899302124977, - -0.02623426541686058, - 0.04037865996360779, - 0.026476269587874413, - 0.0479184091091156, - -0.040939413011074066, - -0.07319542020559311, - -0.08010071516036987, - 0.03327075392007828, - -0.04423072561621666, - 0.07101716846227646, - 0.023721270263195038, - -0.04136078432202339, - -0.03521153703331947, - -0.017769034951925278, - -0.03665494918823242, - 0.035116832703351974, - 0.07723022997379303, - 0.06804180145263672, - 0.03684590384364128, - -0.014876087196171284, - 0.0800434947013855, - 0.03677428141236305, - 0.033866897225379944, - -0.022375160828232765, - 0.02145783230662346, - -0.02475687302649021, - 0.035890039056539536, - 0.018056144937872887, - -0.07325161248445511, - 0.04230191931128502, - -0.009376225993037224, - 0.03160526230931282, - 0.04663422703742981, - 0.04431857913732529, - 0.04164893552660942, - -0.049721576273441315 - ] - }, - "p245_291.wav": { - "name": "p245", - "embedding": [ - 0.05653196573257446, - 0.05744553357362747, - -0.010101023130118847, - 0.03477645665407181, - 0.009010691195726395, - 0.03316812589764595, - -0.16285166144371033, - 0.08147744089365005, - -0.009365832433104515, - 0.13844230771064758, - -0.07716867327690125, - 0.07004237174987793, - -0.00985901802778244, - -0.17918479442596436, - -0.022741595283150673, - 0.06453901529312134, - -0.04945105314254761, - -0.029401374980807304, - -0.06174631416797638, - -0.00577281229197979, - 0.026523195207118988, - 0.06619623303413391, - 0.04189817234873772, - -0.02920486405491829, - 0.001042497344315052, - 0.05541340261697769, - -0.02161526493728161, - 0.044304490089416504, - -0.009373464621603489, - -0.04095196723937988, - -0.0032643554732203484, - 0.10909703373908997, - -0.009142058901488781, - -0.007068801671266556, - 0.019824158400297165, - 0.033456288278102875, - 0.01448397058993578, - -0.07869595289230347, - -0.01614023558795452, - -0.007305679377168417, - -0.04907343536615372, - 0.06283993273973465, - 0.011824797838926315, - -0.003527384717017412, - 0.06333991885185242, - -0.011748899705708027, - -0.042461931705474854, - -0.059883859008550644, - -0.12348918616771698, - 0.16513605415821075, - 0.07370646297931671, - 0.028700843453407288, - -0.0699508860707283, - -0.04859967529773712, - 0.07200693339109421, - -0.024003902450203896, - -0.08906427025794983, - -0.06390678137540817, - 0.07664825767278671, - 0.16959789395332336, - -0.01744137518107891, - -0.027310781180858612, - 0.06106606125831604, - 0.10061557590961456, - 0.04850436747074127, - 0.07381200790405273, - 0.07796597480773926, - 0.08826704323291779, - 0.009567253291606903, - -0.024113329127430916, - 0.031289830803871155, - 0.04872254282236099, - 0.04984084516763687, - -0.004073705989867449, - 0.02214059792459011, - 0.03283502534031868, - -0.054000403732061386, - -0.01370060071349144, - -0.03259289637207985, - -0.004622192122042179, - 0.01529073528945446, - -0.016702119261026382, - -0.005910279229283333, - 0.05146987736225128, - -0.04720882326364517, - 0.01871165633201599, - 0.04463500529527664, - -0.03925901651382446, - 0.06355088204145432, - 0.03098701313138008, - 0.029529860243201256, - 0.025433247908949852, - -0.043836772441864014, - -0.06708760559558868, - 0.018870966508984566, - 0.04181307926774025, - -0.040593285113573074, - 0.032822348177433014, - 0.031903281807899475, - -0.05954078957438469, - 0.11365513503551483, - -0.013360017910599709, - -0.02449231594800949, - 0.019175786525011063, - -0.08929558843374252, - 0.0828859731554985, - 0.10547081381082535, - -0.014093929901719093, - 0.023713380098342896, - -0.03266219049692154, - -0.0021490007638931274, - 0.07845509052276611, - -0.1201271265745163, - -0.06347402930259705, - 0.0733075886964798, - 0.011677144095301628, - 0.02490481361746788, - 0.11678928136825562, - 0.04689744859933853, - 0.031108636409044266, - 0.09833311289548874, - -0.08828514814376831, - -0.0675790011882782, - 0.0002295470330864191, - 0.06222303956747055, - -0.08815935254096985, - 0.044006749987602234, - 0.0561574324965477, - 0.009411957114934921, - -0.022000424563884735, - 0.06423250585794449, - -0.0007938900380395353, - 0.0011680489405989647, - -0.058905091136693954, - -0.025374790653586388, - 0.04440532624721527, - -0.05525900423526764, - -0.04058346897363663, - 0.027781018987298012, - 0.03461107611656189, - 0.025873281061649323, - -0.006481332238763571, - -0.06672745943069458, - -0.14000210165977478, - -0.003837387077510357, - 0.04243334382772446, - 0.06932566314935684, - -0.011297444812953472, - 0.0016276300884783268, - -0.0831928551197052, - -0.054975565522909164, - 0.03477539122104645, - -0.07214365154504776, - 0.07728385180234909, - -0.003395428415387869, - -0.02345716580748558, - 0.09611286967992783, - -0.055531494319438934, - 0.024228377267718315, - -0.015129270032048225, - -0.00016601057723164558, - 0.006085158325731754, - 0.01693904772400856, - -0.03595491126179695, - -0.06455264985561371, - 0.0006522396579384804, - 0.03174114599823952, - 0.00576036749407649, - 0.042818546295166016, - 0.03130481392145157, - 0.01311424095183611, - -0.010274097323417664, - -0.07109777629375458, - 0.0022865617647767067, - -0.08382311463356018, - -0.04510429874062538, - 0.02398776076734066, - -0.008675994351506233, - 0.004675428383052349, - 0.09344565868377686, - 0.034400805830955505, - 0.014322618022561073, - -0.0612013153731823, - -0.10590728372335434, - -0.09243351966142654, - 0.06331376731395721, - 0.09841512888669968, - -0.02659648284316063, - 0.027998030185699463, - 0.03496672213077545, - -0.003518480807542801, - 0.043661653995513916, - 0.0556676983833313, - 0.08575332164764404, - 0.007445987313985825, - -0.014939786866307259, - -0.07363130897283554, - 0.1023159995675087, - 0.09045994281768799, - -0.046829983592033386, - -0.05536901578307152, - 0.0099516985937953, - -0.08499684929847717, - 0.03546002507209778, - -0.011773918755352497, - 0.007577155716717243, - 0.06328392028808594, - -0.03762400150299072, - -0.12730145454406738, - -0.09601770341396332, - 0.05835698917508125, - -0.05064333230257034, - -0.025512665510177612, - -0.04877271503210068, - 0.043280553072690964, - 0.04968026280403137, - 0.04338892549276352, - -0.006041164975613356, - -0.010160963051021099, - 0.009188663214445114, - -0.06626776605844498, - -0.006650590803474188, - 0.03760852664709091, - 0.01120177935808897, - -0.12998977303504944, - 0.01460969913750887, - -0.07528911530971527, - 0.09206510335206985, - -0.05481262505054474, - 0.09221293032169342, - 0.022736545652151108, - -0.03006705641746521, - -0.09784440696239471, - 0.03020942211151123, - -0.021444763988256454, - 0.07392783463001251, - 0.017632948234677315, - 0.04561767354607582, - 0.062301427125930786, - -0.07722395658493042, - 0.06893503665924072, - 0.047920286655426025, - -0.005739230662584305, - -0.08970271050930023, - -0.060988862067461014, - -0.04112662374973297, - 0.028439588844776154, - -0.006277387961745262, - -0.057027190923690796, - 0.0037156955804675817, - 0.01790113002061844, - -0.024796364828944206, - 0.045733410865068436, - 0.10559581220149994, - 0.02144555002450943, - -0.13053618371486664 - ] - }, - "p245_017.wav": { - "name": "p245", - "embedding": [ - 0.04551132768392563, - 0.06415122002363205, - -0.017733527347445488, - 0.03264474496245384, - -0.07500273734331131, - 0.020579088479280472, - -0.1253458857536316, - 0.14299044013023376, - -0.00961694959551096, - 0.13035373389720917, - -0.07003148645162582, - 0.13815540075302124, - -0.02762509696185589, - -0.19022342562675476, - 0.004209984093904495, - 0.053910475224256516, - -0.017790915444493294, - -0.03436313569545746, - -0.021709471940994263, - -0.04708186909556389, - 0.0494837760925293, - 0.058601364493370056, - 0.04033002257347107, - -0.0033888574689626694, - 0.01651679538190365, - 0.08687520027160645, - -0.006717074662446976, - 0.03210324048995972, - -0.006902260240167379, - -0.0688478872179985, - -0.03937457501888275, - 0.08154523372650146, - -0.047710441052913666, - -0.0034445729106664658, - 0.022727204486727715, - -0.028142675757408142, - -0.01970871165394783, - -0.04205350577831268, - -0.024377483874559402, - 0.0020326629746705294, - -0.05211620032787323, - 0.06269744038581848, - 0.01649254932999611, - -0.02494468353688717, - 0.05550023913383484, - 0.01424156129360199, - -0.033675581216812134, - -0.039072006940841675, - -0.12252863496541977, - 0.15420544147491455, - 0.07669760286808014, - 0.009820655919611454, - -0.0753401592373848, - -0.05156977102160454, - 0.09463080018758774, - -0.019091788679361343, - -0.10122635215520859, - -0.03978918120265007, - 0.07927292585372925, - 0.1420087218284607, - -0.033467408269643784, - -0.04978711158037186, - 0.045224979519844055, - 0.09982176870107651, - 0.047859981656074524, - 0.07166547328233719, - 0.08884882926940918, - 0.10237070173025131, - -0.03612620383501053, - 0.01046236976981163, - 0.03317948430776596, - 0.08862706273794174, - 0.062111109495162964, - -0.003372638951987028, - 0.01489005982875824, - 0.0020809494890272617, - -0.010987769812345505, - -0.022202875465154648, - -0.03120948001742363, - -0.026399977505207062, - -0.0015130944084376097, - -8.469614840578288e-05, - 0.025568857789039612, - 0.0031969361007213593, - -0.025830646976828575, - 0.06517083197832108, - 0.061920296400785446, - -0.008120927959680557, - 0.06156442314386368, - 0.004203286953270435, - -0.0047052945010364056, - 0.07692272961139679, - -0.09793667495250702, - -0.0626755803823471, - 0.03350024297833443, - 0.007563699968159199, - 0.030076518654823303, - 0.07627351582050323, - 0.04246315360069275, - -0.021636895835399628, - 0.13168179988861084, - 0.037125565111637115, - -0.004069649614393711, - 0.0195348858833313, - -0.08348248898983002, - 0.1167168915271759, - 0.11068558692932129, - -0.030621081590652466, - 0.0626697838306427, - -0.0600992813706398, - 0.07373440265655518, - 0.044265203177928925, - -0.12565574049949646, - -0.05848854035139084, - -0.00881976168602705, - 0.0045157852582633495, - -0.023772848770022392, - 0.13803784549236298, - -0.009123890660703182, - 0.06756705045700073, - 0.13475897908210754, - -0.10733338445425034, - -0.058913104236125946, - -0.01531960442662239, - 0.04756344109773636, - -0.1066696047782898, - 0.07106006890535355, - 0.06615190207958221, - -0.01328849047422409, - 0.05136212706565857, - 0.06530500948429108, - -0.0272357240319252, - 0.010920132510364056, - 0.0036190941464155912, - -0.05993682146072388, - -0.01378500834107399, - -0.037842459976673126, - -0.0210232213139534, - 0.05585433542728424, - 0.03165086358785629, - 0.056189026683568954, - -0.012611661106348038, - -0.02951662801206112, - -0.13414493203163147, - 0.0244239941239357, - 0.024080296978354454, - 0.06328719109296799, - -0.009367435239255428, - -0.027340954169631004, - -0.03853777050971985, - -0.0716903805732727, - 0.012366360984742641, - -0.003340009367093444, - 0.052719950675964355, - -0.04044071584939957, - 0.010161965154111385, - 0.08515878766775131, - 0.05905775725841522, - -0.004965747706592083, - -0.055269382894039154, - -0.06255163997411728, - -0.005615612026304007, - 0.04623153805732727, - -0.09525196999311447, - -0.0752137154340744, - -0.03790876269340515, - 0.05037284642457962, - -0.036295101046562195, - 0.059920281171798706, - 0.052922483533620834, - 0.031520258635282516, - 0.009990028105676174, - -0.0676911398768425, - 0.022685334086418152, - -0.08050095289945602, - -0.09212951362133026, - 0.007913382723927498, - -0.008901170454919338, - -0.02691173180937767, - 0.06328042596578598, - 0.011979928240180016, - 0.05409592390060425, - -0.05048719048500061, - -0.04822889715433121, - -0.09685957431793213, - 0.034914687275886536, - 0.036640822887420654, - -0.009118038229644299, - 0.05351642891764641, - 0.0505867563188076, - -0.06257537007331848, - 0.0674782544374466, - 0.05028088018298149, - 0.11296842992305756, - -0.027889098972082138, - 0.03151630982756615, - -0.06035736948251724, - 0.08891995251178741, - 0.1049027144908905, - -0.05697165057063103, - -0.08397306501865387, - -0.05400363355875015, - -0.08573877811431885, - 0.06583724170923233, - -0.016489189118146896, - -0.011132235638797283, - 0.032532453536987305, - 0.01319345086812973, - -0.11198969930410385, - -0.07107928395271301, - 0.06660787761211395, - -0.040029145777225494, - -0.006766983773559332, - -0.09840899705886841, - 0.061110369861125946, - 0.09982843697071075, - 0.026168126612901688, - -0.02273973450064659, - -0.030583884567022324, - 0.03935161605477333, - -0.025035209953784943, - 0.02752809040248394, - 0.06146261841058731, - 0.06354182213544846, - -0.08621850609779358, - -0.02619505487382412, - -0.08017340302467346, - 0.02744808793067932, - -0.025768090039491653, - 0.13682353496551514, - 0.020675629377365112, - -0.03231636807322502, - -0.07989175617694855, - 0.05841931328177452, - 0.002659314312040806, - 0.06054389476776123, - 0.03865800052881241, - 0.054399751126766205, - 0.05783791095018387, - -0.08701840043067932, - 0.10963024944067001, - 0.04223506152629852, - -0.04994489252567291, - -0.059356510639190674, - -0.04454854130744934, - -0.043831657618284225, - 0.020010121166706085, - -0.0014113312354311347, - -0.09292681515216827, - -0.03428909555077553, - 0.021666087210178375, - 0.009830035269260406, - 0.05867670476436615, - 0.12548168003559113, - 0.03800232708454132, - -0.10345952957868576 - ] - }, - "p245_424.wav": { - "name": "p245", - "embedding": [ - 0.001892124768346548, - 0.0772138237953186, - -0.05105011910200119, - 0.08649444580078125, - -0.06884513050317764, - -0.0190134197473526, - -0.07367052882909775, - 0.017979174852371216, - 0.022998588159680367, - 0.08416342735290527, - -0.022213542833924294, - 0.07985962927341461, - -0.04986017569899559, - -0.11662525683641434, - -0.006861692760139704, - 0.010529093444347382, - 0.00916682742536068, - -0.004596509039402008, - -0.011971337720751762, - -0.03673101216554642, - -0.03320680186152458, - 0.009705863893032074, - -0.04170793294906616, - 0.005271383561193943, - -0.02524394355714321, - 0.02333664894104004, - -0.04947361722588539, - 0.011702897027134895, - -0.03431544452905655, - -0.041045695543289185, - -0.011258951388299465, - 0.030208313837647438, - -0.025297805666923523, - -0.014371076598763466, - -0.021888524293899536, - 0.0097556347027421, - 0.005079334601759911, - -0.018675310537219048, - -0.02694312483072281, - -0.025036359205842018, - -0.06483050435781479, - 0.011079924181103706, - 0.038781020790338516, - -0.05759361386299133, - 0.023310624063014984, - -0.001765955239534378, - -0.04806482791900635, - -0.017630165442824364, - -0.03928813710808754, - 0.10365454852581024, - 0.04273460432887077, - 0.06820251792669296, - -0.025177232921123505, - -0.02783232182264328, - 0.10823054611682892, - 0.03038344904780388, - -0.01864982396364212, - -0.04602112993597984, - -0.0005400218069553375, - 0.08031546324491501, - 0.02614920772612095, - 0.021776292473077774, - 0.03543626517057419, - 0.06318740546703339, - 0.01108668465167284, - 0.019740842282772064, - 0.041690222918987274, - 0.06949252635240555, - -0.017195500433444977, - 0.017991041764616966, - 0.07301604002714157, - 0.021120239049196243, - -0.006679270416498184, - 0.025009671226143837, - -0.004963694140315056, - 0.020498983561992645, - 0.013965277932584286, - 0.04474381357431412, - -0.034953176975250244, - -0.017981886863708496, - 0.00047330581583082676, - 0.013516085222363472, - 0.004257809836417437, - -0.047235190868377686, - -0.0456538125872612, - -0.03226173296570778, - 0.08474662899971008, - 0.007308783009648323, - 0.018003705888986588, - 0.02876271866261959, - 0.027806201949715614, - 0.004568150267004967, - -0.04330280050635338, - -0.02593892067670822, - 0.026001999154686928, - 0.003323769196867943, - 0.045396678149700165, - -0.0034433137625455856, - -0.001234445720911026, - -0.005669116508215666, - 0.046726785600185394, - -0.028828799724578857, - 0.037842635065317154, - -0.00912972167134285, - -0.04166071116924286, - -0.0012883618474006653, - 0.04236513748764992, - 0.0365850105881691, - 0.04079907387495041, - 0.02312416583299637, - 0.045103807002305984, - 0.07970334589481354, - -0.03381809592247009, - -0.027355695143342018, - 0.01703854650259018, - 0.03694966062903404, - -0.04440494626760483, - 0.08193200826644897, - 0.004134703427553177, - 0.03884819522500038, - 0.07160670310258865, - 0.00787758082151413, - -0.02921435236930847, - -0.018526839092373848, - -0.0002670101821422577, - -0.020455019548535347, - 0.03478541970252991, - 0.044058382511138916, - -0.02747879922389984, - -0.03507460653781891, - 0.042751893401145935, - -0.014009594917297363, - -0.019881609827280045, - 0.005095541477203369, - 0.012303829193115234, - -0.025181781500577927, - 0.07532091438770294, - -0.06336486339569092, - 0.043386999517679214, - 0.055714838206768036, - -0.01950147934257984, - -0.022999467328190804, - 0.012332761660218239, - -0.059406716376543045, - 0.03855019807815552, - 0.008160186000168324, - -0.0043372660875320435, - 0.07506471872329712, - -0.028780676424503326, - -0.09152845293283463, - -0.05286616086959839, - 0.046648021787405014, - -0.03389543294906616, - 0.08285452425479889, - 0.06334945559501648, - 0.006106425076723099, - 0.040543332695961, - -0.015038829296827316, - -0.004678965546190739, - 0.012173406779766083, - -0.10825236886739731, - 0.01270017959177494, - 0.003984680399298668, - -0.005302663892507553, - -0.011670955456793308, - 0.008671769872307777, - 0.010861430317163467, - -0.021331295371055603, - 0.0015154052525758743, - 0.03517214208841324, - 0.007879979908466339, - 0.03798873722553253, - -0.11924606561660767, - 0.006683839485049248, - -0.01857401430606842, - -0.027625910937786102, - 0.03697021305561066, - -0.04582538083195686, - -0.004122628830373287, - 0.029169471934437752, - 0.026857441291213036, - -0.036605942994356155, - -0.05907382816076279, - -0.05671650916337967, - 0.00041788816452026367, - 0.017625387758016586, - -0.005624011158943176, - -0.0006361128762364388, - -0.009943610057234764, - 0.00891917385160923, - 0.045022912323474884, - 0.007917322218418121, - 0.010795578360557556, - 0.06558217108249664, - -0.03762105107307434, - 0.003218233585357666, - 0.027659520506858826, - 0.1093207448720932, - 0.030215095728635788, - -0.0753413587808609, - -0.06082756817340851, - -0.009038607589900494, - -0.04680025205016136, - 0.03892268240451813, - -0.031270358711481094, - 0.028085455298423767, - 0.008766830898821354, - 0.013674145564436913, - 0.02871040254831314, - -0.1364755779504776, - 0.028236977756023407, - -0.012823724187910557, - -0.04241030663251877, - -0.002849690616130829, - -0.006056215614080429, - 0.030734006315469742, - 0.024353256449103355, - -0.04100526124238968, - -0.031241128221154213, - 0.025435829535126686, - 0.012575473636388779, - 0.034635163843631744, - 0.06672202050685883, - 0.034462615847587585, - -0.009500522166490555, - -0.01987200789153576, - -0.03887777402997017, - 0.023832570761442184, - 0.011506957933306694, - 0.03953535854816437, - 0.021431051194667816, - 0.003945156931877136, - -0.07682430744171143, - 0.06606461107730865, - -0.011586638167500496, - 0.06724752485752106, - -0.009915713220834732, - 0.010711012408137321, - 0.02962656319141388, - -0.021923230960965157, - 0.11724457144737244, - 0.049839720129966736, - -0.02063119038939476, - -0.02429637312889099, - 0.005326147191226482, - -0.031162194907665253, - 0.06698041409254074, - 0.05022807419300079, - -0.04585089161992073, - -0.0038546943105757236, - 0.06947977840900421, - 0.03226684778928757, - 0.08526334166526794, - 0.05644106864929199, - 0.08154194802045822, - 0.06088612973690033 - ] - }, - "p245_132.wav": { - "name": "p245", - "embedding": [ - 0.03260638937354088, - 0.09399698674678802, - -0.035386864095926285, - 0.05806262791156769, - -0.08149316161870956, - 0.043726928532123566, - -0.0940699651837349, - 0.134440615773201, - -0.05114878714084625, - 0.10476505756378174, - -0.08709513396024704, - 0.1573345810174942, - -0.051515739411115646, - -0.16643977165222168, - -0.04075360298156738, - 0.07093706727027893, - -0.01389460451900959, - -0.041025321930646896, - -0.0026325047947466373, - -0.025880133733153343, - 0.030740557238459587, - 0.03304968401789665, - 0.053043920546770096, - 0.04788118973374367, - 0.026182854548096657, - 0.09770189970731735, - -0.002955665113404393, - 0.04950987920165062, - 0.02381107024848461, - -0.04350738972425461, - -0.07612182945013046, - 0.08906009048223495, - -0.06307755410671234, - -0.013278120197355747, - 0.03531384468078613, - -0.007287627086043358, - 0.011101476848125458, - -0.03917499631643295, - -0.017185188829898834, - -0.011529114097356796, - -0.06620696932077408, - 0.06883741170167923, - -0.006378654856234789, - -0.03500991314649582, - 0.04777050018310547, - 0.007460827007889748, - -0.012459388934075832, - -0.013197670690715313, - -0.12156148999929428, - 0.12092535197734833, - 0.060598257929086685, - 0.0007129204459488392, - -0.0844765305519104, - -0.051393844187259674, - 0.11440671235322952, - -0.026712127029895782, - -0.09053613990545273, - -0.03214731067419052, - 0.06702802330255508, - 0.14992451667785645, - -0.019853565841913223, - -0.032586097717285156, - 0.02203180082142353, - 0.09293755143880844, - 0.08520234376192093, - 0.07199826836585999, - 0.07808248698711395, - 0.09867506474256516, - -0.032448358833789825, - 0.008202950470149517, - 0.06359554827213287, - 0.08268047869205475, - 0.061312563717365265, - -0.0198469590395689, - 0.004455184563994408, - 0.008482166565954685, - -0.018621699884533882, - 0.01714889518916607, - -0.0220473725348711, - -0.030542364344000816, - -0.03594156354665756, - -0.008346921764314175, - -0.011205275543034077, - -0.0067113363184034824, - -0.030816983431577682, - 0.08600862324237823, - 0.05690658092498779, - -0.018294651061296463, - 0.07089287787675858, - 0.0367298386991024, - -0.04338241368532181, - 0.07423049956560135, - -0.09959115087985992, - -0.05026960000395775, - 0.02022615820169449, - -0.005251947324723005, - 0.020974071696400642, - 0.08046488463878632, - 0.051035162061452866, - -0.00633549178019166, - 0.12704136967658997, - 0.06459269672632217, - 0.02370535209774971, - 0.03212760388851166, - -0.07726636528968811, - 0.1268271803855896, - 0.10775546729564667, - -0.03617163002490997, - 0.051975004374980927, - 5.0303096941206604e-05, - 0.058961864560842514, - 0.0694785863161087, - -0.11963710188865662, - -0.064275823533535, - 0.003734781639650464, - -0.0014558644033968449, - -0.00025247837766073644, - 0.0831163078546524, - -0.026175325736403465, - 0.04558470845222473, - 0.10177630931138992, - -0.08110617101192474, - -0.06506282836198807, - -0.028316976502537727, - 0.03614886477589607, - -0.07896237820386887, - 0.07235944271087646, - 0.058452311903238297, - 0.019652705639600754, - 0.005900269839912653, - 0.08191858232021332, - -0.016376137733459473, - -0.02049291506409645, - 0.04943307489156723, - -0.0644930750131607, - -0.012972029857337475, - -0.010747896507382393, - -0.014048404060304165, - 0.08476679027080536, - 0.027141321450471878, - 0.06009293720126152, - -0.004161167424172163, - 0.023482363671064377, - -0.12726831436157227, - 0.009498685598373413, - 0.06570904701948166, - 0.06216664984822273, - -0.006843872833997011, - -0.04708636552095413, - -0.05319267511367798, - -0.061546746641397476, - 0.02431337721645832, - 0.024048957973718643, - 0.0908319428563118, - -0.05391200631856918, - 0.013125956989824772, - 0.0983332172036171, - 0.028251992538571358, - -0.010638647712767124, - -0.057336390018463135, - -0.03091302141547203, - -0.004886920098215342, - 0.0541202686727047, - -0.06740494817495346, - -0.1109127402305603, - -0.02370842732489109, - 0.0466248020529747, - -0.015590556897222996, - 0.08520086854696274, - 0.06365678459405899, - 0.0039962646551430225, - 0.013784377835690975, - -0.05601000040769577, - 0.02084384858608246, - -0.08098699897527695, - -0.053172845393419266, - -0.03875025734305382, - -0.028264416381716728, - -0.030976612120866776, - 0.06523030251264572, - 0.044615738093853, - 0.06615976244211197, - -0.0029882071539759636, - -0.06888537108898163, - -0.09621395915746689, - 0.04152441769838333, - 0.04183657839894295, - 0.019423827528953552, - 0.06345868110656738, - 0.07092377543449402, - -0.042487408965826035, - 0.08566654473543167, - 0.07208713889122009, - 0.08675440400838852, - -0.0327550545334816, - 0.01740824058651924, - -0.050104349851608276, - 0.05790972709655762, - 0.09300605207681656, - -0.10995476692914963, - -0.09736377000808716, - -0.056880753487348557, - -0.06394055485725403, - 0.07422906160354614, - -0.029384411871433258, - 0.017187846824526787, - 0.04619833454489708, - -0.013021755963563919, - -0.09317721426486969, - -0.12109997868537903, - 0.10906024277210236, - -0.04892798140645027, - -0.005154452286660671, - -0.07026378810405731, - 0.030873756855726242, - 0.06785143911838531, - -0.0014085366856306791, - -0.02773134969174862, - 0.014761348254978657, - 0.046958766877651215, - -0.013604813255369663, - -0.0045954086817801, - 0.08245713263750076, - 0.03253864496946335, - -0.09620503336191177, - -0.015460392460227013, - -0.07779322564601898, - 0.09320205450057983, - -0.028716111555695534, - 0.1694604903459549, - -0.00520617701113224, - -0.025842033326625824, - -0.08260329067707062, - 0.06074840575456619, - -0.013271425850689411, - 0.053757015615701675, - 0.05105070397257805, - 0.06906425207853317, - 0.0011770090786740184, - -0.06531141698360443, - 0.1297733187675476, - 0.05122879892587662, - -0.07624483853578568, - -0.07589210569858551, - -0.05109146237373352, - -0.05203467234969139, - 0.02747061476111412, - 0.03636185824871063, - -0.0942639708518982, - -0.01957610249519348, - 0.0039090346544981, - -0.004059700295329094, - 0.06686082482337952, - 0.1402718722820282, - 0.0708284005522728, - -0.08142716437578201 - ] - }, - "p245_101.wav": { - "name": "p245", - "embedding": [ - 0.04393080621957779, - 0.07435603439807892, - -0.05854286253452301, - 0.032097429037094116, - -0.057750627398490906, - 0.05548716336488724, - -0.12118790298700333, - 0.12042001634836197, - -0.0008363872766494751, - 0.14400643110275269, - -0.023708384484052658, - 0.12623317539691925, - 0.0017389392014592886, - -0.14117203652858734, - -0.005656491965055466, - 0.025246016681194305, - -0.03841045871376991, - -0.03833971917629242, - -0.05910252407193184, - -0.0404319241642952, - 0.03692815825343132, - 0.05090132728219032, - 0.029159987345337868, - -0.03643464669585228, - 0.022817090153694153, - 0.07085692882537842, - -0.0162968747317791, - 0.025756381452083588, - 0.009590355679392815, - -0.12203177809715271, - -0.03894274681806564, - 0.06515449285507202, - -0.0720425397157669, - 0.024638934060931206, - 0.019399764016270638, - -0.048048362135887146, - 0.002327980473637581, - -0.048224203288555145, - -0.020821284502744675, - 0.0350300669670105, - -0.03278016671538353, - 0.09893735498189926, - 0.014127345755696297, - -0.012538513168692589, - 0.023425765335559845, - 0.005040713120251894, - -0.013049292378127575, - -0.03376048803329468, - -0.09110219776630402, - 0.1761135756969452, - 0.07616430521011353, - -0.027057670056819916, - -0.06762366741895676, - -0.04664966091513634, - 0.06678256392478943, - -0.014770272187888622, - -0.11345554888248444, - -0.04930358752608299, - 0.04347904771566391, - 0.10480742156505585, - -0.030313408002257347, - -0.04478244483470917, - 0.037645209580659866, - 0.11807277798652649, - 0.103485606610775, - 0.040309756994247437, - 0.09568393230438232, - 0.1371174156665802, - -0.03508085012435913, - 0.013373331166803837, - 0.022291868925094604, - 0.09891407191753387, - 0.07263055443763733, - 0.028245192021131516, - 0.023090720176696777, - -0.01891189068555832, - 0.007848791778087616, - -0.06283363699913025, - -0.037548258900642395, - -0.019962536171078682, - 0.026574475690722466, - 0.006854726932942867, - 0.029698016121983528, - 0.06273766607046127, - -0.025400731712579727, - 0.04461083933711052, - 0.0685114860534668, - -0.04776136204600334, - 0.044669076800346375, - 0.021701261401176453, - 0.03225504606962204, - 0.06272798776626587, - -0.12017607688903809, - -0.06843782216310501, - 0.048636823892593384, - 0.017193008214235306, - 0.020065564662218094, - 0.056193627417087555, - 0.049998946487903595, - -0.00976267084479332, - 0.1330414116382599, - 0.01617378182709217, - -0.04352360963821411, - -0.0023975172080099583, - -0.06166123226284981, - 0.14340612292289734, - 0.09357452392578125, - -0.0378553681075573, - 0.036752935498952866, - -0.06734546273946762, - 0.07444983720779419, - 0.019914958626031876, - -0.12749674916267395, - -0.08508291840553284, - 0.023080896586179733, - -0.008569952100515366, - -0.029328078031539917, - 0.1212901622056961, - 0.011001866310834885, - 0.07051713764667511, - 0.10095645487308502, - -0.07959383726119995, - -0.02739454060792923, - -0.015415861271321774, - 0.051321402192115784, - -0.09417974948883057, - 0.05687381699681282, - 0.03739936649799347, - -0.0036201062612235546, - 0.027840476483106613, - 0.09118669480085373, - -0.0037724217399954796, - 0.0061034816317260265, - 0.00661796610802412, - -0.027808792889118195, - 0.017984122037887573, - -0.00478682154789567, - -0.008896744810044765, - 0.02155323326587677, - 0.020121334120631218, - 0.08162852376699448, - -0.050899870693683624, - -0.022332090884447098, - -0.12257926166057587, - 0.041842021048069, - -0.0020697112195193768, - 0.06557897478342056, - -0.024463139474391937, - -0.0031010392121970654, - -0.03318736329674721, - -0.0735674500465393, - 0.008096644654870033, - -0.016462737694382668, - 0.05191255733370781, - -0.019359173253178596, - 0.0039686416275799274, - 0.11881740391254425, - 0.040744598954916, - 0.01764502003788948, - -0.027964893728494644, - -0.028498679399490356, - -0.003936432767659426, - 0.05654461681842804, - -0.0764678567647934, - -0.07045317441225052, - -0.01335081271827221, - 0.013610102236270905, - -0.013680093921720982, - 0.08456757664680481, - 0.05939373001456261, - 0.030316825956106186, - 0.020607996731996536, - -0.052867621183395386, - -0.025318045169115067, - -0.04939018189907074, - -0.05645453929901123, - -0.013354497030377388, - -0.018715478479862213, - -0.0613485649228096, - 0.08285346627235413, - 0.022038612514734268, - 0.07016417384147644, - -0.06262849271297455, - -0.04494304955005646, - -0.08057421445846558, - 0.03565920889377594, - 0.0308663509786129, - -0.038832079619169235, - 0.009409904479980469, - 0.06978203356266022, - -0.007524227257817984, - 0.015855573117733, - 0.06958257406949997, - 0.07760700583457947, - -0.03471839800477028, - 0.018965618684887886, - -0.06736879795789719, - 0.13152381777763367, - 0.08391255140304565, - -0.053618501871824265, - -0.06412506103515625, - -0.025526680052280426, - -0.09217415004968643, - 0.0057884398847818375, - -0.0467953160405159, - -0.007205738686025143, - 0.051461488008499146, - 0.006017627194523811, - -0.10712246596813202, - -0.08681885898113251, - 0.0851973295211792, - -0.08631724119186401, - -0.004221698734909296, - -0.10155054181814194, - 0.03763340413570404, - 0.09219184517860413, - 0.05993299186229706, - -0.042895130813121796, - -0.021885735914111137, - 0.06038403883576393, - 9.364041034132242e-06, - 0.06076393648982048, - 0.08356288820505142, - 0.06483960151672363, - -0.11414799839258194, - -0.02804030105471611, - -0.03811675310134888, - 0.00848240964114666, - -0.028482656925916672, - 0.10550107061862946, - 0.04504585638642311, - -0.035646818578243256, - -0.08085301518440247, - 0.06802998483181, - -0.025425676256418228, - 0.07374214380979538, - 0.019013788551092148, - 0.055566709488630295, - 0.08171863853931427, - -0.07945773005485535, - 0.1155330240726471, - 0.0620589442551136, - -0.04441720247268677, - -0.08999545872211456, - -0.0701604038476944, - -0.014728373847901821, - 0.06278650462627411, - 0.05661192163825035, - -0.08293735980987549, - -0.01895913854241371, - 0.02844253182411194, - -0.009349027648568153, - 0.06700235605239868, - 0.12397964298725128, - 0.08363264799118042, - -0.10710255801677704 - ] - }, - "p245_058.wav": { - "name": "p245", - "embedding": [ - 0.040095459669828415, - 0.08464542031288147, - -0.04939677566289902, - 0.014512901194393635, - -0.07138354331254959, - 0.04491971433162689, - -0.10891199856996536, - 0.1074625551700592, - -0.018529588356614113, - 0.14358967542648315, - -0.04172215983271599, - 0.10718019306659698, - -0.029614493250846863, - -0.1654200255870819, - -0.02470208704471588, - 0.033946696668863297, - -0.061574261635541916, - -0.039167966693639755, - -0.1046236976981163, - -0.057243213057518005, - 0.028788022696971893, - 0.041503019630908966, - 0.023259451612830162, - -0.05123131722211838, - 0.04018116742372513, - 0.07723955810070038, - -0.0037555000744760036, - 0.02745998650789261, - -0.009026124142110348, - -0.08279910683631897, - -0.02577996999025345, - 0.0779109001159668, - -0.07188583165407181, - 0.013400848954916, - 0.02771996334195137, - -0.021952811628580093, - 0.002271291334182024, - -0.02076265588402748, - 0.0015286747366189957, - 0.04080076515674591, - -0.02674764022231102, - 0.09794457256793976, - 0.026061145588755608, - -0.005648459307849407, - 0.024599438533186913, - 0.03318100795149803, - -0.012113397940993309, - -0.05698513612151146, - -0.06834378093481064, - 0.18212305009365082, - 0.06183427572250366, - -0.01667407713830471, - -0.06017722934484482, - -0.0626637190580368, - 0.0802101194858551, - -0.036388546228408813, - -0.12866735458374023, - -0.06929294764995575, - 0.06191838160157204, - 0.11942581832408905, - -0.04503461718559265, - -0.041215017437934875, - 0.01962238922715187, - 0.09320805966854095, - 0.07015824317932129, - 0.05225303769111633, - 0.08624694496393204, - 0.11506983637809753, - -0.020544448867440224, - 0.00987608078867197, - 0.06508006155490875, - 0.0620880052447319, - 0.07603543996810913, - 0.007600646466016769, - 0.034637436270713806, - -0.030395209789276123, - 0.013141512870788574, - -0.046201255172491074, - -0.03336643800139427, - -0.017351767048239708, - 0.0030971807427704334, - 0.01595836877822876, - 0.01205148734152317, - 0.013282045722007751, - -0.017725473269820213, - 0.04133062809705734, - 0.06863003224134445, - -0.03953195735812187, - 0.06554718315601349, - 0.048890337347984314, - 0.024386338889598846, - 0.06082901358604431, - -0.10012871026992798, - -0.047424085438251495, - 0.029217731207609177, - 0.008305085822939873, - 0.021794088184833527, - 0.025527501478791237, - 0.03165813535451889, - -0.013124652206897736, - 0.1059289425611496, - 0.041483789682388306, - -0.03520410507917404, - 0.008428756147623062, - -0.07794594019651413, - 0.15078213810920715, - 0.08974793553352356, - -0.024279996752738953, - 0.027033494785428047, - -0.03267820179462433, - 0.04069007560610771, - 0.03302048146724701, - -0.09919734299182892, - -0.10005587339401245, - 0.004104494582861662, - -0.013532605953514576, - -0.043864574283361435, - 0.09833259880542755, - 0.0065202871337533, - 0.03401154652237892, - 0.12143230438232422, - -0.08350333571434021, - -0.03641325235366821, - 0.0043602604418993, - 0.036070115864276886, - -0.09031931310892105, - 0.029859870672225952, - 0.0739813968539238, - -0.008123692125082016, - 0.0523805245757103, - 0.1155560165643692, - 0.007525917142629623, - 0.018350474536418915, - -0.010702775791287422, - -0.01918228156864643, - 0.022715440019965172, - 0.004538293462246656, - -0.02426518127322197, - 0.06786809116601944, - 0.042829547077417374, - 0.07436146587133408, - -0.02296571619808674, - -0.038298338651657104, - -0.11370620876550674, - 0.04181668907403946, - 0.018801283091306686, - 0.051418814808130264, - -0.03838001936674118, - 0.029144568368792534, - -0.033389121294021606, - -0.07871393859386444, - 0.03047719970345497, - -5.7707540690898895e-05, - 0.07840865850448608, - -0.028981033712625504, - -0.02751855179667473, - 0.16068927943706512, - 0.02838863432407379, - -0.00025691185146570206, - -0.04189702868461609, - -0.016339469701051712, - 0.005008699372410774, - 0.05224251747131348, - -0.08856847137212753, - -0.05894537270069122, - -0.01632559485733509, - 0.04332207143306732, - 0.006242827512323856, - 0.09948636591434479, - 0.08242589235305786, - -0.0016651973128318787, - 0.010041027329862118, - -0.035589877516031265, - 0.0014838525094091892, - -0.03982983157038689, - -0.04284268990159035, - 0.0014124466106295586, - -0.06503404676914215, - -0.05635921657085419, - 0.08021029084920883, - -0.0012482330203056335, - 0.0435648038983345, - -0.05897326022386551, - -0.0940689966082573, - -0.07942241430282593, - 0.04363465681672096, - 0.04206574335694313, - -0.043560825288295746, - 0.022975264117121696, - 0.06940773874521255, - -0.025889672338962555, - 0.037286754697561264, - 0.07076471298933029, - 0.11400671303272247, - -0.05141589790582657, - 0.020602580159902573, - -0.0713539570569992, - 0.09544692933559418, - 0.04542768746614456, - -0.06997442990541458, - -0.04869373142719269, - -0.04131823778152466, - -0.050733186304569244, - 0.016862383112311363, - -0.027418747544288635, - 0.02805482968688011, - 0.057703107595443726, - 0.018549412488937378, - -0.07145245373249054, - -0.10544666647911072, - 0.0726003348827362, - -0.07308027148246765, - 0.007214994169771671, - -0.07264198362827301, - 0.02439333312213421, - 0.06990259885787964, - 0.07494648545980453, - -0.017653556540608406, - 0.008677108213305473, - 0.028631966561079025, - -0.014501434750854969, - 0.033806782215833664, - 0.06531447917222977, - 0.04266134649515152, - -0.06118036061525345, - -0.030454672873020172, - -0.09307092428207397, - 0.03885189816355705, - -0.021546320989727974, - 0.13097772002220154, - 0.020692095160484314, - -0.03433218225836754, - -0.0835191160440445, - 0.04706661030650139, - -0.06663493812084198, - 0.08518781512975693, - 0.05078582465648651, - 0.06582995504140854, - 0.06733830273151398, - -0.04006108641624451, - 0.11541539430618286, - 0.05684829503297806, - -0.03704323619604111, - -0.07099970430135727, - -0.07046829909086227, - -0.04796279966831207, - 0.032388441264629364, - 0.031165868043899536, - -0.0913955569267273, - 0.01884661801159382, - 0.030615055933594704, - -0.02289772219955921, - 0.05372690409421921, - 0.1057821586728096, - 0.08194398880004883, - -0.0843496173620224 - ] - }, - "p245_024.wav": { - "name": "p245", - "embedding": [ - 0.04860005900263786, - 0.13365040719509125, - 0.005188239272683859, - -0.007631541229784489, - -0.06357205659151077, - 0.055444296449422836, - -0.11113158613443375, - 0.14507606625556946, - -0.06605346500873566, - 0.12376834452152252, - -0.09833568334579468, - 0.12805351614952087, - -0.046480391174554825, - -0.13841275870800018, - -0.06650926917791367, - 0.044916536659002304, - -0.04643157869577408, - -0.015450340695679188, - -0.03431691601872444, - -0.03474448248744011, - 0.032083820551633835, - 0.023633794859051704, - 0.04697386175394058, - 0.023828618228435516, - 0.03568379953503609, - 0.0631122812628746, - 0.026003241539001465, - 0.06289685517549515, - 0.04021076858043671, - -0.04751605540513992, - -0.03811714053153992, - 0.09202314168214798, - -0.034220077097415924, - 0.02479376830160618, - 0.05797666311264038, - -0.004366706591099501, - 0.027224576100707054, - -0.06366776674985886, - -0.02344970405101776, - 0.0027259918861091137, - -0.015660934150218964, - 0.07009530067443848, - 0.019623158499598503, - -0.021674981340765953, - 0.025135308504104614, - 0.041232265532016754, - 0.0028540731873363256, - -0.04730714112520218, - -0.10117337852716446, - 0.1489221751689911, - 0.04751132056117058, - -0.007243161555379629, - -0.07903963327407837, - -0.07444322109222412, - 0.1213841661810875, - -0.05554497241973877, - -0.09977951645851135, - -0.024243319407105446, - 0.06540544331073761, - 0.14674149453639984, - -0.03724440559744835, - -0.04374585300683975, - 0.01693914085626602, - 0.11825428158044815, - 0.03569081053137779, - 0.0753612145781517, - 0.08030637353658676, - 0.08412176370620728, - -0.0316772535443306, - 0.027474910020828247, - 0.04578263685107231, - 0.07438791543245316, - 0.018667394295334816, - -0.01057466585189104, - 0.015312567353248596, - -0.004980470519512892, - -0.017349613830447197, - 0.039941322058439255, - -0.030104318633675575, - -0.02378353476524353, - -0.05073578283190727, - 0.020296549424529076, - -0.021932750940322876, - -0.01929684914648533, - -0.02258743718266487, - 0.08814115822315216, - -0.012019251473248005, - -0.003507012501358986, - 0.07939010858535767, - 0.047040652483701706, - -0.003144817193970084, - 0.05297129973769188, - -0.05507722496986389, - -0.0809173434972763, - 0.00025035813450813293, - -0.011652662418782711, - 0.021493054926395416, - 0.07551927119493484, - 0.03094794787466526, - -0.014037019573152065, - 0.11400190740823746, - 0.07999470084905624, - 0.005635857582092285, - 0.015396341681480408, - -0.10169004648923874, - 0.12436876446008682, - 0.08504507690668106, - -0.026727071031928062, - 0.03709007427096367, - -0.027228647843003273, - 0.06766551733016968, - 0.06970846652984619, - -0.12298206239938736, - -0.0971146747469902, - 0.004526240285485983, - 0.02746000699698925, - 0.0027486197650432587, - 0.062490131705999374, - -0.03380702808499336, - 0.019239531829953194, - 0.09373849630355835, - -0.05814457684755325, - -0.05950869992375374, - -0.02160336822271347, - 0.03824774548411369, - -0.05608155205845833, - 0.04353508725762367, - 0.06766485422849655, - -0.003041743068024516, - 0.004225033801048994, - 0.08421509712934494, - 0.00017703957564663142, - -0.0010390699608251452, - 0.04705546796321869, - -0.06358326226472855, - 0.00034183525713160634, - -0.015891849994659424, - -0.002021754626184702, - 0.05134209617972374, - 0.08724097162485123, - 0.04011628031730652, - 0.019229834899306297, - -0.03025737963616848, - -0.08454438298940659, - 0.005993340630084276, - 0.04916848614811897, - 0.05402490124106407, - 0.00048129374044947326, - -0.03917890414595604, - -0.03408196195960045, - -0.03487294539809227, - -0.008320807479321957, - 0.021197954192757607, - 0.08605959266424179, - -0.04811973497271538, - 0.016008159145712852, - 0.10645530372858047, - 0.025218332186341286, - -0.017298437654972076, - -0.06314175575971603, - -0.008154580369591713, - 0.015691498294472694, - 0.03530903533101082, - -0.04360399395227432, - -0.09208467602729797, - 0.010146601125597954, - 0.03526558727025986, - -0.020250951871275902, - 0.06626804172992706, - 0.03982805833220482, - -0.006070274394005537, - 0.04938044771552086, - -0.05812805891036987, - 0.029701484367251396, - -0.10431033372879028, - -0.048345278948545456, - -0.016431819647550583, - -0.014630720019340515, - -0.02587161399424076, - 0.05953620746731758, - 0.030425986275076866, - 0.059347450733184814, - 0.03141079470515251, - -0.0968332439661026, - -0.07510203123092651, - 0.05774034187197685, - 0.07826472818851471, - 0.018633490428328514, - 0.05628128722310066, - 0.06899655610322952, - -0.02497268281877041, - 0.08149556070566177, - 0.07042711228132248, - 0.06955641508102417, - -0.028492186218500137, - 0.0019789652433246374, - -0.060929059982299805, - 0.03403991833329201, - 0.04915456846356392, - -0.13164399564266205, - -0.08483780920505524, - -0.05679689720273018, - -0.040560707449913025, - 0.03440957888960838, - 0.008089478127658367, - 0.02630826272070408, - 0.02569650113582611, - -0.010009543038904667, - -0.08766819536685944, - -0.08839675784111023, - 0.08809170871973038, - -0.062497496604919434, - 0.006235625594854355, - -0.038621556013822556, - 0.032127439975738525, - 0.09276729077100754, - 0.026825709268450737, - 0.0031276263762265444, - -0.006966277491301298, - 0.032421525567770004, - -0.05033433437347412, - -0.026408985257148743, - 0.02409588173031807, - 0.017501119524240494, - -0.06563516706228256, - 0.04499836638569832, - -0.08486517518758774, - 0.07676851749420166, - -0.037436340004205704, - 0.17410025000572205, - -0.008606033399701118, - -0.06391268223524094, - -0.09141229093074799, - 0.018358217552304268, - -0.0684792771935463, - 0.04056498035788536, - 0.03488364443182945, - 0.04328327998518944, - 0.0009061801247298717, - -0.0624275878071785, - 0.12078380584716797, - 0.037144459784030914, - -0.07165496051311493, - -0.07345613092184067, - -0.053707756102085114, - -0.04189889505505562, - 0.007667348720133305, - 0.01936129480600357, - -0.06773543357849121, - -0.029206300154328346, - -0.006783606018871069, - -0.030652347952127457, - 0.10359456390142441, - 0.13664346933364868, - 0.07869520038366318, - -0.10931243747472763 - ] - }, - "p245_365.wav": { - "name": "p245", - "embedding": [ - 0.04112584516406059, - 0.08726230263710022, - 0.00127321295440197, - 0.010671555995941162, - 0.0015711896121501923, - 0.0467485636472702, - -0.12623216211795807, - 0.10142230242490768, - -0.04352802783250809, - 0.13175086677074432, - -0.10391835868358612, - 0.076558917760849, - -0.04221866652369499, - -0.15657715499401093, - -0.05823620781302452, - 0.05103347450494766, - -0.062332674860954285, - -0.04096382483839989, - -0.01970863528549671, - -0.0045085689052939415, - 0.039077937602996826, - 0.03307407349348068, - 0.016010694205760956, - 0.011748049408197403, - 0.0069719599559903145, - 0.050648033618927, - 0.012161587364971638, - 0.04174281284213066, - 0.034639906138181686, - -0.005568390712141991, - 0.0030991919338703156, - 0.09042387455701828, - -0.021874770522117615, - -0.003955637104809284, - 0.039373524487018585, - 0.02128692716360092, - 0.010052254423499107, - -0.06381519883871078, - -0.004180500283837318, - 0.011333816684782505, - -0.0465678907930851, - 0.054415784776210785, - 0.026203203946352005, - -0.0018796678632497787, - 0.024655090644955635, - 0.01858300156891346, - -0.023569587618112564, - -0.04451902583241463, - -0.10099248588085175, - 0.15526244044303894, - 0.08120197057723999, - 0.028176836669445038, - -0.06371336430311203, - -0.04195840656757355, - 0.10417163372039795, - 0.01197050604969263, - -0.08476345986127853, - -0.04097287356853485, - 0.06222613528370857, - 0.16537320613861084, - -0.02098729833960533, - -0.032440803945064545, - 0.025616241618990898, - 0.11778637766838074, - 0.025889577344059944, - 0.07177326828241348, - 0.09140962362289429, - 0.08379519730806351, - 0.011768057942390442, - 0.01607573963701725, - 0.06931505352258682, - 0.04476068168878555, - 0.03727860748767853, - -0.03985612094402313, - 0.016967138275504112, - 0.0008534220978617668, - -0.030293578281998634, - 0.018324896693229675, - -0.023679357022047043, - -0.046116020530462265, - -0.009451212361454964, - 0.005411647260189056, - -0.012021057307720184, - 0.030059784650802612, - -0.014583633281290531, - 0.037205930799245834, - 0.009698644280433655, - -0.01826796494424343, - 0.07759881764650345, - 0.0224064439535141, - 0.002851322293281555, - 0.02503081224858761, - -0.05489741638302803, - -0.08285070955753326, - 0.014180326834321022, - 0.008382025174796581, - -0.002772320993244648, - 0.061474066227674484, - 0.05221863090991974, - -0.01393075566738844, - 0.10943654924631119, - 0.02581770345568657, - -0.00017723068594932556, - 0.007316095754504204, - -0.10933838039636612, - 0.10973824560642242, - 0.0835016518831253, - -0.03164515644311905, - 0.020785687491297722, - -0.02924453467130661, - 0.04409591853618622, - 0.0824899896979332, - -0.13250473141670227, - -0.05412771552801132, - 0.04982062429189682, - 0.031956009566783905, - 6.668455898761749e-05, - 0.09407924860715866, - -0.00658376095816493, - 0.0060056885704398155, - 0.10368411988019943, - -0.07001943141222, - -0.06153719499707222, - -0.04400152340531349, - 0.04230962693691254, - -0.05268959701061249, - 0.050423964858055115, - 0.04410075768828392, - 0.0024622040800750256, - -0.025723040103912354, - 0.06466230750083923, - -0.005422959104180336, - -0.009957254864275455, - -0.027571795508265495, - -0.012881789356470108, - 0.06236990541219711, - -0.0556793287396431, - -0.0014831596054136753, - 0.012708916328847408, - 0.04171910881996155, - 0.03606502339243889, - 0.030228327959775925, - -0.03435101360082626, - -0.07704522460699081, - 0.005444097798317671, - 0.039757706224918365, - 0.06681306660175323, - -0.006908778101205826, - -0.043528519570827484, - -0.04595840349793434, - -0.012746384367346764, - -0.0036422049161046743, - -0.02871209941804409, - 0.08052375167608261, - 0.015930969268083572, - 0.010621496476233006, - 0.09187150746583939, - -0.027965731918811798, - -6.091967225074768e-05, - -0.040724802762269974, - -0.017955511808395386, - 0.031000010669231415, - 0.022714396938681602, - -0.06409069150686264, - -0.07308612763881683, - 0.016763221472501755, - 0.010439878329634666, - -0.009144148789346218, - 0.022250358015298843, - 0.018423013389110565, - 0.007613107096403837, - 0.0018019573763012886, - -0.062012240290641785, - 0.01793850213289261, - -0.09877065569162369, - -0.051235560327768326, - -0.0012287469580769539, - -0.024206828325986862, - -0.003313561202958226, - 0.07147953659296036, - 0.008255045861005783, - 0.025920119136571884, - -0.009584838524460793, - -0.09076570719480515, - -0.060340553522109985, - 0.08660906553268433, - 0.08346366137266159, - 0.004642804153263569, - 0.03309104964137077, - 0.050737038254737854, - -0.005033697001636028, - 0.03554762527346611, - 0.030979547649621964, - 0.09034738689661026, - -0.031212197616696358, - -0.03361131250858307, - -0.043710581958293915, - 0.05813612416386604, - 0.06395599246025085, - -0.09340469539165497, - -0.060637347400188446, - -0.03221616521477699, - -0.06122324615716934, - 0.031303949654102325, - -0.021684149280190468, - 0.010560864582657814, - 0.018786268308758736, - -0.050503358244895935, - -0.10379624366760254, - -0.08728988468647003, - 0.057631514966487885, - -0.05874260142445564, - -0.02306721732020378, - -0.07183223962783813, - 0.04564748331904411, - 0.08136852085590363, - 0.012906410731375217, - -0.01273279171437025, - 0.005995762534439564, - 0.005747789517045021, - -0.05391283705830574, - -0.03464343398809433, - 0.012833112850785255, - 0.028973987326025963, - -0.09113708138465881, - 0.005296451970934868, - -0.07694781571626663, - 0.06952116638422012, - -0.0602588877081871, - 0.10060738027095795, - -0.008128389716148376, - -0.0403563529253006, - -0.09242768585681915, - 0.01637028530240059, - -0.00890114065259695, - 0.06383129954338074, - 0.031996216624975204, - 0.03165358304977417, - 0.02813158743083477, - -0.06673400849103928, - 0.12569426000118256, - 0.0421484038233757, - -0.018706554546952248, - -0.07676831632852554, - -0.028314810246229172, - -0.0475817546248436, - 0.005302261561155319, - -0.00678743002936244, - -0.05808396637439728, - -0.011384803801774979, - 0.004848166834563017, - -0.016317343339323997, - 0.06753429025411606, - 0.11009517312049866, - 0.03625589236617088, - -0.1056508868932724 - ] - }, - "p245_031.wav": { - "name": "p245", - "embedding": [ - -0.0031721927225589752, - 0.08524402976036072, - -0.03624449670314789, - 0.007653478533029556, - -0.07755075395107269, - 0.013027937151491642, - -0.07759065181016922, - 0.10879097133874893, - -0.06021568924188614, - 0.13402292132377625, - -0.03959908336400986, - 0.11754312366247177, - -0.05208691954612732, - -0.09908919781446457, - 0.006137712858617306, - 0.05045641213655472, - -0.013862957246601582, - -0.030133042484521866, - -0.021975351497530937, - -0.06501494348049164, - 0.03146013617515564, - 0.036248765885829926, - 0.03857751190662384, - -0.030518101528286934, - 0.015737639740109444, - 0.09964320063591003, - -0.014124457724392414, - -0.004658829420804977, - -0.03618874400854111, - -0.09830702841281891, - -0.0565132275223732, - 0.04885271191596985, - -0.04080817103385925, - -0.021246083080768585, - 0.011830486357212067, - -0.023814676329493523, - -0.008890162222087383, - -0.024142621085047722, - 0.0032822154462337494, - 0.0011559776030480862, - -0.06783229112625122, - 0.07031477987766266, - 0.008366720750927925, - -0.04857456684112549, - 0.037570614367723465, - -0.02686663344502449, - -0.022127103060483932, - 0.004770314320921898, - -0.05465042591094971, - 0.12126389145851135, - 0.07148054242134094, - 0.0013978746719658375, - -0.052000582218170166, - -0.038945917040109634, - 0.0877581313252449, - -0.0012853490188717842, - -0.1108427494764328, - -0.0606062151491642, - 0.018383409827947617, - 0.09237228333950043, - -0.01754496805369854, - -0.022982580587267876, - 0.04116424173116684, - 0.08166461437940598, - 0.021070770919322968, - 0.05902737379074097, - 0.06914369761943817, - 0.06157761067152023, - 0.0006750235334038734, - -0.005168559029698372, - 0.0316203273832798, - 0.08342833817005157, - 0.03138510510325432, - 0.0012933446560055017, - 0.01936165615916252, - -0.037838663905858994, - -0.024873023852705956, - -0.03308756649494171, - -0.021764367818832397, - -0.06759238988161087, - -0.05789382755756378, - 0.0017544161528348923, - 0.014489218592643738, - -0.027200797572731972, - -0.005004999227821827, - 0.040076881647109985, - 0.08280247449874878, - -0.03549404442310333, - 0.07287822663784027, - 0.028236713260412216, - 0.005485543981194496, - 0.037038326263427734, - -0.06721062958240509, - -0.01733156479895115, - -0.008239630609750748, - 0.013282595202326775, - 0.060987960547208786, - 0.07531580328941345, - 0.028587471693754196, - 0.01072730217128992, - 0.07777917385101318, - 0.04216352105140686, - 0.029492966830730438, - -0.013710791245102882, - -0.08731023967266083, - 0.09865622222423553, - 0.11385050415992737, - -0.028927259147167206, - 0.02764062210917473, - -0.017414452508091927, - 0.0449213832616806, - 0.01242845319211483, - -0.07170018553733826, - -0.07027943432331085, - -0.04182536154985428, - -0.015742875635623932, - -0.003213199321180582, - 0.09362383186817169, - 0.019830595701932907, - 0.023868106305599213, - 0.09431757032871246, - -0.09610351920127869, - -0.10151641815900803, - -0.04136377573013306, - 0.03665371984243393, - -0.08635959774255753, - 0.0752180740237236, - 0.09716824442148209, - -0.0036956556141376495, - 0.05878785252571106, - 0.06644292175769806, - 0.03405730798840523, - 0.04098832607269287, - 0.029591821134090424, - -0.06001533195376396, - -0.02920944057404995, - -0.008939823135733604, - 0.014368940144777298, - 0.08213324844837189, - 0.05014430731534958, - 0.08771958202123642, - -0.021660495549440384, - 0.034290019422769547, - -0.07653642445802689, - 0.01075804140418768, - 0.035639986395835876, - -0.006889358162879944, - -0.03735308349132538, - -0.034836456179618835, - 0.0062777139246463776, - -0.0801110491156578, - -0.03233237937092781, - -0.013735095970332623, - 0.0917508453130722, - -0.0327858105301857, - 0.01868968829512596, - 0.1274670660495758, - 0.05708180367946625, - -0.03218041732907295, - -0.04901830852031708, - -0.024625025689601898, - 0.0012115312274545431, - 0.04969457909464836, - -0.10093742609024048, - -0.08161555975675583, - -0.043133363127708435, - 0.033579617738723755, - 0.019424431025981903, - 0.06229546666145325, - 0.07398265600204468, - 0.015393667854368687, - 0.025826681405305862, - -0.03185419365763664, - 0.05849052220582962, - -0.03296176344156265, - -0.04562387615442276, - -0.0325213260948658, - -0.09356756508350372, - -0.04916716739535332, - 0.0909791886806488, - -0.001040048897266388, - 0.05649947375059128, - -0.0184773076325655, - -0.06064695864915848, - -0.08358320593833923, - 0.011102572083473206, - 0.02335767261683941, - -0.025431666523218155, - 0.030378557741642, - 0.04727745056152344, - -0.06678543984889984, - -0.004855260252952576, - 0.042953010648489, - 0.09259198606014252, - -0.04301677271723747, - -0.0035032983869314194, - -0.05748031288385391, - 0.06704645603895187, - 0.09279294312000275, - -0.08104707300662994, - -0.03734207525849342, - -0.10613393038511276, - -0.026010671630501747, - 0.03861268609762192, - -0.023124318569898605, - 0.005864271894097328, - -0.007030686363577843, - 0.011617453768849373, - -0.06166680157184601, - -0.0882810652256012, - 0.09725643694400787, - -0.03475767746567726, - 0.011090045794844627, - -0.06370721757411957, - 0.019157353788614273, - 0.019455373287200928, - 0.06488795578479767, - -0.039806053042411804, - 0.023175522685050964, - 0.04877842217683792, - -6.431154906749725e-05, - 0.06412075459957123, - 0.08830168098211288, - 0.0709967091679573, - 0.01203211024403572, - -0.035194747149944305, - -0.08956709504127502, - 0.04621568322181702, - -0.027156643569469452, - 0.12659144401550293, - 0.008517014794051647, - -0.03722283989191055, - -0.09492410719394684, - 0.03638170287013054, - -0.008441217243671417, - 0.0255669504404068, - 0.07092460989952087, - 0.06971216946840286, - 0.02679571323096752, - -0.053276143968105316, - 0.09300364553928375, - 0.05749564245343208, - -0.0035181809216737747, - -0.03821427375078201, - -0.03906550258398056, - -0.05522899329662323, - 0.017660778015851974, - 0.007254130207002163, - -0.0853128731250763, - 0.039259783923625946, - -0.005107475910335779, - 0.037499185651540756, - 0.09226663410663605, - 0.0829063355922699, - 0.06584793329238892, - -0.09056061506271362 - ] - }, - "p245_245.wav": { - "name": "p245", - "embedding": [ - 0.040469616651535034, - 0.06697149574756622, - -0.028536299243569374, - 0.03860078006982803, - -0.03649842366576195, - 0.08415406197309494, - -0.13170062005519867, - 0.1127922534942627, - -0.03434142842888832, - 0.13944363594055176, - -0.048680078238248825, - 0.10478870570659637, - 0.002407509833574295, - -0.1726829707622528, - -0.03935525566339493, - 0.0237045306712389, - -0.0475279837846756, - -0.009100881405174732, - -0.0736503005027771, - -0.02344600111246109, - 0.060068707913160324, - 0.03575403243303299, - 0.02900128997862339, - -0.04906942695379257, - -0.0032114554196596146, - 0.04482799023389816, - -0.012749578803777695, - 0.03877810016274452, - 0.01054377667605877, - -0.07627420872449875, - -0.02277340739965439, - 0.11499439179897308, - -0.048417653888463974, - 0.026249002665281296, - 0.040331415832042694, - -0.006751219276338816, - -0.017194421961903572, - -0.04119975119829178, - -0.014180649071931839, - 0.01706862263381481, - -0.02906564436852932, - 0.05582103133201599, - 0.020991722121834755, - -0.0034312624484300613, - 0.06332585960626602, - -0.015573405660688877, - -0.039775263518095016, - -0.024358276277780533, - -0.08939310908317566, - 0.157721146941185, - 0.06292953342199326, - -0.010863220319151878, - -0.07574648410081863, - -0.06337282061576843, - 0.09160132706165314, - -0.012078986503183842, - -0.13812774419784546, - -0.026275936514139175, - 0.07188798487186432, - 0.1630236804485321, - -0.023256924003362656, - -0.03001389466226101, - 0.03802190348505974, - 0.09937144815921783, - 0.05001205578446388, - 0.08253724873065948, - 0.09962158650159836, - 0.1048799455165863, - -0.007802274543792009, - 0.02256222814321518, - 0.027724727988243103, - 0.0760016068816185, - 0.06456547975540161, - -0.007335794623941183, - 0.04875495657324791, - -0.005384575575590134, - 0.004458636976778507, - -0.021884478628635406, - -0.04839785024523735, - -0.01384691521525383, - 0.01243191584944725, - 0.005546243861317635, - 0.032536011189222336, - 0.02778775244951248, - -0.05343516543507576, - 0.040348172187805176, - 0.03786475956439972, - -0.01819605566561222, - 0.04128112643957138, - 0.060705363750457764, - 0.035927243530750275, - 0.04794657230377197, - -0.07246753573417664, - -0.0977635383605957, - 0.021170837804675102, - 0.01245868019759655, - 0.01223048660904169, - 0.045533470809459686, - 0.028808288276195526, - -0.0068528070114552975, - 0.09040618687868118, - 0.037028685212135315, - -0.03731880709528923, - 0.024439087137579918, - -0.08863583207130432, - 0.11545675992965698, - 0.10208885371685028, - -0.011238603852689266, - 0.03215021640062332, - -0.06371717154979706, - 0.071348175406456, - 0.057960424572229385, - -0.1159331202507019, - -0.07033968716859818, - 0.0311172716319561, - 0.008666956797242165, - -0.00534119363874197, - 0.1311578005552292, - 0.013315784744918346, - 0.02748023346066475, - 0.09390349686145782, - -0.07587197422981262, - -0.033088281750679016, - -0.023208852857351303, - 0.04134207218885422, - -0.06593947857618332, - 0.04860245808959007, - 0.014203306287527084, - -0.00037322891876101494, - -0.003943283576518297, - 0.07663953304290771, - -0.020262496545910835, - 0.021513596177101135, - 0.007742593064904213, - -0.047884151339530945, - 0.033850912004709244, - -0.02896062284708023, - -2.3963861167430878e-05, - 0.042762577533721924, - 0.03897835686802864, - 0.063753642141819, - -0.02734399400651455, - -0.0418197363615036, - -0.10401983559131622, - 0.01063578762114048, - 0.02953163906931877, - 0.06402745097875595, - -0.014130592346191406, - 0.0007553929463028908, - -0.03305567055940628, - -0.07836858928203583, - 0.05484578758478165, - -0.04186864569783211, - 0.07789556682109833, - 0.0054706912487745285, - -0.011557930149137974, - 0.09604483097791672, - 0.0058167120441794395, - 0.0031894436106085777, - -0.039714790880680084, - -0.023130377754569054, - 0.00124570750631392, - 0.041653916239738464, - -0.08527734875679016, - -0.054195620119571686, - -0.006153625901788473, - 0.023451585322618484, - -0.016231298446655273, - 0.04577047750353813, - 0.0631980374455452, - 0.010974802076816559, - 0.02405364438891411, - -0.06229448318481445, - -0.0193592868745327, - -0.1025584489107132, - -0.06289488077163696, - -0.006051839794963598, - -0.047883838415145874, - -0.009523879736661911, - 0.08666342496871948, - 0.024977881461381912, - 0.01414379384368658, - -0.03422355651855469, - -0.06939958781003952, - -0.08586375415325165, - 0.05577857419848442, - 0.04572942480444908, - -0.006547700613737106, - 0.0334157794713974, - 0.05490213632583618, - -0.02856912463903427, - 0.06284814327955246, - 0.07645009458065033, - 0.08860714733600616, - -0.031002987176179886, - 0.009740835055708885, - -0.08953236043453217, - 0.1090899184346199, - 0.10271036624908447, - -0.05937965214252472, - -0.0976703017950058, - -0.009388644248247147, - -0.08970456570386887, - 0.027566464617848396, - -0.054483138024806976, - -0.015807637944817543, - 0.06063133478164673, - -0.006865249015390873, - -0.1236935406923294, - -0.08057098090648651, - 0.09565722942352295, - -0.07615500688552856, - -0.013083500787615776, - -0.07414872199296951, - 0.0373181477189064, - 0.08579879254102707, - 0.01893925666809082, - -0.04318736121058464, - 0.0015953457914292812, - 0.06155230849981308, - -0.05155723914504051, - 0.009965279139578342, - 0.03288400173187256, - 0.023278342559933662, - -0.10208860784769058, - -0.01829860359430313, - -0.06304147094488144, - 0.008918233215808868, - -0.05091467499732971, - 0.1172068864107132, - 0.010979154147207737, - -0.056741323322057724, - -0.05618629604578018, - 0.07545953243970871, - -0.022234296426177025, - 0.05180518701672554, - 0.04076996445655823, - 0.08367861807346344, - 0.04136915132403374, - -0.09157460927963257, - 0.10898593068122864, - 0.030023545026779175, - -0.030543768778443336, - -0.09345605224370956, - -0.03846116364002228, - -0.043233878910541534, - 0.02639087289571762, - 0.017378129065036774, - -0.0801430344581604, - -0.003115958534181118, - 0.0249668937176466, - -0.006593803409487009, - 0.04361836239695549, - 0.12243619561195374, - 0.046990104019641876, - -0.10784579813480377 - ] - }, - "p245_219.wav": { - "name": "p245", - "embedding": [ - 0.07222731411457062, - 0.020960157737135887, - -0.012612464837729931, - -0.010866774246096611, - -0.024798311293125153, - 0.041596509516239166, - -0.12056693434715271, - 0.1051354855298996, - -0.014153889380395412, - 0.07093960791826248, - -0.0833030492067337, - 0.09026588499546051, - -0.0006825346499681473, - -0.11566475033760071, - -0.04158276319503784, - 0.027302339673042297, - -0.015957005321979523, - -0.016128556802868843, - -0.06023886427283287, - -0.022953743115067482, - 0.013349421322345734, - 0.0479513481259346, - 0.01142415963113308, - -0.0032521607354283333, - 0.026839502155780792, - 0.0386260524392128, - -0.009299049153923988, - 0.010715622454881668, - 0.002526539145037532, - 0.016378700733184814, - 0.024460837244987488, - 0.07257473468780518, - -0.03677280619740486, - -0.0036418421659618616, - 0.041019268333911896, - 0.01662302576005459, - 0.009967396035790443, - -0.09088870882987976, - -0.026297269389033318, - 0.029302295297384262, - -0.05176599323749542, - 0.07723300158977509, - 0.06828534603118896, - -0.012409724295139313, - 0.010292649269104004, - 0.011088041588664055, - 0.0020930839236825705, - -0.05703490227460861, - -0.11804747581481934, - 0.16962739825248718, - -0.0030464492738246918, - 0.036971334367990494, - -0.12387686967849731, - -0.005087150260806084, - 0.0691189244389534, - -0.01608886942267418, - -0.04239609092473984, - -0.04493209347128868, - 0.03722387179732323, - 0.12413974851369858, - 0.00318712554872036, - -0.04723324626684189, - 0.018990851938724518, - 0.06539860367774963, - 0.04080486670136452, - 0.0038003958761692047, - 0.13416001200675964, - 0.10878852009773254, - -0.01956210285425186, - 0.028149627149105072, - 0.0668376013636589, - 0.03167200833559036, - 0.036696452647447586, - -0.014818298630416393, - 0.013944604434072971, - -0.02147645317018032, - -0.02467886172235012, - 0.011683049611747265, - -0.027359914034605026, - -0.03582581877708435, - 0.009972562082111835, - 0.011266171932220459, - 0.016464529559016228, - 0.07649891078472137, - -0.06265327334403992, - 0.05017147213220596, - 0.030588701367378235, - -0.0023483335971832275, - 0.06914664804935455, - 0.07247161120176315, - -0.005590131971985102, - 0.0004338361322879791, - -0.05602840334177017, - -0.08998550474643707, - -0.005046145990490913, - -0.00946731586009264, - 0.04419659078121185, - 0.02627626061439514, - 0.03161316365003586, - -0.0028024488128721714, - 0.09361158311367035, - 0.007027469575405121, - 0.004248812794685364, - -0.014038534834980965, - -0.06931654363870621, - 0.09949930012226105, - 0.1126985251903534, - -0.01706080138683319, - 0.015995021909475327, - -0.04667337238788605, - 0.007100168615579605, - 0.04082728177309036, - -0.07544156163930893, - -0.042587485164403915, - 0.05652504414319992, - 0.031760238111019135, - 0.06085653230547905, - 0.11034698784351349, - 0.01021426822990179, - 0.023538703098893166, - 0.05772740766406059, - -0.07498112320899963, - -0.025298113003373146, - 0.01985420659184456, - 0.014938198029994965, - -0.01102566346526146, - 0.01983753964304924, - 0.0340501107275486, - 0.030473582446575165, - -0.02773580327630043, - 0.06282347440719604, - 0.011202976107597351, - 0.0073677608743309975, - -0.05712639167904854, - 0.04998690262436867, - 0.09543541073799133, - 0.026846786960959435, - -0.02943497709929943, - 0.05854041129350662, - 0.08381514251232147, - 0.02618376538157463, - 0.055659547448158264, - -0.05341917276382446, - -0.10958400368690491, - -0.005204768851399422, - 0.049045201390981674, - 0.06588643789291382, - -0.05262218043208122, - -0.024723384529352188, - -0.06857429444789886, - -0.01420474611222744, - 0.005946789868175983, - 0.018610086292028427, - 0.06461013853549957, - 0.03411216288805008, - -0.013558970764279366, - 0.0823804959654808, - -0.02489832043647766, - 0.022905703634023666, - -0.017179548740386963, - 0.01042818184942007, - 0.009969260543584824, - 0.04411905258893967, - -0.011171195656061172, - -0.07573098689317703, - 0.0016736872494220734, - 0.0069807711988687515, - -0.01731184870004654, - 0.01400594413280487, - 0.032033585011959076, - -0.03228658437728882, - 0.003496539546176791, - -0.10312718152999878, - 0.031407810747623444, - -0.09921270608901978, - -0.004203546792268753, - 0.04617861658334732, - -0.030386850237846375, - -0.0023897187784314156, - 0.09489292651414871, - 0.022600259631872177, - 0.0468139722943306, - -0.025521378964185715, - -0.09814317524433136, - -0.01159774698317051, - 0.049467772245407104, - 0.061336699873209, - -0.04028693586587906, - 0.010425148531794548, - 0.024396009743213654, - 0.03187078982591629, - 0.03316335380077362, - 0.05949288606643677, - 0.050487831234931946, - -0.06617512553930283, - -0.05275246128439903, - -0.005630879662930965, - 0.11891871690750122, - 0.014252698980271816, - -0.062019020318984985, - -0.04791417717933655, - -0.009605512954294682, - -0.030403906479477882, - -0.012217089533805847, - -0.0018911436200141907, - 0.02707720547914505, - 0.05189976468682289, - -0.03051159903407097, - -0.1098608449101448, - -0.06041586399078369, - 0.00713726133108139, - -0.055069535970687866, - 0.014702294021844864, - -0.0674569383263588, - 0.017536701634526253, - 0.09175148606300354, - 0.007593287155032158, - 0.015194819308817387, - -0.022600969299674034, - -0.04721808433532715, - -0.06713007390499115, - -0.060297027230262756, - -0.011572282761335373, - 0.02616897039115429, - -0.0563252717256546, - -0.015114138834178448, - -0.052414096891880035, - 0.07349498569965363, - -0.023053035140037537, - 0.09905221313238144, - 0.026766197755932808, - -0.0525803379714489, - -0.06694452464580536, - -0.02237970568239689, - -0.030701957643032074, - 0.06547613441944122, - 0.05125664174556732, - 0.014116205275058746, - 0.0268840454518795, - -0.04486292600631714, - 0.08183442056179047, - 0.0683550089597702, - -0.054693207144737244, - -0.06583307683467865, - -0.02677665464580059, - 0.002136124297976494, - 0.025869105011224747, - 0.0006372611969709396, - -0.0019800327718257904, - 0.03802599385380745, - 0.015055319294333458, - -0.021273203194141388, - 0.04764735698699951, - 0.0814167708158493, - 0.06924223154783249, - -0.09193402528762817 - ] - }, - "p245_046.wav": { - "name": "p245", - "embedding": [ - 0.04791818931698799, - 0.08609864115715027, - -0.02030625194311142, - 0.019749164581298828, - -0.04697047173976898, - 0.06421241909265518, - -0.1733590066432953, - 0.14996123313903809, - -0.036069706082344055, - 0.14066368341445923, - -0.06150658428668976, - 0.0978202074766159, - -0.026696739718317986, - -0.18999455869197845, - 0.00092223787214607, - 0.058914393186569214, - -0.005148790776729584, - -0.037921808660030365, - -0.006316957529634237, - -0.015434525907039642, - 0.023458244279026985, - 0.021961109712719917, - -0.008580186404287815, - 0.013651471585035324, - 0.03340781107544899, - 0.05684586986899376, - -0.029509807005524635, - 0.003958610817790031, - -0.01880345493555069, - -0.00290899770334363, - -0.026967283338308334, - 0.1127498671412468, - -0.06037798523902893, - -0.00849539041519165, - 0.06841224431991577, - -0.007149490527808666, - -0.03532452508807182, - -0.06844106316566467, - -0.0024724407121539116, - -0.021227112039923668, - -0.07278308272361755, - 0.0775364339351654, - 0.041226793080568314, - -0.013608792796730995, - 0.039751432836055756, - 0.024538526311516762, - 0.008911735378205776, - -0.03718043863773346, - -0.0983007401227951, - 0.1237051710486412, - 0.06161168962717056, - -0.005780732724815607, - -0.07843081653118134, - -0.03526226058602333, - 0.09053707867860794, - 0.005079975351691246, - -0.09155043959617615, - -0.05482185259461403, - 0.09161026030778885, - 0.1439078152179718, - -0.03793584555387497, - -0.03414825350046158, - 0.023337747901678085, - 0.12157924473285675, - 0.05672366917133331, - 0.09753498435020447, - 0.05818276107311249, - 0.1317387819290161, - -0.021914232522249222, - 0.007747824303805828, - 0.05691039562225342, - 0.036855340003967285, - 0.04286675155162811, - -0.044416047632694244, - 0.014036049135029316, - -0.011720127426087856, - -0.022281821817159653, - -0.0031427089124917984, - -0.02866743877530098, - -0.02997453510761261, - -0.007567734457552433, - -0.01350860670208931, - -0.002449492923915386, - 0.04129207879304886, - -0.02476903423666954, - 0.02982398308813572, - 0.09159794449806213, - -0.0196663960814476, - 0.08686796575784683, - 0.04026409238576889, - 0.00786940474063158, - 0.06666909158229828, - -0.11174146831035614, - -0.05790012702345848, - 0.05675750970840454, - -0.007265503518283367, - 0.002614246681332588, - 0.07997490465641022, - 0.04901735484600067, - -0.009443875402212143, - 0.12860631942749023, - 0.022172836586833, - 0.006866768002510071, - 0.036836639046669006, - -0.09122829139232635, - 0.14913401007652283, - 0.05719463527202606, - -0.04908089339733124, - 0.04208863526582718, - -0.06420233845710754, - 0.04331347718834877, - 0.07234324514865875, - -0.13189789652824402, - -0.04517822712659836, - 0.054003894329071045, - 0.012185444124042988, - -0.04223601892590523, - 0.15393370389938354, - 0.008404126390814781, - 0.014087095856666565, - 0.10197106748819351, - -0.08806939423084259, - -0.07262252271175385, - -0.019862279295921326, - 0.04963568598031998, - -0.09022919833660126, - 0.0740722194314003, - 0.06498444825410843, - -0.004559494089335203, - 0.021265864372253418, - 0.07214614748954773, - -0.0029693455435335636, - -0.001893337583169341, - -0.009868279099464417, - -0.020660530775785446, - 0.03809455782175064, - -0.015640880912542343, - 0.01762366108596325, - 0.005972175393253565, - 0.005791465751826763, - 0.05788028985261917, - -0.004773234482854605, - 0.006649308372288942, - -0.10859546065330505, - 0.006629674695432186, - 0.04130848869681358, - 0.10004925727844238, - -0.01395219936966896, - -0.02369247004389763, - -0.04772362858057022, - -0.07501162588596344, - 0.0024065510369837284, - -0.02374560758471489, - 0.07877032458782196, - 0.005498568993061781, - 0.0076546743512153625, - 0.10204358398914337, - 0.04980762302875519, - 0.027168525382876396, - -0.06702670454978943, - -0.022298963740468025, - 0.008537614718079567, - 0.062157463282346725, - -0.09259136021137238, - -0.06668514013290405, - -0.021348848938941956, - 0.028708118945360184, - -0.027795374393463135, - 0.0534653477370739, - 0.04086209088563919, - 0.04209458455443382, - 0.012112114578485489, - -0.08924613893032074, - 0.02957664057612419, - -0.0890149474143982, - -0.06426816433668137, - -0.01918785274028778, - -0.0034944163635373116, - -0.02150624617934227, - 0.0808963030576706, - 0.014248626306653023, - 0.03842344135046005, - -0.03283168375492096, - -0.05696577578783035, - -0.07742127776145935, - 0.045184046030044556, - 0.059112273156642914, - -0.04070518910884857, - 0.02882145345211029, - 0.04365237057209015, - -0.04898493364453316, - 0.01126204151660204, - 0.06374762952327728, - 0.10832351446151733, - -0.029205352067947388, - 0.028193579986691475, - -0.05941461771726608, - 0.10252612829208374, - 0.0975145474076271, - -0.08362990617752075, - -0.08715152740478516, - -0.020395338535308838, - -0.04796089231967926, - 0.013318775221705437, - -0.03955643251538277, - -0.0023355367593467236, - 0.0001646681921556592, - -0.023714236915111542, - -0.09558136016130447, - -0.09607821702957153, - 0.06602247059345245, - -0.07804249227046967, - 0.004021617118269205, - -0.11487875133752823, - 0.05909181013703346, - 0.07432693243026733, - 0.03395532816648483, - -0.05898323655128479, - -0.03330725058913231, - 0.04996313899755478, - -0.017530035227537155, - 0.025102373212575912, - 0.06493964791297913, - 0.04012791067361832, - -0.1265983283519745, - -0.016959384083747864, - -0.05619068816304207, - 0.08316856622695923, - -0.04807935655117035, - 0.15506158769130707, - 0.024122335016727448, - -0.04619833081960678, - -0.07194448262453079, - 0.017747873440384865, - 0.024276399984955788, - 0.04009713977575302, - 0.019906984642148018, - 0.06824712455272675, - 0.04056765139102936, - -0.036776453256607056, - 0.10655753314495087, - 0.036514878273010254, - -0.009652627632021904, - -0.05594159662723541, - -0.04375306889414787, - -0.04857981204986572, - 0.030800441280007362, - 0.00521886209025979, - -0.12298768013715744, - -0.022811580449342728, - 0.046436429023742676, - 0.0037898181471973658, - 0.06626251339912415, - 0.13355503976345062, - 0.06465938687324524, - -0.12205636501312256 - ] - }, - "p245_300.wav": { - "name": "p245", - "embedding": [ - 0.049968041479587555, - 0.09801331162452698, - 0.01460002176463604, - -0.005377164110541344, - -0.0104905404150486, - 0.07790542393922806, - -0.1693437546491623, - 0.1378060132265091, - -0.05347730219364166, - 0.1628655195236206, - -0.0824340283870697, - 0.08920694887638092, - -0.012255407869815826, - -0.2125743329524994, - -0.04178578406572342, - 0.03335980325937271, - -0.04350697249174118, - 0.005362793803215027, - -0.042598895728588104, - -0.02142670378088951, - 0.03858514130115509, - 0.03654477000236511, - 0.0021675927564501762, - -0.00543582160025835, - 0.02252454124391079, - 0.04389685019850731, - -0.011978646740317345, - 0.029601523652672768, - -0.009745283983647823, - -0.042751483619213104, - -0.024842703714966774, - 0.13371127843856812, - -0.04272344708442688, - 0.02748459205031395, - 0.07552188634872437, - -0.002824552357196808, - -0.01807442493736744, - -0.043116770684719086, - -0.013014223426580429, - 0.014325144700706005, - -0.04472476989030838, - 0.05777670443058014, - 0.024044761434197426, - 0.017070749774575233, - 0.057123128324747086, - 0.039233241230249405, - 0.011941354721784592, - -0.04855477064847946, - -0.07187508046627045, - 0.14665763080120087, - 0.06575113534927368, - -0.007841753773391247, - -0.06874606758356094, - -0.0667777806520462, - 0.10466133803129196, - -0.021709300577640533, - -0.11968672275543213, - -0.015139508992433548, - 0.09630942344665527, - 0.1690642237663269, - -0.03314473479986191, - -0.04365881532430649, - 0.02511690929532051, - 0.11127861589193344, - 0.0002902494743466377, - 0.11083859205245972, - 0.07260331511497498, - 0.08234839141368866, - -0.005470833275467157, - 0.017871864140033722, - 0.03815460950136185, - 0.03642918914556503, - 0.06226321682333946, - -0.061770565807819366, - 0.027827410027384758, - 0.0015827817842364311, - -0.031456634402275085, - 0.010313575156033039, - -0.02652036026120186, - 2.4028937332332134e-05, - -0.01255882903933525, - -0.0021326979622244835, - -0.006473037879914045, - 0.006419507786631584, - -0.03508232906460762, - 0.015024224296212196, - 0.026230130344629288, - -0.012025833129882812, - 0.07365226745605469, - 0.06338165700435638, - 0.03642941638827324, - 0.053670480847358704, - -0.06668940931558609, - -0.08650785684585571, - 0.03812621161341667, - -0.002086791442707181, - -0.0179511196911335, - 0.0647687315940857, - 0.05084738880395889, - -0.010798136703670025, - 0.10493838787078857, - 0.04226839542388916, - 0.0013655535876750946, - 0.03332860767841339, - -0.12789404392242432, - 0.10738347470760345, - 0.07821457087993622, - -0.033362314105033875, - 0.054702404886484146, - -0.05284057557582855, - 0.07704795897006989, - 0.09062460064888, - -0.14442186057567596, - -0.06370437145233154, - 0.046465251594781876, - 0.024929773062467575, - -0.0005151897203177214, - 0.11791570484638214, - -0.00872720219194889, - -0.005677691660821438, - 0.0838419571518898, - -0.07578405737876892, - -0.05144283547997475, - -0.04001475125551224, - 0.05565605312585831, - -0.09013524651527405, - 0.06665147095918655, - 0.03782406076788902, - -0.0024431077763438225, - -0.004615898244082928, - 0.08816733956336975, - -0.016630027443170547, - -0.0006712350295856595, - -0.024540826678276062, - -0.005647690035402775, - 0.020359162241220474, - -0.03564242273569107, - 0.02166319079697132, - 0.0017500901594758034, - 0.037341468036174774, - 0.03697217255830765, - 0.024965092539787292, - -0.053579505532979965, - -0.0859847366809845, - -0.005547437816858292, - 0.04842324182391167, - 0.07005086541175842, - -0.009699261747300625, - -0.012924430891871452, - -0.04207606986165047, - -0.06437771022319794, - 0.033018600195646286, - -0.04126707464456558, - 0.08047182857990265, - 0.01330801472067833, - 0.007306352723389864, - 0.10757339000701904, - 0.02102476917207241, - -0.006282346323132515, - -0.0706862136721611, - -0.014108334667980671, - -0.003657124238088727, - 0.039428357034921646, - -0.09215399622917175, - -0.06160061061382294, - -0.006053785793483257, - 0.009721261449158192, - -0.007377368398010731, - 0.0491500049829483, - 0.04245437681674957, - 0.01808256283402443, - 0.0395950973033905, - -0.08897961676120758, - 0.005591139663010836, - -0.13117045164108276, - -0.07865756750106812, - -0.023884737864136696, - -0.03147459775209427, - 0.001926939468830824, - 0.09207874536514282, - 0.002940988866612315, - 0.00806216336786747, - -0.02848585695028305, - -0.07214745134115219, - -0.07034303992986679, - 0.0618055984377861, - 0.07659806311130524, - -0.01004987582564354, - 0.03028515726327896, - 0.03506414592266083, - -0.038056470453739166, - 0.07746073603630066, - 0.08469566702842712, - 0.11450894176959991, - -0.019682489335536957, - 0.052997857332229614, - -0.0664597749710083, - 0.08537492156028748, - 0.07700799405574799, - -0.06556370854377747, - -0.11971497535705566, - -0.014681736938655376, - -0.057039935141801834, - 0.02835647016763687, - -0.015776991844177246, - 0.005518275313079357, - 0.007290154695510864, - -0.019666224718093872, - -0.06684578210115433, - -0.0738009661436081, - 0.08203267306089401, - -0.054844025522470474, - -0.01612848788499832, - -0.07367096096277237, - 0.06959375739097595, - 0.07275247573852539, - 0.034886546432971954, - -0.037770915776491165, - -0.010585675947368145, - 0.04974190145730972, - -0.05061698704957962, - -0.010638154111802578, - 0.014809029176831245, - 0.008751391433179379, - -0.10545440763235092, - 0.019290614873170853, - -0.07960225641727448, - 0.08578118681907654, - -0.07007355988025665, - 0.13631197810173035, - -0.013089260086417198, - -0.08219916373491287, - -0.06222696602344513, - 0.031383223831653595, - -0.005087338387966156, - 0.024380620568990707, - 0.024639854207634926, - 0.07244230806827545, - 0.029566925019025803, - -0.051001351326704025, - 0.08489914238452911, - 0.01831376738846302, - -0.008295181207358837, - -0.05863580107688904, - -0.05338042974472046, - -0.031499359756708145, - 0.01197637990117073, - -0.011564143002033234, - -0.1041250228881836, - -0.011529695242643356, - 0.01753697171807289, - -0.002906979527324438, - 0.05715493857860565, - 0.1306975781917572, - 0.04335624724626541, - -0.1530175358057022 - ] - }, - "p245_359.wav": { - "name": "p245", - "embedding": [ - 0.030348509550094604, - 0.07768439501523972, - 0.008555657230317593, - 0.026563158258795738, - -0.003425696399062872, - 0.03968236595392227, - -0.14213767647743225, - 0.09931924939155579, - -0.03579817712306976, - 0.11898067593574524, - -0.1088065654039383, - 0.03258625045418739, - -0.05459073558449745, - -0.1744261384010315, - -0.03414885699748993, - 0.047865115106105804, - -0.059553518891334534, - -0.027496717870235443, - -0.018090086057782173, - 0.0011552581563591957, - 0.039432890713214874, - 0.02287905663251877, - -0.021516846492886543, - 0.022532237693667412, - 0.019280992448329926, - 0.036701351404190063, - 0.02423138916492462, - 0.0501369908452034, - 0.014246553182601929, - 0.024666864424943924, - 0.009850061498582363, - 0.1277129352092743, - -0.013467584736645222, - 0.008990117348730564, - 0.0611703135073185, - 0.04214859753847122, - -0.02114127390086651, - -0.043290071189403534, - -0.015811145305633545, - 0.0068585313856601715, - -0.0882788747549057, - 0.04824105650186539, - 0.053009338676929474, - 0.01199687086045742, - 0.029852204024791718, - 0.04430702328681946, - 0.007568409666419029, - -0.05850266292691231, - -0.09625974297523499, - 0.15484432876110077, - 0.07401220500469208, - -0.017841212451457977, - -0.050559982657432556, - -0.0809403508901596, - 0.08972951024770737, - 0.00837460346519947, - -0.09471327066421509, - -0.02482648566365242, - 0.11383843421936035, - 0.16216732561588287, - -0.03047655150294304, - -0.01958788000047207, - 0.003326050005853176, - 0.12937864661216736, - 0.03136890381574631, - 0.10415197163820267, - 0.03820474445819855, - 0.0994965136051178, - 0.014583373442292213, - 0.018332550302147865, - 0.09276241809129715, - 0.0392945222556591, - 0.03993486240506172, - -0.044743433594703674, - 0.016079897060990334, - 0.04637405276298523, - -0.044201891869306564, - 0.05792469531297684, - 0.003222801722586155, - -5.4017058573663235e-05, - 0.002703331410884857, - -0.018949167802929878, - -0.01241887267678976, - 0.00048419320955872536, - -0.010416262783110142, - 0.029480237513780594, - 0.023609528318047523, - -0.004579249769449234, - 0.0852782130241394, - 0.04276464879512787, - -0.0032359501346945763, - 0.06789330393075943, - -0.038316838443279266, - -0.09003821015357971, - -0.004708915017545223, - -0.019900182262063026, - 0.027956852689385414, - 0.06483131647109985, - 0.046050697565078735, - -0.010565008036792278, - 0.09901370108127594, - 0.011695018038153648, - 0.015961287543177605, - 0.037968698889017105, - -0.13788272440433502, - 0.10301129519939423, - 0.05034896731376648, - -0.034958381205797195, - 0.01763630285859108, - -0.023578613996505737, - 0.0717649757862091, - 0.10025953501462936, - -0.14547041058540344, - -0.0309885423630476, - 0.06549885123968124, - 0.028332870453596115, - -0.007599616423249245, - 0.11848878860473633, - -0.010113263502717018, - -0.056973766535520554, - 0.11067688465118408, - -0.08056318759918213, - -0.0626942366361618, - -0.04061775654554367, - 0.05491669476032257, - -0.08855116367340088, - 0.01893702708184719, - 0.04150834679603577, - -0.008965986780822277, - -0.03933119773864746, - 0.08321428298950195, - -0.018402911722660065, - -0.004150300286710262, - -0.02816198393702507, - -0.001608746126294136, - 0.08218800276517868, - -0.0534159317612648, - 0.03766867518424988, - 0.03371047601103783, - 0.0400828942656517, - 0.015166142955422401, - 0.04485899955034256, - -0.06117885187268257, - -0.09417816996574402, - 0.002391309477388859, - 0.07609342038631439, - 0.07274405658245087, - -0.019503481686115265, - -0.03525914251804352, - -0.05850470811128616, - -0.06206020712852478, - 0.05045386776328087, - -0.001446128822863102, - 0.07098669558763504, - 0.023719200864434242, - -0.04152993857860565, - 0.12781396508216858, - -0.024683237075805664, - 0.006563086993992329, - -0.07417108863592148, - -0.011478226631879807, - 0.01909732073545456, - 0.043920695781707764, - -0.08255484700202942, - -0.07366518676280975, - 0.012730870395898819, - 0.020668990910053253, - 0.012241153046488762, - -0.0249724630266428, - 0.00860169529914856, - 0.010125966742634773, - 0.021382739767432213, - -0.07976174354553223, - 0.012401029467582703, - -0.13077697157859802, - -0.06890575587749481, - -0.023223867639899254, - -0.005381791386753321, - 0.030310755595564842, - 0.0655221939086914, - -0.019187504425644875, - -0.010231351479887962, - 0.014959679916501045, - -0.09263556450605392, - -0.04564449563622475, - 0.09276473522186279, - 0.10907714068889618, - 0.012481685727834702, - 0.0659794807434082, - 0.04486147314310074, - -0.06362027674913406, - 0.019148707389831543, - 0.04368545487523079, - 0.14140041172504425, - -0.03712480515241623, - 0.007988227531313896, - -0.05061483383178711, - 0.08063691854476929, - 0.04381818324327469, - -0.09705153107643127, - -0.086191326379776, - -0.005536822602152824, - -0.03728656470775604, - 0.0372922383248806, - -0.02223260886967182, - 0.012410702183842659, - -0.020342914387583733, - -0.04747268930077553, - -0.06914907693862915, - -0.07041965425014496, - 0.045562516897916794, - -0.031698767095804214, - -0.029494337737560272, - -0.07949737459421158, - 0.06260428577661514, - 0.0687737762928009, - 0.05155980587005615, - -0.013788032345473766, - 0.006924600340425968, - 0.037457339465618134, - -0.08222178369760513, - -0.06086341291666031, - 0.007522867992520332, - -0.03559621796011925, - -0.10168305039405823, - -0.003255570773035288, - -0.07277602702379227, - 0.10974694788455963, - -0.07327708601951599, - 0.12061531841754913, - -0.03703213110566139, - -0.07921376824378967, - -0.06840967386960983, - -0.004409912042319775, - 0.00881499145179987, - 0.03542075678706169, - 0.04922432824969292, - 0.03733903169631958, - 0.007337949704378843, - -0.01376580074429512, - 0.1118457168340683, - 0.004669263958930969, - 0.0177265927195549, - -0.032833073288202286, - -0.02352018468081951, - -0.022904200479388237, - 0.00863576028496027, - -0.019273050129413605, - -0.09106748551130295, - -0.0032625719904899597, - 0.01978735812008381, - -0.04562909156084061, - 0.030306469649076462, - 0.11061010509729385, - 0.055528730154037476, - -0.11465846002101898 - ] - }, - "p245_102.wav": { - "name": "p245", - "embedding": [ - 0.0430225133895874, - 0.0539373978972435, - -0.03737715631723404, - 0.03839384764432907, - -0.07569047063589096, - 0.0445113405585289, - -0.13211029767990112, - 0.11113637685775757, - -0.041927166283130646, - 0.1266823709011078, - -0.05347640812397003, - 0.11221153289079666, - -0.01134815625846386, - -0.21096853911876678, - -0.01795266941189766, - 0.061899203807115555, - -0.06458897888660431, - -0.06837959587574005, - -0.053076136857271194, - -0.04615628719329834, - 0.03242522478103638, - 0.060048721730709076, - 0.018194379284977913, - 0.023188291117548943, - 0.019636016339063644, - 0.07649858295917511, - -0.020031925290822983, - 0.018023021519184113, - -0.002662018174305558, - -0.048287149518728256, - -0.059319376945495605, - 0.08876129984855652, - -0.05029842257499695, - -0.01397632248699665, - 0.03139262646436691, - -0.009115978144109249, - 0.004804037511348724, - -0.0705767571926117, - -0.05654650554060936, - 0.023940205574035645, - -0.07582558691501617, - 0.07638464868068695, - 0.049024228006601334, - -0.019833985716104507, - 0.05372598394751549, - -0.010075511410832405, - -0.03245002403855324, - -0.05059707164764404, - -0.11141987144947052, - 0.16354015469551086, - 0.09242982417345047, - -0.004909676034003496, - -0.04896428436040878, - -0.05694033205509186, - 0.11498412489891052, - -0.011041943915188313, - -0.13472098112106323, - -0.03895661234855652, - 0.07875931262969971, - 0.15260660648345947, - -0.03568674623966217, - -0.023113053292036057, - 0.036222200840711594, - 0.11538784205913544, - 0.06419387459754944, - 0.08427874743938446, - 0.07476839423179626, - 0.10366985201835632, - -0.021568220108747482, - -0.002773015294224024, - 0.10140321403741837, - 0.07675415277481079, - 0.04877643659710884, - -0.0250396691262722, - 0.024526633322238922, - 0.028665583580732346, - -0.031440041959285736, - -0.009204463101923466, - -0.009552412666380405, - 0.0131557397544384, - -0.004523593001067638, - -0.004756622016429901, - 0.016074756160378456, - 0.017824772745370865, - -0.027924057096242905, - 0.0570589043200016, - 0.05087224394083023, - -0.0014556339010596275, - 0.05766984075307846, - 0.03507053107023239, - -0.0019134795293211937, - 0.06863532215356827, - -0.06402253359556198, - -0.07259349524974823, - 0.02617669850587845, - 0.02047777734696865, - 0.008621025830507278, - 0.07255026698112488, - 0.045982763171195984, - -0.02597293257713318, - 0.12951169908046722, - 0.04235372692346573, - -0.008816368877887726, - 0.03464014083147049, - -0.09544213116168976, - 0.1047326922416687, - 0.09472894668579102, - -0.02723640203475952, - 0.04840164631605148, - -0.0429169200360775, - 0.09450362622737885, - 0.06854903697967529, - -0.14027078449726105, - -0.04946266859769821, - 0.04936899244785309, - 0.009163052774965763, - -0.010623672045767307, - 0.13939180970191956, - -0.004662188235670328, - 0.038035519421100616, - 0.11626236885786057, - -0.08133769035339355, - -0.044369108974933624, - -0.022429462522268295, - 0.05786089971661568, - -0.0917532816529274, - 0.0550692155957222, - 0.051606930792331696, - -0.014153923839330673, - 0.017764169722795486, - 0.07237815856933594, - -0.027876053005456924, - -0.01682601310312748, - -0.003176904283463955, - -0.03572098910808563, - 0.0347004309296608, - -0.014770491980016232, - -0.009532537311315536, - 0.08457052707672119, - 0.02287433296442032, - 0.02701174095273018, - -0.016597239300608635, - -0.030893463641405106, - -0.13113197684288025, - 0.035148635506629944, - 0.010990448296070099, - 0.09693142026662827, - -0.006166107952594757, - 0.0016965181566774845, - -0.05810495465993881, - -0.09464967250823975, - 0.023657631129026413, - -0.019306715577840805, - 0.08095501363277435, - -0.02825925499200821, - -0.009544768370687962, - 0.07593156397342682, - 0.03461727872490883, - -0.00948033481836319, - -0.035972680896520615, - -0.0491919219493866, - 0.01014435850083828, - 0.06618952006101608, - -0.08035778999328613, - -0.06676628440618515, - -0.005774345248937607, - 0.03371158987283707, - -0.01720990613102913, - 0.03451649844646454, - 0.03245050460100174, - 0.024616623297333717, - 0.02158227376639843, - -0.09568929672241211, - 0.03199521079659462, - -0.11019712686538696, - -0.06290261447429657, - -0.01081261970102787, - -0.018080558627843857, - -0.007430730387568474, - 0.08192767202854156, - 0.005604485981166363, - 0.02585793286561966, - -0.03650568053126335, - -0.08845193684101105, - -0.06960691511631012, - 0.06260506808757782, - 0.06530150771141052, - 0.0011411313898861408, - 0.04428445175290108, - 0.06581991910934448, - -0.03202700614929199, - 0.03726353496313095, - 0.04070156067609787, - 0.12071744352579117, - -0.01693282276391983, - 0.031210407614707947, - -0.04292115569114685, - 0.10087241977453232, - 0.060816869139671326, - -0.07864196598529816, - -0.06585988402366638, - -0.020686758682131767, - -0.05931799113750458, - 0.05354519188404083, - -0.022308506071567535, - 0.002782419789582491, - 0.011945844627916813, - 0.006805784069001675, - -0.10159777104854584, - -0.08181186020374298, - 0.08036187291145325, - -0.04692530632019043, - -0.01781248301267624, - -0.09689954668283463, - 0.0362117625772953, - 0.10981318354606628, - 0.03773040324449539, - -0.026323864236474037, - 0.00456186942756176, - 0.043397460132837296, - -0.028127577155828476, - 0.016535427421331406, - 0.06927508860826492, - 0.03388071805238724, - -0.12066423147916794, - -0.034208547323942184, - -0.07544130831956863, - 0.07587596774101257, - -0.04062763974070549, - 0.14039717614650726, - 0.015053401701152325, - -0.03591234236955643, - -0.07308107614517212, - 0.05595755949616432, - 0.0017035757191479206, - 0.06483720242977142, - 0.05129917711019516, - 0.0727454125881195, - 0.052974216639995575, - -0.04354061931371689, - 0.10226841270923615, - 0.04978279024362564, - -0.041273295879364014, - -0.043258845806121826, - -0.013074418529868126, - -0.030807897448539734, - 0.02389458194375038, - 0.022466275840997696, - -0.08973407000303268, - -0.0030692466534674168, - 0.02394942194223404, - -0.030545353889465332, - 0.05711883306503296, - 0.1369554102420807, - 0.07677972316741943, - -0.11180759966373444 - ] - }, - "p245_073.wav": { - "name": "p245", - "embedding": [ - 0.050025369971990585, - 0.09468891471624374, - -0.006306699477136135, - 0.025102226063609123, - -0.04868593439459801, - 0.07750745117664337, - -0.13614723086357117, - 0.1285698562860489, - -0.03822711482644081, - 0.14091086387634277, - -0.06929503381252289, - 0.12306427955627441, - -0.010437111370265484, - -0.18395625054836273, - -0.04701977223157883, - 0.04812866076827049, - -0.051997050642967224, - -0.02401163801550865, - -0.035993412137031555, - -0.020998410880565643, - 0.042366739362478256, - 0.035661038011312485, - 0.04340088367462158, - 0.008436123840510845, - 0.02057529240846634, - 0.061848919838666916, - 0.014651848934590816, - 0.06731360405683517, - 0.02986729145050049, - -0.05034512281417847, - -0.039283379912376404, - 0.115561842918396, - -0.04078389331698418, - 0.024425527080893517, - 0.04877111315727234, - -0.009167520329356194, - 0.007816383615136147, - -0.06248391419649124, - -0.012126735411584377, - 0.009464703500270844, - -0.030846383422613144, - 0.07554687559604645, - 0.03140247240662575, - 0.00025807012571021914, - 0.03240381181240082, - 0.023040732368826866, - -0.018590042367577553, - -0.045769866555929184, - -0.1027064248919487, - 0.16036877036094666, - 0.07553015649318695, - -0.003921149764209986, - -0.06191285699605942, - -0.06800320744514465, - 0.10461169481277466, - -0.014925338327884674, - -0.11423198878765106, - -0.02995961904525757, - 0.0834035575389862, - 0.16206830739974976, - -0.034719228744506836, - -0.036888182163238525, - 0.024924151599407196, - 0.1350749135017395, - 0.043276816606521606, - 0.09140702337026596, - 0.08970780670642853, - 0.11004974693059921, - -0.013502801768481731, - 0.02018960565328598, - 0.04397713392972946, - 0.07516889274120331, - 0.04350581392645836, - -0.0042374818585813046, - 0.028446203097701073, - -0.009860394522547722, - -0.007762949448078871, - 0.014648607932031155, - -0.034249454736709595, - -0.017816556617617607, - -0.014192802831530571, - 0.007740188390016556, - 0.0055510373786091805, - 0.020933568477630615, - -0.024694232270121574, - 0.058536797761917114, - 0.011033186689019203, - -0.007938012480735779, - 0.06242240592837334, - 0.03340506553649902, - 0.013554271310567856, - 0.061150263994932175, - -0.06900466978549957, - -0.09568478167057037, - 0.02689513936638832, - 0.004911785013973713, - 0.027743559330701828, - 0.07634192705154419, - 0.04007009416818619, - -0.013964062556624413, - 0.11124905198812485, - 0.055918898433446884, - -0.023619771003723145, - 0.03462102264165878, - -0.09409746527671814, - 0.1252983808517456, - 0.08816325664520264, - -0.018559778109192848, - 0.04702261835336685, - -0.060387998819351196, - 0.08684112876653671, - 0.06394079327583313, - -0.13587582111358643, - -0.07668689638376236, - 0.0288423802703619, - 0.024168789386749268, - -0.021931758150458336, - 0.10796979069709778, - -0.0223039910197258, - 0.032515764236450195, - 0.09685595333576202, - -0.06980850547552109, - -0.04726937413215637, - -0.027023321017622948, - 0.04679577052593231, - -0.07220196723937988, - 0.040553875267505646, - 0.03369423374533653, - -0.007609399035573006, - -0.00770993297919631, - 0.08336915820837021, - -0.010960239917039871, - -0.007674570195376873, - 0.029892727732658386, - -0.05243418738245964, - 0.02836260199546814, - -0.030233047902584076, - 0.011005209758877754, - 0.03724243491888046, - 0.04648425430059433, - 0.04421566054224968, - 0.0024422656279057264, - -0.038187094032764435, - -0.10685497522354126, - 0.00795949250459671, - 0.034948933869600296, - 0.07179580628871918, - -0.009818065911531448, - -0.03200843930244446, - -0.041476961225271225, - -0.05986769497394562, - 0.030073752626776695, - -0.012694183737039566, - 0.07140501588582993, - -0.0210605226457119, - -0.0019267270108684897, - 0.08836772292852402, - 0.014559405855834484, - -0.004175232257694006, - -0.05113280564546585, - -0.0276580061763525, - 0.01576733961701393, - 0.04091668874025345, - -0.08266079425811768, - -0.0626341849565506, - 0.0060415118932724, - 0.02659047767519951, - -0.03424331173300743, - 0.04230711981654167, - 0.04197145253419876, - 0.015760626643896103, - 0.03797220438718796, - -0.06182323396205902, - -0.0037741544656455517, - -0.11045217514038086, - -0.06344986706972122, - -0.012600040063261986, - -0.009686823934316635, - -0.014872429892420769, - 0.0753248929977417, - 0.021330304443836212, - 0.049755584448575974, - -0.009720422327518463, - -0.06223946809768677, - -0.07657334208488464, - 0.061113081872463226, - 0.07651621103286743, - 0.009165244176983833, - 0.059780895709991455, - 0.056060634553432465, - -0.024654731154441833, - 0.06656038016080856, - 0.06306269019842148, - 0.09853903949260712, - -0.027438243851065636, - 0.01570606417953968, - -0.07912309467792511, - 0.07436473667621613, - 0.08575873076915741, - -0.0932183489203453, - -0.09049467742443085, - -0.02201438508927822, - -0.07154171168804169, - 0.03490672633051872, - -0.029067521914839745, - -0.004530402831733227, - 0.03233179450035095, - -0.004893789999186993, - -0.10126271098852158, - -0.08511736243963242, - 0.08919872343540192, - -0.07849450409412384, - -0.010427067056298256, - -0.07118475437164307, - 0.05186426267027855, - 0.10312867164611816, - 0.030673181638121605, - -0.029781712219119072, - -0.008348381146788597, - 0.056848566979169846, - -0.04707678407430649, - -0.0067833526991307735, - 0.03531728312373161, - 0.024210384115576744, - -0.11635036766529083, - 0.013965512625873089, - -0.07389486581087112, - 0.04277389869093895, - -0.05636947974562645, - 0.15073639154434204, - 0.0035770591348409653, - -0.057158462703228, - -0.07108616083860397, - 0.04859982430934906, - -0.03221463784575462, - 0.04725079983472824, - 0.036441951990127563, - 0.05647174268960953, - 0.02352149784564972, - -0.0855683833360672, - 0.13024096190929413, - 0.03629671782255173, - -0.04844909906387329, - -0.08672253787517548, - -0.030435342341661453, - -0.029809799045324326, - 0.03421724960207939, - 0.019117143005132675, - -0.08216220140457153, - -0.03539983183145523, - 0.025588396936655045, - -0.0269588902592659, - 0.06715121865272522, - 0.1439489722251892, - 0.06829582154750824, - -0.11346214264631271 - ] - }, - "p245_380.wav": { - "name": "p245", - "embedding": [ - 0.013977156952023506, - 0.06790954619646072, - -0.04052652418613434, - 0.031308140605688095, - -0.06747622042894363, - 0.04213244467973709, - -0.11638307571411133, - 0.08593550324440002, - -0.05164726823568344, - 0.11586429178714752, - -0.057797424495220184, - 0.08693459630012512, - -0.05798383429646492, - -0.16135907173156738, - -0.004745818674564362, - 0.08203017711639404, - -0.029021086171269417, - -0.045582547783851624, - -0.045329272747039795, - -0.027362871915102005, - 0.021520139649510384, - 0.01095966063439846, - 0.036966145038604736, - -0.024295005947351456, - 0.029374420642852783, - 0.06388232111930847, - -0.015622885897755623, - 0.00853461492806673, - -0.020870843902230263, - 0.006142172962427139, - -0.02938772365450859, - 0.08799991011619568, - -0.0328793004155159, - -0.04465601593255997, - 0.03385099396109581, - 0.007239095866680145, - -0.010864785872399807, - -0.07567732036113739, - 0.020904667675495148, - -0.02299526333808899, - -0.05988239124417305, - 0.07587135583162308, - 0.019331030547618866, - -0.038673289120197296, - 0.03174209967255592, - -0.030125092715024948, - -0.037907037883996964, - -0.007095793262124062, - -0.11728226393461227, - 0.13979537785053253, - 0.05963439494371414, - 0.008984653279185295, - -0.084353506565094, - -0.052475836127996445, - 0.10475218296051025, - 0.018175670877099037, - -0.09120997786521912, - -0.08472849428653717, - 0.06579320132732391, - 0.14563682675361633, - -0.011699935421347618, - -0.013315165415406227, - 0.02523159421980381, - 0.08954809606075287, - 0.04779740795493126, - 0.07663659751415253, - 0.05395541340112686, - 0.09860788285732269, - 0.00479824049398303, - 0.020014436915516853, - 0.07727955281734467, - 0.03503269702196121, - 0.010948042385280132, - -0.02449103444814682, - 0.016600431874394417, - -0.030751654878258705, - -0.03424938768148422, - -0.0009031300432980061, - -0.023626547306776047, - -0.06795116513967514, - -0.02011554315686226, - -0.037875354290008545, - 0.014735216274857521, - 0.009382423013448715, - -0.021297704428434372, - 0.018951866775751114, - 0.07411405444145203, - -0.038430437445640564, - 0.08233015239238739, - 0.03920704126358032, - -0.028404532000422478, - 0.04277238994836807, - -0.07377149164676666, - -0.061056748032569885, - 0.025939863175153732, - 0.003056139685213566, - -0.005695072002708912, - 0.054062873125076294, - 0.037920013070106506, - -0.03033341094851494, - 0.10569413751363754, - 0.04000004008412361, - 0.02254459448158741, - 0.029939282685518265, - -0.08991887420415878, - 0.11167331039905548, - 0.0881820023059845, - -0.021342061460018158, - 0.020952347666025162, - -0.007511255331337452, - 0.0290372371673584, - 0.08119228482246399, - -0.1016245111823082, - -0.05910422280430794, - 0.005798760801553726, - -0.025263924151659012, - -0.01820685714483261, - 0.1013495922088623, - 0.020612603053450584, - 0.0031752996146678925, - 0.11809593439102173, - -0.1006234809756279, - -0.09614263474941254, - -0.022758638486266136, - 0.04308545961976051, - -0.06667616218328476, - 0.03673451021313667, - 0.09041289240121841, - 0.004973910748958588, - 0.0020864875987172127, - 0.05238916724920273, - 0.002670613117516041, - 0.013621492311358452, - 0.013434219174087048, - -0.0373506061732769, - 0.05703084543347359, - -0.031240394338965416, - -0.02986977808177471, - 0.07929966598749161, - 0.03415234014391899, - 0.05755551904439926, - -0.021560262888669968, - 0.03445431590080261, - -0.09477758407592773, - 0.007923225872218609, - 0.059557944536209106, - 0.047068119049072266, - -0.01991090178489685, - 0.006372484378516674, - -0.04884664714336395, - -0.09643448889255524, - 0.02145705185830593, - -0.016571827232837677, - 0.10778673738241196, - -0.012352574616670609, - -0.008642743341624737, - 0.11329932510852814, - 0.018727000802755356, - 0.0071049961261451244, - -0.03396013379096985, - -0.023094134405255318, - 0.048170171678066254, - 0.043377846479415894, - -0.08602429926395416, - -0.05497325584292412, - -0.0309092216193676, - 0.04159211367368698, - -0.005331383552402258, - 0.028301598504185677, - 0.05750802159309387, - 0.01612606830894947, - -0.0077966381795704365, - -0.07166031002998352, - 0.06478056311607361, - -0.04721618443727493, - -0.0059195272624492645, - -0.009956683032214642, - -0.06868822127580643, - -0.022694185376167297, - 0.08215251564979553, - 0.021549042314291, - 0.0036403872072696686, - -0.04225257411599159, - -0.0926898941397667, - -0.06481640785932541, - 0.03595063090324402, - 0.0550440177321434, - -0.03400982916355133, - 0.04179961606860161, - 0.05777309834957123, - -0.027368739247322083, - -0.010111319832503796, - 0.055434584617614746, - 0.09657125174999237, - -0.027499718591570854, - -0.03702538460493088, - -0.06309280544519424, - 0.08289249241352081, - 0.0918731838464737, - -0.09060847759246826, - -0.05475857853889465, - -0.056424424052238464, - -0.03783833608031273, - 0.03533169627189636, - -0.040616475045681, - 0.0018740375526249409, - 0.03135288879275322, - -0.0343964584171772, - -0.10193973779678345, - -0.13044196367263794, - 0.10127010196447372, - -0.04929221421480179, - -0.021886035799980164, - -0.06672253459692001, - 0.027334121987223625, - 0.030293557792901993, - 0.00800785981118679, - -0.04374115914106369, - 0.014034748077392578, - 0.0197441466152668, - -0.04227215796709061, - 0.0261215977370739, - 0.05880095809698105, - 0.015579446218907833, - -0.08835114538669586, - -0.02471441961824894, - -0.08328090608119965, - 0.11049963533878326, - -0.030021781101822853, - 0.14694847166538239, - -0.006484383717179298, - -0.0024389512836933136, - -0.08935835212469101, - 0.03483014926314354, - -0.006636002566665411, - 0.07277784496545792, - 0.06277797371149063, - 0.06766960769891739, - 0.017642345279455185, - -0.04242781922221184, - 0.1022244542837143, - 0.03702020272612572, - -0.02042987011373043, - -0.06337658315896988, - -0.0010861065238714218, - -0.06406739354133606, - 0.007201822474598885, - -0.006285202689468861, - -0.07866798341274261, - 0.021153774112462997, - 0.032188691198825836, - -0.007751215249300003, - 0.07644884288311005, - 0.0912589281797409, - 0.07644154131412506, - -0.06099837273359299 - ] - }, - "p245_366.wav": { - "name": "p245", - "embedding": [ - 0.05085409805178642, - 0.0670686736702919, - -0.017226673662662506, - 0.0293086227029562, - -0.044026538729667664, - -0.0011953134089708328, - -0.14928144216537476, - 0.13163118064403534, - 0.011134255677461624, - 0.13107284903526306, - -0.07640716433525085, - 0.11196180433034897, - -0.01359421294182539, - -0.20764228701591492, - -0.005072839558124542, - 0.052787747234106064, - -0.028041161596775055, - -0.04100683331489563, - -0.028515605255961418, - -0.03610483929514885, - 0.042826395481824875, - 0.06877894699573517, - 0.019374005496501923, - 0.012615036219358444, - 0.007909136824309826, - 0.0772084891796112, - -0.007314398419111967, - 0.029493529349565506, - 0.0008794280583970249, - -0.027700548991560936, - -0.017559165135025978, - 0.09173493832349777, - -0.0403544120490551, - -0.004228388424962759, - 0.0382133387029171, - -0.016267284750938416, - -0.01226496696472168, - -0.044029563665390015, - -0.025033926591277122, - 0.019150715321302414, - -0.0724925547838211, - 0.068132184445858, - 0.02039487473666668, - -0.019460193812847137, - 0.07364826649427414, - 0.028724944218993187, - -0.023469015955924988, - -0.05228933319449425, - -0.11072307825088501, - 0.15626144409179688, - 0.09449710696935654, - -0.000653789087664336, - -0.06498056650161743, - -0.046945542097091675, - 0.06887988746166229, - -0.017642518505454063, - -0.09521948546171188, - -0.048091333359479904, - 0.08075737953186035, - 0.12235631048679352, - -0.026006614789366722, - -0.04016610234975815, - 0.05044165998697281, - 0.12413829565048218, - 0.06748602539300919, - 0.06921380013227463, - 0.07931749522686005, - 0.10358836501836777, - -0.04982781410217285, - -0.0075846146792173386, - 0.056043967604637146, - 0.06321180611848831, - 0.06375768780708313, - -0.015242952853441238, - 0.01914917677640915, - 0.01893724501132965, - -0.01899206079542637, - -0.020946774631738663, - -0.015297727659344673, - 0.004510984756052494, - -0.004505652468651533, - 0.005002297926694155, - -0.020885147154331207, - 0.03709785267710686, - -0.032443128526210785, - 0.047464869916439056, - 0.07302549481391907, - -0.007000552024692297, - 0.06750082224607468, - 0.037738338112831116, - 0.020419891923666, - 0.0640973448753357, - -0.09228697419166565, - -0.0656832680106163, - 0.02940038964152336, - -0.004019502084702253, - 0.006502562668174505, - 0.07582731544971466, - 0.049078747630119324, - -0.025137916207313538, - 0.13060736656188965, - 0.031714390963315964, - -0.0243767611682415, - 0.025476818904280663, - -0.09873418509960175, - 0.11460059136152267, - 0.09725730121135712, - -0.04103093594312668, - 0.03775591775774956, - -0.04929732531309128, - 0.050757259130477905, - 0.05530647560954094, - -0.1175805851817131, - -0.04079030081629753, - 0.04339802265167236, - 0.013811683282256126, - -0.01518404483795166, - 0.13868063688278198, - 0.00020996108651161194, - 0.04843778535723686, - 0.11880333721637726, - -0.07298990339040756, - -0.06130088120698929, - -0.033031392842531204, - 0.057804226875305176, - -0.11218637228012085, - 0.06844715774059296, - 0.05549861118197441, - 0.0032898352947086096, - 0.01518731564283371, - 0.07789964973926544, - -0.011777608655393124, - 0.002540184184908867, - -0.04070531576871872, - -0.019211189821362495, - 0.029824092984199524, - -0.025816660374403, - -0.009925898164510727, - 0.02613704651594162, - 0.020925652235746384, - 0.03841459006071091, - 0.00516651663929224, - -0.030071567744016647, - -0.13356314599514008, - 0.03662843257188797, - 0.02257009968161583, - 0.08171272277832031, - -0.013699542731046677, - -0.02153829112648964, - -0.0628013163805008, - -0.06399285793304443, - 0.005680585280060768, - -0.018062133342027664, - 0.04864518344402313, - -0.029082879424095154, - -0.005540390498936176, - 0.10222171247005463, - 0.01824648678302765, - 0.02005079947412014, - -0.01191074587404728, - -0.04252376779913902, - -0.0077728345058858395, - 0.05392754077911377, - -0.08858421444892883, - -0.08242686092853546, - -0.024000003933906555, - 0.027447447180747986, - 0.0007757818093523383, - 0.0593448132276535, - 0.04908888041973114, - 0.007528652902692556, - 0.004842091351747513, - -0.10006989538669586, - 0.01182630192488432, - -0.09884762018918991, - -0.08765855431556702, - -0.01826735958456993, - -0.003998443018645048, - 0.0015570521354675293, - 0.07226147502660751, - -0.0009670673753134906, - 0.044813916087150574, - -0.037501826882362366, - -0.08301500976085663, - -0.0931137204170227, - 0.046649396419525146, - 0.08539436757564545, - -0.02161845564842224, - 0.04968719184398651, - 0.048751816153526306, - -0.05311344563961029, - 0.04359713941812515, - 0.04705842584371567, - 0.10929615795612335, - -0.024895353242754936, - 0.038282353430986404, - -0.060064613819122314, - 0.09248365461826324, - 0.08937928080558777, - -0.07307444512844086, - -0.07582604885101318, - -0.02635362558066845, - -0.07325046509504318, - 0.03173784911632538, - -0.009884057566523552, - 0.01593635231256485, - 0.036145277321338654, - 0.00439275149255991, - -0.08528005331754684, - -0.08604592084884644, - 0.05700783431529999, - -0.05143602937459946, - -0.0041984873823821545, - -0.09667955338954926, - 0.04341677948832512, - 0.09445275366306305, - 0.04271339997649193, - -0.03443188592791557, - -0.04000169038772583, - 0.027259886264801025, - -0.008615976199507713, - 0.004325446672737598, - 0.044155314564704895, - 0.04436783120036125, - -0.12072961032390594, - -0.021931877359747887, - -0.06812672317028046, - 0.07399549335241318, - -0.0575198195874691, - 0.10598163306713104, - 0.03043750487267971, - -0.04580631107091904, - -0.09369494765996933, - 0.03592119365930557, - 0.012223056517541409, - 0.06361805647611618, - 0.02238444611430168, - 0.05402231961488724, - 0.042594872415065765, - -0.06385616958141327, - 0.10012947767972946, - 0.0571836493909359, - -0.0303624477237463, - -0.05940689891576767, - -0.038931287825107574, - -0.025729596614837646, - 0.03405177593231201, - 0.03150327131152153, - -0.08148278295993805, - -0.02010997384786606, - 0.023361992090940475, - -0.0273139588534832, - 0.04828052222728729, - 0.13030493259429932, - 0.04777144640684128, - -0.13580790162086487 - ] - }, - "p245_372.wav": { - "name": "p245", - "embedding": [ - 0.05733104795217514, - 0.09035584330558777, - -0.0674799457192421, - 0.01678674854338169, - -0.02285352163016796, - 0.051871947944164276, - -0.14151254296302795, - 0.10145170241594315, - -0.04185459762811661, - 0.13366682827472687, - -0.03486177325248718, - 0.10930806398391724, - -0.0007387548685073853, - -0.12698563933372498, - -0.02672582119703293, - 0.043290864676237106, - 0.013508656993508339, - -0.00466608302667737, - -0.03365962207317352, - 0.000635968055576086, - 0.03677349537611008, - 0.017415087670087814, - 0.016871776431798935, - -0.052286166697740555, - 0.021442992612719536, - 0.04421444237232208, - 0.0150107741355896, - 0.010867506265640259, - 0.0008865110576152802, - 0.0034209704026579857, - 0.0069201430305838585, - 0.08041664958000183, - -0.04085970297455788, - -0.00730693805962801, - 0.05829421803355217, - 0.017184995114803314, - -0.03687230497598648, - -0.06707696616649628, - 0.00912418495863676, - 0.02171766757965088, - -0.04473855346441269, - 0.0750008076429367, - 0.03293878957629204, - -0.03214138746261597, - 0.05211421102285385, - -0.030220355838537216, - -0.0071022603660821915, - -0.013494142331182957, - -0.06668394058942795, - 0.13318251073360443, - 0.06431329250335693, - 0.017523903399705887, - -0.0957476869225502, - -0.009879414923489094, - 0.09297850728034973, - 0.011899620294570923, - -0.058020077645778656, - -0.07234961539506912, - 0.02504071407020092, - 0.129949152469635, - -0.007936263456940651, - -0.03676142916083336, - 0.030724268406629562, - 0.09560272842645645, - 0.04965270310640335, - 0.05461284890770912, - 0.08459322154521942, - 0.09206856787204742, - 0.004799109883606434, - 0.024314353242516518, - 0.036570191383361816, - 0.06704433262348175, - 0.009090223349630833, - -0.025997400283813477, - 0.029857806861400604, - -0.026604363694787025, - -0.031231887638568878, - -0.017487429082393646, - -0.020572379231452942, - -0.05050205439329147, - -0.025242380797863007, - 0.0005858428776264191, - 0.014840181916952133, - 0.0555109977722168, - -0.05065262317657471, - 0.021962732076644897, - 0.0536637008190155, - -0.061104051768779755, - 0.03855361044406891, - 0.0710848867893219, - 0.001259309588931501, - -0.0029928572475910187, - -0.061065398156642914, - -0.1031339019536972, - 0.033726662397384644, - -0.0077224550768733025, - -0.02910834550857544, - 0.06257793307304382, - 0.024022288620471954, - 0.02959100529551506, - 0.07827945053577423, - 0.04612663760781288, - -0.014843754470348358, - 0.00977691076695919, - -0.0459158793091774, - 0.12566959857940674, - 0.09223836660385132, - -0.018394213169813156, - 0.033365506678819656, - -0.04731784015893936, - -0.004409823566675186, - 0.041355542838573456, - -0.09878554940223694, - -0.07866127789020538, - 0.052483223378658295, - 0.030176879838109016, - 0.02491014637053013, - 0.11451079696416855, - 0.022274555638432503, - 0.008571521379053593, - 0.0778849720954895, - -0.04630091041326523, - -0.10109050571918488, - -0.05816987156867981, - 0.04357404261827469, - -0.0649087131023407, - 0.06832358241081238, - 0.04452177882194519, - 0.01403038576245308, - -0.024561025202274323, - 0.08152192831039429, - 0.01438787393271923, - 0.012281514704227448, - -0.011794395744800568, - 0.027140209451317787, - 0.05973951518535614, - -0.028061334043741226, - 0.02277158945798874, - 0.03398044779896736, - 0.021174680441617966, - 0.07734952121973038, - 0.013620274141430855, - 0.014688989147543907, - -0.09958376735448837, - -0.003773623611778021, - 0.0702660009264946, - 0.06208153814077377, - -0.042771726846694946, - -0.03063330054283142, - -0.013423687778413296, - -0.06739537417888641, - -0.017742808908224106, - -0.04598553851246834, - 0.09883978962898254, - 0.012268861755728722, - 0.025962816551327705, - 0.10167396068572998, - -0.03406553715467453, - 0.028727801516652107, - -0.018112368881702423, - 0.038294363766908646, - 0.015364090912044048, - 0.04440914839506149, - -0.07276734709739685, - -0.09709705412387848, - -0.033611685037612915, - 0.0015493594110012054, - 0.00544988177716732, - 0.02899564430117607, - 0.04482974112033844, - -0.027257267385721207, - 0.05124206840991974, - -0.08262453973293304, - 0.004344735760241747, - -0.10727809369564056, - -0.011226003058254719, - -0.05117690935730934, - -0.059016767889261246, - -0.01636984385550022, - 0.07590500265359879, - 0.025758033618330956, - 0.0504256896674633, - -0.013828850351274014, - -0.06937123090028763, - -0.06957569718360901, - 0.0428764633834362, - 0.07960563898086548, - -0.04210585728287697, - 0.012439573183655739, - 0.054749779403209686, - 0.026797067373991013, - 0.0030076801776885986, - 0.057123132050037384, - 0.03404882550239563, - -0.04285070300102234, - -0.03743429109454155, - -0.06306368112564087, - 0.08651576936244965, - 0.10523722320795059, - -0.09650164842605591, - -0.05970654636621475, - -0.05139657109975815, - -0.05676249414682388, - -0.02443491667509079, - -0.06439773738384247, - 0.02167343534529209, - 0.04126442223787308, - -0.04472264274954796, - -0.09704603254795074, - -0.12901823222637177, - 0.06351842731237411, - -0.07181698083877563, - 0.009529278613626957, - -0.03975483775138855, - 0.018235305324196815, - 0.05253224074840546, - 0.024941300973296165, - -0.0569583959877491, - -0.008068302646279335, - 0.00033845938742160797, - -0.03012045845389366, - -0.009283711202442646, - 0.019301997497677803, - 0.024861197918653488, - -0.10825774818658829, - 0.014226483181118965, - -0.03699026256799698, - 0.09965601563453674, - -0.07935299724340439, - 0.10811513662338257, - -0.005107831209897995, - -0.046056970953941345, - -0.09999237209558487, - 0.0037021860480308533, - 0.0023497771471738815, - 0.03718119487166405, - 0.027923423796892166, - 0.06295756995677948, - -0.010731782764196396, - -0.06636888533830643, - 0.09514481574296951, - 0.06648585200309753, - 0.007089182734489441, - -0.09984470158815384, - -0.02658105455338955, - -0.030848020687699318, - 0.0550755150616169, - 0.03441673889756203, - -0.05427945777773857, - 0.019471045583486557, - 0.024769499897956848, - -0.016197985038161278, - 0.05553022772073746, - 0.0916881263256073, - 0.05958426743745804, - -0.10344059765338898 - ] - }, - "p245_409.wav": { - "name": "p245", - "embedding": [ - 0.04685479402542114, - 0.08793620765209198, - -0.04375693202018738, - 0.02922828122973442, - -0.04073556512594223, - 0.048139847815036774, - -0.12432301044464111, - 0.10058197379112244, - -0.043299127370119095, - 0.14477354288101196, - -0.07895662635564804, - 0.10296115279197693, - -0.02315559796988964, - -0.13970181345939636, - -0.03226865455508232, - 0.04191824048757553, - -0.017668165266513824, - -0.026027221232652664, - -0.050915420055389404, - -0.026309136301279068, - 0.04001901298761368, - 0.04038793593645096, - 0.03480706736445427, - -0.01849052496254444, - -0.0022871121764183044, - 0.07005549967288971, - 0.004157315474003553, - 0.0292053185403347, - 0.006603945046663284, - -0.005187880247831345, - 0.0023290254175662994, - 0.09867174923419952, - -0.0269942507147789, - -0.01603705622255802, - 0.010927428491413593, - 0.011978043243288994, - -0.016052542254328728, - -0.05749648064374924, - 0.01834302395582199, - 0.010225404985249043, - -0.03608110174536705, - 0.06224112585186958, - 0.025711048394441605, - 0.004586122930049896, - 0.037158068269491196, - -0.0499148815870285, - -0.05249282717704773, - -0.027453351765871048, - -0.09517663717269897, - 0.16614505648612976, - 0.10721215605735779, - 0.007173639256507158, - -0.08721701800823212, - -0.020116083323955536, - 0.09986774623394012, - 0.00765939150005579, - -0.07520962506532669, - -0.07176291942596436, - 0.042786870151758194, - 0.14679358899593353, - -0.01359262503683567, - -0.04063251242041588, - 0.02059154585003853, - 0.127417653799057, - 0.01747730001807213, - 0.06593339890241623, - 0.09820875525474548, - 0.08636270463466644, - -0.017594821751117706, - 0.01667419821023941, - 0.03657269850373268, - 0.04605276510119438, - 0.03849438577890396, - -0.038436055183410645, - 0.03968048095703125, - -0.03194167837500572, - -0.0075933621264994144, - 0.0039037386886775494, - -0.028130915015935898, - -0.07411304116249084, - -0.02016177773475647, - -0.005383030045777559, - -0.00918504036962986, - 0.03807658702135086, - -0.05168043076992035, - 0.020047640427947044, - 0.04268265888094902, - -0.04129219800233841, - 0.058822210878133774, - 0.04602697864174843, - 0.016203677281737328, - 0.0070342086255550385, - -0.05871604382991791, - -0.07247129827737808, - 0.05148777365684509, - 0.005216647870838642, - 0.0015004808083176613, - 0.06330367177724838, - 0.028280191123485565, - -0.0035252743400633335, - 0.10147664695978165, - 0.03806959092617035, - -0.017253413796424866, - -0.012614872306585312, - -0.07122364640235901, - 0.11995884776115417, - 0.1300797164440155, - -0.021409673616290092, - 0.025097183883190155, - -0.023122824728488922, - 0.01762845367193222, - 0.04973446577787399, - -0.11322826147079468, - -0.05679073929786682, - 0.022512219846248627, - 0.03559865057468414, - 0.013029510155320168, - 0.0857982337474823, - 0.01186261884868145, - 0.010817972011864185, - 0.08849571645259857, - -0.05632779747247696, - -0.07177706807851791, - -0.06310583651065826, - 0.04269396513700485, - -0.08041463792324066, - 0.039707157760858536, - 0.06490860879421234, - 0.01983034797012806, - -0.031055090948939323, - 0.0718628317117691, - -0.00395666528493166, - -0.0010917802574113011, - -0.007577957585453987, - -0.006820116192102432, - 0.04068881645798683, - -0.03394937887787819, - -0.011689173057675362, - 0.010379351675510406, - 0.004798884503543377, - 0.06318500638008118, - 0.006048180628567934, - 0.03342343121767044, - -0.07824191451072693, - 0.02239268459379673, - 0.048955388367176056, - 0.03480323776602745, - -0.027532635256648064, - -0.03347981348633766, - -0.018102135509252548, - -0.05839384347200394, - 0.006764193996787071, - -0.042738210409879684, - 0.08275645971298218, - 0.004514245316386223, - 0.011263545602560043, - 0.10799264907836914, - -0.020866746082901955, - 0.0016718126134946942, - -0.02056361921131611, - 0.016043413430452347, - 0.023401670157909393, - 0.0368221290409565, - -0.07489927113056183, - -0.07478682696819305, - 0.0030160630121827126, - 0.030737020075321198, - 3.1249597668647766e-05, - 0.029846955090761185, - 0.05880098044872284, - -0.01874908246099949, - 0.017438052222132683, - -0.06023382395505905, - 0.0256100594997406, - -0.07969028502702713, - -0.025224952027201653, - -0.007644301746040583, - -0.06536135822534561, - 0.0027620792388916016, - 0.06685669720172882, - 0.02920559048652649, - 0.023602580651640892, - -0.035304196178913116, - -0.07948566973209381, - -0.07861854881048203, - 0.07067568600177765, - 0.09690631926059723, - -0.02623526006937027, - 0.028365906327962875, - 0.06704262644052505, - -0.00489993579685688, - 0.01765313744544983, - 0.056844357401132584, - 0.08495189994573593, - -0.03747512400150299, - -0.024069178849458694, - -0.07115550339221954, - 0.0529637336730957, - 0.09276048839092255, - -0.09650485217571259, - -0.0758967250585556, - -0.06013265252113342, - -0.06398917734622955, - 0.037336770445108414, - -0.04513486474752426, - 0.0010640843538567424, - 0.06461844593286514, - -0.038739580661058426, - -0.1080198734998703, - -0.10775075852870941, - 0.08864559233188629, - -0.044962890446186066, - -0.0010441341437399387, - -0.06791872531175613, - 0.04533177614212036, - 0.057183071970939636, - 0.02732718363404274, - -0.06489136815071106, - -0.006031383760273457, - 0.011503057554364204, - -0.03434861823916435, - -0.00504462793469429, - 0.005573205649852753, - 0.043108440935611725, - -0.11503780633211136, - 0.00022062845528125763, - -0.07902361452579498, - 0.09089290350675583, - -0.06943564116954803, - 0.09067340940237045, - 0.016049236059188843, - -0.021370848640799522, - -0.09845273196697235, - 0.04548756778240204, - -0.003312797285616398, - 0.0626494288444519, - 0.03883887827396393, - 0.037379782646894455, - 0.020783545449376106, - -0.08334361016750336, - 0.09147583693265915, - 0.06296940892934799, - -0.01402687281370163, - -0.09347584843635559, - 0.008111551403999329, - -0.04015237092971802, - 0.04742976650595665, - 0.020302262157201767, - -0.04552299156785011, - -0.009486149996519089, - 0.012873087078332901, - -0.027863290160894394, - 0.08127377927303314, - 0.08999764919281006, - 0.04994462803006172, - -0.09845499694347382 - ] - }, - "p245_383.wav": { - "name": "p245", - "embedding": [ - 0.051961928606033325, - 0.1003323644399643, - -0.017048493027687073, - 0.018067607656121254, - -0.07055257260799408, - 0.08750578761100769, - -0.12543126940727234, - 0.13217034935951233, - -0.07462392747402191, - 0.13187451660633087, - -0.056843094527721405, - 0.12461845576763153, - -0.023163778707385063, - -0.18079997599124908, - -0.0441136509180069, - 0.06553854793310165, - -0.06358849257230759, - -0.0434214249253273, - -0.044098399579524994, - -0.021019574254751205, - 0.029718656092882156, - 0.017701543867588043, - 0.029648669064044952, - 0.012301245704293251, - 0.040944695472717285, - 0.07280528545379639, - 0.00027831620536744595, - 0.04027874767780304, - 0.016047129407525063, - -0.05634850636124611, - -0.0489109642803669, - 0.09499888122081757, - -0.048477064818143845, - 0.008584467694163322, - 0.057903241366147995, - -0.01419786922633648, - 0.01219463162124157, - -0.07800684869289398, - -0.028425432741642, - 0.00809280201792717, - -0.03446090221405029, - 0.09030009061098099, - 0.04687321186065674, - -0.010356348939239979, - 0.016451876610517502, - 0.01680051162838936, - -0.008619408123195171, - -0.04263073578476906, - -0.10421565175056458, - 0.15752077102661133, - 0.056104473769664764, - -0.009202159941196442, - -0.06626339256763458, - -0.06975889205932617, - 0.12783098220825195, - -0.01600278913974762, - -0.12269507348537445, - -0.043098825961351395, - 0.07372093200683594, - 0.15820667147636414, - -0.033350471407175064, - -0.023331576958298683, - 0.013287276029586792, - 0.12921252846717834, - 0.05306554585695267, - 0.0991314947605133, - 0.06547370553016663, - 0.1119549348950386, - -0.0055655972100794315, - 0.03039177507162094, - 0.07324860990047455, - 0.06838526576757431, - 0.023079385980963707, - -0.021022500470280647, - 0.03220806270837784, - -0.0046750339679419994, - -0.025149229913949966, - 0.011302920058369637, - -0.023519933223724365, - -0.015441217459738255, - -0.023698799312114716, - 0.0074646794237196445, - 0.010292783379554749, - 0.014224608428776264, - -0.02153194695711136, - 0.06688288599252701, - 0.022209059447050095, - -0.006022770889103413, - 0.07282760739326477, - 0.044977832585573196, - 0.005059376358985901, - 0.06954288482666016, - -0.07200536131858826, - -0.09265932440757751, - 0.027055755257606506, - 0.008123675361275673, - 0.024042509496212006, - 0.07340489327907562, - 0.04390253126621246, - -0.012373756617307663, - 0.11459733545780182, - 0.0699889063835144, - 0.0016110099386423826, - 0.027886558324098587, - -0.09250708669424057, - 0.1322990208864212, - 0.07789024710655212, - -0.01871161162853241, - 0.045396819710731506, - -0.03997617959976196, - 0.09187410771846771, - 0.07895757257938385, - -0.14746510982513428, - -0.08441343903541565, - 0.03229851275682449, - 0.0033712172880768776, - -0.020488983020186424, - 0.11600017547607422, - -0.02533874660730362, - 0.023185715079307556, - 0.0937386229634285, - -0.07268008589744568, - -0.05123534053564072, - -0.01627180352807045, - 0.04241780936717987, - -0.07002796232700348, - 0.047854818403720856, - 0.05044017359614372, - -0.016877397894859314, - 0.009910564869642258, - 0.08756381273269653, - -0.011729761958122253, - -0.01523641124367714, - 0.04429970309138298, - -0.04510272666811943, - 0.037817202508449554, - -0.018301397562026978, - 0.014023780822753906, - 0.054726339876651764, - 0.04314921796321869, - 0.03982646018266678, - -0.012394670397043228, - -0.010857694782316685, - -0.10159504413604736, - 0.015221023932099342, - 0.03230646252632141, - 0.07798334956169128, - -0.0017948232125490904, - -0.019101493060588837, - -0.03811134397983551, - -0.07298411428928375, - 0.011663136072456837, - -0.009585989639163017, - 0.09579212963581085, - -0.01879912242293358, - 0.006130516063421965, - 0.09789858758449554, - 0.0342482291162014, - -0.0011248192749917507, - -0.05996484309434891, - -0.023943185806274414, - 0.02453167736530304, - 0.05605415627360344, - -0.07065753638744354, - -0.06291016936302185, - 0.009846445173025131, - 0.023003805428743362, - -0.027681700885295868, - 0.04410000145435333, - 0.03913647308945656, - 0.01910785399377346, - 0.04239189624786377, - -0.07289816439151764, - 0.034440405666828156, - -0.10424042493104935, - -0.04052029550075531, - -0.015168413519859314, - -0.028848329558968544, - -0.03157287836074829, - 0.0802823007106781, - 0.026244379580020905, - 0.04280152916908264, - -0.006335328333079815, - -0.0749741643667221, - -0.05914945900440216, - 0.06858363002538681, - 0.07021918892860413, - 0.000763176241889596, - 0.04322409629821777, - 0.06144925579428673, - -0.010214393958449364, - 0.04603702202439308, - 0.06312006711959839, - 0.0953521579504013, - -0.028142109513282776, - 0.010612444020807743, - -0.06260417401790619, - 0.08707071840763092, - 0.06325779110193253, - -0.11406780779361725, - -0.07898841798305511, - -0.021939242258667946, - -0.04755283147096634, - 0.037323251366615295, - -0.027789587154984474, - 0.0020862098317593336, - 0.015445382334291935, - -0.005642781034111977, - -0.0980280339717865, - -0.09309989213943481, - 0.09758290648460388, - -0.08088277280330658, - -0.005045594647526741, - -0.08008280396461487, - 0.041569650173187256, - 0.09665770828723907, - 0.040046967566013336, - -0.031826864928007126, - 0.006445502862334251, - 0.05165369063615799, - -0.034595124423503876, - 0.0036665690131485462, - 0.055092327296733856, - 0.02016792632639408, - -0.10122118890285492, - 0.005300299264490604, - -0.07198093086481094, - 0.0713411420583725, - -0.04767174273729324, - 0.17677190899848938, - -0.0032451448496431112, - -0.04714808613061905, - -0.07698563486337662, - 0.04146338999271393, - -0.03307162970304489, - 0.04928438365459442, - 0.0498884841799736, - 0.06690670549869537, - 0.031358830630779266, - -0.04890427365899086, - 0.1271275132894516, - 0.02913709171116352, - -0.04459039866924286, - -0.06731998920440674, - -0.027370931580662727, - -0.038073860108852386, - 0.03338006138801575, - 0.020839311182498932, - -0.09409113973379135, - -0.012980536557734013, - 0.02861589938402176, - -0.02328113466501236, - 0.08477555215358734, - 0.14055627584457397, - 0.08853550255298615, - -0.10171560943126678 - ] - }, - "p245_378.wav": { - "name": "p245", - "embedding": [ - 0.07356055825948715, - 0.05589265376329422, - -0.05945421755313873, - 0.03800595924258232, - -0.03501341491937637, - 0.02806919999420643, - -0.1278119683265686, - 0.09322462975978851, - 0.021685456857085228, - 0.1050618439912796, - -0.08123091608285904, - 0.0777692124247551, - -0.01877608150243759, - -0.09897693991661072, - 0.007780164014548063, - 0.0407402403652668, - -0.01226705964654684, - -0.019103296101093292, - -0.04354848712682724, - -0.007672389969229698, - 0.018578730523586273, - 0.03378306329250336, - 0.02888748236000538, - -0.040145620703697205, - 0.0014858078211545944, - 0.029446661472320557, - -0.013040252029895782, - -0.010183245874941349, - 0.01235133595764637, - 0.03054446540772915, - 0.022034214809536934, - 0.08431374281644821, - -0.03189873322844505, - 0.01479547843337059, - 0.04258693754673004, - 0.03870873153209686, - -0.034444473683834076, - -0.08442743122577667, - 0.006506294943392277, - -0.0027760425582528114, - -0.04542090743780136, - 0.07608649134635925, - 0.06165623292326927, - -0.06301800906658173, - 0.026480767875909805, - -0.00973721593618393, - -0.03223550692200661, - -0.02224026806652546, - -0.09143906831741333, - 0.16835880279541016, - 0.039792563766241074, - 0.020243171602487564, - -0.10544183850288391, - 0.0020604245364665985, - 0.06060638278722763, - 0.009718148969113827, - -0.04116726666688919, - -0.06553290784358978, - 0.025907723233103752, - 0.10810049623250961, - 0.004344447515904903, - -0.05155990272760391, - 0.016360482200980186, - 0.08970555663108826, - 0.04541507735848427, - 0.03530251979827881, - 0.07450313866138458, - 0.11716167628765106, - -0.024232065305113792, - 0.03948289155960083, - 0.07270722836256027, - 0.06019134819507599, - 0.04584244266152382, - 0.00047132931649684906, - 0.030714111402630806, - -0.026641711592674255, - -0.038248371332883835, - 0.01883004605770111, - -0.008875141851603985, - -0.06477877497673035, - -0.004779006354510784, - -0.0374729186296463, - 0.021545862779021263, - 0.06831329315900803, - -0.05458468198776245, - 0.00617500115185976, - 0.0787617638707161, - -0.0373375341296196, - 0.05991886556148529, - 0.0575408935546875, - 0.0020321765914559364, - 0.015993759036064148, - -0.0632714182138443, - -0.11278493702411652, - 0.009301645681262016, - -0.0337182953953743, - 0.06480618566274643, - 0.027052270248532295, - 0.039097510278224945, - 0.004699346609413624, - 0.07877302914857864, - 0.020960720255970955, - -0.006511107087135315, - 0.006062701344490051, - -0.060463957488536835, - 0.1382732391357422, - 0.12174190580844879, - -0.011481370776891708, - -0.0029270295053720474, - -0.043971166014671326, - 0.012903242371976376, - 0.045638203620910645, - -0.08375333249568939, - -0.03309832140803337, - 0.027462894096970558, - 0.03223282843828201, - 0.031752005219459534, - 0.12050914764404297, - 0.03856905922293663, - 0.022082416340708733, - 0.08624481409788132, - -0.08006644248962402, - -0.0688156932592392, - -0.00579611724242568, - 0.010021553374826908, - -0.058083657175302505, - 0.028511494398117065, - 0.057241059839725494, - 0.0008386839181184769, - -0.019197754561901093, - 0.06484843790531158, - 0.014739526435732841, - 0.024629533290863037, - -0.0394451878964901, - 0.02764122374355793, - 0.09091601520776749, - -0.005300463642925024, - 0.002080010250210762, - 0.07260888814926147, - 0.034074895083904266, - 0.06224292516708374, - 0.04912911355495453, - -0.0018699094653129578, - -0.11282136291265488, - 0.017588814720511436, - 0.08783174306154251, - 0.0471578873693943, - -0.05129261687397957, - -0.04582088440656662, - -0.02439703419804573, - -0.07250069826841354, - 0.04735745117068291, - -0.007515303790569305, - 0.05026981979608536, - 0.018632452934980392, - -0.02232292667031288, - 0.11856301128864288, - -0.03178063780069351, - 0.01418782863765955, - -0.02839784510433674, - 0.0079102274030447, - 0.025792010128498077, - 0.055774617940187454, - -0.08857817947864532, - -0.08377858996391296, - -0.0154368095099926, - 0.014051815494894981, - -0.015000306069850922, - -0.015888558700680733, - 0.06890768557786942, - -0.042123377323150635, - 0.032062508165836334, - -0.06658543646335602, - 0.014344142749905586, - -0.1122901663184166, - -0.037244632840156555, - -0.007160098757594824, - -0.039838001132011414, - 0.021749725565314293, - 0.08088943362236023, - -0.00023683346807956696, - 0.04669029638171196, - -0.030722428113222122, - -0.08501829206943512, - -0.0318550169467926, - 0.06577138602733612, - 0.05816980451345444, - -0.052318256348371506, - 0.02558310329914093, - 0.06252837926149368, - 0.02095206454396248, - -0.022422535344958305, - 0.0358896404504776, - 0.09545740485191345, - -0.0512487068772316, - -0.05405928194522858, - -0.06993772834539413, - 0.1120176613330841, - 0.09925265610218048, - -0.08723784238100052, - -0.05390038341283798, - -0.06408318132162094, - -0.028612671419978142, - -0.006222091615200043, - -0.05771072953939438, - -0.002332533011212945, - 0.04149501025676727, - -0.03364880383014679, - -0.10011672973632812, - -0.11556599289178848, - 0.028742685914039612, - -0.034020379185676575, - 0.019509855657815933, - -0.0727621465921402, - 0.01974644511938095, - 0.0215227622538805, - 0.027389343827962875, - -0.06032874435186386, - 0.019723227247595787, - -0.028119247406721115, - -0.061273664236068726, - -0.0449526384472847, - -0.01403660699725151, - 0.021733634173870087, - -0.08589866012334824, - -0.03290513530373573, - -0.05381286144256592, - 0.08086198568344116, - -0.04885432869195938, - 0.12307758629322052, - -0.007276137359440327, - -0.04249221086502075, - -0.07332247495651245, - -0.014989707618951797, - -0.026630859822034836, - 0.042871274054050446, - 0.07317540049552917, - 0.02236509695649147, - 0.0022440142929553986, - -0.06589357554912567, - 0.09296076744794846, - 0.062490496784448624, - 0.006272461730986834, - -0.06615958362817764, - -0.0058995019644498825, - -0.03407098352909088, - 0.039558045566082, - 0.00854878406971693, - -0.03187225013971329, - 0.047718171030282974, - 0.009061017073690891, - -0.02550385892391205, - 0.03765734285116196, - 0.06623832136392593, - 0.07305961102247238, - -0.08090965449810028 - ] - }, - "p245_316.wav": { - "name": "p245", - "embedding": [ - 0.052700091153383255, - 0.0929516851902008, - -0.023888561874628067, - 0.0279436893761158, - -0.06362634897232056, - 0.06653910875320435, - -0.1519125998020172, - 0.15338334441184998, - -0.03791432827711105, - 0.1356513798236847, - -0.05498111620545387, - 0.11340752243995667, - -0.02968265861272812, - -0.18666476011276245, - -0.009932130575180054, - 0.06142764165997505, - -0.02104286104440689, - -0.029441412538290024, - -0.027081826701760292, - -0.026479169726371765, - 0.023233771324157715, - 0.03504034876823425, - 0.012360403314232826, - 0.00651122909039259, - 0.041588641703128815, - 0.06240413337945938, - -0.022528182715177536, - 0.02042488567531109, - -0.011082634329795837, - -0.04184785485267639, - -0.04227110743522644, - 0.10580919682979584, - -0.06375288963317871, - 0.0057821571826934814, - 0.05385284870862961, - -0.012872878462076187, - -0.017697293311357498, - -0.06033528596162796, - -0.019461628049612045, - -0.001991869416087866, - -0.048481088131666183, - 0.07852614670991898, - 0.04392426088452339, - -0.007684227079153061, - 0.04456692934036255, - 0.017552457749843597, - -0.004163527395576239, - -0.043853141367435455, - -0.10957206040620804, - 0.15362334251403809, - 0.05158037692308426, - 0.0018751485040411353, - -0.08021630346775055, - -0.05423900485038757, - 0.10426251590251923, - -0.014155292883515358, - -0.10936152935028076, - -0.03749626874923706, - 0.08116064965724945, - 0.15562471747398376, - -0.030938956886529922, - -0.04333607852458954, - 0.023340702056884766, - 0.11511082202196121, - 0.059885162860155106, - 0.08908820152282715, - 0.07134212553501129, - 0.12082219123840332, - -0.022596009075641632, - 0.004966703709214926, - 0.058523282408714294, - 0.05392798036336899, - 0.05120730400085449, - -0.020771343261003494, - 0.017915882170200348, - -0.0011706710793077946, - -0.017064567655324936, - -0.0023517608642578125, - -0.024368327111005783, - -0.022327203303575516, - -0.01021807361394167, - 0.007941008545458317, - 0.010619237087666988, - 0.031403254717588425, - -0.0317842923104763, - 0.05075250566005707, - 0.0616997629404068, - -0.009904734790325165, - 0.08016122877597809, - 0.035082437098026276, - 0.0042455620132386684, - 0.0721815824508667, - -0.09732714295387268, - -0.06773847341537476, - 0.04387860745191574, - 9.427615441381931e-05, - 0.02445049025118351, - 0.06994818150997162, - 0.03845995292067528, - -0.012764198705554008, - 0.12626715004444122, - 0.04812723770737648, - 0.006713204551488161, - 0.03481718525290489, - -0.0925331637263298, - 0.13354972004890442, - 0.0752970352768898, - -0.026998694986104965, - 0.06647384911775589, - -0.05032973736524582, - 0.0625457763671875, - 0.06192457303404808, - -0.13637584447860718, - -0.06534100323915482, - 0.04106352850794792, - 0.02742895483970642, - -0.02337820641696453, - 0.1424683779478073, - 0.005762106738984585, - 0.04011613875627518, - 0.10318666696548462, - -0.10421924293041229, - -0.05735648050904274, - -0.007292265072464943, - 0.05085386335849762, - -0.08383700251579285, - 0.05903032049536705, - 0.07045300304889679, - -0.019930727779865265, - 0.02935514971613884, - 0.07605119794607162, - 0.001593107241205871, - 0.009753161109983921, - 0.009368106722831726, - -0.03470921516418457, - 0.016810979694128036, - -0.009193592704832554, - 0.0027433810755610466, - 0.0350138358771801, - 0.02556873857975006, - 0.05376753956079483, - -0.007857490330934525, - -0.01575278863310814, - -0.127521812915802, - 0.009785253554582596, - 0.04219074547290802, - 0.08773767203092575, - -0.01986626349389553, - -0.019652361050248146, - -0.040934719145298004, - -0.07552634179592133, - 0.012308219447731972, - -0.005414648912847042, - 0.08072786033153534, - -0.019961705431342125, - 0.0008645387133583426, - 0.1032775342464447, - 0.053825534880161285, - 0.002344182226806879, - -0.05937627702951431, - -0.03791382536292076, - 0.0008208039798773825, - 0.057626109570264816, - -0.09082728624343872, - -0.07520343363285065, - -0.01682969741523266, - 0.035550136119127274, - -0.027083538472652435, - 0.06699420511722565, - 0.04934248328208923, - 0.027304351329803467, - 0.02773827686905861, - -0.06642135977745056, - 0.02544267475605011, - -0.09791061282157898, - -0.06968384981155396, - -0.004751099739223719, - -0.005411320365965366, - -0.03227407857775688, - 0.08906125277280807, - 0.02509111911058426, - 0.05626029521226883, - -0.03150084614753723, - -0.05263696610927582, - -0.07094071060419083, - 0.054428473114967346, - 0.05072002485394478, - -0.02138522081077099, - 0.038732171058654785, - 0.05407753214240074, - -0.03880320116877556, - 0.04613623768091202, - 0.07538020610809326, - 0.10260307043790817, - -0.030366992577910423, - 0.03377996012568474, - -0.06664805114269257, - 0.09236228466033936, - 0.08922755718231201, - -0.08803154528141022, - -0.0937456339597702, - -0.02727394551038742, - -0.061081238090991974, - 0.02961682714521885, - -0.03202976658940315, - 0.009151730686426163, - 0.02037006802856922, - -0.007407433353364468, - -0.09795951843261719, - -0.09833365678787231, - 0.07409115135669708, - -0.06667649000883102, - 0.0068628969602286816, - -0.09085752069950104, - 0.053731128573417664, - 0.09055349230766296, - 0.034323737025260925, - -0.03714621812105179, - -0.023434627801179886, - 0.04656856507062912, - -0.02731327898800373, - 0.017679894343018532, - 0.06925743073225021, - 0.04674549773335457, - -0.10776910185813904, - -0.0018035814864560962, - -0.0635765790939331, - 0.07072868943214417, - -0.03822845220565796, - 0.16871008276939392, - 0.017064228653907776, - -0.04961357265710831, - -0.07662384957075119, - 0.036921948194503784, - -0.00830315425992012, - 0.04372786730527878, - 0.021670814603567123, - 0.07118090242147446, - 0.05179349333047867, - -0.042572442442178726, - 0.11008737981319427, - 0.03477926552295685, - -0.043584711849689484, - -0.054557688534259796, - -0.047779954969882965, - -0.04735986888408661, - 0.03721203655004501, - 0.0026129158213734627, - -0.10442133247852325, - -0.022919142618775368, - 0.03027445822954178, - 0.005656575318425894, - 0.06177434325218201, - 0.13987630605697632, - 0.06399593502283096, - -0.12579426169395447 - ] - }, - "p245_221.wav": { - "name": "p245", - "embedding": [ - 0.07544361799955368, - 0.04451741650700569, - -0.027681507170200348, - -0.004374104086309671, - -0.03241364285349846, - 0.03483644127845764, - -0.1356535702943802, - 0.12629100680351257, - -0.02857455611228943, - 0.08419238775968552, - -0.060268834233284, - 0.09003345668315887, - 0.008131748996675014, - -0.11563482880592346, - -0.033083476126194, - 0.025542940944433212, - 0.0027588587254285812, - -0.0035776710137724876, - -0.05997627601027489, - -0.022124825045466423, - 0.016603093594312668, - 0.0442960150539875, - 0.0009426684118807316, - -0.03988586738705635, - 0.03324153274297714, - 0.04289409518241882, - 0.010043145157396793, - 0.007975700311362743, - -0.005881816148757935, - 0.026675695553421974, - 0.009460016153752804, - 0.08440985530614853, - -0.05186442658305168, - -0.006030024960637093, - 0.059637054800987244, - 0.0069310637190938, - -0.015985246747732162, - -0.09521479904651642, - -0.016185719519853592, - 0.0013244310393929482, - -0.04903902858495712, - 0.08735046535730362, - 0.07502584159374237, - -0.02874191664159298, - 0.022333383560180664, - 0.026043782010674477, - 0.02701025828719139, - -0.06272056698799133, - -0.11332813650369644, - 0.16552746295928955, - -0.0015889890491962433, - 0.03540879487991333, - -0.12433241307735443, - -0.0137989092618227, - 0.08850128948688507, - -0.023125357925891876, - -0.0268558356910944, - -0.059244394302368164, - 0.02296876162290573, - 0.12654384970664978, - -0.01724345237016678, - -0.06185368075966835, - 0.02098693512380123, - 0.06467089056968689, - 0.05114338546991348, - 0.0362543947994709, - 0.11736927926540375, - 0.10611967742443085, - -0.026200182735919952, - 0.03454611822962761, - 0.04848644509911537, - 0.044430576264858246, - 0.013795167207717896, - -0.0289194006472826, - 0.027604494243860245, - -0.016849443316459656, - -0.03174396604299545, - 0.014437769539654255, - -0.02487555332481861, - -0.046981073915958405, - 0.010058768093585968, - 0.029266290366649628, - 0.03528539091348648, - 0.058564089238643646, - -0.08809112757444382, - 0.0531306117773056, - 0.046964868903160095, - -0.03604850545525551, - 0.07159565389156342, - 0.05380944535136223, - -0.0048292772844433784, - 0.0006522573530673981, - -0.07115405052900314, - -0.09153519570827484, - 0.019619170576334, - -0.014065293595194817, - 0.02214129827916622, - 0.04206022620201111, - 0.029126591980457306, - -0.00046254461631178856, - 0.09456859529018402, - 0.03324053809046745, - -0.0020092418417334557, - 0.00805889442563057, - -0.05740227550268173, - 0.11870633065700531, - 0.10924728214740753, - -0.010181987658143044, - 0.023776385933160782, - -0.0701700747013092, - 0.015464826487004757, - 0.049053654074668884, - -0.0961197093129158, - -0.07427269220352173, - 0.06160321831703186, - 0.032257817685604095, - 0.029683345928788185, - 0.1301005333662033, - -0.00784414354711771, - 0.013699506409466267, - 0.062298692762851715, - -0.08916642516851425, - -0.049913786351680756, - 0.008299124427139759, - 0.024506159126758575, - -0.03554802015423775, - 0.03293517231941223, - 0.05522609502077103, - -0.0003453441895544529, - -0.015393728390336037, - 0.06837913393974304, - 0.012430734932422638, - 0.010460647754371166, - -0.03049779310822487, - 0.04884966090321541, - 0.07646574079990387, - 0.02368527092039585, - -0.041405435651540756, - 0.028268422931432724, - 0.06265530735254288, - 0.046602096408605576, - 0.025626882910728455, - -0.013589153066277504, - -0.10694529116153717, - 0.002043513348326087, - 0.07029065489768982, - 0.06960459798574448, - -0.04823829233646393, - -0.037672240287065506, - -0.06410814076662064, - -0.04821501672267914, - -0.016810446977615356, - 0.0041579026728868484, - 0.0732460767030716, - 0.01337234303355217, - 0.01848025992512703, - 0.11203384399414062, - -0.00029760412871837616, - 0.028643043711781502, - -0.02242138981819153, - 0.021852931007742882, - 0.01564384438097477, - 0.0515604168176651, - -0.013542469590902328, - -0.08595363795757294, - -0.014480408281087875, - 0.012784597463905811, - -0.02818400040268898, - 0.00942278653383255, - 0.02582516148686409, - -0.00949062779545784, - 0.034442827105522156, - -0.12301231920719147, - 0.04304298385977745, - -0.12715674936771393, - 0.009744586423039436, - 0.006621603854000568, - -0.027041062712669373, - -0.008574966341257095, - 0.0894930437207222, - 0.025788266211748123, - 0.05943181738257408, - -0.01720021292567253, - -0.09868359565734863, - -0.028377655893564224, - 0.04999697208404541, - 0.08452276885509491, - -0.04848510026931763, - 0.004371732473373413, - 0.029633231461048126, - 0.03038657084107399, - 0.006165863946080208, - 0.07798436284065247, - 0.05496424436569214, - -0.030187522992491722, - -0.04236677289009094, - -0.020290227606892586, - 0.13149237632751465, - 0.03132545202970505, - -0.0879700630903244, - -0.05835426598787308, - -0.010684439912438393, - -0.04421423748135567, - -0.02981261909008026, - 0.002373363357037306, - 0.041454046964645386, - 0.03771060332655907, - -0.007370452396571636, - -0.11240511387586594, - -0.07204774022102356, - 0.019258588552474976, - -0.06044713780283928, - 0.014948980882763863, - -0.06785193085670471, - 0.023733096197247505, - 0.09173132479190826, - 0.026040010154247284, - -0.0038448739796876907, - -0.061807870864868164, - -0.03989121690392494, - -0.058476440608501434, - -0.03318732976913452, - -0.008631851524114609, - 0.034299299120903015, - -0.07333514094352722, - 0.025858450680971146, - -0.041163887828588486, - 0.08868387341499329, - -0.033839523792266846, - 0.12196126580238342, - 0.010845334269106388, - -0.07047492265701294, - -0.0878961831331253, - -0.010384556837379932, - -0.023336024954915047, - 0.0555521659553051, - 0.04085809737443924, - 0.018407411873340607, - 0.014211077243089676, - -0.06210947781801224, - 0.07970467209815979, - 0.0685562789440155, - -0.040377214550971985, - -0.06374724209308624, - -0.04796559363603592, - -0.015626423060894012, - 0.029782220721244812, - 0.015717513859272003, - -0.013266988098621368, - 0.014829211868345737, - 0.021852387115359306, - -0.03533736616373062, - 0.06431969255208969, - 0.0846015214920044, - 0.0581100769340992, - -0.10572266578674316 - ] - }, - "p245_187.wav": { - "name": "p245", - "embedding": [ - 0.012596029788255692, - 0.061141159385442734, - -0.05705878883600235, - 0.05083771422505379, - -0.07559505850076675, - 0.06834843754768372, - -0.12949217855930328, - 0.10235853493213654, - -0.04765508323907852, - 0.1339765042066574, - -0.03977084532380104, - 0.09403165429830551, - -0.04301803931593895, - -0.1925627440214157, - -0.010889668017625809, - 0.068511001765728, - -0.055938709527254105, - -0.07704132050275803, - -0.05660233274102211, - -0.022700419649481773, - 0.029209647327661514, - 0.04498206824064255, - -0.012401353567838669, - 0.010396387428045273, - 0.002286086091771722, - 0.08178050071001053, - -0.04011232405900955, - -0.006387907080352306, - -0.025729957967996597, - -0.031707413494586945, - -0.048216212540864944, - 0.10317922383546829, - -0.06678211688995361, - -0.010074969381093979, - 0.01823790743947029, - 0.00016468582907691598, - -0.0065436577424407005, - -0.0403321273624897, - 0.0036215484142303467, - 0.007762003690004349, - -0.07703083008527756, - 0.0746045932173729, - 0.029316946864128113, - 0.015015416778624058, - 0.05132196843624115, - -0.018086260184645653, - -0.04280591756105423, - -0.03409750387072563, - -0.10172679275274277, - 0.15774837136268616, - 0.09488138556480408, - -0.025287648662924767, - -0.042640987783670425, - -0.04880565032362938, - 0.09212595224380493, - 0.01593508943915367, - -0.14055019617080688, - -0.0841282308101654, - 0.08707362413406372, - 0.1419597566127777, - -0.017066320404410362, - -0.02310837060213089, - 0.018172737210989, - 0.11889756470918655, - 0.06390821188688278, - 0.08446422219276428, - 0.052047405391931534, - 0.11497338861227036, - -0.014206906780600548, - -0.025666479021310806, - 0.09210590273141861, - 0.04044613987207413, - 0.06135544553399086, - -0.01846320927143097, - 0.03767913207411766, - -0.012173598632216454, - -0.0037247275467962027, - -0.0049050841480493546, - -0.020324071869254112, - -0.02007388137280941, - -2.7015663363272324e-05, - -0.0033866402227431536, - -0.007547921501100063, - 0.035591065883636475, - -0.0162662323564291, - 0.03591470420360565, - 0.08923507481813431, - -0.020721787586808205, - 0.06747323274612427, - 0.05030103027820587, - -0.00071132299490273, - 0.07596778124570847, - -0.08439666032791138, - -0.044020406901836395, - 0.05147150158882141, - 0.015285339206457138, - 0.010167823173105717, - 0.05438341200351715, - 0.024745512753725052, - -0.01831781305372715, - 0.10467488318681717, - 0.004066504072397947, - -0.0061568450182676315, - 0.02328832820057869, - -0.10010657459497452, - 0.13986125588417053, - 0.08326171338558197, - -0.022993624210357666, - 0.01926986686885357, - -0.021677298471331596, - 0.05835209786891937, - 0.05689062923192978, - -0.11279657483100891, - -0.0498005636036396, - 0.045727308839559555, - 0.0048836832866072655, - -0.044865477830171585, - 0.14888601005077362, - 0.026633255183696747, - 0.027824513614177704, - 0.12680459022521973, - -0.10056325048208237, - -0.04986267909407616, - -0.013736365363001823, - 0.036769237369298935, - -0.08810079097747803, - 0.041473980993032455, - 0.07428628206253052, - -0.008025162853300571, - 0.03350050374865532, - 0.0784645527601242, - -0.00801876187324524, - 0.007479770574718714, - -4.6828266931697726e-05, - -0.04600667208433151, - 0.032336801290512085, - 0.0022146268747746944, - -0.007334074471145868, - 0.06355356425046921, - 0.0016760729486122727, - 0.058715928345918655, - -0.04301973432302475, - -0.00919408816844225, - -0.1290985494852066, - 0.028733201324939728, - 0.039158087223768234, - 0.06416044384241104, - -0.02491261437535286, - 0.012849229387938976, - -0.045506205409765244, - -0.0949413850903511, - 0.027799611911177635, - -0.027233976870775223, - 0.09099190682172775, - -0.033994294703006744, - -0.035373471677303314, - 0.09827195852994919, - 0.03844418004155159, - 9.681371011538431e-05, - -0.05182254686951637, - -0.049993935972452164, - 0.008803656324744225, - 0.061391640454530716, - -0.10460279881954193, - -0.055654119700193405, - -0.017895681783556938, - 0.05463574081659317, - 0.002846270566806197, - 0.05532701313495636, - 0.07213053852319717, - 0.02373330108821392, - 0.0012804149882867932, - -0.06415741890668869, - 0.0357990637421608, - -0.06807565689086914, - -0.05571776628494263, - -0.0122703080996871, - -0.04815077409148216, - -0.019920460879802704, - 0.09116028249263763, - 0.0012234277091920376, - 0.020913096144795418, - -0.055766765028238297, - -0.07920531183481216, - -0.06939610093832016, - 0.06947250664234161, - 0.06028511002659798, - -0.029401525855064392, - 0.04803619533777237, - 0.06251256167888641, - -0.04168091341853142, - 0.017523834481835365, - 0.052871666848659515, - 0.14806526899337769, - -0.04210107773542404, - 0.033903852105140686, - -0.06969629973173141, - 0.09020831435918808, - 0.07265383005142212, - -0.0707852691411972, - -0.05689510703086853, - -0.017131086438894272, - -0.04732293635606766, - 0.048709820955991745, - -0.06991229951381683, - 0.0026000456418842077, - 0.03500436618924141, - 0.005721741355955601, - -0.1188526526093483, - -0.10222496092319489, - 0.07778771966695786, - -0.06075313314795494, - 0.003890916472300887, - -0.10510808229446411, - 0.04672253131866455, - 0.065401092171669, - 0.047018345445394516, - -0.06819487363100052, - 0.018421677872538567, - 0.05455322191119194, - -0.012032059021294117, - 0.04431229457259178, - 0.0657096654176712, - 0.043636422604322433, - -0.11881764233112335, - -0.0529114231467247, - -0.08091261237859726, - 0.07293780148029327, - -0.03999851271510124, - 0.14216472208499908, - 0.01532393041998148, - -0.01431943941861391, - -0.07718434184789658, - 0.06583579629659653, - 0.006376232951879501, - 0.058955155313014984, - 0.038301605731248856, - 0.08492980152368546, - 0.057431332767009735, - -0.022452017292380333, - 0.11928348988294601, - 0.04299422726035118, - -0.024492546916007996, - -0.04528416320681572, - -0.012552957981824875, - -0.05504211038351059, - 0.04242349788546562, - 0.020605294033885002, - -0.1146371066570282, - -0.001904359902255237, - 0.04225528985261917, - 0.0016734092496335506, - 0.05993179231882095, - 0.12889130413532257, - 0.07609815895557404, - -0.09642072767019272 - ] - }, - "p245_244.wav": { - "name": "p245", - "embedding": [ - 0.015157620422542095, - 0.1280662566423416, - 0.012902977876365185, - 0.008541541174054146, - -0.023153753951191902, - 0.07905904203653336, - -0.10465726256370544, - 0.13588006794452667, - -0.09854014217853546, - 0.15237274765968323, - -0.11579623818397522, - 0.08611460775136948, - -0.05950622260570526, - -0.16523081064224243, - -0.061877913773059845, - 0.04828590527176857, - -0.05972617492079735, - 0.02642555721104145, - -0.05299194157123566, - 0.012029719538986683, - 0.056963786482810974, - 0.01583811081945896, - 0.01436976995319128, - -0.023658983409404755, - 0.023346658796072006, - 0.02925366349518299, - 0.034538548439741135, - 0.06582436710596085, - 0.05200430005788803, - -0.0500522181391716, - -0.019896874204277992, - 0.14044435322284698, - -0.015244483016431332, - 0.027770008891820908, - 0.08281218260526657, - 0.014411162585020065, - 0.009064699523150921, - -0.045264992862939835, - -0.001370408572256565, - 0.0006966405780985951, - -0.027426065877079964, - 0.03869946300983429, - 0.007182638626545668, - 0.02760354056954384, - 0.04760516434907913, - 0.04462026432156563, - -0.032199230045080185, - -0.0444796048104763, - -0.06649202108383179, - 0.16035136580467224, - 0.057884152978658676, - -0.016115663573145866, - -0.06668198108673096, - -0.10085226595401764, - 0.11680220067501068, - 0.003864242462441325, - -0.1287318915128708, - -0.03475351259112358, - 0.10727717727422714, - 0.18859662115573883, - -0.009541080333292484, - -0.008865938521921635, - -0.0021360195241868496, - 0.11548824608325958, - -0.02306295558810234, - 0.115117147564888, - 0.04356386139988899, - 0.05877058953046799, - 0.06309426575899124, - 0.06548969447612762, - 0.0502641424536705, - 0.03158501535654068, - -0.007655811496078968, - -0.04324665293097496, - 0.03878512233495712, - -0.021659985184669495, - -0.03017851710319519, - 0.05297819897532463, - -0.02193160355091095, - -0.024461058899760246, - -0.014537391252815723, - 0.02656308002769947, - -0.010496634989976883, - -0.02818768285214901, - -0.02320687659084797, - 0.05188872665166855, - -0.03935471922159195, - 0.006939942017197609, - 0.08570580929517746, - 0.04858342185616493, - 0.015884390100836754, - 0.030341383069753647, - -0.026812471449375153, - -0.13850785791873932, - -0.015858955681324005, - -0.003745785215869546, - -0.008354886434972286, - 0.05596143379807472, - 0.01924893818795681, - -0.021216878667473793, - 0.10027248412370682, - 0.061965975910425186, - 0.014054552651941776, - 0.03820875659584999, - -0.13620363175868988, - 0.10815736651420593, - 0.06344486773014069, - 0.005911736749112606, - 0.03330852836370468, - -0.02108769491314888, - 0.09143178910017014, - 0.09591739624738693, - -0.1506294161081314, - -0.08359047025442123, - 0.018436571583151817, - 0.002948738867416978, - 0.0035635745152831078, - 0.07334635406732559, - -0.010056732222437859, - -0.033189211040735245, - 0.09899751842021942, - -0.07976589351892471, - -0.07831475883722305, - -0.05339564010500908, - 0.049559157341718674, - -0.04860967397689819, - 0.04483095929026604, - 0.021273093298077583, - -0.02921343222260475, - -0.02183394506573677, - 0.07835209369659424, - -0.016324905678629875, - 0.025435157120227814, - 0.0355246365070343, - -0.051567915827035904, - 0.03772864490747452, - -0.07808506488800049, - 0.019515827298164368, - 0.03784070536494255, - 0.09629470109939575, - 0.04965567961335182, - 0.01230591256171465, - -0.06264735013246536, - -0.05170727148652077, - -0.019810933619737625, - 0.052450526505708694, - 0.026648562401533127, - 0.0005201101885177195, - -0.0082823121920228, - -0.028736691921949387, - -0.0499672070145607, - 0.014001957140862942, - -0.012483155354857445, - 0.11741535365581512, - 0.005480760242789984, - -0.0007769843796268106, - 0.10091301053762436, - -0.009140508249402046, - -0.011305494233965874, - -0.08737270534038544, - -0.02917810156941414, - 0.04699983447790146, - 0.00973961316049099, - -0.08278350532054901, - -0.04763023182749748, - 0.03154463320970535, - 0.0026425619143992662, - -0.018831267952919006, - 0.0025461509358137846, - 0.02188570238649845, - 0.007187790237367153, - 0.06341048330068588, - -0.055779047310352325, - 0.02527732029557228, - -0.11441327631473541, - -0.04378209263086319, - -0.0200076662003994, - -0.04527204856276512, - -0.018684620037674904, - 0.07624778151512146, - -0.0027864093426615, - -0.00929536484181881, - 0.04374432563781738, - -0.08929353207349777, - -0.048692017793655396, - 0.09048879891633987, - 0.0808616653084755, - 0.026113083586096764, - 0.07289928942918777, - 0.03635279834270477, - -0.03004615381360054, - 0.0690738782286644, - 0.07146404683589935, - 0.09707856178283691, - -0.0014301573392003775, - -0.02368122525513172, - -0.08191797137260437, - 0.05331761762499809, - 0.06625315546989441, - -0.11483199894428253, - -0.0994897335767746, - -0.0410405695438385, - -0.04697568342089653, - 0.052460819482803345, - -0.024758759886026382, - 0.007315436843782663, - 0.013924474827945232, - -0.03480202332139015, - -0.07345923036336899, - -0.06326351314783096, - 0.10047326982021332, - -0.06961528211832047, - -0.04817875847220421, - -0.03589896112680435, - 0.049925725907087326, - 0.08763585239648819, - 0.03277474641799927, - -0.02049325220286846, - 0.005890677683055401, - 0.059558264911174774, - -0.11488718539476395, - -0.04705577343702316, - -0.007321113720536232, - -0.017281435430049896, - -0.05174028128385544, - 0.06147269532084465, - -0.09238504618406296, - 0.07521699368953705, - -0.08781251311302185, - 0.16216593980789185, - -0.04535123333334923, - -0.07118268311023712, - -0.0862535834312439, - 0.04955045133829117, - -0.04490290582180023, - 0.013406594283878803, - 0.03827185928821564, - 0.06513432413339615, - 0.01425163447856903, - -0.06357578933238983, - 0.12632222473621368, - -0.014399769715964794, - -0.005276745185256004, - -0.04854385182261467, - -0.04046763479709625, - -0.06491805613040924, - -0.015935152769088745, - -0.015658725053071976, - -0.09553497284650803, - -0.009389840066432953, - 0.004181795287877321, - -0.013229004107415676, - 0.07735807448625565, - 0.11161790043115616, - 0.03208980709314346, - -0.09762602299451828 - ] - }, - "p245_158.wav": { - "name": "p245", - "embedding": [ - 0.03636794909834862, - 0.07408522069454193, - -0.029218478128314018, - 0.08177635073661804, - -0.06782162934541702, - 0.0618540421128273, - -0.09660547971725464, - 0.11868441104888916, - -0.03968634083867073, - 0.12036117911338806, - -0.06789775937795639, - 0.10166685283184052, - -0.053389035165309906, - -0.15586525201797485, - -0.010718374513089657, - 0.07490645349025726, - -0.04263267293572426, - -0.038016337901353836, - -0.07048040628433228, - -0.0015694987960159779, - 0.024698931723833084, - 0.028321029618382454, - 0.05222189426422119, - 0.005631127394735813, - -0.003852994879707694, - 0.05570049211382866, - -0.005814242176711559, - 0.0503392294049263, - 0.03300800174474716, - -0.059968627989292145, - -0.036748550832271576, - 0.10470617562532425, - -0.027219461277127266, - 0.013587514869868755, - 0.037255171686410904, - 0.011195352301001549, - -0.00705090444535017, - -0.057694315910339355, - -0.0158570297062397, - -0.029805712401866913, - -0.061803851276636124, - 0.06483978033065796, - 0.006504404824227095, - -0.02211831510066986, - 0.06239274889230728, - -0.023987803608179092, - -0.06901973485946655, - -0.0169401615858078, - -0.1138477474451065, - 0.14198577404022217, - 0.08901195973157883, - -0.005303285550326109, - -0.07042433321475983, - -0.0670144259929657, - 0.09023643285036087, - -0.018352758139371872, - -0.13455168902873993, - -0.06878501176834106, - 0.07643783092498779, - 0.16312626004219055, - 0.0027912412770092487, - 0.006091908551752567, - 0.01098263543099165, - 0.13018983602523804, - 0.08016090095043182, - 0.0921977311372757, - 0.06344588845968246, - 0.12187433242797852, - 0.0032693627290427685, - 0.03604263812303543, - 0.05848647654056549, - 0.05705815181136131, - 0.04459799826145172, - 0.024683550000190735, - 0.016520438715815544, - -0.011246333830058575, - -0.011799464002251625, - 0.0022719241678714752, - -0.03526310622692108, - -0.034555867314338684, - -0.0224318765103817, - -0.00931625533849001, - 0.00201701489277184, - 0.0015893243253231049, - -0.017011523246765137, - 0.05614441633224487, - 0.04730871319770813, - -0.028897108510136604, - 0.057838715612888336, - 0.03517724946141243, - -0.012876738794147968, - 0.054476045072078705, - -0.04793250933289528, - -0.07878871262073517, - -0.01127027627080679, - 0.012375024147331715, - 0.023755429312586784, - 0.044638101011514664, - 0.010993423871695995, - -0.014322813600301743, - 0.11365317553281784, - 0.027714502066373825, - -0.006206504534929991, - 0.04823929816484451, - -0.08984355628490448, - 0.12267597019672394, - 0.07083822786808014, - -0.0011475087376311421, - 0.036867767572402954, - -0.01526604499667883, - 0.06316839903593063, - 0.07226600497961044, - -0.10068142414093018, - -0.048931967467069626, - 0.007679302245378494, - -0.02346210926771164, - -0.02364109456539154, - 0.09442295134067535, - 0.031209997832775116, - 0.03442900627851486, - 0.11493868380784988, - -0.09506888687610626, - -0.05987504497170448, - 0.002745419042184949, - 0.053859613835811615, - -0.0700913816690445, - 0.046697113662958145, - 0.04093196988105774, - 0.0009490498341619968, - 0.00941290333867073, - 0.08174094557762146, - -0.006261578761041164, - 0.014371974393725395, - 0.03929998725652695, - -0.08935508131980896, - 0.03423840180039406, - -0.054238349199295044, - -0.014292575418949127, - 0.07969090342521667, - 0.030051421374082565, - 0.07168838381767273, - -0.042200855910778046, - 0.003494914388284087, - -0.0920737087726593, - -0.002001882530748844, - 0.046577922999858856, - 0.07320979237556458, - -0.0016381286550313234, - 0.002057683654129505, - -0.04588992893695831, - -0.06321508437395096, - 0.04935348033905029, - -0.03699737787246704, - 0.07722482085227966, - -0.042431462556123734, - -0.016282720491290092, - 0.10615359246730804, - -0.01031394861638546, - -0.009273335337638855, - -0.07583662867546082, - -0.03662590682506561, - 0.023021847009658813, - 0.05599135532975197, - -0.08044606447219849, - -0.05300554633140564, - 0.016175316646695137, - 0.0391780324280262, - -0.029483648017048836, - 0.040394652634859085, - 0.041059065610170364, - 0.013634743168950081, - 0.007760524749755859, - -0.0399499386548996, - 0.012870780192315578, - -0.07050175964832306, - -0.0517011433839798, - 0.004763354081660509, - -0.030512569472193718, - -0.014255639165639877, - 0.06707319617271423, - 0.03871876746416092, - 0.029323376715183258, - -0.0002216622233390808, - -0.09811811149120331, - -0.10160472244024277, - 0.07107927650213242, - 0.026411235332489014, - 0.0017819879576563835, - 0.07137942314147949, - 0.06284067779779434, - -0.05381152778863907, - 0.03594835847616196, - 0.04912285506725311, - 0.09870834648609161, - -0.026932405307888985, - -0.004567543510347605, - -0.11137527227401733, - 0.06321048736572266, - 0.122107595205307, - -0.09028545767068863, - -0.08155925571918488, - -0.03774857893586159, - -0.059436630457639694, - 0.056765250861644745, - -0.057279862463474274, - -0.021987317129969597, - 0.07938526570796967, - -0.03716309368610382, - -0.12952059507369995, - -0.10323606431484222, - 0.1277615875005722, - -0.08645600080490112, - -0.01288935262709856, - -0.06378473341464996, - 0.020325936377048492, - 0.048718489706516266, - 0.03205057233572006, - -0.05221455171704292, - 0.024769719690084457, - 0.07441788911819458, - -0.05886536091566086, - 0.010278910398483276, - 0.06928111612796783, - 0.013816374354064465, - -0.09825587272644043, - -0.016557861119508743, - -0.07341115921735764, - 0.049111366271972656, - -0.037480395287275314, - 0.1439986526966095, - -0.004929577466100454, - -0.02724667266011238, - -0.07297278940677643, - 0.0574522390961647, - -0.02209884487092495, - 0.06392282992601395, - 0.04267135262489319, - 0.06446905434131622, - 0.034349579364061356, - -0.06657631695270538, - 0.13590319454669952, - 0.034329745918512344, - -0.03836118057370186, - -0.05765734985470772, - -0.03171355649828911, - -0.0681348592042923, - 0.024496179074048996, - -0.003957423381507397, - -0.09631752967834473, - 0.0013710327912122011, - 0.009104754775762558, - -0.03447079658508301, - 0.06533177196979523, - 0.13263574242591858, - 0.08009309321641922, - -0.07407161593437195 - ] - }, - "p245_278.wav": { - "name": "p245", - "embedding": [ - 0.05478248745203018, - 0.0654914528131485, - -0.030155498534440994, - 0.05006328225135803, - -0.06119343638420105, - 0.035684555768966675, - -0.10848580300807953, - 0.1078013926744461, - -0.021831056103110313, - 0.13676849007606506, - -0.05876852571964264, - 0.11819253861904144, - -0.012822561897337437, - -0.16776534914970398, - -0.008926431648433208, - 0.05648058280348778, - -0.05177285149693489, - -0.035407066345214844, - -0.06169877201318741, - -0.02790026180446148, - 0.03653136268258095, - 0.06757098436355591, - 0.07132668793201447, - -0.023736946284770966, - 0.022700008004903793, - 0.06713889539241791, - -0.007135279942303896, - 0.04096405580639839, - 0.021322842687368393, - -0.10620146989822388, - -0.05070004612207413, - 0.08898956328630447, - -0.04560593143105507, - 0.016671057790517807, - 0.014638209715485573, - -0.01341228187084198, - 0.0010660383850336075, - -0.0646844357252121, - -0.056926026940345764, - 0.019003257155418396, - -0.053564853966236115, - 0.06721173226833344, - 0.01438442338258028, - -0.048880890011787415, - 0.053169410675764084, - -0.024588685482740402, - -0.048022232949733734, - -0.030644766986370087, - -0.10996608436107635, - 0.17169854044914246, - 0.07533164322376251, - 0.004216858185827732, - -0.06320375204086304, - -0.08148860186338425, - 0.09647262096405029, - -0.013156525790691376, - -0.13923096656799316, - -0.03373803198337555, - 0.06174682453274727, - 0.14544759690761566, - -0.016228679567575455, - -0.026643428951501846, - 0.05127153545618057, - 0.10532969236373901, - 0.0773783028125763, - 0.06499829143285751, - 0.08367543667554855, - 0.10377830266952515, - -0.015506149269640446, - 0.0350506454706192, - 0.04926124960184097, - 0.10120592266321182, - 0.05283767729997635, - 0.007985003292560577, - 0.01713675446808338, - 0.015566572546958923, - -0.032079484313726425, - -0.024455683305859566, - -0.015665283426642418, - -0.008391076698899269, - -0.006056316662579775, - -0.017124952748417854, - 0.017281435430049896, - 0.009548640809953213, - -0.033266644924879074, - 0.04581880569458008, - 0.04136952757835388, - -0.013271613977849483, - 0.056870944797992706, - 0.02831896021962166, - 0.011884119361639023, - 0.06806081533432007, - -0.059026796370744705, - -0.07520255446434021, - -0.007246255408972502, - 0.019319647923111916, - 0.021197669208049774, - 0.06681819260120392, - 0.04678625240921974, - -0.033802807331085205, - 0.1316288262605667, - 0.037030622363090515, - -0.005198957864195108, - 0.008820366114377975, - -0.07641861587762833, - 0.09652912616729736, - 0.10601826012134552, - -0.01883583888411522, - 0.05614205449819565, - -0.03866414725780487, - 0.08375433087348938, - 0.061983682215213776, - -0.12790998816490173, - -0.06512638181447983, - 0.012298696674406528, - -0.02458438277244568, - -0.001408421783708036, - 0.12263201177120209, - 0.013288180343806744, - 0.04702261835336685, - 0.11125840991735458, - -0.10991761088371277, - -0.05253775790333748, - -0.004227515310049057, - 0.05360811948776245, - -0.09626469761133194, - 0.06017468497157097, - 0.03829836845397949, - -0.02324896678328514, - 0.009931113570928574, - 0.07641367614269257, - -0.0294354110956192, - 0.02223369851708412, - 0.004720824770629406, - -0.06985270977020264, - 0.01434963196516037, - -0.0460321307182312, - -0.012183459475636482, - 0.08463872969150543, - 0.024527626112103462, - 0.05627722293138504, - -0.03708511218428612, - -0.04226204752922058, - -0.13128814101219177, - 0.03298772871494293, - 0.026217985898256302, - 0.06580395251512527, - -0.00681707076728344, - -0.009905772283673286, - -0.03391108289361, - -0.08708173036575317, - 0.05146803334355354, - -0.028685929253697395, - 0.07056191563606262, - -0.025998076424002647, - -0.007207034155726433, - 0.10676755011081696, - 0.02210184931755066, - -0.012761189602315426, - -0.0402388796210289, - -0.049234528094530106, - 0.005367421545088291, - 0.055032193660736084, - -0.08735334128141403, - -0.07822079956531525, - -0.008211322128772736, - 0.017171088606119156, - -0.006194661371409893, - 0.05070827156305313, - 0.0503276027739048, - 0.012079538777470589, - 0.019724011421203613, - -0.06969340890645981, - 0.0020727338269352913, - -0.0971924364566803, - -0.07336390763521194, - -0.007661875803023577, - -0.032338328659534454, - -0.010613098740577698, - 0.0916496217250824, - 0.012261785566806793, - 0.02863418683409691, - -0.03354836255311966, - -0.08079648017883301, - -0.09543775767087936, - 0.0639791339635849, - 0.037300340831279755, - 0.002587447641417384, - 0.043982330709695816, - 0.07693731784820557, - -0.03697185218334198, - 0.04250878095626831, - 0.03332526981830597, - 0.0956505760550499, - -0.025455493479967117, - 0.011223061010241508, - -0.07478432357311249, - 0.10043232142925262, - 0.0954500138759613, - -0.07794070243835449, - -0.07680858671665192, - -0.045787833631038666, - -0.08818846195936203, - 0.05907116085290909, - -0.016416313126683235, - -0.009622457437217236, - 0.04702538996934891, - -0.007945523597300053, - -0.11236733198165894, - -0.08484476059675217, - 0.11448071897029877, - -0.05408007279038429, - -0.023011289536952972, - -0.07300858944654465, - 0.026208505034446716, - 0.07481840252876282, - 0.057982541620731354, - -0.01708587259054184, - 0.02267123945057392, - 0.058120012283325195, - -0.046625152230262756, - 0.017153888940811157, - 0.08223636448383331, - 0.032293591648340225, - -0.08871110528707504, - -0.029793445020914078, - -0.07229975610971451, - 0.03841162472963333, - -0.051842860877513885, - 0.13208141922950745, - 0.0022065092343837023, - -0.057998765259981155, - -0.08510474860668182, - 0.06994156539440155, - -0.02224171906709671, - 0.05679536983370781, - 0.049887172877788544, - 0.06279656291007996, - 0.059543073177337646, - -0.098089300096035, - 0.1073068231344223, - 0.05193856731057167, - -0.03036480024456978, - -0.05680491030216217, - -0.044343676418066025, - -0.038341205567121506, - 0.029765717685222626, - 0.010471574030816555, - -0.07372936606407166, - 0.004315624013543129, - 0.009176323190331459, - -0.013452151790261269, - 0.053752653300762177, - 0.12671160697937012, - 0.06682229042053223, - -0.1108715832233429 - ] - }, - "p245_334.wav": { - "name": "p245", - "embedding": [ - 0.04873369261622429, - 0.10693557560443878, - -0.0036122030578553677, - 0.027499958872795105, - -0.03217095881700516, - 0.03909189999103546, - -0.07382022589445114, - 0.09170767664909363, - 0.03452327474951744, - 0.06702721118927002, - -0.07194428890943527, - 0.08427950739860535, - -0.02937258780002594, - -0.1347297728061676, - 0.016911733895540237, - 0.0387294664978981, - -0.020503666251897812, - 0.0031855504494160414, - -0.025329967960715294, - -0.021834973245859146, - -0.005436833016574383, - 0.015500199049711227, - 0.025590229779481888, - -0.017003227025270462, - 0.012133880518376827, - 0.024779539555311203, - -0.02642269991338253, - 0.016506386920809746, - -0.013045243918895721, - -0.044783830642700195, - -0.030460629612207413, - 0.06558965146541595, - -0.03640653192996979, - -0.0047957925125956535, - 0.009877799078822136, - -0.03595206141471863, - 0.0030451274942606688, - -0.06579308956861496, - -0.04624996334314346, - 0.02209617756307125, - -0.052699975669384, - 0.05233551189303398, - 0.03917326778173447, - -0.04705752432346344, - 0.04233626276254654, - 0.01647038199007511, - -0.0319753997027874, - -0.018268324434757233, - -0.09570550918579102, - 0.12502112984657288, - 0.032487884163856506, - 0.03818941116333008, - -0.06252004951238632, - -0.02137906849384308, - 0.08839713782072067, - 0.011459152214229107, - -0.0364052951335907, - -0.020795777440071106, - 0.033172428607940674, - 0.07304715365171432, - 0.030338570475578308, - -0.025331459939479828, - 0.033425796777009964, - 0.07909417152404785, - 0.044216569513082504, - 0.030128872022032738, - 0.07211612910032272, - 0.11590670794248581, - -0.024705886840820312, - 0.02309587225317955, - 0.03916897624731064, - 0.024899309501051903, - 0.02518191561102867, - -0.004878608509898186, - -0.0018378261011093855, - -0.0080089271068573, - -0.00011170034849783406, - -0.015379799529910088, - -0.017086666077375412, - -0.03629455342888832, - 0.03411717340350151, - 0.00014239922165870667, - 0.008746813982725143, - 0.018694989383220673, - -0.03848152980208397, - -0.004877845756709576, - 0.06771387904882431, - 0.038313619792461395, - 0.07434645295143127, - 0.023253921419382095, - 0.02067210152745247, - 0.05656753107905388, - -0.07962983101606369, - -0.07256370782852173, - 0.02649257332086563, - 0.0085770757868886, - 0.034118637442588806, - 0.04059663414955139, - 0.03565572202205658, - -0.022544417530298233, - 0.09793820977210999, - 0.006642095744609833, - 0.012323970906436443, - 0.0027670941781252623, - -0.05990158021450043, - 0.0496484600007534, - 0.05955754965543747, - -0.00415319949388504, - 0.06258679926395416, - 0.0010111108422279358, - 0.05643618851900101, - 0.058291252702474594, - -0.07653731107711792, - -0.014202798716723919, - -0.0010597892105579376, - 0.030780520290136337, - -0.005337671376764774, - 0.11156058311462402, - 0.010762704536318779, - 0.053148671984672546, - 0.09943026304244995, - -0.06494399905204773, - -0.018177129328250885, - 0.02894250676035881, - 0.006910689175128937, - -0.025696545839309692, - 0.04709519073367119, - 0.04810675233602524, - -0.019044259563088417, - -0.016387324780225754, - 0.0316070131957531, - 0.008910607546567917, - 0.016313519328832626, - -0.031074119731783867, - -0.003475576639175415, - -0.005818442907184362, - 0.006374956574290991, - -0.021304359659552574, - 0.018476711586117744, - 0.04271669685840607, - 0.009739421308040619, - 0.012309007346630096, - -0.030352434143424034, - -0.08430805057287216, - 0.023059625178575516, - -0.008350951597094536, - 0.0301833376288414, - 0.038034502416849136, - -0.0340069904923439, - -0.05100385472178459, - -0.028611307963728905, - 0.03031962178647518, - -0.020830025896430016, - 0.05372178182005882, - 0.052251748740673065, - -0.021049227565526962, - 0.061715610325336456, - 0.02695293352007866, - 0.026425324380397797, - -0.02373645454645157, - -0.09614600986242294, - 0.007587619125843048, - 0.02758411131799221, - -0.04478609561920166, - -0.048353008925914764, - -0.010006466880440712, - -0.030420511960983276, - -0.018697096034884453, - 0.015556196682155132, - 0.0558282844722271, - 0.0019114328315481544, - 0.0035986441653221846, - -0.0758344829082489, - 0.007346875965595245, - -0.03445557504892349, - -0.08681651204824448, - 0.04090768098831177, - 0.02839125506579876, - -0.0070141032338142395, - 0.07862793654203415, - 0.02051617205142975, - 0.018865486606955528, - -0.049923479557037354, - -0.028671864420175552, - -0.004431804176419973, - 0.028754226863384247, - 0.020658444613218307, - -0.004458627663552761, - 0.035873278975486755, - 0.03657901659607887, - -0.008428744040429592, - 0.023152269423007965, - 0.026673417538404465, - 0.061416976153850555, - -0.029842248186469078, - 0.004579775966703892, - -0.0046555399894714355, - 0.08981090039014816, - 0.0633201077580452, - -0.07316349446773529, - -0.07605834305286407, - -0.028967570513486862, - -0.048072449862957, - 0.015740511938929558, - -0.007654663175344467, - 0.019183872267603874, - 0.028416959568858147, - -0.009511109441518784, - -0.03297748044133186, - -0.11363355815410614, - 0.02397424541413784, - -0.029421448707580566, - -0.010374137200415134, - -0.046779390424489975, - 0.029495395720005035, - 0.058524906635284424, - 0.02355324476957321, - -0.031237466260790825, - -0.011365748941898346, - 0.02737213671207428, - 0.008947036229074001, - -0.0042488775216042995, - 0.038352008908987045, - 0.05719178542494774, - -0.04179975017905235, - -0.009760278277099133, - -0.05449621379375458, - 0.04594341665506363, - 0.014411951415240765, - 0.10113872587680817, - 0.04233062267303467, - -0.009858286008238792, - -0.08939790725708008, - 0.05329596623778343, - -0.008047381415963173, - 0.04138759523630142, - -0.02176138013601303, - 0.023307902738451958, - 0.058196406811475754, - -0.055288344621658325, - 0.08841335028409958, - 0.027476457878947258, - -0.03257935121655464, - -0.03810466080904007, - -0.007382941897958517, - -0.04656383395195007, - 0.030206400901079178, - 0.004072529263794422, - -0.05502880737185478, - -0.021597426384687424, - 0.038785599172115326, - 0.05064279958605766, - 0.051770783960819244, - 0.0858384221792221, - 0.03550642728805542, - -0.031274985522031784 - ] - }, - "p245_373.wav": { - "name": "p245", - "embedding": [ - 0.025988437235355377, - 0.09820541739463806, - -0.07655295729637146, - 0.019693441689014435, - 0.0015632472932338715, - 0.002512953244149685, - -0.13236570358276367, - 0.0769578069448471, - -0.019709181040525436, - 0.12228292971849442, - -0.04034237936139107, - 0.10550229251384735, - -0.06892996281385422, - -0.10437479615211487, - 0.011496221646666527, - 0.061133645474910736, - 0.003962080925703049, - -0.00980973057448864, - 0.00441686250269413, - -0.029012421146035194, - 0.057221878319978714, - 0.037220560014247894, - 0.024961143732070923, - -0.06629408895969391, - -0.021362772211432457, - 0.10583087056875229, - -0.016717858612537384, - -0.01013021357357502, - -0.03688303381204605, - -0.040557119995355606, - -0.015322180464863777, - 0.05310952663421631, - -0.0063266269862651825, - -0.006088280584663153, - 0.019386611878871918, - 0.026945384219288826, - -0.032562606036663055, - -0.02129427343606949, - 0.02387141063809395, - 0.014932794496417046, - -0.049344636499881744, - 0.04137878492474556, - 0.011501285247504711, - -0.04507818445563316, - 0.07293133437633514, - -0.05540666729211807, - -0.021381376311182976, - -0.009606706909835339, - -0.05594944953918457, - 0.11514291167259216, - 0.09847469627857208, - 0.01235372107475996, - -0.041726164519786835, - 0.006693335250020027, - 0.0688067227602005, - 0.033672209829092026, - -0.08874674141407013, - -0.045205000787973404, - 0.04132102057337761, - 0.11455559730529785, - -0.011413728818297386, - -0.02181203104555607, - 0.05688142031431198, - 0.07123453915119171, - 0.0074554383754730225, - 0.07296687364578247, - 0.0906069278717041, - 0.05650331825017929, - 0.012263098731637001, - -0.05245373770594597, - 0.005300190299749374, - 0.10092728585004807, - 0.04076027870178223, - -0.0005190724041312933, - 0.016314871609210968, - -0.029129959642887115, - -0.05042188987135887, - -0.025791462510824203, - -0.012380285188555717, - -0.09108548611402512, - -0.042661506682634354, - -0.01534661091864109, - 0.00789736956357956, - 0.02617065981030464, - 0.006602557376027107, - 0.018134452402591705, - 0.09590338170528412, - -0.0702386125922203, - 0.02530999667942524, - 0.004429425112903118, - 0.023549677804112434, - 0.008688906207680702, - -0.05143841728568077, - -0.06301959604024887, - 0.03597753122448921, - 0.039433401077985764, - 0.022894442081451416, - 0.0422198548913002, - 0.04887760058045387, - 0.030597684904932976, - 0.08671444654464722, - -0.0022908179089426994, - 0.009263802319765091, - -0.0226020235568285, - -0.03954731300473213, - 0.0862768143415451, - 0.11853201687335968, - -0.038837067782878876, - 0.04914525896310806, - -0.06082789599895477, - -0.023989427834749222, - 0.0034458301961421967, - -0.07507243007421494, - -0.03266632929444313, - 0.01374002918601036, - 0.02326524630188942, - 0.006310518831014633, - 0.10992632806301117, - 0.06194300949573517, - 0.036353904753923416, - 0.09295313060283661, - -0.0928887128829956, - -0.09954400360584259, - -0.08038656413555145, - 0.07480818778276443, - -0.06612022966146469, - 0.08799386024475098, - 0.09594659507274628, - 0.013327401131391525, - 0.029001597315073013, - 0.036311887204647064, - 0.027989590540528297, - 0.03874170035123825, - -0.03448348119854927, - -0.03784364089369774, - -0.01644155941903591, - -0.057676397264003754, - 0.011099273338913918, - 0.029926974326372147, - -0.002386469393968582, - 0.0668230950832367, - -0.01530742272734642, - 0.013561587780714035, - -0.10623090714216232, - -0.007145174778997898, - 0.0587586984038353, - 0.009654166176915169, - -0.03397119417786598, - -0.05040347948670387, - -0.0074806222692132, - -0.07279738038778305, - -0.05282333120703697, - -0.0766778513789177, - 0.08115430176258087, - -0.017442453652620316, - 0.025579238310456276, - 0.09499223530292511, - 0.011951069347560406, - -0.00854148156940937, - -0.034677669405937195, - -0.015701044350862503, - 0.004493666812777519, - 0.016761906445026398, - -0.10517837107181549, - -0.10933873057365417, - -0.05259307101368904, - 0.02531185746192932, - 0.016538385301828384, - 0.06609632074832916, - 0.04936101287603378, - 0.019311608746647835, - -0.0027266854885965586, - -0.011622831225395203, - 0.010196343064308167, - -0.07101771235466003, - -0.08215239644050598, - -0.01632404886186123, - -0.036348022520542145, - -0.02212928794324398, - 0.10357800871133804, - 0.00830297265201807, - 0.05375465750694275, - -0.0353054478764534, - -0.01025029644370079, - -0.08879391849040985, - 0.045894771814346313, - 0.047377828508615494, - -0.030138906091451645, - 0.015525770373642445, - 0.010622154921293259, - -0.02707100100815296, - -0.003325197845697403, - 0.04586614668369293, - 0.07359784096479416, - -0.016822580248117447, - -0.006815088912844658, - -0.08205129206180573, - 0.039483003318309784, - 0.13273406028747559, - -0.07597324997186661, - -0.03539995849132538, - -0.07370650768280029, - -0.08235020935535431, - 0.018575873225927353, - -0.07696881890296936, - 0.0021603491622954607, - -0.009484760463237762, - -0.0041832514107227325, - -0.12185937911272049, - -0.11209568381309509, - 0.04404143989086151, - -0.0019835233688354492, - 0.015067500062286854, - -0.05630561709403992, - 0.046252425760030746, - 0.04974498227238655, - 0.025762362405657768, - -0.05616918206214905, - 0.02369961515069008, - 0.03976144641637802, - -0.005783764645457268, - 0.05185233801603317, - 0.043437644839286804, - 0.10268016159534454, - -0.07472864538431168, - -0.014422083273530006, - -0.07585626095533371, - 0.04222417622804642, - -0.06329778581857681, - 0.09328177571296692, - 0.05219300091266632, - -0.02957436442375183, - -0.09310401976108551, - 0.05537908151745796, - 0.02255186066031456, - 0.03306068480014801, - -0.013540109619498253, - 0.0282684788107872, - 0.045438721776008606, - -0.09567025303840637, - 0.0685226321220398, - 0.03649486228823662, - 0.02875138819217682, - -0.07151172310113907, - -0.04839157685637474, - -0.04036583751440048, - 0.06036647409200668, - -0.00438026525080204, - -0.03908253088593483, - -0.02415274828672409, - -0.00627659447491169, - 0.07473570108413696, - 0.05670511722564697, - 0.07765699177980423, - 0.013433671556413174, - -0.078646719455719 - ] - }, - "p245_304.wav": { - "name": "p245", - "embedding": [ - 0.022711295634508133, - 0.07748173177242279, - 0.025834525004029274, - 0.008184421807527542, - -0.023033270612359047, - 0.08437056839466095, - -0.13064096868038177, - 0.08926959335803986, - -0.0762484073638916, - 0.14807948470115662, - -0.08903578668832779, - 0.051704198122024536, - -0.05598234012722969, - -0.19571346044540405, - -0.017107469961047173, - 0.06931046396493912, - -0.05810039862990379, - 0.0059250290505588055, - -0.08474580943584442, - -0.010211730375885963, - 0.014573503285646439, - 0.0010009087854996324, - 0.01747260056436062, - 0.020306620746850967, - 0.007357908878475428, - 0.055135417729616165, - -0.030081573873758316, - 0.027837570756673813, - -0.020328463986516, - -0.03754015266895294, - -0.01681126281619072, - 0.12032558768987656, - -0.03685387969017029, - 0.01620105281472206, - 0.08825662732124329, - 0.01890682615339756, - -0.03712807968258858, - -0.02135617844760418, - -0.005642293952405453, - -0.008479191921651363, - -0.07152386009693146, - 0.054391048848629, - -0.0012594076106324792, - 0.03424086794257164, - 0.07749515771865845, - 0.024106694385409355, - -0.016839729622006416, - -0.03357970342040062, - -0.07907180488109589, - 0.11650526523590088, - 0.08169906586408615, - -0.028337819501757622, - -0.026532793417572975, - -0.07965946942567825, - 0.08826316148042679, - -0.0355621762573719, - -0.15203070640563965, - -0.08715762197971344, - 0.10039637982845306, - 0.14046311378479004, - -0.046632762998342514, - -0.00476363068446517, - -0.006527372635900974, - 0.10522933304309845, - 0.011653348803520203, - 0.15772445499897003, - 0.006807137280702591, - 0.08539994060993195, - -0.000572943827137351, - 0.0258883535861969, - 0.07486965507268906, - 0.013907882384955883, - 0.06873930990695953, - -0.03511760011315346, - 0.039504941552877426, - 0.022473732009530067, - -0.0008677373407408595, - 0.026532527059316635, - 0.01022608857601881, - 0.014962945133447647, - -0.0024661002680659294, - -0.03310469165444374, - -0.03692680597305298, - -0.0394938588142395, - -0.0026312265545129776, - 0.019223330542445183, - 0.04809681326150894, - 0.0001370495738228783, - 0.06026380881667137, - 0.06940500438213348, - -0.016827460378408432, - 0.06810729950666428, - -0.021628154441714287, - -0.05956669896841049, - 0.010129084810614586, - 0.011063181795179844, - -0.028331128880381584, - 0.022709282115101814, - 0.010611528530716896, - 0.006038271356374025, - 0.07363495975732803, - 0.04817867651581764, - 0.00877306703478098, - 0.05714738741517067, - -0.12362018972635269, - 0.12945257127285004, - 0.038387883454561234, - -0.016903875395655632, - 0.04234904795885086, - -0.0001951254380401224, - 0.06232089176774025, - 0.110261470079422, - -0.11998284608125687, - -0.0339704193174839, - 0.0010467983083799481, - -0.053432803601026535, - -0.041706573218107224, - 0.0825280174612999, - 0.006255296058952808, - -0.05825299769639969, - 0.1329822689294815, - -0.08691225945949554, - -0.06604604423046112, - -0.008038188330829144, - 0.00900148507207632, - -0.13898621499538422, - 0.0192754827439785, - 0.04680553451180458, - 0.0102784913033247, - 0.00036384587292559445, - 0.15025316178798676, - -0.012897887267172337, - -0.0046776640228927135, - -0.008564743213355541, - -0.027394231408834457, - 0.02482428029179573, - -0.03371784836053848, - 0.03647928684949875, - 0.08281941711902618, - 0.015171117149293423, - 0.030740104615688324, - -0.017334870994091034, - -0.026558881625533104, - -0.08479554206132889, - -0.010086203925311565, - 0.05589460954070091, - 0.04483935981988907, - -0.008999710902571678, - 0.05178820714354515, - -0.03989846259355545, - -0.10083739459514618, - 0.06717672199010849, - -0.056261930614709854, - 0.09425389766693115, - 0.0036978188436478376, - -0.027439208701252937, - 0.12801530957221985, - -0.006857945583760738, - 0.006916288286447525, - -0.12446922063827515, - -0.00043053089757449925, - 0.03536829724907875, - 0.046749476343393326, - -0.10868663340806961, - -0.031571030616760254, - 0.02713542990386486, - 0.04419597610831261, - 0.02856263518333435, - 0.025127867236733437, - 0.04229838401079178, - 0.0008241615723818541, - 0.02129506878554821, - -0.04658876359462738, - 0.019512450322508812, - -0.06809564679861069, - -0.06443101912736893, - -0.023213515058159828, - -0.06891179084777832, - 0.007952879182994366, - 0.06904541701078415, - -0.04823429509997368, - -0.029340645298361778, - -0.014090826734900475, - -0.11455170810222626, - -0.09613367170095444, - 0.08904501795768738, - 0.07175253331661224, - -0.007502212654799223, - 0.04700871556997299, - 0.03642822057008743, - -0.08982168883085251, - 0.0499243326485157, - 0.042581163346767426, - 0.15260908007621765, - -0.052219536155462265, - 0.06762342154979706, - -0.08329164236783981, - 0.04724467918276787, - 0.0754045620560646, - -0.0763833075761795, - -0.08398013561964035, - 0.00939631462097168, - -0.012717029079794884, - 0.06586272269487381, - -0.055741336196660995, - -0.04147971048951149, - 0.04621530696749687, - -0.044215064495801926, - -0.04343722388148308, - -0.08591325581073761, - 0.10127062350511551, - -0.05069053918123245, - -0.01004981342703104, - -0.04669785127043724, - 0.046343009918928146, - -0.010672826319932938, - 0.07424084097146988, - -0.040462784469127655, - 0.041603416204452515, - 0.06315108388662338, - -0.05816970393061638, - -0.03648746758699417, - 0.04510973393917084, - -0.024843839928507805, - -0.06066644564270973, - -0.04027685523033142, - -0.11766115576028824, - 0.10020244121551514, - -0.049527671188116074, - 0.12818704545497894, - -0.05834294110536575, - -0.04999767988920212, - -0.031744468957185745, - -0.015066524967551231, - -0.010042618028819561, - 0.026611095294356346, - 0.06379668414592743, - 0.08535535633563995, - 0.03816480562090874, - 0.00819784589111805, - 0.10248463600873947, - -0.005560922436416149, - 0.038531430065631866, - -0.028577744960784912, - -0.017214465886354446, - -0.07231894880533218, - 0.0017309447284787893, - -0.016719846054911613, - -0.17118534445762634, - 0.043390046805143356, - 0.014364867471158504, - -0.04175948724150658, - 0.030008237808942795, - 0.11371616274118423, - 0.05733555927872658, - -0.10070354491472244 - ] - }, - "p245_115.wav": { - "name": "p245", - "embedding": [ - 0.043387725949287415, - 0.11231091618537903, - -0.003916000481694937, - 0.009882601909339428, - -0.054747194051742554, - 0.07636934518814087, - -0.12208505719900131, - 0.14207975566387177, - -0.05527171492576599, - 0.1381472498178482, - -0.06776908040046692, - 0.11894410848617554, - -0.03930240124464035, - -0.16356351971626282, - -0.05396844074130058, - 0.05102023482322693, - -0.0496596023440361, - -0.029463768005371094, - -0.04164385423064232, - -0.019953353330492973, - 0.022780798375606537, - 0.004782961681485176, - 0.02691066637635231, - 0.026409871876239777, - 0.03607138618826866, - 0.06601843982934952, - 0.008632799610495567, - 0.06571470201015472, - 0.028668176382780075, - -0.03407922387123108, - -0.03384008631110191, - 0.10132303088903427, - -0.054539501667022705, - 0.036883652210235596, - 0.07302998006343842, - -0.00542761106044054, - 0.0032011528965085745, - -0.047096531838178635, - -0.004907770082354546, - -0.0015979751478880644, - -0.039088062942028046, - 0.08952777832746506, - 0.02241676114499569, - 0.00442493474110961, - 0.02193446457386017, - 0.03968430683016777, - 0.0028938695322722197, - -0.04308926686644554, - -0.09924664348363876, - 0.14455197751522064, - 0.06625208258628845, - -0.01932726614177227, - -0.06858550012111664, - -0.07320526242256165, - 0.1061343252658844, - -0.037628136575222015, - -0.11545932292938232, - -0.04847247153520584, - 0.07793942838907242, - 0.1472417414188385, - -0.039471399039030075, - -0.03440989553928375, - -0.002847484080120921, - 0.1367272436618805, - 0.06090783327817917, - 0.09846580028533936, - 0.07505609095096588, - 0.1156468391418457, - -0.023791294544935226, - 0.0214972123503685, - 0.07073168456554413, - 0.05553985387086868, - 0.0449344739317894, - -0.005026431754231453, - 0.021073712036013603, - -0.0075178625993430614, - 0.003391070058569312, - 0.019270282238721848, - -0.025024106726050377, - -0.01593026891350746, - -0.0399935357272625, - 0.016689486801624298, - -0.01982315070927143, - 0.017254436388611794, - -0.0063963234424591064, - 0.06769010424613953, - 0.021447142586112022, - -0.01378849521279335, - 0.06907767802476883, - 0.06431375443935394, - -0.003343365853652358, - 0.06677393615245819, - -0.07856949418783188, - -0.07840704172849655, - 0.017980866134166718, - -0.013636510819196701, - 0.03128594905138016, - 0.07158458232879639, - 0.03643043339252472, - 0.004429791122674942, - 0.10795672982931137, - 0.06717909872531891, - -0.008991558104753494, - 0.028005464002490044, - -0.09401147067546844, - 0.1403331458568573, - 0.06828339397907257, - -0.03059801459312439, - 0.03733018785715103, - -0.025316689163446426, - 0.06774851679801941, - 0.07324408739805222, - -0.12855027616024017, - -0.08557166159152985, - 0.021088851615786552, - 0.00902944803237915, - -0.03106229566037655, - 0.08071941882371902, - -0.026057027280330658, - 0.019811101257801056, - 0.09252659976482391, - -0.0596553236246109, - -0.044678620994091034, - -0.019683992490172386, - 0.04097326844930649, - -0.06778547167778015, - 0.03849031776189804, - 0.04769861698150635, - 0.0038790679536759853, - 0.008564174175262451, - 0.10526256263256073, - 0.005555190145969391, - -0.013000641018152237, - 0.040261100977659225, - -0.045331161469221115, - 0.027491208165884018, - -0.010354146361351013, - 0.014817701652646065, - 0.044352225959300995, - 0.04833199828863144, - 0.053873978555202484, - 0.005366505589336157, - -0.0115616200491786, - -0.09530405700206757, - 0.0033737346529960632, - 0.055167488753795624, - 0.07145251333713531, - -0.02232576161623001, - -0.020091822370886803, - -0.028691880404949188, - -0.05672793090343475, - 0.010987645015120506, - 0.0018404526636004448, - 0.08758819103240967, - -0.03067968599498272, - -0.0027938554994761944, - 0.11813554167747498, - 0.014427493326365948, - -0.010303257033228874, - -0.06665486842393875, - -0.014806526713073254, - 0.004433467518538237, - 0.05507759377360344, - -0.08299261331558228, - -0.06513661891222, - 0.01767323911190033, - 0.03315040096640587, - -0.01806546561419964, - 0.07016691565513611, - 0.0455411896109581, - 0.006543578114360571, - 0.037425436079502106, - -0.0536341667175293, - 0.014983810484409332, - -0.08933089673519135, - -0.05407053232192993, - -0.028554178774356842, - -0.021868420764803886, - -0.02078847587108612, - 0.06556010246276855, - 0.02104736864566803, - 0.05847422406077385, - 0.013757916167378426, - -0.09379404038190842, - -0.07511549443006516, - 0.06460367143154144, - 0.06682710349559784, - -0.004587736912071705, - 0.04965873062610626, - 0.07594504207372665, - -0.039351027458906174, - 0.05320898815989494, - 0.07116397470235825, - 0.09496461600065231, - -0.04457472264766693, - 0.03189108520746231, - -0.07518292963504791, - 0.05866130813956261, - 0.06410959362983704, - -0.11716088652610779, - -0.0836414247751236, - -0.021253909915685654, - -0.03601228445768356, - 0.023579150438308716, - -0.030452851206064224, - 0.01744082383811474, - 0.03475135564804077, - -0.017504658550024033, - -0.07475198805332184, - -0.10161813348531723, - 0.09390457719564438, - -0.08480685204267502, - 0.004718102049082518, - -0.0679241269826889, - 0.04134657233953476, - 0.08306419849395752, - 0.04661604017019272, - -0.02856295369565487, - 0.01010741014033556, - 0.05332493036985397, - -0.026185041293501854, - -0.020032932981848717, - 0.04892241582274437, - 0.011737219989299774, - -0.09750422090291977, - 0.0054626609198749065, - -0.07203347980976105, - 0.07435194402933121, - -0.038043662905693054, - 0.16533881425857544, - -0.005695355590432882, - -0.05823620781302452, - -0.06599204242229462, - 0.009580838494002819, - -0.04067467898130417, - 0.04476385563611984, - 0.032868191599845886, - 0.06642282754182816, - 0.01357905101031065, - -0.032919712364673615, - 0.14244388043880463, - 0.03732621669769287, - -0.055055998265743256, - -0.07384319603443146, - -0.04408877342939377, - -0.04036155715584755, - 0.028797946870326996, - 0.02469916269183159, - -0.09745009243488312, - -0.010940195992588997, - 0.01534411683678627, - -0.04468837380409241, - 0.07173287123441696, - 0.14669269323349, - 0.09920390695333481, - -0.10882420837879181 - ] - }, - "p245_392.wav": { - "name": "p245", - "embedding": [ - 0.03167426958680153, - 0.10426194965839386, - -0.009920000098645687, - 0.05975175276398659, - -0.051560111343860626, - 0.002617916092276573, - -0.041866034269332886, - 0.044262245297431946, - 0.023521175608038902, - 0.07011357694864273, - -0.04536845535039902, - 0.0609307698905468, - -0.05406789854168892, - -0.09309213608503342, - -0.02389051765203476, - 0.007743997499346733, - -0.017074065282940865, - 0.02355622686445713, - -0.04101406782865524, - -0.014707939699292183, - -0.04180413484573364, - -0.0053919292986392975, - -0.014366772025823593, - 0.009368307888507843, - -0.05638735741376877, - 0.03238476812839508, - -0.018987352028489113, - 0.028417643159627914, - 0.00207655131816864, - -0.0936736986041069, - 0.009874638170003891, - 0.046511806547641754, - -0.010442698374390602, - -0.024606214836239815, - 0.011192393489181995, - -0.03466886281967163, - 0.0229241531342268, - -0.02251732163131237, - -0.052576255053281784, - -0.0013754535466432571, - -0.0446104034781456, - 0.011387551203370094, - 0.010763168334960938, - -0.07146912813186646, - 0.011566242203116417, - 0.01195025909692049, - -0.042745307087898254, - -0.02464255318045616, - -0.044301148504018784, - 0.11016646027565002, - 0.03779337555170059, - 0.0480181910097599, - -0.03398082032799721, - -0.04161173850297928, - 0.12668584287166595, - 0.013045506551861763, - -0.008224982768297195, - -0.0280438382178545, - -0.00505722314119339, - 0.07046718150377274, - 0.024526391178369522, - 0.019032027572393417, - 0.05669151246547699, - 0.07353459298610687, - 0.015029383823275566, - 0.03478962928056717, - 0.06489060819149017, - 0.07210944592952728, - -0.025110721588134766, - 0.033205196261405945, - 0.05080725997686386, - 0.01700931042432785, - 0.030414501205086708, - 0.04642302170395851, - -0.016246598213911057, - 0.01746777445077896, - 0.015920985490083694, - 0.032687414437532425, - -0.015234909020364285, - -0.029043670743703842, - 0.0059959497302770615, - 0.0030358266085386276, - -0.0024327002465724945, - -0.04927331954240799, - -0.051496781408786774, - -0.03316938132047653, - 0.04965706169605255, - 0.01234703604131937, - 0.041611090302467346, - -0.005302524194121361, - 0.07120639085769653, - 0.034922804683446884, - -0.01566764898598194, - -0.062077272683382034, - 0.015825804322957993, - -0.016143178567290306, - 0.051017627120018005, - 0.014940548688173294, - 0.002984323538839817, - 0.007143537979573011, - 0.05848165228962898, - -0.013863109052181244, - 0.03863525390625, - -0.00472786370664835, - -0.048347145318984985, - -0.012241236865520477, - 0.03483852371573448, - 0.02262440323829651, - 0.03246890380978584, - 0.05019484460353851, - 0.04098641127347946, - 0.08366838842630386, - -0.04658963531255722, - -0.04764125123620033, - 0.017100946977734566, - 0.052166521549224854, - -0.04593181982636452, - 0.07495757192373276, - -0.004719093907624483, - 0.0313219279050827, - 0.05603533983230591, - 0.006932998076081276, - -0.014059900306165218, - 0.00938648171722889, - 0.0014455020427703857, - -0.05241686478257179, - 0.050783656537532806, - 0.021564047783613205, - -0.044760480523109436, - -0.0585191547870636, - 0.07667779177427292, - -0.015426401048898697, - -0.024842334911227226, - -0.005533996503800154, - 0.007311370223760605, - -0.00817357562482357, - 0.04728040099143982, - -0.03528156131505966, - 0.019626516848802567, - 0.07099315524101257, - -0.015459954738616943, - -0.04206259176135063, - -0.012673921883106232, - -0.05273896083235741, - 0.03760179132223129, - 0.014722894877195358, - 0.0070520732551813126, - 0.07482288032770157, - -0.03879670798778534, - -0.05430058017373085, - -0.011570228263735771, - 0.04430118575692177, - -0.04889555647969246, - 0.08682427555322647, - 0.04381496459245682, - 0.020590102300047874, - 0.07151583582162857, - -0.04233044013381004, - 0.005601249635219574, - -0.011790143325924873, - -0.09783865511417389, - 0.010344371199607849, - 0.017214806750416756, - -0.001142384484410286, - -0.022605106234550476, - 0.00040830671787261963, - -0.006040768697857857, - -0.00026063359109684825, - 0.014820680022239685, - 0.025661464780569077, - -0.02437320537865162, - 0.05740160495042801, - -0.08502158522605896, - -0.004859911277890205, - -0.01352146826684475, - -0.03860706463456154, - 0.035165444016456604, - -0.012399137951433659, - -0.004625169560313225, - 0.023134753108024597, - 0.030916044488549232, - -0.030799563974142075, - -0.036819979548454285, - -0.08939138054847717, - 0.00655374675989151, - 0.028716757893562317, - 0.028335902839899063, - 0.003733353689312935, - -0.013399647548794746, - 0.042861200869083405, - 0.055462975054979324, - 0.020656302571296692, - 0.009753655642271042, - 0.06613370776176453, - -0.025952599942684174, - -0.022081241011619568, - 0.025753017514944077, - 0.08026733249425888, - 0.02579480968415737, - -0.08054385334253311, - -0.08532196283340454, - -0.03218194842338562, - -0.04993097484111786, - 0.049469754099845886, - -0.017412006855010986, - 0.03988263010978699, - 0.025414496660232544, - 0.005081942770630121, - 0.017681274563074112, - -0.13362669944763184, - 0.05527804419398308, - 0.00039356574416160583, - -0.031461045145988464, - -0.006021600216627121, - 0.0017837323248386383, - 0.019522959366440773, - 0.05130888521671295, - -0.020038940012454987, - -0.015512117184698582, - 0.021845843642950058, - -0.0066452473402023315, - 0.0017231928650289774, - 0.04843810573220253, - 0.034658752381801605, - -0.007764648646116257, - -0.006077399477362633, - -0.042845241725444794, - 0.016369037330150604, - 0.005373429507017136, - 0.034566015005111694, - 0.012757807038724422, - -0.016425279900431633, - -0.11399167776107788, - 0.07710530608892441, - -0.05213498696684837, - 0.07460986077785492, - -0.006902020424604416, - 0.017613302916288376, - 0.0500674769282341, - -0.02228529006242752, - 0.08610643446445465, - 0.029319485649466515, - -0.035165365785360336, - -0.04674747213721275, - -0.013413554057478905, - -0.0360177643597126, - 0.0384388342499733, - 0.0586557574570179, - -0.007834583520889282, - -0.02187827229499817, - 0.04739297926425934, - 0.009366696700453758, - 0.09909434616565704, - 0.06780128926038742, - 0.06554730981588364, - 0.026013102382421494 - ] - }, - "p245_172.wav": { - "name": "p245", - "embedding": [ - 0.05328046530485153, - 0.10069956630468369, - -0.015530981123447418, - 0.015568692237138748, - -0.03409476578235626, - 0.05483525991439819, - -0.13426366448402405, - 0.12839853763580322, - -0.05357379838824272, - 0.14794568717479706, - -0.0880264863371849, - 0.11787037551403046, - -0.021268021315336227, - -0.1846957802772522, - -0.039139121770858765, - 0.047906529158353806, - -0.05005773529410362, - -0.015305576846003532, - -0.05758603662252426, - -0.003040645271539688, - 0.04655206948518753, - 0.029886111617088318, - 0.017577793449163437, - -0.015141883864998817, - 0.016078172251582146, - 0.06496861577033997, - 0.006860947236418724, - 0.050126463174819946, - 0.01896042190492153, - -0.05026520416140556, - -0.03194788843393326, - 0.12021004408597946, - -0.04205349087715149, - 0.006707796361297369, - 0.06351794302463531, - -0.010104700922966003, - -0.008936571888625622, - -0.054179079830646515, - -0.009878999553620815, - 0.0009941949974745512, - -0.03997116535902023, - 0.06543129682540894, - 0.0131410276517272, - -0.0035837600007653236, - 0.05563399940729141, - 0.036036573350429535, - -0.014707996509969234, - -0.06272609531879425, - -0.09007234871387482, - 0.14857691526412964, - 0.06974101066589355, - 0.006612904369831085, - -0.06900987029075623, - -0.05858932435512543, - 0.0926736444234848, - -0.023383229970932007, - -0.10982576012611389, - -0.05123686045408249, - 0.07350354641675949, - 0.15843841433525085, - -0.03553340211510658, - -0.028127815574407578, - 0.03344814479351044, - 0.10828813910484314, - 0.05147753283381462, - 0.1048969253897667, - 0.07873382419347763, - 0.0800885334610939, - 0.0014799063792452216, - 0.03434686362743378, - 0.055983975529670715, - 0.05410975217819214, - 0.059437450021505356, - -0.0249684676527977, - 0.046496957540512085, - -0.00011265433568041772, - -0.02718399092555046, - -0.0018388144671916962, - -0.022165369242429733, - -0.0060430532321333885, - -0.004844858311116695, - 0.020409464836120605, - 0.005303974263370037, - 0.02365877293050289, - -0.04108075052499771, - 0.060492824763059616, - 0.02005637437105179, - -0.020773939788341522, - 0.0633162260055542, - 0.035031870007514954, - 0.02114015631377697, - 0.04657658189535141, - -0.07545431703329086, - -0.09998656809329987, - 0.031956739723682404, - 0.0006938837468624115, - -0.0056634037755429745, - 0.0512889139354229, - 0.03894150257110596, - -0.01717195473611355, - 0.1073397845029831, - 0.05296548828482628, - -0.009820147417485714, - 0.03681395947933197, - -0.09293647110462189, - 0.12162409722805023, - 0.08498598635196686, - -0.029003962874412537, - 0.04302334412932396, - -0.0393243134021759, - 0.0640905424952507, - 0.07003886252641678, - -0.13617388904094696, - -0.07703156024217606, - 0.04188472777605057, - -0.0027434974908828735, - -0.01546061784029007, - 0.1062188670039177, - -0.0072964271530508995, - 0.025952285155653954, - 0.09513642638921738, - -0.07974665611982346, - -0.05862666293978691, - -0.023430872708559036, - 0.04660612344741821, - -0.09293046593666077, - 0.0656660944223404, - 0.04869203269481659, - -0.009260022081434727, - -0.00439292099326849, - 0.10360374301671982, - -0.014487972483038902, - -0.0055283112451434135, - -0.0013810943346470594, - -0.03009209781885147, - 0.03186986222863197, - -0.03980226442217827, - -0.0073716845363378525, - 0.02353905700147152, - 0.03632710501551628, - 0.040201179683208466, - -0.0023763279896229506, - -0.03501234948635101, - -0.11208435148000717, - 0.009459732100367546, - 0.041710641235113144, - 0.06681032478809357, - -0.0059346770867705345, - -0.005967825651168823, - -0.04604911059141159, - -0.05021928995847702, - 0.004382844548672438, - -0.026179373264312744, - 0.07537036389112473, - -0.010914250276982784, - 0.006028651259839535, - 0.11042088270187378, - 0.000616279779933393, - 0.011490372940897942, - -0.050919823348522186, - -0.01174293365329504, - 0.030776500701904297, - 0.05170102417469025, - -0.06650855392217636, - -0.06819067150354385, - 0.00012394911027513444, - 0.026248008012771606, - -0.008239896968007088, - 0.04866882413625717, - 0.04761533439159393, - 0.010837987065315247, - 0.0285421684384346, - -0.07714320719242096, - 0.024356942623853683, - -0.11078554391860962, - -0.05829313024878502, - -0.02049107477068901, - -0.03182903304696083, - -0.023296533152461052, - 0.07409697026014328, - 0.012120941653847694, - 0.030805163085460663, - -0.018653515726327896, - -0.0897546038031578, - -0.08098743855953217, - 0.06678366661071777, - 0.0935417041182518, - -0.0020603658631443977, - 0.03990597277879715, - 0.03770091384649277, - -0.01316265668720007, - 0.05057818442583084, - 0.06646673381328583, - 0.10557480156421661, - -0.002194773405790329, - -0.0006860420107841492, - -0.06764396280050278, - 0.07547280192375183, - 0.07125060260295868, - -0.08722849935293198, - -0.07954218238592148, - -0.008046845905482769, - -0.0590706467628479, - 0.03370240703225136, - -0.017962973564863205, - 0.016899481415748596, - 0.04597979411482811, - -0.008341102860867977, - -0.09900788962841034, - -0.09048245847225189, - 0.0896284207701683, - -0.07918136566877365, - -0.0111524797976017, - -0.06500230729579926, - 0.04423707351088524, - 0.08531510829925537, - 0.02041160687804222, - -0.03175988793373108, - -0.013171052560210228, - 0.0306834913790226, - -0.05320463702082634, - -0.009222344495356083, - 0.023275045678019524, - 0.02134796231985092, - -0.10521458089351654, - 0.030978351831436157, - -0.08062485605478287, - 0.06755636632442474, - -0.06620991230010986, - 0.143857941031456, - -0.008605197072029114, - -0.05112457275390625, - -0.09345197677612305, - 0.04196741431951523, - -0.021997880190610886, - 0.04844974726438522, - 0.03618605434894562, - 0.06631191819906235, - 0.04038413614034653, - -0.08559726923704147, - 0.10513557493686676, - 0.02961728349328041, - -0.021717406809329987, - -0.07660029828548431, - -0.05497099086642265, - -0.053230129182338715, - 0.02041519619524479, - 0.018541604280471802, - -0.08590307086706161, - -0.011757295578718185, - 0.01535176020115614, - -0.021901747211813927, - 0.06670995056629181, - 0.1253884881734848, - 0.03364139422774315, - -0.12070481479167938 - ] - }, - "p245_143.wav": { - "name": "p245", - "embedding": [ - 0.04184994101524353, - 0.09428860992193222, - 0.010645839385688305, - 0.010888501070439816, - -0.029055725783109665, - 0.06402722001075745, - -0.15584418177604675, - 0.1271580457687378, - -0.06619051098823547, - 0.11769188940525055, - -0.08112804591655731, - 0.08851327747106552, - -0.02373885177075863, - -0.1908387839794159, - -0.06657776981592178, - 0.059456080198287964, - -0.04148675501346588, - -0.026541031897068024, - -0.008902423083782196, - -0.006662983447313309, - 0.036217715591192245, - 0.011808092705905437, - 0.021532896906137466, - 0.0334765799343586, - 0.022541530430316925, - 0.04832759499549866, - 0.013400953263044357, - 0.059601813554763794, - 0.014490913599729538, - -0.00476585328578949, - -0.011603492312133312, - 0.12306865304708481, - -0.03193487226963043, - -0.008044440299272537, - 0.07113578170537949, - 0.00410066545009613, - 0.00383190019056201, - -0.0649915337562561, - -0.004404890816658735, - -0.013429416343569756, - -0.05097422003746033, - 0.07641692459583282, - 0.02889288030564785, - 0.019557824358344078, - 0.04021153971552849, - 0.02833852916955948, - -0.00547438021749258, - -0.047851454466581345, - -0.10886617749929428, - 0.1315833032131195, - 0.05208972096443176, - 0.008821885101497173, - -0.08736114948987961, - -0.059351228177547455, - 0.11320991814136505, - -0.025807496160268784, - -0.09121562540531158, - -0.04701714962720871, - 0.08738429844379425, - 0.17206811904907227, - -0.03326084464788437, - -0.024036094546318054, - 0.024509388953447342, - 0.11141562461853027, - 0.0381050705909729, - 0.09966093301773071, - 0.06681782007217407, - 0.08818402141332626, - 0.001934309839271009, - 0.0152193708345294, - 0.06099681556224823, - 0.036837417632341385, - 0.016656646504998207, - -0.04221617430448532, - 0.026002466678619385, - 0.016049271449446678, - -0.02466241829097271, - 0.02905607782304287, - -0.018843408674001694, - -0.0032626772299408913, - -0.02033657394349575, - 0.006928074639290571, - -0.016060620546340942, - 0.015299877151846886, - -0.03568081185221672, - 0.04823293536901474, - 0.007566848304122686, - -0.004285029135644436, - 0.07963285595178604, - 0.05325556918978691, - 0.003978057764470577, - 0.04841625317931175, - -0.059608228504657745, - -0.08044113963842392, - 0.02077154442667961, - 0.0003820030833594501, - -0.016218222677707672, - 0.06474467366933823, - 0.02580983005464077, - -0.022742342203855515, - 0.09970265626907349, - 0.05864737555384636, - -0.0007104115793481469, - 0.03276856243610382, - -0.11037733405828476, - 0.11361926794052124, - 0.06760273873806, - -0.016312066465616226, - 0.04291301220655441, - -0.028618205338716507, - 0.04881608113646507, - 0.08824889361858368, - -0.13560786843299866, - -0.07566869258880615, - 0.05233592912554741, - 0.02483828365802765, - 0.002956368727609515, - 0.10989207029342651, - -0.015415707603096962, - -0.007515076547861099, - 0.08407189697027206, - -0.060011789202690125, - -0.07183945178985596, - -0.025250663980841637, - 0.04685008153319359, - -0.07184488326311111, - 0.04701438546180725, - 0.04618222266435623, - 0.01143421046435833, - -0.030484478920698166, - 0.0887065976858139, - -3.5829223634209484e-05, - -0.017796283587813377, - 0.005997110158205032, - -0.01966599002480507, - 0.05021780729293823, - -0.0293545201420784, - 0.0037592952139675617, - 0.031366609036922455, - 0.047960132360458374, - 0.031941745430231094, - 0.023489337414503098, - -0.028179382905364037, - -0.09630221128463745, - -0.023424675688147545, - 0.056784313172101974, - 0.07821419835090637, - -0.013793924823403358, - -0.025265701115131378, - -0.06158892437815666, - -0.045521851629018784, - 0.009584767743945122, - -0.008200234733521938, - 0.09907764196395874, - 0.008400815539062023, - 0.006592373829334974, - 0.09405991435050964, - -0.004040364176034927, - 0.013872742652893066, - -0.04959714412689209, - 0.0009657462942413986, - 0.02421344444155693, - 0.04896105080842972, - -0.057883404195308685, - -0.06314706057310104, - 0.003681553527712822, - 0.03518075495958328, - -0.012151641771197319, - 0.022868311032652855, - 0.03299618512392044, - 0.009383068419992924, - 0.025491898879408836, - -0.08730727434158325, - 0.04629608243703842, - -0.10041502118110657, - -0.04661624878644943, - -0.020765312016010284, - -0.010293352417647839, - -0.013416923582553864, - 0.07175701856613159, - 0.03053620271384716, - 0.028793223202228546, - 0.0034427910577505827, - -0.09598682820796967, - -0.06499901413917542, - 0.06358711421489716, - 0.09655596315860748, - 0.0029036931227892637, - 0.05007064342498779, - 0.039479102939367294, - -0.025728216394782066, - 0.060825273394584656, - 0.07051520049571991, - 0.08499304950237274, - -0.03300131857395172, - 0.0010429683607071638, - -0.04955942928791046, - 0.06396093964576721, - 0.05872654542326927, - -0.10223034024238586, - -0.08746303617954254, - 0.002991980640217662, - -0.041445694863796234, - 0.035602591931819916, - -0.014818340539932251, - 0.019820790737867355, - 0.025072623044252396, - -0.037108395248651505, - -0.09280560910701752, - -0.09614585340023041, - 0.0807623416185379, - -0.07481952011585236, - -0.015103710815310478, - -0.05831623822450638, - 0.041433896869421005, - 0.08630160987377167, - 0.015765566378831863, - -0.018387479707598686, - -0.020461130887269974, - 0.020097073167562485, - -0.05137387663125992, - -0.039864230901002884, - 0.024097442626953125, - -0.006324879825115204, - -0.10931193828582764, - 0.030139263719320297, - -0.0839049369096756, - 0.10349252074956894, - -0.054028645157814026, - 0.14437945187091827, - -0.016675271093845367, - -0.05906803905963898, - -0.08442769944667816, - -0.0025296476669609547, - -0.01479028444737196, - 0.04959484934806824, - 0.029672494158148766, - 0.06280151009559631, - 0.013846802525222301, - -0.03165620192885399, - 0.10608835518360138, - 0.03363058343529701, - -0.036029115319252014, - -0.07054778933525085, - -0.027592726051807404, - -0.04054246097803116, - 0.018527820706367493, - -0.0056319586001336575, - -0.09324796497821808, - -0.006910949945449829, - 0.02273549698293209, - -0.03458410128951073, - 0.0704135149717331, - 0.12127451598644257, - 0.04999300092458725, - -0.12125937640666962 - ] - } -} diff --git a/TTS/tests/data/ljspeech/f0_cache/pitch_stats.npy b/TTS/tests/data/ljspeech/f0_cache/pitch_stats.npy deleted file mode 100644 index 6203bda43d1728040b40b0726066fcaf2d834e90..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/f0_cache/pitch_stats.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b81d6735e13d1401a8228aa04c4de1762edb82e0ad50fc0b0066e0710b7dddaf -size 424 diff --git a/TTS/tests/data/ljspeech/metadata.csv b/TTS/tests/data/ljspeech/metadata.csv deleted file mode 100644 index 6c65ca0d80fb2133b57ed16fe2708953ce6595d6..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/metadata.csv +++ /dev/null @@ -1,8 +0,0 @@ -LJ001-0001|Printing, in the only sense with which we are at present concerned, differs from most if not from all the arts and crafts represented in the Exhibition|Printing, in the only sense with which we are at present concerned, differs from most if not from all the arts and crafts represented in the Exhibition -LJ001-0002|in being comparatively modern.|in being comparatively modern. -LJ001-0003|For although the Chinese took impressions from wood blocks engraved in relief for centuries before the woodcutters of the Netherlands, by a similar process|For although the Chinese took impressions from wood blocks engraved in relief for centuries before the woodcutters of the Netherlands, by a similar process -LJ001-0004|produced the block books, which were the immediate predecessors of the true printed book,|produced the block books, which were the immediate predecessors of the true printed book, -LJ001-0005|the invention of movable metal letters in the middle of the fifteenth century may justly be considered as the invention of the art of printing.|the invention of movable metal letters in the middle of the fifteenth century may justly be considered as the invention of the art of printing. -LJ001-0006|And it is worth mention in passing that, as an example of fine typography,|And it is worth mention in passing that, as an example of fine typography, -LJ001-0007|the earliest book printed with movable types, the Gutenberg, or "forty-two line Bible" of about 1455,|the earliest book printed with movable types, the Gutenberg, or "forty-two line Bible" of about fourteen fifty-five, -LJ001-0008|has never been surpassed.|has never been surpassed. diff --git a/TTS/tests/data/ljspeech/metadata_attn_mask.txt b/TTS/tests/data/ljspeech/metadata_attn_mask.txt deleted file mode 100644 index eef9a5f19e14b1cd67454f830121d292e21a7f51..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/metadata_attn_mask.txt +++ /dev/null @@ -1,13100 +0,0 @@ -tests/data/ljspeech/wavs/LJ022-0002.wav|tests/data/ljspeech/wavs/LJ022-0002.npy -tests/data/ljspeech/wavs/LJ001-0045.wav|tests/data/ljspeech/wavs/LJ001-0045.npy -tests/data/ljspeech/wavs/LJ039-0156.wav|tests/data/ljspeech/wavs/LJ039-0156.npy -tests/data/ljspeech/wavs/LJ047-0148.wav|tests/data/ljspeech/wavs/LJ047-0148.npy -tests/data/ljspeech/wavs/LJ035-0209.wav|tests/data/ljspeech/wavs/LJ035-0209.npy -tests/data/ljspeech/wavs/LJ019-0225.wav|tests/data/ljspeech/wavs/LJ019-0225.npy -tests/data/ljspeech/wavs/LJ049-0154.wav|tests/data/ljspeech/wavs/LJ049-0154.npy -tests/data/ljspeech/wavs/LJ013-0082.wav|tests/data/ljspeech/wavs/LJ013-0082.npy -tests/data/ljspeech/wavs/LJ018-0092.wav|tests/data/ljspeech/wavs/LJ018-0092.npy -tests/data/ljspeech/wavs/LJ045-0058.wav|tests/data/ljspeech/wavs/LJ045-0058.npy -tests/data/ljspeech/wavs/LJ028-0060.wav|tests/data/ljspeech/wavs/LJ028-0060.npy -tests/data/ljspeech/wavs/LJ018-0218.wav|tests/data/ljspeech/wavs/LJ018-0218.npy -tests/data/ljspeech/wavs/LJ029-0107.wav|tests/data/ljspeech/wavs/LJ029-0107.npy -tests/data/ljspeech/wavs/LJ009-0160.wav|tests/data/ljspeech/wavs/LJ009-0160.npy -tests/data/ljspeech/wavs/LJ002-0020.wav|tests/data/ljspeech/wavs/LJ002-0020.npy -tests/data/ljspeech/wavs/LJ032-0155.wav|tests/data/ljspeech/wavs/LJ032-0155.npy -tests/data/ljspeech/wavs/LJ033-0135.wav|tests/data/ljspeech/wavs/LJ033-0135.npy -tests/data/ljspeech/wavs/LJ031-0024.wav|tests/data/ljspeech/wavs/LJ031-0024.npy -tests/data/ljspeech/wavs/LJ032-0100.wav|tests/data/ljspeech/wavs/LJ032-0100.npy -tests/data/ljspeech/wavs/LJ037-0219.wav|tests/data/ljspeech/wavs/LJ037-0219.npy -tests/data/ljspeech/wavs/LJ009-0126.wav|tests/data/ljspeech/wavs/LJ009-0126.npy -tests/data/ljspeech/wavs/LJ009-0074.wav|tests/data/ljspeech/wavs/LJ009-0074.npy -tests/data/ljspeech/wavs/LJ028-0208.wav|tests/data/ljspeech/wavs/LJ028-0208.npy -tests/data/ljspeech/wavs/LJ038-0003.wav|tests/data/ljspeech/wavs/LJ038-0003.npy -tests/data/ljspeech/wavs/LJ009-0294.wav|tests/data/ljspeech/wavs/LJ009-0294.npy -tests/data/ljspeech/wavs/LJ012-0199.wav|tests/data/ljspeech/wavs/LJ012-0199.npy -tests/data/ljspeech/wavs/LJ011-0028.wav|tests/data/ljspeech/wavs/LJ011-0028.npy -tests/data/ljspeech/wavs/LJ006-0281.wav|tests/data/ljspeech/wavs/LJ006-0281.npy -tests/data/ljspeech/wavs/LJ010-0019.wav|tests/data/ljspeech/wavs/LJ010-0019.npy -tests/data/ljspeech/wavs/LJ040-0062.wav|tests/data/ljspeech/wavs/LJ040-0062.npy -tests/data/ljspeech/wavs/LJ037-0003.wav|tests/data/ljspeech/wavs/LJ037-0003.npy -tests/data/ljspeech/wavs/LJ043-0159.wav|tests/data/ljspeech/wavs/LJ043-0159.npy -tests/data/ljspeech/wavs/LJ039-0036.wav|tests/data/ljspeech/wavs/LJ039-0036.npy -tests/data/ljspeech/wavs/LJ028-0255.wav|tests/data/ljspeech/wavs/LJ028-0255.npy -tests/data/ljspeech/wavs/LJ032-0058.wav|tests/data/ljspeech/wavs/LJ032-0058.npy -tests/data/ljspeech/wavs/LJ038-0304.wav|tests/data/ljspeech/wavs/LJ038-0304.npy -tests/data/ljspeech/wavs/LJ032-0239.wav|tests/data/ljspeech/wavs/LJ032-0239.npy -tests/data/ljspeech/wavs/LJ032-0250.wav|tests/data/ljspeech/wavs/LJ032-0250.npy -tests/data/ljspeech/wavs/LJ047-0056.wav|tests/data/ljspeech/wavs/LJ047-0056.npy -tests/data/ljspeech/wavs/LJ038-0079.wav|tests/data/ljspeech/wavs/LJ038-0079.npy -tests/data/ljspeech/wavs/LJ050-0101.wav|tests/data/ljspeech/wavs/LJ050-0101.npy -tests/data/ljspeech/wavs/LJ008-0033.wav|tests/data/ljspeech/wavs/LJ008-0033.npy -tests/data/ljspeech/wavs/LJ037-0157.wav|tests/data/ljspeech/wavs/LJ037-0157.npy -tests/data/ljspeech/wavs/LJ038-0273.wav|tests/data/ljspeech/wavs/LJ038-0273.npy -tests/data/ljspeech/wavs/LJ043-0004.wav|tests/data/ljspeech/wavs/LJ043-0004.npy -tests/data/ljspeech/wavs/LJ002-0035.wav|tests/data/ljspeech/wavs/LJ002-0035.npy -tests/data/ljspeech/wavs/LJ007-0217.wav|tests/data/ljspeech/wavs/LJ007-0217.npy -tests/data/ljspeech/wavs/LJ039-0151.wav|tests/data/ljspeech/wavs/LJ039-0151.npy -tests/data/ljspeech/wavs/LJ039-0027.wav|tests/data/ljspeech/wavs/LJ039-0027.npy -tests/data/ljspeech/wavs/LJ016-0398.wav|tests/data/ljspeech/wavs/LJ016-0398.npy -tests/data/ljspeech/wavs/LJ028-0389.wav|tests/data/ljspeech/wavs/LJ028-0389.npy -tests/data/ljspeech/wavs/LJ034-0003.wav|tests/data/ljspeech/wavs/LJ034-0003.npy -tests/data/ljspeech/wavs/LJ044-0144.wav|tests/data/ljspeech/wavs/LJ044-0144.npy -tests/data/ljspeech/wavs/LJ036-0097.wav|tests/data/ljspeech/wavs/LJ036-0097.npy -tests/data/ljspeech/wavs/LJ020-0064.wav|tests/data/ljspeech/wavs/LJ020-0064.npy -tests/data/ljspeech/wavs/LJ045-0177.wav|tests/data/ljspeech/wavs/LJ045-0177.npy -tests/data/ljspeech/wavs/LJ017-0277.wav|tests/data/ljspeech/wavs/LJ017-0277.npy -tests/data/ljspeech/wavs/LJ021-0165.wav|tests/data/ljspeech/wavs/LJ021-0165.npy -tests/data/ljspeech/wavs/LJ030-0137.wav|tests/data/ljspeech/wavs/LJ030-0137.npy -tests/data/ljspeech/wavs/LJ045-0149.wav|tests/data/ljspeech/wavs/LJ045-0149.npy -tests/data/ljspeech/wavs/LJ049-0075.wav|tests/data/ljspeech/wavs/LJ049-0075.npy -tests/data/ljspeech/wavs/LJ040-0096.wav|tests/data/ljspeech/wavs/LJ040-0096.npy -tests/data/ljspeech/wavs/LJ036-0105.wav|tests/data/ljspeech/wavs/LJ036-0105.npy -tests/data/ljspeech/wavs/LJ037-0076.wav|tests/data/ljspeech/wavs/LJ037-0076.npy -tests/data/ljspeech/wavs/LJ047-0092.wav|tests/data/ljspeech/wavs/LJ047-0092.npy -tests/data/ljspeech/wavs/LJ021-0002.wav|tests/data/ljspeech/wavs/LJ021-0002.npy -tests/data/ljspeech/wavs/LJ040-0058.wav|tests/data/ljspeech/wavs/LJ040-0058.npy -tests/data/ljspeech/wavs/LJ033-0200.wav|tests/data/ljspeech/wavs/LJ033-0200.npy -tests/data/ljspeech/wavs/LJ041-0147.wav|tests/data/ljspeech/wavs/LJ041-0147.npy -tests/data/ljspeech/wavs/LJ033-0164.wav|tests/data/ljspeech/wavs/LJ033-0164.npy -tests/data/ljspeech/wavs/LJ034-0204.wav|tests/data/ljspeech/wavs/LJ034-0204.npy -tests/data/ljspeech/wavs/LJ045-0047.wav|tests/data/ljspeech/wavs/LJ045-0047.npy -tests/data/ljspeech/wavs/LJ024-0003.wav|tests/data/ljspeech/wavs/LJ024-0003.npy -tests/data/ljspeech/wavs/LJ013-0148.wav|tests/data/ljspeech/wavs/LJ013-0148.npy -tests/data/ljspeech/wavs/LJ012-0033.wav|tests/data/ljspeech/wavs/LJ012-0033.npy -tests/data/ljspeech/wavs/LJ044-0004.wav|tests/data/ljspeech/wavs/LJ044-0004.npy -tests/data/ljspeech/wavs/LJ005-0121.wav|tests/data/ljspeech/wavs/LJ005-0121.npy -tests/data/ljspeech/wavs/LJ014-0259.wav|tests/data/ljspeech/wavs/LJ014-0259.npy -tests/data/ljspeech/wavs/LJ041-0050.wav|tests/data/ljspeech/wavs/LJ041-0050.npy -tests/data/ljspeech/wavs/LJ041-0112.wav|tests/data/ljspeech/wavs/LJ041-0112.npy -tests/data/ljspeech/wavs/LJ034-0144.wav|tests/data/ljspeech/wavs/LJ034-0144.npy -tests/data/ljspeech/wavs/LJ010-0107.wav|tests/data/ljspeech/wavs/LJ010-0107.npy -tests/data/ljspeech/wavs/LJ019-0143.wav|tests/data/ljspeech/wavs/LJ019-0143.npy -tests/data/ljspeech/wavs/LJ034-0165.wav|tests/data/ljspeech/wavs/LJ034-0165.npy -tests/data/ljspeech/wavs/LJ016-0426.wav|tests/data/ljspeech/wavs/LJ016-0426.npy -tests/data/ljspeech/wavs/LJ010-0182.wav|tests/data/ljspeech/wavs/LJ010-0182.npy -tests/data/ljspeech/wavs/LJ015-0265.wav|tests/data/ljspeech/wavs/LJ015-0265.npy -tests/data/ljspeech/wavs/LJ029-0091.wav|tests/data/ljspeech/wavs/LJ029-0091.npy -tests/data/ljspeech/wavs/LJ017-0278.wav|tests/data/ljspeech/wavs/LJ017-0278.npy -tests/data/ljspeech/wavs/LJ009-0256.wav|tests/data/ljspeech/wavs/LJ009-0256.npy -tests/data/ljspeech/wavs/LJ014-0186.wav|tests/data/ljspeech/wavs/LJ014-0186.npy -tests/data/ljspeech/wavs/LJ023-0112.wav|tests/data/ljspeech/wavs/LJ023-0112.npy -tests/data/ljspeech/wavs/LJ016-0144.wav|tests/data/ljspeech/wavs/LJ016-0144.npy -tests/data/ljspeech/wavs/LJ016-0378.wav|tests/data/ljspeech/wavs/LJ016-0378.npy -tests/data/ljspeech/wavs/LJ007-0008.wav|tests/data/ljspeech/wavs/LJ007-0008.npy -tests/data/ljspeech/wavs/LJ011-0152.wav|tests/data/ljspeech/wavs/LJ011-0152.npy -tests/data/ljspeech/wavs/LJ032-0158.wav|tests/data/ljspeech/wavs/LJ032-0158.npy -tests/data/ljspeech/wavs/LJ039-0205.wav|tests/data/ljspeech/wavs/LJ039-0205.npy -tests/data/ljspeech/wavs/LJ029-0048.wav|tests/data/ljspeech/wavs/LJ029-0048.npy -tests/data/ljspeech/wavs/LJ009-0170.wav|tests/data/ljspeech/wavs/LJ009-0170.npy -tests/data/ljspeech/wavs/LJ033-0112.wav|tests/data/ljspeech/wavs/LJ033-0112.npy -tests/data/ljspeech/wavs/LJ010-0255.wav|tests/data/ljspeech/wavs/LJ010-0255.npy -tests/data/ljspeech/wavs/LJ036-0116.wav|tests/data/ljspeech/wavs/LJ036-0116.npy -tests/data/ljspeech/wavs/LJ048-0058.wav|tests/data/ljspeech/wavs/LJ048-0058.npy -tests/data/ljspeech/wavs/LJ037-0227.wav|tests/data/ljspeech/wavs/LJ037-0227.npy -tests/data/ljspeech/wavs/LJ004-0127.wav|tests/data/ljspeech/wavs/LJ004-0127.npy -tests/data/ljspeech/wavs/LJ041-0201.wav|tests/data/ljspeech/wavs/LJ041-0201.npy -tests/data/ljspeech/wavs/LJ048-0272.wav|tests/data/ljspeech/wavs/LJ048-0272.npy -tests/data/ljspeech/wavs/LJ050-0023.wav|tests/data/ljspeech/wavs/LJ050-0023.npy -tests/data/ljspeech/wavs/LJ031-0026.wav|tests/data/ljspeech/wavs/LJ031-0026.npy -tests/data/ljspeech/wavs/LJ033-0012.wav|tests/data/ljspeech/wavs/LJ033-0012.npy -tests/data/ljspeech/wavs/LJ038-0135.wav|tests/data/ljspeech/wavs/LJ038-0135.npy -tests/data/ljspeech/wavs/LJ024-0068.wav|tests/data/ljspeech/wavs/LJ024-0068.npy -tests/data/ljspeech/wavs/LJ047-0105.wav|tests/data/ljspeech/wavs/LJ047-0105.npy -tests/data/ljspeech/wavs/LJ030-0023.wav|tests/data/ljspeech/wavs/LJ030-0023.npy -tests/data/ljspeech/wavs/LJ021-0039.wav|tests/data/ljspeech/wavs/LJ021-0039.npy -tests/data/ljspeech/wavs/LJ022-0019.wav|tests/data/ljspeech/wavs/LJ022-0019.npy -tests/data/ljspeech/wavs/LJ018-0363.wav|tests/data/ljspeech/wavs/LJ018-0363.npy -tests/data/ljspeech/wavs/LJ011-0047.wav|tests/data/ljspeech/wavs/LJ011-0047.npy -tests/data/ljspeech/wavs/LJ048-0091.wav|tests/data/ljspeech/wavs/LJ048-0091.npy -tests/data/ljspeech/wavs/LJ010-0072.wav|tests/data/ljspeech/wavs/LJ010-0072.npy -tests/data/ljspeech/wavs/LJ040-0017.wav|tests/data/ljspeech/wavs/LJ040-0017.npy -tests/data/ljspeech/wavs/LJ037-0182.wav|tests/data/ljspeech/wavs/LJ037-0182.npy -tests/data/ljspeech/wavs/LJ007-0228.wav|tests/data/ljspeech/wavs/LJ007-0228.npy -tests/data/ljspeech/wavs/LJ035-0059.wav|tests/data/ljspeech/wavs/LJ035-0059.npy -tests/data/ljspeech/wavs/LJ009-0027.wav|tests/data/ljspeech/wavs/LJ009-0027.npy -tests/data/ljspeech/wavs/LJ016-0233.wav|tests/data/ljspeech/wavs/LJ016-0233.npy -tests/data/ljspeech/wavs/LJ036-0104.wav|tests/data/ljspeech/wavs/LJ036-0104.npy -tests/data/ljspeech/wavs/LJ037-0142.wav|tests/data/ljspeech/wavs/LJ037-0142.npy -tests/data/ljspeech/wavs/LJ012-0250.wav|tests/data/ljspeech/wavs/LJ012-0250.npy -tests/data/ljspeech/wavs/LJ047-0131.wav|tests/data/ljspeech/wavs/LJ047-0131.npy -tests/data/ljspeech/wavs/LJ043-0110.wav|tests/data/ljspeech/wavs/LJ043-0110.npy -tests/data/ljspeech/wavs/LJ036-0120.wav|tests/data/ljspeech/wavs/LJ036-0120.npy -tests/data/ljspeech/wavs/LJ040-0082.wav|tests/data/ljspeech/wavs/LJ040-0082.npy -tests/data/ljspeech/wavs/LJ011-0097.wav|tests/data/ljspeech/wavs/LJ011-0097.npy -tests/data/ljspeech/wavs/LJ023-0031.wav|tests/data/ljspeech/wavs/LJ023-0031.npy -tests/data/ljspeech/wavs/LJ027-0144.wav|tests/data/ljspeech/wavs/LJ027-0144.npy -tests/data/ljspeech/wavs/LJ048-0015.wav|tests/data/ljspeech/wavs/LJ048-0015.npy -tests/data/ljspeech/wavs/LJ030-0097.wav|tests/data/ljspeech/wavs/LJ030-0097.npy -tests/data/ljspeech/wavs/LJ028-0322.wav|tests/data/ljspeech/wavs/LJ028-0322.npy -tests/data/ljspeech/wavs/LJ029-0010.wav|tests/data/ljspeech/wavs/LJ029-0010.npy -tests/data/ljspeech/wavs/LJ029-0170.wav|tests/data/ljspeech/wavs/LJ029-0170.npy -tests/data/ljspeech/wavs/LJ039-0060.wav|tests/data/ljspeech/wavs/LJ039-0060.npy -tests/data/ljspeech/wavs/LJ030-0086.wav|tests/data/ljspeech/wavs/LJ030-0086.npy -tests/data/ljspeech/wavs/LJ050-0037.wav|tests/data/ljspeech/wavs/LJ050-0037.npy -tests/data/ljspeech/wavs/LJ031-0020.wav|tests/data/ljspeech/wavs/LJ031-0020.npy -tests/data/ljspeech/wavs/LJ028-0109.wav|tests/data/ljspeech/wavs/LJ028-0109.npy -tests/data/ljspeech/wavs/LJ039-0231.wav|tests/data/ljspeech/wavs/LJ039-0231.npy -tests/data/ljspeech/wavs/LJ009-0076.wav|tests/data/ljspeech/wavs/LJ009-0076.npy -tests/data/ljspeech/wavs/LJ036-0193.wav|tests/data/ljspeech/wavs/LJ036-0193.npy -tests/data/ljspeech/wavs/LJ050-0195.wav|tests/data/ljspeech/wavs/LJ050-0195.npy -tests/data/ljspeech/wavs/LJ011-0030.wav|tests/data/ljspeech/wavs/LJ011-0030.npy -tests/data/ljspeech/wavs/LJ038-0163.wav|tests/data/ljspeech/wavs/LJ038-0163.npy -tests/data/ljspeech/wavs/LJ021-0172.wav|tests/data/ljspeech/wavs/LJ021-0172.npy -tests/data/ljspeech/wavs/LJ045-0025.wav|tests/data/ljspeech/wavs/LJ045-0025.npy -tests/data/ljspeech/wavs/LJ003-0339.wav|tests/data/ljspeech/wavs/LJ003-0339.npy -tests/data/ljspeech/wavs/LJ005-0172.wav|tests/data/ljspeech/wavs/LJ005-0172.npy -tests/data/ljspeech/wavs/LJ030-0152.wav|tests/data/ljspeech/wavs/LJ030-0152.npy -tests/data/ljspeech/wavs/LJ030-0111.wav|tests/data/ljspeech/wavs/LJ030-0111.npy -tests/data/ljspeech/wavs/LJ048-0147.wav|tests/data/ljspeech/wavs/LJ048-0147.npy -tests/data/ljspeech/wavs/LJ028-0048.wav|tests/data/ljspeech/wavs/LJ028-0048.npy -tests/data/ljspeech/wavs/LJ015-0052.wav|tests/data/ljspeech/wavs/LJ015-0052.npy -tests/data/ljspeech/wavs/LJ023-0002.wav|tests/data/ljspeech/wavs/LJ023-0002.npy -tests/data/ljspeech/wavs/LJ047-0141.wav|tests/data/ljspeech/wavs/LJ047-0141.npy -tests/data/ljspeech/wavs/LJ018-0223.wav|tests/data/ljspeech/wavs/LJ018-0223.npy -tests/data/ljspeech/wavs/LJ038-0255.wav|tests/data/ljspeech/wavs/LJ038-0255.npy -tests/data/ljspeech/wavs/LJ026-0002.wav|tests/data/ljspeech/wavs/LJ026-0002.npy -tests/data/ljspeech/wavs/LJ038-0098.wav|tests/data/ljspeech/wavs/LJ038-0098.npy -tests/data/ljspeech/wavs/LJ050-0146.wav|tests/data/ljspeech/wavs/LJ050-0146.npy -tests/data/ljspeech/wavs/LJ032-0104.wav|tests/data/ljspeech/wavs/LJ032-0104.npy -tests/data/ljspeech/wavs/LJ017-0273.wav|tests/data/ljspeech/wavs/LJ017-0273.npy -tests/data/ljspeech/wavs/LJ030-0109.wav|tests/data/ljspeech/wavs/LJ030-0109.npy -tests/data/ljspeech/wavs/LJ046-0179.wav|tests/data/ljspeech/wavs/LJ046-0179.npy -tests/data/ljspeech/wavs/LJ043-0133.wav|tests/data/ljspeech/wavs/LJ043-0133.npy -tests/data/ljspeech/wavs/LJ007-0009.wav|tests/data/ljspeech/wavs/LJ007-0009.npy -tests/data/ljspeech/wavs/LJ047-0101.wav|tests/data/ljspeech/wavs/LJ047-0101.npy -tests/data/ljspeech/wavs/LJ003-0050.wav|tests/data/ljspeech/wavs/LJ003-0050.npy -tests/data/ljspeech/wavs/LJ045-0147.wav|tests/data/ljspeech/wavs/LJ045-0147.npy -tests/data/ljspeech/wavs/LJ039-0098.wav|tests/data/ljspeech/wavs/LJ039-0098.npy -tests/data/ljspeech/wavs/LJ028-0062.wav|tests/data/ljspeech/wavs/LJ028-0062.npy -tests/data/ljspeech/wavs/LJ037-0229.wav|tests/data/ljspeech/wavs/LJ037-0229.npy -tests/data/ljspeech/wavs/LJ038-0058.wav|tests/data/ljspeech/wavs/LJ038-0058.npy -tests/data/ljspeech/wavs/LJ036-0156.wav|tests/data/ljspeech/wavs/LJ036-0156.npy -tests/data/ljspeech/wavs/LJ009-0057.wav|tests/data/ljspeech/wavs/LJ009-0057.npy -tests/data/ljspeech/wavs/LJ045-0171.wav|tests/data/ljspeech/wavs/LJ045-0171.npy -tests/data/ljspeech/wavs/LJ008-0148.wav|tests/data/ljspeech/wavs/LJ008-0148.npy -tests/data/ljspeech/wavs/LJ045-0024.wav|tests/data/ljspeech/wavs/LJ045-0024.npy -tests/data/ljspeech/wavs/LJ017-0105.wav|tests/data/ljspeech/wavs/LJ017-0105.npy -tests/data/ljspeech/wavs/LJ039-0025.wav|tests/data/ljspeech/wavs/LJ039-0025.npy -tests/data/ljspeech/wavs/LJ049-0004.wav|tests/data/ljspeech/wavs/LJ049-0004.npy -tests/data/ljspeech/wavs/LJ016-0091.wav|tests/data/ljspeech/wavs/LJ016-0091.npy -tests/data/ljspeech/wavs/LJ001-0008.wav|tests/data/ljspeech/wavs/LJ001-0008.npy -tests/data/ljspeech/wavs/LJ032-0240.wav|tests/data/ljspeech/wavs/LJ032-0240.npy -tests/data/ljspeech/wavs/LJ048-0033.wav|tests/data/ljspeech/wavs/LJ048-0033.npy -tests/data/ljspeech/wavs/LJ032-0247.wav|tests/data/ljspeech/wavs/LJ032-0247.npy -tests/data/ljspeech/wavs/LJ025-0050.wav|tests/data/ljspeech/wavs/LJ025-0050.npy -tests/data/ljspeech/wavs/LJ029-0201.wav|tests/data/ljspeech/wavs/LJ029-0201.npy -tests/data/ljspeech/wavs/LJ047-0161.wav|tests/data/ljspeech/wavs/LJ047-0161.npy -tests/data/ljspeech/wavs/LJ031-0192.wav|tests/data/ljspeech/wavs/LJ031-0192.npy -tests/data/ljspeech/wavs/LJ018-0106.wav|tests/data/ljspeech/wavs/LJ018-0106.npy -tests/data/ljspeech/wavs/LJ041-0186.wav|tests/data/ljspeech/wavs/LJ041-0186.npy -tests/data/ljspeech/wavs/LJ021-0077.wav|tests/data/ljspeech/wavs/LJ021-0077.npy -tests/data/ljspeech/wavs/LJ039-0054.wav|tests/data/ljspeech/wavs/LJ039-0054.npy -tests/data/ljspeech/wavs/LJ045-0056.wav|tests/data/ljspeech/wavs/LJ045-0056.npy -tests/data/ljspeech/wavs/LJ015-0138.wav|tests/data/ljspeech/wavs/LJ015-0138.npy -tests/data/ljspeech/wavs/LJ039-0129.wav|tests/data/ljspeech/wavs/LJ039-0129.npy -tests/data/ljspeech/wavs/LJ025-0110.wav|tests/data/ljspeech/wavs/LJ025-0110.npy -tests/data/ljspeech/wavs/LJ048-0154.wav|tests/data/ljspeech/wavs/LJ048-0154.npy -tests/data/ljspeech/wavs/LJ021-0186.wav|tests/data/ljspeech/wavs/LJ021-0186.npy -tests/data/ljspeech/wavs/LJ039-0005.wav|tests/data/ljspeech/wavs/LJ039-0005.npy -tests/data/ljspeech/wavs/LJ011-0208.wav|tests/data/ljspeech/wavs/LJ011-0208.npy -tests/data/ljspeech/wavs/LJ028-0413.wav|tests/data/ljspeech/wavs/LJ028-0413.npy -tests/data/ljspeech/wavs/LJ029-0070.wav|tests/data/ljspeech/wavs/LJ029-0070.npy -tests/data/ljspeech/wavs/LJ042-0014.wav|tests/data/ljspeech/wavs/LJ042-0014.npy -tests/data/ljspeech/wavs/LJ045-0195.wav|tests/data/ljspeech/wavs/LJ045-0195.npy -tests/data/ljspeech/wavs/LJ028-0462.wav|tests/data/ljspeech/wavs/LJ028-0462.npy -tests/data/ljspeech/wavs/LJ033-0075.wav|tests/data/ljspeech/wavs/LJ033-0075.npy -tests/data/ljspeech/wavs/LJ046-0050.wav|tests/data/ljspeech/wavs/LJ046-0050.npy -tests/data/ljspeech/wavs/LJ046-0124.wav|tests/data/ljspeech/wavs/LJ046-0124.npy -tests/data/ljspeech/wavs/LJ016-0051.wav|tests/data/ljspeech/wavs/LJ016-0051.npy -tests/data/ljspeech/wavs/LJ014-0231.wav|tests/data/ljspeech/wavs/LJ014-0231.npy -tests/data/ljspeech/wavs/LJ022-0048.wav|tests/data/ljspeech/wavs/LJ022-0048.npy -tests/data/ljspeech/wavs/LJ033-0003.wav|tests/data/ljspeech/wavs/LJ033-0003.npy -tests/data/ljspeech/wavs/LJ018-0069.wav|tests/data/ljspeech/wavs/LJ018-0069.npy -tests/data/ljspeech/wavs/LJ046-0003.wav|tests/data/ljspeech/wavs/LJ046-0003.npy -tests/data/ljspeech/wavs/LJ008-0022.wav|tests/data/ljspeech/wavs/LJ008-0022.npy -tests/data/ljspeech/wavs/LJ029-0182.wav|tests/data/ljspeech/wavs/LJ029-0182.npy -tests/data/ljspeech/wavs/LJ032-0018.wav|tests/data/ljspeech/wavs/LJ032-0018.npy -tests/data/ljspeech/wavs/LJ024-0143.wav|tests/data/ljspeech/wavs/LJ024-0143.npy -tests/data/ljspeech/wavs/LJ044-0042.wav|tests/data/ljspeech/wavs/LJ044-0042.npy -tests/data/ljspeech/wavs/LJ033-0160.wav|tests/data/ljspeech/wavs/LJ033-0160.npy -tests/data/ljspeech/wavs/LJ004-0008.wav|tests/data/ljspeech/wavs/LJ004-0008.npy -tests/data/ljspeech/wavs/LJ009-0054.wav|tests/data/ljspeech/wavs/LJ009-0054.npy -tests/data/ljspeech/wavs/LJ024-0019.wav|tests/data/ljspeech/wavs/LJ024-0019.npy -tests/data/ljspeech/wavs/LJ034-0039.wav|tests/data/ljspeech/wavs/LJ034-0039.npy -tests/data/ljspeech/wavs/LJ015-0010.wav|tests/data/ljspeech/wavs/LJ015-0010.npy -tests/data/ljspeech/wavs/LJ039-0095.wav|tests/data/ljspeech/wavs/LJ039-0095.npy -tests/data/ljspeech/wavs/LJ047-0205.wav|tests/data/ljspeech/wavs/LJ047-0205.npy -tests/data/ljspeech/wavs/LJ030-0073.wav|tests/data/ljspeech/wavs/LJ030-0073.npy -tests/data/ljspeech/wavs/LJ025-0012.wav|tests/data/ljspeech/wavs/LJ025-0012.npy -tests/data/ljspeech/wavs/LJ007-0149.wav|tests/data/ljspeech/wavs/LJ007-0149.npy -tests/data/ljspeech/wavs/LJ047-0017.wav|tests/data/ljspeech/wavs/LJ047-0017.npy -tests/data/ljspeech/wavs/LJ009-0073.wav|tests/data/ljspeech/wavs/LJ009-0073.npy -tests/data/ljspeech/wavs/LJ017-0212.wav|tests/data/ljspeech/wavs/LJ017-0212.npy -tests/data/ljspeech/wavs/LJ018-0312.wav|tests/data/ljspeech/wavs/LJ018-0312.npy -tests/data/ljspeech/wavs/LJ044-0161.wav|tests/data/ljspeech/wavs/LJ044-0161.npy -tests/data/ljspeech/wavs/LJ016-0197.wav|tests/data/ljspeech/wavs/LJ016-0197.npy -tests/data/ljspeech/wavs/LJ023-0077.wav|tests/data/ljspeech/wavs/LJ023-0077.npy -tests/data/ljspeech/wavs/LJ030-0067.wav|tests/data/ljspeech/wavs/LJ030-0067.npy -tests/data/ljspeech/wavs/LJ034-0202.wav|tests/data/ljspeech/wavs/LJ034-0202.npy -tests/data/ljspeech/wavs/LJ030-0050.wav|tests/data/ljspeech/wavs/LJ030-0050.npy -tests/data/ljspeech/wavs/LJ049-0016.wav|tests/data/ljspeech/wavs/LJ049-0016.npy -tests/data/ljspeech/wavs/LJ035-0029.wav|tests/data/ljspeech/wavs/LJ035-0029.npy -tests/data/ljspeech/wavs/LJ048-0060.wav|tests/data/ljspeech/wavs/LJ048-0060.npy -tests/data/ljspeech/wavs/LJ037-0113.wav|tests/data/ljspeech/wavs/LJ037-0113.npy -tests/data/ljspeech/wavs/LJ016-0022.wav|tests/data/ljspeech/wavs/LJ016-0022.npy -tests/data/ljspeech/wavs/LJ032-0122.wav|tests/data/ljspeech/wavs/LJ032-0122.npy -tests/data/ljspeech/wavs/LJ032-0056.wav|tests/data/ljspeech/wavs/LJ032-0056.npy -tests/data/ljspeech/wavs/LJ025-0038.wav|tests/data/ljspeech/wavs/LJ025-0038.npy -tests/data/ljspeech/wavs/LJ046-0153.wav|tests/data/ljspeech/wavs/LJ046-0153.npy -tests/data/ljspeech/wavs/LJ035-0073.wav|tests/data/ljspeech/wavs/LJ035-0073.npy -tests/data/ljspeech/wavs/LJ021-0153.wav|tests/data/ljspeech/wavs/LJ021-0153.npy -tests/data/ljspeech/wavs/LJ050-0137.wav|tests/data/ljspeech/wavs/LJ050-0137.npy -tests/data/ljspeech/wavs/LJ042-0189.wav|tests/data/ljspeech/wavs/LJ042-0189.npy -tests/data/ljspeech/wavs/LJ022-0116.wav|tests/data/ljspeech/wavs/LJ022-0116.npy -tests/data/ljspeech/wavs/LJ018-0196.wav|tests/data/ljspeech/wavs/LJ018-0196.npy -tests/data/ljspeech/wavs/LJ037-0006.wav|tests/data/ljspeech/wavs/LJ037-0006.npy -tests/data/ljspeech/wavs/LJ030-0103.wav|tests/data/ljspeech/wavs/LJ030-0103.npy -tests/data/ljspeech/wavs/LJ047-0022.wav|tests/data/ljspeech/wavs/LJ047-0022.npy -tests/data/ljspeech/wavs/LJ022-0169.wav|tests/data/ljspeech/wavs/LJ022-0169.npy -tests/data/ljspeech/wavs/LJ013-0031.wav|tests/data/ljspeech/wavs/LJ013-0031.npy -tests/data/ljspeech/wavs/LJ021-0199.wav|tests/data/ljspeech/wavs/LJ021-0199.npy -tests/data/ljspeech/wavs/LJ009-0243.wav|tests/data/ljspeech/wavs/LJ009-0243.npy -tests/data/ljspeech/wavs/LJ033-0068.wav|tests/data/ljspeech/wavs/LJ033-0068.npy -tests/data/ljspeech/wavs/LJ011-0107.wav|tests/data/ljspeech/wavs/LJ011-0107.npy -tests/data/ljspeech/wavs/LJ008-0110.wav|tests/data/ljspeech/wavs/LJ008-0110.npy -tests/data/ljspeech/wavs/LJ043-0041.wav|tests/data/ljspeech/wavs/LJ043-0041.npy -tests/data/ljspeech/wavs/LJ020-0008.wav|tests/data/ljspeech/wavs/LJ020-0008.npy -tests/data/ljspeech/wavs/LJ030-0003.wav|tests/data/ljspeech/wavs/LJ030-0003.npy -tests/data/ljspeech/wavs/LJ043-0007.wav|tests/data/ljspeech/wavs/LJ043-0007.npy -tests/data/ljspeech/wavs/LJ009-0260.wav|tests/data/ljspeech/wavs/LJ009-0260.npy -tests/data/ljspeech/wavs/LJ030-0162.wav|tests/data/ljspeech/wavs/LJ030-0162.npy -tests/data/ljspeech/wavs/LJ027-0051.wav|tests/data/ljspeech/wavs/LJ027-0051.npy -tests/data/ljspeech/wavs/LJ024-0089.wav|tests/data/ljspeech/wavs/LJ024-0089.npy -tests/data/ljspeech/wavs/LJ024-0120.wav|tests/data/ljspeech/wavs/LJ024-0120.npy -tests/data/ljspeech/wavs/LJ008-0294.wav|tests/data/ljspeech/wavs/LJ008-0294.npy -tests/data/ljspeech/wavs/LJ038-0174.wav|tests/data/ljspeech/wavs/LJ038-0174.npy -tests/data/ljspeech/wavs/LJ008-0197.wav|tests/data/ljspeech/wavs/LJ008-0197.npy -tests/data/ljspeech/wavs/LJ045-0109.wav|tests/data/ljspeech/wavs/LJ045-0109.npy -tests/data/ljspeech/wavs/LJ018-0222.wav|tests/data/ljspeech/wavs/LJ018-0222.npy -tests/data/ljspeech/wavs/LJ043-0097.wav|tests/data/ljspeech/wavs/LJ043-0097.npy -tests/data/ljspeech/wavs/LJ002-0125.wav|tests/data/ljspeech/wavs/LJ002-0125.npy -tests/data/ljspeech/wavs/LJ049-0055.wav|tests/data/ljspeech/wavs/LJ049-0055.npy -tests/data/ljspeech/wavs/LJ012-0154.wav|tests/data/ljspeech/wavs/LJ012-0154.npy -tests/data/ljspeech/wavs/LJ042-0004.wav|tests/data/ljspeech/wavs/LJ042-0004.npy -tests/data/ljspeech/wavs/LJ043-0142.wav|tests/data/ljspeech/wavs/LJ043-0142.npy -tests/data/ljspeech/wavs/LJ020-0069.wav|tests/data/ljspeech/wavs/LJ020-0069.npy -tests/data/ljspeech/wavs/LJ030-0035.wav|tests/data/ljspeech/wavs/LJ030-0035.npy -tests/data/ljspeech/wavs/LJ009-0168.wav|tests/data/ljspeech/wavs/LJ009-0168.npy -tests/data/ljspeech/wavs/LJ020-0067.wav|tests/data/ljspeech/wavs/LJ020-0067.npy -tests/data/ljspeech/wavs/LJ015-0135.wav|tests/data/ljspeech/wavs/LJ015-0135.npy -tests/data/ljspeech/wavs/LJ028-0361.wav|tests/data/ljspeech/wavs/LJ028-0361.npy -tests/data/ljspeech/wavs/LJ001-0002.wav|tests/data/ljspeech/wavs/LJ001-0002.npy -tests/data/ljspeech/wavs/LJ002-0234.wav|tests/data/ljspeech/wavs/LJ002-0234.npy -tests/data/ljspeech/wavs/LJ019-0274.wav|tests/data/ljspeech/wavs/LJ019-0274.npy -tests/data/ljspeech/wavs/LJ049-0080.wav|tests/data/ljspeech/wavs/LJ049-0080.npy -tests/data/ljspeech/wavs/LJ015-0293.wav|tests/data/ljspeech/wavs/LJ015-0293.npy -tests/data/ljspeech/wavs/LJ030-0083.wav|tests/data/ljspeech/wavs/LJ030-0083.npy -tests/data/ljspeech/wavs/LJ049-0068.wav|tests/data/ljspeech/wavs/LJ049-0068.npy -tests/data/ljspeech/wavs/LJ032-0013.wav|tests/data/ljspeech/wavs/LJ032-0013.npy -tests/data/ljspeech/wavs/LJ015-0032.wav|tests/data/ljspeech/wavs/LJ015-0032.npy -tests/data/ljspeech/wavs/LJ035-0164.wav|tests/data/ljspeech/wavs/LJ035-0164.npy -tests/data/ljspeech/wavs/LJ014-0314.wav|tests/data/ljspeech/wavs/LJ014-0314.npy -tests/data/ljspeech/wavs/LJ050-0002.wav|tests/data/ljspeech/wavs/LJ050-0002.npy -tests/data/ljspeech/wavs/LJ033-0105.wav|tests/data/ljspeech/wavs/LJ033-0105.npy -tests/data/ljspeech/wavs/LJ020-0072.wav|tests/data/ljspeech/wavs/LJ020-0072.npy -tests/data/ljspeech/wavs/LJ016-0138.wav|tests/data/ljspeech/wavs/LJ016-0138.npy -tests/data/ljspeech/wavs/LJ023-0063.wav|tests/data/ljspeech/wavs/LJ023-0063.npy -tests/data/ljspeech/wavs/LJ005-0210.wav|tests/data/ljspeech/wavs/LJ005-0210.npy -tests/data/ljspeech/wavs/LJ010-0262.wav|tests/data/ljspeech/wavs/LJ010-0262.npy -tests/data/ljspeech/wavs/LJ039-0032.wav|tests/data/ljspeech/wavs/LJ039-0032.npy -tests/data/ljspeech/wavs/LJ019-0020.wav|tests/data/ljspeech/wavs/LJ019-0020.npy -tests/data/ljspeech/wavs/LJ039-0170.wav|tests/data/ljspeech/wavs/LJ039-0170.npy -tests/data/ljspeech/wavs/LJ016-0183.wav|tests/data/ljspeech/wavs/LJ016-0183.npy -tests/data/ljspeech/wavs/LJ038-0271.wav|tests/data/ljspeech/wavs/LJ038-0271.npy -tests/data/ljspeech/wavs/LJ037-0082.wav|tests/data/ljspeech/wavs/LJ037-0082.npy -tests/data/ljspeech/wavs/LJ047-0066.wav|tests/data/ljspeech/wavs/LJ047-0066.npy -tests/data/ljspeech/wavs/LJ044-0194.wav|tests/data/ljspeech/wavs/LJ044-0194.npy -tests/data/ljspeech/wavs/LJ032-0197.wav|tests/data/ljspeech/wavs/LJ032-0197.npy -tests/data/ljspeech/wavs/LJ028-0333.wav|tests/data/ljspeech/wavs/LJ028-0333.npy -tests/data/ljspeech/wavs/LJ015-0036.wav|tests/data/ljspeech/wavs/LJ015-0036.npy -tests/data/ljspeech/wavs/LJ044-0069.wav|tests/data/ljspeech/wavs/LJ044-0069.npy -tests/data/ljspeech/wavs/LJ001-0104.wav|tests/data/ljspeech/wavs/LJ001-0104.npy -tests/data/ljspeech/wavs/LJ016-0286.wav|tests/data/ljspeech/wavs/LJ016-0286.npy -tests/data/ljspeech/wavs/LJ031-0037.wav|tests/data/ljspeech/wavs/LJ031-0037.npy -tests/data/ljspeech/wavs/LJ014-0035.wav|tests/data/ljspeech/wavs/LJ014-0035.npy -tests/data/ljspeech/wavs/LJ001-0078.wav|tests/data/ljspeech/wavs/LJ001-0078.npy -tests/data/ljspeech/wavs/LJ014-0088.wav|tests/data/ljspeech/wavs/LJ014-0088.npy -tests/data/ljspeech/wavs/LJ002-0208.wav|tests/data/ljspeech/wavs/LJ002-0208.npy -tests/data/ljspeech/wavs/LJ028-0515.wav|tests/data/ljspeech/wavs/LJ028-0515.npy -tests/data/ljspeech/wavs/LJ035-0007.wav|tests/data/ljspeech/wavs/LJ035-0007.npy -tests/data/ljspeech/wavs/LJ048-0107.wav|tests/data/ljspeech/wavs/LJ048-0107.npy -tests/data/ljspeech/wavs/LJ022-0121.wav|tests/data/ljspeech/wavs/LJ022-0121.npy -tests/data/ljspeech/wavs/LJ014-0330.wav|tests/data/ljspeech/wavs/LJ014-0330.npy -tests/data/ljspeech/wavs/LJ013-0177.wav|tests/data/ljspeech/wavs/LJ013-0177.npy -tests/data/ljspeech/wavs/LJ050-0030.wav|tests/data/ljspeech/wavs/LJ050-0030.npy -tests/data/ljspeech/wavs/LJ024-0116.wav|tests/data/ljspeech/wavs/LJ024-0116.npy -tests/data/ljspeech/wavs/LJ031-0100.wav|tests/data/ljspeech/wavs/LJ031-0100.npy -tests/data/ljspeech/wavs/LJ001-0170.wav|tests/data/ljspeech/wavs/LJ001-0170.npy -tests/data/ljspeech/wavs/LJ050-0197.wav|tests/data/ljspeech/wavs/LJ050-0197.npy -tests/data/ljspeech/wavs/LJ050-0135.wav|tests/data/ljspeech/wavs/LJ050-0135.npy -tests/data/ljspeech/wavs/LJ011-0213.wav|tests/data/ljspeech/wavs/LJ011-0213.npy -tests/data/ljspeech/wavs/LJ037-0191.wav|tests/data/ljspeech/wavs/LJ037-0191.npy -tests/data/ljspeech/wavs/LJ047-0133.wav|tests/data/ljspeech/wavs/LJ047-0133.npy -tests/data/ljspeech/wavs/LJ034-0151.wav|tests/data/ljspeech/wavs/LJ034-0151.npy -tests/data/ljspeech/wavs/LJ036-0115.wav|tests/data/ljspeech/wavs/LJ036-0115.npy -tests/data/ljspeech/wavs/LJ036-0113.wav|tests/data/ljspeech/wavs/LJ036-0113.npy -tests/data/ljspeech/wavs/LJ037-0002.wav|tests/data/ljspeech/wavs/LJ037-0002.npy -tests/data/ljspeech/wavs/LJ023-0070.wav|tests/data/ljspeech/wavs/LJ023-0070.npy -tests/data/ljspeech/wavs/LJ032-0002.wav|tests/data/ljspeech/wavs/LJ032-0002.npy -tests/data/ljspeech/wavs/LJ023-0089.wav|tests/data/ljspeech/wavs/LJ023-0089.npy -tests/data/ljspeech/wavs/LJ032-0079.wav|tests/data/ljspeech/wavs/LJ032-0079.npy -tests/data/ljspeech/wavs/LJ039-0229.wav|tests/data/ljspeech/wavs/LJ039-0229.npy -tests/data/ljspeech/wavs/LJ003-0004.wav|tests/data/ljspeech/wavs/LJ003-0004.npy -tests/data/ljspeech/wavs/LJ037-0010.wav|tests/data/ljspeech/wavs/LJ037-0010.npy -tests/data/ljspeech/wavs/LJ048-0134.wav|tests/data/ljspeech/wavs/LJ048-0134.npy -tests/data/ljspeech/wavs/LJ003-0129.wav|tests/data/ljspeech/wavs/LJ003-0129.npy -tests/data/ljspeech/wavs/LJ037-0068.wav|tests/data/ljspeech/wavs/LJ037-0068.npy -tests/data/ljspeech/wavs/LJ017-0133.wav|tests/data/ljspeech/wavs/LJ017-0133.npy -tests/data/ljspeech/wavs/LJ028-0479.wav|tests/data/ljspeech/wavs/LJ028-0479.npy -tests/data/ljspeech/wavs/LJ021-0164.wav|tests/data/ljspeech/wavs/LJ021-0164.npy -tests/data/ljspeech/wavs/LJ031-0171.wav|tests/data/ljspeech/wavs/LJ031-0171.npy -tests/data/ljspeech/wavs/LJ048-0029.wav|tests/data/ljspeech/wavs/LJ048-0029.npy -tests/data/ljspeech/wavs/LJ050-0077.wav|tests/data/ljspeech/wavs/LJ050-0077.npy -tests/data/ljspeech/wavs/LJ047-0087.wav|tests/data/ljspeech/wavs/LJ047-0087.npy -tests/data/ljspeech/wavs/LJ009-0062.wav|tests/data/ljspeech/wavs/LJ009-0062.npy -tests/data/ljspeech/wavs/LJ004-0151.wav|tests/data/ljspeech/wavs/LJ004-0151.npy -tests/data/ljspeech/wavs/LJ030-0188.wav|tests/data/ljspeech/wavs/LJ030-0188.npy -tests/data/ljspeech/wavs/LJ028-0275.wav|tests/data/ljspeech/wavs/LJ028-0275.npy -tests/data/ljspeech/wavs/LJ010-0250.wav|tests/data/ljspeech/wavs/LJ010-0250.npy -tests/data/ljspeech/wavs/LJ012-0141.wav|tests/data/ljspeech/wavs/LJ012-0141.npy -tests/data/ljspeech/wavs/LJ028-0364.wav|tests/data/ljspeech/wavs/LJ028-0364.npy -tests/data/ljspeech/wavs/LJ019-0253.wav|tests/data/ljspeech/wavs/LJ019-0253.npy -tests/data/ljspeech/wavs/LJ037-0257.wav|tests/data/ljspeech/wavs/LJ037-0257.npy -tests/data/ljspeech/wavs/LJ005-0142.wav|tests/data/ljspeech/wavs/LJ005-0142.npy -tests/data/ljspeech/wavs/LJ042-0116.wav|tests/data/ljspeech/wavs/LJ042-0116.npy -tests/data/ljspeech/wavs/LJ003-0289.wav|tests/data/ljspeech/wavs/LJ003-0289.npy -tests/data/ljspeech/wavs/LJ038-0245.wav|tests/data/ljspeech/wavs/LJ038-0245.npy -tests/data/ljspeech/wavs/LJ036-0002.wav|tests/data/ljspeech/wavs/LJ036-0002.npy -tests/data/ljspeech/wavs/LJ033-0002.wav|tests/data/ljspeech/wavs/LJ033-0002.npy -tests/data/ljspeech/wavs/LJ039-0004.wav|tests/data/ljspeech/wavs/LJ039-0004.npy -tests/data/ljspeech/wavs/LJ047-0240.wav|tests/data/ljspeech/wavs/LJ047-0240.npy -tests/data/ljspeech/wavs/LJ044-0067.wav|tests/data/ljspeech/wavs/LJ044-0067.npy -tests/data/ljspeech/wavs/LJ034-0109.wav|tests/data/ljspeech/wavs/LJ034-0109.npy -tests/data/ljspeech/wavs/LJ003-0287.wav|tests/data/ljspeech/wavs/LJ003-0287.npy -tests/data/ljspeech/wavs/LJ030-0093.wav|tests/data/ljspeech/wavs/LJ030-0093.npy -tests/data/ljspeech/wavs/LJ038-0130.wav|tests/data/ljspeech/wavs/LJ038-0130.npy -tests/data/ljspeech/wavs/LJ020-0010.wav|tests/data/ljspeech/wavs/LJ020-0010.npy -tests/data/ljspeech/wavs/LJ019-0280.wav|tests/data/ljspeech/wavs/LJ019-0280.npy -tests/data/ljspeech/wavs/LJ019-0392.wav|tests/data/ljspeech/wavs/LJ019-0392.npy -tests/data/ljspeech/wavs/LJ037-0194.wav|tests/data/ljspeech/wavs/LJ037-0194.npy -tests/data/ljspeech/wavs/LJ025-0077.wav|tests/data/ljspeech/wavs/LJ025-0077.npy -tests/data/ljspeech/wavs/LJ030-0105.wav|tests/data/ljspeech/wavs/LJ030-0105.npy -tests/data/ljspeech/wavs/LJ018-0357.wav|tests/data/ljspeech/wavs/LJ018-0357.npy -tests/data/ljspeech/wavs/LJ038-0113.wav|tests/data/ljspeech/wavs/LJ038-0113.npy -tests/data/ljspeech/wavs/LJ032-0243.wav|tests/data/ljspeech/wavs/LJ032-0243.npy -tests/data/ljspeech/wavs/LJ031-0184.wav|tests/data/ljspeech/wavs/LJ031-0184.npy -tests/data/ljspeech/wavs/LJ022-0053.wav|tests/data/ljspeech/wavs/LJ022-0053.npy -tests/data/ljspeech/wavs/LJ008-0167.wav|tests/data/ljspeech/wavs/LJ008-0167.npy -tests/data/ljspeech/wavs/LJ020-0034.wav|tests/data/ljspeech/wavs/LJ020-0034.npy -tests/data/ljspeech/wavs/LJ026-0029.wav|tests/data/ljspeech/wavs/LJ026-0029.npy -tests/data/ljspeech/wavs/LJ045-0132.wav|tests/data/ljspeech/wavs/LJ045-0132.npy -tests/data/ljspeech/wavs/LJ011-0059.wav|tests/data/ljspeech/wavs/LJ011-0059.npy -tests/data/ljspeech/wavs/LJ048-0038.wav|tests/data/ljspeech/wavs/LJ048-0038.npy -tests/data/ljspeech/wavs/LJ048-0113.wav|tests/data/ljspeech/wavs/LJ048-0113.npy -tests/data/ljspeech/wavs/LJ013-0059.wav|tests/data/ljspeech/wavs/LJ013-0059.npy -tests/data/ljspeech/wavs/LJ005-0074.wav|tests/data/ljspeech/wavs/LJ005-0074.npy -tests/data/ljspeech/wavs/LJ037-0052.wav|tests/data/ljspeech/wavs/LJ037-0052.npy -tests/data/ljspeech/wavs/LJ033-0110.wav|tests/data/ljspeech/wavs/LJ033-0110.npy -tests/data/ljspeech/wavs/LJ022-0078.wav|tests/data/ljspeech/wavs/LJ022-0078.npy -tests/data/ljspeech/wavs/LJ043-0131.wav|tests/data/ljspeech/wavs/LJ043-0131.npy -tests/data/ljspeech/wavs/LJ021-0050.wav|tests/data/ljspeech/wavs/LJ021-0050.npy -tests/data/ljspeech/wavs/LJ008-0073.wav|tests/data/ljspeech/wavs/LJ008-0073.npy -tests/data/ljspeech/wavs/LJ016-0049.wav|tests/data/ljspeech/wavs/LJ016-0049.npy -tests/data/ljspeech/wavs/LJ049-0202.wav|tests/data/ljspeech/wavs/LJ049-0202.npy -tests/data/ljspeech/wavs/LJ012-0159.wav|tests/data/ljspeech/wavs/LJ012-0159.npy -tests/data/ljspeech/wavs/LJ014-0102.wav|tests/data/ljspeech/wavs/LJ014-0102.npy -tests/data/ljspeech/wavs/LJ033-0057.wav|tests/data/ljspeech/wavs/LJ033-0057.npy -tests/data/ljspeech/wavs/LJ024-0008.wav|tests/data/ljspeech/wavs/LJ024-0008.npy -tests/data/ljspeech/wavs/LJ049-0194.wav|tests/data/ljspeech/wavs/LJ049-0194.npy -tests/data/ljspeech/wavs/LJ024-0109.wav|tests/data/ljspeech/wavs/LJ024-0109.npy -tests/data/ljspeech/wavs/LJ043-0104.wav|tests/data/ljspeech/wavs/LJ043-0104.npy -tests/data/ljspeech/wavs/LJ024-0024.wav|tests/data/ljspeech/wavs/LJ024-0024.npy -tests/data/ljspeech/wavs/LJ003-0225.wav|tests/data/ljspeech/wavs/LJ003-0225.npy -tests/data/ljspeech/wavs/LJ012-0120.wav|tests/data/ljspeech/wavs/LJ012-0120.npy -tests/data/ljspeech/wavs/LJ016-0048.wav|tests/data/ljspeech/wavs/LJ016-0048.npy -tests/data/ljspeech/wavs/LJ014-0009.wav|tests/data/ljspeech/wavs/LJ014-0009.npy -tests/data/ljspeech/wavs/LJ021-0201.wav|tests/data/ljspeech/wavs/LJ021-0201.npy -tests/data/ljspeech/wavs/LJ008-0298.wav|tests/data/ljspeech/wavs/LJ008-0298.npy -tests/data/ljspeech/wavs/LJ016-0230.wav|tests/data/ljspeech/wavs/LJ016-0230.npy -tests/data/ljspeech/wavs/LJ017-0072.wav|tests/data/ljspeech/wavs/LJ017-0072.npy -tests/data/ljspeech/wavs/LJ037-0232.wav|tests/data/ljspeech/wavs/LJ037-0232.npy -tests/data/ljspeech/wavs/LJ017-0225.wav|tests/data/ljspeech/wavs/LJ017-0225.npy -tests/data/ljspeech/wavs/LJ016-0174.wav|tests/data/ljspeech/wavs/LJ016-0174.npy -tests/data/ljspeech/wavs/LJ038-0148.wav|tests/data/ljspeech/wavs/LJ038-0148.npy -tests/data/ljspeech/wavs/LJ009-0034.wav|tests/data/ljspeech/wavs/LJ009-0034.npy -tests/data/ljspeech/wavs/LJ032-0231.wav|tests/data/ljspeech/wavs/LJ032-0231.npy -tests/data/ljspeech/wavs/LJ002-0012.wav|tests/data/ljspeech/wavs/LJ002-0012.npy -tests/data/ljspeech/wavs/LJ004-0104.wav|tests/data/ljspeech/wavs/LJ004-0104.npy -tests/data/ljspeech/wavs/LJ024-0002.wav|tests/data/ljspeech/wavs/LJ024-0002.npy -tests/data/ljspeech/wavs/LJ037-0186.wav|tests/data/ljspeech/wavs/LJ037-0186.npy -tests/data/ljspeech/wavs/LJ032-0088.wav|tests/data/ljspeech/wavs/LJ032-0088.npy -tests/data/ljspeech/wavs/LJ018-0282.wav|tests/data/ljspeech/wavs/LJ018-0282.npy -tests/data/ljspeech/wavs/LJ034-0119.wav|tests/data/ljspeech/wavs/LJ034-0119.npy -tests/data/ljspeech/wavs/LJ017-0236.wav|tests/data/ljspeech/wavs/LJ017-0236.npy -tests/data/ljspeech/wavs/LJ042-0126.wav|tests/data/ljspeech/wavs/LJ042-0126.npy -tests/data/ljspeech/wavs/LJ011-0280.wav|tests/data/ljspeech/wavs/LJ011-0280.npy -tests/data/ljspeech/wavs/LJ031-0125.wav|tests/data/ljspeech/wavs/LJ031-0125.npy -tests/data/ljspeech/wavs/LJ032-0112.wav|tests/data/ljspeech/wavs/LJ032-0112.npy -tests/data/ljspeech/wavs/LJ033-0017.wav|tests/data/ljspeech/wavs/LJ033-0017.npy -tests/data/ljspeech/wavs/LJ030-0202.wav|tests/data/ljspeech/wavs/LJ030-0202.npy -tests/data/ljspeech/wavs/LJ040-0022.wav|tests/data/ljspeech/wavs/LJ040-0022.npy -tests/data/ljspeech/wavs/LJ027-0132.wav|tests/data/ljspeech/wavs/LJ027-0132.npy -tests/data/ljspeech/wavs/LJ041-0057.wav|tests/data/ljspeech/wavs/LJ041-0057.npy -tests/data/ljspeech/wavs/LJ033-0129.wav|tests/data/ljspeech/wavs/LJ033-0129.npy -tests/data/ljspeech/wavs/LJ028-0123.wav|tests/data/ljspeech/wavs/LJ028-0123.npy -tests/data/ljspeech/wavs/LJ011-0217.wav|tests/data/ljspeech/wavs/LJ011-0217.npy -tests/data/ljspeech/wavs/LJ008-0062.wav|tests/data/ljspeech/wavs/LJ008-0062.npy -tests/data/ljspeech/wavs/LJ002-0044.wav|tests/data/ljspeech/wavs/LJ002-0044.npy -tests/data/ljspeech/wavs/LJ007-0081.wav|tests/data/ljspeech/wavs/LJ007-0081.npy -tests/data/ljspeech/wavs/LJ016-0027.wav|tests/data/ljspeech/wavs/LJ016-0027.npy -tests/data/ljspeech/wavs/LJ048-0026.wav|tests/data/ljspeech/wavs/LJ048-0026.npy -tests/data/ljspeech/wavs/LJ014-0050.wav|tests/data/ljspeech/wavs/LJ014-0050.npy -tests/data/ljspeech/wavs/LJ035-0144.wav|tests/data/ljspeech/wavs/LJ035-0144.npy -tests/data/ljspeech/wavs/LJ009-0086.wav|tests/data/ljspeech/wavs/LJ009-0086.npy -tests/data/ljspeech/wavs/LJ009-0303.wav|tests/data/ljspeech/wavs/LJ009-0303.npy -tests/data/ljspeech/wavs/LJ016-0007.wav|tests/data/ljspeech/wavs/LJ016-0007.npy -tests/data/ljspeech/wavs/LJ049-0180.wav|tests/data/ljspeech/wavs/LJ049-0180.npy -tests/data/ljspeech/wavs/LJ022-0179.wav|tests/data/ljspeech/wavs/LJ022-0179.npy -tests/data/ljspeech/wavs/LJ013-0231.wav|tests/data/ljspeech/wavs/LJ013-0231.npy -tests/data/ljspeech/wavs/LJ046-0135.wav|tests/data/ljspeech/wavs/LJ046-0135.npy -tests/data/ljspeech/wavs/LJ036-0199.wav|tests/data/ljspeech/wavs/LJ036-0199.npy -tests/data/ljspeech/wavs/LJ008-0198.wav|tests/data/ljspeech/wavs/LJ008-0198.npy -tests/data/ljspeech/wavs/LJ031-0194.wav|tests/data/ljspeech/wavs/LJ031-0194.npy -tests/data/ljspeech/wavs/LJ036-0065.wav|tests/data/ljspeech/wavs/LJ036-0065.npy -tests/data/ljspeech/wavs/LJ050-0053.wav|tests/data/ljspeech/wavs/LJ050-0053.npy -tests/data/ljspeech/wavs/LJ019-0030.wav|tests/data/ljspeech/wavs/LJ019-0030.npy -tests/data/ljspeech/wavs/LJ014-0254.wav|tests/data/ljspeech/wavs/LJ014-0254.npy -tests/data/ljspeech/wavs/LJ018-0140.wav|tests/data/ljspeech/wavs/LJ018-0140.npy -tests/data/ljspeech/wavs/LJ045-0066.wav|tests/data/ljspeech/wavs/LJ045-0066.npy -tests/data/ljspeech/wavs/LJ027-0039.wav|tests/data/ljspeech/wavs/LJ027-0039.npy -tests/data/ljspeech/wavs/LJ011-0186.wav|tests/data/ljspeech/wavs/LJ011-0186.npy -tests/data/ljspeech/wavs/LJ048-0267.wav|tests/data/ljspeech/wavs/LJ048-0267.npy -tests/data/ljspeech/wavs/LJ022-0017.wav|tests/data/ljspeech/wavs/LJ022-0017.npy -tests/data/ljspeech/wavs/LJ034-0079.wav|tests/data/ljspeech/wavs/LJ034-0079.npy -tests/data/ljspeech/wavs/LJ003-0297.wav|tests/data/ljspeech/wavs/LJ003-0297.npy -tests/data/ljspeech/wavs/LJ019-0292.wav|tests/data/ljspeech/wavs/LJ019-0292.npy -tests/data/ljspeech/wavs/LJ018-0227.wav|tests/data/ljspeech/wavs/LJ018-0227.npy -tests/data/ljspeech/wavs/LJ041-0060.wav|tests/data/ljspeech/wavs/LJ041-0060.npy -tests/data/ljspeech/wavs/LJ045-0167.wav|tests/data/ljspeech/wavs/LJ045-0167.npy -tests/data/ljspeech/wavs/LJ022-0131.wav|tests/data/ljspeech/wavs/LJ022-0131.npy -tests/data/ljspeech/wavs/LJ033-0091.wav|tests/data/ljspeech/wavs/LJ033-0091.npy -tests/data/ljspeech/wavs/LJ008-0127.wav|tests/data/ljspeech/wavs/LJ008-0127.npy -tests/data/ljspeech/wavs/LJ021-0195.wav|tests/data/ljspeech/wavs/LJ021-0195.npy -tests/data/ljspeech/wavs/LJ019-0239.wav|tests/data/ljspeech/wavs/LJ019-0239.npy -tests/data/ljspeech/wavs/LJ028-0474.wav|tests/data/ljspeech/wavs/LJ028-0474.npy -tests/data/ljspeech/wavs/LJ018-0114.wav|tests/data/ljspeech/wavs/LJ018-0114.npy -tests/data/ljspeech/wavs/LJ006-0220.wav|tests/data/ljspeech/wavs/LJ006-0220.npy -tests/data/ljspeech/wavs/LJ039-0239.wav|tests/data/ljspeech/wavs/LJ039-0239.npy -tests/data/ljspeech/wavs/LJ018-0273.wav|tests/data/ljspeech/wavs/LJ018-0273.npy -tests/data/ljspeech/wavs/LJ038-0287.wav|tests/data/ljspeech/wavs/LJ038-0287.npy -tests/data/ljspeech/wavs/LJ050-0075.wav|tests/data/ljspeech/wavs/LJ050-0075.npy -tests/data/ljspeech/wavs/LJ033-0076.wav|tests/data/ljspeech/wavs/LJ033-0076.npy -tests/data/ljspeech/wavs/LJ036-0027.wav|tests/data/ljspeech/wavs/LJ036-0027.npy -tests/data/ljspeech/wavs/LJ044-0063.wav|tests/data/ljspeech/wavs/LJ044-0063.npy -tests/data/ljspeech/wavs/LJ046-0175.wav|tests/data/ljspeech/wavs/LJ046-0175.npy -tests/data/ljspeech/wavs/LJ007-0103.wav|tests/data/ljspeech/wavs/LJ007-0103.npy -tests/data/ljspeech/wavs/LJ037-0115.wav|tests/data/ljspeech/wavs/LJ037-0115.npy -tests/data/ljspeech/wavs/LJ015-0117.wav|tests/data/ljspeech/wavs/LJ015-0117.npy -tests/data/ljspeech/wavs/LJ021-0119.wav|tests/data/ljspeech/wavs/LJ021-0119.npy -tests/data/ljspeech/wavs/LJ020-0066.wav|tests/data/ljspeech/wavs/LJ020-0066.npy -tests/data/ljspeech/wavs/LJ031-0027.wav|tests/data/ljspeech/wavs/LJ031-0027.npy -tests/data/ljspeech/wavs/LJ046-0145.wav|tests/data/ljspeech/wavs/LJ046-0145.npy -tests/data/ljspeech/wavs/LJ038-0124.wav|tests/data/ljspeech/wavs/LJ038-0124.npy -tests/data/ljspeech/wavs/LJ048-0006.wav|tests/data/ljspeech/wavs/LJ048-0006.npy -tests/data/ljspeech/wavs/LJ038-0118.wav|tests/data/ljspeech/wavs/LJ038-0118.npy -tests/data/ljspeech/wavs/LJ009-0044.wav|tests/data/ljspeech/wavs/LJ009-0044.npy -tests/data/ljspeech/wavs/LJ028-0191.wav|tests/data/ljspeech/wavs/LJ028-0191.npy -tests/data/ljspeech/wavs/LJ008-0131.wav|tests/data/ljspeech/wavs/LJ008-0131.npy -tests/data/ljspeech/wavs/LJ018-0070.wav|tests/data/ljspeech/wavs/LJ018-0070.npy -tests/data/ljspeech/wavs/LJ028-0384.wav|tests/data/ljspeech/wavs/LJ028-0384.npy -tests/data/ljspeech/wavs/LJ043-0016.wav|tests/data/ljspeech/wavs/LJ043-0016.npy -tests/data/ljspeech/wavs/LJ032-0248.wav|tests/data/ljspeech/wavs/LJ032-0248.npy -tests/data/ljspeech/wavs/LJ040-0231.wav|tests/data/ljspeech/wavs/LJ040-0231.npy -tests/data/ljspeech/wavs/LJ027-0012.wav|tests/data/ljspeech/wavs/LJ027-0012.npy -tests/data/ljspeech/wavs/LJ032-0039.wav|tests/data/ljspeech/wavs/LJ032-0039.npy -tests/data/ljspeech/wavs/LJ014-0325.wav|tests/data/ljspeech/wavs/LJ014-0325.npy -tests/data/ljspeech/wavs/LJ047-0198.wav|tests/data/ljspeech/wavs/LJ047-0198.npy -tests/data/ljspeech/wavs/LJ023-0046.wav|tests/data/ljspeech/wavs/LJ023-0046.npy -tests/data/ljspeech/wavs/LJ018-0182.wav|tests/data/ljspeech/wavs/LJ018-0182.npy -tests/data/ljspeech/wavs/LJ049-0175.wav|tests/data/ljspeech/wavs/LJ049-0175.npy -tests/data/ljspeech/wavs/LJ025-0068.wav|tests/data/ljspeech/wavs/LJ025-0068.npy -tests/data/ljspeech/wavs/LJ016-0062.wav|tests/data/ljspeech/wavs/LJ016-0062.npy -tests/data/ljspeech/wavs/LJ014-0053.wav|tests/data/ljspeech/wavs/LJ014-0053.npy -tests/data/ljspeech/wavs/LJ044-0154.wav|tests/data/ljspeech/wavs/LJ044-0154.npy -tests/data/ljspeech/wavs/LJ033-0013.wav|tests/data/ljspeech/wavs/LJ033-0013.npy -tests/data/ljspeech/wavs/LJ029-0134.wav|tests/data/ljspeech/wavs/LJ029-0134.npy -tests/data/ljspeech/wavs/LJ039-0013.wav|tests/data/ljspeech/wavs/LJ039-0013.npy -tests/data/ljspeech/wavs/LJ038-0199.wav|tests/data/ljspeech/wavs/LJ038-0199.npy -tests/data/ljspeech/wavs/LJ034-0033.wav|tests/data/ljspeech/wavs/LJ034-0033.npy -tests/data/ljspeech/wavs/LJ040-0111.wav|tests/data/ljspeech/wavs/LJ040-0111.npy -tests/data/ljspeech/wavs/LJ024-0077.wav|tests/data/ljspeech/wavs/LJ024-0077.npy -tests/data/ljspeech/wavs/LJ015-0086.wav|tests/data/ljspeech/wavs/LJ015-0086.npy -tests/data/ljspeech/wavs/LJ018-0291.wav|tests/data/ljspeech/wavs/LJ018-0291.npy -tests/data/ljspeech/wavs/LJ026-0016.wav|tests/data/ljspeech/wavs/LJ026-0016.npy -tests/data/ljspeech/wavs/LJ046-0223.wav|tests/data/ljspeech/wavs/LJ046-0223.npy -tests/data/ljspeech/wavs/LJ040-0201.wav|tests/data/ljspeech/wavs/LJ040-0201.npy -tests/data/ljspeech/wavs/LJ018-0119.wav|tests/data/ljspeech/wavs/LJ018-0119.npy -tests/data/ljspeech/wavs/LJ049-0051.wav|tests/data/ljspeech/wavs/LJ049-0051.npy -tests/data/ljspeech/wavs/LJ016-0308.wav|tests/data/ljspeech/wavs/LJ016-0308.npy -tests/data/ljspeech/wavs/LJ040-0118.wav|tests/data/ljspeech/wavs/LJ040-0118.npy -tests/data/ljspeech/wavs/LJ028-0290.wav|tests/data/ljspeech/wavs/LJ028-0290.npy -tests/data/ljspeech/wavs/LJ034-0090.wav|tests/data/ljspeech/wavs/LJ034-0090.npy -tests/data/ljspeech/wavs/LJ014-0005.wav|tests/data/ljspeech/wavs/LJ014-0005.npy -tests/data/ljspeech/wavs/LJ039-0168.wav|tests/data/ljspeech/wavs/LJ039-0168.npy -tests/data/ljspeech/wavs/LJ048-0196.wav|tests/data/ljspeech/wavs/LJ048-0196.npy -tests/data/ljspeech/wavs/LJ040-0027.wav|tests/data/ljspeech/wavs/LJ040-0027.npy -tests/data/ljspeech/wavs/LJ028-0475.wav|tests/data/ljspeech/wavs/LJ028-0475.npy -tests/data/ljspeech/wavs/LJ049-0204.wav|tests/data/ljspeech/wavs/LJ049-0204.npy -tests/data/ljspeech/wavs/LJ035-0070.wav|tests/data/ljspeech/wavs/LJ035-0070.npy -tests/data/ljspeech/wavs/LJ028-0175.wav|tests/data/ljspeech/wavs/LJ028-0175.npy -tests/data/ljspeech/wavs/LJ003-0104.wav|tests/data/ljspeech/wavs/LJ003-0104.npy -tests/data/ljspeech/wavs/LJ014-0194.wav|tests/data/ljspeech/wavs/LJ014-0194.npy -tests/data/ljspeech/wavs/LJ014-0137.wav|tests/data/ljspeech/wavs/LJ014-0137.npy -tests/data/ljspeech/wavs/LJ050-0144.wav|tests/data/ljspeech/wavs/LJ050-0144.npy -tests/data/ljspeech/wavs/LJ016-0310.wav|tests/data/ljspeech/wavs/LJ016-0310.npy -tests/data/ljspeech/wavs/LJ036-0117.wav|tests/data/ljspeech/wavs/LJ036-0117.npy -tests/data/ljspeech/wavs/LJ044-0105.wav|tests/data/ljspeech/wavs/LJ044-0105.npy -tests/data/ljspeech/wavs/LJ035-0116.wav|tests/data/ljspeech/wavs/LJ035-0116.npy -tests/data/ljspeech/wavs/LJ043-0050.wav|tests/data/ljspeech/wavs/LJ043-0050.npy -tests/data/ljspeech/wavs/LJ048-0230.wav|tests/data/ljspeech/wavs/LJ048-0230.npy -tests/data/ljspeech/wavs/LJ022-0147.wav|tests/data/ljspeech/wavs/LJ022-0147.npy -tests/data/ljspeech/wavs/LJ036-0003.wav|tests/data/ljspeech/wavs/LJ036-0003.npy -tests/data/ljspeech/wavs/LJ044-0131.wav|tests/data/ljspeech/wavs/LJ044-0131.npy -tests/data/ljspeech/wavs/LJ029-0002.wav|tests/data/ljspeech/wavs/LJ029-0002.npy -tests/data/ljspeech/wavs/LJ030-0002.wav|tests/data/ljspeech/wavs/LJ030-0002.npy -tests/data/ljspeech/wavs/LJ047-0199.wav|tests/data/ljspeech/wavs/LJ047-0199.npy -tests/data/ljspeech/wavs/LJ024-0017.wav|tests/data/ljspeech/wavs/LJ024-0017.npy -tests/data/ljspeech/wavs/LJ033-0178.wav|tests/data/ljspeech/wavs/LJ033-0178.npy -tests/data/ljspeech/wavs/LJ043-0064.wav|tests/data/ljspeech/wavs/LJ043-0064.npy -tests/data/ljspeech/wavs/LJ006-0278.wav|tests/data/ljspeech/wavs/LJ006-0278.npy -tests/data/ljspeech/wavs/LJ002-0136.wav|tests/data/ljspeech/wavs/LJ002-0136.npy -tests/data/ljspeech/wavs/LJ038-0089.wav|tests/data/ljspeech/wavs/LJ038-0089.npy -tests/data/ljspeech/wavs/LJ048-0260.wav|tests/data/ljspeech/wavs/LJ048-0260.npy -tests/data/ljspeech/wavs/LJ034-0047.wav|tests/data/ljspeech/wavs/LJ034-0047.npy -tests/data/ljspeech/wavs/LJ019-0022.wav|tests/data/ljspeech/wavs/LJ019-0022.npy -tests/data/ljspeech/wavs/LJ018-0191.wav|tests/data/ljspeech/wavs/LJ018-0191.npy -tests/data/ljspeech/wavs/LJ006-0066.wav|tests/data/ljspeech/wavs/LJ006-0066.npy -tests/data/ljspeech/wavs/LJ030-0165.wav|tests/data/ljspeech/wavs/LJ030-0165.npy -tests/data/ljspeech/wavs/LJ023-0103.wav|tests/data/ljspeech/wavs/LJ023-0103.npy -tests/data/ljspeech/wavs/LJ033-0021.wav|tests/data/ljspeech/wavs/LJ033-0021.npy -tests/data/ljspeech/wavs/LJ003-0022.wav|tests/data/ljspeech/wavs/LJ003-0022.npy -tests/data/ljspeech/wavs/LJ019-0247.wav|tests/data/ljspeech/wavs/LJ019-0247.npy -tests/data/ljspeech/wavs/LJ031-0164.wav|tests/data/ljspeech/wavs/LJ031-0164.npy -tests/data/ljspeech/wavs/LJ043-0046.wav|tests/data/ljspeech/wavs/LJ043-0046.npy -tests/data/ljspeech/wavs/LJ041-0026.wav|tests/data/ljspeech/wavs/LJ041-0026.npy -tests/data/ljspeech/wavs/LJ008-0224.wav|tests/data/ljspeech/wavs/LJ008-0224.npy -tests/data/ljspeech/wavs/LJ016-0363.wav|tests/data/ljspeech/wavs/LJ016-0363.npy -tests/data/ljspeech/wavs/LJ038-0223.wav|tests/data/ljspeech/wavs/LJ038-0223.npy -tests/data/ljspeech/wavs/LJ034-0117.wav|tests/data/ljspeech/wavs/LJ034-0117.npy -tests/data/ljspeech/wavs/LJ013-0008.wav|tests/data/ljspeech/wavs/LJ013-0008.npy -tests/data/ljspeech/wavs/LJ045-0184.wav|tests/data/ljspeech/wavs/LJ045-0184.npy -tests/data/ljspeech/wavs/LJ026-0113.wav|tests/data/ljspeech/wavs/LJ026-0113.npy -tests/data/ljspeech/wavs/LJ032-0094.wav|tests/data/ljspeech/wavs/LJ032-0094.npy -tests/data/ljspeech/wavs/LJ017-0260.wav|tests/data/ljspeech/wavs/LJ017-0260.npy -tests/data/ljspeech/wavs/LJ042-0104.wav|tests/data/ljspeech/wavs/LJ042-0104.npy -tests/data/ljspeech/wavs/LJ036-0207.wav|tests/data/ljspeech/wavs/LJ036-0207.npy -tests/data/ljspeech/wavs/LJ029-0063.wav|tests/data/ljspeech/wavs/LJ029-0063.npy -tests/data/ljspeech/wavs/LJ020-0068.wav|tests/data/ljspeech/wavs/LJ020-0068.npy -tests/data/ljspeech/wavs/LJ010-0051.wav|tests/data/ljspeech/wavs/LJ010-0051.npy -tests/data/ljspeech/wavs/LJ003-0228.wav|tests/data/ljspeech/wavs/LJ003-0228.npy -tests/data/ljspeech/wavs/LJ009-0090.wav|tests/data/ljspeech/wavs/LJ009-0090.npy -tests/data/ljspeech/wavs/LJ037-0195.wav|tests/data/ljspeech/wavs/LJ037-0195.npy -tests/data/ljspeech/wavs/LJ030-0245.wav|tests/data/ljspeech/wavs/LJ030-0245.npy -tests/data/ljspeech/wavs/LJ015-0148.wav|tests/data/ljspeech/wavs/LJ015-0148.npy -tests/data/ljspeech/wavs/LJ038-0077.wav|tests/data/ljspeech/wavs/LJ038-0077.npy -tests/data/ljspeech/wavs/LJ039-0194.wav|tests/data/ljspeech/wavs/LJ039-0194.npy -tests/data/ljspeech/wavs/LJ031-0203.wav|tests/data/ljspeech/wavs/LJ031-0203.npy -tests/data/ljspeech/wavs/LJ048-0206.wav|tests/data/ljspeech/wavs/LJ048-0206.npy -tests/data/ljspeech/wavs/LJ014-0302.wav|tests/data/ljspeech/wavs/LJ014-0302.npy -tests/data/ljspeech/wavs/LJ043-0158.wav|tests/data/ljspeech/wavs/LJ043-0158.npy -tests/data/ljspeech/wavs/LJ050-0232.wav|tests/data/ljspeech/wavs/LJ050-0232.npy -tests/data/ljspeech/wavs/LJ037-0267.wav|tests/data/ljspeech/wavs/LJ037-0267.npy -tests/data/ljspeech/wavs/LJ009-0096.wav|tests/data/ljspeech/wavs/LJ009-0096.npy -tests/data/ljspeech/wavs/LJ018-0319.wav|tests/data/ljspeech/wavs/LJ018-0319.npy -tests/data/ljspeech/wavs/LJ002-0032.wav|tests/data/ljspeech/wavs/LJ002-0032.npy -tests/data/ljspeech/wavs/LJ003-0067.wav|tests/data/ljspeech/wavs/LJ003-0067.npy -tests/data/ljspeech/wavs/LJ016-0328.wav|tests/data/ljspeech/wavs/LJ016-0328.npy -tests/data/ljspeech/wavs/LJ050-0092.wav|tests/data/ljspeech/wavs/LJ050-0092.npy -tests/data/ljspeech/wavs/LJ011-0171.wav|tests/data/ljspeech/wavs/LJ011-0171.npy -tests/data/ljspeech/wavs/LJ017-0074.wav|tests/data/ljspeech/wavs/LJ017-0074.npy -tests/data/ljspeech/wavs/LJ002-0119.wav|tests/data/ljspeech/wavs/LJ002-0119.npy -tests/data/ljspeech/wavs/LJ010-0298.wav|tests/data/ljspeech/wavs/LJ010-0298.npy -tests/data/ljspeech/wavs/LJ048-0238.wav|tests/data/ljspeech/wavs/LJ048-0238.npy -tests/data/ljspeech/wavs/LJ031-0132.wav|tests/data/ljspeech/wavs/LJ031-0132.npy -tests/data/ljspeech/wavs/LJ021-0014.wav|tests/data/ljspeech/wavs/LJ021-0014.npy -tests/data/ljspeech/wavs/LJ021-0052.wav|tests/data/ljspeech/wavs/LJ021-0052.npy -tests/data/ljspeech/wavs/LJ014-0003.wav|tests/data/ljspeech/wavs/LJ014-0003.npy -tests/data/ljspeech/wavs/LJ045-0105.wav|tests/data/ljspeech/wavs/LJ045-0105.npy -tests/data/ljspeech/wavs/LJ048-0263.wav|tests/data/ljspeech/wavs/LJ048-0263.npy -tests/data/ljspeech/wavs/LJ004-0012.wav|tests/data/ljspeech/wavs/LJ004-0012.npy -tests/data/ljspeech/wavs/LJ047-0015.wav|tests/data/ljspeech/wavs/LJ047-0015.npy -tests/data/ljspeech/wavs/LJ014-0240.wav|tests/data/ljspeech/wavs/LJ014-0240.npy -tests/data/ljspeech/wavs/LJ050-0204.wav|tests/data/ljspeech/wavs/LJ050-0204.npy -tests/data/ljspeech/wavs/LJ001-0165.wav|tests/data/ljspeech/wavs/LJ001-0165.npy -tests/data/ljspeech/wavs/LJ018-0159.wav|tests/data/ljspeech/wavs/LJ018-0159.npy -tests/data/ljspeech/wavs/LJ002-0153.wav|tests/data/ljspeech/wavs/LJ002-0153.npy -tests/data/ljspeech/wavs/LJ020-0065.wav|tests/data/ljspeech/wavs/LJ020-0065.npy -tests/data/ljspeech/wavs/LJ014-0183.wav|tests/data/ljspeech/wavs/LJ014-0183.npy -tests/data/ljspeech/wavs/LJ013-0213.wav|tests/data/ljspeech/wavs/LJ013-0213.npy -tests/data/ljspeech/wavs/LJ021-0076.wav|tests/data/ljspeech/wavs/LJ021-0076.npy -tests/data/ljspeech/wavs/LJ021-0208.wav|tests/data/ljspeech/wavs/LJ021-0208.npy -tests/data/ljspeech/wavs/LJ016-0154.wav|tests/data/ljspeech/wavs/LJ016-0154.npy -tests/data/ljspeech/wavs/LJ043-0029.wav|tests/data/ljspeech/wavs/LJ043-0029.npy -tests/data/ljspeech/wavs/LJ050-0255.wav|tests/data/ljspeech/wavs/LJ050-0255.npy -tests/data/ljspeech/wavs/LJ018-0309.wav|tests/data/ljspeech/wavs/LJ018-0309.npy -tests/data/ljspeech/wavs/LJ037-0020.wav|tests/data/ljspeech/wavs/LJ037-0020.npy -tests/data/ljspeech/wavs/LJ032-0109.wav|tests/data/ljspeech/wavs/LJ032-0109.npy -tests/data/ljspeech/wavs/LJ032-0219.wav|tests/data/ljspeech/wavs/LJ032-0219.npy -tests/data/ljspeech/wavs/LJ014-0250.wav|tests/data/ljspeech/wavs/LJ014-0250.npy -tests/data/ljspeech/wavs/LJ018-0205.wav|tests/data/ljspeech/wavs/LJ018-0205.npy -tests/data/ljspeech/wavs/LJ021-0054.wav|tests/data/ljspeech/wavs/LJ021-0054.npy -tests/data/ljspeech/wavs/LJ050-0239.wav|tests/data/ljspeech/wavs/LJ050-0239.npy -tests/data/ljspeech/wavs/LJ039-0104.wav|tests/data/ljspeech/wavs/LJ039-0104.npy -tests/data/ljspeech/wavs/LJ036-0152.wav|tests/data/ljspeech/wavs/LJ036-0152.npy -tests/data/ljspeech/wavs/LJ043-0003.wav|tests/data/ljspeech/wavs/LJ043-0003.npy -tests/data/ljspeech/wavs/LJ034-0183.wav|tests/data/ljspeech/wavs/LJ034-0183.npy -tests/data/ljspeech/wavs/LJ038-0155.wav|tests/data/ljspeech/wavs/LJ038-0155.npy -tests/data/ljspeech/wavs/LJ005-0261.wav|tests/data/ljspeech/wavs/LJ005-0261.npy -tests/data/ljspeech/wavs/LJ045-0037.wav|tests/data/ljspeech/wavs/LJ045-0037.npy -tests/data/ljspeech/wavs/LJ027-0111.wav|tests/data/ljspeech/wavs/LJ027-0111.npy -tests/data/ljspeech/wavs/LJ025-0008.wav|tests/data/ljspeech/wavs/LJ025-0008.npy -tests/data/ljspeech/wavs/LJ024-0040.wav|tests/data/ljspeech/wavs/LJ024-0040.npy -tests/data/ljspeech/wavs/LJ019-0371.wav|tests/data/ljspeech/wavs/LJ019-0371.npy -tests/data/ljspeech/wavs/LJ023-0140.wav|tests/data/ljspeech/wavs/LJ023-0140.npy -tests/data/ljspeech/wavs/LJ025-0004.wav|tests/data/ljspeech/wavs/LJ025-0004.npy -tests/data/ljspeech/wavs/LJ006-0202.wav|tests/data/ljspeech/wavs/LJ006-0202.npy -tests/data/ljspeech/wavs/LJ032-0107.wav|tests/data/ljspeech/wavs/LJ032-0107.npy -tests/data/ljspeech/wavs/LJ006-0016.wav|tests/data/ljspeech/wavs/LJ006-0016.npy -tests/data/ljspeech/wavs/LJ027-0126.wav|tests/data/ljspeech/wavs/LJ027-0126.npy -tests/data/ljspeech/wavs/LJ041-0097.wav|tests/data/ljspeech/wavs/LJ041-0097.npy -tests/data/ljspeech/wavs/LJ036-0175.wav|tests/data/ljspeech/wavs/LJ036-0175.npy -tests/data/ljspeech/wavs/LJ017-0012.wav|tests/data/ljspeech/wavs/LJ017-0012.npy -tests/data/ljspeech/wavs/LJ047-0157.wav|tests/data/ljspeech/wavs/LJ047-0157.npy -tests/data/ljspeech/wavs/LJ023-0104.wav|tests/data/ljspeech/wavs/LJ023-0104.npy -tests/data/ljspeech/wavs/LJ023-0098.wav|tests/data/ljspeech/wavs/LJ023-0098.npy -tests/data/ljspeech/wavs/LJ004-0109.wav|tests/data/ljspeech/wavs/LJ004-0109.npy -tests/data/ljspeech/wavs/LJ027-0112.wav|tests/data/ljspeech/wavs/LJ027-0112.npy -tests/data/ljspeech/wavs/LJ031-0174.wav|tests/data/ljspeech/wavs/LJ031-0174.npy -tests/data/ljspeech/wavs/LJ013-0060.wav|tests/data/ljspeech/wavs/LJ013-0060.npy -tests/data/ljspeech/wavs/LJ029-0036.wav|tests/data/ljspeech/wavs/LJ029-0036.npy -tests/data/ljspeech/wavs/LJ002-0216.wav|tests/data/ljspeech/wavs/LJ002-0216.npy -tests/data/ljspeech/wavs/LJ024-0042.wav|tests/data/ljspeech/wavs/LJ024-0042.npy -tests/data/ljspeech/wavs/LJ004-0040.wav|tests/data/ljspeech/wavs/LJ004-0040.npy -tests/data/ljspeech/wavs/LJ046-0132.wav|tests/data/ljspeech/wavs/LJ046-0132.npy -tests/data/ljspeech/wavs/LJ034-0081.wav|tests/data/ljspeech/wavs/LJ034-0081.npy -tests/data/ljspeech/wavs/LJ023-0137.wav|tests/data/ljspeech/wavs/LJ023-0137.npy -tests/data/ljspeech/wavs/LJ042-0003.wav|tests/data/ljspeech/wavs/LJ042-0003.npy -tests/data/ljspeech/wavs/LJ017-0209.wav|tests/data/ljspeech/wavs/LJ017-0209.npy -tests/data/ljspeech/wavs/LJ025-0094.wav|tests/data/ljspeech/wavs/LJ025-0094.npy -tests/data/ljspeech/wavs/LJ024-0111.wav|tests/data/ljspeech/wavs/LJ024-0111.npy -tests/data/ljspeech/wavs/LJ006-0225.wav|tests/data/ljspeech/wavs/LJ006-0225.npy -tests/data/ljspeech/wavs/LJ015-0098.wav|tests/data/ljspeech/wavs/LJ015-0098.npy -tests/data/ljspeech/wavs/LJ036-0088.wav|tests/data/ljspeech/wavs/LJ036-0088.npy -tests/data/ljspeech/wavs/LJ038-0197.wav|tests/data/ljspeech/wavs/LJ038-0197.npy -tests/data/ljspeech/wavs/LJ045-0170.wav|tests/data/ljspeech/wavs/LJ045-0170.npy -tests/data/ljspeech/wavs/LJ022-0202.wav|tests/data/ljspeech/wavs/LJ022-0202.npy -tests/data/ljspeech/wavs/LJ044-0169.wav|tests/data/ljspeech/wavs/LJ044-0169.npy -tests/data/ljspeech/wavs/LJ032-0082.wav|tests/data/ljspeech/wavs/LJ032-0082.npy -tests/data/ljspeech/wavs/LJ023-0037.wav|tests/data/ljspeech/wavs/LJ023-0037.npy -tests/data/ljspeech/wavs/LJ049-0036.wav|tests/data/ljspeech/wavs/LJ049-0036.npy -tests/data/ljspeech/wavs/LJ018-0281.wav|tests/data/ljspeech/wavs/LJ018-0281.npy -tests/data/ljspeech/wavs/LJ018-0062.wav|tests/data/ljspeech/wavs/LJ018-0062.npy -tests/data/ljspeech/wavs/LJ010-0074.wav|tests/data/ljspeech/wavs/LJ010-0074.npy -tests/data/ljspeech/wavs/LJ020-0063.wav|tests/data/ljspeech/wavs/LJ020-0063.npy -tests/data/ljspeech/wavs/LJ038-0297.wav|tests/data/ljspeech/wavs/LJ038-0297.npy -tests/data/ljspeech/wavs/LJ009-0219.wav|tests/data/ljspeech/wavs/LJ009-0219.npy -tests/data/ljspeech/wavs/LJ008-0291.wav|tests/data/ljspeech/wavs/LJ008-0291.npy -tests/data/ljspeech/wavs/LJ006-0103.wav|tests/data/ljspeech/wavs/LJ006-0103.npy -tests/data/ljspeech/wavs/LJ026-0101.wav|tests/data/ljspeech/wavs/LJ026-0101.npy -tests/data/ljspeech/wavs/LJ023-0005.wav|tests/data/ljspeech/wavs/LJ023-0005.npy -tests/data/ljspeech/wavs/LJ046-0037.wav|tests/data/ljspeech/wavs/LJ046-0037.npy -tests/data/ljspeech/wavs/LJ012-0282.wav|tests/data/ljspeech/wavs/LJ012-0282.npy -tests/data/ljspeech/wavs/LJ010-0161.wav|tests/data/ljspeech/wavs/LJ010-0161.npy -tests/data/ljspeech/wavs/LJ040-0196.wav|tests/data/ljspeech/wavs/LJ040-0196.npy -tests/data/ljspeech/wavs/LJ013-0255.wav|tests/data/ljspeech/wavs/LJ013-0255.npy -tests/data/ljspeech/wavs/LJ002-0026.wav|tests/data/ljspeech/wavs/LJ002-0026.npy -tests/data/ljspeech/wavs/LJ008-0013.wav|tests/data/ljspeech/wavs/LJ008-0013.npy -tests/data/ljspeech/wavs/LJ047-0160.wav|tests/data/ljspeech/wavs/LJ047-0160.npy -tests/data/ljspeech/wavs/LJ031-0113.wav|tests/data/ljspeech/wavs/LJ031-0113.npy -tests/data/ljspeech/wavs/LJ035-0178.wav|tests/data/ljspeech/wavs/LJ035-0178.npy -tests/data/ljspeech/wavs/LJ002-0009.wav|tests/data/ljspeech/wavs/LJ002-0009.npy -tests/data/ljspeech/wavs/LJ049-0107.wav|tests/data/ljspeech/wavs/LJ049-0107.npy -tests/data/ljspeech/wavs/LJ028-0187.wav|tests/data/ljspeech/wavs/LJ028-0187.npy -tests/data/ljspeech/wavs/LJ031-0231.wav|tests/data/ljspeech/wavs/LJ031-0231.npy -tests/data/ljspeech/wavs/LJ010-0144.wav|tests/data/ljspeech/wavs/LJ010-0144.npy -tests/data/ljspeech/wavs/LJ003-0028.wav|tests/data/ljspeech/wavs/LJ003-0028.npy -tests/data/ljspeech/wavs/LJ013-0203.wav|tests/data/ljspeech/wavs/LJ013-0203.npy -tests/data/ljspeech/wavs/LJ018-0284.wav|tests/data/ljspeech/wavs/LJ018-0284.npy -tests/data/ljspeech/wavs/LJ050-0157.wav|tests/data/ljspeech/wavs/LJ050-0157.npy -tests/data/ljspeech/wavs/LJ028-0211.wav|tests/data/ljspeech/wavs/LJ028-0211.npy -tests/data/ljspeech/wavs/LJ004-0126.wav|tests/data/ljspeech/wavs/LJ004-0126.npy -tests/data/ljspeech/wavs/LJ039-0011.wav|tests/data/ljspeech/wavs/LJ039-0011.npy -tests/data/ljspeech/wavs/LJ040-0080.wav|tests/data/ljspeech/wavs/LJ040-0080.npy -tests/data/ljspeech/wavs/LJ013-0120.wav|tests/data/ljspeech/wavs/LJ013-0120.npy -tests/data/ljspeech/wavs/LJ002-0131.wav|tests/data/ljspeech/wavs/LJ002-0131.npy -tests/data/ljspeech/wavs/LJ039-0113.wav|tests/data/ljspeech/wavs/LJ039-0113.npy -tests/data/ljspeech/wavs/LJ024-0140.wav|tests/data/ljspeech/wavs/LJ024-0140.npy -tests/data/ljspeech/wavs/LJ021-0085.wav|tests/data/ljspeech/wavs/LJ021-0085.npy -tests/data/ljspeech/wavs/LJ034-0036.wav|tests/data/ljspeech/wavs/LJ034-0036.npy -tests/data/ljspeech/wavs/LJ040-0007.wav|tests/data/ljspeech/wavs/LJ040-0007.npy -tests/data/ljspeech/wavs/LJ011-0266.wav|tests/data/ljspeech/wavs/LJ011-0266.npy -tests/data/ljspeech/wavs/LJ023-0095.wav|tests/data/ljspeech/wavs/LJ023-0095.npy -tests/data/ljspeech/wavs/LJ010-0169.wav|tests/data/ljspeech/wavs/LJ010-0169.npy -tests/data/ljspeech/wavs/LJ013-0124.wav|tests/data/ljspeech/wavs/LJ013-0124.npy -tests/data/ljspeech/wavs/LJ030-0122.wav|tests/data/ljspeech/wavs/LJ030-0122.npy -tests/data/ljspeech/wavs/LJ023-0035.wav|tests/data/ljspeech/wavs/LJ023-0035.npy -tests/data/ljspeech/wavs/LJ018-0361.wav|tests/data/ljspeech/wavs/LJ018-0361.npy -tests/data/ljspeech/wavs/LJ037-0193.wav|tests/data/ljspeech/wavs/LJ037-0193.npy -tests/data/ljspeech/wavs/LJ039-0227.wav|tests/data/ljspeech/wavs/LJ039-0227.npy -tests/data/ljspeech/wavs/LJ035-0088.wav|tests/data/ljspeech/wavs/LJ035-0088.npy -tests/data/ljspeech/wavs/LJ029-0054.wav|tests/data/ljspeech/wavs/LJ029-0054.npy -tests/data/ljspeech/wavs/LJ002-0065.wav|tests/data/ljspeech/wavs/LJ002-0065.npy -tests/data/ljspeech/wavs/LJ022-0062.wav|tests/data/ljspeech/wavs/LJ022-0062.npy -tests/data/ljspeech/wavs/LJ009-0296.wav|tests/data/ljspeech/wavs/LJ009-0296.npy -tests/data/ljspeech/wavs/LJ021-0008.wav|tests/data/ljspeech/wavs/LJ021-0008.npy -tests/data/ljspeech/wavs/LJ032-0266.wav|tests/data/ljspeech/wavs/LJ032-0266.npy -tests/data/ljspeech/wavs/LJ006-0176.wav|tests/data/ljspeech/wavs/LJ006-0176.npy -tests/data/ljspeech/wavs/LJ042-0203.wav|tests/data/ljspeech/wavs/LJ042-0203.npy -tests/data/ljspeech/wavs/LJ014-0151.wav|tests/data/ljspeech/wavs/LJ014-0151.npy -tests/data/ljspeech/wavs/LJ032-0016.wav|tests/data/ljspeech/wavs/LJ032-0016.npy -tests/data/ljspeech/wavs/LJ015-0159.wav|tests/data/ljspeech/wavs/LJ015-0159.npy -tests/data/ljspeech/wavs/LJ010-0141.wav|tests/data/ljspeech/wavs/LJ010-0141.npy -tests/data/ljspeech/wavs/LJ025-0053.wav|tests/data/ljspeech/wavs/LJ025-0053.npy -tests/data/ljspeech/wavs/LJ043-0106.wav|tests/data/ljspeech/wavs/LJ043-0106.npy -tests/data/ljspeech/wavs/LJ009-0273.wav|tests/data/ljspeech/wavs/LJ009-0273.npy -tests/data/ljspeech/wavs/LJ027-0137.wav|tests/data/ljspeech/wavs/LJ027-0137.npy -tests/data/ljspeech/wavs/LJ050-0004.wav|tests/data/ljspeech/wavs/LJ050-0004.npy -tests/data/ljspeech/wavs/LJ045-0212.wav|tests/data/ljspeech/wavs/LJ045-0212.npy -tests/data/ljspeech/wavs/LJ014-0017.wav|tests/data/ljspeech/wavs/LJ014-0017.npy -tests/data/ljspeech/wavs/LJ033-0055.wav|tests/data/ljspeech/wavs/LJ033-0055.npy -tests/data/ljspeech/wavs/LJ037-0164.wav|tests/data/ljspeech/wavs/LJ037-0164.npy -tests/data/ljspeech/wavs/LJ035-0093.wav|tests/data/ljspeech/wavs/LJ035-0093.npy -tests/data/ljspeech/wavs/LJ020-0086.wav|tests/data/ljspeech/wavs/LJ020-0086.npy -tests/data/ljspeech/wavs/LJ046-0142.wav|tests/data/ljspeech/wavs/LJ046-0142.npy -tests/data/ljspeech/wavs/LJ026-0011.wav|tests/data/ljspeech/wavs/LJ026-0011.npy -tests/data/ljspeech/wavs/LJ002-0198.wav|tests/data/ljspeech/wavs/LJ002-0198.npy -tests/data/ljspeech/wavs/LJ010-0081.wav|tests/data/ljspeech/wavs/LJ010-0081.npy -tests/data/ljspeech/wavs/LJ016-0355.wav|tests/data/ljspeech/wavs/LJ016-0355.npy -tests/data/ljspeech/wavs/LJ009-0049.wav|tests/data/ljspeech/wavs/LJ009-0049.npy -tests/data/ljspeech/wavs/LJ009-0267.wav|tests/data/ljspeech/wavs/LJ009-0267.npy -tests/data/ljspeech/wavs/LJ044-0213.wav|tests/data/ljspeech/wavs/LJ044-0213.npy -tests/data/ljspeech/wavs/LJ039-0109.wav|tests/data/ljspeech/wavs/LJ039-0109.npy -tests/data/ljspeech/wavs/LJ002-0298.wav|tests/data/ljspeech/wavs/LJ002-0298.npy -tests/data/ljspeech/wavs/LJ010-0301.wav|tests/data/ljspeech/wavs/LJ010-0301.npy -tests/data/ljspeech/wavs/LJ049-0130.wav|tests/data/ljspeech/wavs/LJ049-0130.npy -tests/data/ljspeech/wavs/LJ024-0142.wav|tests/data/ljspeech/wavs/LJ024-0142.npy -tests/data/ljspeech/wavs/LJ028-0484.wav|tests/data/ljspeech/wavs/LJ028-0484.npy -tests/data/ljspeech/wavs/LJ046-0109.wav|tests/data/ljspeech/wavs/LJ046-0109.npy -tests/data/ljspeech/wavs/LJ016-0191.wav|tests/data/ljspeech/wavs/LJ016-0191.npy -tests/data/ljspeech/wavs/LJ027-0037.wav|tests/data/ljspeech/wavs/LJ027-0037.npy -tests/data/ljspeech/wavs/LJ004-0194.wav|tests/data/ljspeech/wavs/LJ004-0194.npy -tests/data/ljspeech/wavs/LJ005-0284.wav|tests/data/ljspeech/wavs/LJ005-0284.npy -tests/data/ljspeech/wavs/LJ016-0296.wav|tests/data/ljspeech/wavs/LJ016-0296.npy -tests/data/ljspeech/wavs/LJ044-0142.wav|tests/data/ljspeech/wavs/LJ044-0142.npy -tests/data/ljspeech/wavs/LJ013-0097.wav|tests/data/ljspeech/wavs/LJ013-0097.npy -tests/data/ljspeech/wavs/LJ021-0015.wav|tests/data/ljspeech/wavs/LJ021-0015.npy -tests/data/ljspeech/wavs/LJ045-0096.wav|tests/data/ljspeech/wavs/LJ045-0096.npy -tests/data/ljspeech/wavs/LJ038-0051.wav|tests/data/ljspeech/wavs/LJ038-0051.npy -tests/data/ljspeech/wavs/LJ026-0013.wav|tests/data/ljspeech/wavs/LJ026-0013.npy -tests/data/ljspeech/wavs/LJ012-0011.wav|tests/data/ljspeech/wavs/LJ012-0011.npy -tests/data/ljspeech/wavs/LJ019-0384.wav|tests/data/ljspeech/wavs/LJ019-0384.npy -tests/data/ljspeech/wavs/LJ013-0064.wav|tests/data/ljspeech/wavs/LJ013-0064.npy -tests/data/ljspeech/wavs/LJ017-0126.wav|tests/data/ljspeech/wavs/LJ017-0126.npy -tests/data/ljspeech/wavs/LJ046-0212.wav|tests/data/ljspeech/wavs/LJ046-0212.npy -tests/data/ljspeech/wavs/LJ029-0176.wav|tests/data/ljspeech/wavs/LJ029-0176.npy -tests/data/ljspeech/wavs/LJ012-0138.wav|tests/data/ljspeech/wavs/LJ012-0138.npy -tests/data/ljspeech/wavs/LJ029-0167.wav|tests/data/ljspeech/wavs/LJ029-0167.npy -tests/data/ljspeech/wavs/LJ028-0403.wav|tests/data/ljspeech/wavs/LJ028-0403.npy -tests/data/ljspeech/wavs/LJ023-0032.wav|tests/data/ljspeech/wavs/LJ023-0032.npy -tests/data/ljspeech/wavs/LJ028-0381.wav|tests/data/ljspeech/wavs/LJ028-0381.npy -tests/data/ljspeech/wavs/LJ013-0249.wav|tests/data/ljspeech/wavs/LJ013-0249.npy -tests/data/ljspeech/wavs/LJ028-0071.wav|tests/data/ljspeech/wavs/LJ028-0071.npy -tests/data/ljspeech/wavs/LJ036-0123.wav|tests/data/ljspeech/wavs/LJ036-0123.npy -tests/data/ljspeech/wavs/LJ037-0206.wav|tests/data/ljspeech/wavs/LJ037-0206.npy -tests/data/ljspeech/wavs/LJ030-0151.wav|tests/data/ljspeech/wavs/LJ030-0151.npy -tests/data/ljspeech/wavs/LJ029-0024.wav|tests/data/ljspeech/wavs/LJ029-0024.npy -tests/data/ljspeech/wavs/LJ050-0182.wav|tests/data/ljspeech/wavs/LJ050-0182.npy -tests/data/ljspeech/wavs/LJ034-0115.wav|tests/data/ljspeech/wavs/LJ034-0115.npy -tests/data/ljspeech/wavs/LJ026-0054.wav|tests/data/ljspeech/wavs/LJ026-0054.npy -tests/data/ljspeech/wavs/LJ039-0200.wav|tests/data/ljspeech/wavs/LJ039-0200.npy -tests/data/ljspeech/wavs/LJ015-0240.wav|tests/data/ljspeech/wavs/LJ015-0240.npy -tests/data/ljspeech/wavs/LJ020-0073.wav|tests/data/ljspeech/wavs/LJ020-0073.npy -tests/data/ljspeech/wavs/LJ039-0133.wav|tests/data/ljspeech/wavs/LJ039-0133.npy -tests/data/ljspeech/wavs/LJ035-0150.wav|tests/data/ljspeech/wavs/LJ035-0150.npy -tests/data/ljspeech/wavs/LJ038-0213.wav|tests/data/ljspeech/wavs/LJ038-0213.npy -tests/data/ljspeech/wavs/LJ016-0407.wav|tests/data/ljspeech/wavs/LJ016-0407.npy -tests/data/ljspeech/wavs/LJ038-0257.wav|tests/data/ljspeech/wavs/LJ038-0257.npy -tests/data/ljspeech/wavs/LJ029-0090.wav|tests/data/ljspeech/wavs/LJ029-0090.npy -tests/data/ljspeech/wavs/LJ035-0012.wav|tests/data/ljspeech/wavs/LJ035-0012.npy -tests/data/ljspeech/wavs/LJ041-0164.wav|tests/data/ljspeech/wavs/LJ041-0164.npy -tests/data/ljspeech/wavs/LJ005-0119.wav|tests/data/ljspeech/wavs/LJ005-0119.npy -tests/data/ljspeech/wavs/LJ024-0090.wav|tests/data/ljspeech/wavs/LJ024-0090.npy -tests/data/ljspeech/wavs/LJ002-0250.wav|tests/data/ljspeech/wavs/LJ002-0250.npy -tests/data/ljspeech/wavs/LJ013-0106.wav|tests/data/ljspeech/wavs/LJ013-0106.npy -tests/data/ljspeech/wavs/LJ033-0122.wav|tests/data/ljspeech/wavs/LJ033-0122.npy -tests/data/ljspeech/wavs/LJ050-0162.wav|tests/data/ljspeech/wavs/LJ050-0162.npy -tests/data/ljspeech/wavs/LJ007-0086.wav|tests/data/ljspeech/wavs/LJ007-0086.npy -tests/data/ljspeech/wavs/LJ013-0154.wav|tests/data/ljspeech/wavs/LJ013-0154.npy -tests/data/ljspeech/wavs/LJ045-0173.wav|tests/data/ljspeech/wavs/LJ045-0173.npy -tests/data/ljspeech/wavs/LJ014-0178.wav|tests/data/ljspeech/wavs/LJ014-0178.npy -tests/data/ljspeech/wavs/LJ005-0154.wav|tests/data/ljspeech/wavs/LJ005-0154.npy -tests/data/ljspeech/wavs/LJ021-0193.wav|tests/data/ljspeech/wavs/LJ021-0193.npy -tests/data/ljspeech/wavs/LJ033-0126.wav|tests/data/ljspeech/wavs/LJ033-0126.npy -tests/data/ljspeech/wavs/LJ043-0119.wav|tests/data/ljspeech/wavs/LJ043-0119.npy -tests/data/ljspeech/wavs/LJ034-0097.wav|tests/data/ljspeech/wavs/LJ034-0097.npy -tests/data/ljspeech/wavs/LJ037-0146.wav|tests/data/ljspeech/wavs/LJ037-0146.npy -tests/data/ljspeech/wavs/LJ011-0055.wav|tests/data/ljspeech/wavs/LJ011-0055.npy -tests/data/ljspeech/wavs/LJ042-0059.wav|tests/data/ljspeech/wavs/LJ042-0059.npy -tests/data/ljspeech/wavs/LJ010-0188.wav|tests/data/ljspeech/wavs/LJ010-0188.npy -tests/data/ljspeech/wavs/LJ044-0164.wav|tests/data/ljspeech/wavs/LJ044-0164.npy -tests/data/ljspeech/wavs/LJ013-0050.wav|tests/data/ljspeech/wavs/LJ013-0050.npy -tests/data/ljspeech/wavs/LJ006-0083.wav|tests/data/ljspeech/wavs/LJ006-0083.npy -tests/data/ljspeech/wavs/LJ040-0167.wav|tests/data/ljspeech/wavs/LJ040-0167.npy -tests/data/ljspeech/wavs/LJ021-0176.wav|tests/data/ljspeech/wavs/LJ021-0176.npy -tests/data/ljspeech/wavs/LJ026-0151.wav|tests/data/ljspeech/wavs/LJ026-0151.npy -tests/data/ljspeech/wavs/LJ046-0227.wav|tests/data/ljspeech/wavs/LJ046-0227.npy -tests/data/ljspeech/wavs/LJ008-0026.wav|tests/data/ljspeech/wavs/LJ008-0026.npy -tests/data/ljspeech/wavs/LJ013-0062.wav|tests/data/ljspeech/wavs/LJ013-0062.npy -tests/data/ljspeech/wavs/LJ026-0068.wav|tests/data/ljspeech/wavs/LJ026-0068.npy -tests/data/ljspeech/wavs/LJ031-0120.wav|tests/data/ljspeech/wavs/LJ031-0120.npy -tests/data/ljspeech/wavs/LJ009-0265.wav|tests/data/ljspeech/wavs/LJ009-0265.npy -tests/data/ljspeech/wavs/LJ018-0080.wav|tests/data/ljspeech/wavs/LJ018-0080.npy -tests/data/ljspeech/wavs/LJ002-0139.wav|tests/data/ljspeech/wavs/LJ002-0139.npy -tests/data/ljspeech/wavs/LJ011-0202.wav|tests/data/ljspeech/wavs/LJ011-0202.npy -tests/data/ljspeech/wavs/LJ024-0118.wav|tests/data/ljspeech/wavs/LJ024-0118.npy -tests/data/ljspeech/wavs/LJ009-0210.wav|tests/data/ljspeech/wavs/LJ009-0210.npy -tests/data/ljspeech/wavs/LJ001-0013.wav|tests/data/ljspeech/wavs/LJ001-0013.npy -tests/data/ljspeech/wavs/LJ039-0176.wav|tests/data/ljspeech/wavs/LJ039-0176.npy -tests/data/ljspeech/wavs/LJ045-0155.wav|tests/data/ljspeech/wavs/LJ045-0155.npy -tests/data/ljspeech/wavs/LJ028-0342.wav|tests/data/ljspeech/wavs/LJ028-0342.npy -tests/data/ljspeech/wavs/LJ006-0145.wav|tests/data/ljspeech/wavs/LJ006-0145.npy -tests/data/ljspeech/wavs/LJ014-0242.wav|tests/data/ljspeech/wavs/LJ014-0242.npy -tests/data/ljspeech/wavs/LJ002-0023.wav|tests/data/ljspeech/wavs/LJ002-0023.npy -tests/data/ljspeech/wavs/LJ031-0122.wav|tests/data/ljspeech/wavs/LJ031-0122.npy -tests/data/ljspeech/wavs/LJ028-0121.wav|tests/data/ljspeech/wavs/LJ028-0121.npy -tests/data/ljspeech/wavs/LJ036-0206.wav|tests/data/ljspeech/wavs/LJ036-0206.npy -tests/data/ljspeech/wavs/LJ050-0068.wav|tests/data/ljspeech/wavs/LJ050-0068.npy -tests/data/ljspeech/wavs/LJ043-0091.wav|tests/data/ljspeech/wavs/LJ043-0091.npy -tests/data/ljspeech/wavs/LJ011-0269.wav|tests/data/ljspeech/wavs/LJ011-0269.npy -tests/data/ljspeech/wavs/LJ016-0050.wav|tests/data/ljspeech/wavs/LJ016-0050.npy -tests/data/ljspeech/wavs/LJ029-0174.wav|tests/data/ljspeech/wavs/LJ029-0174.npy -tests/data/ljspeech/wavs/LJ008-0009.wav|tests/data/ljspeech/wavs/LJ008-0009.npy -tests/data/ljspeech/wavs/LJ048-0152.wav|tests/data/ljspeech/wavs/LJ048-0152.npy -tests/data/ljspeech/wavs/LJ047-0195.wav|tests/data/ljspeech/wavs/LJ047-0195.npy -tests/data/ljspeech/wavs/LJ010-0131.wav|tests/data/ljspeech/wavs/LJ010-0131.npy -tests/data/ljspeech/wavs/LJ005-0137.wav|tests/data/ljspeech/wavs/LJ005-0137.npy -tests/data/ljspeech/wavs/LJ049-0151.wav|tests/data/ljspeech/wavs/LJ049-0151.npy -tests/data/ljspeech/wavs/LJ048-0013.wav|tests/data/ljspeech/wavs/LJ048-0013.npy -tests/data/ljspeech/wavs/LJ016-0388.wav|tests/data/ljspeech/wavs/LJ016-0388.npy -tests/data/ljspeech/wavs/LJ006-0182.wav|tests/data/ljspeech/wavs/LJ006-0182.npy -tests/data/ljspeech/wavs/LJ018-0255.wav|tests/data/ljspeech/wavs/LJ018-0255.npy -tests/data/ljspeech/wavs/LJ047-0188.wav|tests/data/ljspeech/wavs/LJ047-0188.npy -tests/data/ljspeech/wavs/LJ028-0014.wav|tests/data/ljspeech/wavs/LJ028-0014.npy -tests/data/ljspeech/wavs/LJ037-0211.wav|tests/data/ljspeech/wavs/LJ037-0211.npy -tests/data/ljspeech/wavs/LJ038-0162.wav|tests/data/ljspeech/wavs/LJ038-0162.npy -tests/data/ljspeech/wavs/LJ018-0019.wav|tests/data/ljspeech/wavs/LJ018-0019.npy -tests/data/ljspeech/wavs/LJ035-0053.wav|tests/data/ljspeech/wavs/LJ035-0053.npy -tests/data/ljspeech/wavs/LJ008-0159.wav|tests/data/ljspeech/wavs/LJ008-0159.npy -tests/data/ljspeech/wavs/LJ037-0032.wav|tests/data/ljspeech/wavs/LJ037-0032.npy -tests/data/ljspeech/wavs/LJ028-0508.wav|tests/data/ljspeech/wavs/LJ028-0508.npy -tests/data/ljspeech/wavs/LJ015-0286.wav|tests/data/ljspeech/wavs/LJ015-0286.npy -tests/data/ljspeech/wavs/LJ048-0158.wav|tests/data/ljspeech/wavs/LJ048-0158.npy -tests/data/ljspeech/wavs/LJ002-0213.wav|tests/data/ljspeech/wavs/LJ002-0213.npy -tests/data/ljspeech/wavs/LJ028-0252.wav|tests/data/ljspeech/wavs/LJ028-0252.npy -tests/data/ljspeech/wavs/LJ011-0129.wav|tests/data/ljspeech/wavs/LJ011-0129.npy -tests/data/ljspeech/wavs/LJ018-0337.wav|tests/data/ljspeech/wavs/LJ018-0337.npy -tests/data/ljspeech/wavs/LJ046-0188.wav|tests/data/ljspeech/wavs/LJ046-0188.npy -tests/data/ljspeech/wavs/LJ043-0107.wav|tests/data/ljspeech/wavs/LJ043-0107.npy -tests/data/ljspeech/wavs/LJ032-0046.wav|tests/data/ljspeech/wavs/LJ032-0046.npy -tests/data/ljspeech/wavs/LJ046-0230.wav|tests/data/ljspeech/wavs/LJ046-0230.npy -tests/data/ljspeech/wavs/LJ040-0153.wav|tests/data/ljspeech/wavs/LJ040-0153.npy -tests/data/ljspeech/wavs/LJ002-0029.wav|tests/data/ljspeech/wavs/LJ002-0029.npy -tests/data/ljspeech/wavs/LJ002-0151.wav|tests/data/ljspeech/wavs/LJ002-0151.npy -tests/data/ljspeech/wavs/LJ050-0150.wav|tests/data/ljspeech/wavs/LJ050-0150.npy -tests/data/ljspeech/wavs/LJ038-0183.wav|tests/data/ljspeech/wavs/LJ038-0183.npy -tests/data/ljspeech/wavs/LJ033-0191.wav|tests/data/ljspeech/wavs/LJ033-0191.npy -tests/data/ljspeech/wavs/LJ020-0004.wav|tests/data/ljspeech/wavs/LJ020-0004.npy -tests/data/ljspeech/wavs/LJ023-0130.wav|tests/data/ljspeech/wavs/LJ023-0130.npy -tests/data/ljspeech/wavs/LJ022-0005.wav|tests/data/ljspeech/wavs/LJ022-0005.npy -tests/data/ljspeech/wavs/LJ015-0274.wav|tests/data/ljspeech/wavs/LJ015-0274.npy -tests/data/ljspeech/wavs/LJ046-0168.wav|tests/data/ljspeech/wavs/LJ046-0168.npy -tests/data/ljspeech/wavs/LJ028-0137.wav|tests/data/ljspeech/wavs/LJ028-0137.npy -tests/data/ljspeech/wavs/LJ016-0058.wav|tests/data/ljspeech/wavs/LJ016-0058.npy -tests/data/ljspeech/wavs/LJ004-0175.wav|tests/data/ljspeech/wavs/LJ004-0175.npy -tests/data/ljspeech/wavs/LJ024-0069.wav|tests/data/ljspeech/wavs/LJ024-0069.npy -tests/data/ljspeech/wavs/LJ037-0130.wav|tests/data/ljspeech/wavs/LJ037-0130.npy -tests/data/ljspeech/wavs/LJ023-0074.wav|tests/data/ljspeech/wavs/LJ023-0074.npy -tests/data/ljspeech/wavs/LJ022-0152.wav|tests/data/ljspeech/wavs/LJ022-0152.npy -tests/data/ljspeech/wavs/LJ001-0179.wav|tests/data/ljspeech/wavs/LJ001-0179.npy -tests/data/ljspeech/wavs/LJ023-0067.wav|tests/data/ljspeech/wavs/LJ023-0067.npy -tests/data/ljspeech/wavs/LJ024-0132.wav|tests/data/ljspeech/wavs/LJ024-0132.npy -tests/data/ljspeech/wavs/LJ015-0091.wav|tests/data/ljspeech/wavs/LJ015-0091.npy -tests/data/ljspeech/wavs/LJ009-0071.wav|tests/data/ljspeech/wavs/LJ009-0071.npy -tests/data/ljspeech/wavs/LJ024-0083.wav|tests/data/ljspeech/wavs/LJ024-0083.npy -tests/data/ljspeech/wavs/LJ002-0069.wav|tests/data/ljspeech/wavs/LJ002-0069.npy -tests/data/ljspeech/wavs/LJ028-0107.wav|tests/data/ljspeech/wavs/LJ028-0107.npy -tests/data/ljspeech/wavs/LJ006-0143.wav|tests/data/ljspeech/wavs/LJ006-0143.npy -tests/data/ljspeech/wavs/LJ038-0072.wav|tests/data/ljspeech/wavs/LJ038-0072.npy -tests/data/ljspeech/wavs/LJ001-0125.wav|tests/data/ljspeech/wavs/LJ001-0125.npy -tests/data/ljspeech/wavs/LJ031-0104.wav|tests/data/ljspeech/wavs/LJ031-0104.npy -tests/data/ljspeech/wavs/LJ007-0208.wav|tests/data/ljspeech/wavs/LJ007-0208.npy -tests/data/ljspeech/wavs/LJ027-0005.wav|tests/data/ljspeech/wavs/LJ027-0005.npy -tests/data/ljspeech/wavs/LJ042-0039.wav|tests/data/ljspeech/wavs/LJ042-0039.npy -tests/data/ljspeech/wavs/LJ048-0056.wav|tests/data/ljspeech/wavs/LJ048-0056.npy -tests/data/ljspeech/wavs/LJ014-0125.wav|tests/data/ljspeech/wavs/LJ014-0125.npy -tests/data/ljspeech/wavs/LJ011-0004.wav|tests/data/ljspeech/wavs/LJ011-0004.npy -tests/data/ljspeech/wavs/LJ007-0088.wav|tests/data/ljspeech/wavs/LJ007-0088.npy -tests/data/ljspeech/wavs/LJ018-0105.wav|tests/data/ljspeech/wavs/LJ018-0105.npy -tests/data/ljspeech/wavs/LJ036-0064.wav|tests/data/ljspeech/wavs/LJ036-0064.npy -tests/data/ljspeech/wavs/LJ002-0083.wav|tests/data/ljspeech/wavs/LJ002-0083.npy -tests/data/ljspeech/wavs/LJ013-0081.wav|tests/data/ljspeech/wavs/LJ013-0081.npy -tests/data/ljspeech/wavs/LJ048-0223.wav|tests/data/ljspeech/wavs/LJ048-0223.npy -tests/data/ljspeech/wavs/LJ041-0156.wav|tests/data/ljspeech/wavs/LJ041-0156.npy -tests/data/ljspeech/wavs/LJ039-0130.wav|tests/data/ljspeech/wavs/LJ039-0130.npy -tests/data/ljspeech/wavs/LJ006-0150.wav|tests/data/ljspeech/wavs/LJ006-0150.npy -tests/data/ljspeech/wavs/LJ013-0072.wav|tests/data/ljspeech/wavs/LJ013-0072.npy -tests/data/ljspeech/wavs/LJ017-0179.wav|tests/data/ljspeech/wavs/LJ017-0179.npy -tests/data/ljspeech/wavs/LJ002-0287.wav|tests/data/ljspeech/wavs/LJ002-0287.npy -tests/data/ljspeech/wavs/LJ007-0169.wav|tests/data/ljspeech/wavs/LJ007-0169.npy -tests/data/ljspeech/wavs/LJ006-0240.wav|tests/data/ljspeech/wavs/LJ006-0240.npy -tests/data/ljspeech/wavs/LJ005-0156.wav|tests/data/ljspeech/wavs/LJ005-0156.npy -tests/data/ljspeech/wavs/LJ020-0104.wav|tests/data/ljspeech/wavs/LJ020-0104.npy -tests/data/ljspeech/wavs/LJ036-0145.wav|tests/data/ljspeech/wavs/LJ036-0145.npy -tests/data/ljspeech/wavs/LJ031-0068.wav|tests/data/ljspeech/wavs/LJ031-0068.npy -tests/data/ljspeech/wavs/LJ017-0229.wav|tests/data/ljspeech/wavs/LJ017-0229.npy -tests/data/ljspeech/wavs/LJ035-0133.wav|tests/data/ljspeech/wavs/LJ035-0133.npy -tests/data/ljspeech/wavs/LJ017-0132.wav|tests/data/ljspeech/wavs/LJ017-0132.npy -tests/data/ljspeech/wavs/LJ037-0172.wav|tests/data/ljspeech/wavs/LJ037-0172.npy -tests/data/ljspeech/wavs/LJ034-0161.wav|tests/data/ljspeech/wavs/LJ034-0161.npy -tests/data/ljspeech/wavs/LJ002-0236.wav|tests/data/ljspeech/wavs/LJ002-0236.npy -tests/data/ljspeech/wavs/LJ034-0155.wav|tests/data/ljspeech/wavs/LJ034-0155.npy -tests/data/ljspeech/wavs/LJ050-0266.wav|tests/data/ljspeech/wavs/LJ050-0266.npy -tests/data/ljspeech/wavs/LJ044-0234.wav|tests/data/ljspeech/wavs/LJ044-0234.npy -tests/data/ljspeech/wavs/LJ039-0154.wav|tests/data/ljspeech/wavs/LJ039-0154.npy -tests/data/ljspeech/wavs/LJ015-0058.wav|tests/data/ljspeech/wavs/LJ015-0058.npy -tests/data/ljspeech/wavs/LJ002-0005.wav|tests/data/ljspeech/wavs/LJ002-0005.npy -tests/data/ljspeech/wavs/LJ021-0174.wav|tests/data/ljspeech/wavs/LJ021-0174.npy -tests/data/ljspeech/wavs/LJ034-0093.wav|tests/data/ljspeech/wavs/LJ034-0093.npy -tests/data/ljspeech/wavs/LJ049-0085.wav|tests/data/ljspeech/wavs/LJ049-0085.npy -tests/data/ljspeech/wavs/LJ011-0036.wav|tests/data/ljspeech/wavs/LJ011-0036.npy -tests/data/ljspeech/wavs/LJ017-0263.wav|tests/data/ljspeech/wavs/LJ017-0263.npy -tests/data/ljspeech/wavs/LJ030-0107.wav|tests/data/ljspeech/wavs/LJ030-0107.npy -tests/data/ljspeech/wavs/LJ028-0139.wav|tests/data/ljspeech/wavs/LJ028-0139.npy -tests/data/ljspeech/wavs/LJ042-0040.wav|tests/data/ljspeech/wavs/LJ042-0040.npy -tests/data/ljspeech/wavs/LJ016-0102.wav|tests/data/ljspeech/wavs/LJ016-0102.npy -tests/data/ljspeech/wavs/LJ025-0091.wav|tests/data/ljspeech/wavs/LJ025-0091.npy -tests/data/ljspeech/wavs/LJ011-0109.wav|tests/data/ljspeech/wavs/LJ011-0109.npy -tests/data/ljspeech/wavs/LJ006-0169.wav|tests/data/ljspeech/wavs/LJ006-0169.npy -tests/data/ljspeech/wavs/LJ008-0104.wav|tests/data/ljspeech/wavs/LJ008-0104.npy -tests/data/ljspeech/wavs/LJ034-0089.wav|tests/data/ljspeech/wavs/LJ034-0089.npy -tests/data/ljspeech/wavs/LJ013-0267.wav|tests/data/ljspeech/wavs/LJ013-0267.npy -tests/data/ljspeech/wavs/LJ050-0126.wav|tests/data/ljspeech/wavs/LJ050-0126.npy -tests/data/ljspeech/wavs/LJ014-0115.wav|tests/data/ljspeech/wavs/LJ014-0115.npy -tests/data/ljspeech/wavs/LJ046-0136.wav|tests/data/ljspeech/wavs/LJ046-0136.npy -tests/data/ljspeech/wavs/LJ041-0188.wav|tests/data/ljspeech/wavs/LJ041-0188.npy -tests/data/ljspeech/wavs/LJ036-0118.wav|tests/data/ljspeech/wavs/LJ036-0118.npy -tests/data/ljspeech/wavs/LJ009-0058.wav|tests/data/ljspeech/wavs/LJ009-0058.npy -tests/data/ljspeech/wavs/LJ013-0211.wav|tests/data/ljspeech/wavs/LJ013-0211.npy -tests/data/ljspeech/wavs/LJ028-0231.wav|tests/data/ljspeech/wavs/LJ028-0231.npy -tests/data/ljspeech/wavs/LJ017-0210.wav|tests/data/ljspeech/wavs/LJ017-0210.npy -tests/data/ljspeech/wavs/LJ013-0258.wav|tests/data/ljspeech/wavs/LJ013-0258.npy -tests/data/ljspeech/wavs/LJ017-0051.wav|tests/data/ljspeech/wavs/LJ017-0051.npy -tests/data/ljspeech/wavs/LJ006-0061.wav|tests/data/ljspeech/wavs/LJ006-0061.npy -tests/data/ljspeech/wavs/LJ018-0252.wav|tests/data/ljspeech/wavs/LJ018-0252.npy -tests/data/ljspeech/wavs/LJ045-0213.wav|tests/data/ljspeech/wavs/LJ045-0213.npy -tests/data/ljspeech/wavs/LJ043-0144.wav|tests/data/ljspeech/wavs/LJ043-0144.npy -tests/data/ljspeech/wavs/LJ040-0088.wav|tests/data/ljspeech/wavs/LJ040-0088.npy -tests/data/ljspeech/wavs/LJ025-0107.wav|tests/data/ljspeech/wavs/LJ025-0107.npy -tests/data/ljspeech/wavs/LJ032-0014.wav|tests/data/ljspeech/wavs/LJ032-0014.npy -tests/data/ljspeech/wavs/LJ031-0147.wav|tests/data/ljspeech/wavs/LJ031-0147.npy -tests/data/ljspeech/wavs/LJ038-0159.wav|tests/data/ljspeech/wavs/LJ038-0159.npy -tests/data/ljspeech/wavs/LJ026-0033.wav|tests/data/ljspeech/wavs/LJ026-0033.npy -tests/data/ljspeech/wavs/LJ011-0090.wav|tests/data/ljspeech/wavs/LJ011-0090.npy -tests/data/ljspeech/wavs/LJ035-0068.wav|tests/data/ljspeech/wavs/LJ035-0068.npy -tests/data/ljspeech/wavs/LJ022-0089.wav|tests/data/ljspeech/wavs/LJ022-0089.npy -tests/data/ljspeech/wavs/LJ004-0123.wav|tests/data/ljspeech/wavs/LJ004-0123.npy -tests/data/ljspeech/wavs/LJ028-0222.wav|tests/data/ljspeech/wavs/LJ028-0222.npy -tests/data/ljspeech/wavs/LJ028-0115.wav|tests/data/ljspeech/wavs/LJ028-0115.npy -tests/data/ljspeech/wavs/LJ004-0114.wav|tests/data/ljspeech/wavs/LJ004-0114.npy -tests/data/ljspeech/wavs/LJ019-0194.wav|tests/data/ljspeech/wavs/LJ019-0194.npy -tests/data/ljspeech/wavs/LJ028-0277.wav|tests/data/ljspeech/wavs/LJ028-0277.npy -tests/data/ljspeech/wavs/LJ011-0155.wav|tests/data/ljspeech/wavs/LJ011-0155.npy -tests/data/ljspeech/wavs/LJ038-0099.wav|tests/data/ljspeech/wavs/LJ038-0099.npy -tests/data/ljspeech/wavs/LJ019-0269.wav|tests/data/ljspeech/wavs/LJ019-0269.npy -tests/data/ljspeech/wavs/LJ002-0155.wav|tests/data/ljspeech/wavs/LJ002-0155.npy -tests/data/ljspeech/wavs/LJ044-0174.wav|tests/data/ljspeech/wavs/LJ044-0174.npy -tests/data/ljspeech/wavs/LJ041-0117.wav|tests/data/ljspeech/wavs/LJ041-0117.npy -tests/data/ljspeech/wavs/LJ018-0231.wav|tests/data/ljspeech/wavs/LJ018-0231.npy -tests/data/ljspeech/wavs/LJ003-0197.wav|tests/data/ljspeech/wavs/LJ003-0197.npy -tests/data/ljspeech/wavs/LJ010-0288.wav|tests/data/ljspeech/wavs/LJ010-0288.npy -tests/data/ljspeech/wavs/LJ030-0061.wav|tests/data/ljspeech/wavs/LJ030-0061.npy -tests/data/ljspeech/wavs/LJ039-0225.wav|tests/data/ljspeech/wavs/LJ039-0225.npy -tests/data/ljspeech/wavs/LJ014-0081.wav|tests/data/ljspeech/wavs/LJ014-0081.npy -tests/data/ljspeech/wavs/LJ042-0144.wav|tests/data/ljspeech/wavs/LJ042-0144.npy -tests/data/ljspeech/wavs/LJ028-0432.wav|tests/data/ljspeech/wavs/LJ028-0432.npy -tests/data/ljspeech/wavs/LJ018-0016.wav|tests/data/ljspeech/wavs/LJ018-0016.npy -tests/data/ljspeech/wavs/LJ030-0161.wav|tests/data/ljspeech/wavs/LJ030-0161.npy -tests/data/ljspeech/wavs/LJ025-0041.wav|tests/data/ljspeech/wavs/LJ025-0041.npy -tests/data/ljspeech/wavs/LJ005-0053.wav|tests/data/ljspeech/wavs/LJ005-0053.npy -tests/data/ljspeech/wavs/LJ007-0105.wav|tests/data/ljspeech/wavs/LJ007-0105.npy -tests/data/ljspeech/wavs/LJ017-0046.wav|tests/data/ljspeech/wavs/LJ017-0046.npy -tests/data/ljspeech/wavs/LJ050-0184.wav|tests/data/ljspeech/wavs/LJ050-0184.npy -tests/data/ljspeech/wavs/LJ023-0022.wav|tests/data/ljspeech/wavs/LJ023-0022.npy -tests/data/ljspeech/wavs/LJ013-0189.wav|tests/data/ljspeech/wavs/LJ013-0189.npy -tests/data/ljspeech/wavs/LJ048-0135.wav|tests/data/ljspeech/wavs/LJ048-0135.npy -tests/data/ljspeech/wavs/LJ019-0355.wav|tests/data/ljspeech/wavs/LJ019-0355.npy -tests/data/ljspeech/wavs/LJ036-0035.wav|tests/data/ljspeech/wavs/LJ036-0035.npy -tests/data/ljspeech/wavs/LJ017-0156.wav|tests/data/ljspeech/wavs/LJ017-0156.npy -tests/data/ljspeech/wavs/LJ017-0095.wav|tests/data/ljspeech/wavs/LJ017-0095.npy -tests/data/ljspeech/wavs/LJ023-0122.wav|tests/data/ljspeech/wavs/LJ023-0122.npy -tests/data/ljspeech/wavs/LJ028-0500.wav|tests/data/ljspeech/wavs/LJ028-0500.npy -tests/data/ljspeech/wavs/LJ042-0094.wav|tests/data/ljspeech/wavs/LJ042-0094.npy -tests/data/ljspeech/wavs/LJ013-0138.wav|tests/data/ljspeech/wavs/LJ013-0138.npy -tests/data/ljspeech/wavs/LJ002-0311.wav|tests/data/ljspeech/wavs/LJ002-0311.npy -tests/data/ljspeech/wavs/LJ028-0454.wav|tests/data/ljspeech/wavs/LJ028-0454.npy -tests/data/ljspeech/wavs/LJ035-0136.wav|tests/data/ljspeech/wavs/LJ035-0136.npy -tests/data/ljspeech/wavs/LJ007-0191.wav|tests/data/ljspeech/wavs/LJ007-0191.npy -tests/data/ljspeech/wavs/LJ018-0166.wav|tests/data/ljspeech/wavs/LJ018-0166.npy -tests/data/ljspeech/wavs/LJ017-0040.wav|tests/data/ljspeech/wavs/LJ017-0040.npy -tests/data/ljspeech/wavs/LJ018-0067.wav|tests/data/ljspeech/wavs/LJ018-0067.npy -tests/data/ljspeech/wavs/LJ007-0015.wav|tests/data/ljspeech/wavs/LJ007-0015.npy -tests/data/ljspeech/wavs/LJ017-0027.wav|tests/data/ljspeech/wavs/LJ017-0027.npy -tests/data/ljspeech/wavs/LJ047-0109.wav|tests/data/ljspeech/wavs/LJ047-0109.npy -tests/data/ljspeech/wavs/LJ034-0163.wav|tests/data/ljspeech/wavs/LJ034-0163.npy -tests/data/ljspeech/wavs/LJ028-0164.wav|tests/data/ljspeech/wavs/LJ028-0164.npy -tests/data/ljspeech/wavs/LJ023-0009.wav|tests/data/ljspeech/wavs/LJ023-0009.npy -tests/data/ljspeech/wavs/LJ034-0215.wav|tests/data/ljspeech/wavs/LJ034-0215.npy -tests/data/ljspeech/wavs/LJ015-0008.wav|tests/data/ljspeech/wavs/LJ015-0008.npy -tests/data/ljspeech/wavs/LJ044-0146.wav|tests/data/ljspeech/wavs/LJ044-0146.npy -tests/data/ljspeech/wavs/LJ032-0050.wav|tests/data/ljspeech/wavs/LJ032-0050.npy -tests/data/ljspeech/wavs/LJ045-0125.wav|tests/data/ljspeech/wavs/LJ045-0125.npy -tests/data/ljspeech/wavs/LJ037-0240.wav|tests/data/ljspeech/wavs/LJ037-0240.npy -tests/data/ljspeech/wavs/LJ016-0181.wav|tests/data/ljspeech/wavs/LJ016-0181.npy -tests/data/ljspeech/wavs/LJ021-0183.wav|tests/data/ljspeech/wavs/LJ021-0183.npy -tests/data/ljspeech/wavs/LJ025-0001.wav|tests/data/ljspeech/wavs/LJ025-0001.npy -tests/data/ljspeech/wavs/LJ032-0255.wav|tests/data/ljspeech/wavs/LJ032-0255.npy -tests/data/ljspeech/wavs/LJ031-0098.wav|tests/data/ljspeech/wavs/LJ031-0098.npy -tests/data/ljspeech/wavs/LJ029-0113.wav|tests/data/ljspeech/wavs/LJ029-0113.npy -tests/data/ljspeech/wavs/LJ005-0247.wav|tests/data/ljspeech/wavs/LJ005-0247.npy -tests/data/ljspeech/wavs/LJ014-0165.wav|tests/data/ljspeech/wavs/LJ014-0165.npy -tests/data/ljspeech/wavs/LJ024-0134.wav|tests/data/ljspeech/wavs/LJ024-0134.npy -tests/data/ljspeech/wavs/LJ038-0121.wav|tests/data/ljspeech/wavs/LJ038-0121.npy -tests/data/ljspeech/wavs/LJ006-0147.wav|tests/data/ljspeech/wavs/LJ006-0147.npy -tests/data/ljspeech/wavs/LJ031-0094.wav|tests/data/ljspeech/wavs/LJ031-0094.npy -tests/data/ljspeech/wavs/LJ015-0252.wav|tests/data/ljspeech/wavs/LJ015-0252.npy -tests/data/ljspeech/wavs/LJ021-0147.wav|tests/data/ljspeech/wavs/LJ021-0147.npy -tests/data/ljspeech/wavs/LJ010-0044.wav|tests/data/ljspeech/wavs/LJ010-0044.npy -tests/data/ljspeech/wavs/LJ045-0098.wav|tests/data/ljspeech/wavs/LJ045-0098.npy -tests/data/ljspeech/wavs/LJ016-0100.wav|tests/data/ljspeech/wavs/LJ016-0100.npy -tests/data/ljspeech/wavs/LJ015-0225.wav|tests/data/ljspeech/wavs/LJ015-0225.npy -tests/data/ljspeech/wavs/LJ004-0054.wav|tests/data/ljspeech/wavs/LJ004-0054.npy -tests/data/ljspeech/wavs/LJ004-0160.wav|tests/data/ljspeech/wavs/LJ004-0160.npy -tests/data/ljspeech/wavs/LJ018-0157.wav|tests/data/ljspeech/wavs/LJ018-0157.npy -tests/data/ljspeech/wavs/LJ010-0266.wav|tests/data/ljspeech/wavs/LJ010-0266.npy -tests/data/ljspeech/wavs/LJ027-0159.wav|tests/data/ljspeech/wavs/LJ027-0159.npy -tests/data/ljspeech/wavs/LJ034-0134.wav|tests/data/ljspeech/wavs/LJ034-0134.npy -tests/data/ljspeech/wavs/LJ010-0035.wav|tests/data/ljspeech/wavs/LJ010-0035.npy -tests/data/ljspeech/wavs/LJ014-0037.wav|tests/data/ljspeech/wavs/LJ014-0037.npy -tests/data/ljspeech/wavs/LJ024-0091.wav|tests/data/ljspeech/wavs/LJ024-0091.npy -tests/data/ljspeech/wavs/LJ002-0129.wav|tests/data/ljspeech/wavs/LJ002-0129.npy -tests/data/ljspeech/wavs/LJ040-0121.wav|tests/data/ljspeech/wavs/LJ040-0121.npy -tests/data/ljspeech/wavs/LJ048-0221.wav|tests/data/ljspeech/wavs/LJ048-0221.npy -tests/data/ljspeech/wavs/LJ005-0057.wav|tests/data/ljspeech/wavs/LJ005-0057.npy -tests/data/ljspeech/wavs/LJ029-0180.wav|tests/data/ljspeech/wavs/LJ029-0180.npy -tests/data/ljspeech/wavs/LJ048-0232.wav|tests/data/ljspeech/wavs/LJ048-0232.npy -tests/data/ljspeech/wavs/LJ030-0242.wav|tests/data/ljspeech/wavs/LJ030-0242.npy -tests/data/ljspeech/wavs/LJ021-0089.wav|tests/data/ljspeech/wavs/LJ021-0089.npy -tests/data/ljspeech/wavs/LJ039-0140.wav|tests/data/ljspeech/wavs/LJ039-0140.npy -tests/data/ljspeech/wavs/LJ038-0006.wav|tests/data/ljspeech/wavs/LJ038-0006.npy -tests/data/ljspeech/wavs/LJ003-0164.wav|tests/data/ljspeech/wavs/LJ003-0164.npy -tests/data/ljspeech/wavs/LJ009-0207.wav|tests/data/ljspeech/wavs/LJ009-0207.npy -tests/data/ljspeech/wavs/LJ006-0257.wav|tests/data/ljspeech/wavs/LJ006-0257.npy -tests/data/ljspeech/wavs/LJ028-0193.wav|tests/data/ljspeech/wavs/LJ028-0193.npy -tests/data/ljspeech/wavs/LJ033-0147.wav|tests/data/ljspeech/wavs/LJ033-0147.npy -tests/data/ljspeech/wavs/LJ028-0119.wav|tests/data/ljspeech/wavs/LJ028-0119.npy -tests/data/ljspeech/wavs/LJ045-0160.wav|tests/data/ljspeech/wavs/LJ045-0160.npy -tests/data/ljspeech/wavs/LJ008-0230.wav|tests/data/ljspeech/wavs/LJ008-0230.npy -tests/data/ljspeech/wavs/LJ007-0196.wav|tests/data/ljspeech/wavs/LJ007-0196.npy -tests/data/ljspeech/wavs/LJ015-0220.wav|tests/data/ljspeech/wavs/LJ015-0220.npy -tests/data/ljspeech/wavs/LJ036-0112.wav|tests/data/ljspeech/wavs/LJ036-0112.npy -tests/data/ljspeech/wavs/LJ016-0420.wav|tests/data/ljspeech/wavs/LJ016-0420.npy -tests/data/ljspeech/wavs/LJ027-0073.wav|tests/data/ljspeech/wavs/LJ027-0073.npy -tests/data/ljspeech/wavs/LJ043-0086.wav|tests/data/ljspeech/wavs/LJ043-0086.npy -tests/data/ljspeech/wavs/LJ050-0025.wav|tests/data/ljspeech/wavs/LJ050-0025.npy -tests/data/ljspeech/wavs/LJ010-0149.wav|tests/data/ljspeech/wavs/LJ010-0149.npy -tests/data/ljspeech/wavs/LJ020-0028.wav|tests/data/ljspeech/wavs/LJ020-0028.npy -tests/data/ljspeech/wavs/LJ018-0332.wav|tests/data/ljspeech/wavs/LJ018-0332.npy -tests/data/ljspeech/wavs/LJ011-0150.wav|tests/data/ljspeech/wavs/LJ011-0150.npy -tests/data/ljspeech/wavs/LJ028-0380.wav|tests/data/ljspeech/wavs/LJ028-0380.npy -tests/data/ljspeech/wavs/LJ033-0006.wav|tests/data/ljspeech/wavs/LJ033-0006.npy -tests/data/ljspeech/wavs/LJ030-0140.wav|tests/data/ljspeech/wavs/LJ030-0140.npy -tests/data/ljspeech/wavs/LJ036-0139.wav|tests/data/ljspeech/wavs/LJ036-0139.npy -tests/data/ljspeech/wavs/LJ046-0125.wav|tests/data/ljspeech/wavs/LJ046-0125.npy -tests/data/ljspeech/wavs/LJ009-0154.wav|tests/data/ljspeech/wavs/LJ009-0154.npy -tests/data/ljspeech/wavs/LJ005-0132.wav|tests/data/ljspeech/wavs/LJ005-0132.npy -tests/data/ljspeech/wavs/LJ039-0144.wav|tests/data/ljspeech/wavs/LJ039-0144.npy -tests/data/ljspeech/wavs/LJ014-0011.wav|tests/data/ljspeech/wavs/LJ014-0011.npy -tests/data/ljspeech/wavs/LJ012-0161.wav|tests/data/ljspeech/wavs/LJ012-0161.npy -tests/data/ljspeech/wavs/LJ041-0071.wav|tests/data/ljspeech/wavs/LJ041-0071.npy -tests/data/ljspeech/wavs/LJ003-0061.wav|tests/data/ljspeech/wavs/LJ003-0061.npy -tests/data/ljspeech/wavs/LJ010-0297.wav|tests/data/ljspeech/wavs/LJ010-0297.npy -tests/data/ljspeech/wavs/LJ033-0082.wav|tests/data/ljspeech/wavs/LJ033-0082.npy -tests/data/ljspeech/wavs/LJ015-0030.wav|tests/data/ljspeech/wavs/LJ015-0030.npy -tests/data/ljspeech/wavs/LJ024-0123.wav|tests/data/ljspeech/wavs/LJ024-0123.npy -tests/data/ljspeech/wavs/LJ039-0222.wav|tests/data/ljspeech/wavs/LJ039-0222.npy -tests/data/ljspeech/wavs/LJ025-0160.wav|tests/data/ljspeech/wavs/LJ025-0160.npy -tests/data/ljspeech/wavs/LJ020-0015.wav|tests/data/ljspeech/wavs/LJ020-0015.npy -tests/data/ljspeech/wavs/LJ011-0056.wav|tests/data/ljspeech/wavs/LJ011-0056.npy -tests/data/ljspeech/wavs/LJ013-0023.wav|tests/data/ljspeech/wavs/LJ013-0023.npy -tests/data/ljspeech/wavs/LJ050-0203.wav|tests/data/ljspeech/wavs/LJ050-0203.npy -tests/data/ljspeech/wavs/LJ022-0108.wav|tests/data/ljspeech/wavs/LJ022-0108.npy -tests/data/ljspeech/wavs/LJ029-0072.wav|tests/data/ljspeech/wavs/LJ029-0072.npy -tests/data/ljspeech/wavs/LJ002-0076.wav|tests/data/ljspeech/wavs/LJ002-0076.npy -tests/data/ljspeech/wavs/LJ004-0143.wav|tests/data/ljspeech/wavs/LJ004-0143.npy -tests/data/ljspeech/wavs/LJ005-0207.wav|tests/data/ljspeech/wavs/LJ005-0207.npy -tests/data/ljspeech/wavs/LJ019-0200.wav|tests/data/ljspeech/wavs/LJ019-0200.npy -tests/data/ljspeech/wavs/LJ017-0087.wav|tests/data/ljspeech/wavs/LJ017-0087.npy -tests/data/ljspeech/wavs/LJ010-0007.wav|tests/data/ljspeech/wavs/LJ010-0007.npy -tests/data/ljspeech/wavs/LJ037-0030.wav|tests/data/ljspeech/wavs/LJ037-0030.npy -tests/data/ljspeech/wavs/LJ022-0139.wav|tests/data/ljspeech/wavs/LJ022-0139.npy -tests/data/ljspeech/wavs/LJ017-0123.wav|tests/data/ljspeech/wavs/LJ017-0123.npy -tests/data/ljspeech/wavs/LJ003-0017.wav|tests/data/ljspeech/wavs/LJ003-0017.npy -tests/data/ljspeech/wavs/LJ032-0017.wav|tests/data/ljspeech/wavs/LJ032-0017.npy -tests/data/ljspeech/wavs/LJ010-0306.wav|tests/data/ljspeech/wavs/LJ010-0306.npy -tests/data/ljspeech/wavs/LJ046-0163.wav|tests/data/ljspeech/wavs/LJ046-0163.npy -tests/data/ljspeech/wavs/LJ023-0021.wav|tests/data/ljspeech/wavs/LJ023-0021.npy -tests/data/ljspeech/wavs/LJ036-0171.wav|tests/data/ljspeech/wavs/LJ036-0171.npy -tests/data/ljspeech/wavs/LJ004-0061.wav|tests/data/ljspeech/wavs/LJ004-0061.npy -tests/data/ljspeech/wavs/LJ031-0117.wav|tests/data/ljspeech/wavs/LJ031-0117.npy -tests/data/ljspeech/wavs/LJ047-0039.wav|tests/data/ljspeech/wavs/LJ047-0039.npy -tests/data/ljspeech/wavs/LJ019-0298.wav|tests/data/ljspeech/wavs/LJ019-0298.npy -tests/data/ljspeech/wavs/LJ013-0101.wav|tests/data/ljspeech/wavs/LJ013-0101.npy -tests/data/ljspeech/wavs/LJ021-0092.wav|tests/data/ljspeech/wavs/LJ021-0092.npy -tests/data/ljspeech/wavs/LJ026-0111.wav|tests/data/ljspeech/wavs/LJ026-0111.npy -tests/data/ljspeech/wavs/LJ019-0204.wav|tests/data/ljspeech/wavs/LJ019-0204.npy -tests/data/ljspeech/wavs/LJ027-0017.wav|tests/data/ljspeech/wavs/LJ027-0017.npy -tests/data/ljspeech/wavs/LJ017-0138.wav|tests/data/ljspeech/wavs/LJ017-0138.npy -tests/data/ljspeech/wavs/LJ031-0177.wav|tests/data/ljspeech/wavs/LJ031-0177.npy -tests/data/ljspeech/wavs/LJ047-0121.wav|tests/data/ljspeech/wavs/LJ047-0121.npy -tests/data/ljspeech/wavs/LJ043-0155.wav|tests/data/ljspeech/wavs/LJ043-0155.npy -tests/data/ljspeech/wavs/LJ019-0059.wav|tests/data/ljspeech/wavs/LJ019-0059.npy -tests/data/ljspeech/wavs/LJ014-0191.wav|tests/data/ljspeech/wavs/LJ014-0191.npy -tests/data/ljspeech/wavs/LJ016-0287.wav|tests/data/ljspeech/wavs/LJ016-0287.npy -tests/data/ljspeech/wavs/LJ016-0341.wav|tests/data/ljspeech/wavs/LJ016-0341.npy -tests/data/ljspeech/wavs/LJ037-0200.wav|tests/data/ljspeech/wavs/LJ037-0200.npy -tests/data/ljspeech/wavs/LJ021-0178.wav|tests/data/ljspeech/wavs/LJ021-0178.npy -tests/data/ljspeech/wavs/LJ036-0214.wav|tests/data/ljspeech/wavs/LJ036-0214.npy -tests/data/ljspeech/wavs/LJ018-0339.wav|tests/data/ljspeech/wavs/LJ018-0339.npy -tests/data/ljspeech/wavs/LJ037-0097.wav|tests/data/ljspeech/wavs/LJ037-0097.npy -tests/data/ljspeech/wavs/LJ036-0218.wav|tests/data/ljspeech/wavs/LJ036-0218.npy -tests/data/ljspeech/wavs/LJ023-0085.wav|tests/data/ljspeech/wavs/LJ023-0085.npy -tests/data/ljspeech/wavs/LJ049-0124.wav|tests/data/ljspeech/wavs/LJ049-0124.npy -tests/data/ljspeech/wavs/LJ035-0135.wav|tests/data/ljspeech/wavs/LJ035-0135.npy -tests/data/ljspeech/wavs/LJ029-0155.wav|tests/data/ljspeech/wavs/LJ029-0155.npy -tests/data/ljspeech/wavs/LJ001-0174.wav|tests/data/ljspeech/wavs/LJ001-0174.npy -tests/data/ljspeech/wavs/LJ028-0363.wav|tests/data/ljspeech/wavs/LJ028-0363.npy -tests/data/ljspeech/wavs/LJ046-0134.wav|tests/data/ljspeech/wavs/LJ046-0134.npy -tests/data/ljspeech/wavs/LJ015-0129.wav|tests/data/ljspeech/wavs/LJ015-0129.npy -tests/data/ljspeech/wavs/LJ046-0161.wav|tests/data/ljspeech/wavs/LJ046-0161.npy -tests/data/ljspeech/wavs/LJ042-0043.wav|tests/data/ljspeech/wavs/LJ042-0043.npy -tests/data/ljspeech/wavs/LJ020-0071.wav|tests/data/ljspeech/wavs/LJ020-0071.npy -tests/data/ljspeech/wavs/LJ020-0025.wav|tests/data/ljspeech/wavs/LJ020-0025.npy -tests/data/ljspeech/wavs/LJ043-0071.wav|tests/data/ljspeech/wavs/LJ043-0071.npy -tests/data/ljspeech/wavs/LJ021-0189.wav|tests/data/ljspeech/wavs/LJ021-0189.npy -tests/data/ljspeech/wavs/LJ022-0065.wav|tests/data/ljspeech/wavs/LJ022-0065.npy -tests/data/ljspeech/wavs/LJ015-0102.wav|tests/data/ljspeech/wavs/LJ015-0102.npy -tests/data/ljspeech/wavs/LJ048-0050.wav|tests/data/ljspeech/wavs/LJ048-0050.npy -tests/data/ljspeech/wavs/LJ012-0274.wav|tests/data/ljspeech/wavs/LJ012-0274.npy -tests/data/ljspeech/wavs/LJ013-0002.wav|tests/data/ljspeech/wavs/LJ013-0002.npy -tests/data/ljspeech/wavs/LJ006-0227.wav|tests/data/ljspeech/wavs/LJ006-0227.npy -tests/data/ljspeech/wavs/LJ039-0072.wav|tests/data/ljspeech/wavs/LJ039-0072.npy -tests/data/ljspeech/wavs/LJ008-0226.wav|tests/data/ljspeech/wavs/LJ008-0226.npy -tests/data/ljspeech/wavs/LJ039-0080.wav|tests/data/ljspeech/wavs/LJ039-0080.npy -tests/data/ljspeech/wavs/LJ003-0134.wav|tests/data/ljspeech/wavs/LJ003-0134.npy -tests/data/ljspeech/wavs/LJ048-0150.wav|tests/data/ljspeech/wavs/LJ048-0150.npy -tests/data/ljspeech/wavs/LJ002-0191.wav|tests/data/ljspeech/wavs/LJ002-0191.npy -tests/data/ljspeech/wavs/LJ045-0030.wav|tests/data/ljspeech/wavs/LJ045-0030.npy -tests/data/ljspeech/wavs/LJ021-0032.wav|tests/data/ljspeech/wavs/LJ021-0032.npy -tests/data/ljspeech/wavs/LJ010-0118.wav|tests/data/ljspeech/wavs/LJ010-0118.npy -tests/data/ljspeech/wavs/LJ024-0033.wav|tests/data/ljspeech/wavs/LJ024-0033.npy -tests/data/ljspeech/wavs/LJ012-0002.wav|tests/data/ljspeech/wavs/LJ012-0002.npy -tests/data/ljspeech/wavs/LJ046-0014.wav|tests/data/ljspeech/wavs/LJ046-0014.npy -tests/data/ljspeech/wavs/LJ028-0265.wav|tests/data/ljspeech/wavs/LJ028-0265.npy -tests/data/ljspeech/wavs/LJ007-0006.wav|tests/data/ljspeech/wavs/LJ007-0006.npy -tests/data/ljspeech/wavs/LJ006-0291.wav|tests/data/ljspeech/wavs/LJ006-0291.npy -tests/data/ljspeech/wavs/LJ008-0218.wav|tests/data/ljspeech/wavs/LJ008-0218.npy -tests/data/ljspeech/wavs/LJ008-0180.wav|tests/data/ljspeech/wavs/LJ008-0180.npy -tests/data/ljspeech/wavs/LJ016-0204.wav|tests/data/ljspeech/wavs/LJ016-0204.npy -tests/data/ljspeech/wavs/LJ018-0130.wav|tests/data/ljspeech/wavs/LJ018-0130.npy -tests/data/ljspeech/wavs/LJ036-0077.wav|tests/data/ljspeech/wavs/LJ036-0077.npy -tests/data/ljspeech/wavs/LJ028-0134.wav|tests/data/ljspeech/wavs/LJ028-0134.npy -tests/data/ljspeech/wavs/LJ046-0057.wav|tests/data/ljspeech/wavs/LJ046-0057.npy -tests/data/ljspeech/wavs/LJ045-0141.wav|tests/data/ljspeech/wavs/LJ045-0141.npy -tests/data/ljspeech/wavs/LJ041-0003.wav|tests/data/ljspeech/wavs/LJ041-0003.npy -tests/data/ljspeech/wavs/LJ029-0154.wav|tests/data/ljspeech/wavs/LJ029-0154.npy -tests/data/ljspeech/wavs/LJ046-0170.wav|tests/data/ljspeech/wavs/LJ046-0170.npy -tests/data/ljspeech/wavs/LJ023-0025.wav|tests/data/ljspeech/wavs/LJ023-0025.npy -tests/data/ljspeech/wavs/LJ038-0035.wav|tests/data/ljspeech/wavs/LJ038-0035.npy -tests/data/ljspeech/wavs/LJ037-0239.wav|tests/data/ljspeech/wavs/LJ037-0239.npy -tests/data/ljspeech/wavs/LJ004-0101.wav|tests/data/ljspeech/wavs/LJ004-0101.npy -tests/data/ljspeech/wavs/LJ015-0110.wav|tests/data/ljspeech/wavs/LJ015-0110.npy -tests/data/ljspeech/wavs/LJ036-0127.wav|tests/data/ljspeech/wavs/LJ036-0127.npy -tests/data/ljspeech/wavs/LJ044-0143.wav|tests/data/ljspeech/wavs/LJ044-0143.npy -tests/data/ljspeech/wavs/LJ024-0020.wav|tests/data/ljspeech/wavs/LJ024-0020.npy -tests/data/ljspeech/wavs/LJ014-0288.wav|tests/data/ljspeech/wavs/LJ014-0288.npy -tests/data/ljspeech/wavs/LJ028-0336.wav|tests/data/ljspeech/wavs/LJ028-0336.npy -tests/data/ljspeech/wavs/LJ041-0005.wav|tests/data/ljspeech/wavs/LJ041-0005.npy -tests/data/ljspeech/wavs/LJ003-0058.wav|tests/data/ljspeech/wavs/LJ003-0058.npy -tests/data/ljspeech/wavs/LJ014-0227.wav|tests/data/ljspeech/wavs/LJ014-0227.npy -tests/data/ljspeech/wavs/LJ015-0209.wav|tests/data/ljspeech/wavs/LJ015-0209.npy -tests/data/ljspeech/wavs/LJ045-0172.wav|tests/data/ljspeech/wavs/LJ045-0172.npy -tests/data/ljspeech/wavs/LJ038-0083.wav|tests/data/ljspeech/wavs/LJ038-0083.npy -tests/data/ljspeech/wavs/LJ016-0126.wav|tests/data/ljspeech/wavs/LJ016-0126.npy -tests/data/ljspeech/wavs/LJ004-0099.wav|tests/data/ljspeech/wavs/LJ004-0099.npy -tests/data/ljspeech/wavs/LJ050-0205.wav|tests/data/ljspeech/wavs/LJ050-0205.npy -tests/data/ljspeech/wavs/LJ050-0236.wav|tests/data/ljspeech/wavs/LJ050-0236.npy -tests/data/ljspeech/wavs/LJ038-0279.wav|tests/data/ljspeech/wavs/LJ038-0279.npy -tests/data/ljspeech/wavs/LJ019-0389.wav|tests/data/ljspeech/wavs/LJ019-0389.npy -tests/data/ljspeech/wavs/LJ032-0147.wav|tests/data/ljspeech/wavs/LJ032-0147.npy -tests/data/ljspeech/wavs/LJ004-0092.wav|tests/data/ljspeech/wavs/LJ004-0092.npy -tests/data/ljspeech/wavs/LJ047-0070.wav|tests/data/ljspeech/wavs/LJ047-0070.npy -tests/data/ljspeech/wavs/LJ013-0013.wav|tests/data/ljspeech/wavs/LJ013-0013.npy -tests/data/ljspeech/wavs/LJ047-0176.wav|tests/data/ljspeech/wavs/LJ047-0176.npy -tests/data/ljspeech/wavs/LJ048-0002.wav|tests/data/ljspeech/wavs/LJ048-0002.npy -tests/data/ljspeech/wavs/LJ049-0213.wav|tests/data/ljspeech/wavs/LJ049-0213.npy -tests/data/ljspeech/wavs/LJ039-0082.wav|tests/data/ljspeech/wavs/LJ039-0082.npy -tests/data/ljspeech/wavs/LJ031-0146.wav|tests/data/ljspeech/wavs/LJ031-0146.npy -tests/data/ljspeech/wavs/LJ016-0312.wav|tests/data/ljspeech/wavs/LJ016-0312.npy -tests/data/ljspeech/wavs/LJ008-0114.wav|tests/data/ljspeech/wavs/LJ008-0114.npy -tests/data/ljspeech/wavs/LJ023-0062.wav|tests/data/ljspeech/wavs/LJ023-0062.npy -tests/data/ljspeech/wavs/LJ011-0020.wav|tests/data/ljspeech/wavs/LJ011-0020.npy -tests/data/ljspeech/wavs/LJ024-0064.wav|tests/data/ljspeech/wavs/LJ024-0064.npy -tests/data/ljspeech/wavs/LJ005-0037.wav|tests/data/ljspeech/wavs/LJ005-0037.npy -tests/data/ljspeech/wavs/LJ043-0112.wav|tests/data/ljspeech/wavs/LJ043-0112.npy -tests/data/ljspeech/wavs/LJ024-0038.wav|tests/data/ljspeech/wavs/LJ024-0038.npy -tests/data/ljspeech/wavs/LJ023-0011.wav|tests/data/ljspeech/wavs/LJ023-0011.npy -tests/data/ljspeech/wavs/LJ006-0208.wav|tests/data/ljspeech/wavs/LJ006-0208.npy -tests/data/ljspeech/wavs/LJ025-0051.wav|tests/data/ljspeech/wavs/LJ025-0051.npy -tests/data/ljspeech/wavs/LJ035-0187.wav|tests/data/ljspeech/wavs/LJ035-0187.npy -tests/data/ljspeech/wavs/LJ028-0160.wav|tests/data/ljspeech/wavs/LJ028-0160.npy -tests/data/ljspeech/wavs/LJ041-0091.wav|tests/data/ljspeech/wavs/LJ041-0091.npy -tests/data/ljspeech/wavs/LJ008-0161.wav|tests/data/ljspeech/wavs/LJ008-0161.npy -tests/data/ljspeech/wavs/LJ017-0042.wav|tests/data/ljspeech/wavs/LJ017-0042.npy -tests/data/ljspeech/wavs/LJ036-0151.wav|tests/data/ljspeech/wavs/LJ036-0151.npy -tests/data/ljspeech/wavs/LJ032-0229.wav|tests/data/ljspeech/wavs/LJ032-0229.npy -tests/data/ljspeech/wavs/LJ008-0271.wav|tests/data/ljspeech/wavs/LJ008-0271.npy -tests/data/ljspeech/wavs/LJ047-0210.wav|tests/data/ljspeech/wavs/LJ047-0210.npy -tests/data/ljspeech/wavs/LJ028-0224.wav|tests/data/ljspeech/wavs/LJ028-0224.npy -tests/data/ljspeech/wavs/LJ024-0034.wav|tests/data/ljspeech/wavs/LJ024-0034.npy -tests/data/ljspeech/wavs/LJ009-0088.wav|tests/data/ljspeech/wavs/LJ009-0088.npy -tests/data/ljspeech/wavs/LJ031-0062.wav|tests/data/ljspeech/wavs/LJ031-0062.npy -tests/data/ljspeech/wavs/LJ037-0237.wav|tests/data/ljspeech/wavs/LJ037-0237.npy -tests/data/ljspeech/wavs/LJ040-0128.wav|tests/data/ljspeech/wavs/LJ040-0128.npy -tests/data/ljspeech/wavs/LJ032-0061.wav|tests/data/ljspeech/wavs/LJ032-0061.npy -tests/data/ljspeech/wavs/LJ050-0107.wav|tests/data/ljspeech/wavs/LJ050-0107.npy -tests/data/ljspeech/wavs/LJ007-0033.wav|tests/data/ljspeech/wavs/LJ007-0033.npy -tests/data/ljspeech/wavs/LJ037-0222.wav|tests/data/ljspeech/wavs/LJ037-0222.npy -tests/data/ljspeech/wavs/LJ016-0409.wav|tests/data/ljspeech/wavs/LJ016-0409.npy -tests/data/ljspeech/wavs/LJ015-0179.wav|tests/data/ljspeech/wavs/LJ015-0179.npy -tests/data/ljspeech/wavs/LJ016-0187.wav|tests/data/ljspeech/wavs/LJ016-0187.npy -tests/data/ljspeech/wavs/LJ007-0071.wav|tests/data/ljspeech/wavs/LJ007-0071.npy -tests/data/ljspeech/wavs/LJ022-0060.wav|tests/data/ljspeech/wavs/LJ022-0060.npy -tests/data/ljspeech/wavs/LJ047-0135.wav|tests/data/ljspeech/wavs/LJ047-0135.npy -tests/data/ljspeech/wavs/LJ040-0090.wav|tests/data/ljspeech/wavs/LJ040-0090.npy -tests/data/ljspeech/wavs/LJ011-0044.wav|tests/data/ljspeech/wavs/LJ011-0044.npy -tests/data/ljspeech/wavs/LJ015-0279.wav|tests/data/ljspeech/wavs/LJ015-0279.npy -tests/data/ljspeech/wavs/LJ014-0237.wav|tests/data/ljspeech/wavs/LJ014-0237.npy -tests/data/ljspeech/wavs/LJ014-0202.wav|tests/data/ljspeech/wavs/LJ014-0202.npy -tests/data/ljspeech/wavs/LJ028-0112.wav|tests/data/ljspeech/wavs/LJ028-0112.npy -tests/data/ljspeech/wavs/LJ010-0094.wav|tests/data/ljspeech/wavs/LJ010-0094.npy -tests/data/ljspeech/wavs/LJ015-0224.wav|tests/data/ljspeech/wavs/LJ015-0224.npy -tests/data/ljspeech/wavs/LJ009-0301.wav|tests/data/ljspeech/wavs/LJ009-0301.npy -tests/data/ljspeech/wavs/LJ012-0228.wav|tests/data/ljspeech/wavs/LJ012-0228.npy -tests/data/ljspeech/wavs/LJ047-0219.wav|tests/data/ljspeech/wavs/LJ047-0219.npy -tests/data/ljspeech/wavs/LJ025-0130.wav|tests/data/ljspeech/wavs/LJ025-0130.npy -tests/data/ljspeech/wavs/LJ038-0033.wav|tests/data/ljspeech/wavs/LJ038-0033.npy -tests/data/ljspeech/wavs/LJ037-0061.wav|tests/data/ljspeech/wavs/LJ037-0061.npy -tests/data/ljspeech/wavs/LJ025-0105.wav|tests/data/ljspeech/wavs/LJ025-0105.npy -tests/data/ljspeech/wavs/LJ027-0064.wav|tests/data/ljspeech/wavs/LJ027-0064.npy -tests/data/ljspeech/wavs/LJ021-0059.wav|tests/data/ljspeech/wavs/LJ021-0059.npy -tests/data/ljspeech/wavs/LJ011-0234.wav|tests/data/ljspeech/wavs/LJ011-0234.npy -tests/data/ljspeech/wavs/LJ009-0010.wav|tests/data/ljspeech/wavs/LJ009-0010.npy -tests/data/ljspeech/wavs/LJ015-0161.wav|tests/data/ljspeech/wavs/LJ015-0161.npy -tests/data/ljspeech/wavs/LJ012-0025.wav|tests/data/ljspeech/wavs/LJ012-0025.npy -tests/data/ljspeech/wavs/LJ032-0075.wav|tests/data/ljspeech/wavs/LJ032-0075.npy -tests/data/ljspeech/wavs/LJ029-0185.wav|tests/data/ljspeech/wavs/LJ029-0185.npy -tests/data/ljspeech/wavs/LJ046-0151.wav|tests/data/ljspeech/wavs/LJ046-0151.npy -tests/data/ljspeech/wavs/LJ044-0205.wav|tests/data/ljspeech/wavs/LJ044-0205.npy -tests/data/ljspeech/wavs/LJ023-0096.wav|tests/data/ljspeech/wavs/LJ023-0096.npy -tests/data/ljspeech/wavs/LJ043-0052.wav|tests/data/ljspeech/wavs/LJ043-0052.npy -tests/data/ljspeech/wavs/LJ049-0003.wav|tests/data/ljspeech/wavs/LJ049-0003.npy -tests/data/ljspeech/wavs/LJ048-0156.wav|tests/data/ljspeech/wavs/LJ048-0156.npy -tests/data/ljspeech/wavs/LJ019-0180.wav|tests/data/ljspeech/wavs/LJ019-0180.npy -tests/data/ljspeech/wavs/LJ047-0002.wav|tests/data/ljspeech/wavs/LJ047-0002.npy -tests/data/ljspeech/wavs/LJ042-0118.wav|tests/data/ljspeech/wavs/LJ042-0118.npy -tests/data/ljspeech/wavs/LJ034-0105.wav|tests/data/ljspeech/wavs/LJ034-0105.npy -tests/data/ljspeech/wavs/LJ005-0178.wav|tests/data/ljspeech/wavs/LJ005-0178.npy -tests/data/ljspeech/wavs/LJ004-0052.wav|tests/data/ljspeech/wavs/LJ004-0052.npy -tests/data/ljspeech/wavs/LJ003-0123.wav|tests/data/ljspeech/wavs/LJ003-0123.npy -tests/data/ljspeech/wavs/LJ026-0105.wav|tests/data/ljspeech/wavs/LJ026-0105.npy -tests/data/ljspeech/wavs/LJ019-0126.wav|tests/data/ljspeech/wavs/LJ019-0126.npy -tests/data/ljspeech/wavs/LJ030-0075.wav|tests/data/ljspeech/wavs/LJ030-0075.npy -tests/data/ljspeech/wavs/LJ017-0258.wav|tests/data/ljspeech/wavs/LJ017-0258.npy -tests/data/ljspeech/wavs/LJ035-0103.wav|tests/data/ljspeech/wavs/LJ035-0103.npy -tests/data/ljspeech/wavs/LJ045-0221.wav|tests/data/ljspeech/wavs/LJ045-0221.npy -tests/data/ljspeech/wavs/LJ018-0008.wav|tests/data/ljspeech/wavs/LJ018-0008.npy -tests/data/ljspeech/wavs/LJ011-0132.wav|tests/data/ljspeech/wavs/LJ011-0132.npy -tests/data/ljspeech/wavs/LJ049-0018.wav|tests/data/ljspeech/wavs/LJ049-0018.npy -tests/data/ljspeech/wavs/LJ003-0279.wav|tests/data/ljspeech/wavs/LJ003-0279.npy -tests/data/ljspeech/wavs/LJ049-0010.wav|tests/data/ljspeech/wavs/LJ049-0010.npy -tests/data/ljspeech/wavs/LJ036-0061.wav|tests/data/ljspeech/wavs/LJ036-0061.npy -tests/data/ljspeech/wavs/LJ045-0084.wav|tests/data/ljspeech/wavs/LJ045-0084.npy -tests/data/ljspeech/wavs/LJ027-0040.wav|tests/data/ljspeech/wavs/LJ027-0040.npy -tests/data/ljspeech/wavs/LJ008-0069.wav|tests/data/ljspeech/wavs/LJ008-0069.npy -tests/data/ljspeech/wavs/LJ030-0240.wav|tests/data/ljspeech/wavs/LJ030-0240.npy -tests/data/ljspeech/wavs/LJ042-0011.wav|tests/data/ljspeech/wavs/LJ042-0011.npy -tests/data/ljspeech/wavs/LJ043-0134.wav|tests/data/ljspeech/wavs/LJ043-0134.npy -tests/data/ljspeech/wavs/LJ032-0024.wav|tests/data/ljspeech/wavs/LJ032-0024.npy -tests/data/ljspeech/wavs/LJ033-0113.wav|tests/data/ljspeech/wavs/LJ033-0113.npy -tests/data/ljspeech/wavs/LJ031-0070.wav|tests/data/ljspeech/wavs/LJ031-0070.npy -tests/data/ljspeech/wavs/LJ036-0177.wav|tests/data/ljspeech/wavs/LJ036-0177.npy -tests/data/ljspeech/wavs/LJ034-0020.wav|tests/data/ljspeech/wavs/LJ034-0020.npy -tests/data/ljspeech/wavs/LJ026-0126.wav|tests/data/ljspeech/wavs/LJ026-0126.npy -tests/data/ljspeech/wavs/LJ032-0023.wav|tests/data/ljspeech/wavs/LJ032-0023.npy -tests/data/ljspeech/wavs/LJ050-0019.wav|tests/data/ljspeech/wavs/LJ050-0019.npy -tests/data/ljspeech/wavs/LJ043-0167.wav|tests/data/ljspeech/wavs/LJ043-0167.npy -tests/data/ljspeech/wavs/LJ004-0150.wav|tests/data/ljspeech/wavs/LJ004-0150.npy -tests/data/ljspeech/wavs/LJ036-0014.wav|tests/data/ljspeech/wavs/LJ036-0014.npy -tests/data/ljspeech/wavs/LJ005-0231.wav|tests/data/ljspeech/wavs/LJ005-0231.npy -tests/data/ljspeech/wavs/LJ049-0025.wav|tests/data/ljspeech/wavs/LJ049-0025.npy -tests/data/ljspeech/wavs/LJ035-0051.wav|tests/data/ljspeech/wavs/LJ035-0051.npy -tests/data/ljspeech/wavs/LJ049-0090.wav|tests/data/ljspeech/wavs/LJ049-0090.npy -tests/data/ljspeech/wavs/LJ022-0192.wav|tests/data/ljspeech/wavs/LJ022-0192.npy -tests/data/ljspeech/wavs/LJ038-0063.wav|tests/data/ljspeech/wavs/LJ038-0063.npy -tests/data/ljspeech/wavs/LJ016-0055.wav|tests/data/ljspeech/wavs/LJ016-0055.npy -tests/data/ljspeech/wavs/LJ035-0014.wav|tests/data/ljspeech/wavs/LJ035-0014.npy -tests/data/ljspeech/wavs/LJ011-0008.wav|tests/data/ljspeech/wavs/LJ011-0008.npy -tests/data/ljspeech/wavs/LJ028-0018.wav|tests/data/ljspeech/wavs/LJ028-0018.npy -tests/data/ljspeech/wavs/LJ041-0094.wav|tests/data/ljspeech/wavs/LJ041-0094.npy -tests/data/ljspeech/wavs/LJ001-0090.wav|tests/data/ljspeech/wavs/LJ001-0090.npy -tests/data/ljspeech/wavs/LJ010-0283.wav|tests/data/ljspeech/wavs/LJ010-0283.npy -tests/data/ljspeech/wavs/LJ036-0136.wav|tests/data/ljspeech/wavs/LJ036-0136.npy -tests/data/ljspeech/wavs/LJ010-0286.wav|tests/data/ljspeech/wavs/LJ010-0286.npy -tests/data/ljspeech/wavs/LJ002-0007.wav|tests/data/ljspeech/wavs/LJ002-0007.npy -tests/data/ljspeech/wavs/LJ004-0137.wav|tests/data/ljspeech/wavs/LJ004-0137.npy -tests/data/ljspeech/wavs/LJ035-0196.wav|tests/data/ljspeech/wavs/LJ035-0196.npy -tests/data/ljspeech/wavs/LJ030-0029.wav|tests/data/ljspeech/wavs/LJ030-0029.npy -tests/data/ljspeech/wavs/LJ034-0146.wav|tests/data/ljspeech/wavs/LJ034-0146.npy -tests/data/ljspeech/wavs/LJ036-0074.wav|tests/data/ljspeech/wavs/LJ036-0074.npy -tests/data/ljspeech/wavs/LJ038-0164.wav|tests/data/ljspeech/wavs/LJ038-0164.npy -tests/data/ljspeech/wavs/LJ034-0009.wav|tests/data/ljspeech/wavs/LJ034-0009.npy -tests/data/ljspeech/wavs/LJ031-0003.wav|tests/data/ljspeech/wavs/LJ031-0003.npy -tests/data/ljspeech/wavs/LJ003-0220.wav|tests/data/ljspeech/wavs/LJ003-0220.npy -tests/data/ljspeech/wavs/LJ017-0271.wav|tests/data/ljspeech/wavs/LJ017-0271.npy -tests/data/ljspeech/wavs/LJ046-0116.wav|tests/data/ljspeech/wavs/LJ046-0116.npy -tests/data/ljspeech/wavs/LJ041-0162.wav|tests/data/ljspeech/wavs/LJ041-0162.npy -tests/data/ljspeech/wavs/LJ039-0030.wav|tests/data/ljspeech/wavs/LJ039-0030.npy -tests/data/ljspeech/wavs/LJ002-0142.wav|tests/data/ljspeech/wavs/LJ002-0142.npy -tests/data/ljspeech/wavs/LJ024-0051.wav|tests/data/ljspeech/wavs/LJ024-0051.npy -tests/data/ljspeech/wavs/LJ009-0025.wav|tests/data/ljspeech/wavs/LJ009-0025.npy -tests/data/ljspeech/wavs/LJ028-0461.wav|tests/data/ljspeech/wavs/LJ028-0461.npy -tests/data/ljspeech/wavs/LJ005-0034.wav|tests/data/ljspeech/wavs/LJ005-0034.npy -tests/data/ljspeech/wavs/LJ002-0239.wav|tests/data/ljspeech/wavs/LJ002-0239.npy -tests/data/ljspeech/wavs/LJ046-0024.wav|tests/data/ljspeech/wavs/LJ046-0024.npy -tests/data/ljspeech/wavs/LJ016-0193.wav|tests/data/ljspeech/wavs/LJ016-0193.npy -tests/data/ljspeech/wavs/LJ039-0152.wav|tests/data/ljspeech/wavs/LJ039-0152.npy -tests/data/ljspeech/wavs/LJ010-0192.wav|tests/data/ljspeech/wavs/LJ010-0192.npy -tests/data/ljspeech/wavs/LJ040-0099.wav|tests/data/ljspeech/wavs/LJ040-0099.npy -tests/data/ljspeech/wavs/LJ010-0042.wav|tests/data/ljspeech/wavs/LJ010-0042.npy -tests/data/ljspeech/wavs/LJ013-0216.wav|tests/data/ljspeech/wavs/LJ013-0216.npy -tests/data/ljspeech/wavs/LJ008-0233.wav|tests/data/ljspeech/wavs/LJ008-0233.npy -tests/data/ljspeech/wavs/LJ014-0104.wav|tests/data/ljspeech/wavs/LJ014-0104.npy -tests/data/ljspeech/wavs/LJ014-0311.wav|tests/data/ljspeech/wavs/LJ014-0311.npy -tests/data/ljspeech/wavs/LJ001-0185.wav|tests/data/ljspeech/wavs/LJ001-0185.npy -tests/data/ljspeech/wavs/LJ031-0160.wav|tests/data/ljspeech/wavs/LJ031-0160.npy -tests/data/ljspeech/wavs/LJ023-0055.wav|tests/data/ljspeech/wavs/LJ023-0055.npy -tests/data/ljspeech/wavs/LJ017-0025.wav|tests/data/ljspeech/wavs/LJ017-0025.npy -tests/data/ljspeech/wavs/LJ029-0136.wav|tests/data/ljspeech/wavs/LJ029-0136.npy -tests/data/ljspeech/wavs/LJ012-0136.wav|tests/data/ljspeech/wavs/LJ012-0136.npy -tests/data/ljspeech/wavs/LJ042-0127.wav|tests/data/ljspeech/wavs/LJ042-0127.npy -tests/data/ljspeech/wavs/LJ034-0110.wav|tests/data/ljspeech/wavs/LJ034-0110.npy -tests/data/ljspeech/wavs/LJ032-0066.wav|tests/data/ljspeech/wavs/LJ032-0066.npy -tests/data/ljspeech/wavs/LJ006-0007.wav|tests/data/ljspeech/wavs/LJ006-0007.npy -tests/data/ljspeech/wavs/LJ035-0074.wav|tests/data/ljspeech/wavs/LJ035-0074.npy -tests/data/ljspeech/wavs/LJ047-0045.wav|tests/data/ljspeech/wavs/LJ047-0045.npy -tests/data/ljspeech/wavs/LJ007-0073.wav|tests/data/ljspeech/wavs/LJ007-0073.npy -tests/data/ljspeech/wavs/LJ022-0148.wav|tests/data/ljspeech/wavs/LJ022-0148.npy -tests/data/ljspeech/wavs/LJ017-0150.wav|tests/data/ljspeech/wavs/LJ017-0150.npy -tests/data/ljspeech/wavs/LJ019-0380.wav|tests/data/ljspeech/wavs/LJ019-0380.npy -tests/data/ljspeech/wavs/LJ028-0260.wav|tests/data/ljspeech/wavs/LJ028-0260.npy -tests/data/ljspeech/wavs/LJ030-0094.wav|tests/data/ljspeech/wavs/LJ030-0094.npy -tests/data/ljspeech/wavs/LJ029-0128.wav|tests/data/ljspeech/wavs/LJ029-0128.npy -tests/data/ljspeech/wavs/LJ015-0053.wav|tests/data/ljspeech/wavs/LJ015-0053.npy -tests/data/ljspeech/wavs/LJ027-0043.wav|tests/data/ljspeech/wavs/LJ027-0043.npy -tests/data/ljspeech/wavs/LJ050-0238.wav|tests/data/ljspeech/wavs/LJ050-0238.npy -tests/data/ljspeech/wavs/LJ013-0099.wav|tests/data/ljspeech/wavs/LJ013-0099.npy -tests/data/ljspeech/wavs/LJ020-0006.wav|tests/data/ljspeech/wavs/LJ020-0006.npy -tests/data/ljspeech/wavs/LJ024-0021.wav|tests/data/ljspeech/wavs/LJ024-0021.npy -tests/data/ljspeech/wavs/LJ019-0305.wav|tests/data/ljspeech/wavs/LJ019-0305.npy -tests/data/ljspeech/wavs/LJ033-0158.wav|tests/data/ljspeech/wavs/LJ033-0158.npy -tests/data/ljspeech/wavs/LJ016-0088.wav|tests/data/ljspeech/wavs/LJ016-0088.npy -tests/data/ljspeech/wavs/LJ014-0338.wav|tests/data/ljspeech/wavs/LJ014-0338.npy -tests/data/ljspeech/wavs/LJ019-0249.wav|tests/data/ljspeech/wavs/LJ019-0249.npy -tests/data/ljspeech/wavs/LJ003-0259.wav|tests/data/ljspeech/wavs/LJ003-0259.npy -tests/data/ljspeech/wavs/LJ035-0151.wav|tests/data/ljspeech/wavs/LJ035-0151.npy -tests/data/ljspeech/wavs/LJ004-0221.wav|tests/data/ljspeech/wavs/LJ004-0221.npy -tests/data/ljspeech/wavs/LJ035-0081.wav|tests/data/ljspeech/wavs/LJ035-0081.npy -tests/data/ljspeech/wavs/LJ038-0301.wav|tests/data/ljspeech/wavs/LJ038-0301.npy -tests/data/ljspeech/wavs/LJ012-0194.wav|tests/data/ljspeech/wavs/LJ012-0194.npy -tests/data/ljspeech/wavs/LJ003-0200.wav|tests/data/ljspeech/wavs/LJ003-0200.npy -tests/data/ljspeech/wavs/LJ018-0316.wav|tests/data/ljspeech/wavs/LJ018-0316.npy -tests/data/ljspeech/wavs/LJ048-0041.wav|tests/data/ljspeech/wavs/LJ048-0041.npy -tests/data/ljspeech/wavs/LJ046-0131.wav|tests/data/ljspeech/wavs/LJ046-0131.npy -tests/data/ljspeech/wavs/LJ014-0230.wav|tests/data/ljspeech/wavs/LJ014-0230.npy -tests/data/ljspeech/wavs/LJ016-0350.wav|tests/data/ljspeech/wavs/LJ016-0350.npy -tests/data/ljspeech/wavs/LJ042-0251.wav|tests/data/ljspeech/wavs/LJ042-0251.npy -tests/data/ljspeech/wavs/LJ014-0304.wav|tests/data/ljspeech/wavs/LJ014-0304.npy -tests/data/ljspeech/wavs/LJ009-0246.wav|tests/data/ljspeech/wavs/LJ009-0246.npy -tests/data/ljspeech/wavs/LJ024-0050.wav|tests/data/ljspeech/wavs/LJ024-0050.npy -tests/data/ljspeech/wavs/LJ036-0188.wav|tests/data/ljspeech/wavs/LJ036-0188.npy -tests/data/ljspeech/wavs/LJ001-0081.wav|tests/data/ljspeech/wavs/LJ001-0081.npy -tests/data/ljspeech/wavs/LJ045-0223.wav|tests/data/ljspeech/wavs/LJ045-0223.npy -tests/data/ljspeech/wavs/LJ022-0182.wav|tests/data/ljspeech/wavs/LJ022-0182.npy -tests/data/ljspeech/wavs/LJ027-0151.wav|tests/data/ljspeech/wavs/LJ027-0151.npy -tests/data/ljspeech/wavs/LJ014-0290.wav|tests/data/ljspeech/wavs/LJ014-0290.npy -tests/data/ljspeech/wavs/LJ008-0137.wav|tests/data/ljspeech/wavs/LJ008-0137.npy -tests/data/ljspeech/wavs/LJ037-0126.wav|tests/data/ljspeech/wavs/LJ037-0126.npy -tests/data/ljspeech/wavs/LJ050-0230.wav|tests/data/ljspeech/wavs/LJ050-0230.npy -tests/data/ljspeech/wavs/LJ027-0148.wav|tests/data/ljspeech/wavs/LJ027-0148.npy -tests/data/ljspeech/wavs/LJ028-0369.wav|tests/data/ljspeech/wavs/LJ028-0369.npy -tests/data/ljspeech/wavs/LJ015-0270.wav|tests/data/ljspeech/wavs/LJ015-0270.npy -tests/data/ljspeech/wavs/LJ040-0226.wav|tests/data/ljspeech/wavs/LJ040-0226.npy -tests/data/ljspeech/wavs/LJ012-0222.wav|tests/data/ljspeech/wavs/LJ012-0222.npy -tests/data/ljspeech/wavs/LJ003-0044.wav|tests/data/ljspeech/wavs/LJ003-0044.npy -tests/data/ljspeech/wavs/LJ017-0005.wav|tests/data/ljspeech/wavs/LJ017-0005.npy -tests/data/ljspeech/wavs/LJ016-0289.wav|tests/data/ljspeech/wavs/LJ016-0289.npy -tests/data/ljspeech/wavs/LJ027-0080.wav|tests/data/ljspeech/wavs/LJ027-0080.npy -tests/data/ljspeech/wavs/LJ043-0056.wav|tests/data/ljspeech/wavs/LJ043-0056.npy -tests/data/ljspeech/wavs/LJ008-0290.wav|tests/data/ljspeech/wavs/LJ008-0290.npy -tests/data/ljspeech/wavs/LJ021-0136.wav|tests/data/ljspeech/wavs/LJ021-0136.npy -tests/data/ljspeech/wavs/LJ005-0288.wav|tests/data/ljspeech/wavs/LJ005-0288.npy -tests/data/ljspeech/wavs/LJ023-0034.wav|tests/data/ljspeech/wavs/LJ023-0034.npy -tests/data/ljspeech/wavs/LJ027-0150.wav|tests/data/ljspeech/wavs/LJ027-0150.npy -tests/data/ljspeech/wavs/LJ018-0294.wav|tests/data/ljspeech/wavs/LJ018-0294.npy -tests/data/ljspeech/wavs/LJ031-0115.wav|tests/data/ljspeech/wavs/LJ031-0115.npy -tests/data/ljspeech/wavs/LJ038-0103.wav|tests/data/ljspeech/wavs/LJ038-0103.npy -tests/data/ljspeech/wavs/LJ046-0193.wav|tests/data/ljspeech/wavs/LJ046-0193.npy -tests/data/ljspeech/wavs/LJ030-0101.wav|tests/data/ljspeech/wavs/LJ030-0101.npy -tests/data/ljspeech/wavs/LJ019-0084.wav|tests/data/ljspeech/wavs/LJ019-0084.npy -tests/data/ljspeech/wavs/LJ014-0293.wav|tests/data/ljspeech/wavs/LJ014-0293.npy -tests/data/ljspeech/wavs/LJ005-0076.wav|tests/data/ljspeech/wavs/LJ005-0076.npy -tests/data/ljspeech/wavs/LJ036-0083.wav|tests/data/ljspeech/wavs/LJ036-0083.npy -tests/data/ljspeech/wavs/LJ036-0025.wav|tests/data/ljspeech/wavs/LJ036-0025.npy -tests/data/ljspeech/wavs/LJ038-0187.wav|tests/data/ljspeech/wavs/LJ038-0187.npy -tests/data/ljspeech/wavs/LJ018-0163.wav|tests/data/ljspeech/wavs/LJ018-0163.npy -tests/data/ljspeech/wavs/LJ036-0130.wav|tests/data/ljspeech/wavs/LJ036-0130.npy -tests/data/ljspeech/wavs/LJ028-0367.wav|tests/data/ljspeech/wavs/LJ028-0367.npy -tests/data/ljspeech/wavs/LJ028-0168.wav|tests/data/ljspeech/wavs/LJ028-0168.npy -tests/data/ljspeech/wavs/LJ014-0095.wav|tests/data/ljspeech/wavs/LJ014-0095.npy -tests/data/ljspeech/wavs/LJ018-0082.wav|tests/data/ljspeech/wavs/LJ018-0082.npy -tests/data/ljspeech/wavs/LJ030-0174.wav|tests/data/ljspeech/wavs/LJ030-0174.npy -tests/data/ljspeech/wavs/LJ038-0141.wav|tests/data/ljspeech/wavs/LJ038-0141.npy -tests/data/ljspeech/wavs/LJ017-0045.wav|tests/data/ljspeech/wavs/LJ017-0045.npy -tests/data/ljspeech/wavs/LJ039-0041.wav|tests/data/ljspeech/wavs/LJ039-0041.npy -tests/data/ljspeech/wavs/LJ012-0280.wav|tests/data/ljspeech/wavs/LJ012-0280.npy -tests/data/ljspeech/wavs/LJ006-0168.wav|tests/data/ljspeech/wavs/LJ006-0168.npy -tests/data/ljspeech/wavs/LJ018-0304.wav|tests/data/ljspeech/wavs/LJ018-0304.npy -tests/data/ljspeech/wavs/LJ015-0184.wav|tests/data/ljspeech/wavs/LJ015-0184.npy -tests/data/ljspeech/wavs/LJ046-0018.wav|tests/data/ljspeech/wavs/LJ046-0018.npy -tests/data/ljspeech/wavs/LJ015-0050.wav|tests/data/ljspeech/wavs/LJ015-0050.npy -tests/data/ljspeech/wavs/LJ017-0152.wav|tests/data/ljspeech/wavs/LJ017-0152.npy -tests/data/ljspeech/wavs/LJ028-0199.wav|tests/data/ljspeech/wavs/LJ028-0199.npy -tests/data/ljspeech/wavs/LJ017-0192.wav|tests/data/ljspeech/wavs/LJ017-0192.npy -tests/data/ljspeech/wavs/LJ038-0228.wav|tests/data/ljspeech/wavs/LJ038-0228.npy -tests/data/ljspeech/wavs/LJ012-0259.wav|tests/data/ljspeech/wavs/LJ012-0259.npy -tests/data/ljspeech/wavs/LJ034-0121.wav|tests/data/ljspeech/wavs/LJ034-0121.npy -tests/data/ljspeech/wavs/LJ046-0235.wav|tests/data/ljspeech/wavs/LJ046-0235.npy -tests/data/ljspeech/wavs/LJ047-0077.wav|tests/data/ljspeech/wavs/LJ047-0077.npy -tests/data/ljspeech/wavs/LJ006-0023.wav|tests/data/ljspeech/wavs/LJ006-0023.npy -tests/data/ljspeech/wavs/LJ011-0112.wav|tests/data/ljspeech/wavs/LJ011-0112.npy -tests/data/ljspeech/wavs/LJ020-0070.wav|tests/data/ljspeech/wavs/LJ020-0070.npy -tests/data/ljspeech/wavs/LJ042-0148.wav|tests/data/ljspeech/wavs/LJ042-0148.npy -tests/data/ljspeech/wavs/LJ007-0230.wav|tests/data/ljspeech/wavs/LJ007-0230.npy -tests/data/ljspeech/wavs/LJ025-0100.wav|tests/data/ljspeech/wavs/LJ025-0100.npy -tests/data/ljspeech/wavs/LJ048-0016.wav|tests/data/ljspeech/wavs/LJ048-0016.npy -tests/data/ljspeech/wavs/LJ010-0193.wav|tests/data/ljspeech/wavs/LJ010-0193.npy -tests/data/ljspeech/wavs/LJ042-0072.wav|tests/data/ljspeech/wavs/LJ042-0072.npy -tests/data/ljspeech/wavs/LJ021-0028.wav|tests/data/ljspeech/wavs/LJ021-0028.npy -tests/data/ljspeech/wavs/LJ042-0080.wav|tests/data/ljspeech/wavs/LJ042-0080.npy -tests/data/ljspeech/wavs/LJ050-0017.wav|tests/data/ljspeech/wavs/LJ050-0017.npy -tests/data/ljspeech/wavs/LJ049-0224.wav|tests/data/ljspeech/wavs/LJ049-0224.npy -tests/data/ljspeech/wavs/LJ004-0068.wav|tests/data/ljspeech/wavs/LJ004-0068.npy -tests/data/ljspeech/wavs/LJ010-0135.wav|tests/data/ljspeech/wavs/LJ010-0135.npy -tests/data/ljspeech/wavs/LJ021-0105.wav|tests/data/ljspeech/wavs/LJ021-0105.npy -tests/data/ljspeech/wavs/LJ021-0063.wav|tests/data/ljspeech/wavs/LJ021-0063.npy -tests/data/ljspeech/wavs/LJ012-0220.wav|tests/data/ljspeech/wavs/LJ012-0220.npy -tests/data/ljspeech/wavs/LJ042-0111.wav|tests/data/ljspeech/wavs/LJ042-0111.npy -tests/data/ljspeech/wavs/LJ047-0084.wav|tests/data/ljspeech/wavs/LJ047-0084.npy -tests/data/ljspeech/wavs/LJ001-0126.wav|tests/data/ljspeech/wavs/LJ001-0126.npy -tests/data/ljspeech/wavs/LJ022-0018.wav|tests/data/ljspeech/wavs/LJ022-0018.npy -tests/data/ljspeech/wavs/LJ023-0008.wav|tests/data/ljspeech/wavs/LJ023-0008.npy -tests/data/ljspeech/wavs/LJ005-0280.wav|tests/data/ljspeech/wavs/LJ005-0280.npy -tests/data/ljspeech/wavs/LJ004-0243.wav|tests/data/ljspeech/wavs/LJ004-0243.npy -tests/data/ljspeech/wavs/LJ008-0112.wav|tests/data/ljspeech/wavs/LJ008-0112.npy -tests/data/ljspeech/wavs/LJ009-0279.wav|tests/data/ljspeech/wavs/LJ009-0279.npy -tests/data/ljspeech/wavs/LJ046-0084.wav|tests/data/ljspeech/wavs/LJ046-0084.npy -tests/data/ljspeech/wavs/LJ008-0123.wav|tests/data/ljspeech/wavs/LJ008-0123.npy -tests/data/ljspeech/wavs/LJ032-0026.wav|tests/data/ljspeech/wavs/LJ032-0026.npy -tests/data/ljspeech/wavs/LJ044-0065.wav|tests/data/ljspeech/wavs/LJ044-0065.npy -tests/data/ljspeech/wavs/LJ032-0220.wav|tests/data/ljspeech/wavs/LJ032-0220.npy -tests/data/ljspeech/wavs/LJ042-0031.wav|tests/data/ljspeech/wavs/LJ042-0031.npy -tests/data/ljspeech/wavs/LJ025-0079.wav|tests/data/ljspeech/wavs/LJ025-0079.npy -tests/data/ljspeech/wavs/LJ028-0420.wav|tests/data/ljspeech/wavs/LJ028-0420.npy -tests/data/ljspeech/wavs/LJ045-0003.wav|tests/data/ljspeech/wavs/LJ045-0003.npy -tests/data/ljspeech/wavs/LJ009-0047.wav|tests/data/ljspeech/wavs/LJ009-0047.npy -tests/data/ljspeech/wavs/LJ001-0141.wav|tests/data/ljspeech/wavs/LJ001-0141.npy -tests/data/ljspeech/wavs/LJ008-0317.wav|tests/data/ljspeech/wavs/LJ008-0317.npy -tests/data/ljspeech/wavs/LJ005-0166.wav|tests/data/ljspeech/wavs/LJ005-0166.npy -tests/data/ljspeech/wavs/LJ005-0276.wav|tests/data/ljspeech/wavs/LJ005-0276.npy -tests/data/ljspeech/wavs/LJ002-0281.wav|tests/data/ljspeech/wavs/LJ002-0281.npy -tests/data/ljspeech/wavs/LJ015-0310.wav|tests/data/ljspeech/wavs/LJ015-0310.npy -tests/data/ljspeech/wavs/LJ021-0159.wav|tests/data/ljspeech/wavs/LJ021-0159.npy -tests/data/ljspeech/wavs/LJ008-0288.wav|tests/data/ljspeech/wavs/LJ008-0288.npy -tests/data/ljspeech/wavs/LJ017-0008.wav|tests/data/ljspeech/wavs/LJ017-0008.npy -tests/data/ljspeech/wavs/LJ009-0248.wav|tests/data/ljspeech/wavs/LJ009-0248.npy -tests/data/ljspeech/wavs/LJ025-0010.wav|tests/data/ljspeech/wavs/LJ025-0010.npy -tests/data/ljspeech/wavs/LJ034-0031.wav|tests/data/ljspeech/wavs/LJ034-0031.npy -tests/data/ljspeech/wavs/LJ024-0086.wav|tests/data/ljspeech/wavs/LJ024-0086.npy -tests/data/ljspeech/wavs/LJ045-0161.wav|tests/data/ljspeech/wavs/LJ045-0161.npy -tests/data/ljspeech/wavs/LJ016-0158.wav|tests/data/ljspeech/wavs/LJ016-0158.npy -tests/data/ljspeech/wavs/LJ048-0074.wav|tests/data/ljspeech/wavs/LJ048-0074.npy -tests/data/ljspeech/wavs/LJ048-0271.wav|tests/data/ljspeech/wavs/LJ048-0271.npy -tests/data/ljspeech/wavs/LJ032-0191.wav|tests/data/ljspeech/wavs/LJ032-0191.npy -tests/data/ljspeech/wavs/LJ021-0182.wav|tests/data/ljspeech/wavs/LJ021-0182.npy -tests/data/ljspeech/wavs/LJ044-0008.wav|tests/data/ljspeech/wavs/LJ044-0008.npy -tests/data/ljspeech/wavs/LJ009-0231.wav|tests/data/ljspeech/wavs/LJ009-0231.npy -tests/data/ljspeech/wavs/LJ027-0059.wav|tests/data/ljspeech/wavs/LJ027-0059.npy -tests/data/ljspeech/wavs/LJ021-0135.wav|tests/data/ljspeech/wavs/LJ021-0135.npy -tests/data/ljspeech/wavs/LJ008-0024.wav|tests/data/ljspeech/wavs/LJ008-0024.npy -tests/data/ljspeech/wavs/LJ002-0127.wav|tests/data/ljspeech/wavs/LJ002-0127.npy -tests/data/ljspeech/wavs/LJ033-0025.wav|tests/data/ljspeech/wavs/LJ033-0025.npy -tests/data/ljspeech/wavs/LJ003-0281.wav|tests/data/ljspeech/wavs/LJ003-0281.npy -tests/data/ljspeech/wavs/LJ022-0146.wav|tests/data/ljspeech/wavs/LJ022-0146.npy -tests/data/ljspeech/wavs/LJ006-0141.wav|tests/data/ljspeech/wavs/LJ006-0141.npy -tests/data/ljspeech/wavs/LJ031-0058.wav|tests/data/ljspeech/wavs/LJ031-0058.npy -tests/data/ljspeech/wavs/LJ014-0069.wav|tests/data/ljspeech/wavs/LJ014-0069.npy -tests/data/ljspeech/wavs/LJ014-0155.wav|tests/data/ljspeech/wavs/LJ014-0155.npy -tests/data/ljspeech/wavs/LJ006-0132.wav|tests/data/ljspeech/wavs/LJ006-0132.npy -tests/data/ljspeech/wavs/LJ013-0193.wav|tests/data/ljspeech/wavs/LJ013-0193.npy -tests/data/ljspeech/wavs/LJ050-0209.wav|tests/data/ljspeech/wavs/LJ050-0209.npy -tests/data/ljspeech/wavs/LJ028-0144.wav|tests/data/ljspeech/wavs/LJ028-0144.npy -tests/data/ljspeech/wavs/LJ045-0143.wav|tests/data/ljspeech/wavs/LJ045-0143.npy -tests/data/ljspeech/wavs/LJ017-0100.wav|tests/data/ljspeech/wavs/LJ017-0100.npy -tests/data/ljspeech/wavs/LJ020-0027.wav|tests/data/ljspeech/wavs/LJ020-0027.npy -tests/data/ljspeech/wavs/LJ026-0007.wav|tests/data/ljspeech/wavs/LJ026-0007.npy -tests/data/ljspeech/wavs/LJ034-0138.wav|tests/data/ljspeech/wavs/LJ034-0138.npy -tests/data/ljspeech/wavs/LJ002-0045.wav|tests/data/ljspeech/wavs/LJ002-0045.npy -tests/data/ljspeech/wavs/LJ018-0310.wav|tests/data/ljspeech/wavs/LJ018-0310.npy -tests/data/ljspeech/wavs/LJ001-0061.wav|tests/data/ljspeech/wavs/LJ001-0061.npy -tests/data/ljspeech/wavs/LJ009-0127.wav|tests/data/ljspeech/wavs/LJ009-0127.npy -tests/data/ljspeech/wavs/LJ012-0261.wav|tests/data/ljspeech/wavs/LJ012-0261.npy -tests/data/ljspeech/wavs/LJ019-0171.wav|tests/data/ljspeech/wavs/LJ019-0171.npy -tests/data/ljspeech/wavs/LJ028-0181.wav|tests/data/ljspeech/wavs/LJ028-0181.npy -tests/data/ljspeech/wavs/LJ027-0180.wav|tests/data/ljspeech/wavs/LJ027-0180.npy -tests/data/ljspeech/wavs/LJ004-0167.wav|tests/data/ljspeech/wavs/LJ004-0167.npy -tests/data/ljspeech/wavs/LJ005-0204.wav|tests/data/ljspeech/wavs/LJ005-0204.npy -tests/data/ljspeech/wavs/LJ013-0172.wav|tests/data/ljspeech/wavs/LJ013-0172.npy -tests/data/ljspeech/wavs/LJ028-0058.wav|tests/data/ljspeech/wavs/LJ028-0058.npy -tests/data/ljspeech/wavs/LJ035-0106.wav|tests/data/ljspeech/wavs/LJ035-0106.npy -tests/data/ljspeech/wavs/LJ018-0385.wav|tests/data/ljspeech/wavs/LJ018-0385.npy -tests/data/ljspeech/wavs/LJ050-0264.wav|tests/data/ljspeech/wavs/LJ050-0264.npy -tests/data/ljspeech/wavs/LJ040-0086.wav|tests/data/ljspeech/wavs/LJ040-0086.npy -tests/data/ljspeech/wavs/LJ010-0228.wav|tests/data/ljspeech/wavs/LJ010-0228.npy -tests/data/ljspeech/wavs/LJ038-0194.wav|tests/data/ljspeech/wavs/LJ038-0194.npy -tests/data/ljspeech/wavs/LJ015-0014.wav|tests/data/ljspeech/wavs/LJ015-0014.npy -tests/data/ljspeech/wavs/LJ008-0015.wav|tests/data/ljspeech/wavs/LJ008-0015.npy -tests/data/ljspeech/wavs/LJ010-0113.wav|tests/data/ljspeech/wavs/LJ010-0113.npy -tests/data/ljspeech/wavs/LJ009-0144.wav|tests/data/ljspeech/wavs/LJ009-0144.npy -tests/data/ljspeech/wavs/LJ011-0263.wav|tests/data/ljspeech/wavs/LJ011-0263.npy -tests/data/ljspeech/wavs/LJ012-0045.wav|tests/data/ljspeech/wavs/LJ012-0045.npy -tests/data/ljspeech/wavs/LJ039-0046.wav|tests/data/ljspeech/wavs/LJ039-0046.npy -tests/data/ljspeech/wavs/LJ005-0136.wav|tests/data/ljspeech/wavs/LJ005-0136.npy -tests/data/ljspeech/wavs/LJ028-0348.wav|tests/data/ljspeech/wavs/LJ028-0348.npy -tests/data/ljspeech/wavs/LJ018-0212.wav|tests/data/ljspeech/wavs/LJ018-0212.npy -tests/data/ljspeech/wavs/LJ039-0020.wav|tests/data/ljspeech/wavs/LJ039-0020.npy -tests/data/ljspeech/wavs/LJ013-0095.wav|tests/data/ljspeech/wavs/LJ013-0095.npy -tests/data/ljspeech/wavs/LJ005-0014.wav|tests/data/ljspeech/wavs/LJ005-0014.npy -tests/data/ljspeech/wavs/LJ012-0128.wav|tests/data/ljspeech/wavs/LJ012-0128.npy -tests/data/ljspeech/wavs/LJ028-0331.wav|tests/data/ljspeech/wavs/LJ028-0331.npy -tests/data/ljspeech/wavs/LJ010-0269.wav|tests/data/ljspeech/wavs/LJ010-0269.npy -tests/data/ljspeech/wavs/LJ011-0024.wav|tests/data/ljspeech/wavs/LJ011-0024.npy -tests/data/ljspeech/wavs/LJ045-0072.wav|tests/data/ljspeech/wavs/LJ045-0072.npy -tests/data/ljspeech/wavs/LJ028-0207.wav|tests/data/ljspeech/wavs/LJ028-0207.npy -tests/data/ljspeech/wavs/LJ008-0220.wav|tests/data/ljspeech/wavs/LJ008-0220.npy -tests/data/ljspeech/wavs/LJ042-0179.wav|tests/data/ljspeech/wavs/LJ042-0179.npy -tests/data/ljspeech/wavs/LJ012-0055.wav|tests/data/ljspeech/wavs/LJ012-0055.npy -tests/data/ljspeech/wavs/LJ015-0035.wav|tests/data/ljspeech/wavs/LJ015-0035.npy -tests/data/ljspeech/wavs/LJ007-0203.wav|tests/data/ljspeech/wavs/LJ007-0203.npy -tests/data/ljspeech/wavs/LJ008-0168.wav|tests/data/ljspeech/wavs/LJ008-0168.npy -tests/data/ljspeech/wavs/LJ012-0114.wav|tests/data/ljspeech/wavs/LJ012-0114.npy -tests/data/ljspeech/wavs/LJ012-0243.wav|tests/data/ljspeech/wavs/LJ012-0243.npy -tests/data/ljspeech/wavs/LJ012-0216.wav|tests/data/ljspeech/wavs/LJ012-0216.npy -tests/data/ljspeech/wavs/LJ018-0354.wav|tests/data/ljspeech/wavs/LJ018-0354.npy -tests/data/ljspeech/wavs/LJ032-0198.wav|tests/data/ljspeech/wavs/LJ032-0198.npy -tests/data/ljspeech/wavs/LJ034-0148.wav|tests/data/ljspeech/wavs/LJ034-0148.npy -tests/data/ljspeech/wavs/LJ047-0062.wav|tests/data/ljspeech/wavs/LJ047-0062.npy -tests/data/ljspeech/wavs/LJ038-0231.wav|tests/data/ljspeech/wavs/LJ038-0231.npy -tests/data/ljspeech/wavs/LJ036-0122.wav|tests/data/ljspeech/wavs/LJ036-0122.npy -tests/data/ljspeech/wavs/LJ002-0272.wav|tests/data/ljspeech/wavs/LJ002-0272.npy -tests/data/ljspeech/wavs/LJ017-0245.wav|tests/data/ljspeech/wavs/LJ017-0245.npy -tests/data/ljspeech/wavs/LJ030-0169.wav|tests/data/ljspeech/wavs/LJ030-0169.npy -tests/data/ljspeech/wavs/LJ048-0009.wav|tests/data/ljspeech/wavs/LJ048-0009.npy -tests/data/ljspeech/wavs/LJ022-0113.wav|tests/data/ljspeech/wavs/LJ022-0113.npy -tests/data/ljspeech/wavs/LJ003-0135.wav|tests/data/ljspeech/wavs/LJ003-0135.npy -tests/data/ljspeech/wavs/LJ029-0122.wav|tests/data/ljspeech/wavs/LJ029-0122.npy -tests/data/ljspeech/wavs/LJ018-0150.wav|tests/data/ljspeech/wavs/LJ018-0150.npy -tests/data/ljspeech/wavs/LJ004-0129.wav|tests/data/ljspeech/wavs/LJ004-0129.npy -tests/data/ljspeech/wavs/LJ002-0019.wav|tests/data/ljspeech/wavs/LJ002-0019.npy -tests/data/ljspeech/wavs/LJ021-0065.wav|tests/data/ljspeech/wavs/LJ021-0065.npy -tests/data/ljspeech/wavs/LJ028-0098.wav|tests/data/ljspeech/wavs/LJ028-0098.npy -tests/data/ljspeech/wavs/LJ036-0161.wav|tests/data/ljspeech/wavs/LJ036-0161.npy -tests/data/ljspeech/wavs/LJ022-0085.wav|tests/data/ljspeech/wavs/LJ022-0085.npy -tests/data/ljspeech/wavs/LJ030-0212.wav|tests/data/ljspeech/wavs/LJ030-0212.npy -tests/data/ljspeech/wavs/LJ020-0042.wav|tests/data/ljspeech/wavs/LJ020-0042.npy -tests/data/ljspeech/wavs/LJ022-0154.wav|tests/data/ljspeech/wavs/LJ022-0154.npy -tests/data/ljspeech/wavs/LJ017-0250.wav|tests/data/ljspeech/wavs/LJ017-0250.npy -tests/data/ljspeech/wavs/LJ015-0076.wav|tests/data/ljspeech/wavs/LJ015-0076.npy -tests/data/ljspeech/wavs/LJ021-0161.wav|tests/data/ljspeech/wavs/LJ021-0161.npy -tests/data/ljspeech/wavs/LJ029-0162.wav|tests/data/ljspeech/wavs/LJ029-0162.npy -tests/data/ljspeech/wavs/LJ011-0134.wav|tests/data/ljspeech/wavs/LJ011-0134.npy -tests/data/ljspeech/wavs/LJ044-0224.wav|tests/data/ljspeech/wavs/LJ044-0224.npy -tests/data/ljspeech/wavs/LJ016-0120.wav|tests/data/ljspeech/wavs/LJ016-0120.npy -tests/data/ljspeech/wavs/LJ045-0238.wav|tests/data/ljspeech/wavs/LJ045-0238.npy -tests/data/ljspeech/wavs/LJ034-0129.wav|tests/data/ljspeech/wavs/LJ034-0129.npy -tests/data/ljspeech/wavs/LJ011-0254.wav|tests/data/ljspeech/wavs/LJ011-0254.npy -tests/data/ljspeech/wavs/LJ046-0059.wav|tests/data/ljspeech/wavs/LJ046-0059.npy -tests/data/ljspeech/wavs/LJ027-0002.wav|tests/data/ljspeech/wavs/LJ027-0002.npy -tests/data/ljspeech/wavs/LJ033-0050.wav|tests/data/ljspeech/wavs/LJ033-0050.npy -tests/data/ljspeech/wavs/LJ048-0194.wav|tests/data/ljspeech/wavs/LJ048-0194.npy -tests/data/ljspeech/wavs/LJ046-0079.wav|tests/data/ljspeech/wavs/LJ046-0079.npy -tests/data/ljspeech/wavs/LJ023-0136.wav|tests/data/ljspeech/wavs/LJ023-0136.npy -tests/data/ljspeech/wavs/LJ012-0203.wav|tests/data/ljspeech/wavs/LJ012-0203.npy -tests/data/ljspeech/wavs/LJ027-0010.wav|tests/data/ljspeech/wavs/LJ027-0010.npy -tests/data/ljspeech/wavs/LJ010-0186.wav|tests/data/ljspeech/wavs/LJ010-0186.npy -tests/data/ljspeech/wavs/LJ040-0132.wav|tests/data/ljspeech/wavs/LJ040-0132.npy -tests/data/ljspeech/wavs/LJ019-0197.wav|tests/data/ljspeech/wavs/LJ019-0197.npy -tests/data/ljspeech/wavs/LJ021-0133.wav|tests/data/ljspeech/wavs/LJ021-0133.npy -tests/data/ljspeech/wavs/LJ039-0115.wav|tests/data/ljspeech/wavs/LJ039-0115.npy -tests/data/ljspeech/wavs/LJ045-0092.wav|tests/data/ljspeech/wavs/LJ045-0092.npy -tests/data/ljspeech/wavs/LJ019-0055.wav|tests/data/ljspeech/wavs/LJ019-0055.npy -tests/data/ljspeech/wavs/LJ039-0147.wav|tests/data/ljspeech/wavs/LJ039-0147.npy -tests/data/ljspeech/wavs/LJ006-0081.wav|tests/data/ljspeech/wavs/LJ006-0081.npy -tests/data/ljspeech/wavs/LJ001-0160.wav|tests/data/ljspeech/wavs/LJ001-0160.npy -tests/data/ljspeech/wavs/LJ026-0006.wav|tests/data/ljspeech/wavs/LJ026-0006.npy -tests/data/ljspeech/wavs/LJ037-0048.wav|tests/data/ljspeech/wavs/LJ037-0048.npy -tests/data/ljspeech/wavs/LJ014-0140.wav|tests/data/ljspeech/wavs/LJ014-0140.npy -tests/data/ljspeech/wavs/LJ018-0178.wav|tests/data/ljspeech/wavs/LJ018-0178.npy -tests/data/ljspeech/wavs/LJ019-0328.wav|tests/data/ljspeech/wavs/LJ019-0328.npy -tests/data/ljspeech/wavs/LJ010-0171.wav|tests/data/ljspeech/wavs/LJ010-0171.npy -tests/data/ljspeech/wavs/LJ005-0218.wav|tests/data/ljspeech/wavs/LJ005-0218.npy -tests/data/ljspeech/wavs/LJ021-0109.wav|tests/data/ljspeech/wavs/LJ021-0109.npy -tests/data/ljspeech/wavs/LJ035-0054.wav|tests/data/ljspeech/wavs/LJ035-0054.npy -tests/data/ljspeech/wavs/LJ002-0109.wav|tests/data/ljspeech/wavs/LJ002-0109.npy -tests/data/ljspeech/wavs/LJ003-0284.wav|tests/data/ljspeech/wavs/LJ003-0284.npy -tests/data/ljspeech/wavs/LJ021-0142.wav|tests/data/ljspeech/wavs/LJ021-0142.npy -tests/data/ljspeech/wavs/LJ028-0201.wav|tests/data/ljspeech/wavs/LJ028-0201.npy -tests/data/ljspeech/wavs/LJ007-0120.wav|tests/data/ljspeech/wavs/LJ007-0120.npy -tests/data/ljspeech/wavs/LJ021-0067.wav|tests/data/ljspeech/wavs/LJ021-0067.npy -tests/data/ljspeech/wavs/LJ031-0211.wav|tests/data/ljspeech/wavs/LJ031-0211.npy -tests/data/ljspeech/wavs/LJ038-0268.wav|tests/data/ljspeech/wavs/LJ038-0268.npy -tests/data/ljspeech/wavs/LJ006-0166.wav|tests/data/ljspeech/wavs/LJ006-0166.npy -tests/data/ljspeech/wavs/LJ024-0027.wav|tests/data/ljspeech/wavs/LJ024-0027.npy -tests/data/ljspeech/wavs/LJ031-0052.wav|tests/data/ljspeech/wavs/LJ031-0052.npy -tests/data/ljspeech/wavs/LJ049-0229.wav|tests/data/ljspeech/wavs/LJ049-0229.npy -tests/data/ljspeech/wavs/LJ044-0186.wav|tests/data/ljspeech/wavs/LJ044-0186.npy -tests/data/ljspeech/wavs/LJ028-0251.wav|tests/data/ljspeech/wavs/LJ028-0251.npy -tests/data/ljspeech/wavs/LJ021-0017.wav|tests/data/ljspeech/wavs/LJ021-0017.npy -tests/data/ljspeech/wavs/LJ012-0223.wav|tests/data/ljspeech/wavs/LJ012-0223.npy -tests/data/ljspeech/wavs/LJ005-0045.wav|tests/data/ljspeech/wavs/LJ005-0045.npy -tests/data/ljspeech/wavs/LJ040-0047.wav|tests/data/ljspeech/wavs/LJ040-0047.npy -tests/data/ljspeech/wavs/LJ005-0104.wav|tests/data/ljspeech/wavs/LJ005-0104.npy -tests/data/ljspeech/wavs/LJ028-0267.wav|tests/data/ljspeech/wavs/LJ028-0267.npy -tests/data/ljspeech/wavs/LJ023-0024.wav|tests/data/ljspeech/wavs/LJ023-0024.npy -tests/data/ljspeech/wavs/LJ023-0028.wav|tests/data/ljspeech/wavs/LJ023-0028.npy -tests/data/ljspeech/wavs/LJ040-0108.wav|tests/data/ljspeech/wavs/LJ040-0108.npy -tests/data/ljspeech/wavs/LJ031-0067.wav|tests/data/ljspeech/wavs/LJ031-0067.npy -tests/data/ljspeech/wavs/LJ035-0011.wav|tests/data/ljspeech/wavs/LJ035-0011.npy -tests/data/ljspeech/wavs/LJ003-0241.wav|tests/data/ljspeech/wavs/LJ003-0241.npy -tests/data/ljspeech/wavs/LJ013-0109.wav|tests/data/ljspeech/wavs/LJ013-0109.npy -tests/data/ljspeech/wavs/LJ033-0104.wav|tests/data/ljspeech/wavs/LJ033-0104.npy -tests/data/ljspeech/wavs/LJ028-0220.wav|tests/data/ljspeech/wavs/LJ028-0220.npy -tests/data/ljspeech/wavs/LJ015-0106.wav|tests/data/ljspeech/wavs/LJ015-0106.npy -tests/data/ljspeech/wavs/LJ043-0130.wav|tests/data/ljspeech/wavs/LJ043-0130.npy -tests/data/ljspeech/wavs/LJ048-0052.wav|tests/data/ljspeech/wavs/LJ048-0052.npy -tests/data/ljspeech/wavs/LJ012-0009.wav|tests/data/ljspeech/wavs/LJ012-0009.npy -tests/data/ljspeech/wavs/LJ042-0220.wav|tests/data/ljspeech/wavs/LJ042-0220.npy -tests/data/ljspeech/wavs/LJ033-0101.wav|tests/data/ljspeech/wavs/LJ033-0101.npy -tests/data/ljspeech/wavs/LJ002-0002.wav|tests/data/ljspeech/wavs/LJ002-0002.npy -tests/data/ljspeech/wavs/LJ002-0150.wav|tests/data/ljspeech/wavs/LJ002-0150.npy -tests/data/ljspeech/wavs/LJ017-0158.wav|tests/data/ljspeech/wavs/LJ017-0158.npy -tests/data/ljspeech/wavs/LJ045-0190.wav|tests/data/ljspeech/wavs/LJ045-0190.npy -tests/data/ljspeech/wavs/LJ045-0136.wav|tests/data/ljspeech/wavs/LJ045-0136.npy -tests/data/ljspeech/wavs/LJ041-0178.wav|tests/data/ljspeech/wavs/LJ041-0178.npy -tests/data/ljspeech/wavs/LJ005-0116.wav|tests/data/ljspeech/wavs/LJ005-0116.npy -tests/data/ljspeech/wavs/LJ017-0163.wav|tests/data/ljspeech/wavs/LJ017-0163.npy -tests/data/ljspeech/wavs/LJ033-0146.wav|tests/data/ljspeech/wavs/LJ033-0146.npy -tests/data/ljspeech/wavs/LJ010-0023.wav|tests/data/ljspeech/wavs/LJ010-0023.npy -tests/data/ljspeech/wavs/LJ006-0031.wav|tests/data/ljspeech/wavs/LJ006-0031.npy -tests/data/ljspeech/wavs/LJ027-0014.wav|tests/data/ljspeech/wavs/LJ027-0014.npy -tests/data/ljspeech/wavs/LJ046-0251.wav|tests/data/ljspeech/wavs/LJ046-0251.npy -tests/data/ljspeech/wavs/LJ028-0063.wav|tests/data/ljspeech/wavs/LJ028-0063.npy -tests/data/ljspeech/wavs/LJ042-0068.wav|tests/data/ljspeech/wavs/LJ042-0068.npy -tests/data/ljspeech/wavs/LJ022-0118.wav|tests/data/ljspeech/wavs/LJ022-0118.npy -tests/data/ljspeech/wavs/LJ046-0177.wav|tests/data/ljspeech/wavs/LJ046-0177.npy -tests/data/ljspeech/wavs/LJ015-0306.wav|tests/data/ljspeech/wavs/LJ015-0306.npy -tests/data/ljspeech/wavs/LJ037-0034.wav|tests/data/ljspeech/wavs/LJ037-0034.npy -tests/data/ljspeech/wavs/LJ024-0015.wav|tests/data/ljspeech/wavs/LJ024-0015.npy -tests/data/ljspeech/wavs/LJ023-0110.wav|tests/data/ljspeech/wavs/LJ023-0110.npy -tests/data/ljspeech/wavs/LJ044-0012.wav|tests/data/ljspeech/wavs/LJ044-0012.npy -tests/data/ljspeech/wavs/LJ047-0174.wav|tests/data/ljspeech/wavs/LJ047-0174.npy -tests/data/ljspeech/wavs/LJ030-0136.wav|tests/data/ljspeech/wavs/LJ030-0136.npy -tests/data/ljspeech/wavs/LJ009-0242.wav|tests/data/ljspeech/wavs/LJ009-0242.npy -tests/data/ljspeech/wavs/LJ022-0144.wav|tests/data/ljspeech/wavs/LJ022-0144.npy -tests/data/ljspeech/wavs/LJ028-0492.wav|tests/data/ljspeech/wavs/LJ028-0492.npy -tests/data/ljspeech/wavs/LJ017-0203.wav|tests/data/ljspeech/wavs/LJ017-0203.npy -tests/data/ljspeech/wavs/LJ017-0081.wav|tests/data/ljspeech/wavs/LJ017-0081.npy -tests/data/ljspeech/wavs/LJ015-0288.wav|tests/data/ljspeech/wavs/LJ015-0288.npy -tests/data/ljspeech/wavs/LJ001-0129.wav|tests/data/ljspeech/wavs/LJ001-0129.npy -tests/data/ljspeech/wavs/LJ022-0185.wav|tests/data/ljspeech/wavs/LJ022-0185.npy -tests/data/ljspeech/wavs/LJ016-0012.wav|tests/data/ljspeech/wavs/LJ016-0012.npy -tests/data/ljspeech/wavs/LJ008-0150.wav|tests/data/ljspeech/wavs/LJ008-0150.npy -tests/data/ljspeech/wavs/LJ044-0203.wav|tests/data/ljspeech/wavs/LJ044-0203.npy -tests/data/ljspeech/wavs/LJ030-0255.wav|tests/data/ljspeech/wavs/LJ030-0255.npy -tests/data/ljspeech/wavs/LJ005-0241.wav|tests/data/ljspeech/wavs/LJ005-0241.npy -tests/data/ljspeech/wavs/LJ033-0145.wav|tests/data/ljspeech/wavs/LJ033-0145.npy -tests/data/ljspeech/wavs/LJ044-0096.wav|tests/data/ljspeech/wavs/LJ044-0096.npy -tests/data/ljspeech/wavs/LJ046-0182.wav|tests/data/ljspeech/wavs/LJ046-0182.npy -tests/data/ljspeech/wavs/LJ041-0195.wav|tests/data/ljspeech/wavs/LJ041-0195.npy -tests/data/ljspeech/wavs/LJ040-0070.wav|tests/data/ljspeech/wavs/LJ040-0070.npy -tests/data/ljspeech/wavs/LJ010-0123.wav|tests/data/ljspeech/wavs/LJ010-0123.npy -tests/data/ljspeech/wavs/LJ023-0080.wav|tests/data/ljspeech/wavs/LJ023-0080.npy -tests/data/ljspeech/wavs/LJ008-0210.wav|tests/data/ljspeech/wavs/LJ008-0210.npy -tests/data/ljspeech/wavs/LJ033-0148.wav|tests/data/ljspeech/wavs/LJ033-0148.npy -tests/data/ljspeech/wavs/LJ021-0122.wav|tests/data/ljspeech/wavs/LJ021-0122.npy -tests/data/ljspeech/wavs/LJ016-0179.wav|tests/data/ljspeech/wavs/LJ016-0179.npy -tests/data/ljspeech/wavs/LJ006-0041.wav|tests/data/ljspeech/wavs/LJ006-0041.npy -tests/data/ljspeech/wavs/LJ023-0121.wav|tests/data/ljspeech/wavs/LJ023-0121.npy -tests/data/ljspeech/wavs/LJ019-0304.wav|tests/data/ljspeech/wavs/LJ019-0304.npy -tests/data/ljspeech/wavs/LJ025-0174.wav|tests/data/ljspeech/wavs/LJ025-0174.npy -tests/data/ljspeech/wavs/LJ009-0102.wav|tests/data/ljspeech/wavs/LJ009-0102.npy -tests/data/ljspeech/wavs/LJ022-0022.wav|tests/data/ljspeech/wavs/LJ022-0022.npy -tests/data/ljspeech/wavs/LJ011-0250.wav|tests/data/ljspeech/wavs/LJ011-0250.npy -tests/data/ljspeech/wavs/LJ022-0199.wav|tests/data/ljspeech/wavs/LJ022-0199.npy -tests/data/ljspeech/wavs/LJ001-0079.wav|tests/data/ljspeech/wavs/LJ001-0079.npy -tests/data/ljspeech/wavs/LJ004-0191.wav|tests/data/ljspeech/wavs/LJ004-0191.npy -tests/data/ljspeech/wavs/LJ020-0080.wav|tests/data/ljspeech/wavs/LJ020-0080.npy -tests/data/ljspeech/wavs/LJ028-0504.wav|tests/data/ljspeech/wavs/LJ028-0504.npy -tests/data/ljspeech/wavs/LJ009-0164.wav|tests/data/ljspeech/wavs/LJ009-0164.npy -tests/data/ljspeech/wavs/LJ028-0422.wav|tests/data/ljspeech/wavs/LJ028-0422.npy -tests/data/ljspeech/wavs/LJ019-0368.wav|tests/data/ljspeech/wavs/LJ019-0368.npy -tests/data/ljspeech/wavs/LJ008-0108.wav|tests/data/ljspeech/wavs/LJ008-0108.npy -tests/data/ljspeech/wavs/LJ010-0088.wav|tests/data/ljspeech/wavs/LJ010-0088.npy -tests/data/ljspeech/wavs/LJ005-0224.wav|tests/data/ljspeech/wavs/LJ005-0224.npy -tests/data/ljspeech/wavs/LJ042-0143.wav|tests/data/ljspeech/wavs/LJ042-0143.npy -tests/data/ljspeech/wavs/LJ045-0151.wav|tests/data/ljspeech/wavs/LJ045-0151.npy -tests/data/ljspeech/wavs/LJ036-0209.wav|tests/data/ljspeech/wavs/LJ036-0209.npy -tests/data/ljspeech/wavs/LJ049-0049.wav|tests/data/ljspeech/wavs/LJ049-0049.npy -tests/data/ljspeech/wavs/LJ014-0238.wav|tests/data/ljspeech/wavs/LJ014-0238.npy -tests/data/ljspeech/wavs/LJ023-0116.wav|tests/data/ljspeech/wavs/LJ023-0116.npy -tests/data/ljspeech/wavs/LJ008-0287.wav|tests/data/ljspeech/wavs/LJ008-0287.npy -tests/data/ljspeech/wavs/LJ028-0099.wav|tests/data/ljspeech/wavs/LJ028-0099.npy -tests/data/ljspeech/wavs/LJ026-0106.wav|tests/data/ljspeech/wavs/LJ026-0106.npy -tests/data/ljspeech/wavs/LJ005-0139.wav|tests/data/ljspeech/wavs/LJ005-0139.npy -tests/data/ljspeech/wavs/LJ027-0028.wav|tests/data/ljspeech/wavs/LJ027-0028.npy -tests/data/ljspeech/wavs/LJ003-0113.wav|tests/data/ljspeech/wavs/LJ003-0113.npy -tests/data/ljspeech/wavs/LJ014-0189.wav|tests/data/ljspeech/wavs/LJ014-0189.npy -tests/data/ljspeech/wavs/LJ045-0133.wav|tests/data/ljspeech/wavs/LJ045-0133.npy -tests/data/ljspeech/wavs/LJ050-0174.wav|tests/data/ljspeech/wavs/LJ050-0174.npy -tests/data/ljspeech/wavs/LJ038-0092.wav|tests/data/ljspeech/wavs/LJ038-0092.npy -tests/data/ljspeech/wavs/LJ046-0046.wav|tests/data/ljspeech/wavs/LJ046-0046.npy -tests/data/ljspeech/wavs/LJ038-0138.wav|tests/data/ljspeech/wavs/LJ038-0138.npy -tests/data/ljspeech/wavs/LJ039-0068.wav|tests/data/ljspeech/wavs/LJ039-0068.npy -tests/data/ljspeech/wavs/LJ015-0027.wav|tests/data/ljspeech/wavs/LJ015-0027.npy -tests/data/ljspeech/wavs/LJ030-0113.wav|tests/data/ljspeech/wavs/LJ030-0113.npy -tests/data/ljspeech/wavs/LJ011-0192.wav|tests/data/ljspeech/wavs/LJ011-0192.npy -tests/data/ljspeech/wavs/LJ036-0102.wav|tests/data/ljspeech/wavs/LJ036-0102.npy -tests/data/ljspeech/wavs/LJ045-0117.wav|tests/data/ljspeech/wavs/LJ045-0117.npy -tests/data/ljspeech/wavs/LJ017-0088.wav|tests/data/ljspeech/wavs/LJ017-0088.npy -tests/data/ljspeech/wavs/LJ038-0247.wav|tests/data/ljspeech/wavs/LJ038-0247.npy -tests/data/ljspeech/wavs/LJ042-0170.wav|tests/data/ljspeech/wavs/LJ042-0170.npy -tests/data/ljspeech/wavs/LJ028-0286.wav|tests/data/ljspeech/wavs/LJ028-0286.npy -tests/data/ljspeech/wavs/LJ018-0322.wav|tests/data/ljspeech/wavs/LJ018-0322.npy -tests/data/ljspeech/wavs/LJ038-0097.wav|tests/data/ljspeech/wavs/LJ038-0097.npy -tests/data/ljspeech/wavs/LJ036-0012.wav|tests/data/ljspeech/wavs/LJ036-0012.npy -tests/data/ljspeech/wavs/LJ017-0003.wav|tests/data/ljspeech/wavs/LJ017-0003.npy -tests/data/ljspeech/wavs/LJ003-0043.wav|tests/data/ljspeech/wavs/LJ003-0043.npy -tests/data/ljspeech/wavs/LJ033-0049.wav|tests/data/ljspeech/wavs/LJ033-0049.npy -tests/data/ljspeech/wavs/LJ045-0176.wav|tests/data/ljspeech/wavs/LJ045-0176.npy -tests/data/ljspeech/wavs/LJ017-0199.wav|tests/data/ljspeech/wavs/LJ017-0199.npy -tests/data/ljspeech/wavs/LJ004-0192.wav|tests/data/ljspeech/wavs/LJ004-0192.npy -tests/data/ljspeech/wavs/LJ007-0202.wav|tests/data/ljspeech/wavs/LJ007-0202.npy -tests/data/ljspeech/wavs/LJ018-0018.wav|tests/data/ljspeech/wavs/LJ018-0018.npy -tests/data/ljspeech/wavs/LJ043-0113.wav|tests/data/ljspeech/wavs/LJ043-0113.npy -tests/data/ljspeech/wavs/LJ050-0081.wav|tests/data/ljspeech/wavs/LJ050-0081.npy -tests/data/ljspeech/wavs/LJ013-0128.wav|tests/data/ljspeech/wavs/LJ013-0128.npy -tests/data/ljspeech/wavs/LJ002-0332.wav|tests/data/ljspeech/wavs/LJ002-0332.npy -tests/data/ljspeech/wavs/LJ035-0124.wav|tests/data/ljspeech/wavs/LJ035-0124.npy -tests/data/ljspeech/wavs/LJ002-0114.wav|tests/data/ljspeech/wavs/LJ002-0114.npy -tests/data/ljspeech/wavs/LJ017-0282.wav|tests/data/ljspeech/wavs/LJ017-0282.npy -tests/data/ljspeech/wavs/LJ019-0325.wav|tests/data/ljspeech/wavs/LJ019-0325.npy -tests/data/ljspeech/wavs/LJ014-0127.wav|tests/data/ljspeech/wavs/LJ014-0127.npy -tests/data/ljspeech/wavs/LJ018-0061.wav|tests/data/ljspeech/wavs/LJ018-0061.npy -tests/data/ljspeech/wavs/LJ004-0156.wav|tests/data/ljspeech/wavs/LJ004-0156.npy -tests/data/ljspeech/wavs/LJ010-0069.wav|tests/data/ljspeech/wavs/LJ010-0069.npy -tests/data/ljspeech/wavs/LJ005-0195.wav|tests/data/ljspeech/wavs/LJ005-0195.npy -tests/data/ljspeech/wavs/LJ017-0048.wav|tests/data/ljspeech/wavs/LJ017-0048.npy -tests/data/ljspeech/wavs/LJ004-0179.wav|tests/data/ljspeech/wavs/LJ004-0179.npy -tests/data/ljspeech/wavs/LJ026-0048.wav|tests/data/ljspeech/wavs/LJ026-0048.npy -tests/data/ljspeech/wavs/LJ019-0057.wav|tests/data/ljspeech/wavs/LJ019-0057.npy -tests/data/ljspeech/wavs/LJ019-0048.wav|tests/data/ljspeech/wavs/LJ019-0048.npy -tests/data/ljspeech/wavs/LJ012-0294.wav|tests/data/ljspeech/wavs/LJ012-0294.npy -tests/data/ljspeech/wavs/LJ045-0210.wav|tests/data/ljspeech/wavs/LJ045-0210.npy -tests/data/ljspeech/wavs/LJ029-0078.wav|tests/data/ljspeech/wavs/LJ029-0078.npy -tests/data/ljspeech/wavs/LJ015-0296.wav|tests/data/ljspeech/wavs/LJ015-0296.npy -tests/data/ljspeech/wavs/LJ003-0172.wav|tests/data/ljspeech/wavs/LJ003-0172.npy -tests/data/ljspeech/wavs/LJ014-0184.wav|tests/data/ljspeech/wavs/LJ014-0184.npy -tests/data/ljspeech/wavs/LJ007-0066.wav|tests/data/ljspeech/wavs/LJ007-0066.npy -tests/data/ljspeech/wavs/LJ041-0053.wav|tests/data/ljspeech/wavs/LJ041-0053.npy -tests/data/ljspeech/wavs/LJ047-0069.wav|tests/data/ljspeech/wavs/LJ047-0069.npy -tests/data/ljspeech/wavs/LJ042-0196.wav|tests/data/ljspeech/wavs/LJ042-0196.npy -tests/data/ljspeech/wavs/LJ022-0021.wav|tests/data/ljspeech/wavs/LJ022-0021.npy -tests/data/ljspeech/wavs/LJ044-0003.wav|tests/data/ljspeech/wavs/LJ044-0003.npy -tests/data/ljspeech/wavs/LJ038-0011.wav|tests/data/ljspeech/wavs/LJ038-0011.npy -tests/data/ljspeech/wavs/LJ015-0189.wav|tests/data/ljspeech/wavs/LJ015-0189.npy -tests/data/ljspeech/wavs/LJ030-0119.wav|tests/data/ljspeech/wavs/LJ030-0119.npy -tests/data/ljspeech/wavs/LJ022-0165.wav|tests/data/ljspeech/wavs/LJ022-0165.npy -tests/data/ljspeech/wavs/LJ022-0028.wav|tests/data/ljspeech/wavs/LJ022-0028.npy -tests/data/ljspeech/wavs/LJ046-0004.wav|tests/data/ljspeech/wavs/LJ046-0004.npy -tests/data/ljspeech/wavs/LJ004-0217.wav|tests/data/ljspeech/wavs/LJ004-0217.npy -tests/data/ljspeech/wavs/LJ025-0007.wav|tests/data/ljspeech/wavs/LJ025-0007.npy -tests/data/ljspeech/wavs/LJ039-0117.wav|tests/data/ljspeech/wavs/LJ039-0117.npy -tests/data/ljspeech/wavs/LJ027-0096.wav|tests/data/ljspeech/wavs/LJ027-0096.npy -tests/data/ljspeech/wavs/LJ033-0047.wav|tests/data/ljspeech/wavs/LJ033-0047.npy -tests/data/ljspeech/wavs/LJ035-0083.wav|tests/data/ljspeech/wavs/LJ035-0083.npy -tests/data/ljspeech/wavs/LJ028-0151.wav|tests/data/ljspeech/wavs/LJ028-0151.npy -tests/data/ljspeech/wavs/LJ022-0034.wav|tests/data/ljspeech/wavs/LJ022-0034.npy -tests/data/ljspeech/wavs/LJ005-0174.wav|tests/data/ljspeech/wavs/LJ005-0174.npy -tests/data/ljspeech/wavs/LJ022-0114.wav|tests/data/ljspeech/wavs/LJ022-0114.npy -tests/data/ljspeech/wavs/LJ023-0030.wav|tests/data/ljspeech/wavs/LJ023-0030.npy -tests/data/ljspeech/wavs/LJ030-0191.wav|tests/data/ljspeech/wavs/LJ030-0191.npy -tests/data/ljspeech/wavs/LJ006-0009.wav|tests/data/ljspeech/wavs/LJ006-0009.npy -tests/data/ljspeech/wavs/LJ050-0244.wav|tests/data/ljspeech/wavs/LJ050-0244.npy -tests/data/ljspeech/wavs/LJ007-0236.wav|tests/data/ljspeech/wavs/LJ007-0236.npy -tests/data/ljspeech/wavs/LJ002-0275.wav|tests/data/ljspeech/wavs/LJ002-0275.npy -tests/data/ljspeech/wavs/LJ037-0254.wav|tests/data/ljspeech/wavs/LJ037-0254.npy -tests/data/ljspeech/wavs/LJ031-0092.wav|tests/data/ljspeech/wavs/LJ031-0092.npy -tests/data/ljspeech/wavs/LJ028-0325.wav|tests/data/ljspeech/wavs/LJ028-0325.npy -tests/data/ljspeech/wavs/LJ038-0049.wav|tests/data/ljspeech/wavs/LJ038-0049.npy -tests/data/ljspeech/wavs/LJ008-0134.wav|tests/data/ljspeech/wavs/LJ008-0134.npy -tests/data/ljspeech/wavs/LJ039-0188.wav|tests/data/ljspeech/wavs/LJ039-0188.npy -tests/data/ljspeech/wavs/LJ004-0145.wav|tests/data/ljspeech/wavs/LJ004-0145.npy -tests/data/ljspeech/wavs/LJ029-0077.wav|tests/data/ljspeech/wavs/LJ029-0077.npy -tests/data/ljspeech/wavs/LJ028-0517.wav|tests/data/ljspeech/wavs/LJ028-0517.npy -tests/data/ljspeech/wavs/LJ019-0166.wav|tests/data/ljspeech/wavs/LJ019-0166.npy -tests/data/ljspeech/wavs/LJ029-0151.wav|tests/data/ljspeech/wavs/LJ029-0151.npy -tests/data/ljspeech/wavs/LJ029-0125.wav|tests/data/ljspeech/wavs/LJ029-0125.npy -tests/data/ljspeech/wavs/LJ005-0105.wav|tests/data/ljspeech/wavs/LJ005-0105.npy -tests/data/ljspeech/wavs/LJ046-0254.wav|tests/data/ljspeech/wavs/LJ046-0254.npy -tests/data/ljspeech/wavs/LJ002-0159.wav|tests/data/ljspeech/wavs/LJ002-0159.npy -tests/data/ljspeech/wavs/LJ020-0029.wav|tests/data/ljspeech/wavs/LJ020-0029.npy -tests/data/ljspeech/wavs/LJ021-0096.wav|tests/data/ljspeech/wavs/LJ021-0096.npy -tests/data/ljspeech/wavs/LJ044-0208.wav|tests/data/ljspeech/wavs/LJ044-0208.npy -tests/data/ljspeech/wavs/LJ047-0130.wav|tests/data/ljspeech/wavs/LJ047-0130.npy -tests/data/ljspeech/wavs/LJ031-0089.wav|tests/data/ljspeech/wavs/LJ031-0089.npy -tests/data/ljspeech/wavs/LJ038-0216.wav|tests/data/ljspeech/wavs/LJ038-0216.npy -tests/data/ljspeech/wavs/LJ006-0175.wav|tests/data/ljspeech/wavs/LJ006-0175.npy -tests/data/ljspeech/wavs/LJ027-0103.wav|tests/data/ljspeech/wavs/LJ027-0103.npy -tests/data/ljspeech/wavs/LJ005-0078.wav|tests/data/ljspeech/wavs/LJ005-0078.npy -tests/data/ljspeech/wavs/LJ044-0014.wav|tests/data/ljspeech/wavs/LJ044-0014.npy -tests/data/ljspeech/wavs/LJ043-0093.wav|tests/data/ljspeech/wavs/LJ043-0093.npy -tests/data/ljspeech/wavs/LJ021-0022.wav|tests/data/ljspeech/wavs/LJ021-0022.npy -tests/data/ljspeech/wavs/LJ018-0383.wav|tests/data/ljspeech/wavs/LJ018-0383.npy -tests/data/ljspeech/wavs/LJ010-0275.wav|tests/data/ljspeech/wavs/LJ010-0275.npy -tests/data/ljspeech/wavs/LJ007-0048.wav|tests/data/ljspeech/wavs/LJ007-0048.npy -tests/data/ljspeech/wavs/LJ005-0190.wav|tests/data/ljspeech/wavs/LJ005-0190.npy -tests/data/ljspeech/wavs/LJ001-0037.wav|tests/data/ljspeech/wavs/LJ001-0037.npy -tests/data/ljspeech/wavs/LJ012-0255.wav|tests/data/ljspeech/wavs/LJ012-0255.npy -tests/data/ljspeech/wavs/LJ033-0026.wav|tests/data/ljspeech/wavs/LJ033-0026.npy -tests/data/ljspeech/wavs/LJ029-0102.wav|tests/data/ljspeech/wavs/LJ029-0102.npy -tests/data/ljspeech/wavs/LJ049-0219.wav|tests/data/ljspeech/wavs/LJ049-0219.npy -tests/data/ljspeech/wavs/LJ016-0066.wav|tests/data/ljspeech/wavs/LJ016-0066.npy -tests/data/ljspeech/wavs/LJ042-0029.wav|tests/data/ljspeech/wavs/LJ042-0029.npy -tests/data/ljspeech/wavs/LJ035-0188.wav|tests/data/ljspeech/wavs/LJ035-0188.npy -tests/data/ljspeech/wavs/LJ018-0180.wav|tests/data/ljspeech/wavs/LJ018-0180.npy -tests/data/ljspeech/wavs/LJ044-0113.wav|tests/data/ljspeech/wavs/LJ044-0113.npy -tests/data/ljspeech/wavs/LJ034-0143.wav|tests/data/ljspeech/wavs/LJ034-0143.npy -tests/data/ljspeech/wavs/LJ035-0080.wav|tests/data/ljspeech/wavs/LJ035-0080.npy -tests/data/ljspeech/wavs/LJ047-0203.wav|tests/data/ljspeech/wavs/LJ047-0203.npy -tests/data/ljspeech/wavs/LJ010-0201.wav|tests/data/ljspeech/wavs/LJ010-0201.npy -tests/data/ljspeech/wavs/LJ035-0061.wav|tests/data/ljspeech/wavs/LJ035-0061.npy -tests/data/ljspeech/wavs/LJ002-0037.wav|tests/data/ljspeech/wavs/LJ002-0037.npy -tests/data/ljspeech/wavs/LJ037-0049.wav|tests/data/ljspeech/wavs/LJ037-0049.npy -tests/data/ljspeech/wavs/LJ030-0129.wav|tests/data/ljspeech/wavs/LJ030-0129.npy -tests/data/ljspeech/wavs/LJ033-0095.wav|tests/data/ljspeech/wavs/LJ033-0095.npy -tests/data/ljspeech/wavs/LJ028-0155.wav|tests/data/ljspeech/wavs/LJ028-0155.npy -tests/data/ljspeech/wavs/LJ050-0193.wav|tests/data/ljspeech/wavs/LJ050-0193.npy -tests/data/ljspeech/wavs/LJ016-0109.wav|tests/data/ljspeech/wavs/LJ016-0109.npy -tests/data/ljspeech/wavs/LJ011-0286.wav|tests/data/ljspeech/wavs/LJ011-0286.npy -tests/data/ljspeech/wavs/LJ035-0031.wav|tests/data/ljspeech/wavs/LJ035-0031.npy -tests/data/ljspeech/wavs/LJ014-0033.wav|tests/data/ljspeech/wavs/LJ014-0033.npy -tests/data/ljspeech/wavs/LJ004-0089.wav|tests/data/ljspeech/wavs/LJ004-0089.npy -tests/data/ljspeech/wavs/LJ011-0011.wav|tests/data/ljspeech/wavs/LJ011-0011.npy -tests/data/ljspeech/wavs/LJ002-0202.wav|tests/data/ljspeech/wavs/LJ002-0202.npy -tests/data/ljspeech/wavs/LJ046-0106.wav|tests/data/ljspeech/wavs/LJ046-0106.npy -tests/data/ljspeech/wavs/LJ015-0182.wav|tests/data/ljspeech/wavs/LJ015-0182.npy -tests/data/ljspeech/wavs/LJ030-0019.wav|tests/data/ljspeech/wavs/LJ030-0019.npy -tests/data/ljspeech/wavs/LJ016-0268.wav|tests/data/ljspeech/wavs/LJ016-0268.npy -tests/data/ljspeech/wavs/LJ028-0305.wav|tests/data/ljspeech/wavs/LJ028-0305.npy -tests/data/ljspeech/wavs/LJ037-0248.wav|tests/data/ljspeech/wavs/LJ037-0248.npy -tests/data/ljspeech/wavs/LJ016-0104.wav|tests/data/ljspeech/wavs/LJ016-0104.npy -tests/data/ljspeech/wavs/LJ028-0026.wav|tests/data/ljspeech/wavs/LJ028-0026.npy -tests/data/ljspeech/wavs/LJ049-0064.wav|tests/data/ljspeech/wavs/LJ049-0064.npy -tests/data/ljspeech/wavs/LJ035-0175.wav|tests/data/ljspeech/wavs/LJ035-0175.npy -tests/data/ljspeech/wavs/LJ047-0146.wav|tests/data/ljspeech/wavs/LJ047-0146.npy -tests/data/ljspeech/wavs/LJ048-0139.wav|tests/data/ljspeech/wavs/LJ048-0139.npy -tests/data/ljspeech/wavs/LJ003-0307.wav|tests/data/ljspeech/wavs/LJ003-0307.npy -tests/data/ljspeech/wavs/LJ050-0115.wav|tests/data/ljspeech/wavs/LJ050-0115.npy -tests/data/ljspeech/wavs/LJ022-0093.wav|tests/data/ljspeech/wavs/LJ022-0093.npy -tests/data/ljspeech/wavs/LJ015-0124.wav|tests/data/ljspeech/wavs/LJ015-0124.npy -tests/data/ljspeech/wavs/LJ016-0167.wav|tests/data/ljspeech/wavs/LJ016-0167.npy -tests/data/ljspeech/wavs/LJ007-0012.wav|tests/data/ljspeech/wavs/LJ007-0012.npy -tests/data/ljspeech/wavs/LJ033-0034.wav|tests/data/ljspeech/wavs/LJ033-0034.npy -tests/data/ljspeech/wavs/LJ002-0212.wav|tests/data/ljspeech/wavs/LJ002-0212.npy -tests/data/ljspeech/wavs/LJ017-0198.wav|tests/data/ljspeech/wavs/LJ017-0198.npy -tests/data/ljspeech/wavs/LJ019-0123.wav|tests/data/ljspeech/wavs/LJ019-0123.npy -tests/data/ljspeech/wavs/LJ019-0283.wav|tests/data/ljspeech/wavs/LJ019-0283.npy -tests/data/ljspeech/wavs/LJ014-0119.wav|tests/data/ljspeech/wavs/LJ014-0119.npy -tests/data/ljspeech/wavs/LJ002-0078.wav|tests/data/ljspeech/wavs/LJ002-0078.npy -tests/data/ljspeech/wavs/LJ001-0175.wav|tests/data/ljspeech/wavs/LJ001-0175.npy -tests/data/ljspeech/wavs/LJ018-0073.wav|tests/data/ljspeech/wavs/LJ018-0073.npy -tests/data/ljspeech/wavs/LJ032-0047.wav|tests/data/ljspeech/wavs/LJ032-0047.npy -tests/data/ljspeech/wavs/LJ025-0134.wav|tests/data/ljspeech/wavs/LJ025-0134.npy -tests/data/ljspeech/wavs/LJ012-0014.wav|tests/data/ljspeech/wavs/LJ012-0014.npy -tests/data/ljspeech/wavs/LJ013-0045.wav|tests/data/ljspeech/wavs/LJ013-0045.npy -tests/data/ljspeech/wavs/LJ034-0073.wav|tests/data/ljspeech/wavs/LJ034-0073.npy -tests/data/ljspeech/wavs/LJ009-0067.wav|tests/data/ljspeech/wavs/LJ009-0067.npy -tests/data/ljspeech/wavs/LJ004-0178.wav|tests/data/ljspeech/wavs/LJ004-0178.npy -tests/data/ljspeech/wavs/LJ001-0095.wav|tests/data/ljspeech/wavs/LJ001-0095.npy -tests/data/ljspeech/wavs/LJ009-0070.wav|tests/data/ljspeech/wavs/LJ009-0070.npy -tests/data/ljspeech/wavs/LJ043-0031.wav|tests/data/ljspeech/wavs/LJ043-0031.npy -tests/data/ljspeech/wavs/LJ026-0049.wav|tests/data/ljspeech/wavs/LJ026-0049.npy -tests/data/ljspeech/wavs/LJ042-0155.wav|tests/data/ljspeech/wavs/LJ042-0155.npy -tests/data/ljspeech/wavs/LJ007-0213.wav|tests/data/ljspeech/wavs/LJ007-0213.npy -tests/data/ljspeech/wavs/LJ043-0178.wav|tests/data/ljspeech/wavs/LJ043-0178.npy -tests/data/ljspeech/wavs/LJ014-0285.wav|tests/data/ljspeech/wavs/LJ014-0285.npy -tests/data/ljspeech/wavs/LJ032-0054.wav|tests/data/ljspeech/wavs/LJ032-0054.npy -tests/data/ljspeech/wavs/LJ050-0095.wav|tests/data/ljspeech/wavs/LJ050-0095.npy -tests/data/ljspeech/wavs/LJ040-0151.wav|tests/data/ljspeech/wavs/LJ040-0151.npy -tests/data/ljspeech/wavs/LJ035-0065.wav|tests/data/ljspeech/wavs/LJ035-0065.npy -tests/data/ljspeech/wavs/LJ011-0282.wav|tests/data/ljspeech/wavs/LJ011-0282.npy -tests/data/ljspeech/wavs/LJ006-0097.wav|tests/data/ljspeech/wavs/LJ006-0097.npy -tests/data/ljspeech/wavs/LJ005-0228.wav|tests/data/ljspeech/wavs/LJ005-0228.npy -tests/data/ljspeech/wavs/LJ028-0319.wav|tests/data/ljspeech/wavs/LJ028-0319.npy -tests/data/ljspeech/wavs/LJ043-0121.wav|tests/data/ljspeech/wavs/LJ043-0121.npy -tests/data/ljspeech/wavs/LJ042-0249.wav|tests/data/ljspeech/wavs/LJ042-0249.npy -tests/data/ljspeech/wavs/LJ044-0179.wav|tests/data/ljspeech/wavs/LJ044-0179.npy -tests/data/ljspeech/wavs/LJ016-0152.wav|tests/data/ljspeech/wavs/LJ016-0152.npy -tests/data/ljspeech/wavs/LJ013-0197.wav|tests/data/ljspeech/wavs/LJ013-0197.npy -tests/data/ljspeech/wavs/LJ011-0033.wav|tests/data/ljspeech/wavs/LJ011-0033.npy -tests/data/ljspeech/wavs/LJ012-0148.wav|tests/data/ljspeech/wavs/LJ012-0148.npy -tests/data/ljspeech/wavs/LJ008-0152.wav|tests/data/ljspeech/wavs/LJ008-0152.npy -tests/data/ljspeech/wavs/LJ013-0201.wav|tests/data/ljspeech/wavs/LJ013-0201.npy -tests/data/ljspeech/wavs/LJ037-0175.wav|tests/data/ljspeech/wavs/LJ037-0175.npy -tests/data/ljspeech/wavs/LJ006-0105.wav|tests/data/ljspeech/wavs/LJ006-0105.npy -tests/data/ljspeech/wavs/LJ015-0038.wav|tests/data/ljspeech/wavs/LJ015-0038.npy -tests/data/ljspeech/wavs/LJ029-0138.wav|tests/data/ljspeech/wavs/LJ029-0138.npy -tests/data/ljspeech/wavs/LJ044-0027.wav|tests/data/ljspeech/wavs/LJ044-0027.npy -tests/data/ljspeech/wavs/LJ029-0117.wav|tests/data/ljspeech/wavs/LJ029-0117.npy -tests/data/ljspeech/wavs/LJ014-0158.wav|tests/data/ljspeech/wavs/LJ014-0158.npy -tests/data/ljspeech/wavs/LJ037-0148.wav|tests/data/ljspeech/wavs/LJ037-0148.npy -tests/data/ljspeech/wavs/LJ006-0100.wav|tests/data/ljspeech/wavs/LJ006-0100.npy -tests/data/ljspeech/wavs/LJ007-0188.wav|tests/data/ljspeech/wavs/LJ007-0188.npy -tests/data/ljspeech/wavs/LJ011-0021.wav|tests/data/ljspeech/wavs/LJ011-0021.npy -tests/data/ljspeech/wavs/LJ032-0264.wav|tests/data/ljspeech/wavs/LJ032-0264.npy -tests/data/ljspeech/wavs/LJ013-0159.wav|tests/data/ljspeech/wavs/LJ013-0159.npy -tests/data/ljspeech/wavs/LJ016-0148.wav|tests/data/ljspeech/wavs/LJ016-0148.npy -tests/data/ljspeech/wavs/LJ002-0101.wav|tests/data/ljspeech/wavs/LJ002-0101.npy -tests/data/ljspeech/wavs/LJ039-0171.wav|tests/data/ljspeech/wavs/LJ039-0171.npy -tests/data/ljspeech/wavs/LJ008-0191.wav|tests/data/ljspeech/wavs/LJ008-0191.npy -tests/data/ljspeech/wavs/LJ008-0002.wav|tests/data/ljspeech/wavs/LJ008-0002.npy -tests/data/ljspeech/wavs/LJ026-0115.wav|tests/data/ljspeech/wavs/LJ026-0115.npy -tests/data/ljspeech/wavs/LJ001-0107.wav|tests/data/ljspeech/wavs/LJ001-0107.npy -tests/data/ljspeech/wavs/LJ026-0130.wav|tests/data/ljspeech/wavs/LJ026-0130.npy -tests/data/ljspeech/wavs/LJ022-0014.wav|tests/data/ljspeech/wavs/LJ022-0014.npy -tests/data/ljspeech/wavs/LJ014-0041.wav|tests/data/ljspeech/wavs/LJ014-0041.npy -tests/data/ljspeech/wavs/LJ021-0129.wav|tests/data/ljspeech/wavs/LJ021-0129.npy -tests/data/ljspeech/wavs/LJ047-0091.wav|tests/data/ljspeech/wavs/LJ047-0091.npy -tests/data/ljspeech/wavs/LJ028-0393.wav|tests/data/ljspeech/wavs/LJ028-0393.npy -tests/data/ljspeech/wavs/LJ036-0092.wav|tests/data/ljspeech/wavs/LJ036-0092.npy -tests/data/ljspeech/wavs/LJ033-0138.wav|tests/data/ljspeech/wavs/LJ033-0138.npy -tests/data/ljspeech/wavs/LJ015-0113.wav|tests/data/ljspeech/wavs/LJ015-0113.npy -tests/data/ljspeech/wavs/LJ026-0118.wav|tests/data/ljspeech/wavs/LJ026-0118.npy -tests/data/ljspeech/wavs/LJ008-0186.wav|tests/data/ljspeech/wavs/LJ008-0186.npy -tests/data/ljspeech/wavs/LJ030-0040.wav|tests/data/ljspeech/wavs/LJ030-0040.npy -tests/data/ljspeech/wavs/LJ004-0196.wav|tests/data/ljspeech/wavs/LJ004-0196.npy -tests/data/ljspeech/wavs/LJ006-0298.wav|tests/data/ljspeech/wavs/LJ006-0298.npy -tests/data/ljspeech/wavs/LJ002-0193.wav|tests/data/ljspeech/wavs/LJ002-0193.npy -tests/data/ljspeech/wavs/LJ037-0179.wav|tests/data/ljspeech/wavs/LJ037-0179.npy -tests/data/ljspeech/wavs/LJ018-0201.wav|tests/data/ljspeech/wavs/LJ018-0201.npy -tests/data/ljspeech/wavs/LJ003-0106.wav|tests/data/ljspeech/wavs/LJ003-0106.npy -tests/data/ljspeech/wavs/LJ009-0135.wav|tests/data/ljspeech/wavs/LJ009-0135.npy -tests/data/ljspeech/wavs/LJ030-0177.wav|tests/data/ljspeech/wavs/LJ030-0177.npy -tests/data/ljspeech/wavs/LJ015-0213.wav|tests/data/ljspeech/wavs/LJ015-0213.npy -tests/data/ljspeech/wavs/LJ001-0114.wav|tests/data/ljspeech/wavs/LJ001-0114.npy -tests/data/ljspeech/wavs/LJ040-0177.wav|tests/data/ljspeech/wavs/LJ040-0177.npy -tests/data/ljspeech/wavs/LJ004-0201.wav|tests/data/ljspeech/wavs/LJ004-0201.npy -tests/data/ljspeech/wavs/LJ036-0011.wav|tests/data/ljspeech/wavs/LJ036-0011.npy -tests/data/ljspeech/wavs/LJ002-0223.wav|tests/data/ljspeech/wavs/LJ002-0223.npy -tests/data/ljspeech/wavs/LJ003-0137.wav|tests/data/ljspeech/wavs/LJ003-0137.npy -tests/data/ljspeech/wavs/LJ032-0006.wav|tests/data/ljspeech/wavs/LJ032-0006.npy -tests/data/ljspeech/wavs/LJ048-0220.wav|tests/data/ljspeech/wavs/LJ048-0220.npy -tests/data/ljspeech/wavs/LJ036-0191.wav|tests/data/ljspeech/wavs/LJ036-0191.npy -tests/data/ljspeech/wavs/LJ033-0174.wav|tests/data/ljspeech/wavs/LJ033-0174.npy -tests/data/ljspeech/wavs/LJ002-0052.wav|tests/data/ljspeech/wavs/LJ002-0052.npy -tests/data/ljspeech/wavs/LJ024-0073.wav|tests/data/ljspeech/wavs/LJ024-0073.npy -tests/data/ljspeech/wavs/LJ036-0179.wav|tests/data/ljspeech/wavs/LJ036-0179.npy -tests/data/ljspeech/wavs/LJ027-0098.wav|tests/data/ljspeech/wavs/LJ027-0098.npy -tests/data/ljspeech/wavs/LJ042-0244.wav|tests/data/ljspeech/wavs/LJ042-0244.npy -tests/data/ljspeech/wavs/LJ042-0158.wav|tests/data/ljspeech/wavs/LJ042-0158.npy -tests/data/ljspeech/wavs/LJ016-0173.wav|tests/data/ljspeech/wavs/LJ016-0173.npy -tests/data/ljspeech/wavs/LJ004-0077.wav|tests/data/ljspeech/wavs/LJ004-0077.npy -tests/data/ljspeech/wavs/LJ044-0084.wav|tests/data/ljspeech/wavs/LJ044-0084.npy -tests/data/ljspeech/wavs/LJ009-0103.wav|tests/data/ljspeech/wavs/LJ009-0103.npy -tests/data/ljspeech/wavs/LJ024-0048.wav|tests/data/ljspeech/wavs/LJ024-0048.npy -tests/data/ljspeech/wavs/LJ031-0224.wav|tests/data/ljspeech/wavs/LJ031-0224.npy -tests/data/ljspeech/wavs/LJ008-0100.wav|tests/data/ljspeech/wavs/LJ008-0100.npy -tests/data/ljspeech/wavs/LJ003-0019.wav|tests/data/ljspeech/wavs/LJ003-0019.npy -tests/data/ljspeech/wavs/LJ001-0039.wav|tests/data/ljspeech/wavs/LJ001-0039.npy -tests/data/ljspeech/wavs/LJ034-0169.wav|tests/data/ljspeech/wavs/LJ034-0169.npy -tests/data/ljspeech/wavs/LJ019-0327.wav|tests/data/ljspeech/wavs/LJ019-0327.npy -tests/data/ljspeech/wavs/LJ008-0172.wav|tests/data/ljspeech/wavs/LJ008-0172.npy -tests/data/ljspeech/wavs/LJ016-0395.wav|tests/data/ljspeech/wavs/LJ016-0395.npy -tests/data/ljspeech/wavs/LJ017-0036.wav|tests/data/ljspeech/wavs/LJ017-0036.npy -tests/data/ljspeech/wavs/LJ007-0027.wav|tests/data/ljspeech/wavs/LJ007-0027.npy -tests/data/ljspeech/wavs/LJ020-0095.wav|tests/data/ljspeech/wavs/LJ020-0095.npy -tests/data/ljspeech/wavs/LJ034-0179.wav|tests/data/ljspeech/wavs/LJ034-0179.npy -tests/data/ljspeech/wavs/LJ007-0146.wav|tests/data/ljspeech/wavs/LJ007-0146.npy -tests/data/ljspeech/wavs/LJ016-0446.wav|tests/data/ljspeech/wavs/LJ016-0446.npy -tests/data/ljspeech/wavs/LJ024-0082.wav|tests/data/ljspeech/wavs/LJ024-0082.npy -tests/data/ljspeech/wavs/LJ008-0088.wav|tests/data/ljspeech/wavs/LJ008-0088.npy -tests/data/ljspeech/wavs/LJ020-0032.wav|tests/data/ljspeech/wavs/LJ020-0032.npy -tests/data/ljspeech/wavs/LJ008-0266.wav|tests/data/ljspeech/wavs/LJ008-0266.npy -tests/data/ljspeech/wavs/LJ046-0130.wav|tests/data/ljspeech/wavs/LJ046-0130.npy -tests/data/ljspeech/wavs/LJ038-0243.wav|tests/data/ljspeech/wavs/LJ038-0243.npy -tests/data/ljspeech/wavs/LJ043-0088.wav|tests/data/ljspeech/wavs/LJ043-0088.npy -tests/data/ljspeech/wavs/LJ050-0051.wav|tests/data/ljspeech/wavs/LJ050-0051.npy -tests/data/ljspeech/wavs/LJ029-0192.wav|tests/data/ljspeech/wavs/LJ029-0192.npy -tests/data/ljspeech/wavs/LJ011-0118.wav|tests/data/ljspeech/wavs/LJ011-0118.npy -tests/data/ljspeech/wavs/LJ042-0185.wav|tests/data/ljspeech/wavs/LJ042-0185.npy -tests/data/ljspeech/wavs/LJ022-0128.wav|tests/data/ljspeech/wavs/LJ022-0128.npy -tests/data/ljspeech/wavs/LJ045-0163.wav|tests/data/ljspeech/wavs/LJ045-0163.npy -tests/data/ljspeech/wavs/LJ018-0254.wav|tests/data/ljspeech/wavs/LJ018-0254.npy -tests/data/ljspeech/wavs/LJ035-0203.wav|tests/data/ljspeech/wavs/LJ035-0203.npy -tests/data/ljspeech/wavs/LJ036-0216.wav|tests/data/ljspeech/wavs/LJ036-0216.npy -tests/data/ljspeech/wavs/LJ010-0011.wav|tests/data/ljspeech/wavs/LJ010-0011.npy -tests/data/ljspeech/wavs/LJ043-0173.wav|tests/data/ljspeech/wavs/LJ043-0173.npy -tests/data/ljspeech/wavs/LJ032-0041.wav|tests/data/ljspeech/wavs/LJ032-0041.npy -tests/data/ljspeech/wavs/LJ043-0161.wav|tests/data/ljspeech/wavs/LJ043-0161.npy -tests/data/ljspeech/wavs/LJ037-0007.wav|tests/data/ljspeech/wavs/LJ037-0007.npy -tests/data/ljspeech/wavs/LJ038-0111.wav|tests/data/ljspeech/wavs/LJ038-0111.npy -tests/data/ljspeech/wavs/LJ015-0217.wav|tests/data/ljspeech/wavs/LJ015-0217.npy -tests/data/ljspeech/wavs/LJ010-0101.wav|tests/data/ljspeech/wavs/LJ010-0101.npy -tests/data/ljspeech/wavs/LJ012-0026.wav|tests/data/ljspeech/wavs/LJ012-0026.npy -tests/data/ljspeech/wavs/LJ008-0314.wav|tests/data/ljspeech/wavs/LJ008-0314.npy -tests/data/ljspeech/wavs/LJ008-0308.wav|tests/data/ljspeech/wavs/LJ008-0308.npy -tests/data/ljspeech/wavs/LJ012-0285.wav|tests/data/ljspeech/wavs/LJ012-0285.npy -tests/data/ljspeech/wavs/LJ010-0128.wav|tests/data/ljspeech/wavs/LJ010-0128.npy -tests/data/ljspeech/wavs/LJ013-0259.wav|tests/data/ljspeech/wavs/LJ013-0259.npy -tests/data/ljspeech/wavs/LJ019-0066.wav|tests/data/ljspeech/wavs/LJ019-0066.npy -tests/data/ljspeech/wavs/LJ008-0222.wav|tests/data/ljspeech/wavs/LJ008-0222.npy -tests/data/ljspeech/wavs/LJ018-0083.wav|tests/data/ljspeech/wavs/LJ018-0083.npy -tests/data/ljspeech/wavs/LJ045-0006.wav|tests/data/ljspeech/wavs/LJ045-0006.npy -tests/data/ljspeech/wavs/LJ018-0262.wav|tests/data/ljspeech/wavs/LJ018-0262.npy -tests/data/ljspeech/wavs/LJ038-0261.wav|tests/data/ljspeech/wavs/LJ038-0261.npy -tests/data/ljspeech/wavs/LJ002-0148.wav|tests/data/ljspeech/wavs/LJ002-0148.npy -tests/data/ljspeech/wavs/LJ038-0175.wav|tests/data/ljspeech/wavs/LJ038-0175.npy -tests/data/ljspeech/wavs/LJ002-0179.wav|tests/data/ljspeech/wavs/LJ002-0179.npy -tests/data/ljspeech/wavs/LJ028-0184.wav|tests/data/ljspeech/wavs/LJ028-0184.npy -tests/data/ljspeech/wavs/LJ039-0202.wav|tests/data/ljspeech/wavs/LJ039-0202.npy -tests/data/ljspeech/wavs/LJ029-0110.wav|tests/data/ljspeech/wavs/LJ029-0110.npy -tests/data/ljspeech/wavs/LJ028-0300.wav|tests/data/ljspeech/wavs/LJ028-0300.npy -tests/data/ljspeech/wavs/LJ018-0207.wav|tests/data/ljspeech/wavs/LJ018-0207.npy -tests/data/ljspeech/wavs/LJ010-0264.wav|tests/data/ljspeech/wavs/LJ010-0264.npy -tests/data/ljspeech/wavs/LJ016-0444.wav|tests/data/ljspeech/wavs/LJ016-0444.npy -tests/data/ljspeech/wavs/LJ033-0051.wav|tests/data/ljspeech/wavs/LJ033-0051.npy -tests/data/ljspeech/wavs/LJ042-0237.wav|tests/data/ljspeech/wavs/LJ042-0237.npy -tests/data/ljspeech/wavs/LJ022-0077.wav|tests/data/ljspeech/wavs/LJ022-0077.npy -tests/data/ljspeech/wavs/LJ034-0086.wav|tests/data/ljspeech/wavs/LJ034-0086.npy -tests/data/ljspeech/wavs/LJ042-0052.wav|tests/data/ljspeech/wavs/LJ042-0052.npy -tests/data/ljspeech/wavs/LJ011-0182.wav|tests/data/ljspeech/wavs/LJ011-0182.npy -tests/data/ljspeech/wavs/LJ039-0150.wav|tests/data/ljspeech/wavs/LJ039-0150.npy -tests/data/ljspeech/wavs/LJ039-0198.wav|tests/data/ljspeech/wavs/LJ039-0198.npy -tests/data/ljspeech/wavs/LJ040-0209.wav|tests/data/ljspeech/wavs/LJ040-0209.npy -tests/data/ljspeech/wavs/LJ018-0378.wav|tests/data/ljspeech/wavs/LJ018-0378.npy -tests/data/ljspeech/wavs/LJ017-0234.wav|tests/data/ljspeech/wavs/LJ017-0234.npy -tests/data/ljspeech/wavs/LJ039-0056.wav|tests/data/ljspeech/wavs/LJ039-0056.npy -tests/data/ljspeech/wavs/LJ019-0191.wav|tests/data/ljspeech/wavs/LJ019-0191.npy -tests/data/ljspeech/wavs/LJ005-0212.wav|tests/data/ljspeech/wavs/LJ005-0212.npy -tests/data/ljspeech/wavs/LJ007-0193.wav|tests/data/ljspeech/wavs/LJ007-0193.npy -tests/data/ljspeech/wavs/LJ024-0097.wav|tests/data/ljspeech/wavs/LJ024-0097.npy -tests/data/ljspeech/wavs/LJ018-0344.wav|tests/data/ljspeech/wavs/LJ018-0344.npy -tests/data/ljspeech/wavs/LJ003-0182.wav|tests/data/ljspeech/wavs/LJ003-0182.npy -tests/data/ljspeech/wavs/LJ042-0175.wav|tests/data/ljspeech/wavs/LJ042-0175.npy -tests/data/ljspeech/wavs/LJ032-0138.wav|tests/data/ljspeech/wavs/LJ032-0138.npy -tests/data/ljspeech/wavs/LJ009-0113.wav|tests/data/ljspeech/wavs/LJ009-0113.npy -tests/data/ljspeech/wavs/LJ041-0116.wav|tests/data/ljspeech/wavs/LJ041-0116.npy -tests/data/ljspeech/wavs/LJ022-0159.wav|tests/data/ljspeech/wavs/LJ022-0159.npy -tests/data/ljspeech/wavs/LJ004-0146.wav|tests/data/ljspeech/wavs/LJ004-0146.npy -tests/data/ljspeech/wavs/LJ023-0039.wav|tests/data/ljspeech/wavs/LJ023-0039.npy -tests/data/ljspeech/wavs/LJ019-0347.wav|tests/data/ljspeech/wavs/LJ019-0347.npy -tests/data/ljspeech/wavs/LJ044-0148.wav|tests/data/ljspeech/wavs/LJ044-0148.npy -tests/data/ljspeech/wavs/LJ022-0171.wav|tests/data/ljspeech/wavs/LJ022-0171.npy -tests/data/ljspeech/wavs/LJ035-0017.wav|tests/data/ljspeech/wavs/LJ035-0017.npy -tests/data/ljspeech/wavs/LJ011-0016.wav|tests/data/ljspeech/wavs/LJ011-0016.npy -tests/data/ljspeech/wavs/LJ005-0017.wav|tests/data/ljspeech/wavs/LJ005-0017.npy -tests/data/ljspeech/wavs/LJ050-0143.wav|tests/data/ljspeech/wavs/LJ050-0143.npy -tests/data/ljspeech/wavs/LJ045-0241.wav|tests/data/ljspeech/wavs/LJ045-0241.npy -tests/data/ljspeech/wavs/LJ004-0241.wav|tests/data/ljspeech/wavs/LJ004-0241.npy -tests/data/ljspeech/wavs/LJ002-0254.wav|tests/data/ljspeech/wavs/LJ002-0254.npy -tests/data/ljspeech/wavs/LJ011-0079.wav|tests/data/ljspeech/wavs/LJ011-0079.npy -tests/data/ljspeech/wavs/LJ040-0233.wav|tests/data/ljspeech/wavs/LJ040-0233.npy -tests/data/ljspeech/wavs/LJ028-0498.wav|tests/data/ljspeech/wavs/LJ028-0498.npy -tests/data/ljspeech/wavs/LJ028-0407.wav|tests/data/ljspeech/wavs/LJ028-0407.npy -tests/data/ljspeech/wavs/LJ009-0205.wav|tests/data/ljspeech/wavs/LJ009-0205.npy -tests/data/ljspeech/wavs/LJ028-0113.wav|tests/data/ljspeech/wavs/LJ028-0113.npy -tests/data/ljspeech/wavs/LJ017-0114.wav|tests/data/ljspeech/wavs/LJ017-0114.npy -tests/data/ljspeech/wavs/LJ015-0015.wav|tests/data/ljspeech/wavs/LJ015-0015.npy -tests/data/ljspeech/wavs/LJ013-0020.wav|tests/data/ljspeech/wavs/LJ013-0020.npy -tests/data/ljspeech/wavs/LJ021-0131.wav|tests/data/ljspeech/wavs/LJ021-0131.npy -tests/data/ljspeech/wavs/LJ048-0021.wav|tests/data/ljspeech/wavs/LJ048-0021.npy -tests/data/ljspeech/wavs/LJ043-0156.wav|tests/data/ljspeech/wavs/LJ043-0156.npy -tests/data/ljspeech/wavs/LJ013-0024.wav|tests/data/ljspeech/wavs/LJ013-0024.npy -tests/data/ljspeech/wavs/LJ042-0160.wav|tests/data/ljspeech/wavs/LJ042-0160.npy -tests/data/ljspeech/wavs/LJ009-0262.wav|tests/data/ljspeech/wavs/LJ009-0262.npy -tests/data/ljspeech/wavs/LJ044-0117.wav|tests/data/ljspeech/wavs/LJ044-0117.npy -tests/data/ljspeech/wavs/LJ040-0084.wav|tests/data/ljspeech/wavs/LJ040-0084.npy -tests/data/ljspeech/wavs/LJ003-0142.wav|tests/data/ljspeech/wavs/LJ003-0142.npy -tests/data/ljspeech/wavs/LJ034-0113.wav|tests/data/ljspeech/wavs/LJ034-0113.npy -tests/data/ljspeech/wavs/LJ043-0135.wav|tests/data/ljspeech/wavs/LJ043-0135.npy -tests/data/ljspeech/wavs/LJ035-0006.wav|tests/data/ljspeech/wavs/LJ035-0006.npy -tests/data/ljspeech/wavs/LJ046-0118.wav|tests/data/ljspeech/wavs/LJ046-0118.npy -tests/data/ljspeech/wavs/LJ045-0145.wav|tests/data/ljspeech/wavs/LJ045-0145.npy -tests/data/ljspeech/wavs/LJ015-0077.wav|tests/data/ljspeech/wavs/LJ015-0077.npy -tests/data/ljspeech/wavs/LJ020-0007.wav|tests/data/ljspeech/wavs/LJ020-0007.npy -tests/data/ljspeech/wavs/LJ038-0128.wav|tests/data/ljspeech/wavs/LJ038-0128.npy -tests/data/ljspeech/wavs/LJ033-0028.wav|tests/data/ljspeech/wavs/LJ033-0028.npy -tests/data/ljspeech/wavs/LJ007-0221.wav|tests/data/ljspeech/wavs/LJ007-0221.npy -tests/data/ljspeech/wavs/LJ004-0027.wav|tests/data/ljspeech/wavs/LJ004-0027.npy -tests/data/ljspeech/wavs/LJ005-0094.wav|tests/data/ljspeech/wavs/LJ005-0094.npy -tests/data/ljspeech/wavs/LJ003-0232.wav|tests/data/ljspeech/wavs/LJ003-0232.npy -tests/data/ljspeech/wavs/LJ038-0068.wav|tests/data/ljspeech/wavs/LJ038-0068.npy -tests/data/ljspeech/wavs/LJ009-0121.wav|tests/data/ljspeech/wavs/LJ009-0121.npy -tests/data/ljspeech/wavs/LJ004-0010.wav|tests/data/ljspeech/wavs/LJ004-0010.npy -tests/data/ljspeech/wavs/LJ021-0033.wav|tests/data/ljspeech/wavs/LJ021-0033.npy -tests/data/ljspeech/wavs/LJ006-0089.wav|tests/data/ljspeech/wavs/LJ006-0089.npy -tests/data/ljspeech/wavs/LJ028-0436.wav|tests/data/ljspeech/wavs/LJ028-0436.npy -tests/data/ljspeech/wavs/LJ019-0316.wav|tests/data/ljspeech/wavs/LJ019-0316.npy -tests/data/ljspeech/wavs/LJ021-0048.wav|tests/data/ljspeech/wavs/LJ021-0048.npy -tests/data/ljspeech/wavs/LJ008-0285.wav|tests/data/ljspeech/wavs/LJ008-0285.npy -tests/data/ljspeech/wavs/LJ019-0338.wav|tests/data/ljspeech/wavs/LJ019-0338.npy -tests/data/ljspeech/wavs/LJ014-0147.wav|tests/data/ljspeech/wavs/LJ014-0147.npy -tests/data/ljspeech/wavs/LJ003-0149.wav|tests/data/ljspeech/wavs/LJ003-0149.npy -tests/data/ljspeech/wavs/LJ004-0206.wav|tests/data/ljspeech/wavs/LJ004-0206.npy -tests/data/ljspeech/wavs/LJ015-0172.wav|tests/data/ljspeech/wavs/LJ015-0172.npy -tests/data/ljspeech/wavs/LJ009-0236.wav|tests/data/ljspeech/wavs/LJ009-0236.npy -tests/data/ljspeech/wavs/LJ038-0144.wav|tests/data/ljspeech/wavs/LJ038-0144.npy -tests/data/ljspeech/wavs/LJ021-0102.wav|tests/data/ljspeech/wavs/LJ021-0102.npy -tests/data/ljspeech/wavs/LJ028-0433.wav|tests/data/ljspeech/wavs/LJ028-0433.npy -tests/data/ljspeech/wavs/LJ028-0087.wav|tests/data/ljspeech/wavs/LJ028-0087.npy -tests/data/ljspeech/wavs/LJ037-0197.wav|tests/data/ljspeech/wavs/LJ037-0197.npy -tests/data/ljspeech/wavs/LJ030-0159.wav|tests/data/ljspeech/wavs/LJ030-0159.npy -tests/data/ljspeech/wavs/LJ025-0013.wav|tests/data/ljspeech/wavs/LJ025-0013.npy -tests/data/ljspeech/wavs/LJ016-0276.wav|tests/data/ljspeech/wavs/LJ016-0276.npy -tests/data/ljspeech/wavs/LJ019-0206.wav|tests/data/ljspeech/wavs/LJ019-0206.npy -tests/data/ljspeech/wavs/LJ005-0158.wav|tests/data/ljspeech/wavs/LJ005-0158.npy -tests/data/ljspeech/wavs/LJ027-0162.wav|tests/data/ljspeech/wavs/LJ027-0162.npy -tests/data/ljspeech/wavs/LJ043-0183.wav|tests/data/ljspeech/wavs/LJ043-0183.npy -tests/data/ljspeech/wavs/LJ024-0104.wav|tests/data/ljspeech/wavs/LJ024-0104.npy -tests/data/ljspeech/wavs/LJ050-0164.wav|tests/data/ljspeech/wavs/LJ050-0164.npy -tests/data/ljspeech/wavs/LJ011-0233.wav|tests/data/ljspeech/wavs/LJ011-0233.npy -tests/data/ljspeech/wavs/LJ023-0065.wav|tests/data/ljspeech/wavs/LJ023-0065.npy -tests/data/ljspeech/wavs/LJ046-0032.wav|tests/data/ljspeech/wavs/LJ046-0032.npy -tests/data/ljspeech/wavs/LJ016-0347.wav|tests/data/ljspeech/wavs/LJ016-0347.npy -tests/data/ljspeech/wavs/LJ005-0182.wav|tests/data/ljspeech/wavs/LJ005-0182.npy -tests/data/ljspeech/wavs/LJ011-0237.wav|tests/data/ljspeech/wavs/LJ011-0237.npy -tests/data/ljspeech/wavs/LJ027-0168.wav|tests/data/ljspeech/wavs/LJ027-0168.npy -tests/data/ljspeech/wavs/LJ017-0167.wav|tests/data/ljspeech/wavs/LJ017-0167.npy -tests/data/ljspeech/wavs/LJ037-0086.wav|tests/data/ljspeech/wavs/LJ037-0086.npy -tests/data/ljspeech/wavs/LJ045-0250.wav|tests/data/ljspeech/wavs/LJ045-0250.npy -tests/data/ljspeech/wavs/LJ010-0251.wav|tests/data/ljspeech/wavs/LJ010-0251.npy -tests/data/ljspeech/wavs/LJ036-0068.wav|tests/data/ljspeech/wavs/LJ036-0068.npy -tests/data/ljspeech/wavs/LJ019-0282.wav|tests/data/ljspeech/wavs/LJ019-0282.npy -tests/data/ljspeech/wavs/LJ028-0141.wav|tests/data/ljspeech/wavs/LJ028-0141.npy -tests/data/ljspeech/wavs/LJ016-0281.wav|tests/data/ljspeech/wavs/LJ016-0281.npy -tests/data/ljspeech/wavs/LJ023-0102.wav|tests/data/ljspeech/wavs/LJ023-0102.npy -tests/data/ljspeech/wavs/LJ018-0056.wav|tests/data/ljspeech/wavs/LJ018-0056.npy -tests/data/ljspeech/wavs/LJ007-0171.wav|tests/data/ljspeech/wavs/LJ007-0171.npy -tests/data/ljspeech/wavs/LJ016-0393.wav|tests/data/ljspeech/wavs/LJ016-0393.npy -tests/data/ljspeech/wavs/LJ010-0213.wav|tests/data/ljspeech/wavs/LJ010-0213.npy -tests/data/ljspeech/wavs/LJ005-0297.wav|tests/data/ljspeech/wavs/LJ005-0297.npy -tests/data/ljspeech/wavs/LJ008-0122.wav|tests/data/ljspeech/wavs/LJ008-0122.npy -tests/data/ljspeech/wavs/LJ011-0074.wav|tests/data/ljspeech/wavs/LJ011-0074.npy -tests/data/ljspeech/wavs/LJ036-0185.wav|tests/data/ljspeech/wavs/LJ036-0185.npy -tests/data/ljspeech/wavs/LJ037-0095.wav|tests/data/ljspeech/wavs/LJ037-0095.npy -tests/data/ljspeech/wavs/LJ033-0124.wav|tests/data/ljspeech/wavs/LJ033-0124.npy -tests/data/ljspeech/wavs/LJ033-0069.wav|tests/data/ljspeech/wavs/LJ033-0069.npy -tests/data/ljspeech/wavs/LJ027-0125.wav|tests/data/ljspeech/wavs/LJ027-0125.npy -tests/data/ljspeech/wavs/LJ038-0290.wav|tests/data/ljspeech/wavs/LJ038-0290.npy -tests/data/ljspeech/wavs/LJ016-0232.wav|tests/data/ljspeech/wavs/LJ016-0232.npy -tests/data/ljspeech/wavs/LJ040-0179.wav|tests/data/ljspeech/wavs/LJ040-0179.npy -tests/data/ljspeech/wavs/LJ042-0137.wav|tests/data/ljspeech/wavs/LJ042-0137.npy -tests/data/ljspeech/wavs/LJ023-0048.wav|tests/data/ljspeech/wavs/LJ023-0048.npy -tests/data/ljspeech/wavs/LJ042-0070.wav|tests/data/ljspeech/wavs/LJ042-0070.npy -tests/data/ljspeech/wavs/LJ004-0117.wav|tests/data/ljspeech/wavs/LJ004-0117.npy -tests/data/ljspeech/wavs/LJ008-0237.wav|tests/data/ljspeech/wavs/LJ008-0237.npy -tests/data/ljspeech/wavs/LJ019-0336.wav|tests/data/ljspeech/wavs/LJ019-0336.npy -tests/data/ljspeech/wavs/LJ019-0334.wav|tests/data/ljspeech/wavs/LJ019-0334.npy -tests/data/ljspeech/wavs/LJ016-0177.wav|tests/data/ljspeech/wavs/LJ016-0177.npy -tests/data/ljspeech/wavs/LJ050-0251.wav|tests/data/ljspeech/wavs/LJ050-0251.npy -tests/data/ljspeech/wavs/LJ023-0052.wav|tests/data/ljspeech/wavs/LJ023-0052.npy -tests/data/ljspeech/wavs/LJ005-0279.wav|tests/data/ljspeech/wavs/LJ005-0279.npy -tests/data/ljspeech/wavs/LJ037-0063.wav|tests/data/ljspeech/wavs/LJ037-0063.npy -tests/data/ljspeech/wavs/LJ024-0028.wav|tests/data/ljspeech/wavs/LJ024-0028.npy -tests/data/ljspeech/wavs/LJ011-0231.wav|tests/data/ljspeech/wavs/LJ011-0231.npy -tests/data/ljspeech/wavs/LJ037-0129.wav|tests/data/ljspeech/wavs/LJ037-0129.npy -tests/data/ljspeech/wavs/LJ002-0309.wav|tests/data/ljspeech/wavs/LJ002-0309.npy -tests/data/ljspeech/wavs/LJ016-0176.wav|tests/data/ljspeech/wavs/LJ016-0176.npy -tests/data/ljspeech/wavs/LJ002-0096.wav|tests/data/ljspeech/wavs/LJ002-0096.npy -tests/data/ljspeech/wavs/LJ002-0252.wav|tests/data/ljspeech/wavs/LJ002-0252.npy -tests/data/ljspeech/wavs/LJ040-0158.wav|tests/data/ljspeech/wavs/LJ040-0158.npy -tests/data/ljspeech/wavs/LJ001-0043.wav|tests/data/ljspeech/wavs/LJ001-0043.npy -tests/data/ljspeech/wavs/LJ030-0197.wav|tests/data/ljspeech/wavs/LJ030-0197.npy -tests/data/ljspeech/wavs/LJ014-0130.wav|tests/data/ljspeech/wavs/LJ014-0130.npy -tests/data/ljspeech/wavs/LJ014-0272.wav|tests/data/ljspeech/wavs/LJ014-0272.npy -tests/data/ljspeech/wavs/LJ039-0169.wav|tests/data/ljspeech/wavs/LJ039-0169.npy -tests/data/ljspeech/wavs/LJ039-0093.wav|tests/data/ljspeech/wavs/LJ039-0093.npy -tests/data/ljspeech/wavs/LJ045-0134.wav|tests/data/ljspeech/wavs/LJ045-0134.npy -tests/data/ljspeech/wavs/LJ032-0092.wav|tests/data/ljspeech/wavs/LJ032-0092.npy -tests/data/ljspeech/wavs/LJ032-0040.wav|tests/data/ljspeech/wavs/LJ032-0040.npy -tests/data/ljspeech/wavs/LJ040-0048.wav|tests/data/ljspeech/wavs/LJ040-0048.npy -tests/data/ljspeech/wavs/LJ022-0109.wav|tests/data/ljspeech/wavs/LJ022-0109.npy -tests/data/ljspeech/wavs/LJ033-0197.wav|tests/data/ljspeech/wavs/LJ033-0197.npy -tests/data/ljspeech/wavs/LJ022-0051.wav|tests/data/ljspeech/wavs/LJ022-0051.npy -tests/data/ljspeech/wavs/LJ045-0079.wav|tests/data/ljspeech/wavs/LJ045-0079.npy -tests/data/ljspeech/wavs/LJ012-0268.wav|tests/data/ljspeech/wavs/LJ012-0268.npy -tests/data/ljspeech/wavs/LJ031-0106.wav|tests/data/ljspeech/wavs/LJ031-0106.npy -tests/data/ljspeech/wavs/LJ045-0119.wav|tests/data/ljspeech/wavs/LJ045-0119.npy -tests/data/ljspeech/wavs/LJ042-0231.wav|tests/data/ljspeech/wavs/LJ042-0231.npy -tests/data/ljspeech/wavs/LJ024-0062.wav|tests/data/ljspeech/wavs/LJ024-0062.npy -tests/data/ljspeech/wavs/LJ040-0203.wav|tests/data/ljspeech/wavs/LJ040-0203.npy -tests/data/ljspeech/wavs/LJ002-0070.wav|tests/data/ljspeech/wavs/LJ002-0070.npy -tests/data/ljspeech/wavs/LJ020-0091.wav|tests/data/ljspeech/wavs/LJ020-0091.npy -tests/data/ljspeech/wavs/LJ015-0005.wav|tests/data/ljspeech/wavs/LJ015-0005.npy -tests/data/ljspeech/wavs/LJ027-0084.wav|tests/data/ljspeech/wavs/LJ027-0084.npy -tests/data/ljspeech/wavs/LJ018-0206.wav|tests/data/ljspeech/wavs/LJ018-0206.npy -tests/data/ljspeech/wavs/LJ023-0094.wav|tests/data/ljspeech/wavs/LJ023-0094.npy -tests/data/ljspeech/wavs/LJ011-0162.wav|tests/data/ljspeech/wavs/LJ011-0162.npy -tests/data/ljspeech/wavs/LJ024-0006.wav|tests/data/ljspeech/wavs/LJ024-0006.npy -tests/data/ljspeech/wavs/LJ028-0043.wav|tests/data/ljspeech/wavs/LJ028-0043.npy -tests/data/ljspeech/wavs/LJ038-0205.wav|tests/data/ljspeech/wavs/LJ038-0205.npy -tests/data/ljspeech/wavs/LJ028-0080.wav|tests/data/ljspeech/wavs/LJ028-0080.npy -tests/data/ljspeech/wavs/LJ015-0222.wav|tests/data/ljspeech/wavs/LJ015-0222.npy -tests/data/ljspeech/wavs/LJ039-0166.wav|tests/data/ljspeech/wavs/LJ039-0166.npy -tests/data/ljspeech/wavs/LJ004-0239.wav|tests/data/ljspeech/wavs/LJ004-0239.npy -tests/data/ljspeech/wavs/LJ001-0123.wav|tests/data/ljspeech/wavs/LJ001-0123.npy -tests/data/ljspeech/wavs/LJ028-0065.wav|tests/data/ljspeech/wavs/LJ028-0065.npy -tests/data/ljspeech/wavs/LJ026-0045.wav|tests/data/ljspeech/wavs/LJ026-0045.npy -tests/data/ljspeech/wavs/LJ036-0005.wav|tests/data/ljspeech/wavs/LJ036-0005.npy -tests/data/ljspeech/wavs/LJ043-0080.wav|tests/data/ljspeech/wavs/LJ043-0080.npy -tests/data/ljspeech/wavs/LJ048-0247.wav|tests/data/ljspeech/wavs/LJ048-0247.npy -tests/data/ljspeech/wavs/LJ022-0203.wav|tests/data/ljspeech/wavs/LJ022-0203.npy -tests/data/ljspeech/wavs/LJ042-0016.wav|tests/data/ljspeech/wavs/LJ042-0016.npy -tests/data/ljspeech/wavs/LJ028-0443.wav|tests/data/ljspeech/wavs/LJ028-0443.npy -tests/data/ljspeech/wavs/LJ040-0227.wav|tests/data/ljspeech/wavs/LJ040-0227.npy -tests/data/ljspeech/wavs/LJ002-0118.wav|tests/data/ljspeech/wavs/LJ002-0118.npy -tests/data/ljspeech/wavs/LJ004-0042.wav|tests/data/ljspeech/wavs/LJ004-0042.npy -tests/data/ljspeech/wavs/LJ010-0230.wav|tests/data/ljspeech/wavs/LJ010-0230.npy -tests/data/ljspeech/wavs/LJ018-0285.wav|tests/data/ljspeech/wavs/LJ018-0285.npy -tests/data/ljspeech/wavs/LJ013-0243.wav|tests/data/ljspeech/wavs/LJ013-0243.npy -tests/data/ljspeech/wavs/LJ014-0030.wav|tests/data/ljspeech/wavs/LJ014-0030.npy -tests/data/ljspeech/wavs/LJ008-0251.wav|tests/data/ljspeech/wavs/LJ008-0251.npy -tests/data/ljspeech/wavs/LJ016-0315.wav|tests/data/ljspeech/wavs/LJ016-0315.npy -tests/data/ljspeech/wavs/LJ019-0119.wav|tests/data/ljspeech/wavs/LJ019-0119.npy -tests/data/ljspeech/wavs/LJ016-0333.wav|tests/data/ljspeech/wavs/LJ016-0333.npy -tests/data/ljspeech/wavs/LJ014-0072.wav|tests/data/ljspeech/wavs/LJ014-0072.npy -tests/data/ljspeech/wavs/LJ016-0321.wav|tests/data/ljspeech/wavs/LJ016-0321.npy -tests/data/ljspeech/wavs/LJ042-0234.wav|tests/data/ljspeech/wavs/LJ042-0234.npy -tests/data/ljspeech/wavs/LJ043-0074.wav|tests/data/ljspeech/wavs/LJ043-0074.npy -tests/data/ljspeech/wavs/LJ001-0094.wav|tests/data/ljspeech/wavs/LJ001-0094.npy -tests/data/ljspeech/wavs/LJ019-0105.wav|tests/data/ljspeech/wavs/LJ019-0105.npy -tests/data/ljspeech/wavs/LJ036-0081.wav|tests/data/ljspeech/wavs/LJ036-0081.npy -tests/data/ljspeech/wavs/LJ016-0279.wav|tests/data/ljspeech/wavs/LJ016-0279.npy -tests/data/ljspeech/wavs/LJ006-0178.wav|tests/data/ljspeech/wavs/LJ006-0178.npy -tests/data/ljspeech/wavs/LJ019-0073.wav|tests/data/ljspeech/wavs/LJ019-0073.npy -tests/data/ljspeech/wavs/LJ038-0026.wav|tests/data/ljspeech/wavs/LJ038-0026.npy -tests/data/ljspeech/wavs/LJ003-0140.wav|tests/data/ljspeech/wavs/LJ003-0140.npy -tests/data/ljspeech/wavs/LJ046-0012.wav|tests/data/ljspeech/wavs/LJ046-0012.npy -tests/data/ljspeech/wavs/LJ016-0275.wav|tests/data/ljspeech/wavs/LJ016-0275.npy -tests/data/ljspeech/wavs/LJ046-0192.wav|tests/data/ljspeech/wavs/LJ046-0192.npy -tests/data/ljspeech/wavs/LJ030-0147.wav|tests/data/ljspeech/wavs/LJ030-0147.npy -tests/data/ljspeech/wavs/LJ004-0024.wav|tests/data/ljspeech/wavs/LJ004-0024.npy -tests/data/ljspeech/wavs/LJ016-0169.wav|tests/data/ljspeech/wavs/LJ016-0169.npy -tests/data/ljspeech/wavs/LJ030-0058.wav|tests/data/ljspeech/wavs/LJ030-0058.npy -tests/data/ljspeech/wavs/LJ027-0120.wav|tests/data/ljspeech/wavs/LJ027-0120.npy -tests/data/ljspeech/wavs/LJ012-0153.wav|tests/data/ljspeech/wavs/LJ012-0153.npy -tests/data/ljspeech/wavs/LJ043-0040.wav|tests/data/ljspeech/wavs/LJ043-0040.npy -tests/data/ljspeech/wavs/LJ018-0142.wav|tests/data/ljspeech/wavs/LJ018-0142.npy -tests/data/ljspeech/wavs/LJ030-0185.wav|tests/data/ljspeech/wavs/LJ030-0185.npy -tests/data/ljspeech/wavs/LJ030-0041.wav|tests/data/ljspeech/wavs/LJ030-0041.npy -tests/data/ljspeech/wavs/LJ034-0217.wav|tests/data/ljspeech/wavs/LJ034-0217.npy -tests/data/ljspeech/wavs/LJ018-0220.wav|tests/data/ljspeech/wavs/LJ018-0220.npy -tests/data/ljspeech/wavs/LJ040-0224.wav|tests/data/ljspeech/wavs/LJ040-0224.npy -tests/data/ljspeech/wavs/LJ018-0287.wav|tests/data/ljspeech/wavs/LJ018-0287.npy -tests/data/ljspeech/wavs/LJ015-0056.wav|tests/data/ljspeech/wavs/LJ015-0056.npy -tests/data/ljspeech/wavs/LJ018-0393.wav|tests/data/ljspeech/wavs/LJ018-0393.npy -tests/data/ljspeech/wavs/LJ010-0115.wav|tests/data/ljspeech/wavs/LJ010-0115.npy -tests/data/ljspeech/wavs/LJ015-0108.wav|tests/data/ljspeech/wavs/LJ015-0108.npy -tests/data/ljspeech/wavs/LJ002-0182.wav|tests/data/ljspeech/wavs/LJ002-0182.npy -tests/data/ljspeech/wavs/LJ019-0079.wav|tests/data/ljspeech/wavs/LJ019-0079.npy -tests/data/ljspeech/wavs/LJ015-0165.wav|tests/data/ljspeech/wavs/LJ015-0165.npy -tests/data/ljspeech/wavs/LJ037-0118.wav|tests/data/ljspeech/wavs/LJ037-0118.npy -tests/data/ljspeech/wavs/LJ028-0313.wav|tests/data/ljspeech/wavs/LJ028-0313.npy -tests/data/ljspeech/wavs/LJ018-0049.wav|tests/data/ljspeech/wavs/LJ018-0049.npy -tests/data/ljspeech/wavs/LJ012-0186.wav|tests/data/ljspeech/wavs/LJ012-0186.npy -tests/data/ljspeech/wavs/LJ009-0148.wav|tests/data/ljspeech/wavs/LJ009-0148.npy -tests/data/ljspeech/wavs/LJ003-0120.wav|tests/data/ljspeech/wavs/LJ003-0120.npy -tests/data/ljspeech/wavs/LJ009-0156.wav|tests/data/ljspeech/wavs/LJ009-0156.npy -tests/data/ljspeech/wavs/LJ040-0115.wav|tests/data/ljspeech/wavs/LJ040-0115.npy -tests/data/ljspeech/wavs/LJ010-0065.wav|tests/data/ljspeech/wavs/LJ010-0065.npy -tests/data/ljspeech/wavs/LJ050-0216.wav|tests/data/ljspeech/wavs/LJ050-0216.npy -tests/data/ljspeech/wavs/LJ032-0118.wav|tests/data/ljspeech/wavs/LJ032-0118.npy -tests/data/ljspeech/wavs/LJ036-0169.wav|tests/data/ljspeech/wavs/LJ036-0169.npy -tests/data/ljspeech/wavs/LJ003-0071.wav|tests/data/ljspeech/wavs/LJ003-0071.npy -tests/data/ljspeech/wavs/LJ040-0029.wav|tests/data/ljspeech/wavs/LJ040-0029.npy -tests/data/ljspeech/wavs/LJ048-0045.wav|tests/data/ljspeech/wavs/LJ048-0045.npy -tests/data/ljspeech/wavs/LJ025-0120.wav|tests/data/ljspeech/wavs/LJ025-0120.npy -tests/data/ljspeech/wavs/LJ032-0223.wav|tests/data/ljspeech/wavs/LJ032-0223.npy -tests/data/ljspeech/wavs/LJ012-0208.wav|tests/data/ljspeech/wavs/LJ012-0208.npy -tests/data/ljspeech/wavs/LJ001-0054.wav|tests/data/ljspeech/wavs/LJ001-0054.npy -tests/data/ljspeech/wavs/LJ038-0226.wav|tests/data/ljspeech/wavs/LJ038-0226.npy -tests/data/ljspeech/wavs/LJ008-0086.wav|tests/data/ljspeech/wavs/LJ008-0086.npy -tests/data/ljspeech/wavs/LJ002-0111.wav|tests/data/ljspeech/wavs/LJ002-0111.npy -tests/data/ljspeech/wavs/LJ025-0063.wav|tests/data/ljspeech/wavs/LJ025-0063.npy -tests/data/ljspeech/wavs/LJ021-0011.wav|tests/data/ljspeech/wavs/LJ021-0011.npy -tests/data/ljspeech/wavs/LJ006-0210.wav|tests/data/ljspeech/wavs/LJ006-0210.npy -tests/data/ljspeech/wavs/LJ035-0056.wav|tests/data/ljspeech/wavs/LJ035-0056.npy -tests/data/ljspeech/wavs/LJ042-0053.wav|tests/data/ljspeech/wavs/LJ042-0053.npy -tests/data/ljspeech/wavs/LJ013-0141.wav|tests/data/ljspeech/wavs/LJ013-0141.npy -tests/data/ljspeech/wavs/LJ011-0257.wav|tests/data/ljspeech/wavs/LJ011-0257.npy -tests/data/ljspeech/wavs/LJ005-0244.wav|tests/data/ljspeech/wavs/LJ005-0244.npy -tests/data/ljspeech/wavs/LJ030-0052.wav|tests/data/ljspeech/wavs/LJ030-0052.npy -tests/data/ljspeech/wavs/LJ038-0061.wav|tests/data/ljspeech/wavs/LJ038-0061.npy -tests/data/ljspeech/wavs/LJ050-0089.wav|tests/data/ljspeech/wavs/LJ050-0089.npy -tests/data/ljspeech/wavs/LJ009-0132.wav|tests/data/ljspeech/wavs/LJ009-0132.npy -tests/data/ljspeech/wavs/LJ019-0130.wav|tests/data/ljspeech/wavs/LJ019-0130.npy -tests/data/ljspeech/wavs/LJ008-0310.wav|tests/data/ljspeech/wavs/LJ008-0310.npy -tests/data/ljspeech/wavs/LJ022-0201.wav|tests/data/ljspeech/wavs/LJ022-0201.npy -tests/data/ljspeech/wavs/LJ021-0042.wav|tests/data/ljspeech/wavs/LJ021-0042.npy -tests/data/ljspeech/wavs/LJ011-0167.wav|tests/data/ljspeech/wavs/LJ011-0167.npy -tests/data/ljspeech/wavs/LJ033-0117.wav|tests/data/ljspeech/wavs/LJ033-0117.npy -tests/data/ljspeech/wavs/LJ028-0410.wav|tests/data/ljspeech/wavs/LJ028-0410.npy -tests/data/ljspeech/wavs/LJ005-0135.wav|tests/data/ljspeech/wavs/LJ005-0135.npy -tests/data/ljspeech/wavs/LJ044-0156.wav|tests/data/ljspeech/wavs/LJ044-0156.npy -tests/data/ljspeech/wavs/LJ019-0076.wav|tests/data/ljspeech/wavs/LJ019-0076.npy -tests/data/ljspeech/wavs/LJ025-0028.wav|tests/data/ljspeech/wavs/LJ025-0028.npy -tests/data/ljspeech/wavs/LJ048-0200.wav|tests/data/ljspeech/wavs/LJ048-0200.npy -tests/data/ljspeech/wavs/LJ041-0039.wav|tests/data/ljspeech/wavs/LJ041-0039.npy -tests/data/ljspeech/wavs/LJ017-0090.wav|tests/data/ljspeech/wavs/LJ017-0090.npy -tests/data/ljspeech/wavs/LJ027-0146.wav|tests/data/ljspeech/wavs/LJ027-0146.npy -tests/data/ljspeech/wavs/LJ023-0040.wav|tests/data/ljspeech/wavs/LJ023-0040.npy -tests/data/ljspeech/wavs/LJ009-0015.wav|tests/data/ljspeech/wavs/LJ009-0015.npy -tests/data/ljspeech/wavs/LJ047-0113.wav|tests/data/ljspeech/wavs/LJ047-0113.npy -tests/data/ljspeech/wavs/LJ049-0031.wav|tests/data/ljspeech/wavs/LJ049-0031.npy -tests/data/ljspeech/wavs/LJ043-0150.wav|tests/data/ljspeech/wavs/LJ043-0150.npy -tests/data/ljspeech/wavs/LJ016-0059.wav|tests/data/ljspeech/wavs/LJ016-0059.npy -tests/data/ljspeech/wavs/LJ030-0228.wav|tests/data/ljspeech/wavs/LJ030-0228.npy -tests/data/ljspeech/wavs/LJ019-0265.wav|tests/data/ljspeech/wavs/LJ019-0265.npy -tests/data/ljspeech/wavs/LJ028-0206.wav|tests/data/ljspeech/wavs/LJ028-0206.npy -tests/data/ljspeech/wavs/LJ021-0117.wav|tests/data/ljspeech/wavs/LJ021-0117.npy -tests/data/ljspeech/wavs/LJ008-0215.wav|tests/data/ljspeech/wavs/LJ008-0215.npy -tests/data/ljspeech/wavs/LJ010-0234.wav|tests/data/ljspeech/wavs/LJ010-0234.npy -tests/data/ljspeech/wavs/LJ023-0051.wav|tests/data/ljspeech/wavs/LJ023-0051.npy -tests/data/ljspeech/wavs/LJ012-0249.wav|tests/data/ljspeech/wavs/LJ012-0249.npy -tests/data/ljspeech/wavs/LJ050-0274.wav|tests/data/ljspeech/wavs/LJ050-0274.npy -tests/data/ljspeech/wavs/LJ034-0195.wav|tests/data/ljspeech/wavs/LJ034-0195.npy -tests/data/ljspeech/wavs/LJ005-0282.wav|tests/data/ljspeech/wavs/LJ005-0282.npy -tests/data/ljspeech/wavs/LJ001-0020.wav|tests/data/ljspeech/wavs/LJ001-0020.npy -tests/data/ljspeech/wavs/LJ028-0398.wav|tests/data/ljspeech/wavs/LJ028-0398.npy -tests/data/ljspeech/wavs/LJ030-0047.wav|tests/data/ljspeech/wavs/LJ030-0047.npy -tests/data/ljspeech/wavs/LJ013-0215.wav|tests/data/ljspeech/wavs/LJ013-0215.npy -tests/data/ljspeech/wavs/LJ028-0428.wav|tests/data/ljspeech/wavs/LJ028-0428.npy -tests/data/ljspeech/wavs/LJ012-0240.wav|tests/data/ljspeech/wavs/LJ012-0240.npy -tests/data/ljspeech/wavs/LJ005-0269.wav|tests/data/ljspeech/wavs/LJ005-0269.npy -tests/data/ljspeech/wavs/LJ032-0142.wav|tests/data/ljspeech/wavs/LJ032-0142.npy -tests/data/ljspeech/wavs/LJ018-0117.wav|tests/data/ljspeech/wavs/LJ018-0117.npy -tests/data/ljspeech/wavs/LJ040-0077.wav|tests/data/ljspeech/wavs/LJ040-0077.npy -tests/data/ljspeech/wavs/LJ046-0011.wav|tests/data/ljspeech/wavs/LJ046-0011.npy -tests/data/ljspeech/wavs/LJ037-0153.wav|tests/data/ljspeech/wavs/LJ037-0153.npy -tests/data/ljspeech/wavs/LJ040-0074.wav|tests/data/ljspeech/wavs/LJ040-0074.npy -tests/data/ljspeech/wavs/LJ019-0109.wav|tests/data/ljspeech/wavs/LJ019-0109.npy -tests/data/ljspeech/wavs/LJ003-0153.wav|tests/data/ljspeech/wavs/LJ003-0153.npy -tests/data/ljspeech/wavs/LJ021-0149.wav|tests/data/ljspeech/wavs/LJ021-0149.npy -tests/data/ljspeech/wavs/LJ016-0441.wav|tests/data/ljspeech/wavs/LJ016-0441.npy -tests/data/ljspeech/wavs/LJ034-0021.wav|tests/data/ljspeech/wavs/LJ034-0021.npy -tests/data/ljspeech/wavs/LJ005-0103.wav|tests/data/ljspeech/wavs/LJ005-0103.npy -tests/data/ljspeech/wavs/LJ002-0049.wav|tests/data/ljspeech/wavs/LJ002-0049.npy -tests/data/ljspeech/wavs/LJ028-0166.wav|tests/data/ljspeech/wavs/LJ028-0166.npy -tests/data/ljspeech/wavs/LJ015-0046.wav|tests/data/ljspeech/wavs/LJ015-0046.npy -tests/data/ljspeech/wavs/LJ003-0273.wav|tests/data/ljspeech/wavs/LJ003-0273.npy -tests/data/ljspeech/wavs/LJ032-0143.wav|tests/data/ljspeech/wavs/LJ032-0143.npy -tests/data/ljspeech/wavs/LJ016-0069.wav|tests/data/ljspeech/wavs/LJ016-0069.npy -tests/data/ljspeech/wavs/LJ050-0088.wav|tests/data/ljspeech/wavs/LJ050-0088.npy -tests/data/ljspeech/wavs/LJ026-0076.wav|tests/data/ljspeech/wavs/LJ026-0076.npy -tests/data/ljspeech/wavs/LJ010-0240.wav|tests/data/ljspeech/wavs/LJ010-0240.npy -tests/data/ljspeech/wavs/LJ022-0029.wav|tests/data/ljspeech/wavs/LJ022-0029.npy -tests/data/ljspeech/wavs/LJ002-0261.wav|tests/data/ljspeech/wavs/LJ002-0261.npy -tests/data/ljspeech/wavs/LJ043-0146.wav|tests/data/ljspeech/wavs/LJ043-0146.npy -tests/data/ljspeech/wavs/LJ032-0188.wav|tests/data/ljspeech/wavs/LJ032-0188.npy -tests/data/ljspeech/wavs/LJ017-0220.wav|tests/data/ljspeech/wavs/LJ017-0220.npy -tests/data/ljspeech/wavs/LJ028-0229.wav|tests/data/ljspeech/wavs/LJ028-0229.npy -tests/data/ljspeech/wavs/LJ007-0069.wav|tests/data/ljspeech/wavs/LJ007-0069.npy -tests/data/ljspeech/wavs/LJ017-0173.wav|tests/data/ljspeech/wavs/LJ017-0173.npy -tests/data/ljspeech/wavs/LJ049-0117.wav|tests/data/ljspeech/wavs/LJ049-0117.npy -tests/data/ljspeech/wavs/LJ046-0113.wav|tests/data/ljspeech/wavs/LJ046-0113.npy -tests/data/ljspeech/wavs/LJ041-0136.wav|tests/data/ljspeech/wavs/LJ041-0136.npy -tests/data/ljspeech/wavs/LJ038-0221.wav|tests/data/ljspeech/wavs/LJ038-0221.npy -tests/data/ljspeech/wavs/LJ044-0190.wav|tests/data/ljspeech/wavs/LJ044-0190.npy -tests/data/ljspeech/wavs/LJ050-0035.wav|tests/data/ljspeech/wavs/LJ050-0035.npy -tests/data/ljspeech/wavs/LJ028-0032.wav|tests/data/ljspeech/wavs/LJ028-0032.npy -tests/data/ljspeech/wavs/LJ028-0294.wav|tests/data/ljspeech/wavs/LJ028-0294.npy -tests/data/ljspeech/wavs/LJ042-0065.wav|tests/data/ljspeech/wavs/LJ042-0065.npy -tests/data/ljspeech/wavs/LJ008-0006.wav|tests/data/ljspeech/wavs/LJ008-0006.npy -tests/data/ljspeech/wavs/LJ040-0025.wav|tests/data/ljspeech/wavs/LJ040-0025.npy -tests/data/ljspeech/wavs/LJ026-0127.wav|tests/data/ljspeech/wavs/LJ026-0127.npy -tests/data/ljspeech/wavs/LJ005-0110.wav|tests/data/ljspeech/wavs/LJ005-0110.npy -tests/data/ljspeech/wavs/LJ022-0084.wav|tests/data/ljspeech/wavs/LJ022-0084.npy -tests/data/ljspeech/wavs/LJ020-0090.wav|tests/data/ljspeech/wavs/LJ020-0090.npy -tests/data/ljspeech/wavs/LJ012-0049.wav|tests/data/ljspeech/wavs/LJ012-0049.npy -tests/data/ljspeech/wavs/LJ011-0103.wav|tests/data/ljspeech/wavs/LJ011-0103.npy -tests/data/ljspeech/wavs/LJ004-0248.wav|tests/data/ljspeech/wavs/LJ004-0248.npy -tests/data/ljspeech/wavs/LJ016-0200.wav|tests/data/ljspeech/wavs/LJ016-0200.npy -tests/data/ljspeech/wavs/LJ021-0192.wav|tests/data/ljspeech/wavs/LJ021-0192.npy -tests/data/ljspeech/wavs/LJ018-0280.wav|tests/data/ljspeech/wavs/LJ018-0280.npy -tests/data/ljspeech/wavs/LJ024-0071.wav|tests/data/ljspeech/wavs/LJ024-0071.npy -tests/data/ljspeech/wavs/LJ027-0058.wav|tests/data/ljspeech/wavs/LJ027-0058.npy -tests/data/ljspeech/wavs/LJ016-0273.wav|tests/data/ljspeech/wavs/LJ016-0273.npy -tests/data/ljspeech/wavs/LJ010-0179.wav|tests/data/ljspeech/wavs/LJ010-0179.npy -tests/data/ljspeech/wavs/LJ008-0262.wav|tests/data/ljspeech/wavs/LJ008-0262.npy -tests/data/ljspeech/wavs/LJ003-0188.wav|tests/data/ljspeech/wavs/LJ003-0188.npy -tests/data/ljspeech/wavs/LJ028-0250.wav|tests/data/ljspeech/wavs/LJ028-0250.npy -tests/data/ljspeech/wavs/LJ028-0506.wav|tests/data/ljspeech/wavs/LJ028-0506.npy -tests/data/ljspeech/wavs/LJ022-0008.wav|tests/data/ljspeech/wavs/LJ022-0008.npy -tests/data/ljspeech/wavs/LJ018-0245.wav|tests/data/ljspeech/wavs/LJ018-0245.npy -tests/data/ljspeech/wavs/LJ020-0050.wav|tests/data/ljspeech/wavs/LJ020-0050.npy -tests/data/ljspeech/wavs/LJ008-0077.wav|tests/data/ljspeech/wavs/LJ008-0077.npy -tests/data/ljspeech/wavs/LJ024-0072.wav|tests/data/ljspeech/wavs/LJ024-0072.npy -tests/data/ljspeech/wavs/LJ037-0259.wav|tests/data/ljspeech/wavs/LJ037-0259.npy -tests/data/ljspeech/wavs/LJ038-0220.wav|tests/data/ljspeech/wavs/LJ038-0220.npy -tests/data/ljspeech/wavs/LJ046-0129.wav|tests/data/ljspeech/wavs/LJ046-0129.npy -tests/data/ljspeech/wavs/LJ048-0032.wav|tests/data/ljspeech/wavs/LJ048-0032.npy -tests/data/ljspeech/wavs/LJ044-0111.wav|tests/data/ljspeech/wavs/LJ044-0111.npy -tests/data/ljspeech/wavs/LJ002-0164.wav|tests/data/ljspeech/wavs/LJ002-0164.npy -tests/data/ljspeech/wavs/LJ036-0059.wav|tests/data/ljspeech/wavs/LJ036-0059.npy -tests/data/ljspeech/wavs/LJ028-0385.wav|tests/data/ljspeech/wavs/LJ028-0385.npy -tests/data/ljspeech/wavs/LJ024-0102.wav|tests/data/ljspeech/wavs/LJ024-0102.npy -tests/data/ljspeech/wavs/LJ026-0065.wav|tests/data/ljspeech/wavs/LJ026-0065.npy -tests/data/ljspeech/wavs/LJ018-0156.wav|tests/data/ljspeech/wavs/LJ018-0156.npy -tests/data/ljspeech/wavs/LJ029-0127.wav|tests/data/ljspeech/wavs/LJ029-0127.npy -tests/data/ljspeech/wavs/LJ019-0113.wav|tests/data/ljspeech/wavs/LJ019-0113.npy -tests/data/ljspeech/wavs/LJ028-0038.wav|tests/data/ljspeech/wavs/LJ028-0038.npy -tests/data/ljspeech/wavs/LJ031-0173.wav|tests/data/ljspeech/wavs/LJ031-0173.npy -tests/data/ljspeech/wavs/LJ040-0159.wav|tests/data/ljspeech/wavs/LJ040-0159.npy -tests/data/ljspeech/wavs/LJ003-0252.wav|tests/data/ljspeech/wavs/LJ003-0252.npy -tests/data/ljspeech/wavs/LJ002-0166.wav|tests/data/ljspeech/wavs/LJ002-0166.npy -tests/data/ljspeech/wavs/LJ004-0172.wav|tests/data/ljspeech/wavs/LJ004-0172.npy -tests/data/ljspeech/wavs/LJ038-0207.wav|tests/data/ljspeech/wavs/LJ038-0207.npy -tests/data/ljspeech/wavs/LJ030-0184.wav|tests/data/ljspeech/wavs/LJ030-0184.npy -tests/data/ljspeech/wavs/LJ028-0339.wav|tests/data/ljspeech/wavs/LJ028-0339.npy -tests/data/ljspeech/wavs/LJ020-0039.wav|tests/data/ljspeech/wavs/LJ020-0039.npy -tests/data/ljspeech/wavs/LJ018-0145.wav|tests/data/ljspeech/wavs/LJ018-0145.npy -tests/data/ljspeech/wavs/LJ002-0204.wav|tests/data/ljspeech/wavs/LJ002-0204.npy -tests/data/ljspeech/wavs/LJ016-0298.wav|tests/data/ljspeech/wavs/LJ016-0298.npy -tests/data/ljspeech/wavs/LJ012-0062.wav|tests/data/ljspeech/wavs/LJ012-0062.npy -tests/data/ljspeech/wavs/LJ018-0202.wav|tests/data/ljspeech/wavs/LJ018-0202.npy -tests/data/ljspeech/wavs/LJ006-0123.wav|tests/data/ljspeech/wavs/LJ006-0123.npy -tests/data/ljspeech/wavs/LJ010-0138.wav|tests/data/ljspeech/wavs/LJ010-0138.npy -tests/data/ljspeech/wavs/LJ013-0090.wav|tests/data/ljspeech/wavs/LJ013-0090.npy -tests/data/ljspeech/wavs/LJ017-0272.wav|tests/data/ljspeech/wavs/LJ017-0272.npy -tests/data/ljspeech/wavs/LJ049-0024.wav|tests/data/ljspeech/wavs/LJ049-0024.npy -tests/data/ljspeech/wavs/LJ032-0036.wav|tests/data/ljspeech/wavs/LJ032-0036.npy -tests/data/ljspeech/wavs/LJ014-0280.wav|tests/data/ljspeech/wavs/LJ014-0280.npy -tests/data/ljspeech/wavs/LJ046-0138.wav|tests/data/ljspeech/wavs/LJ046-0138.npy -tests/data/ljspeech/wavs/LJ015-0143.wav|tests/data/ljspeech/wavs/LJ015-0143.npy -tests/data/ljspeech/wavs/LJ013-0003.wav|tests/data/ljspeech/wavs/LJ013-0003.npy -tests/data/ljspeech/wavs/LJ022-0180.wav|tests/data/ljspeech/wavs/LJ022-0180.npy -tests/data/ljspeech/wavs/LJ048-0046.wav|tests/data/ljspeech/wavs/LJ048-0046.npy -tests/data/ljspeech/wavs/LJ049-0212.wav|tests/data/ljspeech/wavs/LJ049-0212.npy -tests/data/ljspeech/wavs/LJ010-0021.wav|tests/data/ljspeech/wavs/LJ010-0021.npy -tests/data/ljspeech/wavs/LJ037-0090.wav|tests/data/ljspeech/wavs/LJ037-0090.npy -tests/data/ljspeech/wavs/LJ005-0024.wav|tests/data/ljspeech/wavs/LJ005-0024.npy -tests/data/ljspeech/wavs/LJ015-0152.wav|tests/data/ljspeech/wavs/LJ015-0152.npy -tests/data/ljspeech/wavs/LJ009-0092.wav|tests/data/ljspeech/wavs/LJ009-0092.npy -tests/data/ljspeech/wavs/LJ038-0028.wav|tests/data/ljspeech/wavs/LJ038-0028.npy -tests/data/ljspeech/wavs/LJ002-0302.wav|tests/data/ljspeech/wavs/LJ002-0302.npy -tests/data/ljspeech/wavs/LJ003-0108.wav|tests/data/ljspeech/wavs/LJ003-0108.npy -tests/data/ljspeech/wavs/LJ040-0106.wav|tests/data/ljspeech/wavs/LJ040-0106.npy -tests/data/ljspeech/wavs/LJ008-0315.wav|tests/data/ljspeech/wavs/LJ008-0315.npy -tests/data/ljspeech/wavs/LJ018-0237.wav|tests/data/ljspeech/wavs/LJ018-0237.npy -tests/data/ljspeech/wavs/LJ008-0244.wav|tests/data/ljspeech/wavs/LJ008-0244.npy -tests/data/ljspeech/wavs/LJ002-0039.wav|tests/data/ljspeech/wavs/LJ002-0039.npy -tests/data/ljspeech/wavs/LJ009-0271.wav|tests/data/ljspeech/wavs/LJ009-0271.npy -tests/data/ljspeech/wavs/LJ016-0006.wav|tests/data/ljspeech/wavs/LJ016-0006.npy -tests/data/ljspeech/wavs/LJ018-0064.wav|tests/data/ljspeech/wavs/LJ018-0064.npy -tests/data/ljspeech/wavs/LJ040-0229.wav|tests/data/ljspeech/wavs/LJ040-0229.npy -tests/data/ljspeech/wavs/LJ013-0250.wav|tests/data/ljspeech/wavs/LJ013-0250.npy -tests/data/ljspeech/wavs/LJ011-0073.wav|tests/data/ljspeech/wavs/LJ011-0073.npy -tests/data/ljspeech/wavs/LJ010-0037.wav|tests/data/ljspeech/wavs/LJ010-0037.npy -tests/data/ljspeech/wavs/LJ012-0112.wav|tests/data/ljspeech/wavs/LJ012-0112.npy -tests/data/ljspeech/wavs/LJ050-0170.wav|tests/data/ljspeech/wavs/LJ050-0170.npy -tests/data/ljspeech/wavs/LJ016-0438.wav|tests/data/ljspeech/wavs/LJ016-0438.npy -tests/data/ljspeech/wavs/LJ006-0229.wav|tests/data/ljspeech/wavs/LJ006-0229.npy -tests/data/ljspeech/wavs/LJ002-0010.wav|tests/data/ljspeech/wavs/LJ002-0010.npy -tests/data/ljspeech/wavs/LJ045-0216.wav|tests/data/ljspeech/wavs/LJ045-0216.npy -tests/data/ljspeech/wavs/LJ032-0074.wav|tests/data/ljspeech/wavs/LJ032-0074.npy -tests/data/ljspeech/wavs/LJ047-0177.wav|tests/data/ljspeech/wavs/LJ047-0177.npy -tests/data/ljspeech/wavs/LJ037-0054.wav|tests/data/ljspeech/wavs/LJ037-0054.npy -tests/data/ljspeech/wavs/LJ014-0226.wav|tests/data/ljspeech/wavs/LJ014-0226.npy -tests/data/ljspeech/wavs/LJ024-0004.wav|tests/data/ljspeech/wavs/LJ024-0004.npy -tests/data/ljspeech/wavs/LJ011-0116.wav|tests/data/ljspeech/wavs/LJ011-0116.npy -tests/data/ljspeech/wavs/LJ009-0108.wav|tests/data/ljspeech/wavs/LJ009-0108.npy -tests/data/ljspeech/wavs/LJ039-0018.wav|tests/data/ljspeech/wavs/LJ039-0018.npy -tests/data/ljspeech/wavs/LJ002-0080.wav|tests/data/ljspeech/wavs/LJ002-0080.npy -tests/data/ljspeech/wavs/LJ042-0241.wav|tests/data/ljspeech/wavs/LJ042-0241.npy -tests/data/ljspeech/wavs/LJ020-0038.wav|tests/data/ljspeech/wavs/LJ020-0038.npy -tests/data/ljspeech/wavs/LJ038-0131.wav|tests/data/ljspeech/wavs/LJ038-0131.npy -tests/data/ljspeech/wavs/LJ012-0152.wav|tests/data/ljspeech/wavs/LJ012-0152.npy -tests/data/ljspeech/wavs/LJ033-0107.wav|tests/data/ljspeech/wavs/LJ033-0107.npy -tests/data/ljspeech/wavs/LJ019-0360.wav|tests/data/ljspeech/wavs/LJ019-0360.npy -tests/data/ljspeech/wavs/LJ046-0244.wav|tests/data/ljspeech/wavs/LJ046-0244.npy -tests/data/ljspeech/wavs/LJ047-0060.wav|tests/data/ljspeech/wavs/LJ047-0060.npy -tests/data/ljspeech/wavs/LJ033-0171.wav|tests/data/ljspeech/wavs/LJ033-0171.npy -tests/data/ljspeech/wavs/LJ009-0138.wav|tests/data/ljspeech/wavs/LJ009-0138.npy -tests/data/ljspeech/wavs/LJ006-0018.wav|tests/data/ljspeech/wavs/LJ006-0018.npy -tests/data/ljspeech/wavs/LJ004-0081.wav|tests/data/ljspeech/wavs/LJ004-0081.npy -tests/data/ljspeech/wavs/LJ028-0097.wav|tests/data/ljspeech/wavs/LJ028-0097.npy -tests/data/ljspeech/wavs/LJ048-0274.wav|tests/data/ljspeech/wavs/LJ048-0274.npy -tests/data/ljspeech/wavs/LJ030-0203.wav|tests/data/ljspeech/wavs/LJ030-0203.npy -tests/data/ljspeech/wavs/LJ048-0086.wav|tests/data/ljspeech/wavs/LJ048-0086.npy -tests/data/ljspeech/wavs/LJ028-0455.wav|tests/data/ljspeech/wavs/LJ028-0455.npy -tests/data/ljspeech/wavs/LJ011-0015.wav|tests/data/ljspeech/wavs/LJ011-0015.npy -tests/data/ljspeech/wavs/LJ003-0271.wav|tests/data/ljspeech/wavs/LJ003-0271.npy -tests/data/ljspeech/wavs/LJ037-0124.wav|tests/data/ljspeech/wavs/LJ037-0124.npy -tests/data/ljspeech/wavs/LJ013-0173.wav|tests/data/ljspeech/wavs/LJ013-0173.npy -tests/data/ljspeech/wavs/LJ039-0201.wav|tests/data/ljspeech/wavs/LJ039-0201.npy -tests/data/ljspeech/wavs/LJ044-0017.wav|tests/data/ljspeech/wavs/LJ044-0017.npy -tests/data/ljspeech/wavs/LJ039-0014.wav|tests/data/ljspeech/wavs/LJ039-0014.npy -tests/data/ljspeech/wavs/LJ016-0252.wav|tests/data/ljspeech/wavs/LJ016-0252.npy -tests/data/ljspeech/wavs/LJ029-0096.wav|tests/data/ljspeech/wavs/LJ029-0096.npy -tests/data/ljspeech/wavs/LJ013-0052.wav|tests/data/ljspeech/wavs/LJ013-0052.npy -tests/data/ljspeech/wavs/LJ039-0116.wav|tests/data/ljspeech/wavs/LJ039-0116.npy -tests/data/ljspeech/wavs/LJ044-0078.wav|tests/data/ljspeech/wavs/LJ044-0078.npy -tests/data/ljspeech/wavs/LJ016-0348.wav|tests/data/ljspeech/wavs/LJ016-0348.npy -tests/data/ljspeech/wavs/LJ033-0060.wav|tests/data/ljspeech/wavs/LJ033-0060.npy -tests/data/ljspeech/wavs/LJ030-0179.wav|tests/data/ljspeech/wavs/LJ030-0179.npy -tests/data/ljspeech/wavs/LJ050-0148.wav|tests/data/ljspeech/wavs/LJ050-0148.npy -tests/data/ljspeech/wavs/LJ008-0143.wav|tests/data/ljspeech/wavs/LJ008-0143.npy -tests/data/ljspeech/wavs/LJ027-0031.wav|tests/data/ljspeech/wavs/LJ027-0031.npy -tests/data/ljspeech/wavs/LJ028-0261.wav|tests/data/ljspeech/wavs/LJ028-0261.npy -tests/data/ljspeech/wavs/LJ040-0012.wav|tests/data/ljspeech/wavs/LJ040-0012.npy -tests/data/ljspeech/wavs/LJ008-0068.wav|tests/data/ljspeech/wavs/LJ008-0068.npy -tests/data/ljspeech/wavs/LJ009-0264.wav|tests/data/ljspeech/wavs/LJ009-0264.npy -tests/data/ljspeech/wavs/LJ017-0224.wav|tests/data/ljspeech/wavs/LJ017-0224.npy -tests/data/ljspeech/wavs/LJ002-0116.wav|tests/data/ljspeech/wavs/LJ002-0116.npy -tests/data/ljspeech/wavs/LJ027-0038.wav|tests/data/ljspeech/wavs/LJ027-0038.npy -tests/data/ljspeech/wavs/LJ016-0081.wav|tests/data/ljspeech/wavs/LJ016-0081.npy -tests/data/ljspeech/wavs/LJ022-0031.wav|tests/data/ljspeech/wavs/LJ022-0031.npy -tests/data/ljspeech/wavs/LJ017-0195.wav|tests/data/ljspeech/wavs/LJ017-0195.npy -tests/data/ljspeech/wavs/LJ002-0237.wav|tests/data/ljspeech/wavs/LJ002-0237.npy -tests/data/ljspeech/wavs/LJ016-0082.wav|tests/data/ljspeech/wavs/LJ016-0082.npy -tests/data/ljspeech/wavs/LJ013-0093.wav|tests/data/ljspeech/wavs/LJ013-0093.npy -tests/data/ljspeech/wavs/LJ002-0245.wav|tests/data/ljspeech/wavs/LJ002-0245.npy -tests/data/ljspeech/wavs/LJ028-0496.wav|tests/data/ljspeech/wavs/LJ028-0496.npy -tests/data/ljspeech/wavs/LJ004-0125.wav|tests/data/ljspeech/wavs/LJ004-0125.npy -tests/data/ljspeech/wavs/LJ005-0176.wav|tests/data/ljspeech/wavs/LJ005-0176.npy -tests/data/ljspeech/wavs/LJ007-0035.wav|tests/data/ljspeech/wavs/LJ007-0035.npy -tests/data/ljspeech/wavs/LJ037-0203.wav|tests/data/ljspeech/wavs/LJ037-0203.npy -tests/data/ljspeech/wavs/LJ029-0013.wav|tests/data/ljspeech/wavs/LJ029-0013.npy -tests/data/ljspeech/wavs/LJ022-0155.wav|tests/data/ljspeech/wavs/LJ022-0155.npy -tests/data/ljspeech/wavs/LJ042-0056.wav|tests/data/ljspeech/wavs/LJ042-0056.npy -tests/data/ljspeech/wavs/LJ047-0025.wav|tests/data/ljspeech/wavs/LJ047-0025.npy -tests/data/ljspeech/wavs/LJ048-0080.wav|tests/data/ljspeech/wavs/LJ048-0080.npy -tests/data/ljspeech/wavs/LJ040-0068.wav|tests/data/ljspeech/wavs/LJ040-0068.npy -tests/data/ljspeech/wavs/LJ038-0280.wav|tests/data/ljspeech/wavs/LJ038-0280.npy -tests/data/ljspeech/wavs/LJ011-0247.wav|tests/data/ljspeech/wavs/LJ011-0247.npy -tests/data/ljspeech/wavs/LJ033-0192.wav|tests/data/ljspeech/wavs/LJ033-0192.npy -tests/data/ljspeech/wavs/LJ012-0039.wav|tests/data/ljspeech/wavs/LJ012-0039.npy -tests/data/ljspeech/wavs/LJ003-0086.wav|tests/data/ljspeech/wavs/LJ003-0086.npy -tests/data/ljspeech/wavs/LJ017-0170.wav|tests/data/ljspeech/wavs/LJ017-0170.npy -tests/data/ljspeech/wavs/LJ044-0215.wav|tests/data/ljspeech/wavs/LJ044-0215.npy -tests/data/ljspeech/wavs/LJ037-0008.wav|tests/data/ljspeech/wavs/LJ037-0008.npy -tests/data/ljspeech/wavs/LJ028-0258.wav|tests/data/ljspeech/wavs/LJ028-0258.npy -tests/data/ljspeech/wavs/LJ028-0350.wav|tests/data/ljspeech/wavs/LJ028-0350.npy -tests/data/ljspeech/wavs/LJ045-0204.wav|tests/data/ljspeech/wavs/LJ045-0204.npy -tests/data/ljspeech/wavs/LJ002-0180.wav|tests/data/ljspeech/wavs/LJ002-0180.npy -tests/data/ljspeech/wavs/LJ008-0213.wav|tests/data/ljspeech/wavs/LJ008-0213.npy -tests/data/ljspeech/wavs/LJ023-0131.wav|tests/data/ljspeech/wavs/LJ023-0131.npy -tests/data/ljspeech/wavs/LJ017-0102.wav|tests/data/ljspeech/wavs/LJ017-0102.npy -tests/data/ljspeech/wavs/LJ010-0226.wav|tests/data/ljspeech/wavs/LJ010-0226.npy -tests/data/ljspeech/wavs/LJ047-0183.wav|tests/data/ljspeech/wavs/LJ047-0183.npy -tests/data/ljspeech/wavs/LJ032-0259.wav|tests/data/ljspeech/wavs/LJ032-0259.npy -tests/data/ljspeech/wavs/LJ008-0256.wav|tests/data/ljspeech/wavs/LJ008-0256.npy -tests/data/ljspeech/wavs/LJ010-0258.wav|tests/data/ljspeech/wavs/LJ010-0258.npy -tests/data/ljspeech/wavs/LJ013-0183.wav|tests/data/ljspeech/wavs/LJ013-0183.npy -tests/data/ljspeech/wavs/LJ036-0149.wav|tests/data/ljspeech/wavs/LJ036-0149.npy -tests/data/ljspeech/wavs/LJ039-0224.wav|tests/data/ljspeech/wavs/LJ039-0224.npy -tests/data/ljspeech/wavs/LJ015-0281.wav|tests/data/ljspeech/wavs/LJ015-0281.npy -tests/data/ljspeech/wavs/LJ018-0278.wav|tests/data/ljspeech/wavs/LJ018-0278.npy -tests/data/ljspeech/wavs/LJ044-0075.wav|tests/data/ljspeech/wavs/LJ044-0075.npy -tests/data/ljspeech/wavs/LJ002-0033.wav|tests/data/ljspeech/wavs/LJ002-0033.npy -tests/data/ljspeech/wavs/LJ044-0052.wav|tests/data/ljspeech/wavs/LJ044-0052.npy -tests/data/ljspeech/wavs/LJ025-0117.wav|tests/data/ljspeech/wavs/LJ025-0117.npy -tests/data/ljspeech/wavs/LJ033-0084.wav|tests/data/ljspeech/wavs/LJ033-0084.npy -tests/data/ljspeech/wavs/LJ032-0091.wav|tests/data/ljspeech/wavs/LJ032-0091.npy -tests/data/ljspeech/wavs/LJ003-0115.wav|tests/data/ljspeech/wavs/LJ003-0115.npy -tests/data/ljspeech/wavs/LJ005-0215.wav|tests/data/ljspeech/wavs/LJ005-0215.npy -tests/data/ljspeech/wavs/LJ017-0060.wav|tests/data/ljspeech/wavs/LJ017-0060.npy -tests/data/ljspeech/wavs/LJ049-0142.wav|tests/data/ljspeech/wavs/LJ049-0142.npy -tests/data/ljspeech/wavs/LJ019-0321.wav|tests/data/ljspeech/wavs/LJ019-0321.npy -tests/data/ljspeech/wavs/LJ020-0092.wav|tests/data/ljspeech/wavs/LJ020-0092.npy -tests/data/ljspeech/wavs/LJ048-0095.wav|tests/data/ljspeech/wavs/LJ048-0095.npy -tests/data/ljspeech/wavs/LJ019-0276.wav|tests/data/ljspeech/wavs/LJ019-0276.npy -tests/data/ljspeech/wavs/LJ005-0260.wav|tests/data/ljspeech/wavs/LJ005-0260.npy -tests/data/ljspeech/wavs/LJ041-0069.wav|tests/data/ljspeech/wavs/LJ041-0069.npy -tests/data/ljspeech/wavs/LJ005-0185.wav|tests/data/ljspeech/wavs/LJ005-0185.npy -tests/data/ljspeech/wavs/LJ031-0012.wav|tests/data/ljspeech/wavs/LJ031-0012.npy -tests/data/ljspeech/wavs/LJ003-0034.wav|tests/data/ljspeech/wavs/LJ003-0034.npy -tests/data/ljspeech/wavs/LJ046-0093.wav|tests/data/ljspeech/wavs/LJ046-0093.npy -tests/data/ljspeech/wavs/LJ024-0022.wav|tests/data/ljspeech/wavs/LJ024-0022.npy -tests/data/ljspeech/wavs/LJ003-0320.wav|tests/data/ljspeech/wavs/LJ003-0320.npy -tests/data/ljspeech/wavs/LJ015-0155.wav|tests/data/ljspeech/wavs/LJ015-0155.npy -tests/data/ljspeech/wavs/LJ036-0142.wav|tests/data/ljspeech/wavs/LJ036-0142.npy -tests/data/ljspeech/wavs/LJ050-0005.wav|tests/data/ljspeech/wavs/LJ050-0005.npy -tests/data/ljspeech/wavs/LJ047-0193.wav|tests/data/ljspeech/wavs/LJ047-0193.npy -tests/data/ljspeech/wavs/LJ010-0017.wav|tests/data/ljspeech/wavs/LJ010-0017.npy -tests/data/ljspeech/wavs/LJ001-0112.wav|tests/data/ljspeech/wavs/LJ001-0112.npy -tests/data/ljspeech/wavs/LJ038-0236.wav|tests/data/ljspeech/wavs/LJ038-0236.npy -tests/data/ljspeech/wavs/LJ039-0215.wav|tests/data/ljspeech/wavs/LJ039-0215.npy -tests/data/ljspeech/wavs/LJ009-0234.wav|tests/data/ljspeech/wavs/LJ009-0234.npy -tests/data/ljspeech/wavs/LJ028-0212.wav|tests/data/ljspeech/wavs/LJ028-0212.npy -tests/data/ljspeech/wavs/LJ002-0130.wav|tests/data/ljspeech/wavs/LJ002-0130.npy -tests/data/ljspeech/wavs/LJ032-0053.wav|tests/data/ljspeech/wavs/LJ032-0053.npy -tests/data/ljspeech/wavs/LJ040-0060.wav|tests/data/ljspeech/wavs/LJ040-0060.npy -tests/data/ljspeech/wavs/LJ039-0110.wav|tests/data/ljspeech/wavs/LJ039-0110.npy -tests/data/ljspeech/wavs/LJ007-0224.wav|tests/data/ljspeech/wavs/LJ007-0224.npy -tests/data/ljspeech/wavs/LJ047-0020.wav|tests/data/ljspeech/wavs/LJ047-0020.npy -tests/data/ljspeech/wavs/LJ020-0030.wav|tests/data/ljspeech/wavs/LJ020-0030.npy -tests/data/ljspeech/wavs/LJ047-0223.wav|tests/data/ljspeech/wavs/LJ047-0223.npy -tests/data/ljspeech/wavs/LJ004-0205.wav|tests/data/ljspeech/wavs/LJ004-0205.npy -tests/data/ljspeech/wavs/LJ012-0254.wav|tests/data/ljspeech/wavs/LJ012-0254.npy -tests/data/ljspeech/wavs/LJ042-0008.wav|tests/data/ljspeech/wavs/LJ042-0008.npy -tests/data/ljspeech/wavs/LJ038-0013.wav|tests/data/ljspeech/wavs/LJ038-0013.npy -tests/data/ljspeech/wavs/LJ018-0335.wav|tests/data/ljspeech/wavs/LJ018-0335.npy -tests/data/ljspeech/wavs/LJ038-0209.wav|tests/data/ljspeech/wavs/LJ038-0209.npy -tests/data/ljspeech/wavs/LJ009-0194.wav|tests/data/ljspeech/wavs/LJ009-0194.npy -tests/data/ljspeech/wavs/LJ009-0099.wav|tests/data/ljspeech/wavs/LJ009-0099.npy -tests/data/ljspeech/wavs/LJ019-0312.wav|tests/data/ljspeech/wavs/LJ019-0312.npy -tests/data/ljspeech/wavs/LJ048-0104.wav|tests/data/ljspeech/wavs/LJ048-0104.npy -tests/data/ljspeech/wavs/LJ010-0238.wav|tests/data/ljspeech/wavs/LJ010-0238.npy -tests/data/ljspeech/wavs/LJ014-0298.wav|tests/data/ljspeech/wavs/LJ014-0298.npy -tests/data/ljspeech/wavs/LJ019-0326.wav|tests/data/ljspeech/wavs/LJ019-0326.npy -tests/data/ljspeech/wavs/LJ031-0214.wav|tests/data/ljspeech/wavs/LJ031-0214.npy -tests/data/ljspeech/wavs/LJ009-0216.wav|tests/data/ljspeech/wavs/LJ009-0216.npy -tests/data/ljspeech/wavs/LJ003-0138.wav|tests/data/ljspeech/wavs/LJ003-0138.npy -tests/data/ljspeech/wavs/LJ001-0181.wav|tests/data/ljspeech/wavs/LJ001-0181.npy -tests/data/ljspeech/wavs/LJ028-0372.wav|tests/data/ljspeech/wavs/LJ028-0372.npy -tests/data/ljspeech/wavs/LJ014-0256.wav|tests/data/ljspeech/wavs/LJ014-0256.npy -tests/data/ljspeech/wavs/LJ005-0129.wav|tests/data/ljspeech/wavs/LJ005-0129.npy -tests/data/ljspeech/wavs/LJ035-0165.wav|tests/data/ljspeech/wavs/LJ035-0165.npy -tests/data/ljspeech/wavs/LJ034-0141.wav|tests/data/ljspeech/wavs/LJ034-0141.npy -tests/data/ljspeech/wavs/LJ028-0386.wav|tests/data/ljspeech/wavs/LJ028-0386.npy -tests/data/ljspeech/wavs/LJ005-0004.wav|tests/data/ljspeech/wavs/LJ005-0004.npy -tests/data/ljspeech/wavs/LJ044-0072.wav|tests/data/ljspeech/wavs/LJ044-0072.npy -tests/data/ljspeech/wavs/LJ031-0064.wav|tests/data/ljspeech/wavs/LJ031-0064.npy -tests/data/ljspeech/wavs/LJ028-0069.wav|tests/data/ljspeech/wavs/LJ028-0069.npy -tests/data/ljspeech/wavs/LJ010-0285.wav|tests/data/ljspeech/wavs/LJ010-0285.npy -tests/data/ljspeech/wavs/LJ012-0144.wav|tests/data/ljspeech/wavs/LJ012-0144.npy -tests/data/ljspeech/wavs/LJ031-0005.wav|tests/data/ljspeech/wavs/LJ031-0005.npy -tests/data/ljspeech/wavs/LJ019-0209.wav|tests/data/ljspeech/wavs/LJ019-0209.npy -tests/data/ljspeech/wavs/LJ032-0257.wav|tests/data/ljspeech/wavs/LJ032-0257.npy -tests/data/ljspeech/wavs/LJ009-0281.wav|tests/data/ljspeech/wavs/LJ009-0281.npy -tests/data/ljspeech/wavs/LJ028-0418.wav|tests/data/ljspeech/wavs/LJ028-0418.npy -tests/data/ljspeech/wavs/LJ036-0095.wav|tests/data/ljspeech/wavs/LJ036-0095.npy -tests/data/ljspeech/wavs/LJ046-0115.wav|tests/data/ljspeech/wavs/LJ046-0115.npy -tests/data/ljspeech/wavs/LJ042-0119.wav|tests/data/ljspeech/wavs/LJ042-0119.npy -tests/data/ljspeech/wavs/LJ027-0131.wav|tests/data/ljspeech/wavs/LJ027-0131.npy -tests/data/ljspeech/wavs/LJ038-0188.wav|tests/data/ljspeech/wavs/LJ038-0188.npy -tests/data/ljspeech/wavs/LJ017-0160.wav|tests/data/ljspeech/wavs/LJ017-0160.npy -tests/data/ljspeech/wavs/LJ007-0040.wav|tests/data/ljspeech/wavs/LJ007-0040.npy -tests/data/ljspeech/wavs/LJ047-0003.wav|tests/data/ljspeech/wavs/LJ047-0003.npy -tests/data/ljspeech/wavs/LJ038-0177.wav|tests/data/ljspeech/wavs/LJ038-0177.npy -tests/data/ljspeech/wavs/LJ035-0097.wav|tests/data/ljspeech/wavs/LJ035-0097.npy -tests/data/ljspeech/wavs/LJ019-0146.wav|tests/data/ljspeech/wavs/LJ019-0146.npy -tests/data/ljspeech/wavs/LJ032-0156.wav|tests/data/ljspeech/wavs/LJ032-0156.npy -tests/data/ljspeech/wavs/LJ013-0055.wav|tests/data/ljspeech/wavs/LJ013-0055.npy -tests/data/ljspeech/wavs/LJ009-0028.wav|tests/data/ljspeech/wavs/LJ009-0028.npy -tests/data/ljspeech/wavs/LJ012-0235.wav|tests/data/ljspeech/wavs/LJ012-0235.npy -tests/data/ljspeech/wavs/LJ015-0004.wav|tests/data/ljspeech/wavs/LJ015-0004.npy -tests/data/ljspeech/wavs/LJ005-0277.wav|tests/data/ljspeech/wavs/LJ005-0277.npy -tests/data/ljspeech/wavs/LJ015-0060.wav|tests/data/ljspeech/wavs/LJ015-0060.npy -tests/data/ljspeech/wavs/LJ009-0282.wav|tests/data/ljspeech/wavs/LJ009-0282.npy -tests/data/ljspeech/wavs/LJ019-0213.wav|tests/data/ljspeech/wavs/LJ019-0213.npy -tests/data/ljspeech/wavs/LJ010-0110.wav|tests/data/ljspeech/wavs/LJ010-0110.npy -tests/data/ljspeech/wavs/LJ047-0196.wav|tests/data/ljspeech/wavs/LJ047-0196.npy -tests/data/ljspeech/wavs/LJ050-0219.wav|tests/data/ljspeech/wavs/LJ050-0219.npy -tests/data/ljspeech/wavs/LJ039-0165.wav|tests/data/ljspeech/wavs/LJ039-0165.npy -tests/data/ljspeech/wavs/LJ033-0183.wav|tests/data/ljspeech/wavs/LJ033-0183.npy -tests/data/ljspeech/wavs/LJ039-0001.wav|tests/data/ljspeech/wavs/LJ039-0001.npy -tests/data/ljspeech/wavs/LJ018-0369.wav|tests/data/ljspeech/wavs/LJ018-0369.npy -tests/data/ljspeech/wavs/LJ020-0018.wav|tests/data/ljspeech/wavs/LJ020-0018.npy -tests/data/ljspeech/wavs/LJ021-0005.wav|tests/data/ljspeech/wavs/LJ021-0005.npy -tests/data/ljspeech/wavs/LJ045-0124.wav|tests/data/ljspeech/wavs/LJ045-0124.npy -tests/data/ljspeech/wavs/LJ010-0157.wav|tests/data/ljspeech/wavs/LJ010-0157.npy -tests/data/ljspeech/wavs/LJ003-0010.wav|tests/data/ljspeech/wavs/LJ003-0010.npy -tests/data/ljspeech/wavs/LJ022-0064.wav|tests/data/ljspeech/wavs/LJ022-0064.npy -tests/data/ljspeech/wavs/LJ024-0075.wav|tests/data/ljspeech/wavs/LJ024-0075.npy -tests/data/ljspeech/wavs/LJ028-0446.wav|tests/data/ljspeech/wavs/LJ028-0446.npy -tests/data/ljspeech/wavs/LJ048-0240.wav|tests/data/ljspeech/wavs/LJ048-0240.npy -tests/data/ljspeech/wavs/LJ014-0207.wav|tests/data/ljspeech/wavs/LJ014-0207.npy -tests/data/ljspeech/wavs/LJ038-0132.wav|tests/data/ljspeech/wavs/LJ038-0132.npy -tests/data/ljspeech/wavs/LJ005-0096.wav|tests/data/ljspeech/wavs/LJ005-0096.npy -tests/data/ljspeech/wavs/LJ042-0102.wav|tests/data/ljspeech/wavs/LJ042-0102.npy -tests/data/ljspeech/wavs/LJ004-0034.wav|tests/data/ljspeech/wavs/LJ004-0034.npy -tests/data/ljspeech/wavs/LJ001-0028.wav|tests/data/ljspeech/wavs/LJ001-0028.npy -tests/data/ljspeech/wavs/LJ014-0235.wav|tests/data/ljspeech/wavs/LJ014-0235.npy -tests/data/ljspeech/wavs/LJ018-0209.wav|tests/data/ljspeech/wavs/LJ018-0209.npy -tests/data/ljspeech/wavs/LJ008-0058.wav|tests/data/ljspeech/wavs/LJ008-0058.npy -tests/data/ljspeech/wavs/LJ029-0158.wav|tests/data/ljspeech/wavs/LJ029-0158.npy -tests/data/ljspeech/wavs/LJ040-0208.wav|tests/data/ljspeech/wavs/LJ040-0208.npy -tests/data/ljspeech/wavs/LJ012-0129.wav|tests/data/ljspeech/wavs/LJ012-0129.npy -tests/data/ljspeech/wavs/LJ028-0013.wav|tests/data/ljspeech/wavs/LJ028-0013.npy -tests/data/ljspeech/wavs/LJ034-0101.wav|tests/data/ljspeech/wavs/LJ034-0101.npy -tests/data/ljspeech/wavs/LJ007-0136.wav|tests/data/ljspeech/wavs/LJ007-0136.npy -tests/data/ljspeech/wavs/LJ027-0091.wav|tests/data/ljspeech/wavs/LJ027-0091.npy -tests/data/ljspeech/wavs/LJ002-0141.wav|tests/data/ljspeech/wavs/LJ002-0141.npy -tests/data/ljspeech/wavs/LJ001-0157.wav|tests/data/ljspeech/wavs/LJ001-0157.npy -tests/data/ljspeech/wavs/LJ039-0007.wav|tests/data/ljspeech/wavs/LJ039-0007.npy -tests/data/ljspeech/wavs/LJ013-0142.wav|tests/data/ljspeech/wavs/LJ013-0142.npy -tests/data/ljspeech/wavs/LJ028-0052.wav|tests/data/ljspeech/wavs/LJ028-0052.npy -tests/data/ljspeech/wavs/LJ047-0172.wav|tests/data/ljspeech/wavs/LJ047-0172.npy -tests/data/ljspeech/wavs/LJ044-0038.wav|tests/data/ljspeech/wavs/LJ044-0038.npy -tests/data/ljspeech/wavs/LJ031-0072.wav|tests/data/ljspeech/wavs/LJ031-0072.npy -tests/data/ljspeech/wavs/LJ050-0027.wav|tests/data/ljspeech/wavs/LJ050-0027.npy -tests/data/ljspeech/wavs/LJ049-0097.wav|tests/data/ljspeech/wavs/LJ049-0097.npy -tests/data/ljspeech/wavs/LJ008-0052.wav|tests/data/ljspeech/wavs/LJ008-0052.npy -tests/data/ljspeech/wavs/LJ050-0029.wav|tests/data/ljspeech/wavs/LJ050-0029.npy -tests/data/ljspeech/wavs/LJ048-0100.wav|tests/data/ljspeech/wavs/LJ048-0100.npy -tests/data/ljspeech/wavs/LJ022-0102.wav|tests/data/ljspeech/wavs/LJ022-0102.npy -tests/data/ljspeech/wavs/LJ029-0169.wav|tests/data/ljspeech/wavs/LJ029-0169.npy -tests/data/ljspeech/wavs/LJ016-0292.wav|tests/data/ljspeech/wavs/LJ016-0292.npy -tests/data/ljspeech/wavs/LJ038-0046.wav|tests/data/ljspeech/wavs/LJ038-0046.npy -tests/data/ljspeech/wavs/LJ015-0173.wav|tests/data/ljspeech/wavs/LJ015-0173.npy -tests/data/ljspeech/wavs/LJ012-0207.wav|tests/data/ljspeech/wavs/LJ012-0207.npy -tests/data/ljspeech/wavs/LJ024-0100.wav|tests/data/ljspeech/wavs/LJ024-0100.npy -tests/data/ljspeech/wavs/LJ011-0146.wav|tests/data/ljspeech/wavs/LJ011-0146.npy -tests/data/ljspeech/wavs/LJ043-0068.wav|tests/data/ljspeech/wavs/LJ043-0068.npy -tests/data/ljspeech/wavs/LJ037-0103.wav|tests/data/ljspeech/wavs/LJ037-0103.npy -tests/data/ljspeech/wavs/LJ002-0163.wav|tests/data/ljspeech/wavs/LJ002-0163.npy -tests/data/ljspeech/wavs/LJ018-0261.wav|tests/data/ljspeech/wavs/LJ018-0261.npy -tests/data/ljspeech/wavs/LJ008-0259.wav|tests/data/ljspeech/wavs/LJ008-0259.npy -tests/data/ljspeech/wavs/LJ034-0048.wav|tests/data/ljspeech/wavs/LJ034-0048.npy -tests/data/ljspeech/wavs/LJ001-0144.wav|tests/data/ljspeech/wavs/LJ001-0144.npy -tests/data/ljspeech/wavs/LJ016-0362.wav|tests/data/ljspeech/wavs/LJ016-0362.npy -tests/data/ljspeech/wavs/LJ018-0375.wav|tests/data/ljspeech/wavs/LJ018-0375.npy -tests/data/ljspeech/wavs/LJ004-0208.wav|tests/data/ljspeech/wavs/LJ004-0208.npy -tests/data/ljspeech/wavs/LJ017-0171.wav|tests/data/ljspeech/wavs/LJ017-0171.npy -tests/data/ljspeech/wavs/LJ050-0011.wav|tests/data/ljspeech/wavs/LJ050-0011.npy -tests/data/ljspeech/wavs/LJ006-0079.wav|tests/data/ljspeech/wavs/LJ006-0079.npy -tests/data/ljspeech/wavs/LJ044-0011.wav|tests/data/ljspeech/wavs/LJ044-0011.npy -tests/data/ljspeech/wavs/LJ023-0139.wav|tests/data/ljspeech/wavs/LJ023-0139.npy -tests/data/ljspeech/wavs/LJ040-0002.wav|tests/data/ljspeech/wavs/LJ040-0002.npy -tests/data/ljspeech/wavs/LJ032-0204.wav|tests/data/ljspeech/wavs/LJ032-0204.npy -tests/data/ljspeech/wavs/LJ046-0200.wav|tests/data/ljspeech/wavs/LJ046-0200.npy -tests/data/ljspeech/wavs/LJ039-0022.wav|tests/data/ljspeech/wavs/LJ039-0022.npy -tests/data/ljspeech/wavs/LJ031-0034.wav|tests/data/ljspeech/wavs/LJ031-0034.npy -tests/data/ljspeech/wavs/LJ048-0068.wav|tests/data/ljspeech/wavs/LJ048-0068.npy -tests/data/ljspeech/wavs/LJ045-0061.wav|tests/data/ljspeech/wavs/LJ045-0061.npy -tests/data/ljspeech/wavs/LJ044-0122.wav|tests/data/ljspeech/wavs/LJ044-0122.npy -tests/data/ljspeech/wavs/LJ019-0290.wav|tests/data/ljspeech/wavs/LJ019-0290.npy -tests/data/ljspeech/wavs/LJ016-0366.wav|tests/data/ljspeech/wavs/LJ016-0366.npy -tests/data/ljspeech/wavs/LJ014-0160.wav|tests/data/ljspeech/wavs/LJ014-0160.npy -tests/data/ljspeech/wavs/LJ003-0288.wav|tests/data/ljspeech/wavs/LJ003-0288.npy -tests/data/ljspeech/wavs/LJ044-0074.wav|tests/data/ljspeech/wavs/LJ044-0074.npy -tests/data/ljspeech/wavs/LJ014-0253.wav|tests/data/ljspeech/wavs/LJ014-0253.npy -tests/data/ljspeech/wavs/LJ021-0074.wav|tests/data/ljspeech/wavs/LJ021-0074.npy -tests/data/ljspeech/wavs/LJ048-0119.wav|tests/data/ljspeech/wavs/LJ048-0119.npy -tests/data/ljspeech/wavs/LJ019-0243.wav|tests/data/ljspeech/wavs/LJ019-0243.npy -tests/data/ljspeech/wavs/LJ037-0078.wav|tests/data/ljspeech/wavs/LJ037-0078.npy -tests/data/ljspeech/wavs/LJ023-0134.wav|tests/data/ljspeech/wavs/LJ023-0134.npy -tests/data/ljspeech/wavs/LJ047-0168.wav|tests/data/ljspeech/wavs/LJ047-0168.npy -tests/data/ljspeech/wavs/LJ006-0092.wav|tests/data/ljspeech/wavs/LJ006-0092.npy -tests/data/ljspeech/wavs/LJ005-0213.wav|tests/data/ljspeech/wavs/LJ005-0213.npy -tests/data/ljspeech/wavs/LJ016-0127.wav|tests/data/ljspeech/wavs/LJ016-0127.npy -tests/data/ljspeech/wavs/LJ034-0171.wav|tests/data/ljspeech/wavs/LJ034-0171.npy -tests/data/ljspeech/wavs/LJ009-0098.wav|tests/data/ljspeech/wavs/LJ009-0098.npy -tests/data/ljspeech/wavs/LJ028-0085.wav|tests/data/ljspeech/wavs/LJ028-0085.npy -tests/data/ljspeech/wavs/LJ048-0069.wav|tests/data/ljspeech/wavs/LJ048-0069.npy -tests/data/ljspeech/wavs/LJ038-0286.wav|tests/data/ljspeech/wavs/LJ038-0286.npy -tests/data/ljspeech/wavs/LJ029-0099.wav|tests/data/ljspeech/wavs/LJ029-0099.npy -tests/data/ljspeech/wavs/LJ031-0074.wav|tests/data/ljspeech/wavs/LJ031-0074.npy -tests/data/ljspeech/wavs/LJ044-0237.wav|tests/data/ljspeech/wavs/LJ044-0237.npy -tests/data/ljspeech/wavs/LJ047-0194.wav|tests/data/ljspeech/wavs/LJ047-0194.npy -tests/data/ljspeech/wavs/LJ034-0084.wav|tests/data/ljspeech/wavs/LJ034-0084.npy -tests/data/ljspeech/wavs/LJ014-0051.wav|tests/data/ljspeech/wavs/LJ014-0051.npy -tests/data/ljspeech/wavs/LJ041-0167.wav|tests/data/ljspeech/wavs/LJ041-0167.npy -tests/data/ljspeech/wavs/LJ033-0121.wav|tests/data/ljspeech/wavs/LJ033-0121.npy -tests/data/ljspeech/wavs/LJ026-0047.wav|tests/data/ljspeech/wavs/LJ026-0047.npy -tests/data/ljspeech/wavs/LJ003-0321.wav|tests/data/ljspeech/wavs/LJ003-0321.npy -tests/data/ljspeech/wavs/LJ022-0142.wav|tests/data/ljspeech/wavs/LJ022-0142.npy -tests/data/ljspeech/wavs/LJ042-0218.wav|tests/data/ljspeech/wavs/LJ042-0218.npy -tests/data/ljspeech/wavs/LJ043-0023.wav|tests/data/ljspeech/wavs/LJ043-0023.npy -tests/data/ljspeech/wavs/LJ042-0209.wav|tests/data/ljspeech/wavs/LJ042-0209.npy -tests/data/ljspeech/wavs/LJ005-0300.wav|tests/data/ljspeech/wavs/LJ005-0300.npy -tests/data/ljspeech/wavs/LJ046-0127.wav|tests/data/ljspeech/wavs/LJ046-0127.npy -tests/data/ljspeech/wavs/LJ042-0010.wav|tests/data/ljspeech/wavs/LJ042-0010.npy -tests/data/ljspeech/wavs/LJ002-0178.wav|tests/data/ljspeech/wavs/LJ002-0178.npy -tests/data/ljspeech/wavs/LJ018-0256.wav|tests/data/ljspeech/wavs/LJ018-0256.npy -tests/data/ljspeech/wavs/LJ028-0024.wav|tests/data/ljspeech/wavs/LJ028-0024.npy -tests/data/ljspeech/wavs/LJ004-0132.wav|tests/data/ljspeech/wavs/LJ004-0132.npy -tests/data/ljspeech/wavs/LJ022-0191.wav|tests/data/ljspeech/wavs/LJ022-0191.npy -tests/data/ljspeech/wavs/LJ025-0070.wav|tests/data/ljspeech/wavs/LJ025-0070.npy -tests/data/ljspeech/wavs/LJ028-0344.wav|tests/data/ljspeech/wavs/LJ028-0344.npy -tests/data/ljspeech/wavs/LJ032-0037.wav|tests/data/ljspeech/wavs/LJ032-0037.npy -tests/data/ljspeech/wavs/LJ022-0039.wav|tests/data/ljspeech/wavs/LJ022-0039.npy -tests/data/ljspeech/wavs/LJ008-0318.wav|tests/data/ljspeech/wavs/LJ008-0318.npy -tests/data/ljspeech/wavs/LJ028-0158.wav|tests/data/ljspeech/wavs/LJ028-0158.npy -tests/data/ljspeech/wavs/LJ010-0041.wav|tests/data/ljspeech/wavs/LJ010-0041.npy -tests/data/ljspeech/wavs/LJ015-0257.wav|tests/data/ljspeech/wavs/LJ015-0257.npy -tests/data/ljspeech/wavs/LJ005-0099.wav|tests/data/ljspeech/wavs/LJ005-0099.npy -tests/data/ljspeech/wavs/LJ049-0185.wav|tests/data/ljspeech/wavs/LJ049-0185.npy -tests/data/ljspeech/wavs/LJ003-0110.wav|tests/data/ljspeech/wavs/LJ003-0110.npy -tests/data/ljspeech/wavs/LJ044-0099.wav|tests/data/ljspeech/wavs/LJ044-0099.npy -tests/data/ljspeech/wavs/LJ018-0392.wav|tests/data/ljspeech/wavs/LJ018-0392.npy -tests/data/ljspeech/wavs/LJ045-0008.wav|tests/data/ljspeech/wavs/LJ045-0008.npy -tests/data/ljspeech/wavs/LJ002-0246.wav|tests/data/ljspeech/wavs/LJ002-0246.npy -tests/data/ljspeech/wavs/LJ045-0002.wav|tests/data/ljspeech/wavs/LJ045-0002.npy -tests/data/ljspeech/wavs/LJ041-0002.wav|tests/data/ljspeech/wavs/LJ041-0002.npy -tests/data/ljspeech/wavs/LJ042-0210.wav|tests/data/ljspeech/wavs/LJ042-0210.npy -tests/data/ljspeech/wavs/LJ025-0072.wav|tests/data/ljspeech/wavs/LJ025-0072.npy -tests/data/ljspeech/wavs/LJ025-0074.wav|tests/data/ljspeech/wavs/LJ025-0074.npy -tests/data/ljspeech/wavs/LJ048-0089.wav|tests/data/ljspeech/wavs/LJ048-0089.npy -tests/data/ljspeech/wavs/LJ016-0412.wav|tests/data/ljspeech/wavs/LJ016-0412.npy -tests/data/ljspeech/wavs/LJ044-0048.wav|tests/data/ljspeech/wavs/LJ044-0048.npy -tests/data/ljspeech/wavs/LJ038-0292.wav|tests/data/ljspeech/wavs/LJ038-0292.npy -tests/data/ljspeech/wavs/LJ010-0202.wav|tests/data/ljspeech/wavs/LJ010-0202.npy -tests/data/ljspeech/wavs/LJ008-0004.wav|tests/data/ljspeech/wavs/LJ008-0004.npy -tests/data/ljspeech/wavs/LJ007-0042.wav|tests/data/ljspeech/wavs/LJ007-0042.npy -tests/data/ljspeech/wavs/LJ023-0014.wav|tests/data/ljspeech/wavs/LJ023-0014.npy -tests/data/ljspeech/wavs/LJ030-0222.wav|tests/data/ljspeech/wavs/LJ030-0222.npy -tests/data/ljspeech/wavs/LJ010-0256.wav|tests/data/ljspeech/wavs/LJ010-0256.npy -tests/data/ljspeech/wavs/LJ008-0296.wav|tests/data/ljspeech/wavs/LJ008-0296.npy -tests/data/ljspeech/wavs/LJ035-0114.wav|tests/data/ljspeech/wavs/LJ035-0114.npy -tests/data/ljspeech/wavs/LJ023-0017.wav|tests/data/ljspeech/wavs/LJ023-0017.npy -tests/data/ljspeech/wavs/LJ014-0028.wav|tests/data/ljspeech/wavs/LJ014-0028.npy -tests/data/ljspeech/wavs/LJ020-0093.wav|tests/data/ljspeech/wavs/LJ020-0093.npy -tests/data/ljspeech/wavs/LJ018-0373.wav|tests/data/ljspeech/wavs/LJ018-0373.npy -tests/data/ljspeech/wavs/LJ006-0186.wav|tests/data/ljspeech/wavs/LJ006-0186.npy -tests/data/ljspeech/wavs/LJ045-0081.wav|tests/data/ljspeech/wavs/LJ045-0081.npy -tests/data/ljspeech/wavs/LJ032-0005.wav|tests/data/ljspeech/wavs/LJ032-0005.npy -tests/data/ljspeech/wavs/LJ026-0037.wav|tests/data/ljspeech/wavs/LJ026-0037.npy -tests/data/ljspeech/wavs/LJ014-0056.wav|tests/data/ljspeech/wavs/LJ014-0056.npy -tests/data/ljspeech/wavs/LJ022-0072.wav|tests/data/ljspeech/wavs/LJ022-0072.npy -tests/data/ljspeech/wavs/LJ049-0040.wav|tests/data/ljspeech/wavs/LJ049-0040.npy -tests/data/ljspeech/wavs/LJ008-0253.wav|tests/data/ljspeech/wavs/LJ008-0253.npy -tests/data/ljspeech/wavs/LJ013-0074.wav|tests/data/ljspeech/wavs/LJ013-0074.npy -tests/data/ljspeech/wavs/LJ044-0021.wav|tests/data/ljspeech/wavs/LJ044-0021.npy -tests/data/ljspeech/wavs/LJ048-0040.wav|tests/data/ljspeech/wavs/LJ048-0040.npy -tests/data/ljspeech/wavs/LJ022-0042.wav|tests/data/ljspeech/wavs/LJ022-0042.npy -tests/data/ljspeech/wavs/LJ030-0011.wav|tests/data/ljspeech/wavs/LJ030-0011.npy -tests/data/ljspeech/wavs/LJ039-0035.wav|tests/data/ljspeech/wavs/LJ039-0035.npy -tests/data/ljspeech/wavs/LJ024-0076.wav|tests/data/ljspeech/wavs/LJ024-0076.npy -tests/data/ljspeech/wavs/LJ043-0014.wav|tests/data/ljspeech/wavs/LJ043-0014.npy -tests/data/ljspeech/wavs/LJ041-0190.wav|tests/data/ljspeech/wavs/LJ041-0190.npy -tests/data/ljspeech/wavs/LJ030-0099.wav|tests/data/ljspeech/wavs/LJ030-0099.npy -tests/data/ljspeech/wavs/LJ048-0280.wav|tests/data/ljspeech/wavs/LJ048-0280.npy -tests/data/ljspeech/wavs/LJ007-0241.wav|tests/data/ljspeech/wavs/LJ007-0241.npy -tests/data/ljspeech/wavs/LJ045-0153.wav|tests/data/ljspeech/wavs/LJ045-0153.npy -tests/data/ljspeech/wavs/LJ049-0062.wav|tests/data/ljspeech/wavs/LJ049-0062.npy -tests/data/ljspeech/wavs/LJ039-0048.wav|tests/data/ljspeech/wavs/LJ039-0048.npy -tests/data/ljspeech/wavs/LJ021-0045.wav|tests/data/ljspeech/wavs/LJ021-0045.npy -tests/data/ljspeech/wavs/LJ011-0275.wav|tests/data/ljspeech/wavs/LJ011-0275.npy -tests/data/ljspeech/wavs/LJ008-0059.wav|tests/data/ljspeech/wavs/LJ008-0059.npy -tests/data/ljspeech/wavs/LJ015-0242.wav|tests/data/ljspeech/wavs/LJ015-0242.npy -tests/data/ljspeech/wavs/LJ017-0183.wav|tests/data/ljspeech/wavs/LJ017-0183.npy -tests/data/ljspeech/wavs/LJ010-0277.wav|tests/data/ljspeech/wavs/LJ010-0277.npy -tests/data/ljspeech/wavs/LJ020-0089.wav|tests/data/ljspeech/wavs/LJ020-0089.npy -tests/data/ljspeech/wavs/LJ018-0242.wav|tests/data/ljspeech/wavs/LJ018-0242.npy -tests/data/ljspeech/wavs/LJ046-0030.wav|tests/data/ljspeech/wavs/LJ046-0030.npy -tests/data/ljspeech/wavs/LJ048-0241.wav|tests/data/ljspeech/wavs/LJ048-0241.npy -tests/data/ljspeech/wavs/LJ015-0097.wav|tests/data/ljspeech/wavs/LJ015-0097.npy -tests/data/ljspeech/wavs/LJ024-0045.wav|tests/data/ljspeech/wavs/LJ024-0045.npy -tests/data/ljspeech/wavs/LJ009-0036.wav|tests/data/ljspeech/wavs/LJ009-0036.npy -tests/data/ljspeech/wavs/LJ013-0076.wav|tests/data/ljspeech/wavs/LJ013-0076.npy -tests/data/ljspeech/wavs/LJ006-0069.wav|tests/data/ljspeech/wavs/LJ006-0069.npy -tests/data/ljspeech/wavs/LJ027-0079.wav|tests/data/ljspeech/wavs/LJ027-0079.npy -tests/data/ljspeech/wavs/LJ005-0252.wav|tests/data/ljspeech/wavs/LJ005-0252.npy -tests/data/ljspeech/wavs/LJ043-0115.wav|tests/data/ljspeech/wavs/LJ043-0115.npy -tests/data/ljspeech/wavs/LJ043-0032.wav|tests/data/ljspeech/wavs/LJ043-0032.npy -tests/data/ljspeech/wavs/LJ019-0062.wav|tests/data/ljspeech/wavs/LJ019-0062.npy -tests/data/ljspeech/wavs/LJ021-0023.wav|tests/data/ljspeech/wavs/LJ021-0023.npy -tests/data/ljspeech/wavs/LJ050-0186.wav|tests/data/ljspeech/wavs/LJ050-0186.npy -tests/data/ljspeech/wavs/LJ011-0136.wav|tests/data/ljspeech/wavs/LJ011-0136.npy -tests/data/ljspeech/wavs/LJ003-0318.wav|tests/data/ljspeech/wavs/LJ003-0318.npy -tests/data/ljspeech/wavs/LJ019-0216.wav|tests/data/ljspeech/wavs/LJ019-0216.npy -tests/data/ljspeech/wavs/LJ006-0267.wav|tests/data/ljspeech/wavs/LJ006-0267.npy -tests/data/ljspeech/wavs/LJ029-0116.wav|tests/data/ljspeech/wavs/LJ029-0116.npy -tests/data/ljspeech/wavs/LJ021-0026.wav|tests/data/ljspeech/wavs/LJ021-0026.npy -tests/data/ljspeech/wavs/LJ013-0202.wav|tests/data/ljspeech/wavs/LJ013-0202.npy -tests/data/ljspeech/wavs/LJ023-0123.wav|tests/data/ljspeech/wavs/LJ023-0123.npy -tests/data/ljspeech/wavs/LJ004-0119.wav|tests/data/ljspeech/wavs/LJ004-0119.npy -tests/data/ljspeech/wavs/LJ040-0015.wav|tests/data/ljspeech/wavs/LJ040-0015.npy -tests/data/ljspeech/wavs/LJ008-0312.wav|tests/data/ljspeech/wavs/LJ008-0312.npy -tests/data/ljspeech/wavs/LJ034-0018.wav|tests/data/ljspeech/wavs/LJ034-0018.npy -tests/data/ljspeech/wavs/LJ012-0263.wav|tests/data/ljspeech/wavs/LJ012-0263.npy -tests/data/ljspeech/wavs/LJ023-0133.wav|tests/data/ljspeech/wavs/LJ023-0133.npy -tests/data/ljspeech/wavs/LJ028-0047.wav|tests/data/ljspeech/wavs/LJ028-0047.npy -tests/data/ljspeech/wavs/LJ028-0501.wav|tests/data/ljspeech/wavs/LJ028-0501.npy -tests/data/ljspeech/wavs/LJ008-0231.wav|tests/data/ljspeech/wavs/LJ008-0231.npy -tests/data/ljspeech/wavs/LJ048-0212.wav|tests/data/ljspeech/wavs/LJ048-0212.npy -tests/data/ljspeech/wavs/LJ013-0187.wav|tests/data/ljspeech/wavs/LJ013-0187.npy -tests/data/ljspeech/wavs/LJ030-0065.wav|tests/data/ljspeech/wavs/LJ030-0065.npy -tests/data/ljspeech/wavs/LJ037-0177.wav|tests/data/ljspeech/wavs/LJ037-0177.npy -tests/data/ljspeech/wavs/LJ008-0092.wav|tests/data/ljspeech/wavs/LJ008-0092.npy -tests/data/ljspeech/wavs/LJ006-0253.wav|tests/data/ljspeech/wavs/LJ006-0253.npy -tests/data/ljspeech/wavs/LJ003-0003.wav|tests/data/ljspeech/wavs/LJ003-0003.npy -tests/data/ljspeech/wavs/LJ015-0232.wav|tests/data/ljspeech/wavs/LJ015-0232.npy -tests/data/ljspeech/wavs/LJ015-0070.wav|tests/data/ljspeech/wavs/LJ015-0070.npy -tests/data/ljspeech/wavs/LJ015-0234.wav|tests/data/ljspeech/wavs/LJ015-0234.npy -tests/data/ljspeech/wavs/LJ038-0122.wav|tests/data/ljspeech/wavs/LJ038-0122.npy -tests/data/ljspeech/wavs/LJ041-0173.wav|tests/data/ljspeech/wavs/LJ041-0173.npy -tests/data/ljspeech/wavs/LJ040-0044.wav|tests/data/ljspeech/wavs/LJ040-0044.npy -tests/data/ljspeech/wavs/LJ037-0241.wav|tests/data/ljspeech/wavs/LJ037-0241.npy -tests/data/ljspeech/wavs/LJ050-0048.wav|tests/data/ljspeech/wavs/LJ050-0048.npy -tests/data/ljspeech/wavs/LJ050-0208.wav|tests/data/ljspeech/wavs/LJ050-0208.npy -tests/data/ljspeech/wavs/LJ012-0047.wav|tests/data/ljspeech/wavs/LJ012-0047.npy -tests/data/ljspeech/wavs/LJ030-0168.wav|tests/data/ljspeech/wavs/LJ030-0168.npy -tests/data/ljspeech/wavs/LJ019-0045.wav|tests/data/ljspeech/wavs/LJ019-0045.npy -tests/data/ljspeech/wavs/LJ045-0234.wav|tests/data/ljspeech/wavs/LJ045-0234.npy -tests/data/ljspeech/wavs/LJ019-0110.wav|tests/data/ljspeech/wavs/LJ019-0110.npy -tests/data/ljspeech/wavs/LJ049-0115.wav|tests/data/ljspeech/wavs/LJ049-0115.npy -tests/data/ljspeech/wavs/LJ019-0315.wav|tests/data/ljspeech/wavs/LJ019-0315.npy -tests/data/ljspeech/wavs/LJ028-0315.wav|tests/data/ljspeech/wavs/LJ028-0315.npy -tests/data/ljspeech/wavs/LJ028-0010.wav|tests/data/ljspeech/wavs/LJ028-0010.npy -tests/data/ljspeech/wavs/LJ007-0108.wav|tests/data/ljspeech/wavs/LJ007-0108.npy -tests/data/ljspeech/wavs/LJ012-0019.wav|tests/data/ljspeech/wavs/LJ012-0019.npy -tests/data/ljspeech/wavs/LJ048-0117.wav|tests/data/ljspeech/wavs/LJ048-0117.npy -tests/data/ljspeech/wavs/LJ010-0260.wav|tests/data/ljspeech/wavs/LJ010-0260.npy -tests/data/ljspeech/wavs/LJ039-0138.wav|tests/data/ljspeech/wavs/LJ039-0138.npy -tests/data/ljspeech/wavs/LJ014-0101.wav|tests/data/ljspeech/wavs/LJ014-0101.npy -tests/data/ljspeech/wavs/LJ047-0103.wav|tests/data/ljspeech/wavs/LJ047-0103.npy -tests/data/ljspeech/wavs/LJ026-0155.wav|tests/data/ljspeech/wavs/LJ026-0155.npy -tests/data/ljspeech/wavs/LJ023-0088.wav|tests/data/ljspeech/wavs/LJ023-0088.npy -tests/data/ljspeech/wavs/LJ012-0093.wav|tests/data/ljspeech/wavs/LJ012-0093.npy -tests/data/ljspeech/wavs/LJ026-0092.wav|tests/data/ljspeech/wavs/LJ026-0092.npy -tests/data/ljspeech/wavs/LJ005-0169.wav|tests/data/ljspeech/wavs/LJ005-0169.npy -tests/data/ljspeech/wavs/LJ028-0270.wav|tests/data/ljspeech/wavs/LJ028-0270.npy -tests/data/ljspeech/wavs/LJ005-0020.wav|tests/data/ljspeech/wavs/LJ005-0020.npy -tests/data/ljspeech/wavs/LJ028-0477.wav|tests/data/ljspeech/wavs/LJ028-0477.npy -tests/data/ljspeech/wavs/LJ040-0130.wav|tests/data/ljspeech/wavs/LJ040-0130.npy -tests/data/ljspeech/wavs/LJ002-0088.wav|tests/data/ljspeech/wavs/LJ002-0088.npy -tests/data/ljspeech/wavs/LJ049-0128.wav|tests/data/ljspeech/wavs/LJ049-0128.npy -tests/data/ljspeech/wavs/LJ016-0211.wav|tests/data/ljspeech/wavs/LJ016-0211.npy -tests/data/ljspeech/wavs/LJ014-0117.wav|tests/data/ljspeech/wavs/LJ014-0117.npy -tests/data/ljspeech/wavs/LJ038-0024.wav|tests/data/ljspeech/wavs/LJ038-0024.npy -tests/data/ljspeech/wavs/LJ049-0190.wav|tests/data/ljspeech/wavs/LJ049-0190.npy -tests/data/ljspeech/wavs/LJ016-0085.wav|tests/data/ljspeech/wavs/LJ016-0085.npy -tests/data/ljspeech/wavs/LJ038-0179.wav|tests/data/ljspeech/wavs/LJ038-0179.npy -tests/data/ljspeech/wavs/LJ003-0203.wav|tests/data/ljspeech/wavs/LJ003-0203.npy -tests/data/ljspeech/wavs/LJ031-0176.wav|tests/data/ljspeech/wavs/LJ031-0176.npy -tests/data/ljspeech/wavs/LJ037-0055.wav|tests/data/ljspeech/wavs/LJ037-0055.npy -tests/data/ljspeech/wavs/LJ014-0265.wav|tests/data/ljspeech/wavs/LJ014-0265.npy -tests/data/ljspeech/wavs/LJ049-0198.wav|tests/data/ljspeech/wavs/LJ049-0198.npy -tests/data/ljspeech/wavs/LJ037-0236.wav|tests/data/ljspeech/wavs/LJ037-0236.npy -tests/data/ljspeech/wavs/LJ045-0027.wav|tests/data/ljspeech/wavs/LJ045-0027.npy -tests/data/ljspeech/wavs/LJ013-0108.wav|tests/data/ljspeech/wavs/LJ013-0108.npy -tests/data/ljspeech/wavs/LJ028-0076.wav|tests/data/ljspeech/wavs/LJ028-0076.npy -tests/data/ljspeech/wavs/LJ014-0277.wav|tests/data/ljspeech/wavs/LJ014-0277.npy -tests/data/ljspeech/wavs/LJ027-0157.wav|tests/data/ljspeech/wavs/LJ027-0157.npy -tests/data/ljspeech/wavs/LJ015-0290.wav|tests/data/ljspeech/wavs/LJ015-0290.npy -tests/data/ljspeech/wavs/LJ007-0130.wav|tests/data/ljspeech/wavs/LJ007-0130.npy -tests/data/ljspeech/wavs/LJ013-0026.wav|tests/data/ljspeech/wavs/LJ013-0026.npy -tests/data/ljspeech/wavs/LJ045-0192.wav|tests/data/ljspeech/wavs/LJ045-0192.npy -tests/data/ljspeech/wavs/LJ038-0284.wav|tests/data/ljspeech/wavs/LJ038-0284.npy -tests/data/ljspeech/wavs/LJ047-0027.wav|tests/data/ljspeech/wavs/LJ047-0027.npy -tests/data/ljspeech/wavs/LJ003-0348.wav|tests/data/ljspeech/wavs/LJ003-0348.npy -tests/data/ljspeech/wavs/LJ003-0178.wav|tests/data/ljspeech/wavs/LJ003-0178.npy -tests/data/ljspeech/wavs/LJ028-0023.wav|tests/data/ljspeech/wavs/LJ028-0023.npy -tests/data/ljspeech/wavs/LJ013-0226.wav|tests/data/ljspeech/wavs/LJ013-0226.npy -tests/data/ljspeech/wavs/LJ012-0174.wav|tests/data/ljspeech/wavs/LJ012-0174.npy -tests/data/ljspeech/wavs/LJ032-0154.wav|tests/data/ljspeech/wavs/LJ032-0154.npy -tests/data/ljspeech/wavs/LJ028-0200.wav|tests/data/ljspeech/wavs/LJ028-0200.npy -tests/data/ljspeech/wavs/LJ039-0228.wav|tests/data/ljspeech/wavs/LJ039-0228.npy -tests/data/ljspeech/wavs/LJ036-0121.wav|tests/data/ljspeech/wavs/LJ036-0121.npy -tests/data/ljspeech/wavs/LJ040-0186.wav|tests/data/ljspeech/wavs/LJ040-0186.npy -tests/data/ljspeech/wavs/LJ041-0118.wav|tests/data/ljspeech/wavs/LJ041-0118.npy -tests/data/ljspeech/wavs/LJ002-0267.wav|tests/data/ljspeech/wavs/LJ002-0267.npy -tests/data/ljspeech/wavs/LJ002-0124.wav|tests/data/ljspeech/wavs/LJ002-0124.npy -tests/data/ljspeech/wavs/LJ033-0150.wav|tests/data/ljspeech/wavs/LJ033-0150.npy -tests/data/ljspeech/wavs/LJ036-0147.wav|tests/data/ljspeech/wavs/LJ036-0147.npy -tests/data/ljspeech/wavs/LJ044-0033.wav|tests/data/ljspeech/wavs/LJ044-0033.npy -tests/data/ljspeech/wavs/LJ040-0197.wav|tests/data/ljspeech/wavs/LJ040-0197.npy -tests/data/ljspeech/wavs/LJ018-0079.wav|tests/data/ljspeech/wavs/LJ018-0079.npy -tests/data/ljspeech/wavs/LJ017-0266.wav|tests/data/ljspeech/wavs/LJ017-0266.npy -tests/data/ljspeech/wavs/LJ029-0129.wav|tests/data/ljspeech/wavs/LJ029-0129.npy -tests/data/ljspeech/wavs/LJ044-0158.wav|tests/data/ljspeech/wavs/LJ044-0158.npy -tests/data/ljspeech/wavs/LJ002-0004.wav|tests/data/ljspeech/wavs/LJ002-0004.npy -tests/data/ljspeech/wavs/LJ008-0261.wav|tests/data/ljspeech/wavs/LJ008-0261.npy -tests/data/ljspeech/wavs/LJ019-0176.wav|tests/data/ljspeech/wavs/LJ019-0176.npy -tests/data/ljspeech/wavs/LJ018-0226.wav|tests/data/ljspeech/wavs/LJ018-0226.npy -tests/data/ljspeech/wavs/LJ011-0012.wav|tests/data/ljspeech/wavs/LJ011-0012.npy -tests/data/ljspeech/wavs/LJ005-0193.wav|tests/data/ljspeech/wavs/LJ005-0193.npy -tests/data/ljspeech/wavs/LJ018-0003.wav|tests/data/ljspeech/wavs/LJ018-0003.npy -tests/data/ljspeech/wavs/LJ027-0047.wav|tests/data/ljspeech/wavs/LJ027-0047.npy -tests/data/ljspeech/wavs/LJ023-0118.wav|tests/data/ljspeech/wavs/LJ023-0118.npy -tests/data/ljspeech/wavs/LJ009-0051.wav|tests/data/ljspeech/wavs/LJ009-0051.npy -tests/data/ljspeech/wavs/LJ046-0053.wav|tests/data/ljspeech/wavs/LJ046-0053.npy -tests/data/ljspeech/wavs/LJ009-0033.wav|tests/data/ljspeech/wavs/LJ009-0033.npy -tests/data/ljspeech/wavs/LJ028-0375.wav|tests/data/ljspeech/wavs/LJ028-0375.npy -tests/data/ljspeech/wavs/LJ032-0136.wav|tests/data/ljspeech/wavs/LJ032-0136.npy -tests/data/ljspeech/wavs/LJ010-0015.wav|tests/data/ljspeech/wavs/LJ010-0015.npy -tests/data/ljspeech/wavs/LJ005-0089.wav|tests/data/ljspeech/wavs/LJ005-0089.npy -tests/data/ljspeech/wavs/LJ010-0206.wav|tests/data/ljspeech/wavs/LJ010-0206.npy -tests/data/ljspeech/wavs/LJ032-0261.wav|tests/data/ljspeech/wavs/LJ032-0261.npy -tests/data/ljspeech/wavs/LJ001-0084.wav|tests/data/ljspeech/wavs/LJ001-0084.npy -tests/data/ljspeech/wavs/LJ047-0023.wav|tests/data/ljspeech/wavs/LJ047-0023.npy -tests/data/ljspeech/wavs/LJ004-0120.wav|tests/data/ljspeech/wavs/LJ004-0120.npy -tests/data/ljspeech/wavs/LJ050-0062.wav|tests/data/ljspeech/wavs/LJ050-0062.npy -tests/data/ljspeech/wavs/LJ019-0101.wav|tests/data/ljspeech/wavs/LJ019-0101.npy -tests/data/ljspeech/wavs/LJ041-0080.wav|tests/data/ljspeech/wavs/LJ041-0080.npy -tests/data/ljspeech/wavs/LJ011-0098.wav|tests/data/ljspeech/wavs/LJ011-0098.npy -tests/data/ljspeech/wavs/LJ021-0158.wav|tests/data/ljspeech/wavs/LJ021-0158.npy -tests/data/ljspeech/wavs/LJ035-0024.wav|tests/data/ljspeech/wavs/LJ035-0024.npy -tests/data/ljspeech/wavs/LJ030-0149.wav|tests/data/ljspeech/wavs/LJ030-0149.npy -tests/data/ljspeech/wavs/LJ048-0012.wav|tests/data/ljspeech/wavs/LJ048-0012.npy -tests/data/ljspeech/wavs/LJ028-0510.wav|tests/data/ljspeech/wavs/LJ028-0510.npy -tests/data/ljspeech/wavs/LJ019-0009.wav|tests/data/ljspeech/wavs/LJ019-0009.npy -tests/data/ljspeech/wavs/LJ037-0038.wav|tests/data/ljspeech/wavs/LJ037-0038.npy -tests/data/ljspeech/wavs/LJ031-0128.wav|tests/data/ljspeech/wavs/LJ031-0128.npy -tests/data/ljspeech/wavs/LJ041-0066.wav|tests/data/ljspeech/wavs/LJ041-0066.npy -tests/data/ljspeech/wavs/LJ049-0069.wav|tests/data/ljspeech/wavs/LJ049-0069.npy -tests/data/ljspeech/wavs/LJ033-0008.wav|tests/data/ljspeech/wavs/LJ033-0008.npy -tests/data/ljspeech/wavs/LJ044-0184.wav|tests/data/ljspeech/wavs/LJ044-0184.npy -tests/data/ljspeech/wavs/LJ004-0157.wav|tests/data/ljspeech/wavs/LJ004-0157.npy -tests/data/ljspeech/wavs/LJ018-0184.wav|tests/data/ljspeech/wavs/LJ018-0184.npy -tests/data/ljspeech/wavs/LJ022-0070.wav|tests/data/ljspeech/wavs/LJ022-0070.npy -tests/data/ljspeech/wavs/LJ001-0053.wav|tests/data/ljspeech/wavs/LJ001-0053.npy -tests/data/ljspeech/wavs/LJ009-0223.wav|tests/data/ljspeech/wavs/LJ009-0223.npy -tests/data/ljspeech/wavs/LJ036-0086.wav|tests/data/ljspeech/wavs/LJ036-0086.npy -tests/data/ljspeech/wavs/LJ018-0225.wav|tests/data/ljspeech/wavs/LJ018-0225.npy -tests/data/ljspeech/wavs/LJ018-0124.wav|tests/data/ljspeech/wavs/LJ018-0124.npy -tests/data/ljspeech/wavs/LJ021-0177.wav|tests/data/ljspeech/wavs/LJ021-0177.npy -tests/data/ljspeech/wavs/LJ048-0136.wav|tests/data/ljspeech/wavs/LJ048-0136.npy -tests/data/ljspeech/wavs/LJ030-0192.wav|tests/data/ljspeech/wavs/LJ030-0192.npy -tests/data/ljspeech/wavs/LJ017-0146.wav|tests/data/ljspeech/wavs/LJ017-0146.npy -tests/data/ljspeech/wavs/LJ016-0352.wav|tests/data/ljspeech/wavs/LJ016-0352.npy -tests/data/ljspeech/wavs/LJ017-0222.wav|tests/data/ljspeech/wavs/LJ017-0222.npy -tests/data/ljspeech/wavs/LJ039-0247.wav|tests/data/ljspeech/wavs/LJ039-0247.npy -tests/data/ljspeech/wavs/LJ036-0194.wav|tests/data/ljspeech/wavs/LJ036-0194.npy -tests/data/ljspeech/wavs/LJ037-0231.wav|tests/data/ljspeech/wavs/LJ037-0231.npy -tests/data/ljspeech/wavs/LJ006-0122.wav|tests/data/ljspeech/wavs/LJ006-0122.npy -tests/data/ljspeech/wavs/LJ009-0175.wav|tests/data/ljspeech/wavs/LJ009-0175.npy -tests/data/ljspeech/wavs/LJ036-0192.wav|tests/data/ljspeech/wavs/LJ036-0192.npy -tests/data/ljspeech/wavs/LJ008-0030.wav|tests/data/ljspeech/wavs/LJ008-0030.npy -tests/data/ljspeech/wavs/LJ045-0129.wav|tests/data/ljspeech/wavs/LJ045-0129.npy -tests/data/ljspeech/wavs/LJ036-0072.wav|tests/data/ljspeech/wavs/LJ036-0072.npy -tests/data/ljspeech/wavs/LJ024-0001.wav|tests/data/ljspeech/wavs/LJ024-0001.npy -tests/data/ljspeech/wavs/LJ028-0090.wav|tests/data/ljspeech/wavs/LJ028-0090.npy -tests/data/ljspeech/wavs/LJ048-0215.wav|tests/data/ljspeech/wavs/LJ048-0215.npy -tests/data/ljspeech/wavs/LJ008-0276.wav|tests/data/ljspeech/wavs/LJ008-0276.npy -tests/data/ljspeech/wavs/LJ018-0077.wav|tests/data/ljspeech/wavs/LJ018-0077.npy -tests/data/ljspeech/wavs/LJ044-0030.wav|tests/data/ljspeech/wavs/LJ044-0030.npy -tests/data/ljspeech/wavs/LJ046-0076.wav|tests/data/ljspeech/wavs/LJ046-0076.npy -tests/data/ljspeech/wavs/LJ001-0151.wav|tests/data/ljspeech/wavs/LJ001-0151.npy -tests/data/ljspeech/wavs/LJ021-0170.wav|tests/data/ljspeech/wavs/LJ021-0170.npy -tests/data/ljspeech/wavs/LJ019-0342.wav|tests/data/ljspeech/wavs/LJ019-0342.npy -tests/data/ljspeech/wavs/LJ025-0171.wav|tests/data/ljspeech/wavs/LJ025-0171.npy -tests/data/ljspeech/wavs/LJ008-0281.wav|tests/data/ljspeech/wavs/LJ008-0281.npy -tests/data/ljspeech/wavs/LJ049-0126.wav|tests/data/ljspeech/wavs/LJ049-0126.npy -tests/data/ljspeech/wavs/LJ008-0070.wav|tests/data/ljspeech/wavs/LJ008-0070.npy -tests/data/ljspeech/wavs/LJ002-0092.wav|tests/data/ljspeech/wavs/LJ002-0092.npy -tests/data/ljspeech/wavs/LJ048-0243.wav|tests/data/ljspeech/wavs/LJ048-0243.npy -tests/data/ljspeech/wavs/LJ019-0319.wav|tests/data/ljspeech/wavs/LJ019-0319.npy -tests/data/ljspeech/wavs/LJ028-0005.wav|tests/data/ljspeech/wavs/LJ028-0005.npy -tests/data/ljspeech/wavs/LJ019-0232.wav|tests/data/ljspeech/wavs/LJ019-0232.npy -tests/data/ljspeech/wavs/LJ030-0220.wav|tests/data/ljspeech/wavs/LJ030-0220.npy -tests/data/ljspeech/wavs/LJ024-0057.wav|tests/data/ljspeech/wavs/LJ024-0057.npy -tests/data/ljspeech/wavs/LJ019-0132.wav|tests/data/ljspeech/wavs/LJ019-0132.npy -tests/data/ljspeech/wavs/LJ006-0232.wav|tests/data/ljspeech/wavs/LJ006-0232.npy -tests/data/ljspeech/wavs/LJ029-0187.wav|tests/data/ljspeech/wavs/LJ029-0187.npy -tests/data/ljspeech/wavs/LJ010-0152.wav|tests/data/ljspeech/wavs/LJ010-0152.npy -tests/data/ljspeech/wavs/LJ050-0079.wav|tests/data/ljspeech/wavs/LJ050-0079.npy -tests/data/ljspeech/wavs/LJ005-0019.wav|tests/data/ljspeech/wavs/LJ005-0019.npy -tests/data/ljspeech/wavs/LJ028-0447.wav|tests/data/ljspeech/wavs/LJ028-0447.npy -tests/data/ljspeech/wavs/LJ012-0231.wav|tests/data/ljspeech/wavs/LJ012-0231.npy -tests/data/ljspeech/wavs/LJ041-0142.wav|tests/data/ljspeech/wavs/LJ041-0142.npy -tests/data/ljspeech/wavs/LJ004-0207.wav|tests/data/ljspeech/wavs/LJ004-0207.npy -tests/data/ljspeech/wavs/LJ001-0167.wav|tests/data/ljspeech/wavs/LJ001-0167.npy -tests/data/ljspeech/wavs/LJ044-0107.wav|tests/data/ljspeech/wavs/LJ044-0107.npy -tests/data/ljspeech/wavs/LJ015-0157.wav|tests/data/ljspeech/wavs/LJ015-0157.npy -tests/data/ljspeech/wavs/LJ040-0237.wav|tests/data/ljspeech/wavs/LJ040-0237.npy -tests/data/ljspeech/wavs/LJ006-0107.wav|tests/data/ljspeech/wavs/LJ006-0107.npy -tests/data/ljspeech/wavs/LJ010-0031.wav|tests/data/ljspeech/wavs/LJ010-0031.npy -tests/data/ljspeech/wavs/LJ028-0050.wav|tests/data/ljspeech/wavs/LJ028-0050.npy -tests/data/ljspeech/wavs/LJ019-0214.wav|tests/data/ljspeech/wavs/LJ019-0214.npy -tests/data/ljspeech/wavs/LJ001-0161.wav|tests/data/ljspeech/wavs/LJ001-0161.npy -tests/data/ljspeech/wavs/LJ030-0211.wav|tests/data/ljspeech/wavs/LJ030-0211.npy -tests/data/ljspeech/wavs/LJ033-0079.wav|tests/data/ljspeech/wavs/LJ033-0079.npy -tests/data/ljspeech/wavs/LJ009-0269.wav|tests/data/ljspeech/wavs/LJ009-0269.npy -tests/data/ljspeech/wavs/LJ043-0084.wav|tests/data/ljspeech/wavs/LJ043-0084.npy -tests/data/ljspeech/wavs/LJ004-0017.wav|tests/data/ljspeech/wavs/LJ004-0017.npy -tests/data/ljspeech/wavs/LJ046-0247.wav|tests/data/ljspeech/wavs/LJ046-0247.npy -tests/data/ljspeech/wavs/LJ005-0114.wav|tests/data/ljspeech/wavs/LJ005-0114.npy -tests/data/ljspeech/wavs/LJ015-0066.wav|tests/data/ljspeech/wavs/LJ015-0066.npy -tests/data/ljspeech/wavs/LJ009-0299.wav|tests/data/ljspeech/wavs/LJ009-0299.npy -tests/data/ljspeech/wavs/LJ007-0004.wav|tests/data/ljspeech/wavs/LJ007-0004.npy -tests/data/ljspeech/wavs/LJ006-0045.wav|tests/data/ljspeech/wavs/LJ006-0045.npy -tests/data/ljspeech/wavs/LJ019-0395.wav|tests/data/ljspeech/wavs/LJ019-0395.npy -tests/data/ljspeech/wavs/LJ031-0162.wav|tests/data/ljspeech/wavs/LJ031-0162.npy -tests/data/ljspeech/wavs/LJ046-0249.wav|tests/data/ljspeech/wavs/LJ046-0249.npy -tests/data/ljspeech/wavs/LJ034-0132.wav|tests/data/ljspeech/wavs/LJ034-0132.npy -tests/data/ljspeech/wavs/LJ013-0073.wav|tests/data/ljspeech/wavs/LJ013-0073.npy -tests/data/ljspeech/wavs/LJ011-0279.wav|tests/data/ljspeech/wavs/LJ011-0279.npy -tests/data/ljspeech/wavs/LJ030-0158.wav|tests/data/ljspeech/wavs/LJ030-0158.npy -tests/data/ljspeech/wavs/LJ048-0127.wav|tests/data/ljspeech/wavs/LJ048-0127.npy -tests/data/ljspeech/wavs/LJ036-0210.wav|tests/data/ljspeech/wavs/LJ036-0210.npy -tests/data/ljspeech/wavs/LJ029-0193.wav|tests/data/ljspeech/wavs/LJ029-0193.npy -tests/data/ljspeech/wavs/LJ016-0151.wav|tests/data/ljspeech/wavs/LJ016-0151.npy -tests/data/ljspeech/wavs/LJ033-0153.wav|tests/data/ljspeech/wavs/LJ033-0153.npy -tests/data/ljspeech/wavs/LJ042-0009.wav|tests/data/ljspeech/wavs/LJ042-0009.npy -tests/data/ljspeech/wavs/LJ050-0085.wav|tests/data/ljspeech/wavs/LJ050-0085.npy -tests/data/ljspeech/wavs/LJ025-0034.wav|tests/data/ljspeech/wavs/LJ025-0034.npy -tests/data/ljspeech/wavs/LJ048-0235.wav|tests/data/ljspeech/wavs/LJ048-0235.npy -tests/data/ljspeech/wavs/LJ001-0041.wav|tests/data/ljspeech/wavs/LJ001-0041.npy -tests/data/ljspeech/wavs/LJ002-0288.wav|tests/data/ljspeech/wavs/LJ002-0288.npy -tests/data/ljspeech/wavs/LJ022-0074.wav|tests/data/ljspeech/wavs/LJ022-0074.npy -tests/data/ljspeech/wavs/LJ017-0217.wav|tests/data/ljspeech/wavs/LJ017-0217.npy -tests/data/ljspeech/wavs/LJ011-0100.wav|tests/data/ljspeech/wavs/LJ011-0100.npy -tests/data/ljspeech/wavs/LJ017-0280.wav|tests/data/ljspeech/wavs/LJ017-0280.npy -tests/data/ljspeech/wavs/LJ028-0298.wav|tests/data/ljspeech/wavs/LJ028-0298.npy -tests/data/ljspeech/wavs/LJ023-0069.wav|tests/data/ljspeech/wavs/LJ023-0069.npy -tests/data/ljspeech/wavs/LJ031-0119.wav|tests/data/ljspeech/wavs/LJ031-0119.npy -tests/data/ljspeech/wavs/LJ011-0091.wav|tests/data/ljspeech/wavs/LJ011-0091.npy -tests/data/ljspeech/wavs/LJ003-0266.wav|tests/data/ljspeech/wavs/LJ003-0266.npy -tests/data/ljspeech/wavs/LJ016-0141.wav|tests/data/ljspeech/wavs/LJ016-0141.npy -tests/data/ljspeech/wavs/LJ011-0194.wav|tests/data/ljspeech/wavs/LJ011-0194.npy -tests/data/ljspeech/wavs/LJ029-0194.wav|tests/data/ljspeech/wavs/LJ029-0194.npy -tests/data/ljspeech/wavs/LJ045-0198.wav|tests/data/ljspeech/wavs/LJ045-0198.npy -tests/data/ljspeech/wavs/LJ011-0138.wav|tests/data/ljspeech/wavs/LJ011-0138.npy -tests/data/ljspeech/wavs/LJ042-0027.wav|tests/data/ljspeech/wavs/LJ042-0027.npy -tests/data/ljspeech/wavs/LJ037-0135.wav|tests/data/ljspeech/wavs/LJ037-0135.npy -tests/data/ljspeech/wavs/LJ033-0142.wav|tests/data/ljspeech/wavs/LJ033-0142.npy -tests/data/ljspeech/wavs/LJ038-0088.wav|tests/data/ljspeech/wavs/LJ038-0088.npy -tests/data/ljspeech/wavs/LJ002-0225.wav|tests/data/ljspeech/wavs/LJ002-0225.npy -tests/data/ljspeech/wavs/LJ030-0160.wav|tests/data/ljspeech/wavs/LJ030-0160.npy -tests/data/ljspeech/wavs/LJ036-0176.wav|tests/data/ljspeech/wavs/LJ036-0176.npy -tests/data/ljspeech/wavs/LJ002-0034.wav|tests/data/ljspeech/wavs/LJ002-0034.npy -tests/data/ljspeech/wavs/LJ004-0028.wav|tests/data/ljspeech/wavs/LJ004-0028.npy -tests/data/ljspeech/wavs/LJ010-0018.wav|tests/data/ljspeech/wavs/LJ010-0018.npy -tests/data/ljspeech/wavs/LJ038-0074.wav|tests/data/ljspeech/wavs/LJ038-0074.npy -tests/data/ljspeech/wavs/LJ038-0015.wav|tests/data/ljspeech/wavs/LJ038-0015.npy -tests/data/ljspeech/wavs/LJ044-0040.wav|tests/data/ljspeech/wavs/LJ044-0040.npy -tests/data/ljspeech/wavs/LJ050-0045.wav|tests/data/ljspeech/wavs/LJ050-0045.npy -tests/data/ljspeech/wavs/LJ035-0137.wav|tests/data/ljspeech/wavs/LJ035-0137.npy -tests/data/ljspeech/wavs/LJ003-0309.wav|tests/data/ljspeech/wavs/LJ003-0309.npy -tests/data/ljspeech/wavs/LJ027-0056.wav|tests/data/ljspeech/wavs/LJ027-0056.npy -tests/data/ljspeech/wavs/LJ001-0006.wav|tests/data/ljspeech/wavs/LJ001-0006.npy -tests/data/ljspeech/wavs/LJ028-0132.wav|tests/data/ljspeech/wavs/LJ028-0132.npy -tests/data/ljspeech/wavs/LJ003-0161.wav|tests/data/ljspeech/wavs/LJ003-0161.npy -tests/data/ljspeech/wavs/LJ035-0154.wav|tests/data/ljspeech/wavs/LJ035-0154.npy -tests/data/ljspeech/wavs/LJ024-0126.wav|tests/data/ljspeech/wavs/LJ024-0126.npy -tests/data/ljspeech/wavs/LJ038-0127.wav|tests/data/ljspeech/wavs/LJ038-0127.npy -tests/data/ljspeech/wavs/LJ014-0047.wav|tests/data/ljspeech/wavs/LJ014-0047.npy -tests/data/ljspeech/wavs/LJ008-0170.wav|tests/data/ljspeech/wavs/LJ008-0170.npy -tests/data/ljspeech/wavs/LJ008-0146.wav|tests/data/ljspeech/wavs/LJ008-0146.npy -tests/data/ljspeech/wavs/LJ041-0055.wav|tests/data/ljspeech/wavs/LJ041-0055.npy -tests/data/ljspeech/wavs/LJ006-0307.wav|tests/data/ljspeech/wavs/LJ006-0307.npy -tests/data/ljspeech/wavs/LJ029-0156.wav|tests/data/ljspeech/wavs/LJ029-0156.npy -tests/data/ljspeech/wavs/LJ033-0214.wav|tests/data/ljspeech/wavs/LJ033-0214.npy -tests/data/ljspeech/wavs/LJ016-0304.wav|tests/data/ljspeech/wavs/LJ016-0304.npy -tests/data/ljspeech/wavs/LJ013-0186.wav|tests/data/ljspeech/wavs/LJ013-0186.npy -tests/data/ljspeech/wavs/LJ038-0151.wav|tests/data/ljspeech/wavs/LJ038-0151.npy -tests/data/ljspeech/wavs/LJ013-0208.wav|tests/data/ljspeech/wavs/LJ013-0208.npy -tests/data/ljspeech/wavs/LJ001-0011.wav|tests/data/ljspeech/wavs/LJ001-0011.npy -tests/data/ljspeech/wavs/LJ050-0102.wav|tests/data/ljspeech/wavs/LJ050-0102.npy -tests/data/ljspeech/wavs/LJ046-0061.wav|tests/data/ljspeech/wavs/LJ046-0061.npy -tests/data/ljspeech/wavs/LJ030-0051.wav|tests/data/ljspeech/wavs/LJ030-0051.npy -tests/data/ljspeech/wavs/LJ007-0100.wav|tests/data/ljspeech/wavs/LJ007-0100.npy -tests/data/ljspeech/wavs/LJ007-0099.wav|tests/data/ljspeech/wavs/LJ007-0099.npy -tests/data/ljspeech/wavs/LJ033-0186.wav|tests/data/ljspeech/wavs/LJ033-0186.npy -tests/data/ljspeech/wavs/LJ024-0023.wav|tests/data/ljspeech/wavs/LJ024-0023.npy -tests/data/ljspeech/wavs/LJ035-0079.wav|tests/data/ljspeech/wavs/LJ035-0079.npy -tests/data/ljspeech/wavs/LJ046-0005.wav|tests/data/ljspeech/wavs/LJ046-0005.npy -tests/data/ljspeech/wavs/LJ038-0235.wav|tests/data/ljspeech/wavs/LJ038-0235.npy -tests/data/ljspeech/wavs/LJ046-0208.wav|tests/data/ljspeech/wavs/LJ046-0208.npy -tests/data/ljspeech/wavs/LJ006-0109.wav|tests/data/ljspeech/wavs/LJ006-0109.npy -tests/data/ljspeech/wavs/LJ034-0062.wav|tests/data/ljspeech/wavs/LJ034-0062.npy -tests/data/ljspeech/wavs/LJ020-0044.wav|tests/data/ljspeech/wavs/LJ020-0044.npy -tests/data/ljspeech/wavs/LJ019-0117.wav|tests/data/ljspeech/wavs/LJ019-0117.npy -tests/data/ljspeech/wavs/LJ007-0142.wav|tests/data/ljspeech/wavs/LJ007-0142.npy -tests/data/ljspeech/wavs/LJ005-0036.wav|tests/data/ljspeech/wavs/LJ005-0036.npy -tests/data/ljspeech/wavs/LJ028-0066.wav|tests/data/ljspeech/wavs/LJ028-0066.npy -tests/data/ljspeech/wavs/LJ040-0037.wav|tests/data/ljspeech/wavs/LJ040-0037.npy -tests/data/ljspeech/wavs/LJ021-0180.wav|tests/data/ljspeech/wavs/LJ021-0180.npy -tests/data/ljspeech/wavs/LJ028-0301.wav|tests/data/ljspeech/wavs/LJ028-0301.npy -tests/data/ljspeech/wavs/LJ004-0188.wav|tests/data/ljspeech/wavs/LJ004-0188.npy -tests/data/ljspeech/wavs/LJ035-0125.wav|tests/data/ljspeech/wavs/LJ035-0125.npy -tests/data/ljspeech/wavs/LJ047-0111.wav|tests/data/ljspeech/wavs/LJ047-0111.npy -tests/data/ljspeech/wavs/LJ014-0188.wav|tests/data/ljspeech/wavs/LJ014-0188.npy -tests/data/ljspeech/wavs/LJ025-0137.wav|tests/data/ljspeech/wavs/LJ025-0137.npy -tests/data/ljspeech/wavs/LJ020-0001.wav|tests/data/ljspeech/wavs/LJ020-0001.npy -tests/data/ljspeech/wavs/LJ028-0209.wav|tests/data/ljspeech/wavs/LJ028-0209.npy -tests/data/ljspeech/wavs/LJ008-0236.wav|tests/data/ljspeech/wavs/LJ008-0236.npy -tests/data/ljspeech/wavs/LJ002-0093.wav|tests/data/ljspeech/wavs/LJ002-0093.npy -tests/data/ljspeech/wavs/LJ019-0148.wav|tests/data/ljspeech/wavs/LJ019-0148.npy -tests/data/ljspeech/wavs/LJ025-0124.wav|tests/data/ljspeech/wavs/LJ025-0124.npy -tests/data/ljspeech/wavs/LJ035-0108.wav|tests/data/ljspeech/wavs/LJ035-0108.npy -tests/data/ljspeech/wavs/LJ039-0063.wav|tests/data/ljspeech/wavs/LJ039-0063.npy -tests/data/ljspeech/wavs/LJ005-0134.wav|tests/data/ljspeech/wavs/LJ005-0134.npy -tests/data/ljspeech/wavs/LJ021-0029.wav|tests/data/ljspeech/wavs/LJ021-0029.npy -tests/data/ljspeech/wavs/LJ018-0121.wav|tests/data/ljspeech/wavs/LJ018-0121.npy -tests/data/ljspeech/wavs/LJ046-0139.wav|tests/data/ljspeech/wavs/LJ046-0139.npy -tests/data/ljspeech/wavs/LJ046-0112.wav|tests/data/ljspeech/wavs/LJ046-0112.npy -tests/data/ljspeech/wavs/LJ021-0091.wav|tests/data/ljspeech/wavs/LJ021-0091.npy -tests/data/ljspeech/wavs/LJ018-0390.wav|tests/data/ljspeech/wavs/LJ018-0390.npy -tests/data/ljspeech/wavs/LJ040-0194.wav|tests/data/ljspeech/wavs/LJ040-0194.npy -tests/data/ljspeech/wavs/LJ001-0135.wav|tests/data/ljspeech/wavs/LJ001-0135.npy -tests/data/ljspeech/wavs/LJ013-0225.wav|tests/data/ljspeech/wavs/LJ013-0225.npy -tests/data/ljspeech/wavs/LJ009-0107.wav|tests/data/ljspeech/wavs/LJ009-0107.npy -tests/data/ljspeech/wavs/LJ017-0097.wav|tests/data/ljspeech/wavs/LJ017-0097.npy -tests/data/ljspeech/wavs/LJ037-0158.wav|tests/data/ljspeech/wavs/LJ037-0158.npy -tests/data/ljspeech/wavs/LJ012-0291.wav|tests/data/ljspeech/wavs/LJ012-0291.npy -tests/data/ljspeech/wavs/LJ036-0173.wav|tests/data/ljspeech/wavs/LJ036-0173.npy -tests/data/ljspeech/wavs/LJ039-0052.wav|tests/data/ljspeech/wavs/LJ039-0052.npy -tests/data/ljspeech/wavs/LJ022-0044.wav|tests/data/ljspeech/wavs/LJ022-0044.npy -tests/data/ljspeech/wavs/LJ022-0132.wav|tests/data/ljspeech/wavs/LJ022-0132.npy -tests/data/ljspeech/wavs/LJ002-0226.wav|tests/data/ljspeech/wavs/LJ002-0226.npy -tests/data/ljspeech/wavs/LJ021-0145.wav|tests/data/ljspeech/wavs/LJ021-0145.npy -tests/data/ljspeech/wavs/LJ018-0379.wav|tests/data/ljspeech/wavs/LJ018-0379.npy -tests/data/ljspeech/wavs/LJ047-0239.wav|tests/data/ljspeech/wavs/LJ047-0239.npy -tests/data/ljspeech/wavs/LJ002-0057.wav|tests/data/ljspeech/wavs/LJ002-0057.npy -tests/data/ljspeech/wavs/LJ001-0083.wav|tests/data/ljspeech/wavs/LJ001-0083.npy -tests/data/ljspeech/wavs/LJ018-0072.wav|tests/data/ljspeech/wavs/LJ018-0072.npy -tests/data/ljspeech/wavs/LJ032-0169.wav|tests/data/ljspeech/wavs/LJ032-0169.npy -tests/data/ljspeech/wavs/LJ002-0282.wav|tests/data/ljspeech/wavs/LJ002-0282.npy -tests/data/ljspeech/wavs/LJ018-0388.wav|tests/data/ljspeech/wavs/LJ018-0388.npy -tests/data/ljspeech/wavs/LJ005-0101.wav|tests/data/ljspeech/wavs/LJ005-0101.npy -tests/data/ljspeech/wavs/LJ012-0021.wav|tests/data/ljspeech/wavs/LJ012-0021.npy -tests/data/ljspeech/wavs/LJ048-0249.wav|tests/data/ljspeech/wavs/LJ048-0249.npy -tests/data/ljspeech/wavs/LJ005-0075.wav|tests/data/ljspeech/wavs/LJ005-0075.npy -tests/data/ljspeech/wavs/LJ003-0295.wav|tests/data/ljspeech/wavs/LJ003-0295.npy -tests/data/ljspeech/wavs/LJ031-0191.wav|tests/data/ljspeech/wavs/LJ031-0191.npy -tests/data/ljspeech/wavs/LJ008-0313.wav|tests/data/ljspeech/wavs/LJ008-0313.npy -tests/data/ljspeech/wavs/LJ047-0041.wav|tests/data/ljspeech/wavs/LJ047-0041.npy -tests/data/ljspeech/wavs/LJ024-0066.wav|tests/data/ljspeech/wavs/LJ024-0066.npy -tests/data/ljspeech/wavs/LJ009-0060.wav|tests/data/ljspeech/wavs/LJ009-0060.npy -tests/data/ljspeech/wavs/LJ024-0055.wav|tests/data/ljspeech/wavs/LJ024-0055.npy -tests/data/ljspeech/wavs/LJ007-0233.wav|tests/data/ljspeech/wavs/LJ007-0233.npy -tests/data/ljspeech/wavs/LJ007-0055.wav|tests/data/ljspeech/wavs/LJ007-0055.npy -tests/data/ljspeech/wavs/LJ025-0085.wav|tests/data/ljspeech/wavs/LJ025-0085.npy -tests/data/ljspeech/wavs/LJ024-0029.wav|tests/data/ljspeech/wavs/LJ024-0029.npy -tests/data/ljspeech/wavs/LJ021-0046.wav|tests/data/ljspeech/wavs/LJ021-0046.npy -tests/data/ljspeech/wavs/LJ043-0169.wav|tests/data/ljspeech/wavs/LJ043-0169.npy -tests/data/ljspeech/wavs/LJ013-0175.wav|tests/data/ljspeech/wavs/LJ013-0175.npy -tests/data/ljspeech/wavs/LJ039-0064.wav|tests/data/ljspeech/wavs/LJ039-0064.npy -tests/data/ljspeech/wavs/LJ003-0213.wav|tests/data/ljspeech/wavs/LJ003-0213.npy -tests/data/ljspeech/wavs/LJ002-0053.wav|tests/data/ljspeech/wavs/LJ002-0053.npy -tests/data/ljspeech/wavs/LJ014-0248.wav|tests/data/ljspeech/wavs/LJ014-0248.npy -tests/data/ljspeech/wavs/LJ033-0088.wav|tests/data/ljspeech/wavs/LJ033-0088.npy -tests/data/ljspeech/wavs/LJ001-0137.wav|tests/data/ljspeech/wavs/LJ001-0137.npy -tests/data/ljspeech/wavs/LJ001-0029.wav|tests/data/ljspeech/wavs/LJ001-0029.npy -tests/data/ljspeech/wavs/LJ042-0091.wav|tests/data/ljspeech/wavs/LJ042-0091.npy -tests/data/ljspeech/wavs/LJ032-0009.wav|tests/data/ljspeech/wavs/LJ032-0009.npy -tests/data/ljspeech/wavs/LJ001-0155.wav|tests/data/ljspeech/wavs/LJ001-0155.npy -tests/data/ljspeech/wavs/LJ014-0197.wav|tests/data/ljspeech/wavs/LJ014-0197.npy -tests/data/ljspeech/wavs/LJ028-0147.wav|tests/data/ljspeech/wavs/LJ028-0147.npy -tests/data/ljspeech/wavs/LJ019-0396.wav|tests/data/ljspeech/wavs/LJ019-0396.npy -tests/data/ljspeech/wavs/LJ008-0141.wav|tests/data/ljspeech/wavs/LJ008-0141.npy -tests/data/ljspeech/wavs/LJ020-0105.wav|tests/data/ljspeech/wavs/LJ020-0105.npy -tests/data/ljspeech/wavs/LJ003-0323.wav|tests/data/ljspeech/wavs/LJ003-0323.npy -tests/data/ljspeech/wavs/LJ022-0123.wav|tests/data/ljspeech/wavs/LJ022-0123.npy -tests/data/ljspeech/wavs/LJ032-0093.wav|tests/data/ljspeech/wavs/LJ032-0093.npy -tests/data/ljspeech/wavs/LJ028-0126.wav|tests/data/ljspeech/wavs/LJ028-0126.npy -tests/data/ljspeech/wavs/LJ002-0248.wav|tests/data/ljspeech/wavs/LJ002-0248.npy -tests/data/ljspeech/wavs/LJ045-0215.wav|tests/data/ljspeech/wavs/LJ045-0215.npy -tests/data/ljspeech/wavs/LJ040-0211.wav|tests/data/ljspeech/wavs/LJ040-0211.npy -tests/data/ljspeech/wavs/LJ018-0066.wav|tests/data/ljspeech/wavs/LJ018-0066.npy -tests/data/ljspeech/wavs/LJ037-0168.wav|tests/data/ljspeech/wavs/LJ037-0168.npy -tests/data/ljspeech/wavs/LJ018-0328.wav|tests/data/ljspeech/wavs/LJ018-0328.npy -tests/data/ljspeech/wavs/LJ031-0045.wav|tests/data/ljspeech/wavs/LJ031-0045.npy -tests/data/ljspeech/wavs/LJ030-0183.wav|tests/data/ljspeech/wavs/LJ030-0183.npy -tests/data/ljspeech/wavs/LJ044-0071.wav|tests/data/ljspeech/wavs/LJ044-0071.npy -tests/data/ljspeech/wavs/LJ015-0186.wav|tests/data/ljspeech/wavs/LJ015-0186.npy -tests/data/ljspeech/wavs/LJ039-0244.wav|tests/data/ljspeech/wavs/LJ039-0244.npy -tests/data/ljspeech/wavs/LJ032-0166.wav|tests/data/ljspeech/wavs/LJ032-0166.npy -tests/data/ljspeech/wavs/LJ040-0138.wav|tests/data/ljspeech/wavs/LJ040-0138.npy -tests/data/ljspeech/wavs/LJ004-0078.wav|tests/data/ljspeech/wavs/LJ004-0078.npy -tests/data/ljspeech/wavs/LJ027-0022.wav|tests/data/ljspeech/wavs/LJ027-0022.npy -tests/data/ljspeech/wavs/LJ039-0237.wav|tests/data/ljspeech/wavs/LJ039-0237.npy -tests/data/ljspeech/wavs/LJ012-0006.wav|tests/data/ljspeech/wavs/LJ012-0006.npy -tests/data/ljspeech/wavs/LJ010-0129.wav|tests/data/ljspeech/wavs/LJ010-0129.npy -tests/data/ljspeech/wavs/LJ014-0039.wav|tests/data/ljspeech/wavs/LJ014-0039.npy -tests/data/ljspeech/wavs/LJ040-0155.wav|tests/data/ljspeech/wavs/LJ040-0155.npy -tests/data/ljspeech/wavs/LJ012-0077.wav|tests/data/ljspeech/wavs/LJ012-0077.npy -tests/data/ljspeech/wavs/LJ018-0133.wav|tests/data/ljspeech/wavs/LJ018-0133.npy -tests/data/ljspeech/wavs/LJ018-0300.wav|tests/data/ljspeech/wavs/LJ018-0300.npy -tests/data/ljspeech/wavs/LJ028-0055.wav|tests/data/ljspeech/wavs/LJ028-0055.npy -tests/data/ljspeech/wavs/LJ037-0250.wav|tests/data/ljspeech/wavs/LJ037-0250.npy -tests/data/ljspeech/wavs/LJ011-0160.wav|tests/data/ljspeech/wavs/LJ011-0160.npy -tests/data/ljspeech/wavs/LJ006-0159.wav|tests/data/ljspeech/wavs/LJ006-0159.npy -tests/data/ljspeech/wavs/LJ010-0080.wav|tests/data/ljspeech/wavs/LJ010-0080.npy -tests/data/ljspeech/wavs/LJ004-0169.wav|tests/data/ljspeech/wavs/LJ004-0169.npy -tests/data/ljspeech/wavs/LJ012-0227.wav|tests/data/ljspeech/wavs/LJ012-0227.npy -tests/data/ljspeech/wavs/LJ030-0091.wav|tests/data/ljspeech/wavs/LJ030-0091.npy -tests/data/ljspeech/wavs/LJ011-0018.wav|tests/data/ljspeech/wavs/LJ011-0018.npy -tests/data/ljspeech/wavs/LJ046-0237.wav|tests/data/ljspeech/wavs/LJ046-0237.npy -tests/data/ljspeech/wavs/LJ031-0033.wav|tests/data/ljspeech/wavs/LJ031-0033.npy -tests/data/ljspeech/wavs/LJ046-0242.wav|tests/data/ljspeech/wavs/LJ046-0242.npy -tests/data/ljspeech/wavs/LJ003-0047.wav|tests/data/ljspeech/wavs/LJ003-0047.npy -tests/data/ljspeech/wavs/LJ039-0111.wav|tests/data/ljspeech/wavs/LJ039-0111.npy -tests/data/ljspeech/wavs/LJ036-0168.wav|tests/data/ljspeech/wavs/LJ036-0168.npy -tests/data/ljspeech/wavs/LJ037-0152.wav|tests/data/ljspeech/wavs/LJ037-0152.npy -tests/data/ljspeech/wavs/LJ027-0081.wav|tests/data/ljspeech/wavs/LJ027-0081.npy -tests/data/ljspeech/wavs/LJ027-0020.wav|tests/data/ljspeech/wavs/LJ027-0020.npy -tests/data/ljspeech/wavs/LJ019-0028.wav|tests/data/ljspeech/wavs/LJ019-0028.npy -tests/data/ljspeech/wavs/LJ035-0033.wav|tests/data/ljspeech/wavs/LJ035-0033.npy -tests/data/ljspeech/wavs/LJ047-0201.wav|tests/data/ljspeech/wavs/LJ047-0201.npy -tests/data/ljspeech/wavs/LJ017-0168.wav|tests/data/ljspeech/wavs/LJ017-0168.npy -tests/data/ljspeech/wavs/LJ022-0176.wav|tests/data/ljspeech/wavs/LJ022-0176.npy -tests/data/ljspeech/wavs/LJ034-0014.wav|tests/data/ljspeech/wavs/LJ034-0014.npy -tests/data/ljspeech/wavs/LJ011-0082.wav|tests/data/ljspeech/wavs/LJ011-0082.npy -tests/data/ljspeech/wavs/LJ037-0127.wav|tests/data/ljspeech/wavs/LJ037-0127.npy -tests/data/ljspeech/wavs/LJ015-0085.wav|tests/data/ljspeech/wavs/LJ015-0085.npy -tests/data/ljspeech/wavs/LJ009-0199.wav|tests/data/ljspeech/wavs/LJ009-0199.npy -tests/data/ljspeech/wavs/LJ031-0187.wav|tests/data/ljspeech/wavs/LJ031-0187.npy -tests/data/ljspeech/wavs/LJ002-0317.wav|tests/data/ljspeech/wavs/LJ002-0317.npy -tests/data/ljspeech/wavs/LJ016-0160.wav|tests/data/ljspeech/wavs/LJ016-0160.npy -tests/data/ljspeech/wavs/LJ040-0236.wav|tests/data/ljspeech/wavs/LJ040-0236.npy -tests/data/ljspeech/wavs/LJ014-0335.wav|tests/data/ljspeech/wavs/LJ014-0335.npy -tests/data/ljspeech/wavs/LJ025-0046.wav|tests/data/ljspeech/wavs/LJ025-0046.npy -tests/data/ljspeech/wavs/LJ016-0115.wav|tests/data/ljspeech/wavs/LJ016-0115.npy -tests/data/ljspeech/wavs/LJ002-0260.wav|tests/data/ljspeech/wavs/LJ002-0260.npy -tests/data/ljspeech/wavs/LJ009-0293.wav|tests/data/ljspeech/wavs/LJ009-0293.npy -tests/data/ljspeech/wavs/LJ016-0291.wav|tests/data/ljspeech/wavs/LJ016-0291.npy -tests/data/ljspeech/wavs/LJ046-0231.wav|tests/data/ljspeech/wavs/LJ046-0231.npy -tests/data/ljspeech/wavs/LJ028-0188.wav|tests/data/ljspeech/wavs/LJ028-0188.npy -tests/data/ljspeech/wavs/LJ050-0249.wav|tests/data/ljspeech/wavs/LJ050-0249.npy -tests/data/ljspeech/wavs/LJ042-0017.wav|tests/data/ljspeech/wavs/LJ042-0017.npy -tests/data/ljspeech/wavs/LJ025-0045.wav|tests/data/ljspeech/wavs/LJ025-0045.npy -tests/data/ljspeech/wavs/LJ004-0002.wav|tests/data/ljspeech/wavs/LJ004-0002.npy -tests/data/ljspeech/wavs/LJ036-0172.wav|tests/data/ljspeech/wavs/LJ036-0172.npy -tests/data/ljspeech/wavs/LJ013-0011.wav|tests/data/ljspeech/wavs/LJ013-0011.npy -tests/data/ljspeech/wavs/LJ031-0102.wav|tests/data/ljspeech/wavs/LJ031-0102.npy -tests/data/ljspeech/wavs/LJ049-0135.wav|tests/data/ljspeech/wavs/LJ049-0135.npy -tests/data/ljspeech/wavs/LJ049-0218.wav|tests/data/ljspeech/wavs/LJ049-0218.npy -tests/data/ljspeech/wavs/LJ023-0041.wav|tests/data/ljspeech/wavs/LJ023-0041.npy -tests/data/ljspeech/wavs/LJ001-0103.wav|tests/data/ljspeech/wavs/LJ001-0103.npy -tests/data/ljspeech/wavs/LJ001-0110.wav|tests/data/ljspeech/wavs/LJ001-0110.npy -tests/data/ljspeech/wavs/LJ031-0175.wav|tests/data/ljspeech/wavs/LJ031-0175.npy -tests/data/ljspeech/wavs/LJ035-0025.wav|tests/data/ljspeech/wavs/LJ035-0025.npy -tests/data/ljspeech/wavs/LJ046-0233.wav|tests/data/ljspeech/wavs/LJ046-0233.npy -tests/data/ljspeech/wavs/LJ004-0229.wav|tests/data/ljspeech/wavs/LJ004-0229.npy -tests/data/ljspeech/wavs/LJ047-0047.wav|tests/data/ljspeech/wavs/LJ047-0047.npy -tests/data/ljspeech/wavs/LJ050-0054.wav|tests/data/ljspeech/wavs/LJ050-0054.npy -tests/data/ljspeech/wavs/LJ019-0050.wav|tests/data/ljspeech/wavs/LJ019-0050.npy -tests/data/ljspeech/wavs/LJ013-0122.wav|tests/data/ljspeech/wavs/LJ013-0122.npy -tests/data/ljspeech/wavs/LJ027-0006.wav|tests/data/ljspeech/wavs/LJ027-0006.npy -tests/data/ljspeech/wavs/LJ030-0133.wav|tests/data/ljspeech/wavs/LJ030-0133.npy -tests/data/ljspeech/wavs/LJ019-0155.wav|tests/data/ljspeech/wavs/LJ019-0155.npy -tests/data/ljspeech/wavs/LJ009-0151.wav|tests/data/ljspeech/wavs/LJ009-0151.npy -tests/data/ljspeech/wavs/LJ016-0301.wav|tests/data/ljspeech/wavs/LJ016-0301.npy -tests/data/ljspeech/wavs/LJ012-0167.wav|tests/data/ljspeech/wavs/LJ012-0167.npy -tests/data/ljspeech/wavs/LJ017-0101.wav|tests/data/ljspeech/wavs/LJ017-0101.npy -tests/data/ljspeech/wavs/LJ011-0039.wav|tests/data/ljspeech/wavs/LJ011-0039.npy -tests/data/ljspeech/wavs/LJ002-0293.wav|tests/data/ljspeech/wavs/LJ002-0293.npy -tests/data/ljspeech/wavs/LJ003-0322.wav|tests/data/ljspeech/wavs/LJ003-0322.npy -tests/data/ljspeech/wavs/LJ007-0002.wav|tests/data/ljspeech/wavs/LJ007-0002.npy -tests/data/ljspeech/wavs/LJ036-0181.wav|tests/data/ljspeech/wavs/LJ036-0181.npy -tests/data/ljspeech/wavs/LJ039-0031.wav|tests/data/ljspeech/wavs/LJ039-0031.npy -tests/data/ljspeech/wavs/LJ029-0084.wav|tests/data/ljspeech/wavs/LJ029-0084.npy -tests/data/ljspeech/wavs/LJ038-0296.wav|tests/data/ljspeech/wavs/LJ038-0296.npy -tests/data/ljspeech/wavs/LJ024-0044.wav|tests/data/ljspeech/wavs/LJ024-0044.npy -tests/data/ljspeech/wavs/LJ040-0039.wav|tests/data/ljspeech/wavs/LJ040-0039.npy -tests/data/ljspeech/wavs/LJ012-0020.wav|tests/data/ljspeech/wavs/LJ012-0020.npy -tests/data/ljspeech/wavs/LJ008-0120.wav|tests/data/ljspeech/wavs/LJ008-0120.npy -tests/data/ljspeech/wavs/LJ006-0106.wav|tests/data/ljspeech/wavs/LJ006-0106.npy -tests/data/ljspeech/wavs/LJ050-0178.wav|tests/data/ljspeech/wavs/LJ050-0178.npy -tests/data/ljspeech/wavs/LJ036-0053.wav|tests/data/ljspeech/wavs/LJ036-0053.npy -tests/data/ljspeech/wavs/LJ025-0164.wav|tests/data/ljspeech/wavs/LJ025-0164.npy -tests/data/ljspeech/wavs/LJ023-0066.wav|tests/data/ljspeech/wavs/LJ023-0066.npy -tests/data/ljspeech/wavs/LJ002-0183.wav|tests/data/ljspeech/wavs/LJ002-0183.npy -tests/data/ljspeech/wavs/LJ027-0061.wav|tests/data/ljspeech/wavs/LJ027-0061.npy -tests/data/ljspeech/wavs/LJ011-0188.wav|tests/data/ljspeech/wavs/LJ011-0188.npy -tests/data/ljspeech/wavs/LJ048-0257.wav|tests/data/ljspeech/wavs/LJ048-0257.npy -tests/data/ljspeech/wavs/LJ046-0238.wav|tests/data/ljspeech/wavs/LJ046-0238.npy -tests/data/ljspeech/wavs/LJ036-0031.wav|tests/data/ljspeech/wavs/LJ036-0031.npy -tests/data/ljspeech/wavs/LJ006-0236.wav|tests/data/ljspeech/wavs/LJ006-0236.npy -tests/data/ljspeech/wavs/LJ030-0230.wav|tests/data/ljspeech/wavs/LJ030-0230.npy -tests/data/ljspeech/wavs/LJ025-0030.wav|tests/data/ljspeech/wavs/LJ025-0030.npy -tests/data/ljspeech/wavs/LJ040-0038.wav|tests/data/ljspeech/wavs/LJ040-0038.npy -tests/data/ljspeech/wavs/LJ016-0389.wav|tests/data/ljspeech/wavs/LJ016-0389.npy -tests/data/ljspeech/wavs/LJ010-0237.wav|tests/data/ljspeech/wavs/LJ010-0237.npy -tests/data/ljspeech/wavs/LJ008-0111.wav|tests/data/ljspeech/wavs/LJ008-0111.npy -tests/data/ljspeech/wavs/LJ036-0182.wav|tests/data/ljspeech/wavs/LJ036-0182.npy -tests/data/ljspeech/wavs/LJ013-0043.wav|tests/data/ljspeech/wavs/LJ013-0043.npy -tests/data/ljspeech/wavs/LJ011-0126.wav|tests/data/ljspeech/wavs/LJ011-0126.npy -tests/data/ljspeech/wavs/LJ006-0251.wav|tests/data/ljspeech/wavs/LJ006-0251.npy -tests/data/ljspeech/wavs/LJ003-0192.wav|tests/data/ljspeech/wavs/LJ003-0192.npy -tests/data/ljspeech/wavs/LJ008-0118.wav|tests/data/ljspeech/wavs/LJ008-0118.npy -tests/data/ljspeech/wavs/LJ002-0008.wav|tests/data/ljspeech/wavs/LJ002-0008.npy -tests/data/ljspeech/wavs/LJ032-0051.wav|tests/data/ljspeech/wavs/LJ032-0051.npy -tests/data/ljspeech/wavs/LJ039-0009.wav|tests/data/ljspeech/wavs/LJ039-0009.npy -tests/data/ljspeech/wavs/LJ046-0191.wav|tests/data/ljspeech/wavs/LJ046-0191.npy -tests/data/ljspeech/wavs/LJ044-0125.wav|tests/data/ljspeech/wavs/LJ044-0125.npy -tests/data/ljspeech/wavs/LJ009-0020.wav|tests/data/ljspeech/wavs/LJ009-0020.npy -tests/data/ljspeech/wavs/LJ010-0165.wav|tests/data/ljspeech/wavs/LJ010-0165.npy -tests/data/ljspeech/wavs/LJ012-0214.wav|tests/data/ljspeech/wavs/LJ012-0214.npy -tests/data/ljspeech/wavs/LJ039-0081.wav|tests/data/ljspeech/wavs/LJ039-0081.npy -tests/data/ljspeech/wavs/LJ050-0124.wav|tests/data/ljspeech/wavs/LJ050-0124.npy -tests/data/ljspeech/wavs/LJ002-0036.wav|tests/data/ljspeech/wavs/LJ002-0036.npy -tests/data/ljspeech/wavs/LJ018-0217.wav|tests/data/ljspeech/wavs/LJ018-0217.npy -tests/data/ljspeech/wavs/LJ034-0147.wav|tests/data/ljspeech/wavs/LJ034-0147.npy -tests/data/ljspeech/wavs/LJ036-0021.wav|tests/data/ljspeech/wavs/LJ036-0021.npy -tests/data/ljspeech/wavs/LJ016-0003.wav|tests/data/ljspeech/wavs/LJ016-0003.npy -tests/data/ljspeech/wavs/LJ028-0002.wav|tests/data/ljspeech/wavs/LJ028-0002.npy -tests/data/ljspeech/wavs/LJ040-0149.wav|tests/data/ljspeech/wavs/LJ040-0149.npy -tests/data/ljspeech/wavs/LJ018-0250.wav|tests/data/ljspeech/wavs/LJ018-0250.npy -tests/data/ljspeech/wavs/LJ012-0098.wav|tests/data/ljspeech/wavs/LJ012-0098.npy -tests/data/ljspeech/wavs/LJ006-0129.wav|tests/data/ljspeech/wavs/LJ006-0129.npy -tests/data/ljspeech/wavs/LJ040-0213.wav|tests/data/ljspeech/wavs/LJ040-0213.npy -tests/data/ljspeech/wavs/LJ006-0302.wav|tests/data/ljspeech/wavs/LJ006-0302.npy -tests/data/ljspeech/wavs/LJ009-0110.wav|tests/data/ljspeech/wavs/LJ009-0110.npy -tests/data/ljspeech/wavs/LJ047-0051.wav|tests/data/ljspeech/wavs/LJ047-0051.npy -tests/data/ljspeech/wavs/LJ025-0138.wav|tests/data/ljspeech/wavs/LJ025-0138.npy -tests/data/ljspeech/wavs/LJ028-0103.wav|tests/data/ljspeech/wavs/LJ028-0103.npy -tests/data/ljspeech/wavs/LJ012-0201.wav|tests/data/ljspeech/wavs/LJ012-0201.npy -tests/data/ljspeech/wavs/LJ010-0091.wav|tests/data/ljspeech/wavs/LJ010-0091.npy -tests/data/ljspeech/wavs/LJ036-0029.wav|tests/data/ljspeech/wavs/LJ036-0029.npy -tests/data/ljspeech/wavs/LJ041-0122.wav|tests/data/ljspeech/wavs/LJ041-0122.npy -tests/data/ljspeech/wavs/LJ015-0214.wav|tests/data/ljspeech/wavs/LJ015-0214.npy -tests/data/ljspeech/wavs/LJ018-0353.wav|tests/data/ljspeech/wavs/LJ018-0353.npy -tests/data/ljspeech/wavs/LJ002-0015.wav|tests/data/ljspeech/wavs/LJ002-0015.npy -tests/data/ljspeech/wavs/LJ019-0010.wav|tests/data/ljspeech/wavs/LJ019-0010.npy -tests/data/ljspeech/wavs/LJ013-0125.wav|tests/data/ljspeech/wavs/LJ013-0125.npy -tests/data/ljspeech/wavs/LJ019-0352.wav|tests/data/ljspeech/wavs/LJ019-0352.npy -tests/data/ljspeech/wavs/LJ043-0111.wav|tests/data/ljspeech/wavs/LJ043-0111.npy -tests/data/ljspeech/wavs/LJ044-0013.wav|tests/data/ljspeech/wavs/LJ044-0013.npy -tests/data/ljspeech/wavs/LJ018-0055.wav|tests/data/ljspeech/wavs/LJ018-0055.npy -tests/data/ljspeech/wavs/LJ023-0127.wav|tests/data/ljspeech/wavs/LJ023-0127.npy -tests/data/ljspeech/wavs/LJ048-0067.wav|tests/data/ljspeech/wavs/LJ048-0067.npy -tests/data/ljspeech/wavs/LJ038-0154.wav|tests/data/ljspeech/wavs/LJ038-0154.npy -tests/data/ljspeech/wavs/LJ006-0152.wav|tests/data/ljspeech/wavs/LJ006-0152.npy -tests/data/ljspeech/wavs/LJ038-0076.wav|tests/data/ljspeech/wavs/LJ038-0076.npy -tests/data/ljspeech/wavs/LJ037-0014.wav|tests/data/ljspeech/wavs/LJ037-0014.npy -tests/data/ljspeech/wavs/LJ016-0424.wav|tests/data/ljspeech/wavs/LJ016-0424.npy -tests/data/ljspeech/wavs/LJ035-0200.wav|tests/data/ljspeech/wavs/LJ035-0200.npy -tests/data/ljspeech/wavs/LJ037-0264.wav|tests/data/ljspeech/wavs/LJ037-0264.npy -tests/data/ljspeech/wavs/LJ045-0225.wav|tests/data/ljspeech/wavs/LJ045-0225.npy -tests/data/ljspeech/wavs/LJ035-0171.wav|tests/data/ljspeech/wavs/LJ035-0171.npy -tests/data/ljspeech/wavs/LJ025-0083.wav|tests/data/ljspeech/wavs/LJ025-0083.npy -tests/data/ljspeech/wavs/LJ016-0323.wav|tests/data/ljspeech/wavs/LJ016-0323.npy -tests/data/ljspeech/wavs/LJ020-0075.wav|tests/data/ljspeech/wavs/LJ020-0075.npy -tests/data/ljspeech/wavs/LJ021-0047.wav|tests/data/ljspeech/wavs/LJ021-0047.npy -tests/data/ljspeech/wavs/LJ001-0051.wav|tests/data/ljspeech/wavs/LJ001-0051.npy -tests/data/ljspeech/wavs/LJ030-0218.wav|tests/data/ljspeech/wavs/LJ030-0218.npy -tests/data/ljspeech/wavs/LJ037-0027.wav|tests/data/ljspeech/wavs/LJ037-0027.npy -tests/data/ljspeech/wavs/LJ015-0101.wav|tests/data/ljspeech/wavs/LJ015-0101.npy -tests/data/ljspeech/wavs/LJ016-0376.wav|tests/data/ljspeech/wavs/LJ016-0376.npy -tests/data/ljspeech/wavs/LJ002-0090.wav|tests/data/ljspeech/wavs/LJ002-0090.npy -tests/data/ljspeech/wavs/LJ037-0210.wav|tests/data/ljspeech/wavs/LJ037-0210.npy -tests/data/ljspeech/wavs/LJ021-0037.wav|tests/data/ljspeech/wavs/LJ021-0037.npy -tests/data/ljspeech/wavs/LJ015-0271.wav|tests/data/ljspeech/wavs/LJ015-0271.npy -tests/data/ljspeech/wavs/LJ016-0280.wav|tests/data/ljspeech/wavs/LJ016-0280.npy -tests/data/ljspeech/wavs/LJ015-0029.wav|tests/data/ljspeech/wavs/LJ015-0029.npy -tests/data/ljspeech/wavs/LJ034-0061.wav|tests/data/ljspeech/wavs/LJ034-0061.npy -tests/data/ljspeech/wavs/LJ006-0108.wav|tests/data/ljspeech/wavs/LJ006-0108.npy -tests/data/ljspeech/wavs/LJ017-0256.wav|tests/data/ljspeech/wavs/LJ017-0256.npy -tests/data/ljspeech/wavs/LJ050-0225.wav|tests/data/ljspeech/wavs/LJ050-0225.npy -tests/data/ljspeech/wavs/LJ002-0094.wav|tests/data/ljspeech/wavs/LJ002-0094.npy -tests/data/ljspeech/wavs/LJ003-0030.wav|tests/data/ljspeech/wavs/LJ003-0030.npy -tests/data/ljspeech/wavs/LJ048-0284.wav|tests/data/ljspeech/wavs/LJ048-0284.npy -tests/data/ljspeech/wavs/LJ018-0048.wav|tests/data/ljspeech/wavs/LJ018-0048.npy -tests/data/ljspeech/wavs/LJ016-0032.wav|tests/data/ljspeech/wavs/LJ016-0032.npy -tests/data/ljspeech/wavs/LJ032-0201.wav|tests/data/ljspeech/wavs/LJ032-0201.npy -tests/data/ljspeech/wavs/LJ027-0068.wav|tests/data/ljspeech/wavs/LJ027-0068.npy -tests/data/ljspeech/wavs/LJ016-0195.wav|tests/data/ljspeech/wavs/LJ016-0195.npy -tests/data/ljspeech/wavs/LJ017-0034.wav|tests/data/ljspeech/wavs/LJ017-0034.npy -tests/data/ljspeech/wavs/LJ046-0221.wav|tests/data/ljspeech/wavs/LJ046-0221.npy -tests/data/ljspeech/wavs/LJ002-0203.wav|tests/data/ljspeech/wavs/LJ002-0203.npy -tests/data/ljspeech/wavs/LJ022-0087.wav|tests/data/ljspeech/wavs/LJ022-0087.npy -tests/data/ljspeech/wavs/LJ006-0164.wav|tests/data/ljspeech/wavs/LJ006-0164.npy -tests/data/ljspeech/wavs/LJ015-0062.wav|tests/data/ljspeech/wavs/LJ015-0062.npy -tests/data/ljspeech/wavs/LJ003-0139.wav|tests/data/ljspeech/wavs/LJ003-0139.npy -tests/data/ljspeech/wavs/LJ046-0007.wav|tests/data/ljspeech/wavs/LJ046-0007.npy -tests/data/ljspeech/wavs/LJ018-0101.wav|tests/data/ljspeech/wavs/LJ018-0101.npy -tests/data/ljspeech/wavs/LJ021-0083.wav|tests/data/ljspeech/wavs/LJ021-0083.npy -tests/data/ljspeech/wavs/LJ017-0142.wav|tests/data/ljspeech/wavs/LJ017-0142.npy -tests/data/ljspeech/wavs/LJ038-0110.wav|tests/data/ljspeech/wavs/LJ038-0110.npy -tests/data/ljspeech/wavs/LJ022-0151.wav|tests/data/ljspeech/wavs/LJ022-0151.npy -tests/data/ljspeech/wavs/LJ003-0264.wav|tests/data/ljspeech/wavs/LJ003-0264.npy -tests/data/ljspeech/wavs/LJ035-0118.wav|tests/data/ljspeech/wavs/LJ035-0118.npy -tests/data/ljspeech/wavs/LJ030-0141.wav|tests/data/ljspeech/wavs/LJ030-0141.npy -tests/data/ljspeech/wavs/LJ022-0033.wav|tests/data/ljspeech/wavs/LJ022-0033.npy -tests/data/ljspeech/wavs/LJ034-0102.wav|tests/data/ljspeech/wavs/LJ034-0102.npy -tests/data/ljspeech/wavs/LJ036-0103.wav|tests/data/ljspeech/wavs/LJ036-0103.npy -tests/data/ljspeech/wavs/LJ012-0139.wav|tests/data/ljspeech/wavs/LJ012-0139.npy -tests/data/ljspeech/wavs/LJ009-0249.wav|tests/data/ljspeech/wavs/LJ009-0249.npy -tests/data/ljspeech/wavs/LJ012-0097.wav|tests/data/ljspeech/wavs/LJ012-0097.npy -tests/data/ljspeech/wavs/LJ040-0173.wav|tests/data/ljspeech/wavs/LJ040-0173.npy -tests/data/ljspeech/wavs/LJ029-0031.wav|tests/data/ljspeech/wavs/LJ029-0031.npy -tests/data/ljspeech/wavs/LJ031-0155.wav|tests/data/ljspeech/wavs/LJ031-0155.npy -tests/data/ljspeech/wavs/LJ044-0239.wav|tests/data/ljspeech/wavs/LJ044-0239.npy -tests/data/ljspeech/wavs/LJ029-0196.wav|tests/data/ljspeech/wavs/LJ029-0196.npy -tests/data/ljspeech/wavs/LJ050-0049.wav|tests/data/ljspeech/wavs/LJ050-0049.npy -tests/data/ljspeech/wavs/LJ004-0199.wav|tests/data/ljspeech/wavs/LJ004-0199.npy -tests/data/ljspeech/wavs/LJ009-0003.wav|tests/data/ljspeech/wavs/LJ009-0003.npy -tests/data/ljspeech/wavs/LJ028-0272.wav|tests/data/ljspeech/wavs/LJ028-0272.npy -tests/data/ljspeech/wavs/LJ034-0025.wav|tests/data/ljspeech/wavs/LJ034-0025.npy -tests/data/ljspeech/wavs/LJ042-0168.wav|tests/data/ljspeech/wavs/LJ042-0168.npy -tests/data/ljspeech/wavs/LJ014-0093.wav|tests/data/ljspeech/wavs/LJ014-0093.npy -tests/data/ljspeech/wavs/LJ028-0373.wav|tests/data/ljspeech/wavs/LJ028-0373.npy -tests/data/ljspeech/wavs/LJ005-0087.wav|tests/data/ljspeech/wavs/LJ005-0087.npy -tests/data/ljspeech/wavs/LJ012-0015.wav|tests/data/ljspeech/wavs/LJ012-0015.npy -tests/data/ljspeech/wavs/LJ001-0069.wav|tests/data/ljspeech/wavs/LJ001-0069.npy -tests/data/ljspeech/wavs/LJ048-0064.wav|tests/data/ljspeech/wavs/LJ048-0064.npy -tests/data/ljspeech/wavs/LJ012-0171.wav|tests/data/ljspeech/wavs/LJ012-0171.npy -tests/data/ljspeech/wavs/LJ009-0250.wav|tests/data/ljspeech/wavs/LJ009-0250.npy -tests/data/ljspeech/wavs/LJ013-0212.wav|tests/data/ljspeech/wavs/LJ013-0212.npy -tests/data/ljspeech/wavs/LJ011-0052.wav|tests/data/ljspeech/wavs/LJ011-0052.npy -tests/data/ljspeech/wavs/LJ042-0191.wav|tests/data/ljspeech/wavs/LJ042-0191.npy -tests/data/ljspeech/wavs/LJ004-0211.wav|tests/data/ljspeech/wavs/LJ004-0211.npy -tests/data/ljspeech/wavs/LJ028-0439.wav|tests/data/ljspeech/wavs/LJ028-0439.npy -tests/data/ljspeech/wavs/LJ002-0290.wav|tests/data/ljspeech/wavs/LJ002-0290.npy -tests/data/ljspeech/wavs/LJ006-0285.wav|tests/data/ljspeech/wavs/LJ006-0285.npy -tests/data/ljspeech/wavs/LJ011-0225.wav|tests/data/ljspeech/wavs/LJ011-0225.npy -tests/data/ljspeech/wavs/LJ008-0035.wav|tests/data/ljspeech/wavs/LJ008-0035.npy -tests/data/ljspeech/wavs/LJ038-0259.wav|tests/data/ljspeech/wavs/LJ038-0259.npy -tests/data/ljspeech/wavs/LJ039-0192.wav|tests/data/ljspeech/wavs/LJ039-0192.npy -tests/data/ljspeech/wavs/LJ009-0284.wav|tests/data/ljspeech/wavs/LJ009-0284.npy -tests/data/ljspeech/wavs/LJ004-0249.wav|tests/data/ljspeech/wavs/LJ004-0249.npy -tests/data/ljspeech/wavs/LJ025-0113.wav|tests/data/ljspeech/wavs/LJ025-0113.npy -tests/data/ljspeech/wavs/LJ044-0061.wav|tests/data/ljspeech/wavs/LJ044-0061.npy -tests/data/ljspeech/wavs/LJ046-0085.wav|tests/data/ljspeech/wavs/LJ046-0085.npy -tests/data/ljspeech/wavs/LJ023-0083.wav|tests/data/ljspeech/wavs/LJ023-0083.npy -tests/data/ljspeech/wavs/LJ038-0041.wav|tests/data/ljspeech/wavs/LJ038-0041.npy -tests/data/ljspeech/wavs/LJ009-0077.wav|tests/data/ljspeech/wavs/LJ009-0077.npy -tests/data/ljspeech/wavs/LJ003-0127.wav|tests/data/ljspeech/wavs/LJ003-0127.npy -tests/data/ljspeech/wavs/LJ042-0145.wav|tests/data/ljspeech/wavs/LJ042-0145.npy -tests/data/ljspeech/wavs/LJ046-0091.wav|tests/data/ljspeech/wavs/LJ046-0091.npy -tests/data/ljspeech/wavs/LJ009-0288.wav|tests/data/ljspeech/wavs/LJ009-0288.npy -tests/data/ljspeech/wavs/LJ040-0098.wav|tests/data/ljspeech/wavs/LJ040-0098.npy -tests/data/ljspeech/wavs/LJ026-0041.wav|tests/data/ljspeech/wavs/LJ026-0041.npy -tests/data/ljspeech/wavs/LJ048-0180.wav|tests/data/ljspeech/wavs/LJ048-0180.npy -tests/data/ljspeech/wavs/LJ030-0232.wav|tests/data/ljspeech/wavs/LJ030-0232.npy -tests/data/ljspeech/wavs/LJ038-0044.wav|tests/data/ljspeech/wavs/LJ038-0044.npy -tests/data/ljspeech/wavs/LJ026-0031.wav|tests/data/ljspeech/wavs/LJ026-0031.npy -tests/data/ljspeech/wavs/LJ028-0074.wav|tests/data/ljspeech/wavs/LJ028-0074.npy -tests/data/ljspeech/wavs/LJ041-0104.wav|tests/data/ljspeech/wavs/LJ041-0104.npy -tests/data/ljspeech/wavs/LJ028-0246.wav|tests/data/ljspeech/wavs/LJ028-0246.npy -tests/data/ljspeech/wavs/LJ004-0219.wav|tests/data/ljspeech/wavs/LJ004-0219.npy -tests/data/ljspeech/wavs/LJ015-0174.wav|tests/data/ljspeech/wavs/LJ015-0174.npy -tests/data/ljspeech/wavs/LJ002-0117.wav|tests/data/ljspeech/wavs/LJ002-0117.npy -tests/data/ljspeech/wavs/LJ008-0246.wav|tests/data/ljspeech/wavs/LJ008-0246.npy -tests/data/ljspeech/wavs/LJ025-0033.wav|tests/data/ljspeech/wavs/LJ025-0033.npy -tests/data/ljspeech/wavs/LJ003-0327.wav|tests/data/ljspeech/wavs/LJ003-0327.npy -tests/data/ljspeech/wavs/LJ015-0099.wav|tests/data/ljspeech/wavs/LJ015-0099.npy -tests/data/ljspeech/wavs/LJ029-0041.wav|tests/data/ljspeech/wavs/LJ029-0041.npy -tests/data/ljspeech/wavs/LJ028-0031.wav|tests/data/ljspeech/wavs/LJ028-0031.npy -tests/data/ljspeech/wavs/LJ015-0175.wav|tests/data/ljspeech/wavs/LJ015-0175.npy -tests/data/ljspeech/wavs/LJ042-0071.wav|tests/data/ljspeech/wavs/LJ042-0071.npy -tests/data/ljspeech/wavs/LJ044-0036.wav|tests/data/ljspeech/wavs/LJ044-0036.npy -tests/data/ljspeech/wavs/LJ024-0058.wav|tests/data/ljspeech/wavs/LJ024-0058.npy -tests/data/ljspeech/wavs/LJ038-0192.wav|tests/data/ljspeech/wavs/LJ038-0192.npy -tests/data/ljspeech/wavs/LJ014-0244.wav|tests/data/ljspeech/wavs/LJ014-0244.npy -tests/data/ljspeech/wavs/LJ038-0055.wav|tests/data/ljspeech/wavs/LJ038-0055.npy -tests/data/ljspeech/wavs/LJ030-0022.wav|tests/data/ljspeech/wavs/LJ030-0022.npy -tests/data/ljspeech/wavs/LJ028-0215.wav|tests/data/ljspeech/wavs/LJ028-0215.npy -tests/data/ljspeech/wavs/LJ028-0077.wav|tests/data/ljspeech/wavs/LJ028-0077.npy -tests/data/ljspeech/wavs/LJ028-0460.wav|tests/data/ljspeech/wavs/LJ028-0460.npy -tests/data/ljspeech/wavs/LJ012-0042.wav|tests/data/ljspeech/wavs/LJ012-0042.npy -tests/data/ljspeech/wavs/LJ001-0035.wav|tests/data/ljspeech/wavs/LJ001-0035.npy -tests/data/ljspeech/wavs/LJ021-0040.wav|tests/data/ljspeech/wavs/LJ021-0040.npy -tests/data/ljspeech/wavs/LJ034-0083.wav|tests/data/ljspeech/wavs/LJ034-0083.npy -tests/data/ljspeech/wavs/LJ037-0215.wav|tests/data/ljspeech/wavs/LJ037-0215.npy -tests/data/ljspeech/wavs/LJ014-0216.wav|tests/data/ljspeech/wavs/LJ014-0216.npy -tests/data/ljspeech/wavs/LJ014-0116.wav|tests/data/ljspeech/wavs/LJ014-0116.npy -tests/data/ljspeech/wavs/LJ038-0145.wav|tests/data/ljspeech/wavs/LJ038-0145.npy -tests/data/ljspeech/wavs/LJ028-0125.wav|tests/data/ljspeech/wavs/LJ028-0125.npy -tests/data/ljspeech/wavs/LJ008-0107.wav|tests/data/ljspeech/wavs/LJ008-0107.npy -tests/data/ljspeech/wavs/LJ003-0191.wav|tests/data/ljspeech/wavs/LJ003-0191.npy -tests/data/ljspeech/wavs/LJ012-0177.wav|tests/data/ljspeech/wavs/LJ012-0177.npy -tests/data/ljspeech/wavs/LJ033-0189.wav|tests/data/ljspeech/wavs/LJ033-0189.npy -tests/data/ljspeech/wavs/LJ012-0210.wav|tests/data/ljspeech/wavs/LJ012-0210.npy -tests/data/ljspeech/wavs/LJ022-0106.wav|tests/data/ljspeech/wavs/LJ022-0106.npy -tests/data/ljspeech/wavs/LJ021-0058.wav|tests/data/ljspeech/wavs/LJ021-0058.npy -tests/data/ljspeech/wavs/LJ006-0102.wav|tests/data/ljspeech/wavs/LJ006-0102.npy -tests/data/ljspeech/wavs/LJ033-0032.wav|tests/data/ljspeech/wavs/LJ033-0032.npy -tests/data/ljspeech/wavs/LJ002-0200.wav|tests/data/ljspeech/wavs/LJ002-0200.npy -tests/data/ljspeech/wavs/LJ033-0185.wav|tests/data/ljspeech/wavs/LJ033-0185.npy -tests/data/ljspeech/wavs/LJ036-0057.wav|tests/data/ljspeech/wavs/LJ036-0057.npy -tests/data/ljspeech/wavs/LJ035-0066.wav|tests/data/ljspeech/wavs/LJ035-0066.npy -tests/data/ljspeech/wavs/LJ028-0257.wav|tests/data/ljspeech/wavs/LJ028-0257.npy -tests/data/ljspeech/wavs/LJ040-0064.wav|tests/data/ljspeech/wavs/LJ040-0064.npy -tests/data/ljspeech/wavs/LJ032-0052.wav|tests/data/ljspeech/wavs/LJ032-0052.npy -tests/data/ljspeech/wavs/LJ047-0036.wav|tests/data/ljspeech/wavs/LJ047-0036.npy -tests/data/ljspeech/wavs/LJ032-0059.wav|tests/data/ljspeech/wavs/LJ032-0059.npy -tests/data/ljspeech/wavs/LJ006-0179.wav|tests/data/ljspeech/wavs/LJ006-0179.npy -tests/data/ljspeech/wavs/LJ034-0063.wav|tests/data/ljspeech/wavs/LJ034-0063.npy -tests/data/ljspeech/wavs/LJ010-0252.wav|tests/data/ljspeech/wavs/LJ010-0252.npy -tests/data/ljspeech/wavs/LJ040-0076.wav|tests/data/ljspeech/wavs/LJ040-0076.npy -tests/data/ljspeech/wavs/LJ004-0039.wav|tests/data/ljspeech/wavs/LJ004-0039.npy -tests/data/ljspeech/wavs/LJ047-0049.wav|tests/data/ljspeech/wavs/LJ047-0049.npy -tests/data/ljspeech/wavs/LJ018-0132.wav|tests/data/ljspeech/wavs/LJ018-0132.npy -tests/data/ljspeech/wavs/LJ017-0182.wav|tests/data/ljspeech/wavs/LJ017-0182.npy -tests/data/ljspeech/wavs/LJ016-0368.wav|tests/data/ljspeech/wavs/LJ016-0368.npy -tests/data/ljspeech/wavs/LJ017-0185.wav|tests/data/ljspeech/wavs/LJ017-0185.npy -tests/data/ljspeech/wavs/LJ017-0227.wav|tests/data/ljspeech/wavs/LJ017-0227.npy -tests/data/ljspeech/wavs/LJ030-0170.wav|tests/data/ljspeech/wavs/LJ030-0170.npy -tests/data/ljspeech/wavs/LJ001-0177.wav|tests/data/ljspeech/wavs/LJ001-0177.npy -tests/data/ljspeech/wavs/LJ040-0105.wav|tests/data/ljspeech/wavs/LJ040-0105.npy -tests/data/ljspeech/wavs/LJ002-0286.wav|tests/data/ljspeech/wavs/LJ002-0286.npy -tests/data/ljspeech/wavs/LJ008-0241.wav|tests/data/ljspeech/wavs/LJ008-0241.npy -tests/data/ljspeech/wavs/LJ017-0086.wav|tests/data/ljspeech/wavs/LJ017-0086.npy -tests/data/ljspeech/wavs/LJ031-0097.wav|tests/data/ljspeech/wavs/LJ031-0097.npy -tests/data/ljspeech/wavs/LJ028-0346.wav|tests/data/ljspeech/wavs/LJ028-0346.npy -tests/data/ljspeech/wavs/LJ017-0255.wav|tests/data/ljspeech/wavs/LJ017-0255.npy -tests/data/ljspeech/wavs/LJ002-0273.wav|tests/data/ljspeech/wavs/LJ002-0273.npy -tests/data/ljspeech/wavs/LJ019-0017.wav|tests/data/ljspeech/wavs/LJ019-0017.npy -tests/data/ljspeech/wavs/LJ032-0232.wav|tests/data/ljspeech/wavs/LJ032-0232.npy -tests/data/ljspeech/wavs/LJ022-0076.wav|tests/data/ljspeech/wavs/LJ022-0076.npy -tests/data/ljspeech/wavs/LJ018-0053.wav|tests/data/ljspeech/wavs/LJ018-0053.npy -tests/data/ljspeech/wavs/LJ029-0006.wav|tests/data/ljspeech/wavs/LJ029-0006.npy -tests/data/ljspeech/wavs/LJ018-0010.wav|tests/data/ljspeech/wavs/LJ018-0010.npy -tests/data/ljspeech/wavs/LJ016-0182.wav|tests/data/ljspeech/wavs/LJ016-0182.npy -tests/data/ljspeech/wavs/LJ016-0095.wav|tests/data/ljspeech/wavs/LJ016-0095.npy -tests/data/ljspeech/wavs/LJ042-0201.wav|tests/data/ljspeech/wavs/LJ042-0201.npy -tests/data/ljspeech/wavs/LJ002-0232.wav|tests/data/ljspeech/wavs/LJ002-0232.npy -tests/data/ljspeech/wavs/LJ048-0217.wav|tests/data/ljspeech/wavs/LJ048-0217.npy -tests/data/ljspeech/wavs/LJ016-0140.wav|tests/data/ljspeech/wavs/LJ016-0140.npy -tests/data/ljspeech/wavs/LJ011-0229.wav|tests/data/ljspeech/wavs/LJ011-0229.npy -tests/data/ljspeech/wavs/LJ002-0172.wav|tests/data/ljspeech/wavs/LJ002-0172.npy -tests/data/ljspeech/wavs/LJ025-0097.wav|tests/data/ljspeech/wavs/LJ025-0097.npy -tests/data/ljspeech/wavs/LJ020-0056.wav|tests/data/ljspeech/wavs/LJ020-0056.npy -tests/data/ljspeech/wavs/LJ029-0032.wav|tests/data/ljspeech/wavs/LJ029-0032.npy -tests/data/ljspeech/wavs/LJ027-0100.wav|tests/data/ljspeech/wavs/LJ027-0100.npy -tests/data/ljspeech/wavs/LJ018-0321.wav|tests/data/ljspeech/wavs/LJ018-0321.npy -tests/data/ljspeech/wavs/LJ022-0196.wav|tests/data/ljspeech/wavs/LJ022-0196.npy -tests/data/ljspeech/wavs/LJ016-0098.wav|tests/data/ljspeech/wavs/LJ016-0098.npy -tests/data/ljspeech/wavs/LJ010-0108.wav|tests/data/ljspeech/wavs/LJ010-0108.npy -tests/data/ljspeech/wavs/LJ044-0039.wav|tests/data/ljspeech/wavs/LJ044-0039.npy -tests/data/ljspeech/wavs/LJ013-0129.wav|tests/data/ljspeech/wavs/LJ013-0129.npy -tests/data/ljspeech/wavs/LJ016-0317.wav|tests/data/ljspeech/wavs/LJ016-0317.npy -tests/data/ljspeech/wavs/LJ002-0050.wav|tests/data/ljspeech/wavs/LJ002-0050.npy -tests/data/ljspeech/wavs/LJ008-0190.wav|tests/data/ljspeech/wavs/LJ008-0190.npy -tests/data/ljspeech/wavs/LJ002-0173.wav|tests/data/ljspeech/wavs/LJ002-0173.npy -tests/data/ljspeech/wavs/LJ050-0201.wav|tests/data/ljspeech/wavs/LJ050-0201.npy -tests/data/ljspeech/wavs/LJ002-0038.wav|tests/data/ljspeech/wavs/LJ002-0038.npy -tests/data/ljspeech/wavs/LJ020-0012.wav|tests/data/ljspeech/wavs/LJ020-0012.npy -tests/data/ljspeech/wavs/LJ013-0079.wav|tests/data/ljspeech/wavs/LJ013-0079.npy -tests/data/ljspeech/wavs/LJ002-0336.wav|tests/data/ljspeech/wavs/LJ002-0336.npy -tests/data/ljspeech/wavs/LJ018-0193.wav|tests/data/ljspeech/wavs/LJ018-0193.npy -tests/data/ljspeech/wavs/LJ049-0077.wav|tests/data/ljspeech/wavs/LJ049-0077.npy -tests/data/ljspeech/wavs/LJ028-0374.wav|tests/data/ljspeech/wavs/LJ028-0374.npy -tests/data/ljspeech/wavs/LJ002-0143.wav|tests/data/ljspeech/wavs/LJ002-0143.npy -tests/data/ljspeech/wavs/LJ028-0378.wav|tests/data/ljspeech/wavs/LJ028-0378.npy -tests/data/ljspeech/wavs/LJ044-0016.wav|tests/data/ljspeech/wavs/LJ044-0016.npy -tests/data/ljspeech/wavs/LJ038-0260.wav|tests/data/ljspeech/wavs/LJ038-0260.npy -tests/data/ljspeech/wavs/LJ028-0180.wav|tests/data/ljspeech/wavs/LJ028-0180.npy -tests/data/ljspeech/wavs/LJ029-0021.wav|tests/data/ljspeech/wavs/LJ029-0021.npy -tests/data/ljspeech/wavs/LJ011-0228.wav|tests/data/ljspeech/wavs/LJ011-0228.npy -tests/data/ljspeech/wavs/LJ026-0096.wav|tests/data/ljspeech/wavs/LJ026-0096.npy -tests/data/ljspeech/wavs/LJ003-0039.wav|tests/data/ljspeech/wavs/LJ003-0039.npy -tests/data/ljspeech/wavs/LJ014-0317.wav|tests/data/ljspeech/wavs/LJ014-0317.npy -tests/data/ljspeech/wavs/LJ010-0217.wav|tests/data/ljspeech/wavs/LJ010-0217.npy -tests/data/ljspeech/wavs/LJ023-0128.wav|tests/data/ljspeech/wavs/LJ023-0128.npy -tests/data/ljspeech/wavs/LJ026-0136.wav|tests/data/ljspeech/wavs/LJ026-0136.npy -tests/data/ljspeech/wavs/LJ049-0167.wav|tests/data/ljspeech/wavs/LJ049-0167.npy -tests/data/ljspeech/wavs/LJ027-0141.wav|tests/data/ljspeech/wavs/LJ027-0141.npy -tests/data/ljspeech/wavs/LJ002-0187.wav|tests/data/ljspeech/wavs/LJ002-0187.npy -tests/data/ljspeech/wavs/LJ012-0191.wav|tests/data/ljspeech/wavs/LJ012-0191.npy -tests/data/ljspeech/wavs/LJ013-0158.wav|tests/data/ljspeech/wavs/LJ013-0158.npy -tests/data/ljspeech/wavs/LJ032-0128.wav|tests/data/ljspeech/wavs/LJ032-0128.npy -tests/data/ljspeech/wavs/LJ001-0052.wav|tests/data/ljspeech/wavs/LJ001-0052.npy -tests/data/ljspeech/wavs/LJ012-0253.wav|tests/data/ljspeech/wavs/LJ012-0253.npy -tests/data/ljspeech/wavs/LJ026-0137.wav|tests/data/ljspeech/wavs/LJ026-0137.npy -tests/data/ljspeech/wavs/LJ013-0033.wav|tests/data/ljspeech/wavs/LJ013-0033.npy -tests/data/ljspeech/wavs/LJ036-0106.wav|tests/data/ljspeech/wavs/LJ036-0106.npy -tests/data/ljspeech/wavs/LJ026-0097.wav|tests/data/ljspeech/wavs/LJ026-0097.npy -tests/data/ljspeech/wavs/LJ034-0185.wav|tests/data/ljspeech/wavs/LJ034-0185.npy -tests/data/ljspeech/wavs/LJ013-0191.wav|tests/data/ljspeech/wavs/LJ013-0191.npy -tests/data/ljspeech/wavs/LJ028-0441.wav|tests/data/ljspeech/wavs/LJ028-0441.npy -tests/data/ljspeech/wavs/LJ033-0199.wav|tests/data/ljspeech/wavs/LJ033-0199.npy -tests/data/ljspeech/wavs/LJ044-0001.wav|tests/data/ljspeech/wavs/LJ044-0001.npy -tests/data/ljspeech/wavs/LJ043-0001.wav|tests/data/ljspeech/wavs/LJ043-0001.npy -tests/data/ljspeech/wavs/LJ042-0001.wav|tests/data/ljspeech/wavs/LJ042-0001.npy -tests/data/ljspeech/wavs/LJ034-0001.wav|tests/data/ljspeech/wavs/LJ034-0001.npy -tests/data/ljspeech/wavs/LJ013-0163.wav|tests/data/ljspeech/wavs/LJ013-0163.npy -tests/data/ljspeech/wavs/LJ016-0330.wav|tests/data/ljspeech/wavs/LJ016-0330.npy -tests/data/ljspeech/wavs/LJ036-0178.wav|tests/data/ljspeech/wavs/LJ036-0178.npy -tests/data/ljspeech/wavs/LJ039-0102.wav|tests/data/ljspeech/wavs/LJ039-0102.npy -tests/data/ljspeech/wavs/LJ036-0180.wav|tests/data/ljspeech/wavs/LJ036-0180.npy -tests/data/ljspeech/wavs/LJ001-0122.wav|tests/data/ljspeech/wavs/LJ001-0122.npy -tests/data/ljspeech/wavs/LJ003-0177.wav|tests/data/ljspeech/wavs/LJ003-0177.npy -tests/data/ljspeech/wavs/LJ002-0100.wav|tests/data/ljspeech/wavs/LJ002-0100.npy -tests/data/ljspeech/wavs/LJ003-0122.wav|tests/data/ljspeech/wavs/LJ003-0122.npy -tests/data/ljspeech/wavs/LJ040-0217.wav|tests/data/ljspeech/wavs/LJ040-0217.npy -tests/data/ljspeech/wavs/LJ024-0129.wav|tests/data/ljspeech/wavs/LJ024-0129.npy -tests/data/ljspeech/wavs/LJ011-0207.wav|tests/data/ljspeech/wavs/LJ011-0207.npy -tests/data/ljspeech/wavs/LJ011-0165.wav|tests/data/ljspeech/wavs/LJ011-0165.npy -tests/data/ljspeech/wavs/LJ015-0176.wav|tests/data/ljspeech/wavs/LJ015-0176.npy -tests/data/ljspeech/wavs/LJ008-0018.wav|tests/data/ljspeech/wavs/LJ008-0018.npy -tests/data/ljspeech/wavs/LJ044-0166.wav|tests/data/ljspeech/wavs/LJ044-0166.npy -tests/data/ljspeech/wavs/LJ007-0141.wav|tests/data/ljspeech/wavs/LJ007-0141.npy -tests/data/ljspeech/wavs/LJ006-0005.wav|tests/data/ljspeech/wavs/LJ006-0005.npy -tests/data/ljspeech/wavs/LJ011-0086.wav|tests/data/ljspeech/wavs/LJ011-0086.npy -tests/data/ljspeech/wavs/LJ037-0043.wav|tests/data/ljspeech/wavs/LJ037-0043.npy -tests/data/ljspeech/wavs/LJ014-0148.wav|tests/data/ljspeech/wavs/LJ014-0148.npy -tests/data/ljspeech/wavs/LJ017-0261.wav|tests/data/ljspeech/wavs/LJ017-0261.npy -tests/data/ljspeech/wavs/LJ009-0115.wav|tests/data/ljspeech/wavs/LJ009-0115.npy -tests/data/ljspeech/wavs/LJ038-0105.wav|tests/data/ljspeech/wavs/LJ038-0105.npy -tests/data/ljspeech/wavs/LJ009-0162.wav|tests/data/ljspeech/wavs/LJ009-0162.npy -tests/data/ljspeech/wavs/LJ008-0096.wav|tests/data/ljspeech/wavs/LJ008-0096.npy -tests/data/ljspeech/wavs/LJ030-0172.wav|tests/data/ljspeech/wavs/LJ030-0172.npy -tests/data/ljspeech/wavs/LJ013-0018.wav|tests/data/ljspeech/wavs/LJ013-0018.npy -tests/data/ljspeech/wavs/LJ012-0245.wav|tests/data/ljspeech/wavs/LJ012-0245.npy -tests/data/ljspeech/wavs/LJ001-0016.wav|tests/data/ljspeech/wavs/LJ001-0016.npy -tests/data/ljspeech/wavs/LJ008-0099.wav|tests/data/ljspeech/wavs/LJ008-0099.npy -tests/data/ljspeech/wavs/LJ031-0001.wav|tests/data/ljspeech/wavs/LJ031-0001.npy -tests/data/ljspeech/wavs/LJ016-0284.wav|tests/data/ljspeech/wavs/LJ016-0284.npy -tests/data/ljspeech/wavs/LJ016-0242.wav|tests/data/ljspeech/wavs/LJ016-0242.npy -tests/data/ljspeech/wavs/LJ033-0176.wav|tests/data/ljspeech/wavs/LJ033-0176.npy -tests/data/ljspeech/wavs/LJ018-0165.wav|tests/data/ljspeech/wavs/LJ018-0165.npy -tests/data/ljspeech/wavs/LJ029-0183.wav|tests/data/ljspeech/wavs/LJ029-0183.npy -tests/data/ljspeech/wavs/LJ046-0185.wav|tests/data/ljspeech/wavs/LJ046-0185.npy -tests/data/ljspeech/wavs/LJ027-0165.wav|tests/data/ljspeech/wavs/LJ027-0165.npy -tests/data/ljspeech/wavs/LJ027-0001.wav|tests/data/ljspeech/wavs/LJ027-0001.npy -tests/data/ljspeech/wavs/LJ022-0101.wav|tests/data/ljspeech/wavs/LJ022-0101.npy -tests/data/ljspeech/wavs/LJ048-0191.wav|tests/data/ljspeech/wavs/LJ048-0191.npy -tests/data/ljspeech/wavs/LJ029-0092.wav|tests/data/ljspeech/wavs/LJ029-0092.npy -tests/data/ljspeech/wavs/LJ013-0169.wav|tests/data/ljspeech/wavs/LJ013-0169.npy -tests/data/ljspeech/wavs/LJ018-0088.wav|tests/data/ljspeech/wavs/LJ018-0088.npy -tests/data/ljspeech/wavs/LJ022-0117.wav|tests/data/ljspeech/wavs/LJ022-0117.npy -tests/data/ljspeech/wavs/LJ036-0204.wav|tests/data/ljspeech/wavs/LJ036-0204.npy -tests/data/ljspeech/wavs/LJ017-0065.wav|tests/data/ljspeech/wavs/LJ017-0065.npy -tests/data/ljspeech/wavs/LJ045-0076.wav|tests/data/ljspeech/wavs/LJ045-0076.npy -tests/data/ljspeech/wavs/LJ019-0295.wav|tests/data/ljspeech/wavs/LJ019-0295.npy -tests/data/ljspeech/wavs/LJ044-0089.wav|tests/data/ljspeech/wavs/LJ044-0089.npy -tests/data/ljspeech/wavs/LJ016-0060.wav|tests/data/ljspeech/wavs/LJ016-0060.npy -tests/data/ljspeech/wavs/LJ019-0257.wav|tests/data/ljspeech/wavs/LJ019-0257.npy -tests/data/ljspeech/wavs/LJ035-0180.wav|tests/data/ljspeech/wavs/LJ035-0180.npy -tests/data/ljspeech/wavs/LJ043-0037.wav|tests/data/ljspeech/wavs/LJ043-0037.npy -tests/data/ljspeech/wavs/LJ019-0261.wav|tests/data/ljspeech/wavs/LJ019-0261.npy -tests/data/ljspeech/wavs/LJ004-0095.wav|tests/data/ljspeech/wavs/LJ004-0095.npy -tests/data/ljspeech/wavs/LJ036-0070.wav|tests/data/ljspeech/wavs/LJ036-0070.npy -tests/data/ljspeech/wavs/LJ010-0210.wav|tests/data/ljspeech/wavs/LJ010-0210.npy -tests/data/ljspeech/wavs/LJ028-0280.wav|tests/data/ljspeech/wavs/LJ028-0280.npy -tests/data/ljspeech/wavs/LJ003-0065.wav|tests/data/ljspeech/wavs/LJ003-0065.npy -tests/data/ljspeech/wavs/LJ028-0202.wav|tests/data/ljspeech/wavs/LJ028-0202.npy -tests/data/ljspeech/wavs/LJ049-0001.wav|tests/data/ljspeech/wavs/LJ049-0001.npy -tests/data/ljspeech/wavs/LJ027-0172.wav|tests/data/ljspeech/wavs/LJ027-0172.npy -tests/data/ljspeech/wavs/LJ024-0133.wav|tests/data/ljspeech/wavs/LJ024-0133.npy -tests/data/ljspeech/wavs/LJ039-0193.wav|tests/data/ljspeech/wavs/LJ039-0193.npy -tests/data/ljspeech/wavs/LJ040-0239.wav|tests/data/ljspeech/wavs/LJ040-0239.npy -tests/data/ljspeech/wavs/LJ036-0047.wav|tests/data/ljspeech/wavs/LJ036-0047.npy -tests/data/ljspeech/wavs/LJ039-0044.wav|tests/data/ljspeech/wavs/LJ039-0044.npy -tests/data/ljspeech/wavs/LJ021-0068.wav|tests/data/ljspeech/wavs/LJ021-0068.npy -tests/data/ljspeech/wavs/LJ033-0203.wav|tests/data/ljspeech/wavs/LJ033-0203.npy -tests/data/ljspeech/wavs/LJ022-0195.wav|tests/data/ljspeech/wavs/LJ022-0195.npy -tests/data/ljspeech/wavs/LJ041-0024.wav|tests/data/ljspeech/wavs/LJ041-0024.npy -tests/data/ljspeech/wavs/LJ032-0130.wav|tests/data/ljspeech/wavs/LJ032-0130.npy -tests/data/ljspeech/wavs/LJ005-0112.wav|tests/data/ljspeech/wavs/LJ005-0112.npy -tests/data/ljspeech/wavs/LJ039-0120.wav|tests/data/ljspeech/wavs/LJ039-0120.npy -tests/data/ljspeech/wavs/LJ008-0157.wav|tests/data/ljspeech/wavs/LJ008-0157.npy -tests/data/ljspeech/wavs/LJ047-0185.wav|tests/data/ljspeech/wavs/LJ047-0185.npy -tests/data/ljspeech/wavs/LJ028-0029.wav|tests/data/ljspeech/wavs/LJ028-0029.npy -tests/data/ljspeech/wavs/LJ003-0131.wav|tests/data/ljspeech/wavs/LJ003-0131.npy -tests/data/ljspeech/wavs/LJ018-0021.wav|tests/data/ljspeech/wavs/LJ018-0021.npy -tests/data/ljspeech/wavs/LJ016-0431.wav|tests/data/ljspeech/wavs/LJ016-0431.npy -tests/data/ljspeech/wavs/LJ042-0228.wav|tests/data/ljspeech/wavs/LJ042-0228.npy -tests/data/ljspeech/wavs/LJ040-0135.wav|tests/data/ljspeech/wavs/LJ040-0135.npy -tests/data/ljspeech/wavs/LJ027-0007.wav|tests/data/ljspeech/wavs/LJ027-0007.npy -tests/data/ljspeech/wavs/LJ013-0220.wav|tests/data/ljspeech/wavs/LJ013-0220.npy -tests/data/ljspeech/wavs/LJ048-0190.wav|tests/data/ljspeech/wavs/LJ048-0190.npy -tests/data/ljspeech/wavs/LJ042-0193.wav|tests/data/ljspeech/wavs/LJ042-0193.npy -tests/data/ljspeech/wavs/LJ002-0244.wav|tests/data/ljspeech/wavs/LJ002-0244.npy -tests/data/ljspeech/wavs/LJ013-0014.wav|tests/data/ljspeech/wavs/LJ013-0014.npy -tests/data/ljspeech/wavs/LJ003-0240.wav|tests/data/ljspeech/wavs/LJ003-0240.npy -tests/data/ljspeech/wavs/LJ013-0235.wav|tests/data/ljspeech/wavs/LJ013-0235.npy -tests/data/ljspeech/wavs/LJ014-0025.wav|tests/data/ljspeech/wavs/LJ014-0025.npy -tests/data/ljspeech/wavs/LJ039-0002.wav|tests/data/ljspeech/wavs/LJ039-0002.npy -tests/data/ljspeech/wavs/LJ038-0001.wav|tests/data/ljspeech/wavs/LJ038-0001.npy -tests/data/ljspeech/wavs/LJ013-0162.wav|tests/data/ljspeech/wavs/LJ013-0162.npy -tests/data/ljspeech/wavs/LJ016-0434.wav|tests/data/ljspeech/wavs/LJ016-0434.npy -tests/data/ljspeech/wavs/LJ044-0070.wav|tests/data/ljspeech/wavs/LJ044-0070.npy -tests/data/ljspeech/wavs/LJ042-0163.wav|tests/data/ljspeech/wavs/LJ042-0163.npy -tests/data/ljspeech/wavs/LJ036-0045.wav|tests/data/ljspeech/wavs/LJ036-0045.npy -tests/data/ljspeech/wavs/LJ035-0063.wav|tests/data/ljspeech/wavs/LJ035-0063.npy -tests/data/ljspeech/wavs/LJ015-0194.wav|tests/data/ljspeech/wavs/LJ015-0194.npy -tests/data/ljspeech/wavs/LJ015-0071.wav|tests/data/ljspeech/wavs/LJ015-0071.npy -tests/data/ljspeech/wavs/LJ023-0108.wav|tests/data/ljspeech/wavs/LJ023-0108.npy -tests/data/ljspeech/wavs/LJ018-0330.wav|tests/data/ljspeech/wavs/LJ018-0330.npy -tests/data/ljspeech/wavs/LJ021-0162.wav|tests/data/ljspeech/wavs/LJ021-0162.npy -tests/data/ljspeech/wavs/LJ005-0267.wav|tests/data/ljspeech/wavs/LJ005-0267.npy -tests/data/ljspeech/wavs/LJ018-0232.wav|tests/data/ljspeech/wavs/LJ018-0232.npy -tests/data/ljspeech/wavs/LJ012-0213.wav|tests/data/ljspeech/wavs/LJ012-0213.npy -tests/data/ljspeech/wavs/LJ042-0107.wav|tests/data/ljspeech/wavs/LJ042-0107.npy -tests/data/ljspeech/wavs/LJ025-0018.wav|tests/data/ljspeech/wavs/LJ025-0018.npy -tests/data/ljspeech/wavs/LJ028-0499.wav|tests/data/ljspeech/wavs/LJ028-0499.npy -tests/data/ljspeech/wavs/LJ018-0160.wav|tests/data/ljspeech/wavs/LJ018-0160.npy -tests/data/ljspeech/wavs/LJ028-0040.wav|tests/data/ljspeech/wavs/LJ028-0040.npy -tests/data/ljspeech/wavs/LJ028-0486.wav|tests/data/ljspeech/wavs/LJ028-0486.npy -tests/data/ljspeech/wavs/LJ013-0190.wav|tests/data/ljspeech/wavs/LJ013-0190.npy -tests/data/ljspeech/wavs/LJ019-0083.wav|tests/data/ljspeech/wavs/LJ019-0083.npy -tests/data/ljspeech/wavs/LJ040-0190.wav|tests/data/ljspeech/wavs/LJ040-0190.npy -tests/data/ljspeech/wavs/LJ013-0161.wav|tests/data/ljspeech/wavs/LJ013-0161.npy -tests/data/ljspeech/wavs/LJ016-0387.wav|tests/data/ljspeech/wavs/LJ016-0387.npy -tests/data/ljspeech/wavs/LJ035-0085.wav|tests/data/ljspeech/wavs/LJ035-0085.npy -tests/data/ljspeech/wavs/LJ012-0292.wav|tests/data/ljspeech/wavs/LJ012-0292.npy -tests/data/ljspeech/wavs/LJ042-0066.wav|tests/data/ljspeech/wavs/LJ042-0066.npy -tests/data/ljspeech/wavs/LJ025-0093.wav|tests/data/ljspeech/wavs/LJ025-0093.npy -tests/data/ljspeech/wavs/LJ018-0168.wav|tests/data/ljspeech/wavs/LJ018-0168.npy -tests/data/ljspeech/wavs/LJ036-0034.wav|tests/data/ljspeech/wavs/LJ036-0034.npy -tests/data/ljspeech/wavs/LJ016-0092.wav|tests/data/ljspeech/wavs/LJ016-0092.npy -tests/data/ljspeech/wavs/LJ037-0018.wav|tests/data/ljspeech/wavs/LJ037-0018.npy -tests/data/ljspeech/wavs/LJ016-0034.wav|tests/data/ljspeech/wavs/LJ016-0034.npy -tests/data/ljspeech/wavs/LJ047-0147.wav|tests/data/ljspeech/wavs/LJ047-0147.npy -tests/data/ljspeech/wavs/LJ040-0156.wav|tests/data/ljspeech/wavs/LJ040-0156.npy -tests/data/ljspeech/wavs/LJ044-0032.wav|tests/data/ljspeech/wavs/LJ044-0032.npy -tests/data/ljspeech/wavs/LJ016-0004.wav|tests/data/ljspeech/wavs/LJ016-0004.npy -tests/data/ljspeech/wavs/LJ037-0138.wav|tests/data/ljspeech/wavs/LJ037-0138.npy -tests/data/ljspeech/wavs/LJ033-0063.wav|tests/data/ljspeech/wavs/LJ033-0063.npy -tests/data/ljspeech/wavs/LJ048-0279.wav|tests/data/ljspeech/wavs/LJ048-0279.npy -tests/data/ljspeech/wavs/LJ037-0133.wav|tests/data/ljspeech/wavs/LJ037-0133.npy -tests/data/ljspeech/wavs/LJ023-0141.wav|tests/data/ljspeech/wavs/LJ023-0141.npy -tests/data/ljspeech/wavs/LJ034-0016.wav|tests/data/ljspeech/wavs/LJ034-0016.npy -tests/data/ljspeech/wavs/LJ028-0008.wav|tests/data/ljspeech/wavs/LJ028-0008.npy -tests/data/ljspeech/wavs/LJ034-0010.wav|tests/data/ljspeech/wavs/LJ034-0010.npy -tests/data/ljspeech/wavs/LJ028-0406.wav|tests/data/ljspeech/wavs/LJ028-0406.npy -tests/data/ljspeech/wavs/LJ016-0192.wav|tests/data/ljspeech/wavs/LJ016-0192.npy -tests/data/ljspeech/wavs/LJ006-0051.wav|tests/data/ljspeech/wavs/LJ006-0051.npy -tests/data/ljspeech/wavs/LJ019-0035.wav|tests/data/ljspeech/wavs/LJ019-0035.npy -tests/data/ljspeech/wavs/LJ015-0146.wav|tests/data/ljspeech/wavs/LJ015-0146.npy -tests/data/ljspeech/wavs/LJ009-0258.wav|tests/data/ljspeech/wavs/LJ009-0258.npy -tests/data/ljspeech/wavs/LJ002-0174.wav|tests/data/ljspeech/wavs/LJ002-0174.npy -tests/data/ljspeech/wavs/LJ047-0086.wav|tests/data/ljspeech/wavs/LJ047-0086.npy -tests/data/ljspeech/wavs/LJ024-0119.wav|tests/data/ljspeech/wavs/LJ024-0119.npy -tests/data/ljspeech/wavs/LJ007-0198.wav|tests/data/ljspeech/wavs/LJ007-0198.npy -tests/data/ljspeech/wavs/LJ033-0064.wav|tests/data/ljspeech/wavs/LJ033-0064.npy -tests/data/ljspeech/wavs/LJ005-0008.wav|tests/data/ljspeech/wavs/LJ005-0008.npy -tests/data/ljspeech/wavs/LJ013-0168.wav|tests/data/ljspeech/wavs/LJ013-0168.npy -tests/data/ljspeech/wavs/LJ021-0100.wav|tests/data/ljspeech/wavs/LJ021-0100.npy -tests/data/ljspeech/wavs/LJ034-0015.wav|tests/data/ljspeech/wavs/LJ034-0015.npy -tests/data/ljspeech/wavs/LJ028-0497.wav|tests/data/ljspeech/wavs/LJ028-0497.npy -tests/data/ljspeech/wavs/LJ021-0079.wav|tests/data/ljspeech/wavs/LJ021-0079.npy -tests/data/ljspeech/wavs/LJ049-0100.wav|tests/data/ljspeech/wavs/LJ049-0100.npy -tests/data/ljspeech/wavs/LJ011-0252.wav|tests/data/ljspeech/wavs/LJ011-0252.npy -tests/data/ljspeech/wavs/LJ001-0098.wav|tests/data/ljspeech/wavs/LJ001-0098.npy -tests/data/ljspeech/wavs/LJ046-0189.wav|tests/data/ljspeech/wavs/LJ046-0189.npy -tests/data/ljspeech/wavs/LJ028-0182.wav|tests/data/ljspeech/wavs/LJ028-0182.npy -tests/data/ljspeech/wavs/LJ042-0199.wav|tests/data/ljspeech/wavs/LJ042-0199.npy -tests/data/ljspeech/wavs/LJ025-0002.wav|tests/data/ljspeech/wavs/LJ025-0002.npy -tests/data/ljspeech/wavs/LJ027-0062.wav|tests/data/ljspeech/wavs/LJ027-0062.npy -tests/data/ljspeech/wavs/LJ026-0152.wav|tests/data/ljspeech/wavs/LJ026-0152.npy -tests/data/ljspeech/wavs/LJ036-0190.wav|tests/data/ljspeech/wavs/LJ036-0190.npy -tests/data/ljspeech/wavs/LJ034-0050.wav|tests/data/ljspeech/wavs/LJ034-0050.npy -tests/data/ljspeech/wavs/LJ050-0248.wav|tests/data/ljspeech/wavs/LJ050-0248.npy -tests/data/ljspeech/wavs/LJ049-0014.wav|tests/data/ljspeech/wavs/LJ049-0014.npy -tests/data/ljspeech/wavs/LJ006-0198.wav|tests/data/ljspeech/wavs/LJ006-0198.npy -tests/data/ljspeech/wavs/LJ038-0056.wav|tests/data/ljspeech/wavs/LJ038-0056.npy -tests/data/ljspeech/wavs/LJ010-0233.wav|tests/data/ljspeech/wavs/LJ010-0233.npy -tests/data/ljspeech/wavs/LJ015-0012.wav|tests/data/ljspeech/wavs/LJ015-0012.npy -tests/data/ljspeech/wavs/LJ013-0040.wav|tests/data/ljspeech/wavs/LJ013-0040.npy -tests/data/ljspeech/wavs/LJ012-0288.wav|tests/data/ljspeech/wavs/LJ012-0288.npy -tests/data/ljspeech/wavs/LJ028-0128.wav|tests/data/ljspeech/wavs/LJ028-0128.npy -tests/data/ljspeech/wavs/LJ022-0137.wav|tests/data/ljspeech/wavs/LJ022-0137.npy -tests/data/ljspeech/wavs/LJ024-0074.wav|tests/data/ljspeech/wavs/LJ024-0074.npy -tests/data/ljspeech/wavs/LJ014-0112.wav|tests/data/ljspeech/wavs/LJ014-0112.npy -tests/data/ljspeech/wavs/LJ017-0194.wav|tests/data/ljspeech/wavs/LJ017-0194.npy -tests/data/ljspeech/wavs/LJ042-0069.wav|tests/data/ljspeech/wavs/LJ042-0069.npy -tests/data/ljspeech/wavs/LJ022-0103.wav|tests/data/ljspeech/wavs/LJ022-0103.npy -tests/data/ljspeech/wavs/LJ028-0072.wav|tests/data/ljspeech/wavs/LJ028-0072.npy -tests/data/ljspeech/wavs/LJ006-0265.wav|tests/data/ljspeech/wavs/LJ006-0265.npy -tests/data/ljspeech/wavs/LJ022-0091.wav|tests/data/ljspeech/wavs/LJ022-0091.npy -tests/data/ljspeech/wavs/LJ014-0032.wav|tests/data/ljspeech/wavs/LJ014-0032.npy -tests/data/ljspeech/wavs/LJ008-0221.wav|tests/data/ljspeech/wavs/LJ008-0221.npy -tests/data/ljspeech/wavs/LJ039-0207.wav|tests/data/ljspeech/wavs/LJ039-0207.npy -tests/data/ljspeech/wavs/LJ018-0012.wav|tests/data/ljspeech/wavs/LJ018-0012.npy -tests/data/ljspeech/wavs/LJ028-0084.wav|tests/data/ljspeech/wavs/LJ028-0084.npy -tests/data/ljspeech/wavs/LJ014-0022.wav|tests/data/ljspeech/wavs/LJ014-0022.npy -tests/data/ljspeech/wavs/LJ039-0164.wav|tests/data/ljspeech/wavs/LJ039-0164.npy -tests/data/ljspeech/wavs/LJ003-0036.wav|tests/data/ljspeech/wavs/LJ003-0036.npy -tests/data/ljspeech/wavs/LJ019-0387.wav|tests/data/ljspeech/wavs/LJ019-0387.npy -tests/data/ljspeech/wavs/LJ037-0096.wav|tests/data/ljspeech/wavs/LJ037-0096.npy -tests/data/ljspeech/wavs/LJ005-0031.wav|tests/data/ljspeech/wavs/LJ005-0031.npy -tests/data/ljspeech/wavs/LJ038-0193.wav|tests/data/ljspeech/wavs/LJ038-0193.npy -tests/data/ljspeech/wavs/LJ031-0198.wav|tests/data/ljspeech/wavs/LJ031-0198.npy -tests/data/ljspeech/wavs/LJ047-0097.wav|tests/data/ljspeech/wavs/LJ047-0097.npy -tests/data/ljspeech/wavs/LJ028-0274.wav|tests/data/ljspeech/wavs/LJ028-0274.npy -tests/data/ljspeech/wavs/LJ045-0045.wav|tests/data/ljspeech/wavs/LJ045-0045.npy -tests/data/ljspeech/wavs/LJ045-0071.wav|tests/data/ljspeech/wavs/LJ045-0071.npy -tests/data/ljspeech/wavs/LJ004-0154.wav|tests/data/ljspeech/wavs/LJ004-0154.npy -tests/data/ljspeech/wavs/LJ022-0181.wav|tests/data/ljspeech/wavs/LJ022-0181.npy -tests/data/ljspeech/wavs/LJ016-0146.wav|tests/data/ljspeech/wavs/LJ016-0146.npy -tests/data/ljspeech/wavs/LJ026-0161.wav|tests/data/ljspeech/wavs/LJ026-0161.npy -tests/data/ljspeech/wavs/LJ010-0315.wav|tests/data/ljspeech/wavs/LJ010-0315.npy -tests/data/ljspeech/wavs/LJ005-0059.wav|tests/data/ljspeech/wavs/LJ005-0059.npy -tests/data/ljspeech/wavs/LJ013-0222.wav|tests/data/ljspeech/wavs/LJ013-0222.npy -tests/data/ljspeech/wavs/LJ024-0078.wav|tests/data/ljspeech/wavs/LJ024-0078.npy -tests/data/ljspeech/wavs/LJ031-0086.wav|tests/data/ljspeech/wavs/LJ031-0086.npy -tests/data/ljspeech/wavs/LJ017-0094.wav|tests/data/ljspeech/wavs/LJ017-0094.npy -tests/data/ljspeech/wavs/LJ030-0143.wav|tests/data/ljspeech/wavs/LJ030-0143.npy -tests/data/ljspeech/wavs/LJ038-0146.wav|tests/data/ljspeech/wavs/LJ038-0146.npy -tests/data/ljspeech/wavs/LJ017-0252.wav|tests/data/ljspeech/wavs/LJ017-0252.npy -tests/data/ljspeech/wavs/LJ010-0263.wav|tests/data/ljspeech/wavs/LJ010-0263.npy -tests/data/ljspeech/wavs/LJ042-0090.wav|tests/data/ljspeech/wavs/LJ042-0090.npy -tests/data/ljspeech/wavs/LJ040-0065.wav|tests/data/ljspeech/wavs/LJ040-0065.npy -tests/data/ljspeech/wavs/LJ028-0249.wav|tests/data/ljspeech/wavs/LJ028-0249.npy -tests/data/ljspeech/wavs/LJ015-0204.wav|tests/data/ljspeech/wavs/LJ015-0204.npy -tests/data/ljspeech/wavs/LJ009-0005.wav|tests/data/ljspeech/wavs/LJ009-0005.npy -tests/data/ljspeech/wavs/LJ008-0274.wav|tests/data/ljspeech/wavs/LJ008-0274.npy -tests/data/ljspeech/wavs/LJ009-0013.wav|tests/data/ljspeech/wavs/LJ009-0013.npy -tests/data/ljspeech/wavs/LJ050-0210.wav|tests/data/ljspeech/wavs/LJ050-0210.npy -tests/data/ljspeech/wavs/LJ035-0199.wav|tests/data/ljspeech/wavs/LJ035-0199.npy -tests/data/ljspeech/wavs/LJ046-0156.wav|tests/data/ljspeech/wavs/LJ046-0156.npy -tests/data/ljspeech/wavs/LJ026-0103.wav|tests/data/ljspeech/wavs/LJ026-0103.npy -tests/data/ljspeech/wavs/LJ049-0048.wav|tests/data/ljspeech/wavs/LJ049-0048.npy -tests/data/ljspeech/wavs/LJ026-0159.wav|tests/data/ljspeech/wavs/LJ026-0159.npy -tests/data/ljspeech/wavs/LJ005-0145.wav|tests/data/ljspeech/wavs/LJ005-0145.npy -tests/data/ljspeech/wavs/LJ028-0045.wav|tests/data/ljspeech/wavs/LJ028-0045.npy -tests/data/ljspeech/wavs/LJ023-0090.wav|tests/data/ljspeech/wavs/LJ023-0090.npy -tests/data/ljspeech/wavs/LJ047-0118.wav|tests/data/ljspeech/wavs/LJ047-0118.npy -tests/data/ljspeech/wavs/LJ013-0087.wav|tests/data/ljspeech/wavs/LJ013-0087.npy -tests/data/ljspeech/wavs/LJ037-0112.wav|tests/data/ljspeech/wavs/LJ037-0112.npy -tests/data/ljspeech/wavs/LJ016-0033.wav|tests/data/ljspeech/wavs/LJ016-0033.npy -tests/data/ljspeech/wavs/LJ022-0075.wav|tests/data/ljspeech/wavs/LJ022-0075.npy -tests/data/ljspeech/wavs/LJ005-0153.wav|tests/data/ljspeech/wavs/LJ005-0153.npy -tests/data/ljspeech/wavs/LJ001-0134.wav|tests/data/ljspeech/wavs/LJ001-0134.npy -tests/data/ljspeech/wavs/LJ046-0205.wav|tests/data/ljspeech/wavs/LJ046-0205.npy -tests/data/ljspeech/wavs/LJ043-0021.wav|tests/data/ljspeech/wavs/LJ043-0021.npy -tests/data/ljspeech/wavs/LJ035-0018.wav|tests/data/ljspeech/wavs/LJ035-0018.npy -tests/data/ljspeech/wavs/LJ003-0066.wav|tests/data/ljspeech/wavs/LJ003-0066.npy -tests/data/ljspeech/wavs/LJ029-0178.wav|tests/data/ljspeech/wavs/LJ029-0178.npy -tests/data/ljspeech/wavs/LJ045-0180.wav|tests/data/ljspeech/wavs/LJ045-0180.npy -tests/data/ljspeech/wavs/LJ043-0125.wav|tests/data/ljspeech/wavs/LJ043-0125.npy -tests/data/ljspeech/wavs/LJ034-0030.wav|tests/data/ljspeech/wavs/LJ034-0030.npy -tests/data/ljspeech/wavs/LJ043-0164.wav|tests/data/ljspeech/wavs/LJ043-0164.npy -tests/data/ljspeech/wavs/LJ029-0065.wav|tests/data/ljspeech/wavs/LJ029-0065.npy -tests/data/ljspeech/wavs/LJ017-0107.wav|tests/data/ljspeech/wavs/LJ017-0107.npy -tests/data/ljspeech/wavs/LJ028-0465.wav|tests/data/ljspeech/wavs/LJ028-0465.npy -tests/data/ljspeech/wavs/LJ004-0203.wav|tests/data/ljspeech/wavs/LJ004-0203.npy -tests/data/ljspeech/wavs/LJ016-0162.wav|tests/data/ljspeech/wavs/LJ016-0162.npy -tests/data/ljspeech/wavs/LJ030-0208.wav|tests/data/ljspeech/wavs/LJ030-0208.npy -tests/data/ljspeech/wavs/LJ015-0122.wav|tests/data/ljspeech/wavs/LJ015-0122.npy -tests/data/ljspeech/wavs/LJ002-0126.wav|tests/data/ljspeech/wavs/LJ002-0126.npy -tests/data/ljspeech/wavs/LJ031-0208.wav|tests/data/ljspeech/wavs/LJ031-0208.npy -tests/data/ljspeech/wavs/LJ026-0134.wav|tests/data/ljspeech/wavs/LJ026-0134.npy -tests/data/ljspeech/wavs/LJ048-0228.wav|tests/data/ljspeech/wavs/LJ048-0228.npy -tests/data/ljspeech/wavs/LJ022-0100.wav|tests/data/ljspeech/wavs/LJ022-0100.npy -tests/data/ljspeech/wavs/LJ020-0033.wav|tests/data/ljspeech/wavs/LJ020-0033.npy -tests/data/ljspeech/wavs/LJ018-0358.wav|tests/data/ljspeech/wavs/LJ018-0358.npy -tests/data/ljspeech/wavs/LJ019-0061.wav|tests/data/ljspeech/wavs/LJ019-0061.npy -tests/data/ljspeech/wavs/LJ019-0090.wav|tests/data/ljspeech/wavs/LJ019-0090.npy -tests/data/ljspeech/wavs/LJ018-0350.wav|tests/data/ljspeech/wavs/LJ018-0350.npy -tests/data/ljspeech/wavs/LJ017-0193.wav|tests/data/ljspeech/wavs/LJ017-0193.npy -tests/data/ljspeech/wavs/LJ048-0226.wav|tests/data/ljspeech/wavs/LJ048-0226.npy -tests/data/ljspeech/wavs/LJ022-0050.wav|tests/data/ljspeech/wavs/LJ022-0050.npy -tests/data/ljspeech/wavs/LJ003-0296.wav|tests/data/ljspeech/wavs/LJ003-0296.npy -tests/data/ljspeech/wavs/LJ014-0043.wav|tests/data/ljspeech/wavs/LJ014-0043.npy -tests/data/ljspeech/wavs/LJ041-0153.wav|tests/data/ljspeech/wavs/LJ041-0153.npy -tests/data/ljspeech/wavs/LJ028-0171.wav|tests/data/ljspeech/wavs/LJ028-0171.npy -tests/data/ljspeech/wavs/LJ040-0078.wav|tests/data/ljspeech/wavs/LJ040-0078.npy -tests/data/ljspeech/wavs/LJ048-0044.wav|tests/data/ljspeech/wavs/LJ048-0044.npy -tests/data/ljspeech/wavs/LJ048-0145.wav|tests/data/ljspeech/wavs/LJ048-0145.npy -tests/data/ljspeech/wavs/LJ001-0063.wav|tests/data/ljspeech/wavs/LJ001-0063.npy -tests/data/ljspeech/wavs/LJ012-0184.wav|tests/data/ljspeech/wavs/LJ012-0184.npy -tests/data/ljspeech/wavs/LJ003-0249.wav|tests/data/ljspeech/wavs/LJ003-0249.npy -tests/data/ljspeech/wavs/LJ012-0185.wav|tests/data/ljspeech/wavs/LJ012-0185.npy -tests/data/ljspeech/wavs/LJ039-0134.wav|tests/data/ljspeech/wavs/LJ039-0134.npy -tests/data/ljspeech/wavs/LJ033-0213.wav|tests/data/ljspeech/wavs/LJ033-0213.npy -tests/data/ljspeech/wavs/LJ039-0175.wav|tests/data/ljspeech/wavs/LJ039-0175.npy -tests/data/ljspeech/wavs/LJ045-0018.wav|tests/data/ljspeech/wavs/LJ045-0018.npy -tests/data/ljspeech/wavs/LJ006-0201.wav|tests/data/ljspeech/wavs/LJ006-0201.npy -tests/data/ljspeech/wavs/LJ028-0016.wav|tests/data/ljspeech/wavs/LJ028-0016.npy -tests/data/ljspeech/wavs/LJ040-0220.wav|tests/data/ljspeech/wavs/LJ040-0220.npy -tests/data/ljspeech/wavs/LJ017-0021.wav|tests/data/ljspeech/wavs/LJ017-0021.npy -tests/data/ljspeech/wavs/LJ002-0194.wav|tests/data/ljspeech/wavs/LJ002-0194.npy -tests/data/ljspeech/wavs/LJ043-0141.wav|tests/data/ljspeech/wavs/LJ043-0141.npy -tests/data/ljspeech/wavs/LJ038-0157.wav|tests/data/ljspeech/wavs/LJ038-0157.npy -tests/data/ljspeech/wavs/LJ002-0048.wav|tests/data/ljspeech/wavs/LJ002-0048.npy -tests/data/ljspeech/wavs/LJ047-0137.wav|tests/data/ljspeech/wavs/LJ047-0137.npy -tests/data/ljspeech/wavs/LJ048-0261.wav|tests/data/ljspeech/wavs/LJ048-0261.npy -tests/data/ljspeech/wavs/LJ044-0045.wav|tests/data/ljspeech/wavs/LJ044-0045.npy -tests/data/ljspeech/wavs/LJ037-0057.wav|tests/data/ljspeech/wavs/LJ037-0057.npy -tests/data/ljspeech/wavs/LJ006-0288.wav|tests/data/ljspeech/wavs/LJ006-0288.npy -tests/data/ljspeech/wavs/LJ011-0120.wav|tests/data/ljspeech/wavs/LJ011-0120.npy -tests/data/ljspeech/wavs/LJ014-0143.wav|tests/data/ljspeech/wavs/LJ014-0143.npy -tests/data/ljspeech/wavs/LJ040-0147.wav|tests/data/ljspeech/wavs/LJ040-0147.npy -tests/data/ljspeech/wavs/LJ001-0156.wav|tests/data/ljspeech/wavs/LJ001-0156.npy -tests/data/ljspeech/wavs/LJ028-0089.wav|tests/data/ljspeech/wavs/LJ028-0089.npy -tests/data/ljspeech/wavs/LJ030-0194.wav|tests/data/ljspeech/wavs/LJ030-0194.npy -tests/data/ljspeech/wavs/LJ017-0054.wav|tests/data/ljspeech/wavs/LJ017-0054.npy -tests/data/ljspeech/wavs/LJ050-0246.wav|tests/data/ljspeech/wavs/LJ050-0246.npy -tests/data/ljspeech/wavs/LJ023-0073.wav|tests/data/ljspeech/wavs/LJ023-0073.npy -tests/data/ljspeech/wavs/LJ023-0071.wav|tests/data/ljspeech/wavs/LJ023-0071.npy -tests/data/ljspeech/wavs/LJ007-0111.wav|tests/data/ljspeech/wavs/LJ007-0111.npy -tests/data/ljspeech/wavs/LJ010-0132.wav|tests/data/ljspeech/wavs/LJ010-0132.npy -tests/data/ljspeech/wavs/LJ005-0106.wav|tests/data/ljspeech/wavs/LJ005-0106.npy -tests/data/ljspeech/wavs/LJ029-0208.wav|tests/data/ljspeech/wavs/LJ029-0208.npy -tests/data/ljspeech/wavs/LJ030-0127.wav|tests/data/ljspeech/wavs/LJ030-0127.npy -tests/data/ljspeech/wavs/LJ039-0246.wav|tests/data/ljspeech/wavs/LJ039-0246.npy -tests/data/ljspeech/wavs/LJ035-0048.wav|tests/data/ljspeech/wavs/LJ035-0048.npy -tests/data/ljspeech/wavs/LJ007-0179.wav|tests/data/ljspeech/wavs/LJ007-0179.npy -tests/data/ljspeech/wavs/LJ018-0198.wav|tests/data/ljspeech/wavs/LJ018-0198.npy -tests/data/ljspeech/wavs/LJ007-0186.wav|tests/data/ljspeech/wavs/LJ007-0186.npy -tests/data/ljspeech/wavs/LJ014-0163.wav|tests/data/ljspeech/wavs/LJ014-0163.npy -tests/data/ljspeech/wavs/LJ001-0139.wav|tests/data/ljspeech/wavs/LJ001-0139.npy -tests/data/ljspeech/wavs/LJ009-0139.wav|tests/data/ljspeech/wavs/LJ009-0139.npy -tests/data/ljspeech/wavs/LJ044-0020.wav|tests/data/ljspeech/wavs/LJ044-0020.npy -tests/data/ljspeech/wavs/LJ044-0055.wav|tests/data/ljspeech/wavs/LJ044-0055.npy -tests/data/ljspeech/wavs/LJ009-0174.wav|tests/data/ljspeech/wavs/LJ009-0174.npy -tests/data/ljspeech/wavs/LJ003-0070.wav|tests/data/ljspeech/wavs/LJ003-0070.npy -tests/data/ljspeech/wavs/LJ049-0095.wav|tests/data/ljspeech/wavs/LJ049-0095.npy -tests/data/ljspeech/wavs/LJ040-0129.wav|tests/data/ljspeech/wavs/LJ040-0129.npy -tests/data/ljspeech/wavs/LJ042-0110.wav|tests/data/ljspeech/wavs/LJ042-0110.npy -tests/data/ljspeech/wavs/LJ008-0199.wav|tests/data/ljspeech/wavs/LJ008-0199.npy -tests/data/ljspeech/wavs/LJ042-0051.wav|tests/data/ljspeech/wavs/LJ042-0051.npy -tests/data/ljspeech/wavs/LJ003-0190.wav|tests/data/ljspeech/wavs/LJ003-0190.npy -tests/data/ljspeech/wavs/LJ014-0087.wav|tests/data/ljspeech/wavs/LJ014-0087.npy -tests/data/ljspeech/wavs/LJ021-0049.wav|tests/data/ljspeech/wavs/LJ021-0049.npy -tests/data/ljspeech/wavs/LJ026-0022.wav|tests/data/ljspeech/wavs/LJ026-0022.npy -tests/data/ljspeech/wavs/LJ017-0058.wav|tests/data/ljspeech/wavs/LJ017-0058.npy -tests/data/ljspeech/wavs/LJ036-0170.wav|tests/data/ljspeech/wavs/LJ036-0170.npy -tests/data/ljspeech/wavs/LJ017-0226.wav|tests/data/ljspeech/wavs/LJ017-0226.npy -tests/data/ljspeech/wavs/LJ032-0146.wav|tests/data/ljspeech/wavs/LJ032-0146.npy -tests/data/ljspeech/wavs/LJ016-0429.wav|tests/data/ljspeech/wavs/LJ016-0429.npy -tests/data/ljspeech/wavs/LJ019-0267.wav|tests/data/ljspeech/wavs/LJ019-0267.npy -tests/data/ljspeech/wavs/LJ010-0276.wav|tests/data/ljspeech/wavs/LJ010-0276.npy -tests/data/ljspeech/wavs/LJ007-0170.wav|tests/data/ljspeech/wavs/LJ007-0170.npy -tests/data/ljspeech/wavs/LJ008-0085.wav|tests/data/ljspeech/wavs/LJ008-0085.npy -tests/data/ljspeech/wavs/LJ002-0040.wav|tests/data/ljspeech/wavs/LJ002-0040.npy -tests/data/ljspeech/wavs/LJ026-0109.wav|tests/data/ljspeech/wavs/LJ026-0109.npy -tests/data/ljspeech/wavs/LJ010-0203.wav|tests/data/ljspeech/wavs/LJ010-0203.npy -tests/data/ljspeech/wavs/LJ034-0068.wav|tests/data/ljspeech/wavs/LJ034-0068.npy -tests/data/ljspeech/wavs/LJ030-0244.wav|tests/data/ljspeech/wavs/LJ030-0244.npy -tests/data/ljspeech/wavs/LJ050-0073.wav|tests/data/ljspeech/wavs/LJ050-0073.npy -tests/data/ljspeech/wavs/LJ001-0056.wav|tests/data/ljspeech/wavs/LJ001-0056.npy -tests/data/ljspeech/wavs/LJ028-0086.wav|tests/data/ljspeech/wavs/LJ028-0086.npy -tests/data/ljspeech/wavs/LJ047-0208.wav|tests/data/ljspeech/wavs/LJ047-0208.npy -tests/data/ljspeech/wavs/LJ050-0041.wav|tests/data/ljspeech/wavs/LJ050-0041.npy -tests/data/ljspeech/wavs/LJ037-0208.wav|tests/data/ljspeech/wavs/LJ037-0208.npy -tests/data/ljspeech/wavs/LJ043-0073.wav|tests/data/ljspeech/wavs/LJ043-0073.npy -tests/data/ljspeech/wavs/LJ019-0302.wav|tests/data/ljspeech/wavs/LJ019-0302.npy -tests/data/ljspeech/wavs/LJ049-0209.wav|tests/data/ljspeech/wavs/LJ049-0209.npy -tests/data/ljspeech/wavs/LJ041-0074.wav|tests/data/ljspeech/wavs/LJ041-0074.npy -tests/data/ljspeech/wavs/LJ001-0062.wav|tests/data/ljspeech/wavs/LJ001-0062.npy -tests/data/ljspeech/wavs/LJ044-0091.wav|tests/data/ljspeech/wavs/LJ044-0091.npy -tests/data/ljspeech/wavs/LJ013-0240.wav|tests/data/ljspeech/wavs/LJ013-0240.npy -tests/data/ljspeech/wavs/LJ035-0002.wav|tests/data/ljspeech/wavs/LJ035-0002.npy -tests/data/ljspeech/wavs/LJ009-0141.wav|tests/data/ljspeech/wavs/LJ009-0141.npy -tests/data/ljspeech/wavs/LJ003-0231.wav|tests/data/ljspeech/wavs/LJ003-0231.npy -tests/data/ljspeech/wavs/LJ020-0096.wav|tests/data/ljspeech/wavs/LJ020-0096.npy -tests/data/ljspeech/wavs/LJ003-0080.wav|tests/data/ljspeech/wavs/LJ003-0080.npy -tests/data/ljspeech/wavs/LJ008-0136.wav|tests/data/ljspeech/wavs/LJ008-0136.npy -tests/data/ljspeech/wavs/LJ003-0126.wav|tests/data/ljspeech/wavs/LJ003-0126.npy -tests/data/ljspeech/wavs/LJ039-0040.wav|tests/data/ljspeech/wavs/LJ039-0040.npy -tests/data/ljspeech/wavs/LJ050-0166.wav|tests/data/ljspeech/wavs/LJ050-0166.npy -tests/data/ljspeech/wavs/LJ009-0041.wav|tests/data/ljspeech/wavs/LJ009-0041.npy -tests/data/ljspeech/wavs/LJ049-0206.wav|tests/data/ljspeech/wavs/LJ049-0206.npy -tests/data/ljspeech/wavs/LJ044-0115.wav|tests/data/ljspeech/wavs/LJ044-0115.npy -tests/data/ljspeech/wavs/LJ035-0005.wav|tests/data/ljspeech/wavs/LJ035-0005.npy -tests/data/ljspeech/wavs/LJ009-0221.wav|tests/data/ljspeech/wavs/LJ009-0221.npy -tests/data/ljspeech/wavs/LJ032-0081.wav|tests/data/ljspeech/wavs/LJ032-0081.npy -tests/data/ljspeech/wavs/LJ030-0057.wav|tests/data/ljspeech/wavs/LJ030-0057.npy -tests/data/ljspeech/wavs/LJ008-0071.wav|tests/data/ljspeech/wavs/LJ008-0071.npy -tests/data/ljspeech/wavs/LJ005-0133.wav|tests/data/ljspeech/wavs/LJ005-0133.npy -tests/data/ljspeech/wavs/LJ016-0416.wav|tests/data/ljspeech/wavs/LJ016-0416.npy -tests/data/ljspeech/wavs/LJ021-0041.wav|tests/data/ljspeech/wavs/LJ021-0041.npy -tests/data/ljspeech/wavs/LJ046-0006.wav|tests/data/ljspeech/wavs/LJ046-0006.npy -tests/data/ljspeech/wavs/LJ005-0025.wav|tests/data/ljspeech/wavs/LJ005-0025.npy -tests/data/ljspeech/wavs/LJ030-0171.wav|tests/data/ljspeech/wavs/LJ030-0171.npy -tests/data/ljspeech/wavs/LJ016-0381.wav|tests/data/ljspeech/wavs/LJ016-0381.npy -tests/data/ljspeech/wavs/LJ045-0137.wav|tests/data/ljspeech/wavs/LJ045-0137.npy -tests/data/ljspeech/wavs/LJ034-0067.wav|tests/data/ljspeech/wavs/LJ034-0067.npy -tests/data/ljspeech/wavs/LJ033-0188.wav|tests/data/ljspeech/wavs/LJ033-0188.npy -tests/data/ljspeech/wavs/LJ047-0085.wav|tests/data/ljspeech/wavs/LJ047-0085.npy -tests/data/ljspeech/wavs/LJ038-0043.wav|tests/data/ljspeech/wavs/LJ038-0043.npy -tests/data/ljspeech/wavs/LJ002-0162.wav|tests/data/ljspeech/wavs/LJ002-0162.npy -tests/data/ljspeech/wavs/LJ022-0164.wav|tests/data/ljspeech/wavs/LJ022-0164.npy -tests/data/ljspeech/wavs/LJ040-0109.wav|tests/data/ljspeech/wavs/LJ040-0109.npy -tests/data/ljspeech/wavs/LJ034-0057.wav|tests/data/ljspeech/wavs/LJ034-0057.npy -tests/data/ljspeech/wavs/LJ018-0043.wav|tests/data/ljspeech/wavs/LJ018-0043.npy -tests/data/ljspeech/wavs/LJ002-0274.wav|tests/data/ljspeech/wavs/LJ002-0274.npy -tests/data/ljspeech/wavs/LJ030-0231.wav|tests/data/ljspeech/wavs/LJ030-0231.npy -tests/data/ljspeech/wavs/LJ018-0301.wav|tests/data/ljspeech/wavs/LJ018-0301.npy -tests/data/ljspeech/wavs/LJ013-0113.wav|tests/data/ljspeech/wavs/LJ013-0113.npy -tests/data/ljspeech/wavs/LJ033-0011.wav|tests/data/ljspeech/wavs/LJ033-0011.npy -tests/data/ljspeech/wavs/LJ019-0036.wav|tests/data/ljspeech/wavs/LJ019-0036.npy -tests/data/ljspeech/wavs/LJ009-0095.wav|tests/data/ljspeech/wavs/LJ009-0095.npy -tests/data/ljspeech/wavs/LJ034-0042.wav|tests/data/ljspeech/wavs/LJ034-0042.npy -tests/data/ljspeech/wavs/LJ002-0123.wav|tests/data/ljspeech/wavs/LJ002-0123.npy -tests/data/ljspeech/wavs/LJ044-0082.wav|tests/data/ljspeech/wavs/LJ044-0082.npy -tests/data/ljspeech/wavs/LJ006-0261.wav|tests/data/ljspeech/wavs/LJ006-0261.npy -tests/data/ljspeech/wavs/LJ041-0111.wav|tests/data/ljspeech/wavs/LJ041-0111.npy -tests/data/ljspeech/wavs/LJ011-0236.wav|tests/data/ljspeech/wavs/LJ011-0236.npy -tests/data/ljspeech/wavs/LJ026-0124.wav|tests/data/ljspeech/wavs/LJ026-0124.npy -tests/data/ljspeech/wavs/LJ021-0057.wav|tests/data/ljspeech/wavs/LJ021-0057.npy -tests/data/ljspeech/wavs/LJ010-0121.wav|tests/data/ljspeech/wavs/LJ010-0121.npy -tests/data/ljspeech/wavs/LJ049-0007.wav|tests/data/ljspeech/wavs/LJ049-0007.npy -tests/data/ljspeech/wavs/LJ003-0041.wav|tests/data/ljspeech/wavs/LJ003-0041.npy -tests/data/ljspeech/wavs/LJ043-0018.wav|tests/data/ljspeech/wavs/LJ043-0018.npy -tests/data/ljspeech/wavs/LJ031-0181.wav|tests/data/ljspeech/wavs/LJ031-0181.npy -tests/data/ljspeech/wavs/LJ017-0283.wav|tests/data/ljspeech/wavs/LJ017-0283.npy -tests/data/ljspeech/wavs/LJ030-0056.wav|tests/data/ljspeech/wavs/LJ030-0056.npy -tests/data/ljspeech/wavs/LJ046-0023.wav|tests/data/ljspeech/wavs/LJ046-0023.npy -tests/data/ljspeech/wavs/LJ041-0137.wav|tests/data/ljspeech/wavs/LJ041-0137.npy -tests/data/ljspeech/wavs/LJ032-0031.wav|tests/data/ljspeech/wavs/LJ032-0031.npy -tests/data/ljspeech/wavs/LJ033-0149.wav|tests/data/ljspeech/wavs/LJ033-0149.npy -tests/data/ljspeech/wavs/LJ008-0195.wav|tests/data/ljspeech/wavs/LJ008-0195.npy -tests/data/ljspeech/wavs/LJ032-0210.wav|tests/data/ljspeech/wavs/LJ032-0210.npy -tests/data/ljspeech/wavs/LJ002-0091.wav|tests/data/ljspeech/wavs/LJ002-0091.npy -tests/data/ljspeech/wavs/LJ018-0346.wav|tests/data/ljspeech/wavs/LJ018-0346.npy -tests/data/ljspeech/wavs/LJ050-0046.wav|tests/data/ljspeech/wavs/LJ050-0046.npy -tests/data/ljspeech/wavs/LJ010-0216.wav|tests/data/ljspeech/wavs/LJ010-0216.npy -tests/data/ljspeech/wavs/LJ028-0400.wav|tests/data/ljspeech/wavs/LJ028-0400.npy -tests/data/ljspeech/wavs/LJ030-0182.wav|tests/data/ljspeech/wavs/LJ030-0182.npy -tests/data/ljspeech/wavs/LJ036-0129.wav|tests/data/ljspeech/wavs/LJ036-0129.npy -tests/data/ljspeech/wavs/LJ011-0173.wav|tests/data/ljspeech/wavs/LJ011-0173.npy -tests/data/ljspeech/wavs/LJ041-0099.wav|tests/data/ljspeech/wavs/LJ041-0099.npy -tests/data/ljspeech/wavs/LJ049-0006.wav|tests/data/ljspeech/wavs/LJ049-0006.npy -tests/data/ljspeech/wavs/LJ006-0024.wav|tests/data/ljspeech/wavs/LJ006-0024.npy -tests/data/ljspeech/wavs/LJ019-0078.wav|tests/data/ljspeech/wavs/LJ019-0078.npy -tests/data/ljspeech/wavs/LJ028-0481.wav|tests/data/ljspeech/wavs/LJ028-0481.npy -tests/data/ljspeech/wavs/LJ002-0051.wav|tests/data/ljspeech/wavs/LJ002-0051.npy -tests/data/ljspeech/wavs/LJ016-0125.wav|tests/data/ljspeech/wavs/LJ016-0125.npy -tests/data/ljspeech/wavs/LJ015-0061.wav|tests/data/ljspeech/wavs/LJ015-0061.npy -tests/data/ljspeech/wavs/LJ024-0012.wav|tests/data/ljspeech/wavs/LJ024-0012.npy -tests/data/ljspeech/wavs/LJ036-0008.wav|tests/data/ljspeech/wavs/LJ036-0008.npy -tests/data/ljspeech/wavs/LJ004-0079.wav|tests/data/ljspeech/wavs/LJ004-0079.npy -tests/data/ljspeech/wavs/LJ009-0035.wav|tests/data/ljspeech/wavs/LJ009-0035.npy -tests/data/ljspeech/wavs/LJ018-0094.wav|tests/data/ljspeech/wavs/LJ018-0094.npy -tests/data/ljspeech/wavs/LJ047-0206.wav|tests/data/ljspeech/wavs/LJ047-0206.npy -tests/data/ljspeech/wavs/LJ003-0038.wav|tests/data/ljspeech/wavs/LJ003-0038.npy -tests/data/ljspeech/wavs/LJ016-0337.wav|tests/data/ljspeech/wavs/LJ016-0337.npy -tests/data/ljspeech/wavs/LJ015-0278.wav|tests/data/ljspeech/wavs/LJ015-0278.npy -tests/data/ljspeech/wavs/LJ035-0148.wav|tests/data/ljspeech/wavs/LJ035-0148.npy -tests/data/ljspeech/wavs/LJ015-0254.wav|tests/data/ljspeech/wavs/LJ015-0254.npy -tests/data/ljspeech/wavs/LJ017-0015.wav|tests/data/ljspeech/wavs/LJ017-0015.npy -tests/data/ljspeech/wavs/LJ037-0238.wav|tests/data/ljspeech/wavs/LJ037-0238.npy -tests/data/ljspeech/wavs/LJ046-0159.wav|tests/data/ljspeech/wavs/LJ046-0159.npy -tests/data/ljspeech/wavs/LJ019-0054.wav|tests/data/ljspeech/wavs/LJ019-0054.npy -tests/data/ljspeech/wavs/LJ017-0092.wav|tests/data/ljspeech/wavs/LJ017-0092.npy -tests/data/ljspeech/wavs/LJ026-0150.wav|tests/data/ljspeech/wavs/LJ026-0150.npy -tests/data/ljspeech/wavs/LJ026-0119.wav|tests/data/ljspeech/wavs/LJ026-0119.npy -tests/data/ljspeech/wavs/LJ036-0038.wav|tests/data/ljspeech/wavs/LJ036-0038.npy -tests/data/ljspeech/wavs/LJ006-0074.wav|tests/data/ljspeech/wavs/LJ006-0074.npy -tests/data/ljspeech/wavs/LJ012-0038.wav|tests/data/ljspeech/wavs/LJ012-0038.npy -tests/data/ljspeech/wavs/LJ002-0128.wav|tests/data/ljspeech/wavs/LJ002-0128.npy -tests/data/ljspeech/wavs/LJ017-0104.wav|tests/data/ljspeech/wavs/LJ017-0104.npy -tests/data/ljspeech/wavs/LJ009-0100.wav|tests/data/ljspeech/wavs/LJ009-0100.npy -tests/data/ljspeech/wavs/LJ037-0023.wav|tests/data/ljspeech/wavs/LJ037-0023.npy -tests/data/ljspeech/wavs/LJ044-0101.wav|tests/data/ljspeech/wavs/LJ044-0101.npy -tests/data/ljspeech/wavs/LJ050-0269.wav|tests/data/ljspeech/wavs/LJ050-0269.npy -tests/data/ljspeech/wavs/LJ047-0246.wav|tests/data/ljspeech/wavs/LJ047-0246.npy -tests/data/ljspeech/wavs/LJ017-0175.wav|tests/data/ljspeech/wavs/LJ017-0175.npy -tests/data/ljspeech/wavs/LJ042-0151.wav|tests/data/ljspeech/wavs/LJ042-0151.npy -tests/data/ljspeech/wavs/LJ016-0354.wav|tests/data/ljspeech/wavs/LJ016-0354.npy -tests/data/ljspeech/wavs/LJ017-0022.wav|tests/data/ljspeech/wavs/LJ017-0022.npy -tests/data/ljspeech/wavs/LJ003-0310.wav|tests/data/ljspeech/wavs/LJ003-0310.npy -tests/data/ljspeech/wavs/LJ018-0210.wav|tests/data/ljspeech/wavs/LJ018-0210.npy -tests/data/ljspeech/wavs/LJ015-0300.wav|tests/data/ljspeech/wavs/LJ015-0300.npy -tests/data/ljspeech/wavs/LJ018-0097.wav|tests/data/ljspeech/wavs/LJ018-0097.npy -tests/data/ljspeech/wavs/LJ012-0037.wav|tests/data/ljspeech/wavs/LJ012-0037.npy -tests/data/ljspeech/wavs/LJ008-0208.wav|tests/data/ljspeech/wavs/LJ008-0208.npy -tests/data/ljspeech/wavs/LJ017-0178.wav|tests/data/ljspeech/wavs/LJ017-0178.npy -tests/data/ljspeech/wavs/LJ045-0236.wav|tests/data/ljspeech/wavs/LJ045-0236.npy -tests/data/ljspeech/wavs/LJ032-0038.wav|tests/data/ljspeech/wavs/LJ032-0038.npy -tests/data/ljspeech/wavs/LJ010-0034.wav|tests/data/ljspeech/wavs/LJ010-0034.npy -tests/data/ljspeech/wavs/LJ048-0237.wav|tests/data/ljspeech/wavs/LJ048-0237.npy -tests/data/ljspeech/wavs/LJ016-0205.wav|tests/data/ljspeech/wavs/LJ016-0205.npy -tests/data/ljspeech/wavs/LJ047-0035.wav|tests/data/ljspeech/wavs/LJ047-0035.npy -tests/data/ljspeech/wavs/LJ018-0238.wav|tests/data/ljspeech/wavs/LJ018-0238.npy -tests/data/ljspeech/wavs/LJ016-0001.wav|tests/data/ljspeech/wavs/LJ016-0001.npy -tests/data/ljspeech/wavs/LJ016-0135.wav|tests/data/ljspeech/wavs/LJ016-0135.npy -tests/data/ljspeech/wavs/LJ042-0096.wav|tests/data/ljspeech/wavs/LJ042-0096.npy -tests/data/ljspeech/wavs/LJ013-0146.wav|tests/data/ljspeech/wavs/LJ013-0146.npy -tests/data/ljspeech/wavs/LJ002-0205.wav|tests/data/ljspeech/wavs/LJ002-0205.npy -tests/data/ljspeech/wavs/LJ010-0071.wav|tests/data/ljspeech/wavs/LJ010-0071.npy -tests/data/ljspeech/wavs/LJ006-0194.wav|tests/data/ljspeech/wavs/LJ006-0194.npy -tests/data/ljspeech/wavs/LJ046-0041.wav|tests/data/ljspeech/wavs/LJ046-0041.npy -tests/data/ljspeech/wavs/LJ015-0312.wav|tests/data/ljspeech/wavs/LJ015-0312.npy -tests/data/ljspeech/wavs/LJ006-0156.wav|tests/data/ljspeech/wavs/LJ006-0156.npy -tests/data/ljspeech/wavs/LJ009-0004.wav|tests/data/ljspeech/wavs/LJ009-0004.npy -tests/data/ljspeech/wavs/LJ028-0183.wav|tests/data/ljspeech/wavs/LJ028-0183.npy -tests/data/ljspeech/wavs/LJ010-0295.wav|tests/data/ljspeech/wavs/LJ010-0295.npy -tests/data/ljspeech/wavs/LJ037-0100.wav|tests/data/ljspeech/wavs/LJ037-0100.npy -tests/data/ljspeech/wavs/LJ019-0008.wav|tests/data/ljspeech/wavs/LJ019-0008.npy -tests/data/ljspeech/wavs/LJ011-0174.wav|tests/data/ljspeech/wavs/LJ011-0174.npy -tests/data/ljspeech/wavs/LJ006-0266.wav|tests/data/ljspeech/wavs/LJ006-0266.npy -tests/data/ljspeech/wavs/LJ015-0313.wav|tests/data/ljspeech/wavs/LJ015-0313.npy -tests/data/ljspeech/wavs/LJ026-0110.wav|tests/data/ljspeech/wavs/LJ026-0110.npy -tests/data/ljspeech/wavs/LJ008-0252.wav|tests/data/ljspeech/wavs/LJ008-0252.npy -tests/data/ljspeech/wavs/LJ037-0093.wav|tests/data/ljspeech/wavs/LJ037-0093.npy -tests/data/ljspeech/wavs/LJ016-0122.wav|tests/data/ljspeech/wavs/LJ016-0122.npy -tests/data/ljspeech/wavs/LJ037-0181.wav|tests/data/ljspeech/wavs/LJ037-0181.npy -tests/data/ljspeech/wavs/LJ017-0228.wav|tests/data/ljspeech/wavs/LJ017-0228.npy -tests/data/ljspeech/wavs/LJ030-0017.wav|tests/data/ljspeech/wavs/LJ030-0017.npy -tests/data/ljspeech/wavs/LJ016-0030.wav|tests/data/ljspeech/wavs/LJ016-0030.npy -tests/data/ljspeech/wavs/LJ027-0161.wav|tests/data/ljspeech/wavs/LJ027-0161.npy -tests/data/ljspeech/wavs/LJ011-0246.wav|tests/data/ljspeech/wavs/LJ011-0246.npy -tests/data/ljspeech/wavs/LJ044-0083.wav|tests/data/ljspeech/wavs/LJ044-0083.npy -tests/data/ljspeech/wavs/LJ050-0240.wav|tests/data/ljspeech/wavs/LJ050-0240.npy -tests/data/ljspeech/wavs/LJ032-0116.wav|tests/data/ljspeech/wavs/LJ032-0116.npy -tests/data/ljspeech/wavs/LJ014-0209.wav|tests/data/ljspeech/wavs/LJ014-0209.npy -tests/data/ljspeech/wavs/LJ030-0025.wav|tests/data/ljspeech/wavs/LJ030-0025.npy -tests/data/ljspeech/wavs/LJ012-0149.wav|tests/data/ljspeech/wavs/LJ012-0149.npy -tests/data/ljspeech/wavs/LJ011-0242.wav|tests/data/ljspeech/wavs/LJ011-0242.npy -tests/data/ljspeech/wavs/LJ028-0051.wav|tests/data/ljspeech/wavs/LJ028-0051.npy -tests/data/ljspeech/wavs/LJ024-0106.wav|tests/data/ljspeech/wavs/LJ024-0106.npy -tests/data/ljspeech/wavs/LJ014-0172.wav|tests/data/ljspeech/wavs/LJ014-0172.npy -tests/data/ljspeech/wavs/LJ023-0092.wav|tests/data/ljspeech/wavs/LJ023-0092.npy -tests/data/ljspeech/wavs/LJ015-0083.wav|tests/data/ljspeech/wavs/LJ015-0083.npy -tests/data/ljspeech/wavs/LJ030-0253.wav|tests/data/ljspeech/wavs/LJ030-0253.npy -tests/data/ljspeech/wavs/LJ014-0236.wav|tests/data/ljspeech/wavs/LJ014-0236.npy -tests/data/ljspeech/wavs/LJ016-0245.wav|tests/data/ljspeech/wavs/LJ016-0245.npy -tests/data/ljspeech/wavs/LJ009-0222.wav|tests/data/ljspeech/wavs/LJ009-0222.npy -tests/data/ljspeech/wavs/LJ015-0024.wav|tests/data/ljspeech/wavs/LJ015-0024.npy -tests/data/ljspeech/wavs/LJ002-0075.wav|tests/data/ljspeech/wavs/LJ002-0075.npy -tests/data/ljspeech/wavs/LJ046-0224.wav|tests/data/ljspeech/wavs/LJ046-0224.npy -tests/data/ljspeech/wavs/LJ032-0030.wav|tests/data/ljspeech/wavs/LJ032-0030.npy -tests/data/ljspeech/wavs/LJ015-0075.wav|tests/data/ljspeech/wavs/LJ015-0075.npy -tests/data/ljspeech/wavs/LJ014-0221.wav|tests/data/ljspeech/wavs/LJ014-0221.npy -tests/data/ljspeech/wavs/LJ035-0036.wav|tests/data/ljspeech/wavs/LJ035-0036.npy -tests/data/ljspeech/wavs/LJ015-0256.wav|tests/data/ljspeech/wavs/LJ015-0256.npy -tests/data/ljspeech/wavs/LJ044-0081.wav|tests/data/ljspeech/wavs/LJ044-0081.npy -tests/data/ljspeech/wavs/LJ045-0011.wav|tests/data/ljspeech/wavs/LJ045-0011.npy -tests/data/ljspeech/wavs/LJ048-0128.wav|tests/data/ljspeech/wavs/LJ048-0128.npy -tests/data/ljspeech/wavs/LJ009-0198.wav|tests/data/ljspeech/wavs/LJ009-0198.npy -tests/data/ljspeech/wavs/LJ038-0147.wav|tests/data/ljspeech/wavs/LJ038-0147.npy -tests/data/ljspeech/wavs/LJ018-0249.wav|tests/data/ljspeech/wavs/LJ018-0249.npy -tests/data/ljspeech/wavs/LJ033-0072.wav|tests/data/ljspeech/wavs/LJ033-0072.npy -tests/data/ljspeech/wavs/LJ006-0304.wav|tests/data/ljspeech/wavs/LJ006-0304.npy -tests/data/ljspeech/wavs/LJ050-0056.wav|tests/data/ljspeech/wavs/LJ050-0056.npy -tests/data/ljspeech/wavs/LJ002-0022.wav|tests/data/ljspeech/wavs/LJ002-0022.npy -tests/data/ljspeech/wavs/LJ032-0028.wav|tests/data/ljspeech/wavs/LJ032-0028.npy -tests/data/ljspeech/wavs/LJ041-0081.wav|tests/data/ljspeech/wavs/LJ041-0081.npy -tests/data/ljspeech/wavs/LJ039-0071.wav|tests/data/ljspeech/wavs/LJ039-0071.npy -tests/data/ljspeech/wavs/LJ009-0189.wav|tests/data/ljspeech/wavs/LJ009-0189.npy -tests/data/ljspeech/wavs/LJ039-0050.wav|tests/data/ljspeech/wavs/LJ039-0050.npy -tests/data/ljspeech/wavs/LJ005-0072.wav|tests/data/ljspeech/wavs/LJ005-0072.npy -tests/data/ljspeech/wavs/LJ029-0143.wav|tests/data/ljspeech/wavs/LJ029-0143.npy -tests/data/ljspeech/wavs/LJ019-0173.wav|tests/data/ljspeech/wavs/LJ019-0173.npy -tests/data/ljspeech/wavs/LJ006-0262.wav|tests/data/ljspeech/wavs/LJ006-0262.npy -tests/data/ljspeech/wavs/LJ030-0207.wav|tests/data/ljspeech/wavs/LJ030-0207.npy -tests/data/ljspeech/wavs/LJ042-0093.wav|tests/data/ljspeech/wavs/LJ042-0093.npy -tests/data/ljspeech/wavs/LJ019-0182.wav|tests/data/ljspeech/wavs/LJ019-0182.npy -tests/data/ljspeech/wavs/LJ005-0196.wav|tests/data/ljspeech/wavs/LJ005-0196.npy -tests/data/ljspeech/wavs/LJ014-0225.wav|tests/data/ljspeech/wavs/LJ014-0225.npy -tests/data/ljspeech/wavs/LJ049-0112.wav|tests/data/ljspeech/wavs/LJ049-0112.npy -tests/data/ljspeech/wavs/LJ042-0215.wav|tests/data/ljspeech/wavs/LJ042-0215.npy -tests/data/ljspeech/wavs/LJ038-0185.wav|tests/data/ljspeech/wavs/LJ038-0185.npy -tests/data/ljspeech/wavs/LJ042-0229.wav|tests/data/ljspeech/wavs/LJ042-0229.npy -tests/data/ljspeech/wavs/LJ015-0128.wav|tests/data/ljspeech/wavs/LJ015-0128.npy -tests/data/ljspeech/wavs/LJ026-0042.wav|tests/data/ljspeech/wavs/LJ026-0042.npy -tests/data/ljspeech/wavs/LJ014-0310.wav|tests/data/ljspeech/wavs/LJ014-0310.npy -tests/data/ljspeech/wavs/LJ009-0200.wav|tests/data/ljspeech/wavs/LJ009-0200.npy -tests/data/ljspeech/wavs/LJ025-0021.wav|tests/data/ljspeech/wavs/LJ025-0021.npy -tests/data/ljspeech/wavs/LJ028-0456.wav|tests/data/ljspeech/wavs/LJ028-0456.npy -tests/data/ljspeech/wavs/LJ028-0117.wav|tests/data/ljspeech/wavs/LJ028-0117.npy -tests/data/ljspeech/wavs/LJ028-0163.wav|tests/data/ljspeech/wavs/LJ028-0163.npy -tests/data/ljspeech/wavs/LJ004-0213.wav|tests/data/ljspeech/wavs/LJ004-0213.npy -tests/data/ljspeech/wavs/LJ012-0126.wav|tests/data/ljspeech/wavs/LJ012-0126.npy -tests/data/ljspeech/wavs/LJ024-0095.wav|tests/data/ljspeech/wavs/LJ024-0095.npy -tests/data/ljspeech/wavs/LJ015-0048.wav|tests/data/ljspeech/wavs/LJ015-0048.npy -tests/data/ljspeech/wavs/LJ010-0153.wav|tests/data/ljspeech/wavs/LJ010-0153.npy -tests/data/ljspeech/wavs/LJ001-0031.wav|tests/data/ljspeech/wavs/LJ001-0031.npy -tests/data/ljspeech/wavs/LJ005-0191.wav|tests/data/ljspeech/wavs/LJ005-0191.npy -tests/data/ljspeech/wavs/LJ038-0042.wav|tests/data/ljspeech/wavs/LJ038-0042.npy -tests/data/ljspeech/wavs/LJ041-0176.wav|tests/data/ljspeech/wavs/LJ041-0176.npy -tests/data/ljspeech/wavs/LJ007-0164.wav|tests/data/ljspeech/wavs/LJ007-0164.npy -tests/data/ljspeech/wavs/LJ027-0030.wav|tests/data/ljspeech/wavs/LJ027-0030.npy -tests/data/ljspeech/wavs/LJ027-0164.wav|tests/data/ljspeech/wavs/LJ027-0164.npy -tests/data/ljspeech/wavs/LJ016-0346.wav|tests/data/ljspeech/wavs/LJ016-0346.npy -tests/data/ljspeech/wavs/LJ021-0157.wav|tests/data/ljspeech/wavs/LJ021-0157.npy -tests/data/ljspeech/wavs/LJ007-0159.wav|tests/data/ljspeech/wavs/LJ007-0159.npy -tests/data/ljspeech/wavs/LJ019-0296.wav|tests/data/ljspeech/wavs/LJ019-0296.npy -tests/data/ljspeech/wavs/LJ019-0220.wav|tests/data/ljspeech/wavs/LJ019-0220.npy -tests/data/ljspeech/wavs/LJ002-0324.wav|tests/data/ljspeech/wavs/LJ002-0324.npy -tests/data/ljspeech/wavs/LJ026-0156.wav|tests/data/ljspeech/wavs/LJ026-0156.npy -tests/data/ljspeech/wavs/LJ050-0130.wav|tests/data/ljspeech/wavs/LJ050-0130.npy -tests/data/ljspeech/wavs/LJ037-0047.wav|tests/data/ljspeech/wavs/LJ037-0047.npy -tests/data/ljspeech/wavs/LJ031-0138.wav|tests/data/ljspeech/wavs/LJ031-0138.npy -tests/data/ljspeech/wavs/LJ019-0252.wav|tests/data/ljspeech/wavs/LJ019-0252.npy -tests/data/ljspeech/wavs/LJ050-0117.wav|tests/data/ljspeech/wavs/LJ050-0117.npy -tests/data/ljspeech/wavs/LJ028-0172.wav|tests/data/ljspeech/wavs/LJ028-0172.npy -tests/data/ljspeech/wavs/LJ033-0211.wav|tests/data/ljspeech/wavs/LJ033-0211.npy -tests/data/ljspeech/wavs/LJ013-0200.wav|tests/data/ljspeech/wavs/LJ013-0200.npy -tests/data/ljspeech/wavs/LJ010-0092.wav|tests/data/ljspeech/wavs/LJ010-0092.npy -tests/data/ljspeech/wavs/LJ010-0105.wav|tests/data/ljspeech/wavs/LJ010-0105.npy -tests/data/ljspeech/wavs/LJ014-0223.wav|tests/data/ljspeech/wavs/LJ014-0223.npy -tests/data/ljspeech/wavs/LJ015-0016.wav|tests/data/ljspeech/wavs/LJ015-0016.npy -tests/data/ljspeech/wavs/LJ034-0130.wav|tests/data/ljspeech/wavs/LJ034-0130.npy -tests/data/ljspeech/wavs/LJ012-0176.wav|tests/data/ljspeech/wavs/LJ012-0176.npy -tests/data/ljspeech/wavs/LJ006-0059.wav|tests/data/ljspeech/wavs/LJ006-0059.npy -tests/data/ljspeech/wavs/LJ035-0142.wav|tests/data/ljspeech/wavs/LJ035-0142.npy -tests/data/ljspeech/wavs/LJ014-0264.wav|tests/data/ljspeech/wavs/LJ014-0264.npy -tests/data/ljspeech/wavs/LJ043-0036.wav|tests/data/ljspeech/wavs/LJ043-0036.npy -tests/data/ljspeech/wavs/LJ044-0120.wav|tests/data/ljspeech/wavs/LJ044-0120.npy -tests/data/ljspeech/wavs/LJ014-0301.wav|tests/data/ljspeech/wavs/LJ014-0301.npy -tests/data/ljspeech/wavs/LJ021-0001.wav|tests/data/ljspeech/wavs/LJ021-0001.npy -tests/data/ljspeech/wavs/LJ023-0001.wav|tests/data/ljspeech/wavs/LJ023-0001.npy -tests/data/ljspeech/wavs/LJ022-0145.wav|tests/data/ljspeech/wavs/LJ022-0145.npy -tests/data/ljspeech/wavs/LJ023-0115.wav|tests/data/ljspeech/wavs/LJ023-0115.npy -tests/data/ljspeech/wavs/LJ025-0048.wav|tests/data/ljspeech/wavs/LJ025-0048.npy -tests/data/ljspeech/wavs/LJ023-0042.wav|tests/data/ljspeech/wavs/LJ023-0042.npy -tests/data/ljspeech/wavs/LJ049-0046.wav|tests/data/ljspeech/wavs/LJ049-0046.npy -tests/data/ljspeech/wavs/LJ050-0112.wav|tests/data/ljspeech/wavs/LJ050-0112.npy -tests/data/ljspeech/wavs/LJ036-0016.wav|tests/data/ljspeech/wavs/LJ036-0016.npy -tests/data/ljspeech/wavs/LJ033-0209.wav|tests/data/ljspeech/wavs/LJ033-0209.npy -tests/data/ljspeech/wavs/LJ010-0155.wav|tests/data/ljspeech/wavs/LJ010-0155.npy -tests/data/ljspeech/wavs/LJ007-0218.wav|tests/data/ljspeech/wavs/LJ007-0218.npy -tests/data/ljspeech/wavs/LJ035-0197.wav|tests/data/ljspeech/wavs/LJ035-0197.npy -tests/data/ljspeech/wavs/LJ011-0175.wav|tests/data/ljspeech/wavs/LJ011-0175.npy -tests/data/ljspeech/wavs/LJ038-0123.wav|tests/data/ljspeech/wavs/LJ038-0123.npy -tests/data/ljspeech/wavs/LJ040-0079.wav|tests/data/ljspeech/wavs/LJ040-0079.npy -tests/data/ljspeech/wavs/LJ014-0322.wav|tests/data/ljspeech/wavs/LJ014-0322.npy -tests/data/ljspeech/wavs/LJ035-0027.wav|tests/data/ljspeech/wavs/LJ035-0027.npy -tests/data/ljspeech/wavs/LJ013-0132.wav|tests/data/ljspeech/wavs/LJ013-0132.npy -tests/data/ljspeech/wavs/LJ035-0181.wav|tests/data/ljspeech/wavs/LJ035-0181.npy -tests/data/ljspeech/wavs/LJ010-0221.wav|tests/data/ljspeech/wavs/LJ010-0221.npy -tests/data/ljspeech/wavs/LJ050-0133.wav|tests/data/ljspeech/wavs/LJ050-0133.npy -tests/data/ljspeech/wavs/LJ012-0105.wav|tests/data/ljspeech/wavs/LJ012-0105.npy -tests/data/ljspeech/wavs/LJ028-0204.wav|tests/data/ljspeech/wavs/LJ028-0204.npy -tests/data/ljspeech/wavs/LJ003-0147.wav|tests/data/ljspeech/wavs/LJ003-0147.npy -tests/data/ljspeech/wavs/LJ031-0081.wav|tests/data/ljspeech/wavs/LJ031-0081.npy -tests/data/ljspeech/wavs/LJ008-0147.wav|tests/data/ljspeech/wavs/LJ008-0147.npy -tests/data/ljspeech/wavs/LJ011-0273.wav|tests/data/ljspeech/wavs/LJ011-0273.npy -tests/data/ljspeech/wavs/LJ015-0163.wav|tests/data/ljspeech/wavs/LJ015-0163.npy -tests/data/ljspeech/wavs/LJ042-0073.wav|tests/data/ljspeech/wavs/LJ042-0073.npy -tests/data/ljspeech/wavs/LJ026-0145.wav|tests/data/ljspeech/wavs/LJ026-0145.npy -tests/data/ljspeech/wavs/LJ040-0030.wav|tests/data/ljspeech/wavs/LJ040-0030.npy -tests/data/ljspeech/wavs/LJ023-0043.wav|tests/data/ljspeech/wavs/LJ023-0043.npy -tests/data/ljspeech/wavs/LJ022-0069.wav|tests/data/ljspeech/wavs/LJ022-0069.npy -tests/data/ljspeech/wavs/LJ025-0040.wav|tests/data/ljspeech/wavs/LJ025-0040.npy -tests/data/ljspeech/wavs/LJ035-0050.wav|tests/data/ljspeech/wavs/LJ035-0050.npy -tests/data/ljspeech/wavs/LJ039-0161.wav|tests/data/ljspeech/wavs/LJ039-0161.npy -tests/data/ljspeech/wavs/LJ047-0119.wav|tests/data/ljspeech/wavs/LJ047-0119.npy -tests/data/ljspeech/wavs/LJ042-0167.wav|tests/data/ljspeech/wavs/LJ042-0167.npy -tests/data/ljspeech/wavs/LJ013-0089.wav|tests/data/ljspeech/wavs/LJ013-0089.npy -tests/data/ljspeech/wavs/LJ005-0151.wav|tests/data/ljspeech/wavs/LJ005-0151.npy -tests/data/ljspeech/wavs/LJ023-0056.wav|tests/data/ljspeech/wavs/LJ023-0056.npy -tests/data/ljspeech/wavs/LJ035-0095.wav|tests/data/ljspeech/wavs/LJ035-0095.npy -tests/data/ljspeech/wavs/LJ015-0144.wav|tests/data/ljspeech/wavs/LJ015-0144.npy -tests/data/ljspeech/wavs/LJ049-0157.wav|tests/data/ljspeech/wavs/LJ049-0157.npy -tests/data/ljspeech/wavs/LJ019-0032.wav|tests/data/ljspeech/wavs/LJ019-0032.npy -tests/data/ljspeech/wavs/LJ025-0141.wav|tests/data/ljspeech/wavs/LJ025-0141.npy -tests/data/ljspeech/wavs/LJ047-0033.wav|tests/data/ljspeech/wavs/LJ047-0033.npy -tests/data/ljspeech/wavs/LJ016-0236.wav|tests/data/ljspeech/wavs/LJ016-0236.npy -tests/data/ljspeech/wavs/LJ050-0080.wav|tests/data/ljspeech/wavs/LJ050-0080.npy -tests/data/ljspeech/wavs/LJ015-0169.wav|tests/data/ljspeech/wavs/LJ015-0169.npy -tests/data/ljspeech/wavs/LJ016-0219.wav|tests/data/ljspeech/wavs/LJ016-0219.npy -tests/data/ljspeech/wavs/LJ028-0429.wav|tests/data/ljspeech/wavs/LJ028-0429.npy -tests/data/ljspeech/wavs/LJ048-0203.wav|tests/data/ljspeech/wavs/LJ048-0203.npy -tests/data/ljspeech/wavs/LJ024-0124.wav|tests/data/ljspeech/wavs/LJ024-0124.npy -tests/data/ljspeech/wavs/LJ016-0166.wav|tests/data/ljspeech/wavs/LJ016-0166.npy -tests/data/ljspeech/wavs/LJ019-0175.wav|tests/data/ljspeech/wavs/LJ019-0175.npy -tests/data/ljspeech/wavs/LJ009-0146.wav|tests/data/ljspeech/wavs/LJ009-0146.npy -tests/data/ljspeech/wavs/LJ008-0007.wav|tests/data/ljspeech/wavs/LJ008-0007.npy -tests/data/ljspeech/wavs/LJ017-0020.wav|tests/data/ljspeech/wavs/LJ017-0020.npy -tests/data/ljspeech/wavs/LJ028-0241.wav|tests/data/ljspeech/wavs/LJ028-0241.npy -tests/data/ljspeech/wavs/LJ037-0204.wav|tests/data/ljspeech/wavs/LJ037-0204.npy -tests/data/ljspeech/wavs/LJ018-0315.wav|tests/data/ljspeech/wavs/LJ018-0315.npy -tests/data/ljspeech/wavs/LJ038-0305.wav|tests/data/ljspeech/wavs/LJ038-0305.npy -tests/data/ljspeech/wavs/LJ036-0098.wav|tests/data/ljspeech/wavs/LJ036-0098.npy -tests/data/ljspeech/wavs/LJ022-0001.wav|tests/data/ljspeech/wavs/LJ022-0001.npy -tests/data/ljspeech/wavs/LJ017-0083.wav|tests/data/ljspeech/wavs/LJ017-0083.npy -tests/data/ljspeech/wavs/LJ016-0254.wav|tests/data/ljspeech/wavs/LJ016-0254.npy -tests/data/ljspeech/wavs/LJ006-0213.wav|tests/data/ljspeech/wavs/LJ006-0213.npy -tests/data/ljspeech/wavs/LJ025-0086.wav|tests/data/ljspeech/wavs/LJ025-0086.npy -tests/data/ljspeech/wavs/LJ031-0087.wav|tests/data/ljspeech/wavs/LJ031-0087.npy -tests/data/ljspeech/wavs/LJ044-0178.wav|tests/data/ljspeech/wavs/LJ044-0178.npy -tests/data/ljspeech/wavs/LJ043-0083.wav|tests/data/ljspeech/wavs/LJ043-0083.npy -tests/data/ljspeech/wavs/LJ048-0024.wav|tests/data/ljspeech/wavs/LJ048-0024.npy -tests/data/ljspeech/wavs/LJ043-0148.wav|tests/data/ljspeech/wavs/LJ043-0148.npy -tests/data/ljspeech/wavs/LJ019-0161.wav|tests/data/ljspeech/wavs/LJ019-0161.npy -tests/data/ljspeech/wavs/LJ029-0131.wav|tests/data/ljspeech/wavs/LJ029-0131.npy -tests/data/ljspeech/wavs/LJ045-0152.wav|tests/data/ljspeech/wavs/LJ045-0152.npy -tests/data/ljspeech/wavs/LJ028-0007.wav|tests/data/ljspeech/wavs/LJ028-0007.npy -tests/data/ljspeech/wavs/LJ018-0006.wav|tests/data/ljspeech/wavs/LJ018-0006.npy -tests/data/ljspeech/wavs/LJ008-0065.wav|tests/data/ljspeech/wavs/LJ008-0065.npy -tests/data/ljspeech/wavs/LJ018-0136.wav|tests/data/ljspeech/wavs/LJ018-0136.npy -tests/data/ljspeech/wavs/LJ033-0133.wav|tests/data/ljspeech/wavs/LJ033-0133.npy -tests/data/ljspeech/wavs/LJ037-0117.wav|tests/data/ljspeech/wavs/LJ037-0117.npy -tests/data/ljspeech/wavs/LJ040-0214.wav|tests/data/ljspeech/wavs/LJ040-0214.npy -tests/data/ljspeech/wavs/LJ022-0067.wav|tests/data/ljspeech/wavs/LJ022-0067.npy -tests/data/ljspeech/wavs/LJ023-0124.wav|tests/data/ljspeech/wavs/LJ023-0124.npy -tests/data/ljspeech/wavs/LJ011-0196.wav|tests/data/ljspeech/wavs/LJ011-0196.npy -tests/data/ljspeech/wavs/LJ017-0136.wav|tests/data/ljspeech/wavs/LJ017-0136.npy -tests/data/ljspeech/wavs/LJ022-0010.wav|tests/data/ljspeech/wavs/LJ022-0010.npy -tests/data/ljspeech/wavs/LJ004-0210.wav|tests/data/ljspeech/wavs/LJ004-0210.npy -tests/data/ljspeech/wavs/LJ021-0027.wav|tests/data/ljspeech/wavs/LJ021-0027.npy -tests/data/ljspeech/wavs/LJ035-0166.wav|tests/data/ljspeech/wavs/LJ035-0166.npy -tests/data/ljspeech/wavs/LJ032-0089.wav|tests/data/ljspeech/wavs/LJ032-0089.npy -tests/data/ljspeech/wavs/LJ031-0023.wav|tests/data/ljspeech/wavs/LJ031-0023.npy -tests/data/ljspeech/wavs/LJ019-0307.wav|tests/data/ljspeech/wavs/LJ019-0307.npy -tests/data/ljspeech/wavs/LJ032-0086.wav|tests/data/ljspeech/wavs/LJ032-0086.npy -tests/data/ljspeech/wavs/LJ036-0160.wav|tests/data/ljspeech/wavs/LJ036-0160.npy -tests/data/ljspeech/wavs/LJ032-0087.wav|tests/data/ljspeech/wavs/LJ032-0087.npy -tests/data/ljspeech/wavs/LJ030-0063.wav|tests/data/ljspeech/wavs/LJ030-0063.npy -tests/data/ljspeech/wavs/LJ028-0273.wav|tests/data/ljspeech/wavs/LJ028-0273.npy -tests/data/ljspeech/wavs/LJ022-0061.wav|tests/data/ljspeech/wavs/LJ022-0061.npy -tests/data/ljspeech/wavs/LJ036-0075.wav|tests/data/ljspeech/wavs/LJ036-0075.npy -tests/data/ljspeech/wavs/LJ028-0034.wav|tests/data/ljspeech/wavs/LJ028-0034.npy -tests/data/ljspeech/wavs/LJ042-0082.wav|tests/data/ljspeech/wavs/LJ042-0082.npy -tests/data/ljspeech/wavs/LJ018-0295.wav|tests/data/ljspeech/wavs/LJ018-0295.npy -tests/data/ljspeech/wavs/LJ028-0371.wav|tests/data/ljspeech/wavs/LJ028-0371.npy -tests/data/ljspeech/wavs/LJ004-0176.wav|tests/data/ljspeech/wavs/LJ004-0176.npy -tests/data/ljspeech/wavs/LJ048-0282.wav|tests/data/ljspeech/wavs/LJ048-0282.npy -tests/data/ljspeech/wavs/LJ014-0262.wav|tests/data/ljspeech/wavs/LJ014-0262.npy -tests/data/ljspeech/wavs/LJ031-0083.wav|tests/data/ljspeech/wavs/LJ031-0083.npy -tests/data/ljspeech/wavs/LJ050-0014.wav|tests/data/ljspeech/wavs/LJ050-0014.npy -tests/data/ljspeech/wavs/LJ035-0112.wav|tests/data/ljspeech/wavs/LJ035-0112.npy -tests/data/ljspeech/wavs/LJ020-0014.wav|tests/data/ljspeech/wavs/LJ020-0014.npy -tests/data/ljspeech/wavs/LJ019-0330.wav|tests/data/ljspeech/wavs/LJ019-0330.npy -tests/data/ljspeech/wavs/LJ011-0179.wav|tests/data/ljspeech/wavs/LJ011-0179.npy -tests/data/ljspeech/wavs/LJ028-0468.wav|tests/data/ljspeech/wavs/LJ028-0468.npy -tests/data/ljspeech/wavs/LJ050-0007.wav|tests/data/ljspeech/wavs/LJ050-0007.npy -tests/data/ljspeech/wavs/LJ005-0183.wav|tests/data/ljspeech/wavs/LJ005-0183.npy -tests/data/ljspeech/wavs/LJ020-0051.wav|tests/data/ljspeech/wavs/LJ020-0051.npy -tests/data/ljspeech/wavs/LJ025-0116.wav|tests/data/ljspeech/wavs/LJ025-0116.npy -tests/data/ljspeech/wavs/LJ010-0163.wav|tests/data/ljspeech/wavs/LJ010-0163.npy -tests/data/ljspeech/wavs/LJ010-0309.wav|tests/data/ljspeech/wavs/LJ010-0309.npy -tests/data/ljspeech/wavs/LJ016-0201.wav|tests/data/ljspeech/wavs/LJ016-0201.npy -tests/data/ljspeech/wavs/LJ030-0181.wav|tests/data/ljspeech/wavs/LJ030-0181.npy -tests/data/ljspeech/wavs/LJ031-0009.wav|tests/data/ljspeech/wavs/LJ031-0009.npy -tests/data/ljspeech/wavs/LJ046-0183.wav|tests/data/ljspeech/wavs/LJ046-0183.npy -tests/data/ljspeech/wavs/LJ010-0047.wav|tests/data/ljspeech/wavs/LJ010-0047.npy -tests/data/ljspeech/wavs/LJ027-0071.wav|tests/data/ljspeech/wavs/LJ027-0071.npy -tests/data/ljspeech/wavs/LJ018-0051.wav|tests/data/ljspeech/wavs/LJ018-0051.npy -tests/data/ljspeech/wavs/LJ036-0050.wav|tests/data/ljspeech/wavs/LJ036-0050.npy -tests/data/ljspeech/wavs/LJ040-0207.wav|tests/data/ljspeech/wavs/LJ040-0207.npy -tests/data/ljspeech/wavs/LJ019-0006.wav|tests/data/ljspeech/wavs/LJ019-0006.npy -tests/data/ljspeech/wavs/LJ014-0176.wav|tests/data/ljspeech/wavs/LJ014-0176.npy -tests/data/ljspeech/wavs/LJ047-0235.wav|tests/data/ljspeech/wavs/LJ047-0235.npy -tests/data/ljspeech/wavs/LJ006-0187.wav|tests/data/ljspeech/wavs/LJ006-0187.npy -tests/data/ljspeech/wavs/LJ035-0009.wav|tests/data/ljspeech/wavs/LJ035-0009.npy -tests/data/ljspeech/wavs/LJ036-0213.wav|tests/data/ljspeech/wavs/LJ036-0213.npy -tests/data/ljspeech/wavs/LJ043-0114.wav|tests/data/ljspeech/wavs/LJ043-0114.npy -tests/data/ljspeech/wavs/LJ008-0080.wav|tests/data/ljspeech/wavs/LJ008-0080.npy -tests/data/ljspeech/wavs/LJ016-0383.wav|tests/data/ljspeech/wavs/LJ016-0383.npy -tests/data/ljspeech/wavs/LJ017-0214.wav|tests/data/ljspeech/wavs/LJ017-0214.npy -tests/data/ljspeech/wavs/LJ028-0317.wav|tests/data/ljspeech/wavs/LJ028-0317.npy -tests/data/ljspeech/wavs/LJ028-0297.wav|tests/data/ljspeech/wavs/LJ028-0297.npy -tests/data/ljspeech/wavs/LJ014-0107.wav|tests/data/ljspeech/wavs/LJ014-0107.npy -tests/data/ljspeech/wavs/LJ032-0010.wav|tests/data/ljspeech/wavs/LJ032-0010.npy -tests/data/ljspeech/wavs/LJ022-0125.wav|tests/data/ljspeech/wavs/LJ022-0125.npy -tests/data/ljspeech/wavs/LJ006-0078.wav|tests/data/ljspeech/wavs/LJ006-0078.npy -tests/data/ljspeech/wavs/LJ003-0216.wav|tests/data/ljspeech/wavs/LJ003-0216.npy -tests/data/ljspeech/wavs/LJ007-0127.wav|tests/data/ljspeech/wavs/LJ007-0127.npy -tests/data/ljspeech/wavs/LJ030-0224.wav|tests/data/ljspeech/wavs/LJ030-0224.npy -tests/data/ljspeech/wavs/LJ028-0142.wav|tests/data/ljspeech/wavs/LJ028-0142.npy -tests/data/ljspeech/wavs/LJ033-0048.wav|tests/data/ljspeech/wavs/LJ033-0048.npy -tests/data/ljspeech/wavs/LJ003-0345.wav|tests/data/ljspeech/wavs/LJ003-0345.npy -tests/data/ljspeech/wavs/LJ019-0100.wav|tests/data/ljspeech/wavs/LJ019-0100.npy -tests/data/ljspeech/wavs/LJ016-0400.wav|tests/data/ljspeech/wavs/LJ016-0400.npy -tests/data/ljspeech/wavs/LJ028-0004.wav|tests/data/ljspeech/wavs/LJ028-0004.npy -tests/data/ljspeech/wavs/LJ044-0175.wav|tests/data/ljspeech/wavs/LJ044-0175.npy -tests/data/ljspeech/wavs/LJ046-0021.wav|tests/data/ljspeech/wavs/LJ046-0021.npy -tests/data/ljspeech/wavs/LJ037-0185.wav|tests/data/ljspeech/wavs/LJ037-0185.npy -tests/data/ljspeech/wavs/LJ034-0055.wav|tests/data/ljspeech/wavs/LJ034-0055.npy -tests/data/ljspeech/wavs/LJ044-0073.wav|tests/data/ljspeech/wavs/LJ044-0073.npy -tests/data/ljspeech/wavs/LJ027-0075.wav|tests/data/ljspeech/wavs/LJ027-0075.npy -tests/data/ljspeech/wavs/LJ019-0071.wav|tests/data/ljspeech/wavs/LJ019-0071.npy -tests/data/ljspeech/wavs/LJ025-0173.wav|tests/data/ljspeech/wavs/LJ025-0173.npy -tests/data/ljspeech/wavs/LJ035-0156.wav|tests/data/ljspeech/wavs/LJ035-0156.npy -tests/data/ljspeech/wavs/LJ019-0115.wav|tests/data/ljspeech/wavs/LJ019-0115.npy -tests/data/ljspeech/wavs/LJ032-0237.wav|tests/data/ljspeech/wavs/LJ032-0237.npy -tests/data/ljspeech/wavs/LJ021-0084.wav|tests/data/ljspeech/wavs/LJ021-0084.npy -tests/data/ljspeech/wavs/LJ032-0020.wav|tests/data/ljspeech/wavs/LJ032-0020.npy -tests/data/ljspeech/wavs/LJ043-0129.wav|tests/data/ljspeech/wavs/LJ043-0129.npy -tests/data/ljspeech/wavs/LJ010-0014.wav|tests/data/ljspeech/wavs/LJ010-0014.npy -tests/data/ljspeech/wavs/LJ015-0137.wav|tests/data/ljspeech/wavs/LJ015-0137.npy -tests/data/ljspeech/wavs/LJ019-0286.wav|tests/data/ljspeech/wavs/LJ019-0286.npy -tests/data/ljspeech/wavs/LJ003-0324.wav|tests/data/ljspeech/wavs/LJ003-0324.npy -tests/data/ljspeech/wavs/LJ030-0237.wav|tests/data/ljspeech/wavs/LJ030-0237.npy -tests/data/ljspeech/wavs/LJ046-0010.wav|tests/data/ljspeech/wavs/LJ046-0010.npy -tests/data/ljspeech/wavs/LJ002-0300.wav|tests/data/ljspeech/wavs/LJ002-0300.npy -tests/data/ljspeech/wavs/LJ013-0182.wav|tests/data/ljspeech/wavs/LJ013-0182.npy -tests/data/ljspeech/wavs/LJ006-0055.wav|tests/data/ljspeech/wavs/LJ006-0055.npy -tests/data/ljspeech/wavs/LJ015-0188.wav|tests/data/ljspeech/wavs/LJ015-0188.npy -tests/data/ljspeech/wavs/LJ049-0161.wav|tests/data/ljspeech/wavs/LJ049-0161.npy -tests/data/ljspeech/wavs/LJ017-0276.wav|tests/data/ljspeech/wavs/LJ017-0276.npy -tests/data/ljspeech/wavs/LJ001-0113.wav|tests/data/ljspeech/wavs/LJ001-0113.npy -tests/data/ljspeech/wavs/LJ044-0150.wav|tests/data/ljspeech/wavs/LJ044-0150.npy -tests/data/ljspeech/wavs/LJ014-0099.wav|tests/data/ljspeech/wavs/LJ014-0099.npy -tests/data/ljspeech/wavs/LJ028-0514.wav|tests/data/ljspeech/wavs/LJ028-0514.npy -tests/data/ljspeech/wavs/LJ028-0104.wav|tests/data/ljspeech/wavs/LJ028-0104.npy -tests/data/ljspeech/wavs/LJ003-0064.wav|tests/data/ljspeech/wavs/LJ003-0064.npy -tests/data/ljspeech/wavs/LJ002-0013.wav|tests/data/ljspeech/wavs/LJ002-0013.npy -tests/data/ljspeech/wavs/LJ040-0235.wav|tests/data/ljspeech/wavs/LJ040-0235.npy -tests/data/ljspeech/wavs/LJ039-0135.wav|tests/data/ljspeech/wavs/LJ039-0135.npy -tests/data/ljspeech/wavs/LJ014-0233.wav|tests/data/ljspeech/wavs/LJ014-0233.npy -tests/data/ljspeech/wavs/LJ048-0073.wav|tests/data/ljspeech/wavs/LJ048-0073.npy -tests/data/ljspeech/wavs/LJ036-0196.wav|tests/data/ljspeech/wavs/LJ036-0196.npy -tests/data/ljspeech/wavs/LJ047-0028.wav|tests/data/ljspeech/wavs/LJ047-0028.npy -tests/data/ljspeech/wavs/LJ031-0035.wav|tests/data/ljspeech/wavs/LJ031-0035.npy -tests/data/ljspeech/wavs/LJ046-0126.wav|tests/data/ljspeech/wavs/LJ046-0126.npy -tests/data/ljspeech/wavs/LJ018-0125.wav|tests/data/ljspeech/wavs/LJ018-0125.npy -tests/data/ljspeech/wavs/LJ026-0083.wav|tests/data/ljspeech/wavs/LJ026-0083.npy -tests/data/ljspeech/wavs/LJ018-0349.wav|tests/data/ljspeech/wavs/LJ018-0349.npy -tests/data/ljspeech/wavs/LJ042-0240.wav|tests/data/ljspeech/wavs/LJ042-0240.npy -tests/data/ljspeech/wavs/LJ022-0120.wav|tests/data/ljspeech/wavs/LJ022-0120.npy -tests/data/ljspeech/wavs/LJ030-0088.wav|tests/data/ljspeech/wavs/LJ030-0088.npy -tests/data/ljspeech/wavs/LJ047-0042.wav|tests/data/ljspeech/wavs/LJ047-0042.npy -tests/data/ljspeech/wavs/LJ039-0039.wav|tests/data/ljspeech/wavs/LJ039-0039.npy -tests/data/ljspeech/wavs/LJ042-0121.wav|tests/data/ljspeech/wavs/LJ042-0121.npy -tests/data/ljspeech/wavs/LJ011-0168.wav|tests/data/ljspeech/wavs/LJ011-0168.npy -tests/data/ljspeech/wavs/LJ028-0356.wav|tests/data/ljspeech/wavs/LJ028-0356.npy -tests/data/ljspeech/wavs/LJ028-0178.wav|tests/data/ljspeech/wavs/LJ028-0178.npy -tests/data/ljspeech/wavs/LJ018-0200.wav|tests/data/ljspeech/wavs/LJ018-0200.npy -tests/data/ljspeech/wavs/LJ016-0331.wav|tests/data/ljspeech/wavs/LJ016-0331.npy -tests/data/ljspeech/wavs/LJ019-0227.wav|tests/data/ljspeech/wavs/LJ019-0227.npy -tests/data/ljspeech/wavs/LJ007-0181.wav|tests/data/ljspeech/wavs/LJ007-0181.npy -tests/data/ljspeech/wavs/LJ034-0193.wav|tests/data/ljspeech/wavs/LJ034-0193.npy -tests/data/ljspeech/wavs/LJ026-0030.wav|tests/data/ljspeech/wavs/LJ026-0030.npy -tests/data/ljspeech/wavs/LJ018-0187.wav|tests/data/ljspeech/wavs/LJ018-0187.npy -tests/data/ljspeech/wavs/LJ041-0172.wav|tests/data/ljspeech/wavs/LJ041-0172.npy -tests/data/ljspeech/wavs/LJ003-0343.wav|tests/data/ljspeech/wavs/LJ003-0343.npy -tests/data/ljspeech/wavs/LJ009-0228.wav|tests/data/ljspeech/wavs/LJ009-0228.npy -tests/data/ljspeech/wavs/LJ001-0046.wav|tests/data/ljspeech/wavs/LJ001-0046.npy -tests/data/ljspeech/wavs/LJ030-0196.wav|tests/data/ljspeech/wavs/LJ030-0196.npy -tests/data/ljspeech/wavs/LJ036-0017.wav|tests/data/ljspeech/wavs/LJ036-0017.npy -tests/data/ljspeech/wavs/LJ034-0196.wav|tests/data/ljspeech/wavs/LJ034-0196.npy -tests/data/ljspeech/wavs/LJ026-0120.wav|tests/data/ljspeech/wavs/LJ026-0120.npy -tests/data/ljspeech/wavs/LJ002-0081.wav|tests/data/ljspeech/wavs/LJ002-0081.npy -tests/data/ljspeech/wavs/LJ037-0009.wav|tests/data/ljspeech/wavs/LJ037-0009.npy -tests/data/ljspeech/wavs/LJ014-0078.wav|tests/data/ljspeech/wavs/LJ014-0078.npy -tests/data/ljspeech/wavs/LJ026-0020.wav|tests/data/ljspeech/wavs/LJ026-0020.npy -tests/data/ljspeech/wavs/LJ033-0154.wav|tests/data/ljspeech/wavs/LJ033-0154.npy -tests/data/ljspeech/wavs/LJ016-0403.wav|tests/data/ljspeech/wavs/LJ016-0403.npy -tests/data/ljspeech/wavs/LJ011-0141.wav|tests/data/ljspeech/wavs/LJ011-0141.npy -tests/data/ljspeech/wavs/LJ010-0184.wav|tests/data/ljspeech/wavs/LJ010-0184.npy -tests/data/ljspeech/wavs/LJ011-0104.wav|tests/data/ljspeech/wavs/LJ011-0104.npy -tests/data/ljspeech/wavs/LJ001-0146.wav|tests/data/ljspeech/wavs/LJ001-0146.npy -tests/data/ljspeech/wavs/LJ010-0204.wav|tests/data/ljspeech/wavs/LJ010-0204.npy -tests/data/ljspeech/wavs/LJ036-0073.wav|tests/data/ljspeech/wavs/LJ036-0073.npy -tests/data/ljspeech/wavs/LJ018-0162.wav|tests/data/ljspeech/wavs/LJ018-0162.npy -tests/data/ljspeech/wavs/LJ034-0107.wav|tests/data/ljspeech/wavs/LJ034-0107.npy -tests/data/ljspeech/wavs/LJ045-0217.wav|tests/data/ljspeech/wavs/LJ045-0217.npy -tests/data/ljspeech/wavs/LJ008-0311.wav|tests/data/ljspeech/wavs/LJ008-0311.npy -tests/data/ljspeech/wavs/LJ032-0085.wav|tests/data/ljspeech/wavs/LJ032-0085.npy -tests/data/ljspeech/wavs/LJ012-0192.wav|tests/data/ljspeech/wavs/LJ012-0192.npy -tests/data/ljspeech/wavs/LJ035-0052.wav|tests/data/ljspeech/wavs/LJ035-0052.npy -tests/data/ljspeech/wavs/LJ014-0074.wav|tests/data/ljspeech/wavs/LJ014-0074.npy -tests/data/ljspeech/wavs/LJ041-0028.wav|tests/data/ljspeech/wavs/LJ041-0028.npy -tests/data/ljspeech/wavs/LJ005-0069.wav|tests/data/ljspeech/wavs/LJ005-0069.npy -tests/data/ljspeech/wavs/LJ007-0068.wav|tests/data/ljspeech/wavs/LJ007-0068.npy -tests/data/ljspeech/wavs/LJ016-0385.wav|tests/data/ljspeech/wavs/LJ016-0385.npy -tests/data/ljspeech/wavs/LJ028-0285.wav|tests/data/ljspeech/wavs/LJ028-0285.npy -tests/data/ljspeech/wavs/LJ013-0025.wav|tests/data/ljspeech/wavs/LJ013-0025.npy -tests/data/ljspeech/wavs/LJ018-0075.wav|tests/data/ljspeech/wavs/LJ018-0075.npy -tests/data/ljspeech/wavs/LJ003-0009.wav|tests/data/ljspeech/wavs/LJ003-0009.npy -tests/data/ljspeech/wavs/LJ010-0307.wav|tests/data/ljspeech/wavs/LJ010-0307.npy -tests/data/ljspeech/wavs/LJ039-0204.wav|tests/data/ljspeech/wavs/LJ039-0204.npy -tests/data/ljspeech/wavs/LJ041-0150.wav|tests/data/ljspeech/wavs/LJ041-0150.npy -tests/data/ljspeech/wavs/LJ039-0206.wav|tests/data/ljspeech/wavs/LJ039-0206.npy -tests/data/ljspeech/wavs/LJ043-0186.wav|tests/data/ljspeech/wavs/LJ043-0186.npy -tests/data/ljspeech/wavs/LJ050-0038.wav|tests/data/ljspeech/wavs/LJ050-0038.npy -tests/data/ljspeech/wavs/LJ047-0221.wav|tests/data/ljspeech/wavs/LJ047-0221.npy -tests/data/ljspeech/wavs/LJ023-0099.wav|tests/data/ljspeech/wavs/LJ023-0099.npy -tests/data/ljspeech/wavs/LJ030-0252.wav|tests/data/ljspeech/wavs/LJ030-0252.npy -tests/data/ljspeech/wavs/LJ025-0122.wav|tests/data/ljspeech/wavs/LJ025-0122.npy -tests/data/ljspeech/wavs/LJ048-0285.wav|tests/data/ljspeech/wavs/LJ048-0285.npy -tests/data/ljspeech/wavs/LJ035-0189.wav|tests/data/ljspeech/wavs/LJ035-0189.npy -tests/data/ljspeech/wavs/LJ045-0032.wav|tests/data/ljspeech/wavs/LJ045-0032.npy -tests/data/ljspeech/wavs/LJ024-0013.wav|tests/data/ljspeech/wavs/LJ024-0013.npy -tests/data/ljspeech/wavs/LJ005-0188.wav|tests/data/ljspeech/wavs/LJ005-0188.npy -tests/data/ljspeech/wavs/LJ009-0283.wav|tests/data/ljspeech/wavs/LJ009-0283.npy -tests/data/ljspeech/wavs/LJ046-0133.wav|tests/data/ljspeech/wavs/LJ046-0133.npy -tests/data/ljspeech/wavs/LJ042-0028.wav|tests/data/ljspeech/wavs/LJ042-0028.npy -tests/data/ljspeech/wavs/LJ015-0040.wav|tests/data/ljspeech/wavs/LJ015-0040.npy -tests/data/ljspeech/wavs/LJ043-0013.wav|tests/data/ljspeech/wavs/LJ043-0013.npy -tests/data/ljspeech/wavs/LJ003-0098.wav|tests/data/ljspeech/wavs/LJ003-0098.npy -tests/data/ljspeech/wavs/LJ028-0518.wav|tests/data/ljspeech/wavs/LJ028-0518.npy -tests/data/ljspeech/wavs/LJ016-0020.wav|tests/data/ljspeech/wavs/LJ016-0020.npy -tests/data/ljspeech/wavs/LJ025-0144.wav|tests/data/ljspeech/wavs/LJ025-0144.npy -tests/data/ljspeech/wavs/LJ017-0115.wav|tests/data/ljspeech/wavs/LJ017-0115.npy -tests/data/ljspeech/wavs/LJ022-0036.wav|tests/data/ljspeech/wavs/LJ022-0036.npy -tests/data/ljspeech/wavs/LJ006-0056.wav|tests/data/ljspeech/wavs/LJ006-0056.npy -tests/data/ljspeech/wavs/LJ039-0173.wav|tests/data/ljspeech/wavs/LJ039-0173.npy -tests/data/ljspeech/wavs/LJ008-0028.wav|tests/data/ljspeech/wavs/LJ008-0028.npy -tests/data/ljspeech/wavs/LJ049-0008.wav|tests/data/ljspeech/wavs/LJ049-0008.npy -tests/data/ljspeech/wavs/LJ003-0118.wav|tests/data/ljspeech/wavs/LJ003-0118.npy -tests/data/ljspeech/wavs/LJ013-0053.wav|tests/data/ljspeech/wavs/LJ013-0053.npy -tests/data/ljspeech/wavs/LJ037-0196.wav|tests/data/ljspeech/wavs/LJ037-0196.npy -tests/data/ljspeech/wavs/LJ033-0037.wav|tests/data/ljspeech/wavs/LJ033-0037.npy -tests/data/ljspeech/wavs/LJ010-0302.wav|tests/data/ljspeech/wavs/LJ010-0302.npy -tests/data/ljspeech/wavs/LJ041-0149.wav|tests/data/ljspeech/wavs/LJ041-0149.npy -tests/data/ljspeech/wavs/LJ004-0045.wav|tests/data/ljspeech/wavs/LJ004-0045.npy -tests/data/ljspeech/wavs/LJ004-0021.wav|tests/data/ljspeech/wavs/LJ004-0021.npy -tests/data/ljspeech/wavs/LJ039-0148.wav|tests/data/ljspeech/wavs/LJ039-0148.npy -tests/data/ljspeech/wavs/LJ023-0019.wav|tests/data/ljspeech/wavs/LJ023-0019.npy -tests/data/ljspeech/wavs/LJ003-0247.wav|tests/data/ljspeech/wavs/LJ003-0247.npy -tests/data/ljspeech/wavs/LJ019-0164.wav|tests/data/ljspeech/wavs/LJ019-0164.npy -tests/data/ljspeech/wavs/LJ029-0204.wav|tests/data/ljspeech/wavs/LJ029-0204.npy -tests/data/ljspeech/wavs/LJ013-0171.wav|tests/data/ljspeech/wavs/LJ013-0171.npy -tests/data/ljspeech/wavs/LJ010-0259.wav|tests/data/ljspeech/wavs/LJ010-0259.npy -tests/data/ljspeech/wavs/LJ034-0149.wav|tests/data/ljspeech/wavs/LJ034-0149.npy -tests/data/ljspeech/wavs/LJ024-0114.wav|tests/data/ljspeech/wavs/LJ024-0114.npy -tests/data/ljspeech/wavs/LJ027-0067.wav|tests/data/ljspeech/wavs/LJ027-0067.npy -tests/data/ljspeech/wavs/LJ015-0203.wav|tests/data/ljspeech/wavs/LJ015-0203.npy -tests/data/ljspeech/wavs/LJ028-0156.wav|tests/data/ljspeech/wavs/LJ028-0156.npy -tests/data/ljspeech/wavs/LJ035-0104.wav|tests/data/ljspeech/wavs/LJ035-0104.npy -tests/data/ljspeech/wavs/LJ030-0241.wav|tests/data/ljspeech/wavs/LJ030-0241.npy -tests/data/ljspeech/wavs/LJ050-0134.wav|tests/data/ljspeech/wavs/LJ050-0134.npy -tests/data/ljspeech/wavs/LJ028-0228.wav|tests/data/ljspeech/wavs/LJ028-0228.npy -tests/data/ljspeech/wavs/LJ019-0111.wav|tests/data/ljspeech/wavs/LJ019-0111.npy -tests/data/ljspeech/wavs/LJ004-0057.wav|tests/data/ljspeech/wavs/LJ004-0057.npy -tests/data/ljspeech/wavs/LJ017-0148.wav|tests/data/ljspeech/wavs/LJ017-0148.npy -tests/data/ljspeech/wavs/LJ050-0033.wav|tests/data/ljspeech/wavs/LJ050-0033.npy -tests/data/ljspeech/wavs/LJ019-0063.wav|tests/data/ljspeech/wavs/LJ019-0063.npy -tests/data/ljspeech/wavs/LJ020-0017.wav|tests/data/ljspeech/wavs/LJ020-0017.npy -tests/data/ljspeech/wavs/LJ035-0182.wav|tests/data/ljspeech/wavs/LJ035-0182.npy -tests/data/ljspeech/wavs/LJ006-0121.wav|tests/data/ljspeech/wavs/LJ006-0121.npy -tests/data/ljspeech/wavs/LJ028-0154.wav|tests/data/ljspeech/wavs/LJ028-0154.npy -tests/data/ljspeech/wavs/LJ015-0291.wav|tests/data/ljspeech/wavs/LJ015-0291.npy -tests/data/ljspeech/wavs/LJ002-0160.wav|tests/data/ljspeech/wavs/LJ002-0160.npy -tests/data/ljspeech/wavs/LJ008-0025.wav|tests/data/ljspeech/wavs/LJ008-0025.npy -tests/data/ljspeech/wavs/LJ016-0202.wav|tests/data/ljspeech/wavs/LJ016-0202.npy -tests/data/ljspeech/wavs/LJ004-0134.wav|tests/data/ljspeech/wavs/LJ004-0134.npy -tests/data/ljspeech/wavs/LJ018-0391.wav|tests/data/ljspeech/wavs/LJ018-0391.npy -tests/data/ljspeech/wavs/LJ042-0173.wav|tests/data/ljspeech/wavs/LJ042-0173.npy -tests/data/ljspeech/wavs/LJ016-0002.wav|tests/data/ljspeech/wavs/LJ016-0002.npy -tests/data/ljspeech/wavs/LJ019-0174.wav|tests/data/ljspeech/wavs/LJ019-0174.npy -tests/data/ljspeech/wavs/LJ050-0207.wav|tests/data/ljspeech/wavs/LJ050-0207.npy -tests/data/ljspeech/wavs/LJ038-0067.wav|tests/data/ljspeech/wavs/LJ038-0067.npy -tests/data/ljspeech/wavs/LJ048-0007.wav|tests/data/ljspeech/wavs/LJ048-0007.npy -tests/data/ljspeech/wavs/LJ005-0060.wav|tests/data/ljspeech/wavs/LJ005-0060.npy -tests/data/ljspeech/wavs/LJ001-0140.wav|tests/data/ljspeech/wavs/LJ001-0140.npy -tests/data/ljspeech/wavs/LJ012-0059.wav|tests/data/ljspeech/wavs/LJ012-0059.npy -tests/data/ljspeech/wavs/LJ015-0191.wav|tests/data/ljspeech/wavs/LJ015-0191.npy -tests/data/ljspeech/wavs/LJ017-0030.wav|tests/data/ljspeech/wavs/LJ017-0030.npy -tests/data/ljspeech/wavs/LJ021-0103.wav|tests/data/ljspeech/wavs/LJ021-0103.npy -tests/data/ljspeech/wavs/LJ017-0141.wav|tests/data/ljspeech/wavs/LJ017-0141.npy -tests/data/ljspeech/wavs/LJ007-0124.wav|tests/data/ljspeech/wavs/LJ007-0124.npy -tests/data/ljspeech/wavs/LJ017-0119.wav|tests/data/ljspeech/wavs/LJ017-0119.npy -tests/data/ljspeech/wavs/LJ038-0252.wav|tests/data/ljspeech/wavs/LJ038-0252.npy -tests/data/ljspeech/wavs/LJ012-0134.wav|tests/data/ljspeech/wavs/LJ012-0134.npy -tests/data/ljspeech/wavs/LJ001-0026.wav|tests/data/ljspeech/wavs/LJ001-0026.npy -tests/data/ljspeech/wavs/LJ016-0213.wav|tests/data/ljspeech/wavs/LJ016-0213.npy -tests/data/ljspeech/wavs/LJ004-0094.wav|tests/data/ljspeech/wavs/LJ004-0094.npy -tests/data/ljspeech/wavs/LJ028-0039.wav|tests/data/ljspeech/wavs/LJ028-0039.npy -tests/data/ljspeech/wavs/LJ028-0042.wav|tests/data/ljspeech/wavs/LJ028-0042.npy -tests/data/ljspeech/wavs/LJ050-0058.wav|tests/data/ljspeech/wavs/LJ050-0058.npy -tests/data/ljspeech/wavs/LJ014-0108.wav|tests/data/ljspeech/wavs/LJ014-0108.npy -tests/data/ljspeech/wavs/LJ015-0164.wav|tests/data/ljspeech/wavs/LJ015-0164.npy -tests/data/ljspeech/wavs/LJ040-0101.wav|tests/data/ljspeech/wavs/LJ040-0101.npy -tests/data/ljspeech/wavs/LJ009-0080.wav|tests/data/ljspeech/wavs/LJ009-0080.npy -tests/data/ljspeech/wavs/LJ039-0158.wav|tests/data/ljspeech/wavs/LJ039-0158.npy -tests/data/ljspeech/wavs/LJ035-0162.wav|tests/data/ljspeech/wavs/LJ035-0162.npy -tests/data/ljspeech/wavs/LJ019-0001.wav|tests/data/ljspeech/wavs/LJ019-0001.npy -tests/data/ljspeech/wavs/LJ030-0205.wav|tests/data/ljspeech/wavs/LJ030-0205.npy -tests/data/ljspeech/wavs/LJ039-0069.wav|tests/data/ljspeech/wavs/LJ039-0069.npy -tests/data/ljspeech/wavs/LJ037-0190.wav|tests/data/ljspeech/wavs/LJ037-0190.npy -tests/data/ljspeech/wavs/LJ002-0206.wav|tests/data/ljspeech/wavs/LJ002-0206.npy -tests/data/ljspeech/wavs/LJ042-0041.wav|tests/data/ljspeech/wavs/LJ042-0041.npy -tests/data/ljspeech/wavs/LJ032-0161.wav|tests/data/ljspeech/wavs/LJ032-0161.npy -tests/data/ljspeech/wavs/LJ024-0052.wav|tests/data/ljspeech/wavs/LJ024-0052.npy -tests/data/ljspeech/wavs/LJ027-0077.wav|tests/data/ljspeech/wavs/LJ027-0077.npy -tests/data/ljspeech/wavs/LJ010-0013.wav|tests/data/ljspeech/wavs/LJ010-0013.npy -tests/data/ljspeech/wavs/LJ013-0219.wav|tests/data/ljspeech/wavs/LJ013-0219.npy -tests/data/ljspeech/wavs/LJ047-0229.wav|tests/data/ljspeech/wavs/LJ047-0229.npy -tests/data/ljspeech/wavs/LJ015-0158.wav|tests/data/ljspeech/wavs/LJ015-0158.npy -tests/data/ljspeech/wavs/LJ022-0096.wav|tests/data/ljspeech/wavs/LJ022-0096.npy -tests/data/ljspeech/wavs/LJ006-0188.wav|tests/data/ljspeech/wavs/LJ006-0188.npy -tests/data/ljspeech/wavs/LJ014-0139.wav|tests/data/ljspeech/wavs/LJ014-0139.npy -tests/data/ljspeech/wavs/LJ015-0140.wav|tests/data/ljspeech/wavs/LJ015-0140.npy -tests/data/ljspeech/wavs/LJ003-0077.wav|tests/data/ljspeech/wavs/LJ003-0077.npy -tests/data/ljspeech/wavs/LJ020-0036.wav|tests/data/ljspeech/wavs/LJ020-0036.npy -tests/data/ljspeech/wavs/LJ042-0182.wav|tests/data/ljspeech/wavs/LJ042-0182.npy -tests/data/ljspeech/wavs/LJ013-0178.wav|tests/data/ljspeech/wavs/LJ013-0178.npy -tests/data/ljspeech/wavs/LJ009-0109.wav|tests/data/ljspeech/wavs/LJ009-0109.npy -tests/data/ljspeech/wavs/LJ019-0390.wav|tests/data/ljspeech/wavs/LJ019-0390.npy -tests/data/ljspeech/wavs/LJ046-0034.wav|tests/data/ljspeech/wavs/LJ046-0034.npy -tests/data/ljspeech/wavs/LJ029-0213.wav|tests/data/ljspeech/wavs/LJ029-0213.npy -tests/data/ljspeech/wavs/LJ040-0020.wav|tests/data/ljspeech/wavs/LJ040-0020.npy -tests/data/ljspeech/wavs/LJ002-0247.wav|tests/data/ljspeech/wavs/LJ002-0247.npy -tests/data/ljspeech/wavs/LJ008-0255.wav|tests/data/ljspeech/wavs/LJ008-0255.npy -tests/data/ljspeech/wavs/LJ028-0316.wav|tests/data/ljspeech/wavs/LJ028-0316.npy -tests/data/ljspeech/wavs/LJ010-0270.wav|tests/data/ljspeech/wavs/LJ010-0270.npy -tests/data/ljspeech/wavs/LJ037-0188.wav|tests/data/ljspeech/wavs/LJ037-0188.npy -tests/data/ljspeech/wavs/LJ038-0300.wav|tests/data/ljspeech/wavs/LJ038-0300.npy -tests/data/ljspeech/wavs/LJ049-0216.wav|tests/data/ljspeech/wavs/LJ049-0216.npy -tests/data/ljspeech/wavs/LJ031-0127.wav|tests/data/ljspeech/wavs/LJ031-0127.npy -tests/data/ljspeech/wavs/LJ041-0029.wav|tests/data/ljspeech/wavs/LJ041-0029.npy -tests/data/ljspeech/wavs/LJ005-0049.wav|tests/data/ljspeech/wavs/LJ005-0049.npy -tests/data/ljspeech/wavs/LJ036-0084.wav|tests/data/ljspeech/wavs/LJ036-0084.npy -tests/data/ljspeech/wavs/LJ041-0067.wav|tests/data/ljspeech/wavs/LJ041-0067.npy -tests/data/ljspeech/wavs/LJ023-0114.wav|tests/data/ljspeech/wavs/LJ023-0114.npy -tests/data/ljspeech/wavs/LJ010-0095.wav|tests/data/ljspeech/wavs/LJ010-0095.npy -tests/data/ljspeech/wavs/LJ011-0027.wav|tests/data/ljspeech/wavs/LJ011-0027.npy -tests/data/ljspeech/wavs/LJ028-0328.wav|tests/data/ljspeech/wavs/LJ028-0328.npy -tests/data/ljspeech/wavs/LJ004-0158.wav|tests/data/ljspeech/wavs/LJ004-0158.npy -tests/data/ljspeech/wavs/LJ045-0108.wav|tests/data/ljspeech/wavs/LJ045-0108.npy -tests/data/ljspeech/wavs/LJ047-0112.wav|tests/data/ljspeech/wavs/LJ047-0112.npy -tests/data/ljspeech/wavs/LJ022-0187.wav|tests/data/ljspeech/wavs/LJ022-0187.npy -tests/data/ljspeech/wavs/LJ003-0087.wav|tests/data/ljspeech/wavs/LJ003-0087.npy -tests/data/ljspeech/wavs/LJ047-0099.wav|tests/data/ljspeech/wavs/LJ047-0099.npy -tests/data/ljspeech/wavs/LJ024-0010.wav|tests/data/ljspeech/wavs/LJ024-0010.npy -tests/data/ljspeech/wavs/LJ049-0081.wav|tests/data/ljspeech/wavs/LJ049-0081.npy -tests/data/ljspeech/wavs/LJ014-0082.wav|tests/data/ljspeech/wavs/LJ014-0082.npy -tests/data/ljspeech/wavs/LJ017-0165.wav|tests/data/ljspeech/wavs/LJ017-0165.npy -tests/data/ljspeech/wavs/LJ028-0469.wav|tests/data/ljspeech/wavs/LJ028-0469.npy -tests/data/ljspeech/wavs/LJ010-0079.wav|tests/data/ljspeech/wavs/LJ010-0079.npy -tests/data/ljspeech/wavs/LJ012-0202.wav|tests/data/ljspeech/wavs/LJ012-0202.npy -tests/data/ljspeech/wavs/LJ040-0085.wav|tests/data/ljspeech/wavs/LJ040-0085.npy -tests/data/ljspeech/wavs/LJ008-0223.wav|tests/data/ljspeech/wavs/LJ008-0223.npy -tests/data/ljspeech/wavs/LJ014-0083.wav|tests/data/ljspeech/wavs/LJ014-0083.npy -tests/data/ljspeech/wavs/LJ023-0058.wav|tests/data/ljspeech/wavs/LJ023-0058.npy -tests/data/ljspeech/wavs/LJ032-0171.wav|tests/data/ljspeech/wavs/LJ032-0171.npy -tests/data/ljspeech/wavs/LJ031-0142.wav|tests/data/ljspeech/wavs/LJ031-0142.npy -tests/data/ljspeech/wavs/LJ048-0170.wav|tests/data/ljspeech/wavs/LJ048-0170.npy -tests/data/ljspeech/wavs/LJ049-0047.wav|tests/data/ljspeech/wavs/LJ049-0047.npy -tests/data/ljspeech/wavs/LJ037-0050.wav|tests/data/ljspeech/wavs/LJ037-0050.npy -tests/data/ljspeech/wavs/LJ004-0011.wav|tests/data/ljspeech/wavs/LJ004-0011.npy -tests/data/ljspeech/wavs/LJ050-0034.wav|tests/data/ljspeech/wavs/LJ050-0034.npy -tests/data/ljspeech/wavs/LJ017-0200.wav|tests/data/ljspeech/wavs/LJ017-0200.npy -tests/data/ljspeech/wavs/LJ011-0243.wav|tests/data/ljspeech/wavs/LJ011-0243.npy -tests/data/ljspeech/wavs/LJ038-0084.wav|tests/data/ljspeech/wavs/LJ038-0084.npy -tests/data/ljspeech/wavs/LJ035-0140.wav|tests/data/ljspeech/wavs/LJ035-0140.npy -tests/data/ljspeech/wavs/LJ002-0215.wav|tests/data/ljspeech/wavs/LJ002-0215.npy -tests/data/ljspeech/wavs/LJ039-0061.wav|tests/data/ljspeech/wavs/LJ039-0061.npy -tests/data/ljspeech/wavs/LJ050-0241.wav|tests/data/ljspeech/wavs/LJ050-0241.npy -tests/data/ljspeech/wavs/LJ039-0047.wav|tests/data/ljspeech/wavs/LJ039-0047.npy -tests/data/ljspeech/wavs/LJ021-0127.wav|tests/data/ljspeech/wavs/LJ021-0127.npy -tests/data/ljspeech/wavs/LJ050-0114.wav|tests/data/ljspeech/wavs/LJ050-0114.npy -tests/data/ljspeech/wavs/LJ010-0158.wav|tests/data/ljspeech/wavs/LJ010-0158.npy -tests/data/ljspeech/wavs/LJ040-0181.wav|tests/data/ljspeech/wavs/LJ040-0181.npy -tests/data/ljspeech/wavs/LJ017-0109.wav|tests/data/ljspeech/wavs/LJ017-0109.npy -tests/data/ljspeech/wavs/LJ010-0222.wav|tests/data/ljspeech/wavs/LJ010-0222.npy -tests/data/ljspeech/wavs/LJ024-0007.wav|tests/data/ljspeech/wavs/LJ024-0007.npy -tests/data/ljspeech/wavs/LJ003-0334.wav|tests/data/ljspeech/wavs/LJ003-0334.npy -tests/data/ljspeech/wavs/LJ005-0160.wav|tests/data/ljspeech/wavs/LJ005-0160.npy -tests/data/ljspeech/wavs/LJ050-0116.wav|tests/data/ljspeech/wavs/LJ050-0116.npy -tests/data/ljspeech/wavs/LJ017-0197.wav|tests/data/ljspeech/wavs/LJ017-0197.npy -tests/data/ljspeech/wavs/LJ016-0046.wav|tests/data/ljspeech/wavs/LJ016-0046.npy -tests/data/ljspeech/wavs/LJ006-0036.wav|tests/data/ljspeech/wavs/LJ006-0036.npy -tests/data/ljspeech/wavs/LJ016-0159.wav|tests/data/ljspeech/wavs/LJ016-0159.npy -tests/data/ljspeech/wavs/LJ011-0191.wav|tests/data/ljspeech/wavs/LJ011-0191.npy -tests/data/ljspeech/wavs/LJ024-0065.wav|tests/data/ljspeech/wavs/LJ024-0065.npy -tests/data/ljspeech/wavs/LJ019-0196.wav|tests/data/ljspeech/wavs/LJ019-0196.npy -tests/data/ljspeech/wavs/LJ014-0061.wav|tests/data/ljspeech/wavs/LJ014-0061.npy -tests/data/ljspeech/wavs/LJ034-0017.wav|tests/data/ljspeech/wavs/LJ034-0017.npy -tests/data/ljspeech/wavs/LJ008-0125.wav|tests/data/ljspeech/wavs/LJ008-0125.npy -tests/data/ljspeech/wavs/LJ005-0085.wav|tests/data/ljspeech/wavs/LJ005-0085.npy -tests/data/ljspeech/wavs/LJ046-0195.wav|tests/data/ljspeech/wavs/LJ046-0195.npy -tests/data/ljspeech/wavs/LJ036-0134.wav|tests/data/ljspeech/wavs/LJ036-0134.npy -tests/data/ljspeech/wavs/LJ033-0015.wav|tests/data/ljspeech/wavs/LJ033-0015.npy -tests/data/ljspeech/wavs/LJ010-0294.wav|tests/data/ljspeech/wavs/LJ010-0294.npy -tests/data/ljspeech/wavs/LJ041-0103.wav|tests/data/ljspeech/wavs/LJ041-0103.npy -tests/data/ljspeech/wavs/LJ004-0177.wav|tests/data/ljspeech/wavs/LJ004-0177.npy -tests/data/ljspeech/wavs/LJ018-0024.wav|tests/data/ljspeech/wavs/LJ018-0024.npy -tests/data/ljspeech/wavs/LJ043-0077.wav|tests/data/ljspeech/wavs/LJ043-0077.npy -tests/data/ljspeech/wavs/LJ022-0095.wav|tests/data/ljspeech/wavs/LJ022-0095.npy -tests/data/ljspeech/wavs/LJ010-0231.wav|tests/data/ljspeech/wavs/LJ010-0231.npy -tests/data/ljspeech/wavs/LJ021-0121.wav|tests/data/ljspeech/wavs/LJ021-0121.npy -tests/data/ljspeech/wavs/LJ018-0086.wav|tests/data/ljspeech/wavs/LJ018-0086.npy -tests/data/ljspeech/wavs/LJ017-0186.wav|tests/data/ljspeech/wavs/LJ017-0186.npy -tests/data/ljspeech/wavs/LJ003-0184.wav|tests/data/ljspeech/wavs/LJ003-0184.npy -tests/data/ljspeech/wavs/LJ006-0012.wav|tests/data/ljspeech/wavs/LJ006-0012.npy -tests/data/ljspeech/wavs/LJ016-0086.wav|tests/data/ljspeech/wavs/LJ016-0086.npy -tests/data/ljspeech/wavs/LJ026-0085.wav|tests/data/ljspeech/wavs/LJ026-0085.npy -tests/data/ljspeech/wavs/LJ032-0157.wav|tests/data/ljspeech/wavs/LJ032-0157.npy -tests/data/ljspeech/wavs/LJ045-0021.wav|tests/data/ljspeech/wavs/LJ045-0021.npy -tests/data/ljspeech/wavs/LJ050-0152.wav|tests/data/ljspeech/wavs/LJ050-0152.npy -tests/data/ljspeech/wavs/LJ001-0130.wav|tests/data/ljspeech/wavs/LJ001-0130.npy -tests/data/ljspeech/wavs/LJ041-0102.wav|tests/data/ljspeech/wavs/LJ041-0102.npy -tests/data/ljspeech/wavs/LJ003-0326.wav|tests/data/ljspeech/wavs/LJ003-0326.npy -tests/data/ljspeech/wavs/LJ030-0223.wav|tests/data/ljspeech/wavs/LJ030-0223.npy -tests/data/ljspeech/wavs/LJ012-0248.wav|tests/data/ljspeech/wavs/LJ012-0248.npy -tests/data/ljspeech/wavs/LJ030-0009.wav|tests/data/ljspeech/wavs/LJ030-0009.npy -tests/data/ljspeech/wavs/LJ006-0211.wav|tests/data/ljspeech/wavs/LJ006-0211.npy -tests/data/ljspeech/wavs/LJ039-0191.wav|tests/data/ljspeech/wavs/LJ039-0191.npy -tests/data/ljspeech/wavs/LJ036-0090.wav|tests/data/ljspeech/wavs/LJ036-0090.npy -tests/data/ljspeech/wavs/LJ028-0502.wav|tests/data/ljspeech/wavs/LJ028-0502.npy -tests/data/ljspeech/wavs/LJ028-0081.wav|tests/data/ljspeech/wavs/LJ028-0081.npy -tests/data/ljspeech/wavs/LJ044-0060.wav|tests/data/ljspeech/wavs/LJ044-0060.npy -tests/data/ljspeech/wavs/LJ050-0067.wav|tests/data/ljspeech/wavs/LJ050-0067.npy -tests/data/ljspeech/wavs/LJ008-0151.wav|tests/data/ljspeech/wavs/LJ008-0151.npy -tests/data/ljspeech/wavs/LJ033-0182.wav|tests/data/ljspeech/wavs/LJ033-0182.npy -tests/data/ljspeech/wavs/LJ019-0131.wav|tests/data/ljspeech/wavs/LJ019-0131.npy -tests/data/ljspeech/wavs/LJ004-0112.wav|tests/data/ljspeech/wavs/LJ004-0112.npy -tests/data/ljspeech/wavs/LJ030-0248.wav|tests/data/ljspeech/wavs/LJ030-0248.npy -tests/data/ljspeech/wavs/LJ048-0141.wav|tests/data/ljspeech/wavs/LJ048-0141.npy -tests/data/ljspeech/wavs/LJ031-0183.wav|tests/data/ljspeech/wavs/LJ031-0183.npy -tests/data/ljspeech/wavs/LJ019-0314.wav|tests/data/ljspeech/wavs/LJ019-0314.npy -tests/data/ljspeech/wavs/LJ022-0097.wav|tests/data/ljspeech/wavs/LJ022-0097.npy -tests/data/ljspeech/wavs/LJ046-0103.wav|tests/data/ljspeech/wavs/LJ046-0103.npy -tests/data/ljspeech/wavs/LJ012-0246.wav|tests/data/ljspeech/wavs/LJ012-0246.npy -tests/data/ljspeech/wavs/LJ013-0156.wav|tests/data/ljspeech/wavs/LJ013-0156.npy -tests/data/ljspeech/wavs/LJ028-0440.wav|tests/data/ljspeech/wavs/LJ028-0440.npy -tests/data/ljspeech/wavs/LJ003-0037.wav|tests/data/ljspeech/wavs/LJ003-0037.npy -tests/data/ljspeech/wavs/LJ002-0241.wav|tests/data/ljspeech/wavs/LJ002-0241.npy -tests/data/ljspeech/wavs/LJ040-0040.wav|tests/data/ljspeech/wavs/LJ040-0040.npy -tests/data/ljspeech/wavs/LJ018-0268.wav|tests/data/ljspeech/wavs/LJ018-0268.npy -tests/data/ljspeech/wavs/LJ019-0344.wav|tests/data/ljspeech/wavs/LJ019-0344.npy -tests/data/ljspeech/wavs/LJ013-0042.wav|tests/data/ljspeech/wavs/LJ013-0042.npy -tests/data/ljspeech/wavs/LJ026-0095.wav|tests/data/ljspeech/wavs/LJ026-0095.npy -tests/data/ljspeech/wavs/LJ010-0303.wav|tests/data/ljspeech/wavs/LJ010-0303.npy -tests/data/ljspeech/wavs/LJ019-0160.wav|tests/data/ljspeech/wavs/LJ019-0160.npy -tests/data/ljspeech/wavs/LJ017-0089.wav|tests/data/ljspeech/wavs/LJ017-0089.npy -tests/data/ljspeech/wavs/LJ046-0060.wav|tests/data/ljspeech/wavs/LJ046-0060.npy -tests/data/ljspeech/wavs/LJ005-0184.wav|tests/data/ljspeech/wavs/LJ005-0184.npy -tests/data/ljspeech/wavs/LJ042-0114.wav|tests/data/ljspeech/wavs/LJ042-0114.npy -tests/data/ljspeech/wavs/LJ034-0173.wav|tests/data/ljspeech/wavs/LJ034-0173.npy -tests/data/ljspeech/wavs/LJ018-0004.wav|tests/data/ljspeech/wavs/LJ018-0004.npy -tests/data/ljspeech/wavs/LJ012-0281.wav|tests/data/ljspeech/wavs/LJ012-0281.npy -tests/data/ljspeech/wavs/LJ040-0175.wav|tests/data/ljspeech/wavs/LJ040-0175.npy -tests/data/ljspeech/wavs/LJ002-0122.wav|tests/data/ljspeech/wavs/LJ002-0122.npy -tests/data/ljspeech/wavs/LJ044-0152.wav|tests/data/ljspeech/wavs/LJ044-0152.npy -tests/data/ljspeech/wavs/LJ037-0251.wav|tests/data/ljspeech/wavs/LJ037-0251.npy -tests/data/ljspeech/wavs/LJ031-0222.wav|tests/data/ljspeech/wavs/LJ031-0222.npy -tests/data/ljspeech/wavs/LJ030-0227.wav|tests/data/ljspeech/wavs/LJ030-0227.npy -tests/data/ljspeech/wavs/LJ032-0186.wav|tests/data/ljspeech/wavs/LJ032-0186.npy -tests/data/ljspeech/wavs/LJ033-0210.wav|tests/data/ljspeech/wavs/LJ033-0210.npy -tests/data/ljspeech/wavs/LJ035-0167.wav|tests/data/ljspeech/wavs/LJ035-0167.npy -tests/data/ljspeech/wavs/LJ047-0142.wav|tests/data/ljspeech/wavs/LJ047-0142.npy -tests/data/ljspeech/wavs/LJ009-0124.wav|tests/data/ljspeech/wavs/LJ009-0124.npy -tests/data/ljspeech/wavs/LJ038-0266.wav|tests/data/ljspeech/wavs/LJ038-0266.npy -tests/data/ljspeech/wavs/LJ046-0063.wav|tests/data/ljspeech/wavs/LJ046-0063.npy -tests/data/ljspeech/wavs/LJ034-0131.wav|tests/data/ljspeech/wavs/LJ034-0131.npy -tests/data/ljspeech/wavs/LJ008-0139.wav|tests/data/ljspeech/wavs/LJ008-0139.npy -tests/data/ljspeech/wavs/LJ010-0016.wav|tests/data/ljspeech/wavs/LJ010-0016.npy -tests/data/ljspeech/wavs/LJ045-0209.wav|tests/data/ljspeech/wavs/LJ045-0209.npy -tests/data/ljspeech/wavs/LJ047-0236.wav|tests/data/ljspeech/wavs/LJ047-0236.npy -tests/data/ljspeech/wavs/LJ001-0074.wav|tests/data/ljspeech/wavs/LJ001-0074.npy -tests/data/ljspeech/wavs/LJ015-0200.wav|tests/data/ljspeech/wavs/LJ015-0200.npy -tests/data/ljspeech/wavs/LJ050-0200.wav|tests/data/ljspeech/wavs/LJ050-0200.npy -tests/data/ljspeech/wavs/LJ011-0289.wav|tests/data/ljspeech/wavs/LJ011-0289.npy -tests/data/ljspeech/wavs/LJ033-0031.wav|tests/data/ljspeech/wavs/LJ033-0031.npy -tests/data/ljspeech/wavs/LJ015-0258.wav|tests/data/ljspeech/wavs/LJ015-0258.npy -tests/data/ljspeech/wavs/LJ019-0091.wav|tests/data/ljspeech/wavs/LJ019-0091.npy -tests/data/ljspeech/wavs/LJ027-0113.wav|tests/data/ljspeech/wavs/LJ027-0113.npy -tests/data/ljspeech/wavs/LJ022-0160.wav|tests/data/ljspeech/wavs/LJ022-0160.npy -tests/data/ljspeech/wavs/LJ029-0190.wav|tests/data/ljspeech/wavs/LJ029-0190.npy -tests/data/ljspeech/wavs/LJ015-0133.wav|tests/data/ljspeech/wavs/LJ015-0133.npy -tests/data/ljspeech/wavs/LJ034-0206.wav|tests/data/ljspeech/wavs/LJ034-0206.npy -tests/data/ljspeech/wavs/LJ016-0257.wav|tests/data/ljspeech/wavs/LJ016-0257.npy -tests/data/ljspeech/wavs/LJ003-0012.wav|tests/data/ljspeech/wavs/LJ003-0012.npy -tests/data/ljspeech/wavs/LJ008-0162.wav|tests/data/ljspeech/wavs/LJ008-0162.npy -tests/data/ljspeech/wavs/LJ002-0199.wav|tests/data/ljspeech/wavs/LJ002-0199.npy -tests/data/ljspeech/wavs/LJ038-0165.wav|tests/data/ljspeech/wavs/LJ038-0165.npy -tests/data/ljspeech/wavs/LJ032-0029.wav|tests/data/ljspeech/wavs/LJ032-0029.npy -tests/data/ljspeech/wavs/LJ009-0217.wav|tests/data/ljspeech/wavs/LJ009-0217.npy -tests/data/ljspeech/wavs/LJ007-0182.wav|tests/data/ljspeech/wavs/LJ007-0182.npy -tests/data/ljspeech/wavs/LJ022-0134.wav|tests/data/ljspeech/wavs/LJ022-0134.npy -tests/data/ljspeech/wavs/LJ044-0202.wav|tests/data/ljspeech/wavs/LJ044-0202.npy -tests/data/ljspeech/wavs/LJ039-0118.wav|tests/data/ljspeech/wavs/LJ039-0118.npy -tests/data/ljspeech/wavs/LJ048-0048.wav|tests/data/ljspeech/wavs/LJ048-0048.npy -tests/data/ljspeech/wavs/LJ031-0200.wav|tests/data/ljspeech/wavs/LJ031-0200.npy -tests/data/ljspeech/wavs/LJ017-0009.wav|tests/data/ljspeech/wavs/LJ017-0009.npy -tests/data/ljspeech/wavs/LJ034-0052.wav|tests/data/ljspeech/wavs/LJ034-0052.npy -tests/data/ljspeech/wavs/LJ005-0232.wav|tests/data/ljspeech/wavs/LJ005-0232.npy -tests/data/ljspeech/wavs/LJ012-0295.wav|tests/data/ljspeech/wavs/LJ012-0295.npy -tests/data/ljspeech/wavs/LJ018-0374.wav|tests/data/ljspeech/wavs/LJ018-0374.npy -tests/data/ljspeech/wavs/LJ013-0027.wav|tests/data/ljspeech/wavs/LJ013-0027.npy -tests/data/ljspeech/wavs/LJ005-0115.wav|tests/data/ljspeech/wavs/LJ005-0115.npy -tests/data/ljspeech/wavs/LJ042-0186.wav|tests/data/ljspeech/wavs/LJ042-0186.npy -tests/data/ljspeech/wavs/LJ025-0064.wav|tests/data/ljspeech/wavs/LJ025-0064.npy -tests/data/ljspeech/wavs/LJ032-0179.wav|tests/data/ljspeech/wavs/LJ032-0179.npy -tests/data/ljspeech/wavs/LJ049-0178.wav|tests/data/ljspeech/wavs/LJ049-0178.npy -tests/data/ljspeech/wavs/LJ027-0087.wav|tests/data/ljspeech/wavs/LJ027-0087.npy -tests/data/ljspeech/wavs/LJ031-0232.wav|tests/data/ljspeech/wavs/LJ031-0232.npy -tests/data/ljspeech/wavs/LJ035-0021.wav|tests/data/ljspeech/wavs/LJ035-0021.npy -tests/data/ljspeech/wavs/LJ029-0026.wav|tests/data/ljspeech/wavs/LJ029-0026.npy -tests/data/ljspeech/wavs/LJ029-0004.wav|tests/data/ljspeech/wavs/LJ029-0004.npy -tests/data/ljspeech/wavs/LJ008-0206.wav|tests/data/ljspeech/wavs/LJ008-0206.npy -tests/data/ljspeech/wavs/LJ039-0242.wav|tests/data/ljspeech/wavs/LJ039-0242.npy -tests/data/ljspeech/wavs/LJ013-0137.wav|tests/data/ljspeech/wavs/LJ013-0137.npy -tests/data/ljspeech/wavs/LJ016-0318.wav|tests/data/ljspeech/wavs/LJ016-0318.npy -tests/data/ljspeech/wavs/LJ014-0134.wav|tests/data/ljspeech/wavs/LJ014-0134.npy -tests/data/ljspeech/wavs/LJ003-0194.wav|tests/data/ljspeech/wavs/LJ003-0194.npy -tests/data/ljspeech/wavs/LJ011-0267.wav|tests/data/ljspeech/wavs/LJ011-0267.npy -tests/data/ljspeech/wavs/LJ002-0156.wav|tests/data/ljspeech/wavs/LJ002-0156.npy -tests/data/ljspeech/wavs/LJ050-0155.wav|tests/data/ljspeech/wavs/LJ050-0155.npy -tests/data/ljspeech/wavs/LJ046-0164.wav|tests/data/ljspeech/wavs/LJ046-0164.npy -tests/data/ljspeech/wavs/LJ015-0111.wav|tests/data/ljspeech/wavs/LJ015-0111.npy -tests/data/ljspeech/wavs/LJ037-0213.wav|tests/data/ljspeech/wavs/LJ037-0213.npy -tests/data/ljspeech/wavs/LJ049-0172.wav|tests/data/ljspeech/wavs/LJ049-0172.npy -tests/data/ljspeech/wavs/LJ013-0044.wav|tests/data/ljspeech/wavs/LJ013-0044.npy -tests/data/ljspeech/wavs/LJ042-0074.wav|tests/data/ljspeech/wavs/LJ042-0074.npy -tests/data/ljspeech/wavs/LJ018-0110.wav|tests/data/ljspeech/wavs/LJ018-0110.npy -tests/data/ljspeech/wavs/LJ027-0032.wav|tests/data/ljspeech/wavs/LJ027-0032.npy -tests/data/ljspeech/wavs/LJ027-0158.wav|tests/data/ljspeech/wavs/LJ027-0158.npy -tests/data/ljspeech/wavs/LJ019-0258.wav|tests/data/ljspeech/wavs/LJ019-0258.npy -tests/data/ljspeech/wavs/LJ034-0019.wav|tests/data/ljspeech/wavs/LJ034-0019.npy -tests/data/ljspeech/wavs/LJ040-0215.wav|tests/data/ljspeech/wavs/LJ040-0215.npy -tests/data/ljspeech/wavs/LJ014-0038.wav|tests/data/ljspeech/wavs/LJ014-0038.npy -tests/data/ljspeech/wavs/LJ016-0063.wav|tests/data/ljspeech/wavs/LJ016-0063.npy -tests/data/ljspeech/wavs/LJ046-0108.wav|tests/data/ljspeech/wavs/LJ046-0108.npy -tests/data/ljspeech/wavs/LJ010-0039.wav|tests/data/ljspeech/wavs/LJ010-0039.npy -tests/data/ljspeech/wavs/LJ028-0021.wav|tests/data/ljspeech/wavs/LJ028-0021.npy -tests/data/ljspeech/wavs/LJ008-0135.wav|tests/data/ljspeech/wavs/LJ008-0135.npy -tests/data/ljspeech/wavs/LJ021-0062.wav|tests/data/ljspeech/wavs/LJ021-0062.npy -tests/data/ljspeech/wavs/LJ017-0053.wav|tests/data/ljspeech/wavs/LJ017-0053.npy -tests/data/ljspeech/wavs/LJ015-0068.wav|tests/data/ljspeech/wavs/LJ015-0068.npy -tests/data/ljspeech/wavs/LJ016-0064.wav|tests/data/ljspeech/wavs/LJ016-0064.npy -tests/data/ljspeech/wavs/LJ015-0243.wav|tests/data/ljspeech/wavs/LJ015-0243.npy -tests/data/ljspeech/wavs/LJ048-0146.wav|tests/data/ljspeech/wavs/LJ048-0146.npy -tests/data/ljspeech/wavs/LJ002-0043.wav|tests/data/ljspeech/wavs/LJ002-0043.npy -tests/data/ljspeech/wavs/LJ039-0241.wav|tests/data/ljspeech/wavs/LJ039-0241.npy -tests/data/ljspeech/wavs/LJ022-0037.wav|tests/data/ljspeech/wavs/LJ022-0037.npy -tests/data/ljspeech/wavs/LJ001-0004.wav|tests/data/ljspeech/wavs/LJ001-0004.npy -tests/data/ljspeech/wavs/LJ019-0039.wav|tests/data/ljspeech/wavs/LJ019-0039.npy -tests/data/ljspeech/wavs/LJ039-0029.wav|tests/data/ljspeech/wavs/LJ039-0029.npy -tests/data/ljspeech/wavs/LJ028-0053.wav|tests/data/ljspeech/wavs/LJ028-0053.npy -tests/data/ljspeech/wavs/LJ013-0006.wav|tests/data/ljspeech/wavs/LJ013-0006.npy -tests/data/ljspeech/wavs/LJ026-0021.wav|tests/data/ljspeech/wavs/LJ026-0021.npy -tests/data/ljspeech/wavs/LJ047-0052.wav|tests/data/ljspeech/wavs/LJ047-0052.npy -tests/data/ljspeech/wavs/LJ044-0031.wav|tests/data/ljspeech/wavs/LJ044-0031.npy -tests/data/ljspeech/wavs/LJ044-0051.wav|tests/data/ljspeech/wavs/LJ044-0051.npy -tests/data/ljspeech/wavs/LJ030-0210.wav|tests/data/ljspeech/wavs/LJ030-0210.npy -tests/data/ljspeech/wavs/LJ040-0083.wav|tests/data/ljspeech/wavs/LJ040-0083.npy -tests/data/ljspeech/wavs/LJ010-0027.wav|tests/data/ljspeech/wavs/LJ010-0027.npy -tests/data/ljspeech/wavs/LJ010-0278.wav|tests/data/ljspeech/wavs/LJ010-0278.npy -tests/data/ljspeech/wavs/LJ015-0307.wav|tests/data/ljspeech/wavs/LJ015-0307.npy -tests/data/ljspeech/wavs/LJ013-0005.wav|tests/data/ljspeech/wavs/LJ013-0005.npy -tests/data/ljspeech/wavs/LJ018-0108.wav|tests/data/ljspeech/wavs/LJ018-0108.npy -tests/data/ljspeech/wavs/LJ032-0172.wav|tests/data/ljspeech/wavs/LJ032-0172.npy -tests/data/ljspeech/wavs/LJ003-0305.wav|tests/data/ljspeech/wavs/LJ003-0305.npy -tests/data/ljspeech/wavs/LJ015-0190.wav|tests/data/ljspeech/wavs/LJ015-0190.npy -tests/data/ljspeech/wavs/LJ009-0128.wav|tests/data/ljspeech/wavs/LJ009-0128.npy -tests/data/ljspeech/wavs/LJ011-0227.wav|tests/data/ljspeech/wavs/LJ011-0227.npy -tests/data/ljspeech/wavs/LJ005-0028.wav|tests/data/ljspeech/wavs/LJ005-0028.npy -tests/data/ljspeech/wavs/LJ010-0268.wav|tests/data/ljspeech/wavs/LJ010-0268.npy -tests/data/ljspeech/wavs/LJ008-0260.wav|tests/data/ljspeech/wavs/LJ008-0260.npy -tests/data/ljspeech/wavs/LJ013-0134.wav|tests/data/ljspeech/wavs/LJ013-0134.npy -tests/data/ljspeech/wavs/LJ015-0294.wav|tests/data/ljspeech/wavs/LJ015-0294.npy -tests/data/ljspeech/wavs/LJ022-0110.wav|tests/data/ljspeech/wavs/LJ022-0110.npy -tests/data/ljspeech/wavs/LJ001-0102.wav|tests/data/ljspeech/wavs/LJ001-0102.npy -tests/data/ljspeech/wavs/LJ005-0148.wav|tests/data/ljspeech/wavs/LJ005-0148.npy -tests/data/ljspeech/wavs/LJ026-0148.wav|tests/data/ljspeech/wavs/LJ026-0148.npy -tests/data/ljspeech/wavs/LJ012-0178.wav|tests/data/ljspeech/wavs/LJ012-0178.npy -tests/data/ljspeech/wavs/LJ050-0214.wav|tests/data/ljspeech/wavs/LJ050-0214.npy -tests/data/ljspeech/wavs/LJ003-0205.wav|tests/data/ljspeech/wavs/LJ003-0205.npy -tests/data/ljspeech/wavs/LJ018-0386.wav|tests/data/ljspeech/wavs/LJ018-0386.npy -tests/data/ljspeech/wavs/LJ018-0290.wav|tests/data/ljspeech/wavs/LJ018-0290.npy -tests/data/ljspeech/wavs/LJ042-0020.wav|tests/data/ljspeech/wavs/LJ042-0020.npy -tests/data/ljspeech/wavs/LJ045-0196.wav|tests/data/ljspeech/wavs/LJ045-0196.npy -tests/data/ljspeech/wavs/LJ046-0166.wav|tests/data/ljspeech/wavs/LJ046-0166.npy -tests/data/ljspeech/wavs/LJ010-0167.wav|tests/data/ljspeech/wavs/LJ010-0167.npy -tests/data/ljspeech/wavs/LJ037-0065.wav|tests/data/ljspeech/wavs/LJ037-0065.npy -tests/data/ljspeech/wavs/LJ046-0190.wav|tests/data/ljspeech/wavs/LJ046-0190.npy -tests/data/ljspeech/wavs/LJ011-0205.wav|tests/data/ljspeech/wavs/LJ011-0205.npy -tests/data/ljspeech/wavs/LJ041-0044.wav|tests/data/ljspeech/wavs/LJ041-0044.npy -tests/data/ljspeech/wavs/LJ016-0334.wav|tests/data/ljspeech/wavs/LJ016-0334.npy -tests/data/ljspeech/wavs/LJ043-0082.wav|tests/data/ljspeech/wavs/LJ043-0082.npy -tests/data/ljspeech/wavs/LJ040-0142.wav|tests/data/ljspeech/wavs/LJ040-0142.npy -tests/data/ljspeech/wavs/LJ028-0503.wav|tests/data/ljspeech/wavs/LJ028-0503.npy -tests/data/ljspeech/wavs/LJ049-0028.wav|tests/data/ljspeech/wavs/LJ049-0028.npy -tests/data/ljspeech/wavs/LJ035-0098.wav|tests/data/ljspeech/wavs/LJ035-0098.npy -tests/data/ljspeech/wavs/LJ006-0163.wav|tests/data/ljspeech/wavs/LJ006-0163.npy -tests/data/ljspeech/wavs/LJ035-0102.wav|tests/data/ljspeech/wavs/LJ035-0102.npy -tests/data/ljspeech/wavs/LJ014-0297.wav|tests/data/ljspeech/wavs/LJ014-0297.npy -tests/data/ljspeech/wavs/LJ003-0268.wav|tests/data/ljspeech/wavs/LJ003-0268.npy -tests/data/ljspeech/wavs/LJ011-0014.wav|tests/data/ljspeech/wavs/LJ011-0014.npy -tests/data/ljspeech/wavs/LJ001-0119.wav|tests/data/ljspeech/wavs/LJ001-0119.npy -tests/data/ljspeech/wavs/LJ006-0111.wav|tests/data/ljspeech/wavs/LJ006-0111.npy -tests/data/ljspeech/wavs/LJ019-0231.wav|tests/data/ljspeech/wavs/LJ019-0231.npy -tests/data/ljspeech/wavs/LJ014-0332.wav|tests/data/ljspeech/wavs/LJ014-0332.npy -tests/data/ljspeech/wavs/LJ002-0161.wav|tests/data/ljspeech/wavs/LJ002-0161.npy -tests/data/ljspeech/wavs/LJ014-0299.wav|tests/data/ljspeech/wavs/LJ014-0299.npy -tests/data/ljspeech/wavs/LJ031-0213.wav|tests/data/ljspeech/wavs/LJ031-0213.npy -tests/data/ljspeech/wavs/LJ019-0317.wav|tests/data/ljspeech/wavs/LJ019-0317.npy -tests/data/ljspeech/wavs/LJ050-0215.wav|tests/data/ljspeech/wavs/LJ050-0215.npy -tests/data/ljspeech/wavs/LJ034-0200.wav|tests/data/ljspeech/wavs/LJ034-0200.npy -tests/data/ljspeech/wavs/LJ016-0293.wav|tests/data/ljspeech/wavs/LJ016-0293.npy -tests/data/ljspeech/wavs/LJ006-0034.wav|tests/data/ljspeech/wavs/LJ006-0034.npy -tests/data/ljspeech/wavs/LJ035-0087.wav|tests/data/ljspeech/wavs/LJ035-0087.npy -tests/data/ljspeech/wavs/LJ036-0167.wav|tests/data/ljspeech/wavs/LJ036-0167.npy -tests/data/ljspeech/wavs/LJ017-0159.wav|tests/data/ljspeech/wavs/LJ017-0159.npy -tests/data/ljspeech/wavs/LJ035-0010.wav|tests/data/ljspeech/wavs/LJ035-0010.npy -tests/data/ljspeech/wavs/LJ025-0140.wav|tests/data/ljspeech/wavs/LJ025-0140.npy -tests/data/ljspeech/wavs/LJ018-0228.wav|tests/data/ljspeech/wavs/LJ018-0228.npy -tests/data/ljspeech/wavs/LJ017-0145.wav|tests/data/ljspeech/wavs/LJ017-0145.npy -tests/data/ljspeech/wavs/LJ017-0284.wav|tests/data/ljspeech/wavs/LJ017-0284.npy -tests/data/ljspeech/wavs/LJ002-0184.wav|tests/data/ljspeech/wavs/LJ002-0184.npy -tests/data/ljspeech/wavs/LJ019-0064.wav|tests/data/ljspeech/wavs/LJ019-0064.npy -tests/data/ljspeech/wavs/LJ025-0132.wav|tests/data/ljspeech/wavs/LJ025-0132.npy -tests/data/ljspeech/wavs/LJ041-0064.wav|tests/data/ljspeech/wavs/LJ041-0064.npy -tests/data/ljspeech/wavs/LJ042-0226.wav|tests/data/ljspeech/wavs/LJ042-0226.npy -tests/data/ljspeech/wavs/LJ003-0222.wav|tests/data/ljspeech/wavs/LJ003-0222.npy -tests/data/ljspeech/wavs/LJ004-0189.wav|tests/data/ljspeech/wavs/LJ004-0189.npy -tests/data/ljspeech/wavs/LJ022-0186.wav|tests/data/ljspeech/wavs/LJ022-0186.npy -tests/data/ljspeech/wavs/LJ009-0278.wav|tests/data/ljspeech/wavs/LJ009-0278.npy -tests/data/ljspeech/wavs/LJ002-0087.wav|tests/data/ljspeech/wavs/LJ002-0087.npy -tests/data/ljspeech/wavs/LJ016-0153.wav|tests/data/ljspeech/wavs/LJ016-0153.npy -tests/data/ljspeech/wavs/LJ028-0415.wav|tests/data/ljspeech/wavs/LJ028-0415.npy -tests/data/ljspeech/wavs/LJ018-0213.wav|tests/data/ljspeech/wavs/LJ018-0213.npy -tests/data/ljspeech/wavs/LJ009-0235.wav|tests/data/ljspeech/wavs/LJ009-0235.npy -tests/data/ljspeech/wavs/LJ001-0136.wav|tests/data/ljspeech/wavs/LJ001-0136.npy -tests/data/ljspeech/wavs/LJ009-0204.wav|tests/data/ljspeech/wavs/LJ009-0204.npy -tests/data/ljspeech/wavs/LJ040-0148.wav|tests/data/ljspeech/wavs/LJ040-0148.npy -tests/data/ljspeech/wavs/LJ043-0157.wav|tests/data/ljspeech/wavs/LJ043-0157.npy -tests/data/ljspeech/wavs/LJ025-0145.wav|tests/data/ljspeech/wavs/LJ025-0145.npy -tests/data/ljspeech/wavs/LJ010-0196.wav|tests/data/ljspeech/wavs/LJ010-0196.npy -tests/data/ljspeech/wavs/LJ019-0308.wav|tests/data/ljspeech/wavs/LJ019-0308.npy -tests/data/ljspeech/wavs/LJ018-0153.wav|tests/data/ljspeech/wavs/LJ018-0153.npy -tests/data/ljspeech/wavs/LJ026-0072.wav|tests/data/ljspeech/wavs/LJ026-0072.npy -tests/data/ljspeech/wavs/LJ035-0121.wav|tests/data/ljspeech/wavs/LJ035-0121.npy -tests/data/ljspeech/wavs/LJ002-0001.wav|tests/data/ljspeech/wavs/LJ002-0001.npy -tests/data/ljspeech/wavs/LJ018-0173.wav|tests/data/ljspeech/wavs/LJ018-0173.npy -tests/data/ljspeech/wavs/LJ047-0038.wav|tests/data/ljspeech/wavs/LJ047-0038.npy -tests/data/ljspeech/wavs/LJ002-0113.wav|tests/data/ljspeech/wavs/LJ002-0113.npy -tests/data/ljspeech/wavs/LJ005-0202.wav|tests/data/ljspeech/wavs/LJ005-0202.npy -tests/data/ljspeech/wavs/LJ020-0013.wav|tests/data/ljspeech/wavs/LJ020-0013.npy -tests/data/ljspeech/wavs/LJ026-0140.wav|tests/data/ljspeech/wavs/LJ026-0140.npy -tests/data/ljspeech/wavs/LJ019-0145.wav|tests/data/ljspeech/wavs/LJ019-0145.npy -tests/data/ljspeech/wavs/LJ047-0082.wav|tests/data/ljspeech/wavs/LJ047-0082.npy -tests/data/ljspeech/wavs/LJ019-0135.wav|tests/data/ljspeech/wavs/LJ019-0135.npy -tests/data/ljspeech/wavs/LJ046-0122.wav|tests/data/ljspeech/wavs/LJ046-0122.npy -tests/data/ljspeech/wavs/LJ034-0153.wav|tests/data/ljspeech/wavs/LJ034-0153.npy -tests/data/ljspeech/wavs/LJ036-0082.wav|tests/data/ljspeech/wavs/LJ036-0082.npy -tests/data/ljspeech/wavs/LJ049-0021.wav|tests/data/ljspeech/wavs/LJ049-0021.npy -tests/data/ljspeech/wavs/LJ035-0058.wav|tests/data/ljspeech/wavs/LJ035-0058.npy -tests/data/ljspeech/wavs/LJ010-0089.wav|tests/data/ljspeech/wavs/LJ010-0089.npy -tests/data/ljspeech/wavs/LJ025-0148.wav|tests/data/ljspeech/wavs/LJ025-0148.npy -tests/data/ljspeech/wavs/LJ047-0216.wav|tests/data/ljspeech/wavs/LJ047-0216.npy -tests/data/ljspeech/wavs/LJ010-0130.wav|tests/data/ljspeech/wavs/LJ010-0130.npy -tests/data/ljspeech/wavs/LJ019-0331.wav|tests/data/ljspeech/wavs/LJ019-0331.npy -tests/data/ljspeech/wavs/LJ008-0278.wav|tests/data/ljspeech/wavs/LJ008-0278.npy -tests/data/ljspeech/wavs/LJ048-0096.wav|tests/data/ljspeech/wavs/LJ048-0096.npy -tests/data/ljspeech/wavs/LJ008-0307.wav|tests/data/ljspeech/wavs/LJ008-0307.npy -tests/data/ljspeech/wavs/LJ021-0097.wav|tests/data/ljspeech/wavs/LJ021-0097.npy -tests/data/ljspeech/wavs/LJ043-0096.wav|tests/data/ljspeech/wavs/LJ043-0096.npy -tests/data/ljspeech/wavs/LJ028-0343.wav|tests/data/ljspeech/wavs/LJ028-0343.npy -tests/data/ljspeech/wavs/LJ046-0099.wav|tests/data/ljspeech/wavs/LJ046-0099.npy -tests/data/ljspeech/wavs/LJ009-0017.wav|tests/data/ljspeech/wavs/LJ009-0017.npy -tests/data/ljspeech/wavs/LJ002-0061.wav|tests/data/ljspeech/wavs/LJ002-0061.npy -tests/data/ljspeech/wavs/LJ028-0476.wav|tests/data/ljspeech/wavs/LJ028-0476.npy -tests/data/ljspeech/wavs/LJ008-0283.wav|tests/data/ljspeech/wavs/LJ008-0283.npy -tests/data/ljspeech/wavs/LJ034-0080.wav|tests/data/ljspeech/wavs/LJ034-0080.npy -tests/data/ljspeech/wavs/LJ012-0089.wav|tests/data/ljspeech/wavs/LJ012-0089.npy -tests/data/ljspeech/wavs/LJ042-0250.wav|tests/data/ljspeech/wavs/LJ042-0250.npy -tests/data/ljspeech/wavs/LJ036-0166.wav|tests/data/ljspeech/wavs/LJ036-0166.npy -tests/data/ljspeech/wavs/LJ043-0010.wav|tests/data/ljspeech/wavs/LJ043-0010.npy -tests/data/ljspeech/wavs/LJ015-0065.wav|tests/data/ljspeech/wavs/LJ015-0065.npy -tests/data/ljspeech/wavs/LJ037-0026.wav|tests/data/ljspeech/wavs/LJ037-0026.npy -tests/data/ljspeech/wavs/LJ003-0176.wav|tests/data/ljspeech/wavs/LJ003-0176.npy -tests/data/ljspeech/wavs/LJ015-0167.wav|tests/data/ljspeech/wavs/LJ015-0167.npy -tests/data/ljspeech/wavs/LJ014-0281.wav|tests/data/ljspeech/wavs/LJ014-0281.npy -tests/data/ljspeech/wavs/LJ003-0109.wav|tests/data/ljspeech/wavs/LJ003-0109.npy -tests/data/ljspeech/wavs/LJ014-0279.wav|tests/data/ljspeech/wavs/LJ014-0279.npy -tests/data/ljspeech/wavs/LJ049-0171.wav|tests/data/ljspeech/wavs/LJ049-0171.npy -tests/data/ljspeech/wavs/LJ015-0131.wav|tests/data/ljspeech/wavs/LJ015-0131.npy -tests/data/ljspeech/wavs/LJ040-0013.wav|tests/data/ljspeech/wavs/LJ040-0013.npy -tests/data/ljspeech/wavs/LJ028-0091.wav|tests/data/ljspeech/wavs/LJ028-0091.npy -tests/data/ljspeech/wavs/LJ015-0211.wav|tests/data/ljspeech/wavs/LJ015-0211.npy -tests/data/ljspeech/wavs/LJ045-0245.wav|tests/data/ljspeech/wavs/LJ045-0245.npy -tests/data/ljspeech/wavs/LJ050-0213.wav|tests/data/ljspeech/wavs/LJ050-0213.npy -tests/data/ljspeech/wavs/LJ043-0012.wav|tests/data/ljspeech/wavs/LJ043-0012.npy -tests/data/ljspeech/wavs/LJ005-0275.wav|tests/data/ljspeech/wavs/LJ005-0275.npy -tests/data/ljspeech/wavs/LJ015-0202.wav|tests/data/ljspeech/wavs/LJ015-0202.npy -tests/data/ljspeech/wavs/LJ044-0026.wav|tests/data/ljspeech/wavs/LJ044-0026.npy -tests/data/ljspeech/wavs/LJ012-0131.wav|tests/data/ljspeech/wavs/LJ012-0131.npy -tests/data/ljspeech/wavs/LJ036-0165.wav|tests/data/ljspeech/wavs/LJ036-0165.npy -tests/data/ljspeech/wavs/LJ044-0006.wav|tests/data/ljspeech/wavs/LJ044-0006.npy -tests/data/ljspeech/wavs/LJ015-0026.wav|tests/data/ljspeech/wavs/LJ015-0026.npy -tests/data/ljspeech/wavs/LJ005-0149.wav|tests/data/ljspeech/wavs/LJ005-0149.npy -tests/data/ljspeech/wavs/LJ039-0149.wav|tests/data/ljspeech/wavs/LJ039-0149.npy -tests/data/ljspeech/wavs/LJ030-0012.wav|tests/data/ljspeech/wavs/LJ030-0012.npy -tests/data/ljspeech/wavs/LJ034-0054.wav|tests/data/ljspeech/wavs/LJ034-0054.npy -tests/data/ljspeech/wavs/LJ030-0069.wav|tests/data/ljspeech/wavs/LJ030-0069.npy -tests/data/ljspeech/wavs/LJ015-0044.wav|tests/data/ljspeech/wavs/LJ015-0044.npy -tests/data/ljspeech/wavs/LJ038-0129.wav|tests/data/ljspeech/wavs/LJ038-0129.npy -tests/data/ljspeech/wavs/LJ044-0050.wav|tests/data/ljspeech/wavs/LJ044-0050.npy -tests/data/ljspeech/wavs/LJ016-0024.wav|tests/data/ljspeech/wavs/LJ016-0024.npy -tests/data/ljspeech/wavs/LJ044-0094.wav|tests/data/ljspeech/wavs/LJ044-0094.npy -tests/data/ljspeech/wavs/LJ037-0149.wav|tests/data/ljspeech/wavs/LJ037-0149.npy -tests/data/ljspeech/wavs/LJ011-0137.wav|tests/data/ljspeech/wavs/LJ011-0137.npy -tests/data/ljspeech/wavs/LJ027-0093.wav|tests/data/ljspeech/wavs/LJ027-0093.npy -tests/data/ljspeech/wavs/LJ049-0210.wav|tests/data/ljspeech/wavs/LJ049-0210.npy -tests/data/ljspeech/wavs/LJ015-0261.wav|tests/data/ljspeech/wavs/LJ015-0261.npy -tests/data/ljspeech/wavs/LJ047-0250.wav|tests/data/ljspeech/wavs/LJ047-0250.npy -tests/data/ljspeech/wavs/LJ008-0067.wav|tests/data/ljspeech/wavs/LJ008-0067.npy -tests/data/ljspeech/wavs/LJ032-0199.wav|tests/data/ljspeech/wavs/LJ032-0199.npy -tests/data/ljspeech/wavs/LJ039-0174.wav|tests/data/ljspeech/wavs/LJ039-0174.npy -tests/data/ljspeech/wavs/LJ027-0179.wav|tests/data/ljspeech/wavs/LJ027-0179.npy -tests/data/ljspeech/wavs/LJ048-0094.wav|tests/data/ljspeech/wavs/LJ048-0094.npy -tests/data/ljspeech/wavs/LJ032-0207.wav|tests/data/ljspeech/wavs/LJ032-0207.npy -tests/data/ljspeech/wavs/LJ017-0068.wav|tests/data/ljspeech/wavs/LJ017-0068.npy -tests/data/ljspeech/wavs/LJ039-0187.wav|tests/data/ljspeech/wavs/LJ039-0187.npy -tests/data/ljspeech/wavs/LJ003-0075.wav|tests/data/ljspeech/wavs/LJ003-0075.npy -tests/data/ljspeech/wavs/LJ032-0115.wav|tests/data/ljspeech/wavs/LJ032-0115.npy -tests/data/ljspeech/wavs/LJ048-0054.wav|tests/data/ljspeech/wavs/LJ048-0054.npy -tests/data/ljspeech/wavs/LJ016-0297.wav|tests/data/ljspeech/wavs/LJ016-0297.npy -tests/data/ljspeech/wavs/LJ003-0002.wav|tests/data/ljspeech/wavs/LJ003-0002.npy -tests/data/ljspeech/wavs/LJ008-0188.wav|tests/data/ljspeech/wavs/LJ008-0188.npy -tests/data/ljspeech/wavs/LJ011-0113.wav|tests/data/ljspeech/wavs/LJ011-0113.npy -tests/data/ljspeech/wavs/LJ016-0229.wav|tests/data/ljspeech/wavs/LJ016-0229.npy -tests/data/ljspeech/wavs/LJ028-0493.wav|tests/data/ljspeech/wavs/LJ028-0493.npy -tests/data/ljspeech/wavs/LJ015-0297.wav|tests/data/ljspeech/wavs/LJ015-0297.npy -tests/data/ljspeech/wavs/LJ031-0229.wav|tests/data/ljspeech/wavs/LJ031-0229.npy -tests/data/ljspeech/wavs/LJ034-0043.wav|tests/data/ljspeech/wavs/LJ034-0043.npy -tests/data/ljspeech/wavs/LJ028-0291.wav|tests/data/ljspeech/wavs/LJ028-0291.npy -tests/data/ljspeech/wavs/LJ028-0127.wav|tests/data/ljspeech/wavs/LJ028-0127.npy -tests/data/ljspeech/wavs/LJ009-0001.wav|tests/data/ljspeech/wavs/LJ009-0001.npy -tests/data/ljspeech/wavs/LJ026-0116.wav|tests/data/ljspeech/wavs/LJ026-0116.npy -tests/data/ljspeech/wavs/LJ014-0181.wav|tests/data/ljspeech/wavs/LJ014-0181.npy -tests/data/ljspeech/wavs/LJ013-0112.wav|tests/data/ljspeech/wavs/LJ013-0112.npy -tests/data/ljspeech/wavs/LJ013-0007.wav|tests/data/ljspeech/wavs/LJ013-0007.npy -tests/data/ljspeech/wavs/LJ038-0269.wav|tests/data/ljspeech/wavs/LJ038-0269.npy -tests/data/ljspeech/wavs/LJ049-0078.wav|tests/data/ljspeech/wavs/LJ049-0078.npy -tests/data/ljspeech/wavs/LJ027-0026.wav|tests/data/ljspeech/wavs/LJ027-0026.npy -tests/data/ljspeech/wavs/LJ010-0316.wav|tests/data/ljspeech/wavs/LJ010-0316.npy -tests/data/ljspeech/wavs/LJ002-0249.wav|tests/data/ljspeech/wavs/LJ002-0249.npy -tests/data/ljspeech/wavs/LJ025-0006.wav|tests/data/ljspeech/wavs/LJ025-0006.npy -tests/data/ljspeech/wavs/LJ045-0035.wav|tests/data/ljspeech/wavs/LJ045-0035.npy -tests/data/ljspeech/wavs/LJ016-0133.wav|tests/data/ljspeech/wavs/LJ016-0133.npy -tests/data/ljspeech/wavs/LJ014-0159.wav|tests/data/ljspeech/wavs/LJ014-0159.npy -tests/data/ljspeech/wavs/LJ028-0190.wav|tests/data/ljspeech/wavs/LJ028-0190.npy -tests/data/ljspeech/wavs/LJ037-0028.wav|tests/data/ljspeech/wavs/LJ037-0028.npy -tests/data/ljspeech/wavs/LJ005-0292.wav|tests/data/ljspeech/wavs/LJ005-0292.npy -tests/data/ljspeech/wavs/LJ013-0198.wav|tests/data/ljspeech/wavs/LJ013-0198.npy -tests/data/ljspeech/wavs/LJ003-0254.wav|tests/data/ljspeech/wavs/LJ003-0254.npy -tests/data/ljspeech/wavs/LJ008-0046.wav|tests/data/ljspeech/wavs/LJ008-0046.npy -tests/data/ljspeech/wavs/LJ039-0088.wav|tests/data/ljspeech/wavs/LJ039-0088.npy -tests/data/ljspeech/wavs/LJ013-0224.wav|tests/data/ljspeech/wavs/LJ013-0224.npy -tests/data/ljspeech/wavs/LJ024-0121.wav|tests/data/ljspeech/wavs/LJ024-0121.npy -tests/data/ljspeech/wavs/LJ049-0139.wav|tests/data/ljspeech/wavs/LJ049-0139.npy -tests/data/ljspeech/wavs/LJ013-0241.wav|tests/data/ljspeech/wavs/LJ013-0241.npy -tests/data/ljspeech/wavs/LJ028-0162.wav|tests/data/ljspeech/wavs/LJ028-0162.npy -tests/data/ljspeech/wavs/LJ003-0242.wav|tests/data/ljspeech/wavs/LJ003-0242.npy -tests/data/ljspeech/wavs/LJ003-0198.wav|tests/data/ljspeech/wavs/LJ003-0198.npy -tests/data/ljspeech/wavs/LJ032-0145.wav|tests/data/ljspeech/wavs/LJ032-0145.npy -tests/data/ljspeech/wavs/LJ007-0095.wav|tests/data/ljspeech/wavs/LJ007-0095.npy -tests/data/ljspeech/wavs/LJ012-0289.wav|tests/data/ljspeech/wavs/LJ012-0289.npy -tests/data/ljspeech/wavs/LJ028-0167.wav|tests/data/ljspeech/wavs/LJ028-0167.npy -tests/data/ljspeech/wavs/LJ032-0045.wav|tests/data/ljspeech/wavs/LJ032-0045.npy -tests/data/ljspeech/wavs/LJ034-0112.wav|tests/data/ljspeech/wavs/LJ034-0112.npy -tests/data/ljspeech/wavs/LJ047-0127.wav|tests/data/ljspeech/wavs/LJ047-0127.npy -tests/data/ljspeech/wavs/LJ033-0030.wav|tests/data/ljspeech/wavs/LJ033-0030.npy -tests/data/ljspeech/wavs/LJ008-0001.wav|tests/data/ljspeech/wavs/LJ008-0001.npy -tests/data/ljspeech/wavs/LJ037-0051.wav|tests/data/ljspeech/wavs/LJ037-0051.npy -tests/data/ljspeech/wavs/LJ001-0153.wav|tests/data/ljspeech/wavs/LJ001-0153.npy -tests/data/ljspeech/wavs/LJ036-0030.wav|tests/data/ljspeech/wavs/LJ036-0030.npy -tests/data/ljspeech/wavs/LJ031-0082.wav|tests/data/ljspeech/wavs/LJ031-0082.npy -tests/data/ljspeech/wavs/LJ022-0140.wav|tests/data/ljspeech/wavs/LJ022-0140.npy -tests/data/ljspeech/wavs/LJ007-0064.wav|tests/data/ljspeech/wavs/LJ007-0064.npy -tests/data/ljspeech/wavs/LJ021-0140.wav|tests/data/ljspeech/wavs/LJ021-0140.npy -tests/data/ljspeech/wavs/LJ050-0072.wav|tests/data/ljspeech/wavs/LJ050-0072.npy -tests/data/ljspeech/wavs/LJ025-0096.wav|tests/data/ljspeech/wavs/LJ025-0096.npy -tests/data/ljspeech/wavs/LJ048-0159.wav|tests/data/ljspeech/wavs/LJ048-0159.npy -tests/data/ljspeech/wavs/LJ025-0056.wav|tests/data/ljspeech/wavs/LJ025-0056.npy -tests/data/ljspeech/wavs/LJ006-0161.wav|tests/data/ljspeech/wavs/LJ006-0161.npy -tests/data/ljspeech/wavs/LJ013-0046.wav|tests/data/ljspeech/wavs/LJ013-0046.npy -tests/data/ljspeech/wavs/LJ004-0067.wav|tests/data/ljspeech/wavs/LJ004-0067.npy -tests/data/ljspeech/wavs/LJ050-0159.wav|tests/data/ljspeech/wavs/LJ050-0159.npy -tests/data/ljspeech/wavs/LJ027-0129.wav|tests/data/ljspeech/wavs/LJ027-0129.npy -tests/data/ljspeech/wavs/LJ013-0245.wav|tests/data/ljspeech/wavs/LJ013-0245.npy -tests/data/ljspeech/wavs/LJ010-0134.wav|tests/data/ljspeech/wavs/LJ010-0134.npy -tests/data/ljspeech/wavs/LJ046-0097.wav|tests/data/ljspeech/wavs/LJ046-0097.npy -tests/data/ljspeech/wavs/LJ008-0003.wav|tests/data/ljspeech/wavs/LJ008-0003.npy -tests/data/ljspeech/wavs/LJ048-0053.wav|tests/data/ljspeech/wavs/LJ048-0053.npy -tests/data/ljspeech/wavs/LJ016-0071.wav|tests/data/ljspeech/wavs/LJ016-0071.npy -tests/data/ljspeech/wavs/LJ049-0133.wav|tests/data/ljspeech/wavs/LJ049-0133.npy -tests/data/ljspeech/wavs/LJ004-0075.wav|tests/data/ljspeech/wavs/LJ004-0075.npy -tests/data/ljspeech/wavs/LJ047-0226.wav|tests/data/ljspeech/wavs/LJ047-0226.npy -tests/data/ljspeech/wavs/LJ016-0044.wav|tests/data/ljspeech/wavs/LJ016-0044.npy -tests/data/ljspeech/wavs/LJ027-0117.wav|tests/data/ljspeech/wavs/LJ027-0117.npy -tests/data/ljspeech/wavs/LJ047-0040.wav|tests/data/ljspeech/wavs/LJ047-0040.npy -tests/data/ljspeech/wavs/LJ032-0149.wav|tests/data/ljspeech/wavs/LJ032-0149.npy -tests/data/ljspeech/wavs/LJ003-0035.wav|tests/data/ljspeech/wavs/LJ003-0035.npy -tests/data/ljspeech/wavs/LJ008-0192.wav|tests/data/ljspeech/wavs/LJ008-0192.npy -tests/data/ljspeech/wavs/LJ007-0242.wav|tests/data/ljspeech/wavs/LJ007-0242.npy -tests/data/ljspeech/wavs/LJ040-0172.wav|tests/data/ljspeech/wavs/LJ040-0172.npy -tests/data/ljspeech/wavs/LJ028-0001.wav|tests/data/ljspeech/wavs/LJ028-0001.npy -tests/data/ljspeech/wavs/LJ049-0120.wav|tests/data/ljspeech/wavs/LJ049-0120.npy -tests/data/ljspeech/wavs/LJ042-0239.wav|tests/data/ljspeech/wavs/LJ042-0239.npy -tests/data/ljspeech/wavs/LJ014-0174.wav|tests/data/ljspeech/wavs/LJ014-0174.npy -tests/data/ljspeech/wavs/LJ025-0031.wav|tests/data/ljspeech/wavs/LJ025-0031.npy -tests/data/ljspeech/wavs/LJ009-0287.wav|tests/data/ljspeech/wavs/LJ009-0287.npy -tests/data/ljspeech/wavs/LJ027-0136.wav|tests/data/ljspeech/wavs/LJ027-0136.npy -tests/data/ljspeech/wavs/LJ021-0025.wav|tests/data/ljspeech/wavs/LJ021-0025.npy -tests/data/ljspeech/wavs/LJ030-0118.wav|tests/data/ljspeech/wavs/LJ030-0118.npy -tests/data/ljspeech/wavs/LJ009-0302.wav|tests/data/ljspeech/wavs/LJ009-0302.npy -tests/data/ljspeech/wavs/LJ019-0310.wav|tests/data/ljspeech/wavs/LJ019-0310.npy -tests/data/ljspeech/wavs/LJ041-0138.wav|tests/data/ljspeech/wavs/LJ041-0138.npy -tests/data/ljspeech/wavs/LJ048-0281.wav|tests/data/ljspeech/wavs/LJ048-0281.npy -tests/data/ljspeech/wavs/LJ008-0115.wav|tests/data/ljspeech/wavs/LJ008-0115.npy -tests/data/ljspeech/wavs/LJ030-0235.wav|tests/data/ljspeech/wavs/LJ030-0235.npy -tests/data/ljspeech/wavs/LJ046-0216.wav|tests/data/ljspeech/wavs/LJ046-0216.npy -tests/data/ljspeech/wavs/LJ014-0295.wav|tests/data/ljspeech/wavs/LJ014-0295.npy -tests/data/ljspeech/wavs/LJ034-0029.wav|tests/data/ljspeech/wavs/LJ034-0029.npy -tests/data/ljspeech/wavs/LJ015-0034.wav|tests/data/ljspeech/wavs/LJ015-0034.npy -tests/data/ljspeech/wavs/LJ035-0044.wav|tests/data/ljspeech/wavs/LJ035-0044.npy -tests/data/ljspeech/wavs/LJ011-0221.wav|tests/data/ljspeech/wavs/LJ011-0221.npy -tests/data/ljspeech/wavs/LJ009-0268.wav|tests/data/ljspeech/wavs/LJ009-0268.npy -tests/data/ljspeech/wavs/LJ046-0186.wav|tests/data/ljspeech/wavs/LJ046-0186.npy -tests/data/ljspeech/wavs/LJ019-0294.wav|tests/data/ljspeech/wavs/LJ019-0294.npy -tests/data/ljspeech/wavs/LJ036-0007.wav|tests/data/ljspeech/wavs/LJ036-0007.npy -tests/data/ljspeech/wavs/LJ003-0141.wav|tests/data/ljspeech/wavs/LJ003-0141.npy -tests/data/ljspeech/wavs/LJ019-0038.wav|tests/data/ljspeech/wavs/LJ019-0038.npy -tests/data/ljspeech/wavs/LJ033-0184.wav|tests/data/ljspeech/wavs/LJ033-0184.npy -tests/data/ljspeech/wavs/LJ032-0132.wav|tests/data/ljspeech/wavs/LJ032-0132.npy -tests/data/ljspeech/wavs/LJ037-0209.wav|tests/data/ljspeech/wavs/LJ037-0209.npy -tests/data/ljspeech/wavs/LJ010-0057.wav|tests/data/ljspeech/wavs/LJ010-0057.npy -tests/data/ljspeech/wavs/LJ003-0083.wav|tests/data/ljspeech/wavs/LJ003-0083.npy -tests/data/ljspeech/wavs/LJ003-0183.wav|tests/data/ljspeech/wavs/LJ003-0183.npy -tests/data/ljspeech/wavs/LJ023-0054.wav|tests/data/ljspeech/wavs/LJ023-0054.npy -tests/data/ljspeech/wavs/LJ003-0114.wav|tests/data/ljspeech/wavs/LJ003-0114.npy -tests/data/ljspeech/wavs/LJ001-0080.wav|tests/data/ljspeech/wavs/LJ001-0080.npy -tests/data/ljspeech/wavs/LJ028-0030.wav|tests/data/ljspeech/wavs/LJ028-0030.npy -tests/data/ljspeech/wavs/LJ006-0303.wav|tests/data/ljspeech/wavs/LJ006-0303.npy -tests/data/ljspeech/wavs/LJ035-0071.wav|tests/data/ljspeech/wavs/LJ035-0071.npy -tests/data/ljspeech/wavs/LJ025-0163.wav|tests/data/ljspeech/wavs/LJ025-0163.npy -tests/data/ljspeech/wavs/LJ037-0214.wav|tests/data/ljspeech/wavs/LJ037-0214.npy -tests/data/ljspeech/wavs/LJ048-0225.wav|tests/data/ljspeech/wavs/LJ048-0225.npy -tests/data/ljspeech/wavs/LJ014-0247.wav|tests/data/ljspeech/wavs/LJ014-0247.npy -tests/data/ljspeech/wavs/LJ009-0032.wav|tests/data/ljspeech/wavs/LJ009-0032.npy -tests/data/ljspeech/wavs/LJ019-0245.wav|tests/data/ljspeech/wavs/LJ019-0245.npy -tests/data/ljspeech/wavs/LJ009-0182.wav|tests/data/ljspeech/wavs/LJ009-0182.npy -tests/data/ljspeech/wavs/LJ009-0085.wav|tests/data/ljspeech/wavs/LJ009-0085.npy -tests/data/ljspeech/wavs/LJ019-0067.wav|tests/data/ljspeech/wavs/LJ019-0067.npy -tests/data/ljspeech/wavs/LJ033-0039.wav|tests/data/ljspeech/wavs/LJ033-0039.npy -tests/data/ljspeech/wavs/LJ015-0215.wav|tests/data/ljspeech/wavs/LJ015-0215.npy -tests/data/ljspeech/wavs/LJ008-0061.wav|tests/data/ljspeech/wavs/LJ008-0061.npy -tests/data/ljspeech/wavs/LJ015-0151.wav|tests/data/ljspeech/wavs/LJ015-0151.npy -tests/data/ljspeech/wavs/LJ015-0231.wav|tests/data/ljspeech/wavs/LJ015-0231.npy -tests/data/ljspeech/wavs/LJ009-0191.wav|tests/data/ljspeech/wavs/LJ009-0191.npy -tests/data/ljspeech/wavs/LJ021-0034.wav|tests/data/ljspeech/wavs/LJ021-0034.npy -tests/data/ljspeech/wavs/LJ003-0092.wav|tests/data/ljspeech/wavs/LJ003-0092.npy -tests/data/ljspeech/wavs/LJ014-0063.wav|tests/data/ljspeech/wavs/LJ014-0063.npy -tests/data/ljspeech/wavs/LJ015-0183.wav|tests/data/ljspeech/wavs/LJ015-0183.npy -tests/data/ljspeech/wavs/LJ011-0022.wav|tests/data/ljspeech/wavs/LJ011-0022.npy -tests/data/ljspeech/wavs/LJ043-0070.wav|tests/data/ljspeech/wavs/LJ043-0070.npy -tests/data/ljspeech/wavs/LJ046-0056.wav|tests/data/ljspeech/wavs/LJ046-0056.npy -tests/data/ljspeech/wavs/LJ044-0188.wav|tests/data/ljspeech/wavs/LJ044-0188.npy -tests/data/ljspeech/wavs/LJ042-0005.wav|tests/data/ljspeech/wavs/LJ042-0005.npy -tests/data/ljspeech/wavs/LJ050-0059.wav|tests/data/ljspeech/wavs/LJ050-0059.npy -tests/data/ljspeech/wavs/LJ047-0104.wav|tests/data/ljspeech/wavs/LJ047-0104.npy -tests/data/ljspeech/wavs/LJ027-0063.wav|tests/data/ljspeech/wavs/LJ027-0063.npy -tests/data/ljspeech/wavs/LJ010-0292.wav|tests/data/ljspeech/wavs/LJ010-0292.npy -tests/data/ljspeech/wavs/LJ033-0018.wav|tests/data/ljspeech/wavs/LJ033-0018.npy -tests/data/ljspeech/wavs/LJ031-0060.wav|tests/data/ljspeech/wavs/LJ031-0060.npy -tests/data/ljspeech/wavs/LJ006-0214.wav|tests/data/ljspeech/wavs/LJ006-0214.npy -tests/data/ljspeech/wavs/LJ027-0085.wav|tests/data/ljspeech/wavs/LJ027-0085.npy -tests/data/ljspeech/wavs/LJ036-0052.wav|tests/data/ljspeech/wavs/LJ036-0052.npy -tests/data/ljspeech/wavs/LJ008-0234.wav|tests/data/ljspeech/wavs/LJ008-0234.npy -tests/data/ljspeech/wavs/LJ032-0263.wav|tests/data/ljspeech/wavs/LJ032-0263.npy -tests/data/ljspeech/wavs/LJ046-0157.wav|tests/data/ljspeech/wavs/LJ046-0157.npy -tests/data/ljspeech/wavs/LJ006-0241.wav|tests/data/ljspeech/wavs/LJ006-0241.npy -tests/data/ljspeech/wavs/LJ049-0050.wav|tests/data/ljspeech/wavs/LJ049-0050.npy -tests/data/ljspeech/wavs/LJ009-0039.wav|tests/data/ljspeech/wavs/LJ009-0039.npy -tests/data/ljspeech/wavs/LJ040-0136.wav|tests/data/ljspeech/wavs/LJ040-0136.npy -tests/data/ljspeech/wavs/LJ040-0045.wav|tests/data/ljspeech/wavs/LJ040-0045.npy -tests/data/ljspeech/wavs/LJ016-0369.wav|tests/data/ljspeech/wavs/LJ016-0369.npy -tests/data/ljspeech/wavs/LJ035-0039.wav|tests/data/ljspeech/wavs/LJ035-0039.npy -tests/data/ljspeech/wavs/LJ017-0061.wav|tests/data/ljspeech/wavs/LJ017-0061.npy -tests/data/ljspeech/wavs/LJ049-0039.wav|tests/data/ljspeech/wavs/LJ049-0039.npy -tests/data/ljspeech/wavs/LJ027-0044.wav|tests/data/ljspeech/wavs/LJ027-0044.npy -tests/data/ljspeech/wavs/LJ019-0349.wav|tests/data/ljspeech/wavs/LJ019-0349.npy -tests/data/ljspeech/wavs/LJ028-0338.wav|tests/data/ljspeech/wavs/LJ028-0338.npy -tests/data/ljspeech/wavs/LJ028-0430.wav|tests/data/ljspeech/wavs/LJ028-0430.npy -tests/data/ljspeech/wavs/LJ011-0220.wav|tests/data/ljspeech/wavs/LJ011-0220.npy -tests/data/ljspeech/wavs/LJ018-0167.wav|tests/data/ljspeech/wavs/LJ018-0167.npy -tests/data/ljspeech/wavs/LJ013-0012.wav|tests/data/ljspeech/wavs/LJ013-0012.npy -tests/data/ljspeech/wavs/LJ001-0091.wav|tests/data/ljspeech/wavs/LJ001-0091.npy -tests/data/ljspeech/wavs/LJ026-0019.wav|tests/data/ljspeech/wavs/LJ026-0019.npy -tests/data/ljspeech/wavs/LJ022-0184.wav|tests/data/ljspeech/wavs/LJ022-0184.npy -tests/data/ljspeech/wavs/LJ017-0153.wav|tests/data/ljspeech/wavs/LJ017-0153.npy -tests/data/ljspeech/wavs/LJ016-0068.wav|tests/data/ljspeech/wavs/LJ016-0068.npy -tests/data/ljspeech/wavs/LJ015-0295.wav|tests/data/ljspeech/wavs/LJ015-0295.npy -tests/data/ljspeech/wavs/LJ050-0154.wav|tests/data/ljspeech/wavs/LJ050-0154.npy -tests/data/ljspeech/wavs/LJ006-0112.wav|tests/data/ljspeech/wavs/LJ006-0112.npy -tests/data/ljspeech/wavs/LJ041-0022.wav|tests/data/ljspeech/wavs/LJ041-0022.npy -tests/data/ljspeech/wavs/LJ046-0082.wav|tests/data/ljspeech/wavs/LJ046-0082.npy -tests/data/ljspeech/wavs/LJ006-0259.wav|tests/data/ljspeech/wavs/LJ006-0259.npy -tests/data/ljspeech/wavs/LJ034-0076.wav|tests/data/ljspeech/wavs/LJ034-0076.npy -tests/data/ljspeech/wavs/LJ039-0214.wav|tests/data/ljspeech/wavs/LJ039-0214.npy -tests/data/ljspeech/wavs/LJ007-0091.wav|tests/data/ljspeech/wavs/LJ007-0091.npy -tests/data/ljspeech/wavs/LJ030-0066.wav|tests/data/ljspeech/wavs/LJ030-0066.npy -tests/data/ljspeech/wavs/LJ041-0056.wav|tests/data/ljspeech/wavs/LJ041-0056.npy -tests/data/ljspeech/wavs/LJ003-0042.wav|tests/data/ljspeech/wavs/LJ003-0042.npy -tests/data/ljspeech/wavs/LJ001-0138.wav|tests/data/ljspeech/wavs/LJ001-0138.npy -tests/data/ljspeech/wavs/LJ020-0097.wav|tests/data/ljspeech/wavs/LJ020-0097.npy -tests/data/ljspeech/wavs/LJ039-0217.wav|tests/data/ljspeech/wavs/LJ039-0217.npy -tests/data/ljspeech/wavs/LJ017-0218.wav|tests/data/ljspeech/wavs/LJ017-0218.npy -tests/data/ljspeech/wavs/LJ032-0042.wav|tests/data/ljspeech/wavs/LJ032-0042.npy -tests/data/ljspeech/wavs/LJ011-0284.wav|tests/data/ljspeech/wavs/LJ011-0284.npy -tests/data/ljspeech/wavs/LJ002-0315.wav|tests/data/ljspeech/wavs/LJ002-0315.npy -tests/data/ljspeech/wavs/LJ049-0132.wav|tests/data/ljspeech/wavs/LJ049-0132.npy -tests/data/ljspeech/wavs/LJ009-0038.wav|tests/data/ljspeech/wavs/LJ009-0038.npy -tests/data/ljspeech/wavs/LJ003-0049.wav|tests/data/ljspeech/wavs/LJ003-0049.npy -tests/data/ljspeech/wavs/LJ028-0146.wav|tests/data/ljspeech/wavs/LJ028-0146.npy -tests/data/ljspeech/wavs/LJ005-0044.wav|tests/data/ljspeech/wavs/LJ005-0044.npy -tests/data/ljspeech/wavs/LJ007-0025.wav|tests/data/ljspeech/wavs/LJ007-0025.npy -tests/data/ljspeech/wavs/LJ043-0180.wav|tests/data/ljspeech/wavs/LJ043-0180.npy -tests/data/ljspeech/wavs/LJ037-0144.wav|tests/data/ljspeech/wavs/LJ037-0144.npy -tests/data/ljspeech/wavs/LJ041-0203.wav|tests/data/ljspeech/wavs/LJ041-0203.npy -tests/data/ljspeech/wavs/LJ019-0270.wav|tests/data/ljspeech/wavs/LJ019-0270.npy -tests/data/ljspeech/wavs/LJ026-0165.wav|tests/data/ljspeech/wavs/LJ026-0165.npy -tests/data/ljspeech/wavs/LJ044-0023.wav|tests/data/ljspeech/wavs/LJ044-0023.npy -tests/data/ljspeech/wavs/LJ048-0075.wav|tests/data/ljspeech/wavs/LJ048-0075.npy -tests/data/ljspeech/wavs/LJ025-0026.wav|tests/data/ljspeech/wavs/LJ025-0026.npy -tests/data/ljspeech/wavs/LJ028-0483.wav|tests/data/ljspeech/wavs/LJ028-0483.npy -tests/data/ljspeech/wavs/LJ001-0047.wav|tests/data/ljspeech/wavs/LJ001-0047.npy -tests/data/ljspeech/wavs/LJ025-0025.wav|tests/data/ljspeech/wavs/LJ025-0025.npy -tests/data/ljspeech/wavs/LJ026-0057.wav|tests/data/ljspeech/wavs/LJ026-0057.npy -tests/data/ljspeech/wavs/LJ021-0098.wav|tests/data/ljspeech/wavs/LJ021-0098.npy -tests/data/ljspeech/wavs/LJ019-0343.wav|tests/data/ljspeech/wavs/LJ019-0343.npy -tests/data/ljspeech/wavs/LJ004-0097.wav|tests/data/ljspeech/wavs/LJ004-0097.npy -tests/data/ljspeech/wavs/LJ006-0263.wav|tests/data/ljspeech/wavs/LJ006-0263.npy -tests/data/ljspeech/wavs/LJ006-0039.wav|tests/data/ljspeech/wavs/LJ006-0039.npy -tests/data/ljspeech/wavs/LJ014-0229.wav|tests/data/ljspeech/wavs/LJ014-0229.npy -tests/data/ljspeech/wavs/LJ015-0259.wav|tests/data/ljspeech/wavs/LJ015-0259.npy -tests/data/ljspeech/wavs/LJ042-0152.wav|tests/data/ljspeech/wavs/LJ042-0152.npy -tests/data/ljspeech/wavs/LJ031-0043.wav|tests/data/ljspeech/wavs/LJ031-0043.npy -tests/data/ljspeech/wavs/LJ041-0154.wav|tests/data/ljspeech/wavs/LJ041-0154.npy -tests/data/ljspeech/wavs/LJ029-0051.wav|tests/data/ljspeech/wavs/LJ029-0051.npy -tests/data/ljspeech/wavs/LJ018-0126.wav|tests/data/ljspeech/wavs/LJ018-0126.npy -tests/data/ljspeech/wavs/LJ004-0148.wav|tests/data/ljspeech/wavs/LJ004-0148.npy -tests/data/ljspeech/wavs/LJ005-0084.wav|tests/data/ljspeech/wavs/LJ005-0084.npy -tests/data/ljspeech/wavs/LJ021-0128.wav|tests/data/ljspeech/wavs/LJ021-0128.npy -tests/data/ljspeech/wavs/LJ047-0075.wav|tests/data/ljspeech/wavs/LJ047-0075.npy -tests/data/ljspeech/wavs/LJ035-0078.wav|tests/data/ljspeech/wavs/LJ035-0078.npy -tests/data/ljspeech/wavs/LJ018-0334.wav|tests/data/ljspeech/wavs/LJ018-0334.npy -tests/data/ljspeech/wavs/LJ012-0212.wav|tests/data/ljspeech/wavs/LJ012-0212.npy -tests/data/ljspeech/wavs/LJ011-0256.wav|tests/data/ljspeech/wavs/LJ011-0256.npy -tests/data/ljspeech/wavs/LJ016-0212.wav|tests/data/ljspeech/wavs/LJ016-0212.npy -tests/data/ljspeech/wavs/LJ044-0222.wav|tests/data/ljspeech/wavs/LJ044-0222.npy -tests/data/ljspeech/wavs/LJ032-0027.wav|tests/data/ljspeech/wavs/LJ032-0027.npy -tests/data/ljspeech/wavs/LJ050-0177.wav|tests/data/ljspeech/wavs/LJ050-0177.npy -tests/data/ljspeech/wavs/LJ039-0137.wav|tests/data/ljspeech/wavs/LJ039-0137.npy -tests/data/ljspeech/wavs/LJ012-0092.wav|tests/data/ljspeech/wavs/LJ012-0092.npy -tests/data/ljspeech/wavs/LJ037-0012.wav|tests/data/ljspeech/wavs/LJ037-0012.npy -tests/data/ljspeech/wavs/LJ034-0188.wav|tests/data/ljspeech/wavs/LJ034-0188.npy -tests/data/ljspeech/wavs/LJ004-0111.wav|tests/data/ljspeech/wavs/LJ004-0111.npy -tests/data/ljspeech/wavs/LJ002-0331.wav|tests/data/ljspeech/wavs/LJ002-0331.npy -tests/data/ljspeech/wavs/LJ049-0052.wav|tests/data/ljspeech/wavs/LJ049-0052.npy -tests/data/ljspeech/wavs/LJ013-0126.wav|tests/data/ljspeech/wavs/LJ013-0126.npy -tests/data/ljspeech/wavs/LJ001-0118.wav|tests/data/ljspeech/wavs/LJ001-0118.npy -tests/data/ljspeech/wavs/LJ033-0168.wav|tests/data/ljspeech/wavs/LJ033-0168.npy -tests/data/ljspeech/wavs/LJ008-0273.wav|tests/data/ljspeech/wavs/LJ008-0273.npy -tests/data/ljspeech/wavs/LJ008-0138.wav|tests/data/ljspeech/wavs/LJ008-0138.npy -tests/data/ljspeech/wavs/LJ031-0130.wav|tests/data/ljspeech/wavs/LJ031-0130.npy -tests/data/ljspeech/wavs/LJ008-0017.wav|tests/data/ljspeech/wavs/LJ008-0017.npy -tests/data/ljspeech/wavs/LJ015-0107.wav|tests/data/ljspeech/wavs/LJ015-0107.npy -tests/data/ljspeech/wavs/LJ048-0082.wav|tests/data/ljspeech/wavs/LJ048-0082.npy -tests/data/ljspeech/wavs/LJ039-0019.wav|tests/data/ljspeech/wavs/LJ039-0019.npy -tests/data/ljspeech/wavs/LJ029-0100.wav|tests/data/ljspeech/wavs/LJ029-0100.npy -tests/data/ljspeech/wavs/LJ028-0359.wav|tests/data/ljspeech/wavs/LJ028-0359.npy -tests/data/ljspeech/wavs/LJ015-0021.wav|tests/data/ljspeech/wavs/LJ015-0021.npy -tests/data/ljspeech/wavs/LJ028-0067.wav|tests/data/ljspeech/wavs/LJ028-0067.npy -tests/data/ljspeech/wavs/LJ047-0054.wav|tests/data/ljspeech/wavs/LJ047-0054.npy -tests/data/ljspeech/wavs/LJ006-0029.wav|tests/data/ljspeech/wavs/LJ006-0029.npy -tests/data/ljspeech/wavs/LJ010-0178.wav|tests/data/ljspeech/wavs/LJ010-0178.npy -tests/data/ljspeech/wavs/LJ016-0290.wav|tests/data/ljspeech/wavs/LJ016-0290.npy -tests/data/ljspeech/wavs/LJ019-0108.wav|tests/data/ljspeech/wavs/LJ019-0108.npy -tests/data/ljspeech/wavs/LJ001-0108.wav|tests/data/ljspeech/wavs/LJ001-0108.npy -tests/data/ljspeech/wavs/LJ003-0311.wav|tests/data/ljspeech/wavs/LJ003-0311.npy -tests/data/ljspeech/wavs/LJ028-0478.wav|tests/data/ljspeech/wavs/LJ028-0478.npy -tests/data/ljspeech/wavs/LJ032-0035.wav|tests/data/ljspeech/wavs/LJ032-0035.npy -tests/data/ljspeech/wavs/LJ044-0010.wav|tests/data/ljspeech/wavs/LJ044-0010.npy -tests/data/ljspeech/wavs/LJ039-0105.wav|tests/data/ljspeech/wavs/LJ039-0105.npy -tests/data/ljspeech/wavs/LJ028-0425.wav|tests/data/ljspeech/wavs/LJ028-0425.npy -tests/data/ljspeech/wavs/LJ034-0041.wav|tests/data/ljspeech/wavs/LJ034-0041.npy -tests/data/ljspeech/wavs/LJ012-0069.wav|tests/data/ljspeech/wavs/LJ012-0069.npy -tests/data/ljspeech/wavs/LJ045-0242.wav|tests/data/ljspeech/wavs/LJ045-0242.npy -tests/data/ljspeech/wavs/LJ030-0039.wav|tests/data/ljspeech/wavs/LJ030-0039.npy -tests/data/ljspeech/wavs/LJ021-0204.wav|tests/data/ljspeech/wavs/LJ021-0204.npy -tests/data/ljspeech/wavs/LJ050-0123.wav|tests/data/ljspeech/wavs/LJ050-0123.npy -tests/data/ljspeech/wavs/LJ025-0087.wav|tests/data/ljspeech/wavs/LJ025-0087.npy -tests/data/ljspeech/wavs/LJ044-0134.wav|tests/data/ljspeech/wavs/LJ044-0134.npy -tests/data/ljspeech/wavs/LJ046-0016.wav|tests/data/ljspeech/wavs/LJ046-0016.npy -tests/data/ljspeech/wavs/LJ015-0301.wav|tests/data/ljspeech/wavs/LJ015-0301.npy -tests/data/ljspeech/wavs/LJ041-0018.wav|tests/data/ljspeech/wavs/LJ041-0018.npy -tests/data/ljspeech/wavs/LJ030-0070.wav|tests/data/ljspeech/wavs/LJ030-0070.npy -tests/data/ljspeech/wavs/LJ010-0267.wav|tests/data/ljspeech/wavs/LJ010-0267.npy -tests/data/ljspeech/wavs/LJ008-0227.wav|tests/data/ljspeech/wavs/LJ008-0227.npy -tests/data/ljspeech/wavs/LJ042-0032.wav|tests/data/ljspeech/wavs/LJ042-0032.npy -tests/data/ljspeech/wavs/LJ036-0015.wav|tests/data/ljspeech/wavs/LJ036-0015.npy -tests/data/ljspeech/wavs/LJ034-0082.wav|tests/data/ljspeech/wavs/LJ034-0082.npy -tests/data/ljspeech/wavs/LJ024-0113.wav|tests/data/ljspeech/wavs/LJ024-0113.npy -tests/data/ljspeech/wavs/LJ004-0063.wav|tests/data/ljspeech/wavs/LJ004-0063.npy -tests/data/ljspeech/wavs/LJ036-0100.wav|tests/data/ljspeech/wavs/LJ036-0100.npy -tests/data/ljspeech/wavs/LJ022-0035.wav|tests/data/ljspeech/wavs/LJ022-0035.npy -tests/data/ljspeech/wavs/LJ003-0014.wav|tests/data/ljspeech/wavs/LJ003-0014.npy -tests/data/ljspeech/wavs/LJ013-0232.wav|tests/data/ljspeech/wavs/LJ013-0232.npy -tests/data/ljspeech/wavs/LJ013-0195.wav|tests/data/ljspeech/wavs/LJ013-0195.npy -tests/data/ljspeech/wavs/LJ045-0206.wav|tests/data/ljspeech/wavs/LJ045-0206.npy -tests/data/ljspeech/wavs/LJ008-0102.wav|tests/data/ljspeech/wavs/LJ008-0102.npy -tests/data/ljspeech/wavs/LJ007-0123.wav|tests/data/ljspeech/wavs/LJ007-0123.npy -tests/data/ljspeech/wavs/LJ003-0165.wav|tests/data/ljspeech/wavs/LJ003-0165.npy -tests/data/ljspeech/wavs/LJ023-0023.wav|tests/data/ljspeech/wavs/LJ023-0023.npy -tests/data/ljspeech/wavs/LJ040-0066.wav|tests/data/ljspeech/wavs/LJ040-0066.npy -tests/data/ljspeech/wavs/LJ035-0161.wav|tests/data/ljspeech/wavs/LJ035-0161.npy -tests/data/ljspeech/wavs/LJ038-0010.wav|tests/data/ljspeech/wavs/LJ038-0010.npy -tests/data/ljspeech/wavs/LJ015-0311.wav|tests/data/ljspeech/wavs/LJ015-0311.npy -tests/data/ljspeech/wavs/LJ003-0093.wav|tests/data/ljspeech/wavs/LJ003-0093.npy -tests/data/ljspeech/wavs/LJ001-0048.wav|tests/data/ljspeech/wavs/LJ001-0048.npy -tests/data/ljspeech/wavs/LJ021-0051.wav|tests/data/ljspeech/wavs/LJ021-0051.npy -tests/data/ljspeech/wavs/LJ014-0261.wav|tests/data/ljspeech/wavs/LJ014-0261.npy -tests/data/ljspeech/wavs/LJ027-0069.wav|tests/data/ljspeech/wavs/LJ027-0069.npy -tests/data/ljspeech/wavs/LJ031-0048.wav|tests/data/ljspeech/wavs/LJ031-0048.npy -tests/data/ljspeech/wavs/LJ023-0049.wav|tests/data/ljspeech/wavs/LJ023-0049.npy -tests/data/ljspeech/wavs/LJ038-0009.wav|tests/data/ljspeech/wavs/LJ038-0009.npy -tests/data/ljspeech/wavs/LJ028-0240.wav|tests/data/ljspeech/wavs/LJ028-0240.npy -tests/data/ljspeech/wavs/LJ015-0305.wav|tests/data/ljspeech/wavs/LJ015-0305.npy -tests/data/ljspeech/wavs/LJ049-0169.wav|tests/data/ljspeech/wavs/LJ049-0169.npy -tests/data/ljspeech/wavs/LJ004-0214.wav|tests/data/ljspeech/wavs/LJ004-0214.npy -tests/data/ljspeech/wavs/LJ036-0189.wav|tests/data/ljspeech/wavs/LJ036-0189.npy -tests/data/ljspeech/wavs/LJ050-0110.wav|tests/data/ljspeech/wavs/LJ050-0110.npy -tests/data/ljspeech/wavs/LJ001-0064.wav|tests/data/ljspeech/wavs/LJ001-0064.npy -tests/data/ljspeech/wavs/LJ045-0158.wav|tests/data/ljspeech/wavs/LJ045-0158.npy -tests/data/ljspeech/wavs/LJ044-0159.wav|tests/data/ljspeech/wavs/LJ044-0159.npy -tests/data/ljspeech/wavs/LJ015-0003.wav|tests/data/ljspeech/wavs/LJ015-0003.npy -tests/data/ljspeech/wavs/LJ021-0106.wav|tests/data/ljspeech/wavs/LJ021-0106.npy -tests/data/ljspeech/wavs/LJ040-0069.wav|tests/data/ljspeech/wavs/LJ040-0069.npy -tests/data/ljspeech/wavs/LJ005-0198.wav|tests/data/ljspeech/wavs/LJ005-0198.npy -tests/data/ljspeech/wavs/LJ014-0286.wav|tests/data/ljspeech/wavs/LJ014-0286.npy -tests/data/ljspeech/wavs/LJ039-0178.wav|tests/data/ljspeech/wavs/LJ039-0178.npy -tests/data/ljspeech/wavs/LJ004-0212.wav|tests/data/ljspeech/wavs/LJ004-0212.npy -tests/data/ljspeech/wavs/LJ003-0157.wav|tests/data/ljspeech/wavs/LJ003-0157.npy -tests/data/ljspeech/wavs/LJ022-0011.wav|tests/data/ljspeech/wavs/LJ022-0011.npy -tests/data/ljspeech/wavs/LJ009-0069.wav|tests/data/ljspeech/wavs/LJ009-0069.npy -tests/data/ljspeech/wavs/LJ011-0040.wav|tests/data/ljspeech/wavs/LJ011-0040.npy -tests/data/ljspeech/wavs/LJ034-0022.wav|tests/data/ljspeech/wavs/LJ034-0022.npy -tests/data/ljspeech/wavs/LJ011-0063.wav|tests/data/ljspeech/wavs/LJ011-0063.npy -tests/data/ljspeech/wavs/LJ046-0067.wav|tests/data/ljspeech/wavs/LJ046-0067.npy -tests/data/ljspeech/wavs/LJ002-0177.wav|tests/data/ljspeech/wavs/LJ002-0177.npy -tests/data/ljspeech/wavs/LJ046-0198.wav|tests/data/ljspeech/wavs/LJ046-0198.npy -tests/data/ljspeech/wavs/LJ022-0082.wav|tests/data/ljspeech/wavs/LJ022-0082.npy -tests/data/ljspeech/wavs/LJ009-0184.wav|tests/data/ljspeech/wavs/LJ009-0184.npy -tests/data/ljspeech/wavs/LJ050-0147.wav|tests/data/ljspeech/wavs/LJ050-0147.npy -tests/data/ljspeech/wavs/LJ005-0144.wav|tests/data/ljspeech/wavs/LJ005-0144.npy -tests/data/ljspeech/wavs/LJ003-0166.wav|tests/data/ljspeech/wavs/LJ003-0166.npy -tests/data/ljspeech/wavs/LJ011-0102.wav|tests/data/ljspeech/wavs/LJ011-0102.npy -tests/data/ljspeech/wavs/LJ010-0046.wav|tests/data/ljspeech/wavs/LJ010-0046.npy -tests/data/ljspeech/wavs/LJ025-0023.wav|tests/data/ljspeech/wavs/LJ025-0023.npy -tests/data/ljspeech/wavs/LJ025-0044.wav|tests/data/ljspeech/wavs/LJ025-0044.npy -tests/data/ljspeech/wavs/LJ010-0257.wav|tests/data/ljspeech/wavs/LJ010-0257.npy -tests/data/ljspeech/wavs/LJ027-0054.wav|tests/data/ljspeech/wavs/LJ027-0054.npy -tests/data/ljspeech/wavs/LJ041-0052.wav|tests/data/ljspeech/wavs/LJ041-0052.npy -tests/data/ljspeech/wavs/LJ006-0250.wav|tests/data/ljspeech/wavs/LJ006-0250.npy -tests/data/ljspeech/wavs/LJ028-0488.wav|tests/data/ljspeech/wavs/LJ028-0488.npy -tests/data/ljspeech/wavs/LJ030-0064.wav|tests/data/ljspeech/wavs/LJ030-0064.npy -tests/data/ljspeech/wavs/LJ015-0141.wav|tests/data/ljspeech/wavs/LJ015-0141.npy -tests/data/ljspeech/wavs/LJ029-0118.wav|tests/data/ljspeech/wavs/LJ029-0118.npy -tests/data/ljspeech/wavs/LJ039-0051.wav|tests/data/ljspeech/wavs/LJ039-0051.npy -tests/data/ljspeech/wavs/LJ016-0116.wav|tests/data/ljspeech/wavs/LJ016-0116.npy -tests/data/ljspeech/wavs/LJ015-0079.wav|tests/data/ljspeech/wavs/LJ015-0079.npy -tests/data/ljspeech/wavs/LJ003-0089.wav|tests/data/ljspeech/wavs/LJ003-0089.npy -tests/data/ljspeech/wavs/LJ016-0413.wav|tests/data/ljspeech/wavs/LJ016-0413.npy -tests/data/ljspeech/wavs/LJ036-0096.wav|tests/data/ljspeech/wavs/LJ036-0096.npy -tests/data/ljspeech/wavs/LJ012-0172.wav|tests/data/ljspeech/wavs/LJ012-0172.npy -tests/data/ljspeech/wavs/LJ016-0078.wav|tests/data/ljspeech/wavs/LJ016-0078.npy -tests/data/ljspeech/wavs/LJ014-0040.wav|tests/data/ljspeech/wavs/LJ014-0040.npy -tests/data/ljspeech/wavs/LJ033-0139.wav|tests/data/ljspeech/wavs/LJ033-0139.npy -tests/data/ljspeech/wavs/LJ047-0009.wav|tests/data/ljspeech/wavs/LJ047-0009.npy -tests/data/ljspeech/wavs/LJ047-0116.wav|tests/data/ljspeech/wavs/LJ047-0116.npy -tests/data/ljspeech/wavs/LJ032-0217.wav|tests/data/ljspeech/wavs/LJ032-0217.npy -tests/data/ljspeech/wavs/LJ001-0093.wav|tests/data/ljspeech/wavs/LJ001-0093.npy -tests/data/ljspeech/wavs/LJ027-0155.wav|tests/data/ljspeech/wavs/LJ027-0155.npy -tests/data/ljspeech/wavs/LJ025-0143.wav|tests/data/ljspeech/wavs/LJ025-0143.npy -tests/data/ljspeech/wavs/LJ018-0258.wav|tests/data/ljspeech/wavs/LJ018-0258.npy -tests/data/ljspeech/wavs/LJ045-0193.wav|tests/data/ljspeech/wavs/LJ045-0193.npy -tests/data/ljspeech/wavs/LJ013-0032.wav|tests/data/ljspeech/wavs/LJ013-0032.npy -tests/data/ljspeech/wavs/LJ018-0248.wav|tests/data/ljspeech/wavs/LJ018-0248.npy -tests/data/ljspeech/wavs/LJ017-0172.wav|tests/data/ljspeech/wavs/LJ017-0172.npy -tests/data/ljspeech/wavs/LJ016-0209.wav|tests/data/ljspeech/wavs/LJ016-0209.npy -tests/data/ljspeech/wavs/LJ013-0034.wav|tests/data/ljspeech/wavs/LJ013-0034.npy -tests/data/ljspeech/wavs/LJ047-0244.wav|tests/data/ljspeech/wavs/LJ047-0244.npy -tests/data/ljspeech/wavs/LJ017-0243.wav|tests/data/ljspeech/wavs/LJ017-0243.npy -tests/data/ljspeech/wavs/LJ043-0035.wav|tests/data/ljspeech/wavs/LJ043-0035.npy -tests/data/ljspeech/wavs/LJ030-0004.wav|tests/data/ljspeech/wavs/LJ030-0004.npy -tests/data/ljspeech/wavs/LJ047-0098.wav|tests/data/ljspeech/wavs/LJ047-0098.npy -tests/data/ljspeech/wavs/LJ028-0197.wav|tests/data/ljspeech/wavs/LJ028-0197.npy -tests/data/ljspeech/wavs/LJ044-0226.wav|tests/data/ljspeech/wavs/LJ044-0226.npy -tests/data/ljspeech/wavs/LJ005-0123.wav|tests/data/ljspeech/wavs/LJ005-0123.npy -tests/data/ljspeech/wavs/LJ013-0015.wav|tests/data/ljspeech/wavs/LJ013-0015.npy -tests/data/ljspeech/wavs/LJ018-0293.wav|tests/data/ljspeech/wavs/LJ018-0293.npy -tests/data/ljspeech/wavs/LJ039-0233.wav|tests/data/ljspeech/wavs/LJ039-0233.npy -tests/data/ljspeech/wavs/LJ018-0368.wav|tests/data/ljspeech/wavs/LJ018-0368.npy -tests/data/ljspeech/wavs/LJ036-0217.wav|tests/data/ljspeech/wavs/LJ036-0217.npy -tests/data/ljspeech/wavs/LJ009-0165.wav|tests/data/ljspeech/wavs/LJ009-0165.npy -tests/data/ljspeech/wavs/LJ013-0237.wav|tests/data/ljspeech/wavs/LJ013-0237.npy -tests/data/ljspeech/wavs/LJ005-0209.wav|tests/data/ljspeech/wavs/LJ005-0209.npy -tests/data/ljspeech/wavs/LJ019-0363.wav|tests/data/ljspeech/wavs/LJ019-0363.npy -tests/data/ljspeech/wavs/LJ018-0216.wav|tests/data/ljspeech/wavs/LJ018-0216.npy -tests/data/ljspeech/wavs/LJ045-0179.wav|tests/data/ljspeech/wavs/LJ045-0179.npy -tests/data/ljspeech/wavs/LJ017-0211.wav|tests/data/ljspeech/wavs/LJ017-0211.npy -tests/data/ljspeech/wavs/LJ013-0078.wav|tests/data/ljspeech/wavs/LJ013-0078.npy -tests/data/ljspeech/wavs/LJ016-0326.wav|tests/data/ljspeech/wavs/LJ016-0326.npy -tests/data/ljspeech/wavs/LJ042-0095.wav|tests/data/ljspeech/wavs/LJ042-0095.npy -tests/data/ljspeech/wavs/LJ038-0302.wav|tests/data/ljspeech/wavs/LJ038-0302.npy -tests/data/ljspeech/wavs/LJ026-0004.wav|tests/data/ljspeech/wavs/LJ026-0004.npy -tests/data/ljspeech/wavs/LJ031-0044.wav|tests/data/ljspeech/wavs/LJ031-0044.npy -tests/data/ljspeech/wavs/LJ046-0202.wav|tests/data/ljspeech/wavs/LJ046-0202.npy -tests/data/ljspeech/wavs/LJ044-0102.wav|tests/data/ljspeech/wavs/LJ044-0102.npy -tests/data/ljspeech/wavs/LJ027-0023.wav|tests/data/ljspeech/wavs/LJ027-0023.npy -tests/data/ljspeech/wavs/LJ039-0062.wav|tests/data/ljspeech/wavs/LJ039-0062.npy -tests/data/ljspeech/wavs/LJ013-0160.wav|tests/data/ljspeech/wavs/LJ013-0160.npy -tests/data/ljspeech/wavs/LJ024-0135.wav|tests/data/ljspeech/wavs/LJ024-0135.npy -tests/data/ljspeech/wavs/LJ003-0154.wav|tests/data/ljspeech/wavs/LJ003-0154.npy -tests/data/ljspeech/wavs/LJ047-0155.wav|tests/data/ljspeech/wavs/LJ047-0155.npy -tests/data/ljspeech/wavs/LJ011-0264.wav|tests/data/ljspeech/wavs/LJ011-0264.npy -tests/data/ljspeech/wavs/LJ006-0234.wav|tests/data/ljspeech/wavs/LJ006-0234.npy -tests/data/ljspeech/wavs/LJ012-0271.wav|tests/data/ljspeech/wavs/LJ012-0271.npy -tests/data/ljspeech/wavs/LJ014-0065.wav|tests/data/ljspeech/wavs/LJ014-0065.npy -tests/data/ljspeech/wavs/LJ028-0082.wav|tests/data/ljspeech/wavs/LJ028-0082.npy -tests/data/ljspeech/wavs/LJ013-0180.wav|tests/data/ljspeech/wavs/LJ013-0180.npy -tests/data/ljspeech/wavs/LJ038-0039.wav|tests/data/ljspeech/wavs/LJ038-0039.npy -tests/data/ljspeech/wavs/LJ049-0037.wav|tests/data/ljspeech/wavs/LJ049-0037.npy -tests/data/ljspeech/wavs/LJ048-0061.wav|tests/data/ljspeech/wavs/LJ048-0061.npy -tests/data/ljspeech/wavs/LJ016-0367.wav|tests/data/ljspeech/wavs/LJ016-0367.npy -tests/data/ljspeech/wavs/LJ047-0064.wav|tests/data/ljspeech/wavs/LJ047-0064.npy -tests/data/ljspeech/wavs/LJ028-0263.wav|tests/data/ljspeech/wavs/LJ028-0263.npy -tests/data/ljspeech/wavs/LJ003-0208.wav|tests/data/ljspeech/wavs/LJ003-0208.npy -tests/data/ljspeech/wavs/LJ015-0049.wav|tests/data/ljspeech/wavs/LJ015-0049.npy -tests/data/ljspeech/wavs/LJ029-0007.wav|tests/data/ljspeech/wavs/LJ029-0007.npy -tests/data/ljspeech/wavs/LJ002-0073.wav|tests/data/ljspeech/wavs/LJ002-0073.npy -tests/data/ljspeech/wavs/LJ039-0028.wav|tests/data/ljspeech/wavs/LJ039-0028.npy -tests/data/ljspeech/wavs/LJ013-0051.wav|tests/data/ljspeech/wavs/LJ013-0051.npy -tests/data/ljspeech/wavs/LJ046-0197.wav|tests/data/ljspeech/wavs/LJ046-0197.npy -tests/data/ljspeech/wavs/LJ012-0264.wav|tests/data/ljspeech/wavs/LJ012-0264.npy -tests/data/ljspeech/wavs/LJ041-0045.wav|tests/data/ljspeech/wavs/LJ041-0045.npy -tests/data/ljspeech/wavs/LJ021-0056.wav|tests/data/ljspeech/wavs/LJ021-0056.npy -tests/data/ljspeech/wavs/LJ008-0132.wav|tests/data/ljspeech/wavs/LJ008-0132.npy -tests/data/ljspeech/wavs/LJ028-0225.wav|tests/data/ljspeech/wavs/LJ028-0225.npy -tests/data/ljspeech/wavs/LJ028-0094.wav|tests/data/ljspeech/wavs/LJ028-0094.npy -tests/data/ljspeech/wavs/LJ009-0245.wav|tests/data/ljspeech/wavs/LJ009-0245.npy -tests/data/ljspeech/wavs/LJ044-0126.wav|tests/data/ljspeech/wavs/LJ044-0126.npy -tests/data/ljspeech/wavs/LJ028-0337.wav|tests/data/ljspeech/wavs/LJ028-0337.npy -tests/data/ljspeech/wavs/LJ009-0134.wav|tests/data/ljspeech/wavs/LJ009-0134.npy -tests/data/ljspeech/wavs/LJ032-0119.wav|tests/data/ljspeech/wavs/LJ032-0119.npy -tests/data/ljspeech/wavs/LJ004-0116.wav|tests/data/ljspeech/wavs/LJ004-0116.npy -tests/data/ljspeech/wavs/LJ007-0112.wav|tests/data/ljspeech/wavs/LJ007-0112.npy -tests/data/ljspeech/wavs/LJ003-0152.wav|tests/data/ljspeech/wavs/LJ003-0152.npy -tests/data/ljspeech/wavs/LJ035-0100.wav|tests/data/ljspeech/wavs/LJ035-0100.npy -tests/data/ljspeech/wavs/LJ010-0223.wav|tests/data/ljspeech/wavs/LJ010-0223.npy -tests/data/ljspeech/wavs/LJ014-0135.wav|tests/data/ljspeech/wavs/LJ014-0135.npy -tests/data/ljspeech/wavs/LJ019-0157.wav|tests/data/ljspeech/wavs/LJ019-0157.npy -tests/data/ljspeech/wavs/LJ020-0055.wav|tests/data/ljspeech/wavs/LJ020-0055.npy -tests/data/ljspeech/wavs/LJ030-0199.wav|tests/data/ljspeech/wavs/LJ030-0199.npy -tests/data/ljspeech/wavs/LJ028-0327.wav|tests/data/ljspeech/wavs/LJ028-0327.npy -tests/data/ljspeech/wavs/LJ033-0067.wav|tests/data/ljspeech/wavs/LJ033-0067.npy -tests/data/ljspeech/wavs/LJ013-0185.wav|tests/data/ljspeech/wavs/LJ013-0185.npy -tests/data/ljspeech/wavs/LJ019-0318.wav|tests/data/ljspeech/wavs/LJ019-0318.npy -tests/data/ljspeech/wavs/LJ012-0130.wav|tests/data/ljspeech/wavs/LJ012-0130.npy -tests/data/ljspeech/wavs/LJ012-0219.wav|tests/data/ljspeech/wavs/LJ012-0219.npy -tests/data/ljspeech/wavs/LJ012-0236.wav|tests/data/ljspeech/wavs/LJ012-0236.npy -tests/data/ljspeech/wavs/LJ038-0178.wav|tests/data/ljspeech/wavs/LJ038-0178.npy -tests/data/ljspeech/wavs/LJ048-0242.wav|tests/data/ljspeech/wavs/LJ048-0242.npy -tests/data/ljspeech/wavs/LJ041-0133.wav|tests/data/ljspeech/wavs/LJ041-0133.npy -tests/data/ljspeech/wavs/LJ017-0125.wav|tests/data/ljspeech/wavs/LJ017-0125.npy -tests/data/ljspeech/wavs/LJ033-0080.wav|tests/data/ljspeech/wavs/LJ033-0080.npy -tests/data/ljspeech/wavs/LJ044-0062.wav|tests/data/ljspeech/wavs/LJ044-0062.npy -tests/data/ljspeech/wavs/LJ028-0088.wav|tests/data/ljspeech/wavs/LJ028-0088.npy -tests/data/ljspeech/wavs/LJ022-0041.wav|tests/data/ljspeech/wavs/LJ022-0041.npy -tests/data/ljspeech/wavs/LJ038-0218.wav|tests/data/ljspeech/wavs/LJ038-0218.npy -tests/data/ljspeech/wavs/LJ033-0162.wav|tests/data/ljspeech/wavs/LJ033-0162.npy -tests/data/ljspeech/wavs/LJ048-0097.wav|tests/data/ljspeech/wavs/LJ048-0097.npy -tests/data/ljspeech/wavs/LJ029-0207.wav|tests/data/ljspeech/wavs/LJ029-0207.npy -tests/data/ljspeech/wavs/LJ025-0123.wav|tests/data/ljspeech/wavs/LJ025-0123.npy -tests/data/ljspeech/wavs/LJ012-0221.wav|tests/data/ljspeech/wavs/LJ012-0221.npy -tests/data/ljspeech/wavs/LJ028-0340.wav|tests/data/ljspeech/wavs/LJ028-0340.npy -tests/data/ljspeech/wavs/LJ013-0017.wav|tests/data/ljspeech/wavs/LJ013-0017.npy -tests/data/ljspeech/wavs/LJ005-0102.wav|tests/data/ljspeech/wavs/LJ005-0102.npy -tests/data/ljspeech/wavs/LJ012-0218.wav|tests/data/ljspeech/wavs/LJ012-0218.npy -tests/data/ljspeech/wavs/LJ013-0266.wav|tests/data/ljspeech/wavs/LJ013-0266.npy -tests/data/ljspeech/wavs/LJ046-0068.wav|tests/data/ljspeech/wavs/LJ046-0068.npy -tests/data/ljspeech/wavs/LJ020-0102.wav|tests/data/ljspeech/wavs/LJ020-0102.npy -tests/data/ljspeech/wavs/LJ038-0241.wav|tests/data/ljspeech/wavs/LJ038-0241.npy -tests/data/ljspeech/wavs/LJ003-0209.wav|tests/data/ljspeech/wavs/LJ003-0209.npy -tests/data/ljspeech/wavs/LJ043-0139.wav|tests/data/ljspeech/wavs/LJ043-0139.npy -tests/data/ljspeech/wavs/LJ014-0031.wav|tests/data/ljspeech/wavs/LJ014-0031.npy -tests/data/ljspeech/wavs/LJ032-0111.wav|tests/data/ljspeech/wavs/LJ032-0111.npy -tests/data/ljspeech/wavs/LJ019-0288.wav|tests/data/ljspeech/wavs/LJ019-0288.npy -tests/data/ljspeech/wavs/LJ020-0108.wav|tests/data/ljspeech/wavs/LJ020-0108.npy -tests/data/ljspeech/wavs/LJ018-0037.wav|tests/data/ljspeech/wavs/LJ018-0037.npy -tests/data/ljspeech/wavs/LJ003-0248.wav|tests/data/ljspeech/wavs/LJ003-0248.npy -tests/data/ljspeech/wavs/LJ035-0089.wav|tests/data/ljspeech/wavs/LJ035-0089.npy -tests/data/ljspeech/wavs/LJ001-0131.wav|tests/data/ljspeech/wavs/LJ001-0131.npy -tests/data/ljspeech/wavs/LJ005-0068.wav|tests/data/ljspeech/wavs/LJ005-0068.npy -tests/data/ljspeech/wavs/LJ038-0212.wav|tests/data/ljspeech/wavs/LJ038-0212.npy -tests/data/ljspeech/wavs/LJ032-0043.wav|tests/data/ljspeech/wavs/LJ032-0043.npy -tests/data/ljspeech/wavs/LJ044-0172.wav|tests/data/ljspeech/wavs/LJ044-0172.npy -tests/data/ljspeech/wavs/LJ016-0097.wav|tests/data/ljspeech/wavs/LJ016-0097.npy -tests/data/ljspeech/wavs/LJ050-0118.wav|tests/data/ljspeech/wavs/LJ050-0118.npy -tests/data/ljspeech/wavs/LJ022-0098.wav|tests/data/ljspeech/wavs/LJ022-0098.npy -tests/data/ljspeech/wavs/LJ029-0005.wav|tests/data/ljspeech/wavs/LJ029-0005.npy -tests/data/ljspeech/wavs/LJ049-0065.wav|tests/data/ljspeech/wavs/LJ049-0065.npy -tests/data/ljspeech/wavs/LJ022-0099.wav|tests/data/ljspeech/wavs/LJ022-0099.npy -tests/data/ljspeech/wavs/LJ018-0366.wav|tests/data/ljspeech/wavs/LJ018-0366.npy -tests/data/ljspeech/wavs/LJ038-0032.wav|tests/data/ljspeech/wavs/LJ038-0032.npy -tests/data/ljspeech/wavs/LJ018-0365.wav|tests/data/ljspeech/wavs/LJ018-0365.npy -tests/data/ljspeech/wavs/LJ015-0210.wav|tests/data/ljspeech/wavs/LJ015-0210.npy -tests/data/ljspeech/wavs/LJ047-0010.wav|tests/data/ljspeech/wavs/LJ047-0010.npy -tests/data/ljspeech/wavs/LJ032-0097.wav|tests/data/ljspeech/wavs/LJ032-0097.npy -tests/data/ljspeech/wavs/LJ006-0053.wav|tests/data/ljspeech/wavs/LJ006-0053.npy -tests/data/ljspeech/wavs/LJ022-0149.wav|tests/data/ljspeech/wavs/LJ022-0149.npy -tests/data/ljspeech/wavs/LJ045-0010.wav|tests/data/ljspeech/wavs/LJ045-0010.npy -tests/data/ljspeech/wavs/LJ007-0205.wav|tests/data/ljspeech/wavs/LJ007-0205.npy -tests/data/ljspeech/wavs/LJ008-0228.wav|tests/data/ljspeech/wavs/LJ008-0228.npy -tests/data/ljspeech/wavs/LJ008-0306.wav|tests/data/ljspeech/wavs/LJ008-0306.npy -tests/data/ljspeech/wavs/LJ022-0168.wav|tests/data/ljspeech/wavs/LJ022-0168.npy -tests/data/ljspeech/wavs/LJ008-0304.wav|tests/data/ljspeech/wavs/LJ008-0304.npy -tests/data/ljspeech/wavs/LJ003-0073.wav|tests/data/ljspeech/wavs/LJ003-0073.npy -tests/data/ljspeech/wavs/LJ005-0107.wav|tests/data/ljspeech/wavs/LJ005-0107.npy -tests/data/ljspeech/wavs/LJ028-0494.wav|tests/data/ljspeech/wavs/LJ028-0494.npy -tests/data/ljspeech/wavs/LJ004-0165.wav|tests/data/ljspeech/wavs/LJ004-0165.npy -tests/data/ljspeech/wavs/LJ049-0088.wav|tests/data/ljspeech/wavs/LJ049-0088.npy -tests/data/ljspeech/wavs/LJ030-0071.wav|tests/data/ljspeech/wavs/LJ030-0071.npy -tests/data/ljspeech/wavs/LJ015-0275.wav|tests/data/ljspeech/wavs/LJ015-0275.npy -tests/data/ljspeech/wavs/LJ008-0203.wav|tests/data/ljspeech/wavs/LJ008-0203.npy -tests/data/ljspeech/wavs/LJ034-0127.wav|tests/data/ljspeech/wavs/LJ034-0127.npy -tests/data/ljspeech/wavs/LJ005-0221.wav|tests/data/ljspeech/wavs/LJ005-0221.npy -tests/data/ljspeech/wavs/LJ003-0195.wav|tests/data/ljspeech/wavs/LJ003-0195.npy -tests/data/ljspeech/wavs/LJ035-0198.wav|tests/data/ljspeech/wavs/LJ035-0198.npy -tests/data/ljspeech/wavs/LJ026-0125.wav|tests/data/ljspeech/wavs/LJ026-0125.npy -tests/data/ljspeech/wavs/LJ033-0151.wav|tests/data/ljspeech/wavs/LJ033-0151.npy -tests/data/ljspeech/wavs/LJ016-0155.wav|tests/data/ljspeech/wavs/LJ016-0155.npy -tests/data/ljspeech/wavs/LJ019-0273.wav|tests/data/ljspeech/wavs/LJ019-0273.npy -tests/data/ljspeech/wavs/LJ022-0112.wav|tests/data/ljspeech/wavs/LJ022-0112.npy -tests/data/ljspeech/wavs/LJ006-0153.wav|tests/data/ljspeech/wavs/LJ006-0153.npy -tests/data/ljspeech/wavs/LJ005-0200.wav|tests/data/ljspeech/wavs/LJ005-0200.npy -tests/data/ljspeech/wavs/LJ010-0120.wav|tests/data/ljspeech/wavs/LJ010-0120.npy -tests/data/ljspeech/wavs/LJ004-0023.wav|tests/data/ljspeech/wavs/LJ004-0023.npy -tests/data/ljspeech/wavs/LJ025-0067.wav|tests/data/ljspeech/wavs/LJ025-0067.npy -tests/data/ljspeech/wavs/LJ016-0327.wav|tests/data/ljspeech/wavs/LJ016-0327.npy -tests/data/ljspeech/wavs/LJ011-0197.wav|tests/data/ljspeech/wavs/LJ011-0197.npy -tests/data/ljspeech/wavs/LJ010-0064.wav|tests/data/ljspeech/wavs/LJ010-0064.npy -tests/data/ljspeech/wavs/LJ016-0336.wav|tests/data/ljspeech/wavs/LJ016-0336.npy -tests/data/ljspeech/wavs/LJ033-0023.wav|tests/data/ljspeech/wavs/LJ033-0023.npy -tests/data/ljspeech/wavs/LJ036-0049.wav|tests/data/ljspeech/wavs/LJ036-0049.npy -tests/data/ljspeech/wavs/LJ031-0170.wav|tests/data/ljspeech/wavs/LJ031-0170.npy -tests/data/ljspeech/wavs/LJ037-0108.wav|tests/data/ljspeech/wavs/LJ037-0108.npy -tests/data/ljspeech/wavs/LJ016-0161.wav|tests/data/ljspeech/wavs/LJ016-0161.npy -tests/data/ljspeech/wavs/LJ048-0288.wav|tests/data/ljspeech/wavs/LJ048-0288.npy -tests/data/ljspeech/wavs/LJ043-0149.wav|tests/data/ljspeech/wavs/LJ043-0149.npy -tests/data/ljspeech/wavs/LJ004-0113.wav|tests/data/ljspeech/wavs/LJ004-0113.npy -tests/data/ljspeech/wavs/LJ004-0044.wav|tests/data/ljspeech/wavs/LJ004-0044.npy -tests/data/ljspeech/wavs/LJ005-0071.wav|tests/data/ljspeech/wavs/LJ005-0071.npy -tests/data/ljspeech/wavs/LJ039-0182.wav|tests/data/ljspeech/wavs/LJ039-0182.npy -tests/data/ljspeech/wavs/LJ039-0075.wav|tests/data/ljspeech/wavs/LJ039-0075.npy -tests/data/ljspeech/wavs/LJ010-0116.wav|tests/data/ljspeech/wavs/LJ010-0116.npy -tests/data/ljspeech/wavs/LJ018-0116.wav|tests/data/ljspeech/wavs/LJ018-0116.npy -tests/data/ljspeech/wavs/LJ016-0005.wav|tests/data/ljspeech/wavs/LJ016-0005.npy -tests/data/ljspeech/wavs/LJ006-0133.wav|tests/data/ljspeech/wavs/LJ006-0133.npy -tests/data/ljspeech/wavs/LJ002-0025.wav|tests/data/ljspeech/wavs/LJ002-0025.npy -tests/data/ljspeech/wavs/LJ040-0103.wav|tests/data/ljspeech/wavs/LJ040-0103.npy -tests/data/ljspeech/wavs/LJ026-0104.wav|tests/data/ljspeech/wavs/LJ026-0104.npy -tests/data/ljspeech/wavs/LJ047-0078.wav|tests/data/ljspeech/wavs/LJ047-0078.npy -tests/data/ljspeech/wavs/LJ021-0187.wav|tests/data/ljspeech/wavs/LJ021-0187.npy -tests/data/ljspeech/wavs/LJ050-0202.wav|tests/data/ljspeech/wavs/LJ050-0202.npy -tests/data/ljspeech/wavs/LJ019-0271.wav|tests/data/ljspeech/wavs/LJ019-0271.npy -tests/data/ljspeech/wavs/LJ011-0123.wav|tests/data/ljspeech/wavs/LJ011-0123.npy -tests/data/ljspeech/wavs/LJ004-0091.wav|tests/data/ljspeech/wavs/LJ004-0091.npy -tests/data/ljspeech/wavs/LJ029-0080.wav|tests/data/ljspeech/wavs/LJ029-0080.npy -tests/data/ljspeech/wavs/LJ047-0089.wav|tests/data/ljspeech/wavs/LJ047-0089.npy -tests/data/ljspeech/wavs/LJ016-0039.wav|tests/data/ljspeech/wavs/LJ016-0039.npy -tests/data/ljspeech/wavs/LJ032-0267.wav|tests/data/ljspeech/wavs/LJ032-0267.npy -tests/data/ljspeech/wavs/LJ014-0166.wav|tests/data/ljspeech/wavs/LJ014-0166.npy -tests/data/ljspeech/wavs/LJ037-0094.wav|tests/data/ljspeech/wavs/LJ037-0094.npy -tests/data/ljspeech/wavs/LJ042-0086.wav|tests/data/ljspeech/wavs/LJ042-0086.npy -tests/data/ljspeech/wavs/LJ021-0010.wav|tests/data/ljspeech/wavs/LJ021-0010.npy -tests/data/ljspeech/wavs/LJ018-0144.wav|tests/data/ljspeech/wavs/LJ018-0144.npy -tests/data/ljspeech/wavs/LJ035-0177.wav|tests/data/ljspeech/wavs/LJ035-0177.npy -tests/data/ljspeech/wavs/LJ003-0246.wav|tests/data/ljspeech/wavs/LJ003-0246.npy -tests/data/ljspeech/wavs/LJ020-0106.wav|tests/data/ljspeech/wavs/LJ020-0106.npy -tests/data/ljspeech/wavs/LJ018-0015.wav|tests/data/ljspeech/wavs/LJ018-0015.npy -tests/data/ljspeech/wavs/LJ026-0102.wav|tests/data/ljspeech/wavs/LJ026-0102.npy -tests/data/ljspeech/wavs/LJ006-0260.wav|tests/data/ljspeech/wavs/LJ006-0260.npy -tests/data/ljspeech/wavs/LJ046-0040.wav|tests/data/ljspeech/wavs/LJ046-0040.npy -tests/data/ljspeech/wavs/LJ031-0006.wav|tests/data/ljspeech/wavs/LJ031-0006.npy -tests/data/ljspeech/wavs/LJ039-0184.wav|tests/data/ljspeech/wavs/LJ039-0184.npy -tests/data/ljspeech/wavs/LJ025-0049.wav|tests/data/ljspeech/wavs/LJ025-0049.npy -tests/data/ljspeech/wavs/LJ030-0180.wav|tests/data/ljspeech/wavs/LJ030-0180.npy -tests/data/ljspeech/wavs/LJ016-0186.wav|tests/data/ljspeech/wavs/LJ016-0186.npy -tests/data/ljspeech/wavs/LJ010-0084.wav|tests/data/ljspeech/wavs/LJ010-0084.npy -tests/data/ljspeech/wavs/LJ033-0161.wav|tests/data/ljspeech/wavs/LJ033-0161.npy -tests/data/ljspeech/wavs/LJ047-0058.wav|tests/data/ljspeech/wavs/LJ047-0058.npy -tests/data/ljspeech/wavs/LJ044-0217.wav|tests/data/ljspeech/wavs/LJ044-0217.npy -tests/data/ljspeech/wavs/LJ011-0265.wav|tests/data/ljspeech/wavs/LJ011-0265.npy -tests/data/ljspeech/wavs/LJ038-0181.wav|tests/data/ljspeech/wavs/LJ038-0181.npy -tests/data/ljspeech/wavs/LJ030-0077.wav|tests/data/ljspeech/wavs/LJ030-0077.npy -tests/data/ljspeech/wavs/LJ011-0271.wav|tests/data/ljspeech/wavs/LJ011-0271.npy -tests/data/ljspeech/wavs/LJ040-0067.wav|tests/data/ljspeech/wavs/LJ040-0067.npy -tests/data/ljspeech/wavs/LJ032-0011.wav|tests/data/ljspeech/wavs/LJ032-0011.npy -tests/data/ljspeech/wavs/LJ016-0087.wav|tests/data/ljspeech/wavs/LJ016-0087.npy -tests/data/ljspeech/wavs/LJ013-0263.wav|tests/data/ljspeech/wavs/LJ013-0263.npy -tests/data/ljspeech/wavs/LJ017-0187.wav|tests/data/ljspeech/wavs/LJ017-0187.npy -tests/data/ljspeech/wavs/LJ013-0170.wav|tests/data/ljspeech/wavs/LJ013-0170.npy -tests/data/ljspeech/wavs/LJ001-0030.wav|tests/data/ljspeech/wavs/LJ001-0030.npy -tests/data/ljspeech/wavs/LJ018-0269.wav|tests/data/ljspeech/wavs/LJ018-0269.npy -tests/data/ljspeech/wavs/LJ008-0005.wav|tests/data/ljspeech/wavs/LJ008-0005.npy -tests/data/ljspeech/wavs/LJ039-0084.wav|tests/data/ljspeech/wavs/LJ039-0084.npy -tests/data/ljspeech/wavs/LJ023-0079.wav|tests/data/ljspeech/wavs/LJ023-0079.npy -tests/data/ljspeech/wavs/LJ018-0128.wav|tests/data/ljspeech/wavs/LJ018-0128.npy -tests/data/ljspeech/wavs/LJ014-0110.wav|tests/data/ljspeech/wavs/LJ014-0110.npy -tests/data/ljspeech/wavs/LJ013-0206.wav|tests/data/ljspeech/wavs/LJ013-0206.npy -tests/data/ljspeech/wavs/LJ028-0046.wav|tests/data/ljspeech/wavs/LJ028-0046.npy -tests/data/ljspeech/wavs/LJ029-0141.wav|tests/data/ljspeech/wavs/LJ029-0141.npy -tests/data/ljspeech/wavs/LJ032-0099.wav|tests/data/ljspeech/wavs/LJ032-0099.npy -tests/data/ljspeech/wavs/LJ012-0057.wav|tests/data/ljspeech/wavs/LJ012-0057.npy -tests/data/ljspeech/wavs/LJ018-0151.wav|tests/data/ljspeech/wavs/LJ018-0151.npy -tests/data/ljspeech/wavs/LJ030-0080.wav|tests/data/ljspeech/wavs/LJ030-0080.npy -tests/data/ljspeech/wavs/LJ009-0081.wav|tests/data/ljspeech/wavs/LJ009-0081.npy -tests/data/ljspeech/wavs/LJ015-0142.wav|tests/data/ljspeech/wavs/LJ015-0142.npy -tests/data/ljspeech/wavs/LJ050-0199.wav|tests/data/ljspeech/wavs/LJ050-0199.npy -tests/data/ljspeech/wavs/LJ002-0323.wav|tests/data/ljspeech/wavs/LJ002-0323.npy -tests/data/ljspeech/wavs/LJ021-0003.wav|tests/data/ljspeech/wavs/LJ021-0003.npy -tests/data/ljspeech/wavs/LJ009-0201.wav|tests/data/ljspeech/wavs/LJ009-0201.npy -tests/data/ljspeech/wavs/LJ046-0009.wav|tests/data/ljspeech/wavs/LJ046-0009.npy -tests/data/ljspeech/wavs/LJ043-0143.wav|tests/data/ljspeech/wavs/LJ043-0143.npy -tests/data/ljspeech/wavs/LJ012-0162.wav|tests/data/ljspeech/wavs/LJ012-0162.npy -tests/data/ljspeech/wavs/LJ043-0054.wav|tests/data/ljspeech/wavs/LJ043-0054.npy -tests/data/ljspeech/wavs/LJ031-0121.wav|tests/data/ljspeech/wavs/LJ031-0121.npy -tests/data/ljspeech/wavs/LJ033-0054.wav|tests/data/ljspeech/wavs/LJ033-0054.npy -tests/data/ljspeech/wavs/LJ008-0144.wav|tests/data/ljspeech/wavs/LJ008-0144.npy -tests/data/ljspeech/wavs/LJ021-0064.wav|tests/data/ljspeech/wavs/LJ021-0064.npy -tests/data/ljspeech/wavs/LJ015-0198.wav|tests/data/ljspeech/wavs/LJ015-0198.npy -tests/data/ljspeech/wavs/LJ032-0273.wav|tests/data/ljspeech/wavs/LJ032-0273.npy -tests/data/ljspeech/wavs/LJ032-0224.wav|tests/data/ljspeech/wavs/LJ032-0224.npy -tests/data/ljspeech/wavs/LJ039-0145.wav|tests/data/ljspeech/wavs/LJ039-0145.npy -tests/data/ljspeech/wavs/LJ034-0108.wav|tests/data/ljspeech/wavs/LJ034-0108.npy -tests/data/ljspeech/wavs/LJ018-0011.wav|tests/data/ljspeech/wavs/LJ018-0011.npy -tests/data/ljspeech/wavs/LJ030-0116.wav|tests/data/ljspeech/wavs/LJ030-0116.npy -tests/data/ljspeech/wavs/LJ031-0186.wav|tests/data/ljspeech/wavs/LJ031-0186.npy -tests/data/ljspeech/wavs/LJ004-0237.wav|tests/data/ljspeech/wavs/LJ004-0237.npy -tests/data/ljspeech/wavs/LJ042-0174.wav|tests/data/ljspeech/wavs/LJ042-0174.npy -tests/data/ljspeech/wavs/LJ023-0086.wav|tests/data/ljspeech/wavs/LJ023-0086.npy -tests/data/ljspeech/wavs/LJ015-0273.wav|tests/data/ljspeech/wavs/LJ015-0273.npy -tests/data/ljspeech/wavs/LJ022-0026.wav|tests/data/ljspeech/wavs/LJ022-0026.npy -tests/data/ljspeech/wavs/LJ049-0099.wav|tests/data/ljspeech/wavs/LJ049-0099.npy -tests/data/ljspeech/wavs/LJ025-0089.wav|tests/data/ljspeech/wavs/LJ025-0089.npy -tests/data/ljspeech/wavs/LJ022-0071.wav|tests/data/ljspeech/wavs/LJ022-0071.npy -tests/data/ljspeech/wavs/LJ016-0339.wav|tests/data/ljspeech/wavs/LJ016-0339.npy -tests/data/ljspeech/wavs/LJ015-0212.wav|tests/data/ljspeech/wavs/LJ015-0212.npy -tests/data/ljspeech/wavs/LJ025-0133.wav|tests/data/ljspeech/wavs/LJ025-0133.npy -tests/data/ljspeech/wavs/LJ020-0087.wav|tests/data/ljspeech/wavs/LJ020-0087.npy -tests/data/ljspeech/wavs/LJ039-0248.wav|tests/data/ljspeech/wavs/LJ039-0248.npy -tests/data/ljspeech/wavs/LJ034-0159.wav|tests/data/ljspeech/wavs/LJ034-0159.npy -tests/data/ljspeech/wavs/LJ002-0231.wav|tests/data/ljspeech/wavs/LJ002-0231.npy -tests/data/ljspeech/wavs/LJ032-0226.wav|tests/data/ljspeech/wavs/LJ032-0226.npy -tests/data/ljspeech/wavs/LJ033-0007.wav|tests/data/ljspeech/wavs/LJ033-0007.npy -tests/data/ljspeech/wavs/LJ002-0264.wav|tests/data/ljspeech/wavs/LJ002-0264.npy -tests/data/ljspeech/wavs/LJ008-0019.wav|tests/data/ljspeech/wavs/LJ008-0019.npy -tests/data/ljspeech/wavs/LJ036-0114.wav|tests/data/ljspeech/wavs/LJ036-0114.npy -tests/data/ljspeech/wavs/LJ007-0057.wav|tests/data/ljspeech/wavs/LJ007-0057.npy -tests/data/ljspeech/wavs/LJ014-0241.wav|tests/data/ljspeech/wavs/LJ014-0241.npy -tests/data/ljspeech/wavs/LJ003-0084.wav|tests/data/ljspeech/wavs/LJ003-0084.npy -tests/data/ljspeech/wavs/LJ016-0342.wav|tests/data/ljspeech/wavs/LJ016-0342.npy -tests/data/ljspeech/wavs/LJ011-0226.wav|tests/data/ljspeech/wavs/LJ011-0226.npy -tests/data/ljspeech/wavs/LJ027-0102.wav|tests/data/ljspeech/wavs/LJ027-0102.npy -tests/data/ljspeech/wavs/LJ042-0006.wav|tests/data/ljspeech/wavs/LJ042-0006.npy -tests/data/ljspeech/wavs/LJ037-0114.wav|tests/data/ljspeech/wavs/LJ037-0114.npy -tests/data/ljspeech/wavs/LJ018-0174.wav|tests/data/ljspeech/wavs/LJ018-0174.npy -tests/data/ljspeech/wavs/LJ044-0076.wav|tests/data/ljspeech/wavs/LJ044-0076.npy -tests/data/ljspeech/wavs/LJ015-0298.wav|tests/data/ljspeech/wavs/LJ015-0298.npy -tests/data/ljspeech/wavs/LJ015-0262.wav|tests/data/ljspeech/wavs/LJ015-0262.npy -tests/data/ljspeech/wavs/LJ027-0109.wav|tests/data/ljspeech/wavs/LJ027-0109.npy -tests/data/ljspeech/wavs/LJ045-0120.wav|tests/data/ljspeech/wavs/LJ045-0120.npy -tests/data/ljspeech/wavs/LJ008-0201.wav|tests/data/ljspeech/wavs/LJ008-0201.npy -tests/data/ljspeech/wavs/LJ003-0090.wav|tests/data/ljspeech/wavs/LJ003-0090.npy -tests/data/ljspeech/wavs/LJ041-0007.wav|tests/data/ljspeech/wavs/LJ041-0007.npy -tests/data/ljspeech/wavs/LJ029-0046.wav|tests/data/ljspeech/wavs/LJ029-0046.npy -tests/data/ljspeech/wavs/LJ039-0243.wav|tests/data/ljspeech/wavs/LJ039-0243.npy -tests/data/ljspeech/wavs/LJ010-0281.wav|tests/data/ljspeech/wavs/LJ010-0281.npy -tests/data/ljspeech/wavs/LJ038-0277.wav|tests/data/ljspeech/wavs/LJ038-0277.npy -tests/data/ljspeech/wavs/LJ028-0019.wav|tests/data/ljspeech/wavs/LJ028-0019.npy -tests/data/ljspeech/wavs/LJ020-0009.wav|tests/data/ljspeech/wavs/LJ020-0009.npy -tests/data/ljspeech/wavs/LJ012-0175.wav|tests/data/ljspeech/wavs/LJ012-0175.npy -tests/data/ljspeech/wavs/LJ006-0238.wav|tests/data/ljspeech/wavs/LJ006-0238.npy -tests/data/ljspeech/wavs/LJ043-0176.wav|tests/data/ljspeech/wavs/LJ043-0176.npy -tests/data/ljspeech/wavs/LJ002-0047.wav|tests/data/ljspeech/wavs/LJ002-0047.npy -tests/data/ljspeech/wavs/LJ018-0240.wav|tests/data/ljspeech/wavs/LJ018-0240.npy -tests/data/ljspeech/wavs/LJ039-0236.wav|tests/data/ljspeech/wavs/LJ039-0236.npy -tests/data/ljspeech/wavs/LJ034-0071.wav|tests/data/ljspeech/wavs/LJ034-0071.npy -tests/data/ljspeech/wavs/LJ044-0058.wav|tests/data/ljspeech/wavs/LJ044-0058.npy -tests/data/ljspeech/wavs/LJ033-0086.wav|tests/data/ljspeech/wavs/LJ033-0086.npy -tests/data/ljspeech/wavs/LJ034-0205.wav|tests/data/ljspeech/wavs/LJ034-0205.npy -tests/data/ljspeech/wavs/LJ013-0268.wav|tests/data/ljspeech/wavs/LJ013-0268.npy -tests/data/ljspeech/wavs/LJ031-0215.wav|tests/data/ljspeech/wavs/LJ031-0215.npy -tests/data/ljspeech/wavs/LJ047-0117.wav|tests/data/ljspeech/wavs/LJ047-0117.npy -tests/data/ljspeech/wavs/LJ013-0069.wav|tests/data/ljspeech/wavs/LJ013-0069.npy -tests/data/ljspeech/wavs/LJ018-0233.wav|tests/data/ljspeech/wavs/LJ018-0233.npy -tests/data/ljspeech/wavs/LJ021-0179.wav|tests/data/ljspeech/wavs/LJ021-0179.npy -tests/data/ljspeech/wavs/LJ046-0092.wav|tests/data/ljspeech/wavs/LJ046-0092.npy -tests/data/ljspeech/wavs/LJ028-0138.wav|tests/data/ljspeech/wavs/LJ028-0138.npy -tests/data/ljspeech/wavs/LJ036-0010.wav|tests/data/ljspeech/wavs/LJ036-0010.npy -tests/data/ljspeech/wavs/LJ006-0189.wav|tests/data/ljspeech/wavs/LJ006-0189.npy -tests/data/ljspeech/wavs/LJ050-0262.wav|tests/data/ljspeech/wavs/LJ050-0262.npy -tests/data/ljspeech/wavs/LJ024-0130.wav|tests/data/ljspeech/wavs/LJ024-0130.npy -tests/data/ljspeech/wavs/LJ029-0066.wav|tests/data/ljspeech/wavs/LJ029-0066.npy -tests/data/ljspeech/wavs/LJ041-0085.wav|tests/data/ljspeech/wavs/LJ041-0085.npy -tests/data/ljspeech/wavs/LJ028-0152.wav|tests/data/ljspeech/wavs/LJ028-0152.npy -tests/data/ljspeech/wavs/LJ032-0120.wav|tests/data/ljspeech/wavs/LJ032-0120.npy -tests/data/ljspeech/wavs/LJ003-0261.wav|tests/data/ljspeech/wavs/LJ003-0261.npy -tests/data/ljspeech/wavs/LJ002-0319.wav|tests/data/ljspeech/wavs/LJ002-0319.npy -tests/data/ljspeech/wavs/LJ030-0226.wav|tests/data/ljspeech/wavs/LJ030-0226.npy -tests/data/ljspeech/wavs/LJ008-0038.wav|tests/data/ljspeech/wavs/LJ008-0038.npy -tests/data/ljspeech/wavs/LJ010-0140.wav|tests/data/ljspeech/wavs/LJ010-0140.npy -tests/data/ljspeech/wavs/LJ050-0220.wav|tests/data/ljspeech/wavs/LJ050-0220.npy -tests/data/ljspeech/wavs/LJ009-0106.wav|tests/data/ljspeech/wavs/LJ009-0106.npy -tests/data/ljspeech/wavs/LJ005-0086.wav|tests/data/ljspeech/wavs/LJ005-0086.npy -tests/data/ljspeech/wavs/LJ010-0124.wav|tests/data/ljspeech/wavs/LJ010-0124.npy -tests/data/ljspeech/wavs/LJ038-0289.wav|tests/data/ljspeech/wavs/LJ038-0289.npy -tests/data/ljspeech/wavs/LJ013-0181.wav|tests/data/ljspeech/wavs/LJ013-0181.npy -tests/data/ljspeech/wavs/LJ011-0005.wav|tests/data/ljspeech/wavs/LJ011-0005.npy -tests/data/ljspeech/wavs/LJ017-0111.wav|tests/data/ljspeech/wavs/LJ017-0111.npy -tests/data/ljspeech/wavs/LJ040-0049.wav|tests/data/ljspeech/wavs/LJ040-0049.npy -tests/data/ljspeech/wavs/LJ047-0094.wav|tests/data/ljspeech/wavs/LJ047-0094.npy -tests/data/ljspeech/wavs/LJ039-0097.wav|tests/data/ljspeech/wavs/LJ039-0097.npy -tests/data/ljspeech/wavs/LJ010-0038.wav|tests/data/ljspeech/wavs/LJ010-0038.npy -tests/data/ljspeech/wavs/LJ007-0176.wav|tests/data/ljspeech/wavs/LJ007-0176.npy -tests/data/ljspeech/wavs/LJ018-0103.wav|tests/data/ljspeech/wavs/LJ018-0103.npy -tests/data/ljspeech/wavs/LJ042-0062.wav|tests/data/ljspeech/wavs/LJ042-0062.npy -tests/data/ljspeech/wavs/LJ026-0058.wav|tests/data/ljspeech/wavs/LJ026-0058.npy -tests/data/ljspeech/wavs/LJ003-0174.wav|tests/data/ljspeech/wavs/LJ003-0174.npy -tests/data/ljspeech/wavs/LJ023-0060.wav|tests/data/ljspeech/wavs/LJ023-0060.npy -tests/data/ljspeech/wavs/LJ048-0078.wav|tests/data/ljspeech/wavs/LJ048-0078.npy -tests/data/ljspeech/wavs/LJ047-0166.wav|tests/data/ljspeech/wavs/LJ047-0166.npy -tests/data/ljspeech/wavs/LJ024-0026.wav|tests/data/ljspeech/wavs/LJ024-0026.npy -tests/data/ljspeech/wavs/LJ042-0120.wav|tests/data/ljspeech/wavs/LJ042-0120.npy -tests/data/ljspeech/wavs/LJ006-0174.wav|tests/data/ljspeech/wavs/LJ006-0174.npy -tests/data/ljspeech/wavs/LJ027-0066.wav|tests/data/ljspeech/wavs/LJ027-0066.npy -tests/data/ljspeech/wavs/LJ012-0036.wav|tests/data/ljspeech/wavs/LJ012-0036.npy -tests/data/ljspeech/wavs/LJ019-0233.wav|tests/data/ljspeech/wavs/LJ019-0233.npy -tests/data/ljspeech/wavs/LJ017-0113.wav|tests/data/ljspeech/wavs/LJ017-0113.npy -tests/data/ljspeech/wavs/LJ026-0046.wav|tests/data/ljspeech/wavs/LJ026-0046.npy -tests/data/ljspeech/wavs/LJ040-0033.wav|tests/data/ljspeech/wavs/LJ040-0033.npy -tests/data/ljspeech/wavs/LJ036-0186.wav|tests/data/ljspeech/wavs/LJ036-0186.npy -tests/data/ljspeech/wavs/LJ011-0157.wav|tests/data/ljspeech/wavs/LJ011-0157.npy -tests/data/ljspeech/wavs/LJ003-0282.wav|tests/data/ljspeech/wavs/LJ003-0282.npy -tests/data/ljspeech/wavs/LJ045-0249.wav|tests/data/ljspeech/wavs/LJ045-0249.npy -tests/data/ljspeech/wavs/LJ035-0173.wav|tests/data/ljspeech/wavs/LJ035-0173.npy -tests/data/ljspeech/wavs/LJ017-0006.wav|tests/data/ljspeech/wavs/LJ017-0006.npy -tests/data/ljspeech/wavs/LJ048-0093.wav|tests/data/ljspeech/wavs/LJ048-0093.npy -tests/data/ljspeech/wavs/LJ045-0073.wav|tests/data/ljspeech/wavs/LJ045-0073.npy -tests/data/ljspeech/wavs/LJ012-0166.wav|tests/data/ljspeech/wavs/LJ012-0166.npy -tests/data/ljspeech/wavs/LJ047-0139.wav|tests/data/ljspeech/wavs/LJ047-0139.npy -tests/data/ljspeech/wavs/LJ003-0121.wav|tests/data/ljspeech/wavs/LJ003-0121.npy -tests/data/ljspeech/wavs/LJ026-0034.wav|tests/data/ljspeech/wavs/LJ026-0034.npy -tests/data/ljspeech/wavs/LJ039-0142.wav|tests/data/ljspeech/wavs/LJ039-0142.npy -tests/data/ljspeech/wavs/LJ026-0153.wav|tests/data/ljspeech/wavs/LJ026-0153.npy -tests/data/ljspeech/wavs/LJ006-0295.wav|tests/data/ljspeech/wavs/LJ006-0295.npy -tests/data/ljspeech/wavs/LJ014-0193.wav|tests/data/ljspeech/wavs/LJ014-0193.npy -tests/data/ljspeech/wavs/LJ003-0162.wav|tests/data/ljspeech/wavs/LJ003-0162.npy -tests/data/ljspeech/wavs/LJ015-0022.wav|tests/data/ljspeech/wavs/LJ015-0022.npy -tests/data/ljspeech/wavs/LJ050-0106.wav|tests/data/ljspeech/wavs/LJ050-0106.npy -tests/data/ljspeech/wavs/LJ034-0077.wav|tests/data/ljspeech/wavs/LJ034-0077.npy -tests/data/ljspeech/wavs/LJ015-0150.wav|tests/data/ljspeech/wavs/LJ015-0150.npy -tests/data/ljspeech/wavs/LJ017-0062.wav|tests/data/ljspeech/wavs/LJ017-0062.npy -tests/data/ljspeech/wavs/LJ044-0086.wav|tests/data/ljspeech/wavs/LJ044-0086.npy -tests/data/ljspeech/wavs/LJ005-0150.wav|tests/data/ljspeech/wavs/LJ005-0150.npy -tests/data/ljspeech/wavs/LJ004-0025.wav|tests/data/ljspeech/wavs/LJ004-0025.npy -tests/data/ljspeech/wavs/LJ015-0069.wav|tests/data/ljspeech/wavs/LJ015-0069.npy -tests/data/ljspeech/wavs/LJ021-0060.wav|tests/data/ljspeech/wavs/LJ021-0060.npy -tests/data/ljspeech/wavs/LJ010-0008.wav|tests/data/ljspeech/wavs/LJ010-0008.npy -tests/data/ljspeech/wavs/LJ021-0070.wav|tests/data/ljspeech/wavs/LJ021-0070.npy -tests/data/ljspeech/wavs/LJ016-0072.wav|tests/data/ljspeech/wavs/LJ016-0072.npy -tests/data/ljspeech/wavs/LJ017-0190.wav|tests/data/ljspeech/wavs/LJ017-0190.npy -tests/data/ljspeech/wavs/LJ022-0135.wav|tests/data/ljspeech/wavs/LJ022-0135.npy -tests/data/ljspeech/wavs/LJ028-0059.wav|tests/data/ljspeech/wavs/LJ028-0059.npy -tests/data/ljspeech/wavs/LJ035-0129.wav|tests/data/ljspeech/wavs/LJ035-0129.npy -tests/data/ljspeech/wavs/LJ002-0105.wav|tests/data/ljspeech/wavs/LJ002-0105.npy -tests/data/ljspeech/wavs/LJ021-0210.wav|tests/data/ljspeech/wavs/LJ021-0210.npy -tests/data/ljspeech/wavs/LJ019-0303.wav|tests/data/ljspeech/wavs/LJ019-0303.npy -tests/data/ljspeech/wavs/LJ048-0098.wav|tests/data/ljspeech/wavs/LJ048-0098.npy -tests/data/ljspeech/wavs/LJ025-0108.wav|tests/data/ljspeech/wavs/LJ025-0108.npy -tests/data/ljspeech/wavs/LJ009-0285.wav|tests/data/ljspeech/wavs/LJ009-0285.npy -tests/data/ljspeech/wavs/LJ033-0201.wav|tests/data/ljspeech/wavs/LJ033-0201.npy -tests/data/ljspeech/wavs/LJ050-0224.wav|tests/data/ljspeech/wavs/LJ050-0224.npy -tests/data/ljspeech/wavs/LJ039-0199.wav|tests/data/ljspeech/wavs/LJ039-0199.npy -tests/data/ljspeech/wavs/LJ003-0079.wav|tests/data/ljspeech/wavs/LJ003-0079.npy -tests/data/ljspeech/wavs/LJ037-0141.wav|tests/data/ljspeech/wavs/LJ037-0141.npy -tests/data/ljspeech/wavs/LJ036-0197.wav|tests/data/ljspeech/wavs/LJ036-0197.npy -tests/data/ljspeech/wavs/LJ045-0115.wav|tests/data/ljspeech/wavs/LJ045-0115.npy -tests/data/ljspeech/wavs/LJ031-0218.wav|tests/data/ljspeech/wavs/LJ031-0218.npy -tests/data/ljspeech/wavs/LJ019-0309.wav|tests/data/ljspeech/wavs/LJ019-0309.npy -tests/data/ljspeech/wavs/LJ014-0122.wav|tests/data/ljspeech/wavs/LJ014-0122.npy -tests/data/ljspeech/wavs/LJ036-0132.wav|tests/data/ljspeech/wavs/LJ036-0132.npy -tests/data/ljspeech/wavs/LJ036-0203.wav|tests/data/ljspeech/wavs/LJ036-0203.npy -tests/data/ljspeech/wavs/LJ048-0076.wav|tests/data/ljspeech/wavs/LJ048-0076.npy -tests/data/ljspeech/wavs/LJ021-0111.wav|tests/data/ljspeech/wavs/LJ021-0111.npy -tests/data/ljspeech/wavs/LJ046-0028.wav|tests/data/ljspeech/wavs/LJ046-0028.npy -tests/data/ljspeech/wavs/LJ006-0268.wav|tests/data/ljspeech/wavs/LJ006-0268.npy -tests/data/ljspeech/wavs/LJ002-0306.wav|tests/data/ljspeech/wavs/LJ002-0306.npy -tests/data/ljspeech/wavs/LJ006-0206.wav|tests/data/ljspeech/wavs/LJ006-0206.npy -tests/data/ljspeech/wavs/LJ035-0028.wav|tests/data/ljspeech/wavs/LJ035-0028.npy -tests/data/ljspeech/wavs/LJ028-0131.wav|tests/data/ljspeech/wavs/LJ028-0131.npy -tests/data/ljspeech/wavs/LJ018-0323.wav|tests/data/ljspeech/wavs/LJ018-0323.npy -tests/data/ljspeech/wavs/LJ019-0320.wav|tests/data/ljspeech/wavs/LJ019-0320.npy -tests/data/ljspeech/wavs/LJ041-0043.wav|tests/data/ljspeech/wavs/LJ041-0043.npy -tests/data/ljspeech/wavs/LJ025-0121.wav|tests/data/ljspeech/wavs/LJ025-0121.npy -tests/data/ljspeech/wavs/LJ014-0071.wav|tests/data/ljspeech/wavs/LJ014-0071.npy -tests/data/ljspeech/wavs/LJ050-0257.wav|tests/data/ljspeech/wavs/LJ050-0257.npy -tests/data/ljspeech/wavs/LJ005-0249.wav|tests/data/ljspeech/wavs/LJ005-0249.npy -tests/data/ljspeech/wavs/LJ048-0258.wav|tests/data/ljspeech/wavs/LJ048-0258.npy -tests/data/ljspeech/wavs/LJ037-0132.wav|tests/data/ljspeech/wavs/LJ037-0132.npy -tests/data/ljspeech/wavs/LJ010-0063.wav|tests/data/ljspeech/wavs/LJ010-0063.npy -tests/data/ljspeech/wavs/LJ002-0263.wav|tests/data/ljspeech/wavs/LJ002-0263.npy -tests/data/ljspeech/wavs/LJ035-0205.wav|tests/data/ljspeech/wavs/LJ035-0205.npy -tests/data/ljspeech/wavs/LJ019-0277.wav|tests/data/ljspeech/wavs/LJ019-0277.npy -tests/data/ljspeech/wavs/LJ039-0186.wav|tests/data/ljspeech/wavs/LJ039-0186.npy -tests/data/ljspeech/wavs/LJ005-0250.wav|tests/data/ljspeech/wavs/LJ005-0250.npy -tests/data/ljspeech/wavs/LJ045-0014.wav|tests/data/ljspeech/wavs/LJ045-0014.npy -tests/data/ljspeech/wavs/LJ023-0007.wav|tests/data/ljspeech/wavs/LJ023-0007.npy -tests/data/ljspeech/wavs/LJ031-0055.wav|tests/data/ljspeech/wavs/LJ031-0055.npy -tests/data/ljspeech/wavs/LJ003-0302.wav|tests/data/ljspeech/wavs/LJ003-0302.npy -tests/data/ljspeech/wavs/LJ029-0019.wav|tests/data/ljspeech/wavs/LJ029-0019.npy -tests/data/ljspeech/wavs/LJ024-0084.wav|tests/data/ljspeech/wavs/LJ024-0084.npy -tests/data/ljspeech/wavs/LJ005-0226.wav|tests/data/ljspeech/wavs/LJ005-0226.npy -tests/data/ljspeech/wavs/LJ041-0132.wav|tests/data/ljspeech/wavs/LJ041-0132.npy -tests/data/ljspeech/wavs/LJ001-0036.wav|tests/data/ljspeech/wavs/LJ001-0036.npy -tests/data/ljspeech/wavs/LJ029-0148.wav|tests/data/ljspeech/wavs/LJ029-0148.npy -tests/data/ljspeech/wavs/LJ025-0014.wav|tests/data/ljspeech/wavs/LJ025-0014.npy -tests/data/ljspeech/wavs/LJ005-0258.wav|tests/data/ljspeech/wavs/LJ005-0258.npy -tests/data/ljspeech/wavs/LJ014-0142.wav|tests/data/ljspeech/wavs/LJ014-0142.npy -tests/data/ljspeech/wavs/LJ001-0163.wav|tests/data/ljspeech/wavs/LJ001-0163.npy -tests/data/ljspeech/wavs/LJ041-0184.wav|tests/data/ljspeech/wavs/LJ041-0184.npy -tests/data/ljspeech/wavs/LJ010-0052.wav|tests/data/ljspeech/wavs/LJ010-0052.npy -tests/data/ljspeech/wavs/LJ012-0122.wav|tests/data/ljspeech/wavs/LJ012-0122.npy -tests/data/ljspeech/wavs/LJ037-0111.wav|tests/data/ljspeech/wavs/LJ037-0111.npy -tests/data/ljspeech/wavs/LJ006-0075.wav|tests/data/ljspeech/wavs/LJ006-0075.npy -tests/data/ljspeech/wavs/LJ016-0025.wav|tests/data/ljspeech/wavs/LJ016-0025.npy -tests/data/ljspeech/wavs/LJ011-0288.wav|tests/data/ljspeech/wavs/LJ011-0288.npy -tests/data/ljspeech/wavs/LJ021-0139.wav|tests/data/ljspeech/wavs/LJ021-0139.npy -tests/data/ljspeech/wavs/LJ006-0014.wav|tests/data/ljspeech/wavs/LJ006-0014.npy -tests/data/ljspeech/wavs/LJ030-0036.wav|tests/data/ljspeech/wavs/LJ030-0036.npy -tests/data/ljspeech/wavs/LJ008-0254.wav|tests/data/ljspeech/wavs/LJ008-0254.npy -tests/data/ljspeech/wavs/LJ014-0136.wav|tests/data/ljspeech/wavs/LJ014-0136.npy -tests/data/ljspeech/wavs/LJ021-0071.wav|tests/data/ljspeech/wavs/LJ021-0071.npy -tests/data/ljspeech/wavs/LJ050-0026.wav|tests/data/ljspeech/wavs/LJ050-0026.npy -tests/data/ljspeech/wavs/LJ031-0126.wav|tests/data/ljspeech/wavs/LJ031-0126.npy -tests/data/ljspeech/wavs/LJ031-0046.wav|tests/data/ljspeech/wavs/LJ031-0046.npy -tests/data/ljspeech/wavs/LJ036-0076.wav|tests/data/ljspeech/wavs/LJ036-0076.npy -tests/data/ljspeech/wavs/LJ045-0131.wav|tests/data/ljspeech/wavs/LJ045-0131.npy -tests/data/ljspeech/wavs/LJ031-0210.wav|tests/data/ljspeech/wavs/LJ031-0210.npy -tests/data/ljspeech/wavs/LJ045-0181.wav|tests/data/ljspeech/wavs/LJ045-0181.npy -tests/data/ljspeech/wavs/LJ012-0001.wav|tests/data/ljspeech/wavs/LJ012-0001.npy -tests/data/ljspeech/wavs/LJ047-0154.wav|tests/data/ljspeech/wavs/LJ047-0154.npy -tests/data/ljspeech/wavs/LJ016-0207.wav|tests/data/ljspeech/wavs/LJ016-0207.npy -tests/data/ljspeech/wavs/LJ003-0201.wav|tests/data/ljspeech/wavs/LJ003-0201.npy -tests/data/ljspeech/wavs/LJ006-0162.wav|tests/data/ljspeech/wavs/LJ006-0162.npy -tests/data/ljspeech/wavs/LJ039-0067.wav|tests/data/ljspeech/wavs/LJ039-0067.npy -tests/data/ljspeech/wavs/LJ031-0059.wav|tests/data/ljspeech/wavs/LJ031-0059.npy -tests/data/ljspeech/wavs/LJ014-0215.wav|tests/data/ljspeech/wavs/LJ014-0215.npy -tests/data/ljspeech/wavs/LJ004-0032.wav|tests/data/ljspeech/wavs/LJ004-0032.npy -tests/data/ljspeech/wavs/LJ011-0049.wav|tests/data/ljspeech/wavs/LJ011-0049.npy -tests/data/ljspeech/wavs/LJ003-0196.wav|tests/data/ljspeech/wavs/LJ003-0196.npy -tests/data/ljspeech/wavs/LJ004-0195.wav|tests/data/ljspeech/wavs/LJ004-0195.npy -tests/data/ljspeech/wavs/LJ005-0162.wav|tests/data/ljspeech/wavs/LJ005-0162.npy -tests/data/ljspeech/wavs/LJ003-0024.wav|tests/data/ljspeech/wavs/LJ003-0024.npy -tests/data/ljspeech/wavs/LJ038-0094.wav|tests/data/ljspeech/wavs/LJ038-0094.npy -tests/data/ljspeech/wavs/LJ048-0047.wav|tests/data/ljspeech/wavs/LJ048-0047.npy -tests/data/ljspeech/wavs/LJ040-0164.wav|tests/data/ljspeech/wavs/LJ040-0164.npy -tests/data/ljspeech/wavs/LJ046-0017.wav|tests/data/ljspeech/wavs/LJ046-0017.npy -tests/data/ljspeech/wavs/LJ050-0108.wav|tests/data/ljspeech/wavs/LJ050-0108.npy -tests/data/ljspeech/wavs/LJ037-0154.wav|tests/data/ljspeech/wavs/LJ037-0154.npy -tests/data/ljspeech/wavs/LJ012-0118.wav|tests/data/ljspeech/wavs/LJ012-0118.npy -tests/data/ljspeech/wavs/LJ003-0344.wav|tests/data/ljspeech/wavs/LJ003-0344.npy -tests/data/ljspeech/wavs/LJ018-0149.wav|tests/data/ljspeech/wavs/LJ018-0149.npy -tests/data/ljspeech/wavs/LJ030-0037.wav|tests/data/ljspeech/wavs/LJ030-0037.npy -tests/data/ljspeech/wavs/LJ014-0274.wav|tests/data/ljspeech/wavs/LJ014-0274.npy -tests/data/ljspeech/wavs/LJ035-0115.wav|tests/data/ljspeech/wavs/LJ035-0115.npy -tests/data/ljspeech/wavs/LJ037-0143.wav|tests/data/ljspeech/wavs/LJ037-0143.npy -tests/data/ljspeech/wavs/LJ007-0021.wav|tests/data/ljspeech/wavs/LJ007-0021.npy -tests/data/ljspeech/wavs/LJ037-0255.wav|tests/data/ljspeech/wavs/LJ037-0255.npy -tests/data/ljspeech/wavs/LJ002-0147.wav|tests/data/ljspeech/wavs/LJ002-0147.npy -tests/data/ljspeech/wavs/LJ036-0020.wav|tests/data/ljspeech/wavs/LJ036-0020.npy -tests/data/ljspeech/wavs/LJ036-0036.wav|tests/data/ljspeech/wavs/LJ036-0036.npy -tests/data/ljspeech/wavs/LJ032-0098.wav|tests/data/ljspeech/wavs/LJ032-0098.npy -tests/data/ljspeech/wavs/LJ029-0039.wav|tests/data/ljspeech/wavs/LJ029-0039.npy -tests/data/ljspeech/wavs/LJ033-0024.wav|tests/data/ljspeech/wavs/LJ033-0024.npy -tests/data/ljspeech/wavs/LJ019-0188.wav|tests/data/ljspeech/wavs/LJ019-0188.npy -tests/data/ljspeech/wavs/LJ012-0024.wav|tests/data/ljspeech/wavs/LJ012-0024.npy -tests/data/ljspeech/wavs/LJ010-0170.wav|tests/data/ljspeech/wavs/LJ010-0170.npy -tests/data/ljspeech/wavs/LJ040-0206.wav|tests/data/ljspeech/wavs/LJ040-0206.npy -tests/data/ljspeech/wavs/LJ044-0170.wav|tests/data/ljspeech/wavs/LJ044-0170.npy -tests/data/ljspeech/wavs/LJ015-0105.wav|tests/data/ljspeech/wavs/LJ015-0105.npy -tests/data/ljspeech/wavs/LJ012-0252.wav|tests/data/ljspeech/wavs/LJ012-0252.npy -tests/data/ljspeech/wavs/LJ037-0220.wav|tests/data/ljspeech/wavs/LJ037-0220.npy -tests/data/ljspeech/wavs/LJ012-0053.wav|tests/data/ljspeech/wavs/LJ012-0053.npy -tests/data/ljspeech/wavs/LJ012-0075.wav|tests/data/ljspeech/wavs/LJ012-0075.npy -tests/data/ljspeech/wavs/LJ015-0119.wav|tests/data/ljspeech/wavs/LJ015-0119.npy -tests/data/ljspeech/wavs/LJ050-0181.wav|tests/data/ljspeech/wavs/LJ050-0181.npy -tests/data/ljspeech/wavs/LJ015-0100.wav|tests/data/ljspeech/wavs/LJ015-0100.npy -tests/data/ljspeech/wavs/LJ044-0236.wav|tests/data/ljspeech/wavs/LJ044-0236.npy -tests/data/ljspeech/wavs/LJ036-0042.wav|tests/data/ljspeech/wavs/LJ036-0042.npy -tests/data/ljspeech/wavs/LJ049-0184.wav|tests/data/ljspeech/wavs/LJ049-0184.npy -tests/data/ljspeech/wavs/LJ015-0114.wav|tests/data/ljspeech/wavs/LJ015-0114.npy -tests/data/ljspeech/wavs/LJ010-0164.wav|tests/data/ljspeech/wavs/LJ010-0164.npy -tests/data/ljspeech/wavs/LJ002-0327.wav|tests/data/ljspeech/wavs/LJ002-0327.npy -tests/data/ljspeech/wavs/LJ032-0214.wav|tests/data/ljspeech/wavs/LJ032-0214.npy -tests/data/ljspeech/wavs/LJ028-0025.wav|tests/data/ljspeech/wavs/LJ028-0025.npy -tests/data/ljspeech/wavs/LJ045-0175.wav|tests/data/ljspeech/wavs/LJ045-0175.npy -tests/data/ljspeech/wavs/LJ006-0305.wav|tests/data/ljspeech/wavs/LJ006-0305.npy -tests/data/ljspeech/wavs/LJ036-0033.wav|tests/data/ljspeech/wavs/LJ036-0033.npy -tests/data/ljspeech/wavs/LJ035-0030.wav|tests/data/ljspeech/wavs/LJ035-0030.npy -tests/data/ljspeech/wavs/LJ032-0213.wav|tests/data/ljspeech/wavs/LJ032-0213.npy -tests/data/ljspeech/wavs/LJ011-0001.wav|tests/data/ljspeech/wavs/LJ011-0001.npy -tests/data/ljspeech/wavs/LJ036-0202.wav|tests/data/ljspeech/wavs/LJ036-0202.npy -tests/data/ljspeech/wavs/LJ046-0088.wav|tests/data/ljspeech/wavs/LJ046-0088.npy -tests/data/ljspeech/wavs/LJ004-0115.wav|tests/data/ljspeech/wavs/LJ004-0115.npy -tests/data/ljspeech/wavs/LJ041-0047.wav|tests/data/ljspeech/wavs/LJ041-0047.npy -tests/data/ljspeech/wavs/LJ044-0176.wav|tests/data/ljspeech/wavs/LJ044-0176.npy -tests/data/ljspeech/wavs/LJ047-0217.wav|tests/data/ljspeech/wavs/LJ047-0217.npy -tests/data/ljspeech/wavs/LJ044-0187.wav|tests/data/ljspeech/wavs/LJ044-0187.npy -tests/data/ljspeech/wavs/LJ034-0201.wav|tests/data/ljspeech/wavs/LJ034-0201.npy -tests/data/ljspeech/wavs/LJ003-0306.wav|tests/data/ljspeech/wavs/LJ003-0306.npy -tests/data/ljspeech/wavs/LJ013-0253.wav|tests/data/ljspeech/wavs/LJ013-0253.npy -tests/data/ljspeech/wavs/LJ002-0279.wav|tests/data/ljspeech/wavs/LJ002-0279.npy -tests/data/ljspeech/wavs/LJ011-0110.wav|tests/data/ljspeech/wavs/LJ011-0110.npy -tests/data/ljspeech/wavs/LJ041-0063.wav|tests/data/ljspeech/wavs/LJ041-0063.npy -tests/data/ljspeech/wavs/LJ028-0310.wav|tests/data/ljspeech/wavs/LJ028-0310.npy -tests/data/ljspeech/wavs/LJ009-0185.wav|tests/data/ljspeech/wavs/LJ009-0185.npy -tests/data/ljspeech/wavs/LJ050-0122.wav|tests/data/ljspeech/wavs/LJ050-0122.npy -tests/data/ljspeech/wavs/LJ032-0260.wav|tests/data/ljspeech/wavs/LJ032-0260.npy -tests/data/ljspeech/wavs/LJ014-0062.wav|tests/data/ljspeech/wavs/LJ014-0062.npy -tests/data/ljspeech/wavs/LJ006-0230.wav|tests/data/ljspeech/wavs/LJ006-0230.npy -tests/data/ljspeech/wavs/LJ029-0115.wav|tests/data/ljspeech/wavs/LJ029-0115.npy -tests/data/ljspeech/wavs/LJ031-0185.wav|tests/data/ljspeech/wavs/LJ031-0185.npy -tests/data/ljspeech/wavs/LJ037-0066.wav|tests/data/ljspeech/wavs/LJ037-0066.npy -tests/data/ljspeech/wavs/LJ019-0366.wav|tests/data/ljspeech/wavs/LJ019-0366.npy -tests/data/ljspeech/wavs/LJ032-0069.wav|tests/data/ljspeech/wavs/LJ032-0069.npy -tests/data/ljspeech/wavs/LJ016-0428.wav|tests/data/ljspeech/wavs/LJ016-0428.npy -tests/data/ljspeech/wavs/LJ031-0065.wav|tests/data/ljspeech/wavs/LJ031-0065.npy -tests/data/ljspeech/wavs/LJ005-0175.wav|tests/data/ljspeech/wavs/LJ005-0175.npy -tests/data/ljspeech/wavs/LJ030-0032.wav|tests/data/ljspeech/wavs/LJ030-0032.npy -tests/data/ljspeech/wavs/LJ039-0034.wav|tests/data/ljspeech/wavs/LJ039-0034.npy -tests/data/ljspeech/wavs/LJ002-0238.wav|tests/data/ljspeech/wavs/LJ002-0238.npy -tests/data/ljspeech/wavs/LJ032-0044.wav|tests/data/ljspeech/wavs/LJ032-0044.npy -tests/data/ljspeech/wavs/LJ036-0024.wav|tests/data/ljspeech/wavs/LJ036-0024.npy -tests/data/ljspeech/wavs/LJ023-0026.wav|tests/data/ljspeech/wavs/LJ023-0026.npy -tests/data/ljspeech/wavs/LJ017-0001.wav|tests/data/ljspeech/wavs/LJ017-0001.npy -tests/data/ljspeech/wavs/LJ050-0069.wav|tests/data/ljspeech/wavs/LJ050-0069.npy -tests/data/ljspeech/wavs/LJ010-0148.wav|tests/data/ljspeech/wavs/LJ010-0148.npy -tests/data/ljspeech/wavs/LJ049-0187.wav|tests/data/ljspeech/wavs/LJ049-0187.npy -tests/data/ljspeech/wavs/LJ018-0063.wav|tests/data/ljspeech/wavs/LJ018-0063.npy -tests/data/ljspeech/wavs/LJ003-0223.wav|tests/data/ljspeech/wavs/LJ003-0223.npy -tests/data/ljspeech/wavs/LJ047-0095.wav|tests/data/ljspeech/wavs/LJ047-0095.npy -tests/data/ljspeech/wavs/LJ036-0146.wav|tests/data/ljspeech/wavs/LJ036-0146.npy -tests/data/ljspeech/wavs/LJ027-0052.wav|tests/data/ljspeech/wavs/LJ027-0052.npy -tests/data/ljspeech/wavs/LJ045-0159.wav|tests/data/ljspeech/wavs/LJ045-0159.npy -tests/data/ljspeech/wavs/LJ011-0075.wav|tests/data/ljspeech/wavs/LJ011-0075.npy -tests/data/ljspeech/wavs/LJ017-0124.wav|tests/data/ljspeech/wavs/LJ017-0124.npy -tests/data/ljspeech/wavs/LJ016-0392.wav|tests/data/ljspeech/wavs/LJ016-0392.npy -tests/data/ljspeech/wavs/LJ027-0048.wav|tests/data/ljspeech/wavs/LJ027-0048.npy -tests/data/ljspeech/wavs/LJ037-0202.wav|tests/data/ljspeech/wavs/LJ037-0202.npy -tests/data/ljspeech/wavs/LJ030-0126.wav|tests/data/ljspeech/wavs/LJ030-0126.npy -tests/data/ljspeech/wavs/LJ012-0027.wav|tests/data/ljspeech/wavs/LJ012-0027.npy -tests/data/ljspeech/wavs/LJ006-0280.wav|tests/data/ljspeech/wavs/LJ006-0280.npy -tests/data/ljspeech/wavs/LJ017-0130.wav|tests/data/ljspeech/wavs/LJ017-0130.npy -tests/data/ljspeech/wavs/LJ011-0038.wav|tests/data/ljspeech/wavs/LJ011-0038.npy -tests/data/ljspeech/wavs/LJ044-0225.wav|tests/data/ljspeech/wavs/LJ044-0225.npy -tests/data/ljspeech/wavs/LJ034-0051.wav|tests/data/ljspeech/wavs/LJ034-0051.npy -tests/data/ljspeech/wavs/LJ034-0008.wav|tests/data/ljspeech/wavs/LJ034-0008.npy -tests/data/ljspeech/wavs/LJ001-0111.wav|tests/data/ljspeech/wavs/LJ001-0111.npy -tests/data/ljspeech/wavs/LJ036-0155.wav|tests/data/ljspeech/wavs/LJ036-0155.npy -tests/data/ljspeech/wavs/LJ016-0256.wav|tests/data/ljspeech/wavs/LJ016-0256.npy -tests/data/ljspeech/wavs/LJ002-0171.wav|tests/data/ljspeech/wavs/LJ002-0171.npy -tests/data/ljspeech/wavs/LJ010-0219.wav|tests/data/ljspeech/wavs/LJ010-0219.npy -tests/data/ljspeech/wavs/LJ046-0035.wav|tests/data/ljspeech/wavs/LJ046-0035.npy -tests/data/ljspeech/wavs/LJ031-0025.wav|tests/data/ljspeech/wavs/LJ031-0025.npy -tests/data/ljspeech/wavs/LJ003-0001.wav|tests/data/ljspeech/wavs/LJ003-0001.npy -tests/data/ljspeech/wavs/LJ018-0001.wav|tests/data/ljspeech/wavs/LJ018-0001.npy -tests/data/ljspeech/wavs/LJ018-0138.wav|tests/data/ljspeech/wavs/LJ018-0138.npy -tests/data/ljspeech/wavs/LJ026-0133.wav|tests/data/ljspeech/wavs/LJ026-0133.npy -tests/data/ljspeech/wavs/LJ006-0021.wav|tests/data/ljspeech/wavs/LJ006-0021.npy -tests/data/ljspeech/wavs/LJ028-0480.wav|tests/data/ljspeech/wavs/LJ028-0480.npy -tests/data/ljspeech/wavs/LJ006-0173.wav|tests/data/ljspeech/wavs/LJ006-0173.npy -tests/data/ljspeech/wavs/LJ018-0023.wav|tests/data/ljspeech/wavs/LJ018-0023.npy -tests/data/ljspeech/wavs/LJ011-0176.wav|tests/data/ljspeech/wavs/LJ011-0176.npy -tests/data/ljspeech/wavs/LJ016-0150.wav|tests/data/ljspeech/wavs/LJ016-0150.npy -tests/data/ljspeech/wavs/LJ018-0113.wav|tests/data/ljspeech/wavs/LJ018-0113.npy -tests/data/ljspeech/wavs/LJ017-0253.wav|tests/data/ljspeech/wavs/LJ017-0253.npy -tests/data/ljspeech/wavs/LJ011-0261.wav|tests/data/ljspeech/wavs/LJ011-0261.npy -tests/data/ljspeech/wavs/LJ039-0230.wav|tests/data/ljspeech/wavs/LJ039-0230.npy -tests/data/ljspeech/wavs/LJ041-0110.wav|tests/data/ljspeech/wavs/LJ041-0110.npy -tests/data/ljspeech/wavs/LJ008-0193.wav|tests/data/ljspeech/wavs/LJ008-0193.npy -tests/data/ljspeech/wavs/LJ022-0030.wav|tests/data/ljspeech/wavs/LJ022-0030.npy -tests/data/ljspeech/wavs/LJ044-0229.wav|tests/data/ljspeech/wavs/LJ044-0229.npy -tests/data/ljspeech/wavs/LJ046-0148.wav|tests/data/ljspeech/wavs/LJ046-0148.npy -tests/data/ljspeech/wavs/LJ008-0247.wav|tests/data/ljspeech/wavs/LJ008-0247.npy -tests/data/ljspeech/wavs/LJ018-0109.wav|tests/data/ljspeech/wavs/LJ018-0109.npy -tests/data/ljspeech/wavs/LJ016-0274.wav|tests/data/ljspeech/wavs/LJ016-0274.npy -tests/data/ljspeech/wavs/LJ037-0071.wav|tests/data/ljspeech/wavs/LJ037-0071.npy -tests/data/ljspeech/wavs/LJ037-0106.wav|tests/data/ljspeech/wavs/LJ037-0106.npy -tests/data/ljspeech/wavs/LJ016-0267.wav|tests/data/ljspeech/wavs/LJ016-0267.npy -tests/data/ljspeech/wavs/LJ028-0259.wav|tests/data/ljspeech/wavs/LJ028-0259.npy -tests/data/ljspeech/wavs/LJ036-0079.wav|tests/data/ljspeech/wavs/LJ036-0079.npy -tests/data/ljspeech/wavs/LJ008-0189.wav|tests/data/ljspeech/wavs/LJ008-0189.npy -tests/data/ljspeech/wavs/LJ018-0042.wav|tests/data/ljspeech/wavs/LJ018-0042.npy -tests/data/ljspeech/wavs/LJ002-0253.wav|tests/data/ljspeech/wavs/LJ002-0253.npy -tests/data/ljspeech/wavs/LJ042-0134.wav|tests/data/ljspeech/wavs/LJ042-0134.npy -tests/data/ljspeech/wavs/LJ038-0198.wav|tests/data/ljspeech/wavs/LJ038-0198.npy -tests/data/ljspeech/wavs/LJ010-0001.wav|tests/data/ljspeech/wavs/LJ010-0001.npy -tests/data/ljspeech/wavs/LJ046-0155.wav|tests/data/ljspeech/wavs/LJ046-0155.npy -tests/data/ljspeech/wavs/LJ019-0118.wav|tests/data/ljspeech/wavs/LJ019-0118.npy -tests/data/ljspeech/wavs/LJ048-0166.wav|tests/data/ljspeech/wavs/LJ048-0166.npy -tests/data/ljspeech/wavs/LJ002-0089.wav|tests/data/ljspeech/wavs/LJ002-0089.npy -tests/data/ljspeech/wavs/LJ001-0044.wav|tests/data/ljspeech/wavs/LJ001-0044.npy -tests/data/ljspeech/wavs/LJ019-0198.wav|tests/data/ljspeech/wavs/LJ019-0198.npy -tests/data/ljspeech/wavs/LJ010-0199.wav|tests/data/ljspeech/wavs/LJ010-0199.npy -tests/data/ljspeech/wavs/LJ021-0141.wav|tests/data/ljspeech/wavs/LJ021-0141.npy -tests/data/ljspeech/wavs/LJ039-0099.wav|tests/data/ljspeech/wavs/LJ039-0099.npy -tests/data/ljspeech/wavs/LJ030-0102.wav|tests/data/ljspeech/wavs/LJ030-0102.npy -tests/data/ljspeech/wavs/LJ024-0056.wav|tests/data/ljspeech/wavs/LJ024-0056.npy -tests/data/ljspeech/wavs/LJ019-0103.wav|tests/data/ljspeech/wavs/LJ019-0103.npy -tests/data/ljspeech/wavs/LJ009-0040.wav|tests/data/ljspeech/wavs/LJ009-0040.npy -tests/data/ljspeech/wavs/LJ001-0182.wav|tests/data/ljspeech/wavs/LJ001-0182.npy -tests/data/ljspeech/wavs/LJ035-0119.wav|tests/data/ljspeech/wavs/LJ035-0119.npy -tests/data/ljspeech/wavs/LJ001-0033.wav|tests/data/ljspeech/wavs/LJ001-0033.npy -tests/data/ljspeech/wavs/LJ031-0136.wav|tests/data/ljspeech/wavs/LJ031-0136.npy -tests/data/ljspeech/wavs/LJ010-0207.wav|tests/data/ljspeech/wavs/LJ010-0207.npy -tests/data/ljspeech/wavs/LJ014-0251.wav|tests/data/ljspeech/wavs/LJ014-0251.npy -tests/data/ljspeech/wavs/LJ012-0168.wav|tests/data/ljspeech/wavs/LJ012-0168.npy -tests/data/ljspeech/wavs/LJ003-0207.wav|tests/data/ljspeech/wavs/LJ003-0207.npy -tests/data/ljspeech/wavs/LJ025-0082.wav|tests/data/ljspeech/wavs/LJ025-0082.npy -tests/data/ljspeech/wavs/LJ046-0104.wav|tests/data/ljspeech/wavs/LJ046-0104.npy -tests/data/ljspeech/wavs/LJ010-0205.wav|tests/data/ljspeech/wavs/LJ010-0205.npy -tests/data/ljspeech/wavs/LJ012-0190.wav|tests/data/ljspeech/wavs/LJ012-0190.npy -tests/data/ljspeech/wavs/LJ014-0214.wav|tests/data/ljspeech/wavs/LJ014-0214.npy -tests/data/ljspeech/wavs/LJ008-0008.wav|tests/data/ljspeech/wavs/LJ008-0008.npy -tests/data/ljspeech/wavs/LJ009-0254.wav|tests/data/ljspeech/wavs/LJ009-0254.npy -tests/data/ljspeech/wavs/LJ030-0148.wav|tests/data/ljspeech/wavs/LJ030-0148.npy -tests/data/ljspeech/wavs/LJ002-0102.wav|tests/data/ljspeech/wavs/LJ002-0102.npy -tests/data/ljspeech/wavs/LJ002-0011.wav|tests/data/ljspeech/wavs/LJ002-0011.npy -tests/data/ljspeech/wavs/LJ004-0223.wav|tests/data/ljspeech/wavs/LJ004-0223.npy -tests/data/ljspeech/wavs/LJ004-0228.wav|tests/data/ljspeech/wavs/LJ004-0228.npy -tests/data/ljspeech/wavs/LJ046-0073.wav|tests/data/ljspeech/wavs/LJ046-0073.npy -tests/data/ljspeech/wavs/LJ010-0078.wav|tests/data/ljspeech/wavs/LJ010-0078.npy -tests/data/ljspeech/wavs/LJ031-0051.wav|tests/data/ljspeech/wavs/LJ031-0051.npy -tests/data/ljspeech/wavs/LJ009-0224.wav|tests/data/ljspeech/wavs/LJ009-0224.npy -tests/data/ljspeech/wavs/LJ033-0097.wav|tests/data/ljspeech/wavs/LJ033-0097.npy -tests/data/ljspeech/wavs/LJ038-0283.wav|tests/data/ljspeech/wavs/LJ038-0283.npy -tests/data/ljspeech/wavs/LJ025-0175.wav|tests/data/ljspeech/wavs/LJ025-0175.npy -tests/data/ljspeech/wavs/LJ035-0149.wav|tests/data/ljspeech/wavs/LJ035-0149.npy -tests/data/ljspeech/wavs/LJ042-0115.wav|tests/data/ljspeech/wavs/LJ042-0115.npy -tests/data/ljspeech/wavs/LJ050-0047.wav|tests/data/ljspeech/wavs/LJ050-0047.npy -tests/data/ljspeech/wavs/LJ047-0222.wav|tests/data/ljspeech/wavs/LJ047-0222.npy -tests/data/ljspeech/wavs/LJ026-0009.wav|tests/data/ljspeech/wavs/LJ026-0009.npy -tests/data/ljspeech/wavs/LJ044-0129.wav|tests/data/ljspeech/wavs/LJ044-0129.npy -tests/data/ljspeech/wavs/LJ040-0200.wav|tests/data/ljspeech/wavs/LJ040-0200.npy -tests/data/ljspeech/wavs/LJ003-0342.wav|tests/data/ljspeech/wavs/LJ003-0342.npy -tests/data/ljspeech/wavs/LJ047-0115.wav|tests/data/ljspeech/wavs/LJ047-0115.npy -tests/data/ljspeech/wavs/LJ041-0065.wav|tests/data/ljspeech/wavs/LJ041-0065.npy -tests/data/ljspeech/wavs/LJ007-0053.wav|tests/data/ljspeech/wavs/LJ007-0053.npy -tests/data/ljspeech/wavs/LJ048-0161.wav|tests/data/ljspeech/wavs/LJ048-0161.npy -tests/data/ljspeech/wavs/LJ024-0099.wav|tests/data/ljspeech/wavs/LJ024-0099.npy -tests/data/ljspeech/wavs/LJ024-0085.wav|tests/data/ljspeech/wavs/LJ024-0085.npy -tests/data/ljspeech/wavs/LJ029-0025.wav|tests/data/ljspeech/wavs/LJ029-0025.npy -tests/data/ljspeech/wavs/LJ035-0003.wav|tests/data/ljspeech/wavs/LJ035-0003.npy -tests/data/ljspeech/wavs/LJ024-0108.wav|tests/data/ljspeech/wavs/LJ024-0108.npy -tests/data/ljspeech/wavs/LJ028-0170.wav|tests/data/ljspeech/wavs/LJ028-0170.npy -tests/data/ljspeech/wavs/LJ048-0049.wav|tests/data/ljspeech/wavs/LJ048-0049.npy -tests/data/ljspeech/wavs/LJ006-0042.wav|tests/data/ljspeech/wavs/LJ006-0042.npy -tests/data/ljspeech/wavs/LJ005-0208.wav|tests/data/ljspeech/wavs/LJ005-0208.npy -tests/data/ljspeech/wavs/LJ015-0154.wav|tests/data/ljspeech/wavs/LJ015-0154.npy -tests/data/ljspeech/wavs/LJ033-0020.wav|tests/data/ljspeech/wavs/LJ033-0020.npy -tests/data/ljspeech/wavs/LJ036-0208.wav|tests/data/ljspeech/wavs/LJ036-0208.npy -tests/data/ljspeech/wavs/LJ033-0177.wav|tests/data/ljspeech/wavs/LJ033-0177.npy -tests/data/ljspeech/wavs/LJ046-0137.wav|tests/data/ljspeech/wavs/LJ046-0137.npy -tests/data/ljspeech/wavs/LJ039-0141.wav|tests/data/ljspeech/wavs/LJ039-0141.npy -tests/data/ljspeech/wavs/LJ026-0070.wav|tests/data/ljspeech/wavs/LJ026-0070.npy -tests/data/ljspeech/wavs/LJ002-0157.wav|tests/data/ljspeech/wavs/LJ002-0157.npy -tests/data/ljspeech/wavs/LJ008-0216.wav|tests/data/ljspeech/wavs/LJ008-0216.npy -tests/data/ljspeech/wavs/LJ015-0233.wav|tests/data/ljspeech/wavs/LJ015-0233.npy -tests/data/ljspeech/wavs/LJ037-0015.wav|tests/data/ljspeech/wavs/LJ037-0015.npy -tests/data/ljspeech/wavs/LJ021-0118.wav|tests/data/ljspeech/wavs/LJ021-0118.npy -tests/data/ljspeech/wavs/LJ037-0265.wav|tests/data/ljspeech/wavs/LJ037-0265.npy -tests/data/ljspeech/wavs/LJ030-0216.wav|tests/data/ljspeech/wavs/LJ030-0216.npy -tests/data/ljspeech/wavs/LJ031-0156.wav|tests/data/ljspeech/wavs/LJ031-0156.npy -tests/data/ljspeech/wavs/LJ031-0190.wav|tests/data/ljspeech/wavs/LJ031-0190.npy -tests/data/ljspeech/wavs/LJ026-0050.wav|tests/data/ljspeech/wavs/LJ026-0050.npy -tests/data/ljspeech/wavs/LJ015-0136.wav|tests/data/ljspeech/wavs/LJ015-0136.npy -tests/data/ljspeech/wavs/LJ047-0126.wav|tests/data/ljspeech/wavs/LJ047-0126.npy -tests/data/ljspeech/wavs/LJ005-0016.wav|tests/data/ljspeech/wavs/LJ005-0016.npy -tests/data/ljspeech/wavs/LJ012-0090.wav|tests/data/ljspeech/wavs/LJ012-0090.npy -tests/data/ljspeech/wavs/LJ035-0174.wav|tests/data/ljspeech/wavs/LJ035-0174.npy -tests/data/ljspeech/wavs/LJ031-0193.wav|tests/data/ljspeech/wavs/LJ031-0193.npy -tests/data/ljspeech/wavs/LJ004-0080.wav|tests/data/ljspeech/wavs/LJ004-0080.npy -tests/data/ljspeech/wavs/LJ021-0088.wav|tests/data/ljspeech/wavs/LJ021-0088.npy -tests/data/ljspeech/wavs/LJ004-0186.wav|tests/data/ljspeech/wavs/LJ004-0186.npy -tests/data/ljspeech/wavs/LJ011-0158.wav|tests/data/ljspeech/wavs/LJ011-0158.npy -tests/data/ljspeech/wavs/LJ004-0033.wav|tests/data/ljspeech/wavs/LJ004-0033.npy -tests/data/ljspeech/wavs/LJ012-0096.wav|tests/data/ljspeech/wavs/LJ012-0096.npy -tests/data/ljspeech/wavs/LJ004-0031.wav|tests/data/ljspeech/wavs/LJ004-0031.npy -tests/data/ljspeech/wavs/LJ007-0115.wav|tests/data/ljspeech/wavs/LJ007-0115.npy -tests/data/ljspeech/wavs/LJ030-0229.wav|tests/data/ljspeech/wavs/LJ030-0229.npy -tests/data/ljspeech/wavs/LJ026-0066.wav|tests/data/ljspeech/wavs/LJ026-0066.npy -tests/data/ljspeech/wavs/LJ039-0092.wav|tests/data/ljspeech/wavs/LJ039-0092.npy -tests/data/ljspeech/wavs/LJ039-0086.wav|tests/data/ljspeech/wavs/LJ039-0086.npy -tests/data/ljspeech/wavs/LJ004-0103.wav|tests/data/ljspeech/wavs/LJ004-0103.npy -tests/data/ljspeech/wavs/LJ037-0226.wav|tests/data/ljspeech/wavs/LJ037-0226.npy -tests/data/ljspeech/wavs/LJ002-0338.wav|tests/data/ljspeech/wavs/LJ002-0338.npy -tests/data/ljspeech/wavs/LJ036-0184.wav|tests/data/ljspeech/wavs/LJ036-0184.npy -tests/data/ljspeech/wavs/LJ036-0195.wav|tests/data/ljspeech/wavs/LJ036-0195.npy -tests/data/ljspeech/wavs/LJ024-0098.wav|tests/data/ljspeech/wavs/LJ024-0098.npy -tests/data/ljspeech/wavs/LJ022-0115.wav|tests/data/ljspeech/wavs/LJ022-0115.npy -tests/data/ljspeech/wavs/LJ013-0140.wav|tests/data/ljspeech/wavs/LJ013-0140.npy -tests/data/ljspeech/wavs/LJ028-0185.wav|tests/data/ljspeech/wavs/LJ028-0185.npy -tests/data/ljspeech/wavs/LJ025-0022.wav|tests/data/ljspeech/wavs/LJ025-0022.npy -tests/data/ljspeech/wavs/LJ013-0205.wav|tests/data/ljspeech/wavs/LJ013-0205.npy -tests/data/ljspeech/wavs/LJ038-0085.wav|tests/data/ljspeech/wavs/LJ038-0085.npy -tests/data/ljspeech/wavs/LJ024-0141.wav|tests/data/ljspeech/wavs/LJ024-0141.npy -tests/data/ljspeech/wavs/LJ027-0076.wav|tests/data/ljspeech/wavs/LJ027-0076.npy -tests/data/ljspeech/wavs/LJ024-0122.wav|tests/data/ljspeech/wavs/LJ024-0122.npy -tests/data/ljspeech/wavs/LJ049-0057.wav|tests/data/ljspeech/wavs/LJ049-0057.npy -tests/data/ljspeech/wavs/LJ003-0107.wav|tests/data/ljspeech/wavs/LJ003-0107.npy -tests/data/ljspeech/wavs/LJ013-0035.wav|tests/data/ljspeech/wavs/LJ013-0035.npy -tests/data/ljspeech/wavs/LJ017-0033.wav|tests/data/ljspeech/wavs/LJ017-0033.npy -tests/data/ljspeech/wavs/LJ028-0177.wav|tests/data/ljspeech/wavs/LJ028-0177.npy -tests/data/ljspeech/wavs/LJ023-0084.wav|tests/data/ljspeech/wavs/LJ023-0084.npy -tests/data/ljspeech/wavs/LJ004-0035.wav|tests/data/ljspeech/wavs/LJ004-0035.npy -tests/data/ljspeech/wavs/LJ012-0111.wav|tests/data/ljspeech/wavs/LJ012-0111.npy -tests/data/ljspeech/wavs/LJ013-0102.wav|tests/data/ljspeech/wavs/LJ013-0102.npy -tests/data/ljspeech/wavs/LJ003-0280.wav|tests/data/ljspeech/wavs/LJ003-0280.npy -tests/data/ljspeech/wavs/LJ013-0130.wav|tests/data/ljspeech/wavs/LJ013-0130.npy -tests/data/ljspeech/wavs/LJ017-0018.wav|tests/data/ljspeech/wavs/LJ017-0018.npy -tests/data/ljspeech/wavs/LJ003-0032.wav|tests/data/ljspeech/wavs/LJ003-0032.npy -tests/data/ljspeech/wavs/LJ050-0273.wav|tests/data/ljspeech/wavs/LJ050-0273.npy -tests/data/ljspeech/wavs/LJ011-0223.wav|tests/data/ljspeech/wavs/LJ011-0223.npy -tests/data/ljspeech/wavs/LJ050-0211.wav|tests/data/ljspeech/wavs/LJ050-0211.npy -tests/data/ljspeech/wavs/LJ023-0016.wav|tests/data/ljspeech/wavs/LJ023-0016.npy -tests/data/ljspeech/wavs/LJ022-0194.wav|tests/data/ljspeech/wavs/LJ022-0194.npy -tests/data/ljspeech/wavs/LJ046-0158.wav|tests/data/ljspeech/wavs/LJ046-0158.npy -tests/data/ljspeech/wavs/LJ047-0129.wav|tests/data/ljspeech/wavs/LJ047-0129.npy -tests/data/ljspeech/wavs/LJ004-0020.wav|tests/data/ljspeech/wavs/LJ004-0020.npy -tests/data/ljspeech/wavs/LJ023-0125.wav|tests/data/ljspeech/wavs/LJ023-0125.npy -tests/data/ljspeech/wavs/LJ014-0228.wav|tests/data/ljspeech/wavs/LJ014-0228.npy -tests/data/ljspeech/wavs/LJ012-0251.wav|tests/data/ljspeech/wavs/LJ012-0251.npy -tests/data/ljspeech/wavs/LJ023-0101.wav|tests/data/ljspeech/wavs/LJ023-0101.npy -tests/data/ljspeech/wavs/LJ025-0047.wav|tests/data/ljspeech/wavs/LJ025-0047.npy -tests/data/ljspeech/wavs/LJ042-0208.wav|tests/data/ljspeech/wavs/LJ042-0208.npy -tests/data/ljspeech/wavs/LJ039-0058.wav|tests/data/ljspeech/wavs/LJ039-0058.npy -tests/data/ljspeech/wavs/LJ042-0037.wav|tests/data/ljspeech/wavs/LJ042-0037.npy -tests/data/ljspeech/wavs/LJ008-0060.wav|tests/data/ljspeech/wavs/LJ008-0060.npy -tests/data/ljspeech/wavs/LJ001-0082.wav|tests/data/ljspeech/wavs/LJ001-0082.npy -tests/data/ljspeech/wavs/LJ028-0075.wav|tests/data/ljspeech/wavs/LJ028-0075.npy -tests/data/ljspeech/wavs/LJ001-0073.wav|tests/data/ljspeech/wavs/LJ001-0073.npy -tests/data/ljspeech/wavs/LJ016-0110.wav|tests/data/ljspeech/wavs/LJ016-0110.npy -tests/data/ljspeech/wavs/LJ028-0509.wav|tests/data/ljspeech/wavs/LJ028-0509.npy -tests/data/ljspeech/wavs/LJ003-0256.wav|tests/data/ljspeech/wavs/LJ003-0256.npy -tests/data/ljspeech/wavs/LJ015-0192.wav|tests/data/ljspeech/wavs/LJ015-0192.npy -tests/data/ljspeech/wavs/LJ011-0183.wav|tests/data/ljspeech/wavs/LJ011-0183.npy -tests/data/ljspeech/wavs/LJ007-0139.wav|tests/data/ljspeech/wavs/LJ007-0139.npy -tests/data/ljspeech/wavs/LJ028-0213.wav|tests/data/ljspeech/wavs/LJ028-0213.npy -tests/data/ljspeech/wavs/LJ045-0189.wav|tests/data/ljspeech/wavs/LJ045-0189.npy -tests/data/ljspeech/wavs/LJ029-0074.wav|tests/data/ljspeech/wavs/LJ029-0074.npy -tests/data/ljspeech/wavs/LJ049-0162.wav|tests/data/ljspeech/wavs/LJ049-0162.npy -tests/data/ljspeech/wavs/LJ038-0203.wav|tests/data/ljspeech/wavs/LJ038-0203.npy -tests/data/ljspeech/wavs/LJ028-0256.wav|tests/data/ljspeech/wavs/LJ028-0256.npy -tests/data/ljspeech/wavs/LJ033-0205.wav|tests/data/ljspeech/wavs/LJ033-0205.npy -tests/data/ljspeech/wavs/LJ023-0106.wav|tests/data/ljspeech/wavs/LJ023-0106.npy -tests/data/ljspeech/wavs/LJ018-0115.wav|tests/data/ljspeech/wavs/LJ018-0115.npy -tests/data/ljspeech/wavs/LJ015-0084.wav|tests/data/ljspeech/wavs/LJ015-0084.npy -tests/data/ljspeech/wavs/LJ047-0046.wav|tests/data/ljspeech/wavs/LJ047-0046.npy -tests/data/ljspeech/wavs/LJ019-0098.wav|tests/data/ljspeech/wavs/LJ019-0098.npy -tests/data/ljspeech/wavs/LJ025-0059.wav|tests/data/ljspeech/wavs/LJ025-0059.npy -tests/data/ljspeech/wavs/LJ047-0081.wav|tests/data/ljspeech/wavs/LJ047-0081.npy -tests/data/ljspeech/wavs/LJ002-0240.wav|tests/data/ljspeech/wavs/LJ002-0240.npy -tests/data/ljspeech/wavs/LJ042-0117.wav|tests/data/ljspeech/wavs/LJ042-0117.npy -tests/data/ljspeech/wavs/LJ047-0061.wav|tests/data/ljspeech/wavs/LJ047-0061.npy -tests/data/ljspeech/wavs/LJ030-0046.wav|tests/data/ljspeech/wavs/LJ030-0046.npy -tests/data/ljspeech/wavs/LJ041-0198.wav|tests/data/ljspeech/wavs/LJ041-0198.npy -tests/data/ljspeech/wavs/LJ017-0259.wav|tests/data/ljspeech/wavs/LJ017-0259.npy -tests/data/ljspeech/wavs/LJ004-0096.wav|tests/data/ljspeech/wavs/LJ004-0096.npy -tests/data/ljspeech/wavs/LJ004-0202.wav|tests/data/ljspeech/wavs/LJ004-0202.npy -tests/data/ljspeech/wavs/LJ040-0094.wav|tests/data/ljspeech/wavs/LJ040-0094.npy -tests/data/ljspeech/wavs/LJ042-0141.wav|tests/data/ljspeech/wavs/LJ042-0141.npy -tests/data/ljspeech/wavs/LJ022-0090.wav|tests/data/ljspeech/wavs/LJ022-0090.npy -tests/data/ljspeech/wavs/LJ048-0173.wav|tests/data/ljspeech/wavs/LJ048-0173.npy -tests/data/ljspeech/wavs/LJ009-0289.wav|tests/data/ljspeech/wavs/LJ009-0289.npy -tests/data/ljspeech/wavs/LJ049-0156.wav|tests/data/ljspeech/wavs/LJ049-0156.npy -tests/data/ljspeech/wavs/LJ014-0098.wav|tests/data/ljspeech/wavs/LJ014-0098.npy -tests/data/ljspeech/wavs/LJ018-0040.wav|tests/data/ljspeech/wavs/LJ018-0040.npy -tests/data/ljspeech/wavs/LJ010-0208.wav|tests/data/ljspeech/wavs/LJ010-0208.npy -tests/data/ljspeech/wavs/LJ027-0124.wav|tests/data/ljspeech/wavs/LJ027-0124.npy -tests/data/ljspeech/wavs/LJ022-0016.wav|tests/data/ljspeech/wavs/LJ022-0016.npy -tests/data/ljspeech/wavs/LJ019-0081.wav|tests/data/ljspeech/wavs/LJ019-0081.npy -tests/data/ljspeech/wavs/LJ009-0065.wav|tests/data/ljspeech/wavs/LJ009-0065.npy -tests/data/ljspeech/wavs/LJ009-0261.wav|tests/data/ljspeech/wavs/LJ009-0261.npy -tests/data/ljspeech/wavs/LJ029-0135.wav|tests/data/ljspeech/wavs/LJ029-0135.npy -tests/data/ljspeech/wavs/LJ039-0153.wav|tests/data/ljspeech/wavs/LJ039-0153.npy -tests/data/ljspeech/wavs/LJ003-0340.wav|tests/data/ljspeech/wavs/LJ003-0340.npy -tests/data/ljspeech/wavs/LJ028-0401.wav|tests/data/ljspeech/wavs/LJ028-0401.npy -tests/data/ljspeech/wavs/LJ047-0190.wav|tests/data/ljspeech/wavs/LJ047-0190.npy -tests/data/ljspeech/wavs/LJ019-0015.wav|tests/data/ljspeech/wavs/LJ019-0015.npy -tests/data/ljspeech/wavs/LJ043-0085.wav|tests/data/ljspeech/wavs/LJ043-0085.npy -tests/data/ljspeech/wavs/LJ043-0100.wav|tests/data/ljspeech/wavs/LJ043-0100.npy -tests/data/ljspeech/wavs/LJ031-0166.wav|tests/data/ljspeech/wavs/LJ031-0166.npy -tests/data/ljspeech/wavs/LJ033-0040.wav|tests/data/ljspeech/wavs/LJ033-0040.npy -tests/data/ljspeech/wavs/LJ036-0144.wav|tests/data/ljspeech/wavs/LJ036-0144.npy -tests/data/ljspeech/wavs/LJ044-0163.wav|tests/data/ljspeech/wavs/LJ044-0163.npy -tests/data/ljspeech/wavs/LJ018-0384.wav|tests/data/ljspeech/wavs/LJ018-0384.npy -tests/data/ljspeech/wavs/LJ018-0271.wav|tests/data/ljspeech/wavs/LJ018-0271.npy -tests/data/ljspeech/wavs/LJ018-0263.wav|tests/data/ljspeech/wavs/LJ018-0263.npy -tests/data/ljspeech/wavs/LJ050-0258.wav|tests/data/ljspeech/wavs/LJ050-0258.npy -tests/data/ljspeech/wavs/LJ018-0359.wav|tests/data/ljspeech/wavs/LJ018-0359.npy -tests/data/ljspeech/wavs/LJ034-0219.wav|tests/data/ljspeech/wavs/LJ034-0219.npy -tests/data/ljspeech/wavs/LJ047-0247.wav|tests/data/ljspeech/wavs/LJ047-0247.npy -tests/data/ljspeech/wavs/LJ018-0195.wav|tests/data/ljspeech/wavs/LJ018-0195.npy -tests/data/ljspeech/wavs/LJ048-0253.wav|tests/data/ljspeech/wavs/LJ048-0253.npy -tests/data/ljspeech/wavs/LJ019-0012.wav|tests/data/ljspeech/wavs/LJ019-0012.npy -tests/data/ljspeech/wavs/LJ011-0057.wav|tests/data/ljspeech/wavs/LJ011-0057.npy -tests/data/ljspeech/wavs/LJ010-0162.wav|tests/data/ljspeech/wavs/LJ010-0162.npy -tests/data/ljspeech/wavs/LJ030-0053.wav|tests/data/ljspeech/wavs/LJ030-0053.npy -tests/data/ljspeech/wavs/LJ010-0191.wav|tests/data/ljspeech/wavs/LJ010-0191.npy -tests/data/ljspeech/wavs/LJ021-0181.wav|tests/data/ljspeech/wavs/LJ021-0181.npy -tests/data/ljspeech/wavs/LJ018-0351.wav|tests/data/ljspeech/wavs/LJ018-0351.npy -tests/data/ljspeech/wavs/LJ018-0189.wav|tests/data/ljspeech/wavs/LJ018-0189.npy -tests/data/ljspeech/wavs/LJ017-0066.wav|tests/data/ljspeech/wavs/LJ017-0066.npy -tests/data/ljspeech/wavs/LJ033-0099.wav|tests/data/ljspeech/wavs/LJ033-0099.npy -tests/data/ljspeech/wavs/LJ018-0314.wav|tests/data/ljspeech/wavs/LJ018-0314.npy -tests/data/ljspeech/wavs/LJ028-0467.wav|tests/data/ljspeech/wavs/LJ028-0467.npy -tests/data/ljspeech/wavs/LJ031-0124.wav|tests/data/ljspeech/wavs/LJ031-0124.npy -tests/data/ljspeech/wavs/LJ009-0105.wav|tests/data/ljspeech/wavs/LJ009-0105.npy -tests/data/ljspeech/wavs/LJ030-0187.wav|tests/data/ljspeech/wavs/LJ030-0187.npy -tests/data/ljspeech/wavs/LJ011-0003.wav|tests/data/ljspeech/wavs/LJ011-0003.npy -tests/data/ljspeech/wavs/LJ048-0248.wav|tests/data/ljspeech/wavs/LJ048-0248.npy -tests/data/ljspeech/wavs/LJ026-0001.wav|tests/data/ljspeech/wavs/LJ026-0001.npy -tests/data/ljspeech/wavs/LJ019-0014.wav|tests/data/ljspeech/wavs/LJ019-0014.npy -tests/data/ljspeech/wavs/LJ024-0112.wav|tests/data/ljspeech/wavs/LJ024-0112.npy -tests/data/ljspeech/wavs/LJ002-0266.wav|tests/data/ljspeech/wavs/LJ002-0266.npy -tests/data/ljspeech/wavs/LJ050-0142.wav|tests/data/ljspeech/wavs/LJ050-0142.npy -tests/data/ljspeech/wavs/LJ031-0010.wav|tests/data/ljspeech/wavs/LJ031-0010.npy -tests/data/ljspeech/wavs/LJ027-0049.wav|tests/data/ljspeech/wavs/LJ027-0049.npy -tests/data/ljspeech/wavs/LJ006-0047.wav|tests/data/ljspeech/wavs/LJ006-0047.npy -tests/data/ljspeech/wavs/LJ041-0119.wav|tests/data/ljspeech/wavs/LJ041-0119.npy -tests/data/ljspeech/wavs/LJ030-0166.wav|tests/data/ljspeech/wavs/LJ030-0166.npy -tests/data/ljspeech/wavs/LJ009-0177.wav|tests/data/ljspeech/wavs/LJ009-0177.npy -tests/data/ljspeech/wavs/LJ018-0395.wav|tests/data/ljspeech/wavs/LJ018-0395.npy -tests/data/ljspeech/wavs/LJ049-0101.wav|tests/data/ljspeech/wavs/LJ049-0101.npy -tests/data/ljspeech/wavs/LJ019-0002.wav|tests/data/ljspeech/wavs/LJ019-0002.npy -tests/data/ljspeech/wavs/LJ032-0106.wav|tests/data/ljspeech/wavs/LJ032-0106.npy -tests/data/ljspeech/wavs/LJ010-0172.wav|tests/data/ljspeech/wavs/LJ010-0172.npy -tests/data/ljspeech/wavs/LJ048-0218.wav|tests/data/ljspeech/wavs/LJ048-0218.npy -tests/data/ljspeech/wavs/LJ003-0300.wav|tests/data/ljspeech/wavs/LJ003-0300.npy -tests/data/ljspeech/wavs/LJ002-0165.wav|tests/data/ljspeech/wavs/LJ002-0165.npy -tests/data/ljspeech/wavs/LJ046-0101.wav|tests/data/ljspeech/wavs/LJ046-0101.npy -tests/data/ljspeech/wavs/LJ042-0147.wav|tests/data/ljspeech/wavs/LJ042-0147.npy -tests/data/ljspeech/wavs/LJ019-0394.wav|tests/data/ljspeech/wavs/LJ019-0394.npy -tests/data/ljspeech/wavs/LJ028-0449.wav|tests/data/ljspeech/wavs/LJ028-0449.npy -tests/data/ljspeech/wavs/LJ017-0116.wav|tests/data/ljspeech/wavs/LJ017-0116.npy -tests/data/ljspeech/wavs/LJ038-0065.wav|tests/data/ljspeech/wavs/LJ038-0065.npy -tests/data/ljspeech/wavs/LJ006-0207.wav|tests/data/ljspeech/wavs/LJ006-0207.npy -tests/data/ljspeech/wavs/LJ009-0123.wav|tests/data/ljspeech/wavs/LJ009-0123.npy -tests/data/ljspeech/wavs/LJ018-0203.wav|tests/data/ljspeech/wavs/LJ018-0203.npy -tests/data/ljspeech/wavs/LJ039-0125.wav|tests/data/ljspeech/wavs/LJ039-0125.npy -tests/data/ljspeech/wavs/LJ034-0133.wav|tests/data/ljspeech/wavs/LJ034-0133.npy -tests/data/ljspeech/wavs/LJ008-0074.wav|tests/data/ljspeech/wavs/LJ008-0074.npy -tests/data/ljspeech/wavs/LJ030-0246.wav|tests/data/ljspeech/wavs/LJ030-0246.npy -tests/data/ljspeech/wavs/LJ045-0019.wav|tests/data/ljspeech/wavs/LJ045-0019.npy -tests/data/ljspeech/wavs/LJ039-0016.wav|tests/data/ljspeech/wavs/LJ039-0016.npy -tests/data/ljspeech/wavs/LJ019-0341.wav|tests/data/ljspeech/wavs/LJ019-0341.npy -tests/data/ljspeech/wavs/LJ033-0102.wav|tests/data/ljspeech/wavs/LJ033-0102.npy -tests/data/ljspeech/wavs/LJ033-0090.wav|tests/data/ljspeech/wavs/LJ033-0090.npy -tests/data/ljspeech/wavs/LJ008-0142.wav|tests/data/ljspeech/wavs/LJ008-0142.npy -tests/data/ljspeech/wavs/LJ038-0184.wav|tests/data/ljspeech/wavs/LJ038-0184.npy -tests/data/ljspeech/wavs/LJ006-0080.wav|tests/data/ljspeech/wavs/LJ006-0080.npy -tests/data/ljspeech/wavs/LJ013-0239.wav|tests/data/ljspeech/wavs/LJ013-0239.npy -tests/data/ljspeech/wavs/LJ015-0149.wav|tests/data/ljspeech/wavs/LJ015-0149.npy -tests/data/ljspeech/wavs/LJ007-0047.wav|tests/data/ljspeech/wavs/LJ007-0047.npy -tests/data/ljspeech/wavs/LJ028-0457.wav|tests/data/ljspeech/wavs/LJ028-0457.npy -tests/data/ljspeech/wavs/LJ012-0079.wav|tests/data/ljspeech/wavs/LJ012-0079.npy -tests/data/ljspeech/wavs/LJ050-0052.wav|tests/data/ljspeech/wavs/LJ050-0052.npy -tests/data/ljspeech/wavs/LJ018-0360.wav|tests/data/ljspeech/wavs/LJ018-0360.npy -tests/data/ljspeech/wavs/LJ014-0111.wav|tests/data/ljspeech/wavs/LJ014-0111.npy -tests/data/ljspeech/wavs/LJ019-0210.wav|tests/data/ljspeech/wavs/LJ019-0210.npy -tests/data/ljspeech/wavs/LJ012-0081.wav|tests/data/ljspeech/wavs/LJ012-0081.npy -tests/data/ljspeech/wavs/LJ035-0159.wav|tests/data/ljspeech/wavs/LJ035-0159.npy -tests/data/ljspeech/wavs/LJ050-0109.wav|tests/data/ljspeech/wavs/LJ050-0109.npy -tests/data/ljspeech/wavs/LJ004-0182.wav|tests/data/ljspeech/wavs/LJ004-0182.npy -tests/data/ljspeech/wavs/LJ010-0085.wav|tests/data/ljspeech/wavs/LJ010-0085.npy -tests/data/ljspeech/wavs/LJ003-0276.wav|tests/data/ljspeech/wavs/LJ003-0276.npy -tests/data/ljspeech/wavs/LJ021-0086.wav|tests/data/ljspeech/wavs/LJ021-0086.npy -tests/data/ljspeech/wavs/LJ020-0083.wav|tests/data/ljspeech/wavs/LJ020-0083.npy -tests/data/ljspeech/wavs/LJ003-0332.wav|tests/data/ljspeech/wavs/LJ003-0332.npy -tests/data/ljspeech/wavs/LJ018-0340.wav|tests/data/ljspeech/wavs/LJ018-0340.npy -tests/data/ljspeech/wavs/LJ001-0067.wav|tests/data/ljspeech/wavs/LJ001-0067.npy -tests/data/ljspeech/wavs/LJ004-0181.wav|tests/data/ljspeech/wavs/LJ004-0181.npy -tests/data/ljspeech/wavs/LJ013-0247.wav|tests/data/ljspeech/wavs/LJ013-0247.npy -tests/data/ljspeech/wavs/LJ039-0073.wav|tests/data/ljspeech/wavs/LJ039-0073.npy -tests/data/ljspeech/wavs/LJ045-0029.wav|tests/data/ljspeech/wavs/LJ045-0029.npy -tests/data/ljspeech/wavs/LJ038-0136.wav|tests/data/ljspeech/wavs/LJ038-0136.npy -tests/data/ljspeech/wavs/LJ009-0197.wav|tests/data/ljspeech/wavs/LJ009-0197.npy -tests/data/ljspeech/wavs/LJ039-0103.wav|tests/data/ljspeech/wavs/LJ039-0103.npy -tests/data/ljspeech/wavs/LJ038-0201.wav|tests/data/ljspeech/wavs/LJ038-0201.npy -tests/data/ljspeech/wavs/LJ009-0272.wav|tests/data/ljspeech/wavs/LJ009-0272.npy -tests/data/ljspeech/wavs/LJ038-0134.wav|tests/data/ljspeech/wavs/LJ038-0134.npy -tests/data/ljspeech/wavs/LJ014-0234.wav|tests/data/ljspeech/wavs/LJ014-0234.npy -tests/data/ljspeech/wavs/LJ047-0074.wav|tests/data/ljspeech/wavs/LJ047-0074.npy -tests/data/ljspeech/wavs/LJ024-0005.wav|tests/data/ljspeech/wavs/LJ024-0005.npy -tests/data/ljspeech/wavs/LJ042-0242.wav|tests/data/ljspeech/wavs/LJ042-0242.npy -tests/data/ljspeech/wavs/LJ045-0034.wav|tests/data/ljspeech/wavs/LJ045-0034.npy -tests/data/ljspeech/wavs/LJ012-0193.wav|tests/data/ljspeech/wavs/LJ012-0193.npy -tests/data/ljspeech/wavs/LJ033-0156.wav|tests/data/ljspeech/wavs/LJ033-0156.npy -tests/data/ljspeech/wavs/LJ019-0141.wav|tests/data/ljspeech/wavs/LJ019-0141.npy -tests/data/ljspeech/wavs/LJ007-0024.wav|tests/data/ljspeech/wavs/LJ007-0024.npy -tests/data/ljspeech/wavs/LJ009-0192.wav|tests/data/ljspeech/wavs/LJ009-0192.npy -tests/data/ljspeech/wavs/LJ013-0210.wav|tests/data/ljspeech/wavs/LJ013-0210.npy -tests/data/ljspeech/wavs/LJ012-0163.wav|tests/data/ljspeech/wavs/LJ012-0163.npy -tests/data/ljspeech/wavs/LJ042-0075.wav|tests/data/ljspeech/wavs/LJ042-0075.npy -tests/data/ljspeech/wavs/LJ031-0096.wav|tests/data/ljspeech/wavs/LJ031-0096.npy -tests/data/ljspeech/wavs/LJ014-0068.wav|tests/data/ljspeech/wavs/LJ014-0068.npy -tests/data/ljspeech/wavs/LJ014-0263.wav|tests/data/ljspeech/wavs/LJ014-0263.npy -tests/data/ljspeech/wavs/LJ014-0144.wav|tests/data/ljspeech/wavs/LJ014-0144.npy -tests/data/ljspeech/wavs/LJ004-0218.wav|tests/data/ljspeech/wavs/LJ004-0218.npy -tests/data/ljspeech/wavs/LJ028-0095.wav|tests/data/ljspeech/wavs/LJ028-0095.npy -tests/data/ljspeech/wavs/LJ045-0015.wav|tests/data/ljspeech/wavs/LJ045-0015.npy -tests/data/ljspeech/wavs/LJ031-0153.wav|tests/data/ljspeech/wavs/LJ031-0153.npy -tests/data/ljspeech/wavs/LJ014-0177.wav|tests/data/ljspeech/wavs/LJ014-0177.npy -tests/data/ljspeech/wavs/LJ012-0269.wav|tests/data/ljspeech/wavs/LJ012-0269.npy -tests/data/ljspeech/wavs/LJ001-0050.wav|tests/data/ljspeech/wavs/LJ001-0050.npy -tests/data/ljspeech/wavs/LJ042-0033.wav|tests/data/ljspeech/wavs/LJ042-0033.npy -tests/data/ljspeech/wavs/LJ037-0022.wav|tests/data/ljspeech/wavs/LJ037-0022.npy -tests/data/ljspeech/wavs/LJ016-0325.wav|tests/data/ljspeech/wavs/LJ016-0325.npy -tests/data/ljspeech/wavs/LJ031-0206.wav|tests/data/ljspeech/wavs/LJ031-0206.npy -tests/data/ljspeech/wavs/LJ036-0067.wav|tests/data/ljspeech/wavs/LJ036-0067.npy -tests/data/ljspeech/wavs/LJ042-0132.wav|tests/data/ljspeech/wavs/LJ042-0132.npy -tests/data/ljspeech/wavs/LJ042-0101.wav|tests/data/ljspeech/wavs/LJ042-0101.npy -tests/data/ljspeech/wavs/LJ011-0253.wav|tests/data/ljspeech/wavs/LJ011-0253.npy -tests/data/ljspeech/wavs/LJ042-0036.wav|tests/data/ljspeech/wavs/LJ042-0036.npy -tests/data/ljspeech/wavs/LJ032-0144.wav|tests/data/ljspeech/wavs/LJ032-0144.npy -tests/data/ljspeech/wavs/LJ018-0134.wav|tests/data/ljspeech/wavs/LJ018-0134.npy -tests/data/ljspeech/wavs/LJ026-0144.wav|tests/data/ljspeech/wavs/LJ026-0144.npy -tests/data/ljspeech/wavs/LJ005-0035.wav|tests/data/ljspeech/wavs/LJ005-0035.npy -tests/data/ljspeech/wavs/LJ043-0081.wav|tests/data/ljspeech/wavs/LJ043-0081.npy -tests/data/ljspeech/wavs/LJ023-0050.wav|tests/data/ljspeech/wavs/LJ023-0050.npy -tests/data/ljspeech/wavs/LJ005-0179.wav|tests/data/ljspeech/wavs/LJ005-0179.npy -tests/data/ljspeech/wavs/LJ008-0084.wav|tests/data/ljspeech/wavs/LJ008-0084.npy -tests/data/ljspeech/wavs/LJ018-0355.wav|tests/data/ljspeech/wavs/LJ018-0355.npy -tests/data/ljspeech/wavs/LJ040-0131.wav|tests/data/ljspeech/wavs/LJ040-0131.npy -tests/data/ljspeech/wavs/LJ008-0175.wav|tests/data/ljspeech/wavs/LJ008-0175.npy -tests/data/ljspeech/wavs/LJ017-0215.wav|tests/data/ljspeech/wavs/LJ017-0215.npy -tests/data/ljspeech/wavs/LJ039-0179.wav|tests/data/ljspeech/wavs/LJ039-0179.npy -tests/data/ljspeech/wavs/LJ011-0148.wav|tests/data/ljspeech/wavs/LJ011-0148.npy -tests/data/ljspeech/wavs/LJ017-0177.wav|tests/data/ljspeech/wavs/LJ017-0177.npy -tests/data/ljspeech/wavs/LJ027-0090.wav|tests/data/ljspeech/wavs/LJ027-0090.npy -tests/data/ljspeech/wavs/LJ012-0237.wav|tests/data/ljspeech/wavs/LJ012-0237.npy -tests/data/ljspeech/wavs/LJ027-0036.wav|tests/data/ljspeech/wavs/LJ027-0036.npy -tests/data/ljspeech/wavs/LJ049-0226.wav|tests/data/ljspeech/wavs/LJ049-0226.npy -tests/data/ljspeech/wavs/LJ046-0062.wav|tests/data/ljspeech/wavs/LJ046-0062.npy -tests/data/ljspeech/wavs/LJ016-0358.wav|tests/data/ljspeech/wavs/LJ016-0358.npy -tests/data/ljspeech/wavs/LJ002-0228.wav|tests/data/ljspeech/wavs/LJ002-0228.npy -tests/data/ljspeech/wavs/LJ028-0299.wav|tests/data/ljspeech/wavs/LJ028-0299.npy -tests/data/ljspeech/wavs/LJ004-0107.wav|tests/data/ljspeech/wavs/LJ004-0107.npy -tests/data/ljspeech/wavs/LJ017-0073.wav|tests/data/ljspeech/wavs/LJ017-0073.npy -tests/data/ljspeech/wavs/LJ011-0140.wav|tests/data/ljspeech/wavs/LJ011-0140.npy -tests/data/ljspeech/wavs/LJ046-0128.wav|tests/data/ljspeech/wavs/LJ046-0128.npy -tests/data/ljspeech/wavs/LJ021-0168.wav|tests/data/ljspeech/wavs/LJ021-0168.npy -tests/data/ljspeech/wavs/LJ022-0086.wav|tests/data/ljspeech/wavs/LJ022-0086.npy -tests/data/ljspeech/wavs/LJ016-0129.wav|tests/data/ljspeech/wavs/LJ016-0129.npy -tests/data/ljspeech/wavs/LJ022-0073.wav|tests/data/ljspeech/wavs/LJ022-0073.npy -tests/data/ljspeech/wavs/LJ011-0190.wav|tests/data/ljspeech/wavs/LJ011-0190.npy -tests/data/ljspeech/wavs/LJ003-0063.wav|tests/data/ljspeech/wavs/LJ003-0063.npy -tests/data/ljspeech/wavs/LJ021-0167.wav|tests/data/ljspeech/wavs/LJ021-0167.npy -tests/data/ljspeech/wavs/LJ018-0188.wav|tests/data/ljspeech/wavs/LJ018-0188.npy -tests/data/ljspeech/wavs/LJ001-0143.wav|tests/data/ljspeech/wavs/LJ001-0143.npy -tests/data/ljspeech/wavs/LJ042-0133.wav|tests/data/ljspeech/wavs/LJ042-0133.npy -tests/data/ljspeech/wavs/LJ037-0089.wav|tests/data/ljspeech/wavs/LJ037-0089.npy -tests/data/ljspeech/wavs/LJ018-0175.wav|tests/data/ljspeech/wavs/LJ018-0175.npy -tests/data/ljspeech/wavs/LJ017-0239.wav|tests/data/ljspeech/wavs/LJ017-0239.npy -tests/data/ljspeech/wavs/LJ011-0259.wav|tests/data/ljspeech/wavs/LJ011-0259.npy -tests/data/ljspeech/wavs/LJ017-0017.wav|tests/data/ljspeech/wavs/LJ017-0017.npy -tests/data/ljspeech/wavs/LJ016-0222.wav|tests/data/ljspeech/wavs/LJ016-0222.npy -tests/data/ljspeech/wavs/LJ001-0072.wav|tests/data/ljspeech/wavs/LJ001-0072.npy -tests/data/ljspeech/wavs/LJ010-0224.wav|tests/data/ljspeech/wavs/LJ010-0224.npy -tests/data/ljspeech/wavs/LJ011-0214.wav|tests/data/ljspeech/wavs/LJ011-0214.npy -tests/data/ljspeech/wavs/LJ006-0272.wav|tests/data/ljspeech/wavs/LJ006-0272.npy -tests/data/ljspeech/wavs/LJ032-0167.wav|tests/data/ljspeech/wavs/LJ032-0167.npy -tests/data/ljspeech/wavs/LJ017-0281.wav|tests/data/ljspeech/wavs/LJ017-0281.npy -tests/data/ljspeech/wavs/LJ032-0233.wav|tests/data/ljspeech/wavs/LJ032-0233.npy -tests/data/ljspeech/wavs/LJ006-0222.wav|tests/data/ljspeech/wavs/LJ006-0222.npy -tests/data/ljspeech/wavs/LJ017-0254.wav|tests/data/ljspeech/wavs/LJ017-0254.npy -tests/data/ljspeech/wavs/LJ030-0173.wav|tests/data/ljspeech/wavs/LJ030-0173.npy -tests/data/ljspeech/wavs/LJ015-0285.wav|tests/data/ljspeech/wavs/LJ015-0285.npy -tests/data/ljspeech/wavs/LJ017-0251.wav|tests/data/ljspeech/wavs/LJ017-0251.npy -tests/data/ljspeech/wavs/LJ019-0184.wav|tests/data/ljspeech/wavs/LJ019-0184.npy -tests/data/ljspeech/wavs/LJ013-0048.wav|tests/data/ljspeech/wavs/LJ013-0048.npy -tests/data/ljspeech/wavs/LJ001-0007.wav|tests/data/ljspeech/wavs/LJ001-0007.npy -tests/data/ljspeech/wavs/LJ008-0036.wav|tests/data/ljspeech/wavs/LJ008-0036.npy -tests/data/ljspeech/wavs/LJ026-0023.wav|tests/data/ljspeech/wavs/LJ026-0023.npy -tests/data/ljspeech/wavs/LJ030-0020.wav|tests/data/ljspeech/wavs/LJ030-0020.npy -tests/data/ljspeech/wavs/LJ016-0203.wav|tests/data/ljspeech/wavs/LJ016-0203.npy -tests/data/ljspeech/wavs/LJ034-0160.wav|tests/data/ljspeech/wavs/LJ034-0160.npy -tests/data/ljspeech/wavs/LJ005-0001.wav|tests/data/ljspeech/wavs/LJ005-0001.npy -tests/data/ljspeech/wavs/LJ031-0042.wav|tests/data/ljspeech/wavs/LJ031-0042.npy -tests/data/ljspeech/wavs/LJ008-0014.wav|tests/data/ljspeech/wavs/LJ008-0014.npy -tests/data/ljspeech/wavs/LJ042-0012.wav|tests/data/ljspeech/wavs/LJ042-0012.npy -tests/data/ljspeech/wavs/LJ022-0156.wav|tests/data/ljspeech/wavs/LJ022-0156.npy -tests/data/ljspeech/wavs/LJ024-0063.wav|tests/data/ljspeech/wavs/LJ024-0063.npy -tests/data/ljspeech/wavs/LJ026-0166.wav|tests/data/ljspeech/wavs/LJ026-0166.npy -tests/data/ljspeech/wavs/LJ037-0221.wav|tests/data/ljspeech/wavs/LJ037-0221.npy -tests/data/ljspeech/wavs/LJ036-0080.wav|tests/data/ljspeech/wavs/LJ036-0080.npy -tests/data/ljspeech/wavs/LJ022-0006.wav|tests/data/ljspeech/wavs/LJ022-0006.npy -tests/data/ljspeech/wavs/LJ045-0111.wav|tests/data/ljspeech/wavs/LJ045-0111.npy -tests/data/ljspeech/wavs/LJ044-0227.wav|tests/data/ljspeech/wavs/LJ044-0227.npy -tests/data/ljspeech/wavs/LJ038-0170.wav|tests/data/ljspeech/wavs/LJ038-0170.npy -tests/data/ljspeech/wavs/LJ014-0153.wav|tests/data/ljspeech/wavs/LJ014-0153.npy -tests/data/ljspeech/wavs/LJ021-0044.wav|tests/data/ljspeech/wavs/LJ021-0044.npy -tests/data/ljspeech/wavs/LJ039-0078.wav|tests/data/ljspeech/wavs/LJ039-0078.npy -tests/data/ljspeech/wavs/LJ048-0193.wav|tests/data/ljspeech/wavs/LJ048-0193.npy -tests/data/ljspeech/wavs/LJ039-0245.wav|tests/data/ljspeech/wavs/LJ039-0245.npy -tests/data/ljspeech/wavs/LJ039-0085.wav|tests/data/ljspeech/wavs/LJ039-0085.npy -tests/data/ljspeech/wavs/LJ014-0131.wav|tests/data/ljspeech/wavs/LJ014-0131.npy -tests/data/ljspeech/wavs/LJ025-0019.wav|tests/data/ljspeech/wavs/LJ025-0019.npy -tests/data/ljspeech/wavs/LJ009-0275.wav|tests/data/ljspeech/wavs/LJ009-0275.npy -tests/data/ljspeech/wavs/LJ045-0060.wav|tests/data/ljspeech/wavs/LJ045-0060.npy -tests/data/ljspeech/wavs/LJ002-0289.wav|tests/data/ljspeech/wavs/LJ002-0289.npy -tests/data/ljspeech/wavs/LJ042-0064.wav|tests/data/ljspeech/wavs/LJ042-0064.npy -tests/data/ljspeech/wavs/LJ019-0218.wav|tests/data/ljspeech/wavs/LJ019-0218.npy -tests/data/ljspeech/wavs/LJ041-0041.wav|tests/data/ljspeech/wavs/LJ041-0041.npy -tests/data/ljspeech/wavs/LJ031-0216.wav|tests/data/ljspeech/wavs/LJ031-0216.npy -tests/data/ljspeech/wavs/LJ047-0096.wav|tests/data/ljspeech/wavs/LJ047-0096.npy -tests/data/ljspeech/wavs/LJ019-0149.wav|tests/data/ljspeech/wavs/LJ019-0149.npy -tests/data/ljspeech/wavs/LJ030-0225.wav|tests/data/ljspeech/wavs/LJ030-0225.npy -tests/data/ljspeech/wavs/LJ022-0054.wav|tests/data/ljspeech/wavs/LJ022-0054.npy -tests/data/ljspeech/wavs/LJ007-0215.wav|tests/data/ljspeech/wavs/LJ007-0215.npy -tests/data/ljspeech/wavs/LJ010-0293.wav|tests/data/ljspeech/wavs/LJ010-0293.npy -tests/data/ljspeech/wavs/LJ005-0120.wav|tests/data/ljspeech/wavs/LJ005-0120.npy -tests/data/ljspeech/wavs/LJ027-0121.wav|tests/data/ljspeech/wavs/LJ027-0121.npy -tests/data/ljspeech/wavs/LJ003-0236.wav|tests/data/ljspeech/wavs/LJ003-0236.npy -tests/data/ljspeech/wavs/LJ029-0103.wav|tests/data/ljspeech/wavs/LJ029-0103.npy -tests/data/ljspeech/wavs/LJ024-0128.wav|tests/data/ljspeech/wavs/LJ024-0128.npy -tests/data/ljspeech/wavs/LJ008-0055.wav|tests/data/ljspeech/wavs/LJ008-0055.npy -tests/data/ljspeech/wavs/LJ011-0069.wav|tests/data/ljspeech/wavs/LJ011-0069.npy -tests/data/ljspeech/wavs/LJ003-0299.wav|tests/data/ljspeech/wavs/LJ003-0299.npy -tests/data/ljspeech/wavs/LJ043-0128.wav|tests/data/ljspeech/wavs/LJ043-0128.npy -tests/data/ljspeech/wavs/LJ011-0068.wav|tests/data/ljspeech/wavs/LJ011-0068.npy -tests/data/ljspeech/wavs/LJ037-0120.wav|tests/data/ljspeech/wavs/LJ037-0120.npy -tests/data/ljspeech/wavs/LJ028-0434.wav|tests/data/ljspeech/wavs/LJ028-0434.npy -tests/data/ljspeech/wavs/LJ019-0311.wav|tests/data/ljspeech/wavs/LJ019-0311.npy -tests/data/ljspeech/wavs/LJ040-0061.wav|tests/data/ljspeech/wavs/LJ040-0061.npy -tests/data/ljspeech/wavs/LJ004-0131.wav|tests/data/ljspeech/wavs/LJ004-0131.npy -tests/data/ljspeech/wavs/LJ002-0303.wav|tests/data/ljspeech/wavs/LJ002-0303.npy -tests/data/ljspeech/wavs/LJ044-0138.wav|tests/data/ljspeech/wavs/LJ044-0138.npy -tests/data/ljspeech/wavs/LJ049-0071.wav|tests/data/ljspeech/wavs/LJ049-0071.npy -tests/data/ljspeech/wavs/LJ008-0207.wav|tests/data/ljspeech/wavs/LJ008-0207.npy -tests/data/ljspeech/wavs/LJ025-0161.wav|tests/data/ljspeech/wavs/LJ025-0161.npy -tests/data/ljspeech/wavs/LJ045-0232.wav|tests/data/ljspeech/wavs/LJ045-0232.npy -tests/data/ljspeech/wavs/LJ009-0211.wav|tests/data/ljspeech/wavs/LJ009-0211.npy -tests/data/ljspeech/wavs/LJ039-0091.wav|tests/data/ljspeech/wavs/LJ039-0091.npy -tests/data/ljspeech/wavs/LJ018-0253.wav|tests/data/ljspeech/wavs/LJ018-0253.npy -tests/data/ljspeech/wavs/LJ015-0253.wav|tests/data/ljspeech/wavs/LJ015-0253.npy -tests/data/ljspeech/wavs/LJ005-0220.wav|tests/data/ljspeech/wavs/LJ005-0220.npy -tests/data/ljspeech/wavs/LJ010-0147.wav|tests/data/ljspeech/wavs/LJ010-0147.npy -tests/data/ljspeech/wavs/LJ018-0122.wav|tests/data/ljspeech/wavs/LJ018-0122.npy -tests/data/ljspeech/wavs/LJ019-0005.wav|tests/data/ljspeech/wavs/LJ019-0005.npy -tests/data/ljspeech/wavs/LJ018-0154.wav|tests/data/ljspeech/wavs/LJ018-0154.npy -tests/data/ljspeech/wavs/LJ028-0234.wav|tests/data/ljspeech/wavs/LJ028-0234.npy -tests/data/ljspeech/wavs/LJ031-0131.wav|tests/data/ljspeech/wavs/LJ031-0131.npy -tests/data/ljspeech/wavs/LJ010-0166.wav|tests/data/ljspeech/wavs/LJ010-0166.npy -tests/data/ljspeech/wavs/LJ021-0095.wav|tests/data/ljspeech/wavs/LJ021-0095.npy -tests/data/ljspeech/wavs/LJ016-0009.wav|tests/data/ljspeech/wavs/LJ016-0009.npy -tests/data/ljspeech/wavs/LJ014-0205.wav|tests/data/ljspeech/wavs/LJ014-0205.npy -tests/data/ljspeech/wavs/LJ028-0020.wav|tests/data/ljspeech/wavs/LJ028-0020.npy -tests/data/ljspeech/wavs/LJ012-0073.wav|tests/data/ljspeech/wavs/LJ012-0073.npy -tests/data/ljspeech/wavs/LJ015-0228.wav|tests/data/ljspeech/wavs/LJ015-0228.npy -tests/data/ljspeech/wavs/LJ023-0029.wav|tests/data/ljspeech/wavs/LJ023-0029.npy -tests/data/ljspeech/wavs/LJ015-0303.wav|tests/data/ljspeech/wavs/LJ015-0303.npy -tests/data/ljspeech/wavs/LJ027-0176.wav|tests/data/ljspeech/wavs/LJ027-0176.npy -tests/data/ljspeech/wavs/LJ037-0178.wav|tests/data/ljspeech/wavs/LJ037-0178.npy -tests/data/ljspeech/wavs/LJ049-0183.wav|tests/data/ljspeech/wavs/LJ049-0183.npy -tests/data/ljspeech/wavs/LJ023-0053.wav|tests/data/ljspeech/wavs/LJ023-0053.npy -tests/data/ljspeech/wavs/LJ023-0097.wav|tests/data/ljspeech/wavs/LJ023-0097.npy -tests/data/ljspeech/wavs/LJ005-0155.wav|tests/data/ljspeech/wavs/LJ005-0155.npy -tests/data/ljspeech/wavs/LJ018-0327.wav|tests/data/ljspeech/wavs/LJ018-0327.npy -tests/data/ljspeech/wavs/LJ006-0286.wav|tests/data/ljspeech/wavs/LJ006-0286.npy -tests/data/ljspeech/wavs/LJ018-0329.wav|tests/data/ljspeech/wavs/LJ018-0329.npy -tests/data/ljspeech/wavs/LJ028-0464.wav|tests/data/ljspeech/wavs/LJ028-0464.npy -tests/data/ljspeech/wavs/LJ021-0108.wav|tests/data/ljspeech/wavs/LJ021-0108.npy -tests/data/ljspeech/wavs/LJ026-0075.wav|tests/data/ljspeech/wavs/LJ026-0075.npy -tests/data/ljspeech/wavs/LJ018-0129.wav|tests/data/ljspeech/wavs/LJ018-0129.npy -tests/data/ljspeech/wavs/LJ030-0005.wav|tests/data/ljspeech/wavs/LJ030-0005.npy -tests/data/ljspeech/wavs/LJ034-0011.wav|tests/data/ljspeech/wavs/LJ034-0011.npy -tests/data/ljspeech/wavs/LJ004-0001.wav|tests/data/ljspeech/wavs/LJ004-0001.npy -tests/data/ljspeech/wavs/LJ034-0116.wav|tests/data/ljspeech/wavs/LJ034-0116.npy -tests/data/ljspeech/wavs/LJ003-0170.wav|tests/data/ljspeech/wavs/LJ003-0170.npy -tests/data/ljspeech/wavs/LJ044-0112.wav|tests/data/ljspeech/wavs/LJ044-0112.npy -tests/data/ljspeech/wavs/LJ046-0038.wav|tests/data/ljspeech/wavs/LJ046-0038.npy -tests/data/ljspeech/wavs/LJ035-0157.wav|tests/data/ljspeech/wavs/LJ035-0157.npy -tests/data/ljspeech/wavs/LJ003-0091.wav|tests/data/ljspeech/wavs/LJ003-0091.npy -tests/data/ljspeech/wavs/LJ021-0134.wav|tests/data/ljspeech/wavs/LJ021-0134.npy -tests/data/ljspeech/wavs/LJ035-0143.wav|tests/data/ljspeech/wavs/LJ035-0143.npy -tests/data/ljspeech/wavs/LJ038-0031.wav|tests/data/ljspeech/wavs/LJ038-0031.npy -tests/data/ljspeech/wavs/LJ029-0008.wav|tests/data/ljspeech/wavs/LJ029-0008.npy -tests/data/ljspeech/wavs/LJ014-0224.wav|tests/data/ljspeech/wavs/LJ014-0224.npy -tests/data/ljspeech/wavs/LJ046-0114.wav|tests/data/ljspeech/wavs/LJ046-0114.npy -tests/data/ljspeech/wavs/LJ019-0095.wav|tests/data/ljspeech/wavs/LJ019-0095.npy -tests/data/ljspeech/wavs/LJ022-0197.wav|tests/data/ljspeech/wavs/LJ022-0197.npy -tests/data/ljspeech/wavs/LJ038-0045.wav|tests/data/ljspeech/wavs/LJ038-0045.npy -tests/data/ljspeech/wavs/LJ031-0105.wav|tests/data/ljspeech/wavs/LJ031-0105.npy -tests/data/ljspeech/wavs/LJ043-0187.wav|tests/data/ljspeech/wavs/LJ043-0187.npy -tests/data/ljspeech/wavs/LJ006-0127.wav|tests/data/ljspeech/wavs/LJ006-0127.npy -tests/data/ljspeech/wavs/LJ018-0318.wav|tests/data/ljspeech/wavs/LJ018-0318.npy -tests/data/ljspeech/wavs/LJ028-0044.wav|tests/data/ljspeech/wavs/LJ028-0044.npy -tests/data/ljspeech/wavs/LJ011-0251.wav|tests/data/ljspeech/wavs/LJ011-0251.npy -tests/data/ljspeech/wavs/LJ046-0152.wav|tests/data/ljspeech/wavs/LJ046-0152.npy -tests/data/ljspeech/wavs/LJ010-0004.wav|tests/data/ljspeech/wavs/LJ010-0004.npy -tests/data/ljspeech/wavs/LJ040-0234.wav|tests/data/ljspeech/wavs/LJ040-0234.npy -tests/data/ljspeech/wavs/LJ019-0080.wav|tests/data/ljspeech/wavs/LJ019-0080.npy -tests/data/ljspeech/wavs/LJ015-0177.wav|tests/data/ljspeech/wavs/LJ015-0177.npy -tests/data/ljspeech/wavs/LJ019-0124.wav|tests/data/ljspeech/wavs/LJ019-0124.npy -tests/data/ljspeech/wavs/LJ033-0196.wav|tests/data/ljspeech/wavs/LJ033-0196.npy -tests/data/ljspeech/wavs/LJ021-0171.wav|tests/data/ljspeech/wavs/LJ021-0171.npy -tests/data/ljspeech/wavs/LJ038-0069.wav|tests/data/ljspeech/wavs/LJ038-0069.npy -tests/data/ljspeech/wavs/LJ025-0101.wav|tests/data/ljspeech/wavs/LJ025-0101.npy -tests/data/ljspeech/wavs/LJ031-0209.wav|tests/data/ljspeech/wavs/LJ031-0209.npy -tests/data/ljspeech/wavs/LJ030-0074.wav|tests/data/ljspeech/wavs/LJ030-0074.npy -tests/data/ljspeech/wavs/LJ016-0149.wav|tests/data/ljspeech/wavs/LJ016-0149.npy -tests/data/ljspeech/wavs/LJ027-0029.wav|tests/data/ljspeech/wavs/LJ027-0029.npy -tests/data/ljspeech/wavs/LJ031-0196.wav|tests/data/ljspeech/wavs/LJ031-0196.npy -tests/data/ljspeech/wavs/LJ032-0090.wav|tests/data/ljspeech/wavs/LJ032-0090.npy -tests/data/ljspeech/wavs/LJ029-0163.wav|tests/data/ljspeech/wavs/LJ029-0163.npy -tests/data/ljspeech/wavs/LJ007-0209.wav|tests/data/ljspeech/wavs/LJ007-0209.npy -tests/data/ljspeech/wavs/LJ032-0268.wav|tests/data/ljspeech/wavs/LJ032-0268.npy -tests/data/ljspeech/wavs/LJ032-0269.wav|tests/data/ljspeech/wavs/LJ032-0269.npy -tests/data/ljspeech/wavs/LJ028-0118.wav|tests/data/ljspeech/wavs/LJ028-0118.npy -tests/data/ljspeech/wavs/LJ032-0195.wav|tests/data/ljspeech/wavs/LJ032-0195.npy -tests/data/ljspeech/wavs/LJ033-0065.wav|tests/data/ljspeech/wavs/LJ033-0065.npy -tests/data/ljspeech/wavs/LJ027-0166.wav|tests/data/ljspeech/wavs/LJ027-0166.npy -tests/data/ljspeech/wavs/LJ028-0438.wav|tests/data/ljspeech/wavs/LJ028-0438.npy -tests/data/ljspeech/wavs/LJ014-0316.wav|tests/data/ljspeech/wavs/LJ014-0316.npy -tests/data/ljspeech/wavs/LJ004-0149.wav|tests/data/ljspeech/wavs/LJ004-0149.npy -tests/data/ljspeech/wavs/LJ029-0132.wav|tests/data/ljspeech/wavs/LJ029-0132.npy -tests/data/ljspeech/wavs/LJ029-0053.wav|tests/data/ljspeech/wavs/LJ029-0053.npy -tests/data/ljspeech/wavs/LJ032-0270.wav|tests/data/ljspeech/wavs/LJ032-0270.npy -tests/data/ljspeech/wavs/LJ032-0194.wav|tests/data/ljspeech/wavs/LJ032-0194.npy -tests/data/ljspeech/wavs/LJ032-0096.wav|tests/data/ljspeech/wavs/LJ032-0096.npy -tests/data/ljspeech/wavs/LJ028-0078.wav|tests/data/ljspeech/wavs/LJ028-0078.npy -tests/data/ljspeech/wavs/LJ047-0234.wav|tests/data/ljspeech/wavs/LJ047-0234.npy -tests/data/ljspeech/wavs/LJ028-0176.wav|tests/data/ljspeech/wavs/LJ028-0176.npy -tests/data/ljspeech/wavs/LJ028-0205.wav|tests/data/ljspeech/wavs/LJ028-0205.npy -tests/data/ljspeech/wavs/LJ037-0151.wav|tests/data/ljspeech/wavs/LJ037-0151.npy -tests/data/ljspeech/wavs/LJ028-0512.wav|tests/data/ljspeech/wavs/LJ028-0512.npy -tests/data/ljspeech/wavs/LJ042-0100.wav|tests/data/ljspeech/wavs/LJ042-0100.npy -tests/data/ljspeech/wavs/LJ049-0111.wav|tests/data/ljspeech/wavs/LJ049-0111.npy -tests/data/ljspeech/wavs/LJ015-0019.wav|tests/data/ljspeech/wavs/LJ015-0019.npy -tests/data/ljspeech/wavs/LJ032-0057.wav|tests/data/ljspeech/wavs/LJ032-0057.npy -tests/data/ljspeech/wavs/LJ050-0078.wav|tests/data/ljspeech/wavs/LJ050-0078.npy -tests/data/ljspeech/wavs/LJ026-0122.wav|tests/data/ljspeech/wavs/LJ026-0122.npy -tests/data/ljspeech/wavs/LJ026-0164.wav|tests/data/ljspeech/wavs/LJ026-0164.npy -tests/data/ljspeech/wavs/LJ028-0054.wav|tests/data/ljspeech/wavs/LJ028-0054.npy -tests/data/ljspeech/wavs/LJ043-0020.wav|tests/data/ljspeech/wavs/LJ043-0020.npy -tests/data/ljspeech/wavs/LJ036-0212.wav|tests/data/ljspeech/wavs/LJ036-0212.npy -tests/data/ljspeech/wavs/LJ028-0221.wav|tests/data/ljspeech/wavs/LJ028-0221.npy -tests/data/ljspeech/wavs/LJ021-0036.wav|tests/data/ljspeech/wavs/LJ021-0036.npy -tests/data/ljspeech/wavs/LJ019-0378.wav|tests/data/ljspeech/wavs/LJ019-0378.npy -tests/data/ljspeech/wavs/LJ042-0198.wav|tests/data/ljspeech/wavs/LJ042-0198.npy -tests/data/ljspeech/wavs/LJ021-0016.wav|tests/data/ljspeech/wavs/LJ021-0016.npy -tests/data/ljspeech/wavs/LJ007-0122.wav|tests/data/ljspeech/wavs/LJ007-0122.npy -tests/data/ljspeech/wavs/LJ027-0003.wav|tests/data/ljspeech/wavs/LJ027-0003.npy -tests/data/ljspeech/wavs/LJ028-0472.wav|tests/data/ljspeech/wavs/LJ028-0472.npy -tests/data/ljspeech/wavs/LJ030-0150.wav|tests/data/ljspeech/wavs/LJ030-0150.npy -tests/data/ljspeech/wavs/LJ043-0043.wav|tests/data/ljspeech/wavs/LJ043-0043.npy -tests/data/ljspeech/wavs/LJ033-0166.wav|tests/data/ljspeech/wavs/LJ033-0166.npy -tests/data/ljspeech/wavs/LJ007-0156.wav|tests/data/ljspeech/wavs/LJ007-0156.npy -tests/data/ljspeech/wavs/LJ021-0019.wav|tests/data/ljspeech/wavs/LJ021-0019.npy -tests/data/ljspeech/wavs/LJ050-0097.wav|tests/data/ljspeech/wavs/LJ050-0097.npy -tests/data/ljspeech/wavs/LJ021-0030.wav|tests/data/ljspeech/wavs/LJ021-0030.npy -tests/data/ljspeech/wavs/LJ018-0171.wav|tests/data/ljspeech/wavs/LJ018-0171.npy -tests/data/ljspeech/wavs/LJ042-0165.wav|tests/data/ljspeech/wavs/LJ042-0165.npy -tests/data/ljspeech/wavs/LJ050-0131.wav|tests/data/ljspeech/wavs/LJ050-0131.npy -tests/data/ljspeech/wavs/LJ018-0058.wav|tests/data/ljspeech/wavs/LJ018-0058.npy -tests/data/ljspeech/wavs/LJ005-0290.wav|tests/data/ljspeech/wavs/LJ005-0290.npy -tests/data/ljspeech/wavs/LJ042-0124.wav|tests/data/ljspeech/wavs/LJ042-0124.npy -tests/data/ljspeech/wavs/LJ032-0190.wav|tests/data/ljspeech/wavs/LJ032-0190.npy -tests/data/ljspeech/wavs/LJ028-0495.wav|tests/data/ljspeech/wavs/LJ028-0495.npy -tests/data/ljspeech/wavs/LJ033-0036.wav|tests/data/ljspeech/wavs/LJ033-0036.npy -tests/data/ljspeech/wavs/LJ049-0059.wav|tests/data/ljspeech/wavs/LJ049-0059.npy -tests/data/ljspeech/wavs/LJ014-0324.wav|tests/data/ljspeech/wavs/LJ014-0324.npy -tests/data/ljspeech/wavs/LJ044-0015.wav|tests/data/ljspeech/wavs/LJ044-0015.npy -tests/data/ljspeech/wavs/LJ005-0217.wav|tests/data/ljspeech/wavs/LJ005-0217.npy -tests/data/ljspeech/wavs/LJ039-0159.wav|tests/data/ljspeech/wavs/LJ039-0159.npy -tests/data/ljspeech/wavs/LJ021-0114.wav|tests/data/ljspeech/wavs/LJ021-0114.npy -tests/data/ljspeech/wavs/LJ036-0048.wav|tests/data/ljspeech/wavs/LJ036-0048.npy -tests/data/ljspeech/wavs/LJ044-0053.wav|tests/data/ljspeech/wavs/LJ044-0053.npy -tests/data/ljspeech/wavs/LJ021-0184.wav|tests/data/ljspeech/wavs/LJ021-0184.npy -tests/data/ljspeech/wavs/LJ021-0154.wav|tests/data/ljspeech/wavs/LJ021-0154.npy -tests/data/ljspeech/wavs/LJ049-0012.wav|tests/data/ljspeech/wavs/LJ049-0012.npy -tests/data/ljspeech/wavs/LJ034-0104.wav|tests/data/ljspeech/wavs/LJ034-0104.npy -tests/data/ljspeech/wavs/LJ017-0038.wav|tests/data/ljspeech/wavs/LJ017-0038.npy -tests/data/ljspeech/wavs/LJ012-0266.wav|tests/data/ljspeech/wavs/LJ012-0266.npy -tests/data/ljspeech/wavs/LJ016-0262.wav|tests/data/ljspeech/wavs/LJ016-0262.npy -tests/data/ljspeech/wavs/LJ012-0068.wav|tests/data/ljspeech/wavs/LJ012-0068.npy -tests/data/ljspeech/wavs/LJ038-0250.wav|tests/data/ljspeech/wavs/LJ038-0250.npy -tests/data/ljspeech/wavs/LJ005-0077.wav|tests/data/ljspeech/wavs/LJ005-0077.npy -tests/data/ljspeech/wavs/LJ018-0148.wav|tests/data/ljspeech/wavs/LJ018-0148.npy -tests/data/ljspeech/wavs/LJ013-0164.wav|tests/data/ljspeech/wavs/LJ013-0164.npy -tests/data/ljspeech/wavs/LJ019-0339.wav|tests/data/ljspeech/wavs/LJ019-0339.npy -tests/data/ljspeech/wavs/LJ016-0422.wav|tests/data/ljspeech/wavs/LJ016-0422.npy -tests/data/ljspeech/wavs/LJ005-0147.wav|tests/data/ljspeech/wavs/LJ005-0147.npy -tests/data/ljspeech/wavs/LJ008-0217.wav|tests/data/ljspeech/wavs/LJ008-0217.npy -tests/data/ljspeech/wavs/LJ014-0036.wav|tests/data/ljspeech/wavs/LJ014-0036.npy -tests/data/ljspeech/wavs/LJ015-0067.wav|tests/data/ljspeech/wavs/LJ015-0067.npy -tests/data/ljspeech/wavs/LJ012-0087.wav|tests/data/ljspeech/wavs/LJ012-0087.npy -tests/data/ljspeech/wavs/LJ049-0002.wav|tests/data/ljspeech/wavs/LJ049-0002.npy -tests/data/ljspeech/wavs/LJ039-0003.wav|tests/data/ljspeech/wavs/LJ039-0003.npy -tests/data/ljspeech/wavs/LJ004-0173.wav|tests/data/ljspeech/wavs/LJ004-0173.npy -tests/data/ljspeech/wavs/LJ004-0168.wav|tests/data/ljspeech/wavs/LJ004-0168.npy -tests/data/ljspeech/wavs/LJ018-0377.wav|tests/data/ljspeech/wavs/LJ018-0377.npy -tests/data/ljspeech/wavs/LJ015-0134.wav|tests/data/ljspeech/wavs/LJ015-0134.npy -tests/data/ljspeech/wavs/LJ037-0252.wav|tests/data/ljspeech/wavs/LJ037-0252.npy -tests/data/ljspeech/wavs/LJ016-0180.wav|tests/data/ljspeech/wavs/LJ016-0180.npy -tests/data/ljspeech/wavs/LJ011-0124.wav|tests/data/ljspeech/wavs/LJ011-0124.npy -tests/data/ljspeech/wavs/LJ042-0007.wav|tests/data/ljspeech/wavs/LJ042-0007.npy -tests/data/ljspeech/wavs/LJ045-0107.wav|tests/data/ljspeech/wavs/LJ045-0107.npy -tests/data/ljspeech/wavs/LJ040-0052.wav|tests/data/ljspeech/wavs/LJ040-0052.npy -tests/data/ljspeech/wavs/LJ010-0235.wav|tests/data/ljspeech/wavs/LJ010-0235.npy -tests/data/ljspeech/wavs/LJ015-0282.wav|tests/data/ljspeech/wavs/LJ015-0282.npy -tests/data/ljspeech/wavs/LJ022-0200.wav|tests/data/ljspeech/wavs/LJ022-0200.npy -tests/data/ljspeech/wavs/LJ016-0018.wav|tests/data/ljspeech/wavs/LJ016-0018.npy -tests/data/ljspeech/wavs/LJ047-0248.wav|tests/data/ljspeech/wavs/LJ047-0248.npy -tests/data/ljspeech/wavs/LJ014-0213.wav|tests/data/ljspeech/wavs/LJ014-0213.npy -tests/data/ljspeech/wavs/LJ003-0187.wav|tests/data/ljspeech/wavs/LJ003-0187.npy -tests/data/ljspeech/wavs/LJ041-0089.wav|tests/data/ljspeech/wavs/LJ041-0089.npy -tests/data/ljspeech/wavs/LJ017-0056.wav|tests/data/ljspeech/wavs/LJ017-0056.npy -tests/data/ljspeech/wavs/LJ017-0149.wav|tests/data/ljspeech/wavs/LJ017-0149.npy -tests/data/ljspeech/wavs/LJ010-0143.wav|tests/data/ljspeech/wavs/LJ010-0143.npy -tests/data/ljspeech/wavs/LJ019-0306.wav|tests/data/ljspeech/wavs/LJ019-0306.npy -tests/data/ljspeech/wavs/LJ036-0043.wav|tests/data/ljspeech/wavs/LJ036-0043.npy -tests/data/ljspeech/wavs/LJ050-0006.wav|tests/data/ljspeech/wavs/LJ050-0006.npy -tests/data/ljspeech/wavs/LJ037-0253.wav|tests/data/ljspeech/wavs/LJ037-0253.npy -tests/data/ljspeech/wavs/LJ045-0186.wav|tests/data/ljspeech/wavs/LJ045-0186.npy -tests/data/ljspeech/wavs/LJ045-0188.wav|tests/data/ljspeech/wavs/LJ045-0188.npy -tests/data/ljspeech/wavs/LJ023-0107.wav|tests/data/ljspeech/wavs/LJ023-0107.npy -tests/data/ljspeech/wavs/LJ003-0292.wav|tests/data/ljspeech/wavs/LJ003-0292.npy -tests/data/ljspeech/wavs/LJ039-0219.wav|tests/data/ljspeech/wavs/LJ039-0219.npy -tests/data/ljspeech/wavs/LJ013-0150.wav|tests/data/ljspeech/wavs/LJ013-0150.npy -tests/data/ljspeech/wavs/LJ019-0129.wav|tests/data/ljspeech/wavs/LJ019-0129.npy -tests/data/ljspeech/wavs/LJ015-0308.wav|tests/data/ljspeech/wavs/LJ015-0308.npy -tests/data/ljspeech/wavs/LJ011-0211.wav|tests/data/ljspeech/wavs/LJ011-0211.npy -tests/data/ljspeech/wavs/LJ016-0238.wav|tests/data/ljspeech/wavs/LJ016-0238.npy -tests/data/ljspeech/wavs/LJ044-0233.wav|tests/data/ljspeech/wavs/LJ044-0233.npy -tests/data/ljspeech/wavs/LJ017-0174.wav|tests/data/ljspeech/wavs/LJ017-0174.npy -tests/data/ljspeech/wavs/LJ046-0121.wav|tests/data/ljspeech/wavs/LJ046-0121.npy -tests/data/ljspeech/wavs/LJ024-0030.wav|tests/data/ljspeech/wavs/LJ024-0030.npy -tests/data/ljspeech/wavs/LJ046-0071.wav|tests/data/ljspeech/wavs/LJ046-0071.npy -tests/data/ljspeech/wavs/LJ010-0159.wav|tests/data/ljspeech/wavs/LJ010-0159.npy -tests/data/ljspeech/wavs/LJ004-0065.wav|tests/data/ljspeech/wavs/LJ004-0065.npy -tests/data/ljspeech/wavs/LJ002-0314.wav|tests/data/ljspeech/wavs/LJ002-0314.npy -tests/data/ljspeech/wavs/LJ030-0026.wav|tests/data/ljspeech/wavs/LJ030-0026.npy -tests/data/ljspeech/wavs/LJ049-0044.wav|tests/data/ljspeech/wavs/LJ049-0044.npy -tests/data/ljspeech/wavs/LJ002-0227.wav|tests/data/ljspeech/wavs/LJ002-0227.npy -tests/data/ljspeech/wavs/LJ002-0167.wav|tests/data/ljspeech/wavs/LJ002-0167.npy -tests/data/ljspeech/wavs/LJ002-0316.wav|tests/data/ljspeech/wavs/LJ002-0316.npy -tests/data/ljspeech/wavs/LJ040-0034.wav|tests/data/ljspeech/wavs/LJ040-0034.npy -tests/data/ljspeech/wavs/LJ033-0193.wav|tests/data/ljspeech/wavs/LJ033-0193.npy -tests/data/ljspeech/wavs/LJ024-0070.wav|tests/data/ljspeech/wavs/LJ024-0070.npy -tests/data/ljspeech/wavs/LJ004-0064.wav|tests/data/ljspeech/wavs/LJ004-0064.npy -tests/data/ljspeech/wavs/LJ001-0120.wav|tests/data/ljspeech/wavs/LJ001-0120.npy -tests/data/ljspeech/wavs/LJ015-0246.wav|tests/data/ljspeech/wavs/LJ015-0246.npy -tests/data/ljspeech/wavs/LJ044-0128.wav|tests/data/ljspeech/wavs/LJ044-0128.npy -tests/data/ljspeech/wavs/LJ003-0335.wav|tests/data/ljspeech/wavs/LJ003-0335.npy -tests/data/ljspeech/wavs/LJ004-0133.wav|tests/data/ljspeech/wavs/LJ004-0133.npy -tests/data/ljspeech/wavs/LJ024-0036.wav|tests/data/ljspeech/wavs/LJ024-0036.npy -tests/data/ljspeech/wavs/LJ024-0035.wav|tests/data/ljspeech/wavs/LJ024-0035.npy -tests/data/ljspeech/wavs/LJ001-0058.wav|tests/data/ljspeech/wavs/LJ001-0058.npy -tests/data/ljspeech/wavs/LJ022-0136.wav|tests/data/ljspeech/wavs/LJ022-0136.npy -tests/data/ljspeech/wavs/LJ010-0271.wav|tests/data/ljspeech/wavs/LJ010-0271.npy -tests/data/ljspeech/wavs/LJ028-0341.wav|tests/data/ljspeech/wavs/LJ028-0341.npy -tests/data/ljspeech/wavs/LJ010-0168.wav|tests/data/ljspeech/wavs/LJ010-0168.npy -tests/data/ljspeech/wavs/LJ002-0106.wav|tests/data/ljspeech/wavs/LJ002-0106.npy -tests/data/ljspeech/wavs/LJ010-0154.wav|tests/data/ljspeech/wavs/LJ010-0154.npy -tests/data/ljspeech/wavs/LJ001-0147.wav|tests/data/ljspeech/wavs/LJ001-0147.npy -tests/data/ljspeech/wavs/LJ002-0176.wav|tests/data/ljspeech/wavs/LJ002-0176.npy -tests/data/ljspeech/wavs/LJ019-0279.wav|tests/data/ljspeech/wavs/LJ019-0279.npy -tests/data/ljspeech/wavs/LJ041-0040.wav|tests/data/ljspeech/wavs/LJ041-0040.npy -tests/data/ljspeech/wavs/LJ021-0163.wav|tests/data/ljspeech/wavs/LJ021-0163.npy -tests/data/ljspeech/wavs/LJ022-0066.wav|tests/data/ljspeech/wavs/LJ022-0066.npy -tests/data/ljspeech/wavs/LJ038-0291.wav|tests/data/ljspeech/wavs/LJ038-0291.npy -tests/data/ljspeech/wavs/LJ002-0146.wav|tests/data/ljspeech/wavs/LJ002-0146.npy -tests/data/ljspeech/wavs/LJ009-0252.wav|tests/data/ljspeech/wavs/LJ009-0252.npy -tests/data/ljspeech/wavs/LJ015-0127.wav|tests/data/ljspeech/wavs/LJ015-0127.npy -tests/data/ljspeech/wavs/LJ048-0195.wav|tests/data/ljspeech/wavs/LJ048-0195.npy -tests/data/ljspeech/wavs/LJ041-0082.wav|tests/data/ljspeech/wavs/LJ041-0082.npy -tests/data/ljspeech/wavs/LJ022-0059.wav|tests/data/ljspeech/wavs/LJ022-0059.npy -tests/data/ljspeech/wavs/LJ019-0004.wav|tests/data/ljspeech/wavs/LJ019-0004.npy -tests/data/ljspeech/wavs/LJ019-0272.wav|tests/data/ljspeech/wavs/LJ019-0272.npy -tests/data/ljspeech/wavs/LJ037-0163.wav|tests/data/ljspeech/wavs/LJ037-0163.npy -tests/data/ljspeech/wavs/LJ040-0169.wav|tests/data/ljspeech/wavs/LJ040-0169.npy -tests/data/ljspeech/wavs/LJ010-0139.wav|tests/data/ljspeech/wavs/LJ010-0139.npy -tests/data/ljspeech/wavs/LJ032-0129.wav|tests/data/ljspeech/wavs/LJ032-0129.npy -tests/data/ljspeech/wavs/LJ016-0026.wav|tests/data/ljspeech/wavs/LJ016-0026.npy -tests/data/ljspeech/wavs/LJ041-0020.wav|tests/data/ljspeech/wavs/LJ041-0020.npy -tests/data/ljspeech/wavs/LJ017-0029.wav|tests/data/ljspeech/wavs/LJ017-0029.npy -tests/data/ljspeech/wavs/LJ022-0046.wav|tests/data/ljspeech/wavs/LJ022-0046.npy -tests/data/ljspeech/wavs/LJ002-0152.wav|tests/data/ljspeech/wavs/LJ002-0152.npy -tests/data/ljspeech/wavs/LJ010-0036.wav|tests/data/ljspeech/wavs/LJ010-0036.npy -tests/data/ljspeech/wavs/LJ037-0105.wav|tests/data/ljspeech/wavs/LJ037-0105.npy -tests/data/ljspeech/wavs/LJ013-0251.wav|tests/data/ljspeech/wavs/LJ013-0251.npy -tests/data/ljspeech/wavs/LJ010-0096.wav|tests/data/ljspeech/wavs/LJ010-0096.npy -tests/data/ljspeech/wavs/LJ002-0175.wav|tests/data/ljspeech/wavs/LJ002-0175.npy -tests/data/ljspeech/wavs/LJ011-0244.wav|tests/data/ljspeech/wavs/LJ011-0244.npy -tests/data/ljspeech/wavs/LJ010-0098.wav|tests/data/ljspeech/wavs/LJ010-0098.npy -tests/data/ljspeech/wavs/LJ002-0242.wav|tests/data/ljspeech/wavs/LJ002-0242.npy -tests/data/ljspeech/wavs/LJ001-0086.wav|tests/data/ljspeech/wavs/LJ001-0086.npy -tests/data/ljspeech/wavs/LJ012-0085.wav|tests/data/ljspeech/wavs/LJ012-0085.npy -tests/data/ljspeech/wavs/LJ038-0190.wav|tests/data/ljspeech/wavs/LJ038-0190.npy -tests/data/ljspeech/wavs/LJ004-0215.wav|tests/data/ljspeech/wavs/LJ004-0215.npy -tests/data/ljspeech/wavs/LJ049-0019.wav|tests/data/ljspeech/wavs/LJ049-0019.npy -tests/data/ljspeech/wavs/LJ012-0041.wav|tests/data/ljspeech/wavs/LJ012-0041.npy -tests/data/ljspeech/wavs/LJ041-0054.wav|tests/data/ljspeech/wavs/LJ041-0054.npy -tests/data/ljspeech/wavs/LJ036-0087.wav|tests/data/ljspeech/wavs/LJ036-0087.npy -tests/data/ljspeech/wavs/LJ001-0148.wav|tests/data/ljspeech/wavs/LJ001-0148.npy -tests/data/ljspeech/wavs/LJ011-0285.wav|tests/data/ljspeech/wavs/LJ011-0285.npy -tests/data/ljspeech/wavs/LJ030-0028.wav|tests/data/ljspeech/wavs/LJ030-0028.npy -tests/data/ljspeech/wavs/LJ014-0146.wav|tests/data/ljspeech/wavs/LJ014-0146.npy -tests/data/ljspeech/wavs/LJ014-0190.wav|tests/data/ljspeech/wavs/LJ014-0190.npy -tests/data/ljspeech/wavs/LJ048-0199.wav|tests/data/ljspeech/wavs/LJ048-0199.npy -tests/data/ljspeech/wavs/LJ024-0088.wav|tests/data/ljspeech/wavs/LJ024-0088.npy -tests/data/ljspeech/wavs/LJ038-0017.wav|tests/data/ljspeech/wavs/LJ038-0017.npy -tests/data/ljspeech/wavs/LJ004-0180.wav|tests/data/ljspeech/wavs/LJ004-0180.npy -tests/data/ljspeech/wavs/LJ015-0123.wav|tests/data/ljspeech/wavs/LJ015-0123.npy -tests/data/ljspeech/wavs/LJ036-0066.wav|tests/data/ljspeech/wavs/LJ036-0066.npy -tests/data/ljspeech/wavs/LJ024-0093.wav|tests/data/ljspeech/wavs/LJ024-0093.npy -tests/data/ljspeech/wavs/LJ028-0049.wav|tests/data/ljspeech/wavs/LJ028-0049.npy -tests/data/ljspeech/wavs/LJ047-0128.wav|tests/data/ljspeech/wavs/LJ047-0128.npy -tests/data/ljspeech/wavs/LJ013-0110.wav|tests/data/ljspeech/wavs/LJ013-0110.npy -tests/data/ljspeech/wavs/LJ014-0154.wav|tests/data/ljspeech/wavs/LJ014-0154.npy -tests/data/ljspeech/wavs/LJ038-0027.wav|tests/data/ljspeech/wavs/LJ038-0027.npy -tests/data/ljspeech/wavs/LJ041-0128.wav|tests/data/ljspeech/wavs/LJ041-0128.npy -tests/data/ljspeech/wavs/LJ046-0096.wav|tests/data/ljspeech/wavs/LJ046-0096.npy -tests/data/ljspeech/wavs/LJ018-0098.wav|tests/data/ljspeech/wavs/LJ018-0098.npy -tests/data/ljspeech/wavs/LJ019-0037.wav|tests/data/ljspeech/wavs/LJ019-0037.npy -tests/data/ljspeech/wavs/LJ002-0042.wav|tests/data/ljspeech/wavs/LJ002-0042.npy -tests/data/ljspeech/wavs/LJ039-0065.wav|tests/data/ljspeech/wavs/LJ039-0065.npy -tests/data/ljspeech/wavs/LJ032-0139.wav|tests/data/ljspeech/wavs/LJ032-0139.npy -tests/data/ljspeech/wavs/LJ049-0015.wav|tests/data/ljspeech/wavs/LJ049-0015.npy -tests/data/ljspeech/wavs/LJ030-0112.wav|tests/data/ljspeech/wavs/LJ030-0112.npy -tests/data/ljspeech/wavs/LJ025-0058.wav|tests/data/ljspeech/wavs/LJ025-0058.npy -tests/data/ljspeech/wavs/LJ025-0057.wav|tests/data/ljspeech/wavs/LJ025-0057.npy -tests/data/ljspeech/wavs/LJ036-0211.wav|tests/data/ljspeech/wavs/LJ036-0211.npy -tests/data/ljspeech/wavs/LJ044-0035.wav|tests/data/ljspeech/wavs/LJ044-0035.npy -tests/data/ljspeech/wavs/LJ004-0056.wav|tests/data/ljspeech/wavs/LJ004-0056.npy -tests/data/ljspeech/wavs/LJ044-0019.wav|tests/data/ljspeech/wavs/LJ044-0019.npy -tests/data/ljspeech/wavs/LJ042-0232.wav|tests/data/ljspeech/wavs/LJ042-0232.npy -tests/data/ljspeech/wavs/LJ021-0146.wav|tests/data/ljspeech/wavs/LJ021-0146.npy -tests/data/ljspeech/wavs/LJ021-0152.wav|tests/data/ljspeech/wavs/LJ021-0152.npy -tests/data/ljspeech/wavs/LJ003-0349.wav|tests/data/ljspeech/wavs/LJ003-0349.npy -tests/data/ljspeech/wavs/LJ018-0336.wav|tests/data/ljspeech/wavs/LJ018-0336.npy -tests/data/ljspeech/wavs/LJ031-0172.wav|tests/data/ljspeech/wavs/LJ031-0172.npy -tests/data/ljspeech/wavs/LJ047-0030.wav|tests/data/ljspeech/wavs/LJ047-0030.npy -tests/data/ljspeech/wavs/LJ027-0046.wav|tests/data/ljspeech/wavs/LJ027-0046.npy -tests/data/ljspeech/wavs/LJ016-0314.wav|tests/data/ljspeech/wavs/LJ016-0314.npy -tests/data/ljspeech/wavs/LJ003-0275.wav|tests/data/ljspeech/wavs/LJ003-0275.npy -tests/data/ljspeech/wavs/LJ004-0004.wav|tests/data/ljspeech/wavs/LJ004-0004.npy -tests/data/ljspeech/wavs/LJ006-0142.wav|tests/data/ljspeech/wavs/LJ006-0142.npy -tests/data/ljspeech/wavs/LJ044-0232.wav|tests/data/ljspeech/wavs/LJ044-0232.npy -tests/data/ljspeech/wavs/LJ021-0112.wav|tests/data/ljspeech/wavs/LJ021-0112.npy -tests/data/ljspeech/wavs/LJ018-0111.wav|tests/data/ljspeech/wavs/LJ018-0111.npy -tests/data/ljspeech/wavs/LJ003-0160.wav|tests/data/ljspeech/wavs/LJ003-0160.npy -tests/data/ljspeech/wavs/LJ046-0215.wav|tests/data/ljspeech/wavs/LJ046-0215.npy -tests/data/ljspeech/wavs/LJ029-0088.wav|tests/data/ljspeech/wavs/LJ029-0088.npy -tests/data/ljspeech/wavs/LJ006-0242.wav|tests/data/ljspeech/wavs/LJ006-0242.npy -tests/data/ljspeech/wavs/LJ034-0006.wav|tests/data/ljspeech/wavs/LJ034-0006.npy -tests/data/ljspeech/wavs/LJ020-0103.wav|tests/data/ljspeech/wavs/LJ020-0103.npy -tests/data/ljspeech/wavs/LJ006-0273.wav|tests/data/ljspeech/wavs/LJ006-0273.npy -tests/data/ljspeech/wavs/LJ023-0013.wav|tests/data/ljspeech/wavs/LJ023-0013.npy -tests/data/ljspeech/wavs/LJ006-0114.wav|tests/data/ljspeech/wavs/LJ006-0114.npy -tests/data/ljspeech/wavs/LJ023-0044.wav|tests/data/ljspeech/wavs/LJ023-0044.npy -tests/data/ljspeech/wavs/LJ029-0018.wav|tests/data/ljspeech/wavs/LJ029-0018.npy -tests/data/ljspeech/wavs/LJ031-0230.wav|tests/data/ljspeech/wavs/LJ031-0230.npy -tests/data/ljspeech/wavs/LJ037-0069.wav|tests/data/ljspeech/wavs/LJ037-0069.npy -tests/data/ljspeech/wavs/LJ007-0165.wav|tests/data/ljspeech/wavs/LJ007-0165.npy -tests/data/ljspeech/wavs/LJ036-0078.wav|tests/data/ljspeech/wavs/LJ036-0078.npy -tests/data/ljspeech/wavs/LJ041-0155.wav|tests/data/ljspeech/wavs/LJ041-0155.npy -tests/data/ljspeech/wavs/LJ005-0038.wav|tests/data/ljspeech/wavs/LJ005-0038.npy -tests/data/ljspeech/wavs/LJ035-0038.wav|tests/data/ljspeech/wavs/LJ035-0038.npy -tests/data/ljspeech/wavs/LJ005-0040.wav|tests/data/ljspeech/wavs/LJ005-0040.npy -tests/data/ljspeech/wavs/LJ007-0144.wav|tests/data/ljspeech/wavs/LJ007-0144.npy -tests/data/ljspeech/wavs/LJ027-0114.wav|tests/data/ljspeech/wavs/LJ027-0114.npy -tests/data/ljspeech/wavs/LJ027-0042.wav|tests/data/ljspeech/wavs/LJ027-0042.npy -tests/data/ljspeech/wavs/LJ031-0150.wav|tests/data/ljspeech/wavs/LJ031-0150.npy -tests/data/ljspeech/wavs/LJ017-0117.wav|tests/data/ljspeech/wavs/LJ017-0117.npy -tests/data/ljspeech/wavs/LJ027-0107.wav|tests/data/ljspeech/wavs/LJ027-0107.npy -tests/data/ljspeech/wavs/LJ007-0075.wav|tests/data/ljspeech/wavs/LJ007-0075.npy -tests/data/ljspeech/wavs/LJ008-0103.wav|tests/data/ljspeech/wavs/LJ008-0103.npy -tests/data/ljspeech/wavs/LJ008-0292.wav|tests/data/ljspeech/wavs/LJ008-0292.npy -tests/data/ljspeech/wavs/LJ008-0053.wav|tests/data/ljspeech/wavs/LJ008-0053.npy -tests/data/ljspeech/wavs/LJ038-0115.wav|tests/data/ljspeech/wavs/LJ038-0115.npy -tests/data/ljspeech/wavs/LJ008-0250.wav|tests/data/ljspeech/wavs/LJ008-0250.npy -tests/data/ljspeech/wavs/LJ003-0081.wav|tests/data/ljspeech/wavs/LJ003-0081.npy -tests/data/ljspeech/wavs/LJ016-0264.wav|tests/data/ljspeech/wavs/LJ016-0264.npy -tests/data/ljspeech/wavs/LJ034-0122.wav|tests/data/ljspeech/wavs/LJ034-0122.npy -tests/data/ljspeech/wavs/LJ005-0043.wav|tests/data/ljspeech/wavs/LJ005-0043.npy -tests/data/ljspeech/wavs/LJ023-0061.wav|tests/data/ljspeech/wavs/LJ023-0061.npy -tests/data/ljspeech/wavs/LJ006-0110.wav|tests/data/ljspeech/wavs/LJ006-0110.npy -tests/data/ljspeech/wavs/LJ034-0213.wav|tests/data/ljspeech/wavs/LJ034-0213.npy -tests/data/ljspeech/wavs/LJ006-0020.wav|tests/data/ljspeech/wavs/LJ006-0020.npy -tests/data/ljspeech/wavs/LJ022-0024.wav|tests/data/ljspeech/wavs/LJ022-0024.npy -tests/data/ljspeech/wavs/LJ008-0275.wav|tests/data/ljspeech/wavs/LJ008-0275.npy -tests/data/ljspeech/wavs/LJ032-0008.wav|tests/data/ljspeech/wavs/LJ032-0008.npy -tests/data/ljspeech/wavs/LJ032-0203.wav|tests/data/ljspeech/wavs/LJ032-0203.npy -tests/data/ljspeech/wavs/LJ015-0006.wav|tests/data/ljspeech/wavs/LJ015-0006.npy -tests/data/ljspeech/wavs/LJ015-0001.wav|tests/data/ljspeech/wavs/LJ015-0001.npy -tests/data/ljspeech/wavs/LJ005-0203.wav|tests/data/ljspeech/wavs/LJ005-0203.npy -tests/data/ljspeech/wavs/LJ048-0035.wav|tests/data/ljspeech/wavs/LJ048-0035.npy -tests/data/ljspeech/wavs/LJ005-0187.wav|tests/data/ljspeech/wavs/LJ005-0187.npy -tests/data/ljspeech/wavs/LJ044-0043.wav|tests/data/ljspeech/wavs/LJ044-0043.npy -tests/data/ljspeech/wavs/LJ016-0251.wav|tests/data/ljspeech/wavs/LJ016-0251.npy -tests/data/ljspeech/wavs/LJ015-0255.wav|tests/data/ljspeech/wavs/LJ015-0255.npy -tests/data/ljspeech/wavs/LJ047-0004.wav|tests/data/ljspeech/wavs/LJ047-0004.npy -tests/data/ljspeech/wavs/LJ037-0056.wav|tests/data/ljspeech/wavs/LJ037-0056.npy -tests/data/ljspeech/wavs/LJ049-0089.wav|tests/data/ljspeech/wavs/LJ049-0089.npy -tests/data/ljspeech/wavs/LJ023-0076.wav|tests/data/ljspeech/wavs/LJ023-0076.npy -tests/data/ljspeech/wavs/LJ014-0105.wav|tests/data/ljspeech/wavs/LJ014-0105.npy -tests/data/ljspeech/wavs/LJ017-0223.wav|tests/data/ljspeech/wavs/LJ017-0223.npy -tests/data/ljspeech/wavs/LJ016-0250.wav|tests/data/ljspeech/wavs/LJ016-0250.npy -tests/data/ljspeech/wavs/LJ024-0137.wav|tests/data/ljspeech/wavs/LJ024-0137.npy -tests/data/ljspeech/wavs/LJ017-0274.wav|tests/data/ljspeech/wavs/LJ017-0274.npy -tests/data/ljspeech/wavs/LJ015-0013.wav|tests/data/ljspeech/wavs/LJ015-0013.npy -tests/data/ljspeech/wavs/LJ036-0093.wav|tests/data/ljspeech/wavs/LJ036-0093.npy -tests/data/ljspeech/wavs/LJ036-0215.wav|tests/data/ljspeech/wavs/LJ036-0215.npy -tests/data/ljspeech/wavs/LJ017-0135.wav|tests/data/ljspeech/wavs/LJ017-0135.npy -tests/data/ljspeech/wavs/LJ016-0164.wav|tests/data/ljspeech/wavs/LJ016-0164.npy -tests/data/ljspeech/wavs/LJ048-0213.wav|tests/data/ljspeech/wavs/LJ048-0213.npy -tests/data/ljspeech/wavs/LJ036-0183.wav|tests/data/ljspeech/wavs/LJ036-0183.npy -tests/data/ljspeech/wavs/LJ045-0187.wav|tests/data/ljspeech/wavs/LJ045-0187.npy -tests/data/ljspeech/wavs/LJ007-0240.wav|tests/data/ljspeech/wavs/LJ007-0240.npy -tests/data/ljspeech/wavs/LJ015-0289.wav|tests/data/ljspeech/wavs/LJ015-0289.npy -tests/data/ljspeech/wavs/LJ005-0117.wav|tests/data/ljspeech/wavs/LJ005-0117.npy -tests/data/ljspeech/wavs/LJ016-0131.wav|tests/data/ljspeech/wavs/LJ016-0131.npy -tests/data/ljspeech/wavs/LJ017-0043.wav|tests/data/ljspeech/wavs/LJ017-0043.npy -tests/data/ljspeech/wavs/LJ037-0044.wav|tests/data/ljspeech/wavs/LJ037-0044.npy -tests/data/ljspeech/wavs/LJ044-0018.wav|tests/data/ljspeech/wavs/LJ044-0018.npy -tests/data/ljspeech/wavs/LJ030-0027.wav|tests/data/ljspeech/wavs/LJ030-0027.npy -tests/data/ljspeech/wavs/LJ031-0022.wav|tests/data/ljspeech/wavs/LJ031-0022.npy -tests/data/ljspeech/wavs/LJ001-0040.wav|tests/data/ljspeech/wavs/LJ001-0040.npy -tests/data/ljspeech/wavs/LJ045-0247.wav|tests/data/ljspeech/wavs/LJ045-0247.npy -tests/data/ljspeech/wavs/LJ045-0205.wav|tests/data/ljspeech/wavs/LJ045-0205.npy -tests/data/ljspeech/wavs/LJ007-0174.wav|tests/data/ljspeech/wavs/LJ007-0174.npy -tests/data/ljspeech/wavs/LJ043-0015.wav|tests/data/ljspeech/wavs/LJ043-0015.npy -tests/data/ljspeech/wavs/LJ030-0068.wav|tests/data/ljspeech/wavs/LJ030-0068.npy -tests/data/ljspeech/wavs/LJ001-0009.wav|tests/data/ljspeech/wavs/LJ001-0009.npy -tests/data/ljspeech/wavs/LJ001-0117.wav|tests/data/ljspeech/wavs/LJ001-0117.npy -tests/data/ljspeech/wavs/LJ014-0220.wav|tests/data/ljspeech/wavs/LJ014-0220.npy -tests/data/ljspeech/wavs/LJ006-0120.wav|tests/data/ljspeech/wavs/LJ006-0120.npy -tests/data/ljspeech/wavs/LJ004-0141.wav|tests/data/ljspeech/wavs/LJ004-0141.npy -tests/data/ljspeech/wavs/LJ031-0007.wav|tests/data/ljspeech/wavs/LJ031-0007.npy -tests/data/ljspeech/wavs/LJ003-0175.wav|tests/data/ljspeech/wavs/LJ003-0175.npy -tests/data/ljspeech/wavs/LJ044-0228.wav|tests/data/ljspeech/wavs/LJ044-0228.npy -tests/data/ljspeech/wavs/LJ030-0233.wav|tests/data/ljspeech/wavs/LJ030-0233.npy -tests/data/ljspeech/wavs/LJ042-0099.wav|tests/data/ljspeech/wavs/LJ042-0099.npy -tests/data/ljspeech/wavs/LJ045-0233.wav|tests/data/ljspeech/wavs/LJ045-0233.npy -tests/data/ljspeech/wavs/LJ010-0305.wav|tests/data/ljspeech/wavs/LJ010-0305.npy -tests/data/ljspeech/wavs/LJ050-0039.wav|tests/data/ljspeech/wavs/LJ050-0039.npy -tests/data/ljspeech/wavs/LJ003-0238.wav|tests/data/ljspeech/wavs/LJ003-0238.npy -tests/data/ljspeech/wavs/LJ007-0039.wav|tests/data/ljspeech/wavs/LJ007-0039.npy -tests/data/ljspeech/wavs/LJ005-0257.wav|tests/data/ljspeech/wavs/LJ005-0257.npy -tests/data/ljspeech/wavs/LJ006-0160.wav|tests/data/ljspeech/wavs/LJ006-0160.npy -tests/data/ljspeech/wavs/LJ007-0200.wav|tests/data/ljspeech/wavs/LJ007-0200.npy -tests/data/ljspeech/wavs/LJ003-0029.wav|tests/data/ljspeech/wavs/LJ003-0029.npy -tests/data/ljspeech/wavs/LJ003-0346.wav|tests/data/ljspeech/wavs/LJ003-0346.npy -tests/data/ljspeech/wavs/LJ007-0121.wav|tests/data/ljspeech/wavs/LJ007-0121.npy -tests/data/ljspeech/wavs/LJ004-0060.wav|tests/data/ljspeech/wavs/LJ004-0060.npy -tests/data/ljspeech/wavs/LJ031-0223.wav|tests/data/ljspeech/wavs/LJ031-0223.npy -tests/data/ljspeech/wavs/LJ009-0300.wav|tests/data/ljspeech/wavs/LJ009-0300.npy -tests/data/ljspeech/wavs/LJ012-0078.wav|tests/data/ljspeech/wavs/LJ012-0078.npy -tests/data/ljspeech/wavs/LJ028-0424.wav|tests/data/ljspeech/wavs/LJ028-0424.npy -tests/data/ljspeech/wavs/LJ041-0008.wav|tests/data/ljspeech/wavs/LJ041-0008.npy -tests/data/ljspeech/wavs/LJ028-0417.wav|tests/data/ljspeech/wavs/LJ028-0417.npy -tests/data/ljspeech/wavs/LJ010-0287.wav|tests/data/ljspeech/wavs/LJ010-0287.npy -tests/data/ljspeech/wavs/LJ040-0123.wav|tests/data/ljspeech/wavs/LJ040-0123.npy -tests/data/ljspeech/wavs/LJ028-0303.wav|tests/data/ljspeech/wavs/LJ028-0303.npy -tests/data/ljspeech/wavs/LJ009-0119.wav|tests/data/ljspeech/wavs/LJ009-0119.npy -tests/data/ljspeech/wavs/LJ042-0025.wav|tests/data/ljspeech/wavs/LJ042-0025.npy -tests/data/ljspeech/wavs/LJ042-0097.wav|tests/data/ljspeech/wavs/LJ042-0097.npy -tests/data/ljspeech/wavs/LJ028-0143.wav|tests/data/ljspeech/wavs/LJ028-0143.npy -tests/data/ljspeech/wavs/LJ028-0288.wav|tests/data/ljspeech/wavs/LJ028-0288.npy -tests/data/ljspeech/wavs/LJ010-0058.wav|tests/data/ljspeech/wavs/LJ010-0058.npy -tests/data/ljspeech/wavs/LJ009-0037.wav|tests/data/ljspeech/wavs/LJ009-0037.npy -tests/data/ljspeech/wavs/LJ038-0254.wav|tests/data/ljspeech/wavs/LJ038-0254.npy -tests/data/ljspeech/wavs/LJ028-0189.wav|tests/data/ljspeech/wavs/LJ028-0189.npy -tests/data/ljspeech/wavs/LJ028-0306.wav|tests/data/ljspeech/wavs/LJ028-0306.npy -tests/data/ljspeech/wavs/LJ028-0471.wav|tests/data/ljspeech/wavs/LJ028-0471.npy -tests/data/ljspeech/wavs/LJ013-0004.wav|tests/data/ljspeech/wavs/LJ013-0004.npy -tests/data/ljspeech/wavs/LJ008-0248.wav|tests/data/ljspeech/wavs/LJ008-0248.npy -tests/data/ljspeech/wavs/LJ010-0086.wav|tests/data/ljspeech/wavs/LJ010-0086.npy -tests/data/ljspeech/wavs/LJ040-0240.wav|tests/data/ljspeech/wavs/LJ040-0240.npy -tests/data/ljspeech/wavs/LJ011-0145.wav|tests/data/ljspeech/wavs/LJ011-0145.npy -tests/data/ljspeech/wavs/LJ013-0010.wav|tests/data/ljspeech/wavs/LJ013-0010.npy -tests/data/ljspeech/wavs/LJ028-0237.wav|tests/data/ljspeech/wavs/LJ028-0237.npy -tests/data/ljspeech/wavs/LJ013-0114.wav|tests/data/ljspeech/wavs/LJ013-0114.npy -tests/data/ljspeech/wavs/LJ009-0043.wav|tests/data/ljspeech/wavs/LJ009-0043.npy -tests/data/ljspeech/wavs/LJ041-0121.wav|tests/data/ljspeech/wavs/LJ041-0121.npy -tests/data/ljspeech/wavs/LJ009-0280.wav|tests/data/ljspeech/wavs/LJ009-0280.npy -tests/data/ljspeech/wavs/LJ013-0075.wav|tests/data/ljspeech/wavs/LJ013-0075.npy -tests/data/ljspeech/wavs/LJ028-0451.wav|tests/data/ljspeech/wavs/LJ028-0451.npy -tests/data/ljspeech/wavs/LJ025-0042.wav|tests/data/ljspeech/wavs/LJ025-0042.npy -tests/data/ljspeech/wavs/LJ021-0007.wav|tests/data/ljspeech/wavs/LJ021-0007.npy -tests/data/ljspeech/wavs/LJ024-0067.wav|tests/data/ljspeech/wavs/LJ024-0067.npy -tests/data/ljspeech/wavs/LJ026-0123.wav|tests/data/ljspeech/wavs/LJ026-0123.npy -tests/data/ljspeech/wavs/LJ024-0107.wav|tests/data/ljspeech/wavs/LJ024-0107.npy -tests/data/ljspeech/wavs/LJ023-0003.wav|tests/data/ljspeech/wavs/LJ023-0003.npy -tests/data/ljspeech/wavs/LJ036-0060.wav|tests/data/ljspeech/wavs/LJ036-0060.npy -tests/data/ljspeech/wavs/LJ019-0088.wav|tests/data/ljspeech/wavs/LJ019-0088.npy -tests/data/ljspeech/wavs/LJ025-0154.wav|tests/data/ljspeech/wavs/LJ025-0154.npy -tests/data/ljspeech/wavs/LJ035-0045.wav|tests/data/ljspeech/wavs/LJ035-0045.npy -tests/data/ljspeech/wavs/LJ024-0092.wav|tests/data/ljspeech/wavs/LJ024-0092.npy -tests/data/ljspeech/wavs/LJ023-0091.wav|tests/data/ljspeech/wavs/LJ023-0091.npy -tests/data/ljspeech/wavs/LJ022-0167.wav|tests/data/ljspeech/wavs/LJ022-0167.npy -tests/data/ljspeech/wavs/LJ022-0025.wav|tests/data/ljspeech/wavs/LJ022-0025.npy -tests/data/ljspeech/wavs/LJ018-0230.wav|tests/data/ljspeech/wavs/LJ018-0230.npy -tests/data/ljspeech/wavs/LJ033-0046.wav|tests/data/ljspeech/wavs/LJ033-0046.npy -tests/data/ljspeech/wavs/LJ022-0153.wav|tests/data/ljspeech/wavs/LJ022-0153.npy -tests/data/ljspeech/wavs/LJ018-0076.wav|tests/data/ljspeech/wavs/LJ018-0076.npy -tests/data/ljspeech/wavs/LJ019-0291.wav|tests/data/ljspeech/wavs/LJ019-0291.npy -tests/data/ljspeech/wavs/LJ022-0129.wav|tests/data/ljspeech/wavs/LJ022-0129.npy -tests/data/ljspeech/wavs/LJ033-0041.wav|tests/data/ljspeech/wavs/LJ033-0041.npy -tests/data/ljspeech/wavs/LJ021-0038.wav|tests/data/ljspeech/wavs/LJ021-0038.npy -tests/data/ljspeech/wavs/LJ019-0202.wav|tests/data/ljspeech/wavs/LJ019-0202.npy -tests/data/ljspeech/wavs/LJ009-0014.wav|tests/data/ljspeech/wavs/LJ009-0014.npy -tests/data/ljspeech/wavs/LJ018-0147.wav|tests/data/ljspeech/wavs/LJ018-0147.npy -tests/data/ljspeech/wavs/LJ019-0033.wav|tests/data/ljspeech/wavs/LJ019-0033.npy -tests/data/ljspeech/wavs/LJ018-0135.wav|tests/data/ljspeech/wavs/LJ018-0135.npy -tests/data/ljspeech/wavs/LJ025-0036.wav|tests/data/ljspeech/wavs/LJ025-0036.npy -tests/data/ljspeech/wavs/LJ012-0109.wav|tests/data/ljspeech/wavs/LJ012-0109.npy -tests/data/ljspeech/wavs/LJ035-0169.wav|tests/data/ljspeech/wavs/LJ035-0169.npy -tests/data/ljspeech/wavs/LJ033-0120.wav|tests/data/ljspeech/wavs/LJ033-0120.npy -tests/data/ljspeech/wavs/LJ019-0357.wav|tests/data/ljspeech/wavs/LJ019-0357.npy -tests/data/ljspeech/wavs/LJ046-0008.wav|tests/data/ljspeech/wavs/LJ046-0008.npy -tests/data/ljspeech/wavs/LJ048-0275.wav|tests/data/ljspeech/wavs/LJ048-0275.npy -tests/data/ljspeech/wavs/LJ026-0117.wav|tests/data/ljspeech/wavs/LJ026-0117.npy -tests/data/ljspeech/wavs/LJ019-0195.wav|tests/data/ljspeech/wavs/LJ019-0195.npy -tests/data/ljspeech/wavs/LJ034-0137.wav|tests/data/ljspeech/wavs/LJ034-0137.npy -tests/data/ljspeech/wavs/LJ039-0006.wav|tests/data/ljspeech/wavs/LJ039-0006.npy -tests/data/ljspeech/wavs/LJ043-0055.wav|tests/data/ljspeech/wavs/LJ043-0055.npy -tests/data/ljspeech/wavs/LJ040-0116.wav|tests/data/ljspeech/wavs/LJ040-0116.npy -tests/data/ljspeech/wavs/LJ015-0103.wav|tests/data/ljspeech/wavs/LJ015-0103.npy -tests/data/ljspeech/wavs/LJ009-0290.wav|tests/data/ljspeech/wavs/LJ009-0290.npy -tests/data/ljspeech/wavs/LJ018-0286.wav|tests/data/ljspeech/wavs/LJ018-0286.npy -tests/data/ljspeech/wavs/LJ004-0161.wav|tests/data/ljspeech/wavs/LJ004-0161.npy -tests/data/ljspeech/wavs/LJ028-0041.wav|tests/data/ljspeech/wavs/LJ028-0041.npy -tests/data/ljspeech/wavs/LJ008-0176.wav|tests/data/ljspeech/wavs/LJ008-0176.npy -tests/data/ljspeech/wavs/LJ026-0154.wav|tests/data/ljspeech/wavs/LJ026-0154.npy -tests/data/ljspeech/wavs/LJ015-0089.wav|tests/data/ljspeech/wavs/LJ015-0089.npy -tests/data/ljspeech/wavs/LJ039-0010.wav|tests/data/ljspeech/wavs/LJ039-0010.npy -tests/data/ljspeech/wavs/LJ013-0228.wav|tests/data/ljspeech/wavs/LJ013-0228.npy -tests/data/ljspeech/wavs/LJ008-0202.wav|tests/data/ljspeech/wavs/LJ008-0202.npy -tests/data/ljspeech/wavs/LJ019-0093.wav|tests/data/ljspeech/wavs/LJ019-0093.npy -tests/data/ljspeech/wavs/LJ030-0048.wav|tests/data/ljspeech/wavs/LJ030-0048.npy -tests/data/ljspeech/wavs/LJ031-0047.wav|tests/data/ljspeech/wavs/LJ031-0047.npy -tests/data/ljspeech/wavs/LJ009-0142.wav|tests/data/ljspeech/wavs/LJ009-0142.npy -tests/data/ljspeech/wavs/LJ006-0215.wav|tests/data/ljspeech/wavs/LJ006-0215.npy -tests/data/ljspeech/wavs/LJ016-0227.wav|tests/data/ljspeech/wavs/LJ016-0227.npy -tests/data/ljspeech/wavs/LJ002-0233.wav|tests/data/ljspeech/wavs/LJ002-0233.npy -tests/data/ljspeech/wavs/LJ008-0205.wav|tests/data/ljspeech/wavs/LJ008-0205.npy -tests/data/ljspeech/wavs/LJ008-0037.wav|tests/data/ljspeech/wavs/LJ008-0037.npy -tests/data/ljspeech/wavs/LJ004-0138.wav|tests/data/ljspeech/wavs/LJ004-0138.npy -tests/data/ljspeech/wavs/LJ013-0234.wav|tests/data/ljspeech/wavs/LJ013-0234.npy -tests/data/ljspeech/wavs/LJ013-0227.wav|tests/data/ljspeech/wavs/LJ013-0227.npy -tests/data/ljspeech/wavs/LJ033-0058.wav|tests/data/ljspeech/wavs/LJ033-0058.npy -tests/data/ljspeech/wavs/LJ003-0074.wav|tests/data/ljspeech/wavs/LJ003-0074.npy -tests/data/ljspeech/wavs/LJ028-0357.wav|tests/data/ljspeech/wavs/LJ028-0357.npy -tests/data/ljspeech/wavs/LJ043-0038.wav|tests/data/ljspeech/wavs/LJ043-0038.npy -tests/data/ljspeech/wavs/LJ033-0038.wav|tests/data/ljspeech/wavs/LJ033-0038.npy -tests/data/ljspeech/wavs/LJ026-0018.wav|tests/data/ljspeech/wavs/LJ026-0018.npy -tests/data/ljspeech/wavs/LJ003-0018.wav|tests/data/ljspeech/wavs/LJ003-0018.npy -tests/data/ljspeech/wavs/LJ030-0106.wav|tests/data/ljspeech/wavs/LJ030-0106.npy -tests/data/ljspeech/wavs/LJ043-0051.wav|tests/data/ljspeech/wavs/LJ043-0051.npy -tests/data/ljspeech/wavs/LJ028-0169.wav|tests/data/ljspeech/wavs/LJ028-0169.npy -tests/data/ljspeech/wavs/LJ047-0005.wav|tests/data/ljspeech/wavs/LJ047-0005.npy -tests/data/ljspeech/wavs/LJ008-0091.wav|tests/data/ljspeech/wavs/LJ008-0091.npy -tests/data/ljspeech/wavs/LJ014-0157.wav|tests/data/ljspeech/wavs/LJ014-0157.npy -tests/data/ljspeech/wavs/LJ007-0201.wav|tests/data/ljspeech/wavs/LJ007-0201.npy -tests/data/ljspeech/wavs/LJ038-0278.wav|tests/data/ljspeech/wavs/LJ038-0278.npy -tests/data/ljspeech/wavs/LJ015-0156.wav|tests/data/ljspeech/wavs/LJ015-0156.npy -tests/data/ljspeech/wavs/LJ024-0025.wav|tests/data/ljspeech/wavs/LJ024-0025.npy -tests/data/ljspeech/wavs/LJ015-0284.wav|tests/data/ljspeech/wavs/LJ015-0284.npy -tests/data/ljspeech/wavs/LJ045-0118.wav|tests/data/ljspeech/wavs/LJ045-0118.npy -tests/data/ljspeech/wavs/LJ048-0111.wav|tests/data/ljspeech/wavs/LJ048-0111.npy -tests/data/ljspeech/wavs/LJ016-0128.wav|tests/data/ljspeech/wavs/LJ016-0128.npy -tests/data/ljspeech/wavs/LJ008-0105.wav|tests/data/ljspeech/wavs/LJ008-0105.npy -tests/data/ljspeech/wavs/LJ028-0022.wav|tests/data/ljspeech/wavs/LJ028-0022.npy -tests/data/ljspeech/wavs/LJ018-0298.wav|tests/data/ljspeech/wavs/LJ018-0298.npy -tests/data/ljspeech/wavs/LJ035-0185.wav|tests/data/ljspeech/wavs/LJ035-0185.npy -tests/data/ljspeech/wavs/LJ014-0015.wav|tests/data/ljspeech/wavs/LJ014-0015.npy -tests/data/ljspeech/wavs/LJ023-0087.wav|tests/data/ljspeech/wavs/LJ023-0087.npy -tests/data/ljspeech/wavs/LJ036-0013.wav|tests/data/ljspeech/wavs/LJ036-0013.npy -tests/data/ljspeech/wavs/LJ016-0108.wav|tests/data/ljspeech/wavs/LJ016-0108.npy -tests/data/ljspeech/wavs/LJ006-0308.wav|tests/data/ljspeech/wavs/LJ006-0308.npy -tests/data/ljspeech/wavs/LJ015-0041.wav|tests/data/ljspeech/wavs/LJ015-0041.npy -tests/data/ljspeech/wavs/LJ004-0015.wav|tests/data/ljspeech/wavs/LJ004-0015.npy -tests/data/ljspeech/wavs/LJ045-0100.wav|tests/data/ljspeech/wavs/LJ045-0100.npy -tests/data/ljspeech/wavs/LJ042-0246.wav|tests/data/ljspeech/wavs/LJ042-0246.npy -tests/data/ljspeech/wavs/LJ039-0232.wav|tests/data/ljspeech/wavs/LJ039-0232.npy -tests/data/ljspeech/wavs/LJ047-0149.wav|tests/data/ljspeech/wavs/LJ047-0149.npy -tests/data/ljspeech/wavs/LJ038-0186.wav|tests/data/ljspeech/wavs/LJ038-0186.npy -tests/data/ljspeech/wavs/LJ011-0204.wav|tests/data/ljspeech/wavs/LJ011-0204.npy -tests/data/ljspeech/wavs/LJ017-0064.wav|tests/data/ljspeech/wavs/LJ017-0064.npy -tests/data/ljspeech/wavs/LJ016-0070.wav|tests/data/ljspeech/wavs/LJ016-0070.npy -tests/data/ljspeech/wavs/LJ010-0195.wav|tests/data/ljspeech/wavs/LJ010-0195.npy -tests/data/ljspeech/wavs/LJ019-0122.wav|tests/data/ljspeech/wavs/LJ019-0122.npy -tests/data/ljspeech/wavs/LJ005-0088.wav|tests/data/ljspeech/wavs/LJ005-0088.npy -tests/data/ljspeech/wavs/LJ003-0347.wav|tests/data/ljspeech/wavs/LJ003-0347.npy -tests/data/ljspeech/wavs/LJ001-0032.wav|tests/data/ljspeech/wavs/LJ001-0032.npy -tests/data/ljspeech/wavs/LJ035-0057.wav|tests/data/ljspeech/wavs/LJ035-0057.npy -tests/data/ljspeech/wavs/LJ030-0044.wav|tests/data/ljspeech/wavs/LJ030-0044.npy -tests/data/ljspeech/wavs/LJ038-0019.wav|tests/data/ljspeech/wavs/LJ038-0019.npy -tests/data/ljspeech/wavs/LJ003-0214.wav|tests/data/ljspeech/wavs/LJ003-0214.npy -tests/data/ljspeech/wavs/LJ029-0003.wav|tests/data/ljspeech/wavs/LJ029-0003.npy -tests/data/ljspeech/wavs/LJ004-0247.wav|tests/data/ljspeech/wavs/LJ004-0247.npy -tests/data/ljspeech/wavs/LJ041-0021.wav|tests/data/ljspeech/wavs/LJ041-0021.npy -tests/data/ljspeech/wavs/LJ027-0057.wav|tests/data/ljspeech/wavs/LJ027-0057.npy -tests/data/ljspeech/wavs/LJ005-0002.wav|tests/data/ljspeech/wavs/LJ005-0002.npy -tests/data/ljspeech/wavs/LJ045-0146.wav|tests/data/ljspeech/wavs/LJ045-0146.npy -tests/data/ljspeech/wavs/LJ050-0012.wav|tests/data/ljspeech/wavs/LJ050-0012.npy -tests/data/ljspeech/wavs/LJ031-0202.wav|tests/data/ljspeech/wavs/LJ031-0202.npy -tests/data/ljspeech/wavs/LJ019-0092.wav|tests/data/ljspeech/wavs/LJ019-0092.npy -tests/data/ljspeech/wavs/LJ035-0092.wav|tests/data/ljspeech/wavs/LJ035-0092.npy -tests/data/ljspeech/wavs/LJ005-0010.wav|tests/data/ljspeech/wavs/LJ005-0010.npy -tests/data/ljspeech/wavs/LJ039-0157.wav|tests/data/ljspeech/wavs/LJ039-0157.npy -tests/data/ljspeech/wavs/LJ010-0290.wav|tests/data/ljspeech/wavs/LJ010-0290.npy -tests/data/ljspeech/wavs/LJ025-0162.wav|tests/data/ljspeech/wavs/LJ025-0162.npy -tests/data/ljspeech/wavs/LJ002-0330.wav|tests/data/ljspeech/wavs/LJ002-0330.npy -tests/data/ljspeech/wavs/LJ011-0184.wav|tests/data/ljspeech/wavs/LJ011-0184.npy -tests/data/ljspeech/wavs/LJ039-0180.wav|tests/data/ljspeech/wavs/LJ039-0180.npy -tests/data/ljspeech/wavs/LJ001-0024.wav|tests/data/ljspeech/wavs/LJ001-0024.npy -tests/data/ljspeech/wavs/LJ031-0014.wav|tests/data/ljspeech/wavs/LJ031-0014.npy -tests/data/ljspeech/wavs/LJ039-0196.wav|tests/data/ljspeech/wavs/LJ039-0196.npy -tests/data/ljspeech/wavs/LJ028-0216.wav|tests/data/ljspeech/wavs/LJ028-0216.npy -tests/data/ljspeech/wavs/LJ025-0092.wav|tests/data/ljspeech/wavs/LJ025-0092.npy -tests/data/ljspeech/wavs/LJ026-0128.wav|tests/data/ljspeech/wavs/LJ026-0128.npy -tests/data/ljspeech/wavs/LJ029-0210.wav|tests/data/ljspeech/wavs/LJ029-0210.npy -tests/data/ljspeech/wavs/LJ033-0074.wav|tests/data/ljspeech/wavs/LJ033-0074.npy -tests/data/ljspeech/wavs/LJ028-0278.wav|tests/data/ljspeech/wavs/LJ028-0278.npy -tests/data/ljspeech/wavs/LJ012-0283.wav|tests/data/ljspeech/wavs/LJ012-0283.npy -tests/data/ljspeech/wavs/LJ009-0052.wav|tests/data/ljspeech/wavs/LJ009-0052.npy -tests/data/ljspeech/wavs/LJ050-0036.wav|tests/data/ljspeech/wavs/LJ050-0036.npy -tests/data/ljspeech/wavs/LJ041-0011.wav|tests/data/ljspeech/wavs/LJ041-0011.npy -tests/data/ljspeech/wavs/LJ017-0238.wav|tests/data/ljspeech/wavs/LJ017-0238.npy -tests/data/ljspeech/wavs/LJ016-0335.wav|tests/data/ljspeech/wavs/LJ016-0335.npy -tests/data/ljspeech/wavs/LJ011-0255.wav|tests/data/ljspeech/wavs/LJ011-0255.npy -tests/data/ljspeech/wavs/LJ022-0009.wav|tests/data/ljspeech/wavs/LJ022-0009.npy -tests/data/ljspeech/wavs/LJ012-0217.wav|tests/data/ljspeech/wavs/LJ012-0217.npy -tests/data/ljspeech/wavs/LJ012-0165.wav|tests/data/ljspeech/wavs/LJ012-0165.npy -tests/data/ljspeech/wavs/LJ028-0485.wav|tests/data/ljspeech/wavs/LJ028-0485.npy -tests/data/ljspeech/wavs/LJ033-0108.wav|tests/data/ljspeech/wavs/LJ033-0108.npy -tests/data/ljspeech/wavs/LJ005-0029.wav|tests/data/ljspeech/wavs/LJ005-0029.npy -tests/data/ljspeech/wavs/LJ024-0136.wav|tests/data/ljspeech/wavs/LJ024-0136.npy -tests/data/ljspeech/wavs/LJ011-0013.wav|tests/data/ljspeech/wavs/LJ011-0013.npy -tests/data/ljspeech/wavs/LJ050-0074.wav|tests/data/ljspeech/wavs/LJ050-0074.npy -tests/data/ljspeech/wavs/LJ002-0077.wav|tests/data/ljspeech/wavs/LJ002-0077.npy -tests/data/ljspeech/wavs/LJ017-0121.wav|tests/data/ljspeech/wavs/LJ017-0121.npy -tests/data/ljspeech/wavs/LJ019-0102.wav|tests/data/ljspeech/wavs/LJ019-0102.npy -tests/data/ljspeech/wavs/LJ035-0141.wav|tests/data/ljspeech/wavs/LJ035-0141.npy -tests/data/ljspeech/wavs/LJ020-0057.wav|tests/data/ljspeech/wavs/LJ020-0057.npy -tests/data/ljspeech/wavs/LJ028-0196.wav|tests/data/ljspeech/wavs/LJ028-0196.npy -tests/data/ljspeech/wavs/LJ039-0015.wav|tests/data/ljspeech/wavs/LJ039-0015.npy -tests/data/ljspeech/wavs/LJ018-0158.wav|tests/data/ljspeech/wavs/LJ018-0158.npy -tests/data/ljspeech/wavs/LJ045-0069.wav|tests/data/ljspeech/wavs/LJ045-0069.npy -tests/data/ljspeech/wavs/LJ038-0106.wav|tests/data/ljspeech/wavs/LJ038-0106.npy -tests/data/ljspeech/wavs/LJ034-0012.wav|tests/data/ljspeech/wavs/LJ034-0012.npy -tests/data/ljspeech/wavs/LJ026-0084.wav|tests/data/ljspeech/wavs/LJ026-0084.npy -tests/data/ljspeech/wavs/LJ038-0104.wav|tests/data/ljspeech/wavs/LJ038-0104.npy -tests/data/ljspeech/wavs/LJ021-0148.wav|tests/data/ljspeech/wavs/LJ021-0148.npy -tests/data/ljspeech/wavs/LJ039-0123.wav|tests/data/ljspeech/wavs/LJ039-0123.npy -tests/data/ljspeech/wavs/LJ010-0272.wav|tests/data/ljspeech/wavs/LJ010-0272.npy -tests/data/ljspeech/wavs/LJ040-0019.wav|tests/data/ljspeech/wavs/LJ040-0019.npy -tests/data/ljspeech/wavs/LJ008-0082.wav|tests/data/ljspeech/wavs/LJ008-0082.npy -tests/data/ljspeech/wavs/LJ016-0415.wav|tests/data/ljspeech/wavs/LJ016-0415.npy -tests/data/ljspeech/wavs/LJ047-0100.wav|tests/data/ljspeech/wavs/LJ047-0100.npy -tests/data/ljspeech/wavs/LJ040-0041.wav|tests/data/ljspeech/wavs/LJ040-0041.npy -tests/data/ljspeech/wavs/LJ038-0062.wav|tests/data/ljspeech/wavs/LJ038-0062.npy -tests/data/ljspeech/wavs/LJ020-0026.wav|tests/data/ljspeech/wavs/LJ020-0026.npy -tests/data/ljspeech/wavs/LJ049-0208.wav|tests/data/ljspeech/wavs/LJ049-0208.npy -tests/data/ljspeech/wavs/LJ003-0285.wav|tests/data/ljspeech/wavs/LJ003-0285.npy -tests/data/ljspeech/wavs/LJ019-0369.wav|tests/data/ljspeech/wavs/LJ019-0369.npy -tests/data/ljspeech/wavs/LJ005-0236.wav|tests/data/ljspeech/wavs/LJ005-0236.npy -tests/data/ljspeech/wavs/LJ014-0210.wav|tests/data/ljspeech/wavs/LJ014-0210.npy -tests/data/ljspeech/wavs/LJ044-0056.wav|tests/data/ljspeech/wavs/LJ044-0056.npy -tests/data/ljspeech/wavs/LJ034-0058.wav|tests/data/ljspeech/wavs/LJ034-0058.npy -tests/data/ljspeech/wavs/LJ011-0114.wav|tests/data/ljspeech/wavs/LJ011-0114.npy -tests/data/ljspeech/wavs/LJ019-0185.wav|tests/data/ljspeech/wavs/LJ019-0185.npy -tests/data/ljspeech/wavs/LJ011-0193.wav|tests/data/ljspeech/wavs/LJ011-0193.npy -tests/data/ljspeech/wavs/LJ039-0240.wav|tests/data/ljspeech/wavs/LJ039-0240.npy -tests/data/ljspeech/wavs/LJ038-0029.wav|tests/data/ljspeech/wavs/LJ038-0029.npy -tests/data/ljspeech/wavs/LJ038-0091.wav|tests/data/ljspeech/wavs/LJ038-0091.npy -tests/data/ljspeech/wavs/LJ043-0094.wav|tests/data/ljspeech/wavs/LJ043-0094.npy -tests/data/ljspeech/wavs/LJ011-0085.wav|tests/data/ljspeech/wavs/LJ011-0085.npy -tests/data/ljspeech/wavs/LJ039-0185.wav|tests/data/ljspeech/wavs/LJ039-0185.npy -tests/data/ljspeech/wavs/LJ022-0081.wav|tests/data/ljspeech/wavs/LJ022-0081.npy -tests/data/ljspeech/wavs/LJ030-0010.wav|tests/data/ljspeech/wavs/LJ030-0010.npy -tests/data/ljspeech/wavs/LJ039-0023.wav|tests/data/ljspeech/wavs/LJ039-0023.npy -tests/data/ljspeech/wavs/LJ032-0124.wav|tests/data/ljspeech/wavs/LJ032-0124.npy -tests/data/ljspeech/wavs/LJ013-0261.wav|tests/data/ljspeech/wavs/LJ013-0261.npy -tests/data/ljspeech/wavs/LJ004-0073.wav|tests/data/ljspeech/wavs/LJ004-0073.npy -tests/data/ljspeech/wavs/LJ028-0323.wav|tests/data/ljspeech/wavs/LJ028-0323.npy -tests/data/ljspeech/wavs/LJ028-0153.wav|tests/data/ljspeech/wavs/LJ028-0153.npy -tests/data/ljspeech/wavs/LJ028-0473.wav|tests/data/ljspeech/wavs/LJ028-0473.npy -tests/data/ljspeech/wavs/LJ050-0171.wav|tests/data/ljspeech/wavs/LJ050-0171.npy -tests/data/ljspeech/wavs/LJ039-0131.wav|tests/data/ljspeech/wavs/LJ039-0131.npy -tests/data/ljspeech/wavs/LJ012-0031.wav|tests/data/ljspeech/wavs/LJ012-0031.npy -tests/data/ljspeech/wavs/LJ004-0216.wav|tests/data/ljspeech/wavs/LJ004-0216.npy -tests/data/ljspeech/wavs/LJ049-0013.wav|tests/data/ljspeech/wavs/LJ049-0013.npy -tests/data/ljspeech/wavs/LJ018-0367.wav|tests/data/ljspeech/wavs/LJ018-0367.npy -tests/data/ljspeech/wavs/LJ022-0055.wav|tests/data/ljspeech/wavs/LJ022-0055.npy -tests/data/ljspeech/wavs/LJ004-0135.wav|tests/data/ljspeech/wavs/LJ004-0135.npy -tests/data/ljspeech/wavs/LJ004-0074.wav|tests/data/ljspeech/wavs/LJ004-0074.npy -tests/data/ljspeech/wavs/LJ042-0200.wav|tests/data/ljspeech/wavs/LJ042-0200.npy -tests/data/ljspeech/wavs/LJ005-0170.wav|tests/data/ljspeech/wavs/LJ005-0170.npy -tests/data/ljspeech/wavs/LJ019-0046.wav|tests/data/ljspeech/wavs/LJ019-0046.npy -tests/data/ljspeech/wavs/LJ012-0158.wav|tests/data/ljspeech/wavs/LJ012-0158.npy -tests/data/ljspeech/wavs/LJ028-0334.wav|tests/data/ljspeech/wavs/LJ028-0334.npy -tests/data/ljspeech/wavs/LJ019-0089.wav|tests/data/ljspeech/wavs/LJ019-0089.npy -tests/data/ljspeech/wavs/LJ014-0204.wav|tests/data/ljspeech/wavs/LJ014-0204.npy -tests/data/ljspeech/wavs/LJ013-0104.wav|tests/data/ljspeech/wavs/LJ013-0104.npy -tests/data/ljspeech/wavs/LJ005-0157.wav|tests/data/ljspeech/wavs/LJ005-0157.npy -tests/data/ljspeech/wavs/LJ038-0239.wav|tests/data/ljspeech/wavs/LJ038-0239.npy -tests/data/ljspeech/wavs/LJ050-0172.wav|tests/data/ljspeech/wavs/LJ050-0172.npy -tests/data/ljspeech/wavs/LJ025-0153.wav|tests/data/ljspeech/wavs/LJ025-0153.npy -tests/data/ljspeech/wavs/LJ028-0491.wav|tests/data/ljspeech/wavs/LJ028-0491.npy -tests/data/ljspeech/wavs/LJ039-0160.wav|tests/data/ljspeech/wavs/LJ039-0160.npy -tests/data/ljspeech/wavs/LJ002-0016.wav|tests/data/ljspeech/wavs/LJ002-0016.npy -tests/data/ljspeech/wavs/LJ035-0179.wav|tests/data/ljspeech/wavs/LJ035-0179.npy -tests/data/ljspeech/wavs/LJ029-0160.wav|tests/data/ljspeech/wavs/LJ029-0160.npy -tests/data/ljspeech/wavs/LJ001-0186.wav|tests/data/ljspeech/wavs/LJ001-0186.npy -tests/data/ljspeech/wavs/LJ005-0018.wav|tests/data/ljspeech/wavs/LJ005-0018.npy -tests/data/ljspeech/wavs/LJ036-0051.wav|tests/data/ljspeech/wavs/LJ036-0051.npy -tests/data/ljspeech/wavs/LJ042-0156.wav|tests/data/ljspeech/wavs/LJ042-0156.npy -tests/data/ljspeech/wavs/LJ029-0030.wav|tests/data/ljspeech/wavs/LJ029-0030.npy -tests/data/ljspeech/wavs/LJ010-0028.wav|tests/data/ljspeech/wavs/LJ010-0028.npy -tests/data/ljspeech/wavs/LJ048-0120.wav|tests/data/ljspeech/wavs/LJ048-0120.npy -tests/data/ljspeech/wavs/LJ047-0249.wav|tests/data/ljspeech/wavs/LJ047-0249.npy -tests/data/ljspeech/wavs/LJ007-0087.wav|tests/data/ljspeech/wavs/LJ007-0087.npy -tests/data/ljspeech/wavs/LJ014-0054.wav|tests/data/ljspeech/wavs/LJ014-0054.npy -tests/data/ljspeech/wavs/LJ046-0201.wav|tests/data/ljspeech/wavs/LJ046-0201.npy -tests/data/ljspeech/wavs/LJ012-0103.wav|tests/data/ljspeech/wavs/LJ012-0103.npy -tests/data/ljspeech/wavs/LJ044-0057.wav|tests/data/ljspeech/wavs/LJ044-0057.npy -tests/data/ljspeech/wavs/LJ010-0049.wav|tests/data/ljspeech/wavs/LJ010-0049.npy -tests/data/ljspeech/wavs/LJ010-0048.wav|tests/data/ljspeech/wavs/LJ010-0048.npy -tests/data/ljspeech/wavs/LJ035-0077.wav|tests/data/ljspeech/wavs/LJ035-0077.npy -tests/data/ljspeech/wavs/LJ036-0062.wav|tests/data/ljspeech/wavs/LJ036-0062.npy -tests/data/ljspeech/wavs/LJ002-0297.wav|tests/data/ljspeech/wavs/LJ002-0297.npy -tests/data/ljspeech/wavs/LJ001-0176.wav|tests/data/ljspeech/wavs/LJ001-0176.npy -tests/data/ljspeech/wavs/LJ008-0119.wav|tests/data/ljspeech/wavs/LJ008-0119.npy -tests/data/ljspeech/wavs/LJ006-0072.wav|tests/data/ljspeech/wavs/LJ006-0072.npy -tests/data/ljspeech/wavs/LJ033-0143.wav|tests/data/ljspeech/wavs/LJ033-0143.npy -tests/data/ljspeech/wavs/LJ014-0075.wav|tests/data/ljspeech/wavs/LJ014-0075.npy -tests/data/ljspeech/wavs/LJ018-0243.wav|tests/data/ljspeech/wavs/LJ018-0243.npy -tests/data/ljspeech/wavs/LJ035-0210.wav|tests/data/ljspeech/wavs/LJ035-0210.npy -tests/data/ljspeech/wavs/LJ049-0087.wav|tests/data/ljspeech/wavs/LJ049-0087.npy -tests/data/ljspeech/wavs/LJ045-0219.wav|tests/data/ljspeech/wavs/LJ045-0219.npy -tests/data/ljspeech/wavs/LJ003-0006.wav|tests/data/ljspeech/wavs/LJ003-0006.npy -tests/data/ljspeech/wavs/LJ034-0004.wav|tests/data/ljspeech/wavs/LJ034-0004.npy -tests/data/ljspeech/wavs/LJ034-0181.wav|tests/data/ljspeech/wavs/LJ034-0181.npy -tests/data/ljspeech/wavs/LJ033-0009.wav|tests/data/ljspeech/wavs/LJ033-0009.npy -tests/data/ljspeech/wavs/LJ042-0131.wav|tests/data/ljspeech/wavs/LJ042-0131.npy -tests/data/ljspeech/wavs/LJ042-0130.wav|tests/data/ljspeech/wavs/LJ042-0130.npy -tests/data/ljspeech/wavs/LJ016-0185.wav|tests/data/ljspeech/wavs/LJ016-0185.npy -tests/data/ljspeech/wavs/LJ034-0152.wav|tests/data/ljspeech/wavs/LJ034-0152.npy -tests/data/ljspeech/wavs/LJ047-0167.wav|tests/data/ljspeech/wavs/LJ047-0167.npy -tests/data/ljspeech/wavs/LJ025-0111.wav|tests/data/ljspeech/wavs/LJ025-0111.npy -tests/data/ljspeech/wavs/LJ009-0120.wav|tests/data/ljspeech/wavs/LJ009-0120.npy -tests/data/ljspeech/wavs/LJ037-0072.wav|tests/data/ljspeech/wavs/LJ037-0072.npy -tests/data/ljspeech/wavs/LJ009-0276.wav|tests/data/ljspeech/wavs/LJ009-0276.npy -tests/data/ljspeech/wavs/LJ002-0269.wav|tests/data/ljspeech/wavs/LJ002-0269.npy -tests/data/ljspeech/wavs/LJ009-0266.wav|tests/data/ljspeech/wavs/LJ009-0266.npy -tests/data/ljspeech/wavs/LJ043-0153.wav|tests/data/ljspeech/wavs/LJ043-0153.npy -tests/data/ljspeech/wavs/LJ016-0411.wav|tests/data/ljspeech/wavs/LJ016-0411.npy -tests/data/ljspeech/wavs/LJ018-0229.wav|tests/data/ljspeech/wavs/LJ018-0229.npy -tests/data/ljspeech/wavs/LJ016-0171.wav|tests/data/ljspeech/wavs/LJ016-0171.npy -tests/data/ljspeech/wavs/LJ029-0035.wav|tests/data/ljspeech/wavs/LJ029-0035.npy -tests/data/ljspeech/wavs/LJ016-0054.wav|tests/data/ljspeech/wavs/LJ016-0054.npy -tests/data/ljspeech/wavs/LJ025-0003.wav|tests/data/ljspeech/wavs/LJ025-0003.npy -tests/data/ljspeech/wavs/LJ024-0046.wav|tests/data/ljspeech/wavs/LJ024-0046.npy -tests/data/ljspeech/wavs/LJ020-0084.wav|tests/data/ljspeech/wavs/LJ020-0084.npy -tests/data/ljspeech/wavs/LJ034-0211.wav|tests/data/ljspeech/wavs/LJ034-0211.npy -tests/data/ljspeech/wavs/LJ046-0049.wav|tests/data/ljspeech/wavs/LJ046-0049.npy -tests/data/ljspeech/wavs/LJ036-0143.wav|tests/data/ljspeech/wavs/LJ036-0143.npy -tests/data/ljspeech/wavs/LJ003-0027.wav|tests/data/ljspeech/wavs/LJ003-0027.npy -tests/data/ljspeech/wavs/LJ018-0161.wav|tests/data/ljspeech/wavs/LJ018-0161.npy -tests/data/ljspeech/wavs/LJ017-0010.wav|tests/data/ljspeech/wavs/LJ017-0010.npy -tests/data/ljspeech/wavs/LJ016-0430.wav|tests/data/ljspeech/wavs/LJ016-0430.npy -tests/data/ljspeech/wavs/LJ002-0134.wav|tests/data/ljspeech/wavs/LJ002-0134.npy -tests/data/ljspeech/wavs/LJ018-0194.wav|tests/data/ljspeech/wavs/LJ018-0194.npy -tests/data/ljspeech/wavs/LJ045-0197.wav|tests/data/ljspeech/wavs/LJ045-0197.npy -tests/data/ljspeech/wavs/LJ009-0172.wav|tests/data/ljspeech/wavs/LJ009-0172.npy -tests/data/ljspeech/wavs/LJ018-0170.wav|tests/data/ljspeech/wavs/LJ018-0170.npy -tests/data/ljspeech/wavs/LJ018-0085.wav|tests/data/ljspeech/wavs/LJ018-0085.npy -tests/data/ljspeech/wavs/LJ035-0019.wav|tests/data/ljspeech/wavs/LJ035-0019.npy -tests/data/ljspeech/wavs/LJ024-0115.wav|tests/data/ljspeech/wavs/LJ024-0115.npy -tests/data/ljspeech/wavs/LJ012-0277.wav|tests/data/ljspeech/wavs/LJ012-0277.npy -tests/data/ljspeech/wavs/LJ042-0205.wav|tests/data/ljspeech/wavs/LJ042-0205.npy -tests/data/ljspeech/wavs/LJ035-0128.wav|tests/data/ljspeech/wavs/LJ035-0128.npy -tests/data/ljspeech/wavs/LJ026-0099.wav|tests/data/ljspeech/wavs/LJ026-0099.npy -tests/data/ljspeech/wavs/LJ018-0041.wav|tests/data/ljspeech/wavs/LJ018-0041.npy -tests/data/ljspeech/wavs/LJ008-0245.wav|tests/data/ljspeech/wavs/LJ008-0245.npy -tests/data/ljspeech/wavs/LJ003-0130.wav|tests/data/ljspeech/wavs/LJ003-0130.npy -tests/data/ljspeech/wavs/LJ015-0171.wav|tests/data/ljspeech/wavs/LJ015-0171.npy -tests/data/ljspeech/wavs/LJ020-0047.wav|tests/data/ljspeech/wavs/LJ020-0047.npy -tests/data/ljspeech/wavs/LJ018-0078.wav|tests/data/ljspeech/wavs/LJ018-0078.npy -tests/data/ljspeech/wavs/LJ018-0266.wav|tests/data/ljspeech/wavs/LJ018-0266.npy -tests/data/ljspeech/wavs/LJ032-0165.wav|tests/data/ljspeech/wavs/LJ032-0165.npy -tests/data/ljspeech/wavs/LJ015-0272.wav|tests/data/ljspeech/wavs/LJ015-0272.npy -tests/data/ljspeech/wavs/LJ004-0238.wav|tests/data/ljspeech/wavs/LJ004-0238.npy -tests/data/ljspeech/wavs/LJ032-0004.wav|tests/data/ljspeech/wavs/LJ032-0004.npy -tests/data/ljspeech/wavs/LJ018-0038.wav|tests/data/ljspeech/wavs/LJ018-0038.npy -tests/data/ljspeech/wavs/LJ015-0160.wav|tests/data/ljspeech/wavs/LJ015-0160.npy -tests/data/ljspeech/wavs/LJ036-0091.wav|tests/data/ljspeech/wavs/LJ036-0091.npy -tests/data/ljspeech/wavs/LJ010-0093.wav|tests/data/ljspeech/wavs/LJ010-0093.npy -tests/data/ljspeech/wavs/LJ017-0221.wav|tests/data/ljspeech/wavs/LJ017-0221.npy -tests/data/ljspeech/wavs/LJ031-0217.wav|tests/data/ljspeech/wavs/LJ031-0217.npy -tests/data/ljspeech/wavs/LJ003-0150.wav|tests/data/ljspeech/wavs/LJ003-0150.npy -tests/data/ljspeech/wavs/LJ029-0068.wav|tests/data/ljspeech/wavs/LJ029-0068.npy -tests/data/ljspeech/wavs/LJ049-0094.wav|tests/data/ljspeech/wavs/LJ049-0094.npy -tests/data/ljspeech/wavs/LJ016-0282.wav|tests/data/ljspeech/wavs/LJ016-0282.npy -tests/data/ljspeech/wavs/LJ001-0075.wav|tests/data/ljspeech/wavs/LJ001-0075.npy -tests/data/ljspeech/wavs/LJ046-0058.wav|tests/data/ljspeech/wavs/LJ046-0058.npy -tests/data/ljspeech/wavs/LJ044-0080.wav|tests/data/ljspeech/wavs/LJ044-0080.npy -tests/data/ljspeech/wavs/LJ039-0021.wav|tests/data/ljspeech/wavs/LJ039-0021.npy -tests/data/ljspeech/wavs/LJ012-0065.wav|tests/data/ljspeech/wavs/LJ012-0065.npy -tests/data/ljspeech/wavs/LJ016-0443.wav|tests/data/ljspeech/wavs/LJ016-0443.npy -tests/data/ljspeech/wavs/LJ006-0118.wav|tests/data/ljspeech/wavs/LJ006-0118.npy -tests/data/ljspeech/wavs/LJ016-0316.wav|tests/data/ljspeech/wavs/LJ016-0316.npy -tests/data/ljspeech/wavs/LJ029-0144.wav|tests/data/ljspeech/wavs/LJ029-0144.npy -tests/data/ljspeech/wavs/LJ039-0218.wav|tests/data/ljspeech/wavs/LJ039-0218.npy -tests/data/ljspeech/wavs/LJ019-0097.wav|tests/data/ljspeech/wavs/LJ019-0097.npy -tests/data/ljspeech/wavs/LJ046-0248.wav|tests/data/ljspeech/wavs/LJ046-0248.npy -tests/data/ljspeech/wavs/LJ050-0194.wav|tests/data/ljspeech/wavs/LJ050-0194.npy -tests/data/ljspeech/wavs/LJ017-0059.wav|tests/data/ljspeech/wavs/LJ017-0059.npy -tests/data/ljspeech/wavs/LJ017-0166.wav|tests/data/ljspeech/wavs/LJ017-0166.npy -tests/data/ljspeech/wavs/LJ017-0270.wav|tests/data/ljspeech/wavs/LJ017-0270.npy -tests/data/ljspeech/wavs/LJ034-0053.wav|tests/data/ljspeech/wavs/LJ034-0053.npy -tests/data/ljspeech/wavs/LJ031-0161.wav|tests/data/ljspeech/wavs/LJ031-0161.npy -tests/data/ljspeech/wavs/LJ001-0168.wav|tests/data/ljspeech/wavs/LJ001-0168.npy -tests/data/ljspeech/wavs/LJ007-0166.wav|tests/data/ljspeech/wavs/LJ007-0166.npy -tests/data/ljspeech/wavs/LJ048-0214.wav|tests/data/ljspeech/wavs/LJ048-0214.npy -tests/data/ljspeech/wavs/LJ020-0052.wav|tests/data/ljspeech/wavs/LJ020-0052.npy -tests/data/ljspeech/wavs/LJ005-0095.wav|tests/data/ljspeech/wavs/LJ005-0095.npy -tests/data/ljspeech/wavs/LJ022-0007.wav|tests/data/ljspeech/wavs/LJ022-0007.npy -tests/data/ljspeech/wavs/LJ024-0049.wav|tests/data/ljspeech/wavs/LJ024-0049.npy -tests/data/ljspeech/wavs/LJ001-0121.wav|tests/data/ljspeech/wavs/LJ001-0121.npy -tests/data/ljspeech/wavs/LJ012-0044.wav|tests/data/ljspeech/wavs/LJ012-0044.npy -tests/data/ljspeech/wavs/LJ025-0158.wav|tests/data/ljspeech/wavs/LJ025-0158.npy -tests/data/ljspeech/wavs/LJ035-0146.wav|tests/data/ljspeech/wavs/LJ035-0146.npy -tests/data/ljspeech/wavs/LJ001-0065.wav|tests/data/ljspeech/wavs/LJ001-0065.npy -tests/data/ljspeech/wavs/LJ017-0075.wav|tests/data/ljspeech/wavs/LJ017-0075.npy -tests/data/ljspeech/wavs/LJ009-0023.wav|tests/data/ljspeech/wavs/LJ009-0023.npy -tests/data/ljspeech/wavs/LJ009-0195.wav|tests/data/ljspeech/wavs/LJ009-0195.npy -tests/data/ljspeech/wavs/LJ012-0043.wav|tests/data/ljspeech/wavs/LJ012-0043.npy -tests/data/ljspeech/wavs/LJ018-0143.wav|tests/data/ljspeech/wavs/LJ018-0143.npy -tests/data/ljspeech/wavs/LJ043-0022.wav|tests/data/ljspeech/wavs/LJ043-0022.npy -tests/data/ljspeech/wavs/LJ016-0008.wav|tests/data/ljspeech/wavs/LJ016-0008.npy -tests/data/ljspeech/wavs/LJ018-0141.wav|tests/data/ljspeech/wavs/LJ018-0141.npy -tests/data/ljspeech/wavs/LJ008-0010.wav|tests/data/ljspeech/wavs/LJ008-0010.npy -tests/data/ljspeech/wavs/LJ001-0049.wav|tests/data/ljspeech/wavs/LJ001-0049.npy -tests/data/ljspeech/wavs/LJ050-0260.wav|tests/data/ljspeech/wavs/LJ050-0260.npy -tests/data/ljspeech/wavs/LJ049-0054.wav|tests/data/ljspeech/wavs/LJ049-0054.npy -tests/data/ljspeech/wavs/LJ046-0169.wav|tests/data/ljspeech/wavs/LJ046-0169.npy -tests/data/ljspeech/wavs/LJ018-0179.wav|tests/data/ljspeech/wavs/LJ018-0179.npy -tests/data/ljspeech/wavs/LJ011-0224.wav|tests/data/ljspeech/wavs/LJ011-0224.npy -tests/data/ljspeech/wavs/LJ014-0252.wav|tests/data/ljspeech/wavs/LJ014-0252.npy -tests/data/ljspeech/wavs/LJ019-0052.wav|tests/data/ljspeech/wavs/LJ019-0052.npy -tests/data/ljspeech/wavs/LJ028-0287.wav|tests/data/ljspeech/wavs/LJ028-0287.npy -tests/data/ljspeech/wavs/LJ017-0231.wav|tests/data/ljspeech/wavs/LJ017-0231.npy -tests/data/ljspeech/wavs/LJ003-0051.wav|tests/data/ljspeech/wavs/LJ003-0051.npy -tests/data/ljspeech/wavs/LJ036-0158.wav|tests/data/ljspeech/wavs/LJ036-0158.npy -tests/data/ljspeech/wavs/LJ006-0180.wav|tests/data/ljspeech/wavs/LJ006-0180.npy -tests/data/ljspeech/wavs/LJ019-0287.wav|tests/data/ljspeech/wavs/LJ019-0287.npy -tests/data/ljspeech/wavs/LJ024-0105.wav|tests/data/ljspeech/wavs/LJ024-0105.npy -tests/data/ljspeech/wavs/LJ009-0157.wav|tests/data/ljspeech/wavs/LJ009-0157.npy -tests/data/ljspeech/wavs/LJ028-0409.wav|tests/data/ljspeech/wavs/LJ028-0409.npy -tests/data/ljspeech/wavs/LJ035-0132.wav|tests/data/ljspeech/wavs/LJ035-0132.npy -tests/data/ljspeech/wavs/LJ028-0435.wav|tests/data/ljspeech/wavs/LJ028-0435.npy -tests/data/ljspeech/wavs/LJ011-0032.wav|tests/data/ljspeech/wavs/LJ011-0032.npy -tests/data/ljspeech/wavs/LJ047-0215.wav|tests/data/ljspeech/wavs/LJ047-0215.npy -tests/data/ljspeech/wavs/LJ016-0016.wav|tests/data/ljspeech/wavs/LJ016-0016.npy -tests/data/ljspeech/wavs/LJ019-0060.wav|tests/data/ljspeech/wavs/LJ019-0060.npy -tests/data/ljspeech/wavs/LJ028-0293.wav|tests/data/ljspeech/wavs/LJ028-0293.npy -tests/data/ljspeech/wavs/LJ023-0105.wav|tests/data/ljspeech/wavs/LJ023-0105.npy -tests/data/ljspeech/wavs/LJ028-0513.wav|tests/data/ljspeech/wavs/LJ028-0513.npy -tests/data/ljspeech/wavs/LJ023-0072.wav|tests/data/ljspeech/wavs/LJ023-0072.npy -tests/data/ljspeech/wavs/LJ026-0003.wav|tests/data/ljspeech/wavs/LJ026-0003.npy -tests/data/ljspeech/wavs/LJ040-0189.wav|tests/data/ljspeech/wavs/LJ040-0189.npy -tests/data/ljspeech/wavs/LJ008-0101.wav|tests/data/ljspeech/wavs/LJ008-0101.npy -tests/data/ljspeech/wavs/LJ015-0147.wav|tests/data/ljspeech/wavs/LJ015-0147.npy -tests/data/ljspeech/wavs/LJ008-0032.wav|tests/data/ljspeech/wavs/LJ008-0032.npy -tests/data/ljspeech/wavs/LJ015-0033.wav|tests/data/ljspeech/wavs/LJ015-0033.npy -tests/data/ljspeech/wavs/LJ023-0117.wav|tests/data/ljspeech/wavs/LJ023-0117.npy -tests/data/ljspeech/wavs/LJ046-0210.wav|tests/data/ljspeech/wavs/LJ046-0210.npy -tests/data/ljspeech/wavs/LJ006-0136.wav|tests/data/ljspeech/wavs/LJ006-0136.npy -tests/data/ljspeech/wavs/LJ044-0167.wav|tests/data/ljspeech/wavs/LJ044-0167.npy -tests/data/ljspeech/wavs/LJ027-0154.wav|tests/data/ljspeech/wavs/LJ027-0154.npy -tests/data/ljspeech/wavs/LJ015-0025.wav|tests/data/ljspeech/wavs/LJ015-0025.npy -tests/data/ljspeech/wavs/LJ038-0052.wav|tests/data/ljspeech/wavs/LJ038-0052.npy -tests/data/ljspeech/wavs/LJ003-0199.wav|tests/data/ljspeech/wavs/LJ003-0199.npy -tests/data/ljspeech/wavs/LJ008-0027.wav|tests/data/ljspeech/wavs/LJ008-0027.npy -tests/data/ljspeech/wavs/LJ045-0222.wav|tests/data/ljspeech/wavs/LJ045-0222.npy -tests/data/ljspeech/wavs/LJ006-0255.wav|tests/data/ljspeech/wavs/LJ006-0255.npy -tests/data/ljspeech/wavs/LJ037-0217.wav|tests/data/ljspeech/wavs/LJ037-0217.npy -tests/data/ljspeech/wavs/LJ014-0076.wav|tests/data/ljspeech/wavs/LJ014-0076.npy -tests/data/ljspeech/wavs/LJ009-0125.wav|tests/data/ljspeech/wavs/LJ009-0125.npy -tests/data/ljspeech/wavs/LJ015-0187.wav|tests/data/ljspeech/wavs/LJ015-0187.npy -tests/data/ljspeech/wavs/LJ006-0239.wav|tests/data/ljspeech/wavs/LJ006-0239.npy -tests/data/ljspeech/wavs/LJ028-0068.wav|tests/data/ljspeech/wavs/LJ028-0068.npy -tests/data/ljspeech/wavs/LJ010-0180.wav|tests/data/ljspeech/wavs/LJ010-0180.npy -tests/data/ljspeech/wavs/LJ006-0003.wav|tests/data/ljspeech/wavs/LJ006-0003.npy -tests/data/ljspeech/wavs/LJ049-0109.wav|tests/data/ljspeech/wavs/LJ049-0109.npy -tests/data/ljspeech/wavs/LJ006-0283.wav|tests/data/ljspeech/wavs/LJ006-0283.npy -tests/data/ljspeech/wavs/LJ015-0237.wav|tests/data/ljspeech/wavs/LJ015-0237.npy -tests/data/ljspeech/wavs/LJ010-0100.wav|tests/data/ljspeech/wavs/LJ010-0100.npy -tests/data/ljspeech/wavs/LJ032-0180.wav|tests/data/ljspeech/wavs/LJ032-0180.npy -tests/data/ljspeech/wavs/LJ002-0320.wav|tests/data/ljspeech/wavs/LJ002-0320.npy -tests/data/ljspeech/wavs/LJ044-0171.wav|tests/data/ljspeech/wavs/LJ044-0171.npy -tests/data/ljspeech/wavs/LJ031-0154.wav|tests/data/ljspeech/wavs/LJ031-0154.npy -tests/data/ljspeech/wavs/LJ006-0008.wav|tests/data/ljspeech/wavs/LJ006-0008.npy -tests/data/ljspeech/wavs/LJ044-0207.wav|tests/data/ljspeech/wavs/LJ044-0207.npy -tests/data/ljspeech/wavs/LJ031-0180.wav|tests/data/ljspeech/wavs/LJ031-0180.npy -tests/data/ljspeech/wavs/LJ019-0003.wav|tests/data/ljspeech/wavs/LJ019-0003.npy -tests/data/ljspeech/wavs/LJ048-0176.wav|tests/data/ljspeech/wavs/LJ048-0176.npy -tests/data/ljspeech/wavs/LJ020-0020.wav|tests/data/ljspeech/wavs/LJ020-0020.npy -tests/data/ljspeech/wavs/LJ020-0011.wav|tests/data/ljspeech/wavs/LJ020-0011.npy -tests/data/ljspeech/wavs/LJ042-0129.wav|tests/data/ljspeech/wavs/LJ042-0129.npy -tests/data/ljspeech/wavs/LJ033-0022.wav|tests/data/ljspeech/wavs/LJ033-0022.npy -tests/data/ljspeech/wavs/LJ037-0058.wav|tests/data/ljspeech/wavs/LJ037-0058.npy -tests/data/ljspeech/wavs/LJ026-0064.wav|tests/data/ljspeech/wavs/LJ026-0064.npy -tests/data/ljspeech/wavs/LJ040-0238.wav|tests/data/ljspeech/wavs/LJ040-0238.npy -tests/data/ljspeech/wavs/LJ037-0073.wav|tests/data/ljspeech/wavs/LJ037-0073.npy -tests/data/ljspeech/wavs/LJ002-0154.wav|tests/data/ljspeech/wavs/LJ002-0154.npy -tests/data/ljspeech/wavs/LJ003-0171.wav|tests/data/ljspeech/wavs/LJ003-0171.npy -tests/data/ljspeech/wavs/LJ026-0112.wav|tests/data/ljspeech/wavs/LJ026-0112.npy -tests/data/ljspeech/wavs/LJ004-0140.wav|tests/data/ljspeech/wavs/LJ004-0140.npy -tests/data/ljspeech/wavs/LJ046-0226.wav|tests/data/ljspeech/wavs/LJ046-0226.npy -tests/data/ljspeech/wavs/LJ002-0219.wav|tests/data/ljspeech/wavs/LJ002-0219.npy -tests/data/ljspeech/wavs/LJ005-0194.wav|tests/data/ljspeech/wavs/LJ005-0194.npy -tests/data/ljspeech/wavs/LJ027-0105.wav|tests/data/ljspeech/wavs/LJ027-0105.npy -tests/data/ljspeech/wavs/LJ014-0329.wav|tests/data/ljspeech/wavs/LJ014-0329.npy -tests/data/ljspeech/wavs/LJ035-0110.wav|tests/data/ljspeech/wavs/LJ035-0110.npy -tests/data/ljspeech/wavs/LJ016-0258.wav|tests/data/ljspeech/wavs/LJ016-0258.npy -tests/data/ljspeech/wavs/LJ018-0060.wav|tests/data/ljspeech/wavs/LJ018-0060.npy -tests/data/ljspeech/wavs/LJ013-0107.wav|tests/data/ljspeech/wavs/LJ013-0107.npy -tests/data/ljspeech/wavs/LJ032-0211.wav|tests/data/ljspeech/wavs/LJ032-0211.npy -tests/data/ljspeech/wavs/LJ036-0009.wav|tests/data/ljspeech/wavs/LJ036-0009.npy -tests/data/ljspeech/wavs/LJ030-0054.wav|tests/data/ljspeech/wavs/LJ030-0054.npy -tests/data/ljspeech/wavs/LJ028-0159.wav|tests/data/ljspeech/wavs/LJ028-0159.npy -tests/data/ljspeech/wavs/LJ010-0313.wav|tests/data/ljspeech/wavs/LJ010-0313.npy -tests/data/ljspeech/wavs/LJ047-0063.wav|tests/data/ljspeech/wavs/LJ047-0063.npy -tests/data/ljspeech/wavs/LJ019-0281.wav|tests/data/ljspeech/wavs/LJ019-0281.npy -tests/data/ljspeech/wavs/LJ029-0171.wav|tests/data/ljspeech/wavs/LJ029-0171.npy -tests/data/ljspeech/wavs/LJ047-0233.wav|tests/data/ljspeech/wavs/LJ047-0233.npy -tests/data/ljspeech/wavs/LJ022-0158.wav|tests/data/ljspeech/wavs/LJ022-0158.npy -tests/data/ljspeech/wavs/LJ043-0127.wav|tests/data/ljspeech/wavs/LJ043-0127.npy -tests/data/ljspeech/wavs/LJ040-0046.wav|tests/data/ljspeech/wavs/LJ040-0046.npy -tests/data/ljspeech/wavs/LJ045-0244.wav|tests/data/ljspeech/wavs/LJ045-0244.npy -tests/data/ljspeech/wavs/LJ040-0137.wav|tests/data/ljspeech/wavs/LJ040-0137.npy -tests/data/ljspeech/wavs/LJ040-0218.wav|tests/data/ljspeech/wavs/LJ040-0218.npy -tests/data/ljspeech/wavs/LJ021-0205.wav|tests/data/ljspeech/wavs/LJ021-0205.npy -tests/data/ljspeech/wavs/LJ010-0102.wav|tests/data/ljspeech/wavs/LJ010-0102.npy -tests/data/ljspeech/wavs/LJ019-0313.wav|tests/data/ljspeech/wavs/LJ019-0313.npy -tests/data/ljspeech/wavs/LJ050-0129.wav|tests/data/ljspeech/wavs/LJ050-0129.npy -tests/data/ljspeech/wavs/LJ028-0140.wav|tests/data/ljspeech/wavs/LJ028-0140.npy -tests/data/ljspeech/wavs/LJ029-0146.wav|tests/data/ljspeech/wavs/LJ029-0146.npy -tests/data/ljspeech/wavs/LJ022-0141.wav|tests/data/ljspeech/wavs/LJ022-0141.npy -tests/data/ljspeech/wavs/LJ005-0163.wav|tests/data/ljspeech/wavs/LJ005-0163.npy -tests/data/ljspeech/wavs/LJ010-0197.wav|tests/data/ljspeech/wavs/LJ010-0197.npy -tests/data/ljspeech/wavs/LJ021-0125.wav|tests/data/ljspeech/wavs/LJ021-0125.npy -tests/data/ljspeech/wavs/LJ006-0218.wav|tests/data/ljspeech/wavs/LJ006-0218.npy -tests/data/ljspeech/wavs/LJ013-0252.wav|tests/data/ljspeech/wavs/LJ013-0252.npy -tests/data/ljspeech/wavs/LJ006-0052.wav|tests/data/ljspeech/wavs/LJ006-0052.npy -tests/data/ljspeech/wavs/LJ043-0181.wav|tests/data/ljspeech/wavs/LJ043-0181.npy -tests/data/ljspeech/wavs/LJ005-0180.wav|tests/data/ljspeech/wavs/LJ005-0180.npy -tests/data/ljspeech/wavs/LJ009-0163.wav|tests/data/ljspeech/wavs/LJ009-0163.npy -tests/data/ljspeech/wavs/LJ050-0020.wav|tests/data/ljspeech/wavs/LJ050-0020.npy -tests/data/ljspeech/wavs/LJ028-0150.wav|tests/data/ljspeech/wavs/LJ028-0150.npy -tests/data/ljspeech/wavs/LJ002-0145.wav|tests/data/ljspeech/wavs/LJ002-0145.npy -tests/data/ljspeech/wavs/LJ028-0421.wav|tests/data/ljspeech/wavs/LJ028-0421.npy -tests/data/ljspeech/wavs/LJ009-0277.wav|tests/data/ljspeech/wavs/LJ009-0277.npy -tests/data/ljspeech/wavs/LJ018-0236.wav|tests/data/ljspeech/wavs/LJ018-0236.npy -tests/data/ljspeech/wavs/LJ011-0019.wav|tests/data/ljspeech/wavs/LJ011-0019.npy -tests/data/ljspeech/wavs/LJ029-0195.wav|tests/data/ljspeech/wavs/LJ029-0195.npy -tests/data/ljspeech/wavs/LJ040-0192.wav|tests/data/ljspeech/wavs/LJ040-0192.npy -tests/data/ljspeech/wavs/LJ047-0014.wav|tests/data/ljspeech/wavs/LJ047-0014.npy -tests/data/ljspeech/wavs/LJ042-0054.wav|tests/data/ljspeech/wavs/LJ042-0054.npy -tests/data/ljspeech/wavs/LJ023-0138.wav|tests/data/ljspeech/wavs/LJ023-0138.npy -tests/data/ljspeech/wavs/LJ043-0160.wav|tests/data/ljspeech/wavs/LJ043-0160.npy -tests/data/ljspeech/wavs/LJ046-0048.wav|tests/data/ljspeech/wavs/LJ046-0048.npy -tests/data/ljspeech/wavs/LJ002-0265.wav|tests/data/ljspeech/wavs/LJ002-0265.npy -tests/data/ljspeech/wavs/LJ045-0208.wav|tests/data/ljspeech/wavs/LJ045-0208.npy -tests/data/ljspeech/wavs/LJ024-0009.wav|tests/data/ljspeech/wavs/LJ024-0009.npy -tests/data/ljspeech/wavs/LJ021-0150.wav|tests/data/ljspeech/wavs/LJ021-0150.npy -tests/data/ljspeech/wavs/LJ011-0117.wav|tests/data/ljspeech/wavs/LJ011-0117.npy -tests/data/ljspeech/wavs/LJ006-0124.wav|tests/data/ljspeech/wavs/LJ006-0124.npy -tests/data/ljspeech/wavs/LJ033-0194.wav|tests/data/ljspeech/wavs/LJ033-0194.npy -tests/data/ljspeech/wavs/LJ010-0022.wav|tests/data/ljspeech/wavs/LJ010-0022.npy -tests/data/ljspeech/wavs/LJ009-0093.wav|tests/data/ljspeech/wavs/LJ009-0093.npy -tests/data/ljspeech/wavs/LJ028-0379.wav|tests/data/ljspeech/wavs/LJ028-0379.npy -tests/data/ljspeech/wavs/LJ005-0270.wav|tests/data/ljspeech/wavs/LJ005-0270.npy -tests/data/ljspeech/wavs/LJ016-0084.wav|tests/data/ljspeech/wavs/LJ016-0084.npy -tests/data/ljspeech/wavs/LJ007-0211.wav|tests/data/ljspeech/wavs/LJ007-0211.npy -tests/data/ljspeech/wavs/LJ024-0014.wav|tests/data/ljspeech/wavs/LJ024-0014.npy -tests/data/ljspeech/wavs/LJ005-0238.wav|tests/data/ljspeech/wavs/LJ005-0238.npy -tests/data/ljspeech/wavs/LJ037-0128.wav|tests/data/ljspeech/wavs/LJ037-0128.npy -tests/data/ljspeech/wavs/LJ007-0023.wav|tests/data/ljspeech/wavs/LJ007-0023.npy -tests/data/ljspeech/wavs/LJ035-0120.wav|tests/data/ljspeech/wavs/LJ035-0120.npy -tests/data/ljspeech/wavs/LJ010-0308.wav|tests/data/ljspeech/wavs/LJ010-0308.npy -tests/data/ljspeech/wavs/LJ047-0207.wav|tests/data/ljspeech/wavs/LJ047-0207.npy -tests/data/ljspeech/wavs/LJ009-0094.wav|tests/data/ljspeech/wavs/LJ009-0094.npy -tests/data/ljspeech/wavs/LJ010-0189.wav|tests/data/ljspeech/wavs/LJ010-0189.npy -tests/data/ljspeech/wavs/LJ002-0326.wav|tests/data/ljspeech/wavs/LJ002-0326.npy -tests/data/ljspeech/wavs/LJ046-0187.wav|tests/data/ljspeech/wavs/LJ046-0187.npy -tests/data/ljspeech/wavs/LJ018-0087.wav|tests/data/ljspeech/wavs/LJ018-0087.npy -tests/data/ljspeech/wavs/LJ008-0016.wav|tests/data/ljspeech/wavs/LJ008-0016.npy -tests/data/ljspeech/wavs/LJ047-0031.wav|tests/data/ljspeech/wavs/LJ047-0031.npy -tests/data/ljspeech/wavs/LJ042-0159.wav|tests/data/ljspeech/wavs/LJ042-0159.npy -tests/data/ljspeech/wavs/LJ025-0011.wav|tests/data/ljspeech/wavs/LJ025-0011.npy -tests/data/ljspeech/wavs/LJ026-0139.wav|tests/data/ljspeech/wavs/LJ026-0139.npy -tests/data/ljspeech/wavs/LJ050-0070.wav|tests/data/ljspeech/wavs/LJ050-0070.npy -tests/data/ljspeech/wavs/LJ049-0042.wav|tests/data/ljspeech/wavs/LJ049-0042.npy -tests/data/ljspeech/wavs/LJ032-0072.wav|tests/data/ljspeech/wavs/LJ032-0072.npy -tests/data/ljspeech/wavs/LJ018-0118.wav|tests/data/ljspeech/wavs/LJ018-0118.npy -tests/data/ljspeech/wavs/LJ042-0187.wav|tests/data/ljspeech/wavs/LJ042-0187.npy -tests/data/ljspeech/wavs/LJ028-0057.wav|tests/data/ljspeech/wavs/LJ028-0057.npy -tests/data/ljspeech/wavs/LJ042-0181.wav|tests/data/ljspeech/wavs/LJ042-0181.npy -tests/data/ljspeech/wavs/LJ034-0184.wav|tests/data/ljspeech/wavs/LJ034-0184.npy -tests/data/ljspeech/wavs/LJ008-0043.wav|tests/data/ljspeech/wavs/LJ008-0043.npy -tests/data/ljspeech/wavs/LJ017-0176.wav|tests/data/ljspeech/wavs/LJ017-0176.npy -tests/data/ljspeech/wavs/LJ015-0121.wav|tests/data/ljspeech/wavs/LJ015-0121.npy -tests/data/ljspeech/wavs/LJ001-0012.wav|tests/data/ljspeech/wavs/LJ001-0012.npy -tests/data/ljspeech/wavs/LJ030-0209.wav|tests/data/ljspeech/wavs/LJ030-0209.npy -tests/data/ljspeech/wavs/LJ007-0143.wav|tests/data/ljspeech/wavs/LJ007-0143.npy -tests/data/ljspeech/wavs/LJ033-0103.wav|tests/data/ljspeech/wavs/LJ033-0103.npy -tests/data/ljspeech/wavs/LJ048-0239.wav|tests/data/ljspeech/wavs/LJ048-0239.npy -tests/data/ljspeech/wavs/LJ028-0036.wav|tests/data/ljspeech/wavs/LJ028-0036.npy -tests/data/ljspeech/wavs/LJ049-0034.wav|tests/data/ljspeech/wavs/LJ049-0034.npy -tests/data/ljspeech/wavs/LJ024-0041.wav|tests/data/ljspeech/wavs/LJ024-0041.npy -tests/data/ljspeech/wavs/LJ018-0035.wav|tests/data/ljspeech/wavs/LJ018-0035.npy -tests/data/ljspeech/wavs/LJ017-0026.wav|tests/data/ljspeech/wavs/LJ017-0026.npy -tests/data/ljspeech/wavs/LJ016-0266.wav|tests/data/ljspeech/wavs/LJ016-0266.npy -tests/data/ljspeech/wavs/LJ015-0244.wav|tests/data/ljspeech/wavs/LJ015-0244.npy -tests/data/ljspeech/wavs/LJ037-0225.wav|tests/data/ljspeech/wavs/LJ037-0225.npy -tests/data/ljspeech/wavs/LJ003-0099.wav|tests/data/ljspeech/wavs/LJ003-0099.npy -tests/data/ljspeech/wavs/LJ009-0173.wav|tests/data/ljspeech/wavs/LJ009-0173.npy -tests/data/ljspeech/wavs/LJ036-0201.wav|tests/data/ljspeech/wavs/LJ036-0201.npy -tests/data/ljspeech/wavs/LJ014-0001.wav|tests/data/ljspeech/wavs/LJ014-0001.npy -tests/data/ljspeech/wavs/LJ013-0001.wav|tests/data/ljspeech/wavs/LJ013-0001.npy -tests/data/ljspeech/wavs/LJ037-0242.wav|tests/data/ljspeech/wavs/LJ037-0242.npy -tests/data/ljspeech/wavs/LJ044-0185.wav|tests/data/ljspeech/wavs/LJ044-0185.npy -tests/data/ljspeech/wavs/LJ039-0112.wav|tests/data/ljspeech/wavs/LJ039-0112.npy -tests/data/ljspeech/wavs/LJ008-0149.wav|tests/data/ljspeech/wavs/LJ008-0149.npy -tests/data/ljspeech/wavs/LJ042-0045.wav|tests/data/ljspeech/wavs/LJ042-0045.npy -tests/data/ljspeech/wavs/LJ019-0333.wav|tests/data/ljspeech/wavs/LJ019-0333.npy -tests/data/ljspeech/wavs/LJ026-0093.wav|tests/data/ljspeech/wavs/LJ026-0093.npy -tests/data/ljspeech/wavs/LJ031-0011.wav|tests/data/ljspeech/wavs/LJ031-0011.npy -tests/data/ljspeech/wavs/LJ019-0007.wav|tests/data/ljspeech/wavs/LJ019-0007.npy -tests/data/ljspeech/wavs/LJ044-0090.wav|tests/data/ljspeech/wavs/LJ044-0090.npy -tests/data/ljspeech/wavs/LJ006-0270.wav|tests/data/ljspeech/wavs/LJ006-0270.npy -tests/data/ljspeech/wavs/LJ039-0114.wav|tests/data/ljspeech/wavs/LJ039-0114.npy -tests/data/ljspeech/wavs/LJ012-0262.wav|tests/data/ljspeech/wavs/LJ012-0262.npy -tests/data/ljspeech/wavs/LJ012-0061.wav|tests/data/ljspeech/wavs/LJ012-0061.npy -tests/data/ljspeech/wavs/LJ008-0267.wav|tests/data/ljspeech/wavs/LJ008-0267.npy -tests/data/ljspeech/wavs/LJ016-0382.wav|tests/data/ljspeech/wavs/LJ016-0382.npy -tests/data/ljspeech/wavs/LJ019-0367.wav|tests/data/ljspeech/wavs/LJ019-0367.npy -tests/data/ljspeech/wavs/LJ012-0004.wav|tests/data/ljspeech/wavs/LJ012-0004.npy -tests/data/ljspeech/wavs/LJ005-0064.wav|tests/data/ljspeech/wavs/LJ005-0064.npy -tests/data/ljspeech/wavs/LJ012-0180.wav|tests/data/ljspeech/wavs/LJ012-0180.npy -tests/data/ljspeech/wavs/LJ037-0017.wav|tests/data/ljspeech/wavs/LJ037-0017.npy -tests/data/ljspeech/wavs/LJ011-0198.wav|tests/data/ljspeech/wavs/LJ011-0198.npy -tests/data/ljspeech/wavs/LJ027-0086.wav|tests/data/ljspeech/wavs/LJ027-0086.npy -tests/data/ljspeech/wavs/LJ035-0155.wav|tests/data/ljspeech/wavs/LJ035-0155.npy -tests/data/ljspeech/wavs/LJ012-0102.wav|tests/data/ljspeech/wavs/LJ012-0102.npy -tests/data/ljspeech/wavs/LJ006-0155.wav|tests/data/ljspeech/wavs/LJ006-0155.npy -tests/data/ljspeech/wavs/LJ046-0095.wav|tests/data/ljspeech/wavs/LJ046-0095.npy -tests/data/ljspeech/wavs/LJ049-0138.wav|tests/data/ljspeech/wavs/LJ049-0138.npy -tests/data/ljspeech/wavs/LJ034-0210.wav|tests/data/ljspeech/wavs/LJ034-0210.npy -tests/data/ljspeech/wavs/LJ042-0089.wav|tests/data/ljspeech/wavs/LJ042-0089.npy -tests/data/ljspeech/wavs/LJ007-0092.wav|tests/data/ljspeech/wavs/LJ007-0092.npy -tests/data/ljspeech/wavs/LJ047-0134.wav|tests/data/ljspeech/wavs/LJ047-0134.npy -tests/data/ljspeech/wavs/LJ041-0105.wav|tests/data/ljspeech/wavs/LJ041-0105.npy -tests/data/ljspeech/wavs/LJ008-0106.wav|tests/data/ljspeech/wavs/LJ008-0106.npy -tests/data/ljspeech/wavs/LJ022-0172.wav|tests/data/ljspeech/wavs/LJ022-0172.npy -tests/data/ljspeech/wavs/LJ014-0150.wav|tests/data/ljspeech/wavs/LJ014-0150.npy -tests/data/ljspeech/wavs/LJ022-0188.wav|tests/data/ljspeech/wavs/LJ022-0188.npy -tests/data/ljspeech/wavs/LJ008-0083.wav|tests/data/ljspeech/wavs/LJ008-0083.npy -tests/data/ljspeech/wavs/LJ048-0144.wav|tests/data/ljspeech/wavs/LJ048-0144.npy -tests/data/ljspeech/wavs/LJ045-0040.wav|tests/data/ljspeech/wavs/LJ045-0040.npy -tests/data/ljspeech/wavs/LJ006-0289.wav|tests/data/ljspeech/wavs/LJ006-0289.npy -tests/data/ljspeech/wavs/LJ030-0087.wav|tests/data/ljspeech/wavs/LJ030-0087.npy -tests/data/ljspeech/wavs/LJ033-0089.wav|tests/data/ljspeech/wavs/LJ033-0089.npy -tests/data/ljspeech/wavs/LJ006-0258.wav|tests/data/ljspeech/wavs/LJ006-0258.npy -tests/data/ljspeech/wavs/LJ050-0091.wav|tests/data/ljspeech/wavs/LJ050-0091.npy -tests/data/ljspeech/wavs/LJ043-0099.wav|tests/data/ljspeech/wavs/LJ043-0099.npy -tests/data/ljspeech/wavs/LJ038-0171.wav|tests/data/ljspeech/wavs/LJ038-0171.npy -tests/data/ljspeech/wavs/LJ028-0289.wav|tests/data/ljspeech/wavs/LJ028-0289.npy -tests/data/ljspeech/wavs/LJ008-0300.wav|tests/data/ljspeech/wavs/LJ008-0300.npy -tests/data/ljspeech/wavs/LJ019-0399.wav|tests/data/ljspeech/wavs/LJ019-0399.npy -tests/data/ljspeech/wavs/LJ034-0166.wav|tests/data/ljspeech/wavs/LJ034-0166.npy -tests/data/ljspeech/wavs/LJ026-0040.wav|tests/data/ljspeech/wavs/LJ026-0040.npy -tests/data/ljspeech/wavs/LJ028-0111.wav|tests/data/ljspeech/wavs/LJ028-0111.npy -tests/data/ljspeech/wavs/LJ014-0268.wav|tests/data/ljspeech/wavs/LJ014-0268.npy -tests/data/ljspeech/wavs/LJ003-0260.wav|tests/data/ljspeech/wavs/LJ003-0260.npy -tests/data/ljspeech/wavs/LJ032-0133.wav|tests/data/ljspeech/wavs/LJ032-0133.npy -tests/data/ljspeech/wavs/LJ009-0063.wav|tests/data/ljspeech/wavs/LJ009-0063.npy -tests/data/ljspeech/wavs/LJ047-0212.wav|tests/data/ljspeech/wavs/LJ047-0212.npy -tests/data/ljspeech/wavs/LJ011-0180.wav|tests/data/ljspeech/wavs/LJ011-0180.npy -tests/data/ljspeech/wavs/LJ011-0142.wav|tests/data/ljspeech/wavs/LJ011-0142.npy -tests/data/ljspeech/wavs/LJ037-0205.wav|tests/data/ljspeech/wavs/LJ037-0205.npy -tests/data/ljspeech/wavs/LJ037-0201.wav|tests/data/ljspeech/wavs/LJ037-0201.npy -tests/data/ljspeech/wavs/LJ049-0113.wav|tests/data/ljspeech/wavs/LJ049-0113.npy -tests/data/ljspeech/wavs/LJ050-0055.wav|tests/data/ljspeech/wavs/LJ050-0055.npy -tests/data/ljspeech/wavs/LJ038-0139.wav|tests/data/ljspeech/wavs/LJ038-0139.npy -tests/data/ljspeech/wavs/LJ050-0028.wav|tests/data/ljspeech/wavs/LJ050-0028.npy -tests/data/ljspeech/wavs/LJ015-0241.wav|tests/data/ljspeech/wavs/LJ015-0241.npy -tests/data/ljspeech/wavs/LJ048-0208.wav|tests/data/ljspeech/wavs/LJ048-0208.npy -tests/data/ljspeech/wavs/LJ015-0059.wav|tests/data/ljspeech/wavs/LJ015-0059.npy -tests/data/ljspeech/wavs/LJ018-0356.wav|tests/data/ljspeech/wavs/LJ018-0356.npy -tests/data/ljspeech/wavs/LJ015-0112.wav|tests/data/ljspeech/wavs/LJ015-0112.npy -tests/data/ljspeech/wavs/LJ035-0202.wav|tests/data/ljspeech/wavs/LJ035-0202.npy -tests/data/ljspeech/wavs/LJ030-0108.wav|tests/data/ljspeech/wavs/LJ030-0108.npy -tests/data/ljspeech/wavs/LJ008-0240.wav|tests/data/ljspeech/wavs/LJ008-0240.npy -tests/data/ljspeech/wavs/LJ015-0118.wav|tests/data/ljspeech/wavs/LJ015-0118.npy -tests/data/ljspeech/wavs/LJ003-0105.wav|tests/data/ljspeech/wavs/LJ003-0105.npy -tests/data/ljspeech/wavs/LJ033-0098.wav|tests/data/ljspeech/wavs/LJ033-0098.npy -tests/data/ljspeech/wavs/LJ014-0328.wav|tests/data/ljspeech/wavs/LJ014-0328.npy -tests/data/ljspeech/wavs/LJ045-0051.wav|tests/data/ljspeech/wavs/LJ045-0051.npy -tests/data/ljspeech/wavs/LJ006-0190.wav|tests/data/ljspeech/wavs/LJ006-0190.npy -tests/data/ljspeech/wavs/LJ014-0170.wav|tests/data/ljspeech/wavs/LJ014-0170.npy -tests/data/ljspeech/wavs/LJ003-0179.wav|tests/data/ljspeech/wavs/LJ003-0179.npy -tests/data/ljspeech/wavs/LJ041-0083.wav|tests/data/ljspeech/wavs/LJ041-0083.npy -tests/data/ljspeech/wavs/LJ045-0101.wav|tests/data/ljspeech/wavs/LJ045-0101.npy -tests/data/ljspeech/wavs/LJ006-0217.wav|tests/data/ljspeech/wavs/LJ006-0217.npy -tests/data/ljspeech/wavs/LJ020-0019.wav|tests/data/ljspeech/wavs/LJ020-0019.npy -tests/data/ljspeech/wavs/LJ029-0027.wav|tests/data/ljspeech/wavs/LJ029-0027.npy -tests/data/ljspeech/wavs/LJ007-0219.wav|tests/data/ljspeech/wavs/LJ007-0219.npy -tests/data/ljspeech/wavs/LJ035-0184.wav|tests/data/ljspeech/wavs/LJ035-0184.npy -tests/data/ljspeech/wavs/LJ015-0207.wav|tests/data/ljspeech/wavs/LJ015-0207.npy -tests/data/ljspeech/wavs/LJ006-0172.wav|tests/data/ljspeech/wavs/LJ006-0172.npy -tests/data/ljspeech/wavs/LJ018-0054.wav|tests/data/ljspeech/wavs/LJ018-0054.npy -tests/data/ljspeech/wavs/LJ032-0245.wav|tests/data/ljspeech/wavs/LJ032-0245.npy -tests/data/ljspeech/wavs/LJ037-0187.wav|tests/data/ljspeech/wavs/LJ037-0187.npy -tests/data/ljspeech/wavs/LJ035-0183.wav|tests/data/ljspeech/wavs/LJ035-0183.npy -tests/data/ljspeech/wavs/LJ045-0016.wav|tests/data/ljspeech/wavs/LJ045-0016.npy -tests/data/ljspeech/wavs/LJ038-0180.wav|tests/data/ljspeech/wavs/LJ038-0180.npy -tests/data/ljspeech/wavs/LJ046-0173.wav|tests/data/ljspeech/wavs/LJ046-0173.npy -tests/data/ljspeech/wavs/LJ024-0054.wav|tests/data/ljspeech/wavs/LJ024-0054.npy -tests/data/ljspeech/wavs/LJ016-0351.wav|tests/data/ljspeech/wavs/LJ016-0351.npy -tests/data/ljspeech/wavs/LJ017-0184.wav|tests/data/ljspeech/wavs/LJ017-0184.npy -tests/data/ljspeech/wavs/LJ028-0116.wav|tests/data/ljspeech/wavs/LJ028-0116.npy -tests/data/ljspeech/wavs/LJ018-0137.wav|tests/data/ljspeech/wavs/LJ018-0137.npy -tests/data/ljspeech/wavs/LJ027-0115.wav|tests/data/ljspeech/wavs/LJ027-0115.npy -tests/data/ljspeech/wavs/LJ032-0176.wav|tests/data/ljspeech/wavs/LJ032-0176.npy -tests/data/ljspeech/wavs/LJ031-0036.wav|tests/data/ljspeech/wavs/LJ031-0036.npy -tests/data/ljspeech/wavs/LJ017-0041.wav|tests/data/ljspeech/wavs/LJ017-0041.npy -tests/data/ljspeech/wavs/LJ017-0188.wav|tests/data/ljspeech/wavs/LJ017-0188.npy -tests/data/ljspeech/wavs/LJ032-0215.wav|tests/data/ljspeech/wavs/LJ032-0215.npy -tests/data/ljspeech/wavs/LJ017-0047.wav|tests/data/ljspeech/wavs/LJ017-0047.npy -tests/data/ljspeech/wavs/LJ037-0102.wav|tests/data/ljspeech/wavs/LJ037-0102.npy -tests/data/ljspeech/wavs/LJ032-0208.wav|tests/data/ljspeech/wavs/LJ032-0208.npy -tests/data/ljspeech/wavs/LJ017-0196.wav|tests/data/ljspeech/wavs/LJ017-0196.npy -tests/data/ljspeech/wavs/LJ018-0050.wav|tests/data/ljspeech/wavs/LJ018-0050.npy -tests/data/ljspeech/wavs/LJ003-0023.wav|tests/data/ljspeech/wavs/LJ003-0023.npy -tests/data/ljspeech/wavs/LJ014-0091.wav|tests/data/ljspeech/wavs/LJ014-0091.npy -tests/data/ljspeech/wavs/LJ014-0152.wav|tests/data/ljspeech/wavs/LJ014-0152.npy -tests/data/ljspeech/wavs/LJ017-0162.wav|tests/data/ljspeech/wavs/LJ017-0162.npy -tests/data/ljspeech/wavs/LJ018-0096.wav|tests/data/ljspeech/wavs/LJ018-0096.npy -tests/data/ljspeech/wavs/LJ030-0200.wav|tests/data/ljspeech/wavs/LJ030-0200.npy -tests/data/ljspeech/wavs/LJ004-0029.wav|tests/data/ljspeech/wavs/LJ004-0029.npy -tests/data/ljspeech/wavs/LJ018-0185.wav|tests/data/ljspeech/wavs/LJ018-0185.npy -tests/data/ljspeech/wavs/LJ009-0213.wav|tests/data/ljspeech/wavs/LJ009-0213.npy -tests/data/ljspeech/wavs/LJ014-0023.wav|tests/data/ljspeech/wavs/LJ014-0023.npy -tests/data/ljspeech/wavs/LJ044-0022.wav|tests/data/ljspeech/wavs/LJ044-0022.npy -tests/data/ljspeech/wavs/LJ016-0206.wav|tests/data/ljspeech/wavs/LJ016-0206.npy -tests/data/ljspeech/wavs/LJ047-0006.wav|tests/data/ljspeech/wavs/LJ047-0006.npy -tests/data/ljspeech/wavs/LJ005-0287.wav|tests/data/ljspeech/wavs/LJ005-0287.npy -tests/data/ljspeech/wavs/LJ027-0135.wav|tests/data/ljspeech/wavs/LJ027-0135.npy -tests/data/ljspeech/wavs/LJ012-0046.wav|tests/data/ljspeech/wavs/LJ012-0046.npy -tests/data/ljspeech/wavs/LJ040-0232.wav|tests/data/ljspeech/wavs/LJ040-0232.npy -tests/data/ljspeech/wavs/LJ002-0307.wav|tests/data/ljspeech/wavs/LJ002-0307.npy -tests/data/ljspeech/wavs/LJ012-0070.wav|tests/data/ljspeech/wavs/LJ012-0070.npy -tests/data/ljspeech/wavs/LJ039-0045.wav|tests/data/ljspeech/wavs/LJ039-0045.npy -tests/data/ljspeech/wavs/LJ047-0007.wav|tests/data/ljspeech/wavs/LJ047-0007.npy -tests/data/ljspeech/wavs/LJ019-0077.wav|tests/data/ljspeech/wavs/LJ019-0077.npy -tests/data/ljspeech/wavs/LJ005-0021.wav|tests/data/ljspeech/wavs/LJ005-0021.npy -tests/data/ljspeech/wavs/LJ011-0268.wav|tests/data/ljspeech/wavs/LJ011-0268.npy -tests/data/ljspeech/wavs/LJ034-0075.wav|tests/data/ljspeech/wavs/LJ034-0075.npy -tests/data/ljspeech/wavs/LJ014-0013.wav|tests/data/ljspeech/wavs/LJ014-0013.npy -tests/data/ljspeech/wavs/LJ031-0112.wav|tests/data/ljspeech/wavs/LJ031-0112.npy -tests/data/ljspeech/wavs/LJ010-0029.wav|tests/data/ljspeech/wavs/LJ010-0029.npy -tests/data/ljspeech/wavs/LJ047-0171.wav|tests/data/ljspeech/wavs/LJ047-0171.npy -tests/data/ljspeech/wavs/LJ012-0029.wav|tests/data/ljspeech/wavs/LJ012-0029.npy -tests/data/ljspeech/wavs/LJ049-0197.wav|tests/data/ljspeech/wavs/LJ049-0197.npy -tests/data/ljspeech/wavs/LJ016-0061.wav|tests/data/ljspeech/wavs/LJ016-0061.npy -tests/data/ljspeech/wavs/LJ021-0104.wav|tests/data/ljspeech/wavs/LJ021-0104.npy -tests/data/ljspeech/wavs/LJ030-0167.wav|tests/data/ljspeech/wavs/LJ030-0167.npy -tests/data/ljspeech/wavs/LJ030-0015.wav|tests/data/ljspeech/wavs/LJ030-0015.npy -tests/data/ljspeech/wavs/LJ012-0080.wav|tests/data/ljspeech/wavs/LJ012-0080.npy -tests/data/ljspeech/wavs/LJ028-0383.wav|tests/data/ljspeech/wavs/LJ028-0383.npy -tests/data/ljspeech/wavs/LJ047-0159.wav|tests/data/ljspeech/wavs/LJ047-0159.npy -tests/data/ljspeech/wavs/LJ039-0211.wav|tests/data/ljspeech/wavs/LJ039-0211.npy -tests/data/ljspeech/wavs/LJ016-0124.wav|tests/data/ljspeech/wavs/LJ016-0124.npy -tests/data/ljspeech/wavs/LJ027-0130.wav|tests/data/ljspeech/wavs/LJ027-0130.npy -tests/data/ljspeech/wavs/LJ038-0229.wav|tests/data/ljspeech/wavs/LJ038-0229.npy -tests/data/ljspeech/wavs/LJ032-0021.wav|tests/data/ljspeech/wavs/LJ032-0021.npy -tests/data/ljspeech/wavs/LJ032-0049.wav|tests/data/ljspeech/wavs/LJ032-0049.npy -tests/data/ljspeech/wavs/LJ031-0137.wav|tests/data/ljspeech/wavs/LJ031-0137.npy -tests/data/ljspeech/wavs/LJ046-0117.wav|tests/data/ljspeech/wavs/LJ046-0117.npy -tests/data/ljspeech/wavs/LJ021-0175.wav|tests/data/ljspeech/wavs/LJ021-0175.npy -tests/data/ljspeech/wavs/LJ035-0160.wav|tests/data/ljspeech/wavs/LJ035-0160.npy -tests/data/ljspeech/wavs/LJ044-0165.wav|tests/data/ljspeech/wavs/LJ044-0165.npy -tests/data/ljspeech/wavs/LJ012-0150.wav|tests/data/ljspeech/wavs/LJ012-0150.npy -tests/data/ljspeech/wavs/LJ044-0182.wav|tests/data/ljspeech/wavs/LJ044-0182.npy -tests/data/ljspeech/wavs/LJ011-0067.wav|tests/data/ljspeech/wavs/LJ011-0067.npy -tests/data/ljspeech/wavs/LJ022-0079.wav|tests/data/ljspeech/wavs/LJ022-0079.npy -tests/data/ljspeech/wavs/LJ013-0155.wav|tests/data/ljspeech/wavs/LJ013-0155.npy -tests/data/ljspeech/wavs/LJ039-0090.wav|tests/data/ljspeech/wavs/LJ039-0090.npy -tests/data/ljspeech/wavs/LJ046-0172.wav|tests/data/ljspeech/wavs/LJ046-0172.npy -tests/data/ljspeech/wavs/LJ048-0181.wav|tests/data/ljspeech/wavs/LJ048-0181.npy -tests/data/ljspeech/wavs/LJ014-0004.wav|tests/data/ljspeech/wavs/LJ014-0004.npy -tests/data/ljspeech/wavs/LJ001-0025.wav|tests/data/ljspeech/wavs/LJ001-0025.npy -tests/data/ljspeech/wavs/LJ039-0037.wav|tests/data/ljspeech/wavs/LJ039-0037.npy -tests/data/ljspeech/wavs/LJ012-0169.wav|tests/data/ljspeech/wavs/LJ012-0169.npy -tests/data/ljspeech/wavs/LJ012-0206.wav|tests/data/ljspeech/wavs/LJ012-0206.npy -tests/data/ljspeech/wavs/LJ012-0257.wav|tests/data/ljspeech/wavs/LJ012-0257.npy -tests/data/ljspeech/wavs/LJ028-0226.wav|tests/data/ljspeech/wavs/LJ028-0226.npy -tests/data/ljspeech/wavs/LJ018-0394.wav|tests/data/ljspeech/wavs/LJ018-0394.npy -tests/data/ljspeech/wavs/LJ048-0115.wav|tests/data/ljspeech/wavs/LJ048-0115.npy -tests/data/ljspeech/wavs/LJ029-0150.wav|tests/data/ljspeech/wavs/LJ029-0150.npy -tests/data/ljspeech/wavs/LJ038-0258.wav|tests/data/ljspeech/wavs/LJ038-0258.npy -tests/data/ljspeech/wavs/LJ010-0314.wav|tests/data/ljspeech/wavs/LJ010-0314.npy -tests/data/ljspeech/wavs/LJ024-0138.wav|tests/data/ljspeech/wavs/LJ024-0138.npy -tests/data/ljspeech/wavs/LJ049-0222.wav|tests/data/ljspeech/wavs/LJ049-0222.npy -tests/data/ljspeech/wavs/LJ004-0230.wav|tests/data/ljspeech/wavs/LJ004-0230.npy -tests/data/ljspeech/wavs/LJ009-0244.wav|tests/data/ljspeech/wavs/LJ009-0244.npy -tests/data/ljspeech/wavs/LJ011-0084.wav|tests/data/ljspeech/wavs/LJ011-0084.npy -tests/data/ljspeech/wavs/LJ043-0124.wav|tests/data/ljspeech/wavs/LJ043-0124.npy -tests/data/ljspeech/wavs/LJ002-0270.wav|tests/data/ljspeech/wavs/LJ002-0270.npy -tests/data/ljspeech/wavs/LJ029-0089.wav|tests/data/ljspeech/wavs/LJ029-0089.npy -tests/data/ljspeech/wavs/LJ001-0092.wav|tests/data/ljspeech/wavs/LJ001-0092.npy -tests/data/ljspeech/wavs/LJ030-0154.wav|tests/data/ljspeech/wavs/LJ030-0154.npy -tests/data/ljspeech/wavs/LJ005-0039.wav|tests/data/ljspeech/wavs/LJ005-0039.npy -tests/data/ljspeech/wavs/LJ004-0030.wav|tests/data/ljspeech/wavs/LJ004-0030.npy -tests/data/ljspeech/wavs/LJ044-0079.wav|tests/data/ljspeech/wavs/LJ044-0079.npy -tests/data/ljspeech/wavs/LJ029-0093.wav|tests/data/ljspeech/wavs/LJ029-0093.npy -tests/data/ljspeech/wavs/LJ043-0045.wav|tests/data/ljspeech/wavs/LJ043-0045.npy -tests/data/ljspeech/wavs/LJ046-0055.wav|tests/data/ljspeech/wavs/LJ046-0055.npy -tests/data/ljspeech/wavs/LJ003-0319.wav|tests/data/ljspeech/wavs/LJ003-0319.npy -tests/data/ljspeech/wavs/LJ003-0143.wav|tests/data/ljspeech/wavs/LJ003-0143.npy -tests/data/ljspeech/wavs/LJ022-0143.wav|tests/data/ljspeech/wavs/LJ022-0143.npy -tests/data/ljspeech/wavs/LJ030-0079.wav|tests/data/ljspeech/wavs/LJ030-0079.npy -tests/data/ljspeech/wavs/LJ044-0059.wav|tests/data/ljspeech/wavs/LJ044-0059.npy -tests/data/ljspeech/wavs/LJ003-0226.wav|tests/data/ljspeech/wavs/LJ003-0226.npy -tests/data/ljspeech/wavs/LJ005-0161.wav|tests/data/ljspeech/wavs/LJ005-0161.npy -tests/data/ljspeech/wavs/LJ022-0173.wav|tests/data/ljspeech/wavs/LJ022-0173.npy -tests/data/ljspeech/wavs/LJ048-0008.wav|tests/data/ljspeech/wavs/LJ048-0008.npy -tests/data/ljspeech/wavs/LJ006-0049.wav|tests/data/ljspeech/wavs/LJ006-0049.npy -tests/data/ljspeech/wavs/LJ001-0055.wav|tests/data/ljspeech/wavs/LJ001-0055.npy -tests/data/ljspeech/wavs/LJ006-0275.wav|tests/data/ljspeech/wavs/LJ006-0275.npy -tests/data/ljspeech/wavs/LJ043-0025.wav|tests/data/ljspeech/wavs/LJ043-0025.npy -tests/data/ljspeech/wavs/LJ023-0038.wav|tests/data/ljspeech/wavs/LJ023-0038.npy -tests/data/ljspeech/wavs/LJ006-0131.wav|tests/data/ljspeech/wavs/LJ006-0131.npy -tests/data/ljspeech/wavs/LJ022-0027.wav|tests/data/ljspeech/wavs/LJ022-0027.npy -tests/data/ljspeech/wavs/LJ005-0222.wav|tests/data/ljspeech/wavs/LJ005-0222.npy -tests/data/ljspeech/wavs/LJ001-0060.wav|tests/data/ljspeech/wavs/LJ001-0060.npy -tests/data/ljspeech/wavs/LJ006-0196.wav|tests/data/ljspeech/wavs/LJ006-0196.npy -tests/data/ljspeech/wavs/LJ029-0184.wav|tests/data/ljspeech/wavs/LJ029-0184.npy -tests/data/ljspeech/wavs/LJ002-0310.wav|tests/data/ljspeech/wavs/LJ002-0310.npy -tests/data/ljspeech/wavs/LJ018-0224.wav|tests/data/ljspeech/wavs/LJ018-0224.npy -tests/data/ljspeech/wavs/LJ032-0025.wav|tests/data/ljspeech/wavs/LJ032-0025.npy -tests/data/ljspeech/wavs/LJ040-0171.wav|tests/data/ljspeech/wavs/LJ040-0171.npy -tests/data/ljspeech/wavs/LJ049-0058.wav|tests/data/ljspeech/wavs/LJ049-0058.npy -tests/data/ljspeech/wavs/LJ010-0185.wav|tests/data/ljspeech/wavs/LJ010-0185.npy -tests/data/ljspeech/wavs/LJ026-0131.wav|tests/data/ljspeech/wavs/LJ026-0131.npy -tests/data/ljspeech/wavs/LJ019-0215.wav|tests/data/ljspeech/wavs/LJ019-0215.npy -tests/data/ljspeech/wavs/LJ035-0091.wav|tests/data/ljspeech/wavs/LJ035-0091.npy -tests/data/ljspeech/wavs/LJ028-0402.wav|tests/data/ljspeech/wavs/LJ028-0402.npy -tests/data/ljspeech/wavs/LJ037-0074.wav|tests/data/ljspeech/wavs/LJ037-0074.npy -tests/data/ljspeech/wavs/LJ018-0190.wav|tests/data/ljspeech/wavs/LJ018-0190.npy -tests/data/ljspeech/wavs/LJ036-0028.wav|tests/data/ljspeech/wavs/LJ036-0028.npy -tests/data/ljspeech/wavs/LJ015-0180.wav|tests/data/ljspeech/wavs/LJ015-0180.npy -tests/data/ljspeech/wavs/LJ019-0228.wav|tests/data/ljspeech/wavs/LJ019-0228.npy -tests/data/ljspeech/wavs/LJ018-0183.wav|tests/data/ljspeech/wavs/LJ018-0183.npy -tests/data/ljspeech/wavs/LJ017-0050.wav|tests/data/ljspeech/wavs/LJ017-0050.npy -tests/data/ljspeech/wavs/LJ049-0073.wav|tests/data/ljspeech/wavs/LJ049-0073.npy -tests/data/ljspeech/wavs/LJ011-0133.wav|tests/data/ljspeech/wavs/LJ011-0133.npy -tests/data/ljspeech/wavs/LJ041-0010.wav|tests/data/ljspeech/wavs/LJ041-0010.npy -tests/data/ljspeech/wavs/LJ030-0250.wav|tests/data/ljspeech/wavs/LJ030-0250.npy -tests/data/ljspeech/wavs/LJ028-0377.wav|tests/data/ljspeech/wavs/LJ028-0377.npy -tests/data/ljspeech/wavs/LJ040-0051.wav|tests/data/ljspeech/wavs/LJ040-0051.npy -tests/data/ljspeech/wavs/LJ011-0169.wav|tests/data/ljspeech/wavs/LJ011-0169.npy -tests/data/ljspeech/wavs/LJ011-0203.wav|tests/data/ljspeech/wavs/LJ011-0203.npy -tests/data/ljspeech/wavs/LJ026-0005.wav|tests/data/ljspeech/wavs/LJ026-0005.npy -tests/data/ljspeech/wavs/LJ018-0172.wav|tests/data/ljspeech/wavs/LJ018-0172.npy -tests/data/ljspeech/wavs/LJ009-0263.wav|tests/data/ljspeech/wavs/LJ009-0263.npy -tests/data/ljspeech/wavs/LJ028-0411.wav|tests/data/ljspeech/wavs/LJ028-0411.npy -tests/data/ljspeech/wavs/LJ016-0285.wav|tests/data/ljspeech/wavs/LJ016-0285.npy -tests/data/ljspeech/wavs/LJ036-0174.wav|tests/data/ljspeech/wavs/LJ036-0174.npy -tests/data/ljspeech/wavs/LJ039-0181.wav|tests/data/ljspeech/wavs/LJ039-0181.npy -tests/data/ljspeech/wavs/LJ028-0382.wav|tests/data/ljspeech/wavs/LJ028-0382.npy -tests/data/ljspeech/wavs/LJ038-0120.wav|tests/data/ljspeech/wavs/LJ038-0120.npy -tests/data/ljspeech/wavs/LJ047-0153.wav|tests/data/ljspeech/wavs/LJ047-0153.npy -tests/data/ljspeech/wavs/LJ015-0223.wav|tests/data/ljspeech/wavs/LJ015-0223.npy -tests/data/ljspeech/wavs/LJ016-0079.wav|tests/data/ljspeech/wavs/LJ016-0079.npy -tests/data/ljspeech/wavs/LJ028-0124.wav|tests/data/ljspeech/wavs/LJ028-0124.npy -tests/data/ljspeech/wavs/LJ018-0104.wav|tests/data/ljspeech/wavs/LJ018-0104.npy -tests/data/ljspeech/wavs/LJ038-0246.wav|tests/data/ljspeech/wavs/LJ038-0246.npy -tests/data/ljspeech/wavs/LJ013-0030.wav|tests/data/ljspeech/wavs/LJ013-0030.npy -tests/data/ljspeech/wavs/LJ015-0206.wav|tests/data/ljspeech/wavs/LJ015-0206.npy -tests/data/ljspeech/wavs/LJ015-0078.wav|tests/data/ljspeech/wavs/LJ015-0078.npy -tests/data/ljspeech/wavs/LJ012-0279.wav|tests/data/ljspeech/wavs/LJ012-0279.npy -tests/data/ljspeech/wavs/LJ027-0163.wav|tests/data/ljspeech/wavs/LJ027-0163.npy -tests/data/ljspeech/wavs/LJ037-0192.wav|tests/data/ljspeech/wavs/LJ037-0192.npy -tests/data/ljspeech/wavs/LJ038-0210.wav|tests/data/ljspeech/wavs/LJ038-0210.npy -tests/data/ljspeech/wavs/LJ038-0087.wav|tests/data/ljspeech/wavs/LJ038-0087.npy -tests/data/ljspeech/wavs/LJ016-0106.wav|tests/data/ljspeech/wavs/LJ016-0106.npy -tests/data/ljspeech/wavs/LJ016-0036.wav|tests/data/ljspeech/wavs/LJ016-0036.npy -tests/data/ljspeech/wavs/LJ032-0126.wav|tests/data/ljspeech/wavs/LJ032-0126.npy -tests/data/ljspeech/wavs/LJ027-0147.wav|tests/data/ljspeech/wavs/LJ027-0147.npy -tests/data/ljspeech/wavs/LJ035-0191.wav|tests/data/ljspeech/wavs/LJ035-0191.npy -tests/data/ljspeech/wavs/LJ016-0170.wav|tests/data/ljspeech/wavs/LJ016-0170.npy -tests/data/ljspeech/wavs/LJ018-0347.wav|tests/data/ljspeech/wavs/LJ018-0347.npy -tests/data/ljspeech/wavs/LJ032-0173.wav|tests/data/ljspeech/wavs/LJ032-0173.npy -tests/data/ljspeech/wavs/LJ015-0072.wav|tests/data/ljspeech/wavs/LJ015-0072.npy -tests/data/ljspeech/wavs/LJ014-0090.wav|tests/data/ljspeech/wavs/LJ014-0090.npy -tests/data/ljspeech/wavs/LJ014-0092.wav|tests/data/ljspeech/wavs/LJ014-0092.npy -tests/data/ljspeech/wavs/LJ013-0165.wav|tests/data/ljspeech/wavs/LJ013-0165.npy -tests/data/ljspeech/wavs/LJ015-0250.wav|tests/data/ljspeech/wavs/LJ015-0250.npy -tests/data/ljspeech/wavs/LJ013-0179.wav|tests/data/ljspeech/wavs/LJ013-0179.npy -tests/data/ljspeech/wavs/LJ028-0017.wav|tests/data/ljspeech/wavs/LJ028-0017.npy -tests/data/ljspeech/wavs/LJ028-0093.wav|tests/data/ljspeech/wavs/LJ028-0093.npy -tests/data/ljspeech/wavs/LJ026-0063.wav|tests/data/ljspeech/wavs/LJ026-0063.npy -tests/data/ljspeech/wavs/LJ019-0021.wav|tests/data/ljspeech/wavs/LJ019-0021.npy -tests/data/ljspeech/wavs/LJ019-0388.wav|tests/data/ljspeech/wavs/LJ019-0388.npy -tests/data/ljspeech/wavs/LJ008-0020.wav|tests/data/ljspeech/wavs/LJ008-0020.npy -tests/data/ljspeech/wavs/LJ027-0013.wav|tests/data/ljspeech/wavs/LJ027-0013.npy -tests/data/ljspeech/wavs/LJ018-0276.wav|tests/data/ljspeech/wavs/LJ018-0276.npy -tests/data/ljspeech/wavs/LJ009-0140.wav|tests/data/ljspeech/wavs/LJ009-0140.npy -tests/data/ljspeech/wavs/LJ042-0192.wav|tests/data/ljspeech/wavs/LJ042-0192.npy -tests/data/ljspeech/wavs/LJ042-0128.wav|tests/data/ljspeech/wavs/LJ042-0128.npy -tests/data/ljspeech/wavs/LJ048-0034.wav|tests/data/ljspeech/wavs/LJ048-0034.npy -tests/data/ljspeech/wavs/LJ019-0329.wav|tests/data/ljspeech/wavs/LJ019-0329.npy -tests/data/ljspeech/wavs/LJ029-0033.wav|tests/data/ljspeech/wavs/LJ029-0033.npy -tests/data/ljspeech/wavs/LJ013-0127.wav|tests/data/ljspeech/wavs/LJ013-0127.npy -tests/data/ljspeech/wavs/LJ008-0047.wav|tests/data/ljspeech/wavs/LJ008-0047.npy -tests/data/ljspeech/wavs/LJ012-0290.wav|tests/data/ljspeech/wavs/LJ012-0290.npy -tests/data/ljspeech/wavs/LJ008-0021.wav|tests/data/ljspeech/wavs/LJ008-0021.npy -tests/data/ljspeech/wavs/LJ009-0066.wav|tests/data/ljspeech/wavs/LJ009-0066.npy -tests/data/ljspeech/wavs/LJ014-0070.wav|tests/data/ljspeech/wavs/LJ014-0070.npy -tests/data/ljspeech/wavs/LJ018-0007.wav|tests/data/ljspeech/wavs/LJ018-0007.npy -tests/data/ljspeech/wavs/LJ035-0193.wav|tests/data/ljspeech/wavs/LJ035-0193.npy -tests/data/ljspeech/wavs/LJ041-0192.wav|tests/data/ljspeech/wavs/LJ041-0192.npy -tests/data/ljspeech/wavs/LJ004-0136.wav|tests/data/ljspeech/wavs/LJ004-0136.npy -tests/data/ljspeech/wavs/LJ019-0128.wav|tests/data/ljspeech/wavs/LJ019-0128.npy -tests/data/ljspeech/wavs/LJ047-0059.wav|tests/data/ljspeech/wavs/LJ047-0059.npy -tests/data/ljspeech/wavs/LJ050-0060.wav|tests/data/ljspeech/wavs/LJ050-0060.npy -tests/data/ljspeech/wavs/LJ008-0214.wav|tests/data/ljspeech/wavs/LJ008-0214.npy -tests/data/ljspeech/wavs/LJ035-0172.wav|tests/data/ljspeech/wavs/LJ035-0172.npy -tests/data/ljspeech/wavs/LJ018-0289.wav|tests/data/ljspeech/wavs/LJ018-0289.npy -tests/data/ljspeech/wavs/LJ017-0242.wav|tests/data/ljspeech/wavs/LJ017-0242.npy -tests/data/ljspeech/wavs/LJ017-0257.wav|tests/data/ljspeech/wavs/LJ017-0257.npy -tests/data/ljspeech/wavs/LJ035-0034.wav|tests/data/ljspeech/wavs/LJ035-0034.npy -tests/data/ljspeech/wavs/LJ018-0296.wav|tests/data/ljspeech/wavs/LJ018-0296.npy -tests/data/ljspeech/wavs/LJ004-0163.wav|tests/data/ljspeech/wavs/LJ004-0163.npy -tests/data/ljspeech/wavs/LJ039-0012.wav|tests/data/ljspeech/wavs/LJ039-0012.npy -tests/data/ljspeech/wavs/LJ048-0079.wav|tests/data/ljspeech/wavs/LJ048-0079.npy -tests/data/ljspeech/wavs/LJ025-0065.wav|tests/data/ljspeech/wavs/LJ025-0065.npy -tests/data/ljspeech/wavs/LJ034-0170.wav|tests/data/ljspeech/wavs/LJ034-0170.npy -tests/data/ljspeech/wavs/LJ045-0157.wav|tests/data/ljspeech/wavs/LJ045-0157.npy -tests/data/ljspeech/wavs/LJ022-0094.wav|tests/data/ljspeech/wavs/LJ022-0094.npy -tests/data/ljspeech/wavs/LJ013-0049.wav|tests/data/ljspeech/wavs/LJ013-0049.npy -tests/data/ljspeech/wavs/LJ007-0150.wav|tests/data/ljspeech/wavs/LJ007-0150.npy -tests/data/ljspeech/wavs/LJ042-0112.wav|tests/data/ljspeech/wavs/LJ042-0112.npy -tests/data/ljspeech/wavs/LJ045-0062.wav|tests/data/ljspeech/wavs/LJ045-0062.npy -tests/data/ljspeech/wavs/LJ035-0152.wav|tests/data/ljspeech/wavs/LJ035-0152.npy -tests/data/ljspeech/wavs/LJ031-0225.wav|tests/data/ljspeech/wavs/LJ031-0225.npy -tests/data/ljspeech/wavs/LJ013-0246.wav|tests/data/ljspeech/wavs/LJ013-0246.npy -tests/data/ljspeech/wavs/LJ009-0078.wav|tests/data/ljspeech/wavs/LJ009-0078.npy -tests/data/ljspeech/wavs/LJ016-0075.wav|tests/data/ljspeech/wavs/LJ016-0075.npy -tests/data/ljspeech/wavs/LJ037-0121.wav|tests/data/ljspeech/wavs/LJ037-0121.npy -tests/data/ljspeech/wavs/LJ047-0228.wav|tests/data/ljspeech/wavs/LJ047-0228.npy -tests/data/ljspeech/wavs/LJ008-0057.wav|tests/data/ljspeech/wavs/LJ008-0057.npy -tests/data/ljspeech/wavs/LJ012-0017.wav|tests/data/ljspeech/wavs/LJ012-0017.npy -tests/data/ljspeech/wavs/LJ026-0056.wav|tests/data/ljspeech/wavs/LJ026-0056.npy -tests/data/ljspeech/wavs/LJ033-0083.wav|tests/data/ljspeech/wavs/LJ033-0083.npy -tests/data/ljspeech/wavs/LJ023-0132.wav|tests/data/ljspeech/wavs/LJ023-0132.npy -tests/data/ljspeech/wavs/LJ016-0136.wav|tests/data/ljspeech/wavs/LJ016-0136.npy -tests/data/ljspeech/wavs/LJ012-0035.wav|tests/data/ljspeech/wavs/LJ012-0035.npy -tests/data/ljspeech/wavs/LJ012-0267.wav|tests/data/ljspeech/wavs/LJ012-0267.npy -tests/data/ljspeech/wavs/LJ016-0038.wav|tests/data/ljspeech/wavs/LJ016-0038.npy -tests/data/ljspeech/wavs/LJ003-0270.wav|tests/data/ljspeech/wavs/LJ003-0270.npy -tests/data/ljspeech/wavs/LJ042-0214.wav|tests/data/ljspeech/wavs/LJ042-0214.npy -tests/data/ljspeech/wavs/LJ004-0240.wav|tests/data/ljspeech/wavs/LJ004-0240.npy -tests/data/ljspeech/wavs/LJ039-0162.wav|tests/data/ljspeech/wavs/LJ039-0162.npy -tests/data/ljspeech/wavs/LJ033-0043.wav|tests/data/ljspeech/wavs/LJ033-0043.npy -tests/data/ljspeech/wavs/LJ012-0181.wav|tests/data/ljspeech/wavs/LJ012-0181.npy -tests/data/ljspeech/wavs/LJ014-0315.wav|tests/data/ljspeech/wavs/LJ014-0315.npy -tests/data/ljspeech/wavs/LJ038-0078.wav|tests/data/ljspeech/wavs/LJ038-0078.npy -tests/data/ljspeech/wavs/LJ038-0222.wav|tests/data/ljspeech/wavs/LJ038-0222.npy -tests/data/ljspeech/wavs/LJ018-0002.wav|tests/data/ljspeech/wavs/LJ018-0002.npy -tests/data/ljspeech/wavs/LJ037-0216.wav|tests/data/ljspeech/wavs/LJ037-0216.npy -tests/data/ljspeech/wavs/LJ042-0162.wav|tests/data/ljspeech/wavs/LJ042-0162.npy -tests/data/ljspeech/wavs/LJ018-0014.wav|tests/data/ljspeech/wavs/LJ018-0014.npy -tests/data/ljspeech/wavs/LJ026-0074.wav|tests/data/ljspeech/wavs/LJ026-0074.npy -tests/data/ljspeech/wavs/LJ014-0203.wav|tests/data/ljspeech/wavs/LJ014-0203.npy -tests/data/ljspeech/wavs/LJ007-0225.wav|tests/data/ljspeech/wavs/LJ007-0225.npy -tests/data/ljspeech/wavs/LJ016-0037.wav|tests/data/ljspeech/wavs/LJ016-0037.npy -tests/data/ljspeech/wavs/LJ015-0199.wav|tests/data/ljspeech/wavs/LJ015-0199.npy -tests/data/ljspeech/wavs/LJ038-0053.wav|tests/data/ljspeech/wavs/LJ038-0053.npy -tests/data/ljspeech/wavs/LJ047-0037.wav|tests/data/ljspeech/wavs/LJ047-0037.npy -tests/data/ljspeech/wavs/LJ016-0178.wav|tests/data/ljspeech/wavs/LJ016-0178.npy -tests/data/ljspeech/wavs/LJ003-0253.wav|tests/data/ljspeech/wavs/LJ003-0253.npy -tests/data/ljspeech/wavs/LJ003-0258.wav|tests/data/ljspeech/wavs/LJ003-0258.npy -tests/data/ljspeech/wavs/LJ015-0314.wav|tests/data/ljspeech/wavs/LJ015-0314.npy -tests/data/ljspeech/wavs/LJ007-0043.wav|tests/data/ljspeech/wavs/LJ007-0043.npy -tests/data/ljspeech/wavs/LJ014-0161.wav|tests/data/ljspeech/wavs/LJ014-0161.npy -tests/data/ljspeech/wavs/LJ018-0259.wav|tests/data/ljspeech/wavs/LJ018-0259.npy -tests/data/ljspeech/wavs/LJ042-0169.wav|tests/data/ljspeech/wavs/LJ042-0169.npy -tests/data/ljspeech/wavs/LJ003-0257.wav|tests/data/ljspeech/wavs/LJ003-0257.npy -tests/data/ljspeech/wavs/LJ018-0257.wav|tests/data/ljspeech/wavs/LJ018-0257.npy -tests/data/ljspeech/wavs/LJ003-0206.wav|tests/data/ljspeech/wavs/LJ003-0206.npy -tests/data/ljspeech/wavs/LJ018-0036.wav|tests/data/ljspeech/wavs/LJ018-0036.npy -tests/data/ljspeech/wavs/LJ029-0059.wav|tests/data/ljspeech/wavs/LJ029-0059.npy -tests/data/ljspeech/wavs/LJ038-0038.wav|tests/data/ljspeech/wavs/LJ038-0038.npy -tests/data/ljspeech/wavs/LJ026-0073.wav|tests/data/ljspeech/wavs/LJ026-0073.npy -tests/data/ljspeech/wavs/LJ034-0187.wav|tests/data/ljspeech/wavs/LJ034-0187.npy -tests/data/ljspeech/wavs/LJ018-0270.wav|tests/data/ljspeech/wavs/LJ018-0270.npy -tests/data/ljspeech/wavs/LJ003-0304.wav|tests/data/ljspeech/wavs/LJ003-0304.npy -tests/data/ljspeech/wavs/LJ034-0111.wav|tests/data/ljspeech/wavs/LJ034-0111.npy -tests/data/ljspeech/wavs/LJ010-0068.wav|tests/data/ljspeech/wavs/LJ010-0068.npy -tests/data/ljspeech/wavs/LJ005-0201.wav|tests/data/ljspeech/wavs/LJ005-0201.npy -tests/data/ljspeech/wavs/LJ029-0181.wav|tests/data/ljspeech/wavs/LJ029-0181.npy -tests/data/ljspeech/wavs/LJ010-0173.wav|tests/data/ljspeech/wavs/LJ010-0173.npy -tests/data/ljspeech/wavs/LJ043-0117.wav|tests/data/ljspeech/wavs/LJ043-0117.npy -tests/data/ljspeech/wavs/LJ044-0037.wav|tests/data/ljspeech/wavs/LJ044-0037.npy -tests/data/ljspeech/wavs/LJ017-0216.wav|tests/data/ljspeech/wavs/LJ017-0216.npy -tests/data/ljspeech/wavs/LJ024-0080.wav|tests/data/ljspeech/wavs/LJ024-0080.npy -tests/data/ljspeech/wavs/LJ002-0112.wav|tests/data/ljspeech/wavs/LJ002-0112.npy -tests/data/ljspeech/wavs/LJ010-0220.wav|tests/data/ljspeech/wavs/LJ010-0220.npy -tests/data/ljspeech/wavs/LJ006-0184.wav|tests/data/ljspeech/wavs/LJ006-0184.npy -tests/data/ljspeech/wavs/LJ016-0440.wav|tests/data/ljspeech/wavs/LJ016-0440.npy -tests/data/ljspeech/wavs/LJ017-0024.wav|tests/data/ljspeech/wavs/LJ017-0024.npy -tests/data/ljspeech/wavs/LJ017-0219.wav|tests/data/ljspeech/wavs/LJ017-0219.npy -tests/data/ljspeech/wavs/LJ005-0230.wav|tests/data/ljspeech/wavs/LJ005-0230.npy -tests/data/ljspeech/wavs/LJ041-0033.wav|tests/data/ljspeech/wavs/LJ041-0033.npy -tests/data/ljspeech/wavs/LJ033-0071.wav|tests/data/ljspeech/wavs/LJ033-0071.npy -tests/data/ljspeech/wavs/LJ010-0077.wav|tests/data/ljspeech/wavs/LJ010-0077.npy -tests/data/ljspeech/wavs/LJ016-0332.wav|tests/data/ljspeech/wavs/LJ016-0332.npy -tests/data/ljspeech/wavs/LJ010-0209.wav|tests/data/ljspeech/wavs/LJ010-0209.npy -tests/data/ljspeech/wavs/LJ041-0193.wav|tests/data/ljspeech/wavs/LJ041-0193.npy -tests/data/ljspeech/wavs/LJ010-0103.wav|tests/data/ljspeech/wavs/LJ010-0103.npy -tests/data/ljspeech/wavs/LJ008-0293.wav|tests/data/ljspeech/wavs/LJ008-0293.npy -tests/data/ljspeech/wavs/LJ009-0082.wav|tests/data/ljspeech/wavs/LJ009-0082.npy -tests/data/ljspeech/wavs/LJ017-0106.wav|tests/data/ljspeech/wavs/LJ017-0106.npy -tests/data/ljspeech/wavs/LJ003-0020.wav|tests/data/ljspeech/wavs/LJ003-0020.npy -tests/data/ljspeech/wavs/LJ001-0145.wav|tests/data/ljspeech/wavs/LJ001-0145.npy -tests/data/ljspeech/wavs/LJ006-0205.wav|tests/data/ljspeech/wavs/LJ006-0205.npy -tests/data/ljspeech/wavs/LJ001-0149.wav|tests/data/ljspeech/wavs/LJ001-0149.npy -tests/data/ljspeech/wavs/LJ002-0067.wav|tests/data/ljspeech/wavs/LJ002-0067.npy -tests/data/ljspeech/wavs/LJ019-0178.wav|tests/data/ljspeech/wavs/LJ019-0178.npy -tests/data/ljspeech/wavs/LJ002-0120.wav|tests/data/ljspeech/wavs/LJ002-0120.npy -tests/data/ljspeech/wavs/LJ042-0050.wav|tests/data/ljspeech/wavs/LJ042-0050.npy -tests/data/ljspeech/wavs/LJ011-0099.wav|tests/data/ljspeech/wavs/LJ011-0099.npy -tests/data/ljspeech/wavs/LJ037-0045.wav|tests/data/ljspeech/wavs/LJ037-0045.npy -tests/data/ljspeech/wavs/LJ031-0116.wav|tests/data/ljspeech/wavs/LJ031-0116.npy -tests/data/ljspeech/wavs/LJ011-0081.wav|tests/data/ljspeech/wavs/LJ011-0081.npy -tests/data/ljspeech/wavs/LJ050-0040.wav|tests/data/ljspeech/wavs/LJ050-0040.npy -tests/data/ljspeech/wavs/LJ025-0095.wav|tests/data/ljspeech/wavs/LJ025-0095.npy -tests/data/ljspeech/wavs/LJ040-0212.wav|tests/data/ljspeech/wavs/LJ040-0212.npy -tests/data/ljspeech/wavs/LJ046-0165.wav|tests/data/ljspeech/wavs/LJ046-0165.npy -tests/data/ljspeech/wavs/LJ008-0309.wav|tests/data/ljspeech/wavs/LJ008-0309.npy -tests/data/ljspeech/wavs/LJ002-0262.wav|tests/data/ljspeech/wavs/LJ002-0262.npy -tests/data/ljspeech/wavs/LJ011-0144.wav|tests/data/ljspeech/wavs/LJ011-0144.npy -tests/data/ljspeech/wavs/LJ010-0274.wav|tests/data/ljspeech/wavs/LJ010-0274.npy -tests/data/ljspeech/wavs/LJ016-0260.wav|tests/data/ljspeech/wavs/LJ016-0260.npy -tests/data/ljspeech/wavs/LJ047-0164.wav|tests/data/ljspeech/wavs/LJ047-0164.npy -tests/data/ljspeech/wavs/LJ009-0270.wav|tests/data/ljspeech/wavs/LJ009-0270.npy -tests/data/ljspeech/wavs/LJ002-0224.wav|tests/data/ljspeech/wavs/LJ002-0224.npy -tests/data/ljspeech/wavs/LJ034-0168.wav|tests/data/ljspeech/wavs/LJ034-0168.npy -tests/data/ljspeech/wavs/LJ049-0191.wav|tests/data/ljspeech/wavs/LJ049-0191.npy -tests/data/ljspeech/wavs/LJ048-0251.wav|tests/data/ljspeech/wavs/LJ048-0251.npy -tests/data/ljspeech/wavs/LJ040-0223.wav|tests/data/ljspeech/wavs/LJ040-0223.npy -tests/data/ljspeech/wavs/LJ019-0134.wav|tests/data/ljspeech/wavs/LJ019-0134.npy -tests/data/ljspeech/wavs/LJ024-0037.wav|tests/data/ljspeech/wavs/LJ024-0037.npy -tests/data/ljspeech/wavs/LJ010-0239.wav|tests/data/ljspeech/wavs/LJ010-0239.npy -tests/data/ljspeech/wavs/LJ021-0012.wav|tests/data/ljspeech/wavs/LJ021-0012.npy -tests/data/ljspeech/wavs/LJ021-0009.wav|tests/data/ljspeech/wavs/LJ021-0009.npy -tests/data/ljspeech/wavs/LJ028-0268.wav|tests/data/ljspeech/wavs/LJ028-0268.npy -tests/data/ljspeech/wavs/LJ010-0033.wav|tests/data/ljspeech/wavs/LJ010-0033.npy -tests/data/ljspeech/wavs/LJ041-0166.wav|tests/data/ljspeech/wavs/LJ041-0166.npy -tests/data/ljspeech/wavs/LJ032-0274.wav|tests/data/ljspeech/wavs/LJ032-0274.npy -tests/data/ljspeech/wavs/LJ017-0035.wav|tests/data/ljspeech/wavs/LJ017-0035.npy -tests/data/ljspeech/wavs/LJ047-0179.wav|tests/data/ljspeech/wavs/LJ047-0179.npy -tests/data/ljspeech/wavs/LJ032-0241.wav|tests/data/ljspeech/wavs/LJ032-0241.npy -tests/data/ljspeech/wavs/LJ037-0125.wav|tests/data/ljspeech/wavs/LJ037-0125.npy -tests/data/ljspeech/wavs/LJ027-0175.wav|tests/data/ljspeech/wavs/LJ027-0175.npy -tests/data/ljspeech/wavs/LJ048-0036.wav|tests/data/ljspeech/wavs/LJ048-0036.npy -tests/data/ljspeech/wavs/LJ017-0112.wav|tests/data/ljspeech/wavs/LJ017-0112.npy -tests/data/ljspeech/wavs/LJ047-0182.wav|tests/data/ljspeech/wavs/LJ047-0182.npy -tests/data/ljspeech/wavs/LJ017-0181.wav|tests/data/ljspeech/wavs/LJ017-0181.npy -tests/data/ljspeech/wavs/LJ033-0173.wav|tests/data/ljspeech/wavs/LJ033-0173.npy -tests/data/ljspeech/wavs/LJ033-0172.wav|tests/data/ljspeech/wavs/LJ033-0172.npy -tests/data/ljspeech/wavs/LJ049-0043.wav|tests/data/ljspeech/wavs/LJ049-0043.npy -tests/data/ljspeech/wavs/LJ024-0018.wav|tests/data/ljspeech/wavs/LJ024-0018.npy -tests/data/ljspeech/wavs/LJ016-0217.wav|tests/data/ljspeech/wavs/LJ016-0217.npy -tests/data/ljspeech/wavs/LJ016-0139.wav|tests/data/ljspeech/wavs/LJ016-0139.npy -tests/data/ljspeech/wavs/LJ017-0204.wav|tests/data/ljspeech/wavs/LJ017-0204.npy -tests/data/ljspeech/wavs/LJ046-0051.wav|tests/data/ljspeech/wavs/LJ046-0051.npy -tests/data/ljspeech/wavs/LJ033-0187.wav|tests/data/ljspeech/wavs/LJ033-0187.npy -tests/data/ljspeech/wavs/LJ017-0157.wav|tests/data/ljspeech/wavs/LJ017-0157.npy -tests/data/ljspeech/wavs/LJ015-0280.wav|tests/data/ljspeech/wavs/LJ015-0280.npy -tests/data/ljspeech/wavs/LJ017-0207.wav|tests/data/ljspeech/wavs/LJ017-0207.npy -tests/data/ljspeech/wavs/LJ017-0205.wav|tests/data/ljspeech/wavs/LJ017-0205.npy -tests/data/ljspeech/wavs/LJ001-0178.wav|tests/data/ljspeech/wavs/LJ001-0178.npy -tests/data/ljspeech/wavs/LJ046-0171.wav|tests/data/ljspeech/wavs/LJ046-0171.npy -tests/data/ljspeech/wavs/LJ030-0214.wav|tests/data/ljspeech/wavs/LJ030-0214.npy -tests/data/ljspeech/wavs/LJ046-0001.wav|tests/data/ljspeech/wavs/LJ046-0001.npy -tests/data/ljspeech/wavs/LJ016-0096.wav|tests/data/ljspeech/wavs/LJ016-0096.npy -tests/data/ljspeech/wavs/LJ010-0304.wav|tests/data/ljspeech/wavs/LJ010-0304.npy -tests/data/ljspeech/wavs/LJ001-0022.wav|tests/data/ljspeech/wavs/LJ001-0022.npy -tests/data/ljspeech/wavs/LJ015-0221.wav|tests/data/ljspeech/wavs/LJ015-0221.npy -tests/data/ljspeech/wavs/LJ027-0152.wav|tests/data/ljspeech/wavs/LJ027-0152.npy -tests/data/ljspeech/wavs/LJ030-0142.wav|tests/data/ljspeech/wavs/LJ030-0142.npy -tests/data/ljspeech/wavs/LJ032-0160.wav|tests/data/ljspeech/wavs/LJ032-0160.npy -tests/data/ljspeech/wavs/LJ028-0370.wav|tests/data/ljspeech/wavs/LJ028-0370.npy -tests/data/ljspeech/wavs/LJ047-0032.wav|tests/data/ljspeech/wavs/LJ047-0032.npy -tests/data/ljspeech/wavs/LJ019-0240.wav|tests/data/ljspeech/wavs/LJ019-0240.npy -tests/data/ljspeech/wavs/LJ032-0185.wav|tests/data/ljspeech/wavs/LJ032-0185.npy -tests/data/ljspeech/wavs/LJ050-0167.wav|tests/data/ljspeech/wavs/LJ050-0167.npy -tests/data/ljspeech/wavs/LJ049-0063.wav|tests/data/ljspeech/wavs/LJ049-0063.npy -tests/data/ljspeech/wavs/LJ031-0040.wav|tests/data/ljspeech/wavs/LJ031-0040.npy -tests/data/ljspeech/wavs/LJ036-0026.wav|tests/data/ljspeech/wavs/LJ036-0026.npy -tests/data/ljspeech/wavs/LJ050-0271.wav|tests/data/ljspeech/wavs/LJ050-0271.npy -tests/data/ljspeech/wavs/LJ032-0174.wav|tests/data/ljspeech/wavs/LJ032-0174.npy -tests/data/ljspeech/wavs/LJ005-0206.wav|tests/data/ljspeech/wavs/LJ005-0206.npy -tests/data/ljspeech/wavs/LJ015-0283.wav|tests/data/ljspeech/wavs/LJ015-0283.npy -tests/data/ljspeech/wavs/LJ043-0166.wav|tests/data/ljspeech/wavs/LJ043-0166.npy -tests/data/ljspeech/wavs/LJ037-0016.wav|tests/data/ljspeech/wavs/LJ037-0016.npy -tests/data/ljspeech/wavs/LJ032-0236.wav|tests/data/ljspeech/wavs/LJ032-0236.npy -tests/data/ljspeech/wavs/LJ024-0039.wav|tests/data/ljspeech/wavs/LJ024-0039.npy -tests/data/ljspeech/wavs/LJ005-0259.wav|tests/data/ljspeech/wavs/LJ005-0259.npy -tests/data/ljspeech/wavs/LJ010-0248.wav|tests/data/ljspeech/wavs/LJ010-0248.npy -tests/data/ljspeech/wavs/LJ041-0006.wav|tests/data/ljspeech/wavs/LJ041-0006.npy -tests/data/ljspeech/wavs/LJ043-0165.wav|tests/data/ljspeech/wavs/LJ043-0165.npy -tests/data/ljspeech/wavs/LJ019-0192.wav|tests/data/ljspeech/wavs/LJ019-0192.npy -tests/data/ljspeech/wavs/LJ002-0284.wav|tests/data/ljspeech/wavs/LJ002-0284.npy -tests/data/ljspeech/wavs/LJ019-0152.wav|tests/data/ljspeech/wavs/LJ019-0152.npy -tests/data/ljspeech/wavs/LJ027-0171.wav|tests/data/ljspeech/wavs/LJ027-0171.npy -tests/data/ljspeech/wavs/LJ028-0396.wav|tests/data/ljspeech/wavs/LJ028-0396.npy -tests/data/ljspeech/wavs/LJ023-0047.wav|tests/data/ljspeech/wavs/LJ023-0047.npy -tests/data/ljspeech/wavs/LJ035-0107.wav|tests/data/ljspeech/wavs/LJ035-0107.npy -tests/data/ljspeech/wavs/LJ033-0118.wav|tests/data/ljspeech/wavs/LJ033-0118.npy -tests/data/ljspeech/wavs/LJ033-0005.wav|tests/data/ljspeech/wavs/LJ033-0005.npy -tests/data/ljspeech/wavs/LJ040-0110.wav|tests/data/ljspeech/wavs/LJ040-0110.npy -tests/data/ljspeech/wavs/LJ001-0019.wav|tests/data/ljspeech/wavs/LJ001-0019.npy -tests/data/ljspeech/wavs/LJ003-0046.wav|tests/data/ljspeech/wavs/LJ003-0046.npy -tests/data/ljspeech/wavs/LJ036-0006.wav|tests/data/ljspeech/wavs/LJ036-0006.npy -tests/data/ljspeech/wavs/LJ031-0109.wav|tests/data/ljspeech/wavs/LJ031-0109.npy -tests/data/ljspeech/wavs/LJ042-0083.wav|tests/data/ljspeech/wavs/LJ042-0083.npy -tests/data/ljspeech/wavs/LJ028-0423.wav|tests/data/ljspeech/wavs/LJ028-0423.npy -tests/data/ljspeech/wavs/LJ048-0140.wav|tests/data/ljspeech/wavs/LJ048-0140.npy -tests/data/ljspeech/wavs/LJ008-0029.wav|tests/data/ljspeech/wavs/LJ008-0029.npy -tests/data/ljspeech/wavs/LJ006-0244.wav|tests/data/ljspeech/wavs/LJ006-0244.npy -tests/data/ljspeech/wavs/LJ010-0273.wav|tests/data/ljspeech/wavs/LJ010-0273.npy -tests/data/ljspeech/wavs/LJ019-0382.wav|tests/data/ljspeech/wavs/LJ019-0382.npy -tests/data/ljspeech/wavs/LJ042-0042.wav|tests/data/ljspeech/wavs/LJ042-0042.npy -tests/data/ljspeech/wavs/LJ019-0262.wav|tests/data/ljspeech/wavs/LJ019-0262.npy -tests/data/ljspeech/wavs/LJ048-0171.wav|tests/data/ljspeech/wavs/LJ048-0171.npy -tests/data/ljspeech/wavs/LJ043-0116.wav|tests/data/ljspeech/wavs/LJ043-0116.npy -tests/data/ljspeech/wavs/LJ010-0312.wav|tests/data/ljspeech/wavs/LJ010-0312.npy -tests/data/ljspeech/wavs/LJ008-0129.wav|tests/data/ljspeech/wavs/LJ008-0129.npy -tests/data/ljspeech/wavs/LJ042-0067.wav|tests/data/ljspeech/wavs/LJ042-0067.npy -tests/data/ljspeech/wavs/LJ007-0206.wav|tests/data/ljspeech/wavs/LJ007-0206.npy -tests/data/ljspeech/wavs/LJ028-0307.wav|tests/data/ljspeech/wavs/LJ028-0307.npy -tests/data/ljspeech/wavs/LJ031-0219.wav|tests/data/ljspeech/wavs/LJ031-0219.npy -tests/data/ljspeech/wavs/LJ048-0252.wav|tests/data/ljspeech/wavs/LJ048-0252.npy -tests/data/ljspeech/wavs/LJ008-0109.wav|tests/data/ljspeech/wavs/LJ008-0109.npy -tests/data/ljspeech/wavs/LJ048-0138.wav|tests/data/ljspeech/wavs/LJ048-0138.npy -tests/data/ljspeech/wavs/LJ050-0168.wav|tests/data/ljspeech/wavs/LJ050-0168.npy -tests/data/ljspeech/wavs/LJ019-0251.wav|tests/data/ljspeech/wavs/LJ019-0251.npy -tests/data/ljspeech/wavs/LJ028-0431.wav|tests/data/ljspeech/wavs/LJ028-0431.npy -tests/data/ljspeech/wavs/LJ028-0308.wav|tests/data/ljspeech/wavs/LJ028-0308.npy -tests/data/ljspeech/wavs/LJ011-0017.wav|tests/data/ljspeech/wavs/LJ011-0017.npy -tests/data/ljspeech/wavs/LJ008-0164.wav|tests/data/ljspeech/wavs/LJ008-0164.npy -tests/data/ljspeech/wavs/LJ007-0041.wav|tests/data/ljspeech/wavs/LJ007-0041.npy -tests/data/ljspeech/wavs/LJ025-0112.wav|tests/data/ljspeech/wavs/LJ025-0112.npy -tests/data/ljspeech/wavs/LJ020-0076.wav|tests/data/ljspeech/wavs/LJ020-0076.npy -tests/data/ljspeech/wavs/LJ043-0101.wav|tests/data/ljspeech/wavs/LJ043-0101.npy -tests/data/ljspeech/wavs/LJ031-0061.wav|tests/data/ljspeech/wavs/LJ031-0061.npy -tests/data/ljspeech/wavs/LJ015-0073.wav|tests/data/ljspeech/wavs/LJ015-0073.npy -tests/data/ljspeech/wavs/LJ039-0203.wav|tests/data/ljspeech/wavs/LJ039-0203.npy -tests/data/ljspeech/wavs/LJ038-0225.wav|tests/data/ljspeech/wavs/LJ038-0225.npy -tests/data/ljspeech/wavs/LJ022-0150.wav|tests/data/ljspeech/wavs/LJ022-0150.npy -tests/data/ljspeech/wavs/LJ045-0089.wav|tests/data/ljspeech/wavs/LJ045-0089.npy -tests/data/ljspeech/wavs/LJ030-0095.wav|tests/data/ljspeech/wavs/LJ030-0095.npy -tests/data/ljspeech/wavs/LJ019-0087.wav|tests/data/ljspeech/wavs/LJ019-0087.npy -tests/data/ljspeech/wavs/LJ003-0235.wav|tests/data/ljspeech/wavs/LJ003-0235.npy -tests/data/ljspeech/wavs/LJ044-0198.wav|tests/data/ljspeech/wavs/LJ044-0198.npy -tests/data/ljspeech/wavs/LJ035-0194.wav|tests/data/ljspeech/wavs/LJ035-0194.npy -tests/data/ljspeech/wavs/LJ022-0166.wav|tests/data/ljspeech/wavs/LJ022-0166.npy -tests/data/ljspeech/wavs/LJ018-0382.wav|tests/data/ljspeech/wavs/LJ018-0382.npy -tests/data/ljspeech/wavs/LJ011-0219.wav|tests/data/ljspeech/wavs/LJ011-0219.npy -tests/data/ljspeech/wavs/LJ045-0116.wav|tests/data/ljspeech/wavs/LJ045-0116.npy -tests/data/ljspeech/wavs/LJ043-0120.wav|tests/data/ljspeech/wavs/LJ043-0120.npy -tests/data/ljspeech/wavs/LJ013-0157.wav|tests/data/ljspeech/wavs/LJ013-0157.npy -tests/data/ljspeech/wavs/LJ015-0095.wav|tests/data/ljspeech/wavs/LJ015-0095.npy -tests/data/ljspeech/wavs/LJ022-0133.wav|tests/data/ljspeech/wavs/LJ022-0133.npy -tests/data/ljspeech/wavs/LJ045-0053.wav|tests/data/ljspeech/wavs/LJ045-0053.npy -tests/data/ljspeech/wavs/LJ048-0183.wav|tests/data/ljspeech/wavs/LJ048-0183.npy -tests/data/ljspeech/wavs/LJ045-0054.wav|tests/data/ljspeech/wavs/LJ045-0054.npy -tests/data/ljspeech/wavs/LJ014-0269.wav|tests/data/ljspeech/wavs/LJ014-0269.npy -tests/data/ljspeech/wavs/LJ018-0397.wav|tests/data/ljspeech/wavs/LJ018-0397.npy -tests/data/ljspeech/wavs/LJ003-0245.wav|tests/data/ljspeech/wavs/LJ003-0245.npy -tests/data/ljspeech/wavs/LJ014-0273.wav|tests/data/ljspeech/wavs/LJ014-0273.npy -tests/data/ljspeech/wavs/LJ037-0269.wav|tests/data/ljspeech/wavs/LJ037-0269.npy -tests/data/ljspeech/wavs/LJ014-0126.wav|tests/data/ljspeech/wavs/LJ014-0126.npy -tests/data/ljspeech/wavs/LJ018-0387.wav|tests/data/ljspeech/wavs/LJ018-0387.npy -tests/data/ljspeech/wavs/LJ006-0088.wav|tests/data/ljspeech/wavs/LJ006-0088.npy -tests/data/ljspeech/wavs/LJ014-0042.wav|tests/data/ljspeech/wavs/LJ014-0042.npy -tests/data/ljspeech/wavs/LJ014-0007.wav|tests/data/ljspeech/wavs/LJ014-0007.npy -tests/data/ljspeech/wavs/LJ043-0072.wav|tests/data/ljspeech/wavs/LJ043-0072.npy -tests/data/ljspeech/wavs/LJ042-0247.wav|tests/data/ljspeech/wavs/LJ042-0247.npy -tests/data/ljspeech/wavs/LJ044-0145.wav|tests/data/ljspeech/wavs/LJ044-0145.npy -tests/data/ljspeech/wavs/LJ012-0151.wav|tests/data/ljspeech/wavs/LJ012-0151.npy -tests/data/ljspeech/wavs/LJ036-0124.wav|tests/data/ljspeech/wavs/LJ036-0124.npy -tests/data/ljspeech/wavs/LJ035-0008.wav|tests/data/ljspeech/wavs/LJ035-0008.npy -tests/data/ljspeech/wavs/LJ022-0043.wav|tests/data/ljspeech/wavs/LJ022-0043.npy -tests/data/ljspeech/wavs/LJ036-0119.wav|tests/data/ljspeech/wavs/LJ036-0119.npy -tests/data/ljspeech/wavs/LJ026-0051.wav|tests/data/ljspeech/wavs/LJ026-0051.npy -tests/data/ljspeech/wavs/LJ048-0065.wav|tests/data/ljspeech/wavs/LJ048-0065.npy -tests/data/ljspeech/wavs/LJ040-0072.wav|tests/data/ljspeech/wavs/LJ040-0072.npy -tests/data/ljspeech/wavs/LJ013-0123.wav|tests/data/ljspeech/wavs/LJ013-0123.npy -tests/data/ljspeech/wavs/LJ005-0032.wav|tests/data/ljspeech/wavs/LJ005-0032.npy -tests/data/ljspeech/wavs/LJ036-0019.wav|tests/data/ljspeech/wavs/LJ036-0019.npy -tests/data/ljspeech/wavs/LJ038-0073.wav|tests/data/ljspeech/wavs/LJ038-0073.npy -tests/data/ljspeech/wavs/LJ042-0188.wav|tests/data/ljspeech/wavs/LJ042-0188.npy -tests/data/ljspeech/wavs/LJ041-0004.wav|tests/data/ljspeech/wavs/LJ041-0004.npy -tests/data/ljspeech/wavs/LJ038-0270.wav|tests/data/ljspeech/wavs/LJ038-0270.npy -tests/data/ljspeech/wavs/LJ012-0226.wav|tests/data/ljspeech/wavs/LJ012-0226.npy -tests/data/ljspeech/wavs/LJ044-0002.wav|tests/data/ljspeech/wavs/LJ044-0002.npy -tests/data/ljspeech/wavs/LJ028-0242.wav|tests/data/ljspeech/wavs/LJ028-0242.npy -tests/data/ljspeech/wavs/LJ034-0013.wav|tests/data/ljspeech/wavs/LJ034-0013.npy -tests/data/ljspeech/wavs/LJ005-0022.wav|tests/data/ljspeech/wavs/LJ005-0022.npy -tests/data/ljspeech/wavs/LJ028-0245.wav|tests/data/ljspeech/wavs/LJ028-0245.npy -tests/data/ljspeech/wavs/LJ046-0105.wav|tests/data/ljspeech/wavs/LJ046-0105.npy -tests/data/ljspeech/wavs/LJ040-0021.wav|tests/data/ljspeech/wavs/LJ040-0021.npy -tests/data/ljspeech/wavs/LJ039-0221.wav|tests/data/ljspeech/wavs/LJ039-0221.npy -tests/data/ljspeech/wavs/LJ028-0247.wav|tests/data/ljspeech/wavs/LJ028-0247.npy -tests/data/ljspeech/wavs/LJ034-0180.wav|tests/data/ljspeech/wavs/LJ034-0180.npy -tests/data/ljspeech/wavs/LJ022-0124.wav|tests/data/ljspeech/wavs/LJ022-0124.npy -tests/data/ljspeech/wavs/LJ012-0108.wav|tests/data/ljspeech/wavs/LJ012-0108.npy -tests/data/ljspeech/wavs/LJ032-0196.wav|tests/data/ljspeech/wavs/LJ032-0196.npy -tests/data/ljspeech/wavs/LJ047-0016.wav|tests/data/ljspeech/wavs/LJ047-0016.npy -tests/data/ljspeech/wavs/LJ032-0123.wav|tests/data/ljspeech/wavs/LJ032-0123.npy -tests/data/ljspeech/wavs/LJ050-0094.wav|tests/data/ljspeech/wavs/LJ050-0094.npy -tests/data/ljspeech/wavs/LJ048-0057.wav|tests/data/ljspeech/wavs/LJ048-0057.npy -tests/data/ljspeech/wavs/LJ026-0028.wav|tests/data/ljspeech/wavs/LJ026-0028.npy -tests/data/ljspeech/wavs/LJ026-0081.wav|tests/data/ljspeech/wavs/LJ026-0081.npy -tests/data/ljspeech/wavs/LJ040-0180.wav|tests/data/ljspeech/wavs/LJ040-0180.npy -tests/data/ljspeech/wavs/LJ047-0245.wav|tests/data/ljspeech/wavs/LJ047-0245.npy -tests/data/ljspeech/wavs/LJ017-0191.wav|tests/data/ljspeech/wavs/LJ017-0191.npy -tests/data/ljspeech/wavs/LJ046-0087.wav|tests/data/ljspeech/wavs/LJ046-0087.npy -tests/data/ljspeech/wavs/LJ037-0046.wav|tests/data/ljspeech/wavs/LJ037-0046.npy -tests/data/ljspeech/wavs/LJ031-0004.wav|tests/data/ljspeech/wavs/LJ031-0004.npy -tests/data/ljspeech/wavs/LJ021-0169.wav|tests/data/ljspeech/wavs/LJ021-0169.npy -tests/data/ljspeech/wavs/LJ016-0414.wav|tests/data/ljspeech/wavs/LJ016-0414.npy -tests/data/ljspeech/wavs/LJ003-0341.wav|tests/data/ljspeech/wavs/LJ003-0341.npy -tests/data/ljspeech/wavs/LJ018-0059.wav|tests/data/ljspeech/wavs/LJ018-0059.npy -tests/data/ljspeech/wavs/LJ026-0107.wav|tests/data/ljspeech/wavs/LJ026-0107.npy -tests/data/ljspeech/wavs/LJ016-0040.wav|tests/data/ljspeech/wavs/LJ016-0040.npy -tests/data/ljspeech/wavs/LJ001-0164.wav|tests/data/ljspeech/wavs/LJ001-0164.npy -tests/data/ljspeech/wavs/LJ038-0249.wav|tests/data/ljspeech/wavs/LJ038-0249.npy -tests/data/ljspeech/wavs/LJ033-0141.wav|tests/data/ljspeech/wavs/LJ033-0141.npy -tests/data/ljspeech/wavs/LJ020-0059.wav|tests/data/ljspeech/wavs/LJ020-0059.npy -tests/data/ljspeech/wavs/LJ001-0071.wav|tests/data/ljspeech/wavs/LJ001-0071.npy -tests/data/ljspeech/wavs/LJ041-0140.wav|tests/data/ljspeech/wavs/LJ041-0140.npy -tests/data/ljspeech/wavs/LJ029-0097.wav|tests/data/ljspeech/wavs/LJ029-0097.npy -tests/data/ljspeech/wavs/LJ038-0227.wav|tests/data/ljspeech/wavs/LJ038-0227.npy -tests/data/ljspeech/wavs/LJ048-0245.wav|tests/data/ljspeech/wavs/LJ048-0245.npy -tests/data/ljspeech/wavs/LJ040-0100.wav|tests/data/ljspeech/wavs/LJ040-0100.npy -tests/data/ljspeech/wavs/LJ046-0239.wav|tests/data/ljspeech/wavs/LJ046-0239.npy -tests/data/ljspeech/wavs/LJ046-0119.wav|tests/data/ljspeech/wavs/LJ046-0119.npy -tests/data/ljspeech/wavs/LJ033-0127.wav|tests/data/ljspeech/wavs/LJ033-0127.npy -tests/data/ljspeech/wavs/LJ010-0111.wav|tests/data/ljspeech/wavs/LJ010-0111.npy -tests/data/ljspeech/wavs/LJ008-0187.wav|tests/data/ljspeech/wavs/LJ008-0187.npy -tests/data/ljspeech/wavs/LJ049-0174.wav|tests/data/ljspeech/wavs/LJ049-0174.npy -tests/data/ljspeech/wavs/LJ026-0008.wav|tests/data/ljspeech/wavs/LJ026-0008.npy -tests/data/ljspeech/wavs/LJ006-0144.wav|tests/data/ljspeech/wavs/LJ006-0144.npy -tests/data/ljspeech/wavs/LJ017-0262.wav|tests/data/ljspeech/wavs/LJ017-0262.npy -tests/data/ljspeech/wavs/LJ012-0296.wav|tests/data/ljspeech/wavs/LJ012-0296.npy -tests/data/ljspeech/wavs/LJ027-0021.wav|tests/data/ljspeech/wavs/LJ027-0021.npy -tests/data/ljspeech/wavs/LJ016-0103.wav|tests/data/ljspeech/wavs/LJ016-0103.npy -tests/data/ljspeech/wavs/LJ004-0083.wav|tests/data/ljspeech/wavs/LJ004-0083.npy -tests/data/ljspeech/wavs/LJ005-0091.wav|tests/data/ljspeech/wavs/LJ005-0091.npy -tests/data/ljspeech/wavs/LJ022-0040.wav|tests/data/ljspeech/wavs/LJ022-0040.npy -tests/data/ljspeech/wavs/LJ011-0206.wav|tests/data/ljspeech/wavs/LJ011-0206.npy -tests/data/ljspeech/wavs/LJ027-0033.wav|tests/data/ljspeech/wavs/LJ027-0033.npy -tests/data/ljspeech/wavs/LJ028-0266.wav|tests/data/ljspeech/wavs/LJ028-0266.npy -tests/data/ljspeech/wavs/LJ019-0248.wav|tests/data/ljspeech/wavs/LJ019-0248.npy -tests/data/ljspeech/wavs/LJ027-0045.wav|tests/data/ljspeech/wavs/LJ027-0045.npy -tests/data/ljspeech/wavs/LJ049-0017.wav|tests/data/ljspeech/wavs/LJ049-0017.npy -tests/data/ljspeech/wavs/LJ008-0163.wav|tests/data/ljspeech/wavs/LJ008-0163.npy -tests/data/ljspeech/wavs/LJ013-0065.wav|tests/data/ljspeech/wavs/LJ013-0065.npy -tests/data/ljspeech/wavs/LJ022-0013.wav|tests/data/ljspeech/wavs/LJ022-0013.npy -tests/data/ljspeech/wavs/LJ002-0169.wav|tests/data/ljspeech/wavs/LJ002-0169.npy -tests/data/ljspeech/wavs/LJ015-0009.wav|tests/data/ljspeech/wavs/LJ015-0009.npy -tests/data/ljspeech/wavs/LJ030-0078.wav|tests/data/ljspeech/wavs/LJ030-0078.npy -tests/data/ljspeech/wavs/LJ010-0006.wav|tests/data/ljspeech/wavs/LJ010-0006.npy -tests/data/ljspeech/wavs/LJ003-0224.wav|tests/data/ljspeech/wavs/LJ003-0224.npy -tests/data/ljspeech/wavs/LJ019-0168.wav|tests/data/ljspeech/wavs/LJ019-0168.npy -tests/data/ljspeech/wavs/LJ028-0276.wav|tests/data/ljspeech/wavs/LJ028-0276.npy -tests/data/ljspeech/wavs/LJ021-0203.wav|tests/data/ljspeech/wavs/LJ021-0203.npy -tests/data/ljspeech/wavs/LJ028-0279.wav|tests/data/ljspeech/wavs/LJ028-0279.npy -tests/data/ljspeech/wavs/LJ021-0073.wav|tests/data/ljspeech/wavs/LJ021-0073.npy -tests/data/ljspeech/wavs/LJ029-0206.wav|tests/data/ljspeech/wavs/LJ029-0206.npy -tests/data/ljspeech/wavs/LJ020-0060.wav|tests/data/ljspeech/wavs/LJ020-0060.npy -tests/data/ljspeech/wavs/LJ028-0064.wav|tests/data/ljspeech/wavs/LJ028-0064.npy -tests/data/ljspeech/wavs/LJ011-0216.wav|tests/data/ljspeech/wavs/LJ011-0216.npy -tests/data/ljspeech/wavs/LJ028-0037.wav|tests/data/ljspeech/wavs/LJ028-0037.npy -tests/data/ljspeech/wavs/LJ009-0031.wav|tests/data/ljspeech/wavs/LJ009-0031.npy -tests/data/ljspeech/wavs/LJ019-0362.wav|tests/data/ljspeech/wavs/LJ019-0362.npy -tests/data/ljspeech/wavs/LJ025-0090.wav|tests/data/ljspeech/wavs/LJ025-0090.npy -tests/data/ljspeech/wavs/LJ050-0064.wav|tests/data/ljspeech/wavs/LJ050-0064.npy -tests/data/ljspeech/wavs/LJ050-0083.wav|tests/data/ljspeech/wavs/LJ050-0083.npy -tests/data/ljspeech/wavs/LJ007-0163.wav|tests/data/ljspeech/wavs/LJ007-0163.npy -tests/data/ljspeech/wavs/LJ012-0084.wav|tests/data/ljspeech/wavs/LJ012-0084.npy -tests/data/ljspeech/wavs/LJ027-0025.wav|tests/data/ljspeech/wavs/LJ027-0025.npy -tests/data/ljspeech/wavs/LJ014-0305.wav|tests/data/ljspeech/wavs/LJ014-0305.npy -tests/data/ljspeech/wavs/LJ011-0147.wav|tests/data/ljspeech/wavs/LJ011-0147.npy -tests/data/ljspeech/wavs/LJ050-0090.wav|tests/data/ljspeech/wavs/LJ050-0090.npy -tests/data/ljspeech/wavs/LJ030-0213.wav|tests/data/ljspeech/wavs/LJ030-0213.npy -tests/data/ljspeech/wavs/LJ028-0347.wav|tests/data/ljspeech/wavs/LJ028-0347.npy -tests/data/ljspeech/wavs/LJ002-0098.wav|tests/data/ljspeech/wavs/LJ002-0098.npy -tests/data/ljspeech/wavs/LJ006-0064.wav|tests/data/ljspeech/wavs/LJ006-0064.npy -tests/data/ljspeech/wavs/LJ009-0091.wav|tests/data/ljspeech/wavs/LJ009-0091.npy -tests/data/ljspeech/wavs/LJ048-0172.wav|tests/data/ljspeech/wavs/LJ048-0172.npy -tests/data/ljspeech/wavs/LJ023-0129.wav|tests/data/ljspeech/wavs/LJ023-0129.npy -tests/data/ljspeech/wavs/LJ023-0082.wav|tests/data/ljspeech/wavs/LJ023-0082.npy -tests/data/ljspeech/wavs/LJ014-0182.wav|tests/data/ljspeech/wavs/LJ014-0182.npy -tests/data/ljspeech/wavs/LJ009-0046.wav|tests/data/ljspeech/wavs/LJ009-0046.npy -tests/data/ljspeech/wavs/LJ004-0088.wav|tests/data/ljspeech/wavs/LJ004-0088.npy -tests/data/ljspeech/wavs/LJ018-0297.wav|tests/data/ljspeech/wavs/LJ018-0297.npy -tests/data/ljspeech/wavs/LJ016-0265.wav|tests/data/ljspeech/wavs/LJ016-0265.npy -tests/data/ljspeech/wavs/LJ028-0335.wav|tests/data/ljspeech/wavs/LJ028-0335.npy -tests/data/ljspeech/wavs/LJ019-0381.wav|tests/data/ljspeech/wavs/LJ019-0381.npy -tests/data/ljspeech/wavs/LJ012-0076.wav|tests/data/ljspeech/wavs/LJ012-0076.npy -tests/data/ljspeech/wavs/LJ013-0242.wav|tests/data/ljspeech/wavs/LJ013-0242.npy -tests/data/ljspeech/wavs/LJ014-0245.wav|tests/data/ljspeech/wavs/LJ014-0245.npy -tests/data/ljspeech/wavs/LJ029-0067.wav|tests/data/ljspeech/wavs/LJ029-0067.npy -tests/data/ljspeech/wavs/LJ019-0345.wav|tests/data/ljspeech/wavs/LJ019-0345.npy -tests/data/ljspeech/wavs/LJ016-0241.wav|tests/data/ljspeech/wavs/LJ016-0241.npy -tests/data/ljspeech/wavs/LJ019-0278.wav|tests/data/ljspeech/wavs/LJ019-0278.npy -tests/data/ljspeech/wavs/LJ043-0047.wav|tests/data/ljspeech/wavs/LJ043-0047.npy -tests/data/ljspeech/wavs/LJ015-0120.wav|tests/data/ljspeech/wavs/LJ015-0120.npy -tests/data/ljspeech/wavs/LJ050-0272.wav|tests/data/ljspeech/wavs/LJ050-0272.npy -tests/data/ljspeech/wavs/LJ043-0109.wav|tests/data/ljspeech/wavs/LJ043-0109.npy -tests/data/ljspeech/wavs/LJ019-0297.wav|tests/data/ljspeech/wavs/LJ019-0297.npy -tests/data/ljspeech/wavs/LJ019-0266.wav|tests/data/ljspeech/wavs/LJ019-0266.npy -tests/data/ljspeech/wavs/LJ020-0005.wav|tests/data/ljspeech/wavs/LJ020-0005.npy -tests/data/ljspeech/wavs/LJ035-0037.wav|tests/data/ljspeech/wavs/LJ035-0037.npy -tests/data/ljspeech/wavs/LJ010-0190.wav|tests/data/ljspeech/wavs/LJ010-0190.npy -tests/data/ljspeech/wavs/LJ025-0128.wav|tests/data/ljspeech/wavs/LJ025-0128.npy -tests/data/ljspeech/wavs/LJ015-0247.wav|tests/data/ljspeech/wavs/LJ015-0247.npy -tests/data/ljspeech/wavs/LJ005-0181.wav|tests/data/ljspeech/wavs/LJ005-0181.npy -tests/data/ljspeech/wavs/LJ020-0021.wav|tests/data/ljspeech/wavs/LJ020-0021.npy -tests/data/ljspeech/wavs/LJ013-0028.wav|tests/data/ljspeech/wavs/LJ013-0028.npy -tests/data/ljspeech/wavs/LJ002-0221.wav|tests/data/ljspeech/wavs/LJ002-0221.npy -tests/data/ljspeech/wavs/LJ014-0291.wav|tests/data/ljspeech/wavs/LJ014-0291.npy -tests/data/ljspeech/wavs/LJ028-0136.wav|tests/data/ljspeech/wavs/LJ028-0136.npy -tests/data/ljspeech/wavs/LJ009-0133.wav|tests/data/ljspeech/wavs/LJ009-0133.npy -tests/data/ljspeech/wavs/LJ011-0276.wav|tests/data/ljspeech/wavs/LJ011-0276.npy -tests/data/ljspeech/wavs/LJ025-0131.wav|tests/data/ljspeech/wavs/LJ025-0131.npy -tests/data/ljspeech/wavs/LJ001-0042.wav|tests/data/ljspeech/wavs/LJ001-0042.npy -tests/data/ljspeech/wavs/LJ028-0186.wav|tests/data/ljspeech/wavs/LJ028-0186.npy -tests/data/ljspeech/wavs/LJ018-0389.wav|tests/data/ljspeech/wavs/LJ018-0389.npy -tests/data/ljspeech/wavs/LJ008-0140.wav|tests/data/ljspeech/wavs/LJ008-0140.npy -tests/data/ljspeech/wavs/LJ014-0167.wav|tests/data/ljspeech/wavs/LJ014-0167.npy -tests/data/ljspeech/wavs/LJ009-0215.wav|tests/data/ljspeech/wavs/LJ009-0215.npy -tests/data/ljspeech/wavs/LJ012-0232.wav|tests/data/ljspeech/wavs/LJ012-0232.npy -tests/data/ljspeech/wavs/LJ049-0228.wav|tests/data/ljspeech/wavs/LJ049-0228.npy -tests/data/ljspeech/wavs/LJ002-0024.wav|tests/data/ljspeech/wavs/LJ002-0024.npy -tests/data/ljspeech/wavs/LJ004-0090.wav|tests/data/ljspeech/wavs/LJ004-0090.npy -tests/data/ljspeech/wavs/LJ040-0104.wav|tests/data/ljspeech/wavs/LJ040-0104.npy -tests/data/ljspeech/wavs/LJ010-0174.wav|tests/data/ljspeech/wavs/LJ010-0174.npy -tests/data/ljspeech/wavs/LJ046-0086.wav|tests/data/ljspeech/wavs/LJ046-0086.npy -tests/data/ljspeech/wavs/LJ042-0149.wav|tests/data/ljspeech/wavs/LJ042-0149.npy -tests/data/ljspeech/wavs/LJ016-0235.wav|tests/data/ljspeech/wavs/LJ016-0235.npy -tests/data/ljspeech/wavs/LJ016-0224.wav|tests/data/ljspeech/wavs/LJ016-0224.npy -tests/data/ljspeech/wavs/LJ007-0157.wav|tests/data/ljspeech/wavs/LJ007-0157.npy -tests/data/ljspeech/wavs/LJ014-0266.wav|tests/data/ljspeech/wavs/LJ014-0266.npy -tests/data/ljspeech/wavs/LJ048-0270.wav|tests/data/ljspeech/wavs/LJ048-0270.npy -tests/data/ljspeech/wavs/LJ008-0045.wav|tests/data/ljspeech/wavs/LJ008-0045.npy -tests/data/ljspeech/wavs/LJ044-0200.wav|tests/data/ljspeech/wavs/LJ044-0200.npy -tests/data/ljspeech/wavs/LJ044-0103.wav|tests/data/ljspeech/wavs/LJ044-0103.npy -tests/data/ljspeech/wavs/LJ037-0064.wav|tests/data/ljspeech/wavs/LJ037-0064.npy -tests/data/ljspeech/wavs/LJ006-0140.wav|tests/data/ljspeech/wavs/LJ006-0140.npy -tests/data/ljspeech/wavs/LJ038-0101.wav|tests/data/ljspeech/wavs/LJ038-0101.npy -tests/data/ljspeech/wavs/LJ040-0160.wav|tests/data/ljspeech/wavs/LJ040-0160.npy -tests/data/ljspeech/wavs/LJ010-0177.wav|tests/data/ljspeech/wavs/LJ010-0177.npy -tests/data/ljspeech/wavs/LJ038-0137.wav|tests/data/ljspeech/wavs/LJ038-0137.npy -tests/data/ljspeech/wavs/LJ047-0138.wav|tests/data/ljspeech/wavs/LJ047-0138.npy -tests/data/ljspeech/wavs/LJ046-0080.wav|tests/data/ljspeech/wavs/LJ046-0080.npy -tests/data/ljspeech/wavs/LJ005-0168.wav|tests/data/ljspeech/wavs/LJ005-0168.npy -tests/data/ljspeech/wavs/LJ048-0277.wav|tests/data/ljspeech/wavs/LJ048-0277.npy -tests/data/ljspeech/wavs/LJ014-0192.wav|tests/data/ljspeech/wavs/LJ014-0192.npy -tests/data/ljspeech/wavs/LJ008-0076.wav|tests/data/ljspeech/wavs/LJ008-0076.npy -tests/data/ljspeech/wavs/LJ028-0399.wav|tests/data/ljspeech/wavs/LJ028-0399.npy -tests/data/ljspeech/wavs/LJ032-0121.wav|tests/data/ljspeech/wavs/LJ032-0121.npy -tests/data/ljspeech/wavs/LJ002-0071.wav|tests/data/ljspeech/wavs/LJ002-0071.npy -tests/data/ljspeech/wavs/LJ010-0133.wav|tests/data/ljspeech/wavs/LJ010-0133.npy -tests/data/ljspeech/wavs/LJ013-0070.wav|tests/data/ljspeech/wavs/LJ013-0070.npy -tests/data/ljspeech/wavs/LJ031-0221.wav|tests/data/ljspeech/wavs/LJ031-0221.npy -tests/data/ljspeech/wavs/LJ033-0077.wav|tests/data/ljspeech/wavs/LJ033-0077.npy -tests/data/ljspeech/wavs/LJ006-0001.wav|tests/data/ljspeech/wavs/LJ006-0001.npy -tests/data/ljspeech/wavs/LJ023-0078.wav|tests/data/ljspeech/wavs/LJ023-0078.npy -tests/data/ljspeech/wavs/LJ048-0028.wav|tests/data/ljspeech/wavs/LJ048-0028.npy -tests/data/ljspeech/wavs/LJ025-0104.wav|tests/data/ljspeech/wavs/LJ025-0104.npy -tests/data/ljspeech/wavs/LJ022-0198.wav|tests/data/ljspeech/wavs/LJ022-0198.npy -tests/data/ljspeech/wavs/LJ009-0202.wav|tests/data/ljspeech/wavs/LJ009-0202.npy -tests/data/ljspeech/wavs/LJ015-0092.wav|tests/data/ljspeech/wavs/LJ015-0092.npy -tests/data/ljspeech/wavs/LJ009-0136.wav|tests/data/ljspeech/wavs/LJ009-0136.npy -tests/data/ljspeech/wavs/LJ027-0134.wav|tests/data/ljspeech/wavs/LJ027-0134.npy -tests/data/ljspeech/wavs/LJ022-0088.wav|tests/data/ljspeech/wavs/LJ022-0088.npy -tests/data/ljspeech/wavs/LJ022-0177.wav|tests/data/ljspeech/wavs/LJ022-0177.npy -tests/data/ljspeech/wavs/LJ037-0268.wav|tests/data/ljspeech/wavs/LJ037-0268.npy -tests/data/ljspeech/wavs/LJ023-0126.wav|tests/data/ljspeech/wavs/LJ023-0126.npy -tests/data/ljspeech/wavs/LJ009-0101.wav|tests/data/ljspeech/wavs/LJ009-0101.npy -tests/data/ljspeech/wavs/LJ025-0172.wav|tests/data/ljspeech/wavs/LJ025-0172.npy -tests/data/ljspeech/wavs/LJ037-0258.wav|tests/data/ljspeech/wavs/LJ037-0258.npy -tests/data/ljspeech/wavs/LJ025-0073.wav|tests/data/ljspeech/wavs/LJ025-0073.npy -tests/data/ljspeech/wavs/LJ015-0239.wav|tests/data/ljspeech/wavs/LJ015-0239.npy -tests/data/ljspeech/wavs/LJ023-0064.wav|tests/data/ljspeech/wavs/LJ023-0064.npy -tests/data/ljspeech/wavs/LJ025-0142.wav|tests/data/ljspeech/wavs/LJ025-0142.npy -tests/data/ljspeech/wavs/LJ037-0234.wav|tests/data/ljspeech/wavs/LJ037-0234.npy -tests/data/ljspeech/wavs/LJ038-0005.wav|tests/data/ljspeech/wavs/LJ038-0005.npy -tests/data/ljspeech/wavs/LJ009-0072.wav|tests/data/ljspeech/wavs/LJ009-0072.npy -tests/data/ljspeech/wavs/LJ028-0101.wav|tests/data/ljspeech/wavs/LJ028-0101.npy -tests/data/ljspeech/wavs/LJ015-0197.wav|tests/data/ljspeech/wavs/LJ015-0197.npy -tests/data/ljspeech/wavs/LJ025-0149.wav|tests/data/ljspeech/wavs/LJ025-0149.npy -tests/data/ljspeech/wavs/LJ025-0029.wav|tests/data/ljspeech/wavs/LJ025-0029.npy -tests/data/ljspeech/wavs/LJ044-0235.wav|tests/data/ljspeech/wavs/LJ044-0235.npy -tests/data/ljspeech/wavs/LJ002-0278.wav|tests/data/ljspeech/wavs/LJ002-0278.npy -tests/data/ljspeech/wavs/LJ004-0043.wav|tests/data/ljspeech/wavs/LJ004-0043.npy -tests/data/ljspeech/wavs/LJ033-0109.wav|tests/data/ljspeech/wavs/LJ033-0109.npy -tests/data/ljspeech/wavs/LJ026-0114.wav|tests/data/ljspeech/wavs/LJ026-0114.npy -tests/data/ljspeech/wavs/LJ008-0196.wav|tests/data/ljspeech/wavs/LJ008-0196.npy -tests/data/ljspeech/wavs/LJ002-0137.wav|tests/data/ljspeech/wavs/LJ002-0137.npy -tests/data/ljspeech/wavs/LJ032-0192.wav|tests/data/ljspeech/wavs/LJ032-0192.npy -tests/data/ljspeech/wavs/LJ045-0017.wav|tests/data/ljspeech/wavs/LJ045-0017.npy -tests/data/ljspeech/wavs/LJ021-0190.wav|tests/data/ljspeech/wavs/LJ021-0190.npy -tests/data/ljspeech/wavs/LJ037-0189.wav|tests/data/ljspeech/wavs/LJ037-0189.npy -tests/data/ljspeech/wavs/LJ025-0080.wav|tests/data/ljspeech/wavs/LJ025-0080.npy -tests/data/ljspeech/wavs/LJ021-0137.wav|tests/data/ljspeech/wavs/LJ021-0137.npy -tests/data/ljspeech/wavs/LJ034-0214.wav|tests/data/ljspeech/wavs/LJ034-0214.npy -tests/data/ljspeech/wavs/LJ028-0110.wav|tests/data/ljspeech/wavs/LJ028-0110.npy -tests/data/ljspeech/wavs/LJ048-0210.wav|tests/data/ljspeech/wavs/LJ048-0210.npy -tests/data/ljspeech/wavs/LJ010-0050.wav|tests/data/ljspeech/wavs/LJ010-0050.npy -tests/data/ljspeech/wavs/LJ009-0087.wav|tests/data/ljspeech/wavs/LJ009-0087.npy -tests/data/ljspeech/wavs/LJ046-0029.wav|tests/data/ljspeech/wavs/LJ046-0029.npy -tests/data/ljspeech/wavs/LJ048-0020.wav|tests/data/ljspeech/wavs/LJ048-0020.npy -tests/data/ljspeech/wavs/LJ008-0305.wav|tests/data/ljspeech/wavs/LJ008-0305.npy -tests/data/ljspeech/wavs/LJ020-0045.wav|tests/data/ljspeech/wavs/LJ020-0045.npy -tests/data/ljspeech/wavs/LJ004-0003.wav|tests/data/ljspeech/wavs/LJ004-0003.npy -tests/data/ljspeech/wavs/LJ038-0057.wav|tests/data/ljspeech/wavs/LJ038-0057.npy -tests/data/ljspeech/wavs/LJ008-0145.wav|tests/data/ljspeech/wavs/LJ008-0145.npy -tests/data/ljspeech/wavs/LJ010-0066.wav|tests/data/ljspeech/wavs/LJ010-0066.npy -tests/data/ljspeech/wavs/LJ032-0152.wav|tests/data/ljspeech/wavs/LJ032-0152.npy -tests/data/ljspeech/wavs/LJ046-0203.wav|tests/data/ljspeech/wavs/LJ046-0203.npy -tests/data/ljspeech/wavs/LJ012-0088.wav|tests/data/ljspeech/wavs/LJ012-0088.npy -tests/data/ljspeech/wavs/LJ003-0060.wav|tests/data/ljspeech/wavs/LJ003-0060.npy -tests/data/ljspeech/wavs/LJ014-0339.wav|tests/data/ljspeech/wavs/LJ014-0339.npy -tests/data/ljspeech/wavs/LJ006-0062.wav|tests/data/ljspeech/wavs/LJ006-0062.npy -tests/data/ljspeech/wavs/LJ003-0059.wav|tests/data/ljspeech/wavs/LJ003-0059.npy -tests/data/ljspeech/wavs/LJ034-0218.wav|tests/data/ljspeech/wavs/LJ034-0218.npy -tests/data/ljspeech/wavs/LJ034-0190.wav|tests/data/ljspeech/wavs/LJ034-0190.npy -tests/data/ljspeech/wavs/LJ038-0030.wav|tests/data/ljspeech/wavs/LJ038-0030.npy -tests/data/ljspeech/wavs/LJ044-0140.wav|tests/data/ljspeech/wavs/LJ044-0140.npy -tests/data/ljspeech/wavs/LJ032-0246.wav|tests/data/ljspeech/wavs/LJ032-0246.npy -tests/data/ljspeech/wavs/LJ036-0154.wav|tests/data/ljspeech/wavs/LJ036-0154.npy -tests/data/ljspeech/wavs/LJ038-0281.wav|tests/data/ljspeech/wavs/LJ038-0281.npy -tests/data/ljspeech/wavs/LJ011-0245.wav|tests/data/ljspeech/wavs/LJ011-0245.npy -tests/data/ljspeech/wavs/LJ037-0029.wav|tests/data/ljspeech/wavs/LJ037-0029.npy -tests/data/ljspeech/wavs/LJ027-0016.wav|tests/data/ljspeech/wavs/LJ027-0016.npy -tests/data/ljspeech/wavs/LJ047-0029.wav|tests/data/ljspeech/wavs/LJ047-0029.npy -tests/data/ljspeech/wavs/LJ006-0193.wav|tests/data/ljspeech/wavs/LJ006-0193.npy -tests/data/ljspeech/wavs/LJ014-0080.wav|tests/data/ljspeech/wavs/LJ014-0080.npy -tests/data/ljspeech/wavs/LJ005-0263.wav|tests/data/ljspeech/wavs/LJ005-0263.npy -tests/data/ljspeech/wavs/LJ038-0037.wav|tests/data/ljspeech/wavs/LJ038-0037.npy -tests/data/ljspeech/wavs/LJ030-0033.wav|tests/data/ljspeech/wavs/LJ030-0033.npy -tests/data/ljspeech/wavs/LJ005-0109.wav|tests/data/ljspeech/wavs/LJ005-0109.npy -tests/data/ljspeech/wavs/LJ021-0078.wav|tests/data/ljspeech/wavs/LJ021-0078.npy -tests/data/ljspeech/wavs/LJ048-0162.wav|tests/data/ljspeech/wavs/LJ048-0162.npy -tests/data/ljspeech/wavs/LJ018-0057.wav|tests/data/ljspeech/wavs/LJ018-0057.npy -tests/data/ljspeech/wavs/LJ021-0087.wav|tests/data/ljspeech/wavs/LJ021-0087.npy -tests/data/ljspeech/wavs/LJ042-0221.wav|tests/data/ljspeech/wavs/LJ042-0221.npy -tests/data/ljspeech/wavs/LJ048-0121.wav|tests/data/ljspeech/wavs/LJ048-0121.npy -tests/data/ljspeech/wavs/LJ030-0128.wav|tests/data/ljspeech/wavs/LJ030-0128.npy -tests/data/ljspeech/wavs/LJ014-0121.wav|tests/data/ljspeech/wavs/LJ014-0121.npy -tests/data/ljspeech/wavs/LJ011-0051.wav|tests/data/ljspeech/wavs/LJ011-0051.npy -tests/data/ljspeech/wavs/LJ040-0219.wav|tests/data/ljspeech/wavs/LJ040-0219.npy -tests/data/ljspeech/wavs/LJ033-0053.wav|tests/data/ljspeech/wavs/LJ033-0053.npy -tests/data/ljspeech/wavs/LJ038-0272.wav|tests/data/ljspeech/wavs/LJ038-0272.npy -tests/data/ljspeech/wavs/LJ014-0128.wav|tests/data/ljspeech/wavs/LJ014-0128.npy -tests/data/ljspeech/wavs/LJ018-0204.wav|tests/data/ljspeech/wavs/LJ018-0204.npy -tests/data/ljspeech/wavs/LJ003-0158.wav|tests/data/ljspeech/wavs/LJ003-0158.npy -tests/data/ljspeech/wavs/LJ028-0230.wav|tests/data/ljspeech/wavs/LJ028-0230.npy -tests/data/ljspeech/wavs/LJ016-0320.wav|tests/data/ljspeech/wavs/LJ016-0320.npy -tests/data/ljspeech/wavs/LJ017-0147.wav|tests/data/ljspeech/wavs/LJ017-0147.npy -tests/data/ljspeech/wavs/LJ043-0079.wav|tests/data/ljspeech/wavs/LJ043-0079.npy -tests/data/ljspeech/wavs/LJ044-0066.wav|tests/data/ljspeech/wavs/LJ044-0066.npy -tests/data/ljspeech/wavs/LJ011-0241.wav|tests/data/ljspeech/wavs/LJ011-0241.npy -tests/data/ljspeech/wavs/LJ030-0206.wav|tests/data/ljspeech/wavs/LJ030-0206.npy -tests/data/ljspeech/wavs/LJ046-0147.wav|tests/data/ljspeech/wavs/LJ046-0147.npy -tests/data/ljspeech/wavs/LJ043-0039.wav|tests/data/ljspeech/wavs/LJ043-0039.npy -tests/data/ljspeech/wavs/LJ036-0089.wav|tests/data/ljspeech/wavs/LJ036-0089.npy -tests/data/ljspeech/wavs/LJ049-0060.wav|tests/data/ljspeech/wavs/LJ049-0060.npy -tests/data/ljspeech/wavs/LJ014-0337.wav|tests/data/ljspeech/wavs/LJ014-0337.npy -tests/data/ljspeech/wavs/LJ016-0077.wav|tests/data/ljspeech/wavs/LJ016-0077.npy -tests/data/ljspeech/wavs/LJ036-0085.wav|tests/data/ljspeech/wavs/LJ036-0085.npy -tests/data/ljspeech/wavs/LJ004-0153.wav|tests/data/ljspeech/wavs/LJ004-0153.npy -tests/data/ljspeech/wavs/LJ032-0222.wav|tests/data/ljspeech/wavs/LJ032-0222.npy -tests/data/ljspeech/wavs/LJ008-0212.wav|tests/data/ljspeech/wavs/LJ008-0212.npy -tests/data/ljspeech/wavs/LJ016-0442.wav|tests/data/ljspeech/wavs/LJ016-0442.npy -tests/data/ljspeech/wavs/LJ006-0158.wav|tests/data/ljspeech/wavs/LJ006-0158.npy -tests/data/ljspeech/wavs/LJ013-0257.wav|tests/data/ljspeech/wavs/LJ013-0257.npy -tests/data/ljspeech/wavs/LJ044-0077.wav|tests/data/ljspeech/wavs/LJ044-0077.npy -tests/data/ljspeech/wavs/LJ003-0314.wav|tests/data/ljspeech/wavs/LJ003-0314.npy -tests/data/ljspeech/wavs/LJ013-0066.wav|tests/data/ljspeech/wavs/LJ013-0066.npy -tests/data/ljspeech/wavs/LJ017-0108.wav|tests/data/ljspeech/wavs/LJ017-0108.npy -tests/data/ljspeech/wavs/LJ044-0092.wav|tests/data/ljspeech/wavs/LJ044-0092.npy -tests/data/ljspeech/wavs/LJ011-0037.wav|tests/data/ljspeech/wavs/LJ011-0037.npy -tests/data/ljspeech/wavs/LJ029-0045.wav|tests/data/ljspeech/wavs/LJ029-0045.npy -tests/data/ljspeech/wavs/LJ010-0054.wav|tests/data/ljspeech/wavs/LJ010-0054.npy -tests/data/ljspeech/wavs/LJ011-0009.wav|tests/data/ljspeech/wavs/LJ011-0009.npy -tests/data/ljspeech/wavs/LJ005-0079.wav|tests/data/ljspeech/wavs/LJ005-0079.npy -tests/data/ljspeech/wavs/LJ004-0170.wav|tests/data/ljspeech/wavs/LJ004-0170.npy -tests/data/ljspeech/wavs/LJ005-0108.wav|tests/data/ljspeech/wavs/LJ005-0108.npy -tests/data/ljspeech/wavs/LJ038-0234.wav|tests/data/ljspeech/wavs/LJ038-0234.npy -tests/data/ljspeech/wavs/LJ038-0299.wav|tests/data/ljspeech/wavs/LJ038-0299.npy -tests/data/ljspeech/wavs/LJ001-0180.wav|tests/data/ljspeech/wavs/LJ001-0180.npy -tests/data/ljspeech/wavs/LJ038-0166.wav|tests/data/ljspeech/wavs/LJ038-0166.npy -tests/data/ljspeech/wavs/LJ040-0193.wav|tests/data/ljspeech/wavs/LJ040-0193.npy -tests/data/ljspeech/wavs/LJ050-0227.wav|tests/data/ljspeech/wavs/LJ050-0227.npy -tests/data/ljspeech/wavs/LJ038-0082.wav|tests/data/ljspeech/wavs/LJ038-0082.npy -tests/data/ljspeech/wavs/LJ017-0122.wav|tests/data/ljspeech/wavs/LJ017-0122.npy -tests/data/ljspeech/wavs/LJ007-0001.wav|tests/data/ljspeech/wavs/LJ007-0001.npy -tests/data/ljspeech/wavs/LJ032-0200.wav|tests/data/ljspeech/wavs/LJ032-0200.npy -tests/data/ljspeech/wavs/LJ012-0143.wav|tests/data/ljspeech/wavs/LJ012-0143.npy -tests/data/ljspeech/wavs/LJ027-0169.wav|tests/data/ljspeech/wavs/LJ027-0169.npy -tests/data/ljspeech/wavs/LJ049-0227.wav|tests/data/ljspeech/wavs/LJ049-0227.npy -tests/data/ljspeech/wavs/LJ002-0229.wav|tests/data/ljspeech/wavs/LJ002-0229.npy -tests/data/ljspeech/wavs/LJ007-0077.wav|tests/data/ljspeech/wavs/LJ007-0077.npy -tests/data/ljspeech/wavs/LJ028-0056.wav|tests/data/ljspeech/wavs/LJ028-0056.npy -tests/data/ljspeech/wavs/LJ005-0130.wav|tests/data/ljspeech/wavs/LJ005-0130.npy -tests/data/ljspeech/wavs/LJ040-0036.wav|tests/data/ljspeech/wavs/LJ040-0036.npy -tests/data/ljspeech/wavs/LJ047-0008.wav|tests/data/ljspeech/wavs/LJ047-0008.npy -tests/data/ljspeech/wavs/LJ001-0101.wav|tests/data/ljspeech/wavs/LJ001-0101.npy -tests/data/ljspeech/wavs/LJ014-0336.wav|tests/data/ljspeech/wavs/LJ014-0336.npy -tests/data/ljspeech/wavs/LJ013-0057.wav|tests/data/ljspeech/wavs/LJ013-0057.npy -tests/data/ljspeech/wavs/LJ028-0015.wav|tests/data/ljspeech/wavs/LJ028-0015.npy -tests/data/ljspeech/wavs/LJ019-0351.wav|tests/data/ljspeech/wavs/LJ019-0351.npy -tests/data/ljspeech/wavs/LJ011-0072.wav|tests/data/ljspeech/wavs/LJ011-0072.npy -tests/data/ljspeech/wavs/LJ006-0185.wav|tests/data/ljspeech/wavs/LJ006-0185.npy -tests/data/ljspeech/wavs/LJ022-0068.wav|tests/data/ljspeech/wavs/LJ022-0068.npy -tests/data/ljspeech/wavs/LJ011-0010.wav|tests/data/ljspeech/wavs/LJ011-0010.npy -tests/data/ljspeech/wavs/LJ018-0071.wav|tests/data/ljspeech/wavs/LJ018-0071.npy -tests/data/ljspeech/wavs/LJ028-0194.wav|tests/data/ljspeech/wavs/LJ028-0194.npy -tests/data/ljspeech/wavs/LJ004-0108.wav|tests/data/ljspeech/wavs/LJ004-0108.npy -tests/data/ljspeech/wavs/LJ046-0111.wav|tests/data/ljspeech/wavs/LJ046-0111.npy -tests/data/ljspeech/wavs/LJ003-0255.wav|tests/data/ljspeech/wavs/LJ003-0255.npy -tests/data/ljspeech/wavs/LJ009-0214.wav|tests/data/ljspeech/wavs/LJ009-0214.npy -tests/data/ljspeech/wavs/LJ049-0230.wav|tests/data/ljspeech/wavs/LJ049-0230.npy -tests/data/ljspeech/wavs/LJ037-0005.wav|tests/data/ljspeech/wavs/LJ037-0005.npy -tests/data/ljspeech/wavs/LJ026-0143.wav|tests/data/ljspeech/wavs/LJ026-0143.npy -tests/data/ljspeech/wavs/LJ025-0066.wav|tests/data/ljspeech/wavs/LJ025-0066.npy -tests/data/ljspeech/wavs/LJ023-0135.wav|tests/data/ljspeech/wavs/LJ023-0135.npy -tests/data/ljspeech/wavs/LJ017-0019.wav|tests/data/ljspeech/wavs/LJ017-0019.npy -tests/data/ljspeech/wavs/LJ014-0055.wav|tests/data/ljspeech/wavs/LJ014-0055.npy -tests/data/ljspeech/wavs/LJ047-0083.wav|tests/data/ljspeech/wavs/LJ047-0083.npy -tests/data/ljspeech/wavs/LJ016-0157.wav|tests/data/ljspeech/wavs/LJ016-0157.npy -tests/data/ljspeech/wavs/LJ024-0043.wav|tests/data/ljspeech/wavs/LJ024-0043.npy -tests/data/ljspeech/wavs/LJ030-0247.wav|tests/data/ljspeech/wavs/LJ030-0247.npy -tests/data/ljspeech/wavs/LJ041-0191.wav|tests/data/ljspeech/wavs/LJ041-0191.npy -tests/data/ljspeech/wavs/LJ014-0064.wav|tests/data/ljspeech/wavs/LJ014-0064.npy -tests/data/ljspeech/wavs/LJ024-0079.wav|tests/data/ljspeech/wavs/LJ024-0079.npy -tests/data/ljspeech/wavs/LJ041-0062.wav|tests/data/ljspeech/wavs/LJ041-0062.npy -tests/data/ljspeech/wavs/LJ030-0060.wav|tests/data/ljspeech/wavs/LJ030-0060.npy -tests/data/ljspeech/wavs/LJ022-0032.wav|tests/data/ljspeech/wavs/LJ022-0032.npy -tests/data/ljspeech/wavs/LJ002-0214.wav|tests/data/ljspeech/wavs/LJ002-0214.npy -tests/data/ljspeech/wavs/LJ002-0258.wav|tests/data/ljspeech/wavs/LJ002-0258.npy -tests/data/ljspeech/wavs/LJ023-0100.wav|tests/data/ljspeech/wavs/LJ023-0100.npy -tests/data/ljspeech/wavs/LJ032-0271.wav|tests/data/ljspeech/wavs/LJ032-0271.npy -tests/data/ljspeech/wavs/LJ032-0272.wav|tests/data/ljspeech/wavs/LJ032-0272.npy -tests/data/ljspeech/wavs/LJ013-0229.wav|tests/data/ljspeech/wavs/LJ013-0229.npy -tests/data/ljspeech/wavs/LJ032-0242.wav|tests/data/ljspeech/wavs/LJ032-0242.npy -tests/data/ljspeech/wavs/LJ012-0215.wav|tests/data/ljspeech/wavs/LJ012-0215.npy -tests/data/ljspeech/wavs/LJ022-0015.wav|tests/data/ljspeech/wavs/LJ022-0015.npy -tests/data/ljspeech/wavs/LJ006-0237.wav|tests/data/ljspeech/wavs/LJ006-0237.npy -tests/data/ljspeech/wavs/LJ017-0240.wav|tests/data/ljspeech/wavs/LJ017-0240.npy -tests/data/ljspeech/wavs/LJ017-0055.wav|tests/data/ljspeech/wavs/LJ017-0055.npy -tests/data/ljspeech/wavs/LJ050-0010.wav|tests/data/ljspeech/wavs/LJ050-0010.npy -tests/data/ljspeech/wavs/LJ039-0055.wav|tests/data/ljspeech/wavs/LJ039-0055.npy -tests/data/ljspeech/wavs/LJ015-0227.wav|tests/data/ljspeech/wavs/LJ015-0227.npy -tests/data/ljspeech/wavs/LJ007-0031.wav|tests/data/ljspeech/wavs/LJ007-0031.npy -tests/data/ljspeech/wavs/LJ050-0141.wav|tests/data/ljspeech/wavs/LJ050-0141.npy -tests/data/ljspeech/wavs/LJ018-0317.wav|tests/data/ljspeech/wavs/LJ018-0317.npy -tests/data/ljspeech/wavs/LJ019-0230.wav|tests/data/ljspeech/wavs/LJ019-0230.npy -tests/data/ljspeech/wavs/LJ047-0192.wav|tests/data/ljspeech/wavs/LJ047-0192.npy -tests/data/ljspeech/wavs/LJ016-0313.wav|tests/data/ljspeech/wavs/LJ016-0313.npy -tests/data/ljspeech/wavs/LJ039-0155.wav|tests/data/ljspeech/wavs/LJ039-0155.npy -tests/data/ljspeech/wavs/LJ043-0132.wav|tests/data/ljspeech/wavs/LJ043-0132.npy -tests/data/ljspeech/wavs/LJ021-0143.wav|tests/data/ljspeech/wavs/LJ021-0143.npy -tests/data/ljspeech/wavs/LJ047-0090.wav|tests/data/ljspeech/wavs/LJ047-0090.npy -tests/data/ljspeech/wavs/LJ010-0215.wav|tests/data/ljspeech/wavs/LJ010-0215.npy -tests/data/ljspeech/wavs/LJ033-0027.wav|tests/data/ljspeech/wavs/LJ033-0027.npy -tests/data/ljspeech/wavs/LJ045-0064.wav|tests/data/ljspeech/wavs/LJ045-0064.npy -tests/data/ljspeech/wavs/LJ004-0069.wav|tests/data/ljspeech/wavs/LJ004-0069.npy -tests/data/ljspeech/wavs/LJ018-0246.wav|tests/data/ljspeech/wavs/LJ018-0246.npy -tests/data/ljspeech/wavs/LJ050-0105.wav|tests/data/ljspeech/wavs/LJ050-0105.npy -tests/data/ljspeech/wavs/LJ002-0018.wav|tests/data/ljspeech/wavs/LJ002-0018.npy -tests/data/ljspeech/wavs/LJ045-0138.wav|tests/data/ljspeech/wavs/LJ045-0138.npy -tests/data/ljspeech/wavs/LJ042-0113.wav|tests/data/ljspeech/wavs/LJ042-0113.npy -tests/data/ljspeech/wavs/LJ014-0206.wav|tests/data/ljspeech/wavs/LJ014-0206.npy -tests/data/ljspeech/wavs/LJ010-0194.wav|tests/data/ljspeech/wavs/LJ010-0194.npy -tests/data/ljspeech/wavs/LJ030-0117.wav|tests/data/ljspeech/wavs/LJ030-0117.npy -tests/data/ljspeech/wavs/LJ030-0092.wav|tests/data/ljspeech/wavs/LJ030-0092.npy -tests/data/ljspeech/wavs/LJ039-0057.wav|tests/data/ljspeech/wavs/LJ039-0057.npy -tests/data/ljspeech/wavs/LJ018-0305.wav|tests/data/ljspeech/wavs/LJ018-0305.npy -tests/data/ljspeech/wavs/LJ003-0125.wav|tests/data/ljspeech/wavs/LJ003-0125.npy -tests/data/ljspeech/wavs/LJ035-0126.wav|tests/data/ljspeech/wavs/LJ035-0126.npy -tests/data/ljspeech/wavs/LJ046-0100.wav|tests/data/ljspeech/wavs/LJ046-0100.npy -tests/data/ljspeech/wavs/LJ005-0090.wav|tests/data/ljspeech/wavs/LJ005-0090.npy -tests/data/ljspeech/wavs/LJ049-0023.wav|tests/data/ljspeech/wavs/LJ049-0023.npy -tests/data/ljspeech/wavs/LJ009-0238.wav|tests/data/ljspeech/wavs/LJ009-0238.npy -tests/data/ljspeech/wavs/LJ034-0136.wav|tests/data/ljspeech/wavs/LJ034-0136.npy -tests/data/ljspeech/wavs/LJ046-0229.wav|tests/data/ljspeech/wavs/LJ046-0229.npy -tests/data/ljspeech/wavs/LJ032-0073.wav|tests/data/ljspeech/wavs/LJ032-0073.npy -tests/data/ljspeech/wavs/LJ010-0296.wav|tests/data/ljspeech/wavs/LJ010-0296.npy -tests/data/ljspeech/wavs/LJ037-0246.wav|tests/data/ljspeech/wavs/LJ037-0246.npy -tests/data/ljspeech/wavs/LJ027-0050.wav|tests/data/ljspeech/wavs/LJ027-0050.npy -tests/data/ljspeech/wavs/LJ040-0222.wav|tests/data/ljspeech/wavs/LJ040-0222.npy -tests/data/ljspeech/wavs/LJ045-0156.wav|tests/data/ljspeech/wavs/LJ045-0156.npy -tests/data/ljspeech/wavs/LJ003-0148.wav|tests/data/ljspeech/wavs/LJ003-0148.npy -tests/data/ljspeech/wavs/LJ027-0035.wav|tests/data/ljspeech/wavs/LJ027-0035.npy -tests/data/ljspeech/wavs/LJ038-0119.wav|tests/data/ljspeech/wavs/LJ038-0119.npy -tests/data/ljspeech/wavs/LJ050-0018.wav|tests/data/ljspeech/wavs/LJ050-0018.npy -tests/data/ljspeech/wavs/LJ046-0120.wav|tests/data/ljspeech/wavs/LJ046-0120.npy -tests/data/ljspeech/wavs/LJ010-0245.wav|tests/data/ljspeech/wavs/LJ010-0245.npy -tests/data/ljspeech/wavs/LJ010-0025.wav|tests/data/ljspeech/wavs/LJ010-0025.npy -tests/data/ljspeech/wavs/LJ020-0094.wav|tests/data/ljspeech/wavs/LJ020-0094.npy -tests/data/ljspeech/wavs/LJ005-0177.wav|tests/data/ljspeech/wavs/LJ005-0177.npy -tests/data/ljspeech/wavs/LJ042-0164.wav|tests/data/ljspeech/wavs/LJ042-0164.npy -tests/data/ljspeech/wavs/LJ007-0175.wav|tests/data/ljspeech/wavs/LJ007-0175.npy -tests/data/ljspeech/wavs/LJ015-0018.wav|tests/data/ljspeech/wavs/LJ015-0018.npy -tests/data/ljspeech/wavs/LJ003-0303.wav|tests/data/ljspeech/wavs/LJ003-0303.npy -tests/data/ljspeech/wavs/LJ034-0176.wav|tests/data/ljspeech/wavs/LJ034-0176.npy -tests/data/ljspeech/wavs/LJ018-0264.wav|tests/data/ljspeech/wavs/LJ018-0264.npy -tests/data/ljspeech/wavs/LJ011-0258.wav|tests/data/ljspeech/wavs/LJ011-0258.npy -tests/data/ljspeech/wavs/LJ016-0417.wav|tests/data/ljspeech/wavs/LJ016-0417.npy -tests/data/ljspeech/wavs/LJ021-0066.wav|tests/data/ljspeech/wavs/LJ021-0066.npy -tests/data/ljspeech/wavs/LJ007-0138.wav|tests/data/ljspeech/wavs/LJ007-0138.npy -tests/data/ljspeech/wavs/LJ017-0093.wav|tests/data/ljspeech/wavs/LJ017-0093.npy -tests/data/ljspeech/wavs/LJ029-0060.wav|tests/data/ljspeech/wavs/LJ029-0060.npy -tests/data/ljspeech/wavs/LJ012-0287.wav|tests/data/ljspeech/wavs/LJ012-0287.npy -tests/data/ljspeech/wavs/LJ001-0097.wav|tests/data/ljspeech/wavs/LJ001-0097.npy -tests/data/ljspeech/wavs/LJ007-0187.wav|tests/data/ljspeech/wavs/LJ007-0187.npy -tests/data/ljspeech/wavs/LJ032-0003.wav|tests/data/ljspeech/wavs/LJ032-0003.npy -tests/data/ljspeech/wavs/LJ038-0153.wav|tests/data/ljspeech/wavs/LJ038-0153.npy -tests/data/ljspeech/wavs/LJ043-0005.wav|tests/data/ljspeech/wavs/LJ043-0005.npy -tests/data/ljspeech/wavs/LJ037-0184.wav|tests/data/ljspeech/wavs/LJ037-0184.npy -tests/data/ljspeech/wavs/LJ050-0065.wav|tests/data/ljspeech/wavs/LJ050-0065.npy -tests/data/ljspeech/wavs/LJ012-0247.wav|tests/data/ljspeech/wavs/LJ012-0247.npy -tests/data/ljspeech/wavs/LJ033-0029.wav|tests/data/ljspeech/wavs/LJ033-0029.npy -tests/data/ljspeech/wavs/LJ010-0232.wav|tests/data/ljspeech/wavs/LJ010-0232.npy -tests/data/ljspeech/wavs/LJ011-0115.wav|tests/data/ljspeech/wavs/LJ011-0115.npy -tests/data/ljspeech/wavs/LJ015-0007.wav|tests/data/ljspeech/wavs/LJ015-0007.npy -tests/data/ljspeech/wavs/LJ040-0009.wav|tests/data/ljspeech/wavs/LJ040-0009.npy -tests/data/ljspeech/wavs/LJ031-0201.wav|tests/data/ljspeech/wavs/LJ031-0201.npy -tests/data/ljspeech/wavs/LJ040-0140.wav|tests/data/ljspeech/wavs/LJ040-0140.npy -tests/data/ljspeech/wavs/LJ033-0035.wav|tests/data/ljspeech/wavs/LJ033-0035.npy -tests/data/ljspeech/wavs/LJ015-0011.wav|tests/data/ljspeech/wavs/LJ015-0011.npy -tests/data/ljspeech/wavs/LJ049-0091.wav|tests/data/ljspeech/wavs/LJ049-0091.npy -tests/data/ljspeech/wavs/LJ016-0041.wav|tests/data/ljspeech/wavs/LJ016-0041.npy -tests/data/ljspeech/wavs/LJ010-0002.wav|tests/data/ljspeech/wavs/LJ010-0002.npy -tests/data/ljspeech/wavs/LJ016-0379.wav|tests/data/ljspeech/wavs/LJ016-0379.npy -tests/data/ljspeech/wavs/LJ050-0138.wav|tests/data/ljspeech/wavs/LJ050-0138.npy -tests/data/ljspeech/wavs/LJ050-0022.wav|tests/data/ljspeech/wavs/LJ050-0022.npy -tests/data/ljspeech/wavs/LJ003-0336.wav|tests/data/ljspeech/wavs/LJ003-0336.npy -tests/data/ljspeech/wavs/LJ047-0055.wav|tests/data/ljspeech/wavs/LJ047-0055.npy -tests/data/ljspeech/wavs/LJ034-0024.wav|tests/data/ljspeech/wavs/LJ034-0024.npy -tests/data/ljspeech/wavs/LJ050-0191.wav|tests/data/ljspeech/wavs/LJ050-0191.npy -tests/data/ljspeech/wavs/LJ027-0082.wav|tests/data/ljspeech/wavs/LJ027-0082.npy -tests/data/ljspeech/wavs/LJ002-0054.wav|tests/data/ljspeech/wavs/LJ002-0054.npy -tests/data/ljspeech/wavs/LJ039-0190.wav|tests/data/ljspeech/wavs/LJ039-0190.npy -tests/data/ljspeech/wavs/LJ003-0136.wav|tests/data/ljspeech/wavs/LJ003-0136.npy -tests/data/ljspeech/wavs/LJ011-0185.wav|tests/data/ljspeech/wavs/LJ011-0185.npy -tests/data/ljspeech/wavs/LJ017-0237.wav|tests/data/ljspeech/wavs/LJ017-0237.npy -tests/data/ljspeech/wavs/LJ007-0177.wav|tests/data/ljspeech/wavs/LJ007-0177.npy -tests/data/ljspeech/wavs/LJ039-0053.wav|tests/data/ljspeech/wavs/LJ039-0053.npy -tests/data/ljspeech/wavs/LJ027-0097.wav|tests/data/ljspeech/wavs/LJ027-0097.npy -tests/data/ljspeech/wavs/LJ039-0107.wav|tests/data/ljspeech/wavs/LJ039-0107.npy -tests/data/ljspeech/wavs/LJ040-0091.wav|tests/data/ljspeech/wavs/LJ040-0091.npy -tests/data/ljspeech/wavs/LJ045-0130.wav|tests/data/ljspeech/wavs/LJ045-0130.npy -tests/data/ljspeech/wavs/LJ031-0157.wav|tests/data/ljspeech/wavs/LJ031-0157.npy -tests/data/ljspeech/wavs/LJ017-0070.wav|tests/data/ljspeech/wavs/LJ017-0070.npy -tests/data/ljspeech/wavs/LJ012-0034.wav|tests/data/ljspeech/wavs/LJ012-0034.npy -tests/data/ljspeech/wavs/LJ045-0082.wav|tests/data/ljspeech/wavs/LJ045-0082.npy -tests/data/ljspeech/wavs/LJ038-0036.wav|tests/data/ljspeech/wavs/LJ038-0036.npy -tests/data/ljspeech/wavs/LJ025-0037.wav|tests/data/ljspeech/wavs/LJ025-0037.npy -tests/data/ljspeech/wavs/LJ048-0188.wav|tests/data/ljspeech/wavs/LJ048-0188.npy -tests/data/ljspeech/wavs/LJ012-0189.wav|tests/data/ljspeech/wavs/LJ012-0189.npy -tests/data/ljspeech/wavs/LJ041-0177.wav|tests/data/ljspeech/wavs/LJ041-0177.npy -tests/data/ljspeech/wavs/LJ004-0246.wav|tests/data/ljspeech/wavs/LJ004-0246.npy -tests/data/ljspeech/wavs/LJ017-0131.wav|tests/data/ljspeech/wavs/LJ017-0131.npy -tests/data/ljspeech/wavs/LJ049-0186.wav|tests/data/ljspeech/wavs/LJ049-0186.npy -tests/data/ljspeech/wavs/LJ025-0169.wav|tests/data/ljspeech/wavs/LJ025-0169.npy -tests/data/ljspeech/wavs/LJ006-0181.wav|tests/data/ljspeech/wavs/LJ006-0181.npy -tests/data/ljspeech/wavs/LJ029-0172.wav|tests/data/ljspeech/wavs/LJ029-0172.npy -tests/data/ljspeech/wavs/LJ049-0199.wav|tests/data/ljspeech/wavs/LJ049-0199.npy -tests/data/ljspeech/wavs/LJ006-0200.wav|tests/data/ljspeech/wavs/LJ006-0200.npy -tests/data/ljspeech/wavs/LJ023-0093.wav|tests/data/ljspeech/wavs/LJ023-0093.npy -tests/data/ljspeech/wavs/LJ003-0025.wav|tests/data/ljspeech/wavs/LJ003-0025.npy -tests/data/ljspeech/wavs/LJ037-0171.wav|tests/data/ljspeech/wavs/LJ037-0171.npy -tests/data/ljspeech/wavs/LJ009-0147.wav|tests/data/ljspeech/wavs/LJ009-0147.npy -tests/data/ljspeech/wavs/LJ018-0192.wav|tests/data/ljspeech/wavs/LJ018-0192.npy -tests/data/ljspeech/wavs/LJ028-0387.wav|tests/data/ljspeech/wavs/LJ028-0387.npy -tests/data/ljspeech/wavs/LJ011-0161.wav|tests/data/ljspeech/wavs/LJ011-0161.npy -tests/data/ljspeech/wavs/LJ036-0111.wav|tests/data/ljspeech/wavs/LJ036-0111.npy -tests/data/ljspeech/wavs/LJ017-0044.wav|tests/data/ljspeech/wavs/LJ017-0044.npy -tests/data/ljspeech/wavs/LJ029-0020.wav|tests/data/ljspeech/wavs/LJ029-0020.npy -tests/data/ljspeech/wavs/LJ026-0108.wav|tests/data/ljspeech/wavs/LJ026-0108.npy -tests/data/ljspeech/wavs/LJ004-0098.wav|tests/data/ljspeech/wavs/LJ004-0098.npy -tests/data/ljspeech/wavs/LJ048-0099.wav|tests/data/ljspeech/wavs/LJ048-0099.npy -tests/data/ljspeech/wavs/LJ041-0113.wav|tests/data/ljspeech/wavs/LJ041-0113.npy -tests/data/ljspeech/wavs/LJ019-0275.wav|tests/data/ljspeech/wavs/LJ019-0275.npy -tests/data/ljspeech/wavs/LJ014-0271.wav|tests/data/ljspeech/wavs/LJ014-0271.npy -tests/data/ljspeech/wavs/LJ011-0041.wav|tests/data/ljspeech/wavs/LJ011-0041.npy -tests/data/ljspeech/wavs/LJ018-0068.wav|tests/data/ljspeech/wavs/LJ018-0068.npy -tests/data/ljspeech/wavs/LJ018-0164.wav|tests/data/ljspeech/wavs/LJ018-0164.npy -tests/data/ljspeech/wavs/LJ010-0317.wav|tests/data/ljspeech/wavs/LJ010-0317.npy -tests/data/ljspeech/wavs/LJ045-0033.wav|tests/data/ljspeech/wavs/LJ045-0033.npy -tests/data/ljspeech/wavs/LJ029-0140.wav|tests/data/ljspeech/wavs/LJ029-0140.npy -tests/data/ljspeech/wavs/LJ001-0010.wav|tests/data/ljspeech/wavs/LJ001-0010.npy -tests/data/ljspeech/wavs/LJ015-0178.wav|tests/data/ljspeech/wavs/LJ015-0178.npy -tests/data/ljspeech/wavs/LJ042-0207.wav|tests/data/ljspeech/wavs/LJ042-0207.npy -tests/data/ljspeech/wavs/LJ043-0105.wav|tests/data/ljspeech/wavs/LJ043-0105.npy -tests/data/ljspeech/wavs/LJ023-0057.wav|tests/data/ljspeech/wavs/LJ023-0057.npy -tests/data/ljspeech/wavs/LJ045-0039.wav|tests/data/ljspeech/wavs/LJ045-0039.npy -tests/data/ljspeech/wavs/LJ016-0093.wav|tests/data/ljspeech/wavs/LJ016-0093.npy -tests/data/ljspeech/wavs/LJ013-0254.wav|tests/data/ljspeech/wavs/LJ013-0254.npy -tests/data/ljspeech/wavs/LJ017-0039.wav|tests/data/ljspeech/wavs/LJ017-0039.npy -tests/data/ljspeech/wavs/LJ046-0078.wav|tests/data/ljspeech/wavs/LJ046-0078.npy -tests/data/ljspeech/wavs/LJ023-0111.wav|tests/data/ljspeech/wavs/LJ023-0111.npy -tests/data/ljspeech/wavs/LJ028-0006.wav|tests/data/ljspeech/wavs/LJ028-0006.npy -tests/data/ljspeech/wavs/LJ042-0202.wav|tests/data/ljspeech/wavs/LJ042-0202.npy -tests/data/ljspeech/wavs/LJ007-0237.wav|tests/data/ljspeech/wavs/LJ007-0237.npy -tests/data/ljspeech/wavs/LJ019-0374.wav|tests/data/ljspeech/wavs/LJ019-0374.npy -tests/data/ljspeech/wavs/LJ031-0139.wav|tests/data/ljspeech/wavs/LJ031-0139.npy -tests/data/ljspeech/wavs/LJ010-0299.wav|tests/data/ljspeech/wavs/LJ010-0299.npy -tests/data/ljspeech/wavs/LJ003-0062.wav|tests/data/ljspeech/wavs/LJ003-0062.npy -tests/data/ljspeech/wavs/LJ029-0121.wav|tests/data/ljspeech/wavs/LJ029-0121.npy -tests/data/ljspeech/wavs/LJ003-0328.wav|tests/data/ljspeech/wavs/LJ003-0328.npy -tests/data/ljspeech/wavs/LJ006-0117.wav|tests/data/ljspeech/wavs/LJ006-0117.npy -tests/data/ljspeech/wavs/LJ028-0244.wav|tests/data/ljspeech/wavs/LJ028-0244.npy -tests/data/ljspeech/wavs/LJ016-0188.wav|tests/data/ljspeech/wavs/LJ016-0188.npy -tests/data/ljspeech/wavs/LJ031-0195.wav|tests/data/ljspeech/wavs/LJ031-0195.npy -tests/data/ljspeech/wavs/LJ044-0132.wav|tests/data/ljspeech/wavs/LJ044-0132.npy -tests/data/ljspeech/wavs/LJ045-0087.wav|tests/data/ljspeech/wavs/LJ045-0087.npy -tests/data/ljspeech/wavs/LJ044-0199.wav|tests/data/ljspeech/wavs/LJ044-0199.npy -tests/data/ljspeech/wavs/LJ046-0162.wav|tests/data/ljspeech/wavs/LJ046-0162.npy -tests/data/ljspeech/wavs/LJ042-0035.wav|tests/data/ljspeech/wavs/LJ042-0035.npy -tests/data/ljspeech/wavs/LJ037-0101.wav|tests/data/ljspeech/wavs/LJ037-0101.npy -tests/data/ljspeech/wavs/LJ048-0244.wav|tests/data/ljspeech/wavs/LJ048-0244.npy -tests/data/ljspeech/wavs/LJ048-0010.wav|tests/data/ljspeech/wavs/LJ048-0010.npy -tests/data/ljspeech/wavs/LJ005-0033.wav|tests/data/ljspeech/wavs/LJ005-0033.npy -tests/data/ljspeech/wavs/LJ025-0078.wav|tests/data/ljspeech/wavs/LJ025-0078.npy -tests/data/ljspeech/wavs/LJ027-0123.wav|tests/data/ljspeech/wavs/LJ027-0123.npy -tests/data/ljspeech/wavs/LJ047-0224.wav|tests/data/ljspeech/wavs/LJ047-0224.npy -tests/data/ljspeech/wavs/LJ023-0075.wav|tests/data/ljspeech/wavs/LJ023-0075.npy -tests/data/ljspeech/wavs/LJ048-0268.wav|tests/data/ljspeech/wavs/LJ048-0268.npy -tests/data/ljspeech/wavs/LJ028-0309.wav|tests/data/ljspeech/wavs/LJ028-0309.npy -tests/data/ljspeech/wavs/LJ006-0084.wav|tests/data/ljspeech/wavs/LJ006-0084.npy -tests/data/ljspeech/wavs/LJ011-0201.wav|tests/data/ljspeech/wavs/LJ011-0201.npy -tests/data/ljspeech/wavs/LJ007-0212.wav|tests/data/ljspeech/wavs/LJ007-0212.npy -tests/data/ljspeech/wavs/LJ020-0031.wav|tests/data/ljspeech/wavs/LJ020-0031.npy -tests/data/ljspeech/wavs/LJ041-0015.wav|tests/data/ljspeech/wavs/LJ041-0015.npy -tests/data/ljspeech/wavs/LJ014-0014.wav|tests/data/ljspeech/wavs/LJ014-0014.npy -tests/data/ljspeech/wavs/LJ049-0160.wav|tests/data/ljspeech/wavs/LJ049-0160.npy -tests/data/ljspeech/wavs/LJ045-0078.wav|tests/data/ljspeech/wavs/LJ045-0078.npy -tests/data/ljspeech/wavs/LJ016-0277.wav|tests/data/ljspeech/wavs/LJ016-0277.npy -tests/data/ljspeech/wavs/LJ004-0225.wav|tests/data/ljspeech/wavs/LJ004-0225.npy -tests/data/ljspeech/wavs/LJ031-0159.wav|tests/data/ljspeech/wavs/LJ031-0159.npy -tests/data/ljspeech/wavs/LJ020-0043.wav|tests/data/ljspeech/wavs/LJ020-0043.npy -tests/data/ljspeech/wavs/LJ005-0152.wav|tests/data/ljspeech/wavs/LJ005-0152.npy -tests/data/ljspeech/wavs/LJ035-0139.wav|tests/data/ljspeech/wavs/LJ035-0139.npy -tests/data/ljspeech/wavs/LJ011-0293.wav|tests/data/ljspeech/wavs/LJ011-0293.npy -tests/data/ljspeech/wavs/LJ043-0089.wav|tests/data/ljspeech/wavs/LJ043-0089.npy -tests/data/ljspeech/wavs/LJ030-0156.wav|tests/data/ljspeech/wavs/LJ030-0156.npy -tests/data/ljspeech/wavs/LJ023-0119.wav|tests/data/ljspeech/wavs/LJ023-0119.npy -tests/data/ljspeech/wavs/LJ041-0061.wav|tests/data/ljspeech/wavs/LJ041-0061.npy -tests/data/ljspeech/wavs/LJ023-0120.wav|tests/data/ljspeech/wavs/LJ023-0120.npy -tests/data/ljspeech/wavs/LJ040-0008.wav|tests/data/ljspeech/wavs/LJ040-0008.npy -tests/data/ljspeech/wavs/LJ024-0131.wav|tests/data/ljspeech/wavs/LJ024-0131.npy -tests/data/ljspeech/wavs/LJ011-0128.wav|tests/data/ljspeech/wavs/LJ011-0128.npy -tests/data/ljspeech/wavs/LJ009-0059.wav|tests/data/ljspeech/wavs/LJ009-0059.npy -tests/data/ljspeech/wavs/LJ007-0134.wav|tests/data/ljspeech/wavs/LJ007-0134.npy -tests/data/ljspeech/wavs/LJ041-0035.wav|tests/data/ljspeech/wavs/LJ041-0035.npy -tests/data/ljspeech/wavs/LJ036-0198.wav|tests/data/ljspeech/wavs/LJ036-0198.npy -tests/data/ljspeech/wavs/LJ017-0067.wav|tests/data/ljspeech/wavs/LJ017-0067.npy -tests/data/ljspeech/wavs/LJ004-0174.wav|tests/data/ljspeech/wavs/LJ004-0174.npy -tests/data/ljspeech/wavs/LJ043-0090.wav|tests/data/ljspeech/wavs/LJ043-0090.npy -tests/data/ljspeech/wavs/LJ019-0013.wav|tests/data/ljspeech/wavs/LJ019-0013.npy -tests/data/ljspeech/wavs/LJ038-0240.wav|tests/data/ljspeech/wavs/LJ038-0240.npy -tests/data/ljspeech/wavs/LJ025-0043.wav|tests/data/ljspeech/wavs/LJ025-0043.npy -tests/data/ljspeech/wavs/LJ009-0068.wav|tests/data/ljspeech/wavs/LJ009-0068.npy -tests/data/ljspeech/wavs/LJ017-0161.wav|tests/data/ljspeech/wavs/LJ017-0161.npy -tests/data/ljspeech/wavs/LJ017-0023.wav|tests/data/ljspeech/wavs/LJ017-0023.npy -tests/data/ljspeech/wavs/LJ007-0119.wav|tests/data/ljspeech/wavs/LJ007-0119.npy -tests/data/ljspeech/wavs/LJ002-0271.wav|tests/data/ljspeech/wavs/LJ002-0271.npy -tests/data/ljspeech/wavs/LJ038-0251.wav|tests/data/ljspeech/wavs/LJ038-0251.npy -tests/data/ljspeech/wavs/LJ015-0139.wav|tests/data/ljspeech/wavs/LJ015-0139.npy -tests/data/ljspeech/wavs/LJ028-0516.wav|tests/data/ljspeech/wavs/LJ028-0516.npy -tests/data/ljspeech/wavs/LJ016-0300.wav|tests/data/ljspeech/wavs/LJ016-0300.npy -tests/data/ljspeech/wavs/LJ005-0159.wav|tests/data/ljspeech/wavs/LJ005-0159.npy -tests/data/ljspeech/wavs/LJ009-0212.wav|tests/data/ljspeech/wavs/LJ009-0212.npy -tests/data/ljspeech/wavs/LJ037-0207.wav|tests/data/ljspeech/wavs/LJ037-0207.npy -tests/data/ljspeech/wavs/LJ004-0162.wav|tests/data/ljspeech/wavs/LJ004-0162.npy -tests/data/ljspeech/wavs/LJ034-0044.wav|tests/data/ljspeech/wavs/LJ034-0044.npy -tests/data/ljspeech/wavs/LJ042-0077.wav|tests/data/ljspeech/wavs/LJ042-0077.npy -tests/data/ljspeech/wavs/LJ032-0163.wav|tests/data/ljspeech/wavs/LJ032-0163.npy -tests/data/ljspeech/wavs/LJ004-0110.wav|tests/data/ljspeech/wavs/LJ004-0110.npy -tests/data/ljspeech/wavs/LJ029-0188.wav|tests/data/ljspeech/wavs/LJ029-0188.npy -tests/data/ljspeech/wavs/LJ006-0167.wav|tests/data/ljspeech/wavs/LJ006-0167.npy -tests/data/ljspeech/wavs/LJ003-0052.wav|tests/data/ljspeech/wavs/LJ003-0052.npy -tests/data/ljspeech/wavs/LJ019-0358.wav|tests/data/ljspeech/wavs/LJ019-0358.npy -tests/data/ljspeech/wavs/LJ019-0221.wav|tests/data/ljspeech/wavs/LJ019-0221.npy -tests/data/ljspeech/wavs/LJ016-0401.wav|tests/data/ljspeech/wavs/LJ016-0401.npy -tests/data/ljspeech/wavs/LJ031-0168.wav|tests/data/ljspeech/wavs/LJ031-0168.npy -tests/data/ljspeech/wavs/LJ013-0084.wav|tests/data/ljspeech/wavs/LJ013-0084.npy -tests/data/ljspeech/wavs/LJ021-0018.wav|tests/data/ljspeech/wavs/LJ021-0018.npy -tests/data/ljspeech/wavs/LJ047-0140.wav|tests/data/ljspeech/wavs/LJ047-0140.npy -tests/data/ljspeech/wavs/LJ019-0254.wav|tests/data/ljspeech/wavs/LJ019-0254.npy -tests/data/ljspeech/wavs/LJ010-0211.wav|tests/data/ljspeech/wavs/LJ010-0211.npy -tests/data/ljspeech/wavs/LJ013-0085.wav|tests/data/ljspeech/wavs/LJ013-0085.npy -tests/data/ljspeech/wavs/LJ020-0100.wav|tests/data/ljspeech/wavs/LJ020-0100.npy -tests/data/ljspeech/wavs/LJ003-0094.wav|tests/data/ljspeech/wavs/LJ003-0094.npy -tests/data/ljspeech/wavs/LJ014-0222.wav|tests/data/ljspeech/wavs/LJ014-0222.npy -tests/data/ljspeech/wavs/LJ002-0334.wav|tests/data/ljspeech/wavs/LJ002-0334.npy -tests/data/ljspeech/wavs/LJ029-0079.wav|tests/data/ljspeech/wavs/LJ029-0079.npy -tests/data/ljspeech/wavs/LJ036-0063.wav|tests/data/ljspeech/wavs/LJ036-0063.npy -tests/data/ljspeech/wavs/LJ011-0054.wav|tests/data/ljspeech/wavs/LJ011-0054.npy -tests/data/ljspeech/wavs/LJ031-0227.wav|tests/data/ljspeech/wavs/LJ031-0227.npy -tests/data/ljspeech/wavs/LJ018-0033.wav|tests/data/ljspeech/wavs/LJ018-0033.npy -tests/data/ljspeech/wavs/LJ034-0174.wav|tests/data/ljspeech/wavs/LJ034-0174.npy -tests/data/ljspeech/wavs/LJ021-0107.wav|tests/data/ljspeech/wavs/LJ021-0107.npy -tests/data/ljspeech/wavs/LJ007-0049.wav|tests/data/ljspeech/wavs/LJ007-0049.npy -tests/data/ljspeech/wavs/LJ035-0096.wav|tests/data/ljspeech/wavs/LJ035-0096.npy -tests/data/ljspeech/wavs/LJ047-0151.wav|tests/data/ljspeech/wavs/LJ047-0151.npy -tests/data/ljspeech/wavs/LJ020-0079.wav|tests/data/ljspeech/wavs/LJ020-0079.npy -tests/data/ljspeech/wavs/LJ016-0019.wav|tests/data/ljspeech/wavs/LJ016-0019.npy -tests/data/ljspeech/wavs/LJ008-0050.wav|tests/data/ljspeech/wavs/LJ008-0050.npy -tests/data/ljspeech/wavs/LJ040-0071.wav|tests/data/ljspeech/wavs/LJ040-0071.npy -tests/data/ljspeech/wavs/LJ050-0093.wav|tests/data/ljspeech/wavs/LJ050-0093.npy -tests/data/ljspeech/wavs/LJ040-0075.wav|tests/data/ljspeech/wavs/LJ040-0075.npy -tests/data/ljspeech/wavs/LJ042-0235.wav|tests/data/ljspeech/wavs/LJ042-0235.npy -tests/data/ljspeech/wavs/LJ009-0304.wav|tests/data/ljspeech/wavs/LJ009-0304.npy -tests/data/ljspeech/wavs/LJ031-0069.wav|tests/data/ljspeech/wavs/LJ031-0069.npy -tests/data/ljspeech/wavs/LJ042-0195.wav|tests/data/ljspeech/wavs/LJ042-0195.npy -tests/data/ljspeech/wavs/LJ004-0105.wav|tests/data/ljspeech/wavs/LJ004-0105.npy -tests/data/ljspeech/wavs/LJ012-0273.wav|tests/data/ljspeech/wavs/LJ012-0273.npy -tests/data/ljspeech/wavs/LJ011-0023.wav|tests/data/ljspeech/wavs/LJ011-0023.npy -tests/data/ljspeech/wavs/LJ021-0188.wav|tests/data/ljspeech/wavs/LJ021-0188.npy -tests/data/ljspeech/wavs/LJ036-0125.wav|tests/data/ljspeech/wavs/LJ036-0125.npy -tests/data/ljspeech/wavs/LJ011-0172.wav|tests/data/ljspeech/wavs/LJ011-0172.npy -tests/data/ljspeech/wavs/LJ012-0119.wav|tests/data/ljspeech/wavs/LJ012-0119.npy -tests/data/ljspeech/wavs/LJ042-0023.wav|tests/data/ljspeech/wavs/LJ042-0023.npy -tests/data/ljspeech/wavs/LJ021-0132.wav|tests/data/ljspeech/wavs/LJ021-0132.npy -tests/data/ljspeech/wavs/LJ026-0091.wav|tests/data/ljspeech/wavs/LJ026-0091.npy -tests/data/ljspeech/wavs/LJ028-0217.wav|tests/data/ljspeech/wavs/LJ028-0217.npy -tests/data/ljspeech/wavs/LJ050-0103.wav|tests/data/ljspeech/wavs/LJ050-0103.npy -tests/data/ljspeech/wavs/LJ041-0158.wav|tests/data/ljspeech/wavs/LJ041-0158.npy -tests/data/ljspeech/wavs/LJ008-0049.wav|tests/data/ljspeech/wavs/LJ008-0049.npy -tests/data/ljspeech/wavs/LJ002-0058.wav|tests/data/ljspeech/wavs/LJ002-0058.npy -tests/data/ljspeech/wavs/LJ014-0289.wav|tests/data/ljspeech/wavs/LJ014-0289.npy -tests/data/ljspeech/wavs/LJ009-0007.wav|tests/data/ljspeech/wavs/LJ009-0007.npy -tests/data/ljspeech/wavs/LJ037-0183.wav|tests/data/ljspeech/wavs/LJ037-0183.npy -tests/data/ljspeech/wavs/LJ006-0126.wav|tests/data/ljspeech/wavs/LJ006-0126.npy -tests/data/ljspeech/wavs/LJ009-0019.wav|tests/data/ljspeech/wavs/LJ009-0019.npy -tests/data/ljspeech/wavs/LJ035-0064.wav|tests/data/ljspeech/wavs/LJ035-0064.npy -tests/data/ljspeech/wavs/LJ008-0023.wav|tests/data/ljspeech/wavs/LJ008-0023.npy -tests/data/ljspeech/wavs/LJ028-0165.wav|tests/data/ljspeech/wavs/LJ028-0165.npy -tests/data/ljspeech/wavs/LJ013-0009.wav|tests/data/ljspeech/wavs/LJ013-0009.npy -tests/data/ljspeech/wavs/LJ036-0200.wav|tests/data/ljspeech/wavs/LJ036-0200.npy -tests/data/ljspeech/wavs/LJ009-0167.wav|tests/data/ljspeech/wavs/LJ009-0167.npy -tests/data/ljspeech/wavs/LJ011-0064.wav|tests/data/ljspeech/wavs/LJ011-0064.npy -tests/data/ljspeech/wavs/LJ047-0237.wav|tests/data/ljspeech/wavs/LJ047-0237.npy -tests/data/ljspeech/wavs/LJ024-0081.wav|tests/data/ljspeech/wavs/LJ024-0081.npy -tests/data/ljspeech/wavs/LJ048-0254.wav|tests/data/ljspeech/wavs/LJ048-0254.npy -tests/data/ljspeech/wavs/LJ017-0235.wav|tests/data/ljspeech/wavs/LJ017-0235.npy -tests/data/ljspeech/wavs/LJ016-0107.wav|tests/data/ljspeech/wavs/LJ016-0107.npy -tests/data/ljspeech/wavs/LJ038-0034.wav|tests/data/ljspeech/wavs/LJ038-0034.npy -tests/data/ljspeech/wavs/LJ035-0153.wav|tests/data/ljspeech/wavs/LJ035-0153.npy -tests/data/ljspeech/wavs/LJ021-0126.wav|tests/data/ljspeech/wavs/LJ021-0126.npy -tests/data/ljspeech/wavs/LJ015-0219.wav|tests/data/ljspeech/wavs/LJ015-0219.npy -tests/data/ljspeech/wavs/LJ010-0242.wav|tests/data/ljspeech/wavs/LJ010-0242.npy -tests/data/ljspeech/wavs/LJ034-0124.wav|tests/data/ljspeech/wavs/LJ034-0124.npy -tests/data/ljspeech/wavs/LJ018-0219.wav|tests/data/ljspeech/wavs/LJ018-0219.npy -tests/data/ljspeech/wavs/LJ011-0287.wav|tests/data/ljspeech/wavs/LJ011-0287.npy -tests/data/ljspeech/wavs/LJ044-0064.wav|tests/data/ljspeech/wavs/LJ044-0064.npy -tests/data/ljspeech/wavs/LJ011-0045.wav|tests/data/ljspeech/wavs/LJ011-0045.npy -tests/data/ljspeech/wavs/LJ010-0087.wav|tests/data/ljspeech/wavs/LJ010-0087.npy -tests/data/ljspeech/wavs/LJ018-0241.wav|tests/data/ljspeech/wavs/LJ018-0241.npy -tests/data/ljspeech/wavs/LJ045-0199.wav|tests/data/ljspeech/wavs/LJ045-0199.npy -tests/data/ljspeech/wavs/LJ034-0126.wav|tests/data/ljspeech/wavs/LJ034-0126.npy -tests/data/ljspeech/wavs/LJ039-0216.wav|tests/data/ljspeech/wavs/LJ039-0216.npy -tests/data/ljspeech/wavs/LJ017-0151.wav|tests/data/ljspeech/wavs/LJ017-0151.npy -tests/data/ljspeech/wavs/LJ018-0177.wav|tests/data/ljspeech/wavs/LJ018-0177.npy -tests/data/ljspeech/wavs/LJ010-0083.wav|tests/data/ljspeech/wavs/LJ010-0083.npy -tests/data/ljspeech/wavs/LJ018-0208.wav|tests/data/ljspeech/wavs/LJ018-0208.npy -tests/data/ljspeech/wavs/LJ015-0226.wav|tests/data/ljspeech/wavs/LJ015-0226.npy -tests/data/ljspeech/wavs/LJ016-0165.wav|tests/data/ljspeech/wavs/LJ016-0165.npy -tests/data/ljspeech/wavs/LJ012-0113.wav|tests/data/ljspeech/wavs/LJ012-0113.npy -tests/data/ljspeech/wavs/LJ032-0103.wav|tests/data/ljspeech/wavs/LJ032-0103.npy -tests/data/ljspeech/wavs/LJ033-0206.wav|tests/data/ljspeech/wavs/LJ033-0206.npy -tests/data/ljspeech/wavs/LJ005-0256.wav|tests/data/ljspeech/wavs/LJ005-0256.npy -tests/data/ljspeech/wavs/LJ045-0022.wav|tests/data/ljspeech/wavs/LJ045-0022.npy -tests/data/ljspeech/wavs/LJ044-0108.wav|tests/data/ljspeech/wavs/LJ044-0108.npy -tests/data/ljspeech/wavs/LJ012-0040.wav|tests/data/ljspeech/wavs/LJ012-0040.npy -tests/data/ljspeech/wavs/LJ021-0144.wav|tests/data/ljspeech/wavs/LJ021-0144.npy -tests/data/ljspeech/wavs/LJ033-0175.wav|tests/data/ljspeech/wavs/LJ033-0175.npy -tests/data/ljspeech/wavs/LJ018-0308.wav|tests/data/ljspeech/wavs/LJ018-0308.npy -tests/data/ljspeech/wavs/LJ022-0161.wav|tests/data/ljspeech/wavs/LJ022-0161.npy -tests/data/ljspeech/wavs/LJ016-0221.wav|tests/data/ljspeech/wavs/LJ016-0221.npy -tests/data/ljspeech/wavs/LJ005-0005.wav|tests/data/ljspeech/wavs/LJ005-0005.npy -tests/data/ljspeech/wavs/LJ011-0077.wav|tests/data/ljspeech/wavs/LJ011-0077.npy -tests/data/ljspeech/wavs/LJ005-0278.wav|tests/data/ljspeech/wavs/LJ005-0278.npy -tests/data/ljspeech/wavs/LJ022-0003.wav|tests/data/ljspeech/wavs/LJ022-0003.npy -tests/data/ljspeech/wavs/LJ017-0063.wav|tests/data/ljspeech/wavs/LJ017-0063.npy -tests/data/ljspeech/wavs/LJ021-0110.wav|tests/data/ljspeech/wavs/LJ021-0110.npy -tests/data/ljspeech/wavs/LJ017-0264.wav|tests/data/ljspeech/wavs/LJ017-0264.npy -tests/data/ljspeech/wavs/LJ018-0277.wav|tests/data/ljspeech/wavs/LJ018-0277.npy -tests/data/ljspeech/wavs/LJ022-0130.wav|tests/data/ljspeech/wavs/LJ022-0130.npy -tests/data/ljspeech/wavs/LJ050-0221.wav|tests/data/ljspeech/wavs/LJ050-0221.npy -tests/data/ljspeech/wavs/LJ021-0075.wav|tests/data/ljspeech/wavs/LJ021-0075.npy -tests/data/ljspeech/wavs/LJ010-0218.wav|tests/data/ljspeech/wavs/LJ010-0218.npy -tests/data/ljspeech/wavs/LJ040-0146.wav|tests/data/ljspeech/wavs/LJ040-0146.npy -tests/data/ljspeech/wavs/LJ003-0155.wav|tests/data/ljspeech/wavs/LJ003-0155.npy -tests/data/ljspeech/wavs/LJ020-0048.wav|tests/data/ljspeech/wavs/LJ020-0048.npy -tests/data/ljspeech/wavs/LJ033-0159.wav|tests/data/ljspeech/wavs/LJ033-0159.npy -tests/data/ljspeech/wavs/LJ035-0109.wav|tests/data/ljspeech/wavs/LJ035-0109.npy -tests/data/ljspeech/wavs/LJ023-0027.wav|tests/data/ljspeech/wavs/LJ023-0027.npy -tests/data/ljspeech/wavs/LJ002-0333.wav|tests/data/ljspeech/wavs/LJ002-0333.npy -tests/data/ljspeech/wavs/LJ034-0135.wav|tests/data/ljspeech/wavs/LJ034-0135.npy -tests/data/ljspeech/wavs/LJ011-0111.wav|tests/data/ljspeech/wavs/LJ011-0111.npy -tests/data/ljspeech/wavs/LJ018-0020.wav|tests/data/ljspeech/wavs/LJ018-0020.npy -tests/data/ljspeech/wavs/LJ020-0101.wav|tests/data/ljspeech/wavs/LJ020-0101.npy -tests/data/ljspeech/wavs/LJ047-0057.wav|tests/data/ljspeech/wavs/LJ047-0057.npy -tests/data/ljspeech/wavs/LJ029-0011.wav|tests/data/ljspeech/wavs/LJ029-0011.npy -tests/data/ljspeech/wavs/LJ032-0189.wav|tests/data/ljspeech/wavs/LJ032-0189.npy -tests/data/ljspeech/wavs/LJ046-0110.wav|tests/data/ljspeech/wavs/LJ046-0110.npy -tests/data/ljspeech/wavs/LJ025-0109.wav|tests/data/ljspeech/wavs/LJ025-0109.npy -tests/data/ljspeech/wavs/LJ042-0172.wav|tests/data/ljspeech/wavs/LJ042-0172.npy -tests/data/ljspeech/wavs/LJ007-0126.wav|tests/data/ljspeech/wavs/LJ007-0126.npy -tests/data/ljspeech/wavs/LJ043-0095.wav|tests/data/ljspeech/wavs/LJ043-0095.npy -tests/data/ljspeech/wavs/LJ007-0197.wav|tests/data/ljspeech/wavs/LJ007-0197.npy -tests/data/ljspeech/wavs/LJ002-0197.wav|tests/data/ljspeech/wavs/LJ002-0197.npy -tests/data/ljspeech/wavs/LJ050-0125.wav|tests/data/ljspeech/wavs/LJ050-0125.npy -tests/data/ljspeech/wavs/LJ029-0104.wav|tests/data/ljspeech/wavs/LJ029-0104.npy -tests/data/ljspeech/wavs/LJ028-0352.wav|tests/data/ljspeech/wavs/LJ028-0352.npy -tests/data/ljspeech/wavs/LJ036-0187.wav|tests/data/ljspeech/wavs/LJ036-0187.npy -tests/data/ljspeech/wavs/LJ029-0152.wav|tests/data/ljspeech/wavs/LJ029-0152.npy -tests/data/ljspeech/wavs/LJ048-0042.wav|tests/data/ljspeech/wavs/LJ048-0042.npy -tests/data/ljspeech/wavs/LJ028-0442.wav|tests/data/ljspeech/wavs/LJ028-0442.npy -tests/data/ljspeech/wavs/LJ046-0019.wav|tests/data/ljspeech/wavs/LJ046-0019.npy -tests/data/ljspeech/wavs/LJ025-0156.wav|tests/data/ljspeech/wavs/LJ025-0156.npy -tests/data/ljspeech/wavs/LJ033-0100.wav|tests/data/ljspeech/wavs/LJ033-0100.npy -tests/data/ljspeech/wavs/LJ014-0164.wav|tests/data/ljspeech/wavs/LJ014-0164.npy -tests/data/ljspeech/wavs/LJ002-0170.wav|tests/data/ljspeech/wavs/LJ002-0170.npy -tests/data/ljspeech/wavs/LJ014-0321.wav|tests/data/ljspeech/wavs/LJ014-0321.npy -tests/data/ljspeech/wavs/LJ033-0010.wav|tests/data/ljspeech/wavs/LJ033-0010.npy -tests/data/ljspeech/wavs/LJ007-0222.wav|tests/data/ljspeech/wavs/LJ007-0222.npy -tests/data/ljspeech/wavs/LJ013-0091.wav|tests/data/ljspeech/wavs/LJ013-0091.npy -tests/data/ljspeech/wavs/LJ008-0270.wav|tests/data/ljspeech/wavs/LJ008-0270.npy -tests/data/ljspeech/wavs/LJ002-0255.wav|tests/data/ljspeech/wavs/LJ002-0255.npy -tests/data/ljspeech/wavs/LJ014-0249.wav|tests/data/ljspeech/wavs/LJ014-0249.npy -tests/data/ljspeech/wavs/LJ007-0098.wav|tests/data/ljspeech/wavs/LJ007-0098.npy -tests/data/ljspeech/wavs/LJ025-0139.wav|tests/data/ljspeech/wavs/LJ025-0139.npy -tests/data/ljspeech/wavs/LJ002-0149.wav|tests/data/ljspeech/wavs/LJ002-0149.npy -tests/data/ljspeech/wavs/LJ048-0077.wav|tests/data/ljspeech/wavs/LJ048-0077.npy -tests/data/ljspeech/wavs/LJ049-0153.wav|tests/data/ljspeech/wavs/LJ049-0153.npy -tests/data/ljspeech/wavs/LJ038-0071.wav|tests/data/ljspeech/wavs/LJ038-0071.npy -tests/data/ljspeech/wavs/LJ014-0312.wav|tests/data/ljspeech/wavs/LJ014-0312.npy -tests/data/ljspeech/wavs/LJ009-0021.wav|tests/data/ljspeech/wavs/LJ009-0021.npy -tests/data/ljspeech/wavs/LJ009-0097.wav|tests/data/ljspeech/wavs/LJ009-0097.npy -tests/data/ljspeech/wavs/LJ009-0006.wav|tests/data/ljspeech/wavs/LJ009-0006.npy -tests/data/ljspeech/wavs/LJ015-0193.wav|tests/data/ljspeech/wavs/LJ015-0193.npy -tests/data/ljspeech/wavs/LJ046-0154.wav|tests/data/ljspeech/wavs/LJ046-0154.npy -tests/data/ljspeech/wavs/LJ026-0052.wav|tests/data/ljspeech/wavs/LJ026-0052.npy -tests/data/ljspeech/wavs/LJ030-0146.wav|tests/data/ljspeech/wavs/LJ030-0146.npy -tests/data/ljspeech/wavs/LJ004-0124.wav|tests/data/ljspeech/wavs/LJ004-0124.npy -tests/data/ljspeech/wavs/LJ014-0283.wav|tests/data/ljspeech/wavs/LJ014-0283.npy -tests/data/ljspeech/wavs/LJ048-0083.wav|tests/data/ljspeech/wavs/LJ048-0083.npy -tests/data/ljspeech/wavs/LJ006-0087.wav|tests/data/ljspeech/wavs/LJ006-0087.npy -tests/data/ljspeech/wavs/LJ033-0137.wav|tests/data/ljspeech/wavs/LJ033-0137.npy -tests/data/ljspeech/wavs/LJ041-0141.wav|tests/data/ljspeech/wavs/LJ041-0141.npy -tests/data/ljspeech/wavs/LJ044-0180.wav|tests/data/ljspeech/wavs/LJ044-0180.npy -tests/data/ljspeech/wavs/LJ006-0099.wav|tests/data/ljspeech/wavs/LJ006-0099.npy -tests/data/ljspeech/wavs/LJ006-0246.wav|tests/data/ljspeech/wavs/LJ006-0246.npy -tests/data/ljspeech/wavs/LJ006-0264.wav|tests/data/ljspeech/wavs/LJ006-0264.npy -tests/data/ljspeech/wavs/LJ028-0092.wav|tests/data/ljspeech/wavs/LJ028-0092.npy -tests/data/ljspeech/wavs/LJ028-0009.wav|tests/data/ljspeech/wavs/LJ028-0009.npy -tests/data/ljspeech/wavs/LJ050-0270.wav|tests/data/ljspeech/wavs/LJ050-0270.npy -tests/data/ljspeech/wavs/LJ030-0043.wav|tests/data/ljspeech/wavs/LJ030-0043.npy -tests/data/ljspeech/wavs/LJ026-0087.wav|tests/data/ljspeech/wavs/LJ026-0087.npy -tests/data/ljspeech/wavs/LJ043-0152.wav|tests/data/ljspeech/wavs/LJ043-0152.npy -tests/data/ljspeech/wavs/LJ046-0075.wav|tests/data/ljspeech/wavs/LJ046-0075.npy -tests/data/ljspeech/wavs/LJ014-0300.wav|tests/data/ljspeech/wavs/LJ014-0300.npy -tests/data/ljspeech/wavs/LJ041-0106.wav|tests/data/ljspeech/wavs/LJ041-0106.npy -tests/data/ljspeech/wavs/LJ048-0101.wav|tests/data/ljspeech/wavs/LJ048-0101.npy -tests/data/ljspeech/wavs/LJ033-0170.wav|tests/data/ljspeech/wavs/LJ033-0170.npy -tests/data/ljspeech/wavs/LJ032-0253.wav|tests/data/ljspeech/wavs/LJ032-0253.npy -tests/data/ljspeech/wavs/LJ038-0102.wav|tests/data/ljspeech/wavs/LJ038-0102.npy -tests/data/ljspeech/wavs/LJ006-0113.wav|tests/data/ljspeech/wavs/LJ006-0113.npy -tests/data/ljspeech/wavs/LJ004-0026.wav|tests/data/ljspeech/wavs/LJ004-0026.npy -tests/data/ljspeech/wavs/LJ013-0047.wav|tests/data/ljspeech/wavs/LJ013-0047.npy -tests/data/ljspeech/wavs/LJ005-0041.wav|tests/data/ljspeech/wavs/LJ005-0041.npy -tests/data/ljspeech/wavs/LJ006-0065.wav|tests/data/ljspeech/wavs/LJ006-0065.npy -tests/data/ljspeech/wavs/LJ016-0142.wav|tests/data/ljspeech/wavs/LJ016-0142.npy -tests/data/ljspeech/wavs/LJ016-0163.wav|tests/data/ljspeech/wavs/LJ016-0163.npy -tests/data/ljspeech/wavs/LJ041-0197.wav|tests/data/ljspeech/wavs/LJ041-0197.npy -tests/data/ljspeech/wavs/LJ043-0062.wav|tests/data/ljspeech/wavs/LJ043-0062.npy -tests/data/ljspeech/wavs/LJ047-0132.wav|tests/data/ljspeech/wavs/LJ047-0132.npy -tests/data/ljspeech/wavs/LJ028-0096.wav|tests/data/ljspeech/wavs/LJ028-0096.npy -tests/data/ljspeech/wavs/LJ030-0193.wav|tests/data/ljspeech/wavs/LJ030-0193.npy -tests/data/ljspeech/wavs/LJ016-0111.wav|tests/data/ljspeech/wavs/LJ016-0111.npy -tests/data/ljspeech/wavs/LJ035-0043.wav|tests/data/ljspeech/wavs/LJ035-0043.npy -tests/data/ljspeech/wavs/LJ013-0230.wav|tests/data/ljspeech/wavs/LJ013-0230.npy -tests/data/ljspeech/wavs/LJ032-0134.wav|tests/data/ljspeech/wavs/LJ032-0134.npy -tests/data/ljspeech/wavs/LJ006-0301.wav|tests/data/ljspeech/wavs/LJ006-0301.npy -tests/data/ljspeech/wavs/LJ035-0055.wav|tests/data/ljspeech/wavs/LJ035-0055.npy -tests/data/ljspeech/wavs/LJ011-0164.wav|tests/data/ljspeech/wavs/LJ011-0164.npy -tests/data/ljspeech/wavs/LJ019-0365.wav|tests/data/ljspeech/wavs/LJ019-0365.npy -tests/data/ljspeech/wavs/LJ017-0164.wav|tests/data/ljspeech/wavs/LJ017-0164.npy -tests/data/ljspeech/wavs/LJ045-0094.wav|tests/data/ljspeech/wavs/LJ045-0094.npy -tests/data/ljspeech/wavs/LJ036-0148.wav|tests/data/ljspeech/wavs/LJ036-0148.npy -tests/data/ljspeech/wavs/LJ007-0026.wav|tests/data/ljspeech/wavs/LJ007-0026.npy -tests/data/ljspeech/wavs/LJ035-0041.wav|tests/data/ljspeech/wavs/LJ035-0041.npy -tests/data/ljspeech/wavs/LJ040-0162.wav|tests/data/ljspeech/wavs/LJ040-0162.npy -tests/data/ljspeech/wavs/LJ048-0103.wav|tests/data/ljspeech/wavs/LJ048-0103.npy -tests/data/ljspeech/wavs/LJ017-0118.wav|tests/data/ljspeech/wavs/LJ017-0118.npy -tests/data/ljspeech/wavs/LJ034-0216.wav|tests/data/ljspeech/wavs/LJ034-0216.npy -tests/data/ljspeech/wavs/LJ037-0122.wav|tests/data/ljspeech/wavs/LJ037-0122.npy -tests/data/ljspeech/wavs/LJ018-0279.wav|tests/data/ljspeech/wavs/LJ018-0279.npy -tests/data/ljspeech/wavs/LJ032-0206.wav|tests/data/ljspeech/wavs/LJ032-0206.npy -tests/data/ljspeech/wavs/LJ004-0187.wav|tests/data/ljspeech/wavs/LJ004-0187.npy -tests/data/ljspeech/wavs/LJ014-0048.wav|tests/data/ljspeech/wavs/LJ014-0048.npy -tests/data/ljspeech/wavs/LJ010-0146.wav|tests/data/ljspeech/wavs/LJ010-0146.npy -tests/data/ljspeech/wavs/LJ039-0042.wav|tests/data/ljspeech/wavs/LJ039-0042.npy -tests/data/ljspeech/wavs/LJ016-0168.wav|tests/data/ljspeech/wavs/LJ016-0168.npy -tests/data/ljspeech/wavs/LJ027-0099.wav|tests/data/ljspeech/wavs/LJ027-0099.npy -tests/data/ljspeech/wavs/LJ042-0057.wav|tests/data/ljspeech/wavs/LJ042-0057.npy -tests/data/ljspeech/wavs/LJ047-0024.wav|tests/data/ljspeech/wavs/LJ047-0024.npy -tests/data/ljspeech/wavs/LJ036-0099.wav|tests/data/ljspeech/wavs/LJ036-0099.npy -tests/data/ljspeech/wavs/LJ049-0200.wav|tests/data/ljspeech/wavs/LJ049-0200.npy -tests/data/ljspeech/wavs/LJ008-0200.wav|tests/data/ljspeech/wavs/LJ008-0200.npy -tests/data/ljspeech/wavs/LJ021-0020.wav|tests/data/ljspeech/wavs/LJ021-0020.npy -tests/data/ljspeech/wavs/LJ017-0080.wav|tests/data/ljspeech/wavs/LJ017-0080.npy -tests/data/ljspeech/wavs/LJ048-0189.wav|tests/data/ljspeech/wavs/LJ048-0189.npy -tests/data/ljspeech/wavs/LJ047-0143.wav|tests/data/ljspeech/wavs/LJ047-0143.npy -tests/data/ljspeech/wavs/LJ045-0031.wav|tests/data/ljspeech/wavs/LJ045-0031.npy -tests/data/ljspeech/wavs/LJ043-0049.wav|tests/data/ljspeech/wavs/LJ043-0049.npy -tests/data/ljspeech/wavs/LJ001-0172.wav|tests/data/ljspeech/wavs/LJ001-0172.npy -tests/data/ljspeech/wavs/LJ017-0127.wav|tests/data/ljspeech/wavs/LJ017-0127.npy -tests/data/ljspeech/wavs/LJ037-0165.wav|tests/data/ljspeech/wavs/LJ037-0165.npy -tests/data/ljspeech/wavs/LJ032-0080.wav|tests/data/ljspeech/wavs/LJ032-0080.npy -tests/data/ljspeech/wavs/LJ012-0106.wav|tests/data/ljspeech/wavs/LJ012-0106.npy -tests/data/ljspeech/wavs/LJ003-0329.wav|tests/data/ljspeech/wavs/LJ003-0329.npy -tests/data/ljspeech/wavs/LJ029-0071.wav|tests/data/ljspeech/wavs/LJ029-0071.npy -tests/data/ljspeech/wavs/LJ008-0194.wav|tests/data/ljspeech/wavs/LJ008-0194.npy -tests/data/ljspeech/wavs/LJ027-0167.wav|tests/data/ljspeech/wavs/LJ027-0167.npy -tests/data/ljspeech/wavs/LJ034-0167.wav|tests/data/ljspeech/wavs/LJ034-0167.npy -tests/data/ljspeech/wavs/LJ010-0032.wav|tests/data/ljspeech/wavs/LJ010-0032.npy -tests/data/ljspeech/wavs/LJ042-0019.wav|tests/data/ljspeech/wavs/LJ042-0019.npy -tests/data/ljspeech/wavs/LJ010-0070.wav|tests/data/ljspeech/wavs/LJ010-0070.npy -tests/data/ljspeech/wavs/LJ046-0146.wav|tests/data/ljspeech/wavs/LJ046-0146.npy -tests/data/ljspeech/wavs/LJ043-0103.wav|tests/data/ljspeech/wavs/LJ043-0103.npy -tests/data/ljspeech/wavs/LJ040-0057.wav|tests/data/ljspeech/wavs/LJ040-0057.npy -tests/data/ljspeech/wavs/LJ011-0249.wav|tests/data/ljspeech/wavs/LJ011-0249.npy -tests/data/ljspeech/wavs/LJ018-0221.wav|tests/data/ljspeech/wavs/LJ018-0221.npy -tests/data/ljspeech/wavs/LJ048-0160.wav|tests/data/ljspeech/wavs/LJ048-0160.npy -tests/data/ljspeech/wavs/LJ029-0133.wav|tests/data/ljspeech/wavs/LJ029-0133.npy -tests/data/ljspeech/wavs/LJ003-0193.wav|tests/data/ljspeech/wavs/LJ003-0193.npy -tests/data/ljspeech/wavs/LJ018-0131.wav|tests/data/ljspeech/wavs/LJ018-0131.npy -tests/data/ljspeech/wavs/LJ042-0223.wav|tests/data/ljspeech/wavs/LJ042-0223.npy -tests/data/ljspeech/wavs/LJ050-0096.wav|tests/data/ljspeech/wavs/LJ050-0096.npy -tests/data/ljspeech/wavs/LJ018-0146.wav|tests/data/ljspeech/wavs/LJ018-0146.npy -tests/data/ljspeech/wavs/LJ046-0209.wav|tests/data/ljspeech/wavs/LJ046-0209.npy -tests/data/ljspeech/wavs/LJ007-0003.wav|tests/data/ljspeech/wavs/LJ007-0003.npy -tests/data/ljspeech/wavs/LJ031-0140.wav|tests/data/ljspeech/wavs/LJ031-0140.npy -tests/data/ljspeech/wavs/LJ048-0122.wav|tests/data/ljspeech/wavs/LJ048-0122.npy -tests/data/ljspeech/wavs/LJ003-0096.wav|tests/data/ljspeech/wavs/LJ003-0096.npy -tests/data/ljspeech/wavs/LJ018-0029.wav|tests/data/ljspeech/wavs/LJ018-0029.npy -tests/data/ljspeech/wavs/LJ018-0152.wav|tests/data/ljspeech/wavs/LJ018-0152.npy -tests/data/ljspeech/wavs/LJ014-0138.wav|tests/data/ljspeech/wavs/LJ014-0138.npy -tests/data/ljspeech/wavs/LJ048-0070.wav|tests/data/ljspeech/wavs/LJ048-0070.npy -tests/data/ljspeech/wavs/LJ018-0345.wav|tests/data/ljspeech/wavs/LJ018-0345.npy -tests/data/ljspeech/wavs/LJ011-0071.wav|tests/data/ljspeech/wavs/LJ011-0071.npy -tests/data/ljspeech/wavs/LJ003-0185.wav|tests/data/ljspeech/wavs/LJ003-0185.npy -tests/data/ljspeech/wavs/LJ040-0043.wav|tests/data/ljspeech/wavs/LJ040-0043.npy -tests/data/ljspeech/wavs/LJ018-0026.wav|tests/data/ljspeech/wavs/LJ018-0026.npy -tests/data/ljspeech/wavs/LJ001-0115.wav|tests/data/ljspeech/wavs/LJ001-0115.npy -tests/data/ljspeech/wavs/LJ050-0189.wav|tests/data/ljspeech/wavs/LJ050-0189.npy -tests/data/ljspeech/wavs/LJ038-0173.wav|tests/data/ljspeech/wavs/LJ038-0173.npy -tests/data/ljspeech/wavs/LJ038-0172.wav|tests/data/ljspeech/wavs/LJ038-0172.npy -tests/data/ljspeech/wavs/LJ016-0194.wav|tests/data/ljspeech/wavs/LJ016-0194.npy -tests/data/ljspeech/wavs/LJ016-0324.wav|tests/data/ljspeech/wavs/LJ016-0324.npy -tests/data/ljspeech/wavs/LJ042-0157.wav|tests/data/ljspeech/wavs/LJ042-0157.npy -tests/data/ljspeech/wavs/LJ044-0160.wav|tests/data/ljspeech/wavs/LJ044-0160.npy -tests/data/ljspeech/wavs/LJ003-0293.wav|tests/data/ljspeech/wavs/LJ003-0293.npy -tests/data/ljspeech/wavs/LJ021-0156.wav|tests/data/ljspeech/wavs/LJ021-0156.npy -tests/data/ljspeech/wavs/LJ041-0129.wav|tests/data/ljspeech/wavs/LJ041-0129.npy -tests/data/ljspeech/wavs/LJ002-0189.wav|tests/data/ljspeech/wavs/LJ002-0189.npy -tests/data/ljspeech/wavs/LJ034-0045.wav|tests/data/ljspeech/wavs/LJ034-0045.npy -tests/data/ljspeech/wavs/LJ024-0110.wav|tests/data/ljspeech/wavs/LJ024-0110.npy -tests/data/ljspeech/wavs/LJ044-0044.wav|tests/data/ljspeech/wavs/LJ044-0044.npy -tests/data/ljspeech/wavs/LJ023-0015.wav|tests/data/ljspeech/wavs/LJ023-0015.npy -tests/data/ljspeech/wavs/LJ025-0027.wav|tests/data/ljspeech/wavs/LJ025-0027.npy -tests/data/ljspeech/wavs/LJ048-0174.wav|tests/data/ljspeech/wavs/LJ048-0174.npy -tests/data/ljspeech/wavs/LJ028-0358.wav|tests/data/ljspeech/wavs/LJ028-0358.npy -tests/data/ljspeech/wavs/LJ050-0261.wav|tests/data/ljspeech/wavs/LJ050-0261.npy -tests/data/ljspeech/wavs/LJ007-0180.wav|tests/data/ljspeech/wavs/LJ007-0180.npy -tests/data/ljspeech/wavs/LJ004-0200.wav|tests/data/ljspeech/wavs/LJ004-0200.npy -tests/data/ljspeech/wavs/LJ021-0120.wav|tests/data/ljspeech/wavs/LJ021-0120.npy -tests/data/ljspeech/wavs/LJ046-0160.wav|tests/data/ljspeech/wavs/LJ046-0160.npy -tests/data/ljspeech/wavs/LJ024-0117.wav|tests/data/ljspeech/wavs/LJ024-0117.npy -tests/data/ljspeech/wavs/LJ016-0231.wav|tests/data/ljspeech/wavs/LJ016-0231.npy -tests/data/ljspeech/wavs/LJ003-0251.wav|tests/data/ljspeech/wavs/LJ003-0251.npy -tests/data/ljspeech/wavs/LJ005-0266.wav|tests/data/ljspeech/wavs/LJ005-0266.npy -tests/data/ljspeech/wavs/LJ019-0018.wav|tests/data/ljspeech/wavs/LJ019-0018.npy -tests/data/ljspeech/wavs/LJ031-0233.wav|tests/data/ljspeech/wavs/LJ031-0233.npy -tests/data/ljspeech/wavs/LJ046-0094.wav|tests/data/ljspeech/wavs/LJ046-0094.npy -tests/data/ljspeech/wavs/LJ050-0066.wav|tests/data/ljspeech/wavs/LJ050-0066.npy -tests/data/ljspeech/wavs/LJ018-0362.wav|tests/data/ljspeech/wavs/LJ018-0362.npy -tests/data/ljspeech/wavs/LJ007-0013.wav|tests/data/ljspeech/wavs/LJ007-0013.npy -tests/data/ljspeech/wavs/LJ016-0237.wav|tests/data/ljspeech/wavs/LJ016-0237.npy -tests/data/ljspeech/wavs/LJ007-0028.wav|tests/data/ljspeech/wavs/LJ007-0028.npy -tests/data/ljspeech/wavs/LJ028-0351.wav|tests/data/ljspeech/wavs/LJ028-0351.npy -tests/data/ljspeech/wavs/LJ019-0150.wav|tests/data/ljspeech/wavs/LJ019-0150.npy -tests/data/ljspeech/wavs/LJ038-0025.wav|tests/data/ljspeech/wavs/LJ038-0025.npy -tests/data/ljspeech/wavs/LJ026-0121.wav|tests/data/ljspeech/wavs/LJ026-0121.npy -tests/data/ljspeech/wavs/LJ025-0081.wav|tests/data/ljspeech/wavs/LJ025-0081.npy -tests/data/ljspeech/wavs/LJ009-0178.wav|tests/data/ljspeech/wavs/LJ009-0178.npy -tests/data/ljspeech/wavs/LJ044-0212.wav|tests/data/ljspeech/wavs/LJ044-0212.npy -tests/data/ljspeech/wavs/LJ002-0296.wav|tests/data/ljspeech/wavs/LJ002-0296.npy -tests/data/ljspeech/wavs/LJ012-0211.wav|tests/data/ljspeech/wavs/LJ012-0211.npy -tests/data/ljspeech/wavs/LJ026-0015.wav|tests/data/ljspeech/wavs/LJ026-0015.npy -tests/data/ljspeech/wavs/LJ023-0006.wav|tests/data/ljspeech/wavs/LJ023-0006.npy -tests/data/ljspeech/wavs/LJ025-0076.wav|tests/data/ljspeech/wavs/LJ025-0076.npy -tests/data/ljspeech/wavs/LJ025-0150.wav|tests/data/ljspeech/wavs/LJ025-0150.npy -tests/data/ljspeech/wavs/LJ039-0066.wav|tests/data/ljspeech/wavs/LJ039-0066.npy -tests/data/ljspeech/wavs/LJ025-0075.wav|tests/data/ljspeech/wavs/LJ025-0075.npy -tests/data/ljspeech/wavs/LJ021-0191.wav|tests/data/ljspeech/wavs/LJ021-0191.npy -tests/data/ljspeech/wavs/LJ012-0230.wav|tests/data/ljspeech/wavs/LJ012-0230.npy -tests/data/ljspeech/wavs/LJ012-0260.wav|tests/data/ljspeech/wavs/LJ012-0260.npy -tests/data/ljspeech/wavs/LJ041-0009.wav|tests/data/ljspeech/wavs/LJ041-0009.npy -tests/data/ljspeech/wavs/LJ045-0230.wav|tests/data/ljspeech/wavs/LJ045-0230.npy -tests/data/ljspeech/wavs/LJ049-0168.wav|tests/data/ljspeech/wavs/LJ049-0168.npy -tests/data/ljspeech/wavs/LJ015-0277.wav|tests/data/ljspeech/wavs/LJ015-0277.npy -tests/data/ljspeech/wavs/LJ030-0100.wav|tests/data/ljspeech/wavs/LJ030-0100.npy -tests/data/ljspeech/wavs/LJ018-0274.wav|tests/data/ljspeech/wavs/LJ018-0274.npy -tests/data/ljspeech/wavs/LJ006-0035.wav|tests/data/ljspeech/wavs/LJ006-0035.npy -tests/data/ljspeech/wavs/LJ009-0084.wav|tests/data/ljspeech/wavs/LJ009-0084.npy -tests/data/ljspeech/wavs/LJ009-0297.wav|tests/data/ljspeech/wavs/LJ009-0297.npy -tests/data/ljspeech/wavs/LJ045-0240.wav|tests/data/ljspeech/wavs/LJ045-0240.npy -tests/data/ljspeech/wavs/LJ014-0260.wav|tests/data/ljspeech/wavs/LJ014-0260.npy -tests/data/ljspeech/wavs/LJ009-0118.wav|tests/data/ljspeech/wavs/LJ009-0118.npy -tests/data/ljspeech/wavs/LJ022-0012.wav|tests/data/ljspeech/wavs/LJ022-0012.npy -tests/data/ljspeech/wavs/LJ045-0220.wav|tests/data/ljspeech/wavs/LJ045-0220.npy -tests/data/ljspeech/wavs/LJ022-0047.wav|tests/data/ljspeech/wavs/LJ022-0047.npy -tests/data/ljspeech/wavs/LJ008-0279.wav|tests/data/ljspeech/wavs/LJ008-0279.npy -tests/data/ljspeech/wavs/LJ005-0141.wav|tests/data/ljspeech/wavs/LJ005-0141.npy -tests/data/ljspeech/wavs/LJ035-0163.wav|tests/data/ljspeech/wavs/LJ035-0163.npy -tests/data/ljspeech/wavs/LJ030-0110.wav|tests/data/ljspeech/wavs/LJ030-0110.npy -tests/data/ljspeech/wavs/LJ015-0094.wav|tests/data/ljspeech/wavs/LJ015-0094.npy -tests/data/ljspeech/wavs/LJ034-0087.wav|tests/data/ljspeech/wavs/LJ034-0087.npy -tests/data/ljspeech/wavs/LJ002-0063.wav|tests/data/ljspeech/wavs/LJ002-0063.npy -tests/data/ljspeech/wavs/LJ028-0281.wav|tests/data/ljspeech/wavs/LJ028-0281.npy -tests/data/ljspeech/wavs/LJ047-0187.wav|tests/data/ljspeech/wavs/LJ047-0187.npy -tests/data/ljspeech/wavs/LJ002-0230.wav|tests/data/ljspeech/wavs/LJ002-0230.npy -tests/data/ljspeech/wavs/LJ019-0219.wav|tests/data/ljspeech/wavs/LJ019-0219.npy -tests/data/ljspeech/wavs/LJ014-0168.wav|tests/data/ljspeech/wavs/LJ014-0168.npy -tests/data/ljspeech/wavs/LJ010-0142.wav|tests/data/ljspeech/wavs/LJ010-0142.npy -tests/data/ljspeech/wavs/LJ019-0181.wav|tests/data/ljspeech/wavs/LJ019-0181.npy -tests/data/ljspeech/wavs/LJ011-0122.wav|tests/data/ljspeech/wavs/LJ011-0122.npy -tests/data/ljspeech/wavs/LJ007-0239.wav|tests/data/ljspeech/wavs/LJ007-0239.npy -tests/data/ljspeech/wavs/LJ029-0086.wav|tests/data/ljspeech/wavs/LJ029-0086.npy -tests/data/ljspeech/wavs/LJ028-0262.wav|tests/data/ljspeech/wavs/LJ028-0262.npy -tests/data/ljspeech/wavs/LJ019-0246.wav|tests/data/ljspeech/wavs/LJ019-0246.npy -tests/data/ljspeech/wavs/LJ021-0200.wav|tests/data/ljspeech/wavs/LJ021-0200.npy -tests/data/ljspeech/wavs/LJ010-0156.wav|tests/data/ljspeech/wavs/LJ010-0156.npy -tests/data/ljspeech/wavs/LJ016-0184.wav|tests/data/ljspeech/wavs/LJ016-0184.npy -tests/data/ljspeech/wavs/LJ038-0021.wav|tests/data/ljspeech/wavs/LJ038-0021.npy -tests/data/ljspeech/wavs/LJ003-0211.wav|tests/data/ljspeech/wavs/LJ003-0211.npy -tests/data/ljspeech/wavs/LJ050-0243.wav|tests/data/ljspeech/wavs/LJ050-0243.npy -tests/data/ljspeech/wavs/LJ019-0222.wav|tests/data/ljspeech/wavs/LJ019-0222.npy -tests/data/ljspeech/wavs/LJ016-0190.wav|tests/data/ljspeech/wavs/LJ016-0190.npy -tests/data/ljspeech/wavs/LJ003-0101.wav|tests/data/ljspeech/wavs/LJ003-0101.npy -tests/data/ljspeech/wavs/LJ008-0011.wav|tests/data/ljspeech/wavs/LJ008-0011.npy -tests/data/ljspeech/wavs/LJ019-0208.wav|tests/data/ljspeech/wavs/LJ019-0208.npy -tests/data/ljspeech/wavs/LJ007-0232.wav|tests/data/ljspeech/wavs/LJ007-0232.npy -tests/data/ljspeech/wavs/LJ034-0092.wav|tests/data/ljspeech/wavs/LJ034-0092.npy -tests/data/ljspeech/wavs/LJ028-0295.wav|tests/data/ljspeech/wavs/LJ028-0295.npy -tests/data/ljspeech/wavs/LJ032-0022.wav|tests/data/ljspeech/wavs/LJ032-0022.npy -tests/data/ljspeech/wavs/LJ010-0284.wav|tests/data/ljspeech/wavs/LJ010-0284.npy -tests/data/ljspeech/wavs/LJ041-0032.wav|tests/data/ljspeech/wavs/LJ041-0032.npy -tests/data/ljspeech/wavs/LJ010-0241.wav|tests/data/ljspeech/wavs/LJ010-0241.npy -tests/data/ljspeech/wavs/LJ016-0397.wav|tests/data/ljspeech/wavs/LJ016-0397.npy -tests/data/ljspeech/wavs/LJ042-0139.wav|tests/data/ljspeech/wavs/LJ042-0139.npy -tests/data/ljspeech/wavs/LJ043-0175.wav|tests/data/ljspeech/wavs/LJ043-0175.npy -tests/data/ljspeech/wavs/LJ007-0189.wav|tests/data/ljspeech/wavs/LJ007-0189.npy -tests/data/ljspeech/wavs/LJ034-0046.wav|tests/data/ljspeech/wavs/LJ034-0046.npy -tests/data/ljspeech/wavs/LJ042-0146.wav|tests/data/ljspeech/wavs/LJ042-0146.npy -tests/data/ljspeech/wavs/LJ043-0092.wav|tests/data/ljspeech/wavs/LJ043-0092.npy -tests/data/ljspeech/wavs/LJ037-0036.wav|tests/data/ljspeech/wavs/LJ037-0036.npy -tests/data/ljspeech/wavs/LJ005-0140.wav|tests/data/ljspeech/wavs/LJ005-0140.npy -tests/data/ljspeech/wavs/LJ037-0060.wav|tests/data/ljspeech/wavs/LJ037-0060.npy -tests/data/ljspeech/wavs/LJ036-0108.wav|tests/data/ljspeech/wavs/LJ036-0108.npy -tests/data/ljspeech/wavs/LJ022-0080.wav|tests/data/ljspeech/wavs/LJ022-0080.npy -tests/data/ljspeech/wavs/LJ016-0011.wav|tests/data/ljspeech/wavs/LJ016-0011.npy -tests/data/ljspeech/wavs/LJ032-0256.wav|tests/data/ljspeech/wavs/LJ032-0256.npy -tests/data/ljspeech/wavs/LJ011-0076.wav|tests/data/ljspeech/wavs/LJ011-0076.npy -tests/data/ljspeech/wavs/LJ003-0278.wav|tests/data/ljspeech/wavs/LJ003-0278.npy -tests/data/ljspeech/wavs/LJ002-0041.wav|tests/data/ljspeech/wavs/LJ002-0041.npy -tests/data/ljspeech/wavs/LJ037-0092.wav|tests/data/ljspeech/wavs/LJ037-0092.npy -tests/data/ljspeech/wavs/LJ041-0108.wav|tests/data/ljspeech/wavs/LJ041-0108.npy -tests/data/ljspeech/wavs/LJ037-0042.wav|tests/data/ljspeech/wavs/LJ037-0042.npy -tests/data/ljspeech/wavs/LJ049-0093.wav|tests/data/ljspeech/wavs/LJ049-0093.npy -tests/data/ljspeech/wavs/LJ003-0144.wav|tests/data/ljspeech/wavs/LJ003-0144.npy -tests/data/ljspeech/wavs/LJ006-0154.wav|tests/data/ljspeech/wavs/LJ006-0154.npy -tests/data/ljspeech/wavs/LJ010-0176.wav|tests/data/ljspeech/wavs/LJ010-0176.npy -tests/data/ljspeech/wavs/LJ007-0162.wav|tests/data/ljspeech/wavs/LJ007-0162.npy -tests/data/ljspeech/wavs/LJ048-0169.wav|tests/data/ljspeech/wavs/LJ048-0169.npy -tests/data/ljspeech/wavs/LJ012-0241.wav|tests/data/ljspeech/wavs/LJ012-0241.npy -tests/data/ljspeech/wavs/LJ018-0371.wav|tests/data/ljspeech/wavs/LJ018-0371.npy -tests/data/ljspeech/wavs/LJ010-0280.wav|tests/data/ljspeech/wavs/LJ010-0280.npy -tests/data/ljspeech/wavs/LJ005-0073.wav|tests/data/ljspeech/wavs/LJ005-0073.npy -tests/data/ljspeech/wavs/LJ050-0222.wav|tests/data/ljspeech/wavs/LJ050-0222.npy -tests/data/ljspeech/wavs/LJ042-0224.wav|tests/data/ljspeech/wavs/LJ042-0224.npy -tests/data/ljspeech/wavs/LJ027-0004.wav|tests/data/ljspeech/wavs/LJ027-0004.npy -tests/data/ljspeech/wavs/LJ028-0390.wav|tests/data/ljspeech/wavs/LJ028-0390.npy -tests/data/ljspeech/wavs/LJ050-0063.wav|tests/data/ljspeech/wavs/LJ050-0063.npy -tests/data/ljspeech/wavs/LJ046-0176.wav|tests/data/ljspeech/wavs/LJ046-0176.npy -tests/data/ljspeech/wavs/LJ028-0365.wav|tests/data/ljspeech/wavs/LJ028-0365.npy -tests/data/ljspeech/wavs/LJ016-0010.wav|tests/data/ljspeech/wavs/LJ016-0010.npy -tests/data/ljspeech/wavs/LJ018-0398.wav|tests/data/ljspeech/wavs/LJ018-0398.npy -tests/data/ljspeech/wavs/LJ022-0049.wav|tests/data/ljspeech/wavs/LJ022-0049.npy -tests/data/ljspeech/wavs/LJ008-0295.wav|tests/data/ljspeech/wavs/LJ008-0295.npy -tests/data/ljspeech/wavs/LJ019-0268.wav|tests/data/ljspeech/wavs/LJ019-0268.npy -tests/data/ljspeech/wavs/LJ001-0087.wav|tests/data/ljspeech/wavs/LJ001-0087.npy -tests/data/ljspeech/wavs/LJ007-0083.wav|tests/data/ljspeech/wavs/LJ007-0083.npy -tests/data/ljspeech/wavs/LJ012-0007.wav|tests/data/ljspeech/wavs/LJ012-0007.npy -tests/data/ljspeech/wavs/LJ029-0094.wav|tests/data/ljspeech/wavs/LJ029-0094.npy -tests/data/ljspeech/wavs/LJ011-0166.wav|tests/data/ljspeech/wavs/LJ011-0166.npy -tests/data/ljspeech/wavs/LJ039-0177.wav|tests/data/ljspeech/wavs/LJ039-0177.npy -tests/data/ljspeech/wavs/LJ004-0084.wav|tests/data/ljspeech/wavs/LJ004-0084.npy -tests/data/ljspeech/wavs/LJ021-0031.wav|tests/data/ljspeech/wavs/LJ021-0031.npy -tests/data/ljspeech/wavs/LJ017-0232.wav|tests/data/ljspeech/wavs/LJ017-0232.npy -tests/data/ljspeech/wavs/LJ001-0105.wav|tests/data/ljspeech/wavs/LJ001-0105.npy -tests/data/ljspeech/wavs/LJ013-0022.wav|tests/data/ljspeech/wavs/LJ013-0022.npy -tests/data/ljspeech/wavs/LJ001-0183.wav|tests/data/ljspeech/wavs/LJ001-0183.npy -tests/data/ljspeech/wavs/LJ048-0132.wav|tests/data/ljspeech/wavs/LJ048-0132.npy -tests/data/ljspeech/wavs/LJ010-0040.wav|tests/data/ljspeech/wavs/LJ010-0040.npy -tests/data/ljspeech/wavs/LJ008-0155.wav|tests/data/ljspeech/wavs/LJ008-0155.npy -tests/data/ljspeech/wavs/LJ005-0281.wav|tests/data/ljspeech/wavs/LJ005-0281.npy -tests/data/ljspeech/wavs/LJ013-0143.wav|tests/data/ljspeech/wavs/LJ013-0143.npy -tests/data/ljspeech/wavs/LJ018-0311.wav|tests/data/ljspeech/wavs/LJ018-0311.npy -tests/data/ljspeech/wavs/LJ032-0234.wav|tests/data/ljspeech/wavs/LJ032-0234.npy -tests/data/ljspeech/wavs/LJ043-0034.wav|tests/data/ljspeech/wavs/LJ043-0034.npy -tests/data/ljspeech/wavs/LJ031-0038.wav|tests/data/ljspeech/wavs/LJ031-0038.npy -tests/data/ljspeech/wavs/LJ010-0045.wav|tests/data/ljspeech/wavs/LJ010-0045.npy -tests/data/ljspeech/wavs/LJ025-0005.wav|tests/data/ljspeech/wavs/LJ025-0005.npy -tests/data/ljspeech/wavs/LJ043-0140.wav|tests/data/ljspeech/wavs/LJ043-0140.npy -tests/data/ljspeech/wavs/LJ010-0003.wav|tests/data/ljspeech/wavs/LJ010-0003.npy -tests/data/ljspeech/wavs/LJ022-0178.wav|tests/data/ljspeech/wavs/LJ022-0178.npy -tests/data/ljspeech/wavs/LJ018-0197.wav|tests/data/ljspeech/wavs/LJ018-0197.npy -tests/data/ljspeech/wavs/LJ026-0129.wav|tests/data/ljspeech/wavs/LJ026-0129.npy -tests/data/ljspeech/wavs/LJ002-0138.wav|tests/data/ljspeech/wavs/LJ002-0138.npy -tests/data/ljspeech/wavs/LJ049-0105.wav|tests/data/ljspeech/wavs/LJ049-0105.npy -tests/data/ljspeech/wavs/LJ006-0249.wav|tests/data/ljspeech/wavs/LJ006-0249.npy -tests/data/ljspeech/wavs/LJ037-0161.wav|tests/data/ljspeech/wavs/LJ037-0161.npy -tests/data/ljspeech/wavs/LJ027-0101.wav|tests/data/ljspeech/wavs/LJ027-0101.npy -tests/data/ljspeech/wavs/LJ003-0267.wav|tests/data/ljspeech/wavs/LJ003-0267.npy -tests/data/ljspeech/wavs/LJ033-0016.wav|tests/data/ljspeech/wavs/LJ033-0016.npy -tests/data/ljspeech/wavs/LJ049-0214.wav|tests/data/ljspeech/wavs/LJ049-0214.npy -tests/data/ljspeech/wavs/LJ027-0122.wav|tests/data/ljspeech/wavs/LJ027-0122.npy -tests/data/ljspeech/wavs/LJ005-0262.wav|tests/data/ljspeech/wavs/LJ005-0262.npy -tests/data/ljspeech/wavs/LJ042-0024.wav|tests/data/ljspeech/wavs/LJ042-0024.npy -tests/data/ljspeech/wavs/LJ007-0085.wav|tests/data/ljspeech/wavs/LJ007-0085.npy -tests/data/ljspeech/wavs/LJ015-0031.wav|tests/data/ljspeech/wavs/LJ015-0031.npy -tests/data/ljspeech/wavs/LJ029-0137.wav|tests/data/ljspeech/wavs/LJ029-0137.npy -tests/data/ljspeech/wavs/LJ032-0193.wav|tests/data/ljspeech/wavs/LJ032-0193.npy -tests/data/ljspeech/wavs/LJ019-0340.wav|tests/data/ljspeech/wavs/LJ019-0340.npy -tests/data/ljspeech/wavs/LJ025-0099.wav|tests/data/ljspeech/wavs/LJ025-0099.npy -tests/data/ljspeech/wavs/LJ018-0095.wav|tests/data/ljspeech/wavs/LJ018-0095.npy -tests/data/ljspeech/wavs/LJ008-0319.wav|tests/data/ljspeech/wavs/LJ008-0319.npy -tests/data/ljspeech/wavs/LJ010-0060.wav|tests/data/ljspeech/wavs/LJ010-0060.npy -tests/data/ljspeech/wavs/LJ015-0238.wav|tests/data/ljspeech/wavs/LJ015-0238.npy -tests/data/ljspeech/wavs/LJ016-0112.wav|tests/data/ljspeech/wavs/LJ016-0112.npy -tests/data/ljspeech/wavs/LJ044-0139.wav|tests/data/ljspeech/wavs/LJ044-0139.npy -tests/data/ljspeech/wavs/LJ008-0093.wav|tests/data/ljspeech/wavs/LJ008-0093.npy -tests/data/ljspeech/wavs/LJ010-0020.wav|tests/data/ljspeech/wavs/LJ010-0020.npy -tests/data/ljspeech/wavs/LJ041-0181.wav|tests/data/ljspeech/wavs/LJ041-0181.npy -tests/data/ljspeech/wavs/LJ036-0032.wav|tests/data/ljspeech/wavs/LJ036-0032.npy -tests/data/ljspeech/wavs/LJ001-0099.wav|tests/data/ljspeech/wavs/LJ001-0099.npy -tests/data/ljspeech/wavs/LJ008-0268.wav|tests/data/ljspeech/wavs/LJ008-0268.npy -tests/data/ljspeech/wavs/LJ045-0126.wav|tests/data/ljspeech/wavs/LJ045-0126.npy -tests/data/ljspeech/wavs/LJ006-0293.wav|tests/data/ljspeech/wavs/LJ006-0293.npy -tests/data/ljspeech/wavs/LJ045-0123.wav|tests/data/ljspeech/wavs/LJ045-0123.npy -tests/data/ljspeech/wavs/LJ012-0278.wav|tests/data/ljspeech/wavs/LJ012-0278.npy -tests/data/ljspeech/wavs/LJ005-0274.wav|tests/data/ljspeech/wavs/LJ005-0274.npy -tests/data/ljspeech/wavs/LJ045-0127.wav|tests/data/ljspeech/wavs/LJ045-0127.npy -tests/data/ljspeech/wavs/LJ009-0137.wav|tests/data/ljspeech/wavs/LJ009-0137.npy -tests/data/ljspeech/wavs/LJ019-0324.wav|tests/data/ljspeech/wavs/LJ019-0324.npy -tests/data/ljspeech/wavs/LJ003-0230.wav|tests/data/ljspeech/wavs/LJ003-0230.npy -tests/data/ljspeech/wavs/LJ041-0073.wav|tests/data/ljspeech/wavs/LJ041-0073.npy -tests/data/ljspeech/wavs/LJ014-0156.wav|tests/data/ljspeech/wavs/LJ014-0156.npy -tests/data/ljspeech/wavs/LJ037-0218.wav|tests/data/ljspeech/wavs/LJ037-0218.npy -tests/data/ljspeech/wavs/LJ008-0081.wav|tests/data/ljspeech/wavs/LJ008-0081.npy -tests/data/ljspeech/wavs/LJ038-0008.wav|tests/data/ljspeech/wavs/LJ038-0008.npy -tests/data/ljspeech/wavs/LJ033-0165.wav|tests/data/ljspeech/wavs/LJ033-0165.npy -tests/data/ljspeech/wavs/LJ010-0104.wav|tests/data/ljspeech/wavs/LJ010-0104.npy -tests/data/ljspeech/wavs/LJ031-0158.wav|tests/data/ljspeech/wavs/LJ031-0158.npy -tests/data/ljspeech/wavs/LJ030-0131.wav|tests/data/ljspeech/wavs/LJ030-0131.npy -tests/data/ljspeech/wavs/LJ008-0113.wav|tests/data/ljspeech/wavs/LJ008-0113.npy -tests/data/ljspeech/wavs/LJ011-0060.wav|tests/data/ljspeech/wavs/LJ011-0060.npy -tests/data/ljspeech/wavs/LJ017-0155.wav|tests/data/ljspeech/wavs/LJ017-0155.npy -tests/data/ljspeech/wavs/LJ006-0054.wav|tests/data/ljspeech/wavs/LJ006-0054.npy -tests/data/ljspeech/wavs/LJ046-0020.wav|tests/data/ljspeech/wavs/LJ046-0020.npy -tests/data/ljspeech/wavs/LJ015-0109.wav|tests/data/ljspeech/wavs/LJ015-0109.npy -tests/data/ljspeech/wavs/LJ013-0166.wav|tests/data/ljspeech/wavs/LJ013-0166.npy -tests/data/ljspeech/wavs/LJ011-0238.wav|tests/data/ljspeech/wavs/LJ011-0238.npy -tests/data/ljspeech/wavs/LJ048-0123.wav|tests/data/ljspeech/wavs/LJ048-0123.npy -tests/data/ljspeech/wavs/LJ029-0085.wav|tests/data/ljspeech/wavs/LJ029-0085.npy -tests/data/ljspeech/wavs/LJ022-0107.wav|tests/data/ljspeech/wavs/LJ022-0107.npy -tests/data/ljspeech/wavs/LJ042-0177.wav|tests/data/ljspeech/wavs/LJ042-0177.npy -tests/data/ljspeech/wavs/LJ002-0235.wav|tests/data/ljspeech/wavs/LJ002-0235.npy -tests/data/ljspeech/wavs/LJ039-0106.wav|tests/data/ljspeech/wavs/LJ039-0106.npy -tests/data/ljspeech/wavs/LJ029-0177.wav|tests/data/ljspeech/wavs/LJ029-0177.npy -tests/data/ljspeech/wavs/LJ016-0359.wav|tests/data/ljspeech/wavs/LJ016-0359.npy -tests/data/ljspeech/wavs/LJ010-0311.wav|tests/data/ljspeech/wavs/LJ010-0311.npy -tests/data/ljspeech/wavs/LJ044-0189.wav|tests/data/ljspeech/wavs/LJ044-0189.npy -tests/data/ljspeech/wavs/LJ005-0164.wav|tests/data/ljspeech/wavs/LJ005-0164.npy -tests/data/ljspeech/wavs/LJ003-0202.wav|tests/data/ljspeech/wavs/LJ003-0202.npy -tests/data/ljspeech/wavs/LJ001-0159.wav|tests/data/ljspeech/wavs/LJ001-0159.npy -tests/data/ljspeech/wavs/LJ018-0396.wav|tests/data/ljspeech/wavs/LJ018-0396.npy -tests/data/ljspeech/wavs/LJ021-0094.wav|tests/data/ljspeech/wavs/LJ021-0094.npy -tests/data/ljspeech/wavs/LJ036-0023.wav|tests/data/ljspeech/wavs/LJ036-0023.npy -tests/data/ljspeech/wavs/LJ038-0167.wav|tests/data/ljspeech/wavs/LJ038-0167.npy -tests/data/ljspeech/wavs/LJ046-0022.wav|tests/data/ljspeech/wavs/LJ046-0022.npy -tests/data/ljspeech/wavs/LJ046-0002.wav|tests/data/ljspeech/wavs/LJ046-0002.npy -tests/data/ljspeech/wavs/LJ018-0247.wav|tests/data/ljspeech/wavs/LJ018-0247.npy -tests/data/ljspeech/wavs/LJ025-0088.wav|tests/data/ljspeech/wavs/LJ025-0088.npy -tests/data/ljspeech/wavs/LJ049-0217.wav|tests/data/ljspeech/wavs/LJ049-0217.npy -tests/data/ljspeech/wavs/LJ046-0243.wav|tests/data/ljspeech/wavs/LJ046-0243.npy -tests/data/ljspeech/wavs/LJ015-0116.wav|tests/data/ljspeech/wavs/LJ015-0116.npy -tests/data/ljspeech/wavs/LJ009-0045.wav|tests/data/ljspeech/wavs/LJ009-0045.npy -tests/data/ljspeech/wavs/LJ044-0085.wav|tests/data/ljspeech/wavs/LJ044-0085.npy -tests/data/ljspeech/wavs/LJ009-0209.wav|tests/data/ljspeech/wavs/LJ009-0209.npy -tests/data/ljspeech/wavs/LJ046-0232.wav|tests/data/ljspeech/wavs/LJ046-0232.npy -tests/data/ljspeech/wavs/LJ008-0079.wav|tests/data/ljspeech/wavs/LJ008-0079.npy -tests/data/ljspeech/wavs/LJ011-0050.wav|tests/data/ljspeech/wavs/LJ011-0050.npy -tests/data/ljspeech/wavs/LJ022-0163.wav|tests/data/ljspeech/wavs/LJ022-0163.npy -tests/data/ljspeech/wavs/LJ041-0163.wav|tests/data/ljspeech/wavs/LJ041-0163.npy -tests/data/ljspeech/wavs/LJ013-0088.wav|tests/data/ljspeech/wavs/LJ013-0088.npy -tests/data/ljspeech/wavs/LJ029-0062.wav|tests/data/ljspeech/wavs/LJ029-0062.npy -tests/data/ljspeech/wavs/LJ026-0067.wav|tests/data/ljspeech/wavs/LJ026-0067.npy -tests/data/ljspeech/wavs/LJ042-0225.wav|tests/data/ljspeech/wavs/LJ042-0225.npy -tests/data/ljspeech/wavs/LJ044-0049.wav|tests/data/ljspeech/wavs/LJ044-0049.npy -tests/data/ljspeech/wavs/LJ009-0274.wav|tests/data/ljspeech/wavs/LJ009-0274.npy -tests/data/ljspeech/wavs/LJ022-0189.wav|tests/data/ljspeech/wavs/LJ022-0189.npy -tests/data/ljspeech/wavs/LJ042-0060.wav|tests/data/ljspeech/wavs/LJ042-0060.npy -tests/data/ljspeech/wavs/LJ050-0253.wav|tests/data/ljspeech/wavs/LJ050-0253.npy -tests/data/ljspeech/wavs/LJ007-0052.wav|tests/data/ljspeech/wavs/LJ007-0052.npy -tests/data/ljspeech/wavs/LJ040-0176.wav|tests/data/ljspeech/wavs/LJ040-0176.npy -tests/data/ljspeech/wavs/LJ041-0048.wav|tests/data/ljspeech/wavs/LJ041-0048.npy -tests/data/ljspeech/wavs/LJ016-0349.wav|tests/data/ljspeech/wavs/LJ016-0349.npy -tests/data/ljspeech/wavs/LJ043-0061.wav|tests/data/ljspeech/wavs/LJ043-0061.npy -tests/data/ljspeech/wavs/LJ049-0032.wav|tests/data/ljspeech/wavs/LJ049-0032.npy -tests/data/ljspeech/wavs/LJ042-0055.wav|tests/data/ljspeech/wavs/LJ042-0055.npy -tests/data/ljspeech/wavs/LJ019-0356.wav|tests/data/ljspeech/wavs/LJ019-0356.npy -tests/data/ljspeech/wavs/LJ032-0168.wav|tests/data/ljspeech/wavs/LJ032-0168.npy -tests/data/ljspeech/wavs/LJ004-0198.wav|tests/data/ljspeech/wavs/LJ004-0198.npy -tests/data/ljspeech/wavs/LJ040-0063.wav|tests/data/ljspeech/wavs/LJ040-0063.npy -tests/data/ljspeech/wavs/LJ019-0353.wav|tests/data/ljspeech/wavs/LJ019-0353.npy -tests/data/ljspeech/wavs/LJ005-0294.wav|tests/data/ljspeech/wavs/LJ005-0294.npy -tests/data/ljspeech/wavs/LJ005-0234.wav|tests/data/ljspeech/wavs/LJ005-0234.npy -tests/data/ljspeech/wavs/LJ025-0061.wav|tests/data/ljspeech/wavs/LJ025-0061.npy -tests/data/ljspeech/wavs/LJ042-0171.wav|tests/data/ljspeech/wavs/LJ042-0171.npy -tests/data/ljspeech/wavs/LJ048-0207.wav|tests/data/ljspeech/wavs/LJ048-0207.npy -tests/data/ljspeech/wavs/LJ024-0032.wav|tests/data/ljspeech/wavs/LJ024-0032.npy -tests/data/ljspeech/wavs/LJ026-0069.wav|tests/data/ljspeech/wavs/LJ026-0069.npy -tests/data/ljspeech/wavs/LJ031-0207.wav|tests/data/ljspeech/wavs/LJ031-0207.npy -tests/data/ljspeech/wavs/LJ038-0168.wav|tests/data/ljspeech/wavs/LJ038-0168.npy -tests/data/ljspeech/wavs/LJ004-0190.wav|tests/data/ljspeech/wavs/LJ004-0190.npy -tests/data/ljspeech/wavs/LJ005-0216.wav|tests/data/ljspeech/wavs/LJ005-0216.npy -tests/data/ljspeech/wavs/LJ016-0017.wav|tests/data/ljspeech/wavs/LJ016-0017.npy -tests/data/ljspeech/wavs/LJ036-0162.wav|tests/data/ljspeech/wavs/LJ036-0162.npy -tests/data/ljspeech/wavs/LJ031-0021.wav|tests/data/ljspeech/wavs/LJ031-0021.npy -tests/data/ljspeech/wavs/LJ021-0116.wav|tests/data/ljspeech/wavs/LJ021-0116.npy -tests/data/ljspeech/wavs/LJ026-0039.wav|tests/data/ljspeech/wavs/LJ026-0039.npy -tests/data/ljspeech/wavs/LJ017-0071.wav|tests/data/ljspeech/wavs/LJ017-0071.npy -tests/data/ljspeech/wavs/LJ021-0035.wav|tests/data/ljspeech/wavs/LJ021-0035.npy -tests/data/ljspeech/wavs/LJ017-0103.wav|tests/data/ljspeech/wavs/LJ017-0103.npy -tests/data/ljspeech/wavs/LJ010-0119.wav|tests/data/ljspeech/wavs/LJ010-0119.npy -tests/data/ljspeech/wavs/LJ026-0094.wav|tests/data/ljspeech/wavs/LJ026-0094.npy -tests/data/ljspeech/wavs/LJ003-0056.wav|tests/data/ljspeech/wavs/LJ003-0056.npy -tests/data/ljspeech/wavs/LJ013-0016.wav|tests/data/ljspeech/wavs/LJ013-0016.npy -tests/data/ljspeech/wavs/LJ020-0054.wav|tests/data/ljspeech/wavs/LJ020-0054.npy -tests/data/ljspeech/wavs/LJ049-0056.wav|tests/data/ljspeech/wavs/LJ049-0056.npy -tests/data/ljspeech/wavs/LJ043-0028.wav|tests/data/ljspeech/wavs/LJ043-0028.npy -tests/data/ljspeech/wavs/LJ045-0091.wav|tests/data/ljspeech/wavs/LJ045-0091.npy -tests/data/ljspeech/wavs/LJ015-0020.wav|tests/data/ljspeech/wavs/LJ015-0020.npy -tests/data/ljspeech/wavs/LJ021-0069.wav|tests/data/ljspeech/wavs/LJ021-0069.npy -tests/data/ljspeech/wavs/LJ013-0068.wav|tests/data/ljspeech/wavs/LJ013-0068.npy -tests/data/ljspeech/wavs/LJ038-0096.wav|tests/data/ljspeech/wavs/LJ038-0096.npy -tests/data/ljspeech/wavs/LJ046-0245.wav|tests/data/ljspeech/wavs/LJ046-0245.npy -tests/data/ljspeech/wavs/LJ012-0071.wav|tests/data/ljspeech/wavs/LJ012-0071.npy -tests/data/ljspeech/wavs/LJ032-0181.wav|tests/data/ljspeech/wavs/LJ032-0181.npy -tests/data/ljspeech/wavs/LJ024-0125.wav|tests/data/ljspeech/wavs/LJ024-0125.npy -tests/data/ljspeech/wavs/LJ028-0003.wav|tests/data/ljspeech/wavs/LJ028-0003.npy -tests/data/ljspeech/wavs/LJ004-0164.wav|tests/data/ljspeech/wavs/LJ004-0164.npy -tests/data/ljspeech/wavs/LJ034-0208.wav|tests/data/ljspeech/wavs/LJ034-0208.npy -tests/data/ljspeech/wavs/LJ031-0031.wav|tests/data/ljspeech/wavs/LJ031-0031.npy -tests/data/ljspeech/wavs/LJ002-0294.wav|tests/data/ljspeech/wavs/LJ002-0294.npy -tests/data/ljspeech/wavs/LJ014-0294.wav|tests/data/ljspeech/wavs/LJ014-0294.npy -tests/data/ljspeech/wavs/LJ002-0108.wav|tests/data/ljspeech/wavs/LJ002-0108.npy -tests/data/ljspeech/wavs/LJ047-0150.wav|tests/data/ljspeech/wavs/LJ047-0150.npy -tests/data/ljspeech/wavs/LJ011-0278.wav|tests/data/ljspeech/wavs/LJ011-0278.npy -tests/data/ljspeech/wavs/LJ040-0154.wav|tests/data/ljspeech/wavs/LJ040-0154.npy -tests/data/ljspeech/wavs/LJ028-0392.wav|tests/data/ljspeech/wavs/LJ028-0392.npy -tests/data/ljspeech/wavs/LJ032-0108.wav|tests/data/ljspeech/wavs/LJ032-0108.npy -tests/data/ljspeech/wavs/LJ047-0186.wav|tests/data/ljspeech/wavs/LJ047-0186.npy -tests/data/ljspeech/wavs/LJ040-0031.wav|tests/data/ljspeech/wavs/LJ040-0031.npy -tests/data/ljspeech/wavs/LJ038-0112.wav|tests/data/ljspeech/wavs/LJ038-0112.npy -tests/data/ljspeech/wavs/LJ048-0092.wav|tests/data/ljspeech/wavs/LJ048-0092.npy -tests/data/ljspeech/wavs/LJ042-0092.wav|tests/data/ljspeech/wavs/LJ042-0092.npy -tests/data/ljspeech/wavs/LJ028-0395.wav|tests/data/ljspeech/wavs/LJ028-0395.npy -tests/data/ljspeech/wavs/LJ045-0154.wav|tests/data/ljspeech/wavs/LJ045-0154.npy -tests/data/ljspeech/wavs/LJ016-0247.wav|tests/data/ljspeech/wavs/LJ016-0247.npy -tests/data/ljspeech/wavs/LJ045-0049.wav|tests/data/ljspeech/wavs/LJ045-0049.npy -tests/data/ljspeech/wavs/LJ022-0045.wav|tests/data/ljspeech/wavs/LJ022-0045.npy -tests/data/ljspeech/wavs/LJ038-0267.wav|tests/data/ljspeech/wavs/LJ038-0267.npy -tests/data/ljspeech/wavs/LJ029-0191.wav|tests/data/ljspeech/wavs/LJ029-0191.npy -tests/data/ljspeech/wavs/LJ007-0161.wav|tests/data/ljspeech/wavs/LJ007-0161.npy -tests/data/ljspeech/wavs/LJ046-0206.wav|tests/data/ljspeech/wavs/LJ046-0206.npy -tests/data/ljspeech/wavs/LJ039-0094.wav|tests/data/ljspeech/wavs/LJ039-0094.npy -tests/data/ljspeech/wavs/LJ046-0070.wav|tests/data/ljspeech/wavs/LJ046-0070.npy -tests/data/ljspeech/wavs/LJ048-0179.wav|tests/data/ljspeech/wavs/LJ048-0179.npy -tests/data/ljspeech/wavs/LJ004-0051.wav|tests/data/ljspeech/wavs/LJ004-0051.npy -tests/data/ljspeech/wavs/LJ002-0283.wav|tests/data/ljspeech/wavs/LJ002-0283.npy -tests/data/ljspeech/wavs/LJ016-0239.wav|tests/data/ljspeech/wavs/LJ016-0239.npy -tests/data/ljspeech/wavs/LJ041-0013.wav|tests/data/ljspeech/wavs/LJ041-0013.npy -tests/data/ljspeech/wavs/LJ012-0137.wav|tests/data/ljspeech/wavs/LJ012-0137.npy -tests/data/ljspeech/wavs/LJ005-0197.wav|tests/data/ljspeech/wavs/LJ005-0197.npy -tests/data/ljspeech/wavs/LJ002-0220.wav|tests/data/ljspeech/wavs/LJ002-0220.npy -tests/data/ljspeech/wavs/LJ005-0186.wav|tests/data/ljspeech/wavs/LJ005-0186.npy -tests/data/ljspeech/wavs/LJ019-0147.wav|tests/data/ljspeech/wavs/LJ019-0147.npy -tests/data/ljspeech/wavs/LJ041-0101.wav|tests/data/ljspeech/wavs/LJ041-0101.npy -tests/data/ljspeech/wavs/LJ037-0244.wav|tests/data/ljspeech/wavs/LJ037-0244.npy -tests/data/ljspeech/wavs/LJ001-0034.wav|tests/data/ljspeech/wavs/LJ001-0034.npy -tests/data/ljspeech/wavs/LJ023-0020.wav|tests/data/ljspeech/wavs/LJ023-0020.npy -tests/data/ljspeech/wavs/LJ013-0184.wav|tests/data/ljspeech/wavs/LJ013-0184.npy -tests/data/ljspeech/wavs/LJ048-0112.wav|tests/data/ljspeech/wavs/LJ048-0112.npy -tests/data/ljspeech/wavs/LJ030-0049.wav|tests/data/ljspeech/wavs/LJ030-0049.npy -tests/data/ljspeech/wavs/LJ016-0172.wav|tests/data/ljspeech/wavs/LJ016-0172.npy -tests/data/ljspeech/wavs/LJ043-0053.wav|tests/data/ljspeech/wavs/LJ043-0053.npy -tests/data/ljspeech/wavs/LJ005-0070.wav|tests/data/ljspeech/wavs/LJ005-0070.npy -tests/data/ljspeech/wavs/LJ013-0152.wav|tests/data/ljspeech/wavs/LJ013-0152.npy -tests/data/ljspeech/wavs/LJ006-0022.wav|tests/data/ljspeech/wavs/LJ006-0022.npy -tests/data/ljspeech/wavs/LJ024-0059.wav|tests/data/ljspeech/wavs/LJ024-0059.npy -tests/data/ljspeech/wavs/LJ045-0041.wav|tests/data/ljspeech/wavs/LJ045-0041.npy -tests/data/ljspeech/wavs/LJ016-0396.wav|tests/data/ljspeech/wavs/LJ016-0396.npy -tests/data/ljspeech/wavs/LJ006-0010.wav|tests/data/ljspeech/wavs/LJ006-0010.npy -tests/data/ljspeech/wavs/LJ045-0005.wav|tests/data/ljspeech/wavs/LJ045-0005.npy -tests/data/ljspeech/wavs/LJ023-0113.wav|tests/data/ljspeech/wavs/LJ023-0113.npy -tests/data/ljspeech/wavs/LJ030-0084.wav|tests/data/ljspeech/wavs/LJ030-0084.npy -tests/data/ljspeech/wavs/LJ048-0124.wav|tests/data/ljspeech/wavs/LJ048-0124.npy -tests/data/ljspeech/wavs/LJ033-0062.wav|tests/data/ljspeech/wavs/LJ033-0062.npy -tests/data/ljspeech/wavs/LJ012-0198.wav|tests/data/ljspeech/wavs/LJ012-0198.npy -tests/data/ljspeech/wavs/LJ028-0296.wav|tests/data/ljspeech/wavs/LJ028-0296.npy -tests/data/ljspeech/wavs/LJ006-0292.wav|tests/data/ljspeech/wavs/LJ006-0292.npy -tests/data/ljspeech/wavs/LJ043-0067.wav|tests/data/ljspeech/wavs/LJ043-0067.npy -tests/data/ljspeech/wavs/LJ005-0065.wav|tests/data/ljspeech/wavs/LJ005-0065.npy -tests/data/ljspeech/wavs/LJ006-0025.wav|tests/data/ljspeech/wavs/LJ006-0025.npy -tests/data/ljspeech/wavs/LJ006-0038.wav|tests/data/ljspeech/wavs/LJ006-0038.npy -tests/data/ljspeech/wavs/LJ017-0037.wav|tests/data/ljspeech/wavs/LJ017-0037.npy -tests/data/ljspeech/wavs/LJ030-0059.wav|tests/data/ljspeech/wavs/LJ030-0059.npy -tests/data/ljspeech/wavs/LJ015-0205.wav|tests/data/ljspeech/wavs/LJ015-0205.npy -tests/data/ljspeech/wavs/LJ004-0147.wav|tests/data/ljspeech/wavs/LJ004-0147.npy -tests/data/ljspeech/wavs/LJ017-0230.wav|tests/data/ljspeech/wavs/LJ017-0230.npy -tests/data/ljspeech/wavs/LJ045-0178.wav|tests/data/ljspeech/wavs/LJ045-0178.npy -tests/data/ljspeech/wavs/LJ038-0086.wav|tests/data/ljspeech/wavs/LJ038-0086.npy -tests/data/ljspeech/wavs/LJ028-0355.wav|tests/data/ljspeech/wavs/LJ028-0355.npy -tests/data/ljspeech/wavs/LJ003-0048.wav|tests/data/ljspeech/wavs/LJ003-0048.npy -tests/data/ljspeech/wavs/LJ009-0002.wav|tests/data/ljspeech/wavs/LJ009-0002.npy -tests/data/ljspeech/wavs/LJ019-0189.wav|tests/data/ljspeech/wavs/LJ019-0189.npy -tests/data/ljspeech/wavs/LJ040-0183.wav|tests/data/ljspeech/wavs/LJ040-0183.npy -tests/data/ljspeech/wavs/LJ050-0206.wav|tests/data/ljspeech/wavs/LJ050-0206.npy -tests/data/ljspeech/wavs/LJ021-0209.wav|tests/data/ljspeech/wavs/LJ021-0209.npy -tests/data/ljspeech/wavs/LJ035-0072.wav|tests/data/ljspeech/wavs/LJ035-0072.npy -tests/data/ljspeech/wavs/LJ004-0059.wav|tests/data/ljspeech/wavs/LJ004-0059.npy -tests/data/ljspeech/wavs/LJ022-0038.wav|tests/data/ljspeech/wavs/LJ022-0038.npy -tests/data/ljspeech/wavs/LJ010-0056.wav|tests/data/ljspeech/wavs/LJ010-0056.npy -tests/data/ljspeech/wavs/LJ034-0078.wav|tests/data/ljspeech/wavs/LJ034-0078.npy -tests/data/ljspeech/wavs/LJ008-0153.wav|tests/data/ljspeech/wavs/LJ008-0153.npy -tests/data/ljspeech/wavs/LJ016-0220.wav|tests/data/ljspeech/wavs/LJ016-0220.npy -tests/data/ljspeech/wavs/LJ028-0061.wav|tests/data/ljspeech/wavs/LJ028-0061.npy -tests/data/ljspeech/wavs/LJ042-0088.wav|tests/data/ljspeech/wavs/LJ042-0088.npy -tests/data/ljspeech/wavs/LJ021-0151.wav|tests/data/ljspeech/wavs/LJ021-0151.npy -tests/data/ljspeech/wavs/LJ026-0062.wav|tests/data/ljspeech/wavs/LJ026-0062.npy -tests/data/ljspeech/wavs/LJ048-0055.wav|tests/data/ljspeech/wavs/LJ048-0055.npy -tests/data/ljspeech/wavs/LJ040-0120.wav|tests/data/ljspeech/wavs/LJ040-0120.npy -tests/data/ljspeech/wavs/LJ027-0177.wav|tests/data/ljspeech/wavs/LJ027-0177.npy -tests/data/ljspeech/wavs/LJ012-0258.wav|tests/data/ljspeech/wavs/LJ012-0258.npy -tests/data/ljspeech/wavs/LJ046-0054.wav|tests/data/ljspeech/wavs/LJ046-0054.npy -tests/data/ljspeech/wavs/LJ004-0072.wav|tests/data/ljspeech/wavs/LJ004-0072.npy -tests/data/ljspeech/wavs/LJ010-0175.wav|tests/data/ljspeech/wavs/LJ010-0175.npy -tests/data/ljspeech/wavs/LJ048-0192.wav|tests/data/ljspeech/wavs/LJ048-0192.npy -tests/data/ljspeech/wavs/LJ035-0023.wav|tests/data/ljspeech/wavs/LJ035-0023.npy -tests/data/ljspeech/wavs/LJ019-0370.wav|tests/data/ljspeech/wavs/LJ019-0370.npy -tests/data/ljspeech/wavs/LJ042-0123.wav|tests/data/ljspeech/wavs/LJ042-0123.npy -tests/data/ljspeech/wavs/LJ002-0325.wav|tests/data/ljspeech/wavs/LJ002-0325.npy -tests/data/ljspeech/wavs/LJ032-0015.wav|tests/data/ljspeech/wavs/LJ032-0015.npy -tests/data/ljspeech/wavs/LJ041-0202.wav|tests/data/ljspeech/wavs/LJ041-0202.npy -tests/data/ljspeech/wavs/LJ032-0221.wav|tests/data/ljspeech/wavs/LJ032-0221.npy -tests/data/ljspeech/wavs/LJ015-0002.wav|tests/data/ljspeech/wavs/LJ015-0002.npy -tests/data/ljspeech/wavs/LJ041-0130.wav|tests/data/ljspeech/wavs/LJ041-0130.npy -tests/data/ljspeech/wavs/LJ020-0085.wav|tests/data/ljspeech/wavs/LJ020-0085.npy -tests/data/ljspeech/wavs/LJ019-0074.wav|tests/data/ljspeech/wavs/LJ019-0074.npy -tests/data/ljspeech/wavs/LJ009-0012.wav|tests/data/ljspeech/wavs/LJ009-0012.npy -tests/data/ljspeech/wavs/LJ026-0132.wav|tests/data/ljspeech/wavs/LJ026-0132.npy -tests/data/ljspeech/wavs/LJ002-0222.wav|tests/data/ljspeech/wavs/LJ002-0222.npy -tests/data/ljspeech/wavs/LJ025-0115.wav|tests/data/ljspeech/wavs/LJ025-0115.npy -tests/data/ljspeech/wavs/LJ041-0023.wav|tests/data/ljspeech/wavs/LJ041-0023.npy -tests/data/ljspeech/wavs/LJ008-0219.wav|tests/data/ljspeech/wavs/LJ008-0219.npy -tests/data/ljspeech/wavs/LJ034-0157.wav|tests/data/ljspeech/wavs/LJ034-0157.npy -tests/data/ljspeech/wavs/LJ007-0096.wav|tests/data/ljspeech/wavs/LJ007-0096.npy -tests/data/ljspeech/wavs/LJ049-0119.wav|tests/data/ljspeech/wavs/LJ049-0119.npy -tests/data/ljspeech/wavs/LJ012-0173.wav|tests/data/ljspeech/wavs/LJ012-0173.npy -tests/data/ljspeech/wavs/LJ043-0076.wav|tests/data/ljspeech/wavs/LJ043-0076.npy -tests/data/ljspeech/wavs/LJ019-0040.wav|tests/data/ljspeech/wavs/LJ019-0040.npy -tests/data/ljspeech/wavs/LJ028-0452.wav|tests/data/ljspeech/wavs/LJ028-0452.npy -tests/data/ljspeech/wavs/LJ049-0026.wav|tests/data/ljspeech/wavs/LJ049-0026.npy -tests/data/ljspeech/wavs/LJ010-0279.wav|tests/data/ljspeech/wavs/LJ010-0279.npy -tests/data/ljspeech/wavs/LJ049-0092.wav|tests/data/ljspeech/wavs/LJ049-0092.npy -tests/data/ljspeech/wavs/LJ015-0042.wav|tests/data/ljspeech/wavs/LJ015-0042.npy -tests/data/ljspeech/wavs/LJ037-0166.wav|tests/data/ljspeech/wavs/LJ037-0166.npy -tests/data/ljspeech/wavs/LJ028-0445.wav|tests/data/ljspeech/wavs/LJ028-0445.npy -tests/data/ljspeech/wavs/LJ010-0024.wav|tests/data/ljspeech/wavs/LJ010-0024.npy -tests/data/ljspeech/wavs/LJ015-0043.wav|tests/data/ljspeech/wavs/LJ015-0043.npy -tests/data/ljspeech/wavs/LJ018-0081.wav|tests/data/ljspeech/wavs/LJ018-0081.npy -tests/data/ljspeech/wavs/LJ001-0132.wav|tests/data/ljspeech/wavs/LJ001-0132.npy -tests/data/ljspeech/wavs/LJ014-0199.wav|tests/data/ljspeech/wavs/LJ014-0199.npy -tests/data/ljspeech/wavs/LJ016-0014.wav|tests/data/ljspeech/wavs/LJ016-0014.npy -tests/data/ljspeech/wavs/LJ044-0220.wav|tests/data/ljspeech/wavs/LJ044-0220.npy -tests/data/ljspeech/wavs/LJ044-0106.wav|tests/data/ljspeech/wavs/LJ044-0106.npy -tests/data/ljspeech/wavs/LJ012-0197.wav|tests/data/ljspeech/wavs/LJ012-0197.npy -tests/data/ljspeech/wavs/LJ037-0230.wav|tests/data/ljspeech/wavs/LJ037-0230.npy -tests/data/ljspeech/wavs/LJ038-0156.wav|tests/data/ljspeech/wavs/LJ038-0156.npy -tests/data/ljspeech/wavs/LJ012-0239.wav|tests/data/ljspeech/wavs/LJ012-0239.npy -tests/data/ljspeech/wavs/LJ037-0070.wav|tests/data/ljspeech/wavs/LJ037-0070.npy -tests/data/ljspeech/wavs/LJ013-0115.wav|tests/data/ljspeech/wavs/LJ013-0115.npy -tests/data/ljspeech/wavs/LJ016-0305.wav|tests/data/ljspeech/wavs/LJ016-0305.npy -tests/data/ljspeech/wavs/LJ010-0253.wav|tests/data/ljspeech/wavs/LJ010-0253.npy -tests/data/ljspeech/wavs/LJ044-0109.wav|tests/data/ljspeech/wavs/LJ044-0109.npy -tests/data/ljspeech/wavs/LJ044-0121.wav|tests/data/ljspeech/wavs/LJ044-0121.npy -tests/data/ljspeech/wavs/LJ013-0135.wav|tests/data/ljspeech/wavs/LJ013-0135.npy -tests/data/ljspeech/wavs/LJ017-0014.wav|tests/data/ljspeech/wavs/LJ017-0014.npy -tests/data/ljspeech/wavs/LJ010-0265.wav|tests/data/ljspeech/wavs/LJ010-0265.npy -tests/data/ljspeech/wavs/LJ004-0009.wav|tests/data/ljspeech/wavs/LJ004-0009.npy -tests/data/ljspeech/wavs/LJ039-0212.wav|tests/data/ljspeech/wavs/LJ039-0212.npy -tests/data/ljspeech/wavs/LJ015-0047.wav|tests/data/ljspeech/wavs/LJ015-0047.npy -tests/data/ljspeech/wavs/LJ049-0143.wav|tests/data/ljspeech/wavs/LJ049-0143.npy -tests/data/ljspeech/wavs/LJ012-0204.wav|tests/data/ljspeech/wavs/LJ012-0204.npy -tests/data/ljspeech/wavs/LJ014-0024.wav|tests/data/ljspeech/wavs/LJ014-0024.npy -tests/data/ljspeech/wavs/LJ040-0185.wav|tests/data/ljspeech/wavs/LJ040-0185.npy -tests/data/ljspeech/wavs/LJ016-0386.wav|tests/data/ljspeech/wavs/LJ016-0386.npy -tests/data/ljspeech/wavs/LJ004-0197.wav|tests/data/ljspeech/wavs/LJ004-0197.npy -tests/data/ljspeech/wavs/LJ016-0113.wav|tests/data/ljspeech/wavs/LJ016-0113.npy -tests/data/ljspeech/wavs/LJ039-0197.wav|tests/data/ljspeech/wavs/LJ039-0197.npy -tests/data/ljspeech/wavs/LJ003-0330.wav|tests/data/ljspeech/wavs/LJ003-0330.npy -tests/data/ljspeech/wavs/LJ019-0034.wav|tests/data/ljspeech/wavs/LJ019-0034.npy -tests/data/ljspeech/wavs/LJ039-0220.wav|tests/data/ljspeech/wavs/LJ039-0220.npy -tests/data/ljspeech/wavs/LJ039-0195.wav|tests/data/ljspeech/wavs/LJ039-0195.npy -tests/data/ljspeech/wavs/LJ015-0229.wav|tests/data/ljspeech/wavs/LJ015-0229.npy -tests/data/ljspeech/wavs/LJ016-0361.wav|tests/data/ljspeech/wavs/LJ016-0361.npy -tests/data/ljspeech/wavs/LJ032-0212.wav|tests/data/ljspeech/wavs/LJ032-0212.npy -tests/data/ljspeech/wavs/LJ037-0134.wav|tests/data/ljspeech/wavs/LJ037-0134.npy -tests/data/ljspeech/wavs/LJ038-0206.wav|tests/data/ljspeech/wavs/LJ038-0206.npy -tests/data/ljspeech/wavs/LJ033-0093.wav|tests/data/ljspeech/wavs/LJ033-0093.npy -tests/data/ljspeech/wavs/LJ047-0026.wav|tests/data/ljspeech/wavs/LJ047-0026.npy -tests/data/ljspeech/wavs/LJ046-0253.wav|tests/data/ljspeech/wavs/LJ046-0253.npy -tests/data/ljspeech/wavs/LJ026-0035.wav|tests/data/ljspeech/wavs/LJ026-0035.npy -tests/data/ljspeech/wavs/LJ027-0011.wav|tests/data/ljspeech/wavs/LJ027-0011.npy -tests/data/ljspeech/wavs/LJ040-0191.wav|tests/data/ljspeech/wavs/LJ040-0191.npy -tests/data/ljspeech/wavs/LJ003-0133.wav|tests/data/ljspeech/wavs/LJ003-0133.npy -tests/data/ljspeech/wavs/LJ013-0098.wav|tests/data/ljspeech/wavs/LJ013-0098.npy -tests/data/ljspeech/wavs/LJ019-0140.wav|tests/data/ljspeech/wavs/LJ019-0140.npy -tests/data/ljspeech/wavs/LJ027-0019.wav|tests/data/ljspeech/wavs/LJ027-0019.npy -tests/data/ljspeech/wavs/LJ040-0114.wav|tests/data/ljspeech/wavs/LJ040-0114.npy -tests/data/ljspeech/wavs/LJ013-0103.wav|tests/data/ljspeech/wavs/LJ013-0103.npy -tests/data/ljspeech/wavs/LJ040-0202.wav|tests/data/ljspeech/wavs/LJ040-0202.npy -tests/data/ljspeech/wavs/LJ027-0078.wav|tests/data/ljspeech/wavs/LJ027-0078.npy -tests/data/ljspeech/wavs/LJ043-0136.wav|tests/data/ljspeech/wavs/LJ043-0136.npy -tests/data/ljspeech/wavs/LJ047-0048.wav|tests/data/ljspeech/wavs/LJ047-0048.npy -tests/data/ljspeech/wavs/LJ016-0143.wav|tests/data/ljspeech/wavs/LJ016-0143.npy -tests/data/ljspeech/wavs/LJ012-0063.wav|tests/data/ljspeech/wavs/LJ012-0063.npy -tests/data/ljspeech/wavs/LJ006-0050.wav|tests/data/ljspeech/wavs/LJ006-0050.npy -tests/data/ljspeech/wavs/LJ033-0014.wav|tests/data/ljspeech/wavs/LJ033-0014.npy -tests/data/ljspeech/wavs/LJ045-0235.wav|tests/data/ljspeech/wavs/LJ045-0235.npy -tests/data/ljspeech/wavs/LJ049-0148.wav|tests/data/ljspeech/wavs/LJ049-0148.npy -tests/data/ljspeech/wavs/LJ046-0036.wav|tests/data/ljspeech/wavs/LJ046-0036.npy -tests/data/ljspeech/wavs/LJ016-0370.wav|tests/data/ljspeech/wavs/LJ016-0370.npy -tests/data/ljspeech/wavs/LJ045-0080.wav|tests/data/ljspeech/wavs/LJ045-0080.npy -tests/data/ljspeech/wavs/LJ016-0419.wav|tests/data/ljspeech/wavs/LJ016-0419.npy -tests/data/ljspeech/wavs/LJ012-0016.wav|tests/data/ljspeech/wavs/LJ012-0016.npy -tests/data/ljspeech/wavs/LJ005-0015.wav|tests/data/ljspeech/wavs/LJ005-0015.npy -tests/data/ljspeech/wavs/LJ002-0195.wav|tests/data/ljspeech/wavs/LJ002-0195.npy -tests/data/ljspeech/wavs/LJ050-0237.wav|tests/data/ljspeech/wavs/LJ050-0237.npy -tests/data/ljspeech/wavs/LJ032-0159.wav|tests/data/ljspeech/wavs/LJ032-0159.npy -tests/data/ljspeech/wavs/LJ035-0168.wav|tests/data/ljspeech/wavs/LJ035-0168.npy -tests/data/ljspeech/wavs/LJ023-0010.wav|tests/data/ljspeech/wavs/LJ023-0010.npy -tests/data/ljspeech/wavs/LJ044-0034.wav|tests/data/ljspeech/wavs/LJ044-0034.npy -tests/data/ljspeech/wavs/LJ028-0239.wav|tests/data/ljspeech/wavs/LJ028-0239.npy -tests/data/ljspeech/wavs/LJ050-0233.wav|tests/data/ljspeech/wavs/LJ050-0233.npy -tests/data/ljspeech/wavs/LJ022-0056.wav|tests/data/ljspeech/wavs/LJ022-0056.npy -tests/data/ljspeech/wavs/LJ002-0097.wav|tests/data/ljspeech/wavs/LJ002-0097.npy -tests/data/ljspeech/wavs/LJ003-0112.wav|tests/data/ljspeech/wavs/LJ003-0112.npy -tests/data/ljspeech/wavs/LJ005-0283.wav|tests/data/ljspeech/wavs/LJ005-0283.npy -tests/data/ljspeech/wavs/LJ047-0243.wav|tests/data/ljspeech/wavs/LJ047-0243.npy -tests/data/ljspeech/wavs/LJ032-0127.wav|tests/data/ljspeech/wavs/LJ032-0127.npy -tests/data/ljspeech/wavs/LJ018-0343.wav|tests/data/ljspeech/wavs/LJ018-0343.npy -tests/data/ljspeech/wavs/LJ040-0174.wav|tests/data/ljspeech/wavs/LJ040-0174.npy -tests/data/ljspeech/wavs/LJ050-0136.wav|tests/data/ljspeech/wavs/LJ050-0136.npy -tests/data/ljspeech/wavs/LJ010-0261.wav|tests/data/ljspeech/wavs/LJ010-0261.npy -tests/data/ljspeech/wavs/LJ028-0349.wav|tests/data/ljspeech/wavs/LJ028-0349.npy -tests/data/ljspeech/wavs/LJ010-0030.wav|tests/data/ljspeech/wavs/LJ010-0030.npy -tests/data/ljspeech/wavs/LJ028-0102.wav|tests/data/ljspeech/wavs/LJ028-0102.npy -tests/data/ljspeech/wavs/LJ041-0036.wav|tests/data/ljspeech/wavs/LJ041-0036.npy -tests/data/ljspeech/wavs/LJ009-0050.wav|tests/data/ljspeech/wavs/LJ009-0050.npy -tests/data/ljspeech/wavs/LJ040-0182.wav|tests/data/ljspeech/wavs/LJ040-0182.npy -tests/data/ljspeech/wavs/LJ019-0153.wav|tests/data/ljspeech/wavs/LJ019-0153.npy -tests/data/ljspeech/wavs/LJ032-0060.wav|tests/data/ljspeech/wavs/LJ032-0060.npy -tests/data/ljspeech/wavs/LJ041-0014.wav|tests/data/ljspeech/wavs/LJ041-0014.npy -tests/data/ljspeech/wavs/LJ009-0206.wav|tests/data/ljspeech/wavs/LJ009-0206.npy -tests/data/ljspeech/wavs/LJ028-0282.wav|tests/data/ljspeech/wavs/LJ028-0282.npy -tests/data/ljspeech/wavs/LJ005-0273.wav|tests/data/ljspeech/wavs/LJ005-0273.npy -tests/data/ljspeech/wavs/LJ009-0239.wav|tests/data/ljspeech/wavs/LJ009-0239.npy -tests/data/ljspeech/wavs/LJ005-0286.wav|tests/data/ljspeech/wavs/LJ005-0286.npy -tests/data/ljspeech/wavs/LJ035-0105.wav|tests/data/ljspeech/wavs/LJ035-0105.npy -tests/data/ljspeech/wavs/LJ028-0360.wav|tests/data/ljspeech/wavs/LJ028-0360.npy -tests/data/ljspeech/wavs/LJ029-0057.wav|tests/data/ljspeech/wavs/LJ029-0057.npy -tests/data/ljspeech/wavs/LJ050-0149.wav|tests/data/ljspeech/wavs/LJ050-0149.npy -tests/data/ljspeech/wavs/LJ019-0179.wav|tests/data/ljspeech/wavs/LJ019-0179.npy -tests/data/ljspeech/wavs/LJ023-0059.wav|tests/data/ljspeech/wavs/LJ023-0059.npy -tests/data/ljspeech/wavs/LJ010-0136.wav|tests/data/ljspeech/wavs/LJ010-0136.npy -tests/data/ljspeech/wavs/LJ024-0011.wav|tests/data/ljspeech/wavs/LJ024-0011.npy -tests/data/ljspeech/wavs/LJ007-0065.wav|tests/data/ljspeech/wavs/LJ007-0065.npy -tests/data/ljspeech/wavs/LJ047-0225.wav|tests/data/ljspeech/wavs/LJ047-0225.npy -tests/data/ljspeech/wavs/LJ017-0265.wav|tests/data/ljspeech/wavs/LJ017-0265.npy -tests/data/ljspeech/wavs/LJ024-0096.wav|tests/data/ljspeech/wavs/LJ024-0096.npy -tests/data/ljspeech/wavs/LJ036-0150.wav|tests/data/ljspeech/wavs/LJ036-0150.npy -tests/data/ljspeech/wavs/LJ009-0171.wav|tests/data/ljspeech/wavs/LJ009-0171.npy -tests/data/ljspeech/wavs/LJ006-0171.wav|tests/data/ljspeech/wavs/LJ006-0171.npy -tests/data/ljspeech/wavs/LJ003-0204.wav|tests/data/ljspeech/wavs/LJ003-0204.npy -tests/data/ljspeech/wavs/LJ040-0028.wav|tests/data/ljspeech/wavs/LJ040-0028.npy -tests/data/ljspeech/wavs/LJ017-0247.wav|tests/data/ljspeech/wavs/LJ017-0247.npy -tests/data/ljspeech/wavs/LJ046-0140.wav|tests/data/ljspeech/wavs/LJ046-0140.npy -tests/data/ljspeech/wavs/LJ002-0259.wav|tests/data/ljspeech/wavs/LJ002-0259.npy -tests/data/ljspeech/wavs/LJ010-0151.wav|tests/data/ljspeech/wavs/LJ010-0151.npy -tests/data/ljspeech/wavs/LJ041-0076.wav|tests/data/ljspeech/wavs/LJ041-0076.npy -tests/data/ljspeech/wavs/LJ042-0176.wav|tests/data/ljspeech/wavs/LJ042-0176.npy -tests/data/ljspeech/wavs/LJ029-0159.wav|tests/data/ljspeech/wavs/LJ029-0159.npy -tests/data/ljspeech/wavs/LJ005-0083.wav|tests/data/ljspeech/wavs/LJ005-0083.npy -tests/data/ljspeech/wavs/LJ050-0180.wav|tests/data/ljspeech/wavs/LJ050-0180.npy -tests/data/ljspeech/wavs/LJ009-0122.wav|tests/data/ljspeech/wavs/LJ009-0122.npy -tests/data/ljspeech/wavs/LJ011-0058.wav|tests/data/ljspeech/wavs/LJ011-0058.npy -tests/data/ljspeech/wavs/LJ006-0277.wav|tests/data/ljspeech/wavs/LJ006-0277.npy -tests/data/ljspeech/wavs/LJ040-0016.wav|tests/data/ljspeech/wavs/LJ040-0016.npy -tests/data/ljspeech/wavs/LJ018-0046.wav|tests/data/ljspeech/wavs/LJ018-0046.npy -tests/data/ljspeech/wavs/LJ048-0278.wav|tests/data/ljspeech/wavs/LJ048-0278.npy -tests/data/ljspeech/wavs/LJ017-0248.wav|tests/data/ljspeech/wavs/LJ017-0248.npy -tests/data/ljspeech/wavs/LJ030-0144.wav|tests/data/ljspeech/wavs/LJ030-0144.npy -tests/data/ljspeech/wavs/LJ029-0038.wav|tests/data/ljspeech/wavs/LJ029-0038.npy -tests/data/ljspeech/wavs/LJ037-0228.wav|tests/data/ljspeech/wavs/LJ037-0228.npy -tests/data/ljspeech/wavs/LJ045-0201.wav|tests/data/ljspeech/wavs/LJ045-0201.npy -tests/data/ljspeech/wavs/LJ013-0217.wav|tests/data/ljspeech/wavs/LJ013-0217.npy -tests/data/ljspeech/wavs/LJ002-0062.wav|tests/data/ljspeech/wavs/LJ002-0062.npy -tests/data/ljspeech/wavs/LJ038-0248.wav|tests/data/ljspeech/wavs/LJ038-0248.npy -tests/data/ljspeech/wavs/LJ047-0068.wav|tests/data/ljspeech/wavs/LJ047-0068.npy -tests/data/ljspeech/wavs/LJ030-0238.wav|tests/data/ljspeech/wavs/LJ030-0238.npy -tests/data/ljspeech/wavs/LJ016-0080.wav|tests/data/ljspeech/wavs/LJ016-0080.npy -tests/data/ljspeech/wavs/LJ024-0061.wav|tests/data/ljspeech/wavs/LJ024-0061.npy -tests/data/ljspeech/wavs/LJ044-0177.wav|tests/data/ljspeech/wavs/LJ044-0177.npy -tests/data/ljspeech/wavs/LJ031-0008.wav|tests/data/ljspeech/wavs/LJ031-0008.npy -tests/data/ljspeech/wavs/LJ028-0470.wav|tests/data/ljspeech/wavs/LJ028-0470.npy -tests/data/ljspeech/wavs/LJ005-0285.wav|tests/data/ljspeech/wavs/LJ005-0285.npy -tests/data/ljspeech/wavs/LJ021-0004.wav|tests/data/ljspeech/wavs/LJ021-0004.npy -tests/data/ljspeech/wavs/LJ030-0008.wav|tests/data/ljspeech/wavs/LJ030-0008.npy -tests/data/ljspeech/wavs/LJ030-0121.wav|tests/data/ljspeech/wavs/LJ030-0121.npy -tests/data/ljspeech/wavs/LJ006-0006.wav|tests/data/ljspeech/wavs/LJ006-0006.npy -tests/data/ljspeech/wavs/LJ025-0009.wav|tests/data/ljspeech/wavs/LJ025-0009.npy -tests/data/ljspeech/wavs/LJ030-0219.wav|tests/data/ljspeech/wavs/LJ030-0219.npy -tests/data/ljspeech/wavs/LJ006-0235.wav|tests/data/ljspeech/wavs/LJ006-0235.npy -tests/data/ljspeech/wavs/LJ010-0055.wav|tests/data/ljspeech/wavs/LJ010-0055.npy -tests/data/ljspeech/wavs/LJ015-0196.wav|tests/data/ljspeech/wavs/LJ015-0196.npy -tests/data/ljspeech/wavs/LJ003-0234.wav|tests/data/ljspeech/wavs/LJ003-0234.npy -tests/data/ljspeech/wavs/LJ011-0156.wav|tests/data/ljspeech/wavs/LJ011-0156.npy -tests/data/ljspeech/wavs/LJ004-0233.wav|tests/data/ljspeech/wavs/LJ004-0233.npy -tests/data/ljspeech/wavs/LJ001-0018.wav|tests/data/ljspeech/wavs/LJ001-0018.npy -tests/data/ljspeech/wavs/LJ031-0077.wav|tests/data/ljspeech/wavs/LJ031-0077.npy -tests/data/ljspeech/wavs/LJ005-0093.wav|tests/data/ljspeech/wavs/LJ005-0093.npy -tests/data/ljspeech/wavs/LJ004-0139.wav|tests/data/ljspeech/wavs/LJ004-0139.npy -tests/data/ljspeech/wavs/LJ017-0129.wav|tests/data/ljspeech/wavs/LJ017-0129.npy -tests/data/ljspeech/wavs/LJ015-0292.wav|tests/data/ljspeech/wavs/LJ015-0292.npy -tests/data/ljspeech/wavs/LJ047-0076.wav|tests/data/ljspeech/wavs/LJ047-0076.npy -tests/data/ljspeech/wavs/LJ043-0057.wav|tests/data/ljspeech/wavs/LJ043-0057.npy -tests/data/ljspeech/wavs/LJ037-0224.wav|tests/data/ljspeech/wavs/LJ037-0224.npy -tests/data/ljspeech/wavs/LJ038-0149.wav|tests/data/ljspeech/wavs/LJ038-0149.npy -tests/data/ljspeech/wavs/LJ008-0156.wav|tests/data/ljspeech/wavs/LJ008-0156.npy -tests/data/ljspeech/wavs/LJ044-0168.wav|tests/data/ljspeech/wavs/LJ044-0168.npy -tests/data/ljspeech/wavs/LJ029-0037.wav|tests/data/ljspeech/wavs/LJ029-0037.npy -tests/data/ljspeech/wavs/LJ031-0212.wav|tests/data/ljspeech/wavs/LJ031-0212.npy -tests/data/ljspeech/wavs/LJ021-0072.wav|tests/data/ljspeech/wavs/LJ021-0072.npy -tests/data/ljspeech/wavs/LJ021-0207.wav|tests/data/ljspeech/wavs/LJ021-0207.npy -tests/data/ljspeech/wavs/LJ002-0095.wav|tests/data/ljspeech/wavs/LJ002-0095.npy -tests/data/ljspeech/wavs/LJ006-0086.wav|tests/data/ljspeech/wavs/LJ006-0086.npy -tests/data/ljspeech/wavs/LJ012-0164.wav|tests/data/ljspeech/wavs/LJ012-0164.npy -tests/data/ljspeech/wavs/LJ038-0264.wav|tests/data/ljspeech/wavs/LJ038-0264.npy -tests/data/ljspeech/wavs/LJ050-0003.wav|tests/data/ljspeech/wavs/LJ050-0003.npy -tests/data/ljspeech/wavs/LJ028-0368.wav|tests/data/ljspeech/wavs/LJ028-0368.npy -tests/data/ljspeech/wavs/LJ032-0175.wav|tests/data/ljspeech/wavs/LJ032-0175.npy -tests/data/ljspeech/wavs/LJ028-0519.wav|tests/data/ljspeech/wavs/LJ028-0519.npy -tests/data/ljspeech/wavs/LJ006-0191.wav|tests/data/ljspeech/wavs/LJ006-0191.npy -tests/data/ljspeech/wavs/LJ013-0262.wav|tests/data/ljspeech/wavs/LJ013-0262.npy -tests/data/ljspeech/wavs/LJ027-0104.wav|tests/data/ljspeech/wavs/LJ027-0104.npy -tests/data/ljspeech/wavs/LJ013-0037.wav|tests/data/ljspeech/wavs/LJ013-0037.npy -tests/data/ljspeech/wavs/LJ042-0076.wav|tests/data/ljspeech/wavs/LJ042-0076.npy -tests/data/ljspeech/wavs/LJ031-0226.wav|tests/data/ljspeech/wavs/LJ031-0226.npy -tests/data/ljspeech/wavs/LJ027-0142.wav|tests/data/ljspeech/wavs/LJ027-0142.npy -tests/data/ljspeech/wavs/LJ027-0178.wav|tests/data/ljspeech/wavs/LJ027-0178.npy -tests/data/ljspeech/wavs/LJ030-0195.wav|tests/data/ljspeech/wavs/LJ030-0195.npy -tests/data/ljspeech/wavs/LJ013-0248.wav|tests/data/ljspeech/wavs/LJ013-0248.npy -tests/data/ljspeech/wavs/LJ023-0004.wav|tests/data/ljspeech/wavs/LJ023-0004.npy -tests/data/ljspeech/wavs/LJ009-0218.wav|tests/data/ljspeech/wavs/LJ009-0218.npy -tests/data/ljspeech/wavs/LJ002-0335.wav|tests/data/ljspeech/wavs/LJ002-0335.npy -tests/data/ljspeech/wavs/LJ004-0049.wav|tests/data/ljspeech/wavs/LJ004-0049.npy -tests/data/ljspeech/wavs/LJ042-0190.wav|tests/data/ljspeech/wavs/LJ042-0190.npy -tests/data/ljspeech/wavs/LJ002-0186.wav|tests/data/ljspeech/wavs/LJ002-0186.npy -tests/data/ljspeech/wavs/LJ031-0134.wav|tests/data/ljspeech/wavs/LJ031-0134.npy -tests/data/ljspeech/wavs/LJ008-0041.wav|tests/data/ljspeech/wavs/LJ008-0041.npy -tests/data/ljspeech/wavs/LJ014-0243.wav|tests/data/ljspeech/wavs/LJ014-0243.npy -tests/data/ljspeech/wavs/LJ026-0017.wav|tests/data/ljspeech/wavs/LJ026-0017.npy -tests/data/ljspeech/wavs/LJ047-0120.wav|tests/data/ljspeech/wavs/LJ047-0120.npy -tests/data/ljspeech/wavs/LJ009-0048.wav|tests/data/ljspeech/wavs/LJ009-0048.npy -tests/data/ljspeech/wavs/LJ026-0142.wav|tests/data/ljspeech/wavs/LJ026-0142.npy -tests/data/ljspeech/wavs/LJ028-0362.wav|tests/data/ljspeech/wavs/LJ028-0362.npy -tests/data/ljspeech/wavs/LJ038-0133.wav|tests/data/ljspeech/wavs/LJ038-0133.npy -tests/data/ljspeech/wavs/LJ026-0078.wav|tests/data/ljspeech/wavs/LJ026-0078.npy -tests/data/ljspeech/wavs/LJ015-0093.wav|tests/data/ljspeech/wavs/LJ015-0093.npy -tests/data/ljspeech/wavs/LJ002-0056.wav|tests/data/ljspeech/wavs/LJ002-0056.npy -tests/data/ljspeech/wavs/LJ041-0131.wav|tests/data/ljspeech/wavs/LJ041-0131.npy -tests/data/ljspeech/wavs/LJ042-0138.wav|tests/data/ljspeech/wavs/LJ042-0138.npy -tests/data/ljspeech/wavs/LJ025-0155.wav|tests/data/ljspeech/wavs/LJ025-0155.npy -tests/data/ljspeech/wavs/LJ047-0065.wav|tests/data/ljspeech/wavs/LJ047-0065.npy -tests/data/ljspeech/wavs/LJ046-0123.wav|tests/data/ljspeech/wavs/LJ046-0123.npy -tests/data/ljspeech/wavs/LJ013-0105.wav|tests/data/ljspeech/wavs/LJ013-0105.npy -tests/data/ljspeech/wavs/LJ009-0024.wav|tests/data/ljspeech/wavs/LJ009-0024.npy -tests/data/ljspeech/wavs/LJ008-0211.wav|tests/data/ljspeech/wavs/LJ008-0211.npy -tests/data/ljspeech/wavs/LJ029-0198.wav|tests/data/ljspeech/wavs/LJ029-0198.npy -tests/data/ljspeech/wavs/LJ027-0094.wav|tests/data/ljspeech/wavs/LJ027-0094.npy -tests/data/ljspeech/wavs/LJ041-0143.wav|tests/data/ljspeech/wavs/LJ041-0143.npy -tests/data/ljspeech/wavs/LJ026-0079.wav|tests/data/ljspeech/wavs/LJ026-0079.npy -tests/data/ljspeech/wavs/LJ007-0089.wav|tests/data/ljspeech/wavs/LJ007-0089.npy -tests/data/ljspeech/wavs/LJ031-0152.wav|tests/data/ljspeech/wavs/LJ031-0152.npy -tests/data/ljspeech/wavs/LJ028-0320.wav|tests/data/ljspeech/wavs/LJ028-0320.npy -tests/data/ljspeech/wavs/LJ032-0265.wav|tests/data/ljspeech/wavs/LJ032-0265.npy -tests/data/ljspeech/wavs/LJ043-0154.wav|tests/data/ljspeech/wavs/LJ043-0154.npy -tests/data/ljspeech/wavs/LJ019-0016.wav|tests/data/ljspeech/wavs/LJ019-0016.npy -tests/data/ljspeech/wavs/LJ036-0022.wav|tests/data/ljspeech/wavs/LJ036-0022.npy -tests/data/ljspeech/wavs/LJ048-0287.wav|tests/data/ljspeech/wavs/LJ048-0287.npy -tests/data/ljspeech/wavs/LJ035-0204.wav|tests/data/ljspeech/wavs/LJ035-0204.npy -tests/data/ljspeech/wavs/LJ010-0114.wav|tests/data/ljspeech/wavs/LJ010-0114.npy -tests/data/ljspeech/wavs/LJ026-0024.wav|tests/data/ljspeech/wavs/LJ026-0024.npy -tests/data/ljspeech/wavs/LJ003-0055.wav|tests/data/ljspeech/wavs/LJ003-0055.npy -tests/data/ljspeech/wavs/LJ049-0189.wav|tests/data/ljspeech/wavs/LJ049-0189.npy -tests/data/ljspeech/wavs/LJ019-0051.wav|tests/data/ljspeech/wavs/LJ019-0051.npy -tests/data/ljspeech/wavs/LJ019-0289.wav|tests/data/ljspeech/wavs/LJ019-0289.npy -tests/data/ljspeech/wavs/LJ037-0109.wav|tests/data/ljspeech/wavs/LJ037-0109.npy -tests/data/ljspeech/wavs/LJ040-0073.wav|tests/data/ljspeech/wavs/LJ040-0073.npy -tests/data/ljspeech/wavs/LJ045-0067.wav|tests/data/ljspeech/wavs/LJ045-0067.npy -tests/data/ljspeech/wavs/LJ011-0061.wav|tests/data/ljspeech/wavs/LJ011-0061.npy -tests/data/ljspeech/wavs/LJ003-0078.wav|tests/data/ljspeech/wavs/LJ003-0078.npy -tests/data/ljspeech/wavs/LJ008-0269.wav|tests/data/ljspeech/wavs/LJ008-0269.npy -tests/data/ljspeech/wavs/LJ013-0265.wav|tests/data/ljspeech/wavs/LJ013-0265.npy -tests/data/ljspeech/wavs/LJ016-0208.wav|tests/data/ljspeech/wavs/LJ016-0208.npy -tests/data/ljspeech/wavs/LJ035-0060.wav|tests/data/ljspeech/wavs/LJ035-0060.npy -tests/data/ljspeech/wavs/LJ005-0058.wav|tests/data/ljspeech/wavs/LJ005-0058.npy -tests/data/ljspeech/wavs/LJ016-0099.wav|tests/data/ljspeech/wavs/LJ016-0099.npy -tests/data/ljspeech/wavs/LJ032-0218.wav|tests/data/ljspeech/wavs/LJ032-0218.npy -tests/data/ljspeech/wavs/LJ011-0274.wav|tests/data/ljspeech/wavs/LJ011-0274.npy -tests/data/ljspeech/wavs/LJ047-0163.wav|tests/data/ljspeech/wavs/LJ047-0163.npy -tests/data/ljspeech/wavs/LJ012-0054.wav|tests/data/ljspeech/wavs/LJ012-0054.npy -tests/data/ljspeech/wavs/LJ010-0310.wav|tests/data/ljspeech/wavs/LJ010-0310.npy -tests/data/ljspeech/wavs/LJ018-0025.wav|tests/data/ljspeech/wavs/LJ018-0025.npy -tests/data/ljspeech/wavs/LJ003-0180.wav|tests/data/ljspeech/wavs/LJ003-0180.npy -tests/data/ljspeech/wavs/LJ016-0283.wav|tests/data/ljspeech/wavs/LJ016-0283.npy -tests/data/ljspeech/wavs/LJ045-0168.wav|tests/data/ljspeech/wavs/LJ045-0168.npy -tests/data/ljspeech/wavs/LJ018-0181.wav|tests/data/ljspeech/wavs/LJ018-0181.npy -tests/data/ljspeech/wavs/LJ019-0323.wav|tests/data/ljspeech/wavs/LJ019-0323.npy -tests/data/ljspeech/wavs/LJ042-0079.wav|tests/data/ljspeech/wavs/LJ042-0079.npy -tests/data/ljspeech/wavs/LJ011-0095.wav|tests/data/ljspeech/wavs/LJ011-0095.npy -tests/data/ljspeech/wavs/LJ026-0055.wav|tests/data/ljspeech/wavs/LJ026-0055.npy -tests/data/ljspeech/wavs/LJ016-0375.wav|tests/data/ljspeech/wavs/LJ016-0375.npy -tests/data/ljspeech/wavs/LJ012-0022.wav|tests/data/ljspeech/wavs/LJ012-0022.npy -tests/data/ljspeech/wavs/LJ045-0050.wav|tests/data/ljspeech/wavs/LJ045-0050.npy -tests/data/ljspeech/wavs/LJ018-0381.wav|tests/data/ljspeech/wavs/LJ018-0381.npy -tests/data/ljspeech/wavs/LJ008-0117.wav|tests/data/ljspeech/wavs/LJ008-0117.npy -tests/data/ljspeech/wavs/LJ019-0142.wav|tests/data/ljspeech/wavs/LJ019-0142.npy -tests/data/ljspeech/wavs/LJ036-0137.wav|tests/data/ljspeech/wavs/LJ036-0137.npy -tests/data/ljspeech/wavs/LJ011-0290.wav|tests/data/ljspeech/wavs/LJ011-0290.npy -tests/data/ljspeech/wavs/LJ026-0071.wav|tests/data/ljspeech/wavs/LJ026-0071.npy -tests/data/ljspeech/wavs/LJ003-0243.wav|tests/data/ljspeech/wavs/LJ003-0243.npy -tests/data/ljspeech/wavs/LJ038-0090.wav|tests/data/ljspeech/wavs/LJ038-0090.npy -tests/data/ljspeech/wavs/LJ019-0116.wav|tests/data/ljspeech/wavs/LJ019-0116.npy -tests/data/ljspeech/wavs/LJ032-0135.wav|tests/data/ljspeech/wavs/LJ032-0135.npy -tests/data/ljspeech/wavs/LJ049-0223.wav|tests/data/ljspeech/wavs/LJ049-0223.npy -tests/data/ljspeech/wavs/LJ018-0352.wav|tests/data/ljspeech/wavs/LJ018-0352.npy -tests/data/ljspeech/wavs/LJ015-0063.wav|tests/data/ljspeech/wavs/LJ015-0063.npy -tests/data/ljspeech/wavs/LJ011-0121.wav|tests/data/ljspeech/wavs/LJ011-0121.npy -tests/data/ljspeech/wavs/LJ005-0092.wav|tests/data/ljspeech/wavs/LJ005-0092.npy -tests/data/ljspeech/wavs/LJ048-0283.wav|tests/data/ljspeech/wavs/LJ048-0283.npy -tests/data/ljspeech/wavs/LJ011-0181.wav|tests/data/ljspeech/wavs/LJ011-0181.npy -tests/data/ljspeech/wavs/LJ005-0254.wav|tests/data/ljspeech/wavs/LJ005-0254.npy -tests/data/ljspeech/wavs/LJ016-0418.wav|tests/data/ljspeech/wavs/LJ016-0418.npy -tests/data/ljspeech/wavs/LJ005-0189.wav|tests/data/ljspeech/wavs/LJ005-0189.npy -tests/data/ljspeech/wavs/LJ019-0107.wav|tests/data/ljspeech/wavs/LJ019-0107.npy -tests/data/ljspeech/wavs/LJ008-0116.wav|tests/data/ljspeech/wavs/LJ008-0116.npy -tests/data/ljspeech/wavs/LJ017-0110.wav|tests/data/ljspeech/wavs/LJ017-0110.npy -tests/data/ljspeech/wavs/LJ037-0081.wav|tests/data/ljspeech/wavs/LJ037-0081.npy -tests/data/ljspeech/wavs/LJ003-0227.wav|tests/data/ljspeech/wavs/LJ003-0227.npy -tests/data/ljspeech/wavs/LJ028-0028.wav|tests/data/ljspeech/wavs/LJ028-0028.npy -tests/data/ljspeech/wavs/LJ043-0122.wav|tests/data/ljspeech/wavs/LJ043-0122.npy -tests/data/ljspeech/wavs/LJ045-0102.wav|tests/data/ljspeech/wavs/LJ045-0102.npy -tests/data/ljspeech/wavs/LJ001-0077.wav|tests/data/ljspeech/wavs/LJ001-0077.npy -tests/data/ljspeech/wavs/LJ043-0063.wav|tests/data/ljspeech/wavs/LJ043-0063.npy -tests/data/ljspeech/wavs/LJ004-0220.wav|tests/data/ljspeech/wavs/LJ004-0220.npy -tests/data/ljspeech/wavs/LJ019-0058.wav|tests/data/ljspeech/wavs/LJ019-0058.npy -tests/data/ljspeech/wavs/LJ018-0283.wav|tests/data/ljspeech/wavs/LJ018-0283.npy -tests/data/ljspeech/wavs/LJ027-0119.wav|tests/data/ljspeech/wavs/LJ027-0119.npy -tests/data/ljspeech/wavs/LJ028-0157.wav|tests/data/ljspeech/wavs/LJ028-0157.npy -tests/data/ljspeech/wavs/LJ043-0017.wav|tests/data/ljspeech/wavs/LJ043-0017.npy -tests/data/ljspeech/wavs/LJ015-0037.wav|tests/data/ljspeech/wavs/LJ015-0037.npy -tests/data/ljspeech/wavs/LJ003-0145.wav|tests/data/ljspeech/wavs/LJ003-0145.npy -tests/data/ljspeech/wavs/LJ049-0061.wav|tests/data/ljspeech/wavs/LJ049-0061.npy -tests/data/ljspeech/wavs/LJ010-0236.wav|tests/data/ljspeech/wavs/LJ010-0236.npy -tests/data/ljspeech/wavs/LJ042-0103.wav|tests/data/ljspeech/wavs/LJ042-0103.npy -tests/data/ljspeech/wavs/LJ019-0096.wav|tests/data/ljspeech/wavs/LJ019-0096.npy -tests/data/ljspeech/wavs/LJ008-0235.wav|tests/data/ljspeech/wavs/LJ008-0235.npy -tests/data/ljspeech/wavs/LJ038-0202.wav|tests/data/ljspeech/wavs/LJ038-0202.npy -tests/data/ljspeech/wavs/LJ037-0075.wav|tests/data/ljspeech/wavs/LJ037-0075.npy -tests/data/ljspeech/wavs/LJ013-0218.wav|tests/data/ljspeech/wavs/LJ013-0218.npy -tests/data/ljspeech/wavs/LJ013-0194.wav|tests/data/ljspeech/wavs/LJ013-0194.npy -tests/data/ljspeech/wavs/LJ048-0216.wav|tests/data/ljspeech/wavs/LJ048-0216.npy -tests/data/ljspeech/wavs/LJ019-0106.wav|tests/data/ljspeech/wavs/LJ019-0106.npy -tests/data/ljspeech/wavs/LJ014-0118.wav|tests/data/ljspeech/wavs/LJ014-0118.npy -tests/data/ljspeech/wavs/LJ008-0289.wav|tests/data/ljspeech/wavs/LJ008-0289.npy -tests/data/ljspeech/wavs/LJ027-0055.wav|tests/data/ljspeech/wavs/LJ027-0055.npy -tests/data/ljspeech/wavs/LJ004-0070.wav|tests/data/ljspeech/wavs/LJ004-0070.npy -tests/data/ljspeech/wavs/LJ012-0275.wav|tests/data/ljspeech/wavs/LJ012-0275.npy -tests/data/ljspeech/wavs/LJ008-0166.wav|tests/data/ljspeech/wavs/LJ008-0166.npy -tests/data/ljspeech/wavs/LJ007-0005.wav|tests/data/ljspeech/wavs/LJ007-0005.npy -tests/data/ljspeech/wavs/LJ016-0253.wav|tests/data/ljspeech/wavs/LJ016-0253.npy -tests/data/ljspeech/wavs/LJ003-0151.wav|tests/data/ljspeech/wavs/LJ003-0151.npy -tests/data/ljspeech/wavs/LJ017-0076.wav|tests/data/ljspeech/wavs/LJ017-0076.npy -tests/data/ljspeech/wavs/LJ018-0267.wav|tests/data/ljspeech/wavs/LJ018-0267.npy -tests/data/ljspeech/wavs/LJ032-0062.wav|tests/data/ljspeech/wavs/LJ032-0062.npy -tests/data/ljspeech/wavs/LJ047-0136.wav|tests/data/ljspeech/wavs/LJ047-0136.npy -tests/data/ljspeech/wavs/LJ046-0217.wav|tests/data/ljspeech/wavs/LJ046-0217.npy -tests/data/ljspeech/wavs/LJ017-0011.wav|tests/data/ljspeech/wavs/LJ017-0011.npy -tests/data/ljspeech/wavs/LJ014-0049.wav|tests/data/ljspeech/wavs/LJ014-0049.npy -tests/data/ljspeech/wavs/LJ014-0180.wav|tests/data/ljspeech/wavs/LJ014-0180.npy -tests/data/ljspeech/wavs/LJ038-0114.wav|tests/data/ljspeech/wavs/LJ038-0114.npy -tests/data/ljspeech/wavs/LJ017-0052.wav|tests/data/ljspeech/wavs/LJ017-0052.npy -tests/data/ljspeech/wavs/LJ011-0093.wav|tests/data/ljspeech/wavs/LJ011-0093.npy -tests/data/ljspeech/wavs/LJ007-0238.wav|tests/data/ljspeech/wavs/LJ007-0238.npy -tests/data/ljspeech/wavs/LJ018-0299.wav|tests/data/ljspeech/wavs/LJ018-0299.npy -tests/data/ljspeech/wavs/LJ046-0098.wav|tests/data/ljspeech/wavs/LJ046-0098.npy -tests/data/ljspeech/wavs/LJ014-0200.wav|tests/data/ljspeech/wavs/LJ014-0200.npy -tests/data/ljspeech/wavs/LJ011-0135.wav|tests/data/ljspeech/wavs/LJ011-0135.npy -tests/data/ljspeech/wavs/LJ011-0240.wav|tests/data/ljspeech/wavs/LJ011-0240.npy -tests/data/ljspeech/wavs/LJ006-0233.wav|tests/data/ljspeech/wavs/LJ006-0233.npy -tests/data/ljspeech/wavs/LJ040-0092.wav|tests/data/ljspeech/wavs/LJ040-0092.npy -tests/data/ljspeech/wavs/LJ006-0226.wav|tests/data/ljspeech/wavs/LJ006-0226.npy -tests/data/ljspeech/wavs/LJ050-0057.wav|tests/data/ljspeech/wavs/LJ050-0057.npy -tests/data/ljspeech/wavs/LJ043-0024.wav|tests/data/ljspeech/wavs/LJ043-0024.npy -tests/data/ljspeech/wavs/LJ028-0366.wav|tests/data/ljspeech/wavs/LJ028-0366.npy -tests/data/ljspeech/wavs/LJ011-0139.wav|tests/data/ljspeech/wavs/LJ011-0139.npy -tests/data/ljspeech/wavs/LJ032-0117.wav|tests/data/ljspeech/wavs/LJ032-0117.npy -tests/data/ljspeech/wavs/LJ048-0066.wav|tests/data/ljspeech/wavs/LJ048-0066.npy -tests/data/ljspeech/wavs/LJ011-0119.wav|tests/data/ljspeech/wavs/LJ011-0119.npy -tests/data/ljspeech/wavs/LJ003-0212.wav|tests/data/ljspeech/wavs/LJ003-0212.npy -tests/data/ljspeech/wavs/LJ014-0012.wav|tests/data/ljspeech/wavs/LJ014-0012.npy -tests/data/ljspeech/wavs/LJ028-0264.wav|tests/data/ljspeech/wavs/LJ028-0264.npy -tests/data/ljspeech/wavs/LJ038-0224.wav|tests/data/ljspeech/wavs/LJ038-0224.npy -tests/data/ljspeech/wavs/LJ018-0022.wav|tests/data/ljspeech/wavs/LJ018-0022.npy -tests/data/ljspeech/wavs/LJ029-0056.wav|tests/data/ljspeech/wavs/LJ029-0056.npy -tests/data/ljspeech/wavs/LJ031-0169.wav|tests/data/ljspeech/wavs/LJ031-0169.npy -tests/data/ljspeech/wavs/LJ040-0163.wav|tests/data/ljspeech/wavs/LJ040-0163.npy -tests/data/ljspeech/wavs/LJ037-0137.wav|tests/data/ljspeech/wavs/LJ037-0137.npy -tests/data/ljspeech/wavs/LJ040-0107.wav|tests/data/ljspeech/wavs/LJ040-0107.npy -tests/data/ljspeech/wavs/LJ024-0060.wav|tests/data/ljspeech/wavs/LJ024-0060.npy -tests/data/ljspeech/wavs/LJ040-0127.wav|tests/data/ljspeech/wavs/LJ040-0127.npy -tests/data/ljspeech/wavs/LJ019-0235.wav|tests/data/ljspeech/wavs/LJ019-0235.npy -tests/data/ljspeech/wavs/LJ024-0103.wav|tests/data/ljspeech/wavs/LJ024-0103.npy -tests/data/ljspeech/wavs/LJ015-0267.wav|tests/data/ljspeech/wavs/LJ015-0267.npy -tests/data/ljspeech/wavs/LJ010-0150.wav|tests/data/ljspeech/wavs/LJ010-0150.npy -tests/data/ljspeech/wavs/LJ037-0235.wav|tests/data/ljspeech/wavs/LJ037-0235.npy -tests/data/ljspeech/wavs/LJ034-0070.wav|tests/data/ljspeech/wavs/LJ034-0070.npy -tests/data/ljspeech/wavs/LJ015-0260.wav|tests/data/ljspeech/wavs/LJ015-0260.npy -tests/data/ljspeech/wavs/LJ015-0251.wav|tests/data/ljspeech/wavs/LJ015-0251.npy -tests/data/ljspeech/wavs/LJ045-0224.wav|tests/data/ljspeech/wavs/LJ045-0224.npy -tests/data/ljspeech/wavs/LJ034-0065.wav|tests/data/ljspeech/wavs/LJ034-0065.npy -tests/data/ljspeech/wavs/LJ019-0376.wav|tests/data/ljspeech/wavs/LJ019-0376.npy -tests/data/ljspeech/wavs/LJ036-0069.wav|tests/data/ljspeech/wavs/LJ036-0069.npy -tests/data/ljspeech/wavs/LJ043-0179.wav|tests/data/ljspeech/wavs/LJ043-0179.npy -tests/data/ljspeech/wavs/LJ033-0180.wav|tests/data/ljspeech/wavs/LJ033-0180.npy -tests/data/ljspeech/wavs/LJ005-0007.wav|tests/data/ljspeech/wavs/LJ005-0007.npy -tests/data/ljspeech/wavs/LJ039-0089.wav|tests/data/ljspeech/wavs/LJ039-0089.npy -tests/data/ljspeech/wavs/LJ044-0196.wav|tests/data/ljspeech/wavs/LJ044-0196.npy -tests/data/ljspeech/wavs/LJ036-0058.wav|tests/data/ljspeech/wavs/LJ036-0058.npy -tests/data/ljspeech/wavs/LJ019-0301.wav|tests/data/ljspeech/wavs/LJ019-0301.npy -tests/data/ljspeech/wavs/LJ029-0064.wav|tests/data/ljspeech/wavs/LJ029-0064.npy -tests/data/ljspeech/wavs/LJ024-0139.wav|tests/data/ljspeech/wavs/LJ024-0139.npy -tests/data/ljspeech/wavs/LJ031-0197.wav|tests/data/ljspeech/wavs/LJ031-0197.npy -tests/data/ljspeech/wavs/LJ003-0100.wav|tests/data/ljspeech/wavs/LJ003-0100.npy -tests/data/ljspeech/wavs/LJ007-0107.wav|tests/data/ljspeech/wavs/LJ007-0107.npy -tests/data/ljspeech/wavs/LJ018-0013.wav|tests/data/ljspeech/wavs/LJ018-0013.npy -tests/data/ljspeech/wavs/LJ040-0210.wav|tests/data/ljspeech/wavs/LJ040-0210.npy -tests/data/ljspeech/wavs/LJ040-0216.wav|tests/data/ljspeech/wavs/LJ040-0216.npy -tests/data/ljspeech/wavs/LJ049-0098.wav|tests/data/ljspeech/wavs/LJ049-0098.npy -tests/data/ljspeech/wavs/LJ015-0088.wav|tests/data/ljspeech/wavs/LJ015-0088.npy -tests/data/ljspeech/wavs/LJ039-0076.wav|tests/data/ljspeech/wavs/LJ039-0076.npy -tests/data/ljspeech/wavs/LJ047-0158.wav|tests/data/ljspeech/wavs/LJ047-0158.npy -tests/data/ljspeech/wavs/LJ010-0097.wav|tests/data/ljspeech/wavs/LJ010-0097.npy -tests/data/ljspeech/wavs/LJ015-0125.wav|tests/data/ljspeech/wavs/LJ015-0125.npy -tests/data/ljspeech/wavs/LJ025-0168.wav|tests/data/ljspeech/wavs/LJ025-0168.npy -tests/data/ljspeech/wavs/LJ045-0020.wav|tests/data/ljspeech/wavs/LJ045-0020.npy -tests/data/ljspeech/wavs/LJ034-0164.wav|tests/data/ljspeech/wavs/LJ034-0164.npy -tests/data/ljspeech/wavs/LJ003-0111.wav|tests/data/ljspeech/wavs/LJ003-0111.npy -tests/data/ljspeech/wavs/LJ015-0153.wav|tests/data/ljspeech/wavs/LJ015-0153.npy -tests/data/ljspeech/wavs/LJ019-0159.wav|tests/data/ljspeech/wavs/LJ019-0159.npy -tests/data/ljspeech/wavs/LJ016-0089.wav|tests/data/ljspeech/wavs/LJ016-0089.npy -tests/data/ljspeech/wavs/LJ041-0096.wav|tests/data/ljspeech/wavs/LJ041-0096.npy -tests/data/ljspeech/wavs/LJ002-0291.wav|tests/data/ljspeech/wavs/LJ002-0291.npy -tests/data/ljspeech/wavs/LJ016-0074.wav|tests/data/ljspeech/wavs/LJ016-0074.npy -tests/data/ljspeech/wavs/LJ045-0004.wav|tests/data/ljspeech/wavs/LJ045-0004.npy -tests/data/ljspeech/wavs/LJ019-0385.wav|tests/data/ljspeech/wavs/LJ019-0385.npy -tests/data/ljspeech/wavs/LJ016-0225.wav|tests/data/ljspeech/wavs/LJ016-0225.npy -tests/data/ljspeech/wavs/LJ019-0177.wav|tests/data/ljspeech/wavs/LJ019-0177.npy -tests/data/ljspeech/wavs/LJ012-0012.wav|tests/data/ljspeech/wavs/LJ012-0012.npy -tests/data/ljspeech/wavs/LJ014-0008.wav|tests/data/ljspeech/wavs/LJ014-0008.npy -tests/data/ljspeech/wavs/LJ009-0292.wav|tests/data/ljspeech/wavs/LJ009-0292.npy -tests/data/ljspeech/wavs/LJ017-0016.wav|tests/data/ljspeech/wavs/LJ017-0016.npy -tests/data/ljspeech/wavs/LJ034-0128.wav|tests/data/ljspeech/wavs/LJ034-0128.npy -tests/data/ljspeech/wavs/LJ021-0080.wav|tests/data/ljspeech/wavs/LJ021-0080.npy -tests/data/ljspeech/wavs/LJ016-0118.wav|tests/data/ljspeech/wavs/LJ016-0118.npy -tests/data/ljspeech/wavs/LJ003-0015.wav|tests/data/ljspeech/wavs/LJ003-0015.npy -tests/data/ljspeech/wavs/LJ048-0246.wav|tests/data/ljspeech/wavs/LJ048-0246.npy -tests/data/ljspeech/wavs/LJ035-0004.wav|tests/data/ljspeech/wavs/LJ035-0004.npy -tests/data/ljspeech/wavs/LJ031-0189.wav|tests/data/ljspeech/wavs/LJ031-0189.npy -tests/data/ljspeech/wavs/LJ029-0124.wav|tests/data/ljspeech/wavs/LJ029-0124.npy -tests/data/ljspeech/wavs/LJ047-0080.wav|tests/data/ljspeech/wavs/LJ047-0080.npy -tests/data/ljspeech/wavs/LJ029-0083.wav|tests/data/ljspeech/wavs/LJ029-0083.npy -tests/data/ljspeech/wavs/LJ049-0122.wav|tests/data/ljspeech/wavs/LJ049-0122.npy -tests/data/ljspeech/wavs/LJ021-0196.wav|tests/data/ljspeech/wavs/LJ021-0196.npy -tests/data/ljspeech/wavs/LJ045-0112.wav|tests/data/ljspeech/wavs/LJ045-0112.npy -tests/data/ljspeech/wavs/LJ014-0173.wav|tests/data/ljspeech/wavs/LJ014-0173.npy -tests/data/ljspeech/wavs/LJ044-0151.wav|tests/data/ljspeech/wavs/LJ044-0151.npy -tests/data/ljspeech/wavs/LJ026-0141.wav|tests/data/ljspeech/wavs/LJ026-0141.npy -tests/data/ljspeech/wavs/LJ044-0007.wav|tests/data/ljspeech/wavs/LJ044-0007.npy -tests/data/ljspeech/wavs/LJ018-0045.wav|tests/data/ljspeech/wavs/LJ018-0045.npy -tests/data/ljspeech/wavs/LJ016-0132.wav|tests/data/ljspeech/wavs/LJ016-0132.npy -tests/data/ljspeech/wavs/LJ005-0012.wav|tests/data/ljspeech/wavs/LJ005-0012.npy -tests/data/ljspeech/wavs/LJ021-0194.wav|tests/data/ljspeech/wavs/LJ021-0194.npy -tests/data/ljspeech/wavs/LJ030-0045.wav|tests/data/ljspeech/wavs/LJ030-0045.npy -tests/data/ljspeech/wavs/LJ046-0143.wav|tests/data/ljspeech/wavs/LJ046-0143.npy -tests/data/ljspeech/wavs/LJ007-0080.wav|tests/data/ljspeech/wavs/LJ007-0080.npy -tests/data/ljspeech/wavs/LJ039-0124.wav|tests/data/ljspeech/wavs/LJ039-0124.npy -tests/data/ljspeech/wavs/LJ002-0257.wav|tests/data/ljspeech/wavs/LJ002-0257.npy -tests/data/ljspeech/wavs/LJ029-0209.wav|tests/data/ljspeech/wavs/LJ029-0209.npy -tests/data/ljspeech/wavs/LJ007-0059.wav|tests/data/ljspeech/wavs/LJ007-0059.npy -tests/data/ljspeech/wavs/LJ049-0170.wav|tests/data/ljspeech/wavs/LJ049-0170.npy -tests/data/ljspeech/wavs/LJ029-0145.wav|tests/data/ljspeech/wavs/LJ029-0145.npy -tests/data/ljspeech/wavs/LJ025-0118.wav|tests/data/ljspeech/wavs/LJ025-0118.npy -tests/data/ljspeech/wavs/LJ019-0186.wav|tests/data/ljspeech/wavs/LJ019-0186.npy -tests/data/ljspeech/wavs/LJ012-0083.wav|tests/data/ljspeech/wavs/LJ012-0083.npy -tests/data/ljspeech/wavs/LJ004-0193.wav|tests/data/ljspeech/wavs/LJ004-0193.npy -tests/data/ljspeech/wavs/LJ036-0107.wav|tests/data/ljspeech/wavs/LJ036-0107.npy -tests/data/ljspeech/wavs/LJ004-0231.wav|tests/data/ljspeech/wavs/LJ004-0231.npy -tests/data/ljspeech/wavs/LJ014-0123.wav|tests/data/ljspeech/wavs/LJ014-0123.npy -tests/data/ljspeech/wavs/LJ029-0211.wav|tests/data/ljspeech/wavs/LJ029-0211.npy -tests/data/ljspeech/wavs/LJ047-0079.wav|tests/data/ljspeech/wavs/LJ047-0079.npy -tests/data/ljspeech/wavs/LJ031-0013.wav|tests/data/ljspeech/wavs/LJ031-0013.npy -tests/data/ljspeech/wavs/LJ012-0018.wav|tests/data/ljspeech/wavs/LJ012-0018.npy -tests/data/ljspeech/wavs/LJ045-0026.wav|tests/data/ljspeech/wavs/LJ045-0026.npy -tests/data/ljspeech/wavs/LJ050-0250.wav|tests/data/ljspeech/wavs/LJ050-0250.npy -tests/data/ljspeech/wavs/LJ003-0005.wav|tests/data/ljspeech/wavs/LJ003-0005.npy -tests/data/ljspeech/wavs/LJ020-0003.wav|tests/data/ljspeech/wavs/LJ020-0003.npy -tests/data/ljspeech/wavs/LJ025-0159.wav|tests/data/ljspeech/wavs/LJ025-0159.npy -tests/data/ljspeech/wavs/LJ021-0081.wav|tests/data/ljspeech/wavs/LJ021-0081.npy -tests/data/ljspeech/wavs/LJ001-0021.wav|tests/data/ljspeech/wavs/LJ001-0021.npy -tests/data/ljspeech/wavs/LJ043-0030.wav|tests/data/ljspeech/wavs/LJ043-0030.npy -tests/data/ljspeech/wavs/LJ045-0202.wav|tests/data/ljspeech/wavs/LJ045-0202.npy -tests/data/ljspeech/wavs/LJ014-0045.wav|tests/data/ljspeech/wavs/LJ014-0045.npy -tests/data/ljspeech/wavs/LJ016-0076.wav|tests/data/ljspeech/wavs/LJ016-0076.npy -tests/data/ljspeech/wavs/LJ013-0256.wav|tests/data/ljspeech/wavs/LJ013-0256.npy -tests/data/ljspeech/wavs/LJ007-0030.wav|tests/data/ljspeech/wavs/LJ007-0030.npy -tests/data/ljspeech/wavs/LJ004-0130.wav|tests/data/ljspeech/wavs/LJ004-0130.npy -tests/data/ljspeech/wavs/LJ021-0082.wav|tests/data/ljspeech/wavs/LJ021-0082.npy -tests/data/ljspeech/wavs/LJ021-0160.wav|tests/data/ljspeech/wavs/LJ021-0160.npy -tests/data/ljspeech/wavs/LJ038-0022.wav|tests/data/ljspeech/wavs/LJ038-0022.npy -tests/data/ljspeech/wavs/LJ021-0155.wav|tests/data/ljspeech/wavs/LJ021-0155.npy -tests/data/ljspeech/wavs/LJ026-0080.wav|tests/data/ljspeech/wavs/LJ026-0080.npy -tests/data/ljspeech/wavs/LJ026-0025.wav|tests/data/ljspeech/wavs/LJ026-0025.npy -tests/data/ljspeech/wavs/LJ016-0117.wav|tests/data/ljspeech/wavs/LJ016-0117.npy -tests/data/ljspeech/wavs/LJ007-0032.wav|tests/data/ljspeech/wavs/LJ007-0032.npy -tests/data/ljspeech/wavs/LJ005-0013.wav|tests/data/ljspeech/wavs/LJ005-0013.npy -tests/data/ljspeech/wavs/LJ016-0243.wav|tests/data/ljspeech/wavs/LJ016-0243.npy -tests/data/ljspeech/wavs/LJ013-0244.wav|tests/data/ljspeech/wavs/LJ013-0244.npy -tests/data/ljspeech/wavs/LJ014-0084.wav|tests/data/ljspeech/wavs/LJ014-0084.npy -tests/data/ljspeech/wavs/LJ037-0169.wav|tests/data/ljspeech/wavs/LJ037-0169.npy -tests/data/ljspeech/wavs/LJ031-0088.wav|tests/data/ljspeech/wavs/LJ031-0088.npy -tests/data/ljspeech/wavs/LJ009-0286.wav|tests/data/ljspeech/wavs/LJ009-0286.npy -tests/data/ljspeech/wavs/LJ041-0135.wav|tests/data/ljspeech/wavs/LJ041-0135.npy -tests/data/ljspeech/wavs/LJ019-0229.wav|tests/data/ljspeech/wavs/LJ019-0229.npy -tests/data/ljspeech/wavs/LJ016-0306.wav|tests/data/ljspeech/wavs/LJ016-0306.npy -tests/data/ljspeech/wavs/LJ040-0093.wav|tests/data/ljspeech/wavs/LJ040-0093.npy -tests/data/ljspeech/wavs/LJ038-0100.wav|tests/data/ljspeech/wavs/LJ038-0100.npy -tests/data/ljspeech/wavs/LJ011-0262.wav|tests/data/ljspeech/wavs/LJ011-0262.npy -tests/data/ljspeech/wavs/LJ023-0081.wav|tests/data/ljspeech/wavs/LJ023-0081.npy -tests/data/ljspeech/wavs/LJ035-0190.wav|tests/data/ljspeech/wavs/LJ035-0190.npy -tests/data/ljspeech/wavs/LJ024-0087.wav|tests/data/ljspeech/wavs/LJ024-0087.npy -tests/data/ljspeech/wavs/LJ045-0043.wav|tests/data/ljspeech/wavs/LJ045-0043.npy -tests/data/ljspeech/wavs/LJ041-0200.wav|tests/data/ljspeech/wavs/LJ041-0200.npy -tests/data/ljspeech/wavs/LJ041-0087.wav|tests/data/ljspeech/wavs/LJ041-0087.npy -tests/data/ljspeech/wavs/LJ016-0303.wav|tests/data/ljspeech/wavs/LJ016-0303.npy -tests/data/ljspeech/wavs/LJ039-0163.wav|tests/data/ljspeech/wavs/LJ039-0163.npy -tests/data/ljspeech/wavs/LJ046-0149.wav|tests/data/ljspeech/wavs/LJ046-0149.npy -tests/data/ljspeech/wavs/LJ019-0011.wav|tests/data/ljspeech/wavs/LJ019-0011.npy -tests/data/ljspeech/wavs/LJ032-0105.wav|tests/data/ljspeech/wavs/LJ032-0105.npy -tests/data/ljspeech/wavs/LJ043-0087.wav|tests/data/ljspeech/wavs/LJ043-0087.npy -tests/data/ljspeech/wavs/LJ023-0068.wav|tests/data/ljspeech/wavs/LJ023-0068.npy -tests/data/ljspeech/wavs/LJ028-0195.wav|tests/data/ljspeech/wavs/LJ028-0195.npy -tests/data/ljspeech/wavs/LJ028-0304.wav|tests/data/ljspeech/wavs/LJ028-0304.npy -tests/data/ljspeech/wavs/LJ011-0291.wav|tests/data/ljspeech/wavs/LJ011-0291.npy -tests/data/ljspeech/wavs/LJ014-0257.wav|tests/data/ljspeech/wavs/LJ014-0257.npy -tests/data/ljspeech/wavs/LJ037-0262.wav|tests/data/ljspeech/wavs/LJ037-0262.npy -tests/data/ljspeech/wavs/LJ032-0084.wav|tests/data/ljspeech/wavs/LJ032-0084.npy -tests/data/ljspeech/wavs/LJ016-0302.wav|tests/data/ljspeech/wavs/LJ016-0302.npy -tests/data/ljspeech/wavs/LJ014-0318.wav|tests/data/ljspeech/wavs/LJ014-0318.npy -tests/data/ljspeech/wavs/LJ045-0121.wav|tests/data/ljspeech/wavs/LJ045-0121.npy -tests/data/ljspeech/wavs/LJ034-0007.wav|tests/data/ljspeech/wavs/LJ034-0007.npy -tests/data/ljspeech/wavs/LJ035-0127.wav|tests/data/ljspeech/wavs/LJ035-0127.npy -tests/data/ljspeech/wavs/LJ019-0293.wav|tests/data/ljspeech/wavs/LJ019-0293.npy -tests/data/ljspeech/wavs/LJ038-0054.wav|tests/data/ljspeech/wavs/LJ038-0054.npy -tests/data/ljspeech/wavs/LJ002-0158.wav|tests/data/ljspeech/wavs/LJ002-0158.npy -tests/data/ljspeech/wavs/LJ015-0181.wav|tests/data/ljspeech/wavs/LJ015-0181.npy -tests/data/ljspeech/wavs/LJ050-0235.wav|tests/data/ljspeech/wavs/LJ050-0235.npy -tests/data/ljspeech/wavs/LJ037-0053.wav|tests/data/ljspeech/wavs/LJ037-0053.npy -tests/data/ljspeech/wavs/LJ022-0157.wav|tests/data/ljspeech/wavs/LJ022-0157.npy -tests/data/ljspeech/wavs/LJ013-0111.wav|tests/data/ljspeech/wavs/LJ013-0111.npy -tests/data/ljspeech/wavs/LJ037-0260.wav|tests/data/ljspeech/wavs/LJ037-0260.npy -tests/data/ljspeech/wavs/LJ050-0231.wav|tests/data/ljspeech/wavs/LJ050-0231.npy -tests/data/ljspeech/wavs/LJ011-0232.wav|tests/data/ljspeech/wavs/LJ011-0232.npy -tests/data/ljspeech/wavs/LJ002-0103.wav|tests/data/ljspeech/wavs/LJ002-0103.npy -tests/data/ljspeech/wavs/LJ005-0171.wav|tests/data/ljspeech/wavs/LJ005-0171.npy -tests/data/ljspeech/wavs/LJ019-0234.wav|tests/data/ljspeech/wavs/LJ019-0234.npy -tests/data/ljspeech/wavs/LJ028-0353.wav|tests/data/ljspeech/wavs/LJ028-0353.npy -tests/data/ljspeech/wavs/LJ005-0289.wav|tests/data/ljspeech/wavs/LJ005-0289.npy -tests/data/ljspeech/wavs/LJ008-0177.wav|tests/data/ljspeech/wavs/LJ008-0177.npy -tests/data/ljspeech/wavs/LJ014-0303.wav|tests/data/ljspeech/wavs/LJ014-0303.npy -tests/data/ljspeech/wavs/LJ009-0193.wav|tests/data/ljspeech/wavs/LJ009-0193.npy -tests/data/ljspeech/wavs/LJ006-0096.wav|tests/data/ljspeech/wavs/LJ006-0096.npy -tests/data/ljspeech/wavs/LJ005-0054.wav|tests/data/ljspeech/wavs/LJ005-0054.npy -tests/data/ljspeech/wavs/LJ015-0185.wav|tests/data/ljspeech/wavs/LJ015-0185.npy -tests/data/ljspeech/wavs/LJ041-0098.wav|tests/data/ljspeech/wavs/LJ041-0098.npy -tests/data/ljspeech/wavs/LJ013-0019.wav|tests/data/ljspeech/wavs/LJ013-0019.npy -tests/data/ljspeech/wavs/LJ005-0042.wav|tests/data/ljspeech/wavs/LJ005-0042.npy -tests/data/ljspeech/wavs/LJ028-0463.wav|tests/data/ljspeech/wavs/LJ028-0463.npy -tests/data/ljspeech/wavs/LJ027-0118.wav|tests/data/ljspeech/wavs/LJ027-0118.npy -tests/data/ljspeech/wavs/LJ018-0331.wav|tests/data/ljspeech/wavs/LJ018-0331.npy -tests/data/ljspeech/wavs/LJ015-0263.wav|tests/data/ljspeech/wavs/LJ015-0263.npy -tests/data/ljspeech/wavs/LJ019-0104.wav|tests/data/ljspeech/wavs/LJ019-0104.npy -tests/data/ljspeech/wavs/LJ009-0112.wav|tests/data/ljspeech/wavs/LJ009-0112.npy -tests/data/ljspeech/wavs/LJ048-0233.wav|tests/data/ljspeech/wavs/LJ048-0233.npy -tests/data/ljspeech/wavs/LJ012-0242.wav|tests/data/ljspeech/wavs/LJ012-0242.npy -tests/data/ljspeech/wavs/LJ038-0238.wav|tests/data/ljspeech/wavs/LJ038-0238.npy -tests/data/ljspeech/wavs/LJ011-0177.wav|tests/data/ljspeech/wavs/LJ011-0177.npy -tests/data/ljspeech/wavs/LJ012-0008.wav|tests/data/ljspeech/wavs/LJ012-0008.npy -tests/data/ljspeech/wavs/LJ011-0283.wav|tests/data/ljspeech/wavs/LJ011-0283.npy -tests/data/ljspeech/wavs/LJ007-0210.wav|tests/data/ljspeech/wavs/LJ007-0210.npy -tests/data/ljspeech/wavs/LJ041-0148.wav|tests/data/ljspeech/wavs/LJ041-0148.npy -tests/data/ljspeech/wavs/LJ011-0230.wav|tests/data/ljspeech/wavs/LJ011-0230.npy -tests/data/ljspeech/wavs/LJ013-0094.wav|tests/data/ljspeech/wavs/LJ013-0094.npy -tests/data/ljspeech/wavs/LJ012-0058.wav|tests/data/ljspeech/wavs/LJ012-0058.npy -tests/data/ljspeech/wavs/LJ050-0185.wav|tests/data/ljspeech/wavs/LJ050-0185.npy -tests/data/ljspeech/wavs/LJ009-0208.wav|tests/data/ljspeech/wavs/LJ009-0208.npy -tests/data/ljspeech/wavs/LJ010-0160.wav|tests/data/ljspeech/wavs/LJ010-0160.npy -tests/data/ljspeech/wavs/LJ010-0127.wav|tests/data/ljspeech/wavs/LJ010-0127.npy -tests/data/ljspeech/wavs/LJ013-0264.wav|tests/data/ljspeech/wavs/LJ013-0264.npy -tests/data/ljspeech/wavs/LJ013-0080.wav|tests/data/ljspeech/wavs/LJ013-0080.npy -tests/data/ljspeech/wavs/LJ012-0157.wav|tests/data/ljspeech/wavs/LJ012-0157.npy -tests/data/ljspeech/wavs/LJ050-0128.wav|tests/data/ljspeech/wavs/LJ050-0128.npy -tests/data/ljspeech/wavs/LJ013-0054.wav|tests/data/ljspeech/wavs/LJ013-0054.npy -tests/data/ljspeech/wavs/LJ006-0248.wav|tests/data/ljspeech/wavs/LJ006-0248.npy -tests/data/ljspeech/wavs/LJ049-0179.wav|tests/data/ljspeech/wavs/LJ049-0179.npy -tests/data/ljspeech/wavs/LJ011-0048.wav|tests/data/ljspeech/wavs/LJ011-0048.npy -tests/data/ljspeech/wavs/LJ007-0167.wav|tests/data/ljspeech/wavs/LJ007-0167.npy -tests/data/ljspeech/wavs/LJ010-0225.wav|tests/data/ljspeech/wavs/LJ010-0225.npy -tests/data/ljspeech/wavs/LJ011-0159.wav|tests/data/ljspeech/wavs/LJ011-0159.npy -tests/data/ljspeech/wavs/LJ012-0276.wav|tests/data/ljspeech/wavs/LJ012-0276.npy -tests/data/ljspeech/wavs/LJ008-0066.wav|tests/data/ljspeech/wavs/LJ008-0066.npy -tests/data/ljspeech/wavs/LJ012-0156.wav|tests/data/ljspeech/wavs/LJ012-0156.npy -tests/data/ljspeech/wavs/LJ042-0180.wav|tests/data/ljspeech/wavs/LJ042-0180.npy -tests/data/ljspeech/wavs/LJ009-0190.wav|tests/data/ljspeech/wavs/LJ009-0190.npy -tests/data/ljspeech/wavs/LJ009-0064.wav|tests/data/ljspeech/wavs/LJ009-0064.npy -tests/data/ljspeech/wavs/LJ049-0182.wav|tests/data/ljspeech/wavs/LJ049-0182.npy -tests/data/ljspeech/wavs/LJ008-0054.wav|tests/data/ljspeech/wavs/LJ008-0054.npy -tests/data/ljspeech/wavs/LJ013-0116.wav|tests/data/ljspeech/wavs/LJ013-0116.npy -tests/data/ljspeech/wavs/LJ002-0014.wav|tests/data/ljspeech/wavs/LJ002-0014.npy -tests/data/ljspeech/wavs/LJ035-0192.wav|tests/data/ljspeech/wavs/LJ035-0192.npy -tests/data/ljspeech/wavs/LJ001-0038.wav|tests/data/ljspeech/wavs/LJ001-0038.npy -tests/data/ljspeech/wavs/LJ005-0146.wav|tests/data/ljspeech/wavs/LJ005-0146.npy -tests/data/ljspeech/wavs/LJ034-0088.wav|tests/data/ljspeech/wavs/LJ034-0088.npy -tests/data/ljspeech/wavs/LJ003-0054.wav|tests/data/ljspeech/wavs/LJ003-0054.npy -tests/data/ljspeech/wavs/LJ014-0196.wav|tests/data/ljspeech/wavs/LJ014-0196.npy -tests/data/ljspeech/wavs/LJ019-0199.wav|tests/data/ljspeech/wavs/LJ019-0199.npy -tests/data/ljspeech/wavs/LJ019-0138.wav|tests/data/ljspeech/wavs/LJ019-0138.npy -tests/data/ljspeech/wavs/LJ029-0111.wav|tests/data/ljspeech/wavs/LJ029-0111.npy -tests/data/ljspeech/wavs/LJ031-0041.wav|tests/data/ljspeech/wavs/LJ031-0041.npy -tests/data/ljspeech/wavs/LJ016-0223.wav|tests/data/ljspeech/wavs/LJ016-0223.npy -tests/data/ljspeech/wavs/LJ029-0050.wav|tests/data/ljspeech/wavs/LJ029-0050.npy -tests/data/ljspeech/wavs/LJ012-0056.wav|tests/data/ljspeech/wavs/LJ012-0056.npy -tests/data/ljspeech/wavs/LJ021-0021.wav|tests/data/ljspeech/wavs/LJ021-0021.npy -tests/data/ljspeech/wavs/LJ041-0169.wav|tests/data/ljspeech/wavs/LJ041-0169.npy -tests/data/ljspeech/wavs/LJ019-0029.wav|tests/data/ljspeech/wavs/LJ019-0029.npy -tests/data/ljspeech/wavs/LJ019-0285.wav|tests/data/ljspeech/wavs/LJ019-0285.npy -tests/data/ljspeech/wavs/LJ018-0370.wav|tests/data/ljspeech/wavs/LJ018-0370.npy -tests/data/ljspeech/wavs/LJ021-0093.wav|tests/data/ljspeech/wavs/LJ021-0093.npy -tests/data/ljspeech/wavs/LJ003-0146.wav|tests/data/ljspeech/wavs/LJ003-0146.npy -tests/data/ljspeech/wavs/LJ019-0386.wav|tests/data/ljspeech/wavs/LJ019-0386.npy -tests/data/ljspeech/wavs/LJ022-0105.wav|tests/data/ljspeech/wavs/LJ022-0105.npy -tests/data/ljspeech/wavs/LJ002-0006.wav|tests/data/ljspeech/wavs/LJ002-0006.npy -tests/data/ljspeech/wavs/LJ034-0189.wav|tests/data/ljspeech/wavs/LJ034-0189.npy -tests/data/ljspeech/wavs/LJ018-0342.wav|tests/data/ljspeech/wavs/LJ018-0342.npy -tests/data/ljspeech/wavs/LJ019-0127.wav|tests/data/ljspeech/wavs/LJ019-0127.npy -tests/data/ljspeech/wavs/LJ002-0017.wav|tests/data/ljspeech/wavs/LJ002-0017.npy -tests/data/ljspeech/wavs/LJ048-0137.wav|tests/data/ljspeech/wavs/LJ048-0137.npy -tests/data/ljspeech/wavs/LJ028-0453.wav|tests/data/ljspeech/wavs/LJ028-0453.npy -tests/data/ljspeech/wavs/LJ019-0260.wav|tests/data/ljspeech/wavs/LJ019-0260.npy -tests/data/ljspeech/wavs/LJ007-0046.wav|tests/data/ljspeech/wavs/LJ007-0046.npy -tests/data/ljspeech/wavs/LJ017-0201.wav|tests/data/ljspeech/wavs/LJ017-0201.npy -tests/data/ljspeech/wavs/LJ019-0335.wav|tests/data/ljspeech/wavs/LJ019-0335.npy -tests/data/ljspeech/wavs/LJ045-0007.wav|tests/data/ljspeech/wavs/LJ045-0007.npy -tests/data/ljspeech/wavs/LJ037-0162.wav|tests/data/ljspeech/wavs/LJ037-0162.npy -tests/data/ljspeech/wavs/LJ015-0023.wav|tests/data/ljspeech/wavs/LJ015-0023.npy -tests/data/ljspeech/wavs/LJ045-0074.wav|tests/data/ljspeech/wavs/LJ045-0074.npy -tests/data/ljspeech/wavs/LJ049-0053.wav|tests/data/ljspeech/wavs/LJ049-0053.npy -tests/data/ljspeech/wavs/LJ029-0165.wav|tests/data/ljspeech/wavs/LJ029-0165.npy -tests/data/ljspeech/wavs/LJ016-0156.wav|tests/data/ljspeech/wavs/LJ016-0156.npy -tests/data/ljspeech/wavs/LJ015-0248.wav|tests/data/ljspeech/wavs/LJ015-0248.npy -tests/data/ljspeech/wavs/LJ018-0211.wav|tests/data/ljspeech/wavs/LJ018-0211.npy -tests/data/ljspeech/wavs/LJ030-0042.wav|tests/data/ljspeech/wavs/LJ030-0042.npy -tests/data/ljspeech/wavs/LJ016-0147.wav|tests/data/ljspeech/wavs/LJ016-0147.npy -tests/data/ljspeech/wavs/LJ037-0035.wav|tests/data/ljspeech/wavs/LJ037-0035.npy -tests/data/ljspeech/wavs/LJ015-0195.wav|tests/data/ljspeech/wavs/LJ015-0195.npy -tests/data/ljspeech/wavs/LJ017-0267.wav|tests/data/ljspeech/wavs/LJ017-0267.npy -tests/data/ljspeech/wavs/LJ049-0035.wav|tests/data/ljspeech/wavs/LJ049-0035.npy -tests/data/ljspeech/wavs/LJ037-0136.wav|tests/data/ljspeech/wavs/LJ037-0136.npy -tests/data/ljspeech/wavs/LJ018-0034.wav|tests/data/ljspeech/wavs/LJ018-0034.npy -tests/data/ljspeech/wavs/LJ003-0218.wav|tests/data/ljspeech/wavs/LJ003-0218.npy -tests/data/ljspeech/wavs/LJ016-0210.wav|tests/data/ljspeech/wavs/LJ016-0210.npy -tests/data/ljspeech/wavs/LJ016-0427.wav|tests/data/ljspeech/wavs/LJ016-0427.npy -tests/data/ljspeech/wavs/LJ016-0340.wav|tests/data/ljspeech/wavs/LJ016-0340.npy -tests/data/ljspeech/wavs/LJ016-0121.wav|tests/data/ljspeech/wavs/LJ016-0121.npy -tests/data/ljspeech/wavs/LJ045-0077.wav|tests/data/ljspeech/wavs/LJ045-0077.npy -tests/data/ljspeech/wavs/LJ016-0053.wav|tests/data/ljspeech/wavs/LJ016-0053.npy -tests/data/ljspeech/wavs/LJ031-0143.wav|tests/data/ljspeech/wavs/LJ031-0143.npy -tests/data/ljspeech/wavs/LJ036-0054.wav|tests/data/ljspeech/wavs/LJ036-0054.npy -tests/data/ljspeech/wavs/LJ003-0210.wav|tests/data/ljspeech/wavs/LJ003-0210.npy -tests/data/ljspeech/wavs/LJ022-0122.wav|tests/data/ljspeech/wavs/LJ022-0122.npy -tests/data/ljspeech/wavs/LJ001-0106.wav|tests/data/ljspeech/wavs/LJ001-0106.npy -tests/data/ljspeech/wavs/LJ003-0244.wav|tests/data/ljspeech/wavs/LJ003-0244.npy -tests/data/ljspeech/wavs/LJ033-0119.wav|tests/data/ljspeech/wavs/LJ033-0119.npy -tests/data/ljspeech/wavs/LJ024-0053.wav|tests/data/ljspeech/wavs/LJ024-0053.npy -tests/data/ljspeech/wavs/LJ032-0033.wav|tests/data/ljspeech/wavs/LJ032-0033.npy -tests/data/ljspeech/wavs/LJ044-0195.wav|tests/data/ljspeech/wavs/LJ044-0195.npy -tests/data/ljspeech/wavs/LJ002-0201.wav|tests/data/ljspeech/wavs/LJ002-0201.npy -tests/data/ljspeech/wavs/LJ002-0188.wav|tests/data/ljspeech/wavs/LJ002-0188.npy -tests/data/ljspeech/wavs/LJ025-0054.wav|tests/data/ljspeech/wavs/LJ025-0054.npy -tests/data/ljspeech/wavs/LJ026-0163.wav|tests/data/ljspeech/wavs/LJ026-0163.npy -tests/data/ljspeech/wavs/LJ025-0126.wav|tests/data/ljspeech/wavs/LJ025-0126.npy -tests/data/ljspeech/wavs/LJ048-0231.wav|tests/data/ljspeech/wavs/LJ048-0231.npy -tests/data/ljspeech/wavs/LJ002-0304.wav|tests/data/ljspeech/wavs/LJ002-0304.npy -tests/data/ljspeech/wavs/LJ026-0146.wav|tests/data/ljspeech/wavs/LJ026-0146.npy -tests/data/ljspeech/wavs/LJ045-0237.wav|tests/data/ljspeech/wavs/LJ045-0237.npy -tests/data/ljspeech/wavs/LJ002-0256.wav|tests/data/ljspeech/wavs/LJ002-0256.npy -tests/data/ljspeech/wavs/LJ028-0210.wav|tests/data/ljspeech/wavs/LJ028-0210.npy -tests/data/ljspeech/wavs/LJ025-0069.wav|tests/data/ljspeech/wavs/LJ025-0069.npy -tests/data/ljspeech/wavs/LJ016-0021.wav|tests/data/ljspeech/wavs/LJ016-0021.npy -tests/data/ljspeech/wavs/LJ023-0109.wav|tests/data/ljspeech/wavs/LJ023-0109.npy -tests/data/ljspeech/wavs/LJ027-0015.wav|tests/data/ljspeech/wavs/LJ027-0015.npy -tests/data/ljspeech/wavs/LJ002-0144.wav|tests/data/ljspeech/wavs/LJ002-0144.npy -tests/data/ljspeech/wavs/LJ033-0207.wav|tests/data/ljspeech/wavs/LJ033-0207.npy -tests/data/ljspeech/wavs/LJ028-0083.wav|tests/data/ljspeech/wavs/LJ028-0083.npy -tests/data/ljspeech/wavs/LJ002-0121.wav|tests/data/ljspeech/wavs/LJ002-0121.npy -tests/data/ljspeech/wavs/LJ004-0118.wav|tests/data/ljspeech/wavs/LJ004-0118.npy -tests/data/ljspeech/wavs/LJ028-0391.wav|tests/data/ljspeech/wavs/LJ028-0391.npy -tests/data/ljspeech/wavs/LJ050-0254.wav|tests/data/ljspeech/wavs/LJ050-0254.npy -tests/data/ljspeech/wavs/LJ014-0067.wav|tests/data/ljspeech/wavs/LJ014-0067.npy -tests/data/ljspeech/wavs/LJ028-0248.wav|tests/data/ljspeech/wavs/LJ028-0248.npy -tests/data/ljspeech/wavs/LJ022-0193.wav|tests/data/ljspeech/wavs/LJ022-0193.npy -tests/data/ljspeech/wavs/LJ026-0027.wav|tests/data/ljspeech/wavs/LJ026-0027.npy -tests/data/ljspeech/wavs/LJ002-0099.wav|tests/data/ljspeech/wavs/LJ002-0099.npy -tests/data/ljspeech/wavs/LJ014-0034.wav|tests/data/ljspeech/wavs/LJ014-0034.npy -tests/data/ljspeech/wavs/LJ030-0006.wav|tests/data/ljspeech/wavs/LJ030-0006.npy -tests/data/ljspeech/wavs/LJ037-0085.wav|tests/data/ljspeech/wavs/LJ037-0085.npy -tests/data/ljspeech/wavs/LJ030-0062.wav|tests/data/ljspeech/wavs/LJ030-0062.npy -tests/data/ljspeech/wavs/LJ042-0063.wav|tests/data/ljspeech/wavs/LJ042-0063.npy -tests/data/ljspeech/wavs/LJ027-0173.wav|tests/data/ljspeech/wavs/LJ027-0173.npy -tests/data/ljspeech/wavs/LJ046-0144.wav|tests/data/ljspeech/wavs/LJ046-0144.npy -tests/data/ljspeech/wavs/LJ049-0038.wav|tests/data/ljspeech/wavs/LJ049-0038.npy -tests/data/ljspeech/wavs/LJ012-0048.wav|tests/data/ljspeech/wavs/LJ012-0048.npy -tests/data/ljspeech/wavs/LJ027-0156.wav|tests/data/ljspeech/wavs/LJ027-0156.npy -tests/data/ljspeech/wavs/LJ017-0082.wav|tests/data/ljspeech/wavs/LJ017-0082.npy -tests/data/ljspeech/wavs/LJ039-0139.wav|tests/data/ljspeech/wavs/LJ039-0139.npy -tests/data/ljspeech/wavs/LJ016-0073.wav|tests/data/ljspeech/wavs/LJ016-0073.npy -tests/data/ljspeech/wavs/LJ032-0077.wav|tests/data/ljspeech/wavs/LJ032-0077.npy -tests/data/ljspeech/wavs/LJ016-0189.wav|tests/data/ljspeech/wavs/LJ016-0189.npy -tests/data/ljspeech/wavs/LJ016-0261.wav|tests/data/ljspeech/wavs/LJ016-0261.npy -tests/data/ljspeech/wavs/LJ042-0108.wav|tests/data/ljspeech/wavs/LJ042-0108.npy -tests/data/ljspeech/wavs/LJ029-0203.wav|tests/data/ljspeech/wavs/LJ029-0203.npy -tests/data/ljspeech/wavs/LJ046-0077.wav|tests/data/ljspeech/wavs/LJ046-0077.npy -tests/data/ljspeech/wavs/LJ011-0153.wav|tests/data/ljspeech/wavs/LJ011-0153.npy -tests/data/ljspeech/wavs/LJ032-0252.wav|tests/data/ljspeech/wavs/LJ032-0252.npy -tests/data/ljspeech/wavs/LJ008-0133.wav|tests/data/ljspeech/wavs/LJ008-0133.npy -tests/data/ljspeech/wavs/LJ028-0149.wav|tests/data/ljspeech/wavs/LJ028-0149.npy -tests/data/ljspeech/wavs/LJ017-0241.wav|tests/data/ljspeech/wavs/LJ017-0241.npy -tests/data/ljspeech/wavs/LJ031-0073.wav|tests/data/ljspeech/wavs/LJ031-0073.npy -tests/data/ljspeech/wavs/LJ005-0097.wav|tests/data/ljspeech/wavs/LJ005-0097.npy -tests/data/ljspeech/wavs/LJ003-0229.wav|tests/data/ljspeech/wavs/LJ003-0229.npy -tests/data/ljspeech/wavs/LJ006-0094.wav|tests/data/ljspeech/wavs/LJ006-0094.npy -tests/data/ljspeech/wavs/LJ031-0110.wav|tests/data/ljspeech/wavs/LJ031-0110.npy -tests/data/ljspeech/wavs/LJ022-0183.wav|tests/data/ljspeech/wavs/LJ022-0183.npy -tests/data/ljspeech/wavs/LJ016-0405.wav|tests/data/ljspeech/wavs/LJ016-0405.npy -tests/data/ljspeech/wavs/LJ003-0308.wav|tests/data/ljspeech/wavs/LJ003-0308.npy -tests/data/ljspeech/wavs/LJ044-0095.wav|tests/data/ljspeech/wavs/LJ044-0095.npy -tests/data/ljspeech/wavs/LJ022-0083.wav|tests/data/ljspeech/wavs/LJ022-0083.npy -tests/data/ljspeech/wavs/LJ034-0038.wav|tests/data/ljspeech/wavs/LJ034-0038.npy -tests/data/ljspeech/wavs/LJ043-0138.wav|tests/data/ljspeech/wavs/LJ043-0138.npy -tests/data/ljspeech/wavs/LJ005-0243.wav|tests/data/ljspeech/wavs/LJ005-0243.npy -tests/data/ljspeech/wavs/LJ050-0179.wav|tests/data/ljspeech/wavs/LJ050-0179.npy -tests/data/ljspeech/wavs/LJ028-0321.wav|tests/data/ljspeech/wavs/LJ028-0321.npy -tests/data/ljspeech/wavs/LJ020-0016.wav|tests/data/ljspeech/wavs/LJ020-0016.npy -tests/data/ljspeech/wavs/LJ045-0065.wav|tests/data/ljspeech/wavs/LJ045-0065.npy -tests/data/ljspeech/wavs/LJ023-0033.wav|tests/data/ljspeech/wavs/LJ023-0033.npy -tests/data/ljspeech/wavs/LJ033-0163.wav|tests/data/ljspeech/wavs/LJ033-0163.npy -tests/data/ljspeech/wavs/LJ011-0210.wav|tests/data/ljspeech/wavs/LJ011-0210.npy -tests/data/ljspeech/wavs/LJ050-0263.wav|tests/data/ljspeech/wavs/LJ050-0263.npy -tests/data/ljspeech/wavs/LJ021-0099.wav|tests/data/ljspeech/wavs/LJ021-0099.npy -tests/data/ljspeech/wavs/LJ034-0096.wav|tests/data/ljspeech/wavs/LJ034-0096.npy -tests/data/ljspeech/wavs/LJ016-0218.wav|tests/data/ljspeech/wavs/LJ016-0218.npy -tests/data/ljspeech/wavs/LJ023-0036.wav|tests/data/ljspeech/wavs/LJ023-0036.npy -tests/data/ljspeech/wavs/LJ037-0176.wav|tests/data/ljspeech/wavs/LJ037-0176.npy -tests/data/ljspeech/wavs/LJ022-0138.wav|tests/data/ljspeech/wavs/LJ022-0138.npy -tests/data/ljspeech/wavs/LJ039-0223.wav|tests/data/ljspeech/wavs/LJ039-0223.npy -tests/data/ljspeech/wavs/LJ021-0055.wav|tests/data/ljspeech/wavs/LJ021-0055.npy -tests/data/ljspeech/wavs/LJ018-0239.wav|tests/data/ljspeech/wavs/LJ018-0239.npy -tests/data/ljspeech/wavs/LJ003-0076.wav|tests/data/ljspeech/wavs/LJ003-0076.npy -tests/data/ljspeech/wavs/LJ040-0228.wav|tests/data/ljspeech/wavs/LJ040-0228.npy -tests/data/ljspeech/wavs/LJ034-0066.wav|tests/data/ljspeech/wavs/LJ034-0066.npy -tests/data/ljspeech/wavs/LJ034-0037.wav|tests/data/ljspeech/wavs/LJ034-0037.npy -tests/data/ljspeech/wavs/LJ018-0074.wav|tests/data/ljspeech/wavs/LJ018-0074.npy -tests/data/ljspeech/wavs/LJ010-0099.wav|tests/data/ljspeech/wavs/LJ010-0099.npy -tests/data/ljspeech/wavs/LJ022-0052.wav|tests/data/ljspeech/wavs/LJ022-0052.npy -tests/data/ljspeech/wavs/LJ016-0374.wav|tests/data/ljspeech/wavs/LJ016-0374.npy -tests/data/ljspeech/wavs/LJ008-0040.wav|tests/data/ljspeech/wavs/LJ008-0040.npy -tests/data/ljspeech/wavs/LJ010-0061.wav|tests/data/ljspeech/wavs/LJ010-0061.npy -tests/data/ljspeech/wavs/LJ028-0198.wav|tests/data/ljspeech/wavs/LJ028-0198.npy -tests/data/ljspeech/wavs/LJ033-0004.wav|tests/data/ljspeech/wavs/LJ033-0004.npy -tests/data/ljspeech/wavs/LJ040-0112.wav|tests/data/ljspeech/wavs/LJ040-0112.npy -tests/data/ljspeech/wavs/LJ026-0088.wav|tests/data/ljspeech/wavs/LJ026-0088.npy -tests/data/ljspeech/wavs/LJ035-0069.wav|tests/data/ljspeech/wavs/LJ035-0069.npy -tests/data/ljspeech/wavs/LJ026-0053.wav|tests/data/ljspeech/wavs/LJ026-0053.npy -tests/data/ljspeech/wavs/LJ019-0236.wav|tests/data/ljspeech/wavs/LJ019-0236.npy -tests/data/ljspeech/wavs/LJ023-0012.wav|tests/data/ljspeech/wavs/LJ023-0012.npy -tests/data/ljspeech/wavs/LJ046-0196.wav|tests/data/ljspeech/wavs/LJ046-0196.npy -tests/data/ljspeech/wavs/LJ045-0114.wav|tests/data/ljspeech/wavs/LJ045-0114.npy -tests/data/ljspeech/wavs/LJ049-0146.wav|tests/data/ljspeech/wavs/LJ049-0146.npy -tests/data/ljspeech/wavs/LJ001-0166.wav|tests/data/ljspeech/wavs/LJ001-0166.npy -tests/data/ljspeech/wavs/LJ019-0332.wav|tests/data/ljspeech/wavs/LJ019-0332.npy -tests/data/ljspeech/wavs/LJ002-0210.wav|tests/data/ljspeech/wavs/LJ002-0210.npy -tests/data/ljspeech/wavs/LJ003-0102.wav|tests/data/ljspeech/wavs/LJ003-0102.npy -tests/data/ljspeech/wavs/LJ006-0060.wav|tests/data/ljspeech/wavs/LJ006-0060.npy -tests/data/ljspeech/wavs/LJ003-0013.wav|tests/data/ljspeech/wavs/LJ003-0013.npy -tests/data/ljspeech/wavs/LJ047-0202.wav|tests/data/ljspeech/wavs/LJ047-0202.npy -tests/data/ljspeech/wavs/LJ033-0019.wav|tests/data/ljspeech/wavs/LJ033-0019.npy -tests/data/ljspeech/wavs/LJ006-0046.wav|tests/data/ljspeech/wavs/LJ006-0046.npy -tests/data/ljspeech/wavs/LJ018-0244.wav|tests/data/ljspeech/wavs/LJ018-0244.npy -tests/data/ljspeech/wavs/LJ003-0103.wav|tests/data/ljspeech/wavs/LJ003-0103.npy -tests/data/ljspeech/wavs/LJ018-0123.wav|tests/data/ljspeech/wavs/LJ018-0123.npy -tests/data/ljspeech/wavs/LJ031-0151.wav|tests/data/ljspeech/wavs/LJ031-0151.npy -tests/data/ljspeech/wavs/LJ025-0017.wav|tests/data/ljspeech/wavs/LJ025-0017.npy -tests/data/ljspeech/wavs/LJ019-0094.wav|tests/data/ljspeech/wavs/LJ019-0094.npy -tests/data/ljspeech/wavs/LJ033-0116.wav|tests/data/ljspeech/wavs/LJ033-0116.npy -tests/data/ljspeech/wavs/LJ048-0014.wav|tests/data/ljspeech/wavs/LJ048-0014.npy -tests/data/ljspeech/wavs/LJ049-0029.wav|tests/data/ljspeech/wavs/LJ049-0029.npy -tests/data/ljspeech/wavs/LJ007-0129.wav|tests/data/ljspeech/wavs/LJ007-0129.npy -tests/data/ljspeech/wavs/LJ018-0155.wav|tests/data/ljspeech/wavs/LJ018-0155.npy -tests/data/ljspeech/wavs/LJ028-0129.wav|tests/data/ljspeech/wavs/LJ028-0129.npy -tests/data/ljspeech/wavs/LJ002-0217.wav|tests/data/ljspeech/wavs/LJ002-0217.npy -tests/data/ljspeech/wavs/LJ037-0247.wav|tests/data/ljspeech/wavs/LJ037-0247.npy -tests/data/ljspeech/wavs/LJ025-0106.wav|tests/data/ljspeech/wavs/LJ025-0106.npy -tests/data/ljspeech/wavs/LJ038-0152.wav|tests/data/ljspeech/wavs/LJ038-0152.npy -tests/data/ljspeech/wavs/LJ009-0061.wav|tests/data/ljspeech/wavs/LJ009-0061.npy -tests/data/ljspeech/wavs/LJ038-0276.wav|tests/data/ljspeech/wavs/LJ038-0276.npy -tests/data/ljspeech/wavs/LJ014-0086.wav|tests/data/ljspeech/wavs/LJ014-0086.npy -tests/data/ljspeech/wavs/LJ041-0100.wav|tests/data/ljspeech/wavs/LJ041-0100.npy -tests/data/ljspeech/wavs/LJ016-0404.wav|tests/data/ljspeech/wavs/LJ016-0404.npy -tests/data/ljspeech/wavs/LJ020-0023.wav|tests/data/ljspeech/wavs/LJ020-0023.npy -tests/data/ljspeech/wavs/LJ030-0123.wav|tests/data/ljspeech/wavs/LJ030-0123.npy -tests/data/ljspeech/wavs/LJ044-0201.wav|tests/data/ljspeech/wavs/LJ044-0201.npy -tests/data/ljspeech/wavs/LJ030-0155.wav|tests/data/ljspeech/wavs/LJ030-0155.npy -tests/data/ljspeech/wavs/LJ045-0063.wav|tests/data/ljspeech/wavs/LJ045-0063.npy -tests/data/ljspeech/wavs/LJ030-0215.wav|tests/data/ljspeech/wavs/LJ030-0215.npy -tests/data/ljspeech/wavs/LJ006-0221.wav|tests/data/ljspeech/wavs/LJ006-0221.npy -tests/data/ljspeech/wavs/LJ048-0114.wav|tests/data/ljspeech/wavs/LJ048-0114.npy -tests/data/ljspeech/wavs/LJ038-0020.wav|tests/data/ljspeech/wavs/LJ038-0020.npy -tests/data/ljspeech/wavs/LJ024-0094.wav|tests/data/ljspeech/wavs/LJ024-0094.npy -tests/data/ljspeech/wavs/LJ049-0127.wav|tests/data/ljspeech/wavs/LJ049-0127.npy -tests/data/ljspeech/wavs/LJ013-0144.wav|tests/data/ljspeech/wavs/LJ013-0144.npy -tests/data/ljspeech/wavs/LJ015-0276.wav|tests/data/ljspeech/wavs/LJ015-0276.npy -tests/data/ljspeech/wavs/LJ004-0007.wav|tests/data/ljspeech/wavs/LJ004-0007.npy -tests/data/ljspeech/wavs/LJ038-0064.wav|tests/data/ljspeech/wavs/LJ038-0064.npy -tests/data/ljspeech/wavs/LJ012-0188.wav|tests/data/ljspeech/wavs/LJ012-0188.npy -tests/data/ljspeech/wavs/LJ030-0124.wav|tests/data/ljspeech/wavs/LJ030-0124.npy -tests/data/ljspeech/wavs/LJ037-0004.wav|tests/data/ljspeech/wavs/LJ037-0004.npy -tests/data/ljspeech/wavs/LJ012-0293.wav|tests/data/ljspeech/wavs/LJ012-0293.npy -tests/data/ljspeech/wavs/LJ039-0108.wav|tests/data/ljspeech/wavs/LJ039-0108.npy -tests/data/ljspeech/wavs/LJ015-0028.wav|tests/data/ljspeech/wavs/LJ015-0028.npy -tests/data/ljspeech/wavs/LJ012-0135.wav|tests/data/ljspeech/wavs/LJ012-0135.npy -tests/data/ljspeech/wavs/LJ014-0021.wav|tests/data/ljspeech/wavs/LJ014-0021.npy -tests/data/ljspeech/wavs/LJ014-0185.wav|tests/data/ljspeech/wavs/LJ014-0185.npy -tests/data/ljspeech/wavs/LJ038-0126.wav|tests/data/ljspeech/wavs/LJ038-0126.npy -tests/data/ljspeech/wavs/LJ034-0114.wav|tests/data/ljspeech/wavs/LJ034-0114.npy -tests/data/ljspeech/wavs/LJ038-0303.wav|tests/data/ljspeech/wavs/LJ038-0303.npy -tests/data/ljspeech/wavs/LJ047-0218.wav|tests/data/ljspeech/wavs/LJ047-0218.npy -tests/data/ljspeech/wavs/LJ036-0126.wav|tests/data/ljspeech/wavs/LJ036-0126.npy -tests/data/ljspeech/wavs/LJ040-0032.wav|tests/data/ljspeech/wavs/LJ040-0032.npy -tests/data/ljspeech/wavs/LJ004-0055.wav|tests/data/ljspeech/wavs/LJ004-0055.npy -tests/data/ljspeech/wavs/LJ037-0021.wav|tests/data/ljspeech/wavs/LJ037-0021.npy -tests/data/ljspeech/wavs/LJ014-0187.wav|tests/data/ljspeech/wavs/LJ014-0187.npy -tests/data/ljspeech/wavs/LJ001-0068.wav|tests/data/ljspeech/wavs/LJ001-0068.npy -tests/data/ljspeech/wavs/LJ040-0024.wav|tests/data/ljspeech/wavs/LJ040-0024.npy -tests/data/ljspeech/wavs/LJ045-0083.wav|tests/data/ljspeech/wavs/LJ045-0083.npy -tests/data/ljspeech/wavs/LJ034-0049.wav|tests/data/ljspeech/wavs/LJ034-0049.npy -tests/data/ljspeech/wavs/LJ042-0213.wav|tests/data/ljspeech/wavs/LJ042-0213.npy -tests/data/ljspeech/wavs/LJ015-0162.wav|tests/data/ljspeech/wavs/LJ015-0162.npy -tests/data/ljspeech/wavs/LJ007-0158.wav|tests/data/ljspeech/wavs/LJ007-0158.npy -tests/data/ljspeech/wavs/LJ011-0105.wav|tests/data/ljspeech/wavs/LJ011-0105.npy -tests/data/ljspeech/wavs/LJ003-0068.wav|tests/data/ljspeech/wavs/LJ003-0068.npy -tests/data/ljspeech/wavs/LJ003-0057.wav|tests/data/ljspeech/wavs/LJ003-0057.npy -tests/data/ljspeech/wavs/LJ037-0031.wav|tests/data/ljspeech/wavs/LJ037-0031.npy -tests/data/ljspeech/wavs/LJ003-0016.wav|tests/data/ljspeech/wavs/LJ003-0016.npy -tests/data/ljspeech/wavs/LJ032-0067.wav|tests/data/ljspeech/wavs/LJ032-0067.npy -tests/data/ljspeech/wavs/LJ047-0211.wav|tests/data/ljspeech/wavs/LJ047-0211.npy -tests/data/ljspeech/wavs/LJ041-0025.wav|tests/data/ljspeech/wavs/LJ041-0025.npy -tests/data/ljspeech/wavs/LJ016-0343.wav|tests/data/ljspeech/wavs/LJ016-0343.npy -tests/data/ljspeech/wavs/LJ011-0235.wav|tests/data/ljspeech/wavs/LJ011-0235.npy -tests/data/ljspeech/wavs/LJ022-0111.wav|tests/data/ljspeech/wavs/LJ022-0111.npy -tests/data/ljspeech/wavs/LJ003-0269.wav|tests/data/ljspeech/wavs/LJ003-0269.npy -tests/data/ljspeech/wavs/LJ034-0091.wav|tests/data/ljspeech/wavs/LJ034-0091.npy -tests/data/ljspeech/wavs/LJ025-0055.wav|tests/data/ljspeech/wavs/LJ025-0055.npy -tests/data/ljspeech/wavs/LJ014-0278.wav|tests/data/ljspeech/wavs/LJ014-0278.npy -tests/data/ljspeech/wavs/LJ038-0282.wav|tests/data/ljspeech/wavs/LJ038-0282.npy -tests/data/ljspeech/wavs/LJ013-0083.wav|tests/data/ljspeech/wavs/LJ013-0083.npy -tests/data/ljspeech/wavs/LJ037-0261.wav|tests/data/ljspeech/wavs/LJ037-0261.npy -tests/data/ljspeech/wavs/LJ020-0041.wav|tests/data/ljspeech/wavs/LJ020-0041.npy -tests/data/ljspeech/wavs/LJ010-0200.wav|tests/data/ljspeech/wavs/LJ010-0200.npy -tests/data/ljspeech/wavs/LJ006-0269.wav|tests/data/ljspeech/wavs/LJ006-0269.npy -tests/data/ljspeech/wavs/LJ017-0154.wav|tests/data/ljspeech/wavs/LJ017-0154.npy -tests/data/ljspeech/wavs/LJ036-0164.wav|tests/data/ljspeech/wavs/LJ036-0164.npy -tests/data/ljspeech/wavs/LJ002-0140.wav|tests/data/ljspeech/wavs/LJ002-0140.npy -tests/data/ljspeech/wavs/LJ015-0264.wav|tests/data/ljspeech/wavs/LJ015-0264.npy -tests/data/ljspeech/wavs/LJ003-0313.wav|tests/data/ljspeech/wavs/LJ003-0313.npy -tests/data/ljspeech/wavs/LJ048-0039.wav|tests/data/ljspeech/wavs/LJ048-0039.npy -tests/data/ljspeech/wavs/LJ039-0008.wav|tests/data/ljspeech/wavs/LJ039-0008.npy -tests/data/ljspeech/wavs/LJ047-0232.wav|tests/data/ljspeech/wavs/LJ047-0232.npy -tests/data/ljspeech/wavs/LJ032-0244.wav|tests/data/ljspeech/wavs/LJ032-0244.npy -tests/data/ljspeech/wavs/LJ030-0098.wav|tests/data/ljspeech/wavs/LJ030-0098.npy -tests/data/ljspeech/wavs/LJ049-0159.wav|tests/data/ljspeech/wavs/LJ049-0159.npy -tests/data/ljspeech/wavs/LJ008-0031.wav|tests/data/ljspeech/wavs/LJ008-0031.npy -tests/data/ljspeech/wavs/LJ017-0091.wav|tests/data/ljspeech/wavs/LJ017-0091.npy -tests/data/ljspeech/wavs/LJ009-0181.wav|tests/data/ljspeech/wavs/LJ009-0181.npy -tests/data/ljspeech/wavs/LJ045-0191.wav|tests/data/ljspeech/wavs/LJ045-0191.npy -tests/data/ljspeech/wavs/LJ030-0139.wav|tests/data/ljspeech/wavs/LJ030-0139.npy -tests/data/ljspeech/wavs/LJ050-0071.wav|tests/data/ljspeech/wavs/LJ050-0071.npy -tests/data/ljspeech/wavs/LJ039-0238.wav|tests/data/ljspeech/wavs/LJ039-0238.npy -tests/data/ljspeech/wavs/LJ048-0265.wav|tests/data/ljspeech/wavs/LJ048-0265.npy -tests/data/ljspeech/wavs/LJ020-0078.wav|tests/data/ljspeech/wavs/LJ020-0078.npy -tests/data/ljspeech/wavs/LJ034-0035.wav|tests/data/ljspeech/wavs/LJ034-0035.npy -tests/data/ljspeech/wavs/LJ043-0019.wav|tests/data/ljspeech/wavs/LJ043-0019.npy -tests/data/ljspeech/wavs/LJ031-0029.wav|tests/data/ljspeech/wavs/LJ031-0029.npy -tests/data/ljspeech/wavs/LJ043-0171.wav|tests/data/ljspeech/wavs/LJ043-0171.npy -tests/data/ljspeech/wavs/LJ012-0123.wav|tests/data/ljspeech/wavs/LJ012-0123.npy -tests/data/ljspeech/wavs/LJ013-0121.wav|tests/data/ljspeech/wavs/LJ013-0121.npy -tests/data/ljspeech/wavs/LJ042-0015.wav|tests/data/ljspeech/wavs/LJ042-0015.npy -tests/data/ljspeech/wavs/LJ038-0219.wav|tests/data/ljspeech/wavs/LJ038-0219.npy -tests/data/ljspeech/wavs/LJ003-0277.wav|tests/data/ljspeech/wavs/LJ003-0277.npy -tests/data/ljspeech/wavs/LJ048-0031.wav|tests/data/ljspeech/wavs/LJ048-0031.npy -tests/data/ljspeech/wavs/LJ006-0203.wav|tests/data/ljspeech/wavs/LJ006-0203.npy -tests/data/ljspeech/wavs/LJ042-0047.wav|tests/data/ljspeech/wavs/LJ042-0047.npy -tests/data/ljspeech/wavs/LJ042-0061.wav|tests/data/ljspeech/wavs/LJ042-0061.npy -tests/data/ljspeech/wavs/LJ039-0143.wav|tests/data/ljspeech/wavs/LJ039-0143.npy -tests/data/ljspeech/wavs/LJ048-0209.wav|tests/data/ljspeech/wavs/LJ048-0209.npy -tests/data/ljspeech/wavs/LJ033-0094.wav|tests/data/ljspeech/wavs/LJ033-0094.npy -tests/data/ljspeech/wavs/LJ025-0157.wav|tests/data/ljspeech/wavs/LJ025-0157.npy -tests/data/ljspeech/wavs/LJ001-0116.wav|tests/data/ljspeech/wavs/LJ001-0116.npy -tests/data/ljspeech/wavs/LJ028-0179.wav|tests/data/ljspeech/wavs/LJ028-0179.npy -tests/data/ljspeech/wavs/LJ033-0073.wav|tests/data/ljspeech/wavs/LJ033-0073.npy -tests/data/ljspeech/wavs/LJ008-0126.wav|tests/data/ljspeech/wavs/LJ008-0126.npy -tests/data/ljspeech/wavs/LJ008-0174.wav|tests/data/ljspeech/wavs/LJ008-0174.npy -tests/data/ljspeech/wavs/LJ038-0060.wav|tests/data/ljspeech/wavs/LJ038-0060.npy -tests/data/ljspeech/wavs/LJ028-0011.wav|tests/data/ljspeech/wavs/LJ028-0011.npy -tests/data/ljspeech/wavs/LJ048-0085.wav|tests/data/ljspeech/wavs/LJ048-0085.npy -tests/data/ljspeech/wavs/LJ015-0287.wav|tests/data/ljspeech/wavs/LJ015-0287.npy -tests/data/ljspeech/wavs/LJ014-0010.wav|tests/data/ljspeech/wavs/LJ014-0010.npy -tests/data/ljspeech/wavs/LJ005-0009.wav|tests/data/ljspeech/wavs/LJ005-0009.npy -tests/data/ljspeech/wavs/LJ028-0120.wav|tests/data/ljspeech/wavs/LJ028-0120.npy -tests/data/ljspeech/wavs/LJ002-0211.wav|tests/data/ljspeech/wavs/LJ002-0211.npy -tests/data/ljspeech/wavs/LJ014-0026.wav|tests/data/ljspeech/wavs/LJ014-0026.npy -tests/data/ljspeech/wavs/LJ039-0119.wav|tests/data/ljspeech/wavs/LJ039-0119.npy -tests/data/ljspeech/wavs/LJ037-0159.wav|tests/data/ljspeech/wavs/LJ037-0159.npy -tests/data/ljspeech/wavs/LJ027-0018.wav|tests/data/ljspeech/wavs/LJ027-0018.npy -tests/data/ljspeech/wavs/LJ040-0102.wav|tests/data/ljspeech/wavs/LJ040-0102.npy -tests/data/ljspeech/wavs/LJ040-0124.wav|tests/data/ljspeech/wavs/LJ040-0124.npy -tests/data/ljspeech/wavs/LJ006-0300.wav|tests/data/ljspeech/wavs/LJ006-0300.npy -tests/data/ljspeech/wavs/LJ031-0188.wav|tests/data/ljspeech/wavs/LJ031-0188.npy -tests/data/ljspeech/wavs/LJ048-0143.wav|tests/data/ljspeech/wavs/LJ048-0143.npy -tests/data/ljspeech/wavs/LJ046-0178.wav|tests/data/ljspeech/wavs/LJ046-0178.npy -tests/data/ljspeech/wavs/LJ029-0112.wav|tests/data/ljspeech/wavs/LJ029-0112.npy -tests/data/ljspeech/wavs/LJ042-0161.wav|tests/data/ljspeech/wavs/LJ042-0161.npy -tests/data/ljspeech/wavs/LJ046-0083.wav|tests/data/ljspeech/wavs/LJ046-0083.npy -tests/data/ljspeech/wavs/LJ042-0230.wav|tests/data/ljspeech/wavs/LJ042-0230.npy -tests/data/ljspeech/wavs/LJ026-0089.wav|tests/data/ljspeech/wavs/LJ026-0089.npy -tests/data/ljspeech/wavs/LJ043-0075.wav|tests/data/ljspeech/wavs/LJ043-0075.npy -tests/data/ljspeech/wavs/LJ040-0165.wav|tests/data/ljspeech/wavs/LJ040-0165.npy -tests/data/ljspeech/wavs/LJ038-0117.wav|tests/data/ljspeech/wavs/LJ038-0117.npy -tests/data/ljspeech/wavs/LJ046-0174.wav|tests/data/ljspeech/wavs/LJ046-0174.npy -tests/data/ljspeech/wavs/LJ039-0033.wav|tests/data/ljspeech/wavs/LJ039-0033.npy -tests/data/ljspeech/wavs/LJ038-0191.wav|tests/data/ljspeech/wavs/LJ038-0191.npy -tests/data/ljspeech/wavs/LJ009-0291.wav|tests/data/ljspeech/wavs/LJ009-0291.npy -tests/data/ljspeech/wavs/LJ048-0142.wav|tests/data/ljspeech/wavs/LJ048-0142.npy -tests/data/ljspeech/wavs/LJ050-0156.wav|tests/data/ljspeech/wavs/LJ050-0156.npy -tests/data/ljspeech/wavs/LJ001-0158.wav|tests/data/ljspeech/wavs/LJ001-0158.npy -tests/data/ljspeech/wavs/LJ037-0087.wav|tests/data/ljspeech/wavs/LJ037-0087.npy -tests/data/ljspeech/wavs/LJ050-0100.wav|tests/data/ljspeech/wavs/LJ050-0100.npy -tests/data/ljspeech/wavs/LJ028-0254.wav|tests/data/ljspeech/wavs/LJ028-0254.npy -tests/data/ljspeech/wavs/LJ003-0117.wav|tests/data/ljspeech/wavs/LJ003-0117.npy -tests/data/ljspeech/wavs/LJ030-0164.wav|tests/data/ljspeech/wavs/LJ030-0164.npy -tests/data/ljspeech/wavs/LJ019-0151.wav|tests/data/ljspeech/wavs/LJ019-0151.npy -tests/data/ljspeech/wavs/LJ043-0060.wav|tests/data/ljspeech/wavs/LJ043-0060.npy -tests/data/ljspeech/wavs/LJ018-0214.wav|tests/data/ljspeech/wavs/LJ018-0214.npy -tests/data/ljspeech/wavs/LJ044-0221.wav|tests/data/ljspeech/wavs/LJ044-0221.npy -tests/data/ljspeech/wavs/LJ014-0306.wav|tests/data/ljspeech/wavs/LJ014-0306.npy -tests/data/ljspeech/wavs/LJ020-0098.wav|tests/data/ljspeech/wavs/LJ020-0098.npy -tests/data/ljspeech/wavs/LJ040-0166.wav|tests/data/ljspeech/wavs/LJ040-0166.npy -tests/data/ljspeech/wavs/LJ002-0192.wav|tests/data/ljspeech/wavs/LJ002-0192.npy -tests/data/ljspeech/wavs/LJ047-0053.wav|tests/data/ljspeech/wavs/LJ047-0053.npy -tests/data/ljspeech/wavs/LJ007-0082.wav|tests/data/ljspeech/wavs/LJ007-0082.npy -tests/data/ljspeech/wavs/LJ003-0053.wav|tests/data/ljspeech/wavs/LJ003-0053.npy -tests/data/ljspeech/wavs/LJ038-0262.wav|tests/data/ljspeech/wavs/LJ038-0262.npy -tests/data/ljspeech/wavs/LJ026-0082.wav|tests/data/ljspeech/wavs/LJ026-0082.npy -tests/data/ljspeech/wavs/LJ008-0182.wav|tests/data/ljspeech/wavs/LJ008-0182.npy -tests/data/ljspeech/wavs/LJ030-0243.wav|tests/data/ljspeech/wavs/LJ030-0243.npy -tests/data/ljspeech/wavs/LJ006-0077.wav|tests/data/ljspeech/wavs/LJ006-0077.npy -tests/data/ljspeech/wavs/LJ027-0074.wav|tests/data/ljspeech/wavs/LJ027-0074.npy -tests/data/ljspeech/wavs/LJ034-0156.wav|tests/data/ljspeech/wavs/LJ034-0156.npy -tests/data/ljspeech/wavs/LJ027-0053.wav|tests/data/ljspeech/wavs/LJ027-0053.npy -tests/data/ljspeech/wavs/LJ008-0087.wav|tests/data/ljspeech/wavs/LJ008-0087.npy -tests/data/ljspeech/wavs/LJ033-0066.wav|tests/data/ljspeech/wavs/LJ033-0066.npy -tests/data/ljspeech/wavs/LJ029-0130.wav|tests/data/ljspeech/wavs/LJ029-0130.npy -tests/data/ljspeech/wavs/LJ014-0020.wav|tests/data/ljspeech/wavs/LJ014-0020.npy -tests/data/ljspeech/wavs/LJ042-0022.wav|tests/data/ljspeech/wavs/LJ042-0022.npy -tests/data/ljspeech/wavs/LJ041-0157.wav|tests/data/ljspeech/wavs/LJ041-0157.npy -tests/data/ljspeech/wavs/LJ010-0026.wav|tests/data/ljspeech/wavs/LJ010-0026.npy -tests/data/ljspeech/wavs/LJ014-0029.wav|tests/data/ljspeech/wavs/LJ014-0029.npy -tests/data/ljspeech/wavs/LJ008-0239.wav|tests/data/ljspeech/wavs/LJ008-0239.npy -tests/data/ljspeech/wavs/LJ010-0076.wav|tests/data/ljspeech/wavs/LJ010-0076.npy -tests/data/ljspeech/wavs/LJ026-0032.wav|tests/data/ljspeech/wavs/LJ026-0032.npy -tests/data/ljspeech/wavs/LJ002-0135.wav|tests/data/ljspeech/wavs/LJ002-0135.npy -tests/data/ljspeech/wavs/LJ041-0012.wav|tests/data/ljspeech/wavs/LJ041-0012.npy -tests/data/ljspeech/wavs/LJ013-0207.wav|tests/data/ljspeech/wavs/LJ013-0207.npy -tests/data/ljspeech/wavs/LJ042-0048.wav|tests/data/ljspeech/wavs/LJ042-0048.npy -tests/data/ljspeech/wavs/LJ048-0227.wav|tests/data/ljspeech/wavs/LJ048-0227.npy -tests/data/ljspeech/wavs/LJ050-0032.wav|tests/data/ljspeech/wavs/LJ050-0032.npy -tests/data/ljspeech/wavs/LJ028-0218.wav|tests/data/ljspeech/wavs/LJ028-0218.npy -tests/data/ljspeech/wavs/LJ007-0194.wav|tests/data/ljspeech/wavs/LJ007-0194.npy -tests/data/ljspeech/wavs/LJ046-0181.wav|tests/data/ljspeech/wavs/LJ046-0181.npy -tests/data/ljspeech/wavs/LJ007-0214.wav|tests/data/ljspeech/wavs/LJ007-0214.npy -tests/data/ljspeech/wavs/LJ008-0154.wav|tests/data/ljspeech/wavs/LJ008-0154.npy -tests/data/ljspeech/wavs/LJ003-0128.wav|tests/data/ljspeech/wavs/LJ003-0128.npy -tests/data/ljspeech/wavs/LJ004-0185.wav|tests/data/ljspeech/wavs/LJ004-0185.npy -tests/data/ljspeech/wavs/LJ009-0169.wav|tests/data/ljspeech/wavs/LJ009-0169.npy -tests/data/ljspeech/wavs/LJ044-0192.wav|tests/data/ljspeech/wavs/LJ044-0192.npy -tests/data/ljspeech/wavs/LJ013-0188.wav|tests/data/ljspeech/wavs/LJ013-0188.npy -tests/data/ljspeech/wavs/LJ002-0313.wav|tests/data/ljspeech/wavs/LJ002-0313.npy -tests/data/ljspeech/wavs/LJ022-0092.wav|tests/data/ljspeech/wavs/LJ022-0092.npy -tests/data/ljspeech/wavs/LJ009-0089.wav|tests/data/ljspeech/wavs/LJ009-0089.npy -tests/data/ljspeech/wavs/LJ038-0295.wav|tests/data/ljspeech/wavs/LJ038-0295.npy -tests/data/ljspeech/wavs/LJ023-0018.wav|tests/data/ljspeech/wavs/LJ023-0018.npy -tests/data/ljspeech/wavs/LJ038-0143.wav|tests/data/ljspeech/wavs/LJ038-0143.npy -tests/data/ljspeech/wavs/LJ048-0004.wav|tests/data/ljspeech/wavs/LJ048-0004.npy -tests/data/ljspeech/wavs/LJ038-0182.wav|tests/data/ljspeech/wavs/LJ038-0182.npy -tests/data/ljspeech/wavs/LJ002-0276.wav|tests/data/ljspeech/wavs/LJ002-0276.npy -tests/data/ljspeech/wavs/LJ025-0024.wav|tests/data/ljspeech/wavs/LJ025-0024.npy -tests/data/ljspeech/wavs/LJ038-0169.wav|tests/data/ljspeech/wavs/LJ038-0169.npy -tests/data/ljspeech/wavs/LJ028-0354.wav|tests/data/ljspeech/wavs/LJ028-0354.npy -tests/data/ljspeech/wavs/LJ033-0106.wav|tests/data/ljspeech/wavs/LJ033-0106.npy -tests/data/ljspeech/wavs/LJ042-0125.wav|tests/data/ljspeech/wavs/LJ042-0125.npy -tests/data/ljspeech/wavs/LJ025-0135.wav|tests/data/ljspeech/wavs/LJ025-0135.npy -tests/data/ljspeech/wavs/LJ030-0190.wav|tests/data/ljspeech/wavs/LJ030-0190.npy -tests/data/ljspeech/wavs/LJ005-0291.wav|tests/data/ljspeech/wavs/LJ005-0291.npy -tests/data/ljspeech/wavs/LJ009-0158.wav|tests/data/ljspeech/wavs/LJ009-0158.npy -tests/data/ljspeech/wavs/LJ032-0110.wav|tests/data/ljspeech/wavs/LJ032-0110.npy -tests/data/ljspeech/wavs/LJ047-0071.wav|tests/data/ljspeech/wavs/LJ047-0071.npy -tests/data/ljspeech/wavs/LJ041-0093.wav|tests/data/ljspeech/wavs/LJ041-0093.npy -tests/data/ljspeech/wavs/LJ041-0095.wav|tests/data/ljspeech/wavs/LJ041-0095.npy -tests/data/ljspeech/wavs/LJ034-0027.wav|tests/data/ljspeech/wavs/LJ034-0027.npy -tests/data/ljspeech/wavs/LJ044-0197.wav|tests/data/ljspeech/wavs/LJ044-0197.npy -tests/data/ljspeech/wavs/LJ030-0186.wav|tests/data/ljspeech/wavs/LJ030-0186.npy -tests/data/ljspeech/wavs/LJ028-0148.wav|tests/data/ljspeech/wavs/LJ028-0148.npy -tests/data/ljspeech/wavs/LJ049-0118.wav|tests/data/ljspeech/wavs/LJ049-0118.npy -tests/data/ljspeech/wavs/LJ006-0033.wav|tests/data/ljspeech/wavs/LJ006-0033.npy -tests/data/ljspeech/wavs/LJ009-0111.wav|tests/data/ljspeech/wavs/LJ009-0111.npy -tests/data/ljspeech/wavs/LJ045-0012.wav|tests/data/ljspeech/wavs/LJ045-0012.npy -tests/data/ljspeech/wavs/LJ044-0130.wav|tests/data/ljspeech/wavs/LJ044-0130.npy -tests/data/ljspeech/wavs/LJ037-0104.wav|tests/data/ljspeech/wavs/LJ037-0104.npy -tests/data/ljspeech/wavs/LJ050-0217.wav|tests/data/ljspeech/wavs/LJ050-0217.npy -tests/data/ljspeech/wavs/LJ005-0138.wav|tests/data/ljspeech/wavs/LJ005-0138.npy -tests/data/ljspeech/wavs/LJ016-0249.wav|tests/data/ljspeech/wavs/LJ016-0249.npy -tests/data/ljspeech/wavs/LJ016-0052.wav|tests/data/ljspeech/wavs/LJ016-0052.npy -tests/data/ljspeech/wavs/LJ018-0127.wav|tests/data/ljspeech/wavs/LJ018-0127.npy -tests/data/ljspeech/wavs/LJ035-0170.wav|tests/data/ljspeech/wavs/LJ035-0170.npy -tests/data/ljspeech/wavs/LJ004-0014.wav|tests/data/ljspeech/wavs/LJ004-0014.npy -tests/data/ljspeech/wavs/LJ011-0281.wav|tests/data/ljspeech/wavs/LJ011-0281.npy -tests/data/ljspeech/wavs/LJ018-0120.wav|tests/data/ljspeech/wavs/LJ018-0120.npy -tests/data/ljspeech/wavs/LJ012-0003.wav|tests/data/ljspeech/wavs/LJ012-0003.npy -tests/data/ljspeech/wavs/LJ037-0256.wav|tests/data/ljspeech/wavs/LJ037-0256.npy -tests/data/ljspeech/wavs/LJ011-0026.wav|tests/data/ljspeech/wavs/LJ011-0026.npy -tests/data/ljspeech/wavs/LJ034-0095.wav|tests/data/ljspeech/wavs/LJ034-0095.npy -tests/data/ljspeech/wavs/LJ012-0265.wav|tests/data/ljspeech/wavs/LJ012-0265.npy -tests/data/ljspeech/wavs/LJ001-0109.wav|tests/data/ljspeech/wavs/LJ001-0109.npy -tests/data/ljspeech/wavs/LJ015-0054.wav|tests/data/ljspeech/wavs/LJ015-0054.npy -tests/data/ljspeech/wavs/LJ012-0229.wav|tests/data/ljspeech/wavs/LJ012-0229.npy -tests/data/ljspeech/wavs/LJ011-0270.wav|tests/data/ljspeech/wavs/LJ011-0270.npy -tests/data/ljspeech/wavs/LJ016-0380.wav|tests/data/ljspeech/wavs/LJ016-0380.npy -tests/data/ljspeech/wavs/LJ047-0189.wav|tests/data/ljspeech/wavs/LJ047-0189.npy -tests/data/ljspeech/wavs/LJ018-0265.wav|tests/data/ljspeech/wavs/LJ018-0265.npy -tests/data/ljspeech/wavs/LJ015-0218.wav|tests/data/ljspeech/wavs/LJ015-0218.npy -tests/data/ljspeech/wavs/LJ040-0011.wav|tests/data/ljspeech/wavs/LJ040-0011.npy -tests/data/ljspeech/wavs/LJ017-0189.wav|tests/data/ljspeech/wavs/LJ017-0189.npy -tests/data/ljspeech/wavs/LJ018-0288.wav|tests/data/ljspeech/wavs/LJ018-0288.npy -tests/data/ljspeech/wavs/LJ039-0209.wav|tests/data/ljspeech/wavs/LJ039-0209.npy -tests/data/ljspeech/wavs/LJ005-0082.wav|tests/data/ljspeech/wavs/LJ005-0082.npy -tests/data/ljspeech/wavs/LJ031-0107.wav|tests/data/ljspeech/wavs/LJ031-0107.npy -tests/data/ljspeech/wavs/LJ004-0166.wav|tests/data/ljspeech/wavs/LJ004-0166.npy -tests/data/ljspeech/wavs/LJ002-0055.wav|tests/data/ljspeech/wavs/LJ002-0055.npy -tests/data/ljspeech/wavs/LJ036-0094.wav|tests/data/ljspeech/wavs/LJ036-0094.npy -tests/data/ljspeech/wavs/LJ009-0161.wav|tests/data/ljspeech/wavs/LJ009-0161.npy -tests/data/ljspeech/wavs/LJ049-0067.wav|tests/data/ljspeech/wavs/LJ049-0067.npy -tests/data/ljspeech/wavs/LJ007-0199.wav|tests/data/ljspeech/wavs/LJ007-0199.npy -tests/data/ljspeech/wavs/LJ040-0050.wav|tests/data/ljspeech/wavs/LJ040-0050.npy -tests/data/ljspeech/wavs/LJ009-0150.wav|tests/data/ljspeech/wavs/LJ009-0150.npy -tests/data/ljspeech/wavs/LJ003-0156.wav|tests/data/ljspeech/wavs/LJ003-0156.npy -tests/data/ljspeech/wavs/LJ037-0155.wav|tests/data/ljspeech/wavs/LJ037-0155.npy -tests/data/ljspeech/wavs/LJ029-0199.wav|tests/data/ljspeech/wavs/LJ029-0199.npy -tests/data/ljspeech/wavs/LJ050-0121.wav|tests/data/ljspeech/wavs/LJ050-0121.npy -tests/data/ljspeech/wavs/LJ011-0087.wav|tests/data/ljspeech/wavs/LJ011-0087.npy -tests/data/ljspeech/wavs/LJ015-0145.wav|tests/data/ljspeech/wavs/LJ015-0145.npy -tests/data/ljspeech/wavs/LJ012-0052.wav|tests/data/ljspeech/wavs/LJ012-0052.npy -tests/data/ljspeech/wavs/LJ042-0212.wav|tests/data/ljspeech/wavs/LJ042-0212.npy -tests/data/ljspeech/wavs/LJ045-0103.wav|tests/data/ljspeech/wavs/LJ045-0103.npy -tests/data/ljspeech/wavs/LJ041-0070.wav|tests/data/ljspeech/wavs/LJ041-0070.npy -tests/data/ljspeech/wavs/LJ014-0201.wav|tests/data/ljspeech/wavs/LJ014-0201.npy -tests/data/ljspeech/wavs/LJ045-0068.wav|tests/data/ljspeech/wavs/LJ045-0068.npy -tests/data/ljspeech/wavs/LJ048-0236.wav|tests/data/ljspeech/wavs/LJ048-0236.npy -tests/data/ljspeech/wavs/LJ005-0264.wav|tests/data/ljspeech/wavs/LJ005-0264.npy -tests/data/ljspeech/wavs/LJ047-0011.wav|tests/data/ljspeech/wavs/LJ047-0011.npy -tests/data/ljspeech/wavs/LJ017-0202.wav|tests/data/ljspeech/wavs/LJ017-0202.npy -tests/data/ljspeech/wavs/LJ033-0125.wav|tests/data/ljspeech/wavs/LJ033-0125.npy -tests/data/ljspeech/wavs/LJ044-0047.wav|tests/data/ljspeech/wavs/LJ044-0047.npy -tests/data/ljspeech/wavs/LJ028-0330.wav|tests/data/ljspeech/wavs/LJ028-0330.npy -tests/data/ljspeech/wavs/LJ018-0031.wav|tests/data/ljspeech/wavs/LJ018-0031.npy -tests/data/ljspeech/wavs/LJ012-0142.wav|tests/data/ljspeech/wavs/LJ012-0142.npy -tests/data/ljspeech/wavs/LJ001-0070.wav|tests/data/ljspeech/wavs/LJ001-0070.npy -tests/data/ljspeech/wavs/LJ039-0070.wav|tests/data/ljspeech/wavs/LJ039-0070.npy -tests/data/ljspeech/wavs/LJ012-0233.wav|tests/data/ljspeech/wavs/LJ012-0233.npy -tests/data/ljspeech/wavs/LJ037-0110.wav|tests/data/ljspeech/wavs/LJ037-0110.npy -tests/data/ljspeech/wavs/LJ049-0158.wav|tests/data/ljspeech/wavs/LJ049-0158.npy -tests/data/ljspeech/wavs/LJ039-0079.wav|tests/data/ljspeech/wavs/LJ039-0079.npy -tests/data/ljspeech/wavs/LJ023-0045.wav|tests/data/ljspeech/wavs/LJ023-0045.npy -tests/data/ljspeech/wavs/LJ048-0234.wav|tests/data/ljspeech/wavs/LJ048-0234.npy -tests/data/ljspeech/wavs/LJ042-0085.wav|tests/data/ljspeech/wavs/LJ042-0085.npy -tests/data/ljspeech/wavs/LJ027-0089.wav|tests/data/ljspeech/wavs/LJ027-0089.npy -tests/data/ljspeech/wavs/LJ009-0079.wav|tests/data/ljspeech/wavs/LJ009-0079.npy -tests/data/ljspeech/wavs/LJ042-0142.wav|tests/data/ljspeech/wavs/LJ042-0142.npy -tests/data/ljspeech/wavs/LJ042-0058.wav|tests/data/ljspeech/wavs/LJ042-0058.npy -tests/data/ljspeech/wavs/LJ027-0065.wav|tests/data/ljspeech/wavs/LJ027-0065.npy -tests/data/ljspeech/wavs/LJ028-0012.wav|tests/data/ljspeech/wavs/LJ028-0012.npy -tests/data/ljspeech/wavs/LJ042-0021.wav|tests/data/ljspeech/wavs/LJ042-0021.npy -tests/data/ljspeech/wavs/LJ050-0212.wav|tests/data/ljspeech/wavs/LJ050-0212.npy -tests/data/ljspeech/wavs/LJ002-0104.wav|tests/data/ljspeech/wavs/LJ002-0104.npy -tests/data/ljspeech/wavs/LJ006-0085.wav|tests/data/ljspeech/wavs/LJ006-0085.npy -tests/data/ljspeech/wavs/LJ032-0164.wav|tests/data/ljspeech/wavs/LJ032-0164.npy -tests/data/ljspeech/wavs/LJ028-0070.wav|tests/data/ljspeech/wavs/LJ028-0070.npy -tests/data/ljspeech/wavs/LJ015-0126.wav|tests/data/ljspeech/wavs/LJ015-0126.npy -tests/data/ljspeech/wavs/LJ030-0090.wav|tests/data/ljspeech/wavs/LJ030-0090.npy -tests/data/ljspeech/wavs/LJ027-0108.wav|tests/data/ljspeech/wavs/LJ027-0108.npy -tests/data/ljspeech/wavs/LJ005-0295.wav|tests/data/ljspeech/wavs/LJ005-0295.npy -tests/data/ljspeech/wavs/LJ012-0082.wav|tests/data/ljspeech/wavs/LJ012-0082.npy -tests/data/ljspeech/wavs/LJ006-0070.wav|tests/data/ljspeech/wavs/LJ006-0070.npy -tests/data/ljspeech/wavs/LJ008-0128.wav|tests/data/ljspeech/wavs/LJ008-0128.npy -tests/data/ljspeech/wavs/LJ016-0029.wav|tests/data/ljspeech/wavs/LJ016-0029.npy -tests/data/ljspeech/wavs/LJ007-0022.wav|tests/data/ljspeech/wavs/LJ007-0022.npy -tests/data/ljspeech/wavs/LJ022-0126.wav|tests/data/ljspeech/wavs/LJ022-0126.npy -tests/data/ljspeech/wavs/LJ005-0298.wav|tests/data/ljspeech/wavs/LJ005-0298.npy -tests/data/ljspeech/wavs/LJ033-0212.wav|tests/data/ljspeech/wavs/LJ033-0212.npy -tests/data/ljspeech/wavs/LJ016-0101.wav|tests/data/ljspeech/wavs/LJ016-0101.npy -tests/data/ljspeech/wavs/LJ022-0023.wav|tests/data/ljspeech/wavs/LJ022-0023.npy -tests/data/ljspeech/wavs/LJ017-0032.wav|tests/data/ljspeech/wavs/LJ017-0032.npy -tests/data/ljspeech/wavs/LJ046-0107.wav|tests/data/ljspeech/wavs/LJ046-0107.npy -tests/data/ljspeech/wavs/LJ037-0077.wav|tests/data/ljspeech/wavs/LJ037-0077.npy -tests/data/ljspeech/wavs/LJ039-0172.wav|tests/data/ljspeech/wavs/LJ039-0172.npy -tests/data/ljspeech/wavs/LJ014-0219.wav|tests/data/ljspeech/wavs/LJ014-0219.npy -tests/data/ljspeech/wavs/LJ037-0039.wav|tests/data/ljspeech/wavs/LJ037-0039.npy -tests/data/ljspeech/wavs/LJ028-0114.wav|tests/data/ljspeech/wavs/LJ028-0114.npy -tests/data/ljspeech/wavs/LJ015-0309.wav|tests/data/ljspeech/wavs/LJ015-0309.npy -tests/data/ljspeech/wavs/LJ039-0167.wav|tests/data/ljspeech/wavs/LJ039-0167.npy -tests/data/ljspeech/wavs/LJ030-0236.wav|tests/data/ljspeech/wavs/LJ030-0236.npy -tests/data/ljspeech/wavs/LJ011-0239.wav|tests/data/ljspeech/wavs/LJ011-0239.npy -tests/data/ljspeech/wavs/LJ031-0066.wav|tests/data/ljspeech/wavs/LJ031-0066.npy -tests/data/ljspeech/wavs/LJ002-0072.wav|tests/data/ljspeech/wavs/LJ002-0072.npy -tests/data/ljspeech/wavs/LJ048-0023.wav|tests/data/ljspeech/wavs/LJ048-0023.npy -tests/data/ljspeech/wavs/LJ012-0013.wav|tests/data/ljspeech/wavs/LJ012-0013.npy -tests/data/ljspeech/wavs/LJ008-0265.wav|tests/data/ljspeech/wavs/LJ008-0265.npy -tests/data/ljspeech/wavs/LJ007-0014.wav|tests/data/ljspeech/wavs/LJ007-0014.npy -tests/data/ljspeech/wavs/LJ002-0190.wav|tests/data/ljspeech/wavs/LJ002-0190.npy -tests/data/ljspeech/wavs/LJ016-0294.wav|tests/data/ljspeech/wavs/LJ016-0294.npy -tests/data/ljspeech/wavs/LJ001-0089.wav|tests/data/ljspeech/wavs/LJ001-0089.npy -tests/data/ljspeech/wavs/LJ014-0073.wav|tests/data/ljspeech/wavs/LJ014-0073.npy -tests/data/ljspeech/wavs/LJ026-0026.wav|tests/data/ljspeech/wavs/LJ026-0026.npy -tests/data/ljspeech/wavs/LJ037-0040.wav|tests/data/ljspeech/wavs/LJ037-0040.npy -tests/data/ljspeech/wavs/LJ012-0010.wav|tests/data/ljspeech/wavs/LJ012-0010.npy -tests/data/ljspeech/wavs/LJ028-0238.wav|tests/data/ljspeech/wavs/LJ028-0238.npy -tests/data/ljspeech/wavs/LJ050-0192.wav|tests/data/ljspeech/wavs/LJ050-0192.npy -tests/data/ljspeech/wavs/LJ048-0022.wav|tests/data/ljspeech/wavs/LJ048-0022.npy -tests/data/ljspeech/wavs/LJ006-0138.wav|tests/data/ljspeech/wavs/LJ006-0138.npy -tests/data/ljspeech/wavs/LJ005-0199.wav|tests/data/ljspeech/wavs/LJ005-0199.npy -tests/data/ljspeech/wavs/LJ050-0218.wav|tests/data/ljspeech/wavs/LJ050-0218.npy -tests/data/ljspeech/wavs/LJ002-0064.wav|tests/data/ljspeech/wavs/LJ002-0064.npy -tests/data/ljspeech/wavs/LJ008-0249.wav|tests/data/ljspeech/wavs/LJ008-0249.npy -tests/data/ljspeech/wavs/LJ004-0184.wav|tests/data/ljspeech/wavs/LJ004-0184.npy -tests/data/ljspeech/wavs/LJ036-0004.wav|tests/data/ljspeech/wavs/LJ036-0004.npy -tests/data/ljspeech/wavs/LJ036-0044.wav|tests/data/ljspeech/wavs/LJ036-0044.npy -tests/data/ljspeech/wavs/LJ047-0144.wav|tests/data/ljspeech/wavs/LJ047-0144.npy -tests/data/ljspeech/wavs/LJ042-0197.wav|tests/data/ljspeech/wavs/LJ042-0197.npy -tests/data/ljspeech/wavs/LJ049-0225.wav|tests/data/ljspeech/wavs/LJ049-0225.npy -tests/data/ljspeech/wavs/LJ003-0159.wav|tests/data/ljspeech/wavs/LJ003-0159.npy -tests/data/ljspeech/wavs/LJ050-0119.wav|tests/data/ljspeech/wavs/LJ050-0119.npy -tests/data/ljspeech/wavs/LJ038-0108.wav|tests/data/ljspeech/wavs/LJ038-0108.npy -tests/data/ljspeech/wavs/LJ040-0139.wav|tests/data/ljspeech/wavs/LJ040-0139.npy -tests/data/ljspeech/wavs/LJ048-0157.wav|tests/data/ljspeech/wavs/LJ048-0157.npy -tests/data/ljspeech/wavs/LJ014-0275.wav|tests/data/ljspeech/wavs/LJ014-0275.npy -tests/data/ljspeech/wavs/LJ009-0018.wav|tests/data/ljspeech/wavs/LJ009-0018.npy -tests/data/ljspeech/wavs/LJ010-0137.wav|tests/data/ljspeech/wavs/LJ010-0137.npy -tests/data/ljspeech/wavs/LJ018-0099.wav|tests/data/ljspeech/wavs/LJ018-0099.npy -tests/data/ljspeech/wavs/LJ040-0119.wav|tests/data/ljspeech/wavs/LJ040-0119.npy -tests/data/ljspeech/wavs/LJ019-0322.wav|tests/data/ljspeech/wavs/LJ019-0322.npy -tests/data/ljspeech/wavs/LJ019-0065.wav|tests/data/ljspeech/wavs/LJ019-0065.npy -tests/data/ljspeech/wavs/LJ007-0113.wav|tests/data/ljspeech/wavs/LJ007-0113.npy -tests/data/ljspeech/wavs/LJ006-0044.wav|tests/data/ljspeech/wavs/LJ006-0044.npy -tests/data/ljspeech/wavs/LJ014-0307.wav|tests/data/ljspeech/wavs/LJ014-0307.npy -tests/data/ljspeech/wavs/LJ001-0150.wav|tests/data/ljspeech/wavs/LJ001-0150.npy -tests/data/ljspeech/wavs/LJ029-0047.wav|tests/data/ljspeech/wavs/LJ029-0047.npy -tests/data/ljspeech/wavs/LJ019-0397.wav|tests/data/ljspeech/wavs/LJ019-0397.npy -tests/data/ljspeech/wavs/LJ040-0054.wav|tests/data/ljspeech/wavs/LJ040-0054.npy -tests/data/ljspeech/wavs/LJ020-0088.wav|tests/data/ljspeech/wavs/LJ020-0088.npy -tests/data/ljspeech/wavs/LJ036-0056.wav|tests/data/ljspeech/wavs/LJ036-0056.npy -tests/data/ljspeech/wavs/LJ030-0178.wav|tests/data/ljspeech/wavs/LJ030-0178.npy -tests/data/ljspeech/wavs/LJ048-0264.wav|tests/data/ljspeech/wavs/LJ048-0264.npy -tests/data/ljspeech/wavs/LJ031-0182.wav|tests/data/ljspeech/wavs/LJ031-0182.npy -tests/data/ljspeech/wavs/LJ010-0249.wav|tests/data/ljspeech/wavs/LJ010-0249.npy -tests/data/ljspeech/wavs/LJ006-0183.wav|tests/data/ljspeech/wavs/LJ006-0183.npy -tests/data/ljspeech/wavs/LJ038-0237.wav|tests/data/ljspeech/wavs/LJ038-0237.npy -tests/data/ljspeech/wavs/LJ033-0042.wav|tests/data/ljspeech/wavs/LJ033-0042.npy -tests/data/ljspeech/wavs/LJ011-0035.wav|tests/data/ljspeech/wavs/LJ011-0035.npy -tests/data/ljspeech/wavs/LJ025-0098.wav|tests/data/ljspeech/wavs/LJ025-0098.npy -tests/data/ljspeech/wavs/LJ043-0151.wav|tests/data/ljspeech/wavs/LJ043-0151.npy -tests/data/ljspeech/wavs/LJ028-0311.wav|tests/data/ljspeech/wavs/LJ028-0311.npy -tests/data/ljspeech/wavs/LJ048-0224.wav|tests/data/ljspeech/wavs/LJ048-0224.npy -tests/data/ljspeech/wavs/LJ043-0006.wav|tests/data/ljspeech/wavs/LJ043-0006.npy -tests/data/ljspeech/wavs/LJ044-0181.wav|tests/data/ljspeech/wavs/LJ044-0181.npy -tests/data/ljspeech/wavs/LJ011-0034.wav|tests/data/ljspeech/wavs/LJ011-0034.npy -tests/data/ljspeech/wavs/LJ004-0122.wav|tests/data/ljspeech/wavs/LJ004-0122.npy -tests/data/ljspeech/wavs/LJ028-0314.wav|tests/data/ljspeech/wavs/LJ028-0314.npy -tests/data/ljspeech/wavs/LJ004-0018.wav|tests/data/ljspeech/wavs/LJ004-0018.npy -tests/data/ljspeech/wavs/LJ008-0297.wav|tests/data/ljspeech/wavs/LJ008-0297.npy -tests/data/ljspeech/wavs/LJ050-0127.wav|tests/data/ljspeech/wavs/LJ050-0127.npy -tests/data/ljspeech/wavs/LJ004-0076.wav|tests/data/ljspeech/wavs/LJ004-0076.npy -tests/data/ljspeech/wavs/LJ014-0239.wav|tests/data/ljspeech/wavs/LJ014-0239.npy -tests/data/ljspeech/wavs/LJ014-0292.wav|tests/data/ljspeech/wavs/LJ014-0292.npy -tests/data/ljspeech/wavs/LJ014-0046.wav|tests/data/ljspeech/wavs/LJ014-0046.npy -tests/data/ljspeech/wavs/LJ006-0197.wav|tests/data/ljspeech/wavs/LJ006-0197.npy -tests/data/ljspeech/wavs/LJ030-0134.wav|tests/data/ljspeech/wavs/LJ030-0134.npy -tests/data/ljspeech/wavs/LJ044-0157.wav|tests/data/ljspeech/wavs/LJ044-0157.npy -tests/data/ljspeech/wavs/LJ037-0062.wav|tests/data/ljspeech/wavs/LJ037-0062.npy -tests/data/ljspeech/wavs/LJ014-0094.wav|tests/data/ljspeech/wavs/LJ014-0094.npy -tests/data/ljspeech/wavs/LJ016-0319.wav|tests/data/ljspeech/wavs/LJ016-0319.npy -tests/data/ljspeech/wavs/LJ043-0098.wav|tests/data/ljspeech/wavs/LJ043-0098.npy -tests/data/ljspeech/wavs/LJ009-0116.wav|tests/data/ljspeech/wavs/LJ009-0116.npy -tests/data/ljspeech/wavs/LJ031-0084.wav|tests/data/ljspeech/wavs/LJ031-0084.npy -tests/data/ljspeech/wavs/LJ016-0338.wav|tests/data/ljspeech/wavs/LJ016-0338.npy -tests/data/ljspeech/wavs/LJ011-0218.wav|tests/data/ljspeech/wavs/LJ011-0218.npy -tests/data/ljspeech/wavs/LJ016-0263.wav|tests/data/ljspeech/wavs/LJ016-0263.npy -tests/data/ljspeech/wavs/LJ012-0196.wav|tests/data/ljspeech/wavs/LJ012-0196.npy -tests/data/ljspeech/wavs/LJ050-0145.wav|tests/data/ljspeech/wavs/LJ050-0145.npy -tests/data/ljspeech/wavs/LJ015-0051.wav|tests/data/ljspeech/wavs/LJ015-0051.npy -tests/data/ljspeech/wavs/LJ019-0133.wav|tests/data/ljspeech/wavs/LJ019-0133.npy -tests/data/ljspeech/wavs/LJ040-0145.wav|tests/data/ljspeech/wavs/LJ040-0145.npy -tests/data/ljspeech/wavs/LJ026-0098.wav|tests/data/ljspeech/wavs/LJ026-0098.npy -tests/data/ljspeech/wavs/LJ041-0183.wav|tests/data/ljspeech/wavs/LJ041-0183.npy -tests/data/ljspeech/wavs/LJ027-0092.wav|tests/data/ljspeech/wavs/LJ027-0092.npy -tests/data/ljspeech/wavs/LJ041-0174.wav|tests/data/ljspeech/wavs/LJ041-0174.npy -tests/data/ljspeech/wavs/LJ037-0091.wav|tests/data/ljspeech/wavs/LJ037-0091.npy -tests/data/ljspeech/wavs/LJ018-0326.wav|tests/data/ljspeech/wavs/LJ018-0326.npy -tests/data/ljspeech/wavs/LJ013-0041.wav|tests/data/ljspeech/wavs/LJ013-0041.npy -tests/data/ljspeech/wavs/LJ049-0176.wav|tests/data/ljspeech/wavs/LJ049-0176.npy -tests/data/ljspeech/wavs/LJ042-0038.wav|tests/data/ljspeech/wavs/LJ042-0038.npy -tests/data/ljspeech/wavs/LJ013-0260.wav|tests/data/ljspeech/wavs/LJ013-0260.npy -tests/data/ljspeech/wavs/LJ043-0002.wav|tests/data/ljspeech/wavs/LJ043-0002.npy -tests/data/ljspeech/wavs/LJ019-0112.wav|tests/data/ljspeech/wavs/LJ019-0112.npy -tests/data/ljspeech/wavs/LJ019-0031.wav|tests/data/ljspeech/wavs/LJ019-0031.npy -tests/data/ljspeech/wavs/LJ002-0086.wav|tests/data/ljspeech/wavs/LJ002-0086.npy -tests/data/ljspeech/wavs/LJ012-0060.wav|tests/data/ljspeech/wavs/LJ012-0060.npy -tests/data/ljspeech/wavs/LJ012-0146.wav|tests/data/ljspeech/wavs/LJ012-0146.npy -tests/data/ljspeech/wavs/LJ049-0134.wav|tests/data/ljspeech/wavs/LJ049-0134.npy -tests/data/ljspeech/wavs/LJ012-0104.wav|tests/data/ljspeech/wavs/LJ012-0104.npy -tests/data/ljspeech/wavs/LJ008-0064.wav|tests/data/ljspeech/wavs/LJ008-0064.npy -tests/data/ljspeech/wavs/LJ027-0160.wav|tests/data/ljspeech/wavs/LJ027-0160.npy -tests/data/ljspeech/wavs/LJ008-0072.wav|tests/data/ljspeech/wavs/LJ008-0072.npy -tests/data/ljspeech/wavs/LJ016-0240.wav|tests/data/ljspeech/wavs/LJ016-0240.npy -tests/data/ljspeech/wavs/LJ043-0163.wav|tests/data/ljspeech/wavs/LJ043-0163.npy -tests/data/ljspeech/wavs/LJ047-0197.wav|tests/data/ljspeech/wavs/LJ047-0197.npy -tests/data/ljspeech/wavs/LJ037-0145.wav|tests/data/ljspeech/wavs/LJ037-0145.npy -tests/data/ljspeech/wavs/LJ006-0128.wav|tests/data/ljspeech/wavs/LJ006-0128.npy -tests/data/ljspeech/wavs/LJ003-0312.wav|tests/data/ljspeech/wavs/LJ003-0312.npy -tests/data/ljspeech/wavs/LJ032-0162.wav|tests/data/ljspeech/wavs/LJ032-0162.npy -tests/data/ljspeech/wavs/LJ014-0334.wav|tests/data/ljspeech/wavs/LJ014-0334.npy -tests/data/ljspeech/wavs/LJ034-0106.wav|tests/data/ljspeech/wavs/LJ034-0106.npy -tests/data/ljspeech/wavs/LJ038-0158.wav|tests/data/ljspeech/wavs/LJ038-0158.npy -tests/data/ljspeech/wavs/LJ048-0131.wav|tests/data/ljspeech/wavs/LJ048-0131.npy -tests/data/ljspeech/wavs/LJ045-0214.wav|tests/data/ljspeech/wavs/LJ045-0214.npy -tests/data/ljspeech/wavs/LJ045-0095.wav|tests/data/ljspeech/wavs/LJ045-0095.npy -tests/data/ljspeech/wavs/LJ044-0223.wav|tests/data/ljspeech/wavs/LJ044-0223.npy -tests/data/ljspeech/wavs/LJ046-0141.wav|tests/data/ljspeech/wavs/LJ046-0141.npy -tests/data/ljspeech/wavs/LJ031-0103.wav|tests/data/ljspeech/wavs/LJ031-0103.npy -tests/data/ljspeech/wavs/LJ001-0023.wav|tests/data/ljspeech/wavs/LJ001-0023.npy -tests/data/ljspeech/wavs/LJ048-0102.wav|tests/data/ljspeech/wavs/LJ048-0102.npy -tests/data/ljspeech/wavs/LJ004-0244.wav|tests/data/ljspeech/wavs/LJ004-0244.npy -tests/data/ljspeech/wavs/LJ004-0209.wav|tests/data/ljspeech/wavs/LJ004-0209.npy -tests/data/ljspeech/wavs/LJ019-0377.wav|tests/data/ljspeech/wavs/LJ019-0377.npy -tests/data/ljspeech/wavs/LJ042-0002.wav|tests/data/ljspeech/wavs/LJ042-0002.npy -tests/data/ljspeech/wavs/LJ038-0095.wav|tests/data/ljspeech/wavs/LJ038-0095.npy -tests/data/ljspeech/wavs/LJ040-0134.wav|tests/data/ljspeech/wavs/LJ040-0134.npy -tests/data/ljspeech/wavs/LJ018-0028.wav|tests/data/ljspeech/wavs/LJ018-0028.npy -tests/data/ljspeech/wavs/LJ028-0404.wav|tests/data/ljspeech/wavs/LJ028-0404.npy -tests/data/ljspeech/wavs/LJ006-0212.wav|tests/data/ljspeech/wavs/LJ006-0212.npy -tests/data/ljspeech/wavs/LJ030-0163.wav|tests/data/ljspeech/wavs/LJ030-0163.npy -tests/data/ljspeech/wavs/LJ017-0031.wav|tests/data/ljspeech/wavs/LJ017-0031.npy -tests/data/ljspeech/wavs/LJ049-0103.wav|tests/data/ljspeech/wavs/LJ049-0103.npy -tests/data/ljspeech/wavs/LJ031-0049.wav|tests/data/ljspeech/wavs/LJ031-0049.npy -tests/data/ljspeech/wavs/LJ032-0258.wav|tests/data/ljspeech/wavs/LJ032-0258.npy -tests/data/ljspeech/wavs/LJ003-0215.wav|tests/data/ljspeech/wavs/LJ003-0215.npy -tests/data/ljspeech/wavs/LJ018-0017.wav|tests/data/ljspeech/wavs/LJ018-0017.npy -tests/data/ljspeech/wavs/LJ009-0241.wav|tests/data/ljspeech/wavs/LJ009-0241.npy -tests/data/ljspeech/wavs/LJ045-0106.wav|tests/data/ljspeech/wavs/LJ045-0106.npy -tests/data/ljspeech/wavs/LJ027-0041.wav|tests/data/ljspeech/wavs/LJ027-0041.npy -tests/data/ljspeech/wavs/LJ027-0083.wav|tests/data/ljspeech/wavs/LJ027-0083.npy -tests/data/ljspeech/wavs/LJ050-0198.wav|tests/data/ljspeech/wavs/LJ050-0198.npy -tests/data/ljspeech/wavs/LJ004-0087.wav|tests/data/ljspeech/wavs/LJ004-0087.npy -tests/data/ljspeech/wavs/LJ029-0157.wav|tests/data/ljspeech/wavs/LJ029-0157.npy -tests/data/ljspeech/wavs/LJ002-0107.wav|tests/data/ljspeech/wavs/LJ002-0107.npy -tests/data/ljspeech/wavs/LJ040-0205.wav|tests/data/ljspeech/wavs/LJ040-0205.npy -tests/data/ljspeech/wavs/LJ027-0072.wav|tests/data/ljspeech/wavs/LJ027-0072.npy -tests/data/ljspeech/wavs/LJ019-0361.wav|tests/data/ljspeech/wavs/LJ019-0361.npy -tests/data/ljspeech/wavs/LJ040-0126.wav|tests/data/ljspeech/wavs/LJ040-0126.npy -tests/data/ljspeech/wavs/LJ041-0017.wav|tests/data/ljspeech/wavs/LJ041-0017.npy -tests/data/ljspeech/wavs/LJ050-0120.wav|tests/data/ljspeech/wavs/LJ050-0120.npy -tests/data/ljspeech/wavs/LJ034-0198.wav|tests/data/ljspeech/wavs/LJ034-0198.npy -tests/data/ljspeech/wavs/LJ013-0092.wav|tests/data/ljspeech/wavs/LJ013-0092.npy -tests/data/ljspeech/wavs/LJ045-0203.wav|tests/data/ljspeech/wavs/LJ045-0203.npy -tests/data/ljspeech/wavs/LJ040-0010.wav|tests/data/ljspeech/wavs/LJ040-0010.npy -tests/data/ljspeech/wavs/LJ006-0019.wav|tests/data/ljspeech/wavs/LJ006-0019.npy -tests/data/ljspeech/wavs/LJ028-0466.wav|tests/data/ljspeech/wavs/LJ028-0466.npy -tests/data/ljspeech/wavs/LJ004-0227.wav|tests/data/ljspeech/wavs/LJ004-0227.npy -tests/data/ljspeech/wavs/LJ002-0085.wav|tests/data/ljspeech/wavs/LJ002-0085.npy -tests/data/ljspeech/wavs/LJ028-0426.wav|tests/data/ljspeech/wavs/LJ028-0426.npy -tests/data/ljspeech/wavs/LJ018-0260.wav|tests/data/ljspeech/wavs/LJ018-0260.npy -tests/data/ljspeech/wavs/LJ006-0204.wav|tests/data/ljspeech/wavs/LJ006-0204.npy -tests/data/ljspeech/wavs/LJ011-0170.wav|tests/data/ljspeech/wavs/LJ011-0170.npy -tests/data/ljspeech/wavs/LJ021-0138.wav|tests/data/ljspeech/wavs/LJ021-0138.npy -tests/data/ljspeech/wavs/LJ043-0172.wav|tests/data/ljspeech/wavs/LJ043-0172.npy -tests/data/ljspeech/wavs/LJ044-0136.wav|tests/data/ljspeech/wavs/LJ044-0136.npy -tests/data/ljspeech/wavs/LJ001-0100.wav|tests/data/ljspeech/wavs/LJ001-0100.npy -tests/data/ljspeech/wavs/LJ037-0173.wav|tests/data/ljspeech/wavs/LJ037-0173.npy -tests/data/ljspeech/wavs/LJ032-0007.wav|tests/data/ljspeech/wavs/LJ032-0007.npy -tests/data/ljspeech/wavs/LJ013-0119.wav|tests/data/ljspeech/wavs/LJ013-0119.npy -tests/data/ljspeech/wavs/LJ008-0238.wav|tests/data/ljspeech/wavs/LJ008-0238.npy -tests/data/ljspeech/wavs/LJ017-0206.wav|tests/data/ljspeech/wavs/LJ017-0206.npy -tests/data/ljspeech/wavs/LJ013-0117.wav|tests/data/ljspeech/wavs/LJ013-0117.npy -tests/data/ljspeech/wavs/LJ009-0237.wav|tests/data/ljspeech/wavs/LJ009-0237.npy -tests/data/ljspeech/wavs/LJ038-0012.wav|tests/data/ljspeech/wavs/LJ038-0012.npy -tests/data/ljspeech/wavs/LJ030-0138.wav|tests/data/ljspeech/wavs/LJ030-0138.npy -tests/data/ljspeech/wavs/LJ042-0150.wav|tests/data/ljspeech/wavs/LJ042-0150.npy -tests/data/ljspeech/wavs/LJ032-0141.wav|tests/data/ljspeech/wavs/LJ032-0141.npy -tests/data/ljspeech/wavs/LJ038-0215.wav|tests/data/ljspeech/wavs/LJ038-0215.npy -tests/data/ljspeech/wavs/LJ012-0127.wav|tests/data/ljspeech/wavs/LJ012-0127.npy -tests/data/ljspeech/wavs/LJ038-0244.wav|tests/data/ljspeech/wavs/LJ038-0244.npy -tests/data/ljspeech/wavs/LJ042-0084.wav|tests/data/ljspeech/wavs/LJ042-0084.npy -tests/data/ljspeech/wavs/LJ018-0039.wav|tests/data/ljspeech/wavs/LJ018-0039.npy -tests/data/ljspeech/wavs/LJ027-0149.wav|tests/data/ljspeech/wavs/LJ027-0149.npy -tests/data/ljspeech/wavs/LJ015-0269.wav|tests/data/ljspeech/wavs/LJ015-0269.npy -tests/data/ljspeech/wavs/LJ018-0338.wav|tests/data/ljspeech/wavs/LJ018-0338.npy -tests/data/ljspeech/wavs/LJ007-0155.wav|tests/data/ljspeech/wavs/LJ007-0155.npy -tests/data/ljspeech/wavs/LJ049-0086.wav|tests/data/ljspeech/wavs/LJ049-0086.npy -tests/data/ljspeech/wavs/LJ031-0163.wav|tests/data/ljspeech/wavs/LJ031-0163.npy -tests/data/ljspeech/wavs/LJ013-0096.wav|tests/data/ljspeech/wavs/LJ013-0096.npy -tests/data/ljspeech/wavs/LJ019-0072.wav|tests/data/ljspeech/wavs/LJ019-0072.npy -tests/data/ljspeech/wavs/LJ010-0059.wav|tests/data/ljspeech/wavs/LJ010-0059.npy -tests/data/ljspeech/wavs/LJ018-0089.wav|tests/data/ljspeech/wavs/LJ018-0089.npy -tests/data/ljspeech/wavs/LJ018-0333.wav|tests/data/ljspeech/wavs/LJ018-0333.npy -tests/data/ljspeech/wavs/LJ018-0372.wav|tests/data/ljspeech/wavs/LJ018-0372.npy -tests/data/ljspeech/wavs/LJ019-0156.wav|tests/data/ljspeech/wavs/LJ019-0156.npy -tests/data/ljspeech/wavs/LJ019-0114.wav|tests/data/ljspeech/wavs/LJ019-0114.npy -tests/data/ljspeech/wavs/LJ009-0232.wav|tests/data/ljspeech/wavs/LJ009-0232.npy -tests/data/ljspeech/wavs/LJ003-0315.wav|tests/data/ljspeech/wavs/LJ003-0315.npy -tests/data/ljspeech/wavs/LJ008-0282.wav|tests/data/ljspeech/wavs/LJ008-0282.npy -tests/data/ljspeech/wavs/LJ008-0124.wav|tests/data/ljspeech/wavs/LJ008-0124.npy -tests/data/ljspeech/wavs/LJ015-0080.wav|tests/data/ljspeech/wavs/LJ015-0080.npy -tests/data/ljspeech/wavs/LJ040-0113.wav|tests/data/ljspeech/wavs/LJ040-0113.npy -tests/data/ljspeech/wavs/LJ004-0171.wav|tests/data/ljspeech/wavs/LJ004-0171.npy -tests/data/ljspeech/wavs/LJ009-0230.wav|tests/data/ljspeech/wavs/LJ009-0230.npy -tests/data/ljspeech/wavs/LJ038-0306.wav|tests/data/ljspeech/wavs/LJ038-0306.npy -tests/data/ljspeech/wavs/LJ016-0226.wav|tests/data/ljspeech/wavs/LJ016-0226.npy -tests/data/ljspeech/wavs/LJ009-0179.wav|tests/data/ljspeech/wavs/LJ009-0179.npy -tests/data/ljspeech/wavs/LJ002-0268.wav|tests/data/ljspeech/wavs/LJ002-0268.npy -tests/data/ljspeech/wavs/LJ005-0225.wav|tests/data/ljspeech/wavs/LJ005-0225.npy -tests/data/ljspeech/wavs/LJ009-0176.wav|tests/data/ljspeech/wavs/LJ009-0176.npy -tests/data/ljspeech/wavs/LJ025-0166.wav|tests/data/ljspeech/wavs/LJ025-0166.npy -tests/data/ljspeech/wavs/LJ031-0018.wav|tests/data/ljspeech/wavs/LJ031-0018.npy -tests/data/ljspeech/wavs/LJ019-0121.wav|tests/data/ljspeech/wavs/LJ019-0121.npy -tests/data/ljspeech/wavs/LJ031-0017.wav|tests/data/ljspeech/wavs/LJ031-0017.npy -tests/data/ljspeech/wavs/LJ016-0445.wav|tests/data/ljspeech/wavs/LJ016-0445.npy -tests/data/ljspeech/wavs/LJ004-0155.wav|tests/data/ljspeech/wavs/LJ004-0155.npy -tests/data/ljspeech/wavs/LJ045-0185.wav|tests/data/ljspeech/wavs/LJ045-0185.npy -tests/data/ljspeech/wavs/LJ028-0507.wav|tests/data/ljspeech/wavs/LJ028-0507.npy -tests/data/ljspeech/wavs/LJ031-0145.wav|tests/data/ljspeech/wavs/LJ031-0145.npy -tests/data/ljspeech/wavs/LJ005-0113.wav|tests/data/ljspeech/wavs/LJ005-0113.npy -tests/data/ljspeech/wavs/LJ007-0054.wav|tests/data/ljspeech/wavs/LJ007-0054.npy -tests/data/ljspeech/wavs/LJ048-0229.wav|tests/data/ljspeech/wavs/LJ048-0229.npy -tests/data/ljspeech/wavs/LJ018-0090.wav|tests/data/ljspeech/wavs/LJ018-0090.npy -tests/data/ljspeech/wavs/LJ003-0274.wav|tests/data/ljspeech/wavs/LJ003-0274.npy -tests/data/ljspeech/wavs/LJ009-0257.wav|tests/data/ljspeech/wavs/LJ009-0257.npy -tests/data/ljspeech/wavs/LJ007-0116.wav|tests/data/ljspeech/wavs/LJ007-0116.npy -tests/data/ljspeech/wavs/LJ013-0061.wav|tests/data/ljspeech/wavs/LJ013-0061.npy -tests/data/ljspeech/wavs/LJ025-0015.wav|tests/data/ljspeech/wavs/LJ025-0015.npy -tests/data/ljspeech/wavs/LJ004-0102.wav|tests/data/ljspeech/wavs/LJ004-0102.npy -tests/data/ljspeech/wavs/LJ048-0130.wav|tests/data/ljspeech/wavs/LJ048-0130.npy -tests/data/ljspeech/wavs/LJ042-0206.wav|tests/data/ljspeech/wavs/LJ042-0206.npy -tests/data/ljspeech/wavs/LJ033-0114.wav|tests/data/ljspeech/wavs/LJ033-0114.npy -tests/data/ljspeech/wavs/LJ034-0099.wav|tests/data/ljspeech/wavs/LJ034-0099.npy -tests/data/ljspeech/wavs/LJ001-0066.wav|tests/data/ljspeech/wavs/LJ001-0066.npy -tests/data/ljspeech/wavs/LJ004-0183.wav|tests/data/ljspeech/wavs/LJ004-0183.npy -tests/data/ljspeech/wavs/LJ034-0177.wav|tests/data/ljspeech/wavs/LJ034-0177.npy -tests/data/ljspeech/wavs/LJ038-0293.wav|tests/data/ljspeech/wavs/LJ038-0293.npy -tests/data/ljspeech/wavs/LJ021-0123.wav|tests/data/ljspeech/wavs/LJ021-0123.npy -tests/data/ljspeech/wavs/LJ032-0064.wav|tests/data/ljspeech/wavs/LJ032-0064.npy -tests/data/ljspeech/wavs/LJ047-0184.wav|tests/data/ljspeech/wavs/LJ047-0184.npy -tests/data/ljspeech/wavs/LJ006-0165.wav|tests/data/ljspeech/wavs/LJ006-0165.npy -tests/data/ljspeech/wavs/LJ005-0051.wav|tests/data/ljspeech/wavs/LJ005-0051.npy -tests/data/ljspeech/wavs/LJ037-0245.wav|tests/data/ljspeech/wavs/LJ037-0245.npy -tests/data/ljspeech/wavs/LJ013-0153.wav|tests/data/ljspeech/wavs/LJ013-0153.npy -tests/data/ljspeech/wavs/LJ049-0066.wav|tests/data/ljspeech/wavs/LJ049-0066.npy -tests/data/ljspeech/wavs/LJ012-0005.wav|tests/data/ljspeech/wavs/LJ012-0005.npy -tests/data/ljspeech/wavs/LJ025-0032.wav|tests/data/ljspeech/wavs/LJ025-0032.npy -tests/data/ljspeech/wavs/LJ029-0015.wav|tests/data/ljspeech/wavs/LJ029-0015.npy -tests/data/ljspeech/wavs/LJ039-0017.wav|tests/data/ljspeech/wavs/LJ039-0017.npy -tests/data/ljspeech/wavs/LJ045-0164.wav|tests/data/ljspeech/wavs/LJ045-0164.npy -tests/data/ljspeech/wavs/LJ016-0402.wav|tests/data/ljspeech/wavs/LJ016-0402.npy -tests/data/ljspeech/wavs/LJ010-0112.wav|tests/data/ljspeech/wavs/LJ010-0112.npy -tests/data/ljspeech/wavs/LJ049-0125.wav|tests/data/ljspeech/wavs/LJ049-0125.npy -tests/data/ljspeech/wavs/LJ046-0220.wav|tests/data/ljspeech/wavs/LJ046-0220.npy -tests/data/ljspeech/wavs/LJ010-0145.wav|tests/data/ljspeech/wavs/LJ010-0145.npy -tests/data/ljspeech/wavs/LJ042-0217.wav|tests/data/ljspeech/wavs/LJ042-0217.npy -tests/data/ljspeech/wavs/LJ039-0059.wav|tests/data/ljspeech/wavs/LJ039-0059.npy -tests/data/ljspeech/wavs/LJ019-0348.wav|tests/data/ljspeech/wavs/LJ019-0348.npy -tests/data/ljspeech/wavs/LJ018-0380.wav|tests/data/ljspeech/wavs/LJ018-0380.npy -tests/data/ljspeech/wavs/LJ031-0093.wav|tests/data/ljspeech/wavs/LJ031-0093.npy -tests/data/ljspeech/wavs/LJ012-0182.wav|tests/data/ljspeech/wavs/LJ012-0182.npy -tests/data/ljspeech/wavs/LJ045-0246.wav|tests/data/ljspeech/wavs/LJ045-0246.npy -tests/data/ljspeech/wavs/LJ012-0183.wav|tests/data/ljspeech/wavs/LJ012-0183.npy -tests/data/ljspeech/wavs/LJ039-0234.wav|tests/data/ljspeech/wavs/LJ039-0234.npy -tests/data/ljspeech/wavs/LJ006-0032.wav|tests/data/ljspeech/wavs/LJ006-0032.npy -tests/data/ljspeech/wavs/LJ041-0161.wav|tests/data/ljspeech/wavs/LJ041-0161.npy -tests/data/ljspeech/wavs/LJ019-0346.wav|tests/data/ljspeech/wavs/LJ019-0346.npy -tests/data/ljspeech/wavs/LJ049-0096.wav|tests/data/ljspeech/wavs/LJ049-0096.npy -tests/data/ljspeech/wavs/LJ012-0209.wav|tests/data/ljspeech/wavs/LJ012-0209.npy -tests/data/ljspeech/wavs/LJ033-0169.wav|tests/data/ljspeech/wavs/LJ033-0169.npy -tests/data/ljspeech/wavs/LJ038-0023.wav|tests/data/ljspeech/wavs/LJ038-0023.npy -tests/data/ljspeech/wavs/LJ002-0030.wav|tests/data/ljspeech/wavs/LJ002-0030.npy -tests/data/ljspeech/wavs/LJ043-0026.wav|tests/data/ljspeech/wavs/LJ043-0026.npy -tests/data/ljspeech/wavs/LJ031-0123.wav|tests/data/ljspeech/wavs/LJ031-0123.npy -tests/data/ljspeech/wavs/LJ002-0031.wav|tests/data/ljspeech/wavs/LJ002-0031.npy -tests/data/ljspeech/wavs/LJ033-0045.wav|tests/data/ljspeech/wavs/LJ033-0045.npy -tests/data/ljspeech/wavs/LJ002-0028.wav|tests/data/ljspeech/wavs/LJ002-0028.npy -tests/data/ljspeech/wavs/LJ043-0011.wav|tests/data/ljspeech/wavs/LJ043-0011.npy -tests/data/ljspeech/wavs/LJ046-0069.wav|tests/data/ljspeech/wavs/LJ046-0069.npy -tests/data/ljspeech/wavs/LJ018-0176.wav|tests/data/ljspeech/wavs/LJ018-0176.npy -tests/data/ljspeech/wavs/LJ050-0099.wav|tests/data/ljspeech/wavs/LJ050-0099.npy -tests/data/ljspeech/wavs/LJ046-0081.wav|tests/data/ljspeech/wavs/LJ046-0081.npy -tests/data/ljspeech/wavs/LJ001-0162.wav|tests/data/ljspeech/wavs/LJ001-0162.npy -tests/data/ljspeech/wavs/LJ043-0008.wav|tests/data/ljspeech/wavs/LJ043-0008.npy -tests/data/ljspeech/wavs/LJ032-0137.wav|tests/data/ljspeech/wavs/LJ032-0137.npy -tests/data/ljspeech/wavs/LJ009-0022.wav|tests/data/ljspeech/wavs/LJ009-0022.npy -tests/data/ljspeech/wavs/LJ028-0192.wav|tests/data/ljspeech/wavs/LJ028-0192.npy -tests/data/ljspeech/wavs/LJ001-0184.wav|tests/data/ljspeech/wavs/LJ001-0184.npy -tests/data/ljspeech/wavs/LJ008-0044.wav|tests/data/ljspeech/wavs/LJ008-0044.npy -tests/data/ljspeech/wavs/LJ026-0036.wav|tests/data/ljspeech/wavs/LJ026-0036.npy -tests/data/ljspeech/wavs/LJ050-0104.wav|tests/data/ljspeech/wavs/LJ050-0104.npy -tests/data/ljspeech/wavs/LJ006-0148.wav|tests/data/ljspeech/wavs/LJ006-0148.npy -tests/data/ljspeech/wavs/LJ007-0019.wav|tests/data/ljspeech/wavs/LJ007-0019.npy -tests/data/ljspeech/wavs/LJ028-0419.wav|tests/data/ljspeech/wavs/LJ028-0419.npy -tests/data/ljspeech/wavs/LJ007-0135.wav|tests/data/ljspeech/wavs/LJ007-0135.npy -tests/data/ljspeech/wavs/LJ048-0163.wav|tests/data/ljspeech/wavs/LJ048-0163.npy -tests/data/ljspeech/wavs/LJ001-0133.wav|tests/data/ljspeech/wavs/LJ001-0133.npy -tests/data/ljspeech/wavs/LJ049-0121.wav|tests/data/ljspeech/wavs/LJ049-0121.npy -tests/data/ljspeech/wavs/LJ028-0302.wav|tests/data/ljspeech/wavs/LJ028-0302.npy -tests/data/ljspeech/wavs/LJ028-0312.wav|tests/data/ljspeech/wavs/LJ028-0312.npy -tests/data/ljspeech/wavs/LJ028-0437.wav|tests/data/ljspeech/wavs/LJ028-0437.npy -tests/data/ljspeech/wavs/LJ010-0067.wav|tests/data/ljspeech/wavs/LJ010-0067.npy -tests/data/ljspeech/wavs/LJ029-0012.wav|tests/data/ljspeech/wavs/LJ029-0012.npy -tests/data/ljspeech/wavs/LJ022-0170.wav|tests/data/ljspeech/wavs/LJ022-0170.npy -tests/data/ljspeech/wavs/LJ003-0031.wav|tests/data/ljspeech/wavs/LJ003-0031.npy -tests/data/ljspeech/wavs/LJ045-0211.wav|tests/data/ljspeech/wavs/LJ045-0211.npy -tests/data/ljspeech/wavs/LJ021-0061.wav|tests/data/ljspeech/wavs/LJ021-0061.npy -tests/data/ljspeech/wavs/LJ040-0221.wav|tests/data/ljspeech/wavs/LJ040-0221.npy -tests/data/ljspeech/wavs/LJ015-0302.wav|tests/data/ljspeech/wavs/LJ015-0302.npy -tests/data/ljspeech/wavs/LJ047-0238.wav|tests/data/ljspeech/wavs/LJ047-0238.npy -tests/data/ljspeech/wavs/LJ050-0042.wav|tests/data/ljspeech/wavs/LJ050-0042.npy -tests/data/ljspeech/wavs/LJ038-0007.wav|tests/data/ljspeech/wavs/LJ038-0007.npy -tests/data/ljspeech/wavs/LJ022-0190.wav|tests/data/ljspeech/wavs/LJ022-0190.npy -tests/data/ljspeech/wavs/LJ020-0081.wav|tests/data/ljspeech/wavs/LJ020-0081.npy -tests/data/ljspeech/wavs/LJ043-0182.wav|tests/data/ljspeech/wavs/LJ043-0182.npy -tests/data/ljspeech/wavs/LJ028-0235.wav|tests/data/ljspeech/wavs/LJ028-0235.npy -tests/data/ljspeech/wavs/LJ048-0151.wav|tests/data/ljspeech/wavs/LJ048-0151.npy -tests/data/ljspeech/wavs/LJ035-0013.wav|tests/data/ljspeech/wavs/LJ035-0013.npy -tests/data/ljspeech/wavs/LJ005-0237.wav|tests/data/ljspeech/wavs/LJ005-0237.npy -tests/data/ljspeech/wavs/LJ010-0062.wav|tests/data/ljspeech/wavs/LJ010-0062.npy -tests/data/ljspeech/wavs/LJ021-0206.wav|tests/data/ljspeech/wavs/LJ021-0206.npy -tests/data/ljspeech/wavs/LJ028-0173.wav|tests/data/ljspeech/wavs/LJ028-0173.npy -tests/data/ljspeech/wavs/LJ039-0126.wav|tests/data/ljspeech/wavs/LJ039-0126.npy -tests/data/ljspeech/wavs/LJ002-0305.wav|tests/data/ljspeech/wavs/LJ002-0305.npy -tests/data/ljspeech/wavs/LJ028-0329.wav|tests/data/ljspeech/wavs/LJ028-0329.npy -tests/data/ljspeech/wavs/LJ029-0044.wav|tests/data/ljspeech/wavs/LJ029-0044.npy -tests/data/ljspeech/wavs/LJ036-0109.wav|tests/data/ljspeech/wavs/LJ036-0109.npy -tests/data/ljspeech/wavs/LJ040-0184.wav|tests/data/ljspeech/wavs/LJ040-0184.npy -tests/data/ljspeech/wavs/LJ006-0219.wav|tests/data/ljspeech/wavs/LJ006-0219.npy -tests/data/ljspeech/wavs/LJ028-0482.wav|tests/data/ljspeech/wavs/LJ028-0482.npy -tests/data/ljspeech/wavs/LJ002-0329.wav|tests/data/ljspeech/wavs/LJ002-0329.npy -tests/data/ljspeech/wavs/LJ034-0186.wav|tests/data/ljspeech/wavs/LJ034-0186.npy -tests/data/ljspeech/wavs/LJ040-0195.wav|tests/data/ljspeech/wavs/LJ040-0195.npy -tests/data/ljspeech/wavs/LJ034-0209.wav|tests/data/ljspeech/wavs/LJ034-0209.npy -tests/data/ljspeech/wavs/LJ040-0042.wav|tests/data/ljspeech/wavs/LJ040-0042.npy -tests/data/ljspeech/wavs/LJ035-0186.wav|tests/data/ljspeech/wavs/LJ035-0186.npy -tests/data/ljspeech/wavs/LJ045-0128.wav|tests/data/ljspeech/wavs/LJ045-0128.npy -tests/data/ljspeech/wavs/LJ036-0040.wav|tests/data/ljspeech/wavs/LJ036-0040.npy -tests/data/ljspeech/wavs/LJ045-0046.wav|tests/data/ljspeech/wavs/LJ045-0046.npy -tests/data/ljspeech/wavs/LJ018-0169.wav|tests/data/ljspeech/wavs/LJ018-0169.npy -tests/data/ljspeech/wavs/LJ022-0058.wav|tests/data/ljspeech/wavs/LJ022-0058.npy -tests/data/ljspeech/wavs/LJ044-0141.wav|tests/data/ljspeech/wavs/LJ044-0141.npy -tests/data/ljspeech/wavs/LJ036-0037.wav|tests/data/ljspeech/wavs/LJ036-0037.npy -tests/data/ljspeech/wavs/LJ049-0203.wav|tests/data/ljspeech/wavs/LJ049-0203.npy -tests/data/ljspeech/wavs/LJ036-0055.wav|tests/data/ljspeech/wavs/LJ036-0055.npy -tests/data/ljspeech/wavs/LJ049-0005.wav|tests/data/ljspeech/wavs/LJ049-0005.npy -tests/data/ljspeech/wavs/LJ019-0187.wav|tests/data/ljspeech/wavs/LJ019-0187.npy -tests/data/ljspeech/wavs/LJ012-0284.wav|tests/data/ljspeech/wavs/LJ012-0284.npy -tests/data/ljspeech/wavs/LJ016-0234.wav|tests/data/ljspeech/wavs/LJ016-0234.npy -tests/data/ljspeech/wavs/LJ016-0216.wav|tests/data/ljspeech/wavs/LJ016-0216.npy -tests/data/ljspeech/wavs/LJ049-0070.wav|tests/data/ljspeech/wavs/LJ049-0070.npy -tests/data/ljspeech/wavs/LJ044-0116.wav|tests/data/ljspeech/wavs/LJ044-0116.npy -tests/data/ljspeech/wavs/LJ040-0004.wav|tests/data/ljspeech/wavs/LJ040-0004.npy -tests/data/ljspeech/wavs/LJ016-0373.wav|tests/data/ljspeech/wavs/LJ016-0373.npy -tests/data/ljspeech/wavs/LJ037-0131.wav|tests/data/ljspeech/wavs/LJ037-0131.npy -tests/data/ljspeech/wavs/LJ019-0226.wav|tests/data/ljspeech/wavs/LJ019-0226.npy -tests/data/ljspeech/wavs/LJ036-0128.wav|tests/data/ljspeech/wavs/LJ036-0128.npy -tests/data/ljspeech/wavs/LJ009-0166.wav|tests/data/ljspeech/wavs/LJ009-0166.npy -tests/data/ljspeech/wavs/LJ018-0341.wav|tests/data/ljspeech/wavs/LJ018-0341.npy -tests/data/ljspeech/wavs/LJ036-0101.wav|tests/data/ljspeech/wavs/LJ036-0101.npy -tests/data/ljspeech/wavs/LJ019-0211.wav|tests/data/ljspeech/wavs/LJ019-0211.npy -tests/data/ljspeech/wavs/LJ049-0020.wav|tests/data/ljspeech/wavs/LJ049-0020.npy -tests/data/ljspeech/wavs/LJ016-0311.wav|tests/data/ljspeech/wavs/LJ016-0311.npy -tests/data/ljspeech/wavs/LJ040-0141.wav|tests/data/ljspeech/wavs/LJ040-0141.npy -tests/data/ljspeech/wavs/LJ049-0082.wav|tests/data/ljspeech/wavs/LJ049-0082.npy -tests/data/ljspeech/wavs/LJ037-0167.wav|tests/data/ljspeech/wavs/LJ037-0167.npy -tests/data/ljspeech/wavs/LJ004-0152.wav|tests/data/ljspeech/wavs/LJ004-0152.npy -tests/data/ljspeech/wavs/LJ027-0027.wav|tests/data/ljspeech/wavs/LJ027-0027.npy -tests/data/ljspeech/wavs/LJ044-0214.wav|tests/data/ljspeech/wavs/LJ044-0214.npy -tests/data/ljspeech/wavs/LJ002-0285.wav|tests/data/ljspeech/wavs/LJ002-0285.npy -tests/data/ljspeech/wavs/LJ041-0180.wav|tests/data/ljspeech/wavs/LJ041-0180.npy -tests/data/ljspeech/wavs/LJ043-0137.wav|tests/data/ljspeech/wavs/LJ043-0137.npy -tests/data/ljspeech/wavs/LJ046-0240.wav|tests/data/ljspeech/wavs/LJ046-0240.npy -tests/data/ljspeech/wavs/LJ048-0043.wav|tests/data/ljspeech/wavs/LJ048-0043.npy -tests/data/ljspeech/wavs/LJ033-0140.wav|tests/data/ljspeech/wavs/LJ033-0140.npy -tests/data/ljspeech/wavs/LJ026-0157.wav|tests/data/ljspeech/wavs/LJ026-0157.npy -tests/data/ljspeech/wavs/LJ008-0280.wav|tests/data/ljspeech/wavs/LJ008-0280.npy -tests/data/ljspeech/wavs/LJ014-0323.wav|tests/data/ljspeech/wavs/LJ014-0323.npy -tests/data/ljspeech/wavs/LJ009-0042.wav|tests/data/ljspeech/wavs/LJ009-0042.npy -tests/data/ljspeech/wavs/LJ013-0131.wav|tests/data/ljspeech/wavs/LJ013-0131.npy -tests/data/ljspeech/wavs/LJ046-0013.wav|tests/data/ljspeech/wavs/LJ046-0013.npy -tests/data/ljspeech/wavs/LJ028-0035.wav|tests/data/ljspeech/wavs/LJ028-0035.npy -tests/data/ljspeech/wavs/LJ008-0181.wav|tests/data/ljspeech/wavs/LJ008-0181.npy -tests/data/ljspeech/wavs/LJ025-0125.wav|tests/data/ljspeech/wavs/LJ025-0125.npy -tests/data/ljspeech/wavs/LJ004-0106.wav|tests/data/ljspeech/wavs/LJ004-0106.npy -tests/data/ljspeech/wavs/LJ004-0086.wav|tests/data/ljspeech/wavs/LJ004-0086.npy -tests/data/ljspeech/wavs/LJ026-0086.wav|tests/data/ljspeech/wavs/LJ026-0086.npy -tests/data/ljspeech/wavs/LJ050-0016.wav|tests/data/ljspeech/wavs/LJ050-0016.npy -tests/data/ljspeech/wavs/LJ008-0090.wav|tests/data/ljspeech/wavs/LJ008-0090.npy -tests/data/ljspeech/wavs/LJ013-0058.wav|tests/data/ljspeech/wavs/LJ013-0058.npy -tests/data/ljspeech/wavs/LJ027-0174.wav|tests/data/ljspeech/wavs/LJ027-0174.npy -tests/data/ljspeech/wavs/LJ049-0145.wav|tests/data/ljspeech/wavs/LJ049-0145.npy -tests/data/ljspeech/wavs/LJ014-0018.wav|tests/data/ljspeech/wavs/LJ014-0018.npy -tests/data/ljspeech/wavs/LJ033-0152.wav|tests/data/ljspeech/wavs/LJ033-0152.npy -tests/data/ljspeech/wavs/LJ008-0165.wav|tests/data/ljspeech/wavs/LJ008-0165.npy -tests/data/ljspeech/wavs/LJ008-0225.wav|tests/data/ljspeech/wavs/LJ008-0225.npy -tests/data/ljspeech/wavs/LJ032-0262.wav|tests/data/ljspeech/wavs/LJ032-0262.npy -tests/data/ljspeech/wavs/LJ024-0031.wav|tests/data/ljspeech/wavs/LJ024-0031.npy -tests/data/ljspeech/wavs/LJ014-0313.wav|tests/data/ljspeech/wavs/LJ014-0313.npy -tests/data/ljspeech/wavs/LJ013-0147.wav|tests/data/ljspeech/wavs/LJ013-0147.npy -tests/data/ljspeech/wavs/LJ016-0278.wav|tests/data/ljspeech/wavs/LJ016-0278.npy -tests/data/ljspeech/wavs/LJ013-0056.wav|tests/data/ljspeech/wavs/LJ013-0056.npy -tests/data/ljspeech/wavs/LJ040-0014.wav|tests/data/ljspeech/wavs/LJ040-0014.npy -tests/data/ljspeech/wavs/LJ015-0055.wav|tests/data/ljspeech/wavs/LJ015-0055.npy -tests/data/ljspeech/wavs/LJ038-0070.wav|tests/data/ljspeech/wavs/LJ038-0070.npy -tests/data/ljspeech/wavs/LJ038-0274.wav|tests/data/ljspeech/wavs/LJ038-0274.npy -tests/data/ljspeech/wavs/LJ015-0090.wav|tests/data/ljspeech/wavs/LJ015-0090.npy -tests/data/ljspeech/wavs/LJ013-0223.wav|tests/data/ljspeech/wavs/LJ013-0223.npy -tests/data/ljspeech/wavs/LJ015-0074.wav|tests/data/ljspeech/wavs/LJ015-0074.npy -tests/data/ljspeech/wavs/LJ014-0309.wav|tests/data/ljspeech/wavs/LJ014-0309.npy -tests/data/ljspeech/wavs/LJ017-0180.wav|tests/data/ljspeech/wavs/LJ017-0180.npy -tests/data/ljspeech/wavs/LJ017-0049.wav|tests/data/ljspeech/wavs/LJ017-0049.npy -tests/data/ljspeech/wavs/LJ027-0106.wav|tests/data/ljspeech/wavs/LJ027-0106.npy -tests/data/ljspeech/wavs/LJ003-0298.wav|tests/data/ljspeech/wavs/LJ003-0298.npy -tests/data/ljspeech/wavs/LJ014-0109.wav|tests/data/ljspeech/wavs/LJ014-0109.npy -tests/data/ljspeech/wavs/LJ014-0057.wav|tests/data/ljspeech/wavs/LJ014-0057.npy -tests/data/ljspeech/wavs/LJ038-0059.wav|tests/data/ljspeech/wavs/LJ038-0059.npy -tests/data/ljspeech/wavs/LJ004-0071.wav|tests/data/ljspeech/wavs/LJ004-0071.npy -tests/data/ljspeech/wavs/LJ015-0017.wav|tests/data/ljspeech/wavs/LJ015-0017.npy -tests/data/ljspeech/wavs/LJ037-0079.wav|tests/data/ljspeech/wavs/LJ037-0079.npy -tests/data/ljspeech/wavs/LJ008-0243.wav|tests/data/ljspeech/wavs/LJ008-0243.npy -tests/data/ljspeech/wavs/LJ030-0189.wav|tests/data/ljspeech/wavs/LJ030-0189.npy -tests/data/ljspeech/wavs/LJ004-0159.wav|tests/data/ljspeech/wavs/LJ004-0159.npy -tests/data/ljspeech/wavs/LJ037-0099.wav|tests/data/ljspeech/wavs/LJ037-0099.npy -tests/data/ljspeech/wavs/LJ038-0265.wav|tests/data/ljspeech/wavs/LJ038-0265.npy -tests/data/ljspeech/wavs/LJ011-0187.wav|tests/data/ljspeech/wavs/LJ011-0187.npy -tests/data/ljspeech/wavs/LJ030-0076.wav|tests/data/ljspeech/wavs/LJ030-0076.npy -tests/data/ljspeech/wavs/LJ013-0039.wav|tests/data/ljspeech/wavs/LJ013-0039.npy -tests/data/ljspeech/wavs/LJ045-0239.wav|tests/data/ljspeech/wavs/LJ045-0239.npy -tests/data/ljspeech/wavs/LJ013-0233.wav|tests/data/ljspeech/wavs/LJ013-0233.npy -tests/data/ljspeech/wavs/LJ014-0282.wav|tests/data/ljspeech/wavs/LJ014-0282.npy -tests/data/ljspeech/wavs/LJ041-0079.wav|tests/data/ljspeech/wavs/LJ041-0079.npy -tests/data/ljspeech/wavs/LJ047-0021.wav|tests/data/ljspeech/wavs/LJ047-0021.npy -tests/data/ljspeech/wavs/LJ032-0019.wav|tests/data/ljspeech/wavs/LJ032-0019.npy -tests/data/ljspeech/wavs/LJ047-0073.wav|tests/data/ljspeech/wavs/LJ047-0073.npy -tests/data/ljspeech/wavs/LJ009-0149.wav|tests/data/ljspeech/wavs/LJ009-0149.npy -tests/data/ljspeech/wavs/LJ042-0248.wav|tests/data/ljspeech/wavs/LJ042-0248.npy -tests/data/ljspeech/wavs/LJ042-0236.wav|tests/data/ljspeech/wavs/LJ042-0236.npy -tests/data/ljspeech/wavs/LJ049-0173.wav|tests/data/ljspeech/wavs/LJ049-0173.npy -tests/data/ljspeech/wavs/LJ015-0208.wav|tests/data/ljspeech/wavs/LJ015-0208.npy -tests/data/ljspeech/wavs/LJ048-0088.wav|tests/data/ljspeech/wavs/LJ048-0088.npy -tests/data/ljspeech/wavs/LJ009-0159.wav|tests/data/ljspeech/wavs/LJ009-0159.npy -tests/data/ljspeech/wavs/LJ014-0267.wav|tests/data/ljspeech/wavs/LJ014-0267.npy -tests/data/ljspeech/wavs/LJ046-0234.wav|tests/data/ljspeech/wavs/LJ046-0234.npy -tests/data/ljspeech/wavs/LJ012-0205.wav|tests/data/ljspeech/wavs/LJ012-0205.npy -tests/data/ljspeech/wavs/LJ017-0249.wav|tests/data/ljspeech/wavs/LJ017-0249.npy -tests/data/ljspeech/wavs/LJ015-0304.wav|tests/data/ljspeech/wavs/LJ015-0304.npy -tests/data/ljspeech/wavs/LJ004-0019.wav|tests/data/ljspeech/wavs/LJ004-0019.npy -tests/data/ljspeech/wavs/LJ038-0002.wav|tests/data/ljspeech/wavs/LJ038-0002.npy -tests/data/ljspeech/wavs/LJ007-0018.wav|tests/data/ljspeech/wavs/LJ007-0018.npy -tests/data/ljspeech/wavs/LJ016-0031.wav|tests/data/ljspeech/wavs/LJ016-0031.npy -tests/data/ljspeech/wavs/LJ002-0299.wav|tests/data/ljspeech/wavs/LJ002-0299.npy -tests/data/ljspeech/wavs/LJ050-0247.wav|tests/data/ljspeech/wavs/LJ050-0247.npy -tests/data/ljspeech/wavs/LJ034-0002.wav|tests/data/ljspeech/wavs/LJ034-0002.npy -tests/data/ljspeech/wavs/LJ014-0276.wav|tests/data/ljspeech/wavs/LJ014-0276.npy -tests/data/ljspeech/wavs/LJ003-0021.wav|tests/data/ljspeech/wavs/LJ003-0021.npy -tests/data/ljspeech/wavs/LJ009-0229.wav|tests/data/ljspeech/wavs/LJ009-0229.npy -tests/data/ljspeech/wavs/LJ021-0198.wav|tests/data/ljspeech/wavs/LJ021-0198.npy -tests/data/ljspeech/wavs/LJ012-0086.wav|tests/data/ljspeech/wavs/LJ012-0086.npy -tests/data/ljspeech/wavs/LJ030-0120.wav|tests/data/ljspeech/wavs/LJ030-0120.npy -tests/data/ljspeech/wavs/LJ006-0192.wav|tests/data/ljspeech/wavs/LJ006-0192.npy -tests/data/ljspeech/wavs/LJ050-0008.wav|tests/data/ljspeech/wavs/LJ050-0008.npy -tests/data/ljspeech/wavs/LJ045-0150.wav|tests/data/ljspeech/wavs/LJ045-0150.npy -tests/data/ljspeech/wavs/LJ042-0049.wav|tests/data/ljspeech/wavs/LJ042-0049.npy -tests/data/ljspeech/wavs/LJ021-0166.wav|tests/data/ljspeech/wavs/LJ021-0166.npy -tests/data/ljspeech/wavs/LJ042-0013.wav|tests/data/ljspeech/wavs/LJ042-0013.npy -tests/data/ljspeech/wavs/LJ026-0061.wav|tests/data/ljspeech/wavs/LJ026-0061.npy -tests/data/ljspeech/wavs/LJ027-0170.wav|tests/data/ljspeech/wavs/LJ027-0170.npy -tests/data/ljspeech/wavs/LJ045-0110.wav|tests/data/ljspeech/wavs/LJ045-0110.npy -tests/data/ljspeech/wavs/LJ005-0126.wav|tests/data/ljspeech/wavs/LJ005-0126.npy -tests/data/ljspeech/wavs/LJ024-0101.wav|tests/data/ljspeech/wavs/LJ024-0101.npy -tests/data/ljspeech/wavs/LJ027-0095.wav|tests/data/ljspeech/wavs/LJ027-0095.npy -tests/data/ljspeech/wavs/LJ009-0026.wav|tests/data/ljspeech/wavs/LJ009-0026.npy -tests/data/ljspeech/wavs/LJ048-0182.wav|tests/data/ljspeech/wavs/LJ048-0182.npy -tests/data/ljspeech/wavs/LJ021-0006.wav|tests/data/ljspeech/wavs/LJ021-0006.npy -tests/data/ljspeech/wavs/LJ050-0256.wav|tests/data/ljspeech/wavs/LJ050-0256.npy -tests/data/ljspeech/wavs/LJ025-0039.wav|tests/data/ljspeech/wavs/LJ025-0039.npy -tests/data/ljspeech/wavs/LJ040-0117.wav|tests/data/ljspeech/wavs/LJ040-0117.npy -tests/data/ljspeech/wavs/LJ050-0013.wav|tests/data/ljspeech/wavs/LJ050-0013.npy -tests/data/ljspeech/wavs/LJ050-0175.wav|tests/data/ljspeech/wavs/LJ050-0175.npy -tests/data/ljspeech/wavs/LJ050-0043.wav|tests/data/ljspeech/wavs/LJ050-0043.npy -tests/data/ljspeech/wavs/LJ007-0133.wav|tests/data/ljspeech/wavs/LJ007-0133.npy -tests/data/ljspeech/wavs/LJ035-0138.wav|tests/data/ljspeech/wavs/LJ035-0138.npy -tests/data/ljspeech/wavs/LJ006-0068.wav|tests/data/ljspeech/wavs/LJ006-0068.npy -tests/data/ljspeech/wavs/LJ021-0024.wav|tests/data/ljspeech/wavs/LJ021-0024.npy -tests/data/ljspeech/wavs/LJ028-0223.wav|tests/data/ljspeech/wavs/LJ028-0223.npy -tests/data/ljspeech/wavs/LJ028-0100.wav|tests/data/ljspeech/wavs/LJ028-0100.npy -tests/data/ljspeech/wavs/LJ046-0065.wav|tests/data/ljspeech/wavs/LJ046-0065.npy -tests/data/ljspeech/wavs/LJ030-0249.wav|tests/data/ljspeech/wavs/LJ030-0249.npy -tests/data/ljspeech/wavs/LJ042-0109.wav|tests/data/ljspeech/wavs/LJ042-0109.npy -tests/data/ljspeech/wavs/LJ010-0243.wav|tests/data/ljspeech/wavs/LJ010-0243.npy -tests/data/ljspeech/wavs/LJ002-0312.wav|tests/data/ljspeech/wavs/LJ002-0312.npy -tests/data/ljspeech/wavs/LJ042-0098.wav|tests/data/ljspeech/wavs/LJ042-0098.npy -tests/data/ljspeech/wavs/LJ008-0185.wav|tests/data/ljspeech/wavs/LJ008-0185.npy -tests/data/ljspeech/wavs/LJ019-0383.wav|tests/data/ljspeech/wavs/LJ019-0383.npy -tests/data/ljspeech/wavs/LJ029-0052.wav|tests/data/ljspeech/wavs/LJ029-0052.npy -tests/data/ljspeech/wavs/LJ019-0244.wav|tests/data/ljspeech/wavs/LJ019-0244.npy -tests/data/ljspeech/wavs/LJ040-0161.wav|tests/data/ljspeech/wavs/LJ040-0161.npy -tests/data/ljspeech/wavs/LJ047-0019.wav|tests/data/ljspeech/wavs/LJ047-0019.npy -tests/data/ljspeech/wavs/LJ044-0024.wav|tests/data/ljspeech/wavs/LJ044-0024.npy -tests/data/ljspeech/wavs/LJ006-0073.wav|tests/data/ljspeech/wavs/LJ006-0073.npy -tests/data/ljspeech/wavs/LJ048-0286.wav|tests/data/ljspeech/wavs/LJ048-0286.npy -tests/data/ljspeech/wavs/LJ006-0082.wav|tests/data/ljspeech/wavs/LJ006-0082.npy -tests/data/ljspeech/wavs/LJ004-0016.wav|tests/data/ljspeech/wavs/LJ004-0016.npy -tests/data/ljspeech/wavs/LJ050-0132.wav|tests/data/ljspeech/wavs/LJ050-0132.npy -tests/data/ljspeech/wavs/LJ045-0139.wav|tests/data/ljspeech/wavs/LJ045-0139.npy -tests/data/ljspeech/wavs/LJ003-0097.wav|tests/data/ljspeech/wavs/LJ003-0097.npy -tests/data/ljspeech/wavs/LJ045-0142.wav|tests/data/ljspeech/wavs/LJ045-0142.npy -tests/data/ljspeech/wavs/LJ003-0186.wav|tests/data/ljspeech/wavs/LJ003-0186.npy -tests/data/ljspeech/wavs/LJ005-0211.wav|tests/data/ljspeech/wavs/LJ005-0211.npy -tests/data/ljspeech/wavs/LJ005-0100.wav|tests/data/ljspeech/wavs/LJ005-0100.npy -tests/data/ljspeech/wavs/LJ007-0079.wav|tests/data/ljspeech/wavs/LJ007-0079.npy -tests/data/ljspeech/wavs/LJ043-0065.wav|tests/data/ljspeech/wavs/LJ043-0065.npy -tests/data/ljspeech/wavs/LJ004-0222.wav|tests/data/ljspeech/wavs/LJ004-0222.npy -tests/data/ljspeech/wavs/LJ019-0144.wav|tests/data/ljspeech/wavs/LJ019-0144.npy -tests/data/ljspeech/wavs/LJ019-0190.wav|tests/data/ljspeech/wavs/LJ019-0190.npy -tests/data/ljspeech/wavs/LJ003-0283.wav|tests/data/ljspeech/wavs/LJ003-0283.npy -tests/data/ljspeech/wavs/LJ002-0132.wav|tests/data/ljspeech/wavs/LJ002-0132.npy -tests/data/ljspeech/wavs/LJ003-0132.wav|tests/data/ljspeech/wavs/LJ003-0132.npy -tests/data/ljspeech/wavs/LJ045-0055.wav|tests/data/ljspeech/wavs/LJ045-0055.npy -tests/data/ljspeech/wavs/LJ040-0157.wav|tests/data/ljspeech/wavs/LJ040-0157.npy -tests/data/ljspeech/wavs/LJ046-0033.wav|tests/data/ljspeech/wavs/LJ046-0033.npy -tests/data/ljspeech/wavs/LJ010-0214.wav|tests/data/ljspeech/wavs/LJ010-0214.npy -tests/data/ljspeech/wavs/LJ019-0120.wav|tests/data/ljspeech/wavs/LJ019-0120.npy -tests/data/ljspeech/wavs/LJ045-0075.wav|tests/data/ljspeech/wavs/LJ045-0075.npy -tests/data/ljspeech/wavs/LJ007-0114.wav|tests/data/ljspeech/wavs/LJ007-0114.npy -tests/data/ljspeech/wavs/LJ029-0164.wav|tests/data/ljspeech/wavs/LJ029-0164.npy -tests/data/ljspeech/wavs/LJ014-0308.wav|tests/data/ljspeech/wavs/LJ014-0308.npy -tests/data/ljspeech/wavs/LJ047-0072.wav|tests/data/ljspeech/wavs/LJ047-0072.npy -tests/data/ljspeech/wavs/LJ048-0133.wav|tests/data/ljspeech/wavs/LJ048-0133.npy -tests/data/ljspeech/wavs/LJ022-0057.wav|tests/data/ljspeech/wavs/LJ022-0057.npy -tests/data/ljspeech/wavs/LJ015-0266.wav|tests/data/ljspeech/wavs/LJ015-0266.npy -tests/data/ljspeech/wavs/LJ005-0067.wav|tests/data/ljspeech/wavs/LJ005-0067.npy -tests/data/ljspeech/wavs/LJ041-0086.wav|tests/data/ljspeech/wavs/LJ041-0086.npy -tests/data/ljspeech/wavs/LJ033-0131.wav|tests/data/ljspeech/wavs/LJ033-0131.npy -tests/data/ljspeech/wavs/LJ029-0042.wav|tests/data/ljspeech/wavs/LJ029-0042.npy -tests/data/ljspeech/wavs/LJ002-0060.wav|tests/data/ljspeech/wavs/LJ002-0060.npy -tests/data/ljspeech/wavs/LJ009-0259.wav|tests/data/ljspeech/wavs/LJ009-0259.npy -tests/data/ljspeech/wavs/LJ027-0145.wav|tests/data/ljspeech/wavs/LJ027-0145.npy -tests/data/ljspeech/wavs/LJ038-0233.wav|tests/data/ljspeech/wavs/LJ038-0233.npy -tests/data/ljspeech/wavs/LJ041-0046.wav|tests/data/ljspeech/wavs/LJ041-0046.npy -tests/data/ljspeech/wavs/LJ048-0167.wav|tests/data/ljspeech/wavs/LJ048-0167.npy -tests/data/ljspeech/wavs/LJ041-0168.wav|tests/data/ljspeech/wavs/LJ041-0168.npy -tests/data/ljspeech/wavs/LJ034-0072.wav|tests/data/ljspeech/wavs/LJ034-0072.npy -tests/data/ljspeech/wavs/LJ040-0198.wav|tests/data/ljspeech/wavs/LJ040-0198.npy -tests/data/ljspeech/wavs/LJ015-0115.wav|tests/data/ljspeech/wavs/LJ015-0115.npy -tests/data/ljspeech/wavs/LJ008-0258.wav|tests/data/ljspeech/wavs/LJ008-0258.npy -tests/data/ljspeech/wavs/LJ050-0163.wav|tests/data/ljspeech/wavs/LJ050-0163.npy -tests/data/ljspeech/wavs/LJ008-0257.wav|tests/data/ljspeech/wavs/LJ008-0257.npy -tests/data/ljspeech/wavs/LJ041-0016.wav|tests/data/ljspeech/wavs/LJ041-0016.npy -tests/data/ljspeech/wavs/LJ043-0044.wav|tests/data/ljspeech/wavs/LJ043-0044.npy -tests/data/ljspeech/wavs/LJ029-0139.wav|tests/data/ljspeech/wavs/LJ029-0139.npy -tests/data/ljspeech/wavs/LJ006-0040.wav|tests/data/ljspeech/wavs/LJ006-0040.npy -tests/data/ljspeech/wavs/LJ025-0035.wav|tests/data/ljspeech/wavs/LJ025-0035.npy -tests/data/ljspeech/wavs/LJ028-0490.wav|tests/data/ljspeech/wavs/LJ028-0490.npy -tests/data/ljspeech/wavs/LJ009-0187.wav|tests/data/ljspeech/wavs/LJ009-0187.npy -tests/data/ljspeech/wavs/LJ003-0119.wav|tests/data/ljspeech/wavs/LJ003-0119.npy -tests/data/ljspeech/wavs/LJ038-0048.wav|tests/data/ljspeech/wavs/LJ038-0048.npy -tests/data/ljspeech/wavs/LJ039-0146.wav|tests/data/ljspeech/wavs/LJ039-0146.npy -tests/data/ljspeech/wavs/LJ049-0163.wav|tests/data/ljspeech/wavs/LJ049-0163.npy -tests/data/ljspeech/wavs/LJ027-0110.wav|tests/data/ljspeech/wavs/LJ027-0110.npy -tests/data/ljspeech/wavs/LJ031-0133.wav|tests/data/ljspeech/wavs/LJ031-0133.npy -tests/data/ljspeech/wavs/LJ048-0211.wav|tests/data/ljspeech/wavs/LJ048-0211.npy -tests/data/ljspeech/wavs/LJ040-0178.wav|tests/data/ljspeech/wavs/LJ040-0178.npy -tests/data/ljspeech/wavs/LJ013-0149.wav|tests/data/ljspeech/wavs/LJ013-0149.npy -tests/data/ljspeech/wavs/LJ024-0016.wav|tests/data/ljspeech/wavs/LJ024-0016.npy -tests/data/ljspeech/wavs/LJ013-0136.wav|tests/data/ljspeech/wavs/LJ013-0136.npy -tests/data/ljspeech/wavs/LJ049-0144.wav|tests/data/ljspeech/wavs/LJ049-0144.npy -tests/data/ljspeech/wavs/LJ030-0007.wav|tests/data/ljspeech/wavs/LJ030-0007.npy -tests/data/ljspeech/wavs/LJ013-0192.wav|tests/data/ljspeech/wavs/LJ013-0192.npy -tests/data/ljspeech/wavs/LJ027-0088.wav|tests/data/ljspeech/wavs/LJ027-0088.npy -tests/data/ljspeech/wavs/LJ012-0030.wav|tests/data/ljspeech/wavs/LJ012-0030.npy -tests/data/ljspeech/wavs/LJ029-0153.wav|tests/data/ljspeech/wavs/LJ029-0153.npy -tests/data/ljspeech/wavs/LJ033-0059.wav|tests/data/ljspeech/wavs/LJ033-0059.npy -tests/data/ljspeech/wavs/LJ016-0248.wav|tests/data/ljspeech/wavs/LJ016-0248.npy -tests/data/ljspeech/wavs/LJ027-0128.wav|tests/data/ljspeech/wavs/LJ027-0128.npy -tests/data/ljspeech/wavs/LJ027-0024.wav|tests/data/ljspeech/wavs/LJ027-0024.npy -tests/data/ljspeech/wavs/LJ033-0061.wav|tests/data/ljspeech/wavs/LJ033-0061.npy -tests/data/ljspeech/wavs/LJ040-0005.wav|tests/data/ljspeech/wavs/LJ040-0005.npy -tests/data/ljspeech/wavs/LJ028-0450.wav|tests/data/ljspeech/wavs/LJ028-0450.npy -tests/data/ljspeech/wavs/LJ047-0107.wav|tests/data/ljspeech/wavs/LJ047-0107.npy -tests/data/ljspeech/wavs/LJ028-0233.wav|tests/data/ljspeech/wavs/LJ028-0233.npy -tests/data/ljspeech/wavs/LJ016-0246.wav|tests/data/ljspeech/wavs/LJ016-0246.npy -tests/data/ljspeech/wavs/LJ014-0060.wav|tests/data/ljspeech/wavs/LJ014-0060.npy -tests/data/ljspeech/wavs/LJ010-0125.wav|tests/data/ljspeech/wavs/LJ010-0125.npy -tests/data/ljspeech/wavs/LJ012-0132.wav|tests/data/ljspeech/wavs/LJ012-0132.npy -tests/data/ljspeech/wavs/LJ037-0098.wav|tests/data/ljspeech/wavs/LJ037-0098.npy -tests/data/ljspeech/wavs/LJ016-0288.wav|tests/data/ljspeech/wavs/LJ016-0288.npy -tests/data/ljspeech/wavs/LJ013-0036.wav|tests/data/ljspeech/wavs/LJ013-0036.npy -tests/data/ljspeech/wavs/LJ009-0075.wav|tests/data/ljspeech/wavs/LJ009-0075.npy -tests/data/ljspeech/wavs/LJ033-0052.wav|tests/data/ljspeech/wavs/LJ033-0052.npy -tests/data/ljspeech/wavs/LJ042-0184.wav|tests/data/ljspeech/wavs/LJ042-0184.npy -tests/data/ljspeech/wavs/LJ031-0080.wav|tests/data/ljspeech/wavs/LJ031-0080.npy -tests/data/ljspeech/wavs/LJ026-0162.wav|tests/data/ljspeech/wavs/LJ026-0162.npy -tests/data/ljspeech/wavs/LJ042-0087.wav|tests/data/ljspeech/wavs/LJ042-0087.npy -tests/data/ljspeech/wavs/LJ042-0245.wav|tests/data/ljspeech/wavs/LJ042-0245.npy -tests/data/ljspeech/wavs/LJ040-0089.wav|tests/data/ljspeech/wavs/LJ040-0089.npy -tests/data/ljspeech/wavs/LJ048-0116.wav|tests/data/ljspeech/wavs/LJ048-0116.npy -tests/data/ljspeech/wavs/LJ050-0098.wav|tests/data/ljspeech/wavs/LJ050-0098.npy -tests/data/ljspeech/wavs/LJ019-0158.wav|tests/data/ljspeech/wavs/LJ019-0158.npy -tests/data/ljspeech/wavs/LJ014-0208.wav|tests/data/ljspeech/wavs/LJ014-0208.npy -tests/data/ljspeech/wavs/LJ010-0229.wav|tests/data/ljspeech/wavs/LJ010-0229.npy -tests/data/ljspeech/wavs/LJ038-0150.wav|tests/data/ljspeech/wavs/LJ038-0150.npy -tests/data/ljspeech/wavs/LJ028-0394.wav|tests/data/ljspeech/wavs/LJ028-0394.npy -tests/data/ljspeech/wavs/LJ014-0195.wav|tests/data/ljspeech/wavs/LJ014-0195.npy -tests/data/ljspeech/wavs/LJ007-0204.wav|tests/data/ljspeech/wavs/LJ007-0204.npy -tests/data/ljspeech/wavs/LJ018-0100.wav|tests/data/ljspeech/wavs/LJ018-0100.npy -tests/data/ljspeech/wavs/LJ017-0213.wav|tests/data/ljspeech/wavs/LJ017-0213.npy -tests/data/ljspeech/wavs/LJ026-0138.wav|tests/data/ljspeech/wavs/LJ026-0138.npy -tests/data/ljspeech/wavs/LJ014-0114.wav|tests/data/ljspeech/wavs/LJ014-0114.npy -tests/data/ljspeech/wavs/LJ049-0221.wav|tests/data/ljspeech/wavs/LJ049-0221.npy -tests/data/ljspeech/wavs/LJ038-0160.wav|tests/data/ljspeech/wavs/LJ038-0160.npy -tests/data/ljspeech/wavs/LJ037-0180.wav|tests/data/ljspeech/wavs/LJ037-0180.npy -tests/data/ljspeech/wavs/LJ034-0197.wav|tests/data/ljspeech/wavs/LJ034-0197.npy -tests/data/ljspeech/wavs/LJ014-0085.wav|tests/data/ljspeech/wavs/LJ014-0085.npy -tests/data/ljspeech/wavs/LJ040-0087.wav|tests/data/ljspeech/wavs/LJ040-0087.npy -tests/data/ljspeech/wavs/LJ017-0169.wav|tests/data/ljspeech/wavs/LJ017-0169.npy -tests/data/ljspeech/wavs/LJ031-0079.wav|tests/data/ljspeech/wavs/LJ031-0079.npy -tests/data/ljspeech/wavs/LJ006-0306.wav|tests/data/ljspeech/wavs/LJ006-0306.npy -tests/data/ljspeech/wavs/LJ014-0212.wav|tests/data/ljspeech/wavs/LJ014-0212.npy -tests/data/ljspeech/wavs/LJ018-0009.wav|tests/data/ljspeech/wavs/LJ018-0009.npy -tests/data/ljspeech/wavs/LJ048-0289.wav|tests/data/ljspeech/wavs/LJ048-0289.npy -tests/data/ljspeech/wavs/LJ046-0204.wav|tests/data/ljspeech/wavs/LJ046-0204.npy -tests/data/ljspeech/wavs/LJ026-0059.wav|tests/data/ljspeech/wavs/LJ026-0059.npy -tests/data/ljspeech/wavs/LJ011-0002.wav|tests/data/ljspeech/wavs/LJ011-0002.npy -tests/data/ljspeech/wavs/LJ004-0082.wav|tests/data/ljspeech/wavs/LJ004-0082.npy -tests/data/ljspeech/wavs/LJ036-0153.wav|tests/data/ljspeech/wavs/LJ036-0153.npy -tests/data/ljspeech/wavs/LJ050-0050.wav|tests/data/ljspeech/wavs/LJ050-0050.npy -tests/data/ljspeech/wavs/LJ007-0147.wav|tests/data/ljspeech/wavs/LJ007-0147.npy -tests/data/ljspeech/wavs/LJ044-0209.wav|tests/data/ljspeech/wavs/LJ044-0209.npy -tests/data/ljspeech/wavs/LJ047-0227.wav|tests/data/ljspeech/wavs/LJ047-0227.npy -tests/data/ljspeech/wavs/LJ006-0296.wav|tests/data/ljspeech/wavs/LJ006-0296.npy -tests/data/ljspeech/wavs/LJ038-0142.wav|tests/data/ljspeech/wavs/LJ038-0142.npy -tests/data/ljspeech/wavs/LJ028-0397.wav|tests/data/ljspeech/wavs/LJ028-0397.npy -tests/data/ljspeech/wavs/LJ047-0191.wav|tests/data/ljspeech/wavs/LJ047-0191.npy -tests/data/ljspeech/wavs/LJ042-0140.wav|tests/data/ljspeech/wavs/LJ042-0140.npy -tests/data/ljspeech/wavs/LJ021-0053.wav|tests/data/ljspeech/wavs/LJ021-0053.npy -tests/data/ljspeech/wavs/LJ028-0414.wav|tests/data/ljspeech/wavs/LJ028-0414.npy -tests/data/ljspeech/wavs/LJ017-0069.wav|tests/data/ljspeech/wavs/LJ017-0069.npy -tests/data/ljspeech/wavs/LJ019-0049.wav|tests/data/ljspeech/wavs/LJ019-0049.npy -tests/data/ljspeech/wavs/LJ010-0198.wav|tests/data/ljspeech/wavs/LJ010-0198.npy -tests/data/ljspeech/wavs/LJ020-0053.wav|tests/data/ljspeech/wavs/LJ020-0053.npy -tests/data/ljspeech/wavs/LJ014-0179.wav|tests/data/ljspeech/wavs/LJ014-0179.npy -tests/data/ljspeech/wavs/LJ030-0114.wav|tests/data/ljspeech/wavs/LJ030-0114.npy -tests/data/ljspeech/wavs/LJ006-0276.wav|tests/data/ljspeech/wavs/LJ006-0276.npy -tests/data/ljspeech/wavs/LJ014-0217.wav|tests/data/ljspeech/wavs/LJ014-0217.npy -tests/data/ljspeech/wavs/LJ007-0106.wav|tests/data/ljspeech/wavs/LJ007-0106.npy -tests/data/ljspeech/wavs/LJ034-0175.wav|tests/data/ljspeech/wavs/LJ034-0175.npy -tests/data/ljspeech/wavs/LJ017-0096.wav|tests/data/ljspeech/wavs/LJ017-0096.npy -tests/data/ljspeech/wavs/LJ036-0018.wav|tests/data/ljspeech/wavs/LJ036-0018.npy -tests/data/ljspeech/wavs/LJ033-0033.wav|tests/data/ljspeech/wavs/LJ033-0033.npy -tests/data/ljspeech/wavs/LJ014-0113.wav|tests/data/ljspeech/wavs/LJ014-0113.npy -tests/data/ljspeech/wavs/LJ035-0134.wav|tests/data/ljspeech/wavs/LJ035-0134.npy -tests/data/ljspeech/wavs/LJ016-0432.wav|tests/data/ljspeech/wavs/LJ016-0432.npy -tests/data/ljspeech/wavs/LJ032-0216.wav|tests/data/ljspeech/wavs/LJ032-0216.npy -tests/data/ljspeech/wavs/LJ011-0130.wav|tests/data/ljspeech/wavs/LJ011-0130.npy -tests/data/ljspeech/wavs/LJ036-0205.wav|tests/data/ljspeech/wavs/LJ036-0205.npy -tests/data/ljspeech/wavs/LJ012-0032.wav|tests/data/ljspeech/wavs/LJ012-0032.npy -tests/data/ljspeech/wavs/LJ019-0137.wav|tests/data/ljspeech/wavs/LJ019-0137.npy -tests/data/ljspeech/wavs/LJ032-0140.wav|tests/data/ljspeech/wavs/LJ032-0140.npy -tests/data/ljspeech/wavs/LJ020-0037.wav|tests/data/ljspeech/wavs/LJ020-0037.npy -tests/data/ljspeech/wavs/LJ013-0238.wav|tests/data/ljspeech/wavs/LJ013-0238.npy -tests/data/ljspeech/wavs/LJ011-0125.wav|tests/data/ljspeech/wavs/LJ011-0125.npy -tests/data/ljspeech/wavs/LJ027-0060.wav|tests/data/ljspeech/wavs/LJ027-0060.npy -tests/data/ljspeech/wavs/LJ019-0217.wav|tests/data/ljspeech/wavs/LJ019-0217.npy -tests/data/ljspeech/wavs/LJ048-0051.wav|tests/data/ljspeech/wavs/LJ048-0051.npy -tests/data/ljspeech/wavs/LJ046-0052.wav|tests/data/ljspeech/wavs/LJ046-0052.npy -tests/data/ljspeech/wavs/LJ028-0161.wav|tests/data/ljspeech/wavs/LJ028-0161.npy -tests/data/ljspeech/wavs/LJ039-0121.wav|tests/data/ljspeech/wavs/LJ039-0121.npy -tests/data/ljspeech/wavs/LJ006-0287.wav|tests/data/ljspeech/wavs/LJ006-0287.npy -tests/data/ljspeech/wavs/LJ015-0081.wav|tests/data/ljspeech/wavs/LJ015-0081.npy -tests/data/ljspeech/wavs/LJ011-0209.wav|tests/data/ljspeech/wavs/LJ011-0209.npy -tests/data/ljspeech/wavs/LJ004-0144.wav|tests/data/ljspeech/wavs/LJ004-0144.npy -tests/data/ljspeech/wavs/LJ003-0072.wav|tests/data/ljspeech/wavs/LJ003-0072.npy -tests/data/ljspeech/wavs/LJ030-0201.wav|tests/data/ljspeech/wavs/LJ030-0201.npy -tests/data/ljspeech/wavs/LJ012-0179.wav|tests/data/ljspeech/wavs/LJ012-0179.npy -tests/data/ljspeech/wavs/LJ006-0209.wav|tests/data/ljspeech/wavs/LJ006-0209.npy -tests/data/ljspeech/wavs/LJ002-0082.wav|tests/data/ljspeech/wavs/LJ002-0082.npy -tests/data/ljspeech/wavs/LJ050-0113.wav|tests/data/ljspeech/wavs/LJ050-0113.npy -tests/data/ljspeech/wavs/LJ019-0263.wav|tests/data/ljspeech/wavs/LJ019-0263.npy -tests/data/ljspeech/wavs/LJ002-0084.wav|tests/data/ljspeech/wavs/LJ002-0084.npy -tests/data/ljspeech/wavs/LJ011-0062.wav|tests/data/ljspeech/wavs/LJ011-0062.npy -tests/data/ljspeech/wavs/LJ014-0052.wav|tests/data/ljspeech/wavs/LJ014-0052.npy -tests/data/ljspeech/wavs/LJ032-0254.wav|tests/data/ljspeech/wavs/LJ032-0254.npy -tests/data/ljspeech/wavs/LJ020-0049.wav|tests/data/ljspeech/wavs/LJ020-0049.npy -tests/data/ljspeech/wavs/LJ001-0017.wav|tests/data/ljspeech/wavs/LJ001-0017.npy -tests/data/ljspeech/wavs/LJ016-0090.wav|tests/data/ljspeech/wavs/LJ016-0090.npy -tests/data/ljspeech/wavs/LJ048-0109.wav|tests/data/ljspeech/wavs/LJ048-0109.npy -tests/data/ljspeech/wavs/LJ012-0124.wav|tests/data/ljspeech/wavs/LJ012-0124.npy -tests/data/ljspeech/wavs/LJ018-0084.wav|tests/data/ljspeech/wavs/LJ018-0084.npy -tests/data/ljspeech/wavs/LJ041-0145.wav|tests/data/ljspeech/wavs/LJ041-0145.npy -tests/data/ljspeech/wavs/LJ003-0237.wav|tests/data/ljspeech/wavs/LJ003-0237.npy -tests/data/ljspeech/wavs/LJ006-0125.wav|tests/data/ljspeech/wavs/LJ006-0125.npy -tests/data/ljspeech/wavs/LJ033-0204.wav|tests/data/ljspeech/wavs/LJ033-0204.npy -tests/data/ljspeech/wavs/LJ011-0083.wav|tests/data/ljspeech/wavs/LJ011-0083.npy -tests/data/ljspeech/wavs/LJ016-0114.wav|tests/data/ljspeech/wavs/LJ016-0114.npy -tests/data/ljspeech/wavs/LJ006-0116.wav|tests/data/ljspeech/wavs/LJ006-0116.npy -tests/data/ljspeech/wavs/LJ041-0120.wav|tests/data/ljspeech/wavs/LJ041-0120.npy -tests/data/ljspeech/wavs/LJ018-0027.wav|tests/data/ljspeech/wavs/LJ018-0027.npy -tests/data/ljspeech/wavs/LJ045-0097.wav|tests/data/ljspeech/wavs/LJ045-0097.npy -tests/data/ljspeech/wavs/LJ050-0140.wav|tests/data/ljspeech/wavs/LJ050-0140.npy -tests/data/ljspeech/wavs/LJ009-0183.wav|tests/data/ljspeech/wavs/LJ009-0183.npy -tests/data/ljspeech/wavs/LJ029-0123.wav|tests/data/ljspeech/wavs/LJ029-0123.npy -tests/data/ljspeech/wavs/LJ019-0162.wav|tests/data/ljspeech/wavs/LJ019-0162.npy -tests/data/ljspeech/wavs/LJ008-0232.wav|tests/data/ljspeech/wavs/LJ008-0232.npy -tests/data/ljspeech/wavs/LJ036-0163.wav|tests/data/ljspeech/wavs/LJ036-0163.npy -tests/data/ljspeech/wavs/LJ018-0093.wav|tests/data/ljspeech/wavs/LJ018-0093.npy -tests/data/ljspeech/wavs/LJ021-0202.wav|tests/data/ljspeech/wavs/LJ021-0202.npy -tests/data/ljspeech/wavs/LJ050-0021.wav|tests/data/ljspeech/wavs/LJ050-0021.npy -tests/data/ljspeech/wavs/LJ045-0231.wav|tests/data/ljspeech/wavs/LJ045-0231.npy -tests/data/ljspeech/wavs/LJ006-0104.wav|tests/data/ljspeech/wavs/LJ006-0104.npy -tests/data/ljspeech/wavs/LJ009-0104.wav|tests/data/ljspeech/wavs/LJ009-0104.npy -tests/data/ljspeech/wavs/LJ016-0035.wav|tests/data/ljspeech/wavs/LJ016-0035.npy -tests/data/ljspeech/wavs/LJ008-0097.wav|tests/data/ljspeech/wavs/LJ008-0097.npy -tests/data/ljspeech/wavs/LJ016-0045.wav|tests/data/ljspeech/wavs/LJ016-0045.npy -tests/data/ljspeech/wavs/LJ009-0196.wav|tests/data/ljspeech/wavs/LJ009-0196.npy -tests/data/ljspeech/wavs/LJ006-0228.wav|tests/data/ljspeech/wavs/LJ006-0228.npy -tests/data/ljspeech/wavs/LJ003-0265.wav|tests/data/ljspeech/wavs/LJ003-0265.npy -tests/data/ljspeech/wavs/LJ032-0205.wav|tests/data/ljspeech/wavs/LJ032-0205.npy -tests/data/ljspeech/wavs/LJ044-0124.wav|tests/data/ljspeech/wavs/LJ044-0124.npy -tests/data/ljspeech/wavs/LJ027-0133.wav|tests/data/ljspeech/wavs/LJ027-0133.npy -tests/data/ljspeech/wavs/LJ037-0019.wav|tests/data/ljspeech/wavs/LJ037-0019.npy -tests/data/ljspeech/wavs/LJ037-0198.wav|tests/data/ljspeech/wavs/LJ037-0198.npy -tests/data/ljspeech/wavs/LJ012-0140.wav|tests/data/ljspeech/wavs/LJ012-0140.npy -tests/data/ljspeech/wavs/LJ047-0170.wav|tests/data/ljspeech/wavs/LJ047-0170.npy -tests/data/ljspeech/wavs/LJ003-0082.wav|tests/data/ljspeech/wavs/LJ003-0082.npy -tests/data/ljspeech/wavs/LJ019-0372.wav|tests/data/ljspeech/wavs/LJ019-0372.npy -tests/data/ljspeech/wavs/LJ025-0084.wav|tests/data/ljspeech/wavs/LJ025-0084.npy -tests/data/ljspeech/wavs/LJ021-0185.wav|tests/data/ljspeech/wavs/LJ021-0185.npy -tests/data/ljspeech/wavs/LJ016-0410.wav|tests/data/ljspeech/wavs/LJ016-0410.npy -tests/data/ljspeech/wavs/LJ021-0197.wav|tests/data/ljspeech/wavs/LJ021-0197.npy -tests/data/ljspeech/wavs/LJ004-0204.wav|tests/data/ljspeech/wavs/LJ004-0204.npy -tests/data/ljspeech/wavs/LJ013-0021.wav|tests/data/ljspeech/wavs/LJ013-0021.npy -tests/data/ljspeech/wavs/LJ037-0212.wav|tests/data/ljspeech/wavs/LJ037-0212.npy -tests/data/ljspeech/wavs/LJ049-0074.wav|tests/data/ljspeech/wavs/LJ049-0074.npy -tests/data/ljspeech/wavs/LJ010-0009.wav|tests/data/ljspeech/wavs/LJ010-0009.npy -tests/data/ljspeech/wavs/LJ025-0062.wav|tests/data/ljspeech/wavs/LJ025-0062.npy -tests/data/ljspeech/wavs/LJ015-0216.wav|tests/data/ljspeech/wavs/LJ015-0216.npy -tests/data/ljspeech/wavs/LJ036-0039.wav|tests/data/ljspeech/wavs/LJ036-0039.npy -tests/data/ljspeech/wavs/LJ039-0100.wav|tests/data/ljspeech/wavs/LJ039-0100.npy -tests/data/ljspeech/wavs/LJ045-0207.wav|tests/data/ljspeech/wavs/LJ045-0207.npy -tests/data/ljspeech/wavs/LJ006-0146.wav|tests/data/ljspeech/wavs/LJ006-0146.npy -tests/data/ljspeech/wavs/LJ038-0016.wav|tests/data/ljspeech/wavs/LJ038-0016.npy -tests/data/ljspeech/wavs/LJ007-0168.wav|tests/data/ljspeech/wavs/LJ007-0168.npy -tests/data/ljspeech/wavs/LJ035-0082.wav|tests/data/ljspeech/wavs/LJ035-0082.npy -tests/data/ljspeech/wavs/LJ045-0009.wav|tests/data/ljspeech/wavs/LJ045-0009.npy -tests/data/ljspeech/wavs/LJ008-0173.wav|tests/data/ljspeech/wavs/LJ008-0173.npy -tests/data/ljspeech/wavs/LJ033-0087.wav|tests/data/ljspeech/wavs/LJ033-0087.npy -tests/data/ljspeech/wavs/LJ001-0173.wav|tests/data/ljspeech/wavs/LJ001-0173.npy -tests/data/ljspeech/wavs/LJ016-0433.wav|tests/data/ljspeech/wavs/LJ016-0433.npy -tests/data/ljspeech/wavs/LJ044-0230.wav|tests/data/ljspeech/wavs/LJ044-0230.npy -tests/data/ljspeech/wavs/LJ003-0301.wav|tests/data/ljspeech/wavs/LJ003-0301.npy -tests/data/ljspeech/wavs/LJ037-0116.wav|tests/data/ljspeech/wavs/LJ037-0116.npy -tests/data/ljspeech/wavs/LJ049-0165.wav|tests/data/ljspeech/wavs/LJ049-0165.npy -tests/data/ljspeech/wavs/LJ024-0127.wav|tests/data/ljspeech/wavs/LJ024-0127.npy -tests/data/ljspeech/wavs/LJ025-0170.wav|tests/data/ljspeech/wavs/LJ025-0170.npy -tests/data/ljspeech/wavs/LJ021-0090.wav|tests/data/ljspeech/wavs/LJ021-0090.npy -tests/data/ljspeech/wavs/LJ015-0130.wav|tests/data/ljspeech/wavs/LJ015-0130.npy -tests/data/ljspeech/wavs/LJ019-0068.wav|tests/data/ljspeech/wavs/LJ019-0068.npy -tests/data/ljspeech/wavs/LJ044-0231.wav|tests/data/ljspeech/wavs/LJ044-0231.npy -tests/data/ljspeech/wavs/LJ016-0198.wav|tests/data/ljspeech/wavs/LJ016-0198.npy -tests/data/ljspeech/wavs/LJ021-0130.wav|tests/data/ljspeech/wavs/LJ021-0130.npy -tests/data/ljspeech/wavs/LJ033-0130.wav|tests/data/ljspeech/wavs/LJ033-0130.npy -tests/data/ljspeech/wavs/LJ004-0006.wav|tests/data/ljspeech/wavs/LJ004-0006.npy -tests/data/ljspeech/wavs/LJ039-0087.wav|tests/data/ljspeech/wavs/LJ039-0087.npy -tests/data/ljspeech/wavs/LJ013-0204.wav|tests/data/ljspeech/wavs/LJ013-0204.npy -tests/data/ljspeech/wavs/LJ021-0043.wav|tests/data/ljspeech/wavs/LJ021-0043.npy -tests/data/ljspeech/wavs/LJ038-0116.wav|tests/data/ljspeech/wavs/LJ038-0116.npy -tests/data/ljspeech/wavs/LJ002-0277.wav|tests/data/ljspeech/wavs/LJ002-0277.npy -tests/data/ljspeech/wavs/LJ018-0199.wav|tests/data/ljspeech/wavs/LJ018-0199.npy -tests/data/ljspeech/wavs/LJ039-0074.wav|tests/data/ljspeech/wavs/LJ039-0074.npy -tests/data/ljspeech/wavs/LJ015-0230.wav|tests/data/ljspeech/wavs/LJ015-0230.npy -tests/data/ljspeech/wavs/LJ014-0141.wav|tests/data/ljspeech/wavs/LJ014-0141.npy -tests/data/ljspeech/wavs/LJ003-0325.wav|tests/data/ljspeech/wavs/LJ003-0325.npy -tests/data/ljspeech/wavs/LJ025-0136.wav|tests/data/ljspeech/wavs/LJ025-0136.npy -tests/data/ljspeech/wavs/LJ046-0194.wav|tests/data/ljspeech/wavs/LJ046-0194.npy -tests/data/ljspeech/wavs/LJ035-0206.wav|tests/data/ljspeech/wavs/LJ035-0206.npy -tests/data/ljspeech/wavs/LJ016-0215.wav|tests/data/ljspeech/wavs/LJ016-0215.npy -tests/data/ljspeech/wavs/LJ019-0056.wav|tests/data/ljspeech/wavs/LJ019-0056.npy -tests/data/ljspeech/wavs/LJ017-0144.wav|tests/data/ljspeech/wavs/LJ017-0144.npy -tests/data/ljspeech/wavs/LJ030-0251.wav|tests/data/ljspeech/wavs/LJ030-0251.npy -tests/data/ljspeech/wavs/LJ004-0142.wav|tests/data/ljspeech/wavs/LJ004-0142.npy -tests/data/ljspeech/wavs/LJ029-0175.wav|tests/data/ljspeech/wavs/LJ029-0175.npy -tests/data/ljspeech/wavs/LJ005-0167.wav|tests/data/ljspeech/wavs/LJ005-0167.npy -tests/data/ljspeech/wavs/LJ046-0167.wav|tests/data/ljspeech/wavs/LJ046-0167.npy -tests/data/ljspeech/wavs/LJ006-0139.wav|tests/data/ljspeech/wavs/LJ006-0139.npy -tests/data/ljspeech/wavs/LJ030-0016.wav|tests/data/ljspeech/wavs/LJ030-0016.npy -tests/data/ljspeech/wavs/LJ044-0028.wav|tests/data/ljspeech/wavs/LJ044-0028.npy -tests/data/ljspeech/wavs/LJ016-0255.wav|tests/data/ljspeech/wavs/LJ016-0255.npy -tests/data/ljspeech/wavs/LJ038-0093.wav|tests/data/ljspeech/wavs/LJ038-0093.npy -tests/data/ljspeech/wavs/LJ010-0106.wav|tests/data/ljspeech/wavs/LJ010-0106.npy -tests/data/ljspeech/wavs/LJ041-0109.wav|tests/data/ljspeech/wavs/LJ041-0109.npy -tests/data/ljspeech/wavs/LJ040-0097.wav|tests/data/ljspeech/wavs/LJ040-0097.npy -tests/data/ljspeech/wavs/LJ010-0246.wav|tests/data/ljspeech/wavs/LJ010-0246.npy -tests/data/ljspeech/wavs/LJ011-0053.wav|tests/data/ljspeech/wavs/LJ011-0053.npy -tests/data/ljspeech/wavs/LJ030-0081.wav|tests/data/ljspeech/wavs/LJ030-0081.npy -tests/data/ljspeech/wavs/LJ001-0128.wav|tests/data/ljspeech/wavs/LJ001-0128.npy -tests/data/ljspeech/wavs/LJ030-0135.wav|tests/data/ljspeech/wavs/LJ030-0135.npy -tests/data/ljspeech/wavs/LJ005-0235.wav|tests/data/ljspeech/wavs/LJ005-0235.npy -tests/data/ljspeech/wavs/LJ031-0075.wav|tests/data/ljspeech/wavs/LJ031-0075.npy -tests/data/ljspeech/wavs/LJ046-0043.wav|tests/data/ljspeech/wavs/LJ046-0043.npy -tests/data/ljspeech/wavs/LJ010-0282.wav|tests/data/ljspeech/wavs/LJ010-0282.npy -tests/data/ljspeech/wavs/LJ019-0259.wav|tests/data/ljspeech/wavs/LJ019-0259.npy -tests/data/ljspeech/wavs/LJ008-0169.wav|tests/data/ljspeech/wavs/LJ008-0169.npy -tests/data/ljspeech/wavs/LJ024-0047.wav|tests/data/ljspeech/wavs/LJ024-0047.npy -tests/data/ljspeech/wavs/LJ041-0075.wav|tests/data/ljspeech/wavs/LJ041-0075.npy -tests/data/ljspeech/wavs/LJ038-0253.wav|tests/data/ljspeech/wavs/LJ038-0253.npy -tests/data/ljspeech/wavs/LJ001-0124.wav|tests/data/ljspeech/wavs/LJ001-0124.npy -tests/data/ljspeech/wavs/LJ007-0220.wav|tests/data/ljspeech/wavs/LJ007-0220.npy -tests/data/ljspeech/wavs/LJ028-0271.wav|tests/data/ljspeech/wavs/LJ028-0271.npy -tests/data/ljspeech/wavs/LJ001-0085.wav|tests/data/ljspeech/wavs/LJ001-0085.npy -tests/data/ljspeech/wavs/LJ001-0088.wav|tests/data/ljspeech/wavs/LJ001-0088.npy -tests/data/ljspeech/wavs/LJ028-0376.wav|tests/data/ljspeech/wavs/LJ028-0376.npy -tests/data/ljspeech/wavs/LJ014-0124.wav|tests/data/ljspeech/wavs/LJ014-0124.npy -tests/data/ljspeech/wavs/LJ046-0180.wav|tests/data/ljspeech/wavs/LJ046-0180.npy -tests/data/ljspeech/wavs/LJ042-0081.wav|tests/data/ljspeech/wavs/LJ042-0081.npy -tests/data/ljspeech/wavs/LJ030-0153.wav|tests/data/ljspeech/wavs/LJ030-0153.npy -tests/data/ljspeech/wavs/LJ029-0049.wav|tests/data/ljspeech/wavs/LJ029-0049.npy -tests/data/ljspeech/wavs/LJ043-0108.wav|tests/data/ljspeech/wavs/LJ043-0108.npy -tests/data/ljspeech/wavs/LJ029-0076.wav|tests/data/ljspeech/wavs/LJ029-0076.npy -tests/data/ljspeech/wavs/LJ008-0095.wav|tests/data/ljspeech/wavs/LJ008-0095.npy -tests/data/ljspeech/wavs/LJ027-0153.wav|tests/data/ljspeech/wavs/LJ027-0153.npy -tests/data/ljspeech/wavs/LJ040-0081.wav|tests/data/ljspeech/wavs/LJ040-0081.npy -tests/data/ljspeech/wavs/LJ049-0188.wav|tests/data/ljspeech/wavs/LJ049-0188.npy -tests/data/ljspeech/wavs/LJ005-0248.wav|tests/data/ljspeech/wavs/LJ005-0248.npy -tests/data/ljspeech/wavs/LJ032-0151.wav|tests/data/ljspeech/wavs/LJ032-0151.npy -tests/data/ljspeech/wavs/LJ010-0075.wav|tests/data/ljspeech/wavs/LJ010-0075.npy -tests/data/ljspeech/wavs/LJ008-0089.wav|tests/data/ljspeech/wavs/LJ008-0089.npy -tests/data/ljspeech/wavs/LJ005-0056.wav|tests/data/ljspeech/wavs/LJ005-0056.npy -tests/data/ljspeech/wavs/LJ039-0213.wav|tests/data/ljspeech/wavs/LJ039-0213.npy -tests/data/ljspeech/wavs/LJ005-0245.wav|tests/data/ljspeech/wavs/LJ005-0245.npy -tests/data/ljspeech/wavs/LJ048-0165.wav|tests/data/ljspeech/wavs/LJ048-0165.npy -tests/data/ljspeech/wavs/LJ010-0289.wav|tests/data/ljspeech/wavs/LJ010-0289.npy -tests/data/ljspeech/wavs/LJ050-0084.wav|tests/data/ljspeech/wavs/LJ050-0084.npy -tests/data/ljspeech/wavs/LJ008-0075.wav|tests/data/ljspeech/wavs/LJ008-0075.npy -tests/data/ljspeech/wavs/LJ028-0458.wav|tests/data/ljspeech/wavs/LJ028-0458.npy -tests/data/ljspeech/wavs/LJ030-0176.wav|tests/data/ljspeech/wavs/LJ030-0176.npy -tests/data/ljspeech/wavs/LJ030-0204.wav|tests/data/ljspeech/wavs/LJ030-0204.npy -tests/data/ljspeech/wavs/LJ042-0222.wav|tests/data/ljspeech/wavs/LJ042-0222.npy -tests/data/ljspeech/wavs/LJ028-0227.wav|tests/data/ljspeech/wavs/LJ028-0227.npy -tests/data/ljspeech/wavs/LJ006-0216.wav|tests/data/ljspeech/wavs/LJ006-0216.npy -tests/data/ljspeech/wavs/LJ032-0113.wav|tests/data/ljspeech/wavs/LJ032-0113.npy -tests/data/ljspeech/wavs/LJ040-0122.wav|tests/data/ljspeech/wavs/LJ040-0122.npy -tests/data/ljspeech/wavs/LJ011-0215.wav|tests/data/ljspeech/wavs/LJ011-0215.npy -tests/data/ljspeech/wavs/LJ032-0153.wav|tests/data/ljspeech/wavs/LJ032-0153.npy -tests/data/ljspeech/wavs/LJ032-0177.wav|tests/data/ljspeech/wavs/LJ032-0177.npy -tests/data/ljspeech/wavs/LJ034-0056.wav|tests/data/ljspeech/wavs/LJ034-0056.npy -tests/data/ljspeech/wavs/LJ009-0011.wav|tests/data/ljspeech/wavs/LJ009-0011.npy -tests/data/ljspeech/wavs/LJ041-0084.wav|tests/data/ljspeech/wavs/LJ041-0084.npy -tests/data/ljspeech/wavs/LJ045-0042.wav|tests/data/ljspeech/wavs/LJ045-0042.npy -tests/data/ljspeech/wavs/LJ045-0140.wav|tests/data/ljspeech/wavs/LJ045-0140.npy -tests/data/ljspeech/wavs/LJ045-0028.wav|tests/data/ljspeech/wavs/LJ045-0028.npy -tests/data/ljspeech/wavs/LJ025-0052.wav|tests/data/ljspeech/wavs/LJ025-0052.npy -tests/data/ljspeech/wavs/LJ033-0155.wav|tests/data/ljspeech/wavs/LJ033-0155.npy -tests/data/ljspeech/wavs/LJ041-0160.wav|tests/data/ljspeech/wavs/LJ041-0160.npy -tests/data/ljspeech/wavs/LJ009-0180.wav|tests/data/ljspeech/wavs/LJ009-0180.npy -tests/data/ljspeech/wavs/LJ041-0125.wav|tests/data/ljspeech/wavs/LJ041-0125.npy -tests/data/ljspeech/wavs/LJ031-0149.wav|tests/data/ljspeech/wavs/LJ031-0149.npy -tests/data/ljspeech/wavs/LJ001-0027.wav|tests/data/ljspeech/wavs/LJ001-0027.npy -tests/data/ljspeech/wavs/LJ033-0144.wav|tests/data/ljspeech/wavs/LJ033-0144.npy -tests/data/ljspeech/wavs/LJ029-0105.wav|tests/data/ljspeech/wavs/LJ029-0105.npy -tests/data/ljspeech/wavs/LJ030-0038.wav|tests/data/ljspeech/wavs/LJ030-0038.npy -tests/data/ljspeech/wavs/LJ029-0149.wav|tests/data/ljspeech/wavs/LJ029-0149.npy -tests/data/ljspeech/wavs/LJ003-0294.wav|tests/data/ljspeech/wavs/LJ003-0294.npy -tests/data/ljspeech/wavs/LJ050-0024.wav|tests/data/ljspeech/wavs/LJ050-0024.npy -tests/data/ljspeech/wavs/LJ017-0143.wav|tests/data/ljspeech/wavs/LJ017-0143.npy -tests/data/ljspeech/wavs/LJ031-0118.wav|tests/data/ljspeech/wavs/LJ031-0118.npy -tests/data/ljspeech/wavs/LJ016-0043.wav|tests/data/ljspeech/wavs/LJ016-0043.npy -tests/data/ljspeech/wavs/LJ001-0142.wav|tests/data/ljspeech/wavs/LJ001-0142.npy -tests/data/ljspeech/wavs/LJ016-0425.wav|tests/data/ljspeech/wavs/LJ016-0425.npy -tests/data/ljspeech/wavs/LJ016-0047.wav|tests/data/ljspeech/wavs/LJ016-0047.npy -tests/data/ljspeech/wavs/LJ009-0130.wav|tests/data/ljspeech/wavs/LJ009-0130.npy -tests/data/ljspeech/wavs/LJ002-0292.wav|tests/data/ljspeech/wavs/LJ002-0292.npy -tests/data/ljspeech/wavs/LJ050-0009.wav|tests/data/ljspeech/wavs/LJ050-0009.npy -tests/data/ljspeech/wavs/LJ034-0192.wav|tests/data/ljspeech/wavs/LJ034-0192.npy -tests/data/ljspeech/wavs/LJ007-0090.wav|tests/data/ljspeech/wavs/LJ007-0090.npy -tests/data/ljspeech/wavs/LJ030-0175.wav|tests/data/ljspeech/wavs/LJ030-0175.npy -tests/data/ljspeech/wavs/LJ009-0227.wav|tests/data/ljspeech/wavs/LJ009-0227.npy -tests/data/ljspeech/wavs/LJ030-0145.wav|tests/data/ljspeech/wavs/LJ030-0145.npy -tests/data/ljspeech/wavs/LJ034-0150.wav|tests/data/ljspeech/wavs/LJ034-0150.npy -tests/data/ljspeech/wavs/LJ042-0238.wav|tests/data/ljspeech/wavs/LJ042-0238.npy -tests/data/ljspeech/wavs/LJ019-0205.wav|tests/data/ljspeech/wavs/LJ019-0205.npy -tests/data/ljspeech/wavs/LJ031-0039.wav|tests/data/ljspeech/wavs/LJ031-0039.npy -tests/data/ljspeech/wavs/LJ050-0087.wav|tests/data/ljspeech/wavs/LJ050-0087.npy -tests/data/ljspeech/wavs/LJ047-0214.wav|tests/data/ljspeech/wavs/LJ047-0214.npy -tests/data/ljspeech/wavs/LJ015-0235.wav|tests/data/ljspeech/wavs/LJ015-0235.npy -tests/data/ljspeech/wavs/LJ049-0045.wav|tests/data/ljspeech/wavs/LJ049-0045.npy -tests/data/ljspeech/wavs/LJ031-0015.wav|tests/data/ljspeech/wavs/LJ031-0015.npy -tests/data/ljspeech/wavs/LJ019-0075.wav|tests/data/ljspeech/wavs/LJ019-0075.npy -tests/data/ljspeech/wavs/LJ048-0259.wav|tests/data/ljspeech/wavs/LJ048-0259.npy -tests/data/ljspeech/wavs/LJ046-0150.wav|tests/data/ljspeech/wavs/LJ046-0150.npy -tests/data/ljspeech/wavs/LJ046-0211.wav|tests/data/ljspeech/wavs/LJ046-0211.npy -tests/data/ljspeech/wavs/LJ043-0009.wav|tests/data/ljspeech/wavs/LJ043-0009.npy -tests/data/ljspeech/wavs/LJ017-0140.wav|tests/data/ljspeech/wavs/LJ017-0140.npy -tests/data/ljspeech/wavs/LJ018-0047.wav|tests/data/ljspeech/wavs/LJ018-0047.npy -tests/data/ljspeech/wavs/LJ018-0065.wav|tests/data/ljspeech/wavs/LJ018-0065.npy -tests/data/ljspeech/wavs/LJ003-0116.wav|tests/data/ljspeech/wavs/LJ003-0116.npy -tests/data/ljspeech/wavs/LJ017-0004.wav|tests/data/ljspeech/wavs/LJ017-0004.npy -tests/data/ljspeech/wavs/LJ034-0120.wav|tests/data/ljspeech/wavs/LJ034-0120.npy -tests/data/ljspeech/wavs/LJ018-0102.wav|tests/data/ljspeech/wavs/LJ018-0102.npy -tests/data/ljspeech/wavs/LJ017-0269.wav|tests/data/ljspeech/wavs/LJ017-0269.npy -tests/data/ljspeech/wavs/LJ019-0223.wav|tests/data/ljspeech/wavs/LJ019-0223.npy -tests/data/ljspeech/wavs/LJ021-0173.wav|tests/data/ljspeech/wavs/LJ021-0173.npy -tests/data/ljspeech/wavs/LJ003-0250.wav|tests/data/ljspeech/wavs/LJ003-0250.npy -tests/data/ljspeech/wavs/LJ050-0242.wav|tests/data/ljspeech/wavs/LJ050-0242.npy -tests/data/ljspeech/wavs/LJ021-0113.wav|tests/data/ljspeech/wavs/LJ021-0113.npy -tests/data/ljspeech/wavs/LJ006-0101.wav|tests/data/ljspeech/wavs/LJ006-0101.npy -tests/data/ljspeech/wavs/LJ017-0268.wav|tests/data/ljspeech/wavs/LJ017-0268.npy -tests/data/ljspeech/wavs/LJ007-0038.wav|tests/data/ljspeech/wavs/LJ007-0038.npy -tests/data/ljspeech/wavs/LJ031-0090.wav|tests/data/ljspeech/wavs/LJ031-0090.npy -tests/data/ljspeech/wavs/LJ044-0183.wav|tests/data/ljspeech/wavs/LJ044-0183.npy -tests/data/ljspeech/wavs/LJ038-0211.wav|tests/data/ljspeech/wavs/LJ038-0211.npy -tests/data/ljspeech/wavs/LJ026-0090.wav|tests/data/ljspeech/wavs/LJ026-0090.npy -tests/data/ljspeech/wavs/LJ040-0144.wav|tests/data/ljspeech/wavs/LJ040-0144.npy -tests/data/ljspeech/wavs/LJ011-0070.wav|tests/data/ljspeech/wavs/LJ011-0070.npy -tests/data/ljspeech/wavs/LJ008-0048.wav|tests/data/ljspeech/wavs/LJ008-0048.npy -tests/data/ljspeech/wavs/LJ050-0169.wav|tests/data/ljspeech/wavs/LJ050-0169.npy -tests/data/ljspeech/wavs/LJ046-0102.wav|tests/data/ljspeech/wavs/LJ046-0102.npy -tests/data/ljspeech/wavs/LJ032-0078.wav|tests/data/ljspeech/wavs/LJ032-0078.npy -tests/data/ljspeech/wavs/LJ046-0089.wav|tests/data/ljspeech/wavs/LJ046-0089.npy -tests/data/ljspeech/wavs/LJ044-0137.wav|tests/data/ljspeech/wavs/LJ044-0137.npy -tests/data/ljspeech/wavs/LJ049-0155.wav|tests/data/ljspeech/wavs/LJ049-0155.npy -tests/data/ljspeech/wavs/LJ049-0104.wav|tests/data/ljspeech/wavs/LJ049-0104.npy -tests/data/ljspeech/wavs/LJ050-0259.wav|tests/data/ljspeech/wavs/LJ050-0259.npy -tests/data/ljspeech/wavs/LJ003-0181.wav|tests/data/ljspeech/wavs/LJ003-0181.npy -tests/data/ljspeech/wavs/LJ014-0162.wav|tests/data/ljspeech/wavs/LJ014-0162.npy -tests/data/ljspeech/wavs/LJ032-0071.wav|tests/data/ljspeech/wavs/LJ032-0071.npy -tests/data/ljspeech/wavs/LJ015-0057.wav|tests/data/ljspeech/wavs/LJ015-0057.npy -tests/data/ljspeech/wavs/LJ010-0244.wav|tests/data/ljspeech/wavs/LJ010-0244.npy -tests/data/ljspeech/wavs/LJ011-0199.wav|tests/data/ljspeech/wavs/LJ011-0199.npy -tests/data/ljspeech/wavs/LJ010-0082.wav|tests/data/ljspeech/wavs/LJ010-0082.npy -tests/data/ljspeech/wavs/LJ013-0071.wav|tests/data/ljspeech/wavs/LJ013-0071.npy -tests/data/ljspeech/wavs/LJ005-0219.wav|tests/data/ljspeech/wavs/LJ005-0219.npy -tests/data/ljspeech/wavs/LJ031-0228.wav|tests/data/ljspeech/wavs/LJ031-0228.npy -tests/data/ljspeech/wavs/LJ010-0212.wav|tests/data/ljspeech/wavs/LJ010-0212.npy -tests/data/ljspeech/wavs/LJ011-0195.wav|tests/data/ljspeech/wavs/LJ011-0195.npy -tests/data/ljspeech/wavs/LJ028-0459.wav|tests/data/ljspeech/wavs/LJ028-0459.npy -tests/data/ljspeech/wavs/LJ021-0124.wav|tests/data/ljspeech/wavs/LJ021-0124.npy -tests/data/ljspeech/wavs/LJ049-0195.wav|tests/data/ljspeech/wavs/LJ049-0195.npy -tests/data/ljspeech/wavs/LJ047-0200.wav|tests/data/ljspeech/wavs/LJ047-0200.npy -tests/data/ljspeech/wavs/LJ009-0255.wav|tests/data/ljspeech/wavs/LJ009-0255.npy -tests/data/ljspeech/wavs/LJ012-0256.wav|tests/data/ljspeech/wavs/LJ012-0256.npy -tests/data/ljspeech/wavs/LJ032-0063.wav|tests/data/ljspeech/wavs/LJ032-0063.npy -tests/data/ljspeech/wavs/LJ032-0238.wav|tests/data/ljspeech/wavs/LJ032-0238.npy -tests/data/ljspeech/wavs/LJ007-0231.wav|tests/data/ljspeech/wavs/LJ007-0231.npy -tests/data/ljspeech/wavs/LJ026-0149.wav|tests/data/ljspeech/wavs/LJ026-0149.npy -tests/data/ljspeech/wavs/LJ027-0139.wav|tests/data/ljspeech/wavs/LJ027-0139.npy -tests/data/ljspeech/wavs/LJ044-0238.wav|tests/data/ljspeech/wavs/LJ044-0238.npy -tests/data/ljspeech/wavs/LJ011-0078.wav|tests/data/ljspeech/wavs/LJ011-0078.npy -tests/data/ljspeech/wavs/LJ005-0003.wav|tests/data/ljspeech/wavs/LJ005-0003.npy -tests/data/ljspeech/wavs/LJ044-0110.wav|tests/data/ljspeech/wavs/LJ044-0110.npy -tests/data/ljspeech/wavs/LJ005-0048.wav|tests/data/ljspeech/wavs/LJ005-0048.npy -tests/data/ljspeech/wavs/LJ007-0195.wav|tests/data/ljspeech/wavs/LJ007-0195.npy -tests/data/ljspeech/wavs/LJ005-0030.wav|tests/data/ljspeech/wavs/LJ005-0030.npy -tests/data/ljspeech/wavs/LJ004-0250.wav|tests/data/ljspeech/wavs/LJ004-0250.npy -tests/data/ljspeech/wavs/LJ017-0208.wav|tests/data/ljspeech/wavs/LJ017-0208.npy -tests/data/ljspeech/wavs/LJ049-0166.wav|tests/data/ljspeech/wavs/LJ049-0166.npy -tests/data/ljspeech/wavs/LJ048-0059.wav|tests/data/ljspeech/wavs/LJ048-0059.npy -tests/data/ljspeech/wavs/LJ029-0034.wav|tests/data/ljspeech/wavs/LJ029-0034.npy -tests/data/ljspeech/wavs/LJ014-0059.wav|tests/data/ljspeech/wavs/LJ014-0059.npy -tests/data/ljspeech/wavs/LJ026-0147.wav|tests/data/ljspeech/wavs/LJ026-0147.npy -tests/data/ljspeech/wavs/LJ028-0130.wav|tests/data/ljspeech/wavs/LJ028-0130.npy -tests/data/ljspeech/wavs/LJ038-0176.wav|tests/data/ljspeech/wavs/LJ038-0176.npy -tests/data/ljspeech/wavs/LJ025-0151.wav|tests/data/ljspeech/wavs/LJ025-0151.npy -tests/data/ljspeech/wavs/LJ011-0106.wav|tests/data/ljspeech/wavs/LJ011-0106.npy -tests/data/ljspeech/wavs/LJ036-0141.wav|tests/data/ljspeech/wavs/LJ036-0141.npy -tests/data/ljspeech/wavs/LJ034-0123.wav|tests/data/ljspeech/wavs/LJ034-0123.npy -tests/data/ljspeech/wavs/LJ050-0158.wav|tests/data/ljspeech/wavs/LJ050-0158.npy -tests/data/ljspeech/wavs/LJ033-0085.wav|tests/data/ljspeech/wavs/LJ033-0085.npy -tests/data/ljspeech/wavs/LJ005-0272.wav|tests/data/ljspeech/wavs/LJ005-0272.npy -tests/data/ljspeech/wavs/LJ011-0046.wav|tests/data/ljspeech/wavs/LJ011-0046.npy -tests/data/ljspeech/wavs/LJ014-0120.wav|tests/data/ljspeech/wavs/LJ014-0120.npy -tests/data/ljspeech/wavs/LJ018-0030.wav|tests/data/ljspeech/wavs/LJ018-0030.npy -tests/data/ljspeech/wavs/LJ012-0099.wav|tests/data/ljspeech/wavs/LJ012-0099.npy -tests/data/ljspeech/wavs/LJ044-0147.wav|tests/data/ljspeech/wavs/LJ044-0147.npy -tests/data/ljspeech/wavs/LJ035-0158.wav|tests/data/ljspeech/wavs/LJ035-0158.npy -tests/data/ljspeech/wavs/LJ019-0026.wav|tests/data/ljspeech/wavs/LJ019-0026.npy -tests/data/ljspeech/wavs/LJ039-0083.wav|tests/data/ljspeech/wavs/LJ039-0083.npy -tests/data/ljspeech/wavs/LJ019-0053.wav|tests/data/ljspeech/wavs/LJ019-0053.npy -tests/data/ljspeech/wavs/LJ047-0123.wav|tests/data/ljspeech/wavs/LJ047-0123.npy -tests/data/ljspeech/wavs/LJ018-0325.wav|tests/data/ljspeech/wavs/LJ018-0325.npy -tests/data/ljspeech/wavs/LJ028-0292.wav|tests/data/ljspeech/wavs/LJ028-0292.npy -tests/data/ljspeech/wavs/LJ048-0084.wav|tests/data/ljspeech/wavs/LJ048-0084.npy -tests/data/ljspeech/wavs/LJ048-0198.wav|tests/data/ljspeech/wavs/LJ048-0198.npy -tests/data/ljspeech/wavs/LJ028-0408.wav|tests/data/ljspeech/wavs/LJ028-0408.npy -tests/data/ljspeech/wavs/LJ045-0144.wav|tests/data/ljspeech/wavs/LJ045-0144.npy -tests/data/ljspeech/wavs/LJ013-0221.wav|tests/data/ljspeech/wavs/LJ013-0221.npy -tests/data/ljspeech/wavs/LJ012-0286.wav|tests/data/ljspeech/wavs/LJ012-0286.npy -tests/data/ljspeech/wavs/LJ039-0043.wav|tests/data/ljspeech/wavs/LJ039-0043.npy -tests/data/ljspeech/wavs/LJ032-0170.wav|tests/data/ljspeech/wavs/LJ032-0170.npy -tests/data/ljspeech/wavs/LJ035-0130.wav|tests/data/ljspeech/wavs/LJ035-0130.npy -tests/data/ljspeech/wavs/LJ046-0047.wav|tests/data/ljspeech/wavs/LJ046-0047.npy -tests/data/ljspeech/wavs/LJ019-0224.wav|tests/data/ljspeech/wavs/LJ019-0224.npy -tests/data/ljspeech/wavs/LJ031-0002.wav|tests/data/ljspeech/wavs/LJ031-0002.npy -tests/data/ljspeech/wavs/LJ005-0080.wav|tests/data/ljspeech/wavs/LJ005-0080.npy -tests/data/ljspeech/wavs/LJ042-0211.wav|tests/data/ljspeech/wavs/LJ042-0211.npy -tests/data/ljspeech/wavs/LJ047-0122.wav|tests/data/ljspeech/wavs/LJ047-0122.npy -tests/data/ljspeech/wavs/LJ020-0082.wav|tests/data/ljspeech/wavs/LJ020-0082.npy -tests/data/ljspeech/wavs/LJ020-0099.wav|tests/data/ljspeech/wavs/LJ020-0099.npy -tests/data/ljspeech/wavs/LJ007-0132.wav|tests/data/ljspeech/wavs/LJ007-0132.npy -tests/data/ljspeech/wavs/LJ035-0113.wav|tests/data/ljspeech/wavs/LJ035-0113.npy -tests/data/ljspeech/wavs/LJ019-0393.wav|tests/data/ljspeech/wavs/LJ019-0393.npy -tests/data/ljspeech/wavs/LJ007-0056.wav|tests/data/ljspeech/wavs/LJ007-0056.npy -tests/data/ljspeech/wavs/LJ039-0210.wav|tests/data/ljspeech/wavs/LJ039-0210.npy -tests/data/ljspeech/wavs/LJ007-0137.wav|tests/data/ljspeech/wavs/LJ007-0137.npy -tests/data/ljspeech/wavs/LJ006-0223.wav|tests/data/ljspeech/wavs/LJ006-0223.npy -tests/data/ljspeech/wavs/LJ033-0096.wav|tests/data/ljspeech/wavs/LJ033-0096.npy -tests/data/ljspeech/wavs/LJ003-0337.wav|tests/data/ljspeech/wavs/LJ003-0337.npy -tests/data/ljspeech/wavs/LJ025-0016.wav|tests/data/ljspeech/wavs/LJ025-0016.npy -tests/data/ljspeech/wavs/LJ009-0117.wav|tests/data/ljspeech/wavs/LJ009-0117.npy -tests/data/ljspeech/wavs/LJ004-0128.wav|tests/data/ljspeech/wavs/LJ004-0128.npy -tests/data/ljspeech/wavs/LJ037-0233.wav|tests/data/ljspeech/wavs/LJ037-0233.npy -tests/data/ljspeech/wavs/LJ040-0187.wav|tests/data/ljspeech/wavs/LJ040-0187.npy -tests/data/ljspeech/wavs/LJ029-0101.wav|tests/data/ljspeech/wavs/LJ029-0101.npy -tests/data/ljspeech/wavs/LJ015-0268.wav|tests/data/ljspeech/wavs/LJ015-0268.npy -tests/data/ljspeech/wavs/LJ029-0055.wav|tests/data/ljspeech/wavs/LJ029-0055.npy -tests/data/ljspeech/wavs/LJ025-0102.wav|tests/data/ljspeech/wavs/LJ025-0102.npy -tests/data/ljspeech/wavs/LJ025-0060.wav|tests/data/ljspeech/wavs/LJ025-0060.npy -tests/data/ljspeech/wavs/LJ006-0028.wav|tests/data/ljspeech/wavs/LJ006-0028.npy -tests/data/ljspeech/wavs/LJ037-0067.wav|tests/data/ljspeech/wavs/LJ037-0067.npy -tests/data/ljspeech/wavs/LJ037-0223.wav|tests/data/ljspeech/wavs/LJ037-0223.npy -tests/data/ljspeech/wavs/LJ015-0045.wav|tests/data/ljspeech/wavs/LJ015-0045.npy -tests/data/ljspeech/wavs/LJ016-0013.wav|tests/data/ljspeech/wavs/LJ016-0013.npy -tests/data/ljspeech/wavs/LJ010-0012.wav|tests/data/ljspeech/wavs/LJ010-0012.npy -tests/data/ljspeech/wavs/LJ014-0296.wav|tests/data/ljspeech/wavs/LJ014-0296.npy -tests/data/ljspeech/wavs/LJ029-0161.wav|tests/data/ljspeech/wavs/LJ029-0161.npy -tests/data/ljspeech/wavs/LJ016-0175.wav|tests/data/ljspeech/wavs/LJ016-0175.npy -tests/data/ljspeech/wavs/LJ026-0012.wav|tests/data/ljspeech/wavs/LJ026-0012.npy -tests/data/ljspeech/wavs/LJ005-0239.wav|tests/data/ljspeech/wavs/LJ005-0239.npy -tests/data/ljspeech/wavs/LJ046-0026.wav|tests/data/ljspeech/wavs/LJ046-0026.npy -tests/data/ljspeech/wavs/LJ044-0218.wav|tests/data/ljspeech/wavs/LJ044-0218.npy -tests/data/ljspeech/wavs/LJ009-0233.wav|tests/data/ljspeech/wavs/LJ009-0233.npy -tests/data/ljspeech/wavs/LJ002-0133.wav|tests/data/ljspeech/wavs/LJ002-0133.npy -tests/data/ljspeech/wavs/LJ025-0020.wav|tests/data/ljspeech/wavs/LJ025-0020.npy -tests/data/ljspeech/wavs/LJ004-0058.wav|tests/data/ljspeech/wavs/LJ004-0058.npy -tests/data/ljspeech/wavs/LJ009-0253.wav|tests/data/ljspeech/wavs/LJ009-0253.npy -tests/data/ljspeech/wavs/LJ009-0143.wav|tests/data/ljspeech/wavs/LJ009-0143.npy -tests/data/ljspeech/wavs/LJ050-0015.wav|tests/data/ljspeech/wavs/LJ050-0015.npy -tests/data/ljspeech/wavs/LJ034-0103.wav|tests/data/ljspeech/wavs/LJ034-0103.npy -tests/data/ljspeech/wavs/LJ028-0412.wav|tests/data/ljspeech/wavs/LJ028-0412.npy -tests/data/ljspeech/wavs/LJ045-0088.wav|tests/data/ljspeech/wavs/LJ045-0088.npy -tests/data/ljspeech/wavs/LJ044-0204.wav|tests/data/ljspeech/wavs/LJ044-0204.npy -tests/data/ljspeech/wavs/LJ044-0119.wav|tests/data/ljspeech/wavs/LJ044-0119.npy -tests/data/ljspeech/wavs/LJ017-0013.wav|tests/data/ljspeech/wavs/LJ017-0013.npy -tests/data/ljspeech/wavs/LJ008-0098.wav|tests/data/ljspeech/wavs/LJ008-0098.npy -tests/data/ljspeech/wavs/LJ042-0044.wav|tests/data/ljspeech/wavs/LJ042-0044.npy -tests/data/ljspeech/wavs/LJ029-0016.wav|tests/data/ljspeech/wavs/LJ029-0016.npy -tests/data/ljspeech/wavs/LJ049-0116.wav|tests/data/ljspeech/wavs/LJ049-0116.npy -tests/data/ljspeech/wavs/LJ002-0046.wav|tests/data/ljspeech/wavs/LJ002-0046.npy -tests/data/ljspeech/wavs/LJ016-0421.wav|tests/data/ljspeech/wavs/LJ016-0421.npy -tests/data/ljspeech/wavs/LJ025-0129.wav|tests/data/ljspeech/wavs/LJ025-0129.npy -tests/data/ljspeech/wavs/LJ037-0011.wav|tests/data/ljspeech/wavs/LJ037-0011.npy -tests/data/ljspeech/wavs/LJ026-0044.wav|tests/data/ljspeech/wavs/LJ026-0044.npy -tests/data/ljspeech/wavs/LJ014-0232.wav|tests/data/ljspeech/wavs/LJ014-0232.npy -tests/data/ljspeech/wavs/LJ033-0190.wav|tests/data/ljspeech/wavs/LJ033-0190.npy -tests/data/ljspeech/wavs/LJ008-0316.wav|tests/data/ljspeech/wavs/LJ008-0316.npy -tests/data/ljspeech/wavs/LJ037-0025.wav|tests/data/ljspeech/wavs/LJ037-0025.npy -tests/data/ljspeech/wavs/LJ037-0059.wav|tests/data/ljspeech/wavs/LJ037-0059.npy -tests/data/ljspeech/wavs/LJ041-0170.wav|tests/data/ljspeech/wavs/LJ041-0170.npy -tests/data/ljspeech/wavs/LJ032-0034.wav|tests/data/ljspeech/wavs/LJ032-0034.npy -tests/data/ljspeech/wavs/LJ016-0259.wav|tests/data/ljspeech/wavs/LJ016-0259.npy -tests/data/ljspeech/wavs/LJ006-0071.wav|tests/data/ljspeech/wavs/LJ006-0071.npy -tests/data/ljspeech/wavs/LJ033-0195.wav|tests/data/ljspeech/wavs/LJ033-0195.npy -tests/data/ljspeech/wavs/LJ008-0183.wav|tests/data/ljspeech/wavs/LJ008-0183.npy -tests/data/ljspeech/wavs/LJ008-0160.wav|tests/data/ljspeech/wavs/LJ008-0160.npy -tests/data/ljspeech/wavs/LJ029-0212.wav|tests/data/ljspeech/wavs/LJ029-0212.npy -tests/data/ljspeech/wavs/LJ048-0062.wav|tests/data/ljspeech/wavs/LJ048-0062.npy -tests/data/ljspeech/wavs/LJ014-0169.wav|tests/data/ljspeech/wavs/LJ014-0169.npy -tests/data/ljspeech/wavs/LJ033-0078.wav|tests/data/ljspeech/wavs/LJ033-0078.npy -tests/data/ljspeech/wavs/LJ048-0222.wav|tests/data/ljspeech/wavs/LJ048-0222.npy -tests/data/ljspeech/wavs/LJ011-0094.wav|tests/data/ljspeech/wavs/LJ011-0094.npy -tests/data/ljspeech/wavs/LJ004-0038.wav|tests/data/ljspeech/wavs/LJ004-0038.npy -tests/data/ljspeech/wavs/LJ045-0052.wav|tests/data/ljspeech/wavs/LJ045-0052.npy -tests/data/ljspeech/wavs/LJ045-0057.wav|tests/data/ljspeech/wavs/LJ045-0057.npy -tests/data/ljspeech/wavs/LJ041-0114.wav|tests/data/ljspeech/wavs/LJ041-0114.npy -tests/data/ljspeech/wavs/LJ025-0152.wav|tests/data/ljspeech/wavs/LJ025-0152.npy -tests/data/ljspeech/wavs/LJ020-0061.wav|tests/data/ljspeech/wavs/LJ020-0061.npy -tests/data/ljspeech/wavs/LJ047-0110.wav|tests/data/ljspeech/wavs/LJ047-0110.npy -tests/data/ljspeech/wavs/LJ032-0076.wav|tests/data/ljspeech/wavs/LJ032-0076.npy -tests/data/ljspeech/wavs/LJ037-0174.wav|tests/data/ljspeech/wavs/LJ037-0174.npy -tests/data/ljspeech/wavs/LJ048-0256.wav|tests/data/ljspeech/wavs/LJ048-0256.npy -tests/data/ljspeech/wavs/LJ022-0104.wav|tests/data/ljspeech/wavs/LJ022-0104.npy -tests/data/ljspeech/wavs/LJ030-0198.wav|tests/data/ljspeech/wavs/LJ030-0198.npy -tests/data/ljspeech/wavs/LJ041-0078.wav|tests/data/ljspeech/wavs/LJ041-0078.npy -tests/data/ljspeech/wavs/LJ011-0272.wav|tests/data/ljspeech/wavs/LJ011-0272.npy -tests/data/ljspeech/wavs/LJ006-0004.wav|tests/data/ljspeech/wavs/LJ006-0004.npy -tests/data/ljspeech/wavs/LJ005-0293.wav|tests/data/ljspeech/wavs/LJ005-0293.npy -tests/data/ljspeech/wavs/LJ032-0101.wav|tests/data/ljspeech/wavs/LJ032-0101.npy -tests/data/ljspeech/wavs/LJ008-0303.wav|tests/data/ljspeech/wavs/LJ008-0303.npy -tests/data/ljspeech/wavs/LJ008-0302.wav|tests/data/ljspeech/wavs/LJ008-0302.npy -tests/data/ljspeech/wavs/LJ009-0226.wav|tests/data/ljspeech/wavs/LJ009-0226.npy -tests/data/ljspeech/wavs/LJ001-0127.wav|tests/data/ljspeech/wavs/LJ001-0127.npy -tests/data/ljspeech/wavs/LJ009-0220.wav|tests/data/ljspeech/wavs/LJ009-0220.npy -tests/data/ljspeech/wavs/LJ003-0262.wav|tests/data/ljspeech/wavs/LJ003-0262.npy -tests/data/ljspeech/wavs/LJ016-0299.wav|tests/data/ljspeech/wavs/LJ016-0299.npy -tests/data/ljspeech/wavs/LJ028-0145.wav|tests/data/ljspeech/wavs/LJ028-0145.npy -tests/data/ljspeech/wavs/LJ028-0332.wav|tests/data/ljspeech/wavs/LJ028-0332.npy -tests/data/ljspeech/wavs/LJ022-0162.wav|tests/data/ljspeech/wavs/LJ022-0162.npy -tests/data/ljspeech/wavs/LJ048-0164.wav|tests/data/ljspeech/wavs/LJ048-0164.npy -tests/data/ljspeech/wavs/LJ038-0140.wav|tests/data/ljspeech/wavs/LJ038-0140.npy -tests/data/ljspeech/wavs/LJ016-0295.wav|tests/data/ljspeech/wavs/LJ016-0295.npy -tests/data/ljspeech/wavs/LJ001-0076.wav|tests/data/ljspeech/wavs/LJ001-0076.npy -tests/data/ljspeech/wavs/LJ007-0243.wav|tests/data/ljspeech/wavs/LJ007-0243.npy -tests/data/ljspeech/wavs/LJ044-0029.wav|tests/data/ljspeech/wavs/LJ044-0029.npy -tests/data/ljspeech/wavs/LJ044-0054.wav|tests/data/ljspeech/wavs/LJ044-0054.npy -tests/data/ljspeech/wavs/LJ011-0006.wav|tests/data/ljspeech/wavs/LJ011-0006.npy -tests/data/ljspeech/wavs/LJ006-0299.wav|tests/data/ljspeech/wavs/LJ006-0299.npy -tests/data/ljspeech/wavs/LJ046-0214.wav|tests/data/ljspeech/wavs/LJ046-0214.npy -tests/data/ljspeech/wavs/LJ018-0005.wav|tests/data/ljspeech/wavs/LJ018-0005.npy -tests/data/ljspeech/wavs/LJ050-0188.wav|tests/data/ljspeech/wavs/LJ050-0188.npy -tests/data/ljspeech/wavs/LJ036-0110.wav|tests/data/ljspeech/wavs/LJ036-0110.npy -tests/data/ljspeech/wavs/LJ018-0275.wav|tests/data/ljspeech/wavs/LJ018-0275.npy -tests/data/ljspeech/wavs/LJ005-0124.wav|tests/data/ljspeech/wavs/LJ005-0124.npy -tests/data/ljspeech/wavs/LJ016-0119.wav|tests/data/ljspeech/wavs/LJ016-0119.npy -tests/data/ljspeech/wavs/LJ003-0168.wav|tests/data/ljspeech/wavs/LJ003-0168.npy -tests/data/ljspeech/wavs/LJ045-0036.wav|tests/data/ljspeech/wavs/LJ045-0036.npy -tests/data/ljspeech/wavs/LJ019-0024.wav|tests/data/ljspeech/wavs/LJ019-0024.npy -tests/data/ljspeech/wavs/LJ007-0011.wav|tests/data/ljspeech/wavs/LJ007-0011.npy -tests/data/ljspeech/wavs/LJ040-0095.wav|tests/data/ljspeech/wavs/LJ040-0095.npy -tests/data/ljspeech/wavs/LJ039-0136.wav|tests/data/ljspeech/wavs/LJ039-0136.npy -tests/data/ljspeech/wavs/LJ010-0122.wav|tests/data/ljspeech/wavs/LJ010-0122.npy -tests/data/ljspeech/wavs/LJ011-0088.wav|tests/data/ljspeech/wavs/LJ011-0088.npy -tests/data/ljspeech/wavs/LJ037-0263.wav|tests/data/ljspeech/wavs/LJ037-0263.npy -tests/data/ljspeech/wavs/LJ014-0019.wav|tests/data/ljspeech/wavs/LJ014-0019.npy -tests/data/ljspeech/wavs/LJ007-0184.wav|tests/data/ljspeech/wavs/LJ007-0184.npy -tests/data/ljspeech/wavs/LJ005-0255.wav|tests/data/ljspeech/wavs/LJ005-0255.npy -tests/data/ljspeech/wavs/LJ007-0093.wav|tests/data/ljspeech/wavs/LJ007-0093.npy -tests/data/ljspeech/wavs/LJ035-0201.wav|tests/data/ljspeech/wavs/LJ035-0201.npy -tests/data/ljspeech/wavs/LJ015-0082.wav|tests/data/ljspeech/wavs/LJ015-0082.npy -tests/data/ljspeech/wavs/LJ010-0126.wav|tests/data/ljspeech/wavs/LJ010-0126.npy -tests/data/ljspeech/wavs/LJ005-0246.wav|tests/data/ljspeech/wavs/LJ005-0246.npy -tests/data/ljspeech/wavs/LJ037-0243.wav|tests/data/ljspeech/wavs/LJ037-0243.npy -tests/data/ljspeech/wavs/LJ015-0168.wav|tests/data/ljspeech/wavs/LJ015-0168.npy -tests/data/ljspeech/wavs/LJ007-0017.wav|tests/data/ljspeech/wavs/LJ007-0017.npy -tests/data/ljspeech/wavs/LJ044-0068.wav|tests/data/ljspeech/wavs/LJ044-0068.npy -tests/data/ljspeech/wavs/LJ011-0080.wav|tests/data/ljspeech/wavs/LJ011-0080.npy -tests/data/ljspeech/wavs/LJ005-0027.wav|tests/data/ljspeech/wavs/LJ005-0027.npy -tests/data/ljspeech/wavs/LJ044-0100.wav|tests/data/ljspeech/wavs/LJ044-0100.npy -tests/data/ljspeech/wavs/LJ012-0051.wav|tests/data/ljspeech/wavs/LJ012-0051.npy -tests/data/ljspeech/wavs/LJ046-0250.wav|tests/data/ljspeech/wavs/LJ046-0250.npy -tests/data/ljspeech/wavs/LJ011-0066.wav|tests/data/ljspeech/wavs/LJ011-0066.npy -tests/data/ljspeech/wavs/LJ049-0181.wav|tests/data/ljspeech/wavs/LJ049-0181.npy -tests/data/ljspeech/wavs/LJ011-0248.wav|tests/data/ljspeech/wavs/LJ011-0248.npy -tests/data/ljspeech/wavs/LJ012-0050.wav|tests/data/ljspeech/wavs/LJ012-0050.npy -tests/data/ljspeech/wavs/LJ050-0183.wav|tests/data/ljspeech/wavs/LJ050-0183.npy -tests/data/ljspeech/wavs/LJ007-0101.wav|tests/data/ljspeech/wavs/LJ007-0101.npy -tests/data/ljspeech/wavs/LJ032-0095.wav|tests/data/ljspeech/wavs/LJ032-0095.npy -tests/data/ljspeech/wavs/LJ018-0139.wav|tests/data/ljspeech/wavs/LJ018-0139.npy -tests/data/ljspeech/wavs/LJ046-0072.wav|tests/data/ljspeech/wavs/LJ046-0072.npy -tests/data/ljspeech/wavs/LJ019-0242.wav|tests/data/ljspeech/wavs/LJ019-0242.npy -tests/data/ljspeech/wavs/LJ005-0023.wav|tests/data/ljspeech/wavs/LJ005-0023.npy -tests/data/ljspeech/wavs/LJ049-0215.wav|tests/data/ljspeech/wavs/LJ049-0215.npy -tests/data/ljspeech/wavs/LJ004-0236.wav|tests/data/ljspeech/wavs/LJ004-0236.npy -tests/data/ljspeech/wavs/LJ040-0003.wav|tests/data/ljspeech/wavs/LJ040-0003.npy -tests/data/ljspeech/wavs/LJ014-0044.wav|tests/data/ljspeech/wavs/LJ014-0044.npy -tests/data/ljspeech/wavs/LJ042-0078.wav|tests/data/ljspeech/wavs/LJ042-0078.npy -tests/data/ljspeech/wavs/LJ039-0132.wav|tests/data/ljspeech/wavs/LJ039-0132.npy -tests/data/ljspeech/wavs/LJ039-0101.wav|tests/data/ljspeech/wavs/LJ039-0101.npy -tests/data/ljspeech/wavs/LJ011-0151.wav|tests/data/ljspeech/wavs/LJ011-0151.npy -tests/data/ljspeech/wavs/LJ035-0090.wav|tests/data/ljspeech/wavs/LJ035-0090.npy -tests/data/ljspeech/wavs/LJ012-0244.wav|tests/data/ljspeech/wavs/LJ012-0244.npy -tests/data/ljspeech/wavs/LJ028-0236.wav|tests/data/ljspeech/wavs/LJ028-0236.npy -tests/data/ljspeech/wavs/LJ006-0115.wav|tests/data/ljspeech/wavs/LJ006-0115.npy -tests/data/ljspeech/wavs/LJ032-0178.wav|tests/data/ljspeech/wavs/LJ032-0178.npy -tests/data/ljspeech/wavs/LJ002-0059.wav|tests/data/ljspeech/wavs/LJ002-0059.npy -tests/data/ljspeech/wavs/LJ013-0196.wav|tests/data/ljspeech/wavs/LJ013-0196.npy -tests/data/ljspeech/wavs/LJ005-0251.wav|tests/data/ljspeech/wavs/LJ005-0251.npy -tests/data/ljspeech/wavs/LJ031-0167.wav|tests/data/ljspeech/wavs/LJ031-0167.npy -tests/data/ljspeech/wavs/LJ006-0157.wav|tests/data/ljspeech/wavs/LJ006-0157.npy -tests/data/ljspeech/wavs/LJ029-0023.wav|tests/data/ljspeech/wavs/LJ029-0023.npy -tests/data/ljspeech/wavs/LJ047-0012.wav|tests/data/ljspeech/wavs/LJ047-0012.npy -tests/data/ljspeech/wavs/LJ047-0088.wav|tests/data/ljspeech/wavs/LJ047-0088.npy -tests/data/ljspeech/wavs/LJ043-0042.wav|tests/data/ljspeech/wavs/LJ043-0042.npy -tests/data/ljspeech/wavs/LJ011-0031.wav|tests/data/ljspeech/wavs/LJ011-0031.npy -tests/data/ljspeech/wavs/LJ007-0117.wav|tests/data/ljspeech/wavs/LJ007-0117.npy -tests/data/ljspeech/wavs/LJ007-0109.wav|tests/data/ljspeech/wavs/LJ007-0109.npy -tests/data/ljspeech/wavs/LJ040-0204.wav|tests/data/ljspeech/wavs/LJ040-0204.npy -tests/data/ljspeech/wavs/LJ050-0176.wav|tests/data/ljspeech/wavs/LJ050-0176.npy -tests/data/ljspeech/wavs/LJ031-0032.wav|tests/data/ljspeech/wavs/LJ031-0032.npy -tests/data/ljspeech/wavs/LJ013-0100.wav|tests/data/ljspeech/wavs/LJ013-0100.npy -tests/data/ljspeech/wavs/LJ028-0444.wav|tests/data/ljspeech/wavs/LJ028-0444.npy -tests/data/ljspeech/wavs/LJ043-0033.wav|tests/data/ljspeech/wavs/LJ043-0033.npy -tests/data/ljspeech/wavs/LJ048-0081.wav|tests/data/ljspeech/wavs/LJ048-0081.npy -tests/data/ljspeech/wavs/LJ008-0284.wav|tests/data/ljspeech/wavs/LJ008-0284.npy -tests/data/ljspeech/wavs/LJ006-0149.wav|tests/data/ljspeech/wavs/LJ006-0149.npy -tests/data/ljspeech/wavs/LJ040-0168.wav|tests/data/ljspeech/wavs/LJ040-0168.npy -tests/data/ljspeech/wavs/LJ006-0279.wav|tests/data/ljspeech/wavs/LJ006-0279.npy -tests/data/ljspeech/wavs/LJ042-0153.wav|tests/data/ljspeech/wavs/LJ042-0153.npy -tests/data/ljspeech/wavs/LJ008-0171.wav|tests/data/ljspeech/wavs/LJ008-0171.npy -tests/data/ljspeech/wavs/LJ010-0010.wav|tests/data/ljspeech/wavs/LJ010-0010.npy -tests/data/ljspeech/wavs/LJ030-0125.wav|tests/data/ljspeech/wavs/LJ030-0125.npy -tests/data/ljspeech/wavs/LJ030-0013.wav|tests/data/ljspeech/wavs/LJ030-0013.npy -tests/data/ljspeech/wavs/LJ008-0121.wav|tests/data/ljspeech/wavs/LJ008-0121.npy -tests/data/ljspeech/wavs/LJ008-0056.wav|tests/data/ljspeech/wavs/LJ008-0056.npy -tests/data/ljspeech/wavs/LJ007-0234.wav|tests/data/ljspeech/wavs/LJ007-0234.npy -tests/data/ljspeech/wavs/LJ050-0276.wav|tests/data/ljspeech/wavs/LJ050-0276.npy -tests/data/ljspeech/wavs/LJ043-0027.wav|tests/data/ljspeech/wavs/LJ043-0027.npy -tests/data/ljspeech/wavs/LJ010-0254.wav|tests/data/ljspeech/wavs/LJ010-0254.npy -tests/data/ljspeech/wavs/LJ014-0320.wav|tests/data/ljspeech/wavs/LJ014-0320.npy -tests/data/ljspeech/wavs/LJ043-0145.wav|tests/data/ljspeech/wavs/LJ043-0145.npy -tests/data/ljspeech/wavs/LJ045-0122.wav|tests/data/ljspeech/wavs/LJ045-0122.npy -tests/data/ljspeech/wavs/LJ016-0244.wav|tests/data/ljspeech/wavs/LJ016-0244.npy -tests/data/ljspeech/wavs/LJ033-0179.wav|tests/data/ljspeech/wavs/LJ033-0179.npy -tests/data/ljspeech/wavs/LJ004-0022.wav|tests/data/ljspeech/wavs/LJ004-0022.npy -tests/data/ljspeech/wavs/LJ041-0092.wav|tests/data/ljspeech/wavs/LJ041-0092.npy -tests/data/ljspeech/wavs/LJ041-0107.wav|tests/data/ljspeech/wavs/LJ041-0107.npy -tests/data/ljspeech/wavs/LJ004-0048.wav|tests/data/ljspeech/wavs/LJ004-0048.npy -tests/data/ljspeech/wavs/LJ041-0179.wav|tests/data/ljspeech/wavs/LJ041-0179.npy -tests/data/ljspeech/wavs/LJ018-0324.wav|tests/data/ljspeech/wavs/LJ018-0324.npy -tests/data/ljspeech/wavs/LJ025-0147.wav|tests/data/ljspeech/wavs/LJ025-0147.npy -tests/data/ljspeech/wavs/LJ004-0041.wav|tests/data/ljspeech/wavs/LJ004-0041.npy -tests/data/ljspeech/wavs/LJ046-0184.wav|tests/data/ljspeech/wavs/LJ046-0184.npy -tests/data/ljspeech/wavs/LJ016-0309.wav|tests/data/ljspeech/wavs/LJ016-0309.npy -tests/data/ljspeech/wavs/LJ027-0116.wav|tests/data/ljspeech/wavs/LJ027-0116.npy -tests/data/ljspeech/wavs/LJ031-0144.wav|tests/data/ljspeech/wavs/LJ031-0144.npy -tests/data/ljspeech/wavs/LJ014-0255.wav|tests/data/ljspeech/wavs/LJ014-0255.npy -tests/data/ljspeech/wavs/LJ016-0196.wav|tests/data/ljspeech/wavs/LJ016-0196.npy -tests/data/ljspeech/wavs/LJ036-0041.wav|tests/data/ljspeech/wavs/LJ036-0041.npy -tests/data/ljspeech/wavs/LJ016-0271.wav|tests/data/ljspeech/wavs/LJ016-0271.npy -tests/data/ljspeech/wavs/LJ038-0004.wav|tests/data/ljspeech/wavs/LJ038-0004.npy -tests/data/ljspeech/wavs/LJ015-0249.wav|tests/data/ljspeech/wavs/LJ015-0249.npy -tests/data/ljspeech/wavs/LJ003-0338.wav|tests/data/ljspeech/wavs/LJ003-0338.npy -tests/data/ljspeech/wavs/LJ041-0146.wav|tests/data/ljspeech/wavs/LJ041-0146.npy -tests/data/ljspeech/wavs/LJ002-0218.wav|tests/data/ljspeech/wavs/LJ002-0218.npy -tests/data/ljspeech/wavs/LJ003-0163.wav|tests/data/ljspeech/wavs/LJ003-0163.npy -tests/data/ljspeech/wavs/LJ003-0333.wav|tests/data/ljspeech/wavs/LJ003-0333.npy -tests/data/ljspeech/wavs/LJ045-0070.wav|tests/data/ljspeech/wavs/LJ045-0070.npy -tests/data/ljspeech/wavs/LJ047-0067.wav|tests/data/ljspeech/wavs/LJ047-0067.npy -tests/data/ljspeech/wavs/LJ016-0123.wav|tests/data/ljspeech/wavs/LJ016-0123.npy -tests/data/ljspeech/wavs/LJ016-0322.wav|tests/data/ljspeech/wavs/LJ016-0322.npy -tests/data/ljspeech/wavs/LJ035-0084.wav|tests/data/ljspeech/wavs/LJ035-0084.npy -tests/data/ljspeech/wavs/LJ026-0077.wav|tests/data/ljspeech/wavs/LJ026-0077.npy -tests/data/ljspeech/wavs/LJ002-0308.wav|tests/data/ljspeech/wavs/LJ002-0308.npy -tests/data/ljspeech/wavs/LJ035-0145.wav|tests/data/ljspeech/wavs/LJ035-0145.npy -tests/data/ljspeech/wavs/LJ044-0193.wav|tests/data/ljspeech/wavs/LJ044-0193.npy -tests/data/ljspeech/wavs/LJ014-0211.wav|tests/data/ljspeech/wavs/LJ014-0211.npy -tests/data/ljspeech/wavs/LJ003-0026.wav|tests/data/ljspeech/wavs/LJ003-0026.npy -tests/data/ljspeech/wavs/LJ046-0045.wav|tests/data/ljspeech/wavs/LJ046-0045.npy -tests/data/ljspeech/wavs/LJ019-0391.wav|tests/data/ljspeech/wavs/LJ019-0391.npy -tests/data/ljspeech/wavs/LJ027-0008.wav|tests/data/ljspeech/wavs/LJ027-0008.npy -tests/data/ljspeech/wavs/LJ042-0018.wav|tests/data/ljspeech/wavs/LJ042-0018.npy -tests/data/ljspeech/wavs/LJ027-0070.wav|tests/data/ljspeech/wavs/LJ027-0070.npy -tests/data/ljspeech/wavs/LJ016-0391.wav|tests/data/ljspeech/wavs/LJ016-0391.npy -tests/data/ljspeech/wavs/LJ034-0069.wav|tests/data/ljspeech/wavs/LJ034-0069.npy -tests/data/ljspeech/wavs/LJ019-0398.wav|tests/data/ljspeech/wavs/LJ019-0398.npy -tests/data/ljspeech/wavs/LJ002-0168.wav|tests/data/ljspeech/wavs/LJ002-0168.npy -tests/data/ljspeech/wavs/LJ016-0344.wav|tests/data/ljspeech/wavs/LJ016-0344.npy -tests/data/ljspeech/wavs/LJ049-0140.wav|tests/data/ljspeech/wavs/LJ049-0140.npy -tests/data/ljspeech/wavs/LJ003-0239.wav|tests/data/ljspeech/wavs/LJ003-0239.npy -tests/data/ljspeech/wavs/LJ014-0171.wav|tests/data/ljspeech/wavs/LJ014-0171.npy -tests/data/ljspeech/wavs/LJ035-0122.wav|tests/data/ljspeech/wavs/LJ035-0122.npy -tests/data/ljspeech/wavs/LJ038-0242.wav|tests/data/ljspeech/wavs/LJ038-0242.npy -tests/data/ljspeech/wavs/LJ035-0111.wav|tests/data/ljspeech/wavs/LJ035-0111.npy -tests/data/ljspeech/wavs/LJ014-0016.wav|tests/data/ljspeech/wavs/LJ014-0016.npy -tests/data/ljspeech/wavs/LJ016-0408.wav|tests/data/ljspeech/wavs/LJ016-0408.npy -tests/data/ljspeech/wavs/LJ019-0163.wav|tests/data/ljspeech/wavs/LJ019-0163.npy -tests/data/ljspeech/wavs/LJ013-0214.wav|tests/data/ljspeech/wavs/LJ013-0214.npy -tests/data/ljspeech/wavs/LJ014-0246.wav|tests/data/ljspeech/wavs/LJ014-0246.npy -tests/data/ljspeech/wavs/LJ014-0106.wav|tests/data/ljspeech/wavs/LJ014-0106.npy -tests/data/ljspeech/wavs/LJ002-0185.wav|tests/data/ljspeech/wavs/LJ002-0185.npy -tests/data/ljspeech/wavs/LJ017-0085.wav|tests/data/ljspeech/wavs/LJ017-0085.npy -tests/data/ljspeech/wavs/LJ035-0123.wav|tests/data/ljspeech/wavs/LJ035-0123.npy -tests/data/ljspeech/wavs/LJ042-0135.wav|tests/data/ljspeech/wavs/LJ042-0135.npy -tests/data/ljspeech/wavs/LJ035-0086.wav|tests/data/ljspeech/wavs/LJ035-0086.npy -tests/data/ljspeech/wavs/LJ031-0078.wav|tests/data/ljspeech/wavs/LJ031-0078.npy -tests/data/ljspeech/wavs/LJ045-0183.wav|tests/data/ljspeech/wavs/LJ045-0183.npy -tests/data/ljspeech/wavs/LJ015-0132.wav|tests/data/ljspeech/wavs/LJ015-0132.npy -tests/data/ljspeech/wavs/LJ035-0207.wav|tests/data/ljspeech/wavs/LJ035-0207.npy -tests/data/ljspeech/wavs/LJ003-0069.wav|tests/data/ljspeech/wavs/LJ003-0069.npy -tests/data/ljspeech/wavs/LJ047-0145.wav|tests/data/ljspeech/wavs/LJ047-0145.npy -tests/data/ljspeech/wavs/LJ019-0170.wav|tests/data/ljspeech/wavs/LJ019-0170.npy -tests/data/ljspeech/wavs/LJ034-0162.wav|tests/data/ljspeech/wavs/LJ034-0162.npy -tests/data/ljspeech/wavs/LJ047-0242.wav|tests/data/ljspeech/wavs/LJ047-0242.npy -tests/data/ljspeech/wavs/LJ018-0235.wav|tests/data/ljspeech/wavs/LJ018-0235.npy -tests/data/ljspeech/wavs/LJ006-0130.wav|tests/data/ljspeech/wavs/LJ006-0130.npy -tests/data/ljspeech/wavs/LJ041-0088.wav|tests/data/ljspeech/wavs/LJ041-0088.npy -tests/data/ljspeech/wavs/LJ048-0118.wav|tests/data/ljspeech/wavs/LJ048-0118.npy -tests/data/ljspeech/wavs/LJ008-0184.wav|tests/data/ljspeech/wavs/LJ008-0184.npy -tests/data/ljspeech/wavs/LJ019-0086.wav|tests/data/ljspeech/wavs/LJ019-0086.npy -tests/data/ljspeech/wavs/LJ048-0126.wav|tests/data/ljspeech/wavs/LJ048-0126.npy -tests/data/ljspeech/wavs/LJ041-0124.wav|tests/data/ljspeech/wavs/LJ041-0124.npy -tests/data/ljspeech/wavs/LJ020-0077.wav|tests/data/ljspeech/wavs/LJ020-0077.npy -tests/data/ljspeech/wavs/LJ047-0034.wav|tests/data/ljspeech/wavs/LJ047-0034.npy -tests/data/ljspeech/wavs/LJ003-0169.wav|tests/data/ljspeech/wavs/LJ003-0169.npy -tests/data/ljspeech/wavs/LJ013-0139.wav|tests/data/ljspeech/wavs/LJ013-0139.npy -tests/data/ljspeech/wavs/LJ007-0084.wav|tests/data/ljspeech/wavs/LJ007-0084.npy -tests/data/ljspeech/wavs/LJ030-0096.wav|tests/data/ljspeech/wavs/LJ030-0096.npy -tests/data/ljspeech/wavs/LJ018-0234.wav|tests/data/ljspeech/wavs/LJ018-0234.npy -tests/data/ljspeech/wavs/LJ001-0005.wav|tests/data/ljspeech/wavs/LJ001-0005.npy -tests/data/ljspeech/wavs/LJ030-0217.wav|tests/data/ljspeech/wavs/LJ030-0217.npy -tests/data/ljspeech/wavs/LJ048-0153.wav|tests/data/ljspeech/wavs/LJ048-0153.npy -tests/data/ljspeech/wavs/LJ016-0371.wav|tests/data/ljspeech/wavs/LJ016-0371.npy -tests/data/ljspeech/wavs/LJ022-0020.wav|tests/data/ljspeech/wavs/LJ022-0020.npy -tests/data/ljspeech/wavs/LJ006-0274.wav|tests/data/ljspeech/wavs/LJ006-0274.npy -tests/data/ljspeech/wavs/LJ045-0227.wav|tests/data/ljspeech/wavs/LJ045-0227.npy -tests/data/ljspeech/wavs/LJ040-0053.wav|tests/data/ljspeech/wavs/LJ040-0053.npy -tests/data/ljspeech/wavs/LJ016-0329.wav|tests/data/ljspeech/wavs/LJ016-0329.npy -tests/data/ljspeech/wavs/LJ044-0162.wav|tests/data/ljspeech/wavs/LJ044-0162.npy -tests/data/ljspeech/wavs/LJ044-0088.wav|tests/data/ljspeech/wavs/LJ044-0088.npy -tests/data/ljspeech/wavs/LJ011-0096.wav|tests/data/ljspeech/wavs/LJ011-0096.npy -tests/data/ljspeech/wavs/LJ039-0226.wav|tests/data/ljspeech/wavs/LJ039-0226.npy -tests/data/ljspeech/wavs/LJ001-0171.wav|tests/data/ljspeech/wavs/LJ001-0171.npy -tests/data/ljspeech/wavs/LJ002-0181.wav|tests/data/ljspeech/wavs/LJ002-0181.npy -tests/data/ljspeech/wavs/LJ012-0115.wav|tests/data/ljspeech/wavs/LJ012-0115.npy -tests/data/ljspeech/wavs/LJ005-0046.wav|tests/data/ljspeech/wavs/LJ005-0046.npy -tests/data/ljspeech/wavs/LJ004-0085.wav|tests/data/ljspeech/wavs/LJ004-0085.npy -tests/data/ljspeech/wavs/LJ004-0093.wav|tests/data/ljspeech/wavs/LJ004-0093.npy -tests/data/ljspeech/wavs/LJ022-0127.wav|tests/data/ljspeech/wavs/LJ022-0127.npy -tests/data/ljspeech/wavs/LJ009-0155.wav|tests/data/ljspeech/wavs/LJ009-0155.npy -tests/data/ljspeech/wavs/LJ032-0184.wav|tests/data/ljspeech/wavs/LJ032-0184.npy -tests/data/ljspeech/wavs/LJ038-0214.wav|tests/data/ljspeech/wavs/LJ038-0214.npy -tests/data/ljspeech/wavs/LJ049-0147.wav|tests/data/ljspeech/wavs/LJ049-0147.npy -tests/data/ljspeech/wavs/LJ048-0018.wav|tests/data/ljspeech/wavs/LJ048-0018.npy -tests/data/ljspeech/wavs/LJ006-0015.wav|tests/data/ljspeech/wavs/LJ006-0015.npy -tests/data/ljspeech/wavs/LJ004-0037.wav|tests/data/ljspeech/wavs/LJ004-0037.npy -tests/data/ljspeech/wavs/LJ012-0066.wav|tests/data/ljspeech/wavs/LJ012-0066.npy -tests/data/ljspeech/wavs/LJ025-0119.wav|tests/data/ljspeech/wavs/LJ025-0119.npy -tests/data/ljspeech/wavs/LJ031-0178.wav|tests/data/ljspeech/wavs/LJ031-0178.npy -tests/data/ljspeech/wavs/LJ013-0145.wav|tests/data/ljspeech/wavs/LJ013-0145.npy -tests/data/ljspeech/wavs/LJ014-0103.wav|tests/data/ljspeech/wavs/LJ014-0103.npy -tests/data/ljspeech/wavs/LJ014-0326.wav|tests/data/ljspeech/wavs/LJ014-0326.npy -tests/data/ljspeech/wavs/LJ026-0100.wav|tests/data/ljspeech/wavs/LJ026-0100.npy -tests/data/ljspeech/wavs/LJ014-0149.wav|tests/data/ljspeech/wavs/LJ014-0149.npy -tests/data/ljspeech/wavs/LJ016-0356.wav|tests/data/ljspeech/wavs/LJ016-0356.npy -tests/data/ljspeech/wavs/LJ025-0071.wav|tests/data/ljspeech/wavs/LJ025-0071.npy -tests/data/ljspeech/wavs/LJ002-0318.wav|tests/data/ljspeech/wavs/LJ002-0318.npy -tests/data/ljspeech/wavs/LJ049-0129.wav|tests/data/ljspeech/wavs/LJ049-0129.npy -tests/data/ljspeech/wavs/LJ041-0019.wav|tests/data/ljspeech/wavs/LJ041-0019.npy -tests/data/ljspeech/wavs/LJ044-0005.wav|tests/data/ljspeech/wavs/LJ044-0005.npy -tests/data/ljspeech/wavs/LJ040-0056.wav|tests/data/ljspeech/wavs/LJ040-0056.npy -tests/data/ljspeech/wavs/LJ046-0207.wav|tests/data/ljspeech/wavs/LJ046-0207.npy -tests/data/ljspeech/wavs/LJ047-0044.wav|tests/data/ljspeech/wavs/LJ047-0044.npy -tests/data/ljspeech/wavs/LJ017-0078.wav|tests/data/ljspeech/wavs/LJ017-0078.npy -tests/data/ljspeech/wavs/LJ050-0082.wav|tests/data/ljspeech/wavs/LJ050-0082.npy -tests/data/ljspeech/wavs/LJ019-0207.wav|tests/data/ljspeech/wavs/LJ019-0207.npy -tests/data/ljspeech/wavs/LJ016-0137.wav|tests/data/ljspeech/wavs/LJ016-0137.npy -tests/data/ljspeech/wavs/LJ007-0183.wav|tests/data/ljspeech/wavs/LJ007-0183.npy -tests/data/ljspeech/wavs/LJ016-0094.wav|tests/data/ljspeech/wavs/LJ016-0094.npy -tests/data/ljspeech/wavs/LJ009-0298.wav|tests/data/ljspeech/wavs/LJ009-0298.npy -tests/data/ljspeech/wavs/LJ049-0123.wav|tests/data/ljspeech/wavs/LJ049-0123.npy -tests/data/ljspeech/wavs/LJ016-0199.wav|tests/data/ljspeech/wavs/LJ016-0199.npy -tests/data/ljspeech/wavs/LJ009-0186.wav|tests/data/ljspeech/wavs/LJ009-0186.npy -tests/data/ljspeech/wavs/LJ030-0018.wav|tests/data/ljspeech/wavs/LJ030-0018.npy -tests/data/ljspeech/wavs/LJ041-0059.wav|tests/data/ljspeech/wavs/LJ041-0059.npy -tests/data/ljspeech/wavs/LJ047-0013.wav|tests/data/ljspeech/wavs/LJ047-0013.npy -tests/data/ljspeech/wavs/LJ025-0103.wav|tests/data/ljspeech/wavs/LJ025-0103.npy -tests/data/ljspeech/wavs/LJ016-0360.wav|tests/data/ljspeech/wavs/LJ016-0360.npy -tests/data/ljspeech/wavs/LJ016-0057.wav|tests/data/ljspeech/wavs/LJ016-0057.npy -tests/data/ljspeech/wavs/LJ010-0043.wav|tests/data/ljspeech/wavs/LJ010-0043.npy -tests/data/ljspeech/wavs/LJ040-0055.wav|tests/data/ljspeech/wavs/LJ040-0055.npy -tests/data/ljspeech/wavs/LJ028-0448.wav|tests/data/ljspeech/wavs/LJ028-0448.npy -tests/data/ljspeech/wavs/LJ007-0074.wav|tests/data/ljspeech/wavs/LJ007-0074.npy -tests/data/ljspeech/wavs/LJ003-0095.wav|tests/data/ljspeech/wavs/LJ003-0095.npy -tests/data/ljspeech/wavs/LJ050-0278.wav|tests/data/ljspeech/wavs/LJ050-0278.npy -tests/data/ljspeech/wavs/LJ028-0505.wav|tests/data/ljspeech/wavs/LJ028-0505.npy -tests/data/ljspeech/wavs/LJ032-0228.wav|tests/data/ljspeech/wavs/LJ032-0228.npy -tests/data/ljspeech/wavs/LJ022-0174.wav|tests/data/ljspeech/wavs/LJ022-0174.npy -tests/data/ljspeech/wavs/LJ049-0030.wav|tests/data/ljspeech/wavs/LJ049-0030.npy -tests/data/ljspeech/wavs/LJ042-0166.wav|tests/data/ljspeech/wavs/LJ042-0166.npy -tests/data/ljspeech/wavs/LJ044-0025.wav|tests/data/ljspeech/wavs/LJ044-0025.npy -tests/data/ljspeech/wavs/LJ034-0098.wav|tests/data/ljspeech/wavs/LJ034-0098.npy -tests/data/ljspeech/wavs/LJ035-0147.wav|tests/data/ljspeech/wavs/LJ035-0147.npy -tests/data/ljspeech/wavs/LJ018-0251.wav|tests/data/ljspeech/wavs/LJ018-0251.npy -tests/data/ljspeech/wavs/LJ028-0326.wav|tests/data/ljspeech/wavs/LJ028-0326.npy -tests/data/ljspeech/wavs/LJ043-0123.wav|tests/data/ljspeech/wavs/LJ043-0123.npy -tests/data/ljspeech/wavs/LJ035-0046.wav|tests/data/ljspeech/wavs/LJ035-0046.npy -tests/data/ljspeech/wavs/LJ030-0072.wav|tests/data/ljspeech/wavs/LJ030-0072.npy -tests/data/ljspeech/wavs/LJ014-0066.wav|tests/data/ljspeech/wavs/LJ014-0066.npy -tests/data/ljspeech/wavs/LJ004-0226.wav|tests/data/ljspeech/wavs/LJ004-0226.npy -tests/data/ljspeech/wavs/LJ043-0059.wav|tests/data/ljspeech/wavs/LJ043-0059.npy -tests/data/ljspeech/wavs/LJ026-0060.wav|tests/data/ljspeech/wavs/LJ026-0060.npy -tests/data/ljspeech/wavs/LJ030-0024.wav|tests/data/ljspeech/wavs/LJ030-0024.npy -tests/data/ljspeech/wavs/LJ035-0195.wav|tests/data/ljspeech/wavs/LJ035-0195.npy -tests/data/ljspeech/wavs/LJ012-0028.wav|tests/data/ljspeech/wavs/LJ012-0028.npy -tests/data/ljspeech/wavs/LJ033-0202.wav|tests/data/ljspeech/wavs/LJ033-0202.npy -tests/data/ljspeech/wavs/LJ028-0427.wav|tests/data/ljspeech/wavs/LJ028-0427.npy -tests/data/ljspeech/wavs/LJ007-0190.wav|tests/data/ljspeech/wavs/LJ007-0190.npy -tests/data/ljspeech/wavs/LJ041-0171.wav|tests/data/ljspeech/wavs/LJ041-0171.npy -tests/data/ljspeech/wavs/LJ042-0216.wav|tests/data/ljspeech/wavs/LJ042-0216.npy -tests/data/ljspeech/wavs/LJ017-0134.wav|tests/data/ljspeech/wavs/LJ017-0134.npy -tests/data/ljspeech/wavs/LJ012-0107.wav|tests/data/ljspeech/wavs/LJ012-0107.npy -tests/data/ljspeech/wavs/LJ007-0216.wav|tests/data/ljspeech/wavs/LJ007-0216.npy -tests/data/ljspeech/wavs/LJ013-0151.wav|tests/data/ljspeech/wavs/LJ013-0151.npy -tests/data/ljspeech/wavs/LJ034-0064.wav|tests/data/ljspeech/wavs/LJ034-0064.npy -tests/data/ljspeech/wavs/LJ020-0035.wav|tests/data/ljspeech/wavs/LJ020-0035.npy -tests/data/ljspeech/wavs/LJ006-0013.wav|tests/data/ljspeech/wavs/LJ006-0013.npy -tests/data/ljspeech/wavs/LJ011-0277.wav|tests/data/ljspeech/wavs/LJ011-0277.npy -tests/data/ljspeech/wavs/LJ020-0022.wav|tests/data/ljspeech/wavs/LJ020-0022.npy -tests/data/ljspeech/wavs/LJ013-0176.wav|tests/data/ljspeech/wavs/LJ013-0176.npy -tests/data/ljspeech/wavs/LJ039-0038.wav|tests/data/ljspeech/wavs/LJ039-0038.npy -tests/data/ljspeech/wavs/LJ050-0223.wav|tests/data/ljspeech/wavs/LJ050-0223.npy -tests/data/ljspeech/wavs/LJ019-0284.wav|tests/data/ljspeech/wavs/LJ019-0284.npy -tests/data/ljspeech/wavs/LJ044-0135.wav|tests/data/ljspeech/wavs/LJ044-0135.npy -tests/data/ljspeech/wavs/LJ019-0099.wav|tests/data/ljspeech/wavs/LJ019-0099.npy -tests/data/ljspeech/wavs/LJ038-0075.wav|tests/data/ljspeech/wavs/LJ038-0075.npy -tests/data/ljspeech/wavs/LJ028-0269.wav|tests/data/ljspeech/wavs/LJ028-0269.npy -tests/data/ljspeech/wavs/LJ044-0133.wav|tests/data/ljspeech/wavs/LJ044-0133.npy -tests/data/ljspeech/wavs/LJ003-0173.wav|tests/data/ljspeech/wavs/LJ003-0173.npy -tests/data/ljspeech/wavs/LJ008-0178.wav|tests/data/ljspeech/wavs/LJ008-0178.npy -tests/data/ljspeech/wavs/LJ048-0030.wav|tests/data/ljspeech/wavs/LJ048-0030.npy -tests/data/ljspeech/wavs/LJ033-0070.wav|tests/data/ljspeech/wavs/LJ033-0070.npy -tests/data/ljspeech/wavs/LJ010-0187.wav|tests/data/ljspeech/wavs/LJ010-0187.npy -tests/data/ljspeech/wavs/LJ025-0176.wav|tests/data/ljspeech/wavs/LJ025-0176.npy -tests/data/ljspeech/wavs/LJ032-0055.wav|tests/data/ljspeech/wavs/LJ032-0055.npy -tests/data/ljspeech/wavs/LJ033-0056.wav|tests/data/ljspeech/wavs/LJ033-0056.npy -tests/data/ljspeech/wavs/LJ028-0079.wav|tests/data/ljspeech/wavs/LJ028-0079.npy -tests/data/ljspeech/wavs/LJ045-0099.wav|tests/data/ljspeech/wavs/LJ045-0099.npy -tests/data/ljspeech/wavs/LJ003-0045.wav|tests/data/ljspeech/wavs/LJ003-0045.npy -tests/data/ljspeech/wavs/LJ010-0181.wav|tests/data/ljspeech/wavs/LJ010-0181.npy -tests/data/ljspeech/wavs/LJ001-0057.wav|tests/data/ljspeech/wavs/LJ001-0057.npy -tests/data/ljspeech/wavs/LJ003-0331.wav|tests/data/ljspeech/wavs/LJ003-0331.npy -tests/data/ljspeech/wavs/LJ028-0232.wav|tests/data/ljspeech/wavs/LJ028-0232.npy -tests/data/ljspeech/wavs/LJ029-0197.wav|tests/data/ljspeech/wavs/LJ029-0197.npy -tests/data/ljspeech/wavs/LJ003-0088.wav|tests/data/ljspeech/wavs/LJ003-0088.npy -tests/data/ljspeech/wavs/LJ038-0256.wav|tests/data/ljspeech/wavs/LJ038-0256.npy -tests/data/ljspeech/wavs/LJ008-0229.wav|tests/data/ljspeech/wavs/LJ008-0229.npy -tests/data/ljspeech/wavs/LJ010-0090.wav|tests/data/ljspeech/wavs/LJ010-0090.npy -tests/data/ljspeech/wavs/LJ029-0120.wav|tests/data/ljspeech/wavs/LJ029-0120.npy -tests/data/ljspeech/wavs/LJ041-0123.wav|tests/data/ljspeech/wavs/LJ041-0123.npy -tests/data/ljspeech/wavs/LJ045-0228.wav|tests/data/ljspeech/wavs/LJ045-0228.npy -tests/data/ljspeech/wavs/LJ037-0266.wav|tests/data/ljspeech/wavs/LJ037-0266.npy -tests/data/ljspeech/wavs/LJ009-0203.wav|tests/data/ljspeech/wavs/LJ009-0203.npy -tests/data/ljspeech/wavs/LJ007-0078.wav|tests/data/ljspeech/wavs/LJ007-0078.npy -tests/data/ljspeech/wavs/LJ036-0159.wav|tests/data/ljspeech/wavs/LJ036-0159.npy -tests/data/ljspeech/wavs/LJ014-0132.wav|tests/data/ljspeech/wavs/LJ014-0132.npy -tests/data/ljspeech/wavs/LJ028-0416.wav|tests/data/ljspeech/wavs/LJ028-0416.npy -tests/data/ljspeech/wavs/LJ025-0127.wav|tests/data/ljspeech/wavs/LJ025-0127.npy -tests/data/ljspeech/wavs/LJ005-0240.wav|tests/data/ljspeech/wavs/LJ005-0240.npy -tests/data/ljspeech/wavs/LJ012-0133.wav|tests/data/ljspeech/wavs/LJ012-0133.npy -tests/data/ljspeech/wavs/LJ049-0079.wav|tests/data/ljspeech/wavs/LJ049-0079.npy -tests/data/ljspeech/wavs/LJ029-0205.wav|tests/data/ljspeech/wavs/LJ029-0205.npy -tests/data/ljspeech/wavs/LJ005-0253.wav|tests/data/ljspeech/wavs/LJ005-0253.npy -tests/data/ljspeech/wavs/LJ022-0063.wav|tests/data/ljspeech/wavs/LJ022-0063.npy -tests/data/ljspeech/wavs/LJ035-0131.wav|tests/data/ljspeech/wavs/LJ035-0131.npy -tests/data/ljspeech/wavs/LJ002-0321.wav|tests/data/ljspeech/wavs/LJ002-0321.npy -tests/data/ljspeech/wavs/LJ014-0218.wav|tests/data/ljspeech/wavs/LJ014-0218.npy -tests/data/ljspeech/wavs/LJ019-0154.wav|tests/data/ljspeech/wavs/LJ019-0154.npy -tests/data/ljspeech/wavs/LJ049-0193.wav|tests/data/ljspeech/wavs/LJ049-0193.npy -tests/data/ljspeech/wavs/LJ028-0122.wav|tests/data/ljspeech/wavs/LJ028-0122.npy -tests/data/ljspeech/wavs/LJ014-0175.wav|tests/data/ljspeech/wavs/LJ014-0175.npy -tests/data/ljspeech/wavs/LJ002-0301.wav|tests/data/ljspeech/wavs/LJ002-0301.npy -tests/data/ljspeech/wavs/LJ002-0003.wav|tests/data/ljspeech/wavs/LJ002-0003.npy -tests/data/ljspeech/wavs/LJ003-0217.wav|tests/data/ljspeech/wavs/LJ003-0217.npy -tests/data/ljspeech/wavs/LJ006-0134.wav|tests/data/ljspeech/wavs/LJ006-0134.npy -tests/data/ljspeech/wavs/LJ029-0200.wav|tests/data/ljspeech/wavs/LJ029-0200.npy -tests/data/ljspeech/wavs/LJ032-0187.wav|tests/data/ljspeech/wavs/LJ032-0187.npy -tests/data/ljspeech/wavs/LJ040-0143.wav|tests/data/ljspeech/wavs/LJ040-0143.npy -tests/data/ljspeech/wavs/LJ019-0069.wav|tests/data/ljspeech/wavs/LJ019-0069.npy -tests/data/ljspeech/wavs/LJ038-0285.wav|tests/data/ljspeech/wavs/LJ038-0285.npy -tests/data/ljspeech/wavs/LJ028-0487.wav|tests/data/ljspeech/wavs/LJ028-0487.npy -tests/data/ljspeech/wavs/LJ029-0082.wav|tests/data/ljspeech/wavs/LJ029-0082.npy -tests/data/ljspeech/wavs/LJ014-0327.wav|tests/data/ljspeech/wavs/LJ014-0327.npy -tests/data/ljspeech/wavs/LJ028-0405.wav|tests/data/ljspeech/wavs/LJ028-0405.npy -tests/data/ljspeech/wavs/LJ019-0043.wav|tests/data/ljspeech/wavs/LJ019-0043.npy -tests/data/ljspeech/wavs/LJ002-0243.wav|tests/data/ljspeech/wavs/LJ002-0243.npy -tests/data/ljspeech/wavs/LJ026-0158.wav|tests/data/ljspeech/wavs/LJ026-0158.npy -tests/data/ljspeech/wavs/LJ043-0078.wav|tests/data/ljspeech/wavs/LJ043-0078.npy -tests/data/ljspeech/wavs/LJ026-0135.wav|tests/data/ljspeech/wavs/LJ026-0135.npy -tests/data/ljspeech/wavs/LJ048-0003.wav|tests/data/ljspeech/wavs/LJ048-0003.npy -tests/data/ljspeech/wavs/LJ018-0302.wav|tests/data/ljspeech/wavs/LJ018-0302.npy -tests/data/ljspeech/wavs/LJ018-0376.wav|tests/data/ljspeech/wavs/LJ018-0376.npy -tests/data/ljspeech/wavs/LJ005-0061.wav|tests/data/ljspeech/wavs/LJ005-0061.npy -tests/data/ljspeech/wavs/LJ040-0018.wav|tests/data/ljspeech/wavs/LJ040-0018.npy -tests/data/ljspeech/wavs/LJ019-0264.wav|tests/data/ljspeech/wavs/LJ019-0264.npy -tests/data/ljspeech/wavs/LJ048-0148.wav|tests/data/ljspeech/wavs/LJ048-0148.npy -tests/data/ljspeech/wavs/LJ030-0254.wav|tests/data/ljspeech/wavs/LJ030-0254.npy -tests/data/ljspeech/wavs/LJ042-0106.wav|tests/data/ljspeech/wavs/LJ042-0106.npy -tests/data/ljspeech/wavs/LJ043-0126.wav|tests/data/ljspeech/wavs/LJ043-0126.npy -tests/data/ljspeech/wavs/LJ017-0244.wav|tests/data/ljspeech/wavs/LJ017-0244.npy -tests/data/ljspeech/wavs/LJ004-0100.wav|tests/data/ljspeech/wavs/LJ004-0100.npy -tests/data/ljspeech/wavs/LJ013-0199.wav|tests/data/ljspeech/wavs/LJ013-0199.npy -tests/data/ljspeech/wavs/LJ044-0087.wav|tests/data/ljspeech/wavs/LJ044-0087.npy -tests/data/ljspeech/wavs/LJ010-0300.wav|tests/data/ljspeech/wavs/LJ010-0300.npy -tests/data/ljspeech/wavs/LJ021-0115.wav|tests/data/ljspeech/wavs/LJ021-0115.npy -tests/data/ljspeech/wavs/LJ005-0143.wav|tests/data/ljspeech/wavs/LJ005-0143.npy -tests/data/ljspeech/wavs/LJ030-0239.wav|tests/data/ljspeech/wavs/LJ030-0239.npy -tests/data/ljspeech/wavs/LJ005-0125.wav|tests/data/ljspeech/wavs/LJ005-0125.npy -tests/data/ljspeech/wavs/LJ008-0272.wav|tests/data/ljspeech/wavs/LJ008-0272.npy -tests/data/ljspeech/wavs/LJ011-0178.wav|tests/data/ljspeech/wavs/LJ011-0178.npy -tests/data/ljspeech/wavs/LJ018-0320.wav|tests/data/ljspeech/wavs/LJ018-0320.npy -tests/data/ljspeech/wavs/LJ045-0038.wav|tests/data/ljspeech/wavs/LJ045-0038.npy -tests/data/ljspeech/wavs/LJ011-0143.wav|tests/data/ljspeech/wavs/LJ011-0143.npy -tests/data/ljspeech/wavs/LJ018-0348.wav|tests/data/ljspeech/wavs/LJ018-0348.npy -tests/data/ljspeech/wavs/LJ050-0187.wav|tests/data/ljspeech/wavs/LJ050-0187.npy -tests/data/ljspeech/wavs/LJ018-0215.wav|tests/data/ljspeech/wavs/LJ018-0215.npy -tests/data/ljspeech/wavs/LJ009-0153.wav|tests/data/ljspeech/wavs/LJ009-0153.npy -tests/data/ljspeech/wavs/LJ038-0208.wav|tests/data/ljspeech/wavs/LJ038-0208.npy -tests/data/ljspeech/wavs/LJ041-0199.wav|tests/data/ljspeech/wavs/LJ041-0199.npy -tests/data/ljspeech/wavs/LJ002-0021.wav|tests/data/ljspeech/wavs/LJ002-0021.npy -tests/data/ljspeech/wavs/LJ029-0186.wav|tests/data/ljspeech/wavs/LJ029-0186.npy -tests/data/ljspeech/wavs/LJ010-0073.wav|tests/data/ljspeech/wavs/LJ010-0073.npy -tests/data/ljspeech/wavs/LJ046-0042.wav|tests/data/ljspeech/wavs/LJ046-0042.npy -tests/data/ljspeech/wavs/LJ007-0226.wav|tests/data/ljspeech/wavs/LJ007-0226.npy -tests/data/ljspeech/wavs/LJ010-0227.wav|tests/data/ljspeech/wavs/LJ010-0227.npy -tests/data/ljspeech/wavs/LJ045-0090.wav|tests/data/ljspeech/wavs/LJ045-0090.npy -tests/data/ljspeech/wavs/LJ048-0266.wav|tests/data/ljspeech/wavs/LJ048-0266.npy -tests/data/ljspeech/wavs/LJ016-0307.wav|tests/data/ljspeech/wavs/LJ016-0307.npy -tests/data/ljspeech/wavs/LJ042-0204.wav|tests/data/ljspeech/wavs/LJ042-0204.npy -tests/data/ljspeech/wavs/LJ033-0181.wav|tests/data/ljspeech/wavs/LJ033-0181.npy -tests/data/ljspeech/wavs/LJ047-0165.wav|tests/data/ljspeech/wavs/LJ047-0165.npy -tests/data/ljspeech/wavs/LJ039-0122.wav|tests/data/ljspeech/wavs/LJ039-0122.npy -tests/data/ljspeech/wavs/LJ044-0210.wav|tests/data/ljspeech/wavs/LJ044-0210.npy -tests/data/ljspeech/wavs/LJ016-0145.wav|tests/data/ljspeech/wavs/LJ016-0145.npy -tests/data/ljspeech/wavs/LJ046-0213.wav|tests/data/ljspeech/wavs/LJ046-0213.npy -tests/data/ljspeech/wavs/LJ008-0299.wav|tests/data/ljspeech/wavs/LJ008-0299.npy -tests/data/ljspeech/wavs/LJ049-0110.wav|tests/data/ljspeech/wavs/LJ049-0110.npy -tests/data/ljspeech/wavs/LJ011-0163.wav|tests/data/ljspeech/wavs/LJ011-0163.npy -tests/data/ljspeech/wavs/LJ042-0194.wav|tests/data/ljspeech/wavs/LJ042-0194.npy -tests/data/ljspeech/wavs/LJ048-0106.wav|tests/data/ljspeech/wavs/LJ048-0106.npy -tests/data/ljspeech/wavs/LJ035-0049.wav|tests/data/ljspeech/wavs/LJ035-0049.npy -tests/data/ljspeech/wavs/LJ008-0204.wav|tests/data/ljspeech/wavs/LJ008-0204.npy -tests/data/ljspeech/wavs/LJ005-0118.wav|tests/data/ljspeech/wavs/LJ005-0118.npy -tests/data/ljspeech/wavs/LJ014-0340.wav|tests/data/ljspeech/wavs/LJ014-0340.npy -tests/data/ljspeech/wavs/LJ015-0236.wav|tests/data/ljspeech/wavs/LJ015-0236.npy -tests/data/ljspeech/wavs/LJ049-0201.wav|tests/data/ljspeech/wavs/LJ049-0201.npy -tests/data/ljspeech/wavs/LJ048-0071.wav|tests/data/ljspeech/wavs/LJ048-0071.npy -tests/data/ljspeech/wavs/LJ028-0105.wav|tests/data/ljspeech/wavs/LJ028-0105.npy -tests/data/ljspeech/wavs/LJ033-0128.wav|tests/data/ljspeech/wavs/LJ033-0128.npy -tests/data/ljspeech/wavs/LJ029-0014.wav|tests/data/ljspeech/wavs/LJ029-0014.npy -tests/data/ljspeech/wavs/LJ044-0127.wav|tests/data/ljspeech/wavs/LJ044-0127.npy -tests/data/ljspeech/wavs/LJ046-0236.wav|tests/data/ljspeech/wavs/LJ046-0236.npy -tests/data/ljspeech/wavs/LJ012-0072.wav|tests/data/ljspeech/wavs/LJ012-0072.npy -tests/data/ljspeech/wavs/LJ029-0166.wav|tests/data/ljspeech/wavs/LJ029-0166.npy -tests/data/ljspeech/wavs/LJ034-0142.wav|tests/data/ljspeech/wavs/LJ034-0142.npy -tests/data/ljspeech/wavs/LJ019-0379.wav|tests/data/ljspeech/wavs/LJ019-0379.npy -tests/data/ljspeech/wavs/LJ027-0009.wav|tests/data/ljspeech/wavs/LJ027-0009.npy -tests/data/ljspeech/wavs/LJ040-0152.wav|tests/data/ljspeech/wavs/LJ040-0152.npy -tests/data/ljspeech/wavs/LJ040-0188.wav|tests/data/ljspeech/wavs/LJ040-0188.npy -tests/data/ljspeech/wavs/LJ047-0241.wav|tests/data/ljspeech/wavs/LJ047-0241.npy -tests/data/ljspeech/wavs/LJ029-0108.wav|tests/data/ljspeech/wavs/LJ029-0108.npy -tests/data/ljspeech/wavs/LJ050-0190.wav|tests/data/ljspeech/wavs/LJ050-0190.npy -tests/data/ljspeech/wavs/LJ012-0067.wav|tests/data/ljspeech/wavs/LJ012-0067.npy -tests/data/ljspeech/wavs/LJ016-0365.wav|tests/data/ljspeech/wavs/LJ016-0365.npy -tests/data/ljspeech/wavs/LJ040-0059.wav|tests/data/ljspeech/wavs/LJ040-0059.npy -tests/data/ljspeech/wavs/LJ014-0198.wav|tests/data/ljspeech/wavs/LJ014-0198.npy -tests/data/ljspeech/wavs/LJ020-0058.wav|tests/data/ljspeech/wavs/LJ020-0058.npy -tests/data/ljspeech/wavs/LJ003-0291.wav|tests/data/ljspeech/wavs/LJ003-0291.npy -tests/data/ljspeech/wavs/LJ031-0129.wav|tests/data/ljspeech/wavs/LJ031-0129.npy -tests/data/ljspeech/wavs/LJ012-0145.wav|tests/data/ljspeech/wavs/LJ012-0145.npy -tests/data/ljspeech/wavs/LJ046-0044.wav|tests/data/ljspeech/wavs/LJ046-0044.npy -tests/data/ljspeech/wavs/LJ045-0059.wav|tests/data/ljspeech/wavs/LJ045-0059.npy -tests/data/ljspeech/wavs/LJ043-0058.wav|tests/data/ljspeech/wavs/LJ043-0058.npy -tests/data/ljspeech/wavs/LJ028-0108.wav|tests/data/ljspeech/wavs/LJ028-0108.npy -tests/data/ljspeech/wavs/LJ047-0204.wav|tests/data/ljspeech/wavs/LJ047-0204.npy -tests/data/ljspeech/wavs/LJ044-0219.wav|tests/data/ljspeech/wavs/LJ044-0219.npy -tests/data/ljspeech/wavs/LJ042-0183.wav|tests/data/ljspeech/wavs/LJ042-0183.npy -tests/data/ljspeech/wavs/LJ019-0375.wav|tests/data/ljspeech/wavs/LJ019-0375.npy -tests/data/ljspeech/wavs/LJ004-0046.wav|tests/data/ljspeech/wavs/LJ004-0046.npy -tests/data/ljspeech/wavs/LJ013-0029.wav|tests/data/ljspeech/wavs/LJ013-0029.npy -tests/data/ljspeech/wavs/LJ013-0063.wav|tests/data/ljspeech/wavs/LJ013-0063.npy -tests/data/ljspeech/wavs/LJ006-0063.wav|tests/data/ljspeech/wavs/LJ006-0063.npy -tests/data/ljspeech/wavs/LJ025-0146.wav|tests/data/ljspeech/wavs/LJ025-0146.npy -tests/data/ljspeech/wavs/LJ045-0248.wav|tests/data/ljspeech/wavs/LJ045-0248.npy -tests/data/ljspeech/wavs/LJ017-0057.wav|tests/data/ljspeech/wavs/LJ017-0057.npy -tests/data/ljspeech/wavs/LJ031-0053.wav|tests/data/ljspeech/wavs/LJ031-0053.npy -tests/data/ljspeech/wavs/LJ003-0317.wav|tests/data/ljspeech/wavs/LJ003-0317.npy -tests/data/ljspeech/wavs/LJ049-0152.wav|tests/data/ljspeech/wavs/LJ049-0152.npy -tests/data/ljspeech/wavs/LJ019-0085.wav|tests/data/ljspeech/wavs/LJ019-0085.npy -tests/data/ljspeech/wavs/LJ014-0027.wav|tests/data/ljspeech/wavs/LJ014-0027.npy -tests/data/ljspeech/wavs/LJ025-0165.wav|tests/data/ljspeech/wavs/LJ025-0165.npy -tests/data/ljspeech/wavs/LJ019-0070.wav|tests/data/ljspeech/wavs/LJ019-0070.npy -tests/data/ljspeech/wavs/LJ002-0066.wav|tests/data/ljspeech/wavs/LJ002-0066.npy -tests/data/ljspeech/wavs/LJ041-0049.wav|tests/data/ljspeech/wavs/LJ041-0049.npy -tests/data/ljspeech/wavs/LJ015-0064.wav|tests/data/ljspeech/wavs/LJ015-0064.npy -tests/data/ljspeech/wavs/LJ006-0294.wav|tests/data/ljspeech/wavs/LJ006-0294.npy -tests/data/ljspeech/wavs/LJ046-0228.wav|tests/data/ljspeech/wavs/LJ046-0228.npy -tests/data/ljspeech/wavs/LJ005-0268.wav|tests/data/ljspeech/wavs/LJ005-0268.npy -tests/data/ljspeech/wavs/LJ030-0030.wav|tests/data/ljspeech/wavs/LJ030-0030.npy -tests/data/ljspeech/wavs/LJ006-0254.wav|tests/data/ljspeech/wavs/LJ006-0254.npy -tests/data/ljspeech/wavs/LJ011-0200.wav|tests/data/ljspeech/wavs/LJ011-0200.npy -tests/data/ljspeech/wavs/LJ029-0114.wav|tests/data/ljspeech/wavs/LJ029-0114.npy -tests/data/ljspeech/wavs/LJ010-0291.wav|tests/data/ljspeech/wavs/LJ010-0291.npy -tests/data/ljspeech/wavs/LJ041-0152.wav|tests/data/ljspeech/wavs/LJ041-0152.npy -tests/data/ljspeech/wavs/LJ035-0026.wav|tests/data/ljspeech/wavs/LJ035-0026.npy -tests/data/ljspeech/wavs/LJ012-0170.wav|tests/data/ljspeech/wavs/LJ012-0170.npy -tests/data/ljspeech/wavs/LJ011-0222.wav|tests/data/ljspeech/wavs/LJ011-0222.npy -tests/data/ljspeech/wavs/LJ034-0182.wav|tests/data/ljspeech/wavs/LJ034-0182.npy -tests/data/ljspeech/wavs/LJ003-0219.wav|tests/data/ljspeech/wavs/LJ003-0219.npy -tests/data/ljspeech/wavs/LJ006-0090.wav|tests/data/ljspeech/wavs/LJ006-0090.npy -tests/data/ljspeech/wavs/LJ035-0117.wav|tests/data/ljspeech/wavs/LJ035-0117.npy -tests/data/ljspeech/wavs/LJ013-0167.wav|tests/data/ljspeech/wavs/LJ013-0167.npy -tests/data/ljspeech/wavs/LJ033-0208.wav|tests/data/ljspeech/wavs/LJ033-0208.npy -tests/data/ljspeech/wavs/LJ026-0160.wav|tests/data/ljspeech/wavs/LJ026-0160.npy -tests/data/ljspeech/wavs/LJ045-0135.wav|tests/data/ljspeech/wavs/LJ045-0135.npy -tests/data/ljspeech/wavs/LJ044-0173.wav|tests/data/ljspeech/wavs/LJ044-0173.npy -tests/data/ljspeech/wavs/LJ038-0161.wav|tests/data/ljspeech/wavs/LJ038-0161.npy -tests/data/ljspeech/wavs/LJ048-0269.wav|tests/data/ljspeech/wavs/LJ048-0269.npy -tests/data/ljspeech/wavs/LJ047-0043.wav|tests/data/ljspeech/wavs/LJ047-0043.npy -tests/data/ljspeech/wavs/LJ030-0055.wav|tests/data/ljspeech/wavs/LJ030-0055.npy -tests/data/ljspeech/wavs/LJ043-0048.wav|tests/data/ljspeech/wavs/LJ043-0048.npy -tests/data/ljspeech/wavs/LJ008-0209.wav|tests/data/ljspeech/wavs/LJ008-0209.npy -tests/data/ljspeech/wavs/LJ031-0220.wav|tests/data/ljspeech/wavs/LJ031-0220.npy -tests/data/ljspeech/wavs/LJ016-0023.wav|tests/data/ljspeech/wavs/LJ016-0023.npy -tests/data/ljspeech/wavs/LJ003-0290.wav|tests/data/ljspeech/wavs/LJ003-0290.npy -tests/data/ljspeech/wavs/LJ018-0303.wav|tests/data/ljspeech/wavs/LJ018-0303.npy -tests/data/ljspeech/wavs/LJ042-0026.wav|tests/data/ljspeech/wavs/LJ042-0026.npy -tests/data/ljspeech/wavs/LJ042-0105.wav|tests/data/ljspeech/wavs/LJ042-0105.npy -tests/data/ljspeech/wavs/LJ009-0247.wav|tests/data/ljspeech/wavs/LJ009-0247.npy -tests/data/ljspeech/wavs/LJ017-0137.wav|tests/data/ljspeech/wavs/LJ017-0137.npy -tests/data/ljspeech/wavs/LJ015-0299.wav|tests/data/ljspeech/wavs/LJ015-0299.npy -tests/data/ljspeech/wavs/LJ030-0104.wav|tests/data/ljspeech/wavs/LJ030-0104.npy -tests/data/ljspeech/wavs/LJ048-0250.wav|tests/data/ljspeech/wavs/LJ048-0250.npy -tests/data/ljspeech/wavs/LJ022-0175.wav|tests/data/ljspeech/wavs/LJ022-0175.npy -tests/data/ljspeech/wavs/LJ009-0016.wav|tests/data/ljspeech/wavs/LJ009-0016.npy -tests/data/ljspeech/wavs/LJ004-0245.wav|tests/data/ljspeech/wavs/LJ004-0245.npy -tests/data/ljspeech/wavs/LJ017-0098.wav|tests/data/ljspeech/wavs/LJ017-0098.npy -tests/data/ljspeech/wavs/LJ050-0245.wav|tests/data/ljspeech/wavs/LJ050-0245.npy -tests/data/ljspeech/wavs/LJ002-0207.wav|tests/data/ljspeech/wavs/LJ002-0207.npy -tests/data/ljspeech/wavs/LJ043-0066.wav|tests/data/ljspeech/wavs/LJ043-0066.npy -tests/data/ljspeech/wavs/LJ018-0186.wav|tests/data/ljspeech/wavs/LJ018-0186.npy -tests/data/ljspeech/wavs/LJ015-0245.wav|tests/data/ljspeech/wavs/LJ015-0245.npy -tests/data/ljspeech/wavs/LJ019-0041.wav|tests/data/ljspeech/wavs/LJ019-0041.npy -tests/data/ljspeech/wavs/LJ018-0307.wav|tests/data/ljspeech/wavs/LJ018-0307.npy -tests/data/ljspeech/wavs/LJ021-0101.wav|tests/data/ljspeech/wavs/LJ021-0101.npy -tests/data/ljspeech/wavs/LJ031-0204.wav|tests/data/ljspeech/wavs/LJ031-0204.npy -tests/data/ljspeech/wavs/LJ031-0057.wav|tests/data/ljspeech/wavs/LJ031-0057.npy -tests/data/ljspeech/wavs/LJ032-0083.wav|tests/data/ljspeech/wavs/LJ032-0083.npy -tests/data/ljspeech/wavs/LJ028-0174.wav|tests/data/ljspeech/wavs/LJ028-0174.npy -tests/data/ljspeech/wavs/LJ019-0167.wav|tests/data/ljspeech/wavs/LJ019-0167.npy -tests/data/ljspeech/wavs/LJ019-0019.wav|tests/data/ljspeech/wavs/LJ019-0019.npy -tests/data/ljspeech/wavs/LJ034-0100.wav|tests/data/ljspeech/wavs/LJ034-0100.npy -tests/data/ljspeech/wavs/LJ019-0025.wav|tests/data/ljspeech/wavs/LJ019-0025.npy -tests/data/ljspeech/wavs/LJ030-0034.wav|tests/data/ljspeech/wavs/LJ030-0034.npy -tests/data/ljspeech/wavs/LJ034-0085.wav|tests/data/ljspeech/wavs/LJ034-0085.npy -tests/data/ljspeech/wavs/LJ050-0061.wav|tests/data/ljspeech/wavs/LJ050-0061.npy -tests/data/ljspeech/wavs/LJ019-0201.wav|tests/data/ljspeech/wavs/LJ019-0201.npy -tests/data/ljspeech/wavs/LJ014-0331.wav|tests/data/ljspeech/wavs/LJ014-0331.npy -tests/data/ljspeech/wavs/LJ017-0079.wav|tests/data/ljspeech/wavs/LJ017-0079.npy -tests/data/ljspeech/wavs/LJ014-0006.wav|tests/data/ljspeech/wavs/LJ014-0006.npy -tests/data/ljspeech/wavs/LJ019-0027.wav|tests/data/ljspeech/wavs/LJ019-0027.npy -tests/data/ljspeech/wavs/LJ046-0218.wav|tests/data/ljspeech/wavs/LJ046-0218.npy -tests/data/ljspeech/wavs/LJ030-0021.wav|tests/data/ljspeech/wavs/LJ030-0021.npy -tests/data/ljspeech/wavs/LJ040-0026.wav|tests/data/ljspeech/wavs/LJ040-0026.npy -tests/data/ljspeech/wavs/LJ033-0136.wav|tests/data/ljspeech/wavs/LJ033-0136.npy -tests/data/ljspeech/wavs/LJ032-0249.wav|tests/data/ljspeech/wavs/LJ032-0249.npy -tests/data/ljspeech/wavs/LJ015-0087.wav|tests/data/ljspeech/wavs/LJ015-0087.npy -tests/data/ljspeech/wavs/LJ038-0204.wav|tests/data/ljspeech/wavs/LJ038-0204.npy -tests/data/ljspeech/wavs/LJ016-0406.wav|tests/data/ljspeech/wavs/LJ016-0406.npy -tests/data/ljspeech/wavs/LJ019-0350.wav|tests/data/ljspeech/wavs/LJ019-0350.npy -tests/data/ljspeech/wavs/LJ009-0145.wav|tests/data/ljspeech/wavs/LJ009-0145.npy -tests/data/ljspeech/wavs/LJ022-0119.wav|tests/data/ljspeech/wavs/LJ022-0119.npy -tests/data/ljspeech/wavs/LJ019-0125.wav|tests/data/ljspeech/wavs/LJ019-0125.npy -tests/data/ljspeech/wavs/LJ007-0118.wav|tests/data/ljspeech/wavs/LJ007-0118.npy -tests/data/ljspeech/wavs/LJ048-0105.wav|tests/data/ljspeech/wavs/LJ048-0105.npy -tests/data/ljspeech/wavs/LJ015-0096.wav|tests/data/ljspeech/wavs/LJ015-0096.npy -tests/data/ljspeech/wavs/LJ034-0032.wav|tests/data/ljspeech/wavs/LJ034-0032.npy -tests/data/ljspeech/wavs/LJ005-0011.wav|tests/data/ljspeech/wavs/LJ005-0011.npy -tests/data/ljspeech/wavs/LJ041-0031.wav|tests/data/ljspeech/wavs/LJ041-0031.npy -tests/data/ljspeech/wavs/LJ046-0090.wav|tests/data/ljspeech/wavs/LJ046-0090.npy -tests/data/ljspeech/wavs/LJ026-0014.wav|tests/data/ljspeech/wavs/LJ026-0014.npy -tests/data/ljspeech/wavs/LJ012-0023.wav|tests/data/ljspeech/wavs/LJ012-0023.npy -tests/data/ljspeech/wavs/LJ007-0034.wav|tests/data/ljspeech/wavs/LJ007-0034.npy -tests/data/ljspeech/wavs/LJ044-0009.wav|tests/data/ljspeech/wavs/LJ044-0009.npy -tests/data/ljspeech/wavs/LJ022-0004.wav|tests/data/ljspeech/wavs/LJ022-0004.npy -tests/data/ljspeech/wavs/LJ049-0136.wav|tests/data/ljspeech/wavs/LJ049-0136.npy -tests/data/ljspeech/wavs/LJ050-0151.wav|tests/data/ljspeech/wavs/LJ050-0151.npy -tests/data/ljspeech/wavs/LJ003-0316.wav|tests/data/ljspeech/wavs/LJ003-0316.npy -tests/data/ljspeech/wavs/LJ042-0227.wav|tests/data/ljspeech/wavs/LJ042-0227.npy -tests/data/ljspeech/wavs/LJ050-0139.wav|tests/data/ljspeech/wavs/LJ050-0139.npy -tests/data/ljspeech/wavs/LJ006-0057.wav|tests/data/ljspeech/wavs/LJ006-0057.npy -tests/data/ljspeech/wavs/LJ042-0046.wav|tests/data/ljspeech/wavs/LJ042-0046.npy -tests/data/ljspeech/wavs/LJ004-0013.wav|tests/data/ljspeech/wavs/LJ004-0013.npy -tests/data/ljspeech/wavs/LJ007-0050.wav|tests/data/ljspeech/wavs/LJ007-0050.npy -tests/data/ljspeech/wavs/LJ007-0094.wav|tests/data/ljspeech/wavs/LJ007-0094.npy -tests/data/ljspeech/wavs/LJ039-0077.wav|tests/data/ljspeech/wavs/LJ039-0077.npy -tests/data/ljspeech/wavs/LJ009-0225.wav|tests/data/ljspeech/wavs/LJ009-0225.npy -tests/data/ljspeech/wavs/LJ042-0122.wav|tests/data/ljspeech/wavs/LJ042-0122.npy -tests/data/ljspeech/wavs/LJ048-0175.wav|tests/data/ljspeech/wavs/LJ048-0175.npy -tests/data/ljspeech/wavs/LJ006-0252.wav|tests/data/ljspeech/wavs/LJ006-0252.npy -tests/data/ljspeech/wavs/LJ006-0224.wav|tests/data/ljspeech/wavs/LJ006-0224.npy -tests/data/ljspeech/wavs/LJ039-0235.wav|tests/data/ljspeech/wavs/LJ039-0235.npy -tests/data/ljspeech/wavs/LJ028-0388.wav|tests/data/ljspeech/wavs/LJ028-0388.npy -tests/data/ljspeech/wavs/LJ020-0074.wav|tests/data/ljspeech/wavs/LJ020-0074.npy -tests/data/ljspeech/wavs/LJ002-0209.wav|tests/data/ljspeech/wavs/LJ002-0209.npy -tests/data/ljspeech/wavs/LJ007-0029.wav|tests/data/ljspeech/wavs/LJ007-0029.npy -tests/data/ljspeech/wavs/LJ047-0108.wav|tests/data/ljspeech/wavs/LJ047-0108.npy -tests/data/ljspeech/wavs/LJ008-0051.wav|tests/data/ljspeech/wavs/LJ008-0051.npy -tests/data/ljspeech/wavs/LJ029-0028.wav|tests/data/ljspeech/wavs/LJ029-0028.npy -tests/data/ljspeech/wavs/LJ046-0199.wav|tests/data/ljspeech/wavs/LJ046-0199.npy -tests/data/ljspeech/wavs/LJ041-0196.wav|tests/data/ljspeech/wavs/LJ041-0196.npy -tests/data/ljspeech/wavs/LJ044-0149.wav|tests/data/ljspeech/wavs/LJ044-0149.npy -tests/data/ljspeech/wavs/LJ035-0047.wav|tests/data/ljspeech/wavs/LJ035-0047.npy -tests/data/ljspeech/wavs/LJ012-0074.wav|tests/data/ljspeech/wavs/LJ012-0074.npy -tests/data/ljspeech/wavs/LJ002-0074.wav|tests/data/ljspeech/wavs/LJ002-0074.npy -tests/data/ljspeech/wavs/LJ045-0023.wav|tests/data/ljspeech/wavs/LJ045-0023.npy -tests/data/ljspeech/wavs/LJ002-0079.wav|tests/data/ljspeech/wavs/LJ002-0079.npy -tests/data/ljspeech/wavs/LJ011-0131.wav|tests/data/ljspeech/wavs/LJ011-0131.npy -tests/data/ljspeech/wavs/LJ020-0024.wav|tests/data/ljspeech/wavs/LJ020-0024.npy -tests/data/ljspeech/wavs/LJ036-0131.wav|tests/data/ljspeech/wavs/LJ036-0131.npy -tests/data/ljspeech/wavs/LJ046-0039.wav|tests/data/ljspeech/wavs/LJ046-0039.npy -tests/data/ljspeech/wavs/LJ001-0169.wav|tests/data/ljspeech/wavs/LJ001-0169.npy -tests/data/ljspeech/wavs/LJ003-0167.wav|tests/data/ljspeech/wavs/LJ003-0167.npy -tests/data/ljspeech/wavs/LJ028-0219.wav|tests/data/ljspeech/wavs/LJ028-0219.npy -tests/data/ljspeech/wavs/LJ050-0252.wav|tests/data/ljspeech/wavs/LJ050-0252.npy -tests/data/ljspeech/wavs/LJ044-0097.wav|tests/data/ljspeech/wavs/LJ044-0097.npy -tests/data/ljspeech/wavs/LJ049-0033.wav|tests/data/ljspeech/wavs/LJ049-0033.npy -tests/data/ljspeech/wavs/LJ044-0206.wav|tests/data/ljspeech/wavs/LJ044-0206.npy -tests/data/ljspeech/wavs/LJ035-0016.wav|tests/data/ljspeech/wavs/LJ035-0016.npy -tests/data/ljspeech/wavs/LJ017-0246.wav|tests/data/ljspeech/wavs/LJ017-0246.npy -tests/data/ljspeech/wavs/LJ034-0207.wav|tests/data/ljspeech/wavs/LJ034-0207.npy -tests/data/ljspeech/wavs/LJ027-0034.wav|tests/data/ljspeech/wavs/LJ027-0034.npy -tests/data/ljspeech/wavs/LJ047-0178.wav|tests/data/ljspeech/wavs/LJ047-0178.npy -tests/data/ljspeech/wavs/LJ044-0104.wav|tests/data/ljspeech/wavs/LJ044-0104.npy -tests/data/ljspeech/wavs/LJ010-0109.wav|tests/data/ljspeech/wavs/LJ010-0109.npy -tests/data/ljspeech/wavs/LJ012-0200.wav|tests/data/ljspeech/wavs/LJ012-0200.npy -tests/data/ljspeech/wavs/LJ048-0184.wav|tests/data/ljspeech/wavs/LJ048-0184.npy -tests/data/ljspeech/wavs/LJ001-0154.wav|tests/data/ljspeech/wavs/LJ001-0154.npy -tests/data/ljspeech/wavs/LJ011-0212.wav|tests/data/ljspeech/wavs/LJ011-0212.npy -tests/data/ljspeech/wavs/LJ019-0139.wav|tests/data/ljspeech/wavs/LJ019-0139.npy -tests/data/ljspeech/wavs/LJ017-0099.wav|tests/data/ljspeech/wavs/LJ017-0099.npy -tests/data/ljspeech/wavs/LJ037-0084.wav|tests/data/ljspeech/wavs/LJ037-0084.npy -tests/data/ljspeech/wavs/LJ048-0017.wav|tests/data/ljspeech/wavs/LJ048-0017.npy -tests/data/ljspeech/wavs/LJ004-0066.wav|tests/data/ljspeech/wavs/LJ004-0066.npy -tests/data/ljspeech/wavs/LJ034-0023.wav|tests/data/ljspeech/wavs/LJ034-0023.npy -tests/data/ljspeech/wavs/LJ027-0143.wav|tests/data/ljspeech/wavs/LJ027-0143.npy -tests/data/ljspeech/wavs/LJ050-0001.wav|tests/data/ljspeech/wavs/LJ050-0001.npy -tests/data/ljspeech/wavs/LJ005-0098.wav|tests/data/ljspeech/wavs/LJ005-0098.npy -tests/data/ljspeech/wavs/LJ009-0295.wav|tests/data/ljspeech/wavs/LJ009-0295.npy -tests/data/ljspeech/wavs/LJ013-0133.wav|tests/data/ljspeech/wavs/LJ013-0133.npy -tests/data/ljspeech/wavs/LJ037-0147.wav|tests/data/ljspeech/wavs/LJ037-0147.npy -tests/data/ljspeech/wavs/LJ028-0324.wav|tests/data/ljspeech/wavs/LJ028-0324.npy -tests/data/ljspeech/wavs/LJ047-0152.wav|tests/data/ljspeech/wavs/LJ047-0152.npy -tests/data/ljspeech/wavs/LJ048-0186.wav|tests/data/ljspeech/wavs/LJ048-0186.npy -tests/data/ljspeech/wavs/LJ049-0022.wav|tests/data/ljspeech/wavs/LJ049-0022.npy -tests/data/ljspeech/wavs/LJ005-0006.wav|tests/data/ljspeech/wavs/LJ005-0006.npy -tests/data/ljspeech/wavs/LJ012-0100.wav|tests/data/ljspeech/wavs/LJ012-0100.npy -tests/data/ljspeech/wavs/LJ014-0129.wav|tests/data/ljspeech/wavs/LJ014-0129.npy -tests/data/ljspeech/wavs/LJ012-0270.wav|tests/data/ljspeech/wavs/LJ012-0270.npy -tests/data/ljspeech/wavs/LJ018-0112.wav|tests/data/ljspeech/wavs/LJ018-0112.npy -tests/data/ljspeech/wavs/LJ012-0238.wav|tests/data/ljspeech/wavs/LJ012-0238.npy -tests/data/ljspeech/wavs/LJ018-0107.wav|tests/data/ljspeech/wavs/LJ018-0107.npy -tests/data/ljspeech/wavs/LJ005-0052.wav|tests/data/ljspeech/wavs/LJ005-0052.npy -tests/data/ljspeech/wavs/LJ013-0086.wav|tests/data/ljspeech/wavs/LJ013-0086.npy -tests/data/ljspeech/wavs/LJ015-0039.wav|tests/data/ljspeech/wavs/LJ015-0039.npy -tests/data/ljspeech/wavs/LJ003-0085.wav|tests/data/ljspeech/wavs/LJ003-0085.npy -tests/data/ljspeech/wavs/LJ020-0046.wav|tests/data/ljspeech/wavs/LJ020-0046.npy -tests/data/ljspeech/wavs/LJ037-0107.wav|tests/data/ljspeech/wavs/LJ037-0107.npy -tests/data/ljspeech/wavs/LJ006-0093.wav|tests/data/ljspeech/wavs/LJ006-0093.npy -tests/data/ljspeech/wavs/LJ049-0108.wav|tests/data/ljspeech/wavs/LJ049-0108.npy -tests/data/ljspeech/wavs/LJ010-0247.wav|tests/data/ljspeech/wavs/LJ010-0247.npy -tests/data/ljspeech/wavs/LJ049-0150.wav|tests/data/ljspeech/wavs/LJ049-0150.npy -tests/data/ljspeech/wavs/LJ043-0168.wav|tests/data/ljspeech/wavs/LJ043-0168.npy -tests/data/ljspeech/wavs/LJ033-0111.wav|tests/data/ljspeech/wavs/LJ033-0111.npy -tests/data/ljspeech/wavs/LJ029-0126.wav|tests/data/ljspeech/wavs/LJ029-0126.npy -tests/data/ljspeech/wavs/LJ040-0150.wav|tests/data/ljspeech/wavs/LJ040-0150.npy -tests/data/ljspeech/wavs/LJ011-0108.wav|tests/data/ljspeech/wavs/LJ011-0108.npy -tests/data/ljspeech/wavs/LJ029-0022.wav|tests/data/ljspeech/wavs/LJ029-0022.npy -tests/data/ljspeech/wavs/LJ038-0081.wav|tests/data/ljspeech/wavs/LJ038-0081.npy -tests/data/ljspeech/wavs/LJ038-0288.wav|tests/data/ljspeech/wavs/LJ038-0288.npy -tests/data/ljspeech/wavs/LJ029-0069.wav|tests/data/ljspeech/wavs/LJ029-0069.npy -tests/data/ljspeech/wavs/LJ019-0241.wav|tests/data/ljspeech/wavs/LJ019-0241.npy -tests/data/ljspeech/wavs/LJ047-0181.wav|tests/data/ljspeech/wavs/LJ047-0181.npy -tests/data/ljspeech/wavs/LJ047-0050.wav|tests/data/ljspeech/wavs/LJ047-0050.npy -tests/data/ljspeech/wavs/LJ012-0064.wav|tests/data/ljspeech/wavs/LJ012-0064.npy -tests/data/ljspeech/wavs/LJ016-0353.wav|tests/data/ljspeech/wavs/LJ016-0353.npy -tests/data/ljspeech/wavs/LJ048-0155.wav|tests/data/ljspeech/wavs/LJ048-0155.npy -tests/data/ljspeech/wavs/LJ007-0104.wav|tests/data/ljspeech/wavs/LJ007-0104.npy -tests/data/ljspeech/wavs/LJ015-0104.wav|tests/data/ljspeech/wavs/LJ015-0104.npy -tests/data/ljspeech/wavs/LJ040-0035.wav|tests/data/ljspeech/wavs/LJ040-0035.npy -tests/data/ljspeech/wavs/LJ008-0094.wav|tests/data/ljspeech/wavs/LJ008-0094.npy -tests/data/ljspeech/wavs/LJ006-0095.wav|tests/data/ljspeech/wavs/LJ006-0095.npy -tests/data/ljspeech/wavs/LJ015-0166.wav|tests/data/ljspeech/wavs/LJ015-0166.npy -tests/data/ljspeech/wavs/LJ007-0072.wav|tests/data/ljspeech/wavs/LJ007-0072.npy -tests/data/ljspeech/wavs/LJ013-0118.wav|tests/data/ljspeech/wavs/LJ013-0118.npy -tests/data/ljspeech/wavs/LJ030-0031.wav|tests/data/ljspeech/wavs/LJ030-0031.npy -tests/data/ljspeech/wavs/LJ016-0357.wav|tests/data/ljspeech/wavs/LJ016-0357.npy -tests/data/ljspeech/wavs/LJ030-0234.wav|tests/data/ljspeech/wavs/LJ030-0234.npy -tests/data/ljspeech/wavs/LJ050-0086.wav|tests/data/ljspeech/wavs/LJ050-0086.npy -tests/data/ljspeech/wavs/LJ008-0286.wav|tests/data/ljspeech/wavs/LJ008-0286.npy -tests/data/ljspeech/wavs/LJ008-0158.wav|tests/data/ljspeech/wavs/LJ008-0158.npy -tests/data/ljspeech/wavs/LJ016-0214.wav|tests/data/ljspeech/wavs/LJ016-0214.npy -tests/data/ljspeech/wavs/LJ007-0010.wav|tests/data/ljspeech/wavs/LJ007-0010.npy -tests/data/ljspeech/wavs/LJ006-0282.wav|tests/data/ljspeech/wavs/LJ006-0282.npy -tests/data/ljspeech/wavs/LJ047-0156.wav|tests/data/ljspeech/wavs/LJ047-0156.npy -tests/data/ljspeech/wavs/LJ030-0157.wav|tests/data/ljspeech/wavs/LJ030-0157.npy -tests/data/ljspeech/wavs/LJ044-0211.wav|tests/data/ljspeech/wavs/LJ044-0211.npy -tests/data/ljspeech/wavs/LJ041-0051.wav|tests/data/ljspeech/wavs/LJ041-0051.npy -tests/data/ljspeech/wavs/LJ007-0140.wav|tests/data/ljspeech/wavs/LJ007-0140.npy -tests/data/ljspeech/wavs/LJ042-0233.wav|tests/data/ljspeech/wavs/LJ042-0233.npy -tests/data/ljspeech/wavs/LJ042-0136.wav|tests/data/ljspeech/wavs/LJ042-0136.npy -tests/data/ljspeech/wavs/LJ041-0115.wav|tests/data/ljspeech/wavs/LJ041-0115.npy -tests/data/ljspeech/wavs/LJ009-0114.wav|tests/data/ljspeech/wavs/LJ009-0114.npy -tests/data/ljspeech/wavs/LJ007-0185.wav|tests/data/ljspeech/wavs/LJ007-0185.npy -tests/data/ljspeech/wavs/LJ005-0242.wav|tests/data/ljspeech/wavs/LJ005-0242.npy -tests/data/ljspeech/wavs/LJ005-0214.wav|tests/data/ljspeech/wavs/LJ005-0214.npy -tests/data/ljspeech/wavs/LJ004-0235.wav|tests/data/ljspeech/wavs/LJ004-0235.npy -tests/data/ljspeech/wavs/LJ008-0039.wav|tests/data/ljspeech/wavs/LJ008-0039.npy -tests/data/ljspeech/wavs/LJ047-0018.wav|tests/data/ljspeech/wavs/LJ047-0018.npy -tests/data/ljspeech/wavs/LJ003-0040.wav|tests/data/ljspeech/wavs/LJ003-0040.npy -tests/data/ljspeech/wavs/LJ046-0219.wav|tests/data/ljspeech/wavs/LJ046-0219.npy -tests/data/ljspeech/wavs/LJ050-0275.wav|tests/data/ljspeech/wavs/LJ050-0275.npy -tests/data/ljspeech/wavs/LJ006-0017.wav|tests/data/ljspeech/wavs/LJ006-0017.npy -tests/data/ljspeech/wavs/LJ006-0027.wav|tests/data/ljspeech/wavs/LJ006-0027.npy -tests/data/ljspeech/wavs/LJ007-0235.wav|tests/data/ljspeech/wavs/LJ007-0235.npy -tests/data/ljspeech/wavs/LJ005-0233.wav|tests/data/ljspeech/wavs/LJ005-0233.npy -tests/data/ljspeech/wavs/LJ004-0121.wav|tests/data/ljspeech/wavs/LJ004-0121.npy -tests/data/ljspeech/wavs/LJ005-0063.wav|tests/data/ljspeech/wavs/LJ005-0063.npy -tests/data/ljspeech/wavs/LJ035-0067.wav|tests/data/ljspeech/wavs/LJ035-0067.npy -tests/data/ljspeech/wavs/LJ007-0045.wav|tests/data/ljspeech/wavs/LJ007-0045.npy -tests/data/ljspeech/wavs/LJ012-0117.wav|tests/data/ljspeech/wavs/LJ012-0117.npy -tests/data/ljspeech/wavs/LJ042-0178.wav|tests/data/ljspeech/wavs/LJ042-0178.npy -tests/data/ljspeech/wavs/LJ005-0192.wav|tests/data/ljspeech/wavs/LJ005-0192.npy -tests/data/ljspeech/wavs/LJ008-0264.wav|tests/data/ljspeech/wavs/LJ008-0264.npy -tests/data/ljspeech/wavs/LJ003-0233.wav|tests/data/ljspeech/wavs/LJ003-0233.npy -tests/data/ljspeech/wavs/LJ004-0036.wav|tests/data/ljspeech/wavs/LJ004-0036.npy -tests/data/ljspeech/wavs/LJ009-0131.wav|tests/data/ljspeech/wavs/LJ009-0131.npy -tests/data/ljspeech/wavs/LJ050-0226.wav|tests/data/ljspeech/wavs/LJ050-0226.npy -tests/data/ljspeech/wavs/LJ002-0196.wav|tests/data/ljspeech/wavs/LJ002-0196.npy -tests/data/ljspeech/wavs/LJ001-0096.wav|tests/data/ljspeech/wavs/LJ001-0096.npy -tests/data/ljspeech/wavs/LJ016-0436.wav|tests/data/ljspeech/wavs/LJ016-0436.npy -tests/data/ljspeech/wavs/LJ004-0005.wav|tests/data/ljspeech/wavs/LJ004-0005.npy -tests/data/ljspeech/wavs/LJ016-0228.wav|tests/data/ljspeech/wavs/LJ016-0228.npy -tests/data/ljspeech/wavs/LJ049-0011.wav|tests/data/ljspeech/wavs/LJ049-0011.npy -tests/data/ljspeech/wavs/LJ031-0016.wav|tests/data/ljspeech/wavs/LJ031-0016.npy -tests/data/ljspeech/wavs/LJ018-0032.wav|tests/data/ljspeech/wavs/LJ018-0032.npy -tests/data/ljspeech/wavs/LJ031-0063.wav|tests/data/ljspeech/wavs/LJ031-0063.npy -tests/data/ljspeech/wavs/LJ016-0377.wav|tests/data/ljspeech/wavs/LJ016-0377.npy -tests/data/ljspeech/wavs/LJ016-0134.wav|tests/data/ljspeech/wavs/LJ016-0134.npy -tests/data/ljspeech/wavs/LJ014-0058.wav|tests/data/ljspeech/wavs/LJ014-0058.npy -tests/data/ljspeech/wavs/LJ001-0059.wav|tests/data/ljspeech/wavs/LJ001-0059.npy -tests/data/ljspeech/wavs/LJ016-0399.wav|tests/data/ljspeech/wavs/LJ016-0399.npy -tests/data/ljspeech/wavs/LJ032-0125.wav|tests/data/ljspeech/wavs/LJ032-0125.npy -tests/data/ljspeech/wavs/LJ032-0065.wav|tests/data/ljspeech/wavs/LJ032-0065.npy -tests/data/ljspeech/wavs/LJ013-0038.wav|tests/data/ljspeech/wavs/LJ013-0038.npy -tests/data/ljspeech/wavs/LJ002-0328.wav|tests/data/ljspeech/wavs/LJ002-0328.npy -tests/data/ljspeech/wavs/LJ017-0084.wav|tests/data/ljspeech/wavs/LJ017-0084.npy -tests/data/ljspeech/wavs/LJ016-0272.wav|tests/data/ljspeech/wavs/LJ016-0272.npy -tests/data/ljspeech/wavs/LJ047-0231.wav|tests/data/ljspeech/wavs/LJ047-0231.npy -tests/data/ljspeech/wavs/LJ014-0287.wav|tests/data/ljspeech/wavs/LJ014-0287.npy -tests/data/ljspeech/wavs/LJ049-0149.wav|tests/data/ljspeech/wavs/LJ049-0149.npy -tests/data/ljspeech/wavs/LJ016-0384.wav|tests/data/ljspeech/wavs/LJ016-0384.npy -tests/data/ljspeech/wavs/LJ012-0195.wav|tests/data/ljspeech/wavs/LJ012-0195.npy -tests/data/ljspeech/wavs/LJ014-0089.wav|tests/data/ljspeech/wavs/LJ014-0089.npy -tests/data/ljspeech/wavs/LJ016-0028.wav|tests/data/ljspeech/wavs/LJ016-0028.npy -tests/data/ljspeech/wavs/LJ031-0108.wav|tests/data/ljspeech/wavs/LJ031-0108.npy -tests/data/ljspeech/wavs/LJ017-0233.wav|tests/data/ljspeech/wavs/LJ017-0233.npy -tests/data/ljspeech/wavs/LJ013-0067.wav|tests/data/ljspeech/wavs/LJ013-0067.npy -tests/data/ljspeech/wavs/LJ014-0100.wav|tests/data/ljspeech/wavs/LJ014-0100.npy -tests/data/ljspeech/wavs/LJ042-0154.wav|tests/data/ljspeech/wavs/LJ042-0154.npy -tests/data/ljspeech/wavs/LJ011-0260.wav|tests/data/ljspeech/wavs/LJ011-0260.npy -tests/data/ljspeech/wavs/LJ011-0065.wav|tests/data/ljspeech/wavs/LJ011-0065.npy -tests/data/ljspeech/wavs/LJ045-0166.wav|tests/data/ljspeech/wavs/LJ045-0166.npy -tests/data/ljspeech/wavs/LJ006-0284.wav|tests/data/ljspeech/wavs/LJ006-0284.npy -tests/data/ljspeech/wavs/LJ037-0080.wav|tests/data/ljspeech/wavs/LJ037-0080.npy -tests/data/ljspeech/wavs/LJ019-0354.wav|tests/data/ljspeech/wavs/LJ019-0354.npy -tests/data/ljspeech/wavs/LJ007-0145.wav|tests/data/ljspeech/wavs/LJ007-0145.npy -tests/data/ljspeech/wavs/LJ034-0199.wav|tests/data/ljspeech/wavs/LJ034-0199.npy -tests/data/ljspeech/wavs/LJ038-0294.wav|tests/data/ljspeech/wavs/LJ038-0294.npy -tests/data/ljspeech/wavs/LJ015-0170.wav|tests/data/ljspeech/wavs/LJ015-0170.npy -tests/data/ljspeech/wavs/LJ001-0001.wav|tests/data/ljspeech/wavs/LJ001-0001.npy -tests/data/ljspeech/wavs/LJ041-0194.wav|tests/data/ljspeech/wavs/LJ041-0194.npy -tests/data/ljspeech/wavs/LJ007-0062.wav|tests/data/ljspeech/wavs/LJ007-0062.npy -tests/data/ljspeech/wavs/LJ029-0043.wav|tests/data/ljspeech/wavs/LJ029-0043.npy -tests/data/ljspeech/wavs/LJ043-0102.wav|tests/data/ljspeech/wavs/LJ043-0102.npy -tests/data/ljspeech/wavs/LJ033-0198.wav|tests/data/ljspeech/wavs/LJ033-0198.npy -tests/data/ljspeech/wavs/LJ006-0271.wav|tests/data/ljspeech/wavs/LJ006-0271.npy -tests/data/ljspeech/wavs/LJ046-0074.wav|tests/data/ljspeech/wavs/LJ046-0074.npy -tests/data/ljspeech/wavs/LJ019-0256.wav|tests/data/ljspeech/wavs/LJ019-0256.npy -tests/data/ljspeech/wavs/LJ019-0364.wav|tests/data/ljspeech/wavs/LJ019-0364.npy -tests/data/ljspeech/wavs/LJ014-0079.wav|tests/data/ljspeech/wavs/LJ014-0079.npy -tests/data/ljspeech/wavs/LJ029-0189.wav|tests/data/ljspeech/wavs/LJ029-0189.npy -tests/data/ljspeech/wavs/LJ034-0140.wav|tests/data/ljspeech/wavs/LJ034-0140.npy -tests/data/ljspeech/wavs/LJ009-0055.wav|tests/data/ljspeech/wavs/LJ009-0055.npy -tests/data/ljspeech/wavs/LJ008-0012.wav|tests/data/ljspeech/wavs/LJ008-0012.npy -tests/data/ljspeech/wavs/LJ016-0015.wav|tests/data/ljspeech/wavs/LJ016-0015.npy -tests/data/ljspeech/wavs/LJ014-0002.wav|tests/data/ljspeech/wavs/LJ014-0002.npy -tests/data/ljspeech/wavs/LJ009-0240.wav|tests/data/ljspeech/wavs/LJ009-0240.npy -tests/data/ljspeech/wavs/LJ010-0183.wav|tests/data/ljspeech/wavs/LJ010-0183.npy -tests/data/ljspeech/wavs/LJ020-0107.wav|tests/data/ljspeech/wavs/LJ020-0107.npy -tests/data/ljspeech/wavs/LJ007-0016.wav|tests/data/ljspeech/wavs/LJ007-0016.npy -tests/data/ljspeech/wavs/LJ045-0086.wav|tests/data/ljspeech/wavs/LJ045-0086.npy -tests/data/ljspeech/wavs/LJ031-0199.wav|tests/data/ljspeech/wavs/LJ031-0199.npy -tests/data/ljspeech/wavs/LJ041-0189.wav|tests/data/ljspeech/wavs/LJ041-0189.npy -tests/data/ljspeech/wavs/LJ046-0246.wav|tests/data/ljspeech/wavs/LJ046-0246.npy -tests/data/ljspeech/wavs/LJ018-0091.wav|tests/data/ljspeech/wavs/LJ018-0091.npy -tests/data/ljspeech/wavs/LJ017-0002.wav|tests/data/ljspeech/wavs/LJ017-0002.npy -tests/data/ljspeech/wavs/LJ035-0176.wav|tests/data/ljspeech/wavs/LJ035-0176.npy -tests/data/ljspeech/wavs/LJ044-0155.wav|tests/data/ljspeech/wavs/LJ044-0155.npy -tests/data/ljspeech/wavs/LJ046-0252.wav|tests/data/ljspeech/wavs/LJ046-0252.npy -tests/data/ljspeech/wavs/LJ016-0065.wav|tests/data/ljspeech/wavs/LJ016-0065.npy -tests/data/ljspeech/wavs/LJ016-0067.wav|tests/data/ljspeech/wavs/LJ016-0067.npy -tests/data/ljspeech/wavs/LJ041-0165.wav|tests/data/ljspeech/wavs/LJ041-0165.npy -tests/data/ljspeech/wavs/LJ038-0232.wav|tests/data/ljspeech/wavs/LJ038-0232.npy -tests/data/ljspeech/wavs/LJ006-0151.wav|tests/data/ljspeech/wavs/LJ006-0151.npy -tests/data/ljspeech/wavs/LJ017-0139.wav|tests/data/ljspeech/wavs/LJ017-0139.npy -tests/data/ljspeech/wavs/LJ008-0130.wav|tests/data/ljspeech/wavs/LJ008-0130.npy -tests/data/ljspeech/wavs/LJ029-0147.wav|tests/data/ljspeech/wavs/LJ029-0147.npy -tests/data/ljspeech/wavs/LJ014-0097.wav|tests/data/ljspeech/wavs/LJ014-0097.npy -tests/data/ljspeech/wavs/LJ032-0131.wav|tests/data/ljspeech/wavs/LJ032-0131.npy -tests/data/ljspeech/wavs/LJ038-0080.wav|tests/data/ljspeech/wavs/LJ038-0080.npy -tests/data/ljspeech/wavs/LJ041-0144.wav|tests/data/ljspeech/wavs/LJ041-0144.npy -tests/data/ljspeech/wavs/LJ040-0133.wav|tests/data/ljspeech/wavs/LJ040-0133.npy -tests/data/ljspeech/wavs/LJ035-0094.wav|tests/data/ljspeech/wavs/LJ035-0094.npy -tests/data/ljspeech/wavs/LJ019-0237.wav|tests/data/ljspeech/wavs/LJ019-0237.npy -tests/data/ljspeech/wavs/LJ032-0275.wav|tests/data/ljspeech/wavs/LJ032-0275.npy -tests/data/ljspeech/wavs/LJ048-0255.wav|tests/data/ljspeech/wavs/LJ048-0255.npy -tests/data/ljspeech/wavs/LJ006-0256.wav|tests/data/ljspeech/wavs/LJ006-0256.npy -tests/data/ljspeech/wavs/LJ040-0170.wav|tests/data/ljspeech/wavs/LJ040-0170.npy -tests/data/ljspeech/wavs/LJ029-0106.wav|tests/data/ljspeech/wavs/LJ029-0106.npy -tests/data/ljspeech/wavs/LJ016-0423.wav|tests/data/ljspeech/wavs/LJ016-0423.npy -tests/data/ljspeech/wavs/LJ005-0227.wav|tests/data/ljspeech/wavs/LJ005-0227.npy -tests/data/ljspeech/wavs/LJ038-0018.wav|tests/data/ljspeech/wavs/LJ038-0018.npy -tests/data/ljspeech/wavs/LJ035-0040.wav|tests/data/ljspeech/wavs/LJ035-0040.npy -tests/data/ljspeech/wavs/LJ028-0133.wav|tests/data/ljspeech/wavs/LJ028-0133.npy -tests/data/ljspeech/wavs/LJ029-0040.wav|tests/data/ljspeech/wavs/LJ029-0040.npy -tests/data/ljspeech/wavs/LJ028-0214.wav|tests/data/ljspeech/wavs/LJ028-0214.npy -tests/data/ljspeech/wavs/LJ007-0172.wav|tests/data/ljspeech/wavs/LJ007-0172.npy -tests/data/ljspeech/wavs/LJ012-0116.wav|tests/data/ljspeech/wavs/LJ012-0116.npy -tests/data/ljspeech/wavs/LJ035-0075.wav|tests/data/ljspeech/wavs/LJ035-0075.npy -tests/data/ljspeech/wavs/LJ047-0173.wav|tests/data/ljspeech/wavs/LJ047-0173.npy -tests/data/ljspeech/wavs/LJ041-0126.wav|tests/data/ljspeech/wavs/LJ041-0126.npy -tests/data/ljspeech/wavs/LJ019-0044.wav|tests/data/ljspeech/wavs/LJ019-0044.npy -tests/data/ljspeech/wavs/LJ050-0111.wav|tests/data/ljspeech/wavs/LJ050-0111.npy -tests/data/ljspeech/wavs/LJ050-0267.wav|tests/data/ljspeech/wavs/LJ050-0267.npy -tests/data/ljspeech/wavs/LJ005-0127.wav|tests/data/ljspeech/wavs/LJ005-0127.npy -tests/data/ljspeech/wavs/LJ011-0007.wav|tests/data/ljspeech/wavs/LJ011-0007.npy -tests/data/ljspeech/wavs/LJ016-0394.wav|tests/data/ljspeech/wavs/LJ016-0394.npy -tests/data/ljspeech/wavs/LJ033-0081.wav|tests/data/ljspeech/wavs/LJ033-0081.npy -tests/data/ljspeech/wavs/LJ011-0025.wav|tests/data/ljspeech/wavs/LJ011-0025.npy -tests/data/ljspeech/wavs/LJ049-0207.wav|tests/data/ljspeech/wavs/LJ049-0207.npy -tests/data/ljspeech/wavs/LJ031-0101.wav|tests/data/ljspeech/wavs/LJ031-0101.npy -tests/data/ljspeech/wavs/LJ002-0295.wav|tests/data/ljspeech/wavs/LJ002-0295.npy -tests/data/ljspeech/wavs/LJ009-0056.wav|tests/data/ljspeech/wavs/LJ009-0056.npy -tests/data/ljspeech/wavs/LJ045-0243.wav|tests/data/ljspeech/wavs/LJ045-0243.npy -tests/data/ljspeech/wavs/LJ005-0165.wav|tests/data/ljspeech/wavs/LJ005-0165.npy -tests/data/ljspeech/wavs/LJ012-0225.wav|tests/data/ljspeech/wavs/LJ012-0225.npy -tests/data/ljspeech/wavs/LJ028-0345.wav|tests/data/ljspeech/wavs/LJ028-0345.npy -tests/data/ljspeech/wavs/LJ003-0221.wav|tests/data/ljspeech/wavs/LJ003-0221.npy -tests/data/ljspeech/wavs/LJ015-0201.wav|tests/data/ljspeech/wavs/LJ015-0201.npy -tests/data/ljspeech/wavs/LJ029-0119.wav|tests/data/ljspeech/wavs/LJ029-0119.npy -tests/data/ljspeech/wavs/LJ012-0094.wav|tests/data/ljspeech/wavs/LJ012-0094.npy -tests/data/ljspeech/wavs/LJ008-0034.wav|tests/data/ljspeech/wavs/LJ008-0034.npy -tests/data/ljspeech/wavs/LJ011-0292.wav|tests/data/ljspeech/wavs/LJ011-0292.npy -tests/data/ljspeech/wavs/LJ041-0134.wav|tests/data/ljspeech/wavs/LJ041-0134.npy -tests/data/ljspeech/wavs/LJ041-0185.wav|tests/data/ljspeech/wavs/LJ041-0185.npy -tests/data/ljspeech/wavs/LJ041-0182.wav|tests/data/ljspeech/wavs/LJ041-0182.npy -tests/data/ljspeech/wavs/LJ006-0177.wav|tests/data/ljspeech/wavs/LJ006-0177.npy -tests/data/ljspeech/wavs/LJ018-0272.wav|tests/data/ljspeech/wavs/LJ018-0272.npy -tests/data/ljspeech/wavs/LJ043-0118.wav|tests/data/ljspeech/wavs/LJ043-0118.npy -tests/data/ljspeech/wavs/LJ045-0226.wav|tests/data/ljspeech/wavs/LJ045-0226.npy -tests/data/ljspeech/wavs/LJ036-0071.wav|tests/data/ljspeech/wavs/LJ036-0071.npy -tests/data/ljspeech/wavs/LJ046-0064.wav|tests/data/ljspeech/wavs/LJ046-0064.npy -tests/data/ljspeech/wavs/LJ029-0081.wav|tests/data/ljspeech/wavs/LJ029-0081.npy -tests/data/ljspeech/wavs/LJ045-0048.wav|tests/data/ljspeech/wavs/LJ045-0048.npy -tests/data/ljspeech/wavs/LJ028-0203.wav|tests/data/ljspeech/wavs/LJ028-0203.npy -tests/data/ljspeech/wavs/LJ007-0153.wav|tests/data/ljspeech/wavs/LJ007-0153.npy -tests/data/ljspeech/wavs/LJ036-0135.wav|tests/data/ljspeech/wavs/LJ036-0135.npy -tests/data/ljspeech/wavs/LJ009-0029.wav|tests/data/ljspeech/wavs/LJ009-0029.npy -tests/data/ljspeech/wavs/LJ028-0253.wav|tests/data/ljspeech/wavs/LJ028-0253.npy -tests/data/ljspeech/wavs/LJ031-0165.wav|tests/data/ljspeech/wavs/LJ031-0165.npy -tests/data/ljspeech/wavs/LJ032-0070.wav|tests/data/ljspeech/wavs/LJ032-0070.npy -tests/data/ljspeech/wavs/LJ049-0220.wav|tests/data/ljspeech/wavs/LJ049-0220.npy -tests/data/ljspeech/wavs/LJ038-0040.wav|tests/data/ljspeech/wavs/LJ038-0040.npy -tests/data/ljspeech/wavs/LJ049-0072.wav|tests/data/ljspeech/wavs/LJ049-0072.npy -tests/data/ljspeech/wavs/LJ006-0011.wav|tests/data/ljspeech/wavs/LJ006-0011.npy -tests/data/ljspeech/wavs/LJ038-0107.wav|tests/data/ljspeech/wavs/LJ038-0107.npy -tests/data/ljspeech/wavs/LJ048-0201.wav|tests/data/ljspeech/wavs/LJ048-0201.npy -tests/data/ljspeech/wavs/LJ028-0033.wav|tests/data/ljspeech/wavs/LJ028-0033.npy -tests/data/ljspeech/wavs/LJ003-0124.wav|tests/data/ljspeech/wavs/LJ003-0124.npy -tests/data/ljspeech/wavs/LJ032-0227.wav|tests/data/ljspeech/wavs/LJ032-0227.npy -tests/data/ljspeech/wavs/LJ049-0196.wav|tests/data/ljspeech/wavs/LJ049-0196.npy -tests/data/ljspeech/wavs/LJ006-0135.wav|tests/data/ljspeech/wavs/LJ006-0135.npy -tests/data/ljspeech/wavs/LJ012-0121.wav|tests/data/ljspeech/wavs/LJ012-0121.npy -tests/data/ljspeech/wavs/LJ028-0073.wav|tests/data/ljspeech/wavs/LJ028-0073.npy -tests/data/ljspeech/wavs/LJ017-0028.wav|tests/data/ljspeech/wavs/LJ017-0028.npy -tests/data/ljspeech/wavs/LJ048-0090.wav|tests/data/ljspeech/wavs/LJ048-0090.npy -tests/data/ljspeech/wavs/LJ026-0038.wav|tests/data/ljspeech/wavs/LJ026-0038.npy -tests/data/ljspeech/wavs/LJ032-0251.wav|tests/data/ljspeech/wavs/LJ032-0251.npy -tests/data/ljspeech/wavs/LJ034-0172.wav|tests/data/ljspeech/wavs/LJ034-0172.npy -tests/data/ljspeech/wavs/LJ007-0067.wav|tests/data/ljspeech/wavs/LJ007-0067.npy -tests/data/ljspeech/wavs/LJ002-0337.wav|tests/data/ljspeech/wavs/LJ002-0337.npy -tests/data/ljspeech/wavs/LJ011-0089.wav|tests/data/ljspeech/wavs/LJ011-0089.npy -tests/data/ljspeech/wavs/LJ012-0160.wav|tests/data/ljspeech/wavs/LJ012-0160.npy -tests/data/ljspeech/wavs/LJ037-0013.wav|tests/data/ljspeech/wavs/LJ037-0013.npy -tests/data/ljspeech/wavs/LJ048-0037.wav|tests/data/ljspeech/wavs/LJ048-0037.npy -tests/data/ljspeech/wavs/LJ029-0095.wav|tests/data/ljspeech/wavs/LJ029-0095.npy -tests/data/ljspeech/wavs/LJ019-0169.wav|tests/data/ljspeech/wavs/LJ019-0169.npy -tests/data/ljspeech/wavs/LJ008-0078.wav|tests/data/ljspeech/wavs/LJ008-0078.npy -tests/data/ljspeech/wavs/LJ047-0102.wav|tests/data/ljspeech/wavs/LJ047-0102.npy -tests/data/ljspeech/wavs/LJ037-0249.wav|tests/data/ljspeech/wavs/LJ037-0249.npy -tests/data/ljspeech/wavs/LJ040-0230.wav|tests/data/ljspeech/wavs/LJ040-0230.npy -tests/data/ljspeech/wavs/LJ008-0063.wav|tests/data/ljspeech/wavs/LJ008-0063.npy -tests/data/ljspeech/wavs/LJ007-0227.wav|tests/data/ljspeech/wavs/LJ007-0227.npy -tests/data/ljspeech/wavs/LJ014-0258.wav|tests/data/ljspeech/wavs/LJ014-0258.npy -tests/data/ljspeech/wavs/LJ034-0034.wav|tests/data/ljspeech/wavs/LJ034-0034.npy -tests/data/ljspeech/wavs/LJ020-0040.wav|tests/data/ljspeech/wavs/LJ020-0040.npy -tests/data/ljspeech/wavs/LJ047-0175.wav|tests/data/ljspeech/wavs/LJ047-0175.npy -tests/data/ljspeech/wavs/LJ046-0225.wav|tests/data/ljspeech/wavs/LJ046-0225.npy -tests/data/ljspeech/wavs/LJ038-0066.wav|tests/data/ljspeech/wavs/LJ038-0066.npy -tests/data/ljspeech/wavs/LJ038-0047.wav|tests/data/ljspeech/wavs/LJ038-0047.npy -tests/data/ljspeech/wavs/LJ037-0170.wav|tests/data/ljspeech/wavs/LJ037-0170.npy -tests/data/ljspeech/wavs/LJ048-0005.wav|tests/data/ljspeech/wavs/LJ048-0005.npy -tests/data/ljspeech/wavs/LJ038-0298.wav|tests/data/ljspeech/wavs/LJ038-0298.npy -tests/data/ljspeech/wavs/LJ008-0242.wav|tests/data/ljspeech/wavs/LJ008-0242.npy -tests/data/ljspeech/wavs/LJ029-0087.wav|tests/data/ljspeech/wavs/LJ029-0087.npy -tests/data/ljspeech/wavs/LJ034-0194.wav|tests/data/ljspeech/wavs/LJ034-0194.npy -tests/data/ljspeech/wavs/LJ008-0277.wav|tests/data/ljspeech/wavs/LJ008-0277.npy -tests/data/ljspeech/wavs/LJ012-0110.wav|tests/data/ljspeech/wavs/LJ012-0110.npy -tests/data/ljspeech/wavs/LJ030-0014.wav|tests/data/ljspeech/wavs/LJ030-0014.npy -tests/data/ljspeech/wavs/LJ048-0178.wav|tests/data/ljspeech/wavs/LJ048-0178.npy -tests/data/ljspeech/wavs/LJ041-0151.wav|tests/data/ljspeech/wavs/LJ041-0151.npy -tests/data/ljspeech/wavs/LJ045-0104.wav|tests/data/ljspeech/wavs/LJ045-0104.npy -tests/data/ljspeech/wavs/LJ036-0046.wav|tests/data/ljspeech/wavs/LJ036-0046.npy -tests/data/ljspeech/wavs/LJ044-0153.wav|tests/data/ljspeech/wavs/LJ044-0153.npy -tests/data/ljspeech/wavs/LJ043-0147.wav|tests/data/ljspeech/wavs/LJ043-0147.npy -tests/data/ljspeech/wavs/LJ043-0177.wav|tests/data/ljspeech/wavs/LJ043-0177.npy -tests/data/ljspeech/wavs/LJ004-0242.wav|tests/data/ljspeech/wavs/LJ004-0242.npy -tests/data/ljspeech/wavs/LJ029-0142.wav|tests/data/ljspeech/wavs/LJ029-0142.npy -tests/data/ljspeech/wavs/LJ003-0011.wav|tests/data/ljspeech/wavs/LJ003-0011.npy -tests/data/ljspeech/wavs/LJ005-0047.wav|tests/data/ljspeech/wavs/LJ005-0047.npy -tests/data/ljspeech/wavs/LJ048-0168.wav|tests/data/ljspeech/wavs/LJ048-0168.npy -tests/data/ljspeech/wavs/LJ044-0041.wav|tests/data/ljspeech/wavs/LJ044-0041.npy -tests/data/ljspeech/wavs/LJ048-0273.wav|tests/data/ljspeech/wavs/LJ048-0273.npy -tests/data/ljspeech/wavs/LJ048-0187.wav|tests/data/ljspeech/wavs/LJ048-0187.npy -tests/data/ljspeech/wavs/LJ005-0128.wav|tests/data/ljspeech/wavs/LJ005-0128.npy -tests/data/ljspeech/wavs/LJ048-0063.wav|tests/data/ljspeech/wavs/LJ048-0063.npy -tests/data/ljspeech/wavs/LJ019-0373.wav|tests/data/ljspeech/wavs/LJ019-0373.npy -tests/data/ljspeech/wavs/LJ037-0139.wav|tests/data/ljspeech/wavs/LJ037-0139.npy -tests/data/ljspeech/wavs/LJ005-0055.wav|tests/data/ljspeech/wavs/LJ005-0055.npy -tests/data/ljspeech/wavs/LJ031-0019.wav|tests/data/ljspeech/wavs/LJ031-0019.npy -tests/data/ljspeech/wavs/LJ050-0229.wav|tests/data/ljspeech/wavs/LJ050-0229.npy -tests/data/ljspeech/wavs/LJ048-0110.wav|tests/data/ljspeech/wavs/LJ048-0110.npy -tests/data/ljspeech/wavs/LJ042-0030.wav|tests/data/ljspeech/wavs/LJ042-0030.npy -tests/data/ljspeech/wavs/LJ002-0322.wav|tests/data/ljspeech/wavs/LJ002-0322.npy -tests/data/ljspeech/wavs/LJ019-0255.wav|tests/data/ljspeech/wavs/LJ019-0255.npy -tests/data/ljspeech/wavs/LJ046-0066.wav|tests/data/ljspeech/wavs/LJ046-0066.npy -tests/data/ljspeech/wavs/LJ018-0313.wav|tests/data/ljspeech/wavs/LJ018-0313.npy -tests/data/ljspeech/wavs/LJ041-0058.wav|tests/data/ljspeech/wavs/LJ041-0058.npy -tests/data/ljspeech/wavs/LJ028-0243.wav|tests/data/ljspeech/wavs/LJ028-0243.npy -tests/data/ljspeech/wavs/LJ028-0489.wav|tests/data/ljspeech/wavs/LJ028-0489.npy -tests/data/ljspeech/wavs/LJ029-0061.wav|tests/data/ljspeech/wavs/LJ029-0061.npy -tests/data/ljspeech/wavs/LJ003-0008.wav|tests/data/ljspeech/wavs/LJ003-0008.npy -tests/data/ljspeech/wavs/LJ050-0234.wav|tests/data/ljspeech/wavs/LJ050-0234.npy -tests/data/ljspeech/wavs/LJ026-0043.wav|tests/data/ljspeech/wavs/LJ026-0043.npy -tests/data/ljspeech/wavs/LJ016-0390.wav|tests/data/ljspeech/wavs/LJ016-0390.npy -tests/data/ljspeech/wavs/LJ034-0074.wav|tests/data/ljspeech/wavs/LJ034-0074.npy -tests/data/ljspeech/wavs/LJ031-0205.wav|tests/data/ljspeech/wavs/LJ031-0205.npy -tests/data/ljspeech/wavs/LJ046-0222.wav|tests/data/ljspeech/wavs/LJ046-0222.npy -tests/data/ljspeech/wavs/LJ044-0118.wav|tests/data/ljspeech/wavs/LJ044-0118.npy -tests/data/ljspeech/wavs/LJ016-0435.wav|tests/data/ljspeech/wavs/LJ016-0435.npy -tests/data/ljspeech/wavs/LJ041-0072.wav|tests/data/ljspeech/wavs/LJ041-0072.npy -tests/data/ljspeech/wavs/LJ035-0076.wav|tests/data/ljspeech/wavs/LJ035-0076.npy -tests/data/ljspeech/wavs/LJ006-0048.wav|tests/data/ljspeech/wavs/LJ006-0048.npy -tests/data/ljspeech/wavs/LJ014-0096.wav|tests/data/ljspeech/wavs/LJ014-0096.npy -tests/data/ljspeech/wavs/LJ012-0101.wav|tests/data/ljspeech/wavs/LJ012-0101.npy -tests/data/ljspeech/wavs/LJ028-0027.wav|tests/data/ljspeech/wavs/LJ028-0027.npy -tests/data/ljspeech/wavs/LJ006-0058.wav|tests/data/ljspeech/wavs/LJ006-0058.npy -tests/data/ljspeech/wavs/LJ035-0020.wav|tests/data/ljspeech/wavs/LJ035-0020.npy -tests/data/ljspeech/wavs/LJ034-0059.wav|tests/data/ljspeech/wavs/LJ034-0059.npy -tests/data/ljspeech/wavs/LJ001-0003.wav|tests/data/ljspeech/wavs/LJ001-0003.npy -tests/data/ljspeech/wavs/LJ040-0199.wav|tests/data/ljspeech/wavs/LJ040-0199.npy -tests/data/ljspeech/wavs/LJ011-0043.wav|tests/data/ljspeech/wavs/LJ011-0043.npy -tests/data/ljspeech/wavs/LJ004-0224.wav|tests/data/ljspeech/wavs/LJ004-0224.npy -tests/data/ljspeech/wavs/LJ049-0205.wav|tests/data/ljspeech/wavs/LJ049-0205.npy -tests/data/ljspeech/wavs/LJ006-0231.wav|tests/data/ljspeech/wavs/LJ006-0231.npy -tests/data/ljspeech/wavs/LJ045-0148.wav|tests/data/ljspeech/wavs/LJ045-0148.npy -tests/data/ljspeech/wavs/LJ012-0091.wav|tests/data/ljspeech/wavs/LJ012-0091.npy -tests/data/ljspeech/wavs/LJ002-0027.wav|tests/data/ljspeech/wavs/LJ002-0027.npy -tests/data/ljspeech/wavs/LJ048-0072.wav|tests/data/ljspeech/wavs/LJ048-0072.npy -tests/data/ljspeech/wavs/LJ006-0199.wav|tests/data/ljspeech/wavs/LJ006-0199.npy -tests/data/ljspeech/wavs/LJ019-0300.wav|tests/data/ljspeech/wavs/LJ019-0300.npy -tests/data/ljspeech/wavs/LJ018-0044.wav|tests/data/ljspeech/wavs/LJ018-0044.npy -tests/data/ljspeech/wavs/LJ047-0106.wav|tests/data/ljspeech/wavs/LJ047-0106.npy -tests/data/ljspeech/wavs/LJ045-0182.wav|tests/data/ljspeech/wavs/LJ045-0182.npy -tests/data/ljspeech/wavs/LJ012-0095.wav|tests/data/ljspeech/wavs/LJ012-0095.npy -tests/data/ljspeech/wavs/LJ031-0056.wav|tests/data/ljspeech/wavs/LJ031-0056.npy -tests/data/ljspeech/wavs/LJ007-0063.wav|tests/data/ljspeech/wavs/LJ007-0063.npy -tests/data/ljspeech/wavs/LJ048-0011.wav|tests/data/ljspeech/wavs/LJ048-0011.npy -tests/data/ljspeech/wavs/LJ028-0284.wav|tests/data/ljspeech/wavs/LJ028-0284.npy -tests/data/ljspeech/wavs/LJ004-0234.wav|tests/data/ljspeech/wavs/LJ004-0234.npy -tests/data/ljspeech/wavs/LJ041-0030.wav|tests/data/ljspeech/wavs/LJ041-0030.npy -tests/data/ljspeech/wavs/LJ039-0127.wav|tests/data/ljspeech/wavs/LJ039-0127.npy -tests/data/ljspeech/wavs/LJ039-0096.wav|tests/data/ljspeech/wavs/LJ039-0096.npy -tests/data/ljspeech/wavs/LJ032-0032.wav|tests/data/ljspeech/wavs/LJ032-0032.npy -tests/data/ljspeech/wavs/LJ012-0234.wav|tests/data/ljspeech/wavs/LJ012-0234.npy -tests/data/ljspeech/wavs/LJ016-0105.wav|tests/data/ljspeech/wavs/LJ016-0105.npy -tests/data/ljspeech/wavs/LJ031-0071.wav|tests/data/ljspeech/wavs/LJ031-0071.npy -tests/data/ljspeech/wavs/LJ007-0125.wav|tests/data/ljspeech/wavs/LJ007-0125.npy -tests/data/ljspeech/wavs/LJ017-0120.wav|tests/data/ljspeech/wavs/LJ017-0120.npy -tests/data/ljspeech/wavs/LJ050-0277.wav|tests/data/ljspeech/wavs/LJ050-0277.npy -tests/data/ljspeech/wavs/LJ012-0187.wav|tests/data/ljspeech/wavs/LJ012-0187.npy -tests/data/ljspeech/wavs/LJ038-0275.wav|tests/data/ljspeech/wavs/LJ038-0275.npy -tests/data/ljspeech/wavs/LJ018-0292.wav|tests/data/ljspeech/wavs/LJ018-0292.npy -tests/data/ljspeech/wavs/LJ016-0042.wav|tests/data/ljspeech/wavs/LJ016-0042.npy -tests/data/ljspeech/wavs/LJ008-0042.wav|tests/data/ljspeech/wavs/LJ008-0042.npy -tests/data/ljspeech/wavs/LJ040-0023.wav|tests/data/ljspeech/wavs/LJ040-0023.npy -tests/data/ljspeech/wavs/LJ033-0134.wav|tests/data/ljspeech/wavs/LJ033-0134.npy -tests/data/ljspeech/wavs/LJ033-0044.wav|tests/data/ljspeech/wavs/LJ033-0044.npy -tests/data/ljspeech/wavs/LJ019-0172.wav|tests/data/ljspeech/wavs/LJ019-0172.npy -tests/data/ljspeech/wavs/LJ047-0125.wav|tests/data/ljspeech/wavs/LJ047-0125.npy -tests/data/ljspeech/wavs/LJ003-0286.wav|tests/data/ljspeech/wavs/LJ003-0286.npy -tests/data/ljspeech/wavs/LJ038-0109.wav|tests/data/ljspeech/wavs/LJ038-0109.npy -tests/data/ljspeech/wavs/LJ003-0033.wav|tests/data/ljspeech/wavs/LJ003-0033.npy -tests/data/ljspeech/wavs/LJ012-0272.wav|tests/data/ljspeech/wavs/LJ012-0272.npy -tests/data/ljspeech/wavs/LJ029-0058.wav|tests/data/ljspeech/wavs/LJ029-0058.npy -tests/data/ljspeech/wavs/LJ028-0283.wav|tests/data/ljspeech/wavs/LJ028-0283.npy -tests/data/ljspeech/wavs/LJ041-0037.wav|tests/data/ljspeech/wavs/LJ041-0037.npy -tests/data/ljspeech/wavs/LJ039-0024.wav|tests/data/ljspeech/wavs/LJ039-0024.npy -tests/data/ljspeech/wavs/LJ038-0125.wav|tests/data/ljspeech/wavs/LJ038-0125.npy -tests/data/ljspeech/wavs/LJ033-0157.wav|tests/data/ljspeech/wavs/LJ033-0157.npy -tests/data/ljspeech/wavs/LJ043-0188.wav|tests/data/ljspeech/wavs/LJ043-0188.npy -tests/data/ljspeech/wavs/LJ043-0185.wav|tests/data/ljspeech/wavs/LJ043-0185.npy -tests/data/ljspeech/wavs/LJ040-0125.wav|tests/data/ljspeech/wavs/LJ040-0125.npy -tests/data/ljspeech/wavs/LJ037-0119.wav|tests/data/ljspeech/wavs/LJ037-0119.npy -tests/data/ljspeech/wavs/LJ041-0090.wav|tests/data/ljspeech/wavs/LJ041-0090.npy -tests/data/ljspeech/wavs/LJ036-0133.wav|tests/data/ljspeech/wavs/LJ036-0133.npy -tests/data/ljspeech/wavs/LJ007-0152.wav|tests/data/ljspeech/wavs/LJ007-0152.npy -tests/data/ljspeech/wavs/LJ037-0123.wav|tests/data/ljspeech/wavs/LJ037-0123.npy -tests/data/ljspeech/wavs/LJ044-0191.wav|tests/data/ljspeech/wavs/LJ044-0191.npy -tests/data/ljspeech/wavs/LJ009-0009.wav|tests/data/ljspeech/wavs/LJ009-0009.npy -tests/data/ljspeech/wavs/LJ044-0093.wav|tests/data/ljspeech/wavs/LJ044-0093.npy -tests/data/ljspeech/wavs/LJ007-0058.wav|tests/data/ljspeech/wavs/LJ007-0058.npy -tests/data/ljspeech/wavs/LJ011-0189.wav|tests/data/ljspeech/wavs/LJ011-0189.npy -tests/data/ljspeech/wavs/LJ004-0062.wav|tests/data/ljspeech/wavs/LJ004-0062.npy -tests/data/ljspeech/wavs/LJ032-0225.wav|tests/data/ljspeech/wavs/LJ032-0225.npy -tests/data/ljspeech/wavs/LJ001-0152.wav|tests/data/ljspeech/wavs/LJ001-0152.npy -tests/data/ljspeech/wavs/LJ006-0243.wav|tests/data/ljspeech/wavs/LJ006-0243.npy -tests/data/ljspeech/wavs/LJ013-0077.wav|tests/data/ljspeech/wavs/LJ013-0077.npy -tests/data/ljspeech/wavs/LJ041-0139.wav|tests/data/ljspeech/wavs/LJ041-0139.npy -tests/data/ljspeech/wavs/LJ010-0053.wav|tests/data/ljspeech/wavs/LJ010-0053.npy -tests/data/ljspeech/wavs/LJ005-0205.wav|tests/data/ljspeech/wavs/LJ005-0205.npy -tests/data/ljspeech/wavs/LJ014-0333.wav|tests/data/ljspeech/wavs/LJ014-0333.npy -tests/data/ljspeech/wavs/LJ038-0230.wav|tests/data/ljspeech/wavs/LJ038-0230.npy -tests/data/ljspeech/wavs/LJ003-0263.wav|tests/data/ljspeech/wavs/LJ003-0263.npy -tests/data/ljspeech/wavs/LJ011-0149.wav|tests/data/ljspeech/wavs/LJ011-0149.npy -tests/data/ljspeech/wavs/LJ009-0030.wav|tests/data/ljspeech/wavs/LJ009-0030.npy -tests/data/ljspeech/wavs/LJ019-0183.wav|tests/data/ljspeech/wavs/LJ019-0183.npy -tests/data/ljspeech/wavs/LJ031-0054.wav|tests/data/ljspeech/wavs/LJ031-0054.npy -tests/data/ljspeech/wavs/LJ019-0136.wav|tests/data/ljspeech/wavs/LJ019-0136.npy -tests/data/ljspeech/wavs/LJ025-0114.wav|tests/data/ljspeech/wavs/LJ025-0114.npy -tests/data/ljspeech/wavs/LJ005-0122.wav|tests/data/ljspeech/wavs/LJ005-0122.npy -tests/data/ljspeech/wavs/LJ033-0123.wav|tests/data/ljspeech/wavs/LJ033-0123.npy -tests/data/ljspeech/wavs/LJ029-0009.wav|tests/data/ljspeech/wavs/LJ029-0009.npy -tests/data/ljspeech/wavs/LJ029-0109.wav|tests/data/ljspeech/wavs/LJ029-0109.npy -tests/data/ljspeech/wavs/LJ037-0041.wav|tests/data/ljspeech/wavs/LJ037-0041.npy -tests/data/ljspeech/wavs/LJ031-0148.wav|tests/data/ljspeech/wavs/LJ031-0148.npy -tests/data/ljspeech/wavs/LJ049-0177.wav|tests/data/ljspeech/wavs/LJ049-0177.npy -tests/data/ljspeech/wavs/LJ040-0006.wav|tests/data/ljspeech/wavs/LJ040-0006.npy -tests/data/ljspeech/wavs/LJ049-0041.wav|tests/data/ljspeech/wavs/LJ049-0041.npy -tests/data/ljspeech/wavs/LJ049-0102.wav|tests/data/ljspeech/wavs/LJ049-0102.npy -tests/data/ljspeech/wavs/LJ012-0125.wav|tests/data/ljspeech/wavs/LJ012-0125.npy -tests/data/ljspeech/wavs/LJ047-0162.wav|tests/data/ljspeech/wavs/LJ047-0162.npy -tests/data/ljspeech/wavs/LJ007-0207.wav|tests/data/ljspeech/wavs/LJ007-0207.npy -tests/data/ljspeech/wavs/LJ033-0115.wav|tests/data/ljspeech/wavs/LJ033-0115.npy -tests/data/ljspeech/wavs/LJ041-0187.wav|tests/data/ljspeech/wavs/LJ041-0187.npy -tests/data/ljspeech/wavs/LJ011-0092.wav|tests/data/ljspeech/wavs/LJ011-0092.npy -tests/data/ljspeech/wavs/LJ034-0145.wav|tests/data/ljspeech/wavs/LJ034-0145.npy -tests/data/ljspeech/wavs/LJ031-0028.wav|tests/data/ljspeech/wavs/LJ031-0028.npy -tests/data/ljspeech/wavs/LJ030-0089.wav|tests/data/ljspeech/wavs/LJ030-0089.npy -tests/data/ljspeech/wavs/LJ019-0047.wav|tests/data/ljspeech/wavs/LJ019-0047.npy -tests/data/ljspeech/wavs/LJ019-0023.wav|tests/data/ljspeech/wavs/LJ019-0023.npy -tests/data/ljspeech/wavs/LJ028-0106.wav|tests/data/ljspeech/wavs/LJ028-0106.npy -tests/data/ljspeech/wavs/LJ028-0511.wav|tests/data/ljspeech/wavs/LJ028-0511.npy -tests/data/ljspeech/wavs/LJ035-0015.wav|tests/data/ljspeech/wavs/LJ035-0015.npy -tests/data/ljspeech/wavs/LJ017-0077.wav|tests/data/ljspeech/wavs/LJ017-0077.npy -tests/data/ljspeech/wavs/LJ032-0182.wav|tests/data/ljspeech/wavs/LJ032-0182.npy -tests/data/ljspeech/wavs/LJ031-0091.wav|tests/data/ljspeech/wavs/LJ031-0091.npy -tests/data/ljspeech/wavs/LJ049-0211.wav|tests/data/ljspeech/wavs/LJ049-0211.npy -tests/data/ljspeech/wavs/LJ029-0173.wav|tests/data/ljspeech/wavs/LJ029-0173.npy -tests/data/ljspeech/wavs/LJ045-0162.wav|tests/data/ljspeech/wavs/LJ045-0162.npy -tests/data/ljspeech/wavs/LJ043-0162.wav|tests/data/ljspeech/wavs/LJ043-0162.npy -tests/data/ljspeech/wavs/LJ048-0219.wav|tests/data/ljspeech/wavs/LJ048-0219.npy -tests/data/ljspeech/wavs/LJ017-0128.wav|tests/data/ljspeech/wavs/LJ017-0128.npy -tests/data/ljspeech/wavs/LJ031-0076.wav|tests/data/ljspeech/wavs/LJ031-0076.npy -tests/data/ljspeech/wavs/LJ009-0008.wav|tests/data/ljspeech/wavs/LJ009-0008.npy -tests/data/ljspeech/wavs/LJ045-0200.wav|tests/data/ljspeech/wavs/LJ045-0200.npy -tests/data/ljspeech/wavs/LJ006-0091.wav|tests/data/ljspeech/wavs/LJ006-0091.npy -tests/data/ljspeech/wavs/LJ037-0088.wav|tests/data/ljspeech/wavs/LJ037-0088.npy -tests/data/ljspeech/wavs/LJ045-0229.wav|tests/data/ljspeech/wavs/LJ045-0229.npy -tests/data/ljspeech/wavs/LJ007-0037.wav|tests/data/ljspeech/wavs/LJ007-0037.npy -tests/data/ljspeech/wavs/LJ009-0152.wav|tests/data/ljspeech/wavs/LJ009-0152.npy -tests/data/ljspeech/wavs/LJ037-0199.wav|tests/data/ljspeech/wavs/LJ037-0199.npy -tests/data/ljspeech/wavs/LJ049-0106.wav|tests/data/ljspeech/wavs/LJ049-0106.npy -tests/data/ljspeech/wavs/LJ041-0068.wav|tests/data/ljspeech/wavs/LJ041-0068.npy -tests/data/ljspeech/wavs/LJ034-0203.wav|tests/data/ljspeech/wavs/LJ034-0203.npy -tests/data/ljspeech/wavs/LJ002-0068.wav|tests/data/ljspeech/wavs/LJ002-0068.npy -tests/data/ljspeech/wavs/LJ005-0271.wav|tests/data/ljspeech/wavs/LJ005-0271.npy -tests/data/ljspeech/wavs/LJ010-0005.wav|tests/data/ljspeech/wavs/LJ010-0005.npy -tests/data/ljspeech/wavs/LJ005-0131.wav|tests/data/ljspeech/wavs/LJ005-0131.npy -tests/data/ljspeech/wavs/LJ036-0140.wav|tests/data/ljspeech/wavs/LJ036-0140.npy -tests/data/ljspeech/wavs/LJ035-0022.wav|tests/data/ljspeech/wavs/LJ035-0022.npy -tests/data/ljspeech/wavs/LJ014-0077.wav|tests/data/ljspeech/wavs/LJ014-0077.npy -tests/data/ljspeech/wavs/LJ050-0031.wav|tests/data/ljspeech/wavs/LJ050-0031.npy -tests/data/ljspeech/wavs/LJ013-0236.wav|tests/data/ljspeech/wavs/LJ013-0236.npy -tests/data/ljspeech/wavs/LJ034-0094.wav|tests/data/ljspeech/wavs/LJ034-0094.npy -tests/data/ljspeech/wavs/LJ002-0251.wav|tests/data/ljspeech/wavs/LJ002-0251.npy -tests/data/ljspeech/wavs/LJ005-0229.wav|tests/data/ljspeech/wavs/LJ005-0229.npy -tests/data/ljspeech/wavs/LJ005-0066.wav|tests/data/ljspeech/wavs/LJ005-0066.npy -tests/data/ljspeech/wavs/LJ005-0062.wav|tests/data/ljspeech/wavs/LJ005-0062.npy -tests/data/ljspeech/wavs/LJ049-0137.wav|tests/data/ljspeech/wavs/LJ049-0137.npy -tests/data/ljspeech/wavs/LJ007-0131.wav|tests/data/ljspeech/wavs/LJ007-0131.npy -tests/data/ljspeech/wavs/LJ039-0049.wav|tests/data/ljspeech/wavs/LJ039-0049.npy -tests/data/ljspeech/wavs/LJ037-0033.wav|tests/data/ljspeech/wavs/LJ037-0033.npy -tests/data/ljspeech/wavs/LJ004-0047.wav|tests/data/ljspeech/wavs/LJ004-0047.npy -tests/data/ljspeech/wavs/LJ007-0007.wav|tests/data/ljspeech/wavs/LJ007-0007.npy -tests/data/ljspeech/wavs/LJ043-0069.wav|tests/data/ljspeech/wavs/LJ043-0069.npy -tests/data/ljspeech/wavs/LJ005-0296.wav|tests/data/ljspeech/wavs/LJ005-0296.npy -tests/data/ljspeech/wavs/LJ016-0056.wav|tests/data/ljspeech/wavs/LJ016-0056.npy -tests/data/ljspeech/wavs/LJ019-0165.wav|tests/data/ljspeech/wavs/LJ019-0165.npy -tests/data/ljspeech/wavs/LJ016-0439.wav|tests/data/ljspeech/wavs/LJ016-0439.npy -tests/data/ljspeech/wavs/LJ045-0218.wav|tests/data/ljspeech/wavs/LJ045-0218.npy -tests/data/ljspeech/wavs/LJ032-0114.wav|tests/data/ljspeech/wavs/LJ032-0114.npy -tests/data/ljspeech/wavs/LJ048-0087.wav|tests/data/ljspeech/wavs/LJ048-0087.npy -tests/data/ljspeech/wavs/LJ041-0042.wav|tests/data/ljspeech/wavs/LJ041-0042.npy -tests/data/ljspeech/wavs/LJ032-0150.wav|tests/data/ljspeech/wavs/LJ032-0150.npy -tests/data/ljspeech/wavs/LJ048-0204.wav|tests/data/ljspeech/wavs/LJ048-0204.npy -tests/data/ljspeech/wavs/LJ049-0164.wav|tests/data/ljspeech/wavs/LJ049-0164.npy -tests/data/ljspeech/wavs/LJ006-0076.wav|tests/data/ljspeech/wavs/LJ006-0076.npy -tests/data/ljspeech/wavs/LJ050-0268.wav|tests/data/ljspeech/wavs/LJ050-0268.npy -tests/data/ljspeech/wavs/LJ048-0276.wav|tests/data/ljspeech/wavs/LJ048-0276.npy -tests/data/ljspeech/wavs/LJ019-0359.wav|tests/data/ljspeech/wavs/LJ019-0359.npy -tests/data/ljspeech/wavs/LJ035-0099.wav|tests/data/ljspeech/wavs/LJ035-0099.npy -tests/data/ljspeech/wavs/LJ006-0297.wav|tests/data/ljspeech/wavs/LJ006-0297.npy -tests/data/ljspeech/wavs/LJ013-0209.wav|tests/data/ljspeech/wavs/LJ013-0209.npy -tests/data/ljspeech/wavs/LJ045-0013.wav|tests/data/ljspeech/wavs/LJ045-0013.npy -tests/data/ljspeech/wavs/LJ009-0188.wav|tests/data/ljspeech/wavs/LJ009-0188.npy -tests/data/ljspeech/wavs/LJ045-0174.wav|tests/data/ljspeech/wavs/LJ045-0174.npy -tests/data/ljspeech/wavs/LJ003-0189.wav|tests/data/ljspeech/wavs/LJ003-0189.npy -tests/data/ljspeech/wavs/LJ031-0085.wav|tests/data/ljspeech/wavs/LJ031-0085.npy -tests/data/ljspeech/wavs/LJ031-0030.wav|tests/data/ljspeech/wavs/LJ031-0030.npy -tests/data/ljspeech/wavs/LJ032-0183.wav|tests/data/ljspeech/wavs/LJ032-0183.npy -tests/data/ljspeech/wavs/LJ034-0118.wav|tests/data/ljspeech/wavs/LJ034-0118.npy -tests/data/ljspeech/wavs/LJ006-0119.wav|tests/data/ljspeech/wavs/LJ006-0119.npy -tests/data/ljspeech/wavs/LJ031-0179.wav|tests/data/ljspeech/wavs/LJ031-0179.npy -tests/data/ljspeech/wavs/LJ004-0050.wav|tests/data/ljspeech/wavs/LJ004-0050.npy -tests/data/ljspeech/wavs/LJ011-0127.wav|tests/data/ljspeech/wavs/LJ011-0127.npy -tests/data/ljspeech/wavs/LJ047-0180.wav|tests/data/ljspeech/wavs/LJ047-0180.npy -tests/data/ljspeech/wavs/LJ005-0050.wav|tests/data/ljspeech/wavs/LJ005-0050.npy -tests/data/ljspeech/wavs/LJ019-0212.wav|tests/data/ljspeech/wavs/LJ019-0212.npy -tests/data/ljspeech/wavs/LJ018-0364.wav|tests/data/ljspeech/wavs/LJ018-0364.npy -tests/data/ljspeech/wavs/LJ047-0124.wav|tests/data/ljspeech/wavs/LJ047-0124.npy -tests/data/ljspeech/wavs/LJ049-0114.wav|tests/data/ljspeech/wavs/LJ049-0114.npy -tests/data/ljspeech/wavs/LJ013-0174.wav|tests/data/ljspeech/wavs/LJ013-0174.npy -tests/data/ljspeech/wavs/LJ048-0197.wav|tests/data/ljspeech/wavs/LJ048-0197.npy -tests/data/ljspeech/wavs/LJ039-0183.wav|tests/data/ljspeech/wavs/LJ039-0183.npy -tests/data/ljspeech/wavs/LJ005-0026.wav|tests/data/ljspeech/wavs/LJ005-0026.npy -tests/data/ljspeech/wavs/LJ030-0115.wav|tests/data/ljspeech/wavs/LJ030-0115.npy -tests/data/ljspeech/wavs/LJ032-0068.wav|tests/data/ljspeech/wavs/LJ032-0068.npy -tests/data/ljspeech/wavs/LJ032-0048.wav|tests/data/ljspeech/wavs/LJ032-0048.npy -tests/data/ljspeech/wavs/LJ006-0245.wav|tests/data/ljspeech/wavs/LJ006-0245.npy -tests/data/ljspeech/wavs/LJ019-0042.wav|tests/data/ljspeech/wavs/LJ019-0042.npy -tests/data/ljspeech/wavs/LJ006-0137.wav|tests/data/ljspeech/wavs/LJ006-0137.npy -tests/data/ljspeech/wavs/LJ034-0060.wav|tests/data/ljspeech/wavs/LJ034-0060.npy -tests/data/ljspeech/wavs/LJ016-0364.wav|tests/data/ljspeech/wavs/LJ016-0364.npy -tests/data/ljspeech/wavs/LJ041-0175.wav|tests/data/ljspeech/wavs/LJ041-0175.npy -tests/data/ljspeech/wavs/LJ019-0238.wav|tests/data/ljspeech/wavs/LJ019-0238.npy -tests/data/ljspeech/wavs/LJ049-0027.wav|tests/data/ljspeech/wavs/LJ049-0027.npy -tests/data/ljspeech/wavs/LJ019-0082.wav|tests/data/ljspeech/wavs/LJ019-0082.npy -tests/data/ljspeech/wavs/LJ049-0084.wav|tests/data/ljspeech/wavs/LJ049-0084.npy -tests/data/ljspeech/wavs/LJ043-0184.wav|tests/data/ljspeech/wavs/LJ043-0184.npy -tests/data/ljspeech/wavs/LJ019-0299.wav|tests/data/ljspeech/wavs/LJ019-0299.npy -tests/data/ljspeech/wavs/LJ043-0174.wav|tests/data/ljspeech/wavs/LJ043-0174.npy -tests/data/ljspeech/wavs/LJ035-0208.wav|tests/data/ljspeech/wavs/LJ035-0208.npy -tests/data/ljspeech/wavs/LJ006-0098.wav|tests/data/ljspeech/wavs/LJ006-0098.npy -tests/data/ljspeech/wavs/LJ026-0010.wav|tests/data/ljspeech/wavs/LJ026-0010.npy -tests/data/ljspeech/wavs/LJ050-0173.wav|tests/data/ljspeech/wavs/LJ050-0173.npy -tests/data/ljspeech/wavs/LJ050-0153.wav|tests/data/ljspeech/wavs/LJ050-0153.npy -tests/data/ljspeech/wavs/LJ031-0050.wav|tests/data/ljspeech/wavs/LJ031-0050.npy -tests/data/ljspeech/wavs/LJ048-0125.wav|tests/data/ljspeech/wavs/LJ048-0125.npy -tests/data/ljspeech/wavs/LJ017-0007.wav|tests/data/ljspeech/wavs/LJ017-0007.npy -tests/data/ljspeech/wavs/LJ037-0083.wav|tests/data/ljspeech/wavs/LJ037-0083.npy -tests/data/ljspeech/wavs/LJ031-0095.wav|tests/data/ljspeech/wavs/LJ031-0095.npy -tests/data/ljspeech/wavs/LJ037-0156.wav|tests/data/ljspeech/wavs/LJ037-0156.npy -tests/data/ljspeech/wavs/LJ047-0213.wav|tests/data/ljspeech/wavs/LJ047-0213.npy -tests/data/ljspeech/wavs/LJ043-0170.wav|tests/data/ljspeech/wavs/LJ043-0170.npy -tests/data/ljspeech/wavs/LJ048-0185.wav|tests/data/ljspeech/wavs/LJ048-0185.npy -tests/data/ljspeech/wavs/LJ049-0192.wav|tests/data/ljspeech/wavs/LJ049-0192.npy -tests/data/ljspeech/wavs/LJ009-0251.wav|tests/data/ljspeech/wavs/LJ009-0251.npy -tests/data/ljspeech/wavs/LJ006-0195.wav|tests/data/ljspeech/wavs/LJ006-0195.npy -tests/data/ljspeech/wavs/LJ006-0067.wav|tests/data/ljspeech/wavs/LJ006-0067.npy -tests/data/ljspeech/wavs/LJ048-0262.wav|tests/data/ljspeech/wavs/LJ048-0262.npy -tests/data/ljspeech/wavs/LJ034-0040.wav|tests/data/ljspeech/wavs/LJ034-0040.npy -tests/data/ljspeech/wavs/LJ019-0250.wav|tests/data/ljspeech/wavs/LJ019-0250.npy -tests/data/ljspeech/wavs/LJ014-0133.wav|tests/data/ljspeech/wavs/LJ014-0133.npy -tests/data/ljspeech/wavs/LJ006-0043.wav|tests/data/ljspeech/wavs/LJ006-0043.npy -tests/data/ljspeech/wavs/LJ029-0168.wav|tests/data/ljspeech/wavs/LJ029-0168.npy -tests/data/ljspeech/wavs/LJ039-0026.wav|tests/data/ljspeech/wavs/LJ039-0026.npy -tests/data/ljspeech/wavs/LJ045-0194.wav|tests/data/ljspeech/wavs/LJ045-0194.npy -tests/data/ljspeech/wavs/LJ038-0263.wav|tests/data/ljspeech/wavs/LJ038-0263.npy -tests/data/ljspeech/wavs/LJ034-0005.wav|tests/data/ljspeech/wavs/LJ034-0005.npy -tests/data/ljspeech/wavs/LJ030-0221.wav|tests/data/ljspeech/wavs/LJ030-0221.npy -tests/data/ljspeech/wavs/LJ032-0102.wav|tests/data/ljspeech/wavs/LJ032-0102.npy -tests/data/ljspeech/wavs/LJ033-0167.wav|tests/data/ljspeech/wavs/LJ033-0167.npy -tests/data/ljspeech/wavs/LJ031-0111.wav|tests/data/ljspeech/wavs/LJ031-0111.npy -tests/data/ljspeech/wavs/LJ029-0073.wav|tests/data/ljspeech/wavs/LJ029-0073.npy -tests/data/ljspeech/wavs/LJ008-0301.wav|tests/data/ljspeech/wavs/LJ008-0301.npy -tests/data/ljspeech/wavs/LJ041-0034.wav|tests/data/ljspeech/wavs/LJ041-0034.npy -tests/data/ljspeech/wavs/LJ045-0165.wav|tests/data/ljspeech/wavs/LJ045-0165.npy -tests/data/ljspeech/wavs/LJ032-0148.wav|tests/data/ljspeech/wavs/LJ032-0148.npy -tests/data/ljspeech/wavs/LJ029-0098.wav|tests/data/ljspeech/wavs/LJ029-0098.npy -tests/data/ljspeech/wavs/LJ050-0265.wav|tests/data/ljspeech/wavs/LJ050-0265.npy -tests/data/ljspeech/wavs/LJ048-0149.wav|tests/data/ljspeech/wavs/LJ048-0149.npy -tests/data/ljspeech/wavs/LJ005-0111.wav|tests/data/ljspeech/wavs/LJ005-0111.npy -tests/data/ljspeech/wavs/LJ007-0192.wav|tests/data/ljspeech/wavs/LJ007-0192.npy -tests/data/ljspeech/wavs/LJ006-0290.wav|tests/data/ljspeech/wavs/LJ006-0290.npy -tests/data/ljspeech/wavs/LJ039-0208.wav|tests/data/ljspeech/wavs/LJ039-0208.npy -tests/data/ljspeech/wavs/LJ037-0024.wav|tests/data/ljspeech/wavs/LJ037-0024.npy -tests/data/ljspeech/wavs/LJ006-0170.wav|tests/data/ljspeech/wavs/LJ006-0170.npy -tests/data/ljspeech/wavs/LJ012-0155.wav|tests/data/ljspeech/wavs/LJ012-0155.npy -tests/data/ljspeech/wavs/LJ030-0132.wav|tests/data/ljspeech/wavs/LJ030-0132.npy -tests/data/ljspeech/wavs/LJ040-0225.wav|tests/data/ljspeech/wavs/LJ040-0225.npy -tests/data/ljspeech/wavs/LJ011-0101.wav|tests/data/ljspeech/wavs/LJ011-0101.npy -tests/data/ljspeech/wavs/LJ047-0169.wav|tests/data/ljspeech/wavs/LJ047-0169.npy -tests/data/ljspeech/wavs/LJ007-0102.wav|tests/data/ljspeech/wavs/LJ007-0102.npy -tests/data/ljspeech/wavs/LJ048-0202.wav|tests/data/ljspeech/wavs/LJ048-0202.npy -tests/data/ljspeech/wavs/LJ009-0053.wav|tests/data/ljspeech/wavs/LJ009-0053.npy -tests/data/ljspeech/wavs/LJ016-0130.wav|tests/data/ljspeech/wavs/LJ016-0130.npy -tests/data/ljspeech/wavs/LJ046-0031.wav|tests/data/ljspeech/wavs/LJ046-0031.npy -tests/data/ljspeech/wavs/LJ035-0032.wav|tests/data/ljspeech/wavs/LJ035-0032.npy -tests/data/ljspeech/wavs/LJ048-0177.wav|tests/data/ljspeech/wavs/LJ048-0177.npy -tests/data/ljspeech/wavs/LJ029-0029.wav|tests/data/ljspeech/wavs/LJ029-0029.npy -tests/data/ljspeech/wavs/LJ005-0265.wav|tests/data/ljspeech/wavs/LJ005-0265.npy -tests/data/ljspeech/wavs/LJ046-0025.wav|tests/data/ljspeech/wavs/LJ046-0025.npy -tests/data/ljspeech/wavs/LJ007-0036.wav|tests/data/ljspeech/wavs/LJ007-0036.npy -tests/data/ljspeech/wavs/LJ050-0196.wav|tests/data/ljspeech/wavs/LJ050-0196.npy -tests/data/ljspeech/wavs/LJ012-0224.wav|tests/data/ljspeech/wavs/LJ012-0224.npy -tests/data/ljspeech/wavs/LJ035-0101.wav|tests/data/ljspeech/wavs/LJ035-0101.npy -tests/data/ljspeech/wavs/LJ039-0189.wav|tests/data/ljspeech/wavs/LJ039-0189.npy -tests/data/ljspeech/wavs/LJ036-0138.wav|tests/data/ljspeech/wavs/LJ036-0138.npy -tests/data/ljspeech/wavs/LJ034-0191.wav|tests/data/ljspeech/wavs/LJ034-0191.npy -tests/data/ljspeech/wavs/LJ048-0019.wav|tests/data/ljspeech/wavs/LJ048-0019.npy -tests/data/ljspeech/wavs/LJ011-0042.wav|tests/data/ljspeech/wavs/LJ011-0042.npy -tests/data/ljspeech/wavs/LJ034-0154.wav|tests/data/ljspeech/wavs/LJ034-0154.npy -tests/data/ljspeech/wavs/LJ007-0160.wav|tests/data/ljspeech/wavs/LJ007-0160.npy -tests/data/ljspeech/wavs/LJ047-0093.wav|tests/data/ljspeech/wavs/LJ047-0093.npy -tests/data/ljspeech/wavs/LJ045-0093.wav|tests/data/ljspeech/wavs/LJ045-0093.npy -tests/data/ljspeech/wavs/LJ027-0138.wav|tests/data/ljspeech/wavs/LJ027-0138.npy -tests/data/ljspeech/wavs/LJ037-0140.wav|tests/data/ljspeech/wavs/LJ037-0140.npy -tests/data/ljspeech/wavs/LJ046-0015.wav|tests/data/ljspeech/wavs/LJ046-0015.npy -tests/data/ljspeech/wavs/LJ045-0085.wav|tests/data/ljspeech/wavs/LJ045-0085.npy -tests/data/ljspeech/wavs/LJ050-0165.wav|tests/data/ljspeech/wavs/LJ050-0165.npy -tests/data/ljspeech/wavs/LJ019-0337.wav|tests/data/ljspeech/wavs/LJ019-0337.npy -tests/data/ljspeech/wavs/LJ050-0161.wav|tests/data/ljspeech/wavs/LJ050-0161.npy -tests/data/ljspeech/wavs/LJ006-0030.wav|tests/data/ljspeech/wavs/LJ006-0030.npy -tests/data/ljspeech/wavs/LJ050-0076.wav|tests/data/ljspeech/wavs/LJ050-0076.npy -tests/data/ljspeech/wavs/LJ011-0029.wav|tests/data/ljspeech/wavs/LJ011-0029.npy -tests/data/ljspeech/wavs/LJ007-0061.wav|tests/data/ljspeech/wavs/LJ007-0061.npy -tests/data/ljspeech/wavs/LJ041-0027.wav|tests/data/ljspeech/wavs/LJ041-0027.npy -tests/data/ljspeech/wavs/LJ030-0130.wav|tests/data/ljspeech/wavs/LJ030-0130.npy -tests/data/ljspeech/wavs/LJ029-0202.wav|tests/data/ljspeech/wavs/LJ029-0202.npy -tests/data/ljspeech/wavs/LJ050-0044.wav|tests/data/ljspeech/wavs/LJ050-0044.npy -tests/data/ljspeech/wavs/LJ032-0012.wav|tests/data/ljspeech/wavs/LJ032-0012.npy -tests/data/ljspeech/wavs/LJ036-0157.wav|tests/data/ljspeech/wavs/LJ036-0157.npy -tests/data/ljspeech/wavs/LJ008-0263.wav|tests/data/ljspeech/wavs/LJ008-0263.npy -tests/data/ljspeech/wavs/LJ009-0083.wav|tests/data/ljspeech/wavs/LJ009-0083.npy -tests/data/ljspeech/wavs/LJ019-0203.wav|tests/data/ljspeech/wavs/LJ019-0203.npy -tests/data/ljspeech/wavs/LJ028-0318.wav|tests/data/ljspeech/wavs/LJ028-0318.npy -tests/data/ljspeech/wavs/LJ005-0223.wav|tests/data/ljspeech/wavs/LJ005-0223.npy -tests/data/ljspeech/wavs/LJ004-0232.wav|tests/data/ljspeech/wavs/LJ004-0232.npy -tests/data/ljspeech/wavs/LJ012-0147.wav|tests/data/ljspeech/wavs/LJ012-0147.npy -tests/data/ljspeech/wavs/LJ006-0026.wav|tests/data/ljspeech/wavs/LJ006-0026.npy -tests/data/ljspeech/wavs/LJ049-0083.wav|tests/data/ljspeech/wavs/LJ049-0083.npy -tests/data/ljspeech/wavs/LJ042-0219.wav|tests/data/ljspeech/wavs/LJ042-0219.npy -tests/data/ljspeech/wavs/LJ044-0123.wav|tests/data/ljspeech/wavs/LJ044-0123.npy -tests/data/ljspeech/wavs/LJ006-0247.wav|tests/data/ljspeech/wavs/LJ006-0247.npy -tests/data/ljspeech/wavs/LJ047-0209.wav|tests/data/ljspeech/wavs/LJ047-0209.npy -tests/data/ljspeech/wavs/LJ037-0037.wav|tests/data/ljspeech/wavs/LJ037-0037.npy -tests/data/ljspeech/wavs/LJ020-0002.wav|tests/data/ljspeech/wavs/LJ020-0002.npy -tests/data/ljspeech/wavs/LJ048-0027.wav|tests/data/ljspeech/wavs/LJ048-0027.npy -tests/data/ljspeech/wavs/LJ007-0151.wav|tests/data/ljspeech/wavs/LJ007-0151.npy -tests/data/ljspeech/wavs/LJ044-0098.wav|tests/data/ljspeech/wavs/LJ044-0098.npy -tests/data/ljspeech/wavs/LJ047-0230.wav|tests/data/ljspeech/wavs/LJ047-0230.npy -tests/data/ljspeech/wavs/LJ029-0075.wav|tests/data/ljspeech/wavs/LJ029-0075.npy -tests/data/ljspeech/wavs/LJ039-0128.wav|tests/data/ljspeech/wavs/LJ039-0128.npy -tests/data/ljspeech/wavs/LJ047-0114.wav|tests/data/ljspeech/wavs/LJ047-0114.npy -tests/data/ljspeech/wavs/LJ031-0114.wav|tests/data/ljspeech/wavs/LJ031-0114.npy -tests/data/ljspeech/wavs/LJ027-0127.wav|tests/data/ljspeech/wavs/LJ027-0127.npy -tests/data/ljspeech/wavs/LJ011-0154.wav|tests/data/ljspeech/wavs/LJ011-0154.npy -tests/data/ljspeech/wavs/LJ005-0299.wav|tests/data/ljspeech/wavs/LJ005-0299.npy -tests/data/ljspeech/wavs/LJ031-0099.wav|tests/data/ljspeech/wavs/LJ031-0099.npy -tests/data/ljspeech/wavs/LJ002-0110.wav|tests/data/ljspeech/wavs/LJ002-0110.npy -tests/data/ljspeech/wavs/LJ007-0060.wav|tests/data/ljspeech/wavs/LJ007-0060.npy -tests/data/ljspeech/wavs/LJ031-0141.wav|tests/data/ljspeech/wavs/LJ031-0141.npy -tests/data/ljspeech/wavs/LJ001-0014.wav|tests/data/ljspeech/wavs/LJ001-0014.npy -tests/data/ljspeech/wavs/LJ035-0035.wav|tests/data/ljspeech/wavs/LJ035-0035.npy -tests/data/ljspeech/wavs/LJ034-0125.wav|tests/data/ljspeech/wavs/LJ034-0125.npy -tests/data/ljspeech/wavs/LJ032-0235.wav|tests/data/ljspeech/wavs/LJ032-0235.npy -tests/data/ljspeech/wavs/LJ018-0306.wav|tests/data/ljspeech/wavs/LJ018-0306.npy -tests/data/ljspeech/wavs/LJ009-0129.wav|tests/data/ljspeech/wavs/LJ009-0129.npy -tests/data/ljspeech/wavs/LJ001-0015.wav|tests/data/ljspeech/wavs/LJ001-0015.npy -tests/data/ljspeech/wavs/LJ007-0128.wav|tests/data/ljspeech/wavs/LJ007-0128.npy -tests/data/ljspeech/wavs/LJ038-0200.wav|tests/data/ljspeech/wavs/LJ038-0200.npy -tests/data/ljspeech/wavs/LJ032-0209.wav|tests/data/ljspeech/wavs/LJ032-0209.npy -tests/data/ljspeech/wavs/LJ041-0038.wav|tests/data/ljspeech/wavs/LJ041-0038.npy -tests/data/ljspeech/wavs/LJ046-0241.wav|tests/data/ljspeech/wavs/LJ046-0241.npy -tests/data/ljspeech/wavs/LJ047-0220.wav|tests/data/ljspeech/wavs/LJ047-0220.npy -tests/data/ljspeech/wavs/LJ034-0158.wav|tests/data/ljspeech/wavs/LJ034-0158.npy -tests/data/ljspeech/wavs/LJ045-0044.wav|tests/data/ljspeech/wavs/LJ045-0044.npy -tests/data/ljspeech/wavs/LJ045-0169.wav|tests/data/ljspeech/wavs/LJ045-0169.npy -tests/data/ljspeech/wavs/LJ007-0154.wav|tests/data/ljspeech/wavs/LJ007-0154.npy -tests/data/ljspeech/wavs/LJ044-0114.wav|tests/data/ljspeech/wavs/LJ044-0114.npy -tests/data/ljspeech/wavs/LJ030-0085.wav|tests/data/ljspeech/wavs/LJ030-0085.npy -tests/data/ljspeech/wavs/LJ048-0129.wav|tests/data/ljspeech/wavs/LJ048-0129.npy -tests/data/ljspeech/wavs/LJ041-0077.wav|tests/data/ljspeech/wavs/LJ041-0077.npy -tests/data/ljspeech/wavs/LJ045-0113.wav|tests/data/ljspeech/wavs/LJ045-0113.npy -tests/data/ljspeech/wavs/LJ049-0009.wav|tests/data/ljspeech/wavs/LJ049-0009.npy -tests/data/ljspeech/wavs/LJ007-0148.wav|tests/data/ljspeech/wavs/LJ007-0148.npy -tests/data/ljspeech/wavs/LJ033-0132.wav|tests/data/ljspeech/wavs/LJ033-0132.npy -tests/data/ljspeech/wavs/LJ049-0076.wav|tests/data/ljspeech/wavs/LJ049-0076.npy -tests/data/ljspeech/wavs/LJ041-0127.wav|tests/data/ljspeech/wavs/LJ041-0127.npy -tests/data/ljspeech/wavs/LJ019-0193.wav|tests/data/ljspeech/wavs/LJ019-0193.npy -tests/data/ljspeech/wavs/LJ007-0173.wav|tests/data/ljspeech/wavs/LJ007-0173.npy -tests/data/ljspeech/wavs/LJ038-0014.wav|tests/data/ljspeech/wavs/LJ038-0014.npy -tests/data/ljspeech/wavs/LJ049-0141.wav|tests/data/ljspeech/wavs/LJ049-0141.npy -tests/data/ljspeech/wavs/LJ003-0007.wav|tests/data/ljspeech/wavs/LJ003-0007.npy -tests/data/ljspeech/wavs/LJ002-0280.wav|tests/data/ljspeech/wavs/LJ002-0280.npy -tests/data/ljspeech/wavs/LJ032-0230.wav|tests/data/ljspeech/wavs/LJ032-0230.npy -tests/data/ljspeech/wavs/LJ007-0110.wav|tests/data/ljspeech/wavs/LJ007-0110.npy -tests/data/ljspeech/wavs/LJ046-0027.wav|tests/data/ljspeech/wavs/LJ046-0027.npy -tests/data/ljspeech/wavs/LJ007-0020.wav|tests/data/ljspeech/wavs/LJ007-0020.npy -tests/data/ljspeech/wavs/LJ048-0205.wav|tests/data/ljspeech/wavs/LJ048-0205.npy -tests/data/ljspeech/wavs/LJ007-0044.wav|tests/data/ljspeech/wavs/LJ007-0044.npy -tests/data/ljspeech/wavs/LJ010-0117.wav|tests/data/ljspeech/wavs/LJ010-0117.npy -tests/data/ljspeech/wavs/LJ038-0217.wav|tests/data/ljspeech/wavs/LJ038-0217.npy -tests/data/ljspeech/wavs/LJ031-0135.wav|tests/data/ljspeech/wavs/LJ031-0135.npy -tests/data/ljspeech/wavs/LJ007-0178.wav|tests/data/ljspeech/wavs/LJ007-0178.npy -tests/data/ljspeech/wavs/LJ035-0042.wav|tests/data/ljspeech/wavs/LJ035-0042.npy -tests/data/ljspeech/wavs/LJ033-0092.wav|tests/data/ljspeech/wavs/LJ033-0092.npy -tests/data/ljspeech/wavs/LJ041-0159.wav|tests/data/ljspeech/wavs/LJ041-0159.npy -tests/data/ljspeech/wavs/LJ035-0062.wav|tests/data/ljspeech/wavs/LJ035-0062.npy -tests/data/ljspeech/wavs/LJ034-0028.wav|tests/data/ljspeech/wavs/LJ034-0028.npy -tests/data/ljspeech/wavs/LJ034-0178.wav|tests/data/ljspeech/wavs/LJ034-0178.npy -tests/data/ljspeech/wavs/LJ029-0017.wav|tests/data/ljspeech/wavs/LJ029-0017.npy -tests/data/ljspeech/wavs/LJ005-0173.wav|tests/data/ljspeech/wavs/LJ005-0173.npy -tests/data/ljspeech/wavs/LJ007-0229.wav|tests/data/ljspeech/wavs/LJ007-0229.npy -tests/data/ljspeech/wavs/LJ020-0062.wav|tests/data/ljspeech/wavs/LJ020-0062.npy -tests/data/ljspeech/wavs/LJ030-0082.wav|tests/data/ljspeech/wavs/LJ030-0082.npy -tests/data/ljspeech/wavs/LJ036-0001.wav|tests/data/ljspeech/wavs/LJ036-0001.npy -tests/data/ljspeech/wavs/LJ045-0001.wav|tests/data/ljspeech/wavs/LJ045-0001.npy -tests/data/ljspeech/wavs/LJ006-0002.wav|tests/data/ljspeech/wavs/LJ006-0002.npy -tests/data/ljspeech/wavs/LJ048-0001.wav|tests/data/ljspeech/wavs/LJ048-0001.npy -tests/data/ljspeech/wavs/LJ034-0212.wav|tests/data/ljspeech/wavs/LJ034-0212.npy -tests/data/ljspeech/wavs/LJ029-0179.wav|tests/data/ljspeech/wavs/LJ029-0179.npy -tests/data/ljspeech/wavs/LJ034-0026.wav|tests/data/ljspeech/wavs/LJ034-0026.npy -tests/data/ljspeech/wavs/LJ007-0097.wav|tests/data/ljspeech/wavs/LJ007-0097.npy -tests/data/ljspeech/wavs/LJ025-0167.wav|tests/data/ljspeech/wavs/LJ025-0167.npy -tests/data/ljspeech/wavs/LJ007-0076.wav|tests/data/ljspeech/wavs/LJ007-0076.npy -tests/data/ljspeech/wavs/LJ018-0052.wav|tests/data/ljspeech/wavs/LJ018-0052.npy -tests/data/ljspeech/wavs/LJ032-0202.wav|tests/data/ljspeech/wavs/LJ032-0202.npy -tests/data/ljspeech/wavs/LJ050-0160.wav|tests/data/ljspeech/wavs/LJ050-0160.npy -tests/data/ljspeech/wavs/LJ037-0150.wav|tests/data/ljspeech/wavs/LJ037-0150.npy -tests/data/ljspeech/wavs/LJ007-0223.wav|tests/data/ljspeech/wavs/LJ007-0223.npy -tests/data/ljspeech/wavs/LJ007-0051.wav|tests/data/ljspeech/wavs/LJ007-0051.npy -tests/data/ljspeech/wavs/LJ050-0228.wav|tests/data/ljspeech/wavs/LJ050-0228.npy -tests/data/ljspeech/wavs/LJ038-0189.wav|tests/data/ljspeech/wavs/LJ038-0189.npy -tests/data/ljspeech/wavs/LJ037-0160.wav|tests/data/ljspeech/wavs/LJ037-0160.npy -tests/data/ljspeech/wavs/LJ048-0025.wav|tests/data/ljspeech/wavs/LJ048-0025.npy -tests/data/ljspeech/wavs/LJ007-0070.wav|tests/data/ljspeech/wavs/LJ007-0070.npy -tests/data/ljspeech/wavs/LJ038-0050.wav|tests/data/ljspeech/wavs/LJ038-0050.npy -tests/data/ljspeech/wavs/LJ032-0001.wav|tests/data/ljspeech/wavs/LJ032-0001.npy -tests/data/ljspeech/wavs/LJ037-0001.wav|tests/data/ljspeech/wavs/LJ037-0001.npy -tests/data/ljspeech/wavs/LJ041-0001.wav|tests/data/ljspeech/wavs/LJ041-0001.npy -tests/data/ljspeech/wavs/LJ030-0001.wav|tests/data/ljspeech/wavs/LJ030-0001.npy -tests/data/ljspeech/wavs/LJ029-0001.wav|tests/data/ljspeech/wavs/LJ029-0001.npy -tests/data/ljspeech/wavs/LJ047-0001.wav|tests/data/ljspeech/wavs/LJ047-0001.npy -tests/data/ljspeech/wavs/LJ033-0001.wav|tests/data/ljspeech/wavs/LJ033-0001.npy -tests/data/ljspeech/wavs/LJ035-0001.wav|tests/data/ljspeech/wavs/LJ035-0001.npy -tests/data/ljspeech/wavs/LJ040-0001.wav|tests/data/ljspeech/wavs/LJ040-0001.npy diff --git a/TTS/tests/data/ljspeech/speakers.json b/TTS/tests/data/ljspeech/speakers.json deleted file mode 100644 index 461435c2a1ffa3f6c9e2cd219bab58c6ee0c59cd..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/speakers.json +++ /dev/null @@ -1,2612 +0,0 @@ -{ - "#wavs/LJ001-0001": { - "name": "ljspeech-0", - "embedding": [ - 0.05539746582508087, - 0.08493061363697052, - -0.010013150051236153, - 0.04369359463453293, - -0.05871078372001648, - 0.07792330533266068, - -0.12001194059848785, - 0.09205509722232819, - -0.053687505424022675, - 0.13110113143920898, - -0.0672345906496048, - 0.09076011180877686, - -0.012022187933325768, - -0.1773194968700409, - -0.03690509498119354, - 0.052139587700366974, - -0.06511855870485306, - -0.014169753529131413, - -0.0788075178861618, - -0.022713735699653625, - 0.026002388447523117, - 0.04142642393708229, - 0.06633599102497101, - -0.040966324508190155, - 0.05216488242149353, - 0.043708473443984985, - 0.008947450667619705, - 0.043884553015232086, - 0.015242422930896282, - -0.07271697372198105, - -0.03943272680044174, - 0.11445401608943939, - -0.01976911909878254, - -0.001584329642355442, - 0.03226276487112045, - -0.002877067308872938, - 0.006218053866177797, - -0.09210439026355743, - -0.023884698748588562, - 0.019102394580841064, - -0.023189997300505638, - 0.07678322494029999, - 0.04511963576078415, - -0.028598245233297348, - 0.02654365450143814, - -0.026303084567189217, - -0.036059144884347916, - -0.04994352161884308, - -0.10899694263935089, - 0.16808779537677765, - 0.0568464957177639, - 0.017774248495697975, - -0.0766686350107193, - -0.08056356757879257, - 0.11318203061819077, - -0.0009237118065357208, - -0.11983267217874527, - -0.04011853411793709, - 0.06481920927762985, - 0.18528658151626587, - -0.020618144422769547, - 0.0030966848134994507, - 0.030582068488001823, - 0.11048240959644318, - 0.026203282177448273, - 0.08886025100946426, - 0.0776662528514862, - 0.08468905836343765, - 0.02009391225874424, - 0.053141623735427856, - 0.04102938249707222, - 0.059041380882263184, - -0.006237464025616646, - -0.018360337242484093, - 0.015418153256177902, - -0.03559226542711258, - -0.05805520713329315, - -0.00861218199133873, - -0.021234268322587013, - -0.025556275621056557, - -0.012332704849541187, - -0.009777471423149109, - 0.03721384331583977, - 0.010376224294304848, - -0.05210898444056511, - 0.035450324416160583, - 0.0026437342166900635, - -0.03329150378704071, - 0.07028764486312866, - 0.03101171739399433, - 0.003101848065853119, - 0.029428653419017792, - -0.03445912152528763, - -0.11992329359054565, - -0.006469260435551405, - 0.02472860924899578, - -0.0021879260893911123, - 0.06576769798994064, - 0.04159736633300781, - -0.044104330241680145, - 0.10868340730667114, - 0.06065361574292183, - -0.00814537052065134, - 0.029497724026441574, - -0.0820949599146843, - 0.09694784879684448, - 0.10299994796514511, - 0.007466038689017296, - 0.0573151595890522, - -0.04003140702843666, - 0.0748046338558197, - 0.07954449951648712, - -0.14061805605888367, - -0.07225356996059418, - 0.030713198706507683, - -0.01169175747781992, - 0.015277700498700142, - 0.101996049284935, - 0.0023796744644641876, - 0.013835912570357323, - 0.08836984634399414, - -0.08798637241125107, - -0.053786784410476685, - -0.025867177173495293, - 0.07090725004673004, - -0.05228910967707634, - 0.024839768186211586, - 0.0543626993894577, - -0.048099253326654434, - -0.01027676835656166, - 0.04654526337981224, - -0.0034045036882162094, - 0.003895972855389118, - 0.04250902682542801, - -0.05232023075222969, - 0.06287448853254318, - -0.04146592691540718, - -0.0022073618602007627, - 0.07169511169195175, - 0.057035692036151886, - 0.04202979430556297, - -0.01752091944217682, - -0.03615778684616089, - -0.07597745209932327, - 0.0076013305224478245, - 0.03388708084821701, - 0.06191568076610565, - -0.01607775315642357, - 0.004401837941259146, - -0.06070601940155029, - -0.07674850523471832, - 0.059249889105558395, - -0.02222420647740364, - 0.10215721279382706, - -0.000883960397914052, - 0.010600706562399864, - 0.09869417548179626, - 0.011313805356621742, - -0.01187396701425314, - -0.04851905256509781, - -0.020747501403093338, - 0.043711841106414795, - 0.04022590070962906, - -0.06653523445129395, - -0.04014153778553009, - 0.012923783622682095, - 0.0024894566740840673, - -0.03801071271300316, - 0.017412755638360977, - 0.03090047463774681, - 0.021060986444354057, - 0.04588426649570465, - -0.061013057827949524, - 0.022323710843920708, - -0.0921829417347908, - -0.009262383915483952, - -0.0024641728959977627, - -0.04311069846153259, - -0.02953970432281494, - 0.11183556914329529, - 0.041883185505867004, - 0.01362229697406292, - -0.009713159874081612, - -0.07398185133934021, - -0.03448636084794998, - 0.06774093955755234, - 0.06281304359436035, - 0.005423923954367638, - 0.04070146754384041, - 0.04723779857158661, - 0.0025808606296777725, - 0.04067641496658325, - 0.0840836763381958, - 0.0662192553281784, - 6.253225728869438e-05, - -0.03287994861602783, - -0.07941965758800507, - 0.09294897317886353, - 0.08651109039783478, - -0.09662938117980957, - -0.08838298916816711, - -0.05120178312063217, - -0.06626439094543457, - 0.04893879592418671, - -0.017820902168750763, - -0.007398976478725672, - 0.02896031364798546, - -0.025766948238015175, - -0.10214102268218994, - -0.10014186799526215, - 0.1211889386177063, - -0.0510331466794014, - -0.02461140602827072, - -0.06880723685026169, - 0.02751768007874489, - 0.07350686937570572, - 0.038249749690294266, - -0.009252945892512798, - 0.013650302775204182, - 0.04884907230734825, - -0.08785197138786316, - 0.003136417828500271, - 0.05015810579061508, - -0.00904669426381588, - -0.10715165734291077, - 0.026881497353315353, - -0.07288249582052231, - 0.08610662072896957, - -0.06228051334619522, - 0.1673828363418579, - 0.006395484320819378, - -0.0426831915974617, - -0.08067314326763153, - 0.06747708469629288, - -0.049200400710105896, - 0.0475490465760231, - 0.05716557055711746, - 0.060844384133815765, - 0.04086177423596382, - -0.08346255123615265, - 0.0869344025850296, - 0.019769223406910896, - -0.020300764590501785, - -0.0708683505654335, - -0.030514180660247803, - -0.027429744601249695, - 0.021853724494576454, - -0.012019682675600052, - -0.0613793209195137, - 0.009929075837135315, - 0.0261012464761734, - -0.018161576241254807, - 0.07936893403530121, - 0.12791746854782104, - 0.08958099782466888, - -0.09469571709632874 - ] - }, - "#wavs/LJ001-0002": { - "name": "ljspeech-1", - "embedding": [ - 0.05539746582508087, - 0.08493061363697052, - -0.010013150051236153, - 0.04369359463453293, - -0.05871078372001648, - 0.07792330533266068, - -0.12001194059848785, - 0.09205509722232819, - -0.053687505424022675, - 0.13110113143920898, - -0.0672345906496048, - 0.09076011180877686, - -0.012022187933325768, - -0.1773194968700409, - -0.03690509498119354, - 0.052139587700366974, - -0.06511855870485306, - -0.014169753529131413, - -0.0788075178861618, - -0.022713735699653625, - 0.026002388447523117, - 0.04142642393708229, - 0.06633599102497101, - -0.040966324508190155, - 0.05216488242149353, - 0.043708473443984985, - 0.008947450667619705, - 0.043884553015232086, - 0.015242422930896282, - -0.07271697372198105, - -0.03943272680044174, - 0.11445401608943939, - -0.01976911909878254, - -0.001584329642355442, - 0.03226276487112045, - -0.002877067308872938, - 0.006218053866177797, - -0.09210439026355743, - -0.023884698748588562, - 0.019102394580841064, - -0.023189997300505638, - 0.07678322494029999, - 0.04511963576078415, - -0.028598245233297348, - 0.02654365450143814, - -0.026303084567189217, - -0.036059144884347916, - -0.04994352161884308, - -0.10899694263935089, - 0.16808779537677765, - 0.0568464957177639, - 0.017774248495697975, - -0.0766686350107193, - -0.08056356757879257, - 0.11318203061819077, - -0.0009237118065357208, - -0.11983267217874527, - -0.04011853411793709, - 0.06481920927762985, - 0.18528658151626587, - -0.020618144422769547, - 0.0030966848134994507, - 0.030582068488001823, - 0.11048240959644318, - 0.026203282177448273, - 0.08886025100946426, - 0.0776662528514862, - 0.08468905836343765, - 0.02009391225874424, - 0.053141623735427856, - 0.04102938249707222, - 0.059041380882263184, - -0.006237464025616646, - -0.018360337242484093, - 0.015418153256177902, - -0.03559226542711258, - -0.05805520713329315, - -0.00861218199133873, - -0.021234268322587013, - -0.025556275621056557, - -0.012332704849541187, - -0.009777471423149109, - 0.03721384331583977, - 0.010376224294304848, - -0.05210898444056511, - 0.035450324416160583, - 0.0026437342166900635, - -0.03329150378704071, - 0.07028764486312866, - 0.03101171739399433, - 0.003101848065853119, - 0.029428653419017792, - -0.03445912152528763, - -0.11992329359054565, - -0.006469260435551405, - 0.02472860924899578, - -0.0021879260893911123, - 0.06576769798994064, - 0.04159736633300781, - -0.044104330241680145, - 0.10868340730667114, - 0.06065361574292183, - -0.00814537052065134, - 0.029497724026441574, - -0.0820949599146843, - 0.09694784879684448, - 0.10299994796514511, - 0.007466038689017296, - 0.0573151595890522, - -0.04003140702843666, - 0.0748046338558197, - 0.07954449951648712, - -0.14061805605888367, - -0.07225356996059418, - 0.030713198706507683, - -0.01169175747781992, - 0.015277700498700142, - 0.101996049284935, - 0.0023796744644641876, - 0.013835912570357323, - 0.08836984634399414, - -0.08798637241125107, - -0.053786784410476685, - -0.025867177173495293, - 0.07090725004673004, - -0.05228910967707634, - 0.024839768186211586, - 0.0543626993894577, - -0.048099253326654434, - -0.01027676835656166, - 0.04654526337981224, - -0.0034045036882162094, - 0.003895972855389118, - 0.04250902682542801, - -0.05232023075222969, - 0.06287448853254318, - -0.04146592691540718, - -0.0022073618602007627, - 0.07169511169195175, - 0.057035692036151886, - 0.04202979430556297, - -0.01752091944217682, - -0.03615778684616089, - -0.07597745209932327, - 0.0076013305224478245, - 0.03388708084821701, - 0.06191568076610565, - -0.01607775315642357, - 0.004401837941259146, - -0.06070601940155029, - -0.07674850523471832, - 0.059249889105558395, - -0.02222420647740364, - 0.10215721279382706, - -0.000883960397914052, - 0.010600706562399864, - 0.09869417548179626, - 0.011313805356621742, - -0.01187396701425314, - -0.04851905256509781, - -0.020747501403093338, - 0.043711841106414795, - 0.04022590070962906, - -0.06653523445129395, - -0.04014153778553009, - 0.012923783622682095, - 0.0024894566740840673, - -0.03801071271300316, - 0.017412755638360977, - 0.03090047463774681, - 0.021060986444354057, - 0.04588426649570465, - -0.061013057827949524, - 0.022323710843920708, - -0.0921829417347908, - -0.009262383915483952, - -0.0024641728959977627, - -0.04311069846153259, - -0.02953970432281494, - 0.11183556914329529, - 0.041883185505867004, - 0.01362229697406292, - -0.009713159874081612, - -0.07398185133934021, - -0.03448636084794998, - 0.06774093955755234, - 0.06281304359436035, - 0.005423923954367638, - 0.04070146754384041, - 0.04723779857158661, - 0.0025808606296777725, - 0.04067641496658325, - 0.0840836763381958, - 0.0662192553281784, - 6.253225728869438e-05, - -0.03287994861602783, - -0.07941965758800507, - 0.09294897317886353, - 0.08651109039783478, - -0.09662938117980957, - -0.08838298916816711, - -0.05120178312063217, - -0.06626439094543457, - 0.04893879592418671, - -0.017820902168750763, - -0.007398976478725672, - 0.02896031364798546, - -0.025766948238015175, - -0.10214102268218994, - -0.10014186799526215, - 0.1211889386177063, - -0.0510331466794014, - -0.02461140602827072, - -0.06880723685026169, - 0.02751768007874489, - 0.07350686937570572, - 0.038249749690294266, - -0.009252945892512798, - 0.013650302775204182, - 0.04884907230734825, - -0.08785197138786316, - 0.003136417828500271, - 0.05015810579061508, - -0.00904669426381588, - -0.10715165734291077, - 0.026881497353315353, - -0.07288249582052231, - 0.08610662072896957, - -0.06228051334619522, - 0.1673828363418579, - 0.006395484320819378, - -0.0426831915974617, - -0.08067314326763153, - 0.06747708469629288, - -0.049200400710105896, - 0.0475490465760231, - 0.05716557055711746, - 0.060844384133815765, - 0.04086177423596382, - -0.08346255123615265, - 0.0869344025850296, - 0.019769223406910896, - -0.020300764590501785, - -0.0708683505654335, - -0.030514180660247803, - -0.027429744601249695, - 0.021853724494576454, - -0.012019682675600052, - -0.0613793209195137, - 0.009929075837135315, - 0.0261012464761734, - -0.018161576241254807, - 0.07936893403530121, - 0.12791746854782104, - 0.08958099782466888, - -0.09469571709632874 - ] - }, - "#wavs/LJ001-0003": { - "name": "ljspeech-2", - "embedding": [ - 0.05539746582508087, - 0.08493061363697052, - -0.010013150051236153, - 0.04369359463453293, - -0.05871078372001648, - 0.07792330533266068, - -0.12001194059848785, - 0.09205509722232819, - -0.053687505424022675, - 0.13110113143920898, - -0.0672345906496048, - 0.09076011180877686, - -0.012022187933325768, - -0.1773194968700409, - -0.03690509498119354, - 0.052139587700366974, - -0.06511855870485306, - -0.014169753529131413, - -0.0788075178861618, - -0.022713735699653625, - 0.026002388447523117, - 0.04142642393708229, - 0.06633599102497101, - -0.040966324508190155, - 0.05216488242149353, - 0.043708473443984985, - 0.008947450667619705, - 0.043884553015232086, - 0.015242422930896282, - -0.07271697372198105, - -0.03943272680044174, - 0.11445401608943939, - -0.01976911909878254, - -0.001584329642355442, - 0.03226276487112045, - -0.002877067308872938, - 0.006218053866177797, - -0.09210439026355743, - -0.023884698748588562, - 0.019102394580841064, - -0.023189997300505638, - 0.07678322494029999, - 0.04511963576078415, - -0.028598245233297348, - 0.02654365450143814, - -0.026303084567189217, - -0.036059144884347916, - -0.04994352161884308, - -0.10899694263935089, - 0.16808779537677765, - 0.0568464957177639, - 0.017774248495697975, - -0.0766686350107193, - -0.08056356757879257, - 0.11318203061819077, - -0.0009237118065357208, - -0.11983267217874527, - -0.04011853411793709, - 0.06481920927762985, - 0.18528658151626587, - -0.020618144422769547, - 0.0030966848134994507, - 0.030582068488001823, - 0.11048240959644318, - 0.026203282177448273, - 0.08886025100946426, - 0.0776662528514862, - 0.08468905836343765, - 0.02009391225874424, - 0.053141623735427856, - 0.04102938249707222, - 0.059041380882263184, - -0.006237464025616646, - -0.018360337242484093, - 0.015418153256177902, - -0.03559226542711258, - -0.05805520713329315, - -0.00861218199133873, - -0.021234268322587013, - -0.025556275621056557, - -0.012332704849541187, - -0.009777471423149109, - 0.03721384331583977, - 0.010376224294304848, - -0.05210898444056511, - 0.035450324416160583, - 0.0026437342166900635, - -0.03329150378704071, - 0.07028764486312866, - 0.03101171739399433, - 0.003101848065853119, - 0.029428653419017792, - -0.03445912152528763, - -0.11992329359054565, - -0.006469260435551405, - 0.02472860924899578, - -0.0021879260893911123, - 0.06576769798994064, - 0.04159736633300781, - -0.044104330241680145, - 0.10868340730667114, - 0.06065361574292183, - -0.00814537052065134, - 0.029497724026441574, - -0.0820949599146843, - 0.09694784879684448, - 0.10299994796514511, - 0.007466038689017296, - 0.0573151595890522, - -0.04003140702843666, - 0.0748046338558197, - 0.07954449951648712, - -0.14061805605888367, - -0.07225356996059418, - 0.030713198706507683, - -0.01169175747781992, - 0.015277700498700142, - 0.101996049284935, - 0.0023796744644641876, - 0.013835912570357323, - 0.08836984634399414, - -0.08798637241125107, - -0.053786784410476685, - -0.025867177173495293, - 0.07090725004673004, - -0.05228910967707634, - 0.024839768186211586, - 0.0543626993894577, - -0.048099253326654434, - -0.01027676835656166, - 0.04654526337981224, - -0.0034045036882162094, - 0.003895972855389118, - 0.04250902682542801, - -0.05232023075222969, - 0.06287448853254318, - -0.04146592691540718, - -0.0022073618602007627, - 0.07169511169195175, - 0.057035692036151886, - 0.04202979430556297, - -0.01752091944217682, - -0.03615778684616089, - -0.07597745209932327, - 0.0076013305224478245, - 0.03388708084821701, - 0.06191568076610565, - -0.01607775315642357, - 0.004401837941259146, - -0.06070601940155029, - -0.07674850523471832, - 0.059249889105558395, - -0.02222420647740364, - 0.10215721279382706, - -0.000883960397914052, - 0.010600706562399864, - 0.09869417548179626, - 0.011313805356621742, - -0.01187396701425314, - -0.04851905256509781, - -0.020747501403093338, - 0.043711841106414795, - 0.04022590070962906, - -0.06653523445129395, - -0.04014153778553009, - 0.012923783622682095, - 0.0024894566740840673, - -0.03801071271300316, - 0.017412755638360977, - 0.03090047463774681, - 0.021060986444354057, - 0.04588426649570465, - -0.061013057827949524, - 0.022323710843920708, - -0.0921829417347908, - -0.009262383915483952, - -0.0024641728959977627, - -0.04311069846153259, - -0.02953970432281494, - 0.11183556914329529, - 0.041883185505867004, - 0.01362229697406292, - -0.009713159874081612, - -0.07398185133934021, - -0.03448636084794998, - 0.06774093955755234, - 0.06281304359436035, - 0.005423923954367638, - 0.04070146754384041, - 0.04723779857158661, - 0.0025808606296777725, - 0.04067641496658325, - 0.0840836763381958, - 0.0662192553281784, - 6.253225728869438e-05, - -0.03287994861602783, - -0.07941965758800507, - 0.09294897317886353, - 0.08651109039783478, - -0.09662938117980957, - -0.08838298916816711, - -0.05120178312063217, - -0.06626439094543457, - 0.04893879592418671, - -0.017820902168750763, - -0.007398976478725672, - 0.02896031364798546, - -0.025766948238015175, - -0.10214102268218994, - -0.10014186799526215, - 0.1211889386177063, - -0.0510331466794014, - -0.02461140602827072, - -0.06880723685026169, - 0.02751768007874489, - 0.07350686937570572, - 0.038249749690294266, - -0.009252945892512798, - 0.013650302775204182, - 0.04884907230734825, - -0.08785197138786316, - 0.003136417828500271, - 0.05015810579061508, - -0.00904669426381588, - -0.10715165734291077, - 0.026881497353315353, - -0.07288249582052231, - 0.08610662072896957, - -0.06228051334619522, - 0.1673828363418579, - 0.006395484320819378, - -0.0426831915974617, - -0.08067314326763153, - 0.06747708469629288, - -0.049200400710105896, - 0.0475490465760231, - 0.05716557055711746, - 0.060844384133815765, - 0.04086177423596382, - -0.08346255123615265, - 0.0869344025850296, - 0.019769223406910896, - -0.020300764590501785, - -0.0708683505654335, - -0.030514180660247803, - -0.027429744601249695, - 0.021853724494576454, - -0.012019682675600052, - -0.0613793209195137, - 0.009929075837135315, - 0.0261012464761734, - -0.018161576241254807, - 0.07936893403530121, - 0.12791746854782104, - 0.08958099782466888, - -0.09469571709632874 - ] - }, - "#wavs/LJ001-0004": { - "name": "ljspeech-3", - "embedding": [ - 0.05539746582508087, - 0.08493061363697052, - -0.010013150051236153, - 0.04369359463453293, - -0.05871078372001648, - 0.07792330533266068, - -0.12001194059848785, - 0.09205509722232819, - -0.053687505424022675, - 0.13110113143920898, - -0.0672345906496048, - 0.09076011180877686, - -0.012022187933325768, - -0.1773194968700409, - -0.03690509498119354, - 0.052139587700366974, - -0.06511855870485306, - -0.014169753529131413, - -0.0788075178861618, - -0.022713735699653625, - 0.026002388447523117, - 0.04142642393708229, - 0.06633599102497101, - -0.040966324508190155, - 0.05216488242149353, - 0.043708473443984985, - 0.008947450667619705, - 0.043884553015232086, - 0.015242422930896282, - -0.07271697372198105, - -0.03943272680044174, - 0.11445401608943939, - -0.01976911909878254, - -0.001584329642355442, - 0.03226276487112045, - -0.002877067308872938, - 0.006218053866177797, - -0.09210439026355743, - -0.023884698748588562, - 0.019102394580841064, - -0.023189997300505638, - 0.07678322494029999, - 0.04511963576078415, - -0.028598245233297348, - 0.02654365450143814, - -0.026303084567189217, - -0.036059144884347916, - -0.04994352161884308, - -0.10899694263935089, - 0.16808779537677765, - 0.0568464957177639, - 0.017774248495697975, - -0.0766686350107193, - -0.08056356757879257, - 0.11318203061819077, - -0.0009237118065357208, - -0.11983267217874527, - -0.04011853411793709, - 0.06481920927762985, - 0.18528658151626587, - -0.020618144422769547, - 0.0030966848134994507, - 0.030582068488001823, - 0.11048240959644318, - 0.026203282177448273, - 0.08886025100946426, - 0.0776662528514862, - 0.08468905836343765, - 0.02009391225874424, - 0.053141623735427856, - 0.04102938249707222, - 0.059041380882263184, - -0.006237464025616646, - -0.018360337242484093, - 0.015418153256177902, - -0.03559226542711258, - -0.05805520713329315, - -0.00861218199133873, - -0.021234268322587013, - -0.025556275621056557, - -0.012332704849541187, - -0.009777471423149109, - 0.03721384331583977, - 0.010376224294304848, - -0.05210898444056511, - 0.035450324416160583, - 0.0026437342166900635, - -0.03329150378704071, - 0.07028764486312866, - 0.03101171739399433, - 0.003101848065853119, - 0.029428653419017792, - -0.03445912152528763, - -0.11992329359054565, - -0.006469260435551405, - 0.02472860924899578, - -0.0021879260893911123, - 0.06576769798994064, - 0.04159736633300781, - -0.044104330241680145, - 0.10868340730667114, - 0.06065361574292183, - -0.00814537052065134, - 0.029497724026441574, - -0.0820949599146843, - 0.09694784879684448, - 0.10299994796514511, - 0.007466038689017296, - 0.0573151595890522, - -0.04003140702843666, - 0.0748046338558197, - 0.07954449951648712, - -0.14061805605888367, - -0.07225356996059418, - 0.030713198706507683, - -0.01169175747781992, - 0.015277700498700142, - 0.101996049284935, - 0.0023796744644641876, - 0.013835912570357323, - 0.08836984634399414, - -0.08798637241125107, - -0.053786784410476685, - -0.025867177173495293, - 0.07090725004673004, - -0.05228910967707634, - 0.024839768186211586, - 0.0543626993894577, - -0.048099253326654434, - -0.01027676835656166, - 0.04654526337981224, - -0.0034045036882162094, - 0.003895972855389118, - 0.04250902682542801, - -0.05232023075222969, - 0.06287448853254318, - -0.04146592691540718, - -0.0022073618602007627, - 0.07169511169195175, - 0.057035692036151886, - 0.04202979430556297, - -0.01752091944217682, - -0.03615778684616089, - -0.07597745209932327, - 0.0076013305224478245, - 0.03388708084821701, - 0.06191568076610565, - -0.01607775315642357, - 0.004401837941259146, - -0.06070601940155029, - -0.07674850523471832, - 0.059249889105558395, - -0.02222420647740364, - 0.10215721279382706, - -0.000883960397914052, - 0.010600706562399864, - 0.09869417548179626, - 0.011313805356621742, - -0.01187396701425314, - -0.04851905256509781, - -0.020747501403093338, - 0.043711841106414795, - 0.04022590070962906, - -0.06653523445129395, - -0.04014153778553009, - 0.012923783622682095, - 0.0024894566740840673, - -0.03801071271300316, - 0.017412755638360977, - 0.03090047463774681, - 0.021060986444354057, - 0.04588426649570465, - -0.061013057827949524, - 0.022323710843920708, - -0.0921829417347908, - -0.009262383915483952, - -0.0024641728959977627, - -0.04311069846153259, - -0.02953970432281494, - 0.11183556914329529, - 0.041883185505867004, - 0.01362229697406292, - -0.009713159874081612, - -0.07398185133934021, - -0.03448636084794998, - 0.06774093955755234, - 0.06281304359436035, - 0.005423923954367638, - 0.04070146754384041, - 0.04723779857158661, - 0.0025808606296777725, - 0.04067641496658325, - 0.0840836763381958, - 0.0662192553281784, - 6.253225728869438e-05, - -0.03287994861602783, - -0.07941965758800507, - 0.09294897317886353, - 0.08651109039783478, - -0.09662938117980957, - -0.08838298916816711, - -0.05120178312063217, - -0.06626439094543457, - 0.04893879592418671, - -0.017820902168750763, - -0.007398976478725672, - 0.02896031364798546, - -0.025766948238015175, - -0.10214102268218994, - -0.10014186799526215, - 0.1211889386177063, - -0.0510331466794014, - -0.02461140602827072, - -0.06880723685026169, - 0.02751768007874489, - 0.07350686937570572, - 0.038249749690294266, - -0.009252945892512798, - 0.013650302775204182, - 0.04884907230734825, - -0.08785197138786316, - 0.003136417828500271, - 0.05015810579061508, - -0.00904669426381588, - -0.10715165734291077, - 0.026881497353315353, - -0.07288249582052231, - 0.08610662072896957, - -0.06228051334619522, - 0.1673828363418579, - 0.006395484320819378, - -0.0426831915974617, - -0.08067314326763153, - 0.06747708469629288, - -0.049200400710105896, - 0.0475490465760231, - 0.05716557055711746, - 0.060844384133815765, - 0.04086177423596382, - -0.08346255123615265, - 0.0869344025850296, - 0.019769223406910896, - -0.020300764590501785, - -0.0708683505654335, - -0.030514180660247803, - -0.027429744601249695, - 0.021853724494576454, - -0.012019682675600052, - -0.0613793209195137, - 0.009929075837135315, - 0.0261012464761734, - -0.018161576241254807, - 0.07936893403530121, - 0.12791746854782104, - 0.08958099782466888, - -0.09469571709632874 - ] - }, - "#wavs/LJ001-0005": { - "name": "ljspeech-4", - "embedding": [ - 0.05539746582508087, - 0.08493061363697052, - -0.010013150051236153, - 0.04369359463453293, - -0.05871078372001648, - 0.07792330533266068, - -0.12001194059848785, - 0.09205509722232819, - -0.053687505424022675, - 0.13110113143920898, - -0.0672345906496048, - 0.09076011180877686, - -0.012022187933325768, - -0.1773194968700409, - -0.03690509498119354, - 0.052139587700366974, - -0.06511855870485306, - -0.014169753529131413, - -0.0788075178861618, - -0.022713735699653625, - 0.026002388447523117, - 0.04142642393708229, - 0.06633599102497101, - -0.040966324508190155, - 0.05216488242149353, - 0.043708473443984985, - 0.008947450667619705, - 0.043884553015232086, - 0.015242422930896282, - -0.07271697372198105, - -0.03943272680044174, - 0.11445401608943939, - -0.01976911909878254, - -0.001584329642355442, - 0.03226276487112045, - -0.002877067308872938, - 0.006218053866177797, - -0.09210439026355743, - -0.023884698748588562, - 0.019102394580841064, - -0.023189997300505638, - 0.07678322494029999, - 0.04511963576078415, - -0.028598245233297348, - 0.02654365450143814, - -0.026303084567189217, - -0.036059144884347916, - -0.04994352161884308, - -0.10899694263935089, - 0.16808779537677765, - 0.0568464957177639, - 0.017774248495697975, - -0.0766686350107193, - -0.08056356757879257, - 0.11318203061819077, - -0.0009237118065357208, - -0.11983267217874527, - -0.04011853411793709, - 0.06481920927762985, - 0.18528658151626587, - -0.020618144422769547, - 0.0030966848134994507, - 0.030582068488001823, - 0.11048240959644318, - 0.026203282177448273, - 0.08886025100946426, - 0.0776662528514862, - 0.08468905836343765, - 0.02009391225874424, - 0.053141623735427856, - 0.04102938249707222, - 0.059041380882263184, - -0.006237464025616646, - -0.018360337242484093, - 0.015418153256177902, - -0.03559226542711258, - -0.05805520713329315, - -0.00861218199133873, - -0.021234268322587013, - -0.025556275621056557, - -0.012332704849541187, - -0.009777471423149109, - 0.03721384331583977, - 0.010376224294304848, - -0.05210898444056511, - 0.035450324416160583, - 0.0026437342166900635, - -0.03329150378704071, - 0.07028764486312866, - 0.03101171739399433, - 0.003101848065853119, - 0.029428653419017792, - -0.03445912152528763, - -0.11992329359054565, - -0.006469260435551405, - 0.02472860924899578, - -0.0021879260893911123, - 0.06576769798994064, - 0.04159736633300781, - -0.044104330241680145, - 0.10868340730667114, - 0.06065361574292183, - -0.00814537052065134, - 0.029497724026441574, - -0.0820949599146843, - 0.09694784879684448, - 0.10299994796514511, - 0.007466038689017296, - 0.0573151595890522, - -0.04003140702843666, - 0.0748046338558197, - 0.07954449951648712, - -0.14061805605888367, - -0.07225356996059418, - 0.030713198706507683, - -0.01169175747781992, - 0.015277700498700142, - 0.101996049284935, - 0.0023796744644641876, - 0.013835912570357323, - 0.08836984634399414, - -0.08798637241125107, - -0.053786784410476685, - -0.025867177173495293, - 0.07090725004673004, - -0.05228910967707634, - 0.024839768186211586, - 0.0543626993894577, - -0.048099253326654434, - -0.01027676835656166, - 0.04654526337981224, - -0.0034045036882162094, - 0.003895972855389118, - 0.04250902682542801, - -0.05232023075222969, - 0.06287448853254318, - -0.04146592691540718, - -0.0022073618602007627, - 0.07169511169195175, - 0.057035692036151886, - 0.04202979430556297, - -0.01752091944217682, - -0.03615778684616089, - -0.07597745209932327, - 0.0076013305224478245, - 0.03388708084821701, - 0.06191568076610565, - -0.01607775315642357, - 0.004401837941259146, - -0.06070601940155029, - -0.07674850523471832, - 0.059249889105558395, - -0.02222420647740364, - 0.10215721279382706, - -0.000883960397914052, - 0.010600706562399864, - 0.09869417548179626, - 0.011313805356621742, - -0.01187396701425314, - -0.04851905256509781, - -0.020747501403093338, - 0.043711841106414795, - 0.04022590070962906, - -0.06653523445129395, - -0.04014153778553009, - 0.012923783622682095, - 0.0024894566740840673, - -0.03801071271300316, - 0.017412755638360977, - 0.03090047463774681, - 0.021060986444354057, - 0.04588426649570465, - -0.061013057827949524, - 0.022323710843920708, - -0.0921829417347908, - -0.009262383915483952, - -0.0024641728959977627, - -0.04311069846153259, - -0.02953970432281494, - 0.11183556914329529, - 0.041883185505867004, - 0.01362229697406292, - -0.009713159874081612, - -0.07398185133934021, - -0.03448636084794998, - 0.06774093955755234, - 0.06281304359436035, - 0.005423923954367638, - 0.04070146754384041, - 0.04723779857158661, - 0.0025808606296777725, - 0.04067641496658325, - 0.0840836763381958, - 0.0662192553281784, - 6.253225728869438e-05, - -0.03287994861602783, - -0.07941965758800507, - 0.09294897317886353, - 0.08651109039783478, - -0.09662938117980957, - -0.08838298916816711, - -0.05120178312063217, - -0.06626439094543457, - 0.04893879592418671, - -0.017820902168750763, - -0.007398976478725672, - 0.02896031364798546, - -0.025766948238015175, - -0.10214102268218994, - -0.10014186799526215, - 0.1211889386177063, - -0.0510331466794014, - -0.02461140602827072, - -0.06880723685026169, - 0.02751768007874489, - 0.07350686937570572, - 0.038249749690294266, - -0.009252945892512798, - 0.013650302775204182, - 0.04884907230734825, - -0.08785197138786316, - 0.003136417828500271, - 0.05015810579061508, - -0.00904669426381588, - -0.10715165734291077, - 0.026881497353315353, - -0.07288249582052231, - 0.08610662072896957, - -0.06228051334619522, - 0.1673828363418579, - 0.006395484320819378, - -0.0426831915974617, - -0.08067314326763153, - 0.06747708469629288, - -0.049200400710105896, - 0.0475490465760231, - 0.05716557055711746, - 0.060844384133815765, - 0.04086177423596382, - -0.08346255123615265, - 0.0869344025850296, - 0.019769223406910896, - -0.020300764590501785, - -0.0708683505654335, - -0.030514180660247803, - -0.027429744601249695, - 0.021853724494576454, - -0.012019682675600052, - -0.0613793209195137, - 0.009929075837135315, - 0.0261012464761734, - -0.018161576241254807, - 0.07936893403530121, - 0.12791746854782104, - 0.08958099782466888, - -0.09469571709632874 - ] - }, - "#wavs/LJ001-0006": { - "name": "ljspeech-5", - "embedding": [ - 0.05539746582508087, - 0.08493061363697052, - -0.010013150051236153, - 0.04369359463453293, - -0.05871078372001648, - 0.07792330533266068, - -0.12001194059848785, - 0.09205509722232819, - -0.053687505424022675, - 0.13110113143920898, - -0.0672345906496048, - 0.09076011180877686, - -0.012022187933325768, - -0.1773194968700409, - -0.03690509498119354, - 0.052139587700366974, - -0.06511855870485306, - -0.014169753529131413, - -0.0788075178861618, - -0.022713735699653625, - 0.026002388447523117, - 0.04142642393708229, - 0.06633599102497101, - -0.040966324508190155, - 0.05216488242149353, - 0.043708473443984985, - 0.008947450667619705, - 0.043884553015232086, - 0.015242422930896282, - -0.07271697372198105, - -0.03943272680044174, - 0.11445401608943939, - -0.01976911909878254, - -0.001584329642355442, - 0.03226276487112045, - -0.002877067308872938, - 0.006218053866177797, - -0.09210439026355743, - -0.023884698748588562, - 0.019102394580841064, - -0.023189997300505638, - 0.07678322494029999, - 0.04511963576078415, - -0.028598245233297348, - 0.02654365450143814, - -0.026303084567189217, - -0.036059144884347916, - -0.04994352161884308, - -0.10899694263935089, - 0.16808779537677765, - 0.0568464957177639, - 0.017774248495697975, - -0.0766686350107193, - -0.08056356757879257, - 0.11318203061819077, - -0.0009237118065357208, - -0.11983267217874527, - -0.04011853411793709, - 0.06481920927762985, - 0.18528658151626587, - -0.020618144422769547, - 0.0030966848134994507, - 0.030582068488001823, - 0.11048240959644318, - 0.026203282177448273, - 0.08886025100946426, - 0.0776662528514862, - 0.08468905836343765, - 0.02009391225874424, - 0.053141623735427856, - 0.04102938249707222, - 0.059041380882263184, - -0.006237464025616646, - -0.018360337242484093, - 0.015418153256177902, - -0.03559226542711258, - -0.05805520713329315, - -0.00861218199133873, - -0.021234268322587013, - -0.025556275621056557, - -0.012332704849541187, - -0.009777471423149109, - 0.03721384331583977, - 0.010376224294304848, - -0.05210898444056511, - 0.035450324416160583, - 0.0026437342166900635, - -0.03329150378704071, - 0.07028764486312866, - 0.03101171739399433, - 0.003101848065853119, - 0.029428653419017792, - -0.03445912152528763, - -0.11992329359054565, - -0.006469260435551405, - 0.02472860924899578, - -0.0021879260893911123, - 0.06576769798994064, - 0.04159736633300781, - -0.044104330241680145, - 0.10868340730667114, - 0.06065361574292183, - -0.00814537052065134, - 0.029497724026441574, - -0.0820949599146843, - 0.09694784879684448, - 0.10299994796514511, - 0.007466038689017296, - 0.0573151595890522, - -0.04003140702843666, - 0.0748046338558197, - 0.07954449951648712, - -0.14061805605888367, - -0.07225356996059418, - 0.030713198706507683, - -0.01169175747781992, - 0.015277700498700142, - 0.101996049284935, - 0.0023796744644641876, - 0.013835912570357323, - 0.08836984634399414, - -0.08798637241125107, - -0.053786784410476685, - -0.025867177173495293, - 0.07090725004673004, - -0.05228910967707634, - 0.024839768186211586, - 0.0543626993894577, - -0.048099253326654434, - -0.01027676835656166, - 0.04654526337981224, - -0.0034045036882162094, - 0.003895972855389118, - 0.04250902682542801, - -0.05232023075222969, - 0.06287448853254318, - -0.04146592691540718, - -0.0022073618602007627, - 0.07169511169195175, - 0.057035692036151886, - 0.04202979430556297, - -0.01752091944217682, - -0.03615778684616089, - -0.07597745209932327, - 0.0076013305224478245, - 0.03388708084821701, - 0.06191568076610565, - -0.01607775315642357, - 0.004401837941259146, - -0.06070601940155029, - -0.07674850523471832, - 0.059249889105558395, - -0.02222420647740364, - 0.10215721279382706, - -0.000883960397914052, - 0.010600706562399864, - 0.09869417548179626, - 0.011313805356621742, - -0.01187396701425314, - -0.04851905256509781, - -0.020747501403093338, - 0.043711841106414795, - 0.04022590070962906, - -0.06653523445129395, - -0.04014153778553009, - 0.012923783622682095, - 0.0024894566740840673, - -0.03801071271300316, - 0.017412755638360977, - 0.03090047463774681, - 0.021060986444354057, - 0.04588426649570465, - -0.061013057827949524, - 0.022323710843920708, - -0.0921829417347908, - -0.009262383915483952, - -0.0024641728959977627, - -0.04311069846153259, - -0.02953970432281494, - 0.11183556914329529, - 0.041883185505867004, - 0.01362229697406292, - -0.009713159874081612, - -0.07398185133934021, - -0.03448636084794998, - 0.06774093955755234, - 0.06281304359436035, - 0.005423923954367638, - 0.04070146754384041, - 0.04723779857158661, - 0.0025808606296777725, - 0.04067641496658325, - 0.0840836763381958, - 0.0662192553281784, - 6.253225728869438e-05, - -0.03287994861602783, - -0.07941965758800507, - 0.09294897317886353, - 0.08651109039783478, - -0.09662938117980957, - -0.08838298916816711, - -0.05120178312063217, - -0.06626439094543457, - 0.04893879592418671, - -0.017820902168750763, - -0.007398976478725672, - 0.02896031364798546, - -0.025766948238015175, - -0.10214102268218994, - -0.10014186799526215, - 0.1211889386177063, - -0.0510331466794014, - -0.02461140602827072, - -0.06880723685026169, - 0.02751768007874489, - 0.07350686937570572, - 0.038249749690294266, - -0.009252945892512798, - 0.013650302775204182, - 0.04884907230734825, - -0.08785197138786316, - 0.003136417828500271, - 0.05015810579061508, - -0.00904669426381588, - -0.10715165734291077, - 0.026881497353315353, - -0.07288249582052231, - 0.08610662072896957, - -0.06228051334619522, - 0.1673828363418579, - 0.006395484320819378, - -0.0426831915974617, - -0.08067314326763153, - 0.06747708469629288, - -0.049200400710105896, - 0.0475490465760231, - 0.05716557055711746, - 0.060844384133815765, - 0.04086177423596382, - -0.08346255123615265, - 0.0869344025850296, - 0.019769223406910896, - -0.020300764590501785, - -0.0708683505654335, - -0.030514180660247803, - -0.027429744601249695, - 0.021853724494576454, - -0.012019682675600052, - -0.0613793209195137, - 0.009929075837135315, - 0.0261012464761734, - -0.018161576241254807, - 0.07936893403530121, - 0.12791746854782104, - 0.08958099782466888, - -0.09469571709632874 - ] - }, - "#wavs/LJ001-0007": { - "name": "ljspeech-6", - "embedding": [ - 0.05539746582508087, - 0.08493061363697052, - -0.010013150051236153, - 0.04369359463453293, - -0.05871078372001648, - 0.07792330533266068, - -0.12001194059848785, - 0.09205509722232819, - -0.053687505424022675, - 0.13110113143920898, - -0.0672345906496048, - 0.09076011180877686, - -0.012022187933325768, - -0.1773194968700409, - -0.03690509498119354, - 0.052139587700366974, - -0.06511855870485306, - -0.014169753529131413, - -0.0788075178861618, - -0.022713735699653625, - 0.026002388447523117, - 0.04142642393708229, - 0.06633599102497101, - -0.040966324508190155, - 0.05216488242149353, - 0.043708473443984985, - 0.008947450667619705, - 0.043884553015232086, - 0.015242422930896282, - -0.07271697372198105, - -0.03943272680044174, - 0.11445401608943939, - -0.01976911909878254, - -0.001584329642355442, - 0.03226276487112045, - -0.002877067308872938, - 0.006218053866177797, - -0.09210439026355743, - -0.023884698748588562, - 0.019102394580841064, - -0.023189997300505638, - 0.07678322494029999, - 0.04511963576078415, - -0.028598245233297348, - 0.02654365450143814, - -0.026303084567189217, - -0.036059144884347916, - -0.04994352161884308, - -0.10899694263935089, - 0.16808779537677765, - 0.0568464957177639, - 0.017774248495697975, - -0.0766686350107193, - -0.08056356757879257, - 0.11318203061819077, - -0.0009237118065357208, - -0.11983267217874527, - -0.04011853411793709, - 0.06481920927762985, - 0.18528658151626587, - -0.020618144422769547, - 0.0030966848134994507, - 0.030582068488001823, - 0.11048240959644318, - 0.026203282177448273, - 0.08886025100946426, - 0.0776662528514862, - 0.08468905836343765, - 0.02009391225874424, - 0.053141623735427856, - 0.04102938249707222, - 0.059041380882263184, - -0.006237464025616646, - -0.018360337242484093, - 0.015418153256177902, - -0.03559226542711258, - -0.05805520713329315, - -0.00861218199133873, - -0.021234268322587013, - -0.025556275621056557, - -0.012332704849541187, - -0.009777471423149109, - 0.03721384331583977, - 0.010376224294304848, - -0.05210898444056511, - 0.035450324416160583, - 0.0026437342166900635, - -0.03329150378704071, - 0.07028764486312866, - 0.03101171739399433, - 0.003101848065853119, - 0.029428653419017792, - -0.03445912152528763, - -0.11992329359054565, - -0.006469260435551405, - 0.02472860924899578, - -0.0021879260893911123, - 0.06576769798994064, - 0.04159736633300781, - -0.044104330241680145, - 0.10868340730667114, - 0.06065361574292183, - -0.00814537052065134, - 0.029497724026441574, - -0.0820949599146843, - 0.09694784879684448, - 0.10299994796514511, - 0.007466038689017296, - 0.0573151595890522, - -0.04003140702843666, - 0.0748046338558197, - 0.07954449951648712, - -0.14061805605888367, - -0.07225356996059418, - 0.030713198706507683, - -0.01169175747781992, - 0.015277700498700142, - 0.101996049284935, - 0.0023796744644641876, - 0.013835912570357323, - 0.08836984634399414, - -0.08798637241125107, - -0.053786784410476685, - -0.025867177173495293, - 0.07090725004673004, - -0.05228910967707634, - 0.024839768186211586, - 0.0543626993894577, - -0.048099253326654434, - -0.01027676835656166, - 0.04654526337981224, - -0.0034045036882162094, - 0.003895972855389118, - 0.04250902682542801, - -0.05232023075222969, - 0.06287448853254318, - -0.04146592691540718, - -0.0022073618602007627, - 0.07169511169195175, - 0.057035692036151886, - 0.04202979430556297, - -0.01752091944217682, - -0.03615778684616089, - -0.07597745209932327, - 0.0076013305224478245, - 0.03388708084821701, - 0.06191568076610565, - -0.01607775315642357, - 0.004401837941259146, - -0.06070601940155029, - -0.07674850523471832, - 0.059249889105558395, - -0.02222420647740364, - 0.10215721279382706, - -0.000883960397914052, - 0.010600706562399864, - 0.09869417548179626, - 0.011313805356621742, - -0.01187396701425314, - -0.04851905256509781, - -0.020747501403093338, - 0.043711841106414795, - 0.04022590070962906, - -0.06653523445129395, - -0.04014153778553009, - 0.012923783622682095, - 0.0024894566740840673, - -0.03801071271300316, - 0.017412755638360977, - 0.03090047463774681, - 0.021060986444354057, - 0.04588426649570465, - -0.061013057827949524, - 0.022323710843920708, - -0.0921829417347908, - -0.009262383915483952, - -0.0024641728959977627, - -0.04311069846153259, - -0.02953970432281494, - 0.11183556914329529, - 0.041883185505867004, - 0.01362229697406292, - -0.009713159874081612, - -0.07398185133934021, - -0.03448636084794998, - 0.06774093955755234, - 0.06281304359436035, - 0.005423923954367638, - 0.04070146754384041, - 0.04723779857158661, - 0.0025808606296777725, - 0.04067641496658325, - 0.0840836763381958, - 0.0662192553281784, - 6.253225728869438e-05, - -0.03287994861602783, - -0.07941965758800507, - 0.09294897317886353, - 0.08651109039783478, - -0.09662938117980957, - -0.08838298916816711, - -0.05120178312063217, - -0.06626439094543457, - 0.04893879592418671, - -0.017820902168750763, - -0.007398976478725672, - 0.02896031364798546, - -0.025766948238015175, - -0.10214102268218994, - -0.10014186799526215, - 0.1211889386177063, - -0.0510331466794014, - -0.02461140602827072, - -0.06880723685026169, - 0.02751768007874489, - 0.07350686937570572, - 0.038249749690294266, - -0.009252945892512798, - 0.013650302775204182, - 0.04884907230734825, - -0.08785197138786316, - 0.003136417828500271, - 0.05015810579061508, - -0.00904669426381588, - -0.10715165734291077, - 0.026881497353315353, - -0.07288249582052231, - 0.08610662072896957, - -0.06228051334619522, - 0.1673828363418579, - 0.006395484320819378, - -0.0426831915974617, - -0.08067314326763153, - 0.06747708469629288, - -0.049200400710105896, - 0.0475490465760231, - 0.05716557055711746, - 0.060844384133815765, - 0.04086177423596382, - -0.08346255123615265, - 0.0869344025850296, - 0.019769223406910896, - -0.020300764590501785, - -0.0708683505654335, - -0.030514180660247803, - -0.027429744601249695, - 0.021853724494576454, - -0.012019682675600052, - -0.0613793209195137, - 0.009929075837135315, - 0.0261012464761734, - -0.018161576241254807, - 0.07936893403530121, - 0.12791746854782104, - 0.08958099782466888, - -0.09469571709632874 - ] - }, - "#wavs/LJ001-0008": { - "name": "ljspeech-7", - "embedding": [ - 0.05539746582508087, - 0.08493061363697052, - -0.010013150051236153, - 0.04369359463453293, - -0.05871078372001648, - 0.07792330533266068, - -0.12001194059848785, - 0.09205509722232819, - -0.053687505424022675, - 0.13110113143920898, - -0.0672345906496048, - 0.09076011180877686, - -0.012022187933325768, - -0.1773194968700409, - -0.03690509498119354, - 0.052139587700366974, - -0.06511855870485306, - -0.014169753529131413, - -0.0788075178861618, - -0.022713735699653625, - 0.026002388447523117, - 0.04142642393708229, - 0.06633599102497101, - -0.040966324508190155, - 0.05216488242149353, - 0.043708473443984985, - 0.008947450667619705, - 0.043884553015232086, - 0.015242422930896282, - -0.07271697372198105, - -0.03943272680044174, - 0.11445401608943939, - -0.01976911909878254, - -0.001584329642355442, - 0.03226276487112045, - -0.002877067308872938, - 0.006218053866177797, - -0.09210439026355743, - -0.023884698748588562, - 0.019102394580841064, - -0.023189997300505638, - 0.07678322494029999, - 0.04511963576078415, - -0.028598245233297348, - 0.02654365450143814, - -0.026303084567189217, - -0.036059144884347916, - -0.04994352161884308, - -0.10899694263935089, - 0.16808779537677765, - 0.0568464957177639, - 0.017774248495697975, - -0.0766686350107193, - -0.08056356757879257, - 0.11318203061819077, - -0.0009237118065357208, - -0.11983267217874527, - -0.04011853411793709, - 0.06481920927762985, - 0.18528658151626587, - -0.020618144422769547, - 0.0030966848134994507, - 0.030582068488001823, - 0.11048240959644318, - 0.026203282177448273, - 0.08886025100946426, - 0.0776662528514862, - 0.08468905836343765, - 0.02009391225874424, - 0.053141623735427856, - 0.04102938249707222, - 0.059041380882263184, - -0.006237464025616646, - -0.018360337242484093, - 0.015418153256177902, - -0.03559226542711258, - -0.05805520713329315, - -0.00861218199133873, - -0.021234268322587013, - -0.025556275621056557, - -0.012332704849541187, - -0.009777471423149109, - 0.03721384331583977, - 0.010376224294304848, - -0.05210898444056511, - 0.035450324416160583, - 0.0026437342166900635, - -0.03329150378704071, - 0.07028764486312866, - 0.03101171739399433, - 0.003101848065853119, - 0.029428653419017792, - -0.03445912152528763, - -0.11992329359054565, - -0.006469260435551405, - 0.02472860924899578, - -0.0021879260893911123, - 0.06576769798994064, - 0.04159736633300781, - -0.044104330241680145, - 0.10868340730667114, - 0.06065361574292183, - -0.00814537052065134, - 0.029497724026441574, - -0.0820949599146843, - 0.09694784879684448, - 0.10299994796514511, - 0.007466038689017296, - 0.0573151595890522, - -0.04003140702843666, - 0.0748046338558197, - 0.07954449951648712, - -0.14061805605888367, - -0.07225356996059418, - 0.030713198706507683, - -0.01169175747781992, - 0.015277700498700142, - 0.101996049284935, - 0.0023796744644641876, - 0.013835912570357323, - 0.08836984634399414, - -0.08798637241125107, - -0.053786784410476685, - -0.025867177173495293, - 0.07090725004673004, - -0.05228910967707634, - 0.024839768186211586, - 0.0543626993894577, - -0.048099253326654434, - -0.01027676835656166, - 0.04654526337981224, - -0.0034045036882162094, - 0.003895972855389118, - 0.04250902682542801, - -0.05232023075222969, - 0.06287448853254318, - -0.04146592691540718, - -0.0022073618602007627, - 0.07169511169195175, - 0.057035692036151886, - 0.04202979430556297, - -0.01752091944217682, - -0.03615778684616089, - -0.07597745209932327, - 0.0076013305224478245, - 0.03388708084821701, - 0.06191568076610565, - -0.01607775315642357, - 0.004401837941259146, - -0.06070601940155029, - -0.07674850523471832, - 0.059249889105558395, - -0.02222420647740364, - 0.10215721279382706, - -0.000883960397914052, - 0.010600706562399864, - 0.09869417548179626, - 0.011313805356621742, - -0.01187396701425314, - -0.04851905256509781, - -0.020747501403093338, - 0.043711841106414795, - 0.04022590070962906, - -0.06653523445129395, - -0.04014153778553009, - 0.012923783622682095, - 0.0024894566740840673, - -0.03801071271300316, - 0.017412755638360977, - 0.03090047463774681, - 0.021060986444354057, - 0.04588426649570465, - -0.061013057827949524, - 0.022323710843920708, - -0.0921829417347908, - -0.009262383915483952, - -0.0024641728959977627, - -0.04311069846153259, - -0.02953970432281494, - 0.11183556914329529, - 0.041883185505867004, - 0.01362229697406292, - -0.009713159874081612, - -0.07398185133934021, - -0.03448636084794998, - 0.06774093955755234, - 0.06281304359436035, - 0.005423923954367638, - 0.04070146754384041, - 0.04723779857158661, - 0.0025808606296777725, - 0.04067641496658325, - 0.0840836763381958, - 0.0662192553281784, - 6.253225728869438e-05, - -0.03287994861602783, - -0.07941965758800507, - 0.09294897317886353, - 0.08651109039783478, - -0.09662938117980957, - -0.08838298916816711, - -0.05120178312063217, - -0.06626439094543457, - 0.04893879592418671, - -0.017820902168750763, - -0.007398976478725672, - 0.02896031364798546, - -0.025766948238015175, - -0.10214102268218994, - -0.10014186799526215, - 0.1211889386177063, - -0.0510331466794014, - -0.02461140602827072, - -0.06880723685026169, - 0.02751768007874489, - 0.07350686937570572, - 0.038249749690294266, - -0.009252945892512798, - 0.013650302775204182, - 0.04884907230734825, - -0.08785197138786316, - 0.003136417828500271, - 0.05015810579061508, - -0.00904669426381588, - -0.10715165734291077, - 0.026881497353315353, - -0.07288249582052231, - 0.08610662072896957, - -0.06228051334619522, - 0.1673828363418579, - 0.006395484320819378, - -0.0426831915974617, - -0.08067314326763153, - 0.06747708469629288, - -0.049200400710105896, - 0.0475490465760231, - 0.05716557055711746, - 0.060844384133815765, - 0.04086177423596382, - -0.08346255123615265, - 0.0869344025850296, - 0.019769223406910896, - -0.020300764590501785, - -0.0708683505654335, - -0.030514180660247803, - -0.027429744601249695, - 0.021853724494576454, - -0.012019682675600052, - -0.0613793209195137, - 0.009929075837135315, - 0.0261012464761734, - -0.018161576241254807, - 0.07936893403530121, - 0.12791746854782104, - 0.08958099782466888, - -0.09469571709632874 - ] - }, - "#wavs/LJ001-0009": { - "name": "ljspeech-8", - "embedding": [ - 0.05539746582508087, - 0.08493061363697052, - -0.010013150051236153, - 0.04369359463453293, - -0.05871078372001648, - 0.07792330533266068, - -0.12001194059848785, - 0.09205509722232819, - -0.053687505424022675, - 0.13110113143920898, - -0.0672345906496048, - 0.09076011180877686, - -0.012022187933325768, - -0.1773194968700409, - -0.03690509498119354, - 0.052139587700366974, - -0.06511855870485306, - -0.014169753529131413, - -0.0788075178861618, - -0.022713735699653625, - 0.026002388447523117, - 0.04142642393708229, - 0.06633599102497101, - -0.040966324508190155, - 0.05216488242149353, - 0.043708473443984985, - 0.008947450667619705, - 0.043884553015232086, - 0.015242422930896282, - -0.07271697372198105, - -0.03943272680044174, - 0.11445401608943939, - -0.01976911909878254, - -0.001584329642355442, - 0.03226276487112045, - -0.002877067308872938, - 0.006218053866177797, - -0.09210439026355743, - -0.023884698748588562, - 0.019102394580841064, - -0.023189997300505638, - 0.07678322494029999, - 0.04511963576078415, - -0.028598245233297348, - 0.02654365450143814, - -0.026303084567189217, - -0.036059144884347916, - -0.04994352161884308, - -0.10899694263935089, - 0.16808779537677765, - 0.0568464957177639, - 0.017774248495697975, - -0.0766686350107193, - -0.08056356757879257, - 0.11318203061819077, - -0.0009237118065357208, - -0.11983267217874527, - -0.04011853411793709, - 0.06481920927762985, - 0.18528658151626587, - -0.020618144422769547, - 0.0030966848134994507, - 0.030582068488001823, - 0.11048240959644318, - 0.026203282177448273, - 0.08886025100946426, - 0.0776662528514862, - 0.08468905836343765, - 0.02009391225874424, - 0.053141623735427856, - 0.04102938249707222, - 0.059041380882263184, - -0.006237464025616646, - -0.018360337242484093, - 0.015418153256177902, - -0.03559226542711258, - -0.05805520713329315, - -0.00861218199133873, - -0.021234268322587013, - -0.025556275621056557, - -0.012332704849541187, - -0.009777471423149109, - 0.03721384331583977, - 0.010376224294304848, - -0.05210898444056511, - 0.035450324416160583, - 0.0026437342166900635, - -0.03329150378704071, - 0.07028764486312866, - 0.03101171739399433, - 0.003101848065853119, - 0.029428653419017792, - -0.03445912152528763, - -0.11992329359054565, - -0.006469260435551405, - 0.02472860924899578, - -0.0021879260893911123, - 0.06576769798994064, - 0.04159736633300781, - -0.044104330241680145, - 0.10868340730667114, - 0.06065361574292183, - -0.00814537052065134, - 0.029497724026441574, - -0.0820949599146843, - 0.09694784879684448, - 0.10299994796514511, - 0.007466038689017296, - 0.0573151595890522, - -0.04003140702843666, - 0.0748046338558197, - 0.07954449951648712, - -0.14061805605888367, - -0.07225356996059418, - 0.030713198706507683, - -0.01169175747781992, - 0.015277700498700142, - 0.101996049284935, - 0.0023796744644641876, - 0.013835912570357323, - 0.08836984634399414, - -0.08798637241125107, - -0.053786784410476685, - -0.025867177173495293, - 0.07090725004673004, - -0.05228910967707634, - 0.024839768186211586, - 0.0543626993894577, - -0.048099253326654434, - -0.01027676835656166, - 0.04654526337981224, - -0.0034045036882162094, - 0.003895972855389118, - 0.04250902682542801, - -0.05232023075222969, - 0.06287448853254318, - -0.04146592691540718, - -0.0022073618602007627, - 0.07169511169195175, - 0.057035692036151886, - 0.04202979430556297, - -0.01752091944217682, - -0.03615778684616089, - -0.07597745209932327, - 0.0076013305224478245, - 0.03388708084821701, - 0.06191568076610565, - -0.01607775315642357, - 0.004401837941259146, - -0.06070601940155029, - -0.07674850523471832, - 0.059249889105558395, - -0.02222420647740364, - 0.10215721279382706, - -0.000883960397914052, - 0.010600706562399864, - 0.09869417548179626, - 0.011313805356621742, - -0.01187396701425314, - -0.04851905256509781, - -0.020747501403093338, - 0.043711841106414795, - 0.04022590070962906, - -0.06653523445129395, - -0.04014153778553009, - 0.012923783622682095, - 0.0024894566740840673, - -0.03801071271300316, - 0.017412755638360977, - 0.03090047463774681, - 0.021060986444354057, - 0.04588426649570465, - -0.061013057827949524, - 0.022323710843920708, - -0.0921829417347908, - -0.009262383915483952, - -0.0024641728959977627, - -0.04311069846153259, - -0.02953970432281494, - 0.11183556914329529, - 0.041883185505867004, - 0.01362229697406292, - -0.009713159874081612, - -0.07398185133934021, - -0.03448636084794998, - 0.06774093955755234, - 0.06281304359436035, - 0.005423923954367638, - 0.04070146754384041, - 0.04723779857158661, - 0.0025808606296777725, - 0.04067641496658325, - 0.0840836763381958, - 0.0662192553281784, - 6.253225728869438e-05, - -0.03287994861602783, - -0.07941965758800507, - 0.09294897317886353, - 0.08651109039783478, - -0.09662938117980957, - -0.08838298916816711, - -0.05120178312063217, - -0.06626439094543457, - 0.04893879592418671, - -0.017820902168750763, - -0.007398976478725672, - 0.02896031364798546, - -0.025766948238015175, - -0.10214102268218994, - -0.10014186799526215, - 0.1211889386177063, - -0.0510331466794014, - -0.02461140602827072, - -0.06880723685026169, - 0.02751768007874489, - 0.07350686937570572, - 0.038249749690294266, - -0.009252945892512798, - 0.013650302775204182, - 0.04884907230734825, - -0.08785197138786316, - 0.003136417828500271, - 0.05015810579061508, - -0.00904669426381588, - -0.10715165734291077, - 0.026881497353315353, - -0.07288249582052231, - 0.08610662072896957, - -0.06228051334619522, - 0.1673828363418579, - 0.006395484320819378, - -0.0426831915974617, - -0.08067314326763153, - 0.06747708469629288, - -0.049200400710105896, - 0.0475490465760231, - 0.05716557055711746, - 0.060844384133815765, - 0.04086177423596382, - -0.08346255123615265, - 0.0869344025850296, - 0.019769223406910896, - -0.020300764590501785, - -0.0708683505654335, - -0.030514180660247803, - -0.027429744601249695, - 0.021853724494576454, - -0.012019682675600052, - -0.0613793209195137, - 0.009929075837135315, - 0.0261012464761734, - -0.018161576241254807, - 0.07936893403530121, - 0.12791746854782104, - 0.08958099782466888, - -0.09469571709632874 - ] - }, - "#wavs/LJ001-0010": { - "name": "ljspeech-9", - "embedding": [ - 0.05539746582508087, - 0.08493061363697052, - -0.010013150051236153, - 0.04369359463453293, - -0.05871078372001648, - 0.07792330533266068, - -0.12001194059848785, - 0.09205509722232819, - -0.053687505424022675, - 0.13110113143920898, - -0.0672345906496048, - 0.09076011180877686, - -0.012022187933325768, - -0.1773194968700409, - -0.03690509498119354, - 0.052139587700366974, - -0.06511855870485306, - -0.014169753529131413, - -0.0788075178861618, - -0.022713735699653625, - 0.026002388447523117, - 0.04142642393708229, - 0.06633599102497101, - -0.040966324508190155, - 0.05216488242149353, - 0.043708473443984985, - 0.008947450667619705, - 0.043884553015232086, - 0.015242422930896282, - -0.07271697372198105, - -0.03943272680044174, - 0.11445401608943939, - -0.01976911909878254, - -0.001584329642355442, - 0.03226276487112045, - -0.002877067308872938, - 0.006218053866177797, - -0.09210439026355743, - -0.023884698748588562, - 0.019102394580841064, - -0.023189997300505638, - 0.07678322494029999, - 0.04511963576078415, - -0.028598245233297348, - 0.02654365450143814, - -0.026303084567189217, - -0.036059144884347916, - -0.04994352161884308, - -0.10899694263935089, - 0.16808779537677765, - 0.0568464957177639, - 0.017774248495697975, - -0.0766686350107193, - -0.08056356757879257, - 0.11318203061819077, - -0.0009237118065357208, - -0.11983267217874527, - -0.04011853411793709, - 0.06481920927762985, - 0.18528658151626587, - -0.020618144422769547, - 0.0030966848134994507, - 0.030582068488001823, - 0.11048240959644318, - 0.026203282177448273, - 0.08886025100946426, - 0.0776662528514862, - 0.08468905836343765, - 0.02009391225874424, - 0.053141623735427856, - 0.04102938249707222, - 0.059041380882263184, - -0.006237464025616646, - -0.018360337242484093, - 0.015418153256177902, - -0.03559226542711258, - -0.05805520713329315, - -0.00861218199133873, - -0.021234268322587013, - -0.025556275621056557, - -0.012332704849541187, - -0.009777471423149109, - 0.03721384331583977, - 0.010376224294304848, - -0.05210898444056511, - 0.035450324416160583, - 0.0026437342166900635, - -0.03329150378704071, - 0.07028764486312866, - 0.03101171739399433, - 0.003101848065853119, - 0.029428653419017792, - -0.03445912152528763, - -0.11992329359054565, - -0.006469260435551405, - 0.02472860924899578, - -0.0021879260893911123, - 0.06576769798994064, - 0.04159736633300781, - -0.044104330241680145, - 0.10868340730667114, - 0.06065361574292183, - -0.00814537052065134, - 0.029497724026441574, - -0.0820949599146843, - 0.09694784879684448, - 0.10299994796514511, - 0.007466038689017296, - 0.0573151595890522, - -0.04003140702843666, - 0.0748046338558197, - 0.07954449951648712, - -0.14061805605888367, - -0.07225356996059418, - 0.030713198706507683, - -0.01169175747781992, - 0.015277700498700142, - 0.101996049284935, - 0.0023796744644641876, - 0.013835912570357323, - 0.08836984634399414, - -0.08798637241125107, - -0.053786784410476685, - -0.025867177173495293, - 0.07090725004673004, - -0.05228910967707634, - 0.024839768186211586, - 0.0543626993894577, - -0.048099253326654434, - -0.01027676835656166, - 0.04654526337981224, - -0.0034045036882162094, - 0.003895972855389118, - 0.04250902682542801, - -0.05232023075222969, - 0.06287448853254318, - -0.04146592691540718, - -0.0022073618602007627, - 0.07169511169195175, - 0.057035692036151886, - 0.04202979430556297, - -0.01752091944217682, - -0.03615778684616089, - -0.07597745209932327, - 0.0076013305224478245, - 0.03388708084821701, - 0.06191568076610565, - -0.01607775315642357, - 0.004401837941259146, - -0.06070601940155029, - -0.07674850523471832, - 0.059249889105558395, - -0.02222420647740364, - 0.10215721279382706, - -0.000883960397914052, - 0.010600706562399864, - 0.09869417548179626, - 0.011313805356621742, - -0.01187396701425314, - -0.04851905256509781, - -0.020747501403093338, - 0.043711841106414795, - 0.04022590070962906, - -0.06653523445129395, - -0.04014153778553009, - 0.012923783622682095, - 0.0024894566740840673, - -0.03801071271300316, - 0.017412755638360977, - 0.03090047463774681, - 0.021060986444354057, - 0.04588426649570465, - -0.061013057827949524, - 0.022323710843920708, - -0.0921829417347908, - -0.009262383915483952, - -0.0024641728959977627, - -0.04311069846153259, - -0.02953970432281494, - 0.11183556914329529, - 0.041883185505867004, - 0.01362229697406292, - -0.009713159874081612, - -0.07398185133934021, - -0.03448636084794998, - 0.06774093955755234, - 0.06281304359436035, - 0.005423923954367638, - 0.04070146754384041, - 0.04723779857158661, - 0.0025808606296777725, - 0.04067641496658325, - 0.0840836763381958, - 0.0662192553281784, - 6.253225728869438e-05, - -0.03287994861602783, - -0.07941965758800507, - 0.09294897317886353, - 0.08651109039783478, - -0.09662938117980957, - -0.08838298916816711, - -0.05120178312063217, - -0.06626439094543457, - 0.04893879592418671, - -0.017820902168750763, - -0.007398976478725672, - 0.02896031364798546, - -0.025766948238015175, - -0.10214102268218994, - -0.10014186799526215, - 0.1211889386177063, - -0.0510331466794014, - -0.02461140602827072, - -0.06880723685026169, - 0.02751768007874489, - 0.07350686937570572, - 0.038249749690294266, - -0.009252945892512798, - 0.013650302775204182, - 0.04884907230734825, - -0.08785197138786316, - 0.003136417828500271, - 0.05015810579061508, - -0.00904669426381588, - -0.10715165734291077, - 0.026881497353315353, - -0.07288249582052231, - 0.08610662072896957, - -0.06228051334619522, - 0.1673828363418579, - 0.006395484320819378, - -0.0426831915974617, - -0.08067314326763153, - 0.06747708469629288, - -0.049200400710105896, - 0.0475490465760231, - 0.05716557055711746, - 0.060844384133815765, - 0.04086177423596382, - -0.08346255123615265, - 0.0869344025850296, - 0.019769223406910896, - -0.020300764590501785, - -0.0708683505654335, - -0.030514180660247803, - -0.027429744601249695, - 0.021853724494576454, - -0.012019682675600052, - -0.0613793209195137, - 0.009929075837135315, - 0.0261012464761734, - -0.018161576241254807, - 0.07936893403530121, - 0.12791746854782104, - 0.08958099782466888, - -0.09469571709632874 - ] - } -} diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0001.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0001.npy deleted file mode 100644 index e86cb27855486e9467134f05ea21efb427ad222d..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0001.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:070a2e370e4338b331fffee561cc236adecf077869c6bde9acd69ef8bfef7986 -size 474888 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0001.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0001.wav deleted file mode 100644 index a274be89422809113adc336e624afeb255cdc67a..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0001.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0002.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0002.npy deleted file mode 100644 index 8fd8829d3d7894e5b1a529364bcf3c87295c3611..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0002.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:42c36e568a8b57b77289cd157a9e7ae2c27cf955dd6a7da64ba3478c9c0d2334 -size 18920 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0002.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0002.wav deleted file mode 100644 index b1a0ed110ab9763dab7428f6273d696fecb4205d..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0002.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0003.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0003.npy deleted file mode 100644 index 52dc61f37288196aad89f404017d2b2827ffe961..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0003.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3629fc7aa5e0933858240fde841d61874cb601f5c2a6e756eaad03d5ded44083 -size 475460 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0003.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0003.wav deleted file mode 100644 index 3329ddb448ed3bfff911bb90110defcc72e14bc2..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0003.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0004.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0004.npy deleted file mode 100644 index e96bc5d66be61a705d28aafd3a587c91f8e004f2..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0004.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3b59336c125906c331b7a319ee5b57f95f0bfefe13aed330b1d399766b3927f2 -size 137720 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0004.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0004.wav deleted file mode 100644 index ead8a0e3a6e7b05c116d910e5875b900a2050f9f..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0004.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0005.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0005.npy deleted file mode 100644 index 3a3244a3bfa0f20d2be183aed5bc656be8fc7ad1..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0005.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d0dc904c41f7e9a357d538d8d3a453d8890255f37c4c433828e57439cc7130f6 -size 365356 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0005.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0005.wav deleted file mode 100644 index 640f708c13ffd653794455aa0730ed6c143f2fc9..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0005.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0006.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0006.npy deleted file mode 100644 index d8066965966018d3678cb1ec47d584cc5cfb9ee3..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0006.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9877b39550773704dcbe20ba0b3c3b227ec0cbbfdcd66202d1821cace4ac2d30 -size 138720 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0006.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0006.wav deleted file mode 100644 index 15cffd544f2203ba85040fa21710f42d33187547..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0006.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0007.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0007.npy deleted file mode 100644 index 256c011e7b5706f9f9cd08acfcd7f4b1545891f8..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0007.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:61511787cf80a867fca160cb26b1ed604d7a49f19e9d0242e896d1794fe2d7e5 -size 331788 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0007.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0007.wav deleted file mode 100644 index 0d33e4501e5e8d3479c4900f7fddae2ceacebb45..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0007.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0008.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0008.npy deleted file mode 100644 index ce66ce70d757498ec0509bb008e87cb361c6bfce..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0008.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:da63312469c7aee26a2f30bf6d51e55091d4291954ef63a0bef1c800dfd1aee0 -size 12288 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0008.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0008.wav deleted file mode 100644 index a1871dd8f907a04939949573d79a8312639f942c..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0008.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0009.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0009.npy deleted file mode 100644 index f03e9f46e1a1b2b789bd45e3a8f6e345ca7be054..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0009.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c642cc9208a5491ac34fd1a35fcc5ab8acccfe264667ee2e265b87420701ec65 -size 264920 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0009.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0009.wav deleted file mode 100644 index b534f1b9db8b3baa4958ee39e445a7a1ed24f008..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0009.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0010.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0010.npy deleted file mode 100644 index 914a8eef226b5b6ba32237fc27a3a7d1865d7da9..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0010.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:960003ef32931ea6f6d854a9a0ef7c7f3feae8676f1125cb7c2f820283e4cadd -size 339712 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0010.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0010.wav deleted file mode 100644 index 01a2e68829a506063f8ed8b090a4516a02107a62..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0010.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0011.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0011.npy deleted file mode 100644 index 9d7f6accf4f577192f1bc2f9acba4097e23335c0..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0011.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9d42639bca71945249b78b9a8c90803c52f764205b2495214f8f6d725e1cc5f0 -size 103844 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0011.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0011.wav deleted file mode 100644 index 5ec8ce7e59694563b85fa34c590acd421008cff0..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0011.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0012.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0012.npy deleted file mode 100644 index 23951b397e170fa7d9d90edbaf3f2d4b941b2787..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0012.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0e6f6630d850f0a249f345f628649f0b0226becbe3cfa5f76fa67b531a628840 -size 286160 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0012.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0012.wav deleted file mode 100644 index 6262db4bbfeb15ba298184ab0b7c7bf323f472df..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0012.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0013.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0013.npy deleted file mode 100644 index 9942e121f74ec271b79a5a52a2edb7e8ae9647bf..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0013.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5665c5702bf7df27fb5030310d3cf13461fc62d1affc0c08950bc7198975e204 -size 35488 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0013.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0013.wav deleted file mode 100644 index 72eca1af1a396821c0814e3ff39e9d5752ba5b59..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0013.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0014.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0014.npy deleted file mode 100644 index 74611b8f947b694f740cfe6de2dc33ec043cd77d..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0014.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bcec0d3679393290fc1a350a96e4876840fe6be81784c60b5a488447e0dbb67c -size 519968 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0014.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0014.wav deleted file mode 100644 index 997d31d58c24547de8b78efdfdf503cae0a7e6b7..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0014.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0015.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0015.npy deleted file mode 100644 index 5b0583ab0be3ab4acd3c875d75af025bdb369ef6..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0015.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fd175d2fd5b75c5982ab2302fe936746660be9eb0634e08444fe166b345a8182 -size 470176 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0015.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0015.wav deleted file mode 100644 index c63eb5347a06ef49c39b42911d38bec5cfd58d57..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0015.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0016.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0016.npy deleted file mode 100644 index b1e6cb23c766bae5fe72f8c1c0e0c0019c6255d4..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0016.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f7846187988bcdd4802df2f41a86f5fd9b4db7aa5f72c6728856afb930813640 -size 130304 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0016.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0016.wav deleted file mode 100644 index 639b70c1bae56e32cb06db7c196af533108ffa39..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0016.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0017.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0017.npy deleted file mode 100644 index 0a65672ef7f448dcf8ebb55b9155356700f9dc29..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0017.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:26601b716c26c2e10762cfd5354bfa6e105bece2db368ac811bcc2b2f3d730a7 -size 287156 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0017.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0017.wav deleted file mode 100644 index 3a347aa4af624fb942e8ce1a438c76b278604b08..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0017.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0018.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0018.npy deleted file mode 100644 index 25d103f9396a63d5d50be59c1b29a8c37aa23cb1..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0018.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:322ef39a44dd8b4a1e4cf817862b46741b3eca20d0122966648a395c5a02fb8d -size 290764 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0018.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0018.wav deleted file mode 100644 index 911158a08c2b1a38142fe3f8c4b7b75fec2ec726..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0018.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0019.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0019.npy deleted file mode 100644 index 54cae852154923d3c368c48b88dcea0cb0965cce..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0019.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:51b631a97817dc8b2381eecd7b1e3d576b810013e6d13c1b483f4e987fff33de -size 222732 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0019.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0019.wav deleted file mode 100644 index cfd8c7e2337acd245168161b846f62a515bfd023..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0019.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0020.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0020.npy deleted file mode 100644 index 7297d03f85aa3f2d09beaca84824b617de924c02..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0020.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6c0f2b346e4f5f638f67f412ee749aa7251b97037f7b994cce9a28f36ccab987 -size 94764 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0020.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0020.wav deleted file mode 100644 index f342d46ba30826f43c02c1b9e25d57950446a970..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0020.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0021.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0021.npy deleted file mode 100644 index db08db9353011f12291eabae31f80420bff14157..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0021.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:751163d61e2760691c516f3e6ccb403d93113090f26300b3bcceb37bb0cc4cd3 -size 361248 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0021.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0021.wav deleted file mode 100644 index 066b71c6bfd30186c1aabe5561f0d4b7c4a8b648..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0021.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0022.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0022.npy deleted file mode 100644 index 0a4bbb0b6bfa6b62d44062ea6f478c588c4095c2..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0022.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8f0ab17a10dddf31f65aa1ee32295aa24ba5ed5a84846876caab05fd355bf2a3 -size 242528 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0022.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0022.wav deleted file mode 100644 index c00a587af8a1073c19de3c1a4d6f7b8bd6fde74a..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0022.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0023.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0023.npy deleted file mode 100644 index 93b443ad19f429e4e2e643098a2b46783f8644e1..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0023.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9bee5c39b0a7b4bdeb92dd66966f412e5f0a74c1b61e7aed26c1338d50eccc61 -size 374744 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0023.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0023.wav deleted file mode 100644 index aaa274d0ef33befe007ace594e080ea7c02b3da2..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0023.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0024.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0024.npy deleted file mode 100644 index 6cb7c8236573e7dcf677ae94fd2f33735e54c03b..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0024.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:560f6e537f98a3693aaea3130fe9b7cba4d7f838784b4a23863872dd959cf02c -size 318728 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0024.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0024.wav deleted file mode 100644 index 14e7a3c137dd4e5b778ac45fd897f29b3adc73fa..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0024.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0025.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0025.npy deleted file mode 100644 index 7c47b76ccc00371f832d3c05d8700aa0e47e2da3..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0025.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ddc56be2af40ee99df08060acc9389bdce6c18aa9dd510676a858ee7b7865236 -size 317120 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0025.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0025.wav deleted file mode 100644 index 6e11513ab18d8909ac12ede4006af32765321fe3..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0025.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0026.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0026.npy deleted file mode 100644 index 33e1e4cf0e0961d3fd91a4d56d8d28b56c9a3139..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0026.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ac908660dbc8bd14af7072a7e6d3461427b130651e8676ffd930533f99d7d204 -size 167488 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0026.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0026.wav deleted file mode 100644 index 7efbb2988af2e1af142e0dbb98dda68851acb96c..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0026.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0027.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0027.npy deleted file mode 100644 index 9a166a83c897e72375a437dfb613144c0d325a71..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0027.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e4c6efe1cbac8a01c903cb714729f3f84e211fdc4d7933b67bc37e27b890e72a -size 441156 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0027.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0027.wav deleted file mode 100644 index 5d86776a4dd406fee2cfb07f87ddf09431f075a0..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0027.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0028.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0028.npy deleted file mode 100644 index 29c4fd32f1dbd37f1f7f260e281307cdfc9ad80a..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0028.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:594d24a53ccbeb23e17c094b5014b6071662bb5e9b686a8dfb30e907615f0d30 -size 134504 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0028.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0028.wav deleted file mode 100644 index fbd0d7783ca74b384c0ee06cbd2c28a5c8e0e34d..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0028.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0029.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0029.npy deleted file mode 100644 index 1914016e6028d46dc43c66b081cacf4dc77a78a8..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0029.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f1ac5a26fb9f8fbebc4d5e1e74f06180ce38df0945705bfc1f0d907fdef9c621 -size 126260 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0029.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0029.wav deleted file mode 100644 index d23c35c918aba1d0c9b59d837edb6168a8550706..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0029.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0030.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0030.npy deleted file mode 100644 index a5ce595e205827d678cda715502a6e44545be871..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0030.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:80a0175cb17055f79df005cf5cb019c96697d861aebe33982ebac5942b5aa909 -size 223472 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0030.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0030.wav deleted file mode 100644 index 44b15c5ad554fabfa240f74557f4064b998e6840..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0030.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0031.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0031.npy deleted file mode 100644 index 6bdfd096f6a3ea24c9dce52958c00539c8b39349..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0031.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7980886675c20b776c5032b7c482def93da5c07cf5c5e0159fd4ccc72aebfcba -size 267428 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0031.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0031.wav deleted file mode 100644 index c342b1a5259fe0e2a03dda763df7855d5b1ce86b..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0031.wav and /dev/null differ diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0032.npy b/TTS/tests/data/ljspeech/wavs/LJ001-0032.npy deleted file mode 100644 index 6038ab27d26075d875ff675c7afaa0224fbd41f7..0000000000000000000000000000000000000000 --- a/TTS/tests/data/ljspeech/wavs/LJ001-0032.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:acfb037e68528ad69761f00a0a199830a54b4b96b156b7e6b86fdda0ee14a748 -size 248192 diff --git a/TTS/tests/data/ljspeech/wavs/LJ001-0032.wav b/TTS/tests/data/ljspeech/wavs/LJ001-0032.wav deleted file mode 100644 index 41dfbe14e96347f90b942a4d2612e199a8ae8467..0000000000000000000000000000000000000000 Binary files a/TTS/tests/data/ljspeech/wavs/LJ001-0032.wav and /dev/null differ diff --git a/TTS/tests/data_tests/__init__.py b/TTS/tests/data_tests/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tests/data_tests/test_dataset_formatters.py b/TTS/tests/data_tests/test_dataset_formatters.py deleted file mode 100644 index 30fb79a8e4f64fbefbd6c19427f38d3003409733..0000000000000000000000000000000000000000 --- a/TTS/tests/data_tests/test_dataset_formatters.py +++ /dev/null @@ -1,17 +0,0 @@ -import os -import unittest - -from tests import get_tests_input_path -from TTS.tts.datasets.formatters import common_voice - - -class TestTTSFormatters(unittest.TestCase): - def test_common_voice_preprocessor(self): # pylint: disable=no-self-use - root_path = get_tests_input_path() - meta_file = "common_voice.tsv" - items = common_voice(root_path, meta_file) - assert items[0]["text"] == "The applicants are invited for coffee and visa is given immediately." - assert items[0]["audio_file"] == os.path.join(get_tests_input_path(), "clips", "common_voice_en_20005954.wav") - - assert items[-1]["text"] == "Competition for limited resources has also resulted in some local conflicts." - assert items[-1]["audio_file"] == os.path.join(get_tests_input_path(), "clips", "common_voice_en_19737074.wav") diff --git a/TTS/tests/data_tests/test_loader.py b/TTS/tests/data_tests/test_loader.py deleted file mode 100644 index cbd98fc0c5cd27344699a5166bf67998d44886ae..0000000000000000000000000000000000000000 --- a/TTS/tests/data_tests/test_loader.py +++ /dev/null @@ -1,242 +0,0 @@ -import os -import shutil -import unittest - -import numpy as np -import torch -from torch.utils.data import DataLoader - -from tests import get_tests_data_path, get_tests_output_path -from TTS.tts.configs.shared_configs import BaseDatasetConfig, BaseTTSConfig -from TTS.tts.datasets import TTSDataset, load_tts_samples -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.utils.audio import AudioProcessor - -# pylint: disable=unused-variable - -OUTPATH = os.path.join(get_tests_output_path(), "loader_tests/") -os.makedirs(OUTPATH, exist_ok=True) - -# create a dummy config for testing data loaders. -c = BaseTTSConfig(text_cleaner="english_cleaners", num_loader_workers=0, batch_size=2, use_noise_augment=False) -c.r = 5 -c.data_path = os.path.join(get_tests_data_path(), "ljspeech/") -ok_ljspeech = os.path.exists(c.data_path) - -dataset_config = BaseDatasetConfig( - formatter="ljspeech_test", # ljspeech_test to multi-speaker - meta_file_train="metadata.csv", - meta_file_val=None, - path=c.data_path, - language="en", -) - -DATA_EXIST = True -if not os.path.exists(c.data_path): - DATA_EXIST = False - -print(" > Dynamic data loader test: {}".format(DATA_EXIST)) - - -class TestTTSDataset(unittest.TestCase): - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - self.max_loader_iter = 4 - self.ap = AudioProcessor(**c.audio) - - def _create_dataloader(self, batch_size, r, bgs, start_by_longest=False): - # load dataset - meta_data_train, meta_data_eval = load_tts_samples(dataset_config, eval_split=True, eval_split_size=0.2) - items = meta_data_train + meta_data_eval - - tokenizer, _ = TTSTokenizer.init_from_config(c) - dataset = TTSDataset( - outputs_per_step=r, - compute_linear_spec=True, - return_wav=True, - tokenizer=tokenizer, - ap=self.ap, - samples=items, - batch_group_size=bgs, - min_text_len=c.min_text_len, - max_text_len=c.max_text_len, - min_audio_len=c.min_audio_len, - max_audio_len=c.max_audio_len, - start_by_longest=start_by_longest, - ) - dataloader = DataLoader( - dataset, - batch_size=batch_size, - shuffle=False, - collate_fn=dataset.collate_fn, - drop_last=True, - num_workers=c.num_loader_workers, - ) - return dataloader, dataset - - def test_loader(self): - if ok_ljspeech: - dataloader, dataset = self._create_dataloader(1, 1, 0) - - for i, data in enumerate(dataloader): - if i == self.max_loader_iter: - break - text_input = data["token_id"] - _ = data["token_id_lengths"] - speaker_name = data["speaker_names"] - linear_input = data["linear"] - mel_input = data["mel"] - mel_lengths = data["mel_lengths"] - _ = data["stop_targets"] - _ = data["item_idxs"] - wavs = data["waveform"] - - neg_values = text_input[text_input < 0] - check_count = len(neg_values) - - # check basic conditions - self.assertEqual(check_count, 0) - self.assertEqual(linear_input.shape[0], mel_input.shape[0], c.batch_size) - self.assertEqual(linear_input.shape[2], self.ap.fft_size // 2 + 1) - self.assertEqual(mel_input.shape[2], c.audio["num_mels"]) - self.assertEqual(wavs.shape[1], mel_input.shape[1] * c.audio.hop_length) - self.assertIsInstance(speaker_name[0], str) - - # make sure that the computed mels and the waveform match and correctly computed - mel_new = self.ap.melspectrogram(wavs[0].squeeze().numpy()) - # remove padding in mel-spectrogram - mel_dataloader = mel_input[0].T.numpy()[:, : mel_lengths[0]] - # guarantee that both mel-spectrograms have the same size and that we will remove waveform padding - mel_new = mel_new[:, : mel_lengths[0]] - ignore_seg = -(1 + c.audio.win_length // c.audio.hop_length) - mel_diff = (mel_new[:, : mel_input.shape[1]] - mel_input[0].T.numpy())[:, 0:ignore_seg] - self.assertLess(abs(mel_diff.sum()), 1e-5) - - # check normalization ranges - if self.ap.symmetric_norm: - self.assertLessEqual(mel_input.max(), self.ap.max_norm) - self.assertGreaterEqual( - mel_input.min(), -self.ap.max_norm # pylint: disable=invalid-unary-operand-type - ) - self.assertLess(mel_input.min(), 0) - else: - self.assertLessEqual(mel_input.max(), self.ap.max_norm) - self.assertGreaterEqual(mel_input.min(), 0) - - def test_batch_group_shuffle(self): - if ok_ljspeech: - dataloader, dataset = self._create_dataloader(2, c.r, 16) - last_length = 0 - frames = dataset.samples - for i, data in enumerate(dataloader): - if i == self.max_loader_iter: - break - mel_lengths = data["mel_lengths"] - avg_length = mel_lengths.numpy().mean() - dataloader.dataset.preprocess_samples() - is_items_reordered = False - for idx, item in enumerate(dataloader.dataset.samples): - if item != frames[idx]: - is_items_reordered = True - break - self.assertGreaterEqual(avg_length, last_length) - self.assertTrue(is_items_reordered) - - def test_start_by_longest(self): - """Test start_by_longest option. - - Ther first item of the fist batch must be longer than all the other items. - """ - if ok_ljspeech: - dataloader, _ = self._create_dataloader(2, c.r, 0, True) - dataloader.dataset.preprocess_samples() - for i, data in enumerate(dataloader): - if i == self.max_loader_iter: - break - mel_lengths = data["mel_lengths"] - if i == 0: - max_len = mel_lengths[0] - print(mel_lengths) - self.assertTrue(all(max_len >= mel_lengths)) - - def test_padding_and_spectrograms(self): - def check_conditions(idx, linear_input, mel_input, stop_target, mel_lengths): - self.assertNotEqual(linear_input[idx, -1].sum(), 0) # check padding - self.assertNotEqual(linear_input[idx, -2].sum(), 0) - self.assertNotEqual(mel_input[idx, -1].sum(), 0) - self.assertNotEqual(mel_input[idx, -2].sum(), 0) - self.assertEqual(stop_target[idx, -1], 1) - self.assertEqual(stop_target[idx, -2], 0) - self.assertEqual(stop_target[idx].sum(), 1) - self.assertEqual(len(mel_lengths.shape), 1) - self.assertEqual(mel_lengths[idx], linear_input[idx].shape[0]) - self.assertEqual(mel_lengths[idx], mel_input[idx].shape[0]) - - if ok_ljspeech: - dataloader, _ = self._create_dataloader(1, 1, 0) - - for i, data in enumerate(dataloader): - if i == self.max_loader_iter: - break - linear_input = data["linear"] - mel_input = data["mel"] - mel_lengths = data["mel_lengths"] - stop_target = data["stop_targets"] - item_idx = data["item_idxs"] - - # check mel_spec consistency - wav = np.asarray(self.ap.load_wav(item_idx[0]), dtype=np.float32) - mel = self.ap.melspectrogram(wav).astype("float32") - mel = torch.FloatTensor(mel).contiguous() - mel_dl = mel_input[0] - # NOTE: Below needs to check == 0 but due to an unknown reason - # there is a slight difference between two matrices. - # TODO: Check this assert cond more in detail. - self.assertLess(abs(mel.T - mel_dl).max(), 1e-5) - - # check mel-spec correctness - mel_spec = mel_input[0].cpu().numpy() - wav = self.ap.inv_melspectrogram(mel_spec.T) - self.ap.save_wav(wav, OUTPATH + "/mel_inv_dataloader.wav") - shutil.copy(item_idx[0], OUTPATH + "/mel_target_dataloader.wav") - - # check linear-spec - linear_spec = linear_input[0].cpu().numpy() - wav = self.ap.inv_spectrogram(linear_spec.T) - self.ap.save_wav(wav, OUTPATH + "/linear_inv_dataloader.wav") - shutil.copy(item_idx[0], OUTPATH + "/linear_target_dataloader.wav") - - # check the outputs - check_conditions(0, linear_input, mel_input, stop_target, mel_lengths) - - # Test for batch size 2 - dataloader, _ = self._create_dataloader(2, 1, 0) - - for i, data in enumerate(dataloader): - if i == self.max_loader_iter: - break - linear_input = data["linear"] - mel_input = data["mel"] - mel_lengths = data["mel_lengths"] - stop_target = data["stop_targets"] - item_idx = data["item_idxs"] - - # set id to the longest sequence in the batch - if mel_lengths[0] > mel_lengths[1]: - idx = 0 - else: - idx = 1 - - # check the longer item in the batch - check_conditions(idx, linear_input, mel_input, stop_target, mel_lengths) - - # check the other item in the batch - self.assertEqual(linear_input[1 - idx, -1].sum(), 0) - self.assertEqual(mel_input[1 - idx, -1].sum(), 0) - self.assertEqual(stop_target[1, mel_lengths[1] - 1], 1) - self.assertEqual(stop_target[1, mel_lengths[1] :].sum(), stop_target.shape[1] - mel_lengths[1]) - self.assertEqual(len(mel_lengths.shape), 1) - - # check batch zero-frame conditions (zero-frame disabled) - # assert (linear_input * stop_target.unsqueeze(2)).sum() == 0 - # assert (mel_input * stop_target.unsqueeze(2)).sum() == 0 diff --git a/TTS/tests/data_tests/test_samplers.py b/TTS/tests/data_tests/test_samplers.py deleted file mode 100644 index 0975d5edcb12f32e2cdc4ae99730ad9144cac303..0000000000000000000000000000000000000000 --- a/TTS/tests/data_tests/test_samplers.py +++ /dev/null @@ -1,192 +0,0 @@ -import functools -import random -import unittest - -import torch - -from TTS.config.shared_configs import BaseDatasetConfig -from TTS.tts.datasets import load_tts_samples -from TTS.tts.utils.data import get_length_balancer_weights -from TTS.tts.utils.languages import get_language_balancer_weights -from TTS.tts.utils.speakers import get_speaker_balancer_weights -from TTS.utils.samplers import BucketBatchSampler, PerfectBatchSampler - -# Fixing random state to avoid random fails -torch.manual_seed(0) - -dataset_config_en = BaseDatasetConfig( - formatter="ljspeech", - meta_file_train="metadata.csv", - meta_file_val="metadata.csv", - path="tests/data/ljspeech", - language="en", -) - -dataset_config_pt = BaseDatasetConfig( - formatter="ljspeech", - meta_file_train="metadata.csv", - meta_file_val="metadata.csv", - path="tests/data/ljspeech", - language="pt-br", -) - -# Adding the EN samples twice to create a language unbalanced dataset -train_samples, eval_samples = load_tts_samples( - [dataset_config_en, dataset_config_en, dataset_config_pt], eval_split=True -) - -# gerenate a speaker unbalanced dataset -for i, sample in enumerate(train_samples): - if i < 5: - sample["speaker_name"] = "ljspeech-0" - else: - sample["speaker_name"] = "ljspeech-1" - - -def is_balanced(lang_1, lang_2): - return 0.85 < lang_1 / lang_2 < 1.2 - - -class TestSamplers(unittest.TestCase): - def test_language_random_sampler(self): # pylint: disable=no-self-use - random_sampler = torch.utils.data.RandomSampler(train_samples) - ids = functools.reduce(lambda a, b: a + b, [list(random_sampler) for i in range(100)]) - en, pt = 0, 0 - for index in ids: - if train_samples[index]["language"] == "en": - en += 1 - else: - pt += 1 - - assert not is_balanced(en, pt), "Random sampler is supposed to be unbalanced" - - def test_language_weighted_random_sampler(self): # pylint: disable=no-self-use - weighted_sampler = torch.utils.data.sampler.WeightedRandomSampler( - get_language_balancer_weights(train_samples), len(train_samples) - ) - ids = functools.reduce(lambda a, b: a + b, [list(weighted_sampler) for i in range(100)]) - en, pt = 0, 0 - for index in ids: - if train_samples[index]["language"] == "en": - en += 1 - else: - pt += 1 - - assert is_balanced(en, pt), "Language Weighted sampler is supposed to be balanced" - - def test_speaker_weighted_random_sampler(self): # pylint: disable=no-self-use - weighted_sampler = torch.utils.data.sampler.WeightedRandomSampler( - get_speaker_balancer_weights(train_samples), len(train_samples) - ) - ids = functools.reduce(lambda a, b: a + b, [list(weighted_sampler) for i in range(100)]) - spk1, spk2 = 0, 0 - for index in ids: - if train_samples[index]["speaker_name"] == "ljspeech-0": - spk1 += 1 - else: - spk2 += 1 - - assert is_balanced(spk1, spk2), "Speaker Weighted sampler is supposed to be balanced" - - def test_perfect_sampler(self): # pylint: disable=no-self-use - classes = set() - for item in train_samples: - classes.add(item["speaker_name"]) - - sampler = PerfectBatchSampler( - train_samples, - classes, - batch_size=2 * 3, # total batch size - num_classes_in_batch=2, - label_key="speaker_name", - shuffle=False, - drop_last=True, - ) - batchs = functools.reduce(lambda a, b: a + b, [list(sampler) for i in range(100)]) - for batch in batchs: - spk1, spk2 = 0, 0 - # for in each batch - for index in batch: - if train_samples[index]["speaker_name"] == "ljspeech-0": - spk1 += 1 - else: - spk2 += 1 - assert spk1 == spk2, "PerfectBatchSampler is supposed to be perfectly balanced" - - def test_perfect_sampler_shuffle(self): # pylint: disable=no-self-use - classes = set() - for item in train_samples: - classes.add(item["speaker_name"]) - - sampler = PerfectBatchSampler( - train_samples, - classes, - batch_size=2 * 3, # total batch size - num_classes_in_batch=2, - label_key="speaker_name", - shuffle=True, - drop_last=False, - ) - batchs = functools.reduce(lambda a, b: a + b, [list(sampler) for i in range(100)]) - for batch in batchs: - spk1, spk2 = 0, 0 - # for in each batch - for index in batch: - if train_samples[index]["speaker_name"] == "ljspeech-0": - spk1 += 1 - else: - spk2 += 1 - assert spk1 == spk2, "PerfectBatchSampler is supposed to be perfectly balanced" - - def test_length_weighted_random_sampler(self): # pylint: disable=no-self-use - for _ in range(1000): - # gerenate a lenght unbalanced dataset with random max/min audio lenght - min_audio = random.randrange(1, 22050) - max_audio = random.randrange(44100, 220500) - for idx, item in enumerate(train_samples): - # increase the diversity of durations - random_increase = random.randrange(100, 1000) - if idx < 5: - item["audio_length"] = min_audio + random_increase - else: - item["audio_length"] = max_audio + random_increase - - weighted_sampler = torch.utils.data.sampler.WeightedRandomSampler( - get_length_balancer_weights(train_samples, num_buckets=2), len(train_samples) - ) - ids = functools.reduce(lambda a, b: a + b, [list(weighted_sampler) for i in range(100)]) - len1, len2 = 0, 0 - for index in ids: - if train_samples[index]["audio_length"] < max_audio: - len1 += 1 - else: - len2 += 1 - assert is_balanced(len1, len2), "Length Weighted sampler is supposed to be balanced" - - def test_bucket_batch_sampler(self): - bucket_size_multiplier = 2 - sampler = range(len(train_samples)) - sampler = BucketBatchSampler( - sampler, - data=train_samples, - batch_size=7, - drop_last=True, - sort_key=lambda x: len(x["text"]), - bucket_size_multiplier=bucket_size_multiplier, - ) - - # check if the samples are sorted by text lenght whuile bucketing - min_text_len_in_bucket = 0 - bucket_items = [] - for batch_idx, batch in enumerate(list(sampler)): - if (batch_idx + 1) % bucket_size_multiplier == 0: - for bucket_item in bucket_items: - self.assertLessEqual(min_text_len_in_bucket, len(train_samples[bucket_item]["text"])) - min_text_len_in_bucket = len(train_samples[bucket_item]["text"]) - min_text_len_in_bucket = 0 - bucket_items = [] - else: - bucket_items += batch - - # check sampler length - self.assertEqual(len(sampler), len(train_samples) // 7) diff --git a/TTS/tests/inference_tests/__init__.py b/TTS/tests/inference_tests/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tests/inference_tests/test_synthesize.py b/TTS/tests/inference_tests/test_synthesize.py deleted file mode 100644 index 28a4088c964acd01df70837d0d5ee00523526f03..0000000000000000000000000000000000000000 --- a/TTS/tests/inference_tests/test_synthesize.py +++ /dev/null @@ -1,20 +0,0 @@ -import os - -from tests import get_tests_output_path, run_cli - - -def test_synthesize(): - """Test synthesize.py with diffent arguments.""" - output_path = os.path.join(get_tests_output_path(), "output.wav") - run_cli("tts --list_models") - - # single speaker model - run_cli(f'tts --text "This is an example." --out_path "{output_path}"') - run_cli( - "tts --model_name tts_models/en/ljspeech/glow-tts " f'--text "This is an example." --out_path "{output_path}"' - ) - run_cli( - "tts --model_name tts_models/en/ljspeech/glow-tts " - "--vocoder_name vocoder_models/en/ljspeech/multiband-melgan " - f'--text "This is an example." --out_path "{output_path}"' - ) diff --git a/TTS/tests/inference_tests/test_synthesizer.py b/TTS/tests/inference_tests/test_synthesizer.py deleted file mode 100644 index 40e830178c20493f5b1a6c670a9aeb1d2ce8992f..0000000000000000000000000000000000000000 --- a/TTS/tests/inference_tests/test_synthesizer.py +++ /dev/null @@ -1,78 +0,0 @@ -import os -import unittest - -from tests import get_tests_input_path -from TTS.config import load_config -from TTS.tts.models import setup_model -from TTS.utils.io import save_checkpoint -from TTS.utils.synthesizer import Synthesizer - - -class SynthesizerTest(unittest.TestCase): - # pylint: disable=R0201 - def _create_random_model(self): - # pylint: disable=global-statement - config = load_config(os.path.join(get_tests_input_path(), "dummy_model_config.json")) - model = setup_model(config) - output_path = os.path.join(get_tests_input_path()) - save_checkpoint(config, model, None, None, 10, 1, output_path) - - def test_in_out(self): - self._create_random_model() - tts_root_path = get_tests_input_path() - tts_checkpoint = os.path.join(tts_root_path, "checkpoint_10.pth") - tts_config = os.path.join(tts_root_path, "dummy_model_config.json") - synthesizer = Synthesizer(tts_checkpoint, tts_config, None, None) - synthesizer.tts("Better this test works!!") - - def test_split_into_sentences(self): - """Check demo server sentences split as expected""" - print("\n > Testing demo server sentence splitting") - # pylint: disable=attribute-defined-outside-init, protected-access - self.seg = Synthesizer._get_segmenter("en") - sis = Synthesizer.split_into_sentences - assert sis(self, "Hello. Two sentences") == ["Hello.", "Two sentences"] - assert sis(self, "He went to meet the adviser from Scott, Waltman & Co. next morning.") == [ - "He went to meet the adviser from Scott, Waltman & Co. next morning." - ] - assert sis(self, "Let's run it past Sarah and co. They'll want to see this.") == [ - "Let's run it past Sarah and co.", - "They'll want to see this.", - ] - assert sis(self, "Where is Bobby Jr.'s rabbit?") == ["Where is Bobby Jr.'s rabbit?"] - assert sis(self, "Please inform the U.K. authorities right away.") == [ - "Please inform the U.K. authorities right away." - ] - assert sis(self, "Were David and co. at the event?") == ["Were David and co. at the event?"] - assert sis(self, "paging dr. green, please come to theatre four immediately.") == [ - "paging dr. green, please come to theatre four immediately." - ] - assert sis(self, "The email format is Firstname.Lastname@example.com. I think you reversed them.") == [ - "The email format is Firstname.Lastname@example.com.", - "I think you reversed them.", - ] - assert sis( - self, - "The demo site is: https://top100.example.com/subsection/latestnews.html. Please send us your feedback.", - ) == [ - "The demo site is: https://top100.example.com/subsection/latestnews.html.", - "Please send us your feedback.", - ] - assert sis(self, "Scowling at him, 'You are not done yet!' she yelled.") == [ - "Scowling at him, 'You are not done yet!' she yelled." - ] # with the final lowercase "she" we see it's all one sentence - assert sis(self, "Hey!! So good to see you.") == ["Hey!!", "So good to see you."] - assert sis(self, "He went to Yahoo! but I don't know the division.") == [ - "He went to Yahoo! but I don't know the division." - ] - assert sis(self, "If you can't remember a quote, “at least make up a memorable one that's plausible...\"") == [ - "If you can't remember a quote, “at least make up a memorable one that's plausible...\"" - ] - assert sis(self, "The address is not google.com.") == ["The address is not google.com."] - assert sis(self, "1.) The first item 2.) The second item") == ["1.) The first item", "2.) The second item"] - assert sis(self, "1) The first item 2) The second item") == ["1) The first item", "2) The second item"] - assert sis(self, "a. The first item b. The second item c. The third list item") == [ - "a. The first item", - "b. The second item", - "c. The third list item", - ] diff --git a/TTS/tests/inputs/common_voice.tsv b/TTS/tests/inputs/common_voice.tsv deleted file mode 100644 index 39fc4190acff0267c220895db29c49eb2a2903a3..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/common_voice.tsv +++ /dev/null @@ -1,6 +0,0 @@ -client_id path sentence up_votes down_votes age gender accent locale segment -95324d489b122a800b840e0b0d068f7363a1a6c2cd2e7365672cc7033e38deaa794bd59edcf8196aa35c9791652b9085ac3839a98bb50ebab4a1e8538a94846b common_voice_en_20005954.mp3 The applicants are invited for coffee and visa is given immediately. 3 0 en -95324d489b122a800b840e0b0d068f7363a1a6c2cd2e7365672cc7033e38deaa794bd59edcf8196aa35c9791652b9085ac3839a98bb50ebab4a1e8538a94846b common_voice_en_20005955.mp3 Developmental robotics is related to, but differs from, evolutionary robotics. 2 0 en -95324d489b122a800b840e0b0d068f7363a1a6c2cd2e7365672cc7033e38deaa794bd59edcf8196aa35c9791652b9085ac3839a98bb50ebab4a1e8538a94846b common_voice_en_20005956.mp3 The musical was originally directed and choreographed by Alan Lund. 2 0 en -954a4181ae9fba89d1b1570f2ae148b3ee18ee2311de978e698f598db859f830d93d35574596d713518e8c96cdae01fce7a08c60c2e0a22bcf01e020924440a6 common_voice_en_19737073.mp3 He graduated from Columbia High School, in Brown County, South Dakota. 2 0 en -954a4181ae9fba89d1b1570f2ae148b3ee18ee2311de978e698f598db859f830d93d35574596d713518e8c96cdae01fce7a08c60c2e0a22bcf01e020924440a6 common_voice_en_19737074.mp3 Competition for limited resources has also resulted in some local conflicts. 2 0 en diff --git a/TTS/tests/inputs/dummy_model_config.json b/TTS/tests/inputs/dummy_model_config.json deleted file mode 100644 index 6504aebc78b0776db9f09ff183c1773978a3099d..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/dummy_model_config.json +++ /dev/null @@ -1,102 +0,0 @@ -{ - "run_name": "mozilla-no-loc-fattn-stopnet-sigmoid-loss_masking", - "run_description": "using forward attention, with original prenet, loss masking,separate stopnet, sigmoid. Compare this with 4817. Pytorch DPP", - - "audio":{ - // Audio processing parameters - "num_mels": 80, // size of the mel spec frame. - "fft_size": 1024, // number of stft frequency levels. Size of the linear spectogram frame. - "sample_rate": 22050, // DATASET-RELATED: wav sample-rate. If different than the original data, it is resampled. - "hop_length": 256, - "win_length": 1024, - "preemphasis": 0.98, // pre-emphasis to reduce spec noise and make it more structured. If 0.0, no -pre-emphasis. - "min_level_db": -100, // normalization range - "ref_level_db": 20, // reference level db, theoretically 20db is the sound of air. - "power": 1.5, // value to sharpen wav signals after GL algorithm. - "griffin_lim_iters": 60,// #griffin-lim iterations. 30-60 is a good range. Larger the value, slower the generation. - // Normalization parameters - "signal_norm": true, // normalize the spec values in range [0, 1] - "symmetric_norm": false, // move normalization to range [-1, 1] - "max_norm": 1, // scale normalization to range [-max_norm, max_norm] or [0, max_norm] - "clip_norm": true, // clip normalized values into the range. - "mel_fmin": 0.0, // minimum freq level for mel-spec. ~50 for male and ~95 for female voices. Tune for dataset!! - "mel_fmax": 8000.0, // maximum freq level for mel-spec. Tune for dataset!! - "do_trim_silence": true // enable trimming of slience of audio as you load it. LJspeech (false), TWEB (false), Nancy (true) - }, - - "distributed":{ - "backend": "nccl", - "url": "tcp:\/\/localhost:54321" - }, - - "reinit_layers": [], - - "model": "Tacotron2", // one of the model in models/ - "grad_clip": 1, // upper limit for gradients for clipping. - "epochs": 1000, // total number of epochs to train. - "lr": 0.0001, // Initial learning rate. If Noam decay is active, maximum learning rate. - "lr_decay": false, // if true, Noam learning rate decaying is applied through training. - "warmup_steps": 4000, // Noam decay steps to increase the learning rate from 0 to "lr" - "windowing": false, // Enables attention windowing. Used only in eval mode. - "memory_size": 5, // ONLY TACOTRON - memory queue size used to queue network predictions to feed autoregressive connection. Useful if r < 5. - "attention_norm": "sigmoid", // softmax or sigmoid. Suggested to use softmax for Tacotron2 and sigmoid for Tacotron. - "prenet_type": "original", // ONLY TACOTRON2 - "original" or "bn". - "prenet_dropout": true, // ONLY TACOTRON2 - enable/disable dropout at prenet. - "use_forward_attn": true, // ONLY TACOTRON2 - if it uses forward attention. In general, it aligns faster. - "forward_attn_mask": false, - "attention_type": "original", - "attention_heads": 5, - "bidirectional_decoder": false, - "transition_agent": false, // ONLY TACOTRON2 - enable/disable transition agent of forward attention. - "location_attn": false, // ONLY TACOTRON2 - enable_disable location sensitive attention. It is enabled for TACOTRON by default. - "loss_masking": true, // enable / disable loss masking against the sequence padding. - "enable_eos_bos_chars": false, // enable/disable beginning of sentence and end of sentence chars. - "stopnet": true, // Train stopnet predicting the end of synthesis. - "separate_stopnet": true, // Train stopnet seperately if 'stopnet==true'. It prevents stopnet loss to influence the rest of the model. It causes a better model, but it trains SLOWER. - "tb_model_param_stats": false, // true, plots param stats per layer on tensorboard. Might be memory consuming, but good for debugging. - "use_gst": false, - "double_decoder_consistency": true, // use DDC explained here https://erogol.com/solving-attention-problems-of-tts-models-with-double-decoder-consistency-draft/ - "ddc_r": 7, // reduction rate for coarse decoder. - - "batch_size": 32, // Batch size for training. Lower values than 32 might cause hard to learn attention. - "eval_batch_size":16, - "r": 1, // Number of frames to predict for step. - "wd": 0.000001, // Weight decay weight. - "checkpoint": true, // If true, it saves checkpoints per "save_step" - "save_step": 1000, // Number of training steps expected to save traning stats and checkpoints. - "print_step": 10, // Number of steps to log traning on console. - "batch_group_size": 0, //Number of batches to shuffle after bucketing. - - "run_eval": true, - "test_delay_epochs": 5, //Until attention is aligned, testing only wastes computation time. - "test_sentences_file": null, // set a file to load sentences to be used for testing. If it is null then we use default english sentences. - "data_path": "/media/erogol/data_ssd/Data/Mozilla/", // DATASET-RELATED: can overwritten from command argument - "meta_file_train": "metadata_train.txt", // DATASET-RELATED: metafile for training dataloader. - "meta_file_val": "metadata_val.txt", // DATASET-RELATED: metafile for evaluation dataloader. - "dataset": "mozilla", // DATASET-RELATED: one of mozilla_voice_tts.dataset.preprocessors depending on your target dataset. Use "tts_cache" for pre-computed dataset by extract_features.py - "min_seq_len": 0, // DATASET-RELATED: minimum text length to use in training - "max_seq_len": 150, // DATASET-RELATED: maximum text length - "output_path": "../keep/", // DATASET-RELATED: output path for all training outputs. - "num_loader_workers": 4, // number of training data loader processes. Don't set it too big. 4-8 are good values. - "num_val_loader_workers": 4, // number of evaluation data loader processes. - "phoneme_cache_path": "mozilla_us_phonemes", // phoneme computation is slow, therefore, it caches results in the given folder. - "use_phonemes": false, // use phonemes instead of raw characters. It is suggested for better pronounciation. - "phoneme_language": "en-us", // depending on your target language, pick one from https://github.com/bootphon/phonemizer#languages - "text_cleaner": "phoneme_cleaners", - "use_speaker_embedding": false, // whether to use additional embeddings for separate speakers - - // MULTI-SPEAKER and GST - "use_speaker_embedding": false, // use speaker embedding to enable multi-speaker learning. - "gst": { // gst parameter if gst is enabled - "gst_style_input": null, // Condition the style input either on a - // -> wave file [path to wave] or - // -> dictionary using the style tokens {'token1': 'value', 'token2': 'value'} example {"0": 0.15, "1": 0.15, "5": -0.15} - // with the dictionary being len(dict) <= len(gst_style_tokens). - "gst_use_speaker_embedding": true, // if true pass speaker embedding in attention input GST. - "gst_embedding_dim": 512, - "gst_num_heads": 4, - "gst_style_tokens": 10 - } -} - - diff --git a/TTS/tests/inputs/example_1.wav b/TTS/tests/inputs/example_1.wav deleted file mode 100644 index b1a0ed110ab9763dab7428f6273d696fecb4205d..0000000000000000000000000000000000000000 Binary files a/TTS/tests/inputs/example_1.wav and /dev/null differ diff --git a/TTS/tests/inputs/language_ids.json b/TTS/tests/inputs/language_ids.json deleted file mode 100644 index 27bb15206f1b06db9f2f14451caa7f5f43bdb7f1..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/language_ids.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "en": 0, - "fr-fr": 1, - "pt-br": 2 -} \ No newline at end of file diff --git a/TTS/tests/inputs/scale_stats.npy b/TTS/tests/inputs/scale_stats.npy deleted file mode 100644 index 74be37553ee6204095a6f791ebe10f8f10140fba..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/scale_stats.npy +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:66e84c8c947d3cdead90cc37710c7b426562e2520e59500bc8e53c435152506c -size 10479 diff --git a/TTS/tests/inputs/server_config.json b/TTS/tests/inputs/server_config.json deleted file mode 100644 index f0a922836adbebc2b488c218f0969c707bb7d4ed..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/server_config.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "tts_checkpoint":"checkpoint_10.pth", // tts checkpoint file - "tts_config":"dummy_model_config.json", // tts config.json file - "tts_speakers": null, // json file listing speaker ids. null if no speaker embedding. - "wavernn_lib_path": null, // Rootpath to wavernn project folder to be imported. If this is null, model uses GL for speech synthesis. - "wavernn_file": null, // wavernn checkpoint file name - "wavernn_config": null, // wavernn config file - "vocoder_config":null, - "vocoder_checkpoint": null, - "is_wavernn_batched":true, - "port": 5002, - "use_cuda": false, - "debug": true -} diff --git a/TTS/tests/inputs/test_align_tts.json b/TTS/tests/inputs/test_align_tts.json deleted file mode 100644 index 3f928c7e922fd3abb431880ae65db73b22f04974..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/test_align_tts.json +++ /dev/null @@ -1,158 +0,0 @@ -{ - "model": "align_tts", - "run_name": "test_sample_dataset_run", - "run_description": "sample dataset test run", - - // AUDIO PARAMETERS - "audio":{ - // stft parameters - "fft_size": 1024, // number of stft frequency levels. Size of the linear spectogram frame. - "win_length": 1024, // stft window length in ms. - "hop_length": 256, // stft window hop-lengh in ms. - "frame_length_ms": null, // stft window length in ms.If null, 'win_length' is used. - "frame_shift_ms": null, // stft window hop-lengh in ms. If null, 'hop_length' is used. - - // Audio processing parameters - "sample_rate": 22050, // DATASET-RELATED: wav sample-rate. - "preemphasis": 0.0, // pre-emphasis to reduce spec noise and make it more structured. If 0.0, no -pre-emphasis. - "ref_level_db": 20, // reference level db, theoretically 20db is the sound of air. - - // Silence trimming - "do_trim_silence": true,// enable trimming of slience of audio as you load it. LJspeech (true), TWEB (false), Nancy (true) - "trim_db": 60, // threshold for timming silence. Set this according to your dataset. - - // Griffin-Lim - "power": 1.5, // value to sharpen wav signals after GL algorithm. - "griffin_lim_iters": 60,// #griffin-lim iterations. 30-60 is a good range. Larger the value, slower the generation. - - // MelSpectrogram parameters - "num_mels": 80, // size of the mel spec frame. - "mel_fmin": 50.0, // minimum freq level for mel-spec. ~50 for male and ~95 for female voices. Tune for dataset!! - "mel_fmax": 7600.0, // maximum freq level for mel-spec. Tune for dataset!! - "spec_gain": 1, - - // Normalization parameters - "signal_norm": true, // normalize spec values. Mean-Var normalization if 'stats_path' is defined otherwise range normalization defined by the other params. - "min_level_db": -100, // lower bound for normalization - "symmetric_norm": true, // move normalization to range [-1, 1] - "max_norm": 4.0, // scale normalization to range [-max_norm, max_norm] or [0, max_norm] - "clip_norm": true, // clip normalized values into the range. - "stats_path": null // DO NOT USE WITH MULTI_SPEAKER MODEL. scaler stats file computed by 'compute_statistics.py'. If it is defined, mean-std based notmalization is used and other normalization params are ignored - }, - - // VOCABULARY PARAMETERS - // if custom character set is not defined, - // default set in symbols.py is used - // "characters":{ - // "pad": "_", - // "eos": "&", - // "bos": "*", - // "characters": "ABCDEFGHIJKLMNOPQRSTUVWXYZÇÃÀÁÂÊÉÍÓÔÕÚÛabcdefghijklmnopqrstuvwxyzçãàáâêéíóôõúû!(),-.:;? ", - // "punctuations":"!'(),-.:;? ", - // "phonemes":"iyɨʉɯuɪʏʊeøɘəɵɤoɛœɜɞʌɔæɐaɶɑɒᵻʘɓǀɗǃʄǂɠǁʛpbtdʈɖcɟkɡqɢʔɴŋɲɳnɱmʙrʀⱱɾɽɸβfvθðszʃʒʂʐçʝxɣχʁħʕhɦɬɮʋɹɻjɰlɭʎʟˈˌːˑʍwɥʜʢʡɕʑɺɧɚ˞ɫ'̃' " - // }, - - "add_blank": false, // if true add a new token after each token of the sentence. This increases the size of the input sequence, but has considerably improved the prosody of the GlowTTS model. - - // DISTRIBUTED TRAINING - "distributed":{ - "backend": "nccl", - "url": "tcp:\/\/localhost:54321" - }, - - "reinit_layers": [], // give a list of layer names to restore from the given checkpoint. If not defined, it reloads all heuristically matching layers. - - // MODEL PARAMETERS - "positional_encoding": true, - "hidden_channels": 256, - "hidden_channels_dp": 256, - "encoder_type": "fftransformer", - "encoder_params":{ - "hidden_channels_ffn": 1024 , - "num_heads": 2, - "num_layers": 6, - "dropout_p": 0.1 - }, - "decoder_type": "fftransformer", - "decoder_params":{ - "hidden_channels_ffn": 1024 , - "num_heads": 2, - "num_layers": 6, - "dropout_p": 0.1 - }, - - - // TRAINING - "batch_size":2, // Batch size for training. Lower values than 32 might cause hard to learn attention. It is overwritten by 'gradual_training'. - "eval_batch_size":1, - "r": 1, // Number of decoder frames to predict per iteration. Set the initial values if gradual training is enabled. - "loss_masking": true, // enable / disable loss masking against the sequence padding. - "phase_start_steps": null, - - - // LOSS PARAMETERS - "ssim_alpha": 1, - "spec_loss_alpha": 1, - "dur_loss_alpha": 1, - "mdn_alpha": 1, - - // VALIDATION - "run_eval": true, - "test_delay_epochs": -1, //Until attention is aligned, testing only wastes computation time. - "test_sentences_file": null, // set a file to load sentences to be used for testing. If it is null then we use default english sentences. - - // OPTIMIZER - "noam_schedule": true, // use noam warmup and lr schedule. - "grad_clip": 1.0, // upper limit for gradients for clipping. - "epochs": 1, // total number of epochs to train. - "lr": 0.002, // Initial learning rate. If Noam decay is active, maximum learning rate. - "warmup_steps": 4000, // Noam decay steps to increase the learning rate from 0 to "lr" - - // TENSORBOARD and LOGGING - "print_step": 1, // Number of steps to log training on console. - "tb_plot_step": 100, // Number of steps to plot TB training figures. - "print_eval": false, // If True, it prints intermediate loss values in evalulation. - "save_step": 5000, // Number of training steps expected to save traninpg stats and checkpoints. - "checkpoint": true, // If true, it saves checkpoints per "save_step" - "keep_all_best": true, // If true, keeps all best_models after keep_after steps - "keep_after": 10000, // Global step after which to keep best models if keep_all_best is true - "tb_model_param_stats": false, // true, plots param stats per layer on tensorboard. Might be memory consuming, but good for debugging.:set n - "mixed_precision": false, - - // DATA LOADING - "text_cleaner": "english_cleaners", - "enable_eos_bos_chars": false, // enable/disable beginning of sentence and end of sentence chars. - "num_loader_workers": 0, // number of training data loader processes. Don't set it too big. 4-8 are good values. - "num_eval_loader_workers": 0, // number of evaluation data loader processes. - "batch_group_size": 0, //Number of batches to shuffle after bucketing. - "min_seq_len": 2, // DATASET-RELATED: minimum text length to use in training - "max_seq_len": 300, // DATASET-RELATED: maximum text length - "compute_f0": false, // compute f0 values in data-loader - "compute_input_seq_cache": false, // if true, text sequences are computed before starting training. If phonemes are enabled, they are also computed at this stage. - - // PATHS - "output_path": "tests/train_outputs/", - - // PHONEMES - "phoneme_cache_path": "tests/train_outputs/phoneme_cache/", // phoneme computation is slow, therefore, it caches results in the given folder. - "use_phonemes": false, // use phonemes instead of raw characters. It is suggested for better pronoun[ciation. - "phoneme_language": "en-us", // depending on your target language, pick one from https://github.com/bootphon/phonemizer#languages - - // MULTI-SPEAKER and GST - "use_speaker_embedding": false, // use speaker embedding to enable multi-speaker learning. - "use_d_vector_file": false, // if true, forces the model to use external embedding per sample instead of nn.embeddings, that is, it supports external embeddings such as those used at: https://arxiv.org/abs /1806.04558 - "d_vector_file": "/home/erogol/Data/libritts/speakers.json", // if not null and use_d_vector_file is true, it is used to load a specific embedding file and thus uses these embeddings instead of nn.embeddings, that is, it supports external embeddings such as those used at: https://arxiv.org/abs /1806.04558 - - - // DATASETS - "datasets": // List of datasets. They all merged and they get different speaker_ids. - [ - { - "formatter": "ljspeech", - "path": "tests/data/ljspeech/", - "meta_file_train": "metadata.csv", - "meta_file_val": "metadata.csv", - "meta_file_attn_mask": null - } - ] -} \ No newline at end of file diff --git a/TTS/tests/inputs/test_config.json b/TTS/tests/inputs/test_config.json deleted file mode 100644 index 8f8810d17f1a3871c50fa5cd0ba093096a9b4d04..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/test_config.json +++ /dev/null @@ -1,69 +0,0 @@ - { - "audio":{ - "audio_processor": "audio", - "num_mels": 80, - "fft_size": 1024, - "sample_rate": 22050, - "frame_length_ms": null, - "frame_shift_ms": null, - "hop_length": 256, - "win_length": 1024, - "preemphasis": 0.97, - "min_level_db": -100, - "ref_level_db": 20, - "power": 1.5, - "griffin_lim_iters": 30, - "signal_norm": true, - "symmetric_norm": true, - "clip_norm": true, - "max_norm": 4, - "mel_fmin": 0, - "mel_fmax": 8000, - "do_trim_silence": false, - "spec_gain": 20 - }, - - "characters":{ - "pad": "_", - "eos": "~", - "bos": "^", - "characters": "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!'(),-.:;? ", - "punctuations":"!'(),-.:;? ", - "phonemes":"iyɨʉɯuɪʏʊeøɘəɵɤoɛœɜɞʌɔæɐaɶɑɒᵻʘɓǀɗǃʄǂɠǁʛpbtdʈɖcɟkɡqɢʔɴŋɲɳnɱmʙrʀⱱɾɽɸβfvθðszʃʒʂʐçʝxɣχʁħʕhɦɬɮʋɹɻjɰlɭʎʟˈˌːˑʍwɥʜʢʡɕʑɺɧɚ˞ɫʲ" - }, - - "hidden_size": 128, - "embedding_size": 256, - "text_cleaner": "english_cleaners", - - "epochs": 2000, - "lr": 0.003, - "lr_patience": 5, - "lr_decay": 0.5, - "batch_size": 2, - "r": 5, - "mk": 1.0, - "num_loader_workers": 0, - "memory_size": 5, - - "save_step": 200, - "data_path": "tests/data/ljspeech/", - "output_path": "result", - "min_seq_len": 0, - "max_seq_len": 300, - "log_dir": "tests/outputs/", - - - "use_speaker_embedding": false, - "use_gst": true, - "gst": { - "gst_style_input": null, - - - - "gst_use_speaker_embedding": true, - "gst_embedding_dim": 512, - "gst_num_heads": 4, - "gst_num_style_tokens": 10 - } -} diff --git a/TTS/tests/inputs/test_glow_tts.json b/TTS/tests/inputs/test_glow_tts.json deleted file mode 100644 index 8c0ab864b71a1672a4bd520707224fcce3b72be3..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/test_glow_tts.json +++ /dev/null @@ -1,149 +0,0 @@ -{ - "model": "glow_tts", - "run_name": "glow-tts-gatedconv", - "run_description": "glow-tts model training with gated conv.", - - // AUDIO PARAMETERS - "audio":{ - "fft_size": 1024, // number of stft frequency levels. Size of the linear spectogram frame. - "win_length": 1024, // stft window length in ms. - "hop_length": 256, // stft window hop-lengh in ms. - "frame_length_ms": null, // stft window length in ms.If null, 'win_length' is used. - "frame_shift_ms": null, // stft window hop-lengh in ms. If null, 'hop_length' is used. - - // Audio processing parameters - "sample_rate": 22050, // DATASET-RELATED: wav sample-rate. If different than the original data, it is resampled. - "preemphasis": 0.0, // pre-emphasis to reduce spec noise and make it more structured. If 0.0, no -pre-emphasis. - "ref_level_db": 0, // reference level db, theoretically 20db is the sound of air. - - // Griffin-Lim - "power": 1.1, // value to sharpen wav signals after GL algorithm. - "griffin_lim_iters": 60,// #griffin-lim iterations. 30-60 is a good range. Larger the value, slower the generation. - - // Silence trimming - "do_trim_silence": true,// enable trimming of slience of audio as you load it. LJspeech (false), TWEB (false), Nancy (true) - "trim_db": 60, // threshold for timming silence. Set this according to your dataset. - - // MelSpectrogram parameters - "num_mels": 80, // size of the mel spec frame. - "mel_fmin": 50.0, // minimum freq level for mel-spec. ~50 for male and ~95 for female voices. Tune for dataset!! - "mel_fmax": 7600.0, // maximum freq level for mel-spec. Tune for dataset!! - "spec_gain": 1.0, // scaler value appplied after log transform of spectrogram. - - // Normalization parameters - "signal_norm": true, // normalize spec values. Mean-Var normalization if 'stats_path' is defined otherwise range normalization defined by the other params. - "min_level_db": -100, // lower bound for normalization - "symmetric_norm": true, // move normalization to range [-1, 1] - "max_norm": 1.0, // scale normalization to range [-max_norm, max_norm] or [0, max_norm] - "clip_norm": true, // clip normalized values into the range. - "stats_path": null // DO NOT USE WITH MULTI_SPEAKER MODEL. scaler stats file computed by 'compute_statistics.py'. If it is defined, mean-std based notmalization is used and other normalization params are ignored - }, - - // VOCABULARY PARAMETERS - // if custom character set is not defined, - // default set in symbols.py is used - // "characters":{ - // "pad": "_", - // "eos": "~", - // "bos": "^", - // "characters": "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!'(),-.:;? ", - // "punctuations":"!'(),-.:;? ", - // "phonemes":"iyɨʉɯuɪʏʊeøɘəɵɤoɛœɜɞʌɔæɐaɶɑɒᵻʘɓǀɗǃʄǂɠǁʛpbtdʈɖcɟkɡqɢʔɴŋɲɳnɱmʙrʀⱱɾɽɸβfvθðszʃʒʂʐçʝxɣχʁħʕhɦɬɮʋɹɻjɰlɭʎʟˈˌːˑʍwɥʜʢʡɕʑɺɧɚ˞ɫ" - // }, - - "add_blank": false, // if true add a new token after each token of the sentence. This increases the size of the input sequence, but has considerably improved the prosody of the GlowTTS model. - - // DISTRIBUTED TRAINING - "mixed_precision": false, - "distributed":{ - "backend": "nccl", - "url": "tcp:\/\/localhost:54323" - }, - - "reinit_layers": [], // give a list of layer names to restore from the given checkpoint. If not defined, it reloads all heuristically matching layers. - - // MODEL PARAMETERS - "use_mas": false, // use Monotonic Alignment Search if true. Otherwise use pre-computed attention alignments. - - // TRAINING - "batch_size": 8, // Batch size for training. Lower values than 32 might cause hard to learn attention. It is overwritten by 'gradual_training'. - "eval_batch_size": 8, - "r": 1, // Number of decoder frames to predict per iteration. Set the initial values if gradual training is enabled. - "loss_masking": true, // enable / disable loss masking against the sequence padding. - "data_dep_init_iter": 1, - - // VALIDATION - "run_eval": true, - "test_delay_epochs": 0, //Until attention is aligned, testing only wastes computation time. - "test_sentences_file": null, // set a file to load sentences to be used for testing. If it is null then we use default english sentences. - - // OPTIMIZER - "noam_schedule": true, // use noam warmup and lr schedule. - "grad_clip": 5.0, // upper limit for gradients for clipping. - "epochs": 1, // total number of epochs to train. - "lr": 1e-3, // Initial learning rate. If Noam decay is active, maximum learning rate. - "wd": 0.000001, // Weight decay weight. - "warmup_steps": 4000, // Noam decay steps to increase the learning rate from 0 to "lr" - "seq_len_norm": false, // Normalize eash sample loss with its length to alleviate imbalanced datasets. Use it if your dataset is small or has skewed distribution of sequence lengths. - - "hidden_channels_encoder": 192, - "hidden_channels_decoder": 192, - "hidden_channels_duration_predictor": 256, - "use_encoder_prenet": true, - "encoder_type": "rel_pos_transformer", - "encoder_params": { - "kernel_size":3, - "dropout_p": 0.1, - "num_layers": 6, - "num_heads": 2, - "hidden_channels_ffn": 768, - "input_length": null - }, - - // TENSORBOARD and LOGGING - "print_step": 25, // Number of steps to log training on console. - "tb_plot_step": 100, // Number of steps to plot TB training figures. - "print_eval": false, // If True, it prints intermediate loss values in evalulation. - "save_step": 5000, // Number of training steps expected to save traninpg stats and checkpoints. - "checkpoint": true, // If true, it saves checkpoints per "save_step" - "keep_all_best": true, // If true, keeps all best_models after keep_after steps - "keep_after": 10000, // Global step after which to keep best models if keep_all_best is true - "tb_model_param_stats": false, // true, plots param stats per layer on tensorboard. Might be memory consuming, but good for debugging. - "apex_amp_level": null, - - // DATA LOADING - "text_cleaner": "phoneme_cleaners", - "enable_eos_bos_chars": false, // enable/disable beginning of sentence and end of sentence chars. - "num_loader_workers": 0, // number of training data loader processes. Don't set it too big. 4-8 are good values. - "num_eval_loader_workers": 0, // number of evaluation data loader processes. - "batch_group_size": 0, //Number of batches to shuffle after bucketing. - "min_seq_len": 3, // DATASET-RELATED: minimum text length to use in training - "max_seq_len": 500, // DATASET-RELATED: maximum text length - "compute_f0": false, // compute f0 values in data-loader - "compute_input_seq_cache": true, - "use_noise_augment": true, - - // PATHS - "output_path": "tests/train_outputs/", - - // PHONEMES - "phoneme_cache_path": "tests/outputs/phoneme_cache/", // phoneme computation is slow, therefore, it caches results in the given folder. - "use_phonemes": false, // use phonemes instead of raw characters. It is suggested for better pronounciation. - "phoneme_language": "en-us", // depending on your target language, pick one from https://github.com/bootphon/phonemizer#languages - - // MULTI-SPEAKER and GST - "use_d_vector_file": false, - "d_vector_file": null, - "use_speaker_embedding": false, // use speaker embedding to enable multi-speaker learning. - - // DATASETS - "datasets": // List of datasets. They all merged and they get different speaker_ids. - [ - { - "formatter": "ljspeech", - "path": "tests/data/ljspeech/", - "meta_file_train": "metadata.csv", - "meta_file_val": "metadata.csv" - } - ] -} diff --git a/TTS/tests/inputs/test_speaker_encoder_config.json b/TTS/tests/inputs/test_speaker_encoder_config.json deleted file mode 100644 index bfcc17ab0e6390bdd00830f2a8c0ffc7e6f14032..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/test_speaker_encoder_config.json +++ /dev/null @@ -1,61 +0,0 @@ - -{ - "model": "speaker_encoder", - "run_name": "test_speaker_encoder", - "run_description": "test speaker encoder.", - "audio":{ - // Audio processing parameters - "num_mels": 40, // size of the mel spec frame. - "fft_size": 400, // number of stft frequency levels. Size of the linear spectogram frame. - "sample_rate": 16000, // DATASET-RELATED: wav sample-rate. If different than the original data, it is resampled. - "win_length": 400, // stft window length in ms. - "hop_length": 160, // stft window hop-lengh in ms. - "frame_length_ms": null, // stft window length in ms.If null, 'win_length' is used. - "frame_shift_ms": null, // stft window hop-lengh in ms. If null, 'hop_length' is used. - "preemphasis": 0.98, // pre-emphasis to reduce spec noise and make it more structured. If 0.0, no -pre-emphasis. - "min_level_db": -100, // normalization range - "ref_level_db": 20, // reference level db, theoretically 20db is the sound of air. - "power": 1.5, // value to sharpen wav signals after GL algorithm. - "griffin_lim_iters": 60,// #griffin-lim iterations. 30-60 is a good range. Larger the value, slower the generation. - // Normalization parameters - "signal_norm": true, // normalize the spec values in range [0, 1] - "symmetric_norm": true, // move normalization to range [-1, 1] - "max_norm": 4.0, // scale normalization to range [-max_norm, max_norm] or [0, max_norm] - "clip_norm": true, // clip normalized values into the range. - "mel_fmin": 0.0, // minimum freq level for mel-spec. ~50 for male and ~95 for female voices. Tune for dataset!! - "mel_fmax": 8000.0, // maximum freq level for mel-spec. Tune for dataset!! - "do_trim_silence": true, // enable trimming of slience of audio as you load it. LJspeech (false), TWEB (false), Nancy (true) - "trim_db": 60 // threshold for timming silence. Set this according to your dataset. - }, - "reinit_layers": [], - "loss": "angleproto", // "ge2e" to use Generalized End-to-End loss and "angleproto" to use Angular Prototypical loss (new SOTA) - "grad_clip": 3.0, // upper limit for gradients for clipping. - "epochs": 1000, // total number of epochs to train. - "lr": 0.0001, // Initial learning rate. If Noam decay is active, maximum learning rate. - "lr_decay": false, // if true, Noam learning rate decaying is applied through training. - "warmup_steps": 4000, // Noam decay steps to increase the learning rate from 0 to "lr" - "tb_model_param_stats": false, // true, plots param stats per layer on tensorboard. Might be memory consuming, but good for debugging. - "steps_plot_stats": 10, // number of steps to plot embeddings. - "num_classes_in_batch": 64, // Batch size for training. Lower values than 32 might cause hard to learn attention. It is overwritten by 'gradual_training'. - "num_utter_per_class": 10, // - "num_loader_workers": 8, // number of training data loader processes. Don't set it too big. 4-8 are good values. - "wd": 0.000001, // Weight decay weight. - "checkpoint": true, // If true, it saves checkpoints per "save_step" - "save_step": 1000, // Number of training steps expected to save traning stats and checkpoints. - "print_step": 20, // Number of steps to log traning on console. - "batch_size": 32, - "output_path": "", // DATASET-RELATED: output path for all training outputs. - "model_params": { - "model_name": "lstm", - "input_dim": 40, - "proj_dim": 256, - "lstm_dim": 768, - "num_lstm_layers": 3, - "use_lstm_with_projection": true - }, - "storage": { - "sample_from_storage_p": 0.66, // the probability with which we'll sample from the DataSet in-memory storage - "storage_size": 15 // the size of the in-memory storage with respect to a single batch - }, - "datasets":null -} \ No newline at end of file diff --git a/TTS/tests/inputs/test_speedy_speech.json b/TTS/tests/inputs/test_speedy_speech.json deleted file mode 100644 index 4a7eea5ded0ce2e89a13882864ab9dea226239fd..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/test_speedy_speech.json +++ /dev/null @@ -1,155 +0,0 @@ -{ - "model": "speedy_speech", - "run_name": "test_sample_dataset_run", - "run_description": "sample dataset test run", - - // AUDIO PARAMETERS - "audio":{ - // stft parameters - "fft_size": 1024, // number of stft frequency levels. Size of the linear spectogram frame. - "win_length": 1024, // stft window length in ms. - "hop_length": 256, // stft window hop-lengh in ms. - "frame_length_ms": null, // stft window length in ms.If null, 'win_length' is used. - "frame_shift_ms": null, // stft window hop-lengh in ms. If null, 'hop_length' is used. - - // Audio processing parameters - "sample_rate": 22050, // DATASET-RELATED: wav sample-rate. - "preemphasis": 0.0, // pre-emphasis to reduce spec noise and make it more structured. If 0.0, no -pre-emphasis. - "ref_level_db": 20, // reference level db, theoretically 20db is the sound of air. - - // Silence trimming - "do_trim_silence": true,// enable trimming of slience of audio as you load it. LJspeech (true), TWEB (false), Nancy (true) - "trim_db": 60, // threshold for timming silence. Set this according to your dataset. - - // Griffin-Lim - "power": 1.5, // value to sharpen wav signals after GL algorithm. - "griffin_lim_iters": 60,// #griffin-lim iterations. 30-60 is a good range. Larger the value, slower the generation. - - // MelSpectrogram parameters - "num_mels": 80, // size of the mel spec frame. - "mel_fmin": 50.0, // minimum freq level for mel-spec. ~50 for male and ~95 for female voices. Tune for dataset!! - "mel_fmax": 7600.0, // maximum freq level for mel-spec. Tune for dataset!! - "spec_gain": 1, - - // Normalization parameters - "signal_norm": true, // normalize spec values. Mean-Var normalization if 'stats_path' is defined otherwise range normalization defined by the other params. - "min_level_db": -100, // lower bound for normalization - "symmetric_norm": true, // move normalization to range [-1, 1] - "max_norm": 4.0, // scale normalization to range [-max_norm, max_norm] or [0, max_norm] - "clip_norm": true, // clip normalized values into the range. - "stats_path": null // DO NOT USE WITH MULTI_SPEAKER MODEL. scaler stats file computed by 'compute_statistics.py'. If it is defined, mean-std based notmalization is used and other normalization params are ignored - }, - - // VOCABULARY PARAMETERS - // if custom character set is not defined, - // default set in symbols.py is used - // "characters":{ - // "pad": "_", - // "eos": "&", - // "bos": "*", - // "characters": "ABCDEFGHIJKLMNOPQRSTUVWXYZÇÃÀÁÂÊÉÍÓÔÕÚÛabcdefghijklmnopqrstuvwxyzçãàáâêéíóôõúû!(),-.:;? ", - // "punctuations":"!'(),-.:;? ", - // "phonemes":"iyɨʉɯuɪʏʊeøɘəɵɤoɛœɜɞʌɔæɐaɶɑɒᵻʘɓǀɗǃʄǂɠǁʛpbtdʈɖcɟkɡqɢʔɴŋɲɳnɱmʙrʀⱱɾɽɸβfvθðszʃʒʂʐçʝxɣχʁħʕhɦɬɮʋɹɻjɰlɭʎʟˈˌːˑʍwɥʜʢʡɕʑɺɧɚ˞ɫ'̃' " - // }, - - "add_blank": false, // if true add a new token after each token of the sentence. This increases the size of the input sequence, but has considerably improved the prosody of the GlowTTS model. - - // DISTRIBUTED TRAINING - "distributed":{ - "backend": "nccl", - "url": "tcp:\/\/localhost:54321" - }, - - "reinit_layers": [], // give a list of layer names to restore from the given checkpoint. If not defined, it reloads all heuristically matching layers. - - // MODEL PARAMETERS - "positional_encoding": true, - "hidden_channels": 128, - "encoder_type": "residual_conv_bn", - "encoder_type": "residual_conv_bn", - "encoder_params":{ - "kernel_size": 4, - "dilations": [1, 2, 4, 1, 2, 4, 1, 2, 4, 1, 2, 4, 1], - "num_conv_blocks": 2, - "num_res_blocks": 13 - }, - "decoder_type": "residual_conv_bn", - "decoder_params":{ - "kernel_size": 4, - "dilations": [1, 2, 4, 8, 1, 2, 4, 8, 1, 2, 4, 8, 1, 2, 4, 8, 1], - "num_conv_blocks": 2, - "num_res_blocks": 17 - }, - - - // TRAINING - "batch_size":64, // Batch size for training. Lower values than 32 might cause hard to learn attention. It is overwritten by 'gradual_training'. - "eval_batch_size":32, - "r": 1, // Number of decoder frames to predict per iteration. Set the initial values if gradual training is enabled. - "loss_masking": true, // enable / disable loss masking against the sequence padding. - - // LOSS PARAMETERS - "ssim_alpha": 1, - "l1_alpha": 1, - "huber_alpha": 1, - - // VALIDATION - "run_eval": true, - "test_delay_epochs": -1, //Until attention is aligned, testing only wastes computation time. - "test_sentences_file": null, // set a file to load sentences to be used for testing. If it is null then we use default english sentences. - - // OPTIMIZER - "noam_schedule": true, // use noam warmup and lr schedule. - "grad_clip": 1.0, // upper limit for gradients for clipping. - "epochs": 1, // total number of epochs to train. - "lr": 0.002, // Initial learning rate. If Noam decay is active, maximum learning rate. - "warmup_steps": 4000, // Noam decay steps to increase the learning rate from 0 to "lr" - - // TENSORBOARD and LOGGING - "print_step": 1, // Number of steps to log training on console. - "tb_plot_step": 100, // Number of steps to plot TB training figures. - "print_eval": false, // If True, it prints intermediate loss values in evalulation. - "save_step": 5000, // Number of training steps expected to save traninpg stats and checkpoints. - "checkpoint": true, // If true, it saves checkpoints per "save_step" - "keep_all_best": true, // If true, keeps all best_models after keep_after steps - "keep_after": 10000, // Global step after which to keep best models if keep_all_best is true - "tb_model_param_stats": false, // true, plots param stats per layer on tensorboard. Might be memory consuming, but good for debugging.:set n - "mixed_precision": false, - - // DATA LOADING - "text_cleaner": "english_cleaners", - "enable_eos_bos_chars": false, // enable/disable beginning of sentence and end of sentence chars. - "num_loader_workers": 0, // number of training data loader processes. Don't set it too big. 4-8 are good values. - "num_eval_loader_workers": 0, // number of evaluation data loader processes. - "batch_group_size": 0, //Number of batches to shuffle after bucketing. - "min_seq_len": 2, // DATASET-RELATED: minimum text length to use in training - "max_seq_len": 300, // DATASET-RELATED: maximum text length - "compute_f0": false, // compute f0 values in data-loader - "compute_input_seq_cache": false, // if true, text sequences are computed before starting training. If phonemes are enabled, they are also computed at this stage. - - // PATHS - "output_path": "tests/train_outputs/", - - // PHONEMES - "phoneme_cache_path": "tests/train_outputs/phoneme_cache/", // phoneme computation is slow, therefore, it caches results in the given folder. - "use_phonemes": false, // use phonemes instead of raw characters. It is suggested for better pronoun[ciation. - "phoneme_language": "en-us", // depending on your target language, pick one from https://github.com/bootphon/phonemizer#languages - - // MULTI-SPEAKER and GST - "use_speaker_embedding": false, // use speaker embedding to enable multi-speaker learning. - "use_d_vector_file": false, // if true, forces the model to use external embedding per sample instead of nn.embeddings, that is, it supports external embeddings such as those used at: https://arxiv.org/abs /1806.04558 - "d_vector_file": "/home/erogol/Data/libritts/speakers.json", // if not null and use_d_vector_file is true, it is used to load a specific embedding file and thus uses these embeddings instead of nn.embeddings, that is, it supports external embeddings such as those used at: https://arxiv.org/abs /1806.04558 - - - // DATASETS - "datasets": // List of datasets. They all merged and they get different speaker_ids. - [ - { - "formatter": "ljspeech", - "path": "tests/data/ljspeech/", - "meta_file_train": "metadata.csv", - "meta_file_val": "metadata.csv", - "meta_file_attn_mask": "tests/data/ljspeech/metadata_attn_mask.txt" - } - ] -} \ No newline at end of file diff --git a/TTS/tests/inputs/test_tacotron2_config.json b/TTS/tests/inputs/test_tacotron2_config.json deleted file mode 100644 index 30e5fa7a3754bc4ec5e11e46d18254134ea465bb..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/test_tacotron2_config.json +++ /dev/null @@ -1,176 +0,0 @@ -{ - "model": "Tacotron2", - "run_name": "test_sample_dataset_run", - "run_description": "sample dataset test run", - - // AUDIO PARAMETERS - "audio":{ - // stft parameters - "fft_size": 1024, // number of stft frequency levels. Size of the linear spectogram frame. - "win_length": 1024, // stft window length in ms. - "hop_length": 256, // stft window hop-lengh in ms. - "frame_length_ms": null, // stft window length in ms.If null, 'win_length' is used. - "frame_shift_ms": null, // stft window hop-lengh in ms. If null, 'hop_length' is used. - - // Audio processing parameters - "sample_rate": 22050, // DATASET-RELATED: wav sample-rate. - "preemphasis": 0.0, // pre-emphasis to reduce spec noise and make it more structured. If 0.0, no -pre-emphasis. - "ref_level_db": 20, // reference level db, theoretically 20db is the sound of air. - - // Silence trimming - "do_trim_silence": true,// enable trimming of slience of audio as you load it. LJspeech (true), TWEB (false), Nancy (true) - "trim_db": 60, // threshold for timming silence. Set this according to your dataset. - - // Griffin-Lim - "power": 1.5, // value to sharpen wav signals after GL algorithm. - "griffin_lim_iters": 60,// #griffin-lim iterations. 30-60 is a good range. Larger the value, slower the generation. - - // MelSpectrogram parameters - "num_mels": 80, // size of the mel spec frame. - "mel_fmin": 0.0, // minimum freq level for mel-spec. ~50 for male and ~95 for female voices. Tune for dataset!! - "mel_fmax": 8000.0, // maximum freq level for mel-spec. Tune for dataset!! - "spec_gain": 20.0, - - // Normalization parameters - "signal_norm": true, // normalize spec values. Mean-Var normalization if 'stats_path' is defined otherwise range normalization defined by the other params. - "min_level_db": -100, // lower bound for normalization - "symmetric_norm": true, // move normalization to range [-1, 1] - "max_norm": 4.0, // scale normalization to range [-max_norm, max_norm] or [0, max_norm] - "clip_norm": true, // clip normalized values into the range. - "stats_path": null // DO NOT USE WITH MULTI_SPEAKER MODEL. scaler stats file computed by 'compute_statistics.py'. If it is defined, mean-std based notmalization is used and other normalization params are ignored - }, - - // VOCABULARY PARAMETERS - // if custom character set is not defined, - // default set in symbols.py is used - // "characters":{ - // "pad": "_", - // "eos": "~", - // "bos": "^", - // "characters": "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!'(),-.:;? ", - // "punctuations":"!'(),-.:;? ", - // "phonemes":"iyɨʉɯuɪʏʊeøɘəɵɤoɛœɜɞʌɔæɐaɶɑɒᵻʘɓǀɗǃʄǂɠǁʛpbtdʈɖcɟkɡqɢʔɴŋɲɳnɱmʙrʀⱱɾɽɸβfvθðszʃʒʂʐçʝxɣχʁħʕhɦɬɮʋɹɻjɰlɭʎʟˈˌːˑʍwɥʜʢʡɕʑɺɧɚ˞ɫ" - // }, - - // DISTRIBUTED TRAINING - "distributed":{ - "backend": "nccl", - "url": "tcp:\/\/localhost:54321" - }, - - "reinit_layers": [], // give a list of layer names to restore from the given checkpoint. If not defined, it reloads all heuristically matching layers. - - // TRAINING - "batch_size": 8, // Batch size for training. Lower values than 32 might cause hard to learn attention. It is overwritten by 'gradual_training'. - "eval_batch_size": 8, - "r": 7, // Number of decoder frames to predict per iteration. Set the initial values if gradual training is enabled. - "gradual_training": [[0, 7, 4], [1, 5, 2]], //set gradual training steps [first_step, r, batch_size]. If it is null, gradual training is disabled. For Tacotron, you might need to reduce the 'batch_size' as you proceeed. - "loss_masking": true, // enable / disable loss masking against the sequence padding. - "ga_alpha": 10.0, // weight for guided attention loss. If > 0, guided attention is enabled. - "mixed_precision": false, - - // VALIDATION - "run_eval": true, - "test_delay_epochs": 0, //Until attention is aligned, testing only wastes computation time. - "test_sentences_file": null, // set a file to load sentences to be used for testing. If it is null then we use default english sentences. - - // LOSS SETTINGS - "loss_masking": true, // enable / disable loss masking against the sequence padding. - "decoder_loss_alpha": 0.5, // original decoder loss weight. If > 0, it is enabled - "postnet_loss_alpha": 0.25, // original postnet loss weight. If > 0, it is enabled - "postnet_diff_spec_alpha": 0.25, // differential spectral loss weight. If > 0, it is enabled - "decoder_diff_spec_alpha": 0.25, // differential spectral loss weight. If > 0, it is enabled - "decoder_ssim_alpha": 0.5, // decoder ssim loss weight. If > 0, it is enabled - "postnet_ssim_alpha": 0.25, // postnet ssim loss weight. If > 0, it is enabled - "ga_alpha": 5.0, // weight for guided attention loss. If > 0, guided attention is enabled. - "stopnet_pos_weight": 15.0, // pos class weight for stopnet loss since there are way more negative samples than positive samples. - - // OPTIMIZER - "noam_schedule": false, // use noam warmup and lr schedule. - "grad_clip": 1.0, // upper limit for gradients for clipping. - "epochs": 1, // total number of epochs to train. - "lr": 0.0001, // Initial learning rate. If Noam decay is active, maximum learning rate. - "wd": 0.000001, // Weight decay weight. - "warmup_steps": 4000, // Noam decay steps to increase the learning rate from 0 to "lr" - "seq_len_norm": false, // Normalize eash sample loss with its length to alleviate imbalanced datasets. Use it if your dataset is small or has skewed distribution of sequence lengths. - - // TACOTRON PRENET - "memory_size": -1, // ONLY TACOTRON - size of the memory queue used fro storing last decoder predictions for auto-regression. If < 0, memory queue is disabled and decoder only uses the last prediction frame. - "prenet_type": "bn", // "original" or "bn". - "prenet_dropout": false, // enable/disable dropout at prenet. - - // TACOTRON ATTENTION - "attention_type": "original", // 'original' , 'graves', 'dynamic_convolution' - "attention_heads": 4, // number of attention heads (only for 'graves') - "attention_norm": "sigmoid", // softmax or sigmoid. - "windowing": false, // Enables attention windowing. Used only in eval mode. - "use_forward_attn": false, // if it uses forward attention. In general, it aligns faster. - "forward_attn_mask": false, // Additional masking forcing monotonicity only in eval mode. - "transition_agent": false, // enable/disable transition agent of forward attention. - "location_attn": true, // enable_disable location sensitive attention. It is enabled for TACOTRON by default. - "bidirectional_decoder": false, // use https://arxiv.org/abs/1907.09006. Use it, if attention does not work well with your dataset. - "double_decoder_consistency": true, // use DDC explained here https://erogol.com/solving-attention-problems-of-tts-models-with-double-decoder-consistency-draft/ - "ddc_r": 7, // reduction rate for coarse decoder. - - // STOPNET - "stopnet": true, // Train stopnet predicting the end of synthesis. - "separate_stopnet": true, // Train stopnet seperately if 'stopnet==true'. It prevents stopnet loss to influence the rest of the model. It causes a better model, but it trains SLOWER. - - // TENSORBOARD and LOGGING - "print_step": 1, // Number of steps to log training on console. - "tb_plot_step": 100, // Number of steps to plot TB training figures. - "print_eval": false, // If True, it prints intermediate loss values in evalulation. - "save_step": 10000, // Number of training steps expected to save traninpg stats and checkpoints. - "checkpoint": true, // If true, it saves checkpoints per "save_step" - "keep_all_best": true, // If true, keeps all best_models after keep_after steps - "keep_after": 10000, // Global step after which to keep best models if keep_all_best is true - "tb_model_param_stats": false, // true, plots param stats per layer on tensorboard. Might be memory consuming, but good for debugging. - - // DATA LOADING - "text_cleaner": "phoneme_cleaners", - "enable_eos_bos_chars": false, // enable/disable beginning of sentence and end of sentence chars. - "num_loader_workers": 0, // number of training data loader processes. Don't set it too big. 4-8 are good values. - "num_eval_loader_workers": 0, // number of evaluation data loader processes. - "batch_group_size": 0, //Number of batches to shuffle after bucketing. - "min_seq_len": 6, // DATASET-RELATED: minimum text length to use in training - "max_seq_len": 153, // DATASET-RELATED: maximum text length - "compute_input_seq_cache": true, - - // PATHS - "output_path": "tests/train_outputs/", - - // PHONEMES - "phoneme_cache_path": "tests/train_outputs/phoneme_cache/", // phoneme computation is slow, therefore, it caches results in the given folder. - "use_phonemes": false, // use phonemes instead of raw characters. It is suggested for better pronounciation. - "phoneme_language": "en-us", // depending on your target language, pick one from https://github.com/bootphon/phonemizer#languages - - // MULTI-SPEAKER and GST - "use_d_vector_file": false, - "d_vector_file": null, - "use_speaker_embedding": false, // use speaker embedding to enable multi-speaker learning. - "use_gst": true, // use global style tokens - "gst": { // gst parameter if gst is enabled - "gst_style_input": null, // Condition the style input either on a - // -> wave file [path to wave] or - // -> dictionary using the style tokens {'token1': 'value', 'token2': 'value'} example {"0": 0.15, "1": 0.15, "5": -0.15} - // with the dictionary being len(dict) == len(gst_num_style_tokens). - "gst_use_speaker_embedding": true, // if true pass speaker embedding in attention input GST. - "gst_embedding_dim": 512, - "gst_num_heads": 4, - "gst_num_style_tokens": 10 - }, - - // DATASETS - "train_portion": 0.1, // dataset portion used for training. It is mainly for internal experiments. - "eval_portion": 0.1, // dataset portion used for training. It is mainly for internal experiments. - "datasets": // List of datasets. They all merged and they get different speaker_ids. - [ - { - "formatter": "ljspeech", - "path": "tests/data/ljspeech/", - "meta_file_train": "metadata.csv", - "meta_file_val": "metadata.csv" - } - ] - -} diff --git a/TTS/tests/inputs/test_tacotron_bd_config.json b/TTS/tests/inputs/test_tacotron_bd_config.json deleted file mode 100644 index 6239d40b391dba096c0dbf4e428f360adaf4ef4b..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/test_tacotron_bd_config.json +++ /dev/null @@ -1,176 +0,0 @@ -{ - "model": "Tacotron", - "run_name": "test_sample_dataset_run", - "run_description": "sample dataset test run", - - // AUDIO PARAMETERS - "audio":{ - // stft parameters - "fft_size": 1024, // number of stft frequency levels. Size of the linear spectogram frame. - "win_length": 1024, // stft window length in ms. - "hop_length": 256, // stft window hop-lengh in ms. - "frame_length_ms": null, // stft window length in ms.If null, 'win_length' is used. - "frame_shift_ms": null, // stft window hop-lengh in ms. If null, 'hop_length' is used. - - // Audio processing parameters - "sample_rate": 22050, // DATASET-RELATED: wav sample-rate. - "preemphasis": 0.0, // pre-emphasis to reduce spec noise and make it more structured. If 0.0, no -pre-emphasis. - "ref_level_db": 20, // reference level db, theoretically 20db is the sound of air. - - // Silence trimming - "do_trim_silence": true,// enable trimming of slience of audio as you load it. LJspeech (true), TWEB (false), Nancy (true) - "trim_db": 60, // threshold for timming silence. Set this according to your dataset. - - // Griffin-Lim - "power": 1.5, // value to sharpen wav signals after GL algorithm. - "griffin_lim_iters": 60,// #griffin-lim iterations. 30-60 is a good range. Larger the value, slower the generation. - - // MelSpectrogram parameters - "num_mels": 80, // size of the mel spec frame. - "mel_fmin": 0.0, // minimum freq level for mel-spec. ~50 for male and ~95 for female voices. Tune for dataset!! - "mel_fmax": 8000.0, // maximum freq level for mel-spec. Tune for dataset!! - "spec_gain": 20.0, - - // Normalization parameters - "signal_norm": true, // normalize spec values. Mean-Var normalization if 'stats_path' is defined otherwise range normalization defined by the other params. - "min_level_db": -100, // lower bound for normalization - "symmetric_norm": true, // move normalization to range [-1, 1] - "max_norm": 4.0, // scale normalization to range [-max_norm, max_norm] or [0, max_norm] - "clip_norm": true, // clip normalized values into the range. - "stats_path": null // DO NOT USE WITH MULTI_SPEAKER MODEL. scaler stats file computed by 'compute_statistics.py'. If it is defined, mean-std based notmalization is used and other normalization params are ignored - }, - - // VOCABULARY PARAMETERS - // if custom character set is not defined, - // default set in symbols.py is used - // "characters":{ - // "pad": "_", - // "eos": "~", - // "bos": "^", - // "characters": "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!'(),-.:;? ", - // "punctuations":"!'(),-.:;? ", - // "phonemes":"iyɨʉɯuɪʏʊeøɘəɵɤoɛœɜɞʌɔæɐaɶɑɒᵻʘɓǀɗǃʄǂɠǁʛpbtdʈɖcɟkɡqɢʔɴŋɲɳnɱmʙrʀⱱɾɽɸβfvθðszʃʒʂʐçʝxɣχʁħʕhɦɬɮʋɹɻjɰlɭʎʟˈˌːˑʍwɥʜʢʡɕʑɺɧɚ˞ɫ" - // }, - - // DISTRIBUTED TRAINING - "distributed":{ - "backend": "nccl", - "url": "tcp:\/\/localhost:54321" - }, - - "reinit_layers": [], // give a list of layer names to restore from the given checkpoint. If not defined, it reloads all heuristically matching layers. - - // TRAINING - "batch_size": 1, // Batch size for training. Lower values than 32 might cause hard to learn attention. It is overwritten by 'gradual_training'. - "eval_batch_size":1, - "r": 7, // Number of decoder frames to predict per iteration. Set the initial values if gradual training is enabled. - "gradual_training": [[0, 7, 4]], //set gradual training steps [first_step, r, batch_size]. If it is null, gradual training is disabled. For Tacotron, you might need to reduce the 'batch_size' as you proceeed. - "loss_masking": true, // enable / disable loss masking against the sequence padding. - "ga_alpha": 10.0, // weight for guided attention loss. If > 0, guided attention is enabled. - "mixed_precision": false, - - // VALIDATION - "run_eval": true, - "test_delay_epochs": 0, //Until attention is aligned, testing only wastes computation time. - "test_sentences_file": null, // set a file to load sentences to be used for testing. If it is null then we use default english sentences. - - // LOSS SETTINGS - "loss_masking": true, // enable / disable loss masking against the sequence padding. - "decoder_loss_alpha": 0.5, // original decoder loss weight. If > 0, it is enabled - "postnet_loss_alpha": 0.25, // original postnet loss weight. If > 0, it is enabled - "postnet_diff_spec_alpha": 0.25, // differential spectral loss weight. If > 0, it is enabled - "decoder_diff_spec_alpha": 0.25, // differential spectral loss weight. If > 0, it is enabled - "decoder_ssim_alpha": 0.5, // decoder ssim loss weight. If > 0, it is enabled - "postnet_ssim_alpha": 0.25, // postnet ssim loss weight. If > 0, it is enabled - "ga_alpha": 5.0, // weight for guided attention loss. If > 0, guided attention is enabled. - "stopnet_pos_weight": 15.0, // pos class weight for stopnet loss since there are way more negative samples than positive samples. - - // OPTIMIZER - "noam_schedule": false, // use noam warmup and lr schedule. - "grad_clip": 1.0, // upper limit for gradients for clipping. - "epochs": 1, // total number of epochs to train. - "lr": 0.0001, // Initial learning rate. If Noam decay is active, maximum learning rate. - "wd": 0.000001, // Weight decay weight. - "warmup_steps": 4000, // Noam decay steps to increase the learning rate from 0 to "lr" - "seq_len_norm": false, // Normalize eash sample loss with its length to alleviate imbalanced datasets. Use it if your dataset is small or has skewed distribution of sequence lengths. - - // TACOTRON PRENET - "memory_size": -1, // ONLY TACOTRON - size of the memory queue used fro storing last decoder predictions for auto-regression. If < 0, memory queue is disabled and decoder only uses the last prediction frame. - "prenet_type": "bn", // "original" or "bn". - "prenet_dropout": false, // enable/disable dropout at prenet. - - // TACOTRON ATTENTION - "attention_type": "original", // 'original' , 'graves', 'dynamic_convolution' - "attention_heads": 4, // number of attention heads (only for 'graves') - "attention_norm": "sigmoid", // softmax or sigmoid. - "windowing": false, // Enables attention windowing. Used only in eval mode. - "use_forward_attn": false, // if it uses forward attention. In general, it aligns faster. - "forward_attn_mask": false, // Additional masking forcing monotonicity only in eval mode. - "transition_agent": false, // enable/disable transition agent of forward attention. - "location_attn": true, // enable_disable location sensitive attention. It is enabled for TACOTRON by default. - "bidirectional_decoder": true, // use https://arxiv.org/abs/1907.09006. Use it, if attention does not work well with your dataset. - "double_decoder_consistency": false, // use DDC explained here https://erogol.com/solving-attention-problems-of-tts-models-with-double-decoder-consistency-draft/ - "ddc_r": 7, // reduction rate for coarse decoder. - - // STOPNET - "stopnet": true, // Train stopnet predicting the end of synthesis. - "separate_stopnet": true, // Train stopnet seperately if 'stopnet==true'. It prevents stopnet loss to influence the rest of the model. It causes a better model, but it trains SLOWER. - - // TENSORBOARD and LOGGING - "print_step": 1, // Number of steps to log training on console. - "tb_plot_step": 100, // Number of steps to plot TB training figures. - "print_eval": false, // If True, it prints intermediate loss values in evalulation. - "save_step": 10000, // Number of training steps expected to save traninpg stats and checkpoints. - "checkpoint": true, // If true, it saves checkpoints per "save_step" - "keep_all_best": true, // If true, keeps all best_models after keep_after steps - "keep_after": 10000, // Global step after which to keep best models if keep_all_best is true - "tb_model_param_stats": false, // true, plots param stats per layer on tensorboard. Might be memory consuming, but good for debugging. - - // DATA LOADING - "text_cleaner": "phoneme_cleaners", - "enable_eos_bos_chars": false, // enable/disable beginning of sentence and end of sentence chars. - "num_loader_workers": 0, // number of training data loader processes. Don't set it too big. 4-8 are good values. - "num_eval_loader_workers": 0, // number of evaluation data loader processes. - "batch_group_size": 0, //Number of batches to shuffle after bucketing. - "min_seq_len": 6, // DATASET-RELATED: minimum text length to use in training - "max_seq_len": 153, // DATASET-RELATED: maximum text length - "compute_input_seq_cache": true, - - // PATHS - "output_path": "tests/train_outputs/", - - // PHONEMES - "phoneme_cache_path": "tests/train_outputs/phoneme_cache/", // phoneme computation is slow, therefore, it caches results in the given folder. - "use_phonemes": false, // use phonemes instead of raw characters. It is suggested for better pronounciation. - "phoneme_language": "en-us", // depending on your target language, pick one from https://github.com/bootphon/phonemizer#languages - - // MULTI-SPEAKER and GST - "use_d_vector_file": false, - "d_vector_file": null, - "use_speaker_embedding": false, // use speaker embedding to enable multi-speaker learning. - "use_gst": true, // use global style tokens - "gst": { // gst parameter if gst is enabled - "gst_style_input": null, // Condition the style input either on a - // -> wave file [path to wave] or - // -> dictionary using the style tokens {'token1': 'value', 'token2': 'value'} example {"0": 0.15, "1": 0.15, "5": -0.15} - // with the dictionary being len(dict) == len(gst_style_tokens). - "gst_use_speaker_embedding": true, // if true pass speaker embedding in attention input GST. - "gst_embedding_dim": 512, - "gst_num_heads": 4, - "gst_style_tokens": 10 - }, - - // DATASETS - "train_portion": 0.1, // dataset portion used for training. It is mainly for internal experiments. - "eval_portion": 0.1, // dataset portion used for training. It is mainly for internal experiments. - "datasets": // List of datasets. They all merged and they get different speaker_ids. - [ - { - "formatter": "ljspeech", - "path": "tests/data/ljspeech/", - "meta_file_train": "metadata.csv", - "meta_file_val": "metadata.csv" - } - ] - -} diff --git a/TTS/tests/inputs/test_tacotron_config.json b/TTS/tests/inputs/test_tacotron_config.json deleted file mode 100644 index 70d66cb0ece567bdd688f61390dbc7826cd69e3c..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/test_tacotron_config.json +++ /dev/null @@ -1,176 +0,0 @@ -{ - "model": "Tacotron", - "run_name": "test_sample_dataset_run", - "run_description": "sample dataset test run", - - // AUDIO PARAMETERS - "audio":{ - // stft parameters - "fft_size": 1024, // number of stft frequency levels. Size of the linear spectogram frame. - "win_length": 1024, // stft window length in ms. - "hop_length": 256, // stft window hop-lengh in ms. - "frame_length_ms": null, // stft window length in ms.If null, 'win_length' is used. - "frame_shift_ms": null, // stft window hop-lengh in ms. If null, 'hop_length' is used. - - // Audio processing parameters - "sample_rate": 22050, // DATASET-RELATED: wav sample-rate. - "preemphasis": 0.0, // pre-emphasis to reduce spec noise and make it more structured. If 0.0, no -pre-emphasis. - "ref_level_db": 20, // reference level db, theoretically 20db is the sound of air. - - // Silence trimming - "do_trim_silence": true,// enable trimming of slience of audio as you load it. LJspeech (true), TWEB (false), Nancy (true) - "trim_db": 60, // threshold for timming silence. Set this according to your dataset. - - // Griffin-Lim - "power": 1.5, // value to sharpen wav signals after GL algorithm. - "griffin_lim_iters": 60,// #griffin-lim iterations. 30-60 is a good range. Larger the value, slower the generation. - - // MelSpectrogram parameters - "num_mels": 80, // size of the mel spec frame. - "mel_fmin": 0.0, // minimum freq level for mel-spec. ~50 for male and ~95 for female voices. Tune for dataset!! - "mel_fmax": 8000.0, // maximum freq level for mel-spec. Tune for dataset!! - "spec_gain": 20.0, - - // Normalization parameters - "signal_norm": true, // normalize spec values. Mean-Var normalization if 'stats_path' is defined otherwise range normalization defined by the other params. - "min_level_db": -100, // lower bound for normalization - "symmetric_norm": true, // move normalization to range [-1, 1] - "max_norm": 4.0, // scale normalization to range [-max_norm, max_norm] or [0, max_norm] - "clip_norm": true, // clip normalized values into the range. - "stats_path": null // DO NOT USE WITH MULTI_SPEAKER MODEL. scaler stats file computed by 'compute_statistics.py'. If it is defined, mean-std based notmalization is used and other normalization params are ignored - }, - - // VOCABULARY PARAMETERS - // if custom character set is not defined, - // default set in symbols.py is used - // "characters":{ - // "pad": "_", - // "eos": "~", - // "bos": "^", - // "characters": "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!'(),-.:;? ", - // "punctuations":"!'(),-.:;? ", - // "phonemes":"iyɨʉɯuɪʏʊeøɘəɵɤoɛœɜɞʌɔæɐaɶɑɒᵻʘɓǀɗǃʄǂɠǁʛpbtdʈɖcɟkɡqɢʔɴŋɲɳnɱmʙrʀⱱɾɽɸβfvθðszʃʒʂʐçʝxɣχʁħʕhɦɬɮʋɹɻjɰlɭʎʟˈˌːˑʍwɥʜʢʡɕʑɺɧɚ˞ɫ" - // }, - - // DISTRIBUTED TRAINING - "distributed":{ - "backend": "nccl", - "url": "tcp:\/\/localhost:54321" - }, - - "reinit_layers": [], // give a list of layer names to restore from the given checkpoint. If not defined, it reloads all heuristically matching layers. - - // TRAINING - "batch_size": 8, // Batch size for training. Lower values than 32 might cause hard to learn attention. It is overwritten by 'gradual_training'. - "eval_batch_size": 8, - "r": 7, // Number of decoder frames to predict per iteration. Set the initial values if gradual training is enabled. - "gradual_training": [[0, 7, 4], [1, 5, 2]], //set gradual training steps [first_step, r, batch_size]. If it is null, gradual training is disabled. For Tacotron, you might need to reduce the 'batch_size' as you proceeed. - "loss_masking": true, // enable / disable loss masking against the sequence padding. - "ga_alpha": 10.0, // weight for guided attention loss. If > 0, guided attention is enabled. - "mixed_precision": false, - - // VALIDATION - "run_eval": true, - "test_delay_epochs": 0, //Until attention is aligned, testing only wastes computation time. - "test_sentences_file": null, // set a file to load sentences to be used for testing. If it is null then we use default english sentences. - - // LOSS SETTINGS - "loss_masking": true, // enable / disable loss masking against the sequence padding. - "decoder_loss_alpha": 0.5, // original decoder loss weight. If > 0, it is enabled - "postnet_loss_alpha": 0.25, // original postnet loss weight. If > 0, it is enabled - "postnet_diff_spec_alpha": 0.25, // differential spectral loss weight. If > 0, it is enabled - "decoder_diff_spec_alpha": 0.25, // differential spectral loss weight. If > 0, it is enabled - "decoder_ssim_alpha": 0.5, // decoder ssim loss weight. If > 0, it is enabled - "postnet_ssim_alpha": 0.25, // postnet ssim loss weight. If > 0, it is enabled - "ga_alpha": 5.0, // weight for guided attention loss. If > 0, guided attention is enabled. - "stopnet_pos_weight": 15.0, // pos class weight for stopnet loss since there are way more negative samples than positive samples. - - // OPTIMIZER - "noam_schedule": false, // use noam warmup and lr schedule. - "grad_clip": 1.0, // upper limit for gradients for clipping. - "epochs": 1, // total number of epochs to train. - "lr": 0.0001, // Initial learning rate. If Noam decay is active, maximum learning rate. - "wd": 0.000001, // Weight decay weight. - "warmup_steps": 4000, // Noam decay steps to increase the learning rate from 0 to "lr" - "seq_len_norm": false, // Normalize eash sample loss with its length to alleviate imbalanced datasets. Use it if your dataset is small or has skewed distribution of sequence lengths. - - // TACOTRON PRENET - "memory_size": -1, // ONLY TACOTRON - size of the memory queue used fro storing last decoder predictions for auto-regression. If < 0, memory queue is disabled and decoder only uses the last prediction frame. - "prenet_type": "bn", // "original" or "bn". - "prenet_dropout": false, // enable/disable dropout at prenet. - - // TACOTRON ATTENTION - "attention_type": "original", // 'original' , 'graves', 'dynamic_convolution' - "attention_heads": 4, // number of attention heads (only for 'graves') - "attention_norm": "sigmoid", // softmax or sigmoid. - "windowing": false, // Enables attention windowing. Used only in eval mode. - "use_forward_attn": false, // if it uses forward attention. In general, it aligns faster. - "forward_attn_mask": false, // Additional masking forcing monotonicity only in eval mode. - "transition_agent": false, // enable/disable transition agent of forward attention. - "location_attn": true, // enable_disable location sensitive attention. It is enabled for TACOTRON by default. - "bidirectional_decoder": false, // use https://arxiv.org/abs/1907.09006. Use it, if attention does not work well with your dataset. - "double_decoder_consistency": true, // use DDC explained here https://erogol.com/solving-attention-problems-of-tts-models-with-double-decoder-consistency-draft/ - "ddc_r": 7, // reduction rate for coarse decoder. - - // STOPNET - "stopnet": true, // Train stopnet predicting the end of synthesis. - "separate_stopnet": true, // Train stopnet seperately if 'stopnet==true'. It prevents stopnet loss to influence the rest of the model. It causes a better model, but it trains SLOWER. - - // TENSORBOARD and LOGGING - "print_step": 1, // Number of steps to log training on console. - "tb_plot_step": 100, // Number of steps to plot TB training figures. - "print_eval": false, // If True, it prints intermediate loss values in evalulation. - "save_step": 10000, // Number of training steps expected to save traninpg stats and checkpoints. - "checkpoint": true, // If true, it saves checkpoints per "save_step" - "keep_all_best": true, // If true, keeps all best_models after keep_after steps - "keep_after": 10000, // Global step after which to keep best models if keep_all_best is true - "tb_model_param_stats": false, // true, plots param stats per layer on tensorboard. Might be memory consuming, but good for debugging. - - // DATA LOADING - "text_cleaner": "phoneme_cleaners", - "enable_eos_bos_chars": false, // enable/disable beginning of sentence and end of sentence chars. - "num_loader_workers": 0, // number of training data loader processes. Don't set it too big. 4-8 are good values. - "num_eval_loader_workers": 0, // number of evaluation data loader processes. - "batch_group_size": 0, //Number of batches to shuffle after bucketing. - "min_seq_len": 6, // DATASET-RELATED: minimum text length to use in training - "max_seq_len": 153, // DATASET-RELATED: maximum text length - "compute_input_seq_cache": true, - - // PATHS - "output_path": "tests/train_outputs/", - - // PHONEMES - "phoneme_cache_path": "tests/train_outputs/phoneme_cache/", // phoneme computation is slow, therefore, it caches results in the given folder. - "use_phonemes": false, // use phonemes instead of raw characters. It is suggested for better pronounciation. - "phoneme_language": "en-us", // depending on your target language, pick one from https://github.com/bootphon/phonemizer#languages - - // MULTI-SPEAKER and GST - "use_d_vector_file": false, - "d_vector_file": null, - "use_speaker_embedding": false, // use speaker embedding to enable multi-speaker learning. - "use_gst": true, // use global style tokens - "gst": { // gst parameter if gst is enabled - "gst_style_input": null, // Condition the style input either on a - // -> wave file [path to wave] or - // -> dictionary using the style tokens {'token1': 'value', 'token2': 'value'} example {"0": 0.15, "1": 0.15, "5": -0.15} - // with the dictionary being len(dict) == len(gst_style_tokens). - "gst_use_speaker_embedding": true, // if true pass speaker embedding in attention input GST. - "gst_embedding_dim": 512, - "gst_num_heads": 4, - "gst_style_tokens": 10 - }, - - // DATASETS - "train_portion": 0.1, // dataset portion used for training. It is mainly for internal experiments. - "eval_portion": 0.1, // dataset portion used for training. It is mainly for internal experiments. - "datasets": // List of datasets. They all merged and they get different speaker_ids. - [ - { - "formatter": "ljspeech", - "path": "tests/data/ljspeech/", - "meta_file_train": "metadata.csv", - "meta_file_val": "metadata.csv" - } - ] - -} diff --git a/TTS/tests/inputs/test_vocoder_audio_config.json b/TTS/tests/inputs/test_vocoder_audio_config.json deleted file mode 100644 index 08acc48cd34296c4549931ce440fda8d1882ba66..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/test_vocoder_audio_config.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "audio":{ - "num_mels": 80, // size of the mel spec frame. - "num_freq": 513, // number of stft frequency levels. Size of the linear spectogram frame. - "sample_rate": 22050, // wav sample-rate. If different than the original data, it is resampled. - "frame_length_ms": null, // stft window length in ms. - "frame_shift_ms": null, // stft window hop-lengh in ms. - "hop_length": 256, - "win_length": 1024, - "preemphasis": 0.97, // pre-emphasis to reduce spec noise and make it more structured. If 0.0, no -pre-emphasis. - "min_level_db": -100, // normalization range - "ref_level_db": 20, // reference level db, theoretically 20db is the sound of air. - "power": 1.5, // value to sharpen wav signals after GL algorithm. - "griffin_lim_iters": 30,// #griffin-lim iterations. 30-60 is a good range. Larger the value, slower the generation. - "signal_norm": true, // normalize the spec values in range [0, 1] - "symmetric_norm": true, // move normalization to range [-1, 1] - "clip_norm": true, // clip normalized values into the range. - "max_norm": 4, // scale normalization to range [-max_norm, max_norm] or [0, max_norm] - "mel_fmin": 0, // minimum freq level for mel-spec. ~50 for male and ~95 for female voices. Tune for dataset!! - "mel_fmax": 8000, // maximum freq level for mel-spec. Tune for dataset!! - "do_trim_silence": false - } -} - diff --git a/TTS/tests/inputs/test_vocoder_multiband_melgan_config.json b/TTS/tests/inputs/test_vocoder_multiband_melgan_config.json deleted file mode 100644 index 82afc977271c20d46b3a4d5e67cca52a21b98d7e..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/test_vocoder_multiband_melgan_config.json +++ /dev/null @@ -1,166 +0,0 @@ -{ - "run_name": "multiband-melgan", - "run_description": "multiband melgan mean-var scaling", - - // AUDIO PARAMETERS - "audio":{ - "fft_size": 1024, // number of stft frequency levels. Size of the linear spectogram frame. - "win_length": 1024, // stft window length in ms. - "hop_length": 256, // stft window hop-lengh in ms. - "frame_length_ms": null, // stft window length in ms.If null, 'win_length' is used. - "frame_shift_ms": null, // stft window hop-lengh in ms. If null, 'hop_length' is used. - - // Audio processing parameters - "sample_rate": 22050, // DATASET-RELATED: wav sample-rate. If different than the original data, it is resampled. - "preemphasis": 0.0, // pre-emphasis to reduce spec noise and make it more structured. If 0.0, no -pre-emphasis. - "ref_level_db": 20, // reference level db, theoretically 20db is the sound of air. - "log_func": "np.log10", - "do_sound_norm": true, - - // Silence trimming - "do_trim_silence": false,// enable trimming of slience of audio as you load it. LJspeech (false), TWEB (false), Nancy (true) - "trim_db": 60, // threshold for timming silence. Set this according to your dataset. - - // MelSpectrogram parameters - "num_mels": 80, // size of the mel spec frame. - "mel_fmin": 50.0, // minimum freq level for mel-spec. ~50 for male and ~95 for female voices. Tune for dataset!! - "mel_fmax": 7600.0, // maximum freq level for mel-spec. Tune for dataset!! - "spec_gain": 1.0, // scaler value appplied after log transform of spectrogram. - - // Normalization parameters - "signal_norm": true, // normalize spec values. Mean-Var normalization if 'stats_path' is defined otherwise range normalization defined by the other params. - "min_level_db": -100, // lower bound for normalization - "symmetric_norm": true, // move normalization to range [-1, 1] - "max_norm": 4.0, // scale normalization to range [-max_norm, max_norm] or [0, max_norm] - "clip_norm": true, // clip normalized values into the range. - "stats_path": null - }, - - // DISTRIBUTED TRAINING - // "distributed":{ - // "backend": "nccl", - // "url": "tcp:\/\/localhost:54321" - // }, - - // MODEL PARAMETERS - "use_pqmf": true, - - // LOSS PARAMETERS - "use_stft_loss": true, - "use_subband_stft_loss": true, - "use_mse_gan_loss": true, - "use_hinge_gan_loss": false, - "use_feat_match_loss": false, // use only with melgan discriminators - "use_l1_spec_loss": true, - - // loss weights - "stft_loss_weight": 0.5, - "subband_stft_loss_weight": 0.5, - "mse_G_loss_weight": 2.5, - "hinge_G_loss_weight": 2.5, - "feat_match_loss_weight": 25, - "l1_spec_loss_weight": 2.5, - - // multiscale stft loss parameters - "stft_loss_params": { - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240] - }, - - // subband multiscale stft loss parameters - "subband_stft_loss_params":{ - "n_ffts": [384, 683, 171], - "hop_lengths": [30, 60, 10], - "win_lengths": [150, 300, 60] - }, - - "l1_spec_loss_params": { - "use_mel": true, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": null - }, - - "target_loss": "G_avg_loss", // loss value to pick the best model to save after each epoch - - // DISCRIMINATOR - "discriminator_model": "melgan_multiscale_discriminator", - "discriminator_model_params":{ - "base_channels": 16, - "max_channels":512, - "downsample_factors":[4, 4, 4] - }, - "steps_to_start_discriminator": 200000, // steps required to start GAN trainining.1 - - // GENERATOR - "generator_model": "multiband_melgan_generator", - "generator_model_params": { - "upsample_factors":[8, 4, 2], - "num_res_blocks": 4 - }, - - // DATASET - "data_path": "tests/data/ljspeech/wavs/", - "feature_path": null, - "seq_len": 16384, - "pad_short": 2000, - "conv_pad": 0, - "use_noise_augment": false, - "use_cache": true, - - "reinit_layers": [], // give a list of layer names to restore from the given checkpoint. If not defined, it reloads all heuristically matching layers. - - // TRAINING - "batch_size": 4, // Batch size for training. Lower values than 32 might cause hard to learn attention. It is overwritten by 'gradual_training'. - - // VALIDATION - "run_eval": true, - "test_delay_epochs": 10, //Until attention is aligned, testing only wastes computation time. - "test_sentences_file": null, // set a file to load sentences to be used for testing. If it is null then we use default english sentences. - - // OPTIMIZER - "epochs": 1, // total number of epochs to train. - "wd": 0.0, // Weight decay weight. - "gen_clip_grad": -1, // Generator gradient clipping threshold. Apply gradient clipping if > 0 - "disc_clip_grad": -1, // Discriminator gradient clipping threshold. - "optimizer": "AdamW", - "optimizer_params":{ - "betas": [0.8, 0.99], - "weight_decay": 0.0 - }, - "lr_scheduler_gen": "MultiStepLR", // one of the schedulers from https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate - "lr_scheduler_gen_params": { - "gamma": 0.5, - "milestones": [100000, 200000, 300000, 400000, 500000, 600000] - }, - "lr_scheduler_disc": "MultiStepLR", // one of the schedulers from https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate - "lr_scheduler_disc_params": { - "gamma": 0.5, - "milestones": [100000, 200000, 300000, 400000, 500000, 600000] - }, - "lr_gen": 1e-4, // Initial learning rate. If Noam decay is active, maximum learning rate. - "lr_disc": 1e-4, - - // TENSORBOARD and LOGGING - "print_step": 1, // Number of steps to log traning on console. - "print_eval": false, // If True, it prints loss values for each step in eval run. - "save_step": 25000, // Number of training steps expected to plot training stats on TB and save model checkpoints. - "checkpoint": true, // If true, it saves checkpoints per "save_step" - "keep_all_best": true, // If true, keeps all best_models after keep_after steps - "keep_after": 10000, // Global step after which to keep best models if keep_all_best is true - "tb_model_param_stats": false, // true, plots param stats per layer on tensorboard. Might be memory consuming, but good for debugging. - - // DATA LOADING - "num_loader_workers": 0, // number of training data loader processes. Don't set it too big. 4-8 are good values. - "num_eval_loader_workers": 0, // number of evaluation data loader processes. - "eval_split_size": 10, - - // PATHS - "output_path": "tests/train_outputs/" -} - diff --git a/TTS/tests/inputs/test_vocoder_wavegrad.json b/TTS/tests/inputs/test_vocoder_wavegrad.json deleted file mode 100644 index 6378c07a6dee8d9d52e0f1341b0105b3ed119abe..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/test_vocoder_wavegrad.json +++ /dev/null @@ -1,116 +0,0 @@ -{ - "run_name": "wavegrad-ljspeech", - "run_description": "wavegrad ljspeech", - - "audio":{ - "fft_size": 1024, // number of stft frequency levels. Size of the linear spectogram frame. - "win_length": 1024, // stft window length in ms. - "hop_length": 256, // stft window hop-lengh in ms. - "frame_length_ms": null, // stft window length in ms.If null, 'win_length' is used. - "frame_shift_ms": null, // stft window hop-lengh in ms. If null, 'hop_length' is used. - - // Audio processing parameters - "sample_rate": 22050, // DATASET-RELATED: wav sample-rate. If different than the original data, it is resampled. - "preemphasis": 0.0, // pre-emphasis to reduce spec noise and make it more structured. If 0.0, no -pre-emphasis. - "ref_level_db": 0, // reference level db, theoretically 20db is the sound of air. - - // Silence trimming - "do_trim_silence": true,// enable trimming of slience of audio as you load it. LJspeech (false), TWEB (false), Nancy (true) - "trim_db": 60, // threshold for timming silence. Set this according to your dataset. - - // MelSpectrogram parameters - "num_mels": 80, // size of the mel spec frame. - "mel_fmin": 50.0, // minimum freq level for mel-spec. ~50 for male and ~95 for female voices. Tune for dataset!! - "mel_fmax": 7600.0, // maximum freq level for mel-spec. Tune for dataset!! - "spec_gain": 1.0, // scaler value appplied after log transform of spectrogram. - - // Normalization parameters - "signal_norm": true, // normalize spec values. Mean-Var normalization if 'stats_path' is defined otherwise range normalization defined by the other params. - "min_level_db": -100, // lower bound for normalization - "symmetric_norm": true, // move normalization to range [-1, 1] - "max_norm": 4.0, // scale normalization to range [-max_norm, max_norm] or [0, max_norm] - "clip_norm": true, // clip normalized values into the range. - "stats_path": null // DO NOT USE WITH MULTI_SPEAKER MODEL. scaler stats file computed by 'compute_statistics.py'. If it is defined, mean-std based notmalization is used and other normalization params are ignored - }, - - // DISTRIBUTED TRAINING - "mixed_precision": false, - "distributed":{ - "backend": "nccl", - "url": "tcp:\/\/localhost:54322" - }, - - "target_loss": "avg_wavegrad_loss", // loss value to pick the best model to save after each epoch - - // MODEL PARAMETERS - "generator_model": "wavegrad", - "model_params":{ - "y_conv_channels":32, - "x_conv_channels":768, - "ublock_out_channels": [512, 512, 256, 128, 128], - "dblock_out_channels": [128, 128, 256, 512], - "upsample_factors": [4, 4, 4, 2, 2], - "upsample_dilations": [ - [1, 2, 1, 2], - [1, 2, 1, 2], - [1, 2, 4, 8], - [1, 2, 4, 8], - [1, 2, 4, 8]], - "use_weight_norm": true - }, - - // DATASET - "data_path": "tests/data/ljspeech/wavs/", // root data path. It finds all wav files recursively from there. - "feature_path": null, // if you use precomputed features - "seq_len": 6144, // 24 * hop_length - "pad_short": 0, // additional padding for short wavs - "conv_pad": 0, // additional padding against convolutions applied to spectrograms - "use_noise_augment": false, // add noise to the audio signal for augmentation - "use_cache": true, // use in memory cache to keep the computed features. This might cause OOM. - - "reinit_layers": [], // give a list of layer names to restore from the given checkpoint. If not defined, it reloads all heuristically matching layers. - - // TRAINING - "batch_size": 1, // Batch size for training. - "train_noise_schedule":{ - "min_val": 1e-6, - "max_val": 1e-2, - "num_steps": 1000 - }, - "test_noise_schedule":{ - "min_val": 1e-6, - "max_val": 1e-2, - "num_steps": 2 - }, - - // VALIDATION - "run_eval": true, // enable/disable evaluation run - - // OPTIMIZER - "epochs": 1, // total number of epochs to train. - "grad_clip": 1.0, // Generator gradient clipping threshold. Apply gradient clipping if > 0 - "lr_scheduler": "MultiStepLR", // one of the schedulers from https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate - "lr_scheduler_params": { - "gamma": 0.5, - "milestones": [100000, 200000, 300000, 400000, 500000, 600000] - }, - "lr": 1e-4, // Initial learning rate. If Noam decay is active, maximum learning rate. - - // TENSORBOARD and LOGGING - "print_step": 250, // Number of steps to log traning on console. - "print_eval": false, // If True, it prints loss values for each step in eval run. - "save_step": 10000, // Number of training steps expected to plot training stats on TB and save model checkpoints. - "checkpoint": true, // If true, it saves checkpoints per "save_step" - "keep_all_best": true, // If true, keeps all best_models after keep_after steps - "keep_after": 10000, // Global step after which to keep best models if keep_all_best is true - "tb_model_param_stats": true, // true, plots param stats per layer on tensorboard. Might be memory consuming, but good for debugging. - - // DATA LOADING - "num_loader_workers": 0, // number of training data loader processes. Don't set it too big. 4-8 are good values. - "num_eval_loader_workers": 0, // number of evaluation data loader processes. - "eval_split_size": 4, - - // PATHS - "output_path": "tests/train_outputs/" -} - diff --git a/TTS/tests/inputs/test_vocoder_wavernn_config.json b/TTS/tests/inputs/test_vocoder_wavernn_config.json deleted file mode 100644 index ee4e5f8e42b3f07e0a6ab3b131988a0d6cd15475..0000000000000000000000000000000000000000 --- a/TTS/tests/inputs/test_vocoder_wavernn_config.json +++ /dev/null @@ -1,112 +0,0 @@ -{ - "run_name": "wavernn_test", - "run_description": "wavernn_test training", - - // AUDIO PARAMETERS - "audio":{ - "fft_size": 1024, // number of stft frequency levels. Size of the linear spectogram frame. - "win_length": 1024, // stft window length in ms. - "hop_length": 256, // stft window hop-lengh in ms. - "frame_length_ms": null, // stft window length in ms.If null, 'win_length' is used. - "frame_shift_ms": null, // stft window hop-lengh in ms. If null, 'hop_length' is used. - - // Audio processing parameters - "sample_rate": 22050, // DATASET-RELATED: wav sample-rate. If different than the original data, it is resampled. - "preemphasis": 0.0, // pre-emphasis to reduce spec noise and make it more structured. If 0.0, no -pre-emphasis. - "ref_level_db": 0, // reference level db, theoretically 20db is the sound of air. - - // Silence trimming - "do_trim_silence": true,// enable trimming of slience of audio as you load it. LJspeech (false), TWEB (false), Nancy (true) - "trim_db": 60, // threshold for timming silence. Set this according to your dataset. - - // MelSpectrogram parameters - "num_mels": 80, // size of the mel spec frame. - "mel_fmin": 0.0, // minimum freq level for mel-spec. ~50 for male and ~95 for female voices. Tune for dataset!! - "mel_fmax": 8000.0, // maximum freq level for mel-spec. Tune for dataset!! - "spec_gain": 20.0, // scaler value appplied after log transform of spectrogram. - - // Normalization parameters - "signal_norm": true, // normalize spec values. Mean-Var normalization if 'stats_path' is defined otherwise range normalization defined by the other params. - "min_level_db": -100, // lower bound for normalization - "symmetric_norm": true, // move normalization to range [-1, 1] - "max_norm": 4.0, // scale normalization to range [-max_norm, max_norm] or [0, max_norm] - "clip_norm": true, // clip normalized values into the range. - "stats_path": null // DO NOT USE WITH MULTI_SPEAKER MODEL. scaler stats file computed by 'compute_statistics.py'. If it is defined, mean-std based notmalization is used and other normalization params are ignored - }, - - // Generating / Synthesizing - "batched": true, - "target_samples": 11000, // target number of samples to be generated in each batch entry - "overlap_samples": 550, // number of samples for crossfading between batches - - // DISTRIBUTED TRAINING - // "distributed":{ - // "backend": "nccl", - // "url": "tcp:\/\/localhost:54321" - // }, - - // MODEL PARAMETERS - "use_aux_net": true, - "use_upsample_net": true, - "upsample_factors": [4, 8, 8], // this needs to correctly factorise hop_length - "seq_len": 1280, // has to be devideable by hop_length - "mode": "mold", // mold [string], gauss [string], bits [int] - "mulaw": false, // apply mulaw if mode is bits - "padding": 2, // pad the input for resnet to see wider input length - - // GENERATOR - for backward compatibility - "generator_model": "Wavernn", - - // DATASET - //"use_gta": true, // use computed gta features from the tts model - "data_path": "tests/data/ljspeech/wavs/", // path containing training wav files - "feature_path": null, // path containing computed features from wav files if null compute them - - // MODEL PARAMETERS - "wavernn_model_params": { - "rnn_dims": 512, - "fc_dims": 512, - "compute_dims": 128, - "res_out_dims": 128, - "num_res_blocks": 10, - "use_aux_net": true, - "use_upsample_net": true, - "upsample_factors": [4, 8, 8] // this needs to correctly factorise hop_length - }, - "mixed_precision": false, - - // TRAINING - "batch_size": 4, // Batch size for training. Lower values than 32 might cause hard to learn attention. - "epochs": 1, // total number of epochs to train. - - // VALIDATION - "run_eval": true, - "test_every_epochs": 10, // Test after set number of epochs (Test every 20 epochs for example) - - // OPTIMIZER - "grad_clip": 4, // apply gradient clipping if > 0 - "lr_scheduler": "MultiStepLR", // one of the schedulers from https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate - "lr_scheduler_params": { - "gamma": 0.5, - "milestones": [200000, 400000, 600000] - }, - "lr": 1e-4, // initial learning rate - - // TENSORBOARD and LOGGING - "print_step": 25, // Number of steps to log traning on console. - "print_eval": false, // If True, it prints loss values for each step in eval run. - "save_step": 25000, // Number of training steps expected to plot training stats on TB and save model checkpoints. - "checkpoint": true, // If true, it saves checkpoints per "save_step" - "keep_all_best": true, // If true, keeps all best_models after keep_after steps - "keep_after": 10000, // Global step after which to keep best models if keep_all_best is true - "tb_model_param_stats": false, // true, plots param stats per layer on tensorboard. Might be memory consuming, but good for debugging. - - // DATA LOADING - "num_loader_workers": 0, // number of training data loader processes. Don't set it too big. 4-8 are good values. - "num_eval_loader_workers": 0, // number of evaluation data loader processes. - "eval_split_size": 10, // number of samples for testing - - // PATHS - "output_path": "tests/train_outputs/" -} - diff --git a/TTS/tests/text_tests/__init__.py b/TTS/tests/text_tests/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tests/text_tests/test_characters.py b/TTS/tests/text_tests/test_characters.py deleted file mode 100644 index 8f40656ad7ae0c862835e00c627224bab7b5d35c..0000000000000000000000000000000000000000 --- a/TTS/tests/text_tests/test_characters.py +++ /dev/null @@ -1,174 +0,0 @@ -import unittest - -from TTS.tts.utils.text.characters import BaseCharacters, BaseVocabulary, Graphemes, IPAPhonemes - -# pylint: disable=protected-access - - -class BaseVocabularyTest(unittest.TestCase): - def setUp(self): - self.phonemes = IPAPhonemes() - self.base_vocab = BaseVocabulary( - vocab=self.phonemes._vocab, - pad=self.phonemes.pad, - blank=self.phonemes.blank, - bos=self.phonemes.bos, - eos=self.phonemes.eos, - ) - self.empty_vocab = BaseVocabulary({}) - - def test_pad_id(self): - self.assertEqual(self.empty_vocab.pad_id, 0) - self.assertEqual(self.base_vocab.pad_id, self.phonemes.pad_id) - - def test_blank_id(self): - self.assertEqual(self.empty_vocab.blank_id, 0) - self.assertEqual(self.base_vocab.blank_id, self.phonemes.blank_id) - - def test_vocab(self): - self.assertEqual(self.empty_vocab.vocab, {}) - self.assertEqual(self.base_vocab.vocab, self.phonemes._vocab) - - # def test_init_from_config(self): - # ... - - def test_num_chars(self): - self.assertEqual(self.empty_vocab.num_chars, 0) - self.assertEqual(self.base_vocab.num_chars, self.phonemes.num_chars) - - def test_char_to_id(self): - try: - self.empty_vocab.char_to_id("a") - raise Exception("Should have raised KeyError") - except: - pass - for k in self.phonemes.vocab: - self.assertEqual(self.base_vocab.char_to_id(k), self.phonemes.char_to_id(k)) - - def test_id_to_char(self): - try: - self.empty_vocab.id_to_char(0) - raise Exception("Should have raised KeyError") - except: - pass - for k in self.phonemes.vocab: - v = self.phonemes.char_to_id(k) - self.assertEqual(self.base_vocab.id_to_char(v), self.phonemes.id_to_char(v)) - - -class BaseCharacterTest(unittest.TestCase): - def setUp(self): - self.characters_empty = BaseCharacters("", "", pad="", eos="", bos="", blank="", is_unique=True, is_sorted=True) - - def test_default_character_sets(self): # pylint: disable=no-self-use - """Test initiation of default character sets""" - _ = IPAPhonemes() - _ = Graphemes() - - def test_unique(self): - """Test if the unique option works""" - self.characters_empty.characters = "abcc" - self.characters_empty.punctuations = ".,;:!? " - self.characters_empty.pad = "[PAD]" - self.characters_empty.eos = "[EOS]" - self.characters_empty.bos = "[BOS]" - self.characters_empty.blank = "[BLANK]" - - self.assertEqual( - self.characters_empty.num_chars, - len(["[PAD]", "[EOS]", "[BOS]", "[BLANK]", "a", "b", "c", ".", ",", ";", ":", "!", "?", " "]), - ) - - def test_unique_sorted(self): - """Test if the unique and sorted option works""" - self.characters_empty.characters = "cba" - self.characters_empty.punctuations = ".,;:!? " - self.characters_empty.pad = "[PAD]" - self.characters_empty.eos = "[EOS]" - self.characters_empty.bos = "[BOS]" - self.characters_empty.blank = "[BLANK]" - - self.assertEqual( - self.characters_empty.num_chars, - len(["[PAD]", "[EOS]", "[BOS]", "[BLANK]", "a", "b", "c", ".", ",", ";", ":", "!", "?", " "]), - ) - - def test_setters_getters(self): - """Test the class setters behaves as expected""" - self.characters_empty.characters = "abc" - self.assertEqual(self.characters_empty._characters, "abc") - self.assertEqual(self.characters_empty.vocab, ["a", "b", "c"]) - - self.characters_empty.punctuations = ".,;:!? " - self.assertEqual(self.characters_empty._punctuations, ".,;:!? ") - self.assertEqual(self.characters_empty.vocab, ["a", "b", "c", ".", ",", ";", ":", "!", "?", " "]) - - self.characters_empty.pad = "[PAD]" - self.assertEqual(self.characters_empty._pad, "[PAD]") - self.assertEqual(self.characters_empty.vocab, ["[PAD]", "a", "b", "c", ".", ",", ";", ":", "!", "?", " "]) - - self.characters_empty.eos = "[EOS]" - self.assertEqual(self.characters_empty._eos, "[EOS]") - self.assertEqual( - self.characters_empty.vocab, ["[PAD]", "[EOS]", "a", "b", "c", ".", ",", ";", ":", "!", "?", " "] - ) - - self.characters_empty.bos = "[BOS]" - self.assertEqual(self.characters_empty._bos, "[BOS]") - self.assertEqual( - self.characters_empty.vocab, ["[PAD]", "[EOS]", "[BOS]", "a", "b", "c", ".", ",", ";", ":", "!", "?", " "] - ) - - self.characters_empty.blank = "[BLANK]" - self.assertEqual(self.characters_empty._blank, "[BLANK]") - self.assertEqual( - self.characters_empty.vocab, - ["[PAD]", "[EOS]", "[BOS]", "[BLANK]", "a", "b", "c", ".", ",", ";", ":", "!", "?", " "], - ) - self.assertEqual( - self.characters_empty.num_chars, - len(["[PAD]", "[EOS]", "[BOS]", "[BLANK]", "a", "b", "c", ".", ",", ";", ":", "!", "?", " "]), - ) - - self.characters_empty.print_log() - - def test_char_lookup(self): - """Test char to ID and ID to char conversion""" - self.characters_empty.characters = "abc" - self.characters_empty.punctuations = ".,;:!? " - self.characters_empty.pad = "[PAD]" - self.characters_empty.eos = "[EOS]" - self.characters_empty.bos = "[BOS]" - self.characters_empty.blank = "[BLANK]" - - # char to ID - self.assertEqual(self.characters_empty.char_to_id("[PAD]"), 0) - self.assertEqual(self.characters_empty.char_to_id("[EOS]"), 1) - self.assertEqual(self.characters_empty.char_to_id("[BOS]"), 2) - self.assertEqual(self.characters_empty.char_to_id("[BLANK]"), 3) - self.assertEqual(self.characters_empty.char_to_id("a"), 4) - self.assertEqual(self.characters_empty.char_to_id("b"), 5) - self.assertEqual(self.characters_empty.char_to_id("c"), 6) - self.assertEqual(self.characters_empty.char_to_id("."), 7) - self.assertEqual(self.characters_empty.char_to_id(","), 8) - self.assertEqual(self.characters_empty.char_to_id(";"), 9) - self.assertEqual(self.characters_empty.char_to_id(":"), 10) - self.assertEqual(self.characters_empty.char_to_id("!"), 11) - self.assertEqual(self.characters_empty.char_to_id("?"), 12) - self.assertEqual(self.characters_empty.char_to_id(" "), 13) - - # ID to char - self.assertEqual(self.characters_empty.id_to_char(0), "[PAD]") - self.assertEqual(self.characters_empty.id_to_char(1), "[EOS]") - self.assertEqual(self.characters_empty.id_to_char(2), "[BOS]") - self.assertEqual(self.characters_empty.id_to_char(3), "[BLANK]") - self.assertEqual(self.characters_empty.id_to_char(4), "a") - self.assertEqual(self.characters_empty.id_to_char(5), "b") - self.assertEqual(self.characters_empty.id_to_char(6), "c") - self.assertEqual(self.characters_empty.id_to_char(7), ".") - self.assertEqual(self.characters_empty.id_to_char(8), ",") - self.assertEqual(self.characters_empty.id_to_char(9), ";") - self.assertEqual(self.characters_empty.id_to_char(10), ":") - self.assertEqual(self.characters_empty.id_to_char(11), "!") - self.assertEqual(self.characters_empty.id_to_char(12), "?") - self.assertEqual(self.characters_empty.id_to_char(13), " ") diff --git a/TTS/tests/text_tests/test_japanese_phonemizer.py b/TTS/tests/text_tests/test_japanese_phonemizer.py deleted file mode 100644 index 423b79b9ce5d5d7e7ddb20317b48fa711fad8f92..0000000000000000000000000000000000000000 --- a/TTS/tests/text_tests/test_japanese_phonemizer.py +++ /dev/null @@ -1,26 +0,0 @@ -import unittest - -from TTS.tts.utils.text.japanese.phonemizer import japanese_text_to_phonemes - -_TEST_CASES = """ -どちらに行きますか?/dochiraniikimasuka? -今日は温泉に、行きます。/kyo:waoNseNni,ikimasu. -「A」から「Z」までです。/e:karazeqtomadedesu. -そうですね!/so:desune! -クジラは哺乳類です。/kujirawahonyu:ruidesu. -ヴィディオを見ます。/bidioomimasu. -今日は8月22日です/kyo:wahachigatsuniju:ninichidesu -xyzとαβγ/eqkusuwaizeqtotoarufabe:tagaNma -値段は$12.34です/nedaNwaju:niteNsaNyoNdorudesu -""" - - -class TestText(unittest.TestCase): - def test_japanese_text_to_phonemes(self): - for line in _TEST_CASES.strip().split("\n"): - text, phone = line.split("/") - self.assertEqual(japanese_text_to_phonemes(text), phone) - - -if __name__ == "__main__": - unittest.main() diff --git a/TTS/tests/text_tests/test_korean_phonemizer.py b/TTS/tests/text_tests/test_korean_phonemizer.py deleted file mode 100644 index 7d651d1d693a5675e688741b0cb2ee22f14d70d6..0000000000000000000000000000000000000000 --- a/TTS/tests/text_tests/test_korean_phonemizer.py +++ /dev/null @@ -1,31 +0,0 @@ -import unittest - -from TTS.tts.utils.text.korean.phonemizer import korean_text_to_phonemes - -_TEST_CASES = """ -포상은 열심히 한 아이에게만 주어지기 때문에 포상인 것입니다./포상으 녈심히 하 나이에게만 주어지기 때무네 포상인 거심니다. -오늘은 8월 31일 입니다./오느른 파뤌 삼시비리 림니다. -친구 100명 만들기가 목표입니다./친구 뱅명 만들기가 목표임니다. -A부터 Z까지 입니다./에이부터 제트까지 임니다. -이게 제 마음이에요./이게 제 마으미에요. -""" -_TEST_CASES_EN = """ -이제야 이쪽을 보는구나./IJeYa IJjoGeul BoNeunGuNa. -크고 맛있는 cake를 부탁해요./KeuGo MaSinNeun KeIKeuLeul BuTaKaeYo. -전부 거짓말이야./JeonBu GeoJinMaLiYa. -좋은 노래를 찾았어요./JoEun NoLaeLeul ChaJaSseoYo. -""" - - -class TestText(unittest.TestCase): - def test_korean_text_to_phonemes(self): - for line in _TEST_CASES.strip().split("\n"): - text, phone = line.split("/") - self.assertEqual(korean_text_to_phonemes(text), phone) - for line in _TEST_CASES_EN.strip().split("\n"): - text, phone = line.split("/") - self.assertEqual(korean_text_to_phonemes(text, character="english"), phone) - - -if __name__ == "__main__": - unittest.main() diff --git a/TTS/tests/text_tests/test_phonemizer.py b/TTS/tests/text_tests/test_phonemizer.py deleted file mode 100644 index 8810554421957d47dd2f07440719ac57178b26c3..0000000000000000000000000000000000000000 --- a/TTS/tests/text_tests/test_phonemizer.py +++ /dev/null @@ -1,295 +0,0 @@ -import unittest - -from packaging.version import Version - -from TTS.tts.utils.text.phonemizers import ESpeak, Gruut, JA_JP_Phonemizer, ZH_CN_Phonemizer -from TTS.tts.utils.text.phonemizers.bangla_phonemizer import BN_Phonemizer -from TTS.tts.utils.text.phonemizers.multi_phonemizer import MultiPhonemizer - -EXAMPLE_TEXTs = [ - "Recent research at Harvard has shown meditating", - "for as little as 8 weeks can actually increase, the grey matter", - "in the parts of the brain responsible", - "for emotional regulation and learning!", -] - - -EXPECTED_ESPEAK_PHONEMES = [ - "ɹ|ˈiː|s|ə|n|t ɹ|ɪ|s|ˈɜː|tʃ æ|t h|ˈɑːɹ|v|ɚ|d h|ɐ|z ʃ|ˈoʊ|n m|ˈɛ|d|ɪ|t|ˌeɪ|ɾ|ɪ|ŋ", - "f|ɔː|ɹ æ|z l|ˈɪ|ɾ|əl æ|z ˈeɪ|t w|ˈiː|k|s k|æ|n ˈæ|k|tʃ|uː|əl|i| ˈɪ|n|k|ɹ|iː|s, ð|ə ɡ|ɹ|ˈeɪ m|ˈæ|ɾ|ɚ", - "ɪ|n|ð|ə p|ˈɑːɹ|t|s ʌ|v|ð|ə b|ɹ|ˈeɪ|n ɹ|ɪ|s|p|ˈɑː|n|s|ə|b|əl", - "f|ɔː|ɹ ɪ|m|ˈoʊ|ʃ|ə|n|əl ɹ|ˌɛ|ɡ|j|uː|l|ˈeɪ|ʃ|ə|n|| æ|n|d l|ˈɜː|n|ɪ|ŋ!", -] - - -EXPECTED_ESPEAK_v1_48_15_PHONEMES = [ - "ɹ|ˈiː|s|ə|n|t ɹ|ɪ|s|ˈɜː|tʃ æ|t h|ˈɑːɹ|v|ɚ|d h|ɐ|z ʃ|ˈoʊ|n m|ˈɛ|d|ᵻ|t|ˌeɪ|ɾ|ɪ|ŋ", - "f|ɔː|ɹ æ|z l|ˈɪ|ɾ|əl æ|z ˈeɪ|t w|ˈiː|k|s k|æ|n ˈæ|k|tʃ|uː|əl|i| ˈɪ|n|k|ɹ|iː|s, ð|ə ɡ|ɹ|ˈeɪ m|ˈæ|ɾ|ɚ", - "ɪ|n|ð|ə p|ˈɑːɹ|t|s ʌ|v|ð|ə b|ɹ|ˈeɪ|n ɹ|ɪ|s|p|ˈɑː|n|s|ə|b|əl", - "f|ɔː|ɹ ɪ|m|ˈoʊ|ʃ|ə|n|əl ɹ|ˌɛ|ɡ|j|uː|l|ˈeɪ|ʃ|ə|n|| æ|n|d l|ˈɜː|n|ɪ|ŋ!", -] - - -EXPECTED_ESPEAKNG_PHONEMES = [ - "ɹ|ˈiː|s|ə|n|t ɹ|ᵻ|s|ˈɜː|tʃ æ|t h|ˈɑːɹ|v|ɚ|d h|ɐ|z ʃ|ˈoʊ|n m|ˈɛ|d|ᵻ|t|ˌeɪ|ɾ|ɪ|ŋ", - "f|ɔː|ɹ æ|z l|ˈɪ|ɾ|əl æ|z ˈeɪ|t w|ˈiː|k|s k|æ|n ˈæ|k|tʃ|uː|əl|i| ˈɪ|ŋ|k|ɹ|iː|s, ð|ə ɡ|ɹ|ˈeɪ m|ˈæ|ɾ|ɚ", - "ɪ|n|ð|ə p|ˈɑːɹ|t|s ʌ|v|ð|ə b|ɹ|ˈeɪ|n ɹ|ᵻ|s|p|ˈɑː|n|s|ᵻ|b|əl", - "f|ɔː|ɹ ɪ|m|ˈoʊ|ʃ|ə|n|əl ɹ|ˌɛ|ɡ|j|ʊ|l|ˈeɪ|ʃ|ə|n|| æ|n|d l|ˈɜː|n|ɪ|ŋ!", -] - - -class TestEspeakPhonemizer(unittest.TestCase): - def setUp(self): - self.phonemizer = ESpeak(language="en-us", backend="espeak") - - if Version(self.phonemizer.backend_version) >= Version("1.48.15"): - target_phonemes = EXPECTED_ESPEAK_v1_48_15_PHONEMES - else: - target_phonemes = EXPECTED_ESPEAK_PHONEMES - - for text, ph in zip(EXAMPLE_TEXTs, target_phonemes): - phonemes = self.phonemizer.phonemize(text) - self.assertEqual(phonemes, ph) - - # multiple punctuations - text = "Be a voice, not an! echo?" - gt = "biː ɐ vˈɔɪs, nˈɑːt ɐn! ˈɛkoʊ?" - if Version(self.phonemizer.backend_version) >= Version("1.48.15"): - gt = "biː ɐ vˈɔɪs, nˈɑːt æn! ˈɛkoʊ?" - output = self.phonemizer.phonemize(text, separator="|") - output = output.replace("|", "") - self.assertEqual(output, gt) - - # not ending with punctuation - text = "Be a voice, not an! echo" - gt = "biː ɐ vˈɔɪs, nˈɑːt ɐn! ˈɛkoʊ" - if Version(self.phonemizer.backend_version) >= Version("1.48.15"): - gt = "biː ɐ vˈɔɪs, nˈɑːt æn! ˈɛkoʊ" - output = self.phonemizer.phonemize(text, separator="") - self.assertEqual(output, gt) - - # extra space after the sentence - text = "Be a voice, not an! echo. " - gt = "biː ɐ vˈɔɪs, nˈɑːt ɐn! ˈɛkoʊ." - if Version(self.phonemizer.backend_version) >= Version("1.48.15"): - gt = "biː ɐ vˈɔɪs, nˈɑːt æn! ˈɛkoʊ." - output = self.phonemizer.phonemize(text, separator="") - self.assertEqual(output, gt) - - def test_name(self): - self.assertEqual(self.phonemizer.name(), "espeak") - - def test_get_supported_languages(self): - self.assertIsInstance(self.phonemizer.supported_languages(), dict) - - def test_get_version(self): - self.assertIsInstance(self.phonemizer.version(), str) - - def test_is_available(self): - self.assertTrue(self.phonemizer.is_available()) - - -class TestEspeakNgPhonemizer(unittest.TestCase): - def setUp(self): - self.phonemizer = ESpeak(language="en-us", backend="espeak-ng") - - for text, ph in zip(EXAMPLE_TEXTs, EXPECTED_ESPEAKNG_PHONEMES): - phonemes = self.phonemizer.phonemize(text) - self.assertEqual(phonemes, ph) - - # multiple punctuations - text = "Be a voice, not an! echo?" - gt = "biː ɐ vˈɔɪs, nˈɑːt æn! ˈɛkoʊ?" - output = self.phonemizer.phonemize(text, separator="|") - output = output.replace("|", "") - self.assertEqual(output, gt) - - # not ending with punctuation - text = "Be a voice, not an! echo" - gt = "biː ɐ vˈɔɪs, nˈɑːt æn! ˈɛkoʊ" - output = self.phonemizer.phonemize(text, separator="") - self.assertEqual(output, gt) - - # extra space after the sentence - text = "Be a voice, not an! echo. " - gt = "biː ɐ vˈɔɪs, nˈɑːt æn! ˈɛkoʊ." - output = self.phonemizer.phonemize(text, separator="") - self.assertEqual(output, gt) - - def test_name(self): - self.assertEqual(self.phonemizer.name(), "espeak") - - def test_get_supported_languages(self): - self.assertIsInstance(self.phonemizer.supported_languages(), dict) - - def test_get_version(self): - self.assertIsInstance(self.phonemizer.version(), str) - - def test_is_available(self): - self.assertTrue(self.phonemizer.is_available()) - - -class TestGruutPhonemizer(unittest.TestCase): - def setUp(self): - self.phonemizer = Gruut(language="en-us", use_espeak_phonemes=True, keep_stress=False) - self.EXPECTED_PHONEMES = [ - "ɹ|i|ː|s|ə|n|t| ɹ|ᵻ|s|ɜ|ː|t|ʃ| æ|ɾ| h|ɑ|ː|ɹ|v|ɚ|d| h|ɐ|z| ʃ|o|ʊ|n| m|ɛ|d|ᵻ|t|e|ɪ|ɾ|ɪ|ŋ", - "f|ɔ|ː|ɹ| æ|z| l|ɪ|ɾ|ə|l| æ|z| e|ɪ|t| w|i|ː|k|s| k|æ|ŋ| æ|k|t|ʃ|u|ː|ə|l|i| ɪ|ŋ|k|ɹ|i|ː|s, ð|ə| ɡ|ɹ|e|ɪ| m|æ|ɾ|ɚ", - "ɪ|n| ð|ə| p|ɑ|ː|ɹ|t|s| ʌ|v| ð|ə| b|ɹ|e|ɪ|n| ɹ|ᵻ|s|p|ɑ|ː|n|s|ᵻ|b|ə|l", - "f|ɔ|ː|ɹ| ɪ|m|o|ʊ|ʃ|ə|n|ə|l| ɹ|ɛ|ɡ|j|ʊ|l|e|ɪ|ʃ|ə|n| æ|n|d| l|ɜ|ː|n|ɪ|ŋ!", - ] - - def test_phonemize(self): - for text, ph in zip(EXAMPLE_TEXTs, self.EXPECTED_PHONEMES): - phonemes = self.phonemizer.phonemize(text, separator="|") - self.assertEqual(phonemes, ph) - - # multiple punctuations - text = "Be a voice, not an! echo?" - gt = "biː ɐ vɔɪs, nɑːt ɐn! ɛkoʊ?" - output = self.phonemizer.phonemize(text, separator="|") - output = output.replace("|", "") - self.assertEqual(output, gt) - - # not ending with punctuation - text = "Be a voice, not an! echo" - gt = "biː ɐ vɔɪs, nɑːt ɐn! ɛkoʊ" - output = self.phonemizer.phonemize(text, separator="") - self.assertEqual(output, gt) - - # extra space after the sentence - text = "Be a voice, not an! echo. " - gt = "biː ɐ vɔɪs, nɑːt ɐn! ɛkoʊ." - output = self.phonemizer.phonemize(text, separator="") - self.assertEqual(output, gt) - - def test_name(self): - self.assertEqual(self.phonemizer.name(), "gruut") - - def test_get_supported_languages(self): - self.assertIsInstance(self.phonemizer.supported_languages(), list) - - def test_get_version(self): - self.assertIsInstance(self.phonemizer.version(), str) - - def test_is_available(self): - self.assertTrue(self.phonemizer.is_available()) - - -class TestJA_JPPhonemizer(unittest.TestCase): - def setUp(self): - self.phonemizer = JA_JP_Phonemizer() - self._TEST_CASES = """ - どちらに行きますか?/dochiraniikimasuka? - 今日は温泉に、行きます。/kyo:waoNseNni,ikimasu. - 「A」から「Z」までです。/e:karazeqtomadedesu. - そうですね!/so:desune! - クジラは哺乳類です。/kujirawahonyu:ruidesu. - ヴィディオを見ます。/bidioomimasu. - 今日は8月22日です/kyo:wahachigatsuniju:ninichidesu - xyzとαβγ/eqkusuwaizeqtotoarufabe:tagaNma - 値段は$12.34です/nedaNwaju:niteNsaNyoNdorudesu - """ - - def test_phonemize(self): - for line in self._TEST_CASES.strip().split("\n"): - text, phone = line.split("/") - self.assertEqual(self.phonemizer.phonemize(text, separator=""), phone) - - def test_name(self): - self.assertEqual(self.phonemizer.name(), "ja_jp_phonemizer") - - def test_get_supported_languages(self): - self.assertIsInstance(self.phonemizer.supported_languages(), dict) - - def test_get_version(self): - self.assertIsInstance(self.phonemizer.version(), str) - - def test_is_available(self): - self.assertTrue(self.phonemizer.is_available()) - - -class TestZH_CN_Phonemizer(unittest.TestCase): - def setUp(self): - self.phonemizer = ZH_CN_Phonemizer() - self._TEST_CASES = "" - - def test_phonemize(self): - # TODO: implement ZH phonemizer tests - pass - - def test_name(self): - self.assertEqual(self.phonemizer.name(), "zh_cn_phonemizer") - - def test_get_supported_languages(self): - self.assertIsInstance(self.phonemizer.supported_languages(), dict) - - def test_get_version(self): - self.assertIsInstance(self.phonemizer.version(), str) - - def test_is_available(self): - self.assertTrue(self.phonemizer.is_available()) - - -class TestBN_Phonemizer(unittest.TestCase): - def setUp(self): - self.phonemizer = BN_Phonemizer() - self._TEST_CASES = "রাসূলুল্লাহ সাল্লাল্লাহু আলাইহি ওয়া সাল্লাম শিক্ষা দিয়েছেন যে, কেউ যদি কোন খারাপ কিছুর সম্মুখীন হয়, তখনও যেন" - self._EXPECTED = "রাসূলুল্লাহ সাল্লাল্লাহু আলাইহি ওয়া সাল্লাম শিক্ষা দিয়েছেন যে কেউ যদি কোন খারাপ কিছুর সম্মুখীন হয় তখনও যেন।" - - def test_phonemize(self): - self.assertEqual(self.phonemizer.phonemize(self._TEST_CASES, separator=""), self._EXPECTED) - - def test_name(self): - self.assertEqual(self.phonemizer.name(), "bn_phonemizer") - - def test_get_supported_languages(self): - self.assertIsInstance(self.phonemizer.supported_languages(), dict) - - def test_get_version(self): - self.assertIsInstance(self.phonemizer.version(), str) - - def test_is_available(self): - self.assertTrue(self.phonemizer.is_available()) - - -class TestMultiPhonemizer(unittest.TestCase): - def setUp(self): - self.phonemizer = MultiPhonemizer({"tr": "espeak", "en-us": "", "de": "gruut", "zh-cn": ""}) - - def test_phonemize(self): - # Enlish espeak - text = "Be a voice, not an! echo?" - gt = "biː ɐ vˈɔɪs, nˈɑːt æn! ˈɛkoʊ?" - output = self.phonemizer.phonemize(text, separator="|", language="en-us") - output = output.replace("|", "") - self.assertEqual(output, gt) - - # German gruut - text = "Hallo, das ist ein Deutches Beipiel!" - gt = "haloː, das ɪst aeːn dɔɔʏ̯tçəs bəʔiːpiːl!" - output = self.phonemizer.phonemize(text, separator="|", language="de") - output = output.replace("|", "") - self.assertEqual(output, gt) - - def test_phonemizer_initialization(self): - # test with unsupported language - with self.assertRaises(ValueError): - MultiPhonemizer({"tr": "espeak", "xx": ""}) - - # test with unsupported phonemizer - with self.assertRaises(ValueError): - MultiPhonemizer({"tr": "espeak", "fr": "xx"}) - - def test_sub_phonemizers(self): - for lang in self.phonemizer.lang_to_phonemizer_name.keys(): - self.assertEqual(lang, self.phonemizer.lang_to_phonemizer[lang].language) - self.assertEqual( - self.phonemizer.lang_to_phonemizer_name[lang], self.phonemizer.lang_to_phonemizer[lang].name() - ) - - def test_name(self): - self.assertEqual(self.phonemizer.name(), "multi-phonemizer") - - def test_get_supported_languages(self): - self.assertIsInstance(self.phonemizer.supported_languages(), list) diff --git a/TTS/tests/text_tests/test_punctuation.py b/TTS/tests/text_tests/test_punctuation.py deleted file mode 100644 index 141c10e48f814b3843bea25d7456189716647ce0..0000000000000000000000000000000000000000 --- a/TTS/tests/text_tests/test_punctuation.py +++ /dev/null @@ -1,33 +0,0 @@ -import unittest - -from TTS.tts.utils.text.punctuation import _DEF_PUNCS, Punctuation - - -class PunctuationTest(unittest.TestCase): - def setUp(self): - self.punctuation = Punctuation() - self.test_texts = [ - ("This, is my text ... to be striped !! from text?", "This is my text to be striped from text"), - ("This, is my text ... to be striped !! from text", "This is my text to be striped from text"), - ("This, is my text ... to be striped from text?", "This is my text to be striped from text"), - ("This, is my text to be striped from text", "This is my text to be striped from text"), - ] - - def test_get_set_puncs(self): - self.punctuation.puncs = "-=" - self.assertEqual(self.punctuation.puncs, "-=") - - self.punctuation.puncs = _DEF_PUNCS - self.assertEqual(self.punctuation.puncs, _DEF_PUNCS) - - def test_strip_punc(self): - for text, gt in self.test_texts: - text_striped = self.punctuation.strip(text) - self.assertEqual(text_striped, gt) - - def test_strip_restore(self): - for text, gt in self.test_texts: - text_striped, puncs_map = self.punctuation.strip_to_restore(text) - text_restored = self.punctuation.restore(text_striped, puncs_map) - self.assertEqual(" ".join(text_striped), gt) - self.assertEqual(text_restored[0], text) diff --git a/TTS/tests/text_tests/test_text_cleaners.py b/TTS/tests/text_tests/test_text_cleaners.py deleted file mode 100644 index fcfa71e77dde8daa6002aa71a56e4f8ca96a51a7..0000000000000000000000000000000000000000 --- a/TTS/tests/text_tests/test_text_cleaners.py +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/env python3 - -from TTS.tts.utils.text.cleaners import english_cleaners, phoneme_cleaners - - -def test_time() -> None: - assert english_cleaners("It's 11:00") == "it's eleven a m" - assert english_cleaners("It's 9:01") == "it's nine oh one a m" - assert english_cleaners("It's 16:00") == "it's four p m" - assert english_cleaners("It's 00:00 am") == "it's twelve a m" - - -def test_currency() -> None: - assert phoneme_cleaners("It's $10.50") == "It's ten dollars fifty cents" - assert phoneme_cleaners("£1.1") == "one pound sterling one penny" - assert phoneme_cleaners("¥1") == "one yen" - - -def test_expand_numbers() -> None: - assert phoneme_cleaners("-1") == "minus one" - assert phoneme_cleaners("1") == "one" diff --git a/TTS/tests/text_tests/test_tokenizer.py b/TTS/tests/text_tests/test_tokenizer.py deleted file mode 100644 index dfa213d9d527e21de2e19f5c069bcd247954dd99..0000000000000000000000000000000000000000 --- a/TTS/tests/text_tests/test_tokenizer.py +++ /dev/null @@ -1,101 +0,0 @@ -import unittest -from dataclasses import dataclass, field - -from coqpit import Coqpit - -from TTS.tts.utils.text.characters import Graphemes, IPAPhonemes, _blank, _bos, _eos, _pad, _phonemes, _punctuations -from TTS.tts.utils.text.phonemizers import ESpeak -from TTS.tts.utils.text.tokenizer import TTSTokenizer - - -class TestTTSTokenizer(unittest.TestCase): - def setUp(self): - self.tokenizer = TTSTokenizer(use_phonemes=False, characters=Graphemes()) - - self.ph = ESpeak("tr", backend="espeak") - self.tokenizer_ph = TTSTokenizer(use_phonemes=True, characters=IPAPhonemes(), phonemizer=self.ph) - - def test_encode_decode_graphemes(self): - text = "This is, a test." - ids = self.tokenizer.encode(text) - test_hat = self.tokenizer.decode(ids) - self.assertEqual(text, test_hat) - self.assertEqual(len(ids), len(text)) - - def test_text_to_ids_phonemes(self): - # TODO: note sure how to extend to cover all the languages and phonemizer. - text = "Bu bir Örnek." - text_ph = self.ph.phonemize(text, separator="") - ids = self.tokenizer_ph.text_to_ids(text) - test_hat = self.tokenizer_ph.ids_to_text(ids) - self.assertEqual(text_ph, test_hat) - - def test_text_to_ids_phonemes_punctuation(self): - text = "..." - text_ph = self.ph.phonemize(text, separator="") - ids = self.tokenizer_ph.text_to_ids(text) - test_hat = self.tokenizer_ph.ids_to_text(ids) - self.assertEqual(text_ph, test_hat) - - def test_text_to_ids_phonemes_with_eos_bos(self): - text = "Bu bir Örnek." - self.tokenizer_ph.use_eos_bos = True - text_ph = IPAPhonemes().bos + self.ph.phonemize(text, separator="") + IPAPhonemes().eos - ids = self.tokenizer_ph.text_to_ids(text) - test_hat = self.tokenizer_ph.ids_to_text(ids) - self.assertEqual(text_ph, test_hat) - - def test_text_to_ids_phonemes_with_eos_bos_and_blank(self): - text = "Bu bir Örnek." - self.tokenizer_ph.use_eos_bos = True - self.tokenizer_ph.add_blank = True - text_ph = "bʊ bɪr œrnˈɛc." - ids = self.tokenizer_ph.text_to_ids(text) - text_hat = self.tokenizer_ph.ids_to_text(ids) - self.assertEqual(text_ph, text_hat) - - def test_print_logs(self): - self.tokenizer.print_logs() - self.tokenizer_ph.print_logs() - - def test_not_found_characters(self): - self.ph = ESpeak("en-us") - tokenizer_local = TTSTokenizer(use_phonemes=True, characters=IPAPhonemes(), phonemizer=self.ph) - self.assertEqual(len(self.tokenizer.not_found_characters), 0) - text = "Yolk of one egg beaten light" - ids = tokenizer_local.text_to_ids(text) - text_hat = tokenizer_local.ids_to_text(ids) - self.assertEqual(tokenizer_local.not_found_characters, ["̩"]) - self.assertEqual(text_hat, "jˈoʊk ʌv wˈʌn ˈɛɡ bˈiːʔn lˈaɪt") - - def test_init_from_config(self): - @dataclass - class Characters(Coqpit): - characters_class: str = None - characters: str = _phonemes - punctuations: str = _punctuations - pad: str = _pad - eos: str = _eos - bos: str = _bos - blank: str = _blank - is_unique: bool = True - is_sorted: bool = True - - @dataclass - class TokenizerConfig(Coqpit): - enable_eos_bos_chars: bool = True - use_phonemes: bool = True - add_blank: bool = False - characters: str = field(default_factory=Characters) - phonemizer: str = "espeak" - phoneme_language: str = "tr" - text_cleaner: str = "phoneme_cleaners" - characters = field(default_factory=Characters) - - tokenizer_ph, _ = TTSTokenizer.init_from_config(TokenizerConfig()) - tokenizer_ph.phonemizer.backend = "espeak" - text = "Bu bir Örnek." - text_ph = "" + self.ph.phonemize(text, separator="") + "" - ids = tokenizer_ph.text_to_ids(text) - test_hat = tokenizer_ph.ids_to_text(ids) - self.assertEqual(text_ph, test_hat) diff --git a/TTS/tests/tts_tests/__init__.py b/TTS/tests/tts_tests/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tests/tts_tests/test_helpers.py b/TTS/tests/tts_tests/test_helpers.py deleted file mode 100644 index 23bb440a0af77b443e847b1c80620887bef485bb..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_helpers.py +++ /dev/null @@ -1,88 +0,0 @@ -import torch as T - -from TTS.tts.utils.helpers import average_over_durations, generate_path, rand_segments, segment, sequence_mask - - -def average_over_durations_test(): # pylint: disable=no-self-use - pitch = T.rand(1, 1, 128) - - durations = T.randint(1, 5, (1, 21)) - coeff = 128.0 / durations.sum() - durations = T.floor(durations * coeff) - diff = 128.0 - durations.sum() - durations[0, -1] += diff - durations = durations.long() - - pitch_avg = average_over_durations(pitch, durations) - - index = 0 - for idx, dur in enumerate(durations[0]): - assert abs(pitch_avg[0, 0, idx] - pitch[0, 0, index : index + dur.item()].mean()) < 1e-5 - index += dur - - -def seqeunce_mask_test(): - lengths = T.randint(10, 15, (8,)) - mask = sequence_mask(lengths) - for i in range(8): - l = lengths[i].item() - assert mask[i, :l].sum() == l - assert mask[i, l:].sum() == 0 - - -def segment_test(): - x = T.range(0, 11) - x = x.repeat(8, 1).unsqueeze(1) - segment_ids = T.randint(0, 7, (8,)) - - segments = segment(x, segment_ids, segment_size=4) - for idx, start_indx in enumerate(segment_ids): - assert x[idx, :, start_indx : start_indx + 4].sum() == segments[idx, :, :].sum() - - try: - segments = segment(x, segment_ids, segment_size=10) - raise Exception("Should have failed") - except: - pass - - segments = segment(x, segment_ids, segment_size=10, pad_short=True) - for idx, start_indx in enumerate(segment_ids): - assert x[idx, :, start_indx : start_indx + 10].sum() == segments[idx, :, :].sum() - - -def rand_segments_test(): - x = T.rand(2, 3, 4) - x_lens = T.randint(3, 4, (2,)) - segments, seg_idxs = rand_segments(x, x_lens, segment_size=3) - assert segments.shape == (2, 3, 3) - assert all(seg_idxs >= 0), seg_idxs - try: - segments, _ = rand_segments(x, x_lens, segment_size=5) - raise Exception("Should have failed") - except: - pass - x_lens_back = x_lens.clone() - segments, seg_idxs = rand_segments(x, x_lens.clone(), segment_size=5, pad_short=True, let_short_samples=True) - assert segments.shape == (2, 3, 5) - assert all(seg_idxs >= 0), seg_idxs - assert all(x_lens_back == x_lens) - - -def generate_path_test(): - durations = T.randint(1, 4, (10, 21)) - x_length = T.randint(18, 22, (10,)) - x_mask = sequence_mask(x_length).unsqueeze(1).long() - durations = durations * x_mask.squeeze(1) - y_length = durations.sum(1) - y_mask = sequence_mask(y_length).unsqueeze(1).long() - attn_mask = (T.unsqueeze(x_mask, -1) * T.unsqueeze(y_mask, 2)).squeeze(1).long() - print(attn_mask.shape) - path = generate_path(durations, attn_mask) - assert path.shape == (10, 21, durations.sum(1).max().item()) - for b in range(durations.shape[0]): - current_idx = 0 - for t in range(durations.shape[1]): - assert all(path[b, t, current_idx : current_idx + durations[b, t].item()] == 1.0) - assert all(path[b, t, :current_idx] == 0.0) - assert all(path[b, t, current_idx + durations[b, t].item() :] == 0.0) - current_idx += durations[b, t].item() diff --git a/TTS/tests/tts_tests/test_losses.py b/TTS/tests/tts_tests/test_losses.py deleted file mode 100644 index 522b7bb17ca59ee62d2b1de7245a3eab91339417..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_losses.py +++ /dev/null @@ -1,239 +0,0 @@ -import unittest - -import torch as T - -from TTS.tts.layers.losses import BCELossMasked, L1LossMasked, MSELossMasked, SSIMLoss -from TTS.tts.utils.helpers import sequence_mask - - -class L1LossMaskedTests(unittest.TestCase): - def test_in_out(self): # pylint: disable=no-self-use - # test input == target - layer = L1LossMasked(seq_len_norm=False) - dummy_input = T.ones(4, 8, 128).float() - dummy_target = T.ones(4, 8, 128).float() - dummy_length = (T.ones(4) * 8).long() - output = layer(dummy_input, dummy_target, dummy_length) - assert output.item() == 0.0 - - # test input != target - dummy_input = T.ones(4, 8, 128).float() - dummy_target = T.zeros(4, 8, 128).float() - dummy_length = (T.ones(4) * 8).long() - output = layer(dummy_input, dummy_target, dummy_length) - assert output.item() == 1.0, "1.0 vs {}".format(output.item()) - - # test if padded values of input makes any difference - dummy_input = T.ones(4, 8, 128).float() - dummy_target = T.zeros(4, 8, 128).float() - dummy_length = (T.arange(5, 9)).long() - mask = ((sequence_mask(dummy_length).float() - 1.0) * 100.0).unsqueeze(2) - output = layer(dummy_input + mask, dummy_target, dummy_length) - assert output.item() == 1.0, "1.0 vs {}".format(output.item()) - - dummy_input = T.rand(4, 8, 128).float() - dummy_target = dummy_input.detach() - dummy_length = (T.arange(5, 9)).long() - mask = ((sequence_mask(dummy_length).float() - 1.0) * 100.0).unsqueeze(2) - output = layer(dummy_input + mask, dummy_target, dummy_length) - assert output.item() == 0, "0 vs {}".format(output.item()) - - # seq_len_norm = True - # test input == target - layer = L1LossMasked(seq_len_norm=True) - dummy_input = T.ones(4, 8, 128).float() - dummy_target = T.ones(4, 8, 128).float() - dummy_length = (T.ones(4) * 8).long() - output = layer(dummy_input, dummy_target, dummy_length) - assert output.item() == 0.0 - - # test input != target - dummy_input = T.ones(4, 8, 128).float() - dummy_target = T.zeros(4, 8, 128).float() - dummy_length = (T.ones(4) * 8).long() - output = layer(dummy_input, dummy_target, dummy_length) - assert output.item() == 1.0, "1.0 vs {}".format(output.item()) - - # test if padded values of input makes any difference - dummy_input = T.ones(4, 8, 128).float() - dummy_target = T.zeros(4, 8, 128).float() - dummy_length = (T.arange(5, 9)).long() - mask = ((sequence_mask(dummy_length).float() - 1.0) * 100.0).unsqueeze(2) - output = layer(dummy_input + mask, dummy_target, dummy_length) - assert abs(output.item() - 1.0) < 1e-5, "1.0 vs {}".format(output.item()) - - dummy_input = T.rand(4, 8, 128).float() - dummy_target = dummy_input.detach() - dummy_length = (T.arange(5, 9)).long() - mask = ((sequence_mask(dummy_length).float() - 1.0) * 100.0).unsqueeze(2) - output = layer(dummy_input + mask, dummy_target, dummy_length) - assert output.item() == 0, "0 vs {}".format(output.item()) - - -class MSELossMaskedTests(unittest.TestCase): - def test_in_out(self): # pylint: disable=no-self-use - # test input == target - layer = MSELossMasked(seq_len_norm=False) - dummy_input = T.ones(4, 8, 128).float() - dummy_target = T.ones(4, 8, 128).float() - dummy_length = (T.ones(4) * 8).long() - output = layer(dummy_input, dummy_target, dummy_length) - assert output.item() == 0.0 - - # test input != target - dummy_input = T.ones(4, 8, 128).float() - dummy_target = T.zeros(4, 8, 128).float() - dummy_length = (T.ones(4) * 8).long() - output = layer(dummy_input, dummy_target, dummy_length) - assert output.item() == 1.0, "1.0 vs {}".format(output.item()) - - # test if padded values of input makes any difference - dummy_input = T.ones(4, 8, 128).float() - dummy_target = T.zeros(4, 8, 128).float() - dummy_length = (T.arange(5, 9)).long() - mask = ((sequence_mask(dummy_length).float() - 1.0) * 100.0).unsqueeze(2) - output = layer(dummy_input + mask, dummy_target, dummy_length) - assert output.item() == 1.0, "1.0 vs {}".format(output.item()) - - dummy_input = T.rand(4, 8, 128).float() - dummy_target = dummy_input.detach() - dummy_length = (T.arange(5, 9)).long() - mask = ((sequence_mask(dummy_length).float() - 1.0) * 100.0).unsqueeze(2) - output = layer(dummy_input + mask, dummy_target, dummy_length) - assert output.item() == 0, "0 vs {}".format(output.item()) - - # seq_len_norm = True - # test input == target - layer = MSELossMasked(seq_len_norm=True) - dummy_input = T.ones(4, 8, 128).float() - dummy_target = T.ones(4, 8, 128).float() - dummy_length = (T.ones(4) * 8).long() - output = layer(dummy_input, dummy_target, dummy_length) - assert output.item() == 0.0 - - # test input != target - dummy_input = T.ones(4, 8, 128).float() - dummy_target = T.zeros(4, 8, 128).float() - dummy_length = (T.ones(4) * 8).long() - output = layer(dummy_input, dummy_target, dummy_length) - assert output.item() == 1.0, "1.0 vs {}".format(output.item()) - - # test if padded values of input makes any difference - dummy_input = T.ones(4, 8, 128).float() - dummy_target = T.zeros(4, 8, 128).float() - dummy_length = (T.arange(5, 9)).long() - mask = ((sequence_mask(dummy_length).float() - 1.0) * 100.0).unsqueeze(2) - output = layer(dummy_input + mask, dummy_target, dummy_length) - assert abs(output.item() - 1.0) < 1e-5, "1.0 vs {}".format(output.item()) - - dummy_input = T.rand(4, 8, 128).float() - dummy_target = dummy_input.detach() - dummy_length = (T.arange(5, 9)).long() - mask = ((sequence_mask(dummy_length).float() - 1.0) * 100.0).unsqueeze(2) - output = layer(dummy_input + mask, dummy_target, dummy_length) - assert output.item() == 0, "0 vs {}".format(output.item()) - - -class SSIMLossTests(unittest.TestCase): - def test_in_out(self): # pylint: disable=no-self-use - # test input == target - layer = SSIMLoss() - dummy_input = T.ones(4, 57, 128).float() - dummy_target = T.ones(4, 57, 128).float() - dummy_length = (T.ones(4) * 8).long() - output = layer(dummy_input, dummy_target, dummy_length) - assert output.item() == 0.0 - - # test input != target - dummy_input = T.arange(0, 4 * 57 * 128) - dummy_input = dummy_input.reshape(4, 57, 128).float() - dummy_target = T.arange(-4 * 57 * 128, 0) - dummy_target = dummy_target.reshape(4, 57, 128).float() - dummy_target = -dummy_target - - dummy_length = (T.ones(4) * 58).long() - output = layer(dummy_input, dummy_target, dummy_length) - assert output.item() >= 1.0, "0 vs {}".format(output.item()) - - # test if padded values of input makes any difference - dummy_input = T.ones(4, 57, 128).float() - dummy_target = T.zeros(4, 57, 128).float() - dummy_length = (T.arange(54, 58)).long() - mask = ((sequence_mask(dummy_length).float() - 1.0) * 100.0).unsqueeze(2) - output = layer(dummy_input + mask, dummy_target, dummy_length) - assert output.item() == 0.0 - - dummy_input = T.rand(4, 57, 128).float() - dummy_target = dummy_input.detach() - dummy_length = (T.arange(54, 58)).long() - mask = ((sequence_mask(dummy_length).float() - 1.0) * 100.0).unsqueeze(2) - output = layer(dummy_input + mask, dummy_target, dummy_length) - assert output.item() == 0, "0 vs {}".format(output.item()) - - # seq_len_norm = True - # test input == target - layer = L1LossMasked(seq_len_norm=True) - dummy_input = T.ones(4, 57, 128).float() - dummy_target = T.ones(4, 57, 128).float() - dummy_length = (T.ones(4) * 8).long() - output = layer(dummy_input, dummy_target, dummy_length) - assert output.item() == 0.0 - - # test input != target - dummy_input = T.ones(4, 57, 128).float() - dummy_target = T.zeros(4, 57, 128).float() - dummy_length = (T.ones(4) * 8).long() - output = layer(dummy_input, dummy_target, dummy_length) - assert output.item() == 1.0, "1.0 vs {}".format(output.item()) - - # test if padded values of input makes any difference - dummy_input = T.ones(4, 57, 128).float() - dummy_target = T.zeros(4, 57, 128).float() - dummy_length = (T.arange(54, 58)).long() - mask = ((sequence_mask(dummy_length).float() - 1.0) * 100.0).unsqueeze(2) - output = layer(dummy_input + mask, dummy_target, dummy_length) - assert abs(output.item() - 1.0) < 1e-5, "1.0 vs {}".format(output.item()) - - dummy_input = T.rand(4, 57, 128).float() - dummy_target = dummy_input.detach() - dummy_length = (T.arange(54, 58)).long() - mask = ((sequence_mask(dummy_length).float() - 1.0) * 100.0).unsqueeze(2) - output = layer(dummy_input + mask, dummy_target, dummy_length) - assert output.item() == 0, "0 vs {}".format(output.item()) - - -class BCELossTest(unittest.TestCase): - def test_in_out(self): # pylint: disable=no-self-use - layer = BCELossMasked(pos_weight=5.0) - - length = T.tensor([95]) - target = ( - 1.0 - sequence_mask(length - 1, 100).float() - ) # [0, 0, .... 1, 1] where the first 1 is the last mel frame - true_x = target * 200 - 100 # creates logits of [-100, -100, ... 100, 100] corresponding to target - zero_x = T.zeros(target.shape) - 100.0 # simulate logits if it never stops decoding - early_x = -200.0 * sequence_mask(length - 3, 100).float() + 100.0 # simulate logits on early stopping - late_x = -200.0 * sequence_mask(length + 1, 100).float() + 100.0 # simulate logits on late stopping - - loss = layer(true_x, target, length) - self.assertEqual(loss.item(), 0.0) - - loss = layer(early_x, target, length) - self.assertAlmostEqual(loss.item(), 2.1053, places=4) - - loss = layer(late_x, target, length) - self.assertAlmostEqual(loss.item(), 5.2632, places=4) - - loss = layer(zero_x, target, length) - self.assertAlmostEqual(loss.item(), 5.2632, places=4) - - # pos_weight should be < 1 to penalize early stopping - layer = BCELossMasked(pos_weight=0.2) - loss = layer(true_x, target, length) - self.assertEqual(loss.item(), 0.0) - - # when pos_weight < 1 overweight the early stopping loss - - loss_early = layer(early_x, target, length) - loss_late = layer(late_x, target, length) - self.assertGreater(loss_early.item(), loss_late.item()) diff --git a/TTS/tests/tts_tests/test_neuralhmm_tts_train.py b/TTS/tests/tts_tests/test_neuralhmm_tts_train.py deleted file mode 100644 index 25d9aa8148aff95a75aad823eb8d7bff13f09e12..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_neuralhmm_tts_train.py +++ /dev/null @@ -1,92 +0,0 @@ -import glob -import json -import os -import shutil - -import torch -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.neuralhmm_tts_config import NeuralhmmTTSConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") -parameter_path = os.path.join(get_tests_output_path(), "lj_parameters.pt") - -torch.save({"mean": -5.5138, "std": 2.0636, "init_transition_prob": 0.3212}, parameter_path) - -config = NeuralhmmTTSConfig( - batch_size=3, - eval_batch_size=3, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(get_tests_output_path(), "train_outputs/phoneme_cache/"), - run_eval=True, - test_delay_epochs=-1, - mel_statistics_parameter_path=parameter_path, - epochs=1, - print_step=1, - test_sentences=[ - "Be a voice, not an echo.", - ], - print_eval=True, - max_sampling_time=50, -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - - -# train the model for one epoch when mel parameters exists -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.test_delay_epochs 0 " -) -run_cli(command_train) - - -# train the model for one epoch when mel parameters have to be computed from the dataset -if os.path.exists(parameter_path): - os.remove(parameter_path) -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.test_delay_epochs 0 " -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests/test_overflow.py b/TTS/tests/tts_tests/test_overflow.py deleted file mode 100644 index 01c447198f1bc0ebd4f330299d3387c9911fd344..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_overflow.py +++ /dev/null @@ -1,399 +0,0 @@ -import os -import random -import unittest -from copy import deepcopy - -import torch - -from tests import get_tests_output_path -from TTS.tts.configs.overflow_config import OverflowConfig -from TTS.tts.layers.overflow.common_layers import Encoder, Outputnet, OverflowUtils -from TTS.tts.layers.overflow.decoder import Decoder -from TTS.tts.layers.overflow.neural_hmm import EmissionModel, NeuralHMM, TransitionModel -from TTS.tts.models.overflow import Overflow -from TTS.tts.utils.helpers import sequence_mask -from TTS.utils.audio import AudioProcessor - -# pylint: disable=unused-variable - -torch.manual_seed(1) -use_cuda = torch.cuda.is_available() -device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") - -config_global = OverflowConfig(num_chars=24) -ap = AudioProcessor.init_from_config(config_global) - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") -parameter_path = os.path.join(get_tests_output_path(), "lj_parameters.pt") - -torch.save({"mean": -5.5138, "std": 2.0636, "init_transition_prob": 0.3212}, parameter_path) - - -def _create_inputs(batch_size=8): - max_len_t, max_len_m = random.randint(25, 50), random.randint(50, 80) - input_dummy = torch.randint(0, 24, (batch_size, max_len_t)).long().to(device) - input_lengths = torch.randint(20, max_len_t, (batch_size,)).long().to(device).sort(descending=True)[0] - input_lengths[0] = max_len_t - input_dummy = input_dummy * sequence_mask(input_lengths) - mel_spec = torch.randn(batch_size, max_len_m, config_global.audio["num_mels"]).to(device) - mel_lengths = torch.randint(40, max_len_m, (batch_size,)).long().to(device).sort(descending=True)[0] - mel_lengths[0] = max_len_m - mel_spec = mel_spec * sequence_mask(mel_lengths).unsqueeze(2) - return input_dummy, input_lengths, mel_spec, mel_lengths - - -def get_model(config=None): - if config is None: - config = config_global - config.mel_statistics_parameter_path = parameter_path - model = Overflow(config) - model = model.to(device) - return model - - -def reset_all_weights(model): - """ - refs: - - https://discuss.pytorch.org/t/how-to-re-set-alll-parameters-in-a-network/20819/6 - - https://stackoverflow.com/questions/63627997/reset-parameters-of-a-neural-network-in-pytorch - - https://pytorch.org/docs/stable/generated/torch.nn.Module.html - """ - - @torch.no_grad() - def weight_reset(m): - # - check if the current module has reset_parameters & if it's callabed called it on m - reset_parameters = getattr(m, "reset_parameters", None) - if callable(reset_parameters): - m.reset_parameters() - - # Applies fn recursively to every submodule see: https://pytorch.org/docs/stable/generated/torch.nn.Module.html - model.apply(fn=weight_reset) - - -class TestOverflow(unittest.TestCase): - def test_forward(self): - model = get_model() - input_dummy, input_lengths, mel_spec, mel_lengths = _create_inputs() - outputs = model(input_dummy, input_lengths, mel_spec, mel_lengths) - self.assertEqual(outputs["log_probs"].shape, (input_dummy.shape[0],)) - self.assertEqual(model.state_per_phone * max(input_lengths), outputs["alignments"].shape[2]) - - def test_inference(self): - model = get_model() - input_dummy, input_lengths, mel_spec, mel_lengths = _create_inputs() - output_dict = model.inference(input_dummy) - self.assertEqual(output_dict["model_outputs"].shape[2], config_global.out_channels) - - def test_init_from_config(self): - config = deepcopy(config_global) - config.mel_statistics_parameter_path = parameter_path - config.prenet_dim = 256 - model = Overflow.init_from_config(config_global) - self.assertEqual(model.prenet_dim, config.prenet_dim) - - -class TestOverflowEncoder(unittest.TestCase): - @staticmethod - def get_encoder(state_per_phone): - config = deepcopy(config_global) - config.state_per_phone = state_per_phone - config.num_chars = 24 - return Encoder(config.num_chars, config.state_per_phone, config.prenet_dim, config.encoder_n_convolutions).to( - device - ) - - def test_forward_with_state_per_phone_multiplication(self): - for s_p_p in [1, 2, 3]: - input_dummy, input_lengths, _, _ = _create_inputs() - model = self.get_encoder(s_p_p) - x, x_len = model(input_dummy, input_lengths) - self.assertEqual(x.shape[1], input_dummy.shape[1] * s_p_p) - - def test_inference_with_state_per_phone_multiplication(self): - for s_p_p in [1, 2, 3]: - input_dummy, input_lengths, _, _ = _create_inputs() - model = self.get_encoder(s_p_p) - x, x_len = model.inference(input_dummy, input_lengths) - self.assertEqual(x.shape[1], input_dummy.shape[1] * s_p_p) - - -class TestOverflowUtils(unittest.TestCase): - def test_logsumexp(self): - a = torch.randn(10) # random numbers - self.assertTrue(torch.eq(torch.logsumexp(a, dim=0), OverflowUtils.logsumexp(a, dim=0)).all()) - - a = torch.zeros(10) # all zeros - self.assertTrue(torch.eq(torch.logsumexp(a, dim=0), OverflowUtils.logsumexp(a, dim=0)).all()) - - a = torch.ones(10) # all ones - self.assertTrue(torch.eq(torch.logsumexp(a, dim=0), OverflowUtils.logsumexp(a, dim=0)).all()) - - -class TestOverflowDecoder(unittest.TestCase): - @staticmethod - def _get_decoder(num_flow_blocks_dec=None, hidden_channels_dec=None, reset_weights=True): - config = deepcopy(config_global) - config.num_flow_blocks_dec = ( - num_flow_blocks_dec if num_flow_blocks_dec is not None else config.num_flow_blocks_dec - ) - config.hidden_channels_dec = ( - hidden_channels_dec if hidden_channels_dec is not None else config.hidden_channels_dec - ) - config.dropout_p_dec = 0.0 # turn off dropout to check invertibility - decoder = Decoder( - config.out_channels, - config.hidden_channels_dec, - config.kernel_size_dec, - config.dilation_rate, - config.num_flow_blocks_dec, - config.num_block_layers, - config.dropout_p_dec, - config.num_splits, - config.num_squeeze, - config.sigmoid_scale, - config.c_in_channels, - ).to(device) - if reset_weights: - reset_all_weights(decoder) - return decoder - - def test_decoder_forward_backward(self): - for num_flow_blocks_dec in [8, None]: - for hidden_channels_dec in [100, None]: - decoder = self._get_decoder(num_flow_blocks_dec, hidden_channels_dec) - _, _, mel_spec, mel_lengths = _create_inputs() - z, z_len, _ = decoder(mel_spec.transpose(1, 2), mel_lengths) - mel_spec_, mel_lengths_, _ = decoder(z, z_len, reverse=True) - mask = sequence_mask(z_len).unsqueeze(1) - mel_spec = mel_spec[:, : z.shape[2], :].transpose(1, 2) * mask - z = z * mask - self.assertTrue( - torch.isclose(mel_spec, mel_spec_, atol=1e-2).all(), - f"num_flow_blocks_dec={num_flow_blocks_dec}, hidden_channels_dec={hidden_channels_dec}", - ) - - -class TestNeuralHMM(unittest.TestCase): - @staticmethod - def _get_neural_hmm(deterministic_transition=None): - config = deepcopy(config_global) - neural_hmm = NeuralHMM( - config.out_channels, - config.ar_order, - config.deterministic_transition if deterministic_transition is None else deterministic_transition, - config.encoder_in_out_features, - config.prenet_type, - config.prenet_dim, - config.prenet_n_layers, - config.prenet_dropout, - config.prenet_dropout_at_inference, - config.memory_rnn_dim, - config.outputnet_size, - config.flat_start_params, - config.std_floor, - ).to(device) - return neural_hmm - - @staticmethod - def _get_emission_model(): - return EmissionModel().to(device) - - @staticmethod - def _get_transition_model(): - return TransitionModel().to(device) - - @staticmethod - def _get_embedded_input(): - input_dummy, input_lengths, mel_spec, mel_lengths = _create_inputs() - input_dummy = torch.nn.Embedding(config_global.num_chars, config_global.encoder_in_out_features).to(device)( - input_dummy - ) - return input_dummy, input_lengths, mel_spec, mel_lengths - - def test_neural_hmm_forward(self): - input_dummy, input_lengths, mel_spec, mel_lengths = self._get_embedded_input() - neural_hmm = self._get_neural_hmm() - log_prob, log_alpha_scaled, transition_matrix, means = neural_hmm( - input_dummy, input_lengths, mel_spec.transpose(1, 2), mel_lengths - ) - self.assertEqual(log_prob.shape, (input_dummy.shape[0],)) - self.assertEqual(log_alpha_scaled.shape, transition_matrix.shape) - - def test_mask_lengths(self): - input_dummy, input_lengths, mel_spec, mel_lengths = self._get_embedded_input() - neural_hmm = self._get_neural_hmm() - log_prob, log_alpha_scaled, transition_matrix, means = neural_hmm( - input_dummy, input_lengths, mel_spec.transpose(1, 2), mel_lengths - ) - log_c = torch.randn(mel_spec.shape[0], mel_spec.shape[1], device=device) - log_c, log_alpha_scaled = neural_hmm._mask_lengths( # pylint: disable=protected-access - mel_lengths, log_c, log_alpha_scaled - ) - assertions = [] - for i in range(mel_spec.shape[0]): - assertions.append(log_c[i, mel_lengths[i] :].sum() == 0.0) - self.assertTrue(all(assertions), "Incorrect masking") - assertions = [] - for i in range(mel_spec.shape[0]): - assertions.append(log_alpha_scaled[i, mel_lengths[i] :, : input_lengths[i]].sum() == 0.0) - self.assertTrue(all(assertions), "Incorrect masking") - - def test_process_ar_timestep(self): - model = self._get_neural_hmm() - input_dummy, input_lengths, mel_spec, mel_lengths = self._get_embedded_input() - - h_post_prenet, c_post_prenet = model._init_lstm_states( # pylint: disable=protected-access - input_dummy.shape[0], config_global.memory_rnn_dim, mel_spec - ) - h_post_prenet, c_post_prenet = model._process_ar_timestep( # pylint: disable=protected-access - 1, - mel_spec, - h_post_prenet, - c_post_prenet, - ) - - self.assertEqual(h_post_prenet.shape, (input_dummy.shape[0], config_global.memory_rnn_dim)) - self.assertEqual(c_post_prenet.shape, (input_dummy.shape[0], config_global.memory_rnn_dim)) - - def test_add_go_token(self): - model = self._get_neural_hmm() - input_dummy, input_lengths, mel_spec, mel_lengths = self._get_embedded_input() - - out = model._add_go_token(mel_spec) # pylint: disable=protected-access - self.assertEqual(out.shape, mel_spec.shape) - self.assertTrue((out[:, 1:] == mel_spec[:, :-1]).all(), "Go token not appended properly") - - def test_forward_algorithm_variables(self): - model = self._get_neural_hmm() - input_dummy, input_lengths, mel_spec, mel_lengths = self._get_embedded_input() - - ( - log_c, - log_alpha_scaled, - transition_matrix, - _, - ) = model._initialize_forward_algorithm_variables( # pylint: disable=protected-access - mel_spec, input_dummy.shape[1] * config_global.state_per_phone - ) - - self.assertEqual(log_c.shape, (mel_spec.shape[0], mel_spec.shape[1])) - self.assertEqual( - log_alpha_scaled.shape, - ( - mel_spec.shape[0], - mel_spec.shape[1], - input_dummy.shape[1] * config_global.state_per_phone, - ), - ) - self.assertEqual( - transition_matrix.shape, - (mel_spec.shape[0], mel_spec.shape[1], input_dummy.shape[1] * config_global.state_per_phone), - ) - - def test_get_absorption_state_scaling_factor(self): - model = self._get_neural_hmm() - input_dummy, input_lengths, mel_spec, mel_lengths = self._get_embedded_input() - input_lengths = input_lengths * config_global.state_per_phone - ( - log_c, - log_alpha_scaled, - transition_matrix, - _, - ) = model._initialize_forward_algorithm_variables( # pylint: disable=protected-access - mel_spec, input_dummy.shape[1] * config_global.state_per_phone - ) - log_alpha_scaled = torch.rand_like(log_alpha_scaled).clamp(1e-3) - transition_matrix = torch.randn_like(transition_matrix).sigmoid().log() - sum_final_log_c = model.get_absorption_state_scaling_factor( - mel_lengths, log_alpha_scaled, input_lengths, transition_matrix - ) - - text_mask = ~sequence_mask(input_lengths) - transition_prob_mask = ~model.get_mask_for_last_item(input_lengths, device=input_lengths.device) - - outputs = [] - - for i in range(input_dummy.shape[0]): - last_log_alpha_scaled = log_alpha_scaled[i, mel_lengths[i] - 1].masked_fill(text_mask[i], -float("inf")) - log_last_transition_probability = OverflowUtils.log_clamped( - torch.sigmoid(transition_matrix[i, mel_lengths[i] - 1]) - ).masked_fill(transition_prob_mask[i], -float("inf")) - outputs.append(last_log_alpha_scaled + log_last_transition_probability) - - sum_final_log_c_computed = torch.logsumexp(torch.stack(outputs), dim=1) - - self.assertTrue(torch.isclose(sum_final_log_c_computed, sum_final_log_c).all()) - - def test_inference(self): - model = self._get_neural_hmm() - input_dummy, input_lengths, mel_spec, mel_lengths = self._get_embedded_input() - for temp in [0.334, 0.667, 1.0]: - outputs = model.inference( - input_dummy, input_lengths, temp, config_global.max_sampling_time, config_global.duration_threshold - ) - self.assertEqual(outputs["hmm_outputs"].shape[-1], outputs["input_parameters"][0][0][0].shape[-1]) - self.assertEqual( - outputs["output_parameters"][0][0][0].shape[-1], outputs["input_parameters"][0][0][0].shape[-1] - ) - self.assertEqual(len(outputs["alignments"]), input_dummy.shape[0]) - - def test_emission_model(self): - model = self._get_emission_model() - input_dummy, input_lengths, mel_spec, mel_lengths = self._get_embedded_input() - x_t = torch.randn(input_dummy.shape[0], config_global.out_channels).to(device) - means = torch.randn(input_dummy.shape[0], input_dummy.shape[1], config_global.out_channels).to(device) - std = torch.rand_like(means).to(device).clamp_(1e-3) # std should be positive - out = model(x_t, means, std, input_lengths) - self.assertEqual(out.shape, (input_dummy.shape[0], input_dummy.shape[1])) - - # testing sampling - for temp in [0, 0.334, 0.667]: - out = model.sample(means, std, 0) - self.assertEqual(out.shape, means.shape) - if temp == 0: - self.assertTrue(torch.isclose(out, means).all()) - - def test_transition_model(self): - model = self._get_transition_model() - input_dummy, input_lengths, mel_spec, mel_lengths = self._get_embedded_input() - prev_t_log_scaled_alph = torch.randn(input_dummy.shape[0], input_lengths.max()).to(device) - transition_vector = torch.randn(input_lengths.max()).to(device) - out = model(prev_t_log_scaled_alph, transition_vector, input_lengths) - self.assertEqual(out.shape, (input_dummy.shape[0], input_lengths.max())) - - -class TestOverflowOutputNet(unittest.TestCase): - @staticmethod - def _get_outputnet(): - config = deepcopy(config_global) - outputnet = Outputnet( - config.encoder_in_out_features, - config.memory_rnn_dim, - config.out_channels, - config.outputnet_size, - config.flat_start_params, - config.std_floor, - ).to(device) - return outputnet - - @staticmethod - def _get_embedded_input(): - input_dummy, input_lengths, mel_spec, mel_lengths = _create_inputs() - input_dummy = torch.nn.Embedding(config_global.num_chars, config_global.encoder_in_out_features).to(device)( - input_dummy - ) - one_timestep_frame = torch.randn(input_dummy.shape[0], config_global.memory_rnn_dim).to(device) - return input_dummy, one_timestep_frame - - def test_outputnet_forward_with_flat_start(self): - model = self._get_outputnet() - input_dummy, one_timestep_frame = self._get_embedded_input() - mean, std, transition_vector = model(one_timestep_frame, input_dummy) - self.assertTrue(torch.isclose(mean, torch.tensor(model.flat_start_params["mean"] * 1.0)).all()) - self.assertTrue(torch.isclose(std, torch.tensor(model.flat_start_params["std"] * 1.0)).all()) - self.assertTrue( - torch.isclose( - transition_vector.sigmoid(), torch.tensor(model.flat_start_params["transition_p"] * 1.0) - ).all() - ) diff --git a/TTS/tests/tts_tests/test_overflow_train.py b/TTS/tests/tts_tests/test_overflow_train.py deleted file mode 100644 index 86fa60af72b7cda704aa6e1618793f2d52d463af..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_overflow_train.py +++ /dev/null @@ -1,92 +0,0 @@ -import glob -import json -import os -import shutil - -import torch -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.overflow_config import OverflowConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") -parameter_path = os.path.join(get_tests_output_path(), "lj_parameters.pt") - -torch.save({"mean": -5.5138, "std": 2.0636, "init_transition_prob": 0.3212}, parameter_path) - -config = OverflowConfig( - batch_size=3, - eval_batch_size=3, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="phoneme_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(get_tests_output_path(), "train_outputs/phoneme_cache/"), - run_eval=True, - test_delay_epochs=-1, - mel_statistics_parameter_path=parameter_path, - epochs=1, - print_step=1, - test_sentences=[ - "Be a voice, not an echo.", - ], - print_eval=True, - max_sampling_time=50, -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - - -# train the model for one epoch when mel parameters exists -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.test_delay_epochs 0 " -) -run_cli(command_train) - - -# train the model for one epoch when mel parameters have to be computed from the dataset -if os.path.exists(parameter_path): - os.remove(parameter_path) -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.test_delay_epochs 0 " -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests/test_speedy_speech_train.py b/TTS/tests/tts_tests/test_speedy_speech_train.py deleted file mode 100644 index 530781ef887d17a290b65810d0f3c5760217c920..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_speedy_speech_train.py +++ /dev/null @@ -1,72 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.speedy_speech_config import SpeedySpeechConfig - -config_path = os.path.join(get_tests_output_path(), "test_speedy_speech_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -config = SpeedySpeechConfig( - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - test_sentences=[ - "Be a voice, not an echo.", - ], -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.datasets.0.meta_file_attn_mask tests/data/ljspeech/metadata_attn_mask.txt " - "--coqpit.test_delay_epochs 0" -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example for it.' --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests/test_tacotron2_d-vectors_train.py b/TTS/tests/tts_tests/test_tacotron2_d-vectors_train.py deleted file mode 100644 index 99ba4349c48fcc10a352459d9d5d5f64c0b7a4de..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_tacotron2_d-vectors_train.py +++ /dev/null @@ -1,79 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.tacotron2_config import Tacotron2Config - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - -config = Tacotron2Config( - r=5, - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=False, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(get_tests_output_path(), "train_outputs/phoneme_cache/"), - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - use_speaker_embedding=False, - use_d_vector_file=True, - test_sentences=[ - "Be a voice, not an echo.", - ], - d_vector_file="tests/data/ljspeech/speakers.json", - d_vector_dim=256, - max_decoder_steps=50, -) - -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech_test " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.test_delay_epochs 0 " -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") -speaker_id = "ljspeech-1" -continue_speakers_path = config.d_vector_file - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --speaker_idx {speaker_id} --speakers_file_path {continue_speakers_path} --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests/test_tacotron2_model.py b/TTS/tests/tts_tests/test_tacotron2_model.py deleted file mode 100644 index b1bdeb9fd16536efe22c64f2309c46b7bae44e22..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_tacotron2_model.py +++ /dev/null @@ -1,390 +0,0 @@ -import copy -import os -import unittest - -import torch -from torch import nn, optim - -from tests import get_tests_input_path -from TTS.tts.configs.shared_configs import CapacitronVAEConfig, GSTConfig -from TTS.tts.configs.tacotron2_config import Tacotron2Config -from TTS.tts.layers.losses import MSELossMasked -from TTS.tts.models.tacotron2 import Tacotron2 -from TTS.utils.audio import AudioProcessor - -# pylint: disable=unused-variable - -torch.manual_seed(1) -use_cuda = torch.cuda.is_available() -device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") - -config_global = Tacotron2Config(num_chars=32, num_speakers=5, out_channels=80, decoder_output_dim=80) - -ap = AudioProcessor(**config_global.audio) -WAV_FILE = os.path.join(get_tests_input_path(), "example_1.wav") - - -class TacotronTrainTest(unittest.TestCase): - """Test vanilla Tacotron2 model.""" - - def test_train_step(self): # pylint: disable=no-self-use - config = config_global.copy() - config.use_speaker_embedding = False - config.num_speakers = 1 - - input_dummy = torch.randint(0, 24, (8, 128)).long().to(device) - input_lengths = torch.randint(100, 128, (8,)).long().to(device) - input_lengths = torch.sort(input_lengths, descending=True)[0] - mel_spec = torch.rand(8, 30, config.audio["num_mels"]).to(device) - mel_postnet_spec = torch.rand(8, 30, config.audio["num_mels"]).to(device) - mel_lengths = torch.randint(20, 30, (8,)).long().to(device) - mel_lengths[0] = 30 - stop_targets = torch.zeros(8, 30, 1).float().to(device) - - for idx in mel_lengths: - stop_targets[:, int(idx.item()) :, 0] = 1.0 - - stop_targets = stop_targets.view(input_dummy.shape[0], stop_targets.size(1) // config.r, -1) - stop_targets = (stop_targets.sum(2) > 0.0).unsqueeze(2).float().squeeze() - - criterion = MSELossMasked(seq_len_norm=False).to(device) - criterion_st = nn.BCEWithLogitsLoss().to(device) - model = Tacotron2(config).to(device) - model.train() - model_ref = copy.deepcopy(model) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count += 1 - optimizer = optim.Adam(model.parameters(), lr=config.lr) - for i in range(5): - outputs = model.forward(input_dummy, input_lengths, mel_spec, mel_lengths) - assert torch.sigmoid(outputs["stop_tokens"]).data.max() <= 1.0 - assert torch.sigmoid(outputs["stop_tokens"]).data.min() >= 0.0 - optimizer.zero_grad() - loss = criterion(outputs["decoder_outputs"], mel_spec, mel_lengths) - stop_loss = criterion_st(outputs["stop_tokens"], stop_targets) - loss = loss + criterion(outputs["model_outputs"], mel_postnet_spec, mel_lengths) + stop_loss - loss.backward() - optimizer.step() - # check parameter changes - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - # ignore pre-higway layer since it works conditional - # if count not in [145, 59]: - assert (param != param_ref).any(), "param {} with shape {} not updated!! \n{}\n{}".format( - count, param.shape, param, param_ref - ) - count += 1 - - -class MultiSpeakerTacotronTrainTest(unittest.TestCase): - """Test multi-speaker Tacotron2 with speaker embedding layer""" - - @staticmethod - def test_train_step(): - config = config_global.copy() - config.use_speaker_embedding = True - config.num_speakers = 5 - - input_dummy = torch.randint(0, 24, (8, 128)).long().to(device) - input_lengths = torch.randint(100, 128, (8,)).long().to(device) - input_lengths = torch.sort(input_lengths, descending=True)[0] - mel_spec = torch.rand(8, 30, config.audio["num_mels"]).to(device) - mel_postnet_spec = torch.rand(8, 30, config.audio["num_mels"]).to(device) - mel_lengths = torch.randint(20, 30, (8,)).long().to(device) - mel_lengths[0] = 30 - stop_targets = torch.zeros(8, 30, 1).float().to(device) - speaker_ids = torch.randint(0, 5, (8,)).long().to(device) - - for idx in mel_lengths: - stop_targets[:, int(idx.item()) :, 0] = 1.0 - - stop_targets = stop_targets.view(input_dummy.shape[0], stop_targets.size(1) // config.r, -1) - stop_targets = (stop_targets.sum(2) > 0.0).unsqueeze(2).float().squeeze() - - criterion = MSELossMasked(seq_len_norm=False).to(device) - criterion_st = nn.BCEWithLogitsLoss().to(device) - config.d_vector_dim = 55 - model = Tacotron2(config).to(device) - model.train() - model_ref = copy.deepcopy(model) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count += 1 - optimizer = optim.Adam(model.parameters(), lr=config.lr) - for _ in range(5): - outputs = model.forward( - input_dummy, input_lengths, mel_spec, mel_lengths, aux_input={"speaker_ids": speaker_ids} - ) - assert torch.sigmoid(outputs["stop_tokens"]).data.max() <= 1.0 - assert torch.sigmoid(outputs["stop_tokens"]).data.min() >= 0.0 - optimizer.zero_grad() - loss = criterion(outputs["decoder_outputs"], mel_spec, mel_lengths) - stop_loss = criterion_st(outputs["stop_tokens"], stop_targets) - loss = loss + criterion(outputs["model_outputs"], mel_postnet_spec, mel_lengths) + stop_loss - loss.backward() - optimizer.step() - # check parameter changes - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - # ignore pre-higway layer since it works conditional - # if count not in [145, 59]: - assert (param != param_ref).any(), "param {} with shape {} not updated!! \n{}\n{}".format( - count, param.shape, param, param_ref - ) - count += 1 - - -class TacotronGSTTrainTest(unittest.TestCase): - """Test multi-speaker Tacotron2 with Global Style Token and Speaker Embedding""" - - # pylint: disable=no-self-use - def test_train_step(self): - # with random gst mel style - config = config_global.copy() - config.use_speaker_embedding = True - config.num_speakers = 10 - config.use_gst = True - config.gst = GSTConfig() - - input_dummy = torch.randint(0, 24, (8, 128)).long().to(device) - input_lengths = torch.randint(100, 128, (8,)).long().to(device) - input_lengths = torch.sort(input_lengths, descending=True)[0] - mel_spec = torch.rand(8, 30, config.audio["num_mels"]).to(device) - mel_postnet_spec = torch.rand(8, 30, config.audio["num_mels"]).to(device) - mel_lengths = torch.randint(20, 30, (8,)).long().to(device) - mel_lengths[0] = 30 - stop_targets = torch.zeros(8, 30, 1).float().to(device) - speaker_ids = torch.randint(0, 5, (8,)).long().to(device) - - for idx in mel_lengths: - stop_targets[:, int(idx.item()) :, 0] = 1.0 - - stop_targets = stop_targets.view(input_dummy.shape[0], stop_targets.size(1) // config.r, -1) - stop_targets = (stop_targets.sum(2) > 0.0).unsqueeze(2).float().squeeze() - - criterion = MSELossMasked(seq_len_norm=False).to(device) - criterion_st = nn.BCEWithLogitsLoss().to(device) - config.use_gst = True - config.gst = GSTConfig() - model = Tacotron2(config).to(device) - model.train() - model_ref = copy.deepcopy(model) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count += 1 - optimizer = optim.Adam(model.parameters(), lr=config.lr) - for i in range(10): - outputs = model.forward( - input_dummy, input_lengths, mel_spec, mel_lengths, aux_input={"speaker_ids": speaker_ids} - ) - assert torch.sigmoid(outputs["stop_tokens"]).data.max() <= 1.0 - assert torch.sigmoid(outputs["stop_tokens"]).data.min() >= 0.0 - optimizer.zero_grad() - loss = criterion(outputs["decoder_outputs"], mel_spec, mel_lengths) - stop_loss = criterion_st(outputs["stop_tokens"], stop_targets) - loss = loss + criterion(outputs["model_outputs"], mel_postnet_spec, mel_lengths) + stop_loss - loss.backward() - optimizer.step() - # check parameter changes - count = 0 - for name_param, param_ref in zip(model.named_parameters(), model_ref.parameters()): - # ignore pre-higway layer since it works conditional - # if count not in [145, 59]: - name, param = name_param - if name == "gst_layer.encoder.recurrence.weight_hh_l0": - # print(param.grad) - continue - assert (param != param_ref).any(), "param {} {} with shape {} not updated!! \n{}\n{}".format( - name, count, param.shape, param, param_ref - ) - count += 1 - - # with file gst style - mel_spec = ( - torch.FloatTensor(ap.melspectrogram(ap.load_wav(WAV_FILE)))[:, :30].unsqueeze(0).transpose(1, 2).to(device) - ) - mel_spec = mel_spec.repeat(8, 1, 1) - input_dummy = torch.randint(0, 24, (8, 128)).long().to(device) - input_lengths = torch.randint(100, 128, (8,)).long().to(device) - input_lengths = torch.sort(input_lengths, descending=True)[0] - mel_postnet_spec = torch.rand(8, 30, config.audio["num_mels"]).to(device) - mel_lengths = torch.randint(20, 30, (8,)).long().to(device) - mel_lengths[0] = 30 - stop_targets = torch.zeros(8, 30, 1).float().to(device) - speaker_ids = torch.randint(0, 5, (8,)).long().to(device) - - for idx in mel_lengths: - stop_targets[:, int(idx.item()) :, 0] = 1.0 - - stop_targets = stop_targets.view(input_dummy.shape[0], stop_targets.size(1) // config.r, -1) - stop_targets = (stop_targets.sum(2) > 0.0).unsqueeze(2).float().squeeze() - - criterion = MSELossMasked(seq_len_norm=False).to(device) - criterion_st = nn.BCEWithLogitsLoss().to(device) - model = Tacotron2(config).to(device) - model.train() - model_ref = copy.deepcopy(model) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count += 1 - optimizer = optim.Adam(model.parameters(), lr=config.lr) - for i in range(10): - outputs = model.forward( - input_dummy, input_lengths, mel_spec, mel_lengths, aux_input={"speaker_ids": speaker_ids} - ) - assert torch.sigmoid(outputs["stop_tokens"]).data.max() <= 1.0 - assert torch.sigmoid(outputs["stop_tokens"]).data.min() >= 0.0 - optimizer.zero_grad() - loss = criterion(outputs["decoder_outputs"], mel_spec, mel_lengths) - stop_loss = criterion_st(outputs["stop_tokens"], stop_targets) - loss = loss + criterion(outputs["model_outputs"], mel_postnet_spec, mel_lengths) + stop_loss - loss.backward() - optimizer.step() - # check parameter changes - count = 0 - for name_param, param_ref in zip(model.named_parameters(), model_ref.parameters()): - # ignore pre-higway layer since it works conditional - # if count not in [145, 59]: - name, param = name_param - if name == "gst_layer.encoder.recurrence.weight_hh_l0": - # print(param.grad) - continue - assert (param != param_ref).any(), "param {} {} with shape {} not updated!! \n{}\n{}".format( - name, count, param.shape, param, param_ref - ) - count += 1 - - -class TacotronCapacitronTrainTest(unittest.TestCase): - @staticmethod - def test_train_step(): - config = Tacotron2Config( - num_chars=32, - num_speakers=10, - use_speaker_embedding=True, - out_channels=80, - decoder_output_dim=80, - use_capacitron_vae=True, - capacitron_vae=CapacitronVAEConfig(), - optimizer="CapacitronOptimizer", - optimizer_params={ - "RAdam": {"betas": [0.9, 0.998], "weight_decay": 1e-6}, - "SGD": {"lr": 1e-5, "momentum": 0.9}, - }, - ) - - batch = dict({}) - batch["text_input"] = torch.randint(0, 24, (8, 128)).long().to(device) - batch["text_lengths"] = torch.randint(100, 129, (8,)).long().to(device) - batch["text_lengths"] = torch.sort(batch["text_lengths"], descending=True)[0] - batch["text_lengths"][0] = 128 - batch["mel_input"] = torch.rand(8, 120, config.audio["num_mels"]).to(device) - batch["mel_lengths"] = torch.randint(20, 120, (8,)).long().to(device) - batch["mel_lengths"] = torch.sort(batch["mel_lengths"], descending=True)[0] - batch["mel_lengths"][0] = 120 - batch["stop_targets"] = torch.zeros(8, 120, 1).float().to(device) - batch["stop_target_lengths"] = torch.randint(0, 120, (8,)).to(device) - batch["speaker_ids"] = torch.randint(0, 5, (8,)).long().to(device) - batch["d_vectors"] = None - - for idx in batch["mel_lengths"]: - batch["stop_targets"][:, int(idx.item()) :, 0] = 1.0 - - batch["stop_targets"] = batch["stop_targets"].view( - batch["text_input"].shape[0], batch["stop_targets"].size(1) // config.r, -1 - ) - batch["stop_targets"] = (batch["stop_targets"].sum(2) > 0.0).unsqueeze(2).float().squeeze() - - model = Tacotron2(config).to(device) - criterion = model.get_criterion().to(device) - optimizer = model.get_optimizer() - - model.train() - model_ref = copy.deepcopy(model) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count += 1 - for _ in range(10): - _, loss_dict = model.train_step(batch, criterion) - optimizer.zero_grad() - loss_dict["capacitron_vae_beta_loss"].backward() - optimizer.first_step() - loss_dict["loss"].backward() - optimizer.step() - # check parameter changes - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - # ignore pre-higway layer since it works conditional - assert (param != param_ref).any(), "param {} with shape {} not updated!! \n{}\n{}".format( - count, param.shape, param, param_ref - ) - count += 1 - - -class SCGSTMultiSpeakeTacotronTrainTest(unittest.TestCase): - """Test multi-speaker Tacotron2 with Global Style Tokens and d-vector inputs.""" - - @staticmethod - def test_train_step(): - config = config_global.copy() - config.use_d_vector_file = True - - config.use_gst = True - config.gst = GSTConfig() - - input_dummy = torch.randint(0, 24, (8, 128)).long().to(device) - input_lengths = torch.randint(100, 128, (8,)).long().to(device) - input_lengths = torch.sort(input_lengths, descending=True)[0] - mel_spec = torch.rand(8, 30, config.audio["num_mels"]).to(device) - mel_postnet_spec = torch.rand(8, 30, config.audio["num_mels"]).to(device) - mel_lengths = torch.randint(20, 30, (8,)).long().to(device) - mel_lengths[0] = 30 - stop_targets = torch.zeros(8, 30, 1).float().to(device) - speaker_embeddings = torch.rand(8, 55).to(device) - - for idx in mel_lengths: - stop_targets[:, int(idx.item()) :, 0] = 1.0 - - stop_targets = stop_targets.view(input_dummy.shape[0], stop_targets.size(1) // config.r, -1) - stop_targets = (stop_targets.sum(2) > 0.0).unsqueeze(2).float().squeeze() - criterion = MSELossMasked(seq_len_norm=False).to(device) - criterion_st = nn.BCEWithLogitsLoss().to(device) - config.d_vector_dim = 55 - model = Tacotron2(config).to(device) - model.train() - model_ref = copy.deepcopy(model) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count += 1 - optimizer = optim.Adam(model.parameters(), lr=config.lr) - for i in range(5): - outputs = model.forward( - input_dummy, input_lengths, mel_spec, mel_lengths, aux_input={"d_vectors": speaker_embeddings} - ) - assert torch.sigmoid(outputs["stop_tokens"]).data.max() <= 1.0 - assert torch.sigmoid(outputs["stop_tokens"]).data.min() >= 0.0 - optimizer.zero_grad() - loss = criterion(outputs["decoder_outputs"], mel_spec, mel_lengths) - stop_loss = criterion_st(outputs["stop_tokens"], stop_targets) - loss = loss + criterion(outputs["model_outputs"], mel_postnet_spec, mel_lengths) + stop_loss - loss.backward() - optimizer.step() - # check parameter changes - count = 0 - for name_param, param_ref in zip(model.named_parameters(), model_ref.parameters()): - # ignore pre-higway layer since it works conditional - # if count not in [145, 59]: - name, param = name_param - if name == "gst_layer.encoder.recurrence.weight_hh_l0": - continue - assert (param != param_ref).any(), "param {} with shape {} not updated!! \n{}\n{}".format( - count, param.shape, param, param_ref - ) - count += 1 diff --git a/TTS/tests/tts_tests/test_tacotron2_speaker_emb_train.py b/TTS/tests/tts_tests/test_tacotron2_speaker_emb_train.py deleted file mode 100644 index 5f1bc3fd50bc3dfeabf4c4834d7492b11717dc43..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_tacotron2_speaker_emb_train.py +++ /dev/null @@ -1,77 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.tacotron2_config import Tacotron2Config - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - -config = Tacotron2Config( - r=5, - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=False, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(get_tests_output_path(), "train_outputs/phoneme_cache/"), - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - test_sentences=[ - "Be a voice, not an echo.", - ], - use_speaker_embedding=True, - num_speakers=4, - max_decoder_steps=50, -) - -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech_test " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.test_delay_epochs 0 " -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") -speaker_id = "ljspeech-1" -continue_speakers_path = os.path.join(continue_path, "speakers.json") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --speaker_idx {speaker_id} --speakers_file_path {continue_speakers_path} --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests/test_tacotron2_train.py b/TTS/tests/tts_tests/test_tacotron2_train.py deleted file mode 100644 index 40107070e1f19fbb8cf4e259b6a232c6d892357e..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_tacotron2_train.py +++ /dev/null @@ -1,72 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.tacotron2_config import Tacotron2Config - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - -config = Tacotron2Config( - r=5, - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=False, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(get_tests_output_path(), "train_outputs/phoneme_cache/"), - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - test_sentences=[ - "Be a voice, not an echo.", - ], - print_eval=True, - max_decoder_steps=50, -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.test_delay_epochs 0 " -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests/test_tacotron_layers.py b/TTS/tests/tts_tests/test_tacotron_layers.py deleted file mode 100644 index 43e72417c200493c6392b3acb131a43738dad2bd..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_tacotron_layers.py +++ /dev/null @@ -1,85 +0,0 @@ -import unittest - -import torch as T - -from TTS.tts.layers.tacotron.tacotron import CBHG, Decoder, Encoder, Prenet - -# pylint: disable=unused-variable - - -class PrenetTests(unittest.TestCase): - def test_in_out(self): # pylint: disable=no-self-use - layer = Prenet(128, out_features=[256, 128]) - dummy_input = T.rand(4, 128) - - print(layer) - output = layer(dummy_input) - assert output.shape[0] == 4 - assert output.shape[1] == 128 - - -class CBHGTests(unittest.TestCase): - def test_in_out(self): - # pylint: disable=attribute-defined-outside-init - layer = self.cbhg = CBHG( - 128, - K=8, - conv_bank_features=80, - conv_projections=[160, 128], - highway_features=80, - gru_features=80, - num_highways=4, - ) - # B x D x T - dummy_input = T.rand(4, 128, 8) - - print(layer) - output = layer(dummy_input) - assert output.shape[0] == 4 - assert output.shape[1] == 8 - assert output.shape[2] == 160 - - -class DecoderTests(unittest.TestCase): - @staticmethod - def test_in_out(): - layer = Decoder( - in_channels=256, - frame_channels=80, - r=2, - memory_size=4, - attn_windowing=False, - attn_norm="sigmoid", - attn_K=5, - attn_type="original", - prenet_type="original", - prenet_dropout=True, - forward_attn=True, - trans_agent=True, - forward_attn_mask=True, - location_attn=True, - separate_stopnet=True, - max_decoder_steps=50, - ) - dummy_input = T.rand(4, 8, 256) - dummy_memory = T.rand(4, 2, 80) - - output, alignment, stop_tokens = layer(dummy_input, dummy_memory, mask=None) - - assert output.shape[0] == 4 - assert output.shape[1] == 80, "size not {}".format(output.shape[1]) - assert output.shape[2] == 2, "size not {}".format(output.shape[2]) - assert stop_tokens.shape[0] == 4 - - -class EncoderTests(unittest.TestCase): - def test_in_out(self): # pylint: disable=no-self-use - layer = Encoder(128) - dummy_input = T.rand(4, 8, 128) - - print(layer) - output = layer(dummy_input) - print(output.shape) - assert output.shape[0] == 4 - assert output.shape[1] == 8 - assert output.shape[2] == 256 # 128 * 2 BiRNN diff --git a/TTS/tests/tts_tests/test_tacotron_model.py b/TTS/tests/tts_tests/test_tacotron_model.py deleted file mode 100644 index 906ec3d09f47ec4221aebc9f29eec41c3ecd6971..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_tacotron_model.py +++ /dev/null @@ -1,376 +0,0 @@ -import copy -import os -import unittest - -import torch -from torch import nn, optim - -from tests import get_tests_input_path -from TTS.tts.configs.shared_configs import CapacitronVAEConfig, GSTConfig -from TTS.tts.configs.tacotron_config import TacotronConfig -from TTS.tts.layers.losses import L1LossMasked -from TTS.tts.models.tacotron import Tacotron -from TTS.utils.audio import AudioProcessor - -# pylint: disable=unused-variable - -torch.manual_seed(1) -use_cuda = torch.cuda.is_available() -device = torch.device("cuda" if use_cuda else "cpu") - -config_global = TacotronConfig(num_chars=32, num_speakers=5, out_channels=513, decoder_output_dim=80) - -ap = AudioProcessor(**config_global.audio) -WAV_FILE = os.path.join(get_tests_input_path(), "example_1.wav") - - -def count_parameters(model): - r"""Count number of trainable parameters in a network""" - return sum(p.numel() for p in model.parameters() if p.requires_grad) - - -class TacotronTrainTest(unittest.TestCase): - @staticmethod - def test_train_step(): - config = config_global.copy() - config.use_speaker_embedding = False - config.num_speakers = 1 - - input_dummy = torch.randint(0, 24, (8, 128)).long().to(device) - input_lengths = torch.randint(100, 129, (8,)).long().to(device) - input_lengths[-1] = 128 - mel_spec = torch.rand(8, 30, config.audio["num_mels"]).to(device) - linear_spec = torch.rand(8, 30, config.audio["fft_size"] // 2 + 1).to(device) - mel_lengths = torch.randint(20, 30, (8,)).long().to(device) - mel_lengths[-1] = mel_spec.size(1) - stop_targets = torch.zeros(8, 30, 1).float().to(device) - - for idx in mel_lengths: - stop_targets[:, int(idx.item()) :, 0] = 1.0 - - stop_targets = stop_targets.view(input_dummy.shape[0], stop_targets.size(1) // config.r, -1) - stop_targets = (stop_targets.sum(2) > 0.0).unsqueeze(2).float().squeeze() - - criterion = L1LossMasked(seq_len_norm=False).to(device) - criterion_st = nn.BCEWithLogitsLoss().to(device) - model = Tacotron(config).to(device) # FIXME: missing num_speakers parameter to Tacotron ctor - model.train() - print(" > Num parameters for Tacotron model:%s" % (count_parameters(model))) - model_ref = copy.deepcopy(model) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count += 1 - optimizer = optim.Adam(model.parameters(), lr=config.lr) - for _ in range(5): - outputs = model.forward(input_dummy, input_lengths, mel_spec, mel_lengths) - optimizer.zero_grad() - loss = criterion(outputs["decoder_outputs"], mel_spec, mel_lengths) - stop_loss = criterion_st(outputs["stop_tokens"], stop_targets) - loss = loss + criterion(outputs["model_outputs"], linear_spec, mel_lengths) + stop_loss - loss.backward() - optimizer.step() - # check parameter changes - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - # ignore pre-higway layer since it works conditional - # if count not in [145, 59]: - assert (param != param_ref).any(), "param {} with shape {} not updated!! \n{}\n{}".format( - count, param.shape, param, param_ref - ) - count += 1 - - -class MultiSpeakeTacotronTrainTest(unittest.TestCase): - @staticmethod - def test_train_step(): - config = config_global.copy() - config.use_speaker_embedding = True - config.num_speakers = 5 - - input_dummy = torch.randint(0, 24, (8, 128)).long().to(device) - input_lengths = torch.randint(100, 129, (8,)).long().to(device) - input_lengths[-1] = 128 - mel_spec = torch.rand(8, 30, config.audio["num_mels"]).to(device) - linear_spec = torch.rand(8, 30, config.audio["fft_size"] // 2 + 1).to(device) - mel_lengths = torch.randint(20, 30, (8,)).long().to(device) - mel_lengths[-1] = mel_spec.size(1) - stop_targets = torch.zeros(8, 30, 1).float().to(device) - speaker_ids = torch.randint(0, 5, (8,)).long().to(device) - - for idx in mel_lengths: - stop_targets[:, int(idx.item()) :, 0] = 1.0 - - stop_targets = stop_targets.view(input_dummy.shape[0], stop_targets.size(1) // config.r, -1) - stop_targets = (stop_targets.sum(2) > 0.0).unsqueeze(2).float().squeeze() - - criterion = L1LossMasked(seq_len_norm=False).to(device) - criterion_st = nn.BCEWithLogitsLoss().to(device) - config.d_vector_dim = 55 - model = Tacotron(config).to(device) # FIXME: missing num_speakers parameter to Tacotron ctor - model.train() - print(" > Num parameters for Tacotron model:%s" % (count_parameters(model))) - model_ref = copy.deepcopy(model) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count += 1 - optimizer = optim.Adam(model.parameters(), lr=config.lr) - for _ in range(5): - outputs = model.forward( - input_dummy, input_lengths, mel_spec, mel_lengths, aux_input={"speaker_ids": speaker_ids} - ) - optimizer.zero_grad() - loss = criterion(outputs["decoder_outputs"], mel_spec, mel_lengths) - stop_loss = criterion_st(outputs["stop_tokens"], stop_targets) - loss = loss + criterion(outputs["model_outputs"], linear_spec, mel_lengths) + stop_loss - loss.backward() - optimizer.step() - # check parameter changes - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - # ignore pre-higway layer since it works conditional - # if count not in [145, 59]: - assert (param != param_ref).any(), "param {} with shape {} not updated!! \n{}\n{}".format( - count, param.shape, param, param_ref - ) - count += 1 - - -class TacotronGSTTrainTest(unittest.TestCase): - @staticmethod - def test_train_step(): - config = config_global.copy() - config.use_speaker_embedding = True - config.num_speakers = 10 - config.use_gst = True - config.gst = GSTConfig() - # with random gst mel style - input_dummy = torch.randint(0, 24, (8, 128)).long().to(device) - input_lengths = torch.randint(100, 129, (8,)).long().to(device) - input_lengths[-1] = 128 - mel_spec = torch.rand(8, 120, config.audio["num_mels"]).to(device) - linear_spec = torch.rand(8, 120, config.audio["fft_size"] // 2 + 1).to(device) - mel_lengths = torch.randint(20, 120, (8,)).long().to(device) - mel_lengths[-1] = 120 - stop_targets = torch.zeros(8, 120, 1).float().to(device) - speaker_ids = torch.randint(0, 5, (8,)).long().to(device) - - for idx in mel_lengths: - stop_targets[:, int(idx.item()) :, 0] = 1.0 - - stop_targets = stop_targets.view(input_dummy.shape[0], stop_targets.size(1) // config.r, -1) - stop_targets = (stop_targets.sum(2) > 0.0).unsqueeze(2).float().squeeze() - - criterion = L1LossMasked(seq_len_norm=False).to(device) - criterion_st = nn.BCEWithLogitsLoss().to(device) - config.use_gst = True - config.gst = GSTConfig() - model = Tacotron(config).to(device) # FIXME: missing num_speakers parameter to Tacotron ctor - model.train() - # print(model) - print(" > Num parameters for Tacotron GST model:%s" % (count_parameters(model))) - model_ref = copy.deepcopy(model) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count += 1 - optimizer = optim.Adam(model.parameters(), lr=config.lr) - for _ in range(10): - outputs = model.forward( - input_dummy, input_lengths, mel_spec, mel_lengths, aux_input={"speaker_ids": speaker_ids} - ) - optimizer.zero_grad() - loss = criterion(outputs["decoder_outputs"], mel_spec, mel_lengths) - stop_loss = criterion_st(outputs["stop_tokens"], stop_targets) - loss = loss + criterion(outputs["model_outputs"], linear_spec, mel_lengths) + stop_loss - loss.backward() - optimizer.step() - # check parameter changes - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - # ignore pre-higway layer since it works conditional - assert (param != param_ref).any(), "param {} with shape {} not updated!! \n{}\n{}".format( - count, param.shape, param, param_ref - ) - count += 1 - - # with file gst style - mel_spec = ( - torch.FloatTensor(ap.melspectrogram(ap.load_wav(WAV_FILE)))[:, :120].unsqueeze(0).transpose(1, 2).to(device) - ) - mel_spec = mel_spec.repeat(8, 1, 1) - - input_dummy = torch.randint(0, 24, (8, 128)).long().to(device) - input_lengths = torch.randint(100, 129, (8,)).long().to(device) - input_lengths[-1] = 128 - linear_spec = torch.rand(8, mel_spec.size(1), config.audio["fft_size"] // 2 + 1).to(device) - mel_lengths = torch.randint(20, mel_spec.size(1), (8,)).long().to(device) - mel_lengths[-1] = mel_spec.size(1) - stop_targets = torch.zeros(8, mel_spec.size(1), 1).float().to(device) - speaker_ids = torch.randint(0, 5, (8,)).long().to(device) - - for idx in mel_lengths: - stop_targets[:, int(idx.item()) :, 0] = 1.0 - - stop_targets = stop_targets.view(input_dummy.shape[0], stop_targets.size(1) // config.r, -1) - stop_targets = (stop_targets.sum(2) > 0.0).unsqueeze(2).float().squeeze() - - criterion = L1LossMasked(seq_len_norm=False).to(device) - criterion_st = nn.BCEWithLogitsLoss().to(device) - model = Tacotron(config).to(device) # FIXME: missing num_speakers parameter to Tacotron ctor - model.train() - # print(model) - print(" > Num parameters for Tacotron GST model:%s" % (count_parameters(model))) - model_ref = copy.deepcopy(model) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count += 1 - optimizer = optim.Adam(model.parameters(), lr=config.lr) - for _ in range(10): - outputs = model.forward( - input_dummy, input_lengths, mel_spec, mel_lengths, aux_input={"speaker_ids": speaker_ids} - ) - optimizer.zero_grad() - loss = criterion(outputs["decoder_outputs"], mel_spec, mel_lengths) - stop_loss = criterion_st(outputs["stop_tokens"], stop_targets) - loss = loss + criterion(outputs["model_outputs"], linear_spec, mel_lengths) + stop_loss - loss.backward() - optimizer.step() - # check parameter changes - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - # ignore pre-higway layer since it works conditional - assert (param != param_ref).any(), "param {} with shape {} not updated!! \n{}\n{}".format( - count, param.shape, param, param_ref - ) - count += 1 - - -class TacotronCapacitronTrainTest(unittest.TestCase): - @staticmethod - def test_train_step(): - config = TacotronConfig( - num_chars=32, - num_speakers=10, - use_speaker_embedding=True, - out_channels=513, - decoder_output_dim=80, - use_capacitron_vae=True, - capacitron_vae=CapacitronVAEConfig(), - optimizer="CapacitronOptimizer", - optimizer_params={ - "RAdam": {"betas": [0.9, 0.998], "weight_decay": 1e-6}, - "SGD": {"lr": 1e-5, "momentum": 0.9}, - }, - ) - - batch = dict({}) - batch["text_input"] = torch.randint(0, 24, (8, 128)).long().to(device) - batch["text_lengths"] = torch.randint(100, 129, (8,)).long().to(device) - batch["text_lengths"] = torch.sort(batch["text_lengths"], descending=True)[0] - batch["text_lengths"][0] = 128 - batch["linear_input"] = torch.rand(8, 120, config.audio["fft_size"] // 2 + 1).to(device) - batch["mel_input"] = torch.rand(8, 120, config.audio["num_mels"]).to(device) - batch["mel_lengths"] = torch.randint(20, 120, (8,)).long().to(device) - batch["mel_lengths"] = torch.sort(batch["mel_lengths"], descending=True)[0] - batch["mel_lengths"][0] = 120 - batch["stop_targets"] = torch.zeros(8, 120, 1).float().to(device) - batch["stop_target_lengths"] = torch.randint(0, 120, (8,)).to(device) - batch["speaker_ids"] = torch.randint(0, 5, (8,)).long().to(device) - batch["d_vectors"] = None - - for idx in batch["mel_lengths"]: - batch["stop_targets"][:, int(idx.item()) :, 0] = 1.0 - - batch["stop_targets"] = batch["stop_targets"].view( - batch["text_input"].shape[0], batch["stop_targets"].size(1) // config.r, -1 - ) - batch["stop_targets"] = (batch["stop_targets"].sum(2) > 0.0).unsqueeze(2).float().squeeze() - model = Tacotron(config).to(device) - criterion = model.get_criterion() - optimizer = model.get_optimizer() - model.train() - print(" > Num parameters for Tacotron with Capacitron VAE model:%s" % (count_parameters(model))) - model_ref = copy.deepcopy(model) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count += 1 - for _ in range(10): - _, loss_dict = model.train_step(batch, criterion) - optimizer.zero_grad() - loss_dict["capacitron_vae_beta_loss"].backward() - optimizer.first_step() - loss_dict["loss"].backward() - optimizer.step() - # check parameter changes - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - # ignore pre-higway layer since it works conditional - assert (param != param_ref).any(), "param {} with shape {} not updated!! \n{}\n{}".format( - count, param.shape, param, param_ref - ) - count += 1 - - -class SCGSTMultiSpeakeTacotronTrainTest(unittest.TestCase): - @staticmethod - def test_train_step(): - config = config_global.copy() - config.use_d_vector_file = True - - config.use_gst = True - config.gst = GSTConfig() - - input_dummy = torch.randint(0, 24, (8, 128)).long().to(device) - input_lengths = torch.randint(100, 129, (8,)).long().to(device) - input_lengths[-1] = 128 - mel_spec = torch.rand(8, 30, config.audio["num_mels"]).to(device) - linear_spec = torch.rand(8, 30, config.audio["fft_size"] // 2 + 1).to(device) - mel_lengths = torch.randint(20, 30, (8,)).long().to(device) - mel_lengths[-1] = mel_spec.size(1) - stop_targets = torch.zeros(8, 30, 1).float().to(device) - speaker_embeddings = torch.rand(8, 55).to(device) - - for idx in mel_lengths: - stop_targets[:, int(idx.item()) :, 0] = 1.0 - - stop_targets = stop_targets.view(input_dummy.shape[0], stop_targets.size(1) // config.r, -1) - stop_targets = (stop_targets.sum(2) > 0.0).unsqueeze(2).float().squeeze() - - criterion = L1LossMasked(seq_len_norm=False).to(device) - criterion_st = nn.BCEWithLogitsLoss().to(device) - config.d_vector_dim = 55 - model = Tacotron(config).to(device) # FIXME: missing num_speakers parameter to Tacotron ctor - model.train() - print(" > Num parameters for Tacotron model:%s" % (count_parameters(model))) - model_ref = copy.deepcopy(model) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count += 1 - optimizer = optim.Adam(model.parameters(), lr=config.lr) - for _ in range(5): - outputs = model.forward( - input_dummy, input_lengths, mel_spec, mel_lengths, aux_input={"d_vectors": speaker_embeddings} - ) - optimizer.zero_grad() - loss = criterion(outputs["decoder_outputs"], mel_spec, mel_lengths) - stop_loss = criterion_st(outputs["stop_tokens"], stop_targets) - loss = loss + criterion(outputs["model_outputs"], linear_spec, mel_lengths) + stop_loss - loss.backward() - optimizer.step() - # check parameter changes - count = 0 - for name_param, param_ref in zip(model.named_parameters(), model_ref.parameters()): - # ignore pre-higway layer since it works conditional - # if count not in [145, 59]: - name, param = name_param - if name == "gst_layer.encoder.recurrence.weight_hh_l0": - continue - assert (param != param_ref).any(), "param {} with shape {} not updated!! \n{}\n{}".format( - count, param.shape, param, param_ref - ) - count += 1 diff --git a/TTS/tests/tts_tests/test_tacotron_train.py b/TTS/tests/tts_tests/test_tacotron_train.py deleted file mode 100644 index f7751931ae77cedd2ed38f12fcfb7b6ed92f9aa2..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_tacotron_train.py +++ /dev/null @@ -1,64 +0,0 @@ -import glob -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.tacotron_config import TacotronConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -config = TacotronConfig( - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=False, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(get_tests_output_path(), "train_outputs/phoneme_cache/"), - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - test_sentences=[ - "Be a voice, not an echo.", - ], - print_eval=True, - r=5, - max_decoder_steps=50, -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.test_delay_epochs 0" -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") - -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests/test_vits.py b/TTS/tests/tts_tests/test_vits.py deleted file mode 100644 index fca99556199efb79a9c65378c40faebdb2cf51b6..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_vits.py +++ /dev/null @@ -1,595 +0,0 @@ -import copy -import os -import unittest - -import torch -from trainer.logging.tensorboard_logger import TensorboardLogger - -from tests import assertHasAttr, assertHasNotAttr, get_tests_data_path, get_tests_input_path, get_tests_output_path -from TTS.config import load_config -from TTS.encoder.utils.generic_utils import setup_encoder_model -from TTS.tts.configs.vits_config import VitsConfig -from TTS.tts.models.vits import ( - Vits, - VitsArgs, - VitsAudioConfig, - amp_to_db, - db_to_amp, - load_audio, - spec_to_mel, - wav_to_mel, - wav_to_spec, -) -from TTS.tts.utils.speakers import SpeakerManager - -LANG_FILE = os.path.join(get_tests_input_path(), "language_ids.json") -SPEAKER_ENCODER_CONFIG = os.path.join(get_tests_input_path(), "test_speaker_encoder_config.json") -WAV_FILE = os.path.join(get_tests_input_path(), "example_1.wav") - - -torch.manual_seed(1) -use_cuda = torch.cuda.is_available() -device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") - - -# pylint: disable=no-self-use -class TestVits(unittest.TestCase): - def test_load_audio(self): - wav, sr = load_audio(WAV_FILE) - self.assertEqual(wav.shape, (1, 41885)) - self.assertEqual(sr, 22050) - - spec = wav_to_spec(wav, n_fft=1024, hop_length=512, win_length=1024, center=False) - mel = wav_to_mel( - wav, - n_fft=1024, - num_mels=80, - sample_rate=sr, - hop_length=512, - win_length=1024, - fmin=0, - fmax=8000, - center=False, - ) - mel2 = spec_to_mel(spec, n_fft=1024, num_mels=80, sample_rate=sr, fmin=0, fmax=8000) - - self.assertEqual((mel - mel2).abs().max(), 0) - self.assertEqual(spec.shape[0], mel.shape[0]) - self.assertEqual(spec.shape[2], mel.shape[2]) - - spec_db = amp_to_db(spec) - spec_amp = db_to_amp(spec_db) - - self.assertAlmostEqual((spec - spec_amp).abs().max(), 0, delta=1e-4) - - def test_dataset(self): - """TODO:""" - ... - - def test_init_multispeaker(self): - num_speakers = 10 - args = VitsArgs(num_speakers=num_speakers, use_speaker_embedding=True) - model = Vits(args) - assertHasAttr(self, model, "emb_g") - - args = VitsArgs(num_speakers=0, use_speaker_embedding=True) - model = Vits(args) - assertHasNotAttr(self, model, "emb_g") - - args = VitsArgs(num_speakers=10, use_speaker_embedding=False) - model = Vits(args) - assertHasNotAttr(self, model, "emb_g") - - args = VitsArgs(d_vector_dim=101, use_d_vector_file=True) - model = Vits(args) - self.assertEqual(model.embedded_speaker_dim, 101) - - def test_init_multilingual(self): - args = VitsArgs(language_ids_file=None, use_language_embedding=False) - model = Vits(args) - self.assertEqual(model.language_manager, None) - self.assertEqual(model.embedded_language_dim, 0) - assertHasNotAttr(self, model, "emb_l") - - args = VitsArgs(language_ids_file=LANG_FILE) - model = Vits(args) - self.assertNotEqual(model.language_manager, None) - self.assertEqual(model.embedded_language_dim, 0) - assertHasNotAttr(self, model, "emb_l") - - args = VitsArgs(language_ids_file=LANG_FILE, use_language_embedding=True) - model = Vits(args) - self.assertNotEqual(model.language_manager, None) - self.assertEqual(model.embedded_language_dim, args.embedded_language_dim) - assertHasAttr(self, model, "emb_l") - - args = VitsArgs(language_ids_file=LANG_FILE, use_language_embedding=True, embedded_language_dim=102) - model = Vits(args) - self.assertNotEqual(model.language_manager, None) - self.assertEqual(model.embedded_language_dim, args.embedded_language_dim) - assertHasAttr(self, model, "emb_l") - - def test_get_aux_input(self): - aux_input = {"speaker_ids": None, "style_wav": None, "d_vectors": None, "language_ids": None} - args = VitsArgs() - model = Vits(args) - aux_out = model.get_aux_input(aux_input) - - speaker_id = torch.randint(10, (1,)) - language_id = torch.randint(10, (1,)) - d_vector = torch.rand(1, 128) - aux_input = {"speaker_ids": speaker_id, "style_wav": None, "d_vectors": d_vector, "language_ids": language_id} - aux_out = model.get_aux_input(aux_input) - self.assertEqual(aux_out["speaker_ids"].shape, speaker_id.shape) - self.assertEqual(aux_out["language_ids"].shape, language_id.shape) - self.assertEqual(aux_out["d_vectors"].shape, d_vector.unsqueeze(0).transpose(2, 1).shape) - - def test_voice_conversion(self): - num_speakers = 10 - spec_len = 101 - spec_effective_len = 50 - - args = VitsArgs(num_speakers=num_speakers, use_speaker_embedding=True) - model = Vits(args) - - ref_inp = torch.randn(1, 513, spec_len) - ref_inp_len = torch.randint(1, spec_effective_len, (1,)) - ref_spk_id = torch.randint(1, num_speakers, (1,)).item() - tgt_spk_id = torch.randint(1, num_speakers, (1,)).item() - o_hat, y_mask, (z, z_p, z_hat) = model.voice_conversion(ref_inp, ref_inp_len, ref_spk_id, tgt_spk_id) - - self.assertEqual(o_hat.shape, (1, 1, spec_len * 256)) - self.assertEqual(y_mask.shape, (1, 1, spec_len)) - self.assertEqual(y_mask.sum(), ref_inp_len[0]) - self.assertEqual(z.shape, (1, args.hidden_channels, spec_len)) - self.assertEqual(z_p.shape, (1, args.hidden_channels, spec_len)) - self.assertEqual(z_hat.shape, (1, args.hidden_channels, spec_len)) - - def _create_inputs(self, config, batch_size=2): - input_dummy = torch.randint(0, 24, (batch_size, 128)).long().to(device) - input_lengths = torch.randint(100, 129, (batch_size,)).long().to(device) - input_lengths[-1] = 128 - spec = torch.rand(batch_size, config.audio["fft_size"] // 2 + 1, 30).to(device) - mel = torch.rand(batch_size, config.audio["num_mels"], 30).to(device) - spec_lengths = torch.randint(20, 30, (batch_size,)).long().to(device) - spec_lengths[-1] = spec.size(2) - waveform = torch.rand(batch_size, 1, spec.size(2) * config.audio["hop_length"]).to(device) - return input_dummy, input_lengths, mel, spec, spec_lengths, waveform - - def _check_forward_outputs(self, config, output_dict, encoder_config=None, batch_size=2): - self.assertEqual( - output_dict["model_outputs"].shape[2], config.model_args.spec_segment_size * config.audio["hop_length"] - ) - self.assertEqual(output_dict["alignments"].shape, (batch_size, 128, 30)) - self.assertEqual(output_dict["alignments"].max(), 1) - self.assertEqual(output_dict["alignments"].min(), 0) - self.assertEqual(output_dict["z"].shape, (batch_size, config.model_args.hidden_channels, 30)) - self.assertEqual(output_dict["z_p"].shape, (batch_size, config.model_args.hidden_channels, 30)) - self.assertEqual(output_dict["m_p"].shape, (batch_size, config.model_args.hidden_channels, 30)) - self.assertEqual(output_dict["logs_p"].shape, (batch_size, config.model_args.hidden_channels, 30)) - self.assertEqual(output_dict["m_q"].shape, (batch_size, config.model_args.hidden_channels, 30)) - self.assertEqual(output_dict["logs_q"].shape, (batch_size, config.model_args.hidden_channels, 30)) - self.assertEqual( - output_dict["waveform_seg"].shape[2], config.model_args.spec_segment_size * config.audio["hop_length"] - ) - if encoder_config: - self.assertEqual(output_dict["gt_spk_emb"].shape, (batch_size, encoder_config.model_params["proj_dim"])) - self.assertEqual(output_dict["syn_spk_emb"].shape, (batch_size, encoder_config.model_params["proj_dim"])) - else: - self.assertEqual(output_dict["gt_spk_emb"], None) - self.assertEqual(output_dict["syn_spk_emb"], None) - - def test_forward(self): - num_speakers = 0 - config = VitsConfig(num_speakers=num_speakers, use_speaker_embedding=True) - config.model_args.spec_segment_size = 10 - input_dummy, input_lengths, _, spec, spec_lengths, waveform = self._create_inputs(config) - model = Vits(config).to(device) - output_dict = model.forward(input_dummy, input_lengths, spec, spec_lengths, waveform) - self._check_forward_outputs(config, output_dict) - - def test_multispeaker_forward(self): - num_speakers = 10 - - config = VitsConfig(num_speakers=num_speakers, use_speaker_embedding=True) - config.model_args.spec_segment_size = 10 - - input_dummy, input_lengths, _, spec, spec_lengths, waveform = self._create_inputs(config) - speaker_ids = torch.randint(0, num_speakers, (8,)).long().to(device) - - model = Vits(config).to(device) - output_dict = model.forward( - input_dummy, input_lengths, spec, spec_lengths, waveform, aux_input={"speaker_ids": speaker_ids} - ) - self._check_forward_outputs(config, output_dict) - - def test_d_vector_forward(self): - batch_size = 2 - args = VitsArgs( - spec_segment_size=10, - num_chars=32, - use_d_vector_file=True, - d_vector_dim=256, - d_vector_file=[os.path.join(get_tests_data_path(), "dummy_speakers.json")], - ) - config = VitsConfig(model_args=args) - model = Vits.init_from_config(config, verbose=False).to(device) - model.train() - input_dummy, input_lengths, _, spec, spec_lengths, waveform = self._create_inputs(config, batch_size=batch_size) - d_vectors = torch.randn(batch_size, 256).to(device) - output_dict = model.forward( - input_dummy, input_lengths, spec, spec_lengths, waveform, aux_input={"d_vectors": d_vectors} - ) - self._check_forward_outputs(config, output_dict) - - def test_multilingual_forward(self): - num_speakers = 10 - num_langs = 3 - batch_size = 2 - - args = VitsArgs(language_ids_file=LANG_FILE, use_language_embedding=True, spec_segment_size=10) - config = VitsConfig(num_speakers=num_speakers, use_speaker_embedding=True, model_args=args) - - input_dummy, input_lengths, _, spec, spec_lengths, waveform = self._create_inputs(config, batch_size=batch_size) - speaker_ids = torch.randint(0, num_speakers, (batch_size,)).long().to(device) - lang_ids = torch.randint(0, num_langs, (batch_size,)).long().to(device) - - model = Vits(config).to(device) - output_dict = model.forward( - input_dummy, - input_lengths, - spec, - spec_lengths, - waveform, - aux_input={"speaker_ids": speaker_ids, "language_ids": lang_ids}, - ) - self._check_forward_outputs(config, output_dict) - - def test_secl_forward(self): - num_speakers = 10 - num_langs = 3 - batch_size = 2 - - speaker_encoder_config = load_config(SPEAKER_ENCODER_CONFIG) - speaker_encoder_config.model_params["use_torch_spec"] = True - speaker_encoder = setup_encoder_model(speaker_encoder_config).to(device) - speaker_manager = SpeakerManager() - speaker_manager.encoder = speaker_encoder - - args = VitsArgs( - language_ids_file=LANG_FILE, - use_language_embedding=True, - spec_segment_size=10, - use_speaker_encoder_as_loss=True, - ) - config = VitsConfig(num_speakers=num_speakers, use_speaker_embedding=True, model_args=args) - config.audio.sample_rate = 16000 - - input_dummy, input_lengths, _, spec, spec_lengths, waveform = self._create_inputs(config, batch_size=batch_size) - speaker_ids = torch.randint(0, num_speakers, (batch_size,)).long().to(device) - lang_ids = torch.randint(0, num_langs, (batch_size,)).long().to(device) - - model = Vits(config, speaker_manager=speaker_manager).to(device) - output_dict = model.forward( - input_dummy, - input_lengths, - spec, - spec_lengths, - waveform, - aux_input={"speaker_ids": speaker_ids, "language_ids": lang_ids}, - ) - self._check_forward_outputs(config, output_dict, speaker_encoder_config) - - def _check_inference_outputs(self, config, outputs, input_dummy, batch_size=1): - feat_len = outputs["z"].shape[2] - self.assertEqual(outputs["model_outputs"].shape[:2], (batch_size, 1)) # we don't know the channel dimension - self.assertEqual(outputs["alignments"].shape, (batch_size, input_dummy.shape[1], feat_len)) - self.assertEqual(outputs["z"].shape, (batch_size, config.model_args.hidden_channels, feat_len)) - self.assertEqual(outputs["z_p"].shape, (batch_size, config.model_args.hidden_channels, feat_len)) - self.assertEqual(outputs["m_p"].shape, (batch_size, config.model_args.hidden_channels, feat_len)) - self.assertEqual(outputs["logs_p"].shape, (batch_size, config.model_args.hidden_channels, feat_len)) - - def test_inference(self): - num_speakers = 0 - config = VitsConfig(num_speakers=num_speakers, use_speaker_embedding=True) - model = Vits(config).to(device) - - batch_size = 1 - input_dummy, *_ = self._create_inputs(config, batch_size=batch_size) - outputs = model.inference(input_dummy) - self._check_inference_outputs(config, outputs, input_dummy, batch_size=batch_size) - - batch_size = 2 - input_dummy, input_lengths, *_ = self._create_inputs(config, batch_size=batch_size) - outputs = model.inference(input_dummy, aux_input={"x_lengths": input_lengths}) - self._check_inference_outputs(config, outputs, input_dummy, batch_size=batch_size) - - def test_multispeaker_inference(self): - num_speakers = 10 - config = VitsConfig(num_speakers=num_speakers, use_speaker_embedding=True) - model = Vits(config).to(device) - - batch_size = 1 - input_dummy, *_ = self._create_inputs(config, batch_size=batch_size) - speaker_ids = torch.randint(0, num_speakers, (batch_size,)).long().to(device) - outputs = model.inference(input_dummy, {"speaker_ids": speaker_ids}) - self._check_inference_outputs(config, outputs, input_dummy, batch_size=batch_size) - - batch_size = 2 - input_dummy, input_lengths, *_ = self._create_inputs(config, batch_size=batch_size) - speaker_ids = torch.randint(0, num_speakers, (batch_size,)).long().to(device) - outputs = model.inference(input_dummy, {"x_lengths": input_lengths, "speaker_ids": speaker_ids}) - self._check_inference_outputs(config, outputs, input_dummy, batch_size=batch_size) - - def test_multilingual_inference(self): - num_speakers = 10 - num_langs = 3 - args = VitsArgs(language_ids_file=LANG_FILE, use_language_embedding=True, spec_segment_size=10) - config = VitsConfig(num_speakers=num_speakers, use_speaker_embedding=True, model_args=args) - model = Vits(config).to(device) - - input_dummy = torch.randint(0, 24, (1, 128)).long().to(device) - speaker_ids = torch.randint(0, num_speakers, (1,)).long().to(device) - lang_ids = torch.randint(0, num_langs, (1,)).long().to(device) - _ = model.inference(input_dummy, {"speaker_ids": speaker_ids, "language_ids": lang_ids}) - - batch_size = 1 - input_dummy, *_ = self._create_inputs(config, batch_size=batch_size) - speaker_ids = torch.randint(0, num_speakers, (batch_size,)).long().to(device) - lang_ids = torch.randint(0, num_langs, (batch_size,)).long().to(device) - outputs = model.inference(input_dummy, {"speaker_ids": speaker_ids, "language_ids": lang_ids}) - self._check_inference_outputs(config, outputs, input_dummy, batch_size=batch_size) - - batch_size = 2 - input_dummy, input_lengths, *_ = self._create_inputs(config, batch_size=batch_size) - speaker_ids = torch.randint(0, num_speakers, (batch_size,)).long().to(device) - lang_ids = torch.randint(0, num_langs, (batch_size,)).long().to(device) - outputs = model.inference( - input_dummy, {"x_lengths": input_lengths, "speaker_ids": speaker_ids, "language_ids": lang_ids} - ) - self._check_inference_outputs(config, outputs, input_dummy, batch_size=batch_size) - - def test_d_vector_inference(self): - args = VitsArgs( - spec_segment_size=10, - num_chars=32, - use_d_vector_file=True, - d_vector_dim=256, - d_vector_file=[os.path.join(get_tests_data_path(), "dummy_speakers.json")], - ) - config = VitsConfig(model_args=args) - model = Vits.init_from_config(config, verbose=False).to(device) - model.eval() - # batch size = 1 - input_dummy = torch.randint(0, 24, (1, 128)).long().to(device) - d_vectors = torch.randn(1, 256).to(device) - outputs = model.inference(input_dummy, aux_input={"d_vectors": d_vectors}) - self._check_inference_outputs(config, outputs, input_dummy) - # batch size = 2 - input_dummy, input_lengths, *_ = self._create_inputs(config) - d_vectors = torch.randn(2, 256).to(device) - outputs = model.inference(input_dummy, aux_input={"x_lengths": input_lengths, "d_vectors": d_vectors}) - self._check_inference_outputs(config, outputs, input_dummy, batch_size=2) - - @staticmethod - def _check_parameter_changes(model, model_ref): - count = 0 - for item1, item2 in zip(model.named_parameters(), model_ref.named_parameters()): - name = item1[0] - param = item1[1] - param_ref = item2[1] - assert (param != param_ref).any(), "param {} with shape {} not updated!! \n{}\n{}".format( - name, param.shape, param, param_ref - ) - count = count + 1 - - def _create_batch(self, config, batch_size): - input_dummy, input_lengths, mel, spec, mel_lengths, _ = self._create_inputs(config, batch_size) - batch = {} - batch["tokens"] = input_dummy - batch["token_lens"] = input_lengths - batch["spec_lens"] = mel_lengths - batch["mel_lens"] = mel_lengths - batch["spec"] = spec - batch["mel"] = mel - batch["waveform"] = torch.rand(batch_size, 1, config.audio["sample_rate"] * 10).to(device) - batch["d_vectors"] = None - batch["speaker_ids"] = None - batch["language_ids"] = None - return batch - - def test_train_step(self): - # setup the model - with torch.autograd.set_detect_anomaly(True): - config = VitsConfig(model_args=VitsArgs(num_chars=32, spec_segment_size=10)) - model = Vits(config).to(device) - model.train() - # model to train - optimizers = model.get_optimizer() - criterions = model.get_criterion() - criterions = [criterions[0].to(device), criterions[1].to(device)] - # reference model to compare model weights - model_ref = Vits(config).to(device) - # # pass the state to ref model - model_ref.load_state_dict(copy.deepcopy(model.state_dict())) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count = count + 1 - for _ in range(5): - batch = self._create_batch(config, 2) - for idx in [0, 1]: - outputs, loss_dict = model.train_step(batch, criterions, idx) - self.assertFalse(not outputs) - self.assertFalse(not loss_dict) - loss_dict["loss"].backward() - optimizers[idx].step() - optimizers[idx].zero_grad() - - # check parameter changes - self._check_parameter_changes(model, model_ref) - - def test_train_step_upsampling(self): - """Upsampling by the decoder upsampling layers""" - # setup the model - with torch.autograd.set_detect_anomaly(True): - audio_config = VitsAudioConfig(sample_rate=22050) - model_args = VitsArgs( - num_chars=32, - spec_segment_size=10, - encoder_sample_rate=11025, - interpolate_z=False, - upsample_rates_decoder=[8, 8, 4, 2], - ) - config = VitsConfig(model_args=model_args, audio=audio_config) - model = Vits(config).to(device) - model.train() - # model to train - optimizers = model.get_optimizer() - criterions = model.get_criterion() - criterions = [criterions[0].to(device), criterions[1].to(device)] - # reference model to compare model weights - model_ref = Vits(config).to(device) - # # pass the state to ref model - model_ref.load_state_dict(copy.deepcopy(model.state_dict())) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count = count + 1 - for _ in range(5): - batch = self._create_batch(config, 2) - for idx in [0, 1]: - outputs, loss_dict = model.train_step(batch, criterions, idx) - self.assertFalse(not outputs) - self.assertFalse(not loss_dict) - loss_dict["loss"].backward() - optimizers[idx].step() - optimizers[idx].zero_grad() - - # check parameter changes - self._check_parameter_changes(model, model_ref) - - def test_train_step_upsampling_interpolation(self): - """Upsampling by interpolation""" - # setup the model - with torch.autograd.set_detect_anomaly(True): - audio_config = VitsAudioConfig(sample_rate=22050) - model_args = VitsArgs( - num_chars=32, - spec_segment_size=10, - encoder_sample_rate=11025, - interpolate_z=True, - upsample_rates_decoder=[8, 8, 2, 2], - ) - config = VitsConfig(model_args=model_args, audio=audio_config) - model = Vits(config).to(device) - model.train() - # model to train - optimizers = model.get_optimizer() - criterions = model.get_criterion() - criterions = [criterions[0].to(device), criterions[1].to(device)] - # reference model to compare model weights - model_ref = Vits(config).to(device) - # # pass the state to ref model - model_ref.load_state_dict(copy.deepcopy(model.state_dict())) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count = count + 1 - for _ in range(5): - batch = self._create_batch(config, 2) - for idx in [0, 1]: - outputs, loss_dict = model.train_step(batch, criterions, idx) - self.assertFalse(not outputs) - self.assertFalse(not loss_dict) - loss_dict["loss"].backward() - optimizers[idx].step() - optimizers[idx].zero_grad() - - # check parameter changes - self._check_parameter_changes(model, model_ref) - - def test_train_eval_log(self): - batch_size = 2 - config = VitsConfig(model_args=VitsArgs(num_chars=32, spec_segment_size=10)) - model = Vits.init_from_config(config, verbose=False).to(device) - model.run_data_dep_init = False - model.train() - batch = self._create_batch(config, batch_size) - logger = TensorboardLogger( - log_dir=os.path.join(get_tests_output_path(), "dummy_vits_logs"), model_name="vits_test_train_log" - ) - criterion = model.get_criterion() - criterion = [criterion[0].to(device), criterion[1].to(device)] - outputs = [None] * 2 - outputs[0], _ = model.train_step(batch, criterion, 0) - outputs[1], _ = model.train_step(batch, criterion, 1) - model.train_log(batch, outputs, logger, None, 1) - - model.eval_log(batch, outputs, logger, None, 1) - logger.finish() - - def test_test_run(self): - config = VitsConfig(model_args=VitsArgs(num_chars=32)) - model = Vits.init_from_config(config, verbose=False).to(device) - model.run_data_dep_init = False - model.eval() - test_figures, test_audios = model.test_run(None) - self.assertTrue(test_figures is not None) - self.assertTrue(test_audios is not None) - - def test_load_checkpoint(self): - chkp_path = os.path.join(get_tests_output_path(), "dummy_glow_tts_checkpoint.pth") - config = VitsConfig(VitsArgs(num_chars=32)) - model = Vits.init_from_config(config, verbose=False).to(device) - chkp = {} - chkp["model"] = model.state_dict() - torch.save(chkp, chkp_path) - model.load_checkpoint(config, chkp_path) - self.assertTrue(model.training) - model.load_checkpoint(config, chkp_path, eval=True) - self.assertFalse(model.training) - - def test_get_criterion(self): - config = VitsConfig(VitsArgs(num_chars=32)) - model = Vits.init_from_config(config, verbose=False).to(device) - criterion = model.get_criterion() - self.assertTrue(criterion is not None) - - def test_init_from_config(self): - config = VitsConfig(model_args=VitsArgs(num_chars=32)) - model = Vits.init_from_config(config, verbose=False).to(device) - - config = VitsConfig(model_args=VitsArgs(num_chars=32, num_speakers=2)) - model = Vits.init_from_config(config, verbose=False).to(device) - self.assertTrue(not hasattr(model, "emb_g")) - - config = VitsConfig(model_args=VitsArgs(num_chars=32, num_speakers=2, use_speaker_embedding=True)) - model = Vits.init_from_config(config, verbose=False).to(device) - self.assertEqual(model.num_speakers, 2) - self.assertTrue(hasattr(model, "emb_g")) - - config = VitsConfig( - model_args=VitsArgs( - num_chars=32, - num_speakers=2, - use_speaker_embedding=True, - speakers_file=os.path.join(get_tests_data_path(), "ljspeech", "speakers.json"), - ) - ) - model = Vits.init_from_config(config, verbose=False).to(device) - self.assertEqual(model.num_speakers, 10) - self.assertTrue(hasattr(model, "emb_g")) - - config = VitsConfig( - model_args=VitsArgs( - num_chars=32, - use_d_vector_file=True, - d_vector_dim=256, - d_vector_file=[os.path.join(get_tests_data_path(), "dummy_speakers.json")], - ) - ) - model = Vits.init_from_config(config, verbose=False).to(device) - self.assertTrue(model.num_speakers == 1) - self.assertTrue(not hasattr(model, "emb_g")) - self.assertTrue(model.embedded_speaker_dim == config.d_vector_dim) diff --git a/TTS/tests/tts_tests/test_vits_d-vectors_train.py b/TTS/tests/tts_tests/test_vits_d-vectors_train.py deleted file mode 100644 index 741bda91e91c9c98ead928589fd3030ed9bb030d..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_vits_d-vectors_train.py +++ /dev/null @@ -1,61 +0,0 @@ -import glob -import os -import shutil - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.vits_config import VitsConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -config = VitsConfig( - batch_size=2, - eval_batch_size=2, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - test_sentences=[ - ["Be a voice, not an echo.", "ljspeech-0"], - ], -) -# set audio config -config.audio.do_trim_silence = True -config.audio.trim_db = 60 - -# active multispeaker d-vec mode -config.model_args.use_d_vector_file = True -config.model_args.d_vector_file = ["tests/data/ljspeech/speakers.json"] -config.model_args.d_vector_dim = 256 - - -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.datasets.0.meta_file_attn_mask tests/data/ljspeech/metadata_attn_mask.txt " - "--coqpit.test_delay_epochs 0" -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests/test_vits_multilingual_speaker_emb_train.py b/TTS/tests/tts_tests/test_vits_multilingual_speaker_emb_train.py deleted file mode 100644 index 71597ef32fef6aa3ef5b3877ee2065aed6cf95cc..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_vits_multilingual_speaker_emb_train.py +++ /dev/null @@ -1,110 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.config.shared_configs import BaseDatasetConfig -from TTS.tts.configs.vits_config import VitsConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -dataset_config_en = BaseDatasetConfig( - formatter="ljspeech", - meta_file_train="metadata.csv", - meta_file_val="metadata.csv", - path="tests/data/ljspeech", - language="en", -) - -dataset_config_pt = BaseDatasetConfig( - formatter="ljspeech", - meta_file_train="metadata.csv", - meta_file_val="metadata.csv", - path="tests/data/ljspeech", - language="pt-br", -) - -config = VitsConfig( - batch_size=2, - eval_batch_size=2, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - test_sentences=[ - ["Be a voice, not an echo.", "ljspeech", None, "en"], - ["Be a voice, not an echo.", "ljspeech", None, "pt-br"], - ], - datasets=[dataset_config_en, dataset_config_pt], -) -# set audio config -config.audio.do_trim_silence = True -config.audio.trim_db = 60 - -# active multilingual mode -config.model_args.use_language_embedding = True -config.use_language_embedding = True -# active multispeaker mode -config.model_args.use_speaker_embedding = True -config.use_speaker_embedding = True - -# deactivate multispeaker d-vec mode -config.model_args.use_d_vector_file = False -config.use_d_vector_file = False - -# duration predictor -config.model_args.use_sdp = False -config.use_sdp = False - -# active language sampler -config.use_language_weighted_sampler = True - -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.test_delay_epochs 0" -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") -speaker_id = "ljspeech" -languae_id = "en" -continue_speakers_path = os.path.join(continue_path, "speakers.json") -continue_languages_path = os.path.join(continue_path, "language_ids.json") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --speaker_idx {speaker_id} --speakers_file_path {continue_speakers_path} --language_ids_file_path {continue_languages_path} --language_idx {languae_id} --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests/test_vits_multilingual_train-d_vectors.py b/TTS/tests/tts_tests/test_vits_multilingual_train-d_vectors.py deleted file mode 100644 index fd58db534af914849f30ca821436f3aaabceabb8..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_vits_multilingual_train-d_vectors.py +++ /dev/null @@ -1,117 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.config.shared_configs import BaseDatasetConfig -from TTS.tts.configs.vits_config import VitsConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -dataset_config_en = BaseDatasetConfig( - formatter="ljspeech_test", - meta_file_train="metadata.csv", - meta_file_val="metadata.csv", - path="tests/data/ljspeech", - language="en", -) - -dataset_config_pt = BaseDatasetConfig( - formatter="ljspeech_test", - meta_file_train="metadata.csv", - meta_file_val="metadata.csv", - path="tests/data/ljspeech", - language="pt-br", -) - -config = VitsConfig( - batch_size=2, - eval_batch_size=2, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="multilingual_cleaners", - use_phonemes=False, - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - test_sentences=[ - ["Be a voice, not an echo.", "ljspeech-0", None, "en"], - ["Be a voice, not an echo.", "ljspeech-1", None, "pt-br"], - ], - datasets=[dataset_config_en, dataset_config_en, dataset_config_en, dataset_config_pt], -) -# set audio config -config.audio.do_trim_silence = True -config.audio.trim_db = 60 - -# active multilingual mode -config.model_args.use_language_embedding = True -config.use_language_embedding = True - -# deactivate multispeaker mode -config.model_args.use_speaker_embedding = False -config.use_speaker_embedding = False - -# active multispeaker d-vec mode -config.model_args.use_d_vector_file = True -config.use_d_vector_file = True -config.model_args.d_vector_file = ["tests/data/ljspeech/speakers.json"] -config.d_vector_file = ["tests/data/ljspeech/speakers.json"] -config.model_args.d_vector_dim = 256 -config.d_vector_dim = 256 - -# duration predictor -config.model_args.use_sdp = True -config.use_sdp = True - -# activate language and speaker samplers -config.use_language_weighted_sampler = True -config.language_weighted_sampler_alpha = 10 -config.use_speaker_weighted_sampler = True -config.speaker_weighted_sampler_alpha = 5 - -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.test_delay_epochs 0" -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") -speaker_id = "ljspeech-1" -languae_id = "en" -continue_speakers_path = config.d_vector_file -continue_languages_path = os.path.join(continue_path, "language_ids.json") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --speaker_idx {speaker_id} --speakers_file_path {continue_speakers_path} --language_ids_file_path {continue_languages_path} --language_idx {languae_id} --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests/test_vits_speaker_emb_train.py b/TTS/tests/tts_tests/test_vits_speaker_emb_train.py deleted file mode 100644 index b7fe197cfef7f2154cd2563e096d9be4f531524d..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_vits_speaker_emb_train.py +++ /dev/null @@ -1,83 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.vits_config import VitsConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -config = VitsConfig( - batch_size=2, - eval_batch_size=2, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - test_sentences=[ - ["Be a voice, not an echo.", "ljspeech-1"], - ], -) -# set audio config -config.audio.do_trim_silence = True -config.audio.trim_db = 60 - -# active multispeaker d-vec mode -config.model_args.use_speaker_embedding = True -config.model_args.use_d_vector_file = False -config.model_args.d_vector_file = None -config.model_args.d_vector_dim = 256 - - -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech_test " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.datasets.0.meta_file_attn_mask tests/data/ljspeech/metadata_attn_mask.txt " - "--coqpit.test_delay_epochs 0" -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") -speaker_id = "ljspeech-1" -continue_speakers_path = os.path.join(continue_path, "speakers.json") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --speaker_idx {speaker_id} --speakers_file_path {continue_speakers_path} --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests/test_vits_train.py b/TTS/tests/tts_tests/test_vits_train.py deleted file mode 100644 index ea5dc02405ab1450d905f95a39ebea65dd72c4a4..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests/test_vits_train.py +++ /dev/null @@ -1,72 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.vits_config import VitsConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -config = VitsConfig( - batch_size=2, - eval_batch_size=2, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - test_sentences=[ - ["Be a voice, not an echo."], - ], -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.datasets.0.meta_file_attn_mask tests/data/ljspeech/metadata_attn_mask.txt " - "--coqpit.test_delay_epochs 0" -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests2/__init__.py b/TTS/tests/tts_tests2/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tests/tts_tests2/test_align_tts_train.py b/TTS/tests/tts_tests2/test_align_tts_train.py deleted file mode 100644 index 9b0b730df4995072239077a2dfd76ca2b5094497..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_align_tts_train.py +++ /dev/null @@ -1,72 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.align_tts_config import AlignTTSConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -config = AlignTTSConfig( - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=False, - phoneme_language="en-us", - phoneme_cache_path=os.path.join(get_tests_output_path(), "train_outputs/phoneme_cache/"), - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - test_sentences=[ - "Be a voice, not an echo.", - ], -) - -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.test_delay_epochs 0 " -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests2/test_delightful_tts_d-vectors_train.py b/TTS/tests/tts_tests2/test_delightful_tts_d-vectors_train.py deleted file mode 100644 index 8fc4ea7e9b518cd6754ec70c59bc0ed7a6503908..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_delightful_tts_d-vectors_train.py +++ /dev/null @@ -1,100 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.delightful_tts_config import DelightfulTtsAudioConfig, DelightfulTTSConfig -from TTS.tts.models.delightful_tts import DelightfulTtsArgs, VocoderConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -audio_config = DelightfulTtsAudioConfig() -model_args = DelightfulTtsArgs( - use_speaker_embedding=False, d_vector_dim=256, use_d_vector_file=True, speaker_embedding_channels=256 -) - -vocoder_config = VocoderConfig() - -config = DelightfulTTSConfig( - model_args=model_args, - audio=audio_config, - vocoder=vocoder_config, - batch_size=2, - eval_batch_size=8, - compute_f0=True, - run_eval=True, - test_delay_epochs=-1, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - f0_cache_path="tests/data/ljspeech/f0_cache_delightful/", ## delightful f0 cache is incompatible with other models - epochs=1, - print_step=1, - print_eval=True, - binary_align_loss_alpha=0.0, - use_attn_priors=False, - test_sentences=[ - ["Be a voice, not an echo.", "ljspeech-0"], - ], - output_path=output_path, - use_speaker_embedding=False, - use_d_vector_file=True, - d_vector_file="tests/data/ljspeech/speakers.json", - d_vector_dim=256, - speaker_embedding_channels=256, -) - -# active multispeaker d-vec mode -config.model_args.use_speaker_embedding = False -config.model_args.use_d_vector_file = True -config.model_args.d_vector_file = "tests/data/ljspeech/speakers.json" -config.model_args.d_vector_dim = 256 - - -config.save_json(config_path) - -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.datasets.0.meta_file_attn_mask tests/data/ljspeech/metadata_attn_mask.txt " - "--coqpit.test_delay_epochs 0" -) - -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -speaker_id = "ljspeech-1" -continue_speakers_path = config.d_vector_file - -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --speaker_idx {speaker_id} --config_path {continue_config_path} --speakers_file_path {continue_speakers_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) -shutil.rmtree("tests/data/ljspeech/f0_cache_delightful/") diff --git a/TTS/tests/tts_tests2/test_delightful_tts_emb_spk.py b/TTS/tests/tts_tests2/test_delightful_tts_emb_spk.py deleted file mode 100644 index 6fb70c5f613fe28c693121383b90867a4ae10069..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_delightful_tts_emb_spk.py +++ /dev/null @@ -1,94 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.delightful_tts_config import DelightfulTtsAudioConfig, DelightfulTTSConfig -from TTS.tts.models.delightful_tts import DelightfulTtsArgs, VocoderConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -audio_config = DelightfulTtsAudioConfig() -model_args = DelightfulTtsArgs(use_speaker_embedding=False) - -vocoder_config = VocoderConfig() - -config = DelightfulTTSConfig( - model_args=model_args, - audio=audio_config, - vocoder=vocoder_config, - batch_size=2, - eval_batch_size=8, - compute_f0=True, - run_eval=True, - test_delay_epochs=-1, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - f0_cache_path="tests/data/ljspeech/f0_cache_delightful/", ## delightful f0 cache is incompatible with other models - epochs=1, - print_step=1, - print_eval=True, - binary_align_loss_alpha=0.0, - use_attn_priors=False, - test_sentences=[ - ["Be a voice, not an echo.", "ljspeech"], - ], - output_path=output_path, - num_speakers=4, - use_speaker_embedding=True, -) - -# active multispeaker d-vec mode -config.model_args.use_speaker_embedding = True -config.model_args.use_d_vector_file = False -config.model_args.d_vector_file = None -config.model_args.d_vector_dim = 256 - - -config.save_json(config_path) - -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.dataset_name ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.datasets.0.meta_file_attn_mask tests/data/ljspeech/metadata_attn_mask.txt " - "--coqpit.test_delay_epochs 0" -) - -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") -speaker_id = "ljspeech" -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --speaker_idx {speaker_id} --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) -shutil.rmtree("tests/data/ljspeech/f0_cache_delightful/") diff --git a/TTS/tests/tts_tests2/test_delightful_tts_layers.py b/TTS/tests/tts_tests2/test_delightful_tts_layers.py deleted file mode 100644 index 073bb1eb5a1f1f82eeb6afaad2ef3069e0d728ca..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_delightful_tts_layers.py +++ /dev/null @@ -1,91 +0,0 @@ -import torch - -from TTS.tts.configs.delightful_tts_config import DelightfulTTSConfig -from TTS.tts.layers.delightful_tts.acoustic_model import AcousticModel -from TTS.tts.models.delightful_tts import DelightfulTtsArgs, VocoderConfig -from TTS.tts.utils.helpers import rand_segments -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.vocoder.models.hifigan_generator import HifiganGenerator - -device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") - -args = DelightfulTtsArgs() -v_args = VocoderConfig() - - -config = DelightfulTTSConfig( - model_args=args, - # compute_f0=True, - # f0_cache_path=os.path.join(output_path, "f0_cache"), - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - # phoneme_cache_path=os.path.join(output_path, "phoneme_cache"), -) - -tokenizer, config = TTSTokenizer.init_from_config(config) - - -def test_acoustic_model(): - dummy_tokens = torch.rand((1, 41)).long().to(device) - dummy_text_lens = torch.tensor([41]).to(device) - dummy_spec = torch.rand((1, 100, 207)).to(device) - dummy_spec_lens = torch.tensor([207]).to(device) - dummy_pitch = torch.rand((1, 1, 207)).long().to(device) - dummy_energy = torch.rand((1, 1, 207)).long().to(device) - - args.out_channels = 100 - args.num_mels = 100 - - acoustic_model = AcousticModel(args=args, tokenizer=tokenizer, speaker_manager=None).to(device) - - output = acoustic_model( - tokens=dummy_tokens, - src_lens=dummy_text_lens, - mel_lens=dummy_spec_lens, - mels=dummy_spec, - pitches=dummy_pitch, - energies=dummy_energy, - attn_priors=None, - d_vectors=None, - speaker_idx=None, - ) - assert list(output["model_outputs"].shape) == [1, 207, 100] - output["model_outputs"].sum().backward() - - -def test_hifi_decoder(): - dummy_input = torch.rand((1, 207, 100)).to(device) - dummy_text_lens = torch.tensor([41]).to(device) - dummy_spec = torch.rand((1, 100, 207)).to(device) - dummy_spec_lens = torch.tensor([207]).to(device) - dummy_pitch = torch.rand((1, 1, 207)).long().to(device) - dummy_energy = torch.rand((1, 1, 207)).long().to(device) - - waveform_decoder = HifiganGenerator( - 100, - 1, - v_args.resblock_type_decoder, - v_args.resblock_dilation_sizes_decoder, - v_args.resblock_kernel_sizes_decoder, - v_args.upsample_kernel_sizes_decoder, - v_args.upsample_initial_channel_decoder, - v_args.upsample_rates_decoder, - inference_padding=0, - cond_channels=0, - conv_pre_weight_norm=False, - conv_post_weight_norm=False, - conv_post_bias=False, - ).to(device) - - vocoder_input_slices, slice_ids = rand_segments( # pylint: disable=unused-variable - x=dummy_input.transpose(1, 2), - x_lengths=dummy_spec_lens, - segment_size=32, - let_short_samples=True, - pad_short=True, - ) - - outputs = waveform_decoder(x=vocoder_input_slices.detach()) - assert list(outputs.shape) == [1, 1, 8192] - outputs.sum().backward() diff --git a/TTS/tests/tts_tests2/test_delightful_tts_train.py b/TTS/tests/tts_tests2/test_delightful_tts_train.py deleted file mode 100644 index a917d776570c5d2077890a7bfaf624f69f6d48f6..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_delightful_tts_train.py +++ /dev/null @@ -1,97 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.delightful_tts_config import DelightfulTTSConfig -from TTS.tts.models.delightful_tts import DelightfulTtsArgs, DelightfulTtsAudioConfig, VocoderConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -audio_config = DelightfulTtsAudioConfig() -model_args = DelightfulTtsArgs() - -vocoder_config = VocoderConfig() - - -config = DelightfulTTSConfig( - audio=audio_config, - batch_size=2, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - f0_cache_path="tests/data/ljspeech/f0_cache_delightful/", ## delightful f0 cache is incompatible with other models - run_eval=True, - test_delay_epochs=-1, - binary_align_loss_alpha=0.0, - epochs=1, - print_step=1, - use_attn_priors=False, - print_eval=True, - test_sentences=[ - ["Be a voice, not an echo."], - ], - use_speaker_embedding=False, -) -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{'cpu'}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.datasets.0.meta_file_attn_mask tests/data/ljspeech/metadata_attn_mask.txt " - "--coqpit.test_delay_epochs -1" -) - -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == -1 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) -shutil.rmtree("tests/data/ljspeech/f0_cache_delightful/") diff --git a/TTS/tests/tts_tests2/test_fast_pitch_speaker_emb_train.py b/TTS/tests/tts_tests2/test_fast_pitch_speaker_emb_train.py deleted file mode 100644 index 7f79bfcab29531fa7b3f158a42f5b2f1975469c3..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_fast_pitch_speaker_emb_train.py +++ /dev/null @@ -1,92 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.fast_pitch_config import FastPitchConfig - -config_path = os.path.join(get_tests_output_path(), "fast_pitch_speaker_emb_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = FastPitchConfig( - audio=audio_config, - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - f0_cache_path="tests/data/ljspeech/f0_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - use_speaker_embedding=True, - test_sentences=[ - "Be a voice, not an echo.", - ], -) -config.audio.do_trim_silence = True -config.use_speaker_embedding = True -config.model_args.use_speaker_embedding = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech_test " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.datasets.0.meta_file_attn_mask tests/data/ljspeech/metadata_attn_mask.txt " - "--coqpit.test_delay_epochs 0" -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") -speaker_id = "ljspeech-1" -continue_speakers_path = os.path.join(continue_path, "speakers.json") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --speaker_idx {speaker_id} --speakers_file_path {continue_speakers_path} --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests2/test_fast_pitch_train.py b/TTS/tests/tts_tests2/test_fast_pitch_train.py deleted file mode 100644 index a525715b53826157a96d45dd4b204644836e0114..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_fast_pitch_train.py +++ /dev/null @@ -1,91 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.fast_pitch_config import FastPitchConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = FastPitchConfig( - audio=audio_config, - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - f0_cache_path="tests/data/ljspeech/f0_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - test_sentences=[ - "Be a voice, not an echo.", - ], - use_speaker_embedding=False, -) -config.audio.do_trim_silence = True -config.use_speaker_embedding = False -config.model_args.use_speaker_embedding = False -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.datasets.0.meta_file_attn_mask tests/data/ljspeech/metadata_attn_mask.txt " - "--coqpit.test_delay_epochs 0" -) - -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests2/test_fastspeech_2_speaker_emb_train.py b/TTS/tests/tts_tests2/test_fastspeech_2_speaker_emb_train.py deleted file mode 100644 index 35bda597d532455bc21422d35bce9732f47de0c1..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_fastspeech_2_speaker_emb_train.py +++ /dev/null @@ -1,95 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.fastspeech2_config import Fastspeech2Config - -config_path = os.path.join(get_tests_output_path(), "fast_pitch_speaker_emb_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = Fastspeech2Config( - audio=audio_config, - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - f0_cache_path="tests/data/ljspeech/f0_cache/", - compute_f0=True, - compute_energy=True, - energy_cache_path="tests/data/ljspeech/energy_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - use_speaker_embedding=True, - test_sentences=[ - "Be a voice, not an echo.", - ], -) -config.audio.do_trim_silence = True -config.use_speaker_embedding = True -config.model_args.use_speaker_embedding = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech_test " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.datasets.0.meta_file_attn_mask tests/data/ljspeech/metadata_attn_mask.txt " - "--coqpit.test_delay_epochs 0" -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") -speaker_id = "ljspeech-1" -continue_speakers_path = os.path.join(continue_path, "speakers.json") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --speaker_idx {speaker_id} --speakers_file_path {continue_speakers_path} --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests2/test_fastspeech_2_train.py b/TTS/tests/tts_tests2/test_fastspeech_2_train.py deleted file mode 100644 index dd4b07d240939413edbb6c4f6d818a856628c8a8..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_fastspeech_2_train.py +++ /dev/null @@ -1,94 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.config.shared_configs import BaseAudioConfig -from TTS.tts.configs.fastspeech2_config import Fastspeech2Config - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - -audio_config = BaseAudioConfig( - sample_rate=22050, - do_trim_silence=True, - trim_db=60.0, - signal_norm=False, - mel_fmin=0.0, - mel_fmax=8000, - spec_gain=1.0, - log_func="np.log", - ref_level_db=20, - preemphasis=0.0, -) - -config = Fastspeech2Config( - audio=audio_config, - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - f0_cache_path="tests/data/ljspeech/f0_cache/", - compute_f0=True, - compute_energy=True, - energy_cache_path="tests/data/ljspeech/energy_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - test_sentences=[ - "Be a voice, not an echo.", - ], - use_speaker_embedding=False, -) -config.audio.do_trim_silence = True -config.use_speaker_embedding = False -config.model_args.use_speaker_embedding = False -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.datasets.0.meta_file_attn_mask tests/data/ljspeech/metadata_attn_mask.txt " - "--coqpit.test_delay_epochs 0" -) - -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests2/test_feed_forward_layers.py b/TTS/tests/tts_tests2/test_feed_forward_layers.py deleted file mode 100644 index 6b26b88f382a1876fd197b632c9bd2b4aca1e06f..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_feed_forward_layers.py +++ /dev/null @@ -1,107 +0,0 @@ -import torch - -from TTS.tts.layers.feed_forward.decoder import Decoder -from TTS.tts.layers.feed_forward.encoder import Encoder -from TTS.tts.utils.helpers import sequence_mask - -device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") - - -def test_encoder(): - input_dummy = torch.rand(8, 14, 37).to(device) - input_lengths = torch.randint(31, 37, (8,)).long().to(device) - input_lengths[-1] = 37 - input_mask = torch.unsqueeze(sequence_mask(input_lengths, input_dummy.size(2)), 1).to(device) - # relative positional transformer encoder - layer = Encoder( - out_channels=11, - in_hidden_channels=14, - encoder_type="relative_position_transformer", - encoder_params={ - "hidden_channels_ffn": 768, - "num_heads": 2, - "kernel_size": 3, - "dropout_p": 0.1, - "num_layers": 6, - "rel_attn_window_size": 4, - "input_length": None, - }, - ).to(device) - output = layer(input_dummy, input_mask) - assert list(output.shape) == [8, 11, 37] - # residual conv bn encoder - layer = Encoder( - out_channels=11, - in_hidden_channels=14, - encoder_type="residual_conv_bn", - encoder_params={"kernel_size": 4, "dilations": 4 * [1, 2, 4] + [1], "num_conv_blocks": 2, "num_res_blocks": 13}, - ).to(device) - output = layer(input_dummy, input_mask) - assert list(output.shape) == [8, 11, 37] - # FFTransformer encoder - layer = Encoder( - out_channels=14, - in_hidden_channels=14, - encoder_type="fftransformer", - encoder_params={"hidden_channels_ffn": 31, "num_heads": 2, "num_layers": 2, "dropout_p": 0.1}, - ).to(device) - output = layer(input_dummy, input_mask) - assert list(output.shape) == [8, 14, 37] - - -def test_decoder(): - input_dummy = torch.rand(8, 128, 37).to(device) - input_lengths = torch.randint(31, 37, (8,)).long().to(device) - input_lengths[-1] = 37 - - input_mask = torch.unsqueeze(sequence_mask(input_lengths, input_dummy.size(2)), 1).to(device) - # residual bn conv decoder - layer = Decoder(out_channels=11, in_hidden_channels=128).to(device) - output = layer(input_dummy, input_mask) - assert list(output.shape) == [8, 11, 37] - # transformer decoder - layer = Decoder( - out_channels=11, - in_hidden_channels=128, - decoder_type="relative_position_transformer", - decoder_params={ - "hidden_channels_ffn": 128, - "num_heads": 2, - "kernel_size": 3, - "dropout_p": 0.1, - "num_layers": 8, - "rel_attn_window_size": 4, - "input_length": None, - }, - ).to(device) - output = layer(input_dummy, input_mask) - assert list(output.shape) == [8, 11, 37] - # wavenet decoder - layer = Decoder( - out_channels=11, - in_hidden_channels=128, - decoder_type="wavenet", - decoder_params={ - "num_blocks": 12, - "hidden_channels": 192, - "kernel_size": 5, - "dilation_rate": 1, - "num_layers": 4, - "dropout_p": 0.05, - }, - ).to(device) - output = layer(input_dummy, input_mask) - # FFTransformer decoder - layer = Decoder( - out_channels=11, - in_hidden_channels=128, - decoder_type="fftransformer", - decoder_params={ - "hidden_channels_ffn": 31, - "num_heads": 2, - "dropout_p": 0.1, - "num_layers": 2, - }, - ).to(device) - output = layer(input_dummy, input_mask) - assert list(output.shape) == [8, 11, 37] diff --git a/TTS/tests/tts_tests2/test_forward_tts.py b/TTS/tests/tts_tests2/test_forward_tts.py deleted file mode 100644 index cec0f211c85c70b17f289e37368638911b911742..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_forward_tts.py +++ /dev/null @@ -1,147 +0,0 @@ -import torch as T - -from TTS.tts.models.forward_tts import ForwardTTS, ForwardTTSArgs -from TTS.tts.utils.helpers import sequence_mask - -# pylint: disable=unused-variable - - -def expand_encoder_outputs_test(): - model = ForwardTTS(ForwardTTSArgs(num_chars=10)) - - inputs = T.rand(2, 5, 57) - durations = T.randint(1, 4, (2, 57)) - - x_mask = T.ones(2, 1, 57) - y_mask = T.ones(2, 1, durations.sum(1).max()) - - expanded, _ = model.expand_encoder_outputs(inputs, durations, x_mask, y_mask) - - for b in range(durations.shape[0]): - index = 0 - for idx, dur in enumerate(durations[b]): - diff = ( - expanded[b, :, index : index + dur.item()] - - inputs[b, :, idx].repeat(dur.item()).view(expanded[b, :, index : index + dur.item()].shape) - ).sum() - assert abs(diff) < 1e-6, diff - index += dur - - -def model_input_output_test(): - """Assert the output shapes of the model in different modes""" - - # VANILLA MODEL - model = ForwardTTS(ForwardTTSArgs(num_chars=10, use_pitch=False, use_aligner=False)) - - x = T.randint(0, 10, (2, 21)) - x_lengths = T.randint(10, 22, (2,)) - x_lengths[-1] = 21 - x_mask = sequence_mask(x_lengths).unsqueeze(1).long() - durations = T.randint(1, 4, (2, 21)) - durations = durations * x_mask.squeeze(1) - y_lengths = durations.sum(1) - y_mask = sequence_mask(y_lengths).unsqueeze(1).long() - - outputs = model.forward(x, x_lengths, y_lengths, dr=durations) - - assert outputs["model_outputs"].shape == (2, durations.sum(1).max(), 80) - assert outputs["durations_log"].shape == (2, 21) - assert outputs["durations"].shape == (2, 21) - assert outputs["alignments"].shape == (2, durations.sum(1).max(), 21) - assert (outputs["x_mask"] - x_mask).sum() == 0.0 - assert (outputs["y_mask"] - y_mask).sum() == 0.0 - - assert outputs["alignment_soft"] is None - assert outputs["alignment_mas"] is None - assert outputs["alignment_logprob"] is None - assert outputs["o_alignment_dur"] is None - assert outputs["pitch_avg"] is None - assert outputs["pitch_avg_gt"] is None - - # USE PITCH - model = ForwardTTS(ForwardTTSArgs(num_chars=10, use_pitch=True, use_aligner=False)) - - x = T.randint(0, 10, (2, 21)) - x_lengths = T.randint(10, 22, (2,)) - x_lengths[-1] = 21 - x_mask = sequence_mask(x_lengths).unsqueeze(1).long() - durations = T.randint(1, 4, (2, 21)) - durations = durations * x_mask.squeeze(1) - y_lengths = durations.sum(1) - y_mask = sequence_mask(y_lengths).unsqueeze(1).long() - pitch = T.rand(2, 1, y_lengths.max()) - - outputs = model.forward(x, x_lengths, y_lengths, dr=durations, pitch=pitch) - - assert outputs["model_outputs"].shape == (2, durations.sum(1).max(), 80) - assert outputs["durations_log"].shape == (2, 21) - assert outputs["durations"].shape == (2, 21) - assert outputs["alignments"].shape == (2, durations.sum(1).max(), 21) - assert (outputs["x_mask"] - x_mask).sum() == 0.0 - assert (outputs["y_mask"] - y_mask).sum() == 0.0 - assert outputs["pitch_avg"].shape == (2, 1, 21) - assert outputs["pitch_avg_gt"].shape == (2, 1, 21) - - assert outputs["alignment_soft"] is None - assert outputs["alignment_mas"] is None - assert outputs["alignment_logprob"] is None - assert outputs["o_alignment_dur"] is None - - # USE ALIGNER NETWORK - model = ForwardTTS(ForwardTTSArgs(num_chars=10, use_pitch=False, use_aligner=True)) - - x = T.randint(0, 10, (2, 21)) - x_lengths = T.randint(10, 22, (2,)) - x_lengths[-1] = 21 - x_mask = sequence_mask(x_lengths).unsqueeze(1).long() - durations = T.randint(1, 4, (2, 21)) - durations = durations * x_mask.squeeze(1) - y_lengths = durations.sum(1) - y_mask = sequence_mask(y_lengths).unsqueeze(1).long() - y = T.rand(2, y_lengths.max(), 80) - - outputs = model.forward(x, x_lengths, y_lengths, dr=durations, y=y) - - assert outputs["model_outputs"].shape == (2, durations.sum(1).max(), 80) - assert outputs["durations_log"].shape == (2, 21) - assert outputs["durations"].shape == (2, 21) - assert outputs["alignments"].shape == (2, durations.sum(1).max(), 21) - assert (outputs["x_mask"] - x_mask).sum() == 0.0 - assert (outputs["y_mask"] - y_mask).sum() == 0.0 - assert outputs["alignment_soft"].shape == (2, durations.sum(1).max(), 21) - assert outputs["alignment_mas"].shape == (2, durations.sum(1).max(), 21) - assert outputs["alignment_logprob"].shape == (2, 1, durations.sum(1).max(), 21) - assert outputs["o_alignment_dur"].shape == (2, 21) - - assert outputs["pitch_avg"] is None - assert outputs["pitch_avg_gt"] is None - - # USE ALIGNER NETWORK AND PITCH - model = ForwardTTS(ForwardTTSArgs(num_chars=10, use_pitch=True, use_aligner=True)) - - x = T.randint(0, 10, (2, 21)) - x_lengths = T.randint(10, 22, (2,)) - x_lengths[-1] = 21 - x_mask = sequence_mask(x_lengths).unsqueeze(1).long() - durations = T.randint(1, 4, (2, 21)) - durations = durations * x_mask.squeeze(1) - y_lengths = durations.sum(1) - y_mask = sequence_mask(y_lengths).unsqueeze(1).long() - y = T.rand(2, y_lengths.max(), 80) - pitch = T.rand(2, 1, y_lengths.max()) - - outputs = model.forward(x, x_lengths, y_lengths, dr=durations, pitch=pitch, y=y) - - assert outputs["model_outputs"].shape == (2, durations.sum(1).max(), 80) - assert outputs["durations_log"].shape == (2, 21) - assert outputs["durations"].shape == (2, 21) - assert outputs["alignments"].shape == (2, durations.sum(1).max(), 21) - assert (outputs["x_mask"] - x_mask).sum() == 0.0 - assert (outputs["y_mask"] - y_mask).sum() == 0.0 - assert outputs["alignment_soft"].shape == (2, durations.sum(1).max(), 21) - assert outputs["alignment_mas"].shape == (2, durations.sum(1).max(), 21) - assert outputs["alignment_logprob"].shape == (2, 1, durations.sum(1).max(), 21) - assert outputs["o_alignment_dur"].shape == (2, 21) - assert outputs["pitch_avg"].shape == (2, 1, 21) - assert outputs["pitch_avg_gt"].shape == (2, 1, 21) diff --git a/TTS/tests/tts_tests2/test_glow_tts.py b/TTS/tests/tts_tests2/test_glow_tts.py deleted file mode 100644 index 2a723f105f56e25fee096831719f78155180ee89..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_glow_tts.py +++ /dev/null @@ -1,378 +0,0 @@ -import copy -import os -import unittest - -import torch -from torch import optim -from trainer.logging.tensorboard_logger import TensorboardLogger - -from tests import get_tests_data_path, get_tests_input_path, get_tests_output_path -from TTS.tts.configs.glow_tts_config import GlowTTSConfig -from TTS.tts.layers.losses import GlowTTSLoss -from TTS.tts.models.glow_tts import GlowTTS -from TTS.tts.utils.speakers import SpeakerManager -from TTS.utils.audio import AudioProcessor - -# pylint: disable=unused-variable - -torch.manual_seed(1) -use_cuda = torch.cuda.is_available() -device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") - -c = GlowTTSConfig() - -ap = AudioProcessor(**c.audio) -WAV_FILE = os.path.join(get_tests_input_path(), "example_1.wav") -BATCH_SIZE = 3 - - -def count_parameters(model): - r"""Count number of trainable parameters in a network""" - return sum(p.numel() for p in model.parameters() if p.requires_grad) - - -class TestGlowTTS(unittest.TestCase): - @staticmethod - def _create_inputs(batch_size=8): - input_dummy = torch.randint(0, 24, (batch_size, 128)).long().to(device) - input_lengths = torch.randint(100, 129, (batch_size,)).long().to(device) - input_lengths[-1] = 128 - mel_spec = torch.rand(batch_size, 30, c.audio["num_mels"]).to(device) - mel_lengths = torch.randint(20, 30, (batch_size,)).long().to(device) - speaker_ids = torch.randint(0, 5, (batch_size,)).long().to(device) - return input_dummy, input_lengths, mel_spec, mel_lengths, speaker_ids - - @staticmethod - def _check_parameter_changes(model, model_ref): - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param != param_ref).any(), "param {} with shape {} not updated!! \n{}\n{}".format( - count, param.shape, param, param_ref - ) - count += 1 - - def test_init_multispeaker(self): - config = GlowTTSConfig(num_chars=32) - model = GlowTTS(config) - # speaker embedding with default speaker_embedding_dim - config.use_speaker_embedding = True - config.num_speakers = 5 - config.d_vector_dim = None - model.init_multispeaker(config) - self.assertEqual(model.c_in_channels, model.hidden_channels_enc) - # use external speaker embeddings with speaker_embedding_dim = 301 - config = GlowTTSConfig(num_chars=32) - config.use_d_vector_file = True - config.d_vector_dim = 301 - model = GlowTTS(config) - model.init_multispeaker(config) - self.assertEqual(model.c_in_channels, 301) - # use speaker embedddings by the provided speaker_manager - config = GlowTTSConfig(num_chars=32) - config.use_speaker_embedding = True - config.speakers_file = os.path.join(get_tests_data_path(), "ljspeech", "speakers.json") - speaker_manager = SpeakerManager.init_from_config(config) - model = GlowTTS(config) - model.speaker_manager = speaker_manager - model.init_multispeaker(config) - self.assertEqual(model.c_in_channels, model.hidden_channels_enc) - self.assertEqual(model.num_speakers, speaker_manager.num_speakers) - # use external speaker embeddings by the provided speaker_manager - config = GlowTTSConfig(num_chars=32) - config.use_d_vector_file = True - config.d_vector_dim = 256 - config.d_vector_file = os.path.join(get_tests_data_path(), "dummy_speakers.json") - speaker_manager = SpeakerManager.init_from_config(config) - model = GlowTTS(config) - model.speaker_manager = speaker_manager - model.init_multispeaker(config) - self.assertEqual(model.c_in_channels, speaker_manager.embedding_dim) - self.assertEqual(model.num_speakers, speaker_manager.num_speakers) - - def test_unlock_act_norm_layers(self): - config = GlowTTSConfig(num_chars=32) - model = GlowTTS(config).to(device) - model.unlock_act_norm_layers() - for f in model.decoder.flows: - if getattr(f, "set_ddi", False): - self.assertFalse(f.initialized) - - def test_lock_act_norm_layers(self): - config = GlowTTSConfig(num_chars=32) - model = GlowTTS(config).to(device) - model.lock_act_norm_layers() - for f in model.decoder.flows: - if getattr(f, "set_ddi", False): - self.assertTrue(f.initialized) - - def _test_forward(self, batch_size): - input_dummy, input_lengths, mel_spec, mel_lengths, speaker_ids = self._create_inputs(batch_size) - # create model - config = GlowTTSConfig(num_chars=32) - model = GlowTTS(config).to(device) - model.train() - print(" > Num parameters for GlowTTS model:%s" % (count_parameters(model))) - # inference encoder and decoder with MAS - y = model.forward(input_dummy, input_lengths, mel_spec, mel_lengths) - self.assertEqual(y["z"].shape, mel_spec.shape) - self.assertEqual(y["logdet"].shape, torch.Size([batch_size])) - self.assertEqual(y["y_mean"].shape, mel_spec.shape) - self.assertEqual(y["y_log_scale"].shape, mel_spec.shape) - self.assertEqual(y["alignments"].shape, mel_spec.shape[:2] + (input_dummy.shape[1],)) - self.assertEqual(y["durations_log"].shape, input_dummy.shape + (1,)) - self.assertEqual(y["total_durations_log"].shape, input_dummy.shape + (1,)) - - def test_forward(self): - self._test_forward(1) - self._test_forward(3) - - def _test_forward_with_d_vector(self, batch_size): - input_dummy, input_lengths, mel_spec, mel_lengths, speaker_ids = self._create_inputs(batch_size) - d_vector = torch.rand(batch_size, 256).to(device) - # create model - config = GlowTTSConfig( - num_chars=32, - use_d_vector_file=True, - d_vector_dim=256, - d_vector_file=os.path.join(get_tests_data_path(), "dummy_speakers.json"), - ) - model = GlowTTS.init_from_config(config, verbose=False).to(device) - model.train() - print(" > Num parameters for GlowTTS model:%s" % (count_parameters(model))) - # inference encoder and decoder with MAS - y = model.forward(input_dummy, input_lengths, mel_spec, mel_lengths, {"d_vectors": d_vector}) - self.assertEqual(y["z"].shape, mel_spec.shape) - self.assertEqual(y["logdet"].shape, torch.Size([batch_size])) - self.assertEqual(y["y_mean"].shape, mel_spec.shape) - self.assertEqual(y["y_log_scale"].shape, mel_spec.shape) - self.assertEqual(y["alignments"].shape, mel_spec.shape[:2] + (input_dummy.shape[1],)) - self.assertEqual(y["durations_log"].shape, input_dummy.shape + (1,)) - self.assertEqual(y["total_durations_log"].shape, input_dummy.shape + (1,)) - - def test_forward_with_d_vector(self): - self._test_forward_with_d_vector(1) - self._test_forward_with_d_vector(3) - - def _test_forward_with_speaker_id(self, batch_size): - input_dummy, input_lengths, mel_spec, mel_lengths, speaker_ids = self._create_inputs(batch_size) - speaker_ids = torch.randint(0, 24, (batch_size,)).long().to(device) - # create model - config = GlowTTSConfig( - num_chars=32, - use_speaker_embedding=True, - num_speakers=24, - ) - model = GlowTTS.init_from_config(config, verbose=False).to(device) - model.train() - print(" > Num parameters for GlowTTS model:%s" % (count_parameters(model))) - # inference encoder and decoder with MAS - y = model.forward(input_dummy, input_lengths, mel_spec, mel_lengths, {"speaker_ids": speaker_ids}) - self.assertEqual(y["z"].shape, mel_spec.shape) - self.assertEqual(y["logdet"].shape, torch.Size([batch_size])) - self.assertEqual(y["y_mean"].shape, mel_spec.shape) - self.assertEqual(y["y_log_scale"].shape, mel_spec.shape) - self.assertEqual(y["alignments"].shape, mel_spec.shape[:2] + (input_dummy.shape[1],)) - self.assertEqual(y["durations_log"].shape, input_dummy.shape + (1,)) - self.assertEqual(y["total_durations_log"].shape, input_dummy.shape + (1,)) - - def test_forward_with_speaker_id(self): - self._test_forward_with_speaker_id(1) - self._test_forward_with_speaker_id(3) - - def _assert_inference_outputs(self, outputs, input_dummy, mel_spec): - output_shape = outputs["model_outputs"].shape - self.assertEqual(outputs["model_outputs"].shape[::2], mel_spec.shape[::2]) - self.assertEqual(outputs["logdet"], None) - self.assertEqual(outputs["y_mean"].shape, output_shape) - self.assertEqual(outputs["y_log_scale"].shape, output_shape) - self.assertEqual(outputs["alignments"].shape, output_shape[:2] + (input_dummy.shape[1],)) - self.assertEqual(outputs["durations_log"].shape, input_dummy.shape + (1,)) - self.assertEqual(outputs["total_durations_log"].shape, input_dummy.shape + (1,)) - - def _test_inference(self, batch_size): - input_dummy, input_lengths, mel_spec, mel_lengths, speaker_ids = self._create_inputs(batch_size) - config = GlowTTSConfig(num_chars=32) - model = GlowTTS(config).to(device) - model.eval() - outputs = model.inference(input_dummy, {"x_lengths": input_lengths}) - self._assert_inference_outputs(outputs, input_dummy, mel_spec) - - def test_inference(self): - self._test_inference(1) - self._test_inference(3) - - def _test_inference_with_d_vector(self, batch_size): - input_dummy, input_lengths, mel_spec, mel_lengths, speaker_ids = self._create_inputs(batch_size) - d_vector = torch.rand(batch_size, 256).to(device) - config = GlowTTSConfig( - num_chars=32, - use_d_vector_file=True, - d_vector_dim=256, - d_vector_file=os.path.join(get_tests_data_path(), "dummy_speakers.json"), - ) - model = GlowTTS.init_from_config(config, verbose=False).to(device) - model.eval() - outputs = model.inference(input_dummy, {"x_lengths": input_lengths, "d_vectors": d_vector}) - self._assert_inference_outputs(outputs, input_dummy, mel_spec) - - def test_inference_with_d_vector(self): - self._test_inference_with_d_vector(1) - self._test_inference_with_d_vector(3) - - def _test_inference_with_speaker_ids(self, batch_size): - input_dummy, input_lengths, mel_spec, mel_lengths, speaker_ids = self._create_inputs(batch_size) - speaker_ids = torch.randint(0, 24, (batch_size,)).long().to(device) - # create model - config = GlowTTSConfig( - num_chars=32, - use_speaker_embedding=True, - num_speakers=24, - ) - model = GlowTTS.init_from_config(config, verbose=False).to(device) - outputs = model.inference(input_dummy, {"x_lengths": input_lengths, "speaker_ids": speaker_ids}) - self._assert_inference_outputs(outputs, input_dummy, mel_spec) - - def test_inference_with_speaker_ids(self): - self._test_inference_with_speaker_ids(1) - self._test_inference_with_speaker_ids(3) - - def _test_inference_with_MAS(self, batch_size): - input_dummy, input_lengths, mel_spec, mel_lengths, speaker_ids = self._create_inputs(batch_size) - # create model - config = GlowTTSConfig(num_chars=32) - model = GlowTTS(config).to(device) - model.eval() - # inference encoder and decoder with MAS - y = model.inference_with_MAS(input_dummy, input_lengths, mel_spec, mel_lengths) - y2 = model.decoder_inference(mel_spec, mel_lengths) - assert ( - y2["model_outputs"].shape == y["model_outputs"].shape - ), "Difference between the shapes of the glowTTS inference with MAS ({}) and the inference using only the decoder ({}) !!".format( - y["model_outputs"].shape, y2["model_outputs"].shape - ) - - def test_inference_with_MAS(self): - self._test_inference_with_MAS(1) - self._test_inference_with_MAS(3) - - def test_train_step(self): - batch_size = BATCH_SIZE - input_dummy, input_lengths, mel_spec, mel_lengths, speaker_ids = self._create_inputs(batch_size) - criterion = GlowTTSLoss() - # model to train - config = GlowTTSConfig(num_chars=32) - model = GlowTTS(config).to(device) - # reference model to compare model weights - model_ref = GlowTTS(config).to(device) - model.train() - print(" > Num parameters for GlowTTS model:%s" % (count_parameters(model))) - # pass the state to ref model - model_ref.load_state_dict(copy.deepcopy(model.state_dict())) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count += 1 - optimizer = optim.Adam(model.parameters(), lr=0.001) - for _ in range(5): - optimizer.zero_grad() - outputs = model.forward(input_dummy, input_lengths, mel_spec, mel_lengths, None) - loss_dict = criterion( - outputs["z"], - outputs["y_mean"], - outputs["y_log_scale"], - outputs["logdet"], - mel_lengths, - outputs["durations_log"], - outputs["total_durations_log"], - input_lengths, - ) - loss = loss_dict["loss"] - loss.backward() - optimizer.step() - # check parameter changes - self._check_parameter_changes(model, model_ref) - - def test_train_eval_log(self): - batch_size = BATCH_SIZE - input_dummy, input_lengths, mel_spec, mel_lengths, _ = self._create_inputs(batch_size) - batch = {} - batch["text_input"] = input_dummy - batch["text_lengths"] = input_lengths - batch["mel_lengths"] = mel_lengths - batch["mel_input"] = mel_spec - batch["d_vectors"] = None - batch["speaker_ids"] = None - config = GlowTTSConfig(num_chars=32) - model = GlowTTS.init_from_config(config, verbose=False).to(device) - model.run_data_dep_init = False - model.train() - logger = TensorboardLogger( - log_dir=os.path.join(get_tests_output_path(), "dummy_glow_tts_logs"), model_name="glow_tts_test_train_log" - ) - criterion = model.get_criterion() - outputs, _ = model.train_step(batch, criterion) - model.train_log(batch, outputs, logger, None, 1) - model.eval_log(batch, outputs, logger, None, 1) - logger.finish() - - def test_test_run(self): - config = GlowTTSConfig(num_chars=32) - model = GlowTTS.init_from_config(config, verbose=False).to(device) - model.run_data_dep_init = False - model.eval() - test_figures, test_audios = model.test_run(None) - self.assertTrue(test_figures is not None) - self.assertTrue(test_audios is not None) - - def test_load_checkpoint(self): - chkp_path = os.path.join(get_tests_output_path(), "dummy_glow_tts_checkpoint.pth") - config = GlowTTSConfig(num_chars=32) - model = GlowTTS.init_from_config(config, verbose=False).to(device) - chkp = {} - chkp["model"] = model.state_dict() - torch.save(chkp, chkp_path) - model.load_checkpoint(config, chkp_path) - self.assertTrue(model.training) - model.load_checkpoint(config, chkp_path, eval=True) - self.assertFalse(model.training) - - def test_get_criterion(self): - config = GlowTTSConfig(num_chars=32) - model = GlowTTS.init_from_config(config, verbose=False).to(device) - criterion = model.get_criterion() - self.assertTrue(criterion is not None) - - def test_init_from_config(self): - config = GlowTTSConfig(num_chars=32) - model = GlowTTS.init_from_config(config, verbose=False).to(device) - - config = GlowTTSConfig(num_chars=32, num_speakers=2) - model = GlowTTS.init_from_config(config, verbose=False).to(device) - self.assertTrue(model.num_speakers == 2) - self.assertTrue(not hasattr(model, "emb_g")) - - config = GlowTTSConfig(num_chars=32, num_speakers=2, use_speaker_embedding=True) - model = GlowTTS.init_from_config(config, verbose=False).to(device) - self.assertTrue(model.num_speakers == 2) - self.assertTrue(hasattr(model, "emb_g")) - - config = GlowTTSConfig( - num_chars=32, - num_speakers=2, - use_speaker_embedding=True, - speakers_file=os.path.join(get_tests_data_path(), "ljspeech", "speakers.json"), - ) - model = GlowTTS.init_from_config(config, verbose=False).to(device) - self.assertTrue(model.num_speakers == 10) - self.assertTrue(hasattr(model, "emb_g")) - - config = GlowTTSConfig( - num_chars=32, - use_d_vector_file=True, - d_vector_dim=256, - d_vector_file=os.path.join(get_tests_data_path(), "dummy_speakers.json"), - ) - model = GlowTTS.init_from_config(config, verbose=False).to(device) - self.assertTrue(model.num_speakers == 1) - self.assertTrue(not hasattr(model, "emb_g")) - self.assertTrue(model.c_in_channels == config.d_vector_dim) diff --git a/TTS/tests/tts_tests2/test_glow_tts_d-vectors_train.py b/TTS/tests/tts_tests2/test_glow_tts_d-vectors_train.py deleted file mode 100644 index f1cfd4368f9a0658e6b94ad9fc9697ba75f30fed..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_glow_tts_d-vectors_train.py +++ /dev/null @@ -1,79 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.glow_tts_config import GlowTTSConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -config = GlowTTSConfig( - batch_size=2, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - test_sentences=[ - "Be a voice, not an echo.", - ], - data_dep_init_steps=1.0, - use_speaker_embedding=False, - use_d_vector_file=True, - d_vector_file="tests/data/ljspeech/speakers.json", - d_vector_dim=256, -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech_test " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.datasets.0.meta_file_attn_mask tests/data/ljspeech/metadata_attn_mask.txt " - "--coqpit.test_delay_epochs 0" -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") -speaker_id = "ljspeech-1" -continue_speakers_path = config.d_vector_file - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --speaker_idx {speaker_id} --speakers_file_path {continue_speakers_path} --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests2/test_glow_tts_speaker_emb_train.py b/TTS/tests/tts_tests2/test_glow_tts_speaker_emb_train.py deleted file mode 100644 index b1eb6237a48ccec10eea03c6e81773f34af7275d..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_glow_tts_speaker_emb_train.py +++ /dev/null @@ -1,76 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.glow_tts_config import GlowTTSConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -config = GlowTTSConfig( - batch_size=2, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - test_sentences=[ - "Be a voice, not an echo.", - ], - data_dep_init_steps=1.0, - use_speaker_embedding=True, -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech_test " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.datasets.0.meta_file_attn_mask tests/data/ljspeech/metadata_attn_mask.txt " - "--coqpit.test_delay_epochs 0" -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") -speaker_id = "ljspeech-1" -continue_speakers_path = os.path.join(continue_path, "speakers.json") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --speaker_idx {speaker_id} --speakers_file_path {continue_speakers_path} --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/tts_tests2/test_glow_tts_train.py b/TTS/tests/tts_tests2/test_glow_tts_train.py deleted file mode 100644 index 0a8e226b65edf1da6ed477422d579c420ecdf74d..0000000000000000000000000000000000000000 --- a/TTS/tests/tts_tests2/test_glow_tts_train.py +++ /dev/null @@ -1,73 +0,0 @@ -import glob -import json -import os -import shutil - -from trainer import get_last_checkpoint - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.tts.configs.glow_tts_config import GlowTTSConfig - -config_path = os.path.join(get_tests_output_path(), "test_model_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -config = GlowTTSConfig( - batch_size=2, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - text_cleaner="english_cleaners", - use_phonemes=True, - phoneme_language="en-us", - phoneme_cache_path="tests/data/ljspeech/phoneme_cache/", - run_eval=True, - test_delay_epochs=-1, - epochs=1, - print_step=1, - print_eval=True, - test_sentences=[ - "Be a voice, not an echo.", - ], - data_dep_init_steps=1.0, -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --config_path {config_path} " - f"--coqpit.output_path {output_path} " - "--coqpit.datasets.0.formatter ljspeech " - "--coqpit.datasets.0.meta_file_train metadata.csv " - "--coqpit.datasets.0.meta_file_val metadata.csv " - "--coqpit.datasets.0.path tests/data/ljspeech " - "--coqpit.datasets.0.meta_file_attn_mask tests/data/ljspeech/metadata_attn_mask.txt " - "--coqpit.test_delay_epochs 0" -) -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# Inference using TTS API -continue_config_path = os.path.join(continue_path, "config.json") -continue_restore_path, _ = get_last_checkpoint(continue_path) -out_wav_path = os.path.join(get_tests_output_path(), "output.wav") - -# Check integrity of the config -with open(continue_config_path, "r", encoding="utf-8") as f: - config_loaded = json.load(f) -assert config_loaded["characters"] is not None -assert config_loaded["output_path"] in continue_path -assert config_loaded["test_delay_epochs"] == 0 - -# Load the model and run inference -inference_command = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' tts --text 'This is an example.' --config_path {continue_config_path} --model_path {continue_restore_path} --out_path {out_wav_path}" -run_cli(inference_command) - -# restore the model and continue training for one more epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_tts.py --continue_path {continue_path} " -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/vc_tests/__init__.py b/TTS/tests/vc_tests/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tests/vc_tests/test_freevc.py b/TTS/tests/vc_tests/test_freevc.py deleted file mode 100644 index a4a4f72679843a3340518c66077afbdb41ae1f28..0000000000000000000000000000000000000000 --- a/TTS/tests/vc_tests/test_freevc.py +++ /dev/null @@ -1,135 +0,0 @@ -import os -import unittest - -import torch - -from tests import get_tests_input_path -from TTS.vc.configs.freevc_config import FreeVCConfig -from TTS.vc.models.freevc import FreeVC - -# pylint: disable=unused-variable -# pylint: disable=no-self-use - -torch.manual_seed(1) -use_cuda = torch.cuda.is_available() -device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") - -c = FreeVCConfig() - -WAV_FILE = os.path.join(get_tests_input_path(), "example_1.wav") -BATCH_SIZE = 3 - - -def count_parameters(model): - r"""Count number of trainable parameters in a network""" - return sum(p.numel() for p in model.parameters() if p.requires_grad) - - -class TestFreeVC(unittest.TestCase): - def _create_inputs(self, config, batch_size=2): - input_dummy = torch.rand(batch_size, 30 * config.audio["hop_length"]).to(device) - input_lengths = torch.randint(100, 30 * config.audio["hop_length"], (batch_size,)).long().to(device) - input_lengths[-1] = 30 * config.audio["hop_length"] - spec = torch.rand(batch_size, 30, config.audio["filter_length"] // 2 + 1).to(device) - mel = torch.rand(batch_size, 30, config.audio["n_mel_channels"]).to(device) - spec_lengths = torch.randint(20, 30, (batch_size,)).long().to(device) - spec_lengths[-1] = spec.size(2) - waveform = torch.rand(batch_size, spec.size(2) * config.audio["hop_length"]).to(device) - return input_dummy, input_lengths, mel, spec, spec_lengths, waveform - - @staticmethod - def _create_inputs_inference(): - source_wav = torch.rand(16000) - target_wav = torch.rand(16000) - return source_wav, target_wav - - @staticmethod - def _check_parameter_changes(model, model_ref): - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param != param_ref).any(), "param {} with shape {} not updated!! \n{}\n{}".format( - count, param.shape, param, param_ref - ) - count += 1 - - def test_methods(self): - config = FreeVCConfig() - model = FreeVC(config).to(device) - model.load_pretrained_speaker_encoder() - model.init_multispeaker(config) - wavlm_feats = model.extract_wavlm_features(torch.rand(1, 16000)) - assert wavlm_feats.shape == (1, 1024, 49), wavlm_feats.shape - - def test_load_audio(self): - config = FreeVCConfig() - model = FreeVC(config).to(device) - wav = model.load_audio(WAV_FILE) - wav2 = model.load_audio(wav) - assert all(torch.isclose(wav, wav2)) - - def _test_forward(self, batch_size): - # create model - config = FreeVCConfig() - model = FreeVC(config).to(device) - model.train() - print(" > Num parameters for FreeVC model:%s" % (count_parameters(model))) - - _, _, mel, spec, spec_lengths, waveform = self._create_inputs(config, batch_size) - - wavlm_vec = model.extract_wavlm_features(waveform) - wavlm_vec_lengths = torch.ones(batch_size, dtype=torch.long) - - y = model.forward(wavlm_vec, spec, None, mel, spec_lengths, wavlm_vec_lengths) - # TODO: assert with training implementation - - def test_forward(self): - self._test_forward(1) - self._test_forward(3) - - def _test_inference(self, batch_size): - config = FreeVCConfig() - model = FreeVC(config).to(device) - model.eval() - - _, _, mel, _, _, waveform = self._create_inputs(config, batch_size) - - wavlm_vec = model.extract_wavlm_features(waveform) - wavlm_vec_lengths = torch.ones(batch_size, dtype=torch.long) - - output_wav = model.inference(wavlm_vec, None, mel, wavlm_vec_lengths) - assert ( - output_wav.shape[-1] // config.audio.hop_length == wavlm_vec.shape[-1] - ), f"{output_wav.shape[-1] // config.audio.hop_length} != {wavlm_vec.shape}" - - def test_inference(self): - self._test_inference(1) - self._test_inference(3) - - def test_voice_conversion(self): - config = FreeVCConfig() - model = FreeVC(config).to(device) - model.eval() - - source_wav, target_wav = self._create_inputs_inference() - output_wav = model.voice_conversion(source_wav, target_wav) - assert ( - output_wav.shape[0] + config.audio.hop_length == source_wav.shape[0] - ), f"{output_wav.shape} != {source_wav.shape}" - - def test_train_step(self): - ... - - def test_train_eval_log(self): - ... - - def test_test_run(self): - ... - - def test_load_checkpoint(self): - ... - - def test_get_criterion(self): - ... - - def test_init_from_config(self): - ... diff --git a/TTS/tests/vocoder_tests/__init__.py b/TTS/tests/vocoder_tests/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tests/vocoder_tests/test_fullband_melgan_train.py b/TTS/tests/vocoder_tests/test_fullband_melgan_train.py deleted file mode 100644 index 9d4e193382eb5b1638e70a53fa17a33796870339..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_fullband_melgan_train.py +++ /dev/null @@ -1,43 +0,0 @@ -import glob -import os -import shutil - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.vocoder.configs import FullbandMelganConfig - -config_path = os.path.join(get_tests_output_path(), "test_vocoder_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - -config = FullbandMelganConfig( - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - run_eval=True, - test_delay_epochs=-1, - epochs=1, - seq_len=8192, - eval_split_size=1, - print_step=1, - print_eval=True, - data_path="tests/data/ljspeech", - discriminator_model_params={"base_channels": 16, "max_channels": 64, "downsample_factors": [4, 4, 4]}, - output_path=output_path, -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_vocoder.py --config_path {config_path} " -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# restore the model and continue training for one more epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_vocoder.py --continue_path {continue_path} " -) -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/vocoder_tests/test_hifigan_train.py b/TTS/tests/vocoder_tests/test_hifigan_train.py deleted file mode 100644 index c506fb48dca4dd71eb439489e0af5275b565a8a1..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_hifigan_train.py +++ /dev/null @@ -1,43 +0,0 @@ -import glob -import os -import shutil - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.vocoder.configs import HifiganConfig - -config_path = os.path.join(get_tests_output_path(), "test_vocoder_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -config = HifiganConfig( - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - run_eval=True, - test_delay_epochs=-1, - epochs=1, - seq_len=1024, - eval_split_size=1, - print_step=1, - print_eval=True, - data_path="tests/data/ljspeech", - output_path=output_path, -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_vocoder.py --config_path {config_path} " -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# restore the model and continue training for one more epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_vocoder.py --continue_path {continue_path} " -) -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/vocoder_tests/test_melgan_train.py b/TTS/tests/vocoder_tests/test_melgan_train.py deleted file mode 100644 index 6ef9cd495b022f8d01d4c2ed6cd2667e1b1894ce..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_melgan_train.py +++ /dev/null @@ -1,43 +0,0 @@ -import glob -import os -import shutil - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.vocoder.configs import MelganConfig - -config_path = os.path.join(get_tests_output_path(), "test_vocoder_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - -config = MelganConfig( - batch_size=4, - eval_batch_size=4, - num_loader_workers=0, - num_eval_loader_workers=0, - run_eval=True, - test_delay_epochs=-1, - epochs=1, - seq_len=2048, - eval_split_size=1, - print_step=1, - discriminator_model_params={"base_channels": 16, "max_channels": 64, "downsample_factors": [4, 4, 4]}, - print_eval=True, - data_path="tests/data/ljspeech", - output_path=output_path, -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_vocoder.py --config_path {config_path} " -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# restore the model and continue training for one more epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_vocoder.py --continue_path {continue_path} " -) -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/vocoder_tests/test_multiband_melgan_train.py b/TTS/tests/vocoder_tests/test_multiband_melgan_train.py deleted file mode 100644 index 8002760706d1687fb7cb5e33107cc84add71a51a..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_multiband_melgan_train.py +++ /dev/null @@ -1,44 +0,0 @@ -import glob -import os -import shutil - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.vocoder.configs import MultibandMelganConfig - -config_path = os.path.join(get_tests_output_path(), "test_vocoder_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - -config = MultibandMelganConfig( - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - run_eval=True, - test_delay_epochs=-1, - epochs=1, - seq_len=8192, - eval_split_size=1, - print_step=1, - print_eval=True, - steps_to_start_discriminator=1, - data_path="tests/data/ljspeech", - discriminator_model_params={"base_channels": 16, "max_channels": 64, "downsample_factors": [4, 4, 4]}, - output_path=output_path, -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_vocoder.py --config_path {config_path} " -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# restore the model and continue training for one more epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_vocoder.py --continue_path {continue_path} " -) -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/vocoder_tests/test_parallel_wavegan_train.py b/TTS/tests/vocoder_tests/test_parallel_wavegan_train.py deleted file mode 100644 index a126befe2e24cb67500bc6ee5b7450acfee5369b..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_parallel_wavegan_train.py +++ /dev/null @@ -1,42 +0,0 @@ -import glob -import os -import shutil - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.vocoder.configs import ParallelWaveganConfig - -config_path = os.path.join(get_tests_output_path(), "test_vocoder_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - -config = ParallelWaveganConfig( - batch_size=4, - eval_batch_size=4, - num_loader_workers=0, - num_eval_loader_workers=0, - run_eval=True, - test_delay_epochs=-1, - epochs=1, - seq_len=2048, - eval_split_size=1, - print_step=1, - print_eval=True, - data_path="tests/data/ljspeech", - output_path=output_path, -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_vocoder.py --config_path {config_path} " -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# restore the model and continue training for one more epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_vocoder.py --continue_path {continue_path} " -) -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/vocoder_tests/test_vocoder_gan_datasets.py b/TTS/tests/vocoder_tests/test_vocoder_gan_datasets.py deleted file mode 100644 index c39d70e94c5b9f55f6261c3987db38df65ea136f..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_vocoder_gan_datasets.py +++ /dev/null @@ -1,109 +0,0 @@ -import os - -import numpy as np -from torch.utils.data import DataLoader - -from tests import get_tests_output_path, get_tests_path -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.configs import BaseGANVocoderConfig -from TTS.vocoder.datasets.gan_dataset import GANDataset -from TTS.vocoder.datasets.preprocess import load_wav_data - -file_path = os.path.dirname(os.path.realpath(__file__)) -OUTPATH = os.path.join(get_tests_output_path(), "loader_tests/") -os.makedirs(OUTPATH, exist_ok=True) - -C = BaseGANVocoderConfig() - -test_data_path = os.path.join(get_tests_path(), "data/ljspeech/") -ok_ljspeech = os.path.exists(test_data_path) - - -def gan_dataset_case( - batch_size, seq_len, hop_len, conv_pad, return_pairs, return_segments, use_noise_augment, use_cache, num_workers -): - """Run dataloader with given parameters and check conditions""" - ap = AudioProcessor(**C.audio) - _, train_items = load_wav_data(test_data_path, 10) - dataset = GANDataset( - ap, - train_items, - seq_len=seq_len, - hop_len=hop_len, - pad_short=2000, - conv_pad=conv_pad, - return_pairs=return_pairs, - return_segments=return_segments, - use_noise_augment=use_noise_augment, - use_cache=use_cache, - ) - loader = DataLoader( - dataset=dataset, batch_size=batch_size, shuffle=True, num_workers=num_workers, pin_memory=True, drop_last=True - ) - - max_iter = 10 - count_iter = 0 - - def check_item(feat, wav): - """Pass a single pair of features and waveform""" - feat = feat.numpy() - wav = wav.numpy() - expected_feat_shape = (batch_size, ap.num_mels, seq_len // hop_len + conv_pad * 2) - - # check shapes - assert np.all(feat.shape == expected_feat_shape), f" [!] {feat.shape} vs {expected_feat_shape}" - assert (feat.shape[2] - conv_pad * 2) * hop_len == wav.shape[2] - - # check feature vs audio match - if not use_noise_augment: - for idx in range(batch_size): - audio = wav[idx].squeeze() - feat = feat[idx] - mel = ap.melspectrogram(audio) - # the first 2 and the last 2 frames are skipped due to the padding - # differences in stft - max_diff = abs((feat - mel[:, : feat.shape[-1]])[:, 2:-2]).max() - assert max_diff <= 1e-6, f" [!] {max_diff}" - - # return random segments or return the whole audio - if return_segments: - if return_pairs: - for item1, item2 in loader: - feat1, wav1 = item1 - feat2, wav2 = item2 - check_item(feat1, wav1) - check_item(feat2, wav2) - count_iter += 1 - else: - for item1 in loader: - feat1, wav1 = item1 - check_item(feat1, wav1) - count_iter += 1 - else: - for item in loader: - feat, wav = item - expected_feat_shape = (batch_size, ap.num_mels, (wav.shape[-1] // hop_len) + (conv_pad * 2)) - assert np.all(feat.shape == expected_feat_shape), f" [!] {feat.shape} vs {expected_feat_shape}" - assert (feat.shape[2] - conv_pad * 2) * hop_len == wav.shape[2] - count_iter += 1 - if count_iter == max_iter: - break - - -def test_parametrized_gan_dataset(): - """test dataloader with different parameters""" - params = [ - [32, C.audio["hop_length"] * 10, C.audio["hop_length"], 0, True, True, False, True, 0], - [32, C.audio["hop_length"] * 10, C.audio["hop_length"], 0, True, True, False, True, 4], - [1, C.audio["hop_length"] * 10, C.audio["hop_length"], 0, True, True, True, True, 0], - [1, C.audio["hop_length"], C.audio["hop_length"], 0, True, True, True, True, 0], - [1, C.audio["hop_length"] * 10, C.audio["hop_length"], 2, True, True, True, True, 0], - [1, C.audio["hop_length"] * 10, C.audio["hop_length"], 0, True, False, True, True, 0], - [1, C.audio["hop_length"] * 10, C.audio["hop_length"], 0, True, True, False, True, 0], - [1, C.audio["hop_length"] * 10, C.audio["hop_length"], 0, False, True, True, False, 0], - [1, C.audio["hop_length"] * 10, C.audio["hop_length"], 0, True, False, False, False, 0], - [1, C.audio["hop_length"] * 10, C.audio["hop_length"], 0, True, False, False, False, 0], - ] - for param in params: - print(param) - gan_dataset_case(*param) diff --git a/TTS/tests/vocoder_tests/test_vocoder_losses.py b/TTS/tests/vocoder_tests/test_vocoder_losses.py deleted file mode 100644 index 2a35aa2e3717ee7332e1a3926736971c3c97a090..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_vocoder_losses.py +++ /dev/null @@ -1,92 +0,0 @@ -import os - -import torch - -from tests import get_tests_input_path, get_tests_output_path, get_tests_path -from TTS.config import BaseAudioConfig -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.layers.losses import MelganFeatureLoss, MultiScaleSTFTLoss, STFTLoss, TorchSTFT - -TESTS_PATH = get_tests_path() - -OUT_PATH = os.path.join(get_tests_output_path(), "audio_tests") -os.makedirs(OUT_PATH, exist_ok=True) - -WAV_FILE = os.path.join(get_tests_input_path(), "example_1.wav") - -ap = AudioProcessor(**BaseAudioConfig().to_dict()) - - -def test_torch_stft(): - torch_stft = TorchSTFT(ap.fft_size, ap.hop_length, ap.win_length) - # librosa stft - wav = ap.load_wav(WAV_FILE) - M_librosa = abs(ap._stft(wav)) # pylint: disable=protected-access - # torch stft - wav = torch.from_numpy(wav[None, :]).float() - M_torch = torch_stft(wav) - # check the difference b/w librosa and torch outputs - assert (M_librosa - M_torch[0].data.numpy()).max() < 1e-5 - - -def test_stft_loss(): - stft_loss = STFTLoss(ap.fft_size, ap.hop_length, ap.win_length) - wav = ap.load_wav(WAV_FILE) - wav = torch.from_numpy(wav[None, :]).float() - loss_m, loss_sc = stft_loss(wav, wav) - assert loss_m + loss_sc == 0 - loss_m, loss_sc = stft_loss(wav, torch.rand_like(wav)) - assert loss_sc < 1.0 - assert loss_m + loss_sc > 0 - - -def test_multiscale_stft_loss(): - stft_loss = MultiScaleSTFTLoss( - [ap.fft_size // 2, ap.fft_size, ap.fft_size * 2], - [ap.hop_length // 2, ap.hop_length, ap.hop_length * 2], - [ap.win_length // 2, ap.win_length, ap.win_length * 2], - ) - wav = ap.load_wav(WAV_FILE) - wav = torch.from_numpy(wav[None, :]).float() - loss_m, loss_sc = stft_loss(wav, wav) - assert loss_m + loss_sc == 0 - loss_m, loss_sc = stft_loss(wav, torch.rand_like(wav)) - assert loss_sc < 1.0 - assert loss_m + loss_sc > 0 - - -def test_melgan_feature_loss(): - feats_real = [] - feats_fake = [] - - # if all the features are different. - for _ in range(5): # different scales - scale_feats_real = [] - scale_feats_fake = [] - for _ in range(4): # different layers - scale_feats_real.append(torch.rand([3, 5, 7])) - scale_feats_fake.append(torch.rand([3, 5, 7])) - feats_real.append(scale_feats_real) - feats_fake.append(scale_feats_fake) - - loss_func = MelganFeatureLoss() - loss = loss_func(feats_fake, feats_real) - assert loss.item() <= 1.0 - - feats_real = [] - feats_fake = [] - - # if all the features are the same - for _ in range(5): # different scales - scale_feats_real = [] - scale_feats_fake = [] - for _ in range(4): # different layers - tensor = torch.rand([3, 5, 7]) - scale_feats_real.append(tensor) - scale_feats_fake.append(tensor) - feats_real.append(scale_feats_real) - feats_fake.append(scale_feats_fake) - - loss_func = MelganFeatureLoss() - loss = loss_func(feats_fake, feats_real) - assert loss.item() == 0 diff --git a/TTS/tests/vocoder_tests/test_vocoder_melgan_discriminator.py b/TTS/tests/vocoder_tests/test_vocoder_melgan_discriminator.py deleted file mode 100644 index a4564b5654255ff9cab6ee082b9c74e38d20b2c3..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_vocoder_melgan_discriminator.py +++ /dev/null @@ -1,26 +0,0 @@ -import numpy as np -import torch - -from TTS.vocoder.models.melgan_discriminator import MelganDiscriminator -from TTS.vocoder.models.melgan_multiscale_discriminator import MelganMultiscaleDiscriminator - - -def test_melgan_discriminator(): - model = MelganDiscriminator() - print(model) - dummy_input = torch.rand((4, 1, 256 * 10)) - output, _ = model(dummy_input) - assert np.all(output.shape == (4, 1, 10)) - - -def test_melgan_multi_scale_discriminator(): - model = MelganMultiscaleDiscriminator() - print(model) - dummy_input = torch.rand((4, 1, 256 * 16)) - scores, feats = model(dummy_input) - assert len(scores) == 3 - assert len(scores) == len(feats) - assert np.all(scores[0].shape == (4, 1, 64)) - assert np.all(feats[0][0].shape == (4, 16, 4096)) - assert np.all(feats[0][1].shape == (4, 64, 1024)) - assert np.all(feats[0][2].shape == (4, 256, 256)) diff --git a/TTS/tests/vocoder_tests/test_vocoder_melgan_generator.py b/TTS/tests/vocoder_tests/test_vocoder_melgan_generator.py deleted file mode 100644 index f4958de427ece20296adbcec54441455de997518..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_vocoder_melgan_generator.py +++ /dev/null @@ -1,14 +0,0 @@ -import numpy as np -import torch - -from TTS.vocoder.models.melgan_generator import MelganGenerator - - -def test_melgan_generator(): - model = MelganGenerator() - print(model) - dummy_input = torch.rand((4, 80, 64)) - output = model(dummy_input) - assert np.all(output.shape == (4, 1, 64 * 256)) - output = model.inference(dummy_input) - assert np.all(output.shape == (4, 1, (64 + 4) * 256)) diff --git a/TTS/tests/vocoder_tests/test_vocoder_parallel_wavegan_discriminator.py b/TTS/tests/vocoder_tests/test_vocoder_parallel_wavegan_discriminator.py deleted file mode 100644 index d4eca0d1374fb5cabf111cb52cf249969392bad4..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_vocoder_parallel_wavegan_discriminator.py +++ /dev/null @@ -1,46 +0,0 @@ -import numpy as np -import torch - -from TTS.vocoder.models.parallel_wavegan_discriminator import ( - ParallelWaveganDiscriminator, - ResidualParallelWaveganDiscriminator, -) - - -def test_pwgan_disciminator(): - model = ParallelWaveganDiscriminator( - in_channels=1, - out_channels=1, - kernel_size=3, - num_layers=10, - conv_channels=64, - dilation_factor=1, - nonlinear_activation="LeakyReLU", - nonlinear_activation_params={"negative_slope": 0.2}, - bias=True, - ) - dummy_x = torch.rand((4, 1, 64 * 256)) - output = model(dummy_x) - assert np.all(output.shape == (4, 1, 64 * 256)) - model.remove_weight_norm() - - -def test_redisual_pwgan_disciminator(): - model = ResidualParallelWaveganDiscriminator( - in_channels=1, - out_channels=1, - kernel_size=3, - num_layers=30, - stacks=3, - res_channels=64, - gate_channels=128, - skip_channels=64, - dropout=0.0, - bias=True, - nonlinear_activation="LeakyReLU", - nonlinear_activation_params={"negative_slope": 0.2}, - ) - dummy_x = torch.rand((4, 1, 64 * 256)) - output = model(dummy_x) - assert np.all(output.shape == (4, 1, 64 * 256)) - model.remove_weight_norm() diff --git a/TTS/tests/vocoder_tests/test_vocoder_parallel_wavegan_generator.py b/TTS/tests/vocoder_tests/test_vocoder_parallel_wavegan_generator.py deleted file mode 100644 index 21f6f08fd6b10e5ad9fe36e452f46d488cad3503..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_vocoder_parallel_wavegan_generator.py +++ /dev/null @@ -1,28 +0,0 @@ -import numpy as np -import torch - -from TTS.vocoder.models.parallel_wavegan_generator import ParallelWaveganGenerator - - -def test_pwgan_generator(): - model = ParallelWaveganGenerator( - in_channels=1, - out_channels=1, - kernel_size=3, - num_res_blocks=30, - stacks=3, - res_channels=64, - gate_channels=128, - skip_channels=64, - aux_channels=80, - dropout=0.0, - bias=True, - use_weight_norm=True, - upsample_factors=[4, 4, 4, 4], - ) - dummy_c = torch.rand((2, 80, 5)) - output = model(dummy_c) - assert np.all(output.shape == (2, 1, 5 * 256)), output.shape - model.remove_weight_norm() - output = model.inference(dummy_c) - assert np.all(output.shape == (2, 1, (5 + 4) * 256)) diff --git a/TTS/tests/vocoder_tests/test_vocoder_pqmf.py b/TTS/tests/vocoder_tests/test_vocoder_pqmf.py deleted file mode 100644 index afe8d1dc8f8bf462cb3f030d3d8f113ed547c7d9..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_vocoder_pqmf.py +++ /dev/null @@ -1,26 +0,0 @@ -import os - -import soundfile as sf -import torch -from librosa.core import load - -from tests import get_tests_input_path, get_tests_output_path, get_tests_path -from TTS.vocoder.layers.pqmf import PQMF - -TESTS_PATH = get_tests_path() -WAV_FILE = os.path.join(get_tests_input_path(), "example_1.wav") - - -def test_pqmf(): - w, sr = load(WAV_FILE) - - layer = PQMF(N=4, taps=62, cutoff=0.15, beta=9.0) - w, sr = load(WAV_FILE) - w2 = torch.from_numpy(w[None, None, :]) - b2 = layer.analysis(w2) - w2_ = layer.synthesis(b2) - - print(w2_.max()) - print(w2_.min()) - print(w2_.mean()) - sf.write(os.path.join(get_tests_output_path(), "pqmf_output.wav"), w2_.flatten().detach(), sr) diff --git a/TTS/tests/vocoder_tests/test_vocoder_rwd.py b/TTS/tests/vocoder_tests/test_vocoder_rwd.py deleted file mode 100644 index 371ad9e41e584c41564dbcd7b9ff9548c61aac75..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_vocoder_rwd.py +++ /dev/null @@ -1,19 +0,0 @@ -import numpy as np -import torch - -from TTS.vocoder.models.random_window_discriminator import RandomWindowDiscriminator - - -def test_rwd(): - layer = RandomWindowDiscriminator( - cond_channels=80, - window_sizes=(512, 1024, 2048, 4096, 8192), - cond_disc_downsample_factors=[(8, 4, 2, 2, 2), (8, 4, 2, 2), (8, 4, 2), (8, 4), (4, 2, 2)], - hop_length=256, - ) - x = torch.rand([4, 1, 22050]) - c = torch.rand([4, 80, 22050 // 256]) - - scores, _ = layer(x, c) - assert len(scores) == 10 - assert np.all(scores[0].shape == (4, 1, 1)) diff --git a/TTS/tests/vocoder_tests/test_vocoder_wavernn.py b/TTS/tests/vocoder_tests/test_vocoder_wavernn.py deleted file mode 100644 index 966ea3dd00c1f745afbde4f26e9097f355e651a2..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_vocoder_wavernn.py +++ /dev/null @@ -1,51 +0,0 @@ -import random - -import numpy as np -import torch - -from TTS.vocoder.configs import WavernnConfig -from TTS.vocoder.models.wavernn import Wavernn, WavernnArgs - - -def test_wavernn(): - config = WavernnConfig() - config.model_args = WavernnArgs( - rnn_dims=512, - fc_dims=512, - mode="mold", - mulaw=False, - pad=2, - use_aux_net=True, - use_upsample_net=True, - upsample_factors=[4, 8, 8], - feat_dims=80, - compute_dims=128, - res_out_dims=128, - num_res_blocks=10, - ) - config.audio.hop_length = 256 - config.audio.sample_rate = 2048 - - dummy_x = torch.rand((2, 1280)) - dummy_m = torch.rand((2, 80, 9)) - y_size = random.randrange(20, 60) - dummy_y = torch.rand((80, y_size)) - - # mode: mold - model = Wavernn(config) - output = model(dummy_x, dummy_m) - assert np.all(output.shape == (2, 1280, 30)), output.shape - - # mode: gauss - config.model_args.mode = "gauss" - model = Wavernn(config) - output = model(dummy_x, dummy_m) - assert np.all(output.shape == (2, 1280, 2)), output.shape - - # mode: quantized - config.model_args.mode = 4 - model = Wavernn(config) - output = model(dummy_x, dummy_m) - assert np.all(output.shape == (2, 1280, 2**4)), output.shape - output = model.inference(dummy_y, True, 5500, 550) - assert np.all(output.shape == (256 * (y_size - 1),)) diff --git a/TTS/tests/vocoder_tests/test_vocoder_wavernn_datasets.py b/TTS/tests/vocoder_tests/test_vocoder_wavernn_datasets.py deleted file mode 100644 index 503b4e2483b447a01b0cb4abb02bc6cf34c80b90..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_vocoder_wavernn_datasets.py +++ /dev/null @@ -1,84 +0,0 @@ -import os -import shutil - -import numpy as np -from torch.utils.data import DataLoader - -from tests import get_tests_output_path, get_tests_path -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.configs import WavernnConfig -from TTS.vocoder.datasets.preprocess import load_wav_feat_data, preprocess_wav_files -from TTS.vocoder.datasets.wavernn_dataset import WaveRNNDataset - -file_path = os.path.dirname(os.path.realpath(__file__)) -OUTPATH = os.path.join(get_tests_output_path(), "loader_tests/") -os.makedirs(OUTPATH, exist_ok=True) - -C = WavernnConfig() - -test_data_path = os.path.join(get_tests_path(), "data/ljspeech/") -test_mel_feat_path = os.path.join(test_data_path, "mel") -test_quant_feat_path = os.path.join(test_data_path, "quant") -ok_ljspeech = os.path.exists(test_data_path) - - -def wavernn_dataset_case(batch_size, seq_len, hop_len, pad, mode, mulaw, num_workers): - """run dataloader with given parameters and check conditions""" - ap = AudioProcessor(**C.audio) - - C.batch_size = batch_size - C.mode = mode - C.seq_len = seq_len - C.data_path = test_data_path - - preprocess_wav_files(test_data_path, C, ap) - _, train_items = load_wav_feat_data(test_data_path, test_mel_feat_path, 5) - - dataset = WaveRNNDataset( - ap=ap, items=train_items, seq_len=seq_len, hop_len=hop_len, pad=pad, mode=mode, mulaw=mulaw - ) - # sampler = DistributedSampler(dataset) if num_gpus > 1 else None - loader = DataLoader( - dataset, - shuffle=True, - collate_fn=dataset.collate, - batch_size=batch_size, - num_workers=num_workers, - pin_memory=True, - ) - - max_iter = 10 - count_iter = 0 - - try: - for data in loader: - x_input, mels, _ = data - expected_feat_shape = (ap.num_mels, (x_input.shape[-1] // hop_len) + (pad * 2)) - assert np.all(mels.shape[1:] == expected_feat_shape), f" [!] {mels.shape} vs {expected_feat_shape}" - - assert (mels.shape[2] - pad * 2) * hop_len == x_input.shape[1] - count_iter += 1 - if count_iter == max_iter: - break - # except AssertionError: - # shutil.rmtree(test_mel_feat_path) - # shutil.rmtree(test_quant_feat_path) - finally: - shutil.rmtree(test_mel_feat_path) - shutil.rmtree(test_quant_feat_path) - - -def test_parametrized_wavernn_dataset(): - """test dataloader with different parameters""" - params = [ - [16, C.audio["hop_length"] * 10, C.audio["hop_length"], 2, 10, True, 0], - [16, C.audio["hop_length"] * 10, C.audio["hop_length"], 2, "mold", False, 4], - [1, C.audio["hop_length"] * 10, C.audio["hop_length"], 2, 9, False, 0], - [1, C.audio["hop_length"], C.audio["hop_length"], 2, 10, True, 0], - [1, C.audio["hop_length"], C.audio["hop_length"], 2, "mold", False, 0], - [1, C.audio["hop_length"] * 5, C.audio["hop_length"], 4, 10, False, 2], - [1, C.audio["hop_length"] * 5, C.audio["hop_length"], 2, "mold", False, 0], - ] - for param in params: - print(param) - wavernn_dataset_case(*param) diff --git a/TTS/tests/vocoder_tests/test_wavegrad.py b/TTS/tests/vocoder_tests/test_wavegrad.py deleted file mode 100644 index 43b5f08042f1139e536aae2d57cd85675dce49e7..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_wavegrad.py +++ /dev/null @@ -1,59 +0,0 @@ -import unittest - -import numpy as np -import torch -from torch import optim - -from TTS.vocoder.configs import WavegradConfig -from TTS.vocoder.models.wavegrad import Wavegrad, WavegradArgs - -# pylint: disable=unused-variable - -torch.manual_seed(1) -use_cuda = torch.cuda.is_available() -device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") - - -class WavegradTrainTest(unittest.TestCase): - def test_train_step(self): # pylint: disable=no-self-use - """Test if all layers are updated in a basic training cycle""" - input_dummy = torch.rand(8, 1, 20 * 300).to(device) - mel_spec = torch.rand(8, 80, 20).to(device) - - criterion = torch.nn.L1Loss().to(device) - args = WavegradArgs( - in_channels=80, - out_channels=1, - upsample_factors=[5, 5, 3, 2, 2], - upsample_dilations=[[1, 2, 1, 2], [1, 2, 1, 2], [1, 2, 4, 8], [1, 2, 4, 8], [1, 2, 4, 8]], - ) - config = WavegradConfig(model_params=args) - model = Wavegrad(config) - - model_ref = Wavegrad(config) - model.train() - model.to(device) - betas = np.linspace(1e-6, 1e-2, 1000) - model.compute_noise_level(betas) - model_ref.load_state_dict(model.state_dict()) - model_ref.to(device) - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - assert (param - param_ref).sum() == 0, param - count += 1 - optimizer = optim.Adam(model.parameters(), lr=0.001) - for i in range(5): - y_hat = model.forward(input_dummy, mel_spec, torch.rand(8).to(device)) - optimizer.zero_grad() - loss = criterion(y_hat, input_dummy) - loss.backward() - optimizer.step() - # check parameter changes - count = 0 - for param, param_ref in zip(model.parameters(), model_ref.parameters()): - # ignore pre-higway layer since it works conditional - # if count not in [145, 59]: - assert (param != param_ref).any(), "param {} with shape {} not updated!! \n{}\n{}".format( - count, param.shape, param, param_ref - ) - count += 1 diff --git a/TTS/tests/vocoder_tests/test_wavegrad_layers.py b/TTS/tests/vocoder_tests/test_wavegrad_layers.py deleted file mode 100644 index a0b021dcf649bddd9aad940cb399cac1ca884e58..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_wavegrad_layers.py +++ /dev/null @@ -1,95 +0,0 @@ -import torch - -from TTS.vocoder.configs import WavegradConfig -from TTS.vocoder.layers.wavegrad import DBlock, FiLM, PositionalEncoding, UBlock -from TTS.vocoder.models.wavegrad import Wavegrad, WavegradArgs - - -def test_positional_encoding(): - layer = PositionalEncoding(50) - inp = torch.rand(32, 50, 100) - nl = torch.rand(32) - o = layer(inp, nl) - - assert o.shape[0] == 32 - assert o.shape[1] == 50 - assert o.shape[2] == 100 - assert isinstance(o, torch.FloatTensor) - - -def test_film(): - layer = FiLM(50, 76) - inp = torch.rand(32, 50, 100) - nl = torch.rand(32) - shift, scale = layer(inp, nl) - - assert shift.shape[0] == 32 - assert shift.shape[1] == 76 - assert shift.shape[2] == 100 - assert isinstance(shift, torch.FloatTensor) - - assert scale.shape[0] == 32 - assert scale.shape[1] == 76 - assert scale.shape[2] == 100 - assert isinstance(scale, torch.FloatTensor) - - layer.apply_weight_norm() - layer.remove_weight_norm() - - -def test_ublock(): - inp1 = torch.rand(32, 50, 100) - inp2 = torch.rand(32, 50, 50) - nl = torch.rand(32) - - layer_film = FiLM(50, 100) - layer = UBlock(50, 100, 2, [1, 2, 4, 8]) - - scale, shift = layer_film(inp1, nl) - o = layer(inp2, shift, scale) - - assert o.shape[0] == 32 - assert o.shape[1] == 100 - assert o.shape[2] == 100 - assert isinstance(o, torch.FloatTensor) - - layer.apply_weight_norm() - layer.remove_weight_norm() - - -def test_dblock(): - inp = torch.rand(32, 50, 130) - layer = DBlock(50, 100, 2) - o = layer(inp) - - assert o.shape[0] == 32 - assert o.shape[1] == 100 - assert o.shape[2] == 65 - assert isinstance(o, torch.FloatTensor) - - layer.apply_weight_norm() - layer.remove_weight_norm() - - -def test_wavegrad_forward(): - x = torch.rand(32, 1, 20 * 300) - c = torch.rand(32, 80, 20) - noise_scale = torch.rand(32) - - args = WavegradArgs( - in_channels=80, - out_channels=1, - upsample_factors=[5, 5, 3, 2, 2], - upsample_dilations=[[1, 2, 1, 2], [1, 2, 1, 2], [1, 2, 4, 8], [1, 2, 4, 8], [1, 2, 4, 8]], - ) - config = WavegradConfig(model_params=args) - model = Wavegrad(config) - o = model.forward(x, c, noise_scale) - - assert o.shape[0] == 32 - assert o.shape[1] == 1 - assert o.shape[2] == 20 * 300 - assert isinstance(o, torch.FloatTensor) - - model.apply_weight_norm() - model.remove_weight_norm() diff --git a/TTS/tests/vocoder_tests/test_wavegrad_train.py b/TTS/tests/vocoder_tests/test_wavegrad_train.py deleted file mode 100644 index fe56ee783f36b89879af78e58316b19ff0e23f54..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_wavegrad_train.py +++ /dev/null @@ -1,43 +0,0 @@ -import glob -import os -import shutil - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.vocoder.configs import WavegradConfig - -config_path = os.path.join(get_tests_output_path(), "test_vocoder_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - -config = WavegradConfig( - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - run_eval=True, - test_delay_epochs=-1, - epochs=1, - seq_len=8192, - eval_split_size=1, - print_step=1, - print_eval=True, - data_path="tests/data/ljspeech", - output_path=output_path, - test_noise_schedule={"min_val": 1e-6, "max_val": 1e-2, "num_steps": 2}, -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_vocoder.py --config_path {config_path} " -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# restore the model and continue training for one more epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_vocoder.py --continue_path {continue_path} " -) -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/vocoder_tests/test_wavernn_train.py b/TTS/tests/vocoder_tests/test_wavernn_train.py deleted file mode 100644 index 337e24259f0ffa39d4d77b57749988b64763c2f1..0000000000000000000000000000000000000000 --- a/TTS/tests/vocoder_tests/test_wavernn_train.py +++ /dev/null @@ -1,45 +0,0 @@ -import glob -import os -import shutil - -from tests import get_device_id, get_tests_output_path, run_cli -from TTS.vocoder.configs import WavernnConfig -from TTS.vocoder.models.wavernn import WavernnArgs - -config_path = os.path.join(get_tests_output_path(), "test_vocoder_config.json") -output_path = os.path.join(get_tests_output_path(), "train_outputs") - - -config = WavernnConfig( - model_args=WavernnArgs(), - batch_size=8, - eval_batch_size=8, - num_loader_workers=0, - num_eval_loader_workers=0, - run_eval=True, - test_delay_epochs=-1, - epochs=1, - seq_len=256, # for shorter test time - eval_split_size=1, - print_step=1, - print_eval=True, - data_path="tests/data/ljspeech", - output_path=output_path, -) -config.audio.do_trim_silence = True -config.audio.trim_db = 60 -config.save_json(config_path) - -# train the model for one epoch -command_train = f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_vocoder.py --config_path {config_path} " -run_cli(command_train) - -# Find latest folder -continue_path = max(glob.glob(os.path.join(output_path, "*/")), key=os.path.getmtime) - -# restore the model and continue training for one more epoch -command_train = ( - f"CUDA_VISIBLE_DEVICES='{get_device_id()}' python TTS/bin/train_vocoder.py --continue_path {continue_path} " -) -run_cli(command_train) -shutil.rmtree(continue_path) diff --git a/TTS/tests/zoo_tests/__init__.py b/TTS/tests/zoo_tests/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tests/zoo_tests/test_models.py b/TTS/tests/zoo_tests/test_models.py deleted file mode 100644 index d3a83980c0628deef0bfeacd8547ed65231f8fd2..0000000000000000000000000000000000000000 --- a/TTS/tests/zoo_tests/test_models.py +++ /dev/null @@ -1,101 +0,0 @@ -#!/usr/bin/env python3` -import glob -import os -import shutil - -from tests import get_tests_data_path, get_tests_output_path, run_cli -from TTS.tts.utils.languages import LanguageManager -from TTS.tts.utils.speakers import SpeakerManager -from TTS.utils.generic_utils import get_user_data_dir -from TTS.utils.manage import ModelManager - - -def run_models(offset=0, step=1): - """Check if all the models are downloadable and tts models run correctly.""" - print(" > Run synthesizer with all the models.") - output_path = os.path.join(get_tests_output_path(), "output.wav") - manager = ModelManager(output_prefix=get_tests_output_path(), progress_bar=False) - model_names = [name for name in manager.list_models() if "bark" not in name] - for model_name in model_names[offset::step]: - print(f"\n > Run - {model_name}") - model_path, _, _ = manager.download_model(model_name) - if "tts_models" in model_name: - local_download_dir = os.path.dirname(model_path) - # download and run the model - speaker_files = glob.glob(local_download_dir + "/speaker*") - language_files = glob.glob(local_download_dir + "/language*") - language_id = "" - if len(speaker_files) > 0: - # multi-speaker model - if "speaker_ids" in speaker_files[0]: - speaker_manager = SpeakerManager(speaker_id_file_path=speaker_files[0]) - elif "speakers" in speaker_files[0]: - speaker_manager = SpeakerManager(d_vectors_file_path=speaker_files[0]) - - # multi-lingual model - Assuming multi-lingual models are also multi-speaker - if len(language_files) > 0 and "language_ids" in language_files[0]: - language_manager = LanguageManager(language_ids_file_path=language_files[0]) - language_id = language_manager.language_names[0] - - speaker_id = list(speaker_manager.name_to_id.keys())[0] - run_cli( - f"tts --model_name {model_name} " - f'--text "This is an example." --out_path "{output_path}" --speaker_idx "{speaker_id}" --language_idx "{language_id}" --progress_bar False' - ) - else: - # single-speaker model - run_cli( - f"tts --model_name {model_name} " - f'--text "This is an example." --out_path "{output_path}" --progress_bar False' - ) - # remove downloaded models - shutil.rmtree(local_download_dir) - shutil.rmtree(get_user_data_dir("tts")) - elif "voice_conversion_models" in model_name: - speaker_wav = os.path.join(get_tests_data_path(), "ljspeech", "wavs", "LJ001-0001.wav") - reference_wav = os.path.join(get_tests_data_path(), "ljspeech", "wavs", "LJ001-0032.wav") - run_cli( - f"tts --model_name {model_name} " - f'--out_path "{output_path}" --source_wav "{speaker_wav}" --target_wav "{reference_wav}" --progress_bar False' - ) - else: - # only download the model - manager.download_model(model_name) - print(f" | > OK: {model_name}") - - # folders = glob.glob(os.path.join(manager.output_prefix, "*")) - # assert len(folders) == len(model_names) // step - - -def test_models_offset_0_step_3(): - run_models(offset=0, step=3) - - -def test_models_offset_1_step_3(): - run_models(offset=1, step=3) - - -def test_models_offset_2_step_3(): - run_models(offset=2, step=3) - - -def test_bark(): - """Bark is too big to run on github actions. We need to test it locally""" - output_path = os.path.join(get_tests_output_path(), "output.wav") - run_cli( - f" tts --model_name tts_models/multilingual/multi-dataset/bark " - f'--text "This is an example." --out_path "{output_path}" --progress_bar False' - ) - - -def test_voice_conversion(): - print(" > Run voice conversion inference using YourTTS model.") - model_name = "tts_models/multilingual/multi-dataset/your_tts" - language_id = "en" - speaker_wav = os.path.join(get_tests_data_path(), "ljspeech", "wavs", "LJ001-0001.wav") - reference_wav = os.path.join(get_tests_data_path(), "ljspeech", "wavs", "LJ001-0032.wav") - output_path = os.path.join(get_tests_output_path(), "output.wav") - run_cli( - f"tts --model_name {model_name}" - f" --out_path {output_path} --speaker_wav {speaker_wav} --reference_wav {reference_wav} --language_idx {language_id} --progress_bar False" - ) diff --git a/TTS/tts/__init__.py b/TTS/tts/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/configs/__init__.py b/TTS/tts/configs/__init__.py deleted file mode 100644 index 3146ac1c116cb807a81889b7a9ab223b9a051036..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -import importlib -import os -from inspect import isclass - -# import all files under configs/ -# configs_dir = os.path.dirname(__file__) -# for file in os.listdir(configs_dir): -# path = os.path.join(configs_dir, file) -# if not file.startswith("_") and not file.startswith(".") and (file.endswith(".py") or os.path.isdir(path)): -# config_name = file[: file.find(".py")] if file.endswith(".py") else file -# module = importlib.import_module("TTS.tts.configs." + config_name) -# for attribute_name in dir(module): -# attribute = getattr(module, attribute_name) - -# if isclass(attribute): -# # Add the class to this package's variables -# globals()[attribute_name] = attribute diff --git a/TTS/tts/configs/align_tts_config.py b/TTS/tts/configs/align_tts_config.py deleted file mode 100644 index 317a01af53ce26914d83610a913eb44b5836dac2..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/align_tts_config.py +++ /dev/null @@ -1,107 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.align_tts import AlignTTSArgs - - -@dataclass -class AlignTTSConfig(BaseTTSConfig): - """Defines parameters for AlignTTS model. - Example: - - >>> from TTS.tts.configs.align_tts_config import AlignTTSConfig - >>> config = AlignTTSConfig() - - Args: - model(str): - Model name used for selecting the right model at initialization. Defaults to `align_tts`. - positional_encoding (bool): - enable / disable positional encoding applied to the encoder output. Defaults to True. - hidden_channels (int): - Base number of hidden channels. Defines all the layers expect ones defined by the specific encoder or decoder - parameters. Defaults to 256. - hidden_channels_dp (int): - Number of hidden channels of the duration predictor's layers. Defaults to 256. - encoder_type (str): - Type of the encoder used by the model. Look at `TTS.tts.layers.feed_forward.encoder` for more details. - Defaults to `fftransformer`. - encoder_params (dict): - Parameters used to define the encoder network. Look at `TTS.tts.layers.feed_forward.encoder` for more details. - Defaults to `{"hidden_channels_ffn": 1024, "num_heads": 2, "num_layers": 6, "dropout_p": 0.1}`. - decoder_type (str): - Type of the decoder used by the model. Look at `TTS.tts.layers.feed_forward.decoder` for more details. - Defaults to `fftransformer`. - decoder_params (dict): - Parameters used to define the decoder network. Look at `TTS.tts.layers.feed_forward.decoder` for more details. - Defaults to `{"hidden_channels_ffn": 1024, "num_heads": 2, "num_layers": 6, "dropout_p": 0.1}`. - phase_start_steps (List[int]): - A list of number of steps required to start the next training phase. AlignTTS has 4 different training - phases. Thus you need to define 4 different values to enable phase based training. If None, it - trains the whole model together. Defaults to None. - ssim_alpha (float): - Weight for the SSIM loss. If set <= 0, disables the SSIM loss. Defaults to 1.0. - duration_loss_alpha (float): - Weight for the duration predictor's loss. Defaults to 1.0. - mdn_alpha (float): - Weight for the MDN loss. Defaults to 1.0. - spec_loss_alpha (float): - Weight for the MSE spectrogram loss. If set <= 0, disables the L1 loss. Defaults to 1.0. - use_speaker_embedding (bool): - enable / disable using speaker embeddings for multi-speaker models. If set True, the model is - in the multi-speaker mode. Defaults to False. - use_d_vector_file (bool): - enable /disable using external speaker embeddings in place of the learned embeddings. Defaults to False. - d_vector_file (str): - Path to the file including pre-computed speaker embeddings. Defaults to None. - noam_schedule (bool): - enable / disable the use of Noam LR scheduler. Defaults to False. - warmup_steps (int): - Number of warm-up steps for the Noam scheduler. Defaults 4000. - lr (float): - Initial learning rate. Defaults to `1e-3`. - wd (float): - Weight decay coefficient. Defaults to `1e-7`. - min_seq_len (int): - Minimum input sequence length to be used at training. - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage.""" - - model: str = "align_tts" - # model specific params - model_args: AlignTTSArgs = field(default_factory=AlignTTSArgs) - phase_start_steps: List[int] = None - - ssim_alpha: float = 1.0 - spec_loss_alpha: float = 1.0 - dur_loss_alpha: float = 1.0 - mdn_alpha: float = 1.0 - - # multi-speaker settings - use_speaker_embedding: bool = False - use_d_vector_file: bool = False - d_vector_file: str = False - - # optimizer parameters - optimizer: str = "Adam" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.9, 0.998], "weight_decay": 1e-6}) - lr_scheduler: str = None - lr_scheduler_params: dict = None - lr: float = 1e-4 - grad_clip: float = 5.0 - - # overrides - min_seq_len: int = 13 - max_seq_len: int = 200 - r: int = 1 - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "Be a voice, not an echo.", - "I'm sorry Dave. I'm afraid I can't do that.", - "This cake is great. It's so delicious and moist.", - "Prior to November 22, 1963.", - ] - ) diff --git a/TTS/tts/configs/bark_config.py b/TTS/tts/configs/bark_config.py deleted file mode 100644 index 4d1cd1374afe8d5f0b9e87ed81db25d7e4032af9..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/bark_config.py +++ /dev/null @@ -1,105 +0,0 @@ -import os -from dataclasses import dataclass, field -from typing import Dict - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.layers.bark.model import GPTConfig -from TTS.tts.layers.bark.model_fine import FineGPTConfig -from TTS.tts.models.bark import BarkAudioConfig -from TTS.utils.generic_utils import get_user_data_dir - - -@dataclass -class BarkConfig(BaseTTSConfig): - """Bark TTS configuration - - Args: - model (str): model name that registers the model. - audio (BarkAudioConfig): audio configuration. Defaults to BarkAudioConfig(). - num_chars (int): number of characters in the alphabet. Defaults to 0. - semantic_config (GPTConfig): semantic configuration. Defaults to GPTConfig(). - fine_config (FineGPTConfig): fine configuration. Defaults to FineGPTConfig(). - coarse_config (GPTConfig): coarse configuration. Defaults to GPTConfig(). - CONTEXT_WINDOW_SIZE (int): GPT context window size. Defaults to 1024. - SEMANTIC_RATE_HZ (float): semantic tokens rate in Hz. Defaults to 49.9. - SEMANTIC_VOCAB_SIZE (int): semantic vocabulary size. Defaults to 10_000. - CODEBOOK_SIZE (int): encodec codebook size. Defaults to 1024. - N_COARSE_CODEBOOKS (int): number of coarse codebooks. Defaults to 2. - N_FINE_CODEBOOKS (int): number of fine codebooks. Defaults to 8. - COARSE_RATE_HZ (int): coarse tokens rate in Hz. Defaults to 75. - SAMPLE_RATE (int): sample rate. Defaults to 24_000. - USE_SMALLER_MODELS (bool): use smaller models. Defaults to False. - TEXT_ENCODING_OFFSET (int): text encoding offset. Defaults to 10_048. - SEMANTIC_PAD_TOKEN (int): semantic pad token. Defaults to 10_000. - TEXT_PAD_TOKEN ([type]): text pad token. Defaults to 10_048. - TEXT_EOS_TOKEN ([type]): text end of sentence token. Defaults to 10_049. - TEXT_SOS_TOKEN ([type]): text start of sentence token. Defaults to 10_050. - SEMANTIC_INFER_TOKEN (int): semantic infer token. Defaults to 10_051. - COARSE_SEMANTIC_PAD_TOKEN (int): coarse semantic pad token. Defaults to 12_048. - COARSE_INFER_TOKEN (int): coarse infer token. Defaults to 12_050. - REMOTE_BASE_URL ([type]): remote base url. Defaults to "https://huggingface.co/erogol/bark/tree". - REMOTE_MODEL_PATHS (Dict): remote model paths. Defaults to None. - LOCAL_MODEL_PATHS (Dict): local model paths. Defaults to None. - SMALL_REMOTE_MODEL_PATHS (Dict): small remote model paths. Defaults to None. - CACHE_DIR (str): local cache directory. Defaults to get_user_data_dir(). - DEF_SPEAKER_DIR (str): default speaker directory to stoke speaker values for voice cloning. Defaults to get_user_data_dir(). - """ - - model: str = "bark" - audio: BarkAudioConfig = field(default_factory=BarkAudioConfig) - num_chars: int = 0 - semantic_config: GPTConfig = field(default_factory=GPTConfig) - fine_config: FineGPTConfig = field(default_factory=FineGPTConfig) - coarse_config: GPTConfig = field(default_factory=GPTConfig) - CONTEXT_WINDOW_SIZE: int = 1024 - SEMANTIC_RATE_HZ: float = 49.9 - SEMANTIC_VOCAB_SIZE: int = 10_000 - CODEBOOK_SIZE: int = 1024 - N_COARSE_CODEBOOKS: int = 2 - N_FINE_CODEBOOKS: int = 8 - COARSE_RATE_HZ: int = 75 - SAMPLE_RATE: int = 24_000 - USE_SMALLER_MODELS: bool = False - - TEXT_ENCODING_OFFSET: int = 10_048 - SEMANTIC_PAD_TOKEN: int = 10_000 - TEXT_PAD_TOKEN: int = 129_595 - SEMANTIC_INFER_TOKEN: int = 129_599 - COARSE_SEMANTIC_PAD_TOKEN: int = 12_048 - COARSE_INFER_TOKEN: int = 12_050 - - REMOTE_BASE_URL = "https://huggingface.co/erogol/bark/tree/main/" - REMOTE_MODEL_PATHS: Dict = None - LOCAL_MODEL_PATHS: Dict = None - SMALL_REMOTE_MODEL_PATHS: Dict = None - CACHE_DIR: str = str(get_user_data_dir("tts/suno/bark_v0")) - DEF_SPEAKER_DIR: str = str(get_user_data_dir("tts/bark_v0/speakers")) - - def __post_init__(self): - self.REMOTE_MODEL_PATHS = { - "text": { - "path": os.path.join(self.REMOTE_BASE_URL, "text_2.pt"), - "checksum": "54afa89d65e318d4f5f80e8e8799026a", - }, - "coarse": { - "path": os.path.join(self.REMOTE_BASE_URL, "coarse_2.pt"), - "checksum": "8a98094e5e3a255a5c9c0ab7efe8fd28", - }, - "fine": { - "path": os.path.join(self.REMOTE_BASE_URL, "fine_2.pt"), - "checksum": "59d184ed44e3650774a2f0503a48a97b", - }, - } - self.LOCAL_MODEL_PATHS = { - "text": os.path.join(self.CACHE_DIR, "text_2.pt"), - "coarse": os.path.join(self.CACHE_DIR, "coarse_2.pt"), - "fine": os.path.join(self.CACHE_DIR, "fine_2.pt"), - "hubert_tokenizer": os.path.join(self.CACHE_DIR, "tokenizer.pth"), - "hubert": os.path.join(self.CACHE_DIR, "hubert.pt"), - } - self.SMALL_REMOTE_MODEL_PATHS = { - "text": {"path": os.path.join(self.REMOTE_BASE_URL, "text.pt")}, - "coarse": {"path": os.path.join(self.REMOTE_BASE_URL, "coarse.pt")}, - "fine": {"path": os.path.join(self.REMOTE_BASE_URL, "fine.pt")}, - } - self.sample_rate = self.SAMPLE_RATE # pylint: disable=attribute-defined-outside-init diff --git a/TTS/tts/configs/delightful_tts_config.py b/TTS/tts/configs/delightful_tts_config.py deleted file mode 100644 index 805d995369e29fce7d6aa87750356b21458cd64a..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/delightful_tts_config.py +++ /dev/null @@ -1,170 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.delightful_tts import DelightfulTtsArgs, DelightfulTtsAudioConfig, VocoderConfig - - -@dataclass -class DelightfulTTSConfig(BaseTTSConfig): - """ - Configuration class for the DelightfulTTS model. - - Attributes: - model (str): Name of the model ("delightful_tts"). - audio (DelightfulTtsAudioConfig): Configuration for audio settings. - model_args (DelightfulTtsArgs): Configuration for model arguments. - use_attn_priors (bool): Whether to use attention priors. - vocoder (VocoderConfig): Configuration for the vocoder. - init_discriminator (bool): Whether to initialize the discriminator. - steps_to_start_discriminator (int): Number of steps to start the discriminator. - grad_clip (List[float]): Gradient clipping values. - lr_gen (float): Learning rate for the gan generator. - lr_disc (float): Learning rate for the gan discriminator. - lr_scheduler_gen (str): Name of the learning rate scheduler for the generator. - lr_scheduler_gen_params (dict): Parameters for the learning rate scheduler for the generator. - lr_scheduler_disc (str): Name of the learning rate scheduler for the discriminator. - lr_scheduler_disc_params (dict): Parameters for the learning rate scheduler for the discriminator. - scheduler_after_epoch (bool): Whether to schedule after each epoch. - optimizer (str): Name of the optimizer. - optimizer_params (dict): Parameters for the optimizer. - ssim_loss_alpha (float): Alpha value for the SSIM loss. - mel_loss_alpha (float): Alpha value for the mel loss. - aligner_loss_alpha (float): Alpha value for the aligner loss. - pitch_loss_alpha (float): Alpha value for the pitch loss. - energy_loss_alpha (float): Alpha value for the energy loss. - u_prosody_loss_alpha (float): Alpha value for the utterance prosody loss. - p_prosody_loss_alpha (float): Alpha value for the phoneme prosody loss. - dur_loss_alpha (float): Alpha value for the duration loss. - char_dur_loss_alpha (float): Alpha value for the character duration loss. - binary_align_loss_alpha (float): Alpha value for the binary alignment loss. - binary_loss_warmup_epochs (int): Number of warm-up epochs for the binary loss. - disc_loss_alpha (float): Alpha value for the discriminator loss. - gen_loss_alpha (float): Alpha value for the generator loss. - feat_loss_alpha (float): Alpha value for the feature loss. - vocoder_mel_loss_alpha (float): Alpha value for the vocoder mel loss. - multi_scale_stft_loss_alpha (float): Alpha value for the multi-scale STFT loss. - multi_scale_stft_loss_params (dict): Parameters for the multi-scale STFT loss. - return_wav (bool): Whether to return audio waveforms. - use_weighted_sampler (bool): Whether to use a weighted sampler. - weighted_sampler_attrs (dict): Attributes for the weighted sampler. - weighted_sampler_multipliers (dict): Multipliers for the weighted sampler. - r (int): Value for the `r` override. - compute_f0 (bool): Whether to compute F0 values. - f0_cache_path (str): Path to the F0 cache. - attn_prior_cache_path (str): Path to the attention prior cache. - num_speakers (int): Number of speakers. - use_speaker_embedding (bool): Whether to use speaker embedding. - speakers_file (str): Path to the speaker file. - speaker_embedding_channels (int): Number of channels for the speaker embedding. - language_ids_file (str): Path to the language IDs file. - """ - - model: str = "delightful_tts" - - # model specific params - audio: DelightfulTtsAudioConfig = field(default_factory=DelightfulTtsAudioConfig) - model_args: DelightfulTtsArgs = field(default_factory=DelightfulTtsArgs) - use_attn_priors: bool = True - - # vocoder - vocoder: VocoderConfig = field(default_factory=VocoderConfig) - init_discriminator: bool = True - - # optimizer - steps_to_start_discriminator: int = 200000 - grad_clip: List[float] = field(default_factory=lambda: [1000, 1000]) - lr_gen: float = 0.0002 - lr_disc: float = 0.0002 - lr_scheduler_gen: str = "ExponentialLR" - lr_scheduler_gen_params: dict = field(default_factory=lambda: {"gamma": 0.999875, "last_epoch": -1}) - lr_scheduler_disc: str = "ExponentialLR" - lr_scheduler_disc_params: dict = field(default_factory=lambda: {"gamma": 0.999875, "last_epoch": -1}) - scheduler_after_epoch: bool = True - optimizer: str = "AdamW" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.8, 0.99], "eps": 1e-9, "weight_decay": 0.01}) - - # acoustic model loss params - ssim_loss_alpha: float = 1.0 - mel_loss_alpha: float = 1.0 - aligner_loss_alpha: float = 1.0 - pitch_loss_alpha: float = 1.0 - energy_loss_alpha: float = 1.0 - u_prosody_loss_alpha: float = 0.5 - p_prosody_loss_alpha: float = 0.5 - dur_loss_alpha: float = 1.0 - char_dur_loss_alpha: float = 0.01 - binary_align_loss_alpha: float = 0.1 - binary_loss_warmup_epochs: int = 10 - - # vocoder loss params - disc_loss_alpha: float = 1.0 - gen_loss_alpha: float = 1.0 - feat_loss_alpha: float = 1.0 - vocoder_mel_loss_alpha: float = 10.0 - multi_scale_stft_loss_alpha: float = 2.5 - multi_scale_stft_loss_params: dict = field( - default_factory=lambda: { - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240], - } - ) - - # data loader params - return_wav: bool = True - use_weighted_sampler: bool = False - weighted_sampler_attrs: dict = field(default_factory=lambda: {}) - weighted_sampler_multipliers: dict = field(default_factory=lambda: {}) - - # overrides - r: int = 1 - - # dataset configs - compute_f0: bool = True - f0_cache_path: str = None - attn_prior_cache_path: str = None - - # multi-speaker settings - # use speaker embedding layer - num_speakers: int = 0 - use_speaker_embedding: bool = False - speakers_file: str = None - speaker_embedding_channels: int = 256 - language_ids_file: str = None - use_language_embedding: bool = False - - # use d-vectors - use_d_vector_file: bool = False - d_vector_file: str = None - d_vector_dim: int = None - - # testing - test_sentences: List[List[str]] = field( - default_factory=lambda: [ - ["It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent."], - ["Be a voice, not an echo."], - ["I'm sorry Dave. I'm afraid I can't do that."], - ["This cake is great. It's so delicious and moist."], - ["Prior to November 22, 1963."], - ] - ) - - def __post_init__(self): - # Pass multi-speaker parameters to the model args as `model.init_multispeaker()` looks for it there. - if self.num_speakers > 0: - self.model_args.num_speakers = self.num_speakers - - # speaker embedding settings - if self.use_speaker_embedding: - self.model_args.use_speaker_embedding = True - if self.speakers_file: - self.model_args.speakers_file = self.speakers_file - - # d-vector settings - if self.use_d_vector_file: - self.model_args.use_d_vector_file = True - if self.d_vector_dim is not None and self.d_vector_dim > 0: - self.model_args.d_vector_dim = self.d_vector_dim - if self.d_vector_file: - self.model_args.d_vector_file = self.d_vector_file diff --git a/TTS/tts/configs/fast_pitch_config.py b/TTS/tts/configs/fast_pitch_config.py deleted file mode 100644 index d086d26564450c60fa04a7f3a068506f4147d3be..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/fast_pitch_config.py +++ /dev/null @@ -1,183 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.forward_tts import ForwardTTSArgs - - -@dataclass -class FastPitchConfig(BaseTTSConfig): - """Configure `ForwardTTS` as FastPitch model. - - Example: - - >>> from TTS.tts.configs.fast_pitch_config import FastPitchConfig - >>> config = FastPitchConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `fast_pitch`. - - base_model (str): - Name of the base model being configured as this model so that 🐸 TTS knows it needs to initiate - the base model rather than searching for the `model` implementation. Defaults to `forward_tts`. - - model_args (Coqpit): - Model class arguments. Check `FastPitchArgs` for more details. Defaults to `FastPitchArgs()`. - - data_dep_init_steps (int): - Number of steps used for computing normalization parameters at the beginning of the training. GlowTTS uses - Activation Normalization that pre-computes normalization stats at the beginning and use the same values - for the rest. Defaults to 10. - - speakers_file (str): - Path to the file containing the list of speakers. Needed at inference for loading matching speaker ids to - speaker names. Defaults to `None`. - - use_speaker_embedding (bool): - enable / disable using speaker embeddings for multi-speaker models. If set True, the model is - in the multi-speaker mode. Defaults to False. - - use_d_vector_file (bool): - enable /disable using external speaker embeddings in place of the learned embeddings. Defaults to False. - - d_vector_file (str): - Path to the file including pre-computed speaker embeddings. Defaults to None. - - d_vector_dim (int): - Dimension of the external speaker embeddings. Defaults to 0. - - optimizer (str): - Name of the model optimizer. Defaults to `Adam`. - - optimizer_params (dict): - Arguments of the model optimizer. Defaults to `{"betas": [0.9, 0.998], "weight_decay": 1e-6}`. - - lr_scheduler (str): - Name of the learning rate scheduler. Defaults to `Noam`. - - lr_scheduler_params (dict): - Arguments of the learning rate scheduler. Defaults to `{"warmup_steps": 4000}`. - - lr (float): - Initial learning rate. Defaults to `1e-3`. - - grad_clip (float): - Gradient norm clipping value. Defaults to `5.0`. - - spec_loss_type (str): - Type of the spectrogram loss. Check `ForwardTTSLoss` for possible values. Defaults to `mse`. - - duration_loss_type (str): - Type of the duration loss. Check `ForwardTTSLoss` for possible values. Defaults to `mse`. - - use_ssim_loss (bool): - Enable/disable the use of SSIM (Structural Similarity) loss. Defaults to True. - - wd (float): - Weight decay coefficient. Defaults to `1e-7`. - - ssim_loss_alpha (float): - Weight for the SSIM loss. If set 0, disables the SSIM loss. Defaults to 1.0. - - dur_loss_alpha (float): - Weight for the duration predictor's loss. If set 0, disables the huber loss. Defaults to 1.0. - - spec_loss_alpha (float): - Weight for the L1 spectrogram loss. If set 0, disables the L1 loss. Defaults to 1.0. - - pitch_loss_alpha (float): - Weight for the pitch predictor's loss. If set 0, disables the pitch predictor. Defaults to 1.0. - - binary_align_loss_alpha (float): - Weight for the binary loss. If set 0, disables the binary loss. Defaults to 1.0. - - binary_loss_warmup_epochs (float): - Number of epochs to gradually increase the binary loss impact. Defaults to 150. - - min_seq_len (int): - Minimum input sequence length to be used at training. - - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage. - - # dataset configs - compute_f0(bool): - Compute pitch. defaults to True - - f0_cache_path(str): - pith cache path. defaults to None - """ - - model: str = "fast_pitch" - base_model: str = "forward_tts" - - # model specific params - model_args: ForwardTTSArgs = field(default_factory=ForwardTTSArgs) - - # multi-speaker settings - num_speakers: int = 0 - speakers_file: str = None - use_speaker_embedding: bool = False - use_d_vector_file: bool = False - d_vector_file: str = False - d_vector_dim: int = 0 - - # optimizer parameters - optimizer: str = "Adam" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.9, 0.998], "weight_decay": 1e-6}) - lr_scheduler: str = "NoamLR" - lr_scheduler_params: dict = field(default_factory=lambda: {"warmup_steps": 4000}) - lr: float = 1e-4 - grad_clip: float = 5.0 - - # loss params - spec_loss_type: str = "mse" - duration_loss_type: str = "mse" - use_ssim_loss: bool = True - ssim_loss_alpha: float = 1.0 - spec_loss_alpha: float = 1.0 - aligner_loss_alpha: float = 1.0 - pitch_loss_alpha: float = 0.1 - dur_loss_alpha: float = 0.1 - binary_align_loss_alpha: float = 0.1 - binary_loss_warmup_epochs: int = 150 - - # overrides - min_seq_len: int = 13 - max_seq_len: int = 200 - r: int = 1 # DO NOT CHANGE - - # dataset configs - compute_f0: bool = True - f0_cache_path: str = None - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "Be a voice, not an echo.", - "I'm sorry Dave. I'm afraid I can't do that.", - "This cake is great. It's so delicious and moist.", - "Prior to November 22, 1963.", - ] - ) - - def __post_init__(self): - # Pass multi-speaker parameters to the model args as `model.init_multispeaker()` looks for it there. - if self.num_speakers > 0: - self.model_args.num_speakers = self.num_speakers - - # speaker embedding settings - if self.use_speaker_embedding: - self.model_args.use_speaker_embedding = True - if self.speakers_file: - self.model_args.speakers_file = self.speakers_file - - # d-vector settings - if self.use_d_vector_file: - self.model_args.use_d_vector_file = True - if self.d_vector_dim is not None and self.d_vector_dim > 0: - self.model_args.d_vector_dim = self.d_vector_dim - if self.d_vector_file: - self.model_args.d_vector_file = self.d_vector_file diff --git a/TTS/tts/configs/fast_speech_config.py b/TTS/tts/configs/fast_speech_config.py deleted file mode 100644 index af6c2db6faf55ee2b15047fff86281d42dab1b87..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/fast_speech_config.py +++ /dev/null @@ -1,177 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.forward_tts import ForwardTTSArgs - - -@dataclass -class FastSpeechConfig(BaseTTSConfig): - """Configure `ForwardTTS` as FastSpeech model. - - Example: - - >>> from TTS.tts.configs.fast_speech_config import FastSpeechConfig - >>> config = FastSpeechConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `fast_pitch`. - - base_model (str): - Name of the base model being configured as this model so that 🐸 TTS knows it needs to initiate - the base model rather than searching for the `model` implementation. Defaults to `forward_tts`. - - model_args (Coqpit): - Model class arguments. Check `FastSpeechArgs` for more details. Defaults to `FastSpeechArgs()`. - - data_dep_init_steps (int): - Number of steps used for computing normalization parameters at the beginning of the training. GlowTTS uses - Activation Normalization that pre-computes normalization stats at the beginning and use the same values - for the rest. Defaults to 10. - - speakers_file (str): - Path to the file containing the list of speakers. Needed at inference for loading matching speaker ids to - speaker names. Defaults to `None`. - - - use_speaker_embedding (bool): - enable / disable using speaker embeddings for multi-speaker models. If set True, the model is - in the multi-speaker mode. Defaults to False. - - use_d_vector_file (bool): - enable /disable using external speaker embeddings in place of the learned embeddings. Defaults to False. - - d_vector_file (str): - Path to the file including pre-computed speaker embeddings. Defaults to None. - - d_vector_dim (int): - Dimension of the external speaker embeddings. Defaults to 0. - - optimizer (str): - Name of the model optimizer. Defaults to `Adam`. - - optimizer_params (dict): - Arguments of the model optimizer. Defaults to `{"betas": [0.9, 0.998], "weight_decay": 1e-6}`. - - lr_scheduler (str): - Name of the learning rate scheduler. Defaults to `Noam`. - - lr_scheduler_params (dict): - Arguments of the learning rate scheduler. Defaults to `{"warmup_steps": 4000}`. - - lr (float): - Initial learning rate. Defaults to `1e-3`. - - grad_clip (float): - Gradient norm clipping value. Defaults to `5.0`. - - spec_loss_type (str): - Type of the spectrogram loss. Check `ForwardTTSLoss` for possible values. Defaults to `mse`. - - duration_loss_type (str): - Type of the duration loss. Check `ForwardTTSLoss` for possible values. Defaults to `mse`. - - use_ssim_loss (bool): - Enable/disable the use of SSIM (Structural Similarity) loss. Defaults to True. - - wd (float): - Weight decay coefficient. Defaults to `1e-7`. - - ssim_loss_alpha (float): - Weight for the SSIM loss. If set 0, disables the SSIM loss. Defaults to 1.0. - - dur_loss_alpha (float): - Weight for the duration predictor's loss. If set 0, disables the huber loss. Defaults to 1.0. - - spec_loss_alpha (float): - Weight for the L1 spectrogram loss. If set 0, disables the L1 loss. Defaults to 1.0. - - pitch_loss_alpha (float): - Weight for the pitch predictor's loss. If set 0, disables the pitch predictor. Defaults to 1.0. - - binary_loss_alpha (float): - Weight for the binary loss. If set 0, disables the binary loss. Defaults to 1.0. - - binary_loss_warmup_epochs (float): - Number of epochs to gradually increase the binary loss impact. Defaults to 150. - - min_seq_len (int): - Minimum input sequence length to be used at training. - - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage. - """ - - model: str = "fast_speech" - base_model: str = "forward_tts" - - # model specific params - model_args: ForwardTTSArgs = field(default_factory=lambda: ForwardTTSArgs(use_pitch=False)) - - # multi-speaker settings - num_speakers: int = 0 - speakers_file: str = None - use_speaker_embedding: bool = False - use_d_vector_file: bool = False - d_vector_file: str = False - d_vector_dim: int = 0 - - # optimizer parameters - optimizer: str = "Adam" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.9, 0.998], "weight_decay": 1e-6}) - lr_scheduler: str = "NoamLR" - lr_scheduler_params: dict = field(default_factory=lambda: {"warmup_steps": 4000}) - lr: float = 1e-4 - grad_clip: float = 5.0 - - # loss params - spec_loss_type: str = "mse" - duration_loss_type: str = "mse" - use_ssim_loss: bool = True - ssim_loss_alpha: float = 1.0 - dur_loss_alpha: float = 1.0 - spec_loss_alpha: float = 1.0 - pitch_loss_alpha: float = 0.0 - aligner_loss_alpha: float = 1.0 - binary_align_loss_alpha: float = 1.0 - binary_loss_warmup_epochs: int = 150 - - # overrides - min_seq_len: int = 13 - max_seq_len: int = 200 - r: int = 1 # DO NOT CHANGE - - # dataset configs - compute_f0: bool = False - f0_cache_path: str = None - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "Be a voice, not an echo.", - "I'm sorry Dave. I'm afraid I can't do that.", - "This cake is great. It's so delicious and moist.", - "Prior to November 22, 1963.", - ] - ) - - def __post_init__(self): - # Pass multi-speaker parameters to the model args as `model.init_multispeaker()` looks for it there. - if self.num_speakers > 0: - self.model_args.num_speakers = self.num_speakers - - # speaker embedding settings - if self.use_speaker_embedding: - self.model_args.use_speaker_embedding = True - if self.speakers_file: - self.model_args.speakers_file = self.speakers_file - - # d-vector settings - if self.use_d_vector_file: - self.model_args.use_d_vector_file = True - if self.d_vector_dim is not None and self.d_vector_dim > 0: - self.model_args.d_vector_dim = self.d_vector_dim - if self.d_vector_file: - self.model_args.d_vector_file = self.d_vector_file diff --git a/TTS/tts/configs/fastspeech2_config.py b/TTS/tts/configs/fastspeech2_config.py deleted file mode 100644 index d179617fb034fff269355ce7e3d78b67db90aacd..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/fastspeech2_config.py +++ /dev/null @@ -1,198 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.forward_tts import ForwardTTSArgs - - -@dataclass -class Fastspeech2Config(BaseTTSConfig): - """Configure `ForwardTTS` as FastPitch model. - - Example: - - >>> from TTS.tts.configs.fastspeech2_config import FastSpeech2Config - >>> config = FastSpeech2Config() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `fast_pitch`. - - base_model (str): - Name of the base model being configured as this model so that 🐸 TTS knows it needs to initiate - the base model rather than searching for the `model` implementation. Defaults to `forward_tts`. - - model_args (Coqpit): - Model class arguments. Check `FastPitchArgs` for more details. Defaults to `FastPitchArgs()`. - - data_dep_init_steps (int): - Number of steps used for computing normalization parameters at the beginning of the training. GlowTTS uses - Activation Normalization that pre-computes normalization stats at the beginning and use the same values - for the rest. Defaults to 10. - - speakers_file (str): - Path to the file containing the list of speakers. Needed at inference for loading matching speaker ids to - speaker names. Defaults to `None`. - - use_speaker_embedding (bool): - enable / disable using speaker embeddings for multi-speaker models. If set True, the model is - in the multi-speaker mode. Defaults to False. - - use_d_vector_file (bool): - enable /disable using external speaker embeddings in place of the learned embeddings. Defaults to False. - - d_vector_file (str): - Path to the file including pre-computed speaker embeddings. Defaults to None. - - d_vector_dim (int): - Dimension of the external speaker embeddings. Defaults to 0. - - optimizer (str): - Name of the model optimizer. Defaults to `Adam`. - - optimizer_params (dict): - Arguments of the model optimizer. Defaults to `{"betas": [0.9, 0.998], "weight_decay": 1e-6}`. - - lr_scheduler (str): - Name of the learning rate scheduler. Defaults to `Noam`. - - lr_scheduler_params (dict): - Arguments of the learning rate scheduler. Defaults to `{"warmup_steps": 4000}`. - - lr (float): - Initial learning rate. Defaults to `1e-3`. - - grad_clip (float): - Gradient norm clipping value. Defaults to `5.0`. - - spec_loss_type (str): - Type of the spectrogram loss. Check `ForwardTTSLoss` for possible values. Defaults to `mse`. - - duration_loss_type (str): - Type of the duration loss. Check `ForwardTTSLoss` for possible values. Defaults to `mse`. - - use_ssim_loss (bool): - Enable/disable the use of SSIM (Structural Similarity) loss. Defaults to True. - - wd (float): - Weight decay coefficient. Defaults to `1e-7`. - - ssim_loss_alpha (float): - Weight for the SSIM loss. If set 0, disables the SSIM loss. Defaults to 1.0. - - dur_loss_alpha (float): - Weight for the duration predictor's loss. If set 0, disables the huber loss. Defaults to 1.0. - - spec_loss_alpha (float): - Weight for the L1 spectrogram loss. If set 0, disables the L1 loss. Defaults to 1.0. - - pitch_loss_alpha (float): - Weight for the pitch predictor's loss. If set 0, disables the pitch predictor. Defaults to 1.0. - - energy_loss_alpha (float): - Weight for the energy predictor's loss. If set 0, disables the energy predictor. Defaults to 1.0. - - binary_align_loss_alpha (float): - Weight for the binary loss. If set 0, disables the binary loss. Defaults to 1.0. - - binary_loss_warmup_epochs (float): - Number of epochs to gradually increase the binary loss impact. Defaults to 150. - - min_seq_len (int): - Minimum input sequence length to be used at training. - - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage. - - # dataset configs - compute_f0(bool): - Compute pitch. defaults to True - - f0_cache_path(str): - pith cache path. defaults to None - - # dataset configs - compute_energy(bool): - Compute energy. defaults to True - - energy_cache_path(str): - energy cache path. defaults to None - """ - - model: str = "fastspeech2" - base_model: str = "forward_tts" - - # model specific params - model_args: ForwardTTSArgs = field(default_factory=lambda: ForwardTTSArgs(use_pitch=True, use_energy=True)) - - # multi-speaker settings - num_speakers: int = 0 - speakers_file: str = None - use_speaker_embedding: bool = False - use_d_vector_file: bool = False - d_vector_file: str = False - d_vector_dim: int = 0 - - # optimizer parameters - optimizer: str = "Adam" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.9, 0.998], "weight_decay": 1e-6}) - lr_scheduler: str = "NoamLR" - lr_scheduler_params: dict = field(default_factory=lambda: {"warmup_steps": 4000}) - lr: float = 1e-4 - grad_clip: float = 5.0 - - # loss params - spec_loss_type: str = "mse" - duration_loss_type: str = "mse" - use_ssim_loss: bool = True - ssim_loss_alpha: float = 1.0 - spec_loss_alpha: float = 1.0 - aligner_loss_alpha: float = 1.0 - pitch_loss_alpha: float = 0.1 - energy_loss_alpha: float = 0.1 - dur_loss_alpha: float = 0.1 - binary_align_loss_alpha: float = 0.1 - binary_loss_warmup_epochs: int = 150 - - # overrides - min_seq_len: int = 13 - max_seq_len: int = 200 - r: int = 1 # DO NOT CHANGE - - # dataset configs - compute_f0: bool = True - f0_cache_path: str = None - - # dataset configs - compute_energy: bool = True - energy_cache_path: str = None - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "Be a voice, not an echo.", - "I'm sorry Dave. I'm afraid I can't do that.", - "This cake is great. It's so delicious and moist.", - "Prior to November 22, 1963.", - ] - ) - - def __post_init__(self): - # Pass multi-speaker parameters to the model args as `model.init_multispeaker()` looks for it there. - if self.num_speakers > 0: - self.model_args.num_speakers = self.num_speakers - - # speaker embedding settings - if self.use_speaker_embedding: - self.model_args.use_speaker_embedding = True - if self.speakers_file: - self.model_args.speakers_file = self.speakers_file - - # d-vector settings - if self.use_d_vector_file: - self.model_args.use_d_vector_file = True - if self.d_vector_dim is not None and self.d_vector_dim > 0: - self.model_args.d_vector_dim = self.d_vector_dim - if self.d_vector_file: - self.model_args.d_vector_file = self.d_vector_file diff --git a/TTS/tts/configs/glow_tts_config.py b/TTS/tts/configs/glow_tts_config.py deleted file mode 100644 index f42f3e5a510bacf1b2312ccea7d46201bbcb774f..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/glow_tts_config.py +++ /dev/null @@ -1,182 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig - - -@dataclass -class GlowTTSConfig(BaseTTSConfig): - """Defines parameters for GlowTTS model. - - Example: - - >>> from TTS.tts.configs.glow_tts_config import GlowTTSConfig - >>> config = GlowTTSConfig() - - Args: - model(str): - Model name used for selecting the right model at initialization. Defaults to `glow_tts`. - encoder_type (str): - Type of the encoder used by the model. Look at `TTS.tts.layers.glow_tts.encoder` for more details. - Defaults to `rel_pos_transformers`. - encoder_params (dict): - Parameters used to define the encoder network. Look at `TTS.tts.layers.glow_tts.encoder` for more details. - Defaults to `{"kernel_size": 3, "dropout_p": 0.1, "num_layers": 6, "num_heads": 2, "hidden_channels_ffn": 768}` - use_encoder_prenet (bool): - enable / disable the use of a prenet for the encoder. Defaults to True. - hidden_channels_enc (int): - Number of base hidden channels used by the encoder network. It defines the input and the output channel sizes, - and for some encoder types internal hidden channels sizes too. Defaults to 192. - hidden_channels_dec (int): - Number of base hidden channels used by the decoder WaveNet network. Defaults to 192 as in the original work. - hidden_channels_dp (int): - Number of layer channels of the duration predictor network. Defaults to 256 as in the original work. - mean_only (bool): - If true predict only the mean values by the decoder flow. Defaults to True. - out_channels (int): - Number of channels of the model output tensor. Defaults to 80. - num_flow_blocks_dec (int): - Number of decoder blocks. Defaults to 12. - inference_noise_scale (float): - Noise scale used at inference. Defaults to 0.33. - kernel_size_dec (int): - Decoder kernel size. Defaults to 5 - dilation_rate (int): - Rate to increase dilation by each layer in a decoder block. Defaults to 1. - num_block_layers (int): - Number of decoder layers in each decoder block. Defaults to 4. - dropout_p_dec (float): - Dropout rate for decoder. Defaults to 0.1. - num_speaker (int): - Number of speaker to define the size of speaker embedding layer. Defaults to 0. - c_in_channels (int): - Number of speaker embedding channels. It is set to 512 if embeddings are learned. Defaults to 0. - num_splits (int): - Number of split levels in inversible conv1x1 operation. Defaults to 4. - num_squeeze (int): - Number of squeeze levels. When squeezing channels increases and time steps reduces by the factor - 'num_squeeze'. Defaults to 2. - sigmoid_scale (bool): - enable/disable sigmoid scaling in decoder. Defaults to False. - mean_only (bool): - If True, encoder only computes mean value and uses constant variance for each time step. Defaults to true. - encoder_type (str): - Encoder module type. Possible values are`["rel_pos_transformer", "gated_conv", "residual_conv_bn", "time_depth_separable"]` - Check `TTS.tts.layers.glow_tts.encoder` for more details. Defaults to `rel_pos_transformers` as in the original paper. - encoder_params (dict): - Encoder module parameters. Defaults to None. - d_vector_dim (int): - Channels of external speaker embedding vectors. Defaults to 0. - data_dep_init_steps (int): - Number of steps used for computing normalization parameters at the beginning of the training. GlowTTS uses - Activation Normalization that pre-computes normalization stats at the beginning and use the same values - for the rest. Defaults to 10. - style_wav_for_test (str): - Path to the wav file used for changing the style of the speech. Defaults to None. - inference_noise_scale (float): - Variance used for sampling the random noise added to the decoder's input at inference. Defaults to 0.0. - length_scale (float): - Multiply the predicted durations with this value to change the speech speed. Defaults to 1. - use_speaker_embedding (bool): - enable / disable using speaker embeddings for multi-speaker models. If set True, the model is - in the multi-speaker mode. Defaults to False. - use_d_vector_file (bool): - enable /disable using external speaker embeddings in place of the learned embeddings. Defaults to False. - d_vector_file (str): - Path to the file including pre-computed speaker embeddings. Defaults to None. - noam_schedule (bool): - enable / disable the use of Noam LR scheduler. Defaults to False. - warmup_steps (int): - Number of warm-up steps for the Noam scheduler. Defaults 4000. - lr (float): - Initial learning rate. Defaults to `1e-3`. - wd (float): - Weight decay coefficient. Defaults to `1e-7`. - min_seq_len (int): - Minimum input sequence length to be used at training. - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage. - """ - - model: str = "glow_tts" - - # model params - num_chars: int = None - encoder_type: str = "rel_pos_transformer" - encoder_params: dict = field( - default_factory=lambda: { - "kernel_size": 3, - "dropout_p": 0.1, - "num_layers": 6, - "num_heads": 2, - "hidden_channels_ffn": 768, - } - ) - use_encoder_prenet: bool = True - hidden_channels_enc: int = 192 - hidden_channels_dec: int = 192 - hidden_channels_dp: int = 256 - dropout_p_dp: float = 0.1 - dropout_p_dec: float = 0.05 - mean_only: bool = True - out_channels: int = 80 - num_flow_blocks_dec: int = 12 - inference_noise_scale: float = 0.33 - kernel_size_dec: int = 5 - dilation_rate: int = 1 - num_block_layers: int = 4 - num_speakers: int = 0 - c_in_channels: int = 0 - num_splits: int = 4 - num_squeeze: int = 2 - sigmoid_scale: bool = False - encoder_type: str = "rel_pos_transformer" - encoder_params: dict = field( - default_factory=lambda: { - "kernel_size": 3, - "dropout_p": 0.1, - "num_layers": 6, - "num_heads": 2, - "hidden_channels_ffn": 768, - "input_length": None, - } - ) - d_vector_dim: int = 0 - - # training params - data_dep_init_steps: int = 10 - - # inference params - style_wav_for_test: str = None - inference_noise_scale: float = 0.0 - length_scale: float = 1.0 - - # multi-speaker settings - use_speaker_embedding: bool = False - speakers_file: str = None - use_d_vector_file: bool = False - d_vector_file: str = False - - # optimizer parameters - optimizer: str = "RAdam" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.9, 0.998], "weight_decay": 1e-6}) - lr_scheduler: str = "NoamLR" - lr_scheduler_params: dict = field(default_factory=lambda: {"warmup_steps": 4000}) - grad_clip: float = 5.0 - lr: float = 1e-3 - - # overrides - min_seq_len: int = 3 - max_seq_len: int = 500 - r: int = 1 # DO NOT CHANGE - TODO: make this immutable once coqpit implements it. - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "Be a voice, not an echo.", - "I'm sorry Dave. I'm afraid I can't do that.", - "This cake is great. It's so delicious and moist.", - "Prior to November 22, 1963.", - ] - ) diff --git a/TTS/tts/configs/neuralhmm_tts_config.py b/TTS/tts/configs/neuralhmm_tts_config.py deleted file mode 100644 index 50f72847ed3e1c7089915ef8fd77ae5775c5b260..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/neuralhmm_tts_config.py +++ /dev/null @@ -1,170 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig - - -@dataclass -class NeuralhmmTTSConfig(BaseTTSConfig): - """ - Define parameters for Neural HMM TTS model. - - Example: - - >>> from TTS.tts.configs.overflow_config import OverflowConfig - >>> config = OverflowConfig() - - Args: - model (str): - Model name used to select the right model class to initilize. Defaults to `Overflow`. - run_eval_steps (int): - Run evalulation epoch after N steps. If None, waits until training epoch is completed. Defaults to None. - save_step (int): - Save local checkpoint every save_step steps. Defaults to 500. - plot_step (int): - Plot training stats on the logger every plot_step steps. Defaults to 1. - model_param_stats (bool): - Log model parameters stats on the logger dashboard. Defaults to False. - force_generate_statistics (bool): - Force generate mel normalization statistics. Defaults to False. - mel_statistics_parameter_path (str): - Path to the mel normalization statistics.If the model doesn't finds a file there it will generate statistics. - Defaults to None. - num_chars (int): - Number of characters used by the model. It must be defined before initializing the model. Defaults to None. - state_per_phone (int): - Generates N states per phone. Similar, to `add_blank` parameter in GlowTTS but in Overflow it is upsampled by model's encoder. Defaults to 2. - encoder_in_out_features (int): - Channels of encoder input and character embedding tensors. Defaults to 512. - encoder_n_convolutions (int): - Number of convolution layers in the encoder. Defaults to 3. - out_channels (int): - Channels of the final model output. It must match the spectragram size. Defaults to 80. - ar_order (int): - Autoregressive order of the model. Defaults to 1. In ablations of Neural HMM it was found that more autoregression while giving more variation hurts naturalness of the synthesised audio. - sampling_temp (float): - Variation added to the sample from the latent space of neural HMM. Defaults to 0.334. - deterministic_transition (bool): - deterministic duration generation based on duration quantiles as defiend in "S. Ronanki, O. Watts, S. King, and G. E. Henter, “Medianbased generation of synthetic speech durations using a nonparametric approach,” in Proc. SLT, 2016.". Defaults to True. - duration_threshold (float): - Threshold for duration quantiles. Defaults to 0.55. Tune this to change the speaking rate of the synthesis, where lower values defines a slower speaking rate and higher values defines a faster speaking rate. - use_grad_checkpointing (bool): - Use gradient checkpointing to save memory. In a multi-GPU setting currently pytorch does not supports gradient checkpoint inside a loop so we will have to turn it off then.Adjust depending on whatever get more batch size either by using a single GPU or multi-GPU. Defaults to True. - max_sampling_time (int): - Maximum sampling time while synthesising latents from neural HMM. Defaults to 1000. - prenet_type (str): - `original` or `bn`. `original` sets the default Prenet and `bn` uses Batch Normalization version of the - Prenet. Defaults to `original`. - prenet_dim (int): - Dimension of the Prenet. Defaults to 256. - prenet_n_layers (int): - Number of layers in the Prenet. Defaults to 2. - prenet_dropout (float): - Dropout rate of the Prenet. Defaults to 0.5. - prenet_dropout_at_inference (bool): - Use dropout at inference time. Defaults to False. - memory_rnn_dim (int): - Dimension of the memory LSTM to process the prenet output. Defaults to 1024. - outputnet_size (list[int]): - Size of the output network inside the neural HMM. Defaults to [1024]. - flat_start_params (dict): - Parameters for the flat start initialization of the neural HMM. Defaults to `{"mean": 0.0, "std": 1.0, "transition_p": 0.14}`. - It will be recomputed when you pass the dataset. - std_floor (float): - Floor value for the standard deviation of the neural HMM. Prevents model cheating by putting point mass and getting infinite likelihood at any datapoint. Defaults to 0.01. - It is called `variance flooring` in standard HMM literature. - optimizer (str): - Optimizer to use for training. Defaults to `adam`. - optimizer_params (dict): - Parameters for the optimizer. Defaults to `{"weight_decay": 1e-6}`. - grad_clip (float): - Gradient clipping threshold. Defaults to 40_000. - lr (float): - Learning rate. Defaults to 1e-3. - lr_scheduler (str): - Learning rate scheduler for the training. Use one from `torch.optim.Scheduler` schedulers or - `TTS.utils.training`. Defaults to `None`. - min_seq_len (int): - Minimum input sequence length to be used at training. - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage. - """ - - model: str = "NeuralHMM_TTS" - - # Training and Checkpoint configs - run_eval_steps: int = 100 - save_step: int = 500 - plot_step: int = 1 - model_param_stats: bool = False - - # data parameters - force_generate_statistics: bool = False - mel_statistics_parameter_path: str = None - - # Encoder parameters - num_chars: int = None - state_per_phone: int = 2 - encoder_in_out_features: int = 512 - encoder_n_convolutions: int = 3 - - # HMM parameters - out_channels: int = 80 - ar_order: int = 1 - sampling_temp: float = 0 - deterministic_transition: bool = True - duration_threshold: float = 0.43 - use_grad_checkpointing: bool = True - max_sampling_time: int = 1000 - - ## Prenet parameters - prenet_type: str = "original" - prenet_dim: int = 256 - prenet_n_layers: int = 2 - prenet_dropout: float = 0.5 - prenet_dropout_at_inference: bool = True - memory_rnn_dim: int = 1024 - - ## Outputnet parameters - outputnet_size: List[int] = field(default_factory=lambda: [1024]) - flat_start_params: dict = field(default_factory=lambda: {"mean": 0.0, "std": 1.0, "transition_p": 0.14}) - std_floor: float = 0.001 - - # optimizer parameters - optimizer: str = "Adam" - optimizer_params: dict = field(default_factory=lambda: {"weight_decay": 1e-6}) - grad_clip: float = 40000.0 - lr: float = 1e-3 - lr_scheduler: str = None - - # overrides - min_text_len: int = 10 - max_text_len: int = 500 - min_audio_len: int = 512 - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "Be a voice, not an echo.", - ] - ) - - # Extra needed config - r: int = 1 - use_d_vector_file: bool = False - use_speaker_embedding: bool = False - - def check_values(self): - """Validate the hyperparameters. - - Raises: - AssertionError: when the parameters network is not defined - AssertionError: transition probability is not between 0 and 1 - """ - assert self.ar_order > 0, "AR order must be greater than 0 it is an autoregressive model." - assert ( - len(self.outputnet_size) >= 1 - ), f"Parameter Network must have atleast one layer check the config file for parameter network. Provided: {self.parameternetwork}" - assert ( - 0 < self.flat_start_params["transition_p"] < 1 - ), f"Transition probability must be between 0 and 1. Provided: {self.flat_start_params['transition_p']}" diff --git a/TTS/tts/configs/overflow_config.py b/TTS/tts/configs/overflow_config.py deleted file mode 100644 index dc3e5548b8f62f76c88acca85d19e2cee8687ebd..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/overflow_config.py +++ /dev/null @@ -1,201 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig - - -@dataclass -class OverflowConfig(BaseTTSConfig): # The classname has to be camel case - """ - Define parameters for OverFlow model. - - Example: - - >>> from TTS.tts.configs.overflow_config import OverflowConfig - >>> config = OverflowConfig() - - Args: - model (str): - Model name used to select the right model class to initilize. Defaults to `Overflow`. - run_eval_steps (int): - Run evalulation epoch after N steps. If None, waits until training epoch is completed. Defaults to None. - save_step (int): - Save local checkpoint every save_step steps. Defaults to 500. - plot_step (int): - Plot training stats on the logger every plot_step steps. Defaults to 1. - model_param_stats (bool): - Log model parameters stats on the logger dashboard. Defaults to False. - force_generate_statistics (bool): - Force generate mel normalization statistics. Defaults to False. - mel_statistics_parameter_path (str): - Path to the mel normalization statistics.If the model doesn't finds a file there it will generate statistics. - Defaults to None. - num_chars (int): - Number of characters used by the model. It must be defined before initializing the model. Defaults to None. - state_per_phone (int): - Generates N states per phone. Similar, to `add_blank` parameter in GlowTTS but in Overflow it is upsampled by model's encoder. Defaults to 2. - encoder_in_out_features (int): - Channels of encoder input and character embedding tensors. Defaults to 512. - encoder_n_convolutions (int): - Number of convolution layers in the encoder. Defaults to 3. - out_channels (int): - Channels of the final model output. It must match the spectragram size. Defaults to 80. - ar_order (int): - Autoregressive order of the model. Defaults to 1. In ablations of Neural HMM it was found that more autoregression while giving more variation hurts naturalness of the synthesised audio. - sampling_temp (float): - Variation added to the sample from the latent space of neural HMM. Defaults to 0.334. - deterministic_transition (bool): - deterministic duration generation based on duration quantiles as defiend in "S. Ronanki, O. Watts, S. King, and G. E. Henter, “Medianbased generation of synthetic speech durations using a nonparametric approach,” in Proc. SLT, 2016.". Defaults to True. - duration_threshold (float): - Threshold for duration quantiles. Defaults to 0.55. Tune this to change the speaking rate of the synthesis, where lower values defines a slower speaking rate and higher values defines a faster speaking rate. - use_grad_checkpointing (bool): - Use gradient checkpointing to save memory. In a multi-GPU setting currently pytorch does not supports gradient checkpoint inside a loop so we will have to turn it off then.Adjust depending on whatever get more batch size either by using a single GPU or multi-GPU. Defaults to True. - max_sampling_time (int): - Maximum sampling time while synthesising latents from neural HMM. Defaults to 1000. - prenet_type (str): - `original` or `bn`. `original` sets the default Prenet and `bn` uses Batch Normalization version of the - Prenet. Defaults to `original`. - prenet_dim (int): - Dimension of the Prenet. Defaults to 256. - prenet_n_layers (int): - Number of layers in the Prenet. Defaults to 2. - prenet_dropout (float): - Dropout rate of the Prenet. Defaults to 0.5. - prenet_dropout_at_inference (bool): - Use dropout at inference time. Defaults to False. - memory_rnn_dim (int): - Dimension of the memory LSTM to process the prenet output. Defaults to 1024. - outputnet_size (list[int]): - Size of the output network inside the neural HMM. Defaults to [1024]. - flat_start_params (dict): - Parameters for the flat start initialization of the neural HMM. Defaults to `{"mean": 0.0, "std": 1.0, "transition_p": 0.14}`. - It will be recomputed when you pass the dataset. - std_floor (float): - Floor value for the standard deviation of the neural HMM. Prevents model cheating by putting point mass and getting infinite likelihood at any datapoint. Defaults to 0.01. - It is called `variance flooring` in standard HMM literature. - hidden_channels_dec (int): - Number of base hidden channels used by the decoder WaveNet network. Defaults to 150. - kernel_size_dec (int): - Decoder kernel size. Defaults to 5 - dilation_rate (int): - Rate to increase dilation by each layer in a decoder block. Defaults to 1. - num_flow_blocks_dec (int): - Number of decoder layers in each decoder block. Defaults to 4. - dropout_p_dec (float): - Dropout rate of the decoder. Defaults to 0.05. - num_splits (int): - Number of split levels in inversible conv1x1 operation. Defaults to 4. - num_squeeze (int): - Number of squeeze levels. When squeezing channels increases and time steps reduces by the factor - 'num_squeeze'. Defaults to 2. - sigmoid_scale (bool): - enable/disable sigmoid scaling in decoder. Defaults to False. - c_in_channels (int): - Unused parameter from GlowTTS's decoder. Defaults to 0. - optimizer (str): - Optimizer to use for training. Defaults to `adam`. - optimizer_params (dict): - Parameters for the optimizer. Defaults to `{"weight_decay": 1e-6}`. - grad_clip (float): - Gradient clipping threshold. Defaults to 40_000. - lr (float): - Learning rate. Defaults to 1e-3. - lr_scheduler (str): - Learning rate scheduler for the training. Use one from `torch.optim.Scheduler` schedulers or - `TTS.utils.training`. Defaults to `None`. - min_seq_len (int): - Minimum input sequence length to be used at training. - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage. - """ - - model: str = "Overflow" - - # Training and Checkpoint configs - run_eval_steps: int = 100 - save_step: int = 500 - plot_step: int = 1 - model_param_stats: bool = False - - # data parameters - force_generate_statistics: bool = False - mel_statistics_parameter_path: str = None - - # Encoder parameters - num_chars: int = None - state_per_phone: int = 2 - encoder_in_out_features: int = 512 - encoder_n_convolutions: int = 3 - - # HMM parameters - out_channels: int = 80 - ar_order: int = 1 - sampling_temp: float = 0.334 - deterministic_transition: bool = True - duration_threshold: float = 0.55 - use_grad_checkpointing: bool = True - max_sampling_time: int = 1000 - - ## Prenet parameters - prenet_type: str = "original" - prenet_dim: int = 256 - prenet_n_layers: int = 2 - prenet_dropout: float = 0.5 - prenet_dropout_at_inference: bool = False - memory_rnn_dim: int = 1024 - - ## Outputnet parameters - outputnet_size: List[int] = field(default_factory=lambda: [1024]) - flat_start_params: dict = field(default_factory=lambda: {"mean": 0.0, "std": 1.0, "transition_p": 0.14}) - std_floor: float = 0.01 - - # Decoder parameters - hidden_channels_dec: int = 150 - kernel_size_dec: int = 5 - dilation_rate: int = 1 - num_flow_blocks_dec: int = 12 - num_block_layers: int = 4 - dropout_p_dec: float = 0.05 - num_splits: int = 4 - num_squeeze: int = 2 - sigmoid_scale: bool = False - c_in_channels: int = 0 - - # optimizer parameters - optimizer: str = "Adam" - optimizer_params: dict = field(default_factory=lambda: {"weight_decay": 1e-6}) - grad_clip: float = 40000.0 - lr: float = 1e-3 - lr_scheduler: str = None - - # overrides - min_text_len: int = 10 - max_text_len: int = 500 - min_audio_len: int = 512 - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "Be a voice, not an echo.", - ] - ) - - # Extra needed config - r: int = 1 - use_d_vector_file: bool = False - use_speaker_embedding: bool = False - - def check_values(self): - """Validate the hyperparameters. - - Raises: - AssertionError: when the parameters network is not defined - AssertionError: transition probability is not between 0 and 1 - """ - assert self.ar_order > 0, "AR order must be greater than 0 it is an autoregressive model." - assert ( - len(self.outputnet_size) >= 1 - ), f"Parameter Network must have atleast one layer check the config file for parameter network. Provided: {self.parameternetwork}" - assert ( - 0 < self.flat_start_params["transition_p"] < 1 - ), f"Transition probability must be between 0 and 1. Provided: {self.flat_start_params['transition_p']}" diff --git a/TTS/tts/configs/shared_configs.py b/TTS/tts/configs/shared_configs.py deleted file mode 100644 index bf17322c190bb234d4e27c6196e53b276fb5f09d..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/shared_configs.py +++ /dev/null @@ -1,344 +0,0 @@ -from dataclasses import asdict, dataclass, field -from typing import Dict, List - -from coqpit import Coqpit, check_argument - -from TTS.config import BaseAudioConfig, BaseDatasetConfig, BaseTrainingConfig - - -@dataclass -class GSTConfig(Coqpit): - """Defines the Global Style Token Module - - Args: - gst_style_input_wav (str): - Path to the wav file used to define the style of the output speech at inference. Defaults to None. - - gst_style_input_weights (dict): - Defines the weights for each style token used at inference. Defaults to None. - - gst_embedding_dim (int): - Defines the size of the GST embedding vector dimensions. Defaults to 256. - - gst_num_heads (int): - Number of attention heads used by the multi-head attention. Defaults to 4. - - gst_num_style_tokens (int): - Number of style token vectors. Defaults to 10. - """ - - gst_style_input_wav: str = None - gst_style_input_weights: dict = None - gst_embedding_dim: int = 256 - gst_use_speaker_embedding: bool = False - gst_num_heads: int = 4 - gst_num_style_tokens: int = 10 - - def check_values( - self, - ): - """Check config fields""" - c = asdict(self) - super().check_values() - check_argument("gst_style_input_weights", c, restricted=False) - check_argument("gst_style_input_wav", c, restricted=False) - check_argument("gst_embedding_dim", c, restricted=True, min_val=0, max_val=1000) - check_argument("gst_use_speaker_embedding", c, restricted=False) - check_argument("gst_num_heads", c, restricted=True, min_val=2, max_val=10) - check_argument("gst_num_style_tokens", c, restricted=True, min_val=1, max_val=1000) - - -@dataclass -class CapacitronVAEConfig(Coqpit): - """Defines the capacitron VAE Module - Args: - capacitron_capacity (int): - Defines the variational capacity limit of the prosody embeddings. Defaults to 150. - capacitron_VAE_embedding_dim (int): - Defines the size of the Capacitron embedding vector dimension. Defaults to 128. - capacitron_use_text_summary_embeddings (bool): - If True, use a text summary embedding in Capacitron. Defaults to True. - capacitron_text_summary_embedding_dim (int): - Defines the size of the capacitron text embedding vector dimension. Defaults to 128. - capacitron_use_speaker_embedding (bool): - if True use speaker embeddings in Capacitron. Defaults to False. - capacitron_VAE_loss_alpha (float): - Weight for the VAE loss of the Tacotron model. If set less than or equal to zero, it disables the - corresponding loss function. Defaults to 0.25 - capacitron_grad_clip (float): - Gradient clipping value for all gradients except beta. Defaults to 5.0 - """ - - capacitron_loss_alpha: int = 1 - capacitron_capacity: int = 150 - capacitron_VAE_embedding_dim: int = 128 - capacitron_use_text_summary_embeddings: bool = True - capacitron_text_summary_embedding_dim: int = 128 - capacitron_use_speaker_embedding: bool = False - capacitron_VAE_loss_alpha: float = 0.25 - capacitron_grad_clip: float = 5.0 - - def check_values( - self, - ): - """Check config fields""" - c = asdict(self) - super().check_values() - check_argument("capacitron_capacity", c, restricted=True, min_val=10, max_val=500) - check_argument("capacitron_VAE_embedding_dim", c, restricted=True, min_val=16, max_val=1024) - check_argument("capacitron_use_speaker_embedding", c, restricted=False) - check_argument("capacitron_text_summary_embedding_dim", c, restricted=False, min_val=16, max_val=512) - check_argument("capacitron_VAE_loss_alpha", c, restricted=False) - check_argument("capacitron_grad_clip", c, restricted=False) - - -@dataclass -class CharactersConfig(Coqpit): - """Defines arguments for the `BaseCharacters` or `BaseVocabulary` and their subclasses. - - Args: - characters_class (str): - Defines the class of the characters used. If None, we pick ```Phonemes``` or ```Graphemes``` based on - the configuration. Defaults to None. - - vocab_dict (dict): - Defines the vocabulary dictionary used to encode the characters. Defaults to None. - - pad (str): - characters in place of empty padding. Defaults to None. - - eos (str): - characters showing the end of a sentence. Defaults to None. - - bos (str): - characters showing the beginning of a sentence. Defaults to None. - - blank (str): - Optional character used between characters by some models for better prosody. Defaults to `_blank`. - - characters (str): - character set used by the model. Characters not in this list are ignored when converting input text to - a list of sequence IDs. Defaults to None. - - punctuations (str): - characters considered as punctuation as parsing the input sentence. Defaults to None. - - phonemes (str): - characters considered as parsing phonemes. This is only for backwards compat. Use `characters` for new - models. Defaults to None. - - is_unique (bool): - remove any duplicate characters in the character lists. It is a bandaid for compatibility with the old - models trained with character lists with duplicates. Defaults to True. - - is_sorted (bool): - Sort the characters in alphabetical order. Defaults to True. - """ - - characters_class: str = None - - # using BaseVocabulary - vocab_dict: Dict = None - - # using on BaseCharacters - pad: str = None - eos: str = None - bos: str = None - blank: str = None - characters: str = None - punctuations: str = None - phonemes: str = None - is_unique: bool = True # for backwards compatibility of models trained with char sets with duplicates - is_sorted: bool = True - - -@dataclass -class BaseTTSConfig(BaseTrainingConfig): - """Shared parameters among all the tts models. - - Args: - - audio (BaseAudioConfig): - Audio processor config object instance. - - use_phonemes (bool): - enable / disable phoneme use. - - phonemizer (str): - Name of the phonemizer to use. If set None, the phonemizer will be selected by `phoneme_language`. - Defaults to None. - - phoneme_language (str): - Language code for the phonemizer. You can check the list of supported languages by running - `python TTS/tts/utils/text/phonemizers/__init__.py`. Defaults to None. - - compute_input_seq_cache (bool): - enable / disable precomputation of the phoneme sequences. At the expense of some delay at the beginning of - the training, It allows faster data loader time and precise limitation with `max_seq_len` and - `min_seq_len`. - - text_cleaner (str): - Name of the text cleaner used for cleaning and formatting transcripts. - - enable_eos_bos_chars (bool): - enable / disable the use of eos and bos characters. - - test_senteces_file (str): - Path to a txt file that has sentences used at test time. The file must have a sentence per line. - - phoneme_cache_path (str): - Path to the output folder caching the computed phonemes for each sample. - - characters (CharactersConfig): - Instance of a CharactersConfig class. - - batch_group_size (int): - Size of the batch groups used for bucketing. By default, the dataloader orders samples by the sequence - length for a more efficient and stable training. If `batch_group_size > 1` then it performs bucketing to - prevent using the same batches for each epoch. - - loss_masking (bool): - enable / disable masking loss values against padded segments of samples in a batch. - - min_text_len (int): - Minimum length of input text to be used. All shorter samples will be ignored. Defaults to 0. - - max_text_len (int): - Maximum length of input text to be used. All longer samples will be ignored. Defaults to float("inf"). - - min_audio_len (int): - Minimum length of input audio to be used. All shorter samples will be ignored. Defaults to 0. - - max_audio_len (int): - Maximum length of input audio to be used. All longer samples will be ignored. The maximum length in the - dataset defines the VRAM used in the training. Hence, pay attention to this value if you encounter an - OOM error in training. Defaults to float("inf"). - - compute_f0 (int): - (Not in use yet). - - compute_energy (int): - (Not in use yet). - - compute_linear_spec (bool): - If True data loader computes and returns linear spectrograms alongside the other data. - - precompute_num_workers (int): - Number of workers to precompute features. Defaults to 0. - - use_noise_augment (bool): - Augment the input audio with random noise. - - start_by_longest (bool): - If True, the data loader will start loading the longest batch first. It is useful for checking OOM issues. - Defaults to False. - - shuffle (bool): - If True, the data loader will shuffle the dataset when there is not sampler defined. Defaults to True. - - drop_last (bool): - If True, the data loader will drop the last batch if it is not complete. It helps to prevent - issues that emerge from the partial batch statistics. Defaults to True. - - add_blank (bool): - Add blank characters between each other two characters. It improves performance for some models at expense - of slower run-time due to the longer input sequence. - - datasets (List[BaseDatasetConfig]): - List of datasets used for training. If multiple datasets are provided, they are merged and used together - for training. - - optimizer (str): - Optimizer used for the training. Set one from `torch.optim.Optimizer` or `TTS.utils.training`. - Defaults to ``. - - optimizer_params (dict): - Optimizer kwargs. Defaults to `{"betas": [0.8, 0.99], "weight_decay": 0.0}` - - lr_scheduler (str): - Learning rate scheduler for the training. Use one from `torch.optim.Scheduler` schedulers or - `TTS.utils.training`. Defaults to ``. - - lr_scheduler_params (dict): - Parameters for the generator learning rate scheduler. Defaults to `{"warmup": 4000}`. - - test_sentences (List[str]): - List of sentences to be used at testing. Defaults to '[]' - - eval_split_max_size (int): - Number maximum of samples to be used for evaluation in proportion split. Defaults to None (Disabled). - - eval_split_size (float): - If between 0.0 and 1.0 represents the proportion of the dataset to include in the evaluation set. - If > 1, represents the absolute number of evaluation samples. Defaults to 0.01 (1%). - - use_speaker_weighted_sampler (bool): - Enable / Disable the batch balancer by speaker. Defaults to ```False```. - - speaker_weighted_sampler_alpha (float): - Number that control the influence of the speaker sampler weights. Defaults to ```1.0```. - - use_language_weighted_sampler (bool): - Enable / Disable the batch balancer by language. Defaults to ```False```. - - language_weighted_sampler_alpha (float): - Number that control the influence of the language sampler weights. Defaults to ```1.0```. - - use_length_weighted_sampler (bool): - Enable / Disable the batch balancer by audio length. If enabled the dataset will be divided - into 10 buckets considering the min and max audio of the dataset. The sampler weights will be - computed forcing to have the same quantity of data for each bucket in each training batch. Defaults to ```False```. - - length_weighted_sampler_alpha (float): - Number that control the influence of the length sampler weights. Defaults to ```1.0```. - """ - - audio: BaseAudioConfig = field(default_factory=BaseAudioConfig) - # phoneme settings - use_phonemes: bool = False - phonemizer: str = None - phoneme_language: str = None - compute_input_seq_cache: bool = False - text_cleaner: str = None - enable_eos_bos_chars: bool = False - test_sentences_file: str = "" - phoneme_cache_path: str = None - # vocabulary parameters - characters: CharactersConfig = None - add_blank: bool = False - # training params - batch_group_size: int = 0 - loss_masking: bool = None - # dataloading - min_audio_len: int = 1 - max_audio_len: int = float("inf") - min_text_len: int = 1 - max_text_len: int = float("inf") - compute_f0: bool = False - compute_energy: bool = False - compute_linear_spec: bool = False - precompute_num_workers: int = 0 - use_noise_augment: bool = False - start_by_longest: bool = False - shuffle: bool = False - drop_last: bool = False - # dataset - datasets: List[BaseDatasetConfig] = field(default_factory=lambda: [BaseDatasetConfig()]) - # optimizer - optimizer: str = "radam" - optimizer_params: dict = None - # scheduler - lr_scheduler: str = None - lr_scheduler_params: dict = field(default_factory=lambda: {}) - # testing - test_sentences: List[str] = field(default_factory=lambda: []) - # evaluation - eval_split_max_size: int = None - eval_split_size: float = 0.01 - # weighted samplers - use_speaker_weighted_sampler: bool = False - speaker_weighted_sampler_alpha: float = 1.0 - use_language_weighted_sampler: bool = False - language_weighted_sampler_alpha: float = 1.0 - use_length_weighted_sampler: bool = False - length_weighted_sampler_alpha: float = 1.0 diff --git a/TTS/tts/configs/speedy_speech_config.py b/TTS/tts/configs/speedy_speech_config.py deleted file mode 100644 index bf8517dfc478a135978df19f3126313a616c14c2..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/speedy_speech_config.py +++ /dev/null @@ -1,194 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.forward_tts import ForwardTTSArgs - - -@dataclass -class SpeedySpeechConfig(BaseTTSConfig): - """Configure `ForwardTTS` as SpeedySpeech model. - - Example: - - >>> from TTS.tts.configs.speedy_speech_config import SpeedySpeechConfig - >>> config = SpeedySpeechConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `speedy_speech`. - - base_model (str): - Name of the base model being configured as this model so that 🐸 TTS knows it needs to initiate - the base model rather than searching for the `model` implementation. Defaults to `forward_tts`. - - model_args (Coqpit): - Model class arguments. Check `FastPitchArgs` for more details. Defaults to `FastPitchArgs()`. - - data_dep_init_steps (int): - Number of steps used for computing normalization parameters at the beginning of the training. GlowTTS uses - Activation Normalization that pre-computes normalization stats at the beginning and use the same values - for the rest. Defaults to 10. - - speakers_file (str): - Path to the file containing the list of speakers. Needed at inference for loading matching speaker ids to - speaker names. Defaults to `None`. - - use_speaker_embedding (bool): - enable / disable using speaker embeddings for multi-speaker models. If set True, the model is - in the multi-speaker mode. Defaults to False. - - use_d_vector_file (bool): - enable /disable using external speaker embeddings in place of the learned embeddings. Defaults to False. - - d_vector_file (str): - Path to the file including pre-computed speaker embeddings. Defaults to None. - - d_vector_dim (int): - Dimension of the external speaker embeddings. Defaults to 0. - - optimizer (str): - Name of the model optimizer. Defaults to `RAdam`. - - optimizer_params (dict): - Arguments of the model optimizer. Defaults to `{"betas": [0.9, 0.998], "weight_decay": 1e-6}`. - - lr_scheduler (str): - Name of the learning rate scheduler. Defaults to `Noam`. - - lr_scheduler_params (dict): - Arguments of the learning rate scheduler. Defaults to `{"warmup_steps": 4000}`. - - lr (float): - Initial learning rate. Defaults to `1e-3`. - - grad_clip (float): - Gradient norm clipping value. Defaults to `5.0`. - - spec_loss_type (str): - Type of the spectrogram loss. Check `ForwardTTSLoss` for possible values. Defaults to `l1`. - - duration_loss_type (str): - Type of the duration loss. Check `ForwardTTSLoss` for possible values. Defaults to `huber`. - - use_ssim_loss (bool): - Enable/disable the use of SSIM (Structural Similarity) loss. Defaults to True. - - wd (float): - Weight decay coefficient. Defaults to `1e-7`. - - ssim_loss_alpha (float): - Weight for the SSIM loss. If set 0, disables the SSIM loss. Defaults to 1.0. - - dur_loss_alpha (float): - Weight for the duration predictor's loss. If set 0, disables the huber loss. Defaults to 1.0. - - spec_loss_alpha (float): - Weight for the L1 spectrogram loss. If set 0, disables the L1 loss. Defaults to 1.0. - - binary_loss_alpha (float): - Weight for the binary loss. If set 0, disables the binary loss. Defaults to 1.0. - - binary_loss_warmup_epochs (float): - Number of epochs to gradually increase the binary loss impact. Defaults to 150. - - min_seq_len (int): - Minimum input sequence length to be used at training. - - max_seq_len (int): - Maximum input sequence length to be used at training. Larger values result in more VRAM usage. - """ - - model: str = "speedy_speech" - base_model: str = "forward_tts" - - # set model args as SpeedySpeech - model_args: ForwardTTSArgs = field( - default_factory=lambda: ForwardTTSArgs( - use_pitch=False, - encoder_type="residual_conv_bn", - encoder_params={ - "kernel_size": 4, - "dilations": 4 * [1, 2, 4] + [1], - "num_conv_blocks": 2, - "num_res_blocks": 13, - }, - decoder_type="residual_conv_bn", - decoder_params={ - "kernel_size": 4, - "dilations": 4 * [1, 2, 4, 8] + [1], - "num_conv_blocks": 2, - "num_res_blocks": 17, - }, - out_channels=80, - hidden_channels=128, - positional_encoding=True, - detach_duration_predictor=True, - ) - ) - - # multi-speaker settings - num_speakers: int = 0 - speakers_file: str = None - use_speaker_embedding: bool = False - use_d_vector_file: bool = False - d_vector_file: str = False - d_vector_dim: int = 0 - - # optimizer parameters - optimizer: str = "Adam" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.9, 0.998], "weight_decay": 1e-6}) - lr_scheduler: str = "NoamLR" - lr_scheduler_params: dict = field(default_factory=lambda: {"warmup_steps": 4000}) - lr: float = 1e-4 - grad_clip: float = 5.0 - - # loss params - spec_loss_type: str = "l1" - duration_loss_type: str = "huber" - use_ssim_loss: bool = False - ssim_loss_alpha: float = 1.0 - dur_loss_alpha: float = 1.0 - spec_loss_alpha: float = 1.0 - aligner_loss_alpha: float = 1.0 - binary_align_loss_alpha: float = 0.3 - binary_loss_warmup_epochs: int = 150 - - # overrides - min_seq_len: int = 13 - max_seq_len: int = 200 - r: int = 1 # DO NOT CHANGE - - # dataset configs - compute_f0: bool = False - f0_cache_path: str = None - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "Be a voice, not an echo.", - "I'm sorry Dave. I'm afraid I can't do that.", - "This cake is great. It's so delicious and moist.", - "Prior to November 22, 1963.", - ] - ) - - def __post_init__(self): - # Pass multi-speaker parameters to the model args as `model.init_multispeaker()` looks for it there. - if self.num_speakers > 0: - self.model_args.num_speakers = self.num_speakers - - # speaker embedding settings - if self.use_speaker_embedding: - self.model_args.use_speaker_embedding = True - if self.speakers_file: - self.model_args.speakers_file = self.speakers_file - - # d-vector settings - if self.use_d_vector_file: - self.model_args.use_d_vector_file = True - if self.d_vector_dim is not None and self.d_vector_dim > 0: - self.model_args.d_vector_dim = self.d_vector_dim - if self.d_vector_file: - self.model_args.d_vector_file = self.d_vector_file diff --git a/TTS/tts/configs/tacotron2_config.py b/TTS/tts/configs/tacotron2_config.py deleted file mode 100644 index 95b65202218cf3aa0dd70c8d8cd55a3f913ed308..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/tacotron2_config.py +++ /dev/null @@ -1,21 +0,0 @@ -from dataclasses import dataclass - -from TTS.tts.configs.tacotron_config import TacotronConfig - - -@dataclass -class Tacotron2Config(TacotronConfig): - """Defines parameters for Tacotron2 based models. - - Example: - - >>> from TTS.tts.configs.tacotron2_config import Tacotron2Config - >>> config = Tacotron2Config() - - Check `TacotronConfig` for argument descriptions. - """ - - model: str = "tacotron2" - out_channels: int = 80 - encoder_in_features: int = 512 - decoder_in_features: int = 512 diff --git a/TTS/tts/configs/tacotron_config.py b/TTS/tts/configs/tacotron_config.py deleted file mode 100644 index 350b5ea99633569d6977851875d5d8d83175ac36..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/tacotron_config.py +++ /dev/null @@ -1,235 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig, CapacitronVAEConfig, GSTConfig - - -@dataclass -class TacotronConfig(BaseTTSConfig): - """Defines parameters for Tacotron based models. - - Example: - - >>> from TTS.tts.configs.tacotron_config import TacotronConfig - >>> config = TacotronConfig() - - Args: - model (str): - Model name used to select the right model class to initilize. Defaults to `Tacotron`. - use_gst (bool): - enable / disable the use of Global Style Token modules. Defaults to False. - gst (GSTConfig): - Instance of `GSTConfig` class. - gst_style_input (str): - Path to the wav file used at inference to set the speech style through GST. If `GST` is enabled and - this is not defined, the model uses a zero vector as an input. Defaults to None. - use_capacitron_vae (bool): - enable / disable the use of Capacitron modules. Defaults to False. - capacitron_vae (CapacitronConfig): - Instance of `CapacitronConfig` class. - num_chars (int): - Number of characters used by the model. It must be defined before initializing the model. Defaults to None. - num_speakers (int): - Number of speakers for multi-speaker models. Defaults to 1. - r (int): - Initial number of output frames that the decoder computed per iteration. Larger values makes training and inference - faster but reduces the quality of the output frames. This must be equal to the largest `r` value used in - `gradual_training` schedule. Defaults to 1. - gradual_training (List[List]): - Parameters for the gradual training schedule. It is in the form `[[a, b, c], [d ,e ,f] ..]` where `a` is - the step number to start using the rest of the values, `b` is the `r` value and `c` is the batch size. - If sets None, no gradual training is used. Defaults to None. - memory_size (int): - Defines the number of previous frames used by the Prenet. If set to < 0, then it uses only the last frame. - Defaults to -1. - prenet_type (str): - `original` or `bn`. `original` sets the default Prenet and `bn` uses Batch Normalization version of the - Prenet. Defaults to `original`. - prenet_dropout (bool): - enables / disables the use of dropout in the Prenet. Defaults to True. - prenet_dropout_at_inference (bool): - enable / disable the use of dropout in the Prenet at the inference time. Defaults to False. - stopnet (bool): - enable /disable the Stopnet that predicts the end of the decoder sequence. Defaults to True. - stopnet_pos_weight (float): - Weight that is applied to over-weight positive instances in the Stopnet loss. Use larger values with - datasets with longer sentences. Defaults to 0.2. - max_decoder_steps (int): - Max number of steps allowed for the decoder. Defaults to 50. - encoder_in_features (int): - Channels of encoder input and character embedding tensors. Defaults to 256. - decoder_in_features (int): - Channels of decoder input and encoder output tensors. Defaults to 256. - out_channels (int): - Channels of the final model output. It must match the spectragram size. Defaults to 80. - separate_stopnet (bool): - Use a distinct Stopnet which is trained separately from the rest of the model. Defaults to True. - attention_type (str): - attention type. Check ```TTS.tts.layers.attentions.init_attn```. Defaults to 'original'. - attention_heads (int): - Number of attention heads for GMM attention. Defaults to 5. - windowing (bool): - It especially useful at inference to keep attention alignment diagonal. Defaults to False. - use_forward_attn (bool): - It is only valid if ```attn_type``` is ```original```. Defaults to False. - forward_attn_mask (bool): - enable/disable extra masking over forward attention. It is useful at inference to prevent - possible attention failures. Defaults to False. - transition_agent (bool): - enable/disable transition agent in forward attention. Defaults to False. - location_attn (bool): - enable/disable location sensitive attention as in the original Tacotron2 paper. - It is only valid if ```attn_type``` is ```original```. Defaults to True. - bidirectional_decoder (bool): - enable/disable bidirectional decoding. Defaults to False. - double_decoder_consistency (bool): - enable/disable double decoder consistency. Defaults to False. - ddc_r (int): - reduction rate used by the coarse decoder when `double_decoder_consistency` is in use. Set this - as a multiple of the `r` value. Defaults to 6. - speakers_file (str): - Path to the speaker mapping file for the Speaker Manager. Defaults to None. - use_speaker_embedding (bool): - enable / disable using speaker embeddings for multi-speaker models. If set True, the model is - in the multi-speaker mode. Defaults to False. - use_d_vector_file (bool): - enable /disable using external speaker embeddings in place of the learned embeddings. Defaults to False. - d_vector_file (str): - Path to the file including pre-computed speaker embeddings. Defaults to None. - optimizer (str): - Optimizer used for the training. Set one from `torch.optim.Optimizer` or `TTS.utils.training`. - Defaults to `RAdam`. - optimizer_params (dict): - Optimizer kwargs. Defaults to `{"betas": [0.8, 0.99], "weight_decay": 0.0}` - lr_scheduler (str): - Learning rate scheduler for the training. Use one from `torch.optim.Scheduler` schedulers or - `TTS.utils.training`. Defaults to `NoamLR`. - lr_scheduler_params (dict): - Parameters for the generator learning rate scheduler. Defaults to `{"warmup": 4000}`. - lr (float): - Initial learning rate. Defaults to `1e-4`. - wd (float): - Weight decay coefficient. Defaults to `1e-6`. - grad_clip (float): - Gradient clipping threshold. Defaults to `5`. - seq_len_norm (bool): - enable / disable the sequnce length normalization in the loss functions. If set True, loss of a sample - is divided by the sequence length. Defaults to False. - loss_masking (bool): - enable / disable masking the paddings of the samples in loss computation. Defaults to True. - decoder_loss_alpha (float): - Weight for the decoder loss of the Tacotron model. If set less than or equal to zero, it disables the - corresponding loss function. Defaults to 0.25 - postnet_loss_alpha (float): - Weight for the postnet loss of the Tacotron model. If set less than or equal to zero, it disables the - corresponding loss function. Defaults to 0.25 - postnet_diff_spec_alpha (float): - Weight for the postnet differential loss of the Tacotron model. If set less than or equal to zero, it disables the - corresponding loss function. Defaults to 0.25 - decoder_diff_spec_alpha (float): - - Weight for the decoder differential loss of the Tacotron model. If set less than or equal to zero, it disables the - corresponding loss function. Defaults to 0.25 - decoder_ssim_alpha (float): - Weight for the decoder SSIM loss of the Tacotron model. If set less than or equal to zero, it disables the - corresponding loss function. Defaults to 0.25 - postnet_ssim_alpha (float): - Weight for the postnet SSIM loss of the Tacotron model. If set less than or equal to zero, it disables the - corresponding loss function. Defaults to 0.25 - ga_alpha (float): - Weight for the guided attention loss. If set less than or equal to zero, it disables the corresponding loss - function. Defaults to 5. - """ - - model: str = "tacotron" - # model_params: TacotronArgs = field(default_factory=lambda: TacotronArgs()) - use_gst: bool = False - gst: GSTConfig = None - gst_style_input: str = None - - use_capacitron_vae: bool = False - capacitron_vae: CapacitronVAEConfig = None - - # model specific params - num_speakers: int = 1 - num_chars: int = 0 - r: int = 2 - gradual_training: List[List[int]] = None - memory_size: int = -1 - prenet_type: str = "original" - prenet_dropout: bool = True - prenet_dropout_at_inference: bool = False - stopnet: bool = True - separate_stopnet: bool = True - stopnet_pos_weight: float = 0.2 - max_decoder_steps: int = 10000 - encoder_in_features: int = 256 - decoder_in_features: int = 256 - decoder_output_dim: int = 80 - out_channels: int = 513 - - # attention layers - attention_type: str = "original" - attention_heads: int = None - attention_norm: str = "sigmoid" - attention_win: bool = False - windowing: bool = False - use_forward_attn: bool = False - forward_attn_mask: bool = False - transition_agent: bool = False - location_attn: bool = True - - # advance methods - bidirectional_decoder: bool = False - double_decoder_consistency: bool = False - ddc_r: int = 6 - - # multi-speaker settings - speakers_file: str = None - use_speaker_embedding: bool = False - speaker_embedding_dim: int = 512 - use_d_vector_file: bool = False - d_vector_file: str = False - d_vector_dim: int = None - - # optimizer parameters - optimizer: str = "RAdam" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.9, 0.998], "weight_decay": 1e-6}) - lr_scheduler: str = "NoamLR" - lr_scheduler_params: dict = field(default_factory=lambda: {"warmup_steps": 4000}) - lr: float = 1e-4 - grad_clip: float = 5.0 - seq_len_norm: bool = False - loss_masking: bool = True - - # loss params - decoder_loss_alpha: float = 0.25 - postnet_loss_alpha: float = 0.25 - postnet_diff_spec_alpha: float = 0.25 - decoder_diff_spec_alpha: float = 0.25 - decoder_ssim_alpha: float = 0.25 - postnet_ssim_alpha: float = 0.25 - ga_alpha: float = 5.0 - - # testing - test_sentences: List[str] = field( - default_factory=lambda: [ - "It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent.", - "Be a voice, not an echo.", - "I'm sorry Dave. I'm afraid I can't do that.", - "This cake is great. It's so delicious and moist.", - "Prior to November 22, 1963.", - ] - ) - - def check_values(self): - if self.gradual_training: - assert ( - self.gradual_training[0][1] == self.r - ), f"[!] the first scheduled gradual training `r` must be equal to the model's `r` value. {self.gradual_training[0][1]} vs {self.r}" - if self.model == "tacotron" and self.audio is not None: - assert self.out_channels == ( - self.audio.fft_size // 2 + 1 - ), f"{self.out_channels} vs {self.audio.fft_size // 2 + 1}" - if self.model == "tacotron2" and self.audio is not None: - assert self.out_channels == self.audio.num_mels diff --git a/TTS/tts/configs/tortoise_config.py b/TTS/tts/configs/tortoise_config.py deleted file mode 100644 index d60e43d71280bfa085988e31a52acfeef015c5f0..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/tortoise_config.py +++ /dev/null @@ -1,87 +0,0 @@ -from dataclasses import dataclass, field - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.tortoise import TortoiseArgs, TortoiseAudioConfig - - -@dataclass -class TortoiseConfig(BaseTTSConfig): - """Defines parameters for Tortoise TTS model. - - Args: - model (str): - Model name. Do not change unless you know what you are doing. - - model_args (TortoiseArgs): - Model architecture arguments. Defaults to `TortoiseArgs()`. - - audio (TortoiseAudioConfig): - Audio processing configuration. Defaults to `TortoiseAudioConfig()`. - - model_dir (str): - Path to the folder that has all the Tortoise models. Defaults to None. - - temperature (float): - Temperature for the autoregressive model inference. Larger values makes predictions more creative sacrificing stability. Defaults to `0.2`. - - length_penalty (float): - Exponential penalty to the length that is used with beam-based generation. It is applied as an exponent to the sequence length, - which in turn is used to divide the score of the sequence. Since the score is the log likelihood of the sequence (i.e. negative), - length_penalty > 0.0 promotes longer sequences, while length_penalty < 0.0 encourages shorter sequences. - - reperation_penalty (float): - The parameter for repetition penalty. 1.0 means no penalty. Defaults to `2.0`. - - top_p (float): - If set to float < 1, only the smallest set of most probable tokens with probabilities that add up to top_p or higher are kept for generation. - Defaults to `0.8`. - - cond_free_k (float): - Knob that determines how to balance the conditioning free signal with the conditioning-present signal. [0,inf]. - As cond_free_k increases, the output becomes dominated by the conditioning-free signal. - Formula is: output=cond_present_output*(cond_free_k+1)-cond_absenct_output*cond_free_k. Defaults to `2.0`. - - diffusion_temperature (float): - Controls the variance of the noise fed into the diffusion model. [0,1]. Values at 0 - are the "mean" prediction of the diffusion network and will sound bland and smeared. - Defaults to `1.0`. - - num_autoregressive_samples (int): - Number of samples taken from the autoregressive model, all of which are filtered using CLVP. - As Tortoise is a probabilistic model, more samples means a higher probability of creating something "great". - Defaults to `16`. - - diffusion_iterations (int): - Number of diffusion steps to perform. [0,4000]. More steps means the network has more chances to iteratively refine - the output, which should theoretically mean a higher quality output. Generally a value above 250 is not noticeably better, - however. Defaults to `30`. - - sampler (str): - Diffusion sampler to be used. `ddim` or `dpm++2m`. Defaults to `ddim`. - Note: - Check :class:`TTS.tts.configs.shared_configs.BaseTTSConfig` for the inherited parameters. - - Example: - - >>> from TTS.tts.configs.tortoise_config import TortoiseConfig - >>> config = TortoiseConfig() - """ - - model: str = "tortoise" - # model specific params - model_args: TortoiseArgs = field(default_factory=TortoiseArgs) - audio: TortoiseAudioConfig = field(default_factory=TortoiseAudioConfig) - model_dir: str = None - - # settings - temperature: float = 0.2 - length_penalty: float = 1.0 - repetition_penalty: float = 2.0 - top_p: float = 0.8 - cond_free_k: float = 2.0 - diffusion_temperature: float = 1.0 - - # inference params - num_autoregressive_samples: int = 16 - diffusion_iterations: int = 30 - sampler: str = "ddim" diff --git a/TTS/tts/configs/vits_config.py b/TTS/tts/configs/vits_config.py deleted file mode 100644 index 2d0242bf131a25d6b2cef7a297a3c32b283f908a..0000000000000000000000000000000000000000 --- a/TTS/tts/configs/vits_config.py +++ /dev/null @@ -1,176 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.tts.configs.shared_configs import BaseTTSConfig -from TTS.tts.models.vits import VitsArgs, VitsAudioConfig - - -@dataclass -class VitsConfig(BaseTTSConfig): - """Defines parameters for VITS End2End TTS model. - - Args: - model (str): - Model name. Do not change unless you know what you are doing. - - model_args (VitsArgs): - Model architecture arguments. Defaults to `VitsArgs()`. - - audio (VitsAudioConfig): - Audio processing configuration. Defaults to `VitsAudioConfig()`. - - grad_clip (List): - Gradient clipping thresholds for each optimizer. Defaults to `[1000.0, 1000.0]`. - - lr_gen (float): - Initial learning rate for the generator. Defaults to 0.0002. - - lr_disc (float): - Initial learning rate for the discriminator. Defaults to 0.0002. - - lr_scheduler_gen (str): - Name of the learning rate scheduler for the generator. One of the `torch.optim.lr_scheduler.*`. Defaults to - `ExponentialLR`. - - lr_scheduler_gen_params (dict): - Parameters for the learning rate scheduler of the generator. Defaults to `{'gamma': 0.999875, "last_epoch":-1}`. - - lr_scheduler_disc (str): - Name of the learning rate scheduler for the discriminator. One of the `torch.optim.lr_scheduler.*`. Defaults to - `ExponentialLR`. - - lr_scheduler_disc_params (dict): - Parameters for the learning rate scheduler of the discriminator. Defaults to `{'gamma': 0.999875, "last_epoch":-1}`. - - scheduler_after_epoch (bool): - If true, step the schedulers after each epoch else after each step. Defaults to `False`. - - optimizer (str): - Name of the optimizer to use with both the generator and the discriminator networks. One of the - `torch.optim.*`. Defaults to `AdamW`. - - kl_loss_alpha (float): - Loss weight for KL loss. Defaults to 1.0. - - disc_loss_alpha (float): - Loss weight for the discriminator loss. Defaults to 1.0. - - gen_loss_alpha (float): - Loss weight for the generator loss. Defaults to 1.0. - - feat_loss_alpha (float): - Loss weight for the feature matching loss. Defaults to 1.0. - - mel_loss_alpha (float): - Loss weight for the mel loss. Defaults to 45.0. - - return_wav (bool): - If true, data loader returns the waveform as well as the other outputs. Do not change. Defaults to `True`. - - compute_linear_spec (bool): - If true, the linear spectrogram is computed and returned alongside the mel output. Do not change. Defaults to `True`. - - use_weighted_sampler (bool): - If true, use weighted sampler with bucketing for balancing samples between datasets used in training. Defaults to `False`. - - weighted_sampler_attrs (dict): - Key retuned by the formatter to be used for weighted sampler. For example `{"root_path": 2.0, "speaker_name": 1.0}` sets sample probabilities - by overweighting `root_path` by 2.0. Defaults to `{}`. - - weighted_sampler_multipliers (dict): - Weight each unique value of a key returned by the formatter for weighted sampling. - For example `{"root_path":{"/raid/datasets/libritts-clean-16khz-bwe-coqui_44khz/LibriTTS/train-clean-100/":1.0, "/raid/datasets/libritts-clean-16khz-bwe-coqui_44khz/LibriTTS/train-clean-360/": 0.5}`. - It will sample instances from `train-clean-100` 2 times more than `train-clean-360`. Defaults to `{}`. - - r (int): - Number of spectrogram frames to be generated at a time. Do not change. Defaults to `1`. - - add_blank (bool): - If true, a blank token is added in between every character. Defaults to `True`. - - test_sentences (List[List]): - List of sentences with speaker and language information to be used for testing. - - language_ids_file (str): - Path to the language ids file. - - use_language_embedding (bool): - If true, language embedding is used. Defaults to `False`. - - Note: - Check :class:`TTS.tts.configs.shared_configs.BaseTTSConfig` for the inherited parameters. - - Example: - - >>> from TTS.tts.configs.vits_config import VitsConfig - >>> config = VitsConfig() - """ - - model: str = "vits" - # model specific params - model_args: VitsArgs = field(default_factory=VitsArgs) - audio: VitsAudioConfig = field(default_factory=VitsAudioConfig) - - # optimizer - grad_clip: List[float] = field(default_factory=lambda: [1000, 1000]) - lr_gen: float = 0.0002 - lr_disc: float = 0.0002 - lr_scheduler_gen: str = "ExponentialLR" - lr_scheduler_gen_params: dict = field(default_factory=lambda: {"gamma": 0.999875, "last_epoch": -1}) - lr_scheduler_disc: str = "ExponentialLR" - lr_scheduler_disc_params: dict = field(default_factory=lambda: {"gamma": 0.999875, "last_epoch": -1}) - scheduler_after_epoch: bool = True - optimizer: str = "AdamW" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.8, 0.99], "eps": 1e-9, "weight_decay": 0.01}) - - # loss params - kl_loss_alpha: float = 1.0 - disc_loss_alpha: float = 1.0 - gen_loss_alpha: float = 1.0 - feat_loss_alpha: float = 1.0 - mel_loss_alpha: float = 45.0 - dur_loss_alpha: float = 1.0 - speaker_encoder_loss_alpha: float = 1.0 - - # data loader params - return_wav: bool = True - compute_linear_spec: bool = True - - # sampler params - use_weighted_sampler: bool = False # TODO: move it to the base config - weighted_sampler_attrs: dict = field(default_factory=lambda: {}) - weighted_sampler_multipliers: dict = field(default_factory=lambda: {}) - - # overrides - r: int = 1 # DO NOT CHANGE - add_blank: bool = True - - # testing - test_sentences: List[List] = field( - default_factory=lambda: [ - ["It took me quite a long time to develop a voice, and now that I have it I'm not going to be silent."], - ["Be a voice, not an echo."], - ["I'm sorry Dave. I'm afraid I can't do that."], - ["This cake is great. It's so delicious and moist."], - ["Prior to November 22, 1963."], - ] - ) - - # multi-speaker settings - # use speaker embedding layer - num_speakers: int = 0 - use_speaker_embedding: bool = False - speakers_file: str = None - speaker_embedding_channels: int = 256 - language_ids_file: str = None - use_language_embedding: bool = False - - # use d-vectors - use_d_vector_file: bool = False - d_vector_file: List[str] = None - d_vector_dim: int = None - - def __post_init__(self): - for key, val in self.model_args.items(): - if hasattr(self, key): - self[key] = val diff --git a/TTS/tts/datasets/__init__.py b/TTS/tts/datasets/__init__.py deleted file mode 100644 index 192138561fdb4e85978fe8beb52eae2edf73888e..0000000000000000000000000000000000000000 --- a/TTS/tts/datasets/__init__.py +++ /dev/null @@ -1,181 +0,0 @@ -import os -import sys -from collections import Counter -from pathlib import Path -from typing import Callable, Dict, List, Tuple, Union - -import numpy as np - -from TTS.tts.datasets.dataset import * -from TTS.tts.datasets.formatters import * - - -def split_dataset(items, eval_split_max_size=None, eval_split_size=0.01): - """Split a dataset into train and eval. Consider speaker distribution in multi-speaker training. - - Args: - items (List[List]): - A list of samples. Each sample is a list of `[audio_path, text, speaker_id]`. - - eval_split_max_size (int): - Number maximum of samples to be used for evaluation in proportion split. Defaults to None (Disabled). - - eval_split_size (float): - If between 0.0 and 1.0 represents the proportion of the dataset to include in the evaluation set. - If > 1, represents the absolute number of evaluation samples. Defaults to 0.01 (1%). - """ - speakers = [item["speaker_name"] for item in items] - is_multi_speaker = len(set(speakers)) > 1 - if eval_split_size > 1: - eval_split_size = int(eval_split_size) - else: - if eval_split_max_size: - eval_split_size = min(eval_split_max_size, int(len(items) * eval_split_size)) - else: - eval_split_size = int(len(items) * eval_split_size) - - assert ( - eval_split_size > 0 - ), " [!] You do not have enough samples for the evaluation set. You can work around this setting the 'eval_split_size' parameter to a minimum of {}".format( - 1 / len(items) - ) - np.random.seed(0) - np.random.shuffle(items) - if is_multi_speaker: - items_eval = [] - speakers = [item["speaker_name"] for item in items] - speaker_counter = Counter(speakers) - while len(items_eval) < eval_split_size: - item_idx = np.random.randint(0, len(items)) - speaker_to_be_removed = items[item_idx]["speaker_name"] - if speaker_counter[speaker_to_be_removed] > 1: - items_eval.append(items[item_idx]) - speaker_counter[speaker_to_be_removed] -= 1 - del items[item_idx] - return items_eval, items - return items[:eval_split_size], items[eval_split_size:] - - -def add_extra_keys(metadata, language, dataset_name): - for item in metadata: - # add language name - item["language"] = language - # add unique audio name - relfilepath = os.path.splitext(os.path.relpath(item["audio_file"], item["root_path"]))[0] - audio_unique_name = f"{dataset_name}#{relfilepath}" - item["audio_unique_name"] = audio_unique_name - return metadata - - -def load_tts_samples( - datasets: Union[List[Dict], Dict], - eval_split=True, - formatter: Callable = None, - eval_split_max_size=None, - eval_split_size=0.01, -) -> Tuple[List[List], List[List]]: - """Parse the dataset from the datasets config, load the samples as a List and load the attention alignments if provided. - If `formatter` is not None, apply the formatter to the samples else pick the formatter from the available ones based - on the dataset name. - - Args: - datasets (List[Dict], Dict): A list of datasets or a single dataset dictionary. If multiple datasets are - in the list, they are all merged. - - eval_split (bool, optional): If true, create a evaluation split. If an eval split provided explicitly, generate - an eval split automatically. Defaults to True. - - formatter (Callable, optional): The preprocessing function to be applied to create the list of samples. It - must take the root_path and the meta_file name and return a list of samples in the format of - `[[text, audio_path, speaker_id], ...]]`. See the available formatters in `TTS.tts.dataset.formatter` as - example. Defaults to None. - - eval_split_max_size (int): - Number maximum of samples to be used for evaluation in proportion split. Defaults to None (Disabled). - - eval_split_size (float): - If between 0.0 and 1.0 represents the proportion of the dataset to include in the evaluation set. - If > 1, represents the absolute number of evaluation samples. Defaults to 0.01 (1%). - - Returns: - Tuple[List[List], List[List]: training and evaluation splits of the dataset. - """ - meta_data_train_all = [] - meta_data_eval_all = [] if eval_split else None - if not isinstance(datasets, list): - datasets = [datasets] - for dataset in datasets: - formatter_name = dataset["formatter"] - dataset_name = dataset["dataset_name"] - root_path = dataset["path"] - meta_file_train = dataset["meta_file_train"] - meta_file_val = dataset["meta_file_val"] - ignored_speakers = dataset["ignored_speakers"] - language = dataset["language"] - - # setup the right data processor - if formatter is None: - formatter = _get_formatter_by_name(formatter_name) - # load train set - meta_data_train = formatter(root_path, meta_file_train, ignored_speakers=ignored_speakers) - assert len(meta_data_train) > 0, f" [!] No training samples found in {root_path}/{meta_file_train}" - - meta_data_train = add_extra_keys(meta_data_train, language, dataset_name) - - print(f" | > Found {len(meta_data_train)} files in {Path(root_path).resolve()}") - # load evaluation split if set - if eval_split: - if meta_file_val: - meta_data_eval = formatter(root_path, meta_file_val, ignored_speakers=ignored_speakers) - meta_data_eval = add_extra_keys(meta_data_eval, language, dataset_name) - else: - eval_size_per_dataset = eval_split_max_size // len(datasets) if eval_split_max_size else None - meta_data_eval, meta_data_train = split_dataset(meta_data_train, eval_size_per_dataset, eval_split_size) - meta_data_eval_all += meta_data_eval - meta_data_train_all += meta_data_train - # load attention masks for the duration predictor training - if dataset.meta_file_attn_mask: - meta_data = dict(load_attention_mask_meta_data(dataset["meta_file_attn_mask"])) - for idx, ins in enumerate(meta_data_train_all): - attn_file = meta_data[ins["audio_file"]].strip() - meta_data_train_all[idx].update({"alignment_file": attn_file}) - if meta_data_eval_all: - for idx, ins in enumerate(meta_data_eval_all): - attn_file = meta_data[ins["audio_file"]].strip() - meta_data_eval_all[idx].update({"alignment_file": attn_file}) - # set none for the next iter - formatter = None - return meta_data_train_all, meta_data_eval_all - - -def load_attention_mask_meta_data(metafile_path): - """Load meta data file created by compute_attention_masks.py""" - with open(metafile_path, "r", encoding="utf-8") as f: - lines = f.readlines() - - meta_data = [] - for line in lines: - wav_file, attn_file = line.split("|") - meta_data.append([wav_file, attn_file]) - return meta_data - - -def _get_formatter_by_name(name): - """Returns the respective preprocessing function.""" - thismodule = sys.modules[__name__] - return getattr(thismodule, name.lower()) - - -def find_unique_chars(data_samples, verbose=True): - texts = "".join(item[0] for item in data_samples) - chars = set(texts) - lower_chars = filter(lambda c: c.islower(), chars) - chars_force_lower = [c.lower() for c in chars] - chars_force_lower = set(chars_force_lower) - - if verbose: - print(f" > Number of unique characters: {len(chars)}") - print(f" > Unique characters: {''.join(sorted(chars))}") - print(f" > Unique lower characters: {''.join(sorted(lower_chars))}") - print(f" > Unique all forced to lower characters: {''.join(sorted(chars_force_lower))}") - return chars_force_lower diff --git a/TTS/tts/datasets/dataset.py b/TTS/tts/datasets/dataset.py deleted file mode 100644 index c673c963b65398b624688b630962efa0baf71732..0000000000000000000000000000000000000000 --- a/TTS/tts/datasets/dataset.py +++ /dev/null @@ -1,962 +0,0 @@ -import base64 -import collections -import os -import random -from typing import Dict, List, Union - -import numpy as np -import torch -import tqdm -from torch.utils.data import Dataset - -from TTS.tts.utils.data import prepare_data, prepare_stop_target, prepare_tensor -from TTS.utils.audio import AudioProcessor -from TTS.utils.audio.numpy_transforms import compute_energy as calculate_energy - -# to prevent too many open files error as suggested here -# https://github.com/pytorch/pytorch/issues/11201#issuecomment-421146936 -torch.multiprocessing.set_sharing_strategy("file_system") - - -def _parse_sample(item): - language_name = None - attn_file = None - if len(item) == 5: - text, wav_file, speaker_name, language_name, attn_file = item - elif len(item) == 4: - text, wav_file, speaker_name, language_name = item - elif len(item) == 3: - text, wav_file, speaker_name = item - else: - raise ValueError(" [!] Dataset cannot parse the sample.") - return text, wav_file, speaker_name, language_name, attn_file - - -def noise_augment_audio(wav): - return wav + (1.0 / 32768.0) * np.random.rand(*wav.shape) - - -def string2filename(string): - # generate a safe and reversible filename based on a string - filename = base64.urlsafe_b64encode(string.encode("utf-8")).decode("utf-8", "ignore") - return filename - - -class TTSDataset(Dataset): - def __init__( - self, - outputs_per_step: int = 1, - compute_linear_spec: bool = False, - ap: AudioProcessor = None, - samples: List[Dict] = None, - tokenizer: "TTSTokenizer" = None, - compute_f0: bool = False, - compute_energy: bool = False, - f0_cache_path: str = None, - energy_cache_path: str = None, - return_wav: bool = False, - batch_group_size: int = 0, - min_text_len: int = 0, - max_text_len: int = float("inf"), - min_audio_len: int = 0, - max_audio_len: int = float("inf"), - phoneme_cache_path: str = None, - precompute_num_workers: int = 0, - speaker_id_mapping: Dict = None, - d_vector_mapping: Dict = None, - language_id_mapping: Dict = None, - use_noise_augment: bool = False, - start_by_longest: bool = False, - verbose: bool = False, - ): - """Generic 📂 data loader for `tts` models. It is configurable for different outputs and needs. - - If you need something different, you can subclass and override. - - Args: - outputs_per_step (int): Number of time frames predicted per step. - - compute_linear_spec (bool): compute linear spectrogram if True. - - ap (TTS.tts.utils.AudioProcessor): Audio processor object. - - samples (list): List of dataset samples. - - tokenizer (TTSTokenizer): tokenizer to convert text to sequence IDs. If None init internally else - use the given. Defaults to None. - - compute_f0 (bool): compute f0 if True. Defaults to False. - - compute_energy (bool): compute energy if True. Defaults to False. - - f0_cache_path (str): Path to store f0 cache. Defaults to None. - - energy_cache_path (str): Path to store energy cache. Defaults to None. - - return_wav (bool): Return the waveform of the sample. Defaults to False. - - batch_group_size (int): Range of batch randomization after sorting - sequences by length. It shuffles each batch with bucketing to gather similar lenght sequences in a - batch. Set 0 to disable. Defaults to 0. - - min_text_len (int): Minimum length of input text to be used. All shorter samples will be ignored. - Defaults to 0. - - max_text_len (int): Maximum length of input text to be used. All longer samples will be ignored. - Defaults to float("inf"). - - min_audio_len (int): Minimum length of input audio to be used. All shorter samples will be ignored. - Defaults to 0. - - max_audio_len (int): Maximum length of input audio to be used. All longer samples will be ignored. - The maximum length in the dataset defines the VRAM used in the training. Hence, pay attention to - this value if you encounter an OOM error in training. Defaults to float("inf"). - - phoneme_cache_path (str): Path to cache computed phonemes. It writes phonemes of each sample to a - separate file. Defaults to None. - - precompute_num_workers (int): Number of workers to precompute features. Defaults to 0. - - speaker_id_mapping (dict): Mapping of speaker names to IDs used to compute embedding vectors by the - embedding layer. Defaults to None. - - d_vector_mapping (dict): Mapping of wav files to computed d-vectors. Defaults to None. - - use_noise_augment (bool): Enable adding random noise to wav for augmentation. Defaults to False. - - start_by_longest (bool): Start by longest sequence. It is especially useful to check OOM. Defaults to False. - - verbose (bool): Print diagnostic information. Defaults to false. - """ - super().__init__() - self.batch_group_size = batch_group_size - self._samples = samples - self.outputs_per_step = outputs_per_step - self.compute_linear_spec = compute_linear_spec - self.return_wav = return_wav - self.compute_f0 = compute_f0 - self.compute_energy = compute_energy - self.f0_cache_path = f0_cache_path - self.energy_cache_path = energy_cache_path - self.min_audio_len = min_audio_len - self.max_audio_len = max_audio_len - self.min_text_len = min_text_len - self.max_text_len = max_text_len - self.ap = ap - self.phoneme_cache_path = phoneme_cache_path - self.speaker_id_mapping = speaker_id_mapping - self.d_vector_mapping = d_vector_mapping - self.language_id_mapping = language_id_mapping - self.use_noise_augment = use_noise_augment - self.start_by_longest = start_by_longest - - self.verbose = verbose - self.rescue_item_idx = 1 - self.pitch_computed = False - self.tokenizer = tokenizer - - if self.tokenizer.use_phonemes: - self.phoneme_dataset = PhonemeDataset( - self.samples, self.tokenizer, phoneme_cache_path, precompute_num_workers=precompute_num_workers - ) - - if compute_f0: - self.f0_dataset = F0Dataset( - self.samples, self.ap, cache_path=f0_cache_path, precompute_num_workers=precompute_num_workers - ) - if compute_energy: - self.energy_dataset = EnergyDataset( - self.samples, self.ap, cache_path=energy_cache_path, precompute_num_workers=precompute_num_workers - ) - if self.verbose: - self.print_logs() - - @property - def lengths(self): - lens = [] - for item in self.samples: - _, wav_file, *_ = _parse_sample(item) - audio_len = os.path.getsize(wav_file) / 16 * 8 # assuming 16bit audio - lens.append(audio_len) - return lens - - @property - def samples(self): - return self._samples - - @samples.setter - def samples(self, new_samples): - self._samples = new_samples - if hasattr(self, "f0_dataset"): - self.f0_dataset.samples = new_samples - if hasattr(self, "energy_dataset"): - self.energy_dataset.samples = new_samples - if hasattr(self, "phoneme_dataset"): - self.phoneme_dataset.samples = new_samples - - def __len__(self): - return len(self.samples) - - def __getitem__(self, idx): - return self.load_data(idx) - - def print_logs(self, level: int = 0) -> None: - indent = "\t" * level - print("\n") - print(f"{indent}> DataLoader initialization") - print(f"{indent}| > Tokenizer:") - self.tokenizer.print_logs(level + 1) - print(f"{indent}| > Number of instances : {len(self.samples)}") - - def load_wav(self, filename): - waveform = self.ap.load_wav(filename) - assert waveform.size > 0 - return waveform - - def get_phonemes(self, idx, text): - out_dict = self.phoneme_dataset[idx] - assert text == out_dict["text"], f"{text} != {out_dict['text']}" - assert len(out_dict["token_ids"]) > 0 - return out_dict - - def get_f0(self, idx): - out_dict = self.f0_dataset[idx] - item = self.samples[idx] - assert item["audio_unique_name"] == out_dict["audio_unique_name"] - return out_dict - - def get_energy(self, idx): - out_dict = self.energy_dataset[idx] - item = self.samples[idx] - assert item["audio_unique_name"] == out_dict["audio_unique_name"] - return out_dict - - @staticmethod - def get_attn_mask(attn_file): - return np.load(attn_file) - - def get_token_ids(self, idx, text): - if self.tokenizer.use_phonemes: - token_ids = self.get_phonemes(idx, text)["token_ids"] - else: - token_ids = self.tokenizer.text_to_ids(text) - return np.array(token_ids, dtype=np.int32) - - def load_data(self, idx): - item = self.samples[idx] - - raw_text = item["text"] - - wav = np.asarray(self.load_wav(item["audio_file"]), dtype=np.float32) - - # apply noise for augmentation - if self.use_noise_augment: - wav = noise_augment_audio(wav) - - # get token ids - token_ids = self.get_token_ids(idx, item["text"]) - - # get pre-computed attention maps - attn = None - if "alignment_file" in item: - attn = self.get_attn_mask(item["alignment_file"]) - - # after phonemization the text length may change - # this is a shareful 🤭 hack to prevent longer phonemes - # TODO: find a better fix - if len(token_ids) > self.max_text_len or len(wav) < self.min_audio_len: - self.rescue_item_idx += 1 - return self.load_data(self.rescue_item_idx) - - # get f0 values - f0 = None - if self.compute_f0: - f0 = self.get_f0(idx)["f0"] - energy = None - if self.compute_energy: - energy = self.get_energy(idx)["energy"] - - sample = { - "raw_text": raw_text, - "token_ids": token_ids, - "wav": wav, - "pitch": f0, - "energy": energy, - "attn": attn, - "item_idx": item["audio_file"], - "speaker_name": item["speaker_name"], - "language_name": item["language"], - "wav_file_name": os.path.basename(item["audio_file"]), - "audio_unique_name": item["audio_unique_name"], - } - return sample - - @staticmethod - def _compute_lengths(samples): - new_samples = [] - for item in samples: - audio_length = os.path.getsize(item["audio_file"]) / 16 * 8 # assuming 16bit audio - text_lenght = len(item["text"]) - item["audio_length"] = audio_length - item["text_length"] = text_lenght - new_samples += [item] - return new_samples - - @staticmethod - def filter_by_length(lengths: List[int], min_len: int, max_len: int): - idxs = np.argsort(lengths) # ascending order - ignore_idx = [] - keep_idx = [] - for idx in idxs: - length = lengths[idx] - if length < min_len or length > max_len: - ignore_idx.append(idx) - else: - keep_idx.append(idx) - return ignore_idx, keep_idx - - @staticmethod - def sort_by_length(samples: List[List]): - audio_lengths = [s["audio_length"] for s in samples] - idxs = np.argsort(audio_lengths) # ascending order - return idxs - - @staticmethod - def create_buckets(samples, batch_group_size: int): - assert batch_group_size > 0 - for i in range(len(samples) // batch_group_size): - offset = i * batch_group_size - end_offset = offset + batch_group_size - temp_items = samples[offset:end_offset] - random.shuffle(temp_items) - samples[offset:end_offset] = temp_items - return samples - - @staticmethod - def _select_samples_by_idx(idxs, samples): - samples_new = [] - for idx in idxs: - samples_new.append(samples[idx]) - return samples_new - - def preprocess_samples(self): - r"""Sort `items` based on text length or audio length in ascending order. Filter out samples out or the length - range. - """ - samples = self._compute_lengths(self.samples) - - # sort items based on the sequence length in ascending order - text_lengths = [i["text_length"] for i in samples] - audio_lengths = [i["audio_length"] for i in samples] - text_ignore_idx, text_keep_idx = self.filter_by_length(text_lengths, self.min_text_len, self.max_text_len) - audio_ignore_idx, audio_keep_idx = self.filter_by_length(audio_lengths, self.min_audio_len, self.max_audio_len) - keep_idx = list(set(audio_keep_idx) & set(text_keep_idx)) - ignore_idx = list(set(audio_ignore_idx) | set(text_ignore_idx)) - - samples = self._select_samples_by_idx(keep_idx, samples) - - sorted_idxs = self.sort_by_length(samples) - - if self.start_by_longest: - longest_idxs = sorted_idxs[-1] - sorted_idxs[-1] = sorted_idxs[0] - sorted_idxs[0] = longest_idxs - - samples = self._select_samples_by_idx(sorted_idxs, samples) - - if len(samples) == 0: - raise RuntimeError(" [!] No samples left") - - # shuffle batch groups - # create batches with similar length items - # the larger the `batch_group_size`, the higher the length variety in a batch. - if self.batch_group_size > 0: - samples = self.create_buckets(samples, self.batch_group_size) - - # update items to the new sorted items - audio_lengths = [s["audio_length"] for s in samples] - text_lengths = [s["text_length"] for s in samples] - self.samples = samples - - if self.verbose: - print(" | > Preprocessing samples") - print(" | > Max text length: {}".format(np.max(text_lengths))) - print(" | > Min text length: {}".format(np.min(text_lengths))) - print(" | > Avg text length: {}".format(np.mean(text_lengths))) - print(" | ") - print(" | > Max audio length: {}".format(np.max(audio_lengths))) - print(" | > Min audio length: {}".format(np.min(audio_lengths))) - print(" | > Avg audio length: {}".format(np.mean(audio_lengths))) - print(f" | > Num. instances discarded samples: {len(ignore_idx)}") - print(" | > Batch group size: {}.".format(self.batch_group_size)) - - @staticmethod - def _sort_batch(batch, text_lengths): - """Sort the batch by the input text length for RNN efficiency. - - Args: - batch (Dict): Batch returned by `__getitem__`. - text_lengths (List[int]): Lengths of the input character sequences. - """ - text_lengths, ids_sorted_decreasing = torch.sort(torch.LongTensor(text_lengths), dim=0, descending=True) - batch = [batch[idx] for idx in ids_sorted_decreasing] - return batch, text_lengths, ids_sorted_decreasing - - def collate_fn(self, batch): - r""" - Perform preprocessing and create a final data batch: - 1. Sort batch instances by text-length - 2. Convert Audio signal to features. - 3. PAD sequences wrt r. - 4. Load to Torch. - """ - - # Puts each data field into a tensor with outer dimension batch size - if isinstance(batch[0], collections.abc.Mapping): - token_ids_lengths = np.array([len(d["token_ids"]) for d in batch]) - - # sort items with text input length for RNN efficiency - batch, token_ids_lengths, ids_sorted_decreasing = self._sort_batch(batch, token_ids_lengths) - - # convert list of dicts to dict of lists - batch = {k: [dic[k] for dic in batch] for k in batch[0]} - - # get language ids from language names - if self.language_id_mapping is not None: - language_ids = [self.language_id_mapping[ln] for ln in batch["language_name"]] - else: - language_ids = None - # get pre-computed d-vectors - if self.d_vector_mapping is not None: - embedding_keys = list(batch["audio_unique_name"]) - d_vectors = [self.d_vector_mapping[w]["embedding"] for w in embedding_keys] - else: - d_vectors = None - - # get numerical speaker ids from speaker names - if self.speaker_id_mapping: - speaker_ids = [self.speaker_id_mapping[sn] for sn in batch["speaker_name"]] - else: - speaker_ids = None - # compute features - mel = [self.ap.melspectrogram(w).astype("float32") for w in batch["wav"]] - - mel_lengths = [m.shape[1] for m in mel] - - # lengths adjusted by the reduction factor - mel_lengths_adjusted = [ - m.shape[1] + (self.outputs_per_step - (m.shape[1] % self.outputs_per_step)) - if m.shape[1] % self.outputs_per_step - else m.shape[1] - for m in mel - ] - - # compute 'stop token' targets - stop_targets = [np.array([0.0] * (mel_len - 1) + [1.0]) for mel_len in mel_lengths] - - # PAD stop targets - stop_targets = prepare_stop_target(stop_targets, self.outputs_per_step) - - # PAD sequences with longest instance in the batch - token_ids = prepare_data(batch["token_ids"]).astype(np.int32) - - # PAD features with longest instance - mel = prepare_tensor(mel, self.outputs_per_step) - - # B x D x T --> B x T x D - mel = mel.transpose(0, 2, 1) - - # convert things to pytorch - token_ids_lengths = torch.LongTensor(token_ids_lengths) - token_ids = torch.LongTensor(token_ids) - mel = torch.FloatTensor(mel).contiguous() - mel_lengths = torch.LongTensor(mel_lengths) - stop_targets = torch.FloatTensor(stop_targets) - - # speaker vectors - if d_vectors is not None: - d_vectors = torch.FloatTensor(d_vectors) - - if speaker_ids is not None: - speaker_ids = torch.LongTensor(speaker_ids) - - if language_ids is not None: - language_ids = torch.LongTensor(language_ids) - - # compute linear spectrogram - linear = None - if self.compute_linear_spec: - linear = [self.ap.spectrogram(w).astype("float32") for w in batch["wav"]] - linear = prepare_tensor(linear, self.outputs_per_step) - linear = linear.transpose(0, 2, 1) - assert mel.shape[1] == linear.shape[1] - linear = torch.FloatTensor(linear).contiguous() - - # format waveforms - wav_padded = None - if self.return_wav: - wav_lengths = [w.shape[0] for w in batch["wav"]] - max_wav_len = max(mel_lengths_adjusted) * self.ap.hop_length - wav_lengths = torch.LongTensor(wav_lengths) - wav_padded = torch.zeros(len(batch["wav"]), 1, max_wav_len) - for i, w in enumerate(batch["wav"]): - mel_length = mel_lengths_adjusted[i] - w = np.pad(w, (0, self.ap.hop_length * self.outputs_per_step), mode="edge") - w = w[: mel_length * self.ap.hop_length] - wav_padded[i, :, : w.shape[0]] = torch.from_numpy(w) - wav_padded.transpose_(1, 2) - - # format F0 - if self.compute_f0: - pitch = prepare_data(batch["pitch"]) - assert mel.shape[1] == pitch.shape[1], f"[!] {mel.shape} vs {pitch.shape}" - pitch = torch.FloatTensor(pitch)[:, None, :].contiguous() # B x 1 xT - else: - pitch = None - # format energy - if self.compute_energy: - energy = prepare_data(batch["energy"]) - assert mel.shape[1] == energy.shape[1], f"[!] {mel.shape} vs {energy.shape}" - energy = torch.FloatTensor(energy)[:, None, :].contiguous() # B x 1 xT - else: - energy = None - # format attention masks - attns = None - if batch["attn"][0] is not None: - attns = [batch["attn"][idx].T for idx in ids_sorted_decreasing] - for idx, attn in enumerate(attns): - pad2 = mel.shape[1] - attn.shape[1] - pad1 = token_ids.shape[1] - attn.shape[0] - assert pad1 >= 0 and pad2 >= 0, f"[!] Negative padding - {pad1} and {pad2}" - attn = np.pad(attn, [[0, pad1], [0, pad2]]) - attns[idx] = attn - attns = prepare_tensor(attns, self.outputs_per_step) - attns = torch.FloatTensor(attns).unsqueeze(1) - - return { - "token_id": token_ids, - "token_id_lengths": token_ids_lengths, - "speaker_names": batch["speaker_name"], - "linear": linear, - "mel": mel, - "mel_lengths": mel_lengths, - "stop_targets": stop_targets, - "item_idxs": batch["item_idx"], - "d_vectors": d_vectors, - "speaker_ids": speaker_ids, - "attns": attns, - "waveform": wav_padded, - "raw_text": batch["raw_text"], - "pitch": pitch, - "energy": energy, - "language_ids": language_ids, - "audio_unique_names": batch["audio_unique_name"], - } - - raise TypeError( - ( - "batch must contain tensors, numbers, dicts or lists;\ - found {}".format( - type(batch[0]) - ) - ) - ) - - -class PhonemeDataset(Dataset): - """Phoneme Dataset for converting input text to phonemes and then token IDs - - At initialization, it pre-computes the phonemes under `cache_path` and loads them in training to reduce data - loading latency. If `cache_path` is already present, it skips the pre-computation. - - Args: - samples (Union[List[List], List[Dict]]): - List of samples. Each sample is a list or a dict. - - tokenizer (TTSTokenizer): - Tokenizer to convert input text to phonemes. - - cache_path (str): - Path to cache phonemes. If `cache_path` is already present or None, it skips the pre-computation. - - precompute_num_workers (int): - Number of workers used for pre-computing the phonemes. Defaults to 0. - """ - - def __init__( - self, - samples: Union[List[Dict], List[List]], - tokenizer: "TTSTokenizer", - cache_path: str, - precompute_num_workers=0, - ): - self.samples = samples - self.tokenizer = tokenizer - self.cache_path = cache_path - if cache_path is not None and not os.path.exists(cache_path): - os.makedirs(cache_path) - self.precompute(precompute_num_workers) - - def __getitem__(self, index): - item = self.samples[index] - ids = self.compute_or_load(string2filename(item["audio_unique_name"]), item["text"], item["language"]) - ph_hat = self.tokenizer.ids_to_text(ids) - return {"text": item["text"], "ph_hat": ph_hat, "token_ids": ids, "token_ids_len": len(ids)} - - def __len__(self): - return len(self.samples) - - def compute_or_load(self, file_name, text, language): - """Compute phonemes for the given text. - - If the phonemes are already cached, load them from cache. - """ - file_ext = "_phoneme.npy" - cache_path = os.path.join(self.cache_path, file_name + file_ext) - try: - ids = np.load(cache_path) - except FileNotFoundError: - ids = self.tokenizer.text_to_ids(text, language=language) - np.save(cache_path, ids) - return ids - - def get_pad_id(self): - """Get pad token ID for sequence padding""" - return self.tokenizer.pad_id - - def precompute(self, num_workers=1): - """Precompute phonemes for all samples. - - We use pytorch dataloader because we are lazy. - """ - print("[*] Pre-computing phonemes...") - with tqdm.tqdm(total=len(self)) as pbar: - batch_size = num_workers if num_workers > 0 else 1 - dataloder = torch.utils.data.DataLoader( - batch_size=batch_size, dataset=self, shuffle=False, num_workers=num_workers, collate_fn=self.collate_fn - ) - for _ in dataloder: - pbar.update(batch_size) - - def collate_fn(self, batch): - ids = [item["token_ids"] for item in batch] - ids_lens = [item["token_ids_len"] for item in batch] - texts = [item["text"] for item in batch] - texts_hat = [item["ph_hat"] for item in batch] - ids_lens_max = max(ids_lens) - ids_torch = torch.LongTensor(len(ids), ids_lens_max).fill_(self.get_pad_id()) - for i, ids_len in enumerate(ids_lens): - ids_torch[i, :ids_len] = torch.LongTensor(ids[i]) - return {"text": texts, "ph_hat": texts_hat, "token_ids": ids_torch} - - def print_logs(self, level: int = 0) -> None: - indent = "\t" * level - print("\n") - print(f"{indent}> PhonemeDataset ") - print(f"{indent}| > Tokenizer:") - self.tokenizer.print_logs(level + 1) - print(f"{indent}| > Number of instances : {len(self.samples)}") - - -class F0Dataset: - """F0 Dataset for computing F0 from wav files in CPU - - Pre-compute F0 values for all the samples at initialization if `cache_path` is not None or already present. It - also computes the mean and std of F0 values if `normalize_f0` is True. - - Args: - samples (Union[List[List], List[Dict]]): - List of samples. Each sample is a list or a dict. - - ap (AudioProcessor): - AudioProcessor to compute F0 from wav files. - - cache_path (str): - Path to cache F0 values. If `cache_path` is already present or None, it skips the pre-computation. - Defaults to None. - - precompute_num_workers (int): - Number of workers used for pre-computing the F0 values. Defaults to 0. - - normalize_f0 (bool): - Whether to normalize F0 values by mean and std. Defaults to True. - """ - - def __init__( - self, - samples: Union[List[List], List[Dict]], - ap: "AudioProcessor", - audio_config=None, # pylint: disable=unused-argument - verbose=False, - cache_path: str = None, - precompute_num_workers=0, - normalize_f0=True, - ): - self.samples = samples - self.ap = ap - self.verbose = verbose - self.cache_path = cache_path - self.normalize_f0 = normalize_f0 - self.pad_id = 0.0 - self.mean = None - self.std = None - if cache_path is not None and not os.path.exists(cache_path): - os.makedirs(cache_path) - self.precompute(precompute_num_workers) - if normalize_f0: - self.load_stats(cache_path) - - def __getitem__(self, idx): - item = self.samples[idx] - f0 = self.compute_or_load(item["audio_file"], string2filename(item["audio_unique_name"])) - if self.normalize_f0: - assert self.mean is not None and self.std is not None, " [!] Mean and STD is not available" - f0 = self.normalize(f0) - return {"audio_unique_name": item["audio_unique_name"], "f0": f0} - - def __len__(self): - return len(self.samples) - - def precompute(self, num_workers=0): - print("[*] Pre-computing F0s...") - with tqdm.tqdm(total=len(self)) as pbar: - batch_size = num_workers if num_workers > 0 else 1 - # we do not normalize at preproessing - normalize_f0 = self.normalize_f0 - self.normalize_f0 = False - dataloder = torch.utils.data.DataLoader( - batch_size=batch_size, dataset=self, shuffle=False, num_workers=num_workers, collate_fn=self.collate_fn - ) - computed_data = [] - for batch in dataloder: - f0 = batch["f0"] - computed_data.append(f for f in f0) - pbar.update(batch_size) - self.normalize_f0 = normalize_f0 - - if self.normalize_f0: - computed_data = [tensor for batch in computed_data for tensor in batch] # flatten - pitch_mean, pitch_std = self.compute_pitch_stats(computed_data) - pitch_stats = {"mean": pitch_mean, "std": pitch_std} - np.save(os.path.join(self.cache_path, "pitch_stats"), pitch_stats, allow_pickle=True) - - def get_pad_id(self): - return self.pad_id - - @staticmethod - def create_pitch_file_path(file_name, cache_path): - pitch_file = os.path.join(cache_path, file_name + "_pitch.npy") - return pitch_file - - @staticmethod - def _compute_and_save_pitch(ap, wav_file, pitch_file=None): - wav = ap.load_wav(wav_file) - pitch = ap.compute_f0(wav) - if pitch_file: - np.save(pitch_file, pitch) - return pitch - - @staticmethod - def compute_pitch_stats(pitch_vecs): - nonzeros = np.concatenate([v[np.where(v != 0.0)[0]] for v in pitch_vecs]) - mean, std = np.mean(nonzeros), np.std(nonzeros) - return mean, std - - def load_stats(self, cache_path): - stats_path = os.path.join(cache_path, "pitch_stats.npy") - stats = np.load(stats_path, allow_pickle=True).item() - self.mean = stats["mean"].astype(np.float32) - self.std = stats["std"].astype(np.float32) - - def normalize(self, pitch): - zero_idxs = np.where(pitch == 0.0)[0] - pitch = pitch - self.mean - pitch = pitch / self.std - pitch[zero_idxs] = 0.0 - return pitch - - def denormalize(self, pitch): - zero_idxs = np.where(pitch == 0.0)[0] - pitch *= self.std - pitch += self.mean - pitch[zero_idxs] = 0.0 - return pitch - - def compute_or_load(self, wav_file, audio_unique_name): - """ - compute pitch and return a numpy array of pitch values - """ - pitch_file = self.create_pitch_file_path(audio_unique_name, self.cache_path) - if not os.path.exists(pitch_file): - pitch = self._compute_and_save_pitch(self.ap, wav_file, pitch_file) - else: - pitch = np.load(pitch_file) - return pitch.astype(np.float32) - - def collate_fn(self, batch): - audio_unique_name = [item["audio_unique_name"] for item in batch] - f0s = [item["f0"] for item in batch] - f0_lens = [len(item["f0"]) for item in batch] - f0_lens_max = max(f0_lens) - f0s_torch = torch.LongTensor(len(f0s), f0_lens_max).fill_(self.get_pad_id()) - for i, f0_len in enumerate(f0_lens): - f0s_torch[i, :f0_len] = torch.LongTensor(f0s[i]) - return {"audio_unique_name": audio_unique_name, "f0": f0s_torch, "f0_lens": f0_lens} - - def print_logs(self, level: int = 0) -> None: - indent = "\t" * level - print("\n") - print(f"{indent}> F0Dataset ") - print(f"{indent}| > Number of instances : {len(self.samples)}") - - -class EnergyDataset: - """Energy Dataset for computing Energy from wav files in CPU - - Pre-compute Energy values for all the samples at initialization if `cache_path` is not None or already present. It - also computes the mean and std of Energy values if `normalize_Energy` is True. - - Args: - samples (Union[List[List], List[Dict]]): - List of samples. Each sample is a list or a dict. - - ap (AudioProcessor): - AudioProcessor to compute Energy from wav files. - - cache_path (str): - Path to cache Energy values. If `cache_path` is already present or None, it skips the pre-computation. - Defaults to None. - - precompute_num_workers (int): - Number of workers used for pre-computing the Energy values. Defaults to 0. - - normalize_Energy (bool): - Whether to normalize Energy values by mean and std. Defaults to True. - """ - - def __init__( - self, - samples: Union[List[List], List[Dict]], - ap: "AudioProcessor", - verbose=False, - cache_path: str = None, - precompute_num_workers=0, - normalize_energy=True, - ): - self.samples = samples - self.ap = ap - self.verbose = verbose - self.cache_path = cache_path - self.normalize_energy = normalize_energy - self.pad_id = 0.0 - self.mean = None - self.std = None - if cache_path is not None and not os.path.exists(cache_path): - os.makedirs(cache_path) - self.precompute(precompute_num_workers) - if normalize_energy: - self.load_stats(cache_path) - - def __getitem__(self, idx): - item = self.samples[idx] - energy = self.compute_or_load(item["audio_file"], string2filename(item["audio_unique_name"])) - if self.normalize_energy: - assert self.mean is not None and self.std is not None, " [!] Mean and STD is not available" - energy = self.normalize(energy) - return {"audio_unique_name": item["audio_unique_name"], "energy": energy} - - def __len__(self): - return len(self.samples) - - def precompute(self, num_workers=0): - print("[*] Pre-computing energys...") - with tqdm.tqdm(total=len(self)) as pbar: - batch_size = num_workers if num_workers > 0 else 1 - # we do not normalize at preproessing - normalize_energy = self.normalize_energy - self.normalize_energy = False - dataloder = torch.utils.data.DataLoader( - batch_size=batch_size, dataset=self, shuffle=False, num_workers=num_workers, collate_fn=self.collate_fn - ) - computed_data = [] - for batch in dataloder: - energy = batch["energy"] - computed_data.append(e for e in energy) - pbar.update(batch_size) - self.normalize_energy = normalize_energy - - if self.normalize_energy: - computed_data = [tensor for batch in computed_data for tensor in batch] # flatten - energy_mean, energy_std = self.compute_energy_stats(computed_data) - energy_stats = {"mean": energy_mean, "std": energy_std} - np.save(os.path.join(self.cache_path, "energy_stats"), energy_stats, allow_pickle=True) - - def get_pad_id(self): - return self.pad_id - - @staticmethod - def create_energy_file_path(wav_file, cache_path): - file_name = os.path.splitext(os.path.basename(wav_file))[0] - energy_file = os.path.join(cache_path, file_name + "_energy.npy") - return energy_file - - @staticmethod - def _compute_and_save_energy(ap, wav_file, energy_file=None): - wav = ap.load_wav(wav_file) - energy = calculate_energy(wav, fft_size=ap.fft_size, hop_length=ap.hop_length, win_length=ap.win_length) - if energy_file: - np.save(energy_file, energy) - return energy - - @staticmethod - def compute_energy_stats(energy_vecs): - nonzeros = np.concatenate([v[np.where(v != 0.0)[0]] for v in energy_vecs]) - mean, std = np.mean(nonzeros), np.std(nonzeros) - return mean, std - - def load_stats(self, cache_path): - stats_path = os.path.join(cache_path, "energy_stats.npy") - stats = np.load(stats_path, allow_pickle=True).item() - self.mean = stats["mean"].astype(np.float32) - self.std = stats["std"].astype(np.float32) - - def normalize(self, energy): - zero_idxs = np.where(energy == 0.0)[0] - energy = energy - self.mean - energy = energy / self.std - energy[zero_idxs] = 0.0 - return energy - - def denormalize(self, energy): - zero_idxs = np.where(energy == 0.0)[0] - energy *= self.std - energy += self.mean - energy[zero_idxs] = 0.0 - return energy - - def compute_or_load(self, wav_file, audio_unique_name): - """ - compute energy and return a numpy array of energy values - """ - energy_file = self.create_energy_file_path(audio_unique_name, self.cache_path) - if not os.path.exists(energy_file): - energy = self._compute_and_save_energy(self.ap, wav_file, energy_file) - else: - energy = np.load(energy_file) - return energy.astype(np.float32) - - def collate_fn(self, batch): - audio_unique_name = [item["audio_unique_name"] for item in batch] - energys = [item["energy"] for item in batch] - energy_lens = [len(item["energy"]) for item in batch] - energy_lens_max = max(energy_lens) - energys_torch = torch.LongTensor(len(energys), energy_lens_max).fill_(self.get_pad_id()) - for i, energy_len in enumerate(energy_lens): - energys_torch[i, :energy_len] = torch.LongTensor(energys[i]) - return {"audio_unique_name": audio_unique_name, "energy": energys_torch, "energy_lens": energy_lens} - - def print_logs(self, level: int = 0) -> None: - indent = "\t" * level - print("\n") - print(f"{indent}> energyDataset ") - print(f"{indent}| > Number of instances : {len(self.samples)}") diff --git a/TTS/tts/datasets/formatters.py b/TTS/tts/datasets/formatters.py deleted file mode 100644 index 0eac29c8f7b6af90b5bfcff6c59a7f4597709633..0000000000000000000000000000000000000000 --- a/TTS/tts/datasets/formatters.py +++ /dev/null @@ -1,616 +0,0 @@ -import os -import re -import xml.etree.ElementTree as ET -from glob import glob -from pathlib import Path -from typing import List - -import pandas as pd -from tqdm import tqdm - -######################## -# DATASETS -######################## - - -def coqui(root_path, meta_file, ignored_speakers=None): - """Interal dataset formatter.""" - filepath = os.path.join(root_path, meta_file) - # ensure there are 4 columns for every line - with open(filepath, "r", encoding="utf8") as f: - lines = f.readlines() - num_cols = len(lines[0].split("|")) # take the first row as reference - for idx, line in enumerate(lines[1:]): - if len(line.split("|")) != num_cols: - print(f" > Missing column in line {idx + 1} -> {line.strip()}") - # load metadata - metadata = pd.read_csv(os.path.join(root_path, meta_file), sep="|") - assert all(x in metadata.columns for x in ["audio_file", "text"]) - speaker_name = None if "speaker_name" in metadata.columns else "coqui" - emotion_name = None if "emotion_name" in metadata.columns else "neutral" - items = [] - not_found_counter = 0 - for row in metadata.itertuples(): - if speaker_name is None and ignored_speakers is not None and row.speaker_name in ignored_speakers: - continue - audio_path = os.path.join(root_path, row.audio_file) - if not os.path.exists(audio_path): - not_found_counter += 1 - continue - items.append( - { - "text": row.text, - "audio_file": audio_path, - "speaker_name": speaker_name if speaker_name is not None else row.speaker_name, - "emotion_name": emotion_name if emotion_name is not None else row.emotion_name, - "root_path": root_path, - } - ) - if not_found_counter > 0: - print(f" | > [!] {not_found_counter} files not found") - return items - - -def tweb(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalize TWEB dataset. - https://www.kaggle.com/bryanpark/the-world-english-bible-speech-dataset - """ - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "tweb" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("\t") - wav_file = os.path.join(root_path, cols[0] + ".wav") - text = cols[1] - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def mozilla(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes Mozilla meta data files to TTS format""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "mozilla" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = cols[1].strip() - text = cols[0].strip() - wav_file = os.path.join(root_path, "wavs", wav_file) - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def mozilla_de(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes Mozilla meta data files to TTS format""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "mozilla" - with open(txt_file, "r", encoding="ISO 8859-1") as ttf: - for line in ttf: - cols = line.strip().split("|") - wav_file = cols[0].strip() - text = cols[1].strip() - folder_name = f"BATCH_{wav_file.split('_')[0]}_FINAL" - wav_file = os.path.join(root_path, folder_name, wav_file) - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def mailabs(root_path, meta_files=None, ignored_speakers=None): - """Normalizes M-AI-Labs meta data files to TTS format - - Args: - root_path (str): root folder of the MAILAB language folder. - meta_files (str): list of meta files to be used in the training. If None, finds all the csv files - recursively. Defaults to None - """ - speaker_regex = re.compile(f"by_book{os.sep}(male|female){os.sep}(?P[^{os.sep}]+){os.sep}") - if not meta_files: - csv_files = glob(root_path + f"{os.sep}**{os.sep}metadata.csv", recursive=True) - else: - csv_files = meta_files - - # meta_files = [f.strip() for f in meta_files.split(",")] - items = [] - for csv_file in csv_files: - if os.path.isfile(csv_file): - txt_file = csv_file - else: - txt_file = os.path.join(root_path, csv_file) - - folder = os.path.dirname(txt_file) - # determine speaker based on folder structure... - speaker_name_match = speaker_regex.search(txt_file) - if speaker_name_match is None: - continue - speaker_name = speaker_name_match.group("speaker_name") - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_name in ignored_speakers: - continue - print(" | > {}".format(csv_file)) - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - if not meta_files: - wav_file = os.path.join(folder, "wavs", cols[0] + ".wav") - else: - wav_file = os.path.join(root_path, folder.replace("metadata.csv", ""), "wavs", cols[0] + ".wav") - if os.path.isfile(wav_file): - text = cols[1].strip() - items.append( - {"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path} - ) - else: - # M-AI-Labs have some missing samples, so just print the warning - print("> File %s does not exist!" % (wav_file)) - return items - - -def ljspeech(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes the LJSpeech meta data file to TTS format - https://keithito.com/LJ-Speech-Dataset/""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "ljspeech" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, "wavs", cols[0] + ".wav") - text = cols[2] - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def ljspeech_test(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes the LJSpeech meta data file for TTS testing - https://keithito.com/LJ-Speech-Dataset/""" - txt_file = os.path.join(root_path, meta_file) - items = [] - with open(txt_file, "r", encoding="utf-8") as ttf: - speaker_id = 0 - for idx, line in enumerate(ttf): - # 2 samples per speaker to avoid eval split issues - if idx % 2 == 0: - speaker_id += 1 - cols = line.split("|") - wav_file = os.path.join(root_path, "wavs", cols[0] + ".wav") - text = cols[2] - items.append( - {"text": text, "audio_file": wav_file, "speaker_name": f"ljspeech-{speaker_id}", "root_path": root_path} - ) - return items - - -def thorsten(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes the thorsten meta data file to TTS format - https://github.com/thorstenMueller/deep-learning-german-tts/""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "thorsten" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, "wavs", cols[0] + ".wav") - text = cols[1] - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def sam_accenture(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes the sam-accenture meta data file to TTS format - https://github.com/Sam-Accenture-Non-Binary-Voice/non-binary-voice-files""" - xml_file = os.path.join(root_path, "voice_over_recordings", meta_file) - xml_root = ET.parse(xml_file).getroot() - items = [] - speaker_name = "sam_accenture" - for item in xml_root.findall("./fileid"): - text = item.text - wav_file = os.path.join(root_path, "vo_voice_quality_transformation", item.get("id") + ".wav") - if not os.path.exists(wav_file): - print(f" [!] {wav_file} in metafile does not exist. Skipping...") - continue - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def ruslan(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes the RUSLAN meta data file to TTS format - https://ruslan-corpus.github.io/""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "ruslan" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, "RUSLAN", cols[0] + ".wav") - text = cols[1] - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def css10(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes the CSS10 dataset file to TTS format""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "css10" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, cols[0]) - text = cols[1] - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name}) - return items - - -def nancy(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Normalizes the Nancy meta data file to TTS format""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "nancy" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - utt_id = line.split()[1] - text = line[line.find('"') + 1 : line.rfind('"') - 1] - wav_file = os.path.join(root_path, "wavn", utt_id + ".wav") - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name}) - return items - - -def common_voice(root_path, meta_file, ignored_speakers=None): - """Normalize the common voice meta data file to TTS format.""" - txt_file = os.path.join(root_path, meta_file) - items = [] - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - if line.startswith("client_id"): - continue - cols = line.split("\t") - text = cols[2] - speaker_name = cols[0] - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_name in ignored_speakers: - continue - wav_file = os.path.join(root_path, "clips", cols[1].replace(".mp3", ".wav")) - items.append( - {"text": text, "audio_file": wav_file, "speaker_name": "MCV_" + speaker_name, "root_path": root_path} - ) - return items - - -def libri_tts(root_path, meta_files=None, ignored_speakers=None): - """https://ai.google/tools/datasets/libri-tts/""" - items = [] - if not meta_files: - meta_files = glob(f"{root_path}/**/*trans.tsv", recursive=True) - else: - if isinstance(meta_files, str): - meta_files = [os.path.join(root_path, meta_files)] - - for meta_file in meta_files: - _meta_file = os.path.basename(meta_file).split(".")[0] - with open(meta_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("\t") - file_name = cols[0] - speaker_name, chapter_id, *_ = cols[0].split("_") - _root_path = os.path.join(root_path, f"{speaker_name}/{chapter_id}") - wav_file = os.path.join(_root_path, file_name + ".wav") - text = cols[2] - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_name in ignored_speakers: - continue - items.append( - { - "text": text, - "audio_file": wav_file, - "speaker_name": f"LTTS_{speaker_name}", - "root_path": root_path, - } - ) - for item in items: - assert os.path.exists(item["audio_file"]), f" [!] wav files don't exist - {item['audio_file']}" - return items - - -def custom_turkish(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "turkish-female" - skipped_files = [] - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, "wavs", cols[0].strip() + ".wav") - if not os.path.exists(wav_file): - skipped_files.append(wav_file) - continue - text = cols[1].strip() - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - print(f" [!] {len(skipped_files)} files skipped. They don't exist...") - return items - - -# ToDo: add the dataset link when the dataset is released publicly -def brspeech(root_path, meta_file, ignored_speakers=None): - """BRSpeech 3.0 beta""" - txt_file = os.path.join(root_path, meta_file) - items = [] - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - if line.startswith("wav_filename"): - continue - cols = line.split("|") - wav_file = os.path.join(root_path, cols[0]) - text = cols[2] - speaker_id = cols[3] - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_id in ignored_speakers: - continue - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_id, "root_path": root_path}) - return items - - -def vctk(root_path, meta_files=None, wavs_path="wav48_silence_trimmed", mic="mic1", ignored_speakers=None): - """VCTK dataset v0.92. - - URL: - https://datashare.ed.ac.uk/bitstream/handle/10283/3443/VCTK-Corpus-0.92.zip - - This dataset has 2 recordings per speaker that are annotated with ```mic1``` and ```mic2```. - It is believed that (😄 ) ```mic1``` files are the same as the previous version of the dataset. - - mic1: - Audio recorded using an omni-directional microphone (DPA 4035). - Contains very low frequency noises. - This is the same audio released in previous versions of VCTK: - https://doi.org/10.7488/ds/1994 - - mic2: - Audio recorded using a small diaphragm condenser microphone with - very wide bandwidth (Sennheiser MKH 800). - Two speakers, p280 and p315 had technical issues of the audio - recordings using MKH 800. - """ - file_ext = "flac" - items = [] - meta_files = glob(f"{os.path.join(root_path,'txt')}/**/*.txt", recursive=True) - for meta_file in meta_files: - _, speaker_id, txt_file = os.path.relpath(meta_file, root_path).split(os.sep) - file_id = txt_file.split(".")[0] - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_id in ignored_speakers: - continue - with open(meta_file, "r", encoding="utf-8") as file_text: - text = file_text.readlines()[0] - # p280 has no mic2 recordings - if speaker_id == "p280": - wav_file = os.path.join(root_path, wavs_path, speaker_id, file_id + f"_mic1.{file_ext}") - else: - wav_file = os.path.join(root_path, wavs_path, speaker_id, file_id + f"_{mic}.{file_ext}") - if os.path.exists(wav_file): - items.append( - {"text": text, "audio_file": wav_file, "speaker_name": "VCTK_" + speaker_id, "root_path": root_path} - ) - else: - print(f" [!] wav files don't exist - {wav_file}") - return items - - -def vctk_old(root_path, meta_files=None, wavs_path="wav48", ignored_speakers=None): - """homepages.inf.ed.ac.uk/jyamagis/release/VCTK-Corpus.tar.gz""" - items = [] - meta_files = glob(f"{os.path.join(root_path,'txt')}/**/*.txt", recursive=True) - for meta_file in meta_files: - _, speaker_id, txt_file = os.path.relpath(meta_file, root_path).split(os.sep) - file_id = txt_file.split(".")[0] - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_id in ignored_speakers: - continue - with open(meta_file, "r", encoding="utf-8") as file_text: - text = file_text.readlines()[0] - wav_file = os.path.join(root_path, wavs_path, speaker_id, file_id + ".wav") - items.append( - {"text": text, "audio_file": wav_file, "speaker_name": "VCTK_old_" + speaker_id, "root_path": root_path} - ) - return items - - -def synpaflex(root_path, metafiles=None, **kwargs): # pylint: disable=unused-argument - items = [] - speaker_name = "synpaflex" - root_path = os.path.join(root_path, "") - wav_files = glob(f"{root_path}**/*.wav", recursive=True) - for wav_file in wav_files: - if os.sep + "wav" + os.sep in wav_file: - txt_file = wav_file.replace("wav", "txt") - else: - txt_file = os.path.join( - os.path.dirname(wav_file), "txt", os.path.basename(wav_file).replace(".wav", ".txt") - ) - if os.path.exists(txt_file) and os.path.exists(wav_file): - with open(txt_file, "r", encoding="utf-8") as file_text: - text = file_text.readlines()[0] - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def open_bible(root_path, meta_files="train", ignore_digits_sentences=True, ignored_speakers=None): - """ToDo: Refer the paper when available""" - items = [] - split_dir = meta_files - meta_files = glob(f"{os.path.join(root_path, split_dir)}/**/*.txt", recursive=True) - for meta_file in meta_files: - _, speaker_id, txt_file = os.path.relpath(meta_file, root_path).split(os.sep) - file_id = txt_file.split(".")[0] - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_id in ignored_speakers: - continue - with open(meta_file, "r", encoding="utf-8") as file_text: - text = file_text.readline().replace("\n", "") - # ignore sentences that contains digits - if ignore_digits_sentences and any(map(str.isdigit, text)): - continue - wav_file = os.path.join(root_path, split_dir, speaker_id, file_id + ".flac") - items.append({"text": text, "audio_file": wav_file, "speaker_name": "OB_" + speaker_id, "root_path": root_path}) - return items - - -def mls(root_path, meta_files=None, ignored_speakers=None): - """http://www.openslr.org/94/""" - items = [] - with open(os.path.join(root_path, meta_files), "r", encoding="utf-8") as meta: - for line in meta: - file, text = line.split("\t") - text = text[:-1] - speaker, book, *_ = file.split("_") - wav_file = os.path.join(root_path, os.path.dirname(meta_files), "audio", speaker, book, file + ".wav") - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker in ignored_speakers: - continue - items.append( - {"text": text, "audio_file": wav_file, "speaker_name": "MLS_" + speaker, "root_path": root_path} - ) - return items - - -# ======================================== VOX CELEB =========================================== -def voxceleb2(root_path, meta_file=None, **kwargs): # pylint: disable=unused-argument - """ - :param meta_file Used only for consistency with load_tts_samples api - """ - return _voxcel_x(root_path, meta_file, voxcel_idx="2") - - -def voxceleb1(root_path, meta_file=None, **kwargs): # pylint: disable=unused-argument - """ - :param meta_file Used only for consistency with load_tts_samples api - """ - return _voxcel_x(root_path, meta_file, voxcel_idx="1") - - -def _voxcel_x(root_path, meta_file, voxcel_idx): - assert voxcel_idx in ["1", "2"] - expected_count = 148_000 if voxcel_idx == "1" else 1_000_000 - voxceleb_path = Path(root_path) - cache_to = voxceleb_path / f"metafile_voxceleb{voxcel_idx}.csv" - cache_to.parent.mkdir(exist_ok=True) - - # if not exists meta file, crawl recursively for 'wav' files - if meta_file is not None: - with open(str(meta_file), "r", encoding="utf-8") as f: - return [x.strip().split("|") for x in f.readlines()] - - elif not cache_to.exists(): - cnt = 0 - meta_data = [] - wav_files = voxceleb_path.rglob("**/*.wav") - for path in tqdm( - wav_files, - desc=f"Building VoxCeleb {voxcel_idx} Meta file ... this needs to be done only once.", - total=expected_count, - ): - speaker_id = str(Path(path).parent.parent.stem) - assert speaker_id.startswith("id") - text = None # VoxCel does not provide transciptions, and they are not needed for training the SE - meta_data.append(f"{text}|{path}|voxcel{voxcel_idx}_{speaker_id}\n") - cnt += 1 - with open(str(cache_to), "w", encoding="utf-8") as f: - f.write("".join(meta_data)) - if cnt < expected_count: - raise ValueError(f"Found too few instances for Voxceleb. Should be around {expected_count}, is: {cnt}") - - with open(str(cache_to), "r", encoding="utf-8") as f: - return [x.strip().split("|") for x in f.readlines()] - - -def emotion(root_path, meta_file, ignored_speakers=None): - """Generic emotion dataset""" - txt_file = os.path.join(root_path, meta_file) - items = [] - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - if line.startswith("file_path"): - continue - cols = line.split(",") - wav_file = os.path.join(root_path, cols[0]) - speaker_id = cols[1] - emotion_id = cols[2].replace("\n", "") - # ignore speakers - if isinstance(ignored_speakers, list): - if speaker_id in ignored_speakers: - continue - items.append( - {"audio_file": wav_file, "speaker_name": speaker_id, "emotion_name": emotion_id, "root_path": root_path} - ) - return items - - -def baker(root_path: str, meta_file: str, **kwargs) -> List[List[str]]: # pylint: disable=unused-argument - """Normalizes the Baker meta data file to TTS format - - Args: - root_path (str): path to the baker dataset - meta_file (str): name of the meta dataset containing names of wav to select and the transcript of the sentence - Returns: - List[List[str]]: List of (text, wav_path, speaker_name) associated with each sentences - """ - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "baker" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - wav_name, text = line.rstrip("\n").split("|") - wav_path = os.path.join(root_path, "clips_22", wav_name) - items.append({"text": text, "audio_file": wav_path, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def kokoro(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Japanese single-speaker dataset from https://github.com/kaiidams/Kokoro-Speech-Dataset""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "kokoro" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, "wavs", cols[0] + ".wav") - text = cols[2].replace(" ", "") - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def kss(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - """Korean single-speaker dataset from https://www.kaggle.com/datasets/bryanpark/korean-single-speaker-speech-dataset""" - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "kss" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, cols[0]) - text = cols[2] # cols[1] => 6월, cols[2] => 유월 - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items - - -def bel_tts_formatter(root_path, meta_file, **kwargs): # pylint: disable=unused-argument - txt_file = os.path.join(root_path, meta_file) - items = [] - speaker_name = "bel_tts" - with open(txt_file, "r", encoding="utf-8") as ttf: - for line in ttf: - cols = line.split("|") - wav_file = os.path.join(root_path, cols[0]) - text = cols[1] - items.append({"text": text, "audio_file": wav_file, "speaker_name": speaker_name, "root_path": root_path}) - return items diff --git a/TTS/tts/layers/__init__.py b/TTS/tts/layers/__init__.py deleted file mode 100644 index f93efdb7fc41109ec3497d8e5e37ba05b0a4315e..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from TTS.tts.layers.losses import * diff --git a/TTS/tts/layers/align_tts/__init__.py b/TTS/tts/layers/align_tts/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/layers/align_tts/duration_predictor.py b/TTS/tts/layers/align_tts/duration_predictor.py deleted file mode 100644 index b2b83894cc3f87575a89ea8fd7bf4a584ca22c28..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/align_tts/duration_predictor.py +++ /dev/null @@ -1,21 +0,0 @@ -from torch import nn - -from TTS.tts.layers.generic.pos_encoding import PositionalEncoding -from TTS.tts.layers.generic.transformer import FFTransformerBlock - - -class DurationPredictor(nn.Module): - def __init__(self, num_chars, hidden_channels, hidden_channels_ffn, num_heads): - super().__init__() - self.embed = nn.Embedding(num_chars, hidden_channels) - self.pos_enc = PositionalEncoding(hidden_channels, dropout_p=0.1) - self.FFT = FFTransformerBlock(hidden_channels, num_heads, hidden_channels_ffn, 2, 0.1) - self.out_layer = nn.Conv1d(hidden_channels, 1, 1) - - def forward(self, text, text_lengths): - # B, L -> B, L - emb = self.embed(text) - emb = self.pos_enc(emb.transpose(1, 2)) - x = self.FFT(emb, text_lengths) - x = self.out_layer(x).squeeze(-1) - return x diff --git a/TTS/tts/layers/align_tts/mdn.py b/TTS/tts/layers/align_tts/mdn.py deleted file mode 100644 index cdb332524bf7a5fec6a23da9e7977de6325a0324..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/align_tts/mdn.py +++ /dev/null @@ -1,30 +0,0 @@ -from torch import nn - - -class MDNBlock(nn.Module): - """Mixture of Density Network implementation - https://arxiv.org/pdf/2003.01950.pdf - """ - - def __init__(self, in_channels, out_channels): - super().__init__() - self.out_channels = out_channels - self.conv1 = nn.Conv1d(in_channels, in_channels, 1) - self.norm = nn.LayerNorm(in_channels) - self.relu = nn.ReLU() - self.dropout = nn.Dropout(0.1) - self.conv2 = nn.Conv1d(in_channels, out_channels, 1) - - def forward(self, x): - o = self.conv1(x) - o = o.transpose(1, 2) - o = self.norm(o) - o = o.transpose(1, 2) - o = self.relu(o) - o = self.dropout(o) - mu_sigma = self.conv2(o) - # TODO: check this sigmoid - # mu = torch.sigmoid(mu_sigma[:, :self.out_channels//2, :]) - mu = mu_sigma[:, : self.out_channels // 2, :] - log_sigma = mu_sigma[:, self.out_channels // 2 :, :] - return mu, log_sigma diff --git a/TTS/tts/layers/bark/__init__.py b/TTS/tts/layers/bark/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/layers/bark/hubert/__init__.py b/TTS/tts/layers/bark/hubert/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/layers/bark/hubert/hubert_manager.py b/TTS/tts/layers/bark/hubert/hubert_manager.py deleted file mode 100644 index 4bc199294164da0e8c480e292dd5a478e72f4daf..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/bark/hubert/hubert_manager.py +++ /dev/null @@ -1,35 +0,0 @@ -# From https://github.com/gitmylo/bark-voice-cloning-HuBERT-quantizer - -import os.path -import shutil -import urllib.request - -import huggingface_hub - - -class HubertManager: - @staticmethod - def make_sure_hubert_installed( - download_url: str = "https://dl.fbaipublicfiles.com/hubert/hubert_base_ls960.pt", model_path: str = "" - ): - if not os.path.isfile(model_path): - print("Downloading HuBERT base model") - urllib.request.urlretrieve(download_url, model_path) - print("Downloaded HuBERT") - return model_path - return None - - @staticmethod - def make_sure_tokenizer_installed( - model: str = "quantifier_hubert_base_ls960_14.pth", - repo: str = "GitMylo/bark-voice-cloning", - model_path: str = "", - ): - model_dir = os.path.dirname(model_path) - if not os.path.isfile(model_path): - print("Downloading HuBERT custom tokenizer") - huggingface_hub.hf_hub_download(repo, model, local_dir=model_dir, local_dir_use_symlinks=False) - shutil.move(os.path.join(model_dir, model), model_path) - print("Downloaded tokenizer") - return model_path - return None diff --git a/TTS/tts/layers/bark/hubert/kmeans_hubert.py b/TTS/tts/layers/bark/hubert/kmeans_hubert.py deleted file mode 100644 index a6a3b9aeb1111ca0abeccb6142007ecc5b39d78d..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/bark/hubert/kmeans_hubert.py +++ /dev/null @@ -1,82 +0,0 @@ -""" -Modified HuBERT model without kmeans. -Original author: https://github.com/lucidrains/ -Modified by: https://www.github.com/gitmylo/ -License: MIT -""" - -# Modified code from https://github.com/lucidrains/audiolm-pytorch/blob/main/audiolm_pytorch/hubert_kmeans.py - -import logging -from pathlib import Path - -import torch -from einops import pack, unpack -from torch import nn -from torchaudio.functional import resample -from transformers import HubertModel - - -def round_down_nearest_multiple(num, divisor): - return num // divisor * divisor - - -def curtail_to_multiple(t, mult, from_left=False): - data_len = t.shape[-1] - rounded_seq_len = round_down_nearest_multiple(data_len, mult) - seq_slice = slice(None, rounded_seq_len) if not from_left else slice(-rounded_seq_len, None) - return t[..., seq_slice] - - -def exists(val): - return val is not None - - -def default(val, d): - return val if exists(val) else d - - -class CustomHubert(nn.Module): - """ - checkpoint and kmeans can be downloaded at https://github.com/facebookresearch/fairseq/tree/main/examples/hubert - or you can train your own - """ - - def __init__(self, checkpoint_path, target_sample_hz=16000, seq_len_multiple_of=None, output_layer=9, device=None): - super().__init__() - self.target_sample_hz = target_sample_hz - self.seq_len_multiple_of = seq_len_multiple_of - self.output_layer = output_layer - if device is not None: - self.to(device) - self.model = HubertModel.from_pretrained("facebook/hubert-base-ls960") - if device is not None: - self.model.to(device) - self.model.eval() - - @property - def groups(self): - return 1 - - @torch.no_grad() - def forward(self, wav_input, flatten=True, input_sample_hz=None): - device = wav_input.device - - if exists(input_sample_hz): - wav_input = resample(wav_input, input_sample_hz, self.target_sample_hz) - - if exists(self.seq_len_multiple_of): - wav_input = curtail_to_multiple(wav_input, self.seq_len_multiple_of) - - outputs = self.model.forward( - wav_input, - output_hidden_states=True, - ) - embed = outputs["hidden_states"][self.output_layer] - embed, packed_shape = pack([embed], "* d") - codebook_indices = torch.from_numpy(embed.cpu().detach().numpy()).to(device) - if flatten: - return codebook_indices - - (codebook_indices,) = unpack(codebook_indices, packed_shape, "*") - return codebook_indices diff --git a/TTS/tts/layers/bark/hubert/tokenizer.py b/TTS/tts/layers/bark/hubert/tokenizer.py deleted file mode 100644 index 3070241f1cc1ac95867f2d4173495b9a7047a15e..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/bark/hubert/tokenizer.py +++ /dev/null @@ -1,195 +0,0 @@ -""" -Custom tokenizer model. -Author: https://www.github.com/gitmylo/ -License: MIT -""" - -import json -import os.path -from zipfile import ZipFile - -import numpy -import torch -from torch import nn, optim - - -class HubertTokenizer(nn.Module): - def __init__(self, hidden_size=1024, input_size=768, output_size=10000, version=0): - super().__init__() - next_size = input_size - if version == 0: - self.lstm = nn.LSTM(input_size, hidden_size, 2, batch_first=True) - next_size = hidden_size - if version == 1: - self.lstm = nn.LSTM(input_size, hidden_size, 2, batch_first=True) - self.intermediate = nn.Linear(hidden_size, 4096) - next_size = 4096 - - self.fc = nn.Linear(next_size, output_size) - self.softmax = nn.LogSoftmax(dim=1) - self.optimizer: optim.Optimizer = None - self.lossfunc = nn.CrossEntropyLoss() - self.input_size = input_size - self.hidden_size = hidden_size - self.output_size = output_size - self.version = version - - def forward(self, x): - x, _ = self.lstm(x) - if self.version == 1: - x = self.intermediate(x) - x = self.fc(x) - x = self.softmax(x) - return x - - @torch.no_grad() - def get_token(self, x): - """ - Used to get the token for the first - :param x: An array with shape (N, input_size) where N is a whole number greater or equal to 1, and input_size is the input size used when creating the model. - :return: An array with shape (N,) where N is the same as N from the input. Every number in the array is a whole number in range 0...output_size - 1 where output_size is the output size used when creating the model. - """ - return torch.argmax(self(x), dim=1) - - def prepare_training(self): - self.optimizer = optim.Adam(self.parameters(), 0.001) - - def train_step(self, x_train, y_train, log_loss=False): - # y_train = y_train[:-1] - # y_train = y_train[1:] - - optimizer = self.optimizer - lossfunc = self.lossfunc - # Zero the gradients - self.zero_grad() - - # Forward pass - y_pred = self(x_train) - - y_train_len = len(y_train) - y_pred_len = y_pred.shape[0] - - if y_train_len > y_pred_len: - diff = y_train_len - y_pred_len - y_train = y_train[diff:] - elif y_train_len < y_pred_len: - diff = y_pred_len - y_train_len - y_pred = y_pred[:-diff, :] - - y_train_hot = torch.zeros(len(y_train), self.output_size) - y_train_hot[range(len(y_train)), y_train] = 1 - y_train_hot = y_train_hot.to("cuda") - - # Calculate the loss - loss = lossfunc(y_pred, y_train_hot) - - # Print loss - if log_loss: - print("Loss", loss.item()) - - # Backward pass - loss.backward() - - # Update the weights - optimizer.step() - - def save(self, path): - info_path = ".".join(os.path.basename(path).split(".")[:-1]) + "/.info" - torch.save(self.state_dict(), path) - data_from_model = Data(self.input_size, self.hidden_size, self.output_size, self.version) - with ZipFile(path, "a") as model_zip: - model_zip.writestr(info_path, data_from_model.save()) - model_zip.close() - - @staticmethod - def load_from_checkpoint(path, map_location=None): - old = True - with ZipFile(path) as model_zip: - filesMatch = [file for file in model_zip.namelist() if file.endswith("/.info")] - file = filesMatch[0] if filesMatch else None - if file: - old = False - data_from_model = Data.load(model_zip.read(file).decode("utf-8")) - model_zip.close() - if old: - model = HubertTokenizer() - else: - model = HubertTokenizer( - data_from_model.hidden_size, - data_from_model.input_size, - data_from_model.output_size, - data_from_model.version, - ) - model.load_state_dict(torch.load(path, map_location=map_location)) - if map_location: - model = model.to(map_location) - return model - - -class Data: - input_size: int - hidden_size: int - output_size: int - version: int - - def __init__(self, input_size=768, hidden_size=1024, output_size=10000, version=0): - self.input_size = input_size - self.hidden_size = hidden_size - self.output_size = output_size - self.version = version - - @staticmethod - def load(string): - data = json.loads(string) - return Data(data["input_size"], data["hidden_size"], data["output_size"], data["version"]) - - def save(self): - data = { - "input_size": self.input_size, - "hidden_size": self.hidden_size, - "output_size": self.output_size, - "version": self.version, - } - return json.dumps(data) - - -def auto_train(data_path, save_path="model.pth", load_model: str = None, save_epochs=1): - data_x, data_y = [], [] - - if load_model and os.path.isfile(load_model): - print("Loading model from", load_model) - model_training = HubertTokenizer.load_from_checkpoint(load_model, "cuda") - else: - print("Creating new model.") - model_training = HubertTokenizer(version=1).to("cuda") # Settings for the model to run without lstm - save_path = os.path.join(data_path, save_path) - base_save_path = ".".join(save_path.split(".")[:-1]) - - sem_string = "_semantic.npy" - feat_string = "_semantic_features.npy" - - ready = os.path.join(data_path, "ready") - for input_file in os.listdir(ready): - full_path = os.path.join(ready, input_file) - if input_file.endswith(sem_string): - data_y.append(numpy.load(full_path)) - elif input_file.endswith(feat_string): - data_x.append(numpy.load(full_path)) - model_training.prepare_training() - - epoch = 1 - - while 1: - for _ in range(save_epochs): - j = 0 - for x, y in zip(data_x, data_y): - model_training.train_step( - torch.tensor(x).to("cuda"), torch.tensor(y).to("cuda"), j % 50 == 0 - ) # Print loss every 50 steps - j += 1 - save_p = save_path - save_p_2 = f"{base_save_path}_epoch_{epoch}.pth" - model_training.save(save_p) - model_training.save(save_p_2) - print(f"Epoch {epoch} completed") - epoch += 1 diff --git a/TTS/tts/layers/bark/inference_funcs.py b/TTS/tts/layers/bark/inference_funcs.py deleted file mode 100644 index f3d3fee9371fae0cd06187c967a5b0028940138e..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/bark/inference_funcs.py +++ /dev/null @@ -1,606 +0,0 @@ -import logging -import os -import re -from glob import glob -from typing import Dict, List - -import librosa -import numpy as np -import torch -import torchaudio -import tqdm -from encodec.utils import convert_audio -from scipy.special import softmax -from torch.nn import functional as F - -from TTS.tts.layers.bark.hubert.hubert_manager import HubertManager -from TTS.tts.layers.bark.hubert.kmeans_hubert import CustomHubert -from TTS.tts.layers.bark.hubert.tokenizer import HubertTokenizer -from TTS.tts.layers.bark.load_model import clear_cuda_cache, inference_mode - -logger = logging.getLogger(__name__) - - -def _tokenize(tokenizer, text): - return tokenizer.encode(text, add_special_tokens=False) - - -def _detokenize(tokenizer, enc_text): - return tokenizer.decode(enc_text) - - -def _normalize_whitespace(text): - return re.sub(r"\s+", " ", text).strip() - - -def get_voices(extra_voice_dirs: List[str] = []): # pylint: disable=dangerous-default-value - dirs = extra_voice_dirs - voices: Dict[str, List[str]] = {} - for d in dirs: - subs = os.listdir(d) - for sub in subs: - subj = os.path.join(d, sub) - if os.path.isdir(subj): - voices[sub] = list(glob(f"{subj}/*.npz")) - # fetch audio files if no npz files are found - if len(voices[sub]) == 0: - voices[sub] = list(glob(f"{subj}/*.wav")) + list(glob(f"{subj}/*.mp3")) - return voices - - -def load_npz(npz_file): - x_history = np.load(npz_file) - semantic = x_history["semantic_prompt"] - coarse = x_history["coarse_prompt"] - fine = x_history["fine_prompt"] - return semantic, coarse, fine - - -def load_voice(model, voice: str, extra_voice_dirs: List[str] = []): # pylint: disable=dangerous-default-value - if voice == "random": - return None, None, None - - voices = get_voices(extra_voice_dirs) - paths = voices[voice] - - # bark only uses a single sample for cloning - if len(paths) > 1: - raise ValueError(f"Voice {voice} has multiple paths: {paths}") - - try: - path = voices[voice] - except KeyError as e: - raise KeyError(f"Voice {voice} not found in {extra_voice_dirs}") from e - - if len(paths) == 1 and paths[0].endswith(".npz"): - return load_npz(path[0]) - - audio_path = paths[0] - # replace the file extension with .npz - output_path = os.path.splitext(audio_path)[0] + ".npz" - generate_voice(audio=audio_path, model=model, output_path=output_path) - return load_voice(model, voice, extra_voice_dirs) - - -def zero_crossing_rate(audio, frame_length=1024, hop_length=512): - zero_crossings = np.sum(np.abs(np.diff(np.sign(audio))) / 2) - total_frames = 1 + int((len(audio) - frame_length) / hop_length) - return zero_crossings / total_frames - - -def compute_spectral_contrast(audio_data, sample_rate, n_bands=6, fmin=200.0): - spectral_contrast = librosa.feature.spectral_contrast(y=audio_data, sr=sample_rate, n_bands=n_bands, fmin=fmin) - return np.mean(spectral_contrast) - - -def compute_average_bass_energy(audio_data, sample_rate, max_bass_freq=250): - stft = librosa.stft(audio_data) - power_spectrogram = np.abs(stft) ** 2 - frequencies = librosa.fft_frequencies(sr=sample_rate, n_fft=stft.shape[0]) - bass_mask = frequencies <= max_bass_freq - bass_energy = power_spectrogram[np.ix_(bass_mask, np.arange(power_spectrogram.shape[1]))].mean() - return bass_energy - - -def generate_voice( - audio, - model, - output_path, -): - """Generate a new voice from a given audio and text prompt. - - Args: - audio (np.ndarray): The audio to use as a base for the new voice. - text (str): Transcription of the audio you are clonning. - model (BarkModel): The BarkModel to use for generating the new voice. - output_path (str): The path to save the generated voice to. - """ - if isinstance(audio, str): - audio, sr = torchaudio.load(audio) - audio = convert_audio(audio, sr, model.config.sample_rate, model.encodec.channels) - audio = audio.unsqueeze(0).to(model.device) - - with torch.no_grad(): - encoded_frames = model.encodec.encode(audio) - codes = torch.cat([encoded[0] for encoded in encoded_frames], dim=-1).squeeze() # [n_q, T] - - # move codes to cpu - codes = codes.cpu().numpy() - - # generate semantic tokens - # Load the HuBERT model - hubert_manager = HubertManager() - # hubert_manager.make_sure_hubert_installed(model_path=model.config.LOCAL_MODEL_PATHS["hubert"]) - hubert_manager.make_sure_tokenizer_installed(model_path=model.config.LOCAL_MODEL_PATHS["hubert_tokenizer"]) - - hubert_model = CustomHubert(checkpoint_path=model.config.LOCAL_MODEL_PATHS["hubert"]).to(model.device) - - # Load the CustomTokenizer model - tokenizer = HubertTokenizer.load_from_checkpoint( - model.config.LOCAL_MODEL_PATHS["hubert_tokenizer"], map_location=model.device - ) - # semantic_tokens = model.text_to_semantic( - # text, max_gen_duration_s=seconds, top_k=50, top_p=0.95, temp=0.7 - # ) # not 100% - semantic_vectors = hubert_model.forward(audio[0], input_sample_hz=model.config.sample_rate) - semantic_tokens = tokenizer.get_token(semantic_vectors) - semantic_tokens = semantic_tokens.cpu().numpy() - - np.savez(output_path, fine_prompt=codes, coarse_prompt=codes[:2, :], semantic_prompt=semantic_tokens) - - -def generate_text_semantic( - text, - model, - history_prompt=None, - temp=0.7, - top_k=None, - top_p=None, - silent=False, - min_eos_p=0.2, - max_gen_duration_s=None, - allow_early_stop=True, - base=None, - use_kv_caching=True, - **kwargs, # pylint: disable=unused-argument -): - """Generate semantic tokens from text. - - Args: - text (str): The text to generate semantic tokens from. - model (BarkModel): The BarkModel to use for generating the semantic tokens. - history_prompt (tuple): A tuple of (semantic_history, coarse_history, fine_history) to use as a prompt for the generation. - temp (float): The temperature to use for the generation. - top_k (int): The number of top tokens to consider for the generation. - top_p (float): The cumulative probability to consider for the generation. - silent (bool): Whether to silence the tqdm progress bar. - min_eos_p (float): The minimum probability to consider for the end of sentence token. - max_gen_duration_s (float): The maximum duration in seconds to generate for. - allow_early_stop (bool): Whether to allow the generation to stop early. - base (tuple): A tuple of (semantic_history, coarse_history, fine_history) to use as a base for the generation. - use_kv_caching (bool): Whether to use key-value caching for the generation. - **kwargs: Additional keyword arguments. They are ignored. - - Returns: - np.ndarray: The generated semantic tokens. - """ - assert isinstance(text, str) - text = _normalize_whitespace(text) - assert len(text.strip()) > 0 - if all(v is not None for v in history_prompt) or base is not None: - if history_prompt is not None: - semantic_history = history_prompt[0] - if base is not None: - semantic_history = base[0] - assert ( - isinstance(semantic_history, np.ndarray) - and len(semantic_history.shape) == 1 - and len(semantic_history) > 0 - and semantic_history.min() >= 0 - and semantic_history.max() <= model.config.SEMANTIC_VOCAB_SIZE - 1 - ) - else: - semantic_history = None - encoded_text = np.array(_tokenize(model.tokenizer, text)) + model.config.TEXT_ENCODING_OFFSET - if len(encoded_text) > 256: - p = round((len(encoded_text) - 256) / len(encoded_text) * 100, 1) - logger.warning(f"warning, text too long, lopping of last {p}%") - encoded_text = encoded_text[:256] - encoded_text = np.pad( - encoded_text, - (0, 256 - len(encoded_text)), - constant_values=model.config.TEXT_PAD_TOKEN, - mode="constant", - ) - if semantic_history is not None: - semantic_history = semantic_history.astype(np.int64) - # lop off if history is too long, pad if needed - semantic_history = semantic_history[-256:] - semantic_history = np.pad( - semantic_history, - (0, 256 - len(semantic_history)), - constant_values=model.config.SEMANTIC_PAD_TOKEN, - mode="constant", - ) - else: - semantic_history = np.array([model.config.SEMANTIC_PAD_TOKEN] * 256) - x = torch.from_numpy( - np.hstack([encoded_text, semantic_history, np.array([model.config.SEMANTIC_INFER_TOKEN])]).astype(np.int64) - )[None] - assert x.shape[1] == 256 + 256 + 1 - with inference_mode(): - x = x.to(model.device) - n_tot_steps = 768 - # custom tqdm updates since we don't know when eos will occur - pbar = tqdm.tqdm(disable=silent, total=100) - pbar_state = 0 - tot_generated_duration_s = 0 - kv_cache = None - for n in range(n_tot_steps): - if use_kv_caching and kv_cache is not None: - x_input = x[:, [-1]] - else: - x_input = x - logits, kv_cache = model.semantic_model( - x_input, merge_context=True, use_cache=use_kv_caching, past_kv=kv_cache - ) - relevant_logits = logits[0, 0, : model.config.SEMANTIC_VOCAB_SIZE] - if allow_early_stop: - relevant_logits = torch.hstack( - (relevant_logits, logits[0, 0, [model.config.SEMANTIC_PAD_TOKEN]]) - ) # eos - if top_p is not None: - # faster to convert to numpy - logits_device = relevant_logits.device - logits_dtype = relevant_logits.type() - relevant_logits = relevant_logits.detach().cpu().type(torch.float32).numpy() - sorted_indices = np.argsort(relevant_logits)[::-1] - sorted_logits = relevant_logits[sorted_indices] - cumulative_probs = np.cumsum(softmax(sorted_logits)) - sorted_indices_to_remove = cumulative_probs > top_p - sorted_indices_to_remove[1:] = sorted_indices_to_remove[:-1].copy() - sorted_indices_to_remove[0] = False - relevant_logits[sorted_indices[sorted_indices_to_remove]] = -np.inf - relevant_logits = torch.from_numpy(relevant_logits) - relevant_logits = relevant_logits.to(logits_device).type(logits_dtype) - if top_k is not None: - v, _ = torch.topk(relevant_logits, min(top_k, relevant_logits.size(-1))) - relevant_logits[relevant_logits < v[-1]] = -float("Inf") - probs = torch.softmax(relevant_logits / temp, dim=-1) - item_next = torch.multinomial(probs, num_samples=1) - if allow_early_stop and ( - item_next == model.config.SEMANTIC_VOCAB_SIZE or (min_eos_p is not None and probs[-1] >= min_eos_p) - ): - # eos found, so break - pbar.update(100 - pbar_state) - break - x = torch.cat((x, item_next[None]), dim=1) - tot_generated_duration_s += 1 / model.config.SEMANTIC_RATE_HZ - if max_gen_duration_s is not None and tot_generated_duration_s > max_gen_duration_s: - pbar.update(100 - pbar_state) - break - if n == n_tot_steps - 1: - pbar.update(100 - pbar_state) - break - del logits, relevant_logits, probs, item_next - req_pbar_state = np.min([100, int(round(100 * n / n_tot_steps))]) - if req_pbar_state > pbar_state: - pbar.update(req_pbar_state - pbar_state) - pbar_state = req_pbar_state - pbar.close() - out = x.detach().cpu().numpy().squeeze()[256 + 256 + 1 :] - assert all(out >= 0) and all(out < model.config.SEMANTIC_VOCAB_SIZE) - clear_cuda_cache() - return out - - -def _flatten_codebooks(arr, offset_size): - assert len(arr.shape) == 2 - arr = arr.copy() - if offset_size is not None: - for n in range(1, arr.shape[0]): - arr[n, :] += offset_size * n - flat_arr = arr.ravel("F") - return flat_arr - - -def generate_coarse( - x_semantic, - model, - history_prompt=None, - temp=0.7, - top_k=None, - top_p=None, - silent=False, - max_coarse_history=630, # min 60 (faster), max 630 (more context) - sliding_window_len=60, - base=None, - use_kv_caching=True, -): - """Generate coarse audio codes from semantic tokens. - - Args: - x_semantic (np.ndarray): The semantic tokens to generate coarse audio codes from. - model (BarkModel): The BarkModel to use for generating the coarse audio codes. - history_prompt (tuple): A tuple of (semantic_history, coarse_history, fine_history) to use as a prompt for the generation. - temp (float): The temperature to use for the generation. - top_k (int): The number of top tokens to consider for the generation. - top_p (float): The cumulative probability to consider for the generation. - silent (bool): Whether to silence the tqdm progress bar. - max_coarse_history (int): The maximum number of coarse audio codes to use as history. - sliding_window_len (int): The length of the sliding window to use for the generation. - base (tuple): A tuple of (semantic_history, coarse_history, fine_history) to use as a base for the generation. - use_kv_caching (bool): Whether to use key-value caching for the generation. - - Returns: - np.ndarray: The generated coarse audio codes. - """ - assert ( - isinstance(x_semantic, np.ndarray) - and len(x_semantic.shape) == 1 - and len(x_semantic) > 0 - and x_semantic.min() >= 0 - and x_semantic.max() <= model.config.SEMANTIC_VOCAB_SIZE - 1 - ) - assert 60 <= max_coarse_history <= 630 - assert max_coarse_history + sliding_window_len <= 1024 - 256 - semantic_to_coarse_ratio = ( - model.config.COARSE_RATE_HZ / model.config.SEMANTIC_RATE_HZ * model.config.N_COARSE_CODEBOOKS - ) - max_semantic_history = int(np.floor(max_coarse_history / semantic_to_coarse_ratio)) - if all(v is not None for v in history_prompt) or base is not None: - if history_prompt is not None: - x_history = history_prompt - x_semantic_history = x_history[0] - x_coarse_history = x_history[1] - if base is not None: - x_semantic_history = base[0] - x_coarse_history = base[1] - assert ( - isinstance(x_semantic_history, np.ndarray) - and len(x_semantic_history.shape) == 1 - and len(x_semantic_history) > 0 - and x_semantic_history.min() >= 0 - and x_semantic_history.max() <= model.config.SEMANTIC_VOCAB_SIZE - 1 - and isinstance(x_coarse_history, np.ndarray) - and len(x_coarse_history.shape) == 2 - and x_coarse_history.shape[0] == model.config.N_COARSE_CODEBOOKS - and x_coarse_history.shape[-1] >= 0 - and x_coarse_history.min() >= 0 - and x_coarse_history.max() <= model.config.CODEBOOK_SIZE - 1 - and ( - round(x_coarse_history.shape[-1] / len(x_semantic_history), 1) - == round(semantic_to_coarse_ratio / model.config.N_COARSE_CODEBOOKS, 1) - ) - ) - x_coarse_history = ( - _flatten_codebooks(x_coarse_history, model.config.CODEBOOK_SIZE) + model.config.SEMANTIC_VOCAB_SIZE - ) - # trim histories correctly - n_semantic_hist_provided = np.min( - [ - max_semantic_history, - len(x_semantic_history) - len(x_semantic_history) % 2, - int(np.floor(len(x_coarse_history) / semantic_to_coarse_ratio)), - ] - ) - n_coarse_hist_provided = int(round(n_semantic_hist_provided * semantic_to_coarse_ratio)) - x_semantic_history = x_semantic_history[-n_semantic_hist_provided:].astype(np.int32) - x_coarse_history = x_coarse_history[-n_coarse_hist_provided:].astype(np.int32) - # TODO: bit of a hack for time alignment (sounds better) - x_coarse_history = x_coarse_history[:-2] - else: - x_semantic_history = np.array([], dtype=np.int32) - x_coarse_history = np.array([], dtype=np.int32) - # start loop - n_steps = int( - round( - np.floor(len(x_semantic) * semantic_to_coarse_ratio / model.config.N_COARSE_CODEBOOKS) - * model.config.N_COARSE_CODEBOOKS - ) - ) - assert n_steps > 0 and n_steps % model.config.N_COARSE_CODEBOOKS == 0 - x_semantic = np.hstack([x_semantic_history, x_semantic]).astype(np.int32) - x_coarse = x_coarse_history.astype(np.int32) - base_semantic_idx = len(x_semantic_history) - with inference_mode(): - x_semantic_in = torch.from_numpy(x_semantic)[None].to(model.device) - x_coarse_in = torch.from_numpy(x_coarse)[None].to(model.device) - n_window_steps = int(np.ceil(n_steps / sliding_window_len)) - n_step = 0 - for _ in tqdm.tqdm(range(n_window_steps), total=n_window_steps, disable=silent): - semantic_idx = base_semantic_idx + int(round(n_step / semantic_to_coarse_ratio)) - # pad from right side - x_in = x_semantic_in[:, np.max([0, semantic_idx - max_semantic_history]) :] - x_in = x_in[:, :256] - x_in = F.pad( - x_in, - (0, 256 - x_in.shape[-1]), - "constant", - model.config.COARSE_SEMANTIC_PAD_TOKEN, - ) - x_in = torch.hstack( - [ - x_in, - torch.tensor([model.config.COARSE_INFER_TOKEN])[None].to(model.device), - x_coarse_in[:, -max_coarse_history:], - ] - ) - kv_cache = None - for _ in range(sliding_window_len): - if n_step >= n_steps: - continue - is_major_step = n_step % model.config.N_COARSE_CODEBOOKS == 0 - - if use_kv_caching and kv_cache is not None: - x_input = x_in[:, [-1]] - else: - x_input = x_in - - logits, kv_cache = model.coarse_model(x_input, use_cache=use_kv_caching, past_kv=kv_cache) - logit_start_idx = ( - model.config.SEMANTIC_VOCAB_SIZE + (1 - int(is_major_step)) * model.config.CODEBOOK_SIZE - ) - logit_end_idx = model.config.SEMANTIC_VOCAB_SIZE + (2 - int(is_major_step)) * model.config.CODEBOOK_SIZE - relevant_logits = logits[0, 0, logit_start_idx:logit_end_idx] - if top_p is not None: - # faster to convert to numpy - logits_device = relevant_logits.device - logits_dtype = relevant_logits.type() - relevant_logits = relevant_logits.detach().cpu().type(torch.float32).numpy() - sorted_indices = np.argsort(relevant_logits)[::-1] - sorted_logits = relevant_logits[sorted_indices] - cumulative_probs = np.cumsum(torch.nn.functional.softmax(sorted_logits)) - sorted_indices_to_remove = cumulative_probs > top_p - sorted_indices_to_remove[1:] = sorted_indices_to_remove[:-1].copy() - sorted_indices_to_remove[0] = False - relevant_logits[sorted_indices[sorted_indices_to_remove]] = -np.inf - relevant_logits = torch.from_numpy(relevant_logits) - relevant_logits = relevant_logits.to(logits_device).type(logits_dtype) - if top_k is not None: - v, _ = torch.topk(relevant_logits, min(top_k, relevant_logits.size(-1))) - relevant_logits[relevant_logits < v[-1]] = -float("Inf") - probs = torch.nn.functional.softmax(relevant_logits / temp, dim=-1) - item_next = torch.multinomial(probs, num_samples=1) - item_next += logit_start_idx - x_coarse_in = torch.cat((x_coarse_in, item_next[None]), dim=1) - x_in = torch.cat((x_in, item_next[None]), dim=1) - del logits, relevant_logits, probs, item_next - n_step += 1 - del x_in - del x_semantic_in - gen_coarse_arr = x_coarse_in.detach().cpu().numpy().squeeze()[len(x_coarse_history) :] - del x_coarse_in - assert len(gen_coarse_arr) == n_steps - gen_coarse_audio_arr = ( - gen_coarse_arr.reshape(-1, model.config.N_COARSE_CODEBOOKS).T - model.config.SEMANTIC_VOCAB_SIZE - ) - for n in range(1, model.config.N_COARSE_CODEBOOKS): - gen_coarse_audio_arr[n, :] -= n * model.config.CODEBOOK_SIZE - clear_cuda_cache() - return gen_coarse_audio_arr - - -def generate_fine( - x_coarse_gen, - model, - history_prompt=None, - temp=0.5, - silent=True, - base=None, -): - """Generate full audio codes from coarse audio codes. - - Args: - x_coarse_gen (np.ndarray): The coarse audio codes to generate full audio codes from. - model (BarkModel): The BarkModel to use for generating the full audio codes. - history_prompt (tuple): A tuple of (semantic_history, coarse_history, fine_history) to use as a prompt for the generation. - temp (float): The temperature to use for the generation. - silent (bool): Whether to silence the tqdm progress bar. - base (tuple): A tuple of (semantic_history, coarse_history, fine_history) to use as a base for the generation. - - Returns: - np.ndarray: The generated full audio codes. - """ - assert ( - isinstance(x_coarse_gen, np.ndarray) - and len(x_coarse_gen.shape) == 2 - and 1 <= x_coarse_gen.shape[0] <= model.config.N_FINE_CODEBOOKS - 1 - and x_coarse_gen.shape[1] > 0 - and x_coarse_gen.min() >= 0 - and x_coarse_gen.max() <= model.config.CODEBOOK_SIZE - 1 - ) - if all(v is not None for v in history_prompt) or base is not None: - if history_prompt is not None: - x_fine_history = history_prompt[2] - if base is not None: - x_fine_history = base[2] - assert ( - isinstance(x_fine_history, np.ndarray) - and len(x_fine_history.shape) == 2 - and x_fine_history.shape[0] == model.config.N_FINE_CODEBOOKS - and x_fine_history.shape[1] >= 0 - and x_fine_history.min() >= 0 - and x_fine_history.max() <= model.config.CODEBOOK_SIZE - 1 - ) - else: - x_fine_history = None - n_coarse = x_coarse_gen.shape[0] - # make input arr - in_arr = np.vstack( - [ - x_coarse_gen, - np.zeros((model.config.N_FINE_CODEBOOKS - n_coarse, x_coarse_gen.shape[1])) - + model.config.CODEBOOK_SIZE, # padding - ] - ).astype(np.int32) - # prepend history if available (max 512) - if x_fine_history is not None: - x_fine_history = x_fine_history.astype(np.int32) - in_arr = np.hstack( - [ - x_fine_history[:, -512:].astype(np.int32), - in_arr, - ] - ) - n_history = x_fine_history[:, -512:].shape[1] - else: - n_history = 0 - n_remove_from_end = 0 - # need to pad if too short (since non-causal model) - if in_arr.shape[1] < 1024: - n_remove_from_end = 1024 - in_arr.shape[1] - in_arr = np.hstack( - [ - in_arr, - np.zeros((model.config.N_FINE_CODEBOOKS, n_remove_from_end), dtype=np.int32) - + model.config.CODEBOOK_SIZE, - ] - ) - # we can be lazy about fractional loop and just keep overwriting codebooks - n_loops = np.max([0, int(np.ceil((x_coarse_gen.shape[1] - (1024 - n_history)) / 512))]) + 1 - with inference_mode(): - in_arr = torch.tensor(in_arr.T).to(model.device) - for n in tqdm.tqdm(range(n_loops), disable=silent): - start_idx = np.min([n * 512, in_arr.shape[0] - 1024]) - start_fill_idx = np.min([n_history + n * 512, in_arr.shape[0] - 512]) - rel_start_fill_idx = start_fill_idx - start_idx - in_buffer = in_arr[start_idx : start_idx + 1024, :][None] - for nn in range(n_coarse, model.config.N_FINE_CODEBOOKS): - logits = model.fine_model(nn, in_buffer) - if temp is None: - relevant_logits = logits[0, rel_start_fill_idx:, : model.config.CODEBOOK_SIZE] - codebook_preds = torch.argmax(relevant_logits, -1) - else: - relevant_logits = logits[0, :, : model.config.CODEBOOK_SIZE] / temp - probs = F.softmax(relevant_logits, dim=-1) - codebook_preds = torch.hstack( - [torch.multinomial(probs[n], num_samples=1) for n in range(rel_start_fill_idx, 1024)] - ) - in_buffer[0, rel_start_fill_idx:, nn] = codebook_preds - del logits, codebook_preds - # transfer over info into model_in and convert to numpy - for nn in range(n_coarse, model.config.N_FINE_CODEBOOKS): - in_arr[start_fill_idx : start_fill_idx + (1024 - rel_start_fill_idx), nn] = in_buffer[ - 0, rel_start_fill_idx:, nn - ] - del in_buffer - gen_fine_arr = in_arr.detach().cpu().numpy().squeeze().T - del in_arr - gen_fine_arr = gen_fine_arr[:, n_history:] - if n_remove_from_end > 0: - gen_fine_arr = gen_fine_arr[:, :-n_remove_from_end] - assert gen_fine_arr.shape[-1] == x_coarse_gen.shape[-1] - clear_cuda_cache() - return gen_fine_arr - - -def codec_decode(fine_tokens, model): - """Turn quantized audio codes into audio array using encodec.""" - arr = torch.from_numpy(fine_tokens)[None] - arr = arr.to(model.device) - arr = arr.transpose(0, 1) - emb = model.encodec.quantizer.decode(arr) - out = model.encodec.decoder(emb) - audio_arr = out.detach().cpu().numpy().squeeze() - return audio_arr diff --git a/TTS/tts/layers/bark/load_model.py b/TTS/tts/layers/bark/load_model.py deleted file mode 100644 index ce6b757f054ce98b91601b494854ef8e7b56b131..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/bark/load_model.py +++ /dev/null @@ -1,160 +0,0 @@ -import contextlib -import functools -import hashlib -import logging -import os - -import requests -import torch -import tqdm - -from TTS.tts.layers.bark.model import GPT, GPTConfig -from TTS.tts.layers.bark.model_fine import FineGPT, FineGPTConfig - -if ( - torch.cuda.is_available() - and hasattr(torch.cuda, "amp") - and hasattr(torch.cuda.amp, "autocast") - and torch.cuda.is_bf16_supported() -): - autocast = functools.partial(torch.cuda.amp.autocast, dtype=torch.bfloat16) -else: - - @contextlib.contextmanager - def autocast(): - yield - - -# hold models in global scope to lazy load - -logger = logging.getLogger(__name__) - - -if not hasattr(torch.nn.functional, "scaled_dot_product_attention"): - logger.warning( - "torch version does not support flash attention. You will get significantly faster" - + " inference speed by upgrade torch to newest version / nightly." - ) - - -def _md5(fname): - hash_md5 = hashlib.md5() - with open(fname, "rb") as f: - for chunk in iter(lambda: f.read(4096), b""): - hash_md5.update(chunk) - return hash_md5.hexdigest() - - -def _download(from_s3_path, to_local_path, CACHE_DIR): - os.makedirs(CACHE_DIR, exist_ok=True) - response = requests.get(from_s3_path, stream=True) - total_size_in_bytes = int(response.headers.get("content-length", 0)) - block_size = 1024 # 1 Kibibyte - progress_bar = tqdm.tqdm(total=total_size_in_bytes, unit="iB", unit_scale=True) - with open(to_local_path, "wb") as file: - for data in response.iter_content(block_size): - progress_bar.update(len(data)) - file.write(data) - progress_bar.close() - if total_size_in_bytes not in [0, progress_bar.n]: - raise ValueError("ERROR, something went wrong") - - -class InferenceContext: - def __init__(self, benchmark=False): - # we can't expect inputs to be the same length, so disable benchmarking by default - self._chosen_cudnn_benchmark = benchmark - self._cudnn_benchmark = None - - def __enter__(self): - self._cudnn_benchmark = torch.backends.cudnn.benchmark - torch.backends.cudnn.benchmark = self._chosen_cudnn_benchmark - - def __exit__(self, exc_type, exc_value, exc_traceback): - torch.backends.cudnn.benchmark = self._cudnn_benchmark - - -if torch.cuda.is_available(): - torch.backends.cuda.matmul.allow_tf32 = True - torch.backends.cudnn.allow_tf32 = True - - -@contextlib.contextmanager -def inference_mode(): - with InferenceContext(), torch.inference_mode(), torch.no_grad(), autocast(): - yield - - -def clear_cuda_cache(): - if torch.cuda.is_available(): - torch.cuda.empty_cache() - torch.cuda.synchronize() - - -def load_model(ckpt_path, device, config, model_type="text"): - logger.info(f"loading {model_type} model from {ckpt_path}...") - - if device == "cpu": - logger.warning("No GPU being used. Careful, Inference might be extremely slow!") - if model_type == "text": - ConfigClass = GPTConfig - ModelClass = GPT - elif model_type == "coarse": - ConfigClass = GPTConfig - ModelClass = GPT - elif model_type == "fine": - ConfigClass = FineGPTConfig - ModelClass = FineGPT - else: - raise NotImplementedError() - if ( - not config.USE_SMALLER_MODELS - and os.path.exists(ckpt_path) - and _md5(ckpt_path) != config.REMOTE_MODEL_PATHS[model_type]["checksum"] - ): - logger.warning(f"found outdated {model_type} model, removing...") - os.remove(ckpt_path) - if not os.path.exists(ckpt_path): - logger.info(f"{model_type} model not found, downloading...") - _download(config.REMOTE_MODEL_PATHS[model_type]["path"], ckpt_path, config.CACHE_DIR) - - checkpoint = torch.load(ckpt_path, map_location=device) - # this is a hack - model_args = checkpoint["model_args"] - if "input_vocab_size" not in model_args: - model_args["input_vocab_size"] = model_args["vocab_size"] - model_args["output_vocab_size"] = model_args["vocab_size"] - del model_args["vocab_size"] - - gptconf = ConfigClass(**checkpoint["model_args"]) - if model_type == "text": - config.semantic_config = gptconf - elif model_type == "coarse": - config.coarse_config = gptconf - elif model_type == "fine": - config.fine_config = gptconf - - model = ModelClass(gptconf) - state_dict = checkpoint["model"] - # fixup checkpoint - unwanted_prefix = "_orig_mod." - for k, _ in list(state_dict.items()): - if k.startswith(unwanted_prefix): - state_dict[k[len(unwanted_prefix) :]] = state_dict.pop(k) - extra_keys = set(state_dict.keys()) - set(model.state_dict().keys()) - extra_keys = set(k for k in extra_keys if not k.endswith(".attn.bias")) - missing_keys = set(model.state_dict().keys()) - set(state_dict.keys()) - missing_keys = set(k for k in missing_keys if not k.endswith(".attn.bias")) - if len(extra_keys) != 0: - raise ValueError(f"extra keys found: {extra_keys}") - if len(missing_keys) != 0: - raise ValueError(f"missing keys: {missing_keys}") - model.load_state_dict(state_dict, strict=False) - n_params = model.get_num_params() - val_loss = checkpoint["best_val_loss"].item() - logger.info(f"model loaded: {round(n_params/1e6,1)}M params, {round(val_loss,3)} loss") - model.eval() - model.to(device) - del checkpoint, state_dict - clear_cuda_cache() - return model, config diff --git a/TTS/tts/layers/bark/model.py b/TTS/tts/layers/bark/model.py deleted file mode 100644 index c84022bd08bcdd2f3f9f3caadfc15a7bf80ddaf3..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/bark/model.py +++ /dev/null @@ -1,233 +0,0 @@ -""" -Much of this code is adapted from Andrej Karpathy's NanoGPT -(https://github.com/karpathy/nanoGPT) -""" -import math -from dataclasses import dataclass - -import torch -from coqpit import Coqpit -from torch import nn -from torch.nn import functional as F - - -class LayerNorm(nn.Module): - """LayerNorm but with an optional bias. PyTorch doesn't support simply bias=False""" - - def __init__(self, ndim, bias): - super().__init__() - self.weight = nn.Parameter(torch.ones(ndim)) - self.bias = nn.Parameter(torch.zeros(ndim)) if bias else None - - def forward(self, x): - return F.layer_norm(x, self.weight.shape, self.weight, self.bias, 1e-5) - - -class CausalSelfAttention(nn.Module): - def __init__(self, config): - super().__init__() - assert config.n_embd % config.n_head == 0 - # key, query, value projections for all heads, but in a batch - self.c_attn = nn.Linear(config.n_embd, 3 * config.n_embd, bias=config.bias) - # output projection - self.c_proj = nn.Linear(config.n_embd, config.n_embd, bias=config.bias) - # regularization - self.attn_dropout = nn.Dropout(config.dropout) - self.resid_dropout = nn.Dropout(config.dropout) - self.n_head = config.n_head - self.n_embd = config.n_embd - self.dropout = config.dropout - # flash attention make GPU go brrrrr but support is only in PyTorch nightly and still a bit scary - self.flash = hasattr(torch.nn.functional, "scaled_dot_product_attention") - if not self.flash: - # print("WARNING: using slow attention. Flash Attention atm needs PyTorch nightly and dropout=0.0") - # causal mask to ensure that attention is only applied to the left in the input sequence - self.register_buffer( - "bias", - torch.tril(torch.ones(config.block_size, config.block_size)).view( - 1, 1, config.block_size, config.block_size - ), - ) - - def forward(self, x, past_kv=None, use_cache=False): - B, T, C = x.size() # batch size, sequence length, embedding dimensionality (n_embd) - - # calculate query, key, values for all heads in batch and move head forward to be the batch dim - q, k, v = self.c_attn(x).split(self.n_embd, dim=2) - k = k.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs) - q = q.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs) - v = v.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs) - - if past_kv is not None: - past_key = past_kv[0] - past_value = past_kv[1] - k = torch.cat((past_key, k), dim=-2) - v = torch.cat((past_value, v), dim=-2) - - FULL_T = k.shape[-2] - - if use_cache is True: - present = (k, v) - else: - present = None - - # causal self-attention; Self-attend: (B, nh, T, hs) x (B, nh, hs, T) -> (B, nh, T, T) - if self.flash: - # efficient attention using Flash Attention CUDA kernels - if past_kv is not None: - # When `past_kv` is provided, we're doing incremental decoding and `q.shape[2] == 1`: q only contains - # the query for the last token. scaled_dot_product_attention interprets this as the first token in the - # sequence, so if is_causal=True it will mask out all attention from it. This is not what we want, so - # to work around this we set is_causal=False. - is_causal = False - else: - is_causal = True - - # efficient attention using Flash Attention CUDA kernels - y = torch.nn.functional.scaled_dot_product_attention(q, k, v, dropout_p=self.dropout, is_causal=is_causal) - else: - # manual implementation of attention - att = (q @ k.transpose(-2, -1)) * (1.0 / math.sqrt(k.size(-1))) - att = att.masked_fill(self.bias[:, :, FULL_T - T : FULL_T, :FULL_T] == 0, float("-inf")) - att = F.softmax(att, dim=-1) - att = self.attn_dropout(att) - y = att @ v # (B, nh, T, T) x (B, nh, T, hs) -> (B, nh, T, hs) - y = y.transpose(1, 2).contiguous().view(B, T, C) # re-assemble all head outputs side by side - - # output projection - y = self.resid_dropout(self.c_proj(y)) - return (y, present) - - -class MLP(nn.Module): - def __init__(self, config): - super().__init__() - self.c_fc = nn.Linear(config.n_embd, 4 * config.n_embd, bias=config.bias) - self.c_proj = nn.Linear(4 * config.n_embd, config.n_embd, bias=config.bias) - self.dropout = nn.Dropout(config.dropout) - self.gelu = nn.GELU() - - def forward(self, x): - x = self.c_fc(x) - x = self.gelu(x) - x = self.c_proj(x) - x = self.dropout(x) - return x - - -class Block(nn.Module): - def __init__(self, config, layer_idx): - super().__init__() - self.ln_1 = LayerNorm(config.n_embd, bias=config.bias) - self.attn = CausalSelfAttention(config) - self.ln_2 = LayerNorm(config.n_embd, bias=config.bias) - self.mlp = MLP(config) - self.layer_idx = layer_idx - - def forward(self, x, past_kv=None, use_cache=False): - attn_output, prev_kvs = self.attn(self.ln_1(x), past_kv=past_kv, use_cache=use_cache) - x = x + attn_output - x = x + self.mlp(self.ln_2(x)) - return (x, prev_kvs) - - -@dataclass -class GPTConfig(Coqpit): - block_size: int = 1024 - input_vocab_size: int = 10_048 - output_vocab_size: int = 10_048 - n_layer: int = 12 - n_head: int = 12 - n_embd: int = 768 - dropout: float = 0.0 - bias: bool = True # True: bias in Linears and LayerNorms, like GPT-2. False: a bit better and faster - - -class GPT(nn.Module): - def __init__(self, config): - super().__init__() - assert config.input_vocab_size is not None - assert config.output_vocab_size is not None - assert config.block_size is not None - self.config = config - - self.transformer = nn.ModuleDict( - dict( - wte=nn.Embedding(config.input_vocab_size, config.n_embd), - wpe=nn.Embedding(config.block_size, config.n_embd), - drop=nn.Dropout(config.dropout), - h=nn.ModuleList([Block(config, idx) for idx in range(config.n_layer)]), - ln_f=LayerNorm(config.n_embd, bias=config.bias), - ) - ) - self.lm_head = nn.Linear(config.n_embd, config.output_vocab_size, bias=False) - - def get_num_params(self, non_embedding=True): - """ - Return the number of parameters in the model. - For non-embedding count (default), the position embeddings get subtracted. - The token embeddings would too, except due to the parameter sharing these - params are actually used as weights in the final layer, so we include them. - """ - n_params = sum(p.numel() for p in self.parameters()) - if non_embedding: - n_params -= self.transformer.wte.weight.numel() - n_params -= self.transformer.wpe.weight.numel() - return n_params - - def forward(self, idx, merge_context=False, past_kv=None, position_ids=None, use_cache=False): - device = idx.device - _, t = idx.size() - if past_kv is not None: - assert t == 1 - tok_emb = self.transformer.wte(idx) # token embeddings of shape (b, t, n_embd) - else: - if merge_context: - assert idx.shape[1] >= 256 + 256 + 1 - t = idx.shape[1] - 256 - else: - assert ( - t <= self.config.block_size - ), f"Cannot forward sequence of length {t}, block size is only {self.config.block_size}" - - # forward the GPT model itself - if merge_context: - tok_emb = torch.cat( - [ - self.transformer.wte(idx[:, :256]) + self.transformer.wte(idx[:, 256 : 256 + 256]), - self.transformer.wte(idx[:, 256 + 256 :]), - ], - dim=1, - ) - else: - tok_emb = self.transformer.wte(idx) # token embeddings of shape (b, t, n_embd) - - if past_kv is None: - past_length = 0 - past_kv = tuple([None] * len(self.transformer.h)) - else: - past_length = past_kv[0][0].size(-2) - - if position_ids is None: - position_ids = torch.arange(past_length, t + past_length, dtype=torch.long, device=device) - position_ids = position_ids.unsqueeze(0) # shape (1, t) - assert position_ids.shape == (1, t) - - pos_emb = self.transformer.wpe(position_ids) # position embeddings of shape (1, t, n_embd) - - x = self.transformer.drop(tok_emb + pos_emb) - - new_kv = () if use_cache else None - - for _, (block, past_layer_kv) in enumerate(zip(self.transformer.h, past_kv)): - x, kv = block(x, past_kv=past_layer_kv, use_cache=use_cache) - - if use_cache: - new_kv = new_kv + (kv,) - - x = self.transformer.ln_f(x) - - # inference-time mini-optimization: only forward the lm_head on the very last position - logits = self.lm_head(x[:, [-1], :]) # note: using list [-1] to preserve the time dim - - return (logits, new_kv) diff --git a/TTS/tts/layers/bark/model_fine.py b/TTS/tts/layers/bark/model_fine.py deleted file mode 100644 index 09e5f4765dce8743db2a3ed879e7811d2b9d23d6..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/bark/model_fine.py +++ /dev/null @@ -1,142 +0,0 @@ -""" -Much of this code is adapted from Andrej Karpathy's NanoGPT -(https://github.com/karpathy/nanoGPT) -""" -import math -from dataclasses import dataclass - -import torch -from torch import nn -from torch.nn import functional as F - -from .model import GPT, MLP, GPTConfig - - -class NonCausalSelfAttention(nn.Module): - def __init__(self, config): - super().__init__() - assert config.n_embd % config.n_head == 0 - # key, query, value projections for all heads, but in a batch - self.c_attn = nn.Linear(config.n_embd, 3 * config.n_embd, bias=config.bias) - # output projection - self.c_proj = nn.Linear(config.n_embd, config.n_embd, bias=config.bias) - # regularization - self.attn_dropout = nn.Dropout(config.dropout) - self.resid_dropout = nn.Dropout(config.dropout) - self.n_head = config.n_head - self.n_embd = config.n_embd - self.dropout = config.dropout - # flash attention make GPU go brrrrr but support is only in PyTorch nightly and still a bit scary - self.flash = hasattr(torch.nn.functional, "scaled_dot_product_attention") and self.dropout == 0.0 - - def forward(self, x): - B, T, C = x.size() # batch size, sequence length, embedding dimensionality (n_embd) - - # calculate query, key, values for all heads in batch and move head forward to be the batch dim - q, k, v = self.c_attn(x).split(self.n_embd, dim=2) - k = k.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs) - q = q.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs) - v = v.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs) - - # causal self-attention; Self-attend: (B, nh, T, hs) x (B, nh, hs, T) -> (B, nh, T, T) - if self.flash: - # efficient attention using Flash Attention CUDA kernels - y = torch.nn.functional.scaled_dot_product_attention( - q, k, v, attn_mask=None, dropout_p=self.dropout, is_causal=False - ) - else: - # manual implementation of attention - att = (q @ k.transpose(-2, -1)) * (1.0 / math.sqrt(k.size(-1))) - att = F.softmax(att, dim=-1) - att = self.attn_dropout(att) - y = att @ v # (B, nh, T, T) x (B, nh, T, hs) -> (B, nh, T, hs) - y = y.transpose(1, 2).contiguous().view(B, T, C) # re-assemble all head outputs side by side - - # output projection - y = self.resid_dropout(self.c_proj(y)) - return y - - -class FineBlock(nn.Module): - def __init__(self, config): - super().__init__() - self.ln_1 = nn.LayerNorm(config.n_embd) - self.attn = NonCausalSelfAttention(config) - self.ln_2 = nn.LayerNorm(config.n_embd) - self.mlp = MLP(config) - - def forward(self, x): - x = x + self.attn(self.ln_1(x)) - x = x + self.mlp(self.ln_2(x)) - return x - - -class FineGPT(GPT): - def __init__(self, config): - super().__init__(config) - del self.lm_head - self.config = config - self.n_codes_total = config.n_codes_total - self.transformer = nn.ModuleDict( - dict( - wtes=nn.ModuleList( - [nn.Embedding(config.input_vocab_size, config.n_embd) for _ in range(config.n_codes_total)] - ), - wpe=nn.Embedding(config.block_size, config.n_embd), - drop=nn.Dropout(config.dropout), - h=nn.ModuleList([FineBlock(config) for _ in range(config.n_layer)]), - ln_f=nn.LayerNorm(config.n_embd), - ) - ) - self.lm_heads = nn.ModuleList( - [ - nn.Linear(config.n_embd, config.output_vocab_size, bias=False) - for _ in range(config.n_codes_given, self.n_codes_total) - ] - ) - for i in range(self.n_codes_total - config.n_codes_given): - self.transformer.wtes[i + 1].weight = self.lm_heads[i].weight - - def forward(self, pred_idx, idx): - device = idx.device - b, t, codes = idx.size() - assert ( - t <= self.config.block_size - ), f"Cannot forward sequence of length {t}, block size is only {self.config.block_size}" - assert pred_idx > 0, "cannot predict 0th codebook" - assert codes == self.n_codes_total, (b, t, codes) - pos = torch.arange(0, t, dtype=torch.long, device=device).unsqueeze(0) # shape (1, t) - - # forward the GPT model itself - tok_embs = [ - wte(idx[:, :, i]).unsqueeze(-1) for i, wte in enumerate(self.transformer.wtes) - ] # token embeddings of shape (b, t, n_embd) - tok_emb = torch.cat(tok_embs, dim=-1) - pos_emb = self.transformer.wpe(pos) # position embeddings of shape (1, t, n_embd) - x = tok_emb[:, :, :, : pred_idx + 1].sum(dim=-1) - x = self.transformer.drop(x + pos_emb) - for block in self.transformer.h: - x = block(x) - x = self.transformer.ln_f(x) - logits = self.lm_heads[pred_idx - self.config.n_codes_given](x) - return logits - - def get_num_params(self, non_embedding=True): - """ - Return the number of parameters in the model. - For non-embedding count (default), the position embeddings get subtracted. - The token embeddings would too, except due to the parameter sharing these - params are actually used as weights in the final layer, so we include them. - """ - n_params = sum(p.numel() for p in self.parameters()) - if non_embedding: - for wte in self.transformer.wtes: - n_params -= wte.weight.numel() - n_params -= self.transformer.wpe.weight.numel() - return n_params - - -@dataclass -class FineGPTConfig(GPTConfig): - n_codes_total: int = 8 - n_codes_given: int = 1 diff --git a/TTS/tts/layers/delightful_tts/__init__.py b/TTS/tts/layers/delightful_tts/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/layers/delightful_tts/acoustic_model.py b/TTS/tts/layers/delightful_tts/acoustic_model.py deleted file mode 100644 index c906b882e567fade64139a8b932c71d554117547..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/delightful_tts/acoustic_model.py +++ /dev/null @@ -1,563 +0,0 @@ -### credit: https://github.com/dunky11/voicesmith -from typing import Callable, Dict, Tuple - -import torch -import torch.nn.functional as F -from coqpit import Coqpit -from torch import nn - -from TTS.tts.layers.delightful_tts.conformer import Conformer -from TTS.tts.layers.delightful_tts.encoders import ( - PhonemeLevelProsodyEncoder, - UtteranceLevelProsodyEncoder, - get_mask_from_lengths, -) -from TTS.tts.layers.delightful_tts.energy_adaptor import EnergyAdaptor -from TTS.tts.layers.delightful_tts.networks import EmbeddingPadded, positional_encoding -from TTS.tts.layers.delightful_tts.phoneme_prosody_predictor import PhonemeProsodyPredictor -from TTS.tts.layers.delightful_tts.pitch_adaptor import PitchAdaptor -from TTS.tts.layers.delightful_tts.variance_predictor import VariancePredictor -from TTS.tts.layers.generic.aligner import AlignmentNetwork -from TTS.tts.utils.helpers import generate_path, maximum_path, sequence_mask - - -class AcousticModel(torch.nn.Module): - def __init__( - self, - args: "ModelArgs", - tokenizer: "TTSTokenizer" = None, - speaker_manager: "SpeakerManager" = None, - ): - super().__init__() - self.args = args - self.tokenizer = tokenizer - self.speaker_manager = speaker_manager - - self.init_multispeaker(args) - # self.set_embedding_dims() - - self.length_scale = ( - float(self.args.length_scale) if isinstance(self.args.length_scale, int) else self.args.length_scale - ) - - self.emb_dim = args.n_hidden_conformer_encoder - self.encoder = Conformer( - dim=self.args.n_hidden_conformer_encoder, - n_layers=self.args.n_layers_conformer_encoder, - n_heads=self.args.n_heads_conformer_encoder, - speaker_embedding_dim=self.embedded_speaker_dim, - p_dropout=self.args.dropout_conformer_encoder, - kernel_size_conv_mod=self.args.kernel_size_conv_mod_conformer_encoder, - lrelu_slope=self.args.lrelu_slope, - ) - self.pitch_adaptor = PitchAdaptor( - n_input=self.args.n_hidden_conformer_encoder, - n_hidden=self.args.n_hidden_variance_adaptor, - n_out=1, - kernel_size=self.args.kernel_size_variance_adaptor, - emb_kernel_size=self.args.emb_kernel_size_variance_adaptor, - p_dropout=self.args.dropout_variance_adaptor, - lrelu_slope=self.args.lrelu_slope, - ) - self.energy_adaptor = EnergyAdaptor( - channels_in=self.args.n_hidden_conformer_encoder, - channels_hidden=self.args.n_hidden_variance_adaptor, - channels_out=1, - kernel_size=self.args.kernel_size_variance_adaptor, - emb_kernel_size=self.args.emb_kernel_size_variance_adaptor, - dropout=self.args.dropout_variance_adaptor, - lrelu_slope=self.args.lrelu_slope, - ) - - self.aligner = AlignmentNetwork( - in_query_channels=self.args.out_channels, - in_key_channels=self.args.n_hidden_conformer_encoder, - ) - - self.duration_predictor = VariancePredictor( - channels_in=self.args.n_hidden_conformer_encoder, - channels=self.args.n_hidden_variance_adaptor, - channels_out=1, - kernel_size=self.args.kernel_size_variance_adaptor, - p_dropout=self.args.dropout_variance_adaptor, - lrelu_slope=self.args.lrelu_slope, - ) - - self.utterance_prosody_encoder = UtteranceLevelProsodyEncoder( - num_mels=self.args.num_mels, - ref_enc_filters=self.args.ref_enc_filters_reference_encoder, - ref_enc_size=self.args.ref_enc_size_reference_encoder, - ref_enc_gru_size=self.args.ref_enc_gru_size_reference_encoder, - ref_enc_strides=self.args.ref_enc_strides_reference_encoder, - n_hidden=self.args.n_hidden_conformer_encoder, - dropout=self.args.dropout_conformer_encoder, - bottleneck_size_u=self.args.bottleneck_size_u_reference_encoder, - token_num=self.args.token_num_reference_encoder, - ) - - self.utterance_prosody_predictor = PhonemeProsodyPredictor( - hidden_size=self.args.n_hidden_conformer_encoder, - kernel_size=self.args.predictor_kernel_size_reference_encoder, - dropout=self.args.dropout_conformer_encoder, - bottleneck_size=self.args.bottleneck_size_u_reference_encoder, - lrelu_slope=self.args.lrelu_slope, - ) - - self.phoneme_prosody_encoder = PhonemeLevelProsodyEncoder( - num_mels=self.args.num_mels, - ref_enc_filters=self.args.ref_enc_filters_reference_encoder, - ref_enc_size=self.args.ref_enc_size_reference_encoder, - ref_enc_gru_size=self.args.ref_enc_gru_size_reference_encoder, - ref_enc_strides=self.args.ref_enc_strides_reference_encoder, - n_hidden=self.args.n_hidden_conformer_encoder, - dropout=self.args.dropout_conformer_encoder, - bottleneck_size_p=self.args.bottleneck_size_p_reference_encoder, - n_heads=self.args.n_heads_conformer_encoder, - ) - - self.phoneme_prosody_predictor = PhonemeProsodyPredictor( - hidden_size=self.args.n_hidden_conformer_encoder, - kernel_size=self.args.predictor_kernel_size_reference_encoder, - dropout=self.args.dropout_conformer_encoder, - bottleneck_size=self.args.bottleneck_size_p_reference_encoder, - lrelu_slope=self.args.lrelu_slope, - ) - - self.u_bottle_out = nn.Linear( - self.args.bottleneck_size_u_reference_encoder, - self.args.n_hidden_conformer_encoder, - ) - - self.u_norm = nn.InstanceNorm1d(self.args.bottleneck_size_u_reference_encoder) - self.p_bottle_out = nn.Linear( - self.args.bottleneck_size_p_reference_encoder, - self.args.n_hidden_conformer_encoder, - ) - self.p_norm = nn.InstanceNorm1d( - self.args.bottleneck_size_p_reference_encoder, - ) - self.decoder = Conformer( - dim=self.args.n_hidden_conformer_decoder, - n_layers=self.args.n_layers_conformer_decoder, - n_heads=self.args.n_heads_conformer_decoder, - speaker_embedding_dim=self.embedded_speaker_dim, - p_dropout=self.args.dropout_conformer_decoder, - kernel_size_conv_mod=self.args.kernel_size_conv_mod_conformer_decoder, - lrelu_slope=self.args.lrelu_slope, - ) - - padding_idx = self.tokenizer.characters.pad_id - self.src_word_emb = EmbeddingPadded( - self.args.num_chars, self.args.n_hidden_conformer_encoder, padding_idx=padding_idx - ) - self.to_mel = nn.Linear( - self.args.n_hidden_conformer_decoder, - self.args.num_mels, - ) - - self.energy_scaler = torch.nn.BatchNorm1d(1, affine=False, track_running_stats=True, momentum=None) - self.energy_scaler.requires_grad_(False) - - def init_multispeaker(self, args: Coqpit): # pylint: disable=unused-argument - """Init for multi-speaker training.""" - self.embedded_speaker_dim = 0 - self.num_speakers = self.args.num_speakers - self.audio_transform = None - - if self.speaker_manager: - self.num_speakers = self.speaker_manager.num_speakers - - if self.args.use_speaker_embedding: - self._init_speaker_embedding() - - if self.args.use_d_vector_file: - self._init_d_vector() - - @staticmethod - def _set_cond_input(aux_input: Dict): - """Set the speaker conditioning input based on the multi-speaker mode.""" - sid, g, lid, durations = None, None, None, None - if "speaker_ids" in aux_input and aux_input["speaker_ids"] is not None: - sid = aux_input["speaker_ids"] - if sid.ndim == 0: - sid = sid.unsqueeze_(0) - if "d_vectors" in aux_input and aux_input["d_vectors"] is not None: - g = F.normalize(aux_input["d_vectors"]) # .unsqueeze_(-1) - if g.ndim == 2: - g = g # .unsqueeze_(0) # pylint: disable=self-assigning-variable - - if "durations" in aux_input and aux_input["durations"] is not None: - durations = aux_input["durations"] - - return sid, g, lid, durations - - def get_aux_input(self, aux_input: Dict): - sid, g, lid, _ = self._set_cond_input(aux_input) - return {"speaker_ids": sid, "style_wav": None, "d_vectors": g, "language_ids": lid} - - def _set_speaker_input(self, aux_input: Dict): - d_vectors = aux_input.get("d_vectors", None) - speaker_ids = aux_input.get("speaker_ids", None) - - if d_vectors is not None and speaker_ids is not None: - raise ValueError("[!] Cannot use d-vectors and speaker-ids together.") - - if speaker_ids is not None and not hasattr(self, "emb_g"): - raise ValueError("[!] Cannot use speaker-ids without enabling speaker embedding.") - - g = speaker_ids if speaker_ids is not None else d_vectors - return g - - # def set_embedding_dims(self): - # if self.embedded_speaker_dim > 0: - # self.embedding_dims = self.embedded_speaker_dim - # else: - # self.embedding_dims = 0 - - def _init_speaker_embedding(self): - # pylint: disable=attribute-defined-outside-init - if self.num_speakers > 0: - print(" > initialization of speaker-embedding layers.") - self.embedded_speaker_dim = self.args.speaker_embedding_channels - self.emb_g = nn.Embedding(self.num_speakers, self.embedded_speaker_dim) - - def _init_d_vector(self): - # pylint: disable=attribute-defined-outside-init - if hasattr(self, "emb_g"): - raise ValueError("[!] Speaker embedding layer already initialized before d_vector settings.") - self.embedded_speaker_dim = self.args.d_vector_dim - - @staticmethod - def generate_attn(dr, x_mask, y_mask=None): - """Generate an attention mask from the linear scale durations. - - Args: - dr (Tensor): Linear scale durations. - x_mask (Tensor): Mask for the input (character) sequence. - y_mask (Tensor): Mask for the output (spectrogram) sequence. Compute it from the predicted durations - if None. Defaults to None. - - Shapes - - dr: :math:`(B, T_{en})` - - x_mask: :math:`(B, T_{en})` - - y_mask: :math:`(B, T_{de})` - """ - # compute decode mask from the durations - if y_mask is None: - y_lengths = dr.sum(1).long() - y_lengths[y_lengths < 1] = 1 - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(dr.dtype) - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - attn = generate_path(dr, attn_mask.squeeze(1)).to(dr.dtype) - return attn - - def _expand_encoder_with_durations( - self, - o_en: torch.FloatTensor, - dr: torch.IntTensor, - x_mask: torch.IntTensor, - y_lengths: torch.IntTensor, - ): - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(o_en.dtype) - attn = self.generate_attn(dr, x_mask, y_mask) - o_en_ex = torch.einsum("kmn, kjm -> kjn", [attn.float(), o_en]) - return y_mask, o_en_ex, attn.transpose(1, 2) - - def _forward_aligner( - self, - x: torch.FloatTensor, - y: torch.FloatTensor, - x_mask: torch.IntTensor, - y_mask: torch.IntTensor, - attn_priors: torch.FloatTensor, - ) -> Tuple[torch.IntTensor, torch.FloatTensor, torch.FloatTensor, torch.FloatTensor]: - """Aligner forward pass. - - 1. Compute a mask to apply to the attention map. - 2. Run the alignment network. - 3. Apply MAS to compute the hard alignment map. - 4. Compute the durations from the hard alignment map. - - Args: - x (torch.FloatTensor): Input sequence. - y (torch.FloatTensor): Output sequence. - x_mask (torch.IntTensor): Input sequence mask. - y_mask (torch.IntTensor): Output sequence mask. - attn_priors (torch.FloatTensor): Prior for the aligner network map. - - Returns: - Tuple[torch.IntTensor, torch.FloatTensor, torch.FloatTensor, torch.FloatTensor]: - Durations from the hard alignment map, soft alignment potentials, log scale alignment potentials, - hard alignment map. - - Shapes: - - x: :math:`[B, T_en, C_en]` - - y: :math:`[B, T_de, C_de]` - - x_mask: :math:`[B, 1, T_en]` - - y_mask: :math:`[B, 1, T_de]` - - attn_priors: :math:`[B, T_de, T_en]` - - - aligner_durations: :math:`[B, T_en]` - - aligner_soft: :math:`[B, T_de, T_en]` - - aligner_logprob: :math:`[B, 1, T_de, T_en]` - - aligner_mas: :math:`[B, T_de, T_en]` - """ - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) # [B, 1, T_en, T_de] - aligner_soft, aligner_logprob = self.aligner(y.transpose(1, 2), x.transpose(1, 2), x_mask, attn_priors) - aligner_mas = maximum_path( - aligner_soft.squeeze(1).transpose(1, 2).contiguous(), attn_mask.squeeze(1).contiguous() - ) - aligner_durations = torch.sum(aligner_mas, -1).int() - aligner_soft = aligner_soft.squeeze(1) # [B, T_max2, T_max] - aligner_mas = aligner_mas.transpose(1, 2) # [B, T_max, T_max2] -> [B, T_max2, T_max] - return aligner_durations, aligner_soft, aligner_logprob, aligner_mas - - def average_utterance_prosody( # pylint: disable=no-self-use - self, u_prosody_pred: torch.Tensor, src_mask: torch.Tensor - ) -> torch.Tensor: - lengths = ((~src_mask) * 1.0).sum(1) - u_prosody_pred = u_prosody_pred.sum(1, keepdim=True) / lengths.view(-1, 1, 1) - return u_prosody_pred - - def forward( - self, - tokens: torch.Tensor, - src_lens: torch.Tensor, - mels: torch.Tensor, - mel_lens: torch.Tensor, - pitches: torch.Tensor, - energies: torch.Tensor, - attn_priors: torch.Tensor, - use_ground_truth: bool = True, - d_vectors: torch.Tensor = None, - speaker_idx: torch.Tensor = None, - ) -> Dict[str, torch.Tensor]: - sid, g, lid, _ = self._set_cond_input( # pylint: disable=unused-variable - {"d_vectors": d_vectors, "speaker_ids": speaker_idx} - ) # pylint: disable=unused-variable - - src_mask = get_mask_from_lengths(src_lens) # [B, T_src] - mel_mask = get_mask_from_lengths(mel_lens) # [B, T_mel] - - # Token embeddings - token_embeddings = self.src_word_emb(tokens) # [B, T_src, C_hidden] - token_embeddings = token_embeddings.masked_fill(src_mask.unsqueeze(-1), 0.0) - - # Alignment network and durations - aligner_durations, aligner_soft, aligner_logprob, aligner_mas = self._forward_aligner( - x=token_embeddings, - y=mels.transpose(1, 2), - x_mask=~src_mask[:, None], - y_mask=~mel_mask[:, None], - attn_priors=attn_priors, - ) - dr = aligner_durations # [B, T_en] - - # Embeddings - speaker_embedding = None - if d_vectors is not None: - speaker_embedding = g - elif speaker_idx is not None: - speaker_embedding = F.normalize(self.emb_g(sid)) - - pos_encoding = positional_encoding( - self.emb_dim, - max(token_embeddings.shape[1], max(mel_lens)), - device=token_embeddings.device, - ) - encoder_outputs = self.encoder( - token_embeddings, - src_mask, - speaker_embedding=speaker_embedding, - encoding=pos_encoding, - ) - - u_prosody_ref = self.u_norm(self.utterance_prosody_encoder(mels=mels, mel_lens=mel_lens)) - u_prosody_pred = self.u_norm( - self.average_utterance_prosody( - u_prosody_pred=self.utterance_prosody_predictor(x=encoder_outputs, mask=src_mask), - src_mask=src_mask, - ) - ) - - if use_ground_truth: - encoder_outputs = encoder_outputs + self.u_bottle_out(u_prosody_ref) - else: - encoder_outputs = encoder_outputs + self.u_bottle_out(u_prosody_pred) - - p_prosody_ref = self.p_norm( - self.phoneme_prosody_encoder( - x=encoder_outputs, src_mask=src_mask, mels=mels, mel_lens=mel_lens, encoding=pos_encoding - ) - ) - p_prosody_pred = self.p_norm(self.phoneme_prosody_predictor(x=encoder_outputs, mask=src_mask)) - - if use_ground_truth: - encoder_outputs = encoder_outputs + self.p_bottle_out(p_prosody_ref) - else: - encoder_outputs = encoder_outputs + self.p_bottle_out(p_prosody_pred) - - encoder_outputs_res = encoder_outputs - - pitch_pred, avg_pitch_target, pitch_emb = self.pitch_adaptor.get_pitch_embedding_train( - x=encoder_outputs, - target=pitches, - dr=dr, - mask=src_mask, - ) - - energy_pred, avg_energy_target, energy_emb = self.energy_adaptor.get_energy_embedding_train( - x=encoder_outputs, - target=energies, - dr=dr, - mask=src_mask, - ) - - encoder_outputs = encoder_outputs.transpose(1, 2) + pitch_emb + energy_emb - log_duration_prediction = self.duration_predictor(x=encoder_outputs_res.detach(), mask=src_mask) - - mel_pred_mask, encoder_outputs_ex, alignments = self._expand_encoder_with_durations( - o_en=encoder_outputs, y_lengths=mel_lens, dr=dr, x_mask=~src_mask[:, None] - ) - - x = self.decoder( - encoder_outputs_ex.transpose(1, 2), - mel_mask, - speaker_embedding=speaker_embedding, - encoding=pos_encoding, - ) - x = self.to_mel(x) - - dr = torch.log(dr + 1) - - dr_pred = torch.exp(log_duration_prediction) - 1 - alignments_dp = self.generate_attn(dr_pred, src_mask.unsqueeze(1), mel_pred_mask) # [B, T_max, T_max2'] - - return { - "model_outputs": x, - "pitch_pred": pitch_pred, - "pitch_target": avg_pitch_target, - "energy_pred": energy_pred, - "energy_target": avg_energy_target, - "u_prosody_pred": u_prosody_pred, - "u_prosody_ref": u_prosody_ref, - "p_prosody_pred": p_prosody_pred, - "p_prosody_ref": p_prosody_ref, - "alignments_dp": alignments_dp, - "alignments": alignments, # [B, T_de, T_en] - "aligner_soft": aligner_soft, - "aligner_mas": aligner_mas, - "aligner_durations": aligner_durations, - "aligner_logprob": aligner_logprob, - "dr_log_pred": log_duration_prediction.squeeze(1), # [B, T] - "dr_log_target": dr.squeeze(1), # [B, T] - "spk_emb": speaker_embedding, - } - - @torch.no_grad() - def inference( - self, - tokens: torch.Tensor, - speaker_idx: torch.Tensor, - p_control: float = None, # TODO # pylint: disable=unused-argument - d_control: float = None, # TODO # pylint: disable=unused-argument - d_vectors: torch.Tensor = None, - pitch_transform: Callable = None, - energy_transform: Callable = None, - ) -> torch.Tensor: - src_mask = get_mask_from_lengths(torch.tensor([tokens.shape[1]], dtype=torch.int64, device=tokens.device)) - src_lens = torch.tensor(tokens.shape[1:2]).to(tokens.device) # pylint: disable=unused-variable - sid, g, lid, _ = self._set_cond_input( # pylint: disable=unused-variable - {"d_vectors": d_vectors, "speaker_ids": speaker_idx} - ) # pylint: disable=unused-variable - - token_embeddings = self.src_word_emb(tokens) - token_embeddings = token_embeddings.masked_fill(src_mask.unsqueeze(-1), 0.0) - - # Embeddings - speaker_embedding = None - if d_vectors is not None: - speaker_embedding = g - elif speaker_idx is not None: - speaker_embedding = F.normalize(self.emb_g(sid)) - - pos_encoding = positional_encoding( - self.emb_dim, - token_embeddings.shape[1], - device=token_embeddings.device, - ) - encoder_outputs = self.encoder( - token_embeddings, - src_mask, - speaker_embedding=speaker_embedding, - encoding=pos_encoding, - ) - - u_prosody_pred = self.u_norm( - self.average_utterance_prosody( - u_prosody_pred=self.utterance_prosody_predictor(x=encoder_outputs, mask=src_mask), - src_mask=src_mask, - ) - ) - encoder_outputs = encoder_outputs + self.u_bottle_out(u_prosody_pred).expand_as(encoder_outputs) - - p_prosody_pred = self.p_norm( - self.phoneme_prosody_predictor( - x=encoder_outputs, - mask=src_mask, - ) - ) - encoder_outputs = encoder_outputs + self.p_bottle_out(p_prosody_pred).expand_as(encoder_outputs) - - encoder_outputs_res = encoder_outputs - - pitch_emb_pred, pitch_pred = self.pitch_adaptor.get_pitch_embedding( - x=encoder_outputs, - mask=src_mask, - pitch_transform=pitch_transform, - pitch_mean=self.pitch_mean if hasattr(self, "pitch_mean") else None, - pitch_std=self.pitch_std if hasattr(self, "pitch_std") else None, - ) - - energy_emb_pred, energy_pred = self.energy_adaptor.get_energy_embedding( - x=encoder_outputs, mask=src_mask, energy_transform=energy_transform - ) - encoder_outputs = encoder_outputs.transpose(1, 2) + pitch_emb_pred + energy_emb_pred - - log_duration_pred = self.duration_predictor( - x=encoder_outputs_res.detach(), mask=src_mask - ) # [B, C_hidden, T_src] -> [B, T_src] - duration_pred = (torch.exp(log_duration_pred) - 1) * (~src_mask) * self.length_scale # -> [B, T_src] - duration_pred[duration_pred < 1] = 1.0 # -> [B, T_src] - duration_pred = torch.round(duration_pred) # -> [B, T_src] - mel_lens = duration_pred.sum(1) # -> [B,] - - _, encoder_outputs_ex, alignments = self._expand_encoder_with_durations( - o_en=encoder_outputs, y_lengths=mel_lens, dr=duration_pred.squeeze(1), x_mask=~src_mask[:, None] - ) - - mel_mask = get_mask_from_lengths( - torch.tensor([encoder_outputs_ex.shape[2]], dtype=torch.int64, device=encoder_outputs_ex.device) - ) - - if encoder_outputs_ex.shape[1] > pos_encoding.shape[1]: - encoding = positional_encoding(self.emb_dim, encoder_outputs_ex.shape[2], device=tokens.device) - - # [B, C_hidden, T_src], [B, 1, T_src], [B, C_emb], [B, T_src, C_hidden] -> [B, C_hidden, T_src] - x = self.decoder( - encoder_outputs_ex.transpose(1, 2), - mel_mask, - speaker_embedding=speaker_embedding, - encoding=encoding, - ) - x = self.to_mel(x) - outputs = { - "model_outputs": x, - "alignments": alignments, - # "pitch": pitch_emb_pred, - "durations": duration_pred, - "pitch": pitch_pred, - "energy": energy_pred, - "spk_emb": speaker_embedding, - } - return outputs diff --git a/TTS/tts/layers/delightful_tts/conformer.py b/TTS/tts/layers/delightful_tts/conformer.py deleted file mode 100644 index b2175b3b965c6b100846e87d405a753dc272c9e7..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/delightful_tts/conformer.py +++ /dev/null @@ -1,450 +0,0 @@ -### credit: https://github.com/dunky11/voicesmith -import math -from typing import Tuple - -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import -import torch.nn.functional as F - -from TTS.tts.layers.delightful_tts.conv_layers import Conv1dGLU, DepthWiseConv1d, PointwiseConv1d -from TTS.tts.layers.delightful_tts.networks import GLUActivation - - -def calc_same_padding(kernel_size: int) -> Tuple[int, int]: - pad = kernel_size // 2 - return (pad, pad - (kernel_size + 1) % 2) - - -class Conformer(nn.Module): - def __init__( - self, - dim: int, - n_layers: int, - n_heads: int, - speaker_embedding_dim: int, - p_dropout: float, - kernel_size_conv_mod: int, - lrelu_slope: float, - ): - """ - A Transformer variant that integrates both CNNs and Transformers components. - Conformer proposes a novel combination of self-attention and convolution, in which self-attention - learns the global interaction while the convolutions efficiently capture the local correlations. - - Args: - dim (int): Number of the dimensions for the model. - n_layers (int): Number of model layers. - n_heads (int): The number of attention heads. - speaker_embedding_dim (int): Number of speaker embedding dimensions. - p_dropout (float): Probabilty of dropout. - kernel_size_conv_mod (int): Size of kernels for convolution modules. - - Inputs: inputs, mask - - **inputs** (batch, time, dim): Tensor containing input vector - - **encoding** (batch, time, dim): Positional embedding tensor - - **mask** (batch, 1, time2) or (batch, time1, time2): Tensor containing indices to be masked - Returns: - - **outputs** (batch, time, dim): Tensor produced by Conformer Encoder. - """ - super().__init__() - d_k = d_v = dim // n_heads - self.layer_stack = nn.ModuleList( - [ - ConformerBlock( - dim, - n_heads, - d_k, - d_v, - kernel_size_conv_mod=kernel_size_conv_mod, - dropout=p_dropout, - speaker_embedding_dim=speaker_embedding_dim, - lrelu_slope=lrelu_slope, - ) - for _ in range(n_layers) - ] - ) - - def forward( - self, - x: torch.Tensor, - mask: torch.Tensor, - speaker_embedding: torch.Tensor, - encoding: torch.Tensor, - ) -> torch.Tensor: - """ - Shapes: - - x: :math:`[B, T_src, C]` - - mask: :math: `[B]` - - speaker_embedding: :math: `[B, C]` - - encoding: :math: `[B, T_max2, C]` - """ - - attn_mask = mask.view((mask.shape[0], 1, 1, mask.shape[1])) - for enc_layer in self.layer_stack: - x = enc_layer( - x, - mask=mask, - slf_attn_mask=attn_mask, - speaker_embedding=speaker_embedding, - encoding=encoding, - ) - return x - - -class ConformerBlock(torch.nn.Module): - def __init__( - self, - d_model: int, - n_head: int, - d_k: int, # pylint: disable=unused-argument - d_v: int, # pylint: disable=unused-argument - kernel_size_conv_mod: int, - speaker_embedding_dim: int, - dropout: float, - lrelu_slope: float = 0.3, - ): - """ - A Conformer block is composed of four modules stacked together, - A feed-forward module, a self-attention module, a convolution module, - and a second feed-forward module in the end. The block starts with two Feed forward - modules sandwiching the Multi-Headed Self-Attention module and the Conv module. - - Args: - d_model (int): The dimension of model - n_head (int): The number of attention heads. - kernel_size_conv_mod (int): Size of kernels for convolution modules. - speaker_embedding_dim (int): Number of speaker embedding dimensions. - emotion_embedding_dim (int): Number of emotion embedding dimensions. - dropout (float): Probabilty of dropout. - - Inputs: inputs, mask - - **inputs** (batch, time, dim): Tensor containing input vector - - **encoding** (batch, time, dim): Positional embedding tensor - - **slf_attn_mask** (batch, 1, 1, time1): Tensor containing indices to be masked in self attention module - - **mask** (batch, 1, time2) or (batch, time1, time2): Tensor containing indices to be masked - Returns: - - **outputs** (batch, time, dim): Tensor produced by the Conformer Block. - """ - super().__init__() - if isinstance(speaker_embedding_dim, int): - self.conditioning = Conv1dGLU( - d_model=d_model, - kernel_size=kernel_size_conv_mod, - padding=kernel_size_conv_mod // 2, - embedding_dim=speaker_embedding_dim, - ) - - self.ff = FeedForward(d_model=d_model, dropout=dropout, kernel_size=3, lrelu_slope=lrelu_slope) - self.conformer_conv_1 = ConformerConvModule( - d_model, kernel_size=kernel_size_conv_mod, dropout=dropout, lrelu_slope=lrelu_slope - ) - self.ln = nn.LayerNorm(d_model) - self.slf_attn = ConformerMultiHeadedSelfAttention(d_model=d_model, num_heads=n_head, dropout_p=dropout) - self.conformer_conv_2 = ConformerConvModule( - d_model, kernel_size=kernel_size_conv_mod, dropout=dropout, lrelu_slope=lrelu_slope - ) - - def forward( - self, - x: torch.Tensor, - speaker_embedding: torch.Tensor, - mask: torch.Tensor, - slf_attn_mask: torch.Tensor, - encoding: torch.Tensor, - ) -> torch.Tensor: - """ - Shapes: - - x: :math:`[B, T_src, C]` - - mask: :math: `[B]` - - slf_attn_mask: :math: `[B, 1, 1, T_src]` - - speaker_embedding: :math: `[B, C]` - - emotion_embedding: :math: `[B, C]` - - encoding: :math: `[B, T_max2, C]` - """ - if speaker_embedding is not None: - x = self.conditioning(x, embeddings=speaker_embedding) - x = self.ff(x) + x - x = self.conformer_conv_1(x) + x - res = x - x = self.ln(x) - x, _ = self.slf_attn(query=x, key=x, value=x, mask=slf_attn_mask, encoding=encoding) - x = x + res - x = x.masked_fill(mask.unsqueeze(-1), 0) - - x = self.conformer_conv_2(x) + x - return x - - -class FeedForward(nn.Module): - def __init__( - self, - d_model: int, - kernel_size: int, - dropout: float, - lrelu_slope: float, - expansion_factor: int = 4, - ): - """ - Feed Forward module for conformer block. - - Args: - d_model (int): The dimension of model. - kernel_size (int): Size of the kernels for conv layers. - dropout (float): probability of dropout. - expansion_factor (int): The factor by which to project the number of channels. - lrelu_slope (int): the negative slope factor for the leaky relu activation. - - Inputs: inputs - - **inputs** (batch, time, dim): Tensor containing input vector - Returns: - - **outputs** (batch, time, dim): Tensor produced by the feed forward module. - """ - super().__init__() - self.dropout = nn.Dropout(dropout) - self.ln = nn.LayerNorm(d_model) - self.conv_1 = nn.Conv1d( - d_model, - d_model * expansion_factor, - kernel_size=kernel_size, - padding=kernel_size // 2, - ) - self.act = nn.LeakyReLU(lrelu_slope) - self.conv_2 = nn.Conv1d(d_model * expansion_factor, d_model, kernel_size=1) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - """ - Shapes: - x: :math: `[B, T, C]` - """ - x = self.ln(x) - x = x.permute((0, 2, 1)) - x = self.conv_1(x) - x = x.permute((0, 2, 1)) - x = self.act(x) - x = self.dropout(x) - x = x.permute((0, 2, 1)) - x = self.conv_2(x) - x = x.permute((0, 2, 1)) - x = self.dropout(x) - x = 0.5 * x - return x - - -class ConformerConvModule(nn.Module): - def __init__( - self, - d_model: int, - expansion_factor: int = 2, - kernel_size: int = 7, - dropout: float = 0.1, - lrelu_slope: float = 0.3, - ): - """ - Convolution module for conformer. Starts with a gating machanism. - a pointwise convolution and a gated linear unit (GLU). This is followed - by a single 1-D depthwise convolution layer. Batchnorm is deployed just after the convolution - to help with training. it also contains an expansion factor to project the number of channels. - - Args: - d_model (int): The dimension of model. - expansion_factor (int): The factor by which to project the number of channels. - kernel_size (int): Size of kernels for convolution modules. - dropout (float): Probabilty of dropout. - lrelu_slope (float): The slope coefficient for leaky relu activation. - - Inputs: inputs - - **inputs** (batch, time, dim): Tensor containing input vector - Returns: - - **outputs** (batch, time, dim): Tensor produced by the conv module. - - """ - super().__init__() - inner_dim = d_model * expansion_factor - self.ln_1 = nn.LayerNorm(d_model) - self.conv_1 = PointwiseConv1d(d_model, inner_dim * 2) - self.conv_act = GLUActivation(slope=lrelu_slope) - self.depthwise = DepthWiseConv1d( - inner_dim, - inner_dim, - kernel_size=kernel_size, - padding=calc_same_padding(kernel_size)[0], - ) - self.ln_2 = nn.GroupNorm(1, inner_dim) - self.activation = nn.LeakyReLU(lrelu_slope) - self.conv_2 = PointwiseConv1d(inner_dim, d_model) - self.dropout = nn.Dropout(dropout) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - """ - Shapes: - x: :math: `[B, T, C]` - """ - x = self.ln_1(x) - x = x.permute(0, 2, 1) - x = self.conv_1(x) - x = self.conv_act(x) - x = self.depthwise(x) - x = self.ln_2(x) - x = self.activation(x) - x = self.conv_2(x) - x = x.permute(0, 2, 1) - x = self.dropout(x) - return x - - -class ConformerMultiHeadedSelfAttention(nn.Module): - """ - Conformer employ multi-headed self-attention (MHSA) while integrating an important technique from Transformer-XL, - the relative sinusoidal positional encoding scheme. The relative positional encoding allows the self-attention - module to generalize better on different input length and the resulting encoder is more robust to the variance of - the utterance length. Conformer use prenorm residual units with dropout which helps training - and regularizing deeper models. - Args: - d_model (int): The dimension of model - num_heads (int): The number of attention heads. - dropout_p (float): probability of dropout - Inputs: inputs, mask - - **inputs** (batch, time, dim): Tensor containing input vector - - **mask** (batch, 1, time2) or (batch, time1, time2): Tensor containing indices to be masked - Returns: - - **outputs** (batch, time, dim): Tensor produces by relative multi headed self attention module. - """ - - def __init__(self, d_model: int, num_heads: int, dropout_p: float): - super().__init__() - self.attention = RelativeMultiHeadAttention(d_model=d_model, num_heads=num_heads) - self.dropout = nn.Dropout(p=dropout_p) - - def forward( - self, - query: torch.Tensor, - key: torch.Tensor, - value: torch.Tensor, - mask: torch.Tensor, - encoding: torch.Tensor, - ) -> Tuple[torch.Tensor, torch.Tensor]: - batch_size, seq_length, _ = key.size() # pylint: disable=unused-variable - encoding = encoding[:, : key.shape[1]] - encoding = encoding.repeat(batch_size, 1, 1) - outputs, attn = self.attention(query, key, value, pos_embedding=encoding, mask=mask) - outputs = self.dropout(outputs) - return outputs, attn - - -class RelativeMultiHeadAttention(nn.Module): - """ - Multi-head attention with relative positional encoding. - This concept was proposed in the "Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context" - Args: - d_model (int): The dimension of model - num_heads (int): The number of attention heads. - Inputs: query, key, value, pos_embedding, mask - - **query** (batch, time, dim): Tensor containing query vector - - **key** (batch, time, dim): Tensor containing key vector - - **value** (batch, time, dim): Tensor containing value vector - - **pos_embedding** (batch, time, dim): Positional embedding tensor - - **mask** (batch, 1, time2) or (batch, time1, time2): Tensor containing indices to be masked - Returns: - - **outputs**: Tensor produces by relative multi head attention module. - """ - - def __init__( - self, - d_model: int = 512, - num_heads: int = 16, - ): - super().__init__() - assert d_model % num_heads == 0, "d_model % num_heads should be zero." - self.d_model = d_model - self.d_head = int(d_model / num_heads) - self.num_heads = num_heads - self.sqrt_dim = math.sqrt(d_model) - - self.query_proj = nn.Linear(d_model, d_model) - self.key_proj = nn.Linear(d_model, d_model, bias=False) - self.value_proj = nn.Linear(d_model, d_model, bias=False) - self.pos_proj = nn.Linear(d_model, d_model, bias=False) - - self.u_bias = nn.Parameter(torch.Tensor(self.num_heads, self.d_head)) - self.v_bias = nn.Parameter(torch.Tensor(self.num_heads, self.d_head)) - torch.nn.init.xavier_uniform_(self.u_bias) - torch.nn.init.xavier_uniform_(self.v_bias) - self.out_proj = nn.Linear(d_model, d_model) - - def forward( - self, - query: torch.Tensor, - key: torch.Tensor, - value: torch.Tensor, - pos_embedding: torch.Tensor, - mask: torch.Tensor, - ) -> Tuple[torch.Tensor, torch.Tensor]: - batch_size = query.shape[0] - query = self.query_proj(query).view(batch_size, -1, self.num_heads, self.d_head) - key = self.key_proj(key).view(batch_size, -1, self.num_heads, self.d_head).permute(0, 2, 1, 3) - value = self.value_proj(value).view(batch_size, -1, self.num_heads, self.d_head).permute(0, 2, 1, 3) - pos_embedding = self.pos_proj(pos_embedding).view(batch_size, -1, self.num_heads, self.d_head) - u_bias = self.u_bias.expand_as(query) - v_bias = self.v_bias.expand_as(query) - a = (query + u_bias).transpose(1, 2) - content_score = a @ key.transpose(2, 3) - b = (query + v_bias).transpose(1, 2) - pos_score = b @ pos_embedding.permute(0, 2, 3, 1) - pos_score = self._relative_shift(pos_score) - - score = content_score + pos_score - score = score * (1.0 / self.sqrt_dim) - - score.masked_fill_(mask, -1e9) - - attn = F.softmax(score, -1) - - context = (attn @ value).transpose(1, 2) - context = context.contiguous().view(batch_size, -1, self.d_model) - - return self.out_proj(context), attn - - def _relative_shift(self, pos_score: torch.Tensor) -> torch.Tensor: # pylint: disable=no-self-use - batch_size, num_heads, seq_length1, seq_length2 = pos_score.size() - zeros = torch.zeros((batch_size, num_heads, seq_length1, 1), device=pos_score.device) - padded_pos_score = torch.cat([zeros, pos_score], dim=-1) - padded_pos_score = padded_pos_score.view(batch_size, num_heads, seq_length2 + 1, seq_length1) - pos_score = padded_pos_score[:, :, 1:].view_as(pos_score) - return pos_score - - -class MultiHeadAttention(nn.Module): - """ - input: - query --- [N, T_q, query_dim] - key --- [N, T_k, key_dim] - output: - out --- [N, T_q, num_units] - """ - - def __init__(self, query_dim: int, key_dim: int, num_units: int, num_heads: int): - super().__init__() - self.num_units = num_units - self.num_heads = num_heads - self.key_dim = key_dim - - self.W_query = nn.Linear(in_features=query_dim, out_features=num_units, bias=False) - self.W_key = nn.Linear(in_features=key_dim, out_features=num_units, bias=False) - self.W_value = nn.Linear(in_features=key_dim, out_features=num_units, bias=False) - - def forward(self, query: torch.Tensor, key: torch.Tensor) -> torch.Tensor: - querys = self.W_query(query) # [N, T_q, num_units] - keys = self.W_key(key) # [N, T_k, num_units] - values = self.W_value(key) - split_size = self.num_units // self.num_heads - querys = torch.stack(torch.split(querys, split_size, dim=2), dim=0) # [h, N, T_q, num_units/h] - keys = torch.stack(torch.split(keys, split_size, dim=2), dim=0) # [h, N, T_k, num_units/h] - values = torch.stack(torch.split(values, split_size, dim=2), dim=0) # [h, N, T_k, num_units/h] - # score = softmax(QK^T / (d_k ** 0.5)) - scores = torch.matmul(querys, keys.transpose(2, 3)) # [h, N, T_q, T_k] - scores = scores / (self.key_dim**0.5) - scores = F.softmax(scores, dim=3) - # out = score * V - out = torch.matmul(scores, values) # [h, N, T_q, num_units/h] - out = torch.cat(torch.split(out, 1, dim=0), dim=3).squeeze(0) # [N, T_q, num_units] - return out diff --git a/TTS/tts/layers/delightful_tts/conv_layers.py b/TTS/tts/layers/delightful_tts/conv_layers.py deleted file mode 100644 index 354a0336a1f031edc839c103cc01b45fb7642025..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/delightful_tts/conv_layers.py +++ /dev/null @@ -1,670 +0,0 @@ -from typing import Tuple - -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import -import torch.nn.functional as F - -from TTS.tts.layers.delightful_tts.kernel_predictor import KernelPredictor - - -def calc_same_padding(kernel_size: int) -> Tuple[int, int]: - pad = kernel_size // 2 - return (pad, pad - (kernel_size + 1) % 2) - - -class ConvNorm(nn.Module): - """A 1-dimensional convolutional layer with optional weight normalization. - - This layer wraps a 1D convolutional layer from PyTorch and applies - optional weight normalization. The layer can be used in a similar way to - the convolutional layers in PyTorch's `torch.nn` module. - - Args: - in_channels (int): The number of channels in the input signal. - out_channels (int): The number of channels in the output signal. - kernel_size (int, optional): The size of the convolving kernel. - Defaults to 1. - stride (int, optional): The stride of the convolution. Defaults to 1. - padding (int, optional): Zero-padding added to both sides of the input. - If `None`, the padding will be calculated so that the output has - the same length as the input. Defaults to `None`. - dilation (int, optional): Spacing between kernel elements. Defaults to 1. - bias (bool, optional): If `True`, add bias after convolution. Defaults to `True`. - w_init_gain (str, optional): The weight initialization function to use. - Can be either 'linear' or 'relu'. Defaults to 'linear'. - use_weight_norm (bool, optional): If `True`, apply weight normalization - to the convolutional weights. Defaults to `False`. - - Shapes: - - Input: :math:`[N, D, T]` - - - Output: :math:`[N, out_dim, T]` where `out_dim` is the number of output dimensions. - - """ - - def __init__( - self, - in_channels, - out_channels, - kernel_size=1, - stride=1, - padding=None, - dilation=1, - bias=True, - w_init_gain="linear", - use_weight_norm=False, - ): - super(ConvNorm, self).__init__() # pylint: disable=super-with-arguments - if padding is None: - assert kernel_size % 2 == 1 - padding = int(dilation * (kernel_size - 1) / 2) - self.kernel_size = kernel_size - self.dilation = dilation - self.use_weight_norm = use_weight_norm - conv_fn = nn.Conv1d - self.conv = conv_fn( - in_channels, - out_channels, - kernel_size=kernel_size, - stride=stride, - padding=padding, - dilation=dilation, - bias=bias, - ) - nn.init.xavier_uniform_(self.conv.weight, gain=nn.init.calculate_gain(w_init_gain)) - if self.use_weight_norm: - self.conv = nn.utils.weight_norm(self.conv) - - def forward(self, signal, mask=None): - conv_signal = self.conv(signal) - if mask is not None: - # always re-zero output if mask is - # available to match zero-padding - conv_signal = conv_signal * mask - return conv_signal - - -class ConvLSTMLinear(nn.Module): - def __init__( - self, - in_dim, - out_dim, - n_layers=2, - n_channels=256, - kernel_size=3, - p_dropout=0.1, - lstm_type="bilstm", - use_linear=True, - ): - super(ConvLSTMLinear, self).__init__() # pylint: disable=super-with-arguments - self.out_dim = out_dim - self.lstm_type = lstm_type - self.use_linear = use_linear - self.dropout = nn.Dropout(p=p_dropout) - - convolutions = [] - for i in range(n_layers): - conv_layer = ConvNorm( - in_dim if i == 0 else n_channels, - n_channels, - kernel_size=kernel_size, - stride=1, - padding=int((kernel_size - 1) / 2), - dilation=1, - w_init_gain="relu", - ) - conv_layer = nn.utils.weight_norm(conv_layer.conv, name="weight") - convolutions.append(conv_layer) - - self.convolutions = nn.ModuleList(convolutions) - - if not self.use_linear: - n_channels = out_dim - - if self.lstm_type != "": - use_bilstm = False - lstm_channels = n_channels - if self.lstm_type == "bilstm": - use_bilstm = True - lstm_channels = int(n_channels // 2) - - self.bilstm = nn.LSTM(n_channels, lstm_channels, 1, batch_first=True, bidirectional=use_bilstm) - lstm_norm_fn_pntr = nn.utils.spectral_norm - self.bilstm = lstm_norm_fn_pntr(self.bilstm, "weight_hh_l0") - if self.lstm_type == "bilstm": - self.bilstm = lstm_norm_fn_pntr(self.bilstm, "weight_hh_l0_reverse") - - if self.use_linear: - self.dense = nn.Linear(n_channels, out_dim) - - def run_padded_sequence(self, context, lens): - context_embedded = [] - for b_ind in range(context.size()[0]): # TODO: speed up - curr_context = context[b_ind : b_ind + 1, :, : lens[b_ind]].clone() - for conv in self.convolutions: - curr_context = self.dropout(F.relu(conv(curr_context))) - context_embedded.append(curr_context[0].transpose(0, 1)) - context = nn.utils.rnn.pad_sequence(context_embedded, batch_first=True) - return context - - def run_unsorted_inputs(self, fn, context, lens): # pylint: disable=no-self-use - lens_sorted, ids_sorted = torch.sort(lens, descending=True) - unsort_ids = [0] * lens.size(0) - for i in range(len(ids_sorted)): # pylint: disable=consider-using-enumerate - unsort_ids[ids_sorted[i]] = i - lens_sorted = lens_sorted.long().cpu() - - context = context[ids_sorted] - context = nn.utils.rnn.pack_padded_sequence(context, lens_sorted, batch_first=True) - context = fn(context)[0] - context = nn.utils.rnn.pad_packed_sequence(context, batch_first=True)[0] - - # map back to original indices - context = context[unsort_ids] - return context - - def forward(self, context, lens): - if context.size()[0] > 1: - context = self.run_padded_sequence(context, lens) - # to B, D, T - context = context.transpose(1, 2) - else: - for conv in self.convolutions: - context = self.dropout(F.relu(conv(context))) - - if self.lstm_type != "": - context = context.transpose(1, 2) - self.bilstm.flatten_parameters() - if lens is not None: - context = self.run_unsorted_inputs(self.bilstm, context, lens) - else: - context = self.bilstm(context)[0] - context = context.transpose(1, 2) - - x_hat = context - if self.use_linear: - x_hat = self.dense(context.transpose(1, 2)).transpose(1, 2) - - return x_hat - - -class DepthWiseConv1d(nn.Module): - def __init__(self, in_channels: int, out_channels: int, kernel_size: int, padding: int): - super().__init__() - self.conv = nn.Conv1d(in_channels, out_channels, kernel_size, padding=padding, groups=in_channels) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - return self.conv(x) - - -class PointwiseConv1d(nn.Module): - def __init__( - self, - in_channels: int, - out_channels: int, - stride: int = 1, - padding: int = 0, - bias: bool = True, - ): - super().__init__() - self.conv = nn.Conv1d( - in_channels=in_channels, - out_channels=out_channels, - kernel_size=1, - stride=stride, - padding=padding, - bias=bias, - ) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - return self.conv(x) - - -class BSConv1d(nn.Module): - """https://arxiv.org/pdf/2003.13549.pdf""" - - def __init__(self, channels_in: int, channels_out: int, kernel_size: int, padding: int): - super().__init__() - self.pointwise = nn.Conv1d(channels_in, channels_out, kernel_size=1) - self.depthwise = nn.Conv1d( - channels_out, - channels_out, - kernel_size=kernel_size, - padding=padding, - groups=channels_out, - ) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x1 = self.pointwise(x) - x2 = self.depthwise(x1) - return x2 - - -class BSConv2d(nn.Module): - """https://arxiv.org/pdf/2003.13549.pdf""" - - def __init__(self, channels_in: int, channels_out: int, kernel_size: int, padding: int): - super().__init__() - self.pointwise = nn.Conv2d(channels_in, channels_out, kernel_size=1) - self.depthwise = nn.Conv2d( - channels_out, - channels_out, - kernel_size=kernel_size, - padding=padding, - groups=channels_out, - ) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x1 = self.pointwise(x) - x2 = self.depthwise(x1) - return x2 - - -class Conv1dGLU(nn.Module): - """From DeepVoice 3""" - - def __init__(self, d_model: int, kernel_size: int, padding: int, embedding_dim: int): - super().__init__() - self.conv = BSConv1d(d_model, 2 * d_model, kernel_size=kernel_size, padding=padding) - self.embedding_proj = nn.Linear(embedding_dim, d_model) - self.register_buffer("sqrt", torch.sqrt(torch.FloatTensor([0.5])).squeeze(0)) - self.softsign = torch.nn.Softsign() - - def forward(self, x: torch.Tensor, embeddings: torch.Tensor) -> torch.Tensor: - x = x.permute((0, 2, 1)) - residual = x - x = self.conv(x) - splitdim = 1 - a, b = x.split(x.size(splitdim) // 2, dim=splitdim) - embeddings = self.embedding_proj(embeddings).unsqueeze(2) - softsign = self.softsign(embeddings) - softsign = softsign.expand_as(a) - a = a + softsign - x = a * torch.sigmoid(b) - x = x + residual - x = x * self.sqrt - x = x.permute((0, 2, 1)) - return x - - -class ConvTransposed(nn.Module): - """ - A 1D convolutional transposed layer for PyTorch. - This layer applies a 1D convolutional transpose operation to its input tensor, - where the number of channels of the input tensor is the same as the number of channels of the output tensor. - - Attributes: - in_channels (int): The number of channels in the input tensor. - out_channels (int): The number of channels in the output tensor. - kernel_size (int): The size of the convolutional kernel. Default: 1. - padding (int): The number of padding elements to add to the input tensor. Default: 0. - conv (BSConv1d): The 1D convolutional transpose layer. - """ - - def __init__( - self, - in_channels: int, - out_channels: int, - kernel_size: int = 1, - padding: int = 0, - ): - super().__init__() - self.conv = BSConv1d( - in_channels, - out_channels, - kernel_size=kernel_size, - padding=padding, - ) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x = x.contiguous().transpose(1, 2) - x = self.conv(x) - x = x.contiguous().transpose(1, 2) - return x - - -class DepthwiseConvModule(nn.Module): - def __init__(self, dim: int, kernel_size: int = 7, expansion: int = 4, lrelu_slope: float = 0.3): - super().__init__() - padding = calc_same_padding(kernel_size) - self.depthwise = nn.Conv1d( - dim, - dim * expansion, - kernel_size=kernel_size, - padding=padding[0], - groups=dim, - ) - self.act = nn.LeakyReLU(lrelu_slope) - self.out = nn.Conv1d(dim * expansion, dim, 1, 1, 0) - self.ln = nn.LayerNorm(dim) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x = self.ln(x) - x = x.permute((0, 2, 1)) - x = self.depthwise(x) - x = self.act(x) - x = self.out(x) - x = x.permute((0, 2, 1)) - return x - - -class AddCoords(nn.Module): - def __init__(self, rank: int, with_r: bool = False): - super().__init__() - self.rank = rank - self.with_r = with_r - - def forward(self, x: torch.Tensor) -> torch.Tensor: - if self.rank == 1: - batch_size_shape, channel_in_shape, dim_x = x.shape # pylint: disable=unused-variable - xx_range = torch.arange(dim_x, dtype=torch.int32) - xx_channel = xx_range[None, None, :] - - xx_channel = xx_channel.float() / (dim_x - 1) - xx_channel = xx_channel * 2 - 1 - xx_channel = xx_channel.repeat(batch_size_shape, 1, 1) - - xx_channel = xx_channel.to(x.device) - out = torch.cat([x, xx_channel], dim=1) - - if self.with_r: - rr = torch.sqrt(torch.pow(xx_channel - 0.5, 2)) - out = torch.cat([out, rr], dim=1) - - elif self.rank == 2: - batch_size_shape, channel_in_shape, dim_y, dim_x = x.shape - xx_ones = torch.ones([1, 1, 1, dim_x], dtype=torch.int32) - yy_ones = torch.ones([1, 1, 1, dim_y], dtype=torch.int32) - - xx_range = torch.arange(dim_y, dtype=torch.int32) - yy_range = torch.arange(dim_x, dtype=torch.int32) - xx_range = xx_range[None, None, :, None] - yy_range = yy_range[None, None, :, None] - - xx_channel = torch.matmul(xx_range, xx_ones) - yy_channel = torch.matmul(yy_range, yy_ones) - - # transpose y - yy_channel = yy_channel.permute(0, 1, 3, 2) - - xx_channel = xx_channel.float() / (dim_y - 1) - yy_channel = yy_channel.float() / (dim_x - 1) - - xx_channel = xx_channel * 2 - 1 - yy_channel = yy_channel * 2 - 1 - - xx_channel = xx_channel.repeat(batch_size_shape, 1, 1, 1) - yy_channel = yy_channel.repeat(batch_size_shape, 1, 1, 1) - - xx_channel = xx_channel.to(x.device) - yy_channel = yy_channel.to(x.device) - - out = torch.cat([x, xx_channel, yy_channel], dim=1) - - if self.with_r: - rr = torch.sqrt(torch.pow(xx_channel - 0.5, 2) + torch.pow(yy_channel - 0.5, 2)) - out = torch.cat([out, rr], dim=1) - - elif self.rank == 3: - batch_size_shape, channel_in_shape, dim_z, dim_y, dim_x = x.shape - xx_ones = torch.ones([1, 1, 1, 1, dim_x], dtype=torch.int32) - yy_ones = torch.ones([1, 1, 1, 1, dim_y], dtype=torch.int32) - zz_ones = torch.ones([1, 1, 1, 1, dim_z], dtype=torch.int32) - - xy_range = torch.arange(dim_y, dtype=torch.int32) - xy_range = xy_range[None, None, None, :, None] - - yz_range = torch.arange(dim_z, dtype=torch.int32) - yz_range = yz_range[None, None, None, :, None] - - zx_range = torch.arange(dim_x, dtype=torch.int32) - zx_range = zx_range[None, None, None, :, None] - - xy_channel = torch.matmul(xy_range, xx_ones) - xx_channel = torch.cat([xy_channel + i for i in range(dim_z)], dim=2) - - yz_channel = torch.matmul(yz_range, yy_ones) - yz_channel = yz_channel.permute(0, 1, 3, 4, 2) - yy_channel = torch.cat([yz_channel + i for i in range(dim_x)], dim=4) - - zx_channel = torch.matmul(zx_range, zz_ones) - zx_channel = zx_channel.permute(0, 1, 4, 2, 3) - zz_channel = torch.cat([zx_channel + i for i in range(dim_y)], dim=3) - - xx_channel = xx_channel.to(x.device) - yy_channel = yy_channel.to(x.device) - zz_channel = zz_channel.to(x.device) - out = torch.cat([x, xx_channel, yy_channel, zz_channel], dim=1) - - if self.with_r: - rr = torch.sqrt( - torch.pow(xx_channel - 0.5, 2) + torch.pow(yy_channel - 0.5, 2) + torch.pow(zz_channel - 0.5, 2) - ) - out = torch.cat([out, rr], dim=1) - else: - raise NotImplementedError - - return out - - -class CoordConv1d(nn.modules.conv.Conv1d): - def __init__( - self, - in_channels: int, - out_channels: int, - kernel_size: int, - stride: int = 1, - padding: int = 0, - dilation: int = 1, - groups: int = 1, - bias: bool = True, - with_r: bool = False, - ): - super().__init__( - in_channels, - out_channels, - kernel_size, - stride, - padding, - dilation, - groups, - bias, - ) - self.rank = 1 - self.addcoords = AddCoords(self.rank, with_r) - self.conv = nn.Conv1d( - in_channels + self.rank + int(with_r), - out_channels, - kernel_size, - stride, - padding, - dilation, - groups, - bias, - ) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x = self.addcoords(x) - x = self.conv(x) - return x - - -class CoordConv2d(nn.modules.conv.Conv2d): - def __init__( - self, - in_channels: int, - out_channels: int, - kernel_size: int, - stride: int = 1, - padding: int = 0, - dilation: int = 1, - groups: int = 1, - bias: bool = True, - with_r: bool = False, - ): - super().__init__( - in_channels, - out_channels, - kernel_size, - stride, - padding, - dilation, - groups, - bias, - ) - self.rank = 2 - self.addcoords = AddCoords(self.rank, with_r) - self.conv = nn.Conv2d( - in_channels + self.rank + int(with_r), - out_channels, - kernel_size, - stride, - padding, - dilation, - groups, - bias, - ) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x = self.addcoords(x) - x = self.conv(x) - return x - - -class LVCBlock(torch.nn.Module): - """the location-variable convolutions""" - - def __init__( # pylint: disable=dangerous-default-value - self, - in_channels, - cond_channels, - stride, - dilations=[1, 3, 9, 27], - lReLU_slope=0.2, - conv_kernel_size=3, - cond_hop_length=256, - kpnet_hidden_channels=64, - kpnet_conv_size=3, - kpnet_dropout=0.0, - ): - super().__init__() - - self.cond_hop_length = cond_hop_length - self.conv_layers = len(dilations) - self.conv_kernel_size = conv_kernel_size - - self.kernel_predictor = KernelPredictor( - cond_channels=cond_channels, - conv_in_channels=in_channels, - conv_out_channels=2 * in_channels, - conv_layers=len(dilations), - conv_kernel_size=conv_kernel_size, - kpnet_hidden_channels=kpnet_hidden_channels, - kpnet_conv_size=kpnet_conv_size, - kpnet_dropout=kpnet_dropout, - kpnet_nonlinear_activation_params={"negative_slope": lReLU_slope}, - ) - - self.convt_pre = nn.Sequential( - nn.LeakyReLU(lReLU_slope), - nn.utils.weight_norm( - nn.ConvTranspose1d( - in_channels, - in_channels, - 2 * stride, - stride=stride, - padding=stride // 2 + stride % 2, - output_padding=stride % 2, - ) - ), - ) - - self.conv_blocks = nn.ModuleList() - for dilation in dilations: - self.conv_blocks.append( - nn.Sequential( - nn.LeakyReLU(lReLU_slope), - nn.utils.weight_norm( - nn.Conv1d( - in_channels, - in_channels, - conv_kernel_size, - padding=dilation * (conv_kernel_size - 1) // 2, - dilation=dilation, - ) - ), - nn.LeakyReLU(lReLU_slope), - ) - ) - - def forward(self, x, c): - """forward propagation of the location-variable convolutions. - Args: - x (Tensor): the input sequence (batch, in_channels, in_length) - c (Tensor): the conditioning sequence (batch, cond_channels, cond_length) - - Returns: - Tensor: the output sequence (batch, in_channels, in_length) - """ - _, in_channels, _ = x.shape # (B, c_g, L') - - x = self.convt_pre(x) # (B, c_g, stride * L') - kernels, bias = self.kernel_predictor(c) - - for i, conv in enumerate(self.conv_blocks): - output = conv(x) # (B, c_g, stride * L') - - k = kernels[:, i, :, :, :, :] # (B, 2 * c_g, c_g, kernel_size, cond_length) - b = bias[:, i, :, :] # (B, 2 * c_g, cond_length) - - output = self.location_variable_convolution( - output, k, b, hop_size=self.cond_hop_length - ) # (B, 2 * c_g, stride * L'): LVC - x = x + torch.sigmoid(output[:, :in_channels, :]) * torch.tanh( - output[:, in_channels:, :] - ) # (B, c_g, stride * L'): GAU - - return x - - def location_variable_convolution(self, x, kernel, bias, dilation=1, hop_size=256): # pylint: disable=no-self-use - """perform location-variable convolution operation on the input sequence (x) using the local convolution kernl. - Time: 414 μs ± 309 ns per loop (mean ± std. dev. of 7 runs, 1000 loops each), test on NVIDIA V100. - Args: - x (Tensor): the input sequence (batch, in_channels, in_length). - kernel (Tensor): the local convolution kernel (batch, in_channel, out_channels, kernel_size, kernel_length) - bias (Tensor): the bias for the local convolution (batch, out_channels, kernel_length) - dilation (int): the dilation of convolution. - hop_size (int): the hop_size of the conditioning sequence. - Returns: - (Tensor): the output sequence after performing local convolution. (batch, out_channels, in_length). - """ - batch, _, in_length = x.shape - batch, _, out_channels, kernel_size, kernel_length = kernel.shape - assert in_length == (kernel_length * hop_size), "length of (x, kernel) is not matched" - - padding = dilation * int((kernel_size - 1) / 2) - x = F.pad(x, (padding, padding), "constant", 0) # (batch, in_channels, in_length + 2*padding) - x = x.unfold(2, hop_size + 2 * padding, hop_size) # (batch, in_channels, kernel_length, hop_size + 2*padding) - - if hop_size < dilation: - x = F.pad(x, (0, dilation), "constant", 0) - x = x.unfold( - 3, dilation, dilation - ) # (batch, in_channels, kernel_length, (hop_size + 2*padding)/dilation, dilation) - x = x[:, :, :, :, :hop_size] - x = x.transpose(3, 4) # (batch, in_channels, kernel_length, dilation, (hop_size + 2*padding)/dilation) - x = x.unfold(4, kernel_size, 1) # (batch, in_channels, kernel_length, dilation, _, kernel_size) - - o = torch.einsum("bildsk,biokl->bolsd", x, kernel) - o = o.to(memory_format=torch.channels_last_3d) - bias = bias.unsqueeze(-1).unsqueeze(-1).to(memory_format=torch.channels_last_3d) - o = o + bias - o = o.contiguous().view(batch, out_channels, -1) - - return o - - def remove_weight_norm(self): - self.kernel_predictor.remove_weight_norm() - nn.utils.remove_weight_norm(self.convt_pre[1]) - for block in self.conv_blocks: - nn.utils.remove_weight_norm(block[1]) diff --git a/TTS/tts/layers/delightful_tts/encoders.py b/TTS/tts/layers/delightful_tts/encoders.py deleted file mode 100644 index 0878f0677a29d092597a46e8a3b11e4a521769b8..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/delightful_tts/encoders.py +++ /dev/null @@ -1,261 +0,0 @@ -from typing import List, Tuple, Union - -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import -import torch.nn.functional as F - -from TTS.tts.layers.delightful_tts.conformer import ConformerMultiHeadedSelfAttention -from TTS.tts.layers.delightful_tts.conv_layers import CoordConv1d -from TTS.tts.layers.delightful_tts.networks import STL - - -def get_mask_from_lengths(lengths: torch.Tensor) -> torch.Tensor: - batch_size = lengths.shape[0] - max_len = torch.max(lengths).item() - ids = torch.arange(0, max_len, device=lengths.device).unsqueeze(0).expand(batch_size, -1) - mask = ids >= lengths.unsqueeze(1).expand(-1, max_len) - return mask - - -def stride_lens(lens: torch.Tensor, stride: int = 2) -> torch.Tensor: - return torch.ceil(lens / stride).int() - - -class ReferenceEncoder(nn.Module): - """ - Referance encoder for utterance and phoneme prosody encoders. Reference encoder - made up of convolution and RNN layers. - - Args: - num_mels (int): Number of mel frames to produce. - ref_enc_filters (list[int]): List of channel sizes for encoder layers. - ref_enc_size (int): Size of the kernel for the conv layers. - ref_enc_strides (List[int]): List of strides to use for conv layers. - ref_enc_gru_size (int): Number of hidden features for the gated recurrent unit. - - Inputs: inputs, mask - - **inputs** (batch, dim, time): Tensor containing mel vector - - **lengths** (batch): Tensor containing the mel lengths. - Returns: - - **outputs** (batch, time, dim): Tensor produced by Reference Encoder. - """ - - def __init__( - self, - num_mels: int, - ref_enc_filters: List[Union[int, int, int, int, int, int]], - ref_enc_size: int, - ref_enc_strides: List[Union[int, int, int, int, int]], - ref_enc_gru_size: int, - ): - super().__init__() - - n_mel_channels = num_mels - self.n_mel_channels = n_mel_channels - K = len(ref_enc_filters) - filters = [self.n_mel_channels] + ref_enc_filters - strides = [1] + ref_enc_strides - # Use CoordConv at the first layer to better preserve positional information: https://arxiv.org/pdf/1811.02122.pdf - convs = [ - CoordConv1d( - in_channels=filters[0], - out_channels=filters[0 + 1], - kernel_size=ref_enc_size, - stride=strides[0], - padding=ref_enc_size // 2, - with_r=True, - ) - ] - convs2 = [ - nn.Conv1d( - in_channels=filters[i], - out_channels=filters[i + 1], - kernel_size=ref_enc_size, - stride=strides[i], - padding=ref_enc_size // 2, - ) - for i in range(1, K) - ] - convs.extend(convs2) - self.convs = nn.ModuleList(convs) - - self.norms = nn.ModuleList([nn.InstanceNorm1d(num_features=ref_enc_filters[i], affine=True) for i in range(K)]) - - self.gru = nn.GRU( - input_size=ref_enc_filters[-1], - hidden_size=ref_enc_gru_size, - batch_first=True, - ) - - def forward(self, x: torch.Tensor, mel_lens: torch.Tensor) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: - """ - inputs --- [N, n_mels, timesteps] - outputs --- [N, E//2] - """ - - mel_masks = get_mask_from_lengths(mel_lens).unsqueeze(1) - x = x.masked_fill(mel_masks, 0) - for conv, norm in zip(self.convs, self.norms): - x = conv(x) - x = F.leaky_relu(x, 0.3) # [N, 128, Ty//2^K, n_mels//2^K] - x = norm(x) - - for _ in range(2): - mel_lens = stride_lens(mel_lens) - - mel_masks = get_mask_from_lengths(mel_lens) - - x = x.masked_fill(mel_masks.unsqueeze(1), 0) - x = x.permute((0, 2, 1)) - x = torch.nn.utils.rnn.pack_padded_sequence(x, mel_lens.cpu().int(), batch_first=True, enforce_sorted=False) - - self.gru.flatten_parameters() - x, memory = self.gru(x) # memory --- [N, Ty, E//2], out --- [1, N, E//2] - x, _ = torch.nn.utils.rnn.pad_packed_sequence(x, batch_first=True) - - return x, memory, mel_masks - - def calculate_channels( # pylint: disable=no-self-use - self, L: int, kernel_size: int, stride: int, pad: int, n_convs: int - ) -> int: - for _ in range(n_convs): - L = (L - kernel_size + 2 * pad) // stride + 1 - return L - - -class UtteranceLevelProsodyEncoder(nn.Module): - def __init__( - self, - num_mels: int, - ref_enc_filters: List[Union[int, int, int, int, int, int]], - ref_enc_size: int, - ref_enc_strides: List[Union[int, int, int, int, int]], - ref_enc_gru_size: int, - dropout: float, - n_hidden: int, - bottleneck_size_u: int, - token_num: int, - ): - """ - Encoder to extract prosody from utterance. it is made up of a reference encoder - with a couple of linear layers and style token layer with dropout. - - Args: - num_mels (int): Number of mel frames to produce. - ref_enc_filters (list[int]): List of channel sizes for ref encoder layers. - ref_enc_size (int): Size of the kernel for the ref encoder conv layers. - ref_enc_strides (List[int]): List of strides to use for teh ref encoder conv layers. - ref_enc_gru_size (int): Number of hidden features for the gated recurrent unit. - dropout (float): Probability of dropout. - n_hidden (int): Size of hidden layers. - bottleneck_size_u (int): Size of the bottle neck layer. - - Inputs: inputs, mask - - **inputs** (batch, dim, time): Tensor containing mel vector - - **lengths** (batch): Tensor containing the mel lengths. - Returns: - - **outputs** (batch, 1, dim): Tensor produced by Utterance Level Prosody Encoder. - """ - super().__init__() - - self.E = n_hidden - self.d_q = self.d_k = n_hidden - bottleneck_size = bottleneck_size_u - - self.encoder = ReferenceEncoder( - ref_enc_filters=ref_enc_filters, - ref_enc_gru_size=ref_enc_gru_size, - ref_enc_size=ref_enc_size, - ref_enc_strides=ref_enc_strides, - num_mels=num_mels, - ) - self.encoder_prj = nn.Linear(ref_enc_gru_size, self.E // 2) - self.stl = STL(n_hidden=n_hidden, token_num=token_num) - self.encoder_bottleneck = nn.Linear(self.E, bottleneck_size) - self.dropout = nn.Dropout(dropout) - - def forward(self, mels: torch.Tensor, mel_lens: torch.Tensor) -> torch.Tensor: - """ - Shapes: - mels: :math: `[B, C, T]` - mel_lens: :math: `[B]` - - out --- [N, seq_len, E] - """ - _, embedded_prosody, _ = self.encoder(mels, mel_lens) - - # Bottleneck - embedded_prosody = self.encoder_prj(embedded_prosody) - - # Style Token - out = self.encoder_bottleneck(self.stl(embedded_prosody)) - out = self.dropout(out) - - out = out.view((-1, 1, out.shape[3])) - return out - - -class PhonemeLevelProsodyEncoder(nn.Module): - def __init__( - self, - num_mels: int, - ref_enc_filters: List[Union[int, int, int, int, int, int]], - ref_enc_size: int, - ref_enc_strides: List[Union[int, int, int, int, int]], - ref_enc_gru_size: int, - dropout: float, - n_hidden: int, - n_heads: int, - bottleneck_size_p: int, - ): - super().__init__() - - self.E = n_hidden - self.d_q = self.d_k = n_hidden - bottleneck_size = bottleneck_size_p - - self.encoder = ReferenceEncoder( - ref_enc_filters=ref_enc_filters, - ref_enc_gru_size=ref_enc_gru_size, - ref_enc_size=ref_enc_size, - ref_enc_strides=ref_enc_strides, - num_mels=num_mels, - ) - self.encoder_prj = nn.Linear(ref_enc_gru_size, n_hidden) - self.attention = ConformerMultiHeadedSelfAttention( - d_model=n_hidden, - num_heads=n_heads, - dropout_p=dropout, - ) - self.encoder_bottleneck = nn.Linear(n_hidden, bottleneck_size) - - def forward( - self, - x: torch.Tensor, - src_mask: torch.Tensor, - mels: torch.Tensor, - mel_lens: torch.Tensor, - encoding: torch.Tensor, - ) -> torch.Tensor: - """ - x --- [N, seq_len, encoder_embedding_dim] - mels --- [N, Ty/r, n_mels*r], r=1 - out --- [N, seq_len, bottleneck_size] - attn --- [N, seq_len, ref_len], Ty/r = ref_len - """ - embedded_prosody, _, mel_masks = self.encoder(mels, mel_lens) - - # Bottleneck - embedded_prosody = self.encoder_prj(embedded_prosody) - - attn_mask = mel_masks.view((mel_masks.shape[0], 1, 1, -1)) - x, _ = self.attention( - query=x, - key=embedded_prosody, - value=embedded_prosody, - mask=attn_mask, - encoding=encoding, - ) - x = self.encoder_bottleneck(x) - x = x.masked_fill(src_mask.unsqueeze(-1), 0.0) - return x diff --git a/TTS/tts/layers/delightful_tts/energy_adaptor.py b/TTS/tts/layers/delightful_tts/energy_adaptor.py deleted file mode 100644 index ea0d1e47214d81a42b934bbaaa4b3ebb9f63bcc6..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/delightful_tts/energy_adaptor.py +++ /dev/null @@ -1,82 +0,0 @@ -from typing import Callable, Tuple - -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import - -from TTS.tts.layers.delightful_tts.variance_predictor import VariancePredictor -from TTS.tts.utils.helpers import average_over_durations - - -class EnergyAdaptor(nn.Module): # pylint: disable=abstract-method - """Variance Adaptor with an added 1D conv layer. Used to - get energy embeddings. - - Args: - channels_in (int): Number of in channels for conv layers. - channels_out (int): Number of out channels. - kernel_size (int): Size the kernel for the conv layers. - dropout (float): Probability of dropout. - lrelu_slope (float): Slope for the leaky relu. - emb_kernel_size (int): Size the kernel for the pitch embedding. - - Inputs: inputs, mask - - **inputs** (batch, time1, dim): Tensor containing input vector - - **target** (batch, 1, time2): Tensor containing the energy target - - **dr** (batch, time1): Tensor containing aligner durations vector - - **mask** (batch, time1): Tensor containing indices to be masked - Returns: - - **energy prediction** (batch, 1, time1): Tensor produced by energy predictor - - **energy embedding** (batch, channels, time1): Tensor produced energy adaptor - - **average energy target(train only)** (batch, 1, time1): Tensor produced after averaging over durations - - """ - - def __init__( - self, - channels_in: int, - channels_hidden: int, - channels_out: int, - kernel_size: int, - dropout: float, - lrelu_slope: float, - emb_kernel_size: int, - ): - super().__init__() - self.energy_predictor = VariancePredictor( - channels_in=channels_in, - channels=channels_hidden, - channels_out=channels_out, - kernel_size=kernel_size, - p_dropout=dropout, - lrelu_slope=lrelu_slope, - ) - self.energy_emb = nn.Conv1d( - 1, - channels_hidden, - kernel_size=emb_kernel_size, - padding=int((emb_kernel_size - 1) / 2), - ) - - def get_energy_embedding_train( - self, x: torch.Tensor, target: torch.Tensor, dr: torch.IntTensor, mask: torch.Tensor - ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: - """ - Shapes: - x: :math: `[B, T_src, C]` - target: :math: `[B, 1, T_max2]` - dr: :math: `[B, T_src]` - mask: :math: `[B, T_src]` - """ - energy_pred = self.energy_predictor(x, mask) - energy_pred.unsqueeze_(1) - avg_energy_target = average_over_durations(target, dr) - energy_emb = self.energy_emb(avg_energy_target) - return energy_pred, avg_energy_target, energy_emb - - def get_energy_embedding(self, x: torch.Tensor, mask: torch.Tensor, energy_transform: Callable) -> torch.Tensor: - energy_pred = self.energy_predictor(x, mask) - energy_pred.unsqueeze_(1) - if energy_transform is not None: - energy_pred = energy_transform(energy_pred, (~mask).sum(dim=(1, 2)), self.pitch_mean, self.pitch_std) - energy_emb_pred = self.energy_emb(energy_pred) - return energy_emb_pred, energy_pred diff --git a/TTS/tts/layers/delightful_tts/kernel_predictor.py b/TTS/tts/layers/delightful_tts/kernel_predictor.py deleted file mode 100644 index 19dfd57e7bbb018494aa00ca22f0ae70f1b2e71d..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/delightful_tts/kernel_predictor.py +++ /dev/null @@ -1,125 +0,0 @@ -import torch.nn as nn # pylint: disable=consider-using-from-import - - -class KernelPredictor(nn.Module): - """Kernel predictor for the location-variable convolutions - - Args: - cond_channels (int): number of channel for the conditioning sequence, - conv_in_channels (int): number of channel for the input sequence, - conv_out_channels (int): number of channel for the output sequence, - conv_layers (int): number of layers - - """ - - def __init__( # pylint: disable=dangerous-default-value - self, - cond_channels, - conv_in_channels, - conv_out_channels, - conv_layers, - conv_kernel_size=3, - kpnet_hidden_channels=64, - kpnet_conv_size=3, - kpnet_dropout=0.0, - kpnet_nonlinear_activation="LeakyReLU", - kpnet_nonlinear_activation_params={"negative_slope": 0.1}, - ): - super().__init__() - - self.conv_in_channels = conv_in_channels - self.conv_out_channels = conv_out_channels - self.conv_kernel_size = conv_kernel_size - self.conv_layers = conv_layers - - kpnet_kernel_channels = conv_in_channels * conv_out_channels * conv_kernel_size * conv_layers # l_w - kpnet_bias_channels = conv_out_channels * conv_layers # l_b - - self.input_conv = nn.Sequential( - nn.utils.weight_norm(nn.Conv1d(cond_channels, kpnet_hidden_channels, 5, padding=2, bias=True)), - getattr(nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - ) - - self.residual_convs = nn.ModuleList() - padding = (kpnet_conv_size - 1) // 2 - for _ in range(3): - self.residual_convs.append( - nn.Sequential( - nn.Dropout(kpnet_dropout), - nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_hidden_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ), - getattr(nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_hidden_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ), - getattr(nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - ) - ) - self.kernel_conv = nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_kernel_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ) - self.bias_conv = nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_bias_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ) - - def forward(self, c): - """ - Args: - c (Tensor): the conditioning sequence (batch, cond_channels, cond_length) - """ - batch, _, cond_length = c.shape - c = self.input_conv(c) - for residual_conv in self.residual_convs: - residual_conv.to(c.device) - c = c + residual_conv(c) - k = self.kernel_conv(c) - b = self.bias_conv(c) - kernels = k.contiguous().view( - batch, - self.conv_layers, - self.conv_in_channels, - self.conv_out_channels, - self.conv_kernel_size, - cond_length, - ) - bias = b.contiguous().view( - batch, - self.conv_layers, - self.conv_out_channels, - cond_length, - ) - - return kernels, bias - - def remove_weight_norm(self): - nn.utils.remove_weight_norm(self.input_conv[0]) - nn.utils.remove_weight_norm(self.kernel_conv) - nn.utils.remove_weight_norm(self.bias_conv) - for block in self.residual_convs: - nn.utils.remove_weight_norm(block[1]) - nn.utils.remove_weight_norm(block[3]) diff --git a/TTS/tts/layers/delightful_tts/networks.py b/TTS/tts/layers/delightful_tts/networks.py deleted file mode 100644 index 4305022f18cf95565b2da2553740276818fb486c..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/delightful_tts/networks.py +++ /dev/null @@ -1,219 +0,0 @@ -import math -from typing import Tuple - -import numpy as np -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import -import torch.nn.functional as F - -from TTS.tts.layers.delightful_tts.conv_layers import ConvNorm - - -def initialize_embeddings(shape: Tuple[int]) -> torch.Tensor: - assert len(shape) == 2, "Can only initialize 2-D embedding matrices ..." - # Kaiming initialization - return torch.randn(shape) * np.sqrt(2 / shape[1]) - - -def positional_encoding(d_model: int, length: int, device: torch.device) -> torch.Tensor: - pe = torch.zeros(length, d_model, device=device) - position = torch.arange(0, length, dtype=torch.float, device=device).unsqueeze(1) - div_term = torch.exp(torch.arange(0, d_model, 2, device=device).float() * -(math.log(10000.0) / d_model)) - pe[:, 0::2] = torch.sin(position * div_term) - pe[:, 1::2] = torch.cos(position * div_term) - pe = pe.unsqueeze(0) - return pe - - -class BottleneckLayer(nn.Module): - """ - Bottleneck layer for reducing the dimensionality of a tensor. - - Args: - in_dim: The number of input dimensions. - reduction_factor: The factor by which to reduce the number of dimensions. - norm: The normalization method to use. Can be "weightnorm" or "instancenorm". - non_linearity: The non-linearity to use. Can be "relu" or "leakyrelu". - kernel_size: The size of the convolutional kernel. - use_partial_padding: Whether to use partial padding with the convolutional kernel. - - Shape: - - Input: :math:`[N, in_dim]` where `N` is the batch size and `in_dim` is the number of input dimensions. - - - Output: :math:`[N, out_dim]` where `out_dim` is the number of output dimensions. - """ - - def __init__( - self, - in_dim, - reduction_factor, - norm="weightnorm", - non_linearity="relu", - kernel_size=3, - use_partial_padding=False, # pylint: disable=unused-argument - ): - super(BottleneckLayer, self).__init__() # pylint: disable=super-with-arguments - - self.reduction_factor = reduction_factor - reduced_dim = int(in_dim / reduction_factor) - self.out_dim = reduced_dim - if self.reduction_factor > 1: - fn = ConvNorm(in_dim, reduced_dim, kernel_size=kernel_size, use_weight_norm=(norm == "weightnorm")) - if norm == "instancenorm": - fn = nn.Sequential(fn, nn.InstanceNorm1d(reduced_dim, affine=True)) - - self.projection_fn = fn - self.non_linearity = nn.ReLU() - if non_linearity == "leakyrelu": - self.non_linearity = nn.LeakyReLU() - - def forward(self, x): - if self.reduction_factor > 1: - x = self.projection_fn(x) - x = self.non_linearity(x) - return x - - -class GLUActivation(nn.Module): - """Class that implements the Gated Linear Unit (GLU) activation function. - - The GLU activation function is a variant of the Leaky ReLU activation function, - where the output of the activation function is gated by an input tensor. - - """ - - def __init__(self, slope: float): - super().__init__() - self.lrelu = nn.LeakyReLU(slope) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - out, gate = x.chunk(2, dim=1) - x = out * self.lrelu(gate) - return x - - -class StyleEmbedAttention(nn.Module): - def __init__(self, query_dim: int, key_dim: int, num_units: int, num_heads: int): - super().__init__() - self.num_units = num_units - self.num_heads = num_heads - self.key_dim = key_dim - - self.W_query = nn.Linear(in_features=query_dim, out_features=num_units, bias=False) - self.W_key = nn.Linear(in_features=key_dim, out_features=num_units, bias=False) - self.W_value = nn.Linear(in_features=key_dim, out_features=num_units, bias=False) - - def forward(self, query: torch.Tensor, key_soft: torch.Tensor) -> torch.Tensor: - values = self.W_value(key_soft) - split_size = self.num_units // self.num_heads - values = torch.stack(torch.split(values, split_size, dim=2), dim=0) - - out_soft = scores_soft = None - querys = self.W_query(query) # [N, T_q, num_units] - keys = self.W_key(key_soft) # [N, T_k, num_units] - - # [h, N, T_q, num_units/h] - querys = torch.stack(torch.split(querys, split_size, dim=2), dim=0) - # [h, N, T_k, num_units/h] - keys = torch.stack(torch.split(keys, split_size, dim=2), dim=0) - # [h, N, T_k, num_units/h] - - # score = softmax(QK^T / (d_k ** 0.5)) - scores_soft = torch.matmul(querys, keys.transpose(2, 3)) # [h, N, T_q, T_k] - scores_soft = scores_soft / (self.key_dim**0.5) - scores_soft = F.softmax(scores_soft, dim=3) - - # out = score * V - # [h, N, T_q, num_units/h] - out_soft = torch.matmul(scores_soft, values) - out_soft = torch.cat(torch.split(out_soft, 1, dim=0), dim=3).squeeze(0) # [N, T_q, num_units] - - return out_soft # , scores_soft - - -class EmbeddingPadded(nn.Module): - def __init__(self, num_embeddings: int, embedding_dim: int, padding_idx: int): - super().__init__() - padding_mult = torch.ones((num_embeddings, 1), dtype=torch.int64) - padding_mult[padding_idx] = 0 - self.register_buffer("padding_mult", padding_mult) - self.embeddings = nn.parameter.Parameter(initialize_embeddings((num_embeddings, embedding_dim))) - - def forward(self, idx: torch.Tensor) -> torch.Tensor: - embeddings_zeroed = self.embeddings * self.padding_mult - x = F.embedding(idx, embeddings_zeroed) - return x - - -class EmbeddingProjBlock(nn.Module): - def __init__(self, embedding_dim: int): - super().__init__() - self.layers = nn.ModuleList( - [ - nn.Linear(embedding_dim, embedding_dim), - nn.LeakyReLU(0.3), - nn.Linear(embedding_dim, embedding_dim), - nn.LeakyReLU(0.3), - ] - ) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - res = x - for layer in self.layers: - x = layer(x) - x = x + res - return x - - -class LinearNorm(nn.Module): - def __init__(self, in_features: int, out_features: int, bias: bool = False): - super().__init__() - self.linear = nn.Linear(in_features, out_features, bias) - - nn.init.xavier_uniform_(self.linear.weight) - if bias: - nn.init.constant_(self.linear.bias, 0.0) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - x = self.linear(x) - return x - - -class STL(nn.Module): - """ - A PyTorch module for the Style Token Layer (STL) as described in - "A Style-Based Generator Architecture for Generative Adversarial Networks" - (https://arxiv.org/abs/1812.04948) - - The STL applies a multi-headed attention mechanism over the learned style tokens, - using the text input as the query and the style tokens as the keys and values. - The output of the attention mechanism is used as the text's style embedding. - - Args: - token_num (int): The number of style tokens. - n_hidden (int): Number of hidden dimensions. - """ - - def __init__(self, n_hidden: int, token_num: int): - super(STL, self).__init__() # pylint: disable=super-with-arguments - - num_heads = 1 - E = n_hidden - self.token_num = token_num - self.embed = nn.Parameter(torch.FloatTensor(self.token_num, E // num_heads)) - d_q = E // 2 - d_k = E // num_heads - self.attention = StyleEmbedAttention(query_dim=d_q, key_dim=d_k, num_units=E, num_heads=num_heads) - - torch.nn.init.normal_(self.embed, mean=0, std=0.5) - - def forward(self, x: torch.Tensor) -> torch.Tensor: - N = x.size(0) - query = x.unsqueeze(1) # [N, 1, E//2] - - keys_soft = torch.tanh(self.embed).unsqueeze(0).expand(N, -1, -1) # [N, token_num, E // num_heads] - - # Weighted sum - emotion_embed_soft = self.attention(query, keys_soft) - - return emotion_embed_soft diff --git a/TTS/tts/layers/delightful_tts/phoneme_prosody_predictor.py b/TTS/tts/layers/delightful_tts/phoneme_prosody_predictor.py deleted file mode 100644 index 28418f7163361120914f277446f76ac9f0363254..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/delightful_tts/phoneme_prosody_predictor.py +++ /dev/null @@ -1,65 +0,0 @@ -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import - -from TTS.tts.layers.delightful_tts.conv_layers import ConvTransposed - - -class PhonemeProsodyPredictor(nn.Module): - """Non-parallel Prosody Predictor inspired by: https://arxiv.org/pdf/2102.00851.pdf - It consists of 2 layers of 1D convolutions each followed by a relu activation, layer norm - and dropout, then finally a linear layer. - - Args: - hidden_size (int): Size of hidden channels. - kernel_size (int): Kernel size for the conv layers. - dropout: (float): Probability of dropout. - bottleneck_size (int): bottleneck size for last linear layer. - lrelu_slope (float): Slope of the leaky relu. - """ - - def __init__( - self, - hidden_size: int, - kernel_size: int, - dropout: float, - bottleneck_size: int, - lrelu_slope: float, - ): - super().__init__() - self.d_model = hidden_size - self.layers = nn.ModuleList( - [ - ConvTransposed( - self.d_model, - self.d_model, - kernel_size=kernel_size, - padding=(kernel_size - 1) // 2, - ), - nn.LeakyReLU(lrelu_slope), - nn.LayerNorm(self.d_model), - nn.Dropout(dropout), - ConvTransposed( - self.d_model, - self.d_model, - kernel_size=kernel_size, - padding=(kernel_size - 1) // 2, - ), - nn.LeakyReLU(lrelu_slope), - nn.LayerNorm(self.d_model), - nn.Dropout(dropout), - ] - ) - self.predictor_bottleneck = nn.Linear(self.d_model, bottleneck_size) - - def forward(self, x: torch.Tensor, mask: torch.Tensor) -> torch.Tensor: - """ - Shapes: - x: :math: `[B, T, D]` - mask: :math: `[B, T]` - """ - mask = mask.unsqueeze(2) - for layer in self.layers: - x = layer(x) - x = x.masked_fill(mask, 0.0) - x = self.predictor_bottleneck(x) - return x diff --git a/TTS/tts/layers/delightful_tts/pitch_adaptor.py b/TTS/tts/layers/delightful_tts/pitch_adaptor.py deleted file mode 100644 index 9031369e0f019cf115d0d43b288bb97d9db48467..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/delightful_tts/pitch_adaptor.py +++ /dev/null @@ -1,88 +0,0 @@ -from typing import Callable, Tuple - -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import - -from TTS.tts.layers.delightful_tts.variance_predictor import VariancePredictor -from TTS.tts.utils.helpers import average_over_durations - - -class PitchAdaptor(nn.Module): # pylint: disable=abstract-method - """Module to get pitch embeddings via pitch predictor - - Args: - n_input (int): Number of pitch predictor input channels. - n_hidden (int): Number of pitch predictor hidden channels. - n_out (int): Number of pitch predictor out channels. - kernel size (int): Size of the kernel for conv layers. - emb_kernel_size (int): Size the kernel for the pitch embedding. - p_dropout (float): Probability of dropout. - lrelu_slope (float): Slope for the leaky relu. - - Inputs: inputs, mask - - **inputs** (batch, time1, dim): Tensor containing input vector - - **target** (batch, 1, time2): Tensor containing the pitch target - - **dr** (batch, time1): Tensor containing aligner durations vector - - **mask** (batch, time1): Tensor containing indices to be masked - Returns: - - **pitch prediction** (batch, 1, time1): Tensor produced by pitch predictor - - **pitch embedding** (batch, channels, time1): Tensor produced pitch pitch adaptor - - **average pitch target(train only)** (batch, 1, time1): Tensor produced after averaging over durations - """ - - def __init__( - self, - n_input: int, - n_hidden: int, - n_out: int, - kernel_size: int, - emb_kernel_size: int, - p_dropout: float, - lrelu_slope: float, - ): - super().__init__() - self.pitch_predictor = VariancePredictor( - channels_in=n_input, - channels=n_hidden, - channels_out=n_out, - kernel_size=kernel_size, - p_dropout=p_dropout, - lrelu_slope=lrelu_slope, - ) - self.pitch_emb = nn.Conv1d( - 1, - n_input, - kernel_size=emb_kernel_size, - padding=int((emb_kernel_size - 1) / 2), - ) - - def get_pitch_embedding_train( - self, x: torch.Tensor, target: torch.Tensor, dr: torch.IntTensor, mask: torch.Tensor - ) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: - """ - Shapes: - x: :math: `[B, T_src, C]` - target: :math: `[B, 1, T_max2]` - dr: :math: `[B, T_src]` - mask: :math: `[B, T_src]` - """ - pitch_pred = self.pitch_predictor(x, mask) # [B, T_src, C_hidden], [B, T_src] --> [B, T_src] - pitch_pred.unsqueeze_(1) # --> [B, 1, T_src] - avg_pitch_target = average_over_durations(target, dr) # [B, 1, T_mel], [B, T_src] --> [B, 1, T_src] - pitch_emb = self.pitch_emb(avg_pitch_target) # [B, 1, T_src] --> [B, C_hidden, T_src] - return pitch_pred, avg_pitch_target, pitch_emb - - def get_pitch_embedding( - self, - x: torch.Tensor, - mask: torch.Tensor, - pitch_transform: Callable, - pitch_mean: torch.Tensor, - pitch_std: torch.Tensor, - ) -> torch.Tensor: - pitch_pred = self.pitch_predictor(x, mask) - if pitch_transform is not None: - pitch_pred = pitch_transform(pitch_pred, (~mask).sum(), pitch_mean, pitch_std) - pitch_pred.unsqueeze_(1) - pitch_emb_pred = self.pitch_emb(pitch_pred) - return pitch_emb_pred, pitch_pred diff --git a/TTS/tts/layers/delightful_tts/variance_predictor.py b/TTS/tts/layers/delightful_tts/variance_predictor.py deleted file mode 100644 index 68303a1bd1148089eab7ee8be12d4f37ddf420e1..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/delightful_tts/variance_predictor.py +++ /dev/null @@ -1,68 +0,0 @@ -import torch -import torch.nn as nn # pylint: disable=consider-using-from-import - -from TTS.tts.layers.delightful_tts.conv_layers import ConvTransposed - - -class VariancePredictor(nn.Module): - """ - Network is 2-layer 1D convolutions with leaky relu activation and then - followed by layer normalization then a dropout layer and finally an - extra linear layer to project the hidden states into the output sequence. - - Args: - channels_in (int): Number of in channels for conv layers. - channels_out (int): Number of out channels for the last linear layer. - kernel_size (int): Size the kernel for the conv layers. - p_dropout (float): Probability of dropout. - lrelu_slope (float): Slope for the leaky relu. - - Inputs: inputs, mask - - **inputs** (batch, time, dim): Tensor containing input vector - - **mask** (batch, time): Tensor containing indices to be masked - Returns: - - **outputs** (batch, time): Tensor produced by last linear layer. - """ - - def __init__( - self, channels_in: int, channels: int, channels_out: int, kernel_size: int, p_dropout: float, lrelu_slope: float - ): - super().__init__() - - self.layers = nn.ModuleList( - [ - ConvTransposed( - channels_in, - channels, - kernel_size=kernel_size, - padding=(kernel_size - 1) // 2, - ), - nn.LeakyReLU(lrelu_slope), - nn.LayerNorm(channels), - nn.Dropout(p_dropout), - ConvTransposed( - channels, - channels, - kernel_size=kernel_size, - padding=(kernel_size - 1) // 2, - ), - nn.LeakyReLU(lrelu_slope), - nn.LayerNorm(channels), - nn.Dropout(p_dropout), - ] - ) - - self.linear_layer = nn.Linear(channels, channels_out) - - def forward(self, x: torch.Tensor, mask: torch.Tensor) -> torch.Tensor: - """ - Shapes: - x: :math: `[B, T_src, C]` - mask: :math: `[B, T_src]` - """ - for layer in self.layers: - x = layer(x) - x = self.linear_layer(x) - x = x.squeeze(-1) - x = x.masked_fill(mask, 0.0) - return x diff --git a/TTS/tts/layers/feed_forward/__init__.py b/TTS/tts/layers/feed_forward/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/layers/feed_forward/decoder.py b/TTS/tts/layers/feed_forward/decoder.py deleted file mode 100644 index 0376e2e3926e65254c3a81d085d48c97df033958..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/feed_forward/decoder.py +++ /dev/null @@ -1,228 +0,0 @@ -import torch -from torch import nn - -from TTS.tts.layers.generic.res_conv_bn import Conv1dBN, Conv1dBNBlock, ResidualConv1dBNBlock -from TTS.tts.layers.generic.transformer import FFTransformerBlock -from TTS.tts.layers.generic.wavenet import WNBlocks -from TTS.tts.layers.glow_tts.transformer import RelativePositionTransformer - - -class WaveNetDecoder(nn.Module): - """WaveNet based decoder with a prenet and a postnet. - - prenet: conv1d_1x1 - postnet: 3 x [conv1d_1x1 -> relu] -> conv1d_1x1 - - TODO: Integrate speaker conditioning vector. - - Note: - default wavenet parameters; - params = { - "num_blocks": 12, - "hidden_channels":192, - "kernel_size": 5, - "dilation_rate": 1, - "num_layers": 4, - "dropout_p": 0.05 - } - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of hidden channels for prenet and postnet. - params (dict): dictionary for residual convolutional blocks. - """ - - def __init__(self, in_channels, out_channels, hidden_channels, c_in_channels, params): - super().__init__() - # prenet - self.prenet = torch.nn.Conv1d(in_channels, params["hidden_channels"], 1) - # wavenet layers - self.wn = WNBlocks(params["hidden_channels"], c_in_channels=c_in_channels, **params) - # postnet - self.postnet = [ - torch.nn.Conv1d(params["hidden_channels"], hidden_channels, 1), - torch.nn.ReLU(), - torch.nn.Conv1d(hidden_channels, hidden_channels, 1), - torch.nn.ReLU(), - torch.nn.Conv1d(hidden_channels, hidden_channels, 1), - torch.nn.ReLU(), - torch.nn.Conv1d(hidden_channels, out_channels, 1), - ] - self.postnet = nn.Sequential(*self.postnet) - - def forward(self, x, x_mask=None, g=None): - x = self.prenet(x) * x_mask - x = self.wn(x, x_mask, g) - o = self.postnet(x) * x_mask - return o - - -class RelativePositionTransformerDecoder(nn.Module): - """Decoder with Relative Positional Transformer. - - Note: - Default params - params={ - 'hidden_channels_ffn': 128, - 'num_heads': 2, - "kernel_size": 3, - "dropout_p": 0.1, - "num_layers": 8, - "rel_attn_window_size": 4, - "input_length": None - } - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of hidden channels including Transformer layers. - params (dict): dictionary for residual convolutional blocks. - """ - - def __init__(self, in_channels, out_channels, hidden_channels, params): - super().__init__() - self.prenet = Conv1dBN(in_channels, hidden_channels, 1, 1) - self.rel_pos_transformer = RelativePositionTransformer(in_channels, out_channels, hidden_channels, **params) - - def forward(self, x, x_mask=None, g=None): # pylint: disable=unused-argument - o = self.prenet(x) * x_mask - o = self.rel_pos_transformer(o, x_mask) - return o - - -class FFTransformerDecoder(nn.Module): - """Decoder with FeedForwardTransformer. - - Default params - params={ - 'hidden_channels_ffn': 1024, - 'num_heads': 2, - "dropout_p": 0.1, - "num_layers": 6, - } - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of hidden channels including Transformer layers. - params (dict): dictionary for residual convolutional blocks. - """ - - def __init__(self, in_channels, out_channels, params): - super().__init__() - self.transformer_block = FFTransformerBlock(in_channels, **params) - self.postnet = nn.Conv1d(in_channels, out_channels, 1) - - def forward(self, x, x_mask=None, g=None): # pylint: disable=unused-argument - # TODO: handle multi-speaker - x_mask = 1 if x_mask is None else x_mask - o = self.transformer_block(x) * x_mask - o = self.postnet(o) * x_mask - return o - - -class ResidualConv1dBNDecoder(nn.Module): - """Residual Convolutional Decoder as in the original Speedy Speech paper - - TODO: Integrate speaker conditioning vector. - - Note: - Default params - params = { - "kernel_size": 4, - "dilations": 4 * [1, 2, 4, 8] + [1], - "num_conv_blocks": 2, - "num_res_blocks": 17 - } - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of hidden channels including ResidualConv1dBNBlock layers. - params (dict): dictionary for residual convolutional blocks. - """ - - def __init__(self, in_channels, out_channels, hidden_channels, params): - super().__init__() - self.res_conv_block = ResidualConv1dBNBlock(in_channels, hidden_channels, hidden_channels, **params) - self.post_conv = nn.Conv1d(hidden_channels, hidden_channels, 1) - self.postnet = nn.Sequential( - Conv1dBNBlock( - hidden_channels, hidden_channels, hidden_channels, params["kernel_size"], 1, num_conv_blocks=2 - ), - nn.Conv1d(hidden_channels, out_channels, 1), - ) - - def forward(self, x, x_mask=None, g=None): # pylint: disable=unused-argument - o = self.res_conv_block(x, x_mask) - o = self.post_conv(o) + x - return self.postnet(o) * x_mask - - -class Decoder(nn.Module): - """Decodes the expanded phoneme encoding into spectrograms - Args: - out_channels (int): number of output channels. - in_hidden_channels (int): input and hidden channels. Model keeps the input channels for the intermediate layers. - decoder_type (str): decoder layer types. 'transformers' or 'residual_conv_bn'. Default 'residual_conv_bn'. - decoder_params (dict): model parameters for specified decoder type. - c_in_channels (int): number of channels for conditional input. - - Shapes: - - input: (B, C, T) - """ - - # pylint: disable=dangerous-default-value - def __init__( - self, - out_channels, - in_hidden_channels, - decoder_type="residual_conv_bn", - decoder_params={ - "kernel_size": 4, - "dilations": 4 * [1, 2, 4, 8] + [1], - "num_conv_blocks": 2, - "num_res_blocks": 17, - }, - c_in_channels=0, - ): - super().__init__() - - if decoder_type.lower() == "relative_position_transformer": - self.decoder = RelativePositionTransformerDecoder( - in_channels=in_hidden_channels, - out_channels=out_channels, - hidden_channels=in_hidden_channels, - params=decoder_params, - ) - elif decoder_type.lower() == "residual_conv_bn": - self.decoder = ResidualConv1dBNDecoder( - in_channels=in_hidden_channels, - out_channels=out_channels, - hidden_channels=in_hidden_channels, - params=decoder_params, - ) - elif decoder_type.lower() == "wavenet": - self.decoder = WaveNetDecoder( - in_channels=in_hidden_channels, - out_channels=out_channels, - hidden_channels=in_hidden_channels, - c_in_channels=c_in_channels, - params=decoder_params, - ) - elif decoder_type.lower() == "fftransformer": - self.decoder = FFTransformerDecoder(in_hidden_channels, out_channels, decoder_params) - else: - raise ValueError(f"[!] Unknown decoder type - {decoder_type}") - - def forward(self, x, x_mask, g=None): # pylint: disable=unused-argument - """ - Args: - x: [B, C, T] - x_mask: [B, 1, T] - g: [B, C_g, 1] - """ - # TODO: implement multi-speaker - o = self.decoder(x, x_mask, g) - return o diff --git a/TTS/tts/layers/feed_forward/duration_predictor.py b/TTS/tts/layers/feed_forward/duration_predictor.py deleted file mode 100644 index 4422648f4337e48aab39671836fcfb5e12ff4be7..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/feed_forward/duration_predictor.py +++ /dev/null @@ -1,41 +0,0 @@ -from torch import nn - -from TTS.tts.layers.generic.res_conv_bn import Conv1dBN - - -class DurationPredictor(nn.Module): - """Speedy Speech duration predictor model. - Predicts phoneme durations from encoder outputs. - - Note: - Outputs interpreted as log(durations) - To get actual durations, do exp transformation - - conv_BN_4x1 -> conv_BN_3x1 -> conv_BN_1x1 -> conv_1x1 - - Args: - hidden_channels (int): number of channels in the inner layers. - """ - - def __init__(self, hidden_channels): - super().__init__() - - self.layers = nn.ModuleList( - [ - Conv1dBN(hidden_channels, hidden_channels, 4, 1), - Conv1dBN(hidden_channels, hidden_channels, 3, 1), - Conv1dBN(hidden_channels, hidden_channels, 1, 1), - nn.Conv1d(hidden_channels, 1, 1), - ] - ) - - def forward(self, x, x_mask): - """ - Shapes: - x: [B, C, T] - x_mask: [B, 1, T] - """ - o = x - for layer in self.layers: - o = layer(o) * x_mask - return o diff --git a/TTS/tts/layers/feed_forward/encoder.py b/TTS/tts/layers/feed_forward/encoder.py deleted file mode 100644 index caf939ffc73fedac299228e090b2df3bb4cc553c..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/feed_forward/encoder.py +++ /dev/null @@ -1,162 +0,0 @@ -from torch import nn - -from TTS.tts.layers.generic.res_conv_bn import ResidualConv1dBNBlock -from TTS.tts.layers.generic.transformer import FFTransformerBlock -from TTS.tts.layers.glow_tts.transformer import RelativePositionTransformer - - -class RelativePositionTransformerEncoder(nn.Module): - """Speedy speech encoder built on Transformer with Relative Position encoding. - - TODO: Integrate speaker conditioning vector. - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of hidden channels - params (dict): dictionary for residual convolutional blocks. - """ - - def __init__(self, in_channels, out_channels, hidden_channels, params): - super().__init__() - self.prenet = ResidualConv1dBNBlock( - in_channels, - hidden_channels, - hidden_channels, - kernel_size=5, - num_res_blocks=3, - num_conv_blocks=1, - dilations=[1, 1, 1], - ) - self.rel_pos_transformer = RelativePositionTransformer(hidden_channels, out_channels, hidden_channels, **params) - - def forward(self, x, x_mask=None, g=None): # pylint: disable=unused-argument - if x_mask is None: - x_mask = 1 - o = self.prenet(x) * x_mask - o = self.rel_pos_transformer(o, x_mask) - return o - - -class ResidualConv1dBNEncoder(nn.Module): - """Residual Convolutional Encoder as in the original Speedy Speech paper - - TODO: Integrate speaker conditioning vector. - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of hidden channels - params (dict): dictionary for residual convolutional blocks. - """ - - def __init__(self, in_channels, out_channels, hidden_channels, params): - super().__init__() - self.prenet = nn.Sequential(nn.Conv1d(in_channels, hidden_channels, 1), nn.ReLU()) - self.res_conv_block = ResidualConv1dBNBlock(hidden_channels, hidden_channels, hidden_channels, **params) - - self.postnet = nn.Sequential( - *[ - nn.Conv1d(hidden_channels, hidden_channels, 1), - nn.ReLU(), - nn.BatchNorm1d(hidden_channels), - nn.Conv1d(hidden_channels, out_channels, 1), - ] - ) - - def forward(self, x, x_mask=None, g=None): # pylint: disable=unused-argument - if x_mask is None: - x_mask = 1 - o = self.prenet(x) * x_mask - o = self.res_conv_block(o, x_mask) - o = self.postnet(o + x) * x_mask - return o * x_mask - - -class Encoder(nn.Module): - # pylint: disable=dangerous-default-value - """Factory class for Speedy Speech encoder enables different encoder types internally. - - Args: - num_chars (int): number of characters. - out_channels (int): number of output channels. - in_hidden_channels (int): input and hidden channels. Model keeps the input channels for the intermediate layers. - encoder_type (str): encoder layer types. 'transformers' or 'residual_conv_bn'. Default 'residual_conv_bn'. - encoder_params (dict): model parameters for specified encoder type. - c_in_channels (int): number of channels for conditional input. - - Note: - Default encoder_params to be set in config.json... - - ```python - # for 'relative_position_transformer' - encoder_params={ - 'hidden_channels_ffn': 128, - 'num_heads': 2, - "kernel_size": 3, - "dropout_p": 0.1, - "num_layers": 6, - "rel_attn_window_size": 4, - "input_length": None - }, - - # for 'residual_conv_bn' - encoder_params = { - "kernel_size": 4, - "dilations": 4 * [1, 2, 4] + [1], - "num_conv_blocks": 2, - "num_res_blocks": 13 - } - - # for 'fftransformer' - encoder_params = { - "hidden_channels_ffn": 1024 , - "num_heads": 2, - "num_layers": 6, - "dropout_p": 0.1 - } - ``` - """ - - def __init__( - self, - in_hidden_channels, - out_channels, - encoder_type="residual_conv_bn", - encoder_params={"kernel_size": 4, "dilations": 4 * [1, 2, 4] + [1], "num_conv_blocks": 2, "num_res_blocks": 13}, - c_in_channels=0, - ): - super().__init__() - self.out_channels = out_channels - self.in_channels = in_hidden_channels - self.hidden_channels = in_hidden_channels - self.encoder_type = encoder_type - self.c_in_channels = c_in_channels - - # init encoder - if encoder_type.lower() == "relative_position_transformer": - # text encoder - # pylint: disable=unexpected-keyword-arg - self.encoder = RelativePositionTransformerEncoder( - in_hidden_channels, out_channels, in_hidden_channels, encoder_params - ) - elif encoder_type.lower() == "residual_conv_bn": - self.encoder = ResidualConv1dBNEncoder(in_hidden_channels, out_channels, in_hidden_channels, encoder_params) - elif encoder_type.lower() == "fftransformer": - assert ( - in_hidden_channels == out_channels - ), "[!] must be `in_channels` == `out_channels` when encoder type is 'fftransformer'" - # pylint: disable=unexpected-keyword-arg - self.encoder = FFTransformerBlock(in_hidden_channels, **encoder_params) - else: - raise NotImplementedError(" [!] unknown encoder type.") - - def forward(self, x, x_mask, g=None): # pylint: disable=unused-argument - """ - Shapes: - x: [B, C, T] - x_mask: [B, 1, T] - g: [B, C, 1] - """ - o = self.encoder(x, x_mask) - return o * x_mask diff --git a/TTS/tts/layers/generic/__init__.py b/TTS/tts/layers/generic/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/layers/generic/aligner.py b/TTS/tts/layers/generic/aligner.py deleted file mode 100644 index baa6f0e9c4879207695b2de1193c9147b5a3fa4b..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/generic/aligner.py +++ /dev/null @@ -1,92 +0,0 @@ -from typing import Tuple - -import torch -from torch import nn - - -class AlignmentNetwork(torch.nn.Module): - """Aligner Network for learning alignment between the input text and the model output with Gaussian Attention. - - :: - - query -> conv1d -> relu -> conv1d -> relu -> conv1d -> L2_dist -> softmax -> alignment - key -> conv1d -> relu -> conv1d -----------------------^ - - Args: - in_query_channels (int): Number of channels in the query network. Defaults to 80. - in_key_channels (int): Number of channels in the key network. Defaults to 512. - attn_channels (int): Number of inner channels in the attention layers. Defaults to 80. - temperature (float): Temperature for the softmax. Defaults to 0.0005. - """ - - def __init__( - self, - in_query_channels=80, - in_key_channels=512, - attn_channels=80, - temperature=0.0005, - ): - super().__init__() - self.temperature = temperature - self.softmax = torch.nn.Softmax(dim=3) - self.log_softmax = torch.nn.LogSoftmax(dim=3) - - self.key_layer = nn.Sequential( - nn.Conv1d( - in_key_channels, - in_key_channels * 2, - kernel_size=3, - padding=1, - bias=True, - ), - torch.nn.ReLU(), - nn.Conv1d(in_key_channels * 2, attn_channels, kernel_size=1, padding=0, bias=True), - ) - - self.query_layer = nn.Sequential( - nn.Conv1d( - in_query_channels, - in_query_channels * 2, - kernel_size=3, - padding=1, - bias=True, - ), - torch.nn.ReLU(), - nn.Conv1d(in_query_channels * 2, in_query_channels, kernel_size=1, padding=0, bias=True), - torch.nn.ReLU(), - nn.Conv1d(in_query_channels, attn_channels, kernel_size=1, padding=0, bias=True), - ) - - self.init_layers() - - def init_layers(self): - torch.nn.init.xavier_uniform_(self.key_layer[0].weight, gain=torch.nn.init.calculate_gain("relu")) - torch.nn.init.xavier_uniform_(self.key_layer[2].weight, gain=torch.nn.init.calculate_gain("linear")) - torch.nn.init.xavier_uniform_(self.query_layer[0].weight, gain=torch.nn.init.calculate_gain("relu")) - torch.nn.init.xavier_uniform_(self.query_layer[2].weight, gain=torch.nn.init.calculate_gain("linear")) - torch.nn.init.xavier_uniform_(self.query_layer[4].weight, gain=torch.nn.init.calculate_gain("linear")) - - def forward( - self, queries: torch.tensor, keys: torch.tensor, mask: torch.tensor = None, attn_prior: torch.tensor = None - ) -> Tuple[torch.tensor, torch.tensor]: - """Forward pass of the aligner encoder. - Shapes: - - queries: :math:`[B, C, T_de]` - - keys: :math:`[B, C_emb, T_en]` - - mask: :math:`[B, T_de]` - Output: - attn (torch.tensor): :math:`[B, 1, T_en, T_de]` soft attention mask. - attn_logp (torch.tensor): :math:`[ßB, 1, T_en , T_de]` log probabilities. - """ - key_out = self.key_layer(keys) - query_out = self.query_layer(queries) - attn_factor = (query_out[:, :, :, None] - key_out[:, :, None]) ** 2 - attn_logp = -self.temperature * attn_factor.sum(1, keepdim=True) - if attn_prior is not None: - attn_logp = self.log_softmax(attn_logp) + torch.log(attn_prior[:, None] + 1e-8) - - if mask is not None: - attn_logp.data.masked_fill_(~mask.bool().unsqueeze(2), -float("inf")) - - attn = self.softmax(attn_logp) - return attn, attn_logp diff --git a/TTS/tts/layers/generic/gated_conv.py b/TTS/tts/layers/generic/gated_conv.py deleted file mode 100644 index 9a29c4499f970db538a4b99c3c05cba22576195f..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/generic/gated_conv.py +++ /dev/null @@ -1,37 +0,0 @@ -from torch import nn - -from .normalization import LayerNorm - - -class GatedConvBlock(nn.Module): - """Gated convolutional block as in https://arxiv.org/pdf/1612.08083.pdf - Args: - in_out_channels (int): number of input/output channels. - kernel_size (int): convolution kernel size. - dropout_p (float): dropout rate. - """ - - def __init__(self, in_out_channels, kernel_size, dropout_p, num_layers): - super().__init__() - # class arguments - self.dropout_p = dropout_p - self.num_layers = num_layers - # define layers - self.conv_layers = nn.ModuleList() - self.norm_layers = nn.ModuleList() - self.layers = nn.ModuleList() - for _ in range(num_layers): - self.conv_layers += [nn.Conv1d(in_out_channels, 2 * in_out_channels, kernel_size, padding=kernel_size // 2)] - self.norm_layers += [LayerNorm(2 * in_out_channels)] - - def forward(self, x, x_mask): - o = x - res = x - for idx in range(self.num_layers): - o = nn.functional.dropout(o, p=self.dropout_p, training=self.training) - o = self.conv_layers[idx](o * x_mask) - o = self.norm_layers[idx](o) - o = nn.functional.glu(o, dim=1) - o = res + o - res = o - return o diff --git a/TTS/tts/layers/generic/normalization.py b/TTS/tts/layers/generic/normalization.py deleted file mode 100644 index c0270e405e4246e47b7bc0787e4cd4b069533f92..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/generic/normalization.py +++ /dev/null @@ -1,123 +0,0 @@ -import torch -from torch import nn - - -class LayerNorm(nn.Module): - def __init__(self, channels, eps=1e-4): - """Layer norm for the 2nd dimension of the input. - Args: - channels (int): number of channels (2nd dimension) of the input. - eps (float): to prevent 0 division - - Shapes: - - input: (B, C, T) - - output: (B, C, T) - """ - super().__init__() - self.channels = channels - self.eps = eps - - self.gamma = nn.Parameter(torch.ones(1, channels, 1) * 0.1) - self.beta = nn.Parameter(torch.zeros(1, channels, 1)) - - def forward(self, x): - mean = torch.mean(x, 1, keepdim=True) - variance = torch.mean((x - mean) ** 2, 1, keepdim=True) - x = (x - mean) * torch.rsqrt(variance + self.eps) - x = x * self.gamma + self.beta - return x - - -class LayerNorm2(nn.Module): - """Layer norm for the 2nd dimension of the input using torch primitive. - Args: - channels (int): number of channels (2nd dimension) of the input. - eps (float): to prevent 0 division - - Shapes: - - input: (B, C, T) - - output: (B, C, T) - """ - - def __init__(self, channels, eps=1e-5): - super().__init__() - self.channels = channels - self.eps = eps - - self.gamma = nn.Parameter(torch.ones(channels)) - self.beta = nn.Parameter(torch.zeros(channels)) - - def forward(self, x): - x = x.transpose(1, -1) - x = torch.nn.functional.layer_norm(x, (self.channels,), self.gamma, self.beta, self.eps) - return x.transpose(1, -1) - - -class TemporalBatchNorm1d(nn.BatchNorm1d): - """Normalize each channel separately over time and batch.""" - - def __init__(self, channels, affine=True, track_running_stats=True, momentum=0.1): - super().__init__(channels, affine=affine, track_running_stats=track_running_stats, momentum=momentum) - - def forward(self, x): - return super().forward(x.transpose(2, 1)).transpose(2, 1) - - -class ActNorm(nn.Module): - """Activation Normalization bijector as an alternative to Batch Norm. It computes - mean and std from a sample data in advance and it uses these values - for normalization at training. - - Args: - channels (int): input channels. - ddi (False): data depended initialization flag. - - Shapes: - - inputs: (B, C, T) - - outputs: (B, C, T) - """ - - def __init__(self, channels, ddi=False, **kwargs): # pylint: disable=unused-argument - super().__init__() - self.channels = channels - self.initialized = not ddi - - self.logs = nn.Parameter(torch.zeros(1, channels, 1)) - self.bias = nn.Parameter(torch.zeros(1, channels, 1)) - - def forward(self, x, x_mask=None, reverse=False, **kwargs): # pylint: disable=unused-argument - if x_mask is None: - x_mask = torch.ones(x.size(0), 1, x.size(2)).to(device=x.device, dtype=x.dtype) - x_len = torch.sum(x_mask, [1, 2]) - if not self.initialized: - self.initialize(x, x_mask) - self.initialized = True - - if reverse: - z = (x - self.bias) * torch.exp(-self.logs) * x_mask - logdet = None - else: - z = (self.bias + torch.exp(self.logs) * x) * x_mask - logdet = torch.sum(self.logs) * x_len # [b] - - return z, logdet - - def store_inverse(self): - pass - - def set_ddi(self, ddi): - self.initialized = not ddi - - def initialize(self, x, x_mask): - with torch.no_grad(): - denom = torch.sum(x_mask, [0, 2]) - m = torch.sum(x * x_mask, [0, 2]) / denom - m_sq = torch.sum(x * x * x_mask, [0, 2]) / denom - v = m_sq - (m**2) - logs = 0.5 * torch.log(torch.clamp_min(v, 1e-6)) - - bias_init = (-m * torch.exp(-logs)).view(*self.bias.shape).to(dtype=self.bias.dtype) - logs_init = (-logs).view(*self.logs.shape).to(dtype=self.logs.dtype) - - self.bias.data.copy_(bias_init) - self.logs.data.copy_(logs_init) diff --git a/TTS/tts/layers/generic/pos_encoding.py b/TTS/tts/layers/generic/pos_encoding.py deleted file mode 100644 index 913add0d14332bf70c3ecd2a95869d0071310bd4..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/generic/pos_encoding.py +++ /dev/null @@ -1,69 +0,0 @@ -import math - -import torch -from torch import nn - - -class PositionalEncoding(nn.Module): - """Sinusoidal positional encoding for non-recurrent neural networks. - Implementation based on "Attention Is All You Need" - - Args: - channels (int): embedding size - dropout_p (float): dropout rate applied to the output. - max_len (int): maximum sequence length. - use_scale (bool): whether to use a learnable scaling coefficient. - """ - - def __init__(self, channels, dropout_p=0.0, max_len=5000, use_scale=False): - super().__init__() - if channels % 2 != 0: - raise ValueError( - "Cannot use sin/cos positional encoding with " "odd channels (got channels={:d})".format(channels) - ) - self.use_scale = use_scale - if use_scale: - self.scale = torch.nn.Parameter(torch.ones(1)) - pe = torch.zeros(max_len, channels) - position = torch.arange(0, max_len).unsqueeze(1) - div_term = torch.pow(10000, torch.arange(0, channels, 2).float() / channels) - pe[:, 0::2] = torch.sin(position.float() * div_term) - pe[:, 1::2] = torch.cos(position.float() * div_term) - pe = pe.unsqueeze(0).transpose(1, 2) - self.register_buffer("pe", pe) - if dropout_p > 0: - self.dropout = nn.Dropout(p=dropout_p) - self.channels = channels - - def forward(self, x, mask=None, first_idx=None, last_idx=None): - """ - Shapes: - x: [B, C, T] - mask: [B, 1, T] - first_idx: int - last_idx: int - """ - - x = x * math.sqrt(self.channels) - if first_idx is None: - if self.pe.size(2) < x.size(2): - raise RuntimeError( - f"Sequence is {x.size(2)} but PositionalEncoding is" - f" limited to {self.pe.size(2)}. See max_len argument." - ) - if mask is not None: - pos_enc = self.pe[:, :, : x.size(2)] * mask - else: - pos_enc = self.pe[:, :, : x.size(2)] - if self.use_scale: - x = x + self.scale * pos_enc - else: - x = x + pos_enc - else: - if self.use_scale: - x = x + self.scale * self.pe[:, :, first_idx:last_idx] - else: - x = x + self.pe[:, :, first_idx:last_idx] - if hasattr(self, "dropout"): - x = self.dropout(x) - return x diff --git a/TTS/tts/layers/generic/res_conv_bn.py b/TTS/tts/layers/generic/res_conv_bn.py deleted file mode 100644 index 4beda291aa15398024b5b16cd6bf12b88898a0a9..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/generic/res_conv_bn.py +++ /dev/null @@ -1,127 +0,0 @@ -from torch import nn - - -class ZeroTemporalPad(nn.Module): - """Pad sequences to equal lentgh in the temporal dimension""" - - def __init__(self, kernel_size, dilation): - super().__init__() - total_pad = dilation * (kernel_size - 1) - begin = total_pad // 2 - end = total_pad - begin - self.pad_layer = nn.ZeroPad2d((0, 0, begin, end)) - - def forward(self, x): - return self.pad_layer(x) - - -class Conv1dBN(nn.Module): - """1d convolutional with batch norm. - conv1d -> relu -> BN blocks. - - Note: - Batch normalization is applied after ReLU regarding the original implementation. - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - kernel_size (int): kernel size for convolutional filters. - dilation (int): dilation for convolution layers. - """ - - def __init__(self, in_channels, out_channels, kernel_size, dilation): - super().__init__() - padding = dilation * (kernel_size - 1) - pad_s = padding // 2 - pad_e = padding - pad_s - self.conv1d = nn.Conv1d(in_channels, out_channels, kernel_size, dilation=dilation) - self.pad = nn.ZeroPad2d((pad_s, pad_e, 0, 0)) # uneven left and right padding - self.norm = nn.BatchNorm1d(out_channels) - - def forward(self, x): - o = self.conv1d(x) - o = self.pad(o) - o = nn.functional.relu(o) - o = self.norm(o) - return o - - -class Conv1dBNBlock(nn.Module): - """1d convolutional block with batch norm. It is a set of conv1d -> relu -> BN blocks. - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of inner convolution channels. - kernel_size (int): kernel size for convolutional filters. - dilation (int): dilation for convolution layers. - num_conv_blocks (int, optional): number of convolutional blocks. Defaults to 2. - """ - - def __init__(self, in_channels, out_channels, hidden_channels, kernel_size, dilation, num_conv_blocks=2): - super().__init__() - self.conv_bn_blocks = [] - for idx in range(num_conv_blocks): - layer = Conv1dBN( - in_channels if idx == 0 else hidden_channels, - out_channels if idx == (num_conv_blocks - 1) else hidden_channels, - kernel_size, - dilation, - ) - self.conv_bn_blocks.append(layer) - self.conv_bn_blocks = nn.Sequential(*self.conv_bn_blocks) - - def forward(self, x): - """ - Shapes: - x: (B, D, T) - """ - return self.conv_bn_blocks(x) - - -class ResidualConv1dBNBlock(nn.Module): - """Residual Convolutional Blocks with BN - Each block has 'num_conv_block' conv layers and 'num_res_blocks' such blocks are connected - with residual connections. - - conv_block = (conv1d -> relu -> bn) x 'num_conv_blocks' - residuak_conv_block = (x -> conv_block -> + ->) x 'num_res_blocks' - ' - - - - - - - - - ^ - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - hidden_channels (int): number of inner convolution channels. - kernel_size (int): kernel size for convolutional filters. - dilations (list): dilations for each convolution layer. - num_res_blocks (int, optional): number of residual blocks. Defaults to 13. - num_conv_blocks (int, optional): number of convolutional blocks in each residual block. Defaults to 2. - """ - - def __init__( - self, in_channels, out_channels, hidden_channels, kernel_size, dilations, num_res_blocks=13, num_conv_blocks=2 - ): - super().__init__() - assert len(dilations) == num_res_blocks - self.res_blocks = nn.ModuleList() - for idx, dilation in enumerate(dilations): - block = Conv1dBNBlock( - in_channels if idx == 0 else hidden_channels, - out_channels if (idx + 1) == len(dilations) else hidden_channels, - hidden_channels, - kernel_size, - dilation, - num_conv_blocks, - ) - self.res_blocks.append(block) - - def forward(self, x, x_mask=None): - if x_mask is None: - x_mask = 1.0 - o = x * x_mask - for block in self.res_blocks: - res = o - o = block(o) - o = o + res - if x_mask is not None: - o = o * x_mask - return o diff --git a/TTS/tts/layers/generic/time_depth_sep_conv.py b/TTS/tts/layers/generic/time_depth_sep_conv.py deleted file mode 100644 index 186cea02e75e156c40923de91086c369a9ea02ee..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/generic/time_depth_sep_conv.py +++ /dev/null @@ -1,84 +0,0 @@ -import torch -from torch import nn - - -class TimeDepthSeparableConv(nn.Module): - """Time depth separable convolution as in https://arxiv.org/pdf/1904.02619.pdf - It shows competative results with less computation and memory footprint.""" - - def __init__(self, in_channels, hid_channels, out_channels, kernel_size, bias=True): - super().__init__() - - self.in_channels = in_channels - self.out_channels = out_channels - self.hid_channels = hid_channels - self.kernel_size = kernel_size - - self.time_conv = nn.Conv1d( - in_channels, - 2 * hid_channels, - kernel_size=1, - stride=1, - padding=0, - bias=bias, - ) - self.norm1 = nn.BatchNorm1d(2 * hid_channels) - self.depth_conv = nn.Conv1d( - hid_channels, - hid_channels, - kernel_size, - stride=1, - padding=(kernel_size - 1) // 2, - groups=hid_channels, - bias=bias, - ) - self.norm2 = nn.BatchNorm1d(hid_channels) - self.time_conv2 = nn.Conv1d( - hid_channels, - out_channels, - kernel_size=1, - stride=1, - padding=0, - bias=bias, - ) - self.norm3 = nn.BatchNorm1d(out_channels) - - def forward(self, x): - x_res = x - x = self.time_conv(x) - x = self.norm1(x) - x = nn.functional.glu(x, dim=1) - x = self.depth_conv(x) - x = self.norm2(x) - x = x * torch.sigmoid(x) - x = self.time_conv2(x) - x = self.norm3(x) - x = x_res + x - return x - - -class TimeDepthSeparableConvBlock(nn.Module): - def __init__(self, in_channels, hid_channels, out_channels, num_layers, kernel_size, bias=True): - super().__init__() - assert (kernel_size - 1) % 2 == 0 - assert num_layers > 1 - - self.layers = nn.ModuleList() - layer = TimeDepthSeparableConv( - in_channels, hid_channels, out_channels if num_layers == 1 else hid_channels, kernel_size, bias - ) - self.layers.append(layer) - for idx in range(num_layers - 1): - layer = TimeDepthSeparableConv( - hid_channels, - hid_channels, - out_channels if (idx + 1) == (num_layers - 1) else hid_channels, - kernel_size, - bias, - ) - self.layers.append(layer) - - def forward(self, x, mask): - for layer in self.layers: - x = layer(x * mask) - return x diff --git a/TTS/tts/layers/generic/transformer.py b/TTS/tts/layers/generic/transformer.py deleted file mode 100644 index 9b7ecee2bacb68cd330e18630531c97bc6f2e6a3..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/generic/transformer.py +++ /dev/null @@ -1,89 +0,0 @@ -import torch -import torch.nn.functional as F -from torch import nn - - -class FFTransformer(nn.Module): - def __init__(self, in_out_channels, num_heads, hidden_channels_ffn=1024, kernel_size_fft=3, dropout_p=0.1): - super().__init__() - self.self_attn = nn.MultiheadAttention(in_out_channels, num_heads, dropout=dropout_p) - - padding = (kernel_size_fft - 1) // 2 - self.conv1 = nn.Conv1d(in_out_channels, hidden_channels_ffn, kernel_size=kernel_size_fft, padding=padding) - self.conv2 = nn.Conv1d(hidden_channels_ffn, in_out_channels, kernel_size=kernel_size_fft, padding=padding) - - self.norm1 = nn.LayerNorm(in_out_channels) - self.norm2 = nn.LayerNorm(in_out_channels) - - self.dropout1 = nn.Dropout(dropout_p) - self.dropout2 = nn.Dropout(dropout_p) - - def forward(self, src, src_mask=None, src_key_padding_mask=None): - """😦 ugly looking with all the transposing""" - src = src.permute(2, 0, 1) - src2, enc_align = self.self_attn(src, src, src, attn_mask=src_mask, key_padding_mask=src_key_padding_mask) - src = src + self.dropout1(src2) - src = self.norm1(src + src2) - # T x B x D -> B x D x T - src = src.permute(1, 2, 0) - src2 = self.conv2(F.relu(self.conv1(src))) - src2 = self.dropout2(src2) - src = src + src2 - src = src.transpose(1, 2) - src = self.norm2(src) - src = src.transpose(1, 2) - return src, enc_align - - -class FFTransformerBlock(nn.Module): - def __init__(self, in_out_channels, num_heads, hidden_channels_ffn, num_layers, dropout_p): - super().__init__() - self.fft_layers = nn.ModuleList( - [ - FFTransformer( - in_out_channels=in_out_channels, - num_heads=num_heads, - hidden_channels_ffn=hidden_channels_ffn, - dropout_p=dropout_p, - ) - for _ in range(num_layers) - ] - ) - - def forward(self, x, mask=None, g=None): # pylint: disable=unused-argument - """ - TODO: handle multi-speaker - Shapes: - - x: :math:`[B, C, T]` - - mask: :math:`[B, 1, T] or [B, T]` - """ - if mask is not None and mask.ndim == 3: - mask = mask.squeeze(1) - # mask is negated, torch uses 1s and 0s reversely. - mask = ~mask.bool() - alignments = [] - for layer in self.fft_layers: - x, align = layer(x, src_key_padding_mask=mask) - alignments.append(align.unsqueeze(1)) - alignments = torch.cat(alignments, 1) - return x - - -class FFTDurationPredictor: - def __init__( - self, in_channels, hidden_channels, num_heads, num_layers, dropout_p=0.1, cond_channels=None - ): # pylint: disable=unused-argument - self.fft = FFTransformerBlock(in_channels, num_heads, hidden_channels, num_layers, dropout_p) - self.proj = nn.Linear(in_channels, 1) - - def forward(self, x, mask=None, g=None): # pylint: disable=unused-argument - """ - Shapes: - - x: :math:`[B, C, T]` - - mask: :math:`[B, 1, T]` - - TODO: Handle the cond input - """ - x = self.fft(x, mask=mask) - x = self.proj(x) - return x diff --git a/TTS/tts/layers/generic/wavenet.py b/TTS/tts/layers/generic/wavenet.py deleted file mode 100644 index bc89da4fbe6b2425f2a39a578b8fad105a18da38..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/generic/wavenet.py +++ /dev/null @@ -1,175 +0,0 @@ -import torch -from torch import nn - - -@torch.jit.script -def fused_add_tanh_sigmoid_multiply(input_a, input_b, n_channels): - n_channels_int = n_channels[0] - in_act = input_a + input_b - t_act = torch.tanh(in_act[:, :n_channels_int, :]) - s_act = torch.sigmoid(in_act[:, n_channels_int:, :]) - acts = t_act * s_act - return acts - - -class WN(torch.nn.Module): - """Wavenet layers with weight norm and no input conditioning. - - |-----------------------------------------------------------------------------| - | |-> tanh -| | - res -|- conv1d(dilation) -> dropout -> + -| * -> conv1d1x1 -> split -|- + -> res - g -------------------------------------| |-> sigmoid -| | - o --------------------------------------------------------------------------- + --------- o - - Args: - in_channels (int): number of input channels. - hidden_channes (int): number of hidden channels. - kernel_size (int): filter kernel size for the first conv layer. - dilation_rate (int): dilations rate to increase dilation per layer. - If it is 2, dilations are 1, 2, 4, 8 for the next 4 layers. - num_layers (int): number of wavenet layers. - c_in_channels (int): number of channels of conditioning input. - dropout_p (float): dropout rate. - weight_norm (bool): enable/disable weight norm for convolution layers. - """ - - def __init__( - self, - in_channels, - hidden_channels, - kernel_size, - dilation_rate, - num_layers, - c_in_channels=0, - dropout_p=0, - weight_norm=True, - ): - super().__init__() - assert kernel_size % 2 == 1 - assert hidden_channels % 2 == 0 - self.in_channels = in_channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.num_layers = num_layers - self.c_in_channels = c_in_channels - self.dropout_p = dropout_p - - self.in_layers = torch.nn.ModuleList() - self.res_skip_layers = torch.nn.ModuleList() - self.dropout = nn.Dropout(dropout_p) - - # init conditioning layer - if c_in_channels > 0: - cond_layer = torch.nn.Conv1d(c_in_channels, 2 * hidden_channels * num_layers, 1) - self.cond_layer = torch.nn.utils.weight_norm(cond_layer, name="weight") - # intermediate layers - for i in range(num_layers): - dilation = dilation_rate**i - padding = int((kernel_size * dilation - dilation) / 2) - if i == 0: - in_layer = torch.nn.Conv1d( - in_channels, 2 * hidden_channels, kernel_size, dilation=dilation, padding=padding - ) - else: - in_layer = torch.nn.Conv1d( - hidden_channels, 2 * hidden_channels, kernel_size, dilation=dilation, padding=padding - ) - in_layer = torch.nn.utils.weight_norm(in_layer, name="weight") - self.in_layers.append(in_layer) - - if i < num_layers - 1: - res_skip_channels = 2 * hidden_channels - else: - res_skip_channels = hidden_channels - - res_skip_layer = torch.nn.Conv1d(hidden_channels, res_skip_channels, 1) - res_skip_layer = torch.nn.utils.weight_norm(res_skip_layer, name="weight") - self.res_skip_layers.append(res_skip_layer) - # setup weight norm - if not weight_norm: - self.remove_weight_norm() - - def forward(self, x, x_mask=None, g=None, **kwargs): # pylint: disable=unused-argument - output = torch.zeros_like(x) - n_channels_tensor = torch.IntTensor([self.hidden_channels]) - x_mask = 1.0 if x_mask is None else x_mask - if g is not None: - g = self.cond_layer(g) - for i in range(self.num_layers): - x_in = self.in_layers[i](x) - x_in = self.dropout(x_in) - if g is not None: - cond_offset = i * 2 * self.hidden_channels - g_l = g[:, cond_offset : cond_offset + 2 * self.hidden_channels, :] - else: - g_l = torch.zeros_like(x_in) - acts = fused_add_tanh_sigmoid_multiply(x_in, g_l, n_channels_tensor) - res_skip_acts = self.res_skip_layers[i](acts) - if i < self.num_layers - 1: - x = (x + res_skip_acts[:, : self.hidden_channels, :]) * x_mask - output = output + res_skip_acts[:, self.hidden_channels :, :] - else: - output = output + res_skip_acts - return output * x_mask - - def remove_weight_norm(self): - if self.c_in_channels != 0: - torch.nn.utils.remove_weight_norm(self.cond_layer) - for l in self.in_layers: - torch.nn.utils.remove_weight_norm(l) - for l in self.res_skip_layers: - torch.nn.utils.remove_weight_norm(l) - - -class WNBlocks(nn.Module): - """Wavenet blocks. - - Note: After each block dilation resets to 1 and it increases in each block - along the dilation rate. - - Args: - in_channels (int): number of input channels. - hidden_channes (int): number of hidden channels. - kernel_size (int): filter kernel size for the first conv layer. - dilation_rate (int): dilations rate to increase dilation per layer. - If it is 2, dilations are 1, 2, 4, 8 for the next 4 layers. - num_blocks (int): number of wavenet blocks. - num_layers (int): number of wavenet layers. - c_in_channels (int): number of channels of conditioning input. - dropout_p (float): dropout rate. - weight_norm (bool): enable/disable weight norm for convolution layers. - """ - - def __init__( - self, - in_channels, - hidden_channels, - kernel_size, - dilation_rate, - num_blocks, - num_layers, - c_in_channels=0, - dropout_p=0, - weight_norm=True, - ): - super().__init__() - self.wn_blocks = nn.ModuleList() - for idx in range(num_blocks): - layer = WN( - in_channels=in_channels if idx == 0 else hidden_channels, - hidden_channels=hidden_channels, - kernel_size=kernel_size, - dilation_rate=dilation_rate, - num_layers=num_layers, - c_in_channels=c_in_channels, - dropout_p=dropout_p, - weight_norm=weight_norm, - ) - self.wn_blocks.append(layer) - - def forward(self, x, x_mask=None, g=None): - o = x - for layer in self.wn_blocks: - o = layer(o, x_mask, g) - return o diff --git a/TTS/tts/layers/glow_tts/__init__.py b/TTS/tts/layers/glow_tts/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/layers/glow_tts/decoder.py b/TTS/tts/layers/glow_tts/decoder.py deleted file mode 100644 index 61c5174ac5e67885288043885290c2906656c99c..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/glow_tts/decoder.py +++ /dev/null @@ -1,141 +0,0 @@ -import torch -from torch import nn - -from TTS.tts.layers.generic.normalization import ActNorm -from TTS.tts.layers.glow_tts.glow import CouplingBlock, InvConvNear - - -def squeeze(x, x_mask=None, num_sqz=2): - """GlowTTS squeeze operation - Increase number of channels and reduce number of time steps - by the same factor. - - Note: - each 's' is a n-dimensional vector. - ``[s1,s2,s3,s4,s5,s6] --> [[s1, s3, s5], [s2, s4, s6]]`` - """ - b, c, t = x.size() - - t = (t // num_sqz) * num_sqz - x = x[:, :, :t] - x_sqz = x.view(b, c, t // num_sqz, num_sqz) - x_sqz = x_sqz.permute(0, 3, 1, 2).contiguous().view(b, c * num_sqz, t // num_sqz) - - if x_mask is not None: - x_mask = x_mask[:, :, num_sqz - 1 :: num_sqz] - else: - x_mask = torch.ones(b, 1, t // num_sqz).to(device=x.device, dtype=x.dtype) - return x_sqz * x_mask, x_mask - - -def unsqueeze(x, x_mask=None, num_sqz=2): - """GlowTTS unsqueeze operation (revert the squeeze) - - Note: - each 's' is a n-dimensional vector. - ``[[s1, s3, s5], [s2, s4, s6]] --> [[s1, s3, s5, s2, s4, s6]]`` - """ - b, c, t = x.size() - - x_unsqz = x.view(b, num_sqz, c // num_sqz, t) - x_unsqz = x_unsqz.permute(0, 2, 3, 1).contiguous().view(b, c // num_sqz, t * num_sqz) - - if x_mask is not None: - x_mask = x_mask.unsqueeze(-1).repeat(1, 1, 1, num_sqz).view(b, 1, t * num_sqz) - else: - x_mask = torch.ones(b, 1, t * num_sqz).to(device=x.device, dtype=x.dtype) - return x_unsqz * x_mask, x_mask - - -class Decoder(nn.Module): - """Stack of Glow Decoder Modules. - - :: - - Squeeze -> ActNorm -> InvertibleConv1x1 -> AffineCoupling -> Unsqueeze - - Args: - in_channels (int): channels of input tensor. - hidden_channels (int): hidden decoder channels. - kernel_size (int): Coupling block kernel size. (Wavenet filter kernel size.) - dilation_rate (int): rate to increase dilation by each layer in a decoder block. - num_flow_blocks (int): number of decoder blocks. - num_coupling_layers (int): number coupling layers. (number of wavenet layers.) - dropout_p (float): wavenet dropout rate. - sigmoid_scale (bool): enable/disable sigmoid scaling in coupling layer. - """ - - def __init__( - self, - in_channels, - hidden_channels, - kernel_size, - dilation_rate, - num_flow_blocks, - num_coupling_layers, - dropout_p=0.0, - num_splits=4, - num_squeeze=2, - sigmoid_scale=False, - c_in_channels=0, - ): - super().__init__() - - self.in_channels = in_channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.num_flow_blocks = num_flow_blocks - self.num_coupling_layers = num_coupling_layers - self.dropout_p = dropout_p - self.num_splits = num_splits - self.num_squeeze = num_squeeze - self.sigmoid_scale = sigmoid_scale - self.c_in_channels = c_in_channels - - self.flows = nn.ModuleList() - for _ in range(num_flow_blocks): - self.flows.append(ActNorm(channels=in_channels * num_squeeze)) - self.flows.append(InvConvNear(channels=in_channels * num_squeeze, num_splits=num_splits)) - self.flows.append( - CouplingBlock( - in_channels * num_squeeze, - hidden_channels, - kernel_size=kernel_size, - dilation_rate=dilation_rate, - num_layers=num_coupling_layers, - c_in_channels=c_in_channels, - dropout_p=dropout_p, - sigmoid_scale=sigmoid_scale, - ) - ) - - def forward(self, x, x_mask, g=None, reverse=False): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1 ,T]` - - g: :math:`[B, C]` - """ - if not reverse: - flows = self.flows - logdet_tot = 0 - else: - flows = reversed(self.flows) - logdet_tot = None - - if self.num_squeeze > 1: - x, x_mask = squeeze(x, x_mask, self.num_squeeze) - for f in flows: - if not reverse: - x, logdet = f(x, x_mask, g=g, reverse=reverse) - logdet_tot += logdet - else: - x, logdet = f(x, x_mask, g=g, reverse=reverse) - if self.num_squeeze > 1: - x, x_mask = unsqueeze(x, x_mask, self.num_squeeze) - return x, logdet_tot - - def store_inverse(self): - for f in self.flows: - f.store_inverse() diff --git a/TTS/tts/layers/glow_tts/duration_predictor.py b/TTS/tts/layers/glow_tts/duration_predictor.py deleted file mode 100644 index e766ed6ab5a0348eaca8d1482be124003d8b8c68..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/glow_tts/duration_predictor.py +++ /dev/null @@ -1,69 +0,0 @@ -import torch -from torch import nn - -from ..generic.normalization import LayerNorm - - -class DurationPredictor(nn.Module): - """Glow-TTS duration prediction model. - - :: - - [2 x (conv1d_kxk -> relu -> layer_norm -> dropout)] -> conv1d_1x1 -> durs - - Args: - in_channels (int): Number of channels of the input tensor. - hidden_channels (int): Number of hidden channels of the network. - kernel_size (int): Kernel size for the conv layers. - dropout_p (float): Dropout rate used after each conv layer. - """ - - def __init__(self, in_channels, hidden_channels, kernel_size, dropout_p, cond_channels=None, language_emb_dim=None): - super().__init__() - - # add language embedding dim in the input - if language_emb_dim: - in_channels += language_emb_dim - - # class arguments - self.in_channels = in_channels - self.filter_channels = hidden_channels - self.kernel_size = kernel_size - self.dropout_p = dropout_p - # layers - self.drop = nn.Dropout(dropout_p) - self.conv_1 = nn.Conv1d(in_channels, hidden_channels, kernel_size, padding=kernel_size // 2) - self.norm_1 = LayerNorm(hidden_channels) - self.conv_2 = nn.Conv1d(hidden_channels, hidden_channels, kernel_size, padding=kernel_size // 2) - self.norm_2 = LayerNorm(hidden_channels) - # output layer - self.proj = nn.Conv1d(hidden_channels, 1, 1) - if cond_channels is not None and cond_channels != 0: - self.cond = nn.Conv1d(cond_channels, in_channels, 1) - - if language_emb_dim != 0 and language_emb_dim is not None: - self.cond_lang = nn.Conv1d(language_emb_dim, in_channels, 1) - - def forward(self, x, x_mask, g=None, lang_emb=None): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - - g: :math:`[B, C, 1]` - """ - if g is not None: - x = x + self.cond(g) - - if lang_emb is not None: - x = x + self.cond_lang(lang_emb) - - x = self.conv_1(x * x_mask) - x = torch.relu(x) - x = self.norm_1(x) - x = self.drop(x) - x = self.conv_2(x * x_mask) - x = torch.relu(x) - x = self.norm_2(x) - x = self.drop(x) - x = self.proj(x * x_mask) - return x * x_mask diff --git a/TTS/tts/layers/glow_tts/encoder.py b/TTS/tts/layers/glow_tts/encoder.py deleted file mode 100644 index 3b43e527f5e9ca2bd0880bf204e04a1526bc8dfb..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/glow_tts/encoder.py +++ /dev/null @@ -1,179 +0,0 @@ -import math - -import torch -from torch import nn - -from TTS.tts.layers.generic.gated_conv import GatedConvBlock -from TTS.tts.layers.generic.res_conv_bn import ResidualConv1dBNBlock -from TTS.tts.layers.generic.time_depth_sep_conv import TimeDepthSeparableConvBlock -from TTS.tts.layers.glow_tts.duration_predictor import DurationPredictor -from TTS.tts.layers.glow_tts.glow import ResidualConv1dLayerNormBlock -from TTS.tts.layers.glow_tts.transformer import RelativePositionTransformer -from TTS.tts.utils.helpers import sequence_mask - - -class Encoder(nn.Module): - """Glow-TTS encoder module. - - :: - - embedding -> -> encoder_module -> --> proj_mean - | - |-> proj_var - | - |-> concat -> duration_predictor - ↑ - speaker_embed - - Args: - num_chars (int): number of characters. - out_channels (int): number of output channels. - hidden_channels (int): encoder's embedding size. - hidden_channels_ffn (int): transformer's feed-forward channels. - kernel_size (int): kernel size for conv layers and duration predictor. - dropout_p (float): dropout rate for any dropout layer. - mean_only (bool): if True, output only mean values and use constant std. - use_prenet (bool): if True, use pre-convolutional layers before transformer layers. - c_in_channels (int): number of channels in conditional input. - - Shapes: - - input: (B, T, C) - - :: - - suggested encoder params... - - for encoder_type == 'rel_pos_transformer' - encoder_params={ - 'kernel_size':3, - 'dropout_p': 0.1, - 'num_layers': 6, - 'num_heads': 2, - 'hidden_channels_ffn': 768, # 4 times the hidden_channels - 'input_length': None - } - - for encoder_type == 'gated_conv' - encoder_params={ - 'kernel_size':5, - 'dropout_p': 0.1, - 'num_layers': 9, - } - - for encoder_type == 'residual_conv_bn' - encoder_params={ - "kernel_size": 4, - "dilations": [1, 2, 4, 1, 2, 4, 1, 2, 4, 1, 2, 4, 1], - "num_conv_blocks": 2, - "num_res_blocks": 13 - } - - for encoder_type == 'time_depth_separable' - encoder_params={ - "kernel_size": 5, - 'num_layers': 9, - } - """ - - def __init__( - self, - num_chars, - out_channels, - hidden_channels, - hidden_channels_dp, - encoder_type, - encoder_params, - dropout_p_dp=0.1, - mean_only=False, - use_prenet=True, - c_in_channels=0, - ): - super().__init__() - # class arguments - self.num_chars = num_chars - self.out_channels = out_channels - self.hidden_channels = hidden_channels - self.hidden_channels_dp = hidden_channels_dp - self.dropout_p_dp = dropout_p_dp - self.mean_only = mean_only - self.use_prenet = use_prenet - self.c_in_channels = c_in_channels - self.encoder_type = encoder_type - # embedding layer - self.emb = nn.Embedding(num_chars, hidden_channels) - nn.init.normal_(self.emb.weight, 0.0, hidden_channels**-0.5) - # init encoder module - if encoder_type.lower() == "rel_pos_transformer": - if use_prenet: - self.prenet = ResidualConv1dLayerNormBlock( - hidden_channels, hidden_channels, hidden_channels, kernel_size=5, num_layers=3, dropout_p=0.5 - ) - self.encoder = RelativePositionTransformer( - hidden_channels, hidden_channels, hidden_channels, **encoder_params - ) - elif encoder_type.lower() == "gated_conv": - self.encoder = GatedConvBlock(hidden_channels, **encoder_params) - elif encoder_type.lower() == "residual_conv_bn": - if use_prenet: - self.prenet = nn.Sequential(nn.Conv1d(hidden_channels, hidden_channels, 1), nn.ReLU()) - self.encoder = ResidualConv1dBNBlock(hidden_channels, hidden_channels, hidden_channels, **encoder_params) - self.postnet = nn.Sequential( - nn.Conv1d(self.hidden_channels, self.hidden_channels, 1), nn.BatchNorm1d(self.hidden_channels) - ) - elif encoder_type.lower() == "time_depth_separable": - if use_prenet: - self.prenet = ResidualConv1dLayerNormBlock( - hidden_channels, hidden_channels, hidden_channels, kernel_size=5, num_layers=3, dropout_p=0.5 - ) - self.encoder = TimeDepthSeparableConvBlock( - hidden_channels, hidden_channels, hidden_channels, **encoder_params - ) - else: - raise ValueError(" [!] Unkown encoder type.") - - # final projection layers - self.proj_m = nn.Conv1d(hidden_channels, out_channels, 1) - if not mean_only: - self.proj_s = nn.Conv1d(hidden_channels, out_channels, 1) - # duration predictor - self.duration_predictor = DurationPredictor( - hidden_channels + c_in_channels, hidden_channels_dp, 3, dropout_p_dp - ) - - def forward(self, x, x_lengths, g=None): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_lengths: :math:`[B]` - - g (optional): :math:`[B, 1, T]` - """ - # embedding layer - # [B ,T, D] - x = self.emb(x) * math.sqrt(self.hidden_channels) - # [B, D, T] - x = torch.transpose(x, 1, -1) - # compute input sequence mask - x_mask = torch.unsqueeze(sequence_mask(x_lengths, x.size(2)), 1).to(x.dtype) - # prenet - if hasattr(self, "prenet") and self.use_prenet: - x = self.prenet(x, x_mask) - # encoder - x = self.encoder(x, x_mask) - # postnet - if hasattr(self, "postnet"): - x = self.postnet(x) * x_mask - # set duration predictor input - if g is not None: - g_exp = g.expand(-1, -1, x.size(-1)) - x_dp = torch.cat([x.detach(), g_exp], 1) - else: - x_dp = x.detach() - # final projection layer - x_m = self.proj_m(x) * x_mask - if not self.mean_only: - x_logs = self.proj_s(x) * x_mask - else: - x_logs = torch.zeros_like(x_m) - # duration predictor - logw = self.duration_predictor(x_dp, x_mask) - return x_m, x_logs, logw, x_mask diff --git a/TTS/tts/layers/glow_tts/glow.py b/TTS/tts/layers/glow_tts/glow.py deleted file mode 100644 index 273c62a5c055dcfd79b748092b37a7e8dacb0082..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/glow_tts/glow.py +++ /dev/null @@ -1,233 +0,0 @@ -import torch -from packaging.version import Version -from torch import nn -from torch.nn import functional as F - -from TTS.tts.layers.generic.wavenet import WN - -from ..generic.normalization import LayerNorm - - -class ResidualConv1dLayerNormBlock(nn.Module): - """Conv1d with Layer Normalization and residual connection as in GlowTTS paper. - https://arxiv.org/pdf/1811.00002.pdf - - :: - - x |-> conv1d -> layer_norm -> relu -> dropout -> + -> o - |---------------> conv1d_1x1 ------------------| - - Args: - in_channels (int): number of input tensor channels. - hidden_channels (int): number of inner layer channels. - out_channels (int): number of output tensor channels. - kernel_size (int): kernel size of conv1d filter. - num_layers (int): number of blocks. - dropout_p (float): dropout rate for each block. - """ - - def __init__(self, in_channels, hidden_channels, out_channels, kernel_size, num_layers, dropout_p): - super().__init__() - self.in_channels = in_channels - self.hidden_channels = hidden_channels - self.out_channels = out_channels - self.kernel_size = kernel_size - self.num_layers = num_layers - self.dropout_p = dropout_p - assert num_layers > 1, " [!] number of layers should be > 0." - assert kernel_size % 2 == 1, " [!] kernel size should be odd number." - - self.conv_layers = nn.ModuleList() - self.norm_layers = nn.ModuleList() - - for idx in range(num_layers): - self.conv_layers.append( - nn.Conv1d( - in_channels if idx == 0 else hidden_channels, hidden_channels, kernel_size, padding=kernel_size // 2 - ) - ) - self.norm_layers.append(LayerNorm(hidden_channels)) - - self.proj = nn.Conv1d(hidden_channels, out_channels, 1) - self.proj.weight.data.zero_() - self.proj.bias.data.zero_() - - def forward(self, x, x_mask): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - """ - x_res = x - for i in range(self.num_layers): - x = self.conv_layers[i](x * x_mask) - x = self.norm_layers[i](x * x_mask) - x = F.dropout(F.relu(x), self.dropout_p, training=self.training) - x = x_res + self.proj(x) - return x * x_mask - - -class InvConvNear(nn.Module): - """Invertible Convolution with input splitting as in GlowTTS paper. - https://arxiv.org/pdf/1811.00002.pdf - - Args: - channels (int): input and output channels. - num_splits (int): number of splits, also H and W of conv layer. - no_jacobian (bool): enable/disable jacobian computations. - - Note: - Split the input into groups of size self.num_splits and - perform 1x1 convolution separately. Cast 1x1 conv operation - to 2d by reshaping the input for efficiency. - """ - - def __init__(self, channels, num_splits=4, no_jacobian=False, **kwargs): # pylint: disable=unused-argument - super().__init__() - assert num_splits % 2 == 0 - self.channels = channels - self.num_splits = num_splits - self.no_jacobian = no_jacobian - self.weight_inv = None - - if Version(torch.__version__) < Version("1.9"): - w_init = torch.qr(torch.FloatTensor(self.num_splits, self.num_splits).normal_())[0] - else: - w_init = torch.linalg.qr(torch.FloatTensor(self.num_splits, self.num_splits).normal_(), "complete")[0] - - if torch.det(w_init) < 0: - w_init[:, 0] = -1 * w_init[:, 0] - self.weight = nn.Parameter(w_init) - - def forward(self, x, x_mask=None, reverse=False, **kwargs): # pylint: disable=unused-argument - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - """ - b, c, t = x.size() - assert c % self.num_splits == 0 - if x_mask is None: - x_mask = 1 - x_len = torch.ones((b,), dtype=x.dtype, device=x.device) * t - else: - x_len = torch.sum(x_mask, [1, 2]) - - x = x.view(b, 2, c // self.num_splits, self.num_splits // 2, t) - x = x.permute(0, 1, 3, 2, 4).contiguous().view(b, self.num_splits, c // self.num_splits, t) - - if reverse: - if self.weight_inv is not None: - weight = self.weight_inv - else: - weight = torch.inverse(self.weight.float()).to(dtype=self.weight.dtype) - logdet = None - else: - weight = self.weight - if self.no_jacobian: - logdet = 0 - else: - logdet = torch.logdet(self.weight) * (c / self.num_splits) * x_len # [b] - - weight = weight.view(self.num_splits, self.num_splits, 1, 1) - z = F.conv2d(x, weight) - - z = z.view(b, 2, self.num_splits // 2, c // self.num_splits, t) - z = z.permute(0, 1, 3, 2, 4).contiguous().view(b, c, t) * x_mask - return z, logdet - - def store_inverse(self): - weight_inv = torch.inverse(self.weight.float()).to(dtype=self.weight.dtype) - self.weight_inv = nn.Parameter(weight_inv, requires_grad=False) - - -class CouplingBlock(nn.Module): - """Glow Affine Coupling block as in GlowTTS paper. - https://arxiv.org/pdf/1811.00002.pdf - - :: - - x --> x0 -> conv1d -> wavenet -> conv1d --> t, s -> concat(s*x1 + t, x0) -> o - '-> x1 - - - - - - - - - - - - - - - - - - - - - - - - - ^ - - Args: - in_channels (int): number of input tensor channels. - hidden_channels (int): number of hidden channels. - kernel_size (int): WaveNet filter kernel size. - dilation_rate (int): rate to increase dilation by each layer in a decoder block. - num_layers (int): number of WaveNet layers. - c_in_channels (int): number of conditioning input channels. - dropout_p (int): wavenet dropout rate. - sigmoid_scale (bool): enable/disable sigmoid scaling for output scale. - - Note: - It does not use the conditional inputs differently from WaveGlow. - """ - - def __init__( - self, - in_channels, - hidden_channels, - kernel_size, - dilation_rate, - num_layers, - c_in_channels=0, - dropout_p=0, - sigmoid_scale=False, - ): - super().__init__() - self.in_channels = in_channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.num_layers = num_layers - self.c_in_channels = c_in_channels - self.dropout_p = dropout_p - self.sigmoid_scale = sigmoid_scale - # input layer - start = torch.nn.Conv1d(in_channels // 2, hidden_channels, 1) - start = torch.nn.utils.weight_norm(start) - self.start = start - # output layer - # Initializing last layer to 0 makes the affine coupling layers - # do nothing at first. This helps with training stability - end = torch.nn.Conv1d(hidden_channels, in_channels, 1) - end.weight.data.zero_() - end.bias.data.zero_() - self.end = end - # coupling layers - self.wn = WN(hidden_channels, hidden_channels, kernel_size, dilation_rate, num_layers, c_in_channels, dropout_p) - - def forward(self, x, x_mask=None, reverse=False, g=None, **kwargs): # pylint: disable=unused-argument - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - - g: :math:`[B, C, 1]` - """ - if x_mask is None: - x_mask = 1 - x_0, x_1 = x[:, : self.in_channels // 2], x[:, self.in_channels // 2 :] - - x = self.start(x_0) * x_mask - x = self.wn(x, x_mask, g) - out = self.end(x) - - z_0 = x_0 - t = out[:, : self.in_channels // 2, :] - s = out[:, self.in_channels // 2 :, :] - if self.sigmoid_scale: - s = torch.log(1e-6 + torch.sigmoid(s + 2)) - - if reverse: - z_1 = (x_1 - t) * torch.exp(-s) * x_mask - logdet = None - else: - z_1 = (t + torch.exp(s) * x_1) * x_mask - logdet = torch.sum(s * x_mask, [1, 2]) - - z = torch.cat([z_0, z_1], 1) - return z, logdet - - def store_inverse(self): - self.wn.remove_weight_norm() diff --git a/TTS/tts/layers/glow_tts/transformer.py b/TTS/tts/layers/glow_tts/transformer.py deleted file mode 100644 index 02688d611fe41394e8e1fedbc5742845eae85cfd..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/glow_tts/transformer.py +++ /dev/null @@ -1,432 +0,0 @@ -import math - -import torch -from torch import nn -from torch.nn import functional as F - -from TTS.tts.layers.generic.normalization import LayerNorm, LayerNorm2 - - -class RelativePositionMultiHeadAttention(nn.Module): - """Multi-head attention with Relative Positional embedding. - https://arxiv.org/pdf/1809.04281.pdf - - It learns positional embeddings for a window of neighbours. For keys and values, - it learns different set of embeddings. Key embeddings are agregated with the attention - scores and value embeddings are aggregated with the output. - - Note: - Example with relative attention window size 2 - - - input = [a, b, c, d, e] - - rel_attn_embeddings = [e(t-2), e(t-1), e(t+1), e(t+2)] - - So it learns 4 embedding vectors (in total 8) separately for key and value vectors. - - Considering the input c - - - e(t-2) corresponds to c -> a - - e(t-2) corresponds to c -> b - - e(t-2) corresponds to c -> d - - e(t-2) corresponds to c -> e - - These embeddings are shared among different time steps. So input a, b, d and e also uses - the same embeddings. - - Embeddings are ignored when the relative window is out of limit for the first and the last - n items. - - Args: - channels (int): input and inner layer channels. - out_channels (int): output channels. - num_heads (int): number of attention heads. - rel_attn_window_size (int, optional): relation attention window size. - If 4, for each time step next and previous 4 time steps are attended. - If default, relative encoding is disabled and it is a regular transformer. - Defaults to None. - heads_share (bool, optional): [description]. Defaults to True. - dropout_p (float, optional): dropout rate. Defaults to 0.. - input_length (int, optional): intput length for positional encoding. Defaults to None. - proximal_bias (bool, optional): enable/disable proximal bias as in the paper. Defaults to False. - proximal_init (bool, optional): enable/disable poximal init as in the paper. - Init key and query layer weights the same. Defaults to False. - """ - - def __init__( - self, - channels, - out_channels, - num_heads, - rel_attn_window_size=None, - heads_share=True, - dropout_p=0.0, - input_length=None, - proximal_bias=False, - proximal_init=False, - ): - super().__init__() - assert channels % num_heads == 0, " [!] channels should be divisible by num_heads." - # class attributes - self.channels = channels - self.out_channels = out_channels - self.num_heads = num_heads - self.rel_attn_window_size = rel_attn_window_size - self.heads_share = heads_share - self.input_length = input_length - self.proximal_bias = proximal_bias - self.dropout_p = dropout_p - self.attn = None - # query, key, value layers - self.k_channels = channels // num_heads - self.conv_q = nn.Conv1d(channels, channels, 1) - self.conv_k = nn.Conv1d(channels, channels, 1) - self.conv_v = nn.Conv1d(channels, channels, 1) - # output layers - self.conv_o = nn.Conv1d(channels, out_channels, 1) - self.dropout = nn.Dropout(dropout_p) - # relative positional encoding layers - if rel_attn_window_size is not None: - n_heads_rel = 1 if heads_share else num_heads - rel_stddev = self.k_channels**-0.5 - emb_rel_k = nn.Parameter( - torch.randn(n_heads_rel, rel_attn_window_size * 2 + 1, self.k_channels) * rel_stddev - ) - emb_rel_v = nn.Parameter( - torch.randn(n_heads_rel, rel_attn_window_size * 2 + 1, self.k_channels) * rel_stddev - ) - self.register_parameter("emb_rel_k", emb_rel_k) - self.register_parameter("emb_rel_v", emb_rel_v) - - # init layers - nn.init.xavier_uniform_(self.conv_q.weight) - nn.init.xavier_uniform_(self.conv_k.weight) - # proximal bias - if proximal_init: - self.conv_k.weight.data.copy_(self.conv_q.weight.data) - self.conv_k.bias.data.copy_(self.conv_q.bias.data) - nn.init.xavier_uniform_(self.conv_v.weight) - - def forward(self, x, c, attn_mask=None): - """ - Shapes: - - x: :math:`[B, C, T]` - - c: :math:`[B, C, T]` - - attn_mask: :math:`[B, 1, T, T]` - """ - q = self.conv_q(x) - k = self.conv_k(c) - v = self.conv_v(c) - x, self.attn = self.attention(q, k, v, mask=attn_mask) - x = self.conv_o(x) - return x - - def attention(self, query, key, value, mask=None): - # reshape [b, d, t] -> [b, n_h, t, d_k] - b, d, t_s, t_t = (*key.size(), query.size(2)) - query = query.view(b, self.num_heads, self.k_channels, t_t).transpose(2, 3) - key = key.view(b, self.num_heads, self.k_channels, t_s).transpose(2, 3) - value = value.view(b, self.num_heads, self.k_channels, t_s).transpose(2, 3) - # compute raw attention scores - scores = torch.matmul(query, key.transpose(-2, -1)) / math.sqrt(self.k_channels) - # relative positional encoding for scores - if self.rel_attn_window_size is not None: - assert t_s == t_t, "Relative attention is only available for self-attention." - # get relative key embeddings - key_relative_embeddings = self._get_relative_embeddings(self.emb_rel_k, t_s) - rel_logits = self._matmul_with_relative_keys(query, key_relative_embeddings) - rel_logits = self._relative_position_to_absolute_position(rel_logits) - scores_local = rel_logits / math.sqrt(self.k_channels) - scores = scores + scores_local - # proximan bias - if self.proximal_bias: - assert t_s == t_t, "Proximal bias is only available for self-attention." - scores = scores + self._attn_proximity_bias(t_s).to(device=scores.device, dtype=scores.dtype) - # attention score masking - if mask is not None: - # add small value to prevent oor error. - scores = scores.masked_fill(mask == 0, -1e4) - if self.input_length is not None: - block_mask = torch.ones_like(scores).triu(-1 * self.input_length).tril(self.input_length) - scores = scores * block_mask + -1e4 * (1 - block_mask) - # attention score normalization - p_attn = F.softmax(scores, dim=-1) # [b, n_h, t_t, t_s] - # apply dropout to attention weights - p_attn = self.dropout(p_attn) - # compute output - output = torch.matmul(p_attn, value) - # relative positional encoding for values - if self.rel_attn_window_size is not None: - relative_weights = self._absolute_position_to_relative_position(p_attn) - value_relative_embeddings = self._get_relative_embeddings(self.emb_rel_v, t_s) - output = output + self._matmul_with_relative_values(relative_weights, value_relative_embeddings) - output = output.transpose(2, 3).contiguous().view(b, d, t_t) # [b, n_h, t_t, d_k] -> [b, d, t_t] - return output, p_attn - - @staticmethod - def _matmul_with_relative_values(p_attn, re): - """ - Args: - p_attn (Tensor): attention weights. - re (Tensor): relative value embedding vector. (a_(i,j)^V) - - Shapes: - -p_attn: :math:`[B, H, T, V]` - -re: :math:`[H or 1, V, D]` - -logits: :math:`[B, H, T, D]` - """ - logits = torch.matmul(p_attn, re.unsqueeze(0)) - return logits - - @staticmethod - def _matmul_with_relative_keys(query, re): - """ - Args: - query (Tensor): batch of query vectors. (x*W^Q) - re (Tensor): relative key embedding vector. (a_(i,j)^K) - - Shapes: - - query: :math:`[B, H, T, D]` - - re: :math:`[H or 1, V, D]` - - logits: :math:`[B, H, T, V]` - """ - # logits = torch.einsum('bhld, kmd -> bhlm', [query, re.to(query.dtype)]) - logits = torch.matmul(query, re.unsqueeze(0).transpose(-2, -1)) - return logits - - def _get_relative_embeddings(self, relative_embeddings, length): - """Convert embedding vestors to a tensor of embeddings""" - # Pad first before slice to avoid using cond ops. - pad_length = max(length - (self.rel_attn_window_size + 1), 0) - slice_start_position = max((self.rel_attn_window_size + 1) - length, 0) - slice_end_position = slice_start_position + 2 * length - 1 - if pad_length > 0: - padded_relative_embeddings = F.pad(relative_embeddings, [0, 0, pad_length, pad_length, 0, 0]) - else: - padded_relative_embeddings = relative_embeddings - used_relative_embeddings = padded_relative_embeddings[:, slice_start_position:slice_end_position] - return used_relative_embeddings - - @staticmethod - def _relative_position_to_absolute_position(x): - """Converts tensor from relative to absolute indexing for local attention. - Shapes: - x: :math:`[B, C, T, 2 * T - 1]` - Returns: - A Tensor of shape :math:`[B, C, T, T]` - """ - batch, heads, length, _ = x.size() - # Pad to shift from relative to absolute indexing. - x = F.pad(x, [0, 1, 0, 0, 0, 0, 0, 0]) - # Pad extra elements so to add up to shape (len+1, 2*len-1). - x_flat = x.view([batch, heads, length * 2 * length]) - x_flat = F.pad(x_flat, [0, length - 1, 0, 0, 0, 0]) - # Reshape and slice out the padded elements. - x_final = x_flat.view([batch, heads, length + 1, 2 * length - 1])[:, :, :length, length - 1 :] - return x_final - - @staticmethod - def _absolute_position_to_relative_position(x): - """ - Shapes: - - x: :math:`[B, C, T, T]` - - ret: :math:`[B, C, T, 2*T-1]` - """ - batch, heads, length, _ = x.size() - # padd along column - x = F.pad(x, [0, length - 1, 0, 0, 0, 0, 0, 0]) - x_flat = x.view([batch, heads, length**2 + length * (length - 1)]) - # add 0's in the beginning that will skew the elements after reshape - x_flat = F.pad(x_flat, [length, 0, 0, 0, 0, 0]) - x_final = x_flat.view([batch, heads, length, 2 * length])[:, :, :, 1:] - return x_final - - @staticmethod - def _attn_proximity_bias(length): - """Produce an attention mask that discourages distant - attention values. - Args: - length (int): an integer scalar. - Returns: - a Tensor with shape :math:`[1, 1, T, T]` - """ - # L - r = torch.arange(length, dtype=torch.float32) - # L x L - diff = torch.unsqueeze(r, 0) - torch.unsqueeze(r, 1) - # scale mask values - diff = -torch.log1p(torch.abs(diff)) - # 1 x 1 x L x L - return diff.unsqueeze(0).unsqueeze(0) - - -class FeedForwardNetwork(nn.Module): - """Feed Forward Inner layers for Transformer. - - Args: - in_channels (int): input tensor channels. - out_channels (int): output tensor channels. - hidden_channels (int): inner layers hidden channels. - kernel_size (int): conv1d filter kernel size. - dropout_p (float, optional): dropout rate. Defaults to 0. - """ - - def __init__(self, in_channels, out_channels, hidden_channels, kernel_size, dropout_p=0.0, causal=False): - super().__init__() - self.in_channels = in_channels - self.out_channels = out_channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dropout_p = dropout_p - - if causal: - self.padding = self._causal_padding - else: - self.padding = self._same_padding - - self.conv_1 = nn.Conv1d(in_channels, hidden_channels, kernel_size) - self.conv_2 = nn.Conv1d(hidden_channels, out_channels, kernel_size) - self.dropout = nn.Dropout(dropout_p) - - def forward(self, x, x_mask): - x = self.conv_1(self.padding(x * x_mask)) - x = torch.relu(x) - x = self.dropout(x) - x = self.conv_2(self.padding(x * x_mask)) - return x * x_mask - - def _causal_padding(self, x): - if self.kernel_size == 1: - return x - pad_l = self.kernel_size - 1 - pad_r = 0 - padding = [[0, 0], [0, 0], [pad_l, pad_r]] - x = F.pad(x, self._pad_shape(padding)) - return x - - def _same_padding(self, x): - if self.kernel_size == 1: - return x - pad_l = (self.kernel_size - 1) // 2 - pad_r = self.kernel_size // 2 - padding = [[0, 0], [0, 0], [pad_l, pad_r]] - x = F.pad(x, self._pad_shape(padding)) - return x - - @staticmethod - def _pad_shape(padding): - l = padding[::-1] - pad_shape = [item for sublist in l for item in sublist] - return pad_shape - - -class RelativePositionTransformer(nn.Module): - """Transformer with Relative Potional Encoding. - https://arxiv.org/abs/1803.02155 - - Args: - in_channels (int): number of channels of the input tensor. - out_chanels (int): number of channels of the output tensor. - hidden_channels (int): model hidden channels. - hidden_channels_ffn (int): hidden channels of FeedForwardNetwork. - num_heads (int): number of attention heads. - num_layers (int): number of transformer layers. - kernel_size (int, optional): kernel size of feed-forward inner layers. Defaults to 1. - dropout_p (float, optional): dropout rate for self-attention and feed-forward inner layers_per_stack. Defaults to 0. - rel_attn_window_size (int, optional): relation attention window size. - If 4, for each time step next and previous 4 time steps are attended. - If default, relative encoding is disabled and it is a regular transformer. - Defaults to None. - input_length (int, optional): input lenght to limit position encoding. Defaults to None. - layer_norm_type (str, optional): type "1" uses torch tensor operations and type "2" uses torch layer_norm - primitive. Use type "2", type "1: is for backward compat. Defaults to "1". - """ - - def __init__( - self, - in_channels: int, - out_channels: int, - hidden_channels: int, - hidden_channels_ffn: int, - num_heads: int, - num_layers: int, - kernel_size=1, - dropout_p=0.0, - rel_attn_window_size: int = None, - input_length: int = None, - layer_norm_type: str = "1", - ): - super().__init__() - self.hidden_channels = hidden_channels - self.hidden_channels_ffn = hidden_channels_ffn - self.num_heads = num_heads - self.num_layers = num_layers - self.kernel_size = kernel_size - self.dropout_p = dropout_p - self.rel_attn_window_size = rel_attn_window_size - - self.dropout = nn.Dropout(dropout_p) - self.attn_layers = nn.ModuleList() - self.norm_layers_1 = nn.ModuleList() - self.ffn_layers = nn.ModuleList() - self.norm_layers_2 = nn.ModuleList() - - for idx in range(self.num_layers): - self.attn_layers.append( - RelativePositionMultiHeadAttention( - hidden_channels if idx != 0 else in_channels, - hidden_channels, - num_heads, - rel_attn_window_size=rel_attn_window_size, - dropout_p=dropout_p, - input_length=input_length, - ) - ) - if layer_norm_type == "1": - self.norm_layers_1.append(LayerNorm(hidden_channels)) - elif layer_norm_type == "2": - self.norm_layers_1.append(LayerNorm2(hidden_channels)) - else: - raise ValueError(" [!] Unknown layer norm type") - - if hidden_channels != out_channels and (idx + 1) == self.num_layers: - self.proj = nn.Conv1d(hidden_channels, out_channels, 1) - - self.ffn_layers.append( - FeedForwardNetwork( - hidden_channels, - hidden_channels if (idx + 1) != self.num_layers else out_channels, - hidden_channels_ffn, - kernel_size, - dropout_p=dropout_p, - ) - ) - - if layer_norm_type == "1": - self.norm_layers_2.append(LayerNorm(hidden_channels if (idx + 1) != self.num_layers else out_channels)) - elif layer_norm_type == "2": - self.norm_layers_2.append(LayerNorm2(hidden_channels if (idx + 1) != self.num_layers else out_channels)) - else: - raise ValueError(" [!] Unknown layer norm type") - - def forward(self, x, x_mask): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - """ - attn_mask = x_mask.unsqueeze(2) * x_mask.unsqueeze(-1) - for i in range(self.num_layers): - x = x * x_mask - y = self.attn_layers[i](x, x, attn_mask) - y = self.dropout(y) - x = self.norm_layers_1[i](x + y) - - y = self.ffn_layers[i](x, x_mask) - y = self.dropout(y) - - if (i + 1) == self.num_layers and hasattr(self, "proj"): - x = self.proj(x) - - x = self.norm_layers_2[i](x + y) - x = x * x_mask - return x diff --git a/TTS/tts/layers/losses.py b/TTS/tts/layers/losses.py deleted file mode 100644 index de5f408c48cf9183dfb14c30a6248a2b300bde4d..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/losses.py +++ /dev/null @@ -1,889 +0,0 @@ -import math - -import numpy as np -import torch -from coqpit import Coqpit -from torch import nn -from torch.nn import functional - -from TTS.tts.utils.helpers import sequence_mask -from TTS.tts.utils.ssim import SSIMLoss as _SSIMLoss -from TTS.utils.audio.torch_transforms import TorchSTFT - - -# pylint: disable=abstract-method -# relates https://github.com/pytorch/pytorch/issues/42305 -class L1LossMasked(nn.Module): - def __init__(self, seq_len_norm): - super().__init__() - self.seq_len_norm = seq_len_norm - - def forward(self, x, target, length): - """ - Args: - x: A Variable containing a FloatTensor of size - (batch, max_len, dim) which contains the - unnormalized probability for each class. - target: A Variable containing a LongTensor of size - (batch, max_len, dim) which contains the index of the true - class for each corresponding step. - length: A Variable containing a LongTensor of size (batch,) - which contains the length of each data in a batch. - Shapes: - x: B x T X D - target: B x T x D - length: B - Returns: - loss: An average loss value in range [0, 1] masked by the length. - """ - # mask: (batch, max_len, 1) - target.requires_grad = False - mask = sequence_mask(sequence_length=length, max_len=target.size(1)).unsqueeze(2).float() - if self.seq_len_norm: - norm_w = mask / mask.sum(dim=1, keepdim=True) - out_weights = norm_w.div(target.shape[0] * target.shape[2]) - mask = mask.expand_as(x) - loss = functional.l1_loss(x * mask, target * mask, reduction="none") - loss = loss.mul(out_weights.to(loss.device)).sum() - else: - mask = mask.expand_as(x) - loss = functional.l1_loss(x * mask, target * mask, reduction="sum") - loss = loss / mask.sum() - return loss - - -class MSELossMasked(nn.Module): - def __init__(self, seq_len_norm): - super().__init__() - self.seq_len_norm = seq_len_norm - - def forward(self, x, target, length): - """ - Args: - x: A Variable containing a FloatTensor of size - (batch, max_len, dim) which contains the - unnormalized probability for each class. - target: A Variable containing a LongTensor of size - (batch, max_len, dim) which contains the index of the true - class for each corresponding step. - length: A Variable containing a LongTensor of size (batch,) - which contains the length of each data in a batch. - Shapes: - - x: :math:`[B, T, D]` - - target: :math:`[B, T, D]` - - length: :math:`B` - Returns: - loss: An average loss value in range [0, 1] masked by the length. - """ - # mask: (batch, max_len, 1) - target.requires_grad = False - mask = sequence_mask(sequence_length=length, max_len=target.size(1)).unsqueeze(2).float() - if self.seq_len_norm: - norm_w = mask / mask.sum(dim=1, keepdim=True) - out_weights = norm_w.div(target.shape[0] * target.shape[2]) - mask = mask.expand_as(x) - loss = functional.mse_loss(x * mask, target * mask, reduction="none") - loss = loss.mul(out_weights.to(loss.device)).sum() - else: - mask = mask.expand_as(x) - loss = functional.mse_loss(x * mask, target * mask, reduction="sum") - loss = loss / mask.sum() - return loss - - -def sample_wise_min_max(x: torch.Tensor, mask: torch.Tensor) -> torch.Tensor: - """Min-Max normalize tensor through first dimension - Shapes: - - x: :math:`[B, D1, D2]` - - m: :math:`[B, D1, 1]` - """ - maximum = torch.amax(x.masked_fill(~mask, 0), dim=(1, 2), keepdim=True) - minimum = torch.amin(x.masked_fill(~mask, np.inf), dim=(1, 2), keepdim=True) - return (x - minimum) / (maximum - minimum + 1e-8) - - -class SSIMLoss(torch.nn.Module): - """SSIM loss as (1 - SSIM) - SSIM is explained here https://en.wikipedia.org/wiki/Structural_similarity - """ - - def __init__(self): - super().__init__() - self.loss_func = _SSIMLoss() - - def forward(self, y_hat, y, length): - """ - Args: - y_hat (tensor): model prediction values. - y (tensor): target values. - length (tensor): length of each sample in a batch for masking. - - Shapes: - y_hat: B x T X D - y: B x T x D - length: B - - Returns: - loss: An average loss value in range [0, 1] masked by the length. - """ - mask = sequence_mask(sequence_length=length, max_len=y.size(1)).unsqueeze(2) - y_norm = sample_wise_min_max(y, mask) - y_hat_norm = sample_wise_min_max(y_hat, mask) - ssim_loss = self.loss_func((y_norm * mask).unsqueeze(1), (y_hat_norm * mask).unsqueeze(1)) - - if ssim_loss.item() > 1.0: - print(f" > SSIM loss is out-of-range {ssim_loss.item()}, setting it 1.0") - ssim_loss = torch.tensor(1.0, device=ssim_loss.device) - - if ssim_loss.item() < 0.0: - print(f" > SSIM loss is out-of-range {ssim_loss.item()}, setting it 0.0") - ssim_loss = torch.tensor(0.0, device=ssim_loss.device) - - return ssim_loss - - -class AttentionEntropyLoss(nn.Module): - # pylint: disable=R0201 - def forward(self, align): - """ - Forces attention to be more decisive by penalizing - soft attention weights - """ - entropy = torch.distributions.Categorical(probs=align).entropy() - loss = (entropy / np.log(align.shape[1])).mean() - return loss - - -class BCELossMasked(nn.Module): - """BCE loss with masking. - - Used mainly for stopnet in autoregressive models. - - Args: - pos_weight (float): weight for positive samples. If set < 1, penalize early stopping. Defaults to None. - """ - - def __init__(self, pos_weight: float = None): - super().__init__() - self.register_buffer("pos_weight", torch.tensor([pos_weight])) - - def forward(self, x, target, length): - """ - Args: - x: A Variable containing a FloatTensor of size - (batch, max_len) which contains the - unnormalized probability for each class. - target: A Variable containing a LongTensor of size - (batch, max_len) which contains the index of the true - class for each corresponding step. - length: A Variable containing a LongTensor of size (batch,) - which contains the length of each data in a batch. - Shapes: - x: B x T - target: B x T - length: B - Returns: - loss: An average loss value in range [0, 1] masked by the length. - """ - target.requires_grad = False - if length is not None: - # mask: (batch, max_len, 1) - mask = sequence_mask(sequence_length=length, max_len=target.size(1)) - num_items = mask.sum() - loss = functional.binary_cross_entropy_with_logits( - x.masked_select(mask), - target.masked_select(mask), - pos_weight=self.pos_weight.to(x.device), - reduction="sum", - ) - else: - loss = functional.binary_cross_entropy_with_logits( - x, target, pos_weight=self.pos_weight.to(x.device), reduction="sum" - ) - num_items = torch.numel(x) - loss = loss / num_items - return loss - - -class DifferentialSpectralLoss(nn.Module): - """Differential Spectral Loss - https://arxiv.org/ftp/arxiv/papers/1909/1909.10302.pdf""" - - def __init__(self, loss_func): - super().__init__() - self.loss_func = loss_func - - def forward(self, x, target, length=None): - """ - Shapes: - x: B x T - target: B x T - length: B - Returns: - loss: An average loss value in range [0, 1] masked by the length. - """ - x_diff = x[:, 1:] - x[:, :-1] - target_diff = target[:, 1:] - target[:, :-1] - if length is None: - return self.loss_func(x_diff, target_diff) - return self.loss_func(x_diff, target_diff, length - 1) - - -class GuidedAttentionLoss(torch.nn.Module): - def __init__(self, sigma=0.4): - super().__init__() - self.sigma = sigma - - def _make_ga_masks(self, ilens, olens): - B = len(ilens) - max_ilen = max(ilens) - max_olen = max(olens) - ga_masks = torch.zeros((B, max_olen, max_ilen)) - for idx, (ilen, olen) in enumerate(zip(ilens, olens)): - ga_masks[idx, :olen, :ilen] = self._make_ga_mask(ilen, olen, self.sigma) - return ga_masks - - def forward(self, att_ws, ilens, olens): - ga_masks = self._make_ga_masks(ilens, olens).to(att_ws.device) - seq_masks = self._make_masks(ilens, olens).to(att_ws.device) - losses = ga_masks * att_ws - loss = torch.mean(losses.masked_select(seq_masks)) - return loss - - @staticmethod - def _make_ga_mask(ilen, olen, sigma): - grid_x, grid_y = torch.meshgrid(torch.arange(olen).to(olen), torch.arange(ilen).to(ilen)) - grid_x, grid_y = grid_x.float(), grid_y.float() - return 1.0 - torch.exp(-((grid_y / ilen - grid_x / olen) ** 2) / (2 * (sigma**2))) - - @staticmethod - def _make_masks(ilens, olens): - in_masks = sequence_mask(ilens) - out_masks = sequence_mask(olens) - return out_masks.unsqueeze(-1) & in_masks.unsqueeze(-2) - - -class Huber(nn.Module): - # pylint: disable=R0201 - def forward(self, x, y, length=None): - """ - Shapes: - x: B x T - y: B x T - length: B - """ - mask = sequence_mask(sequence_length=length, max_len=y.size(1)).unsqueeze(2).float() - return torch.nn.functional.smooth_l1_loss(x * mask, y * mask, reduction="sum") / mask.sum() - - -class ForwardSumLoss(nn.Module): - def __init__(self, blank_logprob=-1): - super().__init__() - self.log_softmax = torch.nn.LogSoftmax(dim=3) - self.ctc_loss = torch.nn.CTCLoss(zero_infinity=True) - self.blank_logprob = blank_logprob - - def forward(self, attn_logprob, in_lens, out_lens): - key_lens = in_lens - query_lens = out_lens - attn_logprob_padded = torch.nn.functional.pad(input=attn_logprob, pad=(1, 0), value=self.blank_logprob) - - total_loss = 0.0 - for bid in range(attn_logprob.shape[0]): - target_seq = torch.arange(1, key_lens[bid] + 1).unsqueeze(0) - curr_logprob = attn_logprob_padded[bid].permute(1, 0, 2)[: query_lens[bid], :, : key_lens[bid] + 1] - - curr_logprob = self.log_softmax(curr_logprob[None])[0] - loss = self.ctc_loss( - curr_logprob, - target_seq, - input_lengths=query_lens[bid : bid + 1], - target_lengths=key_lens[bid : bid + 1], - ) - total_loss = total_loss + loss - - total_loss = total_loss / attn_logprob.shape[0] - return total_loss - - -######################## -# MODEL LOSS LAYERS -######################## - - -class TacotronLoss(torch.nn.Module): - """Collection of Tacotron set-up based on provided config.""" - - def __init__(self, c, ga_sigma=0.4): - super().__init__() - self.stopnet_pos_weight = c.stopnet_pos_weight - self.use_capacitron_vae = c.use_capacitron_vae - if self.use_capacitron_vae: - self.capacitron_capacity = c.capacitron_vae.capacitron_capacity - self.capacitron_vae_loss_alpha = c.capacitron_vae.capacitron_VAE_loss_alpha - self.ga_alpha = c.ga_alpha - self.decoder_diff_spec_alpha = c.decoder_diff_spec_alpha - self.postnet_diff_spec_alpha = c.postnet_diff_spec_alpha - self.decoder_alpha = c.decoder_loss_alpha - self.postnet_alpha = c.postnet_loss_alpha - self.decoder_ssim_alpha = c.decoder_ssim_alpha - self.postnet_ssim_alpha = c.postnet_ssim_alpha - self.config = c - - # postnet and decoder loss - if c.loss_masking: - self.criterion = L1LossMasked(c.seq_len_norm) if c.model in ["Tacotron"] else MSELossMasked(c.seq_len_norm) - else: - self.criterion = nn.L1Loss() if c.model in ["Tacotron"] else nn.MSELoss() - # guided attention loss - if c.ga_alpha > 0: - self.criterion_ga = GuidedAttentionLoss(sigma=ga_sigma) - # differential spectral loss - if c.postnet_diff_spec_alpha > 0 or c.decoder_diff_spec_alpha > 0: - self.criterion_diff_spec = DifferentialSpectralLoss(loss_func=self.criterion) - # ssim loss - if c.postnet_ssim_alpha > 0 or c.decoder_ssim_alpha > 0: - self.criterion_ssim = SSIMLoss() - # stopnet loss - # pylint: disable=not-callable - self.criterion_st = BCELossMasked(pos_weight=torch.tensor(self.stopnet_pos_weight)) if c.stopnet else None - - # For dev pruposes only - self.criterion_capacitron_reconstruction_loss = nn.L1Loss(reduction="sum") - - def forward( - self, - postnet_output, - decoder_output, - mel_input, - linear_input, - stopnet_output, - stopnet_target, - stop_target_length, - capacitron_vae_outputs, - output_lens, - decoder_b_output, - alignments, - alignment_lens, - alignments_backwards, - input_lens, - ): - # decoder outputs linear or mel spectrograms for Tacotron and Tacotron2 - # the target should be set acccordingly - postnet_target = linear_input if self.config.model.lower() in ["tacotron"] else mel_input - - return_dict = {} - # remove lengths if no masking is applied - if not self.config.loss_masking: - output_lens = None - # decoder and postnet losses - if self.config.loss_masking: - if self.decoder_alpha > 0: - decoder_loss = self.criterion(decoder_output, mel_input, output_lens) - if self.postnet_alpha > 0: - postnet_loss = self.criterion(postnet_output, postnet_target, output_lens) - else: - if self.decoder_alpha > 0: - decoder_loss = self.criterion(decoder_output, mel_input) - if self.postnet_alpha > 0: - postnet_loss = self.criterion(postnet_output, postnet_target) - loss = self.decoder_alpha * decoder_loss + self.postnet_alpha * postnet_loss - return_dict["decoder_loss"] = decoder_loss - return_dict["postnet_loss"] = postnet_loss - - if self.use_capacitron_vae: - # extract capacitron vae infos - posterior_distribution, prior_distribution, beta = capacitron_vae_outputs - - # KL divergence term between the posterior and the prior - kl_term = torch.mean(torch.distributions.kl_divergence(posterior_distribution, prior_distribution)) - - # Limit the mutual information between the data and latent space by the variational capacity limit - kl_capacity = kl_term - self.capacitron_capacity - - # pass beta through softplus to keep it positive - beta = torch.nn.functional.softplus(beta)[0] - - # This is the term going to the main ADAM optimiser, we detach beta because - # beta is optimised by a separate, SGD optimiser below - capacitron_vae_loss = beta.detach() * kl_capacity - - # normalize the capacitron_vae_loss as in L1Loss or MSELoss. - # After this, both the standard loss and capacitron_vae_loss will be in the same scale. - # For this reason we don't need use L1Loss and MSELoss in "sum" reduction mode. - # Note: the batch is not considered because the L1Loss was calculated in "sum" mode - # divided by the batch size, So not dividing the capacitron_vae_loss by B is legitimate. - - # get B T D dimension from input - B, T, D = mel_input.size() - # normalize - if self.config.loss_masking: - # if mask loss get T using the mask - T = output_lens.sum() / B - - # Only for dev purposes to be able to compare the reconstruction loss with the values in the - # original Capacitron paper - return_dict["capaciton_reconstruction_loss"] = ( - self.criterion_capacitron_reconstruction_loss(decoder_output, mel_input) / decoder_output.size(0) - ) + kl_capacity - - capacitron_vae_loss = capacitron_vae_loss / (T * D) - capacitron_vae_loss = capacitron_vae_loss * self.capacitron_vae_loss_alpha - - # This is the term to purely optimise beta and to pass into the SGD optimizer - beta_loss = torch.negative(beta) * kl_capacity.detach() - - loss += capacitron_vae_loss - - return_dict["capacitron_vae_loss"] = capacitron_vae_loss - return_dict["capacitron_vae_beta_loss"] = beta_loss - return_dict["capacitron_vae_kl_term"] = kl_term - return_dict["capacitron_beta"] = beta - - stop_loss = ( - self.criterion_st(stopnet_output, stopnet_target, stop_target_length) - if self.config.stopnet - else torch.zeros(1) - ) - loss += stop_loss - return_dict["stopnet_loss"] = stop_loss - - # backward decoder loss (if enabled) - if self.config.bidirectional_decoder: - if self.config.loss_masking: - decoder_b_loss = self.criterion(torch.flip(decoder_b_output, dims=(1,)), mel_input, output_lens) - else: - decoder_b_loss = self.criterion(torch.flip(decoder_b_output, dims=(1,)), mel_input) - decoder_c_loss = torch.nn.functional.l1_loss(torch.flip(decoder_b_output, dims=(1,)), decoder_output) - loss += self.decoder_alpha * (decoder_b_loss + decoder_c_loss) - return_dict["decoder_b_loss"] = decoder_b_loss - return_dict["decoder_c_loss"] = decoder_c_loss - - # double decoder consistency loss (if enabled) - if self.config.double_decoder_consistency: - if self.config.loss_masking: - decoder_b_loss = self.criterion(decoder_b_output, mel_input, output_lens) - else: - decoder_b_loss = self.criterion(decoder_b_output, mel_input) - # decoder_c_loss = torch.nn.functional.l1_loss(decoder_b_output, decoder_output) - attention_c_loss = torch.nn.functional.l1_loss(alignments, alignments_backwards) - loss += self.decoder_alpha * (decoder_b_loss + attention_c_loss) - return_dict["decoder_coarse_loss"] = decoder_b_loss - return_dict["decoder_ddc_loss"] = attention_c_loss - - # guided attention loss (if enabled) - if self.config.ga_alpha > 0: - ga_loss = self.criterion_ga(alignments, input_lens, alignment_lens) - loss += ga_loss * self.ga_alpha - return_dict["ga_loss"] = ga_loss - - # decoder differential spectral loss - if self.config.decoder_diff_spec_alpha > 0: - decoder_diff_spec_loss = self.criterion_diff_spec(decoder_output, mel_input, output_lens) - loss += decoder_diff_spec_loss * self.decoder_diff_spec_alpha - return_dict["decoder_diff_spec_loss"] = decoder_diff_spec_loss - - # postnet differential spectral loss - if self.config.postnet_diff_spec_alpha > 0: - postnet_diff_spec_loss = self.criterion_diff_spec(postnet_output, postnet_target, output_lens) - loss += postnet_diff_spec_loss * self.postnet_diff_spec_alpha - return_dict["postnet_diff_spec_loss"] = postnet_diff_spec_loss - - # decoder ssim loss - if self.config.decoder_ssim_alpha > 0: - decoder_ssim_loss = self.criterion_ssim(decoder_output, mel_input, output_lens) - loss += decoder_ssim_loss * self.postnet_ssim_alpha - return_dict["decoder_ssim_loss"] = decoder_ssim_loss - - # postnet ssim loss - if self.config.postnet_ssim_alpha > 0: - postnet_ssim_loss = self.criterion_ssim(postnet_output, postnet_target, output_lens) - loss += postnet_ssim_loss * self.postnet_ssim_alpha - return_dict["postnet_ssim_loss"] = postnet_ssim_loss - - return_dict["loss"] = loss - return return_dict - - -class GlowTTSLoss(torch.nn.Module): - def __init__(self): - super().__init__() - self.constant_factor = 0.5 * math.log(2 * math.pi) - - def forward(self, z, means, scales, log_det, y_lengths, o_dur_log, o_attn_dur, x_lengths): - return_dict = {} - # flow loss - neg log likelihood - pz = torch.sum(scales) + 0.5 * torch.sum(torch.exp(-2 * scales) * (z - means) ** 2) - log_mle = self.constant_factor + (pz - torch.sum(log_det)) / (torch.sum(y_lengths) * z.shape[2]) - # duration loss - MSE - loss_dur = torch.sum((o_dur_log - o_attn_dur) ** 2) / torch.sum(x_lengths) - # duration loss - huber loss - # loss_dur = torch.nn.functional.smooth_l1_loss(o_dur_log, o_attn_dur, reduction="sum") / torch.sum(x_lengths) - return_dict["loss"] = log_mle + loss_dur - return_dict["log_mle"] = log_mle - return_dict["loss_dur"] = loss_dur - - # check if any loss is NaN - for key, loss in return_dict.items(): - if torch.isnan(loss): - raise RuntimeError(f" [!] NaN loss with {key}.") - return return_dict - - -def mse_loss_custom(x, y): - """MSE loss using the torch back-end without reduction. - It uses less VRAM than the raw code""" - expanded_x, expanded_y = torch.broadcast_tensors(x, y) - return torch._C._nn.mse_loss(expanded_x, expanded_y, 0) # pylint: disable=protected-access, c-extension-no-member - - -class MDNLoss(nn.Module): - """Mixture of Density Network Loss as described in https://arxiv.org/pdf/2003.01950.pdf.""" - - def forward(self, logp, text_lengths, mel_lengths): # pylint: disable=no-self-use - """ - Shapes: - mu: [B, D, T] - log_sigma: [B, D, T] - mel_spec: [B, D, T] - """ - B, T_seq, T_mel = logp.shape - log_alpha = logp.new_ones(B, T_seq, T_mel) * (-1e4) - log_alpha[:, 0, 0] = logp[:, 0, 0] - for t in range(1, T_mel): - prev_step = torch.cat( - [log_alpha[:, :, t - 1 : t], functional.pad(log_alpha[:, :, t - 1 : t], (0, 0, 1, -1), value=-1e4)], - dim=-1, - ) - log_alpha[:, :, t] = torch.logsumexp(prev_step + 1e-4, dim=-1) + logp[:, :, t] - alpha_last = log_alpha[torch.arange(B), text_lengths - 1, mel_lengths - 1] - mdn_loss = -alpha_last.mean() / T_seq - return mdn_loss # , log_prob_matrix - - -class AlignTTSLoss(nn.Module): - """Modified AlignTTS Loss. - Computes - - L1 and SSIM losses from output spectrograms. - - Huber loss for duration predictor. - - MDNLoss for Mixture of Density Network. - - All loss values are aggregated by a weighted sum of the alpha values. - - Args: - c (dict): TTS model configuration. - """ - - def __init__(self, c): - super().__init__() - self.mdn_loss = MDNLoss() - self.spec_loss = MSELossMasked(False) - self.ssim = SSIMLoss() - self.dur_loss = MSELossMasked(False) - - self.ssim_alpha = c.ssim_alpha - self.dur_loss_alpha = c.dur_loss_alpha - self.spec_loss_alpha = c.spec_loss_alpha - self.mdn_alpha = c.mdn_alpha - - def forward( - self, logp, decoder_output, decoder_target, decoder_output_lens, dur_output, dur_target, input_lens, phase - ): - # ssim_alpha, dur_loss_alpha, spec_loss_alpha, mdn_alpha = self.set_alphas(step) - spec_loss, ssim_loss, dur_loss, mdn_loss = 0, 0, 0, 0 - if phase == 0: - mdn_loss = self.mdn_loss(logp, input_lens, decoder_output_lens) - elif phase == 1: - spec_loss = self.spec_loss(decoder_output, decoder_target, decoder_output_lens) - ssim_loss = self.ssim(decoder_output, decoder_target, decoder_output_lens) - elif phase == 2: - mdn_loss = self.mdn_loss(logp, input_lens, decoder_output_lens) - spec_loss = self.spec_lossX(decoder_output, decoder_target, decoder_output_lens) - ssim_loss = self.ssim(decoder_output, decoder_target, decoder_output_lens) - elif phase == 3: - dur_loss = self.dur_loss(dur_output.unsqueeze(2), dur_target.unsqueeze(2), input_lens) - else: - mdn_loss = self.mdn_loss(logp, input_lens, decoder_output_lens) - spec_loss = self.spec_loss(decoder_output, decoder_target, decoder_output_lens) - ssim_loss = self.ssim(decoder_output, decoder_target, decoder_output_lens) - dur_loss = self.dur_loss(dur_output.unsqueeze(2), dur_target.unsqueeze(2), input_lens) - loss = ( - self.spec_loss_alpha * spec_loss - + self.ssim_alpha * ssim_loss - + self.dur_loss_alpha * dur_loss - + self.mdn_alpha * mdn_loss - ) - return {"loss": loss, "loss_l1": spec_loss, "loss_ssim": ssim_loss, "loss_dur": dur_loss, "mdn_loss": mdn_loss} - - -class VitsGeneratorLoss(nn.Module): - def __init__(self, c: Coqpit): - super().__init__() - self.kl_loss_alpha = c.kl_loss_alpha - self.gen_loss_alpha = c.gen_loss_alpha - self.feat_loss_alpha = c.feat_loss_alpha - self.dur_loss_alpha = c.dur_loss_alpha - self.mel_loss_alpha = c.mel_loss_alpha - self.spk_encoder_loss_alpha = c.speaker_encoder_loss_alpha - self.stft = TorchSTFT( - c.audio.fft_size, - c.audio.hop_length, - c.audio.win_length, - sample_rate=c.audio.sample_rate, - mel_fmin=c.audio.mel_fmin, - mel_fmax=c.audio.mel_fmax, - n_mels=c.audio.num_mels, - use_mel=True, - do_amp_to_db=True, - ) - - @staticmethod - def feature_loss(feats_real, feats_generated): - loss = 0 - for dr, dg in zip(feats_real, feats_generated): - for rl, gl in zip(dr, dg): - rl = rl.float().detach() - gl = gl.float() - loss += torch.mean(torch.abs(rl - gl)) - return loss * 2 - - @staticmethod - def generator_loss(scores_fake): - loss = 0 - gen_losses = [] - for dg in scores_fake: - dg = dg.float() - l = torch.mean((1 - dg) ** 2) - gen_losses.append(l) - loss += l - - return loss, gen_losses - - @staticmethod - def kl_loss(z_p, logs_q, m_p, logs_p, z_mask): - """ - z_p, logs_q: [b, h, t_t] - m_p, logs_p: [b, h, t_t] - """ - z_p = z_p.float() - logs_q = logs_q.float() - m_p = m_p.float() - logs_p = logs_p.float() - z_mask = z_mask.float() - - kl = logs_p - logs_q - 0.5 - kl += 0.5 * ((z_p - m_p) ** 2) * torch.exp(-2.0 * logs_p) - kl = torch.sum(kl * z_mask) - l = kl / torch.sum(z_mask) - return l - - @staticmethod - def cosine_similarity_loss(gt_spk_emb, syn_spk_emb): - return -torch.nn.functional.cosine_similarity(gt_spk_emb, syn_spk_emb).mean() - - def forward( - self, - mel_slice, - mel_slice_hat, - z_p, - logs_q, - m_p, - logs_p, - z_len, - scores_disc_fake, - feats_disc_fake, - feats_disc_real, - loss_duration, - use_speaker_encoder_as_loss=False, - gt_spk_emb=None, - syn_spk_emb=None, - ): - """ - Shapes: - - mel_slice : :math:`[B, 1, T]` - - mel_slice_hat: :math:`[B, 1, T]` - - z_p: :math:`[B, C, T]` - - logs_q: :math:`[B, C, T]` - - m_p: :math:`[B, C, T]` - - logs_p: :math:`[B, C, T]` - - z_len: :math:`[B]` - - scores_disc_fake[i]: :math:`[B, C]` - - feats_disc_fake[i][j]: :math:`[B, C, T', P]` - - feats_disc_real[i][j]: :math:`[B, C, T', P]` - """ - loss = 0.0 - return_dict = {} - z_mask = sequence_mask(z_len).float() - # compute losses - loss_kl = ( - self.kl_loss(z_p=z_p, logs_q=logs_q, m_p=m_p, logs_p=logs_p, z_mask=z_mask.unsqueeze(1)) - * self.kl_loss_alpha - ) - loss_feat = ( - self.feature_loss(feats_real=feats_disc_real, feats_generated=feats_disc_fake) * self.feat_loss_alpha - ) - loss_gen = self.generator_loss(scores_fake=scores_disc_fake)[0] * self.gen_loss_alpha - loss_mel = torch.nn.functional.l1_loss(mel_slice, mel_slice_hat) * self.mel_loss_alpha - loss_duration = torch.sum(loss_duration.float()) * self.dur_loss_alpha - loss = loss_kl + loss_feat + loss_mel + loss_gen + loss_duration - - if use_speaker_encoder_as_loss: - loss_se = self.cosine_similarity_loss(gt_spk_emb, syn_spk_emb) * self.spk_encoder_loss_alpha - loss = loss + loss_se - return_dict["loss_spk_encoder"] = loss_se - # pass losses to the dict - return_dict["loss_gen"] = loss_gen - return_dict["loss_kl"] = loss_kl - return_dict["loss_feat"] = loss_feat - return_dict["loss_mel"] = loss_mel - return_dict["loss_duration"] = loss_duration - return_dict["loss"] = loss - return return_dict - - -class VitsDiscriminatorLoss(nn.Module): - def __init__(self, c: Coqpit): - super().__init__() - self.disc_loss_alpha = c.disc_loss_alpha - - @staticmethod - def discriminator_loss(scores_real, scores_fake): - loss = 0 - real_losses = [] - fake_losses = [] - for dr, dg in zip(scores_real, scores_fake): - dr = dr.float() - dg = dg.float() - real_loss = torch.mean((1 - dr) ** 2) - fake_loss = torch.mean(dg**2) - loss += real_loss + fake_loss - real_losses.append(real_loss.item()) - fake_losses.append(fake_loss.item()) - return loss, real_losses, fake_losses - - def forward(self, scores_disc_real, scores_disc_fake): - loss = 0.0 - return_dict = {} - loss_disc, loss_disc_real, _ = self.discriminator_loss( - scores_real=scores_disc_real, scores_fake=scores_disc_fake - ) - return_dict["loss_disc"] = loss_disc * self.disc_loss_alpha - loss = loss + return_dict["loss_disc"] - return_dict["loss"] = loss - - for i, ldr in enumerate(loss_disc_real): - return_dict[f"loss_disc_real_{i}"] = ldr - return return_dict - - -class ForwardTTSLoss(nn.Module): - """Generic configurable ForwardTTS loss.""" - - def __init__(self, c): - super().__init__() - if c.spec_loss_type == "mse": - self.spec_loss = MSELossMasked(False) - elif c.spec_loss_type == "l1": - self.spec_loss = L1LossMasked(False) - else: - raise ValueError(" [!] Unknown spec_loss_type {}".format(c.spec_loss_type)) - - if c.duration_loss_type == "mse": - self.dur_loss = MSELossMasked(False) - elif c.duration_loss_type == "l1": - self.dur_loss = L1LossMasked(False) - elif c.duration_loss_type == "huber": - self.dur_loss = Huber() - else: - raise ValueError(" [!] Unknown duration_loss_type {}".format(c.duration_loss_type)) - - if c.model_args.use_aligner: - self.aligner_loss = ForwardSumLoss() - self.aligner_loss_alpha = c.aligner_loss_alpha - - if c.model_args.use_pitch: - self.pitch_loss = MSELossMasked(False) - self.pitch_loss_alpha = c.pitch_loss_alpha - - if c.model_args.use_energy: - self.energy_loss = MSELossMasked(False) - self.energy_loss_alpha = c.energy_loss_alpha - - if c.use_ssim_loss: - self.ssim = SSIMLoss() if c.use_ssim_loss else None - self.ssim_loss_alpha = c.ssim_loss_alpha - - self.spec_loss_alpha = c.spec_loss_alpha - self.dur_loss_alpha = c.dur_loss_alpha - self.binary_alignment_loss_alpha = c.binary_align_loss_alpha - - @staticmethod - def _binary_alignment_loss(alignment_hard, alignment_soft): - """Binary loss that forces soft alignments to match the hard alignments as - explained in `https://arxiv.org/pdf/2108.10447.pdf`. - """ - log_sum = torch.log(torch.clamp(alignment_soft[alignment_hard == 1], min=1e-12)).sum() - return -log_sum / alignment_hard.sum() - - def forward( - self, - decoder_output, - decoder_target, - decoder_output_lens, - dur_output, - dur_target, - pitch_output, - pitch_target, - energy_output, - energy_target, - input_lens, - alignment_logprob=None, - alignment_hard=None, - alignment_soft=None, - binary_loss_weight=None, - ): - loss = 0 - return_dict = {} - if hasattr(self, "ssim_loss") and self.ssim_loss_alpha > 0: - ssim_loss = self.ssim(decoder_output, decoder_target, decoder_output_lens) - loss = loss + self.ssim_loss_alpha * ssim_loss - return_dict["loss_ssim"] = self.ssim_loss_alpha * ssim_loss - - if self.spec_loss_alpha > 0: - spec_loss = self.spec_loss(decoder_output, decoder_target, decoder_output_lens) - loss = loss + self.spec_loss_alpha * spec_loss - return_dict["loss_spec"] = self.spec_loss_alpha * spec_loss - - if self.dur_loss_alpha > 0: - log_dur_tgt = torch.log(dur_target.float() + 1) - dur_loss = self.dur_loss(dur_output[:, :, None], log_dur_tgt[:, :, None], input_lens) - loss = loss + self.dur_loss_alpha * dur_loss - return_dict["loss_dur"] = self.dur_loss_alpha * dur_loss - - if hasattr(self, "pitch_loss") and self.pitch_loss_alpha > 0: - pitch_loss = self.pitch_loss(pitch_output.transpose(1, 2), pitch_target.transpose(1, 2), input_lens) - loss = loss + self.pitch_loss_alpha * pitch_loss - return_dict["loss_pitch"] = self.pitch_loss_alpha * pitch_loss - - if hasattr(self, "energy_loss") and self.energy_loss_alpha > 0: - energy_loss = self.energy_loss(energy_output.transpose(1, 2), energy_target.transpose(1, 2), input_lens) - loss = loss + self.energy_loss_alpha * energy_loss - return_dict["loss_energy"] = self.energy_loss_alpha * energy_loss - - if hasattr(self, "aligner_loss") and self.aligner_loss_alpha > 0: - aligner_loss = self.aligner_loss(alignment_logprob, input_lens, decoder_output_lens) - loss = loss + self.aligner_loss_alpha * aligner_loss - return_dict["loss_aligner"] = self.aligner_loss_alpha * aligner_loss - - if self.binary_alignment_loss_alpha > 0 and alignment_hard is not None: - binary_alignment_loss = self._binary_alignment_loss(alignment_hard, alignment_soft) - loss = loss + self.binary_alignment_loss_alpha * binary_alignment_loss - if binary_loss_weight: - return_dict["loss_binary_alignment"] = ( - self.binary_alignment_loss_alpha * binary_alignment_loss * binary_loss_weight - ) - else: - return_dict["loss_binary_alignment"] = self.binary_alignment_loss_alpha * binary_alignment_loss - - return_dict["loss"] = loss - return return_dict diff --git a/TTS/tts/layers/overflow/__init__.py b/TTS/tts/layers/overflow/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/layers/overflow/common_layers.py b/TTS/tts/layers/overflow/common_layers.py deleted file mode 100644 index b036dd1bda92fb709f0cce796cf5a668a1c081df..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/overflow/common_layers.py +++ /dev/null @@ -1,323 +0,0 @@ -from typing import List, Tuple - -import torch -import torch.nn.functional as F -from torch import nn -from tqdm.auto import tqdm - -from TTS.tts.layers.tacotron.common_layers import Linear -from TTS.tts.layers.tacotron.tacotron2 import ConvBNBlock - - -class Encoder(nn.Module): - r"""Neural HMM Encoder - - Same as Tacotron 2 encoder but increases the input length by states per phone - - Args: - num_chars (int): Number of characters in the input. - state_per_phone (int): Number of states per phone. - in_out_channels (int): number of input and output channels. - n_convolutions (int): number of convolutional layers. - """ - - def __init__(self, num_chars, state_per_phone, in_out_channels=512, n_convolutions=3): - super().__init__() - - self.state_per_phone = state_per_phone - self.in_out_channels = in_out_channels - - self.emb = nn.Embedding(num_chars, in_out_channels) - self.convolutions = nn.ModuleList() - for _ in range(n_convolutions): - self.convolutions.append(ConvBNBlock(in_out_channels, in_out_channels, 5, "relu")) - self.lstm = nn.LSTM( - in_out_channels, - int(in_out_channels / 2) * state_per_phone, - num_layers=1, - batch_first=True, - bias=True, - bidirectional=True, - ) - self.rnn_state = None - - def forward(self, x: torch.FloatTensor, x_len: torch.LongTensor) -> Tuple[torch.FloatTensor, torch.LongTensor]: - """Forward pass to the encoder. - - Args: - x (torch.FloatTensor): input text indices. - - shape: :math:`(b, T_{in})` - x_len (torch.LongTensor): input text lengths. - - shape: :math:`(b,)` - - Returns: - Tuple[torch.FloatTensor, torch.LongTensor]: encoder outputs and output lengths. - -shape: :math:`((b, T_{in} * states_per_phone, in_out_channels), (b,))` - """ - b, T = x.shape - o = self.emb(x).transpose(1, 2) - for layer in self.convolutions: - o = layer(o) - o = o.transpose(1, 2) - o = nn.utils.rnn.pack_padded_sequence(o, x_len.cpu(), batch_first=True) - self.lstm.flatten_parameters() - o, _ = self.lstm(o) - o, _ = nn.utils.rnn.pad_packed_sequence(o, batch_first=True) - o = o.reshape(b, T * self.state_per_phone, self.in_out_channels) - x_len = x_len * self.state_per_phone - return o, x_len - - def inference(self, x, x_len): - """Inference to the encoder. - - Args: - x (torch.FloatTensor): input text indices. - - shape: :math:`(b, T_{in})` - x_len (torch.LongTensor): input text lengths. - - shape: :math:`(b,)` - - Returns: - Tuple[torch.FloatTensor, torch.LongTensor]: encoder outputs and output lengths. - -shape: :math:`((b, T_{in} * states_per_phone, in_out_channels), (b,))` - """ - b, T = x.shape - o = self.emb(x).transpose(1, 2) - for layer in self.convolutions: - o = layer(o) - o = o.transpose(1, 2) - # self.lstm.flatten_parameters() - o, _ = self.lstm(o) - o = o.reshape(b, T * self.state_per_phone, self.in_out_channels) - x_len = x_len * self.state_per_phone - return o, x_len - - -class ParameterModel(nn.Module): - r"""Main neural network of the outputnet - - Note: Do not put dropout layers here, the model will not converge. - - Args: - outputnet_size (List[int]): the architecture of the parameter model - input_size (int): size of input for the first layer - output_size (int): size of output i.e size of the feature dim - frame_channels (int): feature dim to set the flat start bias - flat_start_params (dict): flat start parameters to set the bias - """ - - def __init__( - self, - outputnet_size: List[int], - input_size: int, - output_size: int, - frame_channels: int, - flat_start_params: dict, - ): - super().__init__() - self.frame_channels = frame_channels - - self.layers = nn.ModuleList( - [Linear(inp, out) for inp, out in zip([input_size] + outputnet_size[:-1], outputnet_size)] - ) - self.last_layer = nn.Linear(outputnet_size[-1], output_size) - self.flat_start_output_layer( - flat_start_params["mean"], flat_start_params["std"], flat_start_params["transition_p"] - ) - - def flat_start_output_layer(self, mean, std, transition_p): - self.last_layer.weight.data.zero_() - self.last_layer.bias.data[0 : self.frame_channels] = mean - self.last_layer.bias.data[self.frame_channels : 2 * self.frame_channels] = OverflowUtils.inverse_softplus(std) - self.last_layer.bias.data[2 * self.frame_channels :] = OverflowUtils.inverse_sigmod(transition_p) - - def forward(self, x): - for layer in self.layers: - x = F.relu(layer(x)) - x = self.last_layer(x) - return x - - -class Outputnet(nn.Module): - r""" - This network takes current state and previous observed values as input - and returns its parameters, mean, standard deviation and probability - of transition to the next state - """ - - def __init__( - self, - encoder_dim: int, - memory_rnn_dim: int, - frame_channels: int, - outputnet_size: List[int], - flat_start_params: dict, - std_floor: float = 1e-2, - ): - super().__init__() - - self.frame_channels = frame_channels - self.flat_start_params = flat_start_params - self.std_floor = std_floor - - input_size = memory_rnn_dim + encoder_dim - output_size = 2 * frame_channels + 1 - - self.parametermodel = ParameterModel( - outputnet_size=outputnet_size, - input_size=input_size, - output_size=output_size, - flat_start_params=flat_start_params, - frame_channels=frame_channels, - ) - - def forward(self, ar_mels, inputs): - r"""Inputs observation and returns the means, stds and transition probability for the current state - - Args: - ar_mel_inputs (torch.FloatTensor): shape (batch, prenet_dim) - states (torch.FloatTensor): (batch, hidden_states, hidden_state_dim) - - Returns: - means: means for the emission observation for each feature - - shape: (B, hidden_states, feature_size) - stds: standard deviations for the emission observation for each feature - - shape: (batch, hidden_states, feature_size) - transition_vectors: transition vector for the current hidden state - - shape: (batch, hidden_states) - """ - batch_size, prenet_dim = ar_mels.shape[0], ar_mels.shape[1] - N = inputs.shape[1] - - ar_mels = ar_mels.unsqueeze(1).expand(batch_size, N, prenet_dim) - ar_mels = torch.cat((ar_mels, inputs), dim=2) - ar_mels = self.parametermodel(ar_mels) - - mean, std, transition_vector = ( - ar_mels[:, :, 0 : self.frame_channels], - ar_mels[:, :, self.frame_channels : 2 * self.frame_channels], - ar_mels[:, :, 2 * self.frame_channels :].squeeze(2), - ) - std = F.softplus(std) - std = self._floor_std(std) - return mean, std, transition_vector - - def _floor_std(self, std): - r""" - It clamps the standard deviation to not to go below some level - This removes the problem when the model tries to cheat for higher likelihoods by converting - one of the gaussians to a point mass. - - Args: - std (float Tensor): tensor containing the standard deviation to be - """ - original_tensor = std.clone().detach() - std = torch.clamp(std, min=self.std_floor) - if torch.any(original_tensor != std): - print( - "[*] Standard deviation was floored! The model is preventing overfitting, nothing serious to worry about" - ) - return std - - -class OverflowUtils: - @staticmethod - def get_data_parameters_for_flat_start( - data_loader: torch.utils.data.DataLoader, out_channels: int, states_per_phone: int - ): - """Generates data parameters for flat starting the HMM. - - Args: - data_loader (torch.utils.data.Dataloader): _description_ - out_channels (int): mel spectrogram channels - states_per_phone (_type_): HMM states per phone - """ - - # State related information for transition_p - total_state_len = 0 - total_mel_len = 0 - - # Useful for data mean an std - total_mel_sum = 0 - total_mel_sq_sum = 0 - - for batch in tqdm(data_loader, leave=False): - text_lengths = batch["token_id_lengths"] - mels = batch["mel"] - mel_lengths = batch["mel_lengths"] - - total_state_len += torch.sum(text_lengths) - total_mel_len += torch.sum(mel_lengths) - total_mel_sum += torch.sum(mels) - total_mel_sq_sum += torch.sum(torch.pow(mels, 2)) - - data_mean = total_mel_sum / (total_mel_len * out_channels) - data_std = torch.sqrt((total_mel_sq_sum / (total_mel_len * out_channels)) - torch.pow(data_mean, 2)) - average_num_states = total_state_len / len(data_loader.dataset) - average_mel_len = total_mel_len / len(data_loader.dataset) - average_duration_each_state = average_mel_len / average_num_states - init_transition_prob = 1 / average_duration_each_state - - return data_mean, data_std, (init_transition_prob * states_per_phone) - - @staticmethod - @torch.no_grad() - def update_flat_start_transition(model, transition_p): - model.neural_hmm.output_net.parametermodel.flat_start_output_layer(0.0, 1.0, transition_p) - - @staticmethod - def log_clamped(x, eps=1e-04): - """ - Avoids the log(0) problem - - Args: - x (torch.tensor): input tensor - eps (float, optional): lower bound. Defaults to 1e-04. - - Returns: - torch.tensor: :math:`log(x)` - """ - clamped_x = torch.clamp(x, min=eps) - return torch.log(clamped_x) - - @staticmethod - def inverse_sigmod(x): - r""" - Inverse of the sigmoid function - """ - if not torch.is_tensor(x): - x = torch.tensor(x) - return OverflowUtils.log_clamped(x / (1.0 - x)) - - @staticmethod - def inverse_softplus(x): - r""" - Inverse of the softplus function - """ - if not torch.is_tensor(x): - x = torch.tensor(x) - return OverflowUtils.log_clamped(torch.exp(x) - 1.0) - - @staticmethod - def logsumexp(x, dim): - r""" - Differentiable LogSumExp: Does not creates nan gradients - when all the inputs are -inf yeilds 0 gradients. - Args: - x : torch.Tensor - The input tensor - dim: int - The dimension on which the log sum exp has to be applied - """ - - m, _ = x.max(dim=dim) - mask = m == -float("inf") - s = (x - m.masked_fill_(mask, 0).unsqueeze(dim=dim)).exp().sum(dim=dim) - return s.masked_fill_(mask, 1).log() + m.masked_fill_(mask, -float("inf")) - - @staticmethod - def double_pad(list_of_different_shape_tensors): - r""" - Pads the list of tensors in 2 dimensions - """ - second_dim_lens = [len(a) for a in [i[0] for i in list_of_different_shape_tensors]] - second_dim_max = max(second_dim_lens) - padded_x = [F.pad(x, (0, second_dim_max - len(x[0]))) for x in list_of_different_shape_tensors] - return nn.utils.rnn.pad_sequence(padded_x, batch_first=True) diff --git a/TTS/tts/layers/overflow/decoder.py b/TTS/tts/layers/overflow/decoder.py deleted file mode 100644 index 4cd7ae88068cfaffe179f2e61354cc7eb760268c..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/overflow/decoder.py +++ /dev/null @@ -1,81 +0,0 @@ -import torch -from torch import nn - -from TTS.tts.layers.glow_tts.decoder import Decoder as GlowDecoder -from TTS.tts.utils.helpers import sequence_mask - - -class Decoder(nn.Module): - """Uses glow decoder with some modifications. - :: - - Squeeze -> ActNorm -> InvertibleConv1x1 -> AffineCoupling -> Unsqueeze - - Args: - in_channels (int): channels of input tensor. - hidden_channels (int): hidden decoder channels. - kernel_size (int): Coupling block kernel size. (Wavenet filter kernel size.) - dilation_rate (int): rate to increase dilation by each layer in a decoder block. - num_flow_blocks (int): number of decoder blocks. - num_coupling_layers (int): number coupling layers. (number of wavenet layers.) - dropout_p (float): wavenet dropout rate. - sigmoid_scale (bool): enable/disable sigmoid scaling in coupling layer. - """ - - def __init__( - self, - in_channels, - hidden_channels, - kernel_size, - dilation_rate, - num_flow_blocks, - num_coupling_layers, - dropout_p=0.0, - num_splits=4, - num_squeeze=2, - sigmoid_scale=False, - c_in_channels=0, - ): - super().__init__() - - self.glow_decoder = GlowDecoder( - in_channels, - hidden_channels, - kernel_size, - dilation_rate, - num_flow_blocks, - num_coupling_layers, - dropout_p, - num_splits, - num_squeeze, - sigmoid_scale, - c_in_channels, - ) - self.n_sqz = num_squeeze - - def forward(self, x, x_len, g=None, reverse=False): - """ - Input shapes: - - x: :math:`[B, C, T]` - - x_len :math:`[B]` - - g: :math:`[B, C]` - - Output shapes: - - x: :math:`[B, C, T]` - - x_len :math:`[B]` - - logget_tot :math:`[B]` - """ - x, x_len, x_max_len = self.preprocess(x, x_len, x_len.max()) - x_mask = torch.unsqueeze(sequence_mask(x_len, x_max_len), 1).to(x.dtype) - x, logdet_tot = self.glow_decoder(x, x_mask, g, reverse) - return x, x_len, logdet_tot - - def preprocess(self, y, y_lengths, y_max_length): - if y_max_length is not None: - y_max_length = torch.div(y_max_length, self.n_sqz, rounding_mode="floor") * self.n_sqz - y = y[:, :, :y_max_length] - y_lengths = torch.div(y_lengths, self.n_sqz, rounding_mode="floor") * self.n_sqz - return y, y_lengths, y_max_length - - def store_inverse(self): - self.glow_decoder.store_inverse() diff --git a/TTS/tts/layers/overflow/neural_hmm.py b/TTS/tts/layers/overflow/neural_hmm.py deleted file mode 100644 index 0631ba98c00029e9871c965e4c7f465aa32bc406..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/overflow/neural_hmm.py +++ /dev/null @@ -1,553 +0,0 @@ -from typing import List - -import torch -import torch.distributions as tdist -import torch.nn.functional as F -from torch import nn -from torch.utils.checkpoint import checkpoint - -from TTS.tts.layers.overflow.common_layers import Outputnet, OverflowUtils -from TTS.tts.layers.tacotron.common_layers import Prenet -from TTS.tts.utils.helpers import sequence_mask - - -class NeuralHMM(nn.Module): - """Autoregressive left to right HMM model primarily used in "Neural HMMs are all you need (for high-quality attention-free TTS)" - - Paper:: - https://arxiv.org/abs/2108.13320 - - Paper abstract:: - Neural sequence-to-sequence TTS has achieved significantly better output quality than statistical speech synthesis using - HMMs. However, neural TTS is generally not probabilistic and uses non-monotonic attention. Attention failures increase - training time and can make synthesis babble incoherently. This paper describes how the old and new paradigms can be - combined to obtain the advantages of both worlds, by replacing attention in neural TTS with an autoregressive left-right - no-skip hidden Markov model defined by a neural network. Based on this proposal, we modify Tacotron 2 to obtain an - HMM-based neural TTS model with monotonic alignment, trained to maximise the full sequence likelihood without - approximation. We also describe how to combine ideas from classical and contemporary TTS for best results. The resulting - example system is smaller and simpler than Tacotron 2, and learns to speak with fewer iterations and less data, whilst - achieving comparable naturalness prior to the post-net. Our approach also allows easy control over speaking rate. - - Args: - frame_channels (int): Output dimension to generate. - ar_order (int): Autoregressive order of the model. In ablations of Neural HMM it was found that more autoregression while giving more variation hurts naturalness of the synthesised audio. - deterministic_transition (bool): deterministic duration generation based on duration quantiles as defiend in "S. Ronanki, O. Watts, S. King, and G. E. Henter, “Medianbased generation of synthetic speech durations using a nonparametric approach,” in Proc. SLT, 2016.". Defaults to True. - encoder_dim (int): Channels of encoder input and character embedding tensors. Defaults to 512. - prenet_type (str): `original` or `bn`. `original` sets the default Prenet and `bn` uses Batch Normalization version of the Prenet. - prenet_dim (int): Dimension of the Prenet. - prenet_n_layers (int): Number of layers in the Prenet. - prenet_dropout (float): Dropout probability of the Prenet. - prenet_dropout_at_inference (bool): If True, dropout is applied at inference time. - memory_rnn_dim (int): Size of the memory RNN to process output of prenet. - outputnet_size (List[int]): Size of the output network inside the neural HMM. - flat_start_params (dict): Parameters for the flat start initialization of the neural HMM. - std_floor (float): Floor value for the standard deviation of the neural HMM. Prevents model cheating by putting point mass and getting infinite likelihood at any datapoint. - use_grad_checkpointing (bool, optional): Use gradient checkpointing to save memory. Defaults to True. - """ - - def __init__( - self, - frame_channels: int, - ar_order: int, - deterministic_transition: bool, - encoder_dim: int, - prenet_type: str, - prenet_dim: int, - prenet_n_layers: int, - prenet_dropout: float, - prenet_dropout_at_inference: bool, - memory_rnn_dim: int, - outputnet_size: List[int], - flat_start_params: dict, - std_floor: float, - use_grad_checkpointing: bool = True, - ): - super().__init__() - - self.frame_channels = frame_channels - self.ar_order = ar_order - self.deterministic_transition = deterministic_transition - self.prenet_dim = prenet_dim - self.memory_rnn_dim = memory_rnn_dim - self.use_grad_checkpointing = use_grad_checkpointing - - self.transition_model = TransitionModel() - self.emission_model = EmissionModel() - - assert ar_order > 0, f"AR order must be greater than 0 provided {ar_order}" - - self.ar_order = ar_order - self.prenet = Prenet( - in_features=frame_channels * ar_order, - prenet_type=prenet_type, - prenet_dropout=prenet_dropout, - dropout_at_inference=prenet_dropout_at_inference, - out_features=[self.prenet_dim for _ in range(prenet_n_layers)], - bias=False, - ) - self.memory_rnn = nn.LSTMCell(input_size=prenet_dim, hidden_size=memory_rnn_dim) - self.output_net = Outputnet( - encoder_dim, memory_rnn_dim, frame_channels, outputnet_size, flat_start_params, std_floor - ) - self.register_buffer("go_tokens", torch.zeros(ar_order, 1)) - - def forward(self, inputs, inputs_len, mels, mel_lens): - r"""HMM forward algorithm for training uses logarithmic version of Rabiner (1989) forward algorithm. - - Args: - inputs (torch.FloatTensor): Encoder outputs - inputs_len (torch.LongTensor): Encoder output lengths - mels (torch.FloatTensor): Mel inputs - mel_lens (torch.LongTensor): Length of mel inputs - - Shapes: - - inputs: (B, T, D_out_enc) - - inputs_len: (B) - - mels: (B, D_mel, T_mel) - - mel_lens: (B) - - Returns: - log_prob (torch.FloatTensor): Log probability of the sequence - """ - # Get dimensions of inputs - batch_size, N, _ = inputs.shape - T_max = torch.max(mel_lens) - mels = mels.permute(0, 2, 1) - - # Intialize forward algorithm - log_state_priors = self._initialize_log_state_priors(inputs) - log_c, log_alpha_scaled, transition_matrix, means = self._initialize_forward_algorithm_variables(mels, N) - - # Initialize autoregression elements - ar_inputs = self._add_go_token(mels) - h_memory, c_memory = self._init_lstm_states(batch_size, self.memory_rnn_dim, mels) - - for t in range(T_max): - # Process Autoregression - h_memory, c_memory = self._process_ar_timestep(t, ar_inputs, h_memory, c_memory) - # Get mean, std and transition vector from decoder for this timestep - # Note: Gradient checkpointing currently doesn't works with multiple gpus inside a loop - if self.use_grad_checkpointing and self.training: - mean, std, transition_vector = checkpoint(self.output_net, h_memory, inputs) - else: - mean, std, transition_vector = self.output_net(h_memory, inputs) - - if t == 0: - log_alpha_temp = log_state_priors + self.emission_model(mels[:, 0], mean, std, inputs_len) - else: - log_alpha_temp = self.emission_model(mels[:, t], mean, std, inputs_len) + self.transition_model( - log_alpha_scaled[:, t - 1, :], transition_vector, inputs_len - ) - log_c[:, t] = torch.logsumexp(log_alpha_temp, dim=1) - log_alpha_scaled[:, t, :] = log_alpha_temp - log_c[:, t].unsqueeze(1) - transition_matrix[:, t] = transition_vector # needed for absorption state calculation - - # Save for plotting - means.append(mean.detach()) - - log_c, log_alpha_scaled = self._mask_lengths(mel_lens, log_c, log_alpha_scaled) - - sum_final_log_c = self.get_absorption_state_scaling_factor( - mel_lens, log_alpha_scaled, inputs_len, transition_matrix - ) - - log_probs = torch.sum(log_c, dim=1) + sum_final_log_c - - return log_probs, log_alpha_scaled, transition_matrix, means - - @staticmethod - def _mask_lengths(mel_lens, log_c, log_alpha_scaled): - """ - Mask the lengths of the forward variables so that the variable lenghts - do not contribute in the loss calculation - Args: - mel_inputs (torch.FloatTensor): (batch, T, frame_channels) - mel_inputs_lengths (torch.IntTensor): (batch) - log_c (torch.FloatTensor): (batch, T) - Returns: - log_c (torch.FloatTensor) : scaled probabilities (batch, T) - log_alpha_scaled (torch.FloatTensor): forward probabilities (batch, T, N) - """ - mask_log_c = sequence_mask(mel_lens) - log_c = log_c * mask_log_c - mask_log_alpha_scaled = mask_log_c.unsqueeze(2) - log_alpha_scaled = log_alpha_scaled * mask_log_alpha_scaled - return log_c, log_alpha_scaled - - def _process_ar_timestep( - self, - t, - ar_inputs, - h_memory, - c_memory, - ): - """ - Process autoregression in timestep - 1. At a specific t timestep - 2. Perform data dropout if applied (we did not use it) - 3. Run the autoregressive frame through the prenet (has dropout) - 4. Run the prenet output through the post prenet rnn - - Args: - t (int): mel-spec timestep - ar_inputs (torch.FloatTensor): go-token appended mel-spectrograms - - shape: (b, D_out, T_out) - h_post_prenet (torch.FloatTensor): previous timestep rnn hidden state - - shape: (b, memory_rnn_dim) - c_post_prenet (torch.FloatTensor): previous timestep rnn cell state - - shape: (b, memory_rnn_dim) - - Returns: - h_post_prenet (torch.FloatTensor): rnn hidden state of the current timestep - c_post_prenet (torch.FloatTensor): rnn cell state of the current timestep - """ - prenet_input = ar_inputs[:, t : t + self.ar_order].flatten(1) - memory_inputs = self.prenet(prenet_input) - h_memory, c_memory = self.memory_rnn(memory_inputs, (h_memory, c_memory)) - return h_memory, c_memory - - def _add_go_token(self, mel_inputs): - """Append the go token to create the autoregressive input - Args: - mel_inputs (torch.FloatTensor): (batch_size, T, n_mel_channel) - Returns: - ar_inputs (torch.FloatTensor): (batch_size, T, n_mel_channel) - """ - batch_size, T, _ = mel_inputs.shape - go_tokens = self.go_tokens.unsqueeze(0).expand(batch_size, self.ar_order, self.frame_channels) - ar_inputs = torch.cat((go_tokens, mel_inputs), dim=1)[:, :T] - return ar_inputs - - @staticmethod - def _initialize_forward_algorithm_variables(mel_inputs, N): - r"""Initialize placeholders for forward algorithm variables, to use a stable - version we will use log_alpha_scaled and the scaling constant - - Args: - mel_inputs (torch.FloatTensor): (b, T_max, frame_channels) - N (int): number of states - Returns: - log_c (torch.FloatTensor): Scaling constant (b, T_max) - """ - b, T_max, _ = mel_inputs.shape - log_alpha_scaled = mel_inputs.new_zeros((b, T_max, N)) - log_c = mel_inputs.new_zeros(b, T_max) - transition_matrix = mel_inputs.new_zeros((b, T_max, N)) - - # Saving for plotting later, will not have gradient tapes - means = [] - return log_c, log_alpha_scaled, transition_matrix, means - - @staticmethod - def _init_lstm_states(batch_size, hidden_state_dim, device_tensor): - r""" - Initialize Hidden and Cell states for LSTM Cell - - Args: - batch_size (Int): batch size - hidden_state_dim (Int): dimensions of the h and c - device_tensor (torch.FloatTensor): useful for the device and type - - Returns: - (torch.FloatTensor): shape (batch_size, hidden_state_dim) - can be hidden state for LSTM - (torch.FloatTensor): shape (batch_size, hidden_state_dim) - can be the cell state for LSTM - """ - return ( - device_tensor.new_zeros(batch_size, hidden_state_dim), - device_tensor.new_zeros(batch_size, hidden_state_dim), - ) - - def get_absorption_state_scaling_factor(self, mels_len, log_alpha_scaled, inputs_len, transition_vector): - """Returns the final scaling factor of absorption state - - Args: - mels_len (torch.IntTensor): Input size of mels to - get the last timestep of log_alpha_scaled - log_alpha_scaled (torch.FloatTEnsor): State probabilities - text_lengths (torch.IntTensor): length of the states to - mask the values of states lengths - ( - Useful when the batch has very different lengths, - when the length of an observation is less than - the number of max states, then the log alpha after - the state value is filled with -infs. So we mask - those values so that it only consider the states - which are needed for that length - ) - transition_vector (torch.FloatTensor): transtiion vector for each state per timestep - - Shapes: - - mels_len: (batch_size) - - log_alpha_scaled: (batch_size, N, T) - - text_lengths: (batch_size) - - transition_vector: (batch_size, N, T) - - Returns: - sum_final_log_c (torch.FloatTensor): (batch_size) - - """ - N = torch.max(inputs_len) - max_inputs_len = log_alpha_scaled.shape[2] - state_lengths_mask = sequence_mask(inputs_len, max_len=max_inputs_len) - - last_log_alpha_scaled_index = ( - (mels_len - 1).unsqueeze(-1).expand(-1, N).unsqueeze(1) - ) # Batch X Hidden State Size - last_log_alpha_scaled = torch.gather(log_alpha_scaled, 1, last_log_alpha_scaled_index).squeeze(1) - last_log_alpha_scaled = last_log_alpha_scaled.masked_fill(~state_lengths_mask, -float("inf")) - - last_transition_vector = torch.gather(transition_vector, 1, last_log_alpha_scaled_index).squeeze(1) - last_transition_probability = torch.sigmoid(last_transition_vector) - log_probability_of_transitioning = OverflowUtils.log_clamped(last_transition_probability) - - last_transition_probability_index = self.get_mask_for_last_item(inputs_len, inputs_len.device) - log_probability_of_transitioning = log_probability_of_transitioning.masked_fill( - ~last_transition_probability_index, -float("inf") - ) - final_log_c = last_log_alpha_scaled + log_probability_of_transitioning - - # If the length of the mel is less than the number of states it will select the -inf values leading to nan gradients - # Ideally, we should clean the dataset otherwise this is a little hack uncomment the line below - final_log_c = final_log_c.clamp(min=torch.finfo(final_log_c.dtype).min) - - sum_final_log_c = torch.logsumexp(final_log_c, dim=1) - return sum_final_log_c - - @staticmethod - def get_mask_for_last_item(lengths, device, out_tensor=None): - """Returns n-1 mask for the last item in the sequence. - - Args: - lengths (torch.IntTensor): lengths in a batch - device (str, optional): Defaults to "cpu". - out_tensor (torch.Tensor, optional): uses the memory of a specific tensor. - Defaults to None. - - Returns: - - Shape: :math:`(b, max_len)` - """ - max_len = torch.max(lengths).item() - ids = ( - torch.arange(0, max_len, device=device) if out_tensor is None else torch.arange(0, max_len, out=out_tensor) - ) - mask = ids == lengths.unsqueeze(1) - 1 - return mask - - @torch.inference_mode() - def inference( - self, - inputs: torch.FloatTensor, - input_lens: torch.LongTensor, - sampling_temp: float, - max_sampling_time: int, - duration_threshold: float, - ): - """Inference from autoregressive neural HMM - - Args: - inputs (torch.FloatTensor): input states - - shape: :math:`(b, T, d)` - input_lens (torch.LongTensor): input state lengths - - shape: :math:`(b)` - sampling_temp (float): sampling temperature - max_sampling_temp (int): max sampling temperature - duration_threshold (float): duration threshold to switch to next state - - Use this to change the spearking rate of the synthesised audio - """ - - b = inputs.shape[0] - outputs = { - "hmm_outputs": [], - "hmm_outputs_len": [], - "alignments": [], - "input_parameters": [], - "output_parameters": [], - } - for i in range(b): - neural_hmm_outputs, states_travelled, input_parameters, output_parameters = self.sample( - inputs[i : i + 1], input_lens[i], sampling_temp, max_sampling_time, duration_threshold - ) - - outputs["hmm_outputs"].append(neural_hmm_outputs) - outputs["hmm_outputs_len"].append(neural_hmm_outputs.shape[0]) - outputs["alignments"].append(states_travelled) - outputs["input_parameters"].append(input_parameters) - outputs["output_parameters"].append(output_parameters) - - outputs["hmm_outputs"] = nn.utils.rnn.pad_sequence(outputs["hmm_outputs"], batch_first=True) - outputs["hmm_outputs_len"] = torch.tensor( - outputs["hmm_outputs_len"], dtype=input_lens.dtype, device=input_lens.device - ) - return outputs - - @torch.inference_mode() - def sample(self, inputs, input_lens, sampling_temp, max_sampling_time, duration_threshold): - """Samples an output from the parameter models - - Args: - inputs (torch.FloatTensor): input states - - shape: :math:`(1, T, d)` - input_lens (torch.LongTensor): input state lengths - - shape: :math:`(1)` - sampling_temp (float): sampling temperature - max_sampling_time (int): max sampling time - duration_threshold (float): duration threshold to switch to next state - - Returns: - outputs (torch.FloatTensor): Output Observations - - Shape: :math:`(T, output_dim)` - states_travelled (list[int]): Hidden states travelled - - Shape: :math:`(T)` - input_parameters (list[torch.FloatTensor]): Input parameters - output_parameters (list[torch.FloatTensor]): Output parameters - """ - states_travelled, outputs, t = [], [], 0 - - # Sample initial state - current_state = 0 - states_travelled.append(current_state) - - # Prepare autoregression - prenet_input = self.go_tokens.unsqueeze(0).expand(1, self.ar_order, self.frame_channels) - h_memory, c_memory = self._init_lstm_states(1, self.memory_rnn_dim, prenet_input) - - input_parameter_values = [] - output_parameter_values = [] - quantile = 1 - while True: - memory_input = self.prenet(prenet_input.flatten(1).unsqueeze(0)) - # will be 1 while sampling - h_memory, c_memory = self.memory_rnn(memory_input.squeeze(0), (h_memory, c_memory)) - - z_t = inputs[:, current_state].unsqueeze(0) # Add fake time dimension - mean, std, transition_vector = self.output_net(h_memory, z_t) - - transition_probability = torch.sigmoid(transition_vector.flatten()) - staying_probability = torch.sigmoid(-transition_vector.flatten()) - - # Save for plotting - input_parameter_values.append([prenet_input, current_state]) - output_parameter_values.append([mean, std, transition_probability]) - - x_t = self.emission_model.sample(mean, std, sampling_temp=sampling_temp) - - # Prepare autoregressive input for next iteration - prenet_input = torch.cat((prenet_input, x_t), dim=1)[:, 1:] - - outputs.append(x_t.flatten()) - - transition_matrix = torch.cat((staying_probability, transition_probability)) - quantile *= staying_probability - if not self.deterministic_transition: - switch = transition_matrix.multinomial(1)[0].item() - else: - switch = quantile < duration_threshold - - if switch: - current_state += 1 - quantile = 1 - - states_travelled.append(current_state) - - if (current_state == input_lens) or (max_sampling_time and t == max_sampling_time - 1): - break - - t += 1 - - return ( - torch.stack(outputs, dim=0), - F.one_hot(input_lens.new_tensor(states_travelled)), - input_parameter_values, - output_parameter_values, - ) - - @staticmethod - def _initialize_log_state_priors(text_embeddings): - """Creates the log pi in forward algorithm. - - Args: - text_embeddings (torch.FloatTensor): used to create the log pi - on current device - - Shapes: - - text_embeddings: (B, T, D_out_enc) - """ - N = text_embeddings.shape[1] - log_state_priors = text_embeddings.new_full([N], -float("inf")) - log_state_priors[0] = 0.0 - return log_state_priors - - -class TransitionModel(nn.Module): - """Transition Model of the HMM, it represents the probability of transitioning - form current state to all other states""" - - def forward(self, log_alpha_scaled, transition_vector, inputs_len): # pylint: disable=no-self-use - r""" - product of the past state with transitional probabilities in log space - - Args: - log_alpha_scaled (torch.Tensor): Multiply previous timestep's alphas by - transition matrix (in log domain) - - shape: (batch size, N) - transition_vector (torch.tensor): transition vector for each state - - shape: (N) - inputs_len (int tensor): Lengths of states in a batch - - shape: (batch) - - Returns: - out (torch.FloatTensor): log probability of transitioning to each state - """ - transition_p = torch.sigmoid(transition_vector) - staying_p = torch.sigmoid(-transition_vector) - - log_staying_probability = OverflowUtils.log_clamped(staying_p) - log_transition_probability = OverflowUtils.log_clamped(transition_p) - - staying = log_alpha_scaled + log_staying_probability - leaving = log_alpha_scaled + log_transition_probability - leaving = leaving.roll(1, dims=1) - leaving[:, 0] = -float("inf") - inputs_len_mask = sequence_mask(inputs_len) - out = OverflowUtils.logsumexp(torch.stack((staying, leaving), dim=2), dim=2) - out = out.masked_fill(~inputs_len_mask, -float("inf")) # There are no states to contribute to the loss - return out - - -class EmissionModel(nn.Module): - """Emission Model of the HMM, it represents the probability of - emitting an observation based on the current state""" - - def __init__(self) -> None: - super().__init__() - self.distribution_function: tdist.Distribution = tdist.normal.Normal - - def sample(self, means, stds, sampling_temp): - return self.distribution_function(means, stds * sampling_temp).sample() if sampling_temp > 0 else means - - def forward(self, x_t, means, stds, state_lengths): - r"""Calculates the log probability of the the given data (x_t) - being observed from states with given means and stds - Args: - x_t (float tensor) : observation at current time step - - shape: (batch, feature_dim) - means (float tensor): means of the distributions of hidden states - - shape: (batch, hidden_state, feature_dim) - stds (float tensor): standard deviations of the distributions of the hidden states - - shape: (batch, hidden_state, feature_dim) - state_lengths (int tensor): Lengths of states in a batch - - shape: (batch) - - Returns: - out (float tensor): observation log likelihoods, - expressing the probability of an observation - being generated from a state i - shape: (batch, hidden_state) - """ - emission_dists = self.distribution_function(means, stds) - out = emission_dists.log_prob(x_t.unsqueeze(1)) - state_lengths_mask = sequence_mask(state_lengths).unsqueeze(2) - out = torch.sum(out * state_lengths_mask, dim=2) - return out diff --git a/TTS/tts/layers/overflow/plotting_utils.py b/TTS/tts/layers/overflow/plotting_utils.py deleted file mode 100644 index a63aeb370a38a29660dc93267f4be138381c7df6..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/overflow/plotting_utils.py +++ /dev/null @@ -1,79 +0,0 @@ -from typing import Any - -import matplotlib.pyplot as plt -import numpy as np -import torch - - -def validate_numpy_array(value: Any): - r""" - Validates the input and makes sure it returns a numpy array (i.e on CPU) - - Args: - value (Any): the input value - - Raises: - TypeError: if the value is not a numpy array or torch tensor - - Returns: - np.ndarray: numpy array of the value - """ - if isinstance(value, np.ndarray): - pass - elif isinstance(value, list): - value = np.array(value) - elif torch.is_tensor(value): - value = value.cpu().numpy() - else: - raise TypeError("Value must be a numpy array, a torch tensor or a list") - - return value - - -def get_spec_from_most_probable_state(log_alpha_scaled, means, decoder=None): - """Get the most probable state means from the log_alpha_scaled. - - Args: - log_alpha_scaled (torch.Tensor): Log alpha scaled values. - - Shape: :math:`(T, N)` - means (torch.Tensor): Means of the states. - - Shape: :math:`(N, T, D_out)` - decoder (torch.nn.Module): Decoder module to decode the latent to melspectrogram. Defaults to None. - """ - max_state_numbers = torch.max(log_alpha_scaled, dim=1)[1] - max_len = means.shape[0] - n_mel_channels = means.shape[2] - max_state_numbers = max_state_numbers.unsqueeze(1).unsqueeze(1).expand(max_len, 1, n_mel_channels) - means = torch.gather(means, 1, max_state_numbers).squeeze(1).to(log_alpha_scaled.dtype) - if decoder is not None: - mel = ( - decoder(means.T.unsqueeze(0), torch.tensor([means.shape[0]], device=means.device), reverse=True)[0] - .squeeze(0) - .T - ) - else: - mel = means - return mel - - -def plot_transition_probabilities_to_numpy(states, transition_probabilities, output_fig=False): - """Generates trainsition probabilities plot for the states and the probability of transition. - - Args: - states (torch.IntTensor): the states - transition_probabilities (torch.FloatTensor): the transition probabilities - """ - states = validate_numpy_array(states) - transition_probabilities = validate_numpy_array(transition_probabilities) - - fig, ax = plt.subplots(figsize=(30, 3)) - ax.plot(transition_probabilities, "o") - ax.set_title("Transition probability of state") - ax.set_xlabel("hidden state") - ax.set_ylabel("probability") - ax.set_xticks([i for i in range(len(transition_probabilities))]) # pylint: disable=unnecessary-comprehension - ax.set_xticklabels([int(x) for x in states], rotation=90) - plt.tight_layout() - if not output_fig: - plt.close() - return fig diff --git a/TTS/tts/layers/tacotron/__init__.py b/TTS/tts/layers/tacotron/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/layers/tacotron/attentions.py b/TTS/tts/layers/tacotron/attentions.py deleted file mode 100644 index 25c3798e6b8f5fbc66224af66c9955e245b94097..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tacotron/attentions.py +++ /dev/null @@ -1,486 +0,0 @@ -import torch -from scipy.stats import betabinom -from torch import nn -from torch.nn import functional as F - -from TTS.tts.layers.tacotron.common_layers import Linear - - -class LocationLayer(nn.Module): - """Layers for Location Sensitive Attention - - Args: - attention_dim (int): number of channels in the input tensor. - attention_n_filters (int, optional): number of filters in convolution. Defaults to 32. - attention_kernel_size (int, optional): kernel size of convolution filter. Defaults to 31. - """ - - def __init__(self, attention_dim, attention_n_filters=32, attention_kernel_size=31): - super().__init__() - self.location_conv1d = nn.Conv1d( - in_channels=2, - out_channels=attention_n_filters, - kernel_size=attention_kernel_size, - stride=1, - padding=(attention_kernel_size - 1) // 2, - bias=False, - ) - self.location_dense = Linear(attention_n_filters, attention_dim, bias=False, init_gain="tanh") - - def forward(self, attention_cat): - """ - Shapes: - attention_cat: [B, 2, C] - """ - processed_attention = self.location_conv1d(attention_cat) - processed_attention = self.location_dense(processed_attention.transpose(1, 2)) - return processed_attention - - -class GravesAttention(nn.Module): - """Graves Attention as is ref1 with updates from ref2. - ref1: https://arxiv.org/abs/1910.10288 - ref2: https://arxiv.org/pdf/1906.01083.pdf - - Args: - query_dim (int): number of channels in query tensor. - K (int): number of Gaussian heads to be used for computing attention. - """ - - COEF = 0.3989422917366028 # numpy.sqrt(1/(2*numpy.pi)) - - def __init__(self, query_dim, K): - super().__init__() - self._mask_value = 1e-8 - self.K = K - # self.attention_alignment = 0.05 - self.eps = 1e-5 - self.J = None - self.N_a = nn.Sequential( - nn.Linear(query_dim, query_dim, bias=True), nn.ReLU(), nn.Linear(query_dim, 3 * K, bias=True) - ) - self.attention_weights = None - self.mu_prev = None - self.init_layers() - - def init_layers(self): - torch.nn.init.constant_(self.N_a[2].bias[(2 * self.K) : (3 * self.K)], 1.0) # bias mean - torch.nn.init.constant_(self.N_a[2].bias[self.K : (2 * self.K)], 10) # bias std - - def init_states(self, inputs): - if self.J is None or inputs.shape[1] + 1 > self.J.shape[-1]: - self.J = torch.arange(0, inputs.shape[1] + 2.0).to(inputs.device) + 0.5 - self.attention_weights = torch.zeros(inputs.shape[0], inputs.shape[1]).to(inputs.device) - self.mu_prev = torch.zeros(inputs.shape[0], self.K).to(inputs.device) - - # pylint: disable=R0201 - # pylint: disable=unused-argument - def preprocess_inputs(self, inputs): - return None - - def forward(self, query, inputs, processed_inputs, mask): - """ - Shapes: - query: [B, C_attention_rnn] - inputs: [B, T_in, C_encoder] - processed_inputs: place_holder - mask: [B, T_in] - """ - gbk_t = self.N_a(query) - gbk_t = gbk_t.view(gbk_t.size(0), -1, self.K) - - # attention model parameters - # each B x K - g_t = gbk_t[:, 0, :] - b_t = gbk_t[:, 1, :] - k_t = gbk_t[:, 2, :] - - # dropout to decorrelate attention heads - g_t = torch.nn.functional.dropout(g_t, p=0.5, training=self.training) - - # attention GMM parameters - sig_t = torch.nn.functional.softplus(b_t) + self.eps - - mu_t = self.mu_prev + torch.nn.functional.softplus(k_t) - g_t = torch.softmax(g_t, dim=-1) + self.eps - - j = self.J[: inputs.size(1) + 1] - - # attention weights - phi_t = g_t.unsqueeze(-1) * (1 / (1 + torch.sigmoid((mu_t.unsqueeze(-1) - j) / sig_t.unsqueeze(-1)))) - - # discritize attention weights - alpha_t = torch.sum(phi_t, 1) - alpha_t = alpha_t[:, 1:] - alpha_t[:, :-1] - alpha_t[alpha_t == 0] = 1e-8 - - # apply masking - if mask is not None: - alpha_t.data.masked_fill_(~mask, self._mask_value) - - context = torch.bmm(alpha_t.unsqueeze(1), inputs).squeeze(1) - self.attention_weights = alpha_t - self.mu_prev = mu_t - return context - - -class OriginalAttention(nn.Module): - """Bahdanau Attention with various optional modifications. - - Location sensitive attnetion: https://arxiv.org/abs/1712.05884 - - Forward Attention: https://arxiv.org/abs/1807.06736 + state masking at inference - - Using sigmoid instead of softmax normalization - - Attention windowing at inference time - - Note: - Location Sensitive Attention extends the additive attention mechanism - to use cumulative attention weights from previous decoder time steps with the current time step features. - - Forward attention computes most probable monotonic alignment. The modified attention probabilities at each - timestep are computed recursively by the forward algorithm. - - Transition agent in the forward attention explicitly gates the attention mechanism whether to move forward or - stay at each decoder timestep. - - Attention windowing is a inductive prior that prevents the model from attending to previous and future timesteps - beyond a certain window. - - Args: - query_dim (int): number of channels in the query tensor. - embedding_dim (int): number of channels in the vakue tensor. In general, the value tensor is the output of the encoder layer. - attention_dim (int): number of channels of the inner attention layers. - location_attention (bool): enable/disable location sensitive attention. - attention_location_n_filters (int): number of location attention filters. - attention_location_kernel_size (int): filter size of location attention convolution layer. - windowing (int): window size for attention windowing. if it is 5, for computing the attention, it only considers the time steps [(t-5), ..., (t+5)] of the input. - norm (str): normalization method applied to the attention weights. 'softmax' or 'sigmoid' - forward_attn (bool): enable/disable forward attention. - trans_agent (bool): enable/disable transition agent in the forward attention. - forward_attn_mask (int): enable/disable an explicit masking in forward attention. It is useful to set at especially inference time. - """ - - # Pylint gets confused by PyTorch conventions here - # pylint: disable=attribute-defined-outside-init - def __init__( - self, - query_dim, - embedding_dim, - attention_dim, - location_attention, - attention_location_n_filters, - attention_location_kernel_size, - windowing, - norm, - forward_attn, - trans_agent, - forward_attn_mask, - ): - super().__init__() - self.query_layer = Linear(query_dim, attention_dim, bias=False, init_gain="tanh") - self.inputs_layer = Linear(embedding_dim, attention_dim, bias=False, init_gain="tanh") - self.v = Linear(attention_dim, 1, bias=True) - if trans_agent: - self.ta = nn.Linear(query_dim + embedding_dim, 1, bias=True) - if location_attention: - self.location_layer = LocationLayer( - attention_dim, - attention_location_n_filters, - attention_location_kernel_size, - ) - self._mask_value = -float("inf") - self.windowing = windowing - self.win_idx = None - self.norm = norm - self.forward_attn = forward_attn - self.trans_agent = trans_agent - self.forward_attn_mask = forward_attn_mask - self.location_attention = location_attention - - def init_win_idx(self): - self.win_idx = -1 - self.win_back = 2 - self.win_front = 6 - - def init_forward_attn(self, inputs): - B = inputs.shape[0] - T = inputs.shape[1] - self.alpha = torch.cat([torch.ones([B, 1]), torch.zeros([B, T])[:, :-1] + 1e-7], dim=1).to(inputs.device) - self.u = (0.5 * torch.ones([B, 1])).to(inputs.device) - - def init_location_attention(self, inputs): - B = inputs.size(0) - T = inputs.size(1) - self.attention_weights_cum = torch.zeros([B, T], device=inputs.device) - - def init_states(self, inputs): - B = inputs.size(0) - T = inputs.size(1) - self.attention_weights = torch.zeros([B, T], device=inputs.device) - if self.location_attention: - self.init_location_attention(inputs) - if self.forward_attn: - self.init_forward_attn(inputs) - if self.windowing: - self.init_win_idx() - - def preprocess_inputs(self, inputs): - return self.inputs_layer(inputs) - - def update_location_attention(self, alignments): - self.attention_weights_cum += alignments - - def get_location_attention(self, query, processed_inputs): - attention_cat = torch.cat((self.attention_weights.unsqueeze(1), self.attention_weights_cum.unsqueeze(1)), dim=1) - processed_query = self.query_layer(query.unsqueeze(1)) - processed_attention_weights = self.location_layer(attention_cat) - energies = self.v(torch.tanh(processed_query + processed_attention_weights + processed_inputs)) - energies = energies.squeeze(-1) - return energies, processed_query - - def get_attention(self, query, processed_inputs): - processed_query = self.query_layer(query.unsqueeze(1)) - energies = self.v(torch.tanh(processed_query + processed_inputs)) - energies = energies.squeeze(-1) - return energies, processed_query - - def apply_windowing(self, attention, inputs): - back_win = self.win_idx - self.win_back - front_win = self.win_idx + self.win_front - if back_win > 0: - attention[:, :back_win] = -float("inf") - if front_win < inputs.shape[1]: - attention[:, front_win:] = -float("inf") - # this is a trick to solve a special problem. - # but it does not hurt. - if self.win_idx == -1: - attention[:, 0] = attention.max() - # Update the window - self.win_idx = torch.argmax(attention, 1).long()[0].item() - return attention - - def apply_forward_attention(self, alignment): - # forward attention - fwd_shifted_alpha = F.pad(self.alpha[:, :-1].clone().to(alignment.device), (1, 0, 0, 0)) - # compute transition potentials - alpha = ((1 - self.u) * self.alpha + self.u * fwd_shifted_alpha + 1e-8) * alignment - # force incremental alignment - if not self.training and self.forward_attn_mask: - _, n = fwd_shifted_alpha.max(1) - val, _ = alpha.max(1) - for b in range(alignment.shape[0]): - alpha[b, n[b] + 3 :] = 0 - alpha[b, : (n[b] - 1)] = 0 # ignore all previous states to prevent repetition. - alpha[b, (n[b] - 2)] = 0.01 * val[b] # smoothing factor for the prev step - # renormalize attention weights - alpha = alpha / alpha.sum(dim=1, keepdim=True) - return alpha - - def forward(self, query, inputs, processed_inputs, mask): - """ - shapes: - query: [B, C_attn_rnn] - inputs: [B, T_en, D_en] - processed_inputs: [B, T_en, D_attn] - mask: [B, T_en] - """ - if self.location_attention: - attention, _ = self.get_location_attention(query, processed_inputs) - else: - attention, _ = self.get_attention(query, processed_inputs) - # apply masking - if mask is not None: - attention.data.masked_fill_(~mask, self._mask_value) - # apply windowing - only in eval mode - if not self.training and self.windowing: - attention = self.apply_windowing(attention, inputs) - - # normalize attention values - if self.norm == "softmax": - alignment = torch.softmax(attention, dim=-1) - elif self.norm == "sigmoid": - alignment = torch.sigmoid(attention) / torch.sigmoid(attention).sum(dim=1, keepdim=True) - else: - raise ValueError("Unknown value for attention norm type") - - if self.location_attention: - self.update_location_attention(alignment) - - # apply forward attention if enabled - if self.forward_attn: - alignment = self.apply_forward_attention(alignment) - self.alpha = alignment - - context = torch.bmm(alignment.unsqueeze(1), inputs) - context = context.squeeze(1) - self.attention_weights = alignment - - # compute transition agent - if self.forward_attn and self.trans_agent: - ta_input = torch.cat([context, query.squeeze(1)], dim=-1) - self.u = torch.sigmoid(self.ta(ta_input)) - return context - - -class MonotonicDynamicConvolutionAttention(nn.Module): - """Dynamic convolution attention from - https://arxiv.org/pdf/1910.10288.pdf - - - query -> linear -> tanh -> linear ->| - | mask values - v | | - atten_w(t-1) -|-> conv1d_dynamic -> linear -|-> tanh -> + -> softmax -> * -> * -> context - |-> conv1d_static -> linear -| | - |-> conv1d_prior -> log ----------------| - - query: attention rnn output. - - Note: - Dynamic convolution attention is an alternation of the location senstive attention with - dynamically computed convolution filters from the previous attention scores and a set of - constraints to keep the attention alignment diagonal. - DCA is sensitive to mixed precision training and might cause instable training. - - Args: - query_dim (int): number of channels in the query tensor. - embedding_dim (int): number of channels in the value tensor. - static_filter_dim (int): number of channels in the convolution layer computing the static filters. - static_kernel_size (int): kernel size for the convolution layer computing the static filters. - dynamic_filter_dim (int): number of channels in the convolution layer computing the dynamic filters. - dynamic_kernel_size (int): kernel size for the convolution layer computing the dynamic filters. - prior_filter_len (int, optional): [description]. Defaults to 11 from the paper. - alpha (float, optional): [description]. Defaults to 0.1 from the paper. - beta (float, optional): [description]. Defaults to 0.9 from the paper. - """ - - def __init__( - self, - query_dim, - embedding_dim, # pylint: disable=unused-argument - attention_dim, - static_filter_dim, - static_kernel_size, - dynamic_filter_dim, - dynamic_kernel_size, - prior_filter_len=11, - alpha=0.1, - beta=0.9, - ): - super().__init__() - self._mask_value = 1e-8 - self.dynamic_filter_dim = dynamic_filter_dim - self.dynamic_kernel_size = dynamic_kernel_size - self.prior_filter_len = prior_filter_len - self.attention_weights = None - # setup key and query layers - self.query_layer = nn.Linear(query_dim, attention_dim) - self.key_layer = nn.Linear(attention_dim, dynamic_filter_dim * dynamic_kernel_size, bias=False) - self.static_filter_conv = nn.Conv1d( - 1, - static_filter_dim, - static_kernel_size, - padding=(static_kernel_size - 1) // 2, - bias=False, - ) - self.static_filter_layer = nn.Linear(static_filter_dim, attention_dim, bias=False) - self.dynamic_filter_layer = nn.Linear(dynamic_filter_dim, attention_dim) - self.v = nn.Linear(attention_dim, 1, bias=False) - - prior = betabinom.pmf(range(prior_filter_len), prior_filter_len - 1, alpha, beta) - self.register_buffer("prior", torch.FloatTensor(prior).flip(0)) - - # pylint: disable=unused-argument - def forward(self, query, inputs, processed_inputs, mask): - """ - query: [B, C_attn_rnn] - inputs: [B, T_en, D_en] - processed_inputs: place holder. - mask: [B, T_en] - """ - # compute prior filters - prior_filter = F.conv1d( - F.pad(self.attention_weights.unsqueeze(1), (self.prior_filter_len - 1, 0)), self.prior.view(1, 1, -1) - ) - prior_filter = torch.log(prior_filter.clamp_min_(1e-6)).squeeze(1) - G = self.key_layer(torch.tanh(self.query_layer(query))) - # compute dynamic filters - dynamic_filter = F.conv1d( - self.attention_weights.unsqueeze(0), - G.view(-1, 1, self.dynamic_kernel_size), - padding=(self.dynamic_kernel_size - 1) // 2, - groups=query.size(0), - ) - dynamic_filter = dynamic_filter.view(query.size(0), self.dynamic_filter_dim, -1).transpose(1, 2) - # compute static filters - static_filter = self.static_filter_conv(self.attention_weights.unsqueeze(1)).transpose(1, 2) - alignment = ( - self.v( - torch.tanh(self.static_filter_layer(static_filter) + self.dynamic_filter_layer(dynamic_filter)) - ).squeeze(-1) - + prior_filter - ) - # compute attention weights - attention_weights = F.softmax(alignment, dim=-1) - # apply masking - if mask is not None: - attention_weights.data.masked_fill_(~mask, self._mask_value) - self.attention_weights = attention_weights - # compute context - context = torch.bmm(attention_weights.unsqueeze(1), inputs).squeeze(1) - return context - - def preprocess_inputs(self, inputs): # pylint: disable=no-self-use - return None - - def init_states(self, inputs): - B = inputs.size(0) - T = inputs.size(1) - self.attention_weights = torch.zeros([B, T], device=inputs.device) - self.attention_weights[:, 0] = 1.0 - - -def init_attn( - attn_type, - query_dim, - embedding_dim, - attention_dim, - location_attention, - attention_location_n_filters, - attention_location_kernel_size, - windowing, - norm, - forward_attn, - trans_agent, - forward_attn_mask, - attn_K, -): - if attn_type == "original": - return OriginalAttention( - query_dim, - embedding_dim, - attention_dim, - location_attention, - attention_location_n_filters, - attention_location_kernel_size, - windowing, - norm, - forward_attn, - trans_agent, - forward_attn_mask, - ) - if attn_type == "graves": - return GravesAttention(query_dim, attn_K) - if attn_type == "dynamic_convolution": - return MonotonicDynamicConvolutionAttention( - query_dim, - embedding_dim, - attention_dim, - static_filter_dim=8, - static_kernel_size=21, - dynamic_filter_dim=8, - dynamic_kernel_size=21, - prior_filter_len=11, - alpha=0.1, - beta=0.9, - ) - - raise RuntimeError(f" [!] Given Attention Type '{attn_type}' is not exist.") diff --git a/TTS/tts/layers/tacotron/capacitron_layers.py b/TTS/tts/layers/tacotron/capacitron_layers.py deleted file mode 100644 index 2181ffa7ec4e1f54d86cc5865a8fa7f6b6e362af..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tacotron/capacitron_layers.py +++ /dev/null @@ -1,205 +0,0 @@ -import torch -from torch import nn -from torch.distributions.multivariate_normal import MultivariateNormal as MVN -from torch.nn import functional as F - - -class CapacitronVAE(nn.Module): - """Effective Use of Variational Embedding Capacity for prosody transfer. - - See https://arxiv.org/abs/1906.03402""" - - def __init__( - self, - num_mel, - capacitron_VAE_embedding_dim, - encoder_output_dim=256, - reference_encoder_out_dim=128, - speaker_embedding_dim=None, - text_summary_embedding_dim=None, - ): - super().__init__() - # Init distributions - self.prior_distribution = MVN( - torch.zeros(capacitron_VAE_embedding_dim), torch.eye(capacitron_VAE_embedding_dim) - ) - self.approximate_posterior_distribution = None - # define output ReferenceEncoder dim to the capacitron_VAE_embedding_dim - self.encoder = ReferenceEncoder(num_mel, out_dim=reference_encoder_out_dim) - - # Init beta, the lagrange-like term for the KL distribution - self.beta = torch.nn.Parameter(torch.log(torch.exp(torch.Tensor([1.0])) - 1), requires_grad=True) - mlp_input_dimension = reference_encoder_out_dim - - if text_summary_embedding_dim is not None: - self.text_summary_net = TextSummary(text_summary_embedding_dim, encoder_output_dim=encoder_output_dim) - mlp_input_dimension += text_summary_embedding_dim - if speaker_embedding_dim is not None: - # TODO: Test a multispeaker model! - mlp_input_dimension += speaker_embedding_dim - self.post_encoder_mlp = PostEncoderMLP(mlp_input_dimension, capacitron_VAE_embedding_dim) - - def forward(self, reference_mel_info=None, text_info=None, speaker_embedding=None): - # Use reference - if reference_mel_info is not None: - reference_mels = reference_mel_info[0] # [batch_size, num_frames, num_mels] - mel_lengths = reference_mel_info[1] # [batch_size] - enc_out = self.encoder(reference_mels, mel_lengths) - - # concat speaker_embedding and/or text summary embedding - if text_info is not None: - text_inputs = text_info[0] # [batch_size, num_characters, num_embedding] - input_lengths = text_info[1] - text_summary_out = self.text_summary_net(text_inputs, input_lengths).to(reference_mels.device) - enc_out = torch.cat([enc_out, text_summary_out], dim=-1) - if speaker_embedding is not None: - speaker_embedding = torch.squeeze(speaker_embedding) - enc_out = torch.cat([enc_out, speaker_embedding], dim=-1) - - # Feed the output of the ref encoder and information about text/speaker into - # an MLP to produce the parameteres for the approximate poterior distributions - mu, sigma = self.post_encoder_mlp(enc_out) - # convert to cpu because prior_distribution was created on cpu - mu = mu.cpu() - sigma = sigma.cpu() - - # Sample from the posterior: z ~ q(z|x) - self.approximate_posterior_distribution = MVN(mu, torch.diag_embed(sigma)) - VAE_embedding = self.approximate_posterior_distribution.rsample() - # Infer from the model, bypasses encoding - else: - # Sample from the prior: z ~ p(z) - VAE_embedding = self.prior_distribution.sample().unsqueeze(0) - - # reshape to [batch_size, 1, capacitron_VAE_embedding_dim] - return VAE_embedding.unsqueeze(1), self.approximate_posterior_distribution, self.prior_distribution, self.beta - - -class ReferenceEncoder(nn.Module): - """NN module creating a fixed size prosody embedding from a spectrogram. - - inputs: mel spectrograms [batch_size, num_spec_frames, num_mel] - outputs: [batch_size, embedding_dim] - """ - - def __init__(self, num_mel, out_dim): - super().__init__() - self.num_mel = num_mel - filters = [1] + [32, 32, 64, 64, 128, 128] - num_layers = len(filters) - 1 - convs = [ - nn.Conv2d( - in_channels=filters[i], out_channels=filters[i + 1], kernel_size=(3, 3), stride=(2, 2), padding=(2, 2) - ) - for i in range(num_layers) - ] - self.convs = nn.ModuleList(convs) - self.training = False - self.bns = nn.ModuleList([nn.BatchNorm2d(num_features=filter_size) for filter_size in filters[1:]]) - - post_conv_height = self.calculate_post_conv_height(num_mel, 3, 2, 2, num_layers) - self.recurrence = nn.LSTM( - input_size=filters[-1] * post_conv_height, hidden_size=out_dim, batch_first=True, bidirectional=False - ) - - def forward(self, inputs, input_lengths): - batch_size = inputs.size(0) - x = inputs.view(batch_size, 1, -1, self.num_mel) # [batch_size, num_channels==1, num_frames, num_mel] - valid_lengths = input_lengths.float() # [batch_size] - for conv, bn in zip(self.convs, self.bns): - x = conv(x) - x = bn(x) - x = F.relu(x) - - # Create the post conv width mask based on the valid lengths of the output of the convolution. - # The valid lengths for the output of a convolution on varying length inputs is - # ceil(input_length/stride) + 1 for stride=3 and padding=2 - # For example (kernel_size=3, stride=2, padding=2): - # 0 0 x x x x x 0 0 -> Input = 5, 0 is zero padding, x is valid values coming from padding=2 in conv2d - # _____ - # x _____ - # x _____ - # x ____ - # x - # x x x x -> Output valid length = 4 - # Since every example in te batch is zero padded and therefore have separate valid_lengths, - # we need to mask off all the values AFTER the valid length for each example in the batch. - # Otherwise, the convolutions create noise and a lot of not real information - valid_lengths = (valid_lengths / 2).float() - valid_lengths = torch.ceil(valid_lengths).to(dtype=torch.int64) + 1 # 2 is stride -- size: [batch_size] - post_conv_max_width = x.size(2) - - mask = torch.arange(post_conv_max_width).to(inputs.device).expand( - len(valid_lengths), post_conv_max_width - ) < valid_lengths.unsqueeze(1) - mask = mask.expand(1, 1, -1, -1).transpose(2, 0).transpose(-1, 2) # [batch_size, 1, post_conv_max_width, 1] - x = x * mask - - x = x.transpose(1, 2) - # x: 4D tensor [batch_size, post_conv_width, - # num_channels==128, post_conv_height] - - post_conv_width = x.size(1) - x = x.contiguous().view(batch_size, post_conv_width, -1) - # x: 3D tensor [batch_size, post_conv_width, - # num_channels*post_conv_height] - - # Routine for fetching the last valid output of a dynamic LSTM with varying input lengths and padding - post_conv_input_lengths = valid_lengths - packed_seqs = nn.utils.rnn.pack_padded_sequence( - x, post_conv_input_lengths.tolist(), batch_first=True, enforce_sorted=False - ) # dynamic rnn sequence padding - self.recurrence.flatten_parameters() - _, (ht, _) = self.recurrence(packed_seqs) - last_output = ht[-1] - - return last_output.to(inputs.device) # [B, 128] - - @staticmethod - def calculate_post_conv_height(height, kernel_size, stride, pad, n_convs): - """Height of spec after n convolutions with fixed kernel/stride/pad.""" - for _ in range(n_convs): - height = (height - kernel_size + 2 * pad) // stride + 1 - return height - - -class TextSummary(nn.Module): - def __init__(self, embedding_dim, encoder_output_dim): - super().__init__() - self.lstm = nn.LSTM( - encoder_output_dim, # text embedding dimension from the text encoder - embedding_dim, # fixed length output summary the lstm creates from the input - batch_first=True, - bidirectional=False, - ) - - def forward(self, inputs, input_lengths): - # Routine for fetching the last valid output of a dynamic LSTM with varying input lengths and padding - packed_seqs = nn.utils.rnn.pack_padded_sequence( - inputs, input_lengths.tolist(), batch_first=True, enforce_sorted=False - ) # dynamic rnn sequence padding - self.lstm.flatten_parameters() - _, (ht, _) = self.lstm(packed_seqs) - last_output = ht[-1] - return last_output - - -class PostEncoderMLP(nn.Module): - def __init__(self, input_size, hidden_size): - super().__init__() - self.hidden_size = hidden_size - modules = [ - nn.Linear(input_size, hidden_size), # Hidden Layer - nn.Tanh(), - nn.Linear(hidden_size, hidden_size * 2), - ] # Output layer twice the size for mean and variance - self.net = nn.Sequential(*modules) - self.softplus = nn.Softplus() - - def forward(self, _input): - mlp_output = self.net(_input) - # The mean parameter is unconstrained - mu = mlp_output[:, : self.hidden_size] - # The standard deviation must be positive. Parameterise with a softplus - sigma = self.softplus(mlp_output[:, self.hidden_size :]) - return mu, sigma diff --git a/TTS/tts/layers/tacotron/common_layers.py b/TTS/tts/layers/tacotron/common_layers.py deleted file mode 100644 index f78ff1e75f6c23eb1a0fe827247a1127bc8f9958..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tacotron/common_layers.py +++ /dev/null @@ -1,119 +0,0 @@ -import torch -from torch import nn -from torch.nn import functional as F - - -class Linear(nn.Module): - """Linear layer with a specific initialization. - - Args: - in_features (int): number of channels in the input tensor. - out_features (int): number of channels in the output tensor. - bias (bool, optional): enable/disable bias in the layer. Defaults to True. - init_gain (str, optional): method to compute the gain in the weight initializtion based on the nonlinear activation used afterwards. Defaults to 'linear'. - """ - - def __init__(self, in_features, out_features, bias=True, init_gain="linear"): - super().__init__() - self.linear_layer = torch.nn.Linear(in_features, out_features, bias=bias) - self._init_w(init_gain) - - def _init_w(self, init_gain): - torch.nn.init.xavier_uniform_(self.linear_layer.weight, gain=torch.nn.init.calculate_gain(init_gain)) - - def forward(self, x): - return self.linear_layer(x) - - -class LinearBN(nn.Module): - """Linear layer with Batch Normalization. - - x -> linear -> BN -> o - - Args: - in_features (int): number of channels in the input tensor. - out_features (int ): number of channels in the output tensor. - bias (bool, optional): enable/disable bias in the linear layer. Defaults to True. - init_gain (str, optional): method to set the gain for weight initialization. Defaults to 'linear'. - """ - - def __init__(self, in_features, out_features, bias=True, init_gain="linear"): - super().__init__() - self.linear_layer = torch.nn.Linear(in_features, out_features, bias=bias) - self.batch_normalization = nn.BatchNorm1d(out_features, momentum=0.1, eps=1e-5) - self._init_w(init_gain) - - def _init_w(self, init_gain): - torch.nn.init.xavier_uniform_(self.linear_layer.weight, gain=torch.nn.init.calculate_gain(init_gain)) - - def forward(self, x): - """ - Shapes: - x: [T, B, C] or [B, C] - """ - out = self.linear_layer(x) - if len(out.shape) == 3: - out = out.permute(1, 2, 0) - out = self.batch_normalization(out) - if len(out.shape) == 3: - out = out.permute(2, 0, 1) - return out - - -class Prenet(nn.Module): - """Tacotron specific Prenet with an optional Batch Normalization. - - Note: - Prenet with BN improves the model performance significantly especially - if it is enabled after learning a diagonal attention alignment with the original - prenet. However, if the target dataset is high quality then it also works from - the start. It is also suggested to disable dropout if BN is in use. - - prenet_type == "original" - x -> [linear -> ReLU -> Dropout]xN -> o - - prenet_type == "bn" - x -> [linear -> BN -> ReLU -> Dropout]xN -> o - - Args: - in_features (int): number of channels in the input tensor and the inner layers. - prenet_type (str, optional): prenet type "original" or "bn". Defaults to "original". - prenet_dropout (bool, optional): dropout rate. Defaults to True. - dropout_at_inference (bool, optional): use dropout at inference. It leads to a better quality for some models. - out_features (list, optional): List of output channels for each prenet block. - It also defines number of the prenet blocks based on the length of argument list. - Defaults to [256, 256]. - bias (bool, optional): enable/disable bias in prenet linear layers. Defaults to True. - """ - - # pylint: disable=dangerous-default-value - def __init__( - self, - in_features, - prenet_type="original", - prenet_dropout=True, - dropout_at_inference=False, - out_features=[256, 256], - bias=True, - ): - super().__init__() - self.prenet_type = prenet_type - self.prenet_dropout = prenet_dropout - self.dropout_at_inference = dropout_at_inference - in_features = [in_features] + out_features[:-1] - if prenet_type == "bn": - self.linear_layers = nn.ModuleList( - [LinearBN(in_size, out_size, bias=bias) for (in_size, out_size) in zip(in_features, out_features)] - ) - elif prenet_type == "original": - self.linear_layers = nn.ModuleList( - [Linear(in_size, out_size, bias=bias) for (in_size, out_size) in zip(in_features, out_features)] - ) - - def forward(self, x): - for linear in self.linear_layers: - if self.prenet_dropout: - x = F.dropout(F.relu(linear(x)), p=0.5, training=self.training or self.dropout_at_inference) - else: - x = F.relu(linear(x)) - return x diff --git a/TTS/tts/layers/tacotron/gst_layers.py b/TTS/tts/layers/tacotron/gst_layers.py deleted file mode 100644 index 05dba7084ff5533b68779d46238530f4988db934..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tacotron/gst_layers.py +++ /dev/null @@ -1,149 +0,0 @@ -import torch -import torch.nn.functional as F -from torch import nn - - -class GST(nn.Module): - """Global Style Token Module for factorizing prosody in speech. - - See https://arxiv.org/pdf/1803.09017""" - - def __init__(self, num_mel, num_heads, num_style_tokens, gst_embedding_dim, embedded_speaker_dim=None): - super().__init__() - self.encoder = ReferenceEncoder(num_mel, gst_embedding_dim) - self.style_token_layer = StyleTokenLayer(num_heads, num_style_tokens, gst_embedding_dim, embedded_speaker_dim) - - def forward(self, inputs, speaker_embedding=None): - enc_out = self.encoder(inputs) - # concat speaker_embedding - if speaker_embedding is not None: - enc_out = torch.cat([enc_out, speaker_embedding], dim=-1) - style_embed = self.style_token_layer(enc_out) - - return style_embed - - -class ReferenceEncoder(nn.Module): - """NN module creating a fixed size prosody embedding from a spectrogram. - - inputs: mel spectrograms [batch_size, num_spec_frames, num_mel] - outputs: [batch_size, embedding_dim] - """ - - def __init__(self, num_mel, embedding_dim): - super().__init__() - self.num_mel = num_mel - filters = [1] + [32, 32, 64, 64, 128, 128] - num_layers = len(filters) - 1 - convs = [ - nn.Conv2d( - in_channels=filters[i], out_channels=filters[i + 1], kernel_size=(3, 3), stride=(2, 2), padding=(1, 1) - ) - for i in range(num_layers) - ] - self.convs = nn.ModuleList(convs) - self.bns = nn.ModuleList([nn.BatchNorm2d(num_features=filter_size) for filter_size in filters[1:]]) - - post_conv_height = self.calculate_post_conv_height(num_mel, 3, 2, 1, num_layers) - self.recurrence = nn.GRU( - input_size=filters[-1] * post_conv_height, hidden_size=embedding_dim // 2, batch_first=True - ) - - def forward(self, inputs): - batch_size = inputs.size(0) - x = inputs.view(batch_size, 1, -1, self.num_mel) - # x: 4D tensor [batch_size, num_channels==1, num_frames, num_mel] - for conv, bn in zip(self.convs, self.bns): - x = conv(x) - x = bn(x) - x = F.relu(x) - - x = x.transpose(1, 2) - # x: 4D tensor [batch_size, post_conv_width, - # num_channels==128, post_conv_height] - post_conv_width = x.size(1) - x = x.contiguous().view(batch_size, post_conv_width, -1) - # x: 3D tensor [batch_size, post_conv_width, - # num_channels*post_conv_height] - self.recurrence.flatten_parameters() - _, out = self.recurrence(x) - # out: 3D tensor [seq_len==1, batch_size, encoding_size=128] - - return out.squeeze(0) - - @staticmethod - def calculate_post_conv_height(height, kernel_size, stride, pad, n_convs): - """Height of spec after n convolutions with fixed kernel/stride/pad.""" - for _ in range(n_convs): - height = (height - kernel_size + 2 * pad) // stride + 1 - return height - - -class StyleTokenLayer(nn.Module): - """NN Module attending to style tokens based on prosody encodings.""" - - def __init__(self, num_heads, num_style_tokens, gst_embedding_dim, d_vector_dim=None): - super().__init__() - - self.query_dim = gst_embedding_dim // 2 - - if d_vector_dim: - self.query_dim += d_vector_dim - - self.key_dim = gst_embedding_dim // num_heads - self.style_tokens = nn.Parameter(torch.FloatTensor(num_style_tokens, self.key_dim)) - nn.init.normal_(self.style_tokens, mean=0, std=0.5) - self.attention = MultiHeadAttention( - query_dim=self.query_dim, key_dim=self.key_dim, num_units=gst_embedding_dim, num_heads=num_heads - ) - - def forward(self, inputs): - batch_size = inputs.size(0) - prosody_encoding = inputs.unsqueeze(1) - # prosody_encoding: 3D tensor [batch_size, 1, encoding_size==128] - tokens = torch.tanh(self.style_tokens).unsqueeze(0).expand(batch_size, -1, -1) - # tokens: 3D tensor [batch_size, num tokens, token embedding size] - style_embed = self.attention(prosody_encoding, tokens) - - return style_embed - - -class MultiHeadAttention(nn.Module): - """ - input: - query --- [N, T_q, query_dim] - key --- [N, T_k, key_dim] - output: - out --- [N, T_q, num_units] - """ - - def __init__(self, query_dim, key_dim, num_units, num_heads): - super().__init__() - self.num_units = num_units - self.num_heads = num_heads - self.key_dim = key_dim - - self.W_query = nn.Linear(in_features=query_dim, out_features=num_units, bias=False) - self.W_key = nn.Linear(in_features=key_dim, out_features=num_units, bias=False) - self.W_value = nn.Linear(in_features=key_dim, out_features=num_units, bias=False) - - def forward(self, query, key): - queries = self.W_query(query) # [N, T_q, num_units] - keys = self.W_key(key) # [N, T_k, num_units] - values = self.W_value(key) - - split_size = self.num_units // self.num_heads - queries = torch.stack(torch.split(queries, split_size, dim=2), dim=0) # [h, N, T_q, num_units/h] - keys = torch.stack(torch.split(keys, split_size, dim=2), dim=0) # [h, N, T_k, num_units/h] - values = torch.stack(torch.split(values, split_size, dim=2), dim=0) # [h, N, T_k, num_units/h] - - # score = softmax(QK^T / (d_k**0.5)) - scores = torch.matmul(queries, keys.transpose(2, 3)) # [h, N, T_q, T_k] - scores = scores / (self.key_dim**0.5) - scores = F.softmax(scores, dim=3) - - # out = score * V - out = torch.matmul(scores, values) # [h, N, T_q, num_units/h] - out = torch.cat(torch.split(out, 1, dim=0), dim=3).squeeze(0) # [N, T_q, num_units] - - return out diff --git a/TTS/tts/layers/tacotron/tacotron.py b/TTS/tts/layers/tacotron/tacotron.py deleted file mode 100644 index 7a47c35ef67852456d7211f32502ffb84509d61f..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tacotron/tacotron.py +++ /dev/null @@ -1,503 +0,0 @@ -# coding: utf-8 -# adapted from https://github.com/r9y9/tacotron_pytorch - -import torch -from torch import nn - -from .attentions import init_attn -from .common_layers import Prenet - - -class BatchNormConv1d(nn.Module): - r"""A wrapper for Conv1d with BatchNorm. It sets the activation - function between Conv and BatchNorm layers. BatchNorm layer - is initialized with the TF default values for momentum and eps. - - Args: - in_channels: size of each input sample - out_channels: size of each output samples - kernel_size: kernel size of conv filters - stride: stride of conv filters - padding: padding of conv filters - activation: activation function set b/w Conv1d and BatchNorm - - Shapes: - - input: (B, D) - - output: (B, D) - """ - - def __init__(self, in_channels, out_channels, kernel_size, stride, padding, activation=None): - super().__init__() - self.padding = padding - self.padder = nn.ConstantPad1d(padding, 0) - self.conv1d = nn.Conv1d( - in_channels, out_channels, kernel_size=kernel_size, stride=stride, padding=0, bias=False - ) - # Following tensorflow's default parameters - self.bn = nn.BatchNorm1d(out_channels, momentum=0.99, eps=1e-3) - self.activation = activation - # self.init_layers() - - def init_layers(self): - if isinstance(self.activation, torch.nn.ReLU): - w_gain = "relu" - elif isinstance(self.activation, torch.nn.Tanh): - w_gain = "tanh" - elif self.activation is None: - w_gain = "linear" - else: - raise RuntimeError("Unknown activation function") - torch.nn.init.xavier_uniform_(self.conv1d.weight, gain=torch.nn.init.calculate_gain(w_gain)) - - def forward(self, x): - x = self.padder(x) - x = self.conv1d(x) - x = self.bn(x) - if self.activation is not None: - x = self.activation(x) - return x - - -class Highway(nn.Module): - r"""Highway layers as explained in https://arxiv.org/abs/1505.00387 - - Args: - in_features (int): size of each input sample - out_feature (int): size of each output sample - - Shapes: - - input: (B, *, H_in) - - output: (B, *, H_out) - """ - - # TODO: Try GLU layer - def __init__(self, in_features, out_feature): - super().__init__() - self.H = nn.Linear(in_features, out_feature) - self.H.bias.data.zero_() - self.T = nn.Linear(in_features, out_feature) - self.T.bias.data.fill_(-1) - self.relu = nn.ReLU() - self.sigmoid = nn.Sigmoid() - # self.init_layers() - - def init_layers(self): - torch.nn.init.xavier_uniform_(self.H.weight, gain=torch.nn.init.calculate_gain("relu")) - torch.nn.init.xavier_uniform_(self.T.weight, gain=torch.nn.init.calculate_gain("sigmoid")) - - def forward(self, inputs): - H = self.relu(self.H(inputs)) - T = self.sigmoid(self.T(inputs)) - return H * T + inputs * (1.0 - T) - - -class CBHG(nn.Module): - """CBHG module: a recurrent neural network composed of: - - 1-d convolution banks - - Highway networks + residual connections - - Bidirectional gated recurrent units - - Args: - in_features (int): sample size - K (int): max filter size in conv bank - projections (list): conv channel sizes for conv projections - num_highways (int): number of highways layers - - Shapes: - - input: (B, C, T_in) - - output: (B, T_in, C*2) - """ - - # pylint: disable=dangerous-default-value - def __init__( - self, - in_features, - K=16, - conv_bank_features=128, - conv_projections=[128, 128], - highway_features=128, - gru_features=128, - num_highways=4, - ): - super().__init__() - self.in_features = in_features - self.conv_bank_features = conv_bank_features - self.highway_features = highway_features - self.gru_features = gru_features - self.conv_projections = conv_projections - self.relu = nn.ReLU() - # list of conv1d bank with filter size k=1...K - # TODO: try dilational layers instead - self.conv1d_banks = nn.ModuleList( - [ - BatchNormConv1d( - in_features, - conv_bank_features, - kernel_size=k, - stride=1, - padding=[(k - 1) // 2, k // 2], - activation=self.relu, - ) - for k in range(1, K + 1) - ] - ) - # max pooling of conv bank, with padding - # TODO: try average pooling OR larger kernel size - out_features = [K * conv_bank_features] + conv_projections[:-1] - activations = [self.relu] * (len(conv_projections) - 1) - activations += [None] - # setup conv1d projection layers - layer_set = [] - for in_size, out_size, ac in zip(out_features, conv_projections, activations): - layer = BatchNormConv1d(in_size, out_size, kernel_size=3, stride=1, padding=[1, 1], activation=ac) - layer_set.append(layer) - self.conv1d_projections = nn.ModuleList(layer_set) - # setup Highway layers - if self.highway_features != conv_projections[-1]: - self.pre_highway = nn.Linear(conv_projections[-1], highway_features, bias=False) - self.highways = nn.ModuleList([Highway(highway_features, highway_features) for _ in range(num_highways)]) - # bi-directional GPU layer - self.gru = nn.GRU(gru_features, gru_features, 1, batch_first=True, bidirectional=True) - - def forward(self, inputs): - # (B, in_features, T_in) - x = inputs - # (B, hid_features*K, T_in) - # Concat conv1d bank outputs - outs = [] - for conv1d in self.conv1d_banks: - out = conv1d(x) - outs.append(out) - x = torch.cat(outs, dim=1) - assert x.size(1) == self.conv_bank_features * len(self.conv1d_banks) - for conv1d in self.conv1d_projections: - x = conv1d(x) - x += inputs - x = x.transpose(1, 2) - if self.highway_features != self.conv_projections[-1]: - x = self.pre_highway(x) - # Residual connection - # TODO: try residual scaling as in Deep Voice 3 - # TODO: try plain residual layers - for highway in self.highways: - x = highway(x) - # (B, T_in, hid_features*2) - # TODO: replace GRU with convolution as in Deep Voice 3 - self.gru.flatten_parameters() - outputs, _ = self.gru(x) - return outputs - - -class EncoderCBHG(nn.Module): - r"""CBHG module with Encoder specific arguments""" - - def __init__(self): - super().__init__() - self.cbhg = CBHG( - 128, - K=16, - conv_bank_features=128, - conv_projections=[128, 128], - highway_features=128, - gru_features=128, - num_highways=4, - ) - - def forward(self, x): - return self.cbhg(x) - - -class Encoder(nn.Module): - r"""Stack Prenet and CBHG module for encoder - Args: - inputs (FloatTensor): embedding features - - Shapes: - - inputs: (B, T, D_in) - - outputs: (B, T, 128 * 2) - """ - - def __init__(self, in_features): - super().__init__() - self.prenet = Prenet(in_features, out_features=[256, 128]) - self.cbhg = EncoderCBHG() - - def forward(self, inputs): - # B x T x prenet_dim - outputs = self.prenet(inputs) - outputs = self.cbhg(outputs.transpose(1, 2)) - return outputs - - -class PostCBHG(nn.Module): - def __init__(self, mel_dim): - super().__init__() - self.cbhg = CBHG( - mel_dim, - K=8, - conv_bank_features=128, - conv_projections=[256, mel_dim], - highway_features=128, - gru_features=128, - num_highways=4, - ) - - def forward(self, x): - return self.cbhg(x) - - -class Decoder(nn.Module): - """Tacotron decoder. - - Args: - in_channels (int): number of input channels. - frame_channels (int): number of feature frame channels. - r (int): number of outputs per time step (reduction rate). - memory_size (int): size of the past window. if <= 0 memory_size = r - attn_type (string): type of attention used in decoder. - attn_windowing (bool): if true, define an attention window centered to maximum - attention response. It provides more robust attention alignment especially - at interence time. - attn_norm (string): attention normalization function. 'sigmoid' or 'softmax'. - prenet_type (string): 'original' or 'bn'. - prenet_dropout (float): prenet dropout rate. - forward_attn (bool): if true, use forward attention method. https://arxiv.org/abs/1807.06736 - trans_agent (bool): if true, use transition agent. https://arxiv.org/abs/1807.06736 - forward_attn_mask (bool): if true, mask attention values smaller than a threshold. - location_attn (bool): if true, use location sensitive attention. - attn_K (int): number of attention heads for GravesAttention. - separate_stopnet (bool): if true, detach stopnet input to prevent gradient flow. - d_vector_dim (int): size of speaker embedding vector, for multi-speaker training. - max_decoder_steps (int): Maximum number of steps allowed for the decoder. Defaults to 500. - """ - - # Pylint gets confused by PyTorch conventions here - # pylint: disable=attribute-defined-outside-init - - def __init__( - self, - in_channels, - frame_channels, - r, - memory_size, - attn_type, - attn_windowing, - attn_norm, - prenet_type, - prenet_dropout, - forward_attn, - trans_agent, - forward_attn_mask, - location_attn, - attn_K, - separate_stopnet, - max_decoder_steps, - ): - super().__init__() - self.r_init = r - self.r = r - self.in_channels = in_channels - self.max_decoder_steps = max_decoder_steps - self.use_memory_queue = memory_size > 0 - self.memory_size = memory_size if memory_size > 0 else r - self.frame_channels = frame_channels - self.separate_stopnet = separate_stopnet - self.query_dim = 256 - # memory -> |Prenet| -> processed_memory - prenet_dim = frame_channels * self.memory_size if self.use_memory_queue else frame_channels - self.prenet = Prenet(prenet_dim, prenet_type, prenet_dropout, out_features=[256, 128]) - # processed_inputs, processed_memory -> |Attention| -> Attention, attention, RNN_State - # attention_rnn generates queries for the attention mechanism - self.attention_rnn = nn.GRUCell(in_channels + 128, self.query_dim) - self.attention = init_attn( - attn_type=attn_type, - query_dim=self.query_dim, - embedding_dim=in_channels, - attention_dim=128, - location_attention=location_attn, - attention_location_n_filters=32, - attention_location_kernel_size=31, - windowing=attn_windowing, - norm=attn_norm, - forward_attn=forward_attn, - trans_agent=trans_agent, - forward_attn_mask=forward_attn_mask, - attn_K=attn_K, - ) - # (processed_memory | attention context) -> |Linear| -> decoder_RNN_input - self.project_to_decoder_in = nn.Linear(256 + in_channels, 256) - # decoder_RNN_input -> |RNN| -> RNN_state - self.decoder_rnns = nn.ModuleList([nn.GRUCell(256, 256) for _ in range(2)]) - # RNN_state -> |Linear| -> mel_spec - self.proj_to_mel = nn.Linear(256, frame_channels * self.r_init) - # learn init values instead of zero init. - self.stopnet = StopNet(256 + frame_channels * self.r_init) - - def set_r(self, new_r): - self.r = new_r - - def _reshape_memory(self, memory): - """ - Reshape the spectrograms for given 'r' - """ - # Grouping multiple frames if necessary - if memory.size(-1) == self.frame_channels: - memory = memory.view(memory.shape[0], memory.size(1) // self.r, -1) - # Time first (T_decoder, B, frame_channels) - memory = memory.transpose(0, 1) - return memory - - def _init_states(self, inputs): - """ - Initialization of decoder states - """ - B = inputs.size(0) - # go frame as zeros matrix - if self.use_memory_queue: - self.memory_input = torch.zeros(1, device=inputs.device).repeat(B, self.frame_channels * self.memory_size) - else: - self.memory_input = torch.zeros(1, device=inputs.device).repeat(B, self.frame_channels) - # decoder states - self.attention_rnn_hidden = torch.zeros(1, device=inputs.device).repeat(B, 256) - self.decoder_rnn_hiddens = [ - torch.zeros(1, device=inputs.device).repeat(B, 256) for idx in range(len(self.decoder_rnns)) - ] - self.context_vec = inputs.data.new(B, self.in_channels).zero_() - # cache attention inputs - self.processed_inputs = self.attention.preprocess_inputs(inputs) - - def _parse_outputs(self, outputs, attentions, stop_tokens): - # Back to batch first - attentions = torch.stack(attentions).transpose(0, 1) - stop_tokens = torch.stack(stop_tokens).transpose(0, 1) - outputs = torch.stack(outputs).transpose(0, 1).contiguous() - outputs = outputs.view(outputs.size(0), -1, self.frame_channels) - outputs = outputs.transpose(1, 2) - return outputs, attentions, stop_tokens - - def decode(self, inputs, mask=None): - # Prenet - processed_memory = self.prenet(self.memory_input) - # Attention RNN - self.attention_rnn_hidden = self.attention_rnn( - torch.cat((processed_memory, self.context_vec), -1), self.attention_rnn_hidden - ) - self.context_vec = self.attention(self.attention_rnn_hidden, inputs, self.processed_inputs, mask) - # Concat RNN output and attention context vector - decoder_input = self.project_to_decoder_in(torch.cat((self.attention_rnn_hidden, self.context_vec), -1)) - - # Pass through the decoder RNNs - for idx, decoder_rnn in enumerate(self.decoder_rnns): - self.decoder_rnn_hiddens[idx] = decoder_rnn(decoder_input, self.decoder_rnn_hiddens[idx]) - # Residual connection - decoder_input = self.decoder_rnn_hiddens[idx] + decoder_input - decoder_output = decoder_input - - # predict mel vectors from decoder vectors - output = self.proj_to_mel(decoder_output) - # output = torch.sigmoid(output) - # predict stop token - stopnet_input = torch.cat([decoder_output, output], -1) - if self.separate_stopnet: - stop_token = self.stopnet(stopnet_input.detach()) - else: - stop_token = self.stopnet(stopnet_input) - output = output[:, : self.r * self.frame_channels] - return output, stop_token, self.attention.attention_weights - - def _update_memory_input(self, new_memory): - if self.use_memory_queue: - if self.memory_size > self.r: - # memory queue size is larger than number of frames per decoder iter - self.memory_input = torch.cat( - [new_memory, self.memory_input[:, : (self.memory_size - self.r) * self.frame_channels].clone()], - dim=-1, - ) - else: - # memory queue size smaller than number of frames per decoder iter - self.memory_input = new_memory[:, : self.memory_size * self.frame_channels] - else: - # use only the last frame prediction - # assert new_memory.shape[-1] == self.r * self.frame_channels - self.memory_input = new_memory[:, self.frame_channels * (self.r - 1) :] - - def forward(self, inputs, memory, mask): - """ - Args: - inputs: Encoder outputs. - memory: Decoder memory (autoregression. If None (at eval-time), - decoder outputs are used as decoder inputs. If None, it uses the last - output as the input. - mask: Attention mask for sequence padding. - - Shapes: - - inputs: (B, T, D_out_enc) - - memory: (B, T_mel, D_mel) - """ - # Run greedy decoding if memory is None - memory = self._reshape_memory(memory) - outputs = [] - attentions = [] - stop_tokens = [] - t = 0 - self._init_states(inputs) - self.attention.init_states(inputs) - while len(outputs) < memory.size(0): - if t > 0: - new_memory = memory[t - 1] - self._update_memory_input(new_memory) - - output, stop_token, attention = self.decode(inputs, mask) - outputs += [output] - attentions += [attention] - stop_tokens += [stop_token.squeeze(1)] - t += 1 - return self._parse_outputs(outputs, attentions, stop_tokens) - - def inference(self, inputs): - """ - Args: - inputs: encoder outputs. - Shapes: - - inputs: batch x time x encoder_out_dim - """ - outputs = [] - attentions = [] - stop_tokens = [] - t = 0 - self._init_states(inputs) - self.attention.init_states(inputs) - while True: - if t > 0: - new_memory = outputs[-1] - self._update_memory_input(new_memory) - output, stop_token, attention = self.decode(inputs, None) - stop_token = torch.sigmoid(stop_token.data) - outputs += [output] - attentions += [attention] - stop_tokens += [stop_token] - t += 1 - if t > inputs.shape[1] / 4 and (stop_token > 0.6 or attention[:, -1].item() > 0.6): - break - if t > self.max_decoder_steps: - print(" | > Decoder stopped with 'max_decoder_steps") - break - return self._parse_outputs(outputs, attentions, stop_tokens) - - -class StopNet(nn.Module): - r"""Stopnet signalling decoder to stop inference. - Args: - in_features (int): feature dimension of input. - """ - - def __init__(self, in_features): - super().__init__() - self.dropout = nn.Dropout(0.1) - self.linear = nn.Linear(in_features, 1) - torch.nn.init.xavier_uniform_(self.linear.weight, gain=torch.nn.init.calculate_gain("linear")) - - def forward(self, inputs): - outputs = self.dropout(inputs) - outputs = self.linear(outputs) - return outputs diff --git a/TTS/tts/layers/tacotron/tacotron2.py b/TTS/tts/layers/tacotron/tacotron2.py deleted file mode 100644 index c79b70997249efc94cbac630bcc7d6c571f5743e..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tacotron/tacotron2.py +++ /dev/null @@ -1,414 +0,0 @@ -import torch -from torch import nn -from torch.nn import functional as F - -from .attentions import init_attn -from .common_layers import Linear, Prenet - - -# pylint: disable=no-value-for-parameter -# pylint: disable=unexpected-keyword-arg -class ConvBNBlock(nn.Module): - r"""Convolutions with Batch Normalization and non-linear activation. - - Args: - in_channels (int): number of input channels. - out_channels (int): number of output channels. - kernel_size (int): convolution kernel size. - activation (str): 'relu', 'tanh', None (linear). - - Shapes: - - input: (B, C_in, T) - - output: (B, C_out, T) - """ - - def __init__(self, in_channels, out_channels, kernel_size, activation=None): - super().__init__() - assert (kernel_size - 1) % 2 == 0 - padding = (kernel_size - 1) // 2 - self.convolution1d = nn.Conv1d(in_channels, out_channels, kernel_size, padding=padding) - self.batch_normalization = nn.BatchNorm1d(out_channels, momentum=0.1, eps=1e-5) - self.dropout = nn.Dropout(p=0.5) - if activation == "relu": - self.activation = nn.ReLU() - elif activation == "tanh": - self.activation = nn.Tanh() - else: - self.activation = nn.Identity() - - def forward(self, x): - o = self.convolution1d(x) - o = self.batch_normalization(o) - o = self.activation(o) - o = self.dropout(o) - return o - - -class Postnet(nn.Module): - r"""Tacotron2 Postnet - - Args: - in_out_channels (int): number of output channels. - - Shapes: - - input: (B, C_in, T) - - output: (B, C_in, T) - """ - - def __init__(self, in_out_channels, num_convs=5): - super().__init__() - self.convolutions = nn.ModuleList() - self.convolutions.append(ConvBNBlock(in_out_channels, 512, kernel_size=5, activation="tanh")) - for _ in range(1, num_convs - 1): - self.convolutions.append(ConvBNBlock(512, 512, kernel_size=5, activation="tanh")) - self.convolutions.append(ConvBNBlock(512, in_out_channels, kernel_size=5, activation=None)) - - def forward(self, x): - o = x - for layer in self.convolutions: - o = layer(o) - return o - - -class Encoder(nn.Module): - r"""Tacotron2 Encoder - - Args: - in_out_channels (int): number of input and output channels. - - Shapes: - - input: (B, C_in, T) - - output: (B, C_in, T) - """ - - def __init__(self, in_out_channels=512): - super().__init__() - self.convolutions = nn.ModuleList() - for _ in range(3): - self.convolutions.append(ConvBNBlock(in_out_channels, in_out_channels, 5, "relu")) - self.lstm = nn.LSTM( - in_out_channels, int(in_out_channels / 2), num_layers=1, batch_first=True, bias=True, bidirectional=True - ) - self.rnn_state = None - - def forward(self, x, input_lengths): - o = x - for layer in self.convolutions: - o = layer(o) - o = o.transpose(1, 2) - o = nn.utils.rnn.pack_padded_sequence(o, input_lengths.cpu(), batch_first=True) - self.lstm.flatten_parameters() - o, _ = self.lstm(o) - o, _ = nn.utils.rnn.pad_packed_sequence(o, batch_first=True) - return o - - def inference(self, x): - o = x - for layer in self.convolutions: - o = layer(o) - o = o.transpose(1, 2) - # self.lstm.flatten_parameters() - o, _ = self.lstm(o) - return o - - -# adapted from https://github.com/NVIDIA/tacotron2/ -class Decoder(nn.Module): - """Tacotron2 decoder. We don't use Zoneout but Dropout between RNN layers. - - Args: - in_channels (int): number of input channels. - frame_channels (int): number of feature frame channels. - r (int): number of outputs per time step (reduction rate). - memory_size (int): size of the past window. if <= 0 memory_size = r - attn_type (string): type of attention used in decoder. - attn_win (bool): if true, define an attention window centered to maximum - attention response. It provides more robust attention alignment especially - at interence time. - attn_norm (string): attention normalization function. 'sigmoid' or 'softmax'. - prenet_type (string): 'original' or 'bn'. - prenet_dropout (float): prenet dropout rate. - forward_attn (bool): if true, use forward attention method. https://arxiv.org/abs/1807.06736 - trans_agent (bool): if true, use transition agent. https://arxiv.org/abs/1807.06736 - forward_attn_mask (bool): if true, mask attention values smaller than a threshold. - location_attn (bool): if true, use location sensitive attention. - attn_K (int): number of attention heads for GravesAttention. - separate_stopnet (bool): if true, detach stopnet input to prevent gradient flow. - max_decoder_steps (int): Maximum number of steps allowed for the decoder. Defaults to 10000. - """ - - # Pylint gets confused by PyTorch conventions here - # pylint: disable=attribute-defined-outside-init - def __init__( - self, - in_channels, - frame_channels, - r, - attn_type, - attn_win, - attn_norm, - prenet_type, - prenet_dropout, - forward_attn, - trans_agent, - forward_attn_mask, - location_attn, - attn_K, - separate_stopnet, - max_decoder_steps, - ): - super().__init__() - self.frame_channels = frame_channels - self.r_init = r - self.r = r - self.encoder_embedding_dim = in_channels - self.separate_stopnet = separate_stopnet - self.max_decoder_steps = max_decoder_steps - self.stop_threshold = 0.5 - - # model dimensions - self.query_dim = 1024 - self.decoder_rnn_dim = 1024 - self.prenet_dim = 256 - self.attn_dim = 128 - self.p_attention_dropout = 0.1 - self.p_decoder_dropout = 0.1 - - # memory -> |Prenet| -> processed_memory - prenet_dim = self.frame_channels - self.prenet = Prenet( - prenet_dim, prenet_type, prenet_dropout, out_features=[self.prenet_dim, self.prenet_dim], bias=False - ) - - self.attention_rnn = nn.LSTMCell(self.prenet_dim + in_channels, self.query_dim, bias=True) - - self.attention = init_attn( - attn_type=attn_type, - query_dim=self.query_dim, - embedding_dim=in_channels, - attention_dim=128, - location_attention=location_attn, - attention_location_n_filters=32, - attention_location_kernel_size=31, - windowing=attn_win, - norm=attn_norm, - forward_attn=forward_attn, - trans_agent=trans_agent, - forward_attn_mask=forward_attn_mask, - attn_K=attn_K, - ) - - self.decoder_rnn = nn.LSTMCell(self.query_dim + in_channels, self.decoder_rnn_dim, bias=True) - - self.linear_projection = Linear(self.decoder_rnn_dim + in_channels, self.frame_channels * self.r_init) - - self.stopnet = nn.Sequential( - nn.Dropout(0.1), - Linear(self.decoder_rnn_dim + self.frame_channels * self.r_init, 1, bias=True, init_gain="sigmoid"), - ) - self.memory_truncated = None - - def set_r(self, new_r): - self.r = new_r - - def get_go_frame(self, inputs): - B = inputs.size(0) - memory = torch.zeros(1, device=inputs.device).repeat(B, self.frame_channels * self.r) - return memory - - def _init_states(self, inputs, mask, keep_states=False): - B = inputs.size(0) - # T = inputs.size(1) - if not keep_states: - self.query = torch.zeros(1, device=inputs.device).repeat(B, self.query_dim) - self.attention_rnn_cell_state = torch.zeros(1, device=inputs.device).repeat(B, self.query_dim) - self.decoder_hidden = torch.zeros(1, device=inputs.device).repeat(B, self.decoder_rnn_dim) - self.decoder_cell = torch.zeros(1, device=inputs.device).repeat(B, self.decoder_rnn_dim) - self.context = torch.zeros(1, device=inputs.device).repeat(B, self.encoder_embedding_dim) - self.inputs = inputs - self.processed_inputs = self.attention.preprocess_inputs(inputs) - self.mask = mask - - def _reshape_memory(self, memory): - """ - Reshape the spectrograms for given 'r' - """ - # Grouping multiple frames if necessary - if memory.size(-1) == self.frame_channels: - memory = memory.view(memory.shape[0], memory.size(1) // self.r, -1) - # Time first (T_decoder, B, frame_channels) - memory = memory.transpose(0, 1) - return memory - - def _parse_outputs(self, outputs, stop_tokens, alignments): - alignments = torch.stack(alignments).transpose(0, 1) - stop_tokens = torch.stack(stop_tokens).transpose(0, 1) - outputs = torch.stack(outputs).transpose(0, 1).contiguous() - outputs = outputs.view(outputs.size(0), -1, self.frame_channels) - outputs = outputs.transpose(1, 2) - return outputs, stop_tokens, alignments - - def _update_memory(self, memory): - if len(memory.shape) == 2: - return memory[:, self.frame_channels * (self.r - 1) :] - return memory[:, :, self.frame_channels * (self.r - 1) :] - - def decode(self, memory): - """ - shapes: - - memory: B x r * self.frame_channels - """ - # self.context: B x D_en - # query_input: B x D_en + (r * self.frame_channels) - query_input = torch.cat((memory, self.context), -1) - # self.query and self.attention_rnn_cell_state : B x D_attn_rnn - self.query, self.attention_rnn_cell_state = self.attention_rnn( - query_input, (self.query, self.attention_rnn_cell_state) - ) - self.query = F.dropout(self.query, self.p_attention_dropout, self.training) - self.attention_rnn_cell_state = F.dropout( - self.attention_rnn_cell_state, self.p_attention_dropout, self.training - ) - # B x D_en - self.context = self.attention(self.query, self.inputs, self.processed_inputs, self.mask) - # B x (D_en + D_attn_rnn) - decoder_rnn_input = torch.cat((self.query, self.context), -1) - # self.decoder_hidden and self.decoder_cell: B x D_decoder_rnn - self.decoder_hidden, self.decoder_cell = self.decoder_rnn( - decoder_rnn_input, (self.decoder_hidden, self.decoder_cell) - ) - self.decoder_hidden = F.dropout(self.decoder_hidden, self.p_decoder_dropout, self.training) - # B x (D_decoder_rnn + D_en) - decoder_hidden_context = torch.cat((self.decoder_hidden, self.context), dim=1) - # B x (self.r * self.frame_channels) - decoder_output = self.linear_projection(decoder_hidden_context) - # B x (D_decoder_rnn + (self.r * self.frame_channels)) - stopnet_input = torch.cat((self.decoder_hidden, decoder_output), dim=1) - if self.separate_stopnet: - stop_token = self.stopnet(stopnet_input.detach()) - else: - stop_token = self.stopnet(stopnet_input) - # select outputs for the reduction rate self.r - decoder_output = decoder_output[:, : self.r * self.frame_channels] - return decoder_output, self.attention.attention_weights, stop_token - - def forward(self, inputs, memories, mask): - r"""Train Decoder with teacher forcing. - Args: - inputs: Encoder outputs. - memories: Feature frames for teacher-forcing. - mask: Attention mask for sequence padding. - - Shapes: - - inputs: (B, T, D_out_enc) - - memory: (B, T_mel, D_mel) - - outputs: (B, T_mel, D_mel) - - alignments: (B, T_in, T_out) - - stop_tokens: (B, T_out) - """ - memory = self.get_go_frame(inputs).unsqueeze(0) - memories = self._reshape_memory(memories) - memories = torch.cat((memory, memories), dim=0) - memories = self._update_memory(memories) - memories = self.prenet(memories) - - self._init_states(inputs, mask=mask) - self.attention.init_states(inputs) - - outputs, stop_tokens, alignments = [], [], [] - while len(outputs) < memories.size(0) - 1: - memory = memories[len(outputs)] - decoder_output, attention_weights, stop_token = self.decode(memory) - outputs += [decoder_output.squeeze(1)] - stop_tokens += [stop_token.squeeze(1)] - alignments += [attention_weights] - - outputs, stop_tokens, alignments = self._parse_outputs(outputs, stop_tokens, alignments) - return outputs, alignments, stop_tokens - - def inference(self, inputs): - r"""Decoder inference without teacher forcing and use - Stopnet to stop decoder. - Args: - inputs: Encoder outputs. - - Shapes: - - inputs: (B, T, D_out_enc) - - outputs: (B, T_mel, D_mel) - - alignments: (B, T_in, T_out) - - stop_tokens: (B, T_out) - """ - memory = self.get_go_frame(inputs) - memory = self._update_memory(memory) - - self._init_states(inputs, mask=None) - self.attention.init_states(inputs) - - outputs, stop_tokens, alignments, t = [], [], [], 0 - while True: - memory = self.prenet(memory) - decoder_output, alignment, stop_token = self.decode(memory) - stop_token = torch.sigmoid(stop_token.data) - outputs += [decoder_output.squeeze(1)] - stop_tokens += [stop_token] - alignments += [alignment] - - if stop_token > self.stop_threshold and t > inputs.shape[0] // 2: - break - if len(outputs) == self.max_decoder_steps: - print(f" > Decoder stopped with `max_decoder_steps` {self.max_decoder_steps}") - break - - memory = self._update_memory(decoder_output) - t += 1 - - outputs, stop_tokens, alignments = self._parse_outputs(outputs, stop_tokens, alignments) - - return outputs, alignments, stop_tokens - - def inference_truncated(self, inputs): - """ - Preserve decoder states for continuous inference - """ - if self.memory_truncated is None: - self.memory_truncated = self.get_go_frame(inputs) - self._init_states(inputs, mask=None, keep_states=False) - else: - self._init_states(inputs, mask=None, keep_states=True) - - self.attention.init_states(inputs) - outputs, stop_tokens, alignments, t = [], [], [], 0 - while True: - memory = self.prenet(self.memory_truncated) - decoder_output, alignment, stop_token = self.decode(memory) - stop_token = torch.sigmoid(stop_token.data) - outputs += [decoder_output.squeeze(1)] - stop_tokens += [stop_token] - alignments += [alignment] - - if stop_token > 0.7: - break - if len(outputs) == self.max_decoder_steps: - print(" | > Decoder stopped with 'max_decoder_steps") - break - - self.memory_truncated = decoder_output - t += 1 - - outputs, stop_tokens, alignments = self._parse_outputs(outputs, stop_tokens, alignments) - - return outputs, alignments, stop_tokens - - def inference_step(self, inputs, t, memory=None): - """ - For debug purposes - """ - if t == 0: - memory = self.get_go_frame(inputs) - self._init_states(inputs, mask=None) - - memory = self.prenet(memory) - decoder_output, stop_token, alignment = self.decode(memory) - stop_token = torch.sigmoid(stop_token.data) - memory = decoder_output - return decoder_output, stop_token, alignment diff --git a/TTS/tts/layers/tortoise/arch_utils.py b/TTS/tts/layers/tortoise/arch_utils.py deleted file mode 100644 index dad1814369599f0bc637a92624a73dfab99dc1a1..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/arch_utils.py +++ /dev/null @@ -1,433 +0,0 @@ -import functools -import math -import os - -import fsspec -import torch -import torch.nn as nn -import torch.nn.functional as F -import torchaudio -from transformers import LogitsWarper - -from TTS.tts.layers.tortoise.xtransformers import ContinuousTransformerWrapper, RelativePositionBias - - -def zero_module(module): - """ - Zero out the parameters of a module and return it. - """ - for p in module.parameters(): - p.detach().zero_() - return module - - -class GroupNorm32(nn.GroupNorm): - def forward(self, x): - return super().forward(x.float()).type(x.dtype) - - -def normalization(channels): - """ - Make a standard normalization layer. - - :param channels: number of input channels. - :return: an nn.Module for normalization. - """ - groups = 32 - if channels <= 16: - groups = 8 - elif channels <= 64: - groups = 16 - while channels % groups != 0: - groups = int(groups / 2) - assert groups > 2 - return GroupNorm32(groups, channels) - - -class QKVAttentionLegacy(nn.Module): - """ - A module which performs QKV attention. Matches legacy QKVAttention + input/output heads shaping - """ - - def __init__(self, n_heads): - super().__init__() - self.n_heads = n_heads - - def forward(self, qkv, mask=None, rel_pos=None): - """ - Apply QKV attention. - - :param qkv: an [N x (H * 3 * C) x T] tensor of Qs, Ks, and Vs. - :return: an [N x (H * C) x T] tensor after attention. - """ - bs, width, length = qkv.shape - assert width % (3 * self.n_heads) == 0 - ch = width // (3 * self.n_heads) - q, k, v = qkv.reshape(bs * self.n_heads, ch * 3, length).split(ch, dim=1) - scale = 1 / math.sqrt(math.sqrt(ch)) - weight = torch.einsum("bct,bcs->bts", q * scale, k * scale) # More stable with f16 than dividing afterwards - if rel_pos is not None: - weight = rel_pos(weight.reshape(bs, self.n_heads, weight.shape[-2], weight.shape[-1])).reshape( - bs * self.n_heads, weight.shape[-2], weight.shape[-1] - ) - weight = torch.softmax(weight.float(), dim=-1).type(weight.dtype) - if mask is not None: - # The proper way to do this is to mask before the softmax using -inf, but that doesn't work properly on CPUs. - mask = mask.repeat(self.n_heads, 1).unsqueeze(1) - weight = weight * mask - a = torch.einsum("bts,bcs->bct", weight, v) - - return a.reshape(bs, -1, length) - - -class AttentionBlock(nn.Module): - """ - An attention block that allows spatial positions to attend to each other. - - Originally ported from here, but adapted to the N-d case. - https://github.com/hojonathanho/diffusion/blob/1e0dceb3b3495bbe19116a5e1b3596cd0706c543/diffusion_tf/models/unet.py#L66. - """ - - def __init__( - self, - channels, - num_heads=1, - num_head_channels=-1, - do_checkpoint=True, - relative_pos_embeddings=False, - ): - super().__init__() - self.channels = channels - self.do_checkpoint = do_checkpoint - if num_head_channels == -1: - self.num_heads = num_heads - else: - assert ( - channels % num_head_channels == 0 - ), f"q,k,v channels {channels} is not divisible by num_head_channels {num_head_channels}" - self.num_heads = channels // num_head_channels - self.norm = normalization(channels) - self.qkv = nn.Conv1d(channels, channels * 3, 1) - # split heads before split qkv - self.attention = QKVAttentionLegacy(self.num_heads) - - self.proj_out = zero_module(nn.Conv1d(channels, channels, 1)) - if relative_pos_embeddings: - self.relative_pos_embeddings = RelativePositionBias( - scale=(channels // self.num_heads) ** 0.5, - causal=False, - heads=num_heads, - num_buckets=32, - max_distance=64, - ) - else: - self.relative_pos_embeddings = None - - def forward(self, x, mask=None): - b, c, *spatial = x.shape - x = x.reshape(b, c, -1) - qkv = self.qkv(self.norm(x)) - h = self.attention(qkv, mask, self.relative_pos_embeddings) - h = self.proj_out(h) - return (x + h).reshape(b, c, *spatial) - - -class Upsample(nn.Module): - """ - An upsampling layer with an optional convolution. - - :param channels: channels in the inputs and outputs. - :param use_conv: a bool determining if a convolution is applied. - """ - - def __init__(self, channels, use_conv, out_channels=None, factor=4): - super().__init__() - self.channels = channels - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.factor = factor - if use_conv: - ksize = 5 - pad = 2 - self.conv = nn.Conv1d(self.channels, self.out_channels, ksize, padding=pad) - - def forward(self, x): - assert x.shape[1] == self.channels - x = F.interpolate(x, scale_factor=self.factor, mode="nearest") - if self.use_conv: - x = self.conv(x) - return x - - -class Downsample(nn.Module): - """ - A downsampling layer with an optional convolution. - - :param channels: channels in the inputs and outputs. - :param use_conv: a bool determining if a convolution is applied. - """ - - def __init__(self, channels, use_conv, out_channels=None, factor=4, ksize=5, pad=2): - super().__init__() - self.channels = channels - self.out_channels = out_channels or channels - self.use_conv = use_conv - - stride = factor - if use_conv: - self.op = nn.Conv1d(self.channels, self.out_channels, ksize, stride=stride, padding=pad) - else: - assert self.channels == self.out_channels - self.op = nn.AvgPool1d(kernel_size=stride, stride=stride) - - def forward(self, x): - assert x.shape[1] == self.channels - return self.op(x) - - -class ResBlock(nn.Module): - def __init__( - self, - channels, - dropout, - out_channels=None, - use_conv=False, - use_scale_shift_norm=False, - up=False, - down=False, - kernel_size=3, - ): - super().__init__() - self.channels = channels - self.dropout = dropout - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.use_scale_shift_norm = use_scale_shift_norm - padding = 1 if kernel_size == 3 else 2 - - self.in_layers = nn.Sequential( - normalization(channels), - nn.SiLU(), - nn.Conv1d(channels, self.out_channels, kernel_size, padding=padding), - ) - - self.updown = up or down - - if up: - self.h_upd = Upsample(channels, False) - self.x_upd = Upsample(channels, False) - elif down: - self.h_upd = Downsample(channels, False) - self.x_upd = Downsample(channels, False) - else: - self.h_upd = self.x_upd = nn.Identity() - - self.out_layers = nn.Sequential( - normalization(self.out_channels), - nn.SiLU(), - nn.Dropout(p=dropout), - zero_module(nn.Conv1d(self.out_channels, self.out_channels, kernel_size, padding=padding)), - ) - - if self.out_channels == channels: - self.skip_connection = nn.Identity() - elif use_conv: - self.skip_connection = nn.Conv1d(channels, self.out_channels, kernel_size, padding=padding) - else: - self.skip_connection = nn.Conv1d(channels, self.out_channels, 1) - - def forward(self, x): - if self.updown: - in_rest, in_conv = self.in_layers[:-1], self.in_layers[-1] - h = in_rest(x) - h = self.h_upd(h) - x = self.x_upd(x) - h = in_conv(h) - else: - h = self.in_layers(x) - h = self.out_layers(h) - return self.skip_connection(x) + h - - -class AudioMiniEncoder(nn.Module): - def __init__( - self, - spec_dim, - embedding_dim, - base_channels=128, - depth=2, - resnet_blocks=2, - attn_blocks=4, - num_attn_heads=4, - dropout=0, - downsample_factor=2, - kernel_size=3, - ): - super().__init__() - self.init = nn.Sequential(nn.Conv1d(spec_dim, base_channels, 3, padding=1)) - ch = base_channels - res = [] - for l in range(depth): - for r in range(resnet_blocks): - res.append(ResBlock(ch, dropout, kernel_size=kernel_size)) - res.append(Downsample(ch, use_conv=True, out_channels=ch * 2, factor=downsample_factor)) - ch *= 2 - self.res = nn.Sequential(*res) - self.final = nn.Sequential(normalization(ch), nn.SiLU(), nn.Conv1d(ch, embedding_dim, 1)) - attn = [] - for a in range(attn_blocks): - attn.append( - AttentionBlock( - embedding_dim, - num_attn_heads, - ) - ) - self.attn = nn.Sequential(*attn) - self.dim = embedding_dim - - def forward(self, x): - h = self.init(x) - h = self.res(h) - h = self.final(h) - h = self.attn(h) - return h[:, :, 0] - - -DEFAULT_MEL_NORM_FILE = "https://coqui.gateway.scarf.sh/v0.14.1_models/mel_norms.pth" - - -class TorchMelSpectrogram(nn.Module): - def __init__( - self, - filter_length=1024, - hop_length=256, - win_length=1024, - n_mel_channels=80, - mel_fmin=0, - mel_fmax=8000, - sampling_rate=22050, - normalize=False, - mel_norm_file=DEFAULT_MEL_NORM_FILE, - ): - super().__init__() - # These are the default tacotron values for the MEL spectrogram. - self.filter_length = filter_length - self.hop_length = hop_length - self.win_length = win_length - self.n_mel_channels = n_mel_channels - self.mel_fmin = mel_fmin - self.mel_fmax = mel_fmax - self.sampling_rate = sampling_rate - self.mel_stft = torchaudio.transforms.MelSpectrogram( - n_fft=self.filter_length, - hop_length=self.hop_length, - win_length=self.win_length, - power=2, - normalized=normalize, - sample_rate=self.sampling_rate, - f_min=self.mel_fmin, - f_max=self.mel_fmax, - n_mels=self.n_mel_channels, - norm="slaney", - ) - self.mel_norm_file = mel_norm_file - if self.mel_norm_file is not None: - with fsspec.open(self.mel_norm_file) as f: - self.mel_norms = torch.load(f) - else: - self.mel_norms = None - - def forward(self, inp): - if ( - len(inp.shape) == 3 - ): # Automatically squeeze out the channels dimension if it is present (assuming mono-audio) - inp = inp.squeeze(1) - assert len(inp.shape) == 2 - self.mel_stft = self.mel_stft.to(inp.device) - mel = self.mel_stft(inp) - # Perform dynamic range compression - mel = torch.log(torch.clamp(mel, min=1e-5)) - if self.mel_norms is not None: - self.mel_norms = self.mel_norms.to(mel.device) - mel = mel / self.mel_norms.unsqueeze(0).unsqueeze(-1) - return mel - - -class CheckpointedLayer(nn.Module): - """ - Wraps a module. When forward() is called, passes kwargs that require_grad through torch.checkpoint() and bypasses - checkpoint for all other args. - """ - - def __init__(self, wrap): - super().__init__() - self.wrap = wrap - - def forward(self, x, *args, **kwargs): - for k, v in kwargs.items(): - assert not (isinstance(v, torch.Tensor) and v.requires_grad) # This would screw up checkpointing. - partial = functools.partial(self.wrap, **kwargs) - return partial(x, *args) - - -class CheckpointedXTransformerEncoder(nn.Module): - """ - Wraps a ContinuousTransformerWrapper and applies CheckpointedLayer to each layer and permutes from channels-mid - to channels-last that XTransformer expects. - """ - - def __init__(self, needs_permute=True, exit_permute=True, checkpoint=True, **xtransformer_kwargs): - super().__init__() - self.transformer = ContinuousTransformerWrapper(**xtransformer_kwargs) - self.needs_permute = needs_permute - self.exit_permute = exit_permute - - if not checkpoint: - return - for i in range(len(self.transformer.attn_layers.layers)): - n, b, r = self.transformer.attn_layers.layers[i] - self.transformer.attn_layers.layers[i] = nn.ModuleList([n, CheckpointedLayer(b), r]) - - def forward(self, x, **kwargs): - if self.needs_permute: - x = x.permute(0, 2, 1) - h = self.transformer(x, **kwargs) - if self.exit_permute: - h = h.permute(0, 2, 1) - return h - - -class TypicalLogitsWarper(LogitsWarper): - def __init__( - self, - mass: float = 0.9, - filter_value: float = -float("Inf"), - min_tokens_to_keep: int = 1, - ): - self.filter_value = filter_value - self.mass = mass - self.min_tokens_to_keep = min_tokens_to_keep - - def __call__(self, input_ids: torch.LongTensor, scores: torch.FloatTensor) -> torch.FloatTensor: - # calculate entropy - normalized = torch.nn.functional.log_softmax(scores, dim=-1) - p = torch.exp(normalized) - ent = -(normalized * p).nansum(-1, keepdim=True) - - # shift and sort - shifted_scores = torch.abs((-normalized) - ent) - sorted_scores, sorted_indices = torch.sort(shifted_scores, descending=False) - sorted_logits = scores.gather(-1, sorted_indices) - cumulative_probs = sorted_logits.softmax(dim=-1).cumsum(dim=-1) - - # Remove tokens with cumulative mass above the threshold - last_ind = (cumulative_probs < self.mass).sum(dim=1) - last_ind[last_ind < 0] = 0 - sorted_indices_to_remove = sorted_scores > sorted_scores.gather(1, last_ind.view(-1, 1)) - if self.min_tokens_to_keep > 1: - # Keep at least min_tokens_to_keep (set to min_tokens_to_keep-1 because we add the first one below) - sorted_indices_to_remove[..., : self.min_tokens_to_keep] = 0 - indices_to_remove = sorted_indices_to_remove.scatter(1, sorted_indices, sorted_indices_to_remove) - - scores = scores.masked_fill(indices_to_remove, self.filter_value) - return scores diff --git a/TTS/tts/layers/tortoise/audio_utils.py b/TTS/tts/layers/tortoise/audio_utils.py deleted file mode 100644 index 70711ed7a485ecd4a8c8eb8ab6c338aa79871de7..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/audio_utils.py +++ /dev/null @@ -1,177 +0,0 @@ -import os -from glob import glob -from typing import Dict, List - -import librosa -import numpy as np -import torch -import torchaudio -from scipy.io.wavfile import read - -from TTS.utils.audio.torch_transforms import TorchSTFT - - -def load_wav_to_torch(full_path): - sampling_rate, data = read(full_path) - if data.dtype == np.int32: - norm_fix = 2**31 - elif data.dtype == np.int16: - norm_fix = 2**15 - elif data.dtype == np.float16 or data.dtype == np.float32: - norm_fix = 1.0 - else: - raise NotImplementedError(f"Provided data dtype not supported: {data.dtype}") - return (torch.FloatTensor(data.astype(np.float32)) / norm_fix, sampling_rate) - - -def check_audio(audio, audiopath: str): - # Check some assumptions about audio range. This should be automatically fixed in load_wav_to_torch, but might not be in some edge cases, where we should squawk. - # '2' is arbitrarily chosen since it seems like audio will often "overdrive" the [-1,1] bounds. - if torch.any(audio > 2) or not torch.any(audio < 0): - print(f"Error with {audiopath}. Max={audio.max()} min={audio.min()}") - audio.clip_(-1, 1) - - -def read_audio_file(audiopath: str): - if audiopath[-4:] == ".wav": - audio, lsr = load_wav_to_torch(audiopath) - elif audiopath[-4:] == ".mp3": - audio, lsr = librosa.load(audiopath, sr=None) - audio = torch.FloatTensor(audio) - else: - assert False, f"Unsupported audio format provided: {audiopath[-4:]}" - - # Remove any channel data. - if len(audio.shape) > 1: - if audio.shape[0] < 5: - audio = audio[0] - else: - assert audio.shape[1] < 5 - audio = audio[:, 0] - - return audio, lsr - - -def load_required_audio(audiopath: str): - audio, lsr = read_audio_file(audiopath) - - audios = [torchaudio.functional.resample(audio, lsr, sampling_rate) for sampling_rate in (22050, 24000)] - for audio in audios: - check_audio(audio, audiopath) - - return [audio.unsqueeze(0) for audio in audios] - - -def load_audio(audiopath, sampling_rate): - audio, lsr = read_audio_file(audiopath) - - if lsr != sampling_rate: - audio = torchaudio.functional.resample(audio, lsr, sampling_rate) - check_audio(audio, audiopath) - - return audio.unsqueeze(0) - - -TACOTRON_MEL_MAX = 2.3143386840820312 -TACOTRON_MEL_MIN = -11.512925148010254 - - -def denormalize_tacotron_mel(norm_mel): - return ((norm_mel + 1) / 2) * (TACOTRON_MEL_MAX - TACOTRON_MEL_MIN) + TACOTRON_MEL_MIN - - -def normalize_tacotron_mel(mel): - return 2 * ((mel - TACOTRON_MEL_MIN) / (TACOTRON_MEL_MAX - TACOTRON_MEL_MIN)) - 1 - - -def dynamic_range_compression(x, C=1, clip_val=1e-5): - """ - PARAMS - ------ - C: compression factor - """ - return torch.log(torch.clamp(x, min=clip_val) * C) - - -def dynamic_range_decompression(x, C=1): - """ - PARAMS - ------ - C: compression factor used to compress - """ - return torch.exp(x) / C - - -def get_voices(extra_voice_dirs: List[str] = []): - dirs = extra_voice_dirs - voices: Dict[str, List[str]] = {} - for d in dirs: - subs = os.listdir(d) - for sub in subs: - subj = os.path.join(d, sub) - if os.path.isdir(subj): - voices[sub] = list(glob(f"{subj}/*.wav")) + list(glob(f"{subj}/*.mp3")) + list(glob(f"{subj}/*.pth")) - return voices - - -def load_voice(voice: str, extra_voice_dirs: List[str] = []): - if voice == "random": - return None, None - - voices = get_voices(extra_voice_dirs) - paths = voices[voice] - if len(paths) == 1 and paths[0].endswith(".pth"): - return None, torch.load(paths[0]) - else: - conds = [] - for cond_path in paths: - c = load_required_audio(cond_path) - conds.append(c) - return conds, None - - -def load_voices(voices: List[str], extra_voice_dirs: List[str] = []): - latents = [] - clips = [] - for voice in voices: - if voice == "random": - if len(voices) > 1: - print("Cannot combine a random voice with a non-random voice. Just using a random voice.") - return None, None - clip, latent = load_voice(voice, extra_voice_dirs) - if latent is None: - assert ( - len(latents) == 0 - ), "Can only combine raw audio voices or latent voices, not both. Do it yourself if you want this." - clips.extend(clip) - elif clip is None: - assert ( - len(clips) == 0 - ), "Can only combine raw audio voices or latent voices, not both. Do it yourself if you want this." - latents.append(latent) - if len(latents) == 0: - return clips, None - else: - latents_0 = torch.stack([l[0] for l in latents], dim=0).mean(dim=0) - latents_1 = torch.stack([l[1] for l in latents], dim=0).mean(dim=0) - latents = (latents_0, latents_1) - return None, latents - - -def wav_to_univnet_mel(wav, do_normalization=False, device="cuda"): - stft = TorchSTFT( - n_fft=1024, - hop_length=256, - win_length=1024, - use_mel=True, - n_mels=100, - sample_rate=24000, - mel_fmin=0, - mel_fmax=12000, - ) - stft = stft.to(device) - mel = stft(wav) - mel = dynamic_range_compression(mel) - if do_normalization: - mel = normalize_tacotron_mel(mel) - return mel diff --git a/TTS/tts/layers/tortoise/autoregressive.py b/TTS/tts/layers/tortoise/autoregressive.py deleted file mode 100644 index 14d881bc1029ef577f24ae28f9414e431661142a..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/autoregressive.py +++ /dev/null @@ -1,631 +0,0 @@ -# AGPL: a notification must be added stating that changes have been made to that file. -import functools - -import torch -import torch.nn as nn -import torch.nn.functional as F -from transformers import GPT2Config, GPT2PreTrainedModel, LogitsProcessorList -from transformers.modeling_outputs import CausalLMOutputWithCrossAttentions - -from TTS.tts.layers.tortoise.arch_utils import AttentionBlock, TypicalLogitsWarper - - -def null_position_embeddings(range, dim): - return torch.zeros((range.shape[0], range.shape[1], dim), device=range.device) - - -def _p(t): - return t and (len(t), len(t[0]), t[0][0].shape) # kv_cache debug - - -class ResBlock(nn.Module): - """ - Basic residual convolutional block that uses GroupNorm. - """ - - def __init__(self, chan): - super().__init__() - self.net = nn.Sequential( - nn.Conv1d(chan, chan, kernel_size=3, padding=1), - nn.GroupNorm(chan // 8, chan), - nn.ReLU(), - nn.Conv1d(chan, chan, kernel_size=3, padding=1), - nn.GroupNorm(chan // 8, chan), - ) - - def forward(self, x): - return F.relu(self.net(x) + x) - - -class GPT2InferenceModel(GPT2PreTrainedModel): - def __init__(self, config, gpt, text_pos_emb, embeddings, norm, linear, kv_cache): - super().__init__(config) - self.transformer = gpt - self.text_pos_embedding = text_pos_emb - self.embeddings = embeddings - self.lm_head = nn.Sequential(norm, linear) - self.kv_cache = kv_cache - - def store_mel_emb(self, mel_emb): - self.cached_mel_emb = mel_emb - - def prepare_inputs_for_generation(self, input_ids, past_key_values=None, **kwargs): - token_type_ids = kwargs.get("token_type_ids", None) # usually None - if not self.kv_cache: - past_key_values = None - # only last token for inputs_ids if past is defined in kwargs - if past_key_values: - input_ids = input_ids[:, -1].unsqueeze(-1) - if token_type_ids is not None: - token_type_ids = token_type_ids[:, -1].unsqueeze(-1) - - attention_mask = kwargs.get("attention_mask", None) - position_ids = kwargs.get("position_ids", None) - - if attention_mask is not None and position_ids is None: - # create position_ids on the fly for batch generation - position_ids = attention_mask.long().cumsum(-1) - 1 - position_ids.masked_fill_(attention_mask == 0, 1) - if past_key_values: - position_ids = position_ids[:, -1].unsqueeze(-1) - else: - position_ids = None - return { - "input_ids": input_ids, - "past_key_values": past_key_values, - "use_cache": kwargs.get("use_cache"), - "position_ids": position_ids, - "attention_mask": attention_mask, - "token_type_ids": token_type_ids, - } - - def forward( - self, - input_ids=None, - past_key_values=None, - attention_mask=None, - token_type_ids=None, - position_ids=None, - head_mask=None, - inputs_embeds=None, - encoder_hidden_states=None, - encoder_attention_mask=None, - labels=None, - use_cache=None, - output_attentions=None, - output_hidden_states=None, - return_dict=None, - ): - assert self.cached_mel_emb is not None - assert inputs_embeds is None # Not supported by this inference model. - assert labels is None # Training not supported by this inference model. - return_dict = return_dict if return_dict is not None else self.config.use_return_dict - - # Create embedding - mel_len = self.cached_mel_emb.shape[1] - if input_ids.shape[1] != 1: - text_inputs = input_ids[:, mel_len:] - text_emb = self.embeddings(text_inputs) - text_emb = text_emb + self.text_pos_embedding(text_emb) - if self.cached_mel_emb.shape[0] != text_emb.shape[0]: - mel_emb = self.cached_mel_emb.repeat_interleave(text_emb.shape[0] // self.cached_mel_emb.shape[0], 0) - else: # this outcome only occurs once per loop in most cases - mel_emb = self.cached_mel_emb - emb = torch.cat([mel_emb, text_emb], dim=1) - else: - emb = self.embeddings(input_ids) - emb = emb + self.text_pos_embedding.get_fixed_embedding( - attention_mask.shape[1] - mel_len, attention_mask.device - ) - - transformer_outputs = self.transformer( - inputs_embeds=emb, - past_key_values=past_key_values, - attention_mask=attention_mask, - token_type_ids=token_type_ids, - position_ids=position_ids, - head_mask=head_mask, - encoder_hidden_states=encoder_hidden_states, - encoder_attention_mask=encoder_attention_mask, - use_cache=use_cache, - output_attentions=output_attentions, - output_hidden_states=output_hidden_states, - return_dict=return_dict, - ) - hidden_states = transformer_outputs[0] - lm_logits = self.lm_head(hidden_states) - - if not return_dict: - return (lm_logits,) + transformer_outputs[1:] - - return CausalLMOutputWithCrossAttentions( - loss=None, - logits=lm_logits, - past_key_values=transformer_outputs.past_key_values, - hidden_states=transformer_outputs.hidden_states, - attentions=transformer_outputs.attentions, - cross_attentions=transformer_outputs.cross_attentions, - ) - - @staticmethod - def _reorder_cache(past, beam_idx): - """ - This function is used to re-order the :obj:`past_key_values` cache if - :meth:`~transformers.PreTrainedModel.beam_search` or :meth:`~transformers.PreTrainedModel.beam_sample` is - called. This is required to match :obj:`past_key_values` with the correct beam_idx at every generation step. - """ - return tuple( - tuple(past_state.index_select(0, beam_idx.to(past_state.device)) for past_state in layer_past) - for layer_past in past - ) - - -class ConditioningEncoder(nn.Module): - def __init__( - self, - spec_dim, - embedding_dim, - attn_blocks=6, - num_attn_heads=4, - do_checkpointing=False, - mean=False, - ): - super().__init__() - attn = [] - self.init = nn.Conv1d(spec_dim, embedding_dim, kernel_size=1) - for a in range(attn_blocks): - attn.append(AttentionBlock(embedding_dim, num_attn_heads)) - self.attn = nn.Sequential(*attn) - self.dim = embedding_dim - self.do_checkpointing = do_checkpointing - self.mean = mean - - def forward(self, x): - h = self.init(x) - h = self.attn(h) - if self.mean: - return h.mean(dim=2) - else: - return h[:, :, 0] - - -class LearnedPositionEmbeddings(nn.Module): - def __init__(self, seq_len, model_dim, init=0.02): - super().__init__() - self.emb = nn.Embedding(seq_len, model_dim) - # Initializing this way is standard for GPT-2 - self.emb.weight.data.normal_(mean=0.0, std=init) - - def forward(self, x): - sl = x.shape[1] - return self.emb(torch.arange(0, sl, device=x.device)) - - def get_fixed_embedding(self, ind, dev): - return self.emb(torch.arange(0, ind, device=dev))[ind - 1 : ind] - - -def build_hf_gpt_transformer(layers, model_dim, heads, max_mel_seq_len, max_text_seq_len, checkpointing): - """ - GPT-2 implemented by the HuggingFace library. - """ - from transformers import GPT2Config, GPT2Model - - gpt_config = GPT2Config( - vocab_size=256, # Unused. - n_positions=max_mel_seq_len + max_text_seq_len, - n_ctx=max_mel_seq_len + max_text_seq_len, - n_embd=model_dim, - n_layer=layers, - n_head=heads, - gradient_checkpointing=checkpointing, - use_cache=not checkpointing, - ) - gpt = GPT2Model(gpt_config) - # Override the built in positional embeddings - del gpt.wpe # TODO: figure out relevance in fixing exported model definition: Embedding(1012, 1024) - gpt.wpe = functools.partial(null_position_embeddings, dim=model_dim) - # Built-in token embeddings are unused. - del gpt.wte - return ( - gpt, - LearnedPositionEmbeddings(max_mel_seq_len, model_dim), - LearnedPositionEmbeddings(max_text_seq_len, model_dim), - None, - None, - ) - - -class MelEncoder(nn.Module): - def __init__(self, channels, mel_channels=80, resblocks_per_reduction=2): - super().__init__() - self.channels = channels - self.encoder = nn.Sequential( - nn.Conv1d(mel_channels, channels // 4, kernel_size=3, padding=1), - nn.Sequential(*[ResBlock(channels // 4) for _ in range(resblocks_per_reduction)]), - nn.Conv1d(channels // 4, channels // 2, kernel_size=3, stride=2, padding=1), - nn.GroupNorm(channels // 16, channels // 2), - nn.ReLU(), - nn.Sequential(*[ResBlock(channels // 2) for _ in range(resblocks_per_reduction)]), - nn.Conv1d(channels // 2, channels, kernel_size=3, stride=2, padding=1), - nn.GroupNorm(channels // 8, channels), - nn.ReLU(), - nn.Sequential(*[ResBlock(channels) for _ in range(resblocks_per_reduction)]), - ) - self.reduction = 4 - - def forward(self, x): - for e in self.encoder: - x = e(x) - return x.permute(0, 2, 1) - - -class UnifiedVoice(nn.Module): - def __init__( - self, - layers=8, - model_dim=512, - heads=8, - max_text_tokens=120, - max_mel_tokens=250, - max_conditioning_inputs=1, - mel_length_compression=1024, - number_text_tokens=256, - start_text_token=None, - number_mel_codes=8194, - start_mel_token=8192, - stop_mel_token=8193, - train_solo_embeddings=False, - use_mel_codes_as_input=True, - checkpointing=True, - types=1, - ): - """ - Args: - layers: Number of layers in transformer stack. - model_dim: Operating dimensions of the transformer - heads: Number of transformer heads. Must be divisible by model_dim. Recommend model_dim//64 - max_text_tokens: Maximum number of text tokens that will be encountered by model. - max_mel_tokens: Maximum number of MEL tokens that will be encountered by model. - max_conditioning_inputs: Maximum number of conditioning inputs provided to the model. If (1), conditioning input can be of format (b,80,s), otherwise (b,n,80,s). - mel_length_compression: The factor between and . Used to compute MEL code padding given wav input length. - number_text_tokens: - start_text_token: - stop_text_token: - number_mel_codes: - start_mel_token: - stop_mel_token: - train_solo_embeddings: - use_mel_codes_as_input: - checkpointing: - """ - super().__init__() - - self.number_text_tokens = number_text_tokens - self.start_text_token = number_text_tokens * types if start_text_token is None else start_text_token - self.stop_text_token = 0 - self.number_mel_codes = number_mel_codes - self.start_mel_token = start_mel_token - self.stop_mel_token = stop_mel_token - self.layers = layers - self.heads = heads - self.max_mel_tokens = max_mel_tokens - self.max_text_tokens = max_text_tokens - self.model_dim = model_dim - self.max_conditioning_inputs = max_conditioning_inputs - self.mel_length_compression = mel_length_compression - self.conditioning_encoder = ConditioningEncoder(80, model_dim, num_attn_heads=heads) - self.text_embedding = nn.Embedding(self.number_text_tokens * types + 1, model_dim) - if use_mel_codes_as_input: - self.mel_embedding = nn.Embedding(self.number_mel_codes, model_dim) - else: - self.mel_embedding = MelEncoder(model_dim, resblocks_per_reduction=1) - ( - self.gpt, - self.mel_pos_embedding, - self.text_pos_embedding, - self.mel_layer_pos_embedding, - self.text_layer_pos_embedding, - ) = build_hf_gpt_transformer( - layers, - model_dim, - heads, - self.max_mel_tokens + 2 + self.max_conditioning_inputs, - self.max_text_tokens + 2, - checkpointing, - ) - if train_solo_embeddings: - self.mel_solo_embedding = nn.Parameter(torch.randn(1, 1, model_dim) * 0.02, requires_grad=True) - self.text_solo_embedding = nn.Parameter(torch.randn(1, 1, model_dim) * 0.02, requires_grad=True) - else: - self.mel_solo_embedding = 0 - self.text_solo_embedding = 0 - - self.final_norm = nn.LayerNorm(model_dim) - self.text_head = nn.Linear(model_dim, self.number_text_tokens * types + 1) - self.mel_head = nn.Linear(model_dim, self.number_mel_codes) - - # Initialize the embeddings per the GPT-2 scheme - embeddings = [self.text_embedding] - if use_mel_codes_as_input: - embeddings.append(self.mel_embedding) - for module in embeddings: - module.weight.data.normal_(mean=0.0, std=0.02) - - def post_init_gpt2_config(self, kv_cache=True): - seq_length = self.max_mel_tokens + self.max_text_tokens + 2 - gpt_config = GPT2Config( - vocab_size=self.max_mel_tokens, - n_positions=seq_length, - n_ctx=seq_length, - n_embd=self.model_dim, - n_layer=self.layers, - n_head=self.heads, - gradient_checkpointing=False, - use_cache=True, - ) - self.inference_model = GPT2InferenceModel( - gpt_config, - self.gpt, - self.mel_pos_embedding, - self.mel_embedding, - self.final_norm, - self.mel_head, - kv_cache=kv_cache, - ) - # self.inference_model = PrunedGPT2InferenceModel(gpt_config, self.gpt, self.mel_pos_embedding, self.mel_embedding, self.final_norm, self.mel_head) - self.gpt.wte = self.mel_embedding - # self.inference_model.save_pretrained("") - - def build_aligned_inputs_and_targets(self, input, start_token, stop_token): - inp = F.pad(input, (1, 0), value=start_token) - tar = F.pad(input, (0, 1), value=stop_token) - return inp, tar - - def set_mel_padding(self, mel_input_tokens, wav_lengths): - """ - Given mel tokens that are derived from a padded audio clip and the actual lengths of each batch element in - that audio clip, reformats the tokens with STOP_MEL_TOKEN in place of the zero padding. This is required - preformatting to create a working TTS model. - """ - # Set padding areas within MEL (currently it is coded with the MEL code for ). - mel_lengths = torch.div(wav_lengths, self.mel_length_compression, rounding_mode="trunc") - for b in range(len(mel_lengths)): - actual_end = ( - mel_lengths[b] + 1 - ) # Due to the convolutional nature of how these tokens are generated, it would be best if the model predicts a token past the actual last token. - if actual_end < mel_input_tokens.shape[-1]: - mel_input_tokens[b, actual_end:] = self.stop_mel_token - return mel_input_tokens - - def get_logits( - self, - speech_conditioning_inputs, - first_inputs, - first_head, - second_inputs=None, - second_head=None, - get_attns=False, - return_latent=False, - ): - if second_inputs is not None: - emb = torch.cat([speech_conditioning_inputs, first_inputs, second_inputs], dim=1) - else: - emb = torch.cat([speech_conditioning_inputs, first_inputs], dim=1) - - gpt_out = self.gpt(inputs_embeds=emb, return_dict=True, output_attentions=get_attns) - if get_attns: - return gpt_out.attentions - - enc = gpt_out.last_hidden_state[:, 1:] # The first logit is tied to the speech_conditioning_input - enc = self.final_norm(enc) - - if return_latent: - return ( - enc[ - :, - speech_conditioning_inputs.shape[1] : speech_conditioning_inputs.shape[1] + first_inputs.shape[1], - ], - enc[:, -second_inputs.shape[1] :], - ) - - first_logits = enc[:, : first_inputs.shape[1]] - first_logits = first_head(first_logits) - first_logits = first_logits.permute(0, 2, 1) - if second_inputs is not None: - second_logits = enc[:, -second_inputs.shape[1] :] - second_logits = second_head(second_logits) - second_logits = second_logits.permute(0, 2, 1) - return first_logits, second_logits - else: - return first_logits - - def get_conditioning(self, speech_conditioning_input): - speech_conditioning_input = ( - speech_conditioning_input.unsqueeze(1) - if len(speech_conditioning_input.shape) == 3 - else speech_conditioning_input - ) - conds = [] - for j in range(speech_conditioning_input.shape[1]): - conds.append(self.conditioning_encoder(speech_conditioning_input[:, j])) - conds = torch.stack(conds, dim=1) - conds = conds.mean(dim=1) - return conds - - def forward( - self, - speech_conditioning_latent, - text_inputs, - text_lengths, - mel_codes, - wav_lengths, - types=None, - text_first=True, - raw_mels=None, - return_attentions=False, - return_latent=False, - clip_inputs=True, - ): - """ - Forward pass that uses both text and voice in either text conditioning mode or voice conditioning mode - (actuated by `text_first`). - - speech_conditioning_input: MEL float tensor, (b,1024) - text_inputs: long tensor, (b,t) - text_lengths: long tensor, (b,) - mel_inputs: long tensor, (b,m) - wav_lengths: long tensor, (b,) - raw_mels: MEL float tensor (b,80,s) - - If return_attentions is specified, only logits are returned. - If return_latent is specified, loss & logits are not computed or returned. Only the predicted latents are returned. - If clip_inputs is True, the inputs will be clipped to the smallest input size across each input modality. - """ - # Types are expressed by expanding the text embedding space. - if types is not None: - text_inputs = text_inputs * (1 + types).unsqueeze(-1) - - if clip_inputs: - # This model will receive micro-batches with a ton of padding for both the text and MELs. Ameliorate this by - # chopping the inputs by the maximum actual length. - max_text_len = text_lengths.max() - text_inputs = text_inputs[:, :max_text_len] - max_mel_len = wav_lengths.max() // self.mel_length_compression - mel_codes = mel_codes[:, :max_mel_len] - if raw_mels is not None: - raw_mels = raw_mels[:, :, : max_mel_len * 4] - mel_codes = self.set_mel_padding(mel_codes, wav_lengths) - text_inputs = F.pad(text_inputs, (0, 1), value=self.stop_text_token) - mel_codes = F.pad(mel_codes, (0, 1), value=self.stop_mel_token) - - conds = speech_conditioning_latent.unsqueeze(1) - text_inputs, text_targets = self.build_aligned_inputs_and_targets( - text_inputs, self.start_text_token, self.stop_text_token - ) - text_emb = self.text_embedding(text_inputs) + self.text_pos_embedding(text_inputs) - mel_codes, mel_targets = self.build_aligned_inputs_and_targets( - mel_codes, self.start_mel_token, self.stop_mel_token - ) - if raw_mels is not None: - mel_inp = F.pad(raw_mels, (0, 8)) - else: - mel_inp = mel_codes - mel_emb = self.mel_embedding(mel_inp) - mel_emb = mel_emb + self.mel_pos_embedding(mel_codes) - - if text_first: - text_logits, mel_logits = self.get_logits( - conds, - text_emb, - self.text_head, - mel_emb, - self.mel_head, - get_attns=return_attentions, - return_latent=return_latent, - ) - if return_latent: - return mel_logits[ - :, :-2 - ] # Despite the name, these are not logits. Strip off the two tokens added by this forward pass. - else: - mel_logits, text_logits = self.get_logits( - conds, - mel_emb, - self.mel_head, - text_emb, - self.text_head, - get_attns=return_attentions, - return_latent=return_latent, - ) - if return_latent: - return text_logits[ - :, :-2 - ] # Despite the name, these are not logits. Strip off the two tokens added by this forward pass. - - if return_attentions: - return mel_logits - loss_text = F.cross_entropy(text_logits, text_targets.long()) - loss_mel = F.cross_entropy(mel_logits, mel_targets.long()) - return loss_text.mean(), loss_mel.mean(), mel_logits - - def inference_speech( - self, - speech_conditioning_latent, - text_inputs, - input_tokens=None, - num_return_sequences=1, - max_generate_length=None, - typical_sampling=False, - typical_mass=0.9, - **hf_generate_kwargs, - ): - text_inputs = F.pad(text_inputs, (0, 1), value=self.stop_text_token) - text_inputs, text_targets = self.build_aligned_inputs_and_targets( - text_inputs, self.start_text_token, self.stop_text_token - ) - text_emb = self.text_embedding(text_inputs) + self.text_pos_embedding(text_inputs) - - conds = speech_conditioning_latent.unsqueeze(1) - emb = torch.cat([conds, text_emb], dim=1) - self.inference_model.store_mel_emb(emb) - - fake_inputs = torch.full( - ( - emb.shape[0], - conds.shape[1] + emb.shape[1], - ), - fill_value=1, - dtype=torch.long, - device=text_inputs.device, - ) - fake_inputs[:, -1] = self.start_mel_token - trunc_index = fake_inputs.shape[1] - if input_tokens is None: - inputs = fake_inputs - else: - assert ( - num_return_sequences % input_tokens.shape[0] == 0 - ), "The number of return sequences must be divisible by the number of input sequences" - fake_inputs = fake_inputs.repeat(num_return_sequences, 1) - input_tokens = input_tokens.repeat(num_return_sequences // input_tokens.shape[0], 1) - inputs = torch.cat([fake_inputs, input_tokens], dim=1) - - logits_processor = ( - LogitsProcessorList([TypicalLogitsWarper(mass=typical_mass)]) if typical_sampling else LogitsProcessorList() - ) # TODO disable this - max_length = ( - trunc_index + self.max_mel_tokens - 1 if max_generate_length is None else trunc_index + max_generate_length - ) - gen = self.inference_model.generate( - inputs, - bos_token_id=self.start_mel_token, - pad_token_id=self.stop_mel_token, - eos_token_id=self.stop_mel_token, - max_length=max_length, - logits_processor=logits_processor, - num_return_sequences=num_return_sequences, - **hf_generate_kwargs, - ) - return gen[:, trunc_index:] - - -if __name__ == "__main__": - gpt = UnifiedVoice( - model_dim=256, - heads=4, - train_solo_embeddings=True, - use_mel_codes_as_input=True, - max_conditioning_inputs=4, - ) - l = gpt( - torch.randn(2, 3, 80, 800), - torch.randint(high=120, size=(2, 120)), - torch.tensor([32, 120]), - torch.randint(high=8192, size=(2, 250)), - torch.tensor([250 * 256, 195 * 256]), - ) - gpt.text_forward( - torch.randn(2, 80, 800), - torch.randint(high=50, size=(2, 80)), - torch.tensor([32, 80]), - ) diff --git a/TTS/tts/layers/tortoise/classifier.py b/TTS/tts/layers/tortoise/classifier.py deleted file mode 100644 index 8764bb070b5ad8267ee2992ccc33f5bb65bad005..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/classifier.py +++ /dev/null @@ -1,144 +0,0 @@ -import torch -import torch.nn as nn - -from TTS.tts.layers.tortoise.arch_utils import AttentionBlock, Downsample, Upsample, normalization, zero_module - - -class ResBlock(nn.Module): - def __init__( - self, - channels, - dropout, - out_channels=None, - use_conv=False, - use_scale_shift_norm=False, - dims=2, - up=False, - down=False, - kernel_size=3, - do_checkpoint=True, - ): - super().__init__() - self.channels = channels - self.dropout = dropout - self.out_channels = out_channels or channels - self.use_conv = use_conv - self.use_scale_shift_norm = use_scale_shift_norm - self.do_checkpoint = do_checkpoint - padding = 1 if kernel_size == 3 else 2 - - self.in_layers = nn.Sequential( - normalization(channels), - nn.SiLU(), - nn.Conv1d(channels, self.out_channels, kernel_size, padding=padding), - ) - - self.updown = up or down - - if up: - self.h_upd = Upsample(channels, False, dims) - self.x_upd = Upsample(channels, False, dims) - elif down: - self.h_upd = Downsample(channels, False, dims) - self.x_upd = Downsample(channels, False, dims) - else: - self.h_upd = self.x_upd = nn.Identity() - - self.out_layers = nn.Sequential( - normalization(self.out_channels), - nn.SiLU(), - nn.Dropout(p=dropout), - zero_module(nn.Conv1d(self.out_channels, self.out_channels, kernel_size, padding=padding)), - ) - - if self.out_channels == channels: - self.skip_connection = nn.Identity() - elif use_conv: - self.skip_connection = nn.Conv1d(dims, channels, self.out_channels, kernel_size, padding=padding) - else: - self.skip_connection = nn.Conv1d(dims, channels, self.out_channels, 1) - - def forward(self, x): - if self.updown: - in_rest, in_conv = self.in_layers[:-1], self.in_layers[-1] - h = in_rest(x) - h = self.h_upd(h) - x = self.x_upd(x) - h = in_conv(h) - else: - h = self.in_layers(x) - h = self.out_layers(h) - return self.skip_connection(x) + h - - -class AudioMiniEncoder(nn.Module): - def __init__( - self, - spec_dim, - embedding_dim, - base_channels=128, - depth=2, - resnet_blocks=2, - attn_blocks=4, - num_attn_heads=4, - dropout=0, - downsample_factor=2, - kernel_size=3, - ): - super().__init__() - self.init = nn.Sequential(nn.Conv1d(spec_dim, base_channels, 3, padding=1)) - ch = base_channels - res = [] - self.layers = depth - for l in range(depth): - for r in range(resnet_blocks): - res.append(ResBlock(ch, dropout, do_checkpoint=False, kernel_size=kernel_size)) - res.append(Downsample(ch, use_conv=True, out_channels=ch * 2, factor=downsample_factor)) - ch *= 2 - self.res = nn.Sequential(*res) - self.final = nn.Sequential(normalization(ch), nn.SiLU(), nn.Conv1d(ch, embedding_dim, 1)) - attn = [] - for a in range(attn_blocks): - attn.append(AttentionBlock(embedding_dim, num_attn_heads, do_checkpoint=False)) - self.attn = nn.Sequential(*attn) - self.dim = embedding_dim - - def forward(self, x): - h = self.init(x) - h = self.res(h) - h = self.final(h) - for blk in self.attn: - h = blk(h) - return h[:, :, 0] - - -class AudioMiniEncoderWithClassifierHead(nn.Module): - def __init__(self, classes, distribute_zero_label=True, **kwargs): - super().__init__() - self.enc = AudioMiniEncoder(**kwargs) - self.head = nn.Linear(self.enc.dim, classes) - self.num_classes = classes - self.distribute_zero_label = distribute_zero_label - - def forward(self, x, labels=None): - h = self.enc(x) - logits = self.head(h) - if labels is None: - return logits - else: - if self.distribute_zero_label: - oh_labels = nn.functional.one_hot(labels, num_classes=self.num_classes) - zeros_indices = (labels == 0).unsqueeze(-1) - # Distribute 20% of the probability mass on all classes when zero is specified, to compensate for dataset noise. - zero_extra_mass = torch.full_like( - oh_labels, - dtype=torch.float, - fill_value=0.2 / (self.num_classes - 1), - ) - zero_extra_mass[:, 0] = -0.2 - zero_extra_mass = zero_extra_mass * zeros_indices - oh_labels = oh_labels + zero_extra_mass - else: - oh_labels = labels - loss = nn.functional.cross_entropy(logits, oh_labels) - return loss diff --git a/TTS/tts/layers/tortoise/clvp.py b/TTS/tts/layers/tortoise/clvp.py deleted file mode 100644 index 69b8c17c3fe71f55be12b728fa3c8f0e85cefb89..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/clvp.py +++ /dev/null @@ -1,159 +0,0 @@ -import torch -import torch.nn as nn -import torch.nn.functional as F -from torch import einsum - -from TTS.tts.layers.tortoise.arch_utils import CheckpointedXTransformerEncoder -from TTS.tts.layers.tortoise.transformer import Transformer -from TTS.tts.layers.tortoise.xtransformers import Encoder - - -def exists(val): - return val is not None - - -def masked_mean(t, mask, dim=1): - t = t.masked_fill(~mask[:, :, None], 0.0) - return t.sum(dim=1) / mask.sum(dim=1)[..., None] - - -class CLVP(nn.Module): - """ - CLIP model retrofitted for performing contrastive evaluation between tokenized audio data and the corresponding - transcribed text. - - Originally from https://github.com/lucidrains/DALLE-pytorch/blob/main/dalle_pytorch/dalle_pytorch.py - """ - - def __init__( - self, - *, - dim_text=512, - dim_speech=512, - dim_latent=512, - num_text_tokens=256, - text_enc_depth=6, - text_seq_len=120, - text_heads=8, - num_speech_tokens=8192, - speech_enc_depth=6, - speech_heads=8, - speech_seq_len=250, - text_mask_percentage=0, - voice_mask_percentage=0, - wav_token_compression=1024, - use_xformers=False, - ): - super().__init__() - self.text_emb = nn.Embedding(num_text_tokens, dim_text) - self.to_text_latent = nn.Linear(dim_text, dim_latent, bias=False) - - self.speech_emb = nn.Embedding(num_speech_tokens, dim_speech) - self.to_speech_latent = nn.Linear(dim_speech, dim_latent, bias=False) - - if use_xformers: - self.text_transformer = CheckpointedXTransformerEncoder( - needs_permute=False, - exit_permute=False, - max_seq_len=-1, - attn_layers=Encoder( - dim=dim_text, - depth=text_enc_depth, - heads=text_heads, - ff_dropout=0.1, - ff_mult=2, - attn_dropout=0.1, - use_rmsnorm=True, - ff_glu=True, - rotary_pos_emb=True, - ), - ) - self.speech_transformer = CheckpointedXTransformerEncoder( - needs_permute=False, - exit_permute=False, - max_seq_len=-1, - attn_layers=Encoder( - dim=dim_speech, - depth=speech_enc_depth, - heads=speech_heads, - ff_dropout=0.1, - ff_mult=2, - attn_dropout=0.1, - use_rmsnorm=True, - ff_glu=True, - rotary_pos_emb=True, - ), - ) - else: - self.text_transformer = Transformer( - causal=False, seq_len=text_seq_len, dim=dim_text, depth=text_enc_depth, heads=text_heads - ) - self.speech_transformer = Transformer( - causal=False, seq_len=speech_seq_len, dim=dim_speech, depth=speech_enc_depth, heads=speech_heads - ) - - self.temperature = nn.Parameter(torch.tensor(1.0)) - self.text_mask_percentage = text_mask_percentage - self.voice_mask_percentage = voice_mask_percentage - self.wav_token_compression = wav_token_compression - self.xformers = use_xformers - if not use_xformers: - self.text_pos_emb = nn.Embedding(text_seq_len, dim_text) - self.speech_pos_emb = nn.Embedding(num_speech_tokens, dim_speech) - - def forward(self, text, speech_tokens, return_loss=False): - b, device = text.shape[0], text.device - if self.training: - text_mask = torch.rand_like(text.float()) > self.text_mask_percentage - voice_mask = torch.rand_like(speech_tokens.float()) > self.voice_mask_percentage - else: - text_mask = torch.ones_like(text.float()).bool() - voice_mask = torch.ones_like(speech_tokens.float()).bool() - - text_emb = self.text_emb(text) - speech_emb = self.speech_emb(speech_tokens) - - if not self.xformers: - text_emb += self.text_pos_emb(torch.arange(text.shape[1], device=device)) - speech_emb += self.speech_pos_emb(torch.arange(speech_emb.shape[1], device=device)) - - enc_text = self.text_transformer(text_emb, mask=text_mask) - enc_speech = self.speech_transformer(speech_emb, mask=voice_mask) - - text_latents = masked_mean(enc_text, text_mask, dim=1) - speech_latents = masked_mean(enc_speech, voice_mask, dim=1) - - text_latents = self.to_text_latent(text_latents) - speech_latents = self.to_speech_latent(speech_latents) - - text_latents, speech_latents = map(lambda t: F.normalize(t, p=2, dim=-1), (text_latents, speech_latents)) - - temp = self.temperature.exp() - - if not return_loss: - sim = einsum("n d, n d -> n", text_latents, speech_latents) * temp - return sim - - sim = einsum("i d, j d -> i j", text_latents, speech_latents) * temp - labels = torch.arange(b, device=device) - loss = (F.cross_entropy(sim, labels) + F.cross_entropy(sim.t(), labels)) / 2 - return loss - - -if __name__ == "__main__": - clip = CLVP(text_mask_percentage=0.2, voice_mask_percentage=0.2) - clip( - torch.randint(0, 256, (2, 120)), - torch.tensor([50, 100]), - torch.randint(0, 8192, (2, 250)), - torch.tensor([101, 102]), - return_loss=True, - ) - nonloss = clip( - torch.randint(0, 256, (2, 120)), - torch.tensor([50, 100]), - torch.randint(0, 8192, (2, 250)), - torch.tensor([101, 102]), - return_loss=False, - ) - print(nonloss.shape) diff --git a/TTS/tts/layers/tortoise/diffusion.py b/TTS/tts/layers/tortoise/diffusion.py deleted file mode 100644 index eb9e90df51c80335321d34c6f26bf1f4307478f5..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/diffusion.py +++ /dev/null @@ -1,1259 +0,0 @@ -""" -This is an almost carbon copy of gaussian_diffusion.py from OpenAI's ImprovedDiffusion repo, which itself: - -This code started out as a PyTorch port of Ho et al's diffusion models: -https://github.com/hojonathanho/diffusion/blob/1e0dceb3b3495bbe19116a5e1b3596cd0706c543/diffusion_tf/diffusion_utils_2.py - -Docstrings have been added, as well as DDIM sampling and a new collection of beta schedules. -""" - -import enum -import math - -import numpy as np -import torch -import torch as th -from k_diffusion.sampling import sample_dpmpp_2m, sample_euler_ancestral -from tqdm import tqdm - -from TTS.tts.layers.tortoise.dpm_solver import DPM_Solver, NoiseScheduleVP, model_wrapper - -K_DIFFUSION_SAMPLERS = {"k_euler_a": sample_euler_ancestral, "dpm++2m": sample_dpmpp_2m} -SAMPLERS = ["dpm++2m", "p", "ddim"] - - -def normal_kl(mean1, logvar1, mean2, logvar2): - """ - Compute the KL divergence between two gaussians. - - Shapes are automatically broadcasted, so batches can be compared to - scalars, among other use cases. - """ - tensor = None - for obj in (mean1, logvar1, mean2, logvar2): - if isinstance(obj, th.Tensor): - tensor = obj - break - assert tensor is not None, "at least one argument must be a Tensor" - - # Force variances to be Tensors. Broadcasting helps convert scalars to - # Tensors, but it does not work for th.exp(). - logvar1, logvar2 = [x if isinstance(x, th.Tensor) else th.tensor(x).to(tensor) for x in (logvar1, logvar2)] - - return 0.5 * (-1.0 + logvar2 - logvar1 + th.exp(logvar1 - logvar2) + ((mean1 - mean2) ** 2) * th.exp(-logvar2)) - - -def approx_standard_normal_cdf(x): - """ - A fast approximation of the cumulative distribution function of the - standard normal. - """ - return 0.5 * (1.0 + th.tanh(np.sqrt(2.0 / np.pi) * (x + 0.044715 * th.pow(x, 3)))) - - -def discretized_gaussian_log_likelihood(x, *, means, log_scales): - """ - Compute the log-likelihood of a Gaussian distribution discretizing to a - given image. - - :param x: the target images. It is assumed that this was uint8 values, - rescaled to the range [-1, 1]. - :param means: the Gaussian mean Tensor. - :param log_scales: the Gaussian log stddev Tensor. - :return: a tensor like x of log probabilities (in nats). - """ - assert x.shape == means.shape == log_scales.shape - centered_x = x - means - inv_stdv = th.exp(-log_scales) - plus_in = inv_stdv * (centered_x + 1.0 / 255.0) - cdf_plus = approx_standard_normal_cdf(plus_in) - min_in = inv_stdv * (centered_x - 1.0 / 255.0) - cdf_min = approx_standard_normal_cdf(min_in) - log_cdf_plus = th.log(cdf_plus.clamp(min=1e-12)) - log_one_minus_cdf_min = th.log((1.0 - cdf_min).clamp(min=1e-12)) - cdf_delta = cdf_plus - cdf_min - log_probs = th.where( - x < -0.999, - log_cdf_plus, - th.where(x > 0.999, log_one_minus_cdf_min, th.log(cdf_delta.clamp(min=1e-12))), - ) - assert log_probs.shape == x.shape - return log_probs - - -def mean_flat(tensor): - """ - Take the mean over all non-batch dimensions. - """ - return tensor.mean(dim=list(range(1, len(tensor.shape)))) - - -def get_named_beta_schedule(schedule_name, num_diffusion_timesteps): - """ - Get a pre-defined beta schedule for the given name. - - The beta schedule library consists of beta schedules which remain similar - in the limit of num_diffusion_timesteps. - Beta schedules may be added, but should not be removed or changed once - they are committed to maintain backwards compatibility. - """ - if schedule_name == "linear": - # Linear schedule from Ho et al, extended to work for any number of - # diffusion steps. - scale = 1000 / num_diffusion_timesteps - beta_start = scale * 0.0001 - beta_end = scale * 0.02 - return np.linspace(beta_start, beta_end, num_diffusion_timesteps, dtype=np.float64) - elif schedule_name == "cosine": - return betas_for_alpha_bar( - num_diffusion_timesteps, - lambda t: math.cos((t + 0.008) / 1.008 * math.pi / 2) ** 2, - ) - else: - raise NotImplementedError(f"unknown beta schedule: {schedule_name}") - - -def betas_for_alpha_bar(num_diffusion_timesteps, alpha_bar, max_beta=0.999): - """ - Create a beta schedule that discretizes the given alpha_t_bar function, - which defines the cumulative product of (1-beta) over time from t = [0,1]. - - :param num_diffusion_timesteps: the number of betas to produce. - :param alpha_bar: a lambda that takes an argument t from 0 to 1 and - produces the cumulative product of (1-beta) up to that - part of the diffusion process. - :param max_beta: the maximum beta to use; use values lower than 1 to - prevent singularities. - """ - betas = [] - for i in range(num_diffusion_timesteps): - t1 = i / num_diffusion_timesteps - t2 = (i + 1) / num_diffusion_timesteps - betas.append(min(1 - alpha_bar(t2) / alpha_bar(t1), max_beta)) - return np.array(betas) - - -class ModelMeanType(enum.Enum): - """ - Which type of output the model predicts. - """ - - PREVIOUS_X = "previous_x" # the model predicts x_{t-1} - START_X = "start_x" # the model predicts x_0 - EPSILON = "epsilon" # the model predicts epsilon - - -class ModelVarType(enum.Enum): - """ - What is used as the model's output variance. - - The LEARNED_RANGE option has been added to allow the model to predict - values between FIXED_SMALL and FIXED_LARGE, making its job easier. - """ - - LEARNED = "learned" - FIXED_SMALL = "fixed_small" - FIXED_LARGE = "fixed_large" - LEARNED_RANGE = "learned_range" - - -class LossType(enum.Enum): - MSE = "mse" # use raw MSE loss (and KL when learning variances) - RESCALED_MSE = "rescaled_mse" # use raw MSE loss (with RESCALED_KL when learning variances) - KL = "kl" # use the variational lower-bound - RESCALED_KL = "rescaled_kl" # like KL, but rescale to estimate the full VLB - - def is_vb(self): - return self == LossType.KL or self == LossType.RESCALED_KL - - -class GaussianDiffusion: - """ - Utilities for training and sampling diffusion models. - - Ported directly from here, and then adapted over time to further experimentation. - https://github.com/hojonathanho/diffusion/blob/1e0dceb3b3495bbe19116a5e1b3596cd0706c543/diffusion_tf/diffusion_utils_2.py#L42 - - :param betas: a 1-D numpy array of betas for each diffusion timestep, - starting at T and going to 1. - :param model_mean_type: a ModelMeanType determining what the model outputs. - :param model_var_type: a ModelVarType determining how variance is output. - :param loss_type: a LossType determining the loss function to use. - :param rescale_timesteps: if True, pass floating point timesteps into the - model so that they are always scaled like in the - original paper (0 to 1000). - """ - - def __init__( - self, - *, - betas, - model_mean_type, - model_var_type, - loss_type, - rescale_timesteps=False, - conditioning_free=False, - conditioning_free_k=1, - ramp_conditioning_free=True, - sampler="p", - ): - self.sampler = sampler - self.model_mean_type = ModelMeanType(model_mean_type) - self.model_var_type = ModelVarType(model_var_type) - self.loss_type = LossType(loss_type) - self.rescale_timesteps = rescale_timesteps - self.conditioning_free = conditioning_free - self.conditioning_free_k = conditioning_free_k - self.ramp_conditioning_free = ramp_conditioning_free - - # Use float64 for accuracy. - betas = np.array(betas, dtype=np.float64) - self.betas = betas - assert len(betas.shape) == 1, "betas must be 1-D" - assert (betas > 0).all() and (betas <= 1).all() - - self.num_timesteps = int(betas.shape[0]) - - alphas = 1.0 - betas - self.alphas_cumprod = np.cumprod(alphas, axis=0) - self.alphas_cumprod_prev = np.append(1.0, self.alphas_cumprod[:-1]) - self.alphas_cumprod_next = np.append(self.alphas_cumprod[1:], 0.0) - assert self.alphas_cumprod_prev.shape == (self.num_timesteps,) - - # calculations for diffusion q(x_t | x_{t-1}) and others - self.sqrt_alphas_cumprod = np.sqrt(self.alphas_cumprod) - self.sqrt_one_minus_alphas_cumprod = np.sqrt(1.0 - self.alphas_cumprod) - self.log_one_minus_alphas_cumprod = np.log(1.0 - self.alphas_cumprod) - self.sqrt_recip_alphas_cumprod = np.sqrt(1.0 / self.alphas_cumprod) - self.sqrt_recipm1_alphas_cumprod = np.sqrt(1.0 / self.alphas_cumprod - 1) - - # calculations for posterior q(x_{t-1} | x_t, x_0) - self.posterior_variance = betas * (1.0 - self.alphas_cumprod_prev) / (1.0 - self.alphas_cumprod) - # log calculation clipped because the posterior variance is 0 at the - # beginning of the diffusion chain. - self.posterior_log_variance_clipped = np.log(np.append(self.posterior_variance[1], self.posterior_variance[1:])) - self.posterior_mean_coef1 = betas * np.sqrt(self.alphas_cumprod_prev) / (1.0 - self.alphas_cumprod) - self.posterior_mean_coef2 = (1.0 - self.alphas_cumprod_prev) * np.sqrt(alphas) / (1.0 - self.alphas_cumprod) - - def q_mean_variance(self, x_start, t): - """ - Get the distribution q(x_t | x_0). - - :param x_start: the [N x C x ...] tensor of noiseless inputs. - :param t: the number of diffusion steps (minus 1). Here, 0 means one step. - :return: A tuple (mean, variance, log_variance), all of x_start's shape. - """ - mean = _extract_into_tensor(self.sqrt_alphas_cumprod, t, x_start.shape) * x_start - variance = _extract_into_tensor(1.0 - self.alphas_cumprod, t, x_start.shape) - log_variance = _extract_into_tensor(self.log_one_minus_alphas_cumprod, t, x_start.shape) - return mean, variance, log_variance - - def q_sample(self, x_start, t, noise=None): - """ - Diffuse the data for a given number of diffusion steps. - - In other words, sample from q(x_t | x_0). - - :param x_start: the initial data batch. - :param t: the number of diffusion steps (minus 1). Here, 0 means one step. - :param noise: if specified, the split-out normal noise. - :return: A noisy version of x_start. - """ - if noise is None: - noise = th.randn_like(x_start) - assert noise.shape == x_start.shape - return ( - _extract_into_tensor(self.sqrt_alphas_cumprod, t, x_start.shape) * x_start - + _extract_into_tensor(self.sqrt_one_minus_alphas_cumprod, t, x_start.shape) * noise - ) - - def q_posterior_mean_variance(self, x_start, x_t, t): - """ - Compute the mean and variance of the diffusion posterior: - - q(x_{t-1} | x_t, x_0) - - """ - assert x_start.shape == x_t.shape - posterior_mean = ( - _extract_into_tensor(self.posterior_mean_coef1, t, x_t.shape) * x_start - + _extract_into_tensor(self.posterior_mean_coef2, t, x_t.shape) * x_t - ) - posterior_variance = _extract_into_tensor(self.posterior_variance, t, x_t.shape) - posterior_log_variance_clipped = _extract_into_tensor(self.posterior_log_variance_clipped, t, x_t.shape) - assert ( - posterior_mean.shape[0] - == posterior_variance.shape[0] - == posterior_log_variance_clipped.shape[0] - == x_start.shape[0] - ) - return posterior_mean, posterior_variance, posterior_log_variance_clipped - - def p_mean_variance(self, model, x, t, clip_denoised=True, denoised_fn=None, model_kwargs=None): - """ - Apply the model to get p(x_{t-1} | x_t), as well as a prediction of - the initial x, x_0. - - :param model: the model, which takes a signal and a batch of timesteps - as input. - :param x: the [N x C x ...] tensor at time t. - :param t: a 1-D Tensor of timesteps. - :param clip_denoised: if True, clip the denoised signal into [-1, 1]. - :param denoised_fn: if not None, a function which applies to the - x_start prediction before it is used to sample. Applies before - clip_denoised. - :param model_kwargs: if not None, a dict of extra keyword arguments to - pass to the model. This can be used for conditioning. - :return: a dict with the following keys: - - 'mean': the model mean output. - - 'variance': the model variance output. - - 'log_variance': the log of 'variance'. - - 'pred_xstart': the prediction for x_0. - """ - if model_kwargs is None: - model_kwargs = {} - - B, C = x.shape[:2] - assert t.shape == (B,) - model_output = model(x, self._scale_timesteps(t), **model_kwargs) - if self.conditioning_free: - model_output_no_conditioning = model(x, self._scale_timesteps(t), conditioning_free=True, **model_kwargs) - - if self.model_var_type in [ModelVarType.LEARNED, ModelVarType.LEARNED_RANGE]: - assert model_output.shape == (B, C * 2, *x.shape[2:]) - model_output, model_var_values = th.split(model_output, C, dim=1) - if self.conditioning_free: - model_output_no_conditioning, _ = th.split(model_output_no_conditioning, C, dim=1) - if self.model_var_type == ModelVarType.LEARNED: - model_log_variance = model_var_values - model_variance = th.exp(model_log_variance) - else: - min_log = _extract_into_tensor(self.posterior_log_variance_clipped, t, x.shape) - max_log = _extract_into_tensor(np.log(self.betas), t, x.shape) - # The model_var_values is [-1, 1] for [min_var, max_var]. - frac = (model_var_values + 1) / 2 - model_log_variance = frac * max_log + (1 - frac) * min_log - model_variance = th.exp(model_log_variance) - else: - model_variance, model_log_variance = { - # for fixedlarge, we set the initial (log-)variance like so - # to get a better decoder log likelihood. - ModelVarType.FIXED_LARGE: ( - np.append(self.posterior_variance[1], self.betas[1:]), - np.log(np.append(self.posterior_variance[1], self.betas[1:])), - ), - ModelVarType.FIXED_SMALL: ( - self.posterior_variance, - self.posterior_log_variance_clipped, - ), - }[self.model_var_type] - model_variance = _extract_into_tensor(model_variance, t, x.shape) - model_log_variance = _extract_into_tensor(model_log_variance, t, x.shape) - - if self.conditioning_free: - if self.ramp_conditioning_free: - assert t.shape[0] == 1 # This should only be used in inference. - cfk = self.conditioning_free_k * (1 - self._scale_timesteps(t)[0].item() / self.num_timesteps) - else: - cfk = self.conditioning_free_k - model_output = (1 + cfk) * model_output - cfk * model_output_no_conditioning - - def process_xstart(x): - if denoised_fn is not None: - x = denoised_fn(x) - if clip_denoised: - return x.clamp(-1, 1) - return x - - if self.model_mean_type == ModelMeanType.PREVIOUS_X: - pred_xstart = process_xstart(self._predict_xstart_from_xprev(x_t=x, t=t, xprev=model_output)) - model_mean = model_output - elif self.model_mean_type in [ModelMeanType.START_X, ModelMeanType.EPSILON]: - if self.model_mean_type == ModelMeanType.START_X: - pred_xstart = process_xstart(model_output) - else: - pred_xstart = process_xstart(self._predict_xstart_from_eps(x_t=x, t=t, eps=model_output)) - model_mean, _, _ = self.q_posterior_mean_variance(x_start=pred_xstart, x_t=x, t=t) - else: - raise NotImplementedError(self.model_mean_type) - - assert model_mean.shape == model_log_variance.shape == pred_xstart.shape == x.shape - return { - "mean": model_mean, - "variance": model_variance, - "log_variance": model_log_variance, - "pred_xstart": pred_xstart, - } - - def _predict_xstart_from_eps(self, x_t, t, eps): - assert x_t.shape == eps.shape - return ( - _extract_into_tensor(self.sqrt_recip_alphas_cumprod, t, x_t.shape) * x_t - - _extract_into_tensor(self.sqrt_recipm1_alphas_cumprod, t, x_t.shape) * eps - ) - - def _predict_xstart_from_xprev(self, x_t, t, xprev): - assert x_t.shape == xprev.shape - return ( # (xprev - coef2*x_t) / coef1 - _extract_into_tensor(1.0 / self.posterior_mean_coef1, t, x_t.shape) * xprev - - _extract_into_tensor(self.posterior_mean_coef2 / self.posterior_mean_coef1, t, x_t.shape) * x_t - ) - - def _predict_eps_from_xstart(self, x_t, t, pred_xstart): - return ( - _extract_into_tensor(self.sqrt_recip_alphas_cumprod, t, x_t.shape) * x_t - pred_xstart - ) / _extract_into_tensor(self.sqrt_recipm1_alphas_cumprod, t, x_t.shape) - - def _scale_timesteps(self, t): - if self.rescale_timesteps: - return t.float() * (1000.0 / self.num_timesteps) - return t - - def condition_mean(self, cond_fn, p_mean_var, x, t, model_kwargs=None): - """ - Compute the mean for the previous step, given a function cond_fn that - computes the gradient of a conditional log probability with respect to - x. In particular, cond_fn computes grad(log(p(y|x))), and we want to - condition on y. - - This uses the conditioning strategy from Sohl-Dickstein et al. (2015). - """ - gradient = cond_fn(x, self._scale_timesteps(t), **model_kwargs) - new_mean = p_mean_var["mean"].float() + p_mean_var["variance"] * gradient.float() - return new_mean - - def condition_score(self, cond_fn, p_mean_var, x, t, model_kwargs=None): - """ - Compute what the p_mean_variance output would have been, should the - model's score function be conditioned by cond_fn. - - See condition_mean() for details on cond_fn. - - Unlike condition_mean(), this instead uses the conditioning strategy - from Song et al (2020). - """ - alpha_bar = _extract_into_tensor(self.alphas_cumprod, t, x.shape) - - eps = self._predict_eps_from_xstart(x, t, p_mean_var["pred_xstart"]) - eps = eps - (1 - alpha_bar).sqrt() * cond_fn(x, self._scale_timesteps(t), **model_kwargs) - - out = p_mean_var.copy() - out["pred_xstart"] = self._predict_xstart_from_eps(x, t, eps) - out["mean"], _, _ = self.q_posterior_mean_variance(x_start=out["pred_xstart"], x_t=x, t=t) - return out - - def k_diffusion_sample_loop( - self, - k_sampler, - pbar, - model, - shape, - noise=None, # all given - clip_denoised=True, - denoised_fn=None, - cond_fn=None, - device=None, # ALL UNUSED - model_kwargs=None, # {'precomputed_aligned_embeddings': precomputed_embeddings}, - progress=False, # unused as well - ): - assert isinstance(model_kwargs, dict) - if device is None: - device = next(model.parameters()).device - s_in = noise.new_ones([noise.shape[0]]) - - def model_split(*args, **kwargs): - model_output = model(*args, **kwargs) - model_epsilon, model_var = th.split(model_output, model_output.shape[1] // 2, dim=1) - return model_epsilon, model_var - - # - """ - print(self.betas) - print(th.tensor(self.betas)) - noise_schedule = NoiseScheduleVP(schedule='discrete', betas=th.tensor(self.betas)) - """ - noise_schedule = NoiseScheduleVP(schedule="linear", continuous_beta_0=0.1 / 4, continuous_beta_1=20.0 / 4) - - def model_fn_prewrap(x, t, *args, **kwargs): - """ - x_in = torch.cat([x] * 2) - t_in = torch.cat([t_continuous] * 2) - c_in = torch.cat([unconditional_condition, condition]) - noise_uncond, noise = noise_pred_fn(x_in, t_in, cond=c_in).chunk(2) - print(t) - print(self.timestep_map) - exit() - """ - """ - model_output = model(x, self._scale_timesteps(t*4000), **model_kwargs) - out = self.p_mean_variance(model, x, t*4000, model_kwargs=model_kwargs) - return out['pred_xstart'] - """ - x, _ = x.chunk(2) - t, _ = (t * 1000).chunk(2) - res = torch.cat( - [ - model_split(x, t, conditioning_free=True, **model_kwargs)[0], - model_split(x, t, **model_kwargs)[0], - ] - ) - pbar.update(1) - return res - - model_fn = model_wrapper( - model_fn_prewrap, - noise_schedule, - model_type="noise", # "noise" or "x_start" or "v" or "score" - model_kwargs=model_kwargs, - guidance_type="classifier-free", - condition=th.Tensor(1), - unconditional_condition=th.Tensor(1), - guidance_scale=self.conditioning_free_k, - ) - dpm_solver = DPM_Solver(model_fn, noise_schedule, algorithm_type="dpmsolver++") - x_sample = dpm_solver.sample( - noise, - steps=self.num_timesteps, - order=2, - skip_type="time_uniform", - method="multistep", - ) - #''' - return x_sample - - def sample_loop(self, *args, **kwargs): - s = self.sampler - if s == "p": - return self.p_sample_loop(*args, **kwargs) - elif s == "ddim": - return self.ddim_sample_loop(*args, **kwargs) - elif s == "dpm++2m": - if self.conditioning_free is not True: - raise RuntimeError("cond_free must be true") - with tqdm(total=self.num_timesteps) as pbar: - return self.k_diffusion_sample_loop(K_DIFFUSION_SAMPLERS[s], pbar, *args, **kwargs) - else: - raise RuntimeError("sampler not impl") - - def p_sample( - self, - model, - x, - t, - clip_denoised=True, - denoised_fn=None, - cond_fn=None, - model_kwargs=None, - ): - """ - Sample x_{t-1} from the model at the given timestep. - - :param model: the model to sample from. - :param x: the current tensor at x_{t-1}. - :param t: the value of t, starting at 0 for the first diffusion step. - :param clip_denoised: if True, clip the x_start prediction to [-1, 1]. - :param denoised_fn: if not None, a function which applies to the - x_start prediction before it is used to sample. - :param cond_fn: if not None, this is a gradient function that acts - similarly to the model. - :param model_kwargs: if not None, a dict of extra keyword arguments to - pass to the model. This can be used for conditioning. - :return: a dict containing the following keys: - - 'sample': a random sample from the model. - - 'pred_xstart': a prediction of x_0. - """ - out = self.p_mean_variance( - model, - x, - t, - clip_denoised=clip_denoised, - denoised_fn=denoised_fn, - model_kwargs=model_kwargs, - ) - noise = th.randn_like(x) - nonzero_mask = (t != 0).float().view(-1, *([1] * (len(x.shape) - 1))) # no noise when t == 0 - if cond_fn is not None: - out["mean"] = self.condition_mean(cond_fn, out, x, t, model_kwargs=model_kwargs) - sample = out["mean"] + nonzero_mask * th.exp(0.5 * out["log_variance"]) * noise - return {"sample": sample, "pred_xstart": out["pred_xstart"]} - - def p_sample_loop( - self, - model, - shape, - noise=None, - clip_denoised=True, - denoised_fn=None, - cond_fn=None, - model_kwargs=None, - device=None, - progress=False, - ): - """ - Generate samples from the model. - - :param model: the model module. - :param shape: the shape of the samples, (N, C, H, W). - :param noise: if specified, the noise from the encoder to sample. - Should be of the same shape as `shape`. - :param clip_denoised: if True, clip x_start predictions to [-1, 1]. - :param denoised_fn: if not None, a function which applies to the - x_start prediction before it is used to sample. - :param cond_fn: if not None, this is a gradient function that acts - similarly to the model. - :param model_kwargs: if not None, a dict of extra keyword arguments to - pass to the model. This can be used for conditioning. - :param device: if specified, the device to create the samples on. - If not specified, use a model parameter's device. - :param progress: if True, show a tqdm progress bar. - :return: a non-differentiable batch of samples. - """ - final = None - for sample in self.p_sample_loop_progressive( - model, - shape, - noise=noise, - clip_denoised=clip_denoised, - denoised_fn=denoised_fn, - cond_fn=cond_fn, - model_kwargs=model_kwargs, - device=device, - progress=progress, - ): - final = sample - return final["sample"] - - def p_sample_loop_progressive( - self, - model, - shape, - noise=None, - clip_denoised=True, - denoised_fn=None, - cond_fn=None, - model_kwargs=None, - device=None, - progress=False, - ): - """ - Generate samples from the model and yield intermediate samples from - each timestep of diffusion. - - Arguments are the same as p_sample_loop(). - Returns a generator over dicts, where each dict is the return value of - p_sample(). - """ - if device is None: - device = next(model.parameters()).device - assert isinstance(shape, (tuple, list)) - if noise is not None: - img = noise - else: - img = th.randn(*shape, device=device) - indices = list(range(self.num_timesteps))[::-1] - - for i in tqdm(indices, disable=not progress): - t = th.tensor([i] * shape[0], device=device) - with th.no_grad(): - out = self.p_sample( - model, - img, - t, - clip_denoised=clip_denoised, - denoised_fn=denoised_fn, - cond_fn=cond_fn, - model_kwargs=model_kwargs, - ) - yield out - img = out["sample"] - - def ddim_sample( - self, - model, - x, - t, - clip_denoised=True, - denoised_fn=None, - cond_fn=None, - model_kwargs=None, - eta=0.0, - ): - """ - Sample x_{t-1} from the model using DDIM. - - Same usage as p_sample(). - """ - out = self.p_mean_variance( - model, - x, - t, - clip_denoised=clip_denoised, - denoised_fn=denoised_fn, - model_kwargs=model_kwargs, - ) - if cond_fn is not None: - out = self.condition_score(cond_fn, out, x, t, model_kwargs=model_kwargs) - - # Usually our model outputs epsilon, but we re-derive it - # in case we used x_start or x_prev prediction. - eps = self._predict_eps_from_xstart(x, t, out["pred_xstart"]) - - alpha_bar = _extract_into_tensor(self.alphas_cumprod, t, x.shape) - alpha_bar_prev = _extract_into_tensor(self.alphas_cumprod_prev, t, x.shape) - sigma = eta * th.sqrt((1 - alpha_bar_prev) / (1 - alpha_bar)) * th.sqrt(1 - alpha_bar / alpha_bar_prev) - # Equation 12. - noise = th.randn_like(x) - mean_pred = out["pred_xstart"] * th.sqrt(alpha_bar_prev) + th.sqrt(1 - alpha_bar_prev - sigma**2) * eps - nonzero_mask = (t != 0).float().view(-1, *([1] * (len(x.shape) - 1))) # no noise when t == 0 - sample = mean_pred + nonzero_mask * sigma * noise - return {"sample": sample, "pred_xstart": out["pred_xstart"]} - - def ddim_reverse_sample( - self, - model, - x, - t, - clip_denoised=True, - denoised_fn=None, - model_kwargs=None, - eta=0.0, - ): - """ - Sample x_{t+1} from the model using DDIM reverse ODE. - """ - assert eta == 0.0, "Reverse ODE only for deterministic path" - out = self.p_mean_variance( - model, - x, - t, - clip_denoised=clip_denoised, - denoised_fn=denoised_fn, - model_kwargs=model_kwargs, - ) - # Usually our model outputs epsilon, but we re-derive it - # in case we used x_start or x_prev prediction. - eps = ( - _extract_into_tensor(self.sqrt_recip_alphas_cumprod, t, x.shape) * x - out["pred_xstart"] - ) / _extract_into_tensor(self.sqrt_recipm1_alphas_cumprod, t, x.shape) - alpha_bar_next = _extract_into_tensor(self.alphas_cumprod_next, t, x.shape) - - # Equation 12. reversed - mean_pred = out["pred_xstart"] * th.sqrt(alpha_bar_next) + th.sqrt(1 - alpha_bar_next) * eps - - return {"sample": mean_pred, "pred_xstart": out["pred_xstart"]} - - def ddim_sample_loop( - self, - model, - shape, - noise=None, - clip_denoised=True, - denoised_fn=None, - cond_fn=None, - model_kwargs=None, - device=None, - progress=False, - eta=0.0, - ): - """ - Generate samples from the model using DDIM. - - Same usage as p_sample_loop(). - """ - final = None - for sample in self.ddim_sample_loop_progressive( - model, - shape, - noise=noise, - clip_denoised=clip_denoised, - denoised_fn=denoised_fn, - cond_fn=cond_fn, - model_kwargs=model_kwargs, - device=device, - progress=progress, - eta=eta, - ): - final = sample - return final["sample"] - - def ddim_sample_loop_progressive( - self, - model, - shape, - noise=None, - clip_denoised=True, - denoised_fn=None, - cond_fn=None, - model_kwargs=None, - device=None, - progress=False, - eta=0.0, - ): - """ - Use DDIM to sample from the model and yield intermediate samples from - each timestep of DDIM. - - Same usage as p_sample_loop_progressive(). - """ - if device is None: - device = next(model.parameters()).device - assert isinstance(shape, (tuple, list)) - if noise is not None: - img = noise - else: - img = th.randn(*shape, device=device) - indices = list(range(self.num_timesteps))[::-1] - - if progress: - # Lazy import so that we don't depend on tqdm. - from tqdm.auto import tqdm - - indices = tqdm(indices, disable=not progress) - - for i in indices: - t = th.tensor([i] * shape[0], device=device) - with th.no_grad(): - out = self.ddim_sample( - model, - img, - t, - clip_denoised=clip_denoised, - denoised_fn=denoised_fn, - cond_fn=cond_fn, - model_kwargs=model_kwargs, - eta=eta, - ) - yield out - img = out["sample"] - - def _vb_terms_bpd(self, model, x_start, x_t, t, clip_denoised=True, model_kwargs=None): - """ - Get a term for the variational lower-bound. - - The resulting units are bits (rather than nats, as one might expect). - This allows for comparison to other papers. - - :return: a dict with the following keys: - - 'output': a shape [N] tensor of NLLs or KLs. - - 'pred_xstart': the x_0 predictions. - """ - true_mean, _, true_log_variance_clipped = self.q_posterior_mean_variance(x_start=x_start, x_t=x_t, t=t) - out = self.p_mean_variance(model, x_t, t, clip_denoised=clip_denoised, model_kwargs=model_kwargs) - kl = normal_kl(true_mean, true_log_variance_clipped, out["mean"], out["log_variance"]) - kl = mean_flat(kl) / np.log(2.0) - - decoder_nll = -discretized_gaussian_log_likelihood( - x_start, means=out["mean"], log_scales=0.5 * out["log_variance"] - ) - assert decoder_nll.shape == x_start.shape - decoder_nll = mean_flat(decoder_nll) / np.log(2.0) - - # At the first timestep return the decoder NLL, - # otherwise return KL(q(x_{t-1}|x_t,x_0) || p(x_{t-1}|x_t)) - output = th.where((t == 0), decoder_nll, kl) - return {"output": output, "pred_xstart": out["pred_xstart"]} - - def training_losses(self, model, x_start, t, model_kwargs=None, noise=None): - """ - Compute training losses for a single timestep. - - :param model: the model to evaluate loss on. - :param x_start: the [N x C x ...] tensor of inputs. - :param t: a batch of timestep indices. - :param model_kwargs: if not None, a dict of extra keyword arguments to - pass to the model. This can be used for conditioning. - :param noise: if specified, the specific Gaussian noise to try to remove. - :return: a dict with the key "loss" containing a tensor of shape [N]. - Some mean or variance settings may also have other keys. - """ - if model_kwargs is None: - model_kwargs = {} - if noise is None: - noise = th.randn_like(x_start) - x_t = self.q_sample(x_start, t, noise=noise) - - terms = {} - - if self.loss_type == LossType.KL or self.loss_type == LossType.RESCALED_KL: - # TODO: support multiple model outputs for this mode. - terms["loss"] = self._vb_terms_bpd( - model=model, - x_start=x_start, - x_t=x_t, - t=t, - clip_denoised=False, - model_kwargs=model_kwargs, - )["output"] - if self.loss_type == LossType.RESCALED_KL: - terms["loss"] *= self.num_timesteps - elif self.loss_type == LossType.MSE or self.loss_type == LossType.RESCALED_MSE: - model_outputs = model(x_t, self._scale_timesteps(t), **model_kwargs) - if isinstance(model_outputs, tuple): - model_output = model_outputs[0] - terms["extra_outputs"] = model_outputs[1:] - else: - model_output = model_outputs - - if self.model_var_type in [ - ModelVarType.LEARNED, - ModelVarType.LEARNED_RANGE, - ]: - B, C = x_t.shape[:2] - assert model_output.shape == (B, C * 2, *x_t.shape[2:]) - model_output, model_var_values = th.split(model_output, C, dim=1) - # Learn the variance using the variational bound, but don't let - # it affect our mean prediction. - frozen_out = th.cat([model_output.detach(), model_var_values], dim=1) - terms["vb"] = self._vb_terms_bpd( - model=lambda *args, r=frozen_out: r, - x_start=x_start, - x_t=x_t, - t=t, - clip_denoised=False, - )["output"] - if self.loss_type == LossType.RESCALED_MSE: - # Divide by 1000 for equivalence with initial implementation. - # Without a factor of 1/1000, the VB term hurts the MSE term. - terms["vb"] *= self.num_timesteps / 1000.0 - - if self.model_mean_type == ModelMeanType.PREVIOUS_X: - target = self.q_posterior_mean_variance(x_start=x_start, x_t=x_t, t=t)[0] - x_start_pred = torch.zeros(x_start) # Not supported. - elif self.model_mean_type == ModelMeanType.START_X: - target = x_start - x_start_pred = model_output - elif self.model_mean_type == ModelMeanType.EPSILON: - target = noise - x_start_pred = self._predict_xstart_from_eps(x_t, t, model_output) - else: - raise NotImplementedError(self.model_mean_type) - assert model_output.shape == target.shape == x_start.shape - terms["mse"] = mean_flat((target - model_output) ** 2) - terms["x_start_predicted"] = x_start_pred - if "vb" in terms: - terms["loss"] = terms["mse"] + terms["vb"] - else: - terms["loss"] = terms["mse"] - else: - raise NotImplementedError(self.loss_type) - - return terms - - def autoregressive_training_losses( - self, model, x_start, t, model_output_keys, gd_out_key, model_kwargs=None, noise=None - ): - """ - Compute training losses for a single timestep. - - :param model: the model to evaluate loss on. - :param x_start: the [N x C x ...] tensor of inputs. - :param t: a batch of timestep indices. - :param model_kwargs: if not None, a dict of extra keyword arguments to - pass to the model. This can be used for conditioning. - :param noise: if specified, the specific Gaussian noise to try to remove. - :return: a dict with the key "loss" containing a tensor of shape [N]. - Some mean or variance settings may also have other keys. - """ - if model_kwargs is None: - model_kwargs = {} - if noise is None: - noise = th.randn_like(x_start) - x_t = self.q_sample(x_start, t, noise=noise) - terms = {} - if self.loss_type == LossType.KL or self.loss_type == LossType.RESCALED_KL: - assert False # not currently supported for this type of diffusion. - elif self.loss_type == LossType.MSE or self.loss_type == LossType.RESCALED_MSE: - model_outputs = model(x_t, x_start, self._scale_timesteps(t), **model_kwargs) - terms.update({k: o for k, o in zip(model_output_keys, model_outputs)}) - model_output = terms[gd_out_key] - if self.model_var_type in [ - ModelVarType.LEARNED, - ModelVarType.LEARNED_RANGE, - ]: - B, C = x_t.shape[:2] - assert model_output.shape == (B, C, 2, *x_t.shape[2:]) - model_output, model_var_values = model_output[:, :, 0], model_output[:, :, 1] - # Learn the variance using the variational bound, but don't let - # it affect our mean prediction. - frozen_out = th.cat([model_output.detach(), model_var_values], dim=1) - terms["vb"] = self._vb_terms_bpd( - model=lambda *args, r=frozen_out: r, - x_start=x_start, - x_t=x_t, - t=t, - clip_denoised=False, - )["output"] - if self.loss_type == LossType.RESCALED_MSE: - # Divide by 1000 for equivalence with initial implementation. - # Without a factor of 1/1000, the VB term hurts the MSE term. - terms["vb"] *= self.num_timesteps / 1000.0 - - if self.model_mean_type == ModelMeanType.PREVIOUS_X: - target = self.q_posterior_mean_variance(x_start=x_start, x_t=x_t, t=t)[0] - x_start_pred = torch.zeros(x_start) # Not supported. - elif self.model_mean_type == ModelMeanType.START_X: - target = x_start - x_start_pred = model_output - elif self.model_mean_type == ModelMeanType.EPSILON: - target = noise - x_start_pred = self._predict_xstart_from_eps(x_t, t, model_output) - else: - raise NotImplementedError(self.model_mean_type) - assert model_output.shape == target.shape == x_start.shape - terms["mse"] = mean_flat((target - model_output) ** 2) - terms["x_start_predicted"] = x_start_pred - if "vb" in terms: - terms["loss"] = terms["mse"] + terms["vb"] - else: - terms["loss"] = terms["mse"] - else: - raise NotImplementedError(self.loss_type) - - return terms - - def _prior_bpd(self, x_start): - """ - Get the prior KL term for the variational lower-bound, measured in - bits-per-dim. - - This term can't be optimized, as it only depends on the encoder. - - :param x_start: the [N x C x ...] tensor of inputs. - :return: a batch of [N] KL values (in bits), one per batch element. - """ - batch_size = x_start.shape[0] - t = th.tensor([self.num_timesteps - 1] * batch_size, device=x_start.device) - qt_mean, _, qt_log_variance = self.q_mean_variance(x_start, t) - kl_prior = normal_kl(mean1=qt_mean, logvar1=qt_log_variance, mean2=0.0, logvar2=0.0) - return mean_flat(kl_prior) / np.log(2.0) - - def calc_bpd_loop(self, model, x_start, clip_denoised=True, model_kwargs=None): - """ - Compute the entire variational lower-bound, measured in bits-per-dim, - as well as other related quantities. - - :param model: the model to evaluate loss on. - :param x_start: the [N x C x ...] tensor of inputs. - :param clip_denoised: if True, clip denoised samples. - :param model_kwargs: if not None, a dict of extra keyword arguments to - pass to the model. This can be used for conditioning. - - :return: a dict containing the following keys: - - total_bpd: the total variational lower-bound, per batch element. - - prior_bpd: the prior term in the lower-bound. - - vb: an [N x T] tensor of terms in the lower-bound. - - xstart_mse: an [N x T] tensor of x_0 MSEs for each timestep. - - mse: an [N x T] tensor of epsilon MSEs for each timestep. - """ - device = x_start.device - batch_size = x_start.shape[0] - - vb = [] - xstart_mse = [] - mse = [] - for t in list(range(self.num_timesteps))[::-1]: - t_batch = th.tensor([t] * batch_size, device=device) - noise = th.randn_like(x_start) - x_t = self.q_sample(x_start=x_start, t=t_batch, noise=noise) - # Calculate VLB term at the current timestep - with th.no_grad(): - out = self._vb_terms_bpd( - model, - x_start=x_start, - x_t=x_t, - t=t_batch, - clip_denoised=clip_denoised, - model_kwargs=model_kwargs, - ) - vb.append(out["output"]) - xstart_mse.append(mean_flat((out["pred_xstart"] - x_start) ** 2)) - eps = self._predict_eps_from_xstart(x_t, t_batch, out["pred_xstart"]) - mse.append(mean_flat((eps - noise) ** 2)) - - vb = th.stack(vb, dim=1) - xstart_mse = th.stack(xstart_mse, dim=1) - mse = th.stack(mse, dim=1) - - prior_bpd = self._prior_bpd(x_start) - total_bpd = vb.sum(dim=1) + prior_bpd - return { - "total_bpd": total_bpd, - "prior_bpd": prior_bpd, - "vb": vb, - "xstart_mse": xstart_mse, - "mse": mse, - } - - -def get_named_beta_schedule(schedule_name, num_diffusion_timesteps): - """ - Get a pre-defined beta schedule for the given name. - - The beta schedule library consists of beta schedules which remain similar - in the limit of num_diffusion_timesteps. - Beta schedules may be added, but should not be removed or changed once - they are committed to maintain backwards compatibility. - """ - if schedule_name == "linear": - # Linear schedule from Ho et al, extended to work for any number of - # diffusion steps. - scale = 1000 / num_diffusion_timesteps - beta_start = scale * 0.0001 - beta_end = scale * 0.02 - return np.linspace(beta_start, beta_end, num_diffusion_timesteps, dtype=np.float64) - elif schedule_name == "cosine": - return betas_for_alpha_bar( - num_diffusion_timesteps, - lambda t: math.cos((t + 0.008) / 1.008 * math.pi / 2) ** 2, - ) - else: - raise NotImplementedError(f"unknown beta schedule: {schedule_name}") - - -class SpacedDiffusion(GaussianDiffusion): - """ - A diffusion process which can skip steps in a base diffusion process. - - :param use_timesteps: a collection (sequence or set) of timesteps from the - original diffusion process to retain. - :param kwargs: the kwargs to create the base diffusion process. - """ - - def __init__(self, use_timesteps, **kwargs): - self.use_timesteps = set(use_timesteps) - self.timestep_map = [] - self.original_num_steps = len(kwargs["betas"]) - base_diffusion = GaussianDiffusion(**kwargs) # pylint: disable=missing-kwoa - last_alpha_cumprod = 1.0 - new_betas = [] - for i, alpha_cumprod in enumerate(base_diffusion.alphas_cumprod): - if i in self.use_timesteps: - new_betas.append(1 - alpha_cumprod / last_alpha_cumprod) - last_alpha_cumprod = alpha_cumprod - self.timestep_map.append(i) - kwargs["betas"] = np.array(new_betas) - super().__init__(**kwargs) - - def p_mean_variance(self, model, *args, **kwargs): # pylint: disable=signature-differs - return super().p_mean_variance(self._wrap_model(model), *args, **kwargs) - - def training_losses(self, model, *args, **kwargs): # pylint: disable=signature-differs - return super().training_losses(self._wrap_model(model), *args, **kwargs) - - def autoregressive_training_losses(self, model, *args, **kwargs): # pylint: disable=signature-differs - return super().autoregressive_training_losses(self._wrap_model(model, True), *args, **kwargs) - - def condition_mean(self, cond_fn, *args, **kwargs): - return super().condition_mean(self._wrap_model(cond_fn), *args, **kwargs) - - def condition_score(self, cond_fn, *args, **kwargs): - return super().condition_score(self._wrap_model(cond_fn), *args, **kwargs) - - def _wrap_model(self, model, autoregressive=False): - if isinstance(model, _WrappedModel) or isinstance(model, _WrappedAutoregressiveModel): - return model - mod = _WrappedAutoregressiveModel if autoregressive else _WrappedModel - return mod(model, self.timestep_map, self.rescale_timesteps, self.original_num_steps) - - def _scale_timesteps(self, t): - # Scaling is done by the wrapped model. - return t - - -def space_timesteps(num_timesteps, section_counts): - """ - Create a list of timesteps to use from an original diffusion process, - given the number of timesteps we want to take from equally-sized portions - of the original process. - - For example, if there's 300 timesteps and the section counts are [10,15,20] - then the first 100 timesteps are strided to be 10 timesteps, the second 100 - are strided to be 15 timesteps, and the final 100 are strided to be 20. - - If the stride is a string starting with "ddim", then the fixed striding - from the DDIM paper is used, and only one section is allowed. - - :param num_timesteps: the number of diffusion steps in the original - process to divide up. - :param section_counts: either a list of numbers, or a string containing - comma-separated numbers, indicating the step count - per section. As a special case, use "ddimN" where N - is a number of steps to use the striding from the - DDIM paper. - :return: a set of diffusion steps from the original process to use. - """ - if isinstance(section_counts, str): - if section_counts.startswith("ddim"): - desired_count = int(section_counts[len("ddim") :]) - for i in range(1, num_timesteps): - if len(range(0, num_timesteps, i)) == desired_count: - return set(range(0, num_timesteps, i)) - raise ValueError(f"cannot create exactly {num_timesteps} steps with an integer stride") - section_counts = [int(x) for x in section_counts.split(",")] - size_per = num_timesteps // len(section_counts) - extra = num_timesteps % len(section_counts) - start_idx = 0 - all_steps = [] - for i, section_count in enumerate(section_counts): - size = size_per + (1 if i < extra else 0) - if size < section_count: - raise ValueError(f"cannot divide section of {size} steps into {section_count}") - if section_count <= 1: - frac_stride = 1 - else: - frac_stride = (size - 1) / (section_count - 1) - cur_idx = 0.0 - taken_steps = [] - for _ in range(section_count): - taken_steps.append(start_idx + round(cur_idx)) - cur_idx += frac_stride - all_steps += taken_steps - start_idx += size - return set(all_steps) - - -class _WrappedModel: - def __init__(self, model, timestep_map, rescale_timesteps, original_num_steps): - self.model = model - self.timestep_map = timestep_map - self.rescale_timesteps = rescale_timesteps - self.original_num_steps = original_num_steps - - def __call__(self, x, ts, **kwargs): - map_tensor = th.tensor(self.timestep_map, device=ts.device, dtype=ts.dtype) - new_ts = map_tensor[ts] - if self.rescale_timesteps: - new_ts = new_ts.float() * (1000.0 / self.original_num_steps) - model_output = self.model(x, new_ts, **kwargs) - return model_output - - -class _WrappedAutoregressiveModel: - def __init__(self, model, timestep_map, rescale_timesteps, original_num_steps): - self.model = model - self.timestep_map = timestep_map - self.rescale_timesteps = rescale_timesteps - self.original_num_steps = original_num_steps - - def __call__(self, x, x0, ts, **kwargs): - map_tensor = th.tensor(self.timestep_map, device=ts.device, dtype=ts.dtype) - new_ts = map_tensor[ts] - if self.rescale_timesteps: - new_ts = new_ts.float() * (1000.0 / self.original_num_steps) - return self.model(x, x0, new_ts, **kwargs) - - -def _extract_into_tensor(arr, timesteps, broadcast_shape): - """ - Extract values from a 1-D numpy array for a batch of indices. - - :param arr: the 1-D numpy array. - :param timesteps: a tensor of indices into the array to extract. - :param broadcast_shape: a larger shape of K dimensions with the batch - dimension equal to the length of timesteps. - :return: a tensor of shape [batch_size, 1, ...] where the shape has K dims. - """ - res = th.from_numpy(arr).to(device=timesteps.device)[timesteps].float() - while len(res.shape) < len(broadcast_shape): - res = res[..., None] - return res.expand(broadcast_shape) diff --git a/TTS/tts/layers/tortoise/diffusion_decoder.py b/TTS/tts/layers/tortoise/diffusion_decoder.py deleted file mode 100644 index 0d3cf7698a7334b4cfc8d9bdd0f5f6ee3059189d..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/diffusion_decoder.py +++ /dev/null @@ -1,415 +0,0 @@ -import math -import random -from abc import abstractmethod - -import torch -import torch.nn as nn -import torch.nn.functional as F -from torch import autocast - -from TTS.tts.layers.tortoise.arch_utils import AttentionBlock, normalization - - -def is_latent(t): - return t.dtype == torch.float - - -def is_sequence(t): - return t.dtype == torch.long - - -def timestep_embedding(timesteps, dim, max_period=10000): - """ - Create sinusoidal timestep embeddings. - - :param timesteps: a 1-D Tensor of N indices, one per batch element. - These may be fractional. - :param dim: the dimension of the output. - :param max_period: controls the minimum frequency of the embeddings. - :return: an [N x dim] Tensor of positional embeddings. - """ - half = dim // 2 - freqs = torch.exp(-math.log(max_period) * torch.arange(start=0, end=half, dtype=torch.float32) / half).to( - device=timesteps.device - ) - args = timesteps[:, None].float() * freqs[None] - embedding = torch.cat([torch.cos(args), torch.sin(args)], dim=-1) - if dim % 2: - embedding = torch.cat([embedding, torch.zeros_like(embedding[:, :1])], dim=-1) - return embedding - - -class TimestepBlock(nn.Module): - @abstractmethod - def forward(self, x, emb): - """ - Apply the module to `x` given `emb` timestep embeddings. - """ - - -class TimestepEmbedSequential(nn.Sequential, TimestepBlock): - def forward(self, x, emb): - for layer in self: - if isinstance(layer, TimestepBlock): - x = layer(x, emb) - else: - x = layer(x) - return x - - -class ResBlock(TimestepBlock): - def __init__( - self, - channels, - emb_channels, - dropout, - out_channels=None, - dims=2, - kernel_size=3, - efficient_config=True, - use_scale_shift_norm=False, - ): - super().__init__() - self.channels = channels - self.emb_channels = emb_channels - self.dropout = dropout - self.out_channels = out_channels or channels - self.use_scale_shift_norm = use_scale_shift_norm - padding = {1: 0, 3: 1, 5: 2}[kernel_size] - eff_kernel = 1 if efficient_config else 3 - eff_padding = 0 if efficient_config else 1 - - self.in_layers = nn.Sequential( - normalization(channels), - nn.SiLU(), - nn.Conv1d(channels, self.out_channels, eff_kernel, padding=eff_padding), - ) - - self.emb_layers = nn.Sequential( - nn.SiLU(), - nn.Linear( - emb_channels, - 2 * self.out_channels if use_scale_shift_norm else self.out_channels, - ), - ) - self.out_layers = nn.Sequential( - normalization(self.out_channels), - nn.SiLU(), - nn.Dropout(p=dropout), - nn.Conv1d(self.out_channels, self.out_channels, kernel_size, padding=padding), - ) - - if self.out_channels == channels: - self.skip_connection = nn.Identity() - else: - self.skip_connection = nn.Conv1d(channels, self.out_channels, eff_kernel, padding=eff_padding) - - def forward(self, x, emb): - h = self.in_layers(x) - emb_out = self.emb_layers(emb).type(h.dtype) - while len(emb_out.shape) < len(h.shape): - emb_out = emb_out[..., None] - if self.use_scale_shift_norm: - out_norm, out_rest = self.out_layers[0], self.out_layers[1:] - scale, shift = torch.chunk(emb_out, 2, dim=1) - h = out_norm(h) * (1 + scale) + shift - h = out_rest(h) - else: - h = h + emb_out - h = self.out_layers(h) - return self.skip_connection(x) + h - - -class DiffusionLayer(TimestepBlock): - def __init__(self, model_channels, dropout, num_heads): - super().__init__() - self.resblk = ResBlock( - model_channels, - model_channels, - dropout, - model_channels, - dims=1, - use_scale_shift_norm=True, - ) - self.attn = AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True) - - def forward(self, x, time_emb): - y = self.resblk(x, time_emb) - return self.attn(y) - - -class DiffusionTts(nn.Module): - def __init__( - self, - model_channels=512, - num_layers=8, - in_channels=100, - in_latent_channels=512, - in_tokens=8193, - out_channels=200, # mean and variance - dropout=0, - use_fp16=False, - num_heads=16, - # Parameters for regularization. - layer_drop=0.1, - unconditioned_percentage=0.1, # This implements a mechanism similar to what is used in classifier-free training. - ): - super().__init__() - - self.in_channels = in_channels - self.model_channels = model_channels - self.out_channels = out_channels - self.dropout = dropout - self.num_heads = num_heads - self.unconditioned_percentage = unconditioned_percentage - self.enable_fp16 = use_fp16 - self.layer_drop = layer_drop - - self.inp_block = nn.Conv1d(in_channels, model_channels, 3, 1, 1) - self.time_embed = nn.Sequential( - nn.Linear(model_channels, model_channels), - nn.SiLU(), - nn.Linear(model_channels, model_channels), - ) - - # Either code_converter or latent_converter is used, depending on what type of conditioning data is fed. - # This model is meant to be able to be trained on both for efficiency purposes - it is far less computationally - # complex to generate tokens, while generating latents will normally mean propagating through a deep autoregressive - # transformer network. - self.code_embedding = nn.Embedding(in_tokens, model_channels) - self.code_converter = nn.Sequential( - AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True), - AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True), - AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True), - ) - self.code_norm = normalization(model_channels) - self.latent_conditioner = nn.Sequential( - nn.Conv1d(in_latent_channels, model_channels, 3, padding=1), - AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True), - AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True), - AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True), - AttentionBlock(model_channels, num_heads, relative_pos_embeddings=True), - ) - self.contextual_embedder = nn.Sequential( - nn.Conv1d(in_channels, model_channels, 3, padding=1, stride=2), - nn.Conv1d(model_channels, model_channels * 2, 3, padding=1, stride=2), - AttentionBlock( - model_channels * 2, - num_heads, - relative_pos_embeddings=True, - do_checkpoint=False, - ), - AttentionBlock( - model_channels * 2, - num_heads, - relative_pos_embeddings=True, - do_checkpoint=False, - ), - AttentionBlock( - model_channels * 2, - num_heads, - relative_pos_embeddings=True, - do_checkpoint=False, - ), - AttentionBlock( - model_channels * 2, - num_heads, - relative_pos_embeddings=True, - do_checkpoint=False, - ), - AttentionBlock( - model_channels * 2, - num_heads, - relative_pos_embeddings=True, - do_checkpoint=False, - ), - ) - self.unconditioned_embedding = nn.Parameter(torch.randn(1, model_channels, 1)) - self.conditioning_timestep_integrator = TimestepEmbedSequential( - DiffusionLayer(model_channels, dropout, num_heads), - DiffusionLayer(model_channels, dropout, num_heads), - DiffusionLayer(model_channels, dropout, num_heads), - ) - - self.integrating_conv = nn.Conv1d(model_channels * 2, model_channels, kernel_size=1) - self.mel_head = nn.Conv1d(model_channels, in_channels, kernel_size=3, padding=1) - - self.layers = nn.ModuleList( - [DiffusionLayer(model_channels, dropout, num_heads) for _ in range(num_layers)] - + [ - ResBlock( - model_channels, - model_channels, - dropout, - dims=1, - use_scale_shift_norm=True, - ) - for _ in range(3) - ] - ) - - self.out = nn.Sequential( - normalization(model_channels), - nn.SiLU(), - nn.Conv1d(model_channels, out_channels, 3, padding=1), - ) - - def get_grad_norm_parameter_groups(self): - groups = { - "minicoder": list(self.contextual_embedder.parameters()), - "layers": list(self.layers.parameters()), - "code_converters": list(self.code_embedding.parameters()) - + list(self.code_converter.parameters()) - + list(self.latent_conditioner.parameters()) - + list(self.latent_conditioner.parameters()), - "timestep_integrator": list(self.conditioning_timestep_integrator.parameters()) - + list(self.integrating_conv.parameters()), - "time_embed": list(self.time_embed.parameters()), - } - return groups - - def get_conditioning(self, conditioning_input): - speech_conditioning_input = ( - conditioning_input.unsqueeze(1) if len(conditioning_input.shape) == 3 else conditioning_input - ) - conds = [] - for j in range(speech_conditioning_input.shape[1]): - conds.append(self.contextual_embedder(speech_conditioning_input[:, j])) - conds = torch.cat(conds, dim=-1) - conds = conds.mean(dim=-1) - return conds - - def timestep_independent( - self, - aligned_conditioning, - conditioning_latent, - expected_seq_len, - return_code_pred, - ): - # Shuffle aligned_latent to BxCxS format - if is_latent(aligned_conditioning): - aligned_conditioning = aligned_conditioning.permute(0, 2, 1) - - cond_scale, cond_shift = torch.chunk(conditioning_latent, 2, dim=1) - if is_latent(aligned_conditioning): - code_emb = self.latent_conditioner(aligned_conditioning) - else: - code_emb = self.code_embedding(aligned_conditioning).permute(0, 2, 1) - code_emb = self.code_converter(code_emb) - code_emb = self.code_norm(code_emb) * (1 + cond_scale.unsqueeze(-1)) + cond_shift.unsqueeze(-1) - - unconditioned_batches = torch.zeros((code_emb.shape[0], 1, 1), device=code_emb.device) - # Mask out the conditioning branch for whole batch elements, implementing something similar to classifier-free guidance. - if self.training and self.unconditioned_percentage > 0: - unconditioned_batches = ( - torch.rand((code_emb.shape[0], 1, 1), device=code_emb.device) < self.unconditioned_percentage - ) - code_emb = torch.where( - unconditioned_batches, - self.unconditioned_embedding.repeat(aligned_conditioning.shape[0], 1, 1), - code_emb, - ) - expanded_code_emb = F.interpolate(code_emb, size=expected_seq_len, mode="nearest") - - if not return_code_pred: - return expanded_code_emb - else: - mel_pred = self.mel_head(expanded_code_emb) - # Multiply mel_pred by !unconditioned_branches, which drops the gradient on unconditioned branches. This is because we don't want that gradient being used to train parameters through the codes_embedder as it unbalances contributions to that network from the MSE loss. - mel_pred = mel_pred * unconditioned_batches.logical_not() - return expanded_code_emb, mel_pred - - def forward( - self, - x, - timesteps, - aligned_conditioning=None, - conditioning_latent=None, - precomputed_aligned_embeddings=None, - conditioning_free=False, - return_code_pred=False, - ): - """ - Apply the model to an input batch. - - :param x: an [N x C x ...] Tensor of inputs. - :param timesteps: a 1-D batch of timesteps. - :param aligned_conditioning: an aligned latent or sequence of tokens providing useful data about the sample to be produced. - :param conditioning_latent: a pre-computed conditioning latent; see get_conditioning(). - :param precomputed_aligned_embeddings: Embeddings returned from self.timestep_independent() - :param conditioning_free: When set, all conditioning inputs (including tokens and conditioning_input) will not be considered. - :return: an [N x C x ...] Tensor of outputs. - """ - assert precomputed_aligned_embeddings is not None or ( - aligned_conditioning is not None and conditioning_latent is not None - ) - assert not ( - return_code_pred and precomputed_aligned_embeddings is not None - ) # These two are mutually exclusive. - - unused_params = [] - if conditioning_free: - code_emb = self.unconditioned_embedding.repeat(x.shape[0], 1, x.shape[-1]) - unused_params.extend(list(self.code_converter.parameters()) + list(self.code_embedding.parameters())) - unused_params.extend(list(self.latent_conditioner.parameters())) - else: - if precomputed_aligned_embeddings is not None: - code_emb = precomputed_aligned_embeddings - else: - code_emb, mel_pred = self.timestep_independent( - aligned_conditioning, conditioning_latent, x.shape[-1], True - ) - if is_latent(aligned_conditioning): - unused_params.extend( - list(self.code_converter.parameters()) + list(self.code_embedding.parameters()) - ) - else: - unused_params.extend(list(self.latent_conditioner.parameters())) - - unused_params.append(self.unconditioned_embedding) - - time_emb = self.time_embed(timestep_embedding(timesteps, self.model_channels)) - code_emb = self.conditioning_timestep_integrator(code_emb, time_emb) - x = self.inp_block(x) - x = torch.cat([x, code_emb], dim=1) - x = self.integrating_conv(x) - for i, lyr in enumerate(self.layers): - # Do layer drop where applicable. Do not drop first and last layers. - if ( - self.training - and self.layer_drop > 0 - and i != 0 - and i != (len(self.layers) - 1) - and random.random() < self.layer_drop - ): - unused_params.extend(list(lyr.parameters())) - else: - # First and last blocks will have autocast disabled for improved precision. - with autocast(x.device.type, enabled=self.enable_fp16 and i != 0): - x = lyr(x, time_emb) - - x = x.float() - out = self.out(x) - - # Involve probabilistic or possibly unused parameters in loss so we don't get DDP errors. - extraneous_addition = 0 - for p in unused_params: - extraneous_addition = extraneous_addition + p.mean() - out = out + extraneous_addition * 0 - - if return_code_pred: - return out, mel_pred - return out - - -if __name__ == "__main__": - clip = torch.randn(2, 100, 400) - aligned_latent = torch.randn(2, 388, 512) - aligned_sequence = torch.randint(0, 8192, (2, 100)) - cond = torch.randn(2, 100, 400) - ts = torch.LongTensor([600, 600]) - model = DiffusionTts(512, layer_drop=0.3, unconditioned_percentage=0.5) - # Test with latent aligned conditioning - # o = model(clip, ts, aligned_latent, cond) - # Test with sequence aligned conditioning - o = model(clip, ts, aligned_sequence, cond) diff --git a/TTS/tts/layers/tortoise/dpm_solver.py b/TTS/tts/layers/tortoise/dpm_solver.py deleted file mode 100644 index c70888df42063e65dabf50eadb9a78813effa4e9..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/dpm_solver.py +++ /dev/null @@ -1,1562 +0,0 @@ -import math - -import torch - - -class NoiseScheduleVP: - def __init__( - self, - schedule="discrete", - betas=None, - alphas_cumprod=None, - continuous_beta_0=0.1, - continuous_beta_1=20.0, - dtype=torch.float32, - ): - """Create a wrapper class for the forward SDE (VP type). - - *** - Update: We support discrete-time diffusion models by implementing a picewise linear interpolation for log_alpha_t. - We recommend to use schedule='discrete' for the discrete-time diffusion models, especially for high-resolution images. - *** - - The forward SDE ensures that the condition distribution q_{t|0}(x_t | x_0) = N ( alpha_t * x_0, sigma_t^2 * I ). - We further define lambda_t = log(alpha_t) - log(sigma_t), which is the half-logSNR (described in the DPM-Solver paper). - Therefore, we implement the functions for computing alpha_t, sigma_t and lambda_t. For t in [0, T], we have: - - log_alpha_t = self.marginal_log_mean_coeff(t) - sigma_t = self.marginal_std(t) - lambda_t = self.marginal_lambda(t) - - Moreover, as lambda(t) is an invertible function, we also support its inverse function: - - t = self.inverse_lambda(lambda_t) - - =============================================================== - - We support both discrete-time DPMs (trained on n = 0, 1, ..., N-1) and continuous-time DPMs (trained on t in [t_0, T]). - - 1. For discrete-time DPMs: - - For discrete-time DPMs trained on n = 0, 1, ..., N-1, we convert the discrete steps to continuous time steps by: - t_i = (i + 1) / N - e.g. for N = 1000, we have t_0 = 1e-3 and T = t_{N-1} = 1. - We solve the corresponding diffusion ODE from time T = 1 to time t_0 = 1e-3. - - Args: - betas: A `torch.Tensor`. The beta array for the discrete-time DPM. (See the original DDPM paper for details) - alphas_cumprod: A `torch.Tensor`. The cumprod alphas for the discrete-time DPM. (See the original DDPM paper for details) - - Note that we always have alphas_cumprod = cumprod(1 - betas). Therefore, we only need to set one of `betas` and `alphas_cumprod`. - - **Important**: Please pay special attention for the args for `alphas_cumprod`: - The `alphas_cumprod` is the \hat{alpha_n} arrays in the notations of DDPM. Specifically, DDPMs assume that - q_{t_n | 0}(x_{t_n} | x_0) = N ( \sqrt{\hat{alpha_n}} * x_0, (1 - \hat{alpha_n}) * I ). - Therefore, the notation \hat{alpha_n} is different from the notation alpha_t in DPM-Solver. In fact, we have - alpha_{t_n} = \sqrt{\hat{alpha_n}}, - and - log(alpha_{t_n}) = 0.5 * log(\hat{alpha_n}). - - - 2. For continuous-time DPMs: - - We support two types of VPSDEs: linear (DDPM) and cosine (improved-DDPM). The hyperparameters for the noise - schedule are the default settings in DDPM and improved-DDPM: - - Args: - beta_min: A `float` number. The smallest beta for the linear schedule. - beta_max: A `float` number. The largest beta for the linear schedule. - cosine_s: A `float` number. The hyperparameter in the cosine schedule. - cosine_beta_max: A `float` number. The hyperparameter in the cosine schedule. - T: A `float` number. The ending time of the forward process. - - =============================================================== - - Args: - schedule: A `str`. The noise schedule of the forward SDE. 'discrete' for discrete-time DPMs, - 'linear' or 'cosine' for continuous-time DPMs. - Returns: - A wrapper object of the forward SDE (VP type). - - =============================================================== - - Example: - - # For discrete-time DPMs, given betas (the beta array for n = 0, 1, ..., N - 1): - >>> ns = NoiseScheduleVP('discrete', betas=betas) - - # For discrete-time DPMs, given alphas_cumprod (the \hat{alpha_n} array for n = 0, 1, ..., N - 1): - >>> ns = NoiseScheduleVP('discrete', alphas_cumprod=alphas_cumprod) - - # For continuous-time DPMs (VPSDE), linear schedule: - >>> ns = NoiseScheduleVP('linear', continuous_beta_0=0.1, continuous_beta_1=20.) - - """ - - if schedule not in ["discrete", "linear", "cosine"]: - raise ValueError( - "Unsupported noise schedule {}. The schedule needs to be 'discrete' or 'linear' or 'cosine'".format( - schedule - ) - ) - - self.schedule = schedule - if schedule == "discrete": - if betas is not None: - log_alphas = 0.5 * torch.log(1 - betas).cumsum(dim=0) - else: - assert alphas_cumprod is not None - log_alphas = 0.5 * torch.log(alphas_cumprod) - self.total_N = len(log_alphas) - self.T = 1.0 - self.t_array = torch.linspace(0.0, 1.0, self.total_N + 1)[1:].reshape((1, -1)).to(dtype=dtype) - self.log_alpha_array = log_alphas.reshape( - ( - 1, - -1, - ) - ).to(dtype=dtype) - else: - self.total_N = 1000 - self.beta_0 = continuous_beta_0 - self.beta_1 = continuous_beta_1 - self.cosine_s = 0.008 - self.cosine_beta_max = 999.0 - self.cosine_t_max = ( - math.atan(self.cosine_beta_max * (1.0 + self.cosine_s) / math.pi) - * 2.0 - * (1.0 + self.cosine_s) - / math.pi - - self.cosine_s - ) - self.cosine_log_alpha_0 = math.log(math.cos(self.cosine_s / (1.0 + self.cosine_s) * math.pi / 2.0)) - self.schedule = schedule - if schedule == "cosine": - # For the cosine schedule, T = 1 will have numerical issues. So we manually set the ending time T. - # Note that T = 0.9946 may be not the optimal setting. However, we find it works well. - self.T = 0.9946 - else: - self.T = 1.0 - - def marginal_log_mean_coeff(self, t): - """ - Compute log(alpha_t) of a given continuous-time label t in [0, T]. - """ - if self.schedule == "discrete": - return interpolate_fn( - t.reshape((-1, 1)), - self.t_array.to(t.device), - self.log_alpha_array.to(t.device), - ).reshape((-1)) - elif self.schedule == "linear": - return -0.25 * t**2 * (self.beta_1 - self.beta_0) - 0.5 * t * self.beta_0 - elif self.schedule == "cosine": - - def log_alpha_fn(s): - return torch.log(torch.cos((s + self.cosine_s) / (1.0 + self.cosine_s) * math.pi / 2.0)) - - log_alpha_t = log_alpha_fn(t) - self.cosine_log_alpha_0 - return log_alpha_t - - def marginal_alpha(self, t): - """ - Compute alpha_t of a given continuous-time label t in [0, T]. - """ - return torch.exp(self.marginal_log_mean_coeff(t)) - - def marginal_std(self, t): - """ - Compute sigma_t of a given continuous-time label t in [0, T]. - """ - return torch.sqrt(1.0 - torch.exp(2.0 * self.marginal_log_mean_coeff(t))) - - def marginal_lambda(self, t): - """ - Compute lambda_t = log(alpha_t) - log(sigma_t) of a given continuous-time label t in [0, T]. - """ - log_mean_coeff = self.marginal_log_mean_coeff(t) - log_std = 0.5 * torch.log(1.0 - torch.exp(2.0 * log_mean_coeff)) - return log_mean_coeff - log_std - - def inverse_lambda(self, lamb): - """ - Compute the continuous-time label t in [0, T] of a given half-logSNR lambda_t. - """ - if self.schedule == "linear": - tmp = 2.0 * (self.beta_1 - self.beta_0) * torch.logaddexp(-2.0 * lamb, torch.zeros((1,)).to(lamb)) - Delta = self.beta_0**2 + tmp - return tmp / (torch.sqrt(Delta) + self.beta_0) / (self.beta_1 - self.beta_0) - elif self.schedule == "discrete": - log_alpha = -0.5 * torch.logaddexp(torch.zeros((1,)).to(lamb.device), -2.0 * lamb) - t = interpolate_fn( - log_alpha.reshape((-1, 1)), - torch.flip(self.log_alpha_array.to(lamb.device), [1]), - torch.flip(self.t_array.to(lamb.device), [1]), - ) - return t.reshape((-1,)) - else: - log_alpha = -0.5 * torch.logaddexp(-2.0 * lamb, torch.zeros((1,)).to(lamb)) - - def t_fn(log_alpha_t): - return ( - torch.arccos(torch.exp(log_alpha_t + self.cosine_log_alpha_0)) - * 2.0 - * (1.0 + self.cosine_s) - / math.pi - - self.cosine_s - ) - - t = t_fn(log_alpha) - return t - - -def model_wrapper( - model, - noise_schedule, - model_type="noise", - model_kwargs={}, - guidance_type="uncond", - condition=None, - unconditional_condition=None, - guidance_scale=1.0, - classifier_fn=None, - classifier_kwargs={}, -): - """Create a wrapper function for the noise prediction model. - - DPM-Solver needs to solve the continuous-time diffusion ODEs. For DPMs trained on discrete-time labels, we need to - firstly wrap the model function to a noise prediction model that accepts the continuous time as the input. - - We support four types of the diffusion model by setting `model_type`: - - 1. "noise": noise prediction model. (Trained by predicting noise). - - 2. "x_start": data prediction model. (Trained by predicting the data x_0 at time 0). - - 3. "v": velocity prediction model. (Trained by predicting the velocity). - The "v" prediction is derivation detailed in Appendix D of [1], and is used in Imagen-Video [2]. - - [1] Salimans, Tim, and Jonathan Ho. "Progressive distillation for fast sampling of diffusion models." - arXiv preprint arXiv:2202.00512 (2022). - [2] Ho, Jonathan, et al. "Imagen Video: High Definition Video Generation with Diffusion Models." - arXiv preprint arXiv:2210.02303 (2022). - - 4. "score": marginal score function. (Trained by denoising score matching). - Note that the score function and the noise prediction model follows a simple relationship: - ``` - noise(x_t, t) = -sigma_t * score(x_t, t) - ``` - - We support three types of guided sampling by DPMs by setting `guidance_type`: - 1. "uncond": unconditional sampling by DPMs. - The input `model` has the following format: - `` - model(x, t_input, **model_kwargs) -> noise | x_start | v | score - `` - - 2. "classifier": classifier guidance sampling [3] by DPMs and another classifier. - The input `model` has the following format: - `` - model(x, t_input, **model_kwargs) -> noise | x_start | v | score - `` - - The input `classifier_fn` has the following format: - `` - classifier_fn(x, t_input, cond, **classifier_kwargs) -> logits(x, t_input, cond) - `` - - [3] P. Dhariwal and A. Q. Nichol, "Diffusion models beat GANs on image synthesis," - in Advances in Neural Information Processing Systems, vol. 34, 2021, pp. 8780-8794. - - 3. "classifier-free": classifier-free guidance sampling by conditional DPMs. - The input `model` has the following format: - `` - model(x, t_input, cond, **model_kwargs) -> noise | x_start | v | score - `` - And if cond == `unconditional_condition`, the model output is the unconditional DPM output. - - [4] Ho, Jonathan, and Tim Salimans. "Classifier-free diffusion guidance." - arXiv preprint arXiv:2207.12598 (2022). - - - The `t_input` is the time label of the model, which may be discrete-time labels (i.e. 0 to 999) - or continuous-time labels (i.e. epsilon to T). - - We wrap the model function to accept only `x` and `t_continuous` as inputs, and outputs the predicted noise: - `` - def model_fn(x, t_continuous) -> noise: - t_input = get_model_input_time(t_continuous) - return noise_pred(model, x, t_input, **model_kwargs) - `` - where `t_continuous` is the continuous time labels (i.e. epsilon to T). And we use `model_fn` for DPM-Solver. - - =============================================================== - - Args: - model: A diffusion model with the corresponding format described above. - noise_schedule: A noise schedule object, such as NoiseScheduleVP. - model_type: A `str`. The parameterization type of the diffusion model. - "noise" or "x_start" or "v" or "score". - model_kwargs: A `dict`. A dict for the other inputs of the model function. - guidance_type: A `str`. The type of the guidance for sampling. - "uncond" or "classifier" or "classifier-free". - condition: A pytorch tensor. The condition for the guided sampling. - Only used for "classifier" or "classifier-free" guidance type. - unconditional_condition: A pytorch tensor. The condition for the unconditional sampling. - Only used for "classifier-free" guidance type. - guidance_scale: A `float`. The scale for the guided sampling. - classifier_fn: A classifier function. Only used for the classifier guidance. - classifier_kwargs: A `dict`. A dict for the other inputs of the classifier function. - Returns: - A noise prediction model that accepts the noised data and the continuous time as the inputs. - """ - - def get_model_input_time(t_continuous): - """ - Convert the continuous-time `t_continuous` (in [epsilon, T]) to the model input time. - For discrete-time DPMs, we convert `t_continuous` in [1 / N, 1] to `t_input` in [0, 1000 * (N - 1) / N]. - For continuous-time DPMs, we just use `t_continuous`. - """ - if noise_schedule.schedule == "discrete": - return (t_continuous - 1.0 / noise_schedule.total_N) * 1000.0 - else: - return t_continuous - - def noise_pred_fn(x, t_continuous, cond=None): - t_input = get_model_input_time(t_continuous) - if cond is None: - output = model(x, t_input, **model_kwargs) - else: - output = model(x, t_input, cond, **model_kwargs) - if model_type == "noise": - return output - elif model_type == "x_start": - alpha_t, sigma_t = noise_schedule.marginal_alpha(t_continuous), noise_schedule.marginal_std(t_continuous) - return (x - alpha_t * output) / sigma_t - elif model_type == "v": - alpha_t, sigma_t = noise_schedule.marginal_alpha(t_continuous), noise_schedule.marginal_std(t_continuous) - return alpha_t * output + sigma_t * x - elif model_type == "score": - sigma_t = noise_schedule.marginal_std(t_continuous) - return -sigma_t * output - - def cond_grad_fn(x, t_input): - """ - Compute the gradient of the classifier, i.e. nabla_{x} log p_t(cond | x_t). - """ - with torch.enable_grad(): - x_in = x.detach().requires_grad_(True) - log_prob = classifier_fn(x_in, t_input, condition, **classifier_kwargs) - return torch.autograd.grad(log_prob.sum(), x_in)[0] - - def model_fn(x, t_continuous): - """ - The noise predicition model function that is used for DPM-Solver. - """ - if guidance_type == "uncond": - return noise_pred_fn(x, t_continuous) - elif guidance_type == "classifier": - assert classifier_fn is not None - t_input = get_model_input_time(t_continuous) - cond_grad = cond_grad_fn(x, t_input) - sigma_t = noise_schedule.marginal_std(t_continuous) - noise = noise_pred_fn(x, t_continuous) - return noise - guidance_scale * sigma_t * cond_grad - elif guidance_type == "classifier-free": - if guidance_scale == 1.0 or unconditional_condition is None: - return noise_pred_fn(x, t_continuous, cond=condition) - else: - x_in = torch.cat([x] * 2) - t_in = torch.cat([t_continuous] * 2) - c_in = torch.cat([unconditional_condition, condition]) - noise_uncond, noise = noise_pred_fn(x_in, t_in, cond=c_in).chunk(2) - return noise_uncond + guidance_scale * (noise - noise_uncond) - - assert model_type in ["noise", "x_start", "v", "score"] - assert guidance_type in ["uncond", "classifier", "classifier-free"] - return model_fn - - -class DPM_Solver: - def __init__( - self, - model_fn, - noise_schedule, - algorithm_type="dpmsolver++", - correcting_x0_fn=None, - correcting_xt_fn=None, - thresholding_max_val=1.0, - dynamic_thresholding_ratio=0.995, - ): - """Construct a DPM-Solver. - - We support both DPM-Solver (`algorithm_type="dpmsolver"`) and DPM-Solver++ (`algorithm_type="dpmsolver++"`). - - We also support the "dynamic thresholding" method in Imagen[1]. For pixel-space diffusion models, you - can set both `algorithm_type="dpmsolver++"` and `correcting_x0_fn="dynamic_thresholding"` to use the - dynamic thresholding. The "dynamic thresholding" can greatly improve the sample quality for pixel-space - DPMs with large guidance scales. Note that the thresholding method is **unsuitable** for latent-space - DPMs (such as stable-diffusion). - - To support advanced algorithms in image-to-image applications, we also support corrector functions for - both x0 and xt. - - Args: - model_fn: A noise prediction model function which accepts the continuous-time input (t in [epsilon, T]): - `` - def model_fn(x, t_continuous): - return noise - `` - The shape of `x` is `(batch_size, **shape)`, and the shape of `t_continuous` is `(batch_size,)`. - noise_schedule: A noise schedule object, such as NoiseScheduleVP. - algorithm_type: A `str`. Either "dpmsolver" or "dpmsolver++". - correcting_x0_fn: A `str` or a function with the following format: - ``` - def correcting_x0_fn(x0, t): - x0_new = ... - return x0_new - ``` - This function is to correct the outputs of the data prediction model at each sampling step. e.g., - ``` - x0_pred = data_pred_model(xt, t) - if correcting_x0_fn is not None: - x0_pred = correcting_x0_fn(x0_pred, t) - xt_1 = update(x0_pred, xt, t) - ``` - If `correcting_x0_fn="dynamic_thresholding"`, we use the dynamic thresholding proposed in Imagen[1]. - correcting_xt_fn: A function with the following format: - ``` - def correcting_xt_fn(xt, t, step): - x_new = ... - return x_new - ``` - This function is to correct the intermediate samples xt at each sampling step. e.g., - ``` - xt = ... - xt = correcting_xt_fn(xt, t, step) - ``` - thresholding_max_val: A `float`. The max value for thresholding. - Valid only when use `dpmsolver++` and `correcting_x0_fn="dynamic_thresholding"`. - dynamic_thresholding_ratio: A `float`. The ratio for dynamic thresholding (see Imagen[1] for details). - Valid only when use `dpmsolver++` and `correcting_x0_fn="dynamic_thresholding"`. - - [1] Chitwan Saharia, William Chan, Saurabh Saxena, Lala Li, Jay Whang, Emily Denton, Seyed Kamyar Seyed Ghasemipour, - Burcu Karagol Ayan, S Sara Mahdavi, Rapha Gontijo Lopes, et al. Photorealistic text-to-image diffusion models - with deep language understanding. arXiv preprint arXiv:2205.11487, 2022b. - """ - self.model = lambda x, t: model_fn(x, t.expand((x.shape[0]))) - self.noise_schedule = noise_schedule - assert algorithm_type in ["dpmsolver", "dpmsolver++"] - self.algorithm_type = algorithm_type - if correcting_x0_fn == "dynamic_thresholding": - self.correcting_x0_fn = self.dynamic_thresholding_fn - else: - self.correcting_x0_fn = correcting_x0_fn - self.correcting_xt_fn = correcting_xt_fn - self.dynamic_thresholding_ratio = dynamic_thresholding_ratio - self.thresholding_max_val = thresholding_max_val - - def dynamic_thresholding_fn(self, x0, t): - """ - The dynamic thresholding method. - """ - dims = x0.dim() - p = self.dynamic_thresholding_ratio - s = torch.quantile(torch.abs(x0).reshape((x0.shape[0], -1)), p, dim=1) - s = expand_dims( - torch.maximum(s, self.thresholding_max_val * torch.ones_like(s).to(s.device)), - dims, - ) - x0 = torch.clamp(x0, -s, s) / s - return x0 - - def noise_prediction_fn(self, x, t): - """ - Return the noise prediction model. - """ - return self.model(x, t) - - def data_prediction_fn(self, x, t): - """ - Return the data prediction model (with corrector). - """ - noise = self.noise_prediction_fn(x, t) - alpha_t, sigma_t = self.noise_schedule.marginal_alpha(t), self.noise_schedule.marginal_std(t) - x0 = (x - sigma_t * noise) / alpha_t - if self.correcting_x0_fn is not None: - x0 = self.correcting_x0_fn(x0, t) - return x0 - - def model_fn(self, x, t): - """ - Convert the model to the noise prediction model or the data prediction model. - """ - if self.algorithm_type == "dpmsolver++": - return self.data_prediction_fn(x, t) - else: - return self.noise_prediction_fn(x, t) - - def get_time_steps(self, skip_type, t_T, t_0, N, device): - """Compute the intermediate time steps for sampling. - - Args: - skip_type: A `str`. The type for the spacing of the time steps. We support three types: - - 'logSNR': uniform logSNR for the time steps. - - 'time_uniform': uniform time for the time steps. (**Recommended for high-resolutional data**.) - - 'time_quadratic': quadratic time for the time steps. (Used in DDIM for low-resolutional data.) - t_T: A `float`. The starting time of the sampling (default is T). - t_0: A `float`. The ending time of the sampling (default is epsilon). - N: A `int`. The total number of the spacing of the time steps. - device: A torch device. - Returns: - A pytorch tensor of the time steps, with the shape (N + 1,). - """ - if skip_type == "logSNR": - lambda_T = self.noise_schedule.marginal_lambda(torch.tensor(t_T).to(device)) - lambda_0 = self.noise_schedule.marginal_lambda(torch.tensor(t_0).to(device)) - logSNR_steps = torch.linspace(lambda_T.cpu().item(), lambda_0.cpu().item(), N + 1).to(device) - return self.noise_schedule.inverse_lambda(logSNR_steps) - elif skip_type == "time_uniform": - return torch.linspace(t_T, t_0, N + 1).to(device) - elif skip_type == "time_quadratic": - t_order = 2 - t = torch.linspace(t_T ** (1.0 / t_order), t_0 ** (1.0 / t_order), N + 1).pow(t_order).to(device) - return t - else: - raise ValueError( - "Unsupported skip_type {}, need to be 'logSNR' or 'time_uniform' or 'time_quadratic'".format(skip_type) - ) - - def get_orders_and_timesteps_for_singlestep_solver(self, steps, order, skip_type, t_T, t_0, device): - """ - Get the order of each step for sampling by the singlestep DPM-Solver. - - We combine both DPM-Solver-1,2,3 to use all the function evaluations, which is named as "DPM-Solver-fast". - Given a fixed number of function evaluations by `steps`, the sampling procedure by DPM-Solver-fast is: - - If order == 1: - We take `steps` of DPM-Solver-1 (i.e. DDIM). - - If order == 2: - - Denote K = (steps // 2). We take K or (K + 1) intermediate time steps for sampling. - - If steps % 2 == 0, we use K steps of DPM-Solver-2. - - If steps % 2 == 1, we use K steps of DPM-Solver-2 and 1 step of DPM-Solver-1. - - If order == 3: - - Denote K = (steps // 3 + 1). We take K intermediate time steps for sampling. - - If steps % 3 == 0, we use (K - 2) steps of DPM-Solver-3, and 1 step of DPM-Solver-2 and 1 step of DPM-Solver-1. - - If steps % 3 == 1, we use (K - 1) steps of DPM-Solver-3 and 1 step of DPM-Solver-1. - - If steps % 3 == 2, we use (K - 1) steps of DPM-Solver-3 and 1 step of DPM-Solver-2. - - ============================================ - Args: - order: A `int`. The max order for the solver (2 or 3). - steps: A `int`. The total number of function evaluations (NFE). - skip_type: A `str`. The type for the spacing of the time steps. We support three types: - - 'logSNR': uniform logSNR for the time steps. - - 'time_uniform': uniform time for the time steps. (**Recommended for high-resolutional data**.) - - 'time_quadratic': quadratic time for the time steps. (Used in DDIM for low-resolutional data.) - t_T: A `float`. The starting time of the sampling (default is T). - t_0: A `float`. The ending time of the sampling (default is epsilon). - device: A torch device. - Returns: - orders: A list of the solver order of each step. - """ - if order == 3: - K = steps // 3 + 1 - if steps % 3 == 0: - orders = [ - 3, - ] * ( - K - 2 - ) + [2, 1] - elif steps % 3 == 1: - orders = [ - 3, - ] * ( - K - 1 - ) + [1] - else: - orders = [ - 3, - ] * ( - K - 1 - ) + [2] - elif order == 2: - if steps % 2 == 0: - K = steps // 2 - orders = [ - 2, - ] * K - else: - K = steps // 2 + 1 - orders = [ - 2, - ] * ( - K - 1 - ) + [1] - elif order == 1: - K = 1 - orders = [ - 1, - ] * steps - else: - raise ValueError("'order' must be '1' or '2' or '3'.") - if skip_type == "logSNR": - # To reproduce the results in DPM-Solver paper - timesteps_outer = self.get_time_steps(skip_type, t_T, t_0, K, device) - else: - timesteps_outer = self.get_time_steps(skip_type, t_T, t_0, steps, device)[ - torch.cumsum( - torch.tensor( - [ - 0, - ] - + orders - ), - 0, - ).to(device) - ] - return timesteps_outer, orders - - def denoise_to_zero_fn(self, x, s): - """ - Denoise at the final step, which is equivalent to solve the ODE from lambda_s to infty by first-order discretization. - """ - return self.data_prediction_fn(x, s) - - def dpm_solver_first_update(self, x, s, t, model_s=None, return_intermediate=False): - """ - DPM-Solver-1 (equivalent to DDIM) from time `s` to time `t`. - - Args: - x: A pytorch tensor. The initial value at time `s`. - s: A pytorch tensor. The starting time, with the shape (1,). - t: A pytorch tensor. The ending time, with the shape (1,). - model_s: A pytorch tensor. The model function evaluated at time `s`. - If `model_s` is None, we evaluate the model by `x` and `s`; otherwise we directly use it. - return_intermediate: A `bool`. If true, also return the model value at time `s`. - Returns: - x_t: A pytorch tensor. The approximated solution at time `t`. - """ - ns = self.noise_schedule - dims = x.dim() - lambda_s, lambda_t = ns.marginal_lambda(s), ns.marginal_lambda(t) - h = lambda_t - lambda_s - log_alpha_s, log_alpha_t = ns.marginal_log_mean_coeff(s), ns.marginal_log_mean_coeff(t) - sigma_s, sigma_t = ns.marginal_std(s), ns.marginal_std(t) - alpha_t = torch.exp(log_alpha_t) - - if self.algorithm_type == "dpmsolver++": - phi_1 = torch.expm1(-h) - if model_s is None: - model_s = self.model_fn(x, s) - x_t = sigma_t / sigma_s * x - alpha_t * phi_1 * model_s - if return_intermediate: - return x_t, {"model_s": model_s} - else: - return x_t - else: - phi_1 = torch.expm1(h) - if model_s is None: - model_s = self.model_fn(x, s) - x_t = torch.exp(log_alpha_t - log_alpha_s) * x - (sigma_t * phi_1) * model_s - if return_intermediate: - return x_t, {"model_s": model_s} - else: - return x_t - - def singlestep_dpm_solver_second_update( - self, - x, - s, - t, - r1=0.5, - model_s=None, - return_intermediate=False, - solver_type="dpmsolver", - ): - """ - Singlestep solver DPM-Solver-2 from time `s` to time `t`. - - Args: - x: A pytorch tensor. The initial value at time `s`. - s: A pytorch tensor. The starting time, with the shape (1,). - t: A pytorch tensor. The ending time, with the shape (1,). - r1: A `float`. The hyperparameter of the second-order solver. - model_s: A pytorch tensor. The model function evaluated at time `s`. - If `model_s` is None, we evaluate the model by `x` and `s`; otherwise we directly use it. - return_intermediate: A `bool`. If true, also return the model value at time `s` and `s1` (the intermediate time). - solver_type: either 'dpmsolver' or 'taylor'. The type for the high-order solvers. - The type slightly impacts the performance. We recommend to use 'dpmsolver' type. - Returns: - x_t: A pytorch tensor. The approximated solution at time `t`. - """ - if solver_type not in ["dpmsolver", "taylor"]: - raise ValueError("'solver_type' must be either 'dpmsolver' or 'taylor', got {}".format(solver_type)) - if r1 is None: - r1 = 0.5 - ns = self.noise_schedule - lambda_s, lambda_t = ns.marginal_lambda(s), ns.marginal_lambda(t) - h = lambda_t - lambda_s - lambda_s1 = lambda_s + r1 * h - s1 = ns.inverse_lambda(lambda_s1) - log_alpha_s, log_alpha_s1, log_alpha_t = ( - ns.marginal_log_mean_coeff(s), - ns.marginal_log_mean_coeff(s1), - ns.marginal_log_mean_coeff(t), - ) - sigma_s, sigma_s1, sigma_t = ( - ns.marginal_std(s), - ns.marginal_std(s1), - ns.marginal_std(t), - ) - alpha_s1, alpha_t = torch.exp(log_alpha_s1), torch.exp(log_alpha_t) - - if self.algorithm_type == "dpmsolver++": - phi_11 = torch.expm1(-r1 * h) - phi_1 = torch.expm1(-h) - - if model_s is None: - model_s = self.model_fn(x, s) - x_s1 = (sigma_s1 / sigma_s) * x - (alpha_s1 * phi_11) * model_s - model_s1 = self.model_fn(x_s1, s1) - if solver_type == "dpmsolver": - x_t = ( - (sigma_t / sigma_s) * x - - (alpha_t * phi_1) * model_s - - (0.5 / r1) * (alpha_t * phi_1) * (model_s1 - model_s) - ) - elif solver_type == "taylor": - x_t = ( - (sigma_t / sigma_s) * x - - (alpha_t * phi_1) * model_s - + (1.0 / r1) * (alpha_t * (phi_1 / h + 1.0)) * (model_s1 - model_s) - ) - else: - phi_11 = torch.expm1(r1 * h) - phi_1 = torch.expm1(h) - - if model_s is None: - model_s = self.model_fn(x, s) - x_s1 = torch.exp(log_alpha_s1 - log_alpha_s) * x - (sigma_s1 * phi_11) * model_s - model_s1 = self.model_fn(x_s1, s1) - if solver_type == "dpmsolver": - x_t = ( - torch.exp(log_alpha_t - log_alpha_s) * x - - (sigma_t * phi_1) * model_s - - (0.5 / r1) * (sigma_t * phi_1) * (model_s1 - model_s) - ) - elif solver_type == "taylor": - x_t = ( - torch.exp(log_alpha_t - log_alpha_s) * x - - (sigma_t * phi_1) * model_s - - (1.0 / r1) * (sigma_t * (phi_1 / h - 1.0)) * (model_s1 - model_s) - ) - if return_intermediate: - return x_t, {"model_s": model_s, "model_s1": model_s1} - else: - return x_t - - def singlestep_dpm_solver_third_update( - self, - x, - s, - t, - r1=1.0 / 3.0, - r2=2.0 / 3.0, - model_s=None, - model_s1=None, - return_intermediate=False, - solver_type="dpmsolver", - ): - """ - Singlestep solver DPM-Solver-3 from time `s` to time `t`. - - Args: - x: A pytorch tensor. The initial value at time `s`. - s: A pytorch tensor. The starting time, with the shape (1,). - t: A pytorch tensor. The ending time, with the shape (1,). - r1: A `float`. The hyperparameter of the third-order solver. - r2: A `float`. The hyperparameter of the third-order solver. - model_s: A pytorch tensor. The model function evaluated at time `s`. - If `model_s` is None, we evaluate the model by `x` and `s`; otherwise we directly use it. - model_s1: A pytorch tensor. The model function evaluated at time `s1` (the intermediate time given by `r1`). - If `model_s1` is None, we evaluate the model at `s1`; otherwise we directly use it. - return_intermediate: A `bool`. If true, also return the model value at time `s`, `s1` and `s2` (the intermediate times). - solver_type: either 'dpmsolver' or 'taylor'. The type for the high-order solvers. - The type slightly impacts the performance. We recommend to use 'dpmsolver' type. - Returns: - x_t: A pytorch tensor. The approximated solution at time `t`. - """ - if solver_type not in ["dpmsolver", "taylor"]: - raise ValueError("'solver_type' must be either 'dpmsolver' or 'taylor', got {}".format(solver_type)) - if r1 is None: - r1 = 1.0 / 3.0 - if r2 is None: - r2 = 2.0 / 3.0 - ns = self.noise_schedule - lambda_s, lambda_t = ns.marginal_lambda(s), ns.marginal_lambda(t) - h = lambda_t - lambda_s - lambda_s1 = lambda_s + r1 * h - lambda_s2 = lambda_s + r2 * h - s1 = ns.inverse_lambda(lambda_s1) - s2 = ns.inverse_lambda(lambda_s2) - log_alpha_s, log_alpha_s1, log_alpha_s2, log_alpha_t = ( - ns.marginal_log_mean_coeff(s), - ns.marginal_log_mean_coeff(s1), - ns.marginal_log_mean_coeff(s2), - ns.marginal_log_mean_coeff(t), - ) - sigma_s, sigma_s1, sigma_s2, sigma_t = ( - ns.marginal_std(s), - ns.marginal_std(s1), - ns.marginal_std(s2), - ns.marginal_std(t), - ) - alpha_s1, alpha_s2, alpha_t = ( - torch.exp(log_alpha_s1), - torch.exp(log_alpha_s2), - torch.exp(log_alpha_t), - ) - - if self.algorithm_type == "dpmsolver++": - phi_11 = torch.expm1(-r1 * h) - phi_12 = torch.expm1(-r2 * h) - phi_1 = torch.expm1(-h) - phi_22 = torch.expm1(-r2 * h) / (r2 * h) + 1.0 - phi_2 = phi_1 / h + 1.0 - phi_3 = phi_2 / h - 0.5 - - if model_s is None: - model_s = self.model_fn(x, s) - if model_s1 is None: - x_s1 = (sigma_s1 / sigma_s) * x - (alpha_s1 * phi_11) * model_s - model_s1 = self.model_fn(x_s1, s1) - x_s2 = ( - (sigma_s2 / sigma_s) * x - - (alpha_s2 * phi_12) * model_s - + r2 / r1 * (alpha_s2 * phi_22) * (model_s1 - model_s) - ) - model_s2 = self.model_fn(x_s2, s2) - if solver_type == "dpmsolver": - x_t = ( - (sigma_t / sigma_s) * x - - (alpha_t * phi_1) * model_s - + (1.0 / r2) * (alpha_t * phi_2) * (model_s2 - model_s) - ) - elif solver_type == "taylor": - D1_0 = (1.0 / r1) * (model_s1 - model_s) - D1_1 = (1.0 / r2) * (model_s2 - model_s) - D1 = (r2 * D1_0 - r1 * D1_1) / (r2 - r1) - D2 = 2.0 * (D1_1 - D1_0) / (r2 - r1) - x_t = ( - (sigma_t / sigma_s) * x - - (alpha_t * phi_1) * model_s - + (alpha_t * phi_2) * D1 - - (alpha_t * phi_3) * D2 - ) - else: - phi_11 = torch.expm1(r1 * h) - phi_12 = torch.expm1(r2 * h) - phi_1 = torch.expm1(h) - phi_22 = torch.expm1(r2 * h) / (r2 * h) - 1.0 - phi_2 = phi_1 / h - 1.0 - phi_3 = phi_2 / h - 0.5 - - if model_s is None: - model_s = self.model_fn(x, s) - if model_s1 is None: - x_s1 = (torch.exp(log_alpha_s1 - log_alpha_s)) * x - (sigma_s1 * phi_11) * model_s - model_s1 = self.model_fn(x_s1, s1) - x_s2 = ( - (torch.exp(log_alpha_s2 - log_alpha_s)) * x - - (sigma_s2 * phi_12) * model_s - - r2 / r1 * (sigma_s2 * phi_22) * (model_s1 - model_s) - ) - model_s2 = self.model_fn(x_s2, s2) - if solver_type == "dpmsolver": - x_t = ( - (torch.exp(log_alpha_t - log_alpha_s)) * x - - (sigma_t * phi_1) * model_s - - (1.0 / r2) * (sigma_t * phi_2) * (model_s2 - model_s) - ) - elif solver_type == "taylor": - D1_0 = (1.0 / r1) * (model_s1 - model_s) - D1_1 = (1.0 / r2) * (model_s2 - model_s) - D1 = (r2 * D1_0 - r1 * D1_1) / (r2 - r1) - D2 = 2.0 * (D1_1 - D1_0) / (r2 - r1) - x_t = ( - (torch.exp(log_alpha_t - log_alpha_s)) * x - - (sigma_t * phi_1) * model_s - - (sigma_t * phi_2) * D1 - - (sigma_t * phi_3) * D2 - ) - - if return_intermediate: - return x_t, {"model_s": model_s, "model_s1": model_s1, "model_s2": model_s2} - else: - return x_t - - def multistep_dpm_solver_second_update(self, x, model_prev_list, t_prev_list, t, solver_type="dpmsolver"): - """ - Multistep solver DPM-Solver-2 from time `t_prev_list[-1]` to time `t`. - - Args: - x: A pytorch tensor. The initial value at time `s`. - model_prev_list: A list of pytorch tensor. The previous computed model values. - t_prev_list: A list of pytorch tensor. The previous times, each time has the shape (1,) - t: A pytorch tensor. The ending time, with the shape (1,). - solver_type: either 'dpmsolver' or 'taylor'. The type for the high-order solvers. - The type slightly impacts the performance. We recommend to use 'dpmsolver' type. - Returns: - x_t: A pytorch tensor. The approximated solution at time `t`. - """ - if solver_type not in ["dpmsolver", "taylor"]: - raise ValueError("'solver_type' must be either 'dpmsolver' or 'taylor', got {}".format(solver_type)) - ns = self.noise_schedule - model_prev_1, model_prev_0 = model_prev_list[-2], model_prev_list[-1] - t_prev_1, t_prev_0 = t_prev_list[-2], t_prev_list[-1] - lambda_prev_1, lambda_prev_0, lambda_t = ( - ns.marginal_lambda(t_prev_1), - ns.marginal_lambda(t_prev_0), - ns.marginal_lambda(t), - ) - log_alpha_prev_0, log_alpha_t = ns.marginal_log_mean_coeff(t_prev_0), ns.marginal_log_mean_coeff(t) - sigma_prev_0, sigma_t = ns.marginal_std(t_prev_0), ns.marginal_std(t) - alpha_t = torch.exp(log_alpha_t) - - h_0 = lambda_prev_0 - lambda_prev_1 - h = lambda_t - lambda_prev_0 - r0 = h_0 / h - D1_0 = (1.0 / r0) * (model_prev_0 - model_prev_1) - if self.algorithm_type == "dpmsolver++": - phi_1 = torch.expm1(-h) - if solver_type == "dpmsolver": - x_t = (sigma_t / sigma_prev_0) * x - (alpha_t * phi_1) * model_prev_0 - 0.5 * (alpha_t * phi_1) * D1_0 - elif solver_type == "taylor": - x_t = ( - (sigma_t / sigma_prev_0) * x - - (alpha_t * phi_1) * model_prev_0 - + (alpha_t * (phi_1 / h + 1.0)) * D1_0 - ) - else: - phi_1 = torch.expm1(h) - if solver_type == "dpmsolver": - x_t = ( - (torch.exp(log_alpha_t - log_alpha_prev_0)) * x - - (sigma_t * phi_1) * model_prev_0 - - 0.5 * (sigma_t * phi_1) * D1_0 - ) - elif solver_type == "taylor": - x_t = ( - (torch.exp(log_alpha_t - log_alpha_prev_0)) * x - - (sigma_t * phi_1) * model_prev_0 - - (sigma_t * (phi_1 / h - 1.0)) * D1_0 - ) - return x_t - - def multistep_dpm_solver_third_update(self, x, model_prev_list, t_prev_list, t, solver_type="dpmsolver"): - """ - Multistep solver DPM-Solver-3 from time `t_prev_list[-1]` to time `t`. - - Args: - x: A pytorch tensor. The initial value at time `s`. - model_prev_list: A list of pytorch tensor. The previous computed model values. - t_prev_list: A list of pytorch tensor. The previous times, each time has the shape (1,) - t: A pytorch tensor. The ending time, with the shape (1,). - solver_type: either 'dpmsolver' or 'taylor'. The type for the high-order solvers. - The type slightly impacts the performance. We recommend to use 'dpmsolver' type. - Returns: - x_t: A pytorch tensor. The approximated solution at time `t`. - """ - ns = self.noise_schedule - model_prev_2, model_prev_1, model_prev_0 = model_prev_list - t_prev_2, t_prev_1, t_prev_0 = t_prev_list - lambda_prev_2, lambda_prev_1, lambda_prev_0, lambda_t = ( - ns.marginal_lambda(t_prev_2), - ns.marginal_lambda(t_prev_1), - ns.marginal_lambda(t_prev_0), - ns.marginal_lambda(t), - ) - log_alpha_prev_0, log_alpha_t = ns.marginal_log_mean_coeff(t_prev_0), ns.marginal_log_mean_coeff(t) - sigma_prev_0, sigma_t = ns.marginal_std(t_prev_0), ns.marginal_std(t) - alpha_t = torch.exp(log_alpha_t) - - h_1 = lambda_prev_1 - lambda_prev_2 - h_0 = lambda_prev_0 - lambda_prev_1 - h = lambda_t - lambda_prev_0 - r0, r1 = h_0 / h, h_1 / h - D1_0 = (1.0 / r0) * (model_prev_0 - model_prev_1) - D1_1 = (1.0 / r1) * (model_prev_1 - model_prev_2) - D1 = D1_0 + (r0 / (r0 + r1)) * (D1_0 - D1_1) - D2 = (1.0 / (r0 + r1)) * (D1_0 - D1_1) - if self.algorithm_type == "dpmsolver++": - phi_1 = torch.expm1(-h) - phi_2 = phi_1 / h + 1.0 - phi_3 = phi_2 / h - 0.5 - x_t = ( - (sigma_t / sigma_prev_0) * x - - (alpha_t * phi_1) * model_prev_0 - + (alpha_t * phi_2) * D1 - - (alpha_t * phi_3) * D2 - ) - else: - phi_1 = torch.expm1(h) - phi_2 = phi_1 / h - 1.0 - phi_3 = phi_2 / h - 0.5 - x_t = ( - (torch.exp(log_alpha_t - log_alpha_prev_0)) * x - - (sigma_t * phi_1) * model_prev_0 - - (sigma_t * phi_2) * D1 - - (sigma_t * phi_3) * D2 - ) - return x_t - - def singlestep_dpm_solver_update( - self, - x, - s, - t, - order, - return_intermediate=False, - solver_type="dpmsolver", - r1=None, - r2=None, - ): - """ - Singlestep DPM-Solver with the order `order` from time `s` to time `t`. - - Args: - x: A pytorch tensor. The initial value at time `s`. - s: A pytorch tensor. The starting time, with the shape (1,). - t: A pytorch tensor. The ending time, with the shape (1,). - order: A `int`. The order of DPM-Solver. We only support order == 1 or 2 or 3. - return_intermediate: A `bool`. If true, also return the model value at time `s`, `s1` and `s2` (the intermediate times). - solver_type: either 'dpmsolver' or 'taylor'. The type for the high-order solvers. - The type slightly impacts the performance. We recommend to use 'dpmsolver' type. - r1: A `float`. The hyperparameter of the second-order or third-order solver. - r2: A `float`. The hyperparameter of the third-order solver. - Returns: - x_t: A pytorch tensor. The approximated solution at time `t`. - """ - if order == 1: - return self.dpm_solver_first_update(x, s, t, return_intermediate=return_intermediate) - elif order == 2: - return self.singlestep_dpm_solver_second_update( - x, - s, - t, - return_intermediate=return_intermediate, - solver_type=solver_type, - r1=r1, - ) - elif order == 3: - return self.singlestep_dpm_solver_third_update( - x, - s, - t, - return_intermediate=return_intermediate, - solver_type=solver_type, - r1=r1, - r2=r2, - ) - else: - raise ValueError("Solver order must be 1 or 2 or 3, got {}".format(order)) - - def multistep_dpm_solver_update(self, x, model_prev_list, t_prev_list, t, order, solver_type="dpmsolver"): - """ - Multistep DPM-Solver with the order `order` from time `t_prev_list[-1]` to time `t`. - - Args: - x: A pytorch tensor. The initial value at time `s`. - model_prev_list: A list of pytorch tensor. The previous computed model values. - t_prev_list: A list of pytorch tensor. The previous times, each time has the shape (1,) - t: A pytorch tensor. The ending time, with the shape (1,). - order: A `int`. The order of DPM-Solver. We only support order == 1 or 2 or 3. - solver_type: either 'dpmsolver' or 'taylor'. The type for the high-order solvers. - The type slightly impacts the performance. We recommend to use 'dpmsolver' type. - Returns: - x_t: A pytorch tensor. The approximated solution at time `t`. - """ - if order == 1: - return self.dpm_solver_first_update(x, t_prev_list[-1], t, model_s=model_prev_list[-1]) - elif order == 2: - return self.multistep_dpm_solver_second_update(x, model_prev_list, t_prev_list, t, solver_type=solver_type) - elif order == 3: - return self.multistep_dpm_solver_third_update(x, model_prev_list, t_prev_list, t, solver_type=solver_type) - else: - raise ValueError("Solver order must be 1 or 2 or 3, got {}".format(order)) - - def dpm_solver_adaptive( - self, - x, - order, - t_T, - t_0, - h_init=0.05, - atol=0.0078, - rtol=0.05, - theta=0.9, - t_err=1e-5, - solver_type="dpmsolver", - ): - """ - The adaptive step size solver based on singlestep DPM-Solver. - - Args: - x: A pytorch tensor. The initial value at time `t_T`. - order: A `int`. The (higher) order of the solver. We only support order == 2 or 3. - t_T: A `float`. The starting time of the sampling (default is T). - t_0: A `float`. The ending time of the sampling (default is epsilon). - h_init: A `float`. The initial step size (for logSNR). - atol: A `float`. The absolute tolerance of the solver. For image data, the default setting is 0.0078, followed [1]. - rtol: A `float`. The relative tolerance of the solver. The default setting is 0.05. - theta: A `float`. The safety hyperparameter for adapting the step size. The default setting is 0.9, followed [1]. - t_err: A `float`. The tolerance for the time. We solve the diffusion ODE until the absolute error between the - current time and `t_0` is less than `t_err`. The default setting is 1e-5. - solver_type: either 'dpmsolver' or 'taylor'. The type for the high-order solvers. - The type slightly impacts the performance. We recommend to use 'dpmsolver' type. - Returns: - x_0: A pytorch tensor. The approximated solution at time `t_0`. - - [1] A. Jolicoeur-Martineau, K. Li, R. Piché-Taillefer, T. Kachman, and I. Mitliagkas, "Gotta go fast when generating data with score-based models," arXiv preprint arXiv:2105.14080, 2021. - """ - ns = self.noise_schedule - s = t_T * torch.ones((1,)).to(x) - lambda_s = ns.marginal_lambda(s) - lambda_0 = ns.marginal_lambda(t_0 * torch.ones_like(s).to(x)) - h = h_init * torch.ones_like(s).to(x) - x_prev = x - nfe = 0 - if order == 2: - r1 = 0.5 - - def lower_update(x, s, t): - return self.dpm_solver_first_update(x, s, t, return_intermediate=True) - - def higher_update(x, s, t, **kwargs): - return self.singlestep_dpm_solver_second_update(x, s, t, r1=r1, solver_type=solver_type, **kwargs) - - elif order == 3: - r1, r2 = 1.0 / 3.0, 2.0 / 3.0 - - def lower_update(x, s, t): - return self.singlestep_dpm_solver_second_update( - x, s, t, r1=r1, return_intermediate=True, solver_type=solver_type - ) - - def higher_update(x, s, t, **kwargs): - return self.singlestep_dpm_solver_third_update(x, s, t, r1=r1, r2=r2, solver_type=solver_type, **kwargs) - - else: - raise ValueError("For adaptive step size solver, order must be 2 or 3, got {}".format(order)) - while torch.abs((s - t_0)).mean() > t_err: - t = ns.inverse_lambda(lambda_s + h) - x_lower, lower_noise_kwargs = lower_update(x, s, t) - x_higher = higher_update(x, s, t, **lower_noise_kwargs) - delta = torch.max( - torch.ones_like(x).to(x) * atol, - rtol * torch.max(torch.abs(x_lower), torch.abs(x_prev)), - ) - - def norm_fn(v): - return torch.sqrt(torch.square(v.reshape((v.shape[0], -1))).mean(dim=-1, keepdim=True)) - - E = norm_fn((x_higher - x_lower) / delta).max() - if torch.all(E <= 1.0): - x = x_higher - s = t - x_prev = x_lower - lambda_s = ns.marginal_lambda(s) - h = torch.min( - theta * h * torch.float_power(E, -1.0 / order).float(), - lambda_0 - lambda_s, - ) - nfe += order - print("adaptive solver nfe", nfe) - return x - - def add_noise(self, x, t, noise=None): - """ - Compute the noised input xt = alpha_t * x + sigma_t * noise. - - Args: - x: A `torch.Tensor` with shape `(batch_size, *shape)`. - t: A `torch.Tensor` with shape `(t_size,)`. - Returns: - xt with shape `(t_size, batch_size, *shape)`. - """ - alpha_t, sigma_t = self.noise_schedule.marginal_alpha(t), self.noise_schedule.marginal_std(t) - if noise is None: - noise = torch.randn((t.shape[0], *x.shape), device=x.device) - x = x.reshape((-1, *x.shape)) - xt = expand_dims(alpha_t, x.dim()) * x + expand_dims(sigma_t, x.dim()) * noise - if t.shape[0] == 1: - return xt.squeeze(0) - else: - return xt - - def inverse( - self, - x, - steps=20, - t_start=None, - t_end=None, - order=2, - skip_type="time_uniform", - method="multistep", - lower_order_final=True, - denoise_to_zero=False, - solver_type="dpmsolver", - atol=0.0078, - rtol=0.05, - return_intermediate=False, - ): - """ - Inverse the sample `x` from time `t_start` to `t_end` by DPM-Solver. - For discrete-time DPMs, we use `t_start=1/N`, where `N` is the total time steps during training. - """ - t_0 = 1.0 / self.noise_schedule.total_N if t_start is None else t_start - t_T = self.noise_schedule.T if t_end is None else t_end - assert ( - t_0 > 0 and t_T > 0 - ), "Time range needs to be greater than 0. For discrete-time DPMs, it needs to be in [1 / N, 1], where N is the length of betas array" - return self.sample( - x, - steps=steps, - t_start=t_0, - t_end=t_T, - order=order, - skip_type=skip_type, - method=method, - lower_order_final=lower_order_final, - denoise_to_zero=denoise_to_zero, - solver_type=solver_type, - atol=atol, - rtol=rtol, - return_intermediate=return_intermediate, - ) - - def sample( - self, - x, - steps=20, - t_start=None, - t_end=None, - order=2, - skip_type="time_uniform", - method="multistep", - lower_order_final=True, - denoise_to_zero=False, - solver_type="dpmsolver", - atol=0.0078, - rtol=0.05, - return_intermediate=False, - ): - """ - Compute the sample at time `t_end` by DPM-Solver, given the initial `x` at time `t_start`. - - ===================================================== - - We support the following algorithms for both noise prediction model and data prediction model: - - 'singlestep': - Singlestep DPM-Solver (i.e. "DPM-Solver-fast" in the paper), which combines different orders of singlestep DPM-Solver. - We combine all the singlestep solvers with order <= `order` to use up all the function evaluations (steps). - The total number of function evaluations (NFE) == `steps`. - Given a fixed NFE == `steps`, the sampling procedure is: - - If `order` == 1: - - Denote K = steps. We use K steps of DPM-Solver-1 (i.e. DDIM). - - If `order` == 2: - - Denote K = (steps // 2) + (steps % 2). We take K intermediate time steps for sampling. - - If steps % 2 == 0, we use K steps of singlestep DPM-Solver-2. - - If steps % 2 == 1, we use (K - 1) steps of singlestep DPM-Solver-2 and 1 step of DPM-Solver-1. - - If `order` == 3: - - Denote K = (steps // 3 + 1). We take K intermediate time steps for sampling. - - If steps % 3 == 0, we use (K - 2) steps of singlestep DPM-Solver-3, and 1 step of singlestep DPM-Solver-2 and 1 step of DPM-Solver-1. - - If steps % 3 == 1, we use (K - 1) steps of singlestep DPM-Solver-3 and 1 step of DPM-Solver-1. - - If steps % 3 == 2, we use (K - 1) steps of singlestep DPM-Solver-3 and 1 step of singlestep DPM-Solver-2. - - 'multistep': - Multistep DPM-Solver with the order of `order`. The total number of function evaluations (NFE) == `steps`. - We initialize the first `order` values by lower order multistep solvers. - Given a fixed NFE == `steps`, the sampling procedure is: - Denote K = steps. - - If `order` == 1: - - We use K steps of DPM-Solver-1 (i.e. DDIM). - - If `order` == 2: - - We firstly use 1 step of DPM-Solver-1, then use (K - 1) step of multistep DPM-Solver-2. - - If `order` == 3: - - We firstly use 1 step of DPM-Solver-1, then 1 step of multistep DPM-Solver-2, then (K - 2) step of multistep DPM-Solver-3. - - 'singlestep_fixed': - Fixed order singlestep DPM-Solver (i.e. DPM-Solver-1 or singlestep DPM-Solver-2 or singlestep DPM-Solver-3). - We use singlestep DPM-Solver-`order` for `order`=1 or 2 or 3, with total [`steps` // `order`] * `order` NFE. - - 'adaptive': - Adaptive step size DPM-Solver (i.e. "DPM-Solver-12" and "DPM-Solver-23" in the paper). - We ignore `steps` and use adaptive step size DPM-Solver with a higher order of `order`. - You can adjust the absolute tolerance `atol` and the relative tolerance `rtol` to balance the computatation costs - (NFE) and the sample quality. - - If `order` == 2, we use DPM-Solver-12 which combines DPM-Solver-1 and singlestep DPM-Solver-2. - - If `order` == 3, we use DPM-Solver-23 which combines singlestep DPM-Solver-2 and singlestep DPM-Solver-3. - - ===================================================== - - Some advices for choosing the algorithm: - - For **unconditional sampling** or **guided sampling with small guidance scale** by DPMs: - Use singlestep DPM-Solver or DPM-Solver++ ("DPM-Solver-fast" in the paper) with `order = 3`. - e.g., DPM-Solver: - >>> dpm_solver = DPM_Solver(model_fn, noise_schedule, algorithm_type="dpmsolver") - >>> x_sample = dpm_solver.sample(x, steps=steps, t_start=t_start, t_end=t_end, order=3, - skip_type='time_uniform', method='singlestep') - e.g., DPM-Solver++: - >>> dpm_solver = DPM_Solver(model_fn, noise_schedule, algorithm_type="dpmsolver++") - >>> x_sample = dpm_solver.sample(x, steps=steps, t_start=t_start, t_end=t_end, order=3, - skip_type='time_uniform', method='singlestep') - - For **guided sampling with large guidance scale** by DPMs: - Use multistep DPM-Solver with `algorithm_type="dpmsolver++"` and `order = 2`. - e.g. - >>> dpm_solver = DPM_Solver(model_fn, noise_schedule, algorithm_type="dpmsolver++") - >>> x_sample = dpm_solver.sample(x, steps=steps, t_start=t_start, t_end=t_end, order=2, - skip_type='time_uniform', method='multistep') - - We support three types of `skip_type`: - - 'logSNR': uniform logSNR for the time steps. **Recommended for low-resolutional images** - - 'time_uniform': uniform time for the time steps. **Recommended for high-resolutional images**. - - 'time_quadratic': quadratic time for the time steps. - - ===================================================== - Args: - x: A pytorch tensor. The initial value at time `t_start` - e.g. if `t_start` == T, then `x` is a sample from the standard normal distribution. - steps: A `int`. The total number of function evaluations (NFE). - t_start: A `float`. The starting time of the sampling. - If `T` is None, we use self.noise_schedule.T (default is 1.0). - t_end: A `float`. The ending time of the sampling. - If `t_end` is None, we use 1. / self.noise_schedule.total_N. - e.g. if total_N == 1000, we have `t_end` == 1e-3. - For discrete-time DPMs: - - We recommend `t_end` == 1. / self.noise_schedule.total_N. - For continuous-time DPMs: - - We recommend `t_end` == 1e-3 when `steps` <= 15; and `t_end` == 1e-4 when `steps` > 15. - order: A `int`. The order of DPM-Solver. - skip_type: A `str`. The type for the spacing of the time steps. 'time_uniform' or 'logSNR' or 'time_quadratic'. - method: A `str`. The method for sampling. 'singlestep' or 'multistep' or 'singlestep_fixed' or 'adaptive'. - denoise_to_zero: A `bool`. Whether to denoise to time 0 at the final step. - Default is `False`. If `denoise_to_zero` is `True`, the total NFE is (`steps` + 1). - - This trick is firstly proposed by DDPM (https://arxiv.org/abs/2006.11239) and - score_sde (https://arxiv.org/abs/2011.13456). Such trick can improve the FID - for diffusion models sampling by diffusion SDEs for low-resolutional images - (such as CIFAR-10). However, we observed that such trick does not matter for - high-resolutional images. As it needs an additional NFE, we do not recommend - it for high-resolutional images. - lower_order_final: A `bool`. Whether to use lower order solvers at the final steps. - Only valid for `method=multistep` and `steps < 15`. We empirically find that - this trick is a key to stabilizing the sampling by DPM-Solver with very few steps - (especially for steps <= 10). So we recommend to set it to be `True`. - solver_type: A `str`. The taylor expansion type for the solver. `dpmsolver` or `taylor`. We recommend `dpmsolver`. - atol: A `float`. The absolute tolerance of the adaptive step size solver. Valid when `method` == 'adaptive'. - rtol: A `float`. The relative tolerance of the adaptive step size solver. Valid when `method` == 'adaptive'. - return_intermediate: A `bool`. Whether to save the xt at each step. - When set to `True`, method returns a tuple (x0, intermediates); when set to False, method returns only x0. - Returns: - x_end: A pytorch tensor. The approximated solution at time `t_end`. - - """ - t_0 = 1.0 / self.noise_schedule.total_N if t_end is None else t_end - t_T = self.noise_schedule.T if t_start is None else t_start - assert ( - t_0 > 0 and t_T > 0 - ), "Time range needs to be greater than 0. For discrete-time DPMs, it needs to be in [1 / N, 1], where N is the length of betas array" - if return_intermediate: - assert method in [ - "multistep", - "singlestep", - "singlestep_fixed", - ], "Cannot use adaptive solver when saving intermediate values" - if self.correcting_xt_fn is not None: - assert method in [ - "multistep", - "singlestep", - "singlestep_fixed", - ], "Cannot use adaptive solver when correcting_xt_fn is not None" - device = x.device - intermediates = [] - with torch.no_grad(): - if method == "adaptive": - x = self.dpm_solver_adaptive( - x, - order=order, - t_T=t_T, - t_0=t_0, - atol=atol, - rtol=rtol, - solver_type=solver_type, - ) - elif method == "multistep": - assert steps >= order - timesteps = self.get_time_steps(skip_type=skip_type, t_T=t_T, t_0=t_0, N=steps, device=device) - assert timesteps.shape[0] - 1 == steps - # Init the initial values. - step = 0 - t = timesteps[step] - t_prev_list = [t] - model_prev_list = [self.model_fn(x, t)] - if self.correcting_xt_fn is not None: - x = self.correcting_xt_fn(x, t, step) - if return_intermediate: - intermediates.append(x) - # Init the first `order` values by lower order multistep DPM-Solver. - for step in range(1, order): - t = timesteps[step] - x = self.multistep_dpm_solver_update( - x, - model_prev_list, - t_prev_list, - t, - step, - solver_type=solver_type, - ) - if self.correcting_xt_fn is not None: - x = self.correcting_xt_fn(x, t, step) - if return_intermediate: - intermediates.append(x) - t_prev_list.append(t) - model_prev_list.append(self.model_fn(x, t)) - # Compute the remaining values by `order`-th order multistep DPM-Solver. - for step in range(order, steps + 1): - t = timesteps[step] - # We only use lower order for steps < 10 - if lower_order_final and steps < 10: - step_order = min(order, steps + 1 - step) - else: - step_order = order - x = self.multistep_dpm_solver_update( - x, - model_prev_list, - t_prev_list, - t, - step_order, - solver_type=solver_type, - ) - if self.correcting_xt_fn is not None: - x = self.correcting_xt_fn(x, t, step) - if return_intermediate: - intermediates.append(x) - for i in range(order - 1): - t_prev_list[i] = t_prev_list[i + 1] - model_prev_list[i] = model_prev_list[i + 1] - t_prev_list[-1] = t - # We do not need to evaluate the final model value. - if step < steps: - model_prev_list[-1] = self.model_fn(x, t) - elif method in ["singlestep", "singlestep_fixed"]: - if method == "singlestep": - ( - timesteps_outer, - orders, - ) = self.get_orders_and_timesteps_for_singlestep_solver( - steps=steps, - order=order, - skip_type=skip_type, - t_T=t_T, - t_0=t_0, - device=device, - ) - elif method == "singlestep_fixed": - K = steps // order - orders = [ - order, - ] * K - timesteps_outer = self.get_time_steps(skip_type=skip_type, t_T=t_T, t_0=t_0, N=K, device=device) - for step, order in enumerate(orders): - s, t = timesteps_outer[step], timesteps_outer[step + 1] - timesteps_inner = self.get_time_steps( - skip_type=skip_type, - t_T=s.item(), - t_0=t.item(), - N=order, - device=device, - ) - lambda_inner = self.noise_schedule.marginal_lambda(timesteps_inner) - h = lambda_inner[-1] - lambda_inner[0] - r1 = None if order <= 1 else (lambda_inner[1] - lambda_inner[0]) / h - r2 = None if order <= 2 else (lambda_inner[2] - lambda_inner[0]) / h - x = self.singlestep_dpm_solver_update(x, s, t, order, solver_type=solver_type, r1=r1, r2=r2) - if self.correcting_xt_fn is not None: - x = self.correcting_xt_fn(x, t, step) - if return_intermediate: - intermediates.append(x) - else: - raise ValueError("Got wrong method {}".format(method)) - if denoise_to_zero: - t = torch.ones((1,)).to(device) * t_0 - x = self.denoise_to_zero_fn(x, t) - if self.correcting_xt_fn is not None: - x = self.correcting_xt_fn(x, t, step + 1) - if return_intermediate: - intermediates.append(x) - if return_intermediate: - return x, intermediates - else: - return x - - -############################################################# -# other utility functions -############################################################# - - -def interpolate_fn(x, xp, yp): - """ - A piecewise linear function y = f(x), using xp and yp as keypoints. - We implement f(x) in a differentiable way (i.e. applicable for autograd). - The function f(x) is well-defined for all x-axis. (For x beyond the bounds of xp, we use the outmost points of xp to define the linear function.) - - Args: - x: PyTorch tensor with shape [N, C], where N is the batch size, C is the number of channels (we use C = 1 for DPM-Solver). - xp: PyTorch tensor with shape [C, K], where K is the number of keypoints. - yp: PyTorch tensor with shape [C, K]. - Returns: - The function values f(x), with shape [N, C]. - """ - N, K = x.shape[0], xp.shape[1] - all_x = torch.cat([x.unsqueeze(2), xp.unsqueeze(0).repeat((N, 1, 1))], dim=2) - sorted_all_x, x_indices = torch.sort(all_x, dim=2) - x_idx = torch.argmin(x_indices, dim=2) - cand_start_idx = x_idx - 1 - start_idx = torch.where( - torch.eq(x_idx, 0), - torch.tensor(1, device=x.device), - torch.where( - torch.eq(x_idx, K), - torch.tensor(K - 2, device=x.device), - cand_start_idx, - ), - ) - end_idx = torch.where(torch.eq(start_idx, cand_start_idx), start_idx + 2, start_idx + 1) - start_x = torch.gather(sorted_all_x, dim=2, index=start_idx.unsqueeze(2)).squeeze(2) - end_x = torch.gather(sorted_all_x, dim=2, index=end_idx.unsqueeze(2)).squeeze(2) - start_idx2 = torch.where( - torch.eq(x_idx, 0), - torch.tensor(0, device=x.device), - torch.where( - torch.eq(x_idx, K), - torch.tensor(K - 2, device=x.device), - cand_start_idx, - ), - ) - y_positions_expanded = yp.unsqueeze(0).expand(N, -1, -1) - start_y = torch.gather(y_positions_expanded, dim=2, index=start_idx2.unsqueeze(2)).squeeze(2) - end_y = torch.gather(y_positions_expanded, dim=2, index=(start_idx2 + 1).unsqueeze(2)).squeeze(2) - cand = start_y + (x - start_x) * (end_y - start_y) / (end_x - start_x) - return cand - - -def expand_dims(v, dims): - """ - Expand the tensor `v` to the dim `dims`. - - Args: - `v`: a PyTorch tensor with shape [N]. - `dim`: a `int`. - Returns: - a PyTorch tensor with shape [N, 1, 1, ..., 1] and the total dimension is `dims`. - """ - return v[(...,) + (None,) * (dims - 1)] diff --git a/TTS/tts/layers/tortoise/random_latent_generator.py b/TTS/tts/layers/tortoise/random_latent_generator.py deleted file mode 100644 index 9b39c1e4b22ee5a9ad84a1711a08a8530c4d76b7..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/random_latent_generator.py +++ /dev/null @@ -1,55 +0,0 @@ -import math - -import torch -import torch.nn as nn -import torch.nn.functional as F - - -def fused_leaky_relu(input, bias=None, negative_slope=0.2, scale=2**0.5): - if bias is not None: - rest_dim = [1] * (input.ndim - bias.ndim - 1) - return ( - F.leaky_relu( - input + bias.view(1, bias.shape[0], *rest_dim), - negative_slope=negative_slope, - ) - * scale - ) - else: - return F.leaky_relu(input, negative_slope=0.2) * scale - - -class EqualLinear(nn.Module): - def __init__(self, in_dim, out_dim, bias=True, bias_init=0, lr_mul=1): - super().__init__() - self.weight = nn.Parameter(torch.randn(out_dim, in_dim).div_(lr_mul)) - if bias: - self.bias = nn.Parameter(torch.zeros(out_dim).fill_(bias_init)) - else: - self.bias = None - self.scale = (1 / math.sqrt(in_dim)) * lr_mul - self.lr_mul = lr_mul - - def forward(self, input): - out = F.linear(input, self.weight * self.scale) - out = fused_leaky_relu(out, self.bias * self.lr_mul) - return out - - -class RandomLatentConverter(nn.Module): - def __init__(self, channels): - super().__init__() - self.layers = nn.Sequential( - *[EqualLinear(channels, channels, lr_mul=0.1) for _ in range(5)], nn.Linear(channels, channels) - ) - self.channels = channels - - def forward(self, ref): - r = torch.randn(ref.shape[0], self.channels, device=ref.device) - y = self.layers(r) - return y - - -if __name__ == "__main__": - model = RandomLatentConverter(512) - model(torch.randn(5, 512)) diff --git a/TTS/tts/layers/tortoise/tokenizer.py b/TTS/tts/layers/tortoise/tokenizer.py deleted file mode 100644 index 3e544ee7e2b76137dc2de2b0e10e53aa04d90827..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/tokenizer.py +++ /dev/null @@ -1,34 +0,0 @@ -import os - -import torch -from tokenizers import Tokenizer - -from TTS.tts.utils.text.cleaners import english_cleaners - -DEFAULT_VOCAB_FILE = os.path.join( - os.path.dirname(os.path.realpath(__file__)), "../../utils/assets/tortoise/tokenizer.json" -) - - -class VoiceBpeTokenizer: - def __init__(self, vocab_file=DEFAULT_VOCAB_FILE): - if vocab_file is not None: - self.tokenizer = Tokenizer.from_file(vocab_file) - - def preprocess_text(self, txt): - txt = english_cleaners(txt) - return txt - - def encode(self, txt): - txt = self.preprocess_text(txt) - txt = txt.replace(" ", "[SPACE]") - return self.tokenizer.encode(txt).ids - - def decode(self, seq): - if isinstance(seq, torch.Tensor): - seq = seq.cpu().numpy() - txt = self.tokenizer.decode(seq, skip_special_tokens=False).replace(" ", "") - txt = txt.replace("[SPACE]", " ") - txt = txt.replace("[STOP]", "") - txt = txt.replace("[UNK]", "") - return txt diff --git a/TTS/tts/layers/tortoise/transformer.py b/TTS/tts/layers/tortoise/transformer.py deleted file mode 100644 index 70d46aa3e03626d8123700a5c2541d2d1a7314b4..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/transformer.py +++ /dev/null @@ -1,229 +0,0 @@ -import torch -import torch.nn.functional as F -from einops import rearrange -from torch import nn - -# helpers - - -def exists(val): - return val is not None - - -def default(val, d): - return val if exists(val) else d - - -def cast_tuple(val, depth=1): - if isinstance(val, list): - val = tuple(val) - return val if isinstance(val, tuple) else (val,) * depth - - -def max_neg_value(t): - return -torch.finfo(t.dtype).max - - -def stable_softmax(t, dim=-1, alpha=32**2): - t = t / alpha - t = t - torch.amax(t, dim=dim, keepdim=True).detach() - return (t * alpha).softmax(dim=dim) - - -def route_args(router, args, depth): - routed_args = [(dict(), dict()) for _ in range(depth)] - matched_keys = [key for key in args.keys() if key in router] - - for key in matched_keys: - val = args[key] - for depth, ((f_args, g_args), routes) in enumerate(zip(routed_args, router[key])): - new_f_args, new_g_args = map(lambda route: ({key: val} if route else {}), routes) - routed_args[depth] = ({**f_args, **new_f_args}, {**g_args, **new_g_args}) - return routed_args - - -# classes -class SequentialSequence(nn.Module): - def __init__(self, layers, args_route={}, layer_dropout=0.0): - super().__init__() - assert all( - len(route) == len(layers) for route in args_route.values() - ), "each argument route map must have the same depth as the number of sequential layers" - self.layers = layers - self.args_route = args_route - self.layer_dropout = layer_dropout - - def forward(self, x, **kwargs): - args = route_args(self.args_route, kwargs, len(self.layers)) - layers_and_args = list(zip(self.layers, args)) - - for (f, g), (f_args, g_args) in layers_and_args: - x = x + f(x, **f_args) - x = x + g(x, **g_args) - return x - - -class DivideMax(nn.Module): - def __init__(self, dim): - super().__init__() - self.dim = dim - - def forward(self, x): - maxes = x.amax(dim=self.dim, keepdim=True).detach() - return x / maxes - - -# https://arxiv.org/abs/2103.17239 -class LayerScale(nn.Module): - def __init__(self, dim, depth, fn): - super().__init__() - if depth <= 18: - init_eps = 0.1 - elif depth > 18 and depth <= 24: - init_eps = 1e-5 - else: - init_eps = 1e-6 - - scale = torch.zeros(1, 1, dim).fill_(init_eps) - self.scale = nn.Parameter(scale) - self.fn = fn - - def forward(self, x, **kwargs): - return self.fn(x, **kwargs) * self.scale - - -# layer norm - - -class PreNorm(nn.Module): - def __init__(self, dim, fn, sandwich=False): - super().__init__() - self.norm = nn.LayerNorm(dim) - self.norm_out = nn.LayerNorm(dim) if sandwich else nn.Identity() - self.fn = fn - - def forward(self, x, **kwargs): - x = self.norm(x) - x = self.fn(x, **kwargs) - return self.norm_out(x) - - -# feed forward - - -class GEGLU(nn.Module): - def forward(self, x): - x, gates = x.chunk(2, dim=-1) - return x * F.gelu(gates) - - -class FeedForward(nn.Module): - def __init__(self, dim, dropout=0.0, mult=4.0): - super().__init__() - self.net = nn.Sequential( - nn.Linear(dim, dim * mult * 2), - GEGLU(), - nn.Dropout(dropout), - nn.Linear(dim * mult, dim), - ) - - def forward(self, x): - return self.net(x) - - -# Attention - - -class Attention(nn.Module): - def __init__(self, dim, seq_len, causal=True, heads=8, dim_head=64, dropout=0.0): - super().__init__() - inner_dim = dim_head * heads - self.heads = heads - self.seq_len = seq_len - self.scale = dim_head**-0.5 - - self.causal = causal - - self.to_qkv = nn.Linear(dim, inner_dim * 3, bias=False) - self.to_out = nn.Sequential(nn.Linear(inner_dim, dim), nn.Dropout(dropout)) - - def forward(self, x, mask=None): - b, n, _, h, device = *x.shape, self.heads, x.device - softmax = torch.softmax - - qkv = self.to_qkv(x).chunk(3, dim=-1) - q, k, v = map(lambda t: rearrange(t, "b n (h d) -> b h n d", h=h), qkv) - - q = q * self.scale - - dots = torch.einsum("b h i d, b h j d -> b h i j", q, k) - mask_value = max_neg_value(dots) - - if exists(mask): - mask = rearrange(mask, "b j -> b () () j") - dots.masked_fill_(~mask, mask_value) - del mask - - if self.causal: - i, j = dots.shape[-2:] - mask = torch.ones(i, j, device=device).triu_(j - i + 1).bool() - dots.masked_fill_(mask, mask_value) - - attn = softmax(dots, dim=-1) - - out = torch.einsum("b h i j, b h j d -> b h i d", attn, v) - out = rearrange(out, "b h n d -> b n (h d)") - out = self.to_out(out) - return out - - -# main transformer class -class Transformer(nn.Module): - def __init__( - self, - *, - dim, - depth, - seq_len, - causal=True, - heads=8, - dim_head=64, - ff_mult=4, - attn_dropout=0.0, - ff_dropout=0.0, - sparse_attn=False, - sandwich_norm=False, - ): - super().__init__() - layers = nn.ModuleList([]) - sparse_layer = cast_tuple(sparse_attn, depth) - - for ind, sparse_attn in zip(range(depth), sparse_layer): - attn = Attention( - dim, - causal=causal, - seq_len=seq_len, - heads=heads, - dim_head=dim_head, - dropout=attn_dropout, - ) - - ff = FeedForward(dim, mult=ff_mult, dropout=ff_dropout) - - layers.append( - nn.ModuleList( - [ - LayerScale(dim, ind + 1, PreNorm(dim, attn, sandwich=sandwich_norm)), - LayerScale(dim, ind + 1, PreNorm(dim, ff, sandwich=sandwich_norm)), - ] - ) - ) - - execute_type = SequentialSequence - route_attn = ((True, False),) * depth - attn_route_map = {"mask": route_attn} - - self.layers = execute_type(layers, args_route=attn_route_map) - - def forward(self, x, **kwargs): - return self.layers(x, **kwargs) diff --git a/TTS/tts/layers/tortoise/utils.py b/TTS/tts/layers/tortoise/utils.py deleted file mode 100644 index 810a9e7f7a8ab4a6a48974367020961f9a9967f4..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/utils.py +++ /dev/null @@ -1,46 +0,0 @@ -import os -from urllib import request - -from tqdm import tqdm - -DEFAULT_MODELS_DIR = os.path.join(os.path.expanduser("~"), ".cache", "tortoise", "models") -MODELS_DIR = os.environ.get("TORTOISE_MODELS_DIR", DEFAULT_MODELS_DIR) -MODELS_DIR = "/data/speech_synth/models/" -MODELS = { - "autoregressive.pth": "https://huggingface.co/jbetker/tortoise-tts-v2/resolve/main/.models/autoregressive.pth", - "classifier.pth": "https://huggingface.co/jbetker/tortoise-tts-v2/resolve/main/.models/classifier.pth", - "clvp2.pth": "https://huggingface.co/jbetker/tortoise-tts-v2/resolve/main/.models/clvp2.pth", - "diffusion_decoder.pth": "https://huggingface.co/jbetker/tortoise-tts-v2/resolve/main/.models/diffusion_decoder.pth", - "vocoder.pth": "https://huggingface.co/jbetker/tortoise-tts-v2/resolve/main/.models/vocoder.pth", - "rlg_auto.pth": "https://huggingface.co/jbetker/tortoise-tts-v2/resolve/main/.models/rlg_auto.pth", - "rlg_diffuser.pth": "https://huggingface.co/jbetker/tortoise-tts-v2/resolve/main/.models/rlg_diffuser.pth", -} - - -def download_models(specific_models=None): - """ - Call to download all the models that Tortoise uses. - """ - os.makedirs(MODELS_DIR, exist_ok=True) - for model_name, url in MODELS.items(): - if specific_models is not None and model_name not in specific_models: - continue - model_path = os.path.join(MODELS_DIR, model_name) - if os.path.exists(model_path): - continue - print(f"Downloading {model_name} from {url}...") - with tqdm(unit="B", unit_scale=True, unit_divisor=1024, miniters=1) as t: - request.urlretrieve(url, model_path, lambda nb, bs, fs, t=t: t.update(nb * bs - t.n)) - print("Done.") - - -def get_model_path(model_name, models_dir=MODELS_DIR): - """ - Get path to given model, download it if it doesn't exist. - """ - if model_name not in MODELS: - raise ValueError(f"Model {model_name} not found in available models.") - model_path = os.path.join(models_dir, model_name) - if not os.path.exists(model_path) and models_dir == MODELS_DIR: - download_models([model_name]) - return model_path diff --git a/TTS/tts/layers/tortoise/vocoder.py b/TTS/tts/layers/tortoise/vocoder.py deleted file mode 100644 index 47365eb58d4d8ab563fe4785fc99cb4f5493b37f..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/vocoder.py +++ /dev/null @@ -1,401 +0,0 @@ -import json -from dataclasses import dataclass -from enum import Enum -from typing import Callable, Optional - -import torch -import torch.nn as nn -import torch.nn.functional as F - -MAX_WAV_VALUE = 32768.0 - - -class KernelPredictor(torch.nn.Module): - """Kernel predictor for the location-variable convolutions""" - - def __init__( - self, - cond_channels, - conv_in_channels, - conv_out_channels, - conv_layers, - conv_kernel_size=3, - kpnet_hidden_channels=64, - kpnet_conv_size=3, - kpnet_dropout=0.0, - kpnet_nonlinear_activation="LeakyReLU", - kpnet_nonlinear_activation_params={"negative_slope": 0.1}, - ): - """ - Args: - cond_channels (int): number of channel for the conditioning sequence, - conv_in_channels (int): number of channel for the input sequence, - conv_out_channels (int): number of channel for the output sequence, - conv_layers (int): number of layers - """ - super().__init__() - - self.conv_in_channels = conv_in_channels - self.conv_out_channels = conv_out_channels - self.conv_kernel_size = conv_kernel_size - self.conv_layers = conv_layers - - kpnet_kernel_channels = conv_in_channels * conv_out_channels * conv_kernel_size * conv_layers # l_w - kpnet_bias_channels = conv_out_channels * conv_layers # l_b - - self.input_conv = nn.Sequential( - nn.utils.weight_norm(nn.Conv1d(cond_channels, kpnet_hidden_channels, 5, padding=2, bias=True)), - getattr(nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - ) - - self.residual_convs = nn.ModuleList() - padding = (kpnet_conv_size - 1) // 2 - for _ in range(3): - self.residual_convs.append( - nn.Sequential( - nn.Dropout(kpnet_dropout), - nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_hidden_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ), - getattr(nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_hidden_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ), - getattr(nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - ) - ) - self.kernel_conv = nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_kernel_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ) - self.bias_conv = nn.utils.weight_norm( - nn.Conv1d( - kpnet_hidden_channels, - kpnet_bias_channels, - kpnet_conv_size, - padding=padding, - bias=True, - ) - ) - - def forward(self, c): - """ - Args: - c (Tensor): the conditioning sequence (batch, cond_channels, cond_length) - """ - batch, _, cond_length = c.shape - c = self.input_conv(c) - for residual_conv in self.residual_convs: - residual_conv.to(c.device) - c = c + residual_conv(c) - k = self.kernel_conv(c) - b = self.bias_conv(c) - kernels = k.contiguous().view( - batch, - self.conv_layers, - self.conv_in_channels, - self.conv_out_channels, - self.conv_kernel_size, - cond_length, - ) - bias = b.contiguous().view( - batch, - self.conv_layers, - self.conv_out_channels, - cond_length, - ) - - return kernels, bias - - def remove_weight_norm(self): - nn.utils.remove_weight_norm(self.input_conv[0]) - nn.utils.remove_weight_norm(self.kernel_conv) - nn.utils.remove_weight_norm(self.bias_conv) - for block in self.residual_convs: - nn.utils.remove_weight_norm(block[1]) - nn.utils.remove_weight_norm(block[3]) - - -class LVCBlock(torch.nn.Module): - """the location-variable convolutions""" - - def __init__( - self, - in_channels, - cond_channels, - stride, - dilations=[1, 3, 9, 27], - lReLU_slope=0.2, - conv_kernel_size=3, - cond_hop_length=256, - kpnet_hidden_channels=64, - kpnet_conv_size=3, - kpnet_dropout=0.0, - ): - super().__init__() - - self.cond_hop_length = cond_hop_length - self.conv_layers = len(dilations) - self.conv_kernel_size = conv_kernel_size - - self.kernel_predictor = KernelPredictor( - cond_channels=cond_channels, - conv_in_channels=in_channels, - conv_out_channels=2 * in_channels, - conv_layers=len(dilations), - conv_kernel_size=conv_kernel_size, - kpnet_hidden_channels=kpnet_hidden_channels, - kpnet_conv_size=kpnet_conv_size, - kpnet_dropout=kpnet_dropout, - kpnet_nonlinear_activation_params={"negative_slope": lReLU_slope}, - ) - - self.convt_pre = nn.Sequential( - nn.LeakyReLU(lReLU_slope), - nn.utils.weight_norm( - nn.ConvTranspose1d( - in_channels, - in_channels, - 2 * stride, - stride=stride, - padding=stride // 2 + stride % 2, - output_padding=stride % 2, - ) - ), - ) - - self.conv_blocks = nn.ModuleList() - for dilation in dilations: - self.conv_blocks.append( - nn.Sequential( - nn.LeakyReLU(lReLU_slope), - nn.utils.weight_norm( - nn.Conv1d( - in_channels, - in_channels, - conv_kernel_size, - padding=dilation * (conv_kernel_size - 1) // 2, - dilation=dilation, - ) - ), - nn.LeakyReLU(lReLU_slope), - ) - ) - - def forward(self, x, c): - """forward propagation of the location-variable convolutions. - Args: - x (Tensor): the input sequence (batch, in_channels, in_length) - c (Tensor): the conditioning sequence (batch, cond_channels, cond_length) - - Returns: - Tensor: the output sequence (batch, in_channels, in_length) - """ - _, in_channels, _ = x.shape # (B, c_g, L') - - x = self.convt_pre(x) # (B, c_g, stride * L') - kernels, bias = self.kernel_predictor(c) - - for i, conv in enumerate(self.conv_blocks): - output = conv(x) # (B, c_g, stride * L') - - k = kernels[:, i, :, :, :, :] # (B, 2 * c_g, c_g, kernel_size, cond_length) - b = bias[:, i, :, :] # (B, 2 * c_g, cond_length) - - output = self.location_variable_convolution( - output, k, b, hop_size=self.cond_hop_length - ) # (B, 2 * c_g, stride * L'): LVC - x = x + torch.sigmoid(output[:, :in_channels, :]) * torch.tanh( - output[:, in_channels:, :] - ) # (B, c_g, stride * L'): GAU - - return x - - def location_variable_convolution(self, x, kernel, bias, dilation=1, hop_size=256): - """perform location-variable convolution operation on the input sequence (x) using the local convolution kernl. - Time: 414 μs ± 309 ns per loop (mean ± std. dev. of 7 runs, 1000 loops each), test on NVIDIA V100. - Args: - x (Tensor): the input sequence (batch, in_channels, in_length). - kernel (Tensor): the local convolution kernel (batch, in_channel, out_channels, kernel_size, kernel_length) - bias (Tensor): the bias for the local convolution (batch, out_channels, kernel_length) - dilation (int): the dilation of convolution. - hop_size (int): the hop_size of the conditioning sequence. - Returns: - (Tensor): the output sequence after performing local convolution. (batch, out_channels, in_length). - """ - batch, _, in_length = x.shape - batch, _, out_channels, kernel_size, kernel_length = kernel.shape - assert in_length == (kernel_length * hop_size), "length of (x, kernel) is not matched" - - padding = dilation * int((kernel_size - 1) / 2) - x = F.pad(x, (padding, padding), "constant", 0) # (batch, in_channels, in_length + 2*padding) - x = x.unfold(2, hop_size + 2 * padding, hop_size) # (batch, in_channels, kernel_length, hop_size + 2*padding) - - if hop_size < dilation: - x = F.pad(x, (0, dilation), "constant", 0) - x = x.unfold( - 3, dilation, dilation - ) # (batch, in_channels, kernel_length, (hop_size + 2*padding)/dilation, dilation) - x = x[:, :, :, :, :hop_size] - x = x.transpose(3, 4) # (batch, in_channels, kernel_length, dilation, (hop_size + 2*padding)/dilation) - x = x.unfold(4, kernel_size, 1) # (batch, in_channels, kernel_length, dilation, _, kernel_size) - - o = torch.einsum("bildsk,biokl->bolsd", x, kernel) - o = o.to(memory_format=torch.channels_last_3d) - bias = bias.unsqueeze(-1).unsqueeze(-1).to(memory_format=torch.channels_last_3d) - o = o + bias - o = o.contiguous().view(batch, out_channels, -1) - - return o - - def remove_weight_norm(self): - self.kernel_predictor.remove_weight_norm() - nn.utils.remove_weight_norm(self.convt_pre[1]) - for block in self.conv_blocks: - nn.utils.remove_weight_norm(block[1]) - - -class UnivNetGenerator(nn.Module): - """ - UnivNet Generator - - Originally from https://github.com/mindslab-ai/univnet/blob/master/model/generator.py. - """ - - def __init__( - self, - noise_dim=64, - channel_size=32, - dilations=[1, 3, 9, 27], - strides=[8, 8, 4], - lReLU_slope=0.2, - kpnet_conv_size=3, - # Below are MEL configurations options that this generator requires. - hop_length=256, - n_mel_channels=100, - ): - super(UnivNetGenerator, self).__init__() - self.mel_channel = n_mel_channels - self.noise_dim = noise_dim - self.hop_length = hop_length - channel_size = channel_size - kpnet_conv_size = kpnet_conv_size - - self.res_stack = nn.ModuleList() - hop_length = 1 - for stride in strides: - hop_length = stride * hop_length - self.res_stack.append( - LVCBlock( - channel_size, - n_mel_channels, - stride=stride, - dilations=dilations, - lReLU_slope=lReLU_slope, - cond_hop_length=hop_length, - kpnet_conv_size=kpnet_conv_size, - ) - ) - - self.conv_pre = nn.utils.weight_norm(nn.Conv1d(noise_dim, channel_size, 7, padding=3, padding_mode="reflect")) - - self.conv_post = nn.Sequential( - nn.LeakyReLU(lReLU_slope), - nn.utils.weight_norm(nn.Conv1d(channel_size, 1, 7, padding=3, padding_mode="reflect")), - nn.Tanh(), - ) - - def forward(self, c, z): - """ - Args: - c (Tensor): the conditioning sequence of mel-spectrogram (batch, mel_channels, in_length) - z (Tensor): the noise sequence (batch, noise_dim, in_length) - - """ - z = self.conv_pre(z) # (B, c_g, L) - - for res_block in self.res_stack: - res_block.to(z.device) - z = res_block(z, c) # (B, c_g, L * s_0 * ... * s_i) - - z = self.conv_post(z) # (B, 1, L * 256) - - return z - - def eval(self, inference=False): - super(UnivNetGenerator, self).eval() - # don't remove weight norm while validation in training loop - if inference: - self.remove_weight_norm() - - def remove_weight_norm(self): - nn.utils.remove_weight_norm(self.conv_pre) - - for layer in self.conv_post: - if len(layer.state_dict()) != 0: - nn.utils.remove_weight_norm(layer) - - for res_block in self.res_stack: - res_block.remove_weight_norm() - - def inference(self, c, z=None): - # pad input mel with zeros to cut artifact - # see https://github.com/seungwonpark/melgan/issues/8 - zero = torch.full((c.shape[0], self.mel_channel, 10), -11.5129).to(c.device) - mel = torch.cat((c, zero), dim=2) - - if z is None: - z = torch.randn(c.shape[0], self.noise_dim, mel.size(2)).to(mel.device) - - audio = self.forward(mel, z) - audio = audio[:, :, : -(self.hop_length * 10)] - audio = audio.clamp(min=-1, max=1) - return audio - - -@dataclass -class VocType: - constructor: Callable[[], nn.Module] - model_path: str - subkey: Optional[str] = None - - def optionally_index(self, model_dict): - if self.subkey is not None: - return model_dict[self.subkey] - return model_dict - - -class VocConf(Enum): - Univnet = VocType(UnivNetGenerator, "vocoder.pth", "model_g") - - -if __name__ == "__main__": - model = UnivNetGenerator() - - c = torch.randn(3, 100, 10) - z = torch.randn(3, 64, 10) - print(c.shape) - - y = model(c, z) - print(y.shape) - assert y.shape == torch.Size([3, 1, 2560]) - - pytorch_total_params = sum(p.numel() for p in model.parameters() if p.requires_grad) - print(pytorch_total_params) diff --git a/TTS/tts/layers/tortoise/wav2vec_alignment.py b/TTS/tts/layers/tortoise/wav2vec_alignment.py deleted file mode 100644 index 47456cc5ac41b7ed9522fe543affc8482218730c..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/wav2vec_alignment.py +++ /dev/null @@ -1,150 +0,0 @@ -import torch -import torchaudio -from transformers import Wav2Vec2CTCTokenizer, Wav2Vec2FeatureExtractor, Wav2Vec2ForCTC - - -def max_alignment(s1, s2, skip_character="~", record=None): - """ - A clever function that aligns s1 to s2 as best it can. Wherever a character from s1 is not found in s2, a '~' is - used to replace that character. - - Finally got to use my DP skills! - """ - if record is None: - record = {} - assert skip_character not in s1, f"Found the skip character {skip_character} in the provided string, {s1}" - if len(s1) == 0: - return "" - if len(s2) == 0: - return skip_character * len(s1) - if s1 == s2: - return s1 - if s1[0] == s2[0]: - return s1[0] + max_alignment(s1[1:], s2[1:], skip_character, record) - - take_s1_key = (len(s1), len(s2) - 1) - if take_s1_key in record: - take_s1, take_s1_score = record[take_s1_key] - else: - take_s1 = max_alignment(s1, s2[1:], skip_character, record) - take_s1_score = len(take_s1.replace(skip_character, "")) - record[take_s1_key] = (take_s1, take_s1_score) - - take_s2_key = (len(s1) - 1, len(s2)) - if take_s2_key in record: - take_s2, take_s2_score = record[take_s2_key] - else: - take_s2 = max_alignment(s1[1:], s2, skip_character, record) - take_s2_score = len(take_s2.replace(skip_character, "")) - record[take_s2_key] = (take_s2, take_s2_score) - - return take_s1 if take_s1_score > take_s2_score else skip_character + take_s2 - - -class Wav2VecAlignment: - """ - Uses wav2vec2 to perform audio<->text alignment. - """ - - def __init__(self, device="cuda"): - self.model = Wav2Vec2ForCTC.from_pretrained("jbetker/wav2vec2-large-robust-ft-libritts-voxpopuli").cpu() - self.feature_extractor = Wav2Vec2FeatureExtractor.from_pretrained("facebook/wav2vec2-large-960h") - self.tokenizer = Wav2Vec2CTCTokenizer.from_pretrained("jbetker/tacotron-symbols") - self.device = device - - def align(self, audio, expected_text, audio_sample_rate=24000): - orig_len = audio.shape[-1] - - with torch.no_grad(): - self.model = self.model.to(self.device) - audio = audio.to(self.device) - audio = torchaudio.functional.resample(audio, audio_sample_rate, 16000) - clip_norm = (audio - audio.mean()) / torch.sqrt(audio.var() + 1e-7) - logits = self.model(clip_norm).logits - self.model = self.model.cpu() - - logits = logits[0] - pred_string = self.tokenizer.decode(logits.argmax(-1).tolist()) - - fixed_expectation = max_alignment(expected_text.lower(), pred_string) - w2v_compression = orig_len // logits.shape[0] - expected_tokens = self.tokenizer.encode(fixed_expectation) - expected_chars = list(fixed_expectation) - if len(expected_tokens) == 1: - return [0] # The alignment is simple; there is only one token. - expected_tokens.pop(0) # The first token is a given. - expected_chars.pop(0) - - alignments = [0] - - def pop_till_you_win(): - if len(expected_tokens) == 0: - return None - popped = expected_tokens.pop(0) - popped_char = expected_chars.pop(0) - while popped_char == "~": - alignments.append(-1) - if len(expected_tokens) == 0: - return None - popped = expected_tokens.pop(0) - popped_char = expected_chars.pop(0) - return popped - - next_expected_token = pop_till_you_win() - for i, logit in enumerate(logits): - top = logit.argmax() - if next_expected_token == top: - alignments.append(i * w2v_compression) - if len(expected_tokens) > 0: - next_expected_token = pop_till_you_win() - else: - break - - pop_till_you_win() - if not (len(expected_tokens) == 0 and len(alignments) == len(expected_text)): - torch.save([audio, expected_text], "alignment_debug.pth") - assert False, ( - "Something went wrong with the alignment algorithm. I've dumped a file, 'alignment_debug.pth' to" - "your current working directory. Please report this along with the file so it can get fixed." - ) - - # Now fix up alignments. Anything with -1 should be interpolated. - alignments.append(orig_len) # This'll get removed but makes the algorithm below more readable. - for i in range(len(alignments)): - if alignments[i] == -1: - for j in range(i + 1, len(alignments)): - if alignments[j] != -1: - next_found_token = j - break - for j in range(i, next_found_token): - gap = alignments[next_found_token] - alignments[i - 1] - alignments[j] = (j - i + 1) * gap // (next_found_token - i + 1) + alignments[i - 1] - - return alignments[:-1] - - def redact(self, audio, expected_text, audio_sample_rate=24000): - if "[" not in expected_text: - return audio - splitted = expected_text.split("[") - fully_split = [splitted[0]] - for spl in splitted[1:]: - assert "]" in spl, 'Every "[" character must be paired with a "]" with no nesting.' - fully_split.extend(spl.split("]")) - - # At this point, fully_split is a list of strings, with every other string being something that should be redacted. - non_redacted_intervals = [] - last_point = 0 - for i in range(len(fully_split)): - if i % 2 == 0: - end_interval = max(0, last_point + len(fully_split[i]) - 1) - non_redacted_intervals.append((last_point, end_interval)) - last_point += len(fully_split[i]) - - bare_text = "".join(fully_split) - alignments = self.align(audio, bare_text, audio_sample_rate) - - output_audio = [] - for nri in non_redacted_intervals: - start, stop = nri - output_audio.append(audio[:, alignments[start] : alignments[stop]]) - return torch.cat(output_audio, dim=-1) diff --git a/TTS/tts/layers/tortoise/xtransformers.py b/TTS/tts/layers/tortoise/xtransformers.py deleted file mode 100644 index 1eb3f77269c0e7b718d350217796ec704543c681..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/tortoise/xtransformers.py +++ /dev/null @@ -1,1259 +0,0 @@ -import math -from collections import namedtuple -from functools import partial -from inspect import isfunction - -import torch -import torch.nn.functional as F -from einops import rearrange, repeat -from torch import einsum, nn - -DEFAULT_DIM_HEAD = 64 - -Intermediates = namedtuple("Intermediates", ["pre_softmax_attn", "post_softmax_attn"]) - -LayerIntermediates = namedtuple( - "Intermediates", - [ - "hiddens", - "attn_intermediates", - "past_key_values", - ], -) - - -# helpers - - -def exists(val): - return val is not None - - -def default(val, d): - if exists(val): - return val - return d() if isfunction(d) else d - - -def cast_tuple(val, depth): - return val if isinstance(val, tuple) else (val,) * depth - - -class always: - def __init__(self, val): - self.val = val - - def __call__(self, *args, **kwargs): - return self.val - - -class not_equals: - def __init__(self, val): - self.val = val - - def __call__(self, x, *args, **kwargs): - return x != self.val - - -class equals: - def __init__(self, val): - self.val = val - - def __call__(self, x, *args, **kwargs): - return x == self.val - - -def max_neg_value(tensor): - return -torch.finfo(tensor.dtype).max - - -def l2norm(t): - return F.normalize(t, p=2, dim=-1) - - -# init helpers - - -def init_zero_(layer): - nn.init.constant_(layer.weight, 0.0) - if exists(layer.bias): - nn.init.constant_(layer.bias, 0.0) - - -# keyword argument helpers - - -def pick_and_pop(keys, d): - values = list(map(lambda key: d.pop(key), keys)) - return dict(zip(keys, values)) - - -def group_dict_by_key(cond, d): - return_val = [dict(), dict()] - for key in d.keys(): - match = bool(cond(key)) - ind = int(not match) - return_val[ind][key] = d[key] - return (*return_val,) - - -def string_begins_with(prefix, str): - return str.startswith(prefix) - - -def group_by_key_prefix(prefix, d): - return group_dict_by_key(partial(string_begins_with, prefix), d) - - -def groupby_prefix_and_trim(prefix, d): - kwargs_with_prefix, kwargs = group_dict_by_key(partial(string_begins_with, prefix), d) - kwargs_without_prefix = dict(map(lambda x: (x[0][len(prefix) :], x[1]), tuple(kwargs_with_prefix.items()))) - return kwargs_without_prefix, kwargs - - -# activations - - -class ReluSquared(nn.Module): - def forward(self, x): - return F.relu(x) ** 2 - - -# positional embeddings - - -class AbsolutePositionalEmbedding(nn.Module): - def __init__(self, dim, max_seq_len): - super().__init__() - self.scale = dim**-0.5 - self.emb = nn.Embedding(max_seq_len, dim) - - def forward(self, x): - n = torch.arange(x.shape[1], device=x.device) - pos_emb = self.emb(n) - pos_emb = rearrange(pos_emb, "n d -> () n d") - return pos_emb * self.scale - - -class FixedPositionalEmbedding(nn.Module): - def __init__(self, dim): - super().__init__() - inv_freq = 1.0 / (10000 ** (torch.arange(0, dim, 2).float() / dim)) - self.register_buffer("inv_freq", inv_freq) - - def forward(self, x, seq_dim=1, offset=0): - t = torch.arange(x.shape[seq_dim], device=x.device).type_as(self.inv_freq) + offset - sinusoid_inp = torch.einsum("i , j -> i j", t, self.inv_freq) - emb = torch.cat((sinusoid_inp.sin(), sinusoid_inp.cos()), dim=-1) - return rearrange(emb, "n d -> () n d") - - -class RelativePositionBias(nn.Module): - def __init__(self, scale, causal=False, num_buckets=32, max_distance=128, heads=8): - super().__init__() - self.scale = scale - self.causal = causal - self.num_buckets = num_buckets - self.max_distance = max_distance - self.relative_attention_bias = nn.Embedding(num_buckets, heads) - - @staticmethod - def _relative_position_bucket(relative_position, causal=True, num_buckets=32, max_distance=128): - ret = 0 - n = -relative_position - if not causal: - num_buckets //= 2 - ret += (n < 0).long() * num_buckets - n = torch.abs(n) - else: - n = torch.max(n, torch.zeros_like(n)) - - max_exact = num_buckets // 2 - is_small = n < max_exact - - val_if_large = ( - max_exact - + (torch.log(n.float() / max_exact) / math.log(max_distance / max_exact) * (num_buckets - max_exact)).long() - ) - val_if_large = torch.min(val_if_large, torch.full_like(val_if_large, num_buckets - 1)) - - ret += torch.where(is_small, n, val_if_large) - return ret - - def forward(self, qk_dots): - i, j, device = *qk_dots.shape[-2:], qk_dots.device - q_pos = torch.arange(i, dtype=torch.long, device=device) - k_pos = torch.arange(j, dtype=torch.long, device=device) - rel_pos = k_pos[None, :] - q_pos[:, None] - rp_bucket = self._relative_position_bucket( - rel_pos, causal=self.causal, num_buckets=self.num_buckets, max_distance=self.max_distance - ) - values = self.relative_attention_bias(rp_bucket) - bias = rearrange(values, "i j h -> () h i j") - return qk_dots + (bias * self.scale) - - -class AlibiPositionalBias(nn.Module): - def __init__(self, heads, **kwargs): - super().__init__() - self.heads = heads - slopes = torch.Tensor(self._get_slopes(heads)) - slopes = rearrange(slopes, "h -> () h () ()") - self.register_buffer("slopes", slopes, persistent=False) - self.register_buffer("bias", None, persistent=False) - - @staticmethod - def _get_slopes(heads): - def get_slopes_power_of_2(n): - start = 2 ** (-(2 ** -(math.log2(n) - 3))) - ratio = start - return [start * ratio**i for i in range(n)] - - if math.log2(heads).is_integer(): - return get_slopes_power_of_2(heads) - - closest_power_of_2 = 2 ** math.floor(math.log2(heads)) - return ( - get_slopes_power_of_2(closest_power_of_2) - + get_slopes_power_of_2(2 * closest_power_of_2)[0::2][: heads - closest_power_of_2] - ) - - def forward(self, qk_dots): - h, i, j, device = *qk_dots.shape[-3:], qk_dots.device - - if exists(self.bias) and self.bias.shape[-1] >= j: - return qk_dots + self.bias[..., :j] - - bias = torch.arange(j, device=device) - bias = rearrange(bias, "j -> () () () j") - bias = bias * self.slopes - - num_heads_unalibied = h - bias.shape[1] - bias = F.pad(bias, (0, 0, 0, 0, 0, num_heads_unalibied)) - - self.register_buffer("bias", bias, persistent=False) - return qk_dots + self.bias - - -class LearnedAlibiPositionalBias(AlibiPositionalBias): - def __init__(self, heads, bidirectional=False): - super().__init__(heads) - los_slopes = torch.log(self.slopes) - self.learned_logslopes = nn.Parameter(los_slopes) - - self.bidirectional = bidirectional - if self.bidirectional: - self.learned_logslopes_future = nn.Parameter(los_slopes) - - def forward(self, qk_dots): - h, i, j, device = *qk_dots.shape[-3:], qk_dots.device - - def get_slopes(param): - return F.pad(param.exp(), (0, 0, 0, 0, 0, h - param.shape[1])) - - if exists(self.bias) and self.bias.shape[-1] >= j: - bias = self.bias[..., :i, :j] - else: - i_arange = torch.arange(i, device=device) - j_arange = torch.arange(j, device=device) - bias = rearrange(j_arange, "j -> 1 1 1 j") - rearrange(i_arange, "i -> 1 1 i 1") - self.register_buffer("bias", bias, persistent=False) - - if self.bidirectional: - past_slopes = get_slopes(self.learned_logslopes) - future_slopes = get_slopes(self.learned_logslopes_future) - bias = torch.tril(bias * past_slopes) + torch.triu(bias * future_slopes) - else: - slopes = get_slopes(self.learned_logslopes) - bias = bias * slopes - - return qk_dots + bias - - -class RotaryEmbedding(nn.Module): - def __init__(self, dim): - super().__init__() - inv_freq = 1.0 / (10000 ** (torch.arange(0, dim, 2).float() / dim)) - self.register_buffer("inv_freq", inv_freq) - - def forward(self, max_seq_len, device): - t = torch.arange(max_seq_len, device=device).type_as(self.inv_freq) - freqs = torch.einsum("i , j -> i j", t, self.inv_freq) - emb = torch.cat((freqs, freqs), dim=-1) - return rearrange(emb, "n d -> () () n d") - - -def rotate_half(x): - x = rearrange(x, "... (j d) -> ... j d", j=2) - x1, x2 = x.unbind(dim=-2) - return torch.cat((-x2, x1), dim=-1) - - -def apply_rotary_pos_emb(t, freqs): - seq_len = t.shape[-2] - freqs = freqs[:, :, -seq_len:] - return (t * freqs.cos()) + (rotate_half(t) * freqs.sin()) - - -# norms - - -class Scale(nn.Module): - def __init__(self, value, fn): - super().__init__() - self.value = value - self.fn = fn - - def forward(self, x, **kwargs): - out = self.fn(x, **kwargs) - scale_fn = lambda t: t * self.value - - if not isinstance(out, tuple): - return scale_fn(out) - - return (scale_fn(out[0]), *out[1:]) - - -class Rezero(nn.Module): - def __init__(self, fn): - super().__init__() - self.fn = fn - self.g = nn.Parameter(torch.zeros(1)) - - def forward(self, x, **kwargs): - out = self.fn(x, **kwargs) - rezero_fn = lambda t: t * self.g - - if not isinstance(out, tuple): - return rezero_fn(out) - - return (rezero_fn(out[0]), *out[1:]) - - -class ScaleNorm(nn.Module): - def __init__(self, dim, eps=1e-5): - super().__init__() - self.scale = dim**-0.5 - self.eps = eps - self.g = nn.Parameter(torch.ones(1)) - - def forward(self, x): - norm = torch.norm(x, dim=-1, keepdim=True) * self.scale - return x / norm.clamp(min=self.eps) * self.g - - -class RMSNorm(nn.Module): - def __init__(self, dim, eps=1e-8): - super().__init__() - self.scale = dim**-0.5 - self.eps = eps - self.g = nn.Parameter(torch.ones(dim)) - - def forward(self, x): - norm = torch.norm(x, dim=-1, keepdim=True) * self.scale - return x / norm.clamp(min=self.eps) * self.g - - -class RMSScaleShiftNorm(nn.Module): - def __init__(self, dim, eps=1e-8): - super().__init__() - self.scale = dim**-0.5 - self.eps = eps - self.g = nn.Parameter(torch.ones(dim)) - self.scale_shift_process = nn.Linear(dim * 2, dim * 2) - - def forward(self, x, norm_scale_shift_inp): - norm = torch.norm(x, dim=-1, keepdim=True) * self.scale - norm = x / norm.clamp(min=self.eps) * self.g - - ss_emb = self.scale_shift_process(norm_scale_shift_inp) - scale, shift = torch.chunk(ss_emb, 2, dim=1) - h = norm * (1 + scale.unsqueeze(1)) + shift.unsqueeze(1) - return h - - -# residual and residual gates - - -class Residual(nn.Module): - def __init__(self, dim, scale_residual=False): - super().__init__() - self.residual_scale = nn.Parameter(torch.ones(dim)) if scale_residual else None - - def forward(self, x, residual): - if exists(self.residual_scale): - residual = residual * self.residual_scale - - return x + residual - - -class GRUGating(nn.Module): - def __init__(self, dim, scale_residual=False): - super().__init__() - self.gru = nn.GRUCell(dim, dim) - self.residual_scale = nn.Parameter(torch.ones(dim)) if scale_residual else None - - def forward(self, x, residual): - if exists(self.residual_scale): - residual = residual * self.residual_scale - - gated_output = self.gru(rearrange(x, "b n d -> (b n) d"), rearrange(residual, "b n d -> (b n) d")) - - return gated_output.reshape_as(x) - - -# token shifting - - -def shift(t, amount, mask=None): - if amount == 0: - return t - - if exists(mask): - t = t.masked_fill(~mask[..., None], 0.0) - - return F.pad(t, (0, 0, amount, -amount), value=0.0) - - -class ShiftTokens(nn.Module): - def __init__(self, shifts, fn): - super().__init__() - self.fn = fn - self.shifts = tuple(shifts) - - def forward(self, x, **kwargs): - mask = kwargs.get("mask", None) - shifts = self.shifts - segments = len(shifts) - feats_per_shift = x.shape[-1] // segments - splitted = x.split(feats_per_shift, dim=-1) - segments_to_shift, rest = splitted[:segments], splitted[segments:] - segments_to_shift = list(map(lambda args: shift(*args, mask=mask), zip(segments_to_shift, shifts))) - x = torch.cat((*segments_to_shift, *rest), dim=-1) - return self.fn(x, **kwargs) - - -# feedforward - - -class GLU(nn.Module): - def __init__(self, dim_in, dim_out, activation): - super().__init__() - self.act = activation - self.proj = nn.Linear(dim_in, dim_out * 2) - - def forward(self, x): - x, gate = self.proj(x).chunk(2, dim=-1) - return x * self.act(gate) - - -class FeedForward(nn.Module): - def __init__( - self, - dim, - dim_out=None, - mult=4, - glu=False, - relu_squared=False, - post_act_ln=False, - dropout=0.0, - zero_init_output=False, - ): - super().__init__() - inner_dim = int(dim * mult) - dim_out = default(dim_out, dim) - activation = ReluSquared() if relu_squared else nn.GELU() - - project_in = ( - nn.Sequential(nn.Linear(dim, inner_dim), activation) if not glu else GLU(dim, inner_dim, activation) - ) - - self.net = nn.Sequential( - project_in, - nn.LayerNorm(inner_dim) if post_act_ln else nn.Identity(), - nn.Dropout(dropout), - nn.Linear(inner_dim, dim_out), - ) - - # init last linear layer to 0 - if zero_init_output: - init_zero_(self.net[-1]) - - def forward(self, x): - return self.net(x) - - -# attention. - - -class Attention(nn.Module): - def __init__( - self, - dim, - dim_head=DEFAULT_DIM_HEAD, - heads=8, - causal=False, - talking_heads=False, - head_scale=False, - collab_heads=False, - collab_compression=0.3, - sparse_topk=None, - use_entmax15=False, - num_mem_kv=0, - dropout=0.0, - on_attn=False, - gate_values=False, - zero_init_output=False, - max_attend_past=None, - qk_norm=False, - scale_init_value=None, - rel_pos_bias=False, - rel_pos_num_buckets=32, - rel_pos_max_distance=128, - ): - super().__init__() - self.scale = dim_head**-0.5 - - self.heads = heads - self.causal = causal - self.max_attend_past = max_attend_past - - qk_dim = v_dim = dim_head * heads - - # collaborative heads - self.collab_heads = collab_heads - if self.collab_heads: - qk_dim = int(collab_compression * qk_dim) - self.collab_mixing = nn.Parameter(torch.randn(heads, qk_dim)) - - self.to_q = nn.Linear(dim, qk_dim, bias=False) - self.to_k = nn.Linear(dim, qk_dim, bias=False) - self.to_v = nn.Linear(dim, v_dim, bias=False) - - self.dropout = nn.Dropout(dropout) - - # add GLU gating for aggregated values, from alphafold2 - self.to_v_gate = None - if gate_values: - self.to_v_gate = nn.Linear(dim, v_dim) - nn.init.constant_(self.to_v_gate.weight, 0) - nn.init.constant_(self.to_v_gate.bias, 1) - - # cosine sim attention - self.qk_norm = qk_norm - if qk_norm: - scale_init_value = default( - scale_init_value, -3 - ) # if not provided, initialize as though it were sequence length of 1024 - self.scale = nn.Parameter(torch.ones(1, heads, 1, 1) * scale_init_value) - - # talking heads - self.talking_heads = talking_heads - if talking_heads: - self.pre_softmax_proj = nn.Parameter(torch.randn(heads, heads)) - self.post_softmax_proj = nn.Parameter(torch.randn(heads, heads)) - - # head scaling - self.head_scale = head_scale - if head_scale: - self.head_scale_params = nn.Parameter(torch.ones(1, heads, 1, 1)) - - # explicit topk sparse attention - self.sparse_topk = sparse_topk - - # entmax - self.attn_fn = F.softmax - - # add memory key / values - self.num_mem_kv = num_mem_kv - if num_mem_kv > 0: - self.mem_k = nn.Parameter(torch.randn(heads, num_mem_kv, dim_head)) - self.mem_v = nn.Parameter(torch.randn(heads, num_mem_kv, dim_head)) - - # attention on attention - self.attn_on_attn = on_attn - self.to_out = nn.Sequential(nn.Linear(v_dim, dim * 2), nn.GLU()) if on_attn else nn.Linear(v_dim, dim) - - self.rel_pos_bias = rel_pos_bias - if rel_pos_bias: - assert ( - rel_pos_num_buckets <= rel_pos_max_distance - ), "number of relative position buckets must be less than the relative position max distance" - self.rel_pos = RelativePositionBias( - scale=dim_head**0.5, - causal=causal, - heads=heads, - num_buckets=rel_pos_num_buckets, - max_distance=rel_pos_max_distance, - ) - - # init output projection 0 - if zero_init_output: - init_zero_(self.to_out) - - def forward( - self, - x, - context=None, - mask=None, - context_mask=None, - attn_mask=None, - sinusoidal_emb=None, - rotary_pos_emb=None, - prev_attn=None, - mem=None, - layer_past=None, - ): - b, n, _, h, talking_heads, collab_heads, head_scale, scale, device, has_context = ( - *x.shape, - self.heads, - self.talking_heads, - self.collab_heads, - self.head_scale, - self.scale, - x.device, - exists(context), - ) - kv_input = default(context, x) - - q_input = x - k_input = kv_input - v_input = kv_input - - if exists(mem): - k_input = torch.cat((mem, k_input), dim=-2) - v_input = torch.cat((mem, v_input), dim=-2) - - if exists(sinusoidal_emb): - # in shortformer, the query would start at a position offset depending on the past cached memory - offset = k_input.shape[-2] - q_input.shape[-2] - q_input = q_input + sinusoidal_emb(q_input, offset=offset) - k_input = k_input + sinusoidal_emb(k_input) - - q = self.to_q(q_input) - k = self.to_k(k_input) - v = self.to_v(v_input) - - if not collab_heads: - q, k, v = map(lambda t: rearrange(t, "b n (h d) -> b h n d", h=h), (q, k, v)) - else: - q = einsum("b i d, h d -> b h i d", q, self.collab_mixing) - k = rearrange(k, "b n d -> b () n d") - v = rearrange(v, "b n (h d) -> b h n d", h=h) - - if layer_past is not None: - past_key, past_value = layer_past - k = torch.cat([past_key, k], dim=-2) - v = torch.cat([past_value, v], dim=-2) - k_cache = k - v_cache = v - - if exists(rotary_pos_emb) and not has_context: - l = rotary_pos_emb.shape[-1] - (ql, qr), (kl, kr), (vl, vr) = map(lambda t: (t[..., :l], t[..., l:]), (q, k, v)) - ql, kl, vl = map(lambda t: apply_rotary_pos_emb(t, rotary_pos_emb), (ql, kl, vl)) - q, k, v = map(lambda t: torch.cat(t, dim=-1), ((ql, qr), (kl, kr), (vl, vr))) - - input_mask = None - if any(map(exists, (mask, context_mask))): - q_mask = default(mask, lambda: torch.ones((b, n), device=device).bool()) - k_mask = q_mask if not exists(context) else context_mask - k_mask = default(k_mask, lambda: torch.ones((b, k.shape[-2]), device=device).bool()) - q_mask = rearrange(q_mask, "b i -> b () i ()") - k_mask = rearrange(k_mask, "b j -> b () () j") - input_mask = q_mask * k_mask - - if self.num_mem_kv > 0: - mem_k, mem_v = map(lambda t: repeat(t, "h n d -> b h n d", b=b), (self.mem_k, self.mem_v)) - k = torch.cat((mem_k, k), dim=-2) - v = torch.cat((mem_v, v), dim=-2) - if exists(input_mask): - input_mask = F.pad(input_mask, (self.num_mem_kv, 0), value=True) - - if collab_heads: - k = k.expand(-1, h, -1, -1) - - if self.qk_norm: - q, k = map(l2norm, (q, k)) - scale = 1 / (self.scale.exp().clamp(min=1e-2)) - - dots = einsum("b h i d, b h j d -> b h i j", q, k) * scale - mask_value = max_neg_value(dots) - - if exists(prev_attn): - dots = dots + prev_attn - - pre_softmax_attn = dots.clone() - - if talking_heads: - dots = einsum("b h i j, h k -> b k i j", dots, self.pre_softmax_proj).contiguous() - - if self.rel_pos_bias: - dots = self.rel_pos(dots) - - if exists(input_mask): - dots.masked_fill_(~input_mask, mask_value) - del input_mask - - if exists(attn_mask): - assert ( - 2 <= attn_mask.ndim <= 4 - ), "attention mask must have greater than 2 dimensions but less than or equal to 4" - if attn_mask.ndim == 2: - attn_mask = rearrange(attn_mask, "i j -> () () i j") - elif attn_mask.ndim == 3: - attn_mask = rearrange(attn_mask, "h i j -> () h i j") - dots.masked_fill_(~attn_mask, mask_value) - - if exists(self.max_attend_past): - i, j = dots.shape[-2:] - range_q = torch.arange(j - i, j, device=device) - range_k = torch.arange(j, device=device) - dist = rearrange(range_q, "i -> () () i ()") - rearrange(range_k, "j -> () () () j") - mask = dist > self.max_attend_past - dots.masked_fill_(mask, mask_value) - del mask - - if self.causal: - i, j = dots.shape[-2:] - r = torch.arange(i, device=device) - mask = rearrange(r, "i -> () () i ()") < rearrange(r, "j -> () () () j") - mask = F.pad(mask, (j - i, 0), value=False) - dots.masked_fill_(mask, mask_value) - del mask - - if exists(self.sparse_topk) and self.sparse_topk < dots.shape[-1]: - top, _ = dots.topk(self.sparse_topk, dim=-1) - vk = top[..., -1].unsqueeze(-1).expand_as(dots) - mask = dots < vk - dots.masked_fill_(mask, mask_value) - del mask - - attn = self.attn_fn(dots, dim=-1) - post_softmax_attn = attn.clone() - - attn = self.dropout(attn) - - if talking_heads: - attn = einsum("b h i j, h k -> b k i j", attn, self.post_softmax_proj).contiguous() - - out = einsum("b h i j, b h j d -> b h i d", attn, v) - - if head_scale: - out = out * self.head_scale_params - - out = rearrange(out, "b h n d -> b n (h d)") - - if exists(self.to_v_gate): - gates = self.to_v_gate(x) - out = out * gates.sigmoid() - - intermediates = Intermediates(pre_softmax_attn=pre_softmax_attn, post_softmax_attn=post_softmax_attn) - - return self.to_out(out), intermediates, k_cache, v_cache - - -class AttentionLayers(nn.Module): - def __init__( - self, - dim, - depth, - heads=8, - causal=False, - cross_attend=False, - only_cross=False, - use_scalenorm=False, - use_rms_scaleshift_norm=False, - use_rmsnorm=False, - use_rezero=False, - alibi_pos_bias=False, - alibi_num_heads=None, - alibi_learned=False, - position_infused_attn=False, - rotary_pos_emb=False, - rotary_emb_dim=None, - custom_layers=None, - sandwich_coef=None, - par_ratio=None, - residual_attn=False, - cross_residual_attn=False, - macaron=False, - pre_norm=True, - gate_residual=False, - scale_residual=False, - shift_tokens=0, - sandwich_norm=False, - use_qk_norm_attn=False, - qk_norm_attn_seq_len=None, - zero_init_branch_output=False, - **kwargs, - ): - super().__init__() - ff_kwargs, kwargs = groupby_prefix_and_trim("ff_", kwargs) - attn_kwargs, _ = groupby_prefix_and_trim("attn_", kwargs) - - dim_head = attn_kwargs.get("dim_head", DEFAULT_DIM_HEAD) - - self.dim = dim - self.depth = depth - self.layers = nn.ModuleList([]) - self.causal = causal - - rel_pos_bias = "rel_pos_bias" in attn_kwargs - self.has_pos_emb = position_infused_attn or rel_pos_bias or rotary_pos_emb - self.pia_pos_emb = FixedPositionalEmbedding(dim) if position_infused_attn else None - - rotary_emb_dim = max(default(rotary_emb_dim, dim_head // 2), 32) - self.rotary_pos_emb = RotaryEmbedding(rotary_emb_dim) if rotary_pos_emb else None - - assert not ( - alibi_pos_bias and rel_pos_bias - ), "you can only choose Alibi positional bias or T5 relative positional bias, not both" - - if alibi_pos_bias: - alibi_num_heads = default(alibi_num_heads, heads) - assert alibi_num_heads <= heads, "number of ALiBi heads must be less than the total number of heads" - alibi_pos_klass = LearnedAlibiPositionalBias if alibi_learned or not causal else AlibiPositionalBias - self.rel_pos = alibi_pos_klass(heads=alibi_num_heads, bidirectional=not causal) - else: - self.rel_pos = None - - assert not (not pre_norm and sandwich_norm), "sandwich norm cannot be used when not using prenorm" - self.pre_norm = pre_norm - self.sandwich_norm = sandwich_norm - - self.residual_attn = residual_attn - self.cross_residual_attn = cross_residual_attn - self.cross_attend = cross_attend - - norm_class = ScaleNorm if use_scalenorm else nn.LayerNorm - norm_class = RMSNorm if use_rmsnorm else norm_class - norm_class = RMSScaleShiftNorm if use_rms_scaleshift_norm else norm_class - norm_fn = partial(norm_class, dim) - - norm_fn = nn.Identity if use_rezero else norm_fn - branch_fn = Rezero if use_rezero else None - - if cross_attend and not only_cross: - default_block = ("a", "c", "f") - elif cross_attend and only_cross: - default_block = ("c", "f") - else: - default_block = ("a", "f") - - if macaron: - default_block = ("f",) + default_block - - # qk normalization - - if use_qk_norm_attn: - attn_scale_init_value = ( - -math.log(math.log2(qk_norm_attn_seq_len**2 - qk_norm_attn_seq_len)) - if exists(qk_norm_attn_seq_len) - else None - ) - attn_kwargs = {**attn_kwargs, "qk_norm": True, "scale_init_value": attn_scale_init_value} - - # zero init - - if zero_init_branch_output: - attn_kwargs = {**attn_kwargs, "zero_init_output": True} - ff_kwargs = {**ff_kwargs, "zero_init_output": True} - - # calculate layer block order - - if exists(custom_layers): - layer_types = custom_layers - elif exists(par_ratio): - par_depth = depth * len(default_block) - assert 1 < par_ratio <= par_depth, "par ratio out of range" - default_block = tuple(filter(not_equals("f"), default_block)) - par_attn = par_depth // par_ratio - depth_cut = par_depth * 2 // 3 # 2 / 3 attention layer cutoff suggested by PAR paper - par_width = (depth_cut + depth_cut // par_attn) // par_attn - assert len(default_block) <= par_width, "default block is too large for par_ratio" - par_block = default_block + ("f",) * (par_width - len(default_block)) - par_head = par_block * par_attn - layer_types = par_head + ("f",) * (par_depth - len(par_head)) - elif exists(sandwich_coef): - assert sandwich_coef > 0 and sandwich_coef <= depth, "sandwich coefficient should be less than the depth" - layer_types = ("a",) * sandwich_coef + default_block * (depth - sandwich_coef) + ("f",) * sandwich_coef - else: - layer_types = default_block * depth - - self.layer_types = layer_types - self.num_attn_layers = len(list(filter(equals("a"), layer_types))) - - # calculate token shifting - - shift_tokens = cast_tuple(shift_tokens, len(layer_types)) - - # iterate and construct layers - - for ind, (layer_type, layer_shift_tokens) in enumerate(zip(self.layer_types, shift_tokens)): - is_last_layer = ind == (len(self.layer_types) - 1) - - if layer_type == "a": - layer = Attention(dim, heads=heads, causal=causal, **attn_kwargs) - elif layer_type == "c": - layer = Attention(dim, heads=heads, **attn_kwargs) - elif layer_type == "f": - layer = FeedForward(dim, **ff_kwargs) - layer = layer if not macaron else Scale(0.5, layer) - else: - raise Exception(f"invalid layer type {layer_type}") - - if layer_shift_tokens > 0: - shift_range_upper = layer_shift_tokens + 1 - shift_range_lower = -layer_shift_tokens if not causal else 0 - layer = ShiftTokens(range(shift_range_lower, shift_range_upper), layer) - - if exists(branch_fn): - layer = branch_fn(layer) - - residual_fn = GRUGating if gate_residual else Residual - residual = residual_fn(dim, scale_residual=scale_residual) - - layer_uses_qk_norm = use_qk_norm_attn and layer_type in ("a", "c") - - pre_branch_norm = norm_fn() if pre_norm and not layer_uses_qk_norm else None - post_branch_norm = norm_fn() if sandwich_norm or layer_uses_qk_norm else None - post_main_norm = norm_fn() if not pre_norm and not is_last_layer else None - - norms = nn.ModuleList([pre_branch_norm, post_branch_norm, post_main_norm]) - - self.layers.append(nn.ModuleList([norms, layer, residual])) - - def forward( - self, - x, - context=None, - full_context=None, # for passing a list of hidden states from an encoder - mask=None, - context_mask=None, - attn_mask=None, - mems=None, - return_hiddens=False, - norm_scale_shift_inp=None, - past_key_values=None, - expected_seq_len=None, - ): - assert not ( - self.cross_attend ^ (exists(context) or exists(full_context)) - ), "context must be passed in if cross_attend is set to True" - assert context is None or full_context is None, "only one of full_context or context can be provided" - - hiddens = [] - intermediates = [] - prev_attn = None - prev_cross_attn = None - - mems = mems.copy() if exists(mems) else [None] * self.num_attn_layers - norm_args = {} - if exists(norm_scale_shift_inp): - norm_args["norm_scale_shift_inp"] = norm_scale_shift_inp - - rotary_pos_emb = None - if exists(self.rotary_pos_emb): - if not self.training and self.causal: - assert ( - expected_seq_len is not None - ), "To decode a transformer with rotary embeddings, you must specify an `expected_seq_len`" - elif expected_seq_len is None: - expected_seq_len = 0 - seq_len = x.shape[1] - if past_key_values is not None: - seq_len += past_key_values[0][0].shape[-2] - max_rotary_emb_length = max( - list(map(lambda m: (m.shape[1] if exists(m) else 0) + seq_len, mems)) + [expected_seq_len] - ) - rotary_pos_emb = self.rotary_pos_emb(max_rotary_emb_length, x.device) - - present_key_values = [] - cross_attn_count = 0 - for ind, (layer_type, (norm, block, residual_fn)) in enumerate(zip(self.layer_types, self.layers)): - if layer_type == "a": - layer_mem = mems.pop(0) if mems else None - - residual = x - - pre_branch_norm, post_branch_norm, post_main_norm = norm - - if exists(pre_branch_norm): - x = pre_branch_norm(x, **norm_args) - - if layer_type == "a" or layer_type == "c": - if past_key_values is not None: - layer_kv = past_key_values.pop(0) - layer_past = tuple(s.to(x.device) for s in layer_kv) - else: - layer_past = None - - if layer_type == "a": - out, inter, k, v = block( - x, None, mask, None, attn_mask, self.pia_pos_emb, rotary_pos_emb, prev_attn, layer_mem, layer_past - ) - elif layer_type == "c": - if exists(full_context): - out, inter, k, v = block( - x, - full_context[cross_attn_count], - mask, - context_mask, - None, - None, - None, - prev_attn, - None, - layer_past, - ) - else: - out, inter, k, v = block( - x, context, mask, context_mask, None, None, None, prev_attn, None, layer_past - ) - elif layer_type == "f": - out = block(x) - - if layer_type == "a" or layer_type == "c" and present_key_values is not None: - present_key_values.append((k.detach(), v.detach())) - - if exists(post_branch_norm): - out = post_branch_norm(out, **norm_args) - - x = residual_fn(out, residual) - - if layer_type in ("a", "c"): - intermediates.append(inter) - - if layer_type == "a" and self.residual_attn: - prev_attn = inter.pre_softmax_attn - elif layer_type == "c" and self.cross_residual_attn: - prev_cross_attn = inter.pre_softmax_attn - - if exists(post_main_norm): - x = post_main_norm(x, **norm_args) - - if layer_type == "c": - cross_attn_count += 1 - - if layer_type == "f": - hiddens.append(x) - - if return_hiddens: - intermediates = LayerIntermediates( - hiddens=hiddens, attn_intermediates=intermediates, past_key_values=present_key_values - ) - - return x, intermediates - - return x - - -class Encoder(AttentionLayers): - def __init__(self, **kwargs): - assert "causal" not in kwargs, "cannot set causality on encoder" - super().__init__(causal=False, **kwargs) - - -class Decoder(AttentionLayers): - def __init__(self, **kwargs): - assert "causal" not in kwargs, "cannot set causality on decoder" - super().__init__(causal=True, **kwargs) - - -class CrossAttender(AttentionLayers): - def __init__(self, **kwargs): - super().__init__(cross_attend=True, only_cross=True, **kwargs) - - -class ViTransformerWrapper(nn.Module): - def __init__(self, *, image_size, patch_size, attn_layers, num_classes=None, dropout=0.0, emb_dropout=0.0): - super().__init__() - assert isinstance(attn_layers, Encoder), "attention layers must be an Encoder" - assert image_size % patch_size == 0, "image dimensions must be divisible by the patch size" - dim = attn_layers.dim - num_patches = (image_size // patch_size) ** 2 - patch_dim = 3 * patch_size**2 - - self.patch_size = patch_size - - self.pos_embedding = nn.Parameter(torch.randn(1, num_patches + 1, dim)) - self.patch_to_embedding = nn.Linear(patch_dim, dim) - self.cls_token = nn.Parameter(torch.randn(1, 1, dim)) - self.dropout = nn.Dropout(emb_dropout) - - self.attn_layers = attn_layers - self.norm = nn.LayerNorm(dim) - self.mlp_head = FeedForward(dim, dim_out=num_classes, dropout=dropout) if exists(num_classes) else None - - def forward(self, img, return_embeddings=False): - p = self.patch_size - - x = rearrange(img, "b c (h p1) (w p2) -> b (h w) (p1 p2 c)", p1=p, p2=p) - x = self.patch_to_embedding(x) - b, n, _ = x.shape - - cls_tokens = repeat(self.cls_token, "() n d -> b n d", b=b) - x = torch.cat((cls_tokens, x), dim=1) - x = x + self.pos_embedding[:, : (n + 1)] - x = self.dropout(x) - - x = self.attn_layers(x) - x = self.norm(x) - - if not exists(self.mlp_head) or return_embeddings: - return x - - return self.mlp_head(x[:, 0]) - - -class TransformerWrapper(nn.Module): - def __init__( - self, - *, - num_tokens, - max_seq_len, - attn_layers, - emb_dim=None, - max_mem_len=0.0, - shift_mem_down=0, - emb_dropout=0.0, - num_memory_tokens=None, - tie_embedding=False, - use_pos_emb=True, - ): - super().__init__() - assert isinstance(attn_layers, AttentionLayers), "attention layers must be one of Encoder or Decoder" - - dim = attn_layers.dim - emb_dim = default(emb_dim, dim) - - self.max_seq_len = max_seq_len - self.max_mem_len = max_mem_len - self.shift_mem_down = shift_mem_down - - self.token_emb = nn.Embedding(num_tokens, emb_dim) - self.pos_emb = ( - AbsolutePositionalEmbedding(emb_dim, max_seq_len) - if (use_pos_emb and not attn_layers.has_pos_emb) - else always(0) - ) - self.emb_dropout = nn.Dropout(emb_dropout) - - self.project_emb = nn.Linear(emb_dim, dim) if emb_dim != dim else nn.Identity() - self.attn_layers = attn_layers - self.norm = nn.LayerNorm(dim) - - self.init_() - - self.to_logits = nn.Linear(dim, num_tokens) if not tie_embedding else lambda t: t @ self.token_emb.weight.t() - - # memory tokens (like [cls]) from Memory Transformers paper - num_memory_tokens = default(num_memory_tokens, 0) - self.num_memory_tokens = num_memory_tokens - if num_memory_tokens > 0: - self.memory_tokens = nn.Parameter(torch.randn(num_memory_tokens, dim)) - - def init_(self): - nn.init.kaiming_normal_(self.token_emb.weight) - - def forward( - self, - x, - return_embeddings=False, - mask=None, - return_hiddens=False, - return_attn=False, - mems=None, - use_cache=False, - **kwargs, - ): - b, n, device, num_mem = *x.shape, x.device, self.num_memory_tokens - x = self.token_emb(x) - x = x + self.pos_emb(x) - x = self.emb_dropout(x) - - x = self.project_emb(x) - - if num_mem > 0: - mem = repeat(self.memory_tokens, "n d -> b n d", b=b) - x = torch.cat((mem, x), dim=1) - - # auto-handle masking after appending memory tokens - if exists(mask): - mask = F.pad(mask, (num_mem, 0), value=True) - - if self.shift_mem_down and exists(mems): - mems_l, mems_r = mems[: self.shift_mem_down], mems[self.shift_mem_down :] - mems = [*mems_r, *mems_l] - - x, intermediates = self.attn_layers(x, mask=mask, mems=mems, return_hiddens=True, **kwargs) - x = self.norm(x) - - mem, x = x[:, :num_mem], x[:, num_mem:] - - out = self.to_logits(x) if not return_embeddings else x - - if return_hiddens: - hiddens = intermediates.hiddens - return out, hiddens - - res = [out] - if return_attn: - attn_maps = list(map(lambda t: t.post_softmax_attn, intermediates.attn_intermediates)) - res.append(attn_maps) - if use_cache: - res.append(intermediates.past_key_values) - - if len(res) > 1: - return tuple(res) - return res[0] - - -class ContinuousTransformerWrapper(nn.Module): - def __init__( - self, *, max_seq_len, attn_layers, dim_in=None, dim_out=None, emb_dim=None, emb_dropout=0.0, use_pos_emb=True - ): - super().__init__() - assert isinstance(attn_layers, AttentionLayers), "attention layers must be one of Encoder or Decoder" - - dim = attn_layers.dim - - self.max_seq_len = max_seq_len - - self.pos_emb = ( - AbsolutePositionalEmbedding(dim, max_seq_len) - if (use_pos_emb and not attn_layers.has_pos_emb) - else always(0) - ) - self.emb_dropout = nn.Dropout(emb_dropout) - - self.project_in = nn.Linear(dim_in, dim) if exists(dim_in) else nn.Identity() - - self.attn_layers = attn_layers - self.norm = nn.LayerNorm(dim) - - self.project_out = nn.Linear(dim, dim_out) if exists(dim_out) else nn.Identity() - - def forward(self, x, return_embeddings=False, mask=None, return_attn=False, mems=None, use_cache=False, **kwargs): - b, n, _, device = *x.shape, x.device - - x = self.project_in(x) - x = x + self.pos_emb(x) - x = self.emb_dropout(x) - - x, intermediates = self.attn_layers(x, mask=mask, mems=mems, return_hiddens=True, **kwargs) - x = self.norm(x) - - out = self.project_out(x) if not return_embeddings else x - - res = [out] - if return_attn: - attn_maps = list(map(lambda t: t.post_softmax_attn, intermediates.attn_intermediates)) - res.append(attn_maps) - if use_cache: - res.append(intermediates.past_key_values) - - if len(res) > 1: - return tuple(res) - return res[0] diff --git a/TTS/tts/layers/vits/discriminator.py b/TTS/tts/layers/vits/discriminator.py deleted file mode 100644 index 148f283c9010e522c49ad2595860ab859ba6aa48..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/vits/discriminator.py +++ /dev/null @@ -1,89 +0,0 @@ -import torch -from torch import nn -from torch.nn.modules.conv import Conv1d - -from TTS.vocoder.models.hifigan_discriminator import DiscriminatorP, MultiPeriodDiscriminator - - -class DiscriminatorS(torch.nn.Module): - """HiFiGAN Scale Discriminator. Channel sizes are different from the original HiFiGAN. - - Args: - use_spectral_norm (bool): if `True` swith to spectral norm instead of weight norm. - """ - - def __init__(self, use_spectral_norm=False): - super().__init__() - norm_f = nn.utils.spectral_norm if use_spectral_norm else nn.utils.weight_norm - self.convs = nn.ModuleList( - [ - norm_f(Conv1d(1, 16, 15, 1, padding=7)), - norm_f(Conv1d(16, 64, 41, 4, groups=4, padding=20)), - norm_f(Conv1d(64, 256, 41, 4, groups=16, padding=20)), - norm_f(Conv1d(256, 1024, 41, 4, groups=64, padding=20)), - norm_f(Conv1d(1024, 1024, 41, 4, groups=256, padding=20)), - norm_f(Conv1d(1024, 1024, 5, 1, padding=2)), - ] - ) - self.conv_post = norm_f(Conv1d(1024, 1, 3, 1, padding=1)) - - def forward(self, x): - """ - Args: - x (Tensor): input waveform. - - Returns: - Tensor: discriminator scores. - List[Tensor]: list of features from the convolutiona layers. - """ - feat = [] - for l in self.convs: - x = l(x) - x = torch.nn.functional.leaky_relu(x, 0.1) - feat.append(x) - x = self.conv_post(x) - feat.append(x) - x = torch.flatten(x, 1, -1) - return x, feat - - -class VitsDiscriminator(nn.Module): - """VITS discriminator wrapping one Scale Discriminator and a stack of Period Discriminator. - - :: - waveform -> ScaleDiscriminator() -> scores_sd, feats_sd --> append() -> scores, feats - |--> MultiPeriodDiscriminator() -> scores_mpd, feats_mpd ^ - - Args: - use_spectral_norm (bool): if `True` swith to spectral norm instead of weight norm. - """ - - def __init__(self, periods=(2, 3, 5, 7, 11), use_spectral_norm=False): - super().__init__() - self.nets = nn.ModuleList() - self.nets.append(DiscriminatorS(use_spectral_norm=use_spectral_norm)) - self.nets.extend([DiscriminatorP(i, use_spectral_norm=use_spectral_norm) for i in periods]) - - def forward(self, x, x_hat=None): - """ - Args: - x (Tensor): ground truth waveform. - x_hat (Tensor): predicted waveform. - - Returns: - List[Tensor]: discriminator scores. - List[List[Tensor]]: list of list of features from each layers of each discriminator. - """ - x_scores = [] - x_hat_scores = [] if x_hat is not None else None - x_feats = [] - x_hat_feats = [] if x_hat is not None else None - for net in self.nets: - x_score, x_feat = net(x) - x_scores.append(x_score) - x_feats.append(x_feat) - if x_hat is not None: - x_hat_score, x_hat_feat = net(x_hat) - x_hat_scores.append(x_hat_score) - x_hat_feats.append(x_hat_feat) - return x_scores, x_feats, x_hat_scores, x_hat_feats diff --git a/TTS/tts/layers/vits/networks.py b/TTS/tts/layers/vits/networks.py deleted file mode 100644 index f97b584fe6ed311127a8c01a089b159946219cb2..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/vits/networks.py +++ /dev/null @@ -1,288 +0,0 @@ -import math - -import torch -from torch import nn - -from TTS.tts.layers.glow_tts.glow import WN -from TTS.tts.layers.glow_tts.transformer import RelativePositionTransformer -from TTS.tts.utils.helpers import sequence_mask - -LRELU_SLOPE = 0.1 - - -def convert_pad_shape(pad_shape): - l = pad_shape[::-1] - pad_shape = [item for sublist in l for item in sublist] - return pad_shape - - -def init_weights(m, mean=0.0, std=0.01): - classname = m.__class__.__name__ - if classname.find("Conv") != -1: - m.weight.data.normal_(mean, std) - - -def get_padding(kernel_size, dilation=1): - return int((kernel_size * dilation - dilation) / 2) - - -class TextEncoder(nn.Module): - def __init__( - self, - n_vocab: int, - out_channels: int, - hidden_channels: int, - hidden_channels_ffn: int, - num_heads: int, - num_layers: int, - kernel_size: int, - dropout_p: float, - language_emb_dim: int = None, - ): - """Text Encoder for VITS model. - - Args: - n_vocab (int): Number of characters for the embedding layer. - out_channels (int): Number of channels for the output. - hidden_channels (int): Number of channels for the hidden layers. - hidden_channels_ffn (int): Number of channels for the convolutional layers. - num_heads (int): Number of attention heads for the Transformer layers. - num_layers (int): Number of Transformer layers. - kernel_size (int): Kernel size for the FFN layers in Transformer network. - dropout_p (float): Dropout rate for the Transformer layers. - """ - super().__init__() - self.out_channels = out_channels - self.hidden_channels = hidden_channels - - self.emb = nn.Embedding(n_vocab, hidden_channels) - - nn.init.normal_(self.emb.weight, 0.0, hidden_channels**-0.5) - - if language_emb_dim: - hidden_channels += language_emb_dim - - self.encoder = RelativePositionTransformer( - in_channels=hidden_channels, - out_channels=hidden_channels, - hidden_channels=hidden_channels, - hidden_channels_ffn=hidden_channels_ffn, - num_heads=num_heads, - num_layers=num_layers, - kernel_size=kernel_size, - dropout_p=dropout_p, - layer_norm_type="2", - rel_attn_window_size=4, - ) - - self.proj = nn.Conv1d(hidden_channels, out_channels * 2, 1) - - def forward(self, x, x_lengths, lang_emb=None): - """ - Shapes: - - x: :math:`[B, T]` - - x_length: :math:`[B]` - """ - assert x.shape[0] == x_lengths.shape[0] - x = self.emb(x) * math.sqrt(self.hidden_channels) # [b, t, h] - - # concat the lang emb in embedding chars - if lang_emb is not None: - x = torch.cat((x, lang_emb.transpose(2, 1).expand(x.size(0), x.size(1), -1)), dim=-1) - - x = torch.transpose(x, 1, -1) # [b, h, t] - x_mask = torch.unsqueeze(sequence_mask(x_lengths, x.size(2)), 1).to(x.dtype) # [b, 1, t] - - x = self.encoder(x * x_mask, x_mask) - stats = self.proj(x) * x_mask - - m, logs = torch.split(stats, self.out_channels, dim=1) - return x, m, logs, x_mask - - -class ResidualCouplingBlock(nn.Module): - def __init__( - self, - channels, - hidden_channels, - kernel_size, - dilation_rate, - num_layers, - dropout_p=0, - cond_channels=0, - mean_only=False, - ): - assert channels % 2 == 0, "channels should be divisible by 2" - super().__init__() - self.half_channels = channels // 2 - self.mean_only = mean_only - # input layer - self.pre = nn.Conv1d(self.half_channels, hidden_channels, 1) - # coupling layers - self.enc = WN( - hidden_channels, - hidden_channels, - kernel_size, - dilation_rate, - num_layers, - dropout_p=dropout_p, - c_in_channels=cond_channels, - ) - # output layer - # Initializing last layer to 0 makes the affine coupling layers - # do nothing at first. This helps with training stability - self.post = nn.Conv1d(hidden_channels, self.half_channels * (2 - mean_only), 1) - self.post.weight.data.zero_() - self.post.bias.data.zero_() - - def forward(self, x, x_mask, g=None, reverse=False): - """ - Note: - Set `reverse` to True for inference. - - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - - g: :math:`[B, C, 1]` - """ - x0, x1 = torch.split(x, [self.half_channels] * 2, 1) - h = self.pre(x0) * x_mask - h = self.enc(h, x_mask, g=g) - stats = self.post(h) * x_mask - if not self.mean_only: - m, log_scale = torch.split(stats, [self.half_channels] * 2, 1) - else: - m = stats - log_scale = torch.zeros_like(m) - - if not reverse: - x1 = m + x1 * torch.exp(log_scale) * x_mask - x = torch.cat([x0, x1], 1) - logdet = torch.sum(log_scale, [1, 2]) - return x, logdet - else: - x1 = (x1 - m) * torch.exp(-log_scale) * x_mask - x = torch.cat([x0, x1], 1) - return x - - -class ResidualCouplingBlocks(nn.Module): - def __init__( - self, - channels: int, - hidden_channels: int, - kernel_size: int, - dilation_rate: int, - num_layers: int, - num_flows=4, - cond_channels=0, - ): - """Redisual Coupling blocks for VITS flow layers. - - Args: - channels (int): Number of input and output tensor channels. - hidden_channels (int): Number of hidden network channels. - kernel_size (int): Kernel size of the WaveNet layers. - dilation_rate (int): Dilation rate of the WaveNet layers. - num_layers (int): Number of the WaveNet layers. - num_flows (int, optional): Number of Residual Coupling blocks. Defaults to 4. - cond_channels (int, optional): Number of channels of the conditioning tensor. Defaults to 0. - """ - super().__init__() - self.channels = channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.num_layers = num_layers - self.num_flows = num_flows - self.cond_channels = cond_channels - - self.flows = nn.ModuleList() - for _ in range(num_flows): - self.flows.append( - ResidualCouplingBlock( - channels, - hidden_channels, - kernel_size, - dilation_rate, - num_layers, - cond_channels=cond_channels, - mean_only=True, - ) - ) - - def forward(self, x, x_mask, g=None, reverse=False): - """ - Note: - Set `reverse` to True for inference. - - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - - g: :math:`[B, C, 1]` - """ - if not reverse: - for flow in self.flows: - x, _ = flow(x, x_mask, g=g, reverse=reverse) - x = torch.flip(x, [1]) - else: - for flow in reversed(self.flows): - x = torch.flip(x, [1]) - x = flow(x, x_mask, g=g, reverse=reverse) - return x - - -class PosteriorEncoder(nn.Module): - def __init__( - self, - in_channels: int, - out_channels: int, - hidden_channels: int, - kernel_size: int, - dilation_rate: int, - num_layers: int, - cond_channels=0, - ): - """Posterior Encoder of VITS model. - - :: - x -> conv1x1() -> WaveNet() (non-causal) -> conv1x1() -> split() -> [m, s] -> sample(m, s) -> z - - Args: - in_channels (int): Number of input tensor channels. - out_channels (int): Number of output tensor channels. - hidden_channels (int): Number of hidden channels. - kernel_size (int): Kernel size of the WaveNet convolution layers. - dilation_rate (int): Dilation rate of the WaveNet layers. - num_layers (int): Number of the WaveNet layers. - cond_channels (int, optional): Number of conditioning tensor channels. Defaults to 0. - """ - super().__init__() - self.in_channels = in_channels - self.out_channels = out_channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.num_layers = num_layers - self.cond_channels = cond_channels - - self.pre = nn.Conv1d(in_channels, hidden_channels, 1) - self.enc = WN( - hidden_channels, hidden_channels, kernel_size, dilation_rate, num_layers, c_in_channels=cond_channels - ) - self.proj = nn.Conv1d(hidden_channels, out_channels * 2, 1) - - def forward(self, x, x_lengths, g=None): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_lengths: :math:`[B, 1]` - - g: :math:`[B, C, 1]` - """ - x_mask = torch.unsqueeze(sequence_mask(x_lengths, x.size(2)), 1).to(x.dtype) - x = self.pre(x) * x_mask - x = self.enc(x, x_mask, g=g) - stats = self.proj(x) * x_mask - mean, log_scale = torch.split(stats, self.out_channels, dim=1) - z = (mean + torch.randn_like(mean) * torch.exp(log_scale)) * x_mask - return z, mean, log_scale, x_mask diff --git a/TTS/tts/layers/vits/stochastic_duration_predictor.py b/TTS/tts/layers/vits/stochastic_duration_predictor.py deleted file mode 100644 index 98dbf0935ca0f6cd6e92fe6ecf063dde2ee4138f..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/vits/stochastic_duration_predictor.py +++ /dev/null @@ -1,294 +0,0 @@ -import math - -import torch -from torch import nn -from torch.nn import functional as F - -from TTS.tts.layers.generic.normalization import LayerNorm2 -from TTS.tts.layers.vits.transforms import piecewise_rational_quadratic_transform - - -class DilatedDepthSeparableConv(nn.Module): - def __init__(self, channels, kernel_size, num_layers, dropout_p=0.0) -> torch.tensor: - """Dilated Depth-wise Separable Convolution module. - - :: - x |-> DDSConv(x) -> LayerNorm(x) -> GeLU(x) -> Conv1x1(x) -> LayerNorm(x) -> GeLU(x) -> + -> o - |-------------------------------------------------------------------------------------^ - - Args: - channels ([type]): [description] - kernel_size ([type]): [description] - num_layers ([type]): [description] - dropout_p (float, optional): [description]. Defaults to 0.0. - - Returns: - torch.tensor: Network output masked by the input sequence mask. - """ - super().__init__() - self.num_layers = num_layers - - self.convs_sep = nn.ModuleList() - self.convs_1x1 = nn.ModuleList() - self.norms_1 = nn.ModuleList() - self.norms_2 = nn.ModuleList() - for i in range(num_layers): - dilation = kernel_size**i - padding = (kernel_size * dilation - dilation) // 2 - self.convs_sep.append( - nn.Conv1d(channels, channels, kernel_size, groups=channels, dilation=dilation, padding=padding) - ) - self.convs_1x1.append(nn.Conv1d(channels, channels, 1)) - self.norms_1.append(LayerNorm2(channels)) - self.norms_2.append(LayerNorm2(channels)) - self.dropout = nn.Dropout(dropout_p) - - def forward(self, x, x_mask, g=None): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - """ - if g is not None: - x = x + g - for i in range(self.num_layers): - y = self.convs_sep[i](x * x_mask) - y = self.norms_1[i](y) - y = F.gelu(y) - y = self.convs_1x1[i](y) - y = self.norms_2[i](y) - y = F.gelu(y) - y = self.dropout(y) - x = x + y - return x * x_mask - - -class ElementwiseAffine(nn.Module): - """Element-wise affine transform like no-population stats BatchNorm alternative. - - Args: - channels (int): Number of input tensor channels. - """ - - def __init__(self, channels): - super().__init__() - self.translation = nn.Parameter(torch.zeros(channels, 1)) - self.log_scale = nn.Parameter(torch.zeros(channels, 1)) - - def forward(self, x, x_mask, reverse=False, **kwargs): # pylint: disable=unused-argument - if not reverse: - y = (x * torch.exp(self.log_scale) + self.translation) * x_mask - logdet = torch.sum(self.log_scale * x_mask, [1, 2]) - return y, logdet - x = (x - self.translation) * torch.exp(-self.log_scale) * x_mask - return x - - -class ConvFlow(nn.Module): - """Dilated depth separable convolutional based spline flow. - - Args: - in_channels (int): Number of input tensor channels. - hidden_channels (int): Number of in network channels. - kernel_size (int): Convolutional kernel size. - num_layers (int): Number of convolutional layers. - num_bins (int, optional): Number of spline bins. Defaults to 10. - tail_bound (float, optional): Tail bound for PRQT. Defaults to 5.0. - """ - - def __init__( - self, - in_channels: int, - hidden_channels: int, - kernel_size: int, - num_layers: int, - num_bins=10, - tail_bound=5.0, - ): - super().__init__() - self.num_bins = num_bins - self.tail_bound = tail_bound - self.hidden_channels = hidden_channels - self.half_channels = in_channels // 2 - - self.pre = nn.Conv1d(self.half_channels, hidden_channels, 1) - self.convs = DilatedDepthSeparableConv(hidden_channels, kernel_size, num_layers, dropout_p=0.0) - self.proj = nn.Conv1d(hidden_channels, self.half_channels * (num_bins * 3 - 1), 1) - self.proj.weight.data.zero_() - self.proj.bias.data.zero_() - - def forward(self, x, x_mask, g=None, reverse=False): - x0, x1 = torch.split(x, [self.half_channels] * 2, 1) - h = self.pre(x0) - h = self.convs(h, x_mask, g=g) - h = self.proj(h) * x_mask - - b, c, t = x0.shape - h = h.reshape(b, c, -1, t).permute(0, 1, 3, 2) # [b, cx?, t] -> [b, c, t, ?] - - unnormalized_widths = h[..., : self.num_bins] / math.sqrt(self.hidden_channels) - unnormalized_heights = h[..., self.num_bins : 2 * self.num_bins] / math.sqrt(self.hidden_channels) - unnormalized_derivatives = h[..., 2 * self.num_bins :] - - x1, logabsdet = piecewise_rational_quadratic_transform( - x1, - unnormalized_widths, - unnormalized_heights, - unnormalized_derivatives, - inverse=reverse, - tails="linear", - tail_bound=self.tail_bound, - ) - - x = torch.cat([x0, x1], 1) * x_mask - logdet = torch.sum(logabsdet * x_mask, [1, 2]) - if not reverse: - return x, logdet - return x - - -class StochasticDurationPredictor(nn.Module): - """Stochastic duration predictor with Spline Flows. - - It applies Variational Dequantization and Variational Data Augmentation. - - Paper: - SDP: https://arxiv.org/pdf/2106.06103.pdf - Spline Flow: https://arxiv.org/abs/1906.04032 - - :: - ## Inference - - x -> TextCondEncoder() -> Flow() -> dr_hat - noise ----------------------^ - - ## Training - |---------------------| - x -> TextCondEncoder() -> + -> PosteriorEncoder() -> split() -> z_u, z_v -> (d - z_u) -> concat() -> Flow() -> noise - d -> DurCondEncoder() -> ^ | - |------------------------------------------------------------------------------| - - Args: - in_channels (int): Number of input tensor channels. - hidden_channels (int): Number of hidden channels. - kernel_size (int): Kernel size of convolutional layers. - dropout_p (float): Dropout rate. - num_flows (int, optional): Number of flow blocks. Defaults to 4. - cond_channels (int, optional): Number of channels of conditioning tensor. Defaults to 0. - """ - - def __init__( - self, - in_channels: int, - hidden_channels: int, - kernel_size: int, - dropout_p: float, - num_flows=4, - cond_channels=0, - language_emb_dim=0, - ): - super().__init__() - - # add language embedding dim in the input - if language_emb_dim: - in_channels += language_emb_dim - - # condition encoder text - self.pre = nn.Conv1d(in_channels, hidden_channels, 1) - self.convs = DilatedDepthSeparableConv(hidden_channels, kernel_size, num_layers=3, dropout_p=dropout_p) - self.proj = nn.Conv1d(hidden_channels, hidden_channels, 1) - - # posterior encoder - self.flows = nn.ModuleList() - self.flows.append(ElementwiseAffine(2)) - self.flows += [ConvFlow(2, hidden_channels, kernel_size, num_layers=3) for _ in range(num_flows)] - - # condition encoder duration - self.post_pre = nn.Conv1d(1, hidden_channels, 1) - self.post_convs = DilatedDepthSeparableConv(hidden_channels, kernel_size, num_layers=3, dropout_p=dropout_p) - self.post_proj = nn.Conv1d(hidden_channels, hidden_channels, 1) - - # flow layers - self.post_flows = nn.ModuleList() - self.post_flows.append(ElementwiseAffine(2)) - self.post_flows += [ConvFlow(2, hidden_channels, kernel_size, num_layers=3) for _ in range(num_flows)] - - if cond_channels != 0 and cond_channels is not None: - self.cond = nn.Conv1d(cond_channels, hidden_channels, 1) - - if language_emb_dim != 0 and language_emb_dim is not None: - self.cond_lang = nn.Conv1d(language_emb_dim, hidden_channels, 1) - - def forward(self, x, x_mask, dr=None, g=None, lang_emb=None, reverse=False, noise_scale=1.0): - """ - Shapes: - - x: :math:`[B, C, T]` - - x_mask: :math:`[B, 1, T]` - - dr: :math:`[B, 1, T]` - - g: :math:`[B, C]` - """ - # condition encoder text - x = self.pre(x) - if g is not None: - x = x + self.cond(g) - - if lang_emb is not None: - x = x + self.cond_lang(lang_emb) - - x = self.convs(x, x_mask) - x = self.proj(x) * x_mask - - if not reverse: - flows = self.flows - assert dr is not None - - # condition encoder duration - h = self.post_pre(dr) - h = self.post_convs(h, x_mask) - h = self.post_proj(h) * x_mask - noise = torch.randn(dr.size(0), 2, dr.size(2)).to(device=x.device, dtype=x.dtype) * x_mask - z_q = noise - - # posterior encoder - logdet_tot_q = 0.0 - for idx, flow in enumerate(self.post_flows): - z_q, logdet_q = flow(z_q, x_mask, g=(x + h)) - logdet_tot_q = logdet_tot_q + logdet_q - if idx > 0: - z_q = torch.flip(z_q, [1]) - - z_u, z_v = torch.split(z_q, [1, 1], 1) - u = torch.sigmoid(z_u) * x_mask - z0 = (dr - u) * x_mask - - # posterior encoder - neg log likelihood - logdet_tot_q += torch.sum((F.logsigmoid(z_u) + F.logsigmoid(-z_u)) * x_mask, [1, 2]) - nll_posterior_encoder = ( - torch.sum(-0.5 * (math.log(2 * math.pi) + (noise**2)) * x_mask, [1, 2]) - logdet_tot_q - ) - - z0 = torch.log(torch.clamp_min(z0, 1e-5)) * x_mask - logdet_tot = torch.sum(-z0, [1, 2]) - z = torch.cat([z0, z_v], 1) - - # flow layers - for idx, flow in enumerate(flows): - z, logdet = flow(z, x_mask, g=x, reverse=reverse) - logdet_tot = logdet_tot + logdet - if idx > 0: - z = torch.flip(z, [1]) - - # flow layers - neg log likelihood - nll_flow_layers = torch.sum(0.5 * (math.log(2 * math.pi) + (z**2)) * x_mask, [1, 2]) - logdet_tot - return nll_flow_layers + nll_posterior_encoder - - flows = list(reversed(self.flows)) - flows = flows[:-2] + [flows[-1]] # remove a useless vflow - z = torch.randn(x.size(0), 2, x.size(2)).to(device=x.device, dtype=x.dtype) * noise_scale - for flow in flows: - z = torch.flip(z, [1]) - z = flow(z, x_mask, g=x, reverse=reverse) - - z0, _ = torch.split(z, [1, 1], 1) - logw = z0 - return logw diff --git a/TTS/tts/layers/vits/transforms.py b/TTS/tts/layers/vits/transforms.py deleted file mode 100644 index 3cac1b8d6d12fe98123ca554899978782cf3b4c5..0000000000000000000000000000000000000000 --- a/TTS/tts/layers/vits/transforms.py +++ /dev/null @@ -1,202 +0,0 @@ -# adopted from https://github.com/bayesiains/nflows - -import numpy as np -import torch -from torch.nn import functional as F - -DEFAULT_MIN_BIN_WIDTH = 1e-3 -DEFAULT_MIN_BIN_HEIGHT = 1e-3 -DEFAULT_MIN_DERIVATIVE = 1e-3 - - -def piecewise_rational_quadratic_transform( - inputs, - unnormalized_widths, - unnormalized_heights, - unnormalized_derivatives, - inverse=False, - tails=None, - tail_bound=1.0, - min_bin_width=DEFAULT_MIN_BIN_WIDTH, - min_bin_height=DEFAULT_MIN_BIN_HEIGHT, - min_derivative=DEFAULT_MIN_DERIVATIVE, -): - if tails is None: - spline_fn = rational_quadratic_spline - spline_kwargs = {} - else: - spline_fn = unconstrained_rational_quadratic_spline - spline_kwargs = {"tails": tails, "tail_bound": tail_bound} - - outputs, logabsdet = spline_fn( - inputs=inputs, - unnormalized_widths=unnormalized_widths, - unnormalized_heights=unnormalized_heights, - unnormalized_derivatives=unnormalized_derivatives, - inverse=inverse, - min_bin_width=min_bin_width, - min_bin_height=min_bin_height, - min_derivative=min_derivative, - **spline_kwargs, - ) - return outputs, logabsdet - - -def searchsorted(bin_locations, inputs, eps=1e-6): - bin_locations[..., -1] += eps - return torch.sum(inputs[..., None] >= bin_locations, dim=-1) - 1 - - -def unconstrained_rational_quadratic_spline( - inputs, - unnormalized_widths, - unnormalized_heights, - unnormalized_derivatives, - inverse=False, - tails="linear", - tail_bound=1.0, - min_bin_width=DEFAULT_MIN_BIN_WIDTH, - min_bin_height=DEFAULT_MIN_BIN_HEIGHT, - min_derivative=DEFAULT_MIN_DERIVATIVE, -): - inside_interval_mask = (inputs >= -tail_bound) & (inputs <= tail_bound) - outside_interval_mask = ~inside_interval_mask - - outputs = torch.zeros_like(inputs) - logabsdet = torch.zeros_like(inputs) - - if tails == "linear": - unnormalized_derivatives = F.pad(unnormalized_derivatives, pad=(1, 1)) - constant = np.log(np.exp(1 - min_derivative) - 1) - unnormalized_derivatives[..., 0] = constant - unnormalized_derivatives[..., -1] = constant - - outputs[outside_interval_mask] = inputs[outside_interval_mask] - logabsdet[outside_interval_mask] = 0 - else: - raise RuntimeError("{} tails are not implemented.".format(tails)) - - outputs[inside_interval_mask], logabsdet[inside_interval_mask] = rational_quadratic_spline( - inputs=inputs[inside_interval_mask], - unnormalized_widths=unnormalized_widths[inside_interval_mask, :], - unnormalized_heights=unnormalized_heights[inside_interval_mask, :], - unnormalized_derivatives=unnormalized_derivatives[inside_interval_mask, :], - inverse=inverse, - left=-tail_bound, - right=tail_bound, - bottom=-tail_bound, - top=tail_bound, - min_bin_width=min_bin_width, - min_bin_height=min_bin_height, - min_derivative=min_derivative, - ) - - return outputs, logabsdet - - -def rational_quadratic_spline( - inputs, - unnormalized_widths, - unnormalized_heights, - unnormalized_derivatives, - inverse=False, - left=0.0, - right=1.0, - bottom=0.0, - top=1.0, - min_bin_width=DEFAULT_MIN_BIN_WIDTH, - min_bin_height=DEFAULT_MIN_BIN_HEIGHT, - min_derivative=DEFAULT_MIN_DERIVATIVE, -): - if torch.min(inputs) < left or torch.max(inputs) > right: - raise ValueError("Input to a transform is not within its domain") - - num_bins = unnormalized_widths.shape[-1] - - if min_bin_width * num_bins > 1.0: - raise ValueError("Minimal bin width too large for the number of bins") - if min_bin_height * num_bins > 1.0: - raise ValueError("Minimal bin height too large for the number of bins") - - widths = F.softmax(unnormalized_widths, dim=-1) - widths = min_bin_width + (1 - min_bin_width * num_bins) * widths - cumwidths = torch.cumsum(widths, dim=-1) - cumwidths = F.pad(cumwidths, pad=(1, 0), mode="constant", value=0.0) - cumwidths = (right - left) * cumwidths + left - cumwidths[..., 0] = left - cumwidths[..., -1] = right - widths = cumwidths[..., 1:] - cumwidths[..., :-1] - - derivatives = min_derivative + F.softplus(unnormalized_derivatives) - - heights = F.softmax(unnormalized_heights, dim=-1) - heights = min_bin_height + (1 - min_bin_height * num_bins) * heights - cumheights = torch.cumsum(heights, dim=-1) - cumheights = F.pad(cumheights, pad=(1, 0), mode="constant", value=0.0) - cumheights = (top - bottom) * cumheights + bottom - cumheights[..., 0] = bottom - cumheights[..., -1] = top - heights = cumheights[..., 1:] - cumheights[..., :-1] - - if inverse: - bin_idx = searchsorted(cumheights, inputs)[..., None] - else: - bin_idx = searchsorted(cumwidths, inputs)[..., None] - - input_cumwidths = cumwidths.gather(-1, bin_idx)[..., 0] - input_bin_widths = widths.gather(-1, bin_idx)[..., 0] - - input_cumheights = cumheights.gather(-1, bin_idx)[..., 0] - delta = heights / widths - input_delta = delta.gather(-1, bin_idx)[..., 0] - - input_derivatives = derivatives.gather(-1, bin_idx)[..., 0] - input_derivatives_plus_one = derivatives[..., 1:].gather(-1, bin_idx)[..., 0] - - input_heights = heights.gather(-1, bin_idx)[..., 0] - - if inverse: - a = (inputs - input_cumheights) * ( - input_derivatives + input_derivatives_plus_one - 2 * input_delta - ) + input_heights * (input_delta - input_derivatives) - b = input_heights * input_derivatives - (inputs - input_cumheights) * ( - input_derivatives + input_derivatives_plus_one - 2 * input_delta - ) - c = -input_delta * (inputs - input_cumheights) - - discriminant = b.pow(2) - 4 * a * c - assert (discriminant >= 0).all() - - root = (2 * c) / (-b - torch.sqrt(discriminant)) - outputs = root * input_bin_widths + input_cumwidths - - theta_one_minus_theta = root * (1 - root) - denominator = input_delta + ( - (input_derivatives + input_derivatives_plus_one - 2 * input_delta) * theta_one_minus_theta - ) - derivative_numerator = input_delta.pow(2) * ( - input_derivatives_plus_one * root.pow(2) - + 2 * input_delta * theta_one_minus_theta - + input_derivatives * (1 - root).pow(2) - ) - logabsdet = torch.log(derivative_numerator) - 2 * torch.log(denominator) - - return outputs, -logabsdet - else: - theta = (inputs - input_cumwidths) / input_bin_widths - theta_one_minus_theta = theta * (1 - theta) - - numerator = input_heights * (input_delta * theta.pow(2) + input_derivatives * theta_one_minus_theta) - denominator = input_delta + ( - (input_derivatives + input_derivatives_plus_one - 2 * input_delta) * theta_one_minus_theta - ) - outputs = input_cumheights + numerator / denominator - - derivative_numerator = input_delta.pow(2) * ( - input_derivatives_plus_one * theta.pow(2) - + 2 * input_delta * theta_one_minus_theta - + input_derivatives * (1 - theta).pow(2) - ) - logabsdet = torch.log(derivative_numerator) - 2 * torch.log(denominator) - - return outputs, logabsdet diff --git a/TTS/tts/models/__init__.py b/TTS/tts/models/__init__.py deleted file mode 100644 index 2bd2e5f0875a84633e707702cd7d628409b12057..0000000000000000000000000000000000000000 --- a/TTS/tts/models/__init__.py +++ /dev/null @@ -1,14 +0,0 @@ -from typing import Dict, List, Union - -from TTS.utils.generic_utils import find_module - - -def setup_model(config: "Coqpit", samples: Union[List[List], List[Dict]] = None) -> "BaseTTS": - print(" > Using model: {}".format(config.model)) - # fetch the right model implementation. - if "base_model" in config and config["base_model"] is not None: - MyModel = find_module("TTS.tts.models", config.base_model.lower()) - else: - MyModel = find_module("TTS.tts.models", config.model.lower()) - model = MyModel.init_from_config(config=config, samples=samples) - return model diff --git a/TTS/tts/models/align_tts.py b/TTS/tts/models/align_tts.py deleted file mode 100644 index b2e51de7d6ab37951e3838e6804ca8e9b71338cf..0000000000000000000000000000000000000000 --- a/TTS/tts/models/align_tts.py +++ /dev/null @@ -1,448 +0,0 @@ -from dataclasses import dataclass, field -from typing import Dict, List, Union - -import torch -from coqpit import Coqpit -from torch import nn - -from TTS.tts.layers.align_tts.mdn import MDNBlock -from TTS.tts.layers.feed_forward.decoder import Decoder -from TTS.tts.layers.feed_forward.duration_predictor import DurationPredictor -from TTS.tts.layers.feed_forward.encoder import Encoder -from TTS.tts.layers.generic.pos_encoding import PositionalEncoding -from TTS.tts.models.base_tts import BaseTTS -from TTS.tts.utils.helpers import generate_path, maximum_path, sequence_mask -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram -from TTS.utils.io import load_fsspec - - -@dataclass -class AlignTTSArgs(Coqpit): - """ - Args: - num_chars (int): - number of unique input to characters - out_channels (int): - number of output tensor channels. It is equal to the expected spectrogram size. - hidden_channels (int): - number of channels in all the model layers. - hidden_channels_ffn (int): - number of channels in transformer's conv layers. - hidden_channels_dp (int): - number of channels in duration predictor network. - num_heads (int): - number of attention heads in transformer networks. - num_transformer_layers (int): - number of layers in encoder and decoder transformer blocks. - dropout_p (int): - dropout rate in transformer layers. - length_scale (int, optional): - coefficient to set the speech speed. <1 slower, >1 faster. Defaults to 1. - num_speakers (int, optional): - number of speakers for multi-speaker training. Defaults to 0. - external_c (bool, optional): - enable external speaker embeddings. Defaults to False. - c_in_channels (int, optional): - number of channels in speaker embedding vectors. Defaults to 0. - """ - - num_chars: int = None - out_channels: int = 80 - hidden_channels: int = 256 - hidden_channels_dp: int = 256 - encoder_type: str = "fftransformer" - encoder_params: dict = field( - default_factory=lambda: {"hidden_channels_ffn": 1024, "num_heads": 2, "num_layers": 6, "dropout_p": 0.1} - ) - decoder_type: str = "fftransformer" - decoder_params: dict = field( - default_factory=lambda: {"hidden_channels_ffn": 1024, "num_heads": 2, "num_layers": 6, "dropout_p": 0.1} - ) - length_scale: float = 1.0 - num_speakers: int = 0 - use_speaker_embedding: bool = False - use_d_vector_file: bool = False - d_vector_dim: int = 0 - - -class AlignTTS(BaseTTS): - """AlignTTS with modified duration predictor. - https://arxiv.org/pdf/2003.01950.pdf - - Encoder -> DurationPredictor -> Decoder - - Check :class:`AlignTTSArgs` for the class arguments. - - Paper Abstract: - Targeting at both high efficiency and performance, we propose AlignTTS to predict the - mel-spectrum in parallel. AlignTTS is based on a Feed-Forward Transformer which generates mel-spectrum from a - sequence of characters, and the duration of each character is determined by a duration predictor.Instead of - adopting the attention mechanism in Transformer TTS to align text to mel-spectrum, the alignment loss is presented - to consider all possible alignments in training by use of dynamic programming. Experiments on the LJSpeech dataset s - how that our model achieves not only state-of-the-art performance which outperforms Transformer TTS by 0.03 in mean - option score (MOS), but also a high efficiency which is more than 50 times faster than real-time. - - Note: - Original model uses a separate character embedding layer for duration predictor. However, it causes the - duration predictor to overfit and prevents learning higher level interactions among characters. Therefore, - we predict durations based on encoder outputs which has higher level information about input characters. This - enables training without phases as in the original paper. - - Original model uses Transormers in encoder and decoder layers. However, here you can set the architecture - differently based on your requirements using ```encoder_type``` and ```decoder_type``` parameters. - - Examples: - >>> from TTS.tts.configs.align_tts_config import AlignTTSConfig - >>> config = AlignTTSConfig() - >>> model = AlignTTS(config) - - """ - - # pylint: disable=dangerous-default-value - - def __init__( - self, - config: "AlignTTSConfig", - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - self.speaker_manager = speaker_manager - self.phase = -1 - self.length_scale = ( - float(config.model_args.length_scale) - if isinstance(config.model_args.length_scale, int) - else config.model_args.length_scale - ) - - self.emb = nn.Embedding(self.config.model_args.num_chars, self.config.model_args.hidden_channels) - - self.embedded_speaker_dim = 0 - self.init_multispeaker(config) - - self.pos_encoder = PositionalEncoding(config.model_args.hidden_channels) - self.encoder = Encoder( - config.model_args.hidden_channels, - config.model_args.hidden_channels, - config.model_args.encoder_type, - config.model_args.encoder_params, - self.embedded_speaker_dim, - ) - self.decoder = Decoder( - config.model_args.out_channels, - config.model_args.hidden_channels, - config.model_args.decoder_type, - config.model_args.decoder_params, - ) - self.duration_predictor = DurationPredictor(config.model_args.hidden_channels_dp) - - self.mod_layer = nn.Conv1d(config.model_args.hidden_channels, config.model_args.hidden_channels, 1) - - self.mdn_block = MDNBlock(config.model_args.hidden_channels, 2 * config.model_args.out_channels) - - if self.embedded_speaker_dim > 0 and self.embedded_speaker_dim != config.model_args.hidden_channels: - self.proj_g = nn.Conv1d(self.embedded_speaker_dim, config.model_args.hidden_channels, 1) - - @staticmethod - def compute_log_probs(mu, log_sigma, y): - # pylint: disable=protected-access, c-extension-no-member - y = y.transpose(1, 2).unsqueeze(1) # [B, 1, T1, D] - mu = mu.transpose(1, 2).unsqueeze(2) # [B, T2, 1, D] - log_sigma = log_sigma.transpose(1, 2).unsqueeze(2) # [B, T2, 1, D] - expanded_y, expanded_mu = torch.broadcast_tensors(y, mu) - exponential = -0.5 * torch.mean( - torch._C._nn.mse_loss(expanded_y, expanded_mu, 0) / torch.pow(log_sigma.exp(), 2), dim=-1 - ) # B, L, T - logp = exponential - 0.5 * log_sigma.mean(dim=-1) - return logp - - def compute_align_path(self, mu, log_sigma, y, x_mask, y_mask): - # find the max alignment path - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - log_p = self.compute_log_probs(mu, log_sigma, y) - # [B, T_en, T_dec] - attn = maximum_path(log_p, attn_mask.squeeze(1)).unsqueeze(1) - dr_mas = torch.sum(attn, -1) - return dr_mas.squeeze(1), log_p - - @staticmethod - def generate_attn(dr, x_mask, y_mask=None): - # compute decode mask from the durations - if y_mask is None: - y_lengths = dr.sum(1).long() - y_lengths[y_lengths < 1] = 1 - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(dr.dtype) - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - attn = generate_path(dr, attn_mask.squeeze(1)).to(dr.dtype) - return attn - - def expand_encoder_outputs(self, en, dr, x_mask, y_mask): - """Generate attention alignment map from durations and - expand encoder outputs - - Examples:: - - encoder output: [a,b,c,d] - - durations: [1, 3, 2, 1] - - - expanded: [a, b, b, b, c, c, d] - - attention map: [[0, 0, 0, 0, 0, 0, 1], - [0, 0, 0, 0, 1, 1, 0], - [0, 1, 1, 1, 0, 0, 0], - [1, 0, 0, 0, 0, 0, 0]] - """ - attn = self.generate_attn(dr, x_mask, y_mask) - o_en_ex = torch.matmul(attn.squeeze(1).transpose(1, 2), en.transpose(1, 2)).transpose(1, 2) - return o_en_ex, attn - - def format_durations(self, o_dr_log, x_mask): - o_dr = (torch.exp(o_dr_log) - 1) * x_mask * self.length_scale - o_dr[o_dr < 1] = 1.0 - o_dr = torch.round(o_dr) - return o_dr - - @staticmethod - def _concat_speaker_embedding(o_en, g): - g_exp = g.expand(-1, -1, o_en.size(-1)) # [B, C, T_en] - o_en = torch.cat([o_en, g_exp], 1) - return o_en - - def _sum_speaker_embedding(self, x, g): - # project g to decoder dim. - if hasattr(self, "proj_g"): - g = self.proj_g(g) - - return x + g - - def _forward_encoder(self, x, x_lengths, g=None): - if hasattr(self, "emb_g"): - g = nn.functional.normalize(self.speaker_embedding(g)) # [B, C, 1] - - if g is not None: - g = g.unsqueeze(-1) - - # [B, T, C] - x_emb = self.emb(x) - # [B, C, T] - x_emb = torch.transpose(x_emb, 1, -1) - - # compute sequence masks - x_mask = torch.unsqueeze(sequence_mask(x_lengths, x.shape[1]), 1).to(x.dtype) - - # encoder pass - o_en = self.encoder(x_emb, x_mask) - - # speaker conditioning for duration predictor - if g is not None: - o_en_dp = self._concat_speaker_embedding(o_en, g) - else: - o_en_dp = o_en - return o_en, o_en_dp, x_mask, g - - def _forward_decoder(self, o_en, o_en_dp, dr, x_mask, y_lengths, g): - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(o_en_dp.dtype) - # expand o_en with durations - o_en_ex, attn = self.expand_encoder_outputs(o_en, dr, x_mask, y_mask) - # positional encoding - if hasattr(self, "pos_encoder"): - o_en_ex = self.pos_encoder(o_en_ex, y_mask) - # speaker embedding - if g is not None: - o_en_ex = self._sum_speaker_embedding(o_en_ex, g) - # decoder pass - o_de = self.decoder(o_en_ex, y_mask, g=g) - return o_de, attn.transpose(1, 2) - - def _forward_mdn(self, o_en, y, y_lengths, x_mask): - # MAS potentials and alignment - mu, log_sigma = self.mdn_block(o_en) - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(o_en.dtype) - dr_mas, logp = self.compute_align_path(mu, log_sigma, y, x_mask, y_mask) - return dr_mas, mu, log_sigma, logp - - def forward( - self, x, x_lengths, y, y_lengths, aux_input={"d_vectors": None}, phase=None - ): # pylint: disable=unused-argument - """ - Shapes: - - x: :math:`[B, T_max]` - - x_lengths: :math:`[B]` - - y_lengths: :math:`[B]` - - dr: :math:`[B, T_max]` - - g: :math:`[B, C]` - """ - y = y.transpose(1, 2) - g = aux_input["d_vectors"] if "d_vectors" in aux_input else None - o_de, o_dr_log, dr_mas_log, attn, mu, log_sigma, logp = None, None, None, None, None, None, None - if phase == 0: - # train encoder and MDN - o_en, o_en_dp, x_mask, g = self._forward_encoder(x, x_lengths, g) - dr_mas, mu, log_sigma, logp = self._forward_mdn(o_en, y, y_lengths, x_mask) - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(o_en_dp.dtype) - attn = self.generate_attn(dr_mas, x_mask, y_mask) - elif phase == 1: - # train decoder - o_en, o_en_dp, x_mask, g = self._forward_encoder(x, x_lengths, g) - dr_mas, _, _, _ = self._forward_mdn(o_en, y, y_lengths, x_mask) - o_de, attn = self._forward_decoder(o_en.detach(), o_en_dp.detach(), dr_mas.detach(), x_mask, y_lengths, g=g) - elif phase == 2: - # train the whole except duration predictor - o_en, o_en_dp, x_mask, g = self._forward_encoder(x, x_lengths, g) - dr_mas, mu, log_sigma, logp = self._forward_mdn(o_en, y, y_lengths, x_mask) - o_de, attn = self._forward_decoder(o_en, o_en_dp, dr_mas, x_mask, y_lengths, g=g) - elif phase == 3: - # train duration predictor - o_en, o_en_dp, x_mask, g = self._forward_encoder(x, x_lengths, g) - o_dr_log = self.duration_predictor(x, x_mask) - dr_mas, mu, log_sigma, logp = self._forward_mdn(o_en, y, y_lengths, x_mask) - o_de, attn = self._forward_decoder(o_en, o_en_dp, dr_mas, x_mask, y_lengths, g=g) - o_dr_log = o_dr_log.squeeze(1) - else: - o_en, o_en_dp, x_mask, g = self._forward_encoder(x, x_lengths, g) - o_dr_log = self.duration_predictor(o_en_dp.detach(), x_mask) - dr_mas, mu, log_sigma, logp = self._forward_mdn(o_en, y, y_lengths, x_mask) - o_de, attn = self._forward_decoder(o_en, o_en_dp, dr_mas, x_mask, y_lengths, g=g) - o_dr_log = o_dr_log.squeeze(1) - dr_mas_log = torch.log(dr_mas + 1).squeeze(1) - outputs = { - "model_outputs": o_de.transpose(1, 2), - "alignments": attn, - "durations_log": o_dr_log, - "durations_mas_log": dr_mas_log, - "mu": mu, - "log_sigma": log_sigma, - "logp": logp, - } - return outputs - - @torch.no_grad() - def inference(self, x, aux_input={"d_vectors": None}): # pylint: disable=unused-argument - """ - Shapes: - - x: :math:`[B, T_max]` - - x_lengths: :math:`[B]` - - g: :math:`[B, C]` - """ - g = aux_input["d_vectors"] if "d_vectors" in aux_input else None - x_lengths = torch.tensor(x.shape[1:2]).to(x.device) - # pad input to prevent dropping the last word - # x = torch.nn.functional.pad(x, pad=(0, 5), mode='constant', value=0) - o_en, o_en_dp, x_mask, g = self._forward_encoder(x, x_lengths, g) - # o_dr_log = self.duration_predictor(x, x_mask) - o_dr_log = self.duration_predictor(o_en_dp, x_mask) - # duration predictor pass - o_dr = self.format_durations(o_dr_log, x_mask).squeeze(1) - y_lengths = o_dr.sum(1) - o_de, attn = self._forward_decoder(o_en, o_en_dp, o_dr, x_mask, y_lengths, g=g) - outputs = {"model_outputs": o_de.transpose(1, 2), "alignments": attn} - return outputs - - def train_step(self, batch: dict, criterion: nn.Module): - text_input = batch["text_input"] - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - mel_lengths = batch["mel_lengths"] - d_vectors = batch["d_vectors"] - speaker_ids = batch["speaker_ids"] - - aux_input = {"d_vectors": d_vectors, "speaker_ids": speaker_ids} - outputs = self.forward(text_input, text_lengths, mel_input, mel_lengths, aux_input, self.phase) - loss_dict = criterion( - outputs["logp"], - outputs["model_outputs"], - mel_input, - mel_lengths, - outputs["durations_log"], - outputs["durations_mas_log"], - text_lengths, - phase=self.phase, - ) - - return outputs, loss_dict - - def _create_logs(self, batch, outputs, ap): # pylint: disable=no-self-use - model_outputs = outputs["model_outputs"] - alignments = outputs["alignments"] - mel_input = batch["mel_input"] - - pred_spec = model_outputs[0].data.cpu().numpy() - gt_spec = mel_input[0].data.cpu().numpy() - align_img = alignments[0].data.cpu().numpy() - - figures = { - "prediction": plot_spectrogram(pred_spec, ap, output_fig=False), - "ground_truth": plot_spectrogram(gt_spec, ap, output_fig=False), - "alignment": plot_alignment(align_img, output_fig=False), - } - - # Sample audio - train_audio = ap.inv_melspectrogram(pred_spec.T) - return figures, {"audio": train_audio} - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ) -> None: # pylint: disable=no-self-use - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - def eval_step(self, batch: dict, criterion: nn.Module): - return self.train_step(batch, criterion) - - def eval_log(self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int) -> None: - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - - def get_criterion(self): - from TTS.tts.layers.losses import AlignTTSLoss # pylint: disable=import-outside-toplevel - - return AlignTTSLoss(self.config) - - @staticmethod - def _set_phase(config, global_step): - """Decide AlignTTS training phase""" - if isinstance(config.phase_start_steps, list): - vals = [i < global_step for i in config.phase_start_steps] - if not True in vals: - phase = 0 - else: - phase = ( - len(config.phase_start_steps) - - [i < global_step for i in config.phase_start_steps][::-1].index(True) - - 1 - ) - else: - phase = None - return phase - - def on_epoch_start(self, trainer): - """Set AlignTTS training phase on epoch start.""" - self.phase = self._set_phase(trainer.config, trainer.total_steps_done) - - @staticmethod - def init_from_config(config: "AlignTTSConfig", samples: Union[List[List], List[Dict]] = None): - """Initiate model from config - - Args: - config (AlignTTSConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - """ - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config, samples) - return AlignTTS(new_config, ap, tokenizer, speaker_manager) diff --git a/TTS/tts/models/bark.py b/TTS/tts/models/bark.py deleted file mode 100644 index 23b76b4171e47607bd81fbc682d929ccdb88aa93..0000000000000000000000000000000000000000 --- a/TTS/tts/models/bark.py +++ /dev/null @@ -1,282 +0,0 @@ -import os -from dataclasses import dataclass -from typing import Optional - -import numpy as np -from coqpit import Coqpit -from encodec import EncodecModel -from transformers import BertTokenizer - -from TTS.tts.layers.bark.inference_funcs import ( - codec_decode, - generate_coarse, - generate_fine, - generate_text_semantic, - generate_voice, - load_voice, -) -from TTS.tts.layers.bark.load_model import load_model -from TTS.tts.layers.bark.model import GPT -from TTS.tts.layers.bark.model_fine import FineGPT -from TTS.tts.models.base_tts import BaseTTS - - -@dataclass -class BarkAudioConfig(Coqpit): - sample_rate: int = 24000 - output_sample_rate: int = 24000 - - -class Bark(BaseTTS): - def __init__( - self, - config: Coqpit, - tokenizer: BertTokenizer = BertTokenizer.from_pretrained("bert-base-multilingual-cased"), - ) -> None: - super().__init__(config=config, ap=None, tokenizer=None, speaker_manager=None, language_manager=None) - self.config.num_chars = len(tokenizer) - self.tokenizer = tokenizer - self.semantic_model = GPT(config.semantic_config) - self.coarse_model = GPT(config.coarse_config) - self.fine_model = FineGPT(config.fine_config) - self.encodec = EncodecModel.encodec_model_24khz() - self.encodec.set_target_bandwidth(6.0) - - @property - def device(self): - return next(self.parameters()).device - - def load_bark_models(self): - self.semantic_model, self.config = load_model( - ckpt_path=self.config.LOCAL_MODEL_PATHS["text"], device=self.device, config=self.config, model_type="text" - ) - self.coarse_model, self.config = load_model( - ckpt_path=self.config.LOCAL_MODEL_PATHS["coarse"], - device=self.device, - config=self.config, - model_type="coarse", - ) - self.fine_model, self.config = load_model( - ckpt_path=self.config.LOCAL_MODEL_PATHS["fine"], device=self.device, config=self.config, model_type="fine" - ) - - def train_step( - self, - ): - pass - - def text_to_semantic( - self, - text: str, - history_prompt: Optional[str] = None, - temp: float = 0.7, - base=None, - allow_early_stop=True, - **kwargs, - ): - """Generate semantic array from text. - - Args: - text: text to be turned into audio - history_prompt: history choice for audio cloning - temp: generation temperature (1.0 more diverse, 0.0 more conservative) - - Returns: - numpy semantic array to be fed into `semantic_to_waveform` - """ - x_semantic = generate_text_semantic( - text, - self, - history_prompt=history_prompt, - temp=temp, - base=base, - allow_early_stop=allow_early_stop, - **kwargs, - ) - return x_semantic - - def semantic_to_waveform( - self, - semantic_tokens: np.ndarray, - history_prompt: Optional[str] = None, - temp: float = 0.7, - base=None, - ): - """Generate audio array from semantic input. - - Args: - semantic_tokens: semantic token output from `text_to_semantic` - history_prompt: history choice for audio cloning - temp: generation temperature (1.0 more diverse, 0.0 more conservative) - - Returns: - numpy audio array at sample frequency 24khz - """ - x_coarse_gen = generate_coarse( - semantic_tokens, - self, - history_prompt=history_prompt, - temp=temp, - base=base, - ) - x_fine_gen = generate_fine( - x_coarse_gen, - self, - history_prompt=history_prompt, - temp=0.5, - base=base, - ) - audio_arr = codec_decode(x_fine_gen, self) - return audio_arr, x_coarse_gen, x_fine_gen - - def generate_audio( - self, - text: str, - history_prompt: Optional[str] = None, - text_temp: float = 0.7, - waveform_temp: float = 0.7, - base=None, - allow_early_stop=True, - **kwargs, - ): - """Generate audio array from input text. - - Args: - text: text to be turned into audio - history_prompt: history choice for audio cloning - text_temp: generation temperature (1.0 more diverse, 0.0 more conservative) - waveform_temp: generation temperature (1.0 more diverse, 0.0 more conservative) - - Returns: - numpy audio array at sample frequency 24khz - """ - x_semantic = self.text_to_semantic( - text, - history_prompt=history_prompt, - temp=text_temp, - base=base, - allow_early_stop=allow_early_stop, - **kwargs, - ) - audio_arr, c, f = self.semantic_to_waveform( - x_semantic, history_prompt=history_prompt, temp=waveform_temp, base=base - ) - return audio_arr, [x_semantic, c, f] - - def generate_voice(self, audio, speaker_id, voice_dir): - """Generate a voice from the given audio and text. - - Args: - audio (str): Path to the audio file. - speaker_id (str): Speaker name. - voice_dir (str): Path to the directory to save the generate voice. - """ - if voice_dir is not None: - voice_dirs = [voice_dir] - try: - _ = load_voice(speaker_id, voice_dirs) - except (KeyError, FileNotFoundError): - output_path = os.path.join(voice_dir, speaker_id + ".npz") - os.makedirs(voice_dir, exist_ok=True) - generate_voice(audio, self, output_path) - - def _set_voice_dirs(self, voice_dirs): - def_voice_dir = None - if isinstance(self.config.DEF_SPEAKER_DIR, str): - os.makedirs(self.config.DEF_SPEAKER_DIR, exist_ok=True) - if os.path.isdir(self.config.DEF_SPEAKER_DIR): - def_voice_dir = self.config.DEF_SPEAKER_DIR - _voice_dirs = [def_voice_dir] if def_voice_dir is not None else [] - if voice_dirs is not None: - if isinstance(voice_dirs, str): - voice_dirs = [voice_dirs] - _voice_dirs = voice_dirs + _voice_dirs - return _voice_dirs - - # TODO: remove config from synthesize - def synthesize( - self, text, config, speaker_id="random", voice_dirs=None, **kwargs - ): # pylint: disable=unused-argument - """Synthesize speech with the given input text. - - Args: - text (str): Input text. - config (BarkConfig): Config with inference parameters. - speaker_id (str): One of the available speaker names. If `random`, it generates a random speaker. - speaker_wav (str): Path to the speaker audio file for cloning a new voice. It is cloned and saved in - `voice_dirs` with the name `speaker_id`. Defaults to None. - voice_dirs (List[str]): List of paths that host reference audio files for speakers. Defaults to None. - **kwargs: Model specific inference settings used by `generate_audio()` and `TTS.tts.layers.bark.inference_funcs.generate_text_semantic(). - - Returns: - A dictionary of the output values with `wav` as output waveform, `deterministic_seed` as seed used at inference, - `text_input` as text token IDs after tokenizer, `voice_samples` as samples used for cloning, `conditioning_latents` - as latents used at inference. - - """ - speaker_id = "random" if speaker_id is None else speaker_id - voice_dirs = self._set_voice_dirs(voice_dirs) - history_prompt = load_voice(self, speaker_id, voice_dirs) - outputs = self.generate_audio(text, history_prompt=history_prompt, **kwargs) - return_dict = { - "wav": outputs[0], - "text_inputs": text, - } - - return return_dict - - def eval_step(self): - ... - - def forward(self): - ... - - def inference(self): - ... - - @staticmethod - def init_from_config(config: "BarkConfig", **kwargs): # pylint: disable=unused-argument - return Bark(config) - - # pylint: disable=unused-argument, redefined-builtin - def load_checkpoint( - self, - config, - checkpoint_dir, - text_model_path=None, - coarse_model_path=None, - fine_model_path=None, - eval=False, - strict=True, - **kwargs, - ): - """Load a model checkpoints from a directory. This model is with multiple checkpoint files and it - expects to have all the files to be under the given `checkpoint_dir` with the rigth names. - If eval is True, set the model to eval mode. - - Args: - config (TortoiseConfig): The model config. - checkpoint_dir (str): The directory where the checkpoints are stored. - ar_checkpoint_path (str, optional): The path to the autoregressive checkpoint. Defaults to None. - diff_checkpoint_path (str, optional): The path to the diffusion checkpoint. Defaults to None. - clvp_checkpoint_path (str, optional): The path to the CLVP checkpoint. Defaults to None. - vocoder_checkpoint_path (str, optional): The path to the vocoder checkpoint. Defaults to None. - eval (bool, optional): Whether to set the model to eval mode. Defaults to False. - strict (bool, optional): Whether to load the model strictly. Defaults to True. - """ - text_model_path = text_model_path or os.path.join(checkpoint_dir, "text_2.pt") - coarse_model_path = coarse_model_path or os.path.join(checkpoint_dir, "coarse_2.pt") - fine_model_path = fine_model_path or os.path.join(checkpoint_dir, "fine_2.pt") - - self.config.LOCAL_MODEL_PATHS["text"] = text_model_path - self.config.LOCAL_MODEL_PATHS["coarse"] = coarse_model_path - self.config.LOCAL_MODEL_PATHS["fine"] = fine_model_path - - # This is workaround I found. I know this is not good solution, but it works for now - self.config.LOCAL_MODEL_PATHS["hubert_tokenizer"] = os.path.join(checkpoint_dir, "hubert_tokenizer.pth") - self.config.LOCAL_MODEL_PATHS["hubert"] = os.path.join(checkpoint_dir, "hubert.pt") - - self.load_bark_models() - - if eval: - self.eval() diff --git a/TTS/tts/models/base_tacotron.py b/TTS/tts/models/base_tacotron.py deleted file mode 100644 index f38dace23559d9940b9a57cab479686f42172540..0000000000000000000000000000000000000000 --- a/TTS/tts/models/base_tacotron.py +++ /dev/null @@ -1,305 +0,0 @@ -import copy -from abc import abstractmethod -from typing import Dict, Tuple - -import torch -from coqpit import Coqpit -from torch import nn - -from TTS.tts.layers.losses import TacotronLoss -from TTS.tts.models.base_tts import BaseTTS -from TTS.tts.utils.helpers import sequence_mask -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.synthesis import synthesis -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram -from TTS.utils.generic_utils import format_aux_input -from TTS.utils.io import load_fsspec -from TTS.utils.training import gradual_training_scheduler - - -class BaseTacotron(BaseTTS): - """Base class shared by Tacotron and Tacotron2""" - - def __init__( - self, - config: "TacotronConfig", - ap: "AudioProcessor", - tokenizer: "TTSTokenizer", - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - - # pass all config fields as class attributes - for key in config: - setattr(self, key, config[key]) - - # layers - self.embedding = None - self.encoder = None - self.decoder = None - self.postnet = None - - # init tensors - self.embedded_speakers = None - self.embedded_speakers_projected = None - - # global style token - if self.gst and self.use_gst: - self.decoder_in_features += self.gst.gst_embedding_dim # add gst embedding dim - self.gst_layer = None - - # Capacitron - if self.capacitron_vae and self.use_capacitron_vae: - self.decoder_in_features += self.capacitron_vae.capacitron_VAE_embedding_dim # add capacitron embedding dim - self.capacitron_vae_layer = None - - # additional layers - self.decoder_backward = None - self.coarse_decoder = None - - @staticmethod - def _format_aux_input(aux_input: Dict) -> Dict: - """Set missing fields to their default values""" - if aux_input: - return format_aux_input({"d_vectors": None, "speaker_ids": None}, aux_input) - return None - - ############################# - # INIT FUNCTIONS - ############################# - - def _init_backward_decoder(self): - """Init the backward decoder for Forward-Backward decoding.""" - self.decoder_backward = copy.deepcopy(self.decoder) - - def _init_coarse_decoder(self): - """Init the coarse decoder for Double-Decoder Consistency.""" - self.coarse_decoder = copy.deepcopy(self.decoder) - self.coarse_decoder.r_init = self.ddc_r - self.coarse_decoder.set_r(self.ddc_r) - - ############################# - # CORE FUNCTIONS - ############################# - - @abstractmethod - def forward(self): - pass - - @abstractmethod - def inference(self): - pass - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - """Load model checkpoint and set up internals. - - Args: - config (Coqpi): model configuration. - checkpoint_path (str): path to checkpoint file. - eval (bool, optional): whether to load model for evaluation. - cache (bool, optional): If True, cache the file locally for subsequent calls. It is cached under `get_user_data_dir()/tts_cache`. Defaults to False. - """ - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - # TODO: set r in run-time by taking it from the new config - if "r" in state: - # set r from the state (for compatibility with older checkpoints) - self.decoder.set_r(state["r"]) - elif "config" in state: - # set r from config used at training time (for inference) - self.decoder.set_r(state["config"]["r"]) - else: - # set r from the new config (for new-models) - self.decoder.set_r(config.r) - if eval: - self.eval() - print(f" > Model's reduction rate `r` is set to: {self.decoder.r}") - assert not self.training - - def get_criterion(self) -> nn.Module: - """Get the model criterion used in training.""" - return TacotronLoss(self.config) - - @staticmethod - def init_from_config(config: Coqpit): - """Initialize model from config.""" - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config) - tokenizer = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config) - return BaseTacotron(config, ap, tokenizer, speaker_manager) - - ########################## - # TEST AND LOG FUNCTIONS # - ########################## - - def test_run(self, assets: Dict) -> Tuple[Dict, Dict]: - """Generic test run for `tts` models used by `Trainer`. - - You can override this for a different behaviour. - - Args: - assets (dict): A dict of training assets. For `tts` models, it must include `{'audio_processor': ap}`. - - Returns: - Tuple[Dict, Dict]: Test figures and audios to be projected to Tensorboard. - """ - print(" | > Synthesizing test sentences.") - test_audios = {} - test_figures = {} - test_sentences = self.config.test_sentences - aux_inputs = self._get_test_aux_input() - for idx, sen in enumerate(test_sentences): - outputs_dict = synthesis( - self, - sen, - self.config, - "cuda" in str(next(self.parameters()).device), - speaker_id=aux_inputs["speaker_id"], - d_vector=aux_inputs["d_vector"], - style_wav=aux_inputs["style_wav"], - use_griffin_lim=True, - do_trim_silence=False, - ) - test_audios["{}-audio".format(idx)] = outputs_dict["wav"] - test_figures["{}-prediction".format(idx)] = plot_spectrogram( - outputs_dict["outputs"]["model_outputs"], self.ap, output_fig=False - ) - test_figures["{}-alignment".format(idx)] = plot_alignment( - outputs_dict["outputs"]["alignments"], output_fig=False - ) - return {"figures": test_figures, "audios": test_audios} - - def test_log( - self, outputs: dict, logger: "Logger", assets: dict, steps: int # pylint: disable=unused-argument - ) -> None: - logger.test_audios(steps, outputs["audios"], self.ap.sample_rate) - logger.test_figures(steps, outputs["figures"]) - - ############################# - # COMMON COMPUTE FUNCTIONS - ############################# - - def compute_masks(self, text_lengths, mel_lengths): - """Compute masks against sequence paddings.""" - # B x T_in_max (boolean) - input_mask = sequence_mask(text_lengths) - output_mask = None - if mel_lengths is not None: - max_len = mel_lengths.max() - r = self.decoder.r - max_len = max_len + (r - (max_len % r)) if max_len % r > 0 else max_len - output_mask = sequence_mask(mel_lengths, max_len=max_len) - return input_mask, output_mask - - def _backward_pass(self, mel_specs, encoder_outputs, mask): - """Run backwards decoder""" - decoder_outputs_b, alignments_b, _ = self.decoder_backward( - encoder_outputs, torch.flip(mel_specs, dims=(1,)), mask - ) - decoder_outputs_b = decoder_outputs_b.transpose(1, 2).contiguous() - return decoder_outputs_b, alignments_b - - def _coarse_decoder_pass(self, mel_specs, encoder_outputs, alignments, input_mask): - """Double Decoder Consistency""" - T = mel_specs.shape[1] - if T % self.coarse_decoder.r > 0: - padding_size = self.coarse_decoder.r - (T % self.coarse_decoder.r) - mel_specs = torch.nn.functional.pad(mel_specs, (0, 0, 0, padding_size, 0, 0)) - decoder_outputs_backward, alignments_backward, _ = self.coarse_decoder( - encoder_outputs.detach(), mel_specs, input_mask - ) - # scale_factor = self.decoder.r_init / self.decoder.r - alignments_backward = torch.nn.functional.interpolate( - alignments_backward.transpose(1, 2), - size=alignments.shape[1], - mode="nearest", - ).transpose(1, 2) - decoder_outputs_backward = decoder_outputs_backward.transpose(1, 2) - decoder_outputs_backward = decoder_outputs_backward[:, :T, :] - return decoder_outputs_backward, alignments_backward - - ############################# - # EMBEDDING FUNCTIONS - ############################# - - def compute_gst(self, inputs, style_input, speaker_embedding=None): - """Compute global style token""" - if isinstance(style_input, dict): - # multiply each style token with a weight - query = torch.zeros(1, 1, self.gst.gst_embedding_dim // 2).type_as(inputs) - if speaker_embedding is not None: - query = torch.cat([query, speaker_embedding.reshape(1, 1, -1)], dim=-1) - - _GST = torch.tanh(self.gst_layer.style_token_layer.style_tokens) - gst_outputs = torch.zeros(1, 1, self.gst.gst_embedding_dim).type_as(inputs) - for k_token, v_amplifier in style_input.items(): - key = _GST[int(k_token)].unsqueeze(0).expand(1, -1, -1) - gst_outputs_att = self.gst_layer.style_token_layer.attention(query, key) - gst_outputs = gst_outputs + gst_outputs_att * v_amplifier - elif style_input is None: - # ignore style token and return zero tensor - gst_outputs = torch.zeros(1, 1, self.gst.gst_embedding_dim).type_as(inputs) - else: - # compute style tokens - gst_outputs = self.gst_layer(style_input, speaker_embedding) # pylint: disable=not-callable - inputs = self._concat_speaker_embedding(inputs, gst_outputs) - return inputs - - def compute_capacitron_VAE_embedding(self, inputs, reference_mel_info, text_info=None, speaker_embedding=None): - """Capacitron Variational Autoencoder""" - ( - VAE_outputs, - posterior_distribution, - prior_distribution, - capacitron_beta, - ) = self.capacitron_vae_layer( - reference_mel_info, - text_info, - speaker_embedding, # pylint: disable=not-callable - ) - - VAE_outputs = VAE_outputs.to(inputs.device) - encoder_output = self._concat_speaker_embedding( - inputs, VAE_outputs - ) # concatenate to the output of the basic tacotron encoder - return ( - encoder_output, - posterior_distribution, - prior_distribution, - capacitron_beta, - ) - - @staticmethod - def _add_speaker_embedding(outputs, embedded_speakers): - embedded_speakers_ = embedded_speakers.expand(outputs.size(0), outputs.size(1), -1) - outputs = outputs + embedded_speakers_ - return outputs - - @staticmethod - def _concat_speaker_embedding(outputs, embedded_speakers): - embedded_speakers_ = embedded_speakers.expand(outputs.size(0), outputs.size(1), -1) - outputs = torch.cat([outputs, embedded_speakers_], dim=-1) - return outputs - - ############################# - # CALLBACKS - ############################# - - def on_epoch_start(self, trainer): - """Callback for setting values wrt gradual training schedule. - - Args: - trainer (TrainerTTS): TTS trainer object that is used to train this model. - """ - if self.gradual_training: - r, trainer.config.batch_size = gradual_training_scheduler(trainer.total_steps_done, trainer.config) - trainer.config.r = r - self.decoder.set_r(r) - if trainer.config.bidirectional_decoder: - trainer.model.decoder_backward.set_r(r) - print(f"\n > Number of output frames: {self.decoder.r}") diff --git a/TTS/tts/models/base_tts.py b/TTS/tts/models/base_tts.py deleted file mode 100644 index 7871cc38c327f59a70b6695fded64e34ff7d7626..0000000000000000000000000000000000000000 --- a/TTS/tts/models/base_tts.py +++ /dev/null @@ -1,459 +0,0 @@ -import os -import random -from typing import Dict, List, Tuple, Union - -import torch -import torch.distributed as dist -from coqpit import Coqpit -from torch import nn -from torch.utils.data import DataLoader -from torch.utils.data.sampler import WeightedRandomSampler -from trainer.torch import DistributedSampler, DistributedSamplerWrapper - -from TTS.model import BaseTrainerModel -from TTS.tts.datasets.dataset import TTSDataset -from TTS.tts.utils.data import get_length_balancer_weights -from TTS.tts.utils.languages import LanguageManager, get_language_balancer_weights -from TTS.tts.utils.speakers import SpeakerManager, get_speaker_balancer_weights, get_speaker_manager -from TTS.tts.utils.synthesis import synthesis -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram - -# pylint: skip-file - - -class BaseTTS(BaseTrainerModel): - """Base `tts` class. Every new `tts` model must inherit this. - - It defines common `tts` specific functions on top of `Model` implementation. - """ - - MODEL_TYPE = "tts" - - def __init__( - self, - config: Coqpit, - ap: "AudioProcessor", - tokenizer: "TTSTokenizer", - speaker_manager: SpeakerManager = None, - language_manager: LanguageManager = None, - ): - super().__init__() - self.config = config - self.ap = ap - self.tokenizer = tokenizer - self.speaker_manager = speaker_manager - self.language_manager = language_manager - self._set_model_args(config) - - def _set_model_args(self, config: Coqpit): - """Setup model args based on the config type (`ModelConfig` or `ModelArgs`). - - `ModelArgs` has all the fields reuqired to initialize the model architecture. - - `ModelConfig` has all the fields required for training, inference and containes `ModelArgs`. - - If the config is for training with a name like "*Config", then the model args are embeded in the - config.model_args - - If the config is for the model with a name like "*Args", then we assign the directly. - """ - # don't use isintance not to import recursively - if "Config" in config.__class__.__name__: - config_num_chars = ( - self.config.model_args.num_chars if hasattr(self.config, "model_args") else self.config.num_chars - ) - num_chars = config_num_chars if self.tokenizer is None else self.tokenizer.characters.num_chars - if "characters" in config: - self.config.num_chars = num_chars - if hasattr(self.config, "model_args"): - config.model_args.num_chars = num_chars - self.args = self.config.model_args - else: - self.config = config - self.args = config.model_args - elif "Args" in config.__class__.__name__: - self.args = config - else: - raise ValueError("config must be either a *Config or *Args") - - def init_multispeaker(self, config: Coqpit, data: List = None): - """Initialize a speaker embedding layer if needen and define expected embedding channel size for defining - `in_channels` size of the connected layers. - - This implementation yields 3 possible outcomes: - - 1. If `config.use_speaker_embedding` and `config.use_d_vector_file are False, do nothing. - 2. If `config.use_d_vector_file` is True, set expected embedding channel size to `config.d_vector_dim` or 512. - 3. If `config.use_speaker_embedding`, initialize a speaker embedding layer with channel size of - `config.d_vector_dim` or 512. - - You can override this function for new models. - - Args: - config (Coqpit): Model configuration. - """ - # set number of speakers - if self.speaker_manager is not None: - self.num_speakers = self.speaker_manager.num_speakers - elif hasattr(config, "num_speakers"): - self.num_speakers = config.num_speakers - - # set ultimate speaker embedding size - if config.use_speaker_embedding or config.use_d_vector_file: - self.embedded_speaker_dim = ( - config.d_vector_dim if "d_vector_dim" in config and config.d_vector_dim is not None else 512 - ) - # init speaker embedding layer - if config.use_speaker_embedding and not config.use_d_vector_file: - print(" > Init speaker_embedding layer.") - self.speaker_embedding = nn.Embedding(self.num_speakers, self.embedded_speaker_dim) - self.speaker_embedding.weight.data.normal_(0, 0.3) - - def get_aux_input(self, **kwargs) -> Dict: - """Prepare and return `aux_input` used by `forward()`""" - return {"speaker_id": None, "style_wav": None, "d_vector": None, "language_id": None} - - def get_aux_input_from_test_sentences(self, sentence_info): - if hasattr(self.config, "model_args"): - config = self.config.model_args - else: - config = self.config - - # extract speaker and language info - text, speaker_name, style_wav, language_name = None, None, None, None - - if isinstance(sentence_info, list): - if len(sentence_info) == 1: - text = sentence_info[0] - elif len(sentence_info) == 2: - text, speaker_name = sentence_info - elif len(sentence_info) == 3: - text, speaker_name, style_wav = sentence_info - elif len(sentence_info) == 4: - text, speaker_name, style_wav, language_name = sentence_info - else: - text = sentence_info - - # get speaker id/d_vector - speaker_id, d_vector, language_id = None, None, None - if self.speaker_manager is not None: - if config.use_d_vector_file: - if speaker_name is None: - d_vector = self.speaker_manager.get_random_embedding() - else: - d_vector = self.speaker_manager.get_d_vector_by_name(speaker_name) - elif config.use_speaker_embedding: - if speaker_name is None: - speaker_id = self.speaker_manager.get_random_id() - else: - speaker_id = self.speaker_manager.name_to_id[speaker_name] - - # get language id - if self.language_manager is not None and config.use_language_embedding and language_name is not None: - language_id = self.language_manager.name_to_id[language_name] - - return { - "text": text, - "speaker_id": speaker_id, - "style_wav": style_wav, - "d_vector": d_vector, - "language_id": language_id, - } - - def format_batch(self, batch: Dict) -> Dict: - """Generic batch formatting for `TTSDataset`. - - You must override this if you use a custom dataset. - - Args: - batch (Dict): [description] - - Returns: - Dict: [description] - """ - # setup input batch - text_input = batch["token_id"] - text_lengths = batch["token_id_lengths"] - speaker_names = batch["speaker_names"] - linear_input = batch["linear"] - mel_input = batch["mel"] - mel_lengths = batch["mel_lengths"] - stop_targets = batch["stop_targets"] - item_idx = batch["item_idxs"] - d_vectors = batch["d_vectors"] - speaker_ids = batch["speaker_ids"] - attn_mask = batch["attns"] - waveform = batch["waveform"] - pitch = batch["pitch"] - energy = batch["energy"] - language_ids = batch["language_ids"] - max_text_length = torch.max(text_lengths.float()) - max_spec_length = torch.max(mel_lengths.float()) - - # compute durations from attention masks - durations = None - if attn_mask is not None: - durations = torch.zeros(attn_mask.shape[0], attn_mask.shape[2]) - for idx, am in enumerate(attn_mask): - # compute raw durations - c_idxs = am[:, : text_lengths[idx], : mel_lengths[idx]].max(1)[1] - # c_idxs, counts = torch.unique_consecutive(c_idxs, return_counts=True) - c_idxs, counts = torch.unique(c_idxs, return_counts=True) - dur = torch.ones([text_lengths[idx]]).to(counts.dtype) - dur[c_idxs] = counts - # smooth the durations and set any 0 duration to 1 - # by cutting off from the largest duration indeces. - extra_frames = dur.sum() - mel_lengths[idx] - largest_idxs = torch.argsort(-dur)[:extra_frames] - dur[largest_idxs] -= 1 - assert ( - dur.sum() == mel_lengths[idx] - ), f" [!] total duration {dur.sum()} vs spectrogram length {mel_lengths[idx]}" - durations[idx, : text_lengths[idx]] = dur - - # set stop targets wrt reduction factor - stop_targets = stop_targets.view(text_input.shape[0], stop_targets.size(1) // self.config.r, -1) - stop_targets = (stop_targets.sum(2) > 0.0).unsqueeze(2).float().squeeze(2) - stop_target_lengths = torch.divide(mel_lengths, self.config.r).ceil_() - - return { - "text_input": text_input, - "text_lengths": text_lengths, - "speaker_names": speaker_names, - "mel_input": mel_input, - "mel_lengths": mel_lengths, - "linear_input": linear_input, - "stop_targets": stop_targets, - "stop_target_lengths": stop_target_lengths, - "attn_mask": attn_mask, - "durations": durations, - "speaker_ids": speaker_ids, - "d_vectors": d_vectors, - "max_text_length": float(max_text_length), - "max_spec_length": float(max_spec_length), - "item_idx": item_idx, - "waveform": waveform, - "pitch": pitch, - "energy": energy, - "language_ids": language_ids, - "audio_unique_names": batch["audio_unique_names"], - } - - def get_sampler(self, config: Coqpit, dataset: TTSDataset, num_gpus=1): - weights = None - data_items = dataset.samples - - if getattr(config, "use_language_weighted_sampler", False): - alpha = getattr(config, "language_weighted_sampler_alpha", 1.0) - print(" > Using Language weighted sampler with alpha:", alpha) - weights = get_language_balancer_weights(data_items) * alpha - - if getattr(config, "use_speaker_weighted_sampler", False): - alpha = getattr(config, "speaker_weighted_sampler_alpha", 1.0) - print(" > Using Speaker weighted sampler with alpha:", alpha) - if weights is not None: - weights += get_speaker_balancer_weights(data_items) * alpha - else: - weights = get_speaker_balancer_weights(data_items) * alpha - - if getattr(config, "use_length_weighted_sampler", False): - alpha = getattr(config, "length_weighted_sampler_alpha", 1.0) - print(" > Using Length weighted sampler with alpha:", alpha) - if weights is not None: - weights += get_length_balancer_weights(data_items) * alpha - else: - weights = get_length_balancer_weights(data_items) * alpha - - if weights is not None: - sampler = WeightedRandomSampler(weights, len(weights)) - else: - sampler = None - - # sampler for DDP - if sampler is None: - sampler = DistributedSampler(dataset) if num_gpus > 1 else None - else: # If a sampler is already defined use this sampler and DDP sampler together - sampler = DistributedSamplerWrapper(sampler) if num_gpus > 1 else sampler - - return sampler - - def get_data_loader( - self, - config: Coqpit, - assets: Dict, - is_eval: bool, - samples: Union[List[Dict], List[List]], - verbose: bool, - num_gpus: int, - rank: int = None, - ) -> "DataLoader": - if is_eval and not config.run_eval: - loader = None - else: - # setup multi-speaker attributes - if self.speaker_manager is not None: - if hasattr(config, "model_args"): - speaker_id_mapping = ( - self.speaker_manager.name_to_id if config.model_args.use_speaker_embedding else None - ) - d_vector_mapping = self.speaker_manager.embeddings if config.model_args.use_d_vector_file else None - config.use_d_vector_file = config.model_args.use_d_vector_file - else: - speaker_id_mapping = self.speaker_manager.name_to_id if config.use_speaker_embedding else None - d_vector_mapping = self.speaker_manager.embeddings if config.use_d_vector_file else None - else: - speaker_id_mapping = None - d_vector_mapping = None - - # setup multi-lingual attributes - if self.language_manager is not None: - language_id_mapping = self.language_manager.name_to_id if self.args.use_language_embedding else None - else: - language_id_mapping = None - - # init dataloader - dataset = TTSDataset( - outputs_per_step=config.r if "r" in config else 1, - compute_linear_spec=config.model.lower() == "tacotron" or config.compute_linear_spec, - compute_f0=config.get("compute_f0", False), - f0_cache_path=config.get("f0_cache_path", None), - compute_energy=config.get("compute_energy", False), - energy_cache_path=config.get("energy_cache_path", None), - samples=samples, - ap=self.ap, - return_wav=config.return_wav if "return_wav" in config else False, - batch_group_size=0 if is_eval else config.batch_group_size * config.batch_size, - min_text_len=config.min_text_len, - max_text_len=config.max_text_len, - min_audio_len=config.min_audio_len, - max_audio_len=config.max_audio_len, - phoneme_cache_path=config.phoneme_cache_path, - precompute_num_workers=config.precompute_num_workers, - use_noise_augment=False if is_eval else config.use_noise_augment, - verbose=verbose, - speaker_id_mapping=speaker_id_mapping, - d_vector_mapping=d_vector_mapping if config.use_d_vector_file else None, - tokenizer=self.tokenizer, - start_by_longest=config.start_by_longest, - language_id_mapping=language_id_mapping, - ) - - # wait all the DDP process to be ready - if num_gpus > 1: - dist.barrier() - - # sort input sequences from short to long - dataset.preprocess_samples() - - # get samplers - sampler = self.get_sampler(config, dataset, num_gpus) - - loader = DataLoader( - dataset, - batch_size=config.eval_batch_size if is_eval else config.batch_size, - shuffle=config.shuffle if sampler is None else False, # if there is no other sampler - collate_fn=dataset.collate_fn, - drop_last=config.drop_last, # setting this False might cause issues in AMP training. - sampler=sampler, - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=False, - ) - return loader - - def _get_test_aux_input( - self, - ) -> Dict: - d_vector = None - if self.config.use_d_vector_file: - d_vector = [self.speaker_manager.embeddings[name]["embedding"] for name in self.speaker_manager.embeddings] - d_vector = (random.sample(sorted(d_vector), 1),) - - aux_inputs = { - "speaker_id": None - if not self.config.use_speaker_embedding - else random.sample(sorted(self.speaker_manager.name_to_id.values()), 1), - "d_vector": d_vector, - "style_wav": None, # TODO: handle GST style input - } - return aux_inputs - - def test_run(self, assets: Dict) -> Tuple[Dict, Dict]: - """Generic test run for `tts` models used by `Trainer`. - - You can override this for a different behaviour. - - Args: - assets (dict): A dict of training assets. For `tts` models, it must include `{'audio_processor': ap}`. - - Returns: - Tuple[Dict, Dict]: Test figures and audios to be projected to Tensorboard. - """ - print(" | > Synthesizing test sentences.") - test_audios = {} - test_figures = {} - test_sentences = self.config.test_sentences - aux_inputs = self._get_test_aux_input() - for idx, sen in enumerate(test_sentences): - if isinstance(sen, list): - aux_inputs = self.get_aux_input_from_test_sentences(sen) - sen = aux_inputs["text"] - outputs_dict = synthesis( - self, - sen, - self.config, - "cuda" in str(next(self.parameters()).device), - speaker_id=aux_inputs["speaker_id"], - d_vector=aux_inputs["d_vector"], - style_wav=aux_inputs["style_wav"], - use_griffin_lim=True, - do_trim_silence=False, - ) - test_audios["{}-audio".format(idx)] = outputs_dict["wav"] - test_figures["{}-prediction".format(idx)] = plot_spectrogram( - outputs_dict["outputs"]["model_outputs"], self.ap, output_fig=False - ) - test_figures["{}-alignment".format(idx)] = plot_alignment( - outputs_dict["outputs"]["alignments"], output_fig=False - ) - return test_figures, test_audios - - def on_init_start(self, trainer): - """Save the speaker.pth and language_ids.json at the beginning of the training. Also update both paths.""" - if self.speaker_manager is not None: - output_path = os.path.join(trainer.output_path, "speakers.pth") - self.speaker_manager.save_ids_to_file(output_path) - trainer.config.speakers_file = output_path - # some models don't have `model_args` set - if hasattr(trainer.config, "model_args"): - trainer.config.model_args.speakers_file = output_path - trainer.config.save_json(os.path.join(trainer.output_path, "config.json")) - print(f" > `speakers.pth` is saved to {output_path}.") - print(" > `speakers_file` is updated in the config.json.") - - if self.language_manager is not None: - output_path = os.path.join(trainer.output_path, "language_ids.json") - self.language_manager.save_ids_to_file(output_path) - trainer.config.language_ids_file = output_path - if hasattr(trainer.config, "model_args"): - trainer.config.model_args.language_ids_file = output_path - trainer.config.save_json(os.path.join(trainer.output_path, "config.json")) - print(f" > `language_ids.json` is saved to {output_path}.") - print(" > `language_ids_file` is updated in the config.json.") - - -class BaseTTSE2E(BaseTTS): - def _set_model_args(self, config: Coqpit): - self.config = config - if "Config" in config.__class__.__name__: - num_chars = ( - self.config.model_args.num_chars if self.tokenizer is None else self.tokenizer.characters.num_chars - ) - self.config.model_args.num_chars = num_chars - self.config.num_chars = num_chars - self.args = config.model_args - self.args.num_chars = num_chars - elif "Args" in config.__class__.__name__: - self.args = config - self.args.num_chars = self.args.num_chars - else: - raise ValueError("config must be either a *Config or *Args") diff --git a/TTS/tts/models/delightful_tts.py b/TTS/tts/models/delightful_tts.py deleted file mode 100644 index c0a00c6623a8dad937a787e9b9ca84c636812359..0000000000000000000000000000000000000000 --- a/TTS/tts/models/delightful_tts.py +++ /dev/null @@ -1,1773 +0,0 @@ -import os -from dataclasses import dataclass, field -from itertools import chain -from pathlib import Path -from typing import Dict, List, Optional, Tuple, Union - -import numpy as np -import torch -import torch.distributed as dist -import torchaudio -from coqpit import Coqpit -from librosa.filters import mel as librosa_mel_fn -from torch import nn -from torch.cuda.amp.autocast_mode import autocast -from torch.nn import functional as F -from torch.utils.data import DataLoader -from torch.utils.data.sampler import WeightedRandomSampler -from trainer.torch import DistributedSampler, DistributedSamplerWrapper -from trainer.trainer_utils import get_optimizer, get_scheduler - -from TTS.tts.datasets.dataset import F0Dataset, TTSDataset, _parse_sample -from TTS.tts.layers.delightful_tts.acoustic_model import AcousticModel -from TTS.tts.layers.losses import ForwardSumLoss, VitsDiscriminatorLoss -from TTS.tts.layers.vits.discriminator import VitsDiscriminator -from TTS.tts.models.base_tts import BaseTTSE2E -from TTS.tts.utils.helpers import average_over_durations, compute_attn_prior, rand_segments, segment, sequence_mask -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_avg_pitch, plot_pitch, plot_spectrogram -from TTS.utils.audio.numpy_transforms import build_mel_basis, compute_f0 -from TTS.utils.audio.numpy_transforms import db_to_amp as db_to_amp_numpy -from TTS.utils.audio.numpy_transforms import mel_to_wav as mel_to_wav_numpy -from TTS.utils.audio.processor import AudioProcessor -from TTS.utils.io import load_fsspec -from TTS.vocoder.layers.losses import MultiScaleSTFTLoss -from TTS.vocoder.models.hifigan_generator import HifiganGenerator -from TTS.vocoder.utils.generic_utils import plot_results - - -def id_to_torch(aux_id, cuda=False): - if aux_id is not None: - aux_id = np.asarray(aux_id) - aux_id = torch.from_numpy(aux_id) - if cuda: - return aux_id.cuda() - return aux_id - - -def embedding_to_torch(d_vector, cuda=False): - if d_vector is not None: - d_vector = np.asarray(d_vector) - d_vector = torch.from_numpy(d_vector).float() - d_vector = d_vector.squeeze().unsqueeze(0) - if cuda: - return d_vector.cuda() - return d_vector - - -def numpy_to_torch(np_array, dtype, cuda=False): - if np_array is None: - return None - tensor = torch.as_tensor(np_array, dtype=dtype) - if cuda: - return tensor.cuda() - return tensor - - -def get_mask_from_lengths(lengths: torch.Tensor) -> torch.Tensor: - batch_size = lengths.shape[0] - max_len = torch.max(lengths).item() - ids = torch.arange(0, max_len, device=lengths.device).unsqueeze(0).expand(batch_size, -1) - mask = ids >= lengths.unsqueeze(1).expand(-1, max_len) - return mask - - -def pad(input_ele: List[torch.Tensor], max_len: int) -> torch.Tensor: - out_list = torch.jit.annotate(List[torch.Tensor], []) - for batch in input_ele: - if len(batch.shape) == 1: - one_batch_padded = F.pad(batch, (0, max_len - batch.size(0)), "constant", 0.0) - else: - one_batch_padded = F.pad(batch, (0, 0, 0, max_len - batch.size(0)), "constant", 0.0) - out_list.append(one_batch_padded) - out_padded = torch.stack(out_list) - return out_padded - - -def init_weights(m: nn.Module, mean: float = 0.0, std: float = 0.01): - classname = m.__class__.__name__ - if classname.find("Conv") != -1: - m.weight.data.normal_(mean, std) - - -def stride_lens(lens: torch.Tensor, stride: int = 2) -> torch.Tensor: - return torch.ceil(lens / stride).int() - - -def initialize_embeddings(shape: Tuple[int]) -> torch.Tensor: - assert len(shape) == 2, "Can only initialize 2-D embedding matrices ..." - return torch.randn(shape) * np.sqrt(2 / shape[1]) - - -# pylint: disable=redefined-outer-name -def calc_same_padding(kernel_size: int) -> Tuple[int, int]: - pad = kernel_size // 2 - return (pad, pad - (kernel_size + 1) % 2) - - -hann_window = {} -mel_basis = {} - - -@torch.no_grad() -def weights_reset(m: nn.Module): - # check if the current module has reset_parameters and if it is reset the weight - reset_parameters = getattr(m, "reset_parameters", None) - if callable(reset_parameters): - m.reset_parameters() - - -def get_module_weights_sum(mdl: nn.Module): - dict_sums = {} - for name, w in mdl.named_parameters(): - if "weight" in name: - value = w.data.sum().item() - dict_sums[name] = value - return dict_sums - - -def load_audio(file_path: str): - """Load the audio file normalized in [-1, 1] - - Return Shapes: - - x: :math:`[1, T]` - """ - x, sr = torchaudio.load( - file_path, - ) - assert (x > 1).sum() + (x < -1).sum() == 0 - return x, sr - - -def _amp_to_db(x, C=1, clip_val=1e-5): - return torch.log(torch.clamp(x, min=clip_val) * C) - - -def _db_to_amp(x, C=1): - return torch.exp(x) / C - - -def amp_to_db(magnitudes): - output = _amp_to_db(magnitudes) - return output - - -def db_to_amp(magnitudes): - output = _db_to_amp(magnitudes) - return output - - -def _wav_to_spec(y, n_fft, hop_length, win_length, center=False): - y = y.squeeze(1) - - if torch.min(y) < -1.0: - print("min value is ", torch.min(y)) - if torch.max(y) > 1.0: - print("max value is ", torch.max(y)) - - global hann_window # pylint: disable=global-statement - dtype_device = str(y.dtype) + "_" + str(y.device) - wnsize_dtype_device = str(win_length) + "_" + dtype_device - if wnsize_dtype_device not in hann_window: - hann_window[wnsize_dtype_device] = torch.hann_window(win_length).to(dtype=y.dtype, device=y.device) - - y = torch.nn.functional.pad( - y.unsqueeze(1), - (int((n_fft - hop_length) / 2), int((n_fft - hop_length) / 2)), - mode="reflect", - ) - y = y.squeeze(1) - - spec = torch.stft( - y, - n_fft, - hop_length=hop_length, - win_length=win_length, - window=hann_window[wnsize_dtype_device], - center=center, - pad_mode="reflect", - normalized=False, - onesided=True, - return_complex=False, - ) - - return spec - - -def wav_to_spec(y, n_fft, hop_length, win_length, center=False): - """ - Args Shapes: - - y : :math:`[B, 1, T]` - - Return Shapes: - - spec : :math:`[B,C,T]` - """ - spec = _wav_to_spec(y, n_fft, hop_length, win_length, center=center) - spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) - return spec - - -def wav_to_energy(y, n_fft, hop_length, win_length, center=False): - spec = _wav_to_spec(y, n_fft, hop_length, win_length, center=center) - - spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) - return torch.norm(spec, dim=1, keepdim=True) - - -def name_mel_basis(spec, n_fft, fmax): - n_fft_len = f"{n_fft}_{fmax}_{spec.dtype}_{spec.device}" - return n_fft_len - - -def spec_to_mel(spec, n_fft, num_mels, sample_rate, fmin, fmax): - """ - Args Shapes: - - spec : :math:`[B,C,T]` - - Return Shapes: - - mel : :math:`[B,C,T]` - """ - global mel_basis # pylint: disable=global-statement - mel_basis_key = name_mel_basis(spec, n_fft, fmax) - # pylint: disable=too-many-function-args - if mel_basis_key not in mel_basis: - # pylint: disable=missing-kwoa - mel = librosa_mel_fn(sample_rate, n_fft, num_mels, fmin, fmax) - mel_basis[mel_basis_key] = torch.from_numpy(mel).to(dtype=spec.dtype, device=spec.device) - mel = torch.matmul(mel_basis[mel_basis_key], spec) - mel = amp_to_db(mel) - return mel - - -def wav_to_mel(y, n_fft, num_mels, sample_rate, hop_length, win_length, fmin, fmax, center=False): - """ - Args Shapes: - - y : :math:`[B, 1, T_y]` - - Return Shapes: - - spec : :math:`[B,C,T_spec]` - """ - y = y.squeeze(1) - - if torch.min(y) < -1.0: - print("min value is ", torch.min(y)) - if torch.max(y) > 1.0: - print("max value is ", torch.max(y)) - - global mel_basis, hann_window # pylint: disable=global-statement - mel_basis_key = name_mel_basis(y, n_fft, fmax) - wnsize_dtype_device = str(win_length) + "_" + str(y.dtype) + "_" + str(y.device) - if mel_basis_key not in mel_basis: - # pylint: disable=missing-kwoa - mel = librosa_mel_fn( - sr=sample_rate, n_fft=n_fft, n_mels=num_mels, fmin=fmin, fmax=fmax - ) # pylint: disable=too-many-function-args - mel_basis[mel_basis_key] = torch.from_numpy(mel).to(dtype=y.dtype, device=y.device) - if wnsize_dtype_device not in hann_window: - hann_window[wnsize_dtype_device] = torch.hann_window(win_length).to(dtype=y.dtype, device=y.device) - - y = torch.nn.functional.pad( - y.unsqueeze(1), - (int((n_fft - hop_length) / 2), int((n_fft - hop_length) / 2)), - mode="reflect", - ) - y = y.squeeze(1) - - spec = torch.stft( - y, - n_fft, - hop_length=hop_length, - win_length=win_length, - window=hann_window[wnsize_dtype_device], - center=center, - pad_mode="reflect", - normalized=False, - onesided=True, - return_complex=False, - ) - - spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) - spec = torch.matmul(mel_basis[mel_basis_key], spec) - spec = amp_to_db(spec) - return spec - - -############################## -# DATASET -############################## - - -def get_attribute_balancer_weights(items: list, attr_name: str, multi_dict: dict = None): - """Create balancer weight for torch WeightedSampler""" - attr_names_samples = np.array([item[attr_name] for item in items]) - unique_attr_names = np.unique(attr_names_samples).tolist() - attr_idx = [unique_attr_names.index(l) for l in attr_names_samples] - attr_count = np.array([len(np.where(attr_names_samples == l)[0]) for l in unique_attr_names]) - weight_attr = 1.0 / attr_count - dataset_samples_weight = np.array([weight_attr[l] for l in attr_idx]) - dataset_samples_weight = dataset_samples_weight / np.linalg.norm(dataset_samples_weight) - if multi_dict is not None: - multiplier_samples = np.array([multi_dict.get(item[attr_name], 1.0) for item in items]) - dataset_samples_weight *= multiplier_samples - return ( - torch.from_numpy(dataset_samples_weight).float(), - unique_attr_names, - np.unique(dataset_samples_weight).tolist(), - ) - - -class ForwardTTSE2eF0Dataset(F0Dataset): - """Override F0Dataset to avoid slow computing of pitches""" - - def __init__( - self, - ap, - samples: Union[List[List], List[Dict]], - verbose=False, - cache_path: str = None, - precompute_num_workers=0, - normalize_f0=True, - ): - super().__init__( - samples=samples, - ap=ap, - verbose=verbose, - cache_path=cache_path, - precompute_num_workers=precompute_num_workers, - normalize_f0=normalize_f0, - ) - - def _compute_and_save_pitch(self, wav_file, pitch_file=None): - wav, _ = load_audio(wav_file) - f0 = compute_f0( - x=wav.numpy()[0], - sample_rate=self.ap.sample_rate, - hop_length=self.ap.hop_length, - pitch_fmax=self.ap.pitch_fmax, - pitch_fmin=self.ap.pitch_fmin, - win_length=self.ap.win_length, - ) - # skip the last F0 value to align with the spectrogram - if wav.shape[1] % self.ap.hop_length != 0: - f0 = f0[:-1] - if pitch_file: - np.save(pitch_file, f0) - return f0 - - def compute_or_load(self, wav_file, audio_name): - """ - compute pitch and return a numpy array of pitch values - """ - pitch_file = self.create_pitch_file_path(audio_name, self.cache_path) - if not os.path.exists(pitch_file): - pitch = self._compute_and_save_pitch(wav_file=wav_file, pitch_file=pitch_file) - else: - pitch = np.load(pitch_file) - return pitch.astype(np.float32) - - -class ForwardTTSE2eDataset(TTSDataset): - def __init__(self, *args, **kwargs): - # don't init the default F0Dataset in TTSDataset - compute_f0 = kwargs.pop("compute_f0", False) - kwargs["compute_f0"] = False - self.attn_prior_cache_path = kwargs.pop("attn_prior_cache_path") - - super().__init__(*args, **kwargs) - - self.compute_f0 = compute_f0 - self.pad_id = self.tokenizer.characters.pad_id - self.ap = kwargs["ap"] - - if self.compute_f0: - self.f0_dataset = ForwardTTSE2eF0Dataset( - ap=self.ap, - samples=self.samples, - cache_path=kwargs["f0_cache_path"], - precompute_num_workers=kwargs["precompute_num_workers"], - ) - - if self.attn_prior_cache_path is not None: - os.makedirs(self.attn_prior_cache_path, exist_ok=True) - - def __getitem__(self, idx): - item = self.samples[idx] - - rel_wav_path = Path(item["audio_file"]).relative_to(item["root_path"]).with_suffix("") - rel_wav_path = str(rel_wav_path).replace("/", "_") - - raw_text = item["text"] - wav, _ = load_audio(item["audio_file"]) - wav_filename = os.path.basename(item["audio_file"]) - - try: - token_ids = self.get_token_ids(idx, item["text"]) - except: - print(idx, item) - # pylint: disable=raise-missing-from - raise OSError - f0 = None - if self.compute_f0: - f0 = self.get_f0(idx)["f0"] - - # after phonemization the text length may change - # this is a shameful 🤭 hack to prevent longer phonemes - # TODO: find a better fix - if len(token_ids) > self.max_text_len or wav.shape[1] < self.min_audio_len: - self.rescue_item_idx += 1 - return self.__getitem__(self.rescue_item_idx) - - attn_prior = None - if self.attn_prior_cache_path is not None: - attn_prior = self.load_or_compute_attn_prior(token_ids, wav, rel_wav_path) - - return { - "raw_text": raw_text, - "token_ids": token_ids, - "token_len": len(token_ids), - "wav": wav, - "pitch": f0, - "wav_file": wav_filename, - "speaker_name": item["speaker_name"], - "language_name": item["language"], - "attn_prior": attn_prior, - "audio_unique_name": item["audio_unique_name"], - } - - def load_or_compute_attn_prior(self, token_ids, wav, rel_wav_path): - """Load or compute and save the attention prior.""" - attn_prior_file = os.path.join(self.attn_prior_cache_path, f"{rel_wav_path}.npy") - # pylint: disable=no-else-return - if os.path.exists(attn_prior_file): - return np.load(attn_prior_file) - else: - token_len = len(token_ids) - mel_len = wav.shape[1] // self.ap.hop_length - attn_prior = compute_attn_prior(token_len, mel_len) - np.save(attn_prior_file, attn_prior) - return attn_prior - - @property - def lengths(self): - lens = [] - for item in self.samples: - _, wav_file, *_ = _parse_sample(item) - audio_len = os.path.getsize(wav_file) / 16 * 8 # assuming 16bit audio - lens.append(audio_len) - return lens - - def collate_fn(self, batch): - """ - Return Shapes: - - tokens: :math:`[B, T]` - - token_lens :math:`[B]` - - token_rel_lens :math:`[B]` - - pitch :math:`[B, T]` - - waveform: :math:`[B, 1, T]` - - waveform_lens: :math:`[B]` - - waveform_rel_lens: :math:`[B]` - - speaker_names: :math:`[B]` - - language_names: :math:`[B]` - - audiofile_paths: :math:`[B]` - - raw_texts: :math:`[B]` - - attn_prior: :math:`[[T_token, T_mel]]` - """ - B = len(batch) - batch = {k: [dic[k] for dic in batch] for k in batch[0]} - - max_text_len = max([len(x) for x in batch["token_ids"]]) - token_lens = torch.LongTensor(batch["token_len"]) - token_rel_lens = token_lens / token_lens.max() - - wav_lens = [w.shape[1] for w in batch["wav"]] - wav_lens = torch.LongTensor(wav_lens) - wav_lens_max = torch.max(wav_lens) - wav_rel_lens = wav_lens / wav_lens_max - - pitch_padded = None - if self.compute_f0: - pitch_lens = [p.shape[0] for p in batch["pitch"]] - pitch_lens = torch.LongTensor(pitch_lens) - pitch_lens_max = torch.max(pitch_lens) - pitch_padded = torch.FloatTensor(B, 1, pitch_lens_max) - pitch_padded = pitch_padded.zero_() + self.pad_id - - token_padded = torch.LongTensor(B, max_text_len) - wav_padded = torch.FloatTensor(B, 1, wav_lens_max) - - token_padded = token_padded.zero_() + self.pad_id - wav_padded = wav_padded.zero_() + self.pad_id - - for i in range(B): - token_ids = batch["token_ids"][i] - token_padded[i, : batch["token_len"][i]] = torch.LongTensor(token_ids) - - wav = batch["wav"][i] - wav_padded[i, :, : wav.size(1)] = torch.FloatTensor(wav) - - if self.compute_f0: - pitch = batch["pitch"][i] - pitch_padded[i, 0, : len(pitch)] = torch.FloatTensor(pitch) - - return { - "text_input": token_padded, - "text_lengths": token_lens, - "text_rel_lens": token_rel_lens, - "pitch": pitch_padded, - "waveform": wav_padded, # (B x T) - "waveform_lens": wav_lens, # (B) - "waveform_rel_lens": wav_rel_lens, - "speaker_names": batch["speaker_name"], - "language_names": batch["language_name"], - "audio_unique_names": batch["audio_unique_name"], - "audio_files": batch["wav_file"], - "raw_text": batch["raw_text"], - "attn_priors": batch["attn_prior"] if batch["attn_prior"][0] is not None else None, - } - - -############################## -# CONFIG DEFINITIONS -############################## - - -@dataclass -class VocoderConfig(Coqpit): - resblock_type_decoder: str = "1" - resblock_kernel_sizes_decoder: List[int] = field(default_factory=lambda: [3, 7, 11]) - resblock_dilation_sizes_decoder: List[List[int]] = field(default_factory=lambda: [[1, 3, 5], [1, 3, 5], [1, 3, 5]]) - upsample_rates_decoder: List[int] = field(default_factory=lambda: [8, 8, 2, 2]) - upsample_initial_channel_decoder: int = 512 - upsample_kernel_sizes_decoder: List[int] = field(default_factory=lambda: [16, 16, 4, 4]) - use_spectral_norm_discriminator: bool = False - upsampling_rates_discriminator: List[int] = field(default_factory=lambda: [4, 4, 4, 4]) - periods_discriminator: List[int] = field(default_factory=lambda: [2, 3, 5, 7, 11]) - pretrained_model_path: Optional[str] = None - - -@dataclass -class DelightfulTtsAudioConfig(Coqpit): - sample_rate: int = 22050 - hop_length: int = 256 - win_length: int = 1024 - fft_size: int = 1024 - mel_fmin: float = 0.0 - mel_fmax: float = 8000 - num_mels: int = 100 - pitch_fmax: float = 640.0 - pitch_fmin: float = 1.0 - resample: bool = False - preemphasis: float = 0.0 - ref_level_db: int = 20 - do_sound_norm: bool = False - log_func: str = "np.log10" - do_trim_silence: bool = True - trim_db: int = 45 - do_rms_norm: bool = False - db_level: float = None - power: float = 1.5 - griffin_lim_iters: int = 60 - spec_gain: int = 20 - do_amp_to_db_linear: bool = True - do_amp_to_db_mel: bool = True - min_level_db: int = -100 - max_norm: float = 4.0 - - -@dataclass -class DelightfulTtsArgs(Coqpit): - num_chars: int = 100 - spec_segment_size: int = 32 - n_hidden_conformer_encoder: int = 512 - n_layers_conformer_encoder: int = 6 - n_heads_conformer_encoder: int = 8 - dropout_conformer_encoder: float = 0.1 - kernel_size_conv_mod_conformer_encoder: int = 7 - kernel_size_depthwise_conformer_encoder: int = 7 - lrelu_slope: float = 0.3 - n_hidden_conformer_decoder: int = 512 - n_layers_conformer_decoder: int = 6 - n_heads_conformer_decoder: int = 8 - dropout_conformer_decoder: float = 0.1 - kernel_size_conv_mod_conformer_decoder: int = 11 - kernel_size_depthwise_conformer_decoder: int = 11 - bottleneck_size_p_reference_encoder: int = 4 - bottleneck_size_u_reference_encoder: int = 512 - ref_enc_filters_reference_encoder = [32, 32, 64, 64, 128, 128] - ref_enc_size_reference_encoder: int = 3 - ref_enc_strides_reference_encoder = [1, 2, 1, 2, 1] - ref_enc_pad_reference_encoder = [1, 1] - ref_enc_gru_size_reference_encoder: int = 32 - ref_attention_dropout_reference_encoder: float = 0.2 - token_num_reference_encoder: int = 32 - predictor_kernel_size_reference_encoder: int = 5 - n_hidden_variance_adaptor: int = 512 - kernel_size_variance_adaptor: int = 5 - dropout_variance_adaptor: float = 0.5 - n_bins_variance_adaptor: int = 256 - emb_kernel_size_variance_adaptor: int = 3 - use_speaker_embedding: bool = False - num_speakers: int = 0 - speakers_file: str = None - d_vector_file: str = None - speaker_embedding_channels: int = 384 - use_d_vector_file: bool = False - d_vector_dim: int = 0 - freeze_vocoder: bool = False - freeze_text_encoder: bool = False - freeze_duration_predictor: bool = False - freeze_pitch_predictor: bool = False - freeze_energy_predictor: bool = False - freeze_basis_vectors_predictor: bool = False - freeze_decoder: bool = False - length_scale: float = 1.0 - - -############################## -# MODEL DEFINITION -############################## -class DelightfulTTS(BaseTTSE2E): - """ - Paper:: - https://arxiv.org/pdf/2110.12612.pdf - - Paper Abstract:: - This paper describes the Microsoft end-to-end neural text to speech (TTS) system: DelightfulTTS for Blizzard Challenge 2021. - The goal of this challenge is to synthesize natural and high-quality speech from text, and we approach this goal in two perspectives: - The first is to directly model and generate waveform in 48 kHz sampling rate, which brings higher perception quality than previous systems - with 16 kHz or 24 kHz sampling rate; The second is to model the variation information in speech through a systematic design, which improves - the prosody and naturalness. Specifically, for 48 kHz modeling, we predict 16 kHz mel-spectrogram in acoustic model, and - propose a vocoder called HiFiNet to directly generate 48 kHz waveform from predicted 16 kHz mel-spectrogram, which can better trade off training - efficiency, modelling stability and voice quality. We model variation information systematically from both explicit (speaker ID, language ID, pitch and duration) and - implicit (utterance-level and phoneme-level prosody) perspectives: 1) For speaker and language ID, we use lookup embedding in training and - inference; 2) For pitch and duration, we extract the values from paired text-speech data in training and use two predictors to predict the values in inference; 3) - For utterance-level and phoneme-level prosody, we use two reference encoders to extract the values in training, and use two separate predictors to predict the values in inference. - Additionally, we introduce an improved Conformer block to better model the local and global dependency in acoustic model. For task SH1, DelightfulTTS achieves 4.17 mean score in MOS test - and 4.35 in SMOS test, which indicates the effectiveness of our proposed system - - - Model training:: - text --> ForwardTTS() --> spec_hat --> rand_seg_select()--> GANVocoder() --> waveform_seg - spec --------^ - - Examples: - >>> from TTS.tts.models.forward_tts_e2e import ForwardTTSE2e, ForwardTTSE2eConfig - >>> config = ForwardTTSE2eConfig() - >>> model = ForwardTTSE2e(config) - """ - - # pylint: disable=dangerous-default-value - def __init__( - self, - config: Coqpit, - ap, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config=config, ap=ap, tokenizer=tokenizer, speaker_manager=speaker_manager) - self.ap = ap - - self._set_model_args(config) - self.init_multispeaker(config) - self.binary_loss_weight = None - - self.args.out_channels = self.config.audio.num_mels - self.args.num_mels = self.config.audio.num_mels - self.acoustic_model = AcousticModel(args=self.args, tokenizer=tokenizer, speaker_manager=speaker_manager) - - self.waveform_decoder = HifiganGenerator( - self.config.audio.num_mels, - 1, - self.config.vocoder.resblock_type_decoder, - self.config.vocoder.resblock_dilation_sizes_decoder, - self.config.vocoder.resblock_kernel_sizes_decoder, - self.config.vocoder.upsample_kernel_sizes_decoder, - self.config.vocoder.upsample_initial_channel_decoder, - self.config.vocoder.upsample_rates_decoder, - inference_padding=0, - # cond_channels=self.embedded_speaker_dim, - conv_pre_weight_norm=False, - conv_post_weight_norm=False, - conv_post_bias=False, - ) - - if self.config.init_discriminator: - self.disc = VitsDiscriminator( - use_spectral_norm=self.config.vocoder.use_spectral_norm_discriminator, - periods=self.config.vocoder.periods_discriminator, - ) - - @property - def device(self): - return next(self.parameters()).device - - @property - def energy_scaler(self): - return self.acoustic_model.energy_scaler - - @property - def length_scale(self): - return self.acoustic_model.length_scale - - @length_scale.setter - def length_scale(self, value): - self.acoustic_model.length_scale = value - - @property - def pitch_mean(self): - return self.acoustic_model.pitch_mean - - @pitch_mean.setter - def pitch_mean(self, value): - self.acoustic_model.pitch_mean = value - - @property - def pitch_std(self): - return self.acoustic_model.pitch_std - - @pitch_mean.setter - def pitch_std(self, value): # pylint: disable=function-redefined - self.acoustic_model.pitch_std = value - - @property - def mel_basis(self): - return build_mel_basis( - sample_rate=self.ap.sample_rate, - fft_size=self.ap.fft_size, - num_mels=self.ap.num_mels, - mel_fmax=self.ap.mel_fmax, - mel_fmin=self.ap.mel_fmin, - ) # pylint: disable=function-redefined - - def init_for_training(self) -> None: - self.train_disc = ( # pylint: disable=attribute-defined-outside-init - self.config.steps_to_start_discriminator <= 0 - ) # pylint: disable=attribute-defined-outside-init - self.update_energy_scaler = True # pylint: disable=attribute-defined-outside-init - - def init_multispeaker(self, config: Coqpit): - """Init for multi-speaker training. - - Args: - config (Coqpit): Model configuration. - """ - self.embedded_speaker_dim = 0 - self.num_speakers = self.args.num_speakers - self.audio_transform = None - - if self.speaker_manager: - self.num_speakers = self.speaker_manager.num_speakers - self.args.num_speakers = self.speaker_manager.num_speakers - - if self.args.use_speaker_embedding: - self._init_speaker_embedding() - - if self.args.use_d_vector_file: - self._init_d_vector() - - def _init_speaker_embedding(self): - # pylint: disable=attribute-defined-outside-init - if self.num_speakers > 0: - print(" > initialization of speaker-embedding layers.") - self.embedded_speaker_dim = self.args.speaker_embedding_channels - self.args.embedded_speaker_dim = self.args.speaker_embedding_channels - - def _init_d_vector(self): - # pylint: disable=attribute-defined-outside-init - if hasattr(self, "emb_g"): - raise ValueError("[!] Speaker embedding layer already initialized before d_vector settings.") - self.embedded_speaker_dim = self.args.d_vector_dim - self.args.embedded_speaker_dim = self.args.d_vector_dim - - def _freeze_layers(self): - if self.args.freeze_vocoder: - for param in self.vocoder.paramseters(): - param.requires_grad = False - - if self.args.freeze_text_encoder: - for param in self.text_encoder.parameters(): - param.requires_grad = False - - if self.args.freeze_duration_predictor: - for param in self.durarion_predictor.parameters(): - param.requires_grad = False - - if self.args.freeze_pitch_predictor: - for param in self.pitch_predictor.parameters(): - param.requires_grad = False - - if self.args.freeze_energy_predictor: - for param in self.energy_predictor.parameters(): - param.requires_grad = False - - if self.args.freeze_decoder: - for param in self.decoder.parameters(): - param.requires_grad = False - - def forward( - self, - x: torch.LongTensor, - x_lengths: torch.LongTensor, - spec_lengths: torch.LongTensor, - spec: torch.FloatTensor, - waveform: torch.FloatTensor, - pitch: torch.FloatTensor = None, - energy: torch.FloatTensor = None, - attn_priors: torch.FloatTensor = None, - d_vectors: torch.FloatTensor = None, - speaker_idx: torch.LongTensor = None, - ) -> Dict: - """Model's forward pass. - - Args: - x (torch.LongTensor): Input character sequences. - x_lengths (torch.LongTensor): Input sequence lengths. - spec_lengths (torch.LongTensor): Spectrogram sequnce lengths. Defaults to None. - spec (torch.FloatTensor): Spectrogram frames. Only used when the alignment network is on. Defaults to None. - waveform (torch.FloatTensor): Waveform. Defaults to None. - pitch (torch.FloatTensor): Pitch values for each spectrogram frame. Only used when the pitch predictor is on. Defaults to None. - energy (torch.FloatTensor): Spectral energy values for each spectrogram frame. Only used when the energy predictor is on. Defaults to None. - attn_priors (torch.FloatTentrasor): Attention priors for the aligner network. Defaults to None. - aux_input (Dict): Auxiliary model inputs for multi-speaker training. Defaults to `{"d_vectors": 0, "speaker_ids": None}`. - - Shapes: - - x: :math:`[B, T_max]` - - x_lengths: :math:`[B]` - - spec_lengths: :math:`[B]` - - spec: :math:`[B, T_max2, C_spec]` - - waveform: :math:`[B, 1, T_max2 * hop_length]` - - g: :math:`[B, C]` - - pitch: :math:`[B, 1, T_max2]` - - energy: :math:`[B, 1, T_max2]` - """ - encoder_outputs = self.acoustic_model( - tokens=x, - src_lens=x_lengths, - mel_lens=spec_lengths, - mels=spec, - pitches=pitch, - energies=energy, - attn_priors=attn_priors, - d_vectors=d_vectors, - speaker_idx=speaker_idx, - ) - - # use mel-spec from the decoder - vocoder_input = encoder_outputs["model_outputs"] # [B, T_max2, C_mel] - - vocoder_input_slices, slice_ids = rand_segments( - x=vocoder_input.transpose(1, 2), - x_lengths=spec_lengths, - segment_size=self.args.spec_segment_size, - let_short_samples=True, - pad_short=True, - ) - if encoder_outputs["spk_emb"] is not None: - g = encoder_outputs["spk_emb"].unsqueeze(-1) - else: - g = None - - vocoder_output = self.waveform_decoder(x=vocoder_input_slices.detach(), g=g) - wav_seg = segment( - waveform, - slice_ids * self.ap.hop_length, - self.args.spec_segment_size * self.ap.hop_length, - pad_short=True, - ) - model_outputs = {**encoder_outputs} - model_outputs["acoustic_model_outputs"] = encoder_outputs["model_outputs"] - model_outputs["model_outputs"] = vocoder_output - model_outputs["waveform_seg"] = wav_seg - model_outputs["slice_ids"] = slice_ids - return model_outputs - - @torch.no_grad() - def inference( - self, x, aux_input={"d_vectors": None, "speaker_ids": None}, pitch_transform=None, energy_transform=None - ): - encoder_outputs = self.acoustic_model.inference( - tokens=x, - d_vectors=aux_input["d_vectors"], - speaker_idx=aux_input["speaker_ids"], - pitch_transform=pitch_transform, - energy_transform=energy_transform, - p_control=None, - d_control=None, - ) - vocoder_input = encoder_outputs["model_outputs"].transpose(1, 2) # [B, T_max2, C_mel] -> [B, C_mel, T_max2] - if encoder_outputs["spk_emb"] is not None: - g = encoder_outputs["spk_emb"].unsqueeze(-1) - else: - g = None - - vocoder_output = self.waveform_decoder(x=vocoder_input, g=g) - model_outputs = {**encoder_outputs} - model_outputs["model_outputs"] = vocoder_output - return model_outputs - - @torch.no_grad() - def inference_spec_decoder(self, x, aux_input={"d_vectors": None, "speaker_ids": None}): - encoder_outputs = self.acoustic_model.inference( - tokens=x, - d_vectors=aux_input["d_vectors"], - speaker_idx=aux_input["speaker_ids"], - ) - model_outputs = {**encoder_outputs} - return model_outputs - - def train_step(self, batch: dict, criterion: nn.Module, optimizer_idx: int): - if optimizer_idx == 0: - tokens = batch["text_input"] - token_lenghts = batch["text_lengths"] - mel = batch["mel_input"] - mel_lens = batch["mel_lengths"] - waveform = batch["waveform"] # [B, T, C] -> [B, C, T] - pitch = batch["pitch"] - d_vectors = batch["d_vectors"] - speaker_ids = batch["speaker_ids"] - attn_priors = batch["attn_priors"] - energy = batch["energy"] - - # generator pass - outputs = self.forward( - x=tokens, - x_lengths=token_lenghts, - spec_lengths=mel_lens, - spec=mel, - waveform=waveform, - pitch=pitch, - energy=energy, - attn_priors=attn_priors, - d_vectors=d_vectors, - speaker_idx=speaker_ids, - ) - - # cache tensors for the generator pass - self.model_outputs_cache = outputs # pylint: disable=attribute-defined-outside-init - - if self.train_disc: - # compute scores and features - scores_d_fake, _, scores_d_real, _ = self.disc( - outputs["model_outputs"].detach(), outputs["waveform_seg"] - ) - - # compute loss - with autocast(enabled=False): # use float32 for the criterion - loss_dict = criterion[optimizer_idx]( - scores_disc_fake=scores_d_fake, - scores_disc_real=scores_d_real, - ) - return outputs, loss_dict - return None, None - - if optimizer_idx == 1: - mel = batch["mel_input"] - # compute melspec segment - with autocast(enabled=False): - mel_slice = segment( - mel.float(), self.model_outputs_cache["slice_ids"], self.args.spec_segment_size, pad_short=True - ) - - mel_slice_hat = wav_to_mel( - y=self.model_outputs_cache["model_outputs"].float(), - n_fft=self.ap.fft_size, - sample_rate=self.ap.sample_rate, - num_mels=self.ap.num_mels, - hop_length=self.ap.hop_length, - win_length=self.ap.win_length, - fmin=self.ap.mel_fmin, - fmax=self.ap.mel_fmax, - center=False, - ) - - scores_d_fake = None - feats_d_fake = None - feats_d_real = None - - if self.train_disc: - # compute discriminator scores and features - scores_d_fake, feats_d_fake, _, feats_d_real = self.disc( - self.model_outputs_cache["model_outputs"], self.model_outputs_cache["waveform_seg"] - ) - - # compute losses - with autocast(enabled=True): # use float32 for the criterion - loss_dict = criterion[optimizer_idx]( - mel_output=self.model_outputs_cache["acoustic_model_outputs"].transpose(1, 2), - mel_target=batch["mel_input"], - mel_lens=batch["mel_lengths"], - dur_output=self.model_outputs_cache["dr_log_pred"], - dur_target=self.model_outputs_cache["dr_log_target"].detach(), - pitch_output=self.model_outputs_cache["pitch_pred"], - pitch_target=self.model_outputs_cache["pitch_target"], - energy_output=self.model_outputs_cache["energy_pred"], - energy_target=self.model_outputs_cache["energy_target"], - src_lens=batch["text_lengths"], - waveform=self.model_outputs_cache["waveform_seg"], - waveform_hat=self.model_outputs_cache["model_outputs"], - p_prosody_ref=self.model_outputs_cache["p_prosody_ref"], - p_prosody_pred=self.model_outputs_cache["p_prosody_pred"], - u_prosody_ref=self.model_outputs_cache["u_prosody_ref"], - u_prosody_pred=self.model_outputs_cache["u_prosody_pred"], - aligner_logprob=self.model_outputs_cache["aligner_logprob"], - aligner_hard=self.model_outputs_cache["aligner_mas"], - aligner_soft=self.model_outputs_cache["aligner_soft"], - binary_loss_weight=self.binary_loss_weight, - feats_fake=feats_d_fake, - feats_real=feats_d_real, - scores_fake=scores_d_fake, - spec_slice=mel_slice, - spec_slice_hat=mel_slice_hat, - skip_disc=not self.train_disc, - ) - - loss_dict["avg_text_length"] = batch["text_lengths"].float().mean() - loss_dict["avg_mel_length"] = batch["mel_lengths"].float().mean() - loss_dict["avg_text_batch_occupancy"] = ( - batch["text_lengths"].float() / batch["text_lengths"].float().max() - ).mean() - loss_dict["avg_mel_batch_occupancy"] = ( - batch["mel_lengths"].float() / batch["mel_lengths"].float().max() - ).mean() - - return self.model_outputs_cache, loss_dict - raise ValueError(" [!] Unexpected `optimizer_idx`.") - - def eval_step(self, batch: dict, criterion: nn.Module, optimizer_idx: int): - return self.train_step(batch, criterion, optimizer_idx) - - def _log(self, batch, outputs, name_prefix="train"): - figures, audios = {}, {} - - # encoder outputs - model_outputs = outputs[1]["acoustic_model_outputs"] - alignments = outputs[1]["alignments"] - mel_input = batch["mel_input"] - - pred_spec = model_outputs[0].data.cpu().numpy() - gt_spec = mel_input[0].data.cpu().numpy() - align_img = alignments[0].data.cpu().numpy() - - figures = { - "prediction": plot_spectrogram(pred_spec, None, output_fig=False), - "ground_truth": plot_spectrogram(gt_spec.T, None, output_fig=False), - "alignment": plot_alignment(align_img, output_fig=False), - } - - # plot pitch figures - pitch_avg = abs(outputs[1]["pitch_target"][0, 0].data.cpu().numpy()) - pitch_avg_hat = abs(outputs[1]["pitch_pred"][0, 0].data.cpu().numpy()) - chars = self.tokenizer.decode(batch["text_input"][0].data.cpu().numpy()) - pitch_figures = { - "pitch_ground_truth": plot_avg_pitch(pitch_avg, chars, output_fig=False), - "pitch_avg_predicted": plot_avg_pitch(pitch_avg_hat, chars, output_fig=False), - } - figures.update(pitch_figures) - - # plot energy figures - energy_avg = abs(outputs[1]["energy_target"][0, 0].data.cpu().numpy()) - energy_avg_hat = abs(outputs[1]["energy_pred"][0, 0].data.cpu().numpy()) - chars = self.tokenizer.decode(batch["text_input"][0].data.cpu().numpy()) - energy_figures = { - "energy_ground_truth": plot_avg_pitch(energy_avg, chars, output_fig=False), - "energy_avg_predicted": plot_avg_pitch(energy_avg_hat, chars, output_fig=False), - } - figures.update(energy_figures) - - # plot the attention mask computed from the predicted durations - alignments_hat = outputs[1]["alignments_dp"][0].data.cpu().numpy() - figures["alignment_hat"] = plot_alignment(alignments_hat.T, output_fig=False) - - # Sample audio - encoder_audio = mel_to_wav_numpy( - mel=db_to_amp_numpy(x=pred_spec.T, gain=1, base=None), mel_basis=self.mel_basis, **self.config.audio - ) - audios[f"{name_prefix}/encoder_audio"] = encoder_audio - - # vocoder outputs - y_hat = outputs[1]["model_outputs"] - y = outputs[1]["waveform_seg"] - - vocoder_figures = plot_results(y_hat=y_hat, y=y, ap=self.ap, name_prefix=name_prefix) - figures.update(vocoder_figures) - - sample_voice = y_hat[0].squeeze(0).detach().cpu().numpy() - audios[f"{name_prefix}/vocoder_audio"] = sample_voice - return figures, audios - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ): # pylint: disable=no-self-use, unused-argument - """Create visualizations and waveform examples. - - For example, here you can plot spectrograms and generate sample sample waveforms from these spectrograms to - be projected onto Tensorboard. - - Args: - batch (Dict): Model inputs used at the previous training step. - outputs (Dict): Model outputs generated at the previous training step. - - Returns: - Tuple[Dict, np.ndarray]: training plots and output waveform. - """ - figures, audios = self._log(batch=batch, outputs=outputs, name_prefix="vocoder/") - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - def eval_log(self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int) -> None: - figures, audios = self._log(batch=batch, outputs=outputs, name_prefix="vocoder/") - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - def get_aux_input_from_test_sentences(self, sentence_info): - if hasattr(self.config, "model_args"): - config = self.config.model_args - else: - config = self.config - - # extract speaker and language info - text, speaker_name, style_wav = None, None, None - - if isinstance(sentence_info, list): - if len(sentence_info) == 1: - text = sentence_info[0] - elif len(sentence_info) == 2: - text, speaker_name = sentence_info - elif len(sentence_info) == 3: - text, speaker_name, style_wav = sentence_info - else: - text = sentence_info - - # get speaker id/d_vector - speaker_id, d_vector = None, None - if hasattr(self, "speaker_manager"): - if config.use_d_vector_file: - if speaker_name is None: - d_vector = self.speaker_manager.get_random_embedding() - else: - d_vector = self.speaker_manager.get_mean_embedding(speaker_name, num_samples=None, randomize=False) - elif config.use_speaker_embedding: - if speaker_name is None: - speaker_id = self.speaker_manager.get_random_id() - else: - speaker_id = self.speaker_manager.name_to_id[speaker_name] - - return {"text": text, "speaker_id": speaker_id, "style_wav": style_wav, "d_vector": d_vector} - - def plot_outputs(self, text, wav, alignment, outputs): - figures = {} - pitch_avg_pred = outputs["pitch"].cpu() - energy_avg_pred = outputs["energy"].cpu() - spec = wav_to_mel( - y=torch.from_numpy(wav[None, :]), - n_fft=self.ap.fft_size, - sample_rate=self.ap.sample_rate, - num_mels=self.ap.num_mels, - hop_length=self.ap.hop_length, - win_length=self.ap.win_length, - fmin=self.ap.mel_fmin, - fmax=self.ap.mel_fmax, - center=False, - )[0].transpose(0, 1) - pitch = compute_f0( - x=wav[0], - sample_rate=self.ap.sample_rate, - hop_length=self.ap.hop_length, - pitch_fmax=self.ap.pitch_fmax, - ) - input_text = self.tokenizer.ids_to_text(self.tokenizer.text_to_ids(text, language="en")) - input_text = input_text.replace("", "_") - durations = outputs["durations"] - pitch_avg = average_over_durations(torch.from_numpy(pitch)[None, None, :], durations.cpu()) # [1, 1, n_frames] - pitch_avg_pred_denorm = (pitch_avg_pred * self.pitch_std) + self.pitch_mean - figures["alignment"] = plot_alignment(alignment.transpose(1, 2), output_fig=False) - figures["spectrogram"] = plot_spectrogram(spec) - figures["pitch_from_wav"] = plot_pitch(pitch, spec) - figures["pitch_avg_from_wav"] = plot_avg_pitch(pitch_avg.squeeze(), input_text) - figures["pitch_avg_pred"] = plot_avg_pitch(pitch_avg_pred_denorm.squeeze(), input_text) - figures["energy_avg_pred"] = plot_avg_pitch(energy_avg_pred.squeeze(), input_text) - return figures - - def synthesize( - self, - text: str, - speaker_id: str = None, - d_vector: torch.tensor = None, - pitch_transform=None, - **kwargs, - ): # pylint: disable=unused-argument - # TODO: add cloning support with ref_waveform - is_cuda = next(self.parameters()).is_cuda - - # convert text to sequence of token IDs - text_inputs = np.asarray( - self.tokenizer.text_to_ids(text, language=None), - dtype=np.int32, - ) - - # set speaker inputs - _speaker_id = None - if speaker_id is not None and self.args.use_speaker_embedding: - if isinstance(speaker_id, str) and self.args.use_speaker_embedding: - # get the speaker id for the speaker embedding layer - _speaker_id = self.speaker_manager.name_to_id[speaker_id] - _speaker_id = id_to_torch(_speaker_id, cuda=is_cuda) - - if speaker_id is not None and self.args.use_d_vector_file: - # get the average d_vector for the speaker - d_vector = self.speaker_manager.get_mean_embedding(speaker_id, num_samples=None, randomize=False) - d_vector = embedding_to_torch(d_vector, cuda=is_cuda) - - text_inputs = numpy_to_torch(text_inputs, torch.long, cuda=is_cuda) - text_inputs = text_inputs.unsqueeze(0) - - # synthesize voice - outputs = self.inference( - text_inputs, - aux_input={"d_vectors": d_vector, "speaker_ids": _speaker_id}, - pitch_transform=pitch_transform, - # energy_transform=energy_transform - ) - - # collect outputs - wav = outputs["model_outputs"][0].data.cpu().numpy() - alignments = outputs["alignments"] - return_dict = { - "wav": wav, - "alignments": alignments, - "text_inputs": text_inputs, - "outputs": outputs, - } - return return_dict - - def synthesize_with_gl(self, text: str, speaker_id, d_vector): - is_cuda = next(self.parameters()).is_cuda - - # convert text to sequence of token IDs - text_inputs = np.asarray( - self.tokenizer.text_to_ids(text, language=None), - dtype=np.int32, - ) - # pass tensors to backend - if speaker_id is not None: - speaker_id = id_to_torch(speaker_id, cuda=is_cuda) - - if d_vector is not None: - d_vector = embedding_to_torch(d_vector, cuda=is_cuda) - - text_inputs = numpy_to_torch(text_inputs, torch.long, cuda=is_cuda) - text_inputs = text_inputs.unsqueeze(0) - - # synthesize voice - outputs = self.inference_spec_decoder( - x=text_inputs, - aux_input={"d_vectors": d_vector, "speaker_ids": speaker_id}, - ) - - # collect outputs - S = outputs["model_outputs"].cpu().numpy()[0].T - S = db_to_amp_numpy(x=S, gain=1, base=None) - wav = mel_to_wav_numpy(mel=S, mel_basis=self.mel_basis, **self.config.audio) - alignments = outputs["alignments"] - return_dict = { - "wav": wav[None, :], - "alignments": alignments, - "text_inputs": text_inputs, - "outputs": outputs, - } - return return_dict - - @torch.no_grad() - def test_run(self, assets) -> Tuple[Dict, Dict]: - """Generic test run for `tts` models used by `Trainer`. - - You can override this for a different behaviour. - - Returns: - Tuple[Dict, Dict]: Test figures and audios to be projected to Tensorboard. - """ - print(" | > Synthesizing test sentences.") - test_audios = {} - test_figures = {} - test_sentences = self.config.test_sentences - for idx, s_info in enumerate(test_sentences): - aux_inputs = self.get_aux_input_from_test_sentences(s_info) - outputs = self.synthesize( - aux_inputs["text"], - config=self.config, - speaker_id=aux_inputs["speaker_id"], - d_vector=aux_inputs["d_vector"], - ) - outputs_gl = self.synthesize_with_gl( - aux_inputs["text"], - speaker_id=aux_inputs["speaker_id"], - d_vector=aux_inputs["d_vector"], - ) - # speaker_name = self.speaker_manager.speaker_names[aux_inputs["speaker_id"]] - test_audios["{}-audio".format(idx)] = outputs["wav"].T - test_audios["{}-audio_encoder".format(idx)] = outputs_gl["wav"].T - test_figures["{}-alignment".format(idx)] = plot_alignment(outputs["alignments"], output_fig=False) - return {"figures": test_figures, "audios": test_audios} - - def test_log( - self, outputs: dict, logger: "Logger", assets: dict, steps: int # pylint: disable=unused-argument - ) -> None: - logger.test_audios(steps, outputs["audios"], self.config.audio.sample_rate) - logger.test_figures(steps, outputs["figures"]) - - def format_batch(self, batch: Dict) -> Dict: - """Compute speaker, langugage IDs and d_vector for the batch if necessary.""" - speaker_ids = None - d_vectors = None - - # get numerical speaker ids from speaker names - if self.speaker_manager is not None and self.speaker_manager.speaker_names and self.args.use_speaker_embedding: - speaker_ids = [self.speaker_manager.name_to_id[sn] for sn in batch["speaker_names"]] - - if speaker_ids is not None: - speaker_ids = torch.LongTensor(speaker_ids) - batch["speaker_ids"] = speaker_ids - - # get d_vectors from audio file names - if self.speaker_manager is not None and self.speaker_manager.embeddings and self.args.use_d_vector_file: - d_vector_mapping = self.speaker_manager.embeddings - d_vectors = [d_vector_mapping[w]["embedding"] for w in batch["audio_unique_names"]] - d_vectors = torch.FloatTensor(d_vectors) - - batch["d_vectors"] = d_vectors - batch["speaker_ids"] = speaker_ids - return batch - - def format_batch_on_device(self, batch): - """Compute spectrograms on the device.""" - - ac = self.ap - - # compute spectrograms - batch["mel_input"] = wav_to_mel( - batch["waveform"], - hop_length=ac.hop_length, - win_length=ac.win_length, - n_fft=ac.fft_size, - num_mels=ac.num_mels, - sample_rate=ac.sample_rate, - fmin=ac.mel_fmin, - fmax=ac.mel_fmax, - center=False, - ) - - # TODO: Align pitch properly - # assert ( - # batch["pitch"].shape[2] == batch["mel_input"].shape[2] - # ), f"{batch['pitch'].shape[2]}, {batch['mel_input'].shape[2]}" - batch["pitch"] = batch["pitch"][:, :, : batch["mel_input"].shape[2]] if batch["pitch"] is not None else None - batch["mel_lengths"] = (batch["mel_input"].shape[2] * batch["waveform_rel_lens"]).int() - - # zero the padding frames - batch["mel_input"] = batch["mel_input"] * sequence_mask(batch["mel_lengths"]).unsqueeze(1) - - # format attn priors as we now the max mel length - # TODO: fix 1 diff b/w mel_lengths and attn_priors - - if self.config.use_attn_priors: - attn_priors_np = batch["attn_priors"] - - batch["attn_priors"] = torch.zeros( - batch["mel_input"].shape[0], - batch["mel_lengths"].max(), - batch["text_lengths"].max(), - device=batch["mel_input"].device, - ) - - for i in range(batch["mel_input"].shape[0]): - batch["attn_priors"][i, : attn_priors_np[i].shape[0], : attn_priors_np[i].shape[1]] = torch.from_numpy( - attn_priors_np[i] - ) - - batch["energy"] = None - batch["energy"] = wav_to_energy( # [B, 1, T_max2] - batch["waveform"], - hop_length=ac.hop_length, - win_length=ac.win_length, - n_fft=ac.fft_size, - center=False, - ) - batch["energy"] = self.energy_scaler(batch["energy"]) - return batch - - def get_sampler(self, config: Coqpit, dataset: TTSDataset, num_gpus=1): - weights = None - data_items = dataset.samples - if getattr(config, "use_weighted_sampler", False): - for attr_name, alpha in config.weighted_sampler_attrs.items(): - print(f" > Using weighted sampler for attribute '{attr_name}' with alpha '{alpha}'") - multi_dict = config.weighted_sampler_multipliers.get(attr_name, None) - print(multi_dict) - weights, attr_names, attr_weights = get_attribute_balancer_weights( - attr_name=attr_name, items=data_items, multi_dict=multi_dict - ) - weights = weights * alpha - print(f" > Attribute weights for '{attr_names}' \n | > {attr_weights}") - - if weights is not None: - sampler = WeightedRandomSampler(weights, len(weights)) - else: - sampler = None - # sampler for DDP - if sampler is None: - sampler = DistributedSampler(dataset) if num_gpus > 1 else None - else: # If a sampler is already defined use this sampler and DDP sampler together - sampler = DistributedSamplerWrapper(sampler) if num_gpus > 1 else sampler - return sampler - - def get_data_loader( - self, - config: Coqpit, - assets: Dict, - is_eval: bool, - samples: Union[List[Dict], List[List]], - verbose: bool, - num_gpus: int, - rank: int = None, - ) -> "DataLoader": - if is_eval and not config.run_eval: - loader = None - else: - # init dataloader - dataset = ForwardTTSE2eDataset( - samples=samples, - ap=self.ap, - batch_group_size=0 if is_eval else config.batch_group_size * config.batch_size, - min_text_len=config.min_text_len, - max_text_len=config.max_text_len, - min_audio_len=config.min_audio_len, - max_audio_len=config.max_audio_len, - phoneme_cache_path=config.phoneme_cache_path, - precompute_num_workers=config.precompute_num_workers, - compute_f0=config.compute_f0, - f0_cache_path=config.f0_cache_path, - attn_prior_cache_path=config.attn_prior_cache_path if config.use_attn_priors else None, - verbose=verbose, - tokenizer=self.tokenizer, - start_by_longest=config.start_by_longest, - ) - - # wait all the DDP process to be ready - if num_gpus > 1: - dist.barrier() - - # sort input sequences ascendingly by length - dataset.preprocess_samples() - - # get samplers - sampler = self.get_sampler(config, dataset, num_gpus) - - loader = DataLoader( - dataset, - batch_size=config.eval_batch_size if is_eval else config.batch_size, - shuffle=False, # shuffle is done in the dataset. - drop_last=False, # setting this False might cause issues in AMP training. - sampler=sampler, - collate_fn=dataset.collate_fn, - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=True, - ) - - # get pitch mean and std - self.pitch_mean = dataset.f0_dataset.mean - self.pitch_std = dataset.f0_dataset.std - return loader - - def get_criterion(self): - return [VitsDiscriminatorLoss(self.config), DelightfulTTSLoss(self.config)] - - def get_optimizer(self) -> List: - """Initiate and return the GAN optimizers based on the config parameters. - It returnes 2 optimizers in a list. First one is for the generator and the second one is for the discriminator. - Returns: - List: optimizers. - """ - optimizer_disc = get_optimizer( - self.config.optimizer, self.config.optimizer_params, self.config.lr_disc, self.disc - ) - gen_parameters = chain(params for k, params in self.named_parameters() if not k.startswith("disc.")) - optimizer_gen = get_optimizer( - self.config.optimizer, self.config.optimizer_params, self.config.lr_gen, parameters=gen_parameters - ) - return [optimizer_disc, optimizer_gen] - - def get_lr(self) -> List: - """Set the initial learning rates for each optimizer. - - Returns: - List: learning rates for each optimizer. - """ - return [self.config.lr_disc, self.config.lr_gen] - - def get_scheduler(self, optimizer) -> List: - """Set the schedulers for each optimizer. - - Args: - optimizer (List[`torch.optim.Optimizer`]): List of optimizers. - - Returns: - List: Schedulers, one for each optimizer. - """ - scheduler_D = get_scheduler(self.config.lr_scheduler_gen, self.config.lr_scheduler_gen_params, optimizer[0]) - scheduler_G = get_scheduler(self.config.lr_scheduler_disc, self.config.lr_scheduler_disc_params, optimizer[1]) - return [scheduler_D, scheduler_G] - - def on_train_step_start(self, trainer): - """Schedule binary loss weight.""" - self.binary_loss_weight = min(trainer.epochs_done / self.config.binary_loss_warmup_epochs, 1.0) * 1.0 - - def on_epoch_end(self, trainer): # pylint: disable=unused-argument - # stop updating mean and var - # TODO: do the same for F0 - self.energy_scaler.eval() - - @staticmethod - def init_from_config( - config: "DelightfulTTSConfig", samples: Union[List[List], List[Dict]] = None, verbose=False - ): # pylint: disable=unused-argument - """Initiate model from config - - Args: - config (ForwardTTSE2eConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - """ - - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config.model_args, samples) - ap = AudioProcessor.init_from_config(config=config) - return DelightfulTTS(config=new_config, tokenizer=tokenizer, speaker_manager=speaker_manager, ap=ap) - - def load_checkpoint(self, config, checkpoint_path, eval=False): - """Load model from a checkpoint created by the 👟""" - # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu")) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - - def get_state_dict(self): - """Custom state dict of the model with all the necessary components for inference.""" - save_state = {"config": self.config.to_dict(), "args": self.args.to_dict(), "model": self.state_dict} - - if hasattr(self, "emb_g"): - save_state["speaker_ids"] = self.speaker_manager.speaker_names - - if self.args.use_d_vector_file: - # TODO: implement saving of d_vectors - ... - return save_state - - def save(self, config, checkpoint_path): - """Save model to a file.""" - save_state = self.get_state_dict(config, checkpoint_path) # pylint: disable=too-many-function-args - save_state["pitch_mean"] = self.pitch_mean - save_state["pitch_std"] = self.pitch_std - torch.save(save_state, checkpoint_path) - - def on_train_step_start(self, trainer) -> None: - """Enable the discriminator training based on `steps_to_start_discriminator` - - Args: - trainer (Trainer): Trainer object. - """ - self.train_disc = ( # pylint: disable=attribute-defined-outside-init - trainer.total_steps_done >= self.config.steps_to_start_discriminator - ) - - -class DelightfulTTSLoss(nn.Module): - def __init__(self, config): - super().__init__() - - self.mse_loss = nn.MSELoss() - self.mae_loss = nn.L1Loss() - self.forward_sum_loss = ForwardSumLoss() - self.multi_scale_stft_loss = MultiScaleSTFTLoss(**config.multi_scale_stft_loss_params) - - self.mel_loss_alpha = config.mel_loss_alpha - self.aligner_loss_alpha = config.aligner_loss_alpha - self.pitch_loss_alpha = config.pitch_loss_alpha - self.energy_loss_alpha = config.energy_loss_alpha - self.u_prosody_loss_alpha = config.u_prosody_loss_alpha - self.p_prosody_loss_alpha = config.p_prosody_loss_alpha - self.dur_loss_alpha = config.dur_loss_alpha - self.char_dur_loss_alpha = config.char_dur_loss_alpha - self.binary_alignment_loss_alpha = config.binary_align_loss_alpha - - self.vocoder_mel_loss_alpha = config.vocoder_mel_loss_alpha - self.feat_loss_alpha = config.feat_loss_alpha - self.gen_loss_alpha = config.gen_loss_alpha - self.multi_scale_stft_loss_alpha = config.multi_scale_stft_loss_alpha - - @staticmethod - def _binary_alignment_loss(alignment_hard, alignment_soft): - """Binary loss that forces soft alignments to match the hard alignments as - explained in `https://arxiv.org/pdf/2108.10447.pdf`. - """ - log_sum = torch.log(torch.clamp(alignment_soft[alignment_hard == 1], min=1e-12)).sum() - return -log_sum / alignment_hard.sum() - - @staticmethod - def feature_loss(feats_real, feats_generated): - loss = 0 - for dr, dg in zip(feats_real, feats_generated): - for rl, gl in zip(dr, dg): - rl = rl.float().detach() - gl = gl.float() - loss += torch.mean(torch.abs(rl - gl)) - return loss * 2 - - @staticmethod - def generator_loss(scores_fake): - loss = 0 - gen_losses = [] - for dg in scores_fake: - dg = dg.float() - l = torch.mean((1 - dg) ** 2) - gen_losses.append(l) - loss += l - - return loss, gen_losses - - def forward( - self, - mel_output, - mel_target, - mel_lens, - dur_output, - dur_target, - pitch_output, - pitch_target, - energy_output, - energy_target, - src_lens, - waveform, - waveform_hat, - p_prosody_ref, - p_prosody_pred, - u_prosody_ref, - u_prosody_pred, - aligner_logprob, - aligner_hard, - aligner_soft, - binary_loss_weight=None, - feats_fake=None, - feats_real=None, - scores_fake=None, - spec_slice=None, - spec_slice_hat=None, - skip_disc=False, - ): - """ - Shapes: - - mel_output: :math:`(B, C_mel, T_mel)` - - mel_target: :math:`(B, C_mel, T_mel)` - - mel_lens: :math:`(B)` - - dur_output: :math:`(B, T_src)` - - dur_target: :math:`(B, T_src)` - - pitch_output: :math:`(B, 1, T_src)` - - pitch_target: :math:`(B, 1, T_src)` - - energy_output: :math:`(B, 1, T_src)` - - energy_target: :math:`(B, 1, T_src)` - - src_lens: :math:`(B)` - - waveform: :math:`(B, 1, T_wav)` - - waveform_hat: :math:`(B, 1, T_wav)` - - p_prosody_ref: :math:`(B, T_src, 4)` - - p_prosody_pred: :math:`(B, T_src, 4)` - - u_prosody_ref: :math:`(B, 1, 256) - - u_prosody_pred: :math:`(B, 1, 256) - - aligner_logprob: :math:`(B, 1, T_mel, T_src)` - - aligner_hard: :math:`(B, T_mel, T_src)` - - aligner_soft: :math:`(B, T_mel, T_src)` - - spec_slice: :math:`(B, C_mel, T_mel)` - - spec_slice_hat: :math:`(B, C_mel, T_mel)` - """ - loss_dict = {} - src_mask = sequence_mask(src_lens).to(mel_output.device) # (B, T_src) - mel_mask = sequence_mask(mel_lens).to(mel_output.device) # (B, T_mel) - - dur_target.requires_grad = False - mel_target.requires_grad = False - pitch_target.requires_grad = False - - masked_mel_predictions = mel_output.masked_select(mel_mask[:, None]) - mel_targets = mel_target.masked_select(mel_mask[:, None]) - mel_loss = self.mae_loss(masked_mel_predictions, mel_targets) - - p_prosody_ref = p_prosody_ref.detach() - p_prosody_loss = 0.5 * self.mae_loss( - p_prosody_ref.masked_select(src_mask.unsqueeze(-1)), - p_prosody_pred.masked_select(src_mask.unsqueeze(-1)), - ) - - u_prosody_ref = u_prosody_ref.detach() - u_prosody_loss = 0.5 * self.mae_loss(u_prosody_ref, u_prosody_pred) - - duration_loss = self.mse_loss(dur_output, dur_target) - - pitch_output = pitch_output.masked_select(src_mask[:, None]) - pitch_target = pitch_target.masked_select(src_mask[:, None]) - pitch_loss = self.mse_loss(pitch_output, pitch_target) - - energy_output = energy_output.masked_select(src_mask[:, None]) - energy_target = energy_target.masked_select(src_mask[:, None]) - energy_loss = self.mse_loss(energy_output, energy_target) - - forward_sum_loss = self.forward_sum_loss(aligner_logprob, src_lens, mel_lens) - - total_loss = ( - (mel_loss * self.mel_loss_alpha) - + (duration_loss * self.dur_loss_alpha) - + (u_prosody_loss * self.u_prosody_loss_alpha) - + (p_prosody_loss * self.p_prosody_loss_alpha) - + (pitch_loss * self.pitch_loss_alpha) - + (energy_loss * self.energy_loss_alpha) - + (forward_sum_loss * self.aligner_loss_alpha) - ) - - if self.binary_alignment_loss_alpha > 0 and aligner_hard is not None: - binary_alignment_loss = self._binary_alignment_loss(aligner_hard, aligner_soft) - total_loss = total_loss + self.binary_alignment_loss_alpha * binary_alignment_loss * binary_loss_weight - if binary_loss_weight: - loss_dict["loss_binary_alignment"] = ( - self.binary_alignment_loss_alpha * binary_alignment_loss * binary_loss_weight - ) - else: - loss_dict["loss_binary_alignment"] = self.binary_alignment_loss_alpha * binary_alignment_loss - - loss_dict["loss_aligner"] = self.aligner_loss_alpha * forward_sum_loss - loss_dict["loss_mel"] = self.mel_loss_alpha * mel_loss - loss_dict["loss_duration"] = self.dur_loss_alpha * duration_loss - loss_dict["loss_u_prosody"] = self.u_prosody_loss_alpha * u_prosody_loss - loss_dict["loss_p_prosody"] = self.p_prosody_loss_alpha * p_prosody_loss - loss_dict["loss_pitch"] = self.pitch_loss_alpha * pitch_loss - loss_dict["loss_energy"] = self.energy_loss_alpha * energy_loss - loss_dict["loss"] = total_loss - - # vocoder losses - if not skip_disc: - loss_feat = self.feature_loss(feats_real=feats_real, feats_generated=feats_fake) * self.feat_loss_alpha - loss_gen = self.generator_loss(scores_fake=scores_fake)[0] * self.gen_loss_alpha - loss_dict["vocoder_loss_feat"] = loss_feat - loss_dict["vocoder_loss_gen"] = loss_gen - loss_dict["loss"] = loss_dict["loss"] + loss_feat + loss_gen - - loss_mel = torch.nn.functional.l1_loss(spec_slice, spec_slice_hat) * self.vocoder_mel_loss_alpha - loss_stft_mg, loss_stft_sc = self.multi_scale_stft_loss(y_hat=waveform_hat, y=waveform) - loss_stft_mg = loss_stft_mg * self.multi_scale_stft_loss_alpha - loss_stft_sc = loss_stft_sc * self.multi_scale_stft_loss_alpha - - loss_dict["vocoder_loss_mel"] = loss_mel - loss_dict["vocoder_loss_stft_mg"] = loss_stft_mg - loss_dict["vocoder_loss_stft_sc"] = loss_stft_sc - - loss_dict["loss"] = loss_dict["loss"] + loss_mel + loss_stft_sc + loss_stft_mg - return loss_dict diff --git a/TTS/tts/models/forward_tts.py b/TTS/tts/models/forward_tts.py deleted file mode 100644 index 6d1e90ca5fd1b1ae675e46da6fc1a674009ce432..0000000000000000000000000000000000000000 --- a/TTS/tts/models/forward_tts.py +++ /dev/null @@ -1,856 +0,0 @@ -from dataclasses import dataclass, field -from typing import Dict, List, Tuple, Union - -import torch -from coqpit import Coqpit -from torch import nn -from torch.cuda.amp.autocast_mode import autocast - -from TTS.tts.layers.feed_forward.decoder import Decoder -from TTS.tts.layers.feed_forward.encoder import Encoder -from TTS.tts.layers.generic.aligner import AlignmentNetwork -from TTS.tts.layers.generic.pos_encoding import PositionalEncoding -from TTS.tts.layers.glow_tts.duration_predictor import DurationPredictor -from TTS.tts.models.base_tts import BaseTTS -from TTS.tts.utils.helpers import average_over_durations, generate_path, maximum_path, sequence_mask -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_avg_energy, plot_avg_pitch, plot_spectrogram -from TTS.utils.io import load_fsspec - - -@dataclass -class ForwardTTSArgs(Coqpit): - """ForwardTTS Model arguments. - - Args: - - num_chars (int): - Number of characters in the vocabulary. Defaults to 100. - - out_channels (int): - Number of output channels. Defaults to 80. - - hidden_channels (int): - Number of base hidden channels of the model. Defaults to 512. - - use_aligner (bool): - Whether to use aligner network to learn the text to speech alignment or use pre-computed durations. - If set False, durations should be computed by `TTS/bin/compute_attention_masks.py` and path to the - pre-computed durations must be provided to `config.datasets[0].meta_file_attn_mask`. Defaults to True. - - use_pitch (bool): - Use pitch predictor to learn the pitch. Defaults to True. - - use_energy (bool): - Use energy predictor to learn the energy. Defaults to True. - - duration_predictor_hidden_channels (int): - Number of hidden channels in the duration predictor. Defaults to 256. - - duration_predictor_dropout_p (float): - Dropout rate for the duration predictor. Defaults to 0.1. - - duration_predictor_kernel_size (int): - Kernel size of conv layers in the duration predictor. Defaults to 3. - - pitch_predictor_hidden_channels (int): - Number of hidden channels in the pitch predictor. Defaults to 256. - - pitch_predictor_dropout_p (float): - Dropout rate for the pitch predictor. Defaults to 0.1. - - pitch_predictor_kernel_size (int): - Kernel size of conv layers in the pitch predictor. Defaults to 3. - - pitch_embedding_kernel_size (int): - Kernel size of the projection layer in the pitch predictor. Defaults to 3. - - energy_predictor_hidden_channels (int): - Number of hidden channels in the energy predictor. Defaults to 256. - - energy_predictor_dropout_p (float): - Dropout rate for the energy predictor. Defaults to 0.1. - - energy_predictor_kernel_size (int): - Kernel size of conv layers in the energy predictor. Defaults to 3. - - energy_embedding_kernel_size (int): - Kernel size of the projection layer in the energy predictor. Defaults to 3. - - positional_encoding (bool): - Whether to use positional encoding. Defaults to True. - - positional_encoding_use_scale (bool): - Whether to use a learnable scale coeff in the positional encoding. Defaults to True. - - length_scale (int): - Length scale that multiplies the predicted durations. Larger values result slower speech. Defaults to 1.0. - - encoder_type (str): - Type of the encoder module. One of the encoders available in :class:`TTS.tts.layers.feed_forward.encoder`. - Defaults to `fftransformer` as in the paper. - - encoder_params (dict): - Parameters of the encoder module. Defaults to ```{"hidden_channels_ffn": 1024, "num_heads": 1, "num_layers": 6, "dropout_p": 0.1}``` - - decoder_type (str): - Type of the decoder module. One of the decoders available in :class:`TTS.tts.layers.feed_forward.decoder`. - Defaults to `fftransformer` as in the paper. - - decoder_params (str): - Parameters of the decoder module. Defaults to ```{"hidden_channels_ffn": 1024, "num_heads": 1, "num_layers": 6, "dropout_p": 0.1}``` - - detach_duration_predictor (bool): - Detach the input to the duration predictor from the earlier computation graph so that the duraiton loss - does not pass to the earlier layers. Defaults to True. - - max_duration (int): - Maximum duration accepted by the model. Defaults to 75. - - num_speakers (int): - Number of speakers for the speaker embedding layer. Defaults to 0. - - speakers_file (str): - Path to the speaker mapping file for the Speaker Manager. Defaults to None. - - speaker_embedding_channels (int): - Number of speaker embedding channels. Defaults to 256. - - use_d_vector_file (bool): - Enable/Disable the use of d-vectors for multi-speaker training. Defaults to False. - - d_vector_dim (int): - Number of d-vector channels. Defaults to 0. - - """ - - num_chars: int = None - out_channels: int = 80 - hidden_channels: int = 384 - use_aligner: bool = True - # pitch params - use_pitch: bool = True - pitch_predictor_hidden_channels: int = 256 - pitch_predictor_kernel_size: int = 3 - pitch_predictor_dropout_p: float = 0.1 - pitch_embedding_kernel_size: int = 3 - - # energy params - use_energy: bool = False - energy_predictor_hidden_channels: int = 256 - energy_predictor_kernel_size: int = 3 - energy_predictor_dropout_p: float = 0.1 - energy_embedding_kernel_size: int = 3 - - # duration params - duration_predictor_hidden_channels: int = 256 - duration_predictor_kernel_size: int = 3 - duration_predictor_dropout_p: float = 0.1 - - positional_encoding: bool = True - poisitonal_encoding_use_scale: bool = True - length_scale: int = 1 - encoder_type: str = "fftransformer" - encoder_params: dict = field( - default_factory=lambda: {"hidden_channels_ffn": 1024, "num_heads": 1, "num_layers": 6, "dropout_p": 0.1} - ) - decoder_type: str = "fftransformer" - decoder_params: dict = field( - default_factory=lambda: {"hidden_channels_ffn": 1024, "num_heads": 1, "num_layers": 6, "dropout_p": 0.1} - ) - detach_duration_predictor: bool = False - max_duration: int = 75 - num_speakers: int = 1 - use_speaker_embedding: bool = False - speakers_file: str = None - use_d_vector_file: bool = False - d_vector_dim: int = None - d_vector_file: str = None - - -class ForwardTTS(BaseTTS): - """General forward TTS model implementation that uses an encoder-decoder architecture with an optional alignment - network and a pitch predictor. - - If the alignment network is used, the model learns the text-to-speech alignment - from the data instead of using pre-computed durations. - - If the pitch predictor is used, the model trains a pitch predictor that predicts average pitch value for each - input character as in the FastPitch model. - - `ForwardTTS` can be configured to one of these architectures, - - - FastPitch - - SpeedySpeech - - FastSpeech - - FastSpeech2 (requires average speech energy predictor) - - Args: - config (Coqpit): Model coqpit class. - speaker_manager (SpeakerManager): Speaker manager for multi-speaker training. Only used for multi-speaker models. - Defaults to None. - - Examples: - >>> from TTS.tts.models.fast_pitch import ForwardTTS, ForwardTTSArgs - >>> config = ForwardTTSArgs() - >>> model = ForwardTTS(config) - """ - - # pylint: disable=dangerous-default-value - def __init__( - self, - config: Coqpit, - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - self._set_model_args(config) - - self.init_multispeaker(config) - - self.max_duration = self.args.max_duration - self.use_aligner = self.args.use_aligner - self.use_pitch = self.args.use_pitch - self.use_energy = self.args.use_energy - self.binary_loss_weight = 0.0 - - self.length_scale = ( - float(self.args.length_scale) if isinstance(self.args.length_scale, int) else self.args.length_scale - ) - - self.emb = nn.Embedding(self.args.num_chars, self.args.hidden_channels) - - self.encoder = Encoder( - self.args.hidden_channels, - self.args.hidden_channels, - self.args.encoder_type, - self.args.encoder_params, - self.embedded_speaker_dim, - ) - - if self.args.positional_encoding: - self.pos_encoder = PositionalEncoding(self.args.hidden_channels) - - self.decoder = Decoder( - self.args.out_channels, - self.args.hidden_channels, - self.args.decoder_type, - self.args.decoder_params, - ) - - self.duration_predictor = DurationPredictor( - self.args.hidden_channels + self.embedded_speaker_dim, - self.args.duration_predictor_hidden_channels, - self.args.duration_predictor_kernel_size, - self.args.duration_predictor_dropout_p, - ) - - if self.args.use_pitch: - self.pitch_predictor = DurationPredictor( - self.args.hidden_channels + self.embedded_speaker_dim, - self.args.pitch_predictor_hidden_channels, - self.args.pitch_predictor_kernel_size, - self.args.pitch_predictor_dropout_p, - ) - self.pitch_emb = nn.Conv1d( - 1, - self.args.hidden_channels, - kernel_size=self.args.pitch_embedding_kernel_size, - padding=int((self.args.pitch_embedding_kernel_size - 1) / 2), - ) - - if self.args.use_energy: - self.energy_predictor = DurationPredictor( - self.args.hidden_channels + self.embedded_speaker_dim, - self.args.energy_predictor_hidden_channels, - self.args.energy_predictor_kernel_size, - self.args.energy_predictor_dropout_p, - ) - self.energy_emb = nn.Conv1d( - 1, - self.args.hidden_channels, - kernel_size=self.args.energy_embedding_kernel_size, - padding=int((self.args.energy_embedding_kernel_size - 1) / 2), - ) - - if self.args.use_aligner: - self.aligner = AlignmentNetwork( - in_query_channels=self.args.out_channels, in_key_channels=self.args.hidden_channels - ) - - def init_multispeaker(self, config: Coqpit): - """Init for multi-speaker training. - - Args: - config (Coqpit): Model configuration. - """ - self.embedded_speaker_dim = 0 - # init speaker manager - if self.speaker_manager is None and (config.use_d_vector_file or config.use_speaker_embedding): - raise ValueError( - " > SpeakerManager is not provided. You must provide the SpeakerManager before initializing a multi-speaker model." - ) - # set number of speakers - if self.speaker_manager is not None: - self.num_speakers = self.speaker_manager.num_speakers - # init d-vector embedding - if config.use_d_vector_file: - self.embedded_speaker_dim = config.d_vector_dim - if self.args.d_vector_dim != self.args.hidden_channels: - self.proj_g = nn.Conv1d(self.args.d_vector_dim, self.args.hidden_channels, 1) - # init speaker embedding layer - if config.use_speaker_embedding and not config.use_d_vector_file: - print(" > Init speaker_embedding layer.") - self.emb_g = nn.Embedding(self.num_speakers, self.args.hidden_channels) - nn.init.uniform_(self.emb_g.weight, -0.1, 0.1) - - @staticmethod - def generate_attn(dr, x_mask, y_mask=None): - """Generate an attention mask from the durations. - - Shapes - - dr: :math:`(B, T_{en})` - - x_mask: :math:`(B, T_{en})` - - y_mask: :math:`(B, T_{de})` - """ - # compute decode mask from the durations - if y_mask is None: - y_lengths = dr.sum(1).long() - y_lengths[y_lengths < 1] = 1 - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(dr.dtype) - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - attn = generate_path(dr, attn_mask.squeeze(1)).to(dr.dtype) - return attn - - def expand_encoder_outputs(self, en, dr, x_mask, y_mask): - """Generate attention alignment map from durations and - expand encoder outputs - - Shapes: - - en: :math:`(B, D_{en}, T_{en})` - - dr: :math:`(B, T_{en})` - - x_mask: :math:`(B, T_{en})` - - y_mask: :math:`(B, T_{de})` - - Examples:: - - encoder output: [a,b,c,d] - durations: [1, 3, 2, 1] - - expanded: [a, b, b, b, c, c, d] - attention map: [[0, 0, 0, 0, 0, 0, 1], - [0, 0, 0, 0, 1, 1, 0], - [0, 1, 1, 1, 0, 0, 0], - [1, 0, 0, 0, 0, 0, 0]] - """ - attn = self.generate_attn(dr, x_mask, y_mask) - o_en_ex = torch.matmul(attn.squeeze(1).transpose(1, 2).to(en.dtype), en.transpose(1, 2)).transpose(1, 2) - return o_en_ex, attn - - def format_durations(self, o_dr_log, x_mask): - """Format predicted durations. - 1. Convert to linear scale from log scale - 2. Apply the length scale for speed adjustment - 3. Apply masking. - 4. Cast 0 durations to 1. - 5. Round the duration values. - - Args: - o_dr_log: Log scale durations. - x_mask: Input text mask. - - Shapes: - - o_dr_log: :math:`(B, T_{de})` - - x_mask: :math:`(B, T_{en})` - """ - o_dr = (torch.exp(o_dr_log) - 1) * x_mask * self.length_scale - o_dr[o_dr < 1] = 1.0 - o_dr = torch.round(o_dr) - return o_dr - - def _forward_encoder( - self, x: torch.LongTensor, x_mask: torch.FloatTensor, g: torch.FloatTensor = None - ) -> Tuple[torch.FloatTensor, torch.FloatTensor, torch.FloatTensor, torch.FloatTensor, torch.FloatTensor]: - """Encoding forward pass. - - 1. Embed speaker IDs if multi-speaker mode. - 2. Embed character sequences. - 3. Run the encoder network. - 4. Sum encoder outputs and speaker embeddings - - Args: - x (torch.LongTensor): Input sequence IDs. - x_mask (torch.FloatTensor): Input squence mask. - g (torch.FloatTensor, optional): Conditioning vectors. In general speaker embeddings. Defaults to None. - - Returns: - Tuple[torch.tensor, torch.tensor, torch.tensor, torch.tensor, torch.tensor]: - encoder output, encoder output for the duration predictor, input sequence mask, speaker embeddings, - character embeddings - - Shapes: - - x: :math:`(B, T_{en})` - - x_mask: :math:`(B, 1, T_{en})` - - g: :math:`(B, C)` - """ - if hasattr(self, "emb_g"): - g = self.emb_g(g) # [B, C, 1] - if g is not None: - g = g.unsqueeze(-1) - # [B, T, C] - x_emb = self.emb(x) - # encoder pass - o_en = self.encoder(torch.transpose(x_emb, 1, -1), x_mask) - # speaker conditioning - # TODO: try different ways of conditioning - if g is not None: - o_en = o_en + g - return o_en, x_mask, g, x_emb - - def _forward_decoder( - self, - o_en: torch.FloatTensor, - dr: torch.IntTensor, - x_mask: torch.FloatTensor, - y_lengths: torch.IntTensor, - g: torch.FloatTensor, - ) -> Tuple[torch.FloatTensor, torch.FloatTensor]: - """Decoding forward pass. - - 1. Compute the decoder output mask - 2. Expand encoder output with the durations. - 3. Apply position encoding. - 4. Add speaker embeddings if multi-speaker mode. - 5. Run the decoder. - - Args: - o_en (torch.FloatTensor): Encoder output. - dr (torch.IntTensor): Ground truth durations or alignment network durations. - x_mask (torch.IntTensor): Input sequence mask. - y_lengths (torch.IntTensor): Output sequence lengths. - g (torch.FloatTensor): Conditioning vectors. In general speaker embeddings. - - Returns: - Tuple[torch.FloatTensor, torch.FloatTensor]: Decoder output, attention map from durations. - """ - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).to(o_en.dtype) - # expand o_en with durations - o_en_ex, attn = self.expand_encoder_outputs(o_en, dr, x_mask, y_mask) - # positional encoding - if hasattr(self, "pos_encoder"): - o_en_ex = self.pos_encoder(o_en_ex, y_mask) - # decoder pass - o_de = self.decoder(o_en_ex, y_mask, g=g) - return o_de.transpose(1, 2), attn.transpose(1, 2) - - def _forward_pitch_predictor( - self, - o_en: torch.FloatTensor, - x_mask: torch.IntTensor, - pitch: torch.FloatTensor = None, - dr: torch.IntTensor = None, - ) -> Tuple[torch.FloatTensor, torch.FloatTensor]: - """Pitch predictor forward pass. - - 1. Predict pitch from encoder outputs. - 2. In training - Compute average pitch values for each input character from the ground truth pitch values. - 3. Embed average pitch values. - - Args: - o_en (torch.FloatTensor): Encoder output. - x_mask (torch.IntTensor): Input sequence mask. - pitch (torch.FloatTensor, optional): Ground truth pitch values. Defaults to None. - dr (torch.IntTensor, optional): Ground truth durations. Defaults to None. - - Returns: - Tuple[torch.FloatTensor, torch.FloatTensor]: Pitch embedding, pitch prediction. - - Shapes: - - o_en: :math:`(B, C, T_{en})` - - x_mask: :math:`(B, 1, T_{en})` - - pitch: :math:`(B, 1, T_{de})` - - dr: :math:`(B, T_{en})` - """ - o_pitch = self.pitch_predictor(o_en, x_mask) - if pitch is not None: - avg_pitch = average_over_durations(pitch, dr) - o_pitch_emb = self.pitch_emb(avg_pitch) - return o_pitch_emb, o_pitch, avg_pitch - o_pitch_emb = self.pitch_emb(o_pitch) - return o_pitch_emb, o_pitch - - def _forward_energy_predictor( - self, - o_en: torch.FloatTensor, - x_mask: torch.IntTensor, - energy: torch.FloatTensor = None, - dr: torch.IntTensor = None, - ) -> Tuple[torch.FloatTensor, torch.FloatTensor]: - """Energy predictor forward pass. - - 1. Predict energy from encoder outputs. - 2. In training - Compute average pitch values for each input character from the ground truth pitch values. - 3. Embed average energy values. - - Args: - o_en (torch.FloatTensor): Encoder output. - x_mask (torch.IntTensor): Input sequence mask. - energy (torch.FloatTensor, optional): Ground truth energy values. Defaults to None. - dr (torch.IntTensor, optional): Ground truth durations. Defaults to None. - - Returns: - Tuple[torch.FloatTensor, torch.FloatTensor]: Energy embedding, energy prediction. - - Shapes: - - o_en: :math:`(B, C, T_{en})` - - x_mask: :math:`(B, 1, T_{en})` - - pitch: :math:`(B, 1, T_{de})` - - dr: :math:`(B, T_{en})` - """ - o_energy = self.energy_predictor(o_en, x_mask) - if energy is not None: - avg_energy = average_over_durations(energy, dr) - o_energy_emb = self.energy_emb(avg_energy) - return o_energy_emb, o_energy, avg_energy - o_energy_emb = self.energy_emb(o_energy) - return o_energy_emb, o_energy - - def _forward_aligner( - self, x: torch.FloatTensor, y: torch.FloatTensor, x_mask: torch.IntTensor, y_mask: torch.IntTensor - ) -> Tuple[torch.IntTensor, torch.FloatTensor, torch.FloatTensor, torch.FloatTensor]: - """Aligner forward pass. - - 1. Compute a mask to apply to the attention map. - 2. Run the alignment network. - 3. Apply MAS to compute the hard alignment map. - 4. Compute the durations from the hard alignment map. - - Args: - x (torch.FloatTensor): Input sequence. - y (torch.FloatTensor): Output sequence. - x_mask (torch.IntTensor): Input sequence mask. - y_mask (torch.IntTensor): Output sequence mask. - - Returns: - Tuple[torch.IntTensor, torch.FloatTensor, torch.FloatTensor, torch.FloatTensor]: - Durations from the hard alignment map, soft alignment potentials, log scale alignment potentials, - hard alignment map. - - Shapes: - - x: :math:`[B, T_en, C_en]` - - y: :math:`[B, T_de, C_de]` - - x_mask: :math:`[B, 1, T_en]` - - y_mask: :math:`[B, 1, T_de]` - - - o_alignment_dur: :math:`[B, T_en]` - - alignment_soft: :math:`[B, T_en, T_de]` - - alignment_logprob: :math:`[B, 1, T_de, T_en]` - - alignment_mas: :math:`[B, T_en, T_de]` - """ - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - alignment_soft, alignment_logprob = self.aligner(y.transpose(1, 2), x.transpose(1, 2), x_mask, None) - alignment_mas = maximum_path( - alignment_soft.squeeze(1).transpose(1, 2).contiguous(), attn_mask.squeeze(1).contiguous() - ) - o_alignment_dur = torch.sum(alignment_mas, -1).int() - alignment_soft = alignment_soft.squeeze(1).transpose(1, 2) - return o_alignment_dur, alignment_soft, alignment_logprob, alignment_mas - - def _set_speaker_input(self, aux_input: Dict): - d_vectors = aux_input.get("d_vectors", None) - speaker_ids = aux_input.get("speaker_ids", None) - - if d_vectors is not None and speaker_ids is not None: - raise ValueError("[!] Cannot use d-vectors and speaker-ids together.") - - if speaker_ids is not None and not hasattr(self, "emb_g"): - raise ValueError("[!] Cannot use speaker-ids without enabling speaker embedding.") - - g = speaker_ids if speaker_ids is not None else d_vectors - return g - - def forward( - self, - x: torch.LongTensor, - x_lengths: torch.LongTensor, - y_lengths: torch.LongTensor, - y: torch.FloatTensor = None, - dr: torch.IntTensor = None, - pitch: torch.FloatTensor = None, - energy: torch.FloatTensor = None, - aux_input: Dict = {"d_vectors": None, "speaker_ids": None}, # pylint: disable=unused-argument - ) -> Dict: - """Model's forward pass. - - Args: - x (torch.LongTensor): Input character sequences. - x_lengths (torch.LongTensor): Input sequence lengths. - y_lengths (torch.LongTensor): Output sequnce lengths. Defaults to None. - y (torch.FloatTensor): Spectrogram frames. Only used when the alignment network is on. Defaults to None. - dr (torch.IntTensor): Character durations over the spectrogram frames. Only used when the alignment network is off. Defaults to None. - pitch (torch.FloatTensor): Pitch values for each spectrogram frame. Only used when the pitch predictor is on. Defaults to None. - energy (torch.FloatTensor): energy values for each spectrogram frame. Only used when the energy predictor is on. Defaults to None. - aux_input (Dict): Auxiliary model inputs for multi-speaker training. Defaults to `{"d_vectors": 0, "speaker_ids": None}`. - - Shapes: - - x: :math:`[B, T_max]` - - x_lengths: :math:`[B]` - - y_lengths: :math:`[B]` - - y: :math:`[B, T_max2]` - - dr: :math:`[B, T_max]` - - g: :math:`[B, C]` - - pitch: :math:`[B, 1, T]` - """ - g = self._set_speaker_input(aux_input) - # compute sequence masks - y_mask = torch.unsqueeze(sequence_mask(y_lengths, None), 1).float() - x_mask = torch.unsqueeze(sequence_mask(x_lengths, x.shape[1]), 1).float() - # encoder pass - o_en, x_mask, g, x_emb = self._forward_encoder(x, x_mask, g) - # duration predictor pass - if self.args.detach_duration_predictor: - o_dr_log = self.duration_predictor(o_en.detach(), x_mask) - else: - o_dr_log = self.duration_predictor(o_en, x_mask) - o_dr = torch.clamp(torch.exp(o_dr_log) - 1, 0, self.max_duration) - # generate attn mask from predicted durations - o_attn = self.generate_attn(o_dr.squeeze(1), x_mask) - # aligner - o_alignment_dur = None - alignment_soft = None - alignment_logprob = None - alignment_mas = None - if self.use_aligner: - o_alignment_dur, alignment_soft, alignment_logprob, alignment_mas = self._forward_aligner( - x_emb, y, x_mask, y_mask - ) - alignment_soft = alignment_soft.transpose(1, 2) - alignment_mas = alignment_mas.transpose(1, 2) - dr = o_alignment_dur - # pitch predictor pass - o_pitch = None - avg_pitch = None - if self.args.use_pitch: - o_pitch_emb, o_pitch, avg_pitch = self._forward_pitch_predictor(o_en, x_mask, pitch, dr) - o_en = o_en + o_pitch_emb - # energy predictor pass - o_energy = None - avg_energy = None - if self.args.use_energy: - o_energy_emb, o_energy, avg_energy = self._forward_energy_predictor(o_en, x_mask, energy, dr) - o_en = o_en + o_energy_emb - # decoder pass - o_de, attn = self._forward_decoder( - o_en, dr, x_mask, y_lengths, g=None - ) # TODO: maybe pass speaker embedding (g) too - outputs = { - "model_outputs": o_de, # [B, T, C] - "durations_log": o_dr_log.squeeze(1), # [B, T] - "durations": o_dr.squeeze(1), # [B, T] - "attn_durations": o_attn, # for visualization [B, T_en, T_de'] - "pitch_avg": o_pitch, - "pitch_avg_gt": avg_pitch, - "energy_avg": o_energy, - "energy_avg_gt": avg_energy, - "alignments": attn, # [B, T_de, T_en] - "alignment_soft": alignment_soft, - "alignment_mas": alignment_mas, - "o_alignment_dur": o_alignment_dur, - "alignment_logprob": alignment_logprob, - "x_mask": x_mask, - "y_mask": y_mask, - } - return outputs - - @torch.no_grad() - def inference(self, x, aux_input={"d_vectors": None, "speaker_ids": None}): # pylint: disable=unused-argument - """Model's inference pass. - - Args: - x (torch.LongTensor): Input character sequence. - aux_input (Dict): Auxiliary model inputs. Defaults to `{"d_vectors": None, "speaker_ids": None}`. - - Shapes: - - x: [B, T_max] - - x_lengths: [B] - - g: [B, C] - """ - g = self._set_speaker_input(aux_input) - x_lengths = torch.tensor(x.shape[1:2]).to(x.device) - x_mask = torch.unsqueeze(sequence_mask(x_lengths, x.shape[1]), 1).to(x.dtype).float() - # encoder pass - o_en, x_mask, g, _ = self._forward_encoder(x, x_mask, g) - # duration predictor pass - o_dr_log = self.duration_predictor(o_en, x_mask) - o_dr = self.format_durations(o_dr_log, x_mask).squeeze(1) - y_lengths = o_dr.sum(1) - # pitch predictor pass - o_pitch = None - if self.args.use_pitch: - o_pitch_emb, o_pitch = self._forward_pitch_predictor(o_en, x_mask) - o_en = o_en + o_pitch_emb - # energy predictor pass - o_energy = None - if self.args.use_energy: - o_energy_emb, o_energy = self._forward_energy_predictor(o_en, x_mask) - o_en = o_en + o_energy_emb - # decoder pass - o_de, attn = self._forward_decoder(o_en, o_dr, x_mask, y_lengths, g=None) - outputs = { - "model_outputs": o_de, - "alignments": attn, - "pitch": o_pitch, - "energy": o_energy, - "durations_log": o_dr_log, - } - return outputs - - def train_step(self, batch: dict, criterion: nn.Module): - text_input = batch["text_input"] - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - mel_lengths = batch["mel_lengths"] - pitch = batch["pitch"] if self.args.use_pitch else None - energy = batch["energy"] if self.args.use_energy else None - d_vectors = batch["d_vectors"] - speaker_ids = batch["speaker_ids"] - durations = batch["durations"] - aux_input = {"d_vectors": d_vectors, "speaker_ids": speaker_ids} - - # forward pass - outputs = self.forward( - text_input, - text_lengths, - mel_lengths, - y=mel_input, - dr=durations, - pitch=pitch, - energy=energy, - aux_input=aux_input, - ) - # use aligner's output as the duration target - if self.use_aligner: - durations = outputs["o_alignment_dur"] - # use float32 in AMP - with autocast(enabled=False): - # compute loss - loss_dict = criterion( - decoder_output=outputs["model_outputs"], - decoder_target=mel_input, - decoder_output_lens=mel_lengths, - dur_output=outputs["durations_log"], - dur_target=durations, - pitch_output=outputs["pitch_avg"] if self.use_pitch else None, - pitch_target=outputs["pitch_avg_gt"] if self.use_pitch else None, - energy_output=outputs["energy_avg"] if self.use_energy else None, - energy_target=outputs["energy_avg_gt"] if self.use_energy else None, - input_lens=text_lengths, - alignment_logprob=outputs["alignment_logprob"] if self.use_aligner else None, - alignment_soft=outputs["alignment_soft"], - alignment_hard=outputs["alignment_mas"], - binary_loss_weight=self.binary_loss_weight, - ) - # compute duration error - durations_pred = outputs["durations"] - duration_error = torch.abs(durations - durations_pred).sum() / text_lengths.sum() - loss_dict["duration_error"] = duration_error - - return outputs, loss_dict - - def _create_logs(self, batch, outputs, ap): - """Create common logger outputs.""" - model_outputs = outputs["model_outputs"] - alignments = outputs["alignments"] - mel_input = batch["mel_input"] - - pred_spec = model_outputs[0].data.cpu().numpy() - gt_spec = mel_input[0].data.cpu().numpy() - align_img = alignments[0].data.cpu().numpy() - - figures = { - "prediction": plot_spectrogram(pred_spec, ap, output_fig=False), - "ground_truth": plot_spectrogram(gt_spec, ap, output_fig=False), - "alignment": plot_alignment(align_img, output_fig=False), - } - - # plot pitch figures - if self.args.use_pitch: - pitch_avg = abs(outputs["pitch_avg_gt"][0, 0].data.cpu().numpy()) - pitch_avg_hat = abs(outputs["pitch_avg"][0, 0].data.cpu().numpy()) - chars = self.tokenizer.decode(batch["text_input"][0].data.cpu().numpy()) - pitch_figures = { - "pitch_ground_truth": plot_avg_pitch(pitch_avg, chars, output_fig=False), - "pitch_avg_predicted": plot_avg_pitch(pitch_avg_hat, chars, output_fig=False), - } - figures.update(pitch_figures) - - # plot energy figures - if self.args.use_energy: - energy_avg = abs(outputs["energy_avg_gt"][0, 0].data.cpu().numpy()) - energy_avg_hat = abs(outputs["energy_avg"][0, 0].data.cpu().numpy()) - chars = self.tokenizer.decode(batch["text_input"][0].data.cpu().numpy()) - energy_figures = { - "energy_ground_truth": plot_avg_energy(energy_avg, chars, output_fig=False), - "energy_avg_predicted": plot_avg_energy(energy_avg_hat, chars, output_fig=False), - } - figures.update(energy_figures) - - # plot the attention mask computed from the predicted durations - if "attn_durations" in outputs: - alignments_hat = outputs["attn_durations"][0].data.cpu().numpy() - figures["alignment_hat"] = plot_alignment(alignments_hat.T, output_fig=False) - - # Sample audio - train_audio = ap.inv_melspectrogram(pred_spec.T) - return figures, {"audio": train_audio} - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ) -> None: # pylint: disable=no-self-use - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - def eval_step(self, batch: dict, criterion: nn.Module): - return self.train_step(batch, criterion) - - def eval_log(self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int) -> None: - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - - def get_criterion(self): - from TTS.tts.layers.losses import ForwardTTSLoss # pylint: disable=import-outside-toplevel - - return ForwardTTSLoss(self.config) - - def on_train_step_start(self, trainer): - """Schedule binary loss weight.""" - self.binary_loss_weight = min(trainer.epochs_done / self.config.binary_loss_warmup_epochs, 1.0) * 1.0 - - @staticmethod - def init_from_config(config: "ForwardTTSConfig", samples: Union[List[List], List[Dict]] = None): - """Initiate model from config - - Args: - config (ForwardTTSConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - """ - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config, samples) - return ForwardTTS(new_config, ap, tokenizer, speaker_manager) diff --git a/TTS/tts/models/glow_tts.py b/TTS/tts/models/glow_tts.py deleted file mode 100644 index bfd1a2b618bd9bfdc7d12dd4eb16a6febcaf8cde..0000000000000000000000000000000000000000 --- a/TTS/tts/models/glow_tts.py +++ /dev/null @@ -1,557 +0,0 @@ -import math -from typing import Dict, List, Tuple, Union - -import torch -from coqpit import Coqpit -from torch import nn -from torch.cuda.amp.autocast_mode import autocast -from torch.nn import functional as F - -from TTS.tts.configs.glow_tts_config import GlowTTSConfig -from TTS.tts.layers.glow_tts.decoder import Decoder -from TTS.tts.layers.glow_tts.encoder import Encoder -from TTS.tts.models.base_tts import BaseTTS -from TTS.tts.utils.helpers import generate_path, maximum_path, sequence_mask -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.synthesis import synthesis -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram -from TTS.utils.io import load_fsspec - - -class GlowTTS(BaseTTS): - """GlowTTS model. - - Paper:: - https://arxiv.org/abs/2005.11129 - - Paper abstract:: - Recently, text-to-speech (TTS) models such as FastSpeech and ParaNet have been proposed to generate - mel-spectrograms from text in parallel. Despite the advantage, the parallel TTS models cannot be trained - without guidance from autoregressive TTS models as their external aligners. In this work, we propose Glow-TTS, - a flow-based generative model for parallel TTS that does not require any external aligner. By combining the - properties of flows and dynamic programming, the proposed model searches for the most probable monotonic - alignment between text and the latent representation of speech on its own. We demonstrate that enforcing hard - monotonic alignments enables robust TTS, which generalizes to long utterances, and employing generative flows - enables fast, diverse, and controllable speech synthesis. Glow-TTS obtains an order-of-magnitude speed-up over - the autoregressive model, Tacotron 2, at synthesis with comparable speech quality. We further show that our - model can be easily extended to a multi-speaker setting. - - Check :class:`TTS.tts.configs.glow_tts_config.GlowTTSConfig` for class arguments. - - Examples: - Init only model layers. - - >>> from TTS.tts.configs.glow_tts_config import GlowTTSConfig - >>> from TTS.tts.models.glow_tts import GlowTTS - >>> config = GlowTTSConfig(num_chars=2) - >>> model = GlowTTS(config) - - Fully init a model ready for action. All the class attributes and class members - (e.g Tokenizer, AudioProcessor, etc.). are initialized internally based on config values. - - >>> from TTS.tts.configs.glow_tts_config import GlowTTSConfig - >>> from TTS.tts.models.glow_tts import GlowTTS - >>> config = GlowTTSConfig() - >>> model = GlowTTS.init_from_config(config, verbose=False) - """ - - def __init__( - self, - config: GlowTTSConfig, - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - - # pass all config fields to `self` - # for fewer code change - self.config = config - for key in config: - setattr(self, key, config[key]) - - self.decoder_output_dim = config.out_channels - - # init multi-speaker layers if necessary - self.init_multispeaker(config) - - self.run_data_dep_init = config.data_dep_init_steps > 0 - self.encoder = Encoder( - self.num_chars, - out_channels=self.out_channels, - hidden_channels=self.hidden_channels_enc, - hidden_channels_dp=self.hidden_channels_dp, - encoder_type=self.encoder_type, - encoder_params=self.encoder_params, - mean_only=self.mean_only, - use_prenet=self.use_encoder_prenet, - dropout_p_dp=self.dropout_p_dp, - c_in_channels=self.c_in_channels, - ) - - self.decoder = Decoder( - self.out_channels, - self.hidden_channels_dec, - self.kernel_size_dec, - self.dilation_rate, - self.num_flow_blocks_dec, - self.num_block_layers, - dropout_p=self.dropout_p_dec, - num_splits=self.num_splits, - num_squeeze=self.num_squeeze, - sigmoid_scale=self.sigmoid_scale, - c_in_channels=self.c_in_channels, - ) - - def init_multispeaker(self, config: Coqpit): - """Init speaker embedding layer if `use_speaker_embedding` is True and set the expected speaker embedding - vector dimension to the encoder layer channel size. If model uses d-vectors, then it only sets - speaker embedding vector dimension to the d-vector dimension from the config. - - Args: - config (Coqpit): Model configuration. - """ - self.embedded_speaker_dim = 0 - # set number of speakers - if num_speakers is set in config, use it, otherwise use speaker_manager - if self.speaker_manager is not None: - self.num_speakers = self.speaker_manager.num_speakers - # set ultimate speaker embedding size - if config.use_d_vector_file: - self.embedded_speaker_dim = ( - config.d_vector_dim if "d_vector_dim" in config and config.d_vector_dim is not None else 512 - ) - if self.speaker_manager is not None: - assert ( - config.d_vector_dim == self.speaker_manager.embedding_dim - ), " [!] d-vector dimension mismatch b/w config and speaker manager." - # init speaker embedding layer - if config.use_speaker_embedding and not config.use_d_vector_file: - print(" > Init speaker_embedding layer.") - self.embedded_speaker_dim = self.hidden_channels_enc - self.emb_g = nn.Embedding(self.num_speakers, self.hidden_channels_enc) - nn.init.uniform_(self.emb_g.weight, -0.1, 0.1) - # set conditioning dimensions - self.c_in_channels = self.embedded_speaker_dim - - @staticmethod - def compute_outputs(attn, o_mean, o_log_scale, x_mask): - """Compute and format the mode outputs with the given alignment map""" - y_mean = torch.matmul(attn.squeeze(1).transpose(1, 2), o_mean.transpose(1, 2)).transpose( - 1, 2 - ) # [b, t', t], [b, t, d] -> [b, d, t'] - y_log_scale = torch.matmul(attn.squeeze(1).transpose(1, 2), o_log_scale.transpose(1, 2)).transpose( - 1, 2 - ) # [b, t', t], [b, t, d] -> [b, d, t'] - # compute total duration with adjustment - o_attn_dur = torch.log(1 + torch.sum(attn, -1)) * x_mask - return y_mean, y_log_scale, o_attn_dur - - def unlock_act_norm_layers(self): - """Unlock activation normalization layers for data depended initalization.""" - for f in self.decoder.flows: - if getattr(f, "set_ddi", False): - f.set_ddi(True) - - def lock_act_norm_layers(self): - """Lock activation normalization layers.""" - for f in self.decoder.flows: - if getattr(f, "set_ddi", False): - f.set_ddi(False) - - def _set_speaker_input(self, aux_input: Dict): - if aux_input is None: - d_vectors = None - speaker_ids = None - else: - d_vectors = aux_input.get("d_vectors", None) - speaker_ids = aux_input.get("speaker_ids", None) - - if d_vectors is not None and speaker_ids is not None: - raise ValueError("[!] Cannot use d-vectors and speaker-ids together.") - - if speaker_ids is not None and not hasattr(self, "emb_g"): - raise ValueError("[!] Cannot use speaker-ids without enabling speaker embedding.") - - g = speaker_ids if speaker_ids is not None else d_vectors - return g - - def _speaker_embedding(self, aux_input: Dict) -> Union[torch.tensor, None]: - g = self._set_speaker_input(aux_input) - # speaker embedding - if g is not None: - if hasattr(self, "emb_g"): - # use speaker embedding layer - if not g.size(): # if is a scalar - g = g.unsqueeze(0) # unsqueeze - g = F.normalize(self.emb_g(g)).unsqueeze(-1) # [b, h, 1] - else: - # use d-vector - g = F.normalize(g).unsqueeze(-1) # [b, h, 1] - return g - - def forward( - self, x, x_lengths, y, y_lengths=None, aux_input={"d_vectors": None, "speaker_ids": None} - ): # pylint: disable=dangerous-default-value - """ - Args: - x (torch.Tensor): - Input text sequence ids. :math:`[B, T_en]` - - x_lengths (torch.Tensor): - Lengths of input text sequences. :math:`[B]` - - y (torch.Tensor): - Target mel-spectrogram frames. :math:`[B, T_de, C_mel]` - - y_lengths (torch.Tensor): - Lengths of target mel-spectrogram frames. :math:`[B]` - - aux_input (Dict): - Auxiliary inputs. `d_vectors` is speaker embedding vectors for a multi-speaker model. - :math:`[B, D_vec]`. `speaker_ids` is speaker ids for a multi-speaker model usind speaker-embedding - layer. :math:`B` - - Returns: - Dict: - - z: :math: `[B, T_de, C]` - - logdet: :math:`B` - - y_mean: :math:`[B, T_de, C]` - - y_log_scale: :math:`[B, T_de, C]` - - alignments: :math:`[B, T_en, T_de]` - - durations_log: :math:`[B, T_en, 1]` - - total_durations_log: :math:`[B, T_en, 1]` - """ - # [B, T, C] -> [B, C, T] - y = y.transpose(1, 2) - y_max_length = y.size(2) - # norm speaker embeddings - g = self._speaker_embedding(aux_input) - # embedding pass - o_mean, o_log_scale, o_dur_log, x_mask = self.encoder(x, x_lengths, g=g) - # drop redisual frames wrt num_squeeze and set y_lengths. - y, y_lengths, y_max_length, attn = self.preprocess(y, y_lengths, y_max_length, None) - # create masks - y_mask = torch.unsqueeze(sequence_mask(y_lengths, y_max_length), 1).to(x_mask.dtype) - # [B, 1, T_en, T_de] - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - # decoder pass - z, logdet = self.decoder(y, y_mask, g=g, reverse=False) - # find the alignment path - with torch.no_grad(): - o_scale = torch.exp(-2 * o_log_scale) - logp1 = torch.sum(-0.5 * math.log(2 * math.pi) - o_log_scale, [1]).unsqueeze(-1) # [b, t, 1] - logp2 = torch.matmul(o_scale.transpose(1, 2), -0.5 * (z**2)) # [b, t, d] x [b, d, t'] = [b, t, t'] - logp3 = torch.matmul((o_mean * o_scale).transpose(1, 2), z) # [b, t, d] x [b, d, t'] = [b, t, t'] - logp4 = torch.sum(-0.5 * (o_mean**2) * o_scale, [1]).unsqueeze(-1) # [b, t, 1] - logp = logp1 + logp2 + logp3 + logp4 # [b, t, t'] - attn = maximum_path(logp, attn_mask.squeeze(1)).unsqueeze(1).detach() - y_mean, y_log_scale, o_attn_dur = self.compute_outputs(attn, o_mean, o_log_scale, x_mask) - attn = attn.squeeze(1).permute(0, 2, 1) - outputs = { - "z": z.transpose(1, 2), - "logdet": logdet, - "y_mean": y_mean.transpose(1, 2), - "y_log_scale": y_log_scale.transpose(1, 2), - "alignments": attn, - "durations_log": o_dur_log.transpose(1, 2), - "total_durations_log": o_attn_dur.transpose(1, 2), - } - return outputs - - @torch.no_grad() - def inference_with_MAS( - self, x, x_lengths, y=None, y_lengths=None, aux_input={"d_vectors": None, "speaker_ids": None} - ): # pylint: disable=dangerous-default-value - """ - It's similar to the teacher forcing in Tacotron. - It was proposed in: https://arxiv.org/abs/2104.05557 - - Shapes: - - x: :math:`[B, T]` - - x_lenghts: :math:`B` - - y: :math:`[B, T, C]` - - y_lengths: :math:`B` - - g: :math:`[B, C] or B` - """ - y = y.transpose(1, 2) - y_max_length = y.size(2) - # norm speaker embeddings - g = self._speaker_embedding(aux_input) - # embedding pass - o_mean, o_log_scale, o_dur_log, x_mask = self.encoder(x, x_lengths, g=g) - # drop redisual frames wrt num_squeeze and set y_lengths. - y, y_lengths, y_max_length, attn = self.preprocess(y, y_lengths, y_max_length, None) - # create masks - y_mask = torch.unsqueeze(sequence_mask(y_lengths, y_max_length), 1).to(x_mask.dtype) - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - # decoder pass - z, logdet = self.decoder(y, y_mask, g=g, reverse=False) - # find the alignment path between z and encoder output - o_scale = torch.exp(-2 * o_log_scale) - logp1 = torch.sum(-0.5 * math.log(2 * math.pi) - o_log_scale, [1]).unsqueeze(-1) # [b, t, 1] - logp2 = torch.matmul(o_scale.transpose(1, 2), -0.5 * (z**2)) # [b, t, d] x [b, d, t'] = [b, t, t'] - logp3 = torch.matmul((o_mean * o_scale).transpose(1, 2), z) # [b, t, d] x [b, d, t'] = [b, t, t'] - logp4 = torch.sum(-0.5 * (o_mean**2) * o_scale, [1]).unsqueeze(-1) # [b, t, 1] - logp = logp1 + logp2 + logp3 + logp4 # [b, t, t'] - attn = maximum_path(logp, attn_mask.squeeze(1)).unsqueeze(1).detach() - - y_mean, y_log_scale, o_attn_dur = self.compute_outputs(attn, o_mean, o_log_scale, x_mask) - attn = attn.squeeze(1).permute(0, 2, 1) - - # get predited aligned distribution - z = y_mean * y_mask - - # reverse the decoder and predict using the aligned distribution - y, logdet = self.decoder(z, y_mask, g=g, reverse=True) - outputs = { - "model_outputs": z.transpose(1, 2), - "logdet": logdet, - "y_mean": y_mean.transpose(1, 2), - "y_log_scale": y_log_scale.transpose(1, 2), - "alignments": attn, - "durations_log": o_dur_log.transpose(1, 2), - "total_durations_log": o_attn_dur.transpose(1, 2), - } - return outputs - - @torch.no_grad() - def decoder_inference( - self, y, y_lengths=None, aux_input={"d_vectors": None, "speaker_ids": None} - ): # pylint: disable=dangerous-default-value - """ - Shapes: - - y: :math:`[B, T, C]` - - y_lengths: :math:`B` - - g: :math:`[B, C] or B` - """ - y = y.transpose(1, 2) - y_max_length = y.size(2) - g = self._speaker_embedding(aux_input) - y_mask = torch.unsqueeze(sequence_mask(y_lengths, y_max_length), 1).to(y.dtype) - # decoder pass - z, logdet = self.decoder(y, y_mask, g=g, reverse=False) - # reverse decoder and predict - y, logdet = self.decoder(z, y_mask, g=g, reverse=True) - outputs = {} - outputs["model_outputs"] = y.transpose(1, 2) - outputs["logdet"] = logdet - return outputs - - @torch.no_grad() - def inference( - self, x, aux_input={"x_lengths": None, "d_vectors": None, "speaker_ids": None} - ): # pylint: disable=dangerous-default-value - x_lengths = aux_input["x_lengths"] - g = self._speaker_embedding(aux_input) - # embedding pass - o_mean, o_log_scale, o_dur_log, x_mask = self.encoder(x, x_lengths, g=g) - # compute output durations - w = (torch.exp(o_dur_log) - 1) * x_mask * self.length_scale - w_ceil = torch.clamp_min(torch.ceil(w), 1) - y_lengths = torch.clamp_min(torch.sum(w_ceil, [1, 2]), 1).long() - y_max_length = None - # compute masks - y_mask = torch.unsqueeze(sequence_mask(y_lengths, y_max_length), 1).to(x_mask.dtype) - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - # compute attention mask - attn = generate_path(w_ceil.squeeze(1), attn_mask.squeeze(1)).unsqueeze(1) - y_mean, y_log_scale, o_attn_dur = self.compute_outputs(attn, o_mean, o_log_scale, x_mask) - - z = (y_mean + torch.exp(y_log_scale) * torch.randn_like(y_mean) * self.inference_noise_scale) * y_mask - # decoder pass - y, logdet = self.decoder(z, y_mask, g=g, reverse=True) - attn = attn.squeeze(1).permute(0, 2, 1) - outputs = { - "model_outputs": y.transpose(1, 2), - "logdet": logdet, - "y_mean": y_mean.transpose(1, 2), - "y_log_scale": y_log_scale.transpose(1, 2), - "alignments": attn, - "durations_log": o_dur_log.transpose(1, 2), - "total_durations_log": o_attn_dur.transpose(1, 2), - } - return outputs - - def train_step(self, batch: dict, criterion: nn.Module): - """A single training step. Forward pass and loss computation. Run data depended initialization for the - first `config.data_dep_init_steps` steps. - - Args: - batch (dict): [description] - criterion (nn.Module): [description] - """ - text_input = batch["text_input"] - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - mel_lengths = batch["mel_lengths"] - d_vectors = batch["d_vectors"] - speaker_ids = batch["speaker_ids"] - - if self.run_data_dep_init and self.training: - # compute data-dependent initialization of activation norm layers - self.unlock_act_norm_layers() - with torch.no_grad(): - _ = self.forward( - text_input, - text_lengths, - mel_input, - mel_lengths, - aux_input={"d_vectors": d_vectors, "speaker_ids": speaker_ids}, - ) - outputs = None - loss_dict = None - self.lock_act_norm_layers() - else: - # normal training step - outputs = self.forward( - text_input, - text_lengths, - mel_input, - mel_lengths, - aux_input={"d_vectors": d_vectors, "speaker_ids": speaker_ids}, - ) - - with autocast(enabled=False): # avoid mixed_precision in criterion - loss_dict = criterion( - outputs["z"].float(), - outputs["y_mean"].float(), - outputs["y_log_scale"].float(), - outputs["logdet"].float(), - mel_lengths, - outputs["durations_log"].float(), - outputs["total_durations_log"].float(), - text_lengths, - ) - return outputs, loss_dict - - def _create_logs(self, batch, outputs, ap): - alignments = outputs["alignments"] - text_input = batch["text_input"][:1] if batch["text_input"] is not None else None - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - d_vectors = batch["d_vectors"][:1] if batch["d_vectors"] is not None else None - speaker_ids = batch["speaker_ids"][:1] if batch["speaker_ids"] is not None else None - - # model runs reverse flow to predict spectrograms - pred_outputs = self.inference( - text_input, - aux_input={"x_lengths": text_lengths[:1], "d_vectors": d_vectors, "speaker_ids": speaker_ids}, - ) - model_outputs = pred_outputs["model_outputs"] - - pred_spec = model_outputs[0].data.cpu().numpy() - gt_spec = mel_input[0].data.cpu().numpy() - align_img = alignments[0].data.cpu().numpy() - - figures = { - "prediction": plot_spectrogram(pred_spec, ap, output_fig=False), - "ground_truth": plot_spectrogram(gt_spec, ap, output_fig=False), - "alignment": plot_alignment(align_img, output_fig=False), - } - - # Sample audio - train_audio = ap.inv_melspectrogram(pred_spec.T) - return figures, {"audio": train_audio} - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ) -> None: # pylint: disable=no-self-use - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - @torch.no_grad() - def eval_step(self, batch: dict, criterion: nn.Module): - return self.train_step(batch, criterion) - - def eval_log(self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int) -> None: - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - @torch.no_grad() - def test_run(self, assets: Dict) -> Tuple[Dict, Dict]: - """Generic test run for `tts` models used by `Trainer`. - - You can override this for a different behaviour. - - Returns: - Tuple[Dict, Dict]: Test figures and audios to be projected to Tensorboard. - """ - print(" | > Synthesizing test sentences.") - test_audios = {} - test_figures = {} - test_sentences = self.config.test_sentences - aux_inputs = self._get_test_aux_input() - if len(test_sentences) == 0: - print(" | [!] No test sentences provided.") - else: - for idx, sen in enumerate(test_sentences): - outputs = synthesis( - self, - sen, - self.config, - "cuda" in str(next(self.parameters()).device), - speaker_id=aux_inputs["speaker_id"], - d_vector=aux_inputs["d_vector"], - style_wav=aux_inputs["style_wav"], - use_griffin_lim=True, - do_trim_silence=False, - ) - - test_audios["{}-audio".format(idx)] = outputs["wav"] - test_figures["{}-prediction".format(idx)] = plot_spectrogram( - outputs["outputs"]["model_outputs"], self.ap, output_fig=False - ) - test_figures["{}-alignment".format(idx)] = plot_alignment(outputs["alignments"], output_fig=False) - return test_figures, test_audios - - def preprocess(self, y, y_lengths, y_max_length, attn=None): - if y_max_length is not None: - y_max_length = (y_max_length // self.num_squeeze) * self.num_squeeze - y = y[:, :, :y_max_length] - if attn is not None: - attn = attn[:, :, :, :y_max_length] - y_lengths = torch.div(y_lengths, self.num_squeeze, rounding_mode="floor") * self.num_squeeze - return y, y_lengths, y_max_length, attn - - def store_inverse(self): - self.decoder.store_inverse() - - def load_checkpoint( - self, config, checkpoint_path, eval=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu")) - self.load_state_dict(state["model"]) - if eval: - self.eval() - self.store_inverse() - assert not self.training - - @staticmethod - def get_criterion(): - from TTS.tts.layers.losses import GlowTTSLoss # pylint: disable=import-outside-toplevel - - return GlowTTSLoss() - - def on_train_step_start(self, trainer): - """Decide on every training step wheter enable/disable data depended initialization.""" - self.run_data_dep_init = trainer.total_steps_done < self.data_dep_init_steps - - @staticmethod - def init_from_config(config: "GlowTTSConfig", samples: Union[List[List], List[Dict]] = None, verbose=True): - """Initiate model from config - - Args: - config (VitsConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - verbose (bool): If True, print init messages. Defaults to True. - """ - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config, verbose) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config, samples) - return GlowTTS(new_config, ap, tokenizer, speaker_manager) diff --git a/TTS/tts/models/neuralhmm_tts.py b/TTS/tts/models/neuralhmm_tts.py deleted file mode 100644 index e2414108721571c9a1cf143fdca2fa74174a9684..0000000000000000000000000000000000000000 --- a/TTS/tts/models/neuralhmm_tts.py +++ /dev/null @@ -1,385 +0,0 @@ -import os -from typing import Dict, List, Union - -import torch -from coqpit import Coqpit -from torch import nn -from trainer.logging.tensorboard_logger import TensorboardLogger - -from TTS.tts.layers.overflow.common_layers import Encoder, OverflowUtils -from TTS.tts.layers.overflow.neural_hmm import NeuralHMM -from TTS.tts.layers.overflow.plotting_utils import ( - get_spec_from_most_probable_state, - plot_transition_probabilities_to_numpy, -) -from TTS.tts.models.base_tts import BaseTTS -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram -from TTS.utils.generic_utils import format_aux_input -from TTS.utils.io import load_fsspec - - -class NeuralhmmTTS(BaseTTS): - """Neural HMM TTS model. - - Paper:: - https://arxiv.org/abs/2108.13320 - - Paper abstract:: - Neural sequence-to-sequence TTS has achieved significantly better output quality - than statistical speech synthesis using HMMs.However, neural TTS is generally not probabilistic - and uses non-monotonic attention. Attention failures increase training time and can make - synthesis babble incoherently. This paper describes how the old and new paradigms can be - combined to obtain the advantages of both worlds, by replacing attention in neural TTS with - an autoregressive left-right no-skip hidden Markov model defined by a neural network. - Based on this proposal, we modify Tacotron 2 to obtain an HMM-based neural TTS model with - monotonic alignment, trained to maximise the full sequence likelihood without approximation. - We also describe how to combine ideas from classical and contemporary TTS for best results. - The resulting example system is smaller and simpler than Tacotron 2, and learns to speak with - fewer iterations and less data, whilst achieving comparable naturalness prior to the post-net. - Our approach also allows easy control over speaking rate. Audio examples and code - are available at https://shivammehta25.github.io/Neural-HMM/ . - - Note: - - This is a parameter efficient version of OverFlow (15.3M vs 28.6M). Since it has half the - number of parameters as OverFlow the synthesis output quality is suboptimal (but comparable to Tacotron2 - without Postnet), but it learns to speak with even lesser amount of data and is still significantly faster - than other attention-based methods. - - - Neural HMMs uses flat start initialization i.e it computes the means and std and transition probabilities - of the dataset and uses them to initialize the model. This benefits the model and helps with faster learning - If you change the dataset or want to regenerate the parameters change the `force_generate_statistics` and - `mel_statistics_parameter_path` accordingly. - - - To enable multi-GPU training, set the `use_grad_checkpointing=False` in config. - This will significantly increase the memory usage. This is because to compute - the actual data likelihood (not an approximation using MAS/Viterbi) we must use - all the states at the previous time step during the forward pass to decide the - probability distribution at the current step i.e the difference between the forward - algorithm and viterbi approximation. - - Check :class:`TTS.tts.configs.neuralhmm_tts_config.NeuralhmmTTSConfig` for class arguments. - """ - - def __init__( - self, - config: "NeuralhmmTTSConfig", - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - - # pass all config fields to `self` - # for fewer code change - self.config = config - for key in config: - setattr(self, key, config[key]) - - self.encoder = Encoder(config.num_chars, config.state_per_phone, config.encoder_in_out_features) - self.neural_hmm = NeuralHMM( - frame_channels=self.out_channels, - ar_order=self.ar_order, - deterministic_transition=self.deterministic_transition, - encoder_dim=self.encoder_in_out_features, - prenet_type=self.prenet_type, - prenet_dim=self.prenet_dim, - prenet_n_layers=self.prenet_n_layers, - prenet_dropout=self.prenet_dropout, - prenet_dropout_at_inference=self.prenet_dropout_at_inference, - memory_rnn_dim=self.memory_rnn_dim, - outputnet_size=self.outputnet_size, - flat_start_params=self.flat_start_params, - std_floor=self.std_floor, - use_grad_checkpointing=self.use_grad_checkpointing, - ) - - self.register_buffer("mean", torch.tensor(0)) - self.register_buffer("std", torch.tensor(1)) - - def update_mean_std(self, statistics_dict: Dict): - self.mean.data = torch.tensor(statistics_dict["mean"]) - self.std.data = torch.tensor(statistics_dict["std"]) - - def preprocess_batch(self, text, text_len, mels, mel_len): - if self.mean.item() == 0 or self.std.item() == 1: - statistics_dict = torch.load(self.mel_statistics_parameter_path) - self.update_mean_std(statistics_dict) - - mels = self.normalize(mels) - return text, text_len, mels, mel_len - - def normalize(self, x): - return x.sub(self.mean).div(self.std) - - def inverse_normalize(self, x): - return x.mul(self.std).add(self.mean) - - def forward(self, text, text_len, mels, mel_len): - """ - Forward pass for training and computing the log likelihood of a given batch. - - Shapes: - Shapes: - text: :math:`[B, T_in]` - text_len: :math:`[B]` - mels: :math:`[B, T_out, C]` - mel_len: :math:`[B]` - """ - text, text_len, mels, mel_len = self.preprocess_batch(text, text_len, mels, mel_len) - encoder_outputs, encoder_output_len = self.encoder(text, text_len) - - log_probs, fwd_alignments, transition_vectors, means = self.neural_hmm( - encoder_outputs, encoder_output_len, mels.transpose(1, 2), mel_len - ) - - outputs = { - "log_probs": log_probs, - "alignments": fwd_alignments, - "transition_vectors": transition_vectors, - "means": means, - } - - return outputs - - @staticmethod - def _training_stats(batch): - stats = {} - stats["avg_text_length"] = batch["text_lengths"].float().mean() - stats["avg_spec_length"] = batch["mel_lengths"].float().mean() - stats["avg_text_batch_occupancy"] = (batch["text_lengths"].float() / batch["text_lengths"].float().max()).mean() - stats["avg_spec_batch_occupancy"] = (batch["mel_lengths"].float() / batch["mel_lengths"].float().max()).mean() - return stats - - def train_step(self, batch: dict, criterion: nn.Module): - text_input = batch["text_input"] - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - mel_lengths = batch["mel_lengths"] - - outputs = self.forward( - text=text_input, - text_len=text_lengths, - mels=mel_input, - mel_len=mel_lengths, - ) - loss_dict = criterion(outputs["log_probs"] / (mel_lengths.sum() + text_lengths.sum())) - - # for printing useful statistics on terminal - loss_dict.update(self._training_stats(batch)) - return outputs, loss_dict - - def eval_step(self, batch: Dict, criterion: nn.Module): - return self.train_step(batch, criterion) - - def _format_aux_input(self, aux_input: Dict, default_input_dict): - """Set missing fields to their default value. - - Args: - aux_inputs (Dict): Dictionary containing the auxiliary inputs. - """ - default_input_dict = default_input_dict.copy() - default_input_dict.update( - { - "sampling_temp": self.sampling_temp, - "max_sampling_time": self.max_sampling_time, - "duration_threshold": self.duration_threshold, - } - ) - if aux_input: - return format_aux_input(default_input_dict, aux_input) - return default_input_dict - - @torch.no_grad() - def inference( - self, - text: torch.Tensor, - aux_input={"x_lengths": None, "sampling_temp": None, "max_sampling_time": None, "duration_threshold": None}, - ): # pylint: disable=dangerous-default-value - """Sampling from the model - - Args: - text (torch.Tensor): :math:`[B, T_in]` - aux_inputs (_type_, optional): _description_. Defaults to None. - - Returns: - outputs: Dictionary containing the following - - mel (torch.Tensor): :math:`[B, T_out, C]` - - hmm_outputs_len (torch.Tensor): :math:`[B]` - - state_travelled (List[List[int]]): List of lists containing the state travelled for each sample in the batch. - - input_parameters (list[torch.FloatTensor]): Input parameters to the neural HMM. - - output_parameters (list[torch.FloatTensor]): Output parameters to the neural HMM. - """ - default_input_dict = { - "x_lengths": torch.sum(text != 0, dim=1), - } - aux_input = self._format_aux_input(aux_input, default_input_dict) - encoder_outputs, encoder_output_len = self.encoder.inference(text, aux_input["x_lengths"]) - outputs = self.neural_hmm.inference( - encoder_outputs, - encoder_output_len, - sampling_temp=aux_input["sampling_temp"], - max_sampling_time=aux_input["max_sampling_time"], - duration_threshold=aux_input["duration_threshold"], - ) - mels, mel_outputs_len = outputs["hmm_outputs"], outputs["hmm_outputs_len"] - - mels = self.inverse_normalize(mels) - outputs.update({"model_outputs": mels, "model_outputs_len": mel_outputs_len}) - outputs["alignments"] = OverflowUtils.double_pad(outputs["alignments"]) - return outputs - - @staticmethod - def get_criterion(): - return NLLLoss() - - @staticmethod - def init_from_config(config: "NeuralhmmTTSConfig", samples: Union[List[List], List[Dict]] = None, verbose=True): - """Initiate model from config - - Args: - config (VitsConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - verbose (bool): If True, print init messages. Defaults to True. - """ - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config, verbose) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config, samples) - return NeuralhmmTTS(new_config, ap, tokenizer, speaker_manager) - - def load_checkpoint( - self, config: Coqpit, checkpoint_path: str, eval: bool = False, strict: bool = True, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu")) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - - def on_init_start(self, trainer): - """If the current dataset does not have normalisation statistics and initialisation transition_probability it computes them otherwise loads.""" - if not os.path.isfile(trainer.config.mel_statistics_parameter_path) or trainer.config.force_generate_statistics: - dataloader = trainer.get_train_dataloader( - training_assets=None, samples=trainer.train_samples, verbose=False - ) - print( - f" | > Data parameters not found for: {trainer.config.mel_statistics_parameter_path}. Computing mel normalization parameters..." - ) - data_mean, data_std, init_transition_prob = OverflowUtils.get_data_parameters_for_flat_start( - dataloader, trainer.config.out_channels, trainer.config.state_per_phone - ) - print( - f" | > Saving data parameters to: {trainer.config.mel_statistics_parameter_path}: value: {data_mean, data_std, init_transition_prob}" - ) - statistics = { - "mean": data_mean.item(), - "std": data_std.item(), - "init_transition_prob": init_transition_prob.item(), - } - torch.save(statistics, trainer.config.mel_statistics_parameter_path) - - else: - print( - f" | > Data parameters found for: {trainer.config.mel_statistics_parameter_path}. Loading mel normalization parameters..." - ) - statistics = torch.load(trainer.config.mel_statistics_parameter_path) - data_mean, data_std, init_transition_prob = ( - statistics["mean"], - statistics["std"], - statistics["init_transition_prob"], - ) - print(f" | > Data parameters loaded with value: {data_mean, data_std, init_transition_prob}") - - trainer.config.flat_start_params["transition_p"] = ( - init_transition_prob.item() if torch.is_tensor(init_transition_prob) else init_transition_prob - ) - OverflowUtils.update_flat_start_transition(trainer.model, init_transition_prob) - trainer.model.update_mean_std(statistics) - - @torch.inference_mode() - def _create_logs(self, batch, outputs, ap): # pylint: disable=no-self-use, unused-argument - alignments, transition_vectors = outputs["alignments"], outputs["transition_vectors"] - means = torch.stack(outputs["means"], dim=1) - - figures = { - "alignment": plot_alignment(alignments[0].exp(), title="Forward alignment", fig_size=(20, 20)), - "log_alignment": plot_alignment( - alignments[0].exp(), title="Forward log alignment", plot_log=True, fig_size=(20, 20) - ), - "transition_vectors": plot_alignment(transition_vectors[0], title="Transition vectors", fig_size=(20, 20)), - "mel_from_most_probable_state": plot_spectrogram( - get_spec_from_most_probable_state(alignments[0], means[0]), fig_size=(12, 3) - ), - "mel_target": plot_spectrogram(batch["mel_input"][0], fig_size=(12, 3)), - } - - # sample one item from the batch -1 will give the smalles item - print(" | > Synthesising audio from the model...") - inference_output = self.inference( - batch["text_input"][-1].unsqueeze(0), aux_input={"x_lengths": batch["text_lengths"][-1].unsqueeze(0)} - ) - figures["synthesised"] = plot_spectrogram(inference_output["model_outputs"][0], fig_size=(12, 3)) - - states = [p[1] for p in inference_output["input_parameters"][0]] - transition_probability_synthesising = [p[2].cpu().numpy() for p in inference_output["output_parameters"][0]] - - for i in range((len(transition_probability_synthesising) // 200) + 1): - start = i * 200 - end = (i + 1) * 200 - figures[f"synthesised_transition_probabilities/{i}"] = plot_transition_probabilities_to_numpy( - states[start:end], transition_probability_synthesising[start:end] - ) - - audio = ap.inv_melspectrogram(inference_output["model_outputs"][0].T.cpu().numpy()) - return figures, {"audios": audio} - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ): # pylint: disable=unused-argument - """Log training progress.""" - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - def eval_log( - self, batch: Dict, outputs: Dict, logger: "Logger", assets: Dict, steps: int - ): # pylint: disable=unused-argument - """Compute and log evaluation metrics.""" - # Plot model parameters histograms - if isinstance(logger, TensorboardLogger): - # I don't know if any other loggers supports this - for tag, value in self.named_parameters(): - tag = tag.replace(".", "/") - logger.writer.add_histogram(tag, value.data.cpu().numpy(), steps) - - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - def test_log( - self, outputs: dict, logger: "Logger", assets: dict, steps: int # pylint: disable=unused-argument - ) -> None: - logger.test_audios(steps, outputs[1], self.ap.sample_rate) - logger.test_figures(steps, outputs[0]) - - -class NLLLoss(nn.Module): - """Negative log likelihood loss.""" - - def forward(self, log_prob: torch.Tensor) -> dict: # pylint: disable=no-self-use - """Compute the loss. - - Args: - logits (Tensor): [B, T, D] - - Returns: - Tensor: [1] - - """ - return_dict = {} - return_dict["loss"] = -log_prob.mean() - return return_dict diff --git a/TTS/tts/models/overflow.py b/TTS/tts/models/overflow.py deleted file mode 100644 index 92b3c767de4cb5180df4a58d6cfdc1ed194caad7..0000000000000000000000000000000000000000 --- a/TTS/tts/models/overflow.py +++ /dev/null @@ -1,401 +0,0 @@ -import os -from typing import Dict, List, Union - -import torch -from coqpit import Coqpit -from torch import nn -from trainer.logging.tensorboard_logger import TensorboardLogger - -from TTS.tts.layers.overflow.common_layers import Encoder, OverflowUtils -from TTS.tts.layers.overflow.decoder import Decoder -from TTS.tts.layers.overflow.neural_hmm import NeuralHMM -from TTS.tts.layers.overflow.plotting_utils import ( - get_spec_from_most_probable_state, - plot_transition_probabilities_to_numpy, -) -from TTS.tts.models.base_tts import BaseTTS -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram -from TTS.utils.generic_utils import format_aux_input -from TTS.utils.io import load_fsspec - - -class Overflow(BaseTTS): - """OverFlow TTS model. - - Paper:: - https://arxiv.org/abs/2211.06892 - - Paper abstract:: - Neural HMMs are a type of neural transducer recently proposed for - sequence-to-sequence modelling in text-to-speech. They combine the best features - of classic statistical speech synthesis and modern neural TTS, requiring less - data and fewer training updates, and are less prone to gibberish output caused - by neural attention failures. In this paper, we combine neural HMM TTS with - normalising flows for describing the highly non-Gaussian distribution of speech - acoustics. The result is a powerful, fully probabilistic model of durations and - acoustics that can be trained using exact maximum likelihood. Compared to - dominant flow-based acoustic models, our approach integrates autoregression for - improved modelling of long-range dependences such as utterance-level prosody. - Experiments show that a system based on our proposal gives more accurate - pronunciations and better subjective speech quality than comparable methods, - whilst retaining the original advantages of neural HMMs. Audio examples and code - are available at https://shivammehta25.github.io/OverFlow/. - - Note: - - Neural HMMs uses flat start initialization i.e it computes the means and std and transition probabilities - of the dataset and uses them to initialize the model. This benefits the model and helps with faster learning - If you change the dataset or want to regenerate the parameters change the `force_generate_statistics` and - `mel_statistics_parameter_path` accordingly. - - - To enable multi-GPU training, set the `use_grad_checkpointing=False` in config. - This will significantly increase the memory usage. This is because to compute - the actual data likelihood (not an approximation using MAS/Viterbi) we must use - all the states at the previous time step during the forward pass to decide the - probability distribution at the current step i.e the difference between the forward - algorithm and viterbi approximation. - - Check :class:`TTS.tts.configs.overflow.OverFlowConfig` for class arguments. - """ - - def __init__( - self, - config: "OverFlowConfig", - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - - # pass all config fields to `self` - # for fewer code change - self.config = config - for key in config: - setattr(self, key, config[key]) - - self.decoder_output_dim = config.out_channels - - self.encoder = Encoder(config.num_chars, config.state_per_phone, config.encoder_in_out_features) - self.neural_hmm = NeuralHMM( - frame_channels=self.out_channels, - ar_order=self.ar_order, - deterministic_transition=self.deterministic_transition, - encoder_dim=self.encoder_in_out_features, - prenet_type=self.prenet_type, - prenet_dim=self.prenet_dim, - prenet_n_layers=self.prenet_n_layers, - prenet_dropout=self.prenet_dropout, - prenet_dropout_at_inference=self.prenet_dropout_at_inference, - memory_rnn_dim=self.memory_rnn_dim, - outputnet_size=self.outputnet_size, - flat_start_params=self.flat_start_params, - std_floor=self.std_floor, - use_grad_checkpointing=self.use_grad_checkpointing, - ) - - self.decoder = Decoder( - self.out_channels, - self.hidden_channels_dec, - self.kernel_size_dec, - self.dilation_rate, - self.num_flow_blocks_dec, - self.num_block_layers, - dropout_p=self.dropout_p_dec, - num_splits=self.num_splits, - num_squeeze=self.num_squeeze, - sigmoid_scale=self.sigmoid_scale, - c_in_channels=self.c_in_channels, - ) - - self.register_buffer("mean", torch.tensor(0)) - self.register_buffer("std", torch.tensor(1)) - - def update_mean_std(self, statistics_dict: Dict): - self.mean.data = torch.tensor(statistics_dict["mean"]) - self.std.data = torch.tensor(statistics_dict["std"]) - - def preprocess_batch(self, text, text_len, mels, mel_len): - if self.mean.item() == 0 or self.std.item() == 1: - statistics_dict = torch.load(self.mel_statistics_parameter_path) - self.update_mean_std(statistics_dict) - - mels = self.normalize(mels) - return text, text_len, mels, mel_len - - def normalize(self, x): - return x.sub(self.mean).div(self.std) - - def inverse_normalize(self, x): - return x.mul(self.std).add(self.mean) - - def forward(self, text, text_len, mels, mel_len): - """ - Forward pass for training and computing the log likelihood of a given batch. - - Shapes: - Shapes: - text: :math:`[B, T_in]` - text_len: :math:`[B]` - mels: :math:`[B, T_out, C]` - mel_len: :math:`[B]` - """ - text, text_len, mels, mel_len = self.preprocess_batch(text, text_len, mels, mel_len) - encoder_outputs, encoder_output_len = self.encoder(text, text_len) - z, z_lengths, logdet = self.decoder(mels.transpose(1, 2), mel_len) - log_probs, fwd_alignments, transition_vectors, means = self.neural_hmm( - encoder_outputs, encoder_output_len, z, z_lengths - ) - - outputs = { - "log_probs": log_probs + logdet, - "alignments": fwd_alignments, - "transition_vectors": transition_vectors, - "means": means, - } - - return outputs - - @staticmethod - def _training_stats(batch): - stats = {} - stats["avg_text_length"] = batch["text_lengths"].float().mean() - stats["avg_spec_length"] = batch["mel_lengths"].float().mean() - stats["avg_text_batch_occupancy"] = (batch["text_lengths"].float() / batch["text_lengths"].float().max()).mean() - stats["avg_spec_batch_occupancy"] = (batch["mel_lengths"].float() / batch["mel_lengths"].float().max()).mean() - return stats - - def train_step(self, batch: dict, criterion: nn.Module): - text_input = batch["text_input"] - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - mel_lengths = batch["mel_lengths"] - - outputs = self.forward( - text=text_input, - text_len=text_lengths, - mels=mel_input, - mel_len=mel_lengths, - ) - loss_dict = criterion(outputs["log_probs"] / (mel_lengths.sum() + text_lengths.sum())) - - # for printing useful statistics on terminal - loss_dict.update(self._training_stats(batch)) - return outputs, loss_dict - - def eval_step(self, batch: Dict, criterion: nn.Module): - return self.train_step(batch, criterion) - - def _format_aux_input(self, aux_input: Dict, default_input_dict): - """Set missing fields to their default value. - - Args: - aux_inputs (Dict): Dictionary containing the auxiliary inputs. - """ - default_input_dict = default_input_dict.copy() - default_input_dict.update( - { - "sampling_temp": self.sampling_temp, - "max_sampling_time": self.max_sampling_time, - "duration_threshold": self.duration_threshold, - } - ) - if aux_input: - return format_aux_input(default_input_dict, aux_input) - return default_input_dict - - @torch.no_grad() - def inference( - self, - text: torch.Tensor, - aux_input={"x_lengths": None, "sampling_temp": None, "max_sampling_time": None, "duration_threshold": None}, - ): # pylint: disable=dangerous-default-value - """Sampling from the model - - Args: - text (torch.Tensor): :math:`[B, T_in]` - aux_inputs (_type_, optional): _description_. Defaults to None. - - Returns: - outputs: Dictionary containing the following - - mel (torch.Tensor): :math:`[B, T_out, C]` - - hmm_outputs_len (torch.Tensor): :math:`[B]` - - state_travelled (List[List[int]]): List of lists containing the state travelled for each sample in the batch. - - input_parameters (list[torch.FloatTensor]): Input parameters to the neural HMM. - - output_parameters (list[torch.FloatTensor]): Output parameters to the neural HMM. - """ - default_input_dict = { - "x_lengths": torch.sum(text != 0, dim=1), - } - aux_input = self._format_aux_input(aux_input, default_input_dict) - encoder_outputs, encoder_output_len = self.encoder.inference(text, aux_input["x_lengths"]) - outputs = self.neural_hmm.inference( - encoder_outputs, - encoder_output_len, - sampling_temp=aux_input["sampling_temp"], - max_sampling_time=aux_input["max_sampling_time"], - duration_threshold=aux_input["duration_threshold"], - ) - - mels, mel_outputs_len, _ = self.decoder( - outputs["hmm_outputs"].transpose(1, 2), outputs["hmm_outputs_len"], reverse=True - ) - mels = self.inverse_normalize(mels.transpose(1, 2)) - outputs.update({"model_outputs": mels, "model_outputs_len": mel_outputs_len}) - outputs["alignments"] = OverflowUtils.double_pad(outputs["alignments"]) - return outputs - - @staticmethod - def get_criterion(): - return NLLLoss() - - @staticmethod - def init_from_config(config: "OverFlowConfig", samples: Union[List[List], List[Dict]] = None, verbose=True): - """Initiate model from config - - Args: - config (VitsConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - verbose (bool): If True, print init messages. Defaults to True. - """ - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config, verbose) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config, samples) - return Overflow(new_config, ap, tokenizer, speaker_manager) - - def load_checkpoint( - self, config: Coqpit, checkpoint_path: str, eval: bool = False, strict: bool = True, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu")) - self.load_state_dict(state["model"]) - if eval: - self.eval() - self.decoder.store_inverse() - assert not self.training - - def on_init_start(self, trainer): - """If the current dataset does not have normalisation statistics and initialisation transition_probability it computes them otherwise loads.""" - if not os.path.isfile(trainer.config.mel_statistics_parameter_path) or trainer.config.force_generate_statistics: - dataloader = trainer.get_train_dataloader( - training_assets=None, samples=trainer.train_samples, verbose=False - ) - print( - f" | > Data parameters not found for: {trainer.config.mel_statistics_parameter_path}. Computing mel normalization parameters..." - ) - data_mean, data_std, init_transition_prob = OverflowUtils.get_data_parameters_for_flat_start( - dataloader, trainer.config.out_channels, trainer.config.state_per_phone - ) - print( - f" | > Saving data parameters to: {trainer.config.mel_statistics_parameter_path}: value: {data_mean, data_std, init_transition_prob}" - ) - statistics = { - "mean": data_mean.item(), - "std": data_std.item(), - "init_transition_prob": init_transition_prob.item(), - } - torch.save(statistics, trainer.config.mel_statistics_parameter_path) - - else: - print( - f" | > Data parameters found for: {trainer.config.mel_statistics_parameter_path}. Loading mel normalization parameters..." - ) - statistics = torch.load(trainer.config.mel_statistics_parameter_path) - data_mean, data_std, init_transition_prob = ( - statistics["mean"], - statistics["std"], - statistics["init_transition_prob"], - ) - print(f" | > Data parameters loaded with value: {data_mean, data_std, init_transition_prob}") - - trainer.config.flat_start_params["transition_p"] = ( - init_transition_prob.item() if torch.is_tensor(init_transition_prob) else init_transition_prob - ) - OverflowUtils.update_flat_start_transition(trainer.model, init_transition_prob) - trainer.model.update_mean_std(statistics) - - @torch.inference_mode() - def _create_logs(self, batch, outputs, ap): # pylint: disable=no-self-use, unused-argument - alignments, transition_vectors = outputs["alignments"], outputs["transition_vectors"] - means = torch.stack(outputs["means"], dim=1) - - figures = { - "alignment": plot_alignment(alignments[0].exp(), title="Forward alignment", fig_size=(20, 20)), - "log_alignment": plot_alignment( - alignments[0].exp(), title="Forward log alignment", plot_log=True, fig_size=(20, 20) - ), - "transition_vectors": plot_alignment(transition_vectors[0], title="Transition vectors", fig_size=(20, 20)), - "mel_from_most_probable_state": plot_spectrogram( - get_spec_from_most_probable_state(alignments[0], means[0], self.decoder), fig_size=(12, 3) - ), - "mel_target": plot_spectrogram(batch["mel_input"][0], fig_size=(12, 3)), - } - - # sample one item from the batch -1 will give the smalles item - print(" | > Synthesising audio from the model...") - inference_output = self.inference( - batch["text_input"][-1].unsqueeze(0), aux_input={"x_lengths": batch["text_lengths"][-1].unsqueeze(0)} - ) - figures["synthesised"] = plot_spectrogram(inference_output["model_outputs"][0], fig_size=(12, 3)) - - states = [p[1] for p in inference_output["input_parameters"][0]] - transition_probability_synthesising = [p[2].cpu().numpy() for p in inference_output["output_parameters"][0]] - - for i in range((len(transition_probability_synthesising) // 200) + 1): - start = i * 200 - end = (i + 1) * 200 - figures[f"synthesised_transition_probabilities/{i}"] = plot_transition_probabilities_to_numpy( - states[start:end], transition_probability_synthesising[start:end] - ) - - audio = ap.inv_melspectrogram(inference_output["model_outputs"][0].T.cpu().numpy()) - return figures, {"audios": audio} - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ): # pylint: disable=unused-argument - """Log training progress.""" - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - def eval_log( - self, batch: Dict, outputs: Dict, logger: "Logger", assets: Dict, steps: int - ): # pylint: disable=unused-argument - """Compute and log evaluation metrics.""" - # Plot model parameters histograms - if isinstance(logger, TensorboardLogger): - # I don't know if any other loggers supports this - for tag, value in self.named_parameters(): - tag = tag.replace(".", "/") - logger.writer.add_histogram(tag, value.data.cpu().numpy(), steps) - - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - def test_log( - self, outputs: dict, logger: "Logger", assets: dict, steps: int # pylint: disable=unused-argument - ) -> None: - logger.test_audios(steps, outputs[1], self.ap.sample_rate) - logger.test_figures(steps, outputs[0]) - - -class NLLLoss(nn.Module): - """Negative log likelihood loss.""" - - def forward(self, log_prob: torch.Tensor) -> dict: # pylint: disable=no-self-use - """Compute the loss. - - Args: - logits (Tensor): [B, T, D] - - Returns: - Tensor: [1] - - """ - return_dict = {} - return_dict["loss"] = -log_prob.mean() - return return_dict diff --git a/TTS/tts/models/tacotron.py b/TTS/tts/models/tacotron.py deleted file mode 100644 index 474ec4641d0a569fc1938442ab9f7ce4bb980119..0000000000000000000000000000000000000000 --- a/TTS/tts/models/tacotron.py +++ /dev/null @@ -1,409 +0,0 @@ -# coding: utf-8 - -from typing import Dict, List, Tuple, Union - -import torch -from torch import nn -from torch.cuda.amp.autocast_mode import autocast -from trainer.trainer_utils import get_optimizer, get_scheduler - -from TTS.tts.layers.tacotron.capacitron_layers import CapacitronVAE -from TTS.tts.layers.tacotron.gst_layers import GST -from TTS.tts.layers.tacotron.tacotron import Decoder, Encoder, PostCBHG -from TTS.tts.models.base_tacotron import BaseTacotron -from TTS.tts.utils.measures import alignment_diagonal_score -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram -from TTS.utils.capacitron_optimizer import CapacitronOptimizer - - -class Tacotron(BaseTacotron): - """Tacotron as in https://arxiv.org/abs/1703.10135 - It's an autoregressive encoder-attention-decoder-postnet architecture. - Check `TacotronConfig` for the arguments. - - Args: - config (TacotronConfig): Configuration for the Tacotron model. - speaker_manager (SpeakerManager): Speaker manager to handle multi-speaker settings. Only use if the model is - a multi-speaker model. Defaults to None. - """ - - def __init__( - self, - config: "TacotronConfig", - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - - # pass all config fields to `self` - # for fewer code change - for key in config: - setattr(self, key, config[key]) - - # set speaker embedding channel size for determining `in_channels` for the connected layers. - # `init_multispeaker` needs to be called once more in training to initialize the speaker embedding layer based - # on the number of speakers infered from the dataset. - if self.use_speaker_embedding or self.use_d_vector_file: - self.init_multispeaker(config) - self.decoder_in_features += self.embedded_speaker_dim # add speaker embedding dim - - if self.use_gst: - self.decoder_in_features += self.gst.gst_embedding_dim - - if self.use_capacitron_vae: - self.decoder_in_features += self.capacitron_vae.capacitron_VAE_embedding_dim - - # embedding layer - self.embedding = nn.Embedding(self.num_chars, 256, padding_idx=0) - self.embedding.weight.data.normal_(0, 0.3) - - # base model layers - self.encoder = Encoder(self.encoder_in_features) - self.decoder = Decoder( - self.decoder_in_features, - self.decoder_output_dim, - self.r, - self.memory_size, - self.attention_type, - self.windowing, - self.attention_norm, - self.prenet_type, - self.prenet_dropout, - self.use_forward_attn, - self.transition_agent, - self.forward_attn_mask, - self.location_attn, - self.attention_heads, - self.separate_stopnet, - self.max_decoder_steps, - ) - self.postnet = PostCBHG(self.decoder_output_dim) - self.last_linear = nn.Linear(self.postnet.cbhg.gru_features * 2, self.out_channels) - - # setup prenet dropout - self.decoder.prenet.dropout_at_inference = self.prenet_dropout_at_inference - - # global style token layers - if self.gst and self.use_gst: - self.gst_layer = GST( - num_mel=self.decoder_output_dim, - num_heads=self.gst.gst_num_heads, - num_style_tokens=self.gst.gst_num_style_tokens, - gst_embedding_dim=self.gst.gst_embedding_dim, - ) - - # Capacitron layers - if self.capacitron_vae and self.use_capacitron_vae: - self.capacitron_vae_layer = CapacitronVAE( - num_mel=self.decoder_output_dim, - encoder_output_dim=self.encoder_in_features, - capacitron_VAE_embedding_dim=self.capacitron_vae.capacitron_VAE_embedding_dim, - speaker_embedding_dim=self.embedded_speaker_dim - if self.use_speaker_embedding and self.capacitron_vae.capacitron_use_speaker_embedding - else None, - text_summary_embedding_dim=self.capacitron_vae.capacitron_text_summary_embedding_dim - if self.capacitron_vae.capacitron_use_text_summary_embeddings - else None, - ) - - # backward pass decoder - if self.bidirectional_decoder: - self._init_backward_decoder() - # setup DDC - if self.double_decoder_consistency: - self.coarse_decoder = Decoder( - self.decoder_in_features, - self.decoder_output_dim, - self.ddc_r, - self.memory_size, - self.attention_type, - self.windowing, - self.attention_norm, - self.prenet_type, - self.prenet_dropout, - self.use_forward_attn, - self.transition_agent, - self.forward_attn_mask, - self.location_attn, - self.attention_heads, - self.separate_stopnet, - self.max_decoder_steps, - ) - - def forward( # pylint: disable=dangerous-default-value - self, text, text_lengths, mel_specs=None, mel_lengths=None, aux_input={"speaker_ids": None, "d_vectors": None} - ): - """ - Shapes: - text: [B, T_in] - text_lengths: [B] - mel_specs: [B, T_out, C] - mel_lengths: [B] - aux_input: 'speaker_ids': [B, 1] and 'd_vectors':[B, C] - """ - aux_input = self._format_aux_input(aux_input) - outputs = {"alignments_backward": None, "decoder_outputs_backward": None} - inputs = self.embedding(text) - input_mask, output_mask = self.compute_masks(text_lengths, mel_lengths) - # B x T_in x encoder_in_features - encoder_outputs = self.encoder(inputs) - # sequence masking - encoder_outputs = encoder_outputs * input_mask.unsqueeze(2).expand_as(encoder_outputs) - # global style token - if self.gst and self.use_gst: - # B x gst_dim - encoder_outputs = self.compute_gst(encoder_outputs, mel_specs) - # speaker embedding - if self.use_speaker_embedding or self.use_d_vector_file: - if not self.use_d_vector_file: - # B x 1 x speaker_embed_dim - embedded_speakers = self.speaker_embedding(aux_input["speaker_ids"])[:, None] - else: - # B x 1 x speaker_embed_dim - embedded_speakers = torch.unsqueeze(aux_input["d_vectors"], 1) - encoder_outputs = self._concat_speaker_embedding(encoder_outputs, embedded_speakers) - # Capacitron - if self.capacitron_vae and self.use_capacitron_vae: - # B x capacitron_VAE_embedding_dim - encoder_outputs, *capacitron_vae_outputs = self.compute_capacitron_VAE_embedding( - encoder_outputs, - reference_mel_info=[mel_specs, mel_lengths], - text_info=[inputs, text_lengths] - if self.capacitron_vae.capacitron_use_text_summary_embeddings - else None, - speaker_embedding=embedded_speakers if self.capacitron_vae.capacitron_use_speaker_embedding else None, - ) - else: - capacitron_vae_outputs = None - # decoder_outputs: B x decoder_in_features x T_out - # alignments: B x T_in x encoder_in_features - # stop_tokens: B x T_in - decoder_outputs, alignments, stop_tokens = self.decoder(encoder_outputs, mel_specs, input_mask) - # sequence masking - if output_mask is not None: - decoder_outputs = decoder_outputs * output_mask.unsqueeze(1).expand_as(decoder_outputs) - # B x T_out x decoder_in_features - postnet_outputs = self.postnet(decoder_outputs) - # sequence masking - if output_mask is not None: - postnet_outputs = postnet_outputs * output_mask.unsqueeze(2).expand_as(postnet_outputs) - # B x T_out x posnet_dim - postnet_outputs = self.last_linear(postnet_outputs) - # B x T_out x decoder_in_features - decoder_outputs = decoder_outputs.transpose(1, 2).contiguous() - if self.bidirectional_decoder: - decoder_outputs_backward, alignments_backward = self._backward_pass(mel_specs, encoder_outputs, input_mask) - outputs["alignments_backward"] = alignments_backward - outputs["decoder_outputs_backward"] = decoder_outputs_backward - if self.double_decoder_consistency: - decoder_outputs_backward, alignments_backward = self._coarse_decoder_pass( - mel_specs, encoder_outputs, alignments, input_mask - ) - outputs["alignments_backward"] = alignments_backward - outputs["decoder_outputs_backward"] = decoder_outputs_backward - outputs.update( - { - "model_outputs": postnet_outputs, - "decoder_outputs": decoder_outputs, - "alignments": alignments, - "stop_tokens": stop_tokens, - "capacitron_vae_outputs": capacitron_vae_outputs, - } - ) - return outputs - - @torch.no_grad() - def inference(self, text_input, aux_input=None): - aux_input = self._format_aux_input(aux_input) - inputs = self.embedding(text_input) - encoder_outputs = self.encoder(inputs) - if self.gst and self.use_gst: - # B x gst_dim - encoder_outputs = self.compute_gst(encoder_outputs, aux_input["style_mel"], aux_input["d_vectors"]) - if self.capacitron_vae and self.use_capacitron_vae: - if aux_input["style_text"] is not None: - style_text_embedding = self.embedding(aux_input["style_text"]) - style_text_length = torch.tensor([style_text_embedding.size(1)], dtype=torch.int64).to( - encoder_outputs.device - ) # pylint: disable=not-callable - reference_mel_length = ( - torch.tensor([aux_input["style_mel"].size(1)], dtype=torch.int64).to(encoder_outputs.device) - if aux_input["style_mel"] is not None - else None - ) # pylint: disable=not-callable - # B x capacitron_VAE_embedding_dim - encoder_outputs, *_ = self.compute_capacitron_VAE_embedding( - encoder_outputs, - reference_mel_info=[aux_input["style_mel"], reference_mel_length] - if aux_input["style_mel"] is not None - else None, - text_info=[style_text_embedding, style_text_length] if aux_input["style_text"] is not None else None, - speaker_embedding=aux_input["d_vectors"] - if self.capacitron_vae.capacitron_use_speaker_embedding - else None, - ) - if self.num_speakers > 1: - if not self.use_d_vector_file: - # B x 1 x speaker_embed_dim - embedded_speakers = self.speaker_embedding(aux_input["speaker_ids"]) - # reshape embedded_speakers - if embedded_speakers.ndim == 1: - embedded_speakers = embedded_speakers[None, None, :] - elif embedded_speakers.ndim == 2: - embedded_speakers = embedded_speakers[None, :] - else: - # B x 1 x speaker_embed_dim - embedded_speakers = torch.unsqueeze(aux_input["d_vectors"], 1) - encoder_outputs = self._concat_speaker_embedding(encoder_outputs, embedded_speakers) - decoder_outputs, alignments, stop_tokens = self.decoder.inference(encoder_outputs) - postnet_outputs = self.postnet(decoder_outputs) - postnet_outputs = self.last_linear(postnet_outputs) - decoder_outputs = decoder_outputs.transpose(1, 2) - outputs = { - "model_outputs": postnet_outputs, - "decoder_outputs": decoder_outputs, - "alignments": alignments, - "stop_tokens": stop_tokens, - } - return outputs - - def before_backward_pass(self, loss_dict, optimizer) -> None: - # Extracting custom training specific operations for capacitron - # from the trainer - if self.use_capacitron_vae: - loss_dict["capacitron_vae_beta_loss"].backward() - optimizer.first_step() - - def train_step(self, batch: Dict, criterion: torch.nn.Module) -> Tuple[Dict, Dict]: - """Perform a single training step by fetching the right set of samples from the batch. - - Args: - batch ([Dict]): A dictionary of input tensors. - criterion ([torch.nn.Module]): Callable criterion to compute model loss. - """ - text_input = batch["text_input"] - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - mel_lengths = batch["mel_lengths"] - linear_input = batch["linear_input"] - stop_targets = batch["stop_targets"] - stop_target_lengths = batch["stop_target_lengths"] - speaker_ids = batch["speaker_ids"] - d_vectors = batch["d_vectors"] - - aux_input = {"speaker_ids": speaker_ids, "d_vectors": d_vectors} - outputs = self.forward(text_input, text_lengths, mel_input, mel_lengths, aux_input) - - # set the [alignment] lengths wrt reduction factor for guided attention - if mel_lengths.max() % self.decoder.r != 0: - alignment_lengths = ( - mel_lengths + (self.decoder.r - (mel_lengths.max() % self.decoder.r)) - ) // self.decoder.r - else: - alignment_lengths = mel_lengths // self.decoder.r - - # compute loss - with autocast(enabled=False): # use float32 for the criterion - loss_dict = criterion( - outputs["model_outputs"].float(), - outputs["decoder_outputs"].float(), - mel_input.float(), - linear_input.float(), - outputs["stop_tokens"].float(), - stop_targets.float(), - stop_target_lengths, - outputs["capacitron_vae_outputs"] if self.capacitron_vae else None, - mel_lengths, - None if outputs["decoder_outputs_backward"] is None else outputs["decoder_outputs_backward"].float(), - outputs["alignments"].float(), - alignment_lengths, - None if outputs["alignments_backward"] is None else outputs["alignments_backward"].float(), - text_lengths, - ) - - # compute alignment error (the lower the better ) - align_error = 1 - alignment_diagonal_score(outputs["alignments"]) - loss_dict["align_error"] = align_error - return outputs, loss_dict - - def get_optimizer(self) -> List: - if self.use_capacitron_vae: - return CapacitronOptimizer(self.config, self.named_parameters()) - return get_optimizer(self.config.optimizer, self.config.optimizer_params, self.config.lr, self) - - def get_scheduler(self, optimizer: object): - opt = optimizer.primary_optimizer if self.use_capacitron_vae else optimizer - return get_scheduler(self.config.lr_scheduler, self.config.lr_scheduler_params, opt) - - def before_gradient_clipping(self): - if self.use_capacitron_vae: - # Capacitron model specific gradient clipping - model_params_to_clip = [] - for name, param in self.named_parameters(): - if param.requires_grad: - if name != "capacitron_vae_layer.beta": - model_params_to_clip.append(param) - torch.nn.utils.clip_grad_norm_(model_params_to_clip, self.capacitron_vae.capacitron_grad_clip) - - def _create_logs(self, batch, outputs, ap): - postnet_outputs = outputs["model_outputs"] - decoder_outputs = outputs["decoder_outputs"] - alignments = outputs["alignments"] - alignments_backward = outputs["alignments_backward"] - mel_input = batch["mel_input"] - linear_input = batch["linear_input"] - - pred_linear_spec = postnet_outputs[0].data.cpu().numpy() - pred_mel_spec = decoder_outputs[0].data.cpu().numpy() - gt_linear_spec = linear_input[0].data.cpu().numpy() - gt_mel_spec = mel_input[0].data.cpu().numpy() - align_img = alignments[0].data.cpu().numpy() - - figures = { - "pred_linear_spec": plot_spectrogram(pred_linear_spec, ap, output_fig=False), - "real_linear_spec": plot_spectrogram(gt_linear_spec, ap, output_fig=False), - "pred_mel_spec": plot_spectrogram(pred_mel_spec, ap, output_fig=False), - "real_mel_spec": plot_spectrogram(gt_mel_spec, ap, output_fig=False), - "alignment": plot_alignment(align_img, output_fig=False), - } - - if self.bidirectional_decoder or self.double_decoder_consistency: - figures["alignment_backward"] = plot_alignment(alignments_backward[0].data.cpu().numpy(), output_fig=False) - - # Sample audio - audio = ap.inv_spectrogram(pred_linear_spec.T) - return figures, {"audio": audio} - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ) -> None: # pylint: disable=no-self-use - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - def eval_step(self, batch: dict, criterion: nn.Module): - return self.train_step(batch, criterion) - - def eval_log(self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int) -> None: - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - @staticmethod - def init_from_config(config: "TacotronConfig", samples: Union[List[List], List[Dict]] = None): - """Initiate model from config - - Args: - config (TacotronConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - """ - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config, samples) - return Tacotron(new_config, ap, tokenizer, speaker_manager) diff --git a/TTS/tts/models/tacotron2.py b/TTS/tts/models/tacotron2.py deleted file mode 100644 index 71ab1eac37aa70900a795cf8aa3df7a9ce77c49c..0000000000000000000000000000000000000000 --- a/TTS/tts/models/tacotron2.py +++ /dev/null @@ -1,433 +0,0 @@ -# coding: utf-8 - -from typing import Dict, List, Union - -import torch -from torch import nn -from torch.cuda.amp.autocast_mode import autocast -from trainer.trainer_utils import get_optimizer, get_scheduler - -from TTS.tts.layers.tacotron.capacitron_layers import CapacitronVAE -from TTS.tts.layers.tacotron.gst_layers import GST -from TTS.tts.layers.tacotron.tacotron2 import Decoder, Encoder, Postnet -from TTS.tts.models.base_tacotron import BaseTacotron -from TTS.tts.utils.measures import alignment_diagonal_score -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram -from TTS.utils.capacitron_optimizer import CapacitronOptimizer - - -class Tacotron2(BaseTacotron): - """Tacotron2 model implementation inherited from :class:`TTS.tts.models.base_tacotron.BaseTacotron`. - - Paper:: - https://arxiv.org/abs/1712.05884 - - Paper abstract:: - This paper describes Tacotron 2, a neural network architecture for speech synthesis directly from text. - The system is composed of a recurrent sequence-to-sequence feature prediction network that maps character - embeddings to mel-scale spectrograms, followed by a modified WaveNet model acting as a vocoder to synthesize - timedomain waveforms from those spectrograms. Our model achieves a mean opinion score (MOS) of 4.53 comparable - to a MOS of 4.58 for professionally recorded speech. To validate our design choices, we present ablation - studies of key components of our system and evaluate the impact of using mel spectrograms as the input to - WaveNet instead of linguistic, duration, and F0 features. We further demonstrate that using a compact acoustic - intermediate representation enables significant simplification of the WaveNet architecture. - - Check :class:`TTS.tts.configs.tacotron2_config.Tacotron2Config` for model arguments. - - Args: - config (TacotronConfig): - Configuration for the Tacotron2 model. - speaker_manager (SpeakerManager): - Speaker manager for multi-speaker training. Uuse only for multi-speaker training. Defaults to None. - """ - - def __init__( - self, - config: "Tacotron2Config", - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager) - - self.decoder_output_dim = config.out_channels - - # pass all config fields to `self` - # for fewer code change - for key in config: - setattr(self, key, config[key]) - - # init multi-speaker layers - if self.use_speaker_embedding or self.use_d_vector_file: - self.init_multispeaker(config) - self.decoder_in_features += self.embedded_speaker_dim # add speaker embedding dim - - if self.use_gst: - self.decoder_in_features += self.gst.gst_embedding_dim - - if self.use_capacitron_vae: - self.decoder_in_features += self.capacitron_vae.capacitron_VAE_embedding_dim - - # embedding layer - self.embedding = nn.Embedding(self.num_chars, 512, padding_idx=0) - - # base model layers - self.encoder = Encoder(self.encoder_in_features) - - self.decoder = Decoder( - self.decoder_in_features, - self.decoder_output_dim, - self.r, - self.attention_type, - self.attention_win, - self.attention_norm, - self.prenet_type, - self.prenet_dropout, - self.use_forward_attn, - self.transition_agent, - self.forward_attn_mask, - self.location_attn, - self.attention_heads, - self.separate_stopnet, - self.max_decoder_steps, - ) - self.postnet = Postnet(self.out_channels) - - # setup prenet dropout - self.decoder.prenet.dropout_at_inference = self.prenet_dropout_at_inference - - # global style token layers - if self.gst and self.use_gst: - self.gst_layer = GST( - num_mel=self.decoder_output_dim, - num_heads=self.gst.gst_num_heads, - num_style_tokens=self.gst.gst_num_style_tokens, - gst_embedding_dim=self.gst.gst_embedding_dim, - ) - - # Capacitron VAE Layers - if self.capacitron_vae and self.use_capacitron_vae: - self.capacitron_vae_layer = CapacitronVAE( - num_mel=self.decoder_output_dim, - encoder_output_dim=self.encoder_in_features, - capacitron_VAE_embedding_dim=self.capacitron_vae.capacitron_VAE_embedding_dim, - speaker_embedding_dim=self.embedded_speaker_dim - if self.capacitron_vae.capacitron_use_speaker_embedding - else None, - text_summary_embedding_dim=self.capacitron_vae.capacitron_text_summary_embedding_dim - if self.capacitron_vae.capacitron_use_text_summary_embeddings - else None, - ) - - # backward pass decoder - if self.bidirectional_decoder: - self._init_backward_decoder() - # setup DDC - if self.double_decoder_consistency: - self.coarse_decoder = Decoder( - self.decoder_in_features, - self.decoder_output_dim, - self.ddc_r, - self.attention_type, - self.attention_win, - self.attention_norm, - self.prenet_type, - self.prenet_dropout, - self.use_forward_attn, - self.transition_agent, - self.forward_attn_mask, - self.location_attn, - self.attention_heads, - self.separate_stopnet, - self.max_decoder_steps, - ) - - @staticmethod - def shape_outputs(mel_outputs, mel_outputs_postnet, alignments): - """Final reshape of the model output tensors.""" - mel_outputs = mel_outputs.transpose(1, 2) - mel_outputs_postnet = mel_outputs_postnet.transpose(1, 2) - return mel_outputs, mel_outputs_postnet, alignments - - def forward( # pylint: disable=dangerous-default-value - self, text, text_lengths, mel_specs=None, mel_lengths=None, aux_input={"speaker_ids": None, "d_vectors": None} - ): - """Forward pass for training with Teacher Forcing. - - Shapes: - text: :math:`[B, T_in]` - text_lengths: :math:`[B]` - mel_specs: :math:`[B, T_out, C]` - mel_lengths: :math:`[B]` - aux_input: 'speaker_ids': :math:`[B, 1]` and 'd_vectors': :math:`[B, C]` - """ - aux_input = self._format_aux_input(aux_input) - outputs = {"alignments_backward": None, "decoder_outputs_backward": None} - # compute mask for padding - # B x T_in_max (boolean) - input_mask, output_mask = self.compute_masks(text_lengths, mel_lengths) - # B x D_embed x T_in_max - embedded_inputs = self.embedding(text).transpose(1, 2) - # B x T_in_max x D_en - encoder_outputs = self.encoder(embedded_inputs, text_lengths) - if self.gst and self.use_gst: - # B x gst_dim - encoder_outputs = self.compute_gst(encoder_outputs, mel_specs) - - if self.use_speaker_embedding or self.use_d_vector_file: - if not self.use_d_vector_file: - # B x 1 x speaker_embed_dim - embedded_speakers = self.speaker_embedding(aux_input["speaker_ids"])[:, None] - else: - # B x 1 x speaker_embed_dim - embedded_speakers = torch.unsqueeze(aux_input["d_vectors"], 1) - encoder_outputs = self._concat_speaker_embedding(encoder_outputs, embedded_speakers) - - # capacitron - if self.capacitron_vae and self.use_capacitron_vae: - # B x capacitron_VAE_embedding_dim - encoder_outputs, *capacitron_vae_outputs = self.compute_capacitron_VAE_embedding( - encoder_outputs, - reference_mel_info=[mel_specs, mel_lengths], - text_info=[embedded_inputs.transpose(1, 2), text_lengths] - if self.capacitron_vae.capacitron_use_text_summary_embeddings - else None, - speaker_embedding=embedded_speakers if self.capacitron_vae.capacitron_use_speaker_embedding else None, - ) - else: - capacitron_vae_outputs = None - - encoder_outputs = encoder_outputs * input_mask.unsqueeze(2).expand_as(encoder_outputs) - - # B x mel_dim x T_out -- B x T_out//r x T_in -- B x T_out//r - decoder_outputs, alignments, stop_tokens = self.decoder(encoder_outputs, mel_specs, input_mask) - # sequence masking - if mel_lengths is not None: - decoder_outputs = decoder_outputs * output_mask.unsqueeze(1).expand_as(decoder_outputs) - # B x mel_dim x T_out - postnet_outputs = self.postnet(decoder_outputs) - postnet_outputs = decoder_outputs + postnet_outputs - # sequence masking - if output_mask is not None: - postnet_outputs = postnet_outputs * output_mask.unsqueeze(1).expand_as(postnet_outputs) - # B x T_out x mel_dim -- B x T_out x mel_dim -- B x T_out//r x T_in - decoder_outputs, postnet_outputs, alignments = self.shape_outputs(decoder_outputs, postnet_outputs, alignments) - if self.bidirectional_decoder: - decoder_outputs_backward, alignments_backward = self._backward_pass(mel_specs, encoder_outputs, input_mask) - outputs["alignments_backward"] = alignments_backward - outputs["decoder_outputs_backward"] = decoder_outputs_backward - if self.double_decoder_consistency: - decoder_outputs_backward, alignments_backward = self._coarse_decoder_pass( - mel_specs, encoder_outputs, alignments, input_mask - ) - outputs["alignments_backward"] = alignments_backward - outputs["decoder_outputs_backward"] = decoder_outputs_backward - outputs.update( - { - "model_outputs": postnet_outputs, - "decoder_outputs": decoder_outputs, - "alignments": alignments, - "stop_tokens": stop_tokens, - "capacitron_vae_outputs": capacitron_vae_outputs, - } - ) - return outputs - - @torch.no_grad() - def inference(self, text, aux_input=None): - """Forward pass for inference with no Teacher-Forcing. - - Shapes: - text: :math:`[B, T_in]` - text_lengths: :math:`[B]` - """ - aux_input = self._format_aux_input(aux_input) - embedded_inputs = self.embedding(text).transpose(1, 2) - encoder_outputs = self.encoder.inference(embedded_inputs) - - if self.gst and self.use_gst: - # B x gst_dim - encoder_outputs = self.compute_gst(encoder_outputs, aux_input["style_mel"], aux_input["d_vectors"]) - - if self.capacitron_vae and self.use_capacitron_vae: - if aux_input["style_text"] is not None: - style_text_embedding = self.embedding(aux_input["style_text"]) - style_text_length = torch.tensor([style_text_embedding.size(1)], dtype=torch.int64).to( - encoder_outputs.device - ) # pylint: disable=not-callable - reference_mel_length = ( - torch.tensor([aux_input["style_mel"].size(1)], dtype=torch.int64).to(encoder_outputs.device) - if aux_input["style_mel"] is not None - else None - ) # pylint: disable=not-callable - # B x capacitron_VAE_embedding_dim - encoder_outputs, *_ = self.compute_capacitron_VAE_embedding( - encoder_outputs, - reference_mel_info=[aux_input["style_mel"], reference_mel_length] - if aux_input["style_mel"] is not None - else None, - text_info=[style_text_embedding, style_text_length] if aux_input["style_text"] is not None else None, - speaker_embedding=aux_input["d_vectors"] - if self.capacitron_vae.capacitron_use_speaker_embedding - else None, - ) - - if self.num_speakers > 1: - if not self.use_d_vector_file: - embedded_speakers = self.speaker_embedding(aux_input["speaker_ids"])[None] - # reshape embedded_speakers - if embedded_speakers.ndim == 1: - embedded_speakers = embedded_speakers[None, None, :] - elif embedded_speakers.ndim == 2: - embedded_speakers = embedded_speakers[None, :] - else: - embedded_speakers = aux_input["d_vectors"] - - encoder_outputs = self._concat_speaker_embedding(encoder_outputs, embedded_speakers) - - decoder_outputs, alignments, stop_tokens = self.decoder.inference(encoder_outputs) - postnet_outputs = self.postnet(decoder_outputs) - postnet_outputs = decoder_outputs + postnet_outputs - decoder_outputs, postnet_outputs, alignments = self.shape_outputs(decoder_outputs, postnet_outputs, alignments) - outputs = { - "model_outputs": postnet_outputs, - "decoder_outputs": decoder_outputs, - "alignments": alignments, - "stop_tokens": stop_tokens, - } - return outputs - - def before_backward_pass(self, loss_dict, optimizer) -> None: - # Extracting custom training specific operations for capacitron - # from the trainer - if self.use_capacitron_vae: - loss_dict["capacitron_vae_beta_loss"].backward() - optimizer.first_step() - - def train_step(self, batch: Dict, criterion: torch.nn.Module): - """A single training step. Forward pass and loss computation. - - Args: - batch ([Dict]): A dictionary of input tensors. - criterion ([type]): Callable criterion to compute model loss. - """ - text_input = batch["text_input"] - text_lengths = batch["text_lengths"] - mel_input = batch["mel_input"] - mel_lengths = batch["mel_lengths"] - stop_targets = batch["stop_targets"] - stop_target_lengths = batch["stop_target_lengths"] - speaker_ids = batch["speaker_ids"] - d_vectors = batch["d_vectors"] - - aux_input = {"speaker_ids": speaker_ids, "d_vectors": d_vectors} - outputs = self.forward(text_input, text_lengths, mel_input, mel_lengths, aux_input) - - # set the [alignment] lengths wrt reduction factor for guided attention - if mel_lengths.max() % self.decoder.r != 0: - alignment_lengths = ( - mel_lengths + (self.decoder.r - (mel_lengths.max() % self.decoder.r)) - ) // self.decoder.r - else: - alignment_lengths = mel_lengths // self.decoder.r - - # compute loss - with autocast(enabled=False): # use float32 for the criterion - loss_dict = criterion( - outputs["model_outputs"].float(), - outputs["decoder_outputs"].float(), - mel_input.float(), - None, - outputs["stop_tokens"].float(), - stop_targets.float(), - stop_target_lengths, - outputs["capacitron_vae_outputs"] if self.capacitron_vae else None, - mel_lengths, - None if outputs["decoder_outputs_backward"] is None else outputs["decoder_outputs_backward"].float(), - outputs["alignments"].float(), - alignment_lengths, - None if outputs["alignments_backward"] is None else outputs["alignments_backward"].float(), - text_lengths, - ) - - # compute alignment error (the lower the better ) - align_error = 1 - alignment_diagonal_score(outputs["alignments"]) - loss_dict["align_error"] = align_error - return outputs, loss_dict - - def get_optimizer(self) -> List: - if self.use_capacitron_vae: - return CapacitronOptimizer(self.config, self.named_parameters()) - return get_optimizer(self.config.optimizer, self.config.optimizer_params, self.config.lr, self) - - def get_scheduler(self, optimizer: object): - opt = optimizer.primary_optimizer if self.use_capacitron_vae else optimizer - return get_scheduler(self.config.lr_scheduler, self.config.lr_scheduler_params, opt) - - def before_gradient_clipping(self): - if self.use_capacitron_vae: - # Capacitron model specific gradient clipping - model_params_to_clip = [] - for name, param in self.named_parameters(): - if param.requires_grad: - if name != "capacitron_vae_layer.beta": - model_params_to_clip.append(param) - torch.nn.utils.clip_grad_norm_(model_params_to_clip, self.capacitron_vae.capacitron_grad_clip) - - def _create_logs(self, batch, outputs, ap): - """Create dashboard log information.""" - postnet_outputs = outputs["model_outputs"] - alignments = outputs["alignments"] - alignments_backward = outputs["alignments_backward"] - mel_input = batch["mel_input"] - - pred_spec = postnet_outputs[0].data.cpu().numpy() - gt_spec = mel_input[0].data.cpu().numpy() - align_img = alignments[0].data.cpu().numpy() - - figures = { - "prediction": plot_spectrogram(pred_spec, ap, output_fig=False), - "ground_truth": plot_spectrogram(gt_spec, ap, output_fig=False), - "alignment": plot_alignment(align_img, output_fig=False), - } - - if self.bidirectional_decoder or self.double_decoder_consistency: - figures["alignment_backward"] = plot_alignment(alignments_backward[0].data.cpu().numpy(), output_fig=False) - - # Sample audio - audio = ap.inv_melspectrogram(pred_spec.T) - return figures, {"audio": audio} - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ) -> None: # pylint: disable=no-self-use - """Log training progress.""" - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - def eval_step(self, batch: dict, criterion: nn.Module): - return self.train_step(batch, criterion) - - def eval_log(self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int) -> None: - figures, audios = self._create_logs(batch, outputs, self.ap) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - @staticmethod - def init_from_config(config: "Tacotron2Config", samples: Union[List[List], List[Dict]] = None): - """Initiate model from config - - Args: - config (Tacotron2Config): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - """ - from TTS.utils.audio import AudioProcessor - - ap = AudioProcessor.init_from_config(config) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(new_config, samples) - return Tacotron2(new_config, ap, tokenizer, speaker_manager) diff --git a/TTS/tts/models/tortoise.py b/TTS/tts/models/tortoise.py deleted file mode 100644 index 16644ff95eee6799f5e78603e2011f63b05a1011..0000000000000000000000000000000000000000 --- a/TTS/tts/models/tortoise.py +++ /dev/null @@ -1,911 +0,0 @@ -import os -import random -from contextlib import contextmanager -from dataclasses import dataclass -from time import time - -import torch -import torch.nn.functional as F -import torchaudio -from coqpit import Coqpit -from tqdm import tqdm - -from TTS.tts.layers.tortoise.arch_utils import TorchMelSpectrogram -from TTS.tts.layers.tortoise.audio_utils import denormalize_tacotron_mel, load_voice, wav_to_univnet_mel -from TTS.tts.layers.tortoise.autoregressive import UnifiedVoice -from TTS.tts.layers.tortoise.classifier import AudioMiniEncoderWithClassifierHead -from TTS.tts.layers.tortoise.clvp import CLVP -from TTS.tts.layers.tortoise.diffusion import SpacedDiffusion, get_named_beta_schedule, space_timesteps -from TTS.tts.layers.tortoise.diffusion_decoder import DiffusionTts -from TTS.tts.layers.tortoise.random_latent_generator import RandomLatentConverter -from TTS.tts.layers.tortoise.tokenizer import VoiceBpeTokenizer -from TTS.tts.layers.tortoise.vocoder import VocConf, VocType -from TTS.tts.layers.tortoise.wav2vec_alignment import Wav2VecAlignment -from TTS.tts.models.base_tts import BaseTTS - - -def pad_or_truncate(t, length): - """ - Utility function for forcing to have the specified sequence length, whether by clipping it or padding it with 0s. - """ - tp = t[..., :length] - if t.shape[-1] == length: - tp = t - elif t.shape[-1] < length: - tp = F.pad(t, (0, length - t.shape[-1])) - return tp - - -def deterministic_state(seed=None): - """ - Sets the random seeds that tortoise uses to the current time() and returns that seed so results can be - reproduced. - """ - seed = int(time()) if seed is None else seed - torch.manual_seed(seed) - random.seed(seed) - # Can't currently set this because of CUBLAS. TODO: potentially enable it if necessary. - # torch.use_deterministic_algorithms(True) - - return seed - - -def load_discrete_vocoder_diffuser( - trained_diffusion_steps=4000, - desired_diffusion_steps=200, - cond_free=True, - cond_free_k=1, - sampler="ddim", -): - """ - Helper function to load a GaussianDiffusion instance configured for use as a vocoder. - """ - return SpacedDiffusion( - use_timesteps=space_timesteps(trained_diffusion_steps, [desired_diffusion_steps]), - model_mean_type="epsilon", - model_var_type="learned_range", - loss_type="mse", - betas=get_named_beta_schedule("linear", trained_diffusion_steps), - conditioning_free=cond_free, - conditioning_free_k=cond_free_k, - sampler=sampler, - ) - - -def format_conditioning(clip, cond_length=132300, device="cuda", **kwargs): - """ - Converts the given conditioning signal to a MEL spectrogram and clips it as expected by the models. - """ - gap = clip.shape[-1] - cond_length - if gap < 0: - clip = F.pad(clip, pad=(0, abs(gap))) - elif gap > 0: - rand_start = random.randint(0, gap) - clip = clip[:, rand_start : rand_start + cond_length] - mel_clip = TorchMelSpectrogram(**kwargs)(clip.unsqueeze(0)).squeeze(0) - return mel_clip.unsqueeze(0).to(device) - - -def fix_autoregressive_output(codes, stop_token, complain=True): - """ - This function performs some padding on coded audio that fixes a mismatch issue between what the diffusion model was - trained on and what the autoregressive code generator creates (which has no padding or end). - This is highly specific to the DVAE being used, so this particular coding will not necessarily work if used with - a different DVAE. This can be inferred by feeding a audio clip padded with lots of zeros on the end through the DVAE - and copying out the last few codes. - - Failing to do this padding will produce speech with a harsh end that sounds like "BLAH" or similar. - """ - # Strip off the autoregressive stop token and add padding. - stop_token_indices = (codes == stop_token).nonzero() - if len(stop_token_indices) == 0: - if complain: - print( - "No stop tokens found in one of the generated voice clips. This typically means the spoken audio is " - "too long. In some cases, the output will still be good, though. Listen to it and if it is missing words, " - "try breaking up your input text." - ) - return codes - codes[stop_token_indices] = 83 - stm = stop_token_indices.min().item() - codes[stm:] = 83 - if stm - 3 < codes.shape[0]: - codes[-3] = 45 - codes[-2] = 45 - codes[-1] = 248 - return codes - - -def do_spectrogram_diffusion( - diffusion_model, - diffuser, - latents, - conditioning_latents, - temperature=1, - verbose=True, -): - """ - Uses the specified diffusion model to convert discrete codes into a spectrogram. - """ - with torch.no_grad(): - output_seq_len = ( - latents.shape[1] * 4 * 24000 // 22050 - ) # This diffusion model converts from 22kHz spectrogram codes to a 24kHz spectrogram signal. - output_shape = (latents.shape[0], 100, output_seq_len) - precomputed_embeddings = diffusion_model.timestep_independent( - latents, conditioning_latents, output_seq_len, False - ) - - noise = torch.randn(output_shape, device=latents.device) * temperature - mel = diffuser.sample_loop( - diffusion_model, - output_shape, - noise=noise, - model_kwargs={"precomputed_aligned_embeddings": precomputed_embeddings}, - progress=verbose, - ) - return denormalize_tacotron_mel(mel)[:, :, :output_seq_len] - - -def classify_audio_clip(clip, model_dir): - """ - Returns whether or not Tortoises' classifier thinks the given clip came from Tortoise. - :param clip: torch tensor containing audio waveform data (get it from load_audio) - :return: True if the clip was classified as coming from Tortoise and false if it was classified as real. - """ - classifier = AudioMiniEncoderWithClassifierHead( - 2, - spec_dim=1, - embedding_dim=512, - depth=5, - downsample_factor=4, - resnet_blocks=2, - attn_blocks=4, - num_attn_heads=4, - base_channels=32, - dropout=0, - kernel_size=5, - distribute_zero_label=False, - ) - classifier.load_state_dict(torch.load(os.path.join(model_dir, "classifier.pth"), map_location=torch.device("cpu"))) - clip = clip.cpu().unsqueeze(0) - results = F.softmax(classifier(clip), dim=-1) - return results[0][0] - - -def pick_best_batch_size_for_gpu(): - """ - Tries to pick a batch size that will fit in your GPU. These sizes aren't guaranteed to work, but they should give - you a good shot. - """ - if torch.cuda.is_available(): - _, available = torch.cuda.mem_get_info() - availableGb = available / (1024**3) - batch_size = 1 - if availableGb > 14: - batch_size = 16 - elif availableGb > 10: - batch_size = 8 - elif availableGb > 7: - batch_size = 4 - return batch_size - - -@dataclass -class TortoiseAudioConfig(Coqpit): - sample_rate: int = 22050 - diffusion_sample_rate: int = 24000 - output_sample_rate: int = 24000 - - -@dataclass -class TortoiseArgs(Coqpit): - """A dataclass to represent Tortoise model arguments that define the model structure. - - Args: - autoregressive_batch_size (int): The size of the auto-regressive batch. - enable_redaction (bool, optional): Whether to enable redaction. Defaults to True. - high_vram (bool, optional): Whether to use high VRAM. Defaults to False. - kv_cache (bool, optional): Whether to use the kv_cache. Defaults to True. - ar_checkpoint (str, optional): The checkpoint for the autoregressive model. Defaults to None. - clvp_checkpoint (str, optional): The checkpoint for the ConditionalLatentVariablePerseq model. Defaults to None. - diff_checkpoint (str, optional): The checkpoint for the DiffTTS model. Defaults to None. - num_chars (int, optional): The maximum number of characters to generate. Defaults to 255. - vocoder (VocType, optional): The vocoder to use for synthesis. Defaults to VocConf.Univnet. - - For UnifiedVoice model: - ar_max_mel_tokens (int, optional): The maximum mel tokens for the autoregressive model. Defaults to 604. - ar_max_text_tokens (int, optional): The maximum text tokens for the autoregressive model. Defaults to 402. - ar_max_conditioning_inputs (int, optional): The maximum conditioning inputs for the autoregressive model. Defaults to 2. - ar_layers (int, optional): The number of layers for the autoregressive model. Defaults to 30. - ar_model_dim (int, optional): The model dimension for the autoregressive model. Defaults to 1024. - ar_heads (int, optional): The number of heads for the autoregressive model. Defaults to 16. - ar_number_text_tokens (int, optional): The number of text tokens for the autoregressive model. Defaults to 255. - ar_start_text_token (int, optional): The start text token for the autoregressive model. Defaults to 255. - ar_checkpointing (bool, optional): Whether to use checkpointing for the autoregressive model. Defaults to False. - ar_train_solo_embeddings (bool, optional): Whether to train embeddings for the autoregressive model. Defaults to False. - - For DiffTTS model: - diff_model_channels (int, optional): The number of channels for the DiffTTS model. Defaults to 1024. - diff_num_layers (int, optional): The number of layers for the DiffTTS model. Defaults to 10. - diff_in_channels (int, optional): The input channels for the DiffTTS model. Defaults to 100. - diff_out_channels (int, optional): The output channels for the DiffTTS model. Defaults to 200. - diff_in_latent_channels (int, optional): The input latent channels for the DiffTTS model. Defaults to 1024. - diff_in_tokens (int, optional): The input tokens for the DiffTTS model. Defaults to 8193. - diff_dropout (int, optional): The dropout percentage for the DiffTTS model. Defaults to 0. - diff_use_fp16 (bool, optional): Whether to use fp16 for the DiffTTS model. Defaults to False. - diff_num_heads (int, optional): The number of heads for the DiffTTS model. Defaults to 16. - diff_layer_drop (int, optional): The layer dropout percentage for the DiffTTS model. Defaults to 0. - diff_unconditioned_percentage (int, optional): The percentage of unconditioned inputs for the DiffTTS model. Defaults to 0. - - For ConditionalLatentVariablePerseq model: - clvp_dim_text (int): The dimension of the text input for the CLVP module. Defaults to 768. - clvp_dim_speech (int): The dimension of the speech input for the CLVP module. Defaults to 768. - clvp_dim_latent (int): The dimension of the latent representation for the CLVP module. Defaults to 768. - clvp_num_text_tokens (int): The number of text tokens used by the CLVP module. Defaults to 256. - clvp_text_enc_depth (int): The depth of the text encoder in the CLVP module. Defaults to 20. - clvp_text_seq_len (int): The maximum sequence length of the text input for the CLVP module. Defaults to 350. - clvp_text_heads (int): The number of attention heads used by the text encoder in the CLVP module. Defaults to 12. - clvp_num_speech_tokens (int): The number of speech tokens used by the CLVP module. Defaults to 8192. - clvp_speech_enc_depth (int): The depth of the speech encoder in the CLVP module. Defaults to 20. - clvp_speech_heads (int): The number of attention heads used by the speech encoder in the CLVP module. Defaults to 12. - clvp_speech_seq_len (int): The maximum sequence length of the speech input for the CLVP module. Defaults to 430. - clvp_use_xformers (bool): A flag indicating whether the model uses transformers in the CLVP module. Defaults to True. - duration_const (int): A constant value used in the model. Defaults to 102400. - """ - - autoregressive_batch_size: int = 1 - enable_redaction: bool = False - high_vram: bool = False - kv_cache: bool = True - ar_checkpoint: str = None - clvp_checkpoint: str = None - diff_checkpoint: str = None - num_chars: int = 255 - vocoder: VocType = VocConf.Univnet - - # UnifiedVoice params - ar_max_mel_tokens: int = 604 - ar_max_text_tokens: int = 402 - ar_max_conditioning_inputs: int = 2 - ar_layers: int = 30 - ar_model_dim: int = 1024 - ar_heads: int = 16 - ar_number_text_tokens: int = 255 - ar_start_text_token: int = 255 - ar_checkpointing: bool = False - ar_train_solo_embeddings: bool = False - - # DiffTTS params - diff_model_channels: int = 1024 - diff_num_layers: int = 10 - diff_in_channels: int = 100 - diff_out_channels: int = 200 - diff_in_latent_channels: int = 1024 - diff_in_tokens: int = 8193 - diff_dropout: int = 0 - diff_use_fp16: bool = False - diff_num_heads: int = 16 - diff_layer_drop: int = 0 - diff_unconditioned_percentage: int = 0 - - # clvp params - clvp_dim_text: int = 768 - clvp_dim_speech: int = 768 - clvp_dim_latent: int = 768 - clvp_num_text_tokens: int = 256 - clvp_text_enc_depth: int = 20 - clvp_text_seq_len: int = 350 - clvp_text_heads: int = 12 - clvp_num_speech_tokens: int = 8192 - clvp_speech_enc_depth: int = 20 - clvp_speech_heads: int = 12 - clvp_speech_seq_len: int = 430 - clvp_use_xformers: bool = True - # constants - duration_const: int = 102400 - - -class Tortoise(BaseTTS): - """Tortoise model class. - - Currently only supports inference. - - Examples: - >>> from TTS.tts.configs.tortoise_config import TortoiseConfig - >>> from TTS.tts.models.tortoise import Tortoise - >>> config = TortoiseConfig() - >>> model = Tortoise.inif_from_config(config) - >>> model.load_checkpoint(config, checkpoint_dir="paths/to/models_dir/", eval=True) - """ - - def __init__(self, config: Coqpit): - super().__init__(config, ap=None, tokenizer=None) - self.mel_norm_path = None - self.config = config - self.ar_checkpoint = self.args.ar_checkpoint - self.diff_checkpoint = self.args.diff_checkpoint # TODO: check if this is even needed - self.models_dir = config.model_dir - self.autoregressive_batch_size = ( - pick_best_batch_size_for_gpu() - if self.args.autoregressive_batch_size is None - else self.args.autoregressive_batch_size - ) - self.enable_redaction = self.args.enable_redaction - self.device = torch.device("cuda" if torch.cuda.is_available() else "cpu") - if self.enable_redaction: - self.aligner = Wav2VecAlignment() - - self.tokenizer = VoiceBpeTokenizer() - - self.autoregressive = UnifiedVoice( - max_mel_tokens=self.args.ar_max_mel_tokens, - max_text_tokens=self.args.ar_max_text_tokens, - max_conditioning_inputs=self.args.ar_max_conditioning_inputs, - layers=self.args.ar_layers, - model_dim=self.args.ar_model_dim, - heads=self.args.ar_heads, - number_text_tokens=self.args.ar_number_text_tokens, - start_text_token=self.args.ar_start_text_token, - checkpointing=self.args.ar_checkpointing, - train_solo_embeddings=self.args.ar_train_solo_embeddings, - ).cpu() - - self.diffusion = DiffusionTts( - model_channels=self.args.diff_model_channels, - num_layers=self.args.diff_num_layers, - in_channels=self.args.diff_in_channels, - out_channels=self.args.diff_out_channels, - in_latent_channels=self.args.diff_in_latent_channels, - in_tokens=self.args.diff_in_tokens, - dropout=self.args.diff_dropout, - use_fp16=self.args.diff_use_fp16, - num_heads=self.args.diff_num_heads, - layer_drop=self.args.diff_layer_drop, - unconditioned_percentage=self.args.diff_unconditioned_percentage, - ).cpu() - - self.clvp = CLVP( - dim_text=self.args.clvp_dim_text, - dim_speech=self.args.clvp_dim_speech, - dim_latent=self.args.clvp_dim_latent, - num_text_tokens=self.args.clvp_num_text_tokens, - text_enc_depth=self.args.clvp_text_enc_depth, - text_seq_len=self.args.clvp_text_seq_len, - text_heads=self.args.clvp_text_heads, - num_speech_tokens=self.args.clvp_num_speech_tokens, - speech_enc_depth=self.args.clvp_speech_enc_depth, - speech_heads=self.args.clvp_speech_heads, - speech_seq_len=self.args.clvp_speech_seq_len, - use_xformers=self.args.clvp_use_xformers, - ).cpu() - - self.vocoder = self.args.vocoder.value.constructor().cpu() - - # Random latent generators (RLGs) are loaded lazily. - self.rlg_auto = None - self.rlg_diffusion = None - - if self.args.high_vram: - self.autoregressive = self.autoregressive.to(self.device) - self.diffusion = self.diffusion.to(self.device) - self.clvp = self.clvp.to(self.device) - self.vocoder = self.vocoder.to(self.device) - self.high_vram = self.args.high_vram - - @contextmanager - def temporary_cuda(self, model): - if self.high_vram: - yield model - else: - m = model.to(self.device) - yield m - m = model.cpu() - - def get_conditioning_latents( - self, - voice_samples, - return_mels=False, - latent_averaging_mode=0, - original_tortoise=False, - ): - """ - Transforms one or more voice_samples into a tuple (autoregressive_conditioning_latent, diffusion_conditioning_latent). - These are expressive learned latents that encode aspects of the provided clips like voice, intonation, and acoustic - properties. - :param voice_samples: List of arbitrary reference clips, which should be *pairs* of torch tensors containing arbitrary kHz waveform data. - :param latent_averaging_mode: 0/1/2 for following modes: - 0 - latents will be generated as in original tortoise, using ~4.27s from each voice sample, averaging latent across all samples - 1 - latents will be generated using (almost) entire voice samples, averaged across all the ~4.27s chunks - 2 - latents will be generated using (almost) entire voice samples, averaged per voice sample - """ - assert latent_averaging_mode in [ - 0, - 1, - 2, - ], "latent_averaging mode has to be one of (0, 1, 2)" - - with torch.no_grad(): - voice_samples = [[v.to(self.device) for v in ls] for ls in voice_samples] - - auto_conds = [] - for ls in voice_samples: - auto_conds.append(format_conditioning(ls[0], device=self.device, mel_norm_file=self.mel_norm_path)) - auto_conds = torch.stack(auto_conds, dim=1) - with self.temporary_cuda(self.autoregressive) as ar: - auto_latent = ar.get_conditioning(auto_conds) - - diffusion_conds = [] - - DURS_CONST = self.args.duration_const - for ls in voice_samples: - # The diffuser operates at a sample rate of 24000 (except for the latent inputs) - sample = torchaudio.functional.resample(ls[0], 22050, 24000) if original_tortoise else ls[1] - if latent_averaging_mode == 0: - sample = pad_or_truncate(sample, DURS_CONST) - cond_mel = wav_to_univnet_mel( - sample.to(self.device), - do_normalization=False, - device=self.device, - ) - diffusion_conds.append(cond_mel) - else: - from math import ceil - - if latent_averaging_mode == 2: - temp_diffusion_conds = [] - for chunk in range(ceil(sample.shape[1] / DURS_CONST)): - current_sample = sample[:, chunk * DURS_CONST : (chunk + 1) * DURS_CONST] - current_sample = pad_or_truncate(current_sample, DURS_CONST) - cond_mel = wav_to_univnet_mel( - current_sample.to(self.device), - do_normalization=False, - device=self.device, - ) - if latent_averaging_mode == 1: - diffusion_conds.append(cond_mel) - elif latent_averaging_mode == 2: - temp_diffusion_conds.append(cond_mel) - if latent_averaging_mode == 2: - diffusion_conds.append(torch.stack(temp_diffusion_conds).mean(0)) - diffusion_conds = torch.stack(diffusion_conds, dim=1) - - with self.temporary_cuda(self.diffusion) as diffusion: - diffusion_latent = diffusion.get_conditioning(diffusion_conds) - - if return_mels: - return auto_latent, diffusion_latent, auto_conds, diffusion_conds - return auto_latent, diffusion_latent - - def get_random_conditioning_latents(self): - # Lazy-load the RLG models. - if self.rlg_auto is None: - self.rlg_auto = RandomLatentConverter(1024).eval() - self.rlg_auto.load_state_dict( - torch.load( - os.path.join(self.models_dir, "rlg_auto.pth"), - map_location=torch.device("cpu"), - ) - ) - self.rlg_diffusion = RandomLatentConverter(2048).eval() - self.rlg_diffusion.load_state_dict( - torch.load( - os.path.join(self.models_dir, "rlg_diffuser.pth"), - map_location=torch.device("cpu"), - ) - ) - with torch.no_grad(): - return self.rlg_auto(torch.tensor([0.0])), self.rlg_diffusion(torch.tensor([0.0])) - - def synthesize(self, text, config, speaker_id="random", voice_dirs=None, **kwargs): - """Synthesize speech with the given input text. - - Args: - text (str): Input text. - config (TortoiseConfig): Config with inference parameters. - speaker_id (str): One of the available speaker names. If `random`, it generates a random speaker. - voice_dirs (List[str]): List of paths that host reference audio files for speakers. Defaults to None. - **kwargs: Inference settings. See `inference()`. - - Returns: - A dictionary of the output values with `wav` as output waveform, `deterministic_seed` as seed used at inference, - `text_input` as text token IDs after tokenizer, `voice_samples` as samples used for cloning, `conditioning_latents` - as latents used at inference. - - """ - - speaker_id = "random" if speaker_id is None else speaker_id - - if voice_dirs is not None: - voice_dirs = [voice_dirs] - voice_samples, conditioning_latents = load_voice(speaker_id, voice_dirs) - - else: - voice_samples, conditioning_latents = load_voice(speaker_id) - - outputs = self.inference_with_config( - text, config, voice_samples=voice_samples, conditioning_latents=conditioning_latents, **kwargs - ) - - return_dict = { - "wav": outputs["wav"], - "deterministic_seed": outputs["deterministic_seed"], - "text_inputs": outputs["text"], - "voice_samples": outputs["voice_samples"], - "conditioning_latents": outputs["conditioning_latents"], - } - - return return_dict - - def inference_with_config(self, text, config, **kwargs): - """ - inference with config - #TODO describe in detail - """ - # Use generally found best tuning knobs for generation. - settings = { - "temperature": config.temperature, - "length_penalty": config.length_penalty, - "repetition_penalty": config.repetition_penalty, - "top_p": config.top_p, - "cond_free_k": config.cond_free_k, - "diffusion_temperature": config.diffusion_temperature, - "sampler": config.sampler, - } - # Presets are defined here. - presets = { - "single_sample": { - "num_autoregressive_samples": 8, - "diffusion_iterations": 10, - "sampler": "ddim", - }, - "ultra_fast": { - "num_autoregressive_samples": 16, - "diffusion_iterations": 10, - "sampler": "ddim", - }, - "ultra_fast_old": { - "num_autoregressive_samples": 16, - "diffusion_iterations": 30, - "cond_free": False, - }, - "very_fast": { - "num_autoregressive_samples": 32, - "diffusion_iterations": 30, - "sampler": "dpm++2m", - }, - "fast": { - "num_autoregressive_samples": 5, - "diffusion_iterations": 50, - "sampler": "ddim", - }, - "fast_old": {"num_autoregressive_samples": 96, "diffusion_iterations": 80}, - "standard": { - "num_autoregressive_samples": 5, - "diffusion_iterations": 200, - }, - "high_quality": { - "num_autoregressive_samples": 256, - "diffusion_iterations": 400, - }, - } - if "preset" in kwargs: - settings.update(presets[kwargs["preset"]]) - kwargs.pop("preset") - settings.update(kwargs) # allow overriding of preset settings with kwargs - return self.inference(text, **settings) - - def inference( - self, - text, - voice_samples=None, - conditioning_latents=None, - k=1, - verbose=True, - use_deterministic_seed=None, - return_deterministic_state=False, - latent_averaging_mode=0, - # autoregressive generation parameters follow - num_autoregressive_samples=16, - temperature=0.8, - length_penalty=1, - repetition_penalty=2.0, - top_p=0.8, - max_mel_tokens=500, - # diffusion generation parameters follow - diffusion_iterations=100, - cond_free=True, - cond_free_k=2, - diffusion_temperature=1.0, - sampler="ddim", - half=True, - original_tortoise=False, - **hf_generate_kwargs, - ): - """ - This function produces an audio clip of the given text being spoken with the given reference voice. - - Args: - text: (str) Text to be spoken. - voice_samples: (List[Tuple[torch.Tensor]]) List of an arbitrary number of reference clips, which should be tuple-pairs - of torch tensors containing arbitrary kHz waveform data. - conditioning_latents: (Tuple[autoregressive_conditioning_latent, diffusion_conditioning_latent]) A tuple of - (autoregressive_conditioning_latent, diffusion_conditioning_latent), which can be provided in lieu - of voice_samples. This is ignored unless `voice_samples=None`. Conditioning latents can be retrieved - via `get_conditioning_latents()`. - k: (int) The number of returned clips. The most likely (as determined by Tortoises' CLVP model) clips are returned. - latent_averaging_mode: (int) 0/1/2 for following modes: - 0 - latents will be generated as in original tortoise, using ~4.27s from each voice sample, averaging latent across all samples - 1 - latents will be generated using (almost) entire voice samples, averaged across all the ~4.27s chunks - 2 - latents will be generated using (almost) entire voice samples, averaged per voice sample - verbose: (bool) Whether or not to print log messages indicating the progress of creating a clip. Default=true. - num_autoregressive_samples: (int) Number of samples taken from the autoregressive model, all of which are filtered using CLVP. - As Tortoise is a probabilistic model, more samples means a higher probability of creating something "great". - temperature: (float) The softmax temperature of the autoregressive model. - length_penalty: (float) A length penalty applied to the autoregressive decoder. Higher settings causes the model to produce more terse outputs. - repetition_penalty: (float) A penalty that prevents the autoregressive decoder from repeating itself during decoding. Can be used to reduce - the incidence of long silences or "uhhhhhhs", etc. - top_p: (float) P value used in nucleus sampling. (0,1]. Lower values mean the decoder produces more "likely" (aka boring) outputs. - max_mel_tokens: (int) Restricts the output length. (0,600] integer. Each unit is 1/20 of a second. - typical_sampling: (bool) Turns typical sampling on or off. This sampling mode is discussed in this paper: https://arxiv.org/abs/2202.00666 - I was interested in the premise, but the results were not as good as I was hoping. This is off by default, but could use some tuning. - typical_mass: (float) The typical_mass parameter from the typical_sampling algorithm. - diffusion_iterations: (int) Number of diffusion steps to perform. [0,4000]. More steps means the network has more chances to iteratively - refine the output, which should theoretically mean a higher quality output. Generally a value above 250 is not noticeably better, however. - cond_free: (bool) Whether or not to perform conditioning-free diffusion. Conditioning-free diffusion performs two forward passes for - each diffusion step: one with the outputs of the autoregressive model and one with no conditioning priors. The output of the two - is blended according to the cond_free_k value below. Conditioning-free diffusion is the real deal, and dramatically improves realism. - cond_free_k: (float) Knob that determines how to balance the conditioning free signal with the conditioning-present signal. [0,inf]. - As cond_free_k increases, the output becomes dominated by the conditioning-free signal. - diffusion_temperature: (float) Controls the variance of the noise fed into the diffusion model. [0,1]. Values at 0 - are the "mean" prediction of the diffusion network and will sound bland and smeared. - hf_generate_kwargs: (**kwargs) The huggingface Transformers generate API is used for the autoregressive transformer. - Extra keyword args fed to this function get forwarded directly to that API. Documentation - here: https://huggingface.co/docs/transformers/internal/generation_utils - - Returns: - Generated audio clip(s) as a torch tensor. Shape 1,S if k=1 else, (k,1,S) where S is the sample length. - Sample rate is 24kHz. - """ - deterministic_seed = deterministic_state(seed=use_deterministic_seed) - - text_tokens = torch.IntTensor(self.tokenizer.encode(text)).unsqueeze(0).to(self.device) - text_tokens = F.pad(text_tokens, (0, 1)) # This may not be necessary. - assert ( - text_tokens.shape[-1] < 400 - ), "Too much text provided. Break the text up into separate segments and re-try inference." - - if voice_samples is not None: - ( - auto_conditioning, - diffusion_conditioning, - _, - _, - ) = self.get_conditioning_latents( - voice_samples, - return_mels=True, - latent_averaging_mode=latent_averaging_mode, - original_tortoise=original_tortoise, - ) - elif conditioning_latents is not None: - auto_conditioning, diffusion_conditioning = conditioning_latents - else: - ( - auto_conditioning, - diffusion_conditioning, - ) = self.get_random_conditioning_latents() - auto_conditioning = auto_conditioning.to(self.device) - diffusion_conditioning = diffusion_conditioning.to(self.device) - - diffuser = load_discrete_vocoder_diffuser( - desired_diffusion_steps=diffusion_iterations, cond_free=cond_free, cond_free_k=cond_free_k, sampler=sampler - ) - - # in the case of single_sample, - orig_batch_size = self.autoregressive_batch_size - while num_autoregressive_samples % self.autoregressive_batch_size: - self.autoregressive_batch_size //= 2 - with torch.no_grad(): - samples = [] - num_batches = num_autoregressive_samples // self.autoregressive_batch_size - stop_mel_token = self.autoregressive.stop_mel_token - calm_token = ( - 83 # This is the token for coding silence, which is fixed in place with "fix_autoregressive_output" - ) - self.autoregressive = self.autoregressive.to(self.device) - if verbose: - print("Generating autoregressive samples..") - with self.temporary_cuda(self.autoregressive) as autoregressive, torch.autocast( - device_type="cuda", dtype=torch.float16, enabled=half - ): - for b in tqdm(range(num_batches), disable=not verbose): - codes = autoregressive.inference_speech( - auto_conditioning, - text_tokens, - do_sample=True, - top_p=top_p, - temperature=temperature, - num_return_sequences=self.autoregressive_batch_size, - length_penalty=length_penalty, - repetition_penalty=repetition_penalty, - max_generate_length=max_mel_tokens, - **hf_generate_kwargs, - ) - padding_needed = max_mel_tokens - codes.shape[1] - codes = F.pad(codes, (0, padding_needed), value=stop_mel_token) - samples.append(codes) - self.autoregressive_batch_size = orig_batch_size # in the case of single_sample - - clip_results = [] - with self.temporary_cuda(self.clvp) as clvp, torch.autocast( - device_type="cuda", dtype=torch.float16, enabled=half - ): - for batch in tqdm(samples, disable=not verbose): - for i in range(batch.shape[0]): - batch[i] = fix_autoregressive_output(batch[i], stop_mel_token) - clvp_res = clvp( - text_tokens.repeat(batch.shape[0], 1), - batch, - return_loss=False, - ) - clip_results.append(clvp_res) - - clip_results = torch.cat(clip_results, dim=0) - samples = torch.cat(samples, dim=0) - best_results = samples[torch.topk(clip_results, k=k).indices] - del samples - - # The diffusion model actually wants the last hidden layer from the autoregressive model as conditioning - # inputs. Re-produce those for the top results. This could be made more efficient by storing all of these - # results, but will increase memory usage. - with self.temporary_cuda(self.autoregressive) as autoregressive: - best_latents = autoregressive( - auto_conditioning.repeat(k, 1), - text_tokens.repeat(k, 1), - torch.tensor([text_tokens.shape[-1]], device=text_tokens.device), - best_results, - torch.tensor( - [best_results.shape[-1] * self.autoregressive.mel_length_compression], - device=text_tokens.device, - ), - return_latent=True, - clip_inputs=False, - ) - del auto_conditioning - - if verbose: - print("Transforming autoregressive outputs into audio..") - wav_candidates = [] - for b in range(best_results.shape[0]): - codes = best_results[b].unsqueeze(0) - latents = best_latents[b].unsqueeze(0) - - # Find the first occurrence of the "calm" token and trim the codes to that. - ctokens = 0 - for code in range(codes.shape[-1]): - if codes[0, code] == calm_token: - ctokens += 1 - else: - ctokens = 0 - if ctokens > 8: # 8 tokens gives the diffusion model some "breathing room" to terminate speech. - latents = latents[:, :code] - break - with self.temporary_cuda(self.diffusion) as diffusion: - mel = do_spectrogram_diffusion( - diffusion, - diffuser, - latents, - diffusion_conditioning, - temperature=diffusion_temperature, - verbose=verbose, - ) - with self.temporary_cuda(self.vocoder) as vocoder: - wav = vocoder.inference(mel) - wav_candidates.append(wav.cpu()) - - def potentially_redact(clip, text): - if self.enable_redaction: - return self.aligner.redact(clip.squeeze(1), text).unsqueeze(1) - return clip - - wav_candidates = [potentially_redact(wav_candidate, text) for wav_candidate in wav_candidates] - - if len(wav_candidates) > 1: - res = wav_candidates - else: - res = wav_candidates[0] - - return_dict = { - "wav": res, - "deterministic_seed": None, - "text": None, - "voice_samples": None, - "conditioning_latents": None, - } - if return_deterministic_state: - return_dict = { - "wav": res, - "deterministic_seed": deterministic_seed, - "text": text, - "voice_samples": voice_samples, - "conditioning_latents": conditioning_latents, - } - return return_dict - - def forward(self): - raise NotImplementedError("Tortoise Training is not implemented") - - def eval_step(self): - raise NotImplementedError("Tortoise Training is not implemented") - - @staticmethod - def init_from_config(config: "TortoiseConfig", **kwargs): # pylint: disable=unused-argument - return Tortoise(config) - - def load_checkpoint( - self, - config, - checkpoint_dir, - ar_checkpoint_path=None, - diff_checkpoint_path=None, - clvp_checkpoint_path=None, - vocoder_checkpoint_path=None, - eval=False, - strict=True, - **kwargs, - ): # pylint: disable=unused-argument, redefined-builtin - """Load a model checkpoints from a directory. This model is with multiple checkpoint files and it - expects to have all the files to be under the given `checkpoint_dir` with the rigth names. - If eval is True, set the model to eval mode. - - Args: - config (TortoiseConfig): The model config. - checkpoint_dir (str): The directory where the checkpoints are stored. - ar_checkpoint_path (str, optional): The path to the autoregressive checkpoint. Defaults to None. - diff_checkpoint_path (str, optional): The path to the diffusion checkpoint. Defaults to None. - clvp_checkpoint_path (str, optional): The path to the CLVP checkpoint. Defaults to None. - vocoder_checkpoint_path (str, optional): The path to the vocoder checkpoint. Defaults to None. - eval (bool, optional): Whether to set the model to eval mode. Defaults to False. - strict (bool, optional): Whether to load the model strictly. Defaults to True. - """ - if self.models_dir is None: - self.models_dir = checkpoint_dir - ar_path = ar_checkpoint_path or os.path.join(checkpoint_dir, "autoregressive.pth") - diff_path = diff_checkpoint_path or os.path.join(checkpoint_dir, "diffusion_decoder.pth") - clvp_path = clvp_checkpoint_path or os.path.join(checkpoint_dir, "clvp2.pth") - vocoder_checkpoint_path = vocoder_checkpoint_path or os.path.join(checkpoint_dir, "vocoder.pth") - self.mel_norm_path = os.path.join(checkpoint_dir, "mel_norms.pth") - - if os.path.exists(ar_path): - # remove keys from the checkpoint that are not in the model - checkpoint = torch.load(ar_path, map_location=torch.device("cpu")) - - # strict set False - # due to removed `bias` and `masked_bias` changes in Transformers - self.autoregressive.load_state_dict(checkpoint, strict=False) - - if os.path.exists(diff_path): - self.diffusion.load_state_dict(torch.load(diff_path), strict=strict) - - if os.path.exists(clvp_path): - self.clvp.load_state_dict(torch.load(clvp_path), strict=strict) - - if os.path.exists(vocoder_checkpoint_path): - self.vocoder.load_state_dict( - config.model_args.vocoder.value.optionally_index( - torch.load( - vocoder_checkpoint_path, - map_location=torch.device("cpu"), - ) - ) - ) - - if eval: - self.autoregressive.post_init_gpt2_config(self.args.kv_cache) - self.autoregressive.eval() - self.diffusion.eval() - self.clvp.eval() - self.vocoder.eval() - - def train_step(self): - raise NotImplementedError("Tortoise Training is not implemented") diff --git a/TTS/tts/models/vits.py b/TTS/tts/models/vits.py deleted file mode 100644 index d9b1f59618ab7e0ebc4cabc9a9ac40fdb9843d99..0000000000000000000000000000000000000000 --- a/TTS/tts/models/vits.py +++ /dev/null @@ -1,1999 +0,0 @@ -import math -import os -from dataclasses import dataclass, field, replace -from itertools import chain -from typing import Dict, List, Tuple, Union - -import numpy as np -import torch -import torch.distributed as dist -import torchaudio -from coqpit import Coqpit -from librosa.filters import mel as librosa_mel_fn -from torch import nn -from torch.cuda.amp.autocast_mode import autocast -from torch.nn import functional as F -from torch.utils.data import DataLoader -from torch.utils.data.sampler import WeightedRandomSampler -from trainer.torch import DistributedSampler, DistributedSamplerWrapper -from trainer.trainer_utils import get_optimizer, get_scheduler - -from TTS.tts.configs.shared_configs import CharactersConfig -from TTS.tts.datasets.dataset import TTSDataset, _parse_sample -from TTS.tts.layers.glow_tts.duration_predictor import DurationPredictor -from TTS.tts.layers.vits.discriminator import VitsDiscriminator -from TTS.tts.layers.vits.networks import PosteriorEncoder, ResidualCouplingBlocks, TextEncoder -from TTS.tts.layers.vits.stochastic_duration_predictor import StochasticDurationPredictor -from TTS.tts.models.base_tts import BaseTTS -from TTS.tts.utils.fairseq import rehash_fairseq_vits_checkpoint -from TTS.tts.utils.helpers import generate_path, maximum_path, rand_segments, segment, sequence_mask -from TTS.tts.utils.languages import LanguageManager -from TTS.tts.utils.speakers import SpeakerManager -from TTS.tts.utils.synthesis import synthesis -from TTS.tts.utils.text.characters import BaseCharacters, BaseVocabulary, _characters, _pad, _phonemes, _punctuations -from TTS.tts.utils.text.tokenizer import TTSTokenizer -from TTS.tts.utils.visual import plot_alignment -from TTS.utils.io import load_fsspec -from TTS.utils.samplers import BucketBatchSampler -from TTS.vocoder.models.hifigan_generator import HifiganGenerator -from TTS.vocoder.utils.generic_utils import plot_results - -############################## -# IO / Feature extraction -############################## - -# pylint: disable=global-statement -hann_window = {} -mel_basis = {} - - -@torch.no_grad() -def weights_reset(m: nn.Module): - # check if the current module has reset_parameters and if it is reset the weight - reset_parameters = getattr(m, "reset_parameters", None) - if callable(reset_parameters): - m.reset_parameters() - - -def get_module_weights_sum(mdl: nn.Module): - dict_sums = {} - for name, w in mdl.named_parameters(): - if "weight" in name: - value = w.data.sum().item() - dict_sums[name] = value - return dict_sums - - -def load_audio(file_path): - """Load the audio file normalized in [-1, 1] - - Return Shapes: - - x: :math:`[1, T]` - """ - x, sr = torchaudio.load(file_path) - assert (x > 1).sum() + (x < -1).sum() == 0 - return x, sr - - -def _amp_to_db(x, C=1, clip_val=1e-5): - return torch.log(torch.clamp(x, min=clip_val) * C) - - -def _db_to_amp(x, C=1): - return torch.exp(x) / C - - -def amp_to_db(magnitudes): - output = _amp_to_db(magnitudes) - return output - - -def db_to_amp(magnitudes): - output = _db_to_amp(magnitudes) - return output - - -def wav_to_spec(y, n_fft, hop_length, win_length, center=False): - """ - Args Shapes: - - y : :math:`[B, 1, T]` - - Return Shapes: - - spec : :math:`[B,C,T]` - """ - y = y.squeeze(1) - - if torch.min(y) < -1.0: - print("min value is ", torch.min(y)) - if torch.max(y) > 1.0: - print("max value is ", torch.max(y)) - - global hann_window - dtype_device = str(y.dtype) + "_" + str(y.device) - wnsize_dtype_device = str(win_length) + "_" + dtype_device - if wnsize_dtype_device not in hann_window: - hann_window[wnsize_dtype_device] = torch.hann_window(win_length).to(dtype=y.dtype, device=y.device) - - y = torch.nn.functional.pad( - y.unsqueeze(1), - (int((n_fft - hop_length) / 2), int((n_fft - hop_length) / 2)), - mode="reflect", - ) - y = y.squeeze(1) - - spec = torch.stft( - y, - n_fft, - hop_length=hop_length, - win_length=win_length, - window=hann_window[wnsize_dtype_device], - center=center, - pad_mode="reflect", - normalized=False, - onesided=True, - return_complex=False, - ) - - spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) - return spec - - -def spec_to_mel(spec, n_fft, num_mels, sample_rate, fmin, fmax): - """ - Args Shapes: - - spec : :math:`[B,C,T]` - - Return Shapes: - - mel : :math:`[B,C,T]` - """ - global mel_basis - dtype_device = str(spec.dtype) + "_" + str(spec.device) - fmax_dtype_device = str(fmax) + "_" + dtype_device - if fmax_dtype_device not in mel_basis: - mel = librosa_mel_fn(sr=sample_rate, n_fft=n_fft, n_mels=num_mels, fmin=fmin, fmax=fmax) - mel_basis[fmax_dtype_device] = torch.from_numpy(mel).to(dtype=spec.dtype, device=spec.device) - mel = torch.matmul(mel_basis[fmax_dtype_device], spec) - mel = amp_to_db(mel) - return mel - - -def wav_to_mel(y, n_fft, num_mels, sample_rate, hop_length, win_length, fmin, fmax, center=False): - """ - Args Shapes: - - y : :math:`[B, 1, T]` - - Return Shapes: - - spec : :math:`[B,C,T]` - """ - y = y.squeeze(1) - - if torch.min(y) < -1.0: - print("min value is ", torch.min(y)) - if torch.max(y) > 1.0: - print("max value is ", torch.max(y)) - - global mel_basis, hann_window - dtype_device = str(y.dtype) + "_" + str(y.device) - fmax_dtype_device = str(fmax) + "_" + dtype_device - wnsize_dtype_device = str(win_length) + "_" + dtype_device - if fmax_dtype_device not in mel_basis: - mel = librosa_mel_fn(sr=sample_rate, n_fft=n_fft, n_mels=num_mels, fmin=fmin, fmax=fmax) - mel_basis[fmax_dtype_device] = torch.from_numpy(mel).to(dtype=y.dtype, device=y.device) - if wnsize_dtype_device not in hann_window: - hann_window[wnsize_dtype_device] = torch.hann_window(win_length).to(dtype=y.dtype, device=y.device) - - y = torch.nn.functional.pad( - y.unsqueeze(1), - (int((n_fft - hop_length) / 2), int((n_fft - hop_length) / 2)), - mode="reflect", - ) - y = y.squeeze(1) - - spec = torch.stft( - y, - n_fft, - hop_length=hop_length, - win_length=win_length, - window=hann_window[wnsize_dtype_device], - center=center, - pad_mode="reflect", - normalized=False, - onesided=True, - return_complex=False, - ) - - spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) - spec = torch.matmul(mel_basis[fmax_dtype_device], spec) - spec = amp_to_db(spec) - return spec - - -############################# -# CONFIGS -############################# - - -@dataclass -class VitsAudioConfig(Coqpit): - fft_size: int = 1024 - sample_rate: int = 22050 - win_length: int = 1024 - hop_length: int = 256 - num_mels: int = 80 - mel_fmin: int = 0 - mel_fmax: int = None - - -############################## -# DATASET -############################## - - -def get_attribute_balancer_weights(items: list, attr_name: str, multi_dict: dict = None): - """Create inverse frequency weights for balancing the dataset. - Use `multi_dict` to scale relative weights.""" - attr_names_samples = np.array([item[attr_name] for item in items]) - unique_attr_names = np.unique(attr_names_samples).tolist() - attr_idx = [unique_attr_names.index(l) for l in attr_names_samples] - attr_count = np.array([len(np.where(attr_names_samples == l)[0]) for l in unique_attr_names]) - weight_attr = 1.0 / attr_count - dataset_samples_weight = np.array([weight_attr[l] for l in attr_idx]) - dataset_samples_weight = dataset_samples_weight / np.linalg.norm(dataset_samples_weight) - if multi_dict is not None: - # check if all keys are in the multi_dict - for k in multi_dict: - assert k in unique_attr_names, f"{k} not in {unique_attr_names}" - # scale weights - multiplier_samples = np.array([multi_dict.get(item[attr_name], 1.0) for item in items]) - dataset_samples_weight *= multiplier_samples - return ( - torch.from_numpy(dataset_samples_weight).float(), - unique_attr_names, - np.unique(dataset_samples_weight).tolist(), - ) - - -class VitsDataset(TTSDataset): - def __init__(self, model_args, *args, **kwargs): - super().__init__(*args, **kwargs) - self.pad_id = self.tokenizer.characters.pad_id - self.model_args = model_args - - def __getitem__(self, idx): - item = self.samples[idx] - raw_text = item["text"] - - wav, _ = load_audio(item["audio_file"]) - if self.model_args.encoder_sample_rate is not None: - if wav.size(1) % self.model_args.encoder_sample_rate != 0: - wav = wav[:, : -int(wav.size(1) % self.model_args.encoder_sample_rate)] - - wav_filename = os.path.basename(item["audio_file"]) - - token_ids = self.get_token_ids(idx, item["text"]) - - # after phonemization the text length may change - # this is a shameful 🤭 hack to prevent longer phonemes - # TODO: find a better fix - if len(token_ids) > self.max_text_len or wav.shape[1] < self.min_audio_len: - self.rescue_item_idx += 1 - return self.__getitem__(self.rescue_item_idx) - - return { - "raw_text": raw_text, - "token_ids": token_ids, - "token_len": len(token_ids), - "wav": wav, - "wav_file": wav_filename, - "speaker_name": item["speaker_name"], - "language_name": item["language"], - "audio_unique_name": item["audio_unique_name"], - } - - @property - def lengths(self): - lens = [] - for item in self.samples: - _, wav_file, *_ = _parse_sample(item) - audio_len = os.path.getsize(wav_file) / 16 * 8 # assuming 16bit audio - lens.append(audio_len) - return lens - - def collate_fn(self, batch): - """ - Return Shapes: - - tokens: :math:`[B, T]` - - token_lens :math:`[B]` - - token_rel_lens :math:`[B]` - - waveform: :math:`[B, 1, T]` - - waveform_lens: :math:`[B]` - - waveform_rel_lens: :math:`[B]` - - speaker_names: :math:`[B]` - - language_names: :math:`[B]` - - audiofile_paths: :math:`[B]` - - raw_texts: :math:`[B]` - - audio_unique_names: :math:`[B]` - """ - # convert list of dicts to dict of lists - B = len(batch) - batch = {k: [dic[k] for dic in batch] for k in batch[0]} - - _, ids_sorted_decreasing = torch.sort( - torch.LongTensor([x.size(1) for x in batch["wav"]]), dim=0, descending=True - ) - - max_text_len = max([len(x) for x in batch["token_ids"]]) - token_lens = torch.LongTensor(batch["token_len"]) - token_rel_lens = token_lens / token_lens.max() - - wav_lens = [w.shape[1] for w in batch["wav"]] - wav_lens = torch.LongTensor(wav_lens) - wav_lens_max = torch.max(wav_lens) - wav_rel_lens = wav_lens / wav_lens_max - - token_padded = torch.LongTensor(B, max_text_len) - wav_padded = torch.FloatTensor(B, 1, wav_lens_max) - token_padded = token_padded.zero_() + self.pad_id - wav_padded = wav_padded.zero_() + self.pad_id - for i in range(len(ids_sorted_decreasing)): - token_ids = batch["token_ids"][i] - token_padded[i, : batch["token_len"][i]] = torch.LongTensor(token_ids) - - wav = batch["wav"][i] - wav_padded[i, :, : wav.size(1)] = torch.FloatTensor(wav) - - return { - "tokens": token_padded, - "token_lens": token_lens, - "token_rel_lens": token_rel_lens, - "waveform": wav_padded, # (B x T) - "waveform_lens": wav_lens, # (B) - "waveform_rel_lens": wav_rel_lens, - "speaker_names": batch["speaker_name"], - "language_names": batch["language_name"], - "audio_files": batch["wav_file"], - "raw_text": batch["raw_text"], - "audio_unique_names": batch["audio_unique_name"], - } - - -############################## -# MODEL DEFINITION -############################## - - -@dataclass -class VitsArgs(Coqpit): - """VITS model arguments. - - Args: - - num_chars (int): - Number of characters in the vocabulary. Defaults to 100. - - out_channels (int): - Number of output channels of the decoder. Defaults to 513. - - spec_segment_size (int): - Decoder input segment size. Defaults to 32 `(32 * hoplength = waveform length)`. - - hidden_channels (int): - Number of hidden channels of the model. Defaults to 192. - - hidden_channels_ffn_text_encoder (int): - Number of hidden channels of the feed-forward layers of the text encoder transformer. Defaults to 256. - - num_heads_text_encoder (int): - Number of attention heads of the text encoder transformer. Defaults to 2. - - num_layers_text_encoder (int): - Number of transformer layers in the text encoder. Defaults to 6. - - kernel_size_text_encoder (int): - Kernel size of the text encoder transformer FFN layers. Defaults to 3. - - dropout_p_text_encoder (float): - Dropout rate of the text encoder. Defaults to 0.1. - - dropout_p_duration_predictor (float): - Dropout rate of the duration predictor. Defaults to 0.1. - - kernel_size_posterior_encoder (int): - Kernel size of the posterior encoder's WaveNet layers. Defaults to 5. - - dilatation_posterior_encoder (int): - Dilation rate of the posterior encoder's WaveNet layers. Defaults to 1. - - num_layers_posterior_encoder (int): - Number of posterior encoder's WaveNet layers. Defaults to 16. - - kernel_size_flow (int): - Kernel size of the Residual Coupling layers of the flow network. Defaults to 5. - - dilatation_flow (int): - Dilation rate of the Residual Coupling WaveNet layers of the flow network. Defaults to 1. - - num_layers_flow (int): - Number of Residual Coupling WaveNet layers of the flow network. Defaults to 6. - - resblock_type_decoder (str): - Type of the residual block in the decoder network. Defaults to "1". - - resblock_kernel_sizes_decoder (List[int]): - Kernel sizes of the residual blocks in the decoder network. Defaults to `[3, 7, 11]`. - - resblock_dilation_sizes_decoder (List[List[int]]): - Dilation sizes of the residual blocks in the decoder network. Defaults to `[[1, 3, 5], [1, 3, 5], [1, 3, 5]]`. - - upsample_rates_decoder (List[int]): - Upsampling rates for each concecutive upsampling layer in the decoder network. The multiply of these - values must be equal to the kop length used for computing spectrograms. Defaults to `[8, 8, 2, 2]`. - - upsample_initial_channel_decoder (int): - Number of hidden channels of the first upsampling convolution layer of the decoder network. Defaults to 512. - - upsample_kernel_sizes_decoder (List[int]): - Kernel sizes for each upsampling layer of the decoder network. Defaults to `[16, 16, 4, 4]`. - - periods_multi_period_discriminator (List[int]): - Periods values for Vits Multi-Period Discriminator. Defaults to `[2, 3, 5, 7, 11]`. - - use_sdp (bool): - Use Stochastic Duration Predictor. Defaults to True. - - noise_scale (float): - Noise scale used for the sample noise tensor in training. Defaults to 1.0. - - inference_noise_scale (float): - Noise scale used for the sample noise tensor in inference. Defaults to 0.667. - - length_scale (float): - Scale factor for the predicted duration values. Smaller values result faster speech. Defaults to 1. - - noise_scale_dp (float): - Noise scale used by the Stochastic Duration Predictor sample noise in training. Defaults to 1.0. - - inference_noise_scale_dp (float): - Noise scale for the Stochastic Duration Predictor in inference. Defaults to 0.8. - - max_inference_len (int): - Maximum inference length to limit the memory use. Defaults to None. - - init_discriminator (bool): - Initialize the disciminator network if set True. Set False for inference. Defaults to True. - - use_spectral_norm_disriminator (bool): - Use spectral normalization over weight norm in the discriminator. Defaults to False. - - use_speaker_embedding (bool): - Enable/Disable speaker embedding for multi-speaker models. Defaults to False. - - num_speakers (int): - Number of speakers for the speaker embedding layer. Defaults to 0. - - speakers_file (str): - Path to the speaker mapping file for the Speaker Manager. Defaults to None. - - speaker_embedding_channels (int): - Number of speaker embedding channels. Defaults to 256. - - use_d_vector_file (bool): - Enable/Disable the use of d-vectors for multi-speaker training. Defaults to False. - - d_vector_file (List[str]): - List of paths to the files including pre-computed speaker embeddings. Defaults to None. - - d_vector_dim (int): - Number of d-vector channels. Defaults to 0. - - detach_dp_input (bool): - Detach duration predictor's input from the network for stopping the gradients. Defaults to True. - - use_language_embedding (bool): - Enable/Disable language embedding for multilingual models. Defaults to False. - - embedded_language_dim (int): - Number of language embedding channels. Defaults to 4. - - num_languages (int): - Number of languages for the language embedding layer. Defaults to 0. - - language_ids_file (str): - Path to the language mapping file for the Language Manager. Defaults to None. - - use_speaker_encoder_as_loss (bool): - Enable/Disable Speaker Consistency Loss (SCL). Defaults to False. - - speaker_encoder_config_path (str): - Path to the file speaker encoder config file, to use for SCL. Defaults to "". - - speaker_encoder_model_path (str): - Path to the file speaker encoder checkpoint file, to use for SCL. Defaults to "". - - condition_dp_on_speaker (bool): - Condition the duration predictor on the speaker embedding. Defaults to True. - - freeze_encoder (bool): - Freeze the encoder weigths during training. Defaults to False. - - freeze_DP (bool): - Freeze the duration predictor weigths during training. Defaults to False. - - freeze_PE (bool): - Freeze the posterior encoder weigths during training. Defaults to False. - - freeze_flow_encoder (bool): - Freeze the flow encoder weigths during training. Defaults to False. - - freeze_waveform_decoder (bool): - Freeze the waveform decoder weigths during training. Defaults to False. - - encoder_sample_rate (int): - If not None this sample rate will be used for training the Posterior Encoder, - flow, text_encoder and duration predictor. The decoder part (vocoder) will be - trained with the `config.audio.sample_rate`. Defaults to None. - - interpolate_z (bool): - If `encoder_sample_rate` not None and this parameter True the nearest interpolation - will be used to upsampling the latent variable z with the sampling rate `encoder_sample_rate` - to the `config.audio.sample_rate`. If it is False you will need to add extra - `upsample_rates_decoder` to match the shape. Defaults to True. - - """ - - num_chars: int = 100 - out_channels: int = 513 - spec_segment_size: int = 32 - hidden_channels: int = 192 - hidden_channels_ffn_text_encoder: int = 768 - num_heads_text_encoder: int = 2 - num_layers_text_encoder: int = 6 - kernel_size_text_encoder: int = 3 - dropout_p_text_encoder: float = 0.1 - dropout_p_duration_predictor: float = 0.5 - kernel_size_posterior_encoder: int = 5 - dilation_rate_posterior_encoder: int = 1 - num_layers_posterior_encoder: int = 16 - kernel_size_flow: int = 5 - dilation_rate_flow: int = 1 - num_layers_flow: int = 4 - resblock_type_decoder: str = "1" - resblock_kernel_sizes_decoder: List[int] = field(default_factory=lambda: [3, 7, 11]) - resblock_dilation_sizes_decoder: List[List[int]] = field(default_factory=lambda: [[1, 3, 5], [1, 3, 5], [1, 3, 5]]) - upsample_rates_decoder: List[int] = field(default_factory=lambda: [8, 8, 2, 2]) - upsample_initial_channel_decoder: int = 512 - upsample_kernel_sizes_decoder: List[int] = field(default_factory=lambda: [16, 16, 4, 4]) - periods_multi_period_discriminator: List[int] = field(default_factory=lambda: [2, 3, 5, 7, 11]) - use_sdp: bool = True - noise_scale: float = 1.0 - inference_noise_scale: float = 0.667 - length_scale: float = 1 - noise_scale_dp: float = 1.0 - inference_noise_scale_dp: float = 1.0 - max_inference_len: int = None - init_discriminator: bool = True - use_spectral_norm_disriminator: bool = False - use_speaker_embedding: bool = False - num_speakers: int = 0 - speakers_file: str = None - d_vector_file: List[str] = None - speaker_embedding_channels: int = 256 - use_d_vector_file: bool = False - d_vector_dim: int = 0 - detach_dp_input: bool = True - use_language_embedding: bool = False - embedded_language_dim: int = 4 - num_languages: int = 0 - language_ids_file: str = None - use_speaker_encoder_as_loss: bool = False - speaker_encoder_config_path: str = "" - speaker_encoder_model_path: str = "" - condition_dp_on_speaker: bool = True - freeze_encoder: bool = False - freeze_DP: bool = False - freeze_PE: bool = False - freeze_flow_decoder: bool = False - freeze_waveform_decoder: bool = False - encoder_sample_rate: int = None - interpolate_z: bool = True - reinit_DP: bool = False - reinit_text_encoder: bool = False - - -class Vits(BaseTTS): - """VITS TTS model - - Paper:: - https://arxiv.org/pdf/2106.06103.pdf - - Paper Abstract:: - Several recent end-to-end text-to-speech (TTS) models enabling single-stage training and parallel - sampling have been proposed, but their sample quality does not match that of two-stage TTS systems. - In this work, we present a parallel endto-end TTS method that generates more natural sounding audio than - current two-stage models. Our method adopts variational inference augmented with normalizing flows and - an adversarial training process, which improves the expressive power of generative modeling. We also propose a - stochastic duration predictor to synthesize speech with diverse rhythms from input text. With the - uncertainty modeling over latent variables and the stochastic duration predictor, our method expresses the - natural one-to-many relationship in which a text input can be spoken in multiple ways - with different pitches and rhythms. A subjective human evaluation (mean opinion score, or MOS) - on the LJ Speech, a single speaker dataset, shows that our method outperforms the best publicly - available TTS systems and achieves a MOS comparable to ground truth. - - Check :class:`TTS.tts.configs.vits_config.VitsConfig` for class arguments. - - Examples: - >>> from TTS.tts.configs.vits_config import VitsConfig - >>> from TTS.tts.models.vits import Vits - >>> config = VitsConfig() - >>> model = Vits(config) - """ - - def __init__( - self, - config: Coqpit, - ap: "AudioProcessor" = None, - tokenizer: "TTSTokenizer" = None, - speaker_manager: SpeakerManager = None, - language_manager: LanguageManager = None, - ): - super().__init__(config, ap, tokenizer, speaker_manager, language_manager) - - self.init_multispeaker(config) - self.init_multilingual(config) - self.init_upsampling() - - self.length_scale = self.args.length_scale - self.noise_scale = self.args.noise_scale - self.inference_noise_scale = self.args.inference_noise_scale - self.inference_noise_scale_dp = self.args.inference_noise_scale_dp - self.noise_scale_dp = self.args.noise_scale_dp - self.max_inference_len = self.args.max_inference_len - self.spec_segment_size = self.args.spec_segment_size - - self.text_encoder = TextEncoder( - self.args.num_chars, - self.args.hidden_channels, - self.args.hidden_channels, - self.args.hidden_channels_ffn_text_encoder, - self.args.num_heads_text_encoder, - self.args.num_layers_text_encoder, - self.args.kernel_size_text_encoder, - self.args.dropout_p_text_encoder, - language_emb_dim=self.embedded_language_dim, - ) - - self.posterior_encoder = PosteriorEncoder( - self.args.out_channels, - self.args.hidden_channels, - self.args.hidden_channels, - kernel_size=self.args.kernel_size_posterior_encoder, - dilation_rate=self.args.dilation_rate_posterior_encoder, - num_layers=self.args.num_layers_posterior_encoder, - cond_channels=self.embedded_speaker_dim, - ) - - self.flow = ResidualCouplingBlocks( - self.args.hidden_channels, - self.args.hidden_channels, - kernel_size=self.args.kernel_size_flow, - dilation_rate=self.args.dilation_rate_flow, - num_layers=self.args.num_layers_flow, - cond_channels=self.embedded_speaker_dim, - ) - - if self.args.use_sdp: - self.duration_predictor = StochasticDurationPredictor( - self.args.hidden_channels, - 192, - 3, - self.args.dropout_p_duration_predictor, - 4, - cond_channels=self.embedded_speaker_dim if self.args.condition_dp_on_speaker else 0, - language_emb_dim=self.embedded_language_dim, - ) - else: - self.duration_predictor = DurationPredictor( - self.args.hidden_channels, - 256, - 3, - self.args.dropout_p_duration_predictor, - cond_channels=self.embedded_speaker_dim, - language_emb_dim=self.embedded_language_dim, - ) - - self.waveform_decoder = HifiganGenerator( - self.args.hidden_channels, - 1, - self.args.resblock_type_decoder, - self.args.resblock_dilation_sizes_decoder, - self.args.resblock_kernel_sizes_decoder, - self.args.upsample_kernel_sizes_decoder, - self.args.upsample_initial_channel_decoder, - self.args.upsample_rates_decoder, - inference_padding=0, - cond_channels=self.embedded_speaker_dim, - conv_pre_weight_norm=False, - conv_post_weight_norm=False, - conv_post_bias=False, - ) - - if self.args.init_discriminator: - self.disc = VitsDiscriminator( - periods=self.args.periods_multi_period_discriminator, - use_spectral_norm=self.args.use_spectral_norm_disriminator, - ) - - @property - def device(self): - return next(self.parameters()).device - - def init_multispeaker(self, config: Coqpit): - """Initialize multi-speaker modules of a model. A model can be trained either with a speaker embedding layer - or with external `d_vectors` computed from a speaker encoder model. - - You must provide a `speaker_manager` at initialization to set up the multi-speaker modules. - - Args: - config (Coqpit): Model configuration. - data (List, optional): Dataset items to infer number of speakers. Defaults to None. - """ - self.embedded_speaker_dim = 0 - self.num_speakers = self.args.num_speakers - self.audio_transform = None - - if self.speaker_manager: - self.num_speakers = self.speaker_manager.num_speakers - - if self.args.use_speaker_embedding: - self._init_speaker_embedding() - - if self.args.use_d_vector_file: - self._init_d_vector() - - # TODO: make this a function - if self.args.use_speaker_encoder_as_loss: - if self.speaker_manager.encoder is None and ( - not self.args.speaker_encoder_model_path or not self.args.speaker_encoder_config_path - ): - raise RuntimeError( - " [!] To use the speaker consistency loss (SCL) you need to specify speaker_encoder_model_path and speaker_encoder_config_path !!" - ) - - self.speaker_manager.encoder.eval() - print(" > External Speaker Encoder Loaded !!") - - if ( - hasattr(self.speaker_manager.encoder, "audio_config") - and self.config.audio.sample_rate != self.speaker_manager.encoder.audio_config["sample_rate"] - ): - self.audio_transform = torchaudio.transforms.Resample( - orig_freq=self.config.audio.sample_rate, - new_freq=self.speaker_manager.encoder.audio_config["sample_rate"], - ) - - def _init_speaker_embedding(self): - # pylint: disable=attribute-defined-outside-init - if self.num_speakers > 0: - print(" > initialization of speaker-embedding layers.") - self.embedded_speaker_dim = self.args.speaker_embedding_channels - self.emb_g = nn.Embedding(self.num_speakers, self.embedded_speaker_dim) - - def _init_d_vector(self): - # pylint: disable=attribute-defined-outside-init - if hasattr(self, "emb_g"): - raise ValueError("[!] Speaker embedding layer already initialized before d_vector settings.") - self.embedded_speaker_dim = self.args.d_vector_dim - - def init_multilingual(self, config: Coqpit): - """Initialize multilingual modules of a model. - - Args: - config (Coqpit): Model configuration. - """ - if self.args.language_ids_file is not None: - self.language_manager = LanguageManager(language_ids_file_path=config.language_ids_file) - - if self.args.use_language_embedding and self.language_manager: - print(" > initialization of language-embedding layers.") - self.num_languages = self.language_manager.num_languages - self.embedded_language_dim = self.args.embedded_language_dim - self.emb_l = nn.Embedding(self.num_languages, self.embedded_language_dim) - torch.nn.init.xavier_uniform_(self.emb_l.weight) - else: - self.embedded_language_dim = 0 - - def init_upsampling(self): - """ - Initialize upsampling modules of a model. - """ - if self.args.encoder_sample_rate: - self.interpolate_factor = self.config.audio["sample_rate"] / self.args.encoder_sample_rate - self.audio_resampler = torchaudio.transforms.Resample( - orig_freq=self.config.audio["sample_rate"], new_freq=self.args.encoder_sample_rate - ) # pylint: disable=W0201 - - def on_epoch_start(self, trainer): # pylint: disable=W0613 - """Freeze layers at the beginning of an epoch""" - self._freeze_layers() - # set the device of speaker encoder - if self.args.use_speaker_encoder_as_loss: - self.speaker_manager.encoder = self.speaker_manager.encoder.to(self.device) - - def on_init_end(self, trainer): # pylint: disable=W0613 - """Reinit layes if needed""" - if self.args.reinit_DP: - before_dict = get_module_weights_sum(self.duration_predictor) - # Applies weights_reset recursively to every submodule of the duration predictor - self.duration_predictor.apply(fn=weights_reset) - after_dict = get_module_weights_sum(self.duration_predictor) - for key, value in after_dict.items(): - if value == before_dict[key]: - raise RuntimeError(" [!] The weights of Duration Predictor was not reinit check it !") - print(" > Duration Predictor was reinit.") - - if self.args.reinit_text_encoder: - before_dict = get_module_weights_sum(self.text_encoder) - # Applies weights_reset recursively to every submodule of the duration predictor - self.text_encoder.apply(fn=weights_reset) - after_dict = get_module_weights_sum(self.text_encoder) - for key, value in after_dict.items(): - if value == before_dict[key]: - raise RuntimeError(" [!] The weights of Text Encoder was not reinit check it !") - print(" > Text Encoder was reinit.") - - def get_aux_input(self, aux_input: Dict): - sid, g, lid, _ = self._set_cond_input(aux_input) - return {"speaker_ids": sid, "style_wav": None, "d_vectors": g, "language_ids": lid} - - def _freeze_layers(self): - if self.args.freeze_encoder: - for param in self.text_encoder.parameters(): - param.requires_grad = False - - if hasattr(self, "emb_l"): - for param in self.emb_l.parameters(): - param.requires_grad = False - - if self.args.freeze_PE: - for param in self.posterior_encoder.parameters(): - param.requires_grad = False - - if self.args.freeze_DP: - for param in self.duration_predictor.parameters(): - param.requires_grad = False - - if self.args.freeze_flow_decoder: - for param in self.flow.parameters(): - param.requires_grad = False - - if self.args.freeze_waveform_decoder: - for param in self.waveform_decoder.parameters(): - param.requires_grad = False - - @staticmethod - def _set_cond_input(aux_input: Dict): - """Set the speaker conditioning input based on the multi-speaker mode.""" - sid, g, lid, durations = None, None, None, None - if "speaker_ids" in aux_input and aux_input["speaker_ids"] is not None: - sid = aux_input["speaker_ids"] - if sid.ndim == 0: - sid = sid.unsqueeze_(0) - if "d_vectors" in aux_input and aux_input["d_vectors"] is not None: - g = F.normalize(aux_input["d_vectors"]).unsqueeze(-1) - if g.ndim == 2: - g = g.unsqueeze_(0) - - if "language_ids" in aux_input and aux_input["language_ids"] is not None: - lid = aux_input["language_ids"] - if lid.ndim == 0: - lid = lid.unsqueeze_(0) - - if "durations" in aux_input and aux_input["durations"] is not None: - durations = aux_input["durations"] - - return sid, g, lid, durations - - def _set_speaker_input(self, aux_input: Dict): - d_vectors = aux_input.get("d_vectors", None) - speaker_ids = aux_input.get("speaker_ids", None) - - if d_vectors is not None and speaker_ids is not None: - raise ValueError("[!] Cannot use d-vectors and speaker-ids together.") - - if speaker_ids is not None and not hasattr(self, "emb_g"): - raise ValueError("[!] Cannot use speaker-ids without enabling speaker embedding.") - - g = speaker_ids if speaker_ids is not None else d_vectors - return g - - def forward_mas(self, outputs, z_p, m_p, logs_p, x, x_mask, y_mask, g, lang_emb): - # find the alignment path - attn_mask = torch.unsqueeze(x_mask, -1) * torch.unsqueeze(y_mask, 2) - with torch.no_grad(): - o_scale = torch.exp(-2 * logs_p) - logp1 = torch.sum(-0.5 * math.log(2 * math.pi) - logs_p, [1]).unsqueeze(-1) # [b, t, 1] - logp2 = torch.einsum("klm, kln -> kmn", [o_scale, -0.5 * (z_p**2)]) - logp3 = torch.einsum("klm, kln -> kmn", [m_p * o_scale, z_p]) - logp4 = torch.sum(-0.5 * (m_p**2) * o_scale, [1]).unsqueeze(-1) # [b, t, 1] - logp = logp2 + logp3 + logp1 + logp4 - attn = maximum_path(logp, attn_mask.squeeze(1)).unsqueeze(1).detach() # [b, 1, t, t'] - - # duration predictor - attn_durations = attn.sum(3) - if self.args.use_sdp: - loss_duration = self.duration_predictor( - x.detach() if self.args.detach_dp_input else x, - x_mask, - attn_durations, - g=g.detach() if self.args.detach_dp_input and g is not None else g, - lang_emb=lang_emb.detach() if self.args.detach_dp_input and lang_emb is not None else lang_emb, - ) - loss_duration = loss_duration / torch.sum(x_mask) - else: - attn_log_durations = torch.log(attn_durations + 1e-6) * x_mask - log_durations = self.duration_predictor( - x.detach() if self.args.detach_dp_input else x, - x_mask, - g=g.detach() if self.args.detach_dp_input and g is not None else g, - lang_emb=lang_emb.detach() if self.args.detach_dp_input and lang_emb is not None else lang_emb, - ) - loss_duration = torch.sum((log_durations - attn_log_durations) ** 2, [1, 2]) / torch.sum(x_mask) - outputs["loss_duration"] = loss_duration - return outputs, attn - - def upsampling_z(self, z, slice_ids=None, y_lengths=None, y_mask=None): - spec_segment_size = self.spec_segment_size - if self.args.encoder_sample_rate: - # recompute the slices and spec_segment_size if needed - slice_ids = slice_ids * int(self.interpolate_factor) if slice_ids is not None else slice_ids - spec_segment_size = spec_segment_size * int(self.interpolate_factor) - # interpolate z if needed - if self.args.interpolate_z: - z = torch.nn.functional.interpolate(z, scale_factor=[self.interpolate_factor], mode="linear").squeeze(0) - # recompute the mask if needed - if y_lengths is not None and y_mask is not None: - y_mask = ( - sequence_mask(y_lengths * self.interpolate_factor, None).to(y_mask.dtype).unsqueeze(1) - ) # [B, 1, T_dec_resampled] - - return z, spec_segment_size, slice_ids, y_mask - - def forward( # pylint: disable=dangerous-default-value - self, - x: torch.tensor, - x_lengths: torch.tensor, - y: torch.tensor, - y_lengths: torch.tensor, - waveform: torch.tensor, - aux_input={"d_vectors": None, "speaker_ids": None, "language_ids": None}, - ) -> Dict: - """Forward pass of the model. - - Args: - x (torch.tensor): Batch of input character sequence IDs. - x_lengths (torch.tensor): Batch of input character sequence lengths. - y (torch.tensor): Batch of input spectrograms. - y_lengths (torch.tensor): Batch of input spectrogram lengths. - waveform (torch.tensor): Batch of ground truth waveforms per sample. - aux_input (dict, optional): Auxiliary inputs for multi-speaker and multi-lingual training. - Defaults to {"d_vectors": None, "speaker_ids": None, "language_ids": None}. - - Returns: - Dict: model outputs keyed by the output name. - - Shapes: - - x: :math:`[B, T_seq]` - - x_lengths: :math:`[B]` - - y: :math:`[B, C, T_spec]` - - y_lengths: :math:`[B]` - - waveform: :math:`[B, 1, T_wav]` - - d_vectors: :math:`[B, C, 1]` - - speaker_ids: :math:`[B]` - - language_ids: :math:`[B]` - - Return Shapes: - - model_outputs: :math:`[B, 1, T_wav]` - - alignments: :math:`[B, T_seq, T_dec]` - - z: :math:`[B, C, T_dec]` - - z_p: :math:`[B, C, T_dec]` - - m_p: :math:`[B, C, T_dec]` - - logs_p: :math:`[B, C, T_dec]` - - m_q: :math:`[B, C, T_dec]` - - logs_q: :math:`[B, C, T_dec]` - - waveform_seg: :math:`[B, 1, spec_seg_size * hop_length]` - - gt_spk_emb: :math:`[B, 1, speaker_encoder.proj_dim]` - - syn_spk_emb: :math:`[B, 1, speaker_encoder.proj_dim]` - """ - outputs = {} - sid, g, lid, _ = self._set_cond_input(aux_input) - # speaker embedding - if self.args.use_speaker_embedding and sid is not None: - g = self.emb_g(sid).unsqueeze(-1) # [b, h, 1] - - # language embedding - lang_emb = None - if self.args.use_language_embedding and lid is not None: - lang_emb = self.emb_l(lid).unsqueeze(-1) - - x, m_p, logs_p, x_mask = self.text_encoder(x, x_lengths, lang_emb=lang_emb) - - # posterior encoder - z, m_q, logs_q, y_mask = self.posterior_encoder(y, y_lengths, g=g) - - # flow layers - z_p = self.flow(z, y_mask, g=g) - - # duration predictor - outputs, attn = self.forward_mas(outputs, z_p, m_p, logs_p, x, x_mask, y_mask, g=g, lang_emb=lang_emb) - - # expand prior - m_p = torch.einsum("klmn, kjm -> kjn", [attn, m_p]) - logs_p = torch.einsum("klmn, kjm -> kjn", [attn, logs_p]) - - # select a random feature segment for the waveform decoder - z_slice, slice_ids = rand_segments(z, y_lengths, self.spec_segment_size, let_short_samples=True, pad_short=True) - - # interpolate z if needed - z_slice, spec_segment_size, slice_ids, _ = self.upsampling_z(z_slice, slice_ids=slice_ids) - - o = self.waveform_decoder(z_slice, g=g) - - wav_seg = segment( - waveform, - slice_ids * self.config.audio.hop_length, - spec_segment_size * self.config.audio.hop_length, - pad_short=True, - ) - - if self.args.use_speaker_encoder_as_loss and self.speaker_manager.encoder is not None: - # concate generated and GT waveforms - wavs_batch = torch.cat((wav_seg, o), dim=0) - - # resample audio to speaker encoder sample_rate - # pylint: disable=W0105 - if self.audio_transform is not None: - wavs_batch = self.audio_transform(wavs_batch) - - pred_embs = self.speaker_manager.encoder.forward(wavs_batch, l2_norm=True) - - # split generated and GT speaker embeddings - gt_spk_emb, syn_spk_emb = torch.chunk(pred_embs, 2, dim=0) - else: - gt_spk_emb, syn_spk_emb = None, None - - outputs.update( - { - "model_outputs": o, - "alignments": attn.squeeze(1), - "m_p": m_p, - "logs_p": logs_p, - "z": z, - "z_p": z_p, - "m_q": m_q, - "logs_q": logs_q, - "waveform_seg": wav_seg, - "gt_spk_emb": gt_spk_emb, - "syn_spk_emb": syn_spk_emb, - "slice_ids": slice_ids, - } - ) - return outputs - - @staticmethod - def _set_x_lengths(x, aux_input): - if "x_lengths" in aux_input and aux_input["x_lengths"] is not None: - return aux_input["x_lengths"] - return torch.tensor(x.shape[1:2]).to(x.device) - - @torch.no_grad() - def inference( - self, - x, - aux_input={"x_lengths": None, "d_vectors": None, "speaker_ids": None, "language_ids": None, "durations": None}, - ): # pylint: disable=dangerous-default-value - """ - Note: - To run in batch mode, provide `x_lengths` else model assumes that the batch size is 1. - - Shapes: - - x: :math:`[B, T_seq]` - - x_lengths: :math:`[B]` - - d_vectors: :math:`[B, C]` - - speaker_ids: :math:`[B]` - - Return Shapes: - - model_outputs: :math:`[B, 1, T_wav]` - - alignments: :math:`[B, T_seq, T_dec]` - - z: :math:`[B, C, T_dec]` - - z_p: :math:`[B, C, T_dec]` - - m_p: :math:`[B, C, T_dec]` - - logs_p: :math:`[B, C, T_dec]` - """ - sid, g, lid, durations = self._set_cond_input(aux_input) - x_lengths = self._set_x_lengths(x, aux_input) - - # speaker embedding - if self.args.use_speaker_embedding and sid is not None: - g = self.emb_g(sid).unsqueeze(-1) - - # language embedding - lang_emb = None - if self.args.use_language_embedding and lid is not None: - lang_emb = self.emb_l(lid).unsqueeze(-1) - - x, m_p, logs_p, x_mask = self.text_encoder(x, x_lengths, lang_emb=lang_emb) - - if durations is None: - if self.args.use_sdp: - logw = self.duration_predictor( - x, - x_mask, - g=g if self.args.condition_dp_on_speaker else None, - reverse=True, - noise_scale=self.inference_noise_scale_dp, - lang_emb=lang_emb, - ) - else: - logw = self.duration_predictor( - x, x_mask, g=g if self.args.condition_dp_on_speaker else None, lang_emb=lang_emb - ) - w = torch.exp(logw) * x_mask * self.length_scale - else: - assert durations.shape[-1] == x.shape[-1] - w = durations.unsqueeze(0) - - w_ceil = torch.ceil(w) - y_lengths = torch.clamp_min(torch.sum(w_ceil, [1, 2]), 1).long() - y_mask = sequence_mask(y_lengths, None).to(x_mask.dtype).unsqueeze(1) # [B, 1, T_dec] - - attn_mask = x_mask * y_mask.transpose(1, 2) # [B, 1, T_enc] * [B, T_dec, 1] - attn = generate_path(w_ceil.squeeze(1), attn_mask.squeeze(1).transpose(1, 2)) - - m_p = torch.matmul(attn.transpose(1, 2), m_p.transpose(1, 2)).transpose(1, 2) - logs_p = torch.matmul(attn.transpose(1, 2), logs_p.transpose(1, 2)).transpose(1, 2) - - z_p = m_p + torch.randn_like(m_p) * torch.exp(logs_p) * self.inference_noise_scale - z = self.flow(z_p, y_mask, g=g, reverse=True) - - # upsampling if needed - z, _, _, y_mask = self.upsampling_z(z, y_lengths=y_lengths, y_mask=y_mask) - - o = self.waveform_decoder((z * y_mask)[:, :, : self.max_inference_len], g=g) - - outputs = { - "model_outputs": o, - "alignments": attn.squeeze(1), - "durations": w_ceil, - "z": z, - "z_p": z_p, - "m_p": m_p, - "logs_p": logs_p, - "y_mask": y_mask, - } - return outputs - - @torch.no_grad() - def inference_voice_conversion( - self, reference_wav, speaker_id=None, d_vector=None, reference_speaker_id=None, reference_d_vector=None - ): - """Inference for voice conversion - - Args: - reference_wav (Tensor): Reference wavform. Tensor of shape [B, T] - speaker_id (Tensor): speaker_id of the target speaker. Tensor of shape [B] - d_vector (Tensor): d_vector embedding of target speaker. Tensor of shape `[B, C]` - reference_speaker_id (Tensor): speaker_id of the reference_wav speaker. Tensor of shape [B] - reference_d_vector (Tensor): d_vector embedding of the reference_wav speaker. Tensor of shape `[B, C]` - """ - # compute spectrograms - y = wav_to_spec( - reference_wav, - self.config.audio.fft_size, - self.config.audio.hop_length, - self.config.audio.win_length, - center=False, - ) - y_lengths = torch.tensor([y.size(-1)]).to(y.device) - speaker_cond_src = reference_speaker_id if reference_speaker_id is not None else reference_d_vector - speaker_cond_tgt = speaker_id if speaker_id is not None else d_vector - wav, _, _ = self.voice_conversion(y, y_lengths, speaker_cond_src, speaker_cond_tgt) - return wav - - def voice_conversion(self, y, y_lengths, speaker_cond_src, speaker_cond_tgt): - """Forward pass for voice conversion - - TODO: create an end-point for voice conversion - - Args: - y (Tensor): Reference spectrograms. Tensor of shape [B, T, C] - y_lengths (Tensor): Length of each reference spectrogram. Tensor of shape [B] - speaker_cond_src (Tensor): Reference speaker ID. Tensor of shape [B,] - speaker_cond_tgt (Tensor): Target speaker ID. Tensor of shape [B,] - """ - assert self.num_speakers > 0, "num_speakers have to be larger than 0." - # speaker embedding - if self.args.use_speaker_embedding and not self.args.use_d_vector_file: - g_src = self.emb_g(torch.from_numpy((np.array(speaker_cond_src))).unsqueeze(0)).unsqueeze(-1) - g_tgt = self.emb_g(torch.from_numpy((np.array(speaker_cond_tgt))).unsqueeze(0)).unsqueeze(-1) - elif not self.args.use_speaker_embedding and self.args.use_d_vector_file: - g_src = F.normalize(speaker_cond_src).unsqueeze(-1) - g_tgt = F.normalize(speaker_cond_tgt).unsqueeze(-1) - else: - raise RuntimeError(" [!] Voice conversion is only supported on multi-speaker models.") - - z, _, _, y_mask = self.posterior_encoder(y, y_lengths, g=g_src) - z_p = self.flow(z, y_mask, g=g_src) - z_hat = self.flow(z_p, y_mask, g=g_tgt, reverse=True) - o_hat = self.waveform_decoder(z_hat * y_mask, g=g_tgt) - return o_hat, y_mask, (z, z_p, z_hat) - - def train_step(self, batch: dict, criterion: nn.Module, optimizer_idx: int) -> Tuple[Dict, Dict]: - """Perform a single training step. Run the model forward pass and compute losses. - - Args: - batch (Dict): Input tensors. - criterion (nn.Module): Loss layer designed for the model. - optimizer_idx (int): Index of optimizer to use. 0 for the generator and 1 for the discriminator networks. - - Returns: - Tuple[Dict, Dict]: Model ouputs and computed losses. - """ - - spec_lens = batch["spec_lens"] - - if optimizer_idx == 0: - tokens = batch["tokens"] - token_lenghts = batch["token_lens"] - spec = batch["spec"] - - d_vectors = batch["d_vectors"] - speaker_ids = batch["speaker_ids"] - language_ids = batch["language_ids"] - waveform = batch["waveform"] - - # generator pass - outputs = self.forward( - tokens, - token_lenghts, - spec, - spec_lens, - waveform, - aux_input={"d_vectors": d_vectors, "speaker_ids": speaker_ids, "language_ids": language_ids}, - ) - - # cache tensors for the generator pass - self.model_outputs_cache = outputs # pylint: disable=attribute-defined-outside-init - - # compute scores and features - scores_disc_fake, _, scores_disc_real, _ = self.disc( - outputs["model_outputs"].detach(), outputs["waveform_seg"] - ) - - # compute loss - with autocast(enabled=False): # use float32 for the criterion - loss_dict = criterion[optimizer_idx]( - scores_disc_real, - scores_disc_fake, - ) - return outputs, loss_dict - - if optimizer_idx == 1: - mel = batch["mel"] - - # compute melspec segment - with autocast(enabled=False): - if self.args.encoder_sample_rate: - spec_segment_size = self.spec_segment_size * int(self.interpolate_factor) - else: - spec_segment_size = self.spec_segment_size - - mel_slice = segment( - mel.float(), self.model_outputs_cache["slice_ids"], spec_segment_size, pad_short=True - ) - mel_slice_hat = wav_to_mel( - y=self.model_outputs_cache["model_outputs"].float(), - n_fft=self.config.audio.fft_size, - sample_rate=self.config.audio.sample_rate, - num_mels=self.config.audio.num_mels, - hop_length=self.config.audio.hop_length, - win_length=self.config.audio.win_length, - fmin=self.config.audio.mel_fmin, - fmax=self.config.audio.mel_fmax, - center=False, - ) - - # compute discriminator scores and features - scores_disc_fake, feats_disc_fake, _, feats_disc_real = self.disc( - self.model_outputs_cache["model_outputs"], self.model_outputs_cache["waveform_seg"] - ) - - # compute losses - with autocast(enabled=False): # use float32 for the criterion - loss_dict = criterion[optimizer_idx]( - mel_slice_hat=mel_slice.float(), - mel_slice=mel_slice_hat.float(), - z_p=self.model_outputs_cache["z_p"].float(), - logs_q=self.model_outputs_cache["logs_q"].float(), - m_p=self.model_outputs_cache["m_p"].float(), - logs_p=self.model_outputs_cache["logs_p"].float(), - z_len=spec_lens, - scores_disc_fake=scores_disc_fake, - feats_disc_fake=feats_disc_fake, - feats_disc_real=feats_disc_real, - loss_duration=self.model_outputs_cache["loss_duration"], - use_speaker_encoder_as_loss=self.args.use_speaker_encoder_as_loss, - gt_spk_emb=self.model_outputs_cache["gt_spk_emb"], - syn_spk_emb=self.model_outputs_cache["syn_spk_emb"], - ) - - return self.model_outputs_cache, loss_dict - - raise ValueError(" [!] Unexpected `optimizer_idx`.") - - def _log(self, ap, batch, outputs, name_prefix="train"): # pylint: disable=unused-argument,no-self-use - y_hat = outputs[1]["model_outputs"] - y = outputs[1]["waveform_seg"] - figures = plot_results(y_hat, y, ap, name_prefix) - sample_voice = y_hat[0].squeeze(0).detach().cpu().numpy() - audios = {f"{name_prefix}/audio": sample_voice} - - alignments = outputs[1]["alignments"] - align_img = alignments[0].data.cpu().numpy().T - - figures.update( - { - "alignment": plot_alignment(align_img, output_fig=False), - } - ) - return figures, audios - - def train_log( - self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int - ): # pylint: disable=no-self-use - """Create visualizations and waveform examples. - - For example, here you can plot spectrograms and generate sample sample waveforms from these spectrograms to - be projected onto Tensorboard. - - Args: - ap (AudioProcessor): audio processor used at training. - batch (Dict): Model inputs used at the previous training step. - outputs (Dict): Model outputs generated at the previoud training step. - - Returns: - Tuple[Dict, np.ndarray]: training plots and output waveform. - """ - figures, audios = self._log(self.ap, batch, outputs, "train") - logger.train_figures(steps, figures) - logger.train_audios(steps, audios, self.ap.sample_rate) - - @torch.no_grad() - def eval_step(self, batch: dict, criterion: nn.Module, optimizer_idx: int): - return self.train_step(batch, criterion, optimizer_idx) - - def eval_log(self, batch: dict, outputs: dict, logger: "Logger", assets: dict, steps: int) -> None: - figures, audios = self._log(self.ap, batch, outputs, "eval") - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - def get_aux_input_from_test_sentences(self, sentence_info): - if hasattr(self.config, "model_args"): - config = self.config.model_args - else: - config = self.config - - # extract speaker and language info - text, speaker_name, style_wav, language_name = None, None, None, None - - if isinstance(sentence_info, list): - if len(sentence_info) == 1: - text = sentence_info[0] - elif len(sentence_info) == 2: - text, speaker_name = sentence_info - elif len(sentence_info) == 3: - text, speaker_name, style_wav = sentence_info - elif len(sentence_info) == 4: - text, speaker_name, style_wav, language_name = sentence_info - else: - text = sentence_info - - # get speaker id/d_vector - speaker_id, d_vector, language_id = None, None, None - if hasattr(self, "speaker_manager"): - if config.use_d_vector_file: - if speaker_name is None: - d_vector = self.speaker_manager.get_random_embedding() - else: - d_vector = self.speaker_manager.get_mean_embedding(speaker_name, num_samples=None, randomize=False) - elif config.use_speaker_embedding: - if speaker_name is None: - speaker_id = self.speaker_manager.get_random_id() - else: - speaker_id = self.speaker_manager.name_to_id[speaker_name] - - # get language id - if hasattr(self, "language_manager") and config.use_language_embedding and language_name is not None: - language_id = self.language_manager.name_to_id[language_name] - - return { - "text": text, - "speaker_id": speaker_id, - "style_wav": style_wav, - "d_vector": d_vector, - "language_id": language_id, - "language_name": language_name, - } - - @torch.no_grad() - def test_run(self, assets) -> Tuple[Dict, Dict]: - """Generic test run for `tts` models used by `Trainer`. - - You can override this for a different behaviour. - - Returns: - Tuple[Dict, Dict]: Test figures and audios to be projected to Tensorboard. - """ - print(" | > Synthesizing test sentences.") - test_audios = {} - test_figures = {} - test_sentences = self.config.test_sentences - for idx, s_info in enumerate(test_sentences): - aux_inputs = self.get_aux_input_from_test_sentences(s_info) - wav, alignment, _, _ = synthesis( - self, - aux_inputs["text"], - self.config, - "cuda" in str(next(self.parameters()).device), - speaker_id=aux_inputs["speaker_id"], - d_vector=aux_inputs["d_vector"], - style_wav=aux_inputs["style_wav"], - language_id=aux_inputs["language_id"], - use_griffin_lim=True, - do_trim_silence=False, - ).values() - test_audios["{}-audio".format(idx)] = wav - test_figures["{}-alignment".format(idx)] = plot_alignment(alignment.T, output_fig=False) - return {"figures": test_figures, "audios": test_audios} - - def test_log( - self, outputs: dict, logger: "Logger", assets: dict, steps: int # pylint: disable=unused-argument - ) -> None: - logger.test_audios(steps, outputs["audios"], self.ap.sample_rate) - logger.test_figures(steps, outputs["figures"]) - - def format_batch(self, batch: Dict) -> Dict: - """Compute speaker, langugage IDs and d_vector for the batch if necessary.""" - speaker_ids = None - language_ids = None - d_vectors = None - - # get numerical speaker ids from speaker names - if self.speaker_manager is not None and self.speaker_manager.name_to_id and self.args.use_speaker_embedding: - speaker_ids = [self.speaker_manager.name_to_id[sn] for sn in batch["speaker_names"]] - - if speaker_ids is not None: - speaker_ids = torch.LongTensor(speaker_ids) - - # get d_vectors from audio file names - if self.speaker_manager is not None and self.speaker_manager.embeddings and self.args.use_d_vector_file: - d_vector_mapping = self.speaker_manager.embeddings - d_vectors = [d_vector_mapping[w]["embedding"] for w in batch["audio_unique_names"]] - d_vectors = torch.FloatTensor(d_vectors) - - # get language ids from language names - if self.language_manager is not None and self.language_manager.name_to_id and self.args.use_language_embedding: - language_ids = [self.language_manager.name_to_id[ln] for ln in batch["language_names"]] - - if language_ids is not None: - language_ids = torch.LongTensor(language_ids) - - batch["language_ids"] = language_ids - batch["d_vectors"] = d_vectors - batch["speaker_ids"] = speaker_ids - return batch - - def format_batch_on_device(self, batch): - """Compute spectrograms on the device.""" - ac = self.config.audio - - if self.args.encoder_sample_rate: - wav = self.audio_resampler(batch["waveform"]) - else: - wav = batch["waveform"] - - # compute spectrograms - batch["spec"] = wav_to_spec(wav, ac.fft_size, ac.hop_length, ac.win_length, center=False) - - if self.args.encoder_sample_rate: - # recompute spec with high sampling rate to the loss - spec_mel = wav_to_spec(batch["waveform"], ac.fft_size, ac.hop_length, ac.win_length, center=False) - # remove extra stft frames if needed - if spec_mel.size(2) > int(batch["spec"].size(2) * self.interpolate_factor): - spec_mel = spec_mel[:, :, : int(batch["spec"].size(2) * self.interpolate_factor)] - else: - batch["spec"] = batch["spec"][:, :, : int(spec_mel.size(2) / self.interpolate_factor)] - else: - spec_mel = batch["spec"] - - batch["mel"] = spec_to_mel( - spec=spec_mel, - n_fft=ac.fft_size, - num_mels=ac.num_mels, - sample_rate=ac.sample_rate, - fmin=ac.mel_fmin, - fmax=ac.mel_fmax, - ) - - if self.args.encoder_sample_rate: - assert batch["spec"].shape[2] == int( - batch["mel"].shape[2] / self.interpolate_factor - ), f"{batch['spec'].shape[2]}, {batch['mel'].shape[2]}" - else: - assert batch["spec"].shape[2] == batch["mel"].shape[2], f"{batch['spec'].shape[2]}, {batch['mel'].shape[2]}" - - # compute spectrogram frame lengths - batch["spec_lens"] = (batch["spec"].shape[2] * batch["waveform_rel_lens"]).int() - batch["mel_lens"] = (batch["mel"].shape[2] * batch["waveform_rel_lens"]).int() - - if self.args.encoder_sample_rate: - assert (batch["spec_lens"] - (batch["mel_lens"] / self.interpolate_factor).int()).sum() == 0 - else: - assert (batch["spec_lens"] - batch["mel_lens"]).sum() == 0 - - # zero the padding frames - batch["spec"] = batch["spec"] * sequence_mask(batch["spec_lens"]).unsqueeze(1) - batch["mel"] = batch["mel"] * sequence_mask(batch["mel_lens"]).unsqueeze(1) - return batch - - def get_sampler(self, config: Coqpit, dataset: TTSDataset, num_gpus=1, is_eval=False): - weights = None - data_items = dataset.samples - if getattr(config, "use_weighted_sampler", False): - for attr_name, alpha in config.weighted_sampler_attrs.items(): - print(f" > Using weighted sampler for attribute '{attr_name}' with alpha '{alpha}'") - multi_dict = config.weighted_sampler_multipliers.get(attr_name, None) - print(multi_dict) - weights, attr_names, attr_weights = get_attribute_balancer_weights( - attr_name=attr_name, items=data_items, multi_dict=multi_dict - ) - weights = weights * alpha - print(f" > Attribute weights for '{attr_names}' \n | > {attr_weights}") - - # input_audio_lenghts = [os.path.getsize(x["audio_file"]) for x in data_items] - - if weights is not None: - w_sampler = WeightedRandomSampler(weights, len(weights)) - batch_sampler = BucketBatchSampler( - w_sampler, - data=data_items, - batch_size=config.eval_batch_size if is_eval else config.batch_size, - sort_key=lambda x: os.path.getsize(x["audio_file"]), - drop_last=True, - ) - else: - batch_sampler = None - # sampler for DDP - if batch_sampler is None: - batch_sampler = DistributedSampler(dataset) if num_gpus > 1 else None - else: # If a sampler is already defined use this sampler and DDP sampler together - batch_sampler = ( - DistributedSamplerWrapper(batch_sampler) if num_gpus > 1 else batch_sampler - ) # TODO: check batch_sampler with multi-gpu - return batch_sampler - - def get_data_loader( - self, - config: Coqpit, - assets: Dict, - is_eval: bool, - samples: Union[List[Dict], List[List]], - verbose: bool, - num_gpus: int, - rank: int = None, - ) -> "DataLoader": - if is_eval and not config.run_eval: - loader = None - else: - # init dataloader - dataset = VitsDataset( - model_args=self.args, - samples=samples, - batch_group_size=0 if is_eval else config.batch_group_size * config.batch_size, - min_text_len=config.min_text_len, - max_text_len=config.max_text_len, - min_audio_len=config.min_audio_len, - max_audio_len=config.max_audio_len, - phoneme_cache_path=config.phoneme_cache_path, - precompute_num_workers=config.precompute_num_workers, - verbose=verbose, - tokenizer=self.tokenizer, - start_by_longest=config.start_by_longest, - ) - - # wait all the DDP process to be ready - if num_gpus > 1: - dist.barrier() - - # sort input sequences from short to long - dataset.preprocess_samples() - - # get samplers - sampler = self.get_sampler(config, dataset, num_gpus) - if sampler is None: - loader = DataLoader( - dataset, - batch_size=config.eval_batch_size if is_eval else config.batch_size, - shuffle=False, # shuffle is done in the dataset. - collate_fn=dataset.collate_fn, - drop_last=False, # setting this False might cause issues in AMP training. - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=False, - ) - else: - if num_gpus > 1: - loader = DataLoader( - dataset, - sampler=sampler, - batch_size=config.eval_batch_size if is_eval else config.batch_size, - collate_fn=dataset.collate_fn, - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=False, - ) - else: - loader = DataLoader( - dataset, - batch_sampler=sampler, - collate_fn=dataset.collate_fn, - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=False, - ) - return loader - - def get_optimizer(self) -> List: - """Initiate and return the GAN optimizers based on the config parameters. - It returnes 2 optimizers in a list. First one is for the generator and the second one is for the discriminator. - Returns: - List: optimizers. - """ - # select generator parameters - optimizer0 = get_optimizer(self.config.optimizer, self.config.optimizer_params, self.config.lr_disc, self.disc) - - gen_parameters = chain(params for k, params in self.named_parameters() if not k.startswith("disc.")) - optimizer1 = get_optimizer( - self.config.optimizer, self.config.optimizer_params, self.config.lr_gen, parameters=gen_parameters - ) - return [optimizer0, optimizer1] - - def get_lr(self) -> List: - """Set the initial learning rates for each optimizer. - - Returns: - List: learning rates for each optimizer. - """ - return [self.config.lr_disc, self.config.lr_gen] - - def get_scheduler(self, optimizer) -> List: - """Set the schedulers for each optimizer. - - Args: - optimizer (List[`torch.optim.Optimizer`]): List of optimizers. - - Returns: - List: Schedulers, one for each optimizer. - """ - scheduler_D = get_scheduler(self.config.lr_scheduler_disc, self.config.lr_scheduler_disc_params, optimizer[0]) - scheduler_G = get_scheduler(self.config.lr_scheduler_gen, self.config.lr_scheduler_gen_params, optimizer[1]) - return [scheduler_D, scheduler_G] - - def get_criterion(self): - """Get criterions for each optimizer. The index in the output list matches the optimizer idx used in - `train_step()`""" - from TTS.tts.layers.losses import ( # pylint: disable=import-outside-toplevel - VitsDiscriminatorLoss, - VitsGeneratorLoss, - ) - - return [VitsDiscriminatorLoss(self.config), VitsGeneratorLoss(self.config)] - - def load_checkpoint( - self, config, checkpoint_path, eval=False, strict=True, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - """Load the model checkpoint and setup for training or inference""" - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - # compat band-aid for the pre-trained models to not use the encoder baked into the model - # TODO: consider baking the speaker encoder into the model and call it from there. - # as it is probably easier for model distribution. - state["model"] = {k: v for k, v in state["model"].items() if "speaker_encoder" not in k} - - if self.args.encoder_sample_rate is not None and eval: - # audio resampler is not used in inference time - self.audio_resampler = None - - # handle fine-tuning from a checkpoint with additional speakers - if hasattr(self, "emb_g") and state["model"]["emb_g.weight"].shape != self.emb_g.weight.shape: - num_new_speakers = self.emb_g.weight.shape[0] - state["model"]["emb_g.weight"].shape[0] - print(f" > Loading checkpoint with {num_new_speakers} additional speakers.") - emb_g = state["model"]["emb_g.weight"] - new_row = torch.randn(num_new_speakers, emb_g.shape[1]) - emb_g = torch.cat([emb_g, new_row], axis=0) - state["model"]["emb_g.weight"] = emb_g - # load the model weights - self.load_state_dict(state["model"], strict=strict) - - if eval: - self.eval() - assert not self.training - - def load_fairseq_checkpoint( - self, config, checkpoint_dir, eval=False, strict=True - ): # pylint: disable=unused-argument, redefined-builtin - """Load VITS checkpoints released by fairseq here: https://github.com/facebookresearch/fairseq/tree/main/examples/mms - Performs some changes for compatibility. - - Args: - config (Coqpit): 🐸TTS model config. - checkpoint_dir (str): Path to the checkpoint directory. - eval (bool, optional): Set to True for evaluation. Defaults to False. - """ - import json - - from TTS.tts.utils.text.cleaners import basic_cleaners - - self.disc = None - # set paths - config_file = os.path.join(checkpoint_dir, "config.json") - checkpoint_file = os.path.join(checkpoint_dir, "G_100000.pth") - vocab_file = os.path.join(checkpoint_dir, "vocab.txt") - # set config params - with open(config_file, "r", encoding="utf-8") as file: - # Load the JSON data as a dictionary - config_org = json.load(file) - self.config.audio.sample_rate = config_org["data"]["sampling_rate"] - # self.config.add_blank = config['add_blank'] - # set tokenizer - vocab = FairseqVocab(vocab_file) - self.text_encoder.emb = nn.Embedding(vocab.num_chars, config.model_args.hidden_channels) - self.tokenizer = TTSTokenizer( - use_phonemes=False, - text_cleaner=basic_cleaners, - characters=vocab, - phonemizer=None, - add_blank=config_org["data"]["add_blank"], - use_eos_bos=False, - ) - # load fairseq checkpoint - new_chk = rehash_fairseq_vits_checkpoint(checkpoint_file) - self.load_state_dict(new_chk, strict=strict) - if eval: - self.eval() - assert not self.training - - @staticmethod - def init_from_config(config: "VitsConfig", samples: Union[List[List], List[Dict]] = None, verbose=True): - """Initiate model from config - - Args: - config (VitsConfig): Model config. - samples (Union[List[List], List[Dict]]): Training samples to parse speaker ids for training. - Defaults to None. - """ - from TTS.utils.audio import AudioProcessor - - upsample_rate = torch.prod(torch.as_tensor(config.model_args.upsample_rates_decoder)).item() - - if not config.model_args.encoder_sample_rate: - assert ( - upsample_rate == config.audio.hop_length - ), f" [!] Product of upsample rates must be equal to the hop length - {upsample_rate} vs {config.audio.hop_length}" - else: - encoder_to_vocoder_upsampling_factor = config.audio.sample_rate / config.model_args.encoder_sample_rate - effective_hop_length = config.audio.hop_length * encoder_to_vocoder_upsampling_factor - assert ( - upsample_rate == effective_hop_length - ), f" [!] Product of upsample rates must be equal to the hop length - {upsample_rate} vs {effective_hop_length}" - - ap = AudioProcessor.init_from_config(config, verbose=verbose) - tokenizer, new_config = TTSTokenizer.init_from_config(config) - speaker_manager = SpeakerManager.init_from_config(config, samples) - language_manager = LanguageManager.init_from_config(config) - - if config.model_args.speaker_encoder_model_path: - speaker_manager.init_encoder( - config.model_args.speaker_encoder_model_path, config.model_args.speaker_encoder_config_path - ) - return Vits(new_config, ap, tokenizer, speaker_manager, language_manager) - - def export_onnx(self, output_path: str = "coqui_vits.onnx", verbose: bool = True): - """Export model to ONNX format for inference - - Args: - output_path (str): Path to save the exported model. - verbose (bool): Print verbose information. Defaults to True. - """ - - # rollback values - _forward = self.forward - disc = None - if hasattr(self, "disc"): - disc = self.disc - training = self.training - - # set export mode - self.disc = None - self.eval() - - def onnx_inference(text, text_lengths, scales, sid=None, langid=None): - noise_scale = scales[0] - length_scale = scales[1] - noise_scale_dp = scales[2] - self.noise_scale = noise_scale - self.length_scale = length_scale - self.noise_scale_dp = noise_scale_dp - return self.inference( - text, - aux_input={ - "x_lengths": text_lengths, - "d_vectors": None, - "speaker_ids": sid, - "language_ids": langid, - "durations": None, - }, - )["model_outputs"] - - self.forward = onnx_inference - - # set dummy inputs - dummy_input_length = 100 - sequences = torch.randint(low=0, high=2, size=(1, dummy_input_length), dtype=torch.long) - sequence_lengths = torch.LongTensor([sequences.size(1)]) - scales = torch.FloatTensor([self.inference_noise_scale, self.length_scale, self.inference_noise_scale_dp]) - dummy_input = (sequences, sequence_lengths, scales) - input_names = ["input", "input_lengths", "scales"] - - if self.num_speakers > 0: - speaker_id = torch.LongTensor([0]) - dummy_input += (speaker_id,) - input_names.append("sid") - - if hasattr(self, "num_languages") and self.num_languages > 0 and self.embedded_language_dim > 0: - language_id = torch.LongTensor([0]) - dummy_input += (language_id,) - input_names.append("langid") - - # export to ONNX - torch.onnx.export( - model=self, - args=dummy_input, - opset_version=15, - f=output_path, - verbose=verbose, - input_names=input_names, - output_names=["output"], - dynamic_axes={ - "input": {0: "batch_size", 1: "phonemes"}, - "input_lengths": {0: "batch_size"}, - "output": {0: "batch_size", 1: "time1", 2: "time2"}, - }, - ) - - # rollback - self.forward = _forward - if training: - self.train() - if not disc is None: - self.disc = disc - - def load_onnx(self, model_path: str, cuda=False): - import onnxruntime as ort - - providers = [ - "CPUExecutionProvider" - if cuda is False - else ("CUDAExecutionProvider", {"cudnn_conv_algo_search": "DEFAULT"}) - ] - sess_options = ort.SessionOptions() - self.onnx_sess = ort.InferenceSession( - model_path, - sess_options=sess_options, - providers=providers, - ) - - def inference_onnx(self, x, x_lengths=None, speaker_id=None, language_id=None): - """ONNX inference""" - - if isinstance(x, torch.Tensor): - x = x.cpu().numpy() - - if x_lengths is None: - x_lengths = np.array([x.shape[1]], dtype=np.int64) - - if isinstance(x_lengths, torch.Tensor): - x_lengths = x_lengths.cpu().numpy() - scales = np.array( - [self.inference_noise_scale, self.length_scale, self.inference_noise_scale_dp], - dtype=np.float32, - ) - input_params = {"input": x, "input_lengths": x_lengths, "scales": scales} - if not speaker_id is None: - input_params["sid"] = torch.tensor([speaker_id]).cpu().numpy() - if not language_id is None: - input_params["langid"] = torch.tensor([language_id]).cpu().numpy() - - audio = self.onnx_sess.run( - ["output"], - input_params, - ) - return audio[0][0] - - -################################## -# VITS CHARACTERS -################################## - - -class VitsCharacters(BaseCharacters): - """Characters class for VITs model for compatibility with pre-trained models""" - - def __init__( - self, - graphemes: str = _characters, - punctuations: str = _punctuations, - pad: str = _pad, - ipa_characters: str = _phonemes, - ) -> None: - if ipa_characters is not None: - graphemes += ipa_characters - super().__init__(graphemes, punctuations, pad, None, None, "", is_unique=False, is_sorted=True) - - def _create_vocab(self): - self._vocab = [self._pad] + list(self._punctuations) + list(self._characters) + [self._blank] - self._char_to_id = {char: idx for idx, char in enumerate(self.vocab)} - # pylint: disable=unnecessary-comprehension - self._id_to_char = {idx: char for idx, char in enumerate(self.vocab)} - - @staticmethod - def init_from_config(config: Coqpit): - if config.characters is not None: - _pad = config.characters["pad"] - _punctuations = config.characters["punctuations"] - _letters = config.characters["characters"] - _letters_ipa = config.characters["phonemes"] - return ( - VitsCharacters(graphemes=_letters, ipa_characters=_letters_ipa, punctuations=_punctuations, pad=_pad), - config, - ) - characters = VitsCharacters() - new_config = replace(config, characters=characters.to_config()) - return characters, new_config - - def to_config(self) -> "CharactersConfig": - return CharactersConfig( - characters=self._characters, - punctuations=self._punctuations, - pad=self._pad, - eos=None, - bos=None, - blank=self._blank, - is_unique=False, - is_sorted=True, - ) - - -class FairseqVocab(BaseVocabulary): - def __init__(self, vocab: str): - super(FairseqVocab).__init__() - self.vocab = vocab - - @property - def vocab(self): - """Return the vocabulary dictionary.""" - return self._vocab - - @vocab.setter - def vocab(self, vocab_file): - with open(vocab_file, encoding="utf-8") as f: - self._vocab = [x.replace("\n", "") for x in f.readlines()] - self.blank = self._vocab[0] - self.pad = " " - self._char_to_id = {s: i for i, s in enumerate(self._vocab)} # pylint: disable=unnecessary-comprehension - self._id_to_char = {i: s for i, s in enumerate(self._vocab)} # pylint: disable=unnecessary-comprehension diff --git a/TTS/tts/utils/__init__.py b/TTS/tts/utils/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/utils/assets/tortoise/tokenizer.json b/TTS/tts/utils/assets/tortoise/tokenizer.json deleted file mode 100644 index a128f273053e465a15c488e48d8106e0c8b0898e..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/assets/tortoise/tokenizer.json +++ /dev/null @@ -1 +0,0 @@ -{"version":"1.0","truncation":null,"padding":null,"added_tokens":[{"id":0,"special":true,"content":"[STOP]","single_word":false,"lstrip":false,"rstrip":false,"normalized":false},{"id":1,"special":true,"content":"[UNK]","single_word":false,"lstrip":false,"rstrip":false,"normalized":false},{"id":2,"special":true,"content":"[SPACE]","single_word":false,"lstrip":false,"rstrip":false,"normalized":false}],"normalizer":null,"pre_tokenizer":{"type":"Whitespace"},"post_processor":null,"decoder":null,"model":{"type":"BPE","dropout":null,"unk_token":"[UNK]","continuing_subword_prefix":null,"end_of_word_suffix":null,"fuse_unk":false,"vocab":{"[STOP]":0,"[UNK]":1,"[SPACE]":2,"!":3,"'":4,"(":5,")":6,",":7,"-":8,".":9,"/":10,":":11,";":12,"?":13,"a":14,"b":15,"c":16,"d":17,"e":18,"f":19,"g":20,"h":21,"i":22,"j":23,"k":24,"l":25,"m":26,"n":27,"o":28,"p":29,"q":30,"r":31,"s":32,"t":33,"u":34,"v":35,"w":36,"x":37,"y":38,"z":39,"th":40,"in":41,"the":42,"an":43,"er":44,"ou":45,"re":46,"on":47,"at":48,"ed":49,"en":50,"to":51,"ing":52,"and":53,"is":54,"as":55,"al":56,"or":57,"of":58,"ar":59,"it":60,"es":61,"he":62,"st":63,"le":64,"om":65,"se":66,"be":67,"ad":68,"ow":69,"ly":70,"ch":71,"wh":72,"that":73,"you":74,"li":75,"ve":76,"ac":77,"ti":78,"ld":79,"me":80,"was":81,"gh":82,"id":83,"ll":84,"wi":85,"ent":86,"for":87,"ay":88,"ro":89,"ver":90,"ic":91,"her":92,"ke":93,"his":94,"no":95,"ut":96,"un":97,"ir":98,"lo":99,"we":100,"ri":101,"ha":102,"with":103,"ght":104,"out":105,"im":106,"ion":107,"all":108,"ab":109,"one":110,"ne":111,"ge":112,"ould":113,"ter":114,"mo":115,"had":116,"ce":117,"she":118,"go":119,"sh":120,"ur":121,"am":122,"so":123,"pe":124,"my":125,"de":126,"are":127,"but":128,"ome":129,"fr":130,"ther":131,"fe":132,"su":133,"do":134,"con":135,"te":136,"ain":137,"ere":138,"po":139,"if":140,"they":141,"us":142,"ag":143,"tr":144,"now":145,"oun":146,"this":147,"have":148,"not":149,"sa":150,"il":151,"up":152,"thing":153,"from":154,"ap":155,"him":156,"ack":157,"ation":158,"ant":159,"our":160,"op":161,"like":162,"ust":163,"ess":164,"bo":165,"ok":166,"ul":167,"ind":168,"ex":169,"com":170,"some":171,"there":172,"ers":173,"co":174,"res":175,"man":176,"ard":177,"pl":178,"wor":179,"way":180,"tion":181,"fo":182,"ca":183,"were":184,"by":185,"ate":186,"pro":187,"ted":188,"ound":189,"own":190,"would":191,"ts":192,"what":193,"qu":194,"ally":195,"ight":196,"ck":197,"gr":198,"when":199,"ven":200,"can":201,"ough":202,"ine":203,"end":204,"per":205,"ous":206,"od":207,"ide":208,"know":209,"ty":210,"very":211,"si":212,"ak":213,"who":214,"about":215,"ill":216,"them":217,"est":218,"red":219,"ye":220,"could":221,"ong":222,"your":223,"their":224,"em":225,"just":226,"other":227,"into":228,"any":229,"whi":230,"um":231,"tw":232,"ast":233,"der":234,"did":235,"ie":236,"been":237,"ace":238,"ink":239,"ity":240,"back":241,"ting":242,"br":243,"more":244,"ake":245,"pp":246,"then":247,"sp":248,"el":249,"use":250,"bl":251,"said":252,"over":253,"get":254},"merges":["t h","i n","th e","a n","e r","o u","r e","o n","a t","e d","e n","t o","in g","an d","i s","a s","a l","o r","o f","a r","i t","e s","h e","s t","l e","o m","s e","b e","a d","o w","l y","c h","w h","th at","y ou","l i","v e","a c","t i","l d","m e","w as","g h","i d","l l","w i","en t","f or","a y","r o","v er","i c","h er","k e","h is","n o","u t","u n","i r","l o","w e","r i","h a","wi th","gh t","ou t","i m","i on","al l","a b","on e","n e","g e","ou ld","t er","m o","h ad","c e","s he","g o","s h","u r","a m","s o","p e","m y","d e","a re","b ut","om e","f r","the r","f e","s u","d o","c on","t e","a in","er e","p o","i f","the y","u s","a g","t r","n ow","ou n","th is","ha ve","no t","s a","i l","u p","th ing","fr om","a p","h im","ac k","at ion","an t","ou r","o p","li ke","u st","es s","b o","o k","u l","in d","e x","c om","s ome","the re","er s","c o","re s","m an","ar d","p l","w or","w ay","ti on","f o","c a","w ere","b y","at e","p ro","t ed","oun d","ow n","w ould","t s","wh at","q u","al ly","i ght","c k","g r","wh en","v en","c an","ou gh","in e","en d","p er","ou s","o d","id e","k now","t y","ver y","s i","a k","wh o","ab out","i ll","the m","es t","re d","y e","c ould","on g","you r","the ir","e m","j ust","o ther","in to","an y","wh i","u m","t w","as t","d er","d id","i e","be en","ac e","in k","it y","b ack","t ing","b r","mo re","a ke","p p","the n","s p","e l","u se","b l","sa id","o ver","ge t"]}} \ No newline at end of file diff --git a/TTS/tts/utils/data.py b/TTS/tts/utils/data.py deleted file mode 100644 index 22e46b683adfc7f6c7c8a57fb5b697e422cd915c..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/data.py +++ /dev/null @@ -1,79 +0,0 @@ -import bisect - -import numpy as np -import torch - - -def _pad_data(x, length): - _pad = 0 - assert x.ndim == 1 - return np.pad(x, (0, length - x.shape[0]), mode="constant", constant_values=_pad) - - -def prepare_data(inputs): - max_len = max((len(x) for x in inputs)) - return np.stack([_pad_data(x, max_len) for x in inputs]) - - -def _pad_tensor(x, length): - _pad = 0.0 - assert x.ndim == 2 - x = np.pad(x, [[0, 0], [0, length - x.shape[1]]], mode="constant", constant_values=_pad) - return x - - -def prepare_tensor(inputs, out_steps): - max_len = max((x.shape[1] for x in inputs)) - remainder = max_len % out_steps - pad_len = max_len + (out_steps - remainder) if remainder > 0 else max_len - return np.stack([_pad_tensor(x, pad_len) for x in inputs]) - - -def _pad_stop_target(x: np.ndarray, length: int, pad_val=1) -> np.ndarray: - """Pad stop target array. - - Args: - x (np.ndarray): Stop target array. - length (int): Length after padding. - pad_val (int, optional): Padding value. Defaults to 1. - - Returns: - np.ndarray: Padded stop target array. - """ - assert x.ndim == 1 - return np.pad(x, (0, length - x.shape[0]), mode="constant", constant_values=pad_val) - - -def prepare_stop_target(inputs, out_steps): - """Pad row vectors with 1.""" - max_len = max((x.shape[0] for x in inputs)) - remainder = max_len % out_steps - pad_len = max_len + (out_steps - remainder) if remainder > 0 else max_len - return np.stack([_pad_stop_target(x, pad_len) for x in inputs]) - - -def pad_per_step(inputs, pad_len): - return np.pad(inputs, [[0, 0], [0, 0], [0, pad_len]], mode="constant", constant_values=0.0) - - -def get_length_balancer_weights(items: list, num_buckets=10): - # get all durations - audio_lengths = np.array([item["audio_length"] for item in items]) - # create the $num_buckets buckets classes based in the dataset max and min length - max_length = int(max(audio_lengths)) - min_length = int(min(audio_lengths)) - step = int((max_length - min_length) / num_buckets) + 1 - buckets_classes = [i + step for i in range(min_length, (max_length - step) + num_buckets + 1, step)] - # add each sample in their respective length bucket - buckets_names = np.array( - [buckets_classes[bisect.bisect_left(buckets_classes, item["audio_length"])] for item in items] - ) - # count and compute the weights_bucket for each sample - unique_buckets_names = np.unique(buckets_names).tolist() - bucket_ids = [unique_buckets_names.index(l) for l in buckets_names] - bucket_count = np.array([len(np.where(buckets_names == l)[0]) for l in unique_buckets_names]) - weight_bucket = 1.0 / bucket_count - dataset_samples_weight = np.array([weight_bucket[l] for l in bucket_ids]) - # normalize - dataset_samples_weight = dataset_samples_weight / np.linalg.norm(dataset_samples_weight) - return torch.from_numpy(dataset_samples_weight).float() diff --git a/TTS/tts/utils/fairseq.py b/TTS/tts/utils/fairseq.py deleted file mode 100644 index 3d8eec2b4ee0d7b0c79e368616d4b75fb2e551d4..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/fairseq.py +++ /dev/null @@ -1,48 +0,0 @@ -import torch - - -def rehash_fairseq_vits_checkpoint(checkpoint_file): - chk = torch.load(checkpoint_file, map_location=torch.device("cpu"))["model"] - new_chk = {} - for k, v in chk.items(): - if "enc_p." in k: - new_chk[k.replace("enc_p.", "text_encoder.")] = v - elif "dec." in k: - new_chk[k.replace("dec.", "waveform_decoder.")] = v - elif "enc_q." in k: - new_chk[k.replace("enc_q.", "posterior_encoder.")] = v - elif "flow.flows.2." in k: - new_chk[k.replace("flow.flows.2.", "flow.flows.1.")] = v - elif "flow.flows.4." in k: - new_chk[k.replace("flow.flows.4.", "flow.flows.2.")] = v - elif "flow.flows.6." in k: - new_chk[k.replace("flow.flows.6.", "flow.flows.3.")] = v - elif "dp.flows.0.m" in k: - new_chk[k.replace("dp.flows.0.m", "duration_predictor.flows.0.translation")] = v - elif "dp.flows.0.logs" in k: - new_chk[k.replace("dp.flows.0.logs", "duration_predictor.flows.0.log_scale")] = v - elif "dp.flows.1" in k: - new_chk[k.replace("dp.flows.1", "duration_predictor.flows.1")] = v - elif "dp.flows.3" in k: - new_chk[k.replace("dp.flows.3", "duration_predictor.flows.2")] = v - elif "dp.flows.5" in k: - new_chk[k.replace("dp.flows.5", "duration_predictor.flows.3")] = v - elif "dp.flows.7" in k: - new_chk[k.replace("dp.flows.7", "duration_predictor.flows.4")] = v - elif "dp.post_flows.0.m" in k: - new_chk[k.replace("dp.post_flows.0.m", "duration_predictor.post_flows.0.translation")] = v - elif "dp.post_flows.0.logs" in k: - new_chk[k.replace("dp.post_flows.0.logs", "duration_predictor.post_flows.0.log_scale")] = v - elif "dp.post_flows.1" in k: - new_chk[k.replace("dp.post_flows.1", "duration_predictor.post_flows.1")] = v - elif "dp.post_flows.3" in k: - new_chk[k.replace("dp.post_flows.3", "duration_predictor.post_flows.2")] = v - elif "dp.post_flows.5" in k: - new_chk[k.replace("dp.post_flows.5", "duration_predictor.post_flows.3")] = v - elif "dp.post_flows.7" in k: - new_chk[k.replace("dp.post_flows.7", "duration_predictor.post_flows.4")] = v - elif "dp." in k: - new_chk[k.replace("dp.", "duration_predictor.")] = v - else: - new_chk[k] = v - return new_chk diff --git a/TTS/tts/utils/helpers.py b/TTS/tts/utils/helpers.py deleted file mode 100644 index 7b37201f8410eb34300d8bb2b1a595d5c5cfc42f..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/helpers.py +++ /dev/null @@ -1,258 +0,0 @@ -import numpy as np -import torch -from scipy.stats import betabinom -from torch.nn import functional as F - -try: - from TTS.tts.utils.monotonic_align.core import maximum_path_c - - CYTHON = True -except ModuleNotFoundError: - CYTHON = False - - -class StandardScaler: - """StandardScaler for mean-scale normalization with the given mean and scale values.""" - - def __init__(self, mean: np.ndarray = None, scale: np.ndarray = None) -> None: - self.mean_ = mean - self.scale_ = scale - - def set_stats(self, mean, scale): - self.mean_ = mean - self.scale_ = scale - - def reset_stats(self): - delattr(self, "mean_") - delattr(self, "scale_") - - def transform(self, X): - X = np.asarray(X) - X -= self.mean_ - X /= self.scale_ - return X - - def inverse_transform(self, X): - X = np.asarray(X) - X *= self.scale_ - X += self.mean_ - return X - - -# from https://gist.github.com/jihunchoi/f1434a77df9db1bb337417854b398df1 -def sequence_mask(sequence_length, max_len=None): - """Create a sequence mask for filtering padding in a sequence tensor. - - Args: - sequence_length (torch.tensor): Sequence lengths. - max_len (int, Optional): Maximum sequence length. Defaults to None. - - Shapes: - - mask: :math:`[B, T_max]` - """ - if max_len is None: - max_len = sequence_length.max() - seq_range = torch.arange(max_len, dtype=sequence_length.dtype, device=sequence_length.device) - # B x T_max - return seq_range.unsqueeze(0) < sequence_length.unsqueeze(1) - - -def segment(x: torch.tensor, segment_indices: torch.tensor, segment_size=4, pad_short=False): - """Segment each sample in a batch based on the provided segment indices - - Args: - x (torch.tensor): Input tensor. - segment_indices (torch.tensor): Segment indices. - segment_size (int): Expected output segment size. - pad_short (bool): Pad the end of input tensor with zeros if shorter than the segment size. - """ - # pad the input tensor if it is shorter than the segment size - if pad_short and x.shape[-1] < segment_size: - x = torch.nn.functional.pad(x, (0, segment_size - x.size(2))) - - segments = torch.zeros_like(x[:, :, :segment_size]) - - for i in range(x.size(0)): - index_start = segment_indices[i] - index_end = index_start + segment_size - x_i = x[i] - if pad_short and index_end >= x.size(2): - # pad the sample if it is shorter than the segment size - x_i = torch.nn.functional.pad(x_i, (0, (index_end + 1) - x.size(2))) - segments[i] = x_i[:, index_start:index_end] - return segments - - -def rand_segments( - x: torch.tensor, x_lengths: torch.tensor = None, segment_size=4, let_short_samples=False, pad_short=False -): - """Create random segments based on the input lengths. - - Args: - x (torch.tensor): Input tensor. - x_lengths (torch.tensor): Input lengths. - segment_size (int): Expected output segment size. - let_short_samples (bool): Allow shorter samples than the segment size. - pad_short (bool): Pad the end of input tensor with zeros if shorter than the segment size. - - Shapes: - - x: :math:`[B, C, T]` - - x_lengths: :math:`[B]` - """ - _x_lenghts = x_lengths.clone() - B, _, T = x.size() - if pad_short: - if T < segment_size: - x = torch.nn.functional.pad(x, (0, segment_size - T)) - T = segment_size - if _x_lenghts is None: - _x_lenghts = T - len_diff = _x_lenghts - segment_size - if let_short_samples: - _x_lenghts[len_diff < 0] = segment_size - len_diff = _x_lenghts - segment_size - else: - assert all( - len_diff > 0 - ), f" [!] At least one sample is shorter than the segment size ({segment_size}). \n {_x_lenghts}" - segment_indices = (torch.rand([B]).type_as(x) * (len_diff + 1)).long() - ret = segment(x, segment_indices, segment_size, pad_short=pad_short) - return ret, segment_indices - - -def average_over_durations(values, durs): - """Average values over durations. - - Shapes: - - values: :math:`[B, 1, T_de]` - - durs: :math:`[B, T_en]` - - avg: :math:`[B, 1, T_en]` - """ - durs_cums_ends = torch.cumsum(durs, dim=1).long() - durs_cums_starts = torch.nn.functional.pad(durs_cums_ends[:, :-1], (1, 0)) - values_nonzero_cums = torch.nn.functional.pad(torch.cumsum(values != 0.0, dim=2), (1, 0)) - values_cums = torch.nn.functional.pad(torch.cumsum(values, dim=2), (1, 0)) - - bs, l = durs_cums_ends.size() - n_formants = values.size(1) - dcs = durs_cums_starts[:, None, :].expand(bs, n_formants, l) - dce = durs_cums_ends[:, None, :].expand(bs, n_formants, l) - - values_sums = (torch.gather(values_cums, 2, dce) - torch.gather(values_cums, 2, dcs)).float() - values_nelems = (torch.gather(values_nonzero_cums, 2, dce) - torch.gather(values_nonzero_cums, 2, dcs)).float() - - avg = torch.where(values_nelems == 0.0, values_nelems, values_sums / values_nelems) - return avg - - -def convert_pad_shape(pad_shape): - l = pad_shape[::-1] - pad_shape = [item for sublist in l for item in sublist] - return pad_shape - - -def generate_path(duration, mask): - """ - Shapes: - - duration: :math:`[B, T_en]` - - mask: :math:'[B, T_en, T_de]` - - path: :math:`[B, T_en, T_de]` - """ - b, t_x, t_y = mask.shape - cum_duration = torch.cumsum(duration, 1) - - cum_duration_flat = cum_duration.view(b * t_x) - path = sequence_mask(cum_duration_flat, t_y).to(mask.dtype) - path = path.view(b, t_x, t_y) - path = path - F.pad(path, convert_pad_shape([[0, 0], [1, 0], [0, 0]]))[:, :-1] - path = path * mask - return path - - -def maximum_path(value, mask): - if CYTHON: - return maximum_path_cython(value, mask) - return maximum_path_numpy(value, mask) - - -def maximum_path_cython(value, mask): - """Cython optimised version. - Shapes: - - value: :math:`[B, T_en, T_de]` - - mask: :math:`[B, T_en, T_de]` - """ - value = value * mask - device = value.device - dtype = value.dtype - value = value.data.cpu().numpy().astype(np.float32) - path = np.zeros_like(value).astype(np.int32) - mask = mask.data.cpu().numpy() - - t_x_max = mask.sum(1)[:, 0].astype(np.int32) - t_y_max = mask.sum(2)[:, 0].astype(np.int32) - maximum_path_c(path, value, t_x_max, t_y_max) - return torch.from_numpy(path).to(device=device, dtype=dtype) - - -def maximum_path_numpy(value, mask, max_neg_val=None): - """ - Monotonic alignment search algorithm - Numpy-friendly version. It's about 4 times faster than torch version. - value: [b, t_x, t_y] - mask: [b, t_x, t_y] - """ - if max_neg_val is None: - max_neg_val = -np.inf # Patch for Sphinx complaint - value = value * mask - - device = value.device - dtype = value.dtype - value = value.cpu().detach().numpy() - mask = mask.cpu().detach().numpy().astype(bool) - - b, t_x, t_y = value.shape - direction = np.zeros(value.shape, dtype=np.int64) - v = np.zeros((b, t_x), dtype=np.float32) - x_range = np.arange(t_x, dtype=np.float32).reshape(1, -1) - for j in range(t_y): - v0 = np.pad(v, [[0, 0], [1, 0]], mode="constant", constant_values=max_neg_val)[:, :-1] - v1 = v - max_mask = v1 >= v0 - v_max = np.where(max_mask, v1, v0) - direction[:, :, j] = max_mask - - index_mask = x_range <= j - v = np.where(index_mask, v_max + value[:, :, j], max_neg_val) - direction = np.where(mask, direction, 1) - - path = np.zeros(value.shape, dtype=np.float32) - index = mask[:, :, 0].sum(1).astype(np.int64) - 1 - index_range = np.arange(b) - for j in reversed(range(t_y)): - path[index_range, index, j] = 1 - index = index + direction[index_range, index, j] - 1 - path = path * mask.astype(np.float32) - path = torch.from_numpy(path).to(device=device, dtype=dtype) - return path - - -def beta_binomial_prior_distribution(phoneme_count, mel_count, scaling_factor=1.0): - P, M = phoneme_count, mel_count - x = np.arange(0, P) - mel_text_probs = [] - for i in range(1, M + 1): - a, b = scaling_factor * i, scaling_factor * (M + 1 - i) - rv = betabinom(P, a, b) - mel_i_prob = rv.pmf(x) - mel_text_probs.append(mel_i_prob) - return np.array(mel_text_probs) - - -def compute_attn_prior(x_len, y_len, scaling_factor=1.0): - """Compute attention priors for the alignment network.""" - attn_prior = beta_binomial_prior_distribution( - x_len, - y_len, - scaling_factor, - ) - return attn_prior # [y_len, x_len] diff --git a/TTS/tts/utils/languages.py b/TTS/tts/utils/languages.py deleted file mode 100644 index 1e1836b32ce2010ad55a0253849f2e59c61dad82..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/languages.py +++ /dev/null @@ -1,125 +0,0 @@ -import os -from typing import Any, Dict, List - -import fsspec -import numpy as np -import torch -from coqpit import Coqpit - -from TTS.config import check_config_and_model_args -from TTS.tts.utils.managers import BaseIDManager - - -class LanguageManager(BaseIDManager): - """Manage the languages for multi-lingual 🐸TTS models. Load a datafile and parse the information - in a way that can be queried by language. - - Args: - language_ids_file_path (str, optional): Path to the metafile that maps language names to ids used by - TTS models. Defaults to "". - config (Coqpit, optional): Coqpit config that contains the language information in the datasets filed. - Defaults to None. - - Examples: - >>> manager = LanguageManager(language_ids_file_path=language_ids_file_path) - >>> language_id_mapper = manager.language_ids - """ - - def __init__( - self, - language_ids_file_path: str = "", - config: Coqpit = None, - ): - super().__init__(id_file_path=language_ids_file_path) - - if config: - self.set_language_ids_from_config(config) - - @property - def num_languages(self) -> int: - return len(list(self.name_to_id.keys())) - - @property - def language_names(self) -> List: - return list(self.name_to_id.keys()) - - @staticmethod - def parse_language_ids_from_config(c: Coqpit) -> Dict: - """Set language id from config. - - Args: - c (Coqpit): Config - - Returns: - Tuple[Dict, int]: Language ID mapping and the number of languages. - """ - languages = set({}) - for dataset in c.datasets: - if "language" in dataset: - languages.add(dataset["language"]) - else: - raise ValueError(f"Dataset {dataset['name']} has no language specified.") - return {name: i for i, name in enumerate(sorted(list(languages)))} - - def set_language_ids_from_config(self, c: Coqpit) -> None: - """Set language IDs from config samples. - - Args: - c (Coqpit): Config. - """ - self.name_to_id = self.parse_language_ids_from_config(c) - - @staticmethod - def parse_ids_from_data(items: List, parse_key: str) -> Any: - raise NotImplementedError - - def set_ids_from_data(self, items: List, parse_key: str) -> Any: - raise NotImplementedError - - def save_ids_to_file(self, file_path: str) -> None: - """Save language IDs to a json file. - - Args: - file_path (str): Path to the output file. - """ - self._save_json(file_path, self.name_to_id) - - @staticmethod - def init_from_config(config: Coqpit) -> "LanguageManager": - """Initialize the language manager from a Coqpit config. - - Args: - config (Coqpit): Coqpit config. - """ - language_manager = None - if check_config_and_model_args(config, "use_language_embedding", True): - if config.get("language_ids_file", None): - language_manager = LanguageManager(language_ids_file_path=config.language_ids_file) - language_manager = LanguageManager(config=config) - return language_manager - - -def _set_file_path(path): - """Find the language_ids.json under the given path or the above it. - Intended to band aid the different paths returned in restored and continued training.""" - path_restore = os.path.join(os.path.dirname(path), "language_ids.json") - path_continue = os.path.join(path, "language_ids.json") - fs = fsspec.get_mapper(path).fs - if fs.exists(path_restore): - return path_restore - if fs.exists(path_continue): - return path_continue - return None - - -def get_language_balancer_weights(items: list): - language_names = np.array([item["language"] for item in items]) - unique_language_names = np.unique(language_names).tolist() - language_ids = [unique_language_names.index(l) for l in language_names] - language_count = np.array([len(np.where(language_names == l)[0]) for l in unique_language_names]) - weight_language = 1.0 / language_count - # get weight for each sample - dataset_samples_weight = np.array([weight_language[l] for l in language_ids]) - # normalize - dataset_samples_weight = dataset_samples_weight / np.linalg.norm(dataset_samples_weight) - return torch.from_numpy(dataset_samples_weight).float() diff --git a/TTS/tts/utils/managers.py b/TTS/tts/utils/managers.py deleted file mode 100644 index 1f94c5332df1e2774955eb263c3b688c5ad6e827..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/managers.py +++ /dev/null @@ -1,383 +0,0 @@ -import json -import random -from typing import Any, Dict, List, Tuple, Union - -import fsspec -import numpy as np -import torch - -from TTS.config import load_config -from TTS.encoder.utils.generic_utils import setup_encoder_model -from TTS.utils.audio import AudioProcessor - - -def load_file(path: str): - if path.endswith(".json"): - with fsspec.open(path, "r") as f: - return json.load(f) - elif path.endswith(".pth"): - with fsspec.open(path, "rb") as f: - return torch.load(f, map_location="cpu") - else: - raise ValueError("Unsupported file type") - - -def save_file(obj: Any, path: str): - if path.endswith(".json"): - with fsspec.open(path, "w") as f: - json.dump(obj, f, indent=4) - elif path.endswith(".pth"): - with fsspec.open(path, "wb") as f: - torch.save(obj, f) - else: - raise ValueError("Unsupported file type") - - -class BaseIDManager: - """Base `ID` Manager class. Every new `ID` manager must inherit this. - It defines common `ID` manager specific functions. - """ - - def __init__(self, id_file_path: str = ""): - self.name_to_id = {} - - if id_file_path: - self.load_ids_from_file(id_file_path) - - @staticmethod - def _load_json(json_file_path: str) -> Dict: - with fsspec.open(json_file_path, "r") as f: - return json.load(f) - - @staticmethod - def _save_json(json_file_path: str, data: dict) -> None: - with fsspec.open(json_file_path, "w") as f: - json.dump(data, f, indent=4) - - def set_ids_from_data(self, items: List, parse_key: str) -> None: - """Set IDs from data samples. - - Args: - items (List): Data sampled returned by `load_tts_samples()`. - """ - self.name_to_id = self.parse_ids_from_data(items, parse_key=parse_key) - - def load_ids_from_file(self, file_path: str) -> None: - """Set IDs from a file. - - Args: - file_path (str): Path to the file. - """ - self.name_to_id = load_file(file_path) - - def save_ids_to_file(self, file_path: str) -> None: - """Save IDs to a json file. - - Args: - file_path (str): Path to the output file. - """ - save_file(self.name_to_id, file_path) - - def get_random_id(self) -> Any: - """Get a random embedding. - - Args: - - Returns: - np.ndarray: embedding. - """ - if self.name_to_id: - return self.name_to_id[random.choices(list(self.name_to_id.keys()))[0]] - - return None - - @staticmethod - def parse_ids_from_data(items: List, parse_key: str) -> Tuple[Dict]: - """Parse IDs from data samples retured by `load_tts_samples()`. - - Args: - items (list): Data sampled returned by `load_tts_samples()`. - parse_key (str): The key to being used to parse the data. - Returns: - Tuple[Dict]: speaker IDs. - """ - classes = sorted({item[parse_key] for item in items}) - ids = {name: i for i, name in enumerate(classes)} - return ids - - -class EmbeddingManager(BaseIDManager): - """Base `Embedding` Manager class. Every new `Embedding` manager must inherit this. - It defines common `Embedding` manager specific functions. - - It expects embeddings files in the following format: - - :: - - { - 'audio_file_key':{ - 'name': 'category_name', - 'embedding'[] - }, - ... - } - - `audio_file_key` is a unique key to the audio file in the dataset. It can be the path to the file or any other unique key. - `embedding` is the embedding vector of the audio file. - `name` can be name of the speaker of the audio file. - """ - - def __init__( - self, - embedding_file_path: Union[str, List[str]] = "", - id_file_path: str = "", - encoder_model_path: str = "", - encoder_config_path: str = "", - use_cuda: bool = False, - ): - super().__init__(id_file_path=id_file_path) - - self.embeddings = {} - self.embeddings_by_names = {} - self.clip_ids = [] - self.encoder = None - self.encoder_ap = None - self.use_cuda = use_cuda - - if embedding_file_path: - if isinstance(embedding_file_path, list): - self.load_embeddings_from_list_of_files(embedding_file_path) - else: - self.load_embeddings_from_file(embedding_file_path) - - if encoder_model_path and encoder_config_path: - self.init_encoder(encoder_model_path, encoder_config_path, use_cuda) - - @property - def num_embeddings(self): - """Get number of embeddings.""" - return len(self.embeddings) - - @property - def num_names(self): - """Get number of embeddings.""" - return len(self.embeddings_by_names) - - @property - def embedding_dim(self): - """Dimensionality of embeddings. If embeddings are not loaded, returns zero.""" - if self.embeddings: - return len(self.embeddings[list(self.embeddings.keys())[0]]["embedding"]) - return 0 - - @property - def embedding_names(self): - """Get embedding names.""" - return list(self.embeddings_by_names.keys()) - - def save_embeddings_to_file(self, file_path: str) -> None: - """Save embeddings to a json file. - - Args: - file_path (str): Path to the output file. - """ - save_file(self.embeddings, file_path) - - @staticmethod - def read_embeddings_from_file(file_path: str): - """Load embeddings from a json file. - - Args: - file_path (str): Path to the file. - """ - embeddings = load_file(file_path) - speakers = sorted({x["name"] for x in embeddings.values()}) - name_to_id = {name: i for i, name in enumerate(speakers)} - clip_ids = list(set(sorted(clip_name for clip_name in embeddings.keys()))) - # cache embeddings_by_names for fast inference using a bigger speakers.json - embeddings_by_names = {} - for x in embeddings.values(): - if x["name"] not in embeddings_by_names.keys(): - embeddings_by_names[x["name"]] = [x["embedding"]] - else: - embeddings_by_names[x["name"]].append(x["embedding"]) - return name_to_id, clip_ids, embeddings, embeddings_by_names - - def load_embeddings_from_file(self, file_path: str) -> None: - """Load embeddings from a json file. - - Args: - file_path (str): Path to the target json file. - """ - self.name_to_id, self.clip_ids, self.embeddings, self.embeddings_by_names = self.read_embeddings_from_file( - file_path - ) - - def load_embeddings_from_list_of_files(self, file_paths: List[str]) -> None: - """Load embeddings from a list of json files and don't allow duplicate keys. - - Args: - file_paths (List[str]): List of paths to the target json files. - """ - self.name_to_id = {} - self.clip_ids = [] - self.embeddings_by_names = {} - self.embeddings = {} - for file_path in file_paths: - ids, clip_ids, embeddings, embeddings_by_names = self.read_embeddings_from_file(file_path) - # check colliding keys - duplicates = set(self.embeddings.keys()) & set(embeddings.keys()) - if duplicates: - raise ValueError(f" [!] Duplicate embedding names <{duplicates}> in {file_path}") - # store values - self.name_to_id.update(ids) - self.clip_ids.extend(clip_ids) - self.embeddings_by_names.update(embeddings_by_names) - self.embeddings.update(embeddings) - - # reset name_to_id to get the right speaker ids - self.name_to_id = {name: i for i, name in enumerate(self.name_to_id)} - - def get_embedding_by_clip(self, clip_idx: str) -> List: - """Get embedding by clip ID. - - Args: - clip_idx (str): Target clip ID. - - Returns: - List: embedding as a list. - """ - return self.embeddings[clip_idx]["embedding"] - - def get_embeddings_by_name(self, idx: str) -> List[List]: - """Get all embeddings of a speaker. - - Args: - idx (str): Target name. - - Returns: - List[List]: all the embeddings of the given speaker. - """ - return self.embeddings_by_names[idx] - - def get_embeddings_by_names(self) -> Dict: - """Get all embeddings by names. - - Returns: - Dict: all the embeddings of each speaker. - """ - embeddings_by_names = {} - for x in self.embeddings.values(): - if x["name"] not in embeddings_by_names.keys(): - embeddings_by_names[x["name"]] = [x["embedding"]] - else: - embeddings_by_names[x["name"]].append(x["embedding"]) - return embeddings_by_names - - def get_mean_embedding(self, idx: str, num_samples: int = None, randomize: bool = False) -> np.ndarray: - """Get mean embedding of a idx. - - Args: - idx (str): Target name. - num_samples (int, optional): Number of samples to be averaged. Defaults to None. - randomize (bool, optional): Pick random `num_samples` of embeddings. Defaults to False. - - Returns: - np.ndarray: Mean embedding. - """ - embeddings = self.get_embeddings_by_name(idx) - if num_samples is None: - embeddings = np.stack(embeddings).mean(0) - else: - assert len(embeddings) >= num_samples, f" [!] {idx} has number of samples < {num_samples}" - if randomize: - embeddings = np.stack(random.choices(embeddings, k=num_samples)).mean(0) - else: - embeddings = np.stack(embeddings[:num_samples]).mean(0) - return embeddings - - def get_random_embedding(self) -> Any: - """Get a random embedding. - - Args: - - Returns: - np.ndarray: embedding. - """ - if self.embeddings: - return self.embeddings[random.choices(list(self.embeddings.keys()))[0]]["embedding"] - - return None - - def get_clips(self) -> List: - return sorted(self.embeddings.keys()) - - def init_encoder(self, model_path: str, config_path: str, use_cuda=False) -> None: - """Initialize a speaker encoder model. - - Args: - model_path (str): Model file path. - config_path (str): Model config file path. - use_cuda (bool, optional): Use CUDA. Defaults to False. - """ - self.use_cuda = use_cuda - self.encoder_config = load_config(config_path) - self.encoder = setup_encoder_model(self.encoder_config) - self.encoder_criterion = self.encoder.load_checkpoint( - self.encoder_config, model_path, eval=True, use_cuda=use_cuda, cache=True - ) - self.encoder_ap = AudioProcessor(**self.encoder_config.audio) - - def compute_embedding_from_clip(self, wav_file: Union[str, List[str]]) -> list: - """Compute a embedding from a given audio file. - - Args: - wav_file (Union[str, List[str]]): Target file path. - - Returns: - list: Computed embedding. - """ - - def _compute(wav_file: str): - waveform = self.encoder_ap.load_wav(wav_file, sr=self.encoder_ap.sample_rate) - if not self.encoder_config.model_params.get("use_torch_spec", False): - m_input = self.encoder_ap.melspectrogram(waveform) - m_input = torch.from_numpy(m_input) - else: - m_input = torch.from_numpy(waveform) - - if self.use_cuda: - m_input = m_input.cuda() - m_input = m_input.unsqueeze(0) - embedding = self.encoder.compute_embedding(m_input) - return embedding - - if isinstance(wav_file, list): - # compute the mean embedding - embeddings = None - for wf in wav_file: - embedding = _compute(wf) - if embeddings is None: - embeddings = embedding - else: - embeddings += embedding - return (embeddings / len(wav_file))[0].tolist() - embedding = _compute(wav_file) - return embedding[0].tolist() - - def compute_embeddings(self, feats: Union[torch.Tensor, np.ndarray]) -> List: - """Compute embedding from features. - - Args: - feats (Union[torch.Tensor, np.ndarray]): Input features. - - Returns: - List: computed embedding. - """ - if isinstance(feats, np.ndarray): - feats = torch.from_numpy(feats) - if feats.ndim == 2: - feats = feats.unsqueeze(0) - if self.use_cuda: - feats = feats.cuda() - return self.encoder.compute_embedding(feats) diff --git a/TTS/tts/utils/measures.py b/TTS/tts/utils/measures.py deleted file mode 100644 index 90e862e1190bdb8443933580b3ff47321f70cecd..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/measures.py +++ /dev/null @@ -1,15 +0,0 @@ -def alignment_diagonal_score(alignments, binary=False): - """ - Compute how diagonal alignment predictions are. It is useful - to measure the alignment consistency of a model - Args: - alignments (torch.Tensor): batch of alignments. - binary (bool): if True, ignore scores and consider attention - as a binary mask. - Shape: - - alignments : :math:`[B, T_de, T_en]` - """ - maxs = alignments.max(dim=1)[0] - if binary: - maxs[maxs > 0] = 1 - return maxs.mean(dim=1).mean(dim=0).item() diff --git a/TTS/tts/utils/monotonic_align/__init__.py b/TTS/tts/utils/monotonic_align/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/utils/monotonic_align/core.c b/TTS/tts/utils/monotonic_align/core.c deleted file mode 100644 index ce60676bba5d5180314f44b8dad89175228907ee..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/monotonic_align/core.c +++ /dev/null @@ -1,23491 +0,0 @@ -/* Generated by Cython 0.29.30 */ - -/* BEGIN: Cython Metadata -{ - "distutils": { - "depends": [], - "name": "TTS.tts.utils.monotonic_align.core", - "sources": [ - "TTS/tts/utils/monotonic_align/core.pyx" - ] - }, - "module_name": "TTS.tts.utils.monotonic_align.core" -} -END: Cython Metadata */ - -#ifndef PY_SSIZE_T_CLEAN -#define PY_SSIZE_T_CLEAN -#endif /* PY_SSIZE_T_CLEAN */ -#include "Python.h" -#ifndef Py_PYTHON_H - #error Python headers needed to compile C extensions, please install development version of Python. -#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000) - #error Cython requires Python 2.6+ or Python 3.3+. -#else -#define CYTHON_ABI "0_29_30" -#define CYTHON_HEX_VERSION 0x001D1EF0 -#define CYTHON_FUTURE_DIVISION 1 -#include -#ifndef offsetof - #define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) -#endif -#if !defined(WIN32) && !defined(MS_WINDOWS) - #ifndef __stdcall - #define __stdcall - #endif - #ifndef __cdecl - #define __cdecl - #endif - #ifndef __fastcall - #define __fastcall - #endif -#endif -#ifndef DL_IMPORT - #define DL_IMPORT(t) t -#endif -#ifndef DL_EXPORT - #define DL_EXPORT(t) t -#endif -#define __PYX_COMMA , -#ifndef HAVE_LONG_LONG - #if PY_VERSION_HEX >= 0x02070000 - #define HAVE_LONG_LONG - #endif -#endif -#ifndef PY_LONG_LONG - #define PY_LONG_LONG LONG_LONG -#endif -#ifndef Py_HUGE_VAL - #define Py_HUGE_VAL HUGE_VAL -#endif -#ifdef PYPY_VERSION - #define CYTHON_COMPILING_IN_PYPY 1 - #define CYTHON_COMPILING_IN_PYSTON 0 - #define CYTHON_COMPILING_IN_CPYTHON 0 - #undef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 0 - #undef CYTHON_USE_PYTYPE_LOOKUP - #define CYTHON_USE_PYTYPE_LOOKUP 0 - #if PY_VERSION_HEX < 0x03050000 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #elif !defined(CYTHON_USE_ASYNC_SLOTS) - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif - #undef CYTHON_USE_PYLIST_INTERNALS - #define CYTHON_USE_PYLIST_INTERNALS 0 - #undef CYTHON_USE_UNICODE_INTERNALS - #define CYTHON_USE_UNICODE_INTERNALS 0 - #undef CYTHON_USE_UNICODE_WRITER - #define CYTHON_USE_UNICODE_WRITER 0 - #undef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 0 - #undef CYTHON_AVOID_BORROWED_REFS - #define CYTHON_AVOID_BORROWED_REFS 1 - #undef CYTHON_ASSUME_SAFE_MACROS - #define CYTHON_ASSUME_SAFE_MACROS 0 - #undef CYTHON_UNPACK_METHODS - #define CYTHON_UNPACK_METHODS 0 - #undef CYTHON_FAST_THREAD_STATE - #define CYTHON_FAST_THREAD_STATE 0 - #undef CYTHON_FAST_PYCALL - #define CYTHON_FAST_PYCALL 0 - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 - #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 - #undef CYTHON_USE_DICT_VERSIONS - #define CYTHON_USE_DICT_VERSIONS 0 - #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 - #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC (PYPY_VERSION_HEX >= 0x07030900) - #endif -#elif defined(PYSTON_VERSION) - #define CYTHON_COMPILING_IN_PYPY 0 - #define CYTHON_COMPILING_IN_PYSTON 1 - #define CYTHON_COMPILING_IN_CPYTHON 0 - #ifndef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 1 - #endif - #undef CYTHON_USE_PYTYPE_LOOKUP - #define CYTHON_USE_PYTYPE_LOOKUP 0 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #undef CYTHON_USE_PYLIST_INTERNALS - #define CYTHON_USE_PYLIST_INTERNALS 0 - #ifndef CYTHON_USE_UNICODE_INTERNALS - #define CYTHON_USE_UNICODE_INTERNALS 1 - #endif - #undef CYTHON_USE_UNICODE_WRITER - #define CYTHON_USE_UNICODE_WRITER 0 - #undef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 0 - #ifndef CYTHON_AVOID_BORROWED_REFS - #define CYTHON_AVOID_BORROWED_REFS 0 - #endif - #ifndef CYTHON_ASSUME_SAFE_MACROS - #define CYTHON_ASSUME_SAFE_MACROS 1 - #endif - #ifndef CYTHON_UNPACK_METHODS - #define CYTHON_UNPACK_METHODS 1 - #endif - #undef CYTHON_FAST_THREAD_STATE - #define CYTHON_FAST_THREAD_STATE 0 - #undef CYTHON_FAST_PYCALL - #define CYTHON_FAST_PYCALL 0 - #undef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT 0 - #undef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE 0 - #undef CYTHON_USE_DICT_VERSIONS - #define CYTHON_USE_DICT_VERSIONS 0 - #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 - #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 0 - #endif -#else - #define CYTHON_COMPILING_IN_PYPY 0 - #define CYTHON_COMPILING_IN_PYSTON 0 - #define CYTHON_COMPILING_IN_CPYTHON 1 - #ifndef CYTHON_USE_TYPE_SLOTS - #define CYTHON_USE_TYPE_SLOTS 1 - #endif - #if PY_VERSION_HEX < 0x02070000 - #undef CYTHON_USE_PYTYPE_LOOKUP - #define CYTHON_USE_PYTYPE_LOOKUP 0 - #elif !defined(CYTHON_USE_PYTYPE_LOOKUP) - #define CYTHON_USE_PYTYPE_LOOKUP 1 - #endif - #if PY_MAJOR_VERSION < 3 - #undef CYTHON_USE_ASYNC_SLOTS - #define CYTHON_USE_ASYNC_SLOTS 0 - #elif !defined(CYTHON_USE_ASYNC_SLOTS) - #define CYTHON_USE_ASYNC_SLOTS 1 - #endif - #if PY_VERSION_HEX < 0x02070000 - #undef CYTHON_USE_PYLONG_INTERNALS - #define CYTHON_USE_PYLONG_INTERNALS 0 - #elif !defined(CYTHON_USE_PYLONG_INTERNALS) - #define CYTHON_USE_PYLONG_INTERNALS 1 - #endif - #ifndef CYTHON_USE_PYLIST_INTERNALS - #define CYTHON_USE_PYLIST_INTERNALS 1 - #endif - #ifndef CYTHON_USE_UNICODE_INTERNALS - #define CYTHON_USE_UNICODE_INTERNALS 1 - #endif - #if PY_VERSION_HEX < 0x030300F0 || PY_VERSION_HEX >= 0x030B00A2 - #undef CYTHON_USE_UNICODE_WRITER - #define CYTHON_USE_UNICODE_WRITER 0 - #elif !defined(CYTHON_USE_UNICODE_WRITER) - #define CYTHON_USE_UNICODE_WRITER 1 - #endif - #ifndef CYTHON_AVOID_BORROWED_REFS - #define CYTHON_AVOID_BORROWED_REFS 0 - #endif - #ifndef CYTHON_ASSUME_SAFE_MACROS - #define CYTHON_ASSUME_SAFE_MACROS 1 - #endif - #ifndef CYTHON_UNPACK_METHODS - #define CYTHON_UNPACK_METHODS 1 - #endif - #if PY_VERSION_HEX >= 0x030B00A4 - #undef CYTHON_FAST_THREAD_STATE - #define CYTHON_FAST_THREAD_STATE 0 - #elif !defined(CYTHON_FAST_THREAD_STATE) - #define CYTHON_FAST_THREAD_STATE 1 - #endif - #ifndef CYTHON_FAST_PYCALL - #define CYTHON_FAST_PYCALL (PY_VERSION_HEX < 0x030A0000) - #endif - #ifndef CYTHON_PEP489_MULTI_PHASE_INIT - #define CYTHON_PEP489_MULTI_PHASE_INIT (PY_VERSION_HEX >= 0x03050000) - #endif - #ifndef CYTHON_USE_TP_FINALIZE - #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1) - #endif - #ifndef CYTHON_USE_DICT_VERSIONS - #define CYTHON_USE_DICT_VERSIONS (PY_VERSION_HEX >= 0x030600B1) - #endif - #if PY_VERSION_HEX >= 0x030B00A4 - #undef CYTHON_USE_EXC_INFO_STACK - #define CYTHON_USE_EXC_INFO_STACK 0 - #elif !defined(CYTHON_USE_EXC_INFO_STACK) - #define CYTHON_USE_EXC_INFO_STACK (PY_VERSION_HEX >= 0x030700A3) - #endif - #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC - #define CYTHON_UPDATE_DESCRIPTOR_DOC 1 - #endif -#endif -#if !defined(CYTHON_FAST_PYCCALL) -#define CYTHON_FAST_PYCCALL (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1) -#endif -#if CYTHON_USE_PYLONG_INTERNALS - #if PY_MAJOR_VERSION < 3 - #include "longintrepr.h" - #endif - #undef SHIFT - #undef BASE - #undef MASK - #ifdef SIZEOF_VOID_P - enum { __pyx_check_sizeof_voidp = 1 / (int)(SIZEOF_VOID_P == sizeof(void*)) }; - #endif -#endif -#ifndef __has_attribute - #define __has_attribute(x) 0 -#endif -#ifndef __has_cpp_attribute - #define __has_cpp_attribute(x) 0 -#endif -#ifndef CYTHON_RESTRICT - #if defined(__GNUC__) - #define CYTHON_RESTRICT __restrict__ - #elif defined(_MSC_VER) && _MSC_VER >= 1400 - #define CYTHON_RESTRICT __restrict - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_RESTRICT restrict - #else - #define CYTHON_RESTRICT - #endif -#endif -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif -#ifndef CYTHON_MAYBE_UNUSED_VAR -# if defined(__cplusplus) - template void CYTHON_MAYBE_UNUSED_VAR( const T& ) { } -# else -# define CYTHON_MAYBE_UNUSED_VAR(x) (void)(x) -# endif -#endif -#ifndef CYTHON_NCP_UNUSED -# if CYTHON_COMPILING_IN_CPYTHON -# define CYTHON_NCP_UNUSED -# else -# define CYTHON_NCP_UNUSED CYTHON_UNUSED -# endif -#endif -#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None) -#ifdef _MSC_VER - #ifndef _MSC_STDINT_H_ - #if _MSC_VER < 1300 - typedef unsigned char uint8_t; - typedef unsigned int uint32_t; - #else - typedef unsigned __int8 uint8_t; - typedef unsigned __int32 uint32_t; - #endif - #endif -#else - #include -#endif -#ifndef CYTHON_FALLTHROUGH - #if defined(__cplusplus) && __cplusplus >= 201103L - #if __has_cpp_attribute(fallthrough) - #define CYTHON_FALLTHROUGH [[fallthrough]] - #elif __has_cpp_attribute(clang::fallthrough) - #define CYTHON_FALLTHROUGH [[clang::fallthrough]] - #elif __has_cpp_attribute(gnu::fallthrough) - #define CYTHON_FALLTHROUGH [[gnu::fallthrough]] - #endif - #endif - #ifndef CYTHON_FALLTHROUGH - #if __has_attribute(fallthrough) - #define CYTHON_FALLTHROUGH __attribute__((fallthrough)) - #else - #define CYTHON_FALLTHROUGH - #endif - #endif - #if defined(__clang__ ) && defined(__apple_build_version__) - #if __apple_build_version__ < 7000000 - #undef CYTHON_FALLTHROUGH - #define CYTHON_FALLTHROUGH - #endif - #endif -#endif - -#ifndef CYTHON_INLINE - #if defined(__clang__) - #define CYTHON_INLINE __inline__ __attribute__ ((__unused__)) - #elif defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif -#endif - -#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag) - #define Py_OptimizeFlag 0 -#endif -#define __PYX_BUILD_PY_SSIZE_T "n" -#define CYTHON_FORMAT_SSIZE_T "z" -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" - #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) - #define __Pyx_DefaultClassType PyClass_Type -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" - #define __Pyx_DefaultClassType PyType_Type -#if PY_VERSION_HEX >= 0x030B00A1 - static CYTHON_INLINE PyCodeObject* __Pyx_PyCode_New(int a, int k, int l, int s, int f, - PyObject *code, PyObject *c, PyObject* n, PyObject *v, - PyObject *fv, PyObject *cell, PyObject* fn, - PyObject *name, int fline, PyObject *lnos) { - PyObject *kwds=NULL, *argcount=NULL, *posonlyargcount=NULL, *kwonlyargcount=NULL; - PyObject *nlocals=NULL, *stacksize=NULL, *flags=NULL, *replace=NULL, *call_result=NULL, *empty=NULL; - const char *fn_cstr=NULL; - const char *name_cstr=NULL; - PyCodeObject* co=NULL; - PyObject *type, *value, *traceback; - PyErr_Fetch(&type, &value, &traceback); - if (!(kwds=PyDict_New())) goto end; - if (!(argcount=PyLong_FromLong(a))) goto end; - if (PyDict_SetItemString(kwds, "co_argcount", argcount) != 0) goto end; - if (!(posonlyargcount=PyLong_FromLong(0))) goto end; - if (PyDict_SetItemString(kwds, "co_posonlyargcount", posonlyargcount) != 0) goto end; - if (!(kwonlyargcount=PyLong_FromLong(k))) goto end; - if (PyDict_SetItemString(kwds, "co_kwonlyargcount", kwonlyargcount) != 0) goto end; - if (!(nlocals=PyLong_FromLong(l))) goto end; - if (PyDict_SetItemString(kwds, "co_nlocals", nlocals) != 0) goto end; - if (!(stacksize=PyLong_FromLong(s))) goto end; - if (PyDict_SetItemString(kwds, "co_stacksize", stacksize) != 0) goto end; - if (!(flags=PyLong_FromLong(f))) goto end; - if (PyDict_SetItemString(kwds, "co_flags", flags) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_code", code) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_consts", c) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_names", n) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_varnames", v) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_freevars", fv) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_cellvars", cell) != 0) goto end; - if (PyDict_SetItemString(kwds, "co_linetable", lnos) != 0) goto end; - if (!(fn_cstr=PyUnicode_AsUTF8AndSize(fn, NULL))) goto end; - if (!(name_cstr=PyUnicode_AsUTF8AndSize(name, NULL))) goto end; - if (!(co = PyCode_NewEmpty(fn_cstr, name_cstr, fline))) goto end; - if (!(replace = PyObject_GetAttrString((PyObject*)co, "replace"))) goto cleanup_code_too; - if (!(empty = PyTuple_New(0))) goto cleanup_code_too; // unfortunately __pyx_empty_tuple isn't available here - if (!(call_result = PyObject_Call(replace, empty, kwds))) goto cleanup_code_too; - Py_XDECREF((PyObject*)co); - co = (PyCodeObject*)call_result; - call_result = NULL; - if (0) { - cleanup_code_too: - Py_XDECREF((PyObject*)co); - co = NULL; - } - end: - Py_XDECREF(kwds); - Py_XDECREF(argcount); - Py_XDECREF(posonlyargcount); - Py_XDECREF(kwonlyargcount); - Py_XDECREF(nlocals); - Py_XDECREF(stacksize); - Py_XDECREF(replace); - Py_XDECREF(call_result); - Py_XDECREF(empty); - if (type) { - PyErr_Restore(type, value, traceback); - } - return co; - } -#else - #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\ - PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) -#endif - #define __Pyx_DefaultClassType PyType_Type -#endif -#ifndef Py_TPFLAGS_CHECKTYPES - #define Py_TPFLAGS_CHECKTYPES 0 -#endif -#ifndef Py_TPFLAGS_HAVE_INDEX - #define Py_TPFLAGS_HAVE_INDEX 0 -#endif -#ifndef Py_TPFLAGS_HAVE_NEWBUFFER - #define Py_TPFLAGS_HAVE_NEWBUFFER 0 -#endif -#ifndef Py_TPFLAGS_HAVE_FINALIZE - #define Py_TPFLAGS_HAVE_FINALIZE 0 -#endif -#ifndef METH_STACKLESS - #define METH_STACKLESS 0 -#endif -#if PY_VERSION_HEX <= 0x030700A3 || !defined(METH_FASTCALL) - #ifndef METH_FASTCALL - #define METH_FASTCALL 0x80 - #endif - typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject *const *args, Py_ssize_t nargs); - typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args, - Py_ssize_t nargs, PyObject *kwnames); -#else - #define __Pyx_PyCFunctionFast _PyCFunctionFast - #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords -#endif -#if CYTHON_FAST_PYCCALL -#define __Pyx_PyFastCFunction_Check(func)\ - ((PyCFunction_Check(func) && (METH_FASTCALL == (PyCFunction_GET_FLAGS(func) & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS | METH_STACKLESS))))) -#else -#define __Pyx_PyFastCFunction_Check(func) 0 -#endif -#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Malloc) - #define PyObject_Malloc(s) PyMem_Malloc(s) - #define PyObject_Free(p) PyMem_Free(p) - #define PyObject_Realloc(p) PyMem_Realloc(p) -#endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030400A1 - #define PyMem_RawMalloc(n) PyMem_Malloc(n) - #define PyMem_RawRealloc(p, n) PyMem_Realloc(p, n) - #define PyMem_RawFree(p) PyMem_Free(p) -#endif -#if CYTHON_COMPILING_IN_PYSTON - #define __Pyx_PyCode_HasFreeVars(co) PyCode_HasFreeVars(co) - #define __Pyx_PyFrame_SetLineNumber(frame, lineno) PyFrame_SetLineNumber(frame, lineno) -#else - #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0) - #define __Pyx_PyFrame_SetLineNumber(frame, lineno) (frame)->f_lineno = (lineno) -#endif -#if !CYTHON_FAST_THREAD_STATE || PY_VERSION_HEX < 0x02070000 - #define __Pyx_PyThreadState_Current PyThreadState_GET() -#elif PY_VERSION_HEX >= 0x03060000 - #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet() -#elif PY_VERSION_HEX >= 0x03000000 - #define __Pyx_PyThreadState_Current PyThreadState_GET() -#else - #define __Pyx_PyThreadState_Current _PyThreadState_Current -#endif -#if PY_VERSION_HEX < 0x030700A2 && !defined(PyThread_tss_create) && !defined(Py_tss_NEEDS_INIT) -#include "pythread.h" -#define Py_tss_NEEDS_INIT 0 -typedef int Py_tss_t; -static CYTHON_INLINE int PyThread_tss_create(Py_tss_t *key) { - *key = PyThread_create_key(); - return 0; -} -static CYTHON_INLINE Py_tss_t * PyThread_tss_alloc(void) { - Py_tss_t *key = (Py_tss_t *)PyObject_Malloc(sizeof(Py_tss_t)); - *key = Py_tss_NEEDS_INIT; - return key; -} -static CYTHON_INLINE void PyThread_tss_free(Py_tss_t *key) { - PyObject_Free(key); -} -static CYTHON_INLINE int PyThread_tss_is_created(Py_tss_t *key) { - return *key != Py_tss_NEEDS_INIT; -} -static CYTHON_INLINE void PyThread_tss_delete(Py_tss_t *key) { - PyThread_delete_key(*key); - *key = Py_tss_NEEDS_INIT; -} -static CYTHON_INLINE int PyThread_tss_set(Py_tss_t *key, void *value) { - return PyThread_set_key_value(*key, value); -} -static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) { - return PyThread_get_key_value(*key); -} -#endif -#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized) -#define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n)) -#else -#define __Pyx_PyDict_NewPresized(n) PyDict_New() -#endif -#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && CYTHON_USE_UNICODE_INTERNALS -#define __Pyx_PyDict_GetItemStr(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash) -#else -#define __Pyx_PyDict_GetItemStr(dict, name) PyDict_GetItem(dict, name) -#endif -#if PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND) - #define CYTHON_PEP393_ENABLED 1 - #if defined(PyUnicode_IS_READY) - #define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ?\ - 0 : _PyUnicode_Ready((PyObject *)(op))) - #else - #define __Pyx_PyUnicode_READY(op) (0) - #endif - #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_LENGTH(u) - #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) PyUnicode_MAX_CHAR_VALUE(u) - #define __Pyx_PyUnicode_KIND(u) PyUnicode_KIND(u) - #define __Pyx_PyUnicode_DATA(u) PyUnicode_DATA(u) - #define __Pyx_PyUnicode_READ(k, d, i) PyUnicode_READ(k, d, i) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, ch) - #if defined(PyUnicode_IS_READY) && defined(PyUnicode_GET_SIZE) - #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03090000 - #define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : ((PyCompactUnicodeObject *)(u))->wstr_length)) - #else - #define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u))) - #endif - #else - #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_LENGTH(u)) - #endif -#else - #define CYTHON_PEP393_ENABLED 0 - #define PyUnicode_1BYTE_KIND 1 - #define PyUnicode_2BYTE_KIND 2 - #define PyUnicode_4BYTE_KIND 4 - #define __Pyx_PyUnicode_READY(op) (0) - #define __Pyx_PyUnicode_GET_LENGTH(u) PyUnicode_GET_SIZE(u) - #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i])) - #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((sizeof(Py_UNICODE) == 2) ? 65535 : 1114111) - #define __Pyx_PyUnicode_KIND(u) (sizeof(Py_UNICODE)) - #define __Pyx_PyUnicode_DATA(u) ((void*)PyUnicode_AS_UNICODE(u)) - #define __Pyx_PyUnicode_READ(k, d, i) ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i])) - #define __Pyx_PyUnicode_WRITE(k, d, i, ch) (((void)(k)), ((Py_UNICODE*)d)[i] = ch) - #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_SIZE(u)) -#endif -#if CYTHON_COMPILING_IN_PYPY - #define __Pyx_PyUnicode_Concat(a, b) PyNumber_Add(a, b) - #define __Pyx_PyUnicode_ConcatSafe(a, b) PyNumber_Add(a, b) -#else - #define __Pyx_PyUnicode_Concat(a, b) PyUnicode_Concat(a, b) - #define __Pyx_PyUnicode_ConcatSafe(a, b) ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ?\ - PyNumber_Add(a, b) : __Pyx_PyUnicode_Concat(a, b)) -#endif -#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_Contains) - #define PyUnicode_Contains(u, s) PySequence_Contains(u, s) -#endif -#if CYTHON_COMPILING_IN_PYPY && !defined(PyByteArray_Check) - #define PyByteArray_Check(obj) PyObject_TypeCheck(obj, &PyByteArray_Type) -#endif -#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Format) - #define PyObject_Format(obj, fmt) PyObject_CallMethod(obj, "__format__", "O", fmt) -#endif -#define __Pyx_PyString_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyString_Check(b) && !PyString_CheckExact(b)))) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b)) -#define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyUnicode_Check(b) && !PyUnicode_CheckExact(b)))) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b)) -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyString_Format(a, b) PyUnicode_Format(a, b) -#else - #define __Pyx_PyString_Format(a, b) PyString_Format(a, b) -#endif -#if PY_MAJOR_VERSION < 3 && !defined(PyObject_ASCII) - #define PyObject_ASCII(o) PyObject_Repr(o) -#endif -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#ifndef PyObject_Unicode - #define PyObject_Unicode PyObject_Str -#endif -#endif -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj) - #define __Pyx_PyBaseString_CheckExact(obj) PyUnicode_CheckExact(obj) -#else - #define __Pyx_PyBaseString_Check(obj) (PyString_Check(obj) || PyUnicode_Check(obj)) - #define __Pyx_PyBaseString_CheckExact(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj)) -#endif -#ifndef PySet_CheckExact - #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) -#endif -#if PY_VERSION_HEX >= 0x030900A4 - #define __Pyx_SET_REFCNT(obj, refcnt) Py_SET_REFCNT(obj, refcnt) - #define __Pyx_SET_SIZE(obj, size) Py_SET_SIZE(obj, size) -#else - #define __Pyx_SET_REFCNT(obj, refcnt) Py_REFCNT(obj) = (refcnt) - #define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size) -#endif -#if CYTHON_ASSUME_SAFE_MACROS - #define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq) -#else - #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq) -#endif -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask - #define PyNumber_Int PyNumber_Long -#endif -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif -#if PY_MAJOR_VERSION >= 3 && CYTHON_COMPILING_IN_PYPY - #ifndef PyUnicode_InternFromString - #define PyUnicode_InternFromString(s) PyUnicode_FromString(s) - #endif -#endif -#if PY_VERSION_HEX < 0x030200A4 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t __Pyx_PyIndex_AsHash_t -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t __Pyx_PyIndex_AsSsize_t -#endif -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyMethod_New(func, self, klass) ((self) ? ((void)(klass), PyMethod_New(func, self)) : __Pyx_NewRef(func)) -#else - #define __Pyx_PyMethod_New(func, self, klass) PyMethod_New(func, self, klass) -#endif -#if CYTHON_USE_ASYNC_SLOTS - #if PY_VERSION_HEX >= 0x030500B1 - #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods - #define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async) - #else - #define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved)) - #endif -#else - #define __Pyx_PyType_AsAsync(obj) NULL -#endif -#ifndef __Pyx_PyAsyncMethodsStruct - typedef struct { - unaryfunc am_await; - unaryfunc am_aiter; - unaryfunc am_anext; - } __Pyx_PyAsyncMethodsStruct; -#endif - -#if defined(_WIN32) || defined(WIN32) || defined(MS_WINDOWS) - #if !defined(_USE_MATH_DEFINES) - #define _USE_MATH_DEFINES - #endif -#endif -#include -#ifdef NAN -#define __PYX_NAN() ((float) NAN) -#else -static CYTHON_INLINE float __PYX_NAN() { - float value; - memset(&value, 0xFF, sizeof(value)); - return value; -} -#endif -#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL) -#define __Pyx_truncl trunc -#else -#define __Pyx_truncl truncl -#endif - -#define __PYX_MARK_ERR_POS(f_index, lineno) \ - { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; } -#define __PYX_ERR(f_index, lineno, Ln_error) \ - { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; } - -#ifndef __PYX_EXTERN_C - #ifdef __cplusplus - #define __PYX_EXTERN_C extern "C" - #else - #define __PYX_EXTERN_C extern - #endif -#endif - -#define __PYX_HAVE__TTS__tts__utils__monotonic_align__core -#define __PYX_HAVE_API__TTS__tts__utils__monotonic_align__core -/* Early includes */ -#include -#include -#include "numpy/arrayobject.h" -#include "numpy/ndarrayobject.h" -#include "numpy/ndarraytypes.h" -#include "numpy/arrayscalars.h" -#include "numpy/ufuncobject.h" - - /* NumPy API declarations from "numpy/__init__.pxd" */ - -#include "pythread.h" -#include -#include "pystate.h" -#ifdef _OPENMP -#include -#endif /* _OPENMP */ - -#if defined(PYREX_WITHOUT_ASSERTIONS) && !defined(CYTHON_WITHOUT_ASSERTIONS) -#define CYTHON_WITHOUT_ASSERTIONS -#endif - -typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding; - const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; - -#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0 -#define __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 0 -#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT (PY_MAJOR_VERSION >= 3 && __PYX_DEFAULT_STRING_ENCODING_IS_UTF8) -#define __PYX_DEFAULT_STRING_ENCODING "" -#define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString -#define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize -#define __Pyx_uchar_cast(c) ((unsigned char)c) -#define __Pyx_long_cast(x) ((long)x) -#define __Pyx_fits_Py_ssize_t(v, type, is_signed) (\ - (sizeof(type) < sizeof(Py_ssize_t)) ||\ - (sizeof(type) > sizeof(Py_ssize_t) &&\ - likely(v < (type)PY_SSIZE_T_MAX ||\ - v == (type)PY_SSIZE_T_MAX) &&\ - (!is_signed || likely(v > (type)PY_SSIZE_T_MIN ||\ - v == (type)PY_SSIZE_T_MIN))) ||\ - (sizeof(type) == sizeof(Py_ssize_t) &&\ - (is_signed || likely(v < (type)PY_SSIZE_T_MAX ||\ - v == (type)PY_SSIZE_T_MAX))) ) -static CYTHON_INLINE int __Pyx_is_valid_index(Py_ssize_t i, Py_ssize_t limit) { - return (size_t) i < (size_t) limit; -} -#if defined (__cplusplus) && __cplusplus >= 201103L - #include - #define __Pyx_sst_abs(value) std::abs(value) -#elif SIZEOF_INT >= SIZEOF_SIZE_T - #define __Pyx_sst_abs(value) abs(value) -#elif SIZEOF_LONG >= SIZEOF_SIZE_T - #define __Pyx_sst_abs(value) labs(value) -#elif defined (_MSC_VER) - #define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value)) -#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define __Pyx_sst_abs(value) llabs(value) -#elif defined (__GNUC__) - #define __Pyx_sst_abs(value) __builtin_llabs(value) -#else - #define __Pyx_sst_abs(value) ((value<0) ? -value : value) -#endif -static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*); -static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length); -#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s)) -#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l) -#define __Pyx_PyBytes_FromString PyBytes_FromString -#define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize -static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*); -#if PY_MAJOR_VERSION < 3 - #define __Pyx_PyStr_FromString __Pyx_PyBytes_FromString - #define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize -#else - #define __Pyx_PyStr_FromString __Pyx_PyUnicode_FromString - #define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize -#endif -#define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s)) -#define __Pyx_PyObject_AsWritableString(s) ((char*) __Pyx_PyObject_AsString(s)) -#define __Pyx_PyObject_AsWritableSString(s) ((signed char*) __Pyx_PyObject_AsString(s)) -#define __Pyx_PyObject_AsWritableUString(s) ((unsigned char*) __Pyx_PyObject_AsString(s)) -#define __Pyx_PyObject_AsSString(s) ((const signed char*) __Pyx_PyObject_AsString(s)) -#define __Pyx_PyObject_AsUString(s) ((const unsigned char*) __Pyx_PyObject_AsString(s)) -#define __Pyx_PyObject_FromCString(s) __Pyx_PyObject_FromString((const char*)s) -#define __Pyx_PyBytes_FromCString(s) __Pyx_PyBytes_FromString((const char*)s) -#define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s) -#define __Pyx_PyStr_FromCString(s) __Pyx_PyStr_FromString((const char*)s) -#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s) -static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) { - const Py_UNICODE *u_end = u; - while (*u_end++) ; - return (size_t)(u_end - u - 1); -} -#define __Pyx_PyUnicode_FromUnicode(u) PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u)) -#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode -#define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode -#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj) -#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None) -static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b); -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x); -#define __Pyx_PySequence_Tuple(obj)\ - (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj)) -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*); -#if CYTHON_ASSUME_SAFE_MACROS -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) -#else -#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x) -#endif -#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x)) -#if PY_MAJOR_VERSION >= 3 -#define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x)) -#else -#define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x)) -#endif -#define __Pyx_PyNumber_Float(x) (PyFloat_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Float(x)) -#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII -static int __Pyx_sys_getdefaultencoding_not_ascii; -static int __Pyx_init_sys_getdefaultencoding_params(void) { - PyObject* sys; - PyObject* default_encoding = NULL; - PyObject* ascii_chars_u = NULL; - PyObject* ascii_chars_b = NULL; - const char* default_encoding_c; - sys = PyImport_ImportModule("sys"); - if (!sys) goto bad; - default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL); - Py_DECREF(sys); - if (!default_encoding) goto bad; - default_encoding_c = PyBytes_AsString(default_encoding); - if (!default_encoding_c) goto bad; - if (strcmp(default_encoding_c, "ascii") == 0) { - __Pyx_sys_getdefaultencoding_not_ascii = 0; - } else { - char ascii_chars[128]; - int c; - for (c = 0; c < 128; c++) { - ascii_chars[c] = c; - } - __Pyx_sys_getdefaultencoding_not_ascii = 1; - ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL); - if (!ascii_chars_u) goto bad; - ascii_chars_b = PyUnicode_AsEncodedString(ascii_chars_u, default_encoding_c, NULL); - if (!ascii_chars_b || !PyBytes_Check(ascii_chars_b) || memcmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) { - PyErr_Format( - PyExc_ValueError, - "This module compiled with c_string_encoding=ascii, but default encoding '%.200s' is not a superset of ascii.", - default_encoding_c); - goto bad; - } - Py_DECREF(ascii_chars_u); - Py_DECREF(ascii_chars_b); - } - Py_DECREF(default_encoding); - return 0; -bad: - Py_XDECREF(default_encoding); - Py_XDECREF(ascii_chars_u); - Py_XDECREF(ascii_chars_b); - return -1; -} -#endif -#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT && PY_MAJOR_VERSION >= 3 -#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL) -#else -#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL) -#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT -static char* __PYX_DEFAULT_STRING_ENCODING; -static int __Pyx_init_sys_getdefaultencoding_params(void) { - PyObject* sys; - PyObject* default_encoding = NULL; - char* default_encoding_c; - sys = PyImport_ImportModule("sys"); - if (!sys) goto bad; - default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL); - Py_DECREF(sys); - if (!default_encoding) goto bad; - default_encoding_c = PyBytes_AsString(default_encoding); - if (!default_encoding_c) goto bad; - __PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c) + 1); - if (!__PYX_DEFAULT_STRING_ENCODING) goto bad; - strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c); - Py_DECREF(default_encoding); - return 0; -bad: - Py_XDECREF(default_encoding); - return -1; -} -#endif -#endif - - -/* Test for GCC > 2.95 */ -#if defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95))) - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) -#else /* !__GNUC__ or GCC < 2.95 */ - #define likely(x) (x) - #define unlikely(x) (x) -#endif /* __GNUC__ */ -static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; } - -static PyObject *__pyx_m = NULL; -static PyObject *__pyx_d; -static PyObject *__pyx_b; -static PyObject *__pyx_cython_runtime = NULL; -static PyObject *__pyx_empty_tuple; -static PyObject *__pyx_empty_bytes; -static PyObject *__pyx_empty_unicode; -static int __pyx_lineno; -static int __pyx_clineno = 0; -static const char * __pyx_cfilenm= __FILE__; -static const char *__pyx_filename; - -/* Header.proto */ -#if !defined(CYTHON_CCOMPLEX) - #if defined(__cplusplus) - #define CYTHON_CCOMPLEX 1 - #elif defined(_Complex_I) - #define CYTHON_CCOMPLEX 1 - #else - #define CYTHON_CCOMPLEX 0 - #endif -#endif -#if CYTHON_CCOMPLEX - #ifdef __cplusplus - #include - #else - #include - #endif -#endif -#if CYTHON_CCOMPLEX && !defined(__cplusplus) && defined(__sun__) && defined(__GNUC__) - #undef _Complex_I - #define _Complex_I 1.0fj -#endif - - -static const char *__pyx_f[] = { - "TTS/tts/utils/monotonic_align/core.pyx", - "__init__.pxd", - "stringsource", - "type.pxd", -}; -/* NoFastGil.proto */ -#define __Pyx_PyGILState_Ensure PyGILState_Ensure -#define __Pyx_PyGILState_Release PyGILState_Release -#define __Pyx_FastGIL_Remember() -#define __Pyx_FastGIL_Forget() -#define __Pyx_FastGilFuncInit() - -/* MemviewSliceStruct.proto */ -struct __pyx_memoryview_obj; -typedef struct { - struct __pyx_memoryview_obj *memview; - char *data; - Py_ssize_t shape[8]; - Py_ssize_t strides[8]; - Py_ssize_t suboffsets[8]; -} __Pyx_memviewslice; -#define __Pyx_MemoryView_Len(m) (m.shape[0]) - -/* Atomics.proto */ -#include -#ifndef CYTHON_ATOMICS - #define CYTHON_ATOMICS 1 -#endif -#define __pyx_atomic_int_type int -#if CYTHON_ATOMICS && __GNUC__ >= 4 && (__GNUC_MINOR__ > 1 ||\ - (__GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL >= 2)) &&\ - !defined(__i386__) - #define __pyx_atomic_incr_aligned(value, lock) __sync_fetch_and_add(value, 1) - #define __pyx_atomic_decr_aligned(value, lock) __sync_fetch_and_sub(value, 1) - #ifdef __PYX_DEBUG_ATOMICS - #warning "Using GNU atomics" - #endif -#elif CYTHON_ATOMICS && defined(_MSC_VER) && 0 - #include - #undef __pyx_atomic_int_type - #define __pyx_atomic_int_type LONG - #define __pyx_atomic_incr_aligned(value, lock) InterlockedIncrement(value) - #define __pyx_atomic_decr_aligned(value, lock) InterlockedDecrement(value) - #ifdef __PYX_DEBUG_ATOMICS - #pragma message ("Using MSVC atomics") - #endif -#elif CYTHON_ATOMICS && (defined(__ICC) || defined(__INTEL_COMPILER)) && 0 - #define __pyx_atomic_incr_aligned(value, lock) _InterlockedIncrement(value) - #define __pyx_atomic_decr_aligned(value, lock) _InterlockedDecrement(value) - #ifdef __PYX_DEBUG_ATOMICS - #warning "Using Intel atomics" - #endif -#else - #undef CYTHON_ATOMICS - #define CYTHON_ATOMICS 0 - #ifdef __PYX_DEBUG_ATOMICS - #warning "Not using atomics" - #endif -#endif -typedef volatile __pyx_atomic_int_type __pyx_atomic_int; -#if CYTHON_ATOMICS - #define __pyx_add_acquisition_count(memview)\ - __pyx_atomic_incr_aligned(__pyx_get_slice_count_pointer(memview), memview->lock) - #define __pyx_sub_acquisition_count(memview)\ - __pyx_atomic_decr_aligned(__pyx_get_slice_count_pointer(memview), memview->lock) -#else - #define __pyx_add_acquisition_count(memview)\ - __pyx_add_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock) - #define __pyx_sub_acquisition_count(memview)\ - __pyx_sub_acquisition_count_locked(__pyx_get_slice_count_pointer(memview), memview->lock) -#endif - -/* ForceInitThreads.proto */ -#ifndef __PYX_FORCE_INIT_THREADS - #define __PYX_FORCE_INIT_THREADS 0 -#endif - -/* BufferFormatStructs.proto */ -#define IS_UNSIGNED(type) (((type) -1) > 0) -struct __Pyx_StructField_; -#define __PYX_BUF_FLAGS_PACKED_STRUCT (1 << 0) -typedef struct { - const char* name; - struct __Pyx_StructField_* fields; - size_t size; - size_t arraysize[8]; - int ndim; - char typegroup; - char is_unsigned; - int flags; -} __Pyx_TypeInfo; -typedef struct __Pyx_StructField_ { - __Pyx_TypeInfo* type; - const char* name; - size_t offset; -} __Pyx_StructField; -typedef struct { - __Pyx_StructField* field; - size_t parent_offset; -} __Pyx_BufFmt_StackElem; -typedef struct { - __Pyx_StructField root; - __Pyx_BufFmt_StackElem* head; - size_t fmt_offset; - size_t new_count, enc_count; - size_t struct_alignment; - int is_complex; - char enc_type; - char new_packmode; - char enc_packmode; - char is_valid_array; -} __Pyx_BufFmt_Context; - - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":690 - * # in Cython to enable them only on the right systems. - * - * ctypedef npy_int8 int8_t # <<<<<<<<<<<<<< - * ctypedef npy_int16 int16_t - * ctypedef npy_int32 int32_t - */ -typedef npy_int8 __pyx_t_5numpy_int8_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":691 - * - * ctypedef npy_int8 int8_t - * ctypedef npy_int16 int16_t # <<<<<<<<<<<<<< - * ctypedef npy_int32 int32_t - * ctypedef npy_int64 int64_t - */ -typedef npy_int16 __pyx_t_5numpy_int16_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":692 - * ctypedef npy_int8 int8_t - * ctypedef npy_int16 int16_t - * ctypedef npy_int32 int32_t # <<<<<<<<<<<<<< - * ctypedef npy_int64 int64_t - * #ctypedef npy_int96 int96_t - */ -typedef npy_int32 __pyx_t_5numpy_int32_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":693 - * ctypedef npy_int16 int16_t - * ctypedef npy_int32 int32_t - * ctypedef npy_int64 int64_t # <<<<<<<<<<<<<< - * #ctypedef npy_int96 int96_t - * #ctypedef npy_int128 int128_t - */ -typedef npy_int64 __pyx_t_5numpy_int64_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":697 - * #ctypedef npy_int128 int128_t - * - * ctypedef npy_uint8 uint8_t # <<<<<<<<<<<<<< - * ctypedef npy_uint16 uint16_t - * ctypedef npy_uint32 uint32_t - */ -typedef npy_uint8 __pyx_t_5numpy_uint8_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":698 - * - * ctypedef npy_uint8 uint8_t - * ctypedef npy_uint16 uint16_t # <<<<<<<<<<<<<< - * ctypedef npy_uint32 uint32_t - * ctypedef npy_uint64 uint64_t - */ -typedef npy_uint16 __pyx_t_5numpy_uint16_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":699 - * ctypedef npy_uint8 uint8_t - * ctypedef npy_uint16 uint16_t - * ctypedef npy_uint32 uint32_t # <<<<<<<<<<<<<< - * ctypedef npy_uint64 uint64_t - * #ctypedef npy_uint96 uint96_t - */ -typedef npy_uint32 __pyx_t_5numpy_uint32_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":700 - * ctypedef npy_uint16 uint16_t - * ctypedef npy_uint32 uint32_t - * ctypedef npy_uint64 uint64_t # <<<<<<<<<<<<<< - * #ctypedef npy_uint96 uint96_t - * #ctypedef npy_uint128 uint128_t - */ -typedef npy_uint64 __pyx_t_5numpy_uint64_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":704 - * #ctypedef npy_uint128 uint128_t - * - * ctypedef npy_float32 float32_t # <<<<<<<<<<<<<< - * ctypedef npy_float64 float64_t - * #ctypedef npy_float80 float80_t - */ -typedef npy_float32 __pyx_t_5numpy_float32_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":705 - * - * ctypedef npy_float32 float32_t - * ctypedef npy_float64 float64_t # <<<<<<<<<<<<<< - * #ctypedef npy_float80 float80_t - * #ctypedef npy_float128 float128_t - */ -typedef npy_float64 __pyx_t_5numpy_float64_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":714 - * # The int types are mapped a bit surprising -- - * # numpy.int corresponds to 'l' and numpy.long to 'q' - * ctypedef npy_long int_t # <<<<<<<<<<<<<< - * ctypedef npy_longlong long_t - * ctypedef npy_longlong longlong_t - */ -typedef npy_long __pyx_t_5numpy_int_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":715 - * # numpy.int corresponds to 'l' and numpy.long to 'q' - * ctypedef npy_long int_t - * ctypedef npy_longlong long_t # <<<<<<<<<<<<<< - * ctypedef npy_longlong longlong_t - * - */ -typedef npy_longlong __pyx_t_5numpy_long_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":716 - * ctypedef npy_long int_t - * ctypedef npy_longlong long_t - * ctypedef npy_longlong longlong_t # <<<<<<<<<<<<<< - * - * ctypedef npy_ulong uint_t - */ -typedef npy_longlong __pyx_t_5numpy_longlong_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":718 - * ctypedef npy_longlong longlong_t - * - * ctypedef npy_ulong uint_t # <<<<<<<<<<<<<< - * ctypedef npy_ulonglong ulong_t - * ctypedef npy_ulonglong ulonglong_t - */ -typedef npy_ulong __pyx_t_5numpy_uint_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":719 - * - * ctypedef npy_ulong uint_t - * ctypedef npy_ulonglong ulong_t # <<<<<<<<<<<<<< - * ctypedef npy_ulonglong ulonglong_t - * - */ -typedef npy_ulonglong __pyx_t_5numpy_ulong_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":720 - * ctypedef npy_ulong uint_t - * ctypedef npy_ulonglong ulong_t - * ctypedef npy_ulonglong ulonglong_t # <<<<<<<<<<<<<< - * - * ctypedef npy_intp intp_t - */ -typedef npy_ulonglong __pyx_t_5numpy_ulonglong_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":722 - * ctypedef npy_ulonglong ulonglong_t - * - * ctypedef npy_intp intp_t # <<<<<<<<<<<<<< - * ctypedef npy_uintp uintp_t - * - */ -typedef npy_intp __pyx_t_5numpy_intp_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":723 - * - * ctypedef npy_intp intp_t - * ctypedef npy_uintp uintp_t # <<<<<<<<<<<<<< - * - * ctypedef npy_double float_t - */ -typedef npy_uintp __pyx_t_5numpy_uintp_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":725 - * ctypedef npy_uintp uintp_t - * - * ctypedef npy_double float_t # <<<<<<<<<<<<<< - * ctypedef npy_double double_t - * ctypedef npy_longdouble longdouble_t - */ -typedef npy_double __pyx_t_5numpy_float_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":726 - * - * ctypedef npy_double float_t - * ctypedef npy_double double_t # <<<<<<<<<<<<<< - * ctypedef npy_longdouble longdouble_t - * - */ -typedef npy_double __pyx_t_5numpy_double_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":727 - * ctypedef npy_double float_t - * ctypedef npy_double double_t - * ctypedef npy_longdouble longdouble_t # <<<<<<<<<<<<<< - * - * ctypedef npy_cfloat cfloat_t - */ -typedef npy_longdouble __pyx_t_5numpy_longdouble_t; -/* Declarations.proto */ -#if CYTHON_CCOMPLEX - #ifdef __cplusplus - typedef ::std::complex< float > __pyx_t_float_complex; - #else - typedef float _Complex __pyx_t_float_complex; - #endif -#else - typedef struct { float real, imag; } __pyx_t_float_complex; -#endif -static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float, float); - -/* Declarations.proto */ -#if CYTHON_CCOMPLEX - #ifdef __cplusplus - typedef ::std::complex< double > __pyx_t_double_complex; - #else - typedef double _Complex __pyx_t_double_complex; - #endif -#else - typedef struct { double real, imag; } __pyx_t_double_complex; -#endif -static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double, double); - - -/*--- Type declarations ---*/ -struct __pyx_array_obj; -struct __pyx_MemviewEnum_obj; -struct __pyx_memoryview_obj; -struct __pyx_memoryviewslice_obj; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":729 - * ctypedef npy_longdouble longdouble_t - * - * ctypedef npy_cfloat cfloat_t # <<<<<<<<<<<<<< - * ctypedef npy_cdouble cdouble_t - * ctypedef npy_clongdouble clongdouble_t - */ -typedef npy_cfloat __pyx_t_5numpy_cfloat_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":730 - * - * ctypedef npy_cfloat cfloat_t - * ctypedef npy_cdouble cdouble_t # <<<<<<<<<<<<<< - * ctypedef npy_clongdouble clongdouble_t - * - */ -typedef npy_cdouble __pyx_t_5numpy_cdouble_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":731 - * ctypedef npy_cfloat cfloat_t - * ctypedef npy_cdouble cdouble_t - * ctypedef npy_clongdouble clongdouble_t # <<<<<<<<<<<<<< - * - * ctypedef npy_cdouble complex_t - */ -typedef npy_clongdouble __pyx_t_5numpy_clongdouble_t; - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":733 - * ctypedef npy_clongdouble clongdouble_t - * - * ctypedef npy_cdouble complex_t # <<<<<<<<<<<<<< - * - * cdef inline object PyArray_MultiIterNew1(a): - */ -typedef npy_cdouble __pyx_t_5numpy_complex_t; -struct __pyx_opt_args_3TTS_3tts_5utils_15monotonic_align_4core_maximum_path_c; - -/* "TTS/tts/utils/monotonic_align/core.pyx":42 - * @cython.boundscheck(False) - * @cython.wraparound(False) - * cpdef void maximum_path_c(int[:,:,::1] paths, float[:,:,::1] values, int[::1] t_xs, int[::1] t_ys, float max_neg_val=-1e9) nogil: # <<<<<<<<<<<<<< - * cdef int b = values.shape[0] - * - */ -struct __pyx_opt_args_3TTS_3tts_5utils_15monotonic_align_4core_maximum_path_c { - int __pyx_n; - float max_neg_val; -}; - -/* "View.MemoryView":105 - * - * @cname("__pyx_array") - * cdef class array: # <<<<<<<<<<<<<< - * - * cdef: - */ -struct __pyx_array_obj { - PyObject_HEAD - struct __pyx_vtabstruct_array *__pyx_vtab; - char *data; - Py_ssize_t len; - char *format; - int ndim; - Py_ssize_t *_shape; - Py_ssize_t *_strides; - Py_ssize_t itemsize; - PyObject *mode; - PyObject *_format; - void (*callback_free_data)(void *); - int free_data; - int dtype_is_object; -}; - - -/* "View.MemoryView":279 - * - * @cname('__pyx_MemviewEnum') - * cdef class Enum(object): # <<<<<<<<<<<<<< - * cdef object name - * def __init__(self, name): - */ -struct __pyx_MemviewEnum_obj { - PyObject_HEAD - PyObject *name; -}; - - -/* "View.MemoryView":330 - * - * @cname('__pyx_memoryview') - * cdef class memoryview(object): # <<<<<<<<<<<<<< - * - * cdef object obj - */ -struct __pyx_memoryview_obj { - PyObject_HEAD - struct __pyx_vtabstruct_memoryview *__pyx_vtab; - PyObject *obj; - PyObject *_size; - PyObject *_array_interface; - PyThread_type_lock lock; - __pyx_atomic_int acquisition_count[2]; - __pyx_atomic_int *acquisition_count_aligned_p; - Py_buffer view; - int flags; - int dtype_is_object; - __Pyx_TypeInfo *typeinfo; -}; - - -/* "View.MemoryView":965 - * - * @cname('__pyx_memoryviewslice') - * cdef class _memoryviewslice(memoryview): # <<<<<<<<<<<<<< - * "Internal class for passing memoryview slices to Python" - * - */ -struct __pyx_memoryviewslice_obj { - struct __pyx_memoryview_obj __pyx_base; - __Pyx_memviewslice from_slice; - PyObject *from_object; - PyObject *(*to_object_func)(char *); - int (*to_dtype_func)(char *, PyObject *); -}; - - - -/* "View.MemoryView":105 - * - * @cname("__pyx_array") - * cdef class array: # <<<<<<<<<<<<<< - * - * cdef: - */ - -struct __pyx_vtabstruct_array { - PyObject *(*get_memview)(struct __pyx_array_obj *); -}; -static struct __pyx_vtabstruct_array *__pyx_vtabptr_array; - - -/* "View.MemoryView":330 - * - * @cname('__pyx_memoryview') - * cdef class memoryview(object): # <<<<<<<<<<<<<< - * - * cdef object obj - */ - -struct __pyx_vtabstruct_memoryview { - char *(*get_item_pointer)(struct __pyx_memoryview_obj *, PyObject *); - PyObject *(*is_slice)(struct __pyx_memoryview_obj *, PyObject *); - PyObject *(*setitem_slice_assignment)(struct __pyx_memoryview_obj *, PyObject *, PyObject *); - PyObject *(*setitem_slice_assign_scalar)(struct __pyx_memoryview_obj *, struct __pyx_memoryview_obj *, PyObject *); - PyObject *(*setitem_indexed)(struct __pyx_memoryview_obj *, PyObject *, PyObject *); - PyObject *(*convert_item_to_object)(struct __pyx_memoryview_obj *, char *); - PyObject *(*assign_item_from_object)(struct __pyx_memoryview_obj *, char *, PyObject *); -}; -static struct __pyx_vtabstruct_memoryview *__pyx_vtabptr_memoryview; - - -/* "View.MemoryView":965 - * - * @cname('__pyx_memoryviewslice') - * cdef class _memoryviewslice(memoryview): # <<<<<<<<<<<<<< - * "Internal class for passing memoryview slices to Python" - * - */ - -struct __pyx_vtabstruct__memoryviewslice { - struct __pyx_vtabstruct_memoryview __pyx_base; -}; -static struct __pyx_vtabstruct__memoryviewslice *__pyx_vtabptr__memoryviewslice; - -/* --- Runtime support code (head) --- */ -/* Refnanny.proto */ -#ifndef CYTHON_REFNANNY - #define CYTHON_REFNANNY 0 -#endif -#if CYTHON_REFNANNY - typedef struct { - void (*INCREF)(void*, PyObject*, int); - void (*DECREF)(void*, PyObject*, int); - void (*GOTREF)(void*, PyObject*, int); - void (*GIVEREF)(void*, PyObject*, int); - void* (*SetupContext)(const char*, int, const char*); - void (*FinishContext)(void**); - } __Pyx_RefNannyAPIStruct; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); - #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; -#ifdef WITH_THREAD - #define __Pyx_RefNannySetupContext(name, acquire_gil)\ - if (acquire_gil) {\ - PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\ - __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\ - PyGILState_Release(__pyx_gilstate_save);\ - } else {\ - __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\ - } -#else - #define __Pyx_RefNannySetupContext(name, acquire_gil)\ - __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) -#endif - #define __Pyx_RefNannyFinishContext()\ - __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) - #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) - #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) - #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) -#else - #define __Pyx_RefNannyDeclarations - #define __Pyx_RefNannySetupContext(name, acquire_gil) - #define __Pyx_RefNannyFinishContext() - #define __Pyx_INCREF(r) Py_INCREF(r) - #define __Pyx_DECREF(r) Py_DECREF(r) - #define __Pyx_GOTREF(r) - #define __Pyx_GIVEREF(r) - #define __Pyx_XINCREF(r) Py_XINCREF(r) - #define __Pyx_XDECREF(r) Py_XDECREF(r) - #define __Pyx_XGOTREF(r) - #define __Pyx_XGIVEREF(r) -#endif -#define __Pyx_XDECREF_SET(r, v) do {\ - PyObject *tmp = (PyObject *) r;\ - r = v; __Pyx_XDECREF(tmp);\ - } while (0) -#define __Pyx_DECREF_SET(r, v) do {\ - PyObject *tmp = (PyObject *) r;\ - r = v; __Pyx_DECREF(tmp);\ - } while (0) -#define __Pyx_CLEAR(r) do { PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);} while(0) -#define __Pyx_XCLEAR(r) do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0) - -/* PyObjectGetAttrStr.proto */ -#if CYTHON_USE_TYPE_SLOTS -static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name); -#else -#define __Pyx_PyObject_GetAttrStr(o,n) PyObject_GetAttr(o,n) -#endif - -/* GetBuiltinName.proto */ -static PyObject *__Pyx_GetBuiltinName(PyObject *name); - -/* MemviewSliceInit.proto */ -#define __Pyx_BUF_MAX_NDIMS %(BUF_MAX_NDIMS)d -#define __Pyx_MEMVIEW_DIRECT 1 -#define __Pyx_MEMVIEW_PTR 2 -#define __Pyx_MEMVIEW_FULL 4 -#define __Pyx_MEMVIEW_CONTIG 8 -#define __Pyx_MEMVIEW_STRIDED 16 -#define __Pyx_MEMVIEW_FOLLOW 32 -#define __Pyx_IS_C_CONTIG 1 -#define __Pyx_IS_F_CONTIG 2 -static int __Pyx_init_memviewslice( - struct __pyx_memoryview_obj *memview, - int ndim, - __Pyx_memviewslice *memviewslice, - int memview_is_new_reference); -static CYTHON_INLINE int __pyx_add_acquisition_count_locked( - __pyx_atomic_int *acquisition_count, PyThread_type_lock lock); -static CYTHON_INLINE int __pyx_sub_acquisition_count_locked( - __pyx_atomic_int *acquisition_count, PyThread_type_lock lock); -#define __pyx_get_slice_count_pointer(memview) (memview->acquisition_count_aligned_p) -#define __pyx_get_slice_count(memview) (*__pyx_get_slice_count_pointer(memview)) -#define __PYX_INC_MEMVIEW(slice, have_gil) __Pyx_INC_MEMVIEW(slice, have_gil, __LINE__) -#define __PYX_XDEC_MEMVIEW(slice, have_gil) __Pyx_XDEC_MEMVIEW(slice, have_gil, __LINE__) -static CYTHON_INLINE void __Pyx_INC_MEMVIEW(__Pyx_memviewslice *, int, int); -static CYTHON_INLINE void __Pyx_XDEC_MEMVIEW(__Pyx_memviewslice *, int, int); - -/* RaiseArgTupleInvalid.proto */ -static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, - Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); - -/* RaiseDoubleKeywords.proto */ -static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name); - -/* ParseKeywords.proto */ -static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[],\ - PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args,\ - const char* function_name); - -/* None.proto */ -static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname); - -/* GetTopmostException.proto */ -#if CYTHON_USE_EXC_INFO_STACK -static _PyErr_StackItem * __Pyx_PyErr_GetTopmostException(PyThreadState *tstate); -#endif - -/* PyThreadStateGet.proto */ -#if CYTHON_FAST_THREAD_STATE -#define __Pyx_PyThreadState_declare PyThreadState *__pyx_tstate; -#define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current; -#define __Pyx_PyErr_Occurred() __pyx_tstate->curexc_type -#else -#define __Pyx_PyThreadState_declare -#define __Pyx_PyThreadState_assign -#define __Pyx_PyErr_Occurred() PyErr_Occurred() -#endif - -/* SaveResetException.proto */ -#if CYTHON_FAST_THREAD_STATE -#define __Pyx_ExceptionSave(type, value, tb) __Pyx__ExceptionSave(__pyx_tstate, type, value, tb) -static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); -#define __Pyx_ExceptionReset(type, value, tb) __Pyx__ExceptionReset(__pyx_tstate, type, value, tb) -static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb); -#else -#define __Pyx_ExceptionSave(type, value, tb) PyErr_GetExcInfo(type, value, tb) -#define __Pyx_ExceptionReset(type, value, tb) PyErr_SetExcInfo(type, value, tb) -#endif - -/* PyErrExceptionMatches.proto */ -#if CYTHON_FAST_THREAD_STATE -#define __Pyx_PyErr_ExceptionMatches(err) __Pyx_PyErr_ExceptionMatchesInState(__pyx_tstate, err) -static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err); -#else -#define __Pyx_PyErr_ExceptionMatches(err) PyErr_ExceptionMatches(err) -#endif - -/* GetException.proto */ -#if CYTHON_FAST_THREAD_STATE -#define __Pyx_GetException(type, value, tb) __Pyx__GetException(__pyx_tstate, type, value, tb) -static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); -#else -static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb); -#endif - -/* PyObjectCall.proto */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw); -#else -#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw) -#endif - -/* PyErrFetchRestore.proto */ -#if CYTHON_FAST_THREAD_STATE -#define __Pyx_PyErr_Clear() __Pyx_ErrRestore(NULL, NULL, NULL) -#define __Pyx_ErrRestoreWithState(type, value, tb) __Pyx_ErrRestoreInState(PyThreadState_GET(), type, value, tb) -#define __Pyx_ErrFetchWithState(type, value, tb) __Pyx_ErrFetchInState(PyThreadState_GET(), type, value, tb) -#define __Pyx_ErrRestore(type, value, tb) __Pyx_ErrRestoreInState(__pyx_tstate, type, value, tb) -#define __Pyx_ErrFetch(type, value, tb) __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb) -static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb); -static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); -#if CYTHON_COMPILING_IN_CPYTHON -#define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL)) -#else -#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc) -#endif -#else -#define __Pyx_PyErr_Clear() PyErr_Clear() -#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc) -#define __Pyx_ErrRestoreWithState(type, value, tb) PyErr_Restore(type, value, tb) -#define __Pyx_ErrFetchWithState(type, value, tb) PyErr_Fetch(type, value, tb) -#define __Pyx_ErrRestoreInState(tstate, type, value, tb) PyErr_Restore(type, value, tb) -#define __Pyx_ErrFetchInState(tstate, type, value, tb) PyErr_Fetch(type, value, tb) -#define __Pyx_ErrRestore(type, value, tb) PyErr_Restore(type, value, tb) -#define __Pyx_ErrFetch(type, value, tb) PyErr_Fetch(type, value, tb) -#endif - -/* RaiseException.proto */ -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); - -/* ArgTypeTest.proto */ -#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\ - ((likely((Py_TYPE(obj) == type) | (none_allowed && (obj == Py_None)))) ? 1 :\ - __Pyx__ArgTypeTest(obj, type, name, exact)) -static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact); - -/* PyCFunctionFastCall.proto */ -#if CYTHON_FAST_PYCCALL -static CYTHON_INLINE PyObject *__Pyx_PyCFunction_FastCall(PyObject *func, PyObject **args, Py_ssize_t nargs); -#else -#define __Pyx_PyCFunction_FastCall(func, args, nargs) (assert(0), NULL) -#endif - -/* PyFunctionFastCall.proto */ -#if CYTHON_FAST_PYCALL -#define __Pyx_PyFunction_FastCall(func, args, nargs)\ - __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL) -#if 1 || PY_VERSION_HEX < 0x030600B1 -static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs); -#else -#define __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs) _PyFunction_FastCallDict(func, args, nargs, kwargs) -#endif -#define __Pyx_BUILD_ASSERT_EXPR(cond)\ - (sizeof(char [1 - 2*!(cond)]) - 1) -#ifndef Py_MEMBER_SIZE -#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member) -#endif -#if CYTHON_FAST_PYCALL - static size_t __pyx_pyframe_localsplus_offset = 0; - #include "frameobject.h" -#if PY_VERSION_HEX >= 0x030b00a6 - #ifndef Py_BUILD_CORE - #define Py_BUILD_CORE 1 - #endif - #include "internal/pycore_frame.h" -#endif - #define __Pxy_PyFrame_Initialize_Offsets()\ - ((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\ - (void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus))) - #define __Pyx_PyFrame_GetLocalsplus(frame)\ - (assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset)) -#endif // CYTHON_FAST_PYCALL -#endif - -/* PyObjectCall2Args.proto */ -static CYTHON_UNUSED PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2); - -/* PyObjectCallMethO.proto */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg); -#endif - -/* PyObjectCallOneArg.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg); - -/* IncludeStringH.proto */ -#include - -/* BytesEquals.proto */ -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals); - -/* UnicodeEquals.proto */ -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); - -/* StrEquals.proto */ -#if PY_MAJOR_VERSION >= 3 -#define __Pyx_PyString_Equals __Pyx_PyUnicode_Equals -#else -#define __Pyx_PyString_Equals __Pyx_PyBytes_Equals -#endif - -/* DivInt[Py_ssize_t].proto */ -static CYTHON_INLINE Py_ssize_t __Pyx_div_Py_ssize_t(Py_ssize_t, Py_ssize_t); - -/* UnaryNegOverflows.proto */ -#define UNARY_NEG_WOULD_OVERFLOW(x)\ - (((x) < 0) & ((unsigned long)(x) == 0-(unsigned long)(x))) - -static CYTHON_UNUSED int __pyx_array_getbuffer(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags); /*proto*/ -static PyObject *__pyx_array_get_memview(struct __pyx_array_obj *); /*proto*/ -/* GetAttr.proto */ -static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *, PyObject *); - -/* GetItemInt.proto */ -#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\ - (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ - __Pyx_GetItemInt_Fast(o, (Py_ssize_t)i, is_list, wraparound, boundscheck) :\ - (is_list ? (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL) :\ - __Pyx_GetItemInt_Generic(o, to_py_func(i)))) -#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\ - (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ - __Pyx_GetItemInt_List_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\ - (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL)) -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i, - int wraparound, int boundscheck); -#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\ - (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\ - __Pyx_GetItemInt_Tuple_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\ - (PyErr_SetString(PyExc_IndexError, "tuple index out of range"), (PyObject*)NULL)) -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i, - int wraparound, int boundscheck); -static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j); -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, - int is_list, int wraparound, int boundscheck); - -/* ObjectGetItem.proto */ -#if CYTHON_USE_TYPE_SLOTS -static CYTHON_INLINE PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject* key); -#else -#define __Pyx_PyObject_GetItem(obj, key) PyObject_GetItem(obj, key) -#endif - -/* decode_c_string_utf16.proto */ -static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16(const char *s, Py_ssize_t size, const char *errors) { - int byteorder = 0; - return PyUnicode_DecodeUTF16(s, size, errors, &byteorder); -} -static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16LE(const char *s, Py_ssize_t size, const char *errors) { - int byteorder = -1; - return PyUnicode_DecodeUTF16(s, size, errors, &byteorder); -} -static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16BE(const char *s, Py_ssize_t size, const char *errors) { - int byteorder = 1; - return PyUnicode_DecodeUTF16(s, size, errors, &byteorder); -} - -/* decode_c_string.proto */ -static CYTHON_INLINE PyObject* __Pyx_decode_c_string( - const char* cstring, Py_ssize_t start, Py_ssize_t stop, - const char* encoding, const char* errors, - PyObject* (*decode_func)(const char *s, Py_ssize_t size, const char *errors)); - -/* GetAttr3.proto */ -static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *, PyObject *, PyObject *); - -/* PyDictVersioning.proto */ -#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS -#define __PYX_DICT_VERSION_INIT ((PY_UINT64_T) -1) -#define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag) -#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var)\ - (version_var) = __PYX_GET_DICT_VERSION(dict);\ - (cache_var) = (value); -#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) {\ - static PY_UINT64_T __pyx_dict_version = 0;\ - static PyObject *__pyx_dict_cached_value = NULL;\ - if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\ - (VAR) = __pyx_dict_cached_value;\ - } else {\ - (VAR) = __pyx_dict_cached_value = (LOOKUP);\ - __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\ - }\ -} -static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj); -static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj); -static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version); -#else -#define __PYX_GET_DICT_VERSION(dict) (0) -#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var) -#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) (VAR) = (LOOKUP); -#endif - -/* GetModuleGlobalName.proto */ -#if CYTHON_USE_DICT_VERSIONS -#define __Pyx_GetModuleGlobalName(var, name) {\ - static PY_UINT64_T __pyx_dict_version = 0;\ - static PyObject *__pyx_dict_cached_value = NULL;\ - (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\ - (likely(__pyx_dict_cached_value) ? __Pyx_NewRef(__pyx_dict_cached_value) : __Pyx_GetBuiltinName(name)) :\ - __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ -} -#define __Pyx_GetModuleGlobalNameUncached(var, name) {\ - PY_UINT64_T __pyx_dict_version;\ - PyObject *__pyx_dict_cached_value;\ - (var) = __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\ -} -static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value); -#else -#define __Pyx_GetModuleGlobalName(var, name) (var) = __Pyx__GetModuleGlobalName(name) -#define __Pyx_GetModuleGlobalNameUncached(var, name) (var) = __Pyx__GetModuleGlobalName(name) -static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name); -#endif - -/* RaiseTooManyValuesToUnpack.proto */ -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected); - -/* RaiseNeedMoreValuesToUnpack.proto */ -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index); - -/* RaiseNoneIterError.proto */ -static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void); - -/* ExtTypeTest.proto */ -static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type); - -/* SwapException.proto */ -#if CYTHON_FAST_THREAD_STATE -#define __Pyx_ExceptionSwap(type, value, tb) __Pyx__ExceptionSwap(__pyx_tstate, type, value, tb) -static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb); -#else -static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb); -#endif - -/* Import.proto */ -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level); - -/* FastTypeChecks.proto */ -#if CYTHON_COMPILING_IN_CPYTHON -#define __Pyx_TypeCheck(obj, type) __Pyx_IsSubtype(Py_TYPE(obj), (PyTypeObject *)type) -static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b); -static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type); -static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2); -#else -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) -#define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type) -#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2)) -#endif -#define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception) - -static CYTHON_UNUSED int __pyx_memoryview_getbuffer(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags); /*proto*/ -/* ListCompAppend.proto */ -#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS -static CYTHON_INLINE int __Pyx_ListComp_Append(PyObject* list, PyObject* x) { - PyListObject* L = (PyListObject*) list; - Py_ssize_t len = Py_SIZE(list); - if (likely(L->allocated > len)) { - Py_INCREF(x); - PyList_SET_ITEM(list, len, x); - __Pyx_SET_SIZE(list, len + 1); - return 0; - } - return PyList_Append(list, x); -} -#else -#define __Pyx_ListComp_Append(L,x) PyList_Append(L,x) -#endif - -/* PyIntBinop.proto */ -#if !CYTHON_COMPILING_IN_PYPY -static PyObject* __Pyx_PyInt_AddObjC(PyObject *op1, PyObject *op2, long intval, int inplace, int zerodivision_check); -#else -#define __Pyx_PyInt_AddObjC(op1, op2, intval, inplace, zerodivision_check)\ - (inplace ? PyNumber_InPlaceAdd(op1, op2) : PyNumber_Add(op1, op2)) -#endif - -/* ListExtend.proto */ -static CYTHON_INLINE int __Pyx_PyList_Extend(PyObject* L, PyObject* v) { -#if CYTHON_COMPILING_IN_CPYTHON - PyObject* none = _PyList_Extend((PyListObject*)L, v); - if (unlikely(!none)) - return -1; - Py_DECREF(none); - return 0; -#else - return PyList_SetSlice(L, PY_SSIZE_T_MAX, PY_SSIZE_T_MAX, v); -#endif -} - -/* ListAppend.proto */ -#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS -static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) { - PyListObject* L = (PyListObject*) list; - Py_ssize_t len = Py_SIZE(list); - if (likely(L->allocated > len) & likely(len > (L->allocated >> 1))) { - Py_INCREF(x); - PyList_SET_ITEM(list, len, x); - __Pyx_SET_SIZE(list, len + 1); - return 0; - } - return PyList_Append(list, x); -} -#else -#define __Pyx_PyList_Append(L,x) PyList_Append(L,x) -#endif - -/* DivInt[long].proto */ -static CYTHON_INLINE long __Pyx_div_long(long, long); - -/* PySequenceContains.proto */ -static CYTHON_INLINE int __Pyx_PySequence_ContainsTF(PyObject* item, PyObject* seq, int eq) { - int result = PySequence_Contains(seq, item); - return unlikely(result < 0) ? result : (result == (eq == Py_EQ)); -} - -/* ImportFrom.proto */ -static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name); - -/* HasAttr.proto */ -static CYTHON_INLINE int __Pyx_HasAttr(PyObject *, PyObject *); - -/* PyObject_GenericGetAttrNoDict.proto */ -#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 -static CYTHON_INLINE PyObject* __Pyx_PyObject_GenericGetAttrNoDict(PyObject* obj, PyObject* attr_name); -#else -#define __Pyx_PyObject_GenericGetAttrNoDict PyObject_GenericGetAttr -#endif - -/* PyObject_GenericGetAttr.proto */ -#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 -static PyObject* __Pyx_PyObject_GenericGetAttr(PyObject* obj, PyObject* attr_name); -#else -#define __Pyx_PyObject_GenericGetAttr PyObject_GenericGetAttr -#endif - -/* SetVTable.proto */ -static int __Pyx_SetVtable(PyObject *dict, void *vtable); - -/* PyObjectGetAttrStrNoError.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name); - -/* SetupReduce.proto */ -static int __Pyx_setup_reduce(PyObject* type_obj); - -/* TypeImport.proto */ -#ifndef __PYX_HAVE_RT_ImportType_proto -#define __PYX_HAVE_RT_ImportType_proto -enum __Pyx_ImportType_CheckSize { - __Pyx_ImportType_CheckSize_Error = 0, - __Pyx_ImportType_CheckSize_Warn = 1, - __Pyx_ImportType_CheckSize_Ignore = 2 -}; -static PyTypeObject *__Pyx_ImportType(PyObject* module, const char *module_name, const char *class_name, size_t size, enum __Pyx_ImportType_CheckSize check_size); -#endif - -/* CLineInTraceback.proto */ -#ifdef CYTHON_CLINE_IN_TRACEBACK -#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0) -#else -static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line); -#endif - -/* CodeObjectCache.proto */ -typedef struct { - PyCodeObject* code_object; - int code_line; -} __Pyx_CodeObjectCacheEntry; -struct __Pyx_CodeObjectCache { - int count; - int max_count; - __Pyx_CodeObjectCacheEntry* entries; -}; -static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL}; -static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line); -static PyCodeObject *__pyx_find_code_object(int code_line); -static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object); - -/* AddTraceback.proto */ -static void __Pyx_AddTraceback(const char *funcname, int c_line, - int py_line, const char *filename); - -#if PY_MAJOR_VERSION < 3 - static int __Pyx_GetBuffer(PyObject *obj, Py_buffer *view, int flags); - static void __Pyx_ReleaseBuffer(Py_buffer *view); -#else - #define __Pyx_GetBuffer PyObject_GetBuffer - #define __Pyx_ReleaseBuffer PyBuffer_Release -#endif - - -/* BufferStructDeclare.proto */ -typedef struct { - Py_ssize_t shape, strides, suboffsets; -} __Pyx_Buf_DimInfo; -typedef struct { - size_t refcount; - Py_buffer pybuffer; -} __Pyx_Buffer; -typedef struct { - __Pyx_Buffer *rcbuffer; - char *data; - __Pyx_Buf_DimInfo diminfo[8]; -} __Pyx_LocalBuf_ND; - -/* MemviewSliceIsContig.proto */ -static int __pyx_memviewslice_is_contig(const __Pyx_memviewslice mvs, char order, int ndim); - -/* OverlappingSlices.proto */ -static int __pyx_slices_overlap(__Pyx_memviewslice *slice1, - __Pyx_memviewslice *slice2, - int ndim, size_t itemsize); - -/* Capsule.proto */ -static CYTHON_INLINE PyObject *__pyx_capsule_create(void *p, const char *sig); - -/* IsLittleEndian.proto */ -static CYTHON_INLINE int __Pyx_Is_Little_Endian(void); - -/* BufferFormatCheck.proto */ -static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx, const char* ts); -static void __Pyx_BufFmt_Init(__Pyx_BufFmt_Context* ctx, - __Pyx_BufFmt_StackElem* stack, - __Pyx_TypeInfo* type); - -/* TypeInfoCompare.proto */ -static int __pyx_typeinfo_cmp(__Pyx_TypeInfo *a, __Pyx_TypeInfo *b); - -/* MemviewSliceValidateAndInit.proto */ -static int __Pyx_ValidateAndInit_memviewslice( - int *axes_specs, - int c_or_f_flag, - int buf_flags, - int ndim, - __Pyx_TypeInfo *dtype, - __Pyx_BufFmt_StackElem stack[], - __Pyx_memviewslice *memviewslice, - PyObject *original_obj); - -/* ObjectToMemviewSlice.proto */ -static CYTHON_INLINE __Pyx_memviewslice __Pyx_PyObject_to_MemoryviewSlice_d_d_dc_int(PyObject *, int writable_flag); - -/* ObjectToMemviewSlice.proto */ -static CYTHON_INLINE __Pyx_memviewslice __Pyx_PyObject_to_MemoryviewSlice_d_d_dc_float(PyObject *, int writable_flag); - -/* ObjectToMemviewSlice.proto */ -static CYTHON_INLINE __Pyx_memviewslice __Pyx_PyObject_to_MemoryviewSlice_dc_int(PyObject *, int writable_flag); - -/* GCCDiagnostics.proto */ -#if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) -#define __Pyx_HAS_GCC_DIAGNOSTIC -#endif - -/* RealImag.proto */ -#if CYTHON_CCOMPLEX - #ifdef __cplusplus - #define __Pyx_CREAL(z) ((z).real()) - #define __Pyx_CIMAG(z) ((z).imag()) - #else - #define __Pyx_CREAL(z) (__real__(z)) - #define __Pyx_CIMAG(z) (__imag__(z)) - #endif -#else - #define __Pyx_CREAL(z) ((z).real) - #define __Pyx_CIMAG(z) ((z).imag) -#endif -#if defined(__cplusplus) && CYTHON_CCOMPLEX\ - && (defined(_WIN32) || defined(__clang__) || (defined(__GNUC__) && (__GNUC__ >= 5 || __GNUC__ == 4 && __GNUC_MINOR__ >= 4 )) || __cplusplus >= 201103) - #define __Pyx_SET_CREAL(z,x) ((z).real(x)) - #define __Pyx_SET_CIMAG(z,y) ((z).imag(y)) -#else - #define __Pyx_SET_CREAL(z,x) __Pyx_CREAL(z) = (x) - #define __Pyx_SET_CIMAG(z,y) __Pyx_CIMAG(z) = (y) -#endif - -/* Arithmetic.proto */ -#if CYTHON_CCOMPLEX - #define __Pyx_c_eq_float(a, b) ((a)==(b)) - #define __Pyx_c_sum_float(a, b) ((a)+(b)) - #define __Pyx_c_diff_float(a, b) ((a)-(b)) - #define __Pyx_c_prod_float(a, b) ((a)*(b)) - #define __Pyx_c_quot_float(a, b) ((a)/(b)) - #define __Pyx_c_neg_float(a) (-(a)) - #ifdef __cplusplus - #define __Pyx_c_is_zero_float(z) ((z)==(float)0) - #define __Pyx_c_conj_float(z) (::std::conj(z)) - #if 1 - #define __Pyx_c_abs_float(z) (::std::abs(z)) - #define __Pyx_c_pow_float(a, b) (::std::pow(a, b)) - #endif - #else - #define __Pyx_c_is_zero_float(z) ((z)==0) - #define __Pyx_c_conj_float(z) (conjf(z)) - #if 1 - #define __Pyx_c_abs_float(z) (cabsf(z)) - #define __Pyx_c_pow_float(a, b) (cpowf(a, b)) - #endif - #endif -#else - static CYTHON_INLINE int __Pyx_c_eq_float(__pyx_t_float_complex, __pyx_t_float_complex); - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sum_float(__pyx_t_float_complex, __pyx_t_float_complex); - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_diff_float(__pyx_t_float_complex, __pyx_t_float_complex); - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prod_float(__pyx_t_float_complex, __pyx_t_float_complex); - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex, __pyx_t_float_complex); - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_neg_float(__pyx_t_float_complex); - static CYTHON_INLINE int __Pyx_c_is_zero_float(__pyx_t_float_complex); - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conj_float(__pyx_t_float_complex); - #if 1 - static CYTHON_INLINE float __Pyx_c_abs_float(__pyx_t_float_complex); - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_pow_float(__pyx_t_float_complex, __pyx_t_float_complex); - #endif -#endif - -/* Arithmetic.proto */ -#if CYTHON_CCOMPLEX - #define __Pyx_c_eq_double(a, b) ((a)==(b)) - #define __Pyx_c_sum_double(a, b) ((a)+(b)) - #define __Pyx_c_diff_double(a, b) ((a)-(b)) - #define __Pyx_c_prod_double(a, b) ((a)*(b)) - #define __Pyx_c_quot_double(a, b) ((a)/(b)) - #define __Pyx_c_neg_double(a) (-(a)) - #ifdef __cplusplus - #define __Pyx_c_is_zero_double(z) ((z)==(double)0) - #define __Pyx_c_conj_double(z) (::std::conj(z)) - #if 1 - #define __Pyx_c_abs_double(z) (::std::abs(z)) - #define __Pyx_c_pow_double(a, b) (::std::pow(a, b)) - #endif - #else - #define __Pyx_c_is_zero_double(z) ((z)==0) - #define __Pyx_c_conj_double(z) (conj(z)) - #if 1 - #define __Pyx_c_abs_double(z) (cabs(z)) - #define __Pyx_c_pow_double(a, b) (cpow(a, b)) - #endif - #endif -#else - static CYTHON_INLINE int __Pyx_c_eq_double(__pyx_t_double_complex, __pyx_t_double_complex); - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum_double(__pyx_t_double_complex, __pyx_t_double_complex); - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff_double(__pyx_t_double_complex, __pyx_t_double_complex); - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod_double(__pyx_t_double_complex, __pyx_t_double_complex); - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex, __pyx_t_double_complex); - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg_double(__pyx_t_double_complex); - static CYTHON_INLINE int __Pyx_c_is_zero_double(__pyx_t_double_complex); - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj_double(__pyx_t_double_complex); - #if 1 - static CYTHON_INLINE double __Pyx_c_abs_double(__pyx_t_double_complex); - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow_double(__pyx_t_double_complex, __pyx_t_double_complex); - #endif -#endif - -/* MemviewSliceCopyTemplate.proto */ -static __Pyx_memviewslice -__pyx_memoryview_copy_new_contig(const __Pyx_memviewslice *from_mvs, - const char *mode, int ndim, - size_t sizeof_dtype, int contig_flag, - int dtype_is_object); - -/* CIntToPy.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value); - -/* CIntFromPy.proto */ -static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *); - -/* CIntToPy.proto */ -static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value); - -/* CIntFromPy.proto */ -static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *); - -/* CIntFromPy.proto */ -static CYTHON_INLINE char __Pyx_PyInt_As_char(PyObject *); - -/* CheckBinaryVersion.proto */ -static int __Pyx_check_binary_version(void); - -/* InitStrings.proto */ -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); - -static PyObject *__pyx_array_get_memview(struct __pyx_array_obj *__pyx_v_self); /* proto*/ -static char *__pyx_memoryview_get_item_pointer(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index); /* proto*/ -static PyObject *__pyx_memoryview_is_slice(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_obj); /* proto*/ -static PyObject *__pyx_memoryview_setitem_slice_assignment(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_dst, PyObject *__pyx_v_src); /* proto*/ -static PyObject *__pyx_memoryview_setitem_slice_assign_scalar(struct __pyx_memoryview_obj *__pyx_v_self, struct __pyx_memoryview_obj *__pyx_v_dst, PyObject *__pyx_v_value); /* proto*/ -static PyObject *__pyx_memoryview_setitem_indexed(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value); /* proto*/ -static PyObject *__pyx_memoryview_convert_item_to_object(struct __pyx_memoryview_obj *__pyx_v_self, char *__pyx_v_itemp); /* proto*/ -static PyObject *__pyx_memoryview_assign_item_from_object(struct __pyx_memoryview_obj *__pyx_v_self, char *__pyx_v_itemp, PyObject *__pyx_v_value); /* proto*/ -static PyObject *__pyx_memoryviewslice_convert_item_to_object(struct __pyx_memoryviewslice_obj *__pyx_v_self, char *__pyx_v_itemp); /* proto*/ -static PyObject *__pyx_memoryviewslice_assign_item_from_object(struct __pyx_memoryviewslice_obj *__pyx_v_self, char *__pyx_v_itemp, PyObject *__pyx_v_value); /* proto*/ - -/* Module declarations from 'cython.view' */ - -/* Module declarations from 'cython' */ - -/* Module declarations from 'cpython.buffer' */ - -/* Module declarations from 'libc.string' */ - -/* Module declarations from 'libc.stdio' */ - -/* Module declarations from '__builtin__' */ - -/* Module declarations from 'cpython.type' */ -static PyTypeObject *__pyx_ptype_7cpython_4type_type = 0; - -/* Module declarations from 'cpython' */ - -/* Module declarations from 'cpython.object' */ - -/* Module declarations from 'cpython.ref' */ - -/* Module declarations from 'cpython.mem' */ - -/* Module declarations from 'numpy' */ - -/* Module declarations from 'numpy' */ -static PyTypeObject *__pyx_ptype_5numpy_dtype = 0; -static PyTypeObject *__pyx_ptype_5numpy_flatiter = 0; -static PyTypeObject *__pyx_ptype_5numpy_broadcast = 0; -static PyTypeObject *__pyx_ptype_5numpy_ndarray = 0; -static PyTypeObject *__pyx_ptype_5numpy_generic = 0; -static PyTypeObject *__pyx_ptype_5numpy_number = 0; -static PyTypeObject *__pyx_ptype_5numpy_integer = 0; -static PyTypeObject *__pyx_ptype_5numpy_signedinteger = 0; -static PyTypeObject *__pyx_ptype_5numpy_unsignedinteger = 0; -static PyTypeObject *__pyx_ptype_5numpy_inexact = 0; -static PyTypeObject *__pyx_ptype_5numpy_floating = 0; -static PyTypeObject *__pyx_ptype_5numpy_complexfloating = 0; -static PyTypeObject *__pyx_ptype_5numpy_flexible = 0; -static PyTypeObject *__pyx_ptype_5numpy_character = 0; -static PyTypeObject *__pyx_ptype_5numpy_ufunc = 0; - -/* Module declarations from 'TTS.tts.utils.monotonic_align.core' */ -static PyTypeObject *__pyx_array_type = 0; -static PyTypeObject *__pyx_MemviewEnum_type = 0; -static PyTypeObject *__pyx_memoryview_type = 0; -static PyTypeObject *__pyx_memoryviewslice_type = 0; -static PyObject *generic = 0; -static PyObject *strided = 0; -static PyObject *indirect = 0; -static PyObject *contiguous = 0; -static PyObject *indirect_contiguous = 0; -static int __pyx_memoryview_thread_locks_used; -static PyThread_type_lock __pyx_memoryview_thread_locks[8]; -static void __pyx_f_3TTS_3tts_5utils_15monotonic_align_4core_maximum_path_each(__Pyx_memviewslice, __Pyx_memviewslice, int, int, float); /*proto*/ -static void __pyx_f_3TTS_3tts_5utils_15monotonic_align_4core_maximum_path_c(__Pyx_memviewslice, __Pyx_memviewslice, __Pyx_memviewslice, __Pyx_memviewslice, int __pyx_skip_dispatch, struct __pyx_opt_args_3TTS_3tts_5utils_15monotonic_align_4core_maximum_path_c *__pyx_optional_args); /*proto*/ -static struct __pyx_array_obj *__pyx_array_new(PyObject *, Py_ssize_t, char *, char *, char *); /*proto*/ -static void *__pyx_align_pointer(void *, size_t); /*proto*/ -static PyObject *__pyx_memoryview_new(PyObject *, int, int, __Pyx_TypeInfo *); /*proto*/ -static CYTHON_INLINE int __pyx_memoryview_check(PyObject *); /*proto*/ -static PyObject *_unellipsify(PyObject *, int); /*proto*/ -static PyObject *assert_direct_dimensions(Py_ssize_t *, int); /*proto*/ -static struct __pyx_memoryview_obj *__pyx_memview_slice(struct __pyx_memoryview_obj *, PyObject *); /*proto*/ -static int __pyx_memoryview_slice_memviewslice(__Pyx_memviewslice *, Py_ssize_t, Py_ssize_t, Py_ssize_t, int, int, int *, Py_ssize_t, Py_ssize_t, Py_ssize_t, int, int, int, int); /*proto*/ -static char *__pyx_pybuffer_index(Py_buffer *, char *, Py_ssize_t, Py_ssize_t); /*proto*/ -static int __pyx_memslice_transpose(__Pyx_memviewslice *); /*proto*/ -static PyObject *__pyx_memoryview_fromslice(__Pyx_memviewslice, int, PyObject *(*)(char *), int (*)(char *, PyObject *), int); /*proto*/ -static __Pyx_memviewslice *__pyx_memoryview_get_slice_from_memoryview(struct __pyx_memoryview_obj *, __Pyx_memviewslice *); /*proto*/ -static void __pyx_memoryview_slice_copy(struct __pyx_memoryview_obj *, __Pyx_memviewslice *); /*proto*/ -static PyObject *__pyx_memoryview_copy_object(struct __pyx_memoryview_obj *); /*proto*/ -static PyObject *__pyx_memoryview_copy_object_from_slice(struct __pyx_memoryview_obj *, __Pyx_memviewslice *); /*proto*/ -static Py_ssize_t abs_py_ssize_t(Py_ssize_t); /*proto*/ -static char __pyx_get_best_slice_order(__Pyx_memviewslice *, int); /*proto*/ -static void _copy_strided_to_strided(char *, Py_ssize_t *, char *, Py_ssize_t *, Py_ssize_t *, Py_ssize_t *, int, size_t); /*proto*/ -static void copy_strided_to_strided(__Pyx_memviewslice *, __Pyx_memviewslice *, int, size_t); /*proto*/ -static Py_ssize_t __pyx_memoryview_slice_get_size(__Pyx_memviewslice *, int); /*proto*/ -static Py_ssize_t __pyx_fill_contig_strides_array(Py_ssize_t *, Py_ssize_t *, Py_ssize_t, int, char); /*proto*/ -static void *__pyx_memoryview_copy_data_to_temp(__Pyx_memviewslice *, __Pyx_memviewslice *, char, int); /*proto*/ -static int __pyx_memoryview_err_extents(int, Py_ssize_t, Py_ssize_t); /*proto*/ -static int __pyx_memoryview_err_dim(PyObject *, char *, int); /*proto*/ -static int __pyx_memoryview_err(PyObject *, char *); /*proto*/ -static int __pyx_memoryview_copy_contents(__Pyx_memviewslice, __Pyx_memviewslice, int, int, int); /*proto*/ -static void __pyx_memoryview_broadcast_leading(__Pyx_memviewslice *, int, int); /*proto*/ -static void __pyx_memoryview_refcount_copying(__Pyx_memviewslice *, int, int, int); /*proto*/ -static void __pyx_memoryview_refcount_objects_in_slice_with_gil(char *, Py_ssize_t *, Py_ssize_t *, int, int); /*proto*/ -static void __pyx_memoryview_refcount_objects_in_slice(char *, Py_ssize_t *, Py_ssize_t *, int, int); /*proto*/ -static void __pyx_memoryview_slice_assign_scalar(__Pyx_memviewslice *, int, size_t, void *, int); /*proto*/ -static void __pyx_memoryview__slice_assign_scalar(char *, Py_ssize_t *, Py_ssize_t *, int, size_t, void *); /*proto*/ -static PyObject *__pyx_unpickle_Enum__set_state(struct __pyx_MemviewEnum_obj *, PyObject *); /*proto*/ -static __Pyx_TypeInfo __Pyx_TypeInfo_int = { "int", NULL, sizeof(int), { 0 }, 0, IS_UNSIGNED(int) ? 'U' : 'I', IS_UNSIGNED(int), 0 }; -static __Pyx_TypeInfo __Pyx_TypeInfo_float = { "float", NULL, sizeof(float), { 0 }, 0, 'R', 0, 0 }; -#define __Pyx_MODULE_NAME "TTS.tts.utils.monotonic_align.core" -extern int __pyx_module_is_main_TTS__tts__utils__monotonic_align__core; -int __pyx_module_is_main_TTS__tts__utils__monotonic_align__core = 0; - -/* Implementation of 'TTS.tts.utils.monotonic_align.core' */ -static PyObject *__pyx_builtin_range; -static PyObject *__pyx_builtin_ImportError; -static PyObject *__pyx_builtin_ValueError; -static PyObject *__pyx_builtin_MemoryError; -static PyObject *__pyx_builtin_enumerate; -static PyObject *__pyx_builtin_TypeError; -static PyObject *__pyx_builtin_Ellipsis; -static PyObject *__pyx_builtin_id; -static PyObject *__pyx_builtin_IndexError; -static const char __pyx_k_O[] = "O"; -static const char __pyx_k_c[] = "c"; -static const char __pyx_k_id[] = "id"; -static const char __pyx_k_np[] = "np"; -static const char __pyx_k_new[] = "__new__"; -static const char __pyx_k_obj[] = "obj"; -static const char __pyx_k_base[] = "base"; -static const char __pyx_k_dict[] = "__dict__"; -static const char __pyx_k_main[] = "__main__"; -static const char __pyx_k_mode[] = "mode"; -static const char __pyx_k_name[] = "name"; -static const char __pyx_k_ndim[] = "ndim"; -static const char __pyx_k_pack[] = "pack"; -static const char __pyx_k_size[] = "size"; -static const char __pyx_k_step[] = "step"; -static const char __pyx_k_stop[] = "stop"; -static const char __pyx_k_t_xs[] = "t_xs"; -static const char __pyx_k_t_ys[] = "t_ys"; -static const char __pyx_k_test[] = "__test__"; -static const char __pyx_k_ASCII[] = "ASCII"; -static const char __pyx_k_class[] = "__class__"; -static const char __pyx_k_error[] = "error"; -static const char __pyx_k_flags[] = "flags"; -static const char __pyx_k_numpy[] = "numpy"; -static const char __pyx_k_paths[] = "paths"; -static const char __pyx_k_range[] = "range"; -static const char __pyx_k_shape[] = "shape"; -static const char __pyx_k_start[] = "start"; -static const char __pyx_k_encode[] = "encode"; -static const char __pyx_k_format[] = "format"; -static const char __pyx_k_import[] = "__import__"; -static const char __pyx_k_name_2[] = "__name__"; -static const char __pyx_k_pickle[] = "pickle"; -static const char __pyx_k_reduce[] = "__reduce__"; -static const char __pyx_k_struct[] = "struct"; -static const char __pyx_k_unpack[] = "unpack"; -static const char __pyx_k_update[] = "update"; -static const char __pyx_k_values[] = "values"; -static const char __pyx_k_fortran[] = "fortran"; -static const char __pyx_k_memview[] = "memview"; -static const char __pyx_k_Ellipsis[] = "Ellipsis"; -static const char __pyx_k_getstate[] = "__getstate__"; -static const char __pyx_k_itemsize[] = "itemsize"; -static const char __pyx_k_pyx_type[] = "__pyx_type"; -static const char __pyx_k_setstate[] = "__setstate__"; -static const char __pyx_k_TypeError[] = "TypeError"; -static const char __pyx_k_enumerate[] = "enumerate"; -static const char __pyx_k_pyx_state[] = "__pyx_state"; -static const char __pyx_k_reduce_ex[] = "__reduce_ex__"; -static const char __pyx_k_IndexError[] = "IndexError"; -static const char __pyx_k_ValueError[] = "ValueError"; -static const char __pyx_k_pyx_result[] = "__pyx_result"; -static const char __pyx_k_pyx_vtable[] = "__pyx_vtable__"; -static const char __pyx_k_ImportError[] = "ImportError"; -static const char __pyx_k_MemoryError[] = "MemoryError"; -static const char __pyx_k_PickleError[] = "PickleError"; -static const char __pyx_k_max_neg_val[] = "max_neg_val"; -static const char __pyx_k_pyx_checksum[] = "__pyx_checksum"; -static const char __pyx_k_stringsource[] = "stringsource"; -static const char __pyx_k_pyx_getbuffer[] = "__pyx_getbuffer"; -static const char __pyx_k_reduce_cython[] = "__reduce_cython__"; -static const char __pyx_k_View_MemoryView[] = "View.MemoryView"; -static const char __pyx_k_allocate_buffer[] = "allocate_buffer"; -static const char __pyx_k_dtype_is_object[] = "dtype_is_object"; -static const char __pyx_k_pyx_PickleError[] = "__pyx_PickleError"; -static const char __pyx_k_setstate_cython[] = "__setstate_cython__"; -static const char __pyx_k_pyx_unpickle_Enum[] = "__pyx_unpickle_Enum"; -static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback"; -static const char __pyx_k_strided_and_direct[] = ""; -static const char __pyx_k_strided_and_indirect[] = ""; -static const char __pyx_k_contiguous_and_direct[] = ""; -static const char __pyx_k_MemoryView_of_r_object[] = ""; -static const char __pyx_k_MemoryView_of_r_at_0x_x[] = ""; -static const char __pyx_k_contiguous_and_indirect[] = ""; -static const char __pyx_k_Cannot_index_with_type_s[] = "Cannot index with type '%s'"; -static const char __pyx_k_Invalid_shape_in_axis_d_d[] = "Invalid shape in axis %d: %d."; -static const char __pyx_k_itemsize_0_for_cython_array[] = "itemsize <= 0 for cython.array"; -static const char __pyx_k_unable_to_allocate_array_data[] = "unable to allocate array data."; -static const char __pyx_k_strided_and_direct_or_indirect[] = ""; -static const char __pyx_k_numpy_core_multiarray_failed_to[] = "numpy.core.multiarray failed to import"; -static const char __pyx_k_Buffer_view_does_not_expose_stri[] = "Buffer view does not expose strides"; -static const char __pyx_k_Can_only_create_a_buffer_that_is[] = "Can only create a buffer that is contiguous in memory."; -static const char __pyx_k_Cannot_assign_to_read_only_memor[] = "Cannot assign to read-only memoryview"; -static const char __pyx_k_Cannot_create_writable_memory_vi[] = "Cannot create writable memory view from read-only memoryview"; -static const char __pyx_k_Empty_shape_tuple_for_cython_arr[] = "Empty shape tuple for cython.array"; -static const char __pyx_k_Incompatible_checksums_0x_x_vs_0[] = "Incompatible checksums (0x%x vs (0xb068931, 0x82a3537, 0x6ae9995) = (name))"; -static const char __pyx_k_Indirect_dimensions_not_supporte[] = "Indirect dimensions not supported"; -static const char __pyx_k_Invalid_mode_expected_c_or_fortr[] = "Invalid mode, expected 'c' or 'fortran', got %s"; -static const char __pyx_k_Out_of_bounds_on_buffer_access_a[] = "Out of bounds on buffer access (axis %d)"; -static const char __pyx_k_Unable_to_convert_item_to_object[] = "Unable to convert item to object"; -static const char __pyx_k_got_differing_extents_in_dimensi[] = "got differing extents in dimension %d (got %d and %d)"; -static const char __pyx_k_no_default___reduce___due_to_non[] = "no default __reduce__ due to non-trivial __cinit__"; -static const char __pyx_k_numpy_core_umath_failed_to_impor[] = "numpy.core.umath failed to import"; -static const char __pyx_k_unable_to_allocate_shape_and_str[] = "unable to allocate shape and strides."; -static PyObject *__pyx_n_s_ASCII; -static PyObject *__pyx_kp_s_Buffer_view_does_not_expose_stri; -static PyObject *__pyx_kp_s_Can_only_create_a_buffer_that_is; -static PyObject *__pyx_kp_s_Cannot_assign_to_read_only_memor; -static PyObject *__pyx_kp_s_Cannot_create_writable_memory_vi; -static PyObject *__pyx_kp_s_Cannot_index_with_type_s; -static PyObject *__pyx_n_s_Ellipsis; -static PyObject *__pyx_kp_s_Empty_shape_tuple_for_cython_arr; -static PyObject *__pyx_n_s_ImportError; -static PyObject *__pyx_kp_s_Incompatible_checksums_0x_x_vs_0; -static PyObject *__pyx_n_s_IndexError; -static PyObject *__pyx_kp_s_Indirect_dimensions_not_supporte; -static PyObject *__pyx_kp_s_Invalid_mode_expected_c_or_fortr; -static PyObject *__pyx_kp_s_Invalid_shape_in_axis_d_d; -static PyObject *__pyx_n_s_MemoryError; -static PyObject *__pyx_kp_s_MemoryView_of_r_at_0x_x; -static PyObject *__pyx_kp_s_MemoryView_of_r_object; -static PyObject *__pyx_n_b_O; -static PyObject *__pyx_kp_s_Out_of_bounds_on_buffer_access_a; -static PyObject *__pyx_n_s_PickleError; -static PyObject *__pyx_n_s_TypeError; -static PyObject *__pyx_kp_s_Unable_to_convert_item_to_object; -static PyObject *__pyx_n_s_ValueError; -static PyObject *__pyx_n_s_View_MemoryView; -static PyObject *__pyx_n_s_allocate_buffer; -static PyObject *__pyx_n_s_base; -static PyObject *__pyx_n_s_c; -static PyObject *__pyx_n_u_c; -static PyObject *__pyx_n_s_class; -static PyObject *__pyx_n_s_cline_in_traceback; -static PyObject *__pyx_kp_s_contiguous_and_direct; -static PyObject *__pyx_kp_s_contiguous_and_indirect; -static PyObject *__pyx_n_s_dict; -static PyObject *__pyx_n_s_dtype_is_object; -static PyObject *__pyx_n_s_encode; -static PyObject *__pyx_n_s_enumerate; -static PyObject *__pyx_n_s_error; -static PyObject *__pyx_n_s_flags; -static PyObject *__pyx_n_s_format; -static PyObject *__pyx_n_s_fortran; -static PyObject *__pyx_n_u_fortran; -static PyObject *__pyx_n_s_getstate; -static PyObject *__pyx_kp_s_got_differing_extents_in_dimensi; -static PyObject *__pyx_n_s_id; -static PyObject *__pyx_n_s_import; -static PyObject *__pyx_n_s_itemsize; -static PyObject *__pyx_kp_s_itemsize_0_for_cython_array; -static PyObject *__pyx_n_s_main; -static PyObject *__pyx_n_s_max_neg_val; -static PyObject *__pyx_n_s_memview; -static PyObject *__pyx_n_s_mode; -static PyObject *__pyx_n_s_name; -static PyObject *__pyx_n_s_name_2; -static PyObject *__pyx_n_s_ndim; -static PyObject *__pyx_n_s_new; -static PyObject *__pyx_kp_s_no_default___reduce___due_to_non; -static PyObject *__pyx_n_s_np; -static PyObject *__pyx_n_s_numpy; -static PyObject *__pyx_kp_u_numpy_core_multiarray_failed_to; -static PyObject *__pyx_kp_u_numpy_core_umath_failed_to_impor; -static PyObject *__pyx_n_s_obj; -static PyObject *__pyx_n_s_pack; -static PyObject *__pyx_n_s_paths; -static PyObject *__pyx_n_s_pickle; -static PyObject *__pyx_n_s_pyx_PickleError; -static PyObject *__pyx_n_s_pyx_checksum; -static PyObject *__pyx_n_s_pyx_getbuffer; -static PyObject *__pyx_n_s_pyx_result; -static PyObject *__pyx_n_s_pyx_state; -static PyObject *__pyx_n_s_pyx_type; -static PyObject *__pyx_n_s_pyx_unpickle_Enum; -static PyObject *__pyx_n_s_pyx_vtable; -static PyObject *__pyx_n_s_range; -static PyObject *__pyx_n_s_reduce; -static PyObject *__pyx_n_s_reduce_cython; -static PyObject *__pyx_n_s_reduce_ex; -static PyObject *__pyx_n_s_setstate; -static PyObject *__pyx_n_s_setstate_cython; -static PyObject *__pyx_n_s_shape; -static PyObject *__pyx_n_s_size; -static PyObject *__pyx_n_s_start; -static PyObject *__pyx_n_s_step; -static PyObject *__pyx_n_s_stop; -static PyObject *__pyx_kp_s_strided_and_direct; -static PyObject *__pyx_kp_s_strided_and_direct_or_indirect; -static PyObject *__pyx_kp_s_strided_and_indirect; -static PyObject *__pyx_kp_s_stringsource; -static PyObject *__pyx_n_s_struct; -static PyObject *__pyx_n_s_t_xs; -static PyObject *__pyx_n_s_t_ys; -static PyObject *__pyx_n_s_test; -static PyObject *__pyx_kp_s_unable_to_allocate_array_data; -static PyObject *__pyx_kp_s_unable_to_allocate_shape_and_str; -static PyObject *__pyx_n_s_unpack; -static PyObject *__pyx_n_s_update; -static PyObject *__pyx_n_s_values; -static PyObject *__pyx_pf_3TTS_3tts_5utils_15monotonic_align_4core_maximum_path_c(CYTHON_UNUSED PyObject *__pyx_self, __Pyx_memviewslice __pyx_v_paths, __Pyx_memviewslice __pyx_v_values, __Pyx_memviewslice __pyx_v_t_xs, __Pyx_memviewslice __pyx_v_t_ys, float __pyx_v_max_neg_val); /* proto */ -static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array___cinit__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_shape, Py_ssize_t __pyx_v_itemsize, PyObject *__pyx_v_format, PyObject *__pyx_v_mode, int __pyx_v_allocate_buffer); /* proto */ -static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array_2__getbuffer__(struct __pyx_array_obj *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags); /* proto */ -static void __pyx_array___pyx_pf_15View_dot_MemoryView_5array_4__dealloc__(struct __pyx_array_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_15View_dot_MemoryView_5array_7memview___get__(struct __pyx_array_obj *__pyx_v_self); /* proto */ -static Py_ssize_t __pyx_array___pyx_pf_15View_dot_MemoryView_5array_6__len__(struct __pyx_array_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_array___pyx_pf_15View_dot_MemoryView_5array_8__getattr__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_attr); /* proto */ -static PyObject *__pyx_array___pyx_pf_15View_dot_MemoryView_5array_10__getitem__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_item); /* proto */ -static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array_12__setitem__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value); /* proto */ -static PyObject *__pyx_pf___pyx_array___reduce_cython__(CYTHON_UNUSED struct __pyx_array_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf___pyx_array_2__setstate_cython__(CYTHON_UNUSED struct __pyx_array_obj *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ -static int __pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum___init__(struct __pyx_MemviewEnum_obj *__pyx_v_self, PyObject *__pyx_v_name); /* proto */ -static PyObject *__pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum_2__repr__(struct __pyx_MemviewEnum_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf___pyx_MemviewEnum___reduce_cython__(struct __pyx_MemviewEnum_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf___pyx_MemviewEnum_2__setstate_cython__(struct __pyx_MemviewEnum_obj *__pyx_v_self, PyObject *__pyx_v___pyx_state); /* proto */ -static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview___cinit__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_obj, int __pyx_v_flags, int __pyx_v_dtype_is_object); /* proto */ -static void __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_2__dealloc__(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_4__getitem__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index); /* proto */ -static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_6__setitem__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value); /* proto */ -static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_8__getbuffer__(struct __pyx_memoryview_obj *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags); /* proto */ -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_1T___get__(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4base___get__(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_5shape___get__(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_7strides___get__(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_10suboffsets___get__(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4ndim___get__(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_8itemsize___get__(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_6nbytes___get__(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4size___get__(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static Py_ssize_t __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_10__len__(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_12__repr__(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_14__str__(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_16is_c_contig(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_18is_f_contig(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_20copy(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_22copy_fortran(struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf___pyx_memoryview___reduce_cython__(CYTHON_UNUSED struct __pyx_memoryview_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf___pyx_memoryview_2__setstate_cython__(CYTHON_UNUSED struct __pyx_memoryview_obj *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ -static void __pyx_memoryviewslice___pyx_pf_15View_dot_MemoryView_16_memoryviewslice___dealloc__(struct __pyx_memoryviewslice_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf_15View_dot_MemoryView_16_memoryviewslice_4base___get__(struct __pyx_memoryviewslice_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf___pyx_memoryviewslice___reduce_cython__(CYTHON_UNUSED struct __pyx_memoryviewslice_obj *__pyx_v_self); /* proto */ -static PyObject *__pyx_pf___pyx_memoryviewslice_2__setstate_cython__(CYTHON_UNUSED struct __pyx_memoryviewslice_obj *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state); /* proto */ -static PyObject *__pyx_pf_15View_dot_MemoryView___pyx_unpickle_Enum(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v___pyx_type, long __pyx_v___pyx_checksum, PyObject *__pyx_v___pyx_state); /* proto */ -static PyObject *__pyx_tp_new_array(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_Enum(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_memoryview(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new__memoryviewslice(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_int_0; -static PyObject *__pyx_int_1; -static PyObject *__pyx_int_112105877; -static PyObject *__pyx_int_136983863; -static PyObject *__pyx_int_184977713; -static PyObject *__pyx_int_neg_1; -static float __pyx_k_; -static PyObject *__pyx_tuple__2; -static PyObject *__pyx_tuple__3; -static PyObject *__pyx_tuple__4; -static PyObject *__pyx_tuple__5; -static PyObject *__pyx_tuple__6; -static PyObject *__pyx_tuple__7; -static PyObject *__pyx_tuple__8; -static PyObject *__pyx_tuple__9; -static PyObject *__pyx_slice__18; -static PyObject *__pyx_tuple__10; -static PyObject *__pyx_tuple__11; -static PyObject *__pyx_tuple__12; -static PyObject *__pyx_tuple__13; -static PyObject *__pyx_tuple__14; -static PyObject *__pyx_tuple__15; -static PyObject *__pyx_tuple__16; -static PyObject *__pyx_tuple__17; -static PyObject *__pyx_tuple__19; -static PyObject *__pyx_tuple__20; -static PyObject *__pyx_tuple__21; -static PyObject *__pyx_tuple__22; -static PyObject *__pyx_tuple__23; -static PyObject *__pyx_tuple__24; -static PyObject *__pyx_tuple__25; -static PyObject *__pyx_tuple__26; -static PyObject *__pyx_tuple__27; -static PyObject *__pyx_tuple__28; -static PyObject *__pyx_codeobj__29; -/* Late includes */ - -/* "TTS/tts/utils/monotonic_align/core.pyx":11 - * @cython.boundscheck(False) - * @cython.wraparound(False) - * cdef void maximum_path_each(int[:,::1] path, float[:,::1] value, int t_x, int t_y, float max_neg_val) nogil: # <<<<<<<<<<<<<< - * cdef int x - * cdef int y - */ - -static void __pyx_f_3TTS_3tts_5utils_15monotonic_align_4core_maximum_path_each(__Pyx_memviewslice __pyx_v_path, __Pyx_memviewslice __pyx_v_value, int __pyx_v_t_x, int __pyx_v_t_y, float __pyx_v_max_neg_val) { - int __pyx_v_x; - int __pyx_v_y; - float __pyx_v_v_prev; - float __pyx_v_v_cur; - int __pyx_v_index; - int __pyx_t_1; - int __pyx_t_2; - int __pyx_t_3; - long __pyx_t_4; - int __pyx_t_5; - long __pyx_t_6; - long __pyx_t_7; - int __pyx_t_8; - Py_ssize_t __pyx_t_9; - Py_ssize_t __pyx_t_10; - float __pyx_t_11; - float __pyx_t_12; - float __pyx_t_13; - Py_ssize_t __pyx_t_14; - Py_ssize_t __pyx_t_15; - int __pyx_t_16; - - /* "TTS/tts/utils/monotonic_align/core.pyx":17 - * cdef float v_cur - * cdef float tmp - * cdef int index = t_x - 1 # <<<<<<<<<<<<<< - * - * for y in range(t_y): - */ - __pyx_v_index = (__pyx_v_t_x - 1); - - /* "TTS/tts/utils/monotonic_align/core.pyx":19 - * cdef int index = t_x - 1 - * - * for y in range(t_y): # <<<<<<<<<<<<<< - * for x in range(max(0, t_x + y - t_y), min(t_x, y + 1)): - * if x == y: - */ - __pyx_t_1 = __pyx_v_t_y; - __pyx_t_2 = __pyx_t_1; - for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) { - __pyx_v_y = __pyx_t_3; - - /* "TTS/tts/utils/monotonic_align/core.pyx":20 - * - * for y in range(t_y): - * for x in range(max(0, t_x + y - t_y), min(t_x, y + 1)): # <<<<<<<<<<<<<< - * if x == y: - * v_cur = max_neg_val - */ - __pyx_t_4 = (__pyx_v_y + 1); - __pyx_t_5 = __pyx_v_t_x; - if (((__pyx_t_4 < __pyx_t_5) != 0)) { - __pyx_t_6 = __pyx_t_4; - } else { - __pyx_t_6 = __pyx_t_5; - } - __pyx_t_4 = __pyx_t_6; - __pyx_t_5 = ((__pyx_v_t_x + __pyx_v_y) - __pyx_v_t_y); - __pyx_t_6 = 0; - if (((__pyx_t_5 > __pyx_t_6) != 0)) { - __pyx_t_7 = __pyx_t_5; - } else { - __pyx_t_7 = __pyx_t_6; - } - __pyx_t_6 = __pyx_t_4; - for (__pyx_t_5 = __pyx_t_7; __pyx_t_5 < __pyx_t_6; __pyx_t_5+=1) { - __pyx_v_x = __pyx_t_5; - - /* "TTS/tts/utils/monotonic_align/core.pyx":21 - * for y in range(t_y): - * for x in range(max(0, t_x + y - t_y), min(t_x, y + 1)): - * if x == y: # <<<<<<<<<<<<<< - * v_cur = max_neg_val - * else: - */ - __pyx_t_8 = ((__pyx_v_x == __pyx_v_y) != 0); - if (__pyx_t_8) { - - /* "TTS/tts/utils/monotonic_align/core.pyx":22 - * for x in range(max(0, t_x + y - t_y), min(t_x, y + 1)): - * if x == y: - * v_cur = max_neg_val # <<<<<<<<<<<<<< - * else: - * v_cur = value[x, y-1] - */ - __pyx_v_v_cur = __pyx_v_max_neg_val; - - /* "TTS/tts/utils/monotonic_align/core.pyx":21 - * for y in range(t_y): - * for x in range(max(0, t_x + y - t_y), min(t_x, y + 1)): - * if x == y: # <<<<<<<<<<<<<< - * v_cur = max_neg_val - * else: - */ - goto __pyx_L7; - } - - /* "TTS/tts/utils/monotonic_align/core.pyx":24 - * v_cur = max_neg_val - * else: - * v_cur = value[x, y-1] # <<<<<<<<<<<<<< - * if x == 0: - * if y == 0: - */ - /*else*/ { - __pyx_t_9 = __pyx_v_x; - __pyx_t_10 = (__pyx_v_y - 1); - __pyx_v_v_cur = (*((float *) ( /* dim=1 */ ((char *) (((float *) ( /* dim=0 */ (__pyx_v_value.data + __pyx_t_9 * __pyx_v_value.strides[0]) )) + __pyx_t_10)) ))); - } - __pyx_L7:; - - /* "TTS/tts/utils/monotonic_align/core.pyx":25 - * else: - * v_cur = value[x, y-1] - * if x == 0: # <<<<<<<<<<<<<< - * if y == 0: - * v_prev = 0. - */ - __pyx_t_8 = ((__pyx_v_x == 0) != 0); - if (__pyx_t_8) { - - /* "TTS/tts/utils/monotonic_align/core.pyx":26 - * v_cur = value[x, y-1] - * if x == 0: - * if y == 0: # <<<<<<<<<<<<<< - * v_prev = 0. - * else: - */ - __pyx_t_8 = ((__pyx_v_y == 0) != 0); - if (__pyx_t_8) { - - /* "TTS/tts/utils/monotonic_align/core.pyx":27 - * if x == 0: - * if y == 0: - * v_prev = 0. # <<<<<<<<<<<<<< - * else: - * v_prev = max_neg_val - */ - __pyx_v_v_prev = 0.; - - /* "TTS/tts/utils/monotonic_align/core.pyx":26 - * v_cur = value[x, y-1] - * if x == 0: - * if y == 0: # <<<<<<<<<<<<<< - * v_prev = 0. - * else: - */ - goto __pyx_L9; - } - - /* "TTS/tts/utils/monotonic_align/core.pyx":29 - * v_prev = 0. - * else: - * v_prev = max_neg_val # <<<<<<<<<<<<<< - * else: - * v_prev = value[x-1, y-1] - */ - /*else*/ { - __pyx_v_v_prev = __pyx_v_max_neg_val; - } - __pyx_L9:; - - /* "TTS/tts/utils/monotonic_align/core.pyx":25 - * else: - * v_cur = value[x, y-1] - * if x == 0: # <<<<<<<<<<<<<< - * if y == 0: - * v_prev = 0. - */ - goto __pyx_L8; - } - - /* "TTS/tts/utils/monotonic_align/core.pyx":31 - * v_prev = max_neg_val - * else: - * v_prev = value[x-1, y-1] # <<<<<<<<<<<<<< - * value[x, y] = max(v_cur, v_prev) + value[x, y] - * - */ - /*else*/ { - __pyx_t_10 = (__pyx_v_x - 1); - __pyx_t_9 = (__pyx_v_y - 1); - __pyx_v_v_prev = (*((float *) ( /* dim=1 */ ((char *) (((float *) ( /* dim=0 */ (__pyx_v_value.data + __pyx_t_10 * __pyx_v_value.strides[0]) )) + __pyx_t_9)) ))); - } - __pyx_L8:; - - /* "TTS/tts/utils/monotonic_align/core.pyx":32 - * else: - * v_prev = value[x-1, y-1] - * value[x, y] = max(v_cur, v_prev) + value[x, y] # <<<<<<<<<<<<<< - * - * for y in range(t_y - 1, -1, -1): - */ - __pyx_t_11 = __pyx_v_v_prev; - __pyx_t_12 = __pyx_v_v_cur; - if (((__pyx_t_11 > __pyx_t_12) != 0)) { - __pyx_t_13 = __pyx_t_11; - } else { - __pyx_t_13 = __pyx_t_12; - } - __pyx_t_9 = __pyx_v_x; - __pyx_t_10 = __pyx_v_y; - __pyx_t_14 = __pyx_v_x; - __pyx_t_15 = __pyx_v_y; - *((float *) ( /* dim=1 */ ((char *) (((float *) ( /* dim=0 */ (__pyx_v_value.data + __pyx_t_14 * __pyx_v_value.strides[0]) )) + __pyx_t_15)) )) = (__pyx_t_13 + (*((float *) ( /* dim=1 */ ((char *) (((float *) ( /* dim=0 */ (__pyx_v_value.data + __pyx_t_9 * __pyx_v_value.strides[0]) )) + __pyx_t_10)) )))); - } - } - - /* "TTS/tts/utils/monotonic_align/core.pyx":34 - * value[x, y] = max(v_cur, v_prev) + value[x, y] - * - * for y in range(t_y - 1, -1, -1): # <<<<<<<<<<<<<< - * path[index, y] = 1 - * if index != 0 and (index == y or value[index, y-1] < value[index-1, y-1]): - */ - for (__pyx_t_1 = (__pyx_v_t_y - 1); __pyx_t_1 > -1; __pyx_t_1-=1) { - __pyx_v_y = __pyx_t_1; - - /* "TTS/tts/utils/monotonic_align/core.pyx":35 - * - * for y in range(t_y - 1, -1, -1): - * path[index, y] = 1 # <<<<<<<<<<<<<< - * if index != 0 and (index == y or value[index, y-1] < value[index-1, y-1]): - * index = index - 1 - */ - __pyx_t_10 = __pyx_v_index; - __pyx_t_9 = __pyx_v_y; - *((int *) ( /* dim=1 */ ((char *) (((int *) ( /* dim=0 */ (__pyx_v_path.data + __pyx_t_10 * __pyx_v_path.strides[0]) )) + __pyx_t_9)) )) = 1; - - /* "TTS/tts/utils/monotonic_align/core.pyx":36 - * for y in range(t_y - 1, -1, -1): - * path[index, y] = 1 - * if index != 0 and (index == y or value[index, y-1] < value[index-1, y-1]): # <<<<<<<<<<<<<< - * index = index - 1 - * - */ - __pyx_t_16 = ((__pyx_v_index != 0) != 0); - if (__pyx_t_16) { - } else { - __pyx_t_8 = __pyx_t_16; - goto __pyx_L13_bool_binop_done; - } - __pyx_t_16 = ((__pyx_v_index == __pyx_v_y) != 0); - if (!__pyx_t_16) { - } else { - __pyx_t_8 = __pyx_t_16; - goto __pyx_L13_bool_binop_done; - } - __pyx_t_9 = __pyx_v_index; - __pyx_t_10 = (__pyx_v_y - 1); - __pyx_t_15 = (__pyx_v_index - 1); - __pyx_t_14 = (__pyx_v_y - 1); - __pyx_t_16 = (((*((float *) ( /* dim=1 */ ((char *) (((float *) ( /* dim=0 */ (__pyx_v_value.data + __pyx_t_9 * __pyx_v_value.strides[0]) )) + __pyx_t_10)) ))) < (*((float *) ( /* dim=1 */ ((char *) (((float *) ( /* dim=0 */ (__pyx_v_value.data + __pyx_t_15 * __pyx_v_value.strides[0]) )) + __pyx_t_14)) )))) != 0); - __pyx_t_8 = __pyx_t_16; - __pyx_L13_bool_binop_done:; - if (__pyx_t_8) { - - /* "TTS/tts/utils/monotonic_align/core.pyx":37 - * path[index, y] = 1 - * if index != 0 and (index == y or value[index, y-1] < value[index-1, y-1]): - * index = index - 1 # <<<<<<<<<<<<<< - * - * - */ - __pyx_v_index = (__pyx_v_index - 1); - - /* "TTS/tts/utils/monotonic_align/core.pyx":36 - * for y in range(t_y - 1, -1, -1): - * path[index, y] = 1 - * if index != 0 and (index == y or value[index, y-1] < value[index-1, y-1]): # <<<<<<<<<<<<<< - * index = index - 1 - * - */ - } - } - - /* "TTS/tts/utils/monotonic_align/core.pyx":11 - * @cython.boundscheck(False) - * @cython.wraparound(False) - * cdef void maximum_path_each(int[:,::1] path, float[:,::1] value, int t_x, int t_y, float max_neg_val) nogil: # <<<<<<<<<<<<<< - * cdef int x - * cdef int y - */ - - /* function exit code */ -} - -/* "TTS/tts/utils/monotonic_align/core.pyx":42 - * @cython.boundscheck(False) - * @cython.wraparound(False) - * cpdef void maximum_path_c(int[:,:,::1] paths, float[:,:,::1] values, int[::1] t_xs, int[::1] t_ys, float max_neg_val=-1e9) nogil: # <<<<<<<<<<<<<< - * cdef int b = values.shape[0] - * - */ - -static PyObject *__pyx_pw_3TTS_3tts_5utils_15monotonic_align_4core_1maximum_path_c(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static void __pyx_f_3TTS_3tts_5utils_15monotonic_align_4core_maximum_path_c(__Pyx_memviewslice __pyx_v_paths, __Pyx_memviewslice __pyx_v_values, __Pyx_memviewslice __pyx_v_t_xs, __Pyx_memviewslice __pyx_v_t_ys, CYTHON_UNUSED int __pyx_skip_dispatch, struct __pyx_opt_args_3TTS_3tts_5utils_15monotonic_align_4core_maximum_path_c *__pyx_optional_args) { - float __pyx_v_max_neg_val = __pyx_k_; - CYTHON_UNUSED int __pyx_v_b; - int __pyx_v_i; - int __pyx_t_1; - int __pyx_t_2; - int __pyx_t_3; - __Pyx_memviewslice __pyx_t_4 = { 0, 0, { 0 }, { 0 }, { 0 } }; - __Pyx_memviewslice __pyx_t_5 = { 0, 0, { 0 }, { 0 }, { 0 } }; - Py_ssize_t __pyx_t_6; - Py_ssize_t __pyx_t_7; - if (__pyx_optional_args) { - if (__pyx_optional_args->__pyx_n > 0) { - __pyx_v_max_neg_val = __pyx_optional_args->max_neg_val; - } - } - - /* "TTS/tts/utils/monotonic_align/core.pyx":43 - * @cython.wraparound(False) - * cpdef void maximum_path_c(int[:,:,::1] paths, float[:,:,::1] values, int[::1] t_xs, int[::1] t_ys, float max_neg_val=-1e9) nogil: - * cdef int b = values.shape[0] # <<<<<<<<<<<<<< - * - * cdef int i - */ - __pyx_v_b = (__pyx_v_values.shape[0]); - - /* "TTS/tts/utils/monotonic_align/core.pyx":46 - * - * cdef int i - * for i in prange(b, nogil=True): # <<<<<<<<<<<<<< - * maximum_path_each(paths[i], values[i], t_xs[i], t_ys[i], max_neg_val) - */ - { - #ifdef WITH_THREAD - PyThreadState *_save; - Py_UNBLOCK_THREADS - __Pyx_FastGIL_Remember(); - #endif - /*try:*/ { - __pyx_t_1 = __pyx_v_b; - if ((1 == 0)) abort(); - { - #if ((defined(__APPLE__) || defined(__OSX__)) && (defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95))))) - #undef likely - #undef unlikely - #define likely(x) (x) - #define unlikely(x) (x) - #endif - __pyx_t_3 = (__pyx_t_1 - 0 + 1 - 1/abs(1)) / 1; - if (__pyx_t_3 > 0) - { - #ifdef _OPENMP - #pragma omp parallel private(__pyx_t_6, __pyx_t_7) firstprivate(__pyx_t_4, __pyx_t_5) - #endif /* _OPENMP */ - { - #ifdef _OPENMP - #pragma omp for firstprivate(__pyx_v_i) lastprivate(__pyx_v_i) - #endif /* _OPENMP */ - for (__pyx_t_2 = 0; __pyx_t_2 < __pyx_t_3; __pyx_t_2++){ - { - __pyx_v_i = (int)(0 + 1 * __pyx_t_2); - - /* "TTS/tts/utils/monotonic_align/core.pyx":47 - * cdef int i - * for i in prange(b, nogil=True): - * maximum_path_each(paths[i], values[i], t_xs[i], t_ys[i], max_neg_val) # <<<<<<<<<<<<<< - */ - __pyx_t_4.data = __pyx_v_paths.data; - __pyx_t_4.memview = __pyx_v_paths.memview; - __PYX_INC_MEMVIEW(&__pyx_t_4, 0); - { - Py_ssize_t __pyx_tmp_idx = __pyx_v_i; - Py_ssize_t __pyx_tmp_stride = __pyx_v_paths.strides[0]; - __pyx_t_4.data += __pyx_tmp_idx * __pyx_tmp_stride; -} - -__pyx_t_4.shape[0] = __pyx_v_paths.shape[1]; -__pyx_t_4.strides[0] = __pyx_v_paths.strides[1]; - __pyx_t_4.suboffsets[0] = -1; - -__pyx_t_4.shape[1] = __pyx_v_paths.shape[2]; -__pyx_t_4.strides[1] = __pyx_v_paths.strides[2]; - __pyx_t_4.suboffsets[1] = -1; - -__pyx_t_5.data = __pyx_v_values.data; - __pyx_t_5.memview = __pyx_v_values.memview; - __PYX_INC_MEMVIEW(&__pyx_t_5, 0); - { - Py_ssize_t __pyx_tmp_idx = __pyx_v_i; - Py_ssize_t __pyx_tmp_stride = __pyx_v_values.strides[0]; - __pyx_t_5.data += __pyx_tmp_idx * __pyx_tmp_stride; -} - -__pyx_t_5.shape[0] = __pyx_v_values.shape[1]; -__pyx_t_5.strides[0] = __pyx_v_values.strides[1]; - __pyx_t_5.suboffsets[0] = -1; - -__pyx_t_5.shape[1] = __pyx_v_values.shape[2]; -__pyx_t_5.strides[1] = __pyx_v_values.strides[2]; - __pyx_t_5.suboffsets[1] = -1; - -__pyx_t_6 = __pyx_v_i; - __pyx_t_7 = __pyx_v_i; - __pyx_f_3TTS_3tts_5utils_15monotonic_align_4core_maximum_path_each(__pyx_t_4, __pyx_t_5, (*((int *) ( /* dim=0 */ ((char *) (((int *) __pyx_v_t_xs.data) + __pyx_t_6)) ))), (*((int *) ( /* dim=0 */ ((char *) (((int *) __pyx_v_t_ys.data) + __pyx_t_7)) ))), __pyx_v_max_neg_val); - __PYX_XDEC_MEMVIEW(&__pyx_t_4, 0); - __pyx_t_4.memview = NULL; - __pyx_t_4.data = NULL; - __PYX_XDEC_MEMVIEW(&__pyx_t_5, 0); - __pyx_t_5.memview = NULL; - __pyx_t_5.data = NULL; - } - } - } - } - } - #if ((defined(__APPLE__) || defined(__OSX__)) && (defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95))))) - #undef likely - #undef unlikely - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) - #endif - } - - /* "TTS/tts/utils/monotonic_align/core.pyx":46 - * - * cdef int i - * for i in prange(b, nogil=True): # <<<<<<<<<<<<<< - * maximum_path_each(paths[i], values[i], t_xs[i], t_ys[i], max_neg_val) - */ - /*finally:*/ { - /*normal exit:*/{ - #ifdef WITH_THREAD - __Pyx_FastGIL_Forget(); - Py_BLOCK_THREADS - #endif - goto __pyx_L5; - } - __pyx_L5:; - } - } - - /* "TTS/tts/utils/monotonic_align/core.pyx":42 - * @cython.boundscheck(False) - * @cython.wraparound(False) - * cpdef void maximum_path_c(int[:,:,::1] paths, float[:,:,::1] values, int[::1] t_xs, int[::1] t_ys, float max_neg_val=-1e9) nogil: # <<<<<<<<<<<<<< - * cdef int b = values.shape[0] - * - */ - - /* function exit code */ -} - -/* Python wrapper */ -static PyObject *__pyx_pw_3TTS_3tts_5utils_15monotonic_align_4core_1maximum_path_c(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyObject *__pyx_pw_3TTS_3tts_5utils_15monotonic_align_4core_1maximum_path_c(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - __Pyx_memviewslice __pyx_v_paths = { 0, 0, { 0 }, { 0 }, { 0 } }; - __Pyx_memviewslice __pyx_v_values = { 0, 0, { 0 }, { 0 }, { 0 } }; - __Pyx_memviewslice __pyx_v_t_xs = { 0, 0, { 0 }, { 0 }, { 0 } }; - __Pyx_memviewslice __pyx_v_t_ys = { 0, 0, { 0 }, { 0 }, { 0 } }; - float __pyx_v_max_neg_val; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("maximum_path_c (wrapper)", 0); - { - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_paths,&__pyx_n_s_values,&__pyx_n_s_t_xs,&__pyx_n_s_t_ys,&__pyx_n_s_max_neg_val,0}; - PyObject* values[5] = {0,0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); - switch (pos_args) { - case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); - CYTHON_FALLTHROUGH; - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - CYTHON_FALLTHROUGH; - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - CYTHON_FALLTHROUGH; - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - CYTHON_FALLTHROUGH; - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (pos_args) { - case 0: - if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_paths)) != 0)) kw_args--; - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("maximum_path_c", 0, 4, 5, 1); __PYX_ERR(0, 42, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_t_xs)) != 0)) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("maximum_path_c", 0, 4, 5, 2); __PYX_ERR(0, 42, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 3: - if (likely((values[3] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_t_ys)) != 0)) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("maximum_path_c", 0, 4, 5, 3); __PYX_ERR(0, 42, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 4: - if (kw_args > 0) { - PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_max_neg_val); - if (value) { values[4] = value; kw_args--; } - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "maximum_path_c") < 0)) __PYX_ERR(0, 42, __pyx_L3_error) - } - } else { - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); - CYTHON_FALLTHROUGH; - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - break; - default: goto __pyx_L5_argtuple_error; - } - } - __pyx_v_paths = __Pyx_PyObject_to_MemoryviewSlice_d_d_dc_int(values[0], PyBUF_WRITABLE); if (unlikely(!__pyx_v_paths.memview)) __PYX_ERR(0, 42, __pyx_L3_error) - __pyx_v_values = __Pyx_PyObject_to_MemoryviewSlice_d_d_dc_float(values[1], PyBUF_WRITABLE); if (unlikely(!__pyx_v_values.memview)) __PYX_ERR(0, 42, __pyx_L3_error) - __pyx_v_t_xs = __Pyx_PyObject_to_MemoryviewSlice_dc_int(values[2], PyBUF_WRITABLE); if (unlikely(!__pyx_v_t_xs.memview)) __PYX_ERR(0, 42, __pyx_L3_error) - __pyx_v_t_ys = __Pyx_PyObject_to_MemoryviewSlice_dc_int(values[3], PyBUF_WRITABLE); if (unlikely(!__pyx_v_t_ys.memview)) __PYX_ERR(0, 42, __pyx_L3_error) - if (values[4]) { - __pyx_v_max_neg_val = __pyx_PyFloat_AsFloat(values[4]); if (unlikely((__pyx_v_max_neg_val == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 42, __pyx_L3_error) - } else { - __pyx_v_max_neg_val = __pyx_k_; - } - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("maximum_path_c", 0, 4, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 42, __pyx_L3_error) - __pyx_L3_error:; - __Pyx_AddTraceback("TTS.tts.utils.monotonic_align.core.maximum_path_c", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_3TTS_3tts_5utils_15monotonic_align_4core_maximum_path_c(__pyx_self, __pyx_v_paths, __pyx_v_values, __pyx_v_t_xs, __pyx_v_t_ys, __pyx_v_max_neg_val); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_3TTS_3tts_5utils_15monotonic_align_4core_maximum_path_c(CYTHON_UNUSED PyObject *__pyx_self, __Pyx_memviewslice __pyx_v_paths, __Pyx_memviewslice __pyx_v_values, __Pyx_memviewslice __pyx_v_t_xs, __Pyx_memviewslice __pyx_v_t_ys, float __pyx_v_max_neg_val) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - struct __pyx_opt_args_3TTS_3tts_5utils_15monotonic_align_4core_maximum_path_c __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("maximum_path_c", 0); - __Pyx_XDECREF(__pyx_r); - if (unlikely(!__pyx_v_paths.memview)) { __Pyx_RaiseUnboundLocalError("paths"); __PYX_ERR(0, 42, __pyx_L1_error) } - if (unlikely(!__pyx_v_values.memview)) { __Pyx_RaiseUnboundLocalError("values"); __PYX_ERR(0, 42, __pyx_L1_error) } - if (unlikely(!__pyx_v_t_xs.memview)) { __Pyx_RaiseUnboundLocalError("t_xs"); __PYX_ERR(0, 42, __pyx_L1_error) } - if (unlikely(!__pyx_v_t_ys.memview)) { __Pyx_RaiseUnboundLocalError("t_ys"); __PYX_ERR(0, 42, __pyx_L1_error) } - __pyx_t_1.__pyx_n = 1; - __pyx_t_1.max_neg_val = __pyx_v_max_neg_val; - __pyx_f_3TTS_3tts_5utils_15monotonic_align_4core_maximum_path_c(__pyx_v_paths, __pyx_v_values, __pyx_v_t_xs, __pyx_v_t_ys, 0, &__pyx_t_1); - __pyx_t_2 = __Pyx_void_to_None(NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 42, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("TTS.tts.utils.monotonic_align.core.maximum_path_c", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __PYX_XDEC_MEMVIEW(&__pyx_v_paths, 1); - __PYX_XDEC_MEMVIEW(&__pyx_v_values, 1); - __PYX_XDEC_MEMVIEW(&__pyx_v_t_xs, 1); - __PYX_XDEC_MEMVIEW(&__pyx_v_t_ys, 1); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":735 - * ctypedef npy_cdouble complex_t - * - * cdef inline object PyArray_MultiIterNew1(a): # <<<<<<<<<<<<<< - * return PyArray_MultiIterNew(1, a) - * - */ - -static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew1(PyObject *__pyx_v_a) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("PyArray_MultiIterNew1", 0); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":736 - * - * cdef inline object PyArray_MultiIterNew1(a): - * return PyArray_MultiIterNew(1, a) # <<<<<<<<<<<<<< - * - * cdef inline object PyArray_MultiIterNew2(a, b): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyArray_MultiIterNew(1, ((void *)__pyx_v_a)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 736, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":735 - * ctypedef npy_cdouble complex_t - * - * cdef inline object PyArray_MultiIterNew1(a): # <<<<<<<<<<<<<< - * return PyArray_MultiIterNew(1, a) - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("numpy.PyArray_MultiIterNew1", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":738 - * return PyArray_MultiIterNew(1, a) - * - * cdef inline object PyArray_MultiIterNew2(a, b): # <<<<<<<<<<<<<< - * return PyArray_MultiIterNew(2, a, b) - * - */ - -static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew2(PyObject *__pyx_v_a, PyObject *__pyx_v_b) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("PyArray_MultiIterNew2", 0); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":739 - * - * cdef inline object PyArray_MultiIterNew2(a, b): - * return PyArray_MultiIterNew(2, a, b) # <<<<<<<<<<<<<< - * - * cdef inline object PyArray_MultiIterNew3(a, b, c): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyArray_MultiIterNew(2, ((void *)__pyx_v_a), ((void *)__pyx_v_b)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 739, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":738 - * return PyArray_MultiIterNew(1, a) - * - * cdef inline object PyArray_MultiIterNew2(a, b): # <<<<<<<<<<<<<< - * return PyArray_MultiIterNew(2, a, b) - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("numpy.PyArray_MultiIterNew2", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":741 - * return PyArray_MultiIterNew(2, a, b) - * - * cdef inline object PyArray_MultiIterNew3(a, b, c): # <<<<<<<<<<<<<< - * return PyArray_MultiIterNew(3, a, b, c) - * - */ - -static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew3(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("PyArray_MultiIterNew3", 0); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":742 - * - * cdef inline object PyArray_MultiIterNew3(a, b, c): - * return PyArray_MultiIterNew(3, a, b, c) # <<<<<<<<<<<<<< - * - * cdef inline object PyArray_MultiIterNew4(a, b, c, d): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyArray_MultiIterNew(3, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 742, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":741 - * return PyArray_MultiIterNew(2, a, b) - * - * cdef inline object PyArray_MultiIterNew3(a, b, c): # <<<<<<<<<<<<<< - * return PyArray_MultiIterNew(3, a, b, c) - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("numpy.PyArray_MultiIterNew3", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":744 - * return PyArray_MultiIterNew(3, a, b, c) - * - * cdef inline object PyArray_MultiIterNew4(a, b, c, d): # <<<<<<<<<<<<<< - * return PyArray_MultiIterNew(4, a, b, c, d) - * - */ - -static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew4(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("PyArray_MultiIterNew4", 0); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":745 - * - * cdef inline object PyArray_MultiIterNew4(a, b, c, d): - * return PyArray_MultiIterNew(4, a, b, c, d) # <<<<<<<<<<<<<< - * - * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyArray_MultiIterNew(4, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c), ((void *)__pyx_v_d)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 745, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":744 - * return PyArray_MultiIterNew(3, a, b, c) - * - * cdef inline object PyArray_MultiIterNew4(a, b, c, d): # <<<<<<<<<<<<<< - * return PyArray_MultiIterNew(4, a, b, c, d) - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("numpy.PyArray_MultiIterNew4", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":747 - * return PyArray_MultiIterNew(4, a, b, c, d) - * - * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e): # <<<<<<<<<<<<<< - * return PyArray_MultiIterNew(5, a, b, c, d, e) - * - */ - -static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew5(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d, PyObject *__pyx_v_e) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("PyArray_MultiIterNew5", 0); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":748 - * - * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e): - * return PyArray_MultiIterNew(5, a, b, c, d, e) # <<<<<<<<<<<<<< - * - * cdef inline tuple PyDataType_SHAPE(dtype d): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyArray_MultiIterNew(5, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c), ((void *)__pyx_v_d), ((void *)__pyx_v_e)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 748, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":747 - * return PyArray_MultiIterNew(4, a, b, c, d) - * - * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e): # <<<<<<<<<<<<<< - * return PyArray_MultiIterNew(5, a, b, c, d, e) - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("numpy.PyArray_MultiIterNew5", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":750 - * return PyArray_MultiIterNew(5, a, b, c, d, e) - * - * cdef inline tuple PyDataType_SHAPE(dtype d): # <<<<<<<<<<<<<< - * if PyDataType_HASSUBARRAY(d): - * return d.subarray.shape - */ - -static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyDataType_SHAPE(PyArray_Descr *__pyx_v_d) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - __Pyx_RefNannySetupContext("PyDataType_SHAPE", 0); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":751 - * - * cdef inline tuple PyDataType_SHAPE(dtype d): - * if PyDataType_HASSUBARRAY(d): # <<<<<<<<<<<<<< - * return d.subarray.shape - * else: - */ - __pyx_t_1 = (PyDataType_HASSUBARRAY(__pyx_v_d) != 0); - if (__pyx_t_1) { - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":752 - * cdef inline tuple PyDataType_SHAPE(dtype d): - * if PyDataType_HASSUBARRAY(d): - * return d.subarray.shape # <<<<<<<<<<<<<< - * else: - * return () - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject*)__pyx_v_d->subarray->shape)); - __pyx_r = ((PyObject*)__pyx_v_d->subarray->shape); - goto __pyx_L0; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":751 - * - * cdef inline tuple PyDataType_SHAPE(dtype d): - * if PyDataType_HASSUBARRAY(d): # <<<<<<<<<<<<<< - * return d.subarray.shape - * else: - */ - } - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":754 - * return d.subarray.shape - * else: - * return () # <<<<<<<<<<<<<< - * - * - */ - /*else*/ { - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_empty_tuple); - __pyx_r = __pyx_empty_tuple; - goto __pyx_L0; - } - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":750 - * return PyArray_MultiIterNew(5, a, b, c, d, e) - * - * cdef inline tuple PyDataType_SHAPE(dtype d): # <<<<<<<<<<<<<< - * if PyDataType_HASSUBARRAY(d): - * return d.subarray.shape - */ - - /* function exit code */ - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":929 - * int _import_umath() except -1 - * - * cdef inline void set_array_base(ndarray arr, object base): # <<<<<<<<<<<<<< - * Py_INCREF(base) # important to do this before stealing the reference below! - * PyArray_SetBaseObject(arr, base) - */ - -static CYTHON_INLINE void __pyx_f_5numpy_set_array_base(PyArrayObject *__pyx_v_arr, PyObject *__pyx_v_base) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("set_array_base", 0); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":930 - * - * cdef inline void set_array_base(ndarray arr, object base): - * Py_INCREF(base) # important to do this before stealing the reference below! # <<<<<<<<<<<<<< - * PyArray_SetBaseObject(arr, base) - * - */ - Py_INCREF(__pyx_v_base); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":931 - * cdef inline void set_array_base(ndarray arr, object base): - * Py_INCREF(base) # important to do this before stealing the reference below! - * PyArray_SetBaseObject(arr, base) # <<<<<<<<<<<<<< - * - * cdef inline object get_array_base(ndarray arr): - */ - (void)(PyArray_SetBaseObject(__pyx_v_arr, __pyx_v_base)); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":929 - * int _import_umath() except -1 - * - * cdef inline void set_array_base(ndarray arr, object base): # <<<<<<<<<<<<<< - * Py_INCREF(base) # important to do this before stealing the reference below! - * PyArray_SetBaseObject(arr, base) - */ - - /* function exit code */ - __Pyx_RefNannyFinishContext(); -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":933 - * PyArray_SetBaseObject(arr, base) - * - * cdef inline object get_array_base(ndarray arr): # <<<<<<<<<<<<<< - * base = PyArray_BASE(arr) - * if base is NULL: - */ - -static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__pyx_v_arr) { - PyObject *__pyx_v_base; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - __Pyx_RefNannySetupContext("get_array_base", 0); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":934 - * - * cdef inline object get_array_base(ndarray arr): - * base = PyArray_BASE(arr) # <<<<<<<<<<<<<< - * if base is NULL: - * return None - */ - __pyx_v_base = PyArray_BASE(__pyx_v_arr); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":935 - * cdef inline object get_array_base(ndarray arr): - * base = PyArray_BASE(arr) - * if base is NULL: # <<<<<<<<<<<<<< - * return None - * return base - */ - __pyx_t_1 = ((__pyx_v_base == NULL) != 0); - if (__pyx_t_1) { - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":936 - * base = PyArray_BASE(arr) - * if base is NULL: - * return None # <<<<<<<<<<<<<< - * return base - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":935 - * cdef inline object get_array_base(ndarray arr): - * base = PyArray_BASE(arr) - * if base is NULL: # <<<<<<<<<<<<<< - * return None - * return base - */ - } - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":937 - * if base is NULL: - * return None - * return base # <<<<<<<<<<<<<< - * - * # Versions of the import_* functions which are more suitable for - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_base)); - __pyx_r = ((PyObject *)__pyx_v_base); - goto __pyx_L0; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":933 - * PyArray_SetBaseObject(arr, base) - * - * cdef inline object get_array_base(ndarray arr): # <<<<<<<<<<<<<< - * base = PyArray_BASE(arr) - * if base is NULL: - */ - - /* function exit code */ - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":941 - * # Versions of the import_* functions which are more suitable for - * # Cython code. - * cdef inline int import_array() except -1: # <<<<<<<<<<<<<< - * try: - * __pyx_import_array() - */ - -static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) { - int __pyx_r; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_t_4; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("import_array", 0); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":942 - * # Cython code. - * cdef inline int import_array() except -1: - * try: # <<<<<<<<<<<<<< - * __pyx_import_array() - * except Exception: - */ - { - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3); - __Pyx_XGOTREF(__pyx_t_1); - __Pyx_XGOTREF(__pyx_t_2); - __Pyx_XGOTREF(__pyx_t_3); - /*try:*/ { - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":943 - * cdef inline int import_array() except -1: - * try: - * __pyx_import_array() # <<<<<<<<<<<<<< - * except Exception: - * raise ImportError("numpy.core.multiarray failed to import") - */ - __pyx_t_4 = _import_array(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 943, __pyx_L3_error) - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":942 - * # Cython code. - * cdef inline int import_array() except -1: - * try: # <<<<<<<<<<<<<< - * __pyx_import_array() - * except Exception: - */ - } - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - goto __pyx_L8_try_end; - __pyx_L3_error:; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":944 - * try: - * __pyx_import_array() - * except Exception: # <<<<<<<<<<<<<< - * raise ImportError("numpy.core.multiarray failed to import") - * - */ - __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); - if (__pyx_t_4) { - __Pyx_AddTraceback("numpy.import_array", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 944, __pyx_L5_except_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_GOTREF(__pyx_t_6); - __Pyx_GOTREF(__pyx_t_7); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":945 - * __pyx_import_array() - * except Exception: - * raise ImportError("numpy.core.multiarray failed to import") # <<<<<<<<<<<<<< - * - * cdef inline int import_umath() except -1: - */ - __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ImportError, __pyx_tuple__2, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 945, __pyx_L5_except_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_Raise(__pyx_t_8, 0, 0, 0); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __PYX_ERR(1, 945, __pyx_L5_except_error) - } - goto __pyx_L5_except_error; - __pyx_L5_except_error:; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":942 - * # Cython code. - * cdef inline int import_array() except -1: - * try: # <<<<<<<<<<<<<< - * __pyx_import_array() - * except Exception: - */ - __Pyx_XGIVEREF(__pyx_t_1); - __Pyx_XGIVEREF(__pyx_t_2); - __Pyx_XGIVEREF(__pyx_t_3); - __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3); - goto __pyx_L1_error; - __pyx_L8_try_end:; - } - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":941 - * # Versions of the import_* functions which are more suitable for - * # Cython code. - * cdef inline int import_array() except -1: # <<<<<<<<<<<<<< - * try: - * __pyx_import_array() - */ - - /* function exit code */ - __pyx_r = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_AddTraceback("numpy.import_array", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":947 - * raise ImportError("numpy.core.multiarray failed to import") - * - * cdef inline int import_umath() except -1: # <<<<<<<<<<<<<< - * try: - * _import_umath() - */ - -static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) { - int __pyx_r; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_t_4; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("import_umath", 0); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":948 - * - * cdef inline int import_umath() except -1: - * try: # <<<<<<<<<<<<<< - * _import_umath() - * except Exception: - */ - { - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3); - __Pyx_XGOTREF(__pyx_t_1); - __Pyx_XGOTREF(__pyx_t_2); - __Pyx_XGOTREF(__pyx_t_3); - /*try:*/ { - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":949 - * cdef inline int import_umath() except -1: - * try: - * _import_umath() # <<<<<<<<<<<<<< - * except Exception: - * raise ImportError("numpy.core.umath failed to import") - */ - __pyx_t_4 = _import_umath(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 949, __pyx_L3_error) - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":948 - * - * cdef inline int import_umath() except -1: - * try: # <<<<<<<<<<<<<< - * _import_umath() - * except Exception: - */ - } - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - goto __pyx_L8_try_end; - __pyx_L3_error:; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":950 - * try: - * _import_umath() - * except Exception: # <<<<<<<<<<<<<< - * raise ImportError("numpy.core.umath failed to import") - * - */ - __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); - if (__pyx_t_4) { - __Pyx_AddTraceback("numpy.import_umath", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 950, __pyx_L5_except_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_GOTREF(__pyx_t_6); - __Pyx_GOTREF(__pyx_t_7); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":951 - * _import_umath() - * except Exception: - * raise ImportError("numpy.core.umath failed to import") # <<<<<<<<<<<<<< - * - * cdef inline int import_ufunc() except -1: - */ - __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ImportError, __pyx_tuple__3, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 951, __pyx_L5_except_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_Raise(__pyx_t_8, 0, 0, 0); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __PYX_ERR(1, 951, __pyx_L5_except_error) - } - goto __pyx_L5_except_error; - __pyx_L5_except_error:; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":948 - * - * cdef inline int import_umath() except -1: - * try: # <<<<<<<<<<<<<< - * _import_umath() - * except Exception: - */ - __Pyx_XGIVEREF(__pyx_t_1); - __Pyx_XGIVEREF(__pyx_t_2); - __Pyx_XGIVEREF(__pyx_t_3); - __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3); - goto __pyx_L1_error; - __pyx_L8_try_end:; - } - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":947 - * raise ImportError("numpy.core.multiarray failed to import") - * - * cdef inline int import_umath() except -1: # <<<<<<<<<<<<<< - * try: - * _import_umath() - */ - - /* function exit code */ - __pyx_r = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_AddTraceback("numpy.import_umath", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":953 - * raise ImportError("numpy.core.umath failed to import") - * - * cdef inline int import_ufunc() except -1: # <<<<<<<<<<<<<< - * try: - * _import_umath() - */ - -static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) { - int __pyx_r; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_t_4; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("import_ufunc", 0); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":954 - * - * cdef inline int import_ufunc() except -1: - * try: # <<<<<<<<<<<<<< - * _import_umath() - * except Exception: - */ - { - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3); - __Pyx_XGOTREF(__pyx_t_1); - __Pyx_XGOTREF(__pyx_t_2); - __Pyx_XGOTREF(__pyx_t_3); - /*try:*/ { - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":955 - * cdef inline int import_ufunc() except -1: - * try: - * _import_umath() # <<<<<<<<<<<<<< - * except Exception: - * raise ImportError("numpy.core.umath failed to import") - */ - __pyx_t_4 = _import_umath(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 955, __pyx_L3_error) - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":954 - * - * cdef inline int import_ufunc() except -1: - * try: # <<<<<<<<<<<<<< - * _import_umath() - * except Exception: - */ - } - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - goto __pyx_L8_try_end; - __pyx_L3_error:; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":956 - * try: - * _import_umath() - * except Exception: # <<<<<<<<<<<<<< - * raise ImportError("numpy.core.umath failed to import") - * - */ - __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); - if (__pyx_t_4) { - __Pyx_AddTraceback("numpy.import_ufunc", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 956, __pyx_L5_except_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_GOTREF(__pyx_t_6); - __Pyx_GOTREF(__pyx_t_7); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":957 - * _import_umath() - * except Exception: - * raise ImportError("numpy.core.umath failed to import") # <<<<<<<<<<<<<< - * - * cdef extern from *: - */ - __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ImportError, __pyx_tuple__3, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 957, __pyx_L5_except_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_Raise(__pyx_t_8, 0, 0, 0); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __PYX_ERR(1, 957, __pyx_L5_except_error) - } - goto __pyx_L5_except_error; - __pyx_L5_except_error:; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":954 - * - * cdef inline int import_ufunc() except -1: - * try: # <<<<<<<<<<<<<< - * _import_umath() - * except Exception: - */ - __Pyx_XGIVEREF(__pyx_t_1); - __Pyx_XGIVEREF(__pyx_t_2); - __Pyx_XGIVEREF(__pyx_t_3); - __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3); - goto __pyx_L1_error; - __pyx_L8_try_end:; - } - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":953 - * raise ImportError("numpy.core.umath failed to import") - * - * cdef inline int import_ufunc() except -1: # <<<<<<<<<<<<<< - * try: - * _import_umath() - */ - - /* function exit code */ - __pyx_r = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_AddTraceback("numpy.import_ufunc", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":967 - * - * - * cdef inline bint is_timedelta64_object(object obj): # <<<<<<<<<<<<<< - * """ - * Cython equivalent of `isinstance(obj, np.timedelta64)` - */ - -static CYTHON_INLINE int __pyx_f_5numpy_is_timedelta64_object(PyObject *__pyx_v_obj) { - int __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("is_timedelta64_object", 0); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":979 - * bool - * """ - * return PyObject_TypeCheck(obj, &PyTimedeltaArrType_Type) # <<<<<<<<<<<<<< - * - * - */ - __pyx_r = PyObject_TypeCheck(__pyx_v_obj, (&PyTimedeltaArrType_Type)); - goto __pyx_L0; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":967 - * - * - * cdef inline bint is_timedelta64_object(object obj): # <<<<<<<<<<<<<< - * """ - * Cython equivalent of `isinstance(obj, np.timedelta64)` - */ - - /* function exit code */ - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":982 - * - * - * cdef inline bint is_datetime64_object(object obj): # <<<<<<<<<<<<<< - * """ - * Cython equivalent of `isinstance(obj, np.datetime64)` - */ - -static CYTHON_INLINE int __pyx_f_5numpy_is_datetime64_object(PyObject *__pyx_v_obj) { - int __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("is_datetime64_object", 0); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":994 - * bool - * """ - * return PyObject_TypeCheck(obj, &PyDatetimeArrType_Type) # <<<<<<<<<<<<<< - * - * - */ - __pyx_r = PyObject_TypeCheck(__pyx_v_obj, (&PyDatetimeArrType_Type)); - goto __pyx_L0; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":982 - * - * - * cdef inline bint is_datetime64_object(object obj): # <<<<<<<<<<<<<< - * """ - * Cython equivalent of `isinstance(obj, np.datetime64)` - */ - - /* function exit code */ - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":997 - * - * - * cdef inline npy_datetime get_datetime64_value(object obj) nogil: # <<<<<<<<<<<<<< - * """ - * returns the int64 value underlying scalar numpy datetime64 object - */ - -static CYTHON_INLINE npy_datetime __pyx_f_5numpy_get_datetime64_value(PyObject *__pyx_v_obj) { - npy_datetime __pyx_r; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":1004 - * also needed. That can be found using `get_datetime64_unit`. - * """ - * return (obj).obval # <<<<<<<<<<<<<< - * - * - */ - __pyx_r = ((PyDatetimeScalarObject *)__pyx_v_obj)->obval; - goto __pyx_L0; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":997 - * - * - * cdef inline npy_datetime get_datetime64_value(object obj) nogil: # <<<<<<<<<<<<<< - * """ - * returns the int64 value underlying scalar numpy datetime64 object - */ - - /* function exit code */ - __pyx_L0:; - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":1007 - * - * - * cdef inline npy_timedelta get_timedelta64_value(object obj) nogil: # <<<<<<<<<<<<<< - * """ - * returns the int64 value underlying scalar numpy timedelta64 object - */ - -static CYTHON_INLINE npy_timedelta __pyx_f_5numpy_get_timedelta64_value(PyObject *__pyx_v_obj) { - npy_timedelta __pyx_r; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":1011 - * returns the int64 value underlying scalar numpy timedelta64 object - * """ - * return (obj).obval # <<<<<<<<<<<<<< - * - * - */ - __pyx_r = ((PyTimedeltaScalarObject *)__pyx_v_obj)->obval; - goto __pyx_L0; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":1007 - * - * - * cdef inline npy_timedelta get_timedelta64_value(object obj) nogil: # <<<<<<<<<<<<<< - * """ - * returns the int64 value underlying scalar numpy timedelta64 object - */ - - /* function exit code */ - __pyx_L0:; - return __pyx_r; -} - -/* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":1014 - * - * - * cdef inline NPY_DATETIMEUNIT get_datetime64_unit(object obj) nogil: # <<<<<<<<<<<<<< - * """ - * returns the unit part of the dtype for a numpy datetime64 object. - */ - -static CYTHON_INLINE NPY_DATETIMEUNIT __pyx_f_5numpy_get_datetime64_unit(PyObject *__pyx_v_obj) { - NPY_DATETIMEUNIT __pyx_r; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":1018 - * returns the unit part of the dtype for a numpy datetime64 object. - * """ - * return (obj).obmeta.base # <<<<<<<<<<<<<< - */ - __pyx_r = ((NPY_DATETIMEUNIT)((PyDatetimeScalarObject *)__pyx_v_obj)->obmeta.base); - goto __pyx_L0; - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":1014 - * - * - * cdef inline NPY_DATETIMEUNIT get_datetime64_unit(object obj) nogil: # <<<<<<<<<<<<<< - * """ - * returns the unit part of the dtype for a numpy datetime64 object. - */ - - /* function exit code */ - __pyx_L0:; - return __pyx_r; -} - -/* "View.MemoryView":122 - * cdef bint dtype_is_object - * - * def __cinit__(array self, tuple shape, Py_ssize_t itemsize, format not None, # <<<<<<<<<<<<<< - * mode="c", bint allocate_buffer=True): - * - */ - -/* Python wrapper */ -static int __pyx_array___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_array___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_shape = 0; - Py_ssize_t __pyx_v_itemsize; - PyObject *__pyx_v_format = 0; - PyObject *__pyx_v_mode = 0; - int __pyx_v_allocate_buffer; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - int __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); - { - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_shape,&__pyx_n_s_itemsize,&__pyx_n_s_format,&__pyx_n_s_mode,&__pyx_n_s_allocate_buffer,0}; - PyObject* values[5] = {0,0,0,0,0}; - values[3] = ((PyObject *)__pyx_n_s_c); - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); - switch (pos_args) { - case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); - CYTHON_FALLTHROUGH; - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - CYTHON_FALLTHROUGH; - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - CYTHON_FALLTHROUGH; - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - CYTHON_FALLTHROUGH; - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (pos_args) { - case 0: - if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_shape)) != 0)) kw_args--; - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_itemsize)) != 0)) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 3, 5, 1); __PYX_ERR(2, 122, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_format)) != 0)) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 3, 5, 2); __PYX_ERR(2, 122, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 3: - if (kw_args > 0) { - PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_mode); - if (value) { values[3] = value; kw_args--; } - } - CYTHON_FALLTHROUGH; - case 4: - if (kw_args > 0) { - PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_allocate_buffer); - if (value) { values[4] = value; kw_args--; } - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__cinit__") < 0)) __PYX_ERR(2, 122, __pyx_L3_error) - } - } else { - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); - CYTHON_FALLTHROUGH; - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - CYTHON_FALLTHROUGH; - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - break; - default: goto __pyx_L5_argtuple_error; - } - } - __pyx_v_shape = ((PyObject*)values[0]); - __pyx_v_itemsize = __Pyx_PyIndex_AsSsize_t(values[1]); if (unlikely((__pyx_v_itemsize == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 122, __pyx_L3_error) - __pyx_v_format = values[2]; - __pyx_v_mode = values[3]; - if (values[4]) { - __pyx_v_allocate_buffer = __Pyx_PyObject_IsTrue(values[4]); if (unlikely((__pyx_v_allocate_buffer == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 123, __pyx_L3_error) - } else { - - /* "View.MemoryView":123 - * - * def __cinit__(array self, tuple shape, Py_ssize_t itemsize, format not None, - * mode="c", bint allocate_buffer=True): # <<<<<<<<<<<<<< - * - * cdef int idx - */ - __pyx_v_allocate_buffer = ((int)1); - } - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 122, __pyx_L3_error) - __pyx_L3_error:; - __Pyx_AddTraceback("View.MemoryView.array.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return -1; - __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_shape), (&PyTuple_Type), 1, "shape", 1))) __PYX_ERR(2, 122, __pyx_L1_error) - if (unlikely(((PyObject *)__pyx_v_format) == Py_None)) { - PyErr_Format(PyExc_TypeError, "Argument '%.200s' must not be None", "format"); __PYX_ERR(2, 122, __pyx_L1_error) - } - __pyx_r = __pyx_array___pyx_pf_15View_dot_MemoryView_5array___cinit__(((struct __pyx_array_obj *)__pyx_v_self), __pyx_v_shape, __pyx_v_itemsize, __pyx_v_format, __pyx_v_mode, __pyx_v_allocate_buffer); - - /* "View.MemoryView":122 - * cdef bint dtype_is_object - * - * def __cinit__(array self, tuple shape, Py_ssize_t itemsize, format not None, # <<<<<<<<<<<<<< - * mode="c", bint allocate_buffer=True): - * - */ - - /* function exit code */ - goto __pyx_L0; - __pyx_L1_error:; - __pyx_r = -1; - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array___cinit__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_shape, Py_ssize_t __pyx_v_itemsize, PyObject *__pyx_v_format, PyObject *__pyx_v_mode, int __pyx_v_allocate_buffer) { - int __pyx_v_idx; - Py_ssize_t __pyx_v_i; - Py_ssize_t __pyx_v_dim; - PyObject **__pyx_v_p; - char __pyx_v_order; - int __pyx_r; - __Pyx_RefNannyDeclarations - Py_ssize_t __pyx_t_1; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - int __pyx_t_4; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - char *__pyx_t_7; - int __pyx_t_8; - Py_ssize_t __pyx_t_9; - PyObject *__pyx_t_10 = NULL; - Py_ssize_t __pyx_t_11; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__cinit__", 0); - __Pyx_INCREF(__pyx_v_format); - - /* "View.MemoryView":129 - * cdef PyObject **p - * - * self.ndim = len(shape) # <<<<<<<<<<<<<< - * self.itemsize = itemsize - * - */ - if (unlikely(__pyx_v_shape == Py_None)) { - PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(2, 129, __pyx_L1_error) - } - __pyx_t_1 = PyTuple_GET_SIZE(__pyx_v_shape); if (unlikely(__pyx_t_1 == ((Py_ssize_t)-1))) __PYX_ERR(2, 129, __pyx_L1_error) - __pyx_v_self->ndim = ((int)__pyx_t_1); - - /* "View.MemoryView":130 - * - * self.ndim = len(shape) - * self.itemsize = itemsize # <<<<<<<<<<<<<< - * - * if not self.ndim: - */ - __pyx_v_self->itemsize = __pyx_v_itemsize; - - /* "View.MemoryView":132 - * self.itemsize = itemsize - * - * if not self.ndim: # <<<<<<<<<<<<<< - * raise ValueError("Empty shape tuple for cython.array") - * - */ - __pyx_t_2 = ((!(__pyx_v_self->ndim != 0)) != 0); - if (unlikely(__pyx_t_2)) { - - /* "View.MemoryView":133 - * - * if not self.ndim: - * raise ValueError("Empty shape tuple for cython.array") # <<<<<<<<<<<<<< - * - * if itemsize <= 0: - */ - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 133, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_Raise(__pyx_t_3, 0, 0, 0); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __PYX_ERR(2, 133, __pyx_L1_error) - - /* "View.MemoryView":132 - * self.itemsize = itemsize - * - * if not self.ndim: # <<<<<<<<<<<<<< - * raise ValueError("Empty shape tuple for cython.array") - * - */ - } - - /* "View.MemoryView":135 - * raise ValueError("Empty shape tuple for cython.array") - * - * if itemsize <= 0: # <<<<<<<<<<<<<< - * raise ValueError("itemsize <= 0 for cython.array") - * - */ - __pyx_t_2 = ((__pyx_v_itemsize <= 0) != 0); - if (unlikely(__pyx_t_2)) { - - /* "View.MemoryView":136 - * - * if itemsize <= 0: - * raise ValueError("itemsize <= 0 for cython.array") # <<<<<<<<<<<<<< - * - * if not isinstance(format, bytes): - */ - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 136, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_Raise(__pyx_t_3, 0, 0, 0); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __PYX_ERR(2, 136, __pyx_L1_error) - - /* "View.MemoryView":135 - * raise ValueError("Empty shape tuple for cython.array") - * - * if itemsize <= 0: # <<<<<<<<<<<<<< - * raise ValueError("itemsize <= 0 for cython.array") - * - */ - } - - /* "View.MemoryView":138 - * raise ValueError("itemsize <= 0 for cython.array") - * - * if not isinstance(format, bytes): # <<<<<<<<<<<<<< - * format = format.encode('ASCII') - * self._format = format # keep a reference to the byte string - */ - __pyx_t_2 = PyBytes_Check(__pyx_v_format); - __pyx_t_4 = ((!(__pyx_t_2 != 0)) != 0); - if (__pyx_t_4) { - - /* "View.MemoryView":139 - * - * if not isinstance(format, bytes): - * format = format.encode('ASCII') # <<<<<<<<<<<<<< - * self._format = format # keep a reference to the byte string - * self.format = self._format - */ - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_format, __pyx_n_s_encode); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 139, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = NULL; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_6)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_5, function); - } - } - __pyx_t_3 = (__pyx_t_6) ? __Pyx_PyObject_Call2Args(__pyx_t_5, __pyx_t_6, __pyx_n_s_ASCII) : __Pyx_PyObject_CallOneArg(__pyx_t_5, __pyx_n_s_ASCII); - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 139, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF_SET(__pyx_v_format, __pyx_t_3); - __pyx_t_3 = 0; - - /* "View.MemoryView":138 - * raise ValueError("itemsize <= 0 for cython.array") - * - * if not isinstance(format, bytes): # <<<<<<<<<<<<<< - * format = format.encode('ASCII') - * self._format = format # keep a reference to the byte string - */ - } - - /* "View.MemoryView":140 - * if not isinstance(format, bytes): - * format = format.encode('ASCII') - * self._format = format # keep a reference to the byte string # <<<<<<<<<<<<<< - * self.format = self._format - * - */ - if (!(likely(PyBytes_CheckExact(__pyx_v_format))||((__pyx_v_format) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "bytes", Py_TYPE(__pyx_v_format)->tp_name), 0))) __PYX_ERR(2, 140, __pyx_L1_error) - __pyx_t_3 = __pyx_v_format; - __Pyx_INCREF(__pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __Pyx_GOTREF(__pyx_v_self->_format); - __Pyx_DECREF(__pyx_v_self->_format); - __pyx_v_self->_format = ((PyObject*)__pyx_t_3); - __pyx_t_3 = 0; - - /* "View.MemoryView":141 - * format = format.encode('ASCII') - * self._format = format # keep a reference to the byte string - * self.format = self._format # <<<<<<<<<<<<<< - * - * - */ - if (unlikely(__pyx_v_self->_format == Py_None)) { - PyErr_SetString(PyExc_TypeError, "expected bytes, NoneType found"); - __PYX_ERR(2, 141, __pyx_L1_error) - } - __pyx_t_7 = __Pyx_PyBytes_AsWritableString(__pyx_v_self->_format); if (unlikely((!__pyx_t_7) && PyErr_Occurred())) __PYX_ERR(2, 141, __pyx_L1_error) - __pyx_v_self->format = __pyx_t_7; - - /* "View.MemoryView":144 - * - * - * self._shape = PyObject_Malloc(sizeof(Py_ssize_t)*self.ndim*2) # <<<<<<<<<<<<<< - * self._strides = self._shape + self.ndim - * - */ - __pyx_v_self->_shape = ((Py_ssize_t *)PyObject_Malloc((((sizeof(Py_ssize_t)) * __pyx_v_self->ndim) * 2))); - - /* "View.MemoryView":145 - * - * self._shape = PyObject_Malloc(sizeof(Py_ssize_t)*self.ndim*2) - * self._strides = self._shape + self.ndim # <<<<<<<<<<<<<< - * - * if not self._shape: - */ - __pyx_v_self->_strides = (__pyx_v_self->_shape + __pyx_v_self->ndim); - - /* "View.MemoryView":147 - * self._strides = self._shape + self.ndim - * - * if not self._shape: # <<<<<<<<<<<<<< - * raise MemoryError("unable to allocate shape and strides.") - * - */ - __pyx_t_4 = ((!(__pyx_v_self->_shape != 0)) != 0); - if (unlikely(__pyx_t_4)) { - - /* "View.MemoryView":148 - * - * if not self._shape: - * raise MemoryError("unable to allocate shape and strides.") # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_MemoryError, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 148, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_Raise(__pyx_t_3, 0, 0, 0); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __PYX_ERR(2, 148, __pyx_L1_error) - - /* "View.MemoryView":147 - * self._strides = self._shape + self.ndim - * - * if not self._shape: # <<<<<<<<<<<<<< - * raise MemoryError("unable to allocate shape and strides.") - * - */ - } - - /* "View.MemoryView":151 - * - * - * for idx, dim in enumerate(shape): # <<<<<<<<<<<<<< - * if dim <= 0: - * raise ValueError("Invalid shape in axis %d: %d." % (idx, dim)) - */ - __pyx_t_8 = 0; - __pyx_t_3 = __pyx_v_shape; __Pyx_INCREF(__pyx_t_3); __pyx_t_1 = 0; - for (;;) { - if (__pyx_t_1 >= PyTuple_GET_SIZE(__pyx_t_3)) break; - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_1); __Pyx_INCREF(__pyx_t_5); __pyx_t_1++; if (unlikely(0 < 0)) __PYX_ERR(2, 151, __pyx_L1_error) - #else - __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_1); __pyx_t_1++; if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 151, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - #endif - __pyx_t_9 = __Pyx_PyIndex_AsSsize_t(__pyx_t_5); if (unlikely((__pyx_t_9 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 151, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_v_dim = __pyx_t_9; - __pyx_v_idx = __pyx_t_8; - __pyx_t_8 = (__pyx_t_8 + 1); - - /* "View.MemoryView":152 - * - * for idx, dim in enumerate(shape): - * if dim <= 0: # <<<<<<<<<<<<<< - * raise ValueError("Invalid shape in axis %d: %d." % (idx, dim)) - * self._shape[idx] = dim - */ - __pyx_t_4 = ((__pyx_v_dim <= 0) != 0); - if (unlikely(__pyx_t_4)) { - - /* "View.MemoryView":153 - * for idx, dim in enumerate(shape): - * if dim <= 0: - * raise ValueError("Invalid shape in axis %d: %d." % (idx, dim)) # <<<<<<<<<<<<<< - * self._shape[idx] = dim - * - */ - __pyx_t_5 = __Pyx_PyInt_From_int(__pyx_v_idx); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 153, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyInt_FromSsize_t(__pyx_v_dim); if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 153, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(2, 153, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_10); - __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_t_6); - __pyx_t_5 = 0; - __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_PyString_Format(__pyx_kp_s_Invalid_shape_in_axis_d_d, __pyx_t_10); if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 153, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_t_10 = __Pyx_PyObject_CallOneArg(__pyx_builtin_ValueError, __pyx_t_6); if (unlikely(!__pyx_t_10)) __PYX_ERR(2, 153, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_Raise(__pyx_t_10, 0, 0, 0); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __PYX_ERR(2, 153, __pyx_L1_error) - - /* "View.MemoryView":152 - * - * for idx, dim in enumerate(shape): - * if dim <= 0: # <<<<<<<<<<<<<< - * raise ValueError("Invalid shape in axis %d: %d." % (idx, dim)) - * self._shape[idx] = dim - */ - } - - /* "View.MemoryView":154 - * if dim <= 0: - * raise ValueError("Invalid shape in axis %d: %d." % (idx, dim)) - * self._shape[idx] = dim # <<<<<<<<<<<<<< - * - * cdef char order - */ - (__pyx_v_self->_shape[__pyx_v_idx]) = __pyx_v_dim; - - /* "View.MemoryView":151 - * - * - * for idx, dim in enumerate(shape): # <<<<<<<<<<<<<< - * if dim <= 0: - * raise ValueError("Invalid shape in axis %d: %d." % (idx, dim)) - */ - } - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "View.MemoryView":157 - * - * cdef char order - * if mode == 'fortran': # <<<<<<<<<<<<<< - * order = b'F' - * self.mode = u'fortran' - */ - __pyx_t_4 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_n_s_fortran, Py_EQ)); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(2, 157, __pyx_L1_error) - if (__pyx_t_4) { - - /* "View.MemoryView":158 - * cdef char order - * if mode == 'fortran': - * order = b'F' # <<<<<<<<<<<<<< - * self.mode = u'fortran' - * elif mode == 'c': - */ - __pyx_v_order = 'F'; - - /* "View.MemoryView":159 - * if mode == 'fortran': - * order = b'F' - * self.mode = u'fortran' # <<<<<<<<<<<<<< - * elif mode == 'c': - * order = b'C' - */ - __Pyx_INCREF(__pyx_n_u_fortran); - __Pyx_GIVEREF(__pyx_n_u_fortran); - __Pyx_GOTREF(__pyx_v_self->mode); - __Pyx_DECREF(__pyx_v_self->mode); - __pyx_v_self->mode = __pyx_n_u_fortran; - - /* "View.MemoryView":157 - * - * cdef char order - * if mode == 'fortran': # <<<<<<<<<<<<<< - * order = b'F' - * self.mode = u'fortran' - */ - goto __pyx_L10; - } - - /* "View.MemoryView":160 - * order = b'F' - * self.mode = u'fortran' - * elif mode == 'c': # <<<<<<<<<<<<<< - * order = b'C' - * self.mode = u'c' - */ - __pyx_t_4 = (__Pyx_PyString_Equals(__pyx_v_mode, __pyx_n_s_c, Py_EQ)); if (unlikely(__pyx_t_4 < 0)) __PYX_ERR(2, 160, __pyx_L1_error) - if (likely(__pyx_t_4)) { - - /* "View.MemoryView":161 - * self.mode = u'fortran' - * elif mode == 'c': - * order = b'C' # <<<<<<<<<<<<<< - * self.mode = u'c' - * else: - */ - __pyx_v_order = 'C'; - - /* "View.MemoryView":162 - * elif mode == 'c': - * order = b'C' - * self.mode = u'c' # <<<<<<<<<<<<<< - * else: - * raise ValueError("Invalid mode, expected 'c' or 'fortran', got %s" % mode) - */ - __Pyx_INCREF(__pyx_n_u_c); - __Pyx_GIVEREF(__pyx_n_u_c); - __Pyx_GOTREF(__pyx_v_self->mode); - __Pyx_DECREF(__pyx_v_self->mode); - __pyx_v_self->mode = __pyx_n_u_c; - - /* "View.MemoryView":160 - * order = b'F' - * self.mode = u'fortran' - * elif mode == 'c': # <<<<<<<<<<<<<< - * order = b'C' - * self.mode = u'c' - */ - goto __pyx_L10; - } - - /* "View.MemoryView":164 - * self.mode = u'c' - * else: - * raise ValueError("Invalid mode, expected 'c' or 'fortran', got %s" % mode) # <<<<<<<<<<<<<< - * - * self.len = fill_contig_strides_array(self._shape, self._strides, - */ - /*else*/ { - __pyx_t_3 = __Pyx_PyString_FormatSafe(__pyx_kp_s_Invalid_mode_expected_c_or_fortr, __pyx_v_mode); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 164, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_10 = __Pyx_PyObject_CallOneArg(__pyx_builtin_ValueError, __pyx_t_3); if (unlikely(!__pyx_t_10)) __PYX_ERR(2, 164, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_Raise(__pyx_t_10, 0, 0, 0); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __PYX_ERR(2, 164, __pyx_L1_error) - } - __pyx_L10:; - - /* "View.MemoryView":166 - * raise ValueError("Invalid mode, expected 'c' or 'fortran', got %s" % mode) - * - * self.len = fill_contig_strides_array(self._shape, self._strides, # <<<<<<<<<<<<<< - * itemsize, self.ndim, order) - * - */ - __pyx_v_self->len = __pyx_fill_contig_strides_array(__pyx_v_self->_shape, __pyx_v_self->_strides, __pyx_v_itemsize, __pyx_v_self->ndim, __pyx_v_order); - - /* "View.MemoryView":169 - * itemsize, self.ndim, order) - * - * self.free_data = allocate_buffer # <<<<<<<<<<<<<< - * self.dtype_is_object = format == b'O' - * if allocate_buffer: - */ - __pyx_v_self->free_data = __pyx_v_allocate_buffer; - - /* "View.MemoryView":170 - * - * self.free_data = allocate_buffer - * self.dtype_is_object = format == b'O' # <<<<<<<<<<<<<< - * if allocate_buffer: - * - */ - __pyx_t_10 = PyObject_RichCompare(__pyx_v_format, __pyx_n_b_O, Py_EQ); __Pyx_XGOTREF(__pyx_t_10); if (unlikely(!__pyx_t_10)) __PYX_ERR(2, 170, __pyx_L1_error) - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_10); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 170, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_v_self->dtype_is_object = __pyx_t_4; - - /* "View.MemoryView":171 - * self.free_data = allocate_buffer - * self.dtype_is_object = format == b'O' - * if allocate_buffer: # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_4 = (__pyx_v_allocate_buffer != 0); - if (__pyx_t_4) { - - /* "View.MemoryView":174 - * - * - * self.data = malloc(self.len) # <<<<<<<<<<<<<< - * if not self.data: - * raise MemoryError("unable to allocate array data.") - */ - __pyx_v_self->data = ((char *)malloc(__pyx_v_self->len)); - - /* "View.MemoryView":175 - * - * self.data = malloc(self.len) - * if not self.data: # <<<<<<<<<<<<<< - * raise MemoryError("unable to allocate array data.") - * - */ - __pyx_t_4 = ((!(__pyx_v_self->data != 0)) != 0); - if (unlikely(__pyx_t_4)) { - - /* "View.MemoryView":176 - * self.data = malloc(self.len) - * if not self.data: - * raise MemoryError("unable to allocate array data.") # <<<<<<<<<<<<<< - * - * if self.dtype_is_object: - */ - __pyx_t_10 = __Pyx_PyObject_Call(__pyx_builtin_MemoryError, __pyx_tuple__7, NULL); if (unlikely(!__pyx_t_10)) __PYX_ERR(2, 176, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_10); - __Pyx_Raise(__pyx_t_10, 0, 0, 0); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __PYX_ERR(2, 176, __pyx_L1_error) - - /* "View.MemoryView":175 - * - * self.data = malloc(self.len) - * if not self.data: # <<<<<<<<<<<<<< - * raise MemoryError("unable to allocate array data.") - * - */ - } - - /* "View.MemoryView":178 - * raise MemoryError("unable to allocate array data.") - * - * if self.dtype_is_object: # <<<<<<<<<<<<<< - * p = self.data - * for i in range(self.len / itemsize): - */ - __pyx_t_4 = (__pyx_v_self->dtype_is_object != 0); - if (__pyx_t_4) { - - /* "View.MemoryView":179 - * - * if self.dtype_is_object: - * p = self.data # <<<<<<<<<<<<<< - * for i in range(self.len / itemsize): - * p[i] = Py_None - */ - __pyx_v_p = ((PyObject **)__pyx_v_self->data); - - /* "View.MemoryView":180 - * if self.dtype_is_object: - * p = self.data - * for i in range(self.len / itemsize): # <<<<<<<<<<<<<< - * p[i] = Py_None - * Py_INCREF(Py_None) - */ - if (unlikely(__pyx_v_itemsize == 0)) { - PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero"); - __PYX_ERR(2, 180, __pyx_L1_error) - } - else if (sizeof(Py_ssize_t) == sizeof(long) && (!(((Py_ssize_t)-1) > 0)) && unlikely(__pyx_v_itemsize == (Py_ssize_t)-1) && unlikely(UNARY_NEG_WOULD_OVERFLOW(__pyx_v_self->len))) { - PyErr_SetString(PyExc_OverflowError, "value too large to perform division"); - __PYX_ERR(2, 180, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_div_Py_ssize_t(__pyx_v_self->len, __pyx_v_itemsize); - __pyx_t_9 = __pyx_t_1; - for (__pyx_t_11 = 0; __pyx_t_11 < __pyx_t_9; __pyx_t_11+=1) { - __pyx_v_i = __pyx_t_11; - - /* "View.MemoryView":181 - * p = self.data - * for i in range(self.len / itemsize): - * p[i] = Py_None # <<<<<<<<<<<<<< - * Py_INCREF(Py_None) - * - */ - (__pyx_v_p[__pyx_v_i]) = Py_None; - - /* "View.MemoryView":182 - * for i in range(self.len / itemsize): - * p[i] = Py_None - * Py_INCREF(Py_None) # <<<<<<<<<<<<<< - * - * @cname('getbuffer') - */ - Py_INCREF(Py_None); - } - - /* "View.MemoryView":178 - * raise MemoryError("unable to allocate array data.") - * - * if self.dtype_is_object: # <<<<<<<<<<<<<< - * p = self.data - * for i in range(self.len / itemsize): - */ - } - - /* "View.MemoryView":171 - * self.free_data = allocate_buffer - * self.dtype_is_object = format == b'O' - * if allocate_buffer: # <<<<<<<<<<<<<< - * - * - */ - } - - /* "View.MemoryView":122 - * cdef bint dtype_is_object - * - * def __cinit__(array self, tuple shape, Py_ssize_t itemsize, format not None, # <<<<<<<<<<<<<< - * mode="c", bint allocate_buffer=True): - * - */ - - /* function exit code */ - __pyx_r = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_10); - __Pyx_AddTraceback("View.MemoryView.array.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_format); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":185 - * - * @cname('getbuffer') - * def __getbuffer__(self, Py_buffer *info, int flags): # <<<<<<<<<<<<<< - * cdef int bufmode = -1 - * if self.mode == u"c": - */ - -/* Python wrapper */ -static CYTHON_UNUSED int __pyx_array_getbuffer(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags); /*proto*/ -static CYTHON_UNUSED int __pyx_array_getbuffer(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) { - int __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__getbuffer__ (wrapper)", 0); - __pyx_r = __pyx_array___pyx_pf_15View_dot_MemoryView_5array_2__getbuffer__(((struct __pyx_array_obj *)__pyx_v_self), ((Py_buffer *)__pyx_v_info), ((int)__pyx_v_flags)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array_2__getbuffer__(struct __pyx_array_obj *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) { - int __pyx_v_bufmode; - int __pyx_r; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - char *__pyx_t_4; - Py_ssize_t __pyx_t_5; - int __pyx_t_6; - Py_ssize_t *__pyx_t_7; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - if (__pyx_v_info == NULL) { - PyErr_SetString(PyExc_BufferError, "PyObject_GetBuffer: view==NULL argument is obsolete"); - return -1; - } - __Pyx_RefNannySetupContext("__getbuffer__", 0); - __pyx_v_info->obj = Py_None; __Pyx_INCREF(Py_None); - __Pyx_GIVEREF(__pyx_v_info->obj); - - /* "View.MemoryView":186 - * @cname('getbuffer') - * def __getbuffer__(self, Py_buffer *info, int flags): - * cdef int bufmode = -1 # <<<<<<<<<<<<<< - * if self.mode == u"c": - * bufmode = PyBUF_C_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS - */ - __pyx_v_bufmode = -1; - - /* "View.MemoryView":187 - * def __getbuffer__(self, Py_buffer *info, int flags): - * cdef int bufmode = -1 - * if self.mode == u"c": # <<<<<<<<<<<<<< - * bufmode = PyBUF_C_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS - * elif self.mode == u"fortran": - */ - __pyx_t_1 = (__Pyx_PyUnicode_Equals(__pyx_v_self->mode, __pyx_n_u_c, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(2, 187, __pyx_L1_error) - __pyx_t_2 = (__pyx_t_1 != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":188 - * cdef int bufmode = -1 - * if self.mode == u"c": - * bufmode = PyBUF_C_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS # <<<<<<<<<<<<<< - * elif self.mode == u"fortran": - * bufmode = PyBUF_F_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS - */ - __pyx_v_bufmode = (PyBUF_C_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS); - - /* "View.MemoryView":187 - * def __getbuffer__(self, Py_buffer *info, int flags): - * cdef int bufmode = -1 - * if self.mode == u"c": # <<<<<<<<<<<<<< - * bufmode = PyBUF_C_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS - * elif self.mode == u"fortran": - */ - goto __pyx_L3; - } - - /* "View.MemoryView":189 - * if self.mode == u"c": - * bufmode = PyBUF_C_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS - * elif self.mode == u"fortran": # <<<<<<<<<<<<<< - * bufmode = PyBUF_F_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS - * if not (flags & bufmode): - */ - __pyx_t_2 = (__Pyx_PyUnicode_Equals(__pyx_v_self->mode, __pyx_n_u_fortran, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(2, 189, __pyx_L1_error) - __pyx_t_1 = (__pyx_t_2 != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":190 - * bufmode = PyBUF_C_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS - * elif self.mode == u"fortran": - * bufmode = PyBUF_F_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS # <<<<<<<<<<<<<< - * if not (flags & bufmode): - * raise ValueError("Can only create a buffer that is contiguous in memory.") - */ - __pyx_v_bufmode = (PyBUF_F_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS); - - /* "View.MemoryView":189 - * if self.mode == u"c": - * bufmode = PyBUF_C_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS - * elif self.mode == u"fortran": # <<<<<<<<<<<<<< - * bufmode = PyBUF_F_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS - * if not (flags & bufmode): - */ - } - __pyx_L3:; - - /* "View.MemoryView":191 - * elif self.mode == u"fortran": - * bufmode = PyBUF_F_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS - * if not (flags & bufmode): # <<<<<<<<<<<<<< - * raise ValueError("Can only create a buffer that is contiguous in memory.") - * info.buf = self.data - */ - __pyx_t_1 = ((!((__pyx_v_flags & __pyx_v_bufmode) != 0)) != 0); - if (unlikely(__pyx_t_1)) { - - /* "View.MemoryView":192 - * bufmode = PyBUF_F_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS - * if not (flags & bufmode): - * raise ValueError("Can only create a buffer that is contiguous in memory.") # <<<<<<<<<<<<<< - * info.buf = self.data - * info.len = self.len - */ - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__8, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 192, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_Raise(__pyx_t_3, 0, 0, 0); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __PYX_ERR(2, 192, __pyx_L1_error) - - /* "View.MemoryView":191 - * elif self.mode == u"fortran": - * bufmode = PyBUF_F_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS - * if not (flags & bufmode): # <<<<<<<<<<<<<< - * raise ValueError("Can only create a buffer that is contiguous in memory.") - * info.buf = self.data - */ - } - - /* "View.MemoryView":193 - * if not (flags & bufmode): - * raise ValueError("Can only create a buffer that is contiguous in memory.") - * info.buf = self.data # <<<<<<<<<<<<<< - * info.len = self.len - * info.ndim = self.ndim - */ - __pyx_t_4 = __pyx_v_self->data; - __pyx_v_info->buf = __pyx_t_4; - - /* "View.MemoryView":194 - * raise ValueError("Can only create a buffer that is contiguous in memory.") - * info.buf = self.data - * info.len = self.len # <<<<<<<<<<<<<< - * info.ndim = self.ndim - * info.shape = self._shape - */ - __pyx_t_5 = __pyx_v_self->len; - __pyx_v_info->len = __pyx_t_5; - - /* "View.MemoryView":195 - * info.buf = self.data - * info.len = self.len - * info.ndim = self.ndim # <<<<<<<<<<<<<< - * info.shape = self._shape - * info.strides = self._strides - */ - __pyx_t_6 = __pyx_v_self->ndim; - __pyx_v_info->ndim = __pyx_t_6; - - /* "View.MemoryView":196 - * info.len = self.len - * info.ndim = self.ndim - * info.shape = self._shape # <<<<<<<<<<<<<< - * info.strides = self._strides - * info.suboffsets = NULL - */ - __pyx_t_7 = __pyx_v_self->_shape; - __pyx_v_info->shape = __pyx_t_7; - - /* "View.MemoryView":197 - * info.ndim = self.ndim - * info.shape = self._shape - * info.strides = self._strides # <<<<<<<<<<<<<< - * info.suboffsets = NULL - * info.itemsize = self.itemsize - */ - __pyx_t_7 = __pyx_v_self->_strides; - __pyx_v_info->strides = __pyx_t_7; - - /* "View.MemoryView":198 - * info.shape = self._shape - * info.strides = self._strides - * info.suboffsets = NULL # <<<<<<<<<<<<<< - * info.itemsize = self.itemsize - * info.readonly = 0 - */ - __pyx_v_info->suboffsets = NULL; - - /* "View.MemoryView":199 - * info.strides = self._strides - * info.suboffsets = NULL - * info.itemsize = self.itemsize # <<<<<<<<<<<<<< - * info.readonly = 0 - * - */ - __pyx_t_5 = __pyx_v_self->itemsize; - __pyx_v_info->itemsize = __pyx_t_5; - - /* "View.MemoryView":200 - * info.suboffsets = NULL - * info.itemsize = self.itemsize - * info.readonly = 0 # <<<<<<<<<<<<<< - * - * if flags & PyBUF_FORMAT: - */ - __pyx_v_info->readonly = 0; - - /* "View.MemoryView":202 - * info.readonly = 0 - * - * if flags & PyBUF_FORMAT: # <<<<<<<<<<<<<< - * info.format = self.format - * else: - */ - __pyx_t_1 = ((__pyx_v_flags & PyBUF_FORMAT) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":203 - * - * if flags & PyBUF_FORMAT: - * info.format = self.format # <<<<<<<<<<<<<< - * else: - * info.format = NULL - */ - __pyx_t_4 = __pyx_v_self->format; - __pyx_v_info->format = __pyx_t_4; - - /* "View.MemoryView":202 - * info.readonly = 0 - * - * if flags & PyBUF_FORMAT: # <<<<<<<<<<<<<< - * info.format = self.format - * else: - */ - goto __pyx_L5; - } - - /* "View.MemoryView":205 - * info.format = self.format - * else: - * info.format = NULL # <<<<<<<<<<<<<< - * - * info.obj = self - */ - /*else*/ { - __pyx_v_info->format = NULL; - } - __pyx_L5:; - - /* "View.MemoryView":207 - * info.format = NULL - * - * info.obj = self # <<<<<<<<<<<<<< - * - * __pyx_getbuffer = capsule( &__pyx_array_getbuffer, "getbuffer(obj, view, flags)") - */ - __Pyx_INCREF(((PyObject *)__pyx_v_self)); - __Pyx_GIVEREF(((PyObject *)__pyx_v_self)); - __Pyx_GOTREF(__pyx_v_info->obj); - __Pyx_DECREF(__pyx_v_info->obj); - __pyx_v_info->obj = ((PyObject *)__pyx_v_self); - - /* "View.MemoryView":185 - * - * @cname('getbuffer') - * def __getbuffer__(self, Py_buffer *info, int flags): # <<<<<<<<<<<<<< - * cdef int bufmode = -1 - * if self.mode == u"c": - */ - - /* function exit code */ - __pyx_r = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("View.MemoryView.array.__getbuffer__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; - if (__pyx_v_info->obj != NULL) { - __Pyx_GOTREF(__pyx_v_info->obj); - __Pyx_DECREF(__pyx_v_info->obj); __pyx_v_info->obj = 0; - } - goto __pyx_L2; - __pyx_L0:; - if (__pyx_v_info->obj == Py_None) { - __Pyx_GOTREF(__pyx_v_info->obj); - __Pyx_DECREF(__pyx_v_info->obj); __pyx_v_info->obj = 0; - } - __pyx_L2:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":211 - * __pyx_getbuffer = capsule( &__pyx_array_getbuffer, "getbuffer(obj, view, flags)") - * - * def __dealloc__(array self): # <<<<<<<<<<<<<< - * if self.callback_free_data != NULL: - * self.callback_free_data(self.data) - */ - -/* Python wrapper */ -static void __pyx_array___dealloc__(PyObject *__pyx_v_self); /*proto*/ -static void __pyx_array___dealloc__(PyObject *__pyx_v_self) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__dealloc__ (wrapper)", 0); - __pyx_array___pyx_pf_15View_dot_MemoryView_5array_4__dealloc__(((struct __pyx_array_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); -} - -static void __pyx_array___pyx_pf_15View_dot_MemoryView_5array_4__dealloc__(struct __pyx_array_obj *__pyx_v_self) { - __Pyx_RefNannyDeclarations - int __pyx_t_1; - __Pyx_RefNannySetupContext("__dealloc__", 0); - - /* "View.MemoryView":212 - * - * def __dealloc__(array self): - * if self.callback_free_data != NULL: # <<<<<<<<<<<<<< - * self.callback_free_data(self.data) - * elif self.free_data: - */ - __pyx_t_1 = ((__pyx_v_self->callback_free_data != NULL) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":213 - * def __dealloc__(array self): - * if self.callback_free_data != NULL: - * self.callback_free_data(self.data) # <<<<<<<<<<<<<< - * elif self.free_data: - * if self.dtype_is_object: - */ - __pyx_v_self->callback_free_data(__pyx_v_self->data); - - /* "View.MemoryView":212 - * - * def __dealloc__(array self): - * if self.callback_free_data != NULL: # <<<<<<<<<<<<<< - * self.callback_free_data(self.data) - * elif self.free_data: - */ - goto __pyx_L3; - } - - /* "View.MemoryView":214 - * if self.callback_free_data != NULL: - * self.callback_free_data(self.data) - * elif self.free_data: # <<<<<<<<<<<<<< - * if self.dtype_is_object: - * refcount_objects_in_slice(self.data, self._shape, - */ - __pyx_t_1 = (__pyx_v_self->free_data != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":215 - * self.callback_free_data(self.data) - * elif self.free_data: - * if self.dtype_is_object: # <<<<<<<<<<<<<< - * refcount_objects_in_slice(self.data, self._shape, - * self._strides, self.ndim, False) - */ - __pyx_t_1 = (__pyx_v_self->dtype_is_object != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":216 - * elif self.free_data: - * if self.dtype_is_object: - * refcount_objects_in_slice(self.data, self._shape, # <<<<<<<<<<<<<< - * self._strides, self.ndim, False) - * free(self.data) - */ - __pyx_memoryview_refcount_objects_in_slice(__pyx_v_self->data, __pyx_v_self->_shape, __pyx_v_self->_strides, __pyx_v_self->ndim, 0); - - /* "View.MemoryView":215 - * self.callback_free_data(self.data) - * elif self.free_data: - * if self.dtype_is_object: # <<<<<<<<<<<<<< - * refcount_objects_in_slice(self.data, self._shape, - * self._strides, self.ndim, False) - */ - } - - /* "View.MemoryView":218 - * refcount_objects_in_slice(self.data, self._shape, - * self._strides, self.ndim, False) - * free(self.data) # <<<<<<<<<<<<<< - * PyObject_Free(self._shape) - * - */ - free(__pyx_v_self->data); - - /* "View.MemoryView":214 - * if self.callback_free_data != NULL: - * self.callback_free_data(self.data) - * elif self.free_data: # <<<<<<<<<<<<<< - * if self.dtype_is_object: - * refcount_objects_in_slice(self.data, self._shape, - */ - } - __pyx_L3:; - - /* "View.MemoryView":219 - * self._strides, self.ndim, False) - * free(self.data) - * PyObject_Free(self._shape) # <<<<<<<<<<<<<< - * - * @property - */ - PyObject_Free(__pyx_v_self->_shape); - - /* "View.MemoryView":211 - * __pyx_getbuffer = capsule( &__pyx_array_getbuffer, "getbuffer(obj, view, flags)") - * - * def __dealloc__(array self): # <<<<<<<<<<<<<< - * if self.callback_free_data != NULL: - * self.callback_free_data(self.data) - */ - - /* function exit code */ - __Pyx_RefNannyFinishContext(); -} - -/* "View.MemoryView":222 - * - * @property - * def memview(self): # <<<<<<<<<<<<<< - * return self.get_memview() - * - */ - -/* Python wrapper */ -static PyObject *__pyx_pw_15View_dot_MemoryView_5array_7memview_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_15View_dot_MemoryView_5array_7memview_1__get__(PyObject *__pyx_v_self) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_r = __pyx_pf_15View_dot_MemoryView_5array_7memview___get__(((struct __pyx_array_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_15View_dot_MemoryView_5array_7memview___get__(struct __pyx_array_obj *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - - /* "View.MemoryView":223 - * @property - * def memview(self): - * return self.get_memview() # <<<<<<<<<<<<<< - * - * @cname('get_memview') - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = ((struct __pyx_vtabstruct_array *)__pyx_v_self->__pyx_vtab)->get_memview(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 223, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - /* "View.MemoryView":222 - * - * @property - * def memview(self): # <<<<<<<<<<<<<< - * return self.get_memview() - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("View.MemoryView.array.memview.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":226 - * - * @cname('get_memview') - * cdef get_memview(self): # <<<<<<<<<<<<<< - * flags = PyBUF_ANY_CONTIGUOUS|PyBUF_FORMAT|PyBUF_WRITABLE - * return memoryview(self, flags, self.dtype_is_object) - */ - -static PyObject *__pyx_array_get_memview(struct __pyx_array_obj *__pyx_v_self) { - int __pyx_v_flags; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("get_memview", 0); - - /* "View.MemoryView":227 - * @cname('get_memview') - * cdef get_memview(self): - * flags = PyBUF_ANY_CONTIGUOUS|PyBUF_FORMAT|PyBUF_WRITABLE # <<<<<<<<<<<<<< - * return memoryview(self, flags, self.dtype_is_object) - * - */ - __pyx_v_flags = ((PyBUF_ANY_CONTIGUOUS | PyBUF_FORMAT) | PyBUF_WRITABLE); - - /* "View.MemoryView":228 - * cdef get_memview(self): - * flags = PyBUF_ANY_CONTIGUOUS|PyBUF_FORMAT|PyBUF_WRITABLE - * return memoryview(self, flags, self.dtype_is_object) # <<<<<<<<<<<<<< - * - * def __len__(self): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_flags); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 228, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_v_self->dtype_is_object); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 228, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 228, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(((PyObject *)__pyx_v_self)); - __Pyx_GIVEREF(((PyObject *)__pyx_v_self)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_v_self)); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_memoryview_type), __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 228, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - /* "View.MemoryView":226 - * - * @cname('get_memview') - * cdef get_memview(self): # <<<<<<<<<<<<<< - * flags = PyBUF_ANY_CONTIGUOUS|PyBUF_FORMAT|PyBUF_WRITABLE - * return memoryview(self, flags, self.dtype_is_object) - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("View.MemoryView.array.get_memview", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":230 - * return memoryview(self, flags, self.dtype_is_object) - * - * def __len__(self): # <<<<<<<<<<<<<< - * return self._shape[0] - * - */ - -/* Python wrapper */ -static Py_ssize_t __pyx_array___len__(PyObject *__pyx_v_self); /*proto*/ -static Py_ssize_t __pyx_array___len__(PyObject *__pyx_v_self) { - Py_ssize_t __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__len__ (wrapper)", 0); - __pyx_r = __pyx_array___pyx_pf_15View_dot_MemoryView_5array_6__len__(((struct __pyx_array_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static Py_ssize_t __pyx_array___pyx_pf_15View_dot_MemoryView_5array_6__len__(struct __pyx_array_obj *__pyx_v_self) { - Py_ssize_t __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__len__", 0); - - /* "View.MemoryView":231 - * - * def __len__(self): - * return self._shape[0] # <<<<<<<<<<<<<< - * - * def __getattr__(self, attr): - */ - __pyx_r = (__pyx_v_self->_shape[0]); - goto __pyx_L0; - - /* "View.MemoryView":230 - * return memoryview(self, flags, self.dtype_is_object) - * - * def __len__(self): # <<<<<<<<<<<<<< - * return self._shape[0] - * - */ - - /* function exit code */ - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":233 - * return self._shape[0] - * - * def __getattr__(self, attr): # <<<<<<<<<<<<<< - * return getattr(self.memview, attr) - * - */ - -/* Python wrapper */ -static PyObject *__pyx_array___getattr__(PyObject *__pyx_v_self, PyObject *__pyx_v_attr); /*proto*/ -static PyObject *__pyx_array___getattr__(PyObject *__pyx_v_self, PyObject *__pyx_v_attr) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__getattr__ (wrapper)", 0); - __pyx_r = __pyx_array___pyx_pf_15View_dot_MemoryView_5array_8__getattr__(((struct __pyx_array_obj *)__pyx_v_self), ((PyObject *)__pyx_v_attr)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_array___pyx_pf_15View_dot_MemoryView_5array_8__getattr__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_attr) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__getattr__", 0); - - /* "View.MemoryView":234 - * - * def __getattr__(self, attr): - * return getattr(self.memview, attr) # <<<<<<<<<<<<<< - * - * def __getitem__(self, item): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_memview); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 234, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetAttr(__pyx_t_1, __pyx_v_attr); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 234, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - /* "View.MemoryView":233 - * return self._shape[0] - * - * def __getattr__(self, attr): # <<<<<<<<<<<<<< - * return getattr(self.memview, attr) - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("View.MemoryView.array.__getattr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":236 - * return getattr(self.memview, attr) - * - * def __getitem__(self, item): # <<<<<<<<<<<<<< - * return self.memview[item] - * - */ - -/* Python wrapper */ -static PyObject *__pyx_array___getitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_item); /*proto*/ -static PyObject *__pyx_array___getitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_item) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__getitem__ (wrapper)", 0); - __pyx_r = __pyx_array___pyx_pf_15View_dot_MemoryView_5array_10__getitem__(((struct __pyx_array_obj *)__pyx_v_self), ((PyObject *)__pyx_v_item)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_array___pyx_pf_15View_dot_MemoryView_5array_10__getitem__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_item) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__getitem__", 0); - - /* "View.MemoryView":237 - * - * def __getitem__(self, item): - * return self.memview[item] # <<<<<<<<<<<<<< - * - * def __setitem__(self, item, value): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_memview); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 237, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetItem(__pyx_t_1, __pyx_v_item); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 237, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - /* "View.MemoryView":236 - * return getattr(self.memview, attr) - * - * def __getitem__(self, item): # <<<<<<<<<<<<<< - * return self.memview[item] - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("View.MemoryView.array.__getitem__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":239 - * return self.memview[item] - * - * def __setitem__(self, item, value): # <<<<<<<<<<<<<< - * self.memview[item] = value - * - */ - -/* Python wrapper */ -static int __pyx_array___setitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value); /*proto*/ -static int __pyx_array___setitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value) { - int __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__setitem__ (wrapper)", 0); - __pyx_r = __pyx_array___pyx_pf_15View_dot_MemoryView_5array_12__setitem__(((struct __pyx_array_obj *)__pyx_v_self), ((PyObject *)__pyx_v_item), ((PyObject *)__pyx_v_value)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array_12__setitem__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value) { - int __pyx_r; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setitem__", 0); - - /* "View.MemoryView":240 - * - * def __setitem__(self, item, value): - * self.memview[item] = value # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_memview); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 240, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (unlikely(PyObject_SetItem(__pyx_t_1, __pyx_v_item, __pyx_v_value) < 0)) __PYX_ERR(2, 240, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "View.MemoryView":239 - * return self.memview[item] - * - * def __setitem__(self, item, value): # <<<<<<<<<<<<<< - * self.memview[item] = value - * - */ - - /* function exit code */ - __pyx_r = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("View.MemoryView.array.__setitem__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): - */ - -/* Python wrapper */ -static PyObject *__pyx_pw___pyx_array_1__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pw___pyx_array_1__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); - __pyx_r = __pyx_pf___pyx_array___reduce_cython__(((struct __pyx_array_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf___pyx_array___reduce_cython__(CYTHON_UNUSED struct __pyx_array_obj *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 0); - - /* "(tree fragment)":2 - * def __reduce_cython__(self): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< - * def __setstate_cython__(self, __pyx_state): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - */ - __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__9, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 2, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_Raise(__pyx_t_1, 0, 0, 0); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(2, 2, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("View.MemoryView.array.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - */ - -/* Python wrapper */ -static PyObject *__pyx_pw___pyx_array_3__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ -static PyObject *__pyx_pw___pyx_array_3__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); - __pyx_r = __pyx_pf___pyx_array_2__setstate_cython__(((struct __pyx_array_obj *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf___pyx_array_2__setstate_cython__(CYTHON_UNUSED struct __pyx_array_obj *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 0); - - /* "(tree fragment)":4 - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< - */ - __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__10, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_Raise(__pyx_t_1, 0, 0, 0); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(2, 4, __pyx_L1_error) - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("View.MemoryView.array.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":244 - * - * @cname("__pyx_array_new") - * cdef array array_cwrapper(tuple shape, Py_ssize_t itemsize, char *format, # <<<<<<<<<<<<<< - * char *mode, char *buf): - * cdef array result - */ - -static struct __pyx_array_obj *__pyx_array_new(PyObject *__pyx_v_shape, Py_ssize_t __pyx_v_itemsize, char *__pyx_v_format, char *__pyx_v_mode, char *__pyx_v_buf) { - struct __pyx_array_obj *__pyx_v_result = 0; - struct __pyx_array_obj *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("array_cwrapper", 0); - - /* "View.MemoryView":248 - * cdef array result - * - * if buf == NULL: # <<<<<<<<<<<<<< - * result = array(shape, itemsize, format, mode.decode('ASCII')) - * else: - */ - __pyx_t_1 = ((__pyx_v_buf == NULL) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":249 - * - * if buf == NULL: - * result = array(shape, itemsize, format, mode.decode('ASCII')) # <<<<<<<<<<<<<< - * else: - * result = array(shape, itemsize, format, mode.decode('ASCII'), - */ - __pyx_t_2 = PyInt_FromSsize_t(__pyx_v_itemsize); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 249, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyBytes_FromString(__pyx_v_format); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 249, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_decode_c_string(__pyx_v_mode, 0, strlen(__pyx_v_mode), NULL, NULL, PyUnicode_DecodeASCII); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 249, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(4); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 249, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_INCREF(__pyx_v_shape); - __Pyx_GIVEREF(__pyx_v_shape); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_shape); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_5, 3, __pyx_t_4); - __pyx_t_2 = 0; - __pyx_t_3 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyObject_Call(((PyObject *)__pyx_array_type), __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 249, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_v_result = ((struct __pyx_array_obj *)__pyx_t_4); - __pyx_t_4 = 0; - - /* "View.MemoryView":248 - * cdef array result - * - * if buf == NULL: # <<<<<<<<<<<<<< - * result = array(shape, itemsize, format, mode.decode('ASCII')) - * else: - */ - goto __pyx_L3; - } - - /* "View.MemoryView":251 - * result = array(shape, itemsize, format, mode.decode('ASCII')) - * else: - * result = array(shape, itemsize, format, mode.decode('ASCII'), # <<<<<<<<<<<<<< - * allocate_buffer=False) - * result.data = buf - */ - /*else*/ { - __pyx_t_4 = PyInt_FromSsize_t(__pyx_v_itemsize); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 251, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = __Pyx_PyBytes_FromString(__pyx_v_format); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 251, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_3 = __Pyx_decode_c_string(__pyx_v_mode, 0, strlen(__pyx_v_mode), NULL, NULL, PyUnicode_DecodeASCII); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 251, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyTuple_New(4); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 251, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_v_shape); - __Pyx_GIVEREF(__pyx_v_shape); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_shape); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_2, 3, __pyx_t_3); - __pyx_t_4 = 0; - __pyx_t_5 = 0; - __pyx_t_3 = 0; - - /* "View.MemoryView":252 - * else: - * result = array(shape, itemsize, format, mode.decode('ASCII'), - * allocate_buffer=False) # <<<<<<<<<<<<<< - * result.data = buf - * - */ - __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 252, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_allocate_buffer, Py_False) < 0) __PYX_ERR(2, 252, __pyx_L1_error) - - /* "View.MemoryView":251 - * result = array(shape, itemsize, format, mode.decode('ASCII')) - * else: - * result = array(shape, itemsize, format, mode.decode('ASCII'), # <<<<<<<<<<<<<< - * allocate_buffer=False) - * result.data = buf - */ - __pyx_t_5 = __Pyx_PyObject_Call(((PyObject *)__pyx_array_type), __pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 251, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_v_result = ((struct __pyx_array_obj *)__pyx_t_5); - __pyx_t_5 = 0; - - /* "View.MemoryView":253 - * result = array(shape, itemsize, format, mode.decode('ASCII'), - * allocate_buffer=False) - * result.data = buf # <<<<<<<<<<<<<< - * - * return result - */ - __pyx_v_result->data = __pyx_v_buf; - } - __pyx_L3:; - - /* "View.MemoryView":255 - * result.data = buf - * - * return result # <<<<<<<<<<<<<< - * - * - */ - __Pyx_XDECREF(((PyObject *)__pyx_r)); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - /* "View.MemoryView":244 - * - * @cname("__pyx_array_new") - * cdef array array_cwrapper(tuple shape, Py_ssize_t itemsize, char *format, # <<<<<<<<<<<<<< - * char *mode, char *buf): - * cdef array result - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("View.MemoryView.array_cwrapper", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XDECREF((PyObject *)__pyx_v_result); - __Pyx_XGIVEREF((PyObject *)__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":281 - * cdef class Enum(object): - * cdef object name - * def __init__(self, name): # <<<<<<<<<<<<<< - * self.name = name - * def __repr__(self): - */ - -/* Python wrapper */ -static int __pyx_MemviewEnum___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_MemviewEnum___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_name = 0; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - int __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__init__ (wrapper)", 0); - { - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_name,0}; - PyObject* values[1] = {0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); - switch (pos_args) { - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (pos_args) { - case 0: - if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_name)) != 0)) kw_args--; - else goto __pyx_L5_argtuple_error; - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) __PYX_ERR(2, 281, __pyx_L3_error) - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 1) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - } - __pyx_v_name = values[0]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 281, __pyx_L3_error) - __pyx_L3_error:; - __Pyx_AddTraceback("View.MemoryView.Enum.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return -1; - __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum___init__(((struct __pyx_MemviewEnum_obj *)__pyx_v_self), __pyx_v_name); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static int __pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum___init__(struct __pyx_MemviewEnum_obj *__pyx_v_self, PyObject *__pyx_v_name) { - int __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__init__", 0); - - /* "View.MemoryView":282 - * cdef object name - * def __init__(self, name): - * self.name = name # <<<<<<<<<<<<<< - * def __repr__(self): - * return self.name - */ - __Pyx_INCREF(__pyx_v_name); - __Pyx_GIVEREF(__pyx_v_name); - __Pyx_GOTREF(__pyx_v_self->name); - __Pyx_DECREF(__pyx_v_self->name); - __pyx_v_self->name = __pyx_v_name; - - /* "View.MemoryView":281 - * cdef class Enum(object): - * cdef object name - * def __init__(self, name): # <<<<<<<<<<<<<< - * self.name = name - * def __repr__(self): - */ - - /* function exit code */ - __pyx_r = 0; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":283 - * def __init__(self, name): - * self.name = name - * def __repr__(self): # <<<<<<<<<<<<<< - * return self.name - * - */ - -/* Python wrapper */ -static PyObject *__pyx_MemviewEnum___repr__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_MemviewEnum___repr__(PyObject *__pyx_v_self) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); - __pyx_r = __pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum_2__repr__(((struct __pyx_MemviewEnum_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum_2__repr__(struct __pyx_MemviewEnum_obj *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__repr__", 0); - - /* "View.MemoryView":284 - * self.name = name - * def __repr__(self): - * return self.name # <<<<<<<<<<<<<< - * - * cdef generic = Enum("") - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_self->name); - __pyx_r = __pyx_v_self->name; - goto __pyx_L0; - - /* "View.MemoryView":283 - * def __init__(self, name): - * self.name = name - * def __repr__(self): # <<<<<<<<<<<<<< - * return self.name - * - */ - - /* function exit code */ - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * cdef tuple state - * cdef object _dict - */ - -/* Python wrapper */ -static PyObject *__pyx_pw___pyx_MemviewEnum_1__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pw___pyx_MemviewEnum_1__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); - __pyx_r = __pyx_pf___pyx_MemviewEnum___reduce_cython__(((struct __pyx_MemviewEnum_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf___pyx_MemviewEnum___reduce_cython__(struct __pyx_MemviewEnum_obj *__pyx_v_self) { - PyObject *__pyx_v_state = 0; - PyObject *__pyx_v__dict = 0; - int __pyx_v_use_setstate; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 0); - - /* "(tree fragment)":5 - * cdef object _dict - * cdef bint use_setstate - * state = (self.name,) # <<<<<<<<<<<<<< - * _dict = getattr(self, '__dict__', None) - * if _dict is not None: - */ - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 5, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_self->name); - __Pyx_GIVEREF(__pyx_v_self->name); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->name); - __pyx_v_state = ((PyObject*)__pyx_t_1); - __pyx_t_1 = 0; - - /* "(tree fragment)":6 - * cdef bint use_setstate - * state = (self.name,) - * _dict = getattr(self, '__dict__', None) # <<<<<<<<<<<<<< - * if _dict is not None: - * state += (_dict,) - */ - __pyx_t_1 = __Pyx_GetAttr3(((PyObject *)__pyx_v_self), __pyx_n_s_dict, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 6, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_v__dict = __pyx_t_1; - __pyx_t_1 = 0; - - /* "(tree fragment)":7 - * state = (self.name,) - * _dict = getattr(self, '__dict__', None) - * if _dict is not None: # <<<<<<<<<<<<<< - * state += (_dict,) - * use_setstate = True - */ - __pyx_t_2 = (__pyx_v__dict != Py_None); - __pyx_t_3 = (__pyx_t_2 != 0); - if (__pyx_t_3) { - - /* "(tree fragment)":8 - * _dict = getattr(self, '__dict__', None) - * if _dict is not None: - * state += (_dict,) # <<<<<<<<<<<<<< - * use_setstate = True - * else: - */ - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 8, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v__dict); - __Pyx_GIVEREF(__pyx_v__dict); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v__dict); - __pyx_t_4 = PyNumber_InPlaceAdd(__pyx_v_state, __pyx_t_1); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 8, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF_SET(__pyx_v_state, ((PyObject*)__pyx_t_4)); - __pyx_t_4 = 0; - - /* "(tree fragment)":9 - * if _dict is not None: - * state += (_dict,) - * use_setstate = True # <<<<<<<<<<<<<< - * else: - * use_setstate = self.name is not None - */ - __pyx_v_use_setstate = 1; - - /* "(tree fragment)":7 - * state = (self.name,) - * _dict = getattr(self, '__dict__', None) - * if _dict is not None: # <<<<<<<<<<<<<< - * state += (_dict,) - * use_setstate = True - */ - goto __pyx_L3; - } - - /* "(tree fragment)":11 - * use_setstate = True - * else: - * use_setstate = self.name is not None # <<<<<<<<<<<<<< - * if use_setstate: - * return __pyx_unpickle_Enum, (type(self), 0xb068931, None), state - */ - /*else*/ { - __pyx_t_3 = (__pyx_v_self->name != Py_None); - __pyx_v_use_setstate = __pyx_t_3; - } - __pyx_L3:; - - /* "(tree fragment)":12 - * else: - * use_setstate = self.name is not None - * if use_setstate: # <<<<<<<<<<<<<< - * return __pyx_unpickle_Enum, (type(self), 0xb068931, None), state - * else: - */ - __pyx_t_3 = (__pyx_v_use_setstate != 0); - if (__pyx_t_3) { - - /* "(tree fragment)":13 - * use_setstate = self.name is not None - * if use_setstate: - * return __pyx_unpickle_Enum, (type(self), 0xb068931, None), state # <<<<<<<<<<<<<< - * else: - * return __pyx_unpickle_Enum, (type(self), 0xb068931, state) - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_pyx_unpickle_Enum); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 13, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 13, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - __Pyx_INCREF(__pyx_int_184977713); - __Pyx_GIVEREF(__pyx_int_184977713); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_184977713); - __Pyx_INCREF(Py_None); - __Pyx_GIVEREF(Py_None); - PyTuple_SET_ITEM(__pyx_t_1, 2, Py_None); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 13, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1); - __Pyx_INCREF(__pyx_v_state); - __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_state); - __pyx_t_4 = 0; - __pyx_t_1 = 0; - __pyx_r = __pyx_t_5; - __pyx_t_5 = 0; - goto __pyx_L0; - - /* "(tree fragment)":12 - * else: - * use_setstate = self.name is not None - * if use_setstate: # <<<<<<<<<<<<<< - * return __pyx_unpickle_Enum, (type(self), 0xb068931, None), state - * else: - */ - } - - /* "(tree fragment)":15 - * return __pyx_unpickle_Enum, (type(self), 0xb068931, None), state - * else: - * return __pyx_unpickle_Enum, (type(self), 0xb068931, state) # <<<<<<<<<<<<<< - * def __setstate_cython__(self, __pyx_state): - * __pyx_unpickle_Enum__set_state(self, __pyx_state) - */ - /*else*/ { - __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_pyx_unpickle_Enum); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 15, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 15, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - __Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self)))); - __Pyx_INCREF(__pyx_int_184977713); - __Pyx_GIVEREF(__pyx_int_184977713); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_int_184977713); - __Pyx_INCREF(__pyx_v_state); - __Pyx_GIVEREF(__pyx_v_state); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_state); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 15, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1); - __pyx_t_5 = 0; - __pyx_t_1 = 0; - __pyx_r = __pyx_t_4; - __pyx_t_4 = 0; - goto __pyx_L0; - } - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * cdef tuple state - * cdef object _dict - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("View.MemoryView.Enum.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_state); - __Pyx_XDECREF(__pyx_v__dict); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":16 - * else: - * return __pyx_unpickle_Enum, (type(self), 0xb068931, state) - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * __pyx_unpickle_Enum__set_state(self, __pyx_state) - */ - -/* Python wrapper */ -static PyObject *__pyx_pw___pyx_MemviewEnum_3__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ -static PyObject *__pyx_pw___pyx_MemviewEnum_3__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); - __pyx_r = __pyx_pf___pyx_MemviewEnum_2__setstate_cython__(((struct __pyx_MemviewEnum_obj *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf___pyx_MemviewEnum_2__setstate_cython__(struct __pyx_MemviewEnum_obj *__pyx_v_self, PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 0); - - /* "(tree fragment)":17 - * return __pyx_unpickle_Enum, (type(self), 0xb068931, state) - * def __setstate_cython__(self, __pyx_state): - * __pyx_unpickle_Enum__set_state(self, __pyx_state) # <<<<<<<<<<<<<< - */ - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_v___pyx_state)->tp_name), 0))) __PYX_ERR(2, 17, __pyx_L1_error) - __pyx_t_1 = __pyx_unpickle_Enum__set_state(__pyx_v_self, ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 17, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "(tree fragment)":16 - * else: - * return __pyx_unpickle_Enum, (type(self), 0xb068931, state) - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * __pyx_unpickle_Enum__set_state(self, __pyx_state) - */ - - /* function exit code */ - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("View.MemoryView.Enum.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":298 - * - * @cname('__pyx_align_pointer') - * cdef void *align_pointer(void *memory, size_t alignment) nogil: # <<<<<<<<<<<<<< - * "Align pointer memory on a given boundary" - * cdef Py_intptr_t aligned_p = memory - */ - -static void *__pyx_align_pointer(void *__pyx_v_memory, size_t __pyx_v_alignment) { - Py_intptr_t __pyx_v_aligned_p; - size_t __pyx_v_offset; - void *__pyx_r; - int __pyx_t_1; - - /* "View.MemoryView":300 - * cdef void *align_pointer(void *memory, size_t alignment) nogil: - * "Align pointer memory on a given boundary" - * cdef Py_intptr_t aligned_p = memory # <<<<<<<<<<<<<< - * cdef size_t offset - * - */ - __pyx_v_aligned_p = ((Py_intptr_t)__pyx_v_memory); - - /* "View.MemoryView":304 - * - * with cython.cdivision(True): - * offset = aligned_p % alignment # <<<<<<<<<<<<<< - * - * if offset > 0: - */ - __pyx_v_offset = (__pyx_v_aligned_p % __pyx_v_alignment); - - /* "View.MemoryView":306 - * offset = aligned_p % alignment - * - * if offset > 0: # <<<<<<<<<<<<<< - * aligned_p += alignment - offset - * - */ - __pyx_t_1 = ((__pyx_v_offset > 0) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":307 - * - * if offset > 0: - * aligned_p += alignment - offset # <<<<<<<<<<<<<< - * - * return aligned_p - */ - __pyx_v_aligned_p = (__pyx_v_aligned_p + (__pyx_v_alignment - __pyx_v_offset)); - - /* "View.MemoryView":306 - * offset = aligned_p % alignment - * - * if offset > 0: # <<<<<<<<<<<<<< - * aligned_p += alignment - offset - * - */ - } - - /* "View.MemoryView":309 - * aligned_p += alignment - offset - * - * return aligned_p # <<<<<<<<<<<<<< - * - * - */ - __pyx_r = ((void *)__pyx_v_aligned_p); - goto __pyx_L0; - - /* "View.MemoryView":298 - * - * @cname('__pyx_align_pointer') - * cdef void *align_pointer(void *memory, size_t alignment) nogil: # <<<<<<<<<<<<<< - * "Align pointer memory on a given boundary" - * cdef Py_intptr_t aligned_p = memory - */ - - /* function exit code */ - __pyx_L0:; - return __pyx_r; -} - -/* "View.MemoryView":345 - * cdef __Pyx_TypeInfo *typeinfo - * - * def __cinit__(memoryview self, object obj, int flags, bint dtype_is_object=False): # <<<<<<<<<<<<<< - * self.obj = obj - * self.flags = flags - */ - -/* Python wrapper */ -static int __pyx_memoryview___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static int __pyx_memoryview___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_obj = 0; - int __pyx_v_flags; - int __pyx_v_dtype_is_object; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - int __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__cinit__ (wrapper)", 0); - { - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_obj,&__pyx_n_s_flags,&__pyx_n_s_dtype_is_object,0}; - PyObject* values[3] = {0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); - switch (pos_args) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - CYTHON_FALLTHROUGH; - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - CYTHON_FALLTHROUGH; - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (pos_args) { - case 0: - if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_obj)) != 0)) kw_args--; - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_flags)) != 0)) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 2, 3, 1); __PYX_ERR(2, 345, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (kw_args > 0) { - PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_dtype_is_object); - if (value) { values[2] = value; kw_args--; } - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__cinit__") < 0)) __PYX_ERR(2, 345, __pyx_L3_error) - } - } else { - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - CYTHON_FALLTHROUGH; - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - break; - default: goto __pyx_L5_argtuple_error; - } - } - __pyx_v_obj = values[0]; - __pyx_v_flags = __Pyx_PyInt_As_int(values[1]); if (unlikely((__pyx_v_flags == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 345, __pyx_L3_error) - if (values[2]) { - __pyx_v_dtype_is_object = __Pyx_PyObject_IsTrue(values[2]); if (unlikely((__pyx_v_dtype_is_object == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 345, __pyx_L3_error) - } else { - __pyx_v_dtype_is_object = ((int)0); - } - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__cinit__", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 345, __pyx_L3_error) - __pyx_L3_error:; - __Pyx_AddTraceback("View.MemoryView.memoryview.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return -1; - __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview___cinit__(((struct __pyx_memoryview_obj *)__pyx_v_self), __pyx_v_obj, __pyx_v_flags, __pyx_v_dtype_is_object); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview___cinit__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_obj, int __pyx_v_flags, int __pyx_v_dtype_is_object) { - int __pyx_r; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - int __pyx_t_2; - int __pyx_t_3; - int __pyx_t_4; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__cinit__", 0); - - /* "View.MemoryView":346 - * - * def __cinit__(memoryview self, object obj, int flags, bint dtype_is_object=False): - * self.obj = obj # <<<<<<<<<<<<<< - * self.flags = flags - * if type(self) is memoryview or obj is not None: - */ - __Pyx_INCREF(__pyx_v_obj); - __Pyx_GIVEREF(__pyx_v_obj); - __Pyx_GOTREF(__pyx_v_self->obj); - __Pyx_DECREF(__pyx_v_self->obj); - __pyx_v_self->obj = __pyx_v_obj; - - /* "View.MemoryView":347 - * def __cinit__(memoryview self, object obj, int flags, bint dtype_is_object=False): - * self.obj = obj - * self.flags = flags # <<<<<<<<<<<<<< - * if type(self) is memoryview or obj is not None: - * __Pyx_GetBuffer(obj, &self.view, flags) - */ - __pyx_v_self->flags = __pyx_v_flags; - - /* "View.MemoryView":348 - * self.obj = obj - * self.flags = flags - * if type(self) is memoryview or obj is not None: # <<<<<<<<<<<<<< - * __Pyx_GetBuffer(obj, &self.view, flags) - * if self.view.obj == NULL: - */ - __pyx_t_2 = (((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))) == ((PyObject *)__pyx_memoryview_type)); - __pyx_t_3 = (__pyx_t_2 != 0); - if (!__pyx_t_3) { - } else { - __pyx_t_1 = __pyx_t_3; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_3 = (__pyx_v_obj != Py_None); - __pyx_t_2 = (__pyx_t_3 != 0); - __pyx_t_1 = __pyx_t_2; - __pyx_L4_bool_binop_done:; - if (__pyx_t_1) { - - /* "View.MemoryView":349 - * self.flags = flags - * if type(self) is memoryview or obj is not None: - * __Pyx_GetBuffer(obj, &self.view, flags) # <<<<<<<<<<<<<< - * if self.view.obj == NULL: - * (<__pyx_buffer *> &self.view).obj = Py_None - */ - __pyx_t_4 = __Pyx_GetBuffer(__pyx_v_obj, (&__pyx_v_self->view), __pyx_v_flags); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(2, 349, __pyx_L1_error) - - /* "View.MemoryView":350 - * if type(self) is memoryview or obj is not None: - * __Pyx_GetBuffer(obj, &self.view, flags) - * if self.view.obj == NULL: # <<<<<<<<<<<<<< - * (<__pyx_buffer *> &self.view).obj = Py_None - * Py_INCREF(Py_None) - */ - __pyx_t_1 = ((((PyObject *)__pyx_v_self->view.obj) == NULL) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":351 - * __Pyx_GetBuffer(obj, &self.view, flags) - * if self.view.obj == NULL: - * (<__pyx_buffer *> &self.view).obj = Py_None # <<<<<<<<<<<<<< - * Py_INCREF(Py_None) - * - */ - ((Py_buffer *)(&__pyx_v_self->view))->obj = Py_None; - - /* "View.MemoryView":352 - * if self.view.obj == NULL: - * (<__pyx_buffer *> &self.view).obj = Py_None - * Py_INCREF(Py_None) # <<<<<<<<<<<<<< - * - * global __pyx_memoryview_thread_locks_used - */ - Py_INCREF(Py_None); - - /* "View.MemoryView":350 - * if type(self) is memoryview or obj is not None: - * __Pyx_GetBuffer(obj, &self.view, flags) - * if self.view.obj == NULL: # <<<<<<<<<<<<<< - * (<__pyx_buffer *> &self.view).obj = Py_None - * Py_INCREF(Py_None) - */ - } - - /* "View.MemoryView":348 - * self.obj = obj - * self.flags = flags - * if type(self) is memoryview or obj is not None: # <<<<<<<<<<<<<< - * __Pyx_GetBuffer(obj, &self.view, flags) - * if self.view.obj == NULL: - */ - } - - /* "View.MemoryView":355 - * - * global __pyx_memoryview_thread_locks_used - * if __pyx_memoryview_thread_locks_used < THREAD_LOCKS_PREALLOCATED: # <<<<<<<<<<<<<< - * self.lock = __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used] - * __pyx_memoryview_thread_locks_used += 1 - */ - __pyx_t_1 = ((__pyx_memoryview_thread_locks_used < 8) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":356 - * global __pyx_memoryview_thread_locks_used - * if __pyx_memoryview_thread_locks_used < THREAD_LOCKS_PREALLOCATED: - * self.lock = __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used] # <<<<<<<<<<<<<< - * __pyx_memoryview_thread_locks_used += 1 - * if self.lock is NULL: - */ - __pyx_v_self->lock = (__pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used]); - - /* "View.MemoryView":357 - * if __pyx_memoryview_thread_locks_used < THREAD_LOCKS_PREALLOCATED: - * self.lock = __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used] - * __pyx_memoryview_thread_locks_used += 1 # <<<<<<<<<<<<<< - * if self.lock is NULL: - * self.lock = PyThread_allocate_lock() - */ - __pyx_memoryview_thread_locks_used = (__pyx_memoryview_thread_locks_used + 1); - - /* "View.MemoryView":355 - * - * global __pyx_memoryview_thread_locks_used - * if __pyx_memoryview_thread_locks_used < THREAD_LOCKS_PREALLOCATED: # <<<<<<<<<<<<<< - * self.lock = __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used] - * __pyx_memoryview_thread_locks_used += 1 - */ - } - - /* "View.MemoryView":358 - * self.lock = __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used] - * __pyx_memoryview_thread_locks_used += 1 - * if self.lock is NULL: # <<<<<<<<<<<<<< - * self.lock = PyThread_allocate_lock() - * if self.lock is NULL: - */ - __pyx_t_1 = ((__pyx_v_self->lock == NULL) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":359 - * __pyx_memoryview_thread_locks_used += 1 - * if self.lock is NULL: - * self.lock = PyThread_allocate_lock() # <<<<<<<<<<<<<< - * if self.lock is NULL: - * raise MemoryError - */ - __pyx_v_self->lock = PyThread_allocate_lock(); - - /* "View.MemoryView":360 - * if self.lock is NULL: - * self.lock = PyThread_allocate_lock() - * if self.lock is NULL: # <<<<<<<<<<<<<< - * raise MemoryError - * - */ - __pyx_t_1 = ((__pyx_v_self->lock == NULL) != 0); - if (unlikely(__pyx_t_1)) { - - /* "View.MemoryView":361 - * self.lock = PyThread_allocate_lock() - * if self.lock is NULL: - * raise MemoryError # <<<<<<<<<<<<<< - * - * if flags & PyBUF_FORMAT: - */ - PyErr_NoMemory(); __PYX_ERR(2, 361, __pyx_L1_error) - - /* "View.MemoryView":360 - * if self.lock is NULL: - * self.lock = PyThread_allocate_lock() - * if self.lock is NULL: # <<<<<<<<<<<<<< - * raise MemoryError - * - */ - } - - /* "View.MemoryView":358 - * self.lock = __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used] - * __pyx_memoryview_thread_locks_used += 1 - * if self.lock is NULL: # <<<<<<<<<<<<<< - * self.lock = PyThread_allocate_lock() - * if self.lock is NULL: - */ - } - - /* "View.MemoryView":363 - * raise MemoryError - * - * if flags & PyBUF_FORMAT: # <<<<<<<<<<<<<< - * self.dtype_is_object = (self.view.format[0] == b'O' and self.view.format[1] == b'\0') - * else: - */ - __pyx_t_1 = ((__pyx_v_flags & PyBUF_FORMAT) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":364 - * - * if flags & PyBUF_FORMAT: - * self.dtype_is_object = (self.view.format[0] == b'O' and self.view.format[1] == b'\0') # <<<<<<<<<<<<<< - * else: - * self.dtype_is_object = dtype_is_object - */ - __pyx_t_2 = (((__pyx_v_self->view.format[0]) == 'O') != 0); - if (__pyx_t_2) { - } else { - __pyx_t_1 = __pyx_t_2; - goto __pyx_L11_bool_binop_done; - } - __pyx_t_2 = (((__pyx_v_self->view.format[1]) == '\x00') != 0); - __pyx_t_1 = __pyx_t_2; - __pyx_L11_bool_binop_done:; - __pyx_v_self->dtype_is_object = __pyx_t_1; - - /* "View.MemoryView":363 - * raise MemoryError - * - * if flags & PyBUF_FORMAT: # <<<<<<<<<<<<<< - * self.dtype_is_object = (self.view.format[0] == b'O' and self.view.format[1] == b'\0') - * else: - */ - goto __pyx_L10; - } - - /* "View.MemoryView":366 - * self.dtype_is_object = (self.view.format[0] == b'O' and self.view.format[1] == b'\0') - * else: - * self.dtype_is_object = dtype_is_object # <<<<<<<<<<<<<< - * - * self.acquisition_count_aligned_p = <__pyx_atomic_int *> align_pointer( - */ - /*else*/ { - __pyx_v_self->dtype_is_object = __pyx_v_dtype_is_object; - } - __pyx_L10:; - - /* "View.MemoryView":368 - * self.dtype_is_object = dtype_is_object - * - * self.acquisition_count_aligned_p = <__pyx_atomic_int *> align_pointer( # <<<<<<<<<<<<<< - * &self.acquisition_count[0], sizeof(__pyx_atomic_int)) - * self.typeinfo = NULL - */ - __pyx_v_self->acquisition_count_aligned_p = ((__pyx_atomic_int *)__pyx_align_pointer(((void *)(&(__pyx_v_self->acquisition_count[0]))), (sizeof(__pyx_atomic_int)))); - - /* "View.MemoryView":370 - * self.acquisition_count_aligned_p = <__pyx_atomic_int *> align_pointer( - * &self.acquisition_count[0], sizeof(__pyx_atomic_int)) - * self.typeinfo = NULL # <<<<<<<<<<<<<< - * - * def __dealloc__(memoryview self): - */ - __pyx_v_self->typeinfo = NULL; - - /* "View.MemoryView":345 - * cdef __Pyx_TypeInfo *typeinfo - * - * def __cinit__(memoryview self, object obj, int flags, bint dtype_is_object=False): # <<<<<<<<<<<<<< - * self.obj = obj - * self.flags = flags - */ - - /* function exit code */ - __pyx_r = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_AddTraceback("View.MemoryView.memoryview.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":372 - * self.typeinfo = NULL - * - * def __dealloc__(memoryview self): # <<<<<<<<<<<<<< - * if self.obj is not None: - * __Pyx_ReleaseBuffer(&self.view) - */ - -/* Python wrapper */ -static void __pyx_memoryview___dealloc__(PyObject *__pyx_v_self); /*proto*/ -static void __pyx_memoryview___dealloc__(PyObject *__pyx_v_self) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__dealloc__ (wrapper)", 0); - __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_2__dealloc__(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); -} - -static void __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_2__dealloc__(struct __pyx_memoryview_obj *__pyx_v_self) { - int __pyx_v_i; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - int __pyx_t_2; - int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - PyThread_type_lock __pyx_t_6; - PyThread_type_lock __pyx_t_7; - __Pyx_RefNannySetupContext("__dealloc__", 0); - - /* "View.MemoryView":373 - * - * def __dealloc__(memoryview self): - * if self.obj is not None: # <<<<<<<<<<<<<< - * __Pyx_ReleaseBuffer(&self.view) - * elif (<__pyx_buffer *> &self.view).obj == Py_None: - */ - __pyx_t_1 = (__pyx_v_self->obj != Py_None); - __pyx_t_2 = (__pyx_t_1 != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":374 - * def __dealloc__(memoryview self): - * if self.obj is not None: - * __Pyx_ReleaseBuffer(&self.view) # <<<<<<<<<<<<<< - * elif (<__pyx_buffer *> &self.view).obj == Py_None: - * - */ - __Pyx_ReleaseBuffer((&__pyx_v_self->view)); - - /* "View.MemoryView":373 - * - * def __dealloc__(memoryview self): - * if self.obj is not None: # <<<<<<<<<<<<<< - * __Pyx_ReleaseBuffer(&self.view) - * elif (<__pyx_buffer *> &self.view).obj == Py_None: - */ - goto __pyx_L3; - } - - /* "View.MemoryView":375 - * if self.obj is not None: - * __Pyx_ReleaseBuffer(&self.view) - * elif (<__pyx_buffer *> &self.view).obj == Py_None: # <<<<<<<<<<<<<< - * - * (<__pyx_buffer *> &self.view).obj = NULL - */ - __pyx_t_2 = ((((Py_buffer *)(&__pyx_v_self->view))->obj == Py_None) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":377 - * elif (<__pyx_buffer *> &self.view).obj == Py_None: - * - * (<__pyx_buffer *> &self.view).obj = NULL # <<<<<<<<<<<<<< - * Py_DECREF(Py_None) - * - */ - ((Py_buffer *)(&__pyx_v_self->view))->obj = NULL; - - /* "View.MemoryView":378 - * - * (<__pyx_buffer *> &self.view).obj = NULL - * Py_DECREF(Py_None) # <<<<<<<<<<<<<< - * - * cdef int i - */ - Py_DECREF(Py_None); - - /* "View.MemoryView":375 - * if self.obj is not None: - * __Pyx_ReleaseBuffer(&self.view) - * elif (<__pyx_buffer *> &self.view).obj == Py_None: # <<<<<<<<<<<<<< - * - * (<__pyx_buffer *> &self.view).obj = NULL - */ - } - __pyx_L3:; - - /* "View.MemoryView":382 - * cdef int i - * global __pyx_memoryview_thread_locks_used - * if self.lock != NULL: # <<<<<<<<<<<<<< - * for i in range(__pyx_memoryview_thread_locks_used): - * if __pyx_memoryview_thread_locks[i] is self.lock: - */ - __pyx_t_2 = ((__pyx_v_self->lock != NULL) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":383 - * global __pyx_memoryview_thread_locks_used - * if self.lock != NULL: - * for i in range(__pyx_memoryview_thread_locks_used): # <<<<<<<<<<<<<< - * if __pyx_memoryview_thread_locks[i] is self.lock: - * __pyx_memoryview_thread_locks_used -= 1 - */ - __pyx_t_3 = __pyx_memoryview_thread_locks_used; - __pyx_t_4 = __pyx_t_3; - for (__pyx_t_5 = 0; __pyx_t_5 < __pyx_t_4; __pyx_t_5+=1) { - __pyx_v_i = __pyx_t_5; - - /* "View.MemoryView":384 - * if self.lock != NULL: - * for i in range(__pyx_memoryview_thread_locks_used): - * if __pyx_memoryview_thread_locks[i] is self.lock: # <<<<<<<<<<<<<< - * __pyx_memoryview_thread_locks_used -= 1 - * if i != __pyx_memoryview_thread_locks_used: - */ - __pyx_t_2 = (((__pyx_memoryview_thread_locks[__pyx_v_i]) == __pyx_v_self->lock) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":385 - * for i in range(__pyx_memoryview_thread_locks_used): - * if __pyx_memoryview_thread_locks[i] is self.lock: - * __pyx_memoryview_thread_locks_used -= 1 # <<<<<<<<<<<<<< - * if i != __pyx_memoryview_thread_locks_used: - * __pyx_memoryview_thread_locks[i], __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used] = ( - */ - __pyx_memoryview_thread_locks_used = (__pyx_memoryview_thread_locks_used - 1); - - /* "View.MemoryView":386 - * if __pyx_memoryview_thread_locks[i] is self.lock: - * __pyx_memoryview_thread_locks_used -= 1 - * if i != __pyx_memoryview_thread_locks_used: # <<<<<<<<<<<<<< - * __pyx_memoryview_thread_locks[i], __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used] = ( - * __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used], __pyx_memoryview_thread_locks[i]) - */ - __pyx_t_2 = ((__pyx_v_i != __pyx_memoryview_thread_locks_used) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":388 - * if i != __pyx_memoryview_thread_locks_used: - * __pyx_memoryview_thread_locks[i], __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used] = ( - * __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used], __pyx_memoryview_thread_locks[i]) # <<<<<<<<<<<<<< - * break - * else: - */ - __pyx_t_6 = (__pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used]); - __pyx_t_7 = (__pyx_memoryview_thread_locks[__pyx_v_i]); - - /* "View.MemoryView":387 - * __pyx_memoryview_thread_locks_used -= 1 - * if i != __pyx_memoryview_thread_locks_used: - * __pyx_memoryview_thread_locks[i], __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used] = ( # <<<<<<<<<<<<<< - * __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used], __pyx_memoryview_thread_locks[i]) - * break - */ - (__pyx_memoryview_thread_locks[__pyx_v_i]) = __pyx_t_6; - (__pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used]) = __pyx_t_7; - - /* "View.MemoryView":386 - * if __pyx_memoryview_thread_locks[i] is self.lock: - * __pyx_memoryview_thread_locks_used -= 1 - * if i != __pyx_memoryview_thread_locks_used: # <<<<<<<<<<<<<< - * __pyx_memoryview_thread_locks[i], __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used] = ( - * __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used], __pyx_memoryview_thread_locks[i]) - */ - } - - /* "View.MemoryView":389 - * __pyx_memoryview_thread_locks[i], __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used] = ( - * __pyx_memoryview_thread_locks[__pyx_memoryview_thread_locks_used], __pyx_memoryview_thread_locks[i]) - * break # <<<<<<<<<<<<<< - * else: - * PyThread_free_lock(self.lock) - */ - goto __pyx_L6_break; - - /* "View.MemoryView":384 - * if self.lock != NULL: - * for i in range(__pyx_memoryview_thread_locks_used): - * if __pyx_memoryview_thread_locks[i] is self.lock: # <<<<<<<<<<<<<< - * __pyx_memoryview_thread_locks_used -= 1 - * if i != __pyx_memoryview_thread_locks_used: - */ - } - } - /*else*/ { - - /* "View.MemoryView":391 - * break - * else: - * PyThread_free_lock(self.lock) # <<<<<<<<<<<<<< - * - * cdef char *get_item_pointer(memoryview self, object index) except NULL: - */ - PyThread_free_lock(__pyx_v_self->lock); - } - __pyx_L6_break:; - - /* "View.MemoryView":382 - * cdef int i - * global __pyx_memoryview_thread_locks_used - * if self.lock != NULL: # <<<<<<<<<<<<<< - * for i in range(__pyx_memoryview_thread_locks_used): - * if __pyx_memoryview_thread_locks[i] is self.lock: - */ - } - - /* "View.MemoryView":372 - * self.typeinfo = NULL - * - * def __dealloc__(memoryview self): # <<<<<<<<<<<<<< - * if self.obj is not None: - * __Pyx_ReleaseBuffer(&self.view) - */ - - /* function exit code */ - __Pyx_RefNannyFinishContext(); -} - -/* "View.MemoryView":393 - * PyThread_free_lock(self.lock) - * - * cdef char *get_item_pointer(memoryview self, object index) except NULL: # <<<<<<<<<<<<<< - * cdef Py_ssize_t dim - * cdef char *itemp = self.view.buf - */ - -static char *__pyx_memoryview_get_item_pointer(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index) { - Py_ssize_t __pyx_v_dim; - char *__pyx_v_itemp; - PyObject *__pyx_v_idx = NULL; - char *__pyx_r; - __Pyx_RefNannyDeclarations - Py_ssize_t __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - PyObject *(*__pyx_t_4)(PyObject *); - PyObject *__pyx_t_5 = NULL; - Py_ssize_t __pyx_t_6; - char *__pyx_t_7; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("get_item_pointer", 0); - - /* "View.MemoryView":395 - * cdef char *get_item_pointer(memoryview self, object index) except NULL: - * cdef Py_ssize_t dim - * cdef char *itemp = self.view.buf # <<<<<<<<<<<<<< - * - * for dim, idx in enumerate(index): - */ - __pyx_v_itemp = ((char *)__pyx_v_self->view.buf); - - /* "View.MemoryView":397 - * cdef char *itemp = self.view.buf - * - * for dim, idx in enumerate(index): # <<<<<<<<<<<<<< - * itemp = pybuffer_index(&self.view, itemp, idx, dim) - * - */ - __pyx_t_1 = 0; - if (likely(PyList_CheckExact(__pyx_v_index)) || PyTuple_CheckExact(__pyx_v_index)) { - __pyx_t_2 = __pyx_v_index; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_index); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 397, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext; if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 397, __pyx_L1_error) - } - for (;;) { - if (likely(!__pyx_t_4)) { - if (likely(PyList_CheckExact(__pyx_t_2))) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break; - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_5 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(2, 397, __pyx_L1_error) - #else - __pyx_t_5 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 397, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - #endif - } else { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; if (unlikely(0 < 0)) __PYX_ERR(2, 397, __pyx_L1_error) - #else - __pyx_t_5 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 397, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - #endif - } - } else { - __pyx_t_5 = __pyx_t_4(__pyx_t_2); - if (unlikely(!__pyx_t_5)) { - PyObject* exc_type = PyErr_Occurred(); - if (exc_type) { - if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else __PYX_ERR(2, 397, __pyx_L1_error) - } - break; - } - __Pyx_GOTREF(__pyx_t_5); - } - __Pyx_XDECREF_SET(__pyx_v_idx, __pyx_t_5); - __pyx_t_5 = 0; - __pyx_v_dim = __pyx_t_1; - __pyx_t_1 = (__pyx_t_1 + 1); - - /* "View.MemoryView":398 - * - * for dim, idx in enumerate(index): - * itemp = pybuffer_index(&self.view, itemp, idx, dim) # <<<<<<<<<<<<<< - * - * return itemp - */ - __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_v_idx); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 398, __pyx_L1_error) - __pyx_t_7 = __pyx_pybuffer_index((&__pyx_v_self->view), __pyx_v_itemp, __pyx_t_6, __pyx_v_dim); if (unlikely(__pyx_t_7 == ((char *)NULL))) __PYX_ERR(2, 398, __pyx_L1_error) - __pyx_v_itemp = __pyx_t_7; - - /* "View.MemoryView":397 - * cdef char *itemp = self.view.buf - * - * for dim, idx in enumerate(index): # <<<<<<<<<<<<<< - * itemp = pybuffer_index(&self.view, itemp, idx, dim) - * - */ - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "View.MemoryView":400 - * itemp = pybuffer_index(&self.view, itemp, idx, dim) - * - * return itemp # <<<<<<<<<<<<<< - * - * - */ - __pyx_r = __pyx_v_itemp; - goto __pyx_L0; - - /* "View.MemoryView":393 - * PyThread_free_lock(self.lock) - * - * cdef char *get_item_pointer(memoryview self, object index) except NULL: # <<<<<<<<<<<<<< - * cdef Py_ssize_t dim - * cdef char *itemp = self.view.buf - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("View.MemoryView.memoryview.get_item_pointer", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_idx); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":403 - * - * - * def __getitem__(memoryview self, object index): # <<<<<<<<<<<<<< - * if index is Ellipsis: - * return self - */ - -/* Python wrapper */ -static PyObject *__pyx_memoryview___getitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_index); /*proto*/ -static PyObject *__pyx_memoryview___getitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_index) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__getitem__ (wrapper)", 0); - __pyx_r = __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_4__getitem__(((struct __pyx_memoryview_obj *)__pyx_v_self), ((PyObject *)__pyx_v_index)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_4__getitem__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index) { - PyObject *__pyx_v_have_slices = NULL; - PyObject *__pyx_v_indices = NULL; - char *__pyx_v_itemp; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - char *__pyx_t_6; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__getitem__", 0); - - /* "View.MemoryView":404 - * - * def __getitem__(memoryview self, object index): - * if index is Ellipsis: # <<<<<<<<<<<<<< - * return self - * - */ - __pyx_t_1 = (__pyx_v_index == __pyx_builtin_Ellipsis); - __pyx_t_2 = (__pyx_t_1 != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":405 - * def __getitem__(memoryview self, object index): - * if index is Ellipsis: - * return self # <<<<<<<<<<<<<< - * - * have_slices, indices = _unellipsify(index, self.view.ndim) - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_self)); - __pyx_r = ((PyObject *)__pyx_v_self); - goto __pyx_L0; - - /* "View.MemoryView":404 - * - * def __getitem__(memoryview self, object index): - * if index is Ellipsis: # <<<<<<<<<<<<<< - * return self - * - */ - } - - /* "View.MemoryView":407 - * return self - * - * have_slices, indices = _unellipsify(index, self.view.ndim) # <<<<<<<<<<<<<< - * - * cdef char *itemp - */ - __pyx_t_3 = _unellipsify(__pyx_v_index, __pyx_v_self->view.ndim); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 407, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - if (likely(__pyx_t_3 != Py_None)) { - PyObject* sequence = __pyx_t_3; - Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); - if (unlikely(size != 2)) { - if (size > 2) __Pyx_RaiseTooManyValuesError(2); - else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(2, 407, __pyx_L1_error) - } - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(__pyx_t_5); - #else - __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 407, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 407, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - #endif - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - } else { - __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(2, 407, __pyx_L1_error) - } - __pyx_v_have_slices = __pyx_t_4; - __pyx_t_4 = 0; - __pyx_v_indices = __pyx_t_5; - __pyx_t_5 = 0; - - /* "View.MemoryView":410 - * - * cdef char *itemp - * if have_slices: # <<<<<<<<<<<<<< - * return memview_slice(self, indices) - * else: - */ - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_have_slices); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(2, 410, __pyx_L1_error) - if (__pyx_t_2) { - - /* "View.MemoryView":411 - * cdef char *itemp - * if have_slices: - * return memview_slice(self, indices) # <<<<<<<<<<<<<< - * else: - * itemp = self.get_item_pointer(indices) - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = ((PyObject *)__pyx_memview_slice(__pyx_v_self, __pyx_v_indices)); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 411, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - goto __pyx_L0; - - /* "View.MemoryView":410 - * - * cdef char *itemp - * if have_slices: # <<<<<<<<<<<<<< - * return memview_slice(self, indices) - * else: - */ - } - - /* "View.MemoryView":413 - * return memview_slice(self, indices) - * else: - * itemp = self.get_item_pointer(indices) # <<<<<<<<<<<<<< - * return self.convert_item_to_object(itemp) - * - */ - /*else*/ { - __pyx_t_6 = ((struct __pyx_vtabstruct_memoryview *)__pyx_v_self->__pyx_vtab)->get_item_pointer(__pyx_v_self, __pyx_v_indices); if (unlikely(__pyx_t_6 == ((char *)NULL))) __PYX_ERR(2, 413, __pyx_L1_error) - __pyx_v_itemp = __pyx_t_6; - - /* "View.MemoryView":414 - * else: - * itemp = self.get_item_pointer(indices) - * return self.convert_item_to_object(itemp) # <<<<<<<<<<<<<< - * - * def __setitem__(memoryview self, object index, object value): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = ((struct __pyx_vtabstruct_memoryview *)__pyx_v_self->__pyx_vtab)->convert_item_to_object(__pyx_v_self, __pyx_v_itemp); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 414, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - goto __pyx_L0; - } - - /* "View.MemoryView":403 - * - * - * def __getitem__(memoryview self, object index): # <<<<<<<<<<<<<< - * if index is Ellipsis: - * return self - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("View.MemoryView.memoryview.__getitem__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_have_slices); - __Pyx_XDECREF(__pyx_v_indices); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":416 - * return self.convert_item_to_object(itemp) - * - * def __setitem__(memoryview self, object index, object value): # <<<<<<<<<<<<<< - * if self.view.readonly: - * raise TypeError("Cannot assign to read-only memoryview") - */ - -/* Python wrapper */ -static int __pyx_memoryview___setitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value); /*proto*/ -static int __pyx_memoryview___setitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value) { - int __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__setitem__ (wrapper)", 0); - __pyx_r = __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_6__setitem__(((struct __pyx_memoryview_obj *)__pyx_v_self), ((PyObject *)__pyx_v_index), ((PyObject *)__pyx_v_value)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_6__setitem__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value) { - PyObject *__pyx_v_have_slices = NULL; - PyObject *__pyx_v_obj = NULL; - int __pyx_r; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setitem__", 0); - __Pyx_INCREF(__pyx_v_index); - - /* "View.MemoryView":417 - * - * def __setitem__(memoryview self, object index, object value): - * if self.view.readonly: # <<<<<<<<<<<<<< - * raise TypeError("Cannot assign to read-only memoryview") - * - */ - __pyx_t_1 = (__pyx_v_self->view.readonly != 0); - if (unlikely(__pyx_t_1)) { - - /* "View.MemoryView":418 - * def __setitem__(memoryview self, object index, object value): - * if self.view.readonly: - * raise TypeError("Cannot assign to read-only memoryview") # <<<<<<<<<<<<<< - * - * have_slices, index = _unellipsify(index, self.view.ndim) - */ - __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__11, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 418, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_Raise(__pyx_t_2, 0, 0, 0); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __PYX_ERR(2, 418, __pyx_L1_error) - - /* "View.MemoryView":417 - * - * def __setitem__(memoryview self, object index, object value): - * if self.view.readonly: # <<<<<<<<<<<<<< - * raise TypeError("Cannot assign to read-only memoryview") - * - */ - } - - /* "View.MemoryView":420 - * raise TypeError("Cannot assign to read-only memoryview") - * - * have_slices, index = _unellipsify(index, self.view.ndim) # <<<<<<<<<<<<<< - * - * if have_slices: - */ - __pyx_t_2 = _unellipsify(__pyx_v_index, __pyx_v_self->view.ndim); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 420, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (likely(__pyx_t_2 != Py_None)) { - PyObject* sequence = __pyx_t_2; - Py_ssize_t size = __Pyx_PySequence_SIZE(sequence); - if (unlikely(size != 2)) { - if (size > 2) __Pyx_RaiseTooManyValuesError(2); - else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size); - __PYX_ERR(2, 420, __pyx_L1_error) - } - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); - __Pyx_INCREF(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - #else - __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 420, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 420, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - #endif - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - } else { - __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(2, 420, __pyx_L1_error) - } - __pyx_v_have_slices = __pyx_t_3; - __pyx_t_3 = 0; - __Pyx_DECREF_SET(__pyx_v_index, __pyx_t_4); - __pyx_t_4 = 0; - - /* "View.MemoryView":422 - * have_slices, index = _unellipsify(index, self.view.ndim) - * - * if have_slices: # <<<<<<<<<<<<<< - * obj = self.is_slice(value) - * if obj: - */ - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_have_slices); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(2, 422, __pyx_L1_error) - if (__pyx_t_1) { - - /* "View.MemoryView":423 - * - * if have_slices: - * obj = self.is_slice(value) # <<<<<<<<<<<<<< - * if obj: - * self.setitem_slice_assignment(self[index], obj) - */ - __pyx_t_2 = ((struct __pyx_vtabstruct_memoryview *)__pyx_v_self->__pyx_vtab)->is_slice(__pyx_v_self, __pyx_v_value); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 423, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_v_obj = __pyx_t_2; - __pyx_t_2 = 0; - - /* "View.MemoryView":424 - * if have_slices: - * obj = self.is_slice(value) - * if obj: # <<<<<<<<<<<<<< - * self.setitem_slice_assignment(self[index], obj) - * else: - */ - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_obj); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(2, 424, __pyx_L1_error) - if (__pyx_t_1) { - - /* "View.MemoryView":425 - * obj = self.is_slice(value) - * if obj: - * self.setitem_slice_assignment(self[index], obj) # <<<<<<<<<<<<<< - * else: - * self.setitem_slice_assign_scalar(self[index], value) - */ - __pyx_t_2 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_self), __pyx_v_index); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 425, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = ((struct __pyx_vtabstruct_memoryview *)__pyx_v_self->__pyx_vtab)->setitem_slice_assignment(__pyx_v_self, __pyx_t_2, __pyx_v_obj); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 425, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "View.MemoryView":424 - * if have_slices: - * obj = self.is_slice(value) - * if obj: # <<<<<<<<<<<<<< - * self.setitem_slice_assignment(self[index], obj) - * else: - */ - goto __pyx_L5; - } - - /* "View.MemoryView":427 - * self.setitem_slice_assignment(self[index], obj) - * else: - * self.setitem_slice_assign_scalar(self[index], value) # <<<<<<<<<<<<<< - * else: - * self.setitem_indexed(index, value) - */ - /*else*/ { - __pyx_t_4 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_self), __pyx_v_index); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 427, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - if (!(likely(((__pyx_t_4) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_4, __pyx_memoryview_type))))) __PYX_ERR(2, 427, __pyx_L1_error) - __pyx_t_2 = ((struct __pyx_vtabstruct_memoryview *)__pyx_v_self->__pyx_vtab)->setitem_slice_assign_scalar(__pyx_v_self, ((struct __pyx_memoryview_obj *)__pyx_t_4), __pyx_v_value); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 427, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - } - __pyx_L5:; - - /* "View.MemoryView":422 - * have_slices, index = _unellipsify(index, self.view.ndim) - * - * if have_slices: # <<<<<<<<<<<<<< - * obj = self.is_slice(value) - * if obj: - */ - goto __pyx_L4; - } - - /* "View.MemoryView":429 - * self.setitem_slice_assign_scalar(self[index], value) - * else: - * self.setitem_indexed(index, value) # <<<<<<<<<<<<<< - * - * cdef is_slice(self, obj): - */ - /*else*/ { - __pyx_t_2 = ((struct __pyx_vtabstruct_memoryview *)__pyx_v_self->__pyx_vtab)->setitem_indexed(__pyx_v_self, __pyx_v_index, __pyx_v_value); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 429, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - } - __pyx_L4:; - - /* "View.MemoryView":416 - * return self.convert_item_to_object(itemp) - * - * def __setitem__(memoryview self, object index, object value): # <<<<<<<<<<<<<< - * if self.view.readonly: - * raise TypeError("Cannot assign to read-only memoryview") - */ - - /* function exit code */ - __pyx_r = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("View.MemoryView.memoryview.__setitem__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_have_slices); - __Pyx_XDECREF(__pyx_v_obj); - __Pyx_XDECREF(__pyx_v_index); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":431 - * self.setitem_indexed(index, value) - * - * cdef is_slice(self, obj): # <<<<<<<<<<<<<< - * if not isinstance(obj, memoryview): - * try: - */ - -static PyObject *__pyx_memoryview_is_slice(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_obj) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - int __pyx_t_9; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("is_slice", 0); - __Pyx_INCREF(__pyx_v_obj); - - /* "View.MemoryView":432 - * - * cdef is_slice(self, obj): - * if not isinstance(obj, memoryview): # <<<<<<<<<<<<<< - * try: - * obj = memoryview(obj, self.flags & ~PyBUF_WRITABLE | PyBUF_ANY_CONTIGUOUS, - */ - __pyx_t_1 = __Pyx_TypeCheck(__pyx_v_obj, __pyx_memoryview_type); - __pyx_t_2 = ((!(__pyx_t_1 != 0)) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":433 - * cdef is_slice(self, obj): - * if not isinstance(obj, memoryview): - * try: # <<<<<<<<<<<<<< - * obj = memoryview(obj, self.flags & ~PyBUF_WRITABLE | PyBUF_ANY_CONTIGUOUS, - * self.dtype_is_object) - */ - { - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - __Pyx_ExceptionSave(&__pyx_t_3, &__pyx_t_4, &__pyx_t_5); - __Pyx_XGOTREF(__pyx_t_3); - __Pyx_XGOTREF(__pyx_t_4); - __Pyx_XGOTREF(__pyx_t_5); - /*try:*/ { - - /* "View.MemoryView":434 - * if not isinstance(obj, memoryview): - * try: - * obj = memoryview(obj, self.flags & ~PyBUF_WRITABLE | PyBUF_ANY_CONTIGUOUS, # <<<<<<<<<<<<<< - * self.dtype_is_object) - * except TypeError: - */ - __pyx_t_6 = __Pyx_PyInt_From_int(((__pyx_v_self->flags & (~PyBUF_WRITABLE)) | PyBUF_ANY_CONTIGUOUS)); if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 434, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_6); - - /* "View.MemoryView":435 - * try: - * obj = memoryview(obj, self.flags & ~PyBUF_WRITABLE | PyBUF_ANY_CONTIGUOUS, - * self.dtype_is_object) # <<<<<<<<<<<<<< - * except TypeError: - * return None - */ - __pyx_t_7 = __Pyx_PyBool_FromLong(__pyx_v_self->dtype_is_object); if (unlikely(!__pyx_t_7)) __PYX_ERR(2, 435, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_7); - - /* "View.MemoryView":434 - * if not isinstance(obj, memoryview): - * try: - * obj = memoryview(obj, self.flags & ~PyBUF_WRITABLE | PyBUF_ANY_CONTIGUOUS, # <<<<<<<<<<<<<< - * self.dtype_is_object) - * except TypeError: - */ - __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(2, 434, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_8); - __Pyx_INCREF(__pyx_v_obj); - __Pyx_GIVEREF(__pyx_v_obj); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_obj); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_t_7); - __pyx_t_6 = 0; - __pyx_t_7 = 0; - __pyx_t_7 = __Pyx_PyObject_Call(((PyObject *)__pyx_memoryview_type), __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) __PYX_ERR(2, 434, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF_SET(__pyx_v_obj, __pyx_t_7); - __pyx_t_7 = 0; - - /* "View.MemoryView":433 - * cdef is_slice(self, obj): - * if not isinstance(obj, memoryview): - * try: # <<<<<<<<<<<<<< - * obj = memoryview(obj, self.flags & ~PyBUF_WRITABLE | PyBUF_ANY_CONTIGUOUS, - * self.dtype_is_object) - */ - } - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - goto __pyx_L9_try_end; - __pyx_L4_error:; - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - - /* "View.MemoryView":436 - * obj = memoryview(obj, self.flags & ~PyBUF_WRITABLE | PyBUF_ANY_CONTIGUOUS, - * self.dtype_is_object) - * except TypeError: # <<<<<<<<<<<<<< - * return None - * - */ - __pyx_t_9 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_TypeError); - if (__pyx_t_9) { - __Pyx_AddTraceback("View.MemoryView.memoryview.is_slice", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_7, &__pyx_t_8, &__pyx_t_6) < 0) __PYX_ERR(2, 436, __pyx_L6_except_error) - __Pyx_GOTREF(__pyx_t_7); - __Pyx_GOTREF(__pyx_t_8); - __Pyx_GOTREF(__pyx_t_6); - - /* "View.MemoryView":437 - * self.dtype_is_object) - * except TypeError: - * return None # <<<<<<<<<<<<<< - * - * return obj - */ - __Pyx_XDECREF(__pyx_r); - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - goto __pyx_L7_except_return; - } - goto __pyx_L6_except_error; - __pyx_L6_except_error:; - - /* "View.MemoryView":433 - * cdef is_slice(self, obj): - * if not isinstance(obj, memoryview): - * try: # <<<<<<<<<<<<<< - * obj = memoryview(obj, self.flags & ~PyBUF_WRITABLE | PyBUF_ANY_CONTIGUOUS, - * self.dtype_is_object) - */ - __Pyx_XGIVEREF(__pyx_t_3); - __Pyx_XGIVEREF(__pyx_t_4); - __Pyx_XGIVEREF(__pyx_t_5); - __Pyx_ExceptionReset(__pyx_t_3, __pyx_t_4, __pyx_t_5); - goto __pyx_L1_error; - __pyx_L7_except_return:; - __Pyx_XGIVEREF(__pyx_t_3); - __Pyx_XGIVEREF(__pyx_t_4); - __Pyx_XGIVEREF(__pyx_t_5); - __Pyx_ExceptionReset(__pyx_t_3, __pyx_t_4, __pyx_t_5); - goto __pyx_L0; - __pyx_L9_try_end:; - } - - /* "View.MemoryView":432 - * - * cdef is_slice(self, obj): - * if not isinstance(obj, memoryview): # <<<<<<<<<<<<<< - * try: - * obj = memoryview(obj, self.flags & ~PyBUF_WRITABLE | PyBUF_ANY_CONTIGUOUS, - */ - } - - /* "View.MemoryView":439 - * return None - * - * return obj # <<<<<<<<<<<<<< - * - * cdef setitem_slice_assignment(self, dst, src): - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_obj); - __pyx_r = __pyx_v_obj; - goto __pyx_L0; - - /* "View.MemoryView":431 - * self.setitem_indexed(index, value) - * - * cdef is_slice(self, obj): # <<<<<<<<<<<<<< - * if not isinstance(obj, memoryview): - * try: - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_AddTraceback("View.MemoryView.memoryview.is_slice", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_obj); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":441 - * return obj - * - * cdef setitem_slice_assignment(self, dst, src): # <<<<<<<<<<<<<< - * cdef __Pyx_memviewslice dst_slice - * cdef __Pyx_memviewslice src_slice - */ - -static PyObject *__pyx_memoryview_setitem_slice_assignment(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_dst, PyObject *__pyx_v_src) { - __Pyx_memviewslice __pyx_v_dst_slice; - __Pyx_memviewslice __pyx_v_src_slice; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_memviewslice *__pyx_t_1; - __Pyx_memviewslice *__pyx_t_2; - PyObject *__pyx_t_3 = NULL; - int __pyx_t_4; - int __pyx_t_5; - int __pyx_t_6; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("setitem_slice_assignment", 0); - - /* "View.MemoryView":445 - * cdef __Pyx_memviewslice src_slice - * - * memoryview_copy_contents(get_slice_from_memview(src, &src_slice)[0], # <<<<<<<<<<<<<< - * get_slice_from_memview(dst, &dst_slice)[0], - * src.ndim, dst.ndim, self.dtype_is_object) - */ - if (!(likely(((__pyx_v_src) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_src, __pyx_memoryview_type))))) __PYX_ERR(2, 445, __pyx_L1_error) - __pyx_t_1 = __pyx_memoryview_get_slice_from_memoryview(((struct __pyx_memoryview_obj *)__pyx_v_src), (&__pyx_v_src_slice)); if (unlikely(__pyx_t_1 == ((__Pyx_memviewslice *)NULL))) __PYX_ERR(2, 445, __pyx_L1_error) - - /* "View.MemoryView":446 - * - * memoryview_copy_contents(get_slice_from_memview(src, &src_slice)[0], - * get_slice_from_memview(dst, &dst_slice)[0], # <<<<<<<<<<<<<< - * src.ndim, dst.ndim, self.dtype_is_object) - * - */ - if (!(likely(((__pyx_v_dst) == Py_None) || likely(__Pyx_TypeTest(__pyx_v_dst, __pyx_memoryview_type))))) __PYX_ERR(2, 446, __pyx_L1_error) - __pyx_t_2 = __pyx_memoryview_get_slice_from_memoryview(((struct __pyx_memoryview_obj *)__pyx_v_dst), (&__pyx_v_dst_slice)); if (unlikely(__pyx_t_2 == ((__Pyx_memviewslice *)NULL))) __PYX_ERR(2, 446, __pyx_L1_error) - - /* "View.MemoryView":447 - * memoryview_copy_contents(get_slice_from_memview(src, &src_slice)[0], - * get_slice_from_memview(dst, &dst_slice)[0], - * src.ndim, dst.ndim, self.dtype_is_object) # <<<<<<<<<<<<<< - * - * cdef setitem_slice_assign_scalar(self, memoryview dst, value): - */ - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_src, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 447, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyInt_As_int(__pyx_t_3); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 447, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_dst, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 447, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_3); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(2, 447, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "View.MemoryView":445 - * cdef __Pyx_memviewslice src_slice - * - * memoryview_copy_contents(get_slice_from_memview(src, &src_slice)[0], # <<<<<<<<<<<<<< - * get_slice_from_memview(dst, &dst_slice)[0], - * src.ndim, dst.ndim, self.dtype_is_object) - */ - __pyx_t_6 = __pyx_memoryview_copy_contents((__pyx_t_1[0]), (__pyx_t_2[0]), __pyx_t_4, __pyx_t_5, __pyx_v_self->dtype_is_object); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(2, 445, __pyx_L1_error) - - /* "View.MemoryView":441 - * return obj - * - * cdef setitem_slice_assignment(self, dst, src): # <<<<<<<<<<<<<< - * cdef __Pyx_memviewslice dst_slice - * cdef __Pyx_memviewslice src_slice - */ - - /* function exit code */ - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("View.MemoryView.memoryview.setitem_slice_assignment", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":449 - * src.ndim, dst.ndim, self.dtype_is_object) - * - * cdef setitem_slice_assign_scalar(self, memoryview dst, value): # <<<<<<<<<<<<<< - * cdef int array[128] - * cdef void *tmp = NULL - */ - -static PyObject *__pyx_memoryview_setitem_slice_assign_scalar(struct __pyx_memoryview_obj *__pyx_v_self, struct __pyx_memoryview_obj *__pyx_v_dst, PyObject *__pyx_v_value) { - int __pyx_v_array[0x80]; - void *__pyx_v_tmp; - void *__pyx_v_item; - __Pyx_memviewslice *__pyx_v_dst_slice; - __Pyx_memviewslice __pyx_v_tmp_slice; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_memviewslice *__pyx_t_1; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - int __pyx_t_4; - int __pyx_t_5; - char const *__pyx_t_6; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - PyObject *__pyx_t_9 = NULL; - PyObject *__pyx_t_10 = NULL; - PyObject *__pyx_t_11 = NULL; - PyObject *__pyx_t_12 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("setitem_slice_assign_scalar", 0); - - /* "View.MemoryView":451 - * cdef setitem_slice_assign_scalar(self, memoryview dst, value): - * cdef int array[128] - * cdef void *tmp = NULL # <<<<<<<<<<<<<< - * cdef void *item - * - */ - __pyx_v_tmp = NULL; - - /* "View.MemoryView":456 - * cdef __Pyx_memviewslice *dst_slice - * cdef __Pyx_memviewslice tmp_slice - * dst_slice = get_slice_from_memview(dst, &tmp_slice) # <<<<<<<<<<<<<< - * - * if self.view.itemsize > sizeof(array): - */ - __pyx_t_1 = __pyx_memoryview_get_slice_from_memoryview(__pyx_v_dst, (&__pyx_v_tmp_slice)); if (unlikely(__pyx_t_1 == ((__Pyx_memviewslice *)NULL))) __PYX_ERR(2, 456, __pyx_L1_error) - __pyx_v_dst_slice = __pyx_t_1; - - /* "View.MemoryView":458 - * dst_slice = get_slice_from_memview(dst, &tmp_slice) - * - * if self.view.itemsize > sizeof(array): # <<<<<<<<<<<<<< - * tmp = PyMem_Malloc(self.view.itemsize) - * if tmp == NULL: - */ - __pyx_t_2 = ((((size_t)__pyx_v_self->view.itemsize) > (sizeof(__pyx_v_array))) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":459 - * - * if self.view.itemsize > sizeof(array): - * tmp = PyMem_Malloc(self.view.itemsize) # <<<<<<<<<<<<<< - * if tmp == NULL: - * raise MemoryError - */ - __pyx_v_tmp = PyMem_Malloc(__pyx_v_self->view.itemsize); - - /* "View.MemoryView":460 - * if self.view.itemsize > sizeof(array): - * tmp = PyMem_Malloc(self.view.itemsize) - * if tmp == NULL: # <<<<<<<<<<<<<< - * raise MemoryError - * item = tmp - */ - __pyx_t_2 = ((__pyx_v_tmp == NULL) != 0); - if (unlikely(__pyx_t_2)) { - - /* "View.MemoryView":461 - * tmp = PyMem_Malloc(self.view.itemsize) - * if tmp == NULL: - * raise MemoryError # <<<<<<<<<<<<<< - * item = tmp - * else: - */ - PyErr_NoMemory(); __PYX_ERR(2, 461, __pyx_L1_error) - - /* "View.MemoryView":460 - * if self.view.itemsize > sizeof(array): - * tmp = PyMem_Malloc(self.view.itemsize) - * if tmp == NULL: # <<<<<<<<<<<<<< - * raise MemoryError - * item = tmp - */ - } - - /* "View.MemoryView":462 - * if tmp == NULL: - * raise MemoryError - * item = tmp # <<<<<<<<<<<<<< - * else: - * item = array - */ - __pyx_v_item = __pyx_v_tmp; - - /* "View.MemoryView":458 - * dst_slice = get_slice_from_memview(dst, &tmp_slice) - * - * if self.view.itemsize > sizeof(array): # <<<<<<<<<<<<<< - * tmp = PyMem_Malloc(self.view.itemsize) - * if tmp == NULL: - */ - goto __pyx_L3; - } - - /* "View.MemoryView":464 - * item = tmp - * else: - * item = array # <<<<<<<<<<<<<< - * - * try: - */ - /*else*/ { - __pyx_v_item = ((void *)__pyx_v_array); - } - __pyx_L3:; - - /* "View.MemoryView":466 - * item = array - * - * try: # <<<<<<<<<<<<<< - * if self.dtype_is_object: - * ( item)[0] = value - */ - /*try:*/ { - - /* "View.MemoryView":467 - * - * try: - * if self.dtype_is_object: # <<<<<<<<<<<<<< - * ( item)[0] = value - * else: - */ - __pyx_t_2 = (__pyx_v_self->dtype_is_object != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":468 - * try: - * if self.dtype_is_object: - * ( item)[0] = value # <<<<<<<<<<<<<< - * else: - * self.assign_item_from_object( item, value) - */ - (((PyObject **)__pyx_v_item)[0]) = ((PyObject *)__pyx_v_value); - - /* "View.MemoryView":467 - * - * try: - * if self.dtype_is_object: # <<<<<<<<<<<<<< - * ( item)[0] = value - * else: - */ - goto __pyx_L8; - } - - /* "View.MemoryView":470 - * ( item)[0] = value - * else: - * self.assign_item_from_object( item, value) # <<<<<<<<<<<<<< - * - * - */ - /*else*/ { - __pyx_t_3 = ((struct __pyx_vtabstruct_memoryview *)__pyx_v_self->__pyx_vtab)->assign_item_from_object(__pyx_v_self, ((char *)__pyx_v_item), __pyx_v_value); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 470, __pyx_L6_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - } - __pyx_L8:; - - /* "View.MemoryView":474 - * - * - * if self.view.suboffsets != NULL: # <<<<<<<<<<<<<< - * assert_direct_dimensions(self.view.suboffsets, self.view.ndim) - * slice_assign_scalar(dst_slice, dst.view.ndim, self.view.itemsize, - */ - __pyx_t_2 = ((__pyx_v_self->view.suboffsets != NULL) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":475 - * - * if self.view.suboffsets != NULL: - * assert_direct_dimensions(self.view.suboffsets, self.view.ndim) # <<<<<<<<<<<<<< - * slice_assign_scalar(dst_slice, dst.view.ndim, self.view.itemsize, - * item, self.dtype_is_object) - */ - __pyx_t_3 = assert_direct_dimensions(__pyx_v_self->view.suboffsets, __pyx_v_self->view.ndim); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 475, __pyx_L6_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "View.MemoryView":474 - * - * - * if self.view.suboffsets != NULL: # <<<<<<<<<<<<<< - * assert_direct_dimensions(self.view.suboffsets, self.view.ndim) - * slice_assign_scalar(dst_slice, dst.view.ndim, self.view.itemsize, - */ - } - - /* "View.MemoryView":476 - * if self.view.suboffsets != NULL: - * assert_direct_dimensions(self.view.suboffsets, self.view.ndim) - * slice_assign_scalar(dst_slice, dst.view.ndim, self.view.itemsize, # <<<<<<<<<<<<<< - * item, self.dtype_is_object) - * finally: - */ - __pyx_memoryview_slice_assign_scalar(__pyx_v_dst_slice, __pyx_v_dst->view.ndim, __pyx_v_self->view.itemsize, __pyx_v_item, __pyx_v_self->dtype_is_object); - } - - /* "View.MemoryView":479 - * item, self.dtype_is_object) - * finally: - * PyMem_Free(tmp) # <<<<<<<<<<<<<< - * - * cdef setitem_indexed(self, index, value): - */ - /*finally:*/ { - /*normal exit:*/{ - PyMem_Free(__pyx_v_tmp); - goto __pyx_L7; - } - __pyx_L6_error:; - /*exception exit:*/{ - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12); - if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_7, &__pyx_t_8, &__pyx_t_9) < 0)) __Pyx_ErrFetch(&__pyx_t_7, &__pyx_t_8, &__pyx_t_9); - __Pyx_XGOTREF(__pyx_t_7); - __Pyx_XGOTREF(__pyx_t_8); - __Pyx_XGOTREF(__pyx_t_9); - __Pyx_XGOTREF(__pyx_t_10); - __Pyx_XGOTREF(__pyx_t_11); - __Pyx_XGOTREF(__pyx_t_12); - __pyx_t_4 = __pyx_lineno; __pyx_t_5 = __pyx_clineno; __pyx_t_6 = __pyx_filename; - { - PyMem_Free(__pyx_v_tmp); - } - if (PY_MAJOR_VERSION >= 3) { - __Pyx_XGIVEREF(__pyx_t_10); - __Pyx_XGIVEREF(__pyx_t_11); - __Pyx_XGIVEREF(__pyx_t_12); - __Pyx_ExceptionReset(__pyx_t_10, __pyx_t_11, __pyx_t_12); - } - __Pyx_XGIVEREF(__pyx_t_7); - __Pyx_XGIVEREF(__pyx_t_8); - __Pyx_XGIVEREF(__pyx_t_9); - __Pyx_ErrRestore(__pyx_t_7, __pyx_t_8, __pyx_t_9); - __pyx_t_7 = 0; __pyx_t_8 = 0; __pyx_t_9 = 0; __pyx_t_10 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; - __pyx_lineno = __pyx_t_4; __pyx_clineno = __pyx_t_5; __pyx_filename = __pyx_t_6; - goto __pyx_L1_error; - } - __pyx_L7:; - } - - /* "View.MemoryView":449 - * src.ndim, dst.ndim, self.dtype_is_object) - * - * cdef setitem_slice_assign_scalar(self, memoryview dst, value): # <<<<<<<<<<<<<< - * cdef int array[128] - * cdef void *tmp = NULL - */ - - /* function exit code */ - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("View.MemoryView.memoryview.setitem_slice_assign_scalar", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":481 - * PyMem_Free(tmp) - * - * cdef setitem_indexed(self, index, value): # <<<<<<<<<<<<<< - * cdef char *itemp = self.get_item_pointer(index) - * self.assign_item_from_object(itemp, value) - */ - -static PyObject *__pyx_memoryview_setitem_indexed(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value) { - char *__pyx_v_itemp; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - char *__pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("setitem_indexed", 0); - - /* "View.MemoryView":482 - * - * cdef setitem_indexed(self, index, value): - * cdef char *itemp = self.get_item_pointer(index) # <<<<<<<<<<<<<< - * self.assign_item_from_object(itemp, value) - * - */ - __pyx_t_1 = ((struct __pyx_vtabstruct_memoryview *)__pyx_v_self->__pyx_vtab)->get_item_pointer(__pyx_v_self, __pyx_v_index); if (unlikely(__pyx_t_1 == ((char *)NULL))) __PYX_ERR(2, 482, __pyx_L1_error) - __pyx_v_itemp = __pyx_t_1; - - /* "View.MemoryView":483 - * cdef setitem_indexed(self, index, value): - * cdef char *itemp = self.get_item_pointer(index) - * self.assign_item_from_object(itemp, value) # <<<<<<<<<<<<<< - * - * cdef convert_item_to_object(self, char *itemp): - */ - __pyx_t_2 = ((struct __pyx_vtabstruct_memoryview *)__pyx_v_self->__pyx_vtab)->assign_item_from_object(__pyx_v_self, __pyx_v_itemp, __pyx_v_value); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 483, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "View.MemoryView":481 - * PyMem_Free(tmp) - * - * cdef setitem_indexed(self, index, value): # <<<<<<<<<<<<<< - * cdef char *itemp = self.get_item_pointer(index) - * self.assign_item_from_object(itemp, value) - */ - - /* function exit code */ - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("View.MemoryView.memoryview.setitem_indexed", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":485 - * self.assign_item_from_object(itemp, value) - * - * cdef convert_item_to_object(self, char *itemp): # <<<<<<<<<<<<<< - * """Only used if instantiated manually by the user, or if Cython doesn't - * know how to convert the type""" - */ - -static PyObject *__pyx_memoryview_convert_item_to_object(struct __pyx_memoryview_obj *__pyx_v_self, char *__pyx_v_itemp) { - PyObject *__pyx_v_struct = NULL; - PyObject *__pyx_v_bytesitem = 0; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - int __pyx_t_8; - PyObject *__pyx_t_9 = NULL; - size_t __pyx_t_10; - int __pyx_t_11; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("convert_item_to_object", 0); - - /* "View.MemoryView":488 - * """Only used if instantiated manually by the user, or if Cython doesn't - * know how to convert the type""" - * import struct # <<<<<<<<<<<<<< - * cdef bytes bytesitem - * - */ - __pyx_t_1 = __Pyx_Import(__pyx_n_s_struct, 0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 488, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_struct = __pyx_t_1; - __pyx_t_1 = 0; - - /* "View.MemoryView":491 - * cdef bytes bytesitem - * - * bytesitem = itemp[:self.view.itemsize] # <<<<<<<<<<<<<< - * try: - * result = struct.unpack(self.view.format, bytesitem) - */ - __pyx_t_1 = __Pyx_PyBytes_FromStringAndSize(__pyx_v_itemp + 0, __pyx_v_self->view.itemsize - 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 491, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_bytesitem = ((PyObject*)__pyx_t_1); - __pyx_t_1 = 0; - - /* "View.MemoryView":492 - * - * bytesitem = itemp[:self.view.itemsize] - * try: # <<<<<<<<<<<<<< - * result = struct.unpack(self.view.format, bytesitem) - * except struct.error: - */ - { - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - __Pyx_ExceptionSave(&__pyx_t_2, &__pyx_t_3, &__pyx_t_4); - __Pyx_XGOTREF(__pyx_t_2); - __Pyx_XGOTREF(__pyx_t_3); - __Pyx_XGOTREF(__pyx_t_4); - /*try:*/ { - - /* "View.MemoryView":493 - * bytesitem = itemp[:self.view.itemsize] - * try: - * result = struct.unpack(self.view.format, bytesitem) # <<<<<<<<<<<<<< - * except struct.error: - * raise ValueError("Unable to convert item to object") - */ - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_struct, __pyx_n_s_unpack); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 493, __pyx_L3_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_PyBytes_FromString(__pyx_v_self->view.format); if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 493, __pyx_L3_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = NULL; - __pyx_t_8 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_7)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_5, function); - __pyx_t_8 = 1; - } - } - #if CYTHON_FAST_PYCALL - if (PyFunction_Check(__pyx_t_5)) { - PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_6, __pyx_v_bytesitem}; - __pyx_t_1 = __Pyx_PyFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 493, __pyx_L3_error) - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } else - #endif - #if CYTHON_FAST_PYCCALL - if (__Pyx_PyFastCFunction_Check(__pyx_t_5)) { - PyObject *__pyx_temp[3] = {__pyx_t_7, __pyx_t_6, __pyx_v_bytesitem}; - __pyx_t_1 = __Pyx_PyCFunction_FastCall(__pyx_t_5, __pyx_temp+1-__pyx_t_8, 2+__pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 493, __pyx_L3_error) - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } else - #endif - { - __pyx_t_9 = PyTuple_New(2+__pyx_t_8); if (unlikely(!__pyx_t_9)) __PYX_ERR(2, 493, __pyx_L3_error) - __Pyx_GOTREF(__pyx_t_9); - if (__pyx_t_7) { - __Pyx_GIVEREF(__pyx_t_7); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_7); __pyx_t_7 = NULL; - } - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_9, 0+__pyx_t_8, __pyx_t_6); - __Pyx_INCREF(__pyx_v_bytesitem); - __Pyx_GIVEREF(__pyx_v_bytesitem); - PyTuple_SET_ITEM(__pyx_t_9, 1+__pyx_t_8, __pyx_v_bytesitem); - __pyx_t_6 = 0; - __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_t_9, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 493, __pyx_L3_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - } - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "View.MemoryView":492 - * - * bytesitem = itemp[:self.view.itemsize] - * try: # <<<<<<<<<<<<<< - * result = struct.unpack(self.view.format, bytesitem) - * except struct.error: - */ - } - - /* "View.MemoryView":497 - * raise ValueError("Unable to convert item to object") - * else: - * if len(self.view.format) == 1: # <<<<<<<<<<<<<< - * return result[0] - * return result - */ - /*else:*/ { - __pyx_t_10 = strlen(__pyx_v_self->view.format); - __pyx_t_11 = ((__pyx_t_10 == 1) != 0); - if (__pyx_t_11) { - - /* "View.MemoryView":498 - * else: - * if len(self.view.format) == 1: - * return result[0] # <<<<<<<<<<<<<< - * return result - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_result, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 498, __pyx_L5_except_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L6_except_return; - - /* "View.MemoryView":497 - * raise ValueError("Unable to convert item to object") - * else: - * if len(self.view.format) == 1: # <<<<<<<<<<<<<< - * return result[0] - * return result - */ - } - - /* "View.MemoryView":499 - * if len(self.view.format) == 1: - * return result[0] - * return result # <<<<<<<<<<<<<< - * - * cdef assign_item_from_object(self, char *itemp, object value): - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_result); - __pyx_r = __pyx_v_result; - goto __pyx_L6_except_return; - } - __pyx_L3_error:; - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - - /* "View.MemoryView":494 - * try: - * result = struct.unpack(self.view.format, bytesitem) - * except struct.error: # <<<<<<<<<<<<<< - * raise ValueError("Unable to convert item to object") - * else: - */ - __Pyx_ErrFetch(&__pyx_t_1, &__pyx_t_5, &__pyx_t_9); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_struct, __pyx_n_s_error); if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 494, __pyx_L5_except_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = __Pyx_PyErr_GivenExceptionMatches(__pyx_t_1, __pyx_t_6); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_ErrRestore(__pyx_t_1, __pyx_t_5, __pyx_t_9); - __pyx_t_1 = 0; __pyx_t_5 = 0; __pyx_t_9 = 0; - if (__pyx_t_8) { - __Pyx_AddTraceback("View.MemoryView.memoryview.convert_item_to_object", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_5, &__pyx_t_1) < 0) __PYX_ERR(2, 494, __pyx_L5_except_error) - __Pyx_GOTREF(__pyx_t_9); - __Pyx_GOTREF(__pyx_t_5); - __Pyx_GOTREF(__pyx_t_1); - - /* "View.MemoryView":495 - * result = struct.unpack(self.view.format, bytesitem) - * except struct.error: - * raise ValueError("Unable to convert item to object") # <<<<<<<<<<<<<< - * else: - * if len(self.view.format) == 1: - */ - __pyx_t_6 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__12, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 495, __pyx_L5_except_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_Raise(__pyx_t_6, 0, 0, 0); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __PYX_ERR(2, 495, __pyx_L5_except_error) - } - goto __pyx_L5_except_error; - __pyx_L5_except_error:; - - /* "View.MemoryView":492 - * - * bytesitem = itemp[:self.view.itemsize] - * try: # <<<<<<<<<<<<<< - * result = struct.unpack(self.view.format, bytesitem) - * except struct.error: - */ - __Pyx_XGIVEREF(__pyx_t_2); - __Pyx_XGIVEREF(__pyx_t_3); - __Pyx_XGIVEREF(__pyx_t_4); - __Pyx_ExceptionReset(__pyx_t_2, __pyx_t_3, __pyx_t_4); - goto __pyx_L1_error; - __pyx_L6_except_return:; - __Pyx_XGIVEREF(__pyx_t_2); - __Pyx_XGIVEREF(__pyx_t_3); - __Pyx_XGIVEREF(__pyx_t_4); - __Pyx_ExceptionReset(__pyx_t_2, __pyx_t_3, __pyx_t_4); - goto __pyx_L0; - } - - /* "View.MemoryView":485 - * self.assign_item_from_object(itemp, value) - * - * cdef convert_item_to_object(self, char *itemp): # <<<<<<<<<<<<<< - * """Only used if instantiated manually by the user, or if Cython doesn't - * know how to convert the type""" - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_AddTraceback("View.MemoryView.memoryview.convert_item_to_object", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_struct); - __Pyx_XDECREF(__pyx_v_bytesitem); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":501 - * return result - * - * cdef assign_item_from_object(self, char *itemp, object value): # <<<<<<<<<<<<<< - * """Only used if instantiated manually by the user, or if Cython doesn't - * know how to convert the type""" - */ - -static PyObject *__pyx_memoryview_assign_item_from_object(struct __pyx_memoryview_obj *__pyx_v_self, char *__pyx_v_itemp, PyObject *__pyx_v_value) { - PyObject *__pyx_v_struct = NULL; - char __pyx_v_c; - PyObject *__pyx_v_bytesvalue = 0; - Py_ssize_t __pyx_v_i; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - int __pyx_t_7; - PyObject *__pyx_t_8 = NULL; - Py_ssize_t __pyx_t_9; - PyObject *__pyx_t_10 = NULL; - char *__pyx_t_11; - char *__pyx_t_12; - char *__pyx_t_13; - char *__pyx_t_14; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("assign_item_from_object", 0); - - /* "View.MemoryView":504 - * """Only used if instantiated manually by the user, or if Cython doesn't - * know how to convert the type""" - * import struct # <<<<<<<<<<<<<< - * cdef char c - * cdef bytes bytesvalue - */ - __pyx_t_1 = __Pyx_Import(__pyx_n_s_struct, 0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 504, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_struct = __pyx_t_1; - __pyx_t_1 = 0; - - /* "View.MemoryView":509 - * cdef Py_ssize_t i - * - * if isinstance(value, tuple): # <<<<<<<<<<<<<< - * bytesvalue = struct.pack(self.view.format, *value) - * else: - */ - __pyx_t_2 = PyTuple_Check(__pyx_v_value); - __pyx_t_3 = (__pyx_t_2 != 0); - if (__pyx_t_3) { - - /* "View.MemoryView":510 - * - * if isinstance(value, tuple): - * bytesvalue = struct.pack(self.view.format, *value) # <<<<<<<<<<<<<< - * else: - * bytesvalue = struct.pack(self.view.format, value) - */ - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_struct, __pyx_n_s_pack); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 510, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = __Pyx_PyBytes_FromString(__pyx_v_self->view.format); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 510, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 510, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PySequence_Tuple(__pyx_v_value); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 510, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyNumber_Add(__pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 510, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 510, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (!(likely(PyBytes_CheckExact(__pyx_t_4))||((__pyx_t_4) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "bytes", Py_TYPE(__pyx_t_4)->tp_name), 0))) __PYX_ERR(2, 510, __pyx_L1_error) - __pyx_v_bytesvalue = ((PyObject*)__pyx_t_4); - __pyx_t_4 = 0; - - /* "View.MemoryView":509 - * cdef Py_ssize_t i - * - * if isinstance(value, tuple): # <<<<<<<<<<<<<< - * bytesvalue = struct.pack(self.view.format, *value) - * else: - */ - goto __pyx_L3; - } - - /* "View.MemoryView":512 - * bytesvalue = struct.pack(self.view.format, *value) - * else: - * bytesvalue = struct.pack(self.view.format, value) # <<<<<<<<<<<<<< - * - * for i, c in enumerate(bytesvalue): - */ - /*else*/ { - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_struct, __pyx_n_s_pack); if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 512, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = __Pyx_PyBytes_FromString(__pyx_v_self->view.format); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 512, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = NULL; - __pyx_t_7 = 0; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_6))) { - __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_6); - if (likely(__pyx_t_5)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_6); - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_6, function); - __pyx_t_7 = 1; - } - } - #if CYTHON_FAST_PYCALL - if (PyFunction_Check(__pyx_t_6)) { - PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_t_1, __pyx_v_value}; - __pyx_t_4 = __Pyx_PyFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 512, __pyx_L1_error) - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else - #endif - #if CYTHON_FAST_PYCCALL - if (__Pyx_PyFastCFunction_Check(__pyx_t_6)) { - PyObject *__pyx_temp[3] = {__pyx_t_5, __pyx_t_1, __pyx_v_value}; - __pyx_t_4 = __Pyx_PyCFunction_FastCall(__pyx_t_6, __pyx_temp+1-__pyx_t_7, 2+__pyx_t_7); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 512, __pyx_L1_error) - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else - #endif - { - __pyx_t_8 = PyTuple_New(2+__pyx_t_7); if (unlikely(!__pyx_t_8)) __PYX_ERR(2, 512, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_8); - if (__pyx_t_5) { - __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); __pyx_t_5 = NULL; - } - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_8, 0+__pyx_t_7, __pyx_t_1); - __Pyx_INCREF(__pyx_v_value); - __Pyx_GIVEREF(__pyx_v_value); - PyTuple_SET_ITEM(__pyx_t_8, 1+__pyx_t_7, __pyx_v_value); - __pyx_t_1 = 0; - __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_t_8, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 512, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (!(likely(PyBytes_CheckExact(__pyx_t_4))||((__pyx_t_4) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "bytes", Py_TYPE(__pyx_t_4)->tp_name), 0))) __PYX_ERR(2, 512, __pyx_L1_error) - __pyx_v_bytesvalue = ((PyObject*)__pyx_t_4); - __pyx_t_4 = 0; - } - __pyx_L3:; - - /* "View.MemoryView":514 - * bytesvalue = struct.pack(self.view.format, value) - * - * for i, c in enumerate(bytesvalue): # <<<<<<<<<<<<<< - * itemp[i] = c - * - */ - __pyx_t_9 = 0; - if (unlikely(__pyx_v_bytesvalue == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' is not iterable"); - __PYX_ERR(2, 514, __pyx_L1_error) - } - __Pyx_INCREF(__pyx_v_bytesvalue); - __pyx_t_10 = __pyx_v_bytesvalue; - __pyx_t_12 = PyBytes_AS_STRING(__pyx_t_10); - __pyx_t_13 = (__pyx_t_12 + PyBytes_GET_SIZE(__pyx_t_10)); - for (__pyx_t_14 = __pyx_t_12; __pyx_t_14 < __pyx_t_13; __pyx_t_14++) { - __pyx_t_11 = __pyx_t_14; - __pyx_v_c = (__pyx_t_11[0]); - - /* "View.MemoryView":515 - * - * for i, c in enumerate(bytesvalue): - * itemp[i] = c # <<<<<<<<<<<<<< - * - * @cname('getbuffer') - */ - __pyx_v_i = __pyx_t_9; - - /* "View.MemoryView":514 - * bytesvalue = struct.pack(self.view.format, value) - * - * for i, c in enumerate(bytesvalue): # <<<<<<<<<<<<<< - * itemp[i] = c - * - */ - __pyx_t_9 = (__pyx_t_9 + 1); - - /* "View.MemoryView":515 - * - * for i, c in enumerate(bytesvalue): - * itemp[i] = c # <<<<<<<<<<<<<< - * - * @cname('getbuffer') - */ - (__pyx_v_itemp[__pyx_v_i]) = __pyx_v_c; - } - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - - /* "View.MemoryView":501 - * return result - * - * cdef assign_item_from_object(self, char *itemp, object value): # <<<<<<<<<<<<<< - * """Only used if instantiated manually by the user, or if Cython doesn't - * know how to convert the type""" - */ - - /* function exit code */ - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_XDECREF(__pyx_t_10); - __Pyx_AddTraceback("View.MemoryView.memoryview.assign_item_from_object", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_struct); - __Pyx_XDECREF(__pyx_v_bytesvalue); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":518 - * - * @cname('getbuffer') - * def __getbuffer__(self, Py_buffer *info, int flags): # <<<<<<<<<<<<<< - * if flags & PyBUF_WRITABLE and self.view.readonly: - * raise ValueError("Cannot create writable memory view from read-only memoryview") - */ - -/* Python wrapper */ -static CYTHON_UNUSED int __pyx_memoryview_getbuffer(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags); /*proto*/ -static CYTHON_UNUSED int __pyx_memoryview_getbuffer(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) { - int __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__getbuffer__ (wrapper)", 0); - __pyx_r = __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_8__getbuffer__(((struct __pyx_memoryview_obj *)__pyx_v_self), ((Py_buffer *)__pyx_v_info), ((int)__pyx_v_flags)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_8__getbuffer__(struct __pyx_memoryview_obj *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) { - int __pyx_r; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - Py_ssize_t *__pyx_t_4; - char *__pyx_t_5; - void *__pyx_t_6; - int __pyx_t_7; - Py_ssize_t __pyx_t_8; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - if (__pyx_v_info == NULL) { - PyErr_SetString(PyExc_BufferError, "PyObject_GetBuffer: view==NULL argument is obsolete"); - return -1; - } - __Pyx_RefNannySetupContext("__getbuffer__", 0); - __pyx_v_info->obj = Py_None; __Pyx_INCREF(Py_None); - __Pyx_GIVEREF(__pyx_v_info->obj); - - /* "View.MemoryView":519 - * @cname('getbuffer') - * def __getbuffer__(self, Py_buffer *info, int flags): - * if flags & PyBUF_WRITABLE and self.view.readonly: # <<<<<<<<<<<<<< - * raise ValueError("Cannot create writable memory view from read-only memoryview") - * - */ - __pyx_t_2 = ((__pyx_v_flags & PyBUF_WRITABLE) != 0); - if (__pyx_t_2) { - } else { - __pyx_t_1 = __pyx_t_2; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_2 = (__pyx_v_self->view.readonly != 0); - __pyx_t_1 = __pyx_t_2; - __pyx_L4_bool_binop_done:; - if (unlikely(__pyx_t_1)) { - - /* "View.MemoryView":520 - * def __getbuffer__(self, Py_buffer *info, int flags): - * if flags & PyBUF_WRITABLE and self.view.readonly: - * raise ValueError("Cannot create writable memory view from read-only memoryview") # <<<<<<<<<<<<<< - * - * if flags & PyBUF_ND: - */ - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__13, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 520, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_Raise(__pyx_t_3, 0, 0, 0); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __PYX_ERR(2, 520, __pyx_L1_error) - - /* "View.MemoryView":519 - * @cname('getbuffer') - * def __getbuffer__(self, Py_buffer *info, int flags): - * if flags & PyBUF_WRITABLE and self.view.readonly: # <<<<<<<<<<<<<< - * raise ValueError("Cannot create writable memory view from read-only memoryview") - * - */ - } - - /* "View.MemoryView":522 - * raise ValueError("Cannot create writable memory view from read-only memoryview") - * - * if flags & PyBUF_ND: # <<<<<<<<<<<<<< - * info.shape = self.view.shape - * else: - */ - __pyx_t_1 = ((__pyx_v_flags & PyBUF_ND) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":523 - * - * if flags & PyBUF_ND: - * info.shape = self.view.shape # <<<<<<<<<<<<<< - * else: - * info.shape = NULL - */ - __pyx_t_4 = __pyx_v_self->view.shape; - __pyx_v_info->shape = __pyx_t_4; - - /* "View.MemoryView":522 - * raise ValueError("Cannot create writable memory view from read-only memoryview") - * - * if flags & PyBUF_ND: # <<<<<<<<<<<<<< - * info.shape = self.view.shape - * else: - */ - goto __pyx_L6; - } - - /* "View.MemoryView":525 - * info.shape = self.view.shape - * else: - * info.shape = NULL # <<<<<<<<<<<<<< - * - * if flags & PyBUF_STRIDES: - */ - /*else*/ { - __pyx_v_info->shape = NULL; - } - __pyx_L6:; - - /* "View.MemoryView":527 - * info.shape = NULL - * - * if flags & PyBUF_STRIDES: # <<<<<<<<<<<<<< - * info.strides = self.view.strides - * else: - */ - __pyx_t_1 = ((__pyx_v_flags & PyBUF_STRIDES) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":528 - * - * if flags & PyBUF_STRIDES: - * info.strides = self.view.strides # <<<<<<<<<<<<<< - * else: - * info.strides = NULL - */ - __pyx_t_4 = __pyx_v_self->view.strides; - __pyx_v_info->strides = __pyx_t_4; - - /* "View.MemoryView":527 - * info.shape = NULL - * - * if flags & PyBUF_STRIDES: # <<<<<<<<<<<<<< - * info.strides = self.view.strides - * else: - */ - goto __pyx_L7; - } - - /* "View.MemoryView":530 - * info.strides = self.view.strides - * else: - * info.strides = NULL # <<<<<<<<<<<<<< - * - * if flags & PyBUF_INDIRECT: - */ - /*else*/ { - __pyx_v_info->strides = NULL; - } - __pyx_L7:; - - /* "View.MemoryView":532 - * info.strides = NULL - * - * if flags & PyBUF_INDIRECT: # <<<<<<<<<<<<<< - * info.suboffsets = self.view.suboffsets - * else: - */ - __pyx_t_1 = ((__pyx_v_flags & PyBUF_INDIRECT) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":533 - * - * if flags & PyBUF_INDIRECT: - * info.suboffsets = self.view.suboffsets # <<<<<<<<<<<<<< - * else: - * info.suboffsets = NULL - */ - __pyx_t_4 = __pyx_v_self->view.suboffsets; - __pyx_v_info->suboffsets = __pyx_t_4; - - /* "View.MemoryView":532 - * info.strides = NULL - * - * if flags & PyBUF_INDIRECT: # <<<<<<<<<<<<<< - * info.suboffsets = self.view.suboffsets - * else: - */ - goto __pyx_L8; - } - - /* "View.MemoryView":535 - * info.suboffsets = self.view.suboffsets - * else: - * info.suboffsets = NULL # <<<<<<<<<<<<<< - * - * if flags & PyBUF_FORMAT: - */ - /*else*/ { - __pyx_v_info->suboffsets = NULL; - } - __pyx_L8:; - - /* "View.MemoryView":537 - * info.suboffsets = NULL - * - * if flags & PyBUF_FORMAT: # <<<<<<<<<<<<<< - * info.format = self.view.format - * else: - */ - __pyx_t_1 = ((__pyx_v_flags & PyBUF_FORMAT) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":538 - * - * if flags & PyBUF_FORMAT: - * info.format = self.view.format # <<<<<<<<<<<<<< - * else: - * info.format = NULL - */ - __pyx_t_5 = __pyx_v_self->view.format; - __pyx_v_info->format = __pyx_t_5; - - /* "View.MemoryView":537 - * info.suboffsets = NULL - * - * if flags & PyBUF_FORMAT: # <<<<<<<<<<<<<< - * info.format = self.view.format - * else: - */ - goto __pyx_L9; - } - - /* "View.MemoryView":540 - * info.format = self.view.format - * else: - * info.format = NULL # <<<<<<<<<<<<<< - * - * info.buf = self.view.buf - */ - /*else*/ { - __pyx_v_info->format = NULL; - } - __pyx_L9:; - - /* "View.MemoryView":542 - * info.format = NULL - * - * info.buf = self.view.buf # <<<<<<<<<<<<<< - * info.ndim = self.view.ndim - * info.itemsize = self.view.itemsize - */ - __pyx_t_6 = __pyx_v_self->view.buf; - __pyx_v_info->buf = __pyx_t_6; - - /* "View.MemoryView":543 - * - * info.buf = self.view.buf - * info.ndim = self.view.ndim # <<<<<<<<<<<<<< - * info.itemsize = self.view.itemsize - * info.len = self.view.len - */ - __pyx_t_7 = __pyx_v_self->view.ndim; - __pyx_v_info->ndim = __pyx_t_7; - - /* "View.MemoryView":544 - * info.buf = self.view.buf - * info.ndim = self.view.ndim - * info.itemsize = self.view.itemsize # <<<<<<<<<<<<<< - * info.len = self.view.len - * info.readonly = self.view.readonly - */ - __pyx_t_8 = __pyx_v_self->view.itemsize; - __pyx_v_info->itemsize = __pyx_t_8; - - /* "View.MemoryView":545 - * info.ndim = self.view.ndim - * info.itemsize = self.view.itemsize - * info.len = self.view.len # <<<<<<<<<<<<<< - * info.readonly = self.view.readonly - * info.obj = self - */ - __pyx_t_8 = __pyx_v_self->view.len; - __pyx_v_info->len = __pyx_t_8; - - /* "View.MemoryView":546 - * info.itemsize = self.view.itemsize - * info.len = self.view.len - * info.readonly = self.view.readonly # <<<<<<<<<<<<<< - * info.obj = self - * - */ - __pyx_t_1 = __pyx_v_self->view.readonly; - __pyx_v_info->readonly = __pyx_t_1; - - /* "View.MemoryView":547 - * info.len = self.view.len - * info.readonly = self.view.readonly - * info.obj = self # <<<<<<<<<<<<<< - * - * __pyx_getbuffer = capsule( &__pyx_memoryview_getbuffer, "getbuffer(obj, view, flags)") - */ - __Pyx_INCREF(((PyObject *)__pyx_v_self)); - __Pyx_GIVEREF(((PyObject *)__pyx_v_self)); - __Pyx_GOTREF(__pyx_v_info->obj); - __Pyx_DECREF(__pyx_v_info->obj); - __pyx_v_info->obj = ((PyObject *)__pyx_v_self); - - /* "View.MemoryView":518 - * - * @cname('getbuffer') - * def __getbuffer__(self, Py_buffer *info, int flags): # <<<<<<<<<<<<<< - * if flags & PyBUF_WRITABLE and self.view.readonly: - * raise ValueError("Cannot create writable memory view from read-only memoryview") - */ - - /* function exit code */ - __pyx_r = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("View.MemoryView.memoryview.__getbuffer__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; - if (__pyx_v_info->obj != NULL) { - __Pyx_GOTREF(__pyx_v_info->obj); - __Pyx_DECREF(__pyx_v_info->obj); __pyx_v_info->obj = 0; - } - goto __pyx_L2; - __pyx_L0:; - if (__pyx_v_info->obj == Py_None) { - __Pyx_GOTREF(__pyx_v_info->obj); - __Pyx_DECREF(__pyx_v_info->obj); __pyx_v_info->obj = 0; - } - __pyx_L2:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":553 - * - * @property - * def T(self): # <<<<<<<<<<<<<< - * cdef _memoryviewslice result = memoryview_copy(self) - * transpose_memslice(&result.from_slice) - */ - -/* Python wrapper */ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_1T_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_1T_1__get__(PyObject *__pyx_v_self) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_r = __pyx_pf_15View_dot_MemoryView_10memoryview_1T___get__(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_1T___get__(struct __pyx_memoryview_obj *__pyx_v_self) { - struct __pyx_memoryviewslice_obj *__pyx_v_result = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - - /* "View.MemoryView":554 - * @property - * def T(self): - * cdef _memoryviewslice result = memoryview_copy(self) # <<<<<<<<<<<<<< - * transpose_memslice(&result.from_slice) - * return result - */ - __pyx_t_1 = __pyx_memoryview_copy_object(__pyx_v_self); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 554, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_memoryviewslice_type))))) __PYX_ERR(2, 554, __pyx_L1_error) - __pyx_v_result = ((struct __pyx_memoryviewslice_obj *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "View.MemoryView":555 - * def T(self): - * cdef _memoryviewslice result = memoryview_copy(self) - * transpose_memslice(&result.from_slice) # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_2 = __pyx_memslice_transpose((&__pyx_v_result->from_slice)); if (unlikely(__pyx_t_2 == ((int)0))) __PYX_ERR(2, 555, __pyx_L1_error) - - /* "View.MemoryView":556 - * cdef _memoryviewslice result = memoryview_copy(self) - * transpose_memslice(&result.from_slice) - * return result # <<<<<<<<<<<<<< - * - * @property - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - /* "View.MemoryView":553 - * - * @property - * def T(self): # <<<<<<<<<<<<<< - * cdef _memoryviewslice result = memoryview_copy(self) - * transpose_memslice(&result.from_slice) - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("View.MemoryView.memoryview.T.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF((PyObject *)__pyx_v_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":559 - * - * @property - * def base(self): # <<<<<<<<<<<<<< - * return self.obj - * - */ - -/* Python wrapper */ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4base_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4base_1__get__(PyObject *__pyx_v_self) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_r = __pyx_pf_15View_dot_MemoryView_10memoryview_4base___get__(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4base___get__(struct __pyx_memoryview_obj *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 0); - - /* "View.MemoryView":560 - * @property - * def base(self): - * return self.obj # <<<<<<<<<<<<<< - * - * @property - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_self->obj); - __pyx_r = __pyx_v_self->obj; - goto __pyx_L0; - - /* "View.MemoryView":559 - * - * @property - * def base(self): # <<<<<<<<<<<<<< - * return self.obj - * - */ - - /* function exit code */ - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":563 - * - * @property - * def shape(self): # <<<<<<<<<<<<<< - * return tuple([length for length in self.view.shape[:self.view.ndim]]) - * - */ - -/* Python wrapper */ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_5shape_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_5shape_1__get__(PyObject *__pyx_v_self) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_r = __pyx_pf_15View_dot_MemoryView_10memoryview_5shape___get__(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_5shape___get__(struct __pyx_memoryview_obj *__pyx_v_self) { - Py_ssize_t __pyx_v_length; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - Py_ssize_t *__pyx_t_2; - Py_ssize_t *__pyx_t_3; - Py_ssize_t *__pyx_t_4; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - - /* "View.MemoryView":564 - * @property - * def shape(self): - * return tuple([length for length in self.view.shape[:self.view.ndim]]) # <<<<<<<<<<<<<< - * - * @property - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 564, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = (__pyx_v_self->view.shape + __pyx_v_self->view.ndim); - for (__pyx_t_4 = __pyx_v_self->view.shape; __pyx_t_4 < __pyx_t_3; __pyx_t_4++) { - __pyx_t_2 = __pyx_t_4; - __pyx_v_length = (__pyx_t_2[0]); - __pyx_t_5 = PyInt_FromSsize_t(__pyx_v_length); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 564, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_5))) __PYX_ERR(2, 564, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - } - __pyx_t_5 = PyList_AsTuple(((PyObject*)__pyx_t_1)); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 564, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_5; - __pyx_t_5 = 0; - goto __pyx_L0; - - /* "View.MemoryView":563 - * - * @property - * def shape(self): # <<<<<<<<<<<<<< - * return tuple([length for length in self.view.shape[:self.view.ndim]]) - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("View.MemoryView.memoryview.shape.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":567 - * - * @property - * def strides(self): # <<<<<<<<<<<<<< - * if self.view.strides == NULL: - * - */ - -/* Python wrapper */ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_7strides_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_7strides_1__get__(PyObject *__pyx_v_self) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_r = __pyx_pf_15View_dot_MemoryView_10memoryview_7strides___get__(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_7strides___get__(struct __pyx_memoryview_obj *__pyx_v_self) { - Py_ssize_t __pyx_v_stride; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t *__pyx_t_3; - Py_ssize_t *__pyx_t_4; - Py_ssize_t *__pyx_t_5; - PyObject *__pyx_t_6 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - - /* "View.MemoryView":568 - * @property - * def strides(self): - * if self.view.strides == NULL: # <<<<<<<<<<<<<< - * - * raise ValueError("Buffer view does not expose strides") - */ - __pyx_t_1 = ((__pyx_v_self->view.strides == NULL) != 0); - if (unlikely(__pyx_t_1)) { - - /* "View.MemoryView":570 - * if self.view.strides == NULL: - * - * raise ValueError("Buffer view does not expose strides") # <<<<<<<<<<<<<< - * - * return tuple([stride for stride in self.view.strides[:self.view.ndim]]) - */ - __pyx_t_2 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__14, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 570, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_Raise(__pyx_t_2, 0, 0, 0); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __PYX_ERR(2, 570, __pyx_L1_error) - - /* "View.MemoryView":568 - * @property - * def strides(self): - * if self.view.strides == NULL: # <<<<<<<<<<<<<< - * - * raise ValueError("Buffer view does not expose strides") - */ - } - - /* "View.MemoryView":572 - * raise ValueError("Buffer view does not expose strides") - * - * return tuple([stride for stride in self.view.strides[:self.view.ndim]]) # <<<<<<<<<<<<<< - * - * @property - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 572, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = (__pyx_v_self->view.strides + __pyx_v_self->view.ndim); - for (__pyx_t_5 = __pyx_v_self->view.strides; __pyx_t_5 < __pyx_t_4; __pyx_t_5++) { - __pyx_t_3 = __pyx_t_5; - __pyx_v_stride = (__pyx_t_3[0]); - __pyx_t_6 = PyInt_FromSsize_t(__pyx_v_stride); if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 572, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_t_6))) __PYX_ERR(2, 572, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } - __pyx_t_6 = PyList_AsTuple(((PyObject*)__pyx_t_2)); if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 572, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_6; - __pyx_t_6 = 0; - goto __pyx_L0; - - /* "View.MemoryView":567 - * - * @property - * def strides(self): # <<<<<<<<<<<<<< - * if self.view.strides == NULL: - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("View.MemoryView.memoryview.strides.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":575 - * - * @property - * def suboffsets(self): # <<<<<<<<<<<<<< - * if self.view.suboffsets == NULL: - * return (-1,) * self.view.ndim - */ - -/* Python wrapper */ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_10suboffsets_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_10suboffsets_1__get__(PyObject *__pyx_v_self) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_r = __pyx_pf_15View_dot_MemoryView_10memoryview_10suboffsets___get__(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_10suboffsets___get__(struct __pyx_memoryview_obj *__pyx_v_self) { - Py_ssize_t __pyx_v_suboffset; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - Py_ssize_t *__pyx_t_4; - Py_ssize_t *__pyx_t_5; - Py_ssize_t *__pyx_t_6; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - - /* "View.MemoryView":576 - * @property - * def suboffsets(self): - * if self.view.suboffsets == NULL: # <<<<<<<<<<<<<< - * return (-1,) * self.view.ndim - * - */ - __pyx_t_1 = ((__pyx_v_self->view.suboffsets == NULL) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":577 - * def suboffsets(self): - * if self.view.suboffsets == NULL: - * return (-1,) * self.view.ndim # <<<<<<<<<<<<<< - * - * return tuple([suboffset for suboffset in self.view.suboffsets[:self.view.ndim]]) - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __Pyx_PyInt_From_int(__pyx_v_self->view.ndim); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 577, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyNumber_Multiply(__pyx_tuple__15, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 577, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - goto __pyx_L0; - - /* "View.MemoryView":576 - * @property - * def suboffsets(self): - * if self.view.suboffsets == NULL: # <<<<<<<<<<<<<< - * return (-1,) * self.view.ndim - * - */ - } - - /* "View.MemoryView":579 - * return (-1,) * self.view.ndim - * - * return tuple([suboffset for suboffset in self.view.suboffsets[:self.view.ndim]]) # <<<<<<<<<<<<<< - * - * @property - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 579, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = (__pyx_v_self->view.suboffsets + __pyx_v_self->view.ndim); - for (__pyx_t_6 = __pyx_v_self->view.suboffsets; __pyx_t_6 < __pyx_t_5; __pyx_t_6++) { - __pyx_t_4 = __pyx_t_6; - __pyx_v_suboffset = (__pyx_t_4[0]); - __pyx_t_2 = PyInt_FromSsize_t(__pyx_v_suboffset); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 579, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_t_2))) __PYX_ERR(2, 579, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - } - __pyx_t_2 = PyList_AsTuple(((PyObject*)__pyx_t_3)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 579, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - /* "View.MemoryView":575 - * - * @property - * def suboffsets(self): # <<<<<<<<<<<<<< - * if self.view.suboffsets == NULL: - * return (-1,) * self.view.ndim - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("View.MemoryView.memoryview.suboffsets.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":582 - * - * @property - * def ndim(self): # <<<<<<<<<<<<<< - * return self.view.ndim - * - */ - -/* Python wrapper */ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4ndim_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4ndim_1__get__(PyObject *__pyx_v_self) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_r = __pyx_pf_15View_dot_MemoryView_10memoryview_4ndim___get__(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4ndim___get__(struct __pyx_memoryview_obj *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - - /* "View.MemoryView":583 - * @property - * def ndim(self): - * return self.view.ndim # <<<<<<<<<<<<<< - * - * @property - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_self->view.ndim); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 583, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - /* "View.MemoryView":582 - * - * @property - * def ndim(self): # <<<<<<<<<<<<<< - * return self.view.ndim - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("View.MemoryView.memoryview.ndim.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":586 - * - * @property - * def itemsize(self): # <<<<<<<<<<<<<< - * return self.view.itemsize - * - */ - -/* Python wrapper */ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_8itemsize_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_8itemsize_1__get__(PyObject *__pyx_v_self) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_r = __pyx_pf_15View_dot_MemoryView_10memoryview_8itemsize___get__(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_8itemsize___get__(struct __pyx_memoryview_obj *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - - /* "View.MemoryView":587 - * @property - * def itemsize(self): - * return self.view.itemsize # <<<<<<<<<<<<<< - * - * @property - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyInt_FromSsize_t(__pyx_v_self->view.itemsize); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 587, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - /* "View.MemoryView":586 - * - * @property - * def itemsize(self): # <<<<<<<<<<<<<< - * return self.view.itemsize - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("View.MemoryView.memoryview.itemsize.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":590 - * - * @property - * def nbytes(self): # <<<<<<<<<<<<<< - * return self.size * self.view.itemsize - * - */ - -/* Python wrapper */ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_6nbytes_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_6nbytes_1__get__(PyObject *__pyx_v_self) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_r = __pyx_pf_15View_dot_MemoryView_10memoryview_6nbytes___get__(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_6nbytes___get__(struct __pyx_memoryview_obj *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - - /* "View.MemoryView":591 - * @property - * def nbytes(self): - * return self.size * self.view.itemsize # <<<<<<<<<<<<<< - * - * @property - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_size); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 591, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyInt_FromSsize_t(__pyx_v_self->view.itemsize); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 591, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyNumber_Multiply(__pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 591, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - goto __pyx_L0; - - /* "View.MemoryView":590 - * - * @property - * def nbytes(self): # <<<<<<<<<<<<<< - * return self.size * self.view.itemsize - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("View.MemoryView.memoryview.nbytes.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":594 - * - * @property - * def size(self): # <<<<<<<<<<<<<< - * if self._size is None: - * result = 1 - */ - -/* Python wrapper */ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4size_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4size_1__get__(PyObject *__pyx_v_self) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_r = __pyx_pf_15View_dot_MemoryView_10memoryview_4size___get__(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4size___get__(struct __pyx_memoryview_obj *__pyx_v_self) { - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_length = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - int __pyx_t_2; - Py_ssize_t *__pyx_t_3; - Py_ssize_t *__pyx_t_4; - Py_ssize_t *__pyx_t_5; - PyObject *__pyx_t_6 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__get__", 0); - - /* "View.MemoryView":595 - * @property - * def size(self): - * if self._size is None: # <<<<<<<<<<<<<< - * result = 1 - * - */ - __pyx_t_1 = (__pyx_v_self->_size == Py_None); - __pyx_t_2 = (__pyx_t_1 != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":596 - * def size(self): - * if self._size is None: - * result = 1 # <<<<<<<<<<<<<< - * - * for length in self.view.shape[:self.view.ndim]: - */ - __Pyx_INCREF(__pyx_int_1); - __pyx_v_result = __pyx_int_1; - - /* "View.MemoryView":598 - * result = 1 - * - * for length in self.view.shape[:self.view.ndim]: # <<<<<<<<<<<<<< - * result *= length - * - */ - __pyx_t_4 = (__pyx_v_self->view.shape + __pyx_v_self->view.ndim); - for (__pyx_t_5 = __pyx_v_self->view.shape; __pyx_t_5 < __pyx_t_4; __pyx_t_5++) { - __pyx_t_3 = __pyx_t_5; - __pyx_t_6 = PyInt_FromSsize_t((__pyx_t_3[0])); if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 598, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_XDECREF_SET(__pyx_v_length, __pyx_t_6); - __pyx_t_6 = 0; - - /* "View.MemoryView":599 - * - * for length in self.view.shape[:self.view.ndim]: - * result *= length # <<<<<<<<<<<<<< - * - * self._size = result - */ - __pyx_t_6 = PyNumber_InPlaceMultiply(__pyx_v_result, __pyx_v_length); if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 599, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_6); - __pyx_t_6 = 0; - } - - /* "View.MemoryView":601 - * result *= length - * - * self._size = result # <<<<<<<<<<<<<< - * - * return self._size - */ - __Pyx_INCREF(__pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __Pyx_GOTREF(__pyx_v_self->_size); - __Pyx_DECREF(__pyx_v_self->_size); - __pyx_v_self->_size = __pyx_v_result; - - /* "View.MemoryView":595 - * @property - * def size(self): - * if self._size is None: # <<<<<<<<<<<<<< - * result = 1 - * - */ - } - - /* "View.MemoryView":603 - * self._size = result - * - * return self._size # <<<<<<<<<<<<<< - * - * def __len__(self): - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_self->_size); - __pyx_r = __pyx_v_self->_size; - goto __pyx_L0; - - /* "View.MemoryView":594 - * - * @property - * def size(self): # <<<<<<<<<<<<<< - * if self._size is None: - * result = 1 - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("View.MemoryView.memoryview.size.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_length); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":605 - * return self._size - * - * def __len__(self): # <<<<<<<<<<<<<< - * if self.view.ndim >= 1: - * return self.view.shape[0] - */ - -/* Python wrapper */ -static Py_ssize_t __pyx_memoryview___len__(PyObject *__pyx_v_self); /*proto*/ -static Py_ssize_t __pyx_memoryview___len__(PyObject *__pyx_v_self) { - Py_ssize_t __pyx_r; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__len__ (wrapper)", 0); - __pyx_r = __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_10__len__(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static Py_ssize_t __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_10__len__(struct __pyx_memoryview_obj *__pyx_v_self) { - Py_ssize_t __pyx_r; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - __Pyx_RefNannySetupContext("__len__", 0); - - /* "View.MemoryView":606 - * - * def __len__(self): - * if self.view.ndim >= 1: # <<<<<<<<<<<<<< - * return self.view.shape[0] - * - */ - __pyx_t_1 = ((__pyx_v_self->view.ndim >= 1) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":607 - * def __len__(self): - * if self.view.ndim >= 1: - * return self.view.shape[0] # <<<<<<<<<<<<<< - * - * return 0 - */ - __pyx_r = (__pyx_v_self->view.shape[0]); - goto __pyx_L0; - - /* "View.MemoryView":606 - * - * def __len__(self): - * if self.view.ndim >= 1: # <<<<<<<<<<<<<< - * return self.view.shape[0] - * - */ - } - - /* "View.MemoryView":609 - * return self.view.shape[0] - * - * return 0 # <<<<<<<<<<<<<< - * - * def __repr__(self): - */ - __pyx_r = 0; - goto __pyx_L0; - - /* "View.MemoryView":605 - * return self._size - * - * def __len__(self): # <<<<<<<<<<<<<< - * if self.view.ndim >= 1: - * return self.view.shape[0] - */ - - /* function exit code */ - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":611 - * return 0 - * - * def __repr__(self): # <<<<<<<<<<<<<< - * return "" % (self.base.__class__.__name__, - * id(self)) - */ - -/* Python wrapper */ -static PyObject *__pyx_memoryview___repr__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_memoryview___repr__(PyObject *__pyx_v_self) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__repr__ (wrapper)", 0); - __pyx_r = __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_12__repr__(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_12__repr__(struct __pyx_memoryview_obj *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__", 0); - - /* "View.MemoryView":612 - * - * def __repr__(self): - * return "" % (self.base.__class__.__name__, # <<<<<<<<<<<<<< - * id(self)) - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_base); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 612, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_class); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 612, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_name_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 612, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "View.MemoryView":613 - * def __repr__(self): - * return "" % (self.base.__class__.__name__, - * id(self)) # <<<<<<<<<<<<<< - * - * def __str__(self): - */ - __pyx_t_2 = __Pyx_PyObject_CallOneArg(__pyx_builtin_id, ((PyObject *)__pyx_v_self)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 613, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - - /* "View.MemoryView":612 - * - * def __repr__(self): - * return "" % (self.base.__class__.__name__, # <<<<<<<<<<<<<< - * id(self)) - * - */ - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 612, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_MemoryView_of_r_at_0x_x, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 612, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - /* "View.MemoryView":611 - * return 0 - * - * def __repr__(self): # <<<<<<<<<<<<<< - * return "" % (self.base.__class__.__name__, - * id(self)) - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("View.MemoryView.memoryview.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":615 - * id(self)) - * - * def __str__(self): # <<<<<<<<<<<<<< - * return "" % (self.base.__class__.__name__,) - * - */ - -/* Python wrapper */ -static PyObject *__pyx_memoryview___str__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_memoryview___str__(PyObject *__pyx_v_self) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__str__ (wrapper)", 0); - __pyx_r = __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_14__str__(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_14__str__(struct __pyx_memoryview_obj *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__str__", 0); - - /* "View.MemoryView":616 - * - * def __str__(self): - * return "" % (self.base.__class__.__name__,) # <<<<<<<<<<<<<< - * - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_self), __pyx_n_s_base); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 616, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_class); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 616, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_name_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 616, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 616, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_MemoryView_of_r_object, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 616, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - /* "View.MemoryView":615 - * id(self)) - * - * def __str__(self): # <<<<<<<<<<<<<< - * return "" % (self.base.__class__.__name__,) - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("View.MemoryView.memoryview.__str__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":619 - * - * - * def is_c_contig(self): # <<<<<<<<<<<<<< - * cdef __Pyx_memviewslice *mslice - * cdef __Pyx_memviewslice tmp - */ - -/* Python wrapper */ -static PyObject *__pyx_memoryview_is_c_contig(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_memoryview_is_c_contig(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("is_c_contig (wrapper)", 0); - __pyx_r = __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_16is_c_contig(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_16is_c_contig(struct __pyx_memoryview_obj *__pyx_v_self) { - __Pyx_memviewslice *__pyx_v_mslice; - __Pyx_memviewslice __pyx_v_tmp; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_memviewslice *__pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("is_c_contig", 0); - - /* "View.MemoryView":622 - * cdef __Pyx_memviewslice *mslice - * cdef __Pyx_memviewslice tmp - * mslice = get_slice_from_memview(self, &tmp) # <<<<<<<<<<<<<< - * return slice_is_contig(mslice[0], 'C', self.view.ndim) - * - */ - __pyx_t_1 = __pyx_memoryview_get_slice_from_memoryview(__pyx_v_self, (&__pyx_v_tmp)); if (unlikely(__pyx_t_1 == ((__Pyx_memviewslice *)NULL))) __PYX_ERR(2, 622, __pyx_L1_error) - __pyx_v_mslice = __pyx_t_1; - - /* "View.MemoryView":623 - * cdef __Pyx_memviewslice tmp - * mslice = get_slice_from_memview(self, &tmp) - * return slice_is_contig(mslice[0], 'C', self.view.ndim) # <<<<<<<<<<<<<< - * - * def is_f_contig(self): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_memviewslice_is_contig((__pyx_v_mslice[0]), 'C', __pyx_v_self->view.ndim)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 623, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - /* "View.MemoryView":619 - * - * - * def is_c_contig(self): # <<<<<<<<<<<<<< - * cdef __Pyx_memviewslice *mslice - * cdef __Pyx_memviewslice tmp - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("View.MemoryView.memoryview.is_c_contig", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":625 - * return slice_is_contig(mslice[0], 'C', self.view.ndim) - * - * def is_f_contig(self): # <<<<<<<<<<<<<< - * cdef __Pyx_memviewslice *mslice - * cdef __Pyx_memviewslice tmp - */ - -/* Python wrapper */ -static PyObject *__pyx_memoryview_is_f_contig(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_memoryview_is_f_contig(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("is_f_contig (wrapper)", 0); - __pyx_r = __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_18is_f_contig(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_18is_f_contig(struct __pyx_memoryview_obj *__pyx_v_self) { - __Pyx_memviewslice *__pyx_v_mslice; - __Pyx_memviewslice __pyx_v_tmp; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_memviewslice *__pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("is_f_contig", 0); - - /* "View.MemoryView":628 - * cdef __Pyx_memviewslice *mslice - * cdef __Pyx_memviewslice tmp - * mslice = get_slice_from_memview(self, &tmp) # <<<<<<<<<<<<<< - * return slice_is_contig(mslice[0], 'F', self.view.ndim) - * - */ - __pyx_t_1 = __pyx_memoryview_get_slice_from_memoryview(__pyx_v_self, (&__pyx_v_tmp)); if (unlikely(__pyx_t_1 == ((__Pyx_memviewslice *)NULL))) __PYX_ERR(2, 628, __pyx_L1_error) - __pyx_v_mslice = __pyx_t_1; - - /* "View.MemoryView":629 - * cdef __Pyx_memviewslice tmp - * mslice = get_slice_from_memview(self, &tmp) - * return slice_is_contig(mslice[0], 'F', self.view.ndim) # <<<<<<<<<<<<<< - * - * def copy(self): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_memviewslice_is_contig((__pyx_v_mslice[0]), 'F', __pyx_v_self->view.ndim)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 629, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - /* "View.MemoryView":625 - * return slice_is_contig(mslice[0], 'C', self.view.ndim) - * - * def is_f_contig(self): # <<<<<<<<<<<<<< - * cdef __Pyx_memviewslice *mslice - * cdef __Pyx_memviewslice tmp - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("View.MemoryView.memoryview.is_f_contig", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":631 - * return slice_is_contig(mslice[0], 'F', self.view.ndim) - * - * def copy(self): # <<<<<<<<<<<<<< - * cdef __Pyx_memviewslice mslice - * cdef int flags = self.flags & ~PyBUF_F_CONTIGUOUS - */ - -/* Python wrapper */ -static PyObject *__pyx_memoryview_copy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_memoryview_copy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("copy (wrapper)", 0); - __pyx_r = __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_20copy(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_20copy(struct __pyx_memoryview_obj *__pyx_v_self) { - __Pyx_memviewslice __pyx_v_mslice; - int __pyx_v_flags; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_memviewslice __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("copy", 0); - - /* "View.MemoryView":633 - * def copy(self): - * cdef __Pyx_memviewslice mslice - * cdef int flags = self.flags & ~PyBUF_F_CONTIGUOUS # <<<<<<<<<<<<<< - * - * slice_copy(self, &mslice) - */ - __pyx_v_flags = (__pyx_v_self->flags & (~PyBUF_F_CONTIGUOUS)); - - /* "View.MemoryView":635 - * cdef int flags = self.flags & ~PyBUF_F_CONTIGUOUS - * - * slice_copy(self, &mslice) # <<<<<<<<<<<<<< - * mslice = slice_copy_contig(&mslice, "c", self.view.ndim, - * self.view.itemsize, - */ - __pyx_memoryview_slice_copy(__pyx_v_self, (&__pyx_v_mslice)); - - /* "View.MemoryView":636 - * - * slice_copy(self, &mslice) - * mslice = slice_copy_contig(&mslice, "c", self.view.ndim, # <<<<<<<<<<<<<< - * self.view.itemsize, - * flags|PyBUF_C_CONTIGUOUS, - */ - __pyx_t_1 = __pyx_memoryview_copy_new_contig((&__pyx_v_mslice), ((char *)"c"), __pyx_v_self->view.ndim, __pyx_v_self->view.itemsize, (__pyx_v_flags | PyBUF_C_CONTIGUOUS), __pyx_v_self->dtype_is_object); if (unlikely(PyErr_Occurred())) __PYX_ERR(2, 636, __pyx_L1_error) - __pyx_v_mslice = __pyx_t_1; - - /* "View.MemoryView":641 - * self.dtype_is_object) - * - * return memoryview_copy_from_slice(self, &mslice) # <<<<<<<<<<<<<< - * - * def copy_fortran(self): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_memoryview_copy_object_from_slice(__pyx_v_self, (&__pyx_v_mslice)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 641, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - /* "View.MemoryView":631 - * return slice_is_contig(mslice[0], 'F', self.view.ndim) - * - * def copy(self): # <<<<<<<<<<<<<< - * cdef __Pyx_memviewslice mslice - * cdef int flags = self.flags & ~PyBUF_F_CONTIGUOUS - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("View.MemoryView.memoryview.copy", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":643 - * return memoryview_copy_from_slice(self, &mslice) - * - * def copy_fortran(self): # <<<<<<<<<<<<<< - * cdef __Pyx_memviewslice src, dst - * cdef int flags = self.flags & ~PyBUF_C_CONTIGUOUS - */ - -/* Python wrapper */ -static PyObject *__pyx_memoryview_copy_fortran(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_memoryview_copy_fortran(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("copy_fortran (wrapper)", 0); - __pyx_r = __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_22copy_fortran(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_22copy_fortran(struct __pyx_memoryview_obj *__pyx_v_self) { - __Pyx_memviewslice __pyx_v_src; - __Pyx_memviewslice __pyx_v_dst; - int __pyx_v_flags; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_memviewslice __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("copy_fortran", 0); - - /* "View.MemoryView":645 - * def copy_fortran(self): - * cdef __Pyx_memviewslice src, dst - * cdef int flags = self.flags & ~PyBUF_C_CONTIGUOUS # <<<<<<<<<<<<<< - * - * slice_copy(self, &src) - */ - __pyx_v_flags = (__pyx_v_self->flags & (~PyBUF_C_CONTIGUOUS)); - - /* "View.MemoryView":647 - * cdef int flags = self.flags & ~PyBUF_C_CONTIGUOUS - * - * slice_copy(self, &src) # <<<<<<<<<<<<<< - * dst = slice_copy_contig(&src, "fortran", self.view.ndim, - * self.view.itemsize, - */ - __pyx_memoryview_slice_copy(__pyx_v_self, (&__pyx_v_src)); - - /* "View.MemoryView":648 - * - * slice_copy(self, &src) - * dst = slice_copy_contig(&src, "fortran", self.view.ndim, # <<<<<<<<<<<<<< - * self.view.itemsize, - * flags|PyBUF_F_CONTIGUOUS, - */ - __pyx_t_1 = __pyx_memoryview_copy_new_contig((&__pyx_v_src), ((char *)"fortran"), __pyx_v_self->view.ndim, __pyx_v_self->view.itemsize, (__pyx_v_flags | PyBUF_F_CONTIGUOUS), __pyx_v_self->dtype_is_object); if (unlikely(PyErr_Occurred())) __PYX_ERR(2, 648, __pyx_L1_error) - __pyx_v_dst = __pyx_t_1; - - /* "View.MemoryView":653 - * self.dtype_is_object) - * - * return memoryview_copy_from_slice(self, &dst) # <<<<<<<<<<<<<< - * - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_memoryview_copy_object_from_slice(__pyx_v_self, (&__pyx_v_dst)); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 653, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - /* "View.MemoryView":643 - * return memoryview_copy_from_slice(self, &mslice) - * - * def copy_fortran(self): # <<<<<<<<<<<<<< - * cdef __Pyx_memviewslice src, dst - * cdef int flags = self.flags & ~PyBUF_C_CONTIGUOUS - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("View.MemoryView.memoryview.copy_fortran", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): - */ - -/* Python wrapper */ -static PyObject *__pyx_pw___pyx_memoryview_1__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pw___pyx_memoryview_1__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); - __pyx_r = __pyx_pf___pyx_memoryview___reduce_cython__(((struct __pyx_memoryview_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf___pyx_memoryview___reduce_cython__(CYTHON_UNUSED struct __pyx_memoryview_obj *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 0); - - /* "(tree fragment)":2 - * def __reduce_cython__(self): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< - * def __setstate_cython__(self, __pyx_state): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - */ - __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__16, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 2, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_Raise(__pyx_t_1, 0, 0, 0); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(2, 2, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("View.MemoryView.memoryview.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - */ - -/* Python wrapper */ -static PyObject *__pyx_pw___pyx_memoryview_3__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ -static PyObject *__pyx_pw___pyx_memoryview_3__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); - __pyx_r = __pyx_pf___pyx_memoryview_2__setstate_cython__(((struct __pyx_memoryview_obj *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf___pyx_memoryview_2__setstate_cython__(CYTHON_UNUSED struct __pyx_memoryview_obj *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 0); - - /* "(tree fragment)":4 - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< - */ - __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__17, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_Raise(__pyx_t_1, 0, 0, 0); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(2, 4, __pyx_L1_error) - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("View.MemoryView.memoryview.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":657 - * - * @cname('__pyx_memoryview_new') - * cdef memoryview_cwrapper(object o, int flags, bint dtype_is_object, __Pyx_TypeInfo *typeinfo): # <<<<<<<<<<<<<< - * cdef memoryview result = memoryview(o, flags, dtype_is_object) - * result.typeinfo = typeinfo - */ - -static PyObject *__pyx_memoryview_new(PyObject *__pyx_v_o, int __pyx_v_flags, int __pyx_v_dtype_is_object, __Pyx_TypeInfo *__pyx_v_typeinfo) { - struct __pyx_memoryview_obj *__pyx_v_result = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("memoryview_cwrapper", 0); - - /* "View.MemoryView":658 - * @cname('__pyx_memoryview_new') - * cdef memoryview_cwrapper(object o, int flags, bint dtype_is_object, __Pyx_TypeInfo *typeinfo): - * cdef memoryview result = memoryview(o, flags, dtype_is_object) # <<<<<<<<<<<<<< - * result.typeinfo = typeinfo - * return result - */ - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_flags); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 658, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_v_dtype_is_object); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 658, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 658, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_v_o); - __Pyx_GIVEREF(__pyx_v_o); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_o); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_memoryview_type), __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 658, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_v_result = ((struct __pyx_memoryview_obj *)__pyx_t_2); - __pyx_t_2 = 0; - - /* "View.MemoryView":659 - * cdef memoryview_cwrapper(object o, int flags, bint dtype_is_object, __Pyx_TypeInfo *typeinfo): - * cdef memoryview result = memoryview(o, flags, dtype_is_object) - * result.typeinfo = typeinfo # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_v_result->typeinfo = __pyx_v_typeinfo; - - /* "View.MemoryView":660 - * cdef memoryview result = memoryview(o, flags, dtype_is_object) - * result.typeinfo = typeinfo - * return result # <<<<<<<<<<<<<< - * - * @cname('__pyx_memoryview_check') - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - /* "View.MemoryView":657 - * - * @cname('__pyx_memoryview_new') - * cdef memoryview_cwrapper(object o, int flags, bint dtype_is_object, __Pyx_TypeInfo *typeinfo): # <<<<<<<<<<<<<< - * cdef memoryview result = memoryview(o, flags, dtype_is_object) - * result.typeinfo = typeinfo - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("View.MemoryView.memoryview_cwrapper", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XDECREF((PyObject *)__pyx_v_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":663 - * - * @cname('__pyx_memoryview_check') - * cdef inline bint memoryview_check(object o): # <<<<<<<<<<<<<< - * return isinstance(o, memoryview) - * - */ - -static CYTHON_INLINE int __pyx_memoryview_check(PyObject *__pyx_v_o) { - int __pyx_r; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - __Pyx_RefNannySetupContext("memoryview_check", 0); - - /* "View.MemoryView":664 - * @cname('__pyx_memoryview_check') - * cdef inline bint memoryview_check(object o): - * return isinstance(o, memoryview) # <<<<<<<<<<<<<< - * - * cdef tuple _unellipsify(object index, int ndim): - */ - __pyx_t_1 = __Pyx_TypeCheck(__pyx_v_o, __pyx_memoryview_type); - __pyx_r = __pyx_t_1; - goto __pyx_L0; - - /* "View.MemoryView":663 - * - * @cname('__pyx_memoryview_check') - * cdef inline bint memoryview_check(object o): # <<<<<<<<<<<<<< - * return isinstance(o, memoryview) - * - */ - - /* function exit code */ - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":666 - * return isinstance(o, memoryview) - * - * cdef tuple _unellipsify(object index, int ndim): # <<<<<<<<<<<<<< - * """ - * Replace all ellipses with full slices and fill incomplete indices with - */ - -static PyObject *_unellipsify(PyObject *__pyx_v_index, int __pyx_v_ndim) { - PyObject *__pyx_v_tup = NULL; - PyObject *__pyx_v_result = NULL; - int __pyx_v_have_slices; - int __pyx_v_seen_ellipsis; - CYTHON_UNUSED PyObject *__pyx_v_idx = NULL; - PyObject *__pyx_v_item = NULL; - Py_ssize_t __pyx_v_nslices; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - Py_ssize_t __pyx_t_5; - PyObject *(*__pyx_t_6)(PyObject *); - PyObject *__pyx_t_7 = NULL; - Py_ssize_t __pyx_t_8; - int __pyx_t_9; - int __pyx_t_10; - PyObject *__pyx_t_11 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("_unellipsify", 0); - - /* "View.MemoryView":671 - * full slices. - * """ - * if not isinstance(index, tuple): # <<<<<<<<<<<<<< - * tup = (index,) - * else: - */ - __pyx_t_1 = PyTuple_Check(__pyx_v_index); - __pyx_t_2 = ((!(__pyx_t_1 != 0)) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":672 - * """ - * if not isinstance(index, tuple): - * tup = (index,) # <<<<<<<<<<<<<< - * else: - * tup = index - */ - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 672, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_v_index); - __Pyx_GIVEREF(__pyx_v_index); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_index); - __pyx_v_tup = __pyx_t_3; - __pyx_t_3 = 0; - - /* "View.MemoryView":671 - * full slices. - * """ - * if not isinstance(index, tuple): # <<<<<<<<<<<<<< - * tup = (index,) - * else: - */ - goto __pyx_L3; - } - - /* "View.MemoryView":674 - * tup = (index,) - * else: - * tup = index # <<<<<<<<<<<<<< - * - * result = [] - */ - /*else*/ { - __Pyx_INCREF(__pyx_v_index); - __pyx_v_tup = __pyx_v_index; - } - __pyx_L3:; - - /* "View.MemoryView":676 - * tup = index - * - * result = [] # <<<<<<<<<<<<<< - * have_slices = False - * seen_ellipsis = False - */ - __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 676, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_v_result = ((PyObject*)__pyx_t_3); - __pyx_t_3 = 0; - - /* "View.MemoryView":677 - * - * result = [] - * have_slices = False # <<<<<<<<<<<<<< - * seen_ellipsis = False - * for idx, item in enumerate(tup): - */ - __pyx_v_have_slices = 0; - - /* "View.MemoryView":678 - * result = [] - * have_slices = False - * seen_ellipsis = False # <<<<<<<<<<<<<< - * for idx, item in enumerate(tup): - * if item is Ellipsis: - */ - __pyx_v_seen_ellipsis = 0; - - /* "View.MemoryView":679 - * have_slices = False - * seen_ellipsis = False - * for idx, item in enumerate(tup): # <<<<<<<<<<<<<< - * if item is Ellipsis: - * if not seen_ellipsis: - */ - __Pyx_INCREF(__pyx_int_0); - __pyx_t_3 = __pyx_int_0; - if (likely(PyList_CheckExact(__pyx_v_tup)) || PyTuple_CheckExact(__pyx_v_tup)) { - __pyx_t_4 = __pyx_v_tup; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0; - __pyx_t_6 = NULL; - } else { - __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_tup); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 679, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext; if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 679, __pyx_L1_error) - } - for (;;) { - if (likely(!__pyx_t_6)) { - if (likely(PyList_CheckExact(__pyx_t_4))) { - if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break; - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_7 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) __PYX_ERR(2, 679, __pyx_L1_error) - #else - __pyx_t_7 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) __PYX_ERR(2, 679, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_7); - #endif - } else { - if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break; - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) __PYX_ERR(2, 679, __pyx_L1_error) - #else - __pyx_t_7 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) __PYX_ERR(2, 679, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_7); - #endif - } - } else { - __pyx_t_7 = __pyx_t_6(__pyx_t_4); - if (unlikely(!__pyx_t_7)) { - PyObject* exc_type = PyErr_Occurred(); - if (exc_type) { - if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else __PYX_ERR(2, 679, __pyx_L1_error) - } - break; - } - __Pyx_GOTREF(__pyx_t_7); - } - __Pyx_XDECREF_SET(__pyx_v_item, __pyx_t_7); - __pyx_t_7 = 0; - __Pyx_INCREF(__pyx_t_3); - __Pyx_XDECREF_SET(__pyx_v_idx, __pyx_t_3); - __pyx_t_7 = __Pyx_PyInt_AddObjC(__pyx_t_3, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(2, 679, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_3); - __pyx_t_3 = __pyx_t_7; - __pyx_t_7 = 0; - - /* "View.MemoryView":680 - * seen_ellipsis = False - * for idx, item in enumerate(tup): - * if item is Ellipsis: # <<<<<<<<<<<<<< - * if not seen_ellipsis: - * result.extend([slice(None)] * (ndim - len(tup) + 1)) - */ - __pyx_t_2 = (__pyx_v_item == __pyx_builtin_Ellipsis); - __pyx_t_1 = (__pyx_t_2 != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":681 - * for idx, item in enumerate(tup): - * if item is Ellipsis: - * if not seen_ellipsis: # <<<<<<<<<<<<<< - * result.extend([slice(None)] * (ndim - len(tup) + 1)) - * seen_ellipsis = True - */ - __pyx_t_1 = ((!(__pyx_v_seen_ellipsis != 0)) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":682 - * if item is Ellipsis: - * if not seen_ellipsis: - * result.extend([slice(None)] * (ndim - len(tup) + 1)) # <<<<<<<<<<<<<< - * seen_ellipsis = True - * else: - */ - __pyx_t_8 = PyObject_Length(__pyx_v_tup); if (unlikely(__pyx_t_8 == ((Py_ssize_t)-1))) __PYX_ERR(2, 682, __pyx_L1_error) - __pyx_t_7 = PyList_New(1 * ((((__pyx_v_ndim - __pyx_t_8) + 1)<0) ? 0:((__pyx_v_ndim - __pyx_t_8) + 1))); if (unlikely(!__pyx_t_7)) __PYX_ERR(2, 682, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_7); - { Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < ((__pyx_v_ndim - __pyx_t_8) + 1); __pyx_temp++) { - __Pyx_INCREF(__pyx_slice__18); - __Pyx_GIVEREF(__pyx_slice__18); - PyList_SET_ITEM(__pyx_t_7, __pyx_temp, __pyx_slice__18); - } - } - __pyx_t_9 = __Pyx_PyList_Extend(__pyx_v_result, __pyx_t_7); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(2, 682, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "View.MemoryView":683 - * if not seen_ellipsis: - * result.extend([slice(None)] * (ndim - len(tup) + 1)) - * seen_ellipsis = True # <<<<<<<<<<<<<< - * else: - * result.append(slice(None)) - */ - __pyx_v_seen_ellipsis = 1; - - /* "View.MemoryView":681 - * for idx, item in enumerate(tup): - * if item is Ellipsis: - * if not seen_ellipsis: # <<<<<<<<<<<<<< - * result.extend([slice(None)] * (ndim - len(tup) + 1)) - * seen_ellipsis = True - */ - goto __pyx_L7; - } - - /* "View.MemoryView":685 - * seen_ellipsis = True - * else: - * result.append(slice(None)) # <<<<<<<<<<<<<< - * have_slices = True - * else: - */ - /*else*/ { - __pyx_t_9 = __Pyx_PyList_Append(__pyx_v_result, __pyx_slice__18); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(2, 685, __pyx_L1_error) - } - __pyx_L7:; - - /* "View.MemoryView":686 - * else: - * result.append(slice(None)) - * have_slices = True # <<<<<<<<<<<<<< - * else: - * if not isinstance(item, slice) and not PyIndex_Check(item): - */ - __pyx_v_have_slices = 1; - - /* "View.MemoryView":680 - * seen_ellipsis = False - * for idx, item in enumerate(tup): - * if item is Ellipsis: # <<<<<<<<<<<<<< - * if not seen_ellipsis: - * result.extend([slice(None)] * (ndim - len(tup) + 1)) - */ - goto __pyx_L6; - } - - /* "View.MemoryView":688 - * have_slices = True - * else: - * if not isinstance(item, slice) and not PyIndex_Check(item): # <<<<<<<<<<<<<< - * raise TypeError("Cannot index with type '%s'" % type(item)) - * - */ - /*else*/ { - __pyx_t_2 = PySlice_Check(__pyx_v_item); - __pyx_t_10 = ((!(__pyx_t_2 != 0)) != 0); - if (__pyx_t_10) { - } else { - __pyx_t_1 = __pyx_t_10; - goto __pyx_L9_bool_binop_done; - } - __pyx_t_10 = ((!(PyIndex_Check(__pyx_v_item) != 0)) != 0); - __pyx_t_1 = __pyx_t_10; - __pyx_L9_bool_binop_done:; - if (unlikely(__pyx_t_1)) { - - /* "View.MemoryView":689 - * else: - * if not isinstance(item, slice) and not PyIndex_Check(item): - * raise TypeError("Cannot index with type '%s'" % type(item)) # <<<<<<<<<<<<<< - * - * have_slices = have_slices or isinstance(item, slice) - */ - __pyx_t_7 = __Pyx_PyString_FormatSafe(__pyx_kp_s_Cannot_index_with_type_s, ((PyObject *)Py_TYPE(__pyx_v_item))); if (unlikely(!__pyx_t_7)) __PYX_ERR(2, 689, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_11 = __Pyx_PyObject_CallOneArg(__pyx_builtin_TypeError, __pyx_t_7); if (unlikely(!__pyx_t_11)) __PYX_ERR(2, 689, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_Raise(__pyx_t_11, 0, 0, 0); - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __PYX_ERR(2, 689, __pyx_L1_error) - - /* "View.MemoryView":688 - * have_slices = True - * else: - * if not isinstance(item, slice) and not PyIndex_Check(item): # <<<<<<<<<<<<<< - * raise TypeError("Cannot index with type '%s'" % type(item)) - * - */ - } - - /* "View.MemoryView":691 - * raise TypeError("Cannot index with type '%s'" % type(item)) - * - * have_slices = have_slices or isinstance(item, slice) # <<<<<<<<<<<<<< - * result.append(item) - * - */ - __pyx_t_10 = (__pyx_v_have_slices != 0); - if (!__pyx_t_10) { - } else { - __pyx_t_1 = __pyx_t_10; - goto __pyx_L11_bool_binop_done; - } - __pyx_t_10 = PySlice_Check(__pyx_v_item); - __pyx_t_2 = (__pyx_t_10 != 0); - __pyx_t_1 = __pyx_t_2; - __pyx_L11_bool_binop_done:; - __pyx_v_have_slices = __pyx_t_1; - - /* "View.MemoryView":692 - * - * have_slices = have_slices or isinstance(item, slice) - * result.append(item) # <<<<<<<<<<<<<< - * - * nslices = ndim - len(result) - */ - __pyx_t_9 = __Pyx_PyList_Append(__pyx_v_result, __pyx_v_item); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(2, 692, __pyx_L1_error) - } - __pyx_L6:; - - /* "View.MemoryView":679 - * have_slices = False - * seen_ellipsis = False - * for idx, item in enumerate(tup): # <<<<<<<<<<<<<< - * if item is Ellipsis: - * if not seen_ellipsis: - */ - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "View.MemoryView":694 - * result.append(item) - * - * nslices = ndim - len(result) # <<<<<<<<<<<<<< - * if nslices: - * result.extend([slice(None)] * nslices) - */ - __pyx_t_5 = PyList_GET_SIZE(__pyx_v_result); if (unlikely(__pyx_t_5 == ((Py_ssize_t)-1))) __PYX_ERR(2, 694, __pyx_L1_error) - __pyx_v_nslices = (__pyx_v_ndim - __pyx_t_5); - - /* "View.MemoryView":695 - * - * nslices = ndim - len(result) - * if nslices: # <<<<<<<<<<<<<< - * result.extend([slice(None)] * nslices) - * - */ - __pyx_t_1 = (__pyx_v_nslices != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":696 - * nslices = ndim - len(result) - * if nslices: - * result.extend([slice(None)] * nslices) # <<<<<<<<<<<<<< - * - * return have_slices or nslices, tuple(result) - */ - __pyx_t_3 = PyList_New(1 * ((__pyx_v_nslices<0) ? 0:__pyx_v_nslices)); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 696, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - { Py_ssize_t __pyx_temp; - for (__pyx_temp=0; __pyx_temp < __pyx_v_nslices; __pyx_temp++) { - __Pyx_INCREF(__pyx_slice__18); - __Pyx_GIVEREF(__pyx_slice__18); - PyList_SET_ITEM(__pyx_t_3, __pyx_temp, __pyx_slice__18); - } - } - __pyx_t_9 = __Pyx_PyList_Extend(__pyx_v_result, __pyx_t_3); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(2, 696, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "View.MemoryView":695 - * - * nslices = ndim - len(result) - * if nslices: # <<<<<<<<<<<<<< - * result.extend([slice(None)] * nslices) - * - */ - } - - /* "View.MemoryView":698 - * result.extend([slice(None)] * nslices) - * - * return have_slices or nslices, tuple(result) # <<<<<<<<<<<<<< - * - * cdef assert_direct_dimensions(Py_ssize_t *suboffsets, int ndim): - */ - __Pyx_XDECREF(__pyx_r); - if (!__pyx_v_have_slices) { - } else { - __pyx_t_4 = __Pyx_PyBool_FromLong(__pyx_v_have_slices); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 698, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = __pyx_t_4; - __pyx_t_4 = 0; - goto __pyx_L14_bool_binop_done; - } - __pyx_t_4 = PyInt_FromSsize_t(__pyx_v_nslices); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 698, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = __pyx_t_4; - __pyx_t_4 = 0; - __pyx_L14_bool_binop_done:; - __pyx_t_4 = PyList_AsTuple(__pyx_v_result); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 698, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(2, 698, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_11); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_t_4); - __pyx_t_3 = 0; - __pyx_t_4 = 0; - __pyx_r = ((PyObject*)__pyx_t_11); - __pyx_t_11 = 0; - goto __pyx_L0; - - /* "View.MemoryView":666 - * return isinstance(o, memoryview) - * - * cdef tuple _unellipsify(object index, int ndim): # <<<<<<<<<<<<<< - * """ - * Replace all ellipses with full slices and fill incomplete indices with - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_11); - __Pyx_AddTraceback("View.MemoryView._unellipsify", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_tup); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_idx); - __Pyx_XDECREF(__pyx_v_item); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":700 - * return have_slices or nslices, tuple(result) - * - * cdef assert_direct_dimensions(Py_ssize_t *suboffsets, int ndim): # <<<<<<<<<<<<<< - * for suboffset in suboffsets[:ndim]: - * if suboffset >= 0: - */ - -static PyObject *assert_direct_dimensions(Py_ssize_t *__pyx_v_suboffsets, int __pyx_v_ndim) { - Py_ssize_t __pyx_v_suboffset; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - Py_ssize_t *__pyx_t_1; - Py_ssize_t *__pyx_t_2; - Py_ssize_t *__pyx_t_3; - int __pyx_t_4; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("assert_direct_dimensions", 0); - - /* "View.MemoryView":701 - * - * cdef assert_direct_dimensions(Py_ssize_t *suboffsets, int ndim): - * for suboffset in suboffsets[:ndim]: # <<<<<<<<<<<<<< - * if suboffset >= 0: - * raise ValueError("Indirect dimensions not supported") - */ - __pyx_t_2 = (__pyx_v_suboffsets + __pyx_v_ndim); - for (__pyx_t_3 = __pyx_v_suboffsets; __pyx_t_3 < __pyx_t_2; __pyx_t_3++) { - __pyx_t_1 = __pyx_t_3; - __pyx_v_suboffset = (__pyx_t_1[0]); - - /* "View.MemoryView":702 - * cdef assert_direct_dimensions(Py_ssize_t *suboffsets, int ndim): - * for suboffset in suboffsets[:ndim]: - * if suboffset >= 0: # <<<<<<<<<<<<<< - * raise ValueError("Indirect dimensions not supported") - * - */ - __pyx_t_4 = ((__pyx_v_suboffset >= 0) != 0); - if (unlikely(__pyx_t_4)) { - - /* "View.MemoryView":703 - * for suboffset in suboffsets[:ndim]: - * if suboffset >= 0: - * raise ValueError("Indirect dimensions not supported") # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_5 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__19, NULL); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 703, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_Raise(__pyx_t_5, 0, 0, 0); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __PYX_ERR(2, 703, __pyx_L1_error) - - /* "View.MemoryView":702 - * cdef assert_direct_dimensions(Py_ssize_t *suboffsets, int ndim): - * for suboffset in suboffsets[:ndim]: - * if suboffset >= 0: # <<<<<<<<<<<<<< - * raise ValueError("Indirect dimensions not supported") - * - */ - } - } - - /* "View.MemoryView":700 - * return have_slices or nslices, tuple(result) - * - * cdef assert_direct_dimensions(Py_ssize_t *suboffsets, int ndim): # <<<<<<<<<<<<<< - * for suboffset in suboffsets[:ndim]: - * if suboffset >= 0: - */ - - /* function exit code */ - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("View.MemoryView.assert_direct_dimensions", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":710 - * - * @cname('__pyx_memview_slice') - * cdef memoryview memview_slice(memoryview memview, object indices): # <<<<<<<<<<<<<< - * cdef int new_ndim = 0, suboffset_dim = -1, dim - * cdef bint negative_step - */ - -static struct __pyx_memoryview_obj *__pyx_memview_slice(struct __pyx_memoryview_obj *__pyx_v_memview, PyObject *__pyx_v_indices) { - int __pyx_v_new_ndim; - int __pyx_v_suboffset_dim; - int __pyx_v_dim; - __Pyx_memviewslice __pyx_v_src; - __Pyx_memviewslice __pyx_v_dst; - __Pyx_memviewslice *__pyx_v_p_src; - struct __pyx_memoryviewslice_obj *__pyx_v_memviewsliceobj = 0; - __Pyx_memviewslice *__pyx_v_p_dst; - int *__pyx_v_p_suboffset_dim; - Py_ssize_t __pyx_v_start; - Py_ssize_t __pyx_v_stop; - Py_ssize_t __pyx_v_step; - int __pyx_v_have_start; - int __pyx_v_have_stop; - int __pyx_v_have_step; - PyObject *__pyx_v_index = NULL; - struct __pyx_memoryview_obj *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - struct __pyx_memoryview_obj *__pyx_t_4; - char *__pyx_t_5; - int __pyx_t_6; - Py_ssize_t __pyx_t_7; - PyObject *(*__pyx_t_8)(PyObject *); - PyObject *__pyx_t_9 = NULL; - Py_ssize_t __pyx_t_10; - int __pyx_t_11; - Py_ssize_t __pyx_t_12; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("memview_slice", 0); - - /* "View.MemoryView":711 - * @cname('__pyx_memview_slice') - * cdef memoryview memview_slice(memoryview memview, object indices): - * cdef int new_ndim = 0, suboffset_dim = -1, dim # <<<<<<<<<<<<<< - * cdef bint negative_step - * cdef __Pyx_memviewslice src, dst - */ - __pyx_v_new_ndim = 0; - __pyx_v_suboffset_dim = -1; - - /* "View.MemoryView":718 - * - * - * memset(&dst, 0, sizeof(dst)) # <<<<<<<<<<<<<< - * - * cdef _memoryviewslice memviewsliceobj - */ - (void)(memset((&__pyx_v_dst), 0, (sizeof(__pyx_v_dst)))); - - /* "View.MemoryView":722 - * cdef _memoryviewslice memviewsliceobj - * - * assert memview.view.ndim > 0 # <<<<<<<<<<<<<< - * - * if isinstance(memview, _memoryviewslice): - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - if (unlikely(!Py_OptimizeFlag)) { - if (unlikely(!((__pyx_v_memview->view.ndim > 0) != 0))) { - PyErr_SetNone(PyExc_AssertionError); - __PYX_ERR(2, 722, __pyx_L1_error) - } - } - #endif - - /* "View.MemoryView":724 - * assert memview.view.ndim > 0 - * - * if isinstance(memview, _memoryviewslice): # <<<<<<<<<<<<<< - * memviewsliceobj = memview - * p_src = &memviewsliceobj.from_slice - */ - __pyx_t_1 = __Pyx_TypeCheck(((PyObject *)__pyx_v_memview), __pyx_memoryviewslice_type); - __pyx_t_2 = (__pyx_t_1 != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":725 - * - * if isinstance(memview, _memoryviewslice): - * memviewsliceobj = memview # <<<<<<<<<<<<<< - * p_src = &memviewsliceobj.from_slice - * else: - */ - if (!(likely(((((PyObject *)__pyx_v_memview)) == Py_None) || likely(__Pyx_TypeTest(((PyObject *)__pyx_v_memview), __pyx_memoryviewslice_type))))) __PYX_ERR(2, 725, __pyx_L1_error) - __pyx_t_3 = ((PyObject *)__pyx_v_memview); - __Pyx_INCREF(__pyx_t_3); - __pyx_v_memviewsliceobj = ((struct __pyx_memoryviewslice_obj *)__pyx_t_3); - __pyx_t_3 = 0; - - /* "View.MemoryView":726 - * if isinstance(memview, _memoryviewslice): - * memviewsliceobj = memview - * p_src = &memviewsliceobj.from_slice # <<<<<<<<<<<<<< - * else: - * slice_copy(memview, &src) - */ - __pyx_v_p_src = (&__pyx_v_memviewsliceobj->from_slice); - - /* "View.MemoryView":724 - * assert memview.view.ndim > 0 - * - * if isinstance(memview, _memoryviewslice): # <<<<<<<<<<<<<< - * memviewsliceobj = memview - * p_src = &memviewsliceobj.from_slice - */ - goto __pyx_L3; - } - - /* "View.MemoryView":728 - * p_src = &memviewsliceobj.from_slice - * else: - * slice_copy(memview, &src) # <<<<<<<<<<<<<< - * p_src = &src - * - */ - /*else*/ { - __pyx_memoryview_slice_copy(__pyx_v_memview, (&__pyx_v_src)); - - /* "View.MemoryView":729 - * else: - * slice_copy(memview, &src) - * p_src = &src # <<<<<<<<<<<<<< - * - * - */ - __pyx_v_p_src = (&__pyx_v_src); - } - __pyx_L3:; - - /* "View.MemoryView":735 - * - * - * dst.memview = p_src.memview # <<<<<<<<<<<<<< - * dst.data = p_src.data - * - */ - __pyx_t_4 = __pyx_v_p_src->memview; - __pyx_v_dst.memview = __pyx_t_4; - - /* "View.MemoryView":736 - * - * dst.memview = p_src.memview - * dst.data = p_src.data # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_5 = __pyx_v_p_src->data; - __pyx_v_dst.data = __pyx_t_5; - - /* "View.MemoryView":741 - * - * - * cdef __Pyx_memviewslice *p_dst = &dst # <<<<<<<<<<<<<< - * cdef int *p_suboffset_dim = &suboffset_dim - * cdef Py_ssize_t start, stop, step - */ - __pyx_v_p_dst = (&__pyx_v_dst); - - /* "View.MemoryView":742 - * - * cdef __Pyx_memviewslice *p_dst = &dst - * cdef int *p_suboffset_dim = &suboffset_dim # <<<<<<<<<<<<<< - * cdef Py_ssize_t start, stop, step - * cdef bint have_start, have_stop, have_step - */ - __pyx_v_p_suboffset_dim = (&__pyx_v_suboffset_dim); - - /* "View.MemoryView":746 - * cdef bint have_start, have_stop, have_step - * - * for dim, index in enumerate(indices): # <<<<<<<<<<<<<< - * if PyIndex_Check(index): - * slice_memviewslice( - */ - __pyx_t_6 = 0; - if (likely(PyList_CheckExact(__pyx_v_indices)) || PyTuple_CheckExact(__pyx_v_indices)) { - __pyx_t_3 = __pyx_v_indices; __Pyx_INCREF(__pyx_t_3); __pyx_t_7 = 0; - __pyx_t_8 = NULL; - } else { - __pyx_t_7 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_indices); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 746, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_8 = Py_TYPE(__pyx_t_3)->tp_iternext; if (unlikely(!__pyx_t_8)) __PYX_ERR(2, 746, __pyx_L1_error) - } - for (;;) { - if (likely(!__pyx_t_8)) { - if (likely(PyList_CheckExact(__pyx_t_3))) { - if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_3)) break; - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_9 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(2, 746, __pyx_L1_error) - #else - __pyx_t_9 = PySequence_ITEM(__pyx_t_3, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) __PYX_ERR(2, 746, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_9); - #endif - } else { - if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_3)) break; - #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) __PYX_ERR(2, 746, __pyx_L1_error) - #else - __pyx_t_9 = PySequence_ITEM(__pyx_t_3, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) __PYX_ERR(2, 746, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_9); - #endif - } - } else { - __pyx_t_9 = __pyx_t_8(__pyx_t_3); - if (unlikely(!__pyx_t_9)) { - PyObject* exc_type = PyErr_Occurred(); - if (exc_type) { - if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else __PYX_ERR(2, 746, __pyx_L1_error) - } - break; - } - __Pyx_GOTREF(__pyx_t_9); - } - __Pyx_XDECREF_SET(__pyx_v_index, __pyx_t_9); - __pyx_t_9 = 0; - __pyx_v_dim = __pyx_t_6; - __pyx_t_6 = (__pyx_t_6 + 1); - - /* "View.MemoryView":747 - * - * for dim, index in enumerate(indices): - * if PyIndex_Check(index): # <<<<<<<<<<<<<< - * slice_memviewslice( - * p_dst, p_src.shape[dim], p_src.strides[dim], p_src.suboffsets[dim], - */ - __pyx_t_2 = (PyIndex_Check(__pyx_v_index) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":751 - * p_dst, p_src.shape[dim], p_src.strides[dim], p_src.suboffsets[dim], - * dim, new_ndim, p_suboffset_dim, - * index, 0, 0, # start, stop, step # <<<<<<<<<<<<<< - * 0, 0, 0, # have_{start,stop,step} - * False) - */ - __pyx_t_10 = __Pyx_PyIndex_AsSsize_t(__pyx_v_index); if (unlikely((__pyx_t_10 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 751, __pyx_L1_error) - - /* "View.MemoryView":748 - * for dim, index in enumerate(indices): - * if PyIndex_Check(index): - * slice_memviewslice( # <<<<<<<<<<<<<< - * p_dst, p_src.shape[dim], p_src.strides[dim], p_src.suboffsets[dim], - * dim, new_ndim, p_suboffset_dim, - */ - __pyx_t_11 = __pyx_memoryview_slice_memviewslice(__pyx_v_p_dst, (__pyx_v_p_src->shape[__pyx_v_dim]), (__pyx_v_p_src->strides[__pyx_v_dim]), (__pyx_v_p_src->suboffsets[__pyx_v_dim]), __pyx_v_dim, __pyx_v_new_ndim, __pyx_v_p_suboffset_dim, __pyx_t_10, 0, 0, 0, 0, 0, 0); if (unlikely(__pyx_t_11 == ((int)-1))) __PYX_ERR(2, 748, __pyx_L1_error) - - /* "View.MemoryView":747 - * - * for dim, index in enumerate(indices): - * if PyIndex_Check(index): # <<<<<<<<<<<<<< - * slice_memviewslice( - * p_dst, p_src.shape[dim], p_src.strides[dim], p_src.suboffsets[dim], - */ - goto __pyx_L6; - } - - /* "View.MemoryView":754 - * 0, 0, 0, # have_{start,stop,step} - * False) - * elif index is None: # <<<<<<<<<<<<<< - * p_dst.shape[new_ndim] = 1 - * p_dst.strides[new_ndim] = 0 - */ - __pyx_t_2 = (__pyx_v_index == Py_None); - __pyx_t_1 = (__pyx_t_2 != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":755 - * False) - * elif index is None: - * p_dst.shape[new_ndim] = 1 # <<<<<<<<<<<<<< - * p_dst.strides[new_ndim] = 0 - * p_dst.suboffsets[new_ndim] = -1 - */ - (__pyx_v_p_dst->shape[__pyx_v_new_ndim]) = 1; - - /* "View.MemoryView":756 - * elif index is None: - * p_dst.shape[new_ndim] = 1 - * p_dst.strides[new_ndim] = 0 # <<<<<<<<<<<<<< - * p_dst.suboffsets[new_ndim] = -1 - * new_ndim += 1 - */ - (__pyx_v_p_dst->strides[__pyx_v_new_ndim]) = 0; - - /* "View.MemoryView":757 - * p_dst.shape[new_ndim] = 1 - * p_dst.strides[new_ndim] = 0 - * p_dst.suboffsets[new_ndim] = -1 # <<<<<<<<<<<<<< - * new_ndim += 1 - * else: - */ - (__pyx_v_p_dst->suboffsets[__pyx_v_new_ndim]) = -1L; - - /* "View.MemoryView":758 - * p_dst.strides[new_ndim] = 0 - * p_dst.suboffsets[new_ndim] = -1 - * new_ndim += 1 # <<<<<<<<<<<<<< - * else: - * start = index.start or 0 - */ - __pyx_v_new_ndim = (__pyx_v_new_ndim + 1); - - /* "View.MemoryView":754 - * 0, 0, 0, # have_{start,stop,step} - * False) - * elif index is None: # <<<<<<<<<<<<<< - * p_dst.shape[new_ndim] = 1 - * p_dst.strides[new_ndim] = 0 - */ - goto __pyx_L6; - } - - /* "View.MemoryView":760 - * new_ndim += 1 - * else: - * start = index.start or 0 # <<<<<<<<<<<<<< - * stop = index.stop or 0 - * step = index.step or 0 - */ - /*else*/ { - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_index, __pyx_n_s_start); if (unlikely(!__pyx_t_9)) __PYX_ERR(2, 760, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(2, 760, __pyx_L1_error) - if (!__pyx_t_1) { - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - } else { - __pyx_t_12 = __Pyx_PyIndex_AsSsize_t(__pyx_t_9); if (unlikely((__pyx_t_12 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 760, __pyx_L1_error) - __pyx_t_10 = __pyx_t_12; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L7_bool_binop_done; - } - __pyx_t_10 = 0; - __pyx_L7_bool_binop_done:; - __pyx_v_start = __pyx_t_10; - - /* "View.MemoryView":761 - * else: - * start = index.start or 0 - * stop = index.stop or 0 # <<<<<<<<<<<<<< - * step = index.step or 0 - * - */ - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_index, __pyx_n_s_stop); if (unlikely(!__pyx_t_9)) __PYX_ERR(2, 761, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(2, 761, __pyx_L1_error) - if (!__pyx_t_1) { - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - } else { - __pyx_t_12 = __Pyx_PyIndex_AsSsize_t(__pyx_t_9); if (unlikely((__pyx_t_12 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 761, __pyx_L1_error) - __pyx_t_10 = __pyx_t_12; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L9_bool_binop_done; - } - __pyx_t_10 = 0; - __pyx_L9_bool_binop_done:; - __pyx_v_stop = __pyx_t_10; - - /* "View.MemoryView":762 - * start = index.start or 0 - * stop = index.stop or 0 - * step = index.step or 0 # <<<<<<<<<<<<<< - * - * have_start = index.start is not None - */ - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_index, __pyx_n_s_step); if (unlikely(!__pyx_t_9)) __PYX_ERR(2, 762, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_1 < 0)) __PYX_ERR(2, 762, __pyx_L1_error) - if (!__pyx_t_1) { - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - } else { - __pyx_t_12 = __Pyx_PyIndex_AsSsize_t(__pyx_t_9); if (unlikely((__pyx_t_12 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 762, __pyx_L1_error) - __pyx_t_10 = __pyx_t_12; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L11_bool_binop_done; - } - __pyx_t_10 = 0; - __pyx_L11_bool_binop_done:; - __pyx_v_step = __pyx_t_10; - - /* "View.MemoryView":764 - * step = index.step or 0 - * - * have_start = index.start is not None # <<<<<<<<<<<<<< - * have_stop = index.stop is not None - * have_step = index.step is not None - */ - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_index, __pyx_n_s_start); if (unlikely(!__pyx_t_9)) __PYX_ERR(2, 764, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_1 = (__pyx_t_9 != Py_None); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_v_have_start = __pyx_t_1; - - /* "View.MemoryView":765 - * - * have_start = index.start is not None - * have_stop = index.stop is not None # <<<<<<<<<<<<<< - * have_step = index.step is not None - * - */ - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_index, __pyx_n_s_stop); if (unlikely(!__pyx_t_9)) __PYX_ERR(2, 765, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_1 = (__pyx_t_9 != Py_None); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_v_have_stop = __pyx_t_1; - - /* "View.MemoryView":766 - * have_start = index.start is not None - * have_stop = index.stop is not None - * have_step = index.step is not None # <<<<<<<<<<<<<< - * - * slice_memviewslice( - */ - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_index, __pyx_n_s_step); if (unlikely(!__pyx_t_9)) __PYX_ERR(2, 766, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_1 = (__pyx_t_9 != Py_None); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_v_have_step = __pyx_t_1; - - /* "View.MemoryView":768 - * have_step = index.step is not None - * - * slice_memviewslice( # <<<<<<<<<<<<<< - * p_dst, p_src.shape[dim], p_src.strides[dim], p_src.suboffsets[dim], - * dim, new_ndim, p_suboffset_dim, - */ - __pyx_t_11 = __pyx_memoryview_slice_memviewslice(__pyx_v_p_dst, (__pyx_v_p_src->shape[__pyx_v_dim]), (__pyx_v_p_src->strides[__pyx_v_dim]), (__pyx_v_p_src->suboffsets[__pyx_v_dim]), __pyx_v_dim, __pyx_v_new_ndim, __pyx_v_p_suboffset_dim, __pyx_v_start, __pyx_v_stop, __pyx_v_step, __pyx_v_have_start, __pyx_v_have_stop, __pyx_v_have_step, 1); if (unlikely(__pyx_t_11 == ((int)-1))) __PYX_ERR(2, 768, __pyx_L1_error) - - /* "View.MemoryView":774 - * have_start, have_stop, have_step, - * True) - * new_ndim += 1 # <<<<<<<<<<<<<< - * - * if isinstance(memview, _memoryviewslice): - */ - __pyx_v_new_ndim = (__pyx_v_new_ndim + 1); - } - __pyx_L6:; - - /* "View.MemoryView":746 - * cdef bint have_start, have_stop, have_step - * - * for dim, index in enumerate(indices): # <<<<<<<<<<<<<< - * if PyIndex_Check(index): - * slice_memviewslice( - */ - } - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "View.MemoryView":776 - * new_ndim += 1 - * - * if isinstance(memview, _memoryviewslice): # <<<<<<<<<<<<<< - * return memoryview_fromslice(dst, new_ndim, - * memviewsliceobj.to_object_func, - */ - __pyx_t_1 = __Pyx_TypeCheck(((PyObject *)__pyx_v_memview), __pyx_memoryviewslice_type); - __pyx_t_2 = (__pyx_t_1 != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":777 - * - * if isinstance(memview, _memoryviewslice): - * return memoryview_fromslice(dst, new_ndim, # <<<<<<<<<<<<<< - * memviewsliceobj.to_object_func, - * memviewsliceobj.to_dtype_func, - */ - __Pyx_XDECREF(((PyObject *)__pyx_r)); - - /* "View.MemoryView":778 - * if isinstance(memview, _memoryviewslice): - * return memoryview_fromslice(dst, new_ndim, - * memviewsliceobj.to_object_func, # <<<<<<<<<<<<<< - * memviewsliceobj.to_dtype_func, - * memview.dtype_is_object) - */ - if (unlikely(!__pyx_v_memviewsliceobj)) { __Pyx_RaiseUnboundLocalError("memviewsliceobj"); __PYX_ERR(2, 778, __pyx_L1_error) } - - /* "View.MemoryView":779 - * return memoryview_fromslice(dst, new_ndim, - * memviewsliceobj.to_object_func, - * memviewsliceobj.to_dtype_func, # <<<<<<<<<<<<<< - * memview.dtype_is_object) - * else: - */ - if (unlikely(!__pyx_v_memviewsliceobj)) { __Pyx_RaiseUnboundLocalError("memviewsliceobj"); __PYX_ERR(2, 779, __pyx_L1_error) } - - /* "View.MemoryView":777 - * - * if isinstance(memview, _memoryviewslice): - * return memoryview_fromslice(dst, new_ndim, # <<<<<<<<<<<<<< - * memviewsliceobj.to_object_func, - * memviewsliceobj.to_dtype_func, - */ - __pyx_t_3 = __pyx_memoryview_fromslice(__pyx_v_dst, __pyx_v_new_ndim, __pyx_v_memviewsliceobj->to_object_func, __pyx_v_memviewsliceobj->to_dtype_func, __pyx_v_memview->dtype_is_object); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 777, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_memoryview_type))))) __PYX_ERR(2, 777, __pyx_L1_error) - __pyx_r = ((struct __pyx_memoryview_obj *)__pyx_t_3); - __pyx_t_3 = 0; - goto __pyx_L0; - - /* "View.MemoryView":776 - * new_ndim += 1 - * - * if isinstance(memview, _memoryviewslice): # <<<<<<<<<<<<<< - * return memoryview_fromslice(dst, new_ndim, - * memviewsliceobj.to_object_func, - */ - } - - /* "View.MemoryView":782 - * memview.dtype_is_object) - * else: - * return memoryview_fromslice(dst, new_ndim, NULL, NULL, # <<<<<<<<<<<<<< - * memview.dtype_is_object) - * - */ - /*else*/ { - __Pyx_XDECREF(((PyObject *)__pyx_r)); - - /* "View.MemoryView":783 - * else: - * return memoryview_fromslice(dst, new_ndim, NULL, NULL, - * memview.dtype_is_object) # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_3 = __pyx_memoryview_fromslice(__pyx_v_dst, __pyx_v_new_ndim, NULL, NULL, __pyx_v_memview->dtype_is_object); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 782, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - - /* "View.MemoryView":782 - * memview.dtype_is_object) - * else: - * return memoryview_fromslice(dst, new_ndim, NULL, NULL, # <<<<<<<<<<<<<< - * memview.dtype_is_object) - * - */ - if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_memoryview_type))))) __PYX_ERR(2, 782, __pyx_L1_error) - __pyx_r = ((struct __pyx_memoryview_obj *)__pyx_t_3); - __pyx_t_3 = 0; - goto __pyx_L0; - } - - /* "View.MemoryView":710 - * - * @cname('__pyx_memview_slice') - * cdef memoryview memview_slice(memoryview memview, object indices): # <<<<<<<<<<<<<< - * cdef int new_ndim = 0, suboffset_dim = -1, dim - * cdef bint negative_step - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_AddTraceback("View.MemoryView.memview_slice", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XDECREF((PyObject *)__pyx_v_memviewsliceobj); - __Pyx_XDECREF(__pyx_v_index); - __Pyx_XGIVEREF((PyObject *)__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":807 - * - * @cname('__pyx_memoryview_slice_memviewslice') - * cdef int slice_memviewslice( # <<<<<<<<<<<<<< - * __Pyx_memviewslice *dst, - * Py_ssize_t shape, Py_ssize_t stride, Py_ssize_t suboffset, - */ - -static int __pyx_memoryview_slice_memviewslice(__Pyx_memviewslice *__pyx_v_dst, Py_ssize_t __pyx_v_shape, Py_ssize_t __pyx_v_stride, Py_ssize_t __pyx_v_suboffset, int __pyx_v_dim, int __pyx_v_new_ndim, int *__pyx_v_suboffset_dim, Py_ssize_t __pyx_v_start, Py_ssize_t __pyx_v_stop, Py_ssize_t __pyx_v_step, int __pyx_v_have_start, int __pyx_v_have_stop, int __pyx_v_have_step, int __pyx_v_is_slice) { - Py_ssize_t __pyx_v_new_shape; - int __pyx_v_negative_step; - int __pyx_r; - int __pyx_t_1; - int __pyx_t_2; - int __pyx_t_3; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - - /* "View.MemoryView":827 - * cdef bint negative_step - * - * if not is_slice: # <<<<<<<<<<<<<< - * - * if start < 0: - */ - __pyx_t_1 = ((!(__pyx_v_is_slice != 0)) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":829 - * if not is_slice: - * - * if start < 0: # <<<<<<<<<<<<<< - * start += shape - * if not 0 <= start < shape: - */ - __pyx_t_1 = ((__pyx_v_start < 0) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":830 - * - * if start < 0: - * start += shape # <<<<<<<<<<<<<< - * if not 0 <= start < shape: - * _err_dim(IndexError, "Index out of bounds (axis %d)", dim) - */ - __pyx_v_start = (__pyx_v_start + __pyx_v_shape); - - /* "View.MemoryView":829 - * if not is_slice: - * - * if start < 0: # <<<<<<<<<<<<<< - * start += shape - * if not 0 <= start < shape: - */ - } - - /* "View.MemoryView":831 - * if start < 0: - * start += shape - * if not 0 <= start < shape: # <<<<<<<<<<<<<< - * _err_dim(IndexError, "Index out of bounds (axis %d)", dim) - * else: - */ - __pyx_t_1 = (0 <= __pyx_v_start); - if (__pyx_t_1) { - __pyx_t_1 = (__pyx_v_start < __pyx_v_shape); - } - __pyx_t_2 = ((!(__pyx_t_1 != 0)) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":832 - * start += shape - * if not 0 <= start < shape: - * _err_dim(IndexError, "Index out of bounds (axis %d)", dim) # <<<<<<<<<<<<<< - * else: - * - */ - __pyx_t_3 = __pyx_memoryview_err_dim(__pyx_builtin_IndexError, ((char *)"Index out of bounds (axis %d)"), __pyx_v_dim); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(2, 832, __pyx_L1_error) - - /* "View.MemoryView":831 - * if start < 0: - * start += shape - * if not 0 <= start < shape: # <<<<<<<<<<<<<< - * _err_dim(IndexError, "Index out of bounds (axis %d)", dim) - * else: - */ - } - - /* "View.MemoryView":827 - * cdef bint negative_step - * - * if not is_slice: # <<<<<<<<<<<<<< - * - * if start < 0: - */ - goto __pyx_L3; - } - - /* "View.MemoryView":835 - * else: - * - * negative_step = have_step != 0 and step < 0 # <<<<<<<<<<<<<< - * - * if have_step and step == 0: - */ - /*else*/ { - __pyx_t_1 = ((__pyx_v_have_step != 0) != 0); - if (__pyx_t_1) { - } else { - __pyx_t_2 = __pyx_t_1; - goto __pyx_L6_bool_binop_done; - } - __pyx_t_1 = ((__pyx_v_step < 0) != 0); - __pyx_t_2 = __pyx_t_1; - __pyx_L6_bool_binop_done:; - __pyx_v_negative_step = __pyx_t_2; - - /* "View.MemoryView":837 - * negative_step = have_step != 0 and step < 0 - * - * if have_step and step == 0: # <<<<<<<<<<<<<< - * _err_dim(ValueError, "Step may not be zero (axis %d)", dim) - * - */ - __pyx_t_1 = (__pyx_v_have_step != 0); - if (__pyx_t_1) { - } else { - __pyx_t_2 = __pyx_t_1; - goto __pyx_L9_bool_binop_done; - } - __pyx_t_1 = ((__pyx_v_step == 0) != 0); - __pyx_t_2 = __pyx_t_1; - __pyx_L9_bool_binop_done:; - if (__pyx_t_2) { - - /* "View.MemoryView":838 - * - * if have_step and step == 0: - * _err_dim(ValueError, "Step may not be zero (axis %d)", dim) # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_3 = __pyx_memoryview_err_dim(__pyx_builtin_ValueError, ((char *)"Step may not be zero (axis %d)"), __pyx_v_dim); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(2, 838, __pyx_L1_error) - - /* "View.MemoryView":837 - * negative_step = have_step != 0 and step < 0 - * - * if have_step and step == 0: # <<<<<<<<<<<<<< - * _err_dim(ValueError, "Step may not be zero (axis %d)", dim) - * - */ - } - - /* "View.MemoryView":841 - * - * - * if have_start: # <<<<<<<<<<<<<< - * if start < 0: - * start += shape - */ - __pyx_t_2 = (__pyx_v_have_start != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":842 - * - * if have_start: - * if start < 0: # <<<<<<<<<<<<<< - * start += shape - * if start < 0: - */ - __pyx_t_2 = ((__pyx_v_start < 0) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":843 - * if have_start: - * if start < 0: - * start += shape # <<<<<<<<<<<<<< - * if start < 0: - * start = 0 - */ - __pyx_v_start = (__pyx_v_start + __pyx_v_shape); - - /* "View.MemoryView":844 - * if start < 0: - * start += shape - * if start < 0: # <<<<<<<<<<<<<< - * start = 0 - * elif start >= shape: - */ - __pyx_t_2 = ((__pyx_v_start < 0) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":845 - * start += shape - * if start < 0: - * start = 0 # <<<<<<<<<<<<<< - * elif start >= shape: - * if negative_step: - */ - __pyx_v_start = 0; - - /* "View.MemoryView":844 - * if start < 0: - * start += shape - * if start < 0: # <<<<<<<<<<<<<< - * start = 0 - * elif start >= shape: - */ - } - - /* "View.MemoryView":842 - * - * if have_start: - * if start < 0: # <<<<<<<<<<<<<< - * start += shape - * if start < 0: - */ - goto __pyx_L12; - } - - /* "View.MemoryView":846 - * if start < 0: - * start = 0 - * elif start >= shape: # <<<<<<<<<<<<<< - * if negative_step: - * start = shape - 1 - */ - __pyx_t_2 = ((__pyx_v_start >= __pyx_v_shape) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":847 - * start = 0 - * elif start >= shape: - * if negative_step: # <<<<<<<<<<<<<< - * start = shape - 1 - * else: - */ - __pyx_t_2 = (__pyx_v_negative_step != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":848 - * elif start >= shape: - * if negative_step: - * start = shape - 1 # <<<<<<<<<<<<<< - * else: - * start = shape - */ - __pyx_v_start = (__pyx_v_shape - 1); - - /* "View.MemoryView":847 - * start = 0 - * elif start >= shape: - * if negative_step: # <<<<<<<<<<<<<< - * start = shape - 1 - * else: - */ - goto __pyx_L14; - } - - /* "View.MemoryView":850 - * start = shape - 1 - * else: - * start = shape # <<<<<<<<<<<<<< - * else: - * if negative_step: - */ - /*else*/ { - __pyx_v_start = __pyx_v_shape; - } - __pyx_L14:; - - /* "View.MemoryView":846 - * if start < 0: - * start = 0 - * elif start >= shape: # <<<<<<<<<<<<<< - * if negative_step: - * start = shape - 1 - */ - } - __pyx_L12:; - - /* "View.MemoryView":841 - * - * - * if have_start: # <<<<<<<<<<<<<< - * if start < 0: - * start += shape - */ - goto __pyx_L11; - } - - /* "View.MemoryView":852 - * start = shape - * else: - * if negative_step: # <<<<<<<<<<<<<< - * start = shape - 1 - * else: - */ - /*else*/ { - __pyx_t_2 = (__pyx_v_negative_step != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":853 - * else: - * if negative_step: - * start = shape - 1 # <<<<<<<<<<<<<< - * else: - * start = 0 - */ - __pyx_v_start = (__pyx_v_shape - 1); - - /* "View.MemoryView":852 - * start = shape - * else: - * if negative_step: # <<<<<<<<<<<<<< - * start = shape - 1 - * else: - */ - goto __pyx_L15; - } - - /* "View.MemoryView":855 - * start = shape - 1 - * else: - * start = 0 # <<<<<<<<<<<<<< - * - * if have_stop: - */ - /*else*/ { - __pyx_v_start = 0; - } - __pyx_L15:; - } - __pyx_L11:; - - /* "View.MemoryView":857 - * start = 0 - * - * if have_stop: # <<<<<<<<<<<<<< - * if stop < 0: - * stop += shape - */ - __pyx_t_2 = (__pyx_v_have_stop != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":858 - * - * if have_stop: - * if stop < 0: # <<<<<<<<<<<<<< - * stop += shape - * if stop < 0: - */ - __pyx_t_2 = ((__pyx_v_stop < 0) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":859 - * if have_stop: - * if stop < 0: - * stop += shape # <<<<<<<<<<<<<< - * if stop < 0: - * stop = 0 - */ - __pyx_v_stop = (__pyx_v_stop + __pyx_v_shape); - - /* "View.MemoryView":860 - * if stop < 0: - * stop += shape - * if stop < 0: # <<<<<<<<<<<<<< - * stop = 0 - * elif stop > shape: - */ - __pyx_t_2 = ((__pyx_v_stop < 0) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":861 - * stop += shape - * if stop < 0: - * stop = 0 # <<<<<<<<<<<<<< - * elif stop > shape: - * stop = shape - */ - __pyx_v_stop = 0; - - /* "View.MemoryView":860 - * if stop < 0: - * stop += shape - * if stop < 0: # <<<<<<<<<<<<<< - * stop = 0 - * elif stop > shape: - */ - } - - /* "View.MemoryView":858 - * - * if have_stop: - * if stop < 0: # <<<<<<<<<<<<<< - * stop += shape - * if stop < 0: - */ - goto __pyx_L17; - } - - /* "View.MemoryView":862 - * if stop < 0: - * stop = 0 - * elif stop > shape: # <<<<<<<<<<<<<< - * stop = shape - * else: - */ - __pyx_t_2 = ((__pyx_v_stop > __pyx_v_shape) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":863 - * stop = 0 - * elif stop > shape: - * stop = shape # <<<<<<<<<<<<<< - * else: - * if negative_step: - */ - __pyx_v_stop = __pyx_v_shape; - - /* "View.MemoryView":862 - * if stop < 0: - * stop = 0 - * elif stop > shape: # <<<<<<<<<<<<<< - * stop = shape - * else: - */ - } - __pyx_L17:; - - /* "View.MemoryView":857 - * start = 0 - * - * if have_stop: # <<<<<<<<<<<<<< - * if stop < 0: - * stop += shape - */ - goto __pyx_L16; - } - - /* "View.MemoryView":865 - * stop = shape - * else: - * if negative_step: # <<<<<<<<<<<<<< - * stop = -1 - * else: - */ - /*else*/ { - __pyx_t_2 = (__pyx_v_negative_step != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":866 - * else: - * if negative_step: - * stop = -1 # <<<<<<<<<<<<<< - * else: - * stop = shape - */ - __pyx_v_stop = -1L; - - /* "View.MemoryView":865 - * stop = shape - * else: - * if negative_step: # <<<<<<<<<<<<<< - * stop = -1 - * else: - */ - goto __pyx_L19; - } - - /* "View.MemoryView":868 - * stop = -1 - * else: - * stop = shape # <<<<<<<<<<<<<< - * - * if not have_step: - */ - /*else*/ { - __pyx_v_stop = __pyx_v_shape; - } - __pyx_L19:; - } - __pyx_L16:; - - /* "View.MemoryView":870 - * stop = shape - * - * if not have_step: # <<<<<<<<<<<<<< - * step = 1 - * - */ - __pyx_t_2 = ((!(__pyx_v_have_step != 0)) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":871 - * - * if not have_step: - * step = 1 # <<<<<<<<<<<<<< - * - * - */ - __pyx_v_step = 1; - - /* "View.MemoryView":870 - * stop = shape - * - * if not have_step: # <<<<<<<<<<<<<< - * step = 1 - * - */ - } - - /* "View.MemoryView":875 - * - * with cython.cdivision(True): - * new_shape = (stop - start) // step # <<<<<<<<<<<<<< - * - * if (stop - start) - step * new_shape: - */ - __pyx_v_new_shape = ((__pyx_v_stop - __pyx_v_start) / __pyx_v_step); - - /* "View.MemoryView":877 - * new_shape = (stop - start) // step - * - * if (stop - start) - step * new_shape: # <<<<<<<<<<<<<< - * new_shape += 1 - * - */ - __pyx_t_2 = (((__pyx_v_stop - __pyx_v_start) - (__pyx_v_step * __pyx_v_new_shape)) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":878 - * - * if (stop - start) - step * new_shape: - * new_shape += 1 # <<<<<<<<<<<<<< - * - * if new_shape < 0: - */ - __pyx_v_new_shape = (__pyx_v_new_shape + 1); - - /* "View.MemoryView":877 - * new_shape = (stop - start) // step - * - * if (stop - start) - step * new_shape: # <<<<<<<<<<<<<< - * new_shape += 1 - * - */ - } - - /* "View.MemoryView":880 - * new_shape += 1 - * - * if new_shape < 0: # <<<<<<<<<<<<<< - * new_shape = 0 - * - */ - __pyx_t_2 = ((__pyx_v_new_shape < 0) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":881 - * - * if new_shape < 0: - * new_shape = 0 # <<<<<<<<<<<<<< - * - * - */ - __pyx_v_new_shape = 0; - - /* "View.MemoryView":880 - * new_shape += 1 - * - * if new_shape < 0: # <<<<<<<<<<<<<< - * new_shape = 0 - * - */ - } - - /* "View.MemoryView":884 - * - * - * dst.strides[new_ndim] = stride * step # <<<<<<<<<<<<<< - * dst.shape[new_ndim] = new_shape - * dst.suboffsets[new_ndim] = suboffset - */ - (__pyx_v_dst->strides[__pyx_v_new_ndim]) = (__pyx_v_stride * __pyx_v_step); - - /* "View.MemoryView":885 - * - * dst.strides[new_ndim] = stride * step - * dst.shape[new_ndim] = new_shape # <<<<<<<<<<<<<< - * dst.suboffsets[new_ndim] = suboffset - * - */ - (__pyx_v_dst->shape[__pyx_v_new_ndim]) = __pyx_v_new_shape; - - /* "View.MemoryView":886 - * dst.strides[new_ndim] = stride * step - * dst.shape[new_ndim] = new_shape - * dst.suboffsets[new_ndim] = suboffset # <<<<<<<<<<<<<< - * - * - */ - (__pyx_v_dst->suboffsets[__pyx_v_new_ndim]) = __pyx_v_suboffset; - } - __pyx_L3:; - - /* "View.MemoryView":889 - * - * - * if suboffset_dim[0] < 0: # <<<<<<<<<<<<<< - * dst.data += start * stride - * else: - */ - __pyx_t_2 = (((__pyx_v_suboffset_dim[0]) < 0) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":890 - * - * if suboffset_dim[0] < 0: - * dst.data += start * stride # <<<<<<<<<<<<<< - * else: - * dst.suboffsets[suboffset_dim[0]] += start * stride - */ - __pyx_v_dst->data = (__pyx_v_dst->data + (__pyx_v_start * __pyx_v_stride)); - - /* "View.MemoryView":889 - * - * - * if suboffset_dim[0] < 0: # <<<<<<<<<<<<<< - * dst.data += start * stride - * else: - */ - goto __pyx_L23; - } - - /* "View.MemoryView":892 - * dst.data += start * stride - * else: - * dst.suboffsets[suboffset_dim[0]] += start * stride # <<<<<<<<<<<<<< - * - * if suboffset >= 0: - */ - /*else*/ { - __pyx_t_3 = (__pyx_v_suboffset_dim[0]); - (__pyx_v_dst->suboffsets[__pyx_t_3]) = ((__pyx_v_dst->suboffsets[__pyx_t_3]) + (__pyx_v_start * __pyx_v_stride)); - } - __pyx_L23:; - - /* "View.MemoryView":894 - * dst.suboffsets[suboffset_dim[0]] += start * stride - * - * if suboffset >= 0: # <<<<<<<<<<<<<< - * if not is_slice: - * if new_ndim == 0: - */ - __pyx_t_2 = ((__pyx_v_suboffset >= 0) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":895 - * - * if suboffset >= 0: - * if not is_slice: # <<<<<<<<<<<<<< - * if new_ndim == 0: - * dst.data = ( dst.data)[0] + suboffset - */ - __pyx_t_2 = ((!(__pyx_v_is_slice != 0)) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":896 - * if suboffset >= 0: - * if not is_slice: - * if new_ndim == 0: # <<<<<<<<<<<<<< - * dst.data = ( dst.data)[0] + suboffset - * else: - */ - __pyx_t_2 = ((__pyx_v_new_ndim == 0) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":897 - * if not is_slice: - * if new_ndim == 0: - * dst.data = ( dst.data)[0] + suboffset # <<<<<<<<<<<<<< - * else: - * _err_dim(IndexError, "All dimensions preceding dimension %d " - */ - __pyx_v_dst->data = ((((char **)__pyx_v_dst->data)[0]) + __pyx_v_suboffset); - - /* "View.MemoryView":896 - * if suboffset >= 0: - * if not is_slice: - * if new_ndim == 0: # <<<<<<<<<<<<<< - * dst.data = ( dst.data)[0] + suboffset - * else: - */ - goto __pyx_L26; - } - - /* "View.MemoryView":899 - * dst.data = ( dst.data)[0] + suboffset - * else: - * _err_dim(IndexError, "All dimensions preceding dimension %d " # <<<<<<<<<<<<<< - * "must be indexed and not sliced", dim) - * else: - */ - /*else*/ { - - /* "View.MemoryView":900 - * else: - * _err_dim(IndexError, "All dimensions preceding dimension %d " - * "must be indexed and not sliced", dim) # <<<<<<<<<<<<<< - * else: - * suboffset_dim[0] = new_ndim - */ - __pyx_t_3 = __pyx_memoryview_err_dim(__pyx_builtin_IndexError, ((char *)"All dimensions preceding dimension %d must be indexed and not sliced"), __pyx_v_dim); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(2, 899, __pyx_L1_error) - } - __pyx_L26:; - - /* "View.MemoryView":895 - * - * if suboffset >= 0: - * if not is_slice: # <<<<<<<<<<<<<< - * if new_ndim == 0: - * dst.data = ( dst.data)[0] + suboffset - */ - goto __pyx_L25; - } - - /* "View.MemoryView":902 - * "must be indexed and not sliced", dim) - * else: - * suboffset_dim[0] = new_ndim # <<<<<<<<<<<<<< - * - * return 0 - */ - /*else*/ { - (__pyx_v_suboffset_dim[0]) = __pyx_v_new_ndim; - } - __pyx_L25:; - - /* "View.MemoryView":894 - * dst.suboffsets[suboffset_dim[0]] += start * stride - * - * if suboffset >= 0: # <<<<<<<<<<<<<< - * if not is_slice: - * if new_ndim == 0: - */ - } - - /* "View.MemoryView":904 - * suboffset_dim[0] = new_ndim - * - * return 0 # <<<<<<<<<<<<<< - * - * - */ - __pyx_r = 0; - goto __pyx_L0; - - /* "View.MemoryView":807 - * - * @cname('__pyx_memoryview_slice_memviewslice') - * cdef int slice_memviewslice( # <<<<<<<<<<<<<< - * __Pyx_memviewslice *dst, - * Py_ssize_t shape, Py_ssize_t stride, Py_ssize_t suboffset, - */ - - /* function exit code */ - __pyx_L1_error:; - { - #ifdef WITH_THREAD - PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure(); - #endif - __Pyx_AddTraceback("View.MemoryView.slice_memviewslice", __pyx_clineno, __pyx_lineno, __pyx_filename); - #ifdef WITH_THREAD - __Pyx_PyGILState_Release(__pyx_gilstate_save); - #endif - } - __pyx_r = -1; - __pyx_L0:; - return __pyx_r; -} - -/* "View.MemoryView":910 - * - * @cname('__pyx_pybuffer_index') - * cdef char *pybuffer_index(Py_buffer *view, char *bufp, Py_ssize_t index, # <<<<<<<<<<<<<< - * Py_ssize_t dim) except NULL: - * cdef Py_ssize_t shape, stride, suboffset = -1 - */ - -static char *__pyx_pybuffer_index(Py_buffer *__pyx_v_view, char *__pyx_v_bufp, Py_ssize_t __pyx_v_index, Py_ssize_t __pyx_v_dim) { - Py_ssize_t __pyx_v_shape; - Py_ssize_t __pyx_v_stride; - Py_ssize_t __pyx_v_suboffset; - Py_ssize_t __pyx_v_itemsize; - char *__pyx_v_resultp; - char *__pyx_r; - __Pyx_RefNannyDeclarations - Py_ssize_t __pyx_t_1; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("pybuffer_index", 0); - - /* "View.MemoryView":912 - * cdef char *pybuffer_index(Py_buffer *view, char *bufp, Py_ssize_t index, - * Py_ssize_t dim) except NULL: - * cdef Py_ssize_t shape, stride, suboffset = -1 # <<<<<<<<<<<<<< - * cdef Py_ssize_t itemsize = view.itemsize - * cdef char *resultp - */ - __pyx_v_suboffset = -1L; - - /* "View.MemoryView":913 - * Py_ssize_t dim) except NULL: - * cdef Py_ssize_t shape, stride, suboffset = -1 - * cdef Py_ssize_t itemsize = view.itemsize # <<<<<<<<<<<<<< - * cdef char *resultp - * - */ - __pyx_t_1 = __pyx_v_view->itemsize; - __pyx_v_itemsize = __pyx_t_1; - - /* "View.MemoryView":916 - * cdef char *resultp - * - * if view.ndim == 0: # <<<<<<<<<<<<<< - * shape = view.len / itemsize - * stride = itemsize - */ - __pyx_t_2 = ((__pyx_v_view->ndim == 0) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":917 - * - * if view.ndim == 0: - * shape = view.len / itemsize # <<<<<<<<<<<<<< - * stride = itemsize - * else: - */ - if (unlikely(__pyx_v_itemsize == 0)) { - PyErr_SetString(PyExc_ZeroDivisionError, "integer division or modulo by zero"); - __PYX_ERR(2, 917, __pyx_L1_error) - } - else if (sizeof(Py_ssize_t) == sizeof(long) && (!(((Py_ssize_t)-1) > 0)) && unlikely(__pyx_v_itemsize == (Py_ssize_t)-1) && unlikely(UNARY_NEG_WOULD_OVERFLOW(__pyx_v_view->len))) { - PyErr_SetString(PyExc_OverflowError, "value too large to perform division"); - __PYX_ERR(2, 917, __pyx_L1_error) - } - __pyx_v_shape = __Pyx_div_Py_ssize_t(__pyx_v_view->len, __pyx_v_itemsize); - - /* "View.MemoryView":918 - * if view.ndim == 0: - * shape = view.len / itemsize - * stride = itemsize # <<<<<<<<<<<<<< - * else: - * shape = view.shape[dim] - */ - __pyx_v_stride = __pyx_v_itemsize; - - /* "View.MemoryView":916 - * cdef char *resultp - * - * if view.ndim == 0: # <<<<<<<<<<<<<< - * shape = view.len / itemsize - * stride = itemsize - */ - goto __pyx_L3; - } - - /* "View.MemoryView":920 - * stride = itemsize - * else: - * shape = view.shape[dim] # <<<<<<<<<<<<<< - * stride = view.strides[dim] - * if view.suboffsets != NULL: - */ - /*else*/ { - __pyx_v_shape = (__pyx_v_view->shape[__pyx_v_dim]); - - /* "View.MemoryView":921 - * else: - * shape = view.shape[dim] - * stride = view.strides[dim] # <<<<<<<<<<<<<< - * if view.suboffsets != NULL: - * suboffset = view.suboffsets[dim] - */ - __pyx_v_stride = (__pyx_v_view->strides[__pyx_v_dim]); - - /* "View.MemoryView":922 - * shape = view.shape[dim] - * stride = view.strides[dim] - * if view.suboffsets != NULL: # <<<<<<<<<<<<<< - * suboffset = view.suboffsets[dim] - * - */ - __pyx_t_2 = ((__pyx_v_view->suboffsets != NULL) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":923 - * stride = view.strides[dim] - * if view.suboffsets != NULL: - * suboffset = view.suboffsets[dim] # <<<<<<<<<<<<<< - * - * if index < 0: - */ - __pyx_v_suboffset = (__pyx_v_view->suboffsets[__pyx_v_dim]); - - /* "View.MemoryView":922 - * shape = view.shape[dim] - * stride = view.strides[dim] - * if view.suboffsets != NULL: # <<<<<<<<<<<<<< - * suboffset = view.suboffsets[dim] - * - */ - } - } - __pyx_L3:; - - /* "View.MemoryView":925 - * suboffset = view.suboffsets[dim] - * - * if index < 0: # <<<<<<<<<<<<<< - * index += view.shape[dim] - * if index < 0: - */ - __pyx_t_2 = ((__pyx_v_index < 0) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":926 - * - * if index < 0: - * index += view.shape[dim] # <<<<<<<<<<<<<< - * if index < 0: - * raise IndexError("Out of bounds on buffer access (axis %d)" % dim) - */ - __pyx_v_index = (__pyx_v_index + (__pyx_v_view->shape[__pyx_v_dim])); - - /* "View.MemoryView":927 - * if index < 0: - * index += view.shape[dim] - * if index < 0: # <<<<<<<<<<<<<< - * raise IndexError("Out of bounds on buffer access (axis %d)" % dim) - * - */ - __pyx_t_2 = ((__pyx_v_index < 0) != 0); - if (unlikely(__pyx_t_2)) { - - /* "View.MemoryView":928 - * index += view.shape[dim] - * if index < 0: - * raise IndexError("Out of bounds on buffer access (axis %d)" % dim) # <<<<<<<<<<<<<< - * - * if index >= shape: - */ - __pyx_t_3 = PyInt_FromSsize_t(__pyx_v_dim); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 928, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_Out_of_bounds_on_buffer_access_a, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 928, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_builtin_IndexError, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 928, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_Raise(__pyx_t_3, 0, 0, 0); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __PYX_ERR(2, 928, __pyx_L1_error) - - /* "View.MemoryView":927 - * if index < 0: - * index += view.shape[dim] - * if index < 0: # <<<<<<<<<<<<<< - * raise IndexError("Out of bounds on buffer access (axis %d)" % dim) - * - */ - } - - /* "View.MemoryView":925 - * suboffset = view.suboffsets[dim] - * - * if index < 0: # <<<<<<<<<<<<<< - * index += view.shape[dim] - * if index < 0: - */ - } - - /* "View.MemoryView":930 - * raise IndexError("Out of bounds on buffer access (axis %d)" % dim) - * - * if index >= shape: # <<<<<<<<<<<<<< - * raise IndexError("Out of bounds on buffer access (axis %d)" % dim) - * - */ - __pyx_t_2 = ((__pyx_v_index >= __pyx_v_shape) != 0); - if (unlikely(__pyx_t_2)) { - - /* "View.MemoryView":931 - * - * if index >= shape: - * raise IndexError("Out of bounds on buffer access (axis %d)" % dim) # <<<<<<<<<<<<<< - * - * resultp = bufp + index * stride - */ - __pyx_t_3 = PyInt_FromSsize_t(__pyx_v_dim); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 931, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_Out_of_bounds_on_buffer_access_a, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 931, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_builtin_IndexError, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 931, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_Raise(__pyx_t_3, 0, 0, 0); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __PYX_ERR(2, 931, __pyx_L1_error) - - /* "View.MemoryView":930 - * raise IndexError("Out of bounds on buffer access (axis %d)" % dim) - * - * if index >= shape: # <<<<<<<<<<<<<< - * raise IndexError("Out of bounds on buffer access (axis %d)" % dim) - * - */ - } - - /* "View.MemoryView":933 - * raise IndexError("Out of bounds on buffer access (axis %d)" % dim) - * - * resultp = bufp + index * stride # <<<<<<<<<<<<<< - * if suboffset >= 0: - * resultp = ( resultp)[0] + suboffset - */ - __pyx_v_resultp = (__pyx_v_bufp + (__pyx_v_index * __pyx_v_stride)); - - /* "View.MemoryView":934 - * - * resultp = bufp + index * stride - * if suboffset >= 0: # <<<<<<<<<<<<<< - * resultp = ( resultp)[0] + suboffset - * - */ - __pyx_t_2 = ((__pyx_v_suboffset >= 0) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":935 - * resultp = bufp + index * stride - * if suboffset >= 0: - * resultp = ( resultp)[0] + suboffset # <<<<<<<<<<<<<< - * - * return resultp - */ - __pyx_v_resultp = ((((char **)__pyx_v_resultp)[0]) + __pyx_v_suboffset); - - /* "View.MemoryView":934 - * - * resultp = bufp + index * stride - * if suboffset >= 0: # <<<<<<<<<<<<<< - * resultp = ( resultp)[0] + suboffset - * - */ - } - - /* "View.MemoryView":937 - * resultp = ( resultp)[0] + suboffset - * - * return resultp # <<<<<<<<<<<<<< - * - * - */ - __pyx_r = __pyx_v_resultp; - goto __pyx_L0; - - /* "View.MemoryView":910 - * - * @cname('__pyx_pybuffer_index') - * cdef char *pybuffer_index(Py_buffer *view, char *bufp, Py_ssize_t index, # <<<<<<<<<<<<<< - * Py_ssize_t dim) except NULL: - * cdef Py_ssize_t shape, stride, suboffset = -1 - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("View.MemoryView.pybuffer_index", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":943 - * - * @cname('__pyx_memslice_transpose') - * cdef int transpose_memslice(__Pyx_memviewslice *memslice) nogil except 0: # <<<<<<<<<<<<<< - * cdef int ndim = memslice.memview.view.ndim - * - */ - -static int __pyx_memslice_transpose(__Pyx_memviewslice *__pyx_v_memslice) { - int __pyx_v_ndim; - Py_ssize_t *__pyx_v_shape; - Py_ssize_t *__pyx_v_strides; - int __pyx_v_i; - int __pyx_v_j; - int __pyx_r; - int __pyx_t_1; - Py_ssize_t *__pyx_t_2; - long __pyx_t_3; - long __pyx_t_4; - Py_ssize_t __pyx_t_5; - Py_ssize_t __pyx_t_6; - int __pyx_t_7; - int __pyx_t_8; - int __pyx_t_9; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - - /* "View.MemoryView":944 - * @cname('__pyx_memslice_transpose') - * cdef int transpose_memslice(__Pyx_memviewslice *memslice) nogil except 0: - * cdef int ndim = memslice.memview.view.ndim # <<<<<<<<<<<<<< - * - * cdef Py_ssize_t *shape = memslice.shape - */ - __pyx_t_1 = __pyx_v_memslice->memview->view.ndim; - __pyx_v_ndim = __pyx_t_1; - - /* "View.MemoryView":946 - * cdef int ndim = memslice.memview.view.ndim - * - * cdef Py_ssize_t *shape = memslice.shape # <<<<<<<<<<<<<< - * cdef Py_ssize_t *strides = memslice.strides - * - */ - __pyx_t_2 = __pyx_v_memslice->shape; - __pyx_v_shape = __pyx_t_2; - - /* "View.MemoryView":947 - * - * cdef Py_ssize_t *shape = memslice.shape - * cdef Py_ssize_t *strides = memslice.strides # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_2 = __pyx_v_memslice->strides; - __pyx_v_strides = __pyx_t_2; - - /* "View.MemoryView":951 - * - * cdef int i, j - * for i in range(ndim / 2): # <<<<<<<<<<<<<< - * j = ndim - 1 - i - * strides[i], strides[j] = strides[j], strides[i] - */ - __pyx_t_3 = __Pyx_div_long(__pyx_v_ndim, 2); - __pyx_t_4 = __pyx_t_3; - for (__pyx_t_1 = 0; __pyx_t_1 < __pyx_t_4; __pyx_t_1+=1) { - __pyx_v_i = __pyx_t_1; - - /* "View.MemoryView":952 - * cdef int i, j - * for i in range(ndim / 2): - * j = ndim - 1 - i # <<<<<<<<<<<<<< - * strides[i], strides[j] = strides[j], strides[i] - * shape[i], shape[j] = shape[j], shape[i] - */ - __pyx_v_j = ((__pyx_v_ndim - 1) - __pyx_v_i); - - /* "View.MemoryView":953 - * for i in range(ndim / 2): - * j = ndim - 1 - i - * strides[i], strides[j] = strides[j], strides[i] # <<<<<<<<<<<<<< - * shape[i], shape[j] = shape[j], shape[i] - * - */ - __pyx_t_5 = (__pyx_v_strides[__pyx_v_j]); - __pyx_t_6 = (__pyx_v_strides[__pyx_v_i]); - (__pyx_v_strides[__pyx_v_i]) = __pyx_t_5; - (__pyx_v_strides[__pyx_v_j]) = __pyx_t_6; - - /* "View.MemoryView":954 - * j = ndim - 1 - i - * strides[i], strides[j] = strides[j], strides[i] - * shape[i], shape[j] = shape[j], shape[i] # <<<<<<<<<<<<<< - * - * if memslice.suboffsets[i] >= 0 or memslice.suboffsets[j] >= 0: - */ - __pyx_t_6 = (__pyx_v_shape[__pyx_v_j]); - __pyx_t_5 = (__pyx_v_shape[__pyx_v_i]); - (__pyx_v_shape[__pyx_v_i]) = __pyx_t_6; - (__pyx_v_shape[__pyx_v_j]) = __pyx_t_5; - - /* "View.MemoryView":956 - * shape[i], shape[j] = shape[j], shape[i] - * - * if memslice.suboffsets[i] >= 0 or memslice.suboffsets[j] >= 0: # <<<<<<<<<<<<<< - * _err(ValueError, "Cannot transpose memoryview with indirect dimensions") - * - */ - __pyx_t_8 = (((__pyx_v_memslice->suboffsets[__pyx_v_i]) >= 0) != 0); - if (!__pyx_t_8) { - } else { - __pyx_t_7 = __pyx_t_8; - goto __pyx_L6_bool_binop_done; - } - __pyx_t_8 = (((__pyx_v_memslice->suboffsets[__pyx_v_j]) >= 0) != 0); - __pyx_t_7 = __pyx_t_8; - __pyx_L6_bool_binop_done:; - if (__pyx_t_7) { - - /* "View.MemoryView":957 - * - * if memslice.suboffsets[i] >= 0 or memslice.suboffsets[j] >= 0: - * _err(ValueError, "Cannot transpose memoryview with indirect dimensions") # <<<<<<<<<<<<<< - * - * return 1 - */ - __pyx_t_9 = __pyx_memoryview_err(__pyx_builtin_ValueError, ((char *)"Cannot transpose memoryview with indirect dimensions")); if (unlikely(__pyx_t_9 == ((int)-1))) __PYX_ERR(2, 957, __pyx_L1_error) - - /* "View.MemoryView":956 - * shape[i], shape[j] = shape[j], shape[i] - * - * if memslice.suboffsets[i] >= 0 or memslice.suboffsets[j] >= 0: # <<<<<<<<<<<<<< - * _err(ValueError, "Cannot transpose memoryview with indirect dimensions") - * - */ - } - } - - /* "View.MemoryView":959 - * _err(ValueError, "Cannot transpose memoryview with indirect dimensions") - * - * return 1 # <<<<<<<<<<<<<< - * - * - */ - __pyx_r = 1; - goto __pyx_L0; - - /* "View.MemoryView":943 - * - * @cname('__pyx_memslice_transpose') - * cdef int transpose_memslice(__Pyx_memviewslice *memslice) nogil except 0: # <<<<<<<<<<<<<< - * cdef int ndim = memslice.memview.view.ndim - * - */ - - /* function exit code */ - __pyx_L1_error:; - { - #ifdef WITH_THREAD - PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure(); - #endif - __Pyx_AddTraceback("View.MemoryView.transpose_memslice", __pyx_clineno, __pyx_lineno, __pyx_filename); - #ifdef WITH_THREAD - __Pyx_PyGILState_Release(__pyx_gilstate_save); - #endif - } - __pyx_r = 0; - __pyx_L0:; - return __pyx_r; -} - -/* "View.MemoryView":976 - * cdef int (*to_dtype_func)(char *, object) except 0 - * - * def __dealloc__(self): # <<<<<<<<<<<<<< - * __PYX_XDEC_MEMVIEW(&self.from_slice, 1) - * - */ - -/* Python wrapper */ -static void __pyx_memoryviewslice___dealloc__(PyObject *__pyx_v_self); /*proto*/ -static void __pyx_memoryviewslice___dealloc__(PyObject *__pyx_v_self) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__dealloc__ (wrapper)", 0); - __pyx_memoryviewslice___pyx_pf_15View_dot_MemoryView_16_memoryviewslice___dealloc__(((struct __pyx_memoryviewslice_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); -} - -static void __pyx_memoryviewslice___pyx_pf_15View_dot_MemoryView_16_memoryviewslice___dealloc__(struct __pyx_memoryviewslice_obj *__pyx_v_self) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__dealloc__", 0); - - /* "View.MemoryView":977 - * - * def __dealloc__(self): - * __PYX_XDEC_MEMVIEW(&self.from_slice, 1) # <<<<<<<<<<<<<< - * - * cdef convert_item_to_object(self, char *itemp): - */ - __PYX_XDEC_MEMVIEW((&__pyx_v_self->from_slice), 1); - - /* "View.MemoryView":976 - * cdef int (*to_dtype_func)(char *, object) except 0 - * - * def __dealloc__(self): # <<<<<<<<<<<<<< - * __PYX_XDEC_MEMVIEW(&self.from_slice, 1) - * - */ - - /* function exit code */ - __Pyx_RefNannyFinishContext(); -} - -/* "View.MemoryView":979 - * __PYX_XDEC_MEMVIEW(&self.from_slice, 1) - * - * cdef convert_item_to_object(self, char *itemp): # <<<<<<<<<<<<<< - * if self.to_object_func != NULL: - * return self.to_object_func(itemp) - */ - -static PyObject *__pyx_memoryviewslice_convert_item_to_object(struct __pyx_memoryviewslice_obj *__pyx_v_self, char *__pyx_v_itemp) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("convert_item_to_object", 0); - - /* "View.MemoryView":980 - * - * cdef convert_item_to_object(self, char *itemp): - * if self.to_object_func != NULL: # <<<<<<<<<<<<<< - * return self.to_object_func(itemp) - * else: - */ - __pyx_t_1 = ((__pyx_v_self->to_object_func != NULL) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":981 - * cdef convert_item_to_object(self, char *itemp): - * if self.to_object_func != NULL: - * return self.to_object_func(itemp) # <<<<<<<<<<<<<< - * else: - * return memoryview.convert_item_to_object(self, itemp) - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_v_self->to_object_func(__pyx_v_itemp); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 981, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - /* "View.MemoryView":980 - * - * cdef convert_item_to_object(self, char *itemp): - * if self.to_object_func != NULL: # <<<<<<<<<<<<<< - * return self.to_object_func(itemp) - * else: - */ - } - - /* "View.MemoryView":983 - * return self.to_object_func(itemp) - * else: - * return memoryview.convert_item_to_object(self, itemp) # <<<<<<<<<<<<<< - * - * cdef assign_item_from_object(self, char *itemp, object value): - */ - /*else*/ { - __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __pyx_memoryview_convert_item_to_object(((struct __pyx_memoryview_obj *)__pyx_v_self), __pyx_v_itemp); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 983, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - } - - /* "View.MemoryView":979 - * __PYX_XDEC_MEMVIEW(&self.from_slice, 1) - * - * cdef convert_item_to_object(self, char *itemp): # <<<<<<<<<<<<<< - * if self.to_object_func != NULL: - * return self.to_object_func(itemp) - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("View.MemoryView._memoryviewslice.convert_item_to_object", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":985 - * return memoryview.convert_item_to_object(self, itemp) - * - * cdef assign_item_from_object(self, char *itemp, object value): # <<<<<<<<<<<<<< - * if self.to_dtype_func != NULL: - * self.to_dtype_func(itemp, value) - */ - -static PyObject *__pyx_memoryviewslice_assign_item_from_object(struct __pyx_memoryviewslice_obj *__pyx_v_self, char *__pyx_v_itemp, PyObject *__pyx_v_value) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("assign_item_from_object", 0); - - /* "View.MemoryView":986 - * - * cdef assign_item_from_object(self, char *itemp, object value): - * if self.to_dtype_func != NULL: # <<<<<<<<<<<<<< - * self.to_dtype_func(itemp, value) - * else: - */ - __pyx_t_1 = ((__pyx_v_self->to_dtype_func != NULL) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":987 - * cdef assign_item_from_object(self, char *itemp, object value): - * if self.to_dtype_func != NULL: - * self.to_dtype_func(itemp, value) # <<<<<<<<<<<<<< - * else: - * memoryview.assign_item_from_object(self, itemp, value) - */ - __pyx_t_2 = __pyx_v_self->to_dtype_func(__pyx_v_itemp, __pyx_v_value); if (unlikely(__pyx_t_2 == ((int)0))) __PYX_ERR(2, 987, __pyx_L1_error) - - /* "View.MemoryView":986 - * - * cdef assign_item_from_object(self, char *itemp, object value): - * if self.to_dtype_func != NULL: # <<<<<<<<<<<<<< - * self.to_dtype_func(itemp, value) - * else: - */ - goto __pyx_L3; - } - - /* "View.MemoryView":989 - * self.to_dtype_func(itemp, value) - * else: - * memoryview.assign_item_from_object(self, itemp, value) # <<<<<<<<<<<<<< - * - * @property - */ - /*else*/ { - __pyx_t_3 = __pyx_memoryview_assign_item_from_object(((struct __pyx_memoryview_obj *)__pyx_v_self), __pyx_v_itemp, __pyx_v_value); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 989, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - } - __pyx_L3:; - - /* "View.MemoryView":985 - * return memoryview.convert_item_to_object(self, itemp) - * - * cdef assign_item_from_object(self, char *itemp, object value): # <<<<<<<<<<<<<< - * if self.to_dtype_func != NULL: - * self.to_dtype_func(itemp, value) - */ - - /* function exit code */ - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("View.MemoryView._memoryviewslice.assign_item_from_object", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":992 - * - * @property - * def base(self): # <<<<<<<<<<<<<< - * return self.from_object - * - */ - -/* Python wrapper */ -static PyObject *__pyx_pw_15View_dot_MemoryView_16_memoryviewslice_4base_1__get__(PyObject *__pyx_v_self); /*proto*/ -static PyObject *__pyx_pw_15View_dot_MemoryView_16_memoryviewslice_4base_1__get__(PyObject *__pyx_v_self) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__ (wrapper)", 0); - __pyx_r = __pyx_pf_15View_dot_MemoryView_16_memoryviewslice_4base___get__(((struct __pyx_memoryviewslice_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_15View_dot_MemoryView_16_memoryviewslice_4base___get__(struct __pyx_memoryviewslice_obj *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__get__", 0); - - /* "View.MemoryView":993 - * @property - * def base(self): - * return self.from_object # <<<<<<<<<<<<<< - * - * __pyx_getbuffer = capsule( &__pyx_memoryview_getbuffer, "getbuffer(obj, view, flags)") - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_self->from_object); - __pyx_r = __pyx_v_self->from_object; - goto __pyx_L0; - - /* "View.MemoryView":992 - * - * @property - * def base(self): # <<<<<<<<<<<<<< - * return self.from_object - * - */ - - /* function exit code */ - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): - */ - -/* Python wrapper */ -static PyObject *__pyx_pw___pyx_memoryviewslice_1__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyObject *__pyx_pw___pyx_memoryviewslice_1__reduce_cython__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__reduce_cython__ (wrapper)", 0); - __pyx_r = __pyx_pf___pyx_memoryviewslice___reduce_cython__(((struct __pyx_memoryviewslice_obj *)__pyx_v_self)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf___pyx_memoryviewslice___reduce_cython__(CYTHON_UNUSED struct __pyx_memoryviewslice_obj *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__reduce_cython__", 0); - - /* "(tree fragment)":2 - * def __reduce_cython__(self): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< - * def __setstate_cython__(self, __pyx_state): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - */ - __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__20, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 2, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_Raise(__pyx_t_1, 0, 0, 0); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(2, 2, __pyx_L1_error) - - /* "(tree fragment)":1 - * def __reduce_cython__(self): # <<<<<<<<<<<<<< - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("View.MemoryView._memoryviewslice.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - */ - -/* Python wrapper */ -static PyObject *__pyx_pw___pyx_memoryviewslice_3__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state); /*proto*/ -static PyObject *__pyx_pw___pyx_memoryviewslice_3__setstate_cython__(PyObject *__pyx_v_self, PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__setstate_cython__ (wrapper)", 0); - __pyx_r = __pyx_pf___pyx_memoryviewslice_2__setstate_cython__(((struct __pyx_memoryviewslice_obj *)__pyx_v_self), ((PyObject *)__pyx_v___pyx_state)); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf___pyx_memoryviewslice_2__setstate_cython__(CYTHON_UNUSED struct __pyx_memoryviewslice_obj *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__setstate_cython__", 0); - - /* "(tree fragment)":4 - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< - */ - __pyx_t_1 = __Pyx_PyObject_Call(__pyx_builtin_TypeError, __pyx_tuple__21, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_Raise(__pyx_t_1, 0, 0, 0); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(2, 4, __pyx_L1_error) - - /* "(tree fragment)":3 - * def __reduce_cython__(self): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): # <<<<<<<<<<<<<< - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("View.MemoryView._memoryviewslice.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":999 - * - * @cname('__pyx_memoryview_fromslice') - * cdef memoryview_fromslice(__Pyx_memviewslice memviewslice, # <<<<<<<<<<<<<< - * int ndim, - * object (*to_object_func)(char *), - */ - -static PyObject *__pyx_memoryview_fromslice(__Pyx_memviewslice __pyx_v_memviewslice, int __pyx_v_ndim, PyObject *(*__pyx_v_to_object_func)(char *), int (*__pyx_v_to_dtype_func)(char *, PyObject *), int __pyx_v_dtype_is_object) { - struct __pyx_memoryviewslice_obj *__pyx_v_result = 0; - Py_ssize_t __pyx_v_suboffset; - PyObject *__pyx_v_length = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - __Pyx_TypeInfo *__pyx_t_4; - Py_buffer __pyx_t_5; - Py_ssize_t *__pyx_t_6; - Py_ssize_t *__pyx_t_7; - Py_ssize_t *__pyx_t_8; - Py_ssize_t __pyx_t_9; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("memoryview_fromslice", 0); - - /* "View.MemoryView":1007 - * cdef _memoryviewslice result - * - * if memviewslice.memview == Py_None: # <<<<<<<<<<<<<< - * return None - * - */ - __pyx_t_1 = ((((PyObject *)__pyx_v_memviewslice.memview) == Py_None) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":1008 - * - * if memviewslice.memview == Py_None: - * return None # <<<<<<<<<<<<<< - * - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - - /* "View.MemoryView":1007 - * cdef _memoryviewslice result - * - * if memviewslice.memview == Py_None: # <<<<<<<<<<<<<< - * return None - * - */ - } - - /* "View.MemoryView":1013 - * - * - * result = _memoryviewslice(None, 0, dtype_is_object) # <<<<<<<<<<<<<< - * - * result.from_slice = memviewslice - */ - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_v_dtype_is_object); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1013, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 1013, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(Py_None); - __Pyx_GIVEREF(Py_None); - PyTuple_SET_ITEM(__pyx_t_3, 0, Py_None); - __Pyx_INCREF(__pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_int_0); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)__pyx_memoryviewslice_type), __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1013, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_v_result = ((struct __pyx_memoryviewslice_obj *)__pyx_t_2); - __pyx_t_2 = 0; - - /* "View.MemoryView":1015 - * result = _memoryviewslice(None, 0, dtype_is_object) - * - * result.from_slice = memviewslice # <<<<<<<<<<<<<< - * __PYX_INC_MEMVIEW(&memviewslice, 1) - * - */ - __pyx_v_result->from_slice = __pyx_v_memviewslice; - - /* "View.MemoryView":1016 - * - * result.from_slice = memviewslice - * __PYX_INC_MEMVIEW(&memviewslice, 1) # <<<<<<<<<<<<<< - * - * result.from_object = ( memviewslice.memview).base - */ - __PYX_INC_MEMVIEW((&__pyx_v_memviewslice), 1); - - /* "View.MemoryView":1018 - * __PYX_INC_MEMVIEW(&memviewslice, 1) - * - * result.from_object = ( memviewslice.memview).base # <<<<<<<<<<<<<< - * result.typeinfo = memviewslice.memview.typeinfo - * - */ - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_memviewslice.memview), __pyx_n_s_base); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1018, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_GOTREF(__pyx_v_result->from_object); - __Pyx_DECREF(__pyx_v_result->from_object); - __pyx_v_result->from_object = __pyx_t_2; - __pyx_t_2 = 0; - - /* "View.MemoryView":1019 - * - * result.from_object = ( memviewslice.memview).base - * result.typeinfo = memviewslice.memview.typeinfo # <<<<<<<<<<<<<< - * - * result.view = memviewslice.memview.view - */ - __pyx_t_4 = __pyx_v_memviewslice.memview->typeinfo; - __pyx_v_result->__pyx_base.typeinfo = __pyx_t_4; - - /* "View.MemoryView":1021 - * result.typeinfo = memviewslice.memview.typeinfo - * - * result.view = memviewslice.memview.view # <<<<<<<<<<<<<< - * result.view.buf = memviewslice.data - * result.view.ndim = ndim - */ - __pyx_t_5 = __pyx_v_memviewslice.memview->view; - __pyx_v_result->__pyx_base.view = __pyx_t_5; - - /* "View.MemoryView":1022 - * - * result.view = memviewslice.memview.view - * result.view.buf = memviewslice.data # <<<<<<<<<<<<<< - * result.view.ndim = ndim - * (<__pyx_buffer *> &result.view).obj = Py_None - */ - __pyx_v_result->__pyx_base.view.buf = ((void *)__pyx_v_memviewslice.data); - - /* "View.MemoryView":1023 - * result.view = memviewslice.memview.view - * result.view.buf = memviewslice.data - * result.view.ndim = ndim # <<<<<<<<<<<<<< - * (<__pyx_buffer *> &result.view).obj = Py_None - * Py_INCREF(Py_None) - */ - __pyx_v_result->__pyx_base.view.ndim = __pyx_v_ndim; - - /* "View.MemoryView":1024 - * result.view.buf = memviewslice.data - * result.view.ndim = ndim - * (<__pyx_buffer *> &result.view).obj = Py_None # <<<<<<<<<<<<<< - * Py_INCREF(Py_None) - * - */ - ((Py_buffer *)(&__pyx_v_result->__pyx_base.view))->obj = Py_None; - - /* "View.MemoryView":1025 - * result.view.ndim = ndim - * (<__pyx_buffer *> &result.view).obj = Py_None - * Py_INCREF(Py_None) # <<<<<<<<<<<<<< - * - * if (memviewslice.memview).flags & PyBUF_WRITABLE: - */ - Py_INCREF(Py_None); - - /* "View.MemoryView":1027 - * Py_INCREF(Py_None) - * - * if (memviewslice.memview).flags & PyBUF_WRITABLE: # <<<<<<<<<<<<<< - * result.flags = PyBUF_RECORDS - * else: - */ - __pyx_t_1 = ((((struct __pyx_memoryview_obj *)__pyx_v_memviewslice.memview)->flags & PyBUF_WRITABLE) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":1028 - * - * if (memviewslice.memview).flags & PyBUF_WRITABLE: - * result.flags = PyBUF_RECORDS # <<<<<<<<<<<<<< - * else: - * result.flags = PyBUF_RECORDS_RO - */ - __pyx_v_result->__pyx_base.flags = PyBUF_RECORDS; - - /* "View.MemoryView":1027 - * Py_INCREF(Py_None) - * - * if (memviewslice.memview).flags & PyBUF_WRITABLE: # <<<<<<<<<<<<<< - * result.flags = PyBUF_RECORDS - * else: - */ - goto __pyx_L4; - } - - /* "View.MemoryView":1030 - * result.flags = PyBUF_RECORDS - * else: - * result.flags = PyBUF_RECORDS_RO # <<<<<<<<<<<<<< - * - * result.view.shape = result.from_slice.shape - */ - /*else*/ { - __pyx_v_result->__pyx_base.flags = PyBUF_RECORDS_RO; - } - __pyx_L4:; - - /* "View.MemoryView":1032 - * result.flags = PyBUF_RECORDS_RO - * - * result.view.shape = result.from_slice.shape # <<<<<<<<<<<<<< - * result.view.strides = result.from_slice.strides - * - */ - __pyx_v_result->__pyx_base.view.shape = ((Py_ssize_t *)__pyx_v_result->from_slice.shape); - - /* "View.MemoryView":1033 - * - * result.view.shape = result.from_slice.shape - * result.view.strides = result.from_slice.strides # <<<<<<<<<<<<<< - * - * - */ - __pyx_v_result->__pyx_base.view.strides = ((Py_ssize_t *)__pyx_v_result->from_slice.strides); - - /* "View.MemoryView":1036 - * - * - * result.view.suboffsets = NULL # <<<<<<<<<<<<<< - * for suboffset in result.from_slice.suboffsets[:ndim]: - * if suboffset >= 0: - */ - __pyx_v_result->__pyx_base.view.suboffsets = NULL; - - /* "View.MemoryView":1037 - * - * result.view.suboffsets = NULL - * for suboffset in result.from_slice.suboffsets[:ndim]: # <<<<<<<<<<<<<< - * if suboffset >= 0: - * result.view.suboffsets = result.from_slice.suboffsets - */ - __pyx_t_7 = (__pyx_v_result->from_slice.suboffsets + __pyx_v_ndim); - for (__pyx_t_8 = __pyx_v_result->from_slice.suboffsets; __pyx_t_8 < __pyx_t_7; __pyx_t_8++) { - __pyx_t_6 = __pyx_t_8; - __pyx_v_suboffset = (__pyx_t_6[0]); - - /* "View.MemoryView":1038 - * result.view.suboffsets = NULL - * for suboffset in result.from_slice.suboffsets[:ndim]: - * if suboffset >= 0: # <<<<<<<<<<<<<< - * result.view.suboffsets = result.from_slice.suboffsets - * break - */ - __pyx_t_1 = ((__pyx_v_suboffset >= 0) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":1039 - * for suboffset in result.from_slice.suboffsets[:ndim]: - * if suboffset >= 0: - * result.view.suboffsets = result.from_slice.suboffsets # <<<<<<<<<<<<<< - * break - * - */ - __pyx_v_result->__pyx_base.view.suboffsets = ((Py_ssize_t *)__pyx_v_result->from_slice.suboffsets); - - /* "View.MemoryView":1040 - * if suboffset >= 0: - * result.view.suboffsets = result.from_slice.suboffsets - * break # <<<<<<<<<<<<<< - * - * result.view.len = result.view.itemsize - */ - goto __pyx_L6_break; - - /* "View.MemoryView":1038 - * result.view.suboffsets = NULL - * for suboffset in result.from_slice.suboffsets[:ndim]: - * if suboffset >= 0: # <<<<<<<<<<<<<< - * result.view.suboffsets = result.from_slice.suboffsets - * break - */ - } - } - __pyx_L6_break:; - - /* "View.MemoryView":1042 - * break - * - * result.view.len = result.view.itemsize # <<<<<<<<<<<<<< - * for length in result.view.shape[:ndim]: - * result.view.len *= length - */ - __pyx_t_9 = __pyx_v_result->__pyx_base.view.itemsize; - __pyx_v_result->__pyx_base.view.len = __pyx_t_9; - - /* "View.MemoryView":1043 - * - * result.view.len = result.view.itemsize - * for length in result.view.shape[:ndim]: # <<<<<<<<<<<<<< - * result.view.len *= length - * - */ - __pyx_t_7 = (__pyx_v_result->__pyx_base.view.shape + __pyx_v_ndim); - for (__pyx_t_8 = __pyx_v_result->__pyx_base.view.shape; __pyx_t_8 < __pyx_t_7; __pyx_t_8++) { - __pyx_t_6 = __pyx_t_8; - __pyx_t_2 = PyInt_FromSsize_t((__pyx_t_6[0])); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1043, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_XDECREF_SET(__pyx_v_length, __pyx_t_2); - __pyx_t_2 = 0; - - /* "View.MemoryView":1044 - * result.view.len = result.view.itemsize - * for length in result.view.shape[:ndim]: - * result.view.len *= length # <<<<<<<<<<<<<< - * - * result.to_object_func = to_object_func - */ - __pyx_t_2 = PyInt_FromSsize_t(__pyx_v_result->__pyx_base.view.len); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1044, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyNumber_InPlaceMultiply(__pyx_t_2, __pyx_v_length); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 1044, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_9 = __Pyx_PyIndex_AsSsize_t(__pyx_t_3); if (unlikely((__pyx_t_9 == (Py_ssize_t)-1) && PyErr_Occurred())) __PYX_ERR(2, 1044, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_v_result->__pyx_base.view.len = __pyx_t_9; - } - - /* "View.MemoryView":1046 - * result.view.len *= length - * - * result.to_object_func = to_object_func # <<<<<<<<<<<<<< - * result.to_dtype_func = to_dtype_func - * - */ - __pyx_v_result->to_object_func = __pyx_v_to_object_func; - - /* "View.MemoryView":1047 - * - * result.to_object_func = to_object_func - * result.to_dtype_func = to_dtype_func # <<<<<<<<<<<<<< - * - * return result - */ - __pyx_v_result->to_dtype_func = __pyx_v_to_dtype_func; - - /* "View.MemoryView":1049 - * result.to_dtype_func = to_dtype_func - * - * return result # <<<<<<<<<<<<<< - * - * @cname('__pyx_memoryview_get_slice_from_memoryview') - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - /* "View.MemoryView":999 - * - * @cname('__pyx_memoryview_fromslice') - * cdef memoryview_fromslice(__Pyx_memviewslice memviewslice, # <<<<<<<<<<<<<< - * int ndim, - * object (*to_object_func)(char *), - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("View.MemoryView.memoryview_fromslice", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XDECREF((PyObject *)__pyx_v_result); - __Pyx_XDECREF(__pyx_v_length); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":1052 - * - * @cname('__pyx_memoryview_get_slice_from_memoryview') - * cdef __Pyx_memviewslice *get_slice_from_memview(memoryview memview, # <<<<<<<<<<<<<< - * __Pyx_memviewslice *mslice) except NULL: - * cdef _memoryviewslice obj - */ - -static __Pyx_memviewslice *__pyx_memoryview_get_slice_from_memoryview(struct __pyx_memoryview_obj *__pyx_v_memview, __Pyx_memviewslice *__pyx_v_mslice) { - struct __pyx_memoryviewslice_obj *__pyx_v_obj = 0; - __Pyx_memviewslice *__pyx_r; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("get_slice_from_memview", 0); - - /* "View.MemoryView":1055 - * __Pyx_memviewslice *mslice) except NULL: - * cdef _memoryviewslice obj - * if isinstance(memview, _memoryviewslice): # <<<<<<<<<<<<<< - * obj = memview - * return &obj.from_slice - */ - __pyx_t_1 = __Pyx_TypeCheck(((PyObject *)__pyx_v_memview), __pyx_memoryviewslice_type); - __pyx_t_2 = (__pyx_t_1 != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1056 - * cdef _memoryviewslice obj - * if isinstance(memview, _memoryviewslice): - * obj = memview # <<<<<<<<<<<<<< - * return &obj.from_slice - * else: - */ - if (!(likely(((((PyObject *)__pyx_v_memview)) == Py_None) || likely(__Pyx_TypeTest(((PyObject *)__pyx_v_memview), __pyx_memoryviewslice_type))))) __PYX_ERR(2, 1056, __pyx_L1_error) - __pyx_t_3 = ((PyObject *)__pyx_v_memview); - __Pyx_INCREF(__pyx_t_3); - __pyx_v_obj = ((struct __pyx_memoryviewslice_obj *)__pyx_t_3); - __pyx_t_3 = 0; - - /* "View.MemoryView":1057 - * if isinstance(memview, _memoryviewslice): - * obj = memview - * return &obj.from_slice # <<<<<<<<<<<<<< - * else: - * slice_copy(memview, mslice) - */ - __pyx_r = (&__pyx_v_obj->from_slice); - goto __pyx_L0; - - /* "View.MemoryView":1055 - * __Pyx_memviewslice *mslice) except NULL: - * cdef _memoryviewslice obj - * if isinstance(memview, _memoryviewslice): # <<<<<<<<<<<<<< - * obj = memview - * return &obj.from_slice - */ - } - - /* "View.MemoryView":1059 - * return &obj.from_slice - * else: - * slice_copy(memview, mslice) # <<<<<<<<<<<<<< - * return mslice - * - */ - /*else*/ { - __pyx_memoryview_slice_copy(__pyx_v_memview, __pyx_v_mslice); - - /* "View.MemoryView":1060 - * else: - * slice_copy(memview, mslice) - * return mslice # <<<<<<<<<<<<<< - * - * @cname('__pyx_memoryview_slice_copy') - */ - __pyx_r = __pyx_v_mslice; - goto __pyx_L0; - } - - /* "View.MemoryView":1052 - * - * @cname('__pyx_memoryview_get_slice_from_memoryview') - * cdef __Pyx_memviewslice *get_slice_from_memview(memoryview memview, # <<<<<<<<<<<<<< - * __Pyx_memviewslice *mslice) except NULL: - * cdef _memoryviewslice obj - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("View.MemoryView.get_slice_from_memview", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF((PyObject *)__pyx_v_obj); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":1063 - * - * @cname('__pyx_memoryview_slice_copy') - * cdef void slice_copy(memoryview memview, __Pyx_memviewslice *dst): # <<<<<<<<<<<<<< - * cdef int dim - * cdef (Py_ssize_t*) shape, strides, suboffsets - */ - -static void __pyx_memoryview_slice_copy(struct __pyx_memoryview_obj *__pyx_v_memview, __Pyx_memviewslice *__pyx_v_dst) { - int __pyx_v_dim; - Py_ssize_t *__pyx_v_shape; - Py_ssize_t *__pyx_v_strides; - Py_ssize_t *__pyx_v_suboffsets; - __Pyx_RefNannyDeclarations - Py_ssize_t *__pyx_t_1; - int __pyx_t_2; - int __pyx_t_3; - int __pyx_t_4; - Py_ssize_t __pyx_t_5; - __Pyx_RefNannySetupContext("slice_copy", 0); - - /* "View.MemoryView":1067 - * cdef (Py_ssize_t*) shape, strides, suboffsets - * - * shape = memview.view.shape # <<<<<<<<<<<<<< - * strides = memview.view.strides - * suboffsets = memview.view.suboffsets - */ - __pyx_t_1 = __pyx_v_memview->view.shape; - __pyx_v_shape = __pyx_t_1; - - /* "View.MemoryView":1068 - * - * shape = memview.view.shape - * strides = memview.view.strides # <<<<<<<<<<<<<< - * suboffsets = memview.view.suboffsets - * - */ - __pyx_t_1 = __pyx_v_memview->view.strides; - __pyx_v_strides = __pyx_t_1; - - /* "View.MemoryView":1069 - * shape = memview.view.shape - * strides = memview.view.strides - * suboffsets = memview.view.suboffsets # <<<<<<<<<<<<<< - * - * dst.memview = <__pyx_memoryview *> memview - */ - __pyx_t_1 = __pyx_v_memview->view.suboffsets; - __pyx_v_suboffsets = __pyx_t_1; - - /* "View.MemoryView":1071 - * suboffsets = memview.view.suboffsets - * - * dst.memview = <__pyx_memoryview *> memview # <<<<<<<<<<<<<< - * dst.data = memview.view.buf - * - */ - __pyx_v_dst->memview = ((struct __pyx_memoryview_obj *)__pyx_v_memview); - - /* "View.MemoryView":1072 - * - * dst.memview = <__pyx_memoryview *> memview - * dst.data = memview.view.buf # <<<<<<<<<<<<<< - * - * for dim in range(memview.view.ndim): - */ - __pyx_v_dst->data = ((char *)__pyx_v_memview->view.buf); - - /* "View.MemoryView":1074 - * dst.data = memview.view.buf - * - * for dim in range(memview.view.ndim): # <<<<<<<<<<<<<< - * dst.shape[dim] = shape[dim] - * dst.strides[dim] = strides[dim] - */ - __pyx_t_2 = __pyx_v_memview->view.ndim; - __pyx_t_3 = __pyx_t_2; - for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) { - __pyx_v_dim = __pyx_t_4; - - /* "View.MemoryView":1075 - * - * for dim in range(memview.view.ndim): - * dst.shape[dim] = shape[dim] # <<<<<<<<<<<<<< - * dst.strides[dim] = strides[dim] - * dst.suboffsets[dim] = suboffsets[dim] if suboffsets else -1 - */ - (__pyx_v_dst->shape[__pyx_v_dim]) = (__pyx_v_shape[__pyx_v_dim]); - - /* "View.MemoryView":1076 - * for dim in range(memview.view.ndim): - * dst.shape[dim] = shape[dim] - * dst.strides[dim] = strides[dim] # <<<<<<<<<<<<<< - * dst.suboffsets[dim] = suboffsets[dim] if suboffsets else -1 - * - */ - (__pyx_v_dst->strides[__pyx_v_dim]) = (__pyx_v_strides[__pyx_v_dim]); - - /* "View.MemoryView":1077 - * dst.shape[dim] = shape[dim] - * dst.strides[dim] = strides[dim] - * dst.suboffsets[dim] = suboffsets[dim] if suboffsets else -1 # <<<<<<<<<<<<<< - * - * @cname('__pyx_memoryview_copy_object') - */ - if ((__pyx_v_suboffsets != 0)) { - __pyx_t_5 = (__pyx_v_suboffsets[__pyx_v_dim]); - } else { - __pyx_t_5 = -1L; - } - (__pyx_v_dst->suboffsets[__pyx_v_dim]) = __pyx_t_5; - } - - /* "View.MemoryView":1063 - * - * @cname('__pyx_memoryview_slice_copy') - * cdef void slice_copy(memoryview memview, __Pyx_memviewslice *dst): # <<<<<<<<<<<<<< - * cdef int dim - * cdef (Py_ssize_t*) shape, strides, suboffsets - */ - - /* function exit code */ - __Pyx_RefNannyFinishContext(); -} - -/* "View.MemoryView":1080 - * - * @cname('__pyx_memoryview_copy_object') - * cdef memoryview_copy(memoryview memview): # <<<<<<<<<<<<<< - * "Create a new memoryview object" - * cdef __Pyx_memviewslice memviewslice - */ - -static PyObject *__pyx_memoryview_copy_object(struct __pyx_memoryview_obj *__pyx_v_memview) { - __Pyx_memviewslice __pyx_v_memviewslice; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("memoryview_copy", 0); - - /* "View.MemoryView":1083 - * "Create a new memoryview object" - * cdef __Pyx_memviewslice memviewslice - * slice_copy(memview, &memviewslice) # <<<<<<<<<<<<<< - * return memoryview_copy_from_slice(memview, &memviewslice) - * - */ - __pyx_memoryview_slice_copy(__pyx_v_memview, (&__pyx_v_memviewslice)); - - /* "View.MemoryView":1084 - * cdef __Pyx_memviewslice memviewslice - * slice_copy(memview, &memviewslice) - * return memoryview_copy_from_slice(memview, &memviewslice) # <<<<<<<<<<<<<< - * - * @cname('__pyx_memoryview_copy_object_from_slice') - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_memoryview_copy_object_from_slice(__pyx_v_memview, (&__pyx_v_memviewslice)); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1084, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - /* "View.MemoryView":1080 - * - * @cname('__pyx_memoryview_copy_object') - * cdef memoryview_copy(memoryview memview): # <<<<<<<<<<<<<< - * "Create a new memoryview object" - * cdef __Pyx_memviewslice memviewslice - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("View.MemoryView.memoryview_copy", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":1087 - * - * @cname('__pyx_memoryview_copy_object_from_slice') - * cdef memoryview_copy_from_slice(memoryview memview, __Pyx_memviewslice *memviewslice): # <<<<<<<<<<<<<< - * """ - * Create a new memoryview object from a given memoryview object and slice. - */ - -static PyObject *__pyx_memoryview_copy_object_from_slice(struct __pyx_memoryview_obj *__pyx_v_memview, __Pyx_memviewslice *__pyx_v_memviewslice) { - PyObject *(*__pyx_v_to_object_func)(char *); - int (*__pyx_v_to_dtype_func)(char *, PyObject *); - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - int __pyx_t_2; - PyObject *(*__pyx_t_3)(char *); - int (*__pyx_t_4)(char *, PyObject *); - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("memoryview_copy_from_slice", 0); - - /* "View.MemoryView":1094 - * cdef int (*to_dtype_func)(char *, object) except 0 - * - * if isinstance(memview, _memoryviewslice): # <<<<<<<<<<<<<< - * to_object_func = (<_memoryviewslice> memview).to_object_func - * to_dtype_func = (<_memoryviewslice> memview).to_dtype_func - */ - __pyx_t_1 = __Pyx_TypeCheck(((PyObject *)__pyx_v_memview), __pyx_memoryviewslice_type); - __pyx_t_2 = (__pyx_t_1 != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1095 - * - * if isinstance(memview, _memoryviewslice): - * to_object_func = (<_memoryviewslice> memview).to_object_func # <<<<<<<<<<<<<< - * to_dtype_func = (<_memoryviewslice> memview).to_dtype_func - * else: - */ - __pyx_t_3 = ((struct __pyx_memoryviewslice_obj *)__pyx_v_memview)->to_object_func; - __pyx_v_to_object_func = __pyx_t_3; - - /* "View.MemoryView":1096 - * if isinstance(memview, _memoryviewslice): - * to_object_func = (<_memoryviewslice> memview).to_object_func - * to_dtype_func = (<_memoryviewslice> memview).to_dtype_func # <<<<<<<<<<<<<< - * else: - * to_object_func = NULL - */ - __pyx_t_4 = ((struct __pyx_memoryviewslice_obj *)__pyx_v_memview)->to_dtype_func; - __pyx_v_to_dtype_func = __pyx_t_4; - - /* "View.MemoryView":1094 - * cdef int (*to_dtype_func)(char *, object) except 0 - * - * if isinstance(memview, _memoryviewslice): # <<<<<<<<<<<<<< - * to_object_func = (<_memoryviewslice> memview).to_object_func - * to_dtype_func = (<_memoryviewslice> memview).to_dtype_func - */ - goto __pyx_L3; - } - - /* "View.MemoryView":1098 - * to_dtype_func = (<_memoryviewslice> memview).to_dtype_func - * else: - * to_object_func = NULL # <<<<<<<<<<<<<< - * to_dtype_func = NULL - * - */ - /*else*/ { - __pyx_v_to_object_func = NULL; - - /* "View.MemoryView":1099 - * else: - * to_object_func = NULL - * to_dtype_func = NULL # <<<<<<<<<<<<<< - * - * return memoryview_fromslice(memviewslice[0], memview.view.ndim, - */ - __pyx_v_to_dtype_func = NULL; - } - __pyx_L3:; - - /* "View.MemoryView":1101 - * to_dtype_func = NULL - * - * return memoryview_fromslice(memviewslice[0], memview.view.ndim, # <<<<<<<<<<<<<< - * to_object_func, to_dtype_func, - * memview.dtype_is_object) - */ - __Pyx_XDECREF(__pyx_r); - - /* "View.MemoryView":1103 - * return memoryview_fromslice(memviewslice[0], memview.view.ndim, - * to_object_func, to_dtype_func, - * memview.dtype_is_object) # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_5 = __pyx_memoryview_fromslice((__pyx_v_memviewslice[0]), __pyx_v_memview->view.ndim, __pyx_v_to_object_func, __pyx_v_to_dtype_func, __pyx_v_memview->dtype_is_object); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 1101, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __pyx_r = __pyx_t_5; - __pyx_t_5 = 0; - goto __pyx_L0; - - /* "View.MemoryView":1087 - * - * @cname('__pyx_memoryview_copy_object_from_slice') - * cdef memoryview_copy_from_slice(memoryview memview, __Pyx_memviewslice *memviewslice): # <<<<<<<<<<<<<< - * """ - * Create a new memoryview object from a given memoryview object and slice. - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("View.MemoryView.memoryview_copy_from_slice", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "View.MemoryView":1109 - * - * - * cdef Py_ssize_t abs_py_ssize_t(Py_ssize_t arg) nogil: # <<<<<<<<<<<<<< - * if arg < 0: - * return -arg - */ - -static Py_ssize_t abs_py_ssize_t(Py_ssize_t __pyx_v_arg) { - Py_ssize_t __pyx_r; - int __pyx_t_1; - - /* "View.MemoryView":1110 - * - * cdef Py_ssize_t abs_py_ssize_t(Py_ssize_t arg) nogil: - * if arg < 0: # <<<<<<<<<<<<<< - * return -arg - * else: - */ - __pyx_t_1 = ((__pyx_v_arg < 0) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":1111 - * cdef Py_ssize_t abs_py_ssize_t(Py_ssize_t arg) nogil: - * if arg < 0: - * return -arg # <<<<<<<<<<<<<< - * else: - * return arg - */ - __pyx_r = (-__pyx_v_arg); - goto __pyx_L0; - - /* "View.MemoryView":1110 - * - * cdef Py_ssize_t abs_py_ssize_t(Py_ssize_t arg) nogil: - * if arg < 0: # <<<<<<<<<<<<<< - * return -arg - * else: - */ - } - - /* "View.MemoryView":1113 - * return -arg - * else: - * return arg # <<<<<<<<<<<<<< - * - * @cname('__pyx_get_best_slice_order') - */ - /*else*/ { - __pyx_r = __pyx_v_arg; - goto __pyx_L0; - } - - /* "View.MemoryView":1109 - * - * - * cdef Py_ssize_t abs_py_ssize_t(Py_ssize_t arg) nogil: # <<<<<<<<<<<<<< - * if arg < 0: - * return -arg - */ - - /* function exit code */ - __pyx_L0:; - return __pyx_r; -} - -/* "View.MemoryView":1116 - * - * @cname('__pyx_get_best_slice_order') - * cdef char get_best_order(__Pyx_memviewslice *mslice, int ndim) nogil: # <<<<<<<<<<<<<< - * """ - * Figure out the best memory access order for a given slice. - */ - -static char __pyx_get_best_slice_order(__Pyx_memviewslice *__pyx_v_mslice, int __pyx_v_ndim) { - int __pyx_v_i; - Py_ssize_t __pyx_v_c_stride; - Py_ssize_t __pyx_v_f_stride; - char __pyx_r; - int __pyx_t_1; - int __pyx_t_2; - int __pyx_t_3; - int __pyx_t_4; - - /* "View.MemoryView":1121 - * """ - * cdef int i - * cdef Py_ssize_t c_stride = 0 # <<<<<<<<<<<<<< - * cdef Py_ssize_t f_stride = 0 - * - */ - __pyx_v_c_stride = 0; - - /* "View.MemoryView":1122 - * cdef int i - * cdef Py_ssize_t c_stride = 0 - * cdef Py_ssize_t f_stride = 0 # <<<<<<<<<<<<<< - * - * for i in range(ndim - 1, -1, -1): - */ - __pyx_v_f_stride = 0; - - /* "View.MemoryView":1124 - * cdef Py_ssize_t f_stride = 0 - * - * for i in range(ndim - 1, -1, -1): # <<<<<<<<<<<<<< - * if mslice.shape[i] > 1: - * c_stride = mslice.strides[i] - */ - for (__pyx_t_1 = (__pyx_v_ndim - 1); __pyx_t_1 > -1; __pyx_t_1-=1) { - __pyx_v_i = __pyx_t_1; - - /* "View.MemoryView":1125 - * - * for i in range(ndim - 1, -1, -1): - * if mslice.shape[i] > 1: # <<<<<<<<<<<<<< - * c_stride = mslice.strides[i] - * break - */ - __pyx_t_2 = (((__pyx_v_mslice->shape[__pyx_v_i]) > 1) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1126 - * for i in range(ndim - 1, -1, -1): - * if mslice.shape[i] > 1: - * c_stride = mslice.strides[i] # <<<<<<<<<<<<<< - * break - * - */ - __pyx_v_c_stride = (__pyx_v_mslice->strides[__pyx_v_i]); - - /* "View.MemoryView":1127 - * if mslice.shape[i] > 1: - * c_stride = mslice.strides[i] - * break # <<<<<<<<<<<<<< - * - * for i in range(ndim): - */ - goto __pyx_L4_break; - - /* "View.MemoryView":1125 - * - * for i in range(ndim - 1, -1, -1): - * if mslice.shape[i] > 1: # <<<<<<<<<<<<<< - * c_stride = mslice.strides[i] - * break - */ - } - } - __pyx_L4_break:; - - /* "View.MemoryView":1129 - * break - * - * for i in range(ndim): # <<<<<<<<<<<<<< - * if mslice.shape[i] > 1: - * f_stride = mslice.strides[i] - */ - __pyx_t_1 = __pyx_v_ndim; - __pyx_t_3 = __pyx_t_1; - for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) { - __pyx_v_i = __pyx_t_4; - - /* "View.MemoryView":1130 - * - * for i in range(ndim): - * if mslice.shape[i] > 1: # <<<<<<<<<<<<<< - * f_stride = mslice.strides[i] - * break - */ - __pyx_t_2 = (((__pyx_v_mslice->shape[__pyx_v_i]) > 1) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1131 - * for i in range(ndim): - * if mslice.shape[i] > 1: - * f_stride = mslice.strides[i] # <<<<<<<<<<<<<< - * break - * - */ - __pyx_v_f_stride = (__pyx_v_mslice->strides[__pyx_v_i]); - - /* "View.MemoryView":1132 - * if mslice.shape[i] > 1: - * f_stride = mslice.strides[i] - * break # <<<<<<<<<<<<<< - * - * if abs_py_ssize_t(c_stride) <= abs_py_ssize_t(f_stride): - */ - goto __pyx_L7_break; - - /* "View.MemoryView":1130 - * - * for i in range(ndim): - * if mslice.shape[i] > 1: # <<<<<<<<<<<<<< - * f_stride = mslice.strides[i] - * break - */ - } - } - __pyx_L7_break:; - - /* "View.MemoryView":1134 - * break - * - * if abs_py_ssize_t(c_stride) <= abs_py_ssize_t(f_stride): # <<<<<<<<<<<<<< - * return 'C' - * else: - */ - __pyx_t_2 = ((abs_py_ssize_t(__pyx_v_c_stride) <= abs_py_ssize_t(__pyx_v_f_stride)) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1135 - * - * if abs_py_ssize_t(c_stride) <= abs_py_ssize_t(f_stride): - * return 'C' # <<<<<<<<<<<<<< - * else: - * return 'F' - */ - __pyx_r = 'C'; - goto __pyx_L0; - - /* "View.MemoryView":1134 - * break - * - * if abs_py_ssize_t(c_stride) <= abs_py_ssize_t(f_stride): # <<<<<<<<<<<<<< - * return 'C' - * else: - */ - } - - /* "View.MemoryView":1137 - * return 'C' - * else: - * return 'F' # <<<<<<<<<<<<<< - * - * @cython.cdivision(True) - */ - /*else*/ { - __pyx_r = 'F'; - goto __pyx_L0; - } - - /* "View.MemoryView":1116 - * - * @cname('__pyx_get_best_slice_order') - * cdef char get_best_order(__Pyx_memviewslice *mslice, int ndim) nogil: # <<<<<<<<<<<<<< - * """ - * Figure out the best memory access order for a given slice. - */ - - /* function exit code */ - __pyx_L0:; - return __pyx_r; -} - -/* "View.MemoryView":1140 - * - * @cython.cdivision(True) - * cdef void _copy_strided_to_strided(char *src_data, Py_ssize_t *src_strides, # <<<<<<<<<<<<<< - * char *dst_data, Py_ssize_t *dst_strides, - * Py_ssize_t *src_shape, Py_ssize_t *dst_shape, - */ - -static void _copy_strided_to_strided(char *__pyx_v_src_data, Py_ssize_t *__pyx_v_src_strides, char *__pyx_v_dst_data, Py_ssize_t *__pyx_v_dst_strides, Py_ssize_t *__pyx_v_src_shape, Py_ssize_t *__pyx_v_dst_shape, int __pyx_v_ndim, size_t __pyx_v_itemsize) { - CYTHON_UNUSED Py_ssize_t __pyx_v_i; - CYTHON_UNUSED Py_ssize_t __pyx_v_src_extent; - Py_ssize_t __pyx_v_dst_extent; - Py_ssize_t __pyx_v_src_stride; - Py_ssize_t __pyx_v_dst_stride; - int __pyx_t_1; - int __pyx_t_2; - int __pyx_t_3; - Py_ssize_t __pyx_t_4; - Py_ssize_t __pyx_t_5; - Py_ssize_t __pyx_t_6; - - /* "View.MemoryView":1147 - * - * cdef Py_ssize_t i - * cdef Py_ssize_t src_extent = src_shape[0] # <<<<<<<<<<<<<< - * cdef Py_ssize_t dst_extent = dst_shape[0] - * cdef Py_ssize_t src_stride = src_strides[0] - */ - __pyx_v_src_extent = (__pyx_v_src_shape[0]); - - /* "View.MemoryView":1148 - * cdef Py_ssize_t i - * cdef Py_ssize_t src_extent = src_shape[0] - * cdef Py_ssize_t dst_extent = dst_shape[0] # <<<<<<<<<<<<<< - * cdef Py_ssize_t src_stride = src_strides[0] - * cdef Py_ssize_t dst_stride = dst_strides[0] - */ - __pyx_v_dst_extent = (__pyx_v_dst_shape[0]); - - /* "View.MemoryView":1149 - * cdef Py_ssize_t src_extent = src_shape[0] - * cdef Py_ssize_t dst_extent = dst_shape[0] - * cdef Py_ssize_t src_stride = src_strides[0] # <<<<<<<<<<<<<< - * cdef Py_ssize_t dst_stride = dst_strides[0] - * - */ - __pyx_v_src_stride = (__pyx_v_src_strides[0]); - - /* "View.MemoryView":1150 - * cdef Py_ssize_t dst_extent = dst_shape[0] - * cdef Py_ssize_t src_stride = src_strides[0] - * cdef Py_ssize_t dst_stride = dst_strides[0] # <<<<<<<<<<<<<< - * - * if ndim == 1: - */ - __pyx_v_dst_stride = (__pyx_v_dst_strides[0]); - - /* "View.MemoryView":1152 - * cdef Py_ssize_t dst_stride = dst_strides[0] - * - * if ndim == 1: # <<<<<<<<<<<<<< - * if (src_stride > 0 and dst_stride > 0 and - * src_stride == itemsize == dst_stride): - */ - __pyx_t_1 = ((__pyx_v_ndim == 1) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":1153 - * - * if ndim == 1: - * if (src_stride > 0 and dst_stride > 0 and # <<<<<<<<<<<<<< - * src_stride == itemsize == dst_stride): - * memcpy(dst_data, src_data, itemsize * dst_extent) - */ - __pyx_t_2 = ((__pyx_v_src_stride > 0) != 0); - if (__pyx_t_2) { - } else { - __pyx_t_1 = __pyx_t_2; - goto __pyx_L5_bool_binop_done; - } - __pyx_t_2 = ((__pyx_v_dst_stride > 0) != 0); - if (__pyx_t_2) { - } else { - __pyx_t_1 = __pyx_t_2; - goto __pyx_L5_bool_binop_done; - } - - /* "View.MemoryView":1154 - * if ndim == 1: - * if (src_stride > 0 and dst_stride > 0 and - * src_stride == itemsize == dst_stride): # <<<<<<<<<<<<<< - * memcpy(dst_data, src_data, itemsize * dst_extent) - * else: - */ - __pyx_t_2 = (((size_t)__pyx_v_src_stride) == __pyx_v_itemsize); - if (__pyx_t_2) { - __pyx_t_2 = (__pyx_v_itemsize == ((size_t)__pyx_v_dst_stride)); - } - __pyx_t_3 = (__pyx_t_2 != 0); - __pyx_t_1 = __pyx_t_3; - __pyx_L5_bool_binop_done:; - - /* "View.MemoryView":1153 - * - * if ndim == 1: - * if (src_stride > 0 and dst_stride > 0 and # <<<<<<<<<<<<<< - * src_stride == itemsize == dst_stride): - * memcpy(dst_data, src_data, itemsize * dst_extent) - */ - if (__pyx_t_1) { - - /* "View.MemoryView":1155 - * if (src_stride > 0 and dst_stride > 0 and - * src_stride == itemsize == dst_stride): - * memcpy(dst_data, src_data, itemsize * dst_extent) # <<<<<<<<<<<<<< - * else: - * for i in range(dst_extent): - */ - (void)(memcpy(__pyx_v_dst_data, __pyx_v_src_data, (__pyx_v_itemsize * __pyx_v_dst_extent))); - - /* "View.MemoryView":1153 - * - * if ndim == 1: - * if (src_stride > 0 and dst_stride > 0 and # <<<<<<<<<<<<<< - * src_stride == itemsize == dst_stride): - * memcpy(dst_data, src_data, itemsize * dst_extent) - */ - goto __pyx_L4; - } - - /* "View.MemoryView":1157 - * memcpy(dst_data, src_data, itemsize * dst_extent) - * else: - * for i in range(dst_extent): # <<<<<<<<<<<<<< - * memcpy(dst_data, src_data, itemsize) - * src_data += src_stride - */ - /*else*/ { - __pyx_t_4 = __pyx_v_dst_extent; - __pyx_t_5 = __pyx_t_4; - for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) { - __pyx_v_i = __pyx_t_6; - - /* "View.MemoryView":1158 - * else: - * for i in range(dst_extent): - * memcpy(dst_data, src_data, itemsize) # <<<<<<<<<<<<<< - * src_data += src_stride - * dst_data += dst_stride - */ - (void)(memcpy(__pyx_v_dst_data, __pyx_v_src_data, __pyx_v_itemsize)); - - /* "View.MemoryView":1159 - * for i in range(dst_extent): - * memcpy(dst_data, src_data, itemsize) - * src_data += src_stride # <<<<<<<<<<<<<< - * dst_data += dst_stride - * else: - */ - __pyx_v_src_data = (__pyx_v_src_data + __pyx_v_src_stride); - - /* "View.MemoryView":1160 - * memcpy(dst_data, src_data, itemsize) - * src_data += src_stride - * dst_data += dst_stride # <<<<<<<<<<<<<< - * else: - * for i in range(dst_extent): - */ - __pyx_v_dst_data = (__pyx_v_dst_data + __pyx_v_dst_stride); - } - } - __pyx_L4:; - - /* "View.MemoryView":1152 - * cdef Py_ssize_t dst_stride = dst_strides[0] - * - * if ndim == 1: # <<<<<<<<<<<<<< - * if (src_stride > 0 and dst_stride > 0 and - * src_stride == itemsize == dst_stride): - */ - goto __pyx_L3; - } - - /* "View.MemoryView":1162 - * dst_data += dst_stride - * else: - * for i in range(dst_extent): # <<<<<<<<<<<<<< - * _copy_strided_to_strided(src_data, src_strides + 1, - * dst_data, dst_strides + 1, - */ - /*else*/ { - __pyx_t_4 = __pyx_v_dst_extent; - __pyx_t_5 = __pyx_t_4; - for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) { - __pyx_v_i = __pyx_t_6; - - /* "View.MemoryView":1163 - * else: - * for i in range(dst_extent): - * _copy_strided_to_strided(src_data, src_strides + 1, # <<<<<<<<<<<<<< - * dst_data, dst_strides + 1, - * src_shape + 1, dst_shape + 1, - */ - _copy_strided_to_strided(__pyx_v_src_data, (__pyx_v_src_strides + 1), __pyx_v_dst_data, (__pyx_v_dst_strides + 1), (__pyx_v_src_shape + 1), (__pyx_v_dst_shape + 1), (__pyx_v_ndim - 1), __pyx_v_itemsize); - - /* "View.MemoryView":1167 - * src_shape + 1, dst_shape + 1, - * ndim - 1, itemsize) - * src_data += src_stride # <<<<<<<<<<<<<< - * dst_data += dst_stride - * - */ - __pyx_v_src_data = (__pyx_v_src_data + __pyx_v_src_stride); - - /* "View.MemoryView":1168 - * ndim - 1, itemsize) - * src_data += src_stride - * dst_data += dst_stride # <<<<<<<<<<<<<< - * - * cdef void copy_strided_to_strided(__Pyx_memviewslice *src, - */ - __pyx_v_dst_data = (__pyx_v_dst_data + __pyx_v_dst_stride); - } - } - __pyx_L3:; - - /* "View.MemoryView":1140 - * - * @cython.cdivision(True) - * cdef void _copy_strided_to_strided(char *src_data, Py_ssize_t *src_strides, # <<<<<<<<<<<<<< - * char *dst_data, Py_ssize_t *dst_strides, - * Py_ssize_t *src_shape, Py_ssize_t *dst_shape, - */ - - /* function exit code */ -} - -/* "View.MemoryView":1170 - * dst_data += dst_stride - * - * cdef void copy_strided_to_strided(__Pyx_memviewslice *src, # <<<<<<<<<<<<<< - * __Pyx_memviewslice *dst, - * int ndim, size_t itemsize) nogil: - */ - -static void copy_strided_to_strided(__Pyx_memviewslice *__pyx_v_src, __Pyx_memviewslice *__pyx_v_dst, int __pyx_v_ndim, size_t __pyx_v_itemsize) { - - /* "View.MemoryView":1173 - * __Pyx_memviewslice *dst, - * int ndim, size_t itemsize) nogil: - * _copy_strided_to_strided(src.data, src.strides, dst.data, dst.strides, # <<<<<<<<<<<<<< - * src.shape, dst.shape, ndim, itemsize) - * - */ - _copy_strided_to_strided(__pyx_v_src->data, __pyx_v_src->strides, __pyx_v_dst->data, __pyx_v_dst->strides, __pyx_v_src->shape, __pyx_v_dst->shape, __pyx_v_ndim, __pyx_v_itemsize); - - /* "View.MemoryView":1170 - * dst_data += dst_stride - * - * cdef void copy_strided_to_strided(__Pyx_memviewslice *src, # <<<<<<<<<<<<<< - * __Pyx_memviewslice *dst, - * int ndim, size_t itemsize) nogil: - */ - - /* function exit code */ -} - -/* "View.MemoryView":1177 - * - * @cname('__pyx_memoryview_slice_get_size') - * cdef Py_ssize_t slice_get_size(__Pyx_memviewslice *src, int ndim) nogil: # <<<<<<<<<<<<<< - * "Return the size of the memory occupied by the slice in number of bytes" - * cdef Py_ssize_t shape, size = src.memview.view.itemsize - */ - -static Py_ssize_t __pyx_memoryview_slice_get_size(__Pyx_memviewslice *__pyx_v_src, int __pyx_v_ndim) { - Py_ssize_t __pyx_v_shape; - Py_ssize_t __pyx_v_size; - Py_ssize_t __pyx_r; - Py_ssize_t __pyx_t_1; - Py_ssize_t *__pyx_t_2; - Py_ssize_t *__pyx_t_3; - Py_ssize_t *__pyx_t_4; - - /* "View.MemoryView":1179 - * cdef Py_ssize_t slice_get_size(__Pyx_memviewslice *src, int ndim) nogil: - * "Return the size of the memory occupied by the slice in number of bytes" - * cdef Py_ssize_t shape, size = src.memview.view.itemsize # <<<<<<<<<<<<<< - * - * for shape in src.shape[:ndim]: - */ - __pyx_t_1 = __pyx_v_src->memview->view.itemsize; - __pyx_v_size = __pyx_t_1; - - /* "View.MemoryView":1181 - * cdef Py_ssize_t shape, size = src.memview.view.itemsize - * - * for shape in src.shape[:ndim]: # <<<<<<<<<<<<<< - * size *= shape - * - */ - __pyx_t_3 = (__pyx_v_src->shape + __pyx_v_ndim); - for (__pyx_t_4 = __pyx_v_src->shape; __pyx_t_4 < __pyx_t_3; __pyx_t_4++) { - __pyx_t_2 = __pyx_t_4; - __pyx_v_shape = (__pyx_t_2[0]); - - /* "View.MemoryView":1182 - * - * for shape in src.shape[:ndim]: - * size *= shape # <<<<<<<<<<<<<< - * - * return size - */ - __pyx_v_size = (__pyx_v_size * __pyx_v_shape); - } - - /* "View.MemoryView":1184 - * size *= shape - * - * return size # <<<<<<<<<<<<<< - * - * @cname('__pyx_fill_contig_strides_array') - */ - __pyx_r = __pyx_v_size; - goto __pyx_L0; - - /* "View.MemoryView":1177 - * - * @cname('__pyx_memoryview_slice_get_size') - * cdef Py_ssize_t slice_get_size(__Pyx_memviewslice *src, int ndim) nogil: # <<<<<<<<<<<<<< - * "Return the size of the memory occupied by the slice in number of bytes" - * cdef Py_ssize_t shape, size = src.memview.view.itemsize - */ - - /* function exit code */ - __pyx_L0:; - return __pyx_r; -} - -/* "View.MemoryView":1187 - * - * @cname('__pyx_fill_contig_strides_array') - * cdef Py_ssize_t fill_contig_strides_array( # <<<<<<<<<<<<<< - * Py_ssize_t *shape, Py_ssize_t *strides, Py_ssize_t stride, - * int ndim, char order) nogil: - */ - -static Py_ssize_t __pyx_fill_contig_strides_array(Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, Py_ssize_t __pyx_v_stride, int __pyx_v_ndim, char __pyx_v_order) { - int __pyx_v_idx; - Py_ssize_t __pyx_r; - int __pyx_t_1; - int __pyx_t_2; - int __pyx_t_3; - int __pyx_t_4; - - /* "View.MemoryView":1196 - * cdef int idx - * - * if order == 'F': # <<<<<<<<<<<<<< - * for idx in range(ndim): - * strides[idx] = stride - */ - __pyx_t_1 = ((__pyx_v_order == 'F') != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":1197 - * - * if order == 'F': - * for idx in range(ndim): # <<<<<<<<<<<<<< - * strides[idx] = stride - * stride *= shape[idx] - */ - __pyx_t_2 = __pyx_v_ndim; - __pyx_t_3 = __pyx_t_2; - for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) { - __pyx_v_idx = __pyx_t_4; - - /* "View.MemoryView":1198 - * if order == 'F': - * for idx in range(ndim): - * strides[idx] = stride # <<<<<<<<<<<<<< - * stride *= shape[idx] - * else: - */ - (__pyx_v_strides[__pyx_v_idx]) = __pyx_v_stride; - - /* "View.MemoryView":1199 - * for idx in range(ndim): - * strides[idx] = stride - * stride *= shape[idx] # <<<<<<<<<<<<<< - * else: - * for idx in range(ndim - 1, -1, -1): - */ - __pyx_v_stride = (__pyx_v_stride * (__pyx_v_shape[__pyx_v_idx])); - } - - /* "View.MemoryView":1196 - * cdef int idx - * - * if order == 'F': # <<<<<<<<<<<<<< - * for idx in range(ndim): - * strides[idx] = stride - */ - goto __pyx_L3; - } - - /* "View.MemoryView":1201 - * stride *= shape[idx] - * else: - * for idx in range(ndim - 1, -1, -1): # <<<<<<<<<<<<<< - * strides[idx] = stride - * stride *= shape[idx] - */ - /*else*/ { - for (__pyx_t_2 = (__pyx_v_ndim - 1); __pyx_t_2 > -1; __pyx_t_2-=1) { - __pyx_v_idx = __pyx_t_2; - - /* "View.MemoryView":1202 - * else: - * for idx in range(ndim - 1, -1, -1): - * strides[idx] = stride # <<<<<<<<<<<<<< - * stride *= shape[idx] - * - */ - (__pyx_v_strides[__pyx_v_idx]) = __pyx_v_stride; - - /* "View.MemoryView":1203 - * for idx in range(ndim - 1, -1, -1): - * strides[idx] = stride - * stride *= shape[idx] # <<<<<<<<<<<<<< - * - * return stride - */ - __pyx_v_stride = (__pyx_v_stride * (__pyx_v_shape[__pyx_v_idx])); - } - } - __pyx_L3:; - - /* "View.MemoryView":1205 - * stride *= shape[idx] - * - * return stride # <<<<<<<<<<<<<< - * - * @cname('__pyx_memoryview_copy_data_to_temp') - */ - __pyx_r = __pyx_v_stride; - goto __pyx_L0; - - /* "View.MemoryView":1187 - * - * @cname('__pyx_fill_contig_strides_array') - * cdef Py_ssize_t fill_contig_strides_array( # <<<<<<<<<<<<<< - * Py_ssize_t *shape, Py_ssize_t *strides, Py_ssize_t stride, - * int ndim, char order) nogil: - */ - - /* function exit code */ - __pyx_L0:; - return __pyx_r; -} - -/* "View.MemoryView":1208 - * - * @cname('__pyx_memoryview_copy_data_to_temp') - * cdef void *copy_data_to_temp(__Pyx_memviewslice *src, # <<<<<<<<<<<<<< - * __Pyx_memviewslice *tmpslice, - * char order, - */ - -static void *__pyx_memoryview_copy_data_to_temp(__Pyx_memviewslice *__pyx_v_src, __Pyx_memviewslice *__pyx_v_tmpslice, char __pyx_v_order, int __pyx_v_ndim) { - int __pyx_v_i; - void *__pyx_v_result; - size_t __pyx_v_itemsize; - size_t __pyx_v_size; - void *__pyx_r; - Py_ssize_t __pyx_t_1; - int __pyx_t_2; - int __pyx_t_3; - struct __pyx_memoryview_obj *__pyx_t_4; - int __pyx_t_5; - int __pyx_t_6; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - - /* "View.MemoryView":1219 - * cdef void *result - * - * cdef size_t itemsize = src.memview.view.itemsize # <<<<<<<<<<<<<< - * cdef size_t size = slice_get_size(src, ndim) - * - */ - __pyx_t_1 = __pyx_v_src->memview->view.itemsize; - __pyx_v_itemsize = __pyx_t_1; - - /* "View.MemoryView":1220 - * - * cdef size_t itemsize = src.memview.view.itemsize - * cdef size_t size = slice_get_size(src, ndim) # <<<<<<<<<<<<<< - * - * result = malloc(size) - */ - __pyx_v_size = __pyx_memoryview_slice_get_size(__pyx_v_src, __pyx_v_ndim); - - /* "View.MemoryView":1222 - * cdef size_t size = slice_get_size(src, ndim) - * - * result = malloc(size) # <<<<<<<<<<<<<< - * if not result: - * _err(MemoryError, NULL) - */ - __pyx_v_result = malloc(__pyx_v_size); - - /* "View.MemoryView":1223 - * - * result = malloc(size) - * if not result: # <<<<<<<<<<<<<< - * _err(MemoryError, NULL) - * - */ - __pyx_t_2 = ((!(__pyx_v_result != 0)) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1224 - * result = malloc(size) - * if not result: - * _err(MemoryError, NULL) # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_3 = __pyx_memoryview_err(__pyx_builtin_MemoryError, NULL); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(2, 1224, __pyx_L1_error) - - /* "View.MemoryView":1223 - * - * result = malloc(size) - * if not result: # <<<<<<<<<<<<<< - * _err(MemoryError, NULL) - * - */ - } - - /* "View.MemoryView":1227 - * - * - * tmpslice.data = result # <<<<<<<<<<<<<< - * tmpslice.memview = src.memview - * for i in range(ndim): - */ - __pyx_v_tmpslice->data = ((char *)__pyx_v_result); - - /* "View.MemoryView":1228 - * - * tmpslice.data = result - * tmpslice.memview = src.memview # <<<<<<<<<<<<<< - * for i in range(ndim): - * tmpslice.shape[i] = src.shape[i] - */ - __pyx_t_4 = __pyx_v_src->memview; - __pyx_v_tmpslice->memview = __pyx_t_4; - - /* "View.MemoryView":1229 - * tmpslice.data = result - * tmpslice.memview = src.memview - * for i in range(ndim): # <<<<<<<<<<<<<< - * tmpslice.shape[i] = src.shape[i] - * tmpslice.suboffsets[i] = -1 - */ - __pyx_t_3 = __pyx_v_ndim; - __pyx_t_5 = __pyx_t_3; - for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) { - __pyx_v_i = __pyx_t_6; - - /* "View.MemoryView":1230 - * tmpslice.memview = src.memview - * for i in range(ndim): - * tmpslice.shape[i] = src.shape[i] # <<<<<<<<<<<<<< - * tmpslice.suboffsets[i] = -1 - * - */ - (__pyx_v_tmpslice->shape[__pyx_v_i]) = (__pyx_v_src->shape[__pyx_v_i]); - - /* "View.MemoryView":1231 - * for i in range(ndim): - * tmpslice.shape[i] = src.shape[i] - * tmpslice.suboffsets[i] = -1 # <<<<<<<<<<<<<< - * - * fill_contig_strides_array(&tmpslice.shape[0], &tmpslice.strides[0], itemsize, - */ - (__pyx_v_tmpslice->suboffsets[__pyx_v_i]) = -1L; - } - - /* "View.MemoryView":1233 - * tmpslice.suboffsets[i] = -1 - * - * fill_contig_strides_array(&tmpslice.shape[0], &tmpslice.strides[0], itemsize, # <<<<<<<<<<<<<< - * ndim, order) - * - */ - (void)(__pyx_fill_contig_strides_array((&(__pyx_v_tmpslice->shape[0])), (&(__pyx_v_tmpslice->strides[0])), __pyx_v_itemsize, __pyx_v_ndim, __pyx_v_order)); - - /* "View.MemoryView":1237 - * - * - * for i in range(ndim): # <<<<<<<<<<<<<< - * if tmpslice.shape[i] == 1: - * tmpslice.strides[i] = 0 - */ - __pyx_t_3 = __pyx_v_ndim; - __pyx_t_5 = __pyx_t_3; - for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) { - __pyx_v_i = __pyx_t_6; - - /* "View.MemoryView":1238 - * - * for i in range(ndim): - * if tmpslice.shape[i] == 1: # <<<<<<<<<<<<<< - * tmpslice.strides[i] = 0 - * - */ - __pyx_t_2 = (((__pyx_v_tmpslice->shape[__pyx_v_i]) == 1) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1239 - * for i in range(ndim): - * if tmpslice.shape[i] == 1: - * tmpslice.strides[i] = 0 # <<<<<<<<<<<<<< - * - * if slice_is_contig(src[0], order, ndim): - */ - (__pyx_v_tmpslice->strides[__pyx_v_i]) = 0; - - /* "View.MemoryView":1238 - * - * for i in range(ndim): - * if tmpslice.shape[i] == 1: # <<<<<<<<<<<<<< - * tmpslice.strides[i] = 0 - * - */ - } - } - - /* "View.MemoryView":1241 - * tmpslice.strides[i] = 0 - * - * if slice_is_contig(src[0], order, ndim): # <<<<<<<<<<<<<< - * memcpy(result, src.data, size) - * else: - */ - __pyx_t_2 = (__pyx_memviewslice_is_contig((__pyx_v_src[0]), __pyx_v_order, __pyx_v_ndim) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1242 - * - * if slice_is_contig(src[0], order, ndim): - * memcpy(result, src.data, size) # <<<<<<<<<<<<<< - * else: - * copy_strided_to_strided(src, tmpslice, ndim, itemsize) - */ - (void)(memcpy(__pyx_v_result, __pyx_v_src->data, __pyx_v_size)); - - /* "View.MemoryView":1241 - * tmpslice.strides[i] = 0 - * - * if slice_is_contig(src[0], order, ndim): # <<<<<<<<<<<<<< - * memcpy(result, src.data, size) - * else: - */ - goto __pyx_L9; - } - - /* "View.MemoryView":1244 - * memcpy(result, src.data, size) - * else: - * copy_strided_to_strided(src, tmpslice, ndim, itemsize) # <<<<<<<<<<<<<< - * - * return result - */ - /*else*/ { - copy_strided_to_strided(__pyx_v_src, __pyx_v_tmpslice, __pyx_v_ndim, __pyx_v_itemsize); - } - __pyx_L9:; - - /* "View.MemoryView":1246 - * copy_strided_to_strided(src, tmpslice, ndim, itemsize) - * - * return result # <<<<<<<<<<<<<< - * - * - */ - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - /* "View.MemoryView":1208 - * - * @cname('__pyx_memoryview_copy_data_to_temp') - * cdef void *copy_data_to_temp(__Pyx_memviewslice *src, # <<<<<<<<<<<<<< - * __Pyx_memviewslice *tmpslice, - * char order, - */ - - /* function exit code */ - __pyx_L1_error:; - { - #ifdef WITH_THREAD - PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure(); - #endif - __Pyx_AddTraceback("View.MemoryView.copy_data_to_temp", __pyx_clineno, __pyx_lineno, __pyx_filename); - #ifdef WITH_THREAD - __Pyx_PyGILState_Release(__pyx_gilstate_save); - #endif - } - __pyx_r = NULL; - __pyx_L0:; - return __pyx_r; -} - -/* "View.MemoryView":1251 - * - * @cname('__pyx_memoryview_err_extents') - * cdef int _err_extents(int i, Py_ssize_t extent1, # <<<<<<<<<<<<<< - * Py_ssize_t extent2) except -1 with gil: - * raise ValueError("got differing extents in dimension %d (got %d and %d)" % - */ - -static int __pyx_memoryview_err_extents(int __pyx_v_i, Py_ssize_t __pyx_v_extent1, Py_ssize_t __pyx_v_extent2) { - int __pyx_r; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - #ifdef WITH_THREAD - PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure(); - #endif - __Pyx_RefNannySetupContext("_err_extents", 0); - - /* "View.MemoryView":1254 - * Py_ssize_t extent2) except -1 with gil: - * raise ValueError("got differing extents in dimension %d (got %d and %d)" % - * (i, extent1, extent2)) # <<<<<<<<<<<<<< - * - * @cname('__pyx_memoryview_err_dim') - */ - __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_i); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1254, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyInt_FromSsize_t(__pyx_v_extent1); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1254, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyInt_FromSsize_t(__pyx_v_extent2); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 1254, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 1254, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_3); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_3 = 0; - - /* "View.MemoryView":1253 - * cdef int _err_extents(int i, Py_ssize_t extent1, - * Py_ssize_t extent2) except -1 with gil: - * raise ValueError("got differing extents in dimension %d (got %d and %d)" % # <<<<<<<<<<<<<< - * (i, extent1, extent2)) - * - */ - __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_got_differing_extents_in_dimensi, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 1253, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_builtin_ValueError, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 1253, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_Raise(__pyx_t_4, 0, 0, 0); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __PYX_ERR(2, 1253, __pyx_L1_error) - - /* "View.MemoryView":1251 - * - * @cname('__pyx_memoryview_err_extents') - * cdef int _err_extents(int i, Py_ssize_t extent1, # <<<<<<<<<<<<<< - * Py_ssize_t extent2) except -1 with gil: - * raise ValueError("got differing extents in dimension %d (got %d and %d)" % - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("View.MemoryView._err_extents", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; - __Pyx_RefNannyFinishContext(); - #ifdef WITH_THREAD - __Pyx_PyGILState_Release(__pyx_gilstate_save); - #endif - return __pyx_r; -} - -/* "View.MemoryView":1257 - * - * @cname('__pyx_memoryview_err_dim') - * cdef int _err_dim(object error, char *msg, int dim) except -1 with gil: # <<<<<<<<<<<<<< - * raise error(msg.decode('ascii') % dim) - * - */ - -static int __pyx_memoryview_err_dim(PyObject *__pyx_v_error, char *__pyx_v_msg, int __pyx_v_dim) { - int __pyx_r; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - #ifdef WITH_THREAD - PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure(); - #endif - __Pyx_RefNannySetupContext("_err_dim", 0); - __Pyx_INCREF(__pyx_v_error); - - /* "View.MemoryView":1258 - * @cname('__pyx_memoryview_err_dim') - * cdef int _err_dim(object error, char *msg, int dim) except -1 with gil: - * raise error(msg.decode('ascii') % dim) # <<<<<<<<<<<<<< - * - * @cname('__pyx_memoryview_err') - */ - __pyx_t_2 = __Pyx_decode_c_string(__pyx_v_msg, 0, strlen(__pyx_v_msg), NULL, NULL, PyUnicode_DecodeASCII); if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1258, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_dim); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 1258, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyUnicode_Format(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 1258, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_INCREF(__pyx_v_error); - __pyx_t_3 = __pyx_v_error; __pyx_t_2 = NULL; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_2)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_2); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - } - } - __pyx_t_1 = (__pyx_t_2) ? __Pyx_PyObject_Call2Args(__pyx_t_3, __pyx_t_2, __pyx_t_4) : __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_4); - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1258, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_Raise(__pyx_t_1, 0, 0, 0); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __PYX_ERR(2, 1258, __pyx_L1_error) - - /* "View.MemoryView":1257 - * - * @cname('__pyx_memoryview_err_dim') - * cdef int _err_dim(object error, char *msg, int dim) except -1 with gil: # <<<<<<<<<<<<<< - * raise error(msg.decode('ascii') % dim) - * - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("View.MemoryView._err_dim", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; - __Pyx_XDECREF(__pyx_v_error); - __Pyx_RefNannyFinishContext(); - #ifdef WITH_THREAD - __Pyx_PyGILState_Release(__pyx_gilstate_save); - #endif - return __pyx_r; -} - -/* "View.MemoryView":1261 - * - * @cname('__pyx_memoryview_err') - * cdef int _err(object error, char *msg) except -1 with gil: # <<<<<<<<<<<<<< - * if msg != NULL: - * raise error(msg.decode('ascii')) - */ - -static int __pyx_memoryview_err(PyObject *__pyx_v_error, char *__pyx_v_msg) { - int __pyx_r; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - #ifdef WITH_THREAD - PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure(); - #endif - __Pyx_RefNannySetupContext("_err", 0); - __Pyx_INCREF(__pyx_v_error); - - /* "View.MemoryView":1262 - * @cname('__pyx_memoryview_err') - * cdef int _err(object error, char *msg) except -1 with gil: - * if msg != NULL: # <<<<<<<<<<<<<< - * raise error(msg.decode('ascii')) - * else: - */ - __pyx_t_1 = ((__pyx_v_msg != NULL) != 0); - if (unlikely(__pyx_t_1)) { - - /* "View.MemoryView":1263 - * cdef int _err(object error, char *msg) except -1 with gil: - * if msg != NULL: - * raise error(msg.decode('ascii')) # <<<<<<<<<<<<<< - * else: - * raise error - */ - __pyx_t_3 = __Pyx_decode_c_string(__pyx_v_msg, 0, strlen(__pyx_v_msg), NULL, NULL, PyUnicode_DecodeASCII); if (unlikely(!__pyx_t_3)) __PYX_ERR(2, 1263, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_v_error); - __pyx_t_4 = __pyx_v_error; __pyx_t_5 = NULL; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_4))) { - __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_4); - if (likely(__pyx_t_5)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_4, function); - } - } - __pyx_t_2 = (__pyx_t_5) ? __Pyx_PyObject_Call2Args(__pyx_t_4, __pyx_t_5, __pyx_t_3) : __Pyx_PyObject_CallOneArg(__pyx_t_4, __pyx_t_3); - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1263, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_Raise(__pyx_t_2, 0, 0, 0); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __PYX_ERR(2, 1263, __pyx_L1_error) - - /* "View.MemoryView":1262 - * @cname('__pyx_memoryview_err') - * cdef int _err(object error, char *msg) except -1 with gil: - * if msg != NULL: # <<<<<<<<<<<<<< - * raise error(msg.decode('ascii')) - * else: - */ - } - - /* "View.MemoryView":1265 - * raise error(msg.decode('ascii')) - * else: - * raise error # <<<<<<<<<<<<<< - * - * @cname('__pyx_memoryview_copy_contents') - */ - /*else*/ { - __Pyx_Raise(__pyx_v_error, 0, 0, 0); - __PYX_ERR(2, 1265, __pyx_L1_error) - } - - /* "View.MemoryView":1261 - * - * @cname('__pyx_memoryview_err') - * cdef int _err(object error, char *msg) except -1 with gil: # <<<<<<<<<<<<<< - * if msg != NULL: - * raise error(msg.decode('ascii')) - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("View.MemoryView._err", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = -1; - __Pyx_XDECREF(__pyx_v_error); - __Pyx_RefNannyFinishContext(); - #ifdef WITH_THREAD - __Pyx_PyGILState_Release(__pyx_gilstate_save); - #endif - return __pyx_r; -} - -/* "View.MemoryView":1268 - * - * @cname('__pyx_memoryview_copy_contents') - * cdef int memoryview_copy_contents(__Pyx_memviewslice src, # <<<<<<<<<<<<<< - * __Pyx_memviewslice dst, - * int src_ndim, int dst_ndim, - */ - -static int __pyx_memoryview_copy_contents(__Pyx_memviewslice __pyx_v_src, __Pyx_memviewslice __pyx_v_dst, int __pyx_v_src_ndim, int __pyx_v_dst_ndim, int __pyx_v_dtype_is_object) { - void *__pyx_v_tmpdata; - size_t __pyx_v_itemsize; - int __pyx_v_i; - char __pyx_v_order; - int __pyx_v_broadcasting; - int __pyx_v_direct_copy; - __Pyx_memviewslice __pyx_v_tmp; - int __pyx_v_ndim; - int __pyx_r; - Py_ssize_t __pyx_t_1; - int __pyx_t_2; - int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - int __pyx_t_6; - void *__pyx_t_7; - int __pyx_t_8; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - - /* "View.MemoryView":1276 - * Check for overlapping memory and verify the shapes. - * """ - * cdef void *tmpdata = NULL # <<<<<<<<<<<<<< - * cdef size_t itemsize = src.memview.view.itemsize - * cdef int i - */ - __pyx_v_tmpdata = NULL; - - /* "View.MemoryView":1277 - * """ - * cdef void *tmpdata = NULL - * cdef size_t itemsize = src.memview.view.itemsize # <<<<<<<<<<<<<< - * cdef int i - * cdef char order = get_best_order(&src, src_ndim) - */ - __pyx_t_1 = __pyx_v_src.memview->view.itemsize; - __pyx_v_itemsize = __pyx_t_1; - - /* "View.MemoryView":1279 - * cdef size_t itemsize = src.memview.view.itemsize - * cdef int i - * cdef char order = get_best_order(&src, src_ndim) # <<<<<<<<<<<<<< - * cdef bint broadcasting = False - * cdef bint direct_copy = False - */ - __pyx_v_order = __pyx_get_best_slice_order((&__pyx_v_src), __pyx_v_src_ndim); - - /* "View.MemoryView":1280 - * cdef int i - * cdef char order = get_best_order(&src, src_ndim) - * cdef bint broadcasting = False # <<<<<<<<<<<<<< - * cdef bint direct_copy = False - * cdef __Pyx_memviewslice tmp - */ - __pyx_v_broadcasting = 0; - - /* "View.MemoryView":1281 - * cdef char order = get_best_order(&src, src_ndim) - * cdef bint broadcasting = False - * cdef bint direct_copy = False # <<<<<<<<<<<<<< - * cdef __Pyx_memviewslice tmp - * - */ - __pyx_v_direct_copy = 0; - - /* "View.MemoryView":1284 - * cdef __Pyx_memviewslice tmp - * - * if src_ndim < dst_ndim: # <<<<<<<<<<<<<< - * broadcast_leading(&src, src_ndim, dst_ndim) - * elif dst_ndim < src_ndim: - */ - __pyx_t_2 = ((__pyx_v_src_ndim < __pyx_v_dst_ndim) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1285 - * - * if src_ndim < dst_ndim: - * broadcast_leading(&src, src_ndim, dst_ndim) # <<<<<<<<<<<<<< - * elif dst_ndim < src_ndim: - * broadcast_leading(&dst, dst_ndim, src_ndim) - */ - __pyx_memoryview_broadcast_leading((&__pyx_v_src), __pyx_v_src_ndim, __pyx_v_dst_ndim); - - /* "View.MemoryView":1284 - * cdef __Pyx_memviewslice tmp - * - * if src_ndim < dst_ndim: # <<<<<<<<<<<<<< - * broadcast_leading(&src, src_ndim, dst_ndim) - * elif dst_ndim < src_ndim: - */ - goto __pyx_L3; - } - - /* "View.MemoryView":1286 - * if src_ndim < dst_ndim: - * broadcast_leading(&src, src_ndim, dst_ndim) - * elif dst_ndim < src_ndim: # <<<<<<<<<<<<<< - * broadcast_leading(&dst, dst_ndim, src_ndim) - * - */ - __pyx_t_2 = ((__pyx_v_dst_ndim < __pyx_v_src_ndim) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1287 - * broadcast_leading(&src, src_ndim, dst_ndim) - * elif dst_ndim < src_ndim: - * broadcast_leading(&dst, dst_ndim, src_ndim) # <<<<<<<<<<<<<< - * - * cdef int ndim = max(src_ndim, dst_ndim) - */ - __pyx_memoryview_broadcast_leading((&__pyx_v_dst), __pyx_v_dst_ndim, __pyx_v_src_ndim); - - /* "View.MemoryView":1286 - * if src_ndim < dst_ndim: - * broadcast_leading(&src, src_ndim, dst_ndim) - * elif dst_ndim < src_ndim: # <<<<<<<<<<<<<< - * broadcast_leading(&dst, dst_ndim, src_ndim) - * - */ - } - __pyx_L3:; - - /* "View.MemoryView":1289 - * broadcast_leading(&dst, dst_ndim, src_ndim) - * - * cdef int ndim = max(src_ndim, dst_ndim) # <<<<<<<<<<<<<< - * - * for i in range(ndim): - */ - __pyx_t_3 = __pyx_v_dst_ndim; - __pyx_t_4 = __pyx_v_src_ndim; - if (((__pyx_t_3 > __pyx_t_4) != 0)) { - __pyx_t_5 = __pyx_t_3; - } else { - __pyx_t_5 = __pyx_t_4; - } - __pyx_v_ndim = __pyx_t_5; - - /* "View.MemoryView":1291 - * cdef int ndim = max(src_ndim, dst_ndim) - * - * for i in range(ndim): # <<<<<<<<<<<<<< - * if src.shape[i] != dst.shape[i]: - * if src.shape[i] == 1: - */ - __pyx_t_5 = __pyx_v_ndim; - __pyx_t_3 = __pyx_t_5; - for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) { - __pyx_v_i = __pyx_t_4; - - /* "View.MemoryView":1292 - * - * for i in range(ndim): - * if src.shape[i] != dst.shape[i]: # <<<<<<<<<<<<<< - * if src.shape[i] == 1: - * broadcasting = True - */ - __pyx_t_2 = (((__pyx_v_src.shape[__pyx_v_i]) != (__pyx_v_dst.shape[__pyx_v_i])) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1293 - * for i in range(ndim): - * if src.shape[i] != dst.shape[i]: - * if src.shape[i] == 1: # <<<<<<<<<<<<<< - * broadcasting = True - * src.strides[i] = 0 - */ - __pyx_t_2 = (((__pyx_v_src.shape[__pyx_v_i]) == 1) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1294 - * if src.shape[i] != dst.shape[i]: - * if src.shape[i] == 1: - * broadcasting = True # <<<<<<<<<<<<<< - * src.strides[i] = 0 - * else: - */ - __pyx_v_broadcasting = 1; - - /* "View.MemoryView":1295 - * if src.shape[i] == 1: - * broadcasting = True - * src.strides[i] = 0 # <<<<<<<<<<<<<< - * else: - * _err_extents(i, dst.shape[i], src.shape[i]) - */ - (__pyx_v_src.strides[__pyx_v_i]) = 0; - - /* "View.MemoryView":1293 - * for i in range(ndim): - * if src.shape[i] != dst.shape[i]: - * if src.shape[i] == 1: # <<<<<<<<<<<<<< - * broadcasting = True - * src.strides[i] = 0 - */ - goto __pyx_L7; - } - - /* "View.MemoryView":1297 - * src.strides[i] = 0 - * else: - * _err_extents(i, dst.shape[i], src.shape[i]) # <<<<<<<<<<<<<< - * - * if src.suboffsets[i] >= 0: - */ - /*else*/ { - __pyx_t_6 = __pyx_memoryview_err_extents(__pyx_v_i, (__pyx_v_dst.shape[__pyx_v_i]), (__pyx_v_src.shape[__pyx_v_i])); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(2, 1297, __pyx_L1_error) - } - __pyx_L7:; - - /* "View.MemoryView":1292 - * - * for i in range(ndim): - * if src.shape[i] != dst.shape[i]: # <<<<<<<<<<<<<< - * if src.shape[i] == 1: - * broadcasting = True - */ - } - - /* "View.MemoryView":1299 - * _err_extents(i, dst.shape[i], src.shape[i]) - * - * if src.suboffsets[i] >= 0: # <<<<<<<<<<<<<< - * _err_dim(ValueError, "Dimension %d is not direct", i) - * - */ - __pyx_t_2 = (((__pyx_v_src.suboffsets[__pyx_v_i]) >= 0) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1300 - * - * if src.suboffsets[i] >= 0: - * _err_dim(ValueError, "Dimension %d is not direct", i) # <<<<<<<<<<<<<< - * - * if slices_overlap(&src, &dst, ndim, itemsize): - */ - __pyx_t_6 = __pyx_memoryview_err_dim(__pyx_builtin_ValueError, ((char *)"Dimension %d is not direct"), __pyx_v_i); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(2, 1300, __pyx_L1_error) - - /* "View.MemoryView":1299 - * _err_extents(i, dst.shape[i], src.shape[i]) - * - * if src.suboffsets[i] >= 0: # <<<<<<<<<<<<<< - * _err_dim(ValueError, "Dimension %d is not direct", i) - * - */ - } - } - - /* "View.MemoryView":1302 - * _err_dim(ValueError, "Dimension %d is not direct", i) - * - * if slices_overlap(&src, &dst, ndim, itemsize): # <<<<<<<<<<<<<< - * - * if not slice_is_contig(src, order, ndim): - */ - __pyx_t_2 = (__pyx_slices_overlap((&__pyx_v_src), (&__pyx_v_dst), __pyx_v_ndim, __pyx_v_itemsize) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1304 - * if slices_overlap(&src, &dst, ndim, itemsize): - * - * if not slice_is_contig(src, order, ndim): # <<<<<<<<<<<<<< - * order = get_best_order(&dst, ndim) - * - */ - __pyx_t_2 = ((!(__pyx_memviewslice_is_contig(__pyx_v_src, __pyx_v_order, __pyx_v_ndim) != 0)) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1305 - * - * if not slice_is_contig(src, order, ndim): - * order = get_best_order(&dst, ndim) # <<<<<<<<<<<<<< - * - * tmpdata = copy_data_to_temp(&src, &tmp, order, ndim) - */ - __pyx_v_order = __pyx_get_best_slice_order((&__pyx_v_dst), __pyx_v_ndim); - - /* "View.MemoryView":1304 - * if slices_overlap(&src, &dst, ndim, itemsize): - * - * if not slice_is_contig(src, order, ndim): # <<<<<<<<<<<<<< - * order = get_best_order(&dst, ndim) - * - */ - } - - /* "View.MemoryView":1307 - * order = get_best_order(&dst, ndim) - * - * tmpdata = copy_data_to_temp(&src, &tmp, order, ndim) # <<<<<<<<<<<<<< - * src = tmp - * - */ - __pyx_t_7 = __pyx_memoryview_copy_data_to_temp((&__pyx_v_src), (&__pyx_v_tmp), __pyx_v_order, __pyx_v_ndim); if (unlikely(__pyx_t_7 == ((void *)NULL))) __PYX_ERR(2, 1307, __pyx_L1_error) - __pyx_v_tmpdata = __pyx_t_7; - - /* "View.MemoryView":1308 - * - * tmpdata = copy_data_to_temp(&src, &tmp, order, ndim) - * src = tmp # <<<<<<<<<<<<<< - * - * if not broadcasting: - */ - __pyx_v_src = __pyx_v_tmp; - - /* "View.MemoryView":1302 - * _err_dim(ValueError, "Dimension %d is not direct", i) - * - * if slices_overlap(&src, &dst, ndim, itemsize): # <<<<<<<<<<<<<< - * - * if not slice_is_contig(src, order, ndim): - */ - } - - /* "View.MemoryView":1310 - * src = tmp - * - * if not broadcasting: # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_2 = ((!(__pyx_v_broadcasting != 0)) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1313 - * - * - * if slice_is_contig(src, 'C', ndim): # <<<<<<<<<<<<<< - * direct_copy = slice_is_contig(dst, 'C', ndim) - * elif slice_is_contig(src, 'F', ndim): - */ - __pyx_t_2 = (__pyx_memviewslice_is_contig(__pyx_v_src, 'C', __pyx_v_ndim) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1314 - * - * if slice_is_contig(src, 'C', ndim): - * direct_copy = slice_is_contig(dst, 'C', ndim) # <<<<<<<<<<<<<< - * elif slice_is_contig(src, 'F', ndim): - * direct_copy = slice_is_contig(dst, 'F', ndim) - */ - __pyx_v_direct_copy = __pyx_memviewslice_is_contig(__pyx_v_dst, 'C', __pyx_v_ndim); - - /* "View.MemoryView":1313 - * - * - * if slice_is_contig(src, 'C', ndim): # <<<<<<<<<<<<<< - * direct_copy = slice_is_contig(dst, 'C', ndim) - * elif slice_is_contig(src, 'F', ndim): - */ - goto __pyx_L12; - } - - /* "View.MemoryView":1315 - * if slice_is_contig(src, 'C', ndim): - * direct_copy = slice_is_contig(dst, 'C', ndim) - * elif slice_is_contig(src, 'F', ndim): # <<<<<<<<<<<<<< - * direct_copy = slice_is_contig(dst, 'F', ndim) - * - */ - __pyx_t_2 = (__pyx_memviewslice_is_contig(__pyx_v_src, 'F', __pyx_v_ndim) != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1316 - * direct_copy = slice_is_contig(dst, 'C', ndim) - * elif slice_is_contig(src, 'F', ndim): - * direct_copy = slice_is_contig(dst, 'F', ndim) # <<<<<<<<<<<<<< - * - * if direct_copy: - */ - __pyx_v_direct_copy = __pyx_memviewslice_is_contig(__pyx_v_dst, 'F', __pyx_v_ndim); - - /* "View.MemoryView":1315 - * if slice_is_contig(src, 'C', ndim): - * direct_copy = slice_is_contig(dst, 'C', ndim) - * elif slice_is_contig(src, 'F', ndim): # <<<<<<<<<<<<<< - * direct_copy = slice_is_contig(dst, 'F', ndim) - * - */ - } - __pyx_L12:; - - /* "View.MemoryView":1318 - * direct_copy = slice_is_contig(dst, 'F', ndim) - * - * if direct_copy: # <<<<<<<<<<<<<< - * - * refcount_copying(&dst, dtype_is_object, ndim, False) - */ - __pyx_t_2 = (__pyx_v_direct_copy != 0); - if (__pyx_t_2) { - - /* "View.MemoryView":1320 - * if direct_copy: - * - * refcount_copying(&dst, dtype_is_object, ndim, False) # <<<<<<<<<<<<<< - * memcpy(dst.data, src.data, slice_get_size(&src, ndim)) - * refcount_copying(&dst, dtype_is_object, ndim, True) - */ - __pyx_memoryview_refcount_copying((&__pyx_v_dst), __pyx_v_dtype_is_object, __pyx_v_ndim, 0); - - /* "View.MemoryView":1321 - * - * refcount_copying(&dst, dtype_is_object, ndim, False) - * memcpy(dst.data, src.data, slice_get_size(&src, ndim)) # <<<<<<<<<<<<<< - * refcount_copying(&dst, dtype_is_object, ndim, True) - * free(tmpdata) - */ - (void)(memcpy(__pyx_v_dst.data, __pyx_v_src.data, __pyx_memoryview_slice_get_size((&__pyx_v_src), __pyx_v_ndim))); - - /* "View.MemoryView":1322 - * refcount_copying(&dst, dtype_is_object, ndim, False) - * memcpy(dst.data, src.data, slice_get_size(&src, ndim)) - * refcount_copying(&dst, dtype_is_object, ndim, True) # <<<<<<<<<<<<<< - * free(tmpdata) - * return 0 - */ - __pyx_memoryview_refcount_copying((&__pyx_v_dst), __pyx_v_dtype_is_object, __pyx_v_ndim, 1); - - /* "View.MemoryView":1323 - * memcpy(dst.data, src.data, slice_get_size(&src, ndim)) - * refcount_copying(&dst, dtype_is_object, ndim, True) - * free(tmpdata) # <<<<<<<<<<<<<< - * return 0 - * - */ - free(__pyx_v_tmpdata); - - /* "View.MemoryView":1324 - * refcount_copying(&dst, dtype_is_object, ndim, True) - * free(tmpdata) - * return 0 # <<<<<<<<<<<<<< - * - * if order == 'F' == get_best_order(&dst, ndim): - */ - __pyx_r = 0; - goto __pyx_L0; - - /* "View.MemoryView":1318 - * direct_copy = slice_is_contig(dst, 'F', ndim) - * - * if direct_copy: # <<<<<<<<<<<<<< - * - * refcount_copying(&dst, dtype_is_object, ndim, False) - */ - } - - /* "View.MemoryView":1310 - * src = tmp - * - * if not broadcasting: # <<<<<<<<<<<<<< - * - * - */ - } - - /* "View.MemoryView":1326 - * return 0 - * - * if order == 'F' == get_best_order(&dst, ndim): # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_2 = (__pyx_v_order == 'F'); - if (__pyx_t_2) { - __pyx_t_2 = ('F' == __pyx_get_best_slice_order((&__pyx_v_dst), __pyx_v_ndim)); - } - __pyx_t_8 = (__pyx_t_2 != 0); - if (__pyx_t_8) { - - /* "View.MemoryView":1329 - * - * - * transpose_memslice(&src) # <<<<<<<<<<<<<< - * transpose_memslice(&dst) - * - */ - __pyx_t_5 = __pyx_memslice_transpose((&__pyx_v_src)); if (unlikely(__pyx_t_5 == ((int)0))) __PYX_ERR(2, 1329, __pyx_L1_error) - - /* "View.MemoryView":1330 - * - * transpose_memslice(&src) - * transpose_memslice(&dst) # <<<<<<<<<<<<<< - * - * refcount_copying(&dst, dtype_is_object, ndim, False) - */ - __pyx_t_5 = __pyx_memslice_transpose((&__pyx_v_dst)); if (unlikely(__pyx_t_5 == ((int)0))) __PYX_ERR(2, 1330, __pyx_L1_error) - - /* "View.MemoryView":1326 - * return 0 - * - * if order == 'F' == get_best_order(&dst, ndim): # <<<<<<<<<<<<<< - * - * - */ - } - - /* "View.MemoryView":1332 - * transpose_memslice(&dst) - * - * refcount_copying(&dst, dtype_is_object, ndim, False) # <<<<<<<<<<<<<< - * copy_strided_to_strided(&src, &dst, ndim, itemsize) - * refcount_copying(&dst, dtype_is_object, ndim, True) - */ - __pyx_memoryview_refcount_copying((&__pyx_v_dst), __pyx_v_dtype_is_object, __pyx_v_ndim, 0); - - /* "View.MemoryView":1333 - * - * refcount_copying(&dst, dtype_is_object, ndim, False) - * copy_strided_to_strided(&src, &dst, ndim, itemsize) # <<<<<<<<<<<<<< - * refcount_copying(&dst, dtype_is_object, ndim, True) - * - */ - copy_strided_to_strided((&__pyx_v_src), (&__pyx_v_dst), __pyx_v_ndim, __pyx_v_itemsize); - - /* "View.MemoryView":1334 - * refcount_copying(&dst, dtype_is_object, ndim, False) - * copy_strided_to_strided(&src, &dst, ndim, itemsize) - * refcount_copying(&dst, dtype_is_object, ndim, True) # <<<<<<<<<<<<<< - * - * free(tmpdata) - */ - __pyx_memoryview_refcount_copying((&__pyx_v_dst), __pyx_v_dtype_is_object, __pyx_v_ndim, 1); - - /* "View.MemoryView":1336 - * refcount_copying(&dst, dtype_is_object, ndim, True) - * - * free(tmpdata) # <<<<<<<<<<<<<< - * return 0 - * - */ - free(__pyx_v_tmpdata); - - /* "View.MemoryView":1337 - * - * free(tmpdata) - * return 0 # <<<<<<<<<<<<<< - * - * @cname('__pyx_memoryview_broadcast_leading') - */ - __pyx_r = 0; - goto __pyx_L0; - - /* "View.MemoryView":1268 - * - * @cname('__pyx_memoryview_copy_contents') - * cdef int memoryview_copy_contents(__Pyx_memviewslice src, # <<<<<<<<<<<<<< - * __Pyx_memviewslice dst, - * int src_ndim, int dst_ndim, - */ - - /* function exit code */ - __pyx_L1_error:; - { - #ifdef WITH_THREAD - PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure(); - #endif - __Pyx_AddTraceback("View.MemoryView.memoryview_copy_contents", __pyx_clineno, __pyx_lineno, __pyx_filename); - #ifdef WITH_THREAD - __Pyx_PyGILState_Release(__pyx_gilstate_save); - #endif - } - __pyx_r = -1; - __pyx_L0:; - return __pyx_r; -} - -/* "View.MemoryView":1340 - * - * @cname('__pyx_memoryview_broadcast_leading') - * cdef void broadcast_leading(__Pyx_memviewslice *mslice, # <<<<<<<<<<<<<< - * int ndim, - * int ndim_other) nogil: - */ - -static void __pyx_memoryview_broadcast_leading(__Pyx_memviewslice *__pyx_v_mslice, int __pyx_v_ndim, int __pyx_v_ndim_other) { - int __pyx_v_i; - int __pyx_v_offset; - int __pyx_t_1; - int __pyx_t_2; - int __pyx_t_3; - - /* "View.MemoryView":1344 - * int ndim_other) nogil: - * cdef int i - * cdef int offset = ndim_other - ndim # <<<<<<<<<<<<<< - * - * for i in range(ndim - 1, -1, -1): - */ - __pyx_v_offset = (__pyx_v_ndim_other - __pyx_v_ndim); - - /* "View.MemoryView":1346 - * cdef int offset = ndim_other - ndim - * - * for i in range(ndim - 1, -1, -1): # <<<<<<<<<<<<<< - * mslice.shape[i + offset] = mslice.shape[i] - * mslice.strides[i + offset] = mslice.strides[i] - */ - for (__pyx_t_1 = (__pyx_v_ndim - 1); __pyx_t_1 > -1; __pyx_t_1-=1) { - __pyx_v_i = __pyx_t_1; - - /* "View.MemoryView":1347 - * - * for i in range(ndim - 1, -1, -1): - * mslice.shape[i + offset] = mslice.shape[i] # <<<<<<<<<<<<<< - * mslice.strides[i + offset] = mslice.strides[i] - * mslice.suboffsets[i + offset] = mslice.suboffsets[i] - */ - (__pyx_v_mslice->shape[(__pyx_v_i + __pyx_v_offset)]) = (__pyx_v_mslice->shape[__pyx_v_i]); - - /* "View.MemoryView":1348 - * for i in range(ndim - 1, -1, -1): - * mslice.shape[i + offset] = mslice.shape[i] - * mslice.strides[i + offset] = mslice.strides[i] # <<<<<<<<<<<<<< - * mslice.suboffsets[i + offset] = mslice.suboffsets[i] - * - */ - (__pyx_v_mslice->strides[(__pyx_v_i + __pyx_v_offset)]) = (__pyx_v_mslice->strides[__pyx_v_i]); - - /* "View.MemoryView":1349 - * mslice.shape[i + offset] = mslice.shape[i] - * mslice.strides[i + offset] = mslice.strides[i] - * mslice.suboffsets[i + offset] = mslice.suboffsets[i] # <<<<<<<<<<<<<< - * - * for i in range(offset): - */ - (__pyx_v_mslice->suboffsets[(__pyx_v_i + __pyx_v_offset)]) = (__pyx_v_mslice->suboffsets[__pyx_v_i]); - } - - /* "View.MemoryView":1351 - * mslice.suboffsets[i + offset] = mslice.suboffsets[i] - * - * for i in range(offset): # <<<<<<<<<<<<<< - * mslice.shape[i] = 1 - * mslice.strides[i] = mslice.strides[0] - */ - __pyx_t_1 = __pyx_v_offset; - __pyx_t_2 = __pyx_t_1; - for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) { - __pyx_v_i = __pyx_t_3; - - /* "View.MemoryView":1352 - * - * for i in range(offset): - * mslice.shape[i] = 1 # <<<<<<<<<<<<<< - * mslice.strides[i] = mslice.strides[0] - * mslice.suboffsets[i] = -1 - */ - (__pyx_v_mslice->shape[__pyx_v_i]) = 1; - - /* "View.MemoryView":1353 - * for i in range(offset): - * mslice.shape[i] = 1 - * mslice.strides[i] = mslice.strides[0] # <<<<<<<<<<<<<< - * mslice.suboffsets[i] = -1 - * - */ - (__pyx_v_mslice->strides[__pyx_v_i]) = (__pyx_v_mslice->strides[0]); - - /* "View.MemoryView":1354 - * mslice.shape[i] = 1 - * mslice.strides[i] = mslice.strides[0] - * mslice.suboffsets[i] = -1 # <<<<<<<<<<<<<< - * - * - */ - (__pyx_v_mslice->suboffsets[__pyx_v_i]) = -1L; - } - - /* "View.MemoryView":1340 - * - * @cname('__pyx_memoryview_broadcast_leading') - * cdef void broadcast_leading(__Pyx_memviewslice *mslice, # <<<<<<<<<<<<<< - * int ndim, - * int ndim_other) nogil: - */ - - /* function exit code */ -} - -/* "View.MemoryView":1362 - * - * @cname('__pyx_memoryview_refcount_copying') - * cdef void refcount_copying(__Pyx_memviewslice *dst, bint dtype_is_object, # <<<<<<<<<<<<<< - * int ndim, bint inc) nogil: - * - */ - -static void __pyx_memoryview_refcount_copying(__Pyx_memviewslice *__pyx_v_dst, int __pyx_v_dtype_is_object, int __pyx_v_ndim, int __pyx_v_inc) { - int __pyx_t_1; - - /* "View.MemoryView":1366 - * - * - * if dtype_is_object: # <<<<<<<<<<<<<< - * refcount_objects_in_slice_with_gil(dst.data, dst.shape, - * dst.strides, ndim, inc) - */ - __pyx_t_1 = (__pyx_v_dtype_is_object != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":1367 - * - * if dtype_is_object: - * refcount_objects_in_slice_with_gil(dst.data, dst.shape, # <<<<<<<<<<<<<< - * dst.strides, ndim, inc) - * - */ - __pyx_memoryview_refcount_objects_in_slice_with_gil(__pyx_v_dst->data, __pyx_v_dst->shape, __pyx_v_dst->strides, __pyx_v_ndim, __pyx_v_inc); - - /* "View.MemoryView":1366 - * - * - * if dtype_is_object: # <<<<<<<<<<<<<< - * refcount_objects_in_slice_with_gil(dst.data, dst.shape, - * dst.strides, ndim, inc) - */ - } - - /* "View.MemoryView":1362 - * - * @cname('__pyx_memoryview_refcount_copying') - * cdef void refcount_copying(__Pyx_memviewslice *dst, bint dtype_is_object, # <<<<<<<<<<<<<< - * int ndim, bint inc) nogil: - * - */ - - /* function exit code */ -} - -/* "View.MemoryView":1371 - * - * @cname('__pyx_memoryview_refcount_objects_in_slice_with_gil') - * cdef void refcount_objects_in_slice_with_gil(char *data, Py_ssize_t *shape, # <<<<<<<<<<<<<< - * Py_ssize_t *strides, int ndim, - * bint inc) with gil: - */ - -static void __pyx_memoryview_refcount_objects_in_slice_with_gil(char *__pyx_v_data, Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, int __pyx_v_ndim, int __pyx_v_inc) { - __Pyx_RefNannyDeclarations - #ifdef WITH_THREAD - PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure(); - #endif - __Pyx_RefNannySetupContext("refcount_objects_in_slice_with_gil", 0); - - /* "View.MemoryView":1374 - * Py_ssize_t *strides, int ndim, - * bint inc) with gil: - * refcount_objects_in_slice(data, shape, strides, ndim, inc) # <<<<<<<<<<<<<< - * - * @cname('__pyx_memoryview_refcount_objects_in_slice') - */ - __pyx_memoryview_refcount_objects_in_slice(__pyx_v_data, __pyx_v_shape, __pyx_v_strides, __pyx_v_ndim, __pyx_v_inc); - - /* "View.MemoryView":1371 - * - * @cname('__pyx_memoryview_refcount_objects_in_slice_with_gil') - * cdef void refcount_objects_in_slice_with_gil(char *data, Py_ssize_t *shape, # <<<<<<<<<<<<<< - * Py_ssize_t *strides, int ndim, - * bint inc) with gil: - */ - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - #ifdef WITH_THREAD - __Pyx_PyGILState_Release(__pyx_gilstate_save); - #endif -} - -/* "View.MemoryView":1377 - * - * @cname('__pyx_memoryview_refcount_objects_in_slice') - * cdef void refcount_objects_in_slice(char *data, Py_ssize_t *shape, # <<<<<<<<<<<<<< - * Py_ssize_t *strides, int ndim, bint inc): - * cdef Py_ssize_t i - */ - -static void __pyx_memoryview_refcount_objects_in_slice(char *__pyx_v_data, Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, int __pyx_v_ndim, int __pyx_v_inc) { - CYTHON_UNUSED Py_ssize_t __pyx_v_i; - __Pyx_RefNannyDeclarations - Py_ssize_t __pyx_t_1; - Py_ssize_t __pyx_t_2; - Py_ssize_t __pyx_t_3; - int __pyx_t_4; - __Pyx_RefNannySetupContext("refcount_objects_in_slice", 0); - - /* "View.MemoryView":1381 - * cdef Py_ssize_t i - * - * for i in range(shape[0]): # <<<<<<<<<<<<<< - * if ndim == 1: - * if inc: - */ - __pyx_t_1 = (__pyx_v_shape[0]); - __pyx_t_2 = __pyx_t_1; - for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) { - __pyx_v_i = __pyx_t_3; - - /* "View.MemoryView":1382 - * - * for i in range(shape[0]): - * if ndim == 1: # <<<<<<<<<<<<<< - * if inc: - * Py_INCREF(( data)[0]) - */ - __pyx_t_4 = ((__pyx_v_ndim == 1) != 0); - if (__pyx_t_4) { - - /* "View.MemoryView":1383 - * for i in range(shape[0]): - * if ndim == 1: - * if inc: # <<<<<<<<<<<<<< - * Py_INCREF(( data)[0]) - * else: - */ - __pyx_t_4 = (__pyx_v_inc != 0); - if (__pyx_t_4) { - - /* "View.MemoryView":1384 - * if ndim == 1: - * if inc: - * Py_INCREF(( data)[0]) # <<<<<<<<<<<<<< - * else: - * Py_DECREF(( data)[0]) - */ - Py_INCREF((((PyObject **)__pyx_v_data)[0])); - - /* "View.MemoryView":1383 - * for i in range(shape[0]): - * if ndim == 1: - * if inc: # <<<<<<<<<<<<<< - * Py_INCREF(( data)[0]) - * else: - */ - goto __pyx_L6; - } - - /* "View.MemoryView":1386 - * Py_INCREF(( data)[0]) - * else: - * Py_DECREF(( data)[0]) # <<<<<<<<<<<<<< - * else: - * refcount_objects_in_slice(data, shape + 1, strides + 1, - */ - /*else*/ { - Py_DECREF((((PyObject **)__pyx_v_data)[0])); - } - __pyx_L6:; - - /* "View.MemoryView":1382 - * - * for i in range(shape[0]): - * if ndim == 1: # <<<<<<<<<<<<<< - * if inc: - * Py_INCREF(( data)[0]) - */ - goto __pyx_L5; - } - - /* "View.MemoryView":1388 - * Py_DECREF(( data)[0]) - * else: - * refcount_objects_in_slice(data, shape + 1, strides + 1, # <<<<<<<<<<<<<< - * ndim - 1, inc) - * - */ - /*else*/ { - - /* "View.MemoryView":1389 - * else: - * refcount_objects_in_slice(data, shape + 1, strides + 1, - * ndim - 1, inc) # <<<<<<<<<<<<<< - * - * data += strides[0] - */ - __pyx_memoryview_refcount_objects_in_slice(__pyx_v_data, (__pyx_v_shape + 1), (__pyx_v_strides + 1), (__pyx_v_ndim - 1), __pyx_v_inc); - } - __pyx_L5:; - - /* "View.MemoryView":1391 - * ndim - 1, inc) - * - * data += strides[0] # <<<<<<<<<<<<<< - * - * - */ - __pyx_v_data = (__pyx_v_data + (__pyx_v_strides[0])); - } - - /* "View.MemoryView":1377 - * - * @cname('__pyx_memoryview_refcount_objects_in_slice') - * cdef void refcount_objects_in_slice(char *data, Py_ssize_t *shape, # <<<<<<<<<<<<<< - * Py_ssize_t *strides, int ndim, bint inc): - * cdef Py_ssize_t i - */ - - /* function exit code */ - __Pyx_RefNannyFinishContext(); -} - -/* "View.MemoryView":1397 - * - * @cname('__pyx_memoryview_slice_assign_scalar') - * cdef void slice_assign_scalar(__Pyx_memviewslice *dst, int ndim, # <<<<<<<<<<<<<< - * size_t itemsize, void *item, - * bint dtype_is_object) nogil: - */ - -static void __pyx_memoryview_slice_assign_scalar(__Pyx_memviewslice *__pyx_v_dst, int __pyx_v_ndim, size_t __pyx_v_itemsize, void *__pyx_v_item, int __pyx_v_dtype_is_object) { - - /* "View.MemoryView":1400 - * size_t itemsize, void *item, - * bint dtype_is_object) nogil: - * refcount_copying(dst, dtype_is_object, ndim, False) # <<<<<<<<<<<<<< - * _slice_assign_scalar(dst.data, dst.shape, dst.strides, ndim, - * itemsize, item) - */ - __pyx_memoryview_refcount_copying(__pyx_v_dst, __pyx_v_dtype_is_object, __pyx_v_ndim, 0); - - /* "View.MemoryView":1401 - * bint dtype_is_object) nogil: - * refcount_copying(dst, dtype_is_object, ndim, False) - * _slice_assign_scalar(dst.data, dst.shape, dst.strides, ndim, # <<<<<<<<<<<<<< - * itemsize, item) - * refcount_copying(dst, dtype_is_object, ndim, True) - */ - __pyx_memoryview__slice_assign_scalar(__pyx_v_dst->data, __pyx_v_dst->shape, __pyx_v_dst->strides, __pyx_v_ndim, __pyx_v_itemsize, __pyx_v_item); - - /* "View.MemoryView":1403 - * _slice_assign_scalar(dst.data, dst.shape, dst.strides, ndim, - * itemsize, item) - * refcount_copying(dst, dtype_is_object, ndim, True) # <<<<<<<<<<<<<< - * - * - */ - __pyx_memoryview_refcount_copying(__pyx_v_dst, __pyx_v_dtype_is_object, __pyx_v_ndim, 1); - - /* "View.MemoryView":1397 - * - * @cname('__pyx_memoryview_slice_assign_scalar') - * cdef void slice_assign_scalar(__Pyx_memviewslice *dst, int ndim, # <<<<<<<<<<<<<< - * size_t itemsize, void *item, - * bint dtype_is_object) nogil: - */ - - /* function exit code */ -} - -/* "View.MemoryView":1407 - * - * @cname('__pyx_memoryview__slice_assign_scalar') - * cdef void _slice_assign_scalar(char *data, Py_ssize_t *shape, # <<<<<<<<<<<<<< - * Py_ssize_t *strides, int ndim, - * size_t itemsize, void *item) nogil: - */ - -static void __pyx_memoryview__slice_assign_scalar(char *__pyx_v_data, Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, int __pyx_v_ndim, size_t __pyx_v_itemsize, void *__pyx_v_item) { - CYTHON_UNUSED Py_ssize_t __pyx_v_i; - Py_ssize_t __pyx_v_stride; - Py_ssize_t __pyx_v_extent; - int __pyx_t_1; - Py_ssize_t __pyx_t_2; - Py_ssize_t __pyx_t_3; - Py_ssize_t __pyx_t_4; - - /* "View.MemoryView":1411 - * size_t itemsize, void *item) nogil: - * cdef Py_ssize_t i - * cdef Py_ssize_t stride = strides[0] # <<<<<<<<<<<<<< - * cdef Py_ssize_t extent = shape[0] - * - */ - __pyx_v_stride = (__pyx_v_strides[0]); - - /* "View.MemoryView":1412 - * cdef Py_ssize_t i - * cdef Py_ssize_t stride = strides[0] - * cdef Py_ssize_t extent = shape[0] # <<<<<<<<<<<<<< - * - * if ndim == 1: - */ - __pyx_v_extent = (__pyx_v_shape[0]); - - /* "View.MemoryView":1414 - * cdef Py_ssize_t extent = shape[0] - * - * if ndim == 1: # <<<<<<<<<<<<<< - * for i in range(extent): - * memcpy(data, item, itemsize) - */ - __pyx_t_1 = ((__pyx_v_ndim == 1) != 0); - if (__pyx_t_1) { - - /* "View.MemoryView":1415 - * - * if ndim == 1: - * for i in range(extent): # <<<<<<<<<<<<<< - * memcpy(data, item, itemsize) - * data += stride - */ - __pyx_t_2 = __pyx_v_extent; - __pyx_t_3 = __pyx_t_2; - for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) { - __pyx_v_i = __pyx_t_4; - - /* "View.MemoryView":1416 - * if ndim == 1: - * for i in range(extent): - * memcpy(data, item, itemsize) # <<<<<<<<<<<<<< - * data += stride - * else: - */ - (void)(memcpy(__pyx_v_data, __pyx_v_item, __pyx_v_itemsize)); - - /* "View.MemoryView":1417 - * for i in range(extent): - * memcpy(data, item, itemsize) - * data += stride # <<<<<<<<<<<<<< - * else: - * for i in range(extent): - */ - __pyx_v_data = (__pyx_v_data + __pyx_v_stride); - } - - /* "View.MemoryView":1414 - * cdef Py_ssize_t extent = shape[0] - * - * if ndim == 1: # <<<<<<<<<<<<<< - * for i in range(extent): - * memcpy(data, item, itemsize) - */ - goto __pyx_L3; - } - - /* "View.MemoryView":1419 - * data += stride - * else: - * for i in range(extent): # <<<<<<<<<<<<<< - * _slice_assign_scalar(data, shape + 1, strides + 1, - * ndim - 1, itemsize, item) - */ - /*else*/ { - __pyx_t_2 = __pyx_v_extent; - __pyx_t_3 = __pyx_t_2; - for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) { - __pyx_v_i = __pyx_t_4; - - /* "View.MemoryView":1420 - * else: - * for i in range(extent): - * _slice_assign_scalar(data, shape + 1, strides + 1, # <<<<<<<<<<<<<< - * ndim - 1, itemsize, item) - * data += stride - */ - __pyx_memoryview__slice_assign_scalar(__pyx_v_data, (__pyx_v_shape + 1), (__pyx_v_strides + 1), (__pyx_v_ndim - 1), __pyx_v_itemsize, __pyx_v_item); - - /* "View.MemoryView":1422 - * _slice_assign_scalar(data, shape + 1, strides + 1, - * ndim - 1, itemsize, item) - * data += stride # <<<<<<<<<<<<<< - * - * - */ - __pyx_v_data = (__pyx_v_data + __pyx_v_stride); - } - } - __pyx_L3:; - - /* "View.MemoryView":1407 - * - * @cname('__pyx_memoryview__slice_assign_scalar') - * cdef void _slice_assign_scalar(char *data, Py_ssize_t *shape, # <<<<<<<<<<<<<< - * Py_ssize_t *strides, int ndim, - * size_t itemsize, void *item) nogil: - */ - - /* function exit code */ -} - -/* "(tree fragment)":1 - * def __pyx_unpickle_Enum(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< - * cdef object __pyx_PickleError - * cdef object __pyx_result - */ - -/* Python wrapper */ -static PyObject *__pyx_pw_15View_dot_MemoryView_1__pyx_unpickle_Enum(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_15View_dot_MemoryView_1__pyx_unpickle_Enum = {"__pyx_unpickle_Enum", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_15View_dot_MemoryView_1__pyx_unpickle_Enum, METH_VARARGS|METH_KEYWORDS, 0}; -static PyObject *__pyx_pw_15View_dot_MemoryView_1__pyx_unpickle_Enum(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v___pyx_type = 0; - long __pyx_v___pyx_checksum; - PyObject *__pyx_v___pyx_state = 0; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - PyObject *__pyx_r = 0; - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__pyx_unpickle_Enum (wrapper)", 0); - { - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_pyx_type,&__pyx_n_s_pyx_checksum,&__pyx_n_s_pyx_state,0}; - PyObject* values[3] = {0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args); - switch (pos_args) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - CYTHON_FALLTHROUGH; - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - CYTHON_FALLTHROUGH; - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - CYTHON_FALLTHROUGH; - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (pos_args) { - case 0: - if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pyx_type)) != 0)) kw_args--; - else goto __pyx_L5_argtuple_error; - CYTHON_FALLTHROUGH; - case 1: - if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pyx_checksum)) != 0)) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Enum", 1, 3, 3, 1); __PYX_ERR(2, 1, __pyx_L3_error) - } - CYTHON_FALLTHROUGH; - case 2: - if (likely((values[2] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_pyx_state)) != 0)) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Enum", 1, 3, 3, 2); __PYX_ERR(2, 1, __pyx_L3_error) - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__pyx_unpickle_Enum") < 0)) __PYX_ERR(2, 1, __pyx_L3_error) - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - } - __pyx_v___pyx_type = values[0]; - __pyx_v___pyx_checksum = __Pyx_PyInt_As_long(values[1]); if (unlikely((__pyx_v___pyx_checksum == (long)-1) && PyErr_Occurred())) __PYX_ERR(2, 1, __pyx_L3_error) - __pyx_v___pyx_state = values[2]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__pyx_unpickle_Enum", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(2, 1, __pyx_L3_error) - __pyx_L3_error:; - __Pyx_AddTraceback("View.MemoryView.__pyx_unpickle_Enum", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_15View_dot_MemoryView___pyx_unpickle_Enum(__pyx_self, __pyx_v___pyx_type, __pyx_v___pyx_checksum, __pyx_v___pyx_state); - - /* function exit code */ - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_pf_15View_dot_MemoryView___pyx_unpickle_Enum(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v___pyx_type, long __pyx_v___pyx_checksum, PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_v___pyx_PickleError = 0; - PyObject *__pyx_v___pyx_result = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_Enum", 0); - - /* "(tree fragment)":4 - * cdef object __pyx_PickleError - * cdef object __pyx_result - * if __pyx_checksum not in (0xb068931, 0x82a3537, 0x6ae9995): # <<<<<<<<<<<<<< - * from pickle import PickleError as __pyx_PickleError - * raise __pyx_PickleError("Incompatible checksums (0x%x vs (0xb068931, 0x82a3537, 0x6ae9995) = (name))" % __pyx_checksum) - */ - __pyx_t_1 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_PySequence_ContainsTF(__pyx_t_1, __pyx_tuple__22, Py_NE)); if (unlikely(__pyx_t_2 < 0)) __PYX_ERR(2, 4, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = (__pyx_t_2 != 0); - if (__pyx_t_3) { - - /* "(tree fragment)":5 - * cdef object __pyx_result - * if __pyx_checksum not in (0xb068931, 0x82a3537, 0x6ae9995): - * from pickle import PickleError as __pyx_PickleError # <<<<<<<<<<<<<< - * raise __pyx_PickleError("Incompatible checksums (0x%x vs (0xb068931, 0x82a3537, 0x6ae9995) = (name))" % __pyx_checksum) - * __pyx_result = Enum.__new__(__pyx_type) - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 5, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_n_s_PickleError); - __Pyx_GIVEREF(__pyx_n_s_PickleError); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PickleError); - __pyx_t_4 = __Pyx_Import(__pyx_n_s_pickle, __pyx_t_1, 0); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 5, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_4, __pyx_n_s_PickleError); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 5, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_1); - __pyx_v___pyx_PickleError = __pyx_t_1; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "(tree fragment)":6 - * if __pyx_checksum not in (0xb068931, 0x82a3537, 0x6ae9995): - * from pickle import PickleError as __pyx_PickleError - * raise __pyx_PickleError("Incompatible checksums (0x%x vs (0xb068931, 0x82a3537, 0x6ae9995) = (name))" % __pyx_checksum) # <<<<<<<<<<<<<< - * __pyx_result = Enum.__new__(__pyx_type) - * if __pyx_state is not None: - */ - __pyx_t_1 = __Pyx_PyInt_From_long(__pyx_v___pyx_checksum); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 6, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyString_Format(__pyx_kp_s_Incompatible_checksums_0x_x_vs_0, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(2, 6, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_INCREF(__pyx_v___pyx_PickleError); - __pyx_t_1 = __pyx_v___pyx_PickleError; __pyx_t_6 = NULL; - if (CYTHON_UNPACK_METHODS && unlikely(PyMethod_Check(__pyx_t_1))) { - __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_1); - if (likely(__pyx_t_6)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); - __Pyx_INCREF(__pyx_t_6); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_1, function); - } - } - __pyx_t_4 = (__pyx_t_6) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_6, __pyx_t_5) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 6, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_Raise(__pyx_t_4, 0, 0, 0); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __PYX_ERR(2, 6, __pyx_L1_error) - - /* "(tree fragment)":4 - * cdef object __pyx_PickleError - * cdef object __pyx_result - * if __pyx_checksum not in (0xb068931, 0x82a3537, 0x6ae9995): # <<<<<<<<<<<<<< - * from pickle import PickleError as __pyx_PickleError - * raise __pyx_PickleError("Incompatible checksums (0x%x vs (0xb068931, 0x82a3537, 0x6ae9995) = (name))" % __pyx_checksum) - */ - } - - /* "(tree fragment)":7 - * from pickle import PickleError as __pyx_PickleError - * raise __pyx_PickleError("Incompatible checksums (0x%x vs (0xb068931, 0x82a3537, 0x6ae9995) = (name))" % __pyx_checksum) - * __pyx_result = Enum.__new__(__pyx_type) # <<<<<<<<<<<<<< - * if __pyx_state is not None: - * __pyx_unpickle_Enum__set_state( __pyx_result, __pyx_state) - */ - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_MemviewEnum_type), __pyx_n_s_new); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 7, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = NULL; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) { - __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_1); - if (likely(__pyx_t_5)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_1, function); - } - } - __pyx_t_4 = (__pyx_t_5) ? __Pyx_PyObject_Call2Args(__pyx_t_1, __pyx_t_5, __pyx_v___pyx_type) : __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_v___pyx_type); - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 7, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_v___pyx_result = __pyx_t_4; - __pyx_t_4 = 0; - - /* "(tree fragment)":8 - * raise __pyx_PickleError("Incompatible checksums (0x%x vs (0xb068931, 0x82a3537, 0x6ae9995) = (name))" % __pyx_checksum) - * __pyx_result = Enum.__new__(__pyx_type) - * if __pyx_state is not None: # <<<<<<<<<<<<<< - * __pyx_unpickle_Enum__set_state( __pyx_result, __pyx_state) - * return __pyx_result - */ - __pyx_t_3 = (__pyx_v___pyx_state != Py_None); - __pyx_t_2 = (__pyx_t_3 != 0); - if (__pyx_t_2) { - - /* "(tree fragment)":9 - * __pyx_result = Enum.__new__(__pyx_type) - * if __pyx_state is not None: - * __pyx_unpickle_Enum__set_state( __pyx_result, __pyx_state) # <<<<<<<<<<<<<< - * return __pyx_result - * cdef __pyx_unpickle_Enum__set_state(Enum __pyx_result, tuple __pyx_state): - */ - if (!(likely(PyTuple_CheckExact(__pyx_v___pyx_state))||((__pyx_v___pyx_state) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_v___pyx_state)->tp_name), 0))) __PYX_ERR(2, 9, __pyx_L1_error) - __pyx_t_4 = __pyx_unpickle_Enum__set_state(((struct __pyx_MemviewEnum_obj *)__pyx_v___pyx_result), ((PyObject*)__pyx_v___pyx_state)); if (unlikely(!__pyx_t_4)) __PYX_ERR(2, 9, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "(tree fragment)":8 - * raise __pyx_PickleError("Incompatible checksums (0x%x vs (0xb068931, 0x82a3537, 0x6ae9995) = (name))" % __pyx_checksum) - * __pyx_result = Enum.__new__(__pyx_type) - * if __pyx_state is not None: # <<<<<<<<<<<<<< - * __pyx_unpickle_Enum__set_state( __pyx_result, __pyx_state) - * return __pyx_result - */ - } - - /* "(tree fragment)":10 - * if __pyx_state is not None: - * __pyx_unpickle_Enum__set_state( __pyx_result, __pyx_state) - * return __pyx_result # <<<<<<<<<<<<<< - * cdef __pyx_unpickle_Enum__set_state(Enum __pyx_result, tuple __pyx_state): - * __pyx_result.name = __pyx_state[0] - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v___pyx_result); - __pyx_r = __pyx_v___pyx_result; - goto __pyx_L0; - - /* "(tree fragment)":1 - * def __pyx_unpickle_Enum(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< - * cdef object __pyx_PickleError - * cdef object __pyx_result - */ - - /* function exit code */ - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("View.MemoryView.__pyx_unpickle_Enum", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v___pyx_PickleError); - __Pyx_XDECREF(__pyx_v___pyx_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "(tree fragment)":11 - * __pyx_unpickle_Enum__set_state( __pyx_result, __pyx_state) - * return __pyx_result - * cdef __pyx_unpickle_Enum__set_state(Enum __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< - * __pyx_result.name = __pyx_state[0] - * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): - */ - -static PyObject *__pyx_unpickle_Enum__set_state(struct __pyx_MemviewEnum_obj *__pyx_v___pyx_result, PyObject *__pyx_v___pyx_state) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - Py_ssize_t __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__pyx_unpickle_Enum__set_state", 0); - - /* "(tree fragment)":12 - * return __pyx_result - * cdef __pyx_unpickle_Enum__set_state(Enum __pyx_result, tuple __pyx_state): - * __pyx_result.name = __pyx_state[0] # <<<<<<<<<<<<<< - * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): - * __pyx_result.__dict__.update(__pyx_state[1]) - */ - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 12, __pyx_L1_error) - } - __pyx_t_1 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 12, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_v___pyx_result->name); - __Pyx_DECREF(__pyx_v___pyx_result->name); - __pyx_v___pyx_result->name = __pyx_t_1; - __pyx_t_1 = 0; - - /* "(tree fragment)":13 - * cdef __pyx_unpickle_Enum__set_state(Enum __pyx_result, tuple __pyx_state): - * __pyx_result.name = __pyx_state[0] - * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< - * __pyx_result.__dict__.update(__pyx_state[1]) - */ - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); - __PYX_ERR(2, 13, __pyx_L1_error) - } - __pyx_t_3 = PyTuple_GET_SIZE(__pyx_v___pyx_state); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(2, 13, __pyx_L1_error) - __pyx_t_4 = ((__pyx_t_3 > 1) != 0); - if (__pyx_t_4) { - } else { - __pyx_t_2 = __pyx_t_4; - goto __pyx_L4_bool_binop_done; - } - __pyx_t_4 = __Pyx_HasAttr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(2, 13, __pyx_L1_error) - __pyx_t_5 = (__pyx_t_4 != 0); - __pyx_t_2 = __pyx_t_5; - __pyx_L4_bool_binop_done:; - if (__pyx_t_2) { - - /* "(tree fragment)":14 - * __pyx_result.name = __pyx_state[0] - * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): - * __pyx_result.__dict__.update(__pyx_state[1]) # <<<<<<<<<<<<<< - */ - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v___pyx_result), __pyx_n_s_dict); if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_update); if (unlikely(!__pyx_t_7)) __PYX_ERR(2, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(__pyx_v___pyx_state == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable"); - __PYX_ERR(2, 14, __pyx_L1_error) - } - __pyx_t_6 = __Pyx_GetItemInt_Tuple(__pyx_v___pyx_state, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_6)) __PYX_ERR(2, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = NULL; - if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_7))) { - __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); - if (likely(__pyx_t_8)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); - __Pyx_INCREF(__pyx_t_8); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_7, function); - } - } - __pyx_t_1 = (__pyx_t_8) ? __Pyx_PyObject_Call2Args(__pyx_t_7, __pyx_t_8, __pyx_t_6) : __Pyx_PyObject_CallOneArg(__pyx_t_7, __pyx_t_6); - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 14, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "(tree fragment)":13 - * cdef __pyx_unpickle_Enum__set_state(Enum __pyx_result, tuple __pyx_state): - * __pyx_result.name = __pyx_state[0] - * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): # <<<<<<<<<<<<<< - * __pyx_result.__dict__.update(__pyx_state[1]) - */ - } - - /* "(tree fragment)":11 - * __pyx_unpickle_Enum__set_state( __pyx_result, __pyx_state) - * return __pyx_result - * cdef __pyx_unpickle_Enum__set_state(Enum __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< - * __pyx_result.name = __pyx_state[0] - * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): - */ - - /* function exit code */ - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_AddTraceback("View.MemoryView.__pyx_unpickle_Enum__set_state", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = 0; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} -static struct __pyx_vtabstruct_array __pyx_vtable_array; - -static PyObject *__pyx_tp_new_array(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_array_obj *p; - PyObject *o; - if (likely((t->tp_flags & Py_TPFLAGS_IS_ABSTRACT) == 0)) { - o = (*t->tp_alloc)(t, 0); - } else { - o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); - } - if (unlikely(!o)) return 0; - p = ((struct __pyx_array_obj *)o); - p->__pyx_vtab = __pyx_vtabptr_array; - p->mode = ((PyObject*)Py_None); Py_INCREF(Py_None); - p->_format = ((PyObject*)Py_None); Py_INCREF(Py_None); - if (unlikely(__pyx_array___cinit__(o, a, k) < 0)) goto bad; - return o; - bad: - Py_DECREF(o); o = 0; - return NULL; -} - -static void __pyx_tp_dealloc_array(PyObject *o) { - struct __pyx_array_obj *p = (struct __pyx_array_obj *)o; - #if CYTHON_USE_TP_FINALIZE - if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && (!PyType_IS_GC(Py_TYPE(o)) || !_PyGC_FINALIZED(o))) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - #endif - { - PyObject *etype, *eval, *etb; - PyErr_Fetch(&etype, &eval, &etb); - __Pyx_SET_REFCNT(o, Py_REFCNT(o) + 1); - __pyx_array___dealloc__(o); - __Pyx_SET_REFCNT(o, Py_REFCNT(o) - 1); - PyErr_Restore(etype, eval, etb); - } - Py_CLEAR(p->mode); - Py_CLEAR(p->_format); - (*Py_TYPE(o)->tp_free)(o); -} -static PyObject *__pyx_sq_item_array(PyObject *o, Py_ssize_t i) { - PyObject *r; - PyObject *x = PyInt_FromSsize_t(i); if(!x) return 0; - r = Py_TYPE(o)->tp_as_mapping->mp_subscript(o, x); - Py_DECREF(x); - return r; -} - -static int __pyx_mp_ass_subscript_array(PyObject *o, PyObject *i, PyObject *v) { - if (v) { - return __pyx_array___setitem__(o, i, v); - } - else { - PyErr_Format(PyExc_NotImplementedError, - "Subscript deletion not supported by %.200s", Py_TYPE(o)->tp_name); - return -1; - } -} - -static PyObject *__pyx_tp_getattro_array(PyObject *o, PyObject *n) { - PyObject *v = __Pyx_PyObject_GenericGetAttr(o, n); - if (!v && PyErr_ExceptionMatches(PyExc_AttributeError)) { - PyErr_Clear(); - v = __pyx_array___getattr__(o, n); - } - return v; -} - -static PyObject *__pyx_getprop___pyx_array_memview(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_15View_dot_MemoryView_5array_7memview_1__get__(o); -} - -static PyMethodDef __pyx_methods_array[] = { - {"__getattr__", (PyCFunction)__pyx_array___getattr__, METH_O|METH_COEXIST, 0}, - {"__reduce_cython__", (PyCFunction)__pyx_pw___pyx_array_1__reduce_cython__, METH_NOARGS, 0}, - {"__setstate_cython__", (PyCFunction)__pyx_pw___pyx_array_3__setstate_cython__, METH_O, 0}, - {0, 0, 0, 0} -}; - -static struct PyGetSetDef __pyx_getsets_array[] = { - {(char *)"memview", __pyx_getprop___pyx_array_memview, 0, (char *)0, 0}, - {0, 0, 0, 0, 0} -}; - -static PySequenceMethods __pyx_tp_as_sequence_array = { - __pyx_array___len__, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - __pyx_sq_item_array, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping_array = { - __pyx_array___len__, /*mp_length*/ - __pyx_array___getitem__, /*mp_subscript*/ - __pyx_mp_ass_subscript_array, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_array = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - __pyx_array_getbuffer, /*bf_getbuffer*/ - 0, /*bf_releasebuffer*/ -}; - -static PyTypeObject __pyx_type___pyx_array = { - PyVarObject_HEAD_INIT(0, 0) - "TTS.tts.utils.monotonic_align.core.array", /*tp_name*/ - sizeof(struct __pyx_array_obj), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_array, /*tp_dealloc*/ - #if PY_VERSION_HEX < 0x030800b4 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 - 0, /*tp_vectorcall_offset*/ - #endif - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 - 0, /*tp_as_async*/ - #endif - 0, /*tp_repr*/ - 0, /*tp_as_number*/ - &__pyx_tp_as_sequence_array, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_array, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - __pyx_tp_getattro_array, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_array, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE, /*tp_flags*/ - 0, /*tp_doc*/ - 0, /*tp_traverse*/ - 0, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_array, /*tp_methods*/ - 0, /*tp_members*/ - __pyx_getsets_array, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_array, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 - 0, /*tp_finalize*/ - #endif - #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, /*tp_vectorcall*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 - 0, /*tp_print*/ - #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 - 0, /*tp_pypy_flags*/ - #endif -}; - -static PyObject *__pyx_tp_new_Enum(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { - struct __pyx_MemviewEnum_obj *p; - PyObject *o; - if (likely((t->tp_flags & Py_TPFLAGS_IS_ABSTRACT) == 0)) { - o = (*t->tp_alloc)(t, 0); - } else { - o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); - } - if (unlikely(!o)) return 0; - p = ((struct __pyx_MemviewEnum_obj *)o); - p->name = Py_None; Py_INCREF(Py_None); - return o; -} - -static void __pyx_tp_dealloc_Enum(PyObject *o) { - struct __pyx_MemviewEnum_obj *p = (struct __pyx_MemviewEnum_obj *)o; - #if CYTHON_USE_TP_FINALIZE - if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - #endif - PyObject_GC_UnTrack(o); - Py_CLEAR(p->name); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_Enum(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_MemviewEnum_obj *p = (struct __pyx_MemviewEnum_obj *)o; - if (p->name) { - e = (*v)(p->name, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_Enum(PyObject *o) { - PyObject* tmp; - struct __pyx_MemviewEnum_obj *p = (struct __pyx_MemviewEnum_obj *)o; - tmp = ((PyObject*)p->name); - p->name = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyMethodDef __pyx_methods_Enum[] = { - {"__reduce_cython__", (PyCFunction)__pyx_pw___pyx_MemviewEnum_1__reduce_cython__, METH_NOARGS, 0}, - {"__setstate_cython__", (PyCFunction)__pyx_pw___pyx_MemviewEnum_3__setstate_cython__, METH_O, 0}, - {0, 0, 0, 0} -}; - -static PyTypeObject __pyx_type___pyx_MemviewEnum = { - PyVarObject_HEAD_INIT(0, 0) - "TTS.tts.utils.monotonic_align.core.Enum", /*tp_name*/ - sizeof(struct __pyx_MemviewEnum_obj), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_Enum, /*tp_dealloc*/ - #if PY_VERSION_HEX < 0x030800b4 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 - 0, /*tp_vectorcall_offset*/ - #endif - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 - 0, /*tp_as_async*/ - #endif - __pyx_MemviewEnum___repr__, /*tp_repr*/ - 0, /*tp_as_number*/ - 0, /*tp_as_sequence*/ - 0, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_Enum, /*tp_traverse*/ - __pyx_tp_clear_Enum, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_Enum, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - __pyx_MemviewEnum___init__, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_Enum, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 - 0, /*tp_finalize*/ - #endif - #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, /*tp_vectorcall*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 - 0, /*tp_print*/ - #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 - 0, /*tp_pypy_flags*/ - #endif -}; -static struct __pyx_vtabstruct_memoryview __pyx_vtable_memoryview; - -static PyObject *__pyx_tp_new_memoryview(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_memoryview_obj *p; - PyObject *o; - if (likely((t->tp_flags & Py_TPFLAGS_IS_ABSTRACT) == 0)) { - o = (*t->tp_alloc)(t, 0); - } else { - o = (PyObject *) PyBaseObject_Type.tp_new(t, __pyx_empty_tuple, 0); - } - if (unlikely(!o)) return 0; - p = ((struct __pyx_memoryview_obj *)o); - p->__pyx_vtab = __pyx_vtabptr_memoryview; - p->obj = Py_None; Py_INCREF(Py_None); - p->_size = Py_None; Py_INCREF(Py_None); - p->_array_interface = Py_None; Py_INCREF(Py_None); - p->view.obj = NULL; - if (unlikely(__pyx_memoryview___cinit__(o, a, k) < 0)) goto bad; - return o; - bad: - Py_DECREF(o); o = 0; - return NULL; -} - -static void __pyx_tp_dealloc_memoryview(PyObject *o) { - struct __pyx_memoryview_obj *p = (struct __pyx_memoryview_obj *)o; - #if CYTHON_USE_TP_FINALIZE - if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - #endif - PyObject_GC_UnTrack(o); - { - PyObject *etype, *eval, *etb; - PyErr_Fetch(&etype, &eval, &etb); - __Pyx_SET_REFCNT(o, Py_REFCNT(o) + 1); - __pyx_memoryview___dealloc__(o); - __Pyx_SET_REFCNT(o, Py_REFCNT(o) - 1); - PyErr_Restore(etype, eval, etb); - } - Py_CLEAR(p->obj); - Py_CLEAR(p->_size); - Py_CLEAR(p->_array_interface); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_memoryview(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_memoryview_obj *p = (struct __pyx_memoryview_obj *)o; - if (p->obj) { - e = (*v)(p->obj, a); if (e) return e; - } - if (p->_size) { - e = (*v)(p->_size, a); if (e) return e; - } - if (p->_array_interface) { - e = (*v)(p->_array_interface, a); if (e) return e; - } - if (p->view.obj) { - e = (*v)(p->view.obj, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_memoryview(PyObject *o) { - PyObject* tmp; - struct __pyx_memoryview_obj *p = (struct __pyx_memoryview_obj *)o; - tmp = ((PyObject*)p->obj); - p->obj = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->_size); - p->_size = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->_array_interface); - p->_array_interface = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - Py_CLEAR(p->view.obj); - return 0; -} -static PyObject *__pyx_sq_item_memoryview(PyObject *o, Py_ssize_t i) { - PyObject *r; - PyObject *x = PyInt_FromSsize_t(i); if(!x) return 0; - r = Py_TYPE(o)->tp_as_mapping->mp_subscript(o, x); - Py_DECREF(x); - return r; -} - -static int __pyx_mp_ass_subscript_memoryview(PyObject *o, PyObject *i, PyObject *v) { - if (v) { - return __pyx_memoryview___setitem__(o, i, v); - } - else { - PyErr_Format(PyExc_NotImplementedError, - "Subscript deletion not supported by %.200s", Py_TYPE(o)->tp_name); - return -1; - } -} - -static PyObject *__pyx_getprop___pyx_memoryview_T(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_15View_dot_MemoryView_10memoryview_1T_1__get__(o); -} - -static PyObject *__pyx_getprop___pyx_memoryview_base(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_15View_dot_MemoryView_10memoryview_4base_1__get__(o); -} - -static PyObject *__pyx_getprop___pyx_memoryview_shape(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_15View_dot_MemoryView_10memoryview_5shape_1__get__(o); -} - -static PyObject *__pyx_getprop___pyx_memoryview_strides(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_15View_dot_MemoryView_10memoryview_7strides_1__get__(o); -} - -static PyObject *__pyx_getprop___pyx_memoryview_suboffsets(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_15View_dot_MemoryView_10memoryview_10suboffsets_1__get__(o); -} - -static PyObject *__pyx_getprop___pyx_memoryview_ndim(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_15View_dot_MemoryView_10memoryview_4ndim_1__get__(o); -} - -static PyObject *__pyx_getprop___pyx_memoryview_itemsize(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_15View_dot_MemoryView_10memoryview_8itemsize_1__get__(o); -} - -static PyObject *__pyx_getprop___pyx_memoryview_nbytes(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_15View_dot_MemoryView_10memoryview_6nbytes_1__get__(o); -} - -static PyObject *__pyx_getprop___pyx_memoryview_size(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_15View_dot_MemoryView_10memoryview_4size_1__get__(o); -} - -static PyMethodDef __pyx_methods_memoryview[] = { - {"is_c_contig", (PyCFunction)__pyx_memoryview_is_c_contig, METH_NOARGS, 0}, - {"is_f_contig", (PyCFunction)__pyx_memoryview_is_f_contig, METH_NOARGS, 0}, - {"copy", (PyCFunction)__pyx_memoryview_copy, METH_NOARGS, 0}, - {"copy_fortran", (PyCFunction)__pyx_memoryview_copy_fortran, METH_NOARGS, 0}, - {"__reduce_cython__", (PyCFunction)__pyx_pw___pyx_memoryview_1__reduce_cython__, METH_NOARGS, 0}, - {"__setstate_cython__", (PyCFunction)__pyx_pw___pyx_memoryview_3__setstate_cython__, METH_O, 0}, - {0, 0, 0, 0} -}; - -static struct PyGetSetDef __pyx_getsets_memoryview[] = { - {(char *)"T", __pyx_getprop___pyx_memoryview_T, 0, (char *)0, 0}, - {(char *)"base", __pyx_getprop___pyx_memoryview_base, 0, (char *)0, 0}, - {(char *)"shape", __pyx_getprop___pyx_memoryview_shape, 0, (char *)0, 0}, - {(char *)"strides", __pyx_getprop___pyx_memoryview_strides, 0, (char *)0, 0}, - {(char *)"suboffsets", __pyx_getprop___pyx_memoryview_suboffsets, 0, (char *)0, 0}, - {(char *)"ndim", __pyx_getprop___pyx_memoryview_ndim, 0, (char *)0, 0}, - {(char *)"itemsize", __pyx_getprop___pyx_memoryview_itemsize, 0, (char *)0, 0}, - {(char *)"nbytes", __pyx_getprop___pyx_memoryview_nbytes, 0, (char *)0, 0}, - {(char *)"size", __pyx_getprop___pyx_memoryview_size, 0, (char *)0, 0}, - {0, 0, 0, 0, 0} -}; - -static PySequenceMethods __pyx_tp_as_sequence_memoryview = { - __pyx_memoryview___len__, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - __pyx_sq_item_memoryview, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping_memoryview = { - __pyx_memoryview___len__, /*mp_length*/ - __pyx_memoryview___getitem__, /*mp_subscript*/ - __pyx_mp_ass_subscript_memoryview, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer_memoryview = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - __pyx_memoryview_getbuffer, /*bf_getbuffer*/ - 0, /*bf_releasebuffer*/ -}; - -static PyTypeObject __pyx_type___pyx_memoryview = { - PyVarObject_HEAD_INIT(0, 0) - "TTS.tts.utils.monotonic_align.core.memoryview", /*tp_name*/ - sizeof(struct __pyx_memoryview_obj), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_memoryview, /*tp_dealloc*/ - #if PY_VERSION_HEX < 0x030800b4 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 - 0, /*tp_vectorcall_offset*/ - #endif - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 - 0, /*tp_as_async*/ - #endif - __pyx_memoryview___repr__, /*tp_repr*/ - 0, /*tp_as_number*/ - &__pyx_tp_as_sequence_memoryview, /*tp_as_sequence*/ - &__pyx_tp_as_mapping_memoryview, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - __pyx_memoryview___str__, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer_memoryview, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_memoryview, /*tp_traverse*/ - __pyx_tp_clear_memoryview, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_memoryview, /*tp_methods*/ - 0, /*tp_members*/ - __pyx_getsets_memoryview, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_memoryview, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 - 0, /*tp_finalize*/ - #endif - #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, /*tp_vectorcall*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 - 0, /*tp_print*/ - #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 - 0, /*tp_pypy_flags*/ - #endif -}; -static struct __pyx_vtabstruct__memoryviewslice __pyx_vtable__memoryviewslice; - -static PyObject *__pyx_tp_new__memoryviewslice(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_memoryviewslice_obj *p; - PyObject *o = __pyx_tp_new_memoryview(t, a, k); - if (unlikely(!o)) return 0; - p = ((struct __pyx_memoryviewslice_obj *)o); - p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_memoryview*)__pyx_vtabptr__memoryviewslice; - p->from_object = Py_None; Py_INCREF(Py_None); - p->from_slice.memview = NULL; - return o; -} - -static void __pyx_tp_dealloc__memoryviewslice(PyObject *o) { - struct __pyx_memoryviewslice_obj *p = (struct __pyx_memoryviewslice_obj *)o; - #if CYTHON_USE_TP_FINALIZE - if (unlikely(PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE) && Py_TYPE(o)->tp_finalize) && !_PyGC_FINALIZED(o)) { - if (PyObject_CallFinalizerFromDealloc(o)) return; - } - #endif - PyObject_GC_UnTrack(o); - { - PyObject *etype, *eval, *etb; - PyErr_Fetch(&etype, &eval, &etb); - __Pyx_SET_REFCNT(o, Py_REFCNT(o) + 1); - __pyx_memoryviewslice___dealloc__(o); - __Pyx_SET_REFCNT(o, Py_REFCNT(o) - 1); - PyErr_Restore(etype, eval, etb); - } - Py_CLEAR(p->from_object); - PyObject_GC_Track(o); - __pyx_tp_dealloc_memoryview(o); -} - -static int __pyx_tp_traverse__memoryviewslice(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_memoryviewslice_obj *p = (struct __pyx_memoryviewslice_obj *)o; - e = __pyx_tp_traverse_memoryview(o, v, a); if (e) return e; - if (p->from_object) { - e = (*v)(p->from_object, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear__memoryviewslice(PyObject *o) { - PyObject* tmp; - struct __pyx_memoryviewslice_obj *p = (struct __pyx_memoryviewslice_obj *)o; - __pyx_tp_clear_memoryview(o); - tmp = ((PyObject*)p->from_object); - p->from_object = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - __PYX_XDEC_MEMVIEW(&p->from_slice, 1); - return 0; -} - -static PyObject *__pyx_getprop___pyx_memoryviewslice_base(PyObject *o, CYTHON_UNUSED void *x) { - return __pyx_pw_15View_dot_MemoryView_16_memoryviewslice_4base_1__get__(o); -} - -static PyMethodDef __pyx_methods__memoryviewslice[] = { - {"__reduce_cython__", (PyCFunction)__pyx_pw___pyx_memoryviewslice_1__reduce_cython__, METH_NOARGS, 0}, - {"__setstate_cython__", (PyCFunction)__pyx_pw___pyx_memoryviewslice_3__setstate_cython__, METH_O, 0}, - {0, 0, 0, 0} -}; - -static struct PyGetSetDef __pyx_getsets__memoryviewslice[] = { - {(char *)"base", __pyx_getprop___pyx_memoryviewslice_base, 0, (char *)0, 0}, - {0, 0, 0, 0, 0} -}; - -static PyTypeObject __pyx_type___pyx_memoryviewslice = { - PyVarObject_HEAD_INIT(0, 0) - "TTS.tts.utils.monotonic_align.core._memoryviewslice", /*tp_name*/ - sizeof(struct __pyx_memoryviewslice_obj), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc__memoryviewslice, /*tp_dealloc*/ - #if PY_VERSION_HEX < 0x030800b4 - 0, /*tp_print*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 - 0, /*tp_vectorcall_offset*/ - #endif - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #endif - #if PY_MAJOR_VERSION >= 3 - 0, /*tp_as_async*/ - #endif - #if CYTHON_COMPILING_IN_PYPY - __pyx_memoryview___repr__, /*tp_repr*/ - #else - 0, /*tp_repr*/ - #endif - 0, /*tp_as_number*/ - 0, /*tp_as_sequence*/ - 0, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - #if CYTHON_COMPILING_IN_PYPY - __pyx_memoryview___str__, /*tp_str*/ - #else - 0, /*tp_str*/ - #endif - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - "Internal class for passing memoryview slices to Python", /*tp_doc*/ - __pyx_tp_traverse__memoryviewslice, /*tp_traverse*/ - __pyx_tp_clear__memoryviewslice, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods__memoryviewslice, /*tp_methods*/ - 0, /*tp_members*/ - __pyx_getsets__memoryviewslice, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new__memoryviewslice, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - 0, /*tp_version_tag*/ - #if PY_VERSION_HEX >= 0x030400a1 - 0, /*tp_finalize*/ - #endif - #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) - 0, /*tp_vectorcall*/ - #endif - #if PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000 - 0, /*tp_print*/ - #endif - #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 - 0, /*tp_pypy_flags*/ - #endif -}; - -static PyMethodDef __pyx_methods[] = { - {"maximum_path_c", (PyCFunction)(void*)(PyCFunctionWithKeywords)__pyx_pw_3TTS_3tts_5utils_15monotonic_align_4core_1maximum_path_c, METH_VARARGS|METH_KEYWORDS, 0}, - {0, 0, 0, 0} -}; - -#if PY_MAJOR_VERSION >= 3 -#if CYTHON_PEP489_MULTI_PHASE_INIT -static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/ -static int __pyx_pymod_exec_core(PyObject* module); /*proto*/ -static PyModuleDef_Slot __pyx_moduledef_slots[] = { - {Py_mod_create, (void*)__pyx_pymod_create}, - {Py_mod_exec, (void*)__pyx_pymod_exec_core}, - {0, NULL} -}; -#endif - -static struct PyModuleDef __pyx_moduledef = { - PyModuleDef_HEAD_INIT, - "core", - 0, /* m_doc */ - #if CYTHON_PEP489_MULTI_PHASE_INIT - 0, /* m_size */ - #else - -1, /* m_size */ - #endif - __pyx_methods /* m_methods */, - #if CYTHON_PEP489_MULTI_PHASE_INIT - __pyx_moduledef_slots, /* m_slots */ - #else - NULL, /* m_reload */ - #endif - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ -}; -#endif -#ifndef CYTHON_SMALL_CODE -#if defined(__clang__) - #define CYTHON_SMALL_CODE -#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) - #define CYTHON_SMALL_CODE __attribute__((cold)) -#else - #define CYTHON_SMALL_CODE -#endif -#endif - -static __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_n_s_ASCII, __pyx_k_ASCII, sizeof(__pyx_k_ASCII), 0, 0, 1, 1}, - {&__pyx_kp_s_Buffer_view_does_not_expose_stri, __pyx_k_Buffer_view_does_not_expose_stri, sizeof(__pyx_k_Buffer_view_does_not_expose_stri), 0, 0, 1, 0}, - {&__pyx_kp_s_Can_only_create_a_buffer_that_is, __pyx_k_Can_only_create_a_buffer_that_is, sizeof(__pyx_k_Can_only_create_a_buffer_that_is), 0, 0, 1, 0}, - {&__pyx_kp_s_Cannot_assign_to_read_only_memor, __pyx_k_Cannot_assign_to_read_only_memor, sizeof(__pyx_k_Cannot_assign_to_read_only_memor), 0, 0, 1, 0}, - {&__pyx_kp_s_Cannot_create_writable_memory_vi, __pyx_k_Cannot_create_writable_memory_vi, sizeof(__pyx_k_Cannot_create_writable_memory_vi), 0, 0, 1, 0}, - {&__pyx_kp_s_Cannot_index_with_type_s, __pyx_k_Cannot_index_with_type_s, sizeof(__pyx_k_Cannot_index_with_type_s), 0, 0, 1, 0}, - {&__pyx_n_s_Ellipsis, __pyx_k_Ellipsis, sizeof(__pyx_k_Ellipsis), 0, 0, 1, 1}, - {&__pyx_kp_s_Empty_shape_tuple_for_cython_arr, __pyx_k_Empty_shape_tuple_for_cython_arr, sizeof(__pyx_k_Empty_shape_tuple_for_cython_arr), 0, 0, 1, 0}, - {&__pyx_n_s_ImportError, __pyx_k_ImportError, sizeof(__pyx_k_ImportError), 0, 0, 1, 1}, - {&__pyx_kp_s_Incompatible_checksums_0x_x_vs_0, __pyx_k_Incompatible_checksums_0x_x_vs_0, sizeof(__pyx_k_Incompatible_checksums_0x_x_vs_0), 0, 0, 1, 0}, - {&__pyx_n_s_IndexError, __pyx_k_IndexError, sizeof(__pyx_k_IndexError), 0, 0, 1, 1}, - {&__pyx_kp_s_Indirect_dimensions_not_supporte, __pyx_k_Indirect_dimensions_not_supporte, sizeof(__pyx_k_Indirect_dimensions_not_supporte), 0, 0, 1, 0}, - {&__pyx_kp_s_Invalid_mode_expected_c_or_fortr, __pyx_k_Invalid_mode_expected_c_or_fortr, sizeof(__pyx_k_Invalid_mode_expected_c_or_fortr), 0, 0, 1, 0}, - {&__pyx_kp_s_Invalid_shape_in_axis_d_d, __pyx_k_Invalid_shape_in_axis_d_d, sizeof(__pyx_k_Invalid_shape_in_axis_d_d), 0, 0, 1, 0}, - {&__pyx_n_s_MemoryError, __pyx_k_MemoryError, sizeof(__pyx_k_MemoryError), 0, 0, 1, 1}, - {&__pyx_kp_s_MemoryView_of_r_at_0x_x, __pyx_k_MemoryView_of_r_at_0x_x, sizeof(__pyx_k_MemoryView_of_r_at_0x_x), 0, 0, 1, 0}, - {&__pyx_kp_s_MemoryView_of_r_object, __pyx_k_MemoryView_of_r_object, sizeof(__pyx_k_MemoryView_of_r_object), 0, 0, 1, 0}, - {&__pyx_n_b_O, __pyx_k_O, sizeof(__pyx_k_O), 0, 0, 0, 1}, - {&__pyx_kp_s_Out_of_bounds_on_buffer_access_a, __pyx_k_Out_of_bounds_on_buffer_access_a, sizeof(__pyx_k_Out_of_bounds_on_buffer_access_a), 0, 0, 1, 0}, - {&__pyx_n_s_PickleError, __pyx_k_PickleError, sizeof(__pyx_k_PickleError), 0, 0, 1, 1}, - {&__pyx_n_s_TypeError, __pyx_k_TypeError, sizeof(__pyx_k_TypeError), 0, 0, 1, 1}, - {&__pyx_kp_s_Unable_to_convert_item_to_object, __pyx_k_Unable_to_convert_item_to_object, sizeof(__pyx_k_Unable_to_convert_item_to_object), 0, 0, 1, 0}, - {&__pyx_n_s_ValueError, __pyx_k_ValueError, sizeof(__pyx_k_ValueError), 0, 0, 1, 1}, - {&__pyx_n_s_View_MemoryView, __pyx_k_View_MemoryView, sizeof(__pyx_k_View_MemoryView), 0, 0, 1, 1}, - {&__pyx_n_s_allocate_buffer, __pyx_k_allocate_buffer, sizeof(__pyx_k_allocate_buffer), 0, 0, 1, 1}, - {&__pyx_n_s_base, __pyx_k_base, sizeof(__pyx_k_base), 0, 0, 1, 1}, - {&__pyx_n_s_c, __pyx_k_c, sizeof(__pyx_k_c), 0, 0, 1, 1}, - {&__pyx_n_u_c, __pyx_k_c, sizeof(__pyx_k_c), 0, 1, 0, 1}, - {&__pyx_n_s_class, __pyx_k_class, sizeof(__pyx_k_class), 0, 0, 1, 1}, - {&__pyx_n_s_cline_in_traceback, __pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 0, 1, 1}, - {&__pyx_kp_s_contiguous_and_direct, __pyx_k_contiguous_and_direct, sizeof(__pyx_k_contiguous_and_direct), 0, 0, 1, 0}, - {&__pyx_kp_s_contiguous_and_indirect, __pyx_k_contiguous_and_indirect, sizeof(__pyx_k_contiguous_and_indirect), 0, 0, 1, 0}, - {&__pyx_n_s_dict, __pyx_k_dict, sizeof(__pyx_k_dict), 0, 0, 1, 1}, - {&__pyx_n_s_dtype_is_object, __pyx_k_dtype_is_object, sizeof(__pyx_k_dtype_is_object), 0, 0, 1, 1}, - {&__pyx_n_s_encode, __pyx_k_encode, sizeof(__pyx_k_encode), 0, 0, 1, 1}, - {&__pyx_n_s_enumerate, __pyx_k_enumerate, sizeof(__pyx_k_enumerate), 0, 0, 1, 1}, - {&__pyx_n_s_error, __pyx_k_error, sizeof(__pyx_k_error), 0, 0, 1, 1}, - {&__pyx_n_s_flags, __pyx_k_flags, sizeof(__pyx_k_flags), 0, 0, 1, 1}, - {&__pyx_n_s_format, __pyx_k_format, sizeof(__pyx_k_format), 0, 0, 1, 1}, - {&__pyx_n_s_fortran, __pyx_k_fortran, sizeof(__pyx_k_fortran), 0, 0, 1, 1}, - {&__pyx_n_u_fortran, __pyx_k_fortran, sizeof(__pyx_k_fortran), 0, 1, 0, 1}, - {&__pyx_n_s_getstate, __pyx_k_getstate, sizeof(__pyx_k_getstate), 0, 0, 1, 1}, - {&__pyx_kp_s_got_differing_extents_in_dimensi, __pyx_k_got_differing_extents_in_dimensi, sizeof(__pyx_k_got_differing_extents_in_dimensi), 0, 0, 1, 0}, - {&__pyx_n_s_id, __pyx_k_id, sizeof(__pyx_k_id), 0, 0, 1, 1}, - {&__pyx_n_s_import, __pyx_k_import, sizeof(__pyx_k_import), 0, 0, 1, 1}, - {&__pyx_n_s_itemsize, __pyx_k_itemsize, sizeof(__pyx_k_itemsize), 0, 0, 1, 1}, - {&__pyx_kp_s_itemsize_0_for_cython_array, __pyx_k_itemsize_0_for_cython_array, sizeof(__pyx_k_itemsize_0_for_cython_array), 0, 0, 1, 0}, - {&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1}, - {&__pyx_n_s_max_neg_val, __pyx_k_max_neg_val, sizeof(__pyx_k_max_neg_val), 0, 0, 1, 1}, - {&__pyx_n_s_memview, __pyx_k_memview, sizeof(__pyx_k_memview), 0, 0, 1, 1}, - {&__pyx_n_s_mode, __pyx_k_mode, sizeof(__pyx_k_mode), 0, 0, 1, 1}, - {&__pyx_n_s_name, __pyx_k_name, sizeof(__pyx_k_name), 0, 0, 1, 1}, - {&__pyx_n_s_name_2, __pyx_k_name_2, sizeof(__pyx_k_name_2), 0, 0, 1, 1}, - {&__pyx_n_s_ndim, __pyx_k_ndim, sizeof(__pyx_k_ndim), 0, 0, 1, 1}, - {&__pyx_n_s_new, __pyx_k_new, sizeof(__pyx_k_new), 0, 0, 1, 1}, - {&__pyx_kp_s_no_default___reduce___due_to_non, __pyx_k_no_default___reduce___due_to_non, sizeof(__pyx_k_no_default___reduce___due_to_non), 0, 0, 1, 0}, - {&__pyx_n_s_np, __pyx_k_np, sizeof(__pyx_k_np), 0, 0, 1, 1}, - {&__pyx_n_s_numpy, __pyx_k_numpy, sizeof(__pyx_k_numpy), 0, 0, 1, 1}, - {&__pyx_kp_u_numpy_core_multiarray_failed_to, __pyx_k_numpy_core_multiarray_failed_to, sizeof(__pyx_k_numpy_core_multiarray_failed_to), 0, 1, 0, 0}, - {&__pyx_kp_u_numpy_core_umath_failed_to_impor, __pyx_k_numpy_core_umath_failed_to_impor, sizeof(__pyx_k_numpy_core_umath_failed_to_impor), 0, 1, 0, 0}, - {&__pyx_n_s_obj, __pyx_k_obj, sizeof(__pyx_k_obj), 0, 0, 1, 1}, - {&__pyx_n_s_pack, __pyx_k_pack, sizeof(__pyx_k_pack), 0, 0, 1, 1}, - {&__pyx_n_s_paths, __pyx_k_paths, sizeof(__pyx_k_paths), 0, 0, 1, 1}, - {&__pyx_n_s_pickle, __pyx_k_pickle, sizeof(__pyx_k_pickle), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_PickleError, __pyx_k_pyx_PickleError, sizeof(__pyx_k_pyx_PickleError), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_checksum, __pyx_k_pyx_checksum, sizeof(__pyx_k_pyx_checksum), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_getbuffer, __pyx_k_pyx_getbuffer, sizeof(__pyx_k_pyx_getbuffer), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_result, __pyx_k_pyx_result, sizeof(__pyx_k_pyx_result), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_state, __pyx_k_pyx_state, sizeof(__pyx_k_pyx_state), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_type, __pyx_k_pyx_type, sizeof(__pyx_k_pyx_type), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_unpickle_Enum, __pyx_k_pyx_unpickle_Enum, sizeof(__pyx_k_pyx_unpickle_Enum), 0, 0, 1, 1}, - {&__pyx_n_s_pyx_vtable, __pyx_k_pyx_vtable, sizeof(__pyx_k_pyx_vtable), 0, 0, 1, 1}, - {&__pyx_n_s_range, __pyx_k_range, sizeof(__pyx_k_range), 0, 0, 1, 1}, - {&__pyx_n_s_reduce, __pyx_k_reduce, sizeof(__pyx_k_reduce), 0, 0, 1, 1}, - {&__pyx_n_s_reduce_cython, __pyx_k_reduce_cython, sizeof(__pyx_k_reduce_cython), 0, 0, 1, 1}, - {&__pyx_n_s_reduce_ex, __pyx_k_reduce_ex, sizeof(__pyx_k_reduce_ex), 0, 0, 1, 1}, - {&__pyx_n_s_setstate, __pyx_k_setstate, sizeof(__pyx_k_setstate), 0, 0, 1, 1}, - {&__pyx_n_s_setstate_cython, __pyx_k_setstate_cython, sizeof(__pyx_k_setstate_cython), 0, 0, 1, 1}, - {&__pyx_n_s_shape, __pyx_k_shape, sizeof(__pyx_k_shape), 0, 0, 1, 1}, - {&__pyx_n_s_size, __pyx_k_size, sizeof(__pyx_k_size), 0, 0, 1, 1}, - {&__pyx_n_s_start, __pyx_k_start, sizeof(__pyx_k_start), 0, 0, 1, 1}, - {&__pyx_n_s_step, __pyx_k_step, sizeof(__pyx_k_step), 0, 0, 1, 1}, - {&__pyx_n_s_stop, __pyx_k_stop, sizeof(__pyx_k_stop), 0, 0, 1, 1}, - {&__pyx_kp_s_strided_and_direct, __pyx_k_strided_and_direct, sizeof(__pyx_k_strided_and_direct), 0, 0, 1, 0}, - {&__pyx_kp_s_strided_and_direct_or_indirect, __pyx_k_strided_and_direct_or_indirect, sizeof(__pyx_k_strided_and_direct_or_indirect), 0, 0, 1, 0}, - {&__pyx_kp_s_strided_and_indirect, __pyx_k_strided_and_indirect, sizeof(__pyx_k_strided_and_indirect), 0, 0, 1, 0}, - {&__pyx_kp_s_stringsource, __pyx_k_stringsource, sizeof(__pyx_k_stringsource), 0, 0, 1, 0}, - {&__pyx_n_s_struct, __pyx_k_struct, sizeof(__pyx_k_struct), 0, 0, 1, 1}, - {&__pyx_n_s_t_xs, __pyx_k_t_xs, sizeof(__pyx_k_t_xs), 0, 0, 1, 1}, - {&__pyx_n_s_t_ys, __pyx_k_t_ys, sizeof(__pyx_k_t_ys), 0, 0, 1, 1}, - {&__pyx_n_s_test, __pyx_k_test, sizeof(__pyx_k_test), 0, 0, 1, 1}, - {&__pyx_kp_s_unable_to_allocate_array_data, __pyx_k_unable_to_allocate_array_data, sizeof(__pyx_k_unable_to_allocate_array_data), 0, 0, 1, 0}, - {&__pyx_kp_s_unable_to_allocate_shape_and_str, __pyx_k_unable_to_allocate_shape_and_str, sizeof(__pyx_k_unable_to_allocate_shape_and_str), 0, 0, 1, 0}, - {&__pyx_n_s_unpack, __pyx_k_unpack, sizeof(__pyx_k_unpack), 0, 0, 1, 1}, - {&__pyx_n_s_update, __pyx_k_update, sizeof(__pyx_k_update), 0, 0, 1, 1}, - {&__pyx_n_s_values, __pyx_k_values, sizeof(__pyx_k_values), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} -}; -static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_n_s_range); if (!__pyx_builtin_range) __PYX_ERR(0, 19, __pyx_L1_error) - __pyx_builtin_ImportError = __Pyx_GetBuiltinName(__pyx_n_s_ImportError); if (!__pyx_builtin_ImportError) __PYX_ERR(1, 945, __pyx_L1_error) - __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_n_s_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(2, 133, __pyx_L1_error) - __pyx_builtin_MemoryError = __Pyx_GetBuiltinName(__pyx_n_s_MemoryError); if (!__pyx_builtin_MemoryError) __PYX_ERR(2, 148, __pyx_L1_error) - __pyx_builtin_enumerate = __Pyx_GetBuiltinName(__pyx_n_s_enumerate); if (!__pyx_builtin_enumerate) __PYX_ERR(2, 151, __pyx_L1_error) - __pyx_builtin_TypeError = __Pyx_GetBuiltinName(__pyx_n_s_TypeError); if (!__pyx_builtin_TypeError) __PYX_ERR(2, 2, __pyx_L1_error) - __pyx_builtin_Ellipsis = __Pyx_GetBuiltinName(__pyx_n_s_Ellipsis); if (!__pyx_builtin_Ellipsis) __PYX_ERR(2, 404, __pyx_L1_error) - __pyx_builtin_id = __Pyx_GetBuiltinName(__pyx_n_s_id); if (!__pyx_builtin_id) __PYX_ERR(2, 613, __pyx_L1_error) - __pyx_builtin_IndexError = __Pyx_GetBuiltinName(__pyx_n_s_IndexError); if (!__pyx_builtin_IndexError) __PYX_ERR(2, 832, __pyx_L1_error) - return 0; - __pyx_L1_error:; - return -1; -} - -static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":945 - * __pyx_import_array() - * except Exception: - * raise ImportError("numpy.core.multiarray failed to import") # <<<<<<<<<<<<<< - * - * cdef inline int import_umath() except -1: - */ - __pyx_tuple__2 = PyTuple_Pack(1, __pyx_kp_u_numpy_core_multiarray_failed_to); if (unlikely(!__pyx_tuple__2)) __PYX_ERR(1, 945, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__2); - __Pyx_GIVEREF(__pyx_tuple__2); - - /* "../../../../../../private/var/folders/vw/lmlrjzr57wl3821c35w4l92m0000gn/T/pip-build-env-re0s3513/overlay/lib/python3.9/site-packages/numpy/__init__.pxd":951 - * _import_umath() - * except Exception: - * raise ImportError("numpy.core.umath failed to import") # <<<<<<<<<<<<<< - * - * cdef inline int import_ufunc() except -1: - */ - __pyx_tuple__3 = PyTuple_Pack(1, __pyx_kp_u_numpy_core_umath_failed_to_impor); if (unlikely(!__pyx_tuple__3)) __PYX_ERR(1, 951, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__3); - __Pyx_GIVEREF(__pyx_tuple__3); - - /* "View.MemoryView":133 - * - * if not self.ndim: - * raise ValueError("Empty shape tuple for cython.array") # <<<<<<<<<<<<<< - * - * if itemsize <= 0: - */ - __pyx_tuple__4 = PyTuple_Pack(1, __pyx_kp_s_Empty_shape_tuple_for_cython_arr); if (unlikely(!__pyx_tuple__4)) __PYX_ERR(2, 133, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__4); - __Pyx_GIVEREF(__pyx_tuple__4); - - /* "View.MemoryView":136 - * - * if itemsize <= 0: - * raise ValueError("itemsize <= 0 for cython.array") # <<<<<<<<<<<<<< - * - * if not isinstance(format, bytes): - */ - __pyx_tuple__5 = PyTuple_Pack(1, __pyx_kp_s_itemsize_0_for_cython_array); if (unlikely(!__pyx_tuple__5)) __PYX_ERR(2, 136, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__5); - __Pyx_GIVEREF(__pyx_tuple__5); - - /* "View.MemoryView":148 - * - * if not self._shape: - * raise MemoryError("unable to allocate shape and strides.") # <<<<<<<<<<<<<< - * - * - */ - __pyx_tuple__6 = PyTuple_Pack(1, __pyx_kp_s_unable_to_allocate_shape_and_str); if (unlikely(!__pyx_tuple__6)) __PYX_ERR(2, 148, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__6); - __Pyx_GIVEREF(__pyx_tuple__6); - - /* "View.MemoryView":176 - * self.data = malloc(self.len) - * if not self.data: - * raise MemoryError("unable to allocate array data.") # <<<<<<<<<<<<<< - * - * if self.dtype_is_object: - */ - __pyx_tuple__7 = PyTuple_Pack(1, __pyx_kp_s_unable_to_allocate_array_data); if (unlikely(!__pyx_tuple__7)) __PYX_ERR(2, 176, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__7); - __Pyx_GIVEREF(__pyx_tuple__7); - - /* "View.MemoryView":192 - * bufmode = PyBUF_F_CONTIGUOUS | PyBUF_ANY_CONTIGUOUS - * if not (flags & bufmode): - * raise ValueError("Can only create a buffer that is contiguous in memory.") # <<<<<<<<<<<<<< - * info.buf = self.data - * info.len = self.len - */ - __pyx_tuple__8 = PyTuple_Pack(1, __pyx_kp_s_Can_only_create_a_buffer_that_is); if (unlikely(!__pyx_tuple__8)) __PYX_ERR(2, 192, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__8); - __Pyx_GIVEREF(__pyx_tuple__8); - - /* "(tree fragment)":2 - * def __reduce_cython__(self): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< - * def __setstate_cython__(self, __pyx_state): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - */ - __pyx_tuple__9 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__9)) __PYX_ERR(2, 2, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__9); - __Pyx_GIVEREF(__pyx_tuple__9); - - /* "(tree fragment)":4 - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< - */ - __pyx_tuple__10 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__10)) __PYX_ERR(2, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__10); - __Pyx_GIVEREF(__pyx_tuple__10); - - /* "View.MemoryView":418 - * def __setitem__(memoryview self, object index, object value): - * if self.view.readonly: - * raise TypeError("Cannot assign to read-only memoryview") # <<<<<<<<<<<<<< - * - * have_slices, index = _unellipsify(index, self.view.ndim) - */ - __pyx_tuple__11 = PyTuple_Pack(1, __pyx_kp_s_Cannot_assign_to_read_only_memor); if (unlikely(!__pyx_tuple__11)) __PYX_ERR(2, 418, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__11); - __Pyx_GIVEREF(__pyx_tuple__11); - - /* "View.MemoryView":495 - * result = struct.unpack(self.view.format, bytesitem) - * except struct.error: - * raise ValueError("Unable to convert item to object") # <<<<<<<<<<<<<< - * else: - * if len(self.view.format) == 1: - */ - __pyx_tuple__12 = PyTuple_Pack(1, __pyx_kp_s_Unable_to_convert_item_to_object); if (unlikely(!__pyx_tuple__12)) __PYX_ERR(2, 495, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__12); - __Pyx_GIVEREF(__pyx_tuple__12); - - /* "View.MemoryView":520 - * def __getbuffer__(self, Py_buffer *info, int flags): - * if flags & PyBUF_WRITABLE and self.view.readonly: - * raise ValueError("Cannot create writable memory view from read-only memoryview") # <<<<<<<<<<<<<< - * - * if flags & PyBUF_ND: - */ - __pyx_tuple__13 = PyTuple_Pack(1, __pyx_kp_s_Cannot_create_writable_memory_vi); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(2, 520, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__13); - __Pyx_GIVEREF(__pyx_tuple__13); - - /* "View.MemoryView":570 - * if self.view.strides == NULL: - * - * raise ValueError("Buffer view does not expose strides") # <<<<<<<<<<<<<< - * - * return tuple([stride for stride in self.view.strides[:self.view.ndim]]) - */ - __pyx_tuple__14 = PyTuple_Pack(1, __pyx_kp_s_Buffer_view_does_not_expose_stri); if (unlikely(!__pyx_tuple__14)) __PYX_ERR(2, 570, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__14); - __Pyx_GIVEREF(__pyx_tuple__14); - - /* "View.MemoryView":577 - * def suboffsets(self): - * if self.view.suboffsets == NULL: - * return (-1,) * self.view.ndim # <<<<<<<<<<<<<< - * - * return tuple([suboffset for suboffset in self.view.suboffsets[:self.view.ndim]]) - */ - __pyx_tuple__15 = PyTuple_New(1); if (unlikely(!__pyx_tuple__15)) __PYX_ERR(2, 577, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__15); - __Pyx_INCREF(__pyx_int_neg_1); - __Pyx_GIVEREF(__pyx_int_neg_1); - PyTuple_SET_ITEM(__pyx_tuple__15, 0, __pyx_int_neg_1); - __Pyx_GIVEREF(__pyx_tuple__15); - - /* "(tree fragment)":2 - * def __reduce_cython__(self): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< - * def __setstate_cython__(self, __pyx_state): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - */ - __pyx_tuple__16 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__16)) __PYX_ERR(2, 2, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__16); - __Pyx_GIVEREF(__pyx_tuple__16); - - /* "(tree fragment)":4 - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< - */ - __pyx_tuple__17 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__17)) __PYX_ERR(2, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__17); - __Pyx_GIVEREF(__pyx_tuple__17); - - /* "View.MemoryView":682 - * if item is Ellipsis: - * if not seen_ellipsis: - * result.extend([slice(None)] * (ndim - len(tup) + 1)) # <<<<<<<<<<<<<< - * seen_ellipsis = True - * else: - */ - __pyx_slice__18 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__18)) __PYX_ERR(2, 682, __pyx_L1_error) - __Pyx_GOTREF(__pyx_slice__18); - __Pyx_GIVEREF(__pyx_slice__18); - - /* "View.MemoryView":703 - * for suboffset in suboffsets[:ndim]: - * if suboffset >= 0: - * raise ValueError("Indirect dimensions not supported") # <<<<<<<<<<<<<< - * - * - */ - __pyx_tuple__19 = PyTuple_Pack(1, __pyx_kp_s_Indirect_dimensions_not_supporte); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(2, 703, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__19); - __Pyx_GIVEREF(__pyx_tuple__19); - - /* "(tree fragment)":2 - * def __reduce_cython__(self): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< - * def __setstate_cython__(self, __pyx_state): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - */ - __pyx_tuple__20 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__20)) __PYX_ERR(2, 2, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__20); - __Pyx_GIVEREF(__pyx_tuple__20); - - /* "(tree fragment)":4 - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") - * def __setstate_cython__(self, __pyx_state): - * raise TypeError("no default __reduce__ due to non-trivial __cinit__") # <<<<<<<<<<<<<< - */ - __pyx_tuple__21 = PyTuple_Pack(1, __pyx_kp_s_no_default___reduce___due_to_non); if (unlikely(!__pyx_tuple__21)) __PYX_ERR(2, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__21); - __Pyx_GIVEREF(__pyx_tuple__21); - __pyx_tuple__22 = PyTuple_Pack(3, __pyx_int_184977713, __pyx_int_136983863, __pyx_int_112105877); if (unlikely(!__pyx_tuple__22)) __PYX_ERR(2, 4, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__22); - __Pyx_GIVEREF(__pyx_tuple__22); - - /* "View.MemoryView":286 - * return self.name - * - * cdef generic = Enum("") # <<<<<<<<<<<<<< - * cdef strided = Enum("") # default - * cdef indirect = Enum("") - */ - __pyx_tuple__23 = PyTuple_Pack(1, __pyx_kp_s_strided_and_direct_or_indirect); if (unlikely(!__pyx_tuple__23)) __PYX_ERR(2, 286, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__23); - __Pyx_GIVEREF(__pyx_tuple__23); - - /* "View.MemoryView":287 - * - * cdef generic = Enum("") - * cdef strided = Enum("") # default # <<<<<<<<<<<<<< - * cdef indirect = Enum("") - * - */ - __pyx_tuple__24 = PyTuple_Pack(1, __pyx_kp_s_strided_and_direct); if (unlikely(!__pyx_tuple__24)) __PYX_ERR(2, 287, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__24); - __Pyx_GIVEREF(__pyx_tuple__24); - - /* "View.MemoryView":288 - * cdef generic = Enum("") - * cdef strided = Enum("") # default - * cdef indirect = Enum("") # <<<<<<<<<<<<<< - * - * - */ - __pyx_tuple__25 = PyTuple_Pack(1, __pyx_kp_s_strided_and_indirect); if (unlikely(!__pyx_tuple__25)) __PYX_ERR(2, 288, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__25); - __Pyx_GIVEREF(__pyx_tuple__25); - - /* "View.MemoryView":291 - * - * - * cdef contiguous = Enum("") # <<<<<<<<<<<<<< - * cdef indirect_contiguous = Enum("") - * - */ - __pyx_tuple__26 = PyTuple_Pack(1, __pyx_kp_s_contiguous_and_direct); if (unlikely(!__pyx_tuple__26)) __PYX_ERR(2, 291, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__26); - __Pyx_GIVEREF(__pyx_tuple__26); - - /* "View.MemoryView":292 - * - * cdef contiguous = Enum("") - * cdef indirect_contiguous = Enum("") # <<<<<<<<<<<<<< - * - * - */ - __pyx_tuple__27 = PyTuple_Pack(1, __pyx_kp_s_contiguous_and_indirect); if (unlikely(!__pyx_tuple__27)) __PYX_ERR(2, 292, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__27); - __Pyx_GIVEREF(__pyx_tuple__27); - - /* "(tree fragment)":1 - * def __pyx_unpickle_Enum(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< - * cdef object __pyx_PickleError - * cdef object __pyx_result - */ - __pyx_tuple__28 = PyTuple_Pack(5, __pyx_n_s_pyx_type, __pyx_n_s_pyx_checksum, __pyx_n_s_pyx_state, __pyx_n_s_pyx_PickleError, __pyx_n_s_pyx_result); if (unlikely(!__pyx_tuple__28)) __PYX_ERR(2, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__28); - __Pyx_GIVEREF(__pyx_tuple__28); - __pyx_codeobj__29 = (PyObject*)__Pyx_PyCode_New(3, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__28, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_pyx_unpickle_Enum, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__29)) __PYX_ERR(2, 1, __pyx_L1_error) - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void) { - /* InitThreads.init */ - #if defined(WITH_THREAD) && PY_VERSION_HEX < 0x030700F0 -PyEval_InitThreads(); -#endif - -if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error) - - if (__Pyx_InitStrings(__pyx_string_tab) < 0) __PYX_ERR(0, 1, __pyx_L1_error); - __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_int_112105877 = PyInt_FromLong(112105877L); if (unlikely(!__pyx_int_112105877)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_int_136983863 = PyInt_FromLong(136983863L); if (unlikely(!__pyx_int_136983863)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_int_184977713 = PyInt_FromLong(184977713L); if (unlikely(!__pyx_int_184977713)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_int_neg_1 = PyInt_FromLong(-1); if (unlikely(!__pyx_int_neg_1)) __PYX_ERR(0, 1, __pyx_L1_error) - return 0; - __pyx_L1_error:; - return -1; -} - -static CYTHON_SMALL_CODE int __Pyx_modinit_global_init_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_variable_export_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_function_export_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_type_init_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_type_import_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_variable_import_code(void); /*proto*/ -static CYTHON_SMALL_CODE int __Pyx_modinit_function_import_code(void); /*proto*/ - -static int __Pyx_modinit_global_init_code(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0); - /*--- Global init code ---*/ - generic = Py_None; Py_INCREF(Py_None); - strided = Py_None; Py_INCREF(Py_None); - indirect = Py_None; Py_INCREF(Py_None); - contiguous = Py_None; Py_INCREF(Py_None); - indirect_contiguous = Py_None; Py_INCREF(Py_None); - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_modinit_variable_export_code(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0); - /*--- Variable export code ---*/ - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_modinit_function_export_code(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0); - /*--- Function export code ---*/ - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_modinit_type_init_code(void) { - __Pyx_RefNannyDeclarations - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); - /*--- Type init code ---*/ - __pyx_vtabptr_array = &__pyx_vtable_array; - __pyx_vtable_array.get_memview = (PyObject *(*)(struct __pyx_array_obj *))__pyx_array_get_memview; - if (PyType_Ready(&__pyx_type___pyx_array) < 0) __PYX_ERR(2, 105, __pyx_L1_error) - #if PY_VERSION_HEX < 0x030800B1 - __pyx_type___pyx_array.tp_print = 0; - #endif - if (__Pyx_SetVtable(__pyx_type___pyx_array.tp_dict, __pyx_vtabptr_array) < 0) __PYX_ERR(2, 105, __pyx_L1_error) - if (__Pyx_setup_reduce((PyObject*)&__pyx_type___pyx_array) < 0) __PYX_ERR(2, 105, __pyx_L1_error) - __pyx_array_type = &__pyx_type___pyx_array; - if (PyType_Ready(&__pyx_type___pyx_MemviewEnum) < 0) __PYX_ERR(2, 279, __pyx_L1_error) - #if PY_VERSION_HEX < 0x030800B1 - __pyx_type___pyx_MemviewEnum.tp_print = 0; - #endif - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type___pyx_MemviewEnum.tp_dictoffset && __pyx_type___pyx_MemviewEnum.tp_getattro == PyObject_GenericGetAttr)) { - __pyx_type___pyx_MemviewEnum.tp_getattro = __Pyx_PyObject_GenericGetAttr; - } - if (__Pyx_setup_reduce((PyObject*)&__pyx_type___pyx_MemviewEnum) < 0) __PYX_ERR(2, 279, __pyx_L1_error) - __pyx_MemviewEnum_type = &__pyx_type___pyx_MemviewEnum; - __pyx_vtabptr_memoryview = &__pyx_vtable_memoryview; - __pyx_vtable_memoryview.get_item_pointer = (char *(*)(struct __pyx_memoryview_obj *, PyObject *))__pyx_memoryview_get_item_pointer; - __pyx_vtable_memoryview.is_slice = (PyObject *(*)(struct __pyx_memoryview_obj *, PyObject *))__pyx_memoryview_is_slice; - __pyx_vtable_memoryview.setitem_slice_assignment = (PyObject *(*)(struct __pyx_memoryview_obj *, PyObject *, PyObject *))__pyx_memoryview_setitem_slice_assignment; - __pyx_vtable_memoryview.setitem_slice_assign_scalar = (PyObject *(*)(struct __pyx_memoryview_obj *, struct __pyx_memoryview_obj *, PyObject *))__pyx_memoryview_setitem_slice_assign_scalar; - __pyx_vtable_memoryview.setitem_indexed = (PyObject *(*)(struct __pyx_memoryview_obj *, PyObject *, PyObject *))__pyx_memoryview_setitem_indexed; - __pyx_vtable_memoryview.convert_item_to_object = (PyObject *(*)(struct __pyx_memoryview_obj *, char *))__pyx_memoryview_convert_item_to_object; - __pyx_vtable_memoryview.assign_item_from_object = (PyObject *(*)(struct __pyx_memoryview_obj *, char *, PyObject *))__pyx_memoryview_assign_item_from_object; - if (PyType_Ready(&__pyx_type___pyx_memoryview) < 0) __PYX_ERR(2, 330, __pyx_L1_error) - #if PY_VERSION_HEX < 0x030800B1 - __pyx_type___pyx_memoryview.tp_print = 0; - #endif - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type___pyx_memoryview.tp_dictoffset && __pyx_type___pyx_memoryview.tp_getattro == PyObject_GenericGetAttr)) { - __pyx_type___pyx_memoryview.tp_getattro = __Pyx_PyObject_GenericGetAttr; - } - if (__Pyx_SetVtable(__pyx_type___pyx_memoryview.tp_dict, __pyx_vtabptr_memoryview) < 0) __PYX_ERR(2, 330, __pyx_L1_error) - if (__Pyx_setup_reduce((PyObject*)&__pyx_type___pyx_memoryview) < 0) __PYX_ERR(2, 330, __pyx_L1_error) - __pyx_memoryview_type = &__pyx_type___pyx_memoryview; - __pyx_vtabptr__memoryviewslice = &__pyx_vtable__memoryviewslice; - __pyx_vtable__memoryviewslice.__pyx_base = *__pyx_vtabptr_memoryview; - __pyx_vtable__memoryviewslice.__pyx_base.convert_item_to_object = (PyObject *(*)(struct __pyx_memoryview_obj *, char *))__pyx_memoryviewslice_convert_item_to_object; - __pyx_vtable__memoryviewslice.__pyx_base.assign_item_from_object = (PyObject *(*)(struct __pyx_memoryview_obj *, char *, PyObject *))__pyx_memoryviewslice_assign_item_from_object; - __pyx_type___pyx_memoryviewslice.tp_base = __pyx_memoryview_type; - if (PyType_Ready(&__pyx_type___pyx_memoryviewslice) < 0) __PYX_ERR(2, 965, __pyx_L1_error) - #if PY_VERSION_HEX < 0x030800B1 - __pyx_type___pyx_memoryviewslice.tp_print = 0; - #endif - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_type___pyx_memoryviewslice.tp_dictoffset && __pyx_type___pyx_memoryviewslice.tp_getattro == PyObject_GenericGetAttr)) { - __pyx_type___pyx_memoryviewslice.tp_getattro = __Pyx_PyObject_GenericGetAttr; - } - if (__Pyx_SetVtable(__pyx_type___pyx_memoryviewslice.tp_dict, __pyx_vtabptr__memoryviewslice) < 0) __PYX_ERR(2, 965, __pyx_L1_error) - if (__Pyx_setup_reduce((PyObject*)&__pyx_type___pyx_memoryviewslice) < 0) __PYX_ERR(2, 965, __pyx_L1_error) - __pyx_memoryviewslice_type = &__pyx_type___pyx_memoryviewslice; - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_modinit_type_import_code(void) { - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0); - /*--- Type import code ---*/ - __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 9, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_7cpython_4type_type = __Pyx_ImportType(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME, "type", - #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000 - sizeof(PyTypeObject), - #else - sizeof(PyHeapTypeObject), - #endif - __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyImport_ImportModule("numpy"); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 200, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_ptype_5numpy_dtype = __Pyx_ImportType(__pyx_t_1, "numpy", "dtype", sizeof(PyArray_Descr), __Pyx_ImportType_CheckSize_Ignore); - if (!__pyx_ptype_5numpy_dtype) __PYX_ERR(1, 200, __pyx_L1_error) - __pyx_ptype_5numpy_flatiter = __Pyx_ImportType(__pyx_t_1, "numpy", "flatiter", sizeof(PyArrayIterObject), __Pyx_ImportType_CheckSize_Ignore); - if (!__pyx_ptype_5numpy_flatiter) __PYX_ERR(1, 223, __pyx_L1_error) - __pyx_ptype_5numpy_broadcast = __Pyx_ImportType(__pyx_t_1, "numpy", "broadcast", sizeof(PyArrayMultiIterObject), __Pyx_ImportType_CheckSize_Ignore); - if (!__pyx_ptype_5numpy_broadcast) __PYX_ERR(1, 227, __pyx_L1_error) - __pyx_ptype_5numpy_ndarray = __Pyx_ImportType(__pyx_t_1, "numpy", "ndarray", sizeof(PyArrayObject), __Pyx_ImportType_CheckSize_Ignore); - if (!__pyx_ptype_5numpy_ndarray) __PYX_ERR(1, 239, __pyx_L1_error) - __pyx_ptype_5numpy_generic = __Pyx_ImportType(__pyx_t_1, "numpy", "generic", sizeof(PyObject), __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_5numpy_generic) __PYX_ERR(1, 771, __pyx_L1_error) - __pyx_ptype_5numpy_number = __Pyx_ImportType(__pyx_t_1, "numpy", "number", sizeof(PyObject), __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_5numpy_number) __PYX_ERR(1, 773, __pyx_L1_error) - __pyx_ptype_5numpy_integer = __Pyx_ImportType(__pyx_t_1, "numpy", "integer", sizeof(PyObject), __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_5numpy_integer) __PYX_ERR(1, 775, __pyx_L1_error) - __pyx_ptype_5numpy_signedinteger = __Pyx_ImportType(__pyx_t_1, "numpy", "signedinteger", sizeof(PyObject), __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_5numpy_signedinteger) __PYX_ERR(1, 777, __pyx_L1_error) - __pyx_ptype_5numpy_unsignedinteger = __Pyx_ImportType(__pyx_t_1, "numpy", "unsignedinteger", sizeof(PyObject), __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_5numpy_unsignedinteger) __PYX_ERR(1, 779, __pyx_L1_error) - __pyx_ptype_5numpy_inexact = __Pyx_ImportType(__pyx_t_1, "numpy", "inexact", sizeof(PyObject), __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_5numpy_inexact) __PYX_ERR(1, 781, __pyx_L1_error) - __pyx_ptype_5numpy_floating = __Pyx_ImportType(__pyx_t_1, "numpy", "floating", sizeof(PyObject), __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_5numpy_floating) __PYX_ERR(1, 783, __pyx_L1_error) - __pyx_ptype_5numpy_complexfloating = __Pyx_ImportType(__pyx_t_1, "numpy", "complexfloating", sizeof(PyObject), __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_5numpy_complexfloating) __PYX_ERR(1, 785, __pyx_L1_error) - __pyx_ptype_5numpy_flexible = __Pyx_ImportType(__pyx_t_1, "numpy", "flexible", sizeof(PyObject), __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_5numpy_flexible) __PYX_ERR(1, 787, __pyx_L1_error) - __pyx_ptype_5numpy_character = __Pyx_ImportType(__pyx_t_1, "numpy", "character", sizeof(PyObject), __Pyx_ImportType_CheckSize_Warn); - if (!__pyx_ptype_5numpy_character) __PYX_ERR(1, 789, __pyx_L1_error) - __pyx_ptype_5numpy_ufunc = __Pyx_ImportType(__pyx_t_1, "numpy", "ufunc", sizeof(PyUFuncObject), __Pyx_ImportType_CheckSize_Ignore); - if (!__pyx_ptype_5numpy_ufunc) __PYX_ERR(1, 827, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_modinit_variable_import_code(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_modinit_variable_import_code", 0); - /*--- Variable import code ---*/ - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_modinit_function_import_code(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_modinit_function_import_code", 0); - /*--- Function import code ---*/ - __Pyx_RefNannyFinishContext(); - return 0; -} - - -#ifndef CYTHON_NO_PYINIT_EXPORT -#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC -#elif PY_MAJOR_VERSION < 3 -#ifdef __cplusplus -#define __Pyx_PyMODINIT_FUNC extern "C" void -#else -#define __Pyx_PyMODINIT_FUNC void -#endif -#else -#ifdef __cplusplus -#define __Pyx_PyMODINIT_FUNC extern "C" PyObject * -#else -#define __Pyx_PyMODINIT_FUNC PyObject * -#endif -#endif - - -#if PY_MAJOR_VERSION < 3 -__Pyx_PyMODINIT_FUNC initcore(void) CYTHON_SMALL_CODE; /*proto*/ -__Pyx_PyMODINIT_FUNC initcore(void) -#else -__Pyx_PyMODINIT_FUNC PyInit_core(void) CYTHON_SMALL_CODE; /*proto*/ -__Pyx_PyMODINIT_FUNC PyInit_core(void) -#if CYTHON_PEP489_MULTI_PHASE_INIT -{ - return PyModuleDef_Init(&__pyx_moduledef); -} -static CYTHON_SMALL_CODE int __Pyx_check_single_interpreter(void) { - #if PY_VERSION_HEX >= 0x030700A1 - static PY_INT64_T main_interpreter_id = -1; - PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp); - if (main_interpreter_id == -1) { - main_interpreter_id = current_id; - return (unlikely(current_id == -1)) ? -1 : 0; - } else if (unlikely(main_interpreter_id != current_id)) - #else - static PyInterpreterState *main_interpreter = NULL; - PyInterpreterState *current_interpreter = PyThreadState_Get()->interp; - if (!main_interpreter) { - main_interpreter = current_interpreter; - } else if (unlikely(main_interpreter != current_interpreter)) - #endif - { - PyErr_SetString( - PyExc_ImportError, - "Interpreter change detected - this module can only be loaded into one interpreter per process."); - return -1; - } - return 0; -} -static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name, int allow_none) { - PyObject *value = PyObject_GetAttrString(spec, from_name); - int result = 0; - if (likely(value)) { - if (allow_none || value != Py_None) { - result = PyDict_SetItemString(moddict, to_name, value); - } - Py_DECREF(value); - } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) { - PyErr_Clear(); - } else { - result = -1; - } - return result; -} -static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, CYTHON_UNUSED PyModuleDef *def) { - PyObject *module = NULL, *moddict, *modname; - if (__Pyx_check_single_interpreter()) - return NULL; - if (__pyx_m) - return __Pyx_NewRef(__pyx_m); - modname = PyObject_GetAttrString(spec, "name"); - if (unlikely(!modname)) goto bad; - module = PyModule_NewObject(modname); - Py_DECREF(modname); - if (unlikely(!module)) goto bad; - moddict = PyModule_GetDict(module); - if (unlikely(!moddict)) goto bad; - if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__", 1) < 0)) goto bad; - if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__", 1) < 0)) goto bad; - if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__", 1) < 0)) goto bad; - if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "submodule_search_locations", "__path__", 0) < 0)) goto bad; - return module; -bad: - Py_XDECREF(module); - return NULL; -} - - -static CYTHON_SMALL_CODE int __pyx_pymod_exec_core(PyObject *__pyx_pyinit_module) -#endif -#endif -{ - PyObject *__pyx_t_1 = NULL; - static PyThread_type_lock __pyx_t_2[8]; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannyDeclarations - #if CYTHON_PEP489_MULTI_PHASE_INIT - if (__pyx_m) { - if (__pyx_m == __pyx_pyinit_module) return 0; - PyErr_SetString(PyExc_RuntimeError, "Module 'core' has already been imported. Re-initialisation is not supported."); - return -1; - } - #elif PY_MAJOR_VERSION >= 3 - if (__pyx_m) return __Pyx_NewRef(__pyx_m); - #endif - #if CYTHON_REFNANNY -__Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); -if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); -} -#endif - __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit_core(void)", 0); - if (__Pyx_check_binary_version() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #ifdef __Pxy_PyFrame_Initialize_Offsets - __Pxy_PyFrame_Initialize_Offsets(); - #endif - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error) - __pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error) - #ifdef __Pyx_CyFunction_USED - if (__pyx_CyFunction_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - #ifdef __Pyx_FusedFunction_USED - if (__pyx_FusedFunction_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - #ifdef __Pyx_Coroutine_USED - if (__pyx_Coroutine_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - #ifdef __Pyx_Generator_USED - if (__pyx_Generator_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - #ifdef __Pyx_AsyncGen_USED - if (__pyx_AsyncGen_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - #ifdef __Pyx_StopAsyncIteration_USED - if (__pyx_StopAsyncIteration_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(WITH_THREAD) && PY_VERSION_HEX < 0x030700F0 && defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - PyEval_InitThreads(); - #endif - /*--- Module creation code ---*/ - #if CYTHON_PEP489_MULTI_PHASE_INIT - __pyx_m = __pyx_pyinit_module; - Py_INCREF(__pyx_m); - #else - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4("core", __pyx_methods, 0, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m); - #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - #endif - if (unlikely(!__pyx_m)) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error) - Py_INCREF(__pyx_d); - __pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error) - Py_INCREF(__pyx_b); - __pyx_cython_runtime = PyImport_AddModule((char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error) - Py_INCREF(__pyx_cython_runtime); - if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error); - /*--- Initialize various global constants etc. ---*/ - if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #if PY_MAJOR_VERSION < 3 && (__PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT) - if (__Pyx_init_sys_getdefaultencoding_params() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - if (__pyx_module_is_main_TTS__tts__utils__monotonic_align__core) { - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_name_2, __pyx_n_s_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - } - #if PY_MAJOR_VERSION >= 3 - { - PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(0, 1, __pyx_L1_error) - if (!PyDict_GetItemString(modules, "TTS.tts.utils.monotonic_align.core")) { - if (unlikely(PyDict_SetItemString(modules, "TTS.tts.utils.monotonic_align.core", __pyx_m) < 0)) __PYX_ERR(0, 1, __pyx_L1_error) - } - } - #endif - /*--- Builtin init code ---*/ - if (__Pyx_InitCachedBuiltins() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - /*--- Constants init code ---*/ - if (__Pyx_InitCachedConstants() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - /*--- Global type/function init code ---*/ - (void)__Pyx_modinit_global_init_code(); - (void)__Pyx_modinit_variable_export_code(); - (void)__Pyx_modinit_function_export_code(); - if (unlikely(__Pyx_modinit_type_init_code() < 0)) __PYX_ERR(0, 1, __pyx_L1_error) - if (unlikely(__Pyx_modinit_type_import_code() < 0)) __PYX_ERR(0, 1, __pyx_L1_error) - (void)__Pyx_modinit_variable_import_code(); - (void)__Pyx_modinit_function_import_code(); - /*--- Execution code ---*/ - #if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED) - if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error) - #endif - - /* "TTS/tts/utils/monotonic_align/core.pyx":1 - * import numpy as np # <<<<<<<<<<<<<< - * - * cimport cython - */ - __pyx_t_1 = __Pyx_Import(__pyx_n_s_numpy, 0, 0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_np, __pyx_t_1) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "TTS/tts/utils/monotonic_align/core.pyx":42 - * @cython.boundscheck(False) - * @cython.wraparound(False) - * cpdef void maximum_path_c(int[:,:,::1] paths, float[:,:,::1] values, int[::1] t_xs, int[::1] t_ys, float max_neg_val=-1e9) nogil: # <<<<<<<<<<<<<< - * cdef int b = values.shape[0] - * - */ - __pyx_k_ = (-1e9); - __pyx_k_ = (-1e9); - - /* "TTS/tts/utils/monotonic_align/core.pyx":1 - * import numpy as np # <<<<<<<<<<<<<< - * - * cimport cython - */ - __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_1) < 0) __PYX_ERR(0, 1, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "View.MemoryView":209 - * info.obj = self - * - * __pyx_getbuffer = capsule( &__pyx_array_getbuffer, "getbuffer(obj, view, flags)") # <<<<<<<<<<<<<< - * - * def __dealloc__(array self): - */ - __pyx_t_1 = __pyx_capsule_create(((void *)(&__pyx_array_getbuffer)), ((char *)"getbuffer(obj, view, flags)")); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 209, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem((PyObject *)__pyx_array_type->tp_dict, __pyx_n_s_pyx_getbuffer, __pyx_t_1) < 0) __PYX_ERR(2, 209, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_array_type); - - /* "View.MemoryView":286 - * return self.name - * - * cdef generic = Enum("") # <<<<<<<<<<<<<< - * cdef strided = Enum("") # default - * cdef indirect = Enum("") - */ - __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_MemviewEnum_type), __pyx_tuple__23, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 286, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XGOTREF(generic); - __Pyx_DECREF_SET(generic, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - - /* "View.MemoryView":287 - * - * cdef generic = Enum("") - * cdef strided = Enum("") # default # <<<<<<<<<<<<<< - * cdef indirect = Enum("") - * - */ - __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_MemviewEnum_type), __pyx_tuple__24, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 287, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XGOTREF(strided); - __Pyx_DECREF_SET(strided, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - - /* "View.MemoryView":288 - * cdef generic = Enum("") - * cdef strided = Enum("") # default - * cdef indirect = Enum("") # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_MemviewEnum_type), __pyx_tuple__25, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 288, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XGOTREF(indirect); - __Pyx_DECREF_SET(indirect, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - - /* "View.MemoryView":291 - * - * - * cdef contiguous = Enum("") # <<<<<<<<<<<<<< - * cdef indirect_contiguous = Enum("") - * - */ - __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_MemviewEnum_type), __pyx_tuple__26, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 291, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XGOTREF(contiguous); - __Pyx_DECREF_SET(contiguous, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - - /* "View.MemoryView":292 - * - * cdef contiguous = Enum("") - * cdef indirect_contiguous = Enum("") # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_1 = __Pyx_PyObject_Call(((PyObject *)__pyx_MemviewEnum_type), __pyx_tuple__27, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 292, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XGOTREF(indirect_contiguous); - __Pyx_DECREF_SET(indirect_contiguous, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - - /* "View.MemoryView":316 - * - * DEF THREAD_LOCKS_PREALLOCATED = 8 - * cdef int __pyx_memoryview_thread_locks_used = 0 # <<<<<<<<<<<<<< - * cdef PyThread_type_lock[THREAD_LOCKS_PREALLOCATED] __pyx_memoryview_thread_locks = [ - * PyThread_allocate_lock(), - */ - __pyx_memoryview_thread_locks_used = 0; - - /* "View.MemoryView":317 - * DEF THREAD_LOCKS_PREALLOCATED = 8 - * cdef int __pyx_memoryview_thread_locks_used = 0 - * cdef PyThread_type_lock[THREAD_LOCKS_PREALLOCATED] __pyx_memoryview_thread_locks = [ # <<<<<<<<<<<<<< - * PyThread_allocate_lock(), - * PyThread_allocate_lock(), - */ - __pyx_t_2[0] = PyThread_allocate_lock(); - __pyx_t_2[1] = PyThread_allocate_lock(); - __pyx_t_2[2] = PyThread_allocate_lock(); - __pyx_t_2[3] = PyThread_allocate_lock(); - __pyx_t_2[4] = PyThread_allocate_lock(); - __pyx_t_2[5] = PyThread_allocate_lock(); - __pyx_t_2[6] = PyThread_allocate_lock(); - __pyx_t_2[7] = PyThread_allocate_lock(); - memcpy(&(__pyx_memoryview_thread_locks[0]), __pyx_t_2, sizeof(__pyx_memoryview_thread_locks[0]) * (8)); - - /* "View.MemoryView":549 - * info.obj = self - * - * __pyx_getbuffer = capsule( &__pyx_memoryview_getbuffer, "getbuffer(obj, view, flags)") # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_1 = __pyx_capsule_create(((void *)(&__pyx_memoryview_getbuffer)), ((char *)"getbuffer(obj, view, flags)")); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 549, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem((PyObject *)__pyx_memoryview_type->tp_dict, __pyx_n_s_pyx_getbuffer, __pyx_t_1) < 0) __PYX_ERR(2, 549, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_memoryview_type); - - /* "View.MemoryView":995 - * return self.from_object - * - * __pyx_getbuffer = capsule( &__pyx_memoryview_getbuffer, "getbuffer(obj, view, flags)") # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_1 = __pyx_capsule_create(((void *)(&__pyx_memoryview_getbuffer)), ((char *)"getbuffer(obj, view, flags)")); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 995, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem((PyObject *)__pyx_memoryviewslice_type->tp_dict, __pyx_n_s_pyx_getbuffer, __pyx_t_1) < 0) __PYX_ERR(2, 995, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - PyType_Modified(__pyx_memoryviewslice_type); - - /* "(tree fragment)":1 - * def __pyx_unpickle_Enum(__pyx_type, long __pyx_checksum, __pyx_state): # <<<<<<<<<<<<<< - * cdef object __pyx_PickleError - * cdef object __pyx_result - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_15View_dot_MemoryView_1__pyx_unpickle_Enum, NULL, __pyx_n_s_View_MemoryView); if (unlikely(!__pyx_t_1)) __PYX_ERR(2, 1, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_pyx_unpickle_Enum, __pyx_t_1) < 0) __PYX_ERR(2, 1, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "(tree fragment)":11 - * __pyx_unpickle_Enum__set_state( __pyx_result, __pyx_state) - * return __pyx_result - * cdef __pyx_unpickle_Enum__set_state(Enum __pyx_result, tuple __pyx_state): # <<<<<<<<<<<<<< - * __pyx_result.name = __pyx_state[0] - * if len(__pyx_state) > 1 and hasattr(__pyx_result, '__dict__'): - */ - - /*--- Wrapped vars code ---*/ - - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - if (__pyx_m) { - if (__pyx_d) { - __Pyx_AddTraceback("init TTS.tts.utils.monotonic_align.core", __pyx_clineno, __pyx_lineno, __pyx_filename); - } - Py_CLEAR(__pyx_m); - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init TTS.tts.utils.monotonic_align.core"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if CYTHON_PEP489_MULTI_PHASE_INIT - return (__pyx_m != NULL) ? 0 : -1; - #elif PY_MAJOR_VERSION >= 3 - return __pyx_m; - #else - return; - #endif -} - -/* --- Runtime support code --- */ -/* Refnanny */ -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule(modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, "RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; -} -#endif - -/* PyObjectGetAttrStr */ -#if CYTHON_USE_TYPE_SLOTS -static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) { - PyTypeObject* tp = Py_TYPE(obj); - if (likely(tp->tp_getattro)) - return tp->tp_getattro(obj, attr_name); -#if PY_MAJOR_VERSION < 3 - if (likely(tp->tp_getattr)) - return tp->tp_getattr(obj, PyString_AS_STRING(attr_name)); -#endif - return PyObject_GetAttr(obj, attr_name); -} -#endif - -/* GetBuiltinName */ -static PyObject *__Pyx_GetBuiltinName(PyObject *name) { - PyObject* result = __Pyx_PyObject_GetAttrStr(__pyx_b, name); - if (unlikely(!result)) { - PyErr_Format(PyExc_NameError, -#if PY_MAJOR_VERSION >= 3 - "name '%U' is not defined", name); -#else - "name '%.200s' is not defined", PyString_AS_STRING(name)); -#endif - } - return result; -} - -/* MemviewSliceInit */ -static int -__Pyx_init_memviewslice(struct __pyx_memoryview_obj *memview, - int ndim, - __Pyx_memviewslice *memviewslice, - int memview_is_new_reference) -{ - __Pyx_RefNannyDeclarations - int i, retval=-1; - Py_buffer *buf = &memview->view; - __Pyx_RefNannySetupContext("init_memviewslice", 0); - if (unlikely(memviewslice->memview || memviewslice->data)) { - PyErr_SetString(PyExc_ValueError, - "memviewslice is already initialized!"); - goto fail; - } - if (buf->strides) { - for (i = 0; i < ndim; i++) { - memviewslice->strides[i] = buf->strides[i]; - } - } else { - Py_ssize_t stride = buf->itemsize; - for (i = ndim - 1; i >= 0; i--) { - memviewslice->strides[i] = stride; - stride *= buf->shape[i]; - } - } - for (i = 0; i < ndim; i++) { - memviewslice->shape[i] = buf->shape[i]; - if (buf->suboffsets) { - memviewslice->suboffsets[i] = buf->suboffsets[i]; - } else { - memviewslice->suboffsets[i] = -1; - } - } - memviewslice->memview = memview; - memviewslice->data = (char *)buf->buf; - if (__pyx_add_acquisition_count(memview) == 0 && !memview_is_new_reference) { - Py_INCREF(memview); - } - retval = 0; - goto no_fail; -fail: - memviewslice->memview = 0; - memviewslice->data = 0; - retval = -1; -no_fail: - __Pyx_RefNannyFinishContext(); - return retval; -} -#ifndef Py_NO_RETURN -#define Py_NO_RETURN -#endif -static void __pyx_fatalerror(const char *fmt, ...) Py_NO_RETURN { - va_list vargs; - char msg[200]; -#ifdef HAVE_STDARG_PROTOTYPES - va_start(vargs, fmt); -#else - va_start(vargs); -#endif - vsnprintf(msg, 200, fmt, vargs); - va_end(vargs); - Py_FatalError(msg); -} -static CYTHON_INLINE int -__pyx_add_acquisition_count_locked(__pyx_atomic_int *acquisition_count, - PyThread_type_lock lock) -{ - int result; - PyThread_acquire_lock(lock, 1); - result = (*acquisition_count)++; - PyThread_release_lock(lock); - return result; -} -static CYTHON_INLINE int -__pyx_sub_acquisition_count_locked(__pyx_atomic_int *acquisition_count, - PyThread_type_lock lock) -{ - int result; - PyThread_acquire_lock(lock, 1); - result = (*acquisition_count)--; - PyThread_release_lock(lock); - return result; -} -static CYTHON_INLINE void -__Pyx_INC_MEMVIEW(__Pyx_memviewslice *memslice, int have_gil, int lineno) -{ - int first_time; - struct __pyx_memoryview_obj *memview = memslice->memview; - if (unlikely(!memview || (PyObject *) memview == Py_None)) - return; - if (unlikely(__pyx_get_slice_count(memview) < 0)) - __pyx_fatalerror("Acquisition count is %d (line %d)", - __pyx_get_slice_count(memview), lineno); - first_time = __pyx_add_acquisition_count(memview) == 0; - if (unlikely(first_time)) { - if (have_gil) { - Py_INCREF((PyObject *) memview); - } else { - PyGILState_STATE _gilstate = PyGILState_Ensure(); - Py_INCREF((PyObject *) memview); - PyGILState_Release(_gilstate); - } - } -} -static CYTHON_INLINE void __Pyx_XDEC_MEMVIEW(__Pyx_memviewslice *memslice, - int have_gil, int lineno) { - int last_time; - struct __pyx_memoryview_obj *memview = memslice->memview; - if (unlikely(!memview || (PyObject *) memview == Py_None)) { - memslice->memview = NULL; - return; - } - if (unlikely(__pyx_get_slice_count(memview) <= 0)) - __pyx_fatalerror("Acquisition count is %d (line %d)", - __pyx_get_slice_count(memview), lineno); - last_time = __pyx_sub_acquisition_count(memview) == 1; - memslice->data = NULL; - if (unlikely(last_time)) { - if (have_gil) { - Py_CLEAR(memslice->memview); - } else { - PyGILState_STATE _gilstate = PyGILState_Ensure(); - Py_CLEAR(memslice->memview); - PyGILState_Release(_gilstate); - } - } else { - memslice->memview = NULL; - } -} - -/* RaiseArgTupleInvalid */ -static void __Pyx_RaiseArgtupleInvalid( - const char* func_name, - int exact, - Py_ssize_t num_min, - Py_ssize_t num_max, - Py_ssize_t num_found) -{ - Py_ssize_t num_expected; - const char *more_or_less; - if (num_found < num_min) { - num_expected = num_min; - more_or_less = "at least"; - } else { - num_expected = num_max; - more_or_less = "at most"; - } - if (exact) { - more_or_less = "exactly"; - } - PyErr_Format(PyExc_TypeError, - "%.200s() takes %.8s %" CYTHON_FORMAT_SSIZE_T "d positional argument%.1s (%" CYTHON_FORMAT_SSIZE_T "d given)", - func_name, more_or_less, num_expected, - (num_expected == 1) ? "" : "s", num_found); -} - -/* RaiseDoubleKeywords */ -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, - PyObject* kw_name) -{ - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION >= 3 - "%s() got multiple values for keyword argument '%U'", func_name, kw_name); - #else - "%s() got multiple values for keyword argument '%s'", func_name, - PyString_AsString(kw_name)); - #endif -} - -/* ParseKeywords */ -static int __Pyx_ParseOptionalKeywords( - PyObject *kwds, - PyObject **argnames[], - PyObject *kwds2, - PyObject *values[], - Py_ssize_t num_pos_args, - const char* function_name) -{ - PyObject *key = 0, *value = 0; - Py_ssize_t pos = 0; - PyObject*** name; - PyObject*** first_kw_arg = argnames + num_pos_args; - while (PyDict_Next(kwds, &pos, &key, &value)) { - name = first_kw_arg; - while (*name && (**name != key)) name++; - if (*name) { - values[name-argnames] = value; - continue; - } - name = first_kw_arg; - #if PY_MAJOR_VERSION < 3 - if (likely(PyString_Check(key))) { - while (*name) { - if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key)) - && _PyString_Eq(**name, key)) { - values[name-argnames] = value; - break; - } - name++; - } - if (*name) continue; - else { - PyObject*** argname = argnames; - while (argname != first_kw_arg) { - if ((**argname == key) || ( - (CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**argname) == PyString_GET_SIZE(key)) - && _PyString_Eq(**argname, key))) { - goto arg_passed_twice; - } - argname++; - } - } - } else - #endif - if (likely(PyUnicode_Check(key))) { - while (*name) { - int cmp = (**name == key) ? 0 : - #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 - (__Pyx_PyUnicode_GET_LENGTH(**name) != __Pyx_PyUnicode_GET_LENGTH(key)) ? 1 : - #endif - PyUnicode_Compare(**name, key); - if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; - if (cmp == 0) { - values[name-argnames] = value; - break; - } - name++; - } - if (*name) continue; - else { - PyObject*** argname = argnames; - while (argname != first_kw_arg) { - int cmp = (**argname == key) ? 0 : - #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3 - (__Pyx_PyUnicode_GET_LENGTH(**argname) != __Pyx_PyUnicode_GET_LENGTH(key)) ? 1 : - #endif - PyUnicode_Compare(**argname, key); - if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad; - if (cmp == 0) goto arg_passed_twice; - argname++; - } - } - } else - goto invalid_keyword_type; - if (kwds2) { - if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; - } else { - goto invalid_keyword; - } - } - return 0; -arg_passed_twice: - __Pyx_RaiseDoubleKeywordsError(function_name, key); - goto bad; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%.200s() keywords must be strings", function_name); - goto bad; -invalid_keyword: - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION < 3 - "%.200s() got an unexpected keyword argument '%.200s'", - function_name, PyString_AsString(key)); - #else - "%s() got an unexpected keyword argument '%U'", - function_name, key); - #endif -bad: - return -1; -} - -/* None */ -static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname) { - PyErr_Format(PyExc_UnboundLocalError, "local variable '%s' referenced before assignment", varname); -} - -/* GetTopmostException */ -#if CYTHON_USE_EXC_INFO_STACK -static _PyErr_StackItem * -__Pyx_PyErr_GetTopmostException(PyThreadState *tstate) -{ - _PyErr_StackItem *exc_info = tstate->exc_info; - while ((exc_info->exc_type == NULL || exc_info->exc_type == Py_None) && - exc_info->previous_item != NULL) - { - exc_info = exc_info->previous_item; - } - return exc_info; -} -#endif - -/* SaveResetException */ -#if CYTHON_FAST_THREAD_STATE -static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { - #if CYTHON_USE_EXC_INFO_STACK - _PyErr_StackItem *exc_info = __Pyx_PyErr_GetTopmostException(tstate); - *type = exc_info->exc_type; - *value = exc_info->exc_value; - *tb = exc_info->exc_traceback; - #else - *type = tstate->exc_type; - *value = tstate->exc_value; - *tb = tstate->exc_traceback; - #endif - Py_XINCREF(*type); - Py_XINCREF(*value); - Py_XINCREF(*tb); -} -static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) { - PyObject *tmp_type, *tmp_value, *tmp_tb; - #if CYTHON_USE_EXC_INFO_STACK - _PyErr_StackItem *exc_info = tstate->exc_info; - tmp_type = exc_info->exc_type; - tmp_value = exc_info->exc_value; - tmp_tb = exc_info->exc_traceback; - exc_info->exc_type = type; - exc_info->exc_value = value; - exc_info->exc_traceback = tb; - #else - tmp_type = tstate->exc_type; - tmp_value = tstate->exc_value; - tmp_tb = tstate->exc_traceback; - tstate->exc_type = type; - tstate->exc_value = value; - tstate->exc_traceback = tb; - #endif - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); -} -#endif - -/* PyErrExceptionMatches */ -#if CYTHON_FAST_THREAD_STATE -static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { - Py_ssize_t i, n; - n = PyTuple_GET_SIZE(tuple); -#if PY_MAJOR_VERSION >= 3 - for (i=0; icurexc_type; - if (exc_type == err) return 1; - if (unlikely(!exc_type)) return 0; - if (unlikely(PyTuple_Check(err))) - return __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err); - return __Pyx_PyErr_GivenExceptionMatches(exc_type, err); -} -#endif - -/* GetException */ -#if CYTHON_FAST_THREAD_STATE -static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) -#else -static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) -#endif -{ - PyObject *local_type, *local_value, *local_tb; -#if CYTHON_FAST_THREAD_STATE - PyObject *tmp_type, *tmp_value, *tmp_tb; - local_type = tstate->curexc_type; - local_value = tstate->curexc_value; - local_tb = tstate->curexc_traceback; - tstate->curexc_type = 0; - tstate->curexc_value = 0; - tstate->curexc_traceback = 0; -#else - PyErr_Fetch(&local_type, &local_value, &local_tb); -#endif - PyErr_NormalizeException(&local_type, &local_value, &local_tb); -#if CYTHON_FAST_THREAD_STATE - if (unlikely(tstate->curexc_type)) -#else - if (unlikely(PyErr_Occurred())) -#endif - goto bad; - #if PY_MAJOR_VERSION >= 3 - if (local_tb) { - if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0)) - goto bad; - } - #endif - Py_XINCREF(local_tb); - Py_XINCREF(local_type); - Py_XINCREF(local_value); - *type = local_type; - *value = local_value; - *tb = local_tb; -#if CYTHON_FAST_THREAD_STATE - #if CYTHON_USE_EXC_INFO_STACK - { - _PyErr_StackItem *exc_info = tstate->exc_info; - tmp_type = exc_info->exc_type; - tmp_value = exc_info->exc_value; - tmp_tb = exc_info->exc_traceback; - exc_info->exc_type = local_type; - exc_info->exc_value = local_value; - exc_info->exc_traceback = local_tb; - } - #else - tmp_type = tstate->exc_type; - tmp_value = tstate->exc_value; - tmp_tb = tstate->exc_traceback; - tstate->exc_type = local_type; - tstate->exc_value = local_value; - tstate->exc_traceback = local_tb; - #endif - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); -#else - PyErr_SetExcInfo(local_type, local_value, local_tb); -#endif - return 0; -bad: - *type = 0; - *value = 0; - *tb = 0; - Py_XDECREF(local_type); - Py_XDECREF(local_value); - Py_XDECREF(local_tb); - return -1; -} - -/* PyObjectCall */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) { - PyObject *result; - ternaryfunc call = Py_TYPE(func)->tp_call; - if (unlikely(!call)) - return PyObject_Call(func, arg, kw); - if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) - return NULL; - result = (*call)(func, arg, kw); - Py_LeaveRecursiveCall(); - if (unlikely(!result) && unlikely(!PyErr_Occurred())) { - PyErr_SetString( - PyExc_SystemError, - "NULL result without error in PyObject_Call"); - } - return result; -} -#endif - -/* PyErrFetchRestore */ -#if CYTHON_FAST_THREAD_STATE -static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) { - PyObject *tmp_type, *tmp_value, *tmp_tb; - tmp_type = tstate->curexc_type; - tmp_value = tstate->curexc_value; - tmp_tb = tstate->curexc_traceback; - tstate->curexc_type = type; - tstate->curexc_value = value; - tstate->curexc_traceback = tb; - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); -} -static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { - *type = tstate->curexc_type; - *value = tstate->curexc_value; - *tb = tstate->curexc_traceback; - tstate->curexc_type = 0; - tstate->curexc_value = 0; - tstate->curexc_traceback = 0; -} -#endif - -/* RaiseException */ -#if PY_MAJOR_VERSION < 3 -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, - CYTHON_UNUSED PyObject *cause) { - __Pyx_PyThreadState_declare - Py_XINCREF(type); - if (!value || value == Py_None) - value = NULL; - else - Py_INCREF(value); - if (!tb || tb == Py_None) - tb = NULL; - else { - Py_INCREF(tb); - if (!PyTraceBack_Check(tb)) { - PyErr_SetString(PyExc_TypeError, - "raise: arg 3 must be a traceback or None"); - goto raise_error; - } - } - if (PyType_Check(type)) { -#if CYTHON_COMPILING_IN_PYPY - if (!value) { - Py_INCREF(Py_None); - value = Py_None; - } -#endif - PyErr_NormalizeException(&type, &value, &tb); - } else { - if (value) { - PyErr_SetString(PyExc_TypeError, - "instance exception may not have a separate value"); - goto raise_error; - } - value = type; - type = (PyObject*) Py_TYPE(type); - Py_INCREF(type); - if (!PyType_IsSubtype((PyTypeObject *)type, (PyTypeObject *)PyExc_BaseException)) { - PyErr_SetString(PyExc_TypeError, - "raise: exception class must be a subclass of BaseException"); - goto raise_error; - } - } - __Pyx_PyThreadState_assign - __Pyx_ErrRestore(type, value, tb); - return; -raise_error: - Py_XDECREF(value); - Py_XDECREF(type); - Py_XDECREF(tb); - return; -} -#else -static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { - PyObject* owned_instance = NULL; - if (tb == Py_None) { - tb = 0; - } else if (tb && !PyTraceBack_Check(tb)) { - PyErr_SetString(PyExc_TypeError, - "raise: arg 3 must be a traceback or None"); - goto bad; - } - if (value == Py_None) - value = 0; - if (PyExceptionInstance_Check(type)) { - if (value) { - PyErr_SetString(PyExc_TypeError, - "instance exception may not have a separate value"); - goto bad; - } - value = type; - type = (PyObject*) Py_TYPE(value); - } else if (PyExceptionClass_Check(type)) { - PyObject *instance_class = NULL; - if (value && PyExceptionInstance_Check(value)) { - instance_class = (PyObject*) Py_TYPE(value); - if (instance_class != type) { - int is_subclass = PyObject_IsSubclass(instance_class, type); - if (!is_subclass) { - instance_class = NULL; - } else if (unlikely(is_subclass == -1)) { - goto bad; - } else { - type = instance_class; - } - } - } - if (!instance_class) { - PyObject *args; - if (!value) - args = PyTuple_New(0); - else if (PyTuple_Check(value)) { - Py_INCREF(value); - args = value; - } else - args = PyTuple_Pack(1, value); - if (!args) - goto bad; - owned_instance = PyObject_Call(type, args, NULL); - Py_DECREF(args); - if (!owned_instance) - goto bad; - value = owned_instance; - if (!PyExceptionInstance_Check(value)) { - PyErr_Format(PyExc_TypeError, - "calling %R should have returned an instance of " - "BaseException, not %R", - type, Py_TYPE(value)); - goto bad; - } - } - } else { - PyErr_SetString(PyExc_TypeError, - "raise: exception class must be a subclass of BaseException"); - goto bad; - } - if (cause) { - PyObject *fixed_cause; - if (cause == Py_None) { - fixed_cause = NULL; - } else if (PyExceptionClass_Check(cause)) { - fixed_cause = PyObject_CallObject(cause, NULL); - if (fixed_cause == NULL) - goto bad; - } else if (PyExceptionInstance_Check(cause)) { - fixed_cause = cause; - Py_INCREF(fixed_cause); - } else { - PyErr_SetString(PyExc_TypeError, - "exception causes must derive from " - "BaseException"); - goto bad; - } - PyException_SetCause(value, fixed_cause); - } - PyErr_SetObject(type, value); - if (tb) { -#if CYTHON_COMPILING_IN_PYPY - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb); - Py_INCREF(tb); - PyErr_Restore(tmp_type, tmp_value, tb); - Py_XDECREF(tmp_tb); -#else - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject* tmp_tb = tstate->curexc_traceback; - if (tb != tmp_tb) { - Py_INCREF(tb); - tstate->curexc_traceback = tb; - Py_XDECREF(tmp_tb); - } -#endif - } -bad: - Py_XDECREF(owned_instance); - return; -} -#endif - -/* ArgTypeTest */ -static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact) -{ - if (unlikely(!type)) { - PyErr_SetString(PyExc_SystemError, "Missing type object"); - return 0; - } - else if (exact) { - #if PY_MAJOR_VERSION == 2 - if ((type == &PyBaseString_Type) && likely(__Pyx_PyBaseString_CheckExact(obj))) return 1; - #endif - } - else { - if (likely(__Pyx_TypeCheck(obj, type))) return 1; - } - PyErr_Format(PyExc_TypeError, - "Argument '%.200s' has incorrect type (expected %.200s, got %.200s)", - name, type->tp_name, Py_TYPE(obj)->tp_name); - return 0; -} - -/* PyCFunctionFastCall */ -#if CYTHON_FAST_PYCCALL -static CYTHON_INLINE PyObject * __Pyx_PyCFunction_FastCall(PyObject *func_obj, PyObject **args, Py_ssize_t nargs) { - PyCFunctionObject *func = (PyCFunctionObject*)func_obj; - PyCFunction meth = PyCFunction_GET_FUNCTION(func); - PyObject *self = PyCFunction_GET_SELF(func); - int flags = PyCFunction_GET_FLAGS(func); - assert(PyCFunction_Check(func)); - assert(METH_FASTCALL == (flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS | METH_STACKLESS))); - assert(nargs >= 0); - assert(nargs == 0 || args != NULL); - /* _PyCFunction_FastCallDict() must not be called with an exception set, - because it may clear it (directly or indirectly) and so the - caller loses its exception */ - assert(!PyErr_Occurred()); - if ((PY_VERSION_HEX < 0x030700A0) || unlikely(flags & METH_KEYWORDS)) { - return (*((__Pyx_PyCFunctionFastWithKeywords)(void*)meth)) (self, args, nargs, NULL); - } else { - return (*((__Pyx_PyCFunctionFast)(void*)meth)) (self, args, nargs); - } -} -#endif - -/* PyFunctionFastCall */ -#if CYTHON_FAST_PYCALL -static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na, - PyObject *globals) { - PyFrameObject *f; - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject **fastlocals; - Py_ssize_t i; - PyObject *result; - assert(globals != NULL); - /* XXX Perhaps we should create a specialized - PyFrame_New() that doesn't take locals, but does - take builtins without sanity checking them. - */ - assert(tstate != NULL); - f = PyFrame_New(tstate, co, globals, NULL); - if (f == NULL) { - return NULL; - } - fastlocals = __Pyx_PyFrame_GetLocalsplus(f); - for (i = 0; i < na; i++) { - Py_INCREF(*args); - fastlocals[i] = *args++; - } - result = PyEval_EvalFrameEx(f,0); - ++tstate->recursion_depth; - Py_DECREF(f); - --tstate->recursion_depth; - return result; -} -#if 1 || PY_VERSION_HEX < 0x030600B1 -static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs) { - PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func); - PyObject *globals = PyFunction_GET_GLOBALS(func); - PyObject *argdefs = PyFunction_GET_DEFAULTS(func); - PyObject *closure; -#if PY_MAJOR_VERSION >= 3 - PyObject *kwdefs; -#endif - PyObject *kwtuple, **k; - PyObject **d; - Py_ssize_t nd; - Py_ssize_t nk; - PyObject *result; - assert(kwargs == NULL || PyDict_Check(kwargs)); - nk = kwargs ? PyDict_Size(kwargs) : 0; - if (Py_EnterRecursiveCall((char*)" while calling a Python object")) { - return NULL; - } - if ( -#if PY_MAJOR_VERSION >= 3 - co->co_kwonlyargcount == 0 && -#endif - likely(kwargs == NULL || nk == 0) && - co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) { - if (argdefs == NULL && co->co_argcount == nargs) { - result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals); - goto done; - } - else if (nargs == 0 && argdefs != NULL - && co->co_argcount == Py_SIZE(argdefs)) { - /* function called with no arguments, but all parameters have - a default value: use default values as arguments .*/ - args = &PyTuple_GET_ITEM(argdefs, 0); - result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals); - goto done; - } - } - if (kwargs != NULL) { - Py_ssize_t pos, i; - kwtuple = PyTuple_New(2 * nk); - if (kwtuple == NULL) { - result = NULL; - goto done; - } - k = &PyTuple_GET_ITEM(kwtuple, 0); - pos = i = 0; - while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) { - Py_INCREF(k[i]); - Py_INCREF(k[i+1]); - i += 2; - } - nk = i / 2; - } - else { - kwtuple = NULL; - k = NULL; - } - closure = PyFunction_GET_CLOSURE(func); -#if PY_MAJOR_VERSION >= 3 - kwdefs = PyFunction_GET_KW_DEFAULTS(func); -#endif - if (argdefs != NULL) { - d = &PyTuple_GET_ITEM(argdefs, 0); - nd = Py_SIZE(argdefs); - } - else { - d = NULL; - nd = 0; - } -#if PY_MAJOR_VERSION >= 3 - result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL, - args, (int)nargs, - k, (int)nk, - d, (int)nd, kwdefs, closure); -#else - result = PyEval_EvalCodeEx(co, globals, (PyObject *)NULL, - args, (int)nargs, - k, (int)nk, - d, (int)nd, closure); -#endif - Py_XDECREF(kwtuple); -done: - Py_LeaveRecursiveCall(); - return result; -} -#endif -#endif - -/* PyObjectCall2Args */ -static CYTHON_UNUSED PyObject* __Pyx_PyObject_Call2Args(PyObject* function, PyObject* arg1, PyObject* arg2) { - PyObject *args, *result = NULL; - #if CYTHON_FAST_PYCALL - if (PyFunction_Check(function)) { - PyObject *args[2] = {arg1, arg2}; - return __Pyx_PyFunction_FastCall(function, args, 2); - } - #endif - #if CYTHON_FAST_PYCCALL - if (__Pyx_PyFastCFunction_Check(function)) { - PyObject *args[2] = {arg1, arg2}; - return __Pyx_PyCFunction_FastCall(function, args, 2); - } - #endif - args = PyTuple_New(2); - if (unlikely(!args)) goto done; - Py_INCREF(arg1); - PyTuple_SET_ITEM(args, 0, arg1); - Py_INCREF(arg2); - PyTuple_SET_ITEM(args, 1, arg2); - Py_INCREF(function); - result = __Pyx_PyObject_Call(function, args, NULL); - Py_DECREF(args); - Py_DECREF(function); -done: - return result; -} - -/* PyObjectCallMethO */ -#if CYTHON_COMPILING_IN_CPYTHON -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) { - PyObject *self, *result; - PyCFunction cfunc; - cfunc = PyCFunction_GET_FUNCTION(func); - self = PyCFunction_GET_SELF(func); - if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) - return NULL; - result = cfunc(self, arg); - Py_LeaveRecursiveCall(); - if (unlikely(!result) && unlikely(!PyErr_Occurred())) { - PyErr_SetString( - PyExc_SystemError, - "NULL result without error in PyObject_Call"); - } - return result; -} -#endif - -/* PyObjectCallOneArg */ -#if CYTHON_COMPILING_IN_CPYTHON -static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) { - PyObject *result; - PyObject *args = PyTuple_New(1); - if (unlikely(!args)) return NULL; - Py_INCREF(arg); - PyTuple_SET_ITEM(args, 0, arg); - result = __Pyx_PyObject_Call(func, args, NULL); - Py_DECREF(args); - return result; -} -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) { -#if CYTHON_FAST_PYCALL - if (PyFunction_Check(func)) { - return __Pyx_PyFunction_FastCall(func, &arg, 1); - } -#endif - if (likely(PyCFunction_Check(func))) { - if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) { - return __Pyx_PyObject_CallMethO(func, arg); -#if CYTHON_FAST_PYCCALL - } else if (__Pyx_PyFastCFunction_Check(func)) { - return __Pyx_PyCFunction_FastCall(func, &arg, 1); -#endif - } - } - return __Pyx__PyObject_CallOneArg(func, arg); -} -#else -static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) { - PyObject *result; - PyObject *args = PyTuple_Pack(1, arg); - if (unlikely(!args)) return NULL; - result = __Pyx_PyObject_Call(func, args, NULL); - Py_DECREF(args); - return result; -} -#endif - -/* BytesEquals */ -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { -#if CYTHON_COMPILING_IN_PYPY - return PyObject_RichCompareBool(s1, s2, equals); -#else - if (s1 == s2) { - return (equals == Py_EQ); - } else if (PyBytes_CheckExact(s1) & PyBytes_CheckExact(s2)) { - const char *ps1, *ps2; - Py_ssize_t length = PyBytes_GET_SIZE(s1); - if (length != PyBytes_GET_SIZE(s2)) - return (equals == Py_NE); - ps1 = PyBytes_AS_STRING(s1); - ps2 = PyBytes_AS_STRING(s2); - if (ps1[0] != ps2[0]) { - return (equals == Py_NE); - } else if (length == 1) { - return (equals == Py_EQ); - } else { - int result; -#if CYTHON_USE_UNICODE_INTERNALS && (PY_VERSION_HEX < 0x030B0000) - Py_hash_t hash1, hash2; - hash1 = ((PyBytesObject*)s1)->ob_shash; - hash2 = ((PyBytesObject*)s2)->ob_shash; - if (hash1 != hash2 && hash1 != -1 && hash2 != -1) { - return (equals == Py_NE); - } -#endif - result = memcmp(ps1, ps2, (size_t)length); - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyBytes_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyBytes_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -#endif -} - -/* UnicodeEquals */ -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { -#if CYTHON_COMPILING_IN_PYPY - return PyObject_RichCompareBool(s1, s2, equals); -#else -#if PY_MAJOR_VERSION < 3 - PyObject* owned_ref = NULL; -#endif - int s1_is_unicode, s2_is_unicode; - if (s1 == s2) { - goto return_eq; - } - s1_is_unicode = PyUnicode_CheckExact(s1); - s2_is_unicode = PyUnicode_CheckExact(s2); -#if PY_MAJOR_VERSION < 3 - if ((s1_is_unicode & (!s2_is_unicode)) && PyString_CheckExact(s2)) { - owned_ref = PyUnicode_FromObject(s2); - if (unlikely(!owned_ref)) - return -1; - s2 = owned_ref; - s2_is_unicode = 1; - } else if ((s2_is_unicode & (!s1_is_unicode)) && PyString_CheckExact(s1)) { - owned_ref = PyUnicode_FromObject(s1); - if (unlikely(!owned_ref)) - return -1; - s1 = owned_ref; - s1_is_unicode = 1; - } else if (((!s2_is_unicode) & (!s1_is_unicode))) { - return __Pyx_PyBytes_Equals(s1, s2, equals); - } -#endif - if (s1_is_unicode & s2_is_unicode) { - Py_ssize_t length; - int kind; - void *data1, *data2; - if (unlikely(__Pyx_PyUnicode_READY(s1) < 0) || unlikely(__Pyx_PyUnicode_READY(s2) < 0)) - return -1; - length = __Pyx_PyUnicode_GET_LENGTH(s1); - if (length != __Pyx_PyUnicode_GET_LENGTH(s2)) { - goto return_ne; - } -#if CYTHON_USE_UNICODE_INTERNALS - { - Py_hash_t hash1, hash2; - #if CYTHON_PEP393_ENABLED - hash1 = ((PyASCIIObject*)s1)->hash; - hash2 = ((PyASCIIObject*)s2)->hash; - #else - hash1 = ((PyUnicodeObject*)s1)->hash; - hash2 = ((PyUnicodeObject*)s2)->hash; - #endif - if (hash1 != hash2 && hash1 != -1 && hash2 != -1) { - goto return_ne; - } - } -#endif - kind = __Pyx_PyUnicode_KIND(s1); - if (kind != __Pyx_PyUnicode_KIND(s2)) { - goto return_ne; - } - data1 = __Pyx_PyUnicode_DATA(s1); - data2 = __Pyx_PyUnicode_DATA(s2); - if (__Pyx_PyUnicode_READ(kind, data1, 0) != __Pyx_PyUnicode_READ(kind, data2, 0)) { - goto return_ne; - } else if (length == 1) { - goto return_eq; - } else { - int result = memcmp(data1, data2, (size_t)(length * kind)); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & s2_is_unicode) { - goto return_ne; - } else if ((s2 == Py_None) & s1_is_unicode) { - goto return_ne; - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -return_eq: - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif - return (equals == Py_EQ); -return_ne: - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(owned_ref); - #endif - return (equals == Py_NE); -#endif -} - -/* DivInt[Py_ssize_t] */ -static CYTHON_INLINE Py_ssize_t __Pyx_div_Py_ssize_t(Py_ssize_t a, Py_ssize_t b) { - Py_ssize_t q = a / b; - Py_ssize_t r = a - q*b; - q -= ((r != 0) & ((r ^ b) < 0)); - return q; -} - -/* GetAttr */ -static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) { -#if CYTHON_USE_TYPE_SLOTS -#if PY_MAJOR_VERSION >= 3 - if (likely(PyUnicode_Check(n))) -#else - if (likely(PyString_Check(n))) -#endif - return __Pyx_PyObject_GetAttrStr(o, n); -#endif - return PyObject_GetAttr(o, n); -} - -/* GetItemInt */ -static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) { - PyObject *r; - if (!j) return NULL; - r = PyObject_GetItem(o, j); - Py_DECREF(j); - return r; -} -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i, - CYTHON_NCP_UNUSED int wraparound, - CYTHON_NCP_UNUSED int boundscheck) { -#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - Py_ssize_t wrapped_i = i; - if (wraparound & unlikely(i < 0)) { - wrapped_i += PyList_GET_SIZE(o); - } - if ((!boundscheck) || likely(__Pyx_is_valid_index(wrapped_i, PyList_GET_SIZE(o)))) { - PyObject *r = PyList_GET_ITEM(o, wrapped_i); - Py_INCREF(r); - return r; - } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -#else - return PySequence_GetItem(o, i); -#endif -} -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i, - CYTHON_NCP_UNUSED int wraparound, - CYTHON_NCP_UNUSED int boundscheck) { -#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - Py_ssize_t wrapped_i = i; - if (wraparound & unlikely(i < 0)) { - wrapped_i += PyTuple_GET_SIZE(o); - } - if ((!boundscheck) || likely(__Pyx_is_valid_index(wrapped_i, PyTuple_GET_SIZE(o)))) { - PyObject *r = PyTuple_GET_ITEM(o, wrapped_i); - Py_INCREF(r); - return r; - } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -#else - return PySequence_GetItem(o, i); -#endif -} -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list, - CYTHON_NCP_UNUSED int wraparound, - CYTHON_NCP_UNUSED int boundscheck) { -#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS && CYTHON_USE_TYPE_SLOTS - if (is_list || PyList_CheckExact(o)) { - Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyList_GET_SIZE(o); - if ((!boundscheck) || (likely(__Pyx_is_valid_index(n, PyList_GET_SIZE(o))))) { - PyObject *r = PyList_GET_ITEM(o, n); - Py_INCREF(r); - return r; - } - } - else if (PyTuple_CheckExact(o)) { - Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyTuple_GET_SIZE(o); - if ((!boundscheck) || likely(__Pyx_is_valid_index(n, PyTuple_GET_SIZE(o)))) { - PyObject *r = PyTuple_GET_ITEM(o, n); - Py_INCREF(r); - return r; - } - } else { - PySequenceMethods *m = Py_TYPE(o)->tp_as_sequence; - if (likely(m && m->sq_item)) { - if (wraparound && unlikely(i < 0) && likely(m->sq_length)) { - Py_ssize_t l = m->sq_length(o); - if (likely(l >= 0)) { - i += l; - } else { - if (!PyErr_ExceptionMatches(PyExc_OverflowError)) - return NULL; - PyErr_Clear(); - } - } - return m->sq_item(o, i); - } - } -#else - if (is_list || PySequence_Check(o)) { - return PySequence_GetItem(o, i); - } -#endif - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -} - -/* ObjectGetItem */ -#if CYTHON_USE_TYPE_SLOTS -static PyObject *__Pyx_PyObject_GetIndex(PyObject *obj, PyObject* index) { - PyObject *runerr; - Py_ssize_t key_value; - PySequenceMethods *m = Py_TYPE(obj)->tp_as_sequence; - if (unlikely(!(m && m->sq_item))) { - PyErr_Format(PyExc_TypeError, "'%.200s' object is not subscriptable", Py_TYPE(obj)->tp_name); - return NULL; - } - key_value = __Pyx_PyIndex_AsSsize_t(index); - if (likely(key_value != -1 || !(runerr = PyErr_Occurred()))) { - return __Pyx_GetItemInt_Fast(obj, key_value, 0, 1, 1); - } - if (PyErr_GivenExceptionMatches(runerr, PyExc_OverflowError)) { - PyErr_Clear(); - PyErr_Format(PyExc_IndexError, "cannot fit '%.200s' into an index-sized integer", Py_TYPE(index)->tp_name); - } - return NULL; -} -static PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject* key) { - PyMappingMethods *m = Py_TYPE(obj)->tp_as_mapping; - if (likely(m && m->mp_subscript)) { - return m->mp_subscript(obj, key); - } - return __Pyx_PyObject_GetIndex(obj, key); -} -#endif - -/* decode_c_string */ -static CYTHON_INLINE PyObject* __Pyx_decode_c_string( - const char* cstring, Py_ssize_t start, Py_ssize_t stop, - const char* encoding, const char* errors, - PyObject* (*decode_func)(const char *s, Py_ssize_t size, const char *errors)) { - Py_ssize_t length; - if (unlikely((start < 0) | (stop < 0))) { - size_t slen = strlen(cstring); - if (unlikely(slen > (size_t) PY_SSIZE_T_MAX)) { - PyErr_SetString(PyExc_OverflowError, - "c-string too long to convert to Python"); - return NULL; - } - length = (Py_ssize_t) slen; - if (start < 0) { - start += length; - if (start < 0) - start = 0; - } - if (stop < 0) - stop += length; - } - if (unlikely(stop <= start)) - return __Pyx_NewRef(__pyx_empty_unicode); - length = stop - start; - cstring += start; - if (decode_func) { - return decode_func(cstring, length, errors); - } else { - return PyUnicode_Decode(cstring, length, encoding, errors); - } -} - -/* GetAttr3 */ -static PyObject *__Pyx_GetAttr3Default(PyObject *d) { - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - if (unlikely(!__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError))) - return NULL; - __Pyx_PyErr_Clear(); - Py_INCREF(d); - return d; -} -static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *o, PyObject *n, PyObject *d) { - PyObject *r = __Pyx_GetAttr(o, n); - return (likely(r)) ? r : __Pyx_GetAttr3Default(d); -} - -/* PyDictVersioning */ -#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS -static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj) { - PyObject *dict = Py_TYPE(obj)->tp_dict; - return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0; -} -static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj) { - PyObject **dictptr = NULL; - Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset; - if (offset) { -#if CYTHON_COMPILING_IN_CPYTHON - dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj); -#else - dictptr = _PyObject_GetDictPtr(obj); -#endif - } - return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0; -} -static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version) { - PyObject *dict = Py_TYPE(obj)->tp_dict; - if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict))) - return 0; - return obj_dict_version == __Pyx_get_object_dict_version(obj); -} -#endif - -/* GetModuleGlobalName */ -#if CYTHON_USE_DICT_VERSIONS -static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value) -#else -static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name) -#endif -{ - PyObject *result; -#if !CYTHON_AVOID_BORROWED_REFS -#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 - result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) - if (likely(result)) { - return __Pyx_NewRef(result); - } else if (unlikely(PyErr_Occurred())) { - return NULL; - } -#else - result = PyDict_GetItem(__pyx_d, name); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) - if (likely(result)) { - return __Pyx_NewRef(result); - } -#endif -#else - result = PyObject_GetItem(__pyx_d, name); - __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version) - if (likely(result)) { - return __Pyx_NewRef(result); - } - PyErr_Clear(); -#endif - return __Pyx_GetBuiltinName(name); -} - -/* RaiseTooManyValuesToUnpack */ -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) { - PyErr_Format(PyExc_ValueError, - "too many values to unpack (expected %" CYTHON_FORMAT_SSIZE_T "d)", expected); -} - -/* RaiseNeedMoreValuesToUnpack */ -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) { - PyErr_Format(PyExc_ValueError, - "need more than %" CYTHON_FORMAT_SSIZE_T "d value%.1s to unpack", - index, (index == 1) ? "" : "s"); -} - -/* RaiseNoneIterError */ -static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); -} - -/* ExtTypeTest */ -static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) { - if (unlikely(!type)) { - PyErr_SetString(PyExc_SystemError, "Missing type object"); - return 0; - } - if (likely(__Pyx_TypeCheck(obj, type))) - return 1; - PyErr_Format(PyExc_TypeError, "Cannot convert %.200s to %.200s", - Py_TYPE(obj)->tp_name, type->tp_name); - return 0; -} - -/* SwapException */ -#if CYTHON_FAST_THREAD_STATE -static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) { - PyObject *tmp_type, *tmp_value, *tmp_tb; - #if CYTHON_USE_EXC_INFO_STACK - _PyErr_StackItem *exc_info = tstate->exc_info; - tmp_type = exc_info->exc_type; - tmp_value = exc_info->exc_value; - tmp_tb = exc_info->exc_traceback; - exc_info->exc_type = *type; - exc_info->exc_value = *value; - exc_info->exc_traceback = *tb; - #else - tmp_type = tstate->exc_type; - tmp_value = tstate->exc_value; - tmp_tb = tstate->exc_traceback; - tstate->exc_type = *type; - tstate->exc_value = *value; - tstate->exc_traceback = *tb; - #endif - *type = tmp_type; - *value = tmp_value; - *tb = tmp_tb; -} -#else -static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb) { - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyErr_GetExcInfo(&tmp_type, &tmp_value, &tmp_tb); - PyErr_SetExcInfo(*type, *value, *tb); - *type = tmp_type; - *value = tmp_value; - *tb = tmp_tb; -} -#endif - -/* Import */ -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) { - PyObject *empty_list = 0; - PyObject *module = 0; - PyObject *global_dict = 0; - PyObject *empty_dict = 0; - PyObject *list; - #if PY_MAJOR_VERSION < 3 - PyObject *py_import; - py_import = __Pyx_PyObject_GetAttrStr(__pyx_b, __pyx_n_s_import); - if (!py_import) - goto bad; - #endif - if (from_list) - list = from_list; - else { - empty_list = PyList_New(0); - if (!empty_list) - goto bad; - list = empty_list; - } - global_dict = PyModule_GetDict(__pyx_m); - if (!global_dict) - goto bad; - empty_dict = PyDict_New(); - if (!empty_dict) - goto bad; - { - #if PY_MAJOR_VERSION >= 3 - if (level == -1) { - if ((1) && (strchr(__Pyx_MODULE_NAME, '.'))) { - module = PyImport_ImportModuleLevelObject( - name, global_dict, empty_dict, list, 1); - if (!module) { - if (!PyErr_ExceptionMatches(PyExc_ImportError)) - goto bad; - PyErr_Clear(); - } - } - level = 0; - } - #endif - if (!module) { - #if PY_MAJOR_VERSION < 3 - PyObject *py_level = PyInt_FromLong(level); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, (PyObject *)NULL); - Py_DECREF(py_level); - #else - module = PyImport_ImportModuleLevelObject( - name, global_dict, empty_dict, list, level); - #endif - } - } -bad: - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(py_import); - #endif - Py_XDECREF(empty_list); - Py_XDECREF(empty_dict); - return module; -} - -/* FastTypeChecks */ -#if CYTHON_COMPILING_IN_CPYTHON -static int __Pyx_InBases(PyTypeObject *a, PyTypeObject *b) { - while (a) { - a = a->tp_base; - if (a == b) - return 1; - } - return b == &PyBaseObject_Type; -} -static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b) { - PyObject *mro; - if (a == b) return 1; - mro = a->tp_mro; - if (likely(mro)) { - Py_ssize_t i, n; - n = PyTuple_GET_SIZE(mro); - for (i = 0; i < n; i++) { - if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b) - return 1; - } - return 0; - } - return __Pyx_InBases(a, b); -} -#if PY_MAJOR_VERSION == 2 -static int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject* exc_type2) { - PyObject *exception, *value, *tb; - int res; - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - __Pyx_ErrFetch(&exception, &value, &tb); - res = exc_type1 ? PyObject_IsSubclass(err, exc_type1) : 0; - if (unlikely(res == -1)) { - PyErr_WriteUnraisable(err); - res = 0; - } - if (!res) { - res = PyObject_IsSubclass(err, exc_type2); - if (unlikely(res == -1)) { - PyErr_WriteUnraisable(err); - res = 0; - } - } - __Pyx_ErrRestore(exception, value, tb); - return res; -} -#else -static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) { - int res = exc_type1 ? __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type1) : 0; - if (!res) { - res = __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2); - } - return res; -} -#endif -static int __Pyx_PyErr_GivenExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) { - Py_ssize_t i, n; - assert(PyExceptionClass_Check(exc_type)); - n = PyTuple_GET_SIZE(tuple); -#if PY_MAJOR_VERSION >= 3 - for (i=0; i= 0 || (x^b) >= 0)) - return PyInt_FromLong(x); - return PyLong_Type.tp_as_number->nb_add(op1, op2); - } - #endif - #if CYTHON_USE_PYLONG_INTERNALS - if (likely(PyLong_CheckExact(op1))) { - const long b = intval; - long a, x; -#ifdef HAVE_LONG_LONG - const PY_LONG_LONG llb = intval; - PY_LONG_LONG lla, llx; -#endif - const digit* digits = ((PyLongObject*)op1)->ob_digit; - const Py_ssize_t size = Py_SIZE(op1); - if (likely(__Pyx_sst_abs(size) <= 1)) { - a = likely(size) ? digits[0] : 0; - if (size == -1) a = -a; - } else { - switch (size) { - case -2: - if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { - a = -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); - break; -#ifdef HAVE_LONG_LONG - } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) { - lla = -(PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); - goto long_long; -#endif - } - CYTHON_FALLTHROUGH; - case 2: - if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { - a = (long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); - break; -#ifdef HAVE_LONG_LONG - } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) { - lla = (PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); - goto long_long; -#endif - } - CYTHON_FALLTHROUGH; - case -3: - if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { - a = -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); - break; -#ifdef HAVE_LONG_LONG - } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) { - lla = -(PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); - goto long_long; -#endif - } - CYTHON_FALLTHROUGH; - case 3: - if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { - a = (long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); - break; -#ifdef HAVE_LONG_LONG - } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) { - lla = (PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); - goto long_long; -#endif - } - CYTHON_FALLTHROUGH; - case -4: - if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { - a = -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); - break; -#ifdef HAVE_LONG_LONG - } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) { - lla = -(PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); - goto long_long; -#endif - } - CYTHON_FALLTHROUGH; - case 4: - if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { - a = (long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])); - break; -#ifdef HAVE_LONG_LONG - } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) { - lla = (PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0])); - goto long_long; -#endif - } - CYTHON_FALLTHROUGH; - default: return PyLong_Type.tp_as_number->nb_add(op1, op2); - } - } - x = a + b; - return PyLong_FromLong(x); -#ifdef HAVE_LONG_LONG - long_long: - llx = lla + llb; - return PyLong_FromLongLong(llx); -#endif - - - } - #endif - if (PyFloat_CheckExact(op1)) { - const long b = intval; - double a = PyFloat_AS_DOUBLE(op1); - double result; - PyFPE_START_PROTECT("add", return NULL) - result = ((double)a) + (double)b; - PyFPE_END_PROTECT(result) - return PyFloat_FromDouble(result); - } - return (inplace ? PyNumber_InPlaceAdd : PyNumber_Add)(op1, op2); -} -#endif - -/* DivInt[long] */ -static CYTHON_INLINE long __Pyx_div_long(long a, long b) { - long q = a / b; - long r = a - q*b; - q -= ((r != 0) & ((r ^ b) < 0)); - return q; -} - -/* ImportFrom */ -static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) { - PyObject* value = __Pyx_PyObject_GetAttrStr(module, name); - if (unlikely(!value) && PyErr_ExceptionMatches(PyExc_AttributeError)) { - PyErr_Format(PyExc_ImportError, - #if PY_MAJOR_VERSION < 3 - "cannot import name %.230s", PyString_AS_STRING(name)); - #else - "cannot import name %S", name); - #endif - } - return value; -} - -/* HasAttr */ -static CYTHON_INLINE int __Pyx_HasAttr(PyObject *o, PyObject *n) { - PyObject *r; - if (unlikely(!__Pyx_PyBaseString_Check(n))) { - PyErr_SetString(PyExc_TypeError, - "hasattr(): attribute name must be string"); - return -1; - } - r = __Pyx_GetAttr(o, n); - if (unlikely(!r)) { - PyErr_Clear(); - return 0; - } else { - Py_DECREF(r); - return 1; - } -} - -/* PyObject_GenericGetAttrNoDict */ -#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 -static PyObject *__Pyx_RaiseGenericGetAttributeError(PyTypeObject *tp, PyObject *attr_name) { - PyErr_Format(PyExc_AttributeError, -#if PY_MAJOR_VERSION >= 3 - "'%.50s' object has no attribute '%U'", - tp->tp_name, attr_name); -#else - "'%.50s' object has no attribute '%.400s'", - tp->tp_name, PyString_AS_STRING(attr_name)); -#endif - return NULL; -} -static CYTHON_INLINE PyObject* __Pyx_PyObject_GenericGetAttrNoDict(PyObject* obj, PyObject* attr_name) { - PyObject *descr; - PyTypeObject *tp = Py_TYPE(obj); - if (unlikely(!PyString_Check(attr_name))) { - return PyObject_GenericGetAttr(obj, attr_name); - } - assert(!tp->tp_dictoffset); - descr = _PyType_Lookup(tp, attr_name); - if (unlikely(!descr)) { - return __Pyx_RaiseGenericGetAttributeError(tp, attr_name); - } - Py_INCREF(descr); - #if PY_MAJOR_VERSION < 3 - if (likely(PyType_HasFeature(Py_TYPE(descr), Py_TPFLAGS_HAVE_CLASS))) - #endif - { - descrgetfunc f = Py_TYPE(descr)->tp_descr_get; - if (unlikely(f)) { - PyObject *res = f(descr, obj, (PyObject *)tp); - Py_DECREF(descr); - return res; - } - } - return descr; -} -#endif - -/* PyObject_GenericGetAttr */ -#if CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP && PY_VERSION_HEX < 0x03070000 -static PyObject* __Pyx_PyObject_GenericGetAttr(PyObject* obj, PyObject* attr_name) { - if (unlikely(Py_TYPE(obj)->tp_dictoffset)) { - return PyObject_GenericGetAttr(obj, attr_name); - } - return __Pyx_PyObject_GenericGetAttrNoDict(obj, attr_name); -} -#endif - -/* SetVTable */ -static int __Pyx_SetVtable(PyObject *dict, void *vtable) { -#if PY_VERSION_HEX >= 0x02070000 - PyObject *ob = PyCapsule_New(vtable, 0, 0); -#else - PyObject *ob = PyCObject_FromVoidPtr(vtable, 0); -#endif - if (!ob) - goto bad; - if (PyDict_SetItem(dict, __pyx_n_s_pyx_vtable, ob) < 0) - goto bad; - Py_DECREF(ob); - return 0; -bad: - Py_XDECREF(ob); - return -1; -} - -/* PyObjectGetAttrStrNoError */ -static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) { - __Pyx_PyThreadState_declare - __Pyx_PyThreadState_assign - if (likely(__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError))) - __Pyx_PyErr_Clear(); -} -static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) { - PyObject *result; -#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS && PY_VERSION_HEX >= 0x030700B1 - PyTypeObject* tp = Py_TYPE(obj); - if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) { - return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1); - } -#endif - result = __Pyx_PyObject_GetAttrStr(obj, attr_name); - if (unlikely(!result)) { - __Pyx_PyObject_GetAttrStr_ClearAttributeError(); - } - return result; -} - -/* SetupReduce */ -static int __Pyx_setup_reduce_is_named(PyObject* meth, PyObject* name) { - int ret; - PyObject *name_attr; - name_attr = __Pyx_PyObject_GetAttrStr(meth, __pyx_n_s_name_2); - if (likely(name_attr)) { - ret = PyObject_RichCompareBool(name_attr, name, Py_EQ); - } else { - ret = -1; - } - if (unlikely(ret < 0)) { - PyErr_Clear(); - ret = 0; - } - Py_XDECREF(name_attr); - return ret; -} -static int __Pyx_setup_reduce(PyObject* type_obj) { - int ret = 0; - PyObject *object_reduce = NULL; - PyObject *object_getstate = NULL; - PyObject *object_reduce_ex = NULL; - PyObject *reduce = NULL; - PyObject *reduce_ex = NULL; - PyObject *reduce_cython = NULL; - PyObject *setstate = NULL; - PyObject *setstate_cython = NULL; - PyObject *getstate = NULL; -#if CYTHON_USE_PYTYPE_LOOKUP - getstate = _PyType_Lookup((PyTypeObject*)type_obj, __pyx_n_s_getstate); -#else - getstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_getstate); - if (!getstate && PyErr_Occurred()) { - goto __PYX_BAD; - } -#endif - if (getstate) { -#if CYTHON_USE_PYTYPE_LOOKUP - object_getstate = _PyType_Lookup(&PyBaseObject_Type, __pyx_n_s_getstate); -#else - object_getstate = __Pyx_PyObject_GetAttrStrNoError((PyObject*)&PyBaseObject_Type, __pyx_n_s_getstate); - if (!object_getstate && PyErr_Occurred()) { - goto __PYX_BAD; - } -#endif - if (object_getstate != getstate) { - goto __PYX_GOOD; - } - } -#if CYTHON_USE_PYTYPE_LOOKUP - object_reduce_ex = _PyType_Lookup(&PyBaseObject_Type, __pyx_n_s_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; -#else - object_reduce_ex = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_n_s_reduce_ex); if (!object_reduce_ex) goto __PYX_BAD; -#endif - reduce_ex = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_n_s_reduce_ex); if (unlikely(!reduce_ex)) goto __PYX_BAD; - if (reduce_ex == object_reduce_ex) { -#if CYTHON_USE_PYTYPE_LOOKUP - object_reduce = _PyType_Lookup(&PyBaseObject_Type, __pyx_n_s_reduce); if (!object_reduce) goto __PYX_BAD; -#else - object_reduce = __Pyx_PyObject_GetAttrStr((PyObject*)&PyBaseObject_Type, __pyx_n_s_reduce); if (!object_reduce) goto __PYX_BAD; -#endif - reduce = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_n_s_reduce); if (unlikely(!reduce)) goto __PYX_BAD; - if (reduce == object_reduce || __Pyx_setup_reduce_is_named(reduce, __pyx_n_s_reduce_cython)) { - reduce_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_reduce_cython); - if (likely(reduce_cython)) { - ret = PyDict_SetItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_reduce, reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - ret = PyDict_DelItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_reduce_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - } else if (reduce == object_reduce || PyErr_Occurred()) { - goto __PYX_BAD; - } - setstate = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_n_s_setstate); - if (!setstate) PyErr_Clear(); - if (!setstate || __Pyx_setup_reduce_is_named(setstate, __pyx_n_s_setstate_cython)) { - setstate_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_n_s_setstate_cython); - if (likely(setstate_cython)) { - ret = PyDict_SetItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_setstate, setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - ret = PyDict_DelItem(((PyTypeObject*)type_obj)->tp_dict, __pyx_n_s_setstate_cython); if (unlikely(ret < 0)) goto __PYX_BAD; - } else if (!setstate || PyErr_Occurred()) { - goto __PYX_BAD; - } - } - PyType_Modified((PyTypeObject*)type_obj); - } - } - goto __PYX_GOOD; -__PYX_BAD: - if (!PyErr_Occurred()) - PyErr_Format(PyExc_RuntimeError, "Unable to initialize pickling for %s", ((PyTypeObject*)type_obj)->tp_name); - ret = -1; -__PYX_GOOD: -#if !CYTHON_USE_PYTYPE_LOOKUP - Py_XDECREF(object_reduce); - Py_XDECREF(object_reduce_ex); - Py_XDECREF(object_getstate); - Py_XDECREF(getstate); -#endif - Py_XDECREF(reduce); - Py_XDECREF(reduce_ex); - Py_XDECREF(reduce_cython); - Py_XDECREF(setstate); - Py_XDECREF(setstate_cython); - return ret; -} - -/* TypeImport */ -#ifndef __PYX_HAVE_RT_ImportType -#define __PYX_HAVE_RT_ImportType -static PyTypeObject *__Pyx_ImportType(PyObject *module, const char *module_name, const char *class_name, - size_t size, enum __Pyx_ImportType_CheckSize check_size) -{ - PyObject *result = 0; - char warning[200]; - Py_ssize_t basicsize; -#ifdef Py_LIMITED_API - PyObject *py_basicsize; -#endif - result = PyObject_GetAttrString(module, class_name); - if (!result) - goto bad; - if (!PyType_Check(result)) { - PyErr_Format(PyExc_TypeError, - "%.200s.%.200s is not a type object", - module_name, class_name); - goto bad; - } -#ifndef Py_LIMITED_API - basicsize = ((PyTypeObject *)result)->tp_basicsize; -#else - py_basicsize = PyObject_GetAttrString(result, "__basicsize__"); - if (!py_basicsize) - goto bad; - basicsize = PyLong_AsSsize_t(py_basicsize); - Py_DECREF(py_basicsize); - py_basicsize = 0; - if (basicsize == (Py_ssize_t)-1 && PyErr_Occurred()) - goto bad; -#endif - if ((size_t)basicsize < size) { - PyErr_Format(PyExc_ValueError, - "%.200s.%.200s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd from PyObject", - module_name, class_name, size, basicsize); - goto bad; - } - if (check_size == __Pyx_ImportType_CheckSize_Error && (size_t)basicsize != size) { - PyErr_Format(PyExc_ValueError, - "%.200s.%.200s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd from PyObject", - module_name, class_name, size, basicsize); - goto bad; - } - else if (check_size == __Pyx_ImportType_CheckSize_Warn && (size_t)basicsize > size) { - PyOS_snprintf(warning, sizeof(warning), - "%s.%s size changed, may indicate binary incompatibility. " - "Expected %zd from C header, got %zd from PyObject", - module_name, class_name, size, basicsize); - if (PyErr_WarnEx(NULL, warning, 0) < 0) goto bad; - } - return (PyTypeObject *)result; -bad: - Py_XDECREF(result); - return NULL; -} -#endif - -/* CLineInTraceback */ -#ifndef CYTHON_CLINE_IN_TRACEBACK -static int __Pyx_CLineForTraceback(CYTHON_NCP_UNUSED PyThreadState *tstate, int c_line) { - PyObject *use_cline; - PyObject *ptype, *pvalue, *ptraceback; -#if CYTHON_COMPILING_IN_CPYTHON - PyObject **cython_runtime_dict; -#endif - if (unlikely(!__pyx_cython_runtime)) { - return c_line; - } - __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback); -#if CYTHON_COMPILING_IN_CPYTHON - cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime); - if (likely(cython_runtime_dict)) { - __PYX_PY_DICT_LOOKUP_IF_MODIFIED( - use_cline, *cython_runtime_dict, - __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_n_s_cline_in_traceback)) - } else -#endif - { - PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback); - if (use_cline_obj) { - use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True; - Py_DECREF(use_cline_obj); - } else { - PyErr_Clear(); - use_cline = NULL; - } - } - if (!use_cline) { - c_line = 0; - (void) PyObject_SetAttr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback, Py_False); - } - else if (use_cline == Py_False || (use_cline != Py_True && PyObject_Not(use_cline) != 0)) { - c_line = 0; - } - __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback); - return c_line; -} -#endif - -/* CodeObjectCache */ -static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) { - int start = 0, mid = 0, end = count - 1; - if (end >= 0 && code_line > entries[end].code_line) { - return count; - } - while (start < end) { - mid = start + (end - start) / 2; - if (code_line < entries[mid].code_line) { - end = mid; - } else if (code_line > entries[mid].code_line) { - start = mid + 1; - } else { - return mid; - } - } - if (code_line <= entries[mid].code_line) { - return mid; - } else { - return mid + 1; - } -} -static PyCodeObject *__pyx_find_code_object(int code_line) { - PyCodeObject* code_object; - int pos; - if (unlikely(!code_line) || unlikely(!__pyx_code_cache.entries)) { - return NULL; - } - pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line); - if (unlikely(pos >= __pyx_code_cache.count) || unlikely(__pyx_code_cache.entries[pos].code_line != code_line)) { - return NULL; - } - code_object = __pyx_code_cache.entries[pos].code_object; - Py_INCREF(code_object); - return code_object; -} -static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) { - int pos, i; - __Pyx_CodeObjectCacheEntry* entries = __pyx_code_cache.entries; - if (unlikely(!code_line)) { - return; - } - if (unlikely(!entries)) { - entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry)); - if (likely(entries)) { - __pyx_code_cache.entries = entries; - __pyx_code_cache.max_count = 64; - __pyx_code_cache.count = 1; - entries[0].code_line = code_line; - entries[0].code_object = code_object; - Py_INCREF(code_object); - } - return; - } - pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line); - if ((pos < __pyx_code_cache.count) && unlikely(__pyx_code_cache.entries[pos].code_line == code_line)) { - PyCodeObject* tmp = entries[pos].code_object; - entries[pos].code_object = code_object; - Py_DECREF(tmp); - return; - } - if (__pyx_code_cache.count == __pyx_code_cache.max_count) { - int new_max = __pyx_code_cache.max_count + 64; - entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc( - __pyx_code_cache.entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry)); - if (unlikely(!entries)) { - return; - } - __pyx_code_cache.entries = entries; - __pyx_code_cache.max_count = new_max; - } - for (i=__pyx_code_cache.count; i>pos; i--) { - entries[i] = entries[i-1]; - } - entries[pos].code_line = code_line; - entries[pos].code_object = code_object; - __pyx_code_cache.count++; - Py_INCREF(code_object); -} - -/* AddTraceback */ -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" -#if PY_VERSION_HEX >= 0x030b00a6 - #ifndef Py_BUILD_CORE - #define Py_BUILD_CORE 1 - #endif - #include "internal/pycore_frame.h" -#endif -static PyCodeObject* __Pyx_CreateCodeObjectForTraceback( - const char *funcname, int c_line, - int py_line, const char *filename) { - PyCodeObject *py_code = NULL; - PyObject *py_funcname = NULL; - #if PY_MAJOR_VERSION < 3 - PyObject *py_srcfile = NULL; - py_srcfile = PyString_FromString(filename); - if (!py_srcfile) goto bad; - #endif - if (c_line) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); - if (!py_funcname) goto bad; - #else - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line); - if (!py_funcname) goto bad; - funcname = PyUnicode_AsUTF8(py_funcname); - if (!funcname) goto bad; - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - if (!py_funcname) goto bad; - #endif - } - #if PY_MAJOR_VERSION < 3 - py_code = __Pyx_PyCode_New( - 0, - 0, - 0, - 0, - 0, - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - py_line, - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - Py_DECREF(py_srcfile); - #else - py_code = PyCode_NewEmpty(filename, funcname, py_line); - #endif - Py_XDECREF(py_funcname); // XDECREF since it's only set on Py3 if cline - return py_code; -bad: - Py_XDECREF(py_funcname); - #if PY_MAJOR_VERSION < 3 - Py_XDECREF(py_srcfile); - #endif - return NULL; -} -static void __Pyx_AddTraceback(const char *funcname, int c_line, - int py_line, const char *filename) { - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - PyThreadState *tstate = __Pyx_PyThreadState_Current; - PyObject *ptype, *pvalue, *ptraceback; - if (c_line) { - c_line = __Pyx_CLineForTraceback(tstate, c_line); - } - py_code = __pyx_find_code_object(c_line ? -c_line : py_line); - if (!py_code) { - __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback); - py_code = __Pyx_CreateCodeObjectForTraceback( - funcname, c_line, py_line, filename); - if (!py_code) { - /* If the code object creation fails, then we should clear the - fetched exception references and propagate the new exception */ - Py_XDECREF(ptype); - Py_XDECREF(pvalue); - Py_XDECREF(ptraceback); - goto bad; - } - __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback); - __pyx_insert_code_object(c_line ? -c_line : py_line, py_code); - } - py_frame = PyFrame_New( - tstate, /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - __pyx_d, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - __Pyx_PyFrame_SetLineNumber(py_frame, py_line); - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} - -#if PY_MAJOR_VERSION < 3 -static int __Pyx_GetBuffer(PyObject *obj, Py_buffer *view, int flags) { - if (PyObject_CheckBuffer(obj)) return PyObject_GetBuffer(obj, view, flags); - if (__Pyx_TypeCheck(obj, __pyx_array_type)) return __pyx_array_getbuffer(obj, view, flags); - if (__Pyx_TypeCheck(obj, __pyx_memoryview_type)) return __pyx_memoryview_getbuffer(obj, view, flags); - PyErr_Format(PyExc_TypeError, "'%.200s' does not have the buffer interface", Py_TYPE(obj)->tp_name); - return -1; -} -static void __Pyx_ReleaseBuffer(Py_buffer *view) { - PyObject *obj = view->obj; - if (!obj) return; - if (PyObject_CheckBuffer(obj)) { - PyBuffer_Release(view); - return; - } - if ((0)) {} - view->obj = NULL; - Py_DECREF(obj); -} -#endif - - -/* MemviewSliceIsContig */ -static int -__pyx_memviewslice_is_contig(const __Pyx_memviewslice mvs, char order, int ndim) -{ - int i, index, step, start; - Py_ssize_t itemsize = mvs.memview->view.itemsize; - if (order == 'F') { - step = 1; - start = 0; - } else { - step = -1; - start = ndim - 1; - } - for (i = 0; i < ndim; i++) { - index = start + step * i; - if (mvs.suboffsets[index] >= 0 || mvs.strides[index] != itemsize) - return 0; - itemsize *= mvs.shape[index]; - } - return 1; -} - -/* OverlappingSlices */ -static void -__pyx_get_array_memory_extents(__Pyx_memviewslice *slice, - void **out_start, void **out_end, - int ndim, size_t itemsize) -{ - char *start, *end; - int i; - start = end = slice->data; - for (i = 0; i < ndim; i++) { - Py_ssize_t stride = slice->strides[i]; - Py_ssize_t extent = slice->shape[i]; - if (extent == 0) { - *out_start = *out_end = start; - return; - } else { - if (stride > 0) - end += stride * (extent - 1); - else - start += stride * (extent - 1); - } - } - *out_start = start; - *out_end = end + itemsize; -} -static int -__pyx_slices_overlap(__Pyx_memviewslice *slice1, - __Pyx_memviewslice *slice2, - int ndim, size_t itemsize) -{ - void *start1, *end1, *start2, *end2; - __pyx_get_array_memory_extents(slice1, &start1, &end1, ndim, itemsize); - __pyx_get_array_memory_extents(slice2, &start2, &end2, ndim, itemsize); - return (start1 < end2) && (start2 < end1); -} - -/* Capsule */ -static CYTHON_INLINE PyObject * -__pyx_capsule_create(void *p, CYTHON_UNUSED const char *sig) -{ - PyObject *cobj; -#if PY_VERSION_HEX >= 0x02070000 - cobj = PyCapsule_New(p, sig, NULL); -#else - cobj = PyCObject_FromVoidPtr(p, NULL); -#endif - return cobj; -} - -/* IsLittleEndian */ -static CYTHON_INLINE int __Pyx_Is_Little_Endian(void) -{ - union { - uint32_t u32; - uint8_t u8[4]; - } S; - S.u32 = 0x01020304; - return S.u8[0] == 4; -} - -/* BufferFormatCheck */ -static void __Pyx_BufFmt_Init(__Pyx_BufFmt_Context* ctx, - __Pyx_BufFmt_StackElem* stack, - __Pyx_TypeInfo* type) { - stack[0].field = &ctx->root; - stack[0].parent_offset = 0; - ctx->root.type = type; - ctx->root.name = "buffer dtype"; - ctx->root.offset = 0; - ctx->head = stack; - ctx->head->field = &ctx->root; - ctx->fmt_offset = 0; - ctx->head->parent_offset = 0; - ctx->new_packmode = '@'; - ctx->enc_packmode = '@'; - ctx->new_count = 1; - ctx->enc_count = 0; - ctx->enc_type = 0; - ctx->is_complex = 0; - ctx->is_valid_array = 0; - ctx->struct_alignment = 0; - while (type->typegroup == 'S') { - ++ctx->head; - ctx->head->field = type->fields; - ctx->head->parent_offset = 0; - type = type->fields->type; - } -} -static int __Pyx_BufFmt_ParseNumber(const char** ts) { - int count; - const char* t = *ts; - if (*t < '0' || *t > '9') { - return -1; - } else { - count = *t++ - '0'; - while (*t >= '0' && *t <= '9') { - count *= 10; - count += *t++ - '0'; - } - } - *ts = t; - return count; -} -static int __Pyx_BufFmt_ExpectNumber(const char **ts) { - int number = __Pyx_BufFmt_ParseNumber(ts); - if (number == -1) - PyErr_Format(PyExc_ValueError,\ - "Does not understand character buffer dtype format string ('%c')", **ts); - return number; -} -static void __Pyx_BufFmt_RaiseUnexpectedChar(char ch) { - PyErr_Format(PyExc_ValueError, - "Unexpected format string character: '%c'", ch); -} -static const char* __Pyx_BufFmt_DescribeTypeChar(char ch, int is_complex) { - switch (ch) { - case '?': return "'bool'"; - case 'c': return "'char'"; - case 'b': return "'signed char'"; - case 'B': return "'unsigned char'"; - case 'h': return "'short'"; - case 'H': return "'unsigned short'"; - case 'i': return "'int'"; - case 'I': return "'unsigned int'"; - case 'l': return "'long'"; - case 'L': return "'unsigned long'"; - case 'q': return "'long long'"; - case 'Q': return "'unsigned long long'"; - case 'f': return (is_complex ? "'complex float'" : "'float'"); - case 'd': return (is_complex ? "'complex double'" : "'double'"); - case 'g': return (is_complex ? "'complex long double'" : "'long double'"); - case 'T': return "a struct"; - case 'O': return "Python object"; - case 'P': return "a pointer"; - case 's': case 'p': return "a string"; - case 0: return "end"; - default: return "unparseable format string"; - } -} -static size_t __Pyx_BufFmt_TypeCharToStandardSize(char ch, int is_complex) { - switch (ch) { - case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1; - case 'h': case 'H': return 2; - case 'i': case 'I': case 'l': case 'L': return 4; - case 'q': case 'Q': return 8; - case 'f': return (is_complex ? 8 : 4); - case 'd': return (is_complex ? 16 : 8); - case 'g': { - PyErr_SetString(PyExc_ValueError, "Python does not define a standard format string size for long double ('g').."); - return 0; - } - case 'O': case 'P': return sizeof(void*); - default: - __Pyx_BufFmt_RaiseUnexpectedChar(ch); - return 0; - } -} -static size_t __Pyx_BufFmt_TypeCharToNativeSize(char ch, int is_complex) { - switch (ch) { - case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1; - case 'h': case 'H': return sizeof(short); - case 'i': case 'I': return sizeof(int); - case 'l': case 'L': return sizeof(long); - #ifdef HAVE_LONG_LONG - case 'q': case 'Q': return sizeof(PY_LONG_LONG); - #endif - case 'f': return sizeof(float) * (is_complex ? 2 : 1); - case 'd': return sizeof(double) * (is_complex ? 2 : 1); - case 'g': return sizeof(long double) * (is_complex ? 2 : 1); - case 'O': case 'P': return sizeof(void*); - default: { - __Pyx_BufFmt_RaiseUnexpectedChar(ch); - return 0; - } - } -} -typedef struct { char c; short x; } __Pyx_st_short; -typedef struct { char c; int x; } __Pyx_st_int; -typedef struct { char c; long x; } __Pyx_st_long; -typedef struct { char c; float x; } __Pyx_st_float; -typedef struct { char c; double x; } __Pyx_st_double; -typedef struct { char c; long double x; } __Pyx_st_longdouble; -typedef struct { char c; void *x; } __Pyx_st_void_p; -#ifdef HAVE_LONG_LONG -typedef struct { char c; PY_LONG_LONG x; } __Pyx_st_longlong; -#endif -static size_t __Pyx_BufFmt_TypeCharToAlignment(char ch, CYTHON_UNUSED int is_complex) { - switch (ch) { - case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1; - case 'h': case 'H': return sizeof(__Pyx_st_short) - sizeof(short); - case 'i': case 'I': return sizeof(__Pyx_st_int) - sizeof(int); - case 'l': case 'L': return sizeof(__Pyx_st_long) - sizeof(long); -#ifdef HAVE_LONG_LONG - case 'q': case 'Q': return sizeof(__Pyx_st_longlong) - sizeof(PY_LONG_LONG); -#endif - case 'f': return sizeof(__Pyx_st_float) - sizeof(float); - case 'd': return sizeof(__Pyx_st_double) - sizeof(double); - case 'g': return sizeof(__Pyx_st_longdouble) - sizeof(long double); - case 'P': case 'O': return sizeof(__Pyx_st_void_p) - sizeof(void*); - default: - __Pyx_BufFmt_RaiseUnexpectedChar(ch); - return 0; - } -} -/* These are for computing the padding at the end of the struct to align - on the first member of the struct. This will probably the same as above, - but we don't have any guarantees. - */ -typedef struct { short x; char c; } __Pyx_pad_short; -typedef struct { int x; char c; } __Pyx_pad_int; -typedef struct { long x; char c; } __Pyx_pad_long; -typedef struct { float x; char c; } __Pyx_pad_float; -typedef struct { double x; char c; } __Pyx_pad_double; -typedef struct { long double x; char c; } __Pyx_pad_longdouble; -typedef struct { void *x; char c; } __Pyx_pad_void_p; -#ifdef HAVE_LONG_LONG -typedef struct { PY_LONG_LONG x; char c; } __Pyx_pad_longlong; -#endif -static size_t __Pyx_BufFmt_TypeCharToPadding(char ch, CYTHON_UNUSED int is_complex) { - switch (ch) { - case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1; - case 'h': case 'H': return sizeof(__Pyx_pad_short) - sizeof(short); - case 'i': case 'I': return sizeof(__Pyx_pad_int) - sizeof(int); - case 'l': case 'L': return sizeof(__Pyx_pad_long) - sizeof(long); -#ifdef HAVE_LONG_LONG - case 'q': case 'Q': return sizeof(__Pyx_pad_longlong) - sizeof(PY_LONG_LONG); -#endif - case 'f': return sizeof(__Pyx_pad_float) - sizeof(float); - case 'd': return sizeof(__Pyx_pad_double) - sizeof(double); - case 'g': return sizeof(__Pyx_pad_longdouble) - sizeof(long double); - case 'P': case 'O': return sizeof(__Pyx_pad_void_p) - sizeof(void*); - default: - __Pyx_BufFmt_RaiseUnexpectedChar(ch); - return 0; - } -} -static char __Pyx_BufFmt_TypeCharToGroup(char ch, int is_complex) { - switch (ch) { - case 'c': - return 'H'; - case 'b': case 'h': case 'i': - case 'l': case 'q': case 's': case 'p': - return 'I'; - case '?': case 'B': case 'H': case 'I': case 'L': case 'Q': - return 'U'; - case 'f': case 'd': case 'g': - return (is_complex ? 'C' : 'R'); - case 'O': - return 'O'; - case 'P': - return 'P'; - default: { - __Pyx_BufFmt_RaiseUnexpectedChar(ch); - return 0; - } - } -} -static void __Pyx_BufFmt_RaiseExpected(__Pyx_BufFmt_Context* ctx) { - if (ctx->head == NULL || ctx->head->field == &ctx->root) { - const char* expected; - const char* quote; - if (ctx->head == NULL) { - expected = "end"; - quote = ""; - } else { - expected = ctx->head->field->type->name; - quote = "'"; - } - PyErr_Format(PyExc_ValueError, - "Buffer dtype mismatch, expected %s%s%s but got %s", - quote, expected, quote, - __Pyx_BufFmt_DescribeTypeChar(ctx->enc_type, ctx->is_complex)); - } else { - __Pyx_StructField* field = ctx->head->field; - __Pyx_StructField* parent = (ctx->head - 1)->field; - PyErr_Format(PyExc_ValueError, - "Buffer dtype mismatch, expected '%s' but got %s in '%s.%s'", - field->type->name, __Pyx_BufFmt_DescribeTypeChar(ctx->enc_type, ctx->is_complex), - parent->type->name, field->name); - } -} -static int __Pyx_BufFmt_ProcessTypeChunk(__Pyx_BufFmt_Context* ctx) { - char group; - size_t size, offset, arraysize = 1; - if (ctx->enc_type == 0) return 0; - if (ctx->head->field->type->arraysize[0]) { - int i, ndim = 0; - if (ctx->enc_type == 's' || ctx->enc_type == 'p') { - ctx->is_valid_array = ctx->head->field->type->ndim == 1; - ndim = 1; - if (ctx->enc_count != ctx->head->field->type->arraysize[0]) { - PyErr_Format(PyExc_ValueError, - "Expected a dimension of size %zu, got %zu", - ctx->head->field->type->arraysize[0], ctx->enc_count); - return -1; - } - } - if (!ctx->is_valid_array) { - PyErr_Format(PyExc_ValueError, "Expected %d dimensions, got %d", - ctx->head->field->type->ndim, ndim); - return -1; - } - for (i = 0; i < ctx->head->field->type->ndim; i++) { - arraysize *= ctx->head->field->type->arraysize[i]; - } - ctx->is_valid_array = 0; - ctx->enc_count = 1; - } - group = __Pyx_BufFmt_TypeCharToGroup(ctx->enc_type, ctx->is_complex); - do { - __Pyx_StructField* field = ctx->head->field; - __Pyx_TypeInfo* type = field->type; - if (ctx->enc_packmode == '@' || ctx->enc_packmode == '^') { - size = __Pyx_BufFmt_TypeCharToNativeSize(ctx->enc_type, ctx->is_complex); - } else { - size = __Pyx_BufFmt_TypeCharToStandardSize(ctx->enc_type, ctx->is_complex); - } - if (ctx->enc_packmode == '@') { - size_t align_at = __Pyx_BufFmt_TypeCharToAlignment(ctx->enc_type, ctx->is_complex); - size_t align_mod_offset; - if (align_at == 0) return -1; - align_mod_offset = ctx->fmt_offset % align_at; - if (align_mod_offset > 0) ctx->fmt_offset += align_at - align_mod_offset; - if (ctx->struct_alignment == 0) - ctx->struct_alignment = __Pyx_BufFmt_TypeCharToPadding(ctx->enc_type, - ctx->is_complex); - } - if (type->size != size || type->typegroup != group) { - if (type->typegroup == 'C' && type->fields != NULL) { - size_t parent_offset = ctx->head->parent_offset + field->offset; - ++ctx->head; - ctx->head->field = type->fields; - ctx->head->parent_offset = parent_offset; - continue; - } - if ((type->typegroup == 'H' || group == 'H') && type->size == size) { - } else { - __Pyx_BufFmt_RaiseExpected(ctx); - return -1; - } - } - offset = ctx->head->parent_offset + field->offset; - if (ctx->fmt_offset != offset) { - PyErr_Format(PyExc_ValueError, - "Buffer dtype mismatch; next field is at offset %" CYTHON_FORMAT_SSIZE_T "d but %" CYTHON_FORMAT_SSIZE_T "d expected", - (Py_ssize_t)ctx->fmt_offset, (Py_ssize_t)offset); - return -1; - } - ctx->fmt_offset += size; - if (arraysize) - ctx->fmt_offset += (arraysize - 1) * size; - --ctx->enc_count; - while (1) { - if (field == &ctx->root) { - ctx->head = NULL; - if (ctx->enc_count != 0) { - __Pyx_BufFmt_RaiseExpected(ctx); - return -1; - } - break; - } - ctx->head->field = ++field; - if (field->type == NULL) { - --ctx->head; - field = ctx->head->field; - continue; - } else if (field->type->typegroup == 'S') { - size_t parent_offset = ctx->head->parent_offset + field->offset; - if (field->type->fields->type == NULL) continue; - field = field->type->fields; - ++ctx->head; - ctx->head->field = field; - ctx->head->parent_offset = parent_offset; - break; - } else { - break; - } - } - } while (ctx->enc_count); - ctx->enc_type = 0; - ctx->is_complex = 0; - return 0; -} -static PyObject * -__pyx_buffmt_parse_array(__Pyx_BufFmt_Context* ctx, const char** tsp) -{ - const char *ts = *tsp; - int i = 0, number, ndim; - ++ts; - if (ctx->new_count != 1) { - PyErr_SetString(PyExc_ValueError, - "Cannot handle repeated arrays in format string"); - return NULL; - } - if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; - ndim = ctx->head->field->type->ndim; - while (*ts && *ts != ')') { - switch (*ts) { - case ' ': case '\f': case '\r': case '\n': case '\t': case '\v': continue; - default: break; - } - number = __Pyx_BufFmt_ExpectNumber(&ts); - if (number == -1) return NULL; - if (i < ndim && (size_t) number != ctx->head->field->type->arraysize[i]) - return PyErr_Format(PyExc_ValueError, - "Expected a dimension of size %zu, got %d", - ctx->head->field->type->arraysize[i], number); - if (*ts != ',' && *ts != ')') - return PyErr_Format(PyExc_ValueError, - "Expected a comma in format string, got '%c'", *ts); - if (*ts == ',') ts++; - i++; - } - if (i != ndim) - return PyErr_Format(PyExc_ValueError, "Expected %d dimension(s), got %d", - ctx->head->field->type->ndim, i); - if (!*ts) { - PyErr_SetString(PyExc_ValueError, - "Unexpected end of format string, expected ')'"); - return NULL; - } - ctx->is_valid_array = 1; - ctx->new_count = 1; - *tsp = ++ts; - return Py_None; -} -static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx, const char* ts) { - int got_Z = 0; - while (1) { - switch(*ts) { - case 0: - if (ctx->enc_type != 0 && ctx->head == NULL) { - __Pyx_BufFmt_RaiseExpected(ctx); - return NULL; - } - if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; - if (ctx->head != NULL) { - __Pyx_BufFmt_RaiseExpected(ctx); - return NULL; - } - return ts; - case ' ': - case '\r': - case '\n': - ++ts; - break; - case '<': - if (!__Pyx_Is_Little_Endian()) { - PyErr_SetString(PyExc_ValueError, "Little-endian buffer not supported on big-endian compiler"); - return NULL; - } - ctx->new_packmode = '='; - ++ts; - break; - case '>': - case '!': - if (__Pyx_Is_Little_Endian()) { - PyErr_SetString(PyExc_ValueError, "Big-endian buffer not supported on little-endian compiler"); - return NULL; - } - ctx->new_packmode = '='; - ++ts; - break; - case '=': - case '@': - case '^': - ctx->new_packmode = *ts++; - break; - case 'T': - { - const char* ts_after_sub; - size_t i, struct_count = ctx->new_count; - size_t struct_alignment = ctx->struct_alignment; - ctx->new_count = 1; - ++ts; - if (*ts != '{') { - PyErr_SetString(PyExc_ValueError, "Buffer acquisition: Expected '{' after 'T'"); - return NULL; - } - if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; - ctx->enc_type = 0; - ctx->enc_count = 0; - ctx->struct_alignment = 0; - ++ts; - ts_after_sub = ts; - for (i = 0; i != struct_count; ++i) { - ts_after_sub = __Pyx_BufFmt_CheckString(ctx, ts); - if (!ts_after_sub) return NULL; - } - ts = ts_after_sub; - if (struct_alignment) ctx->struct_alignment = struct_alignment; - } - break; - case '}': - { - size_t alignment = ctx->struct_alignment; - ++ts; - if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; - ctx->enc_type = 0; - if (alignment && ctx->fmt_offset % alignment) { - ctx->fmt_offset += alignment - (ctx->fmt_offset % alignment); - } - } - return ts; - case 'x': - if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; - ctx->fmt_offset += ctx->new_count; - ctx->new_count = 1; - ctx->enc_count = 0; - ctx->enc_type = 0; - ctx->enc_packmode = ctx->new_packmode; - ++ts; - break; - case 'Z': - got_Z = 1; - ++ts; - if (*ts != 'f' && *ts != 'd' && *ts != 'g') { - __Pyx_BufFmt_RaiseUnexpectedChar('Z'); - return NULL; - } - CYTHON_FALLTHROUGH; - case '?': case 'c': case 'b': case 'B': case 'h': case 'H': case 'i': case 'I': - case 'l': case 'L': case 'q': case 'Q': - case 'f': case 'd': case 'g': - case 'O': case 'p': - if ((ctx->enc_type == *ts) && (got_Z == ctx->is_complex) && - (ctx->enc_packmode == ctx->new_packmode) && (!ctx->is_valid_array)) { - ctx->enc_count += ctx->new_count; - ctx->new_count = 1; - got_Z = 0; - ++ts; - break; - } - CYTHON_FALLTHROUGH; - case 's': - if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL; - ctx->enc_count = ctx->new_count; - ctx->enc_packmode = ctx->new_packmode; - ctx->enc_type = *ts; - ctx->is_complex = got_Z; - ++ts; - ctx->new_count = 1; - got_Z = 0; - break; - case ':': - ++ts; - while(*ts != ':') ++ts; - ++ts; - break; - case '(': - if (!__pyx_buffmt_parse_array(ctx, &ts)) return NULL; - break; - default: - { - int number = __Pyx_BufFmt_ExpectNumber(&ts); - if (number == -1) return NULL; - ctx->new_count = (size_t)number; - } - } - } -} - -/* TypeInfoCompare */ - static int -__pyx_typeinfo_cmp(__Pyx_TypeInfo *a, __Pyx_TypeInfo *b) -{ - int i; - if (!a || !b) - return 0; - if (a == b) - return 1; - if (a->size != b->size || a->typegroup != b->typegroup || - a->is_unsigned != b->is_unsigned || a->ndim != b->ndim) { - if (a->typegroup == 'H' || b->typegroup == 'H') { - return a->size == b->size; - } else { - return 0; - } - } - if (a->ndim) { - for (i = 0; i < a->ndim; i++) - if (a->arraysize[i] != b->arraysize[i]) - return 0; - } - if (a->typegroup == 'S') { - if (a->flags != b->flags) - return 0; - if (a->fields || b->fields) { - if (!(a->fields && b->fields)) - return 0; - for (i = 0; a->fields[i].type && b->fields[i].type; i++) { - __Pyx_StructField *field_a = a->fields + i; - __Pyx_StructField *field_b = b->fields + i; - if (field_a->offset != field_b->offset || - !__pyx_typeinfo_cmp(field_a->type, field_b->type)) - return 0; - } - return !a->fields[i].type && !b->fields[i].type; - } - } - return 1; -} - -/* MemviewSliceValidateAndInit */ - static int -__pyx_check_strides(Py_buffer *buf, int dim, int ndim, int spec) -{ - if (buf->shape[dim] <= 1) - return 1; - if (buf->strides) { - if (spec & __Pyx_MEMVIEW_CONTIG) { - if (spec & (__Pyx_MEMVIEW_PTR|__Pyx_MEMVIEW_FULL)) { - if (unlikely(buf->strides[dim] != sizeof(void *))) { - PyErr_Format(PyExc_ValueError, - "Buffer is not indirectly contiguous " - "in dimension %d.", dim); - goto fail; - } - } else if (unlikely(buf->strides[dim] != buf->itemsize)) { - PyErr_SetString(PyExc_ValueError, - "Buffer and memoryview are not contiguous " - "in the same dimension."); - goto fail; - } - } - if (spec & __Pyx_MEMVIEW_FOLLOW) { - Py_ssize_t stride = buf->strides[dim]; - if (stride < 0) - stride = -stride; - if (unlikely(stride < buf->itemsize)) { - PyErr_SetString(PyExc_ValueError, - "Buffer and memoryview are not contiguous " - "in the same dimension."); - goto fail; - } - } - } else { - if (unlikely(spec & __Pyx_MEMVIEW_CONTIG && dim != ndim - 1)) { - PyErr_Format(PyExc_ValueError, - "C-contiguous buffer is not contiguous in " - "dimension %d", dim); - goto fail; - } else if (unlikely(spec & (__Pyx_MEMVIEW_PTR))) { - PyErr_Format(PyExc_ValueError, - "C-contiguous buffer is not indirect in " - "dimension %d", dim); - goto fail; - } else if (unlikely(buf->suboffsets)) { - PyErr_SetString(PyExc_ValueError, - "Buffer exposes suboffsets but no strides"); - goto fail; - } - } - return 1; -fail: - return 0; -} -static int -__pyx_check_suboffsets(Py_buffer *buf, int dim, CYTHON_UNUSED int ndim, int spec) -{ - if (spec & __Pyx_MEMVIEW_DIRECT) { - if (unlikely(buf->suboffsets && buf->suboffsets[dim] >= 0)) { - PyErr_Format(PyExc_ValueError, - "Buffer not compatible with direct access " - "in dimension %d.", dim); - goto fail; - } - } - if (spec & __Pyx_MEMVIEW_PTR) { - if (unlikely(!buf->suboffsets || (buf->suboffsets[dim] < 0))) { - PyErr_Format(PyExc_ValueError, - "Buffer is not indirectly accessible " - "in dimension %d.", dim); - goto fail; - } - } - return 1; -fail: - return 0; -} -static int -__pyx_verify_contig(Py_buffer *buf, int ndim, int c_or_f_flag) -{ - int i; - if (c_or_f_flag & __Pyx_IS_F_CONTIG) { - Py_ssize_t stride = 1; - for (i = 0; i < ndim; i++) { - if (unlikely(stride * buf->itemsize != buf->strides[i] && buf->shape[i] > 1)) { - PyErr_SetString(PyExc_ValueError, - "Buffer not fortran contiguous."); - goto fail; - } - stride = stride * buf->shape[i]; - } - } else if (c_or_f_flag & __Pyx_IS_C_CONTIG) { - Py_ssize_t stride = 1; - for (i = ndim - 1; i >- 1; i--) { - if (unlikely(stride * buf->itemsize != buf->strides[i] && buf->shape[i] > 1)) { - PyErr_SetString(PyExc_ValueError, - "Buffer not C contiguous."); - goto fail; - } - stride = stride * buf->shape[i]; - } - } - return 1; -fail: - return 0; -} -static int __Pyx_ValidateAndInit_memviewslice( - int *axes_specs, - int c_or_f_flag, - int buf_flags, - int ndim, - __Pyx_TypeInfo *dtype, - __Pyx_BufFmt_StackElem stack[], - __Pyx_memviewslice *memviewslice, - PyObject *original_obj) -{ - struct __pyx_memoryview_obj *memview, *new_memview; - __Pyx_RefNannyDeclarations - Py_buffer *buf; - int i, spec = 0, retval = -1; - __Pyx_BufFmt_Context ctx; - int from_memoryview = __pyx_memoryview_check(original_obj); - __Pyx_RefNannySetupContext("ValidateAndInit_memviewslice", 0); - if (from_memoryview && __pyx_typeinfo_cmp(dtype, ((struct __pyx_memoryview_obj *) - original_obj)->typeinfo)) { - memview = (struct __pyx_memoryview_obj *) original_obj; - new_memview = NULL; - } else { - memview = (struct __pyx_memoryview_obj *) __pyx_memoryview_new( - original_obj, buf_flags, 0, dtype); - new_memview = memview; - if (unlikely(!memview)) - goto fail; - } - buf = &memview->view; - if (unlikely(buf->ndim != ndim)) { - PyErr_Format(PyExc_ValueError, - "Buffer has wrong number of dimensions (expected %d, got %d)", - ndim, buf->ndim); - goto fail; - } - if (new_memview) { - __Pyx_BufFmt_Init(&ctx, stack, dtype); - if (unlikely(!__Pyx_BufFmt_CheckString(&ctx, buf->format))) goto fail; - } - if (unlikely((unsigned) buf->itemsize != dtype->size)) { - PyErr_Format(PyExc_ValueError, - "Item size of buffer (%" CYTHON_FORMAT_SSIZE_T "u byte%s) " - "does not match size of '%s' (%" CYTHON_FORMAT_SSIZE_T "u byte%s)", - buf->itemsize, - (buf->itemsize > 1) ? "s" : "", - dtype->name, - dtype->size, - (dtype->size > 1) ? "s" : ""); - goto fail; - } - if (buf->len > 0) { - for (i = 0; i < ndim; i++) { - spec = axes_specs[i]; - if (unlikely(!__pyx_check_strides(buf, i, ndim, spec))) - goto fail; - if (unlikely(!__pyx_check_suboffsets(buf, i, ndim, spec))) - goto fail; - } - if (unlikely(buf->strides && !__pyx_verify_contig(buf, ndim, c_or_f_flag))) - goto fail; - } - if (unlikely(__Pyx_init_memviewslice(memview, ndim, memviewslice, - new_memview != NULL) == -1)) { - goto fail; - } - retval = 0; - goto no_fail; -fail: - Py_XDECREF(new_memview); - retval = -1; -no_fail: - __Pyx_RefNannyFinishContext(); - return retval; -} - -/* ObjectToMemviewSlice */ - static CYTHON_INLINE __Pyx_memviewslice __Pyx_PyObject_to_MemoryviewSlice_d_d_dc_int(PyObject *obj, int writable_flag) { - __Pyx_memviewslice result = { 0, 0, { 0 }, { 0 }, { 0 } }; - __Pyx_BufFmt_StackElem stack[1]; - int axes_specs[] = { (__Pyx_MEMVIEW_DIRECT | __Pyx_MEMVIEW_FOLLOW), (__Pyx_MEMVIEW_DIRECT | __Pyx_MEMVIEW_FOLLOW), (__Pyx_MEMVIEW_DIRECT | __Pyx_MEMVIEW_CONTIG) }; - int retcode; - if (obj == Py_None) { - result.memview = (struct __pyx_memoryview_obj *) Py_None; - return result; - } - retcode = __Pyx_ValidateAndInit_memviewslice(axes_specs, __Pyx_IS_C_CONTIG, - (PyBUF_C_CONTIGUOUS | PyBUF_FORMAT) | writable_flag, 3, - &__Pyx_TypeInfo_int, stack, - &result, obj); - if (unlikely(retcode == -1)) - goto __pyx_fail; - return result; -__pyx_fail: - result.memview = NULL; - result.data = NULL; - return result; -} - -/* ObjectToMemviewSlice */ - static CYTHON_INLINE __Pyx_memviewslice __Pyx_PyObject_to_MemoryviewSlice_d_d_dc_float(PyObject *obj, int writable_flag) { - __Pyx_memviewslice result = { 0, 0, { 0 }, { 0 }, { 0 } }; - __Pyx_BufFmt_StackElem stack[1]; - int axes_specs[] = { (__Pyx_MEMVIEW_DIRECT | __Pyx_MEMVIEW_FOLLOW), (__Pyx_MEMVIEW_DIRECT | __Pyx_MEMVIEW_FOLLOW), (__Pyx_MEMVIEW_DIRECT | __Pyx_MEMVIEW_CONTIG) }; - int retcode; - if (obj == Py_None) { - result.memview = (struct __pyx_memoryview_obj *) Py_None; - return result; - } - retcode = __Pyx_ValidateAndInit_memviewslice(axes_specs, __Pyx_IS_C_CONTIG, - (PyBUF_C_CONTIGUOUS | PyBUF_FORMAT) | writable_flag, 3, - &__Pyx_TypeInfo_float, stack, - &result, obj); - if (unlikely(retcode == -1)) - goto __pyx_fail; - return result; -__pyx_fail: - result.memview = NULL; - result.data = NULL; - return result; -} - -/* ObjectToMemviewSlice */ - static CYTHON_INLINE __Pyx_memviewslice __Pyx_PyObject_to_MemoryviewSlice_dc_int(PyObject *obj, int writable_flag) { - __Pyx_memviewslice result = { 0, 0, { 0 }, { 0 }, { 0 } }; - __Pyx_BufFmt_StackElem stack[1]; - int axes_specs[] = { (__Pyx_MEMVIEW_DIRECT | __Pyx_MEMVIEW_CONTIG) }; - int retcode; - if (obj == Py_None) { - result.memview = (struct __pyx_memoryview_obj *) Py_None; - return result; - } - retcode = __Pyx_ValidateAndInit_memviewslice(axes_specs, __Pyx_IS_C_CONTIG, - (PyBUF_C_CONTIGUOUS | PyBUF_FORMAT) | writable_flag, 1, - &__Pyx_TypeInfo_int, stack, - &result, obj); - if (unlikely(retcode == -1)) - goto __pyx_fail; - return result; -__pyx_fail: - result.memview = NULL; - result.data = NULL; - return result; -} - -/* CIntFromPyVerify */ - #define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\ - __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0) -#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\ - __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1) -#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\ - {\ - func_type value = func_value;\ - if (sizeof(target_type) < sizeof(func_type)) {\ - if (unlikely(value != (func_type) (target_type) value)) {\ - func_type zero = 0;\ - if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\ - return (target_type) -1;\ - if (is_unsigned && unlikely(value < zero))\ - goto raise_neg_overflow;\ - else\ - goto raise_overflow;\ - }\ - }\ - return (target_type) value;\ - } - -/* Declarations */ - #if CYTHON_CCOMPLEX - #ifdef __cplusplus - static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) { - return ::std::complex< float >(x, y); - } - #else - static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) { - return x + y*(__pyx_t_float_complex)_Complex_I; - } - #endif -#else - static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) { - __pyx_t_float_complex z; - z.real = x; - z.imag = y; - return z; - } -#endif - -/* Arithmetic */ - #if CYTHON_CCOMPLEX -#else - static CYTHON_INLINE int __Pyx_c_eq_float(__pyx_t_float_complex a, __pyx_t_float_complex b) { - return (a.real == b.real) && (a.imag == b.imag); - } - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sum_float(__pyx_t_float_complex a, __pyx_t_float_complex b) { - __pyx_t_float_complex z; - z.real = a.real + b.real; - z.imag = a.imag + b.imag; - return z; - } - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_diff_float(__pyx_t_float_complex a, __pyx_t_float_complex b) { - __pyx_t_float_complex z; - z.real = a.real - b.real; - z.imag = a.imag - b.imag; - return z; - } - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prod_float(__pyx_t_float_complex a, __pyx_t_float_complex b) { - __pyx_t_float_complex z; - z.real = a.real * b.real - a.imag * b.imag; - z.imag = a.real * b.imag + a.imag * b.real; - return z; - } - #if 1 - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) { - if (b.imag == 0) { - return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.real); - } else if (fabsf(b.real) >= fabsf(b.imag)) { - if (b.real == 0 && b.imag == 0) { - return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.imag); - } else { - float r = b.imag / b.real; - float s = (float)(1.0) / (b.real + b.imag * r); - return __pyx_t_float_complex_from_parts( - (a.real + a.imag * r) * s, (a.imag - a.real * r) * s); - } - } else { - float r = b.real / b.imag; - float s = (float)(1.0) / (b.imag + b.real * r); - return __pyx_t_float_complex_from_parts( - (a.real * r + a.imag) * s, (a.imag * r - a.real) * s); - } - } - #else - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) { - if (b.imag == 0) { - return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.real); - } else { - float denom = b.real * b.real + b.imag * b.imag; - return __pyx_t_float_complex_from_parts( - (a.real * b.real + a.imag * b.imag) / denom, - (a.imag * b.real - a.real * b.imag) / denom); - } - } - #endif - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_neg_float(__pyx_t_float_complex a) { - __pyx_t_float_complex z; - z.real = -a.real; - z.imag = -a.imag; - return z; - } - static CYTHON_INLINE int __Pyx_c_is_zero_float(__pyx_t_float_complex a) { - return (a.real == 0) && (a.imag == 0); - } - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conj_float(__pyx_t_float_complex a) { - __pyx_t_float_complex z; - z.real = a.real; - z.imag = -a.imag; - return z; - } - #if 1 - static CYTHON_INLINE float __Pyx_c_abs_float(__pyx_t_float_complex z) { - #if !defined(HAVE_HYPOT) || defined(_MSC_VER) - return sqrtf(z.real*z.real + z.imag*z.imag); - #else - return hypotf(z.real, z.imag); - #endif - } - static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_pow_float(__pyx_t_float_complex a, __pyx_t_float_complex b) { - __pyx_t_float_complex z; - float r, lnr, theta, z_r, z_theta; - if (b.imag == 0 && b.real == (int)b.real) { - if (b.real < 0) { - float denom = a.real * a.real + a.imag * a.imag; - a.real = a.real / denom; - a.imag = -a.imag / denom; - b.real = -b.real; - } - switch ((int)b.real) { - case 0: - z.real = 1; - z.imag = 0; - return z; - case 1: - return a; - case 2: - return __Pyx_c_prod_float(a, a); - case 3: - z = __Pyx_c_prod_float(a, a); - return __Pyx_c_prod_float(z, a); - case 4: - z = __Pyx_c_prod_float(a, a); - return __Pyx_c_prod_float(z, z); - } - } - if (a.imag == 0) { - if (a.real == 0) { - return a; - } else if (b.imag == 0) { - z.real = powf(a.real, b.real); - z.imag = 0; - return z; - } else if (a.real > 0) { - r = a.real; - theta = 0; - } else { - r = -a.real; - theta = atan2f(0.0, -1.0); - } - } else { - r = __Pyx_c_abs_float(a); - theta = atan2f(a.imag, a.real); - } - lnr = logf(r); - z_r = expf(lnr * b.real - theta * b.imag); - z_theta = theta * b.real + lnr * b.imag; - z.real = z_r * cosf(z_theta); - z.imag = z_r * sinf(z_theta); - return z; - } - #endif -#endif - -/* Declarations */ - #if CYTHON_CCOMPLEX - #ifdef __cplusplus - static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) { - return ::std::complex< double >(x, y); - } - #else - static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) { - return x + y*(__pyx_t_double_complex)_Complex_I; - } - #endif -#else - static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) { - __pyx_t_double_complex z; - z.real = x; - z.imag = y; - return z; - } -#endif - -/* Arithmetic */ - #if CYTHON_CCOMPLEX -#else - static CYTHON_INLINE int __Pyx_c_eq_double(__pyx_t_double_complex a, __pyx_t_double_complex b) { - return (a.real == b.real) && (a.imag == b.imag); - } - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum_double(__pyx_t_double_complex a, __pyx_t_double_complex b) { - __pyx_t_double_complex z; - z.real = a.real + b.real; - z.imag = a.imag + b.imag; - return z; - } - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff_double(__pyx_t_double_complex a, __pyx_t_double_complex b) { - __pyx_t_double_complex z; - z.real = a.real - b.real; - z.imag = a.imag - b.imag; - return z; - } - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod_double(__pyx_t_double_complex a, __pyx_t_double_complex b) { - __pyx_t_double_complex z; - z.real = a.real * b.real - a.imag * b.imag; - z.imag = a.real * b.imag + a.imag * b.real; - return z; - } - #if 1 - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) { - if (b.imag == 0) { - return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.real); - } else if (fabs(b.real) >= fabs(b.imag)) { - if (b.real == 0 && b.imag == 0) { - return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.imag); - } else { - double r = b.imag / b.real; - double s = (double)(1.0) / (b.real + b.imag * r); - return __pyx_t_double_complex_from_parts( - (a.real + a.imag * r) * s, (a.imag - a.real * r) * s); - } - } else { - double r = b.real / b.imag; - double s = (double)(1.0) / (b.imag + b.real * r); - return __pyx_t_double_complex_from_parts( - (a.real * r + a.imag) * s, (a.imag * r - a.real) * s); - } - } - #else - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) { - if (b.imag == 0) { - return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.real); - } else { - double denom = b.real * b.real + b.imag * b.imag; - return __pyx_t_double_complex_from_parts( - (a.real * b.real + a.imag * b.imag) / denom, - (a.imag * b.real - a.real * b.imag) / denom); - } - } - #endif - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg_double(__pyx_t_double_complex a) { - __pyx_t_double_complex z; - z.real = -a.real; - z.imag = -a.imag; - return z; - } - static CYTHON_INLINE int __Pyx_c_is_zero_double(__pyx_t_double_complex a) { - return (a.real == 0) && (a.imag == 0); - } - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj_double(__pyx_t_double_complex a) { - __pyx_t_double_complex z; - z.real = a.real; - z.imag = -a.imag; - return z; - } - #if 1 - static CYTHON_INLINE double __Pyx_c_abs_double(__pyx_t_double_complex z) { - #if !defined(HAVE_HYPOT) || defined(_MSC_VER) - return sqrt(z.real*z.real + z.imag*z.imag); - #else - return hypot(z.real, z.imag); - #endif - } - static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow_double(__pyx_t_double_complex a, __pyx_t_double_complex b) { - __pyx_t_double_complex z; - double r, lnr, theta, z_r, z_theta; - if (b.imag == 0 && b.real == (int)b.real) { - if (b.real < 0) { - double denom = a.real * a.real + a.imag * a.imag; - a.real = a.real / denom; - a.imag = -a.imag / denom; - b.real = -b.real; - } - switch ((int)b.real) { - case 0: - z.real = 1; - z.imag = 0; - return z; - case 1: - return a; - case 2: - return __Pyx_c_prod_double(a, a); - case 3: - z = __Pyx_c_prod_double(a, a); - return __Pyx_c_prod_double(z, a); - case 4: - z = __Pyx_c_prod_double(a, a); - return __Pyx_c_prod_double(z, z); - } - } - if (a.imag == 0) { - if (a.real == 0) { - return a; - } else if (b.imag == 0) { - z.real = pow(a.real, b.real); - z.imag = 0; - return z; - } else if (a.real > 0) { - r = a.real; - theta = 0; - } else { - r = -a.real; - theta = atan2(0.0, -1.0); - } - } else { - r = __Pyx_c_abs_double(a); - theta = atan2(a.imag, a.real); - } - lnr = log(r); - z_r = exp(lnr * b.real - theta * b.imag); - z_theta = theta * b.real + lnr * b.imag; - z.real = z_r * cos(z_theta); - z.imag = z_r * sin(z_theta); - return z; - } - #endif -#endif - -/* MemviewSliceCopyTemplate */ - static __Pyx_memviewslice -__pyx_memoryview_copy_new_contig(const __Pyx_memviewslice *from_mvs, - const char *mode, int ndim, - size_t sizeof_dtype, int contig_flag, - int dtype_is_object) -{ - __Pyx_RefNannyDeclarations - int i; - __Pyx_memviewslice new_mvs = { 0, 0, { 0 }, { 0 }, { 0 } }; - struct __pyx_memoryview_obj *from_memview = from_mvs->memview; - Py_buffer *buf = &from_memview->view; - PyObject *shape_tuple = NULL; - PyObject *temp_int = NULL; - struct __pyx_array_obj *array_obj = NULL; - struct __pyx_memoryview_obj *memview_obj = NULL; - __Pyx_RefNannySetupContext("__pyx_memoryview_copy_new_contig", 0); - for (i = 0; i < ndim; i++) { - if (unlikely(from_mvs->suboffsets[i] >= 0)) { - PyErr_Format(PyExc_ValueError, "Cannot copy memoryview slice with " - "indirect dimensions (axis %d)", i); - goto fail; - } - } - shape_tuple = PyTuple_New(ndim); - if (unlikely(!shape_tuple)) { - goto fail; - } - __Pyx_GOTREF(shape_tuple); - for(i = 0; i < ndim; i++) { - temp_int = PyInt_FromSsize_t(from_mvs->shape[i]); - if(unlikely(!temp_int)) { - goto fail; - } else { - PyTuple_SET_ITEM(shape_tuple, i, temp_int); - temp_int = NULL; - } - } - array_obj = __pyx_array_new(shape_tuple, sizeof_dtype, buf->format, (char *) mode, NULL); - if (unlikely(!array_obj)) { - goto fail; - } - __Pyx_GOTREF(array_obj); - memview_obj = (struct __pyx_memoryview_obj *) __pyx_memoryview_new( - (PyObject *) array_obj, contig_flag, - dtype_is_object, - from_mvs->memview->typeinfo); - if (unlikely(!memview_obj)) - goto fail; - if (unlikely(__Pyx_init_memviewslice(memview_obj, ndim, &new_mvs, 1) < 0)) - goto fail; - if (unlikely(__pyx_memoryview_copy_contents(*from_mvs, new_mvs, ndim, ndim, - dtype_is_object) < 0)) - goto fail; - goto no_fail; -fail: - __Pyx_XDECREF(new_mvs.memview); - new_mvs.memview = NULL; - new_mvs.data = NULL; -no_fail: - __Pyx_XDECREF(shape_tuple); - __Pyx_XDECREF(temp_int); - __Pyx_XDECREF(array_obj); - __Pyx_RefNannyFinishContext(); - return new_mvs; -} - -/* CIntToPy */ - static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) { -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wconversion" -#endif - const int neg_one = (int) -1, const_zero = (int) 0; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic pop -#endif - const int is_unsigned = neg_one > const_zero; - if (is_unsigned) { - if (sizeof(int) < sizeof(long)) { - return PyInt_FromLong((long) value); - } else if (sizeof(int) <= sizeof(unsigned long)) { - return PyLong_FromUnsignedLong((unsigned long) value); -#ifdef HAVE_LONG_LONG - } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { - return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); -#endif - } - } else { - if (sizeof(int) <= sizeof(long)) { - return PyInt_FromLong((long) value); -#ifdef HAVE_LONG_LONG - } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { - return PyLong_FromLongLong((PY_LONG_LONG) value); -#endif - } - } - { - int one = 1; int little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&value; - return _PyLong_FromByteArray(bytes, sizeof(int), - little, !is_unsigned); - } -} - -/* CIntFromPy */ - static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) { -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wconversion" -#endif - const int neg_one = (int) -1, const_zero = (int) 0; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic pop -#endif - const int is_unsigned = neg_one > const_zero; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x))) { - if (sizeof(int) < sizeof(long)) { - __PYX_VERIFY_RETURN_INT(int, long, PyInt_AS_LONG(x)) - } else { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - goto raise_neg_overflow; - } - return (int) val; - } - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { -#if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = ((PyLongObject*)x)->ob_digit; - switch (Py_SIZE(x)) { - case 0: return (int) 0; - case 1: __PYX_VERIFY_RETURN_INT(int, digit, digits[0]) - case 2: - if (8 * sizeof(int) > 1 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(int) >= 2 * PyLong_SHIFT) { - return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } - } - break; - case 3: - if (8 * sizeof(int) > 2 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(int) >= 3 * PyLong_SHIFT) { - return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } - } - break; - case 4: - if (8 * sizeof(int) > 3 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(int) >= 4 * PyLong_SHIFT) { - return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])); - } - } - break; - } -#endif -#if CYTHON_COMPILING_IN_CPYTHON - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } -#else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (int) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } -#endif - if (sizeof(int) <= sizeof(unsigned long)) { - __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x)) -#ifdef HAVE_LONG_LONG - } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) { - __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) -#endif - } - } else { -#if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = ((PyLongObject*)x)->ob_digit; - switch (Py_SIZE(x)) { - case 0: return (int) 0; - case -1: __PYX_VERIFY_RETURN_INT(int, sdigit, (sdigit) (-(sdigit)digits[0])) - case 1: __PYX_VERIFY_RETURN_INT(int, digit, +digits[0]) - case -2: - if (8 * sizeof(int) - 1 > 1 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) { - return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } - } - break; - case 2: - if (8 * sizeof(int) > 1 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) { - return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } - } - break; - case -3: - if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) { - return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } - } - break; - case 3: - if (8 * sizeof(int) > 2 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) { - return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } - } - break; - case -4: - if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(int) - 1 > 4 * PyLong_SHIFT) { - return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } - } - break; - case 4: - if (8 * sizeof(int) > 3 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(int) - 1 > 4 * PyLong_SHIFT) { - return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]))); - } - } - break; - } -#endif - if (sizeof(int) <= sizeof(long)) { - __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x)) -#ifdef HAVE_LONG_LONG - } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) { - __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x)) -#endif - } - } - { -#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray) - PyErr_SetString(PyExc_RuntimeError, - "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers"); -#else - int val; - PyObject *v = __Pyx_PyNumber_IntOrLong(x); - #if PY_MAJOR_VERSION < 3 - if (likely(v) && !PyLong_Check(v)) { - PyObject *tmp = v; - v = PyNumber_Long(tmp); - Py_DECREF(tmp); - } - #endif - if (likely(v)) { - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - int ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); - Py_DECREF(v); - if (likely(!ret)) - return val; - } -#endif - return (int) -1; - } - } else { - int val; - PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); - if (!tmp) return (int) -1; - val = __Pyx_PyInt_As_int(tmp); - Py_DECREF(tmp); - return val; - } -raise_overflow: - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to int"); - return (int) -1; -raise_neg_overflow: - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to int"); - return (int) -1; -} - -/* CIntToPy */ - static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) { -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wconversion" -#endif - const long neg_one = (long) -1, const_zero = (long) 0; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic pop -#endif - const int is_unsigned = neg_one > const_zero; - if (is_unsigned) { - if (sizeof(long) < sizeof(long)) { - return PyInt_FromLong((long) value); - } else if (sizeof(long) <= sizeof(unsigned long)) { - return PyLong_FromUnsignedLong((unsigned long) value); -#ifdef HAVE_LONG_LONG - } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { - return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value); -#endif - } - } else { - if (sizeof(long) <= sizeof(long)) { - return PyInt_FromLong((long) value); -#ifdef HAVE_LONG_LONG - } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { - return PyLong_FromLongLong((PY_LONG_LONG) value); -#endif - } - } - { - int one = 1; int little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&value; - return _PyLong_FromByteArray(bytes, sizeof(long), - little, !is_unsigned); - } -} - -/* CIntFromPy */ - static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) { -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wconversion" -#endif - const long neg_one = (long) -1, const_zero = (long) 0; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic pop -#endif - const int is_unsigned = neg_one > const_zero; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x))) { - if (sizeof(long) < sizeof(long)) { - __PYX_VERIFY_RETURN_INT(long, long, PyInt_AS_LONG(x)) - } else { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - goto raise_neg_overflow; - } - return (long) val; - } - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { -#if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = ((PyLongObject*)x)->ob_digit; - switch (Py_SIZE(x)) { - case 0: return (long) 0; - case 1: __PYX_VERIFY_RETURN_INT(long, digit, digits[0]) - case 2: - if (8 * sizeof(long) > 1 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(long) >= 2 * PyLong_SHIFT) { - return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } - } - break; - case 3: - if (8 * sizeof(long) > 2 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(long) >= 3 * PyLong_SHIFT) { - return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } - } - break; - case 4: - if (8 * sizeof(long) > 3 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(long) >= 4 * PyLong_SHIFT) { - return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])); - } - } - break; - } -#endif -#if CYTHON_COMPILING_IN_CPYTHON - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } -#else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (long) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } -#endif - if (sizeof(long) <= sizeof(unsigned long)) { - __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x)) -#ifdef HAVE_LONG_LONG - } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) { - __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) -#endif - } - } else { -#if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = ((PyLongObject*)x)->ob_digit; - switch (Py_SIZE(x)) { - case 0: return (long) 0; - case -1: __PYX_VERIFY_RETURN_INT(long, sdigit, (sdigit) (-(sdigit)digits[0])) - case 1: __PYX_VERIFY_RETURN_INT(long, digit, +digits[0]) - case -2: - if (8 * sizeof(long) - 1 > 1 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { - return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } - } - break; - case 2: - if (8 * sizeof(long) > 1 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { - return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } - } - break; - case -3: - if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { - return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } - } - break; - case 3: - if (8 * sizeof(long) > 2 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { - return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } - } - break; - case -4: - if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { - return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } - } - break; - case 4: - if (8 * sizeof(long) > 3 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) { - return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]))); - } - } - break; - } -#endif - if (sizeof(long) <= sizeof(long)) { - __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x)) -#ifdef HAVE_LONG_LONG - } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) { - __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x)) -#endif - } - } - { -#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray) - PyErr_SetString(PyExc_RuntimeError, - "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers"); -#else - long val; - PyObject *v = __Pyx_PyNumber_IntOrLong(x); - #if PY_MAJOR_VERSION < 3 - if (likely(v) && !PyLong_Check(v)) { - PyObject *tmp = v; - v = PyNumber_Long(tmp); - Py_DECREF(tmp); - } - #endif - if (likely(v)) { - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - int ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); - Py_DECREF(v); - if (likely(!ret)) - return val; - } -#endif - return (long) -1; - } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); - if (!tmp) return (long) -1; - val = __Pyx_PyInt_As_long(tmp); - Py_DECREF(tmp); - return val; - } -raise_overflow: - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to long"); - return (long) -1; -raise_neg_overflow: - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long) -1; -} - -/* CIntFromPy */ - static CYTHON_INLINE char __Pyx_PyInt_As_char(PyObject *x) { -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wconversion" -#endif - const char neg_one = (char) -1, const_zero = (char) 0; -#ifdef __Pyx_HAS_GCC_DIAGNOSTIC -#pragma GCC diagnostic pop -#endif - const int is_unsigned = neg_one > const_zero; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x))) { - if (sizeof(char) < sizeof(long)) { - __PYX_VERIFY_RETURN_INT(char, long, PyInt_AS_LONG(x)) - } else { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - goto raise_neg_overflow; - } - return (char) val; - } - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { -#if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = ((PyLongObject*)x)->ob_digit; - switch (Py_SIZE(x)) { - case 0: return (char) 0; - case 1: __PYX_VERIFY_RETURN_INT(char, digit, digits[0]) - case 2: - if (8 * sizeof(char) > 1 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(char, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(char) >= 2 * PyLong_SHIFT) { - return (char) (((((char)digits[1]) << PyLong_SHIFT) | (char)digits[0])); - } - } - break; - case 3: - if (8 * sizeof(char) > 2 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(char, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(char) >= 3 * PyLong_SHIFT) { - return (char) (((((((char)digits[2]) << PyLong_SHIFT) | (char)digits[1]) << PyLong_SHIFT) | (char)digits[0])); - } - } - break; - case 4: - if (8 * sizeof(char) > 3 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(char, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(char) >= 4 * PyLong_SHIFT) { - return (char) (((((((((char)digits[3]) << PyLong_SHIFT) | (char)digits[2]) << PyLong_SHIFT) | (char)digits[1]) << PyLong_SHIFT) | (char)digits[0])); - } - } - break; - } -#endif -#if CYTHON_COMPILING_IN_CPYTHON - if (unlikely(Py_SIZE(x) < 0)) { - goto raise_neg_overflow; - } -#else - { - int result = PyObject_RichCompareBool(x, Py_False, Py_LT); - if (unlikely(result < 0)) - return (char) -1; - if (unlikely(result == 1)) - goto raise_neg_overflow; - } -#endif - if (sizeof(char) <= sizeof(unsigned long)) { - __PYX_VERIFY_RETURN_INT_EXC(char, unsigned long, PyLong_AsUnsignedLong(x)) -#ifdef HAVE_LONG_LONG - } else if (sizeof(char) <= sizeof(unsigned PY_LONG_LONG)) { - __PYX_VERIFY_RETURN_INT_EXC(char, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x)) -#endif - } - } else { -#if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = ((PyLongObject*)x)->ob_digit; - switch (Py_SIZE(x)) { - case 0: return (char) 0; - case -1: __PYX_VERIFY_RETURN_INT(char, sdigit, (sdigit) (-(sdigit)digits[0])) - case 1: __PYX_VERIFY_RETURN_INT(char, digit, +digits[0]) - case -2: - if (8 * sizeof(char) - 1 > 1 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(char, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(char) - 1 > 2 * PyLong_SHIFT) { - return (char) (((char)-1)*(((((char)digits[1]) << PyLong_SHIFT) | (char)digits[0]))); - } - } - break; - case 2: - if (8 * sizeof(char) > 1 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(char, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(char) - 1 > 2 * PyLong_SHIFT) { - return (char) ((((((char)digits[1]) << PyLong_SHIFT) | (char)digits[0]))); - } - } - break; - case -3: - if (8 * sizeof(char) - 1 > 2 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(char, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(char) - 1 > 3 * PyLong_SHIFT) { - return (char) (((char)-1)*(((((((char)digits[2]) << PyLong_SHIFT) | (char)digits[1]) << PyLong_SHIFT) | (char)digits[0]))); - } - } - break; - case 3: - if (8 * sizeof(char) > 2 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(char, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(char) - 1 > 3 * PyLong_SHIFT) { - return (char) ((((((((char)digits[2]) << PyLong_SHIFT) | (char)digits[1]) << PyLong_SHIFT) | (char)digits[0]))); - } - } - break; - case -4: - if (8 * sizeof(char) - 1 > 3 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(char, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(char) - 1 > 4 * PyLong_SHIFT) { - return (char) (((char)-1)*(((((((((char)digits[3]) << PyLong_SHIFT) | (char)digits[2]) << PyLong_SHIFT) | (char)digits[1]) << PyLong_SHIFT) | (char)digits[0]))); - } - } - break; - case 4: - if (8 * sizeof(char) > 3 * PyLong_SHIFT) { - if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) { - __PYX_VERIFY_RETURN_INT(char, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]))) - } else if (8 * sizeof(char) - 1 > 4 * PyLong_SHIFT) { - return (char) ((((((((((char)digits[3]) << PyLong_SHIFT) | (char)digits[2]) << PyLong_SHIFT) | (char)digits[1]) << PyLong_SHIFT) | (char)digits[0]))); - } - } - break; - } -#endif - if (sizeof(char) <= sizeof(long)) { - __PYX_VERIFY_RETURN_INT_EXC(char, long, PyLong_AsLong(x)) -#ifdef HAVE_LONG_LONG - } else if (sizeof(char) <= sizeof(PY_LONG_LONG)) { - __PYX_VERIFY_RETURN_INT_EXC(char, PY_LONG_LONG, PyLong_AsLongLong(x)) -#endif - } - } - { -#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray) - PyErr_SetString(PyExc_RuntimeError, - "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers"); -#else - char val; - PyObject *v = __Pyx_PyNumber_IntOrLong(x); - #if PY_MAJOR_VERSION < 3 - if (likely(v) && !PyLong_Check(v)) { - PyObject *tmp = v; - v = PyNumber_Long(tmp); - Py_DECREF(tmp); - } - #endif - if (likely(v)) { - int one = 1; int is_little = (int)*(unsigned char *)&one; - unsigned char *bytes = (unsigned char *)&val; - int ret = _PyLong_AsByteArray((PyLongObject *)v, - bytes, sizeof(val), - is_little, !is_unsigned); - Py_DECREF(v); - if (likely(!ret)) - return val; - } -#endif - return (char) -1; - } - } else { - char val; - PyObject *tmp = __Pyx_PyNumber_IntOrLong(x); - if (!tmp) return (char) -1; - val = __Pyx_PyInt_As_char(tmp); - Py_DECREF(tmp); - return val; - } -raise_overflow: - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to char"); - return (char) -1; -raise_neg_overflow: - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to char"); - return (char) -1; -} - -/* CheckBinaryVersion */ - static int __Pyx_check_binary_version(void) { - char ctversion[5]; - int same=1, i, found_dot; - const char* rt_from_call = Py_GetVersion(); - PyOS_snprintf(ctversion, 5, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - found_dot = 0; - for (i = 0; i < 4; i++) { - if (!ctversion[i]) { - same = (rt_from_call[i] < '0' || rt_from_call[i] > '9'); - break; - } - if (rt_from_call[i] != ctversion[i]) { - same = 0; - break; - } - } - if (!same) { - char rtversion[5] = {'\0'}; - char message[200]; - for (i=0; i<4; ++i) { - if (rt_from_call[i] == '.') { - if (found_dot) break; - found_dot = 1; - } else if (rt_from_call[i] < '0' || rt_from_call[i] > '9') { - break; - } - rtversion[i] = rt_from_call[i]; - } - PyOS_snprintf(message, sizeof(message), - "compiletime version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); - return PyErr_WarnEx(NULL, message, 1); - } - return 0; -} - -/* InitStrings */ - static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION < 3 - if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); - } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); - } - #else - if (t->is_unicode | t->is_str) { - if (t->intern) { - *t->p = PyUnicode_InternFromString(t->s); - } else if (t->encoding) { - *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); - } else { - *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); - } - } else { - *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); - } - #endif - if (!*t->p) - return -1; - if (PyObject_Hash(*t->p) == -1) - return -1; - ++t; - } - return 0; -} - -static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) { - return __Pyx_PyUnicode_FromStringAndSize(c_str, (Py_ssize_t)strlen(c_str)); -} -static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) { - Py_ssize_t ignore; - return __Pyx_PyObject_AsStringAndSize(o, &ignore); -} -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT -#if !CYTHON_PEP393_ENABLED -static const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { - char* defenc_c; - PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL); - if (!defenc) return NULL; - defenc_c = PyBytes_AS_STRING(defenc); -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII - { - char* end = defenc_c + PyBytes_GET_SIZE(defenc); - char* c; - for (c = defenc_c; c < end; c++) { - if ((unsigned char) (*c) >= 128) { - PyUnicode_AsASCIIString(o); - return NULL; - } - } - } -#endif - *length = PyBytes_GET_SIZE(defenc); - return defenc_c; -} -#else -static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) { - if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL; -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII - if (likely(PyUnicode_IS_ASCII(o))) { - *length = PyUnicode_GET_LENGTH(o); - return PyUnicode_AsUTF8(o); - } else { - PyUnicode_AsASCIIString(o); - return NULL; - } -#else - return PyUnicode_AsUTF8AndSize(o, length); -#endif -} -#endif -#endif -static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) { -#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT - if ( -#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII - __Pyx_sys_getdefaultencoding_not_ascii && -#endif - PyUnicode_Check(o)) { - return __Pyx_PyUnicode_AsStringAndSize(o, length); - } else -#endif -#if (!CYTHON_COMPILING_IN_PYPY) || (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE)) - if (PyByteArray_Check(o)) { - *length = PyByteArray_GET_SIZE(o); - return PyByteArray_AS_STRING(o); - } else -#endif - { - char* result; - int r = PyBytes_AsStringAndSize(o, &result, length); - if (unlikely(r < 0)) { - return NULL; - } else { - return result; - } - } -} -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { - int is_true = x == Py_True; - if (is_true | (x == Py_False) | (x == Py_None)) return is_true; - else return PyObject_IsTrue(x); -} -static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject* x) { - int retval; - if (unlikely(!x)) return -1; - retval = __Pyx_PyObject_IsTrue(x); - Py_DECREF(x); - return retval; -} -static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const char* type_name) { -#if PY_MAJOR_VERSION >= 3 - if (PyLong_Check(result)) { - if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1, - "__int__ returned non-int (type %.200s). " - "The ability to return an instance of a strict subclass of int " - "is deprecated, and may be removed in a future version of Python.", - Py_TYPE(result)->tp_name)) { - Py_DECREF(result); - return NULL; - } - return result; - } -#endif - PyErr_Format(PyExc_TypeError, - "__%.4s__ returned non-%.4s (type %.200s)", - type_name, type_name, Py_TYPE(result)->tp_name); - Py_DECREF(result); - return NULL; -} -static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) { -#if CYTHON_USE_TYPE_SLOTS - PyNumberMethods *m; -#endif - const char *name = NULL; - PyObject *res = NULL; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_Check(x) || PyLong_Check(x))) -#else - if (likely(PyLong_Check(x))) -#endif - return __Pyx_NewRef(x); -#if CYTHON_USE_TYPE_SLOTS - m = Py_TYPE(x)->tp_as_number; - #if PY_MAJOR_VERSION < 3 - if (m && m->nb_int) { - name = "int"; - res = m->nb_int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = m->nb_long(x); - } - #else - if (likely(m && m->nb_int)) { - name = "int"; - res = m->nb_int(x); - } - #endif -#else - if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) { - res = PyNumber_Int(x); - } -#endif - if (likely(res)) { -#if PY_MAJOR_VERSION < 3 - if (unlikely(!PyInt_Check(res) && !PyLong_Check(res))) { -#else - if (unlikely(!PyLong_CheckExact(res))) { -#endif - return __Pyx_PyNumber_IntOrLongWrongResultType(res, name); - } - } - else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); - } - return res; -} -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { - Py_ssize_t ival; - PyObject *x; -#if PY_MAJOR_VERSION < 3 - if (likely(PyInt_CheckExact(b))) { - if (sizeof(Py_ssize_t) >= sizeof(long)) - return PyInt_AS_LONG(b); - else - return PyInt_AsSsize_t(b); - } -#endif - if (likely(PyLong_CheckExact(b))) { - #if CYTHON_USE_PYLONG_INTERNALS - const digit* digits = ((PyLongObject*)b)->ob_digit; - const Py_ssize_t size = Py_SIZE(b); - if (likely(__Pyx_sst_abs(size) <= 1)) { - ival = likely(size) ? digits[0] : 0; - if (size == -1) ival = -ival; - return ival; - } else { - switch (size) { - case 2: - if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { - return (Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - break; - case -2: - if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) { - return -(Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - break; - case 3: - if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) { - return (Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - break; - case -3: - if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) { - return -(Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - break; - case 4: - if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) { - return (Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - break; - case -4: - if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) { - return -(Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0])); - } - break; - } - } - #endif - return PyLong_AsSsize_t(b); - } - x = PyNumber_Index(b); - if (!x) return -1; - ival = PyInt_AsSsize_t(x); - Py_DECREF(x); - return ival; -} -static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject* o) { - if (sizeof(Py_hash_t) == sizeof(Py_ssize_t)) { - return (Py_hash_t) __Pyx_PyIndex_AsSsize_t(o); -#if PY_MAJOR_VERSION < 3 - } else if (likely(PyInt_CheckExact(o))) { - return PyInt_AS_LONG(o); -#endif - } else { - Py_ssize_t ival; - PyObject *x; - x = PyNumber_Index(o); - if (!x) return -1; - ival = PyInt_AsLong(x); - Py_DECREF(x); - return ival; - } -} -static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b) { - return b ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False); -} -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { - return PyInt_FromSize_t(ival); -} - - -#endif /* Py_PYTHON_H */ diff --git a/TTS/tts/utils/monotonic_align/core.cpython-39-darwin.so b/TTS/tts/utils/monotonic_align/core.cpython-39-darwin.so deleted file mode 100644 index b2c827fc8533634c71718c97ff1ab673c11bab35..0000000000000000000000000000000000000000 Binary files a/TTS/tts/utils/monotonic_align/core.cpython-39-darwin.so and /dev/null differ diff --git a/TTS/tts/utils/monotonic_align/core.pyx b/TTS/tts/utils/monotonic_align/core.pyx deleted file mode 100644 index 091fcc3a50a51f3d3fee47a70825260757e6d885..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/monotonic_align/core.pyx +++ /dev/null @@ -1,47 +0,0 @@ -import numpy as np - -cimport cython -cimport numpy as np - -from cython.parallel import prange - - -@cython.boundscheck(False) -@cython.wraparound(False) -cdef void maximum_path_each(int[:,::1] path, float[:,::1] value, int t_x, int t_y, float max_neg_val) nogil: - cdef int x - cdef int y - cdef float v_prev - cdef float v_cur - cdef float tmp - cdef int index = t_x - 1 - - for y in range(t_y): - for x in range(max(0, t_x + y - t_y), min(t_x, y + 1)): - if x == y: - v_cur = max_neg_val - else: - v_cur = value[x, y-1] - if x == 0: - if y == 0: - v_prev = 0. - else: - v_prev = max_neg_val - else: - v_prev = value[x-1, y-1] - value[x, y] = max(v_cur, v_prev) + value[x, y] - - for y in range(t_y - 1, -1, -1): - path[index, y] = 1 - if index != 0 and (index == y or value[index, y-1] < value[index-1, y-1]): - index = index - 1 - - -@cython.boundscheck(False) -@cython.wraparound(False) -cpdef void maximum_path_c(int[:,:,::1] paths, float[:,:,::1] values, int[::1] t_xs, int[::1] t_ys, float max_neg_val=-1e9) nogil: - cdef int b = values.shape[0] - - cdef int i - for i in prange(b, nogil=True): - maximum_path_each(paths[i], values[i], t_xs[i], t_ys[i], max_neg_val) diff --git a/TTS/tts/utils/monotonic_align/setup.py b/TTS/tts/utils/monotonic_align/setup.py deleted file mode 100644 index f22bc6a35a5a04c9e6d7b82040973722c9b770c9..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/monotonic_align/setup.py +++ /dev/null @@ -1,7 +0,0 @@ -# from distutils.core import setup -# from Cython.Build import cythonize -# import numpy - -# setup(name='monotonic_align', -# ext_modules=cythonize("core.pyx"), -# include_dirs=[numpy.get_include()]) diff --git a/TTS/tts/utils/speakers.py b/TTS/tts/utils/speakers.py deleted file mode 100644 index e49695268d6a4a3ac8e5f41df8954f07b16b5566..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/speakers.py +++ /dev/null @@ -1,222 +0,0 @@ -import json -import os -from typing import Any, Dict, List, Union - -import fsspec -import numpy as np -import torch -from coqpit import Coqpit - -from TTS.config import get_from_config_or_model_args_with_default -from TTS.tts.utils.managers import EmbeddingManager - - -class SpeakerManager(EmbeddingManager): - """Manage the speakers for multi-speaker 🐸TTS models. Load a datafile and parse the information - in a way that can be queried by speaker or clip. - - There are 3 different scenarios considered: - - 1. Models using speaker embedding layers. The datafile only maps speaker names to ids used by the embedding layer. - 2. Models using d-vectors. The datafile includes a dictionary in the following format. - - :: - - { - 'clip_name.wav':{ - 'name': 'speakerA', - 'embedding'[] - }, - ... - } - - - 3. Computing the d-vectors by the speaker encoder. It loads the speaker encoder model and - computes the d-vectors for a given clip or speaker. - - Args: - d_vectors_file_path (str, optional): Path to the metafile including x vectors. Defaults to "". - speaker_id_file_path (str, optional): Path to the metafile that maps speaker names to ids used by - TTS models. Defaults to "". - encoder_model_path (str, optional): Path to the speaker encoder model file. Defaults to "". - encoder_config_path (str, optional): Path to the spealer encoder config file. Defaults to "". - - Examples: - >>> # load audio processor and speaker encoder - >>> ap = AudioProcessor(**config.audio) - >>> manager = SpeakerManager(encoder_model_path=encoder_model_path, encoder_config_path=encoder_config_path) - >>> # load a sample audio and compute embedding - >>> waveform = ap.load_wav(sample_wav_path) - >>> mel = ap.melspectrogram(waveform) - >>> d_vector = manager.compute_embeddings(mel.T) - """ - - def __init__( - self, - data_items: List[List[Any]] = None, - d_vectors_file_path: str = "", - speaker_id_file_path: str = "", - encoder_model_path: str = "", - encoder_config_path: str = "", - use_cuda: bool = False, - ): - super().__init__( - embedding_file_path=d_vectors_file_path, - id_file_path=speaker_id_file_path, - encoder_model_path=encoder_model_path, - encoder_config_path=encoder_config_path, - use_cuda=use_cuda, - ) - - if data_items: - self.set_ids_from_data(data_items, parse_key="speaker_name") - - @property - def num_speakers(self): - return len(self.name_to_id) - - @property - def speaker_names(self): - return list(self.name_to_id.keys()) - - def get_speakers(self) -> List: - return self.name_to_id - - @staticmethod - def init_from_config(config: "Coqpit", samples: Union[List[List], List[Dict]] = None) -> "SpeakerManager": - """Initialize a speaker manager from config - - Args: - config (Coqpit): Config object. - samples (Union[List[List], List[Dict]], optional): List of data samples to parse out the speaker names. - Defaults to None. - - Returns: - SpeakerEncoder: Speaker encoder object. - """ - speaker_manager = None - if get_from_config_or_model_args_with_default(config, "use_speaker_embedding", False): - if samples: - speaker_manager = SpeakerManager(data_items=samples) - if get_from_config_or_model_args_with_default(config, "speaker_file", None): - speaker_manager = SpeakerManager( - speaker_id_file_path=get_from_config_or_model_args_with_default(config, "speaker_file", None) - ) - if get_from_config_or_model_args_with_default(config, "speakers_file", None): - speaker_manager = SpeakerManager( - speaker_id_file_path=get_from_config_or_model_args_with_default(config, "speakers_file", None) - ) - - if get_from_config_or_model_args_with_default(config, "use_d_vector_file", False): - speaker_manager = SpeakerManager() - if get_from_config_or_model_args_with_default(config, "d_vector_file", None): - speaker_manager = SpeakerManager( - d_vectors_file_path=get_from_config_or_model_args_with_default(config, "d_vector_file", None) - ) - return speaker_manager - - -def _set_file_path(path): - """Find the speakers.json under the given path or the above it. - Intended to band aid the different paths returned in restored and continued training.""" - path_restore = os.path.join(os.path.dirname(path), "speakers.json") - path_continue = os.path.join(path, "speakers.json") - fs = fsspec.get_mapper(path).fs - if fs.exists(path_restore): - return path_restore - if fs.exists(path_continue): - return path_continue - raise FileNotFoundError(f" [!] `speakers.json` not found in {path}") - - -def load_speaker_mapping(out_path): - """Loads speaker mapping if already present.""" - if os.path.splitext(out_path)[1] == ".json": - json_file = out_path - else: - json_file = _set_file_path(out_path) - with fsspec.open(json_file, "r") as f: - return json.load(f) - - -def save_speaker_mapping(out_path, speaker_mapping): - """Saves speaker mapping if not yet present.""" - if out_path is not None: - speakers_json_path = _set_file_path(out_path) - with fsspec.open(speakers_json_path, "w") as f: - json.dump(speaker_mapping, f, indent=4) - - -def get_speaker_manager(c: Coqpit, data: List = None, restore_path: str = None, out_path: str = None) -> SpeakerManager: - """Initiate a `SpeakerManager` instance by the provided config. - - Args: - c (Coqpit): Model configuration. - restore_path (str): Path to a previous training folder. - data (List): Data samples used in training to infer speakers from. It must be provided if speaker embedding - layers is used. Defaults to None. - out_path (str, optional): Save the generated speaker IDs to a output path. Defaults to None. - - Returns: - SpeakerManager: initialized and ready to use instance. - """ - speaker_manager = SpeakerManager() - if c.use_speaker_embedding: - if data is not None: - speaker_manager.set_ids_from_data(data, parse_key="speaker_name") - if restore_path: - speakers_file = _set_file_path(restore_path) - # restoring speaker manager from a previous run. - if c.use_d_vector_file: - # restore speaker manager with the embedding file - if not os.path.exists(speakers_file): - print("WARNING: speakers.json was not found in restore_path, trying to use CONFIG.d_vector_file") - if not os.path.exists(c.d_vector_file): - raise RuntimeError( - "You must copy the file speakers.json to restore_path, or set a valid file in CONFIG.d_vector_file" - ) - speaker_manager.load_embeddings_from_file(c.d_vector_file) - speaker_manager.load_embeddings_from_file(speakers_file) - elif not c.use_d_vector_file: # restor speaker manager with speaker ID file. - speaker_ids_from_data = speaker_manager.name_to_id - speaker_manager.load_ids_from_file(speakers_file) - assert all( - speaker in speaker_manager.name_to_id for speaker in speaker_ids_from_data - ), " [!] You cannot introduce new speakers to a pre-trained model." - elif c.use_d_vector_file and c.d_vector_file: - # new speaker manager with external speaker embeddings. - speaker_manager.load_embeddings_from_file(c.d_vector_file) - elif c.use_d_vector_file and not c.d_vector_file: - raise "use_d_vector_file is True, so you need pass a external speaker embedding file." - elif c.use_speaker_embedding and "speakers_file" in c and c.speakers_file: - # new speaker manager with speaker IDs file. - speaker_manager.load_ids_from_file(c.speakers_file) - - if speaker_manager.num_speakers > 0: - print( - " > Speaker manager is loaded with {} speakers: {}".format( - speaker_manager.num_speakers, ", ".join(speaker_manager.name_to_id) - ) - ) - - # save file if path is defined - if out_path: - out_file_path = os.path.join(out_path, "speakers.json") - print(f" > Saving `speakers.json` to {out_file_path}.") - if c.use_d_vector_file and c.d_vector_file: - speaker_manager.save_embeddings_to_file(out_file_path) - else: - speaker_manager.save_ids_to_file(out_file_path) - return speaker_manager - - -def get_speaker_balancer_weights(items: list): - speaker_names = np.array([item["speaker_name"] for item in items]) - unique_speaker_names = np.unique(speaker_names).tolist() - speaker_ids = [unique_speaker_names.index(l) for l in speaker_names] - speaker_count = np.array([len(np.where(speaker_names == l)[0]) for l in unique_speaker_names]) - weight_speaker = 1.0 / speaker_count - dataset_samples_weight = np.array([weight_speaker[l] for l in speaker_ids]) - # normalize - dataset_samples_weight = dataset_samples_weight / np.linalg.norm(dataset_samples_weight) - return torch.from_numpy(dataset_samples_weight).float() diff --git a/TTS/tts/utils/ssim.py b/TTS/tts/utils/ssim.py deleted file mode 100644 index 4bc3befc5bd3fb154cd48b4458184a4d8f3dca78..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/ssim.py +++ /dev/null @@ -1,383 +0,0 @@ -# Adopted from https://github.com/photosynthesis-team/piq - -from typing import List, Optional, Tuple, Union - -import torch -import torch.nn.functional as F -from torch.nn.modules.loss import _Loss - - -def _reduce(x: torch.Tensor, reduction: str = "mean") -> torch.Tensor: - r"""Reduce input in batch dimension if needed. - Args: - x: Tensor with shape (N, *). - reduction: Specifies the reduction type: - ``'none'`` | ``'mean'`` | ``'sum'``. Default: ``'mean'`` - """ - if reduction == "none": - return x - if reduction == "mean": - return x.mean(dim=0) - if reduction == "sum": - return x.sum(dim=0) - raise ValueError("Unknown reduction. Expected one of {'none', 'mean', 'sum'}") - - -def _validate_input( - tensors: List[torch.Tensor], - dim_range: Tuple[int, int] = (0, -1), - data_range: Tuple[float, float] = (0.0, -1.0), - # size_dim_range: Tuple[float, float] = (0., -1.), - size_range: Optional[Tuple[int, int]] = None, -) -> None: - r"""Check that input(-s) satisfies the requirements - Args: - tensors: Tensors to check - dim_range: Allowed number of dimensions. (min, max) - data_range: Allowed range of values in tensors. (min, max) - size_range: Dimensions to include in size comparison. (start_dim, end_dim + 1) - """ - - if not __debug__: - return - - x = tensors[0] - - for t in tensors: - assert torch.is_tensor(t), f"Expected torch.Tensor, got {type(t)}" - assert t.device == x.device, f"Expected tensors to be on {x.device}, got {t.device}" - - if size_range is None: - assert t.size() == x.size(), f"Expected tensors with same size, got {t.size()} and {x.size()}" - else: - assert ( - t.size()[size_range[0] : size_range[1]] == x.size()[size_range[0] : size_range[1]] - ), f"Expected tensors with same size at given dimensions, got {t.size()} and {x.size()}" - - if dim_range[0] == dim_range[1]: - assert t.dim() == dim_range[0], f"Expected number of dimensions to be {dim_range[0]}, got {t.dim()}" - elif dim_range[0] < dim_range[1]: - assert ( - dim_range[0] <= t.dim() <= dim_range[1] - ), f"Expected number of dimensions to be between {dim_range[0]} and {dim_range[1]}, got {t.dim()}" - - if data_range[0] < data_range[1]: - assert data_range[0] <= t.min(), f"Expected values to be greater or equal to {data_range[0]}, got {t.min()}" - assert t.max() <= data_range[1], f"Expected values to be lower or equal to {data_range[1]}, got {t.max()}" - - -def gaussian_filter(kernel_size: int, sigma: float) -> torch.Tensor: - r"""Returns 2D Gaussian kernel N(0,`sigma`^2) - Args: - size: Size of the kernel - sigma: Std of the distribution - Returns: - gaussian_kernel: Tensor with shape (1, kernel_size, kernel_size) - """ - coords = torch.arange(kernel_size, dtype=torch.float32) - coords -= (kernel_size - 1) / 2.0 - - g = coords**2 - g = (-(g.unsqueeze(0) + g.unsqueeze(1)) / (2 * sigma**2)).exp() - - g /= g.sum() - return g.unsqueeze(0) - - -def ssim( - x: torch.Tensor, - y: torch.Tensor, - kernel_size: int = 11, - kernel_sigma: float = 1.5, - data_range: Union[int, float] = 1.0, - reduction: str = "mean", - full: bool = False, - downsample: bool = True, - k1: float = 0.01, - k2: float = 0.03, -) -> List[torch.Tensor]: - r"""Interface of Structural Similarity (SSIM) index. - Inputs supposed to be in range ``[0, data_range]``. - To match performance with skimage and tensorflow set ``'downsample' = True``. - - Args: - x: An input tensor. Shape :math:`(N, C, H, W)` or :math:`(N, C, H, W, 2)`. - y: A target tensor. Shape :math:`(N, C, H, W)` or :math:`(N, C, H, W, 2)`. - kernel_size: The side-length of the sliding window used in comparison. Must be an odd value. - kernel_sigma: Sigma of normal distribution. - data_range: Maximum value range of images (usually 1.0 or 255). - reduction: Specifies the reduction type: - ``'none'`` | ``'mean'`` | ``'sum'``. Default:``'mean'`` - full: Return cs map or not. - downsample: Perform average pool before SSIM computation. Default: True - k1: Algorithm parameter, K1 (small constant). - k2: Algorithm parameter, K2 (small constant). - Try a larger K2 constant (e.g. 0.4) if you get a negative or NaN results. - - Returns: - Value of Structural Similarity (SSIM) index. In case of 5D input tensors, complex value is returned - as a tensor of size 2. - - References: - Wang, Z., Bovik, A. C., Sheikh, H. R., & Simoncelli, E. P. (2004). - Image quality assessment: From error visibility to structural similarity. - IEEE Transactions on Image Processing, 13, 600-612. - https://ece.uwaterloo.ca/~z70wang/publications/ssim.pdf, - DOI: `10.1109/TIP.2003.819861` - """ - assert kernel_size % 2 == 1, f"Kernel size must be odd, got [{kernel_size}]" - _validate_input([x, y], dim_range=(4, 5), data_range=(0, data_range)) - - x = x / float(data_range) - y = y / float(data_range) - - # Averagepool image if the size is large enough - f = max(1, round(min(x.size()[-2:]) / 256)) - if (f > 1) and downsample: - x = F.avg_pool2d(x, kernel_size=f) - y = F.avg_pool2d(y, kernel_size=f) - - kernel = gaussian_filter(kernel_size, kernel_sigma).repeat(x.size(1), 1, 1, 1).to(y) - _compute_ssim_per_channel = _ssim_per_channel_complex if x.dim() == 5 else _ssim_per_channel - ssim_map, cs_map = _compute_ssim_per_channel(x=x, y=y, kernel=kernel, k1=k1, k2=k2) - ssim_val = ssim_map.mean(1) - cs = cs_map.mean(1) - - ssim_val = _reduce(ssim_val, reduction) - cs = _reduce(cs, reduction) - - if full: - return [ssim_val, cs] - - return ssim_val - - -class SSIMLoss(_Loss): - r"""Creates a criterion that measures the structural similarity index error between - each element in the input :math:`x` and target :math:`y`. - - To match performance with skimage and tensorflow set ``'downsample' = True``. - - The unreduced (i.e. with :attr:`reduction` set to ``'none'``) loss can be described as: - - .. math:: - SSIM = \{ssim_1,\dots,ssim_{N \times C}\}\\ - ssim_{l}(x, y) = \frac{(2 \mu_x \mu_y + c_1) (2 \sigma_{xy} + c_2)} - {(\mu_x^2 +\mu_y^2 + c_1)(\sigma_x^2 +\sigma_y^2 + c_2)}, - - where :math:`N` is the batch size, `C` is the channel size. If :attr:`reduction` is not ``'none'`` - (default ``'mean'``), then: - - .. math:: - SSIMLoss(x, y) = - \begin{cases} - \operatorname{mean}(1 - SSIM), & \text{if reduction} = \text{'mean';}\\ - \operatorname{sum}(1 - SSIM), & \text{if reduction} = \text{'sum'.} - \end{cases} - - :math:`x` and :math:`y` are tensors of arbitrary shapes with a total - of :math:`n` elements each. - - The sum operation still operates over all the elements, and divides by :math:`n`. - The division by :math:`n` can be avoided if one sets ``reduction = 'sum'``. - In case of 5D input tensors, complex value is returned as a tensor of size 2. - - Args: - kernel_size: By default, the mean and covariance of a pixel is obtained - by convolution with given filter_size. - kernel_sigma: Standard deviation for Gaussian kernel. - k1: Coefficient related to c1 in the above equation. - k2: Coefficient related to c2 in the above equation. - downsample: Perform average pool before SSIM computation. Default: True - reduction: Specifies the reduction type: - ``'none'`` | ``'mean'`` | ``'sum'``. Default:``'mean'`` - data_range: Maximum value range of images (usually 1.0 or 255). - - Examples: - >>> loss = SSIMLoss() - >>> x = torch.rand(3, 3, 256, 256, requires_grad=True) - >>> y = torch.rand(3, 3, 256, 256) - >>> output = loss(x, y) - >>> output.backward() - - References: - Wang, Z., Bovik, A. C., Sheikh, H. R., & Simoncelli, E. P. (2004). - Image quality assessment: From error visibility to structural similarity. - IEEE Transactions on Image Processing, 13, 600-612. - https://ece.uwaterloo.ca/~z70wang/publications/ssim.pdf, - DOI:`10.1109/TIP.2003.819861` - """ - __constants__ = ["kernel_size", "k1", "k2", "sigma", "kernel", "reduction"] - - def __init__( - self, - kernel_size: int = 11, - kernel_sigma: float = 1.5, - k1: float = 0.01, - k2: float = 0.03, - downsample: bool = True, - reduction: str = "mean", - data_range: Union[int, float] = 1.0, - ) -> None: - super().__init__() - - # Generic loss parameters. - self.reduction = reduction - - # Loss-specific parameters. - self.kernel_size = kernel_size - - # This check might look redundant because kernel size is checked within the ssim function anyway. - # However, this check allows to fail fast when the loss is being initialised and training has not been started. - assert kernel_size % 2 == 1, f"Kernel size must be odd, got [{kernel_size}]" - self.kernel_sigma = kernel_sigma - self.k1 = k1 - self.k2 = k2 - self.downsample = downsample - self.data_range = data_range - - def forward(self, x: torch.Tensor, y: torch.Tensor) -> torch.Tensor: - r"""Computation of Structural Similarity (SSIM) index as a loss function. - - Args: - x: An input tensor. Shape :math:`(N, C, H, W)` or :math:`(N, C, H, W, 2)`. - y: A target tensor. Shape :math:`(N, C, H, W)` or :math:`(N, C, H, W, 2)`. - - Returns: - Value of SSIM loss to be minimized, i.e ``1 - ssim`` in [0, 1] range. In case of 5D input tensors, - complex value is returned as a tensor of size 2. - """ - - score = ssim( - x=x, - y=y, - kernel_size=self.kernel_size, - kernel_sigma=self.kernel_sigma, - downsample=self.downsample, - data_range=self.data_range, - reduction=self.reduction, - full=False, - k1=self.k1, - k2=self.k2, - ) - return torch.ones_like(score) - score - - -def _ssim_per_channel( - x: torch.Tensor, - y: torch.Tensor, - kernel: torch.Tensor, - k1: float = 0.01, - k2: float = 0.03, -) -> Union[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]]: - r"""Calculate Structural Similarity (SSIM) index for X and Y per channel. - - Args: - x: An input tensor. Shape :math:`(N, C, H, W)`. - y: A target tensor. Shape :math:`(N, C, H, W)`. - kernel: 2D Gaussian kernel. - k1: Algorithm parameter, K1 (small constant, see [1]). - k2: Algorithm parameter, K2 (small constant, see [1]). - Try a larger K2 constant (e.g. 0.4) if you get a negative or NaN results. - - Returns: - Full Value of Structural Similarity (SSIM) index. - """ - if x.size(-1) < kernel.size(-1) or x.size(-2) < kernel.size(-2): - raise ValueError( - f"Kernel size can't be greater than actual input size. Input size: {x.size()}. " - f"Kernel size: {kernel.size()}" - ) - - c1 = k1**2 - c2 = k2**2 - n_channels = x.size(1) - mu_x = F.conv2d(x, weight=kernel, stride=1, padding=0, groups=n_channels) - mu_y = F.conv2d(y, weight=kernel, stride=1, padding=0, groups=n_channels) - - mu_xx = mu_x**2 - mu_yy = mu_y**2 - mu_xy = mu_x * mu_y - - sigma_xx = F.conv2d(x**2, weight=kernel, stride=1, padding=0, groups=n_channels) - mu_xx - sigma_yy = F.conv2d(y**2, weight=kernel, stride=1, padding=0, groups=n_channels) - mu_yy - sigma_xy = F.conv2d(x * y, weight=kernel, stride=1, padding=0, groups=n_channels) - mu_xy - - # Contrast sensitivity (CS) with alpha = beta = gamma = 1. - cs = (2.0 * sigma_xy + c2) / (sigma_xx + sigma_yy + c2) - - # Structural similarity (SSIM) - ss = (2.0 * mu_xy + c1) / (mu_xx + mu_yy + c1) * cs - - ssim_val = ss.mean(dim=(-1, -2)) - cs = cs.mean(dim=(-1, -2)) - return ssim_val, cs - - -def _ssim_per_channel_complex( - x: torch.Tensor, - y: torch.Tensor, - kernel: torch.Tensor, - k1: float = 0.01, - k2: float = 0.03, -) -> Union[torch.Tensor, Tuple[torch.Tensor, torch.Tensor]]: - r"""Calculate Structural Similarity (SSIM) index for Complex X and Y per channel. - - Args: - x: An input tensor. Shape :math:`(N, C, H, W, 2)`. - y: A target tensor. Shape :math:`(N, C, H, W, 2)`. - kernel: 2-D gauss kernel. - k1: Algorithm parameter, K1 (small constant, see [1]). - k2: Algorithm parameter, K2 (small constant, see [1]). - Try a larger K2 constant (e.g. 0.4) if you get a negative or NaN results. - - Returns: - Full Value of Complex Structural Similarity (SSIM) index. - """ - n_channels = x.size(1) - if x.size(-2) < kernel.size(-1) or x.size(-3) < kernel.size(-2): - raise ValueError( - f"Kernel size can't be greater than actual input size. Input size: {x.size()}. " - f"Kernel size: {kernel.size()}" - ) - - c1 = k1**2 - c2 = k2**2 - - x_real = x[..., 0] - x_imag = x[..., 1] - y_real = y[..., 0] - y_imag = y[..., 1] - - mu1_real = F.conv2d(x_real, weight=kernel, stride=1, padding=0, groups=n_channels) - mu1_imag = F.conv2d(x_imag, weight=kernel, stride=1, padding=0, groups=n_channels) - mu2_real = F.conv2d(y_real, weight=kernel, stride=1, padding=0, groups=n_channels) - mu2_imag = F.conv2d(y_imag, weight=kernel, stride=1, padding=0, groups=n_channels) - - mu1_sq = mu1_real.pow(2) + mu1_imag.pow(2) - mu2_sq = mu2_real.pow(2) + mu2_imag.pow(2) - mu1_mu2_real = mu1_real * mu2_real - mu1_imag * mu2_imag - mu1_mu2_imag = mu1_real * mu2_imag + mu1_imag * mu2_real - - compensation = 1.0 - - x_sq = x_real.pow(2) + x_imag.pow(2) - y_sq = y_real.pow(2) + y_imag.pow(2) - x_y_real = x_real * y_real - x_imag * y_imag - x_y_imag = x_real * y_imag + x_imag * y_real - - sigma1_sq = F.conv2d(x_sq, weight=kernel, stride=1, padding=0, groups=n_channels) - mu1_sq - sigma2_sq = F.conv2d(y_sq, weight=kernel, stride=1, padding=0, groups=n_channels) - mu2_sq - sigma12_real = F.conv2d(x_y_real, weight=kernel, stride=1, padding=0, groups=n_channels) - mu1_mu2_real - sigma12_imag = F.conv2d(x_y_imag, weight=kernel, stride=1, padding=0, groups=n_channels) - mu1_mu2_imag - sigma12 = torch.stack((sigma12_imag, sigma12_real), dim=-1) - mu1_mu2 = torch.stack((mu1_mu2_real, mu1_mu2_imag), dim=-1) - # Set alpha = beta = gamma = 1. - cs_map = (sigma12 * 2 + c2 * compensation) / (sigma1_sq.unsqueeze(-1) + sigma2_sq.unsqueeze(-1) + c2 * compensation) - ssim_map = (mu1_mu2 * 2 + c1 * compensation) / (mu1_sq.unsqueeze(-1) + mu2_sq.unsqueeze(-1) + c1 * compensation) - ssim_map = ssim_map * cs_map - - ssim_val = ssim_map.mean(dim=(-2, -3)) - cs = cs_map.mean(dim=(-2, -3)) - - return ssim_val, cs diff --git a/TTS/tts/utils/synthesis.py b/TTS/tts/utils/synthesis.py deleted file mode 100644 index d3c29f93467ae2a06753e5eae1699b4b87e049ba..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/synthesis.py +++ /dev/null @@ -1,342 +0,0 @@ -from typing import Dict - -import numpy as np -import torch -from torch import nn - - -def numpy_to_torch(np_array, dtype, cuda=False, device="cpu"): - if cuda: - device = "cuda" - if np_array is None: - return None - tensor = torch.as_tensor(np_array, dtype=dtype, device=device) - return tensor - - -def compute_style_mel(style_wav, ap, cuda=False, device="cpu"): - if cuda: - device = "cuda" - style_mel = torch.FloatTensor( - ap.melspectrogram(ap.load_wav(style_wav, sr=ap.sample_rate)), device=device, - ).unsqueeze(0) - return style_mel - - -def run_model_torch( - model: nn.Module, - inputs: torch.Tensor, - speaker_id: int = None, - style_mel: torch.Tensor = None, - style_text: str = None, - d_vector: torch.Tensor = None, - language_id: torch.Tensor = None, -) -> Dict: - """Run a torch model for inference. It does not support batch inference. - - Args: - model (nn.Module): The model to run inference. - inputs (torch.Tensor): Input tensor with character ids. - speaker_id (int, optional): Input speaker ids for multi-speaker models. Defaults to None. - style_mel (torch.Tensor, optional): Spectrograms used for voice styling . Defaults to None. - d_vector (torch.Tensor, optional): d-vector for multi-speaker models . Defaults to None. - - Returns: - Dict: model outputs. - """ - input_lengths = torch.tensor(inputs.shape[1:2]).to(inputs.device) - if hasattr(model, "module"): - _func = model.module.inference - else: - _func = model.inference - outputs = _func( - inputs, - aux_input={ - "x_lengths": input_lengths, - "speaker_ids": speaker_id, - "d_vectors": d_vector, - "style_mel": style_mel, - "style_text": style_text, - "language_ids": language_id, - }, - ) - return outputs - - -def trim_silence(wav, ap): - return wav[: ap.find_endpoint(wav)] - - -def inv_spectrogram(postnet_output, ap, CONFIG): - if CONFIG.model.lower() in ["tacotron"]: - wav = ap.inv_spectrogram(postnet_output.T) - else: - wav = ap.inv_melspectrogram(postnet_output.T) - return wav - - -def id_to_torch(aux_id, cuda=False, device="cpu"): - if cuda: - device = "cuda" - if aux_id is not None: - aux_id = np.asarray(aux_id) - aux_id = torch.from_numpy(aux_id).to(device) - return aux_id - - -def embedding_to_torch(d_vector, cuda=False, device="cpu"): - if cuda: - device = "cuda" - if d_vector is not None: - d_vector = np.asarray(d_vector) - d_vector = torch.from_numpy(d_vector).type(torch.FloatTensor) - d_vector = d_vector.squeeze().unsqueeze(0).to(device) - return d_vector - - -# TODO: perform GL with pytorch for batching -def apply_griffin_lim(inputs, input_lens, CONFIG, ap): - """Apply griffin-lim to each sample iterating throught the first dimension. - Args: - inputs (Tensor or np.Array): Features to be converted by GL. First dimension is the batch size. - input_lens (Tensor or np.Array): 1D array of sample lengths. - CONFIG (Dict): TTS config. - ap (AudioProcessor): TTS audio processor. - """ - wavs = [] - for idx, spec in enumerate(inputs): - wav_len = (input_lens[idx] * ap.hop_length) - ap.hop_length # inverse librosa padding - wav = inv_spectrogram(spec, ap, CONFIG) - # assert len(wav) == wav_len, f" [!] wav lenght: {len(wav)} vs expected: {wav_len}" - wavs.append(wav[:wav_len]) - return wavs - - -def synthesis( - model, - text, - CONFIG, - use_cuda, - speaker_id=None, - style_wav=None, - style_text=None, - use_griffin_lim=False, - do_trim_silence=False, - d_vector=None, - language_id=None, -): - """Synthesize voice for the given text using Griffin-Lim vocoder or just compute output features to be passed to - the vocoder model. - - Args: - model (TTS.tts.models): - The TTS model to synthesize audio with. - - text (str): - The input text to convert to speech. - - CONFIG (Coqpit): - Model configuration. - - use_cuda (bool): - Enable/disable CUDA. - - speaker_id (int): - Speaker ID passed to the speaker embedding layer in multi-speaker model. Defaults to None. - - style_wav (str | Dict[str, float]): - Path or tensor to/of a waveform used for computing the style embedding based on GST or Capacitron. - Defaults to None, meaning that Capacitron models will sample from the prior distribution to - generate random but realistic prosody. - - style_text (str): - Transcription of style_wav for Capacitron models. Defaults to None. - - enable_eos_bos_chars (bool): - enable special chars for end of sentence and start of sentence. Defaults to False. - - do_trim_silence (bool): - trim silence after synthesis. Defaults to False. - - d_vector (torch.Tensor): - d-vector for multi-speaker models in share :math:`[1, D]`. Defaults to None. - - language_id (int): - Language ID passed to the language embedding layer in multi-langual model. Defaults to None. - """ - # device - device = next(model.parameters()).device - if use_cuda: - device = "cuda" - - # GST or Capacitron processing - # TODO: need to handle the case of setting both gst and capacitron to true somewhere - style_mel = None - if CONFIG.has("gst") and CONFIG.gst and style_wav is not None: - if isinstance(style_wav, dict): - style_mel = style_wav - else: - style_mel = compute_style_mel(style_wav, model.ap, device=device) - - if CONFIG.has("capacitron_vae") and CONFIG.use_capacitron_vae and style_wav is not None: - style_mel = compute_style_mel(style_wav, model.ap, device=device) - style_mel = style_mel.transpose(1, 2) # [1, time, depth] - - language_name = None - if language_id is not None: - language = [k for k, v in model.language_manager.name_to_id.items() if v == language_id] - assert len(language) == 1, "language_id must be a valid language" - language_name = language[0] - - # convert text to sequence of token IDs - text_inputs = np.asarray( - model.tokenizer.text_to_ids(text, language=language_name), - dtype=np.int32, - ) - # pass tensors to backend - if speaker_id is not None: - speaker_id = id_to_torch(speaker_id, device=device) - - if d_vector is not None: - d_vector = embedding_to_torch(d_vector, device=device) - - if language_id is not None: - language_id = id_to_torch(language_id, device=device) - - if not isinstance(style_mel, dict): - # GST or Capacitron style mel - style_mel = numpy_to_torch(style_mel, torch.float, device=device) - if style_text is not None: - style_text = np.asarray( - model.tokenizer.text_to_ids(style_text, language=language_id), - dtype=np.int32, - ) - style_text = numpy_to_torch(style_text, torch.long, device=device) - style_text = style_text.unsqueeze(0) - - text_inputs = numpy_to_torch(text_inputs, torch.long, device=device) - text_inputs = text_inputs.unsqueeze(0) - # synthesize voice - outputs = run_model_torch( - model, - text_inputs, - speaker_id, - style_mel, - style_text, - d_vector=d_vector, - language_id=language_id, - ) - model_outputs = outputs["model_outputs"] - model_outputs = model_outputs[0].data.cpu().numpy() - alignments = outputs["alignments"] - - # convert outputs to numpy - # plot results - wav = None - model_outputs = model_outputs.squeeze() - if model_outputs.ndim == 2: # [T, C_spec] - if use_griffin_lim: - wav = inv_spectrogram(model_outputs, model.ap, CONFIG) - # trim silence - if do_trim_silence: - wav = trim_silence(wav, model.ap) - else: # [T,] - wav = model_outputs - return_dict = { - "wav": wav, - "alignments": alignments, - "text_inputs": text_inputs, - "outputs": outputs, - } - return return_dict - - -def transfer_voice( - model, - CONFIG, - use_cuda, - reference_wav, - speaker_id=None, - d_vector=None, - reference_speaker_id=None, - reference_d_vector=None, - do_trim_silence=False, - use_griffin_lim=False, -): - """Synthesize voice for the given text using Griffin-Lim vocoder or just compute output features to be passed to - the vocoder model. - - Args: - model (TTS.tts.models): - The TTS model to synthesize audio with. - - CONFIG (Coqpit): - Model configuration. - - use_cuda (bool): - Enable/disable CUDA. - - reference_wav (str): - Path of reference_wav to be used to voice conversion. - - speaker_id (int): - Speaker ID passed to the speaker embedding layer in multi-speaker model. Defaults to None. - - d_vector (torch.Tensor): - d-vector for multi-speaker models in share :math:`[1, D]`. Defaults to None. - - reference_speaker_id (int): - Reference Speaker ID passed to the speaker embedding layer in multi-speaker model. Defaults to None. - - reference_d_vector (torch.Tensor): - Reference d-vector for multi-speaker models in share :math:`[1, D]`. Defaults to None. - - enable_eos_bos_chars (bool): - enable special chars for end of sentence and start of sentence. Defaults to False. - - do_trim_silence (bool): - trim silence after synthesis. Defaults to False. - """ - # device - device = next(model.parameters()).device - if use_cuda: - device = "cuda" - - # pass tensors to backend - if speaker_id is not None: - speaker_id = id_to_torch(speaker_id, device=device) - - if d_vector is not None: - d_vector = embedding_to_torch(d_vector, device=device) - - if reference_d_vector is not None: - reference_d_vector = embedding_to_torch(reference_d_vector, device=device) - - # load reference_wav audio - reference_wav = embedding_to_torch( - model.ap.load_wav( - reference_wav, sr=model.args.encoder_sample_rate if model.args.encoder_sample_rate else model.ap.sample_rate - ), - device=device, - ) - - if hasattr(model, "module"): - _func = model.module.inference_voice_conversion - else: - _func = model.inference_voice_conversion - model_outputs = _func(reference_wav, speaker_id, d_vector, reference_speaker_id, reference_d_vector) - - # convert outputs to numpy - # plot results - wav = None - model_outputs = model_outputs.squeeze() - if model_outputs.ndim == 2: # [T, C_spec] - if use_griffin_lim: - wav = inv_spectrogram(model_outputs, model.ap, CONFIG) - # trim silence - if do_trim_silence: - wav = trim_silence(wav, model.ap) - else: # [T,] - wav = model_outputs - - return wav diff --git a/TTS/tts/utils/text/__init__.py b/TTS/tts/utils/text/__init__.py deleted file mode 100644 index 593372dc7cb2fba240eb5f08e8e2cfae5a4b4e45..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from TTS.tts.utils.text.tokenizer import TTSTokenizer diff --git a/TTS/tts/utils/text/bangla/__init__.py b/TTS/tts/utils/text/bangla/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/utils/text/bangla/phonemizer.py b/TTS/tts/utils/text/bangla/phonemizer.py deleted file mode 100644 index e15830fe8af6cd08ea03fb4f8e40a9ddbe70f1f6..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/bangla/phonemizer.py +++ /dev/null @@ -1,121 +0,0 @@ -import re - -import bangla -from bnnumerizer import numerize -from bnunicodenormalizer import Normalizer - -# initialize -bnorm = Normalizer() - - -attribution_dict = { - "সাঃ": "সাল্লাল্লাহু আলাইহি ওয়া সাল্লাম", - "আঃ": "আলাইহিস সালাম", - "রাঃ": "রাদিআল্লাহু আনহু", - "রহঃ": "রহমাতুল্লাহি আলাইহি", - "রহিঃ": "রহিমাহুল্লাহ", - "হাফিঃ": "হাফিযাহুল্লাহ", - "বায়ান": "বাইআন", - "দাঃবাঃ": "দামাত বারাকাতুহুম,দামাত বারাকাতুল্লাহ", - # "আয়াত" : "আইআত",#আইআত - # "ওয়া" : "ওআ", - # "ওয়াসাল্লাম" : "ওআসাল্লাম", - # "কেন" : "কেনো", - # "কোন" : "কোনো", - # "বল" : "বলো", - # "চল" : "চলো", - # "কর" : "করো", - # "রাখ" : "রাখো", - "’": "", - "‘": "", - # "য়" : "অ", - # "সম্প্রদায়" : "সম্প্রদাই", - # "রয়েছে" : "রইছে", - # "রয়েছ" : "রইছ", - "/": " বাই ", -} - - -def tag_text(text: str): - # remove multiple spaces - text = re.sub(" +", " ", text) - # create start and end - text = "start" + text + "end" - # tag text - parts = re.split("[\u0600-\u06FF]+", text) - # remove non chars - parts = [p for p in parts if p.strip()] - # unique parts - parts = set(parts) - # tag the text - for m in parts: - if len(m.strip()) > 1: - text = text.replace(m, f"{m}") - # clean-tags - text = text.replace("start", "") - text = text.replace("end", "") - return text - - -def normalize(sen): - global bnorm # pylint: disable=global-statement - _words = [bnorm(word)["normalized"] for word in sen.split()] - return " ".join([word for word in _words if word is not None]) - - -def expand_full_attribution(text): - for word, attr in attribution_dict.items(): - if word in text: - text = text.replace(word, normalize(attr)) - return text - - -def collapse_whitespace(text): - # Regular expression matching whitespace: - _whitespace_re = re.compile(r"\s+") - return re.sub(_whitespace_re, " ", text) - - -def bangla_text_to_phonemes(text: str) -> str: - # english numbers to bangla conversion - res = re.search("[0-9]", text) - if res is not None: - text = bangla.convert_english_digit_to_bangla_digit(text) - - # replace ':' in between two bangla numbers with ' এর ' - pattern = r"[০, ১, ২, ৩, ৪, ৫, ৬, ৭, ৮, ৯]:[০, ১, ২, ৩, ৪, ৫, ৬, ৭, ৮, ৯]" - matches = re.findall(pattern, text) - for m in matches: - r = m.replace(":", " এর ") - text = text.replace(m, r) - - # numerize text - text = numerize(text) - - # tag sections - text = tag_text(text) - - # text blocks - # blocks = text.split("") - # blocks = [b for b in blocks if b.strip()] - - # create tuple of (lang,text) - if "" in text: - text = text.replace("", "").replace("", "") - # Split based on sentence ending Characters - bn_text = text.strip() - - sentenceEnders = re.compile("[।!?]") - sentences = sentenceEnders.split(str(bn_text)) - - data = "" - for sent in sentences: - res = re.sub("\n", "", sent) - res = normalize(res) - # expand attributes - res = expand_full_attribution(res) - - res = collapse_whitespace(res) - res += "।" - data += res - return data diff --git a/TTS/tts/utils/text/characters.py b/TTS/tts/utils/text/characters.py deleted file mode 100644 index 8fa45ed84bef4aa7953bd365b025d38f82b717d2..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/characters.py +++ /dev/null @@ -1,501 +0,0 @@ -from dataclasses import replace -from typing import Dict - -from TTS.tts.configs.shared_configs import CharactersConfig - - -def parse_symbols(): - return { - "pad": _pad, - "eos": _eos, - "bos": _bos, - "characters": _characters, - "punctuations": _punctuations, - "phonemes": _phonemes, - } - - -# DEFAULT SET OF GRAPHEMES -_pad = "" -_eos = "" -_bos = "" -_blank = "" # TODO: check if we need this alongside with PAD -_characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" -_punctuations = "!'(),-.:;? " - - -# DEFAULT SET OF IPA PHONEMES -# Phonemes definition (All IPA characters) -_vowels = "iyɨʉɯuɪʏʊeøɘəɵɤoɛœɜɞʌɔæɐaɶɑɒᵻ" -_non_pulmonic_consonants = "ʘɓǀɗǃʄǂɠǁʛ" -_pulmonic_consonants = "pbtdʈɖcɟkɡqɢʔɴŋɲɳnɱmʙrʀⱱɾɽɸβfvθðszʃʒʂʐçʝxɣχʁħʕhɦɬɮʋɹɻjɰlɭʎʟ" -_suprasegmentals = "ˈˌːˑ" -_other_symbols = "ʍwɥʜʢʡɕʑɺɧʲ" -_diacrilics = "ɚ˞ɫ" -_phonemes = _vowels + _non_pulmonic_consonants + _pulmonic_consonants + _suprasegmentals + _other_symbols + _diacrilics - - -class BaseVocabulary: - """Base Vocabulary class. - - This class only needs a vocabulary dictionary without specifying the characters. - - Args: - vocab (Dict): A dictionary of characters and their corresponding indices. - """ - - def __init__(self, vocab: Dict, pad: str = None, blank: str = None, bos: str = None, eos: str = None): - self.vocab = vocab - self.pad = pad - self.blank = blank - self.bos = bos - self.eos = eos - - @property - def pad_id(self) -> int: - """Return the index of the padding character. If the padding character is not specified, return the length - of the vocabulary.""" - return self.char_to_id(self.pad) if self.pad else len(self.vocab) - - @property - def blank_id(self) -> int: - """Return the index of the blank character. If the blank character is not specified, return the length of - the vocabulary.""" - return self.char_to_id(self.blank) if self.blank else len(self.vocab) - - @property - def bos_id(self) -> int: - """Return the index of the bos character. If the bos character is not specified, return the length of the - vocabulary.""" - return self.char_to_id(self.bos) if self.bos else len(self.vocab) - - @property - def eos_id(self) -> int: - """Return the index of the eos character. If the eos character is not specified, return the length of the - vocabulary.""" - return self.char_to_id(self.eos) if self.eos else len(self.vocab) - - @property - def vocab(self): - """Return the vocabulary dictionary.""" - return self._vocab - - @vocab.setter - def vocab(self, vocab): - """Set the vocabulary dictionary and character mapping dictionaries.""" - self._vocab, self._char_to_id, self._id_to_char = None, None, None - if vocab is not None: - self._vocab = vocab - self._char_to_id = {char: idx for idx, char in enumerate(self._vocab)} - self._id_to_char = { - idx: char for idx, char in enumerate(self._vocab) # pylint: disable=unnecessary-comprehension - } - - @staticmethod - def init_from_config(config, **kwargs): - """Initialize from the given config.""" - if config.characters is not None and "vocab_dict" in config.characters and config.characters.vocab_dict: - return ( - BaseVocabulary( - config.characters.vocab_dict, - config.characters.pad, - config.characters.blank, - config.characters.bos, - config.characters.eos, - ), - config, - ) - return BaseVocabulary(**kwargs), config - - def to_config(self) -> "CharactersConfig": - return CharactersConfig( - vocab_dict=self._vocab, - pad=self.pad, - eos=self.eos, - bos=self.bos, - blank=self.blank, - is_unique=False, - is_sorted=False, - ) - - @property - def num_chars(self): - """Return number of tokens in the vocabulary.""" - return len(self._vocab) - - def char_to_id(self, char: str) -> int: - """Map a character to an token ID.""" - try: - return self._char_to_id[char] - except KeyError as e: - raise KeyError(f" [!] {repr(char)} is not in the vocabulary.") from e - - def id_to_char(self, idx: int) -> str: - """Map an token ID to a character.""" - return self._id_to_char[idx] - - -class BaseCharacters: - """🐸BaseCharacters class - - Every new character class should inherit from this. - - Characters are oredered as follows ```[PAD, EOS, BOS, BLANK, CHARACTERS, PUNCTUATIONS]```. - - If you need a custom order, you need to define inherit from this class and override the ```_create_vocab``` method. - - Args: - characters (str): - Main set of characters to be used in the vocabulary. - - punctuations (str): - Characters to be treated as punctuation. - - pad (str): - Special padding character that would be ignored by the model. - - eos (str): - End of the sentence character. - - bos (str): - Beginning of the sentence character. - - blank (str): - Optional character used between characters by some models for better prosody. - - is_unique (bool): - Remove duplicates from the provided characters. Defaults to True. - el - is_sorted (bool): - Sort the characters in alphabetical order. Only applies to `self.characters`. Defaults to True. - """ - - def __init__( - self, - characters: str = None, - punctuations: str = None, - pad: str = None, - eos: str = None, - bos: str = None, - blank: str = None, - is_unique: bool = False, - is_sorted: bool = True, - ) -> None: - self._characters = characters - self._punctuations = punctuations - self._pad = pad - self._eos = eos - self._bos = bos - self._blank = blank - self.is_unique = is_unique - self.is_sorted = is_sorted - self._create_vocab() - - @property - def pad_id(self) -> int: - return self.char_to_id(self.pad) if self.pad else len(self.vocab) - - @property - def blank_id(self) -> int: - return self.char_to_id(self.blank) if self.blank else len(self.vocab) - - @property - def eos_id(self) -> int: - return self.char_to_id(self.eos) if self.eos else len(self.vocab) - - @property - def bos_id(self) -> int: - return self.char_to_id(self.bos) if self.bos else len(self.vocab) - - @property - def characters(self): - return self._characters - - @characters.setter - def characters(self, characters): - self._characters = characters - self._create_vocab() - - @property - def punctuations(self): - return self._punctuations - - @punctuations.setter - def punctuations(self, punctuations): - self._punctuations = punctuations - self._create_vocab() - - @property - def pad(self): - return self._pad - - @pad.setter - def pad(self, pad): - self._pad = pad - self._create_vocab() - - @property - def eos(self): - return self._eos - - @eos.setter - def eos(self, eos): - self._eos = eos - self._create_vocab() - - @property - def bos(self): - return self._bos - - @bos.setter - def bos(self, bos): - self._bos = bos - self._create_vocab() - - @property - def blank(self): - return self._blank - - @blank.setter - def blank(self, blank): - self._blank = blank - self._create_vocab() - - @property - def vocab(self): - return self._vocab - - @vocab.setter - def vocab(self, vocab): - self._vocab = vocab - self._char_to_id = {char: idx for idx, char in enumerate(self.vocab)} - self._id_to_char = { - idx: char for idx, char in enumerate(self.vocab) # pylint: disable=unnecessary-comprehension - } - - @property - def num_chars(self): - return len(self._vocab) - - def _create_vocab(self): - _vocab = self._characters - if self.is_unique: - _vocab = list(set(_vocab)) - if self.is_sorted: - _vocab = sorted(_vocab) - _vocab = list(_vocab) - _vocab = [self._blank] + _vocab if self._blank is not None and len(self._blank) > 0 else _vocab - _vocab = [self._bos] + _vocab if self._bos is not None and len(self._bos) > 0 else _vocab - _vocab = [self._eos] + _vocab if self._eos is not None and len(self._eos) > 0 else _vocab - _vocab = [self._pad] + _vocab if self._pad is not None and len(self._pad) > 0 else _vocab - self.vocab = _vocab + list(self._punctuations) - if self.is_unique: - duplicates = {x for x in self.vocab if self.vocab.count(x) > 1} - assert ( - len(self.vocab) == len(self._char_to_id) == len(self._id_to_char) - ), f" [!] There are duplicate characters in the character set. {duplicates}" - - def char_to_id(self, char: str) -> int: - try: - return self._char_to_id[char] - except KeyError as e: - raise KeyError(f" [!] {repr(char)} is not in the vocabulary.") from e - - def id_to_char(self, idx: int) -> str: - return self._id_to_char[idx] - - def print_log(self, level: int = 0): - """ - Prints the vocabulary in a nice format. - """ - indent = "\t" * level - print(f"{indent}| > Characters: {self._characters}") - print(f"{indent}| > Punctuations: {self._punctuations}") - print(f"{indent}| > Pad: {self._pad}") - print(f"{indent}| > EOS: {self._eos}") - print(f"{indent}| > BOS: {self._bos}") - print(f"{indent}| > Blank: {self._blank}") - print(f"{indent}| > Vocab: {self.vocab}") - print(f"{indent}| > Num chars: {self.num_chars}") - - @staticmethod - def init_from_config(config: "Coqpit"): # pylint: disable=unused-argument - """Init your character class from a config. - - Implement this method for your subclass. - """ - # use character set from config - if config.characters is not None: - return BaseCharacters(**config.characters), config - # return default character set - characters = BaseCharacters() - new_config = replace(config, characters=characters.to_config()) - return characters, new_config - - def to_config(self) -> "CharactersConfig": - return CharactersConfig( - characters=self._characters, - punctuations=self._punctuations, - pad=self._pad, - eos=self._eos, - bos=self._bos, - blank=self._blank, - is_unique=self.is_unique, - is_sorted=self.is_sorted, - ) - - -class IPAPhonemes(BaseCharacters): - """🐸IPAPhonemes class to manage `TTS.tts` model vocabulary - - Intended to be used with models using IPAPhonemes as input. - It uses system defaults for the undefined class arguments. - - Args: - characters (str): - Main set of case-sensitive characters to be used in the vocabulary. Defaults to `_phonemes`. - - punctuations (str): - Characters to be treated as punctuation. Defaults to `_punctuations`. - - pad (str): - Special padding character that would be ignored by the model. Defaults to `_pad`. - - eos (str): - End of the sentence character. Defaults to `_eos`. - - bos (str): - Beginning of the sentence character. Defaults to `_bos`. - - blank (str): - Optional character used between characters by some models for better prosody. Defaults to `_blank`. - - is_unique (bool): - Remove duplicates from the provided characters. Defaults to True. - - is_sorted (bool): - Sort the characters in alphabetical order. Defaults to True. - """ - - def __init__( - self, - characters: str = _phonemes, - punctuations: str = _punctuations, - pad: str = _pad, - eos: str = _eos, - bos: str = _bos, - blank: str = _blank, - is_unique: bool = False, - is_sorted: bool = True, - ) -> None: - super().__init__(characters, punctuations, pad, eos, bos, blank, is_unique, is_sorted) - - @staticmethod - def init_from_config(config: "Coqpit"): - """Init a IPAPhonemes object from a model config - - If characters are not defined in the config, it will be set to the default characters and the config - will be updated. - """ - # band-aid for compatibility with old models - if "characters" in config and config.characters is not None: - if "phonemes" in config.characters and config.characters.phonemes is not None: - config.characters["characters"] = config.characters["phonemes"] - return ( - IPAPhonemes( - characters=config.characters["characters"], - punctuations=config.characters["punctuations"], - pad=config.characters["pad"], - eos=config.characters["eos"], - bos=config.characters["bos"], - blank=config.characters["blank"], - is_unique=config.characters["is_unique"], - is_sorted=config.characters["is_sorted"], - ), - config, - ) - # use character set from config - if config.characters is not None: - return IPAPhonemes(**config.characters), config - # return default character set - characters = IPAPhonemes() - new_config = replace(config, characters=characters.to_config()) - return characters, new_config - - -class Graphemes(BaseCharacters): - """🐸Graphemes class to manage `TTS.tts` model vocabulary - - Intended to be used with models using graphemes as input. - It uses system defaults for the undefined class arguments. - - Args: - characters (str): - Main set of case-sensitive characters to be used in the vocabulary. Defaults to `_characters`. - - punctuations (str): - Characters to be treated as punctuation. Defaults to `_punctuations`. - - pad (str): - Special padding character that would be ignored by the model. Defaults to `_pad`. - - eos (str): - End of the sentence character. Defaults to `_eos`. - - bos (str): - Beginning of the sentence character. Defaults to `_bos`. - - is_unique (bool): - Remove duplicates from the provided characters. Defaults to True. - - is_sorted (bool): - Sort the characters in alphabetical order. Defaults to True. - """ - - def __init__( - self, - characters: str = _characters, - punctuations: str = _punctuations, - pad: str = _pad, - eos: str = _eos, - bos: str = _bos, - blank: str = _blank, - is_unique: bool = False, - is_sorted: bool = True, - ) -> None: - super().__init__(characters, punctuations, pad, eos, bos, blank, is_unique, is_sorted) - - @staticmethod - def init_from_config(config: "Coqpit"): - """Init a Graphemes object from a model config - - If characters are not defined in the config, it will be set to the default characters and the config - will be updated. - """ - if config.characters is not None: - # band-aid for compatibility with old models - if "phonemes" in config.characters: - return ( - Graphemes( - characters=config.characters["characters"], - punctuations=config.characters["punctuations"], - pad=config.characters["pad"], - eos=config.characters["eos"], - bos=config.characters["bos"], - blank=config.characters["blank"], - is_unique=config.characters["is_unique"], - is_sorted=config.characters["is_sorted"], - ), - config, - ) - return Graphemes(**config.characters), config - characters = Graphemes() - new_config = replace(config, characters=characters.to_config()) - return characters, new_config - - -if __name__ == "__main__": - gr = Graphemes() - ph = IPAPhonemes() - gr.print_log() - ph.print_log() diff --git a/TTS/tts/utils/text/chinese_mandarin/__init__.py b/TTS/tts/utils/text/chinese_mandarin/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/utils/text/chinese_mandarin/numbers.py b/TTS/tts/utils/text/chinese_mandarin/numbers.py deleted file mode 100644 index 4787ea61007656819eb57d52d5865b38c7afa915..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/chinese_mandarin/numbers.py +++ /dev/null @@ -1,127 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- - -# Licensed under WTFPL or the Unlicense or CC0. -# This uses Python 3, but it's easy to port to Python 2 by changing -# strings to u'xx'. - -import itertools -import re - - -def _num2chinese(num: str, big=False, simp=True, o=False, twoalt=False) -> str: - """Convert numerical arabic numbers (0->9) to chinese hanzi numbers (〇 -> 九) - - Args: - num (str): arabic number to convert - big (bool, optional): use financial characters. Defaults to False. - simp (bool, optional): use simplified characters instead of tradictional characters. Defaults to True. - o (bool, optional): use 〇 for 'zero'. Defaults to False. - twoalt (bool, optional): use 两/兩 for 'two' when appropriate. Defaults to False. - - Raises: - ValueError: if number is more than 1e48 - ValueError: if 'e' exposent in number - - Returns: - str: converted number as hanzi characters - """ - - # check num first - nd = str(num) - if abs(float(nd)) >= 1e48: - raise ValueError("number out of range") - if "e" in nd: - raise ValueError("scientific notation is not supported") - c_symbol = "正负点" if simp else "正負點" - if o: # formal - twoalt = False - if big: - c_basic = "零壹贰叁肆伍陆柒捌玖" if simp else "零壹貳參肆伍陸柒捌玖" - c_unit1 = "拾佰仟" - c_twoalt = "贰" if simp else "貳" - else: - c_basic = "〇一二三四五六七八九" if o else "零一二三四五六七八九" - c_unit1 = "十百千" - if twoalt: - c_twoalt = "两" if simp else "兩" - else: - c_twoalt = "二" - c_unit2 = "万亿兆京垓秭穰沟涧正载" if simp else "萬億兆京垓秭穰溝澗正載" - revuniq = lambda l: "".join(k for k, g in itertools.groupby(reversed(l))) - nd = str(num) - result = [] - if nd[0] == "+": - result.append(c_symbol[0]) - elif nd[0] == "-": - result.append(c_symbol[1]) - if "." in nd: - integer, remainder = nd.lstrip("+-").split(".") - else: - integer, remainder = nd.lstrip("+-"), None - if int(integer): - splitted = [integer[max(i - 4, 0) : i] for i in range(len(integer), 0, -4)] - intresult = [] - for nu, unit in enumerate(splitted): - # special cases - if int(unit) == 0: # 0000 - intresult.append(c_basic[0]) - continue - if nu > 0 and int(unit) == 2: # 0002 - intresult.append(c_twoalt + c_unit2[nu - 1]) - continue - ulist = [] - unit = unit.zfill(4) - for nc, ch in enumerate(reversed(unit)): - if ch == "0": - if ulist: # ???0 - ulist.append(c_basic[0]) - elif nc == 0: - ulist.append(c_basic[int(ch)]) - elif nc == 1 and ch == "1" and unit[1] == "0": - # special case for tens - # edit the 'elif' if you don't like - # 十四, 三千零十四, 三千三百一十四 - ulist.append(c_unit1[0]) - elif nc > 1 and ch == "2": - ulist.append(c_twoalt + c_unit1[nc - 1]) - else: - ulist.append(c_basic[int(ch)] + c_unit1[nc - 1]) - ustr = revuniq(ulist) - if nu == 0: - intresult.append(ustr) - else: - intresult.append(ustr + c_unit2[nu - 1]) - result.append(revuniq(intresult).strip(c_basic[0])) - else: - result.append(c_basic[0]) - if remainder: - result.append(c_symbol[2]) - result.append("".join(c_basic[int(ch)] for ch in remainder)) - return "".join(result) - - -def _number_replace(match) -> str: - """function to apply in a match, transform all numbers in a match by chinese characters - - Args: - match (re.Match): numbers regex matches - - Returns: - str: replaced characters for the numbers - """ - match_str: str = match.group() - return _num2chinese(match_str) - - -def replace_numbers_to_characters_in_text(text: str) -> str: - """Replace all arabic numbers in a text by their equivalent in chinese characters (simplified) - - Args: - text (str): input text to transform - - Returns: - str: output text - """ - text = re.sub(r"[0-9]+", _number_replace, text) - return text diff --git a/TTS/tts/utils/text/chinese_mandarin/phonemizer.py b/TTS/tts/utils/text/chinese_mandarin/phonemizer.py deleted file mode 100644 index 727c881e1062badc57df7418aa07e7434d57335c..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/chinese_mandarin/phonemizer.py +++ /dev/null @@ -1,37 +0,0 @@ -from typing import List - -import jieba -import pypinyin - -from .pinyinToPhonemes import PINYIN_DICT - - -def _chinese_character_to_pinyin(text: str) -> List[str]: - pinyins = pypinyin.pinyin(text, style=pypinyin.Style.TONE3, heteronym=False, neutral_tone_with_five=True) - pinyins_flat_list = [item for sublist in pinyins for item in sublist] - return pinyins_flat_list - - -def _chinese_pinyin_to_phoneme(pinyin: str) -> str: - segment = pinyin[:-1] - tone = pinyin[-1] - phoneme = PINYIN_DICT.get(segment, [""])[0] - return phoneme + tone - - -def chinese_text_to_phonemes(text: str, seperator: str = "|") -> str: - tokenized_text = jieba.cut(text, HMM=False) - tokenized_text = " ".join(tokenized_text) - pinyined_text: List[str] = _chinese_character_to_pinyin(tokenized_text) - - results: List[str] = [] - - for token in pinyined_text: - if token[-1] in "12345": # TODO transform to is_pinyin() - pinyin_phonemes = _chinese_pinyin_to_phoneme(token) - - results += list(pinyin_phonemes) - else: # is ponctuation or other - results += list(token) - - return seperator.join(results) diff --git a/TTS/tts/utils/text/chinese_mandarin/pinyinToPhonemes.py b/TTS/tts/utils/text/chinese_mandarin/pinyinToPhonemes.py deleted file mode 100644 index 4e25c3a4c91cddd0bf0e5d6e273262e3dbd3a2dd..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/chinese_mandarin/pinyinToPhonemes.py +++ /dev/null @@ -1,419 +0,0 @@ -PINYIN_DICT = { - "a": ["a"], - "ai": ["ai"], - "an": ["an"], - "ang": ["ɑŋ"], - "ao": ["aʌ"], - "ba": ["ba"], - "bai": ["bai"], - "ban": ["ban"], - "bang": ["bɑŋ"], - "bao": ["baʌ"], - # "be": ["be"], doesnt exist - "bei": ["bɛi"], - "ben": ["bœn"], - "beng": ["bɵŋ"], - "bi": ["bi"], - "bian": ["biɛn"], - "biao": ["biaʌ"], - "bie": ["bie"], - "bin": ["bin"], - "bing": ["bɨŋ"], - "bo": ["bo"], - "bu": ["bu"], - "ca": ["tsa"], - "cai": ["tsai"], - "can": ["tsan"], - "cang": ["tsɑŋ"], - "cao": ["tsaʌ"], - "ce": ["tsø"], - "cen": ["tsœn"], - "ceng": ["tsɵŋ"], - "cha": ["ʈʂa"], - "chai": ["ʈʂai"], - "chan": ["ʈʂan"], - "chang": ["ʈʂɑŋ"], - "chao": ["ʈʂaʌ"], - "che": ["ʈʂø"], - "chen": ["ʈʂœn"], - "cheng": ["ʈʂɵŋ"], - "chi": ["ʈʂʏ"], - "chong": ["ʈʂoŋ"], - "chou": ["ʈʂou"], - "chu": ["ʈʂu"], - "chua": ["ʈʂua"], - "chuai": ["ʈʂuai"], - "chuan": ["ʈʂuan"], - "chuang": ["ʈʂuɑŋ"], - "chui": ["ʈʂuei"], - "chun": ["ʈʂun"], - "chuo": ["ʈʂuo"], - "ci": ["tsɪ"], - "cong": ["tsoŋ"], - "cou": ["tsou"], - "cu": ["tsu"], - "cuan": ["tsuan"], - "cui": ["tsuei"], - "cun": ["tsun"], - "cuo": ["tsuo"], - "da": ["da"], - "dai": ["dai"], - "dan": ["dan"], - "dang": ["dɑŋ"], - "dao": ["daʌ"], - "de": ["dø"], - "dei": ["dei"], - # "den": ["dœn"], - "deng": ["dɵŋ"], - "di": ["di"], - "dia": ["dia"], - "dian": ["diɛn"], - "diao": ["diaʌ"], - "die": ["die"], - "ding": ["dɨŋ"], - "diu": ["dio"], - "dong": ["doŋ"], - "dou": ["dou"], - "du": ["du"], - "duan": ["duan"], - "dui": ["duei"], - "dun": ["dun"], - "duo": ["duo"], - "e": ["ø"], - "ei": ["ei"], - "en": ["œn"], - # "ng": ["œn"], - # "eng": ["ɵŋ"], - "er": ["er"], - "fa": ["fa"], - "fan": ["fan"], - "fang": ["fɑŋ"], - "fei": ["fei"], - "fen": ["fœn"], - "feng": ["fɵŋ"], - "fo": ["fo"], - "fou": ["fou"], - "fu": ["fu"], - "ga": ["ga"], - "gai": ["gai"], - "gan": ["gan"], - "gang": ["gɑŋ"], - "gao": ["gaʌ"], - "ge": ["gø"], - "gei": ["gei"], - "gen": ["gœn"], - "geng": ["gɵŋ"], - "gong": ["goŋ"], - "gou": ["gou"], - "gu": ["gu"], - "gua": ["gua"], - "guai": ["guai"], - "guan": ["guan"], - "guang": ["guɑŋ"], - "gui": ["guei"], - "gun": ["gun"], - "guo": ["guo"], - "ha": ["xa"], - "hai": ["xai"], - "han": ["xan"], - "hang": ["xɑŋ"], - "hao": ["xaʌ"], - "he": ["xø"], - "hei": ["xei"], - "hen": ["xœn"], - "heng": ["xɵŋ"], - "hong": ["xoŋ"], - "hou": ["xou"], - "hu": ["xu"], - "hua": ["xua"], - "huai": ["xuai"], - "huan": ["xuan"], - "huang": ["xuɑŋ"], - "hui": ["xuei"], - "hun": ["xun"], - "huo": ["xuo"], - "ji": ["dʑi"], - "jia": ["dʑia"], - "jian": ["dʑiɛn"], - "jiang": ["dʑiɑŋ"], - "jiao": ["dʑiaʌ"], - "jie": ["dʑie"], - "jin": ["dʑin"], - "jing": ["dʑɨŋ"], - "jiong": ["dʑioŋ"], - "jiu": ["dʑio"], - "ju": ["dʑy"], - "juan": ["dʑyɛn"], - "jue": ["dʑye"], - "jun": ["dʑyn"], - "ka": ["ka"], - "kai": ["kai"], - "kan": ["kan"], - "kang": ["kɑŋ"], - "kao": ["kaʌ"], - "ke": ["kø"], - "kei": ["kei"], - "ken": ["kœn"], - "keng": ["kɵŋ"], - "kong": ["koŋ"], - "kou": ["kou"], - "ku": ["ku"], - "kua": ["kua"], - "kuai": ["kuai"], - "kuan": ["kuan"], - "kuang": ["kuɑŋ"], - "kui": ["kuei"], - "kun": ["kun"], - "kuo": ["kuo"], - "la": ["la"], - "lai": ["lai"], - "lan": ["lan"], - "lang": ["lɑŋ"], - "lao": ["laʌ"], - "le": ["lø"], - "lei": ["lei"], - "leng": ["lɵŋ"], - "li": ["li"], - "lia": ["lia"], - "lian": ["liɛn"], - "liang": ["liɑŋ"], - "liao": ["liaʌ"], - "lie": ["lie"], - "lin": ["lin"], - "ling": ["lɨŋ"], - "liu": ["lio"], - "lo": ["lo"], - "long": ["loŋ"], - "lou": ["lou"], - "lu": ["lu"], - "lv": ["ly"], - "luan": ["luan"], - "lve": ["lye"], - "lue": ["lue"], - "lun": ["lun"], - "luo": ["luo"], - "ma": ["ma"], - "mai": ["mai"], - "man": ["man"], - "mang": ["mɑŋ"], - "mao": ["maʌ"], - "me": ["mø"], - "mei": ["mei"], - "men": ["mœn"], - "meng": ["mɵŋ"], - "mi": ["mi"], - "mian": ["miɛn"], - "miao": ["miaʌ"], - "mie": ["mie"], - "min": ["min"], - "ming": ["mɨŋ"], - "miu": ["mio"], - "mo": ["mo"], - "mou": ["mou"], - "mu": ["mu"], - "na": ["na"], - "nai": ["nai"], - "nan": ["nan"], - "nang": ["nɑŋ"], - "nao": ["naʌ"], - "ne": ["nø"], - "nei": ["nei"], - "nen": ["nœn"], - "neng": ["nɵŋ"], - "ni": ["ni"], - "nia": ["nia"], - "nian": ["niɛn"], - "niang": ["niɑŋ"], - "niao": ["niaʌ"], - "nie": ["nie"], - "nin": ["nin"], - "ning": ["nɨŋ"], - "niu": ["nio"], - "nong": ["noŋ"], - "nou": ["nou"], - "nu": ["nu"], - "nv": ["ny"], - "nuan": ["nuan"], - "nve": ["nye"], - "nue": ["nye"], - "nuo": ["nuo"], - "o": ["o"], - "ou": ["ou"], - "pa": ["pa"], - "pai": ["pai"], - "pan": ["pan"], - "pang": ["pɑŋ"], - "pao": ["paʌ"], - "pe": ["pø"], - "pei": ["pei"], - "pen": ["pœn"], - "peng": ["pɵŋ"], - "pi": ["pi"], - "pian": ["piɛn"], - "piao": ["piaʌ"], - "pie": ["pie"], - "pin": ["pin"], - "ping": ["pɨŋ"], - "po": ["po"], - "pou": ["pou"], - "pu": ["pu"], - "qi": ["tɕi"], - "qia": ["tɕia"], - "qian": ["tɕiɛn"], - "qiang": ["tɕiɑŋ"], - "qiao": ["tɕiaʌ"], - "qie": ["tɕie"], - "qin": ["tɕin"], - "qing": ["tɕɨŋ"], - "qiong": ["tɕioŋ"], - "qiu": ["tɕio"], - "qu": ["tɕy"], - "quan": ["tɕyɛn"], - "que": ["tɕye"], - "qun": ["tɕyn"], - "ran": ["ʐan"], - "rang": ["ʐɑŋ"], - "rao": ["ʐaʌ"], - "re": ["ʐø"], - "ren": ["ʐœn"], - "reng": ["ʐɵŋ"], - "ri": ["ʐʏ"], - "rong": ["ʐoŋ"], - "rou": ["ʐou"], - "ru": ["ʐu"], - "rua": ["ʐua"], - "ruan": ["ʐuan"], - "rui": ["ʐuei"], - "run": ["ʐun"], - "ruo": ["ʐuo"], - "sa": ["sa"], - "sai": ["sai"], - "san": ["san"], - "sang": ["sɑŋ"], - "sao": ["saʌ"], - "se": ["sø"], - "sen": ["sœn"], - "seng": ["sɵŋ"], - "sha": ["ʂa"], - "shai": ["ʂai"], - "shan": ["ʂan"], - "shang": ["ʂɑŋ"], - "shao": ["ʂaʌ"], - "she": ["ʂø"], - "shei": ["ʂei"], - "shen": ["ʂœn"], - "sheng": ["ʂɵŋ"], - "shi": ["ʂʏ"], - "shou": ["ʂou"], - "shu": ["ʂu"], - "shua": ["ʂua"], - "shuai": ["ʂuai"], - "shuan": ["ʂuan"], - "shuang": ["ʂuɑŋ"], - "shui": ["ʂuei"], - "shun": ["ʂun"], - "shuo": ["ʂuo"], - "si": ["sɪ"], - "song": ["soŋ"], - "sou": ["sou"], - "su": ["su"], - "suan": ["suan"], - "sui": ["suei"], - "sun": ["sun"], - "suo": ["suo"], - "ta": ["ta"], - "tai": ["tai"], - "tan": ["tan"], - "tang": ["tɑŋ"], - "tao": ["taʌ"], - "te": ["tø"], - "tei": ["tei"], - "teng": ["tɵŋ"], - "ti": ["ti"], - "tian": ["tiɛn"], - "tiao": ["tiaʌ"], - "tie": ["tie"], - "ting": ["tɨŋ"], - "tong": ["toŋ"], - "tou": ["tou"], - "tu": ["tu"], - "tuan": ["tuan"], - "tui": ["tuei"], - "tun": ["tun"], - "tuo": ["tuo"], - "wa": ["wa"], - "wai": ["wai"], - "wan": ["wan"], - "wang": ["wɑŋ"], - "wei": ["wei"], - "wen": ["wœn"], - "weng": ["wɵŋ"], - "wo": ["wo"], - "wu": ["wu"], - "xi": ["ɕi"], - "xia": ["ɕia"], - "xian": ["ɕiɛn"], - "xiang": ["ɕiɑŋ"], - "xiao": ["ɕiaʌ"], - "xie": ["ɕie"], - "xin": ["ɕin"], - "xing": ["ɕɨŋ"], - "xiong": ["ɕioŋ"], - "xiu": ["ɕio"], - "xu": ["ɕy"], - "xuan": ["ɕyɛn"], - "xue": ["ɕye"], - "xun": ["ɕyn"], - "ya": ["ia"], - "yan": ["iɛn"], - "yang": ["iɑŋ"], - "yao": ["iaʌ"], - "ye": ["ie"], - "yi": ["i"], - "yin": ["in"], - "ying": ["ɨŋ"], - "yo": ["io"], - "yong": ["ioŋ"], - "you": ["io"], - "yu": ["y"], - "yuan": ["yɛn"], - "yue": ["ye"], - "yun": ["yn"], - "za": ["dza"], - "zai": ["dzai"], - "zan": ["dzan"], - "zang": ["dzɑŋ"], - "zao": ["dzaʌ"], - "ze": ["dzø"], - "zei": ["dzei"], - "zen": ["dzœn"], - "zeng": ["dzɵŋ"], - "zha": ["dʒa"], - "zhai": ["dʒai"], - "zhan": ["dʒan"], - "zhang": ["dʒɑŋ"], - "zhao": ["dʒaʌ"], - "zhe": ["dʒø"], - # "zhei": ["dʒei"], it doesn't exist - "zhen": ["dʒœn"], - "zheng": ["dʒɵŋ"], - "zhi": ["dʒʏ"], - "zhong": ["dʒoŋ"], - "zhou": ["dʒou"], - "zhu": ["dʒu"], - "zhua": ["dʒua"], - "zhuai": ["dʒuai"], - "zhuan": ["dʒuan"], - "zhuang": ["dʒuɑŋ"], - "zhui": ["dʒuei"], - "zhun": ["dʒun"], - "zhuo": ["dʒuo"], - "zi": ["dzɪ"], - "zong": ["dzoŋ"], - "zou": ["dzou"], - "zu": ["dzu"], - "zuan": ["dzuan"], - "zui": ["dzuei"], - "zun": ["dzun"], - "zuo": ["dzuo"], -} diff --git a/TTS/tts/utils/text/cleaners.py b/TTS/tts/utils/text/cleaners.py deleted file mode 100644 index 74d3910b516ae1dc856509d62aca52a01cc2088b..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/cleaners.py +++ /dev/null @@ -1,171 +0,0 @@ -"""Set of default text cleaners""" -# TODO: pick the cleaner for languages dynamically - -import re - -from anyascii import anyascii - -from TTS.tts.utils.text.chinese_mandarin.numbers import replace_numbers_to_characters_in_text - -from .english.abbreviations import abbreviations_en -from .english.number_norm import normalize_numbers as en_normalize_numbers -from .english.time_norm import expand_time_english -from .french.abbreviations import abbreviations_fr - -# Regular expression matching whitespace: -_whitespace_re = re.compile(r"\s+") - - -def expand_abbreviations(text, lang="en"): - if lang == "en": - _abbreviations = abbreviations_en - elif lang == "fr": - _abbreviations = abbreviations_fr - for regex, replacement in _abbreviations: - text = re.sub(regex, replacement, text) - return text - - -def lowercase(text): - return text.lower() - - -def collapse_whitespace(text): - return re.sub(_whitespace_re, " ", text).strip() - - -def convert_to_ascii(text): - return anyascii(text) - - -def remove_aux_symbols(text): - text = re.sub(r"[\<\>\(\)\[\]\"]+", "", text) - return text - - -def replace_symbols(text, lang="en"): - """Replace symbols based on the lenguage tag. - - Args: - text: - Input text. - lang: - Lenguage identifier. ex: "en", "fr", "pt", "ca". - - Returns: - The modified text - example: - input args: - text: "si l'avi cau, diguem-ho" - lang: "ca" - Output: - text: "si lavi cau, diguemho" - """ - text = text.replace(";", ",") - text = text.replace("-", " ") if lang != "ca" else text.replace("-", "") - text = text.replace(":", ",") - if lang == "en": - text = text.replace("&", " and ") - elif lang == "fr": - text = text.replace("&", " et ") - elif lang == "pt": - text = text.replace("&", " e ") - elif lang == "ca": - text = text.replace("&", " i ") - text = text.replace("'", "") - return text - - -def basic_cleaners(text): - """Basic pipeline that lowercases and collapses whitespace without transliteration.""" - text = lowercase(text) - text = collapse_whitespace(text) - return text - - -def transliteration_cleaners(text): - """Pipeline for non-English text that transliterates to ASCII.""" - # text = convert_to_ascii(text) - text = lowercase(text) - text = collapse_whitespace(text) - return text - - -def basic_german_cleaners(text): - """Pipeline for German text""" - text = lowercase(text) - text = collapse_whitespace(text) - return text - - -# TODO: elaborate it -def basic_turkish_cleaners(text): - """Pipeline for Turkish text""" - text = text.replace("I", "ı") - text = lowercase(text) - text = collapse_whitespace(text) - return text - - -def english_cleaners(text): - """Pipeline for English text, including number and abbreviation expansion.""" - # text = convert_to_ascii(text) - text = lowercase(text) - text = expand_time_english(text) - text = en_normalize_numbers(text) - text = expand_abbreviations(text) - text = replace_symbols(text) - text = remove_aux_symbols(text) - text = collapse_whitespace(text) - return text - - -def phoneme_cleaners(text): - """Pipeline for phonemes mode, including number and abbreviation expansion.""" - text = en_normalize_numbers(text) - text = expand_abbreviations(text) - text = replace_symbols(text) - text = remove_aux_symbols(text) - text = collapse_whitespace(text) - return text - - -def french_cleaners(text): - """Pipeline for French text. There is no need to expand numbers, phonemizer already does that""" - text = expand_abbreviations(text, lang="fr") - text = lowercase(text) - text = replace_symbols(text, lang="fr") - text = remove_aux_symbols(text) - text = collapse_whitespace(text) - return text - - -def portuguese_cleaners(text): - """Basic pipeline for Portuguese text. There is no need to expand abbreviation and - numbers, phonemizer already does that""" - text = lowercase(text) - text = replace_symbols(text, lang="pt") - text = remove_aux_symbols(text) - text = collapse_whitespace(text) - return text - - -def chinese_mandarin_cleaners(text: str) -> str: - """Basic pipeline for chinese""" - text = replace_numbers_to_characters_in_text(text) - return text - - -def multilingual_cleaners(text): - """Pipeline for multilingual text""" - text = lowercase(text) - text = replace_symbols(text, lang=None) - text = remove_aux_symbols(text) - text = collapse_whitespace(text) - return text - - -def no_cleaners(text): - # remove newline characters - text = text.replace("\n", "") - return text diff --git a/TTS/tts/utils/text/cmudict.py b/TTS/tts/utils/text/cmudict.py deleted file mode 100644 index f206fb043be1d478fa6ace36fefdefa30b0acb02..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/cmudict.py +++ /dev/null @@ -1,151 +0,0 @@ -# -*- coding: utf-8 -*- - -import re - -VALID_SYMBOLS = [ - "AA", - "AA0", - "AA1", - "AA2", - "AE", - "AE0", - "AE1", - "AE2", - "AH", - "AH0", - "AH1", - "AH2", - "AO", - "AO0", - "AO1", - "AO2", - "AW", - "AW0", - "AW1", - "AW2", - "AY", - "AY0", - "AY1", - "AY2", - "B", - "CH", - "D", - "DH", - "EH", - "EH0", - "EH1", - "EH2", - "ER", - "ER0", - "ER1", - "ER2", - "EY", - "EY0", - "EY1", - "EY2", - "F", - "G", - "HH", - "IH", - "IH0", - "IH1", - "IH2", - "IY", - "IY0", - "IY1", - "IY2", - "JH", - "K", - "L", - "M", - "N", - "NG", - "OW", - "OW0", - "OW1", - "OW2", - "OY", - "OY0", - "OY1", - "OY2", - "P", - "R", - "S", - "SH", - "T", - "TH", - "UH", - "UH0", - "UH1", - "UH2", - "UW", - "UW0", - "UW1", - "UW2", - "V", - "W", - "Y", - "Z", - "ZH", -] - - -class CMUDict: - """Thin wrapper around CMUDict data. http://www.speech.cs.cmu.edu/cgi-bin/cmudict""" - - def __init__(self, file_or_path, keep_ambiguous=True): - if isinstance(file_or_path, str): - with open(file_or_path, encoding="latin-1") as f: - entries = _parse_cmudict(f) - else: - entries = _parse_cmudict(file_or_path) - if not keep_ambiguous: - entries = {word: pron for word, pron in entries.items() if len(pron) == 1} - self._entries = entries - - def __len__(self): - return len(self._entries) - - def lookup(self, word): - """Returns list of ARPAbet pronunciations of the given word.""" - return self._entries.get(word.upper()) - - @staticmethod - def get_arpabet(word, cmudict, punctuation_symbols): - first_symbol, last_symbol = "", "" - if word and word[0] in punctuation_symbols: - first_symbol = word[0] - word = word[1:] - if word and word[-1] in punctuation_symbols: - last_symbol = word[-1] - word = word[:-1] - arpabet = cmudict.lookup(word) - if arpabet is not None: - return first_symbol + "{%s}" % arpabet[0] + last_symbol - return first_symbol + word + last_symbol - - -_alt_re = re.compile(r"\([0-9]+\)") - - -def _parse_cmudict(file): - cmudict = {} - for line in file: - if line and (line[0] >= "A" and line[0] <= "Z" or line[0] == "'"): - parts = line.split(" ") - word = re.sub(_alt_re, "", parts[0]) - pronunciation = _get_pronunciation(parts[1]) - if pronunciation: - if word in cmudict: - cmudict[word].append(pronunciation) - else: - cmudict[word] = [pronunciation] - return cmudict - - -def _get_pronunciation(s): - parts = s.strip().split(" ") - for part in parts: - if part not in VALID_SYMBOLS: - return None - return " ".join(parts) diff --git a/TTS/tts/utils/text/english/__init__.py b/TTS/tts/utils/text/english/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/utils/text/english/abbreviations.py b/TTS/tts/utils/text/english/abbreviations.py deleted file mode 100644 index cd93c13c8ecfbc0df2d0c6d2fa348388940c213a..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/english/abbreviations.py +++ /dev/null @@ -1,26 +0,0 @@ -import re - -# List of (regular expression, replacement) pairs for abbreviations in english: -abbreviations_en = [ - (re.compile("\\b%s\\." % x[0], re.IGNORECASE), x[1]) - for x in [ - ("mrs", "misess"), - ("mr", "mister"), - ("dr", "doctor"), - ("st", "saint"), - ("co", "company"), - ("jr", "junior"), - ("maj", "major"), - ("gen", "general"), - ("drs", "doctors"), - ("rev", "reverend"), - ("lt", "lieutenant"), - ("hon", "honorable"), - ("sgt", "sergeant"), - ("capt", "captain"), - ("esq", "esquire"), - ("ltd", "limited"), - ("col", "colonel"), - ("ft", "fort"), - ] -] diff --git a/TTS/tts/utils/text/english/number_norm.py b/TTS/tts/utils/text/english/number_norm.py deleted file mode 100644 index e8377ede87ebc9d1bb9cffbbb290aa7787caea4f..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/english/number_norm.py +++ /dev/null @@ -1,97 +0,0 @@ -""" from https://github.com/keithito/tacotron """ - -import re -from typing import Dict - -import inflect - -_inflect = inflect.engine() -_comma_number_re = re.compile(r"([0-9][0-9\,]+[0-9])") -_decimal_number_re = re.compile(r"([0-9]+\.[0-9]+)") -_currency_re = re.compile(r"(£|\$|¥)([0-9\,\.]*[0-9]+)") -_ordinal_re = re.compile(r"[0-9]+(st|nd|rd|th)") -_number_re = re.compile(r"-?[0-9]+") - - -def _remove_commas(m): - return m.group(1).replace(",", "") - - -def _expand_decimal_point(m): - return m.group(1).replace(".", " point ") - - -def __expand_currency(value: str, inflection: Dict[float, str]) -> str: - parts = value.replace(",", "").split(".") - if len(parts) > 2: - return f"{value} {inflection[2]}" # Unexpected format - text = [] - integer = int(parts[0]) if parts[0] else 0 - if integer > 0: - integer_unit = inflection.get(integer, inflection[2]) - text.append(f"{integer} {integer_unit}") - fraction = int(parts[1]) if len(parts) > 1 and parts[1] else 0 - if fraction > 0: - fraction_unit = inflection.get(fraction / 100, inflection[0.02]) - text.append(f"{fraction} {fraction_unit}") - if len(text) == 0: - return f"zero {inflection[2]}" - return " ".join(text) - - -def _expand_currency(m: "re.Match") -> str: - currencies = { - "$": { - 0.01: "cent", - 0.02: "cents", - 1: "dollar", - 2: "dollars", - }, - "€": { - 0.01: "cent", - 0.02: "cents", - 1: "euro", - 2: "euros", - }, - "£": { - 0.01: "penny", - 0.02: "pence", - 1: "pound sterling", - 2: "pounds sterling", - }, - "¥": { - # TODO rin - 0.02: "sen", - 2: "yen", - }, - } - unit = m.group(1) - currency = currencies[unit] - value = m.group(2) - return __expand_currency(value, currency) - - -def _expand_ordinal(m): - return _inflect.number_to_words(m.group(0)) - - -def _expand_number(m): - num = int(m.group(0)) - if 1000 < num < 3000: - if num == 2000: - return "two thousand" - if 2000 < num < 2010: - return "two thousand " + _inflect.number_to_words(num % 100) - if num % 100 == 0: - return _inflect.number_to_words(num // 100) + " hundred" - return _inflect.number_to_words(num, andword="", zero="oh", group=2).replace(", ", " ") - return _inflect.number_to_words(num, andword="") - - -def normalize_numbers(text): - text = re.sub(_comma_number_re, _remove_commas, text) - text = re.sub(_currency_re, _expand_currency, text) - text = re.sub(_decimal_number_re, _expand_decimal_point, text) - text = re.sub(_ordinal_re, _expand_ordinal, text) - text = re.sub(_number_re, _expand_number, text) - return text diff --git a/TTS/tts/utils/text/english/time_norm.py b/TTS/tts/utils/text/english/time_norm.py deleted file mode 100644 index c8ac09e79db4a239a7f72f101503dbf0d6feb3ae..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/english/time_norm.py +++ /dev/null @@ -1,47 +0,0 @@ -import re - -import inflect - -_inflect = inflect.engine() - -_time_re = re.compile( - r"""\b - ((0?[0-9])|(1[0-1])|(1[2-9])|(2[0-3])) # hours - : - ([0-5][0-9]) # minutes - \s*(a\\.m\\.|am|pm|p\\.m\\.|a\\.m|p\\.m)? # am/pm - \b""", - re.IGNORECASE | re.X, -) - - -def _expand_num(n: int) -> str: - return _inflect.number_to_words(n) - - -def _expand_time_english(match: "re.Match") -> str: - hour = int(match.group(1)) - past_noon = hour >= 12 - time = [] - if hour > 12: - hour -= 12 - elif hour == 0: - hour = 12 - past_noon = True - time.append(_expand_num(hour)) - - minute = int(match.group(6)) - if minute > 0: - if minute < 10: - time.append("oh") - time.append(_expand_num(minute)) - am_pm = match.group(7) - if am_pm is None: - time.append("p m" if past_noon else "a m") - else: - time.extend(list(am_pm.replace(".", ""))) - return " ".join(time) - - -def expand_time_english(text: str) -> str: - return re.sub(_time_re, _expand_time_english, text) diff --git a/TTS/tts/utils/text/french/__init__.py b/TTS/tts/utils/text/french/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/utils/text/french/abbreviations.py b/TTS/tts/utils/text/french/abbreviations.py deleted file mode 100644 index f580dfed7b4576a9f87b0a4145cb729e70050d50..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/french/abbreviations.py +++ /dev/null @@ -1,48 +0,0 @@ -import re - -# List of (regular expression, replacement) pairs for abbreviations in french: -abbreviations_fr = [ - (re.compile("\\b%s\\." % x[0], re.IGNORECASE), x[1]) - for x in [ - ("M", "monsieur"), - ("Mlle", "mademoiselle"), - ("Mlles", "mesdemoiselles"), - ("Mme", "Madame"), - ("Mmes", "Mesdames"), - ("N.B", "nota bene"), - ("M", "monsieur"), - ("p.c.q", "parce que"), - ("Pr", "professeur"), - ("qqch", "quelque chose"), - ("rdv", "rendez-vous"), - ("max", "maximum"), - ("min", "minimum"), - ("no", "numéro"), - ("adr", "adresse"), - ("dr", "docteur"), - ("st", "saint"), - ("co", "companie"), - ("jr", "junior"), - ("sgt", "sergent"), - ("capt", "capitain"), - ("col", "colonel"), - ("av", "avenue"), - ("av. J.-C", "avant Jésus-Christ"), - ("apr. J.-C", "après Jésus-Christ"), - ("art", "article"), - ("boul", "boulevard"), - ("c.-à-d", "c’est-à-dire"), - ("etc", "et cetera"), - ("ex", "exemple"), - ("excl", "exclusivement"), - ("boul", "boulevard"), - ] -] + [ - (re.compile("\\b%s" % x[0]), x[1]) - for x in [ - ("Mlle", "mademoiselle"), - ("Mlles", "mesdemoiselles"), - ("Mme", "Madame"), - ("Mmes", "Mesdames"), - ] -] diff --git a/TTS/tts/utils/text/japanese/__init__.py b/TTS/tts/utils/text/japanese/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/utils/text/japanese/phonemizer.py b/TTS/tts/utils/text/japanese/phonemizer.py deleted file mode 100644 index c3111067e140903b301696c59b67f090995c1f59..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/japanese/phonemizer.py +++ /dev/null @@ -1,470 +0,0 @@ -# Convert Japanese text to phonemes which is -# compatible with Julius https://github.com/julius-speech/segmentation-kit - -import re -import unicodedata - -try: - import MeCab -except ImportError as e: - raise ImportError("Japanese requires mecab-python3 and unidic-lite.") from e -from num2words import num2words - -_CONVRULES = [ - # Conversion of 2 letters - "アァ/ a a", - "イィ/ i i", - "イェ/ i e", - "イャ/ y a", - "ウゥ/ u:", - "エェ/ e e", - "オォ/ o:", - "カァ/ k a:", - "キィ/ k i:", - "クゥ/ k u:", - "クャ/ ky a", - "クュ/ ky u", - "クョ/ ky o", - "ケェ/ k e:", - "コォ/ k o:", - "ガァ/ g a:", - "ギィ/ g i:", - "グゥ/ g u:", - "グャ/ gy a", - "グュ/ gy u", - "グョ/ gy o", - "ゲェ/ g e:", - "ゴォ/ g o:", - "サァ/ s a:", - "シィ/ sh i:", - "スゥ/ s u:", - "スャ/ sh a", - "スュ/ sh u", - "スョ/ sh o", - "セェ/ s e:", - "ソォ/ s o:", - "ザァ/ z a:", - "ジィ/ j i:", - "ズゥ/ z u:", - "ズャ/ zy a", - "ズュ/ zy u", - "ズョ/ zy o", - "ゼェ/ z e:", - "ゾォ/ z o:", - "タァ/ t a:", - "チィ/ ch i:", - "ツァ/ ts a", - "ツィ/ ts i", - "ツゥ/ ts u:", - "ツャ/ ch a", - "ツュ/ ch u", - "ツョ/ ch o", - "ツェ/ ts e", - "ツォ/ ts o", - "テェ/ t e:", - "トォ/ t o:", - "ダァ/ d a:", - "ヂィ/ j i:", - "ヅゥ/ d u:", - "ヅャ/ zy a", - "ヅュ/ zy u", - "ヅョ/ zy o", - "デェ/ d e:", - "ドォ/ d o:", - "ナァ/ n a:", - "ニィ/ n i:", - "ヌゥ/ n u:", - "ヌャ/ ny a", - "ヌュ/ ny u", - "ヌョ/ ny o", - "ネェ/ n e:", - "ノォ/ n o:", - "ハァ/ h a:", - "ヒィ/ h i:", - "フゥ/ f u:", - "フャ/ hy a", - "フュ/ hy u", - "フョ/ hy o", - "ヘェ/ h e:", - "ホォ/ h o:", - "バァ/ b a:", - "ビィ/ b i:", - "ブゥ/ b u:", - "フャ/ hy a", - "ブュ/ by u", - "フョ/ hy o", - "ベェ/ b e:", - "ボォ/ b o:", - "パァ/ p a:", - "ピィ/ p i:", - "プゥ/ p u:", - "プャ/ py a", - "プュ/ py u", - "プョ/ py o", - "ペェ/ p e:", - "ポォ/ p o:", - "マァ/ m a:", - "ミィ/ m i:", - "ムゥ/ m u:", - "ムャ/ my a", - "ムュ/ my u", - "ムョ/ my o", - "メェ/ m e:", - "モォ/ m o:", - "ヤァ/ y a:", - "ユゥ/ y u:", - "ユャ/ y a:", - "ユュ/ y u:", - "ユョ/ y o:", - "ヨォ/ y o:", - "ラァ/ r a:", - "リィ/ r i:", - "ルゥ/ r u:", - "ルャ/ ry a", - "ルュ/ ry u", - "ルョ/ ry o", - "レェ/ r e:", - "ロォ/ r o:", - "ワァ/ w a:", - "ヲォ/ o:", - "ディ/ d i", - "デェ/ d e:", - "デャ/ dy a", - "デュ/ dy u", - "デョ/ dy o", - "ティ/ t i", - "テェ/ t e:", - "テャ/ ty a", - "テュ/ ty u", - "テョ/ ty o", - "スィ/ s i", - "ズァ/ z u a", - "ズィ/ z i", - "ズゥ/ z u", - "ズャ/ zy a", - "ズュ/ zy u", - "ズョ/ zy o", - "ズェ/ z e", - "ズォ/ z o", - "キャ/ ky a", - "キュ/ ky u", - "キョ/ ky o", - "シャ/ sh a", - "シュ/ sh u", - "シェ/ sh e", - "ショ/ sh o", - "チャ/ ch a", - "チュ/ ch u", - "チェ/ ch e", - "チョ/ ch o", - "トゥ/ t u", - "トャ/ ty a", - "トュ/ ty u", - "トョ/ ty o", - "ドァ/ d o a", - "ドゥ/ d u", - "ドャ/ dy a", - "ドュ/ dy u", - "ドョ/ dy o", - "ドォ/ d o:", - "ニャ/ ny a", - "ニュ/ ny u", - "ニョ/ ny o", - "ヒャ/ hy a", - "ヒュ/ hy u", - "ヒョ/ hy o", - "ミャ/ my a", - "ミュ/ my u", - "ミョ/ my o", - "リャ/ ry a", - "リュ/ ry u", - "リョ/ ry o", - "ギャ/ gy a", - "ギュ/ gy u", - "ギョ/ gy o", - "ヂェ/ j e", - "ヂャ/ j a", - "ヂュ/ j u", - "ヂョ/ j o", - "ジェ/ j e", - "ジャ/ j a", - "ジュ/ j u", - "ジョ/ j o", - "ビャ/ by a", - "ビュ/ by u", - "ビョ/ by o", - "ピャ/ py a", - "ピュ/ py u", - "ピョ/ py o", - "ウァ/ u a", - "ウィ/ w i", - "ウェ/ w e", - "ウォ/ w o", - "ファ/ f a", - "フィ/ f i", - "フゥ/ f u", - "フャ/ hy a", - "フュ/ hy u", - "フョ/ hy o", - "フェ/ f e", - "フォ/ f o", - "ヴァ/ b a", - "ヴィ/ b i", - "ヴェ/ b e", - "ヴォ/ b o", - "ヴュ/ by u", - # Conversion of 1 letter - "ア/ a", - "イ/ i", - "ウ/ u", - "エ/ e", - "オ/ o", - "カ/ k a", - "キ/ k i", - "ク/ k u", - "ケ/ k e", - "コ/ k o", - "サ/ s a", - "シ/ sh i", - "ス/ s u", - "セ/ s e", - "ソ/ s o", - "タ/ t a", - "チ/ ch i", - "ツ/ ts u", - "テ/ t e", - "ト/ t o", - "ナ/ n a", - "ニ/ n i", - "ヌ/ n u", - "ネ/ n e", - "ノ/ n o", - "ハ/ h a", - "ヒ/ h i", - "フ/ f u", - "ヘ/ h e", - "ホ/ h o", - "マ/ m a", - "ミ/ m i", - "ム/ m u", - "メ/ m e", - "モ/ m o", - "ラ/ r a", - "リ/ r i", - "ル/ r u", - "レ/ r e", - "ロ/ r o", - "ガ/ g a", - "ギ/ g i", - "グ/ g u", - "ゲ/ g e", - "ゴ/ g o", - "ザ/ z a", - "ジ/ j i", - "ズ/ z u", - "ゼ/ z e", - "ゾ/ z o", - "ダ/ d a", - "ヂ/ j i", - "ヅ/ z u", - "デ/ d e", - "ド/ d o", - "バ/ b a", - "ビ/ b i", - "ブ/ b u", - "ベ/ b e", - "ボ/ b o", - "パ/ p a", - "ピ/ p i", - "プ/ p u", - "ペ/ p e", - "ポ/ p o", - "ヤ/ y a", - "ユ/ y u", - "ヨ/ y o", - "ワ/ w a", - "ヰ/ i", - "ヱ/ e", - "ヲ/ o", - "ン/ N", - "ッ/ q", - "ヴ/ b u", - "ー/:", - # Try converting broken text - "ァ/ a", - "ィ/ i", - "ゥ/ u", - "ェ/ e", - "ォ/ o", - "ヮ/ w a", - "ォ/ o", - # Symbols - "、/ ,", - "。/ .", - "!/ !", - "?/ ?", - "・/ ,", -] - -_COLON_RX = re.compile(":+") -_REJECT_RX = re.compile("[^ a-zA-Z:,.?]") - - -def _makerulemap(): - l = [tuple(x.split("/")) for x in _CONVRULES] - return tuple({k: v for k, v in l if len(k) == i} for i in (1, 2)) - - -_RULEMAP1, _RULEMAP2 = _makerulemap() - - -def kata2phoneme(text: str) -> str: - """Convert katakana text to phonemes.""" - text = text.strip() - res = "" - while text: - if len(text) >= 2: - x = _RULEMAP2.get(text[:2]) - if x is not None: - text = text[2:] - res += x - continue - x = _RULEMAP1.get(text[0]) - if x is not None: - text = text[1:] - res += x - continue - res += " " + text[0] - text = text[1:] - res = _COLON_RX.sub(":", res) - return res[1:] - - -_KATAKANA = "".join(chr(ch) for ch in range(ord("ァ"), ord("ン") + 1)) -_HIRAGANA = "".join(chr(ch) for ch in range(ord("ぁ"), ord("ん") + 1)) -_HIRA2KATATRANS = str.maketrans(_HIRAGANA, _KATAKANA) - - -def hira2kata(text: str) -> str: - text = text.translate(_HIRA2KATATRANS) - return text.replace("う゛", "ヴ") - - -_SYMBOL_TOKENS = set(list("・、。?!")) -_NO_YOMI_TOKENS = set(list("「」『』―()[][] …")) -_TAGGER = MeCab.Tagger() - - -def text2kata(text: str) -> str: - parsed = _TAGGER.parse(text) - res = [] - for line in parsed.split("\n"): - if line == "EOS": - break - parts = line.split("\t") - - word, yomi = parts[0], parts[1] - if yomi: - res.append(yomi) - else: - if word in _SYMBOL_TOKENS: - res.append(word) - elif word in ("っ", "ッ"): - res.append("ッ") - elif word in _NO_YOMI_TOKENS: - pass - else: - res.append(word) - return hira2kata("".join(res)) - - -_ALPHASYMBOL_YOMI = { - "#": "シャープ", - "%": "パーセント", - "&": "アンド", - "+": "プラス", - "-": "マイナス", - ":": "コロン", - ";": "セミコロン", - "<": "小なり", - "=": "イコール", - ">": "大なり", - "@": "アット", - "a": "エー", - "b": "ビー", - "c": "シー", - "d": "ディー", - "e": "イー", - "f": "エフ", - "g": "ジー", - "h": "エイチ", - "i": "アイ", - "j": "ジェー", - "k": "ケー", - "l": "エル", - "m": "エム", - "n": "エヌ", - "o": "オー", - "p": "ピー", - "q": "キュー", - "r": "アール", - "s": "エス", - "t": "ティー", - "u": "ユー", - "v": "ブイ", - "w": "ダブリュー", - "x": "エックス", - "y": "ワイ", - "z": "ゼット", - "α": "アルファ", - "β": "ベータ", - "γ": "ガンマ", - "δ": "デルタ", - "ε": "イプシロン", - "ζ": "ゼータ", - "η": "イータ", - "θ": "シータ", - "ι": "イオタ", - "κ": "カッパ", - "λ": "ラムダ", - "μ": "ミュー", - "ν": "ニュー", - "ξ": "クサイ", - "ο": "オミクロン", - "π": "パイ", - "ρ": "ロー", - "σ": "シグマ", - "τ": "タウ", - "υ": "ウプシロン", - "φ": "ファイ", - "χ": "カイ", - "ψ": "プサイ", - "ω": "オメガ", -} - - -_NUMBER_WITH_SEPARATOR_RX = re.compile("[0-9]{1,3}(,[0-9]{3})+") -_CURRENCY_MAP = {"$": "ドル", "¥": "円", "£": "ポンド", "€": "ユーロ"} -_CURRENCY_RX = re.compile(r"([$¥£€])([0-9.]*[0-9])") -_NUMBER_RX = re.compile(r"[0-9]+(\.[0-9]+)?") - - -def japanese_convert_numbers_to_words(text: str) -> str: - res = _NUMBER_WITH_SEPARATOR_RX.sub(lambda m: m[0].replace(",", ""), text) - res = _CURRENCY_RX.sub(lambda m: m[2] + _CURRENCY_MAP.get(m[1], m[1]), res) - res = _NUMBER_RX.sub(lambda m: num2words(m[0], lang="ja"), res) - return res - - -def japanese_convert_alpha_symbols_to_words(text: str) -> str: - return "".join([_ALPHASYMBOL_YOMI.get(ch, ch) for ch in text.lower()]) - - -def japanese_text_to_phonemes(text: str) -> str: - """Convert Japanese text to phonemes.""" - res = unicodedata.normalize("NFKC", text) - res = japanese_convert_numbers_to_words(res) - res = japanese_convert_alpha_symbols_to_words(res) - res = text2kata(res) - res = kata2phoneme(res) - return res.replace(" ", "") diff --git a/TTS/tts/utils/text/korean/__init__.py b/TTS/tts/utils/text/korean/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/tts/utils/text/korean/ko_dictionary.py b/TTS/tts/utils/text/korean/ko_dictionary.py deleted file mode 100644 index 5d2a148234be297cca12417964b191f1f521280d..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/korean/ko_dictionary.py +++ /dev/null @@ -1,44 +0,0 @@ -# coding: utf-8 -# Add the word you want to the dictionary. -etc_dictionary = {"1+1": "원플러스원", "2+1": "투플러스원"} - - -english_dictionary = { - "KOREA": "코리아", - "IDOL": "아이돌", - "IT": "아이티", - "IQ": "아이큐", - "UP": "업", - "DOWN": "다운", - "PC": "피씨", - "CCTV": "씨씨티비", - "SNS": "에스엔에스", - "AI": "에이아이", - "CEO": "씨이오", - "A": "에이", - "B": "비", - "C": "씨", - "D": "디", - "E": "이", - "F": "에프", - "G": "지", - "H": "에이치", - "I": "아이", - "J": "제이", - "K": "케이", - "L": "엘", - "M": "엠", - "N": "엔", - "O": "오", - "P": "피", - "Q": "큐", - "R": "알", - "S": "에스", - "T": "티", - "U": "유", - "V": "브이", - "W": "더블유", - "X": "엑스", - "Y": "와이", - "Z": "제트", -} diff --git a/TTS/tts/utils/text/korean/korean.py b/TTS/tts/utils/text/korean/korean.py deleted file mode 100644 index 1f39a9e4da52be75f4fbf6838da1824d7d488a47..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/korean/korean.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding: utf-8 -# Code based on https://github.com/carpedm20/multi-speaker-tacotron-tensorflow/blob/master/text/korean.py -import re - -from TTS.tts.utils.text.korean.ko_dictionary import english_dictionary, etc_dictionary - - -def normalize(text): - text = text.strip() - text = re.sub("[⺀-⺙⺛-⻳⼀-⿕々〇〡-〩〸-〺〻㐀-䶵一-鿃豈-鶴侮-頻並-龎]", "", text) - text = normalize_with_dictionary(text, etc_dictionary) - text = normalize_english(text) - text = text.lower() - return text - - -def normalize_with_dictionary(text, dic): - if any(key in text for key in dic.keys()): - pattern = re.compile("|".join(re.escape(key) for key in dic.keys())) - return pattern.sub(lambda x: dic[x.group()], text) - return text - - -def normalize_english(text): - def fn(m): - word = m.group() - if word in english_dictionary: - return english_dictionary.get(word) - return word - - text = re.sub("([A-Za-z]+)", fn, text) - return text diff --git a/TTS/tts/utils/text/korean/phonemizer.py b/TTS/tts/utils/text/korean/phonemizer.py deleted file mode 100644 index ed70fc35f6950b98ec715577a3303c5a271fbb0e..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/korean/phonemizer.py +++ /dev/null @@ -1,36 +0,0 @@ -from jamo import hangul_to_jamo - -from TTS.tts.utils.text.korean.korean import normalize - -g2p = None - - -def korean_text_to_phonemes(text, character: str = "hangeul") -> str: - """ - - The input and output values look the same, but they are different in Unicode. - - example : - - input = '하늘' (Unicode : \ud558\ub298), (하 + 늘) - output = '하늘' (Unicode :\u1112\u1161\u1102\u1173\u11af), (ᄒ + ᅡ + ᄂ + ᅳ + ᆯ) - - """ - global g2p # pylint: disable=global-statement - if g2p is None: - from g2pkk import G2p - - g2p = G2p() - - if character == "english": - from anyascii import anyascii - - text = normalize(text) - text = g2p(text) - text = anyascii(text) - return text - - text = normalize(text) - text = g2p(text) - text = list(hangul_to_jamo(text)) # '하늘' --> ['ᄒ', 'ᅡ', 'ᄂ', 'ᅳ', 'ᆯ'] - return "".join(text) diff --git a/TTS/tts/utils/text/phonemizers/__init__.py b/TTS/tts/utils/text/phonemizers/__init__.py deleted file mode 100644 index dbc087367b41a05756bf47944b0e44d74dd2fd9e..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/phonemizers/__init__.py +++ /dev/null @@ -1,75 +0,0 @@ -from TTS.tts.utils.text.phonemizers.bangla_phonemizer import BN_Phonemizer -from TTS.tts.utils.text.phonemizers.base import BasePhonemizer -from TTS.tts.utils.text.phonemizers.espeak_wrapper import ESpeak -from TTS.tts.utils.text.phonemizers.gruut_wrapper import Gruut -from TTS.tts.utils.text.phonemizers.ko_kr_phonemizer import KO_KR_Phonemizer -from TTS.tts.utils.text.phonemizers.zh_cn_phonemizer import ZH_CN_Phonemizer - -try: - from TTS.tts.utils.text.phonemizers.ja_jp_phonemizer import JA_JP_Phonemizer -except ImportError: - JA_JP_Phonemizer = None - pass - -PHONEMIZERS = {b.name(): b for b in (ESpeak, Gruut, KO_KR_Phonemizer, BN_Phonemizer)} - - -ESPEAK_LANGS = list(ESpeak.supported_languages().keys()) -GRUUT_LANGS = list(Gruut.supported_languages()) - - -# Dict setting default phonemizers for each language -# Add Gruut languages -_ = [Gruut.name()] * len(GRUUT_LANGS) -DEF_LANG_TO_PHONEMIZER = dict(list(zip(GRUUT_LANGS, _))) - - -# Add ESpeak languages and override any existing ones -_ = [ESpeak.name()] * len(ESPEAK_LANGS) -_new_dict = dict(list(zip(list(ESPEAK_LANGS), _))) -DEF_LANG_TO_PHONEMIZER.update(_new_dict) - - -# Force default for some languages -DEF_LANG_TO_PHONEMIZER["en"] = DEF_LANG_TO_PHONEMIZER["en-us"] -DEF_LANG_TO_PHONEMIZER["zh-cn"] = ZH_CN_Phonemizer.name() -DEF_LANG_TO_PHONEMIZER["ko-kr"] = KO_KR_Phonemizer.name() -DEF_LANG_TO_PHONEMIZER["bn"] = BN_Phonemizer.name() - - -# JA phonemizer has deal breaking dependencies like MeCab for some systems. -# So we only have it when we have it. -if JA_JP_Phonemizer is not None: - PHONEMIZERS[JA_JP_Phonemizer.name()] = JA_JP_Phonemizer - DEF_LANG_TO_PHONEMIZER["ja-jp"] = JA_JP_Phonemizer.name() - - -def get_phonemizer_by_name(name: str, **kwargs) -> BasePhonemizer: - """Initiate a phonemizer by name - - Args: - name (str): - Name of the phonemizer that should match `phonemizer.name()`. - - kwargs (dict): - Extra keyword arguments that should be passed to the phonemizer. - """ - if name == "espeak": - return ESpeak(**kwargs) - if name == "gruut": - return Gruut(**kwargs) - if name == "zh_cn_phonemizer": - return ZH_CN_Phonemizer(**kwargs) - if name == "ja_jp_phonemizer": - if JA_JP_Phonemizer is None: - raise ValueError(" ❗ You need to install JA phonemizer dependencies. Try `pip install TTS[ja]`.") - return JA_JP_Phonemizer(**kwargs) - if name == "ko_kr_phonemizer": - return KO_KR_Phonemizer(**kwargs) - if name == "bn_phonemizer": - return BN_Phonemizer(**kwargs) - raise ValueError(f"Phonemizer {name} not found") - - -if __name__ == "__main__": - print(DEF_LANG_TO_PHONEMIZER) diff --git a/TTS/tts/utils/text/phonemizers/bangla_phonemizer.py b/TTS/tts/utils/text/phonemizers/bangla_phonemizer.py deleted file mode 100644 index 3c4a35bbfa4fc63a7cbb2a2caa152ef59b4afa63..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/phonemizers/bangla_phonemizer.py +++ /dev/null @@ -1,62 +0,0 @@ -from typing import Dict - -from TTS.tts.utils.text.bangla.phonemizer import bangla_text_to_phonemes -from TTS.tts.utils.text.phonemizers.base import BasePhonemizer - -_DEF_ZH_PUNCS = "、.,[]()?!〽~『』「」【】" - - -class BN_Phonemizer(BasePhonemizer): - """🐸TTS bn phonemizer using functions in `TTS.tts.utils.text.bangla.phonemizer` - - Args: - punctuations (str): - Set of characters to be treated as punctuation. Defaults to `_DEF_ZH_PUNCS`. - - keep_puncs (bool): - If True, keep the punctuations after phonemization. Defaults to False. - - Example :: - - "这是,样本中文。" -> `d|ʒ|ø|4| |ʂ|ʏ|4| |,| |i|ɑ|ŋ|4|b|œ|n|3| |d|ʒ|o|ŋ|1|w|œ|n|2| |。` - - TODO: someone with Bangla knowledge should check this implementation - """ - - language = "bn" - - def __init__(self, punctuations=_DEF_ZH_PUNCS, keep_puncs=False, **kwargs): # pylint: disable=unused-argument - super().__init__(self.language, punctuations=punctuations, keep_puncs=keep_puncs) - - @staticmethod - def name(): - return "bn_phonemizer" - - @staticmethod - def phonemize_bn(text: str, separator: str = "|") -> str: # pylint: disable=unused-argument - ph = bangla_text_to_phonemes(text) - return ph - - def _phonemize(self, text, separator): - return self.phonemize_bn(text, separator) - - @staticmethod - def supported_languages() -> Dict: - return {"bn": "Bangla"} - - def version(self) -> str: - return "0.0.1" - - def is_available(self) -> bool: - return True - - -if __name__ == "__main__": - txt = "রাসূলুল্লাহ সাল্লাল্লাহু আলাইহি ওয়া সাল্লাম শিক্ষা দিয়েছেন যে, কেউ যদি কোন খারাপ কিছুর সম্মুখীন হয়, তখনও যেন বলে." - e = BN_Phonemizer() - print(e.supported_languages()) - print(e.version()) - print(e.language) - print(e.name()) - print(e.is_available()) - print("`" + e.phonemize(txt) + "`") diff --git a/TTS/tts/utils/text/phonemizers/base.py b/TTS/tts/utils/text/phonemizers/base.py deleted file mode 100644 index 4fc79874159aad40ce27f34671907a25d7e39a94..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/phonemizers/base.py +++ /dev/null @@ -1,140 +0,0 @@ -import abc -from typing import List, Tuple - -from TTS.tts.utils.text.punctuation import Punctuation - - -class BasePhonemizer(abc.ABC): - """Base phonemizer class - - Phonemization follows the following steps: - 1. Preprocessing: - - remove empty lines - - remove punctuation - - keep track of punctuation marks - - 2. Phonemization: - - convert text to phonemes - - 3. Postprocessing: - - join phonemes - - restore punctuation marks - - Args: - language (str): - Language used by the phonemizer. - - punctuations (List[str]): - List of punctuation marks to be preserved. - - keep_puncs (bool): - Whether to preserve punctuation marks or not. - """ - - def __init__(self, language, punctuations=Punctuation.default_puncs(), keep_puncs=False): - # ensure the backend is installed on the system - if not self.is_available(): - raise RuntimeError("{} not installed on your system".format(self.name())) # pragma: nocover - - # ensure the backend support the requested language - self._language = self._init_language(language) - - # setup punctuation processing - self._keep_puncs = keep_puncs - self._punctuator = Punctuation(punctuations) - - def _init_language(self, language): - """Language initialization - - This method may be overloaded in child classes (see Segments backend) - - """ - if not self.is_supported_language(language): - raise RuntimeError(f'language "{language}" is not supported by the ' f"{self.name()} backend") - return language - - @property - def language(self): - """The language code configured to be used for phonemization""" - return self._language - - @staticmethod - @abc.abstractmethod - def name(): - """The name of the backend""" - ... - - @classmethod - @abc.abstractmethod - def is_available(cls): - """Returns True if the backend is installed, False otherwise""" - ... - - @classmethod - @abc.abstractmethod - def version(cls): - """Return the backend version as a tuple (major, minor, patch)""" - ... - - @staticmethod - @abc.abstractmethod - def supported_languages(): - """Return a dict of language codes -> name supported by the backend""" - ... - - def is_supported_language(self, language): - """Returns True if `language` is supported by the backend""" - return language in self.supported_languages() - - @abc.abstractmethod - def _phonemize(self, text, separator): - """The main phonemization method""" - - def _phonemize_preprocess(self, text) -> Tuple[List[str], List]: - """Preprocess the text before phonemization - - 1. remove spaces - 2. remove punctuation - - Override this if you need a different behaviour - """ - text = text.strip() - if self._keep_puncs: - # a tuple (text, punctuation marks) - return self._punctuator.strip_to_restore(text) - return [self._punctuator.strip(text)], [] - - def _phonemize_postprocess(self, phonemized, punctuations) -> str: - """Postprocess the raw phonemized output - - Override this if you need a different behaviour - """ - if self._keep_puncs: - return self._punctuator.restore(phonemized, punctuations)[0] - return phonemized[0] - - def phonemize(self, text: str, separator="|", language: str = None) -> str: # pylint: disable=unused-argument - """Returns the `text` phonemized for the given language - - Args: - text (str): - Text to be phonemized. - - separator (str): - string separator used between phonemes. Default to '_'. - - Returns: - (str): Phonemized text - """ - text, punctuations = self._phonemize_preprocess(text) - phonemized = [] - for t in text: - p = self._phonemize(t, separator) - phonemized.append(p) - phonemized = self._phonemize_postprocess(phonemized, punctuations) - return phonemized - - def print_logs(self, level: int = 0): - indent = "\t" * level - print(f"{indent}| > phoneme language: {self.language}") - print(f"{indent}| > phoneme backend: {self.name()}") diff --git a/TTS/tts/utils/text/phonemizers/espeak_wrapper.py b/TTS/tts/utils/text/phonemizers/espeak_wrapper.py deleted file mode 100644 index 8982a893779495cc4d8187040546706fdcc9d11b..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/phonemizers/espeak_wrapper.py +++ /dev/null @@ -1,268 +0,0 @@ -import logging -import re -import subprocess -from typing import Dict, List - -from packaging.version import Version - -from TTS.tts.utils.text.phonemizers.base import BasePhonemizer -from TTS.tts.utils.text.punctuation import Punctuation - - -def is_tool(name): - from shutil import which - - return which(name) is not None - - -# Use a regex pattern to match the espeak version, because it may be -# symlinked to espeak-ng, which moves the version bits to another spot. -espeak_version_pattern = re.compile(r"text-to-speech:\s(?P\d+\.\d+(\.\d+)?)") - - -def get_espeak_version(): - output = subprocess.getoutput("espeak --version") - match = espeak_version_pattern.search(output) - - return match.group("version") - - -def get_espeakng_version(): - output = subprocess.getoutput("espeak-ng --version") - return output.split()[3] - - -# priority: espeakng > espeak -if is_tool("espeak-ng"): - _DEF_ESPEAK_LIB = "espeak-ng" - _DEF_ESPEAK_VER = get_espeakng_version() -elif is_tool("espeak"): - _DEF_ESPEAK_LIB = "espeak" - _DEF_ESPEAK_VER = get_espeak_version() -else: - _DEF_ESPEAK_LIB = None - _DEF_ESPEAK_VER = None - - -def _espeak_exe(espeak_lib: str, args: List, sync=False) -> List[str]: - """Run espeak with the given arguments.""" - cmd = [ - espeak_lib, - "-q", - "-b", - "1", # UTF8 text encoding - ] - cmd.extend(args) - logging.debug("espeakng: executing %s", repr(cmd)) - - with subprocess.Popen( - cmd, - stdout=subprocess.PIPE, - stderr=subprocess.STDOUT, - ) as p: - res = iter(p.stdout.readline, b"") - if not sync: - p.stdout.close() - if p.stderr: - p.stderr.close() - if p.stdin: - p.stdin.close() - return res - res2 = [] - for line in res: - res2.append(line) - p.stdout.close() - if p.stderr: - p.stderr.close() - if p.stdin: - p.stdin.close() - p.wait() - return res2 - - -class ESpeak(BasePhonemizer): - """ESpeak wrapper calling `espeak` or `espeak-ng` from the command-line the perform G2P - - Args: - language (str): - Valid language code for the used backend. - - backend (str): - Name of the backend library to use. `espeak` or `espeak-ng`. If None, set automatically - prefering `espeak-ng` over `espeak`. Defaults to None. - - punctuations (str): - Characters to be treated as punctuation. Defaults to Punctuation.default_puncs(). - - keep_puncs (bool): - If True, keep the punctuations after phonemization. Defaults to True. - - Example: - - >>> from TTS.tts.utils.text.phonemizers import ESpeak - >>> phonemizer = ESpeak("tr") - >>> phonemizer.phonemize("Bu Türkçe, bir örnektir.", separator="|") - 'b|ʊ t|ˈø|r|k|tʃ|ɛ, b|ɪ|r œ|r|n|ˈɛ|c|t|ɪ|r.' - - """ - - _ESPEAK_LIB = _DEF_ESPEAK_LIB - _ESPEAK_VER = _DEF_ESPEAK_VER - - def __init__(self, language: str, backend=None, punctuations=Punctuation.default_puncs(), keep_puncs=True): - if self._ESPEAK_LIB is None: - raise Exception(" [!] No espeak backend found. Install espeak-ng or espeak to your system.") - self.backend = self._ESPEAK_LIB - - # band-aid for backwards compatibility - if language == "en": - language = "en-us" - if language == "zh-cn": - language = "cmn" - - super().__init__(language, punctuations=punctuations, keep_puncs=keep_puncs) - if backend is not None: - self.backend = backend - - @property - def backend(self): - return self._ESPEAK_LIB - - @property - def backend_version(self): - return self._ESPEAK_VER - - @backend.setter - def backend(self, backend): - if backend not in ["espeak", "espeak-ng"]: - raise Exception("Unknown backend: %s" % backend) - self._ESPEAK_LIB = backend - self._ESPEAK_VER = get_espeakng_version() if backend == "espeak-ng" else get_espeak_version() - - def auto_set_espeak_lib(self) -> None: - if is_tool("espeak-ng"): - self._ESPEAK_LIB = "espeak-ng" - self._ESPEAK_VER = get_espeakng_version() - elif is_tool("espeak"): - self._ESPEAK_LIB = "espeak" - self._ESPEAK_VER = get_espeak_version() - else: - raise Exception("Cannot set backend automatically. espeak-ng or espeak not found") - - @staticmethod - def name(): - return "espeak" - - def phonemize_espeak(self, text: str, separator: str = "|", tie=False) -> str: - """Convert input text to phonemes. - - Args: - text (str): - Text to be converted to phonemes. - - tie (bool, optional) : When True use a '͡' character between - consecutive characters of a single phoneme. Else separate phoneme - with '_'. This option requires espeak>=1.49. Default to False. - """ - # set arguments - args = ["-v", f"{self._language}"] - # espeak and espeak-ng parses `ipa` differently - if tie: - # use '͡' between phonemes - if self.backend == "espeak": - args.append("--ipa=1") - else: - args.append("--ipa=3") - else: - # split with '_' - if self.backend == "espeak": - if Version(self.backend_version) >= Version("1.48.15"): - args.append("--ipa=1") - else: - args.append("--ipa=3") - else: - args.append("--ipa=1") - if tie: - args.append("--tie=%s" % tie) - - args.append('"' + text + '"') - # compute phonemes - phonemes = "" - for line in _espeak_exe(self._ESPEAK_LIB, args, sync=True): - logging.debug("line: %s", repr(line)) - ph_decoded = line.decode("utf8").strip() - # espeak need to skip first two characters of the retuned text: - # version 1.48.03: "_ p_ɹ_ˈaɪ_ɚ t_ə n_oʊ_v_ˈɛ_m_b_ɚ t_w_ˈɛ_n_t_i t_ˈuː\n" - # version 1.48.15: " p_ɹ_ˈaɪ_ɚ t_ə n_oʊ_v_ˈɛ_m_b_ɚ t_w_ˈɛ_n_t_i t_ˈuː\n" - # espeak-ng need to skip the first character of the retuned text: - # "_p_ɹ_ˈaɪ_ɚ t_ə n_oʊ_v_ˈɛ_m_b_ɚ t_w_ˈɛ_n_t_i t_ˈuː\n" - - # dealing with the conditions descrived above - ph_decoded = ph_decoded[:1].replace("_", "") + ph_decoded[1:] - - # espeak-ng backend can add language flags that need to be removed: - # "sɛʁtˈɛ̃ mˈo kɔm (en)fˈʊtbɔːl(fr) ʒenˈɛʁ de- flˈaɡ də- lˈɑ̃ɡ." - # phonemize needs to remove the language flags of the returned text: - # "sɛʁtˈɛ̃ mˈo kɔm fˈʊtbɔːl ʒenˈɛʁ de- flˈaɡ də- lˈɑ̃ɡ." - ph_decoded = re.sub(r"\(.+?\)", "", ph_decoded) - - phonemes += ph_decoded.strip() - return phonemes.replace("_", separator) - - def _phonemize(self, text, separator=None): - return self.phonemize_espeak(text, separator, tie=False) - - @staticmethod - def supported_languages() -> Dict: - """Get a dictionary of supported languages. - - Returns: - Dict: Dictionary of language codes. - """ - if _DEF_ESPEAK_LIB is None: - return {} - args = ["--voices"] - langs = {} - count = 0 - for line in _espeak_exe(_DEF_ESPEAK_LIB, args, sync=True): - line = line.decode("utf8").strip() - if count > 0: - cols = line.split() - lang_code = cols[1] - lang_name = cols[3] - langs[lang_code] = lang_name - logging.debug("line: %s", repr(line)) - count += 1 - return langs - - def version(self) -> str: - """Get the version of the used backend. - - Returns: - str: Version of the used backend. - """ - args = ["--version"] - for line in _espeak_exe(self.backend, args, sync=True): - version = line.decode("utf8").strip().split()[2] - logging.debug("line: %s", repr(line)) - return version - - @classmethod - def is_available(cls): - """Return true if ESpeak is available else false""" - return is_tool("espeak") or is_tool("espeak-ng") - - -if __name__ == "__main__": - e = ESpeak(language="en-us") - print(e.supported_languages()) - print(e.version()) - print(e.language) - print(e.name()) - print(e.is_available()) - - e = ESpeak(language="en-us", keep_puncs=False) - print("`" + e.phonemize("hello how are you today?") + "`") - - e = ESpeak(language="en-us", keep_puncs=True) - print("`" + e.phonemize("hello how are you today?") + "`") diff --git a/TTS/tts/utils/text/phonemizers/gruut_wrapper.py b/TTS/tts/utils/text/phonemizers/gruut_wrapper.py deleted file mode 100644 index f3e9c9abd4c41935ed07ec10ed883d75b42a6bc8..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/phonemizers/gruut_wrapper.py +++ /dev/null @@ -1,151 +0,0 @@ -import importlib -from typing import List - -import gruut -from gruut_ipa import IPA - -from TTS.tts.utils.text.phonemizers.base import BasePhonemizer -from TTS.tts.utils.text.punctuation import Punctuation - -# Table for str.translate to fix gruut/TTS phoneme mismatch -GRUUT_TRANS_TABLE = str.maketrans("g", "ɡ") - - -class Gruut(BasePhonemizer): - """Gruut wrapper for G2P - - Args: - language (str): - Valid language code for the used backend. - - punctuations (str): - Characters to be treated as punctuation. Defaults to `Punctuation.default_puncs()`. - - keep_puncs (bool): - If true, keep the punctuations after phonemization. Defaults to True. - - use_espeak_phonemes (bool): - If true, use espeak lexicons instead of default Gruut lexicons. Defaults to False. - - keep_stress (bool): - If true, keep the stress characters after phonemization. Defaults to False. - - Example: - - >>> from TTS.tts.utils.text.phonemizers.gruut_wrapper import Gruut - >>> phonemizer = Gruut('en-us') - >>> phonemizer.phonemize("Be a voice, not an! echo?", separator="|") - 'b|i| ə| v|ɔ|ɪ|s, n|ɑ|t| ə|n! ɛ|k|o|ʊ?' - """ - - def __init__( - self, - language: str, - punctuations=Punctuation.default_puncs(), - keep_puncs=True, - use_espeak_phonemes=False, - keep_stress=False, - ): - super().__init__(language, punctuations=punctuations, keep_puncs=keep_puncs) - self.use_espeak_phonemes = use_espeak_phonemes - self.keep_stress = keep_stress - - @staticmethod - def name(): - return "gruut" - - def phonemize_gruut(self, text: str, separator: str = "|", tie=False) -> str: # pylint: disable=unused-argument - """Convert input text to phonemes. - - Gruut phonemizes the given `str` by seperating each phoneme character with `separator`, even for characters - that constitude a single sound. - - It doesn't affect 🐸TTS since it individually converts each character to token IDs. - - Examples:: - "hello how are you today?" -> `h|ɛ|l|o|ʊ| h|a|ʊ| ɑ|ɹ| j|u| t|ə|d|e|ɪ` - - Args: - text (str): - Text to be converted to phonemes. - - tie (bool, optional) : When True use a '͡' character between - consecutive characters of a single phoneme. Else separate phoneme - with '_'. This option requires espeak>=1.49. Default to False. - """ - ph_list = [] - for sentence in gruut.sentences(text, lang=self.language, espeak=self.use_espeak_phonemes): - for word in sentence: - if word.is_break: - # Use actual character for break phoneme (e.g., comma) - if ph_list: - # Join with previous word - ph_list[-1].append(word.text) - else: - # First word is punctuation - ph_list.append([word.text]) - elif word.phonemes: - # Add phonemes for word - word_phonemes = [] - - for word_phoneme in word.phonemes: - if not self.keep_stress: - # Remove primary/secondary stress - word_phoneme = IPA.without_stress(word_phoneme) - - word_phoneme = word_phoneme.translate(GRUUT_TRANS_TABLE) - - if word_phoneme: - # Flatten phonemes - word_phonemes.extend(word_phoneme) - - if word_phonemes: - ph_list.append(word_phonemes) - - ph_words = [separator.join(word_phonemes) for word_phonemes in ph_list] - ph = f"{separator} ".join(ph_words) - return ph - - def _phonemize(self, text, separator): - return self.phonemize_gruut(text, separator, tie=False) - - def is_supported_language(self, language): - """Returns True if `language` is supported by the backend""" - return gruut.is_language_supported(language) - - @staticmethod - def supported_languages() -> List: - """Get a dictionary of supported languages. - - Returns: - List: List of language codes. - """ - return list(gruut.get_supported_languages()) - - def version(self): - """Get the version of the used backend. - - Returns: - str: Version of the used backend. - """ - return gruut.__version__ - - @classmethod - def is_available(cls): - """Return true if ESpeak is available else false""" - return importlib.util.find_spec("gruut") is not None - - -if __name__ == "__main__": - e = Gruut(language="en-us") - print(e.supported_languages()) - print(e.version()) - print(e.language) - print(e.name()) - print(e.is_available()) - - e = Gruut(language="en-us", keep_puncs=False) - print("`" + e.phonemize("hello how are you today?") + "`") - - e = Gruut(language="en-us", keep_puncs=True) - print("`" + e.phonemize("hello how, are you today?") + "`") diff --git a/TTS/tts/utils/text/phonemizers/ja_jp_phonemizer.py b/TTS/tts/utils/text/phonemizers/ja_jp_phonemizer.py deleted file mode 100644 index 878e5e52969f740ae74d875c91294666095e89ac..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/phonemizers/ja_jp_phonemizer.py +++ /dev/null @@ -1,72 +0,0 @@ -from typing import Dict - -from TTS.tts.utils.text.japanese.phonemizer import japanese_text_to_phonemes -from TTS.tts.utils.text.phonemizers.base import BasePhonemizer - -_DEF_JA_PUNCS = "、.,[]()?!〽~『』「」【】" - -_TRANS_TABLE = {"、": ","} - - -def trans(text): - for i, j in _TRANS_TABLE.items(): - text = text.replace(i, j) - return text - - -class JA_JP_Phonemizer(BasePhonemizer): - """🐸TTS Ja-Jp phonemizer using functions in `TTS.tts.utils.text.japanese.phonemizer` - - TODO: someone with JA knowledge should check this implementation - - Example: - - >>> from TTS.tts.utils.text.phonemizers import JA_JP_Phonemizer - >>> phonemizer = JA_JP_Phonemizer() - >>> phonemizer.phonemize("どちらに行きますか?", separator="|") - 'd|o|c|h|i|r|a|n|i|i|k|i|m|a|s|u|k|a|?' - - """ - - language = "ja-jp" - - def __init__(self, punctuations=_DEF_JA_PUNCS, keep_puncs=True, **kwargs): # pylint: disable=unused-argument - super().__init__(self.language, punctuations=punctuations, keep_puncs=keep_puncs) - - @staticmethod - def name(): - return "ja_jp_phonemizer" - - def _phonemize(self, text: str, separator: str = "|") -> str: - ph = japanese_text_to_phonemes(text) - if separator is not None or separator != "": - return separator.join(ph) - return ph - - def phonemize(self, text: str, separator="|", language=None) -> str: - """Custom phonemize for JP_JA - - Skip pre-post processing steps used by the other phonemizers. - """ - return self._phonemize(text, separator) - - @staticmethod - def supported_languages() -> Dict: - return {"ja-jp": "Japanese (Japan)"} - - def version(self) -> str: - return "0.0.1" - - def is_available(self) -> bool: - return True - - -# if __name__ == "__main__": -# text = "これは、電話をかけるための私の日本語の例のテキストです。" -# e = JA_JP_Phonemizer() -# print(e.supported_languages()) -# print(e.version()) -# print(e.language) -# print(e.name()) -# print(e.is_available()) -# print("`" + e.phonemize(text) + "`") diff --git a/TTS/tts/utils/text/phonemizers/ko_kr_phonemizer.py b/TTS/tts/utils/text/phonemizers/ko_kr_phonemizer.py deleted file mode 100644 index 84f24c75ca9eca094e3bc2bf36fc93b56812b59f..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/phonemizers/ko_kr_phonemizer.py +++ /dev/null @@ -1,65 +0,0 @@ -from typing import Dict - -from TTS.tts.utils.text.korean.phonemizer import korean_text_to_phonemes -from TTS.tts.utils.text.phonemizers.base import BasePhonemizer - -_DEF_KO_PUNCS = "、.,[]()?!〽~『』「」【】" - - -class KO_KR_Phonemizer(BasePhonemizer): - """🐸TTS ko_kr_phonemizer using functions in `TTS.tts.utils.text.korean.phonemizer` - - TODO: Add Korean to character (ᄀᄁᄂᄃᄄᄅᄆᄇᄈᄉᄊᄋᄌᄍᄎᄏᄐᄑ하ᅢᅣᅤᅥᅦᅧᅨᅩᅪᅫᅬᅭᅮᅯᅰᅱᅲᅳᅴᅵᆨᆩᆪᆫᆬᆭᆮᆯᆰᆱᆲᆳᆴᆵᆶᆷᆸᆹᆺᆻᆼᆽᆾᆿᇀᇁᇂ) - - Example: - - >>> from TTS.tts.utils.text.phonemizers import KO_KR_Phonemizer - >>> phonemizer = KO_KR_Phonemizer() - >>> phonemizer.phonemize("이 문장은 음성합성 테스트를 위한 문장입니다.", separator="|") - 'ᄋ|ᅵ| |ᄆ|ᅮ|ᆫ|ᄌ|ᅡ|ᆼ|ᄋ|ᅳ| |ᄂ|ᅳ|ᆷ|ᄉ|ᅥ|ᆼ|ᄒ|ᅡ|ᆸ|ᄊ|ᅥ|ᆼ| |ᄐ|ᅦ|ᄉ|ᅳ|ᄐ|ᅳ|ᄅ|ᅳ| |ᄅ|ᅱ|ᄒ|ᅡ|ᆫ| |ᄆ|ᅮ|ᆫ|ᄌ|ᅡ|ᆼ|ᄋ|ᅵ|ᆷ|ᄂ|ᅵ|ᄃ|ᅡ|.' - - >>> from TTS.tts.utils.text.phonemizers import KO_KR_Phonemizer - >>> phonemizer = KO_KR_Phonemizer() - >>> phonemizer.phonemize("이 문장은 음성합성 테스트를 위한 문장입니다.", separator="|", character='english') - 'I| |M|u|n|J|a|n|g|E|u| |N|e|u|m|S|e|o|n|g|H|a|b|S|s|e|o|n|g| |T|e|S|e|u|T|e|u|L|e|u| |L|w|i|H|a|n| |M|u|n|J|a|n|g|I|m|N|i|D|a|.' - - """ - - language = "ko-kr" - - def __init__(self, punctuations=_DEF_KO_PUNCS, keep_puncs=True, **kwargs): # pylint: disable=unused-argument - super().__init__(self.language, punctuations=punctuations, keep_puncs=keep_puncs) - - @staticmethod - def name(): - return "ko_kr_phonemizer" - - def _phonemize(self, text: str, separator: str = "", character: str = "hangeul") -> str: - ph = korean_text_to_phonemes(text, character=character) - if separator is not None or separator != "": - return separator.join(ph) - return ph - - def phonemize(self, text: str, separator: str = "", character: str = "hangeul", language=None) -> str: - return self._phonemize(text, separator, character) - - @staticmethod - def supported_languages() -> Dict: - return {"ko-kr": "hangeul(korean)"} - - def version(self) -> str: - return "0.0.2" - - def is_available(self) -> bool: - return True - - -if __name__ == "__main__": - texts = "이 문장은 음성합성 테스트를 위한 문장입니다." - e = KO_KR_Phonemizer() - print(e.supported_languages()) - print(e.version()) - print(e.language) - print(e.name()) - print(e.is_available()) - print(e.phonemize(texts)) diff --git a/TTS/tts/utils/text/phonemizers/multi_phonemizer.py b/TTS/tts/utils/text/phonemizers/multi_phonemizer.py deleted file mode 100644 index 62a9c39322e051124d8c2d816cbc7d479df69dfe..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/phonemizers/multi_phonemizer.py +++ /dev/null @@ -1,65 +0,0 @@ -from typing import Dict, List - -from TTS.tts.utils.text.phonemizers import DEF_LANG_TO_PHONEMIZER, get_phonemizer_by_name - - -class MultiPhonemizer: - """🐸TTS multi-phonemizer that operates phonemizers for multiple langugages - - Args: - custom_lang_to_phonemizer (Dict): - Custom phonemizer mapping if you want to change the defaults. In the format of - `{"lang_code", "phonemizer_name"}`. When it is None, `DEF_LANG_TO_PHONEMIZER` is used. Defaults to `{}`. - - TODO: find a way to pass custom kwargs to the phonemizers - """ - - lang_to_phonemizer = {} - - def __init__(self, lang_to_phonemizer_name: Dict = {}) -> None: # pylint: disable=dangerous-default-value - for k, v in lang_to_phonemizer_name.items(): - if v == "" and k in DEF_LANG_TO_PHONEMIZER.keys(): - lang_to_phonemizer_name[k] = DEF_LANG_TO_PHONEMIZER[k] - elif v == "": - raise ValueError(f"Phonemizer wasn't set for language {k} and doesn't have a default.") - self.lang_to_phonemizer_name = lang_to_phonemizer_name - self.lang_to_phonemizer = self.init_phonemizers(self.lang_to_phonemizer_name) - - @staticmethod - def init_phonemizers(lang_to_phonemizer_name: Dict) -> Dict: - lang_to_phonemizer = {} - for k, v in lang_to_phonemizer_name.items(): - lang_to_phonemizer[k] = get_phonemizer_by_name(v, language=k) - return lang_to_phonemizer - - @staticmethod - def name(): - return "multi-phonemizer" - - def phonemize(self, text, separator="|", language=""): - if language == "": - raise ValueError("Language must be set for multi-phonemizer to phonemize.") - return self.lang_to_phonemizer[language].phonemize(text, separator) - - def supported_languages(self) -> List: - return list(self.lang_to_phonemizer.keys()) - - def print_logs(self, level: int = 0): - indent = "\t" * level - print(f"{indent}| > phoneme language: {self.supported_languages()}") - print(f"{indent}| > phoneme backend: {self.name()}") - - -# if __name__ == "__main__": -# texts = { -# "tr": "Merhaba, bu Türkçe bit örnek!", -# "en-us": "Hello, this is English example!", -# "de": "Hallo, das ist ein Deutches Beipiel!", -# "zh-cn": "这是中国的例子", -# } -# phonemes = {} -# ph = MultiPhonemizer({"tr": "espeak", "en-us": "", "de": "gruut", "zh-cn": ""}) -# for lang, text in texts.items(): -# phoneme = ph.phonemize(text, lang) -# phonemes[lang] = phoneme -# print(phonemes) diff --git a/TTS/tts/utils/text/phonemizers/zh_cn_phonemizer.py b/TTS/tts/utils/text/phonemizers/zh_cn_phonemizer.py deleted file mode 100644 index 41480c417356fd941e71e3eff0099eb38ac7296a..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/phonemizers/zh_cn_phonemizer.py +++ /dev/null @@ -1,62 +0,0 @@ -from typing import Dict - -from TTS.tts.utils.text.chinese_mandarin.phonemizer import chinese_text_to_phonemes -from TTS.tts.utils.text.phonemizers.base import BasePhonemizer - -_DEF_ZH_PUNCS = "、.,[]()?!〽~『』「」【】" - - -class ZH_CN_Phonemizer(BasePhonemizer): - """🐸TTS Zh-Cn phonemizer using functions in `TTS.tts.utils.text.chinese_mandarin.phonemizer` - - Args: - punctuations (str): - Set of characters to be treated as punctuation. Defaults to `_DEF_ZH_PUNCS`. - - keep_puncs (bool): - If True, keep the punctuations after phonemization. Defaults to False. - - Example :: - - "这是,样本中文。" -> `d|ʒ|ø|4| |ʂ|ʏ|4| |,| |i|ɑ|ŋ|4|b|œ|n|3| |d|ʒ|o|ŋ|1|w|œ|n|2| |。` - - TODO: someone with Mandarin knowledge should check this implementation - """ - - language = "zh-cn" - - def __init__(self, punctuations=_DEF_ZH_PUNCS, keep_puncs=False, **kwargs): # pylint: disable=unused-argument - super().__init__(self.language, punctuations=punctuations, keep_puncs=keep_puncs) - - @staticmethod - def name(): - return "zh_cn_phonemizer" - - @staticmethod - def phonemize_zh_cn(text: str, separator: str = "|") -> str: - ph = chinese_text_to_phonemes(text, separator) - return ph - - def _phonemize(self, text, separator): - return self.phonemize_zh_cn(text, separator) - - @staticmethod - def supported_languages() -> Dict: - return {"zh-cn": "Chinese (China)"} - - def version(self) -> str: - return "0.0.1" - - def is_available(self) -> bool: - return True - - -# if __name__ == "__main__": -# text = "这是,样本中文。" -# e = ZH_CN_Phonemizer() -# print(e.supported_languages()) -# print(e.version()) -# print(e.language) -# print(e.name()) -# print(e.is_available()) -# print("`" + e.phonemize(text) + "`") diff --git a/TTS/tts/utils/text/punctuation.py b/TTS/tts/utils/text/punctuation.py deleted file mode 100644 index 8d199cc545b36f6089056d904fd0a03670012c4d..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/punctuation.py +++ /dev/null @@ -1,172 +0,0 @@ -import collections -import re -from enum import Enum - -import six - -_DEF_PUNCS = ';:,.!?¡¿—…"«»“”' - -_PUNC_IDX = collections.namedtuple("_punc_index", ["punc", "position"]) - - -class PuncPosition(Enum): - """Enum for the punctuations positions""" - - BEGIN = 0 - END = 1 - MIDDLE = 2 - ALONE = 3 - - -class Punctuation: - """Handle punctuations in text. - - Just strip punctuations from text or strip and restore them later. - - Args: - puncs (str): The punctuations to be processed. Defaults to `_DEF_PUNCS`. - - Example: - >>> punc = Punctuation() - >>> punc.strip("This is. example !") - 'This is example' - - >>> text_striped, punc_map = punc.strip_to_restore("This is. example !") - >>> ' '.join(text_striped) - 'This is example' - - >>> text_restored = punc.restore(text_striped, punc_map) - >>> text_restored[0] - 'This is. example !' - """ - - def __init__(self, puncs: str = _DEF_PUNCS): - self.puncs = puncs - - @staticmethod - def default_puncs(): - """Return default set of punctuations.""" - return _DEF_PUNCS - - @property - def puncs(self): - return self._puncs - - @puncs.setter - def puncs(self, value): - if not isinstance(value, six.string_types): - raise ValueError("[!] Punctuations must be of type str.") - self._puncs = "".join(list(dict.fromkeys(list(value)))) # remove duplicates without changing the oreder - self.puncs_regular_exp = re.compile(rf"(\s*[{re.escape(self._puncs)}]+\s*)+") - - def strip(self, text): - """Remove all the punctuations by replacing with `space`. - - Args: - text (str): The text to be processed. - - Example:: - - "This is. example !" -> "This is example " - """ - return re.sub(self.puncs_regular_exp, " ", text).rstrip().lstrip() - - def strip_to_restore(self, text): - """Remove punctuations from text to restore them later. - - Args: - text (str): The text to be processed. - - Examples :: - - "This is. example !" -> [["This is", "example"], [".", "!"]] - - """ - text, puncs = self._strip_to_restore(text) - return text, puncs - - def _strip_to_restore(self, text): - """Auxiliary method for Punctuation.preserve()""" - matches = list(re.finditer(self.puncs_regular_exp, text)) - if not matches: - return [text], [] - # the text is only punctuations - if len(matches) == 1 and matches[0].group() == text: - return [], [_PUNC_IDX(text, PuncPosition.ALONE)] - # build a punctuation map to be used later to restore punctuations - puncs = [] - for match in matches: - position = PuncPosition.MIDDLE - if match == matches[0] and text.startswith(match.group()): - position = PuncPosition.BEGIN - elif match == matches[-1] and text.endswith(match.group()): - position = PuncPosition.END - puncs.append(_PUNC_IDX(match.group(), position)) - # convert str text to a List[str], each item is separated by a punctuation - splitted_text = [] - for idx, punc in enumerate(puncs): - split = text.split(punc.punc) - prefix, suffix = split[0], punc.punc.join(split[1:]) - splitted_text.append(prefix) - # if the text does not end with a punctuation, add it to the last item - if idx == len(puncs) - 1 and len(suffix) > 0: - splitted_text.append(suffix) - text = suffix - return splitted_text, puncs - - @classmethod - def restore(cls, text, puncs): - """Restore punctuation in a text. - - Args: - text (str): The text to be processed. - puncs (List[str]): The list of punctuations map to be used for restoring. - - Examples :: - - ['This is', 'example'], ['.', '!'] -> "This is. example!" - - """ - return cls._restore(text, puncs, 0) - - @classmethod - def _restore(cls, text, puncs, num): # pylint: disable=too-many-return-statements - """Auxiliary method for Punctuation.restore()""" - if not puncs: - return text - - # nothing have been phonemized, returns the puncs alone - if not text: - return ["".join(m.punc for m in puncs)] - - current = puncs[0] - - if current.position == PuncPosition.BEGIN: - return cls._restore([current.punc + text[0]] + text[1:], puncs[1:], num) - - if current.position == PuncPosition.END: - return [text[0] + current.punc] + cls._restore(text[1:], puncs[1:], num + 1) - - if current.position == PuncPosition.ALONE: - return [current.mark] + cls._restore(text, puncs[1:], num + 1) - - # POSITION == MIDDLE - if len(text) == 1: # pragma: nocover - # a corner case where the final part of an intermediate - # mark (I) has not been phonemized - return cls._restore([text[0] + current.punc], puncs[1:], num) - - return cls._restore([text[0] + current.punc + text[1]] + text[2:], puncs[1:], num) - - -# if __name__ == "__main__": -# punc = Punctuation() -# text = "This is. This is, example!" - -# print(punc.strip(text)) - -# split_text, puncs = punc.strip_to_restore(text) -# print(split_text, " ---- ", puncs) - -# restored_text = punc.restore(split_text, puncs) -# print(restored_text) diff --git a/TTS/tts/utils/text/tokenizer.py b/TTS/tts/utils/text/tokenizer.py deleted file mode 100644 index b7faf86e8a3120ee39171de0caa40bbc85614ddb..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/text/tokenizer.py +++ /dev/null @@ -1,216 +0,0 @@ -from typing import Callable, Dict, List, Union - -from TTS.tts.utils.text import cleaners -from TTS.tts.utils.text.characters import Graphemes, IPAPhonemes -from TTS.tts.utils.text.phonemizers import DEF_LANG_TO_PHONEMIZER, get_phonemizer_by_name -from TTS.tts.utils.text.phonemizers.multi_phonemizer import MultiPhonemizer -from TTS.utils.generic_utils import get_import_path, import_class - - -class TTSTokenizer: - """🐸TTS tokenizer to convert input characters to token IDs and back. - - Token IDs for OOV chars are discarded but those are stored in `self.not_found_characters` for later. - - Args: - use_phonemes (bool): - Whether to use phonemes instead of characters. Defaults to False. - - characters (Characters): - A Characters object to use for character-to-ID and ID-to-character mappings. - - text_cleaner (callable): - A function to pre-process the text before tokenization and phonemization. Defaults to None. - - phonemizer (Phonemizer): - A phonemizer object or a dict that maps language codes to phonemizer objects. Defaults to None. - - Example: - - >>> from TTS.tts.utils.text.tokenizer import TTSTokenizer - >>> tokenizer = TTSTokenizer(use_phonemes=False, characters=Graphemes()) - >>> text = "Hello world!" - >>> ids = tokenizer.text_to_ids(text) - >>> text_hat = tokenizer.ids_to_text(ids) - >>> assert text == text_hat - """ - - def __init__( - self, - use_phonemes=False, - text_cleaner: Callable = None, - characters: "BaseCharacters" = None, - phonemizer: Union["Phonemizer", Dict] = None, - add_blank: bool = False, - use_eos_bos=False, - ): - self.text_cleaner = text_cleaner - self.use_phonemes = use_phonemes - self.add_blank = add_blank - self.use_eos_bos = use_eos_bos - self.characters = characters - self.not_found_characters = [] - self.phonemizer = phonemizer - - @property - def characters(self): - return self._characters - - @characters.setter - def characters(self, new_characters): - self._characters = new_characters - self.pad_id = self.characters.char_to_id(self.characters.pad) if self.characters.pad else None - self.blank_id = self.characters.char_to_id(self.characters.blank) if self.characters.blank else None - - def encode(self, text: str) -> List[int]: - """Encodes a string of text as a sequence of IDs.""" - token_ids = [] - for char in text: - try: - idx = self.characters.char_to_id(char) - token_ids.append(idx) - except KeyError: - # discard but store not found characters - if char not in self.not_found_characters: - self.not_found_characters.append(char) - print(text) - print(f" [!] Character {repr(char)} not found in the vocabulary. Discarding it.") - return token_ids - - def decode(self, token_ids: List[int]) -> str: - """Decodes a sequence of IDs to a string of text.""" - text = "" - for token_id in token_ids: - text += self.characters.id_to_char(token_id) - return text - - def text_to_ids(self, text: str, language: str = None) -> List[int]: # pylint: disable=unused-argument - """Converts a string of text to a sequence of token IDs. - - Args: - text(str): - The text to convert to token IDs. - - language(str): - The language code of the text. Defaults to None. - - TODO: - - Add support for language-specific processing. - - 1. Text normalizatin - 2. Phonemization (if use_phonemes is True) - 3. Add blank char between characters - 4. Add BOS and EOS characters - 5. Text to token IDs - """ - # TODO: text cleaner should pick the right routine based on the language - if self.text_cleaner is not None: - text = self.text_cleaner(text) - if self.use_phonemes: - text = self.phonemizer.phonemize(text, separator="", language=language) - text = self.encode(text) - if self.add_blank: - text = self.intersperse_blank_char(text, True) - if self.use_eos_bos: - text = self.pad_with_bos_eos(text) - return text - - def ids_to_text(self, id_sequence: List[int]) -> str: - """Converts a sequence of token IDs to a string of text.""" - return self.decode(id_sequence) - - def pad_with_bos_eos(self, char_sequence: List[str]): - """Pads a sequence with the special BOS and EOS characters.""" - return [self.characters.bos_id] + list(char_sequence) + [self.characters.eos_id] - - def intersperse_blank_char(self, char_sequence: List[str], use_blank_char: bool = False): - """Intersperses the blank character between characters in a sequence. - - Use the ```blank``` character if defined else use the ```pad``` character. - """ - char_to_use = self.characters.blank_id if use_blank_char else self.characters.pad - result = [char_to_use] * (len(char_sequence) * 2 + 1) - result[1::2] = char_sequence - return result - - def print_logs(self, level: int = 0): - indent = "\t" * level - print(f"{indent}| > add_blank: {self.add_blank}") - print(f"{indent}| > use_eos_bos: {self.use_eos_bos}") - print(f"{indent}| > use_phonemes: {self.use_phonemes}") - if self.use_phonemes: - print(f"{indent}| > phonemizer:") - self.phonemizer.print_logs(level + 1) - if len(self.not_found_characters) > 0: - print(f"{indent}| > {len(self.not_found_characters)} not found characters:") - for char in self.not_found_characters: - print(f"{indent}| > {char}") - - @staticmethod - def init_from_config(config: "Coqpit", characters: "BaseCharacters" = None): - """Init Tokenizer object from config - - Args: - config (Coqpit): Coqpit model config. - characters (BaseCharacters): Defines the model character set. If not set, use the default options based on - the config values. Defaults to None. - """ - # init cleaners - text_cleaner = None - if isinstance(config.text_cleaner, (str, list)): - text_cleaner = getattr(cleaners, config.text_cleaner) - - # init characters - if characters is None: - # set characters based on defined characters class - if config.characters and config.characters.characters_class: - CharactersClass = import_class(config.characters.characters_class) - characters, new_config = CharactersClass.init_from_config(config) - # set characters based on config - else: - if config.use_phonemes: - # init phoneme set - characters, new_config = IPAPhonemes().init_from_config(config) - else: - # init character set - characters, new_config = Graphemes().init_from_config(config) - - else: - characters, new_config = characters.init_from_config(config) - - # set characters class - new_config.characters.characters_class = get_import_path(characters) - - # init phonemizer - phonemizer = None - if config.use_phonemes: - if "phonemizer" in config and config.phonemizer == "multi_phonemizer": - lang_to_phonemizer_name = {} - for dataset in config.datasets: - if dataset.language != "": - lang_to_phonemizer_name[dataset.language] = dataset.phonemizer - else: - raise ValueError("Multi phonemizer requires language to be set for each dataset.") - phonemizer = MultiPhonemizer(lang_to_phonemizer_name) - else: - phonemizer_kwargs = {"language": config.phoneme_language} - if "phonemizer" in config and config.phonemizer: - phonemizer = get_phonemizer_by_name(config.phonemizer, **phonemizer_kwargs) - else: - try: - phonemizer = get_phonemizer_by_name( - DEF_LANG_TO_PHONEMIZER[config.phoneme_language], **phonemizer_kwargs - ) - new_config.phonemizer = phonemizer.name() - except KeyError as e: - raise ValueError( - f"""No phonemizer found for language {config.phoneme_language}. - You may need to install a third party library for this language.""" - ) from e - - return ( - TTSTokenizer( - config.use_phonemes, text_cleaner, characters, phonemizer, config.add_blank, config.enable_eos_bos_chars - ), - new_config, - ) diff --git a/TTS/tts/utils/visual.py b/TTS/tts/utils/visual.py deleted file mode 100644 index fba7bc508ef962d5a93c794ca868acd46d07ec16..0000000000000000000000000000000000000000 --- a/TTS/tts/utils/visual.py +++ /dev/null @@ -1,238 +0,0 @@ -import librosa -import matplotlib -import matplotlib.pyplot as plt -import numpy as np -import torch -from matplotlib.colors import LogNorm - -matplotlib.use("Agg") - - -def plot_alignment(alignment, info=None, fig_size=(16, 10), title=None, output_fig=False, plot_log=False): - if isinstance(alignment, torch.Tensor): - alignment_ = alignment.detach().cpu().numpy().squeeze() - else: - alignment_ = alignment - alignment_ = alignment_.astype(np.float32) if alignment_.dtype == np.float16 else alignment_ - fig, ax = plt.subplots(figsize=fig_size) - im = ax.imshow( - alignment_.T, aspect="auto", origin="lower", interpolation="none", norm=LogNorm() if plot_log else None - ) - fig.colorbar(im, ax=ax) - xlabel = "Decoder timestep" - if info is not None: - xlabel += "\n\n" + info - plt.xlabel(xlabel) - plt.ylabel("Encoder timestep") - # plt.yticks(range(len(text)), list(text)) - plt.tight_layout() - if title is not None: - plt.title(title) - if not output_fig: - plt.close() - return fig - - -def plot_spectrogram(spectrogram, ap=None, fig_size=(16, 10), output_fig=False): - if isinstance(spectrogram, torch.Tensor): - spectrogram_ = spectrogram.detach().cpu().numpy().squeeze().T - else: - spectrogram_ = spectrogram.T - spectrogram_ = spectrogram_.astype(np.float32) if spectrogram_.dtype == np.float16 else spectrogram_ - if ap is not None: - spectrogram_ = ap.denormalize(spectrogram_) # pylint: disable=protected-access - fig = plt.figure(figsize=fig_size) - plt.imshow(spectrogram_, aspect="auto", origin="lower") - plt.colorbar() - plt.tight_layout() - if not output_fig: - plt.close() - return fig - - -def plot_pitch(pitch, spectrogram, ap=None, fig_size=(30, 10), output_fig=False): - """Plot pitch curves on top of the spectrogram. - - Args: - pitch (np.array): Pitch values. - spectrogram (np.array): Spectrogram values. - - Shapes: - pitch: :math:`(T,)` - spec: :math:`(C, T)` - """ - - if isinstance(spectrogram, torch.Tensor): - spectrogram_ = spectrogram.detach().cpu().numpy().squeeze().T - else: - spectrogram_ = spectrogram.T - spectrogram_ = spectrogram_.astype(np.float32) if spectrogram_.dtype == np.float16 else spectrogram_ - if ap is not None: - spectrogram_ = ap.denormalize(spectrogram_) # pylint: disable=protected-access - - old_fig_size = plt.rcParams["figure.figsize"] - if fig_size is not None: - plt.rcParams["figure.figsize"] = fig_size - - fig, ax = plt.subplots() - - ax.imshow(spectrogram_, aspect="auto", origin="lower") - ax.set_xlabel("time") - ax.set_ylabel("spec_freq") - - ax2 = ax.twinx() - ax2.plot(pitch, linewidth=5.0, color="red") - ax2.set_ylabel("F0") - - plt.rcParams["figure.figsize"] = old_fig_size - if not output_fig: - plt.close() - return fig - - -def plot_avg_pitch(pitch, chars, fig_size=(30, 10), output_fig=False): - """Plot pitch curves on top of the input characters. - - Args: - pitch (np.array): Pitch values. - chars (str): Characters to place to the x-axis. - - Shapes: - pitch: :math:`(T,)` - """ - old_fig_size = plt.rcParams["figure.figsize"] - if fig_size is not None: - plt.rcParams["figure.figsize"] = fig_size - - fig, ax = plt.subplots() - - x = np.array(range(len(chars))) - my_xticks = chars - plt.xticks(x, my_xticks) - - ax.set_xlabel("characters") - ax.set_ylabel("freq") - - ax2 = ax.twinx() - ax2.plot(pitch, linewidth=5.0, color="red") - ax2.set_ylabel("F0") - - plt.rcParams["figure.figsize"] = old_fig_size - if not output_fig: - plt.close() - return fig - - -def plot_avg_energy(energy, chars, fig_size=(30, 10), output_fig=False): - """Plot energy curves on top of the input characters. - - Args: - energy (np.array): energy values. - chars (str): Characters to place to the x-axis. - - Shapes: - energy: :math:`(T,)` - """ - old_fig_size = plt.rcParams["figure.figsize"] - if fig_size is not None: - plt.rcParams["figure.figsize"] = fig_size - - fig, ax = plt.subplots() - - x = np.array(range(len(chars))) - my_xticks = chars - plt.xticks(x, my_xticks) - - ax.set_xlabel("characters") - ax.set_ylabel("freq") - - ax2 = ax.twinx() - ax2.plot(energy, linewidth=5.0, color="red") - ax2.set_ylabel("energy") - - plt.rcParams["figure.figsize"] = old_fig_size - if not output_fig: - plt.close() - return fig - - -def visualize( - alignment, - postnet_output, - text, - hop_length, - CONFIG, - tokenizer, - stop_tokens=None, - decoder_output=None, - output_path=None, - figsize=(8, 24), - output_fig=False, -): - """Intended to be used in Notebooks.""" - - if decoder_output is not None: - num_plot = 4 - else: - num_plot = 3 - - label_fontsize = 16 - fig = plt.figure(figsize=figsize) - - plt.subplot(num_plot, 1, 1) - plt.imshow(alignment.T, aspect="auto", origin="lower", interpolation=None) - plt.xlabel("Decoder timestamp", fontsize=label_fontsize) - plt.ylabel("Encoder timestamp", fontsize=label_fontsize) - # compute phoneme representation and back - if CONFIG.use_phonemes: - seq = tokenizer.text_to_ids(text) - text = tokenizer.ids_to_text(seq) - print(text) - plt.yticks(range(len(text)), list(text)) - plt.colorbar() - - if stop_tokens is not None: - # plot stopnet predictions - plt.subplot(num_plot, 1, 2) - plt.plot(range(len(stop_tokens)), list(stop_tokens)) - - # plot postnet spectrogram - plt.subplot(num_plot, 1, 3) - librosa.display.specshow( - postnet_output.T, - sr=CONFIG.audio["sample_rate"], - hop_length=hop_length, - x_axis="time", - y_axis="linear", - fmin=CONFIG.audio["mel_fmin"], - fmax=CONFIG.audio["mel_fmax"], - ) - - plt.xlabel("Time", fontsize=label_fontsize) - plt.ylabel("Hz", fontsize=label_fontsize) - plt.tight_layout() - plt.colorbar() - - if decoder_output is not None: - plt.subplot(num_plot, 1, 4) - librosa.display.specshow( - decoder_output.T, - sr=CONFIG.audio["sample_rate"], - hop_length=hop_length, - x_axis="time", - y_axis="linear", - fmin=CONFIG.audio["mel_fmin"], - fmax=CONFIG.audio["mel_fmax"], - ) - plt.xlabel("Time", fontsize=label_fontsize) - plt.ylabel("Hz", fontsize=label_fontsize) - plt.tight_layout() - plt.colorbar() - - if output_path: - print(output_path) - fig.savefig(output_path) - plt.close() - - if not output_fig: - plt.close() diff --git a/TTS/utils/__init__.py b/TTS/utils/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/utils/audio/__init__.py b/TTS/utils/audio/__init__.py deleted file mode 100644 index f18f22199908ee0dd5445e34527f5fddb65cfed8..0000000000000000000000000000000000000000 --- a/TTS/utils/audio/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from TTS.utils.audio.processor import AudioProcessor diff --git a/TTS/utils/audio/numpy_transforms.py b/TTS/utils/audio/numpy_transforms.py deleted file mode 100644 index ae44472f05384bae383fe2d64ab2a32983c5c4e7..0000000000000000000000000000000000000000 --- a/TTS/utils/audio/numpy_transforms.py +++ /dev/null @@ -1,477 +0,0 @@ -from typing import Tuple - -import librosa -import numpy as np -import scipy -import soundfile as sf -from librosa import magphase, pyin - -# For using kwargs -# pylint: disable=unused-argument - - -def build_mel_basis( - *, - sample_rate: int = None, - fft_size: int = None, - num_mels: int = None, - mel_fmax: int = None, - mel_fmin: int = None, - **kwargs, -) -> np.ndarray: - """Build melspectrogram basis. - - Returns: - np.ndarray: melspectrogram basis. - """ - if mel_fmax is not None: - assert mel_fmax <= sample_rate // 2 - assert mel_fmax - mel_fmin > 0 - return librosa.filters.mel(sr=sample_rate, n_fft=fft_size, n_mels=num_mels, fmin=mel_fmin, fmax=mel_fmax) - - -def millisec_to_length( - *, frame_length_ms: int = None, frame_shift_ms: int = None, sample_rate: int = None, **kwargs -) -> Tuple[int, int]: - """Compute hop and window length from milliseconds. - - Returns: - Tuple[int, int]: hop length and window length for STFT. - """ - factor = frame_length_ms / frame_shift_ms - assert (factor).is_integer(), " [!] frame_shift_ms should divide frame_length_ms" - win_length = int(frame_length_ms / 1000.0 * sample_rate) - hop_length = int(win_length / float(factor)) - return win_length, hop_length - - -def _log(x, base): - if base == 10: - return np.log10(x) - return np.log(x) - - -def _exp(x, base): - if base == 10: - return np.power(10, x) - return np.exp(x) - - -def amp_to_db(*, x: np.ndarray = None, gain: float = 1, base: int = 10, **kwargs) -> np.ndarray: - """Convert amplitude values to decibels. - - Args: - x (np.ndarray): Amplitude spectrogram. - gain (float): Gain factor. Defaults to 1. - base (int): Logarithm base. Defaults to 10. - - Returns: - np.ndarray: Decibels spectrogram. - """ - assert (x < 0).sum() == 0, " [!] Input values must be non-negative." - return gain * _log(np.maximum(1e-8, x), base) - - -# pylint: disable=no-self-use -def db_to_amp(*, x: np.ndarray = None, gain: float = 1, base: int = 10, **kwargs) -> np.ndarray: - """Convert decibels spectrogram to amplitude spectrogram. - - Args: - x (np.ndarray): Decibels spectrogram. - gain (float): Gain factor. Defaults to 1. - base (int): Logarithm base. Defaults to 10. - - Returns: - np.ndarray: Amplitude spectrogram. - """ - return _exp(x / gain, base) - - -def preemphasis(*, x: np.ndarray, coef: float = 0.97, **kwargs) -> np.ndarray: - """Apply pre-emphasis to the audio signal. Useful to reduce the correlation between neighbouring signal values. - - Args: - x (np.ndarray): Audio signal. - - Raises: - RuntimeError: Preemphasis coeff is set to 0. - - Returns: - np.ndarray: Decorrelated audio signal. - """ - if coef == 0: - raise RuntimeError(" [!] Preemphasis is set 0.0.") - return scipy.signal.lfilter([1, -coef], [1], x) - - -def deemphasis(*, x: np.ndarray = None, coef: float = 0.97, **kwargs) -> np.ndarray: - """Reverse pre-emphasis.""" - if coef == 0: - raise RuntimeError(" [!] Preemphasis is set 0.0.") - return scipy.signal.lfilter([1], [1, -coef], x) - - -def spec_to_mel(*, spec: np.ndarray, mel_basis: np.ndarray = None, **kwargs) -> np.ndarray: - """Convert a full scale linear spectrogram output of a network to a melspectrogram. - - Args: - spec (np.ndarray): Normalized full scale linear spectrogram. - - Shapes: - - spec: :math:`[C, T]` - - Returns: - np.ndarray: Normalized melspectrogram. - """ - return np.dot(mel_basis, spec) - - -def mel_to_spec(*, mel: np.ndarray = None, mel_basis: np.ndarray = None, **kwargs) -> np.ndarray: - """Convert a melspectrogram to full scale spectrogram.""" - assert (mel < 0).sum() == 0, " [!] Input values must be non-negative." - inv_mel_basis = np.linalg.pinv(mel_basis) - return np.maximum(1e-10, np.dot(inv_mel_basis, mel)) - - -def wav_to_spec(*, wav: np.ndarray = None, **kwargs) -> np.ndarray: - """Compute a spectrogram from a waveform. - - Args: - wav (np.ndarray): Waveform. Shape :math:`[T_wav,]` - - Returns: - np.ndarray: Spectrogram. Shape :math:`[C, T_spec]`. :math:`T_spec == T_wav / hop_length` - """ - D = stft(y=wav, **kwargs) - S = np.abs(D) - return S.astype(np.float32) - - -def wav_to_mel(*, wav: np.ndarray = None, mel_basis=None, **kwargs) -> np.ndarray: - """Compute a melspectrogram from a waveform.""" - D = stft(y=wav, **kwargs) - S = spec_to_mel(spec=np.abs(D), mel_basis=mel_basis, **kwargs) - return S.astype(np.float32) - - -def spec_to_wav(*, spec: np.ndarray, power: float = 1.5, **kwargs) -> np.ndarray: - """Convert a spectrogram to a waveform using Griffi-Lim vocoder.""" - S = spec.copy() - return griffin_lim(spec=S**power, **kwargs) - - -def mel_to_wav(*, mel: np.ndarray = None, power: float = 1.5, **kwargs) -> np.ndarray: - """Convert a melspectrogram to a waveform using Griffi-Lim vocoder.""" - S = mel.copy() - S = mel_to_spec(mel=S, mel_basis=kwargs["mel_basis"]) # Convert back to linear - return griffin_lim(spec=S**power, **kwargs) - - -### STFT and ISTFT ### -def stft( - *, - y: np.ndarray = None, - fft_size: int = None, - hop_length: int = None, - win_length: int = None, - pad_mode: str = "reflect", - window: str = "hann", - center: bool = True, - **kwargs, -) -> np.ndarray: - """Librosa STFT wrapper. - - Check http://librosa.org/doc/main/generated/librosa.stft.html argument details. - - Returns: - np.ndarray: Complex number array. - """ - return librosa.stft( - y=y, - n_fft=fft_size, - hop_length=hop_length, - win_length=win_length, - pad_mode=pad_mode, - window=window, - center=center, - ) - - -def istft( - *, - y: np.ndarray = None, - fft_size: int = None, - hop_length: int = None, - win_length: int = None, - window: str = "hann", - center: bool = True, - **kwargs, -) -> np.ndarray: - """Librosa iSTFT wrapper. - - Check http://librosa.org/doc/main/generated/librosa.istft.html argument details. - - Returns: - np.ndarray: Complex number array. - """ - return librosa.istft(y, hop_length=hop_length, win_length=win_length, center=center, window=window) - - -def griffin_lim(*, spec: np.ndarray = None, num_iter=60, **kwargs) -> np.ndarray: - angles = np.exp(2j * np.pi * np.random.rand(*spec.shape)) - S_complex = np.abs(spec).astype(complex) - y = istft(y=S_complex * angles, **kwargs) - if not np.isfinite(y).all(): - print(" [!] Waveform is not finite everywhere. Skipping the GL.") - return np.array([0.0]) - for _ in range(num_iter): - angles = np.exp(1j * np.angle(stft(y=y, **kwargs))) - y = istft(y=S_complex * angles, **kwargs) - return y - - -def compute_stft_paddings( - *, x: np.ndarray = None, hop_length: int = None, pad_two_sides: bool = False, **kwargs -) -> Tuple[int, int]: - """Compute paddings used by Librosa's STFT. Compute right padding (final frame) or both sides padding - (first and final frames)""" - pad = (x.shape[0] // hop_length + 1) * hop_length - x.shape[0] - if not pad_two_sides: - return 0, pad - return pad // 2, pad // 2 + pad % 2 - - -def compute_f0( - *, - x: np.ndarray = None, - pitch_fmax: float = None, - pitch_fmin: float = None, - hop_length: int = None, - win_length: int = None, - sample_rate: int = None, - stft_pad_mode: str = "reflect", - center: bool = True, - **kwargs, -) -> np.ndarray: - """Compute pitch (f0) of a waveform using the same parameters used for computing melspectrogram. - - Args: - x (np.ndarray): Waveform. Shape :math:`[T_wav,]` - pitch_fmax (float): Pitch max value. - pitch_fmin (float): Pitch min value. - hop_length (int): Number of frames between STFT columns. - win_length (int): STFT window length. - sample_rate (int): Audio sampling rate. - stft_pad_mode (str): Padding mode for STFT. - center (bool): Centered padding. - - Returns: - np.ndarray: Pitch. Shape :math:`[T_pitch,]`. :math:`T_pitch == T_wav / hop_length` - - Examples: - >>> WAV_FILE = filename = librosa.example('vibeace') - >>> from TTS.config import BaseAudioConfig - >>> from TTS.utils.audio import AudioProcessor - >>> conf = BaseAudioConfig(pitch_fmax=640, pitch_fmin=1) - >>> ap = AudioProcessor(**conf) - >>> wav = ap.load_wav(WAV_FILE, sr=ap.sample_rate)[:5 * ap.sample_rate] - >>> pitch = ap.compute_f0(wav) - """ - assert pitch_fmax is not None, " [!] Set `pitch_fmax` before caling `compute_f0`." - assert pitch_fmin is not None, " [!] Set `pitch_fmin` before caling `compute_f0`." - - f0, voiced_mask, _ = pyin( - y=x.astype(np.double), - fmin=pitch_fmin, - fmax=pitch_fmax, - sr=sample_rate, - frame_length=win_length, - win_length=win_length // 2, - hop_length=hop_length, - pad_mode=stft_pad_mode, - center=center, - n_thresholds=100, - beta_parameters=(2, 18), - boltzmann_parameter=2, - resolution=0.1, - max_transition_rate=35.92, - switch_prob=0.01, - no_trough_prob=0.01, - ) - f0[~voiced_mask] = 0.0 - - return f0 - - -def compute_energy(y: np.ndarray, **kwargs) -> np.ndarray: - """Compute energy of a waveform using the same parameters used for computing melspectrogram. - Args: - x (np.ndarray): Waveform. Shape :math:`[T_wav,]` - Returns: - np.ndarray: energy. Shape :math:`[T_energy,]`. :math:`T_energy == T_wav / hop_length` - Examples: - >>> WAV_FILE = filename = librosa.example('vibeace') - >>> from TTS.config import BaseAudioConfig - >>> from TTS.utils.audio import AudioProcessor - >>> conf = BaseAudioConfig() - >>> ap = AudioProcessor(**conf) - >>> wav = ap.load_wav(WAV_FILE, sr=ap.sample_rate)[:5 * ap.sample_rate] - >>> energy = ap.compute_energy(wav) - """ - x = stft(y=y, **kwargs) - mag, _ = magphase(x) - energy = np.sqrt(np.sum(mag**2, axis=0)) - return energy - - -### Audio Processing ### -def find_endpoint( - *, - wav: np.ndarray = None, - trim_db: float = -40, - sample_rate: int = None, - min_silence_sec=0.8, - gain: float = None, - base: int = None, - **kwargs, -) -> int: - """Find the last point without silence at the end of a audio signal. - - Args: - wav (np.ndarray): Audio signal. - threshold_db (int, optional): Silence threshold in decibels. Defaults to -40. - min_silence_sec (float, optional): Ignore silences that are shorter then this in secs. Defaults to 0.8. - gian (float, optional): Gain to be used to convert trim_db to trim_amp. Defaults to None. - base (int, optional): Base of the logarithm used to convert trim_db to trim_amp. Defaults to 10. - - Returns: - int: Last point without silence. - """ - window_length = int(sample_rate * min_silence_sec) - hop_length = int(window_length / 4) - threshold = db_to_amp(x=-trim_db, gain=gain, base=base) - for x in range(hop_length, len(wav) - window_length, hop_length): - if np.max(wav[x : x + window_length]) < threshold: - return x + hop_length - return len(wav) - - -def trim_silence( - *, - wav: np.ndarray = None, - sample_rate: int = None, - trim_db: float = None, - win_length: int = None, - hop_length: int = None, - **kwargs, -) -> np.ndarray: - """Trim silent parts with a threshold and 0.01 sec margin""" - margin = int(sample_rate * 0.01) - wav = wav[margin:-margin] - return librosa.effects.trim(wav, top_db=trim_db, frame_length=win_length, hop_length=hop_length)[0] - - -def volume_norm(*, x: np.ndarray = None, coef: float = 0.95, **kwargs) -> np.ndarray: - """Normalize the volume of an audio signal. - - Args: - x (np.ndarray): Raw waveform. - coef (float): Coefficient to rescale the maximum value. Defaults to 0.95. - - Returns: - np.ndarray: Volume normalized waveform. - """ - return x / abs(x).max() * coef - - -def rms_norm(*, wav: np.ndarray = None, db_level: float = -27.0, **kwargs) -> np.ndarray: - r = 10 ** (db_level / 20) - a = np.sqrt((len(wav) * (r**2)) / np.sum(wav**2)) - return wav * a - - -def rms_volume_norm(*, x: np.ndarray, db_level: float = -27.0, **kwargs) -> np.ndarray: - """Normalize the volume based on RMS of the signal. - - Args: - x (np.ndarray): Raw waveform. - db_level (float): Target dB level in RMS. Defaults to -27.0. - - Returns: - np.ndarray: RMS normalized waveform. - """ - assert -99 <= db_level <= 0, " [!] db_level should be between -99 and 0" - wav = rms_norm(wav=x, db_level=db_level) - return wav - - -def load_wav(*, filename: str, sample_rate: int = None, resample: bool = False, **kwargs) -> np.ndarray: - """Read a wav file using Librosa and optionally resample, silence trim, volume normalize. - - Resampling slows down loading the file significantly. Therefore it is recommended to resample the file before. - - Args: - filename (str): Path to the wav file. - sr (int, optional): Sampling rate for resampling. Defaults to None. - resample (bool, optional): Resample the audio file when loading. Slows down the I/O time. Defaults to False. - - Returns: - np.ndarray: Loaded waveform. - """ - if resample: - # loading with resampling. It is significantly slower. - x, _ = librosa.load(filename, sr=sample_rate) - else: - # SF is faster than librosa for loading files - x, _ = sf.read(filename) - return x - - -def save_wav(*, wav: np.ndarray, path: str, sample_rate: int = None, **kwargs) -> None: - """Save float waveform to a file using Scipy. - - Args: - wav (np.ndarray): Waveform with float values in range [-1, 1] to save. - path (str): Path to a output file. - sr (int, optional): Sampling rate used for saving to the file. Defaults to None. - """ - wav_norm = wav * (32767 / max(0.01, np.max(np.abs(wav)))) - scipy.io.wavfile.write(path, sample_rate, wav_norm.astype(np.int16)) - - -def mulaw_encode(*, wav: np.ndarray, mulaw_qc: int, **kwargs) -> np.ndarray: - mu = 2**mulaw_qc - 1 - signal = np.sign(wav) * np.log(1 + mu * np.abs(wav)) / np.log(1.0 + mu) - signal = (signal + 1) / 2 * mu + 0.5 - return np.floor( - signal, - ) - - -def mulaw_decode(*, wav, mulaw_qc: int, **kwargs) -> np.ndarray: - """Recovers waveform from quantized values.""" - mu = 2**mulaw_qc - 1 - x = np.sign(wav) / mu * ((1 + mu) ** np.abs(wav) - 1) - return x - - -def encode_16bits(*, x: np.ndarray, **kwargs) -> np.ndarray: - return np.clip(x * 2**15, -(2**15), 2**15 - 1).astype(np.int16) - - -def quantize(*, x: np.ndarray, quantize_bits: int, **kwargs) -> np.ndarray: - """Quantize a waveform to a given number of bits. - - Args: - x (np.ndarray): Waveform to quantize. Must be normalized into the range `[-1, 1]`. - quantize_bits (int): Number of quantization bits. - - Returns: - np.ndarray: Quantized waveform. - """ - return (x + 1.0) * (2**quantize_bits - 1) / 2 - - -def dequantize(*, x, quantize_bits, **kwargs) -> np.ndarray: - """Dequantize a waveform from the given number of bits.""" - return 2 * x / (2**quantize_bits - 1) - 1 diff --git a/TTS/utils/audio/processor.py b/TTS/utils/audio/processor.py deleted file mode 100644 index b0920dc9eb903e0c8bba0fca42c719f07e6f61e1..0000000000000000000000000000000000000000 --- a/TTS/utils/audio/processor.py +++ /dev/null @@ -1,769 +0,0 @@ -from typing import Dict, Tuple - -import librosa -import numpy as np -import scipy.io.wavfile -import scipy.signal -import soundfile as sf - -from TTS.tts.utils.helpers import StandardScaler -from TTS.utils.audio.numpy_transforms import compute_f0 - -# pylint: disable=too-many-public-methods - - -class AudioProcessor(object): - """Audio Processor for TTS. - - Note: - All the class arguments are set to default values to enable a flexible initialization - of the class with the model config. They are not meaningful for all the arguments. - - Args: - sample_rate (int, optional): - target audio sampling rate. Defaults to None. - - resample (bool, optional): - enable/disable resampling of the audio clips when the target sampling rate does not match the original sampling rate. Defaults to False. - - num_mels (int, optional): - number of melspectrogram dimensions. Defaults to None. - - log_func (int, optional): - log exponent used for converting spectrogram aplitude to DB. - - min_level_db (int, optional): - minimum db threshold for the computed melspectrograms. Defaults to None. - - frame_shift_ms (int, optional): - milliseconds of frames between STFT columns. Defaults to None. - - frame_length_ms (int, optional): - milliseconds of STFT window length. Defaults to None. - - hop_length (int, optional): - number of frames between STFT columns. Used if ```frame_shift_ms``` is None. Defaults to None. - - win_length (int, optional): - STFT window length. Used if ```frame_length_ms``` is None. Defaults to None. - - ref_level_db (int, optional): - reference DB level to avoid background noise. In general <20DB corresponds to the air noise. Defaults to None. - - fft_size (int, optional): - FFT window size for STFT. Defaults to 1024. - - power (int, optional): - Exponent value applied to the spectrogram before GriffinLim. Defaults to None. - - preemphasis (float, optional): - Preemphasis coefficient. Preemphasis is disabled if == 0.0. Defaults to 0.0. - - signal_norm (bool, optional): - enable/disable signal normalization. Defaults to None. - - symmetric_norm (bool, optional): - enable/disable symmetric normalization. If set True normalization is performed in the range [-k, k] else [0, k], Defaults to None. - - max_norm (float, optional): - ```k``` defining the normalization range. Defaults to None. - - mel_fmin (int, optional): - minimum filter frequency for computing melspectrograms. Defaults to None. - - mel_fmax (int, optional): - maximum filter frequency for computing melspectrograms. Defaults to None. - - pitch_fmin (int, optional): - minimum filter frequency for computing pitch. Defaults to None. - - pitch_fmax (int, optional): - maximum filter frequency for computing pitch. Defaults to None. - - spec_gain (int, optional): - gain applied when converting amplitude to DB. Defaults to 20. - - stft_pad_mode (str, optional): - Padding mode for STFT. Defaults to 'reflect'. - - clip_norm (bool, optional): - enable/disable clipping the our of range values in the normalized audio signal. Defaults to True. - - griffin_lim_iters (int, optional): - Number of GriffinLim iterations. Defaults to None. - - do_trim_silence (bool, optional): - enable/disable silence trimming when loading the audio signal. Defaults to False. - - trim_db (int, optional): - DB threshold used for silence trimming. Defaults to 60. - - do_sound_norm (bool, optional): - enable/disable signal normalization. Defaults to False. - - do_amp_to_db_linear (bool, optional): - enable/disable amplitude to dB conversion of linear spectrograms. Defaults to True. - - do_amp_to_db_mel (bool, optional): - enable/disable amplitude to dB conversion of mel spectrograms. Defaults to True. - - do_rms_norm (bool, optional): - enable/disable RMS volume normalization when loading an audio file. Defaults to False. - - db_level (int, optional): - dB level used for rms normalization. The range is -99 to 0. Defaults to None. - - stats_path (str, optional): - Path to the computed stats file. Defaults to None. - - verbose (bool, optional): - enable/disable logging. Defaults to True. - - """ - - def __init__( - self, - sample_rate=None, - resample=False, - num_mels=None, - log_func="np.log10", - min_level_db=None, - frame_shift_ms=None, - frame_length_ms=None, - hop_length=None, - win_length=None, - ref_level_db=None, - fft_size=1024, - power=None, - preemphasis=0.0, - signal_norm=None, - symmetric_norm=None, - max_norm=None, - mel_fmin=None, - mel_fmax=None, - pitch_fmax=None, - pitch_fmin=None, - spec_gain=20, - stft_pad_mode="reflect", - clip_norm=True, - griffin_lim_iters=None, - do_trim_silence=False, - trim_db=60, - do_sound_norm=False, - do_amp_to_db_linear=True, - do_amp_to_db_mel=True, - do_rms_norm=False, - db_level=None, - stats_path=None, - verbose=True, - **_, - ): - # setup class attributed - self.sample_rate = sample_rate - self.resample = resample - self.num_mels = num_mels - self.log_func = log_func - self.min_level_db = min_level_db or 0 - self.frame_shift_ms = frame_shift_ms - self.frame_length_ms = frame_length_ms - self.ref_level_db = ref_level_db - self.fft_size = fft_size - self.power = power - self.preemphasis = preemphasis - self.griffin_lim_iters = griffin_lim_iters - self.signal_norm = signal_norm - self.symmetric_norm = symmetric_norm - self.mel_fmin = mel_fmin or 0 - self.mel_fmax = mel_fmax - self.pitch_fmin = pitch_fmin - self.pitch_fmax = pitch_fmax - self.spec_gain = float(spec_gain) - self.stft_pad_mode = stft_pad_mode - self.max_norm = 1.0 if max_norm is None else float(max_norm) - self.clip_norm = clip_norm - self.do_trim_silence = do_trim_silence - self.trim_db = trim_db - self.do_sound_norm = do_sound_norm - self.do_amp_to_db_linear = do_amp_to_db_linear - self.do_amp_to_db_mel = do_amp_to_db_mel - self.do_rms_norm = do_rms_norm - self.db_level = db_level - self.stats_path = stats_path - # setup exp_func for db to amp conversion - if log_func == "np.log": - self.base = np.e - elif log_func == "np.log10": - self.base = 10 - else: - raise ValueError(" [!] unknown `log_func` value.") - # setup stft parameters - if hop_length is None: - # compute stft parameters from given time values - self.hop_length, self.win_length = self._stft_parameters() - else: - # use stft parameters from config file - self.hop_length = hop_length - self.win_length = win_length - assert min_level_db != 0.0, " [!] min_level_db is 0" - assert ( - self.win_length <= self.fft_size - ), f" [!] win_length cannot be larger than fft_size - {self.win_length} vs {self.fft_size}" - members = vars(self) - if verbose: - print(" > Setting up Audio Processor...") - for key, value in members.items(): - print(" | > {}:{}".format(key, value)) - # create spectrogram utils - self.mel_basis = self._build_mel_basis() - self.inv_mel_basis = np.linalg.pinv(self._build_mel_basis()) - # setup scaler - if stats_path and signal_norm: - mel_mean, mel_std, linear_mean, linear_std, _ = self.load_stats(stats_path) - self.setup_scaler(mel_mean, mel_std, linear_mean, linear_std) - self.signal_norm = True - self.max_norm = None - self.clip_norm = None - self.symmetric_norm = None - - @staticmethod - def init_from_config(config: "Coqpit", verbose=True): - if "audio" in config: - return AudioProcessor(verbose=verbose, **config.audio) - return AudioProcessor(verbose=verbose, **config) - - ### setting up the parameters ### - def _build_mel_basis( - self, - ) -> np.ndarray: - """Build melspectrogram basis. - - Returns: - np.ndarray: melspectrogram basis. - """ - if self.mel_fmax is not None: - assert self.mel_fmax <= self.sample_rate // 2 - return librosa.filters.mel( - sr=self.sample_rate, n_fft=self.fft_size, n_mels=self.num_mels, fmin=self.mel_fmin, fmax=self.mel_fmax - ) - - def _stft_parameters( - self, - ) -> Tuple[int, int]: - """Compute the real STFT parameters from the time values. - - Returns: - Tuple[int, int]: hop length and window length for STFT. - """ - factor = self.frame_length_ms / self.frame_shift_ms - assert (factor).is_integer(), " [!] frame_shift_ms should divide frame_length_ms" - hop_length = int(self.frame_shift_ms / 1000.0 * self.sample_rate) - win_length = int(hop_length * factor) - return hop_length, win_length - - ### normalization ### - def normalize(self, S: np.ndarray) -> np.ndarray: - """Normalize values into `[0, self.max_norm]` or `[-self.max_norm, self.max_norm]` - - Args: - S (np.ndarray): Spectrogram to normalize. - - Raises: - RuntimeError: Mean and variance is computed from incompatible parameters. - - Returns: - np.ndarray: Normalized spectrogram. - """ - # pylint: disable=no-else-return - S = S.copy() - if self.signal_norm: - # mean-var scaling - if hasattr(self, "mel_scaler"): - if S.shape[0] == self.num_mels: - return self.mel_scaler.transform(S.T).T - elif S.shape[0] == self.fft_size / 2: - return self.linear_scaler.transform(S.T).T - else: - raise RuntimeError(" [!] Mean-Var stats does not match the given feature dimensions.") - # range normalization - S -= self.ref_level_db # discard certain range of DB assuming it is air noise - S_norm = (S - self.min_level_db) / (-self.min_level_db) - if self.symmetric_norm: - S_norm = ((2 * self.max_norm) * S_norm) - self.max_norm - if self.clip_norm: - S_norm = np.clip( - S_norm, -self.max_norm, self.max_norm # pylint: disable=invalid-unary-operand-type - ) - return S_norm - else: - S_norm = self.max_norm * S_norm - if self.clip_norm: - S_norm = np.clip(S_norm, 0, self.max_norm) - return S_norm - else: - return S - - def denormalize(self, S: np.ndarray) -> np.ndarray: - """Denormalize spectrogram values. - - Args: - S (np.ndarray): Spectrogram to denormalize. - - Raises: - RuntimeError: Mean and variance are incompatible. - - Returns: - np.ndarray: Denormalized spectrogram. - """ - # pylint: disable=no-else-return - S_denorm = S.copy() - if self.signal_norm: - # mean-var scaling - if hasattr(self, "mel_scaler"): - if S_denorm.shape[0] == self.num_mels: - return self.mel_scaler.inverse_transform(S_denorm.T).T - elif S_denorm.shape[0] == self.fft_size / 2: - return self.linear_scaler.inverse_transform(S_denorm.T).T - else: - raise RuntimeError(" [!] Mean-Var stats does not match the given feature dimensions.") - if self.symmetric_norm: - if self.clip_norm: - S_denorm = np.clip( - S_denorm, -self.max_norm, self.max_norm # pylint: disable=invalid-unary-operand-type - ) - S_denorm = ((S_denorm + self.max_norm) * -self.min_level_db / (2 * self.max_norm)) + self.min_level_db - return S_denorm + self.ref_level_db - else: - if self.clip_norm: - S_denorm = np.clip(S_denorm, 0, self.max_norm) - S_denorm = (S_denorm * -self.min_level_db / self.max_norm) + self.min_level_db - return S_denorm + self.ref_level_db - else: - return S_denorm - - ### Mean-STD scaling ### - def load_stats(self, stats_path: str) -> Tuple[np.array, np.array, np.array, np.array, Dict]: - """Loading mean and variance statistics from a `npy` file. - - Args: - stats_path (str): Path to the `npy` file containing - - Returns: - Tuple[np.array, np.array, np.array, np.array, Dict]: loaded statistics and the config used to - compute them. - """ - stats = np.load(stats_path, allow_pickle=True).item() # pylint: disable=unexpected-keyword-arg - mel_mean = stats["mel_mean"] - mel_std = stats["mel_std"] - linear_mean = stats["linear_mean"] - linear_std = stats["linear_std"] - stats_config = stats["audio_config"] - # check all audio parameters used for computing stats - skip_parameters = ["griffin_lim_iters", "stats_path", "do_trim_silence", "ref_level_db", "power"] - for key in stats_config.keys(): - if key in skip_parameters: - continue - if key not in ["sample_rate", "trim_db"]: - assert ( - stats_config[key] == self.__dict__[key] - ), f" [!] Audio param {key} does not match the value used for computing mean-var stats. {stats_config[key]} vs {self.__dict__[key]}" - return mel_mean, mel_std, linear_mean, linear_std, stats_config - - # pylint: disable=attribute-defined-outside-init - def setup_scaler( - self, mel_mean: np.ndarray, mel_std: np.ndarray, linear_mean: np.ndarray, linear_std: np.ndarray - ) -> None: - """Initialize scaler objects used in mean-std normalization. - - Args: - mel_mean (np.ndarray): Mean for melspectrograms. - mel_std (np.ndarray): STD for melspectrograms. - linear_mean (np.ndarray): Mean for full scale spectrograms. - linear_std (np.ndarray): STD for full scale spectrograms. - """ - self.mel_scaler = StandardScaler() - self.mel_scaler.set_stats(mel_mean, mel_std) - self.linear_scaler = StandardScaler() - self.linear_scaler.set_stats(linear_mean, linear_std) - - ### DB and AMP conversion ### - # pylint: disable=no-self-use - def _amp_to_db(self, x: np.ndarray) -> np.ndarray: - """Convert amplitude values to decibels. - - Args: - x (np.ndarray): Amplitude spectrogram. - - Returns: - np.ndarray: Decibels spectrogram. - """ - return self.spec_gain * _log(np.maximum(1e-5, x), self.base) - - # pylint: disable=no-self-use - def _db_to_amp(self, x: np.ndarray) -> np.ndarray: - """Convert decibels spectrogram to amplitude spectrogram. - - Args: - x (np.ndarray): Decibels spectrogram. - - Returns: - np.ndarray: Amplitude spectrogram. - """ - return _exp(x / self.spec_gain, self.base) - - ### Preemphasis ### - def apply_preemphasis(self, x: np.ndarray) -> np.ndarray: - """Apply pre-emphasis to the audio signal. Useful to reduce the correlation between neighbouring signal values. - - Args: - x (np.ndarray): Audio signal. - - Raises: - RuntimeError: Preemphasis coeff is set to 0. - - Returns: - np.ndarray: Decorrelated audio signal. - """ - if self.preemphasis == 0: - raise RuntimeError(" [!] Preemphasis is set 0.0.") - return scipy.signal.lfilter([1, -self.preemphasis], [1], x) - - def apply_inv_preemphasis(self, x: np.ndarray) -> np.ndarray: - """Reverse pre-emphasis.""" - if self.preemphasis == 0: - raise RuntimeError(" [!] Preemphasis is set 0.0.") - return scipy.signal.lfilter([1], [1, -self.preemphasis], x) - - ### SPECTROGRAMs ### - def _linear_to_mel(self, spectrogram: np.ndarray) -> np.ndarray: - """Project a full scale spectrogram to a melspectrogram. - - Args: - spectrogram (np.ndarray): Full scale spectrogram. - - Returns: - np.ndarray: Melspectrogram - """ - return np.dot(self.mel_basis, spectrogram) - - def _mel_to_linear(self, mel_spec: np.ndarray) -> np.ndarray: - """Convert a melspectrogram to full scale spectrogram.""" - return np.maximum(1e-10, np.dot(self.inv_mel_basis, mel_spec)) - - def spectrogram(self, y: np.ndarray) -> np.ndarray: - """Compute a spectrogram from a waveform. - - Args: - y (np.ndarray): Waveform. - - Returns: - np.ndarray: Spectrogram. - """ - if self.preemphasis != 0: - D = self._stft(self.apply_preemphasis(y)) - else: - D = self._stft(y) - if self.do_amp_to_db_linear: - S = self._amp_to_db(np.abs(D)) - else: - S = np.abs(D) - return self.normalize(S).astype(np.float32) - - def melspectrogram(self, y: np.ndarray) -> np.ndarray: - """Compute a melspectrogram from a waveform.""" - if self.preemphasis != 0: - D = self._stft(self.apply_preemphasis(y)) - else: - D = self._stft(y) - if self.do_amp_to_db_mel: - S = self._amp_to_db(self._linear_to_mel(np.abs(D))) - else: - S = self._linear_to_mel(np.abs(D)) - return self.normalize(S).astype(np.float32) - - def inv_spectrogram(self, spectrogram: np.ndarray) -> np.ndarray: - """Convert a spectrogram to a waveform using Griffi-Lim vocoder.""" - S = self.denormalize(spectrogram) - S = self._db_to_amp(S) - # Reconstruct phase - if self.preemphasis != 0: - return self.apply_inv_preemphasis(self._griffin_lim(S**self.power)) - return self._griffin_lim(S**self.power) - - def inv_melspectrogram(self, mel_spectrogram: np.ndarray) -> np.ndarray: - """Convert a melspectrogram to a waveform using Griffi-Lim vocoder.""" - D = self.denormalize(mel_spectrogram) - S = self._db_to_amp(D) - S = self._mel_to_linear(S) # Convert back to linear - if self.preemphasis != 0: - return self.apply_inv_preemphasis(self._griffin_lim(S**self.power)) - return self._griffin_lim(S**self.power) - - def out_linear_to_mel(self, linear_spec: np.ndarray) -> np.ndarray: - """Convert a full scale linear spectrogram output of a network to a melspectrogram. - - Args: - linear_spec (np.ndarray): Normalized full scale linear spectrogram. - - Returns: - np.ndarray: Normalized melspectrogram. - """ - S = self.denormalize(linear_spec) - S = self._db_to_amp(S) - S = self._linear_to_mel(np.abs(S)) - S = self._amp_to_db(S) - mel = self.normalize(S) - return mel - - ### STFT and ISTFT ### - def _stft(self, y: np.ndarray) -> np.ndarray: - """Librosa STFT wrapper. - - Args: - y (np.ndarray): Audio signal. - - Returns: - np.ndarray: Complex number array. - """ - return librosa.stft( - y=y, - n_fft=self.fft_size, - hop_length=self.hop_length, - win_length=self.win_length, - pad_mode=self.stft_pad_mode, - window="hann", - center=True, - ) - - def _istft(self, y: np.ndarray) -> np.ndarray: - """Librosa iSTFT wrapper.""" - return librosa.istft(y, hop_length=self.hop_length, win_length=self.win_length) - - def _griffin_lim(self, S): - angles = np.exp(2j * np.pi * np.random.rand(*S.shape)) - try: - S_complex = np.abs(S).astype(np.complex) - except AttributeError: # np.complex is deprecated since numpy 1.20.0 - S_complex = np.abs(S).astype(complex) - y = self._istft(S_complex * angles) - if not np.isfinite(y).all(): - print(" [!] Waveform is not finite everywhere. Skipping the GL.") - return np.array([0.0]) - for _ in range(self.griffin_lim_iters): - angles = np.exp(1j * np.angle(self._stft(y))) - y = self._istft(S_complex * angles) - return y - - def compute_stft_paddings(self, x, pad_sides=1): - """Compute paddings used by Librosa's STFT. Compute right padding (final frame) or both sides padding - (first and final frames)""" - assert pad_sides in (1, 2) - pad = (x.shape[0] // self.hop_length + 1) * self.hop_length - x.shape[0] - if pad_sides == 1: - return 0, pad - return pad // 2, pad // 2 + pad % 2 - - def compute_f0(self, x: np.ndarray) -> np.ndarray: - """Compute pitch (f0) of a waveform using the same parameters used for computing melspectrogram. - - Args: - x (np.ndarray): Waveform. - - Returns: - np.ndarray: Pitch. - - Examples: - >>> WAV_FILE = filename = librosa.example('vibeace') - >>> from TTS.config import BaseAudioConfig - >>> from TTS.utils.audio import AudioProcessor - >>> conf = BaseAudioConfig(pitch_fmax=640, pitch_fmin=1) - >>> ap = AudioProcessor(**conf) - >>> wav = ap.load_wav(WAV_FILE, sr=ap.sample_rate)[:5 * ap.sample_rate] - >>> pitch = ap.compute_f0(wav) - """ - assert self.pitch_fmax is not None, " [!] Set `pitch_fmax` before caling `compute_f0`." - assert self.pitch_fmin is not None, " [!] Set `pitch_fmin` before caling `compute_f0`." - # align F0 length to the spectrogram length - if len(x) % self.hop_length == 0: - x = np.pad(x, (0, self.hop_length // 2), mode=self.stft_pad_mode) - - f0 = compute_f0( - x=x, - pitch_fmax=self.pitch_fmax, - pitch_fmin=self.pitch_fmin, - hop_length=self.hop_length, - win_length=self.win_length, - sample_rate=self.sample_rate, - stft_pad_mode=self.stft_pad_mode, - center=True, - ) - - return f0 - - ### Audio Processing ### - def find_endpoint(self, wav: np.ndarray, min_silence_sec=0.8) -> int: - """Find the last point without silence at the end of a audio signal. - - Args: - wav (np.ndarray): Audio signal. - threshold_db (int, optional): Silence threshold in decibels. Defaults to -40. - min_silence_sec (float, optional): Ignore silences that are shorter then this in secs. Defaults to 0.8. - - Returns: - int: Last point without silence. - """ - window_length = int(self.sample_rate * min_silence_sec) - hop_length = int(window_length / 4) - threshold = self._db_to_amp(-self.trim_db) - for x in range(hop_length, len(wav) - window_length, hop_length): - if np.max(wav[x : x + window_length]) < threshold: - return x + hop_length - return len(wav) - - def trim_silence(self, wav): - """Trim silent parts with a threshold and 0.01 sec margin""" - margin = int(self.sample_rate * 0.01) - wav = wav[margin:-margin] - return librosa.effects.trim(wav, top_db=self.trim_db, frame_length=self.win_length, hop_length=self.hop_length)[ - 0 - ] - - @staticmethod - def sound_norm(x: np.ndarray) -> np.ndarray: - """Normalize the volume of an audio signal. - - Args: - x (np.ndarray): Raw waveform. - - Returns: - np.ndarray: Volume normalized waveform. - """ - return x / abs(x).max() * 0.95 - - @staticmethod - def _rms_norm(wav, db_level=-27): - r = 10 ** (db_level / 20) - a = np.sqrt((len(wav) * (r**2)) / np.sum(wav**2)) - return wav * a - - def rms_volume_norm(self, x: np.ndarray, db_level: float = None) -> np.ndarray: - """Normalize the volume based on RMS of the signal. - - Args: - x (np.ndarray): Raw waveform. - - Returns: - np.ndarray: RMS normalized waveform. - """ - if db_level is None: - db_level = self.db_level - assert -99 <= db_level <= 0, " [!] db_level should be between -99 and 0" - wav = self._rms_norm(x, db_level) - return wav - - ### save and load ### - def load_wav(self, filename: str, sr: int = None) -> np.ndarray: - """Read a wav file using Librosa and optionally resample, silence trim, volume normalize. - - Resampling slows down loading the file significantly. Therefore it is recommended to resample the file before. - - Args: - filename (str): Path to the wav file. - sr (int, optional): Sampling rate for resampling. Defaults to None. - - Returns: - np.ndarray: Loaded waveform. - """ - if self.resample: - # loading with resampling. It is significantly slower. - x, sr = librosa.load(filename, sr=self.sample_rate) - elif sr is None: - # SF is faster than librosa for loading files - x, sr = sf.read(filename) - assert self.sample_rate == sr, "%s vs %s" % (self.sample_rate, sr) - else: - x, sr = librosa.load(filename, sr=sr) - if self.do_trim_silence: - try: - x = self.trim_silence(x) - except ValueError: - print(f" [!] File cannot be trimmed for silence - {filename}") - if self.do_sound_norm: - x = self.sound_norm(x) - if self.do_rms_norm: - x = self.rms_volume_norm(x, self.db_level) - return x - - def save_wav(self, wav: np.ndarray, path: str, sr: int = None) -> None: - """Save a waveform to a file using Scipy. - - Args: - wav (np.ndarray): Waveform to save. - path (str): Path to a output file. - sr (int, optional): Sampling rate used for saving to the file. Defaults to None. - """ - if self.do_rms_norm: - wav_norm = self.rms_volume_norm(wav, self.db_level) * 32767 - else: - wav_norm = wav * (32767 / max(0.01, np.max(np.abs(wav)))) - - scipy.io.wavfile.write(path, sr if sr else self.sample_rate, wav_norm.astype(np.int16)) - - def get_duration(self, filename: str) -> float: - """Get the duration of a wav file using Librosa. - - Args: - filename (str): Path to the wav file. - """ - return librosa.get_duration(filename=filename) - - @staticmethod - def mulaw_encode(wav: np.ndarray, qc: int) -> np.ndarray: - mu = 2**qc - 1 - # wav_abs = np.minimum(np.abs(wav), 1.0) - signal = np.sign(wav) * np.log(1 + mu * np.abs(wav)) / np.log(1.0 + mu) - # Quantize signal to the specified number of levels. - signal = (signal + 1) / 2 * mu + 0.5 - return np.floor( - signal, - ) - - @staticmethod - def mulaw_decode(wav, qc): - """Recovers waveform from quantized values.""" - mu = 2**qc - 1 - x = np.sign(wav) / mu * ((1 + mu) ** np.abs(wav) - 1) - return x - - @staticmethod - def encode_16bits(x): - return np.clip(x * 2**15, -(2**15), 2**15 - 1).astype(np.int16) - - @staticmethod - def quantize(x: np.ndarray, bits: int) -> np.ndarray: - """Quantize a waveform to a given number of bits. - - Args: - x (np.ndarray): Waveform to quantize. Must be normalized into the range `[-1, 1]`. - bits (int): Number of quantization bits. - - Returns: - np.ndarray: Quantized waveform. - """ - return (x + 1.0) * (2**bits - 1) / 2 - - @staticmethod - def dequantize(x, bits): - """Dequantize a waveform from the given number of bits.""" - return 2 * x / (2**bits - 1) - 1 - - -def _log(x, base): - if base == 10: - return np.log10(x) - return np.log(x) - - -def _exp(x, base): - if base == 10: - return np.power(10, x) - return np.exp(x) diff --git a/TTS/utils/audio/torch_transforms.py b/TTS/utils/audio/torch_transforms.py deleted file mode 100644 index fd40ebb048b915a836ba0d84dc22054d23b1d886..0000000000000000000000000000000000000000 --- a/TTS/utils/audio/torch_transforms.py +++ /dev/null @@ -1,165 +0,0 @@ -import librosa -import torch -from torch import nn - - -class TorchSTFT(nn.Module): # pylint: disable=abstract-method - """Some of the audio processing funtions using Torch for faster batch processing. - - Args: - - n_fft (int): - FFT window size for STFT. - - hop_length (int): - number of frames between STFT columns. - - win_length (int, optional): - STFT window length. - - pad_wav (bool, optional): - If True pad the audio with (n_fft - hop_length) / 2). Defaults to False. - - window (str, optional): - The name of a function to create a window tensor that is applied/multiplied to each frame/window. Defaults to "hann_window" - - sample_rate (int, optional): - target audio sampling rate. Defaults to None. - - mel_fmin (int, optional): - minimum filter frequency for computing melspectrograms. Defaults to None. - - mel_fmax (int, optional): - maximum filter frequency for computing melspectrograms. Defaults to None. - - n_mels (int, optional): - number of melspectrogram dimensions. Defaults to None. - - use_mel (bool, optional): - If True compute the melspectrograms otherwise. Defaults to False. - - do_amp_to_db_linear (bool, optional): - enable/disable amplitude to dB conversion of linear spectrograms. Defaults to False. - - spec_gain (float, optional): - gain applied when converting amplitude to DB. Defaults to 1.0. - - power (float, optional): - Exponent for the magnitude spectrogram, e.g., 1 for energy, 2 for power, etc. Defaults to None. - - use_htk (bool, optional): - Use HTK formula in mel filter instead of Slaney. - - mel_norm (None, 'slaney', or number, optional): - If 'slaney', divide the triangular mel weights by the width of the mel band - (area normalization). - - If numeric, use `librosa.util.normalize` to normalize each filter by to unit l_p norm. - See `librosa.util.normalize` for a full description of supported norm values - (including `+-np.inf`). - - Otherwise, leave all the triangles aiming for a peak value of 1.0. Defaults to "slaney". - """ - - def __init__( - self, - n_fft, - hop_length, - win_length, - pad_wav=False, - window="hann_window", - sample_rate=None, - mel_fmin=0, - mel_fmax=None, - n_mels=80, - use_mel=False, - do_amp_to_db=False, - spec_gain=1.0, - power=None, - use_htk=False, - mel_norm="slaney", - normalized=False, - ): - super().__init__() - self.n_fft = n_fft - self.hop_length = hop_length - self.win_length = win_length - self.pad_wav = pad_wav - self.sample_rate = sample_rate - self.mel_fmin = mel_fmin - self.mel_fmax = mel_fmax - self.n_mels = n_mels - self.use_mel = use_mel - self.do_amp_to_db = do_amp_to_db - self.spec_gain = spec_gain - self.power = power - self.use_htk = use_htk - self.mel_norm = mel_norm - self.window = nn.Parameter(getattr(torch, window)(win_length), requires_grad=False) - self.mel_basis = None - self.normalized = normalized - if use_mel: - self._build_mel_basis() - - def __call__(self, x): - """Compute spectrogram frames by torch based stft. - - Args: - x (Tensor): input waveform - - Returns: - Tensor: spectrogram frames. - - Shapes: - x: [B x T] or [:math:`[B, 1, T]`] - """ - if x.ndim == 2: - x = x.unsqueeze(1) - if self.pad_wav: - padding = int((self.n_fft - self.hop_length) / 2) - x = torch.nn.functional.pad(x, (padding, padding), mode="reflect") - # B x D x T x 2 - o = torch.stft( - x.squeeze(1), - self.n_fft, - self.hop_length, - self.win_length, - self.window, - center=True, - pad_mode="reflect", # compatible with audio.py - normalized=self.normalized, - onesided=True, - return_complex=False, - ) - M = o[:, :, :, 0] - P = o[:, :, :, 1] - S = torch.sqrt(torch.clamp(M**2 + P**2, min=1e-8)) - - if self.power is not None: - S = S**self.power - - if self.use_mel: - S = torch.matmul(self.mel_basis.to(x), S) - if self.do_amp_to_db: - S = self._amp_to_db(S, spec_gain=self.spec_gain) - return S - - def _build_mel_basis(self): - mel_basis = librosa.filters.mel( - sr=self.sample_rate, - n_fft=self.n_fft, - n_mels=self.n_mels, - fmin=self.mel_fmin, - fmax=self.mel_fmax, - htk=self.use_htk, - norm=self.mel_norm, - ) - self.mel_basis = torch.from_numpy(mel_basis).float() - - @staticmethod - def _amp_to_db(x, spec_gain=1.0): - return torch.log(torch.clamp(x, min=1e-5) * spec_gain) - - @staticmethod - def _db_to_amp(x, spec_gain=1.0): - return torch.exp(x) / spec_gain diff --git a/TTS/utils/callbacks.py b/TTS/utils/callbacks.py deleted file mode 100644 index 511d215c656f1ce3ed31484963db64fae4dc77d4..0000000000000000000000000000000000000000 --- a/TTS/utils/callbacks.py +++ /dev/null @@ -1,105 +0,0 @@ -class TrainerCallback: - @staticmethod - def on_init_start(trainer) -> None: - if hasattr(trainer.model, "module"): - if hasattr(trainer.model.module, "on_init_start"): - trainer.model.module.on_init_start(trainer) - else: - if hasattr(trainer.model, "on_init_start"): - trainer.model.on_init_start(trainer) - - if hasattr(trainer.criterion, "on_init_start"): - trainer.criterion.on_init_start(trainer) - - if hasattr(trainer.optimizer, "on_init_start"): - trainer.optimizer.on_init_start(trainer) - - @staticmethod - def on_init_end(trainer) -> None: - if hasattr(trainer.model, "module"): - if hasattr(trainer.model.module, "on_init_end"): - trainer.model.module.on_init_end(trainer) - else: - if hasattr(trainer.model, "on_init_end"): - trainer.model.on_init_end(trainer) - - if hasattr(trainer.criterion, "on_init_end"): - trainer.criterion.on_init_end(trainer) - - if hasattr(trainer.optimizer, "on_init_end"): - trainer.optimizer.on_init_end(trainer) - - @staticmethod - def on_epoch_start(trainer) -> None: - if hasattr(trainer.model, "module"): - if hasattr(trainer.model.module, "on_epoch_start"): - trainer.model.module.on_epoch_start(trainer) - else: - if hasattr(trainer.model, "on_epoch_start"): - trainer.model.on_epoch_start(trainer) - - if hasattr(trainer.criterion, "on_epoch_start"): - trainer.criterion.on_epoch_start(trainer) - - if hasattr(trainer.optimizer, "on_epoch_start"): - trainer.optimizer.on_epoch_start(trainer) - - @staticmethod - def on_epoch_end(trainer) -> None: - if hasattr(trainer.model, "module"): - if hasattr(trainer.model.module, "on_epoch_end"): - trainer.model.module.on_epoch_end(trainer) - else: - if hasattr(trainer.model, "on_epoch_end"): - trainer.model.on_epoch_end(trainer) - - if hasattr(trainer.criterion, "on_epoch_end"): - trainer.criterion.on_epoch_end(trainer) - - if hasattr(trainer.optimizer, "on_epoch_end"): - trainer.optimizer.on_epoch_end(trainer) - - @staticmethod - def on_train_step_start(trainer) -> None: - if hasattr(trainer.model, "module"): - if hasattr(trainer.model.module, "on_train_step_start"): - trainer.model.module.on_train_step_start(trainer) - else: - if hasattr(trainer.model, "on_train_step_start"): - trainer.model.on_train_step_start(trainer) - - if hasattr(trainer.criterion, "on_train_step_start"): - trainer.criterion.on_train_step_start(trainer) - - if hasattr(trainer.optimizer, "on_train_step_start"): - trainer.optimizer.on_train_step_start(trainer) - - @staticmethod - def on_train_step_end(trainer) -> None: - if hasattr(trainer.model, "module"): - if hasattr(trainer.model.module, "on_train_step_end"): - trainer.model.module.on_train_step_end(trainer) - else: - if hasattr(trainer.model, "on_train_step_end"): - trainer.model.on_train_step_end(trainer) - - if hasattr(trainer.criterion, "on_train_step_end"): - trainer.criterion.on_train_step_end(trainer) - - if hasattr(trainer.optimizer, "on_train_step_end"): - trainer.optimizer.on_train_step_end(trainer) - - @staticmethod - def on_keyboard_interrupt(trainer) -> None: - if hasattr(trainer.model, "module"): - if hasattr(trainer.model.module, "on_keyboard_interrupt"): - trainer.model.module.on_keyboard_interrupt(trainer) - else: - if hasattr(trainer.model, "on_keyboard_interrupt"): - trainer.model.on_keyboard_interrupt(trainer) - - if hasattr(trainer.criterion, "on_keyboard_interrupt"): - trainer.criterion.on_keyboard_interrupt(trainer) - - if hasattr(trainer.optimizer, "on_keyboard_interrupt"): - trainer.optimizer.on_keyboard_interrupt(trainer) diff --git a/TTS/utils/capacitron_optimizer.py b/TTS/utils/capacitron_optimizer.py deleted file mode 100644 index 7206ffd508896cab96a22288f33a93e999c5f009..0000000000000000000000000000000000000000 --- a/TTS/utils/capacitron_optimizer.py +++ /dev/null @@ -1,67 +0,0 @@ -from typing import Generator - -from trainer.trainer_utils import get_optimizer - - -class CapacitronOptimizer: - """Double optimizer class for the Capacitron model.""" - - def __init__(self, config: dict, model_params: Generator) -> None: - self.primary_params, self.secondary_params = self.split_model_parameters(model_params) - - optimizer_names = list(config.optimizer_params.keys()) - optimizer_parameters = list(config.optimizer_params.values()) - - self.primary_optimizer = get_optimizer( - optimizer_names[0], - optimizer_parameters[0], - config.lr, - parameters=self.primary_params, - ) - - self.secondary_optimizer = get_optimizer( - optimizer_names[1], - self.extract_optimizer_parameters(optimizer_parameters[1]), - optimizer_parameters[1]["lr"], - parameters=self.secondary_params, - ) - - self.param_groups = self.primary_optimizer.param_groups - - def first_step(self): - self.secondary_optimizer.step() - self.secondary_optimizer.zero_grad() - self.primary_optimizer.zero_grad() - - def step(self): - # Update param groups to display the correct learning rate - self.param_groups = self.primary_optimizer.param_groups - self.primary_optimizer.step() - - def zero_grad(self, set_to_none=False): - self.primary_optimizer.zero_grad(set_to_none) - self.secondary_optimizer.zero_grad(set_to_none) - - def load_state_dict(self, state_dict): - self.primary_optimizer.load_state_dict(state_dict[0]) - self.secondary_optimizer.load_state_dict(state_dict[1]) - - def state_dict(self): - return [self.primary_optimizer.state_dict(), self.secondary_optimizer.state_dict()] - - @staticmethod - def split_model_parameters(model_params: Generator) -> list: - primary_params = [] - secondary_params = [] - for name, param in model_params: - if param.requires_grad: - if name == "capacitron_vae_layer.beta": - secondary_params.append(param) - else: - primary_params.append(param) - return [iter(primary_params), iter(secondary_params)] - - @staticmethod - def extract_optimizer_parameters(params: dict) -> dict: - """Extract parameters that are not the learning rate""" - return {k: v for k, v in params.items() if k != "lr"} diff --git a/TTS/utils/distribute.py b/TTS/utils/distribute.py deleted file mode 100644 index a51ef7661ece97c87c165ad1aba4c9d9700379dc..0000000000000000000000000000000000000000 --- a/TTS/utils/distribute.py +++ /dev/null @@ -1,20 +0,0 @@ -# edited from https://github.com/fastai/imagenet-fast/blob/master/imagenet_nv/distributed.py -import torch -import torch.distributed as dist - - -def reduce_tensor(tensor, num_gpus): - rt = tensor.clone() - dist.all_reduce(rt, op=dist.reduce_op.SUM) - rt /= num_gpus - return rt - - -def init_distributed(rank, num_gpus, group_name, dist_backend, dist_url): - assert torch.cuda.is_available(), "Distributed mode requires CUDA." - - # Set cuda device so everything is done on the right GPU. - torch.cuda.set_device(rank % torch.cuda.device_count()) - - # Initialize distributed communication - dist.init_process_group(dist_backend, init_method=dist_url, world_size=num_gpus, rank=rank, group_name=group_name) diff --git a/TTS/utils/download.py b/TTS/utils/download.py deleted file mode 100644 index 3f06b578248441d9951bf0ee62e2764ffd9ff9d7..0000000000000000000000000000000000000000 --- a/TTS/utils/download.py +++ /dev/null @@ -1,206 +0,0 @@ -# Adapted from https://github.com/pytorch/audio/ - -import hashlib -import logging -import os -import tarfile -import urllib -import urllib.request -import zipfile -from os.path import expanduser -from typing import Any, Iterable, List, Optional - -from torch.utils.model_zoo import tqdm - - -def stream_url( - url: str, start_byte: Optional[int] = None, block_size: int = 32 * 1024, progress_bar: bool = True -) -> Iterable: - """Stream url by chunk - - Args: - url (str): Url. - start_byte (int or None, optional): Start streaming at that point (Default: ``None``). - block_size (int, optional): Size of chunks to stream (Default: ``32 * 1024``). - progress_bar (bool, optional): Display a progress bar (Default: ``True``). - """ - - # If we already have the whole file, there is no need to download it again - req = urllib.request.Request(url, method="HEAD") - with urllib.request.urlopen(req) as response: - url_size = int(response.info().get("Content-Length", -1)) - if url_size == start_byte: - return - - req = urllib.request.Request(url) - if start_byte: - req.headers["Range"] = "bytes={}-".format(start_byte) - - with urllib.request.urlopen(req) as upointer, tqdm( - unit="B", - unit_scale=True, - unit_divisor=1024, - total=url_size, - disable=not progress_bar, - ) as pbar: - num_bytes = 0 - while True: - chunk = upointer.read(block_size) - if not chunk: - break - yield chunk - num_bytes += len(chunk) - pbar.update(len(chunk)) - - -def download_url( - url: str, - download_folder: str, - filename: Optional[str] = None, - hash_value: Optional[str] = None, - hash_type: str = "sha256", - progress_bar: bool = True, - resume: bool = False, -) -> None: - """Download file to disk. - - Args: - url (str): Url. - download_folder (str): Folder to download file. - filename (str or None, optional): Name of downloaded file. If None, it is inferred from the url - (Default: ``None``). - hash_value (str or None, optional): Hash for url (Default: ``None``). - hash_type (str, optional): Hash type, among "sha256" and "md5" (Default: ``"sha256"``). - progress_bar (bool, optional): Display a progress bar (Default: ``True``). - resume (bool, optional): Enable resuming download (Default: ``False``). - """ - - req = urllib.request.Request(url, method="HEAD") - req_info = urllib.request.urlopen(req).info() # pylint: disable=consider-using-with - - # Detect filename - filename = filename or req_info.get_filename() or os.path.basename(url) - filepath = os.path.join(download_folder, filename) - if resume and os.path.exists(filepath): - mode = "ab" - local_size: Optional[int] = os.path.getsize(filepath) - - elif not resume and os.path.exists(filepath): - raise RuntimeError("{} already exists. Delete the file manually and retry.".format(filepath)) - else: - mode = "wb" - local_size = None - - if hash_value and local_size == int(req_info.get("Content-Length", -1)): - with open(filepath, "rb") as file_obj: - if validate_file(file_obj, hash_value, hash_type): - return - raise RuntimeError("The hash of {} does not match. Delete the file manually and retry.".format(filepath)) - - with open(filepath, mode) as fpointer: - for chunk in stream_url(url, start_byte=local_size, progress_bar=progress_bar): - fpointer.write(chunk) - - with open(filepath, "rb") as file_obj: - if hash_value and not validate_file(file_obj, hash_value, hash_type): - raise RuntimeError("The hash of {} does not match. Delete the file manually and retry.".format(filepath)) - - -def validate_file(file_obj: Any, hash_value: str, hash_type: str = "sha256") -> bool: - """Validate a given file object with its hash. - - Args: - file_obj: File object to read from. - hash_value (str): Hash for url. - hash_type (str, optional): Hash type, among "sha256" and "md5" (Default: ``"sha256"``). - - Returns: - bool: return True if its a valid file, else False. - """ - - if hash_type == "sha256": - hash_func = hashlib.sha256() - elif hash_type == "md5": - hash_func = hashlib.md5() - else: - raise ValueError - - while True: - # Read by chunk to avoid filling memory - chunk = file_obj.read(1024**2) - if not chunk: - break - hash_func.update(chunk) - - return hash_func.hexdigest() == hash_value - - -def extract_archive(from_path: str, to_path: Optional[str] = None, overwrite: bool = False) -> List[str]: - """Extract archive. - Args: - from_path (str): the path of the archive. - to_path (str or None, optional): the root path of the extraced files (directory of from_path) - (Default: ``None``) - overwrite (bool, optional): overwrite existing files (Default: ``False``) - - Returns: - list: List of paths to extracted files even if not overwritten. - """ - - if to_path is None: - to_path = os.path.dirname(from_path) - - try: - with tarfile.open(from_path, "r") as tar: - logging.info("Opened tar file %s.", from_path) - files = [] - for file_ in tar: # type: Any - file_path = os.path.join(to_path, file_.name) - if file_.isfile(): - files.append(file_path) - if os.path.exists(file_path): - logging.info("%s already extracted.", file_path) - if not overwrite: - continue - tar.extract(file_, to_path) - return files - except tarfile.ReadError: - pass - - try: - with zipfile.ZipFile(from_path, "r") as zfile: - logging.info("Opened zip file %s.", from_path) - files = zfile.namelist() - for file_ in files: - file_path = os.path.join(to_path, file_) - if os.path.exists(file_path): - logging.info("%s already extracted.", file_path) - if not overwrite: - continue - zfile.extract(file_, to_path) - return files - except zipfile.BadZipFile: - pass - - raise NotImplementedError(" > [!] only supports tar.gz, tgz, and zip achives.") - - -def download_kaggle_dataset(dataset_path: str, dataset_name: str, output_path: str): - """Download dataset from kaggle. - Args: - dataset_path (str): - This the kaggle link to the dataset. for example vctk is 'mfekadu/english-multispeaker-corpus-for-voice-cloning' - dataset_name (str): Name of the folder the dataset will be saved in. - output_path (str): Path of the location you want the dataset folder to be saved to. - """ - data_path = os.path.join(output_path, dataset_name) - try: - import kaggle # pylint: disable=import-outside-toplevel - - kaggle.api.authenticate() - print(f"""\nDownloading {dataset_name}...""") - kaggle.api.dataset_download_files(dataset_path, path=data_path, unzip=True) - except OSError: - print( - f"""[!] in order to download kaggle datasets, you need to have a kaggle api token stored in your {os.path.join(expanduser('~'), '.kaggle/kaggle.json')}""" - ) diff --git a/TTS/utils/downloaders.py b/TTS/utils/downloaders.py deleted file mode 100644 index 104dc7b94e17b1d7f828103d2396d6c5115b628a..0000000000000000000000000000000000000000 --- a/TTS/utils/downloaders.py +++ /dev/null @@ -1,126 +0,0 @@ -import os -from typing import Optional - -from TTS.utils.download import download_kaggle_dataset, download_url, extract_archive - - -def download_ljspeech(path: str): - """Download and extract LJSpeech dataset - - Args: - path (str): path to the directory where the dataset will be stored. - """ - os.makedirs(path, exist_ok=True) - url = "https://data.keithito.com/data/speech/LJSpeech-1.1.tar.bz2" - download_url(url, path) - basename = os.path.basename(url) - archive = os.path.join(path, basename) - print(" > Extracting archive file...") - extract_archive(archive) - - -def download_vctk(path: str, use_kaggle: Optional[bool] = False): - """Download and extract VCTK dataset. - - Args: - path (str): path to the directory where the dataset will be stored. - - use_kaggle (bool, optional): Downloads vctk dataset from kaggle. Is generally faster. Defaults to False. - """ - if use_kaggle: - download_kaggle_dataset("mfekadu/english-multispeaker-corpus-for-voice-cloning", "VCTK", path) - else: - os.makedirs(path, exist_ok=True) - url = "https://datashare.ed.ac.uk/bitstream/handle/10283/3443/VCTK-Corpus-0.92.zip" - download_url(url, path) - basename = os.path.basename(url) - archive = os.path.join(path, basename) - print(" > Extracting archive file...") - extract_archive(archive) - - -def download_tweb(path: str): - """Download and extract Tweb dataset - - Args: - path (str): Path to the directory where the dataset will be stored. - """ - download_kaggle_dataset("bryanpark/the-world-english-bible-speech-dataset", "TWEB", path) - - -def download_libri_tts(path: str, subset: Optional[str] = "all"): - """Download and extract libri tts dataset. - - Args: - path (str): Path to the directory where the dataset will be stored. - - subset (str, optional): Name of the subset to download. If you only want to download a certain - portion specify it here. Defaults to 'all'. - """ - - subset_dict = { - "libri-tts-clean-100": "http://www.openslr.org/resources/60/train-clean-100.tar.gz", - "libri-tts-clean-360": "http://www.openslr.org/resources/60/train-clean-360.tar.gz", - "libri-tts-other-500": "http://www.openslr.org/resources/60/train-other-500.tar.gz", - "libri-tts-dev-clean": "http://www.openslr.org/resources/60/dev-clean.tar.gz", - "libri-tts-dev-other": "http://www.openslr.org/resources/60/dev-other.tar.gz", - "libri-tts-test-clean": "http://www.openslr.org/resources/60/test-clean.tar.gz", - "libri-tts-test-other": "http://www.openslr.org/resources/60/test-other.tar.gz", - } - - os.makedirs(path, exist_ok=True) - if subset == "all": - for sub, val in subset_dict.items(): - print(f" > Downloading {sub}...") - download_url(val, path) - basename = os.path.basename(val) - archive = os.path.join(path, basename) - print(" > Extracting archive file...") - extract_archive(archive) - print(" > All subsets downloaded") - else: - url = subset_dict[subset] - download_url(url, path) - basename = os.path.basename(url) - archive = os.path.join(path, basename) - print(" > Extracting archive file...") - extract_archive(archive) - - -def download_thorsten_de(path: str): - """Download and extract Thorsten german male voice dataset. - - Args: - path (str): Path to the directory where the dataset will be stored. - """ - os.makedirs(path, exist_ok=True) - url = "https://www.openslr.org/resources/95/thorsten-de_v02.tgz" - download_url(url, path) - basename = os.path.basename(url) - archive = os.path.join(path, basename) - print(" > Extracting archive file...") - extract_archive(archive) - - -def download_mailabs(path: str, language: str = "english"): - """Download and extract Mailabs dataset. - - Args: - path (str): Path to the directory where the dataset will be stored. - - language (str): Language subset to download. Defaults to english. - """ - language_dict = { - "english": "https://data.solak.de/data/Training/stt_tts/en_US.tgz", - "german": "https://data.solak.de/data/Training/stt_tts/de_DE.tgz", - "french": "https://data.solak.de/data/Training/stt_tts/fr_FR.tgz", - "italian": "https://data.solak.de/data/Training/stt_tts/it_IT.tgz", - "spanish": "https://data.solak.de/data/Training/stt_tts/es_ES.tgz", - } - os.makedirs(path, exist_ok=True) - url = language_dict[language] - download_url(url, path) - basename = os.path.basename(url) - archive = os.path.join(path, basename) - print(" > Extracting archive file...") - extract_archive(archive) diff --git a/TTS/utils/generic_utils.py b/TTS/utils/generic_utils.py deleted file mode 100644 index f8a11ac53531df4516c066701ed2fd09412f48a1..0000000000000000000000000000000000000000 --- a/TTS/utils/generic_utils.py +++ /dev/null @@ -1,221 +0,0 @@ -# -*- coding: utf-8 -*- -import datetime -import importlib -import os -import re -import subprocess -import sys -from pathlib import Path -from typing import Dict - -import fsspec -import torch - - -def to_cuda(x: torch.Tensor) -> torch.Tensor: - if x is None: - return None - if torch.is_tensor(x): - x = x.contiguous() - if torch.cuda.is_available(): - x = x.cuda(non_blocking=True) - return x - - -def get_cuda(): - use_cuda = torch.cuda.is_available() - device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") - return use_cuda, device - - -def get_git_branch(): - try: - out = subprocess.check_output(["git", "branch"]).decode("utf8") - current = next(line for line in out.split("\n") if line.startswith("*")) - current.replace("* ", "") - except subprocess.CalledProcessError: - current = "inside_docker" - except FileNotFoundError: - current = "unknown" - except StopIteration: - current = "unknown" - return current - - -def get_commit_hash(): - """https://stackoverflow.com/questions/14989858/get-the-current-git-hash-in-a-python-script""" - # try: - # subprocess.check_output(['git', 'diff-index', '--quiet', - # 'HEAD']) # Verify client is clean - # except: - # raise RuntimeError( - # " !! Commit before training to get the commit hash.") - try: - commit = subprocess.check_output(["git", "rev-parse", "--short", "HEAD"]).decode().strip() - # Not copying .git folder into docker container - except (subprocess.CalledProcessError, FileNotFoundError): - commit = "0000000" - return commit - - -def get_experiment_folder_path(root_path, model_name): - """Get an experiment folder path with the current date and time""" - date_str = datetime.datetime.now().strftime("%B-%d-%Y_%I+%M%p") - commit_hash = get_commit_hash() - output_folder = os.path.join(root_path, model_name + "-" + date_str + "-" + commit_hash) - return output_folder - - -def remove_experiment_folder(experiment_path): - """Check folder if there is a checkpoint, otherwise remove the folder""" - fs = fsspec.get_mapper(experiment_path).fs - checkpoint_files = fs.glob(experiment_path + "/*.pth") - if not checkpoint_files: - if fs.exists(experiment_path): - fs.rm(experiment_path, recursive=True) - print(" ! Run is removed from {}".format(experiment_path)) - else: - print(" ! Run is kept in {}".format(experiment_path)) - - -def count_parameters(model): - r"""Count number of trainable parameters in a network""" - return sum(p.numel() for p in model.parameters() if p.requires_grad) - - -def to_camel(text): - text = text.capitalize() - text = re.sub(r"(?!^)_([a-zA-Z])", lambda m: m.group(1).upper(), text) - text = text.replace("Tts", "TTS") - text = text.replace("vc", "VC") - return text - - -def find_module(module_path: str, module_name: str) -> object: - module_name = module_name.lower() - module = importlib.import_module(module_path + "." + module_name) - class_name = to_camel(module_name) - return getattr(module, class_name) - - -def import_class(module_path: str) -> object: - """Import a class from a module path. - - Args: - module_path (str): The module path of the class. - - Returns: - object: The imported class. - """ - class_name = module_path.split(".")[-1] - module_path = ".".join(module_path.split(".")[:-1]) - module = importlib.import_module(module_path) - return getattr(module, class_name) - - -def get_import_path(obj: object) -> str: - """Get the import path of a class. - - Args: - obj (object): The class object. - - Returns: - str: The import path of the class. - """ - return ".".join([type(obj).__module__, type(obj).__name__]) - - -def get_user_data_dir(appname): - TTS_HOME = os.environ.get("TTS_HOME") - XDG_DATA_HOME = os.environ.get("XDG_DATA_HOME") - if TTS_HOME is not None: - ans = Path(TTS_HOME).expanduser().resolve(strict=False) - elif XDG_DATA_HOME is not None: - ans = Path(XDG_DATA_HOME).expanduser().resolve(strict=False) - elif sys.platform == "win32": - import winreg # pylint: disable=import-outside-toplevel - - key = winreg.OpenKey( - winreg.HKEY_CURRENT_USER, r"Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" - ) - dir_, _ = winreg.QueryValueEx(key, "Local AppData") - ans = Path(dir_).resolve(strict=False) - elif sys.platform == "darwin": - ans = Path("~/Library/Application Support/").expanduser() - else: - ans = Path.home().joinpath(".local/share") - return ans.joinpath(appname) - - -def set_init_dict(model_dict, checkpoint_state, c): - # Partial initialization: if there is a mismatch with new and old layer, it is skipped. - for k, v in checkpoint_state.items(): - if k not in model_dict: - print(" | > Layer missing in the model definition: {}".format(k)) - # 1. filter out unnecessary keys - pretrained_dict = {k: v for k, v in checkpoint_state.items() if k in model_dict} - # 2. filter out different size layers - pretrained_dict = {k: v for k, v in pretrained_dict.items() if v.numel() == model_dict[k].numel()} - # 3. skip reinit layers - if c.has("reinit_layers") and c.reinit_layers is not None: - for reinit_layer_name in c.reinit_layers: - pretrained_dict = {k: v for k, v in pretrained_dict.items() if reinit_layer_name not in k} - # 4. overwrite entries in the existing state dict - model_dict.update(pretrained_dict) - print(" | > {} / {} layers are restored.".format(len(pretrained_dict), len(model_dict))) - return model_dict - - -def format_aux_input(def_args: Dict, kwargs: Dict) -> Dict: - """Format kwargs to hande auxilary inputs to models. - - Args: - def_args (Dict): A dictionary of argument names and their default values if not defined in `kwargs`. - kwargs (Dict): A `dict` or `kwargs` that includes auxilary inputs to the model. - - Returns: - Dict: arguments with formatted auxilary inputs. - """ - kwargs = kwargs.copy() - for name in def_args: - if name not in kwargs or kwargs[name] is None: - kwargs[name] = def_args[name] - return kwargs - - -class KeepAverage: - def __init__(self): - self.avg_values = {} - self.iters = {} - - def __getitem__(self, key): - return self.avg_values[key] - - def items(self): - return self.avg_values.items() - - def add_value(self, name, init_val=0, init_iter=0): - self.avg_values[name] = init_val - self.iters[name] = init_iter - - def update_value(self, name, value, weighted_avg=False): - if name not in self.avg_values: - # add value if not exist before - self.add_value(name, init_val=value) - else: - # else update existing value - if weighted_avg: - self.avg_values[name] = 0.99 * self.avg_values[name] + 0.01 * value - self.iters[name] += 1 - else: - self.avg_values[name] = self.avg_values[name] * self.iters[name] + value - self.iters[name] += 1 - self.avg_values[name] /= self.iters[name] - - def add_values(self, name_dict): - for key, value in name_dict.items(): - self.add_value(key, init_val=value) - - def update_values(self, value_dict): - for key, value in value_dict.items(): - self.update_value(key, value) diff --git a/TTS/utils/io.py b/TTS/utils/io.py deleted file mode 100644 index e9bdf3e68620052c15f7f5b2d0c00c8ad426f85f..0000000000000000000000000000000000000000 --- a/TTS/utils/io.py +++ /dev/null @@ -1,216 +0,0 @@ -import datetime -import json -import os -import pickle as pickle_tts -import shutil -from typing import Any, Callable, Dict, Union - -import fsspec -import torch -from coqpit import Coqpit - -from TTS.utils.generic_utils import get_user_data_dir - - -class RenamingUnpickler(pickle_tts.Unpickler): - """Overload default pickler to solve module renaming problem""" - - def find_class(self, module, name): - return super().find_class(module.replace("mozilla_voice_tts", "TTS"), name) - - -class AttrDict(dict): - """A custom dict which converts dict keys - to class attributes""" - - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - self.__dict__ = self - - -def copy_model_files(config: Coqpit, out_path, new_fields=None): - """Copy config.json and other model files to training folder and add - new fields. - - Args: - config (Coqpit): Coqpit config defining the training run. - out_path (str): output path to copy the file. - new_fields (dict): new fileds to be added or edited - in the config file. - """ - copy_config_path = os.path.join(out_path, "config.json") - # add extra information fields - if new_fields: - config.update(new_fields, allow_new=True) - # TODO: Revert to config.save_json() once Coqpit supports arbitrary paths. - with fsspec.open(copy_config_path, "w", encoding="utf8") as f: - json.dump(config.to_dict(), f, indent=4) - - # copy model stats file if available - if config.audio.stats_path is not None: - copy_stats_path = os.path.join(out_path, "scale_stats.npy") - filesystem = fsspec.get_mapper(copy_stats_path).fs - if not filesystem.exists(copy_stats_path): - with fsspec.open(config.audio.stats_path, "rb") as source_file: - with fsspec.open(copy_stats_path, "wb") as target_file: - shutil.copyfileobj(source_file, target_file) - - -def load_fsspec( - path: str, - map_location: Union[str, Callable, torch.device, Dict[Union[str, torch.device], Union[str, torch.device]]] = None, - cache: bool = True, - **kwargs, -) -> Any: - """Like torch.load but can load from other locations (e.g. s3:// , gs://). - - Args: - path: Any path or url supported by fsspec. - map_location: torch.device or str. - cache: If True, cache a remote file locally for subsequent calls. It is cached under `get_user_data_dir()/tts_cache`. Defaults to True. - **kwargs: Keyword arguments forwarded to torch.load. - - Returns: - Object stored in path. - """ - is_local = os.path.isdir(path) or os.path.isfile(path) - if cache and not is_local: - with fsspec.open( - f"filecache::{path}", - filecache={"cache_storage": str(get_user_data_dir("tts_cache"))}, - mode="rb", - ) as f: - return torch.load(f, map_location=map_location, **kwargs) - else: - with fsspec.open(path, "rb") as f: - return torch.load(f, map_location=map_location, **kwargs) - - -def load_checkpoint( - model, checkpoint_path, use_cuda=False, eval=False, cache=False -): # pylint: disable=redefined-builtin - try: - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - except ModuleNotFoundError: - pickle_tts.Unpickler = RenamingUnpickler - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), pickle_module=pickle_tts, cache=cache) - model.load_state_dict(state["model"]) - if use_cuda: - model.cuda() - if eval: - model.eval() - return model, state - - -def save_fsspec(state: Any, path: str, **kwargs): - """Like torch.save but can save to other locations (e.g. s3:// , gs://). - - Args: - state: State object to save - path: Any path or url supported by fsspec. - **kwargs: Keyword arguments forwarded to torch.save. - """ - with fsspec.open(path, "wb") as f: - torch.save(state, f, **kwargs) - - -def save_model(config, model, optimizer, scaler, current_step, epoch, output_path, **kwargs): - if hasattr(model, "module"): - model_state = model.module.state_dict() - else: - model_state = model.state_dict() - if isinstance(optimizer, list): - optimizer_state = [optim.state_dict() for optim in optimizer] - elif optimizer.__class__.__name__ == "CapacitronOptimizer": - optimizer_state = [optimizer.primary_optimizer.state_dict(), optimizer.secondary_optimizer.state_dict()] - else: - optimizer_state = optimizer.state_dict() if optimizer is not None else None - - if isinstance(scaler, list): - scaler_state = [s.state_dict() for s in scaler] - else: - scaler_state = scaler.state_dict() if scaler is not None else None - - if isinstance(config, Coqpit): - config = config.to_dict() - - state = { - "config": config, - "model": model_state, - "optimizer": optimizer_state, - "scaler": scaler_state, - "step": current_step, - "epoch": epoch, - "date": datetime.date.today().strftime("%B %d, %Y"), - } - state.update(kwargs) - save_fsspec(state, output_path) - - -def save_checkpoint( - config, - model, - optimizer, - scaler, - current_step, - epoch, - output_folder, - **kwargs, -): - file_name = "checkpoint_{}.pth".format(current_step) - checkpoint_path = os.path.join(output_folder, file_name) - print("\n > CHECKPOINT : {}".format(checkpoint_path)) - save_model( - config, - model, - optimizer, - scaler, - current_step, - epoch, - checkpoint_path, - **kwargs, - ) - - -def save_best_model( - current_loss, - best_loss, - config, - model, - optimizer, - scaler, - current_step, - epoch, - out_path, - keep_all_best=False, - keep_after=10000, - **kwargs, -): - if current_loss < best_loss: - best_model_name = f"best_model_{current_step}.pth" - checkpoint_path = os.path.join(out_path, best_model_name) - print(" > BEST MODEL : {}".format(checkpoint_path)) - save_model( - config, - model, - optimizer, - scaler, - current_step, - epoch, - checkpoint_path, - model_loss=current_loss, - **kwargs, - ) - fs = fsspec.get_mapper(out_path).fs - # only delete previous if current is saved successfully - if not keep_all_best or (current_step < keep_after): - model_names = fs.glob(os.path.join(out_path, "best_model*.pth")) - for model_name in model_names: - if os.path.basename(model_name) != best_model_name: - fs.rm(model_name) - # create a shortcut which always points to the currently best model - shortcut_name = "best_model.pth" - shortcut_path = os.path.join(out_path, shortcut_name) - fs.copy(checkpoint_path, shortcut_path) - best_loss = current_loss - return best_loss diff --git a/TTS/utils/manage.py b/TTS/utils/manage.py deleted file mode 100644 index d6fbfb16248f8a884cc1ed7e9cfbabff407c1437..0000000000000000000000000000000000000000 --- a/TTS/utils/manage.py +++ /dev/null @@ -1,538 +0,0 @@ -import json -import os -import tarfile -import zipfile -from pathlib import Path -from shutil import copyfile, rmtree -from typing import Dict, List, Tuple - -import requests -from tqdm import tqdm - -from TTS.config import load_config -from TTS.utils.generic_utils import get_user_data_dir - -LICENSE_URLS = { - "cc by-nc-nd 4.0": "https://creativecommons.org/licenses/by-nc-nd/4.0/", - "mpl": "https://www.mozilla.org/en-US/MPL/2.0/", - "mpl2": "https://www.mozilla.org/en-US/MPL/2.0/", - "mpl 2.0": "https://www.mozilla.org/en-US/MPL/2.0/", - "mit": "https://choosealicense.com/licenses/mit/", - "apache 2.0": "https://choosealicense.com/licenses/apache-2.0/", - "apache2": "https://choosealicense.com/licenses/apache-2.0/", - "cc-by-sa 4.0": "https://creativecommons.org/licenses/by-sa/4.0/", -} - - -class ModelManager(object): - """Manage TTS models defined in .models.json. - It provides an interface to list and download - models defines in '.model.json' - - Models are downloaded under '.TTS' folder in the user's - home path. - - Args: - models_file (str): path to .model.json file. Defaults to None. - output_prefix (str): prefix to `tts` to download models. Defaults to None - progress_bar (bool): print a progress bar when donwloading a file. Defaults to False. - verbose (bool): print info. Defaults to True. - """ - - def __init__(self, models_file=None, output_prefix=None, progress_bar=False, verbose=True): - super().__init__() - self.progress_bar = progress_bar - self.verbose = verbose - if output_prefix is None: - self.output_prefix = get_user_data_dir("tts") - else: - self.output_prefix = os.path.join(output_prefix, "tts") - self.models_dict = None - if models_file is not None: - self.read_models_file(models_file) - else: - # try the default location - path = Path(__file__).parent / "../.models.json" - self.read_models_file(path) - - def read_models_file(self, file_path): - """Read .models.json as a dict - - Args: - file_path (str): path to .models.json. - """ - with open(file_path, "r", encoding="utf-8") as json_file: - self.models_dict = json.load(json_file) - - def add_cs_api_models(self, model_list: List[str]): - """Add list of Coqui Studio model names that are returned from the api - - Each has the following format `/en//` - """ - - def _add_model(model_name: str): - if not "coqui_studio" in model_name: - return - model_type, lang, dataset, model = model_name.split("/") - if model_type not in self.models_dict: - self.models_dict[model_type] = {} - if lang not in self.models_dict[model_type]: - self.models_dict[model_type][lang] = {} - if dataset not in self.models_dict[model_type][lang]: - self.models_dict[model_type][lang][dataset] = {} - if model not in self.models_dict[model_type][lang][dataset]: - self.models_dict[model_type][lang][dataset][model] = {} - - for model_name in model_list: - _add_model(model_name) - - def _list_models(self, model_type, model_count=0): - if self.verbose: - print("\n Name format: type/language/dataset/model") - model_list = [] - for lang in self.models_dict[model_type]: - for dataset in self.models_dict[model_type][lang]: - for model in self.models_dict[model_type][lang][dataset]: - model_full_name = f"{model_type}--{lang}--{dataset}--{model}" - output_path = os.path.join(self.output_prefix, model_full_name) - if self.verbose: - if os.path.exists(output_path): - print(f" {model_count}: {model_type}/{lang}/{dataset}/{model} [already downloaded]") - else: - print(f" {model_count}: {model_type}/{lang}/{dataset}/{model}") - model_list.append(f"{model_type}/{lang}/{dataset}/{model}") - model_count += 1 - return model_list - - def _list_for_model_type(self, model_type): - models_name_list = [] - model_count = 1 - model_type = "tts_models" - models_name_list.extend(self._list_models(model_type, model_count)) - return models_name_list - - def list_models(self): - models_name_list = [] - model_count = 1 - for model_type in self.models_dict: - model_list = self._list_models(model_type, model_count) - models_name_list.extend(model_list) - return models_name_list - - def model_info_by_idx(self, model_query): - """Print the description of the model from .models.json file using model_idx - - Args: - model_query (str): / - """ - model_name_list = [] - model_type, model_query_idx = model_query.split("/") - try: - model_query_idx = int(model_query_idx) - if model_query_idx <= 0: - print("> model_query_idx should be a positive integer!") - return - except: - print("> model_query_idx should be an integer!") - return - model_count = 0 - if model_type in self.models_dict: - for lang in self.models_dict[model_type]: - for dataset in self.models_dict[model_type][lang]: - for model in self.models_dict[model_type][lang][dataset]: - model_name_list.append(f"{model_type}/{lang}/{dataset}/{model}") - model_count += 1 - else: - print(f"> model_type {model_type} does not exist in the list.") - return - if model_query_idx > model_count: - print(f"model query idx exceeds the number of available models [{model_count}] ") - else: - model_type, lang, dataset, model = model_name_list[model_query_idx - 1].split("/") - print(f"> model type : {model_type}") - print(f"> language supported : {lang}") - print(f"> dataset used : {dataset}") - print(f"> model name : {model}") - if "description" in self.models_dict[model_type][lang][dataset][model]: - print(f"> description : {self.models_dict[model_type][lang][dataset][model]['description']}") - else: - print("> description : coming soon") - if "default_vocoder" in self.models_dict[model_type][lang][dataset][model]: - print(f"> default_vocoder : {self.models_dict[model_type][lang][dataset][model]['default_vocoder']}") - - def model_info_by_full_name(self, model_query_name): - """Print the description of the model from .models.json file using model_full_name - - Args: - model_query_name (str): Format is /// - """ - model_type, lang, dataset, model = model_query_name.split("/") - if model_type in self.models_dict: - if lang in self.models_dict[model_type]: - if dataset in self.models_dict[model_type][lang]: - if model in self.models_dict[model_type][lang][dataset]: - print(f"> model type : {model_type}") - print(f"> language supported : {lang}") - print(f"> dataset used : {dataset}") - print(f"> model name : {model}") - if "description" in self.models_dict[model_type][lang][dataset][model]: - print( - f"> description : {self.models_dict[model_type][lang][dataset][model]['description']}" - ) - else: - print("> description : coming soon") - if "default_vocoder" in self.models_dict[model_type][lang][dataset][model]: - print( - f"> default_vocoder : {self.models_dict[model_type][lang][dataset][model]['default_vocoder']}" - ) - else: - print(f"> model {model} does not exist for {model_type}/{lang}/{dataset}.") - else: - print(f"> dataset {dataset} does not exist for {model_type}/{lang}.") - else: - print(f"> lang {lang} does not exist for {model_type}.") - else: - print(f"> model_type {model_type} does not exist in the list.") - - def list_tts_models(self): - """Print all `TTS` models and return a list of model names - - Format is `language/dataset/model` - """ - return self._list_for_model_type("tts_models") - - def list_vocoder_models(self): - """Print all the `vocoder` models and return a list of model names - - Format is `language/dataset/model` - """ - return self._list_for_model_type("vocoder_models") - - def list_vc_models(self): - """Print all the voice conversion models and return a list of model names - - Format is `language/dataset/model` - """ - return self._list_for_model_type("voice_conversion_models") - - def list_langs(self): - """Print all the available languages""" - print(" Name format: type/language") - for model_type in self.models_dict: - for lang in self.models_dict[model_type]: - print(f" >: {model_type}/{lang} ") - - def list_datasets(self): - """Print all the datasets""" - print(" Name format: type/language/dataset") - for model_type in self.models_dict: - for lang in self.models_dict[model_type]: - for dataset in self.models_dict[model_type][lang]: - print(f" >: {model_type}/{lang}/{dataset}") - - @staticmethod - def print_model_license(model_item: Dict): - """Print the license of a model - - Args: - model_item (dict): model item in the models.json - """ - if "license" in model_item and model_item["license"].strip() != "": - print(f" > Model's license - {model_item['license']}") - if model_item["license"].lower() in LICENSE_URLS: - print(f" > Check {LICENSE_URLS[model_item['license'].lower()]} for more info.") - else: - print(" > Check https://opensource.org/licenses for more info.") - else: - print(" > Model's license - No license information available") - - def _download_github_model(self, model_item: Dict, output_path: str): - if isinstance(model_item["github_rls_url"], list): - self._download_model_files(model_item["github_rls_url"], output_path, self.progress_bar) - else: - self._download_zip_file(model_item["github_rls_url"], output_path, self.progress_bar) - - def _download_hf_model(self, model_item: Dict, output_path: str): - if isinstance(model_item["hf_url"], list): - self._download_model_files(model_item["hf_url"], output_path, self.progress_bar) - else: - self._download_zip_file(model_item["hf_url"], output_path, self.progress_bar) - - def download_fairseq_model(self, model_name, output_path): - URI_PREFIX = "https://coqui.gateway.scarf.sh/fairseq/" - _, lang, _, _ = model_name.split("/") - model_download_uri = os.path.join(URI_PREFIX, f"{lang}.tar.gz") - self._download_tar_file(model_download_uri, output_path, self.progress_bar) - - @staticmethod - def set_model_url(model_item: Dict): - model_item["model_url"] = None - if "github_rls_url" in model_item: - model_item["model_url"] = model_item["github_rls_url"] - elif "hf_url" in model_item: - model_item["model_url"] = model_item["hf_url"] - elif "fairseq" in model_item["model_name"]: - model_item["model_url"] = "https://coqui.gateway.scarf.sh/fairseq/" - return model_item - - def _set_model_item(self, model_name): - # fetch model info from the dict - model_type, lang, dataset, model = model_name.split("/") - model_full_name = f"{model_type}--{lang}--{dataset}--{model}" - if "fairseq" in model_name: - model_item = { - "model_type": "tts_models", - "license": "CC BY-NC 4.0", - "default_vocoder": None, - "author": "fairseq", - "description": "this model is released by Meta under Fairseq repo. Visit https://github.com/facebookresearch/fairseq/tree/main/examples/mms for more info.", - } - model_item["model_name"] = model_name - else: - # get model from models.json - model_item = self.models_dict[model_type][lang][dataset][model] - model_item["model_type"] = model_type - model_item = self.set_model_url(model_item) - return model_item, model_full_name, model - - def download_model(self, model_name): - """Download model files given the full model name. - Model name is in the format - 'type/language/dataset/model' - e.g. 'tts_model/en/ljspeech/tacotron' - - Every model must have the following files: - - *.pth : pytorch model checkpoint file. - - config.json : model config file. - - scale_stats.npy (if exist): scale values for preprocessing. - - Args: - model_name (str): model name as explained above. - """ - model_item, model_full_name, model = self._set_model_item(model_name) - # set the model specific output path - output_path = os.path.join(self.output_prefix, model_full_name) - if os.path.exists(output_path): - print(f" > {model_name} is already downloaded.") - else: - os.makedirs(output_path, exist_ok=True) - print(f" > Downloading model to {output_path}") - try: - if "fairseq" in model_name: - self.download_fairseq_model(model_name, output_path) - elif "github_rls_url" in model_item: - self._download_github_model(model_item, output_path) - elif "hf_url" in model_item: - self._download_hf_model(model_item, output_path) - - except requests.Exception.RequestException as e: - print(f" > Failed to download the model file to {output_path}") - rmtree(output_path) - raise e - self.print_model_license(model_item=model_item) - # find downloaded files - output_model_path = output_path - output_config_path = None - if ( - model not in ["tortoise-v2", "bark"] and "fairseq" not in model_name - ): # TODO:This is stupid but don't care for now. - output_model_path, output_config_path = self._find_files(output_path) - # update paths in the config.json - self._update_paths(output_path, output_config_path) - return output_model_path, output_config_path, model_item - - @staticmethod - def _find_files(output_path: str) -> Tuple[str, str]: - """Find the model and config files in the output path - - Args: - output_path (str): path to the model files - - Returns: - Tuple[str, str]: path to the model file and config file - """ - model_file = None - config_file = None - for file_name in os.listdir(output_path): - if file_name in ["model_file.pth", "model_file.pth.tar", "model.pth"]: - model_file = os.path.join(output_path, file_name) - elif file_name == "config.json": - config_file = os.path.join(output_path, file_name) - if model_file is None: - raise ValueError(" [!] Model file not found in the output path") - if config_file is None: - raise ValueError(" [!] Config file not found in the output path") - return model_file, config_file - - @staticmethod - def _find_speaker_encoder(output_path: str) -> str: - """Find the speaker encoder file in the output path - - Args: - output_path (str): path to the model files - - Returns: - str: path to the speaker encoder file - """ - speaker_encoder_file = None - for file_name in os.listdir(output_path): - if file_name in ["model_se.pth", "model_se.pth.tar"]: - speaker_encoder_file = os.path.join(output_path, file_name) - return speaker_encoder_file - - def _update_paths(self, output_path: str, config_path: str) -> None: - """Update paths for certain files in config.json after download. - - Args: - output_path (str): local path the model is downloaded to. - config_path (str): local config.json path. - """ - output_stats_path = os.path.join(output_path, "scale_stats.npy") - output_d_vector_file_path = os.path.join(output_path, "speakers.json") - output_d_vector_file_pth_path = os.path.join(output_path, "speakers.pth") - output_speaker_ids_file_path = os.path.join(output_path, "speaker_ids.json") - output_speaker_ids_file_pth_path = os.path.join(output_path, "speaker_ids.pth") - speaker_encoder_config_path = os.path.join(output_path, "config_se.json") - speaker_encoder_model_path = self._find_speaker_encoder(output_path) - - # update the scale_path.npy file path in the model config.json - self._update_path("audio.stats_path", output_stats_path, config_path) - - # update the speakers.json file path in the model config.json to the current path - self._update_path("d_vector_file", output_d_vector_file_path, config_path) - self._update_path("d_vector_file", output_d_vector_file_pth_path, config_path) - self._update_path("model_args.d_vector_file", output_d_vector_file_path, config_path) - self._update_path("model_args.d_vector_file", output_d_vector_file_pth_path, config_path) - - # update the speaker_ids.json file path in the model config.json to the current path - self._update_path("speakers_file", output_speaker_ids_file_path, config_path) - self._update_path("speakers_file", output_speaker_ids_file_pth_path, config_path) - self._update_path("model_args.speakers_file", output_speaker_ids_file_path, config_path) - self._update_path("model_args.speakers_file", output_speaker_ids_file_pth_path, config_path) - - # update the speaker_encoder file path in the model config.json to the current path - self._update_path("speaker_encoder_model_path", speaker_encoder_model_path, config_path) - self._update_path("model_args.speaker_encoder_model_path", speaker_encoder_model_path, config_path) - self._update_path("speaker_encoder_config_path", speaker_encoder_config_path, config_path) - self._update_path("model_args.speaker_encoder_config_path", speaker_encoder_config_path, config_path) - - @staticmethod - def _update_path(field_name, new_path, config_path): - """Update the path in the model config.json for the current environment after download""" - if new_path and os.path.exists(new_path): - config = load_config(config_path) - field_names = field_name.split(".") - if len(field_names) > 1: - # field name points to a sub-level field - sub_conf = config - for fd in field_names[:-1]: - if fd in sub_conf: - sub_conf = sub_conf[fd] - else: - return - if isinstance(sub_conf[field_names[-1]], list): - sub_conf[field_names[-1]] = [new_path] - else: - sub_conf[field_names[-1]] = new_path - else: - # field name points to a top-level field - if not field_name in config: - return - if isinstance(config[field_name], list): - config[field_name] = [new_path] - else: - config[field_name] = new_path - config.save_json(config_path) - - @staticmethod - def _download_zip_file(file_url, output_folder, progress_bar): - """Download the github releases""" - # download the file - r = requests.get(file_url, stream=True) - # extract the file - try: - total_size_in_bytes = int(r.headers.get("content-length", 0)) - block_size = 1024 # 1 Kibibyte - if progress_bar: - progress_bar = tqdm(total=total_size_in_bytes, unit="iB", unit_scale=True) - temp_zip_name = os.path.join(output_folder, file_url.split("/")[-1]) - with open(temp_zip_name, "wb") as file: - for data in r.iter_content(block_size): - if progress_bar: - progress_bar.update(len(data)) - file.write(data) - with zipfile.ZipFile(temp_zip_name) as z: - z.extractall(output_folder) - os.remove(temp_zip_name) # delete zip after extract - except zipfile.BadZipFile: - print(f" > Error: Bad zip file - {file_url}") - raise zipfile.BadZipFile # pylint: disable=raise-missing-from - # move the files to the outer path - for file_path in z.namelist()[1:]: - src_path = os.path.join(output_folder, file_path) - dst_path = os.path.join(output_folder, os.path.basename(file_path)) - if src_path != dst_path: - copyfile(src_path, dst_path) - # remove the extracted folder - rmtree(os.path.join(output_folder, z.namelist()[0])) - - @staticmethod - def _download_tar_file(file_url, output_folder, progress_bar): - """Download the github releases""" - # download the file - r = requests.get(file_url, stream=True) - # extract the file - try: - total_size_in_bytes = int(r.headers.get("content-length", 0)) - block_size = 1024 # 1 Kibibyte - if progress_bar: - progress_bar = tqdm(total=total_size_in_bytes, unit="iB", unit_scale=True) - temp_tar_name = os.path.join(output_folder, file_url.split("/")[-1]) - with open(temp_tar_name, "wb") as file: - for data in r.iter_content(block_size): - if progress_bar: - progress_bar.update(len(data)) - file.write(data) - with tarfile.open(temp_tar_name) as t: - t.extractall(output_folder) - tar_names = t.getnames() - os.remove(temp_tar_name) # delete tar after extract - except tarfile.ReadError: - print(f" > Error: Bad tar file - {file_url}") - raise tarfile.ReadError # pylint: disable=raise-missing-from - # move the files to the outer path - for file_path in os.listdir(os.path.join(output_folder, tar_names[0])): - src_path = os.path.join(output_folder, tar_names[0], file_path) - dst_path = os.path.join(output_folder, os.path.basename(file_path)) - if src_path != dst_path: - copyfile(src_path, dst_path) - # remove the extracted folder - rmtree(os.path.join(output_folder, tar_names[0])) - - @staticmethod - def _download_model_files(file_urls, output_folder, progress_bar): - """Download the github releases""" - for file_url in file_urls: - # download the file - r = requests.get(file_url, stream=True) - # extract the file - bease_filename = file_url.split("/")[-1] - temp_zip_name = os.path.join(output_folder, bease_filename) - total_size_in_bytes = int(r.headers.get("content-length", 0)) - block_size = 1024 # 1 Kibibyte - with open(temp_zip_name, "wb") as file: - if progress_bar: - progress_bar = tqdm(total=total_size_in_bytes, unit="iB", unit_scale=True) - for data in r.iter_content(block_size): - if progress_bar: - progress_bar.update(len(data)) - file.write(data) - - @staticmethod - def _check_dict_key(my_dict, key): - if key in my_dict.keys() and my_dict[key] is not None: - if not isinstance(key, str): - return True - if isinstance(key, str) and len(my_dict[key]) > 0: - return True - return False diff --git a/TTS/utils/radam.py b/TTS/utils/radam.py deleted file mode 100644 index cbd14990f33cb671f030e401a3a2f9b96c2710cd..0000000000000000000000000000000000000000 --- a/TTS/utils/radam.py +++ /dev/null @@ -1,105 +0,0 @@ -# modified from https://github.com/LiyuanLucasLiu/RAdam - -import math - -import torch -from torch.optim.optimizer import Optimizer - - -class RAdam(Optimizer): - def __init__(self, params, lr=1e-3, betas=(0.9, 0.999), eps=1e-8, weight_decay=0, degenerated_to_sgd=True): - if lr < 0.0: - raise ValueError("Invalid learning rate: {}".format(lr)) - if eps < 0.0: - raise ValueError("Invalid epsilon value: {}".format(eps)) - if not 0.0 <= betas[0] < 1.0: - raise ValueError("Invalid beta parameter at index 0: {}".format(betas[0])) - if not 0.0 <= betas[1] < 1.0: - raise ValueError("Invalid beta parameter at index 1: {}".format(betas[1])) - - self.degenerated_to_sgd = degenerated_to_sgd - if isinstance(params, (list, tuple)) and len(params) > 0 and isinstance(params[0], dict): - for param in params: - if "betas" in param and (param["betas"][0] != betas[0] or param["betas"][1] != betas[1]): - param["buffer"] = [[None, None, None] for _ in range(10)] - defaults = dict( - lr=lr, betas=betas, eps=eps, weight_decay=weight_decay, buffer=[[None, None, None] for _ in range(10)] - ) - super().__init__(params, defaults) - - def __setstate__(self, state): # pylint: disable=useless-super-delegation - super().__setstate__(state) - - def step(self, closure=None): - loss = None - if closure is not None: - loss = closure() - - for group in self.param_groups: - for p in group["params"]: - if p.grad is None: - continue - grad = p.grad.data.float() - if grad.is_sparse: - raise RuntimeError("RAdam does not support sparse gradients") - - p_data_fp32 = p.data.float() - - state = self.state[p] - - if len(state) == 0: - state["step"] = 0 - state["exp_avg"] = torch.zeros_like(p_data_fp32) - state["exp_avg_sq"] = torch.zeros_like(p_data_fp32) - else: - state["exp_avg"] = state["exp_avg"].type_as(p_data_fp32) - state["exp_avg_sq"] = state["exp_avg_sq"].type_as(p_data_fp32) - - exp_avg, exp_avg_sq = state["exp_avg"], state["exp_avg_sq"] - beta1, beta2 = group["betas"] - - exp_avg_sq.mul_(beta2).addcmul_(grad, grad, value=1 - beta2) - exp_avg.mul_(beta1).add_(grad, alpha=1 - beta1) - - state["step"] += 1 - buffered = group["buffer"][int(state["step"] % 10)] - if state["step"] == buffered[0]: - N_sma, step_size = buffered[1], buffered[2] - else: - buffered[0] = state["step"] - beta2_t = beta2 ** state["step"] - N_sma_max = 2 / (1 - beta2) - 1 - N_sma = N_sma_max - 2 * state["step"] * beta2_t / (1 - beta2_t) - buffered[1] = N_sma - - # more conservative since it's an approximated value - if N_sma >= 5: - step_size = math.sqrt( - (1 - beta2_t) - * (N_sma - 4) - / (N_sma_max - 4) - * (N_sma - 2) - / N_sma - * N_sma_max - / (N_sma_max - 2) - ) / (1 - beta1 ** state["step"]) - elif self.degenerated_to_sgd: - step_size = 1.0 / (1 - beta1 ** state["step"]) - else: - step_size = -1 - buffered[2] = step_size - - # more conservative since it's an approximated value - if N_sma >= 5: - if group["weight_decay"] != 0: - p_data_fp32.add_(p_data_fp32, alpha=-group["weight_decay"] * group["lr"]) - denom = exp_avg_sq.sqrt().add_(group["eps"]) - p_data_fp32.addcdiv_(exp_avg, denom, value=-step_size * group["lr"]) - p.data.copy_(p_data_fp32) - elif step_size > 0: - if group["weight_decay"] != 0: - p_data_fp32.add_(p_data_fp32, alpha=-group["weight_decay"] * group["lr"]) - p_data_fp32.add_(exp_avg, alpha=-step_size * group["lr"]) - p.data.copy_(p_data_fp32) - - return loss diff --git a/TTS/utils/samplers.py b/TTS/utils/samplers.py deleted file mode 100644 index b08a763a33e40d00a32577e31ffc12b8e228bc46..0000000000000000000000000000000000000000 --- a/TTS/utils/samplers.py +++ /dev/null @@ -1,201 +0,0 @@ -import math -import random -from typing import Callable, List, Union - -from torch.utils.data.sampler import BatchSampler, Sampler, SubsetRandomSampler - - -class SubsetSampler(Sampler): - """ - Samples elements sequentially from a given list of indices. - - Args: - indices (list): a sequence of indices - """ - - def __init__(self, indices): - super().__init__(indices) - self.indices = indices - - def __iter__(self): - return (self.indices[i] for i in range(len(self.indices))) - - def __len__(self): - return len(self.indices) - - -class PerfectBatchSampler(Sampler): - """ - Samples a mini-batch of indices for a balanced class batching - - Args: - dataset_items(list): dataset items to sample from. - classes (list): list of classes of dataset_items to sample from. - batch_size (int): total number of samples to be sampled in a mini-batch. - num_gpus (int): number of GPU in the data parallel mode. - shuffle (bool): if True, samples randomly, otherwise samples sequentially. - drop_last (bool): if True, drops last incomplete batch. - """ - - def __init__( - self, - dataset_items, - classes, - batch_size, - num_classes_in_batch, - num_gpus=1, - shuffle=True, - drop_last=False, - label_key="class_name", - ): - super().__init__(dataset_items) - assert ( - batch_size % (num_classes_in_batch * num_gpus) == 0 - ), "Batch size must be divisible by number of classes times the number of data parallel devices (if enabled)." - - label_indices = {} - for idx, item in enumerate(dataset_items): - label = item[label_key] - if label not in label_indices.keys(): - label_indices[label] = [idx] - else: - label_indices[label].append(idx) - - if shuffle: - self._samplers = [SubsetRandomSampler(label_indices[key]) for key in classes] - else: - self._samplers = [SubsetSampler(label_indices[key]) for key in classes] - - self._batch_size = batch_size - self._drop_last = drop_last - self._dp_devices = num_gpus - self._num_classes_in_batch = num_classes_in_batch - - def __iter__(self): - batch = [] - if self._num_classes_in_batch != len(self._samplers): - valid_samplers_idx = random.sample(range(len(self._samplers)), self._num_classes_in_batch) - else: - valid_samplers_idx = None - - iters = [iter(s) for s in self._samplers] - done = False - - while True: - b = [] - for i, it in enumerate(iters): - if valid_samplers_idx is not None and i not in valid_samplers_idx: - continue - idx = next(it, None) - if idx is None: - done = True - break - b.append(idx) - if done: - break - batch += b - if len(batch) == self._batch_size: - yield batch - batch = [] - if valid_samplers_idx is not None: - valid_samplers_idx = random.sample(range(len(self._samplers)), self._num_classes_in_batch) - - if not self._drop_last: - if len(batch) > 0: - groups = len(batch) // self._num_classes_in_batch - if groups % self._dp_devices == 0: - yield batch - else: - batch = batch[: (groups // self._dp_devices) * self._dp_devices * self._num_classes_in_batch] - if len(batch) > 0: - yield batch - - def __len__(self): - class_batch_size = self._batch_size // self._num_classes_in_batch - return min(((len(s) + class_batch_size - 1) // class_batch_size) for s in self._samplers) - - -def identity(x): - return x - - -class SortedSampler(Sampler): - """Samples elements sequentially, always in the same order. - - Taken from https://github.com/PetrochukM/PyTorch-NLP - - Args: - data (iterable): Iterable data. - sort_key (callable): Specifies a function of one argument that is used to extract a - numerical comparison key from each list element. - - Example: - >>> list(SortedSampler(range(10), sort_key=lambda i: -i)) - [9, 8, 7, 6, 5, 4, 3, 2, 1, 0] - - """ - - def __init__(self, data, sort_key: Callable = identity): - super().__init__(data) - self.data = data - self.sort_key = sort_key - zip_ = [(i, self.sort_key(row)) for i, row in enumerate(self.data)] - zip_ = sorted(zip_, key=lambda r: r[1]) - self.sorted_indexes = [item[0] for item in zip_] - - def __iter__(self): - return iter(self.sorted_indexes) - - def __len__(self): - return len(self.data) - - -class BucketBatchSampler(BatchSampler): - """Bucket batch sampler - - Adapted from https://github.com/PetrochukM/PyTorch-NLP - - Args: - sampler (torch.data.utils.sampler.Sampler): - batch_size (int): Size of mini-batch. - drop_last (bool): If `True` the sampler will drop the last batch if its size would be less - than `batch_size`. - data (list): List of data samples. - sort_key (callable, optional): Callable to specify a comparison key for sorting. - bucket_size_multiplier (int, optional): Buckets are of size - `batch_size * bucket_size_multiplier`. - - Example: - >>> sampler = WeightedRandomSampler(weights, len(weights)) - >>> sampler = BucketBatchSampler(sampler, data=data_items, batch_size=32, drop_last=True) - """ - - def __init__( - self, - sampler, - data, - batch_size, - drop_last, - sort_key: Union[Callable, List] = identity, - bucket_size_multiplier=100, - ): - super().__init__(sampler, batch_size, drop_last) - self.data = data - self.sort_key = sort_key - _bucket_size = batch_size * bucket_size_multiplier - if hasattr(sampler, "__len__"): - _bucket_size = min(_bucket_size, len(sampler)) - self.bucket_sampler = BatchSampler(sampler, _bucket_size, False) - - def __iter__(self): - for idxs in self.bucket_sampler: - bucket_data = [self.data[idx] for idx in idxs] - sorted_sampler = SortedSampler(bucket_data, self.sort_key) - for batch_idx in SubsetRandomSampler(list(BatchSampler(sorted_sampler, self.batch_size, self.drop_last))): - sorted_idxs = [idxs[i] for i in batch_idx] - yield sorted_idxs - - def __len__(self): - if self.drop_last: - return len(self.sampler) // self.batch_size - return math.ceil(len(self.sampler) / self.batch_size) diff --git a/TTS/utils/synthesizer.py b/TTS/utils/synthesizer.py deleted file mode 100644 index fbae32162d95952b5d46c293855a1110e49f1923..0000000000000000000000000000000000000000 --- a/TTS/utils/synthesizer.py +++ /dev/null @@ -1,488 +0,0 @@ -import os -import time -from typing import List - -import numpy as np -import pysbd -import torch -from torch import nn - -from TTS.config import load_config -from TTS.tts.configs.vits_config import VitsConfig -from TTS.tts.models import setup_model as setup_tts_model -from TTS.tts.models.vits import Vits - -# pylint: disable=unused-wildcard-import -# pylint: disable=wildcard-import -from TTS.tts.utils.synthesis import synthesis, transfer_voice, trim_silence -from TTS.utils.audio import AudioProcessor -from TTS.utils.audio.numpy_transforms import save_wav -from TTS.vc.models import setup_model as setup_vc_model -from TTS.vocoder.models import setup_model as setup_vocoder_model -from TTS.vocoder.utils.generic_utils import interpolate_vocoder_input - - -class Synthesizer(nn.Module): - def __init__( - self, - tts_checkpoint: str = "", - tts_config_path: str = "", - tts_speakers_file: str = "", - tts_languages_file: str = "", - vocoder_checkpoint: str = "", - vocoder_config: str = "", - encoder_checkpoint: str = "", - encoder_config: str = "", - vc_checkpoint: str = "", - vc_config: str = "", - model_dir: str = "", - voice_dir: str = None, - use_cuda: bool = False, - ) -> None: - """General 🐸 TTS interface for inference. It takes a tts and a vocoder - model and synthesize speech from the provided text. - - The text is divided into a list of sentences using `pysbd` and synthesize - speech on each sentence separately. - - If you have certain special characters in your text, you need to handle - them before providing the text to Synthesizer. - - TODO: set the segmenter based on the source language - - Args: - tts_checkpoint (str, optional): path to the tts model file. - tts_config_path (str, optional): path to the tts config file. - vocoder_checkpoint (str, optional): path to the vocoder model file. Defaults to None. - vocoder_config (str, optional): path to the vocoder config file. Defaults to None. - encoder_checkpoint (str, optional): path to the speaker encoder model file. Defaults to `""`, - encoder_config (str, optional): path to the speaker encoder config file. Defaults to `""`, - vc_checkpoint (str, optional): path to the voice conversion model file. Defaults to `""`, - vc_config (str, optional): path to the voice conversion config file. Defaults to `""`, - use_cuda (bool, optional): enable/disable cuda. Defaults to False. - """ - super().__init__() - self.tts_checkpoint = tts_checkpoint - self.tts_config_path = tts_config_path - self.tts_speakers_file = tts_speakers_file - self.tts_languages_file = tts_languages_file - self.vocoder_checkpoint = vocoder_checkpoint - self.vocoder_config = vocoder_config - self.encoder_checkpoint = encoder_checkpoint - self.encoder_config = encoder_config - self.vc_checkpoint = vc_checkpoint - self.vc_config = vc_config - self.use_cuda = use_cuda - - self.tts_model = None - self.vocoder_model = None - self.vc_model = None - self.speaker_manager = None - self.tts_speakers = {} - self.language_manager = None - self.num_languages = 0 - self.tts_languages = {} - self.d_vector_dim = 0 - self.seg = self._get_segmenter("en") - self.use_cuda = use_cuda - self.voice_dir = voice_dir - if self.use_cuda: - assert torch.cuda.is_available(), "CUDA is not availabe on this machine." - - if tts_checkpoint: - self._load_tts(tts_checkpoint, tts_config_path, use_cuda) - self.output_sample_rate = self.tts_config.audio["sample_rate"] - - if vocoder_checkpoint: - self._load_vocoder(vocoder_checkpoint, vocoder_config, use_cuda) - self.output_sample_rate = self.vocoder_config.audio["sample_rate"] - - if vc_checkpoint: - self._load_vc(vc_checkpoint, vc_config, use_cuda) - self.output_sample_rate = self.vc_config.audio["output_sample_rate"] - - if model_dir: - if "fairseq" in model_dir: - self._load_fairseq_from_dir(model_dir, use_cuda) - self.output_sample_rate = self.tts_config.audio["sample_rate"] - else: - self._load_tts_from_dir(model_dir, use_cuda) - self.output_sample_rate = self.tts_config.audio["output_sample_rate"] - - @staticmethod - def _get_segmenter(lang: str): - """get the sentence segmenter for the given language. - - Args: - lang (str): target language code. - - Returns: - [type]: [description] - """ - return pysbd.Segmenter(language=lang, clean=True) - - def _load_vc(self, vc_checkpoint: str, vc_config_path: str, use_cuda: bool) -> None: - """Load the voice conversion model. - - 1. Load the model config. - 2. Init the model from the config. - 3. Load the model weights. - 4. Move the model to the GPU if CUDA is enabled. - - Args: - vc_checkpoint (str): path to the model checkpoint. - tts_config_path (str): path to the model config file. - use_cuda (bool): enable/disable CUDA use. - """ - # pylint: disable=global-statement - self.vc_config = load_config(vc_config_path) - self.vc_model = setup_vc_model(config=self.vc_config) - self.vc_model.load_checkpoint(self.vc_config, vc_checkpoint) - if use_cuda: - self.vc_model.cuda() - - def _load_fairseq_from_dir(self, model_dir: str, use_cuda: bool) -> None: - """Load the fairseq model from a directory. - - We assume it is VITS and the model knows how to load itself from the directory and there is a config.json file in the directory. - """ - self.tts_config = VitsConfig() - self.tts_model = Vits.init_from_config(self.tts_config) - self.tts_model.load_fairseq_checkpoint(self.tts_config, checkpoint_dir=model_dir, eval=True) - self.tts_config = self.tts_model.config - if use_cuda: - self.tts_model.cuda() - - def _load_tts_from_dir(self, model_dir: str, use_cuda: bool) -> None: - """Load the TTS model from a directory. - - We assume the model knows how to load itself from the directory and there is a config.json file in the directory. - """ - config = load_config(os.path.join(model_dir, "config.json")) - self.tts_config = config - self.tts_model = setup_tts_model(config) - self.tts_model.load_checkpoint(config, checkpoint_dir=model_dir, eval=True) - if use_cuda: - self.tts_model.cuda() - - def _load_tts(self, tts_checkpoint: str, tts_config_path: str, use_cuda: bool) -> None: - """Load the TTS model. - - 1. Load the model config. - 2. Init the model from the config. - 3. Load the model weights. - 4. Move the model to the GPU if CUDA is enabled. - 5. Init the speaker manager in the model. - - Args: - tts_checkpoint (str): path to the model checkpoint. - tts_config_path (str): path to the model config file. - use_cuda (bool): enable/disable CUDA use. - """ - # pylint: disable=global-statement - self.tts_config = load_config(tts_config_path) - if self.tts_config["use_phonemes"] and self.tts_config["phonemizer"] is None: - raise ValueError("Phonemizer is not defined in the TTS config.") - - self.tts_model = setup_tts_model(config=self.tts_config) - - if not self.encoder_checkpoint: - self._set_speaker_encoder_paths_from_tts_config() - - self.tts_model.load_checkpoint(self.tts_config, tts_checkpoint, eval=True) - if use_cuda: - self.tts_model.cuda() - - if self.encoder_checkpoint and hasattr(self.tts_model, "speaker_manager"): - self.tts_model.speaker_manager.init_encoder(self.encoder_checkpoint, self.encoder_config, use_cuda) - - def _set_speaker_encoder_paths_from_tts_config(self): - """Set the encoder paths from the tts model config for models with speaker encoders.""" - if hasattr(self.tts_config, "model_args") and hasattr( - self.tts_config.model_args, "speaker_encoder_config_path" - ): - self.encoder_checkpoint = self.tts_config.model_args.speaker_encoder_model_path - self.encoder_config = self.tts_config.model_args.speaker_encoder_config_path - - def _load_vocoder(self, model_file: str, model_config: str, use_cuda: bool) -> None: - """Load the vocoder model. - - 1. Load the vocoder config. - 2. Init the AudioProcessor for the vocoder. - 3. Init the vocoder model from the config. - 4. Move the model to the GPU if CUDA is enabled. - - Args: - model_file (str): path to the model checkpoint. - model_config (str): path to the model config file. - use_cuda (bool): enable/disable CUDA use. - """ - self.vocoder_config = load_config(model_config) - self.vocoder_ap = AudioProcessor(verbose=False, **self.vocoder_config.audio) - self.vocoder_model = setup_vocoder_model(self.vocoder_config) - self.vocoder_model.load_checkpoint(self.vocoder_config, model_file, eval=True) - if use_cuda: - self.vocoder_model.cuda() - - def split_into_sentences(self, text) -> List[str]: - """Split give text into sentences. - - Args: - text (str): input text in string format. - - Returns: - List[str]: list of sentences. - """ - return self.seg.segment(text) - - def save_wav(self, wav: List[int], path: str) -> None: - """Save the waveform as a file. - - Args: - wav (List[int]): waveform as a list of values. - path (str): output path to save the waveform. - """ - wav = np.array(wav) - save_wav(wav=wav, path=path, sample_rate=self.output_sample_rate) - - def voice_conversion(self, source_wav: str, target_wav: str) -> List[int]: - output_wav = self.vc_model.voice_conversion(source_wav, target_wav) - return output_wav - - def tts( - self, - text: str = "", - speaker_name: str = "", - language_name: str = "", - speaker_wav=None, - style_wav=None, - style_text=None, - reference_wav=None, - reference_speaker_name=None, - **kwargs, - ) -> List[int]: - """🐸 TTS magic. Run all the models and generate speech. - - Args: - text (str): input text. - speaker_name (str, optional): speaker id for multi-speaker models. Defaults to "". - language_name (str, optional): language id for multi-language models. Defaults to "". - speaker_wav (Union[str, List[str]], optional): path to the speaker wav for voice cloning. Defaults to None. - style_wav ([type], optional): style waveform for GST. Defaults to None. - style_text ([type], optional): transcription of style_wav for Capacitron. Defaults to None. - reference_wav ([type], optional): reference waveform for voice conversion. Defaults to None. - reference_speaker_name ([type], optional): speaker id of reference waveform. Defaults to None. - Returns: - List[int]: [description] - """ - start_time = time.time() - wavs = [] - - if not text and not reference_wav: - raise ValueError( - "You need to define either `text` (for sythesis) or a `reference_wav` (for voice conversion) to use the Coqui TTS API." - ) - - if text: - sens = self.split_into_sentences(text) - print(" > Text splitted to sentences.") - print(sens) - - # handle multi-speaker - if "voice_dir" in kwargs: - self.voice_dir = kwargs["voice_dir"] - kwargs.pop("voice_dir") - speaker_embedding = None - speaker_id = None - if self.tts_speakers_file or hasattr(self.tts_model.speaker_manager, "name_to_id"): - # handle Neon models with single speaker. - if len(self.tts_model.speaker_manager.name_to_id) == 1: - speaker_id = list(self.tts_model.speaker_manager.name_to_id.values())[0] - - elif speaker_name and isinstance(speaker_name, str): - if self.tts_config.use_d_vector_file: - # get the average speaker embedding from the saved d_vectors. - speaker_embedding = self.tts_model.speaker_manager.get_mean_embedding( - speaker_name, num_samples=None, randomize=False - ) - speaker_embedding = np.array(speaker_embedding)[None, :] # [1 x embedding_dim] - else: - # get speaker idx from the speaker name - speaker_id = self.tts_model.speaker_manager.name_to_id[speaker_name] - - elif not speaker_name and not speaker_wav: - raise ValueError( - " [!] Looks like you are using a multi-speaker model. " - "You need to define either a `speaker_idx` or a `speaker_wav` to use a multi-speaker model." - ) - else: - speaker_embedding = None - else: - if speaker_name and self.voice_dir is None: - raise ValueError( - f" [!] Missing speakers.json file path for selecting speaker {speaker_name}." - "Define path for speaker.json if it is a multi-speaker model or remove defined speaker idx. " - ) - - # handle multi-lingual - language_id = None - if self.tts_languages_file or ( - hasattr(self.tts_model, "language_manager") and self.tts_model.language_manager is not None - ): - if len(self.tts_model.language_manager.name_to_id) == 1: - language_id = list(self.tts_model.language_manager.name_to_id.values())[0] - - elif language_name and isinstance(language_name, str): - try: - language_id = self.tts_model.language_manager.name_to_id[language_name] - except KeyError as e: - raise ValueError( - f" [!] Looks like you use a multi-lingual model. " - f"Language {language_name} is not in the available languages: " - f"{self.tts_model.language_manager.name_to_id.keys()}." - ) from e - - elif not language_name: - raise ValueError( - " [!] Look like you use a multi-lingual model. " - "You need to define either a `language_name` or a `style_wav` to use a multi-lingual model." - ) - - else: - raise ValueError( - f" [!] Missing language_ids.json file path for selecting language {language_name}." - "Define path for language_ids.json if it is a multi-lingual model or remove defined language idx. " - ) - - # compute a new d_vector from the given clip. - if speaker_wav is not None and self.tts_model.speaker_manager is not None: - speaker_embedding = self.tts_model.speaker_manager.compute_embedding_from_clip(speaker_wav) - - vocoder_device = "cpu" - use_gl = self.vocoder_model is None - if not use_gl: - vocoder_device = next(self.vocoder_model.parameters()).device - if self.use_cuda: - vocoder_device = "cuda" - - if not reference_wav: # not voice conversion - for sen in sens: - if hasattr(self.tts_model, "synthesize"): - outputs = self.tts_model.synthesize( - text=sen, - config=self.tts_config, - speaker_id=speaker_name, - voice_dirs=self.voice_dir, - d_vector=speaker_embedding, - **kwargs, - ) - else: - # synthesize voice - outputs = synthesis( - model=self.tts_model, - text=sen, - CONFIG=self.tts_config, - use_cuda=self.use_cuda, - speaker_id=speaker_id, - style_wav=style_wav, - style_text=style_text, - use_griffin_lim=use_gl, - d_vector=speaker_embedding, - language_id=language_id, - ) - waveform = outputs["wav"] - if not use_gl: - mel_postnet_spec = outputs["outputs"]["model_outputs"][0].detach().cpu().numpy() - # denormalize tts output based on tts audio config - mel_postnet_spec = self.tts_model.ap.denormalize(mel_postnet_spec.T).T - # renormalize spectrogram based on vocoder config - vocoder_input = self.vocoder_ap.normalize(mel_postnet_spec.T) - # compute scale factor for possible sample rate mismatch - scale_factor = [ - 1, - self.vocoder_config["audio"]["sample_rate"] / self.tts_model.ap.sample_rate, - ] - if scale_factor[1] != 1: - print(" > interpolating tts model output.") - vocoder_input = interpolate_vocoder_input(scale_factor, vocoder_input) - else: - vocoder_input = torch.tensor(vocoder_input).unsqueeze(0) # pylint: disable=not-callable - # run vocoder model - # [1, T, C] - waveform = self.vocoder_model.inference(vocoder_input.to(vocoder_device)) - if torch.is_tensor(waveform) and waveform.device != torch.device("cpu") and not use_gl: - waveform = waveform.cpu() - if not use_gl: - waveform = waveform.numpy() - waveform = waveform.squeeze() - - # trim silence - if "do_trim_silence" in self.tts_config.audio and self.tts_config.audio["do_trim_silence"]: - waveform = trim_silence(waveform, self.tts_model.ap) - - wavs += list(waveform) - wavs += [0] * 10000 - else: - # get the speaker embedding or speaker id for the reference wav file - reference_speaker_embedding = None - reference_speaker_id = None - if self.tts_speakers_file or hasattr(self.tts_model.speaker_manager, "name_to_id"): - if reference_speaker_name and isinstance(reference_speaker_name, str): - if self.tts_config.use_d_vector_file: - # get the speaker embedding from the saved d_vectors. - reference_speaker_embedding = self.tts_model.speaker_manager.get_embeddings_by_name( - reference_speaker_name - )[0] - reference_speaker_embedding = np.array(reference_speaker_embedding)[ - None, : - ] # [1 x embedding_dim] - else: - # get speaker idx from the speaker name - reference_speaker_id = self.tts_model.speaker_manager.name_to_id[reference_speaker_name] - else: - reference_speaker_embedding = self.tts_model.speaker_manager.compute_embedding_from_clip( - reference_wav - ) - outputs = transfer_voice( - model=self.tts_model, - CONFIG=self.tts_config, - use_cuda=self.use_cuda, - reference_wav=reference_wav, - speaker_id=speaker_id, - d_vector=speaker_embedding, - use_griffin_lim=use_gl, - reference_speaker_id=reference_speaker_id, - reference_d_vector=reference_speaker_embedding, - ) - waveform = outputs - if not use_gl: - mel_postnet_spec = outputs[0].detach().cpu().numpy() - # denormalize tts output based on tts audio config - mel_postnet_spec = self.tts_model.ap.denormalize(mel_postnet_spec.T).T - # renormalize spectrogram based on vocoder config - vocoder_input = self.vocoder_ap.normalize(mel_postnet_spec.T) - # compute scale factor for possible sample rate mismatch - scale_factor = [ - 1, - self.vocoder_config["audio"]["sample_rate"] / self.tts_model.ap.sample_rate, - ] - if scale_factor[1] != 1: - print(" > interpolating tts model output.") - vocoder_input = interpolate_vocoder_input(scale_factor, vocoder_input) - else: - vocoder_input = torch.tensor(vocoder_input).unsqueeze(0) # pylint: disable=not-callable - # run vocoder model - # [1, T, C] - waveform = self.vocoder_model.inference(vocoder_input.to(vocoder_device)) - if torch.is_tensor(waveform) and waveform.device != torch.device("cpu"): - waveform = waveform.cpu() - if not use_gl: - waveform = waveform.numpy() - wavs = waveform.squeeze() - - # compute stats - process_time = time.time() - start_time - audio_time = len(wavs) / self.tts_config.audio["sample_rate"] - print(f" > Processing time: {process_time}") - print(f" > Real-time factor: {process_time / audio_time}") - return wavs diff --git a/TTS/utils/training.py b/TTS/utils/training.py deleted file mode 100644 index b51f55e92b56bece69ae61f99f68b48c88938261..0000000000000000000000000000000000000000 --- a/TTS/utils/training.py +++ /dev/null @@ -1,44 +0,0 @@ -import numpy as np -import torch - - -def check_update(model, grad_clip, ignore_stopnet=False, amp_opt_params=None): - r"""Check model gradient against unexpected jumps and failures""" - skip_flag = False - if ignore_stopnet: - if not amp_opt_params: - grad_norm = torch.nn.utils.clip_grad_norm_( - [param for name, param in model.named_parameters() if "stopnet" not in name], grad_clip - ) - else: - grad_norm = torch.nn.utils.clip_grad_norm_(amp_opt_params, grad_clip) - else: - if not amp_opt_params: - grad_norm = torch.nn.utils.clip_grad_norm_(model.parameters(), grad_clip) - else: - grad_norm = torch.nn.utils.clip_grad_norm_(amp_opt_params, grad_clip) - - # compatibility with different torch versions - if isinstance(grad_norm, float): - if np.isinf(grad_norm): - print(" | > Gradient is INF !!") - skip_flag = True - else: - if torch.isinf(grad_norm): - print(" | > Gradient is INF !!") - skip_flag = True - return grad_norm, skip_flag - - -def gradual_training_scheduler(global_step, config): - """Setup the gradual training schedule wrt number - of active GPUs""" - num_gpus = torch.cuda.device_count() - if num_gpus == 0: - num_gpus = 1 - new_values = None - # we set the scheduling wrt num_gpus - for values in config.gradual_training: - if global_step * num_gpus >= values[0]: - new_values = values - return new_values[1], new_values[2] diff --git a/TTS/utils/vad.py b/TTS/utils/vad.py deleted file mode 100644 index aefce2b50b9b3924c4c0e8fb2e4a988e0758e9cd..0000000000000000000000000000000000000000 --- a/TTS/utils/vad.py +++ /dev/null @@ -1,88 +0,0 @@ -import torch -import torchaudio - - -def read_audio(path): - wav, sr = torchaudio.load(path) - - if wav.size(0) > 1: - wav = wav.mean(dim=0, keepdim=True) - - return wav.squeeze(0), sr - - -def resample_wav(wav, sr, new_sr): - wav = wav.unsqueeze(0) - transform = torchaudio.transforms.Resample(orig_freq=sr, new_freq=new_sr) - wav = transform(wav) - return wav.squeeze(0) - - -def map_timestamps_to_new_sr(vad_sr, new_sr, timestamps, just_begging_end=False): - factor = new_sr / vad_sr - new_timestamps = [] - if just_begging_end and timestamps: - # get just the start and end timestamps - new_dict = {"start": int(timestamps[0]["start"] * factor), "end": int(timestamps[-1]["end"] * factor)} - new_timestamps.append(new_dict) - else: - for ts in timestamps: - # map to the new SR - new_dict = {"start": int(ts["start"] * factor), "end": int(ts["end"] * factor)} - new_timestamps.append(new_dict) - - return new_timestamps - - -def get_vad_model_and_utils(use_cuda=False, use_onnx=False): - model, utils = torch.hub.load( - repo_or_dir="snakers4/silero-vad", model="silero_vad", force_reload=True, onnx=use_onnx, force_onnx_cpu=True - ) - if use_cuda: - model = model.cuda() - - get_speech_timestamps, save_audio, _, _, collect_chunks = utils - return model, get_speech_timestamps, save_audio, collect_chunks - - -def remove_silence( - model_and_utils, audio_path, out_path, vad_sample_rate=8000, trim_just_beginning_and_end=True, use_cuda=False -): - # get the VAD model and utils functions - model, get_speech_timestamps, _, collect_chunks = model_and_utils - - # read ground truth wav and resample the audio for the VAD - try: - wav, gt_sample_rate = read_audio(audio_path) - except: - print(f"> ❗ Failed to read {audio_path}") - return None, False - - # if needed, resample the audio for the VAD model - if gt_sample_rate != vad_sample_rate: - wav_vad = resample_wav(wav, gt_sample_rate, vad_sample_rate) - else: - wav_vad = wav - - if use_cuda: - wav_vad = wav_vad.cuda() - - # get speech timestamps from full audio file - speech_timestamps = get_speech_timestamps(wav_vad, model, sampling_rate=vad_sample_rate, window_size_samples=768) - - # map the current speech_timestamps to the sample rate of the ground truth audio - new_speech_timestamps = map_timestamps_to_new_sr( - vad_sample_rate, gt_sample_rate, speech_timestamps, trim_just_beginning_and_end - ) - - # if have speech timestamps else save the wav - if new_speech_timestamps: - wav = collect_chunks(new_speech_timestamps, wav) - is_speech = True - else: - print(f"> The file {audio_path} probably does not have speech please check it !!") - is_speech = False - - # save - torchaudio.save(out_path, wav[None, :], gt_sample_rate) - return out_path, is_speech diff --git a/TTS/vc/configs/__init__.py b/TTS/vc/configs/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/vc/configs/freevc_config.py b/TTS/vc/configs/freevc_config.py deleted file mode 100644 index 890a269303415ad79c32642bd2930119b37d3d39..0000000000000000000000000000000000000000 --- a/TTS/vc/configs/freevc_config.py +++ /dev/null @@ -1,5 +0,0 @@ -from dataclasses import dataclass, field -from typing import List - -from TTS.vc.configs.shared_configs import BaseVCConfig -from TTS.vc.models.freevc import FreeVCArgs, FreeVCAudioConfig, FreeVCConfig diff --git a/TTS/vc/configs/shared_configs.py b/TTS/vc/configs/shared_configs.py deleted file mode 100644 index 74164a744452a00c7f318fbdcc55438cddcc70be..0000000000000000000000000000000000000000 --- a/TTS/vc/configs/shared_configs.py +++ /dev/null @@ -1,155 +0,0 @@ -from dataclasses import asdict, dataclass, field -from typing import Dict, List - -from coqpit import Coqpit, check_argument - -from TTS.config import BaseAudioConfig, BaseDatasetConfig, BaseTrainingConfig - - -@dataclass -class BaseVCConfig(BaseTrainingConfig): - """Shared parameters among all the tts models. - - Args: - - audio (BaseAudioConfig): - Audio processor config object instance. - - batch_group_size (int): - Size of the batch groups used for bucketing. By default, the dataloader orders samples by the sequence - length for a more efficient and stable training. If `batch_group_size > 1` then it performs bucketing to - prevent using the same batches for each epoch. - - loss_masking (bool): - enable / disable masking loss values against padded segments of samples in a batch. - - min_text_len (int): - Minimum length of input text to be used. All shorter samples will be ignored. Defaults to 0. - - max_text_len (int): - Maximum length of input text to be used. All longer samples will be ignored. Defaults to float("inf"). - - min_audio_len (int): - Minimum length of input audio to be used. All shorter samples will be ignored. Defaults to 0. - - max_audio_len (int): - Maximum length of input audio to be used. All longer samples will be ignored. The maximum length in the - dataset defines the VRAM used in the training. Hence, pay attention to this value if you encounter an - OOM error in training. Defaults to float("inf"). - - compute_f0 (int): - (Not in use yet). - - compute_energy (int): - (Not in use yet). - - compute_linear_spec (bool): - If True data loader computes and returns linear spectrograms alongside the other data. - - precompute_num_workers (int): - Number of workers to precompute features. Defaults to 0. - - use_noise_augment (bool): - Augment the input audio with random noise. - - start_by_longest (bool): - If True, the data loader will start loading the longest batch first. It is useful for checking OOM issues. - Defaults to False. - - shuffle (bool): - If True, the data loader will shuffle the dataset when there is not sampler defined. Defaults to True. - - drop_last (bool): - If True, the data loader will drop the last batch if it is not complete. It helps to prevent - issues that emerge from the partial batch statistics. Defaults to True. - - add_blank (bool): - Add blank characters between each other two characters. It improves performance for some models at expense - of slower run-time due to the longer input sequence. - - datasets (List[BaseDatasetConfig]): - List of datasets used for training. If multiple datasets are provided, they are merged and used together - for training. - - optimizer (str): - Optimizer used for the training. Set one from `torch.optim.Optimizer` or `TTS.utils.training`. - Defaults to ``. - - optimizer_params (dict): - Optimizer kwargs. Defaults to `{"betas": [0.8, 0.99], "weight_decay": 0.0}` - - lr_scheduler (str): - Learning rate scheduler for the training. Use one from `torch.optim.Scheduler` schedulers or - `TTS.utils.training`. Defaults to ``. - - lr_scheduler_params (dict): - Parameters for the generator learning rate scheduler. Defaults to `{"warmup": 4000}`. - - test_sentences (List[str]): - List of sentences to be used at testing. Defaults to '[]' - - eval_split_max_size (int): - Number maximum of samples to be used for evaluation in proportion split. Defaults to None (Disabled). - - eval_split_size (float): - If between 0.0 and 1.0 represents the proportion of the dataset to include in the evaluation set. - If > 1, represents the absolute number of evaluation samples. Defaults to 0.01 (1%). - - use_speaker_weighted_sampler (bool): - Enable / Disable the batch balancer by speaker. Defaults to ```False```. - - speaker_weighted_sampler_alpha (float): - Number that control the influence of the speaker sampler weights. Defaults to ```1.0```. - - use_language_weighted_sampler (bool): - Enable / Disable the batch balancer by language. Defaults to ```False```. - - language_weighted_sampler_alpha (float): - Number that control the influence of the language sampler weights. Defaults to ```1.0```. - - use_length_weighted_sampler (bool): - Enable / Disable the batch balancer by audio length. If enabled the dataset will be divided - into 10 buckets considering the min and max audio of the dataset. The sampler weights will be - computed forcing to have the same quantity of data for each bucket in each training batch. Defaults to ```False```. - - length_weighted_sampler_alpha (float): - Number that control the influence of the length sampler weights. Defaults to ```1.0```. - """ - - audio: BaseAudioConfig = field(default_factory=BaseAudioConfig) - # training params - batch_group_size: int = 0 - loss_masking: bool = None - # dataloading - min_audio_len: int = 1 - max_audio_len: int = float("inf") - min_text_len: int = 1 - max_text_len: int = float("inf") - compute_f0: bool = False - compute_energy: bool = False - compute_linear_spec: bool = False - precompute_num_workers: int = 0 - use_noise_augment: bool = False - start_by_longest: bool = False - shuffle: bool = False - drop_last: bool = False - # dataset - datasets: List[BaseDatasetConfig] = field(default_factory=lambda: [BaseDatasetConfig()]) - # optimizer - optimizer: str = "radam" - optimizer_params: dict = None - # scheduler - lr_scheduler: str = None - lr_scheduler_params: dict = field(default_factory=lambda: {}) - # testing - test_sentences: List[str] = field(default_factory=lambda: []) - # evaluation - eval_split_max_size: int = None - eval_split_size: float = 0.01 - # weighted samplers - use_speaker_weighted_sampler: bool = False - speaker_weighted_sampler_alpha: float = 1.0 - use_language_weighted_sampler: bool = False - language_weighted_sampler_alpha: float = 1.0 - use_length_weighted_sampler: bool = False - length_weighted_sampler_alpha: float = 1.0 diff --git a/TTS/vc/models/__init__.py b/TTS/vc/models/__init__.py deleted file mode 100644 index 5a09b4e53e2a4e40dd7c9d0d4c7e5b3c30f317a5..0000000000000000000000000000000000000000 --- a/TTS/vc/models/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -import importlib -import re -from typing import Dict, List, Union - - -def to_camel(text): - text = text.capitalize() - return re.sub(r"(?!^)_([a-zA-Z])", lambda m: m.group(1).upper(), text) - - -def setup_model(config: "Coqpit", samples: Union[List[List], List[Dict]] = None) -> "BaseVC": - print(" > Using model: {}".format(config.model)) - # fetch the right model implementation. - if "model" in config and config["model"].lower() == "freevc": - MyModel = importlib.import_module("TTS.vc.models.freevc").FreeVC - model = MyModel.init_from_config(config, samples) - return model diff --git a/TTS/vc/models/base_vc.py b/TTS/vc/models/base_vc.py deleted file mode 100644 index 19f2761bbc42051a2f03d1170c011955dcdd28cb..0000000000000000000000000000000000000000 --- a/TTS/vc/models/base_vc.py +++ /dev/null @@ -1,429 +0,0 @@ -import os -import random -from typing import Dict, List, Tuple, Union - -import torch -import torch.distributed as dist -from coqpit import Coqpit -from torch import nn -from torch.utils.data import DataLoader -from torch.utils.data.sampler import WeightedRandomSampler -from trainer.torch import DistributedSampler, DistributedSamplerWrapper - -from TTS.model import BaseTrainerModel -from TTS.tts.datasets.dataset import TTSDataset -from TTS.tts.utils.data import get_length_balancer_weights -from TTS.tts.utils.languages import LanguageManager, get_language_balancer_weights -from TTS.tts.utils.speakers import SpeakerManager, get_speaker_balancer_weights -from TTS.tts.utils.synthesis import synthesis -from TTS.tts.utils.visual import plot_alignment, plot_spectrogram - -# pylint: skip-file - - -class BaseVC(BaseTrainerModel): - """Base `vc` class. Every new `vc` model must inherit this. - - It defines common `vc` specific functions on top of `Model` implementation. - """ - - MODEL_TYPE = "vc" - - def __init__( - self, - config: Coqpit, - ap: "AudioProcessor", - speaker_manager: SpeakerManager = None, - language_manager: LanguageManager = None, - ): - super().__init__() - self.config = config - self.ap = ap - self.speaker_manager = speaker_manager - self.language_manager = language_manager - self._set_model_args(config) - - def _set_model_args(self, config: Coqpit): - """Setup model args based on the config type (`ModelConfig` or `ModelArgs`). - - `ModelArgs` has all the fields reuqired to initialize the model architecture. - - `ModelConfig` has all the fields required for training, inference and containes `ModelArgs`. - - If the config is for training with a name like "*Config", then the model args are embeded in the - config.model_args - - If the config is for the model with a name like "*Args", then we assign the directly. - """ - # don't use isintance not to import recursively - if "Config" in config.__class__.__name__: - self.config = config - self.args = config.model_args - elif "Args" in config.__class__.__name__: - self.args = config - else: - raise ValueError("config must be either a *Config or *Args") - - def init_multispeaker(self, config: Coqpit, data: List = None): - """Initialize a speaker embedding layer if needen and define expected embedding channel size for defining - `in_channels` size of the connected layers. - - This implementation yields 3 possible outcomes: - - 1. If `config.use_speaker_embedding` and `config.use_d_vector_file are False, do nothing. - 2. If `config.use_d_vector_file` is True, set expected embedding channel size to `config.d_vector_dim` or 512. - 3. If `config.use_speaker_embedding`, initialize a speaker embedding layer with channel size of - `config.d_vector_dim` or 512. - - You can override this function for new models. - - Args: - config (Coqpit): Model configuration. - """ - # set number of speakers - if self.speaker_manager is not None: - self.num_speakers = self.speaker_manager.num_speakers - elif hasattr(config, "num_speakers"): - self.num_speakers = config.num_speakers - - # set ultimate speaker embedding size - if config.use_speaker_embedding or config.use_d_vector_file: - self.embedded_speaker_dim = ( - config.d_vector_dim if "d_vector_dim" in config and config.d_vector_dim is not None else 512 - ) - # init speaker embedding layer - if config.use_speaker_embedding and not config.use_d_vector_file: - print(" > Init speaker_embedding layer.") - self.speaker_embedding = nn.Embedding(self.num_speakers, self.embedded_speaker_dim) - self.speaker_embedding.weight.data.normal_(0, 0.3) - - def get_aux_input(self, **kwargs) -> Dict: - """Prepare and return `aux_input` used by `forward()`""" - return {"speaker_id": None, "style_wav": None, "d_vector": None, "language_id": None} - - def get_aux_input_from_test_sentences(self, sentence_info): - if hasattr(self.config, "model_args"): - config = self.config.model_args - else: - config = self.config - - # extract speaker and language info - text, speaker_name, style_wav, language_name = None, None, None, None - - if isinstance(sentence_info, list): - if len(sentence_info) == 1: - text = sentence_info[0] - elif len(sentence_info) == 2: - text, speaker_name = sentence_info - elif len(sentence_info) == 3: - text, speaker_name, style_wav = sentence_info - elif len(sentence_info) == 4: - text, speaker_name, style_wav, language_name = sentence_info - else: - text = sentence_info - - # get speaker id/d_vector - speaker_id, d_vector, language_id = None, None, None - if self.speaker_manager is not None: - if config.use_d_vector_file: - if speaker_name is None: - d_vector = self.speaker_manager.get_random_embedding() - else: - d_vector = self.speaker_manager.get_d_vector_by_name(speaker_name) - elif config.use_speaker_embedding: - if speaker_name is None: - speaker_id = self.speaker_manager.get_random_id() - else: - speaker_id = self.speaker_manager.name_to_id[speaker_name] - - # get language id - if self.language_manager is not None and config.use_language_embedding and language_name is not None: - language_id = self.language_manager.name_to_id[language_name] - - return { - "text": text, - "speaker_id": speaker_id, - "style_wav": style_wav, - "d_vector": d_vector, - "language_id": language_id, - } - - def format_batch(self, batch: Dict) -> Dict: - """Generic batch formatting for `VCDataset`. - - You must override this if you use a custom dataset. - - Args: - batch (Dict): [description] - - Returns: - Dict: [description] - """ - # setup input batch - text_input = batch["token_id"] - text_lengths = batch["token_id_lengths"] - speaker_names = batch["speaker_names"] - linear_input = batch["linear"] - mel_input = batch["mel"] - mel_lengths = batch["mel_lengths"] - stop_targets = batch["stop_targets"] - item_idx = batch["item_idxs"] - d_vectors = batch["d_vectors"] - speaker_ids = batch["speaker_ids"] - attn_mask = batch["attns"] - waveform = batch["waveform"] - pitch = batch["pitch"] - energy = batch["energy"] - language_ids = batch["language_ids"] - max_text_length = torch.max(text_lengths.float()) - max_spec_length = torch.max(mel_lengths.float()) - - # compute durations from attention masks - durations = None - if attn_mask is not None: - durations = torch.zeros(attn_mask.shape[0], attn_mask.shape[2]) - for idx, am in enumerate(attn_mask): - # compute raw durations - c_idxs = am[:, : text_lengths[idx], : mel_lengths[idx]].max(1)[1] - # c_idxs, counts = torch.unique_consecutive(c_idxs, return_counts=True) - c_idxs, counts = torch.unique(c_idxs, return_counts=True) - dur = torch.ones([text_lengths[idx]]).to(counts.dtype) - dur[c_idxs] = counts - # smooth the durations and set any 0 duration to 1 - # by cutting off from the largest duration indeces. - extra_frames = dur.sum() - mel_lengths[idx] - largest_idxs = torch.argsort(-dur)[:extra_frames] - dur[largest_idxs] -= 1 - assert ( - dur.sum() == mel_lengths[idx] - ), f" [!] total duration {dur.sum()} vs spectrogram length {mel_lengths[idx]}" - durations[idx, : text_lengths[idx]] = dur - - # set stop targets wrt reduction factor - stop_targets = stop_targets.view(text_input.shape[0], stop_targets.size(1) // self.config.r, -1) - stop_targets = (stop_targets.sum(2) > 0.0).unsqueeze(2).float().squeeze(2) - stop_target_lengths = torch.divide(mel_lengths, self.config.r).ceil_() - - return { - "text_input": text_input, - "text_lengths": text_lengths, - "speaker_names": speaker_names, - "mel_input": mel_input, - "mel_lengths": mel_lengths, - "linear_input": linear_input, - "stop_targets": stop_targets, - "stop_target_lengths": stop_target_lengths, - "attn_mask": attn_mask, - "durations": durations, - "speaker_ids": speaker_ids, - "d_vectors": d_vectors, - "max_text_length": float(max_text_length), - "max_spec_length": float(max_spec_length), - "item_idx": item_idx, - "waveform": waveform, - "pitch": pitch, - "energy": energy, - "language_ids": language_ids, - "audio_unique_names": batch["audio_unique_names"], - } - - def get_sampler(self, config: Coqpit, dataset: TTSDataset, num_gpus=1): - weights = None - data_items = dataset.samples - - if getattr(config, "use_language_weighted_sampler", False): - alpha = getattr(config, "language_weighted_sampler_alpha", 1.0) - print(" > Using Language weighted sampler with alpha:", alpha) - weights = get_language_balancer_weights(data_items) * alpha - - if getattr(config, "use_speaker_weighted_sampler", False): - alpha = getattr(config, "speaker_weighted_sampler_alpha", 1.0) - print(" > Using Speaker weighted sampler with alpha:", alpha) - if weights is not None: - weights += get_speaker_balancer_weights(data_items) * alpha - else: - weights = get_speaker_balancer_weights(data_items) * alpha - - if getattr(config, "use_length_weighted_sampler", False): - alpha = getattr(config, "length_weighted_sampler_alpha", 1.0) - print(" > Using Length weighted sampler with alpha:", alpha) - if weights is not None: - weights += get_length_balancer_weights(data_items) * alpha - else: - weights = get_length_balancer_weights(data_items) * alpha - - if weights is not None: - sampler = WeightedRandomSampler(weights, len(weights)) - else: - sampler = None - - # sampler for DDP - if sampler is None: - sampler = DistributedSampler(dataset) if num_gpus > 1 else None - else: # If a sampler is already defined use this sampler and DDP sampler together - sampler = DistributedSamplerWrapper(sampler) if num_gpus > 1 else sampler - - return sampler - - def get_data_loader( - self, - config: Coqpit, - assets: Dict, - is_eval: bool, - samples: Union[List[Dict], List[List]], - verbose: bool, - num_gpus: int, - rank: int = None, - ) -> "DataLoader": - if is_eval and not config.run_eval: - loader = None - else: - # setup multi-speaker attributes - if self.speaker_manager is not None: - if hasattr(config, "model_args"): - speaker_id_mapping = ( - self.speaker_manager.name_to_id if config.model_args.use_speaker_embedding else None - ) - d_vector_mapping = self.speaker_manager.embeddings if config.model_args.use_d_vector_file else None - config.use_d_vector_file = config.model_args.use_d_vector_file - else: - speaker_id_mapping = self.speaker_manager.name_to_id if config.use_speaker_embedding else None - d_vector_mapping = self.speaker_manager.embeddings if config.use_d_vector_file else None - else: - speaker_id_mapping = None - d_vector_mapping = None - - # setup multi-lingual attributes - if self.language_manager is not None: - language_id_mapping = self.language_manager.name_to_id if self.args.use_language_embedding else None - else: - language_id_mapping = None - - # init dataloader - dataset = TTSDataset( - outputs_per_step=config.r if "r" in config else 1, - compute_linear_spec=config.model.lower() == "tacotron" or config.compute_linear_spec, - compute_f0=config.get("compute_f0", False), - f0_cache_path=config.get("f0_cache_path", None), - compute_energy=config.get("compute_energy", False), - energy_cache_path=config.get("energy_cache_path", None), - samples=samples, - ap=self.ap, - return_wav=config.return_wav if "return_wav" in config else False, - batch_group_size=0 if is_eval else config.batch_group_size * config.batch_size, - min_text_len=config.min_text_len, - max_text_len=config.max_text_len, - min_audio_len=config.min_audio_len, - max_audio_len=config.max_audio_len, - phoneme_cache_path=config.phoneme_cache_path, - precompute_num_workers=config.precompute_num_workers, - use_noise_augment=False if is_eval else config.use_noise_augment, - verbose=verbose, - speaker_id_mapping=speaker_id_mapping, - d_vector_mapping=d_vector_mapping if config.use_d_vector_file else None, - tokenizer=None, - start_by_longest=config.start_by_longest, - language_id_mapping=language_id_mapping, - ) - - # wait all the DDP process to be ready - if num_gpus > 1: - dist.barrier() - - # sort input sequences from short to long - dataset.preprocess_samples() - - # get samplers - sampler = self.get_sampler(config, dataset, num_gpus) - - loader = DataLoader( - dataset, - batch_size=config.eval_batch_size if is_eval else config.batch_size, - shuffle=config.shuffle if sampler is None else False, # if there is no other sampler - collate_fn=dataset.collate_fn, - drop_last=config.drop_last, # setting this False might cause issues in AMP training. - sampler=sampler, - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=False, - ) - return loader - - def _get_test_aux_input( - self, - ) -> Dict: - d_vector = None - if self.config.use_d_vector_file: - d_vector = [self.speaker_manager.embeddings[name]["embedding"] for name in self.speaker_manager.embeddings] - d_vector = (random.sample(sorted(d_vector), 1),) - - aux_inputs = { - "speaker_id": None - if not self.config.use_speaker_embedding - else random.sample(sorted(self.speaker_manager.name_to_id.values()), 1), - "d_vector": d_vector, - "style_wav": None, # TODO: handle GST style input - } - return aux_inputs - - def test_run(self, assets: Dict) -> Tuple[Dict, Dict]: - """Generic test run for `vc` models used by `Trainer`. - - You can override this for a different behaviour. - - Args: - assets (dict): A dict of training assets. For `vc` models, it must include `{'audio_processor': ap}`. - - Returns: - Tuple[Dict, Dict]: Test figures and audios to be projected to Tensorboard. - """ - print(" | > Synthesizing test sentences.") - test_audios = {} - test_figures = {} - test_sentences = self.config.test_sentences - aux_inputs = self._get_test_aux_input() - for idx, sen in enumerate(test_sentences): - if isinstance(sen, list): - aux_inputs = self.get_aux_input_from_test_sentences(sen) - sen = aux_inputs["text"] - outputs_dict = synthesis( - self, - sen, - self.config, - "cuda" in str(next(self.parameters()).device), - speaker_id=aux_inputs["speaker_id"], - d_vector=aux_inputs["d_vector"], - style_wav=aux_inputs["style_wav"], - use_griffin_lim=True, - do_trim_silence=False, - ) - test_audios["{}-audio".format(idx)] = outputs_dict["wav"] - test_figures["{}-prediction".format(idx)] = plot_spectrogram( - outputs_dict["outputs"]["model_outputs"], self.ap, output_fig=False - ) - test_figures["{}-alignment".format(idx)] = plot_alignment( - outputs_dict["outputs"]["alignments"], output_fig=False - ) - return test_figures, test_audios - - def on_init_start(self, trainer): - """Save the speaker.pth and language_ids.json at the beginning of the training. Also update both paths.""" - if self.speaker_manager is not None: - output_path = os.path.join(trainer.output_path, "speakers.pth") - self.speaker_manager.save_ids_to_file(output_path) - trainer.config.speakers_file = output_path - # some models don't have `model_args` set - if hasattr(trainer.config, "model_args"): - trainer.config.model_args.speakers_file = output_path - trainer.config.save_json(os.path.join(trainer.output_path, "config.json")) - print(f" > `speakers.pth` is saved to {output_path}.") - print(" > `speakers_file` is updated in the config.json.") - - if self.language_manager is not None: - output_path = os.path.join(trainer.output_path, "language_ids.json") - self.language_manager.save_ids_to_file(output_path) - trainer.config.language_ids_file = output_path - if hasattr(trainer.config, "model_args"): - trainer.config.model_args.language_ids_file = output_path - trainer.config.save_json(os.path.join(trainer.output_path, "config.json")) - print(f" > `language_ids.json` is saved to {output_path}.") - print(" > `language_ids_file` is updated in the config.json.") diff --git a/TTS/vc/models/freevc.py b/TTS/vc/models/freevc.py deleted file mode 100644 index ae22ad28c1d0330acc5f8fafa033cc4db33ef8bb..0000000000000000000000000000000000000000 --- a/TTS/vc/models/freevc.py +++ /dev/null @@ -1,833 +0,0 @@ -from dataclasses import dataclass, field -from typing import Dict, List, Optional, Tuple, Union - -import librosa -import numpy as np -import torch -from coqpit import Coqpit -from torch import nn -from torch.nn import AvgPool1d, Conv1d, Conv2d, ConvTranspose1d -from torch.nn import functional as F -from torch.nn.utils import remove_weight_norm, spectral_norm, weight_norm - -import TTS.vc.modules.freevc.commons as commons -import TTS.vc.modules.freevc.modules as modules -from TTS.tts.utils.speakers import SpeakerManager -from TTS.utils.io import load_fsspec, save_checkpoint -from TTS.vc.configs.shared_configs import BaseVCConfig -from TTS.vc.models.base_vc import BaseVC -from TTS.vc.modules.freevc.commons import get_padding, init_weights -from TTS.vc.modules.freevc.mel_processing import mel_spectrogram_torch -from TTS.vc.modules.freevc.speaker_encoder.speaker_encoder import SpeakerEncoder as SpeakerEncoderEx -from TTS.vc.modules.freevc.wavlm import get_wavlm - - -class ResidualCouplingBlock(nn.Module): - def __init__(self, channels, hidden_channels, kernel_size, dilation_rate, n_layers, n_flows=4, gin_channels=0): - super().__init__() - self.channels = channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.n_layers = n_layers - self.n_flows = n_flows - self.gin_channels = gin_channels - - self.flows = nn.ModuleList() - for i in range(n_flows): - self.flows.append( - modules.ResidualCouplingLayer( - channels, - hidden_channels, - kernel_size, - dilation_rate, - n_layers, - gin_channels=gin_channels, - mean_only=True, - ) - ) - self.flows.append(modules.Flip()) - - def forward(self, x, x_mask, g=None, reverse=False): - if not reverse: - for flow in self.flows: - x, _ = flow(x, x_mask, g=g, reverse=reverse) - else: - for flow in reversed(self.flows): - x = flow(x, x_mask, g=g, reverse=reverse) - return x - - -class Encoder(nn.Module): - def __init__( - self, in_channels, out_channels, hidden_channels, kernel_size, dilation_rate, n_layers, gin_channels=0 - ): - super().__init__() - self.in_channels = in_channels - self.out_channels = out_channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.n_layers = n_layers - self.gin_channels = gin_channels - - self.pre = nn.Conv1d(in_channels, hidden_channels, 1) - self.enc = modules.WN(hidden_channels, kernel_size, dilation_rate, n_layers, gin_channels=gin_channels) - self.proj = nn.Conv1d(hidden_channels, out_channels * 2, 1) - - def forward(self, x, x_lengths, g=None): - x_mask = torch.unsqueeze(commons.sequence_mask(x_lengths, x.size(2)), 1).to(x.dtype) - x = self.pre(x) * x_mask - x = self.enc(x, x_mask, g=g) - stats = self.proj(x) * x_mask - m, logs = torch.split(stats, self.out_channels, dim=1) - z = (m + torch.randn_like(m) * torch.exp(logs)) * x_mask - return z, m, logs, x_mask - - -class Generator(torch.nn.Module): - def __init__( - self, - initial_channel, - resblock, - resblock_kernel_sizes, - resblock_dilation_sizes, - upsample_rates, - upsample_initial_channel, - upsample_kernel_sizes, - gin_channels=0, - ): - super(Generator, self).__init__() - self.num_kernels = len(resblock_kernel_sizes) - self.num_upsamples = len(upsample_rates) - self.conv_pre = Conv1d(initial_channel, upsample_initial_channel, 7, 1, padding=3) - resblock = modules.ResBlock1 if resblock == "1" else modules.ResBlock2 - - self.ups = nn.ModuleList() - for i, (u, k) in enumerate(zip(upsample_rates, upsample_kernel_sizes)): - self.ups.append( - weight_norm( - ConvTranspose1d( - upsample_initial_channel // (2**i), - upsample_initial_channel // (2 ** (i + 1)), - k, - u, - padding=(k - u) // 2, - ) - ) - ) - - self.resblocks = nn.ModuleList() - for i in range(len(self.ups)): - ch = upsample_initial_channel // (2 ** (i + 1)) - for j, (k, d) in enumerate(zip(resblock_kernel_sizes, resblock_dilation_sizes)): - self.resblocks.append(resblock(ch, k, d)) - - self.conv_post = Conv1d(ch, 1, 7, 1, padding=3, bias=False) - self.ups.apply(init_weights) - - if gin_channels != 0: - self.cond = nn.Conv1d(gin_channels, upsample_initial_channel, 1) - - def forward(self, x, g=None): - x = self.conv_pre(x) - if g is not None: - x = x + self.cond(g) - - for i in range(self.num_upsamples): - x = F.leaky_relu(x, modules.LRELU_SLOPE) - x = self.ups[i](x) - xs = None - for j in range(self.num_kernels): - if xs is None: - xs = self.resblocks[i * self.num_kernels + j](x) - else: - xs += self.resblocks[i * self.num_kernels + j](x) - x = xs / self.num_kernels - x = F.leaky_relu(x) - x = self.conv_post(x) - x = torch.tanh(x) - - return x - - def remove_weight_norm(self): - print("Removing weight norm...") - for l in self.ups: - remove_weight_norm(l) - for l in self.resblocks: - l.remove_weight_norm() - - -class DiscriminatorP(torch.nn.Module): - def __init__(self, period, kernel_size=5, stride=3, use_spectral_norm=False): - super(DiscriminatorP, self).__init__() - self.period = period - self.use_spectral_norm = use_spectral_norm - norm_f = weight_norm if use_spectral_norm == False else spectral_norm - self.convs = nn.ModuleList( - [ - norm_f(Conv2d(1, 32, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(Conv2d(32, 128, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(Conv2d(128, 512, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(Conv2d(512, 1024, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(Conv2d(1024, 1024, (kernel_size, 1), 1, padding=(get_padding(kernel_size, 1), 0))), - ] - ) - self.conv_post = norm_f(Conv2d(1024, 1, (3, 1), 1, padding=(1, 0))) - - def forward(self, x): - fmap = [] - - # 1d to 2d - b, c, t = x.shape - if t % self.period != 0: # pad first - n_pad = self.period - (t % self.period) - x = F.pad(x, (0, n_pad), "reflect") - t = t + n_pad - x = x.view(b, c, t // self.period, self.period) - - for l in self.convs: - x = l(x) - x = F.leaky_relu(x, modules.LRELU_SLOPE) - fmap.append(x) - x = self.conv_post(x) - fmap.append(x) - x = torch.flatten(x, 1, -1) - - return x, fmap - - -class DiscriminatorS(torch.nn.Module): - def __init__(self, use_spectral_norm=False): - super(DiscriminatorS, self).__init__() - norm_f = weight_norm if use_spectral_norm == False else spectral_norm - self.convs = nn.ModuleList( - [ - norm_f(Conv1d(1, 16, 15, 1, padding=7)), - norm_f(Conv1d(16, 64, 41, 4, groups=4, padding=20)), - norm_f(Conv1d(64, 256, 41, 4, groups=16, padding=20)), - norm_f(Conv1d(256, 1024, 41, 4, groups=64, padding=20)), - norm_f(Conv1d(1024, 1024, 41, 4, groups=256, padding=20)), - norm_f(Conv1d(1024, 1024, 5, 1, padding=2)), - ] - ) - self.conv_post = norm_f(Conv1d(1024, 1, 3, 1, padding=1)) - - def forward(self, x): - fmap = [] - - for l in self.convs: - x = l(x) - x = F.leaky_relu(x, modules.LRELU_SLOPE) - fmap.append(x) - x = self.conv_post(x) - fmap.append(x) - x = torch.flatten(x, 1, -1) - - return x, fmap - - -class MultiPeriodDiscriminator(torch.nn.Module): - def __init__(self, use_spectral_norm=False): - super(MultiPeriodDiscriminator, self).__init__() - periods = [2, 3, 5, 7, 11] - - discs = [DiscriminatorS(use_spectral_norm=use_spectral_norm)] - discs = discs + [DiscriminatorP(i, use_spectral_norm=use_spectral_norm) for i in periods] - self.discriminators = nn.ModuleList(discs) - - def forward(self, y, y_hat): - y_d_rs = [] - y_d_gs = [] - fmap_rs = [] - fmap_gs = [] - for i, d in enumerate(self.discriminators): - y_d_r, fmap_r = d(y) - y_d_g, fmap_g = d(y_hat) - y_d_rs.append(y_d_r) - y_d_gs.append(y_d_g) - fmap_rs.append(fmap_r) - fmap_gs.append(fmap_g) - - return y_d_rs, y_d_gs, fmap_rs, fmap_gs - - -class SpeakerEncoder(torch.nn.Module): - def __init__(self, mel_n_channels=80, model_num_layers=3, model_hidden_size=256, model_embedding_size=256): - super(SpeakerEncoder, self).__init__() - self.lstm = nn.LSTM(mel_n_channels, model_hidden_size, model_num_layers, batch_first=True) - self.linear = nn.Linear(model_hidden_size, model_embedding_size) - self.relu = nn.ReLU() - - def forward(self, mels): - self.lstm.flatten_parameters() - _, (hidden, _) = self.lstm(mels) - embeds_raw = self.relu(self.linear(hidden[-1])) - return embeds_raw / torch.norm(embeds_raw, dim=1, keepdim=True) - - def compute_partial_slices(self, total_frames, partial_frames, partial_hop): - mel_slices = [] - for i in range(0, total_frames - partial_frames, partial_hop): - mel_range = torch.arange(i, i + partial_frames) - mel_slices.append(mel_range) - - return mel_slices - - def embed_utterance(self, mel, partial_frames=128, partial_hop=64): - mel_len = mel.size(1) - last_mel = mel[:, -partial_frames:] - - if mel_len > partial_frames: - mel_slices = self.compute_partial_slices(mel_len, partial_frames, partial_hop) - mels = list(mel[:, s] for s in mel_slices) - mels.append(last_mel) - mels = torch.stack(tuple(mels), 0).squeeze(1) - - with torch.no_grad(): - partial_embeds = self(mels) - embed = torch.mean(partial_embeds, axis=0).unsqueeze(0) - # embed = embed / torch.linalg.norm(embed, 2) - else: - with torch.no_grad(): - embed = self(last_mel) - - return embed - - -@dataclass -class FreeVCAudioConfig(Coqpit): - """Audio configuration - - Args: - max_wav_value (float): - The maximum value of the waveform. - - input_sample_rate (int): - The sampling rate of the input waveform. - - output_sample_rate (int): - The sampling rate of the output waveform. - - filter_length (int): - The length of the filter. - - hop_length (int): - The hop length. - - win_length (int): - The window length. - - n_mel_channels (int): - The number of mel channels. - - mel_fmin (float): - The minimum frequency of the mel filterbank. - - mel_fmax (Optional[float]): - The maximum frequency of the mel filterbank. - """ - - max_wav_value: float = field(default=32768.0) - input_sample_rate: int = field(default=16000) - output_sample_rate: int = field(default=24000) - filter_length: int = field(default=1280) - hop_length: int = field(default=320) - win_length: int = field(default=1280) - n_mel_channels: int = field(default=80) - mel_fmin: float = field(default=0.0) - mel_fmax: Optional[float] = field(default=None) - - -@dataclass -class FreeVCArgs(Coqpit): - """FreeVC model arguments - - Args: - spec_channels (int): - The number of channels in the spectrogram. - - inter_channels (int): - The number of channels in the intermediate layers. - - hidden_channels (int): - The number of channels in the hidden layers. - - filter_channels (int): - The number of channels in the filter layers. - - n_heads (int): - The number of attention heads. - - n_layers (int): - The number of layers. - - kernel_size (int): - The size of the kernel. - - p_dropout (float): - The dropout probability. - - resblock (str): - The type of residual block. - - resblock_kernel_sizes (List[int]): - The kernel sizes for the residual blocks. - - resblock_dilation_sizes (List[List[int]]): - The dilation sizes for the residual blocks. - - upsample_rates (List[int]): - The upsample rates. - - upsample_initial_channel (int): - The number of channels in the initial upsample layer. - - upsample_kernel_sizes (List[int]): - The kernel sizes for the upsample layers. - - n_layers_q (int): - The number of layers in the quantization network. - - use_spectral_norm (bool): - Whether to use spectral normalization. - - gin_channels (int): - The number of channels in the global conditioning vector. - - ssl_dim (int): - The dimension of the self-supervised learning embedding. - - use_spk (bool): - Whether to use external speaker encoder. - """ - - spec_channels: int = field(default=641) - inter_channels: int = field(default=192) - hidden_channels: int = field(default=192) - filter_channels: int = field(default=768) - n_heads: int = field(default=2) - n_layers: int = field(default=6) - kernel_size: int = field(default=3) - p_dropout: float = field(default=0.1) - resblock: str = field(default="1") - resblock_kernel_sizes: List[int] = field(default_factory=lambda: [3, 7, 11]) - resblock_dilation_sizes: List[List[int]] = field(default_factory=lambda: [[1, 3, 5], [1, 3, 5], [1, 3, 5]]) - upsample_rates: List[int] = field(default_factory=lambda: [10, 8, 2, 2]) - upsample_initial_channel: int = field(default=512) - upsample_kernel_sizes: List[int] = field(default_factory=lambda: [16, 16, 4, 4]) - n_layers_q: int = field(default=3) - use_spectral_norm: bool = field(default=False) - gin_channels: int = field(default=256) - ssl_dim: int = field(default=1024) - use_spk: bool = field(default=False) - num_spks: int = field(default=0) - segment_size: int = field(default=8960) - - -class FreeVC(BaseVC): - """ - - Papaer:: - https://arxiv.org/abs/2210.15418# - - Paper Abstract:: - Voice conversion (VC) can be achieved by first extracting source content information and target speaker - information, and then reconstructing waveform with these information. However, current approaches normally - either extract dirty content information with speaker information leaked in, or demand a large amount of - annotated data for training. Besides, the quality of reconstructed waveform can be degraded by the - mismatch between conversion model and vocoder. In this paper, we adopt the end-to-end framework of VITS for - high-quality waveform reconstruction, and propose strategies for clean content information extraction without - text annotation. We disentangle content information by imposing an information bottleneck to WavLM features, - and propose the spectrogram-resize based data augmentation to improve the purity of extracted content - information. Experimental results show that the proposed method outperforms the latest VC models trained with - annotated data and has greater robustness. - - Original Code:: - https://github.com/OlaWod/FreeVC - - Examples: - >>> from TTS.vc.configs.freevc_config import FreeVCConfig - >>> from TTS.vc.models.freevc import FreeVC - >>> config = FreeVCConfig() - >>> model = FreeVC(config) - """ - - def __init__(self, config: Coqpit, speaker_manager: SpeakerManager = None): - super().__init__(config, None, speaker_manager, None) - - self.init_multispeaker(config) - - self.spec_channels = self.args.spec_channels - self.inter_channels = self.args.inter_channels - self.hidden_channels = self.args.hidden_channels - self.filter_channels = self.args.filter_channels - self.n_heads = self.args.n_heads - self.n_layers = self.args.n_layers - self.kernel_size = self.args.kernel_size - self.p_dropout = self.args.p_dropout - self.resblock = self.args.resblock - self.resblock_kernel_sizes = self.args.resblock_kernel_sizes - self.resblock_dilation_sizes = self.args.resblock_dilation_sizes - self.upsample_rates = self.args.upsample_rates - self.upsample_initial_channel = self.args.upsample_initial_channel - self.upsample_kernel_sizes = self.args.upsample_kernel_sizes - self.segment_size = self.args.segment_size - self.gin_channels = self.args.gin_channels - self.ssl_dim = self.args.ssl_dim - self.use_spk = self.args.use_spk - - self.enc_p = Encoder(self.args.ssl_dim, self.inter_channels, self.hidden_channels, 5, 1, 16) - self.dec = Generator( - self.inter_channels, - self.resblock, - self.resblock_kernel_sizes, - self.resblock_dilation_sizes, - self.upsample_rates, - self.upsample_initial_channel, - self.upsample_kernel_sizes, - gin_channels=self.gin_channels, - ) - self.enc_q = Encoder( - self.spec_channels, self.inter_channels, self.hidden_channels, 5, 1, 16, gin_channels=self.gin_channels - ) - self.flow = ResidualCouplingBlock( - self.inter_channels, self.hidden_channels, 5, 1, 4, gin_channels=self.gin_channels - ) - if not self.use_spk: - self.enc_spk = SpeakerEncoder(model_hidden_size=self.gin_channels, model_embedding_size=self.gin_channels) - else: - self.load_pretrained_speaker_encoder() - - self.wavlm = get_wavlm() - - @property - def device(self): - return next(self.parameters()).device - - def load_pretrained_speaker_encoder(self): - """Load pretrained speaker encoder model as mentioned in the paper.""" - print(" > Loading pretrained speaker encoder model ...") - self.enc_spk_ex = SpeakerEncoderEx( - "https://github.com/coqui-ai/TTS/releases/download/v0.13.0_models/speaker_encoder.pt" - ) - - def init_multispeaker(self, config: Coqpit): - """Initialize multi-speaker modules of a model. A model can be trained either with a speaker embedding layer - or with external `d_vectors` computed from a speaker encoder model. - - You must provide a `speaker_manager` at initialization to set up the multi-speaker modules. - - Args: - config (Coqpit): Model configuration. - data (List, optional): Dataset items to infer number of speakers. Defaults to None. - """ - self.num_spks = self.args.num_spks - if self.speaker_manager: - self.num_spks = self.speaker_manager.num_spks - - def forward( - self, - c: torch.Tensor, - spec: torch.Tensor, - g: Optional[torch.Tensor] = None, - mel: Optional[torch.Tensor] = None, - c_lengths: Optional[torch.Tensor] = None, - spec_lengths: Optional[torch.Tensor] = None, - ) -> Tuple[ - torch.Tensor, - torch.Tensor, - torch.Tensor, - Tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor], - ]: - """ - Forward pass of the model. - - Args: - c: WavLM features. Shape: (batch_size, c_seq_len). - spec: The input spectrogram. Shape: (batch_size, spec_seq_len, spec_dim). - g: The speaker embedding. Shape: (batch_size, spk_emb_dim). - mel: The input mel-spectrogram for the speaker encoder. Shape: (batch_size, mel_seq_len, mel_dim). - c_lengths: The lengths of the WavLM features. Shape: (batch_size,). - spec_lengths: The lengths of the spectrogram. Shape: (batch_size,). - - Returns: - o: The output spectrogram. Shape: (batch_size, spec_seq_len, spec_dim). - ids_slice: The slice indices. Shape: (batch_size, num_slices). - spec_mask: The spectrogram mask. Shape: (batch_size, spec_seq_len). - (z, z_p, m_p, logs_p, m_q, logs_q): A tuple of latent variables. - """ - - # If c_lengths is None, set it to the length of the last dimension of c - if c_lengths is None: - c_lengths = (torch.ones(c.size(0)) * c.size(-1)).to(c.device) - - # If spec_lengths is None, set it to the length of the last dimension of spec - if spec_lengths is None: - spec_lengths = (torch.ones(spec.size(0)) * spec.size(-1)).to(spec.device) - - # If use_spk is False, compute g from mel using enc_spk - g = None - if not self.use_spk: - g = self.enc_spk(mel).unsqueeze(-1) - - # Compute m_p, logs_p, z, m_q, logs_q, and spec_mask using enc_p and enc_q - _, m_p, logs_p, _ = self.enc_p(c, c_lengths) - z, m_q, logs_q, spec_mask = self.enc_q(spec.transpose(1, 2), spec_lengths, g=g) - - # Compute z_p using flow - z_p = self.flow(z, spec_mask, g=g) - - # Randomly slice z and compute o using dec - z_slice, ids_slice = commons.rand_slice_segments(z, spec_lengths, self.segment_size) - o = self.dec(z_slice, g=g) - - return o, ids_slice, spec_mask, (z, z_p, m_p, logs_p, m_q, logs_q) - - @torch.no_grad() - def inference(self, c, g=None, mel=None, c_lengths=None): - """ - Inference pass of the model - - Args: - c (torch.Tensor): Input tensor. Shape: (batch_size, c_seq_len). - g (torch.Tensor): Speaker embedding tensor. Shape: (batch_size, spk_emb_dim). - mel (torch.Tensor): Mel-spectrogram tensor. Shape: (batch_size, mel_seq_len, mel_dim). - c_lengths (torch.Tensor): Lengths of the input tensor. Shape: (batch_size,). - - Returns: - torch.Tensor: Output tensor. - """ - if c_lengths == None: - c_lengths = (torch.ones(c.size(0)) * c.size(-1)).to(c.device) - if not self.use_spk: - g = self.enc_spk.embed_utterance(mel) - g = g.unsqueeze(-1) - z_p, m_p, logs_p, c_mask = self.enc_p(c, c_lengths) - z = self.flow(z_p, c_mask, g=g, reverse=True) - o = self.dec(z * c_mask, g=g) - return o - - def extract_wavlm_features(self, y): - """Extract WavLM features from an audio tensor. - - Args: - y (torch.Tensor): Audio tensor. Shape: (batch_size, audio_seq_len). - """ - - with torch.no_grad(): - c = self.wavlm.extract_features(y)[0] - c = c.transpose(1, 2) - return c - - def load_audio(self, wav): - """Read and format the input audio.""" - if isinstance(wav, str): - wav, _ = librosa.load(wav, sr=self.config.audio.input_sample_rate) - if isinstance(wav, np.ndarray): - wav = torch.from_numpy(wav).to(self.device) - if isinstance(wav, torch.Tensor): - wav = wav.to(self.device) - if isinstance(wav, list): - wav = torch.from_numpy(np.array(wav)).to(self.device) - return wav.float() - - @torch.inference_mode() - def voice_conversion(self, src, tgt): - """ - Voice conversion pass of the model. - - Args: - src (str or torch.Tensor): Source utterance. - tgt (str or torch.Tensor): Target utterance. - - Returns: - torch.Tensor: Output tensor. - """ - - wav_tgt = self.load_audio(tgt).cpu().numpy() - wav_tgt, _ = librosa.effects.trim(wav_tgt, top_db=20) - - if self.config.model_args.use_spk: - g_tgt = self.enc_spk_ex.embed_utterance(wav_tgt) - g_tgt = torch.from_numpy(g_tgt)[None, :, None].to(self.device) - else: - wav_tgt = torch.from_numpy(wav_tgt).unsqueeze(0).to(self.device) - mel_tgt = mel_spectrogram_torch( - wav_tgt, - self.config.audio.filter_length, - self.config.audio.n_mel_channels, - self.config.audio.input_sample_rate, - self.config.audio.hop_length, - self.config.audio.win_length, - self.config.audio.mel_fmin, - self.config.audio.mel_fmax, - ) - # src - wav_src = self.load_audio(src) - c = self.extract_wavlm_features(wav_src[None, :]) - - if self.config.model_args.use_spk: - audio = self.inference(c, g=g_tgt) - else: - audio = self.inference(c, mel=mel_tgt.transpose(1, 2)) - audio = audio[0][0].data.cpu().float().numpy() - return audio - - def eval_step(): - ... - - @staticmethod - def init_from_config(config: "VitsConfig", samples: Union[List[List], List[Dict]] = None, verbose=True): - model = FreeVC(config) - return model - - def load_checkpoint(self, config, checkpoint_path, eval=False, strict=True, cache=False): - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"], strict=strict) - if eval: - self.eval() - - def train_step(): - ... - - -@dataclass -class FreeVCConfig(BaseVCConfig): - """Defines parameters for FreeVC End2End TTS model. - - Args: - model (str): - Model name. Do not change unless you know what you are doing. - - model_args (FreeVCArgs): - Model architecture arguments. Defaults to `FreeVCArgs()`. - - audio (FreeVCAudioConfig): - Audio processing configuration. Defaults to `FreeVCAudioConfig()`. - - grad_clip (List): - Gradient clipping thresholds for each optimizer. Defaults to `[1000.0, 1000.0]`. - - lr_gen (float): - Initial learning rate for the generator. Defaults to 0.0002. - - lr_disc (float): - Initial learning rate for the discriminator. Defaults to 0.0002. - - lr_scheduler_gen (str): - Name of the learning rate scheduler for the generator. One of the `torch.optim.lr_scheduler.*`. Defaults to - `ExponentialLR`. - - lr_scheduler_gen_params (dict): - Parameters for the learning rate scheduler of the generator. Defaults to `{'gamma': 0.999875, "last_epoch":-1}`. - - lr_scheduler_disc (str): - Name of the learning rate scheduler for the discriminator. One of the `torch.optim.lr_scheduler.*`. Defaults to - `ExponentialLR`. - - lr_scheduler_disc_params (dict): - Parameters for the learning rate scheduler of the discriminator. Defaults to `{'gamma': 0.999875, "last_epoch":-1}`. - - scheduler_after_epoch (bool): - If true, step the schedulers after each epoch else after each step. Defaults to `False`. - - optimizer (str): - Name of the optimizer to use with both the generator and the discriminator networks. One of the - `torch.optim.*`. Defaults to `AdamW`. - - kl_loss_alpha (float): - Loss weight for KL loss. Defaults to 1.0. - - disc_loss_alpha (float): - Loss weight for the discriminator loss. Defaults to 1.0. - - gen_loss_alpha (float): - Loss weight for the generator loss. Defaults to 1.0. - - feat_loss_alpha (float): - Loss weight for the feature matching loss. Defaults to 1.0. - - mel_loss_alpha (float): - Loss weight for the mel loss. Defaults to 45.0. - - return_wav (bool): - If true, data loader returns the waveform as well as the other outputs. Do not change. Defaults to `True`. - - compute_linear_spec (bool): - If true, the linear spectrogram is computed and returned alongside the mel output. Do not change. Defaults to `True`. - - use_weighted_sampler (bool): - If true, use weighted sampler with bucketing for balancing samples between datasets used in training. Defaults to `False`. - - weighted_sampler_attrs (dict): - Key retuned by the formatter to be used for weighted sampler. For example `{"root_path": 2.0, "speaker_name": 1.0}` sets sample probabilities - by overweighting `root_path` by 2.0. Defaults to `{}`. - - weighted_sampler_multipliers (dict): - Weight each unique value of a key returned by the formatter for weighted sampling. - For example `{"root_path":{"/raid/datasets/libritts-clean-16khz-bwe-coqui_44khz/LibriTTS/train-clean-100/":1.0, "/raid/datasets/libritts-clean-16khz-bwe-coqui_44khz/LibriTTS/train-clean-360/": 0.5}`. - It will sample instances from `train-clean-100` 2 times more than `train-clean-360`. Defaults to `{}`. - - r (int): - Number of spectrogram frames to be generated at a time. Do not change. Defaults to `1`. - - add_blank (bool): - If true, a blank token is added in between every character. Defaults to `True`. - - test_sentences (List[List]): - List of sentences with speaker and language information to be used for testing. - - language_ids_file (str): - Path to the language ids file. - - use_language_embedding (bool): - If true, language embedding is used. Defaults to `False`. - - Note: - Check :class:`TTS.tts.configs.shared_configs.BaseTTSConfig` for the inherited parameters. - - Example: - - >>> from TTS.tts.configs.freevc_config import FreeVCConfig - >>> config = FreeVCConfig() - """ - - model: str = "freevc" - # model specific params - model_args: FreeVCArgs = field(default_factory=FreeVCArgs) - audio: FreeVCAudioConfig = field(default_factory=FreeVCAudioConfig) - - # optimizer - # TODO with training support - - # loss params - # TODO with training support - - # data loader params - return_wav: bool = True - compute_linear_spec: bool = True - - # sampler params - use_weighted_sampler: bool = False # TODO: move it to the base config - weighted_sampler_attrs: dict = field(default_factory=lambda: {}) - weighted_sampler_multipliers: dict = field(default_factory=lambda: {}) - - # overrides - r: int = 1 # DO NOT CHANGE - add_blank: bool = True - - # multi-speaker settings - # use speaker embedding layer - num_speakers: int = 0 - speakers_file: str = None - speaker_embedding_channels: int = 256 - - # use d-vectors - use_d_vector_file: bool = False - d_vector_file: List[str] = None - d_vector_dim: int = None - - def __post_init__(self): - for key, val in self.model_args.items(): - if hasattr(self, key): - self[key] = val diff --git a/TTS/vc/modules/__init__.py b/TTS/vc/modules/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/vc/modules/freevc/__init__.py b/TTS/vc/modules/freevc/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/vc/modules/freevc/commons.py b/TTS/vc/modules/freevc/commons.py deleted file mode 100644 index 5684a88e932dbab6d56fdbf7f3a7704fd1021298..0000000000000000000000000000000000000000 --- a/TTS/vc/modules/freevc/commons.py +++ /dev/null @@ -1,170 +0,0 @@ -import math - -import numpy as np -import torch -from torch import nn -from torch.nn import functional as F - - -def init_weights(m, mean=0.0, std=0.01): - classname = m.__class__.__name__ - if classname.find("Conv") != -1: - m.weight.data.normal_(mean, std) - - -def get_padding(kernel_size, dilation=1): - return int((kernel_size * dilation - dilation) / 2) - - -def convert_pad_shape(pad_shape): - l = pad_shape[::-1] - pad_shape = [item for sublist in l for item in sublist] - return pad_shape - - -def intersperse(lst, item): - result = [item] * (len(lst) * 2 + 1) - result[1::2] = lst - return result - - -def kl_divergence(m_p, logs_p, m_q, logs_q): - """KL(P||Q)""" - kl = (logs_q - logs_p) - 0.5 - kl += 0.5 * (torch.exp(2.0 * logs_p) + ((m_p - m_q) ** 2)) * torch.exp(-2.0 * logs_q) - return kl - - -def rand_gumbel(shape): - """Sample from the Gumbel distribution, protect from overflows.""" - uniform_samples = torch.rand(shape) * 0.99998 + 0.00001 - return -torch.log(-torch.log(uniform_samples)) - - -def rand_gumbel_like(x): - g = rand_gumbel(x.size()).to(dtype=x.dtype, device=x.device) - return g - - -def slice_segments(x, ids_str, segment_size=4): - ret = torch.zeros_like(x[:, :, :segment_size]) - for i in range(x.size(0)): - idx_str = ids_str[i] - idx_end = idx_str + segment_size - ret[i] = x[i, :, idx_str:idx_end] - return ret - - -def rand_slice_segments(x, x_lengths=None, segment_size=4): - b, d, t = x.size() - if x_lengths is None: - x_lengths = t - ids_str_max = x_lengths - segment_size + 1 - ids_str = (torch.rand([b]).to(device=x.device) * ids_str_max).to(dtype=torch.long) - ret = slice_segments(x, ids_str, segment_size) - return ret, ids_str - - -def rand_spec_segments(x, x_lengths=None, segment_size=4): - b, d, t = x.size() - if x_lengths is None: - x_lengths = t - ids_str_max = x_lengths - segment_size - ids_str = (torch.rand([b]).to(device=x.device) * ids_str_max).to(dtype=torch.long) - ret = slice_segments(x, ids_str, segment_size) - return ret, ids_str - - -def get_timing_signal_1d(length, channels, min_timescale=1.0, max_timescale=1.0e4): - position = torch.arange(length, dtype=torch.float) - num_timescales = channels // 2 - log_timescale_increment = math.log(float(max_timescale) / float(min_timescale)) / (num_timescales - 1) - inv_timescales = min_timescale * torch.exp( - torch.arange(num_timescales, dtype=torch.float) * -log_timescale_increment - ) - scaled_time = position.unsqueeze(0) * inv_timescales.unsqueeze(1) - signal = torch.cat([torch.sin(scaled_time), torch.cos(scaled_time)], 0) - signal = F.pad(signal, [0, 0, 0, channels % 2]) - signal = signal.view(1, channels, length) - return signal - - -def add_timing_signal_1d(x, min_timescale=1.0, max_timescale=1.0e4): - b, channels, length = x.size() - signal = get_timing_signal_1d(length, channels, min_timescale, max_timescale) - return x + signal.to(dtype=x.dtype, device=x.device) - - -def cat_timing_signal_1d(x, min_timescale=1.0, max_timescale=1.0e4, axis=1): - b, channels, length = x.size() - signal = get_timing_signal_1d(length, channels, min_timescale, max_timescale) - return torch.cat([x, signal.to(dtype=x.dtype, device=x.device)], axis) - - -def subsequent_mask(length): - mask = torch.tril(torch.ones(length, length)).unsqueeze(0).unsqueeze(0) - return mask - - -@torch.jit.script -def fused_add_tanh_sigmoid_multiply(input_a, input_b, n_channels): - n_channels_int = n_channels[0] - in_act = input_a + input_b - t_act = torch.tanh(in_act[:, :n_channels_int, :]) - s_act = torch.sigmoid(in_act[:, n_channels_int:, :]) - acts = t_act * s_act - return acts - - -def convert_pad_shape(pad_shape): - l = pad_shape[::-1] - pad_shape = [item for sublist in l for item in sublist] - return pad_shape - - -def shift_1d(x): - x = F.pad(x, convert_pad_shape([[0, 0], [0, 0], [1, 0]]))[:, :, :-1] - return x - - -def sequence_mask(length, max_length=None): - if max_length is None: - max_length = length.max() - x = torch.arange(max_length, dtype=length.dtype, device=length.device) - return x.unsqueeze(0) < length.unsqueeze(1) - - -def generate_path(duration, mask): - """ - duration: [b, 1, t_x] - mask: [b, 1, t_y, t_x] - """ - device = duration.device - - b, _, t_y, t_x = mask.shape - cum_duration = torch.cumsum(duration, -1) - - cum_duration_flat = cum_duration.view(b * t_x) - path = sequence_mask(cum_duration_flat, t_y).to(mask.dtype) - path = path.view(b, t_x, t_y) - path = path - F.pad(path, convert_pad_shape([[0, 0], [1, 0], [0, 0]]))[:, :-1] - path = path.unsqueeze(1).transpose(2, 3) * mask - return path - - -def clip_grad_value_(parameters, clip_value, norm_type=2): - if isinstance(parameters, torch.Tensor): - parameters = [parameters] - parameters = list(filter(lambda p: p.grad is not None, parameters)) - norm_type = float(norm_type) - if clip_value is not None: - clip_value = float(clip_value) - - total_norm = 0 - for p in parameters: - param_norm = p.grad.data.norm(norm_type) - total_norm += param_norm.item() ** norm_type - if clip_value is not None: - p.grad.data.clamp_(min=-clip_value, max=clip_value) - total_norm = total_norm ** (1.0 / norm_type) - return total_norm diff --git a/TTS/vc/modules/freevc/mel_processing.py b/TTS/vc/modules/freevc/mel_processing.py deleted file mode 100644 index 2dcbf214935a1fde832a32139145ce87fa752598..0000000000000000000000000000000000000000 --- a/TTS/vc/modules/freevc/mel_processing.py +++ /dev/null @@ -1,125 +0,0 @@ -import torch -import torch.utils.data -from librosa.filters import mel as librosa_mel_fn - -MAX_WAV_VALUE = 32768.0 - - -def dynamic_range_compression_torch(x, C=1, clip_val=1e-5): - """ - PARAMS - ------ - C: compression factor - """ - return torch.log(torch.clamp(x, min=clip_val) * C) - - -def dynamic_range_decompression_torch(x, C=1): - """ - PARAMS - ------ - C: compression factor used to compress - """ - return torch.exp(x) / C - - -def spectral_normalize_torch(magnitudes): - output = dynamic_range_compression_torch(magnitudes) - return output - - -def spectral_de_normalize_torch(magnitudes): - output = dynamic_range_decompression_torch(magnitudes) - return output - - -mel_basis = {} -hann_window = {} - - -def spectrogram_torch(y, n_fft, sampling_rate, hop_size, win_size, center=False): - if torch.min(y) < -1.0: - print("min value is ", torch.min(y)) - if torch.max(y) > 1.0: - print("max value is ", torch.max(y)) - - global hann_window - dtype_device = str(y.dtype) + "_" + str(y.device) - wnsize_dtype_device = str(win_size) + "_" + dtype_device - if wnsize_dtype_device not in hann_window: - hann_window[wnsize_dtype_device] = torch.hann_window(win_size).to(dtype=y.dtype, device=y.device) - - y = torch.nn.functional.pad( - y.unsqueeze(1), (int((n_fft - hop_size) / 2), int((n_fft - hop_size) / 2)), mode="reflect" - ) - y = y.squeeze(1) - - spec = torch.stft( - y, - n_fft, - hop_length=hop_size, - win_length=win_size, - window=hann_window[wnsize_dtype_device], - center=center, - pad_mode="reflect", - normalized=False, - onesided=True, - return_complex=False, - ) - - spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) - return spec - - -def spec_to_mel_torch(spec, n_fft, num_mels, sampling_rate, fmin, fmax): - global mel_basis - dtype_device = str(spec.dtype) + "_" + str(spec.device) - fmax_dtype_device = str(fmax) + "_" + dtype_device - if fmax_dtype_device not in mel_basis: - mel = librosa_mel_fn(sr=sampling_rate, n_fft=n_fft, n_mels=num_mels, fmin=fmin, fmax=fmax) - mel_basis[fmax_dtype_device] = torch.from_numpy(mel).to(dtype=spec.dtype, device=spec.device) - spec = torch.matmul(mel_basis[fmax_dtype_device], spec) - spec = spectral_normalize_torch(spec) - return spec - - -def mel_spectrogram_torch(y, n_fft, num_mels, sampling_rate, hop_size, win_size, fmin, fmax, center=False): - if torch.min(y) < -1.0: - print("min value is ", torch.min(y)) - if torch.max(y) > 1.0: - print("max value is ", torch.max(y)) - - global mel_basis, hann_window - dtype_device = str(y.dtype) + "_" + str(y.device) - fmax_dtype_device = str(fmax) + "_" + dtype_device - wnsize_dtype_device = str(win_size) + "_" + dtype_device - if fmax_dtype_device not in mel_basis: - mel = librosa_mel_fn(sr=sampling_rate, n_fft=n_fft, n_mels=num_mels, fmin=fmin, fmax=fmax) - mel_basis[fmax_dtype_device] = torch.from_numpy(mel).to(dtype=y.dtype, device=y.device) - if wnsize_dtype_device not in hann_window: - hann_window[wnsize_dtype_device] = torch.hann_window(win_size).to(dtype=y.dtype, device=y.device) - - y = torch.nn.functional.pad( - y.unsqueeze(1), (int((n_fft - hop_size) / 2), int((n_fft - hop_size) / 2)), mode="reflect" - ) - y = y.squeeze(1) - - spec = torch.stft( - y, - n_fft, - hop_length=hop_size, - win_length=win_size, - window=hann_window[wnsize_dtype_device], - center=center, - pad_mode="reflect", - normalized=False, - onesided=True, - return_complex=False, - ) - - spec = torch.sqrt(spec.pow(2).sum(-1) + 1e-6) - - spec = torch.matmul(mel_basis[fmax_dtype_device], spec) - spec = spectral_normalize_torch(spec) - - return spec diff --git a/TTS/vc/modules/freevc/modules.py b/TTS/vc/modules/freevc/modules.py deleted file mode 100644 index 0503a13c8a18bae791aabb41b0e716ab3505222b..0000000000000000000000000000000000000000 --- a/TTS/vc/modules/freevc/modules.py +++ /dev/null @@ -1,391 +0,0 @@ -import copy -import math - -import numpy as np -import scipy -import torch -from torch import nn -from torch.nn import AvgPool1d, Conv1d, Conv2d, ConvTranspose1d -from torch.nn import functional as F -from torch.nn.utils import remove_weight_norm, weight_norm - -import TTS.vc.modules.freevc.commons as commons -from TTS.vc.modules.freevc.commons import get_padding, init_weights - -LRELU_SLOPE = 0.1 - - -class LayerNorm(nn.Module): - def __init__(self, channels, eps=1e-5): - super().__init__() - self.channels = channels - self.eps = eps - - self.gamma = nn.Parameter(torch.ones(channels)) - self.beta = nn.Parameter(torch.zeros(channels)) - - def forward(self, x): - x = x.transpose(1, -1) - x = F.layer_norm(x, (self.channels,), self.gamma, self.beta, self.eps) - return x.transpose(1, -1) - - -class ConvReluNorm(nn.Module): - def __init__(self, in_channels, hidden_channels, out_channels, kernel_size, n_layers, p_dropout): - super().__init__() - self.in_channels = in_channels - self.hidden_channels = hidden_channels - self.out_channels = out_channels - self.kernel_size = kernel_size - self.n_layers = n_layers - self.p_dropout = p_dropout - assert n_layers > 1, "Number of layers should be larger than 0." - - self.conv_layers = nn.ModuleList() - self.norm_layers = nn.ModuleList() - self.conv_layers.append(nn.Conv1d(in_channels, hidden_channels, kernel_size, padding=kernel_size // 2)) - self.norm_layers.append(LayerNorm(hidden_channels)) - self.relu_drop = nn.Sequential(nn.ReLU(), nn.Dropout(p_dropout)) - for _ in range(n_layers - 1): - self.conv_layers.append(nn.Conv1d(hidden_channels, hidden_channels, kernel_size, padding=kernel_size // 2)) - self.norm_layers.append(LayerNorm(hidden_channels)) - self.proj = nn.Conv1d(hidden_channels, out_channels, 1) - self.proj.weight.data.zero_() - self.proj.bias.data.zero_() - - def forward(self, x, x_mask): - x_org = x - for i in range(self.n_layers): - x = self.conv_layers[i](x * x_mask) - x = self.norm_layers[i](x) - x = self.relu_drop(x) - x = x_org + self.proj(x) - return x * x_mask - - -class DDSConv(nn.Module): - """ - Dialted and Depth-Separable Convolution - """ - - def __init__(self, channels, kernel_size, n_layers, p_dropout=0.0): - super().__init__() - self.channels = channels - self.kernel_size = kernel_size - self.n_layers = n_layers - self.p_dropout = p_dropout - - self.drop = nn.Dropout(p_dropout) - self.convs_sep = nn.ModuleList() - self.convs_1x1 = nn.ModuleList() - self.norms_1 = nn.ModuleList() - self.norms_2 = nn.ModuleList() - for i in range(n_layers): - dilation = kernel_size**i - padding = (kernel_size * dilation - dilation) // 2 - self.convs_sep.append( - nn.Conv1d(channels, channels, kernel_size, groups=channels, dilation=dilation, padding=padding) - ) - self.convs_1x1.append(nn.Conv1d(channels, channels, 1)) - self.norms_1.append(LayerNorm(channels)) - self.norms_2.append(LayerNorm(channels)) - - def forward(self, x, x_mask, g=None): - if g is not None: - x = x + g - for i in range(self.n_layers): - y = self.convs_sep[i](x * x_mask) - y = self.norms_1[i](y) - y = F.gelu(y) - y = self.convs_1x1[i](y) - y = self.norms_2[i](y) - y = F.gelu(y) - y = self.drop(y) - x = x + y - return x * x_mask - - -class WN(torch.nn.Module): - def __init__(self, hidden_channels, kernel_size, dilation_rate, n_layers, gin_channels=0, p_dropout=0): - super(WN, self).__init__() - assert kernel_size % 2 == 1 - self.hidden_channels = hidden_channels - self.kernel_size = (kernel_size,) - self.dilation_rate = dilation_rate - self.n_layers = n_layers - self.gin_channels = gin_channels - self.p_dropout = p_dropout - - self.in_layers = torch.nn.ModuleList() - self.res_skip_layers = torch.nn.ModuleList() - self.drop = nn.Dropout(p_dropout) - - if gin_channels != 0: - cond_layer = torch.nn.Conv1d(gin_channels, 2 * hidden_channels * n_layers, 1) - self.cond_layer = torch.nn.utils.weight_norm(cond_layer, name="weight") - - for i in range(n_layers): - dilation = dilation_rate**i - padding = int((kernel_size * dilation - dilation) / 2) - in_layer = torch.nn.Conv1d( - hidden_channels, 2 * hidden_channels, kernel_size, dilation=dilation, padding=padding - ) - in_layer = torch.nn.utils.weight_norm(in_layer, name="weight") - self.in_layers.append(in_layer) - - # last one is not necessary - if i < n_layers - 1: - res_skip_channels = 2 * hidden_channels - else: - res_skip_channels = hidden_channels - - res_skip_layer = torch.nn.Conv1d(hidden_channels, res_skip_channels, 1) - res_skip_layer = torch.nn.utils.weight_norm(res_skip_layer, name="weight") - self.res_skip_layers.append(res_skip_layer) - - def forward(self, x, x_mask, g=None, **kwargs): - output = torch.zeros_like(x) - n_channels_tensor = torch.IntTensor([self.hidden_channels]) - - if g is not None: - g = self.cond_layer(g) - - for i in range(self.n_layers): - x_in = self.in_layers[i](x) - if g is not None: - cond_offset = i * 2 * self.hidden_channels - g_l = g[:, cond_offset : cond_offset + 2 * self.hidden_channels, :] - else: - g_l = torch.zeros_like(x_in) - - acts = commons.fused_add_tanh_sigmoid_multiply(x_in, g_l, n_channels_tensor) - acts = self.drop(acts) - - res_skip_acts = self.res_skip_layers[i](acts) - if i < self.n_layers - 1: - res_acts = res_skip_acts[:, : self.hidden_channels, :] - x = (x + res_acts) * x_mask - output = output + res_skip_acts[:, self.hidden_channels :, :] - else: - output = output + res_skip_acts - return output * x_mask - - def remove_weight_norm(self): - if self.gin_channels != 0: - torch.nn.utils.remove_weight_norm(self.cond_layer) - for l in self.in_layers: - torch.nn.utils.remove_weight_norm(l) - for l in self.res_skip_layers: - torch.nn.utils.remove_weight_norm(l) - - -class ResBlock1(torch.nn.Module): - def __init__(self, channels, kernel_size=3, dilation=(1, 3, 5)): - super(ResBlock1, self).__init__() - self.convs1 = nn.ModuleList( - [ - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[0], - padding=get_padding(kernel_size, dilation[0]), - ) - ), - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[1], - padding=get_padding(kernel_size, dilation[1]), - ) - ), - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[2], - padding=get_padding(kernel_size, dilation[2]), - ) - ), - ] - ) - self.convs1.apply(init_weights) - - self.convs2 = nn.ModuleList( - [ - weight_norm( - Conv1d(channels, channels, kernel_size, 1, dilation=1, padding=get_padding(kernel_size, 1)) - ), - weight_norm( - Conv1d(channels, channels, kernel_size, 1, dilation=1, padding=get_padding(kernel_size, 1)) - ), - weight_norm( - Conv1d(channels, channels, kernel_size, 1, dilation=1, padding=get_padding(kernel_size, 1)) - ), - ] - ) - self.convs2.apply(init_weights) - - def forward(self, x, x_mask=None): - for c1, c2 in zip(self.convs1, self.convs2): - xt = F.leaky_relu(x, LRELU_SLOPE) - if x_mask is not None: - xt = xt * x_mask - xt = c1(xt) - xt = F.leaky_relu(xt, LRELU_SLOPE) - if x_mask is not None: - xt = xt * x_mask - xt = c2(xt) - x = xt + x - if x_mask is not None: - x = x * x_mask - return x - - def remove_weight_norm(self): - for l in self.convs1: - remove_weight_norm(l) - for l in self.convs2: - remove_weight_norm(l) - - -class ResBlock2(torch.nn.Module): - def __init__(self, channels, kernel_size=3, dilation=(1, 3)): - super(ResBlock2, self).__init__() - self.convs = nn.ModuleList( - [ - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[0], - padding=get_padding(kernel_size, dilation[0]), - ) - ), - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[1], - padding=get_padding(kernel_size, dilation[1]), - ) - ), - ] - ) - self.convs.apply(init_weights) - - def forward(self, x, x_mask=None): - for c in self.convs: - xt = F.leaky_relu(x, LRELU_SLOPE) - if x_mask is not None: - xt = xt * x_mask - xt = c(xt) - x = xt + x - if x_mask is not None: - x = x * x_mask - return x - - def remove_weight_norm(self): - for l in self.convs: - remove_weight_norm(l) - - -class Log(nn.Module): - def forward(self, x, x_mask, reverse=False, **kwargs): - if not reverse: - y = torch.log(torch.clamp_min(x, 1e-5)) * x_mask - logdet = torch.sum(-y, [1, 2]) - return y, logdet - else: - x = torch.exp(x) * x_mask - return x - - -class Flip(nn.Module): - def forward(self, x, *args, reverse=False, **kwargs): - x = torch.flip(x, [1]) - if not reverse: - logdet = torch.zeros(x.size(0)).to(dtype=x.dtype, device=x.device) - return x, logdet - else: - return x - - -class ElementwiseAffine(nn.Module): - def __init__(self, channels): - super().__init__() - self.channels = channels - self.m = nn.Parameter(torch.zeros(channels, 1)) - self.logs = nn.Parameter(torch.zeros(channels, 1)) - - def forward(self, x, x_mask, reverse=False, **kwargs): - if not reverse: - y = self.m + torch.exp(self.logs) * x - y = y * x_mask - logdet = torch.sum(self.logs * x_mask, [1, 2]) - return y, logdet - else: - x = (x - self.m) * torch.exp(-self.logs) * x_mask - return x - - -class ResidualCouplingLayer(nn.Module): - def __init__( - self, - channels, - hidden_channels, - kernel_size, - dilation_rate, - n_layers, - p_dropout=0, - gin_channels=0, - mean_only=False, - ): - assert channels % 2 == 0, "channels should be divisible by 2" - super().__init__() - self.channels = channels - self.hidden_channels = hidden_channels - self.kernel_size = kernel_size - self.dilation_rate = dilation_rate - self.n_layers = n_layers - self.half_channels = channels // 2 - self.mean_only = mean_only - - self.pre = nn.Conv1d(self.half_channels, hidden_channels, 1) - self.enc = WN( - hidden_channels, kernel_size, dilation_rate, n_layers, p_dropout=p_dropout, gin_channels=gin_channels - ) - self.post = nn.Conv1d(hidden_channels, self.half_channels * (2 - mean_only), 1) - self.post.weight.data.zero_() - self.post.bias.data.zero_() - - def forward(self, x, x_mask, g=None, reverse=False): - x0, x1 = torch.split(x, [self.half_channels] * 2, 1) - h = self.pre(x0) * x_mask - h = self.enc(h, x_mask, g=g) - stats = self.post(h) * x_mask - if not self.mean_only: - m, logs = torch.split(stats, [self.half_channels] * 2, 1) - else: - m = stats - logs = torch.zeros_like(m) - - if not reverse: - x1 = m + x1 * torch.exp(logs) * x_mask - x = torch.cat([x0, x1], 1) - logdet = torch.sum(logs, [1, 2]) - return x, logdet - else: - x1 = (x1 - m) * torch.exp(-logs) * x_mask - x = torch.cat([x0, x1], 1) - return x diff --git a/TTS/vc/modules/freevc/speaker_encoder/__init__.py b/TTS/vc/modules/freevc/speaker_encoder/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/vc/modules/freevc/speaker_encoder/audio.py b/TTS/vc/modules/freevc/speaker_encoder/audio.py deleted file mode 100644 index 52f6fd0893a1e67270ccd6af4a50d1370a8fa5c4..0000000000000000000000000000000000000000 --- a/TTS/vc/modules/freevc/speaker_encoder/audio.py +++ /dev/null @@ -1,65 +0,0 @@ -import struct -from pathlib import Path -from typing import Optional, Union - -# import webrtcvad -import librosa -import numpy as np -from scipy.ndimage.morphology import binary_dilation - -from TTS.vc.modules.freevc.speaker_encoder.hparams import * - -int16_max = (2**15) - 1 - - -def preprocess_wav(fpath_or_wav: Union[str, Path, np.ndarray], source_sr: Optional[int] = None): - """ - Applies the preprocessing operations used in training the Speaker Encoder to a waveform - either on disk or in memory. The waveform will be resampled to match the data hyperparameters. - - :param fpath_or_wav: either a filepath to an audio file (many extensions are supported, not - just .wav), either the waveform as a numpy array of floats. - :param source_sr: if passing an audio waveform, the sampling rate of the waveform before - preprocessing. After preprocessing, the waveform's sampling rate will match the data - hyperparameters. If passing a filepath, the sampling rate will be automatically detected and - this argument will be ignored. - """ - # Load the wav from disk if needed - if isinstance(fpath_or_wav, str) or isinstance(fpath_or_wav, Path): - wav, source_sr = librosa.load(fpath_or_wav, sr=None) - else: - wav = fpath_or_wav - - # Resample the wav if needed - if source_sr is not None and source_sr != sampling_rate: - wav = librosa.resample(wav, source_sr, sampling_rate) - - # Apply the preprocessing: normalize volume and shorten long silences - wav = normalize_volume(wav, audio_norm_target_dBFS, increase_only=True) - wav = trim_long_silences(wav) - - return wav - - -def wav_to_mel_spectrogram(wav): - """ - Derives a mel spectrogram ready to be used by the encoder from a preprocessed audio waveform. - Note: this not a log-mel spectrogram. - """ - frames = librosa.feature.melspectrogram( - y=wav, - sr=sampling_rate, - n_fft=int(sampling_rate * mel_window_length / 1000), - hop_length=int(sampling_rate * mel_window_step / 1000), - n_mels=mel_n_channels, - ) - return frames.astype(np.float32).T - - -def normalize_volume(wav, target_dBFS, increase_only=False, decrease_only=False): - if increase_only and decrease_only: - raise ValueError("Both increase only and decrease only are set") - dBFS_change = target_dBFS - 10 * np.log10(np.mean(wav**2)) - if (dBFS_change < 0 and increase_only) or (dBFS_change > 0 and decrease_only): - return wav - return wav * (10 ** (dBFS_change / 20)) diff --git a/TTS/vc/modules/freevc/speaker_encoder/hparams.py b/TTS/vc/modules/freevc/speaker_encoder/hparams.py deleted file mode 100644 index 2c536ae16cf8134d66c83aaf978ed01fc396b680..0000000000000000000000000000000000000000 --- a/TTS/vc/modules/freevc/speaker_encoder/hparams.py +++ /dev/null @@ -1,31 +0,0 @@ -## Mel-filterbank -mel_window_length = 25 # In milliseconds -mel_window_step = 10 # In milliseconds -mel_n_channels = 40 - - -## Audio -sampling_rate = 16000 -# Number of spectrogram frames in a partial utterance -partials_n_frames = 160 # 1600 ms - - -## Voice Activation Detection -# Window size of the VAD. Must be either 10, 20 or 30 milliseconds. -# This sets the granularity of the VAD. Should not need to be changed. -vad_window_length = 30 # In milliseconds -# Number of frames to average together when performing the moving average smoothing. -# The larger this value, the larger the VAD variations must be to not get smoothed out. -vad_moving_average_width = 8 -# Maximum number of consecutive silent frames a segment can have. -vad_max_silence_length = 6 - - -## Audio volume normalization -audio_norm_target_dBFS = -30 - - -## Model parameters -model_hidden_size = 256 -model_embedding_size = 256 -model_num_layers = 3 diff --git a/TTS/vc/modules/freevc/speaker_encoder/speaker_encoder.py b/TTS/vc/modules/freevc/speaker_encoder/speaker_encoder.py deleted file mode 100644 index 2e21a14fd833ecf4f1b1d5b8573ac100dffacbfa..0000000000000000000000000000000000000000 --- a/TTS/vc/modules/freevc/speaker_encoder/speaker_encoder.py +++ /dev/null @@ -1,175 +0,0 @@ -from pathlib import Path -from time import perf_counter as timer -from typing import List, Union - -import numpy as np -import torch -from torch import nn - -from TTS.utils.io import load_fsspec -from TTS.vc.modules.freevc.speaker_encoder import audio -from TTS.vc.modules.freevc.speaker_encoder.hparams import * - - -class SpeakerEncoder(nn.Module): - def __init__(self, weights_fpath, device: Union[str, torch.device] = None, verbose=True): - """ - :param device: either a torch device or the name of a torch device (e.g. "cpu", "cuda"). - If None, defaults to cuda if it is available on your machine, otherwise the model will - run on cpu. Outputs are always returned on the cpu, as numpy arrays. - """ - super().__init__() - - # Define the network - self.lstm = nn.LSTM(mel_n_channels, model_hidden_size, model_num_layers, batch_first=True) - self.linear = nn.Linear(model_hidden_size, model_embedding_size) - self.relu = nn.ReLU() - - # Get the target device - if device is None: - device = torch.device("cuda" if torch.cuda.is_available() else "cpu") - elif isinstance(device, str): - device = torch.device(device) - self.device = device - - # Load the pretrained model'speaker weights - # weights_fpath = Path(__file__).resolve().parent.joinpath("pretrained.pt") - # if not weights_fpath.exists(): - # raise Exception("Couldn't find the voice encoder pretrained model at %s." % - # weights_fpath) - - start = timer() - checkpoint = load_fsspec(weights_fpath, map_location="cpu") - - self.load_state_dict(checkpoint["model_state"], strict=False) - self.to(device) - - if verbose: - print("Loaded the voice encoder model on %s in %.2f seconds." % (device.type, timer() - start)) - - def forward(self, mels: torch.FloatTensor): - """ - Computes the embeddings of a batch of utterance spectrograms. - :param mels: a batch of mel spectrograms of same duration as a float32 tensor of shape - (batch_size, n_frames, n_channels) - :return: the embeddings as a float 32 tensor of shape (batch_size, embedding_size). - Embeddings are positive and L2-normed, thus they lay in the range [0, 1]. - """ - # Pass the input through the LSTM layers and retrieve the final hidden state of the last - # layer. Apply a cutoff to 0 for negative values and L2 normalize the embeddings. - _, (hidden, _) = self.lstm(mels) - embeds_raw = self.relu(self.linear(hidden[-1])) - return embeds_raw / torch.norm(embeds_raw, dim=1, keepdim=True) - - @staticmethod - def compute_partial_slices(n_samples: int, rate, min_coverage): - """ - Computes where to split an utterance waveform and its corresponding mel spectrogram to - obtain partial utterances of each. Both the waveform and the - mel spectrogram slices are returned, so as to make each partial utterance waveform - correspond to its spectrogram. - - The returned ranges may be indexing further than the length of the waveform. It is - recommended that you pad the waveform with zeros up to wav_slices[-1].stop. - - :param n_samples: the number of samples in the waveform - :param rate: how many partial utterances should occur per second. Partial utterances must - cover the span of the entire utterance, thus the rate should not be lower than the inverse - of the duration of a partial utterance. By default, partial utterances are 1.6s long and - the minimum rate is thus 0.625. - :param min_coverage: when reaching the last partial utterance, it may or may not have - enough frames. If at least of are present, - then the last partial utterance will be considered by zero-padding the audio. Otherwise, - it will be discarded. If there aren't enough frames for one partial utterance, - this parameter is ignored so that the function always returns at least one slice. - :return: the waveform slices and mel spectrogram slices as lists of array slices. Index - respectively the waveform and the mel spectrogram with these slices to obtain the partial - utterances. - """ - assert 0 < min_coverage <= 1 - - # Compute how many frames separate two partial utterances - samples_per_frame = int((sampling_rate * mel_window_step / 1000)) - n_frames = int(np.ceil((n_samples + 1) / samples_per_frame)) - frame_step = int(np.round((sampling_rate / rate) / samples_per_frame)) - assert 0 < frame_step, "The rate is too high" - assert frame_step <= partials_n_frames, "The rate is too low, it should be %f at least" % ( - sampling_rate / (samples_per_frame * partials_n_frames) - ) - - # Compute the slices - wav_slices, mel_slices = [], [] - steps = max(1, n_frames - partials_n_frames + frame_step + 1) - for i in range(0, steps, frame_step): - mel_range = np.array([i, i + partials_n_frames]) - wav_range = mel_range * samples_per_frame - mel_slices.append(slice(*mel_range)) - wav_slices.append(slice(*wav_range)) - - # Evaluate whether extra padding is warranted or not - last_wav_range = wav_slices[-1] - coverage = (n_samples - last_wav_range.start) / (last_wav_range.stop - last_wav_range.start) - if coverage < min_coverage and len(mel_slices) > 1: - mel_slices = mel_slices[:-1] - wav_slices = wav_slices[:-1] - - return wav_slices, mel_slices - - def embed_utterance(self, wav: np.ndarray, return_partials=False, rate=1.3, min_coverage=0.75): - """ - Computes an embedding for a single utterance. The utterance is divided in partial - utterances and an embedding is computed for each. The complete utterance embedding is the - L2-normed average embedding of the partial utterances. - - TODO: independent batched version of this function - - :param wav: a preprocessed utterance waveform as a numpy array of float32 - :param return_partials: if True, the partial embeddings will also be returned along with - the wav slices corresponding to each partial utterance. - :param rate: how many partial utterances should occur per second. Partial utterances must - cover the span of the entire utterance, thus the rate should not be lower than the inverse - of the duration of a partial utterance. By default, partial utterances are 1.6s long and - the minimum rate is thus 0.625. - :param min_coverage: when reaching the last partial utterance, it may or may not have - enough frames. If at least of are present, - then the last partial utterance will be considered by zero-padding the audio. Otherwise, - it will be discarded. If there aren't enough frames for one partial utterance, - this parameter is ignored so that the function always returns at least one slice. - :return: the embedding as a numpy array of float32 of shape (model_embedding_size,). If - is True, the partial utterances as a numpy array of float32 of shape - (n_partials, model_embedding_size) and the wav partials as a list of slices will also be - returned. - """ - # Compute where to split the utterance into partials and pad the waveform with zeros if - # the partial utterances cover a larger range. - wav_slices, mel_slices = self.compute_partial_slices(len(wav), rate, min_coverage) - max_wave_length = wav_slices[-1].stop - if max_wave_length >= len(wav): - wav = np.pad(wav, (0, max_wave_length - len(wav)), "constant") - - # Split the utterance into partials and forward them through the model - mel = audio.wav_to_mel_spectrogram(wav) - mels = np.array([mel[s] for s in mel_slices]) - with torch.no_grad(): - mels = torch.from_numpy(mels).to(self.device) - partial_embeds = self(mels).cpu().numpy() - - # Compute the utterance embedding from the partial embeddings - raw_embed = np.mean(partial_embeds, axis=0) - embed = raw_embed / np.linalg.norm(raw_embed, 2) - - if return_partials: - return embed, partial_embeds, wav_slices - return embed - - def embed_speaker(self, wavs: List[np.ndarray], **kwargs): - """ - Compute the embedding of a collection of wavs (presumably from the same speaker) by - averaging their embedding and L2-normalizing it. - - :param wavs: list of wavs a numpy arrays of float32. - :param kwargs: extra arguments to embed_utterance() - :return: the embedding as a numpy array of float32 of shape (model_embedding_size,). - """ - raw_embed = np.mean([self.embed_utterance(wav, return_partials=False, **kwargs) for wav in wavs], axis=0) - return raw_embed / np.linalg.norm(raw_embed, 2) diff --git a/TTS/vc/modules/freevc/wavlm/__init__.py b/TTS/vc/modules/freevc/wavlm/__init__.py deleted file mode 100644 index 6edada407b2210b5b99f6628e4f765a24c4d3dcb..0000000000000000000000000000000000000000 --- a/TTS/vc/modules/freevc/wavlm/__init__.py +++ /dev/null @@ -1,35 +0,0 @@ -import os -import urllib.request - -import torch - -from TTS.utils.generic_utils import get_user_data_dir -from TTS.vc.modules.freevc.wavlm.wavlm import WavLM, WavLMConfig - -model_uri = "https://github.com/coqui-ai/TTS/releases/download/v0.13.0_models/WavLM-Large.pt" - - -def get_wavlm(device="cpu"): - """Download the model and return the model object.""" - - output_path = get_user_data_dir("tts") - - output_path = os.path.join(output_path, "wavlm") - if not os.path.exists(output_path): - os.makedirs(output_path) - - output_path = os.path.join(output_path, "WavLM-Large.pt") - if not os.path.exists(output_path): - print(f" > Downloading WavLM model to {output_path} ...") - urllib.request.urlretrieve(model_uri, output_path) - - checkpoint = torch.load(output_path, map_location=torch.device(device)) - cfg = WavLMConfig(checkpoint["cfg"]) - wavlm = WavLM(cfg).to(device) - wavlm.load_state_dict(checkpoint["model"]) - wavlm.eval() - return wavlm - - -if __name__ == "__main__": - wavlm = get_wavlm() diff --git a/TTS/vc/modules/freevc/wavlm/config.json b/TTS/vc/modules/freevc/wavlm/config.json deleted file mode 100644 index c6f851b93d5eee0c975af1e6708735bbf9bb8be4..0000000000000000000000000000000000000000 --- a/TTS/vc/modules/freevc/wavlm/config.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "_name_or_path": "./wavlm-large/", - "activation_dropout": 0.0, - "adapter_kernel_size": 3, - "adapter_stride": 2, - "add_adapter": false, - "apply_spec_augment": true, - "architectures": [ - "WavLMModel" - ], - "attention_dropout": 0.1, - "bos_token_id": 1, - "classifier_proj_size": 256, - "codevector_dim": 768, - "contrastive_logits_temperature": 0.1, - "conv_bias": false, - "conv_dim": [ - 512, - 512, - 512, - 512, - 512, - 512, - 512 - ], - "conv_kernel": [ - 10, - 3, - 3, - 3, - 3, - 2, - 2 - ], - "conv_stride": [ - 5, - 2, - 2, - 2, - 2, - 2, - 2 - ], - "ctc_loss_reduction": "sum", - "ctc_zero_infinity": false, - "diversity_loss_weight": 0.1, - "do_stable_layer_norm": true, - "eos_token_id": 2, - "feat_extract_activation": "gelu", - "feat_extract_dropout": 0.0, - "feat_extract_norm": "layer", - "feat_proj_dropout": 0.1, - "feat_quantizer_dropout": 0.0, - "final_dropout": 0.0, - "gradient_checkpointing": false, - "hidden_act": "gelu", - "hidden_dropout": 0.1, - "hidden_size": 1024, - "initializer_range": 0.02, - "intermediate_size": 4096, - "layer_norm_eps": 1e-05, - "layerdrop": 0.1, - "mask_channel_length": 10, - "mask_channel_min_space": 1, - "mask_channel_other": 0.0, - "mask_channel_prob": 0.0, - "mask_channel_selection": "static", - "mask_feature_length": 10, - "mask_feature_min_masks": 0, - "mask_feature_prob": 0.0, - "mask_time_length": 10, - "mask_time_min_masks": 2, - "mask_time_min_space": 1, - "mask_time_other": 0.0, - "mask_time_prob": 0.075, - "mask_time_selection": "static", - "max_bucket_distance": 800, - "model_type": "wavlm", - "num_adapter_layers": 3, - "num_attention_heads": 16, - "num_buckets": 320, - "num_codevector_groups": 2, - "num_codevectors_per_group": 320, - "num_conv_pos_embedding_groups": 16, - "num_conv_pos_embeddings": 128, - "num_ctc_classes": 80, - "num_feat_extract_layers": 7, - "num_hidden_layers": 24, - "num_negatives": 100, - "output_hidden_size": 1024, - "pad_token_id": 0, - "proj_codevector_dim": 768, - "replace_prob": 0.5, - "tokenizer_class": "Wav2Vec2CTCTokenizer", - "torch_dtype": "float32", - "transformers_version": "4.15.0.dev0", - "use_weighted_layer_sum": false, - "vocab_size": 32 - } \ No newline at end of file diff --git a/TTS/vc/modules/freevc/wavlm/modules.py b/TTS/vc/modules/freevc/wavlm/modules.py deleted file mode 100644 index 37c1a6e8774cdfd439baa38a8a7ad55fd79ebf7c..0000000000000000000000000000000000000000 --- a/TTS/vc/modules/freevc/wavlm/modules.py +++ /dev/null @@ -1,768 +0,0 @@ -# -------------------------------------------------------- -# WavLM: Large-Scale Self-Supervised Pre-training for Full Stack Speech Processing (https://arxiv.org/abs/2110.13900.pdf) -# Github source: https://github.com/microsoft/unilm/tree/master/wavlm -# Copyright (c) 2021 Microsoft -# Licensed under The MIT License [see LICENSE for details] -# Based on fairseq code bases -# https://github.com/pytorch/fairseq -# -------------------------------------------------------- - -import math -import warnings -from typing import Dict, Optional, Tuple - -import torch -import torch.nn.functional as F -from torch import Tensor, nn -from torch.nn import Parameter - - -class TransposeLast(nn.Module): - def __init__(self, deconstruct_idx=None): - super().__init__() - self.deconstruct_idx = deconstruct_idx - - def forward(self, x): - if self.deconstruct_idx is not None: - x = x[self.deconstruct_idx] - return x.transpose(-2, -1) - - -class Fp32LayerNorm(nn.LayerNorm): - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - - def forward(self, input): - output = F.layer_norm( - input.float(), - self.normalized_shape, - self.weight.float() if self.weight is not None else None, - self.bias.float() if self.bias is not None else None, - self.eps, - ) - return output.type_as(input) - - -class Fp32GroupNorm(nn.GroupNorm): - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - - def forward(self, input): - output = F.group_norm( - input.float(), - self.num_groups, - self.weight.float() if self.weight is not None else None, - self.bias.float() if self.bias is not None else None, - self.eps, - ) - return output.type_as(input) - - -class GradMultiply(torch.autograd.Function): - @staticmethod - def forward(ctx, x, scale): - ctx.scale = scale - res = x.new(x) - return res - - @staticmethod - def backward(ctx, grad): - return grad * ctx.scale, None - - -class SamePad(nn.Module): - def __init__(self, kernel_size, causal=False): - super().__init__() - if causal: - self.remove = kernel_size - 1 - else: - self.remove = 1 if kernel_size % 2 == 0 else 0 - - def forward(self, x): - if self.remove > 0: - x = x[:, :, : -self.remove] - return x - - -class Swish(nn.Module): - """Swish function""" - - def __init__(self): - """Construct an MultiHeadedAttention object.""" - super(Swish, self).__init__() - self.act = torch.nn.Sigmoid() - - def forward(self, x): - return x * self.act(x) - - -class GLU_Linear(nn.Module): - def __init__(self, input_dim, output_dim, glu_type="sigmoid", bias_in_glu=True): - super(GLU_Linear, self).__init__() - - self.glu_type = glu_type - self.output_dim = output_dim - - if glu_type == "sigmoid": - self.glu_act = torch.nn.Sigmoid() - elif glu_type == "swish": - self.glu_act = Swish() - elif glu_type == "relu": - self.glu_act = torch.nn.ReLU() - elif glu_type == "gelu": - self.glu_act = torch.nn.GELU() - - if bias_in_glu: - self.linear = nn.Linear(input_dim, output_dim * 2, True) - else: - self.linear = nn.Linear(input_dim, output_dim * 2, False) - - def forward(self, x): - # to be consistent with GLU_Linear, we assume the input always has the #channel (#dim) in the last dimension of the tensor, so need to switch the dimension first for 1D-Conv case - x = self.linear(x) - - if self.glu_type == "bilinear": - x = x[:, :, 0 : self.output_dim] * x[:, :, self.output_dim : self.output_dim * 2] - else: - x = x[:, :, 0 : self.output_dim] * self.glu_act(x[:, :, self.output_dim : self.output_dim * 2]) - - return x - - -def gelu_accurate(x): - if not hasattr(gelu_accurate, "_a"): - gelu_accurate._a = math.sqrt(2 / math.pi) - return 0.5 * x * (1 + torch.tanh(gelu_accurate._a * (x + 0.044715 * torch.pow(x, 3)))) - - -def gelu(x: torch.Tensor) -> torch.Tensor: - return torch.nn.functional.gelu(x.float()).type_as(x) - - -def get_activation_fn(activation: str): - """Returns the activation function corresponding to `activation`""" - - if activation == "relu": - return F.relu - elif activation == "gelu": - return gelu - elif activation == "gelu_fast": - warnings.warn("--activation-fn=gelu_fast has been renamed to gelu_accurate") - return gelu_accurate - elif activation == "gelu_accurate": - return gelu_accurate - elif activation == "tanh": - return torch.tanh - elif activation == "linear": - return lambda x: x - elif activation == "glu": - return lambda x: x - else: - raise RuntimeError("--activation-fn {} not supported".format(activation)) - - -def init_bert_params(module): - """ - Initialize the weights specific to the BERT Model. - This overrides the default initializations depending on the specified arguments. - 1. If normal_init_linear_weights is set then weights of linear - layer will be initialized using the normal distribution and - bais will be set to the specified value. - 2. If normal_init_embed_weights is set then weights of embedding - layer will be initialized using the normal distribution. - 3. If normal_init_proj_weights is set then weights of - in_project_weight for MultiHeadAttention initialized using - the normal distribution (to be validated). - """ - - def normal_(data): - # with FSDP, module params will be on CUDA, so we cast them back to CPU - # so that the RNG is consistent with and without FSDP - data.copy_(data.cpu().normal_(mean=0.0, std=0.02).to(data.device)) - - if isinstance(module, nn.Linear): - normal_(module.weight.data) - if module.bias is not None: - module.bias.data.zero_() - if isinstance(module, nn.Embedding): - normal_(module.weight.data) - if module.padding_idx is not None: - module.weight.data[module.padding_idx].zero_() - if isinstance(module, MultiheadAttention): - normal_(module.q_proj.weight.data) - normal_(module.k_proj.weight.data) - normal_(module.v_proj.weight.data) - - -def quant_noise(module, p, block_size): - """ - Wraps modules and applies quantization noise to the weights for - subsequent quantization with Iterative Product Quantization as - described in "Training with Quantization Noise for Extreme Model Compression" - - Args: - - module: nn.Module - - p: amount of Quantization Noise - - block_size: size of the blocks for subsequent quantization with iPQ - - Remarks: - - Module weights must have the right sizes wrt the block size - - Only Linear, Embedding and Conv2d modules are supported for the moment - - For more detail on how to quantize by blocks with convolutional weights, - see "And the Bit Goes Down: Revisiting the Quantization of Neural Networks" - - We implement the simplest form of noise here as stated in the paper - which consists in randomly dropping blocks - """ - - # if no quantization noise, don't register hook - if p <= 0: - return module - - # supported modules - assert isinstance(module, (nn.Linear, nn.Embedding, nn.Conv2d)) - - # test whether module.weight has the right sizes wrt block_size - is_conv = module.weight.ndim == 4 - - # 2D matrix - if not is_conv: - assert module.weight.size(1) % block_size == 0, "Input features must be a multiple of block sizes" - - # 4D matrix - else: - # 1x1 convolutions - if module.kernel_size == (1, 1): - assert module.in_channels % block_size == 0, "Input channels must be a multiple of block sizes" - # regular convolutions - else: - k = module.kernel_size[0] * module.kernel_size[1] - assert k % block_size == 0, "Kernel size must be a multiple of block size" - - def _forward_pre_hook(mod, input): - # no noise for evaluation - if mod.training: - if not is_conv: - # gather weight and sizes - weight = mod.weight - in_features = weight.size(1) - out_features = weight.size(0) - - # split weight matrix into blocks and randomly drop selected blocks - mask = torch.zeros(in_features // block_size * out_features, device=weight.device) - mask.bernoulli_(p) - mask = mask.repeat_interleave(block_size, -1).view(-1, in_features) - - else: - # gather weight and sizes - weight = mod.weight - in_channels = mod.in_channels - out_channels = mod.out_channels - - # split weight matrix into blocks and randomly drop selected blocks - if mod.kernel_size == (1, 1): - mask = torch.zeros( - int(in_channels // block_size * out_channels), - device=weight.device, - ) - mask.bernoulli_(p) - mask = mask.repeat_interleave(block_size, -1).view(-1, in_channels) - else: - mask = torch.zeros(weight.size(0), weight.size(1), device=weight.device) - mask.bernoulli_(p) - mask = mask.unsqueeze(2).unsqueeze(3).repeat(1, 1, mod.kernel_size[0], mod.kernel_size[1]) - - # scale weights and apply mask - mask = mask.to(torch.bool) # x.bool() is not currently supported in TorchScript - s = 1 / (1 - p) - mod.weight.data = s * weight.masked_fill(mask, 0) - - module.register_forward_pre_hook(_forward_pre_hook) - return module - - -class MultiheadAttention(nn.Module): - """Multi-headed attention. - - See "Attention Is All You Need" for more details. - """ - - def __init__( - self, - embed_dim, - num_heads, - kdim=None, - vdim=None, - dropout=0.0, - bias=True, - add_bias_kv=False, - add_zero_attn=False, - self_attention=False, - encoder_decoder_attention=False, - q_noise=0.0, - qn_block_size=8, - has_relative_attention_bias=False, - num_buckets=32, - max_distance=128, - gru_rel_pos=False, - rescale_init=False, - ): - super().__init__() - self.embed_dim = embed_dim - self.kdim = kdim if kdim is not None else embed_dim - self.vdim = vdim if vdim is not None else embed_dim - self.qkv_same_dim = self.kdim == embed_dim and self.vdim == embed_dim - - self.num_heads = num_heads - self.dropout_module = nn.Dropout(dropout) - - self.has_relative_attention_bias = has_relative_attention_bias - self.num_buckets = num_buckets - self.max_distance = max_distance - if self.has_relative_attention_bias: - self.relative_attention_bias = nn.Embedding(num_buckets, num_heads) - - self.head_dim = embed_dim // num_heads - self.q_head_dim = self.head_dim - self.k_head_dim = self.head_dim - assert self.head_dim * num_heads == self.embed_dim, "embed_dim must be divisible by num_heads" - self.scaling = self.head_dim**-0.5 - - self.self_attention = self_attention - self.encoder_decoder_attention = encoder_decoder_attention - - assert not self.self_attention or self.qkv_same_dim, ( - "Self-attention requires query, key and " "value to be of the same size" - ) - - k_bias = True - if rescale_init: - k_bias = False - - k_embed_dim = embed_dim - q_embed_dim = embed_dim - - self.k_proj = quant_noise(nn.Linear(self.kdim, k_embed_dim, bias=k_bias), q_noise, qn_block_size) - self.v_proj = quant_noise(nn.Linear(self.vdim, embed_dim, bias=bias), q_noise, qn_block_size) - self.q_proj = quant_noise(nn.Linear(embed_dim, q_embed_dim, bias=bias), q_noise, qn_block_size) - - self.out_proj = quant_noise(nn.Linear(embed_dim, embed_dim, bias=bias), q_noise, qn_block_size) - - if add_bias_kv: - self.bias_k = Parameter(torch.Tensor(1, 1, embed_dim)) - self.bias_v = Parameter(torch.Tensor(1, 1, embed_dim)) - else: - self.bias_k = self.bias_v = None - - self.add_zero_attn = add_zero_attn - - self.gru_rel_pos = gru_rel_pos - if self.gru_rel_pos: - self.grep_linear = nn.Linear(self.q_head_dim, 8) - self.grep_a = nn.Parameter(torch.ones(1, num_heads, 1, 1)) - - self.reset_parameters() - - def reset_parameters(self): - if self.qkv_same_dim: - # Empirically observed the convergence to be much better with - # the scaled initialization - nn.init.xavier_uniform_(self.k_proj.weight, gain=1 / math.sqrt(2)) - nn.init.xavier_uniform_(self.v_proj.weight, gain=1 / math.sqrt(2)) - nn.init.xavier_uniform_(self.q_proj.weight, gain=1 / math.sqrt(2)) - else: - nn.init.xavier_uniform_(self.k_proj.weight) - nn.init.xavier_uniform_(self.v_proj.weight) - nn.init.xavier_uniform_(self.q_proj.weight) - - nn.init.xavier_uniform_(self.out_proj.weight) - if self.out_proj.bias is not None: - nn.init.constant_(self.out_proj.bias, 0.0) - if self.bias_k is not None: - nn.init.xavier_normal_(self.bias_k) - if self.bias_v is not None: - nn.init.xavier_normal_(self.bias_v) - if self.has_relative_attention_bias: - nn.init.xavier_normal_(self.relative_attention_bias.weight) - - def _relative_positions_bucket(self, relative_positions, bidirectional=True): - num_buckets = self.num_buckets - max_distance = self.max_distance - relative_buckets = 0 - - if bidirectional: - num_buckets = num_buckets // 2 - relative_buckets += (relative_positions > 0).to(torch.long) * num_buckets - relative_positions = torch.abs(relative_positions) - else: - relative_positions = -torch.min(relative_positions, torch.zeros_like(relative_positions)) - - max_exact = num_buckets // 2 - is_small = relative_positions < max_exact - - relative_postion_if_large = max_exact + ( - torch.log(relative_positions.float() / max_exact) - / math.log(max_distance / max_exact) - * (num_buckets - max_exact) - ).to(torch.long) - relative_postion_if_large = torch.min( - relative_postion_if_large, torch.full_like(relative_postion_if_large, num_buckets - 1) - ) - - relative_buckets += torch.where(is_small, relative_positions, relative_postion_if_large) - return relative_buckets - - def compute_bias(self, query_length, key_length): - context_position = torch.arange(query_length, dtype=torch.long)[:, None] - memory_position = torch.arange(key_length, dtype=torch.long)[None, :] - relative_position = memory_position - context_position - relative_position_bucket = self._relative_positions_bucket(relative_position, bidirectional=True) - relative_position_bucket = relative_position_bucket.to(self.relative_attention_bias.weight.device) - values = self.relative_attention_bias(relative_position_bucket) - values = values.permute([2, 0, 1]) - return values - - def forward( - self, - query, - key: Optional[Tensor], - value: Optional[Tensor], - key_padding_mask: Optional[Tensor] = None, - incremental_state: Optional[Dict[str, Dict[str, Optional[Tensor]]]] = None, - need_weights: bool = True, - static_kv: bool = False, - attn_mask: Optional[Tensor] = None, - before_softmax: bool = False, - need_head_weights: bool = False, - position_bias: Optional[Tensor] = None, - ) -> Tuple[Tensor, Optional[Tensor], Optional[Tensor]]: - """Input shape: Time x Batch x Channel - - Args: - key_padding_mask (ByteTensor, optional): mask to exclude - keys that are pads, of shape `(batch, src_len)`, where - padding elements are indicated by 1s. - need_weights (bool, optional): return the attention weights, - averaged over heads (default: False). - attn_mask (ByteTensor, optional): typically used to - implement causal attention, where the mask prevents the - attention from looking forward in time (default: None). - before_softmax (bool, optional): return the raw attention - weights and values before the attention softmax. - need_head_weights (bool, optional): return the attention - weights for each head. Implies *need_weights*. Default: - return the average attention weights over all heads. - """ - if need_head_weights: - need_weights = True - - is_tpu = query.device.type == "xla" - - tgt_len, bsz, embed_dim = query.size() - src_len = tgt_len - assert embed_dim == self.embed_dim - assert list(query.size()) == [tgt_len, bsz, embed_dim] - if key is not None: - src_len, key_bsz, _ = key.size() - if not torch.jit.is_scripting(): - assert key_bsz == bsz - assert value is not None - assert src_len, bsz == value.shape[:2] - - if self.has_relative_attention_bias and position_bias is None: - position_bias = self.compute_bias(tgt_len, src_len) - position_bias = position_bias.unsqueeze(0).repeat(bsz, 1, 1, 1).view(bsz * self.num_heads, tgt_len, src_len) - - if ( - not is_tpu # don't use PyTorch version on TPUs - and incremental_state is None - and not static_kv - # A workaround for quantization to work. Otherwise JIT compilation - # treats bias in linear module as method. - and not torch.jit.is_scripting() - and self.q_head_dim == self.head_dim - ): - assert key is not None and value is not None - assert attn_mask is None - - attn_mask_rel_pos = None - if position_bias is not None: - attn_mask_rel_pos = position_bias - if self.gru_rel_pos: - query_layer = query.transpose(0, 1) - new_x_shape = query_layer.size()[:-1] + (self.num_heads, -1) - query_layer = query_layer.view(*new_x_shape) - query_layer = query_layer.permute(0, 2, 1, 3) - _B, _H, _L, __ = query_layer.size() - - gate_a, gate_b = torch.sigmoid( - self.grep_linear(query_layer).view(_B, _H, _L, 2, 4).sum(-1, keepdim=False) - ).chunk(2, dim=-1) - gate_a_1 = gate_a * (gate_b * self.grep_a - 1.0) + 2.0 - attn_mask_rel_pos = gate_a_1.view(bsz * self.num_heads, -1, 1) * position_bias - - attn_mask_rel_pos = attn_mask_rel_pos.view((-1, tgt_len, tgt_len)) - k_proj_bias = self.k_proj.bias - if k_proj_bias is None: - k_proj_bias = torch.zeros_like(self.q_proj.bias) - - x, attn = F.multi_head_attention_forward( - query, - key, - value, - self.embed_dim, - self.num_heads, - torch.empty([0]), - torch.cat((self.q_proj.bias, self.k_proj.bias, self.v_proj.bias)), - self.bias_k, - self.bias_v, - self.add_zero_attn, - self.dropout_module.p, - self.out_proj.weight, - self.out_proj.bias, - self.training, - # self.training or self.dropout_module.apply_during_inference, - key_padding_mask, - need_weights, - attn_mask_rel_pos, - use_separate_proj_weight=True, - q_proj_weight=self.q_proj.weight, - k_proj_weight=self.k_proj.weight, - v_proj_weight=self.v_proj.weight, - ) - return x, attn, position_bias - - if incremental_state is not None: - saved_state = self._get_input_buffer(incremental_state) - if saved_state is not None and "prev_key" in saved_state: - # previous time steps are cached - no need to recompute - # key and value if they are static - if static_kv: - assert self.encoder_decoder_attention and not self.self_attention - key = value = None - else: - saved_state = None - - if self.self_attention: - q = self.q_proj(query) - k = self.k_proj(query) - v = self.v_proj(query) - elif self.encoder_decoder_attention: - # encoder-decoder attention - q = self.q_proj(query) - if key is None: - assert value is None - k = v = None - else: - k = self.k_proj(key) - v = self.v_proj(key) - - else: - assert key is not None and value is not None - q = self.q_proj(query) - k = self.k_proj(key) - v = self.v_proj(value) - q *= self.scaling - - if self.bias_k is not None: - assert self.bias_v is not None - k = torch.cat([k, self.bias_k.repeat(1, bsz, 1)]) - v = torch.cat([v, self.bias_v.repeat(1, bsz, 1)]) - if attn_mask is not None: - attn_mask = torch.cat([attn_mask, attn_mask.new_zeros(attn_mask.size(0), 1)], dim=1) - if key_padding_mask is not None: - key_padding_mask = torch.cat( - [ - key_padding_mask, - key_padding_mask.new_zeros(key_padding_mask.size(0), 1), - ], - dim=1, - ) - - q = q.contiguous().view(tgt_len, bsz * self.num_heads, self.q_head_dim).transpose(0, 1) - if k is not None: - k = k.contiguous().view(-1, bsz * self.num_heads, self.k_head_dim).transpose(0, 1) - if v is not None: - v = v.contiguous().view(-1, bsz * self.num_heads, self.head_dim).transpose(0, 1) - - if saved_state is not None: - # saved states are stored with shape (bsz, num_heads, seq_len, head_dim) - if "prev_key" in saved_state: - _prev_key = saved_state["prev_key"] - assert _prev_key is not None - prev_key = _prev_key.view(bsz * self.num_heads, -1, self.head_dim) - if static_kv: - k = prev_key - else: - assert k is not None - k = torch.cat([prev_key, k], dim=1) - src_len = k.size(1) - if "prev_value" in saved_state: - _prev_value = saved_state["prev_value"] - assert _prev_value is not None - prev_value = _prev_value.view(bsz * self.num_heads, -1, self.head_dim) - if static_kv: - v = prev_value - else: - assert v is not None - v = torch.cat([prev_value, v], dim=1) - prev_key_padding_mask: Optional[Tensor] = None - if "prev_key_padding_mask" in saved_state: - prev_key_padding_mask = saved_state["prev_key_padding_mask"] - assert k is not None and v is not None - key_padding_mask = MultiheadAttention._append_prev_key_padding_mask( - key_padding_mask=key_padding_mask, - prev_key_padding_mask=prev_key_padding_mask, - batch_size=bsz, - src_len=k.size(1), - static_kv=static_kv, - ) - - saved_state["prev_key"] = k.view(bsz, self.num_heads, -1, self.head_dim) - saved_state["prev_value"] = v.view(bsz, self.num_heads, -1, self.head_dim) - saved_state["prev_key_padding_mask"] = key_padding_mask - # In this branch incremental_state is never None - assert incremental_state is not None - incremental_state = self._set_input_buffer(incremental_state, saved_state) - assert k is not None - assert k.size(1) == src_len - - # This is part of a workaround to get around fork/join parallelism - # not supporting Optional types. - if key_padding_mask is not None and key_padding_mask.dim() == 0: - key_padding_mask = None - - if key_padding_mask is not None: - assert key_padding_mask.size(0) == bsz - assert key_padding_mask.size(1) == src_len - - if self.add_zero_attn: - assert v is not None - src_len += 1 - k = torch.cat([k, k.new_zeros((k.size(0), 1) + k.size()[2:])], dim=1) - v = torch.cat([v, v.new_zeros((v.size(0), 1) + v.size()[2:])], dim=1) - if attn_mask is not None: - attn_mask = torch.cat([attn_mask, attn_mask.new_zeros(attn_mask.size(0), 1)], dim=1) - if key_padding_mask is not None: - key_padding_mask = torch.cat( - [ - key_padding_mask, - torch.zeros(key_padding_mask.size(0), 1).type_as(key_padding_mask), - ], - dim=1, - ) - - attn_weights = torch.bmm(q, k.transpose(1, 2)) - attn_weights = self.apply_sparse_mask(attn_weights, tgt_len, src_len, bsz) - - assert list(attn_weights.size()) == [bsz * self.num_heads, tgt_len, src_len] - - if attn_mask is not None: - attn_mask = attn_mask.unsqueeze(0) - attn_weights += attn_mask - - if key_padding_mask is not None: - # don't attend to padding symbols - attn_weights = attn_weights.view(bsz, self.num_heads, tgt_len, src_len) - if not is_tpu: - attn_weights = attn_weights.masked_fill( - key_padding_mask.unsqueeze(1).unsqueeze(2).to(torch.bool), - float("-inf"), - ) - else: - attn_weights = attn_weights.transpose(0, 2) - attn_weights = attn_weights.masked_fill(key_padding_mask, float("-inf")) - attn_weights = attn_weights.transpose(0, 2) - attn_weights = attn_weights.view(bsz * self.num_heads, tgt_len, src_len) - - if before_softmax: - return attn_weights, v, position_bias - - if position_bias is not None: - if self.gru_rel_pos == 1: - query_layer = q.view(bsz, self.num_heads, tgt_len, self.q_head_dim) - _B, _H, _L, __ = query_layer.size() - gate_a, gate_b = torch.sigmoid( - self.grep_linear(query_layer).view(_B, _H, _L, 2, 4).sum(-1, keepdim=False) - ).chunk(2, dim=-1) - gate_a_1 = gate_a * (gate_b * self.grep_a - 1.0) + 2.0 - position_bias = gate_a_1.view(bsz * self.num_heads, -1, 1) * position_bias - - position_bias = position_bias.view(attn_weights.size()) - - attn_weights = attn_weights + position_bias - - attn_weights_float = F.softmax(attn_weights, dim=-1) - attn_weights = attn_weights_float.type_as(attn_weights) - attn_probs = self.dropout_module(attn_weights) - - assert v is not None - attn = torch.bmm(attn_probs, v) - assert list(attn.size()) == [bsz * self.num_heads, tgt_len, self.head_dim] - attn = attn.transpose(0, 1).contiguous().view(tgt_len, bsz, embed_dim) - attn = self.out_proj(attn) - attn_weights: Optional[Tensor] = None - if need_weights: - attn_weights = attn_weights_float.view(bsz, self.num_heads, tgt_len, src_len).transpose(1, 0) - if not need_head_weights: - # average attention weights over heads - attn_weights = attn_weights.mean(dim=0) - - return attn, attn_weights, position_bias - - @staticmethod - def _append_prev_key_padding_mask( - key_padding_mask: Optional[Tensor], - prev_key_padding_mask: Optional[Tensor], - batch_size: int, - src_len: int, - static_kv: bool, - ) -> Optional[Tensor]: - # saved key padding masks have shape (bsz, seq_len) - if prev_key_padding_mask is not None and static_kv: - new_key_padding_mask = prev_key_padding_mask - elif prev_key_padding_mask is not None and key_padding_mask is not None: - new_key_padding_mask = torch.cat([prev_key_padding_mask.float(), key_padding_mask.float()], dim=1) - # During incremental decoding, as the padding token enters and - # leaves the frame, there will be a time when prev or current - # is None - elif prev_key_padding_mask is not None: - if src_len > prev_key_padding_mask.size(1): - filler = torch.zeros( - (batch_size, src_len - prev_key_padding_mask.size(1)), - device=prev_key_padding_mask.device, - ) - new_key_padding_mask = torch.cat([prev_key_padding_mask.float(), filler.float()], dim=1) - else: - new_key_padding_mask = prev_key_padding_mask.float() - elif key_padding_mask is not None: - if src_len > key_padding_mask.size(1): - filler = torch.zeros( - (batch_size, src_len - key_padding_mask.size(1)), - device=key_padding_mask.device, - ) - new_key_padding_mask = torch.cat([filler.float(), key_padding_mask.float()], dim=1) - else: - new_key_padding_mask = key_padding_mask.float() - else: - new_key_padding_mask = prev_key_padding_mask - return new_key_padding_mask - - def _get_input_buffer( - self, incremental_state: Optional[Dict[str, Dict[str, Optional[Tensor]]]] - ) -> Dict[str, Optional[Tensor]]: - result = self.get_incremental_state(incremental_state, "attn_state") - if result is not None: - return result - else: - empty_result: Dict[str, Optional[Tensor]] = {} - return empty_result - - def _set_input_buffer( - self, - incremental_state: Dict[str, Dict[str, Optional[Tensor]]], - buffer: Dict[str, Optional[Tensor]], - ): - return self.set_incremental_state(incremental_state, "attn_state", buffer) - - def apply_sparse_mask(self, attn_weights, tgt_len: int, src_len: int, bsz: int): - return attn_weights diff --git a/TTS/vc/modules/freevc/wavlm/wavlm.py b/TTS/vc/modules/freevc/wavlm/wavlm.py deleted file mode 100644 index 7efb11bfc68f4e2cb9bd8770b897a13a7094c266..0000000000000000000000000000000000000000 --- a/TTS/vc/modules/freevc/wavlm/wavlm.py +++ /dev/null @@ -1,719 +0,0 @@ -# -------------------------------------------------------- -# WavLM: Large-Scale Self-Supervised Pre-training for Full Stack Speech Processing (https://arxiv.org/abs/2110.13900.pdf) -# Github source: https://github.com/microsoft/unilm/tree/master/wavlm -# Copyright (c) 2021 Microsoft -# Licensed under The MIT License [see LICENSE for details] -# Based on fairseq code bases -# https://github.com/pytorch/fairseq -# -------------------------------------------------------- - -import logging -import math -from typing import List, Optional, Tuple - -import numpy as np -import torch -import torch.nn as nn -import torch.nn.functional as F -from torch.nn import LayerNorm - -from TTS.vc.modules.freevc.wavlm.modules import ( - Fp32GroupNorm, - Fp32LayerNorm, - GLU_Linear, - GradMultiply, - MultiheadAttention, - SamePad, - TransposeLast, - get_activation_fn, - init_bert_params, -) - -logger = logging.getLogger(__name__) - - -def compute_mask_indices( - shape: Tuple[int, int], - padding_mask: Optional[torch.Tensor], - mask_prob: float, - mask_length: int, - mask_type: str = "static", - mask_other: float = 0.0, - min_masks: int = 0, - no_overlap: bool = False, - min_space: int = 0, -) -> np.ndarray: - """ - Computes random mask spans for a given shape - - Args: - shape: the the shape for which to compute masks. - should be of size 2 where first element is batch size and 2nd is timesteps - padding_mask: optional padding mask of the same size as shape, which will prevent masking padded elements - mask_prob: probability for each token to be chosen as start of the span to be masked. this will be multiplied by - number of timesteps divided by length of mask span to mask approximately this percentage of all elements. - however due to overlaps, the actual number will be smaller (unless no_overlap is True) - mask_type: how to compute mask lengths - static = fixed size - uniform = sample from uniform distribution [mask_other, mask_length*2] - normal = sample from normal distribution with mean mask_length and stdev mask_other. mask is min 1 element - poisson = sample from possion distribution with lambda = mask length - min_masks: minimum number of masked spans - no_overlap: if false, will switch to an alternative recursive algorithm that prevents spans from overlapping - min_space: only used if no_overlap is True, this is how many elements to keep unmasked between spans - """ - - bsz, all_sz = shape - mask = np.full((bsz, all_sz), False) - - all_num_mask = int( - # add a random number for probabilistic rounding - mask_prob * all_sz / float(mask_length) - + np.random.rand() - ) - - all_num_mask = max(min_masks, all_num_mask) - - mask_idcs = [] - for i in range(bsz): - if padding_mask is not None: - sz = all_sz - padding_mask[i].long().sum().item() - num_mask = int( - # add a random number for probabilistic rounding - mask_prob * sz / float(mask_length) - + np.random.rand() - ) - num_mask = max(min_masks, num_mask) - else: - sz = all_sz - num_mask = all_num_mask - - if mask_type == "static": - lengths = np.full(num_mask, mask_length) - elif mask_type == "uniform": - lengths = np.random.randint(mask_other, mask_length * 2 + 1, size=num_mask) - elif mask_type == "normal": - lengths = np.random.normal(mask_length, mask_other, size=num_mask) - lengths = [max(1, int(round(x))) for x in lengths] - elif mask_type == "poisson": - lengths = np.random.poisson(mask_length, size=num_mask) - lengths = [int(round(x)) for x in lengths] - else: - raise Exception("unknown mask selection " + mask_type) - - if sum(lengths) == 0: - lengths[0] = min(mask_length, sz - 1) - - if no_overlap: - mask_idc = [] - - def arrange(s, e, length, keep_length): - span_start = np.random.randint(s, e - length) - mask_idc.extend(span_start + i for i in range(length)) - - new_parts = [] - if span_start - s - min_space >= keep_length: - new_parts.append((s, span_start - min_space + 1)) - if e - span_start - keep_length - min_space > keep_length: - new_parts.append((span_start + length + min_space, e)) - return new_parts - - parts = [(0, sz)] - min_length = min(lengths) - for length in sorted(lengths, reverse=True): - lens = np.fromiter( - (e - s if e - s >= length + min_space else 0 for s, e in parts), - np.int, - ) - l_sum = np.sum(lens) - if l_sum == 0: - break - probs = lens / np.sum(lens) - c = np.random.choice(len(parts), p=probs) - s, e = parts.pop(c) - parts.extend(arrange(s, e, length, min_length)) - mask_idc = np.asarray(mask_idc) - else: - min_len = min(lengths) - if sz - min_len <= num_mask: - min_len = sz - num_mask - 1 - - mask_idc = np.random.choice(sz - min_len, num_mask, replace=False) - - mask_idc = np.asarray([mask_idc[j] + offset for j in range(len(mask_idc)) for offset in range(lengths[j])]) - - mask_idcs.append(np.unique(mask_idc[mask_idc < sz])) - - min_len = min([len(m) for m in mask_idcs]) - for i, mask_idc in enumerate(mask_idcs): - if len(mask_idc) > min_len: - mask_idc = np.random.choice(mask_idc, min_len, replace=False) - mask[i, mask_idc] = True - - return mask - - -class WavLMConfig: - def __init__(self, cfg=None): - self.extractor_mode: str = "default" # mode for feature extractor. default has a single group norm with d groups in the first conv block, whereas layer_norm has layer norms in every block (meant to use with normalize=True) - self.encoder_layers: int = 12 # num encoder layers in the transformer - - self.encoder_embed_dim: int = 768 # encoder embedding dimension - self.encoder_ffn_embed_dim: int = 3072 # encoder embedding dimension for FFN - self.encoder_attention_heads: int = 12 # num encoder attention heads - self.activation_fn: str = "gelu" # activation function to use - - self.layer_norm_first: bool = False # apply layernorm first in the transformer - self.conv_feature_layers: str = "[(512,10,5)] + [(512,3,2)] * 4 + [(512,2,2)] * 2" # string describing convolutional feature extraction layers in form of a python list that contains [(dim, kernel_size, stride), ...] - self.conv_bias: bool = False # include bias in conv encoder - self.feature_grad_mult: float = 1.0 # multiply feature extractor var grads by this - - self.normalize: bool = False # normalize input to have 0 mean and unit variance during training - - # dropouts - self.dropout: float = 0.1 # dropout probability for the transformer - self.attention_dropout: float = 0.1 # dropout probability for attention weights - self.activation_dropout: float = 0.0 # dropout probability after activation in FFN - self.encoder_layerdrop: float = 0.0 # probability of dropping a tarnsformer layer - self.dropout_input: float = 0.0 # dropout to apply to the input (after feat extr) - self.dropout_features: float = 0.0 # dropout to apply to the features (after feat extr) - - # masking - self.mask_length: int = 10 # mask length - self.mask_prob: float = 0.65 # probability of replacing a token with mask - self.mask_selection: str = "static" # how to choose mask length - self.mask_other: float = ( - 0 # secondary mask argument (used for more complex distributions), see help in compute_mask_indicesh - ) - self.no_mask_overlap: bool = False # whether to allow masks to overlap - self.mask_min_space: int = 1 # min space between spans (if no overlap is enabled) - - # channel masking - self.mask_channel_length: int = 10 # length of the mask for features (channels) - self.mask_channel_prob: float = 0.0 # probability of replacing a feature with 0 - self.mask_channel_selection: str = "static" # how to choose mask length for channel masking - self.mask_channel_other: float = ( - 0 # secondary mask argument (used for more complex distributions), see help in compute_mask_indices - ) - self.no_mask_channel_overlap: bool = False # whether to allow channel masks to overlap - self.mask_channel_min_space: int = 1 # min space between spans (if no overlap is enabled) - - # positional embeddings - self.conv_pos: int = 128 # number of filters for convolutional positional embeddings - self.conv_pos_groups: int = 16 # number of groups for convolutional positional embedding - - # relative position embedding - self.relative_position_embedding: bool = False # apply relative position embedding - self.num_buckets: int = 320 # number of buckets for relative position embedding - self.max_distance: int = 1280 # maximum distance for relative position embedding - self.gru_rel_pos: bool = False # apply gated relative position embedding - - if cfg is not None: - self.update(cfg) - - def update(self, cfg: dict): - self.__dict__.update(cfg) - - -class WavLM(nn.Module): - def __init__( - self, - cfg: WavLMConfig, - ) -> None: - super().__init__() - logger.info(f"WavLM Config: {cfg.__dict__}") - - self.cfg = cfg - feature_enc_layers = eval(cfg.conv_feature_layers) - self.embed = feature_enc_layers[-1][0] - - self.feature_extractor = ConvFeatureExtractionModel( - conv_layers=feature_enc_layers, - dropout=0.0, - mode=cfg.extractor_mode, - conv_bias=cfg.conv_bias, - ) - - self.post_extract_proj = ( - nn.Linear(self.embed, cfg.encoder_embed_dim) if self.embed != cfg.encoder_embed_dim else None - ) - - self.mask_prob = cfg.mask_prob - self.mask_selection = cfg.mask_selection - self.mask_other = cfg.mask_other - self.mask_length = cfg.mask_length - self.no_mask_overlap = cfg.no_mask_overlap - self.mask_min_space = cfg.mask_min_space - - self.mask_channel_prob = cfg.mask_channel_prob - self.mask_channel_selection = cfg.mask_channel_selection - self.mask_channel_other = cfg.mask_channel_other - self.mask_channel_length = cfg.mask_channel_length - self.no_mask_channel_overlap = cfg.no_mask_channel_overlap - self.mask_channel_min_space = cfg.mask_channel_min_space - - self.dropout_input = nn.Dropout(cfg.dropout_input) - self.dropout_features = nn.Dropout(cfg.dropout_features) - - self.feature_grad_mult = cfg.feature_grad_mult - - self.mask_emb = nn.Parameter(torch.FloatTensor(cfg.encoder_embed_dim).uniform_()) - - self.encoder = TransformerEncoder(cfg) - self.layer_norm = LayerNorm(self.embed) - - def apply_mask(self, x, padding_mask): - B, T, C = x.shape - if self.mask_prob > 0: - mask_indices = compute_mask_indices( - (B, T), - padding_mask, - self.mask_prob, - self.mask_length, - self.mask_selection, - self.mask_other, - min_masks=2, - no_overlap=self.no_mask_overlap, - min_space=self.mask_min_space, - ) - mask_indices = torch.from_numpy(mask_indices).to(x.device) - x[mask_indices] = self.mask_emb - else: - mask_indices = None - - if self.mask_channel_prob > 0: - mask_channel_indices = compute_mask_indices( - (B, C), - None, - self.mask_channel_prob, - self.mask_channel_length, - self.mask_channel_selection, - self.mask_channel_other, - no_overlap=self.no_mask_channel_overlap, - min_space=self.mask_channel_min_space, - ) - mask_channel_indices = torch.from_numpy(mask_channel_indices).to(x.device).unsqueeze(1).expand(-1, T, -1) - x[mask_channel_indices] = 0 - - return x, mask_indices - - def forward_padding_mask( - self, - features: torch.Tensor, - padding_mask: torch.Tensor, - ) -> torch.Tensor: - extra = padding_mask.size(1) % features.size(1) - if extra > 0: - padding_mask = padding_mask[:, :-extra] - padding_mask = padding_mask.view(padding_mask.size(0), features.size(1), -1) - # padding_mask = padding_mask.all(-1) - padding_mask = padding_mask.any(-1) - return padding_mask - - def extract_features( - self, - source: torch.Tensor, - padding_mask: Optional[torch.Tensor] = None, - mask: bool = False, - ret_conv: bool = False, - output_layer: Optional[int] = None, - ret_layer_results: bool = False, - ): - if self.feature_grad_mult > 0: - features = self.feature_extractor(source) - if self.feature_grad_mult != 1.0: - features = GradMultiply.apply(features, self.feature_grad_mult) - else: - with torch.no_grad(): - features = self.feature_extractor(source) - - features = features.transpose(1, 2) - features = self.layer_norm(features) - - if padding_mask is not None: - padding_mask = self.forward_padding_mask(features, padding_mask) - - if self.post_extract_proj is not None: - features = self.post_extract_proj(features) - - features = self.dropout_input(features) - - if mask: - x, mask_indices = self.apply_mask(features, padding_mask) - else: - x = features - - # feature: (B, T, D), float - # target: (B, T), long - # x: (B, T, D), float - # padding_mask: (B, T), bool - # mask_indices: (B, T), bool - x, layer_results = self.encoder( - x, padding_mask=padding_mask, layer=None if output_layer is None else output_layer - 1 - ) - - res = {"x": x, "padding_mask": padding_mask, "features": features, "layer_results": layer_results} - - feature = res["features"] if ret_conv else res["x"] - if ret_layer_results: - feature = (feature, res["layer_results"]) - return feature, res["padding_mask"] - - -class ConvFeatureExtractionModel(nn.Module): - def __init__( - self, - conv_layers: List[Tuple[int, int, int]], - dropout: float = 0.0, - mode: str = "default", - conv_bias: bool = False, - conv_type: str = "default", - ): - super().__init__() - - assert mode in {"default", "layer_norm"} - - def block( - n_in, - n_out, - k, - stride, - is_layer_norm=False, - is_group_norm=False, - conv_bias=False, - ): - def make_conv(): - conv = nn.Conv1d(n_in, n_out, k, stride=stride, bias=conv_bias) - nn.init.kaiming_normal_(conv.weight) - return conv - - assert (is_layer_norm and is_group_norm) == False, "layer norm and group norm are exclusive" - - if is_layer_norm: - return nn.Sequential( - make_conv(), - nn.Dropout(p=dropout), - nn.Sequential( - TransposeLast(), - Fp32LayerNorm(dim, elementwise_affine=True), - TransposeLast(), - ), - nn.GELU(), - ) - elif is_group_norm: - return nn.Sequential( - make_conv(), - nn.Dropout(p=dropout), - Fp32GroupNorm(dim, dim, affine=True), - nn.GELU(), - ) - else: - return nn.Sequential(make_conv(), nn.Dropout(p=dropout), nn.GELU()) - - self.conv_type = conv_type - if self.conv_type == "default": - in_d = 1 - self.conv_layers = nn.ModuleList() - for i, cl in enumerate(conv_layers): - assert len(cl) == 3, "invalid conv definition: " + str(cl) - (dim, k, stride) = cl - - self.conv_layers.append( - block( - in_d, - dim, - k, - stride, - is_layer_norm=mode == "layer_norm", - is_group_norm=mode == "default" and i == 0, - conv_bias=conv_bias, - ) - ) - in_d = dim - elif self.conv_type == "conv2d": - in_d = 1 - self.conv_layers = nn.ModuleList() - for i, cl in enumerate(conv_layers): - assert len(cl) == 3 - (dim, k, stride) = cl - - self.conv_layers.append(torch.nn.Conv2d(in_d, dim, k, stride)) - self.conv_layers.append(torch.nn.ReLU()) - in_d = dim - elif self.conv_type == "custom": - in_d = 1 - idim = 80 - self.conv_layers = nn.ModuleList() - for i, cl in enumerate(conv_layers): - assert len(cl) == 3 - (dim, k, stride) = cl - self.conv_layers.append(torch.nn.Conv2d(in_d, dim, k, stride, padding=1)) - self.conv_layers.append(torch.nn.LayerNorm([dim, idim])) - self.conv_layers.append(torch.nn.ReLU()) - in_d = dim - if (i + 1) % 2 == 0: - self.conv_layers.append(torch.nn.MaxPool2d(2, stride=2, ceil_mode=True)) - idim = int(math.ceil(idim / 2)) - else: - pass - - def forward(self, x, mask=None): - # BxT -> BxCxT - x = x.unsqueeze(1) - if self.conv_type == "custom": - for conv in self.conv_layers: - if isinstance(conv, nn.LayerNorm): - x = x.transpose(1, 2) - x = conv(x).transpose(1, 2) - else: - x = conv(x) - x = x.transpose(2, 3).contiguous() - x = x.view(x.size(0), -1, x.size(-1)) - else: - for conv in self.conv_layers: - x = conv(x) - if self.conv_type == "conv2d": - b, c, t, f = x.size() - x = x.transpose(2, 3).contiguous().view(b, c * f, t) - return x - - -class TransformerEncoder(nn.Module): - def __init__(self, args): - super().__init__() - - self.dropout = args.dropout - self.embedding_dim = args.encoder_embed_dim - - self.pos_conv = nn.Conv1d( - self.embedding_dim, - self.embedding_dim, - kernel_size=args.conv_pos, - padding=args.conv_pos // 2, - groups=args.conv_pos_groups, - ) - dropout = 0 - std = math.sqrt((4 * (1.0 - dropout)) / (args.conv_pos * self.embedding_dim)) - nn.init.normal_(self.pos_conv.weight, mean=0, std=std) - nn.init.constant_(self.pos_conv.bias, 0) - - self.pos_conv = nn.utils.weight_norm(self.pos_conv, name="weight", dim=2) - self.pos_conv = nn.Sequential(self.pos_conv, SamePad(args.conv_pos), nn.GELU()) - - if hasattr(args, "relative_position_embedding"): - self.relative_position_embedding = args.relative_position_embedding - self.num_buckets = args.num_buckets - self.max_distance = args.max_distance - else: - self.relative_position_embedding = False - self.num_buckets = 0 - self.max_distance = 0 - - self.layers = nn.ModuleList( - [ - TransformerSentenceEncoderLayer( - embedding_dim=self.embedding_dim, - ffn_embedding_dim=args.encoder_ffn_embed_dim, - num_attention_heads=args.encoder_attention_heads, - dropout=self.dropout, - attention_dropout=args.attention_dropout, - activation_dropout=args.activation_dropout, - activation_fn=args.activation_fn, - layer_norm_first=args.layer_norm_first, - has_relative_attention_bias=(self.relative_position_embedding and i == 0), - num_buckets=self.num_buckets, - max_distance=self.max_distance, - gru_rel_pos=args.gru_rel_pos, - ) - for i in range(args.encoder_layers) - ] - ) - - self.layer_norm_first = args.layer_norm_first - self.layer_norm = LayerNorm(self.embedding_dim) - self.layerdrop = args.encoder_layerdrop - - self.apply(init_bert_params) - - def forward(self, x, padding_mask=None, streaming_mask=None, layer=None): - x, layer_results = self.extract_features(x, padding_mask, streaming_mask, layer) - - if self.layer_norm_first and layer is None: - x = self.layer_norm(x) - - return x, layer_results - - def extract_features(self, x, padding_mask=None, streaming_mask=None, tgt_layer=None): - if padding_mask is not None: - x[padding_mask] = 0 - - x_conv = self.pos_conv(x.transpose(1, 2)) - x_conv = x_conv.transpose(1, 2) - x += x_conv - - if not self.layer_norm_first: - x = self.layer_norm(x) - - x = F.dropout(x, p=self.dropout, training=self.training) - - # B x T x C -> T x B x C - x = x.transpose(0, 1) - - layer_results = [] - z = None - if tgt_layer is not None: - layer_results.append((x, z)) - r = None - pos_bias = None - for i, layer in enumerate(self.layers): - dropout_probability = np.random.random() - if not self.training or (dropout_probability > self.layerdrop): - x, z, pos_bias = layer( - x, - self_attn_padding_mask=padding_mask, - need_weights=False, - self_attn_mask=streaming_mask, - pos_bias=pos_bias, - ) - if tgt_layer is not None: - layer_results.append((x, z)) - if i == tgt_layer: - r = x - break - - if r is not None: - x = r - - # T x B x C -> B x T x C - x = x.transpose(0, 1) - - return x, layer_results - - -class TransformerSentenceEncoderLayer(nn.Module): - """ - Implements a Transformer Encoder Layer used in BERT/XLM style pre-trained - models. - """ - - def __init__( - self, - embedding_dim: float = 768, - ffn_embedding_dim: float = 3072, - num_attention_heads: float = 8, - dropout: float = 0.1, - attention_dropout: float = 0.1, - activation_dropout: float = 0.1, - activation_fn: str = "relu", - layer_norm_first: bool = False, - has_relative_attention_bias: bool = False, - num_buckets: int = 0, - max_distance: int = 0, - rescale_init: bool = False, - gru_rel_pos: bool = False, - ) -> None: - super().__init__() - # Initialize parameters - self.embedding_dim = embedding_dim - self.dropout = dropout - self.activation_dropout = activation_dropout - - # Initialize blocks - self.activation_name = activation_fn - self.activation_fn = get_activation_fn(activation_fn) - self.self_attn = MultiheadAttention( - self.embedding_dim, - num_attention_heads, - dropout=attention_dropout, - self_attention=True, - has_relative_attention_bias=has_relative_attention_bias, - num_buckets=num_buckets, - max_distance=max_distance, - rescale_init=rescale_init, - gru_rel_pos=gru_rel_pos, - ) - - self.dropout1 = nn.Dropout(dropout) - self.dropout2 = nn.Dropout(self.activation_dropout) - self.dropout3 = nn.Dropout(dropout) - - self.layer_norm_first = layer_norm_first - - # layer norm associated with the self attention layer - self.self_attn_layer_norm = LayerNorm(self.embedding_dim) - - if self.activation_name == "glu": - self.fc1 = GLU_Linear(self.embedding_dim, ffn_embedding_dim, "swish") - else: - self.fc1 = nn.Linear(self.embedding_dim, ffn_embedding_dim) - self.fc2 = nn.Linear(ffn_embedding_dim, self.embedding_dim) - - # layer norm associated with the position wise feed-forward NN - self.final_layer_norm = LayerNorm(self.embedding_dim) - - def forward( - self, - x: torch.Tensor, - self_attn_mask: torch.Tensor = None, - self_attn_padding_mask: torch.Tensor = None, - need_weights: bool = False, - pos_bias=None, - ): - """ - LayerNorm is applied either before or after the self-attention/ffn - modules similar to the original Transformer imlementation. - """ - residual = x - - if self.layer_norm_first: - x = self.self_attn_layer_norm(x) - x, attn, pos_bias = self.self_attn( - query=x, - key=x, - value=x, - key_padding_mask=self_attn_padding_mask, - need_weights=False, - attn_mask=self_attn_mask, - position_bias=pos_bias, - ) - x = self.dropout1(x) - x = residual + x - - residual = x - x = self.final_layer_norm(x) - if self.activation_name == "glu": - x = self.fc1(x) - else: - x = self.activation_fn(self.fc1(x)) - x = self.dropout2(x) - x = self.fc2(x) - x = self.dropout3(x) - x = residual + x - else: - x, attn, pos_bias = self.self_attn( - query=x, - key=x, - value=x, - key_padding_mask=self_attn_padding_mask, - need_weights=need_weights, - attn_mask=self_attn_mask, - position_bias=pos_bias, - ) - - x = self.dropout1(x) - x = residual + x - - x = self.self_attn_layer_norm(x) - - residual = x - if self.activation_name == "glu": - x = self.fc1(x) - else: - x = self.activation_fn(self.fc1(x)) - x = self.dropout2(x) - x = self.fc2(x) - x = self.dropout3(x) - x = residual + x - x = self.final_layer_norm(x) - - return x, attn, pos_bias diff --git a/TTS/vocoder/README.md b/TTS/vocoder/README.md deleted file mode 100644 index b9fb17c8f09fa6e8c217087e31fb8c52d96da536..0000000000000000000000000000000000000000 --- a/TTS/vocoder/README.md +++ /dev/null @@ -1,39 +0,0 @@ -# Mozilla TTS Vocoders (Experimental) - -Here there are vocoder model implementations which can be combined with the other TTS models. - -Currently, following models are implemented: - -- Melgan -- MultiBand-Melgan -- ParallelWaveGAN -- GAN-TTS (Discriminator Only) - -It is also very easy to adapt different vocoder models as we provide a flexible and modular (but not too modular) framework. - -## Training a model - -You can see here an example (Soon)[Colab Notebook]() training MelGAN with LJSpeech dataset. - -In order to train a new model, you need to gather all wav files into a folder and give this folder to `data_path` in '''config.json''' - -You need to define other relevant parameters in your ```config.json``` and then start traning with the following command. - -```CUDA_VISIBLE_DEVICES='0' python tts/bin/train_vocoder.py --config_path path/to/config.json``` - -Example config files can be found under `tts/vocoder/configs/` folder. - -You can continue a previous training run by the following command. - -```CUDA_VISIBLE_DEVICES='0' python tts/bin/train_vocoder.py --continue_path path/to/your/model/folder``` - -You can fine-tune a pre-trained model by the following command. - -```CUDA_VISIBLE_DEVICES='0' python tts/bin/train_vocoder.py --restore_path path/to/your/model.pth``` - -Restoring a model starts a new training in a different folder. It only restores model weights with the given checkpoint file. However, continuing a training starts from the same directory where the previous training run left off. - -You can also follow your training runs on Tensorboard as you do with our TTS models. - -## Acknowledgement -Thanks to @kan-bayashi for his [repository](https://github.com/kan-bayashi/ParallelWaveGAN) being the start point of our work. diff --git a/TTS/vocoder/__init__.py b/TTS/vocoder/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/vocoder/configs/__init__.py b/TTS/vocoder/configs/__init__.py deleted file mode 100644 index b5e11b990c6d7294e7cb00c3e024bbb5f94a8105..0000000000000000000000000000000000000000 --- a/TTS/vocoder/configs/__init__.py +++ /dev/null @@ -1,17 +0,0 @@ -import importlib -import os -from inspect import isclass - -# import all files under configs/ -configs_dir = os.path.dirname(__file__) -for file in os.listdir(configs_dir): - path = os.path.join(configs_dir, file) - if not file.startswith("_") and not file.startswith(".") and (file.endswith(".py") or os.path.isdir(path)): - config_name = file[: file.find(".py")] if file.endswith(".py") else file - module = importlib.import_module("TTS.vocoder.configs." + config_name) - for attribute_name in dir(module): - attribute = getattr(module, attribute_name) - - if isclass(attribute): - # Add the class to this package's variables - globals()[attribute_name] = attribute diff --git a/TTS/vocoder/configs/fullband_melgan_config.py b/TTS/vocoder/configs/fullband_melgan_config.py deleted file mode 100644 index 2ab83aace678e328a8f99a5f0dc63e54ed99d4c4..0000000000000000000000000000000000000000 --- a/TTS/vocoder/configs/fullband_melgan_config.py +++ /dev/null @@ -1,106 +0,0 @@ -from dataclasses import dataclass, field - -from .shared_configs import BaseGANVocoderConfig - - -@dataclass -class FullbandMelganConfig(BaseGANVocoderConfig): - """Defines parameters for FullBand MelGAN vocoder. - - Example: - - >>> from TTS.vocoder.configs import FullbandMelganConfig - >>> config = FullbandMelganConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `fullband_melgan`. - discriminator_model (str): One of the discriminators from `TTS.vocoder.models.*_discriminator`. Defaults to - 'melgan_multiscale_discriminator`. - discriminator_model_params (dict): The discriminator model parameters. Defaults to - '{"base_channels": 16, "max_channels": 1024, "downsample_factors": [4, 4, 4, 4]}` - generator_model (str): One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `melgan_generator`. - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 16. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 8192. - pad_short (int): - Additional padding applied to the audio samples shorter than `seq_len`. Defaults to 0. - use_noise_augment (bool): - enable / disable random noise added to the input waveform. The noise is added after computing the - features. Defaults to True. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - use_stft_loss (bool): - enable / disable use of STFT loss originally used by ParallelWaveGAN model. Defaults to True. - use_subband_stft (bool): - enable / disable use of subband loss computation originally used by MultiBandMelgan model. Defaults to True. - use_mse_gan_loss (bool): - enable / disable using Mean Squeare Error GAN loss. Defaults to True. - use_hinge_gan_loss (bool): - enable / disable using Hinge GAN loss. You should choose either Hinge or MSE loss for training GAN models. - Defaults to False. - use_feat_match_loss (bool): - enable / disable using Feature Matching loss originally used by MelGAN model. Defaults to True. - use_l1_spec_loss (bool): - enable / disable using L1 spectrogram loss originally used by HifiGAN model. Defaults to False. - stft_loss_params (dict): STFT loss parameters. Default to - `{"n_ffts": [1024, 2048, 512], "hop_lengths": [120, 240, 50], "win_lengths": [600, 1200, 240]}` - stft_loss_weight (float): STFT loss weight that multiplies the computed loss before summing up the total - model loss. Defaults to 0.5. - subband_stft_loss_weight (float): - Subband STFT loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - mse_G_loss_weight (float): - MSE generator loss weight that multiplies the computed loss before summing up the total loss. faults to 2.5. - hinge_G_loss_weight (float): - Hinge generator loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - feat_match_loss_weight (float): - Feature matching loss weight that multiplies the computed loss before summing up the total loss. faults to 108. - l1_spec_loss_weight (float): - L1 spectrogram loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - """ - - model: str = "fullband_melgan" - - # Model specific params - discriminator_model: str = "melgan_multiscale_discriminator" - discriminator_model_params: dict = field( - default_factory=lambda: {"base_channels": 16, "max_channels": 512, "downsample_factors": [4, 4, 4]} - ) - generator_model: str = "melgan_generator" - generator_model_params: dict = field( - default_factory=lambda: {"upsample_factors": [8, 8, 2, 2], "num_res_blocks": 4} - ) - - # Training - overrides - batch_size: int = 16 - seq_len: int = 8192 - pad_short: int = 2000 - use_noise_augment: bool = True - use_cache: bool = True - - # LOSS PARAMETERS - overrides - use_stft_loss: bool = True - use_subband_stft_loss: bool = False - use_mse_gan_loss: bool = True - use_hinge_gan_loss: bool = False - use_feat_match_loss: bool = True # requires MelGAN Discriminators (MelGAN and HifiGAN) - use_l1_spec_loss: bool = False - - stft_loss_params: dict = field( - default_factory=lambda: { - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240], - } - ) - - # loss weights - overrides - stft_loss_weight: float = 0.5 - subband_stft_loss_weight: float = 0 - mse_G_loss_weight: float = 2.5 - hinge_G_loss_weight: float = 0 - feat_match_loss_weight: float = 108 - l1_spec_loss_weight: float = 0.0 diff --git a/TTS/vocoder/configs/hifigan_config.py b/TTS/vocoder/configs/hifigan_config.py deleted file mode 100644 index 9a102f0c89588b1a7fe270225e4b0fefa2e4bc71..0000000000000000000000000000000000000000 --- a/TTS/vocoder/configs/hifigan_config.py +++ /dev/null @@ -1,136 +0,0 @@ -from dataclasses import dataclass, field - -from TTS.vocoder.configs.shared_configs import BaseGANVocoderConfig - - -@dataclass -class HifiganConfig(BaseGANVocoderConfig): - """Defines parameters for FullBand MelGAN vocoder. - - Example: - - >>> from TTS.vocoder.configs import HifiganConfig - >>> config = HifiganConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `hifigan`. - discriminator_model (str): One of the discriminators from `TTS.vocoder.models.*_discriminator`. Defaults to - 'hifigan_discriminator`. - generator_model (str): One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `hifigan_generator`. - generator_model_params (dict): Parameters of the generator model. Defaults to - ` - { - "upsample_factors": [8, 8, 2, 2], - "upsample_kernel_sizes": [16, 16, 4, 4], - "upsample_initial_channel": 512, - "resblock_kernel_sizes": [3, 7, 11], - "resblock_dilation_sizes": [[1, 3, 5], [1, 3, 5], [1, 3, 5]], - "resblock_type": "1", - } - ` - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 16. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 8192. - pad_short (int): - Additional padding applied to the audio samples shorter than `seq_len`. Defaults to 0. - use_noise_augment (bool): - enable / disable random noise added to the input waveform. The noise is added after computing the - features. Defaults to True. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - use_stft_loss (bool): - enable / disable use of STFT loss originally used by ParallelWaveGAN model. Defaults to True. - use_subband_stft (bool): - enable / disable use of subband loss computation originally used by MultiBandMelgan model. Defaults to True. - use_mse_gan_loss (bool): - enable / disable using Mean Squeare Error GAN loss. Defaults to True. - use_hinge_gan_loss (bool): - enable / disable using Hinge GAN loss. You should choose either Hinge or MSE loss for training GAN models. - Defaults to False. - use_feat_match_loss (bool): - enable / disable using Feature Matching loss originally used by MelGAN model. Defaults to True. - use_l1_spec_loss (bool): - enable / disable using L1 spectrogram loss originally used by HifiGAN model. Defaults to False. - stft_loss_params (dict): - STFT loss parameters. Default to - `{ - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240] - }` - l1_spec_loss_params (dict): - L1 spectrogram loss parameters. Default to - `{ - "use_mel": True, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": None, - }` - stft_loss_weight (float): STFT loss weight that multiplies the computed loss before summing up the total - model loss. Defaults to 0.5. - subband_stft_loss_weight (float): - Subband STFT loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - mse_G_loss_weight (float): - MSE generator loss weight that multiplies the computed loss before summing up the total loss. faults to 2.5. - hinge_G_loss_weight (float): - Hinge generator loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - feat_match_loss_weight (float): - Feature matching loss weight that multiplies the computed loss before summing up the total loss. faults to 108. - l1_spec_loss_weight (float): - L1 spectrogram loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - """ - - model: str = "hifigan" - # model specific params - discriminator_model: str = "hifigan_discriminator" - generator_model: str = "hifigan_generator" - generator_model_params: dict = field( - default_factory=lambda: { - "upsample_factors": [8, 8, 2, 2], - "upsample_kernel_sizes": [16, 16, 4, 4], - "upsample_initial_channel": 512, - "resblock_kernel_sizes": [3, 7, 11], - "resblock_dilation_sizes": [[1, 3, 5], [1, 3, 5], [1, 3, 5]], - "resblock_type": "1", - } - ) - - # LOSS PARAMETERS - overrides - use_stft_loss: bool = False - use_subband_stft_loss: bool = False - use_mse_gan_loss: bool = True - use_hinge_gan_loss: bool = False - use_feat_match_loss: bool = True # requires MelGAN Discriminators (MelGAN and HifiGAN) - use_l1_spec_loss: bool = True - - # loss weights - overrides - stft_loss_weight: float = 0 - subband_stft_loss_weight: float = 0 - mse_G_loss_weight: float = 1 - hinge_G_loss_weight: float = 0 - feat_match_loss_weight: float = 108 - l1_spec_loss_weight: float = 45 - l1_spec_loss_params: dict = field( - default_factory=lambda: { - "use_mel": True, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": None, - } - ) - - # optimizer parameters - lr: float = 1e-4 - wd: float = 1e-6 diff --git a/TTS/vocoder/configs/melgan_config.py b/TTS/vocoder/configs/melgan_config.py deleted file mode 100644 index dc35b6f8b70891d4904baefad802d9c62fe67925..0000000000000000000000000000000000000000 --- a/TTS/vocoder/configs/melgan_config.py +++ /dev/null @@ -1,106 +0,0 @@ -from dataclasses import dataclass, field - -from TTS.vocoder.configs.shared_configs import BaseGANVocoderConfig - - -@dataclass -class MelganConfig(BaseGANVocoderConfig): - """Defines parameters for MelGAN vocoder. - - Example: - - >>> from TTS.vocoder.configs import MelganConfig - >>> config = MelganConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `melgan`. - discriminator_model (str): One of the discriminators from `TTS.vocoder.models.*_discriminator`. Defaults to - 'melgan_multiscale_discriminator`. - discriminator_model_params (dict): The discriminator model parameters. Defaults to - '{"base_channels": 16, "max_channels": 1024, "downsample_factors": [4, 4, 4, 4]}` - generator_model (str): One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `melgan_generator`. - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 16. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 8192. - pad_short (int): - Additional padding applied to the audio samples shorter than `seq_len`. Defaults to 0. - use_noise_augment (bool): - enable / disable random noise added to the input waveform. The noise is added after computing the - features. Defaults to True. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - use_stft_loss (bool): - enable / disable use of STFT loss originally used by ParallelWaveGAN model. Defaults to True. - use_subband_stft (bool): - enable / disable use of subband loss computation originally used by MultiBandMelgan model. Defaults to True. - use_mse_gan_loss (bool): - enable / disable using Mean Squeare Error GAN loss. Defaults to True. - use_hinge_gan_loss (bool): - enable / disable using Hinge GAN loss. You should choose either Hinge or MSE loss for training GAN models. - Defaults to False. - use_feat_match_loss (bool): - enable / disable using Feature Matching loss originally used by MelGAN model. Defaults to True. - use_l1_spec_loss (bool): - enable / disable using L1 spectrogram loss originally used by HifiGAN model. Defaults to False. - stft_loss_params (dict): STFT loss parameters. Default to - `{"n_ffts": [1024, 2048, 512], "hop_lengths": [120, 240, 50], "win_lengths": [600, 1200, 240]}` - stft_loss_weight (float): STFT loss weight that multiplies the computed loss before summing up the total - model loss. Defaults to 0.5. - subband_stft_loss_weight (float): - Subband STFT loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - mse_G_loss_weight (float): - MSE generator loss weight that multiplies the computed loss before summing up the total loss. faults to 2.5. - hinge_G_loss_weight (float): - Hinge generator loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - feat_match_loss_weight (float): - Feature matching loss weight that multiplies the computed loss before summing up the total loss. faults to 108. - l1_spec_loss_weight (float): - L1 spectrogram loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - """ - - model: str = "melgan" - - # Model specific params - discriminator_model: str = "melgan_multiscale_discriminator" - discriminator_model_params: dict = field( - default_factory=lambda: {"base_channels": 16, "max_channels": 1024, "downsample_factors": [4, 4, 4, 4]} - ) - generator_model: str = "melgan_generator" - generator_model_params: dict = field( - default_factory=lambda: {"upsample_factors": [8, 8, 2, 2], "num_res_blocks": 3} - ) - - # Training - overrides - batch_size: int = 16 - seq_len: int = 8192 - pad_short: int = 2000 - use_noise_augment: bool = True - use_cache: bool = True - - # LOSS PARAMETERS - overrides - use_stft_loss: bool = True - use_subband_stft_loss: bool = False - use_mse_gan_loss: bool = True - use_hinge_gan_loss: bool = False - use_feat_match_loss: bool = True # requires MelGAN Discriminators (MelGAN and HifiGAN) - use_l1_spec_loss: bool = False - - stft_loss_params: dict = field( - default_factory=lambda: { - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240], - } - ) - - # loss weights - overrides - stft_loss_weight: float = 0.5 - subband_stft_loss_weight: float = 0 - mse_G_loss_weight: float = 2.5 - hinge_G_loss_weight: float = 0 - feat_match_loss_weight: float = 108 - l1_spec_loss_weight: float = 0 diff --git a/TTS/vocoder/configs/multiband_melgan_config.py b/TTS/vocoder/configs/multiband_melgan_config.py deleted file mode 100644 index 763113537f36a8615b2b77369bf5bde01527fe53..0000000000000000000000000000000000000000 --- a/TTS/vocoder/configs/multiband_melgan_config.py +++ /dev/null @@ -1,144 +0,0 @@ -from dataclasses import dataclass, field - -from TTS.vocoder.configs.shared_configs import BaseGANVocoderConfig - - -@dataclass -class MultibandMelganConfig(BaseGANVocoderConfig): - """Defines parameters for MultiBandMelGAN vocoder. - - Example: - - >>> from TTS.vocoder.configs import MultibandMelganConfig - >>> config = MultibandMelganConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `multiband_melgan`. - discriminator_model (str): One of the discriminators from `TTS.vocoder.models.*_discriminator`. Defaults to - 'melgan_multiscale_discriminator`. - discriminator_model_params (dict): The discriminator model parameters. Defaults to - '{ - "base_channels": 16, - "max_channels": 512, - "downsample_factors": [4, 4, 4] - }` - generator_model (str): One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `melgan_generator`. - generator_model_param (dict): - The generator model parameters. Defaults to `{"upsample_factors": [8, 4, 2], "num_res_blocks": 4}`. - use_pqmf (bool): - enable / disable PQMF modulation for multi-band training. Defaults to True. - lr_gen (float): - Initial learning rate for the generator model. Defaults to 0.0001. - lr_disc (float): - Initial learning rate for the discriminator model. Defaults to 0.0001. - optimizer (torch.optim.Optimizer): - Optimizer used for the training. Defaults to `AdamW`. - optimizer_params (dict): - Optimizer kwargs. Defaults to `{"betas": [0.8, 0.99], "weight_decay": 0.0}` - lr_scheduler_gen (torch.optim.Scheduler): - Learning rate scheduler for the generator. Defaults to `MultiStepLR`. - lr_scheduler_gen_params (dict): - Parameters for the generator learning rate scheduler. Defaults to - `{"gamma": 0.5, "milestones": [100000, 200000, 300000, 400000, 500000, 600000]}`. - lr_scheduler_disc (torch.optim.Scheduler): - Learning rate scheduler for the discriminator. Defaults to `MultiStepLR`. - lr_scheduler_dict_params (dict): - Parameters for the discriminator learning rate scheduler. Defaults to - `{"gamma": 0.5, "milestones": [100000, 200000, 300000, 400000, 500000, 600000]}`. - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 16. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 8192. - pad_short (int): - Additional padding applied to the audio samples shorter than `seq_len`. Defaults to 0. - use_noise_augment (bool): - enable / disable random noise added to the input waveform. The noise is added after computing the - features. Defaults to True. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - steps_to_start_discriminator (int): - Number of steps required to start training the discriminator. Defaults to 0. - use_stft_loss (bool):` - enable / disable use of STFT loss originally used by ParallelWaveGAN model. Defaults to True. - use_subband_stft (bool): - enable / disable use of subband loss computation originally used by MultiBandMelgan model. Defaults to True. - use_mse_gan_loss (bool): - enable / disable using Mean Squeare Error GAN loss. Defaults to True. - use_hinge_gan_loss (bool): - enable / disable using Hinge GAN loss. You should choose either Hinge or MSE loss for training GAN models. - Defaults to False. - use_feat_match_loss (bool): - enable / disable using Feature Matching loss originally used by MelGAN model. Defaults to True. - use_l1_spec_loss (bool): - enable / disable using L1 spectrogram loss originally used by HifiGAN model. Defaults to False. - stft_loss_params (dict): STFT loss parameters. Default to - `{"n_ffts": [1024, 2048, 512], "hop_lengths": [120, 240, 50], "win_lengths": [600, 1200, 240]}` - stft_loss_weight (float): STFT loss weight that multiplies the computed loss before summing up the total - model loss. Defaults to 0.5. - subband_stft_loss_weight (float): - Subband STFT loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - mse_G_loss_weight (float): - MSE generator loss weight that multiplies the computed loss before summing up the total loss. faults to 2.5. - hinge_G_loss_weight (float): - Hinge generator loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - feat_match_loss_weight (float): - Feature matching loss weight that multiplies the computed loss before summing up the total loss. faults to 108. - l1_spec_loss_weight (float): - L1 spectrogram loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - """ - - model: str = "multiband_melgan" - - # Model specific params - discriminator_model: str = "melgan_multiscale_discriminator" - discriminator_model_params: dict = field( - default_factory=lambda: {"base_channels": 16, "max_channels": 512, "downsample_factors": [4, 4, 4]} - ) - generator_model: str = "multiband_melgan_generator" - generator_model_params: dict = field(default_factory=lambda: {"upsample_factors": [8, 4, 2], "num_res_blocks": 4}) - use_pqmf: bool = True - - # optimizer - overrides - lr_gen: float = 0.0001 # Initial learning rate. - lr_disc: float = 0.0001 # Initial learning rate. - optimizer: str = "AdamW" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.8, 0.99], "weight_decay": 0.0}) - lr_scheduler_gen: str = "MultiStepLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_gen_params: dict = field( - default_factory=lambda: {"gamma": 0.5, "milestones": [100000, 200000, 300000, 400000, 500000, 600000]} - ) - lr_scheduler_disc: str = "MultiStepLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_disc_params: dict = field( - default_factory=lambda: {"gamma": 0.5, "milestones": [100000, 200000, 300000, 400000, 500000, 600000]} - ) - - # Training - overrides - batch_size: int = 64 - seq_len: int = 16384 - pad_short: int = 2000 - use_noise_augment: bool = False - use_cache: bool = True - steps_to_start_discriminator: bool = 200000 - - # LOSS PARAMETERS - overrides - use_stft_loss: bool = True - use_subband_stft_loss: bool = True - use_mse_gan_loss: bool = True - use_hinge_gan_loss: bool = False - use_feat_match_loss: bool = False # requires MelGAN Discriminators (MelGAN and HifiGAN) - use_l1_spec_loss: bool = False - - subband_stft_loss_params: dict = field( - default_factory=lambda: {"n_ffts": [384, 683, 171], "hop_lengths": [30, 60, 10], "win_lengths": [150, 300, 60]} - ) - - # loss weights - overrides - stft_loss_weight: float = 0.5 - subband_stft_loss_weight: float = 0 - mse_G_loss_weight: float = 2.5 - hinge_G_loss_weight: float = 0 - feat_match_loss_weight: float = 108 - l1_spec_loss_weight: float = 0 diff --git a/TTS/vocoder/configs/parallel_wavegan_config.py b/TTS/vocoder/configs/parallel_wavegan_config.py deleted file mode 100644 index 7845dd6bf835ebab4cc5d8b65962b7347b7711cf..0000000000000000000000000000000000000000 --- a/TTS/vocoder/configs/parallel_wavegan_config.py +++ /dev/null @@ -1,133 +0,0 @@ -from dataclasses import dataclass, field - -from .shared_configs import BaseGANVocoderConfig - - -@dataclass -class ParallelWaveganConfig(BaseGANVocoderConfig): - """Defines parameters for ParallelWavegan vocoder. - - Args: - model (str): - Model name used for selecting the right configuration at initialization. Defaults to `gan`. - discriminator_model (str): One of the discriminators from `TTS.vocoder.models.*_discriminator`. Defaults to - 'parallel_wavegan_discriminator`. - discriminator_model_params (dict): The discriminator model kwargs. Defaults to - '{"num_layers": 10}` - generator_model (str): One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `parallel_wavegan_generator`. - generator_model_param (dict): - The generator model kwargs. Defaults to `{"upsample_factors": [4, 4, 4, 4], "stacks": 3, "num_res_blocks": 30}`. - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 16. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 8192. - pad_short (int): - Additional padding applied to the audio samples shorter than `seq_len`. Defaults to 0. - use_noise_augment (bool): - enable / disable random noise added to the input waveform. The noise is added after computing the - features. Defaults to True. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - steps_to_start_discriminator (int): - Number of steps required to start training the discriminator. Defaults to 0. - use_stft_loss (bool):` - enable / disable use of STFT loss originally used by ParallelWaveGAN model. Defaults to True. - use_subband_stft (bool): - enable / disable use of subband loss computation originally used by MultiBandMelgan model. Defaults to True. - use_mse_gan_loss (bool): - enable / disable using Mean Squeare Error GAN loss. Defaults to True. - use_hinge_gan_loss (bool): - enable / disable using Hinge GAN loss. You should choose either Hinge or MSE loss for training GAN models. - Defaults to False. - use_feat_match_loss (bool): - enable / disable using Feature Matching loss originally used by MelGAN model. Defaults to True. - use_l1_spec_loss (bool): - enable / disable using L1 spectrogram loss originally used by HifiGAN model. Defaults to False. - stft_loss_params (dict): STFT loss parameters. Default to - `{"n_ffts": [1024, 2048, 512], "hop_lengths": [120, 240, 50], "win_lengths": [600, 1200, 240]}` - stft_loss_weight (float): STFT loss weight that multiplies the computed loss before summing up the total - model loss. Defaults to 0.5. - subband_stft_loss_weight (float): - Subband STFT loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - mse_G_loss_weight (float): - MSE generator loss weight that multiplies the computed loss before summing up the total loss. faults to 2.5. - hinge_G_loss_weight (float): - Hinge generator loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - feat_match_loss_weight (float): - Feature matching loss weight that multiplies the computed loss before summing up the total loss. faults to 0. - l1_spec_loss_weight (float): - L1 spectrogram loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - lr_gen (float): - Generator model initial learning rate. Defaults to 0.0002. - lr_disc (float): - Discriminator model initial learning rate. Defaults to 0.0002. - optimizer (torch.optim.Optimizer): - Optimizer used for the training. Defaults to `AdamW`. - optimizer_params (dict): - Optimizer kwargs. Defaults to `{"betas": [0.8, 0.99], "weight_decay": 0.0}` - lr_scheduler_gen (torch.optim.Scheduler): - Learning rate scheduler for the generator. Defaults to `ExponentialLR`. - lr_scheduler_gen_params (dict): - Parameters for the generator learning rate scheduler. Defaults to `{"gamma": 0.5, "step_size": 200000, "last_epoch": -1}`. - lr_scheduler_disc (torch.optim.Scheduler): - Learning rate scheduler for the discriminator. Defaults to `ExponentialLR`. - lr_scheduler_dict_params (dict): - Parameters for the discriminator learning rate scheduler. Defaults to `{"gamma": 0.5, "step_size": 200000, "last_epoch": -1}`. - """ - - model: str = "parallel_wavegan" - - # Model specific params - discriminator_model: str = "parallel_wavegan_discriminator" - discriminator_model_params: dict = field(default_factory=lambda: {"num_layers": 10}) - generator_model: str = "parallel_wavegan_generator" - generator_model_params: dict = field( - default_factory=lambda: {"upsample_factors": [4, 4, 4, 4], "stacks": 3, "num_res_blocks": 30} - ) - - # Training - overrides - batch_size: int = 6 - seq_len: int = 25600 - pad_short: int = 2000 - use_noise_augment: bool = False - use_cache: bool = True - steps_to_start_discriminator: int = 200000 - - # LOSS PARAMETERS - overrides - use_stft_loss: bool = True - use_subband_stft_loss: bool = False - use_mse_gan_loss: bool = True - use_hinge_gan_loss: bool = False - use_feat_match_loss: bool = False # requires MelGAN Discriminators (MelGAN and HifiGAN) - use_l1_spec_loss: bool = False - - stft_loss_params: dict = field( - default_factory=lambda: { - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240], - } - ) - - # loss weights - overrides - stft_loss_weight: float = 0.5 - subband_stft_loss_weight: float = 0 - mse_G_loss_weight: float = 2.5 - hinge_G_loss_weight: float = 0 - feat_match_loss_weight: float = 0 - l1_spec_loss_weight: float = 0 - - # optimizer overrides - lr_gen: float = 0.0002 # Initial learning rate. - lr_disc: float = 0.0002 # Initial learning rate. - optimizer: str = "AdamW" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.8, 0.99], "weight_decay": 0.0}) - lr_scheduler_gen: str = "StepLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_gen_params: dict = field(default_factory=lambda: {"gamma": 0.5, "step_size": 200000, "last_epoch": -1}) - lr_scheduler_disc: str = "StepLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_disc_params: dict = field( - default_factory=lambda: {"gamma": 0.5, "step_size": 200000, "last_epoch": -1} - ) - scheduler_after_epoch: bool = False diff --git a/TTS/vocoder/configs/shared_configs.py b/TTS/vocoder/configs/shared_configs.py deleted file mode 100644 index a558cfcabbc2abc26be60065d3ac75cebd829f28..0000000000000000000000000000000000000000 --- a/TTS/vocoder/configs/shared_configs.py +++ /dev/null @@ -1,182 +0,0 @@ -from dataclasses import dataclass, field - -from TTS.config import BaseAudioConfig, BaseTrainingConfig - - -@dataclass -class BaseVocoderConfig(BaseTrainingConfig): - """Shared parameters among all the vocoder models. - Args: - audio (BaseAudioConfig): - Audio processor config instance. Defaultsto `BaseAudioConfig()`. - use_noise_augment (bool): - Augment the input audio with random noise. Defaults to False/ - eval_split_size (int): - Number of instances used for evaluation. Defaults to 10. - data_path (str): - Root path of the training data. All the audio files found recursively from this root path are used for - training. Defaults to `""`. - feature_path (str): - Root path to the precomputed feature files. Defaults to None. - seq_len (int): - Length of the waveform segments used for training. Defaults to 1000. - pad_short (int): - Extra padding for the waveforms shorter than `seq_len`. Defaults to 0. - conv_path (int): - Extra padding for the feature frames against convolution of the edge frames. Defaults to MISSING. - Defaults to 0. - use_cache (bool): - enable / disable in memory caching of the computed features. If the RAM is not enough, if may cause OOM. - Defaults to False. - epochs (int): - Number of training epochs to. Defaults to 10000. - wd (float): - Weight decay. - optimizer (torch.optim.Optimizer): - Optimizer used for the training. Defaults to `AdamW`. - optimizer_params (dict): - Optimizer kwargs. Defaults to `{"betas": [0.8, 0.99], "weight_decay": 0.0}` - """ - - audio: BaseAudioConfig = field(default_factory=BaseAudioConfig) - # dataloading - use_noise_augment: bool = False # enable/disable random noise augmentation in spectrograms. - eval_split_size: int = 10 # number of samples used for evaluation. - # dataset - data_path: str = "" # root data path. It finds all wav files recursively from there. - feature_path: str = None # if you use precomputed features - seq_len: int = 1000 # signal length used in training. - pad_short: int = 0 # additional padding for short wavs - conv_pad: int = 0 # additional padding against convolutions applied to spectrograms - use_cache: bool = False # use in memory cache to keep the computed features. This might cause OOM. - # OPTIMIZER - epochs: int = 10000 # total number of epochs to train. - wd: float = 0.0 # Weight decay weight. - optimizer: str = "AdamW" - optimizer_params: dict = field(default_factory=lambda: {"betas": [0.8, 0.99], "weight_decay": 0.0}) - - -@dataclass -class BaseGANVocoderConfig(BaseVocoderConfig): - """Base config class used among all the GAN based vocoders. - Args: - use_stft_loss (bool): - enable / disable the use of STFT loss. Defaults to True. - use_subband_stft_loss (bool): - enable / disable the use of Subband STFT loss. Defaults to True. - use_mse_gan_loss (bool): - enable / disable the use of Mean Squared Error based GAN loss. Defaults to True. - use_hinge_gan_loss (bool): - enable / disable the use of Hinge GAN loss. Defaults to True. - use_feat_match_loss (bool): - enable / disable feature matching loss. Defaults to True. - use_l1_spec_loss (bool): - enable / disable L1 spectrogram loss. Defaults to True. - stft_loss_weight (float): - Loss weight that multiplies the computed loss value. Defaults to 0. - subband_stft_loss_weight (float): - Loss weight that multiplies the computed loss value. Defaults to 0. - mse_G_loss_weight (float): - Loss weight that multiplies the computed loss value. Defaults to 1. - hinge_G_loss_weight (float): - Loss weight that multiplies the computed loss value. Defaults to 0. - feat_match_loss_weight (float): - Loss weight that multiplies the computed loss value. Defaults to 100. - l1_spec_loss_weight (float): - Loss weight that multiplies the computed loss value. Defaults to 45. - stft_loss_params (dict): - Parameters for the STFT loss. Defaults to `{"n_ffts": [1024, 2048, 512], "hop_lengths": [120, 240, 50], "win_lengths": [600, 1200, 240]}`. - l1_spec_loss_params (dict): - Parameters for the L1 spectrogram loss. Defaults to - `{ - "use_mel": True, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": None, - }` - target_loss (str): - Target loss name that defines the quality of the model. Defaults to `G_avg_loss`. - grad_clip (list): - A list of gradient clipping theresholds for each optimizer. Any value less than 0 disables clipping. - Defaults to [5, 5]. - lr_gen (float): - Generator model initial learning rate. Defaults to 0.0002. - lr_disc (float): - Discriminator model initial learning rate. Defaults to 0.0002. - lr_scheduler_gen (torch.optim.Scheduler): - Learning rate scheduler for the generator. Defaults to `ExponentialLR`. - lr_scheduler_gen_params (dict): - Parameters for the generator learning rate scheduler. Defaults to `{"gamma": 0.999, "last_epoch": -1}`. - lr_scheduler_disc (torch.optim.Scheduler): - Learning rate scheduler for the discriminator. Defaults to `ExponentialLR`. - lr_scheduler_disc_params (dict): - Parameters for the discriminator learning rate scheduler. Defaults to `{"gamma": 0.999, "last_epoch": -1}`. - scheduler_after_epoch (bool): - Whether to update the learning rate schedulers after each epoch. Defaults to True. - use_pqmf (bool): - enable / disable PQMF for subband approximation at training. Defaults to False. - steps_to_start_discriminator (int): - Number of steps required to start training the discriminator. Defaults to 0. - diff_samples_for_G_and_D (bool): - enable / disable use of different training samples for the generator and the discriminator iterations. - Enabling it results in slower iterations but faster convergance in some cases. Defaults to False. - """ - - model: str = "gan" - - # LOSS PARAMETERS - use_stft_loss: bool = True - use_subband_stft_loss: bool = True - use_mse_gan_loss: bool = True - use_hinge_gan_loss: bool = True - use_feat_match_loss: bool = True # requires MelGAN Discriminators (MelGAN and HifiGAN) - use_l1_spec_loss: bool = True - - # loss weights - stft_loss_weight: float = 0 - subband_stft_loss_weight: float = 0 - mse_G_loss_weight: float = 1 - hinge_G_loss_weight: float = 0 - feat_match_loss_weight: float = 100 - l1_spec_loss_weight: float = 45 - - stft_loss_params: dict = field( - default_factory=lambda: { - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240], - } - ) - - l1_spec_loss_params: dict = field( - default_factory=lambda: { - "use_mel": True, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": None, - } - ) - - target_loss: str = "loss_0" # loss value to pick the best model to save after each epoch - - # optimizer - grad_clip: float = field(default_factory=lambda: [5, 5]) - lr_gen: float = 0.0002 # Initial learning rate. - lr_disc: float = 0.0002 # Initial learning rate. - lr_scheduler_gen: str = "ExponentialLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_gen_params: dict = field(default_factory=lambda: {"gamma": 0.999, "last_epoch": -1}) - lr_scheduler_disc: str = "ExponentialLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_disc_params: dict = field(default_factory=lambda: {"gamma": 0.999, "last_epoch": -1}) - scheduler_after_epoch: bool = True - - use_pqmf: bool = False # enable/disable using pqmf for multi-band training. (Multi-band MelGAN) - steps_to_start_discriminator = 0 # start training the discriminator after this number of steps. - diff_samples_for_G_and_D: bool = False # use different samples for G and D training steps. diff --git a/TTS/vocoder/configs/univnet_config.py b/TTS/vocoder/configs/univnet_config.py deleted file mode 100644 index 67f324cfce5f701f0d7453beab81590bef6be114..0000000000000000000000000000000000000000 --- a/TTS/vocoder/configs/univnet_config.py +++ /dev/null @@ -1,161 +0,0 @@ -from dataclasses import dataclass, field -from typing import Dict - -from TTS.vocoder.configs.shared_configs import BaseGANVocoderConfig - - -@dataclass -class UnivnetConfig(BaseGANVocoderConfig): - """Defines parameters for UnivNet vocoder. - - Example: - - >>> from TTS.vocoder.configs import UnivNetConfig - >>> config = UnivNetConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `UnivNet`. - discriminator_model (str): One of the discriminators from `TTS.vocoder.models.*_discriminator`. Defaults to - 'UnivNet_discriminator`. - generator_model (str): One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `UnivNet_generator`. - generator_model_params (dict): Parameters of the generator model. Defaults to - ` - { - "use_mel": True, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": None, - } - ` - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 32. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 8192. - pad_short (int): - Additional padding applied to the audio samples shorter than `seq_len`. Defaults to 0. - use_noise_augment (bool): - enable / disable random noise added to the input waveform. The noise is added after computing the - features. Defaults to True. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - use_stft_loss (bool): - enable / disable use of STFT loss originally used by ParallelWaveGAN model. Defaults to True. - use_subband_stft (bool): - enable / disable use of subband loss computation originally used by MultiBandMelgan model. Defaults to True. - use_mse_gan_loss (bool): - enable / disable using Mean Squeare Error GAN loss. Defaults to True. - use_hinge_gan_loss (bool): - enable / disable using Hinge GAN loss. You should choose either Hinge or MSE loss for training GAN models. - Defaults to False. - use_feat_match_loss (bool): - enable / disable using Feature Matching loss originally used by MelGAN model. Defaults to True. - use_l1_spec_loss (bool): - enable / disable using L1 spectrogram loss originally used by univnet model. Defaults to False. - stft_loss_params (dict): - STFT loss parameters. Default to - `{ - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240] - }` - l1_spec_loss_params (dict): - L1 spectrogram loss parameters. Default to - `{ - "use_mel": True, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": None, - }` - stft_loss_weight (float): STFT loss weight that multiplies the computed loss before summing up the total - model loss. Defaults to 0.5. - subband_stft_loss_weight (float): - Subband STFT loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - mse_G_loss_weight (float): - MSE generator loss weight that multiplies the computed loss before summing up the total loss. faults to 2.5. - hinge_G_loss_weight (float): - Hinge generator loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - feat_match_loss_weight (float): - Feature matching loss weight that multiplies the computed loss before summing up the total loss. faults to 108. - l1_spec_loss_weight (float): - L1 spectrogram loss weight that multiplies the computed loss before summing up the total loss. Defaults to 0. - """ - - model: str = "univnet" - batch_size: int = 32 - # model specific params - discriminator_model: str = "univnet_discriminator" - generator_model: str = "univnet_generator" - generator_model_params: Dict = field( - default_factory=lambda: { - "in_channels": 64, - "out_channels": 1, - "hidden_channels": 32, - "cond_channels": 80, - "upsample_factors": [8, 8, 4], - "lvc_layers_each_block": 4, - "lvc_kernel_size": 3, - "kpnet_hidden_channels": 64, - "kpnet_conv_size": 3, - "dropout": 0.0, - } - ) - - # LOSS PARAMETERS - overrides - use_stft_loss: bool = True - use_subband_stft_loss: bool = False - use_mse_gan_loss: bool = True - use_hinge_gan_loss: bool = False - use_feat_match_loss: bool = False # requires MelGAN Discriminators (MelGAN and univnet) - use_l1_spec_loss: bool = False - - # loss weights - overrides - stft_loss_weight: float = 2.5 - stft_loss_params: Dict = field( - default_factory=lambda: { - "n_ffts": [1024, 2048, 512], - "hop_lengths": [120, 240, 50], - "win_lengths": [600, 1200, 240], - } - ) - subband_stft_loss_weight: float = 0 - mse_G_loss_weight: float = 1 - hinge_G_loss_weight: float = 0 - feat_match_loss_weight: float = 0 - l1_spec_loss_weight: float = 0 - l1_spec_loss_params: Dict = field( - default_factory=lambda: { - "use_mel": True, - "sample_rate": 22050, - "n_fft": 1024, - "hop_length": 256, - "win_length": 1024, - "n_mels": 80, - "mel_fmin": 0.0, - "mel_fmax": None, - } - ) - - # optimizer parameters - lr_gen: float = 1e-4 # Initial learning rate. - lr_disc: float = 1e-4 # Initial learning rate. - lr_scheduler_gen: str = None # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - # lr_scheduler_gen_params: dict = field(default_factory=lambda: {"gamma": 0.999, "last_epoch": -1}) - lr_scheduler_disc: str = None # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - # lr_scheduler_disc_params: dict = field(default_factory=lambda: {"gamma": 0.999, "last_epoch": -1}) - optimizer_params: Dict = field(default_factory=lambda: {"betas": [0.5, 0.9], "weight_decay": 0.0}) - steps_to_start_discriminator: int = 200000 - - def __post_init__(self): - super().__post_init__() - self.generator_model_params["cond_channels"] = self.audio.num_mels diff --git a/TTS/vocoder/configs/wavegrad_config.py b/TTS/vocoder/configs/wavegrad_config.py deleted file mode 100644 index c39813ae68c3d8c77614c9a5188ac5f2a59d991d..0000000000000000000000000000000000000000 --- a/TTS/vocoder/configs/wavegrad_config.py +++ /dev/null @@ -1,90 +0,0 @@ -from dataclasses import dataclass, field - -from TTS.vocoder.configs.shared_configs import BaseVocoderConfig -from TTS.vocoder.models.wavegrad import WavegradArgs - - -@dataclass -class WavegradConfig(BaseVocoderConfig): - """Defines parameters for WaveGrad vocoder. - Example: - - >>> from TTS.vocoder.configs import WavegradConfig - >>> config = WavegradConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `wavegrad`. - generator_model (str): One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `wavegrad`. - model_params (WavegradArgs): Model parameters. Check `WavegradArgs` for default values. - target_loss (str): - Target loss name that defines the quality of the model. Defaults to `avg_wavegrad_loss`. - epochs (int): - Number of epochs to traing the model. Defaults to 10000. - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 96. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 6144. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - mixed_precision (bool): - enable / disable mixed precision training. Default is True. - eval_split_size (int): - Number of samples used for evalutaion. Defaults to 50. - train_noise_schedule (dict): - Training noise schedule. Defaults to - `{"min_val": 1e-6, "max_val": 1e-2, "num_steps": 1000}` - test_noise_schedule (dict): - Inference noise schedule. For a better performance, you may need to use `bin/tune_wavegrad.py` to find a - better schedule. Defaults to - ` - { - "min_val": 1e-6, - "max_val": 1e-2, - "num_steps": 50, - } - ` - grad_clip (float): - Gradient clipping threshold. If <= 0.0, no clipping is applied. Defaults to 1.0 - lr (float): - Initila leraning rate. Defaults to 1e-4. - lr_scheduler (str): - One of the learning rate schedulers from `torch.optim.scheduler.*`. Defaults to `MultiStepLR`. - lr_scheduler_params (dict): - kwargs for the scheduler. Defaults to `{"gamma": 0.5, "milestones": [100000, 200000, 300000, 400000, 500000, 600000]}` - """ - - model: str = "wavegrad" - # Model specific params - generator_model: str = "wavegrad" - model_params: WavegradArgs = field(default_factory=WavegradArgs) - target_loss: str = "loss" # loss value to pick the best model to save after each epoch - - # Training - overrides - epochs: int = 10000 - batch_size: int = 96 - seq_len: int = 6144 - use_cache: bool = True - mixed_precision: bool = True - eval_split_size: int = 50 - - # NOISE SCHEDULE PARAMS - train_noise_schedule: dict = field(default_factory=lambda: {"min_val": 1e-6, "max_val": 1e-2, "num_steps": 1000}) - - test_noise_schedule: dict = field( - default_factory=lambda: { # inference noise schedule. Try TTS/bin/tune_wavegrad.py to find the optimal values. - "min_val": 1e-6, - "max_val": 1e-2, - "num_steps": 50, - } - ) - - # optimizer overrides - grad_clip: float = 1.0 - lr: float = 1e-4 # Initial learning rate. - lr_scheduler: str = "MultiStepLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_params: dict = field( - default_factory=lambda: {"gamma": 0.5, "milestones": [100000, 200000, 300000, 400000, 500000, 600000]} - ) diff --git a/TTS/vocoder/configs/wavernn_config.py b/TTS/vocoder/configs/wavernn_config.py deleted file mode 100644 index f39400e5e50b56d4ff79c8c148fd518b3ec3b390..0000000000000000000000000000000000000000 --- a/TTS/vocoder/configs/wavernn_config.py +++ /dev/null @@ -1,102 +0,0 @@ -from dataclasses import dataclass, field - -from TTS.vocoder.configs.shared_configs import BaseVocoderConfig -from TTS.vocoder.models.wavernn import WavernnArgs - - -@dataclass -class WavernnConfig(BaseVocoderConfig): - """Defines parameters for Wavernn vocoder. - Example: - - >>> from TTS.vocoder.configs import WavernnConfig - >>> config = WavernnConfig() - - Args: - model (str): - Model name used for selecting the right model at initialization. Defaults to `wavernn`. - mode (str): - Output mode of the WaveRNN vocoder. `mold` for Mixture of Logistic Distribution, `gauss` for a single - Gaussian Distribution and `bits` for quantized bits as the model's output. - mulaw (bool): - enable / disable the use of Mulaw quantization for training. Only applicable if `mode == 'bits'`. Defaults - to `True`. - generator_model (str): - One of the generators from TTS.vocoder.models.*`. Every other non-GAN vocoder model is - considered as a generator too. Defaults to `WaveRNN`. - wavernn_model_params (dict): - kwargs for the WaveRNN model. Defaults to - `{ - "rnn_dims": 512, - "fc_dims": 512, - "compute_dims": 128, - "res_out_dims": 128, - "num_res_blocks": 10, - "use_aux_net": True, - "use_upsample_net": True, - "upsample_factors": [4, 8, 8] - }` - batched (bool): - enable / disable the batched inference. It speeds up the inference by splitting the input into segments and - processing the segments in a batch. Then it merges the outputs with a certain overlap and smoothing. If - you set it False, without CUDA, it is too slow to be practical. Defaults to True. - target_samples (int): - Size of the segments in batched mode. Defaults to 11000. - overlap_sampels (int): - Size of the overlap between consecutive segments. Defaults to 550. - batch_size (int): - Batch size used at training. Larger values use more memory. Defaults to 256. - seq_len (int): - Audio segment length used at training. Larger values use more memory. Defaults to 1280. - - use_noise_augment (bool): - enable / disable random noise added to the input waveform. The noise is added after computing the - features. Defaults to True. - use_cache (bool): - enable / disable in memory caching of the computed features. It can cause OOM error if the system RAM is - not large enough. Defaults to True. - mixed_precision (bool): - enable / disable mixed precision training. Default is True. - eval_split_size (int): - Number of samples used for evalutaion. Defaults to 50. - num_epochs_before_test (int): - Number of epochs waited to run the next evalution. Since inference takes some time, it is better to - wait some number of epochs not ot waste training time. Defaults to 10. - grad_clip (float): - Gradient clipping threshold. If <= 0.0, no clipping is applied. Defaults to 4.0 - lr (float): - Initila leraning rate. Defaults to 1e-4. - lr_scheduler (str): - One of the learning rate schedulers from `torch.optim.scheduler.*`. Defaults to `MultiStepLR`. - lr_scheduler_params (dict): - kwargs for the scheduler. Defaults to `{"gamma": 0.5, "milestones": [200000, 400000, 600000]}` - """ - - model: str = "wavernn" - - # Model specific params - model_args: WavernnArgs = field(default_factory=WavernnArgs) - target_loss: str = "loss" - - # Inference - batched: bool = True - target_samples: int = 11000 - overlap_samples: int = 550 - - # Training - overrides - epochs: int = 10000 - batch_size: int = 256 - seq_len: int = 1280 - use_noise_augment: bool = False - use_cache: bool = True - mixed_precision: bool = True - eval_split_size: int = 50 - num_epochs_before_test: int = ( - 10 # number of epochs to wait until the next test run (synthesizing a full audio clip). - ) - - # optimizer overrides - grad_clip: float = 4.0 - lr: float = 1e-4 # Initial learning rate. - lr_scheduler: str = "MultiStepLR" # one of the schedulers from https:#pytorch.org/docs/stable/optim.html - lr_scheduler_params: dict = field(default_factory=lambda: {"gamma": 0.5, "milestones": [200000, 400000, 600000]}) diff --git a/TTS/vocoder/datasets/__init__.py b/TTS/vocoder/datasets/__init__.py deleted file mode 100644 index 871eb0d20276ffc691fd6da796bf65df6c23ea0d..0000000000000000000000000000000000000000 --- a/TTS/vocoder/datasets/__init__.py +++ /dev/null @@ -1,58 +0,0 @@ -from typing import List - -from coqpit import Coqpit -from torch.utils.data import Dataset - -from TTS.utils.audio import AudioProcessor -from TTS.vocoder.datasets.gan_dataset import GANDataset -from TTS.vocoder.datasets.preprocess import load_wav_data, load_wav_feat_data -from TTS.vocoder.datasets.wavegrad_dataset import WaveGradDataset -from TTS.vocoder.datasets.wavernn_dataset import WaveRNNDataset - - -def setup_dataset(config: Coqpit, ap: AudioProcessor, is_eval: bool, data_items: List, verbose: bool) -> Dataset: - if config.model.lower() in "gan": - dataset = GANDataset( - ap=ap, - items=data_items, - seq_len=config.seq_len, - hop_len=ap.hop_length, - pad_short=config.pad_short, - conv_pad=config.conv_pad, - return_pairs=config.diff_samples_for_G_and_D if "diff_samples_for_G_and_D" in config else False, - is_training=not is_eval, - return_segments=not is_eval, - use_noise_augment=config.use_noise_augment, - use_cache=config.use_cache, - verbose=verbose, - ) - dataset.shuffle_mapping() - elif config.model.lower() == "wavegrad": - dataset = WaveGradDataset( - ap=ap, - items=data_items, - seq_len=config.seq_len, - hop_len=ap.hop_length, - pad_short=config.pad_short, - conv_pad=config.conv_pad, - is_training=not is_eval, - return_segments=True, - use_noise_augment=False, - use_cache=config.use_cache, - verbose=verbose, - ) - elif config.model.lower() == "wavernn": - dataset = WaveRNNDataset( - ap=ap, - items=data_items, - seq_len=config.seq_len, - hop_len=ap.hop_length, - pad=config.model_params.pad, - mode=config.model_params.mode, - mulaw=config.model_params.mulaw, - is_training=not is_eval, - verbose=verbose, - ) - else: - raise ValueError(f" [!] Dataset for model {config.model.lower()} cannot be found.") - return dataset diff --git a/TTS/vocoder/datasets/gan_dataset.py b/TTS/vocoder/datasets/gan_dataset.py deleted file mode 100644 index 50c38c4deb8fd861f7cef8144df3098c3558aeb4..0000000000000000000000000000000000000000 --- a/TTS/vocoder/datasets/gan_dataset.py +++ /dev/null @@ -1,152 +0,0 @@ -import glob -import os -import random -from multiprocessing import Manager - -import numpy as np -import torch -from torch.utils.data import Dataset - - -class GANDataset(Dataset): - """ - GAN Dataset searchs for all the wav files under root path - and converts them to acoustic features on the fly and returns - random segments of (audio, feature) couples. - """ - - def __init__( - self, - ap, - items, - seq_len, - hop_len, - pad_short, - conv_pad=2, - return_pairs=False, - is_training=True, - return_segments=True, - use_noise_augment=False, - use_cache=False, - verbose=False, - ): - super().__init__() - self.ap = ap - self.item_list = items - self.compute_feat = not isinstance(items[0], (tuple, list)) - self.seq_len = seq_len - self.hop_len = hop_len - self.pad_short = pad_short - self.conv_pad = conv_pad - self.return_pairs = return_pairs - self.is_training = is_training - self.return_segments = return_segments - self.use_cache = use_cache - self.use_noise_augment = use_noise_augment - self.verbose = verbose - - assert seq_len % hop_len == 0, " [!] seq_len has to be a multiple of hop_len." - self.feat_frame_len = seq_len // hop_len + (2 * conv_pad) - - # map G and D instances - self.G_to_D_mappings = list(range(len(self.item_list))) - self.shuffle_mapping() - - # cache acoustic features - if use_cache: - self.create_feature_cache() - - def create_feature_cache(self): - self.manager = Manager() - self.cache = self.manager.list() - self.cache += [None for _ in range(len(self.item_list))] - - @staticmethod - def find_wav_files(path): - return glob.glob(os.path.join(path, "**", "*.wav"), recursive=True) - - def __len__(self): - return len(self.item_list) - - def __getitem__(self, idx): - """Return different items for Generator and Discriminator and - cache acoustic features""" - - # set the seed differently for each worker - if torch.utils.data.get_worker_info(): - random.seed(torch.utils.data.get_worker_info().seed) - - if self.return_segments: - item1 = self.load_item(idx) - if self.return_pairs: - idx2 = self.G_to_D_mappings[idx] - item2 = self.load_item(idx2) - return item1, item2 - return item1 - item1 = self.load_item(idx) - return item1 - - def _pad_short_samples(self, audio, mel=None): - """Pad samples shorter than the output sequence length""" - if len(audio) < self.seq_len: - audio = np.pad(audio, (0, self.seq_len - len(audio)), mode="constant", constant_values=0.0) - - if mel is not None and mel.shape[1] < self.feat_frame_len: - pad_value = self.ap.melspectrogram(np.zeros([self.ap.win_length]))[:, 0] - mel = np.pad( - mel, - ([0, 0], [0, self.feat_frame_len - mel.shape[1]]), - mode="constant", - constant_values=pad_value.mean(), - ) - return audio, mel - - def shuffle_mapping(self): - random.shuffle(self.G_to_D_mappings) - - def load_item(self, idx): - """load (audio, feat) couple""" - if self.compute_feat: - # compute features from wav - wavpath = self.item_list[idx] - # print(wavpath) - - if self.use_cache and self.cache[idx] is not None: - audio, mel = self.cache[idx] - else: - audio = self.ap.load_wav(wavpath) - mel = self.ap.melspectrogram(audio) - audio, mel = self._pad_short_samples(audio, mel) - else: - # load precomputed features - wavpath, feat_path = self.item_list[idx] - - if self.use_cache and self.cache[idx] is not None: - audio, mel = self.cache[idx] - else: - audio = self.ap.load_wav(wavpath) - mel = np.load(feat_path) - audio, mel = self._pad_short_samples(audio, mel) - - # correct the audio length wrt padding applied in stft - audio = np.pad(audio, (0, self.hop_len), mode="edge") - audio = audio[: mel.shape[-1] * self.hop_len] - assert ( - mel.shape[-1] * self.hop_len == audio.shape[-1] - ), f" [!] {mel.shape[-1] * self.hop_len} vs {audio.shape[-1]}" - - audio = torch.from_numpy(audio).float().unsqueeze(0) - mel = torch.from_numpy(mel).float().squeeze(0) - - if self.return_segments: - max_mel_start = mel.shape[1] - self.feat_frame_len - mel_start = random.randint(0, max_mel_start) - mel_end = mel_start + self.feat_frame_len - mel = mel[:, mel_start:mel_end] - - audio_start = mel_start * self.hop_len - audio = audio[:, audio_start : audio_start + self.seq_len] - - if self.use_noise_augment and self.is_training and self.return_segments: - audio = audio + (1 / 32768) * torch.randn_like(audio) - return (mel, audio) diff --git a/TTS/vocoder/datasets/preprocess.py b/TTS/vocoder/datasets/preprocess.py deleted file mode 100644 index 0f69b812fa58949eadc78b450114f03b19e5c80c..0000000000000000000000000000000000000000 --- a/TTS/vocoder/datasets/preprocess.py +++ /dev/null @@ -1,70 +0,0 @@ -import glob -import os -from pathlib import Path - -import numpy as np -from coqpit import Coqpit -from tqdm import tqdm - -from TTS.utils.audio import AudioProcessor - - -def preprocess_wav_files(out_path: str, config: Coqpit, ap: AudioProcessor): - """Process wav and compute mel and quantized wave signal. - It is mainly used by WaveRNN dataloader. - - Args: - out_path (str): Parent folder path to save the files. - config (Coqpit): Model config. - ap (AudioProcessor): Audio processor. - """ - os.makedirs(os.path.join(out_path, "quant"), exist_ok=True) - os.makedirs(os.path.join(out_path, "mel"), exist_ok=True) - wav_files = find_wav_files(config.data_path) - for path in tqdm(wav_files): - wav_name = Path(path).stem - quant_path = os.path.join(out_path, "quant", wav_name + ".npy") - mel_path = os.path.join(out_path, "mel", wav_name + ".npy") - y = ap.load_wav(path) - mel = ap.melspectrogram(y) - np.save(mel_path, mel) - if isinstance(config.mode, int): - quant = ap.mulaw_encode(y, qc=config.mode) if config.model_args.mulaw else ap.quantize(y, bits=config.mode) - np.save(quant_path, quant) - - -def find_wav_files(data_path, file_ext="wav"): - wav_paths = glob.glob(os.path.join(data_path, "**", f"*.{file_ext}"), recursive=True) - return wav_paths - - -def find_feat_files(data_path): - feat_paths = glob.glob(os.path.join(data_path, "**", "*.npy"), recursive=True) - return feat_paths - - -def load_wav_data(data_path, eval_split_size, file_ext="wav"): - wav_paths = find_wav_files(data_path, file_ext=file_ext) - assert len(wav_paths) > 0, f" [!] {data_path} is empty." - np.random.seed(0) - np.random.shuffle(wav_paths) - return wav_paths[:eval_split_size], wav_paths[eval_split_size:] - - -def load_wav_feat_data(data_path, feat_path, eval_split_size): - wav_paths = find_wav_files(data_path) - feat_paths = find_feat_files(feat_path) - - wav_paths.sort(key=lambda x: Path(x).stem) - feat_paths.sort(key=lambda x: Path(x).stem) - - assert len(wav_paths) == len(feat_paths), f" [!] {len(wav_paths)} vs {feat_paths}" - for wav, feat in zip(wav_paths, feat_paths): - wav_name = Path(wav).stem - feat_name = Path(feat).stem - assert wav_name == feat_name - - items = list(zip(wav_paths, feat_paths)) - np.random.seed(0) - np.random.shuffle(items) - return items[:eval_split_size], items[eval_split_size:] diff --git a/TTS/vocoder/datasets/wavegrad_dataset.py b/TTS/vocoder/datasets/wavegrad_dataset.py deleted file mode 100644 index 305fe430e3da880c03aee625525ce825c8ef87a3..0000000000000000000000000000000000000000 --- a/TTS/vocoder/datasets/wavegrad_dataset.py +++ /dev/null @@ -1,151 +0,0 @@ -import glob -import os -import random -from multiprocessing import Manager -from typing import List, Tuple - -import numpy as np -import torch -from torch.utils.data import Dataset - - -class WaveGradDataset(Dataset): - """ - WaveGrad Dataset searchs for all the wav files under root path - and converts them to acoustic features on the fly and returns - random segments of (audio, feature) couples. - """ - - def __init__( - self, - ap, - items, - seq_len, - hop_len, - pad_short, - conv_pad=2, - is_training=True, - return_segments=True, - use_noise_augment=False, - use_cache=False, - verbose=False, - ): - super().__init__() - self.ap = ap - self.item_list = items - self.seq_len = seq_len if return_segments else None - self.hop_len = hop_len - self.pad_short = pad_short - self.conv_pad = conv_pad - self.is_training = is_training - self.return_segments = return_segments - self.use_cache = use_cache - self.use_noise_augment = use_noise_augment - self.verbose = verbose - - if return_segments: - assert seq_len % hop_len == 0, " [!] seq_len has to be a multiple of hop_len." - self.feat_frame_len = seq_len // hop_len + (2 * conv_pad) - - # cache acoustic features - if use_cache: - self.create_feature_cache() - - def create_feature_cache(self): - self.manager = Manager() - self.cache = self.manager.list() - self.cache += [None for _ in range(len(self.item_list))] - - @staticmethod - def find_wav_files(path): - return glob.glob(os.path.join(path, "**", "*.wav"), recursive=True) - - def __len__(self): - return len(self.item_list) - - def __getitem__(self, idx): - item = self.load_item(idx) - return item - - def load_test_samples(self, num_samples: int) -> List[Tuple]: - """Return test samples. - - Args: - num_samples (int): Number of samples to return. - - Returns: - List[Tuple]: melspectorgram and audio. - - Shapes: - - melspectrogram (Tensor): :math:`[C, T]` - - audio (Tensor): :math:`[T_audio]` - """ - samples = [] - return_segments = self.return_segments - self.return_segments = False - for idx in range(num_samples): - mel, audio = self.load_item(idx) - samples.append([mel, audio]) - self.return_segments = return_segments - return samples - - def load_item(self, idx): - """load (audio, feat) couple""" - # compute features from wav - wavpath = self.item_list[idx] - - if self.use_cache and self.cache[idx] is not None: - audio = self.cache[idx] - else: - audio = self.ap.load_wav(wavpath) - - if self.return_segments: - # correct audio length wrt segment length - if audio.shape[-1] < self.seq_len + self.pad_short: - audio = np.pad( - audio, (0, self.seq_len + self.pad_short - len(audio)), mode="constant", constant_values=0.0 - ) - assert ( - audio.shape[-1] >= self.seq_len + self.pad_short - ), f"{audio.shape[-1]} vs {self.seq_len + self.pad_short}" - - # correct the audio length wrt hop length - p = (audio.shape[-1] // self.hop_len + 1) * self.hop_len - audio.shape[-1] - audio = np.pad(audio, (0, p), mode="constant", constant_values=0.0) - - if self.use_cache: - self.cache[idx] = audio - - if self.return_segments: - max_start = len(audio) - self.seq_len - start = random.randint(0, max_start) - end = start + self.seq_len - audio = audio[start:end] - - if self.use_noise_augment and self.is_training and self.return_segments: - audio = audio + (1 / 32768) * torch.randn_like(audio) - - mel = self.ap.melspectrogram(audio) - mel = mel[..., :-1] # ignore the padding - - audio = torch.from_numpy(audio).float() - mel = torch.from_numpy(mel).float().squeeze(0) - return (mel, audio) - - @staticmethod - def collate_full_clips(batch): - """This is used in tune_wavegrad.py. - It pads sequences to the max length.""" - max_mel_length = max([b[0].shape[1] for b in batch]) if len(batch) > 1 else batch[0][0].shape[1] - max_audio_length = max([b[1].shape[0] for b in batch]) if len(batch) > 1 else batch[0][1].shape[0] - - mels = torch.zeros([len(batch), batch[0][0].shape[0], max_mel_length]) - audios = torch.zeros([len(batch), max_audio_length]) - - for idx, b in enumerate(batch): - mel = b[0] - audio = b[1] - mels[idx, :, : mel.shape[1]] = mel - audios[idx, : audio.shape[0]] = audio - - return mels, audios diff --git a/TTS/vocoder/datasets/wavernn_dataset.py b/TTS/vocoder/datasets/wavernn_dataset.py deleted file mode 100644 index c3907964285f2a11de401e40e78e8cd4dd6a2918..0000000000000000000000000000000000000000 --- a/TTS/vocoder/datasets/wavernn_dataset.py +++ /dev/null @@ -1,114 +0,0 @@ -import numpy as np -import torch -from torch.utils.data import Dataset - - -class WaveRNNDataset(Dataset): - """ - WaveRNN Dataset searchs for all the wav files under root path - and converts them to acoustic features on the fly. - """ - - def __init__( - self, ap, items, seq_len, hop_len, pad, mode, mulaw, is_training=True, verbose=False, return_segments=True - ): - super().__init__() - self.ap = ap - self.compute_feat = not isinstance(items[0], (tuple, list)) - self.item_list = items - self.seq_len = seq_len - self.hop_len = hop_len - self.mel_len = seq_len // hop_len - self.pad = pad - self.mode = mode - self.mulaw = mulaw - self.is_training = is_training - self.verbose = verbose - self.return_segments = return_segments - - assert self.seq_len % self.hop_len == 0 - - def __len__(self): - return len(self.item_list) - - def __getitem__(self, index): - item = self.load_item(index) - return item - - def load_test_samples(self, num_samples): - samples = [] - return_segments = self.return_segments - self.return_segments = False - for idx in range(num_samples): - mel, audio, _ = self.load_item(idx) - samples.append([mel, audio]) - self.return_segments = return_segments - return samples - - def load_item(self, index): - """ - load (audio, feat) couple if feature_path is set - else compute it on the fly - """ - if self.compute_feat: - wavpath = self.item_list[index] - audio = self.ap.load_wav(wavpath) - if self.return_segments: - min_audio_len = 2 * self.seq_len + (2 * self.pad * self.hop_len) - else: - min_audio_len = audio.shape[0] + (2 * self.pad * self.hop_len) - if audio.shape[0] < min_audio_len: - print(" [!] Instance is too short! : {}".format(wavpath)) - audio = np.pad(audio, [0, min_audio_len - audio.shape[0] + self.hop_len]) - mel = self.ap.melspectrogram(audio) - - if self.mode in ["gauss", "mold"]: - x_input = audio - elif isinstance(self.mode, int): - x_input = ( - self.ap.mulaw_encode(audio, qc=self.mode) if self.mulaw else self.ap.quantize(audio, bits=self.mode) - ) - else: - raise RuntimeError("Unknown dataset mode - ", self.mode) - - else: - wavpath, feat_path = self.item_list[index] - mel = np.load(feat_path.replace("/quant/", "/mel/")) - - if mel.shape[-1] < self.mel_len + 2 * self.pad: - print(" [!] Instance is too short! : {}".format(wavpath)) - self.item_list[index] = self.item_list[index + 1] - feat_path = self.item_list[index] - mel = np.load(feat_path.replace("/quant/", "/mel/")) - if self.mode in ["gauss", "mold"]: - x_input = self.ap.load_wav(wavpath) - elif isinstance(self.mode, int): - x_input = np.load(feat_path.replace("/mel/", "/quant/")) - else: - raise RuntimeError("Unknown dataset mode - ", self.mode) - - return mel, x_input, wavpath - - def collate(self, batch): - mel_win = self.seq_len // self.hop_len + 2 * self.pad - max_offsets = [x[0].shape[-1] - (mel_win + 2 * self.pad) for x in batch] - - mel_offsets = [np.random.randint(0, offset) for offset in max_offsets] - sig_offsets = [(offset + self.pad) * self.hop_len for offset in mel_offsets] - - mels = [x[0][:, mel_offsets[i] : mel_offsets[i] + mel_win] for i, x in enumerate(batch)] - - coarse = [x[1][sig_offsets[i] : sig_offsets[i] + self.seq_len + 1] for i, x in enumerate(batch)] - - mels = np.stack(mels).astype(np.float32) - if self.mode in ["gauss", "mold"]: - coarse = np.stack(coarse).astype(np.float32) - coarse = torch.FloatTensor(coarse) - x_input = coarse[:, : self.seq_len] - elif isinstance(self.mode, int): - coarse = np.stack(coarse).astype(np.int64) - coarse = torch.LongTensor(coarse) - x_input = 2 * coarse[:, : self.seq_len].float() / (2**self.mode - 1.0) - 1.0 - y_coarse = coarse[:, 1:] - mels = torch.FloatTensor(mels) - return x_input, mels, y_coarse diff --git a/TTS/vocoder/layers/__init__.py b/TTS/vocoder/layers/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/vocoder/layers/hifigan.py b/TTS/vocoder/layers/hifigan.py deleted file mode 100644 index f51200724887b04746a125b7d7c368e0315ce7da..0000000000000000000000000000000000000000 --- a/TTS/vocoder/layers/hifigan.py +++ /dev/null @@ -1,53 +0,0 @@ -from torch import nn - - -# pylint: disable=dangerous-default-value -class ResStack(nn.Module): - def __init__(self, kernel, channel, padding, dilations=[1, 3, 5]): - super().__init__() - resstack = [] - for dilation in dilations: - resstack += [ - nn.LeakyReLU(0.2), - nn.ReflectionPad1d(dilation), - nn.utils.weight_norm(nn.Conv1d(channel, channel, kernel_size=kernel, dilation=dilation)), - nn.LeakyReLU(0.2), - nn.ReflectionPad1d(padding), - nn.utils.weight_norm(nn.Conv1d(channel, channel, kernel_size=1)), - ] - self.resstack = nn.Sequential(*resstack) - - self.shortcut = nn.utils.weight_norm(nn.Conv1d(channel, channel, kernel_size=1)) - - def forward(self, x): - x1 = self.shortcut(x) - x2 = self.resstack(x) - return x1 + x2 - - def remove_weight_norm(self): - nn.utils.remove_weight_norm(self.shortcut) - nn.utils.remove_weight_norm(self.resstack[2]) - nn.utils.remove_weight_norm(self.resstack[5]) - nn.utils.remove_weight_norm(self.resstack[8]) - nn.utils.remove_weight_norm(self.resstack[11]) - nn.utils.remove_weight_norm(self.resstack[14]) - nn.utils.remove_weight_norm(self.resstack[17]) - - -class MRF(nn.Module): - def __init__(self, kernels, channel, dilations=[1, 3, 5]): # # pylint: disable=dangerous-default-value - super().__init__() - self.resblock1 = ResStack(kernels[0], channel, 0, dilations) - self.resblock2 = ResStack(kernels[1], channel, 6, dilations) - self.resblock3 = ResStack(kernels[2], channel, 12, dilations) - - def forward(self, x): - x1 = self.resblock1(x) - x2 = self.resblock2(x) - x3 = self.resblock3(x) - return x1 + x2 + x3 - - def remove_weight_norm(self): - self.resblock1.remove_weight_norm() - self.resblock2.remove_weight_norm() - self.resblock3.remove_weight_norm() diff --git a/TTS/vocoder/layers/losses.py b/TTS/vocoder/layers/losses.py deleted file mode 100644 index befc43cca6ff3a3477cdcfbfcb0593d28f60d2c6..0000000000000000000000000000000000000000 --- a/TTS/vocoder/layers/losses.py +++ /dev/null @@ -1,368 +0,0 @@ -from typing import Dict, Union - -import torch -from torch import nn -from torch.nn import functional as F - -from TTS.utils.audio.torch_transforms import TorchSTFT -from TTS.vocoder.utils.distribution import discretized_mix_logistic_loss, gaussian_loss - -################################# -# GENERATOR LOSSES -################################# - - -class STFTLoss(nn.Module): - """STFT loss. Input generate and real waveforms are converted - to spectrograms compared with L1 and Spectral convergence losses. - It is from ParallelWaveGAN paper https://arxiv.org/pdf/1910.11480.pdf""" - - def __init__(self, n_fft, hop_length, win_length): - super().__init__() - self.n_fft = n_fft - self.hop_length = hop_length - self.win_length = win_length - self.stft = TorchSTFT(n_fft, hop_length, win_length) - - def forward(self, y_hat, y): - y_hat_M = self.stft(y_hat) - y_M = self.stft(y) - # magnitude loss - loss_mag = F.l1_loss(torch.log(y_M), torch.log(y_hat_M)) - # spectral convergence loss - loss_sc = torch.norm(y_M - y_hat_M, p="fro") / torch.norm(y_M, p="fro") - return loss_mag, loss_sc - - -class MultiScaleSTFTLoss(torch.nn.Module): - """Multi-scale STFT loss. Input generate and real waveforms are converted - to spectrograms compared with L1 and Spectral convergence losses. - It is from ParallelWaveGAN paper https://arxiv.org/pdf/1910.11480.pdf""" - - def __init__(self, n_ffts=(1024, 2048, 512), hop_lengths=(120, 240, 50), win_lengths=(600, 1200, 240)): - super().__init__() - self.loss_funcs = torch.nn.ModuleList() - for n_fft, hop_length, win_length in zip(n_ffts, hop_lengths, win_lengths): - self.loss_funcs.append(STFTLoss(n_fft, hop_length, win_length)) - - def forward(self, y_hat, y): - N = len(self.loss_funcs) - loss_sc = 0 - loss_mag = 0 - for f in self.loss_funcs: - lm, lsc = f(y_hat, y) - loss_mag += lm - loss_sc += lsc - loss_sc /= N - loss_mag /= N - return loss_mag, loss_sc - - -class L1SpecLoss(nn.Module): - """L1 Loss over Spectrograms as described in HiFiGAN paper https://arxiv.org/pdf/2010.05646.pdf""" - - def __init__( - self, sample_rate, n_fft, hop_length, win_length, mel_fmin=None, mel_fmax=None, n_mels=None, use_mel=True - ): - super().__init__() - self.use_mel = use_mel - self.stft = TorchSTFT( - n_fft, - hop_length, - win_length, - sample_rate=sample_rate, - mel_fmin=mel_fmin, - mel_fmax=mel_fmax, - n_mels=n_mels, - use_mel=use_mel, - ) - - def forward(self, y_hat, y): - y_hat_M = self.stft(y_hat) - y_M = self.stft(y) - # magnitude loss - loss_mag = F.l1_loss(torch.log(y_M), torch.log(y_hat_M)) - return loss_mag - - -class MultiScaleSubbandSTFTLoss(MultiScaleSTFTLoss): - """Multiscale STFT loss for multi band model outputs. - From MultiBand-MelGAN paper https://arxiv.org/abs/2005.05106""" - - # pylint: disable=no-self-use - def forward(self, y_hat, y): - y_hat = y_hat.view(-1, 1, y_hat.shape[2]) - y = y.view(-1, 1, y.shape[2]) - return super().forward(y_hat.squeeze(1), y.squeeze(1)) - - -class MSEGLoss(nn.Module): - """Mean Squared Generator Loss""" - - # pylint: disable=no-self-use - def forward(self, score_real): - loss_fake = F.mse_loss(score_real, score_real.new_ones(score_real.shape)) - return loss_fake - - -class HingeGLoss(nn.Module): - """Hinge Discriminator Loss""" - - # pylint: disable=no-self-use - def forward(self, score_real): - # TODO: this might be wrong - loss_fake = torch.mean(F.relu(1.0 - score_real)) - return loss_fake - - -################################## -# DISCRIMINATOR LOSSES -################################## - - -class MSEDLoss(nn.Module): - """Mean Squared Discriminator Loss""" - - def __init__( - self, - ): - super().__init__() - self.loss_func = nn.MSELoss() - - # pylint: disable=no-self-use - def forward(self, score_fake, score_real): - loss_real = self.loss_func(score_real, score_real.new_ones(score_real.shape)) - loss_fake = self.loss_func(score_fake, score_fake.new_zeros(score_fake.shape)) - loss_d = loss_real + loss_fake - return loss_d, loss_real, loss_fake - - -class HingeDLoss(nn.Module): - """Hinge Discriminator Loss""" - - # pylint: disable=no-self-use - def forward(self, score_fake, score_real): - loss_real = torch.mean(F.relu(1.0 - score_real)) - loss_fake = torch.mean(F.relu(1.0 + score_fake)) - loss_d = loss_real + loss_fake - return loss_d, loss_real, loss_fake - - -class MelganFeatureLoss(nn.Module): - def __init__( - self, - ): - super().__init__() - self.loss_func = nn.L1Loss() - - # pylint: disable=no-self-use - def forward(self, fake_feats, real_feats): - loss_feats = 0 - num_feats = 0 - for idx, _ in enumerate(fake_feats): - for fake_feat, real_feat in zip(fake_feats[idx], real_feats[idx]): - loss_feats += self.loss_func(fake_feat, real_feat) - num_feats += 1 - loss_feats = loss_feats / num_feats - return loss_feats - - -##################################### -# LOSS WRAPPERS -##################################### - - -def _apply_G_adv_loss(scores_fake, loss_func): - """Compute G adversarial loss function - and normalize values""" - adv_loss = 0 - if isinstance(scores_fake, list): - for score_fake in scores_fake: - fake_loss = loss_func(score_fake) - adv_loss += fake_loss - adv_loss /= len(scores_fake) - else: - fake_loss = loss_func(scores_fake) - adv_loss = fake_loss - return adv_loss - - -def _apply_D_loss(scores_fake, scores_real, loss_func): - """Compute D loss func and normalize loss values""" - loss = 0 - real_loss = 0 - fake_loss = 0 - if isinstance(scores_fake, list): - # multi-scale loss - for score_fake, score_real in zip(scores_fake, scores_real): - total_loss, real_loss, fake_loss = loss_func(score_fake=score_fake, score_real=score_real) - loss += total_loss - real_loss += real_loss - fake_loss += fake_loss - # normalize loss values with number of scales (discriminators) - loss /= len(scores_fake) - real_loss /= len(scores_real) - fake_loss /= len(scores_fake) - else: - # single scale loss - total_loss, real_loss, fake_loss = loss_func(scores_fake, scores_real) - loss = total_loss - return loss, real_loss, fake_loss - - -################################## -# MODEL LOSSES -################################## - - -class GeneratorLoss(nn.Module): - """Generator Loss Wrapper. Based on model configuration it sets a right set of loss functions and computes - losses. It allows to experiment with different combinations of loss functions with different models by just - changing configurations. - - Args: - C (AttrDict): model configuration. - """ - - def __init__(self, C): - super().__init__() - assert not ( - C.use_mse_gan_loss and C.use_hinge_gan_loss - ), " [!] Cannot use HingeGANLoss and MSEGANLoss together." - - self.use_stft_loss = C.use_stft_loss if "use_stft_loss" in C else False - self.use_subband_stft_loss = C.use_subband_stft_loss if "use_subband_stft_loss" in C else False - self.use_mse_gan_loss = C.use_mse_gan_loss if "use_mse_gan_loss" in C else False - self.use_hinge_gan_loss = C.use_hinge_gan_loss if "use_hinge_gan_loss" in C else False - self.use_feat_match_loss = C.use_feat_match_loss if "use_feat_match_loss" in C else False - self.use_l1_spec_loss = C.use_l1_spec_loss if "use_l1_spec_loss" in C else False - - self.stft_loss_weight = C.stft_loss_weight if "stft_loss_weight" in C else 0.0 - self.subband_stft_loss_weight = C.subband_stft_loss_weight if "subband_stft_loss_weight" in C else 0.0 - self.mse_gan_loss_weight = C.mse_G_loss_weight if "mse_G_loss_weight" in C else 0.0 - self.hinge_gan_loss_weight = C.hinge_G_loss_weight if "hinde_G_loss_weight" in C else 0.0 - self.feat_match_loss_weight = C.feat_match_loss_weight if "feat_match_loss_weight" in C else 0.0 - self.l1_spec_loss_weight = C.l1_spec_loss_weight if "l1_spec_loss_weight" in C else 0.0 - - if C.use_stft_loss: - self.stft_loss = MultiScaleSTFTLoss(**C.stft_loss_params) - if C.use_subband_stft_loss: - self.subband_stft_loss = MultiScaleSubbandSTFTLoss(**C.subband_stft_loss_params) - if C.use_mse_gan_loss: - self.mse_loss = MSEGLoss() - if C.use_hinge_gan_loss: - self.hinge_loss = HingeGLoss() - if C.use_feat_match_loss: - self.feat_match_loss = MelganFeatureLoss() - if C.use_l1_spec_loss: - assert C.audio["sample_rate"] == C.l1_spec_loss_params["sample_rate"] - self.l1_spec_loss = L1SpecLoss(**C.l1_spec_loss_params) - - def forward( - self, y_hat=None, y=None, scores_fake=None, feats_fake=None, feats_real=None, y_hat_sub=None, y_sub=None - ): - gen_loss = 0 - adv_loss = 0 - return_dict = {} - - # STFT Loss - if self.use_stft_loss: - stft_loss_mg, stft_loss_sc = self.stft_loss(y_hat[:, :, : y.size(2)].squeeze(1), y.squeeze(1)) - return_dict["G_stft_loss_mg"] = stft_loss_mg - return_dict["G_stft_loss_sc"] = stft_loss_sc - gen_loss = gen_loss + self.stft_loss_weight * (stft_loss_mg + stft_loss_sc) - - # L1 Spec loss - if self.use_l1_spec_loss: - l1_spec_loss = self.l1_spec_loss(y_hat, y) - return_dict["G_l1_spec_loss"] = l1_spec_loss - gen_loss = gen_loss + self.l1_spec_loss_weight * l1_spec_loss - - # subband STFT Loss - if self.use_subband_stft_loss: - subband_stft_loss_mg, subband_stft_loss_sc = self.subband_stft_loss(y_hat_sub, y_sub) - return_dict["G_subband_stft_loss_mg"] = subband_stft_loss_mg - return_dict["G_subband_stft_loss_sc"] = subband_stft_loss_sc - gen_loss = gen_loss + self.subband_stft_loss_weight * (subband_stft_loss_mg + subband_stft_loss_sc) - - # multiscale MSE adversarial loss - if self.use_mse_gan_loss and scores_fake is not None: - mse_fake_loss = _apply_G_adv_loss(scores_fake, self.mse_loss) - return_dict["G_mse_fake_loss"] = mse_fake_loss - adv_loss = adv_loss + self.mse_gan_loss_weight * mse_fake_loss - - # multiscale Hinge adversarial loss - if self.use_hinge_gan_loss and not scores_fake is not None: - hinge_fake_loss = _apply_G_adv_loss(scores_fake, self.hinge_loss) - return_dict["G_hinge_fake_loss"] = hinge_fake_loss - adv_loss = adv_loss + self.hinge_gan_loss_weight * hinge_fake_loss - - # Feature Matching Loss - if self.use_feat_match_loss and not feats_fake is None: - feat_match_loss = self.feat_match_loss(feats_fake, feats_real) - return_dict["G_feat_match_loss"] = feat_match_loss - adv_loss = adv_loss + self.feat_match_loss_weight * feat_match_loss - return_dict["loss"] = gen_loss + adv_loss - return_dict["G_gen_loss"] = gen_loss - return_dict["G_adv_loss"] = adv_loss - return return_dict - - -class DiscriminatorLoss(nn.Module): - """Like ```GeneratorLoss```""" - - def __init__(self, C): - super().__init__() - assert not ( - C.use_mse_gan_loss and C.use_hinge_gan_loss - ), " [!] Cannot use HingeGANLoss and MSEGANLoss together." - - self.use_mse_gan_loss = C.use_mse_gan_loss - self.use_hinge_gan_loss = C.use_hinge_gan_loss - - if C.use_mse_gan_loss: - self.mse_loss = MSEDLoss() - if C.use_hinge_gan_loss: - self.hinge_loss = HingeDLoss() - - def forward(self, scores_fake, scores_real): - loss = 0 - return_dict = {} - - if self.use_mse_gan_loss: - mse_D_loss, mse_D_real_loss, mse_D_fake_loss = _apply_D_loss( - scores_fake=scores_fake, scores_real=scores_real, loss_func=self.mse_loss - ) - return_dict["D_mse_gan_loss"] = mse_D_loss - return_dict["D_mse_gan_real_loss"] = mse_D_real_loss - return_dict["D_mse_gan_fake_loss"] = mse_D_fake_loss - loss += mse_D_loss - - if self.use_hinge_gan_loss: - hinge_D_loss, hinge_D_real_loss, hinge_D_fake_loss = _apply_D_loss( - scores_fake=scores_fake, scores_real=scores_real, loss_func=self.hinge_loss - ) - return_dict["D_hinge_gan_loss"] = hinge_D_loss - return_dict["D_hinge_gan_real_loss"] = hinge_D_real_loss - return_dict["D_hinge_gan_fake_loss"] = hinge_D_fake_loss - loss += hinge_D_loss - - return_dict["loss"] = loss - return return_dict - - -class WaveRNNLoss(nn.Module): - def __init__(self, wave_rnn_mode: Union[str, int]): - super().__init__() - if wave_rnn_mode == "mold": - self.loss_func = discretized_mix_logistic_loss - elif wave_rnn_mode == "gauss": - self.loss_func = gaussian_loss - elif isinstance(wave_rnn_mode, int): - self.loss_func = torch.nn.CrossEntropyLoss() - else: - raise ValueError(" [!] Unknown mode for Wavernn.") - - def forward(self, y_hat, y) -> Dict: - loss = self.loss_func(y_hat, y) - return {"loss": loss} diff --git a/TTS/vocoder/layers/lvc_block.py b/TTS/vocoder/layers/lvc_block.py deleted file mode 100644 index 8913a1132ec769fd304077412289c01c0d1cb17b..0000000000000000000000000000000000000000 --- a/TTS/vocoder/layers/lvc_block.py +++ /dev/null @@ -1,198 +0,0 @@ -import torch -import torch.nn.functional as F - - -class KernelPredictor(torch.nn.Module): - """Kernel predictor for the location-variable convolutions""" - - def __init__( # pylint: disable=dangerous-default-value - self, - cond_channels, - conv_in_channels, - conv_out_channels, - conv_layers, - conv_kernel_size=3, - kpnet_hidden_channels=64, - kpnet_conv_size=3, - kpnet_dropout=0.0, - kpnet_nonlinear_activation="LeakyReLU", - kpnet_nonlinear_activation_params={"negative_slope": 0.1}, - ): - """ - Args: - cond_channels (int): number of channel for the conditioning sequence, - conv_in_channels (int): number of channel for the input sequence, - conv_out_channels (int): number of channel for the output sequence, - conv_layers (int): - kpnet_ - """ - super().__init__() - - self.conv_in_channels = conv_in_channels - self.conv_out_channels = conv_out_channels - self.conv_kernel_size = conv_kernel_size - self.conv_layers = conv_layers - - l_w = conv_in_channels * conv_out_channels * conv_kernel_size * conv_layers - l_b = conv_out_channels * conv_layers - - padding = (kpnet_conv_size - 1) // 2 - self.input_conv = torch.nn.Sequential( - torch.nn.Conv1d(cond_channels, kpnet_hidden_channels, 5, padding=(5 - 1) // 2, bias=True), - getattr(torch.nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - ) - - self.residual_conv = torch.nn.Sequential( - torch.nn.Dropout(kpnet_dropout), - torch.nn.Conv1d(kpnet_hidden_channels, kpnet_hidden_channels, kpnet_conv_size, padding=padding, bias=True), - getattr(torch.nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - torch.nn.Conv1d(kpnet_hidden_channels, kpnet_hidden_channels, kpnet_conv_size, padding=padding, bias=True), - getattr(torch.nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - torch.nn.Dropout(kpnet_dropout), - torch.nn.Conv1d(kpnet_hidden_channels, kpnet_hidden_channels, kpnet_conv_size, padding=padding, bias=True), - getattr(torch.nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - torch.nn.Conv1d(kpnet_hidden_channels, kpnet_hidden_channels, kpnet_conv_size, padding=padding, bias=True), - getattr(torch.nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - torch.nn.Dropout(kpnet_dropout), - torch.nn.Conv1d(kpnet_hidden_channels, kpnet_hidden_channels, kpnet_conv_size, padding=padding, bias=True), - getattr(torch.nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - torch.nn.Conv1d(kpnet_hidden_channels, kpnet_hidden_channels, kpnet_conv_size, padding=padding, bias=True), - getattr(torch.nn, kpnet_nonlinear_activation)(**kpnet_nonlinear_activation_params), - ) - - self.kernel_conv = torch.nn.Conv1d(kpnet_hidden_channels, l_w, kpnet_conv_size, padding=padding, bias=True) - self.bias_conv = torch.nn.Conv1d(kpnet_hidden_channels, l_b, kpnet_conv_size, padding=padding, bias=True) - - def forward(self, c): - """ - Args: - c (Tensor): the conditioning sequence (batch, cond_channels, cond_length) - Returns: - """ - batch, _, cond_length = c.shape - - c = self.input_conv(c) - c = c + self.residual_conv(c) - k = self.kernel_conv(c) - b = self.bias_conv(c) - - kernels = k.contiguous().view( - batch, self.conv_layers, self.conv_in_channels, self.conv_out_channels, self.conv_kernel_size, cond_length - ) - bias = b.contiguous().view(batch, self.conv_layers, self.conv_out_channels, cond_length) - return kernels, bias - - -class LVCBlock(torch.nn.Module): - """the location-variable convolutions""" - - def __init__( - self, - in_channels, - cond_channels, - upsample_ratio, - conv_layers=4, - conv_kernel_size=3, - cond_hop_length=256, - kpnet_hidden_channels=64, - kpnet_conv_size=3, - kpnet_dropout=0.0, - ): - super().__init__() - - self.cond_hop_length = cond_hop_length - self.conv_layers = conv_layers - self.conv_kernel_size = conv_kernel_size - self.convs = torch.nn.ModuleList() - - self.upsample = torch.nn.ConvTranspose1d( - in_channels, - in_channels, - kernel_size=upsample_ratio * 2, - stride=upsample_ratio, - padding=upsample_ratio // 2 + upsample_ratio % 2, - output_padding=upsample_ratio % 2, - ) - - self.kernel_predictor = KernelPredictor( - cond_channels=cond_channels, - conv_in_channels=in_channels, - conv_out_channels=2 * in_channels, - conv_layers=conv_layers, - conv_kernel_size=conv_kernel_size, - kpnet_hidden_channels=kpnet_hidden_channels, - kpnet_conv_size=kpnet_conv_size, - kpnet_dropout=kpnet_dropout, - ) - - for i in range(conv_layers): - padding = (3**i) * int((conv_kernel_size - 1) / 2) - conv = torch.nn.Conv1d( - in_channels, in_channels, kernel_size=conv_kernel_size, padding=padding, dilation=3**i - ) - - self.convs.append(conv) - - def forward(self, x, c): - """forward propagation of the location-variable convolutions. - Args: - x (Tensor): the input sequence (batch, in_channels, in_length) - c (Tensor): the conditioning sequence (batch, cond_channels, cond_length) - - Returns: - Tensor: the output sequence (batch, in_channels, in_length) - """ - in_channels = x.shape[1] - kernels, bias = self.kernel_predictor(c) - - x = F.leaky_relu(x, 0.2) - x = self.upsample(x) - - for i in range(self.conv_layers): - y = F.leaky_relu(x, 0.2) - y = self.convs[i](y) - y = F.leaky_relu(y, 0.2) - - k = kernels[:, i, :, :, :, :] - b = bias[:, i, :, :] - y = self.location_variable_convolution(y, k, b, 1, self.cond_hop_length) - x = x + torch.sigmoid(y[:, :in_channels, :]) * torch.tanh(y[:, in_channels:, :]) - return x - - @staticmethod - def location_variable_convolution(x, kernel, bias, dilation, hop_size): - """perform location-variable convolution operation on the input sequence (x) using the local convolution kernl. - Time: 414 μs ± 309 ns per loop (mean ± std. dev. of 7 runs, 1000 loops each), test on NVIDIA V100. - Args: - x (Tensor): the input sequence (batch, in_channels, in_length). - kernel (Tensor): the local convolution kernel (batch, in_channel, out_channels, kernel_size, kernel_length) - bias (Tensor): the bias for the local convolution (batch, out_channels, kernel_length) - dilation (int): the dilation of convolution. - hop_size (int): the hop_size of the conditioning sequence. - Returns: - (Tensor): the output sequence after performing local convolution. (batch, out_channels, in_length). - """ - batch, _, in_length = x.shape - batch, _, out_channels, kernel_size, kernel_length = kernel.shape - - assert in_length == ( - kernel_length * hop_size - ), f"length of (x, kernel) is not matched, {in_length} vs {kernel_length * hop_size}" - - padding = dilation * int((kernel_size - 1) / 2) - x = F.pad(x, (padding, padding), "constant", 0) # (batch, in_channels, in_length + 2*padding) - x = x.unfold(2, hop_size + 2 * padding, hop_size) # (batch, in_channels, kernel_length, hop_size + 2*padding) - - if hop_size < dilation: - x = F.pad(x, (0, dilation), "constant", 0) - x = x.unfold( - 3, dilation, dilation - ) # (batch, in_channels, kernel_length, (hop_size + 2*padding)/dilation, dilation) - x = x[:, :, :, :, :hop_size] - x = x.transpose(3, 4) # (batch, in_channels, kernel_length, dilation, (hop_size + 2*padding)/dilation) - x = x.unfold(4, kernel_size, 1) # (batch, in_channels, kernel_length, dilation, _, kernel_size) - - o = torch.einsum("bildsk,biokl->bolsd", x, kernel) - o = o + bias.unsqueeze(-1).unsqueeze(-1) - o = o.contiguous().view(batch, out_channels, -1) - return o diff --git a/TTS/vocoder/layers/melgan.py b/TTS/vocoder/layers/melgan.py deleted file mode 100644 index 4bb328e98354dc0683b3c5b4f4160dd54d92fabd..0000000000000000000000000000000000000000 --- a/TTS/vocoder/layers/melgan.py +++ /dev/null @@ -1,42 +0,0 @@ -from torch import nn -from torch.nn.utils import weight_norm - - -class ResidualStack(nn.Module): - def __init__(self, channels, num_res_blocks, kernel_size): - super().__init__() - - assert (kernel_size - 1) % 2 == 0, " [!] kernel_size has to be odd." - base_padding = (kernel_size - 1) // 2 - - self.blocks = nn.ModuleList() - for idx in range(num_res_blocks): - layer_kernel_size = kernel_size - layer_dilation = layer_kernel_size**idx - layer_padding = base_padding * layer_dilation - self.blocks += [ - nn.Sequential( - nn.LeakyReLU(0.2), - nn.ReflectionPad1d(layer_padding), - weight_norm( - nn.Conv1d(channels, channels, kernel_size=kernel_size, dilation=layer_dilation, bias=True) - ), - nn.LeakyReLU(0.2), - weight_norm(nn.Conv1d(channels, channels, kernel_size=1, bias=True)), - ) - ] - - self.shortcuts = nn.ModuleList( - [weight_norm(nn.Conv1d(channels, channels, kernel_size=1, bias=True)) for i in range(num_res_blocks)] - ) - - def forward(self, x): - for block, shortcut in zip(self.blocks, self.shortcuts): - x = shortcut(x) + block(x) - return x - - def remove_weight_norm(self): - for block, shortcut in zip(self.blocks, self.shortcuts): - nn.utils.remove_weight_norm(block[2]) - nn.utils.remove_weight_norm(block[4]) - nn.utils.remove_weight_norm(shortcut) diff --git a/TTS/vocoder/layers/parallel_wavegan.py b/TTS/vocoder/layers/parallel_wavegan.py deleted file mode 100644 index 51142e5eceb20564585635a9040a24bc8eb3b6e3..0000000000000000000000000000000000000000 --- a/TTS/vocoder/layers/parallel_wavegan.py +++ /dev/null @@ -1,77 +0,0 @@ -import torch -from torch.nn import functional as F - - -class ResidualBlock(torch.nn.Module): - """Residual block module in WaveNet.""" - - def __init__( - self, - kernel_size=3, - res_channels=64, - gate_channels=128, - skip_channels=64, - aux_channels=80, - dropout=0.0, - dilation=1, - bias=True, - use_causal_conv=False, - ): - super().__init__() - self.dropout = dropout - # no future time stamps available - if use_causal_conv: - padding = (kernel_size - 1) * dilation - else: - assert (kernel_size - 1) % 2 == 0, "Not support even number kernel size." - padding = (kernel_size - 1) // 2 * dilation - self.use_causal_conv = use_causal_conv - - # dilation conv - self.conv = torch.nn.Conv1d( - res_channels, gate_channels, kernel_size, padding=padding, dilation=dilation, bias=bias - ) - - # local conditioning - if aux_channels > 0: - self.conv1x1_aux = torch.nn.Conv1d(aux_channels, gate_channels, 1, bias=False) - else: - self.conv1x1_aux = None - - # conv output is split into two groups - gate_out_channels = gate_channels // 2 - self.conv1x1_out = torch.nn.Conv1d(gate_out_channels, res_channels, 1, bias=bias) - self.conv1x1_skip = torch.nn.Conv1d(gate_out_channels, skip_channels, 1, bias=bias) - - def forward(self, x, c): - """ - x: B x D_res x T - c: B x D_aux x T - """ - residual = x - x = F.dropout(x, p=self.dropout, training=self.training) - x = self.conv(x) - - # remove future time steps if use_causal_conv conv - x = x[:, :, : residual.size(-1)] if self.use_causal_conv else x - - # split into two part for gated activation - splitdim = 1 - xa, xb = x.split(x.size(splitdim) // 2, dim=splitdim) - - # local conditioning - if c is not None: - assert self.conv1x1_aux is not None - c = self.conv1x1_aux(c) - ca, cb = c.split(c.size(splitdim) // 2, dim=splitdim) - xa, xb = xa + ca, xb + cb - - x = torch.tanh(xa) * torch.sigmoid(xb) - - # for skip connection - s = self.conv1x1_skip(x) - - # for residual connection - x = (self.conv1x1_out(x) + residual) * (0.5**2) - - return x, s diff --git a/TTS/vocoder/layers/pqmf.py b/TTS/vocoder/layers/pqmf.py deleted file mode 100644 index 6253efbbefc32222464a97bee99707d46bcdcf8b..0000000000000000000000000000000000000000 --- a/TTS/vocoder/layers/pqmf.py +++ /dev/null @@ -1,53 +0,0 @@ -import numpy as np -import torch -import torch.nn.functional as F -from scipy import signal as sig - - -# adapted from -# https://github.com/kan-bayashi/ParallelWaveGAN/tree/master/parallel_wavegan -class PQMF(torch.nn.Module): - def __init__(self, N=4, taps=62, cutoff=0.15, beta=9.0): - super().__init__() - - self.N = N - self.taps = taps - self.cutoff = cutoff - self.beta = beta - - QMF = sig.firwin(taps + 1, cutoff, window=("kaiser", beta)) - H = np.zeros((N, len(QMF))) - G = np.zeros((N, len(QMF))) - for k in range(N): - constant_factor = ( - (2 * k + 1) * (np.pi / (2 * N)) * (np.arange(taps + 1) - ((taps - 1) / 2)) - ) # TODO: (taps - 1) -> taps - phase = (-1) ** k * np.pi / 4 - H[k] = 2 * QMF * np.cos(constant_factor + phase) - - G[k] = 2 * QMF * np.cos(constant_factor - phase) - - H = torch.from_numpy(H[:, None, :]).float() - G = torch.from_numpy(G[None, :, :]).float() - - self.register_buffer("H", H) - self.register_buffer("G", G) - - updown_filter = torch.zeros((N, N, N)).float() - for k in range(N): - updown_filter[k, k, 0] = 1.0 - self.register_buffer("updown_filter", updown_filter) - self.N = N - - self.pad_fn = torch.nn.ConstantPad1d(taps // 2, 0.0) - - def forward(self, x): - return self.analysis(x) - - def analysis(self, x): - return F.conv1d(x, self.H, padding=self.taps // 2, stride=self.N) - - def synthesis(self, x): - x = F.conv_transpose1d(x, self.updown_filter * self.N, stride=self.N) - x = F.conv1d(x, self.G, padding=self.taps // 2) - return x diff --git a/TTS/vocoder/layers/qmf.dat b/TTS/vocoder/layers/qmf.dat deleted file mode 100644 index 4793abbfb3c67b88fed43f262c28f6fc2f26e5ca..0000000000000000000000000000000000000000 --- a/TTS/vocoder/layers/qmf.dat +++ /dev/null @@ -1,640 +0,0 @@ - 0.0000000e+000 - -5.5252865e-004 - -5.6176926e-004 - -4.9475181e-004 - -4.8752280e-004 - -4.8937912e-004 - -5.0407143e-004 - -5.2265643e-004 - -5.4665656e-004 - -5.6778026e-004 - -5.8709305e-004 - -6.1327474e-004 - -6.3124935e-004 - -6.5403334e-004 - -6.7776908e-004 - -6.9416146e-004 - -7.1577365e-004 - -7.2550431e-004 - -7.4409419e-004 - -7.4905981e-004 - -7.6813719e-004 - -7.7248486e-004 - -7.8343323e-004 - -7.7798695e-004 - -7.8036647e-004 - -7.8014496e-004 - -7.7579773e-004 - -7.6307936e-004 - -7.5300014e-004 - -7.3193572e-004 - -7.2153920e-004 - -6.9179375e-004 - -6.6504151e-004 - -6.3415949e-004 - -5.9461189e-004 - -5.5645764e-004 - -5.1455722e-004 - -4.6063255e-004 - -4.0951215e-004 - -3.5011759e-004 - -2.8969812e-004 - -2.0983373e-004 - -1.4463809e-004 - -6.1733441e-005 - 1.3494974e-005 - 1.0943831e-004 - 2.0430171e-004 - 2.9495311e-004 - 4.0265402e-004 - 5.1073885e-004 - 6.2393761e-004 - 7.4580259e-004 - 8.6084433e-004 - 9.8859883e-004 - 1.1250155e-003 - 1.2577885e-003 - 1.3902495e-003 - 1.5443220e-003 - 1.6868083e-003 - 1.8348265e-003 - 1.9841141e-003 - 2.1461584e-003 - 2.3017255e-003 - 2.4625617e-003 - 2.6201759e-003 - 2.7870464e-003 - 2.9469448e-003 - 3.1125421e-003 - 3.2739613e-003 - 3.4418874e-003 - 3.6008268e-003 - 3.7603923e-003 - 3.9207432e-003 - 4.0819753e-003 - 4.2264269e-003 - 4.3730720e-003 - 4.5209853e-003 - 4.6606461e-003 - 4.7932561e-003 - 4.9137604e-003 - 5.0393023e-003 - 5.1407354e-003 - 5.2461166e-003 - 5.3471681e-003 - 5.4196776e-003 - 5.4876040e-003 - 5.5475715e-003 - 5.5938023e-003 - 5.6220643e-003 - 5.6455197e-003 - 5.6389200e-003 - 5.6266114e-003 - 5.5917129e-003 - 5.5404364e-003 - 5.4753783e-003 - 5.3838976e-003 - 5.2715759e-003 - 5.1382275e-003 - 4.9839688e-003 - 4.8109469e-003 - 4.6039530e-003 - 4.3801862e-003 - 4.1251642e-003 - 3.8456408e-003 - 3.5401247e-003 - 3.2091886e-003 - 2.8446758e-003 - 2.4508540e-003 - 2.0274176e-003 - 1.5784683e-003 - 1.0902329e-003 - 5.8322642e-004 - 2.7604519e-005 - -5.4642809e-004 - -1.1568136e-003 - -1.8039473e-003 - -2.4826724e-003 - -3.1933778e-003 - -3.9401124e-003 - -4.7222596e-003 - -5.5337211e-003 - -6.3792293e-003 - -7.2615817e-003 - -8.1798233e-003 - -9.1325330e-003 - -1.0115022e-002 - -1.1131555e-002 - -1.2185000e-002 - -1.3271822e-002 - -1.4390467e-002 - -1.5540555e-002 - -1.6732471e-002 - -1.7943338e-002 - -1.9187243e-002 - -2.0453179e-002 - -2.1746755e-002 - -2.3068017e-002 - -2.4416099e-002 - -2.5787585e-002 - -2.7185943e-002 - -2.8607217e-002 - -3.0050266e-002 - -3.1501761e-002 - -3.2975408e-002 - -3.4462095e-002 - -3.5969756e-002 - -3.7481285e-002 - -3.9005368e-002 - -4.0534917e-002 - -4.2064909e-002 - -4.3609754e-002 - -4.5148841e-002 - -4.6684303e-002 - -4.8216572e-002 - -4.9738576e-002 - -5.1255616e-002 - -5.2763075e-002 - -5.4245277e-002 - -5.5717365e-002 - -5.7161645e-002 - -5.8591568e-002 - -5.9983748e-002 - -6.1345517e-002 - -6.2685781e-002 - -6.3971590e-002 - -6.5224711e-002 - -6.6436751e-002 - -6.7607599e-002 - -6.8704383e-002 - -6.9763024e-002 - -7.0762871e-002 - -7.1700267e-002 - -7.2568258e-002 - -7.3362026e-002 - -7.4100364e-002 - -7.4745256e-002 - -7.5313734e-002 - -7.5800836e-002 - -7.6199248e-002 - -7.6499217e-002 - -7.6709349e-002 - -7.6817398e-002 - -7.6823001e-002 - -7.6720492e-002 - -7.6505072e-002 - -7.6174832e-002 - -7.5730576e-002 - -7.5157626e-002 - -7.4466439e-002 - -7.3640601e-002 - -7.2677464e-002 - -7.1582636e-002 - -7.0353307e-002 - -6.8966401e-002 - -6.7452502e-002 - -6.5769067e-002 - -6.3944481e-002 - -6.1960278e-002 - -5.9816657e-002 - -5.7515269e-002 - -5.5046003e-002 - -5.2409382e-002 - -4.9597868e-002 - -4.6630331e-002 - -4.3476878e-002 - -4.0145828e-002 - -3.6641812e-002 - -3.2958393e-002 - -2.9082401e-002 - -2.5030756e-002 - -2.0799707e-002 - -1.6370126e-002 - -1.1762383e-002 - -6.9636862e-003 - -1.9765601e-003 - 3.2086897e-003 - 8.5711749e-003 - 1.4128883e-002 - 1.9883413e-002 - 2.5822729e-002 - 3.1953127e-002 - 3.8277657e-002 - 4.4780682e-002 - 5.1480418e-002 - 5.8370533e-002 - 6.5440985e-002 - 7.2694330e-002 - 8.0137293e-002 - 8.7754754e-002 - 9.5553335e-002 - 1.0353295e-001 - 1.1168269e-001 - 1.2000780e-001 - 1.2850029e-001 - 1.3715518e-001 - 1.4597665e-001 - 1.5496071e-001 - 1.6409589e-001 - 1.7338082e-001 - 1.8281725e-001 - 1.9239667e-001 - 2.0212502e-001 - 2.1197359e-001 - 2.2196527e-001 - 2.3206909e-001 - 2.4230169e-001 - 2.5264803e-001 - 2.6310533e-001 - 2.7366340e-001 - 2.8432142e-001 - 2.9507167e-001 - 3.0590986e-001 - 3.1682789e-001 - 3.2781137e-001 - 3.3887227e-001 - 3.4999141e-001 - 3.6115899e-001 - 3.7237955e-001 - 3.8363500e-001 - 3.9492118e-001 - 4.0623177e-001 - 4.1756969e-001 - 4.2891199e-001 - 4.4025538e-001 - 4.5159965e-001 - 4.6293081e-001 - 4.7424532e-001 - 4.8552531e-001 - 4.9677083e-001 - 5.0798175e-001 - 5.1912350e-001 - 5.3022409e-001 - 5.4125534e-001 - 5.5220513e-001 - 5.6307891e-001 - 5.7385241e-001 - 5.8454032e-001 - 5.9511231e-001 - 6.0557835e-001 - 6.1591099e-001 - 6.2612427e-001 - 6.3619801e-001 - 6.4612697e-001 - 6.5590163e-001 - 6.6551399e-001 - 6.7496632e-001 - 6.8423533e-001 - 6.9332824e-001 - 7.0223887e-001 - 7.1094104e-001 - 7.1944626e-001 - 7.2774489e-001 - 7.3582118e-001 - 7.4368279e-001 - 7.5131375e-001 - 7.5870808e-001 - 7.6586749e-001 - 7.7277809e-001 - 7.7942875e-001 - 7.8583531e-001 - 7.9197358e-001 - 7.9784664e-001 - 8.0344858e-001 - 8.0876950e-001 - 8.1381913e-001 - 8.1857760e-001 - 8.2304199e-001 - 8.2722753e-001 - 8.3110385e-001 - 8.3469374e-001 - 8.3797173e-001 - 8.4095414e-001 - 8.4362383e-001 - 8.4598185e-001 - 8.4803158e-001 - 8.4978052e-001 - 8.5119715e-001 - 8.5230470e-001 - 8.5310209e-001 - 8.5357206e-001 - 8.5373856e-001 - 8.5357206e-001 - 8.5310209e-001 - 8.5230470e-001 - 8.5119715e-001 - 8.4978052e-001 - 8.4803158e-001 - 8.4598185e-001 - 8.4362383e-001 - 8.4095414e-001 - 8.3797173e-001 - 8.3469374e-001 - 8.3110385e-001 - 8.2722753e-001 - 8.2304199e-001 - 8.1857760e-001 - 8.1381913e-001 - 8.0876950e-001 - 8.0344858e-001 - 7.9784664e-001 - 7.9197358e-001 - 7.8583531e-001 - 7.7942875e-001 - 7.7277809e-001 - 7.6586749e-001 - 7.5870808e-001 - 7.5131375e-001 - 7.4368279e-001 - 7.3582118e-001 - 7.2774489e-001 - 7.1944626e-001 - 7.1094104e-001 - 7.0223887e-001 - 6.9332824e-001 - 6.8423533e-001 - 6.7496632e-001 - 6.6551399e-001 - 6.5590163e-001 - 6.4612697e-001 - 6.3619801e-001 - 6.2612427e-001 - 6.1591099e-001 - 6.0557835e-001 - 5.9511231e-001 - 5.8454032e-001 - 5.7385241e-001 - 5.6307891e-001 - 5.5220513e-001 - 5.4125534e-001 - 5.3022409e-001 - 5.1912350e-001 - 5.0798175e-001 - 4.9677083e-001 - 4.8552531e-001 - 4.7424532e-001 - 4.6293081e-001 - 4.5159965e-001 - 4.4025538e-001 - 4.2891199e-001 - 4.1756969e-001 - 4.0623177e-001 - 3.9492118e-001 - 3.8363500e-001 - 3.7237955e-001 - 3.6115899e-001 - 3.4999141e-001 - 3.3887227e-001 - 3.2781137e-001 - 3.1682789e-001 - 3.0590986e-001 - 2.9507167e-001 - 2.8432142e-001 - 2.7366340e-001 - 2.6310533e-001 - 2.5264803e-001 - 2.4230169e-001 - 2.3206909e-001 - 2.2196527e-001 - 2.1197359e-001 - 2.0212502e-001 - 1.9239667e-001 - 1.8281725e-001 - 1.7338082e-001 - 1.6409589e-001 - 1.5496071e-001 - 1.4597665e-001 - 1.3715518e-001 - 1.2850029e-001 - 1.2000780e-001 - 1.1168269e-001 - 1.0353295e-001 - 9.5553335e-002 - 8.7754754e-002 - 8.0137293e-002 - 7.2694330e-002 - 6.5440985e-002 - 5.8370533e-002 - 5.1480418e-002 - 4.4780682e-002 - 3.8277657e-002 - 3.1953127e-002 - 2.5822729e-002 - 1.9883413e-002 - 1.4128883e-002 - 8.5711749e-003 - 3.2086897e-003 - -1.9765601e-003 - -6.9636862e-003 - -1.1762383e-002 - -1.6370126e-002 - -2.0799707e-002 - -2.5030756e-002 - -2.9082401e-002 - -3.2958393e-002 - -3.6641812e-002 - -4.0145828e-002 - -4.3476878e-002 - -4.6630331e-002 - -4.9597868e-002 - -5.2409382e-002 - -5.5046003e-002 - -5.7515269e-002 - -5.9816657e-002 - -6.1960278e-002 - -6.3944481e-002 - -6.5769067e-002 - -6.7452502e-002 - -6.8966401e-002 - -7.0353307e-002 - -7.1582636e-002 - -7.2677464e-002 - -7.3640601e-002 - -7.4466439e-002 - -7.5157626e-002 - -7.5730576e-002 - -7.6174832e-002 - -7.6505072e-002 - -7.6720492e-002 - -7.6823001e-002 - -7.6817398e-002 - -7.6709349e-002 - -7.6499217e-002 - -7.6199248e-002 - -7.5800836e-002 - -7.5313734e-002 - -7.4745256e-002 - -7.4100364e-002 - -7.3362026e-002 - -7.2568258e-002 - -7.1700267e-002 - -7.0762871e-002 - -6.9763024e-002 - -6.8704383e-002 - -6.7607599e-002 - -6.6436751e-002 - -6.5224711e-002 - -6.3971590e-002 - -6.2685781e-002 - -6.1345517e-002 - -5.9983748e-002 - -5.8591568e-002 - -5.7161645e-002 - -5.5717365e-002 - -5.4245277e-002 - -5.2763075e-002 - -5.1255616e-002 - -4.9738576e-002 - -4.8216572e-002 - -4.6684303e-002 - -4.5148841e-002 - -4.3609754e-002 - -4.2064909e-002 - -4.0534917e-002 - -3.9005368e-002 - -3.7481285e-002 - -3.5969756e-002 - -3.4462095e-002 - -3.2975408e-002 - -3.1501761e-002 - -3.0050266e-002 - -2.8607217e-002 - -2.7185943e-002 - -2.5787585e-002 - -2.4416099e-002 - -2.3068017e-002 - -2.1746755e-002 - -2.0453179e-002 - -1.9187243e-002 - -1.7943338e-002 - -1.6732471e-002 - -1.5540555e-002 - -1.4390467e-002 - -1.3271822e-002 - -1.2185000e-002 - -1.1131555e-002 - -1.0115022e-002 - -9.1325330e-003 - -8.1798233e-003 - -7.2615817e-003 - -6.3792293e-003 - -5.5337211e-003 - -4.7222596e-003 - -3.9401124e-003 - -3.1933778e-003 - -2.4826724e-003 - -1.8039473e-003 - -1.1568136e-003 - -5.4642809e-004 - 2.7604519e-005 - 5.8322642e-004 - 1.0902329e-003 - 1.5784683e-003 - 2.0274176e-003 - 2.4508540e-003 - 2.8446758e-003 - 3.2091886e-003 - 3.5401247e-003 - 3.8456408e-003 - 4.1251642e-003 - 4.3801862e-003 - 4.6039530e-003 - 4.8109469e-003 - 4.9839688e-003 - 5.1382275e-003 - 5.2715759e-003 - 5.3838976e-003 - 5.4753783e-003 - 5.5404364e-003 - 5.5917129e-003 - 5.6266114e-003 - 5.6389200e-003 - 5.6455197e-003 - 5.6220643e-003 - 5.5938023e-003 - 5.5475715e-003 - 5.4876040e-003 - 5.4196776e-003 - 5.3471681e-003 - 5.2461166e-003 - 5.1407354e-003 - 5.0393023e-003 - 4.9137604e-003 - 4.7932561e-003 - 4.6606461e-003 - 4.5209853e-003 - 4.3730720e-003 - 4.2264269e-003 - 4.0819753e-003 - 3.9207432e-003 - 3.7603923e-003 - 3.6008268e-003 - 3.4418874e-003 - 3.2739613e-003 - 3.1125421e-003 - 2.9469448e-003 - 2.7870464e-003 - 2.6201759e-003 - 2.4625617e-003 - 2.3017255e-003 - 2.1461584e-003 - 1.9841141e-003 - 1.8348265e-003 - 1.6868083e-003 - 1.5443220e-003 - 1.3902495e-003 - 1.2577885e-003 - 1.1250155e-003 - 9.8859883e-004 - 8.6084433e-004 - 7.4580259e-004 - 6.2393761e-004 - 5.1073885e-004 - 4.0265402e-004 - 2.9495311e-004 - 2.0430171e-004 - 1.0943831e-004 - 1.3494974e-005 - -6.1733441e-005 - -1.4463809e-004 - -2.0983373e-004 - -2.8969812e-004 - -3.5011759e-004 - -4.0951215e-004 - -4.6063255e-004 - -5.1455722e-004 - -5.5645764e-004 - -5.9461189e-004 - -6.3415949e-004 - -6.6504151e-004 - -6.9179375e-004 - -7.2153920e-004 - -7.3193572e-004 - -7.5300014e-004 - -7.6307936e-004 - -7.7579773e-004 - -7.8014496e-004 - -7.8036647e-004 - -7.7798695e-004 - -7.8343323e-004 - -7.7248486e-004 - -7.6813719e-004 - -7.4905981e-004 - -7.4409419e-004 - -7.2550431e-004 - -7.1577365e-004 - -6.9416146e-004 - -6.7776908e-004 - -6.5403334e-004 - -6.3124935e-004 - -6.1327474e-004 - -5.8709305e-004 - -5.6778026e-004 - -5.4665656e-004 - -5.2265643e-004 - -5.0407143e-004 - -4.8937912e-004 - -4.8752280e-004 - -4.9475181e-004 - -5.6176926e-004 - -5.5252865e-004 diff --git a/TTS/vocoder/layers/upsample.py b/TTS/vocoder/layers/upsample.py deleted file mode 100644 index e169db00b2749493e1cec07ee51c93178dada118..0000000000000000000000000000000000000000 --- a/TTS/vocoder/layers/upsample.py +++ /dev/null @@ -1,102 +0,0 @@ -import torch -from torch.nn import functional as F - - -class Stretch2d(torch.nn.Module): - def __init__(self, x_scale, y_scale, mode="nearest"): - super().__init__() - self.x_scale = x_scale - self.y_scale = y_scale - self.mode = mode - - def forward(self, x): - """ - x (Tensor): Input tensor (B, C, F, T). - Tensor: Interpolated tensor (B, C, F * y_scale, T * x_scale), - """ - return F.interpolate(x, scale_factor=(self.y_scale, self.x_scale), mode=self.mode) - - -class UpsampleNetwork(torch.nn.Module): - # pylint: disable=dangerous-default-value - def __init__( - self, - upsample_factors, - nonlinear_activation=None, - nonlinear_activation_params={}, - interpolate_mode="nearest", - freq_axis_kernel_size=1, - use_causal_conv=False, - ): - super().__init__() - self.use_causal_conv = use_causal_conv - self.up_layers = torch.nn.ModuleList() - for scale in upsample_factors: - # interpolation layer - stretch = Stretch2d(scale, 1, interpolate_mode) - self.up_layers += [stretch] - - # conv layer - assert (freq_axis_kernel_size - 1) % 2 == 0, "Not support even number freq axis kernel size." - freq_axis_padding = (freq_axis_kernel_size - 1) // 2 - kernel_size = (freq_axis_kernel_size, scale * 2 + 1) - if use_causal_conv: - padding = (freq_axis_padding, scale * 2) - else: - padding = (freq_axis_padding, scale) - conv = torch.nn.Conv2d(1, 1, kernel_size=kernel_size, padding=padding, bias=False) - self.up_layers += [conv] - - # nonlinear - if nonlinear_activation is not None: - nonlinear = getattr(torch.nn, nonlinear_activation)(**nonlinear_activation_params) - self.up_layers += [nonlinear] - - def forward(self, c): - """ - c : (B, C, T_in). - Tensor: (B, C, T_upsample) - """ - c = c.unsqueeze(1) # (B, 1, C, T) - for f in self.up_layers: - c = f(c) - return c.squeeze(1) # (B, C, T') - - -class ConvUpsample(torch.nn.Module): - # pylint: disable=dangerous-default-value - def __init__( - self, - upsample_factors, - nonlinear_activation=None, - nonlinear_activation_params={}, - interpolate_mode="nearest", - freq_axis_kernel_size=1, - aux_channels=80, - aux_context_window=0, - use_causal_conv=False, - ): - super().__init__() - self.aux_context_window = aux_context_window - self.use_causal_conv = use_causal_conv and aux_context_window > 0 - # To capture wide-context information in conditional features - kernel_size = aux_context_window + 1 if use_causal_conv else 2 * aux_context_window + 1 - # NOTE(kan-bayashi): Here do not use padding because the input is already padded - self.conv_in = torch.nn.Conv1d(aux_channels, aux_channels, kernel_size=kernel_size, bias=False) - self.upsample = UpsampleNetwork( - upsample_factors=upsample_factors, - nonlinear_activation=nonlinear_activation, - nonlinear_activation_params=nonlinear_activation_params, - interpolate_mode=interpolate_mode, - freq_axis_kernel_size=freq_axis_kernel_size, - use_causal_conv=use_causal_conv, - ) - - def forward(self, c): - """ - c : (B, C, T_in). - Tensor: (B, C, T_upsampled), - """ - c_ = self.conv_in(c) - c = c_[:, :, : -self.aux_context_window] if self.use_causal_conv else c_ - return self.upsample(c) diff --git a/TTS/vocoder/layers/wavegrad.py b/TTS/vocoder/layers/wavegrad.py deleted file mode 100644 index 24b905f994b69075fc5e46249ce0c7719fe4b174..0000000000000000000000000000000000000000 --- a/TTS/vocoder/layers/wavegrad.py +++ /dev/null @@ -1,165 +0,0 @@ -import torch -import torch.nn.functional as F -from torch import nn -from torch.nn.utils import weight_norm - - -class Conv1d(nn.Conv1d): - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - nn.init.orthogonal_(self.weight) - nn.init.zeros_(self.bias) - - -class PositionalEncoding(nn.Module): - """Positional encoding with noise level conditioning""" - - def __init__(self, n_channels, max_len=10000): - super().__init__() - self.n_channels = n_channels - self.max_len = max_len - self.C = 5000 - self.pe = torch.zeros(0, 0) - - def forward(self, x, noise_level): - if x.shape[2] > self.pe.shape[1]: - self.init_pe_matrix(x.shape[1], x.shape[2], x) - return x + noise_level[..., None, None] + self.pe[:, : x.size(2)].repeat(x.shape[0], 1, 1) / self.C - - def init_pe_matrix(self, n_channels, max_len, x): - pe = torch.zeros(max_len, n_channels) - position = torch.arange(0, max_len, dtype=torch.float).unsqueeze(1) - div_term = torch.pow(10000, torch.arange(0, n_channels, 2).float() / n_channels) - - pe[:, 0::2] = torch.sin(position / div_term) - pe[:, 1::2] = torch.cos(position / div_term) - self.pe = pe.transpose(0, 1).to(x) - - -class FiLM(nn.Module): - def __init__(self, input_size, output_size): - super().__init__() - self.encoding = PositionalEncoding(input_size) - self.input_conv = nn.Conv1d(input_size, input_size, 3, padding=1) - self.output_conv = nn.Conv1d(input_size, output_size * 2, 3, padding=1) - - nn.init.xavier_uniform_(self.input_conv.weight) - nn.init.xavier_uniform_(self.output_conv.weight) - nn.init.zeros_(self.input_conv.bias) - nn.init.zeros_(self.output_conv.bias) - - def forward(self, x, noise_scale): - o = self.input_conv(x) - o = F.leaky_relu(o, 0.2) - o = self.encoding(o, noise_scale) - shift, scale = torch.chunk(self.output_conv(o), 2, dim=1) - return shift, scale - - def remove_weight_norm(self): - nn.utils.remove_weight_norm(self.input_conv) - nn.utils.remove_weight_norm(self.output_conv) - - def apply_weight_norm(self): - self.input_conv = weight_norm(self.input_conv) - self.output_conv = weight_norm(self.output_conv) - - -@torch.jit.script -def shif_and_scale(x, scale, shift): - o = shift + scale * x - return o - - -class UBlock(nn.Module): - def __init__(self, input_size, hidden_size, factor, dilation): - super().__init__() - assert isinstance(dilation, (list, tuple)) - assert len(dilation) == 4 - - self.factor = factor - self.res_block = Conv1d(input_size, hidden_size, 1) - self.main_block = nn.ModuleList( - [ - Conv1d(input_size, hidden_size, 3, dilation=dilation[0], padding=dilation[0]), - Conv1d(hidden_size, hidden_size, 3, dilation=dilation[1], padding=dilation[1]), - ] - ) - self.out_block = nn.ModuleList( - [ - Conv1d(hidden_size, hidden_size, 3, dilation=dilation[2], padding=dilation[2]), - Conv1d(hidden_size, hidden_size, 3, dilation=dilation[3], padding=dilation[3]), - ] - ) - - def forward(self, x, shift, scale): - x_inter = F.interpolate(x, size=x.shape[-1] * self.factor) - res = self.res_block(x_inter) - o = F.leaky_relu(x_inter, 0.2) - o = F.interpolate(o, size=x.shape[-1] * self.factor) - o = self.main_block[0](o) - o = shif_and_scale(o, scale, shift) - o = F.leaky_relu(o, 0.2) - o = self.main_block[1](o) - res2 = res + o - o = shif_and_scale(res2, scale, shift) - o = F.leaky_relu(o, 0.2) - o = self.out_block[0](o) - o = shif_and_scale(o, scale, shift) - o = F.leaky_relu(o, 0.2) - o = self.out_block[1](o) - o = o + res2 - return o - - def remove_weight_norm(self): - nn.utils.remove_weight_norm(self.res_block) - for _, layer in enumerate(self.main_block): - if len(layer.state_dict()) != 0: - nn.utils.remove_weight_norm(layer) - for _, layer in enumerate(self.out_block): - if len(layer.state_dict()) != 0: - nn.utils.remove_weight_norm(layer) - - def apply_weight_norm(self): - self.res_block = weight_norm(self.res_block) - for idx, layer in enumerate(self.main_block): - if len(layer.state_dict()) != 0: - self.main_block[idx] = weight_norm(layer) - for idx, layer in enumerate(self.out_block): - if len(layer.state_dict()) != 0: - self.out_block[idx] = weight_norm(layer) - - -class DBlock(nn.Module): - def __init__(self, input_size, hidden_size, factor): - super().__init__() - self.factor = factor - self.res_block = Conv1d(input_size, hidden_size, 1) - self.main_block = nn.ModuleList( - [ - Conv1d(input_size, hidden_size, 3, dilation=1, padding=1), - Conv1d(hidden_size, hidden_size, 3, dilation=2, padding=2), - Conv1d(hidden_size, hidden_size, 3, dilation=4, padding=4), - ] - ) - - def forward(self, x): - size = x.shape[-1] // self.factor - res = self.res_block(x) - res = F.interpolate(res, size=size) - o = F.interpolate(x, size=size) - for layer in self.main_block: - o = F.leaky_relu(o, 0.2) - o = layer(o) - return o + res - - def remove_weight_norm(self): - nn.utils.remove_weight_norm(self.res_block) - for _, layer in enumerate(self.main_block): - if len(layer.state_dict()) != 0: - nn.utils.remove_weight_norm(layer) - - def apply_weight_norm(self): - self.res_block = weight_norm(self.res_block) - for idx, layer in enumerate(self.main_block): - if len(layer.state_dict()) != 0: - self.main_block[idx] = weight_norm(layer) diff --git a/TTS/vocoder/models/__init__.py b/TTS/vocoder/models/__init__.py deleted file mode 100644 index 65901617b69d3ae708e09226c5e4ad903f89a929..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/__init__.py +++ /dev/null @@ -1,154 +0,0 @@ -import importlib -import re - -from coqpit import Coqpit - - -def to_camel(text): - text = text.capitalize() - return re.sub(r"(?!^)_([a-zA-Z])", lambda m: m.group(1).upper(), text) - - -def setup_model(config: Coqpit): - """Load models directly from configuration.""" - if "discriminator_model" in config and "generator_model" in config: - MyModel = importlib.import_module("TTS.vocoder.models.gan") - MyModel = getattr(MyModel, "GAN") - else: - MyModel = importlib.import_module("TTS.vocoder.models." + config.model.lower()) - if config.model.lower() == "wavernn": - MyModel = getattr(MyModel, "Wavernn") - elif config.model.lower() == "gan": - MyModel = getattr(MyModel, "GAN") - elif config.model.lower() == "wavegrad": - MyModel = getattr(MyModel, "Wavegrad") - else: - try: - MyModel = getattr(MyModel, to_camel(config.model)) - except ModuleNotFoundError as e: - raise ValueError(f"Model {config.model} not exist!") from e - print(" > Vocoder Model: {}".format(config.model)) - return MyModel.init_from_config(config) - - -def setup_generator(c): - """TODO: use config object as arguments""" - print(" > Generator Model: {}".format(c.generator_model)) - MyModel = importlib.import_module("TTS.vocoder.models." + c.generator_model.lower()) - MyModel = getattr(MyModel, to_camel(c.generator_model)) - # this is to preserve the Wavernn class name (instead of Wavernn) - if c.generator_model.lower() in "hifigan_generator": - model = MyModel(in_channels=c.audio["num_mels"], out_channels=1, **c.generator_model_params) - elif c.generator_model.lower() in "melgan_generator": - model = MyModel( - in_channels=c.audio["num_mels"], - out_channels=1, - proj_kernel=7, - base_channels=512, - upsample_factors=c.generator_model_params["upsample_factors"], - res_kernel=3, - num_res_blocks=c.generator_model_params["num_res_blocks"], - ) - elif c.generator_model in "melgan_fb_generator": - raise ValueError("melgan_fb_generator is now fullband_melgan_generator") - elif c.generator_model.lower() in "multiband_melgan_generator": - model = MyModel( - in_channels=c.audio["num_mels"], - out_channels=4, - proj_kernel=7, - base_channels=384, - upsample_factors=c.generator_model_params["upsample_factors"], - res_kernel=3, - num_res_blocks=c.generator_model_params["num_res_blocks"], - ) - elif c.generator_model.lower() in "fullband_melgan_generator": - model = MyModel( - in_channels=c.audio["num_mels"], - out_channels=1, - proj_kernel=7, - base_channels=512, - upsample_factors=c.generator_model_params["upsample_factors"], - res_kernel=3, - num_res_blocks=c.generator_model_params["num_res_blocks"], - ) - elif c.generator_model.lower() in "parallel_wavegan_generator": - model = MyModel( - in_channels=1, - out_channels=1, - kernel_size=3, - num_res_blocks=c.generator_model_params["num_res_blocks"], - stacks=c.generator_model_params["stacks"], - res_channels=64, - gate_channels=128, - skip_channels=64, - aux_channels=c.audio["num_mels"], - dropout=0.0, - bias=True, - use_weight_norm=True, - upsample_factors=c.generator_model_params["upsample_factors"], - ) - elif c.generator_model.lower() in "univnet_generator": - model = MyModel(**c.generator_model_params) - else: - raise NotImplementedError(f"Model {c.generator_model} not implemented!") - return model - - -def setup_discriminator(c): - """TODO: use config objekt as arguments""" - print(" > Discriminator Model: {}".format(c.discriminator_model)) - if "parallel_wavegan" in c.discriminator_model: - MyModel = importlib.import_module("TTS.vocoder.models.parallel_wavegan_discriminator") - else: - MyModel = importlib.import_module("TTS.vocoder.models." + c.discriminator_model.lower()) - MyModel = getattr(MyModel, to_camel(c.discriminator_model.lower())) - if c.discriminator_model in "hifigan_discriminator": - model = MyModel() - if c.discriminator_model in "random_window_discriminator": - model = MyModel( - cond_channels=c.audio["num_mels"], - hop_length=c.audio["hop_length"], - uncond_disc_donwsample_factors=c.discriminator_model_params["uncond_disc_donwsample_factors"], - cond_disc_downsample_factors=c.discriminator_model_params["cond_disc_downsample_factors"], - cond_disc_out_channels=c.discriminator_model_params["cond_disc_out_channels"], - window_sizes=c.discriminator_model_params["window_sizes"], - ) - if c.discriminator_model in "melgan_multiscale_discriminator": - model = MyModel( - in_channels=1, - out_channels=1, - kernel_sizes=(5, 3), - base_channels=c.discriminator_model_params["base_channels"], - max_channels=c.discriminator_model_params["max_channels"], - downsample_factors=c.discriminator_model_params["downsample_factors"], - ) - if c.discriminator_model == "residual_parallel_wavegan_discriminator": - model = MyModel( - in_channels=1, - out_channels=1, - kernel_size=3, - num_layers=c.discriminator_model_params["num_layers"], - stacks=c.discriminator_model_params["stacks"], - res_channels=64, - gate_channels=128, - skip_channels=64, - dropout=0.0, - bias=True, - nonlinear_activation="LeakyReLU", - nonlinear_activation_params={"negative_slope": 0.2}, - ) - if c.discriminator_model == "parallel_wavegan_discriminator": - model = MyModel( - in_channels=1, - out_channels=1, - kernel_size=3, - num_layers=c.discriminator_model_params["num_layers"], - conv_channels=64, - dilation_factor=1, - nonlinear_activation="LeakyReLU", - nonlinear_activation_params={"negative_slope": 0.2}, - bias=True, - ) - if c.discriminator_model == "univnet_discriminator": - model = MyModel() - return model diff --git a/TTS/vocoder/models/base_vocoder.py b/TTS/vocoder/models/base_vocoder.py deleted file mode 100644 index 0bcbe7ba1cb933c2bd3e8925c32d781aeaf79add..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/base_vocoder.py +++ /dev/null @@ -1,55 +0,0 @@ -from coqpit import Coqpit - -from TTS.model import BaseTrainerModel - -# pylint: skip-file - - -class BaseVocoder(BaseTrainerModel): - """Base `vocoder` class. Every new `vocoder` model must inherit this. - - It defines `vocoder` specific functions on top of `Model`. - - Notes on input/output tensor shapes: - Any input or output tensor of the model must be shaped as - - - 3D tensors `batch x time x channels` - - 2D tensors `batch x channels` - - 1D tensors `batch x 1` - """ - - MODEL_TYPE = "vocoder" - - def __init__(self, config): - super().__init__() - self._set_model_args(config) - - def _set_model_args(self, config: Coqpit): - """Setup model args based on the config type. - - If the config is for training with a name like "*Config", then the model args are embeded in the - config.model_args - - If the config is for the model with a name like "*Args", then we assign the directly. - """ - # don't use isintance not to import recursively - if "Config" in config.__class__.__name__: - if "characters" in config: - _, self.config, num_chars = self.get_characters(config) - self.config.num_chars = num_chars - if hasattr(self.config, "model_args"): - config.model_args.num_chars = num_chars - if "model_args" in config: - self.args = self.config.model_args - # This is for backward compatibility - if "model_params" in config: - self.args = self.config.model_params - else: - self.config = config - if "model_args" in config: - self.args = self.config.model_args - # This is for backward compatibility - if "model_params" in config: - self.args = self.config.model_params - else: - raise ValueError("config must be either a *Config or *Args") diff --git a/TTS/vocoder/models/fullband_melgan_generator.py b/TTS/vocoder/models/fullband_melgan_generator.py deleted file mode 100644 index ee25559af0d468aac535841bdfdd33b366250f43..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/fullband_melgan_generator.py +++ /dev/null @@ -1,33 +0,0 @@ -import torch - -from TTS.vocoder.models.melgan_generator import MelganGenerator - - -class FullbandMelganGenerator(MelganGenerator): - def __init__( - self, - in_channels=80, - out_channels=1, - proj_kernel=7, - base_channels=512, - upsample_factors=(2, 8, 2, 2), - res_kernel=3, - num_res_blocks=4, - ): - super().__init__( - in_channels=in_channels, - out_channels=out_channels, - proj_kernel=proj_kernel, - base_channels=base_channels, - upsample_factors=upsample_factors, - res_kernel=res_kernel, - num_res_blocks=num_res_blocks, - ) - - @torch.no_grad() - def inference(self, cond_features): - cond_features = cond_features.to(self.layers[1].weight.device) - cond_features = torch.nn.functional.pad( - cond_features, (self.inference_padding, self.inference_padding), "replicate" - ) - return self.layers(cond_features) diff --git a/TTS/vocoder/models/gan.py b/TTS/vocoder/models/gan.py deleted file mode 100644 index 19c30e983e5bb2066d3ccd22dc5cb21c091cb60a..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/gan.py +++ /dev/null @@ -1,374 +0,0 @@ -from inspect import signature -from typing import Dict, List, Tuple - -import numpy as np -import torch -from coqpit import Coqpit -from torch import nn -from torch.utils.data import DataLoader -from torch.utils.data.distributed import DistributedSampler -from trainer.trainer_utils import get_optimizer, get_scheduler - -from TTS.utils.audio import AudioProcessor -from TTS.utils.io import load_fsspec -from TTS.vocoder.datasets.gan_dataset import GANDataset -from TTS.vocoder.layers.losses import DiscriminatorLoss, GeneratorLoss -from TTS.vocoder.models import setup_discriminator, setup_generator -from TTS.vocoder.models.base_vocoder import BaseVocoder -from TTS.vocoder.utils.generic_utils import plot_results - - -class GAN(BaseVocoder): - def __init__(self, config: Coqpit, ap: AudioProcessor = None): - """Wrap a generator and a discriminator network. It provides a compatible interface for the trainer. - It also helps mixing and matching different generator and disciminator networks easily. - - To implement a new GAN models, you just need to define the generator and the discriminator networks, the rest - is handled by the `GAN` class. - - Args: - config (Coqpit): Model configuration. - ap (AudioProcessor): 🐸TTS AudioProcessor instance. Defaults to None. - - Examples: - Initializing the GAN model with HifiGAN generator and discriminator. - >>> from TTS.vocoder.configs import HifiganConfig - >>> config = HifiganConfig() - >>> model = GAN(config) - """ - super().__init__(config) - self.config = config - self.model_g = setup_generator(config) - self.model_d = setup_discriminator(config) - self.train_disc = False # if False, train only the generator. - self.y_hat_g = None # the last generator prediction to be passed onto the discriminator - self.ap = ap - - def forward(self, x: torch.Tensor) -> torch.Tensor: - """Run the generator's forward pass. - - Args: - x (torch.Tensor): Input tensor. - - Returns: - torch.Tensor: output of the GAN generator network. - """ - return self.model_g.forward(x) - - def inference(self, x: torch.Tensor) -> torch.Tensor: - """Run the generator's inference pass. - - Args: - x (torch.Tensor): Input tensor. - Returns: - torch.Tensor: output of the GAN generator network. - """ - return self.model_g.inference(x) - - def train_step(self, batch: Dict, criterion: Dict, optimizer_idx: int) -> Tuple[Dict, Dict]: - """Compute model outputs and the loss values. `optimizer_idx` selects the generator or the discriminator for - network on the current pass. - - Args: - batch (Dict): Batch of samples returned by the dataloader. - criterion (Dict): Criterion used to compute the losses. - optimizer_idx (int): ID of the optimizer in use on the current pass. - - Raises: - ValueError: `optimizer_idx` is an unexpected value. - - Returns: - Tuple[Dict, Dict]: model outputs and the computed loss values. - """ - outputs = {} - loss_dict = {} - - x = batch["input"] - y = batch["waveform"] - - if optimizer_idx not in [0, 1]: - raise ValueError(" [!] Unexpected `optimizer_idx`.") - - if optimizer_idx == 0: - # DISCRIMINATOR optimization - - # generator pass - y_hat = self.model_g(x)[:, :, : y.size(2)] - - # cache for generator loss - # pylint: disable=W0201 - self.y_hat_g = y_hat - self.y_hat_sub = None - self.y_sub_g = None - - # PQMF formatting - if y_hat.shape[1] > 1: - self.y_hat_sub = y_hat - y_hat = self.model_g.pqmf_synthesis(y_hat) - self.y_hat_g = y_hat # save for generator loss - self.y_sub_g = self.model_g.pqmf_analysis(y) - - scores_fake, feats_fake, feats_real = None, None, None - - if self.train_disc: - # use different samples for G and D trainings - if self.config.diff_samples_for_G_and_D: - x_d = batch["input_disc"] - y_d = batch["waveform_disc"] - # use a different sample than generator - with torch.no_grad(): - y_hat = self.model_g(x_d) - - # PQMF formatting - if y_hat.shape[1] > 1: - y_hat = self.model_g.pqmf_synthesis(y_hat) - else: - # use the same samples as generator - x_d = x.clone() - y_d = y.clone() - y_hat = self.y_hat_g - - # run D with or without cond. features - if len(signature(self.model_d.forward).parameters) == 2: - D_out_fake = self.model_d(y_hat.detach().clone(), x_d) - D_out_real = self.model_d(y_d, x_d) - else: - D_out_fake = self.model_d(y_hat.detach()) - D_out_real = self.model_d(y_d) - - # format D outputs - if isinstance(D_out_fake, tuple): - # self.model_d returns scores and features - scores_fake, feats_fake = D_out_fake - if D_out_real is None: - scores_real, feats_real = None, None - else: - scores_real, feats_real = D_out_real - else: - # model D returns only scores - scores_fake = D_out_fake - scores_real = D_out_real - - # compute losses - loss_dict = criterion[optimizer_idx](scores_fake, scores_real) - outputs = {"model_outputs": y_hat} - - if optimizer_idx == 1: - # GENERATOR loss - scores_fake, feats_fake, feats_real = None, None, None - if self.train_disc: - if len(signature(self.model_d.forward).parameters) == 2: - D_out_fake = self.model_d(self.y_hat_g, x) - else: - D_out_fake = self.model_d(self.y_hat_g) - D_out_real = None - - if self.config.use_feat_match_loss: - with torch.no_grad(): - D_out_real = self.model_d(y) - - # format D outputs - if isinstance(D_out_fake, tuple): - scores_fake, feats_fake = D_out_fake - if D_out_real is None: - feats_real = None - else: - _, feats_real = D_out_real - else: - scores_fake = D_out_fake - feats_fake, feats_real = None, None - - # compute losses - loss_dict = criterion[optimizer_idx]( - self.y_hat_g, y, scores_fake, feats_fake, feats_real, self.y_hat_sub, self.y_sub_g - ) - outputs = {"model_outputs": self.y_hat_g} - return outputs, loss_dict - - def _log(self, name: str, ap: AudioProcessor, batch: Dict, outputs: Dict) -> Tuple[Dict, Dict]: - """Logging shared by the training and evaluation. - - Args: - name (str): Name of the run. `train` or `eval`, - ap (AudioProcessor): Audio processor used in training. - batch (Dict): Batch used in the last train/eval step. - outputs (Dict): Model outputs from the last train/eval step. - - Returns: - Tuple[Dict, Dict]: log figures and audio samples. - """ - y_hat = outputs[0]["model_outputs"] if self.train_disc else outputs[1]["model_outputs"] - y = batch["waveform"] - figures = plot_results(y_hat, y, ap, name) - sample_voice = y_hat[0].squeeze(0).detach().cpu().numpy() - audios = {f"{name}/audio": sample_voice} - return figures, audios - - def train_log( - self, batch: Dict, outputs: Dict, logger: "Logger", assets: Dict, steps: int # pylint: disable=unused-argument - ) -> Tuple[Dict, np.ndarray]: - """Call `_log()` for training.""" - figures, audios = self._log("eval", self.ap, batch, outputs) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - @torch.no_grad() - def eval_step(self, batch: Dict, criterion: nn.Module, optimizer_idx: int) -> Tuple[Dict, Dict]: - """Call `train_step()` with `no_grad()`""" - self.train_disc = True # Avoid a bug in the Training with the missing discriminator loss - return self.train_step(batch, criterion, optimizer_idx) - - def eval_log( - self, batch: Dict, outputs: Dict, logger: "Logger", assets: Dict, steps: int # pylint: disable=unused-argument - ) -> Tuple[Dict, np.ndarray]: - """Call `_log()` for evaluation.""" - figures, audios = self._log("eval", self.ap, batch, outputs) - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - def load_checkpoint( - self, - config: Coqpit, - checkpoint_path: str, - eval: bool = False, # pylint: disable=unused-argument, redefined-builtin - cache: bool = False, - ) -> None: - """Load a GAN checkpoint and initialize model parameters. - - Args: - config (Coqpit): Model config. - checkpoint_path (str): Checkpoint file path. - eval (bool, optional): If true, load the model for inference. If falseDefaults to False. - """ - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - # band-aid for older than v0.0.15 GAN models - if "model_disc" in state: - self.model_g.load_checkpoint(config, checkpoint_path, eval) - else: - self.load_state_dict(state["model"]) - if eval: - self.model_d = None - if hasattr(self.model_g, "remove_weight_norm"): - self.model_g.remove_weight_norm() - - def on_train_step_start(self, trainer) -> None: - """Enable the discriminator training based on `steps_to_start_discriminator` - - Args: - trainer (Trainer): Trainer object. - """ - self.train_disc = trainer.total_steps_done >= self.config.steps_to_start_discriminator - - def get_optimizer(self) -> List: - """Initiate and return the GAN optimizers based on the config parameters. - - It returnes 2 optimizers in a list. First one is for the generator and the second one is for the discriminator. - - Returns: - List: optimizers. - """ - optimizer1 = get_optimizer( - self.config.optimizer, self.config.optimizer_params, self.config.lr_gen, self.model_g - ) - optimizer2 = get_optimizer( - self.config.optimizer, self.config.optimizer_params, self.config.lr_disc, self.model_d - ) - return [optimizer2, optimizer1] - - def get_lr(self) -> List: - """Set the initial learning rates for each optimizer. - - Returns: - List: learning rates for each optimizer. - """ - return [self.config.lr_disc, self.config.lr_gen] - - def get_scheduler(self, optimizer) -> List: - """Set the schedulers for each optimizer. - - Args: - optimizer (List[`torch.optim.Optimizer`]): List of optimizers. - - Returns: - List: Schedulers, one for each optimizer. - """ - scheduler1 = get_scheduler(self.config.lr_scheduler_gen, self.config.lr_scheduler_gen_params, optimizer[0]) - scheduler2 = get_scheduler(self.config.lr_scheduler_disc, self.config.lr_scheduler_disc_params, optimizer[1]) - return [scheduler2, scheduler1] - - @staticmethod - def format_batch(batch: List) -> Dict: - """Format the batch for training. - - Args: - batch (List): Batch out of the dataloader. - - Returns: - Dict: formatted model inputs. - """ - if isinstance(batch[0], list): - x_G, y_G = batch[0] - x_D, y_D = batch[1] - return {"input": x_G, "waveform": y_G, "input_disc": x_D, "waveform_disc": y_D} - x, y = batch - return {"input": x, "waveform": y} - - def get_data_loader( # pylint: disable=no-self-use, unused-argument - self, - config: Coqpit, - assets: Dict, - is_eval: True, - samples: List, - verbose: bool, - num_gpus: int, - rank: int = None, # pylint: disable=unused-argument - ): - """Initiate and return the GAN dataloader. - - Args: - config (Coqpit): Model config. - ap (AudioProcessor): Audio processor. - is_eval (True): Set the dataloader for evaluation if true. - samples (List): Data samples. - verbose (bool): Log information if true. - num_gpus (int): Number of GPUs in use. - rank (int): Rank of the current GPU. Defaults to None. - - Returns: - DataLoader: Torch dataloader. - """ - dataset = GANDataset( - ap=self.ap, - items=samples, - seq_len=config.seq_len, - hop_len=self.ap.hop_length, - pad_short=config.pad_short, - conv_pad=config.conv_pad, - return_pairs=config.diff_samples_for_G_and_D if "diff_samples_for_G_and_D" in config else False, - is_training=not is_eval, - return_segments=not is_eval, - use_noise_augment=config.use_noise_augment, - use_cache=config.use_cache, - verbose=verbose, - ) - dataset.shuffle_mapping() - sampler = DistributedSampler(dataset, shuffle=True) if num_gpus > 1 else None - loader = DataLoader( - dataset, - batch_size=1 if is_eval else config.batch_size, - shuffle=num_gpus == 0, - drop_last=False, - sampler=sampler, - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=False, - ) - return loader - - def get_criterion(self): - """Return criterions for the optimizers""" - return [DiscriminatorLoss(self.config), GeneratorLoss(self.config)] - - @staticmethod - def init_from_config(config: Coqpit, verbose=True) -> "GAN": - ap = AudioProcessor.init_from_config(config, verbose=verbose) - return GAN(config, ap=ap) diff --git a/TTS/vocoder/models/hifigan_discriminator.py b/TTS/vocoder/models/hifigan_discriminator.py deleted file mode 100644 index ca5eaf408c95372ea26f4e83db6f470b4dd92dfb..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/hifigan_discriminator.py +++ /dev/null @@ -1,217 +0,0 @@ -# adopted from https://github.com/jik876/hifi-gan/blob/master/models.py -import torch -from torch import nn -from torch.nn import functional as F - -LRELU_SLOPE = 0.1 - - -class DiscriminatorP(torch.nn.Module): - """HiFiGAN Periodic Discriminator - - Takes every Pth value from the input waveform and applied a stack of convoluations. - - Note: - if `period` is 2 - `waveform = [1, 2, 3, 4, 5, 6 ...] --> [1, 3, 5 ... ] --> convs -> score, feat` - - Args: - x (Tensor): input waveform. - - Returns: - [Tensor]: discriminator scores per sample in the batch. - [List[Tensor]]: list of features from each convolutional layer. - - Shapes: - x: [B, 1, T] - """ - - def __init__(self, period, kernel_size=5, stride=3, use_spectral_norm=False): - super().__init__() - self.period = period - get_padding = lambda k, d: int((k * d - d) / 2) - norm_f = nn.utils.spectral_norm if use_spectral_norm else nn.utils.weight_norm - self.convs = nn.ModuleList( - [ - norm_f(nn.Conv2d(1, 32, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(nn.Conv2d(32, 128, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(nn.Conv2d(128, 512, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(nn.Conv2d(512, 1024, (kernel_size, 1), (stride, 1), padding=(get_padding(kernel_size, 1), 0))), - norm_f(nn.Conv2d(1024, 1024, (kernel_size, 1), 1, padding=(2, 0))), - ] - ) - self.conv_post = norm_f(nn.Conv2d(1024, 1, (3, 1), 1, padding=(1, 0))) - - def forward(self, x): - """ - Args: - x (Tensor): input waveform. - - Returns: - [Tensor]: discriminator scores per sample in the batch. - [List[Tensor]]: list of features from each convolutional layer. - - Shapes: - x: [B, 1, T] - """ - feat = [] - - # 1d to 2d - b, c, t = x.shape - if t % self.period != 0: # pad first - n_pad = self.period - (t % self.period) - x = F.pad(x, (0, n_pad), "reflect") - t = t + n_pad - x = x.view(b, c, t // self.period, self.period) - - for l in self.convs: - x = l(x) - x = F.leaky_relu(x, LRELU_SLOPE) - feat.append(x) - x = self.conv_post(x) - feat.append(x) - x = torch.flatten(x, 1, -1) - - return x, feat - - -class MultiPeriodDiscriminator(torch.nn.Module): - """HiFiGAN Multi-Period Discriminator (MPD) - Wrapper for the `PeriodDiscriminator` to apply it in different periods. - Periods are suggested to be prime numbers to reduce the overlap between each discriminator. - """ - - def __init__(self, use_spectral_norm=False): - super().__init__() - self.discriminators = nn.ModuleList( - [ - DiscriminatorP(2, use_spectral_norm=use_spectral_norm), - DiscriminatorP(3, use_spectral_norm=use_spectral_norm), - DiscriminatorP(5, use_spectral_norm=use_spectral_norm), - DiscriminatorP(7, use_spectral_norm=use_spectral_norm), - DiscriminatorP(11, use_spectral_norm=use_spectral_norm), - ] - ) - - def forward(self, x): - """ - Args: - x (Tensor): input waveform. - - Returns: - [List[Tensor]]: list of scores from each discriminator. - [List[List[Tensor]]]: list of list of features from each discriminator's each convolutional layer. - - Shapes: - x: [B, 1, T] - """ - scores = [] - feats = [] - for _, d in enumerate(self.discriminators): - score, feat = d(x) - scores.append(score) - feats.append(feat) - return scores, feats - - -class DiscriminatorS(torch.nn.Module): - """HiFiGAN Scale Discriminator. - It is similar to `MelganDiscriminator` but with a specific architecture explained in the paper. - - Args: - use_spectral_norm (bool): if `True` swith to spectral norm instead of weight norm. - - """ - - def __init__(self, use_spectral_norm=False): - super().__init__() - norm_f = nn.utils.spectral_norm if use_spectral_norm else nn.utils.weight_norm - self.convs = nn.ModuleList( - [ - norm_f(nn.Conv1d(1, 128, 15, 1, padding=7)), - norm_f(nn.Conv1d(128, 128, 41, 2, groups=4, padding=20)), - norm_f(nn.Conv1d(128, 256, 41, 2, groups=16, padding=20)), - norm_f(nn.Conv1d(256, 512, 41, 4, groups=16, padding=20)), - norm_f(nn.Conv1d(512, 1024, 41, 4, groups=16, padding=20)), - norm_f(nn.Conv1d(1024, 1024, 41, 1, groups=16, padding=20)), - norm_f(nn.Conv1d(1024, 1024, 5, 1, padding=2)), - ] - ) - self.conv_post = norm_f(nn.Conv1d(1024, 1, 3, 1, padding=1)) - - def forward(self, x): - """ - Args: - x (Tensor): input waveform. - - Returns: - Tensor: discriminator scores. - List[Tensor]: list of features from the convolutiona layers. - """ - feat = [] - for l in self.convs: - x = l(x) - x = F.leaky_relu(x, LRELU_SLOPE) - feat.append(x) - x = self.conv_post(x) - feat.append(x) - x = torch.flatten(x, 1, -1) - return x, feat - - -class MultiScaleDiscriminator(torch.nn.Module): - """HiFiGAN Multi-Scale Discriminator. - It is similar to `MultiScaleMelganDiscriminator` but specially tailored for HiFiGAN as in the paper. - """ - - def __init__(self): - super().__init__() - self.discriminators = nn.ModuleList( - [ - DiscriminatorS(use_spectral_norm=True), - DiscriminatorS(), - DiscriminatorS(), - ] - ) - self.meanpools = nn.ModuleList([nn.AvgPool1d(4, 2, padding=2), nn.AvgPool1d(4, 2, padding=2)]) - - def forward(self, x): - """ - Args: - x (Tensor): input waveform. - - Returns: - List[Tensor]: discriminator scores. - List[List[Tensor]]: list of list of features from each layers of each discriminator. - """ - scores = [] - feats = [] - for i, d in enumerate(self.discriminators): - if i != 0: - x = self.meanpools[i - 1](x) - score, feat = d(x) - scores.append(score) - feats.append(feat) - return scores, feats - - -class HifiganDiscriminator(nn.Module): - """HiFiGAN discriminator wrapping MPD and MSD.""" - - def __init__(self): - super().__init__() - self.mpd = MultiPeriodDiscriminator() - self.msd = MultiScaleDiscriminator() - - def forward(self, x): - """ - Args: - x (Tensor): input waveform. - - Returns: - List[Tensor]: discriminator scores. - List[List[Tensor]]: list of list of features from each layers of each discriminator. - """ - scores, feats = self.mpd(x) - scores_, feats_ = self.msd(x) - return scores + scores_, feats + feats_ diff --git a/TTS/vocoder/models/hifigan_generator.py b/TTS/vocoder/models/hifigan_generator.py deleted file mode 100644 index 4916d1e69769b2a17fb67c420fd8bb9376557a88..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/hifigan_generator.py +++ /dev/null @@ -1,300 +0,0 @@ -# adopted from https://github.com/jik876/hifi-gan/blob/master/models.py -import torch -from torch import nn -from torch.nn import Conv1d, ConvTranspose1d -from torch.nn import functional as F -from torch.nn.utils import remove_weight_norm, weight_norm - -from TTS.utils.io import load_fsspec - -LRELU_SLOPE = 0.1 - - -def get_padding(k, d): - return int((k * d - d) / 2) - - -class ResBlock1(torch.nn.Module): - """Residual Block Type 1. It has 3 convolutional layers in each convolutional block. - - Network:: - - x -> lrelu -> conv1_1 -> conv1_2 -> conv1_3 -> z -> lrelu -> conv2_1 -> conv2_2 -> conv2_3 -> o -> + -> o - |--------------------------------------------------------------------------------------------------| - - - Args: - channels (int): number of hidden channels for the convolutional layers. - kernel_size (int): size of the convolution filter in each layer. - dilations (list): list of dilation value for each conv layer in a block. - """ - - def __init__(self, channels, kernel_size=3, dilation=(1, 3, 5)): - super().__init__() - self.convs1 = nn.ModuleList( - [ - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[0], - padding=get_padding(kernel_size, dilation[0]), - ) - ), - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[1], - padding=get_padding(kernel_size, dilation[1]), - ) - ), - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[2], - padding=get_padding(kernel_size, dilation[2]), - ) - ), - ] - ) - - self.convs2 = nn.ModuleList( - [ - weight_norm( - Conv1d(channels, channels, kernel_size, 1, dilation=1, padding=get_padding(kernel_size, 1)) - ), - weight_norm( - Conv1d(channels, channels, kernel_size, 1, dilation=1, padding=get_padding(kernel_size, 1)) - ), - weight_norm( - Conv1d(channels, channels, kernel_size, 1, dilation=1, padding=get_padding(kernel_size, 1)) - ), - ] - ) - - def forward(self, x): - """ - Args: - x (Tensor): input tensor. - Returns: - Tensor: output tensor. - Shapes: - x: [B, C, T] - """ - for c1, c2 in zip(self.convs1, self.convs2): - xt = F.leaky_relu(x, LRELU_SLOPE) - xt = c1(xt) - xt = F.leaky_relu(xt, LRELU_SLOPE) - xt = c2(xt) - x = xt + x - return x - - def remove_weight_norm(self): - for l in self.convs1: - remove_weight_norm(l) - for l in self.convs2: - remove_weight_norm(l) - - -class ResBlock2(torch.nn.Module): - """Residual Block Type 2. It has 1 convolutional layers in each convolutional block. - - Network:: - - x -> lrelu -> conv1-> -> z -> lrelu -> conv2-> o -> + -> o - |---------------------------------------------------| - - - Args: - channels (int): number of hidden channels for the convolutional layers. - kernel_size (int): size of the convolution filter in each layer. - dilations (list): list of dilation value for each conv layer in a block. - """ - - def __init__(self, channels, kernel_size=3, dilation=(1, 3)): - super().__init__() - self.convs = nn.ModuleList( - [ - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[0], - padding=get_padding(kernel_size, dilation[0]), - ) - ), - weight_norm( - Conv1d( - channels, - channels, - kernel_size, - 1, - dilation=dilation[1], - padding=get_padding(kernel_size, dilation[1]), - ) - ), - ] - ) - - def forward(self, x): - for c in self.convs: - xt = F.leaky_relu(x, LRELU_SLOPE) - xt = c(xt) - x = xt + x - return x - - def remove_weight_norm(self): - for l in self.convs: - remove_weight_norm(l) - - -class HifiganGenerator(torch.nn.Module): - def __init__( - self, - in_channels, - out_channels, - resblock_type, - resblock_dilation_sizes, - resblock_kernel_sizes, - upsample_kernel_sizes, - upsample_initial_channel, - upsample_factors, - inference_padding=5, - cond_channels=0, - conv_pre_weight_norm=True, - conv_post_weight_norm=True, - conv_post_bias=True, - ): - r"""HiFiGAN Generator with Multi-Receptive Field Fusion (MRF) - - Network: - x -> lrelu -> upsampling_layer -> resblock1_k1x1 -> z1 -> + -> z_sum / #resblocks -> lrelu -> conv_post_7x1 -> tanh -> o - .. -> zI ---| - resblockN_kNx1 -> zN ---' - - Args: - in_channels (int): number of input tensor channels. - out_channels (int): number of output tensor channels. - resblock_type (str): type of the `ResBlock`. '1' or '2'. - resblock_dilation_sizes (List[List[int]]): list of dilation values in each layer of a `ResBlock`. - resblock_kernel_sizes (List[int]): list of kernel sizes for each `ResBlock`. - upsample_kernel_sizes (List[int]): list of kernel sizes for each transposed convolution. - upsample_initial_channel (int): number of channels for the first upsampling layer. This is divided by 2 - for each consecutive upsampling layer. - upsample_factors (List[int]): upsampling factors (stride) for each upsampling layer. - inference_padding (int): constant padding applied to the input at inference time. Defaults to 5. - """ - super().__init__() - self.inference_padding = inference_padding - self.num_kernels = len(resblock_kernel_sizes) - self.num_upsamples = len(upsample_factors) - # initial upsampling layers - self.conv_pre = weight_norm(Conv1d(in_channels, upsample_initial_channel, 7, 1, padding=3)) - resblock = ResBlock1 if resblock_type == "1" else ResBlock2 - # upsampling layers - self.ups = nn.ModuleList() - for i, (u, k) in enumerate(zip(upsample_factors, upsample_kernel_sizes)): - self.ups.append( - weight_norm( - ConvTranspose1d( - upsample_initial_channel // (2**i), - upsample_initial_channel // (2 ** (i + 1)), - k, - u, - padding=(k - u) // 2, - ) - ) - ) - # MRF blocks - self.resblocks = nn.ModuleList() - for i in range(len(self.ups)): - ch = upsample_initial_channel // (2 ** (i + 1)) - for _, (k, d) in enumerate(zip(resblock_kernel_sizes, resblock_dilation_sizes)): - self.resblocks.append(resblock(ch, k, d)) - # post convolution layer - self.conv_post = weight_norm(Conv1d(ch, out_channels, 7, 1, padding=3, bias=conv_post_bias)) - if cond_channels > 0: - self.cond_layer = nn.Conv1d(cond_channels, upsample_initial_channel, 1) - - if not conv_pre_weight_norm: - remove_weight_norm(self.conv_pre) - - if not conv_post_weight_norm: - remove_weight_norm(self.conv_post) - - def forward(self, x, g=None): - """ - Args: - x (Tensor): feature input tensor. - g (Tensor): global conditioning input tensor. - - Returns: - Tensor: output waveform. - - Shapes: - x: [B, C, T] - Tensor: [B, 1, T] - """ - o = self.conv_pre(x) - if hasattr(self, "cond_layer"): - o = o + self.cond_layer(g) - for i in range(self.num_upsamples): - o = F.leaky_relu(o, LRELU_SLOPE) - o = self.ups[i](o) - z_sum = None - for j in range(self.num_kernels): - if z_sum is None: - z_sum = self.resblocks[i * self.num_kernels + j](o) - else: - z_sum += self.resblocks[i * self.num_kernels + j](o) - o = z_sum / self.num_kernels - o = F.leaky_relu(o) - o = self.conv_post(o) - o = torch.tanh(o) - return o - - @torch.no_grad() - def inference(self, c): - """ - Args: - x (Tensor): conditioning input tensor. - - Returns: - Tensor: output waveform. - - Shapes: - x: [B, C, T] - Tensor: [B, 1, T] - """ - c = c.to(self.conv_pre.weight.device) - c = torch.nn.functional.pad(c, (self.inference_padding, self.inference_padding), "replicate") - return self.forward(c) - - def remove_weight_norm(self): - print("Removing weight norm...") - for l in self.ups: - remove_weight_norm(l) - for l in self.resblocks: - l.remove_weight_norm() - remove_weight_norm(self.conv_pre) - remove_weight_norm(self.conv_post) - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - self.remove_weight_norm() diff --git a/TTS/vocoder/models/melgan_discriminator.py b/TTS/vocoder/models/melgan_discriminator.py deleted file mode 100644 index 14f00c5927cb28449c4fb0dc0727cde014370c2b..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/melgan_discriminator.py +++ /dev/null @@ -1,84 +0,0 @@ -import numpy as np -from torch import nn -from torch.nn.utils import weight_norm - - -class MelganDiscriminator(nn.Module): - def __init__( - self, - in_channels=1, - out_channels=1, - kernel_sizes=(5, 3), - base_channels=16, - max_channels=1024, - downsample_factors=(4, 4, 4, 4), - groups_denominator=4, - ): - super().__init__() - self.layers = nn.ModuleList() - - layer_kernel_size = np.prod(kernel_sizes) - layer_padding = (layer_kernel_size - 1) // 2 - - # initial layer - self.layers += [ - nn.Sequential( - nn.ReflectionPad1d(layer_padding), - weight_norm(nn.Conv1d(in_channels, base_channels, layer_kernel_size, stride=1)), - nn.LeakyReLU(0.2, inplace=True), - ) - ] - - # downsampling layers - layer_in_channels = base_channels - for downsample_factor in downsample_factors: - layer_out_channels = min(layer_in_channels * downsample_factor, max_channels) - layer_kernel_size = downsample_factor * 10 + 1 - layer_padding = (layer_kernel_size - 1) // 2 - layer_groups = layer_in_channels // groups_denominator - self.layers += [ - nn.Sequential( - weight_norm( - nn.Conv1d( - layer_in_channels, - layer_out_channels, - kernel_size=layer_kernel_size, - stride=downsample_factor, - padding=layer_padding, - groups=layer_groups, - ) - ), - nn.LeakyReLU(0.2, inplace=True), - ) - ] - layer_in_channels = layer_out_channels - - # last 2 layers - layer_padding1 = (kernel_sizes[0] - 1) // 2 - layer_padding2 = (kernel_sizes[1] - 1) // 2 - self.layers += [ - nn.Sequential( - weight_norm( - nn.Conv1d( - layer_out_channels, - layer_out_channels, - kernel_size=kernel_sizes[0], - stride=1, - padding=layer_padding1, - ) - ), - nn.LeakyReLU(0.2, inplace=True), - ), - weight_norm( - nn.Conv1d( - layer_out_channels, out_channels, kernel_size=kernel_sizes[1], stride=1, padding=layer_padding2 - ) - ), - ] - - def forward(self, x): - feats = [] - for layer in self.layers: - x = layer(x) - feats.append(x) - return x, feats diff --git a/TTS/vocoder/models/melgan_generator.py b/TTS/vocoder/models/melgan_generator.py deleted file mode 100644 index 989797f0b8537c96ff4cfd1c2c6af856cecc79fc..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/melgan_generator.py +++ /dev/null @@ -1,95 +0,0 @@ -import torch -from torch import nn -from torch.nn.utils import weight_norm - -from TTS.utils.io import load_fsspec -from TTS.vocoder.layers.melgan import ResidualStack - - -class MelganGenerator(nn.Module): - def __init__( - self, - in_channels=80, - out_channels=1, - proj_kernel=7, - base_channels=512, - upsample_factors=(8, 8, 2, 2), - res_kernel=3, - num_res_blocks=3, - ): - super().__init__() - - # assert model parameters - assert (proj_kernel - 1) % 2 == 0, " [!] proj_kernel should be an odd number." - - # setup additional model parameters - base_padding = (proj_kernel - 1) // 2 - act_slope = 0.2 - self.inference_padding = 2 - - # initial layer - layers = [] - layers += [ - nn.ReflectionPad1d(base_padding), - weight_norm(nn.Conv1d(in_channels, base_channels, kernel_size=proj_kernel, stride=1, bias=True)), - ] - - # upsampling layers and residual stacks - for idx, upsample_factor in enumerate(upsample_factors): - layer_in_channels = base_channels // (2**idx) - layer_out_channels = base_channels // (2 ** (idx + 1)) - layer_filter_size = upsample_factor * 2 - layer_stride = upsample_factor - layer_output_padding = upsample_factor % 2 - layer_padding = upsample_factor // 2 + layer_output_padding - layers += [ - nn.LeakyReLU(act_slope), - weight_norm( - nn.ConvTranspose1d( - layer_in_channels, - layer_out_channels, - layer_filter_size, - stride=layer_stride, - padding=layer_padding, - output_padding=layer_output_padding, - bias=True, - ) - ), - ResidualStack(channels=layer_out_channels, num_res_blocks=num_res_blocks, kernel_size=res_kernel), - ] - - layers += [nn.LeakyReLU(act_slope)] - - # final layer - layers += [ - nn.ReflectionPad1d(base_padding), - weight_norm(nn.Conv1d(layer_out_channels, out_channels, proj_kernel, stride=1, bias=True)), - nn.Tanh(), - ] - self.layers = nn.Sequential(*layers) - - def forward(self, c): - return self.layers(c) - - def inference(self, c): - c = c.to(self.layers[1].weight.device) - c = torch.nn.functional.pad(c, (self.inference_padding, self.inference_padding), "replicate") - return self.layers(c) - - def remove_weight_norm(self): - for _, layer in enumerate(self.layers): - if len(layer.state_dict()) != 0: - try: - nn.utils.remove_weight_norm(layer) - except ValueError: - layer.remove_weight_norm() - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - self.remove_weight_norm() diff --git a/TTS/vocoder/models/melgan_multiscale_discriminator.py b/TTS/vocoder/models/melgan_multiscale_discriminator.py deleted file mode 100644 index b4909f37c0c91c6fee8bb0baab98a8662039dea1..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/melgan_multiscale_discriminator.py +++ /dev/null @@ -1,50 +0,0 @@ -from torch import nn - -from TTS.vocoder.models.melgan_discriminator import MelganDiscriminator - - -class MelganMultiscaleDiscriminator(nn.Module): - def __init__( - self, - in_channels=1, - out_channels=1, - num_scales=3, - kernel_sizes=(5, 3), - base_channels=16, - max_channels=1024, - downsample_factors=(4, 4, 4), - pooling_kernel_size=4, - pooling_stride=2, - pooling_padding=2, - groups_denominator=4, - ): - super().__init__() - - self.discriminators = nn.ModuleList( - [ - MelganDiscriminator( - in_channels=in_channels, - out_channels=out_channels, - kernel_sizes=kernel_sizes, - base_channels=base_channels, - max_channels=max_channels, - downsample_factors=downsample_factors, - groups_denominator=groups_denominator, - ) - for _ in range(num_scales) - ] - ) - - self.pooling = nn.AvgPool1d( - kernel_size=pooling_kernel_size, stride=pooling_stride, padding=pooling_padding, count_include_pad=False - ) - - def forward(self, x): - scores = [] - feats = [] - for disc in self.discriminators: - score, feat = disc(x) - scores.append(score) - feats.append(feat) - x = self.pooling(x) - return scores, feats diff --git a/TTS/vocoder/models/multiband_melgan_generator.py b/TTS/vocoder/models/multiband_melgan_generator.py deleted file mode 100644 index 25d6590659cf5863176eb6609c7609b0e1b28d12..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/multiband_melgan_generator.py +++ /dev/null @@ -1,41 +0,0 @@ -import torch - -from TTS.vocoder.layers.pqmf import PQMF -from TTS.vocoder.models.melgan_generator import MelganGenerator - - -class MultibandMelganGenerator(MelganGenerator): - def __init__( - self, - in_channels=80, - out_channels=4, - proj_kernel=7, - base_channels=384, - upsample_factors=(2, 8, 2, 2), - res_kernel=3, - num_res_blocks=3, - ): - super().__init__( - in_channels=in_channels, - out_channels=out_channels, - proj_kernel=proj_kernel, - base_channels=base_channels, - upsample_factors=upsample_factors, - res_kernel=res_kernel, - num_res_blocks=num_res_blocks, - ) - self.pqmf_layer = PQMF(N=4, taps=62, cutoff=0.15, beta=9.0) - - def pqmf_analysis(self, x): - return self.pqmf_layer.analysis(x) - - def pqmf_synthesis(self, x): - return self.pqmf_layer.synthesis(x) - - @torch.no_grad() - def inference(self, cond_features): - cond_features = cond_features.to(self.layers[1].weight.device) - cond_features = torch.nn.functional.pad( - cond_features, (self.inference_padding, self.inference_padding), "replicate" - ) - return self.pqmf_synthesis(self.layers(cond_features)) diff --git a/TTS/vocoder/models/parallel_wavegan_discriminator.py b/TTS/vocoder/models/parallel_wavegan_discriminator.py deleted file mode 100644 index adf1bdaea040e99dd66829b9b8ed184146e155cb..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/parallel_wavegan_discriminator.py +++ /dev/null @@ -1,186 +0,0 @@ -import math - -import torch -from torch import nn - -from TTS.vocoder.layers.parallel_wavegan import ResidualBlock - - -class ParallelWaveganDiscriminator(nn.Module): - """PWGAN discriminator as in https://arxiv.org/abs/1910.11480. - It classifies each audio window real/fake and returns a sequence - of predictions. - It is a stack of convolutional blocks with dilation. - """ - - # pylint: disable=dangerous-default-value - def __init__( - self, - in_channels=1, - out_channels=1, - kernel_size=3, - num_layers=10, - conv_channels=64, - dilation_factor=1, - nonlinear_activation="LeakyReLU", - nonlinear_activation_params={"negative_slope": 0.2}, - bias=True, - ): - super().__init__() - assert (kernel_size - 1) % 2 == 0, " [!] does not support even number kernel size." - assert dilation_factor > 0, " [!] dilation factor must be > 0." - self.conv_layers = nn.ModuleList() - conv_in_channels = in_channels - for i in range(num_layers - 1): - if i == 0: - dilation = 1 - else: - dilation = i if dilation_factor == 1 else dilation_factor**i - conv_in_channels = conv_channels - padding = (kernel_size - 1) // 2 * dilation - conv_layer = [ - nn.Conv1d( - conv_in_channels, - conv_channels, - kernel_size=kernel_size, - padding=padding, - dilation=dilation, - bias=bias, - ), - getattr(nn, nonlinear_activation)(inplace=True, **nonlinear_activation_params), - ] - self.conv_layers += conv_layer - padding = (kernel_size - 1) // 2 - last_conv_layer = nn.Conv1d(conv_in_channels, out_channels, kernel_size=kernel_size, padding=padding, bias=bias) - self.conv_layers += [last_conv_layer] - self.apply_weight_norm() - - def forward(self, x): - """ - x : (B, 1, T). - Returns: - Tensor: (B, 1, T) - """ - for f in self.conv_layers: - x = f(x) - return x - - def apply_weight_norm(self): - def _apply_weight_norm(m): - if isinstance(m, (torch.nn.Conv1d, torch.nn.Conv2d)): - torch.nn.utils.weight_norm(m) - - self.apply(_apply_weight_norm) - - def remove_weight_norm(self): - def _remove_weight_norm(m): - try: - # print(f"Weight norm is removed from {m}.") - nn.utils.remove_weight_norm(m) - except ValueError: # this module didn't have weight norm - return - - self.apply(_remove_weight_norm) - - -class ResidualParallelWaveganDiscriminator(nn.Module): - # pylint: disable=dangerous-default-value - def __init__( - self, - in_channels=1, - out_channels=1, - kernel_size=3, - num_layers=30, - stacks=3, - res_channels=64, - gate_channels=128, - skip_channels=64, - dropout=0.0, - bias=True, - nonlinear_activation="LeakyReLU", - nonlinear_activation_params={"negative_slope": 0.2}, - ): - super().__init__() - assert (kernel_size - 1) % 2 == 0, "Not support even number kernel size." - - self.in_channels = in_channels - self.out_channels = out_channels - self.num_layers = num_layers - self.stacks = stacks - self.kernel_size = kernel_size - self.res_factor = math.sqrt(1.0 / num_layers) - - # check the number of num_layers and stacks - assert num_layers % stacks == 0 - layers_per_stack = num_layers // stacks - - # define first convolution - self.first_conv = nn.Sequential( - nn.Conv1d(in_channels, res_channels, kernel_size=1, padding=0, dilation=1, bias=True), - getattr(nn, nonlinear_activation)(inplace=True, **nonlinear_activation_params), - ) - - # define residual blocks - self.conv_layers = nn.ModuleList() - for layer in range(num_layers): - dilation = 2 ** (layer % layers_per_stack) - conv = ResidualBlock( - kernel_size=kernel_size, - res_channels=res_channels, - gate_channels=gate_channels, - skip_channels=skip_channels, - aux_channels=-1, - dilation=dilation, - dropout=dropout, - bias=bias, - use_causal_conv=False, - ) - self.conv_layers += [conv] - - # define output layers - self.last_conv_layers = nn.ModuleList( - [ - getattr(nn, nonlinear_activation)(inplace=True, **nonlinear_activation_params), - nn.Conv1d(skip_channels, skip_channels, kernel_size=1, padding=0, dilation=1, bias=True), - getattr(nn, nonlinear_activation)(inplace=True, **nonlinear_activation_params), - nn.Conv1d(skip_channels, out_channels, kernel_size=1, padding=0, dilation=1, bias=True), - ] - ) - - # apply weight norm - self.apply_weight_norm() - - def forward(self, x): - """ - x: (B, 1, T). - """ - x = self.first_conv(x) - - skips = 0 - for f in self.conv_layers: - x, h = f(x, None) - skips += h - skips *= self.res_factor - - # apply final layers - x = skips - for f in self.last_conv_layers: - x = f(x) - return x - - def apply_weight_norm(self): - def _apply_weight_norm(m): - if isinstance(m, (torch.nn.Conv1d, torch.nn.Conv2d)): - torch.nn.utils.weight_norm(m) - - self.apply(_apply_weight_norm) - - def remove_weight_norm(self): - def _remove_weight_norm(m): - try: - print(f"Weight norm is removed from {m}.") - nn.utils.remove_weight_norm(m) - except ValueError: # this module didn't have weight norm - return - - self.apply(_remove_weight_norm) diff --git a/TTS/vocoder/models/parallel_wavegan_generator.py b/TTS/vocoder/models/parallel_wavegan_generator.py deleted file mode 100644 index 5587fb7264d8ab98b3d5fa8086268c0e06aefc86..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/parallel_wavegan_generator.py +++ /dev/null @@ -1,163 +0,0 @@ -import math - -import numpy as np -import torch - -from TTS.utils.io import load_fsspec -from TTS.vocoder.layers.parallel_wavegan import ResidualBlock -from TTS.vocoder.layers.upsample import ConvUpsample - - -class ParallelWaveganGenerator(torch.nn.Module): - """PWGAN generator as in https://arxiv.org/pdf/1910.11480.pdf. - It is similar to WaveNet with no causal convolution. - It is conditioned on an aux feature (spectrogram) to generate - an output waveform from an input noise. - """ - - # pylint: disable=dangerous-default-value - def __init__( - self, - in_channels=1, - out_channels=1, - kernel_size=3, - num_res_blocks=30, - stacks=3, - res_channels=64, - gate_channels=128, - skip_channels=64, - aux_channels=80, - dropout=0.0, - bias=True, - use_weight_norm=True, - upsample_factors=[4, 4, 4, 4], - inference_padding=2, - ): - super().__init__() - self.in_channels = in_channels - self.out_channels = out_channels - self.aux_channels = aux_channels - self.num_res_blocks = num_res_blocks - self.stacks = stacks - self.kernel_size = kernel_size - self.upsample_factors = upsample_factors - self.upsample_scale = np.prod(upsample_factors) - self.inference_padding = inference_padding - self.use_weight_norm = use_weight_norm - - # check the number of layers and stacks - assert num_res_blocks % stacks == 0 - layers_per_stack = num_res_blocks // stacks - - # define first convolution - self.first_conv = torch.nn.Conv1d(in_channels, res_channels, kernel_size=1, bias=True) - - # define conv + upsampling network - self.upsample_net = ConvUpsample(upsample_factors=upsample_factors) - - # define residual blocks - self.conv_layers = torch.nn.ModuleList() - for layer in range(num_res_blocks): - dilation = 2 ** (layer % layers_per_stack) - conv = ResidualBlock( - kernel_size=kernel_size, - res_channels=res_channels, - gate_channels=gate_channels, - skip_channels=skip_channels, - aux_channels=aux_channels, - dilation=dilation, - dropout=dropout, - bias=bias, - ) - self.conv_layers += [conv] - - # define output layers - self.last_conv_layers = torch.nn.ModuleList( - [ - torch.nn.ReLU(inplace=True), - torch.nn.Conv1d(skip_channels, skip_channels, kernel_size=1, bias=True), - torch.nn.ReLU(inplace=True), - torch.nn.Conv1d(skip_channels, out_channels, kernel_size=1, bias=True), - ] - ) - - # apply weight norm - if use_weight_norm: - self.apply_weight_norm() - - def forward(self, c): - """ - c: (B, C ,T'). - o: Output tensor (B, out_channels, T) - """ - # random noise - x = torch.randn([c.shape[0], 1, c.shape[2] * self.upsample_scale]) - x = x.to(self.first_conv.bias.device) - - # perform upsampling - if c is not None and self.upsample_net is not None: - c = self.upsample_net(c) - assert ( - c.shape[-1] == x.shape[-1] - ), f" [!] Upsampling scale does not match the expected output. {c.shape} vs {x.shape}" - - # encode to hidden representation - x = self.first_conv(x) - skips = 0 - for f in self.conv_layers: - x, h = f(x, c) - skips += h - skips *= math.sqrt(1.0 / len(self.conv_layers)) - - # apply final layers - x = skips - for f in self.last_conv_layers: - x = f(x) - - return x - - @torch.no_grad() - def inference(self, c): - c = c.to(self.first_conv.weight.device) - c = torch.nn.functional.pad(c, (self.inference_padding, self.inference_padding), "replicate") - return self.forward(c) - - def remove_weight_norm(self): - def _remove_weight_norm(m): - try: - # print(f"Weight norm is removed from {m}.") - torch.nn.utils.remove_weight_norm(m) - except ValueError: # this module didn't have weight norm - return - - self.apply(_remove_weight_norm) - - def apply_weight_norm(self): - def _apply_weight_norm(m): - if isinstance(m, (torch.nn.Conv1d, torch.nn.Conv2d)): - torch.nn.utils.weight_norm(m) - # print(f"Weight norm is applied to {m}.") - - self.apply(_apply_weight_norm) - - @staticmethod - def _get_receptive_field_size(layers, stacks, kernel_size, dilation=lambda x: 2**x): - assert layers % stacks == 0 - layers_per_cycle = layers // stacks - dilations = [dilation(i % layers_per_cycle) for i in range(layers)] - return (kernel_size - 1) * sum(dilations) + 1 - - @property - def receptive_field_size(self): - return self._get_receptive_field_size(self.layers, self.stacks, self.kernel_size) - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - if self.use_weight_norm: - self.remove_weight_norm() diff --git a/TTS/vocoder/models/random_window_discriminator.py b/TTS/vocoder/models/random_window_discriminator.py deleted file mode 100644 index 79b68e9780ff1703b0f4955e37fe93c02d97ea09..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/random_window_discriminator.py +++ /dev/null @@ -1,203 +0,0 @@ -import numpy as np -from torch import nn - - -class GBlock(nn.Module): - def __init__(self, in_channels, cond_channels, downsample_factor): - super().__init__() - - self.in_channels = in_channels - self.cond_channels = cond_channels - self.downsample_factor = downsample_factor - - self.start = nn.Sequential( - nn.AvgPool1d(downsample_factor, stride=downsample_factor), - nn.ReLU(), - nn.Conv1d(in_channels, in_channels * 2, kernel_size=3, padding=1), - ) - self.lc_conv1d = nn.Conv1d(cond_channels, in_channels * 2, kernel_size=1) - self.end = nn.Sequential( - nn.ReLU(), nn.Conv1d(in_channels * 2, in_channels * 2, kernel_size=3, dilation=2, padding=2) - ) - self.residual = nn.Sequential( - nn.Conv1d(in_channels, in_channels * 2, kernel_size=1), - nn.AvgPool1d(downsample_factor, stride=downsample_factor), - ) - - def forward(self, inputs, conditions): - outputs = self.start(inputs) + self.lc_conv1d(conditions) - outputs = self.end(outputs) - residual_outputs = self.residual(inputs) - outputs = outputs + residual_outputs - - return outputs - - -class DBlock(nn.Module): - def __init__(self, in_channels, out_channels, downsample_factor): - super().__init__() - - self.in_channels = in_channels - self.downsample_factor = downsample_factor - self.out_channels = out_channels - - self.donwsample_layer = nn.AvgPool1d(downsample_factor, stride=downsample_factor) - self.layers = nn.Sequential( - nn.ReLU(), - nn.Conv1d(in_channels, out_channels, kernel_size=3, padding=1), - nn.ReLU(), - nn.Conv1d(out_channels, out_channels, kernel_size=3, dilation=2, padding=2), - ) - self.residual = nn.Sequential( - nn.Conv1d(in_channels, out_channels, kernel_size=1), - ) - - def forward(self, inputs): - if self.downsample_factor > 1: - outputs = self.layers(self.donwsample_layer(inputs)) + self.donwsample_layer(self.residual(inputs)) - else: - outputs = self.layers(inputs) + self.residual(inputs) - return outputs - - -class ConditionalDiscriminator(nn.Module): - def __init__(self, in_channels, cond_channels, downsample_factors=(2, 2, 2), out_channels=(128, 256)): - super().__init__() - - assert len(downsample_factors) == len(out_channels) + 1 - - self.in_channels = in_channels - self.cond_channels = cond_channels - self.downsample_factors = downsample_factors - self.out_channels = out_channels - - self.pre_cond_layers = nn.ModuleList() - self.post_cond_layers = nn.ModuleList() - - # layers before condition features - self.pre_cond_layers += [DBlock(in_channels, 64, 1)] - in_channels = 64 - for i, channel in enumerate(out_channels): - self.pre_cond_layers.append(DBlock(in_channels, channel, downsample_factors[i])) - in_channels = channel - - # condition block - self.cond_block = GBlock(in_channels, cond_channels, downsample_factors[-1]) - - # layers after condition block - self.post_cond_layers += [ - DBlock(in_channels * 2, in_channels * 2, 1), - DBlock(in_channels * 2, in_channels * 2, 1), - nn.AdaptiveAvgPool1d(1), - nn.Conv1d(in_channels * 2, 1, kernel_size=1), - ] - - def forward(self, inputs, conditions): - batch_size = inputs.size()[0] - outputs = inputs.view(batch_size, self.in_channels, -1) - for layer in self.pre_cond_layers: - outputs = layer(outputs) - outputs = self.cond_block(outputs, conditions) - for layer in self.post_cond_layers: - outputs = layer(outputs) - - return outputs - - -class UnconditionalDiscriminator(nn.Module): - def __init__(self, in_channels, base_channels=64, downsample_factors=(8, 4), out_channels=(128, 256)): - super().__init__() - - self.downsample_factors = downsample_factors - self.in_channels = in_channels - self.downsample_factors = downsample_factors - self.out_channels = out_channels - - self.layers = nn.ModuleList() - self.layers += [DBlock(self.in_channels, base_channels, 1)] - in_channels = base_channels - for i, factor in enumerate(downsample_factors): - self.layers.append(DBlock(in_channels, out_channels[i], factor)) - in_channels *= 2 - self.layers += [ - DBlock(in_channels, in_channels, 1), - DBlock(in_channels, in_channels, 1), - nn.AdaptiveAvgPool1d(1), - nn.Conv1d(in_channels, 1, kernel_size=1), - ] - - def forward(self, inputs): - batch_size = inputs.size()[0] - outputs = inputs.view(batch_size, self.in_channels, -1) - for layer in self.layers: - outputs = layer(outputs) - return outputs - - -class RandomWindowDiscriminator(nn.Module): - """Random Window Discriminator as described in - http://arxiv.org/abs/1909.11646""" - - def __init__( - self, - cond_channels, - hop_length, - uncond_disc_donwsample_factors=(8, 4), - cond_disc_downsample_factors=((8, 4, 2, 2, 2), (8, 4, 2, 2), (8, 4, 2), (8, 4), (4, 2, 2)), - cond_disc_out_channels=((128, 128, 256, 256), (128, 256, 256), (128, 256), (256,), (128, 256)), - window_sizes=(512, 1024, 2048, 4096, 8192), - ): - super().__init__() - self.cond_channels = cond_channels - self.window_sizes = window_sizes - self.hop_length = hop_length - self.base_window_size = self.hop_length * 2 - self.ks = [ws // self.base_window_size for ws in window_sizes] - - # check arguments - assert len(cond_disc_downsample_factors) == len(cond_disc_out_channels) == len(window_sizes) - for ws in window_sizes: - assert ws % hop_length == 0 - - for idx, cf in enumerate(cond_disc_downsample_factors): - assert np.prod(cf) == hop_length // self.ks[idx] - - # define layers - self.unconditional_discriminators = nn.ModuleList([]) - for k in self.ks: - layer = UnconditionalDiscriminator( - in_channels=k, base_channels=64, downsample_factors=uncond_disc_donwsample_factors - ) - self.unconditional_discriminators.append(layer) - - self.conditional_discriminators = nn.ModuleList([]) - for idx, k in enumerate(self.ks): - layer = ConditionalDiscriminator( - in_channels=k, - cond_channels=cond_channels, - downsample_factors=cond_disc_downsample_factors[idx], - out_channels=cond_disc_out_channels[idx], - ) - self.conditional_discriminators.append(layer) - - def forward(self, x, c): - scores = [] - feats = [] - # unconditional pass - for window_size, layer in zip(self.window_sizes, self.unconditional_discriminators): - index = np.random.randint(x.shape[-1] - window_size) - - score = layer(x[:, :, index : index + window_size]) - scores.append(score) - - # conditional pass - for window_size, layer in zip(self.window_sizes, self.conditional_discriminators): - frame_size = window_size // self.hop_length - lc_index = np.random.randint(c.shape[-1] - frame_size) - sample_index = lc_index * self.hop_length - x_sub = x[:, :, sample_index : (lc_index + frame_size) * self.hop_length] - c_sub = c[:, :, lc_index : lc_index + frame_size] - - score = layer(x_sub, c_sub) - scores.append(score) - return scores, feats diff --git a/TTS/vocoder/models/univnet_discriminator.py b/TTS/vocoder/models/univnet_discriminator.py deleted file mode 100644 index 4c09520c2a218771d1f73ee98635c528d815fcf1..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/univnet_discriminator.py +++ /dev/null @@ -1,94 +0,0 @@ -import torch -import torch.nn.functional as F -from torch import nn -from torch.nn.utils import spectral_norm, weight_norm - -from TTS.utils.audio.torch_transforms import TorchSTFT -from TTS.vocoder.models.hifigan_discriminator import MultiPeriodDiscriminator - -LRELU_SLOPE = 0.1 - - -class SpecDiscriminator(nn.Module): - """docstring for Discriminator.""" - - def __init__(self, fft_size=1024, hop_length=120, win_length=600, use_spectral_norm=False): - super().__init__() - norm_f = weight_norm if use_spectral_norm is False else spectral_norm - self.fft_size = fft_size - self.hop_length = hop_length - self.win_length = win_length - self.stft = TorchSTFT(fft_size, hop_length, win_length) - self.discriminators = nn.ModuleList( - [ - norm_f(nn.Conv2d(1, 32, kernel_size=(3, 9), padding=(1, 4))), - norm_f(nn.Conv2d(32, 32, kernel_size=(3, 9), stride=(1, 2), padding=(1, 4))), - norm_f(nn.Conv2d(32, 32, kernel_size=(3, 9), stride=(1, 2), padding=(1, 4))), - norm_f(nn.Conv2d(32, 32, kernel_size=(3, 9), stride=(1, 2), padding=(1, 4))), - norm_f(nn.Conv2d(32, 32, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))), - ] - ) - - self.out = norm_f(nn.Conv2d(32, 1, 3, 1, 1)) - - def forward(self, y): - fmap = [] - with torch.no_grad(): - y = y.squeeze(1) - y = self.stft(y) - y = y.unsqueeze(1) - for _, d in enumerate(self.discriminators): - y = d(y) - y = F.leaky_relu(y, LRELU_SLOPE) - fmap.append(y) - - y = self.out(y) - fmap.append(y) - - return torch.flatten(y, 1, -1), fmap - - -class MultiResSpecDiscriminator(torch.nn.Module): - def __init__( # pylint: disable=dangerous-default-value - self, fft_sizes=[1024, 2048, 512], hop_sizes=[120, 240, 50], win_lengths=[600, 1200, 240], window="hann_window" - ): - super().__init__() - self.discriminators = nn.ModuleList( - [ - SpecDiscriminator(fft_sizes[0], hop_sizes[0], win_lengths[0], window), - SpecDiscriminator(fft_sizes[1], hop_sizes[1], win_lengths[1], window), - SpecDiscriminator(fft_sizes[2], hop_sizes[2], win_lengths[2], window), - ] - ) - - def forward(self, x): - scores = [] - feats = [] - for d in self.discriminators: - score, feat = d(x) - scores.append(score) - feats.append(feat) - - return scores, feats - - -class UnivnetDiscriminator(nn.Module): - """Univnet discriminator wrapping MPD and MSD.""" - - def __init__(self): - super().__init__() - self.mpd = MultiPeriodDiscriminator() - self.msd = MultiResSpecDiscriminator() - - def forward(self, x): - """ - Args: - x (Tensor): input waveform. - - Returns: - List[Tensor]: discriminator scores. - List[List[Tensor]]: list of list of features from each layers of each discriminator. - """ - scores, feats = self.mpd(x) - scores_, feats_ = self.msd(x) - return scores + scores_, feats + feats_ diff --git a/TTS/vocoder/models/univnet_generator.py b/TTS/vocoder/models/univnet_generator.py deleted file mode 100644 index 2ee28c7b85852c6b15df28907b6fd1195f3218cd..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/univnet_generator.py +++ /dev/null @@ -1,156 +0,0 @@ -from typing import List - -import numpy as np -import torch -import torch.nn.functional as F - -from TTS.vocoder.layers.lvc_block import LVCBlock - -LRELU_SLOPE = 0.1 - - -class UnivnetGenerator(torch.nn.Module): - def __init__( - self, - in_channels: int, - out_channels: int, - hidden_channels: int, - cond_channels: int, - upsample_factors: List[int], - lvc_layers_each_block: int, - lvc_kernel_size: int, - kpnet_hidden_channels: int, - kpnet_conv_size: int, - dropout: float, - use_weight_norm=True, - ): - """Univnet Generator network. - - Paper: https://arxiv.org/pdf/2106.07889.pdf - - Args: - in_channels (int): Number of input tensor channels. - out_channels (int): Number of channels of the output tensor. - hidden_channels (int): Number of hidden network channels. - cond_channels (int): Number of channels of the conditioning tensors. - upsample_factors (List[int]): List of uplsample factors for the upsampling layers. - lvc_layers_each_block (int): Number of LVC layers in each block. - lvc_kernel_size (int): Kernel size of the LVC layers. - kpnet_hidden_channels (int): Number of hidden channels in the key-point network. - kpnet_conv_size (int): Number of convolution channels in the key-point network. - dropout (float): Dropout rate. - use_weight_norm (bool, optional): Enable/disable weight norm. Defaults to True. - """ - - super().__init__() - self.in_channels = in_channels - self.out_channels = out_channels - self.cond_channels = cond_channels - self.upsample_scale = np.prod(upsample_factors) - self.lvc_block_nums = len(upsample_factors) - - # define first convolution - self.first_conv = torch.nn.Conv1d( - in_channels, hidden_channels, kernel_size=7, padding=(7 - 1) // 2, dilation=1, bias=True - ) - - # define residual blocks - self.lvc_blocks = torch.nn.ModuleList() - cond_hop_length = 1 - for n in range(self.lvc_block_nums): - cond_hop_length = cond_hop_length * upsample_factors[n] - lvcb = LVCBlock( - in_channels=hidden_channels, - cond_channels=cond_channels, - upsample_ratio=upsample_factors[n], - conv_layers=lvc_layers_each_block, - conv_kernel_size=lvc_kernel_size, - cond_hop_length=cond_hop_length, - kpnet_hidden_channels=kpnet_hidden_channels, - kpnet_conv_size=kpnet_conv_size, - kpnet_dropout=dropout, - ) - self.lvc_blocks += [lvcb] - - # define output layers - self.last_conv_layers = torch.nn.ModuleList( - [ - torch.nn.Conv1d( - hidden_channels, out_channels, kernel_size=7, padding=(7 - 1) // 2, dilation=1, bias=True - ), - ] - ) - - # apply weight norm - if use_weight_norm: - self.apply_weight_norm() - - def forward(self, c): - """Calculate forward propagation. - Args: - c (Tensor): Local conditioning auxiliary features (B, C ,T'). - Returns: - Tensor: Output tensor (B, out_channels, T) - """ - # random noise - x = torch.randn([c.shape[0], self.in_channels, c.shape[2]]) - x = x.to(self.first_conv.bias.device) - x = self.first_conv(x) - - for n in range(self.lvc_block_nums): - x = self.lvc_blocks[n](x, c) - - # apply final layers - for f in self.last_conv_layers: - x = F.leaky_relu(x, LRELU_SLOPE) - x = f(x) - x = torch.tanh(x) - return x - - def remove_weight_norm(self): - """Remove weight normalization module from all of the layers.""" - - def _remove_weight_norm(m): - try: - # print(f"Weight norm is removed from {m}.") - torch.nn.utils.remove_weight_norm(m) - except ValueError: # this module didn't have weight norm - return - - self.apply(_remove_weight_norm) - - def apply_weight_norm(self): - """Apply weight normalization module from all of the layers.""" - - def _apply_weight_norm(m): - if isinstance(m, (torch.nn.Conv1d, torch.nn.Conv2d)): - torch.nn.utils.weight_norm(m) - # print(f"Weight norm is applied to {m}.") - - self.apply(_apply_weight_norm) - - @staticmethod - def _get_receptive_field_size(layers, stacks, kernel_size, dilation=lambda x: 2**x): - assert layers % stacks == 0 - layers_per_cycle = layers // stacks - dilations = [dilation(i % layers_per_cycle) for i in range(layers)] - return (kernel_size - 1) * sum(dilations) + 1 - - @property - def receptive_field_size(self): - """Return receptive field size.""" - return self._get_receptive_field_size(self.layers, self.stacks, self.kernel_size) - - @torch.no_grad() - def inference(self, c): - """Perform inference. - Args: - c (Tensor): Local conditioning auxiliary features :math:`(B, C, T)`. - Returns: - Tensor: Output tensor (T, out_channels) - """ - x = torch.randn([c.shape[0], self.in_channels, c.shape[2]]) - x = x.to(self.first_conv.bias.device) - - c = c.to(next(self.parameters())) - return self.forward(c) diff --git a/TTS/vocoder/models/wavegrad.py b/TTS/vocoder/models/wavegrad.py deleted file mode 100644 index a0f9221a8f64fb9953527a6b859d114aabb702d2..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/wavegrad.py +++ /dev/null @@ -1,344 +0,0 @@ -from dataclasses import dataclass, field -from typing import Dict, List, Tuple - -import numpy as np -import torch -from coqpit import Coqpit -from torch import nn -from torch.nn.utils import weight_norm -from torch.utils.data import DataLoader -from torch.utils.data.distributed import DistributedSampler -from trainer.trainer_utils import get_optimizer, get_scheduler - -from TTS.utils.io import load_fsspec -from TTS.vocoder.datasets import WaveGradDataset -from TTS.vocoder.layers.wavegrad import Conv1d, DBlock, FiLM, UBlock -from TTS.vocoder.models.base_vocoder import BaseVocoder -from TTS.vocoder.utils.generic_utils import plot_results - - -@dataclass -class WavegradArgs(Coqpit): - in_channels: int = 80 - out_channels: int = 1 - use_weight_norm: bool = False - y_conv_channels: int = 32 - x_conv_channels: int = 768 - dblock_out_channels: List[int] = field(default_factory=lambda: [128, 128, 256, 512]) - ublock_out_channels: List[int] = field(default_factory=lambda: [512, 512, 256, 128, 128]) - upsample_factors: List[int] = field(default_factory=lambda: [4, 4, 4, 2, 2]) - upsample_dilations: List[List[int]] = field( - default_factory=lambda: [[1, 2, 1, 2], [1, 2, 1, 2], [1, 2, 4, 8], [1, 2, 4, 8], [1, 2, 4, 8]] - ) - - -class Wavegrad(BaseVocoder): - """🐸 🌊 WaveGrad 🌊 model. - Paper - https://arxiv.org/abs/2009.00713 - - Examples: - Initializing the model. - - >>> from TTS.vocoder.configs import WavegradConfig - >>> config = WavegradConfig() - >>> model = Wavegrad(config) - - Paper Abstract: - This paper introduces WaveGrad, a conditional model for waveform generation which estimates gradients of the - data density. The model is built on prior work on score matching and diffusion probabilistic models. It starts - from a Gaussian white noise signal and iteratively refines the signal via a gradient-based sampler conditioned - on the mel-spectrogram. WaveGrad offers a natural way to trade inference speed for sample quality by adjusting - the number of refinement steps, and bridges the gap between non-autoregressive and autoregressive models in - terms of audio quality. We find that it can generate high fidelity audio samples using as few as six iterations. - Experiments reveal WaveGrad to generate high fidelity audio, outperforming adversarial non-autoregressive - baselines and matching a strong likelihood-based autoregressive baseline using fewer sequential operations. - Audio samples are available at this https URL. - """ - - # pylint: disable=dangerous-default-value - def __init__(self, config: Coqpit): - super().__init__(config) - self.config = config - self.use_weight_norm = config.model_params.use_weight_norm - self.hop_len = np.prod(config.model_params.upsample_factors) - self.noise_level = None - self.num_steps = None - self.beta = None - self.alpha = None - self.alpha_hat = None - self.c1 = None - self.c2 = None - self.sigma = None - - # dblocks - self.y_conv = Conv1d(1, config.model_params.y_conv_channels, 5, padding=2) - self.dblocks = nn.ModuleList([]) - ic = config.model_params.y_conv_channels - for oc, df in zip(config.model_params.dblock_out_channels, reversed(config.model_params.upsample_factors)): - self.dblocks.append(DBlock(ic, oc, df)) - ic = oc - - # film - self.film = nn.ModuleList([]) - ic = config.model_params.y_conv_channels - for oc in reversed(config.model_params.ublock_out_channels): - self.film.append(FiLM(ic, oc)) - ic = oc - - # ublocksn - self.ublocks = nn.ModuleList([]) - ic = config.model_params.x_conv_channels - for oc, uf, ud in zip( - config.model_params.ublock_out_channels, - config.model_params.upsample_factors, - config.model_params.upsample_dilations, - ): - self.ublocks.append(UBlock(ic, oc, uf, ud)) - ic = oc - - self.x_conv = Conv1d(config.model_params.in_channels, config.model_params.x_conv_channels, 3, padding=1) - self.out_conv = Conv1d(oc, config.model_params.out_channels, 3, padding=1) - - if config.model_params.use_weight_norm: - self.apply_weight_norm() - - def forward(self, x, spectrogram, noise_scale): - shift_and_scale = [] - - x = self.y_conv(x) - shift_and_scale.append(self.film[0](x, noise_scale)) - - for film, layer in zip(self.film[1:], self.dblocks): - x = layer(x) - shift_and_scale.append(film(x, noise_scale)) - - x = self.x_conv(spectrogram) - for layer, (film_shift, film_scale) in zip(self.ublocks, reversed(shift_and_scale)): - x = layer(x, film_shift, film_scale) - x = self.out_conv(x) - return x - - def load_noise_schedule(self, path): - beta = np.load(path, allow_pickle=True).item()["beta"] # pylint: disable=unexpected-keyword-arg - self.compute_noise_level(beta) - - @torch.no_grad() - def inference(self, x, y_n=None): - """ - Shapes: - x: :math:`[B, C , T]` - y_n: :math:`[B, 1, T]` - """ - if y_n is None: - y_n = torch.randn(x.shape[0], 1, self.hop_len * x.shape[-1]) - else: - y_n = torch.FloatTensor(y_n).unsqueeze(0).unsqueeze(0) - y_n = y_n.type_as(x) - sqrt_alpha_hat = self.noise_level.to(x) - for n in range(len(self.alpha) - 1, -1, -1): - y_n = self.c1[n] * (y_n - self.c2[n] * self.forward(y_n, x, sqrt_alpha_hat[n].repeat(x.shape[0]))) - if n > 0: - z = torch.randn_like(y_n) - y_n += self.sigma[n - 1] * z - y_n.clamp_(-1.0, 1.0) - return y_n - - def compute_y_n(self, y_0): - """Compute noisy audio based on noise schedule""" - self.noise_level = self.noise_level.to(y_0) - if len(y_0.shape) == 3: - y_0 = y_0.squeeze(1) - s = torch.randint(0, self.num_steps - 1, [y_0.shape[0]]) - l_a, l_b = self.noise_level[s], self.noise_level[s + 1] - noise_scale = l_a + torch.rand(y_0.shape[0]).to(y_0) * (l_b - l_a) - noise_scale = noise_scale.unsqueeze(1) - noise = torch.randn_like(y_0) - noisy_audio = noise_scale * y_0 + (1.0 - noise_scale**2) ** 0.5 * noise - return noise.unsqueeze(1), noisy_audio.unsqueeze(1), noise_scale[:, 0] - - def compute_noise_level(self, beta): - """Compute noise schedule parameters""" - self.num_steps = len(beta) - alpha = 1 - beta - alpha_hat = np.cumprod(alpha) - noise_level = np.concatenate([[1.0], alpha_hat**0.5], axis=0) - noise_level = alpha_hat**0.5 - - # pylint: disable=not-callable - self.beta = torch.tensor(beta.astype(np.float32)) - self.alpha = torch.tensor(alpha.astype(np.float32)) - self.alpha_hat = torch.tensor(alpha_hat.astype(np.float32)) - self.noise_level = torch.tensor(noise_level.astype(np.float32)) - - self.c1 = 1 / self.alpha**0.5 - self.c2 = (1 - self.alpha) / (1 - self.alpha_hat) ** 0.5 - self.sigma = ((1.0 - self.alpha_hat[:-1]) / (1.0 - self.alpha_hat[1:]) * self.beta[1:]) ** 0.5 - - def remove_weight_norm(self): - for _, layer in enumerate(self.dblocks): - if len(layer.state_dict()) != 0: - try: - nn.utils.remove_weight_norm(layer) - except ValueError: - layer.remove_weight_norm() - - for _, layer in enumerate(self.film): - if len(layer.state_dict()) != 0: - try: - nn.utils.remove_weight_norm(layer) - except ValueError: - layer.remove_weight_norm() - - for _, layer in enumerate(self.ublocks): - if len(layer.state_dict()) != 0: - try: - nn.utils.remove_weight_norm(layer) - except ValueError: - layer.remove_weight_norm() - - nn.utils.remove_weight_norm(self.x_conv) - nn.utils.remove_weight_norm(self.out_conv) - nn.utils.remove_weight_norm(self.y_conv) - - def apply_weight_norm(self): - for _, layer in enumerate(self.dblocks): - if len(layer.state_dict()) != 0: - layer.apply_weight_norm() - - for _, layer in enumerate(self.film): - if len(layer.state_dict()) != 0: - layer.apply_weight_norm() - - for _, layer in enumerate(self.ublocks): - if len(layer.state_dict()) != 0: - layer.apply_weight_norm() - - self.x_conv = weight_norm(self.x_conv) - self.out_conv = weight_norm(self.out_conv) - self.y_conv = weight_norm(self.y_conv) - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - if self.config.model_params.use_weight_norm: - self.remove_weight_norm() - betas = np.linspace( - config["test_noise_schedule"]["min_val"], - config["test_noise_schedule"]["max_val"], - config["test_noise_schedule"]["num_steps"], - ) - self.compute_noise_level(betas) - else: - betas = np.linspace( - config["train_noise_schedule"]["min_val"], - config["train_noise_schedule"]["max_val"], - config["train_noise_schedule"]["num_steps"], - ) - self.compute_noise_level(betas) - - def train_step(self, batch: Dict, criterion: Dict) -> Tuple[Dict, Dict]: - # format data - x = batch["input"] - y = batch["waveform"] - - # set noise scale - noise, x_noisy, noise_scale = self.compute_y_n(y) - - # forward pass - noise_hat = self.forward(x_noisy, x, noise_scale) - - # compute losses - loss = criterion(noise, noise_hat) - return {"model_output": noise_hat}, {"loss": loss} - - def train_log( # pylint: disable=no-self-use - self, batch: Dict, outputs: Dict, logger: "Logger", assets: Dict, steps: int # pylint: disable=unused-argument - ) -> Tuple[Dict, np.ndarray]: - pass - - @torch.no_grad() - def eval_step(self, batch: Dict, criterion: nn.Module) -> Tuple[Dict, Dict]: - return self.train_step(batch, criterion) - - def eval_log( # pylint: disable=no-self-use - self, batch: Dict, outputs: Dict, logger: "Logger", assets: Dict, steps: int # pylint: disable=unused-argument - ) -> None: - pass - - def test(self, assets: Dict, test_loader: "DataLoader", outputs=None): # pylint: disable=unused-argument - # setup noise schedule and inference - ap = assets["audio_processor"] - noise_schedule = self.config["test_noise_schedule"] - betas = np.linspace(noise_schedule["min_val"], noise_schedule["max_val"], noise_schedule["num_steps"]) - self.compute_noise_level(betas) - samples = test_loader.dataset.load_test_samples(1) - for sample in samples: - x = sample[0] - x = x[None, :, :].to(next(self.parameters()).device) - y = sample[1] - y = y[None, :] - # compute voice - y_pred = self.inference(x) - # compute spectrograms - figures = plot_results(y_pred, y, ap, "test") - # Sample audio - sample_voice = y_pred[0].squeeze(0).detach().cpu().numpy() - return figures, {"test/audio": sample_voice} - - def get_optimizer(self): - return get_optimizer(self.config.optimizer, self.config.optimizer_params, self.config.lr, self) - - def get_scheduler(self, optimizer): - return get_scheduler(self.config.lr_scheduler, self.config.lr_scheduler_params, optimizer) - - @staticmethod - def get_criterion(): - return torch.nn.L1Loss() - - @staticmethod - def format_batch(batch: Dict) -> Dict: - # return a whole audio segment - m, y = batch[0], batch[1] - y = y.unsqueeze(1) - return {"input": m, "waveform": y} - - def get_data_loader(self, config: Coqpit, assets: Dict, is_eval: True, samples: List, verbose: bool, num_gpus: int): - ap = assets["audio_processor"] - dataset = WaveGradDataset( - ap=ap, - items=samples, - seq_len=self.config.seq_len, - hop_len=ap.hop_length, - pad_short=self.config.pad_short, - conv_pad=self.config.conv_pad, - is_training=not is_eval, - return_segments=True, - use_noise_augment=False, - use_cache=config.use_cache, - verbose=verbose, - ) - sampler = DistributedSampler(dataset) if num_gpus > 1 else None - loader = DataLoader( - dataset, - batch_size=self.config.batch_size, - shuffle=num_gpus <= 1, - drop_last=False, - sampler=sampler, - num_workers=self.config.num_eval_loader_workers if is_eval else self.config.num_loader_workers, - pin_memory=False, - ) - return loader - - def on_epoch_start(self, trainer): # pylint: disable=unused-argument - noise_schedule = self.config["train_noise_schedule"] - betas = np.linspace(noise_schedule["min_val"], noise_schedule["max_val"], noise_schedule["num_steps"]) - self.compute_noise_level(betas) - - @staticmethod - def init_from_config(config: "WavegradConfig"): - return Wavegrad(config) diff --git a/TTS/vocoder/models/wavernn.py b/TTS/vocoder/models/wavernn.py deleted file mode 100644 index 903f4b7e6308ce700d65ed60bb6098d1e39aa6b1..0000000000000000000000000000000000000000 --- a/TTS/vocoder/models/wavernn.py +++ /dev/null @@ -1,645 +0,0 @@ -import sys -import time -from dataclasses import dataclass, field -from typing import Dict, List, Tuple - -import numpy as np -import torch -import torch.nn.functional as F -from coqpit import Coqpit -from torch import nn -from torch.utils.data import DataLoader -from torch.utils.data.distributed import DistributedSampler - -from TTS.tts.utils.visual import plot_spectrogram -from TTS.utils.audio import AudioProcessor -from TTS.utils.io import load_fsspec -from TTS.vocoder.datasets.wavernn_dataset import WaveRNNDataset -from TTS.vocoder.layers.losses import WaveRNNLoss -from TTS.vocoder.models.base_vocoder import BaseVocoder -from TTS.vocoder.utils.distribution import sample_from_discretized_mix_logistic, sample_from_gaussian - - -def stream(string, variables): - sys.stdout.write(f"\r{string}" % variables) - - -# pylint: disable=abstract-method -# relates https://github.com/pytorch/pytorch/issues/42305 -class ResBlock(nn.Module): - def __init__(self, dims): - super().__init__() - self.conv1 = nn.Conv1d(dims, dims, kernel_size=1, bias=False) - self.conv2 = nn.Conv1d(dims, dims, kernel_size=1, bias=False) - self.batch_norm1 = nn.BatchNorm1d(dims) - self.batch_norm2 = nn.BatchNorm1d(dims) - - def forward(self, x): - residual = x - x = self.conv1(x) - x = self.batch_norm1(x) - x = F.relu(x) - x = self.conv2(x) - x = self.batch_norm2(x) - return x + residual - - -class MelResNet(nn.Module): - def __init__(self, num_res_blocks, in_dims, compute_dims, res_out_dims, pad): - super().__init__() - k_size = pad * 2 + 1 - self.conv_in = nn.Conv1d(in_dims, compute_dims, kernel_size=k_size, bias=False) - self.batch_norm = nn.BatchNorm1d(compute_dims) - self.layers = nn.ModuleList() - for _ in range(num_res_blocks): - self.layers.append(ResBlock(compute_dims)) - self.conv_out = nn.Conv1d(compute_dims, res_out_dims, kernel_size=1) - - def forward(self, x): - x = self.conv_in(x) - x = self.batch_norm(x) - x = F.relu(x) - for f in self.layers: - x = f(x) - x = self.conv_out(x) - return x - - -class Stretch2d(nn.Module): - def __init__(self, x_scale, y_scale): - super().__init__() - self.x_scale = x_scale - self.y_scale = y_scale - - def forward(self, x): - b, c, h, w = x.size() - x = x.unsqueeze(-1).unsqueeze(3) - x = x.repeat(1, 1, 1, self.y_scale, 1, self.x_scale) - return x.view(b, c, h * self.y_scale, w * self.x_scale) - - -class UpsampleNetwork(nn.Module): - def __init__( - self, - feat_dims, - upsample_scales, - compute_dims, - num_res_blocks, - res_out_dims, - pad, - use_aux_net, - ): - super().__init__() - self.total_scale = np.cumproduct(upsample_scales)[-1] - self.indent = pad * self.total_scale - self.use_aux_net = use_aux_net - if use_aux_net: - self.resnet = MelResNet(num_res_blocks, feat_dims, compute_dims, res_out_dims, pad) - self.resnet_stretch = Stretch2d(self.total_scale, 1) - self.up_layers = nn.ModuleList() - for scale in upsample_scales: - k_size = (1, scale * 2 + 1) - padding = (0, scale) - stretch = Stretch2d(scale, 1) - conv = nn.Conv2d(1, 1, kernel_size=k_size, padding=padding, bias=False) - conv.weight.data.fill_(1.0 / k_size[1]) - self.up_layers.append(stretch) - self.up_layers.append(conv) - - def forward(self, m): - if self.use_aux_net: - aux = self.resnet(m).unsqueeze(1) - aux = self.resnet_stretch(aux) - aux = aux.squeeze(1) - aux = aux.transpose(1, 2) - else: - aux = None - m = m.unsqueeze(1) - for f in self.up_layers: - m = f(m) - m = m.squeeze(1)[:, :, self.indent : -self.indent] - return m.transpose(1, 2), aux - - -class Upsample(nn.Module): - def __init__(self, scale, pad, num_res_blocks, feat_dims, compute_dims, res_out_dims, use_aux_net): - super().__init__() - self.scale = scale - self.pad = pad - self.indent = pad * scale - self.use_aux_net = use_aux_net - self.resnet = MelResNet(num_res_blocks, feat_dims, compute_dims, res_out_dims, pad) - - def forward(self, m): - if self.use_aux_net: - aux = self.resnet(m) - aux = torch.nn.functional.interpolate(aux, scale_factor=self.scale, mode="linear", align_corners=True) - aux = aux.transpose(1, 2) - else: - aux = None - m = torch.nn.functional.interpolate(m, scale_factor=self.scale, mode="linear", align_corners=True) - m = m[:, :, self.indent : -self.indent] - m = m * 0.045 # empirically found - - return m.transpose(1, 2), aux - - -@dataclass -class WavernnArgs(Coqpit): - """🐸 WaveRNN model arguments. - - rnn_dims (int): - Number of hidden channels in RNN layers. Defaults to 512. - fc_dims (int): - Number of hidden channels in fully-conntected layers. Defaults to 512. - compute_dims (int): - Number of hidden channels in the feature ResNet. Defaults to 128. - res_out_dim (int): - Number of hidden channels in the feature ResNet output. Defaults to 128. - num_res_blocks (int): - Number of residual blocks in the ResNet. Defaults to 10. - use_aux_net (bool): - enable/disable the feature ResNet. Defaults to True. - use_upsample_net (bool): - enable/ disable the upsampling networl. If False, basic upsampling is used. Defaults to True. - upsample_factors (list): - Upsampling factors. The multiply of the values must match the `hop_length`. Defaults to ```[4, 8, 8]```. - mode (str): - Output mode of the WaveRNN vocoder. `mold` for Mixture of Logistic Distribution, `gauss` for a single - Gaussian Distribution and `bits` for quantized bits as the model's output. - mulaw (bool): - enable / disable the use of Mulaw quantization for training. Only applicable if `mode == 'bits'`. Defaults - to `True`. - pad (int): - Padding applied to the input feature frames against the convolution layers of the feature network. - Defaults to 2. - """ - - rnn_dims: int = 512 - fc_dims: int = 512 - compute_dims: int = 128 - res_out_dims: int = 128 - num_res_blocks: int = 10 - use_aux_net: bool = True - use_upsample_net: bool = True - upsample_factors: List[int] = field(default_factory=lambda: [4, 8, 8]) - mode: str = "mold" # mold [string], gauss [string], bits [int] - mulaw: bool = True # apply mulaw if mode is bits - pad: int = 2 - feat_dims: int = 80 - - -class Wavernn(BaseVocoder): - def __init__(self, config: Coqpit): - """🐸 WaveRNN model. - Original paper - https://arxiv.org/abs/1802.08435 - Official implementation - https://github.com/fatchord/WaveRNN - - Args: - config (Coqpit): [description] - - Raises: - RuntimeError: [description] - - Examples: - >>> from TTS.vocoder.configs import WavernnConfig - >>> config = WavernnConfig() - >>> model = Wavernn(config) - - Paper Abstract: - Sequential models achieve state-of-the-art results in audio, visual and textual domains with respect to - both estimating the data distribution and generating high-quality samples. Efficient sampling for this - class of models has however remained an elusive problem. With a focus on text-to-speech synthesis, we - describe a set of general techniques for reducing sampling time while maintaining high output quality. - We first describe a single-layer recurrent neural network, the WaveRNN, with a dual softmax layer that - matches the quality of the state-of-the-art WaveNet model. The compact form of the network makes it - possible to generate 24kHz 16-bit audio 4x faster than real time on a GPU. Second, we apply a weight - pruning technique to reduce the number of weights in the WaveRNN. We find that, for a constant number of - parameters, large sparse networks perform better than small dense networks and this relationship holds for - sparsity levels beyond 96%. The small number of weights in a Sparse WaveRNN makes it possible to sample - high-fidelity audio on a mobile CPU in real time. Finally, we propose a new generation scheme based on - subscaling that folds a long sequence into a batch of shorter sequences and allows one to generate multiple - samples at once. The Subscale WaveRNN produces 16 samples per step without loss of quality and offers an - orthogonal method for increasing sampling efficiency. - """ - super().__init__(config) - - if isinstance(self.args.mode, int): - self.n_classes = 2**self.args.mode - elif self.args.mode == "mold": - self.n_classes = 3 * 10 - elif self.args.mode == "gauss": - self.n_classes = 2 - else: - raise RuntimeError("Unknown model mode value - ", self.args.mode) - - self.ap = AudioProcessor(**config.audio.to_dict()) - self.aux_dims = self.args.res_out_dims // 4 - - if self.args.use_upsample_net: - assert ( - np.cumproduct(self.args.upsample_factors)[-1] == config.audio.hop_length - ), " [!] upsample scales needs to be equal to hop_length" - self.upsample = UpsampleNetwork( - self.args.feat_dims, - self.args.upsample_factors, - self.args.compute_dims, - self.args.num_res_blocks, - self.args.res_out_dims, - self.args.pad, - self.args.use_aux_net, - ) - else: - self.upsample = Upsample( - config.audio.hop_length, - self.args.pad, - self.args.num_res_blocks, - self.args.feat_dims, - self.args.compute_dims, - self.args.res_out_dims, - self.args.use_aux_net, - ) - if self.args.use_aux_net: - self.I = nn.Linear(self.args.feat_dims + self.aux_dims + 1, self.args.rnn_dims) - self.rnn1 = nn.GRU(self.args.rnn_dims, self.args.rnn_dims, batch_first=True) - self.rnn2 = nn.GRU(self.args.rnn_dims + self.aux_dims, self.args.rnn_dims, batch_first=True) - self.fc1 = nn.Linear(self.args.rnn_dims + self.aux_dims, self.args.fc_dims) - self.fc2 = nn.Linear(self.args.fc_dims + self.aux_dims, self.args.fc_dims) - self.fc3 = nn.Linear(self.args.fc_dims, self.n_classes) - else: - self.I = nn.Linear(self.args.feat_dims + 1, self.args.rnn_dims) - self.rnn1 = nn.GRU(self.args.rnn_dims, self.args.rnn_dims, batch_first=True) - self.rnn2 = nn.GRU(self.args.rnn_dims, self.args.rnn_dims, batch_first=True) - self.fc1 = nn.Linear(self.args.rnn_dims, self.args.fc_dims) - self.fc2 = nn.Linear(self.args.fc_dims, self.args.fc_dims) - self.fc3 = nn.Linear(self.args.fc_dims, self.n_classes) - - def forward(self, x, mels): - bsize = x.size(0) - h1 = torch.zeros(1, bsize, self.args.rnn_dims).to(x.device) - h2 = torch.zeros(1, bsize, self.args.rnn_dims).to(x.device) - mels, aux = self.upsample(mels) - - if self.args.use_aux_net: - aux_idx = [self.aux_dims * i for i in range(5)] - a1 = aux[:, :, aux_idx[0] : aux_idx[1]] - a2 = aux[:, :, aux_idx[1] : aux_idx[2]] - a3 = aux[:, :, aux_idx[2] : aux_idx[3]] - a4 = aux[:, :, aux_idx[3] : aux_idx[4]] - - x = ( - torch.cat([x.unsqueeze(-1), mels, a1], dim=2) - if self.args.use_aux_net - else torch.cat([x.unsqueeze(-1), mels], dim=2) - ) - x = self.I(x) - res = x - self.rnn1.flatten_parameters() - x, _ = self.rnn1(x, h1) - - x = x + res - res = x - x = torch.cat([x, a2], dim=2) if self.args.use_aux_net else x - self.rnn2.flatten_parameters() - x, _ = self.rnn2(x, h2) - - x = x + res - x = torch.cat([x, a3], dim=2) if self.args.use_aux_net else x - x = F.relu(self.fc1(x)) - - x = torch.cat([x, a4], dim=2) if self.args.use_aux_net else x - x = F.relu(self.fc2(x)) - return self.fc3(x) - - def inference(self, mels, batched=None, target=None, overlap=None): - self.eval() - output = [] - start = time.time() - rnn1 = self.get_gru_cell(self.rnn1) - rnn2 = self.get_gru_cell(self.rnn2) - - with torch.no_grad(): - if isinstance(mels, np.ndarray): - mels = torch.FloatTensor(mels).to(str(next(self.parameters()).device)) - - if mels.ndim == 2: - mels = mels.unsqueeze(0) - wave_len = (mels.size(-1) - 1) * self.config.audio.hop_length - - mels = self.pad_tensor(mels.transpose(1, 2), pad=self.args.pad, side="both") - mels, aux = self.upsample(mels.transpose(1, 2)) - - if batched: - mels = self.fold_with_overlap(mels, target, overlap) - if aux is not None: - aux = self.fold_with_overlap(aux, target, overlap) - - b_size, seq_len, _ = mels.size() - - h1 = torch.zeros(b_size, self.args.rnn_dims).type_as(mels) - h2 = torch.zeros(b_size, self.args.rnn_dims).type_as(mels) - x = torch.zeros(b_size, 1).type_as(mels) - - if self.args.use_aux_net: - d = self.aux_dims - aux_split = [aux[:, :, d * i : d * (i + 1)] for i in range(4)] - - for i in range(seq_len): - m_t = mels[:, i, :] - - if self.args.use_aux_net: - a1_t, a2_t, a3_t, a4_t = (a[:, i, :] for a in aux_split) - - x = torch.cat([x, m_t, a1_t], dim=1) if self.args.use_aux_net else torch.cat([x, m_t], dim=1) - x = self.I(x) - h1 = rnn1(x, h1) - - x = x + h1 - inp = torch.cat([x, a2_t], dim=1) if self.args.use_aux_net else x - h2 = rnn2(inp, h2) - - x = x + h2 - x = torch.cat([x, a3_t], dim=1) if self.args.use_aux_net else x - x = F.relu(self.fc1(x)) - - x = torch.cat([x, a4_t], dim=1) if self.args.use_aux_net else x - x = F.relu(self.fc2(x)) - - logits = self.fc3(x) - - if self.args.mode == "mold": - sample = sample_from_discretized_mix_logistic(logits.unsqueeze(0).transpose(1, 2)) - output.append(sample.view(-1)) - x = sample.transpose(0, 1).type_as(mels) - elif self.args.mode == "gauss": - sample = sample_from_gaussian(logits.unsqueeze(0).transpose(1, 2)) - output.append(sample.view(-1)) - x = sample.transpose(0, 1).type_as(mels) - elif isinstance(self.args.mode, int): - posterior = F.softmax(logits, dim=1) - distrib = torch.distributions.Categorical(posterior) - - sample = 2 * distrib.sample().float() / (self.n_classes - 1.0) - 1.0 - output.append(sample) - x = sample.unsqueeze(-1) - else: - raise RuntimeError("Unknown model mode value - ", self.args.mode) - - if i % 100 == 0: - self.gen_display(i, seq_len, b_size, start) - - output = torch.stack(output).transpose(0, 1) - output = output.cpu() - if batched: - output = output.numpy() - output = output.astype(np.float64) - - output = self.xfade_and_unfold(output, target, overlap) - else: - output = output[0] - - if self.args.mulaw and isinstance(self.args.mode, int): - output = AudioProcessor.mulaw_decode(output, self.args.mode) - - # Fade-out at the end to avoid signal cutting out suddenly - fade_out = np.linspace(1, 0, 20 * self.config.audio.hop_length) - output = output[:wave_len] - - if wave_len > len(fade_out): - output[-20 * self.config.audio.hop_length :] *= fade_out - - self.train() - return output - - def gen_display(self, i, seq_len, b_size, start): - gen_rate = (i + 1) / (time.time() - start) * b_size / 1000 - realtime_ratio = gen_rate * 1000 / self.config.audio.sample_rate - stream( - "%i/%i -- batch_size: %i -- gen_rate: %.1f kHz -- x_realtime: %.1f ", - (i * b_size, seq_len * b_size, b_size, gen_rate, realtime_ratio), - ) - - def fold_with_overlap(self, x, target, overlap): - """Fold the tensor with overlap for quick batched inference. - Overlap will be used for crossfading in xfade_and_unfold() - Args: - x (tensor) : Upsampled conditioning features. - shape=(1, timesteps, features) - target (int) : Target timesteps for each index of batch - overlap (int) : Timesteps for both xfade and rnn warmup - Return: - (tensor) : shape=(num_folds, target + 2 * overlap, features) - Details: - x = [[h1, h2, ... hn]] - Where each h is a vector of conditioning features - Eg: target=2, overlap=1 with x.size(1)=10 - folded = [[h1, h2, h3, h4], - [h4, h5, h6, h7], - [h7, h8, h9, h10]] - """ - - _, total_len, features = x.size() - - # Calculate variables needed - num_folds = (total_len - overlap) // (target + overlap) - extended_len = num_folds * (overlap + target) + overlap - remaining = total_len - extended_len - - # Pad if some time steps poking out - if remaining != 0: - num_folds += 1 - padding = target + 2 * overlap - remaining - x = self.pad_tensor(x, padding, side="after") - - folded = torch.zeros(num_folds, target + 2 * overlap, features).to(x.device) - - # Get the values for the folded tensor - for i in range(num_folds): - start = i * (target + overlap) - end = start + target + 2 * overlap - folded[i] = x[:, start:end, :] - - return folded - - @staticmethod - def get_gru_cell(gru): - gru_cell = nn.GRUCell(gru.input_size, gru.hidden_size) - gru_cell.weight_hh.data = gru.weight_hh_l0.data - gru_cell.weight_ih.data = gru.weight_ih_l0.data - gru_cell.bias_hh.data = gru.bias_hh_l0.data - gru_cell.bias_ih.data = gru.bias_ih_l0.data - return gru_cell - - @staticmethod - def pad_tensor(x, pad, side="both"): - # NB - this is just a quick method i need right now - # i.e., it won't generalise to other shapes/dims - b, t, c = x.size() - total = t + 2 * pad if side == "both" else t + pad - padded = torch.zeros(b, total, c).to(x.device) - if side in ("before", "both"): - padded[:, pad : pad + t, :] = x - elif side == "after": - padded[:, :t, :] = x - return padded - - @staticmethod - def xfade_and_unfold(y, target, overlap): - """Applies a crossfade and unfolds into a 1d array. - Args: - y (ndarry) : Batched sequences of audio samples - shape=(num_folds, target + 2 * overlap) - dtype=np.float64 - overlap (int) : Timesteps for both xfade and rnn warmup - Return: - (ndarry) : audio samples in a 1d array - shape=(total_len) - dtype=np.float64 - Details: - y = [[seq1], - [seq2], - [seq3]] - Apply a gain envelope at both ends of the sequences - y = [[seq1_in, seq1_target, seq1_out], - [seq2_in, seq2_target, seq2_out], - [seq3_in, seq3_target, seq3_out]] - Stagger and add up the groups of samples: - [seq1_in, seq1_target, (seq1_out + seq2_in), seq2_target, ...] - """ - - num_folds, length = y.shape - target = length - 2 * overlap - total_len = num_folds * (target + overlap) + overlap - - # Need some silence for the rnn warmup - silence_len = overlap // 2 - fade_len = overlap - silence_len - silence = np.zeros((silence_len), dtype=np.float64) - - # Equal power crossfade - t = np.linspace(-1, 1, fade_len, dtype=np.float64) - fade_in = np.sqrt(0.5 * (1 + t)) - fade_out = np.sqrt(0.5 * (1 - t)) - - # Concat the silence to the fades - fade_in = np.concatenate([silence, fade_in]) - fade_out = np.concatenate([fade_out, silence]) - - # Apply the gain to the overlap samples - y[:, :overlap] *= fade_in - y[:, -overlap:] *= fade_out - - unfolded = np.zeros((total_len), dtype=np.float64) - - # Loop to add up all the samples - for i in range(num_folds): - start = i * (target + overlap) - end = start + target + 2 * overlap - unfolded[start:end] += y[i] - - return unfolded - - def load_checkpoint( - self, config, checkpoint_path, eval=False, cache=False - ): # pylint: disable=unused-argument, redefined-builtin - state = load_fsspec(checkpoint_path, map_location=torch.device("cpu"), cache=cache) - self.load_state_dict(state["model"]) - if eval: - self.eval() - assert not self.training - - def train_step(self, batch: Dict, criterion: Dict) -> Tuple[Dict, Dict]: - mels = batch["input"] - waveform = batch["waveform"] - waveform_coarse = batch["waveform_coarse"] - - y_hat = self.forward(waveform, mels) - if isinstance(self.args.mode, int): - y_hat = y_hat.transpose(1, 2).unsqueeze(-1) - else: - waveform_coarse = waveform_coarse.float() - waveform_coarse = waveform_coarse.unsqueeze(-1) - # compute losses - loss_dict = criterion(y_hat, waveform_coarse) - return {"model_output": y_hat}, loss_dict - - def eval_step(self, batch: Dict, criterion: Dict) -> Tuple[Dict, Dict]: - return self.train_step(batch, criterion) - - @torch.no_grad() - def test( - self, assets: Dict, test_loader: "DataLoader", output: Dict # pylint: disable=unused-argument - ) -> Tuple[Dict, Dict]: - ap = self.ap - figures = {} - audios = {} - samples = test_loader.dataset.load_test_samples(1) - for idx, sample in enumerate(samples): - x = torch.FloatTensor(sample[0]) - x = x.to(next(self.parameters()).device) - y_hat = self.inference(x, self.config.batched, self.config.target_samples, self.config.overlap_samples) - x_hat = ap.melspectrogram(y_hat) - figures.update( - { - f"test_{idx}/ground_truth": plot_spectrogram(x.T), - f"test_{idx}/prediction": plot_spectrogram(x_hat.T), - } - ) - audios.update({f"test_{idx}/audio": y_hat}) - # audios.update({f"real_{idx}/audio": y_hat}) - return figures, audios - - def test_log( - self, outputs: Dict, logger: "Logger", assets: Dict, steps: int # pylint: disable=unused-argument - ) -> Tuple[Dict, np.ndarray]: - figures, audios = outputs - logger.eval_figures(steps, figures) - logger.eval_audios(steps, audios, self.ap.sample_rate) - - @staticmethod - def format_batch(batch: Dict) -> Dict: - waveform = batch[0] - mels = batch[1] - waveform_coarse = batch[2] - return {"input": mels, "waveform": waveform, "waveform_coarse": waveform_coarse} - - def get_data_loader( # pylint: disable=no-self-use - self, - config: Coqpit, - assets: Dict, - is_eval: True, - samples: List, - verbose: bool, - num_gpus: int, - ): - ap = self.ap - dataset = WaveRNNDataset( - ap=ap, - items=samples, - seq_len=config.seq_len, - hop_len=ap.hop_length, - pad=config.model_args.pad, - mode=config.model_args.mode, - mulaw=config.model_args.mulaw, - is_training=not is_eval, - verbose=verbose, - ) - sampler = DistributedSampler(dataset, shuffle=True) if num_gpus > 1 else None - loader = DataLoader( - dataset, - batch_size=1 if is_eval else config.batch_size, - shuffle=num_gpus == 0, - collate_fn=dataset.collate, - sampler=sampler, - num_workers=config.num_eval_loader_workers if is_eval else config.num_loader_workers, - pin_memory=True, - ) - return loader - - def get_criterion(self): - # define train functions - return WaveRNNLoss(self.args.mode) - - @staticmethod - def init_from_config(config: "WavernnConfig"): - return Wavernn(config) diff --git a/TTS/vocoder/pqmf_output.wav b/TTS/vocoder/pqmf_output.wav deleted file mode 100644 index 8a77747b00198a4adfd6c398998517df5b4bdb8d..0000000000000000000000000000000000000000 Binary files a/TTS/vocoder/pqmf_output.wav and /dev/null differ diff --git a/TTS/vocoder/utils/__init__.py b/TTS/vocoder/utils/__init__.py deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/TTS/vocoder/utils/distribution.py b/TTS/vocoder/utils/distribution.py deleted file mode 100644 index fe706ba9ffbc3f8aad75285bca34a910246666b3..0000000000000000000000000000000000000000 --- a/TTS/vocoder/utils/distribution.py +++ /dev/null @@ -1,154 +0,0 @@ -import math - -import numpy as np -import torch -import torch.nn.functional as F -from torch.distributions.normal import Normal - - -def gaussian_loss(y_hat, y, log_std_min=-7.0): - assert y_hat.dim() == 3 - assert y_hat.size(2) == 2 - mean = y_hat[:, :, :1] - log_std = torch.clamp(y_hat[:, :, 1:], min=log_std_min) - # TODO: replace with pytorch dist - log_probs = -0.5 * (-math.log(2.0 * math.pi) - 2.0 * log_std - torch.pow(y - mean, 2) * torch.exp((-2.0 * log_std))) - return log_probs.squeeze().mean() - - -def sample_from_gaussian(y_hat, log_std_min=-7.0, scale_factor=1.0): - assert y_hat.size(2) == 2 - mean = y_hat[:, :, :1] - log_std = torch.clamp(y_hat[:, :, 1:], min=log_std_min) - dist = Normal( - mean, - torch.exp(log_std), - ) - sample = dist.sample() - sample = torch.clamp(torch.clamp(sample, min=-scale_factor), max=scale_factor) - del dist - return sample - - -def log_sum_exp(x): - """numerically stable log_sum_exp implementation that prevents overflow""" - # TF ordering - axis = len(x.size()) - 1 - m, _ = torch.max(x, dim=axis) - m2, _ = torch.max(x, dim=axis, keepdim=True) - return m + torch.log(torch.sum(torch.exp(x - m2), dim=axis)) - - -# It is adapted from https://github.com/r9y9/wavenet_vocoder/blob/master/wavenet_vocoder/mixture.py -def discretized_mix_logistic_loss(y_hat, y, num_classes=65536, log_scale_min=None, reduce=True): - if log_scale_min is None: - log_scale_min = float(np.log(1e-14)) - y_hat = y_hat.permute(0, 2, 1) - assert y_hat.dim() == 3 - assert y_hat.size(1) % 3 == 0 - nr_mix = y_hat.size(1) // 3 - - # (B x T x C) - y_hat = y_hat.transpose(1, 2) - - # unpack parameters. (B, T, num_mixtures) x 3 - logit_probs = y_hat[:, :, :nr_mix] - means = y_hat[:, :, nr_mix : 2 * nr_mix] - log_scales = torch.clamp(y_hat[:, :, 2 * nr_mix : 3 * nr_mix], min=log_scale_min) - - # B x T x 1 -> B x T x num_mixtures - y = y.expand_as(means) - - centered_y = y - means - inv_stdv = torch.exp(-log_scales) - plus_in = inv_stdv * (centered_y + 1.0 / (num_classes - 1)) - cdf_plus = torch.sigmoid(plus_in) - min_in = inv_stdv * (centered_y - 1.0 / (num_classes - 1)) - cdf_min = torch.sigmoid(min_in) - - # log probability for edge case of 0 (before scaling) - # equivalent: torch.log(F.sigmoid(plus_in)) - log_cdf_plus = plus_in - F.softplus(plus_in) - - # log probability for edge case of 255 (before scaling) - # equivalent: (1 - F.sigmoid(min_in)).log() - log_one_minus_cdf_min = -F.softplus(min_in) - - # probability for all other cases - cdf_delta = cdf_plus - cdf_min - - mid_in = inv_stdv * centered_y - # log probability in the center of the bin, to be used in extreme cases - # (not actually used in our code) - log_pdf_mid = mid_in - log_scales - 2.0 * F.softplus(mid_in) - - # tf equivalent - - # log_probs = tf.where(x < -0.999, log_cdf_plus, - # tf.where(x > 0.999, log_one_minus_cdf_min, - # tf.where(cdf_delta > 1e-5, - # tf.log(tf.maximum(cdf_delta, 1e-12)), - # log_pdf_mid - np.log(127.5)))) - - # TODO: cdf_delta <= 1e-5 actually can happen. How can we choose the value - # for num_classes=65536 case? 1e-7? not sure.. - inner_inner_cond = (cdf_delta > 1e-5).float() - - inner_inner_out = inner_inner_cond * torch.log(torch.clamp(cdf_delta, min=1e-12)) + (1.0 - inner_inner_cond) * ( - log_pdf_mid - np.log((num_classes - 1) / 2) - ) - inner_cond = (y > 0.999).float() - inner_out = inner_cond * log_one_minus_cdf_min + (1.0 - inner_cond) * inner_inner_out - cond = (y < -0.999).float() - log_probs = cond * log_cdf_plus + (1.0 - cond) * inner_out - - log_probs = log_probs + F.log_softmax(logit_probs, -1) - - if reduce: - return -torch.mean(log_sum_exp(log_probs)) - return -log_sum_exp(log_probs).unsqueeze(-1) - - -def sample_from_discretized_mix_logistic(y, log_scale_min=None): - """ - Sample from discretized mixture of logistic distributions - Args: - y (Tensor): :math:`[B, C, T]` - log_scale_min (float): Log scale minimum value - Returns: - Tensor: sample in range of [-1, 1]. - """ - if log_scale_min is None: - log_scale_min = float(np.log(1e-14)) - assert y.size(1) % 3 == 0 - nr_mix = y.size(1) // 3 - - # B x T x C - y = y.transpose(1, 2) - logit_probs = y[:, :, :nr_mix] - - # sample mixture indicator from softmax - temp = logit_probs.data.new(logit_probs.size()).uniform_(1e-5, 1.0 - 1e-5) - temp = logit_probs.data - torch.log(-torch.log(temp)) - _, argmax = temp.max(dim=-1) - - # (B, T) -> (B, T, nr_mix) - one_hot = to_one_hot(argmax, nr_mix) - # select logistic parameters - means = torch.sum(y[:, :, nr_mix : 2 * nr_mix] * one_hot, dim=-1) - log_scales = torch.clamp(torch.sum(y[:, :, 2 * nr_mix : 3 * nr_mix] * one_hot, dim=-1), min=log_scale_min) - # sample from logistic & clip to interval - # we don't actually round to the nearest 8bit value when sampling - u = means.data.new(means.size()).uniform_(1e-5, 1.0 - 1e-5) - x = means + torch.exp(log_scales) * (torch.log(u) - torch.log(1.0 - u)) - - x = torch.clamp(torch.clamp(x, min=-1.0), max=1.0) - - return x - - -def to_one_hot(tensor, n, fill_with=1.0): - # we perform one hot encore with respect to the last axis - one_hot = torch.FloatTensor(tensor.size() + (n,)).zero_().type_as(tensor) - one_hot.scatter_(len(tensor.size()), tensor.unsqueeze(-1), fill_with) - return one_hot diff --git a/TTS/vocoder/utils/generic_utils.py b/TTS/vocoder/utils/generic_utils.py deleted file mode 100644 index 63a0af4445b5684e928b83d2f4fdfaf7e8f5b9a2..0000000000000000000000000000000000000000 --- a/TTS/vocoder/utils/generic_utils.py +++ /dev/null @@ -1,72 +0,0 @@ -from typing import Dict - -import numpy as np -import torch -from matplotlib import pyplot as plt - -from TTS.tts.utils.visual import plot_spectrogram -from TTS.utils.audio import AudioProcessor - - -def interpolate_vocoder_input(scale_factor, spec): - """Interpolate spectrogram by the scale factor. - It is mainly used to match the sampling rates of - the tts and vocoder models. - - Args: - scale_factor (float): scale factor to interpolate the spectrogram - spec (np.array): spectrogram to be interpolated - - Returns: - torch.tensor: interpolated spectrogram. - """ - print(" > before interpolation :", spec.shape) - spec = torch.tensor(spec).unsqueeze(0).unsqueeze(0) # pylint: disable=not-callable - spec = torch.nn.functional.interpolate( - spec, scale_factor=scale_factor, recompute_scale_factor=True, mode="bilinear", align_corners=False - ).squeeze(0) - print(" > after interpolation :", spec.shape) - return spec - - -def plot_results(y_hat: torch.tensor, y: torch.tensor, ap: AudioProcessor, name_prefix: str = None) -> Dict: - """Plot the predicted and the real waveform and their spectrograms. - - Args: - y_hat (torch.tensor): Predicted waveform. - y (torch.tensor): Real waveform. - ap (AudioProcessor): Audio processor used to process the waveform. - name_prefix (str, optional): Name prefix used to name the figures. Defaults to None. - - Returns: - Dict: output figures keyed by the name of the figures. - """ """Plot vocoder model results""" - if name_prefix is None: - name_prefix = "" - - # select an instance from batch - y_hat = y_hat[0].squeeze().detach().cpu().numpy() - y = y[0].squeeze().detach().cpu().numpy() - - spec_fake = ap.melspectrogram(y_hat).T - spec_real = ap.melspectrogram(y).T - spec_diff = np.abs(spec_fake - spec_real) - - # plot figure and save it - fig_wave = plt.figure() - plt.subplot(2, 1, 1) - plt.plot(y) - plt.title("groundtruth speech") - plt.subplot(2, 1, 2) - plt.plot(y_hat) - plt.title("generated speech") - plt.tight_layout() - plt.close() - - figures = { - name_prefix + "spectrogram/fake": plot_spectrogram(spec_fake), - name_prefix + "spectrogram/real": plot_spectrogram(spec_real), - name_prefix + "spectrogram/diff": plot_spectrogram(spec_diff), - name_prefix + "speech_comparison": fig_wave, - } - return figures